<?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>192867</bug_id>
          
          <creation_ts>2018-12-19 11:23:20 -0800</creation_ts>
          <short_desc>Resync opus to M72</short_desc>
          <delta_ts>2018-12-21 11:39:30 -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>achristensen</cc>
    
    <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>1489376</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-19 11:23:20 -0800</bug_when>
    <thetext>Resync opus to M72</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489381</commentid>
    <comment_count>1</comment_count>
      <attachid>357699</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-19 11:37:53 -0800</bug_when>
    <thetext>Created attachment 357699
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489386</commentid>
    <comment_count>2</comment_count>
      <attachid>357703</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-19 11:47:36 -0800</bug_when>
    <thetext>Created attachment 357703
Update iOS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489412</commentid>
    <comment_count>3</comment_count>
      <attachid>357709</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-19 12:34:17 -0800</bug_when>
    <thetext>Created attachment 357709
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490156</commentid>
    <comment_count>4</comment_count>
      <attachid>357897</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-20 16:20:45 -0800</bug_when>
    <thetext>Created attachment 357897
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490193</commentid>
    <comment_count>5</comment_count>
      <attachid>357903</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-20 17:00:56 -0800</bug_when>
    <thetext>Created attachment 357903
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490415</commentid>
    <comment_count>6</comment_count>
      <attachid>357903</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-21 11:38:06 -0800</bug_when>
    <thetext>Comment on attachment 357903
Patch

Clearing flags on attachment: 357903

Committed r239510: &lt;https://trac.webkit.org/changeset/239510&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490416</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-21 11:38:08 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490417</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-12-21 11:39:30 -0800</bug_when>
    <thetext>&lt;rdar://problem/46905514&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357699</attachid>
            <date>2018-12-19 11:37:53 -0800</date>
            <delta_ts>2018-12-19 11:47:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192867-20181219113750.patch</filename>
            <type>text/plain</type>
            <size>1686801</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5MjgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCAzMDhlNDQ3ZTlmODJiMjYxMTRiYThiMmM0ODhhOWUzOWY2MjQ1MDExLi44ZTRi
NjFkMDBjMGQ1MWMwY2NkNjA0NTAyOTlkNTIwZjk2Mzg5ZTcwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxOC0xMi0xOSAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzeW5jIG9wdXMgdG8gTTcyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI4NjcKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL29wdXMueGNjb25maWc6IFVwZGF0ZWQgY29tcGlsYXRpb24gZmxhZy4KKyAgICAgICAg
KiBTb3VyY2UvdGhpcmRfcGFydHkvb3B1czogUmVzeW5jZWQgdG8gQ2hyb21lIE03MiBicmFuY2gu
CisKIDIwMTgtMTItMTkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFJlZnJlc2ggbGlieXV2IHRvIE03MgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL0NvbmZpZ3VyYXRpb25zL29wdXMueGNjb25maWcgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvb3B1cy54Y2NvbmZpZwppbmRleCBkMDU4Yzc2NDA2
YWI0Mzg3NjU3NjdhZjFhMTg4MzYzOWJhOGZiOWNmLi42YjExODQ3OWMzZmFiOTMzZTZkN2I2MTdj
ZTBlNzAyNTA4YTkwMDUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
Q29uZmlndXJhdGlvbnMvb3B1cy54Y2NvbmZpZworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvQ29uZmlndXJhdGlvbnMvb3B1cy54Y2NvbmZpZwpAQCAtMTMsNyArMTMsNyBAQCBJTlNU
QUxMX1BBVEggPSAvdXNyL2xvY2FsL2xpYjsKIFBVQkxJQ19IRUFERVJTX0ZPTERFUl9QQVRIID0g
L3Vzci9sb2NhbC9pbmNsdWRlL2xpYndlYnJ0YzsKIFVTRV9IRUFERVJNQVAgPSBOTzsKIFdBUk5J
TkdfQ0ZMQUdTID0gLVduby1pbmNvbXBhdGlibGUtcG9pbnRlci10eXBlcyAkKGluaGVyaXRlZCkK
LUdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSBWQVJfQVJSQVlTIE9QVVNfQlVJTEQgT1BV
U19FWFBPUlQ9IEhBVkVfTFJJTlQgSEFWRV9MUklOVEYgT1BVU19YODZfTUFZX0hBVkVfU1NFMiAk
KGluaGVyaXRlZCk7CitHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TID0gVkFSX0FSUkFZUyBP
UFVTX0JVSUxEIE9QVVNfRVhQT1JUPSBIQVZFX0xSSU5UIEhBVkVfTFJJTlRGIE9QVVNfWDg2X01B
WV9IQVZFX1NTRTIgT1BVU19YODZfUFJFU1VNRV9TU0UyICQoaW5oZXJpdGVkKTsKIEdDQ19QUkVQ
Uk9DRVNTT1JfREVGSU5JVElPTlNbYXJjaD1hcm02NCpdID0gJChpbmhlcml0ZWQpIE9QVVNfQVJN
X1BSRVNVTUVfQUFSQ0g2NF9ORU9OX0lOVFI7CiBHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05T
W2FyY2g9eDg2XzY0XSA9ICQoaW5oZXJpdGVkKSAkKFNTRTRfRkxBRyk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9CVUlM
RC5nbiBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9CVUlMRC5nbgppbmRleCAzYmI1ZTBkZjQ5OWU5MmMyNjlmZjg0NTM2MzMzZmJmN2FhNDViYTI1
Li5iNTRmODU2ODgyMzBlM2IxN2MxYWRmZTAxMzBlODVmYWQ0OWUwYTJhIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvQlVJTEQu
Z24KKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL0JVSUxELmduCkBAIC05LDEyICs5LDE5IEBAIGltcG9ydCgiLy90ZXN0aW5nL3Rlc3QuZ25p
IikKIHVzZV9vcHVzX2ZpeGVkX3BvaW50ID0gY3VycmVudF9jcHUgPT0gImFybSIgfHwgY3VycmVu
dF9jcHUgPT0gImFybTY0IgogCiAjIElmIEFSTSBvcHRpbWl6YXRpb25zIHNoYWxsIGJlIHVzZWQg
dG8gYWNjZWxlcmF0ZSBwZXJmb3JtYW5jZS4KLXVzZV9vcHVzX2FybV9vcHRpbWl6YXRpb24gPSBj
dXJyZW50X2NwdSA9PSAiYXJtIgorIyBUT0RPKHNjb3R0bWcpOiBEaXNhYmxlZCBvbiBGdWNoc2lh
IGZvciBub3csIHNlZSBodHRwczovL2NyYnVnLmNvbS83NzUyNzIuCit1c2Vfb3B1c19hcm1fb3B0
aW1pemF0aW9uID0KKyAgICBjdXJyZW50X2NwdSA9PSAiYXJtIiB8fCAoY3VycmVudF9jcHUgPT0g
ImFybTY0IiAmJiBpc19pb3MpCisKKyMgTmFDbCwgdW5saWtlIENocm9tZSwgZG9lc24ndCB0YXJn
ZXQgU1NFMiBtaW5pbXVtLCBzbyBza2lwIG9wdGltaXphdGlvbnMgZm9yCisjIHRoZSBzYWtlIG9m
IHNpbXBsaWNpdHkuCit1c2Vfb3B1c194ODZfb3B0aW1pemF0aW9uID0KKyAgICAhaXNfbmFjbCAm
JiAoY3VycmVudF9jcHUgPT0gIng4NiIgfHwgY3VycmVudF9jcHUgPT0gIng2NCIpCiAKICMgSWYg
T1BVUyBSdW4gVGltZSBDUFUgRGV0ZWN0aW9ucyAoUlRDRCkgc2hhbGwgYmUgdXNlZC4KICMgQmFz
ZWQgb24gdGhlIGNvbmRpdGlvbnMgaW4gY2VsdC9hcm0vYXJtY3B1LmM6CiAjIGRlZmluZWQoX01T
Q19WRVIpIHx8IGRlZmluZWQoX19saW51eF9fKS4KLXVzZV9vcHVzX3J0Y2QgPSBjdXJyZW50X2Nw
dSA9PSAiYXJtIiAmJiAoaXNfd2luIHx8IGlzX2FuZHJvaWQgfHwgaXNfbGludXgpCit1c2Vfb3B1
c19hcm1fcnRjZCA9IGN1cnJlbnRfY3B1ID09ICJhcm0iICYmIChpc193aW4gfHwgaXNfYW5kcm9p
ZCB8fCBpc19saW51eCkKIAogY29uZmlnKCJvcHVzX2NvbmZpZyIpIHsKICAgaW5jbHVkZV9kaXJz
ID0gWyAic3JjL2luY2x1ZGUiIF0KQEAgLTI0LDYgKzMxLDEwNiBAQCBjb25maWcoIm9wdXNfY29u
ZmlnIikgewogICB9CiB9CiAKK2NvbmZpZygib3B1c19wcml2YXRlX2NvbmZpZyIpIHsKKyAgZGVm
aW5lcyA9IFsKKyAgICAiT1BVU19CVUlMRCIsCisgICAgIk9QVVNfRVhQT1JUPSIsCisKKyAgICAj
IFByZWZlciBhbGxvY2EoKSBvdmVyIHZhcmlhYmxlIGxlbmd0aCBhcnJheXMgd2hpY2ggYXJlIG9m
dGVuIGluZWZmaWNpZW50OworICAgICMgdGhlIG9wdXMgY29kZSB3aWxsIGF1dG9tYXRpY2FsbHkg
aGFuZGxlIHRoaXMgY29ycmVjdGx5IHBlci1wbGF0Zm9ybS4KKyAgICAiVVNFX0FMTE9DQSIsCisg
ICAgIkhBVkVfQUxMT0NBX0giLAorICBdCisKKyAgaW5jbHVkZV9kaXJzID0gWworICAgICJzcmMi
LAorICAgICJzcmMvY2VsdCIsCisgICAgInNyYy9zaWxrIiwKKyAgXQorCisgIGNmbGFncyA9IFtd
CisKKyAgaWYgKGlzX3dpbikgeworICAgIGRlZmluZXMgKz0gWyAiaW5saW5lPV9faW5saW5lIiBd
CisKKyAgICBjZmxhZ3MgKz0gWworICAgICAgIi93ZDQzMDUiLCAgIyBEaXNhYmxlIHRydW5jYXRp
b24gd2FybmluZyBpbiBjZWx0L3BpdGNoLmMgLgorICAgICAgIi93ZDQzMzQiLCAgIyBEaXNhYmxl
IDMyLWJpdCBzaGlmdCB3YXJuaW5nIGluIHNyYy9vcHVzX2VuY29kZXIuYyAuCisgICAgXQorICB9
IGVsc2UgeworICAgIGRlZmluZXMgKz0gWworICAgICAgIkhBVkVfTFJJTlQiLAorICAgICAgIkhB
VkVfTFJJTlRGIiwKKyAgICBdCisgIH0KKworICBpZiAoaXNfZGVidWcpIHsKKyAgICAjIFR1cm4g
b2ZmIGEgd2FybmluZyBpbiBvcHVzX2RlY29kZXIuYyB3aGVuIGNvbXBpbGluZyB3aXRob3V0IG9w
dGltaXphdGlvbi4KKyAgICBkZWZpbmVzICs9IFsgIk9QVVNfV0lMTF9CRV9TTE9XIiBdCisgIH0K
KworICBpZiAodXNlX29wdXNfeDg2X29wdGltaXphdGlvbikgeworICAgIGRlZmluZXMgKz0gWwor
ICAgICAgIyBSdW4gVGltZSBDUFUgRGV0ZWN0aW9ucyAoUlRDRCkgaXMgYWx3YXlzIGVuYWJsZWQg
Zm9yIHg4Ni4KKyAgICAgICJPUFVTX0hBVkVfUlRDRCIsCisgICAgICAiQ1BVX0lORk9fQllfQVNN
IiwKKworICAgICAgIyBDaHJvbWUgYWx3YXlzIHRhcmdldHMgU1NFMisuCisgICAgICAiT1BVU19Y
ODZfTUFZX0hBVkVfU1NFIiwKKyAgICAgICJPUFVTX1g4Nl9NQVlfSEFWRV9TU0UyIiwKKyAgICAg
ICJPUFVTX1g4Nl9QUkVTVU1FX1NTRSIsCisgICAgICAiT1BVU19YODZfUFJFU1VNRV9TU0UyIiwK
KworICAgICAgIyBTb21lIHN5c3RlbXMgbWF5IGhhdmUgU1NFNC4xKyBzdXBwb3J0LgorICAgICAg
Ik9QVVNfWDg2X01BWV9IQVZFX1NTRTRfMSIsCisKKyAgICAgICMgQXQgcHJlc2VudCBsaWJvcHVz
IGhhcyBubyBBVlggZnVuY3Rpb25zIHNvIG5vIHNvdXJjZXMgYXJlIGFkZCBmb3IgdGhpcywKKyAg
ICAgICMgaWYgeW91IHNlZSBsaW5rZXIgZXJyb3JzIG9uIEFWWCBjb2RlIHRoZSB0aGlzIGZsYWcg
aXMgd2h5LgorICAgICAgIk9QVVNfWDg2X01BWV9IQVZFX0FWWCIsCisgICAgXQorICB9CisKKyAg
aWYgKHVzZV9vcHVzX2ZpeGVkX3BvaW50KSB7CisgICAgZGVmaW5lcyArPSBbICJGSVhFRF9QT0lO
VCIgXQorICAgIGluY2x1ZGVfZGlycyArPSBbICJzcmMvc2lsay9maXhlZCIgXQorICB9IGVsc2Ug
eworICAgIGluY2x1ZGVfZGlycyArPSBbICJzcmMvc2lsay9mbG9hdCIgXQorICB9CisKKyAgaWYg
KHVzZV9vcHVzX2FybV9vcHRpbWl6YXRpb24pIHsKKyAgICBpZiAoY3VycmVudF9jcHUgPT0gImFy
bSIpIHsKKyAgICAgIGRlZmluZXMgKz0gWworICAgICAgICAiT1BVU19BUk1fQVNNIiwKKyAgICAg
ICAgIk9QVVNfQVJNX0lOTElORV9BU00iLAorICAgICAgICAiT1BVU19BUk1fSU5MSU5FX0VEU1Ai
LAorICAgICAgXQorICAgIH0KKworICAgIGlmICh1c2Vfb3B1c19hcm1fcnRjZCkgeworICAgICAg
ZGVmaW5lcyArPSBbCisgICAgICAgICJPUFVTX0FSTV9NQVlfSEFWRV9FRFNQIiwKKyAgICAgICAg
Ik9QVVNfQVJNX01BWV9IQVZFX01FRElBIiwKKyAgICAgICAgIk9QVVNfSEFWRV9SVENEIiwKKyAg
ICAgIF0KKyAgICB9CisKKyAgICBpZiAoYXJtX3VzZV9uZW9uKSB7CisgICAgICBkZWZpbmVzICs9
IFsKKyAgICAgICAgIk9QVVNfQVJNX01BWV9IQVZFX05FT04iLAorICAgICAgICAiT1BVU19BUk1f
TUFZX0hBVkVfTkVPTl9JTlRSIiwKKyAgICAgIF0KKyAgICB9CisKKyAgICBpZiAoaXNfaW9zICYm
IGN1cnJlbnRfY3B1ID09ICJhcm02NCIpIHsKKyAgICAgICMgUnVudGltZSBkZXRlY3Rpb24gb2Yg
Q1BVIGZlYXR1cmVzIG5vdCBhdmFpbGFibGUgb24gaU9TLgorICAgICAgZGVmaW5lcyArPSBbCisg
ICAgICAgICJPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUiIsCisgICAgICAgICJPUFVTX0FSTV9Q
UkVTVU1FX0FBUkNINjRfTkVPTl9JTlRSIiwKKyAgICAgIF0KKyAgICB9CisgIH0KK30KKwogY29u
ZmlnKCJvcHVzX3Rlc3RfY29uZmlnIikgewogICBpbmNsdWRlX2RpcnMgPSBbCiAgICAgInNyYy9j
ZWx0IiwKQEAgLTQxLDcgKzE0OCw3IEBAIGNvbmZpZygib3B1c190ZXN0X2NvbmZpZyIpIHsKICAg
fQogfQogCi1pZiAodXNlX29wdXNfcnRjZCkgeworaWYgKHVzZV9vcHVzX2FybV9ydGNkKSB7CiAg
IGFjdGlvbigiY29udmVydF9ydGNkX2Fzc2VtYmxlciIpIHsKICAgICBzY3JpcHQgPSAiY29udmVy
dF9ydGNkX2Fzc2VtYmxlci5weSIKICAgICBvdXRwdXRzID0gWwpAQCAtNTYsNiArMTYzLDMxIEBA
IGlmICh1c2Vfb3B1c19ydGNkKSB7CiAgIH0KIH0KIAoraWYgKHVzZV9vcHVzX3g4Nl9vcHRpbWl6
YXRpb24pIHsKKyAgc291cmNlX3NldCgib3B1c19zc2U0MSIpIHsKKyAgICBzb3VyY2VzID0gWwor
ICAgICAgInNyYy9jZWx0L3g4Ni9waXRjaF9zc2U0XzEuYyIsCisgICAgICAic3JjL3NpbGsveDg2
L05TUV9kZWxfZGVjX3NzZS5jIiwKKyAgICAgICJzcmMvc2lsay94ODYvTlNRX3NzZS5jIiwKKyAg
ICAgICJzcmMvc2lsay94ODYvVkFEX3NzZS5jIiwKKyAgICBdCisKKyAgICBjb25maWdzIC09IFsg
Ii8vYnVpbGQvY29uZmlnL2NvbXBpbGVyOmNocm9taXVtX2NvZGUiIF0KKyAgICBjb25maWdzICs9
IFsgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVyOm5vX2Nocm9taXVtX2NvZGUiIF0KKyAgICBjb25m
aWdzICs9IFsKKyAgICAgICI6b3B1c19wcml2YXRlX2NvbmZpZyIsCisgICAgICAiOm9wdXNfY29u
ZmlnIiwKKyAgICBdCisKKyAgICBpZiAoIWlzX3dpbiB8fCBpc19jbGFuZykgeworICAgICAgY2Zs
YWdzID0gWyAiLW1zc2U0LjEiIF0KKyAgICB9CisgIH0KKyAgIyBUT0RPKGRhbGVjdXJ0aXMpOiBJ
ZiBsaWJvcHVzIGV2ZXIgYWRkcyBBVlggc3VwcG9ydCwgYWRkIGFuIG9wdXNfYXZ4IGJsb2NrLgor
fQorCisjIE5vdGU6IERvIG5vdCBhZGQgYW55IGRlZmluZXMgb3IgaW5jbHVkZV9kaXJzIHRvIHRo
aXMgdGFyZ2V0LCB0aG9zZSBzaG91bGQgYWxsCisjIGdvIGluIHRoZSBvcHVzX3ByaXZhdGVfY29u
ZmlnIHNvIHRoZXkgY2FuIGJlIHNoYXJlZCB3aXRoIGludHJpbnNpYyB0YXJnZXRzLgogc3RhdGlj
X2xpYnJhcnkoIm9wdXMiKSB7CiAgIHNvdXJjZXMgPSBbCiAgICAgInNyYy9jZWx0L19raXNzX2Zm
dF9ndXRzLmgiLApAQCAtMTE1LDYgKzI0Nyw3IEBAIHN0YXRpY19saWJyYXJ5KCJvcHVzIikgewog
ICAgICJzcmMvc2lsay9IUF92YXJpYWJsZV9jdXRvZmYuYyIsCiAgICAgInNyYy9zaWxrL0lubGlu
ZXMuaCIsCiAgICAgInNyYy9zaWxrL0xQQ19hbmFseXNpc19maWx0ZXIuYyIsCisgICAgInNyYy9z
aWxrL0xQQ19maXQuYyIsCiAgICAgInNyYy9zaWxrL0xQQ19pbnZfcHJlZF9nYWluLmMiLAogICAg
ICJzcmMvc2lsay9MUF92YXJpYWJsZV9jdXRvZmYuYyIsCiAgICAgInNyYy9zaWxrL01hY3JvQ291
bnQuaCIsCkBAIC0yMjEsNDcgKzM1NCwxNCBAQCBzdGF0aWNfbGlicmFyeSgib3B1cyIpIHsKICAg
ICAic3JjL3NyYy90YW5zaWdfdGFibGUuaCIsCiAgIF0KIAotICBkZWZpbmVzID0gWwotICAgICJP
UFVTX0JVSUxEIiwKLSAgICAiT1BVU19FWFBPUlQ9IiwKLSAgXQotCi0gIGluY2x1ZGVfZGlycyA9
IFsKLSAgICAic3JjL2NlbHQiLAotICAgICJzcmMvc2lsayIsCi0gIF0KLQogICBjb25maWdzIC09
IFsgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVyOmNocm9taXVtX2NvZGUiIF0KLSAgY29uZmlncyAr
PSBbICIvL2J1aWxkL2NvbmZpZy9jb21waWxlcjpub19jaHJvbWl1bV9jb2RlIiBdCisgIGNvbmZp
Z3MgKz0gWworICAgICIvL2J1aWxkL2NvbmZpZy9jb21waWxlcjpub19jaHJvbWl1bV9jb2RlIiwK
KyAgICAiOm9wdXNfcHJpdmF0ZV9jb25maWciLAorICBdCiAgIHB1YmxpY19jb25maWdzID0gWyAi
Om9wdXNfY29uZmlnIiBdCi0gIGNmbGFncyA9IFtdCi0KLSAgaWYgKGlzX3dpbikgewotICAgIGRl
ZmluZXMgKz0gWwotICAgICAgIlVTRV9BTExPQ0EiLAotICAgICAgImlubGluZT1fX2lubGluZSIs
Ci0gICAgXQogCi0gICAgY2ZsYWdzICs9IFsKLSAgICAgICIvd2Q0MzA1IiwgICMgRGlzYWJsZSB0
cnVuY2F0aW9uIHdhcm5pbmcgaW4gY2VsdC9waXRjaC5jIC4KLSAgICAgICIvd2Q0MzM0IiwgICMg
RGlzYWJsZSAzMi1iaXQgc2hpZnQgd2FybmluZyBpbiBzcmMvb3B1c19lbmNvZGVyLmMgLgotICAg
IF0KLSAgfSBlbHNlIHsKLSAgICBkZWZpbmVzICs9IFsKLSAgICAgICJIQVZFX0xSSU5UIiwKLSAg
ICAgICJIQVZFX0xSSU5URiIsCi0gICAgICAiVkFSX0FSUkFZUyIsCi0gICAgXQotICB9Ci0KLSAg
aWYgKGlzX3Bvc2l4ICYmICFpc19hbmRyb2lkKSB7Ci0gICAgIyBTdXBwcmVzcyBhIHdhcm5pbmcg
Z2l2ZW4gYnkgb3B1c19kZWNvZGVyLmMgdGhhdCB0ZWxscyB1cwotICAgICMgb3B0aW1pemF0aW9u
cyBhcmUgdHVybmVkIG9mZi4KLSAgICBjZmxhZ3MgKz0gWyAiLVduby0jcHJhZ21hLW1lc3NhZ2Vz
IiBdCi0gIH0KLQotICBpZiAoIWlzX2RlYnVnICYmIGlzX3Bvc2l4ICYmCi0gICAgICAoY3VycmVu
dF9jcHUgPT0gImFybSIgfHwgY3VycmVudF9jcHUgPT0gImFybTY0IikpIHsKKyAgaWYgKCFpc19k
ZWJ1ZyAmJiAoY3VycmVudF9jcHUgPT0gImFybSIgfHwgY3VycmVudF9jcHUgPT0gImFybTY0Iikp
IHsKICAgICBjb25maWdzIC09IFsgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVyOmRlZmF1bHRfb3B0
aW1pemF0aW9uIiBdCiAKICAgICAjIFRPRE8oY3JidWcuY29tLzYyMTMzNSkgUmV3b3JrIHRoaXMg
c28gdGhhdCB3ZSBkb24ndCBoYXZlIHRoZSBjb25mdXNpb24KQEAgLTI2OSw2ICszNjksMjYgQEAg
c3RhdGljX2xpYnJhcnkoIm9wdXMiKSB7CiAgICAgY29uZmlncyArPSBbICIvL2J1aWxkL2NvbmZp
Zy9jb21waWxlcjpvcHRpbWl6ZV9zcGVlZCIgXQogICB9CiAKKyAgZGVwcyA9IFtdCisKKyAgaWYg
KHVzZV9vcHVzX3g4Nl9vcHRpbWl6YXRpb24pIHsKKyAgICBzb3VyY2VzICs9IFsKKyAgICAgICJz
cmMvY2VsdC94ODYvY2VsdF9scGNfc3NlLmgiLAorICAgICAgInNyYy9jZWx0L3g4Ni9waXRjaF9z
c2UuYyIsCisgICAgICAic3JjL2NlbHQveDg2L3BpdGNoX3NzZS5oIiwKKyAgICAgICJzcmMvY2Vs
dC94ODYvcGl0Y2hfc3NlMi5jIiwKKyAgICAgICJzcmMvY2VsdC94ODYvdnFfc3NlLmgiLAorICAg
ICAgInNyYy9jZWx0L3g4Ni92cV9zc2UyLmMiLAorICAgICAgInNyYy9jZWx0L3g4Ni94ODZfY2Vs
dF9tYXAuYyIsCisgICAgICAic3JjL2NlbHQveDg2L3g4NmNwdS5jIiwKKyAgICAgICJzcmMvY2Vs
dC94ODYveDg2Y3B1LmgiLAorICAgICAgInNyYy9zaWxrL3g4Ni9TaWdQcm9jX0ZJWF9zc2UuaCIs
CisgICAgICAic3JjL3NpbGsveDg2L21haW5fc3NlLmgiLAorICAgICAgInNyYy9zaWxrL3g4Ni94
ODZfc2lsa19tYXAuYyIsCisgICAgXQorICAgIGRlcHMgKz0gWyAiOm9wdXNfc3NlNDEiIF0KKyAg
fQorCiAgIGlmICh1c2Vfb3B1c19maXhlZF9wb2ludCkgewogICAgIHNvdXJjZXMgKz0gWwogICAg
ICAgInNyYy9zaWxrL2ZpeGVkL0xUUF9hbmFseXNpc19maWx0ZXJfRklYLmMiLApAQCAtMjg3LDIy
ICs0MDcsMTYgQEAgc3RhdGljX2xpYnJhcnkoIm9wdXMiKSB7CiAgICAgICAic3JjL3NpbGsvZml4
ZWQvbWFpbl9GSVguaCIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvbm9pc2Vfc2hhcGVfYW5hbHlz
aXNfRklYLmMiLAogICAgICAgInNyYy9zaWxrL2ZpeGVkL3BpdGNoX2FuYWx5c2lzX2NvcmVfRklY
LmMiLAotICAgICAgInNyYy9zaWxrL2ZpeGVkL3ByZWZpbHRlcl9GSVguYyIsCiAgICAgICAic3Jj
L3NpbGsvZml4ZWQvcHJvY2Vzc19nYWluc19GSVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQv
cmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRklYLmMiLAogICAgICAgInNyYy9zaWxrL2ZpeGVkL3Jl
c2lkdWFsX2VuZXJneTE2X0ZJWC5jIiwKICAgICAgICJzcmMvc2lsay9maXhlZC9yZXNpZHVhbF9l
bmVyZ3lfRklYLmMiLAogICAgICAgInNyYy9zaWxrL2ZpeGVkL3NjaHVyNjRfRklYLmMiLAogICAg
ICAgInNyYy9zaWxrL2ZpeGVkL3NjaHVyX0ZJWC5jIiwKLSAgICAgICJzcmMvc2lsay9maXhlZC9z
b2x2ZV9MU19GSVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvc3RydWN0c19GSVguaCIsCiAg
ICAgICAic3JjL3NpbGsvZml4ZWQvdmVjdG9yX29wc19GSVguYyIsCiAgICAgICAic3JjL3NpbGsv
Zml4ZWQvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYyIsCiAgICAgXQotCi0gICAgZGVmaW5l
cyArPSBbICJGSVhFRF9QT0lOVCIgXQotCi0gICAgaW5jbHVkZV9kaXJzICs9IFsgInNyYy9zaWxr
L2ZpeGVkIiBdCiAgIH0gZWxzZSB7CiAgICAgc291cmNlcyArPSBbCiAgICAgICAic3JjL3NpbGsv
ZmxvYXQvTFBDX2FuYWx5c2lzX2ZpbHRlcl9GTFAuYyIsCkBAIC0zMjMsMjUgKzQzNywyMCBAQCBz
dGF0aWNfbGlicmFyeSgib3B1cyIpIHsKICAgICAgICJzcmMvc2lsay9mbG9hdC9maW5kX3ByZWRf
Y29lZnNfRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L2lubmVyX3Byb2R1Y3RfRkxQLmMi
LAogICAgICAgInNyYy9zaWxrL2Zsb2F0L2syYV9GTFAuYyIsCi0gICAgICAic3JjL3NpbGsvZmxv
YXQvbGV2aW5zb25kdXJiaW5fRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L21haW5fRkxQ
LmgiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jIiwK
ICAgICAgICJzcmMvc2lsay9mbG9hdC9waXRjaF9hbmFseXNpc19jb3JlX0ZMUC5jIiwKLSAgICAg
ICJzcmMvc2lsay9mbG9hdC9wcmVmaWx0ZXJfRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0
L3Byb2Nlc3NfZ2FpbnNfRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L3JlZ3VsYXJpemVf
Y29ycmVsYXRpb25zX0ZMUC5jIiwKICAgICAgICJzcmMvc2lsay9mbG9hdC9yZXNpZHVhbF9lbmVy
Z3lfRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L3NjYWxlX2NvcHlfdmVjdG9yX0ZMUC5j
IiwKICAgICAgICJzcmMvc2lsay9mbG9hdC9zY2FsZV92ZWN0b3JfRkxQLmMiLAogICAgICAgInNy
Yy9zaWxrL2Zsb2F0L3NjaHVyX0ZMUC5jIiwKLSAgICAgICJzcmMvc2lsay9mbG9hdC9zb2x2ZV9M
U19GTFAuYyIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvc29ydF9GTFAuYyIsCiAgICAgICAic3Jj
L3NpbGsvZmxvYXQvc3RydWN0c19GTFAuaCIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvd2FycGVk
X2F1dG9jb3JyZWxhdGlvbl9GTFAuYyIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvd3JhcHBlcnNf
RkxQLmMiLAogICAgIF0KLQotICAgIGluY2x1ZGVfZGlycyArPSBbICJzcmMvc2lsay9mbG9hdCIg
XQogICB9CiAKICAgaWYgKHVzZV9vcHVzX2FybV9vcHRpbWl6YXRpb24pIHsKQEAgLTM1OSwzOSAr
NDY4LDM0IEBAIHN0YXRpY19saWJyYXJ5KCJvcHVzIikgewogICAgICAgInNyYy9zaWxrL2FybS9t
YWNyb3NfYXJtdjVlLmgiLAogICAgIF0KIAotICAgIGRlZmluZXMgKz0gWwotICAgICAgIk9QVVNf
QVJNX0FTTSIsCi0gICAgICAiT1BVU19BUk1fSU5MSU5FX0FTTSIsCi0gICAgICAiT1BVU19BUk1f
SU5MSU5FX0VEU1AiLAotICAgIF0KLQotICAgIGlmICh1c2Vfb3B1c19ydGNkKSB7CisgICAgaWYg
KHVzZV9vcHVzX2FybV9ydGNkKSB7CiAgICAgICBzb3VyY2VzICs9IFsKICAgICAgICAgIiR0YXJn
ZXRfZ2VuX2Rpci9jZWx0X3BpdGNoX3hjb3JyX2FybV9nbnUuUyIsCiAgICAgICAgICJzcmMvY2Vs
dC9hcm0vYXJtX2NlbHRfbWFwLmMiLAogICAgICAgICAic3JjL2NlbHQvYXJtL2FybWNwdS5jIiwK
ICAgICAgICAgInNyYy9jZWx0L2FybS9hcm1jcHUuaCIsCi0gICAgICAgICJzcmMvY2VsdC9hcm0v
Y2VsdF9uZW9uX2ludHIuYyIsCiAgICAgICAgICJzcmMvY2VsdC9hcm0vZmZ0X2FybS5oIiwKICAg
ICAgICAgInNyYy9jZWx0L2FybS9tZGN0X2FybS5oIiwKICAgICAgICAgInNyYy9jZWx0L2FybS9w
aXRjaF9hcm0uaCIsCi0gICAgICAgICJzcmMvc2lsay9hcm0vTlNRX25lb24uYyIsCi0gICAgICAg
ICJzcmMvc2lsay9hcm0vTlNRX25lb24uaCIsCiAgICAgICAgICJzcmMvc2lsay9hcm0vYXJtX3Np
bGtfbWFwLmMiLAogICAgICAgXQorICAgICAgZGVwcyArPSBbICI6Y29udmVydF9ydGNkX2Fzc2Vt
YmxlciIgXQorICAgIH0KIAotICAgICAgaW5jbHVkZV9kaXJzICs9IFsgInNyYyIgXQotCi0gICAg
ICBkZWZpbmVzICs9IFsKLSAgICAgICAgIk9QVVNfQVJNX01BWV9IQVZFX0VEU1AiLAotICAgICAg
ICAiT1BVU19BUk1fTUFZX0hBVkVfTUVESUEiLAotICAgICAgICAiT1BVU19BUk1fTUFZX0hBVkVf
TkVPTiIsCi0gICAgICAgICJPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIiLAotICAgICAgICAi
T1BVU19IQVZFX1JUQ0QiLAotICAgICAgXQotCi0gICAgICBkZXBzID0gWwotICAgICAgICAiOmNv
bnZlcnRfcnRjZF9hc3NlbWJsZXIiLAorICAgIGlmIChhcm1fdXNlX25lb24pIHsKKyAgICAgIHNv
dXJjZXMgKz0gWworICAgICAgICAic3JjL2NlbHQvYXJtL2NlbHRfbmVvbl9pbnRyLmMiLAorICAg
ICAgICAic3JjL2NlbHQvYXJtL3BpdGNoX25lb25faW50ci5jIiwKKyAgICAgICAgInNyYy9zaWxr
L2FybS9MUENfaW52X3ByZWRfZ2Fpbl9hcm0uaCIsCisgICAgICAgICJzcmMvc2lsay9hcm0vTFBD
X2ludl9wcmVkX2dhaW5fbmVvbl9pbnRyLmMiLAorICAgICAgICAic3JjL3NpbGsvYXJtL05TUV9k
ZWxfZGVjX2FybS5oIiwKKyAgICAgICAgInNyYy9zaWxrL2FybS9OU1FfZGVsX2RlY19uZW9uX2lu
dHIuYyIsCisgICAgICAgICJzcmMvc2lsay9hcm0vTlNRX25lb24uYyIsCisgICAgICAgICJzcmMv
c2lsay9hcm0vTlNRX25lb24uaCIsCisgICAgICAgICJzcmMvc2lsay9hcm0vYmlxdWFkX2FsdF9h
cm0uaCIsCisgICAgICAgICJzcmMvc2lsay9hcm0vYmlxdWFkX2FsdF9uZW9uX2ludHIuYyIsCisg
ICAgICAgICJzcmMvc2lsay9maXhlZC9hcm0vd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYXJt
LmgiLAorICAgICAgICAic3JjL3NpbGsvZml4ZWQvYXJtL3dhcnBlZF9hdXRvY29ycmVsYXRpb25f
RklYX25lb25faW50ci5jIiwKICAgICAgIF0KICAgICB9CiAgIH0KQEAgLTQxMCw3ICs1MTQsNiBA
QCBleGVjdXRhYmxlKCJvcHVzX2NvbXBhcmUiKSB7CiAKICAgZGVwcyA9IFsKICAgICAiOm9wdXMi
LAotICAgICIvL2J1aWxkL2NvbmZpZy9zYW5pdGl6ZXJzOmRlcHMiLAogICAgICIvL2J1aWxkL3dp
bjpkZWZhdWx0X2V4ZV9tYW5pZmVzdCIsCiAgIF0KIH0KQEAgLTQyOCw3ICs1MzEsNiBAQCBleGVj
dXRhYmxlKCJvcHVzX2RlbW8iKSB7CiAKICAgZGVwcyA9IFsKICAgICAiOm9wdXMiLAotICAgICIv
L2J1aWxkL2NvbmZpZy9zYW5pdGl6ZXJzOmRlcHMiLAogICAgICIvL2J1aWxkL3dpbjpkZWZhdWx0
X2V4ZV9tYW5pZmVzdCIsCiAgIF0KIH0KQEAgLTQ1MSw2ICs1NTMsNyBAQCB0ZXN0KCJ0ZXN0X29w
dXNfYXBpIikgewogCiB0ZXN0KCJ0ZXN0X29wdXNfZW5jb2RlIikgewogICBzb3VyY2VzID0gWwor
ICAgICJzcmMvdGVzdHMvb3B1c19lbmNvZGVfcmVncmVzc2lvbnMuYyIsCiAgICAgInNyYy90ZXN0
cy90ZXN0X29wdXNfZW5jb2RlLmMiLAogICBdCiAKQEAgLTQ3Myw3ICs1NzYsNyBAQCBjb25maWco
InRlc3Rfb3B1c19kZWNvZGVfY29uZmlnIikgewogICAjIG1hcmtlZCBhcyByZXF1aXJpbmcgYSBu
b24tbnVsbCB2YWx1ZSBieSB0aGUgbm9ubnVsbCBmdW5jdGlvbiBhdHRyaWJ1dGUsCiAgICMgYW5k
IGV4cGVjdHMgb3B1c19kZWNvZGUoKSB0byBmYWlsLiBEaXNhYmxlIHRoZSAtV25vbm51bGwgb3B0
aW9uIHRvIGF2b2lkCiAgICMgYSBjb21waWxhdGlvbiBlcnJvciBpZiAtV2Vycm9yIGlzIHNwZWNp
ZmllZC4KLSAgaWYgKGlzX3Bvc2l4KSB7CisgIGlmIChpc19jbGFuZykgewogICAgIGNmbGFncyA9
IFsgIi1Xbm8tbm9ubnVsbCIgXQogICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvREVQUyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9ERVBTCmluZGV4IDdlNWJkMjZl
ZTY5MjhhY2M5NmUwMzUyYTQ1NzY1NjJlZWEwNjEyOGUuLmZmZmNhYTVmZmMzNTI1ODI3ZDRjODdi
MjJlYTcyMmNlOWMwMjNhOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9ERVBTCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9ERVBTCkBAIC0xLDUgKzEsNyBAQAogaW5j
bHVkZV9ydWxlcyA9IFsKICAgIithcm0iLAorICAiK2NlbHQiLAorICAiK2ZpeGVkIiwKICAgIitt
aXBzIiwKICAgIit4ODYiLAogXQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL1JFQURNRS5jaHJvbWl1bSBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9SRUFETUUuY2hyb21pdW0K
aW5kZXggNzExMWQwMjhjMGQ2ZjY3MDI5MWRjNzExNWM5ZTVjNmIzOGMzZGU4Zi4uOGJkMzE5N2Fm
MjczMjAwMGMzNTFkZTNmNzk4NjFmM2U5ODI0ZWRkMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL1JFQURNRS5jaHJvbWl1bQor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
UkVBRE1FLmNocm9taXVtCkBAIC0xLDYgKzEsNiBAQAogTmFtZTogb3B1cwotVVJMOiBodHRwOi8v
ZG93bmxvYWRzLnhpcGgub3JnL3JlbGVhc2VzL29wdXMvb3B1cy0xLjEuMy50YXIuZ3oKLVZlcnNp
b246IDEuMS4zCitVUkw6IGh0dHBzOi8vZ2l0LnhpcGgub3JnLz9wPW9wdXMuZ2l0O2E9c25hcHNo
b3Q7aD0zZmU3NDRlYTA0ZmRjYzQxOGZiODVjMmMxMzNkMTMzNzJlYmIwMTliO3NmPXRnegorVmVy
c2lvbjogM2ZlNzQ0ZWEwNGZkY2M0MThmYjg1YzJjMTMzZDEzMzcyZWJiMDE5YgogTGljZW5zZTog
QlNECiBMaWNlbnNlIEZpbGU6IHNyYy9DT1BZSU5HCiBTZWN1cml0eSBDcml0aWNhbDogeWVzCkBA
IC0xNCw3ICsxNCw5IEBAIGVuY29kaW5nL2RlY29kaW5nLgogTG9jYWwgY2hhbmdlczoKICogY29w
eSAuZ2l0aWdub3JlIGZyb20gaHR0cHM6Ly9naXQueGlwaC5vcmcvP3A9b3B1cy5naXQ7YT10cmVl
CiAqIHNldCAneCcgZmxhZ3M6ICJjaG1vZCA3NTAgd2luMzIvZ2VudmVyc2lvbi5iYXQiCi0qIEFw
cGx5IHBhdGNoZXMgZnJvbQotICBodHRwczovL2dpdC54aXBoLm9yZy8/cD1vcHVzLmdpdDthPWNv
bW1pdDtoPTc5ZThmNTI3YjAzNDRiMDg5N2E2NWJlMzVlNzdmNzg4NWJkOTk0MDkKLSAgaHR0cHM6
Ly9naXQueGlwaC5vcmcvP3A9b3B1cy5naXQ7YT1jb21taXRkaWZmO2g9ZTVhZDI2MTY5NTAyYzFm
MGIwNjc5MTZlNzgyYzJiM2ZkZWE2ZmJhOQotICBodHRwczovL2dpdC54aXBoLm9yZy8/cD1vcHVz
LmdpdDthPWNvbW1pdGRpZmY7aD01ZGEwNDk4YTNlMjMzMzlhYWNlYmE2NTlhOTdlOTM1MDMxZDU2
OTNkCisqIEFwcGx5IGh0dHBzOi8vZ2l0LnhpcGgub3JnLz9wPW9wdXMuZ2l0O2E9Y29tbWl0ZGlm
ZjtoPTQ2NTYwNTM0ZmNiNTcxMGE4OTRhMzQxYzJmOTUyNmRiNThmZDcwODcjcGF0Y2gxCisqIEFw
cGx5IGh0dHBzOi8vZ2l0aHViLmNvbS94aXBoL29wdXMvcHVsbC83MworKiBBcHBseSBodHRwczov
L2dpdGh1Yi5jb20veGlwaC9vcHVzL3B1bGwvODcKKyogTWFrZSBzdXJlIEhCX2dhaW4gaXMgbm90
IE5hTiBpbiBhbiBhdHRlbXB0IHRvIGZpeCBjaHJvbWl1bTo4MjY5MTQKKyogU2F0dXJhdGUgYWRk
IHRvIGF2b2lkIGludCBvdmVyZmxvdyB0byBmaXggY2hyb21pdW06ODQyNTI4LiBUaGlzIHNob3Vs
ZCBiZQorICByZXZlcnRlZCB3aGVuIHVwZGF0aW5nIHRvIHYxLjMKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9jb252ZXJ0X3J0
Y2RfYXNzZW1ibGVyLnB5IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL2NvbnZlcnRfcnRjZF9hc3NlbWJsZXIucHkKaW5kZXggZGM2M2M2NDFmNTdm
NGM3Y2U0OWJkYTdmMzJiZjk3NmY4NzIyNWVjNy4uMmY2MDcxZjQxMjE4NjFiYzBkMDc5ODkzNTcy
ZGQ3MDkyYWMxYzA0MiAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL2NvbnZlcnRfcnRjZF9hc3NlbWJsZXIucHkKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL2NvbnZlcnRf
cnRjZF9hc3NlbWJsZXIucHkKQEAgLTQ1LDcgKzQ1LDYgQEAgZGVmIG1haW4oYXJndik6CiAgICAg
ICAgICAnc2VkICJzL09QVVNfQVJNX01BWV9IQVZFX1tBLVpdKi8xL2ciIHwgJwogICAgICAgICAg
J3NlZCAiLy5pbmNsdWRlL2QiICcKICAgICAgICAgICc+ICVzJykgJSAoYXJtMmdudV9zY3JpcHQs
IGlucHV0X2ZpbGUsIG91dHB1dF9maWxlKQotICBwcmludCBjbWQKICAgcmV0dXJuIG9zLnN5c3Rl
bShjbWQpCiAKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjLy5naXRpZ25v
cmUgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjLy5naXRpZ25vcmUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzMxMjdjOWZlMGE2NjNiNjA2Njk1MzBiN2JkYjY1
YTY3ZDFiZWNhNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvLmdpdGlnbm9yZQpAQCAtMCwwICsxLDgzIEBA
CitEb3h5ZmlsZQorTWFrZWZpbGUKK01ha2VmaWxlLmluCitUQUdTCithY2xvY2FsLm00CithdXRv
bTR0ZS5jYWNoZQorKi5rZGV2ZWxvcC5wY3MKKyoua2RldnNlcworY29tcGlsZQorY29uZmlnLmd1
ZXNzCitjb25maWcuaAorY29uZmlnLmguaW4KK2NvbmZpZy5sb2cKK2NvbmZpZy5zdGF0dXMKK2Nv
bmZpZy5zdWIKK2NvbmZpZ3VyZQorZGVwY29tcAorSU5TVEFMTAoraW5zdGFsbC1zaAorLmRlcHMK
Ky5saWJzCisuZGlyc3RhbXAKKyouYQorKi5leGUKKyoubGEKKyotZ251LlMKK3Rlc3RjZWx0Cits
aWJ0b29sCitsdG1haW4uc2gKK21pc3NpbmcKK200L2xpYnRvb2wubTQKK200L2x0b3B0aW9ucy5t
NAorbTQvbHRzdWdhci5tNAorbTQvbHR2ZXJzaW9uLm00CittNC9sdH5vYnNvbGV0ZS5tNAorb3B1
c19jb21wYXJlCitvcHVzX2RlbW8KK3JlcGFja2V0aXplcl9kZW1vCitzdGFtcC1oMQordGVzdC1k
cml2ZXIKKyouc3cqCisqLm8KKyoubG8KKyoucGMKKyoudGFyLmd6CisqfgordGVzdHMvKnRlc3QK
K3Rlc3RzL3Rlc3Rfb3B1c19hcGkKK3Rlc3RzL3Rlc3Rfb3B1c19kZWNvZGUKK3Rlc3RzL3Rlc3Rf
b3B1c19lbmNvZGUKK3Rlc3RzL3Rlc3Rfb3B1c19wYWRkaW5nCitjZWx0L2FybS9hcm1vcHRzLnMK
K2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVzCitjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9jd3JzMzIK
K2NlbHQvdGVzdHMvdGVzdF91bml0X2RmdAorY2VsdC90ZXN0cy90ZXN0X3VuaXRfZW50cm9weQor
Y2VsdC90ZXN0cy90ZXN0X3VuaXRfbGFwbGFjZQorY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWF0aG9w
cworY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWRjdAorY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRp
b24KK2NlbHQvdGVzdHMvdGVzdF91bml0X3R5cGVzCitkb2MvZG94eWdlbl9zcWxpdGUzLmRiCitk
b2MvZG94eWdlbi1idWlsZC5zdGFtcAorZG9jL2h0bWwKK2RvYy9sYXRleAorZG9jL21hbgorcGFj
a2FnZV92ZXJzaW9uCit2ZXJzaW9uLmgKK2NlbHQvRGVidWcKK2NlbHQvUmVsZWFzZQorY2VsdC94
NjQKK3NpbGsvRGVidWcKK3NpbGsvUmVsZWFzZQorc2lsay94NjQKK3NpbGsvZml4ZWQvRGVidWcK
K3NpbGsvZml4ZWQvUmVsZWFzZQorc2lsay9maXhlZC94NjQKK3NpbGsvZmxvYXQvRGVidWcKK3Np
bGsvZmxvYXQvUmVsZWFzZQorc2lsay9mbG9hdC94NjQKK3NyYy9EZWJ1Zworc3JjL1JlbGVhc2UK
K3NyYy94NjQKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvTElDRU5TRV9QTEVBU0VfUkVBRC50eHQgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL0xJQ0VOU0VfUExF
QVNFX1JFQUQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJjODhlZmE2Y2IwNTc4OWE2YTZlNjk3NTc3YWU2ZDhl
NTUzMmU1ZGYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL0xJQ0VOU0VfUExFQVNFX1JFQUQudHh0CkBAIC0w
LDAgKzEsMjIgQEAKK0NvbnRyaWJ1dGlvbnMgdG8gdGhlIGNvbGxhYm9yYXRpb24gc2hhbGwgbm90
IGJlIGNvbnNpZGVyZWQgY29uZmlkZW50aWFsLgorCitFYWNoIGNvbnRyaWJ1dG9yIHJlcHJlc2Vu
dHMgYW5kIHdhcnJhbnRzIHRoYXQgaXQgaGFzIHRoZSByaWdodCBhbmQKK2F1dGhvcml0eSB0byBs
aWNlbnNlIGNvcHlyaWdodCBpbiBpdHMgY29udHJpYnV0aW9ucyB0byB0aGUgY29sbGFib3JhdGlv
bi4KKworRWFjaCBjb250cmlidXRvciBhZ3JlZXMgdG8gbGljZW5zZSB0aGUgY29weXJpZ2h0IGlu
IHRoZSBjb250cmlidXRpb25zCit1bmRlciB0aGUgTW9kaWZpZWQgKDItY2xhdXNlIG9yIDMtY2xh
dXNlKSBCU0QgTGljZW5zZSBvciB0aGUgQ2xlYXIgQlNEIExpY2Vuc2UuCisKK1BsZWFzZSBzZWUg
dGhlIElQUiBzdGF0ZW1lbnRzIHN1Ym1pdHRlZCB0byB0aGUgSUVURiBmb3IgdGhlIGNvbXBsZXRl
CitwYXRlbnQgbGljZW5zaW5nIGRldGFpbHM6CisKK1hpcGguT3JnIEZvdW5kYXRpb246CitodHRw
czovL2RhdGF0cmFja2VyLmlldGYub3JnL2lwci8xNTI0LworCitNaWNyb3NvZnQgQ29ycG9yYXRp
b246CitodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2lwci8xOTE0LworCitTa3lwZSBMaW1p
dGVkOgoraHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9pcHIvMTYwMi8KKworQnJvYWRjb20g
Q29ycG9yYXRpb246CitodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2lwci8xNTI2LwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9NYWtlZmlsZS5hbSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvTWFrZWZpbGUuYW0KaW5kZXggN2E2OTExNDBlNTUzZDQ1NTRj
NmVjMmI3Y2JhYzAyOThlM2QxNmIyYy4uNWI1N2IzMzcyZTU2Y2NhNTk5YzRkNDVhYWEwMWZlM2Qz
NzE4NjIzMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS5hbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLmFtCkBAIC0yMSw2
ICsyMSw5IEBAIFNJTEtfU09VUkNFUyArPSAkKFNJTEtfU09VUkNFU19GSVhFRCkKIGlmIEhBVkVf
U1NFNF8xCiBTSUxLX1NPVVJDRVMgKz0gJChTSUxLX1NPVVJDRVNfU1NFNF8xKSAkKFNJTEtfU09V
UkNFU19GSVhFRF9TU0U0XzEpCiBlbmRpZgoraWYgSEFWRV9BUk1fTkVPTl9JTlRSCitTSUxLX1NP
VVJDRVMgKz0gJChTSUxLX1NPVVJDRVNfRklYRURfQVJNX05FT05fSU5UUikKK2VuZGlmCiBlbHNl
CiBTSUxLX1NPVVJDRVMgKz0gJChTSUxLX1NPVVJDRVNfRkxPQVQpCiBpZiBIQVZFX1NTRTRfMQpA
QCAtODQsOSArODcsMzYgQEAgcGtnaW5jbHVkZV9IRUFERVJTID0gaW5jbHVkZS9vcHVzLmggaW5j
bHVkZS9vcHVzX211bHRpc3RyZWFtLmggaW5jbHVkZS9vcHVzX3R5cGUKIG5vaW5zdF9IRUFERVJT
ID0gJChPUFVTX0hFQUQpICQoU0lMS19IRUFEKSAkKENFTFRfSEVBRCkKIAogaWYgRVhUUkFfUFJP
R1JBTVMKLW5vaW5zdF9QUk9HUkFNUyA9IG9wdXNfZGVtbyByZXBhY2tldGl6ZXJfZGVtbyBvcHVz
X2NvbXBhcmUgdGVzdHMvdGVzdF9vcHVzX2FwaSB0ZXN0cy90ZXN0X29wdXNfZW5jb2RlIHRlc3Rz
L3Rlc3Rfb3B1c19kZWNvZGUgdGVzdHMvdGVzdF9vcHVzX3BhZGRpbmcgY2VsdC90ZXN0cy90ZXN0
X3VuaXRfY3dyczMyIGNlbHQvdGVzdHMvdGVzdF91bml0X2RmdCBjZWx0L3Rlc3RzL3Rlc3RfdW5p
dF9lbnRyb3B5IGNlbHQvdGVzdHMvdGVzdF91bml0X2xhcGxhY2UgY2VsdC90ZXN0cy90ZXN0X3Vu
aXRfbWF0aG9wcyBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tZGN0IGNlbHQvdGVzdHMvdGVzdF91bml0
X3JvdGF0aW9uIGNlbHQvdGVzdHMvdGVzdF91bml0X3R5cGVzCi0KLVRFU1RTID0gY2VsdC90ZXN0
cy90ZXN0X3VuaXRfdHlwZXMgY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWF0aG9wcyBjZWx0L3Rlc3Rz
L3Rlc3RfdW5pdF9lbnRyb3B5IGNlbHQvdGVzdHMvdGVzdF91bml0X2xhcGxhY2UgY2VsdC90ZXN0
cy90ZXN0X3VuaXRfZGZ0IGNlbHQvdGVzdHMvdGVzdF91bml0X21kY3QgY2VsdC90ZXN0cy90ZXN0
X3VuaXRfcm90YXRpb24gY2VsdC90ZXN0cy90ZXN0X3VuaXRfY3dyczMyIHRlc3RzL3Rlc3Rfb3B1
c19hcGkgdGVzdHMvdGVzdF9vcHVzX2RlY29kZSB0ZXN0cy90ZXN0X29wdXNfZW5jb2RlIHRlc3Rz
L3Rlc3Rfb3B1c19wYWRkaW5nCitub2luc3RfUFJPR1JBTVMgPSBjZWx0L3Rlc3RzL3Rlc3RfdW5p
dF9jd3JzMzIgXAorICAgICAgICAgICAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0IFwK
KyAgICAgICAgICAgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0X2VudHJvcHkgXAorICAgICAg
ICAgICAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfbGFwbGFjZSBcCisgICAgICAgICAgICAg
ICAgICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tYXRob3BzIFwKKyAgICAgICAgICAgICAgICAgIGNl
bHQvdGVzdHMvdGVzdF91bml0X21kY3QgXAorICAgICAgICAgICAgICAgICAgY2VsdC90ZXN0cy90
ZXN0X3VuaXRfcm90YXRpb24gXAorICAgICAgICAgICAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3Vu
aXRfdHlwZXMgXAorICAgICAgICAgICAgICAgICAgb3B1c19jb21wYXJlIFwKKyAgICAgICAgICAg
ICAgICAgIG9wdXNfZGVtbyBcCisgICAgICAgICAgICAgICAgICByZXBhY2tldGl6ZXJfZGVtbyBc
CisgICAgICAgICAgICAgICAgICBzaWxrL3Rlc3RzL3Rlc3RfdW5pdF9MUENfaW52X3ByZWRfZ2Fp
biBcCisgICAgICAgICAgICAgICAgICB0ZXN0cy90ZXN0X29wdXNfYXBpIFwKKyAgICAgICAgICAg
ICAgICAgIHRlc3RzL3Rlc3Rfb3B1c19kZWNvZGUgXAorICAgICAgICAgICAgICAgICAgdGVzdHMv
dGVzdF9vcHVzX2VuY29kZSBcCisgICAgICAgICAgICAgICAgICB0ZXN0cy90ZXN0X29wdXNfcGFk
ZGluZworCitURVNUUyA9IGNlbHQvdGVzdHMvdGVzdF91bml0X2N3cnMzMiBcCisgICAgICAgIGNl
bHQvdGVzdHMvdGVzdF91bml0X2RmdCBcCisgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0X2Vu
dHJvcHkgXAorICAgICAgICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9sYXBsYWNlIFwKKyAgICAgICAg
Y2VsdC90ZXN0cy90ZXN0X3VuaXRfbWF0aG9wcyBcCisgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91
bml0X21kY3QgXAorICAgICAgICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9yb3RhdGlvbiBcCisgICAg
ICAgIGNlbHQvdGVzdHMvdGVzdF91bml0X3R5cGVzIFwKKyAgICAgICAgc2lsay90ZXN0cy90ZXN0
X3VuaXRfTFBDX2ludl9wcmVkX2dhaW4gXAorICAgICAgICB0ZXN0cy90ZXN0X29wdXNfYXBpIFwK
KyAgICAgICAgdGVzdHMvdGVzdF9vcHVzX2RlY29kZSBcCisgICAgICAgIHRlc3RzL3Rlc3Rfb3B1
c19lbmNvZGUgXAorICAgICAgICB0ZXN0cy90ZXN0X29wdXNfcGFkZGluZwogCiBvcHVzX2RlbW9f
U09VUkNFUyA9IHNyYy9vcHVzX2RlbW8uYwogCkBAIC0xMDIsNyArMTMyLDcgQEAgb3B1c19jb21w
YXJlX0xEQUREID0gJChMSUJNKQogdGVzdHNfdGVzdF9vcHVzX2FwaV9TT1VSQ0VTID0gdGVzdHMv
dGVzdF9vcHVzX2FwaS5jIHRlc3RzL3Rlc3Rfb3B1c19jb21tb24uaAogdGVzdHNfdGVzdF9vcHVz
X2FwaV9MREFERCA9IGxpYm9wdXMubGEgJChORTEwX0xJQlMpICQoTElCTSkKIAotdGVzdHNfdGVz
dF9vcHVzX2VuY29kZV9TT1VSQ0VTID0gdGVzdHMvdGVzdF9vcHVzX2VuY29kZS5jIHRlc3RzL3Rl
c3Rfb3B1c19jb21tb24uaAordGVzdHNfdGVzdF9vcHVzX2VuY29kZV9TT1VSQ0VTID0gdGVzdHMv
dGVzdF9vcHVzX2VuY29kZS5jIHRlc3RzL29wdXNfZW5jb2RlX3JlZ3Jlc3Npb25zLmMgdGVzdHMv
dGVzdF9vcHVzX2NvbW1vbi5oCiB0ZXN0c190ZXN0X29wdXNfZW5jb2RlX0xEQUREID0gbGlib3B1
cy5sYSAkKE5FMTBfTElCUykgJChMSUJNKQogCiB0ZXN0c190ZXN0X29wdXNfZGVjb2RlX1NPVVJD
RVMgPSB0ZXN0cy90ZXN0X29wdXNfZGVjb2RlLmMgdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCkBA
IC0xMTEsMTEgKzE0MSwyMCBAQCB0ZXN0c190ZXN0X29wdXNfZGVjb2RlX0xEQUREID0gbGlib3B1
cy5sYSAkKE5FMTBfTElCUykgJChMSUJNKQogdGVzdHNfdGVzdF9vcHVzX3BhZGRpbmdfU09VUkNF
UyA9IHRlc3RzL3Rlc3Rfb3B1c19wYWRkaW5nLmMgdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCiB0
ZXN0c190ZXN0X29wdXNfcGFkZGluZ19MREFERCA9IGxpYm9wdXMubGEgJChORTEwX0xJQlMpICQo
TElCTSkKIAorQ0VMVF9PQkogPSAkKENFTFRfU09VUkNFUzouYz0ubG8pCitTSUxLX09CSiA9ICQo
U0lMS19TT1VSQ0VTOi5jPS5sbykKKworc2lsa190ZXN0c190ZXN0X3VuaXRfTFBDX2ludl9wcmVk
X2dhaW5fU09VUkNFUyA9IHNpbGsvdGVzdHMvdGVzdF91bml0X0xQQ19pbnZfcHJlZF9nYWluLmMK
K3NpbGtfdGVzdHNfdGVzdF91bml0X0xQQ19pbnZfcHJlZF9nYWluX0xEQUREID0gJChTSUxLX09C
SikgJChDRUxUX09CSikgJChORTEwX0xJQlMpICQoTElCTSkKK2lmIE9QVVNfQVJNX0VYVEVSTkFM
X0FTTQorc2lsa190ZXN0c190ZXN0X3VuaXRfTFBDX2ludl9wcmVkX2dhaW5fTERBREQgKz0gbGli
YXJtYXNtLmxhCitlbmRpZgorCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9jd3JzMzJfU09VUkNFUyA9
IGNlbHQvdGVzdHMvdGVzdF91bml0X2N3cnMzMi5jCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9jd3Jz
MzJfTERBREQgPSAkKExJQk0pCiAKIGNlbHRfdGVzdHNfdGVzdF91bml0X2RmdF9TT1VSQ0VTID0g
Y2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0LmMKLWNlbHRfdGVzdHNfdGVzdF91bml0X2RmdF9MREFE
RCA9ICQoTkUxMF9MSUJTKSAkKExJQk0pCitjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9kZnRfTERBREQg
PSAkKENFTFRfT0JKKSAkKE5FMTBfTElCUykgJChMSUJNKQogaWYgT1BVU19BUk1fRVhURVJOQUxf
QVNNCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9kZnRfTERBREQgKz0gbGliYXJtYXNtLmxhCiBlbmRp
ZgpAQCAtMTI3LDE5ICsxNjYsMTkgQEAgY2VsdF90ZXN0c190ZXN0X3VuaXRfbGFwbGFjZV9TT1VS
Q0VTID0gY2VsdC90ZXN0cy90ZXN0X3VuaXRfbGFwbGFjZS5jCiBjZWx0X3Rlc3RzX3Rlc3RfdW5p
dF9sYXBsYWNlX0xEQUREID0gJChMSUJNKQogCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tYXRob3Bz
X1NPVVJDRVMgPSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tYXRob3BzLmMKLWNlbHRfdGVzdHNfdGVz
dF91bml0X21hdGhvcHNfTERBREQgPSAkKE5FMTBfTElCUykgJChMSUJNKQorY2VsdF90ZXN0c190
ZXN0X3VuaXRfbWF0aG9wc19MREFERCA9ICQoQ0VMVF9PQkopICQoTkUxMF9MSUJTKSAkKExJQk0p
CiBpZiBPUFVTX0FSTV9FWFRFUk5BTF9BU00KIGNlbHRfdGVzdHNfdGVzdF91bml0X21hdGhvcHNf
TERBREQgKz0gbGliYXJtYXNtLmxhCiBlbmRpZgogCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tZGN0
X1NPVVJDRVMgPSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tZGN0LmMKLWNlbHRfdGVzdHNfdGVzdF91
bml0X21kY3RfTERBREQgPSAkKE5FMTBfTElCUykgJChMSUJNKQorY2VsdF90ZXN0c190ZXN0X3Vu
aXRfbWRjdF9MREFERCA9ICQoQ0VMVF9PQkopICQoTkUxMF9MSUJTKSAkKExJQk0pCiBpZiBPUFVT
X0FSTV9FWFRFUk5BTF9BU00KIGNlbHRfdGVzdHNfdGVzdF91bml0X21kY3RfTERBREQgKz0gbGli
YXJtYXNtLmxhCiBlbmRpZgogCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9yb3RhdGlvbl9TT1VSQ0VT
ID0gY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24uYwotY2VsdF90ZXN0c190ZXN0X3VuaXRf
cm90YXRpb25fTERBREQgPSAkKE5FMTBfTElCUykgJChMSUJNKQorY2VsdF90ZXN0c190ZXN0X3Vu
aXRfcm90YXRpb25fTERBREQgPSAkKENFTFRfT0JKKSAkKE5FMTBfTElCUykgJChMSUJNKQogaWYg
T1BVU19BUk1fRVhURVJOQUxfQVNNCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9yb3RhdGlvbl9MREFE
RCArPSBsaWJhcm1hc20ubGEKIGVuZGlmCkBAIC0xNTcsOCArMTk2LDcgQEAgb3B1c19jdXN0b21f
ZGVtb19MREFERCA9IGxpYm9wdXMubGEgJChMSUJNKQogZW5kaWYKIGVuZGlmCiAKLUVYVFJBX0RJ
U1QgPSB2ZXJzaW9uLm1rIFwKLSAgICAgICAgICAgICBvcHVzLnBjLmluIFwKK0VYVFJBX0RJU1Qg
PSBvcHVzLnBjLmluIFwKICAgICAgICAgICAgICBvcHVzLXVuaW5zdGFsbGVkLnBjLmluIFwKICAg
ICAgICAgICAgICBvcHVzLm00IFwKICAgICAgICAgICAgICBNYWtlZmlsZS5taXBzIFwKQEAgLTE2
NiwyNSArMjA0LDE4IEBAIEVYVFJBX0RJU1QgPSB2ZXJzaW9uLm1rIFwKICAgICAgICAgICAgICB0
ZXN0cy9ydW5fdmVjdG9ycy5zaCBcCiAgICAgICAgICAgICAgY2VsdC9hcm0vYXJtMmdudS5wbCBc
CiAgICAgICAgICAgICAgY2VsdC9hcm0vY2VsdF9waXRjaF94Y29ycl9hcm0ucyBcCi0gICAgICAg
ICAgICAgd2luMzIvVlMyMDE1L3NpbGtfZmxvYXQudmN4cHJvaiBcCi0gICAgICAgICAgICAgd2lu
MzIvVlMyMDE1L2NlbHQudmN4cHJvai5maWx0ZXJzIFwKICAgICAgICAgICAgICB3aW4zMi9WUzIw
MTUvb3B1cy52Y3hwcm9qIFwKLSAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvc2lsa19jb21tb24u
dmN4cHJvai5maWx0ZXJzIFwKLSAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvc2lsa19mbG9hdC52
Y3hwcm9qLmZpbHRlcnMgXAogICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS90ZXN0X29wdXNfZW5j
b2RlLnZjeHByb2ouZmlsdGVycyBcCi0gICAgICAgICAgICAgd2luMzIvVlMyMDE1L3NpbGtfY29t
bW9uLnZjeHByb2ogXAogICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS90ZXN0X29wdXNfZW5jb2Rl
LnZjeHByb2ogXAogICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS9vcHVzX2RlbW8udmN4cHJvaiBc
CiAgICAgICAgICAgICAgd2luMzIvVlMyMDE1L3Rlc3Rfb3B1c19hcGkudmN4cHJvai5maWx0ZXJz
IFwKICAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvdGVzdF9vcHVzX2FwaS52Y3hwcm9qIFwKICAg
ICAgICAgICAgICB3aW4zMi9WUzIwMTUvdGVzdF9vcHVzX2RlY29kZS52Y3hwcm9qLmZpbHRlcnMg
XAotICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS9zaWxrX2ZpeGVkLnZjeHByb2ouZmlsdGVycyBc
CiAgICAgICAgICAgICAgd2luMzIvVlMyMDE1L29wdXNfZGVtby52Y3hwcm9qLmZpbHRlcnMgXAot
ICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS9zaWxrX2ZpeGVkLnZjeHByb2ogXAogICAgICAgICAg
ICAgIHdpbjMyL1ZTMjAxNS9vcHVzLnZjeHByb2ouZmlsdGVycyBcCiAgICAgICAgICAgICAgd2lu
MzIvVlMyMDE1L3Rlc3Rfb3B1c19kZWNvZGUudmN4cHJvaiBcCi0gICAgICAgICAgICAgd2luMzIv
VlMyMDE1L2NlbHQudmN4cHJvaiBcCiAgICAgICAgICAgICAgd2luMzIvVlMyMDE1L29wdXMuc2xu
IFwKKyAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvY29tbW9uLnByb3BzIFwKICAgICAgICAgICAg
ICB3aW4zMi9nZW52ZXJzaW9uLmJhdCBcCiAgICAgICAgICAgICAgd2luMzIvY29uZmlnLmgKIApA
QCAtMjc2LDI3ICszMDcsMzAgQEAgJChDRUxUX1NPVVJDRVNfQVJNX0FTTTolLnM9JS1nbnUuUyk6
ICQodG9wX3NyY2RpcikvY2VsdC9hcm0vYXJtMmdudS5wbAogT1BUX1VOSVRfVEVTVF9PQkogPSAk
KGNlbHRfdGVzdHNfdGVzdF91bml0X21hdGhvcHNfU09VUkNFUzouYz0ubykgXAogICAgICAgICAg
ICAgICAgICAgICAkKGNlbHRfdGVzdHNfdGVzdF91bml0X3JvdGF0aW9uX1NPVVJDRVM6LmM9Lm8p
IFwKICAgICAgICAgICAgICAgICAgICAgJChjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tZGN0X1NPVVJD
RVM6LmM9Lm8pIFwKLSAgICAgICAgICAgICAgICAgICAgJChjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9k
ZnRfU09VUkNFUzouYz0ubykKKyAgICAgICAgICAgICAgICAgICAgJChjZWx0X3Rlc3RzX3Rlc3Rf
dW5pdF9kZnRfU09VUkNFUzouYz0ubykgXAorICAgICAgICAgICAgICAgICAgICAkKHNpbGtfdGVz
dHNfdGVzdF91bml0X0xQQ19pbnZfcHJlZF9nYWluX1NPVVJDRVM6LmM9Lm8pCiAKIGlmIEhBVkVf
U1NFCiBTU0VfT0JKID0gJChDRUxUX1NPVVJDRVNfU1NFOi5jPS5sbykKLSQoU1NFX09CSikgJChP
UFRfVU5JVF9URVNUX09CSik6IENGTEFHUyArPSAkKE9QVVNfWDg2X1NTRV9DRkxBR1MpCiskKFNT
RV9PQkopOiBDRkxBR1MgKz0gJChPUFVTX1g4Nl9TU0VfQ0ZMQUdTKQogZW5kaWYKIAogaWYgSEFW
RV9TU0UyCiBTU0UyX09CSiA9ICQoQ0VMVF9TT1VSQ0VTX1NTRTI6LmM9LmxvKQotJChTU0UyX09C
SikgJChPUFRfVU5JVF9URVNUX09CSik6IENGTEFHUyArPSAkKE9QVVNfWDg2X1NTRTJfQ0ZMQUdT
KQorJChTU0UyX09CSik6IENGTEFHUyArPSAkKE9QVVNfWDg2X1NTRTJfQ0ZMQUdTKQogZW5kaWYK
IAogaWYgSEFWRV9TU0U0XzEKIFNTRTRfMV9PQkogPSAkKENFTFRfU09VUkNFU19TU0U0XzE6LmM9
LmxvKSBcCiAgICAgICAgICAgICAgJChTSUxLX1NPVVJDRVNfU1NFNF8xOi5jPS5sbykgXAogICAg
ICAgICAgICAgICQoU0lMS19TT1VSQ0VTX0ZJWEVEX1NTRTRfMTouYz0ubG8pCi0kKFNTRTRfMV9P
QkopICQoT1BUX1VOSVRfVEVTVF9PQkopOiBDRkxBR1MgKz0gJChPUFVTX1g4Nl9TU0U0XzFfQ0ZM
QUdTKQorJChTU0U0XzFfT0JKKTogQ0ZMQUdTICs9ICQoT1BVU19YODZfU1NFNF8xX0NGTEFHUykK
IGVuZGlmCiAKIGlmIEhBVkVfQVJNX05FT05fSU5UUgotQVJNX05FT05fSU5UUl9PQkogPSAkKENF
TFRfU09VUkNFU19BUk1fTkVPTl9JTlRSOi5jPS5sbykgJChTSUxLX1NPVVJDRVNfQVJNX05FT05f
SU5UUjouYz0ubG8pCi0kKEFSTV9ORU9OX0lOVFJfT0JKKSAkKE9QVF9VTklUX1RFU1RfT0JKKTog
Q0ZMQUdTICs9IFwKK0FSTV9ORU9OX0lOVFJfT0JKID0gJChDRUxUX1NPVVJDRVNfQVJNX05FT05f
SU5UUjouYz0ubG8pIFwKKyAgICAgICAgICAgICAgICAgICAgJChTSUxLX1NPVVJDRVNfQVJNX05F
T05fSU5UUjouYz0ubG8pIFwKKyAgICAgICAgICAgICAgICAgICAgJChTSUxLX1NPVVJDRVNfRklY
RURfQVJNX05FT05fSU5UUjouYz0ubG8pCiskKEFSTV9ORU9OX0lOVFJfT0JKKTogQ0ZMQUdTICs9
IFwKICAkKE9QVVNfQVJNX05FT05fSU5UUl9DRkxBR1MpICAkKE5FMTBfQ0ZMQUdTKQogZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvTWFrZWZpbGUubWlwcyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTWFrZWZpbGUubWlwcwppbmRleCA1NmE1MDYyMzhm
NjQ2YTY3MjU0N2MzNDU2YTRkNWFhYWYzNDI4MjY3Li5kMjVhZjhjYmMyOGU1ZTY5ZjUzZmU4N2Iy
NWYyNThiYTM4NWY1ZDI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLm1pcHMKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS5t
aXBzCkBAIC05OSw3ICs5OSw3IEBAIFRFU1RPUFVTQVBJX09CSlMgOj0gJChwYXRzdWJzdCAlLmMs
JSQoT0JKU1VGRklYKSwkKFRFU1RPUFVTQVBJX1NSQ1NfQykpCiBURVNUT1BVU0RFQ09ERV9TUkNT
X0MgPSB0ZXN0cy90ZXN0X29wdXNfZGVjb2RlLmMKIFRFU1RPUFVTREVDT0RFX09CSlMgOj0gJChw
YXRzdWJzdCAlLmMsJSQoT0JKU1VGRklYKSwkKFRFU1RPUFVTREVDT0RFX1NSQ1NfQykpCiAKLVRF
U1RPUFVTRU5DT0RFX1NSQ1NfQyA9IHRlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYworVEVTVE9QVVNF
TkNPREVfU1JDU19DID0gdGVzdHMvdGVzdF9vcHVzX2VuY29kZS5jIHRlc3RzL29wdXNfZW5jb2Rl
X3JlZ3Jlc3Npb25zLmMKIFRFU1RPUFVTRU5DT0RFX09CSlMgOj0gJChwYXRzdWJzdCAlLmMsJSQo
T0JKU1VGRklYKSwkKFRFU1RPUFVTRU5DT0RFX1NSQ1NfQykpCiAKIFRFU1RPUFVTUEFERElOR19T
UkNTX0MgPSB0ZXN0cy90ZXN0X29wdXNfcGFkZGluZy5jCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLnVu
aXggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL01ha2VmaWxlLnVuaXgKaW5kZXggYjEzMjMwZThmYmViZjVlYTk0YTU1N2UxOTNjMGQ1YTU3
MjRmZDQ1Yy4uOTBhNDhmMGNjMGU5MmU1MTRmMjcwYmIyYWY1NTJmZTZmNjZiM2U0ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9NYWtlZmlsZS51bml4CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTWFrZWZpbGUudW5peApAQCAtOTcsNyArOTcsNyBAQCBU
RVNUT1BVU0FQSV9PQkpTIDo9ICQocGF0c3Vic3QgJS5jLCUkKE9CSlNVRkZJWCksJChURVNUT1BV
U0FQSV9TUkNTX0MpKQogVEVTVE9QVVNERUNPREVfU1JDU19DID0gdGVzdHMvdGVzdF9vcHVzX2Rl
Y29kZS5jCiBURVNUT1BVU0RFQ09ERV9PQkpTIDo9ICQocGF0c3Vic3QgJS5jLCUkKE9CSlNVRkZJ
WCksJChURVNUT1BVU0RFQ09ERV9TUkNTX0MpKQogCi1URVNUT1BVU0VOQ09ERV9TUkNTX0MgPSB0
ZXN0cy90ZXN0X29wdXNfZW5jb2RlLmMKK1RFU1RPUFVTRU5DT0RFX1NSQ1NfQyA9IHRlc3RzL3Rl
c3Rfb3B1c19lbmNvZGUuYyB0ZXN0cy9vcHVzX2VuY29kZV9yZWdyZXNzaW9ucy5jCiBURVNUT1BV
U0VOQ09ERV9PQkpTIDo9ICQocGF0c3Vic3QgJS5jLCUkKE9CSlNVRkZJWCksJChURVNUT1BVU0VO
Q09ERV9TUkNTX0MpKQogCiBURVNUT1BVU1BBRERJTkdfU1JDU19DID0gdGVzdHMvdGVzdF9vcHVz
X3BhZGRpbmcuYwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9SRUFETUUgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL1JFQURNRQppbmRleCBhYzYyNjRlYzI5MjM4
MzllMDI5NDVlOGVhYTI2ODRlMzU4MGU0Y2YxLi45YTA2ODExNjU0YjVjMjMzODIzYTA5NzQyNjY4
MzUzMTM0MWE2ZDIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL1JFQURNRQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL1JFQURNRQpAQCAtNDMsMjUgKzQz
LDQzIEBAIG9yIG9uIHRoZSBtYWluIE9wdXMgd2Vic2l0ZToKIAogVG8gYnVpbGQgZnJvbSBhIGRp
c3RyaWJ1dGlvbiB0YXJiYWxsLCB5b3Ugb25seSBuZWVkIHRvIGRvIHRoZSBmb2xsb3dpbmc6CiAK
LSUgLi9jb25maWd1cmUKLSUgbWFrZQorICAgICUgLi9jb25maWd1cmUKKyAgICAlIG1ha2UKIAog
VG8gYnVpbGQgZnJvbSB0aGUgZ2l0IHJlcG9zaXRvcnksIHRoZSBmb2xsb3dpbmcgc3RlcHMgYXJl
IG5lY2Vzc2FyeToKIAorMCkgU2V0IHVwIGEgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQ6CisKK09u
IGFuIFVidW50dSBvciBEZWJpYW4gZmFtaWx5IExpbnV4IGRpc3RyaWJ1dGlvbjoKKworICAgICUg
c3VkbyBhcHQtZ2V0IGluc3RhbGwgZ2l0IGF1dG9jb25mIGF1dG9tYWtlIGxpYnRvb2wgZ2NjIG1h
a2UKKworT24gYSBGZWRvcmEvUmVkaGF0IGJhc2VkIExpbnV4OgorCisgICAgJSBzdWRvIGRuZiBp
bnN0YWxsIGdpdCBhdXRvY29uZiBhdXRvbWFrZSBsaWJ0b29sIGdjYyBtYWtlCisKK09yIGZvciBv
bGRlciBSZWRoYXQvQ2VudG9zIExpbnV4IHJlbGVhc2VzOgorCisgICAgJSBzdWRvIHl1bSBpbnN0
YWxsIGdpdCBhdXRvY29uZiBhdXRvbWFrZSBsaWJ0b29sIGdjYyBtYWtlCisKK09uIEFwcGxlIG1h
Y09TLCBpbnN0YWxsIFhjb2RlIGFuZCBicmV3LnNoLCB0aGVuIGluIHRoZSBUZXJtaW5hbCBlbnRl
cjoKKworICAgICUgYnJldyBpbnN0YWxsIGF1dG9jb25mIGF1dG9tYWtlIGxpYnRvb2wKKwogMSkg
Q2xvbmUgdGhlIHJlcG9zaXRvcnk6CiAKLSUgZ2l0IGNsb25lIGh0dHBzOi8vZ2l0LnhpcGgub3Jn
L29wdXMuZ2l0Ci0lIGNkIG9wdXMKKyAgICAlIGdpdCBjbG9uZSBodHRwczovL2dpdC54aXBoLm9y
Zy9vcHVzLmdpdAorICAgICUgY2Qgb3B1cwogCiAyKSBDb21waWxpbmcgdGhlIHNvdXJjZQogCi0l
IC4vYXV0b2dlbi5zaAotJSAuL2NvbmZpZ3VyZQotJSBtYWtlCisgICAgJSAuL2F1dG9nZW4uc2gK
KyAgICAlIC4vY29uZmlndXJlCisgICAgJSBtYWtlCiAKIDMpIEluc3RhbGwgdGhlIGNvZGVjIGxp
YnJhcmllcyAob3B0aW9uYWwpCiAKLSUgc3VkbyBtYWtlIGluc3RhbGwKKyAgICAlIHN1ZG8gbWFr
ZSBpbnN0YWxsCiAKIE9uY2UgeW91IGhhdmUgY29tcGlsZWQgdGhlIGNvZGVjLCB0aGVyZSB3aWxs
IGJlIGEgb3B1c19kZW1vIGV4ZWN1dGFibGUKIGluIHRoZSB0b3AgZGlyZWN0b3J5LgpAQCAtMTAy
LDcgKzEyMCw4IEBAIHdoaWNoIFNIT1VMRCBiZSBydW4gYWZ0ZXIgY29tcGlsaW5nIHRoZSBwYWNr
YWdlIGVzcGVjaWFsbHkgdGhlIGZpcnN0CiB0aW1lIGl0IGlzIHJ1biBvbiBhIG5ldyBwbGF0Zm9y
bS4KIAogVG8gcnVuIHRoZSBpbnRlZ3JhdGVkIHRlc3RzOgotJSBtYWtlIGNoZWNrCisKKyAgICAl
IG1ha2UgY2hlY2sKIAogVGhlcmUgaXMgYWxzbyBjb2xsZWN0aW9uIG9mIHN0YW5kYXJkIHRlc3Qg
dmVjdG9ycyB3aGljaCBhcmUgbm90CiBpbmNsdWRlZCBpbiB0aGlzIHBhY2thZ2UgZm9yIHNpemUg
cmVhc29ucyBidXQgY2FuIGJlIG9idGFpbmVkIGZyb206CkBAIC0xMTAsOSArMTI5LDkgQEAgaHR0
cHM6Ly9vcHVzLWNvZGVjLm9yZy90ZXN0dmVjdG9ycy9vcHVzX3Rlc3R2ZWN0b3JzLnRhci5negog
CiBUbyBydW4gY29tcGFyZSB0aGUgY29kZSB0byB0aGVzZSB0ZXN0IHZlY3RvcnM6CiAKLSUgY3Vy
bCAtTyBodHRwczovL29wdXMtY29kZWMub3JnL3Rlc3R2ZWN0b3JzL29wdXNfdGVzdHZlY3RvcnMu
dGFyLmd6Ci0lIHRhciAtenhmIG9wdXNfdGVzdHZlY3RvcnMudGFyLmd6Ci0lIC4vdGVzdHMvcnVu
X3ZlY3RvcnMuc2ggLi8gb3B1c190ZXN0dmVjdG9ycyA0ODAwMAorICAgICUgY3VybCAtT0wgaHR0
cHM6Ly9vcHVzLWNvZGVjLm9yZy90ZXN0dmVjdG9ycy9vcHVzX3Rlc3R2ZWN0b3JzLnRhci5negor
ICAgICUgdGFyIC16eGYgb3B1c190ZXN0dmVjdG9ycy50YXIuZ3oKKyAgICAlIC4vdGVzdHMvcnVu
X3ZlY3RvcnMuc2ggLi8gb3B1c190ZXN0dmVjdG9ycyA0ODAwMAogCiA9PSBQb3J0YWJpbGl0eSBu
b3RlcyA9PQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL1JFQURNRS5kcmFmdCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvUkVBRE1FLmRyYWZ0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjhkOGUyNGRmMjJmZjg0YTZkMWEyYjlhZTY2OTE4N2ZiMjg3YTMyNGIKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL1JFQURNRS5kcmFmdApAQCAtMCwwICsxLDU0IEBACitUbyBidWlsZCB0aGlzIHNvdXJj
ZSBjb2RlLCBzaW1wbHkgdHlwZToKKworJSBtYWtlCisKK0lmIHRoaXMgZG9lcyBub3Qgd29yaywg
b3IgaWYgeW91IHdhbnQgdG8gY2hhbmdlIHRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24KKyhlLmcu
LCB0byBjb21waWxlIGZvciBhIGZpeGVkLXBvaW50IGFyY2hpdGVjdHVyZSksIHNpbXBseSBlZGl0
IHRoZSBvcHRpb25zCitpbiB0aGUgTWFrZWZpbGUuCisKK0FuIHVwLXRvLWRhdGUgaW1wbGVtZW50
YXRpb24gY29uZm9ybWluZyB0byB0aGlzIHN0YW5kYXJkIGlzIGF2YWlsYWJsZSBpbiBhCitHaXQg
cmVwb3NpdG9yeSBhdCBodHRwczovL2dpdC54aXBoLm9yZy9vcHVzLmdpdCBvciBvbiBhIHdlYnNp
dGUgYXQ6CitodHRwczovL29wdXMtY29kZWMub3JnLworSG93ZXZlciwgYWx0aG91Z2ggdGhhdCBp
bXBsZW1lbnRhdGlvbiBpcyBleHBlY3RlZCB0byByZW1haW4gY29uZm9ybWFudAord2l0aCB0aGUg
c3RhbmRhcmQsIGl0IGlzIHRoZSBjb2RlIGluIHRoaXMgUkZDIHRoYXQgc2hhbGwgcmVtYWluIG5v
cm1hdGl2ZS4KK1RvIGJ1aWxkIGZyb20gdGhlIGdpdCByZXBvc2l0b3J5IGluc3RlYWQgb2YgdXNp
bmcgdGhpcyBSRkMsIGZvbGxvdyB0aGVzZQorc3RlcHM6CisKKzEpIENsb25lIHRoZSByZXBvc2l0
b3J5IChsYXRlc3QgaW1wbGVtZW50YXRpb24gb2YgdGhpcyBzdGFuZGFyZCBhdCB0aGUgdGltZQor
b2YgcHVibGljYXRpb24pCisKKyUgZ2l0IGNsb25lIGh0dHBzOi8vZ2l0LnhpcGgub3JnL29wdXMu
Z2l0CislIGNkIG9wdXMKKworMikgQ29tcGlsZQorCislIC4vYXV0b2dlbi5zaAorJSAuL2NvbmZp
Z3VyZQorJSBtYWtlCisKK09uY2UgeW91IGhhdmUgY29tcGlsZWQgdGhlIGNvZGVjLCB0aGVyZSB3
aWxsIGJlIGEgb3B1c19kZW1vIGV4ZWN1dGFibGUgaW4KK3RoZSB0b3AgZGlyZWN0b3J5LgorCitV
c2FnZTogb3B1c19kZW1vIFstZV0gPGFwcGxpY2F0aW9uPiA8c2FtcGxpbmcgcmF0ZSAoSHopPiA8
Y2hhbm5lbHMgKDEvMik+CisgICAgICAgICA8Yml0cyBwZXIgc2Vjb25kPiBbb3B0aW9uc10gPGlu
cHV0PiA8b3V0cHV0PgorICAgICAgIG9wdXNfZGVtbyAtZCA8c2FtcGxpbmcgcmF0ZSAoSHopPiA8
Y2hhbm5lbHMgKDEvMik+IFtvcHRpb25zXQorICAgICAgICAgPGlucHV0PiA8b3V0cHV0PgorCitt
b2RlOiB2b2lwIHwgYXVkaW8gfCByZXN0cmljdGVkLWxvd2RlbGF5CitvcHRpb25zOgorLWUgICAg
ICAgICAgICAgICAgICAgOiBvbmx5IHJ1bnMgdGhlIGVuY29kZXIgKG91dHB1dCB0aGUgYml0LXN0
cmVhbSkKKy1kICAgICAgICAgICAgICAgICAgIDogb25seSBydW5zIHRoZSBkZWNvZGVyIChyZWFk
cyB0aGUgYml0LXN0cmVhbSBhcyBpbnB1dCkKKy1jYnIgICAgICAgICAgICAgICAgIDogZW5hYmxl
IGNvbnN0YW50IGJpdHJhdGU7IGRlZmF1bHQ6IHZhcmlhYmxlIGJpdHJhdGUKKy1jdmJyICAgICAg
ICAgICAgICAgIDogZW5hYmxlIGNvbnN0cmFpbmVkIHZhcmlhYmxlIGJpdHJhdGU7IGRlZmF1bHQ6
IHVuY29uc3RyYWluZWQKKy1iYW5kd2lkdGggPE5CfE1CfFdCfFNXQnxGQj4gOiBhdWRpbyBiYW5k
d2lkdGggKGZyb20gbmFycm93YmFuZCB0byBmdWxsYmFuZCk7CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZGVmYXVsdDogc2FtcGxpbmcgcmF0ZQorLWZyYW1lc2l6ZSA8Mi41fDV8MTB8
MjB8NDB8NjA+IDogZnJhbWUgc2l6ZSBpbiBtczsgZGVmYXVsdDogMjAKKy1tYXhfcGF5bG9hZCA8
Ynl0ZXM+IDogbWF4aW11bSBwYXlsb2FkIHNpemUgaW4gYnl0ZXMsIGRlZmF1bHQ6IDEwMjQKKy1j
b21wbGV4aXR5IDxjb21wPiAgIDogY29tcGxleGl0eSwgMCAobG93ZXN0KSAuLi4gMTAgKGhpZ2hl
c3QpOyBkZWZhdWx0OiAxMAorLWluYmFuZGZlYyAgICAgICAgICAgOiBlbmFibGUgU0lMSyBpbmJh
bmQgRkVDCistZm9yY2Vtb25vICAgICAgICAgICA6IGZvcmNlIG1vbm8gZW5jb2RpbmcsIGV2ZW4g
Zm9yIHN0ZXJlbyBpbnB1dAorLWR0eCAgICAgICAgICAgICAgICAgOiBlbmFibGUgU0lMSyBEVFgK
Ky1sb3NzIDxwZXJjPiAgICAgICAgIDogc2ltdWxhdGUgcGFja2V0IGxvc3MsIGluIHBlcmNlbnQg
KDAtMTAwKTsgZGVmYXVsdDogMAorCitpbnB1dCBhbmQgb3V0cHV0IGFyZSBsaXR0bGUgZW5kaWFu
IHNpZ25lZCAxNi1iaXQgUENNIGZpbGVzIG9yIG9wdXMgYml0c3RyZWFtcword2l0aCBzaW1wbGUg
b3B1c19kZW1vIHByb3ByaWV0YXJ5IGZyYW1pbmcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2F1dG9nZW4uc2ggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2F1
dG9nZW4uc2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMzgwZDFmM2NhNmRjY2JjNDcxZWNmMmRlYWRlODM2ZDhlZDhm
MmEyMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvYXV0b2dlbi5zaApAQCAtMCwwICsxLDE0IEBACisjIS9i
aW4vc2gKKyMgQ29weXJpZ2h0IChjKSAyMDEwLTIwMTUgWGlwaC5PcmcgRm91bmRhdGlvbiBhbmQg
Y29udHJpYnV0b3JzLgorIyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBh
IEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisjIGZvdW5kIGluIHRoZSBDT1BZSU5HIGZp
bGUuCisKKyMgUnVuIHRoaXMgdG8gc2V0IHVwIHRoZSBidWlsZCBzeXN0ZW06IGNvbmZpZ3VyZSwg
bWFrZWZpbGVzLCBldGMuCitzZXQgLWUKKworc3JjZGlyPWBkaXJuYW1lICQwYAordGVzdCAtbiAi
JHNyY2RpciIgJiYgY2QgIiRzcmNkaXIiCisKK2VjaG8gIlVwZGF0aW5nIGJ1aWxkIGNvbmZpZ3Vy
YXRpb24gZmlsZXMsIHBsZWFzZSB3YWl0Li4uLiIKKworYXV0b3JlY29uZiAtaXNmCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvX2tpc3NfZmZ0X2d1dHMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9fa2lzc19mZnRfZ3V0cy5oCmluZGV4IDVl
M2Q1OGZkNjY0MWU1M2RmYjU2YTJmMzJkNThjOGNkOTcxN2E0N2YuLjE3MzkyYjNlOTA5NzdiNzQw
NDkwNDliN2ZhMDFhOWY4Y2IwZmMwOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9fa2lzc19mZnRfZ3V0cy5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC9fa2lzc19mZnRfZ3V0cy5oCkBAIC01OCwxMiArNTgsMTIgQEAKICMgICBkZWZp
bmUgU19NVUwoYSxiKSBNVUxUMTZfMzJfUTE1KGIsIGEpCiAKICMgICBkZWZpbmUgQ19NVUwobSxh
LGIpIFwKLSAgICAgIGRveyAobSkuciA9IFNVQjMyKFNfTVVMKChhKS5yLChiKS5yKSAsIFNfTVVM
KChhKS5pLChiKS5pKSk7IFwKLSAgICAgICAgICAobSkuaSA9IEFERDMyKFNfTVVMKChhKS5yLChi
KS5pKSAsIFNfTVVMKChhKS5pLChiKS5yKSk7IH13aGlsZSgwKQorICAgICAgZG97IChtKS5yID0g
U1VCMzJfb3ZmbHcoU19NVUwoKGEpLnIsKGIpLnIpICwgU19NVUwoKGEpLmksKGIpLmkpKTsgXAor
ICAgICAgICAgIChtKS5pID0gQUREMzJfb3ZmbHcoU19NVUwoKGEpLnIsKGIpLmkpICwgU19NVUwo
KGEpLmksKGIpLnIpKTsgfXdoaWxlKDApCiAKICMgICBkZWZpbmUgQ19NVUxDKG0sYSxiKSBcCi0g
ICAgICBkb3sgKG0pLnIgPSBBREQzMihTX01VTCgoYSkuciwoYikucikgLCBTX01VTCgoYSkuaSwo
YikuaSkpOyBcCi0gICAgICAgICAgKG0pLmkgPSBTVUIzMihTX01VTCgoYSkuaSwoYikucikgLCBT
X01VTCgoYSkuciwoYikuaSkpOyB9d2hpbGUoMCkKKyAgICAgIGRveyAobSkuciA9IEFERDMyX292
Zmx3KFNfTVVMKChhKS5yLChiKS5yKSAsIFNfTVVMKChhKS5pLChiKS5pKSk7IFwKKyAgICAgICAg
ICAobSkuaSA9IFNVQjMyX292Zmx3KFNfTVVMKChhKS5pLChiKS5yKSAsIFNfTVVMKChhKS5yLChi
KS5pKSk7IH13aGlsZSgwKQogCiAjICAgZGVmaW5lIENfTVVMQllTQ0FMQVIoIGMsIHMgKSBcCiAg
ICAgICBkb3sgKGMpLnIgPSAgU19NVUwoIChjKS5yICwgcyApIDtcCkBAIC03NywxNyArNzcsMTcg
QEAKICAgICAgICAgICAgICAgICBESVZTQ0FMQVIoIChjKS5pICAsIGRpdik7IH13aGlsZSAoMCkK
IAogI2RlZmluZSAgQ19BREQoIHJlcywgYSxiKVwKLSAgICBkbyB7KHJlcykucj1BREQzMigoYSku
ciwoYikucik7ICAocmVzKS5pPUFERDMyKChhKS5pLChiKS5pKTsgXAorICAgIGRvIHsocmVzKS5y
PUFERDMyX292Zmx3KChhKS5yLChiKS5yKTsgIChyZXMpLmk9QUREMzJfb3ZmbHcoKGEpLmksKGIp
LmkpOyBcCiAgICAgfXdoaWxlKDApCiAjZGVmaW5lICBDX1NVQiggcmVzLCBhLGIpXAotICAgIGRv
IHsocmVzKS5yPVNVQjMyKChhKS5yLChiKS5yKTsgIChyZXMpLmk9U1VCMzIoKGEpLmksKGIpLmkp
OyBcCisgICAgZG8geyhyZXMpLnI9U1VCMzJfb3ZmbHcoKGEpLnIsKGIpLnIpOyAgKHJlcykuaT1T
VUIzMl9vdmZsdygoYSkuaSwoYikuaSk7IFwKICAgICB9d2hpbGUoMCkKICNkZWZpbmUgQ19BRERU
TyggcmVzICwgYSlcCi0gICAgZG8geyhyZXMpLnIgPSBBREQzMigocmVzKS5yLCAoYSkucik7ICAo
cmVzKS5pID0gQUREMzIoKHJlcykuaSwoYSkuaSk7XAorICAgIGRvIHsocmVzKS5yID0gQUREMzJf
b3ZmbHcoKHJlcykuciwgKGEpLnIpOyAgKHJlcykuaSA9IEFERDMyX292Zmx3KChyZXMpLmksKGEp
LmkpO1wKICAgICB9d2hpbGUoMCkKIAogI2RlZmluZSBDX1NVQkZST00oIHJlcyAsIGEpXAotICAg
IGRvIHsocmVzKS5yID0gQUREMzIoKHJlcykuciwoYSkucik7ICAocmVzKS5pID0gU1VCMzIoKHJl
cykuaSwoYSkuaSk7IFwKKyAgICBkbyB7KHJlcykuciA9IEFERDMyX292Zmx3KChyZXMpLnIsKGEp
LnIpOyAgKHJlcykuaSA9IFNVQjMyX292Zmx3KChyZXMpLmksKGEpLmkpOyBcCiAgICAgfXdoaWxl
KDApCiAKICNpZiBkZWZpbmVkKE9QVVNfQVJNX0lOTElORV9BU00pCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
YXJjaC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L2FyY2guaAppbmRleCA4Y2VhYjVmZTEwZTkzNDExMzU5MmFkZTkzMzk5Mzk3
NzFmNGEyYTAxLi5kMWU2NDU3YzU0YTA3YzZlYzVjM2EwMzA1MTBkYThhYjQyMzU1MDA4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvYXJjaC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcmNoLmgKQEAgLTQ2LDYgKzQ2LDE0IEBACiAj
ICBlbmRpZgogIyBlbmRpZgogCisjaWYgT1BVU19HTlVDX1BSRVJFUSgzLCAwKQorI2RlZmluZSBv
cHVzX2xpa2VseSh4KSAgICAgICAoX19idWlsdGluX2V4cGVjdCghISh4KSwgMSkpCisjZGVmaW5l
IG9wdXNfdW5saWtlbHkoeCkgICAgIChfX2J1aWx0aW5fZXhwZWN0KCEhKHgpLCAwKSkKKyNlbHNl
CisjZGVmaW5lIG9wdXNfbGlrZWx5KHgpICAgICAgICghISh4KSkKKyNkZWZpbmUgb3B1c191bmxp
a2VseSh4KSAgICAgKCEhKHgpKQorI2VuZGlmCisKICNkZWZpbmUgQ0VMVF9TSUdfU0NBTEUgMzI3
NjguZgogCiAjZGVmaW5lIGNlbHRfZmF0YWwoc3RyKSBfY2VsdF9mYXRhbChzdHIsIF9fRklMRV9f
LCBfX0xJTkVfXyk7CkBAIC05Myw2ICsxMDEsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBf
Y2VsdF9mYXRhbChjb25zdCBjaGFyICpzdHIsIGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lKQog
CiB0eXBlZGVmIG9wdXNfaW50MTYgb3B1c192YWwxNjsKIHR5cGVkZWYgb3B1c19pbnQzMiBvcHVz
X3ZhbDMyOwordHlwZWRlZiBvcHVzX2ludDY0IG9wdXNfdmFsNjQ7CiAKIHR5cGVkZWYgb3B1c192
YWwzMiBjZWx0X3NpZzsKIHR5cGVkZWYgb3B1c192YWwxNiBjZWx0X25vcm07CkBAIC0xMDEsNiAr
MTEwLDkgQEAgdHlwZWRlZiBvcHVzX3ZhbDMyIGNlbHRfZW5lcjsKICNkZWZpbmUgUTE1T05FIDMy
NzY3CiAKICNkZWZpbmUgU0lHX1NISUZUIDEyCisvKiBTYWZlIHNhdHVyYXRpb24gdmFsdWUgZm9y
IDMyLWJpdCBzaWduYWxzLiBTaG91bGQgYmUgbGVzcyB0aGFuCisgICAyXjMxKigxLTAuODUpIHRv
IGF2b2lkIGJsb3dpbmcgdXAgb24gREMgYXQgZGVlbXBoYXNpcy4qLworI2RlZmluZSBTSUdfU0FU
ICgzMDAwMDAwMDApCiAKICNkZWZpbmUgTk9STV9TQ0FMSU5HIDE2Mzg0CiAKQEAgLTE0Nyw2ICsx
NTksNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQxNiBTQVQxNihvcHVzX2ludDMyIHgp
IHsKIAogdHlwZWRlZiBmbG9hdCBvcHVzX3ZhbDE2OwogdHlwZWRlZiBmbG9hdCBvcHVzX3ZhbDMy
OwordHlwZWRlZiBmbG9hdCBvcHVzX3ZhbDY0OwogCiB0eXBlZGVmIGZsb2F0IGNlbHRfc2lnOwog
dHlwZWRlZiBmbG9hdCBjZWx0X25vcm07CkBAIC0xODYsNiArMTk5LDcgQEAgc3RhdGljIE9QVVNf
SU5MSU5FIGludCBjZWx0X2lzbmFuKGZsb2F0IHgpCiAKICNkZWZpbmUgTkVHMTYoeCkgKC0oeCkp
CiAjZGVmaW5lIE5FRzMyKHgpICgtKHgpKQorI2RlZmluZSBORUczMl9vdmZsdyh4KSAoLSh4KSkK
ICNkZWZpbmUgRVhUUkFDVDE2KHgpICh4KQogI2RlZmluZSBFWFRFTkQzMih4KSAoeCkKICNkZWZp
bmUgU0hSMTYoYSxzaGlmdCkgKGEpCkBAIC0yMDIsNiArMjE2LDcgQEAgc3RhdGljIE9QVVNfSU5M
SU5FIGludCBjZWx0X2lzbmFuKGZsb2F0IHgpCiAjZGVmaW5lIFNBVFVSQVRFMTYoeCkgICAoeCkK
IAogI2RlZmluZSBST1VORDE2KGEsc2hpZnQpICAoYSkKKyNkZWZpbmUgU1JPVU5EMTYoYSxzaGlm
dCkgKGEpCiAjZGVmaW5lIEhBTEYxNih4KSAgICAgICAoLjVmKih4KSkKICNkZWZpbmUgSEFMRjMy
KHgpICAgICAgICguNWYqKHgpKQogCkBAIC0yMDksNiArMjI0LDggQEAgc3RhdGljIE9QVVNfSU5M
SU5FIGludCBjZWx0X2lzbmFuKGZsb2F0IHgpCiAjZGVmaW5lIFNVQjE2KGEsYikgKChhKS0oYikp
CiAjZGVmaW5lIEFERDMyKGEsYikgKChhKSsoYikpCiAjZGVmaW5lIFNVQjMyKGEsYikgKChhKS0o
YikpCisjZGVmaW5lIEFERDMyX292Zmx3KGEsYikgKChhKSsoYikpCisjZGVmaW5lIFNVQjMyX292
Zmx3KGEsYikgKChhKS0oYikpCiAjZGVmaW5lIE1VTFQxNl8xNl8xNihhLGIpICAgICAoKGEpKihi
KSkKICNkZWZpbmUgTVVMVDE2XzE2KGEsYikgICAgICgob3B1c192YWwzMikoYSkqKG9wdXNfdmFs
MzIpKGIpKQogI2RlZmluZSBNQUMxNl8xNihjLGEsYikgICAgICgoYykrKG9wdXNfdmFsMzIpKGEp
KihvcHVzX3ZhbDMyKShiKSkKQEAgLTI0Myw5ICsyNjAsOSBAQCBzdGF0aWMgT1BVU19JTkxJTkUg
aW50IGNlbHRfaXNuYW4oZmxvYXQgeCkKIAogI2lmbmRlZiBHTE9CQUxfU1RBQ0tfU0laRQogI2lm
ZGVmIEZJWEVEX1BPSU5UCi0jZGVmaW5lIEdMT0JBTF9TVEFDS19TSVpFIDEwMDAwMAorI2RlZmlu
ZSBHTE9CQUxfU1RBQ0tfU0laRSAxMjAwMDAKICNlbHNlCi0jZGVmaW5lIEdMT0JBTF9TVEFDS19T
SVpFIDEwMDAwMAorI2RlZmluZSBHTE9CQUxfU1RBQ0tfU0laRSAxMjAwMDAKICNlbmRpZgogI2Vu
ZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vYXJtMmdudS5wbCBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vYXJtMmdudS5w
bAppbmRleCA2YzkyMmFjODE5ZDdlMDg4OWJkYmI3MmM0ZThiZWM5Y2Y2YmU1ZDRiLi5hMjg5NWY3
NDQ1ZTg5NDMzNjY5MTUyZTNjNDg5MTE2ZDA4NjBhN2I5IDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2Fy
bTJnbnUucGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9hcm0yZ251LnBsCkBAIC0xNjQsMTEgKzE2NCwxMSBAQCB3
aGlsZSAoPD4pIHsKICAgICAgICAgJHByZWZpeCA9ICIiOwogICAgICAgICBpZiAoJHByb2MpCiAg
ICAgICAgIHsKLSAgICAgICAgICAgICRwcmVmaXggPSAkcHJlZml4LnNwcmludGYoIlx0LnR5cGVc
dCVzLCAlJWZ1bmN0aW9uOyAiLCRwcm9jKSB1bmxlc3MgKCRhcHBsZSk7CisgICAgICAgICAgICAk
cHJlZml4ID0gJHByZWZpeC5zcHJpbnRmKCJcdC50eXBlXHQlcywgJSVmdW5jdGlvbiIsICRwcm9j
KSB1bmxlc3MgKCRhcHBsZSk7CiAgICAgICAgICAgICAjIE1ha2Ugc3VyZSB3ZSAkcHJlZml4IGlz
bid0IGVtcHR5IGhlcmUgKGZvciB0aGUgJGFwcGxlIGNhc2UpLgogICAgICAgICAgICAgIyBXZSBo
YW5kbGUgbWFuZ2xpbmcgdGhlIGxhYmVsIGhlcmUsIG1ha2Ugc3VyZSBpdCBkb2Vzbid0IG1hdGNo
CiAgICAgICAgICAgICAjIHRoZSBsYWJlbCBoYW5kbGluZyBiZWxvdyAoaWYgJHByZWZpeCB3b3Vs
ZCBiZSBlbXB0eSkuCi0gICAgICAgICAgICAkcHJlZml4ID0gIjsgIjsKKyAgICAgICAgICAgICRw
cmVmaXggPSAkcHJlZml4LiI7ICI7CiAgICAgICAgICAgICBwdXNoKEBwcm9jX3N0YWNrLCAkcHJv
Yyk7CiAgICAgICAgICAgICBzL15bQS1aYS16X1wuXVx3Ky8kc3ltcHJlZml4JCY6LzsKICAgICAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9hcm1fY2VsdF9tYXAuYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vYXJtX2Nl
bHRfbWFwLmMKaW5kZXggNGQ0ZDA2OWE4NmZjMjc3YWE2MmEwOTA0ZTMxMjU2MDRmYzk2OWNjOS4u
Y2E5ODhiNjZmNTVkMTdjMTE2ZjBiN2ExOWRiMWM2YTFiY2I0YjYyMSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L2FybS9hcm1fY2VsdF9tYXAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2FybV9jZWx0X21hcC5jCkBAIC0zNSwx
MiArMzUsMjkgQEAKIAogI2lmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpCiAKKyMgaWYgZGVmaW5l
ZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNV
TUVfTkVPTl9JTlRSKQorb3B1c192YWwzMiAoKmNvbnN0IENFTFRfSU5ORVJfUFJPRF9JTVBMW09Q
VVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNfdmFsMTYgKngsIGNvbnN0IG9wdXNfdmFsMTYgKnks
IGludCBOKSA9IHsKKyAgY2VsdF9pbm5lcl9wcm9kX2MsICAgLyogQVJNdjQgKi8KKyAgY2VsdF9p
bm5lcl9wcm9kX2MsICAgLyogRURTUCAqLworICBjZWx0X2lubmVyX3Byb2RfYywgICAvKiBNZWRp
YSAqLworICBjZWx0X2lubmVyX3Byb2RfbmVvbiAvKiBORU9OICovCit9OworCit2b2lkICgqY29u
c3QgRFVBTF9JTk5FUl9QUk9EX0lNUExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qgb3B1c192YWwx
NiAqeCwgY29uc3Qgb3B1c192YWwxNiAqeTAxLCBjb25zdCBvcHVzX3ZhbDE2ICp5MDIsCisgICAg
ICBpbnQgTiwgb3B1c192YWwzMiAqeHkxLCBvcHVzX3ZhbDMyICp4eTIpID0geworICBkdWFsX2lu
bmVyX3Byb2RfYywgICAvKiBBUk12NCAqLworICBkdWFsX2lubmVyX3Byb2RfYywgICAvKiBFRFNQ
ICovCisgIGR1YWxfaW5uZXJfcHJvZF9jLCAgIC8qIE1lZGlhICovCisgIGR1YWxfaW5uZXJfcHJv
ZF9uZW9uIC8qIE5FT04gKi8KK307CisjIGVuZGlmCisKICMgaWYgZGVmaW5lZChGSVhFRF9QT0lO
VCkKICMgIGlmICgoZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OKSAmJiAhZGVmaW5lZChP
UFVTX0FSTV9QUkVTVU1FX05FT04pKSB8fCBcCiAgICAgKGRlZmluZWQoT1BVU19BUk1fTUFZX0hB
VkVfTUVESUEpICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTUVESUEpKSB8fCBcCiAgICAg
KGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfRURTUCkgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJF
U1VNRV9FRFNQKSkpCiBvcHVzX3ZhbDMyICgqY29uc3QgQ0VMVF9QSVRDSF9YQ09SUl9JTVBMW09Q
VVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNfdmFsMTYgKiwKLSAgICBjb25zdCBvcHVzX3ZhbDE2
ICosIG9wdXNfdmFsMzIgKiwgaW50ICwgaW50KSA9IHsKKyAgICBjb25zdCBvcHVzX3ZhbDE2ICos
IG9wdXNfdmFsMzIgKiwgaW50LCBpbnQsIGludCkgPSB7CiAgIGNlbHRfcGl0Y2hfeGNvcnJfYywg
ICAgICAgICAgICAgICAvKiBBUk12NCAqLwogICBNQVlfSEFWRV9FRFNQKGNlbHRfcGl0Y2hfeGNv
cnIpLCAgLyogRURTUCAqLwogICBNQVlfSEFWRV9NRURJQShjZWx0X3BpdGNoX3hjb3JyKSwgLyog
TWVkaWEgKi8KQEAgLTUxLDcgKzY4LDcgQEAgb3B1c192YWwzMiAoKmNvbnN0IENFTFRfUElUQ0hf
WENPUlJfSU1QTFtPUFVTX0FSQ0hNQVNLKzFdKShjb25zdCBvcHVzX3ZhbDE2ICosCiAjIGVsc2Ug
LyogIUZJWEVEX1BPSU5UICovCiAjICBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05f
SU5UUikgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpCiB2b2lkICgqY29u
c3QgQ0VMVF9QSVRDSF9YQ09SUl9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNfdmFs
MTYgKiwKLSAgICBjb25zdCBvcHVzX3ZhbDE2ICosIG9wdXNfdmFsMzIgKiwgaW50LCBpbnQpID0g
eworICAgIGNvbnN0IG9wdXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQsIGludCwgaW50KSA9
IHsKICAgY2VsdF9waXRjaF94Y29ycl9jLCAgICAgICAgICAgICAgLyogQVJNdjQgKi8KICAgY2Vs
dF9waXRjaF94Y29ycl9jLCAgICAgICAgICAgICAgLyogRURTUCAqLwogICBjZWx0X3BpdGNoX3hj
b3JyX2MsICAgICAgICAgICAgICAvKiBNZWRpYSAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0
X25lMTBfZmZ0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfbmUxMF9mZnQuYwppbmRleCA0MmQ5NmE3MTE3NjBl
M2E2ZGRmNGJlNjFjZGY3YmY5NzFhYTc4YWEzLi5iOGM2MGFiZTk4YjgzNTcxYTBiYzg1ODUwODFh
NTdmYWNiNWE1NmE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfbmUxMF9mZnQuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvYXJtL2NlbHRfbmUxMF9mZnQuYwpAQCAtMzYsNyArMzYsNiBAQAogI2VuZGlmCiAjZW5kaWYK
IAotI2luY2x1ZGUgPE5FMTBfaW5pdC5oPgogI2luY2x1ZGUgPE5FMTBfZHNwLmg+CiAjaW5jbHVk
ZSAib3Nfc3VwcG9ydC5oIgogI2luY2x1ZGUgImtpc3NfZmZ0LmgiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
YXJtL2NlbHRfbmVvbl9pbnRyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfbmVvbl9pbnRyLmMKaW5kZXggNDdi
YmUzZGMyMmVjOTNjZmViOTM5ODI0OGJkMTQ0MTI4YzMzMzk3NS4uY2Y0NDM5ODhjZTVmZTUzMjNi
ODQ0NWNiNjU2YTk5MWE5OGRhNTE0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0X25lb25faW50
ci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9hcm0vY2VsdF9uZW9uX2ludHIuYwpAQCAtMTkxLDEwNyArMTkxLDEwIEBA
IHN0YXRpYyB2b2lkIHhjb3JyX2tlcm5lbF9uZW9uX2Zsb2F0KGNvbnN0IGZsb2F0MzJfdCAqeCwg
Y29uc3QgZmxvYXQzMl90ICp5LAogICAgdnN0MXFfZjMyKHN1bSwgU1VNTSk7CiB9CiAKLS8qCi0g
KiBGdW5jdGlvbjogeGNvcnJfa2VybmVsX25lb25fZmxvYXRfcHJvY2VzczEKLSAqIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotICogQ29tcHV0ZXMgc2luZ2xlIGNvcnJlbGF0aW9u
IHZhbHVlcyBhbmQgc3RvcmVzIGluICpzdW0KLSAqLwotc3RhdGljIHZvaWQgeGNvcnJfa2VybmVs
X25lb25fZmxvYXRfcHJvY2VzczEoY29uc3QgZmxvYXQzMl90ICp4LAotICAgICAgY29uc3QgZmxv
YXQzMl90ICp5LCBmbG9hdDMyX3QgKnN1bSwgaW50IGxlbikgewotICAgZmxvYXQzMng0X3QgWFhb
NF07Ci0gICBmbG9hdDMyeDRfdCBZWVs0XTsKLSAgIGZsb2F0MzJ4Ml90IFhYXzI7Ci0gICBmbG9h
dDMyeDJfdCBZWV8yOwotICAgZmxvYXQzMng0X3QgU1VNTTsKLSAgIGZsb2F0MzJ4Ml90IFNVTU1f
MlsyXTsKLSAgIGNvbnN0IGZsb2F0MzJfdCAqeGkgPSB4OwotICAgY29uc3QgZmxvYXQzMl90ICp5
aSA9IHk7Ci0KLSAgIFNVTU0gPSB2ZHVwcV9uX2YzMigwKTsKLQotICAgLyogV29yayBvbiAxNiB2
YWx1ZXMgcGVyIGl0ZXJhdGlvbiAqLwotICAgd2hpbGUgKGxlbiA+PSAxNikgewotICAgICAgWFhb
MF0gPSB2bGQxcV9mMzIoeGkpOwotICAgICAgeGkgKz0gNDsKLSAgICAgIFhYWzFdID0gdmxkMXFf
ZjMyKHhpKTsKLSAgICAgIHhpICs9IDQ7Ci0gICAgICBYWFsyXSA9IHZsZDFxX2YzMih4aSk7Ci0g
ICAgICB4aSArPSA0OwotICAgICAgWFhbM10gPSB2bGQxcV9mMzIoeGkpOwotICAgICAgeGkgKz0g
NDsKLQotICAgICAgWVlbMF0gPSB2bGQxcV9mMzIoeWkpOwotICAgICAgeWkgKz0gNDsKLSAgICAg
IFlZWzFdID0gdmxkMXFfZjMyKHlpKTsKLSAgICAgIHlpICs9IDQ7Ci0gICAgICBZWVsyXSA9IHZs
ZDFxX2YzMih5aSk7Ci0gICAgICB5aSArPSA0OwotICAgICAgWVlbM10gPSB2bGQxcV9mMzIoeWkp
OwotICAgICAgeWkgKz0gNDsKLQotICAgICAgU1VNTSA9IHZtbGFxX2YzMihTVU1NLCBZWVswXSwg
WFhbMF0pOwotICAgICAgU1VNTSA9IHZtbGFxX2YzMihTVU1NLCBZWVsxXSwgWFhbMV0pOwotICAg
ICAgU1VNTSA9IHZtbGFxX2YzMihTVU1NLCBZWVsyXSwgWFhbMl0pOwotICAgICAgU1VNTSA9IHZt
bGFxX2YzMihTVU1NLCBZWVszXSwgWFhbM10pOwotICAgICAgbGVuIC09IDE2OwotICAgfQotCi0g
ICAvKiBXb3JrIG9uIDggdmFsdWVzICovCi0gICBpZiAobGVuID49IDgpIHsKLSAgICAgIFhYWzBd
ID0gdmxkMXFfZjMyKHhpKTsKLSAgICAgIHhpICs9IDQ7Ci0gICAgICBYWFsxXSA9IHZsZDFxX2Yz
Mih4aSk7Ci0gICAgICB4aSArPSA0OwotCi0gICAgICBZWVswXSA9IHZsZDFxX2YzMih5aSk7Ci0g
ICAgICB5aSArPSA0OwotICAgICAgWVlbMV0gPSB2bGQxcV9mMzIoeWkpOwotICAgICAgeWkgKz0g
NDsKLQotICAgICAgU1VNTSA9IHZtbGFxX2YzMihTVU1NLCBZWVswXSwgWFhbMF0pOwotICAgICAg
U1VNTSA9IHZtbGFxX2YzMihTVU1NLCBZWVsxXSwgWFhbMV0pOwotICAgICAgbGVuIC09IDg7Ci0g
ICB9Ci0KLSAgIC8qIFdvcmsgb24gNCB2YWx1ZXMgKi8KLSAgIGlmIChsZW4gPj0gNCkgewotICAg
ICAgWFhbMF0gPSB2bGQxcV9mMzIoeGkpOwotICAgICAgeGkgKz0gNDsKLSAgICAgIFlZWzBdID0g
dmxkMXFfZjMyKHlpKTsKLSAgICAgIHlpICs9IDQ7Ci0gICAgICBTVU1NID0gdm1sYXFfZjMyKFNV
TU0sIFlZWzBdLCBYWFswXSk7Ci0gICAgICBsZW4gLT0gNDsKLSAgIH0KLQotICAgLyogU3RhcnQg
YWNjdW11bGF0aW5nIHJlc3VsdHMgKi8KLSAgIFNVTU1fMlswXSA9IHZnZXRfbG93X2YzMihTVU1N
KTsKLSAgIGlmIChsZW4gPj0gMikgewotICAgICAgLyogV2hpbGUgYXQgaXQsIGNvbnN1bWUgMiBt
b3JlIHZhbHVlcyBpZiBhdmFpbGFibGUgKi8KLSAgICAgIFhYXzIgPSB2bGQxX2YzMih4aSk7Ci0g
ICAgICB4aSArPSAyOwotICAgICAgWVlfMiA9IHZsZDFfZjMyKHlpKTsKLSAgICAgIHlpICs9IDI7
Ci0gICAgICBTVU1NXzJbMF0gPSB2bWxhX2YzMihTVU1NXzJbMF0sIFlZXzIsIFhYXzIpOwotICAg
ICAgbGVuIC09IDI7Ci0gICB9Ci0gICBTVU1NXzJbMV0gPSB2Z2V0X2hpZ2hfZjMyKFNVTU0pOwot
ICAgU1VNTV8yWzBdID0gdmFkZF9mMzIoU1VNTV8yWzBdLCBTVU1NXzJbMV0pOwotICAgU1VNTV8y
WzBdID0gdnBhZGRfZjMyKFNVTU1fMlswXSwgU1VNTV8yWzBdKTsKLSAgIC8qIE9rLCBub3cgd2Ug
aGF2ZSByZXN1bHQgYWNjdW11bGF0ZWQgaW4gU1VNTV8yWzBdLjAgKi8KLQotICAgaWYgKGxlbiA+
IDApIHsKLSAgICAgIC8qIENhc2Ugd2hlbiB5b3UgaGF2ZSBvbmUgdmFsdWUgbGVmdCAqLwotICAg
ICAgWFhfMiA9IHZsZDFfZHVwX2YzMih4aSk7Ci0gICAgICBZWV8yID0gdmxkMV9kdXBfZjMyKHlp
KTsKLSAgICAgIFNVTU1fMlswXSA9IHZtbGFfZjMyKFNVTU1fMlswXSwgWFhfMiwgWVlfMik7Ci0g
ICB9Ci0KLSAgIHZzdDFfbGFuZV9mMzIoc3VtLCBTVU1NXzJbMF0sIDApOwotfQotCiB2b2lkIGNl
bHRfcGl0Y2hfeGNvcnJfZmxvYXRfbmVvbihjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1
c192YWwxNiAqX3ksCi0gICAgICAgICAgICAgICAgICAgICAgICBvcHVzX3ZhbDMyICp4Y29yciwg
aW50IGxlbiwgaW50IG1heF9waXRjaCkgeworICAgICAgICAgICAgICAgICAgICAgICAgb3B1c192
YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gsIGludCBhcmNoKSB7CiAgICBpbnQg
aTsKKyAgICh2b2lkKWFyY2g7CiAgICBjZWx0X2Fzc2VydChtYXhfcGl0Y2ggPiAwKTsKICAgIGNl
bHRfYXNzZXJ0KCgoKHVuc2lnbmVkIGNoYXIgKilfeC0odW5zaWduZWQgY2hhciAqKU5VTEwpJjMp
PT0wKTsKIApAQCAtMzAwLDEyICsyMDMsOSBAQCB2b2lkIGNlbHRfcGl0Y2hfeGNvcnJfZmxvYXRf
bmVvbihjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCiAgICAgICAg
ICAgICAoZmxvYXQzMl90ICopeGNvcnIraSwgbGVuKTsKICAgIH0KIAotICAgLyogSW4gY2FzZSBt
YXhfcGl0Y2ggaXNuJ3QgbXVsdGlwbGUgb2YgNAotICAgICogY29tcHV0ZSBzaW5nbGUgY29ycmVs
YXRpb24gdmFsdWUgcGVyIGl0ZXJhdGlvbgotICAgICovCisgICAvKiBJbiBjYXNlIG1heF9waXRj
aCBpc24ndCBhIG11bHRpcGxlIG9mIDQsIGRvIG5vbi11bnJvbGxlZCB2ZXJzaW9uLiAqLwogICAg
Zm9yICg7IGkgPCBtYXhfcGl0Y2g7IGkrKykgewotICAgICAgeGNvcnJfa2VybmVsX25lb25fZmxv
YXRfcHJvY2VzczEoKGNvbnN0IGZsb2F0MzJfdCAqKV94LAotICAgICAgICAgICAgKGNvbnN0IGZs
b2F0MzJfdCAqKV95K2ksIChmbG9hdDMyX3QgKil4Y29ycitpLCBsZW4pOworICAgICAgeGNvcnJb
aV0gPSBjZWx0X2lubmVyX3Byb2RfbmVvbihfeCwgX3kraSwgbGVuKTsKICAgIH0KIH0KICNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0X3BpdGNoX3hjb3JyX2FybS5zIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9j
ZWx0X3BpdGNoX3hjb3JyX2FybS5zCmluZGV4IGY5NmUwYTg4YmJlNjA5ZWQ2MzhiMWE0NGI2N2U5
MDM4YTNlZDM0NDcuLjZlODczYWZjMzcxMjcyNGZlZDgzNzM0YjRiM2NlODE4NGUxOTE5ZjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9hcm0vY2VsdF9waXRjaF94Y29ycl9hcm0ucworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2Nl
bHRfcGl0Y2hfeGNvcnJfYXJtLnMKQEAgLTE1Myw3ICsxNTMsNyBAQCB4Y29ycl9rZXJuZWxfbmVv
bl9wcm9jZXNzMQogICBFTkRQCiAKIDsgb3B1c192YWwzMiBjZWx0X3BpdGNoX3hjb3JyX25lb24o
b3B1c192YWwxNiAqX3gsIG9wdXNfdmFsMTYgKl95LAotOyAgb3B1c192YWwzMiAqeGNvcnIsIGlu
dCBsZW4sIGludCBtYXhfcGl0Y2gpCis7ICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50
IG1heF9waXRjaCwgaW50IGFyY2gpCiBjZWx0X3BpdGNoX3hjb3JyX25lb24gUFJPQwogICA7IGlu
cHV0OgogICA7ICAgcjAgID0gb3B1c192YWwxNiAqX3gKQEAgLTE2OCw2ICsxNjgsOCBAQCBjZWx0
X3BpdGNoX3hjb3JyX25lb24gUFJPQwogICA7ICAgcjYgID0gaW50ICAgICAgICAgbWF4X3BpdGNo
CiAgIDsgICByMTIgPSBpbnQgICAgICAgICBqCiAgIDsgICBxMTUgPSBpbnQgICAgICAgICBtYXhj
b3JyWzRdIChxMTUgaXMgbm90IHVzZWQgYnkgeGNvcnJfa2VybmVsX25lb24oKSkKKyAgOyBpZ25v
cmVkOgorICA7ICAgICAgICAgaW50ICAgICAgICAgYXJjaAogICBTVE1GRCAgICAgICAgc3AhLCB7
cjQtcjYsIGxyfQogICBMRFIgICAgICAgICAgcjYsIFtzcCwgIzE2XQogICBWTU9WLlMzMiAgICAg
cTE1LCAjMQpAQCAtMzU4LDYgKzM2MCw4IEBAIGNlbHRfcGl0Y2hfeGNvcnJfZWRzcCBQUk9DCiAg
IDsgICByOSAgPSBvcHVzX3ZhbDMyICBzdW0zCiAgIDsgICByMSAgPSBpbnQgICAgICAgICBtYXhf
cGl0Y2gKICAgOyAgIHIxMiA9IGludCAgICAgICAgIGoKKyAgOyBpZ25vcmVkOgorICA7ICAgICAg
ICAgaW50ICAgICAgICAgYXJjaAogICBTVE1GRCAgICAgICAgc3AhLCB7cjQtcjExLCBscn0KICAg
TU9WICAgICAgICAgIHI1LCByMQogICBMRFIgICAgICAgICAgcjEsIFtzcCwgIzM2XQpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L2FybS9mZnRfYXJtLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZmdF9hcm0uaAppbmRleCAwY2I1NWQ4
ZTIyZDJiODdlNjljMGU1NTgwNmRhNDllNThhNThkZmQ0Li4wYjc4MTc1ZjNhOWFhNjMyMDQ1ZjEz
ZmFmYjIwZDRlOTE3OTlkMmI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZmdF9hcm0uaAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvYXJtL2ZmdF9hcm0uaApAQCAtMzQsNyArMzQsNiBAQAogI2lmICFkZWZpbmVkKEZGVF9BUk1f
SCkKICNkZWZpbmUgRkZUX0FSTV9ICiAKLSNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJr
aXNzX2ZmdC5oIgogCiAjaWYgZGVmaW5lZChIQVZFX0FSTV9ORTEwKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L2FybS9maXhlZF9hcm12NC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9maXhlZF9hcm12NC5oCmluZGV4IGVmYjNiMTg5
NmE4NjZiMWQ1ZWM4NjFmZWRiYjMzNDU3NWE0NjRjNGQuLmQ4NDg4OGE3NzJhY2Y5Yjg1MzRiOGUw
MzBmMjA0MTg5ZGZmZTc0OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vZml4ZWRfYXJtdjQuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvYXJtL2ZpeGVkX2FybXY0LmgKQEAgLTM3LDcgKzM3LDcgQEAgc3RhdGljIE9QVVNfSU5M
SU5FIG9wdXNfdmFsMzIgTVVMVDE2XzMyX1ExNl9hcm12NChvcHVzX3ZhbDE2IGEsIG9wdXNfdmFs
MzIgYikKICAgICAgICIjTVVMVDE2XzMyX1ExNlxuXHQiCiAgICAgICAic211bGwgJTAsICUxLCAl
MiwgJTNcblx0IgogICAgICAgOiAiPSZyIihyZF9sbyksICI9JnIiKHJkX2hpKQotICAgICAgOiAi
JXIiKGIpLCJyIihhPDwxNikKKyAgICAgIDogIiVyIihiKSwiciIoU0hMMzIoYSwxNikpCiAgICk7
CiAgIHJldHVybiByZF9oaTsKIH0KQEAgLTU0LDEwICs1NCwxMCBAQCBzdGF0aWMgT1BVU19JTkxJ
TkUgb3B1c192YWwzMiBNVUxUMTZfMzJfUTE1X2FybXY0KG9wdXNfdmFsMTYgYSwgb3B1c192YWwz
MiBiKQogICAgICAgIiNNVUxUMTZfMzJfUTE1XG5cdCIKICAgICAgICJzbXVsbCAlMCwgJTEsICUy
LCAlM1xuXHQiCiAgICAgICA6ICI9JnIiKHJkX2xvKSwgIj0mciIocmRfaGkpCi0gICAgICA6ICIl
ciIoYiksICJyIihhPDwxNikKKyAgICAgIDogIiVyIihiKSwgInIiKFNITDMyKGEsMTYpKQogICAp
OwogICAvKldlIGludGVudGlvbmFsbHkgZG9uJ3QgT1IgaW4gdGhlIGhpZ2ggYml0IG9mIHJkX2xv
IGZvciBzcGVlZC4qLwotICByZXR1cm4gcmRfaGk8PDE7CisgIHJldHVybiBTSEwzMihyZF9oaSwx
KTsKIH0KICNkZWZpbmUgTVVMVDE2XzMyX1ExNShhLCBiKSAoTVVMVDE2XzMyX1ExNV9hcm12NChh
LCBiKSkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9maXhlZF9hcm12NWUuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vZml4
ZWRfYXJtdjVlLmgKaW5kZXggMzZhNjMyMTEwMTM1N2U0NDdkMjk5ZDM3ZDJhNTVkNzUxYzMwZDkw
OS4uNmJmNzNjYmFjZTM0NmJmM2MyODg3ZDIzOTliNTA4YjZiOGJhNWQ3NyAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L2FybS9maXhlZF9hcm12NWUuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZpeGVkX2FybXY1ZS5oCkBAIC01
OSw3ICs1OSw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX3ZhbDMyIE1VTFQxNl8zMl9RMTVf
YXJtdjVlKG9wdXNfdmFsMTYgYSwgb3B1c192YWwzMiBiKQogICAgICAgOiAiPXIiKHJlcykKICAg
ICAgIDogInIiKGIpLCAiciIoYSkKICAgKTsKLSAgcmV0dXJuIHJlczw8MTsKKyAgcmV0dXJuIFNI
TDMyKHJlcywxKTsKIH0KICNkZWZpbmUgTVVMVDE2XzMyX1ExNShhLCBiKSAoTVVMVDE2XzMyX1Ex
NV9hcm12NWUoYSwgYikpCiAKQEAgLTc2LDcgKzc2LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9w
dXNfdmFsMzIgTUFDMTZfMzJfUTE1X2FybXY1ZShvcHVzX3ZhbDMyIGMsIG9wdXNfdmFsMTYgYSwK
ICAgICAgICIjTUFDMTZfMzJfUTE1XG5cdCIKICAgICAgICJzbWxhd2IgJTAsICUxLCAlMiwgJTM7
XG4iCiAgICAgICA6ICI9ciIocmVzKQotICAgICAgOiAiciIoYjw8MSksICJyIihhKSwgInIiKGMp
CisgICAgICA6ICJyIihTSEwzMihiLDEpKSwgInIiKGEpLCAiciIoYykKICAgKTsKICAgcmV0dXJu
IHJlczsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vbWRjdF9hcm0uaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vbWRjdF9h
cm0uaAppbmRleCA0OWNiYjQ0NTc2MDI4OTFlNGMzMDZiNTdkN2EwOTk3OTQ1MmQ0ZmMyLi4xNDIw
MGJhYzRiMzQ2M2M2ZTcyMmVjZjJhMjFlOThjOWZkYTMzZDA5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJt
L21kY3RfYXJtLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9tZGN0X2FybS5oCkBAIC0zMyw3ICszMyw2IEBACiAj
aWYgIWRlZmluZWQoTURDVF9BUk1fSCkKICNkZWZpbmUgTURDVF9BUk1fSAogCi0jaW5jbHVkZSAi
Y29uZmlnLmgiCiAjaW5jbHVkZSAibWRjdC5oIgogCiAjaWYgZGVmaW5lZChIQVZFX0FSTV9ORTEw
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9waXRjaF9hcm0uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vcGl0Y2hfYXJtLmgK
aW5kZXggMTQzMzExNjllZWI3YjI3YTVhZGIzMTUyYjFiYzgxM2YzYWZkMjQyMS4uYmVkOGIwNGVh
YzExZmM2ZWQ3NzlmY2E5N2QwNGI0ZDJkMDFlNGI1MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9waXRj
aF9hcm0uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvYXJtL3BpdGNoX2FybS5oCkBAIC0zMCwxMSArMzAsNDcgQEAKIAog
IyBpbmNsdWRlICJhcm1jcHUuaCIKIAorIyBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05F
T05fSU5UUikKK29wdXNfdmFsMzIgY2VsdF9pbm5lcl9wcm9kX25lb24oY29uc3Qgb3B1c192YWwx
NiAqeCwgY29uc3Qgb3B1c192YWwxNiAqeSwgaW50IE4pOwordm9pZCBkdWFsX2lubmVyX3Byb2Rf
bmVvbihjb25zdCBvcHVzX3ZhbDE2ICp4LCBjb25zdCBvcHVzX3ZhbDE2ICp5MDEsCisgICAgICAg
IGNvbnN0IG9wdXNfdmFsMTYgKnkwMiwgaW50IE4sIG9wdXNfdmFsMzIgKnh5MSwgb3B1c192YWwz
MiAqeHkyKTsKKworIyAgaWYgIWRlZmluZWQoT1BVU19IQVZFX1JUQ0QpICYmIGRlZmluZWQoT1BV
U19BUk1fUFJFU1VNRV9ORU9OKQorIyAgIGRlZmluZSBPVkVSUklERV9DRUxUX0lOTkVSX1BST0Qg
KDEpCisjICAgZGVmaW5lIE9WRVJSSURFX0RVQUxfSU5ORVJfUFJPRCAoMSkKKyMgICBkZWZpbmUg
Y2VsdF9pbm5lcl9wcm9kKHgsIHksIE4sIGFyY2gpICgodm9pZCkoYXJjaCksIFBSRVNVTUVfTkVP
TihjZWx0X2lubmVyX3Byb2QpKHgsIHksIE4pKQorIyAgIGRlZmluZSBkdWFsX2lubmVyX3Byb2Qo
eCwgeTAxLCB5MDIsIE4sIHh5MSwgeHkyLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBQUkVTVU1FX05F
T04oZHVhbF9pbm5lcl9wcm9kKSh4LCB5MDEsIHkwMiwgTiwgeHkxLCB4eTIpKQorIyAgZW5kaWYK
KyMgZW5kaWYKKworIyBpZiAhZGVmaW5lZChPVkVSUklERV9DRUxUX0lOTkVSX1BST0QpCisjICBp
ZiBkZWZpbmVkKE9QVVNfSEFWRV9SVENEKSAmJiAoZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9O
RU9OX0lOVFIpICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKSkKK2V4dGVy
biBvcHVzX3ZhbDMyICgqY29uc3QgQ0VMVF9JTk5FUl9QUk9EX0lNUExbT1BVU19BUkNITUFTSysx
XSkoY29uc3Qgb3B1c192YWwxNiAqeCwgY29uc3Qgb3B1c192YWwxNiAqeSwgaW50IE4pOworIyAg
IGRlZmluZSBPVkVSUklERV9DRUxUX0lOTkVSX1BST0QgKDEpCisjICAgZGVmaW5lIGNlbHRfaW5u
ZXJfcHJvZCh4LCB5LCBOLCBhcmNoKSAoKCpDRUxUX0lOTkVSX1BST0RfSU1QTFsoYXJjaCkmT1BV
U19BUkNITUFTS10pKHgsIHksIE4pKQorIyAgZWxpZiBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVf
TkVPTl9JTlRSKQorIyAgIGRlZmluZSBPVkVSUklERV9DRUxUX0lOTkVSX1BST0QgKDEpCisjICAg
ZGVmaW5lIGNlbHRfaW5uZXJfcHJvZCh4LCB5LCBOLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBjZWx0
X2lubmVyX3Byb2RfbmVvbih4LCB5LCBOKSkKKyMgIGVuZGlmCisjIGVuZGlmCisKKyMgaWYgIWRl
ZmluZWQoT1ZFUlJJREVfRFVBTF9JTk5FUl9QUk9EKQorIyAgaWYgZGVmaW5lZChPUFVTX0hBVkVf
UlRDRCkgJiYgKGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSAmJiAhZGVmaW5l
ZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikpCitleHRlcm4gdm9pZCAoKmNvbnN0IERVQUxf
SU5ORVJfUFJPRF9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNfdmFsMTYgKngsCisg
ICAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKnkwMSwgY29uc3Qgb3B1c192YWwxNiAqeTAyLCBpbnQg
Tiwgb3B1c192YWwzMiAqeHkxLCBvcHVzX3ZhbDMyICp4eTIpOworIyAgIGRlZmluZSBPVkVSUklE
RV9EVUFMX0lOTkVSX1BST0QgKDEpCisjICAgZGVmaW5lIGR1YWxfaW5uZXJfcHJvZCh4LCB5MDEs
IHkwMiwgTiwgeHkxLCB4eTIsIGFyY2gpICgoKkRVQUxfSU5ORVJfUFJPRF9JTVBMWyhhcmNoKSZP
UFVTX0FSQ0hNQVNLXSkoeCwgeTAxLCB5MDIsIE4sIHh5MSwgeHkyKSkKKyMgIGVsaWYgZGVmaW5l
ZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikKKyMgICBkZWZpbmUgT1ZFUlJJREVfRFVBTF9J
Tk5FUl9QUk9EICgxKQorIyAgIGRlZmluZSBkdWFsX2lubmVyX3Byb2QoeCwgeTAxLCB5MDIsIE4s
IHh5MSwgeHkyLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBkdWFsX2lubmVyX3Byb2RfbmVvbih4LCB5
MDEsIHkwMiwgTiwgeHkxLCB4eTIpKQorIyAgZW5kaWYKKyMgZW5kaWYKKwogIyBpZiBkZWZpbmVk
KEZJWEVEX1BPSU5UKQogCiAjICBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT04pCiBv
cHVzX3ZhbDMyIGNlbHRfcGl0Y2hfeGNvcnJfbmVvbihjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29u
c3Qgb3B1c192YWwxNiAqX3ksCi0gICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBt
YXhfcGl0Y2gpOworICAgIG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3BpdGNo
LCBpbnQgYXJjaCk7CiAjICBlbmRpZgogCiAjICBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZF
X01FRElBKQpAQCAtNDMsNyArNzksNyBAQCBvcHVzX3ZhbDMyIGNlbHRfcGl0Y2hfeGNvcnJfbmVv
bihjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCiAKICMgIGlmIGRl
ZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfRURTUCkKIG9wdXNfdmFsMzIgY2VsdF9waXRjaF94Y29y
cl9lZHNwKGNvbnN0IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKLSAgICBv
cHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCk7CisgICAgb3B1c192YWwz
MiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gsIGludCBhcmNoKTsKICMgIGVuZGlmCiAK
ICMgIGlmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpICYmIFwKQEAgLTUyLDE4ICs4OCwxNyBAQCBv
cHVzX3ZhbDMyIGNlbHRfcGl0Y2hfeGNvcnJfZWRzcChjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29u
c3Qgb3B1c192YWwxNiAqX3ksCiAgICAgIChkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX0VEU1Ap
ICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfRURTUCkpKQogZXh0ZXJuIG9wdXNfdmFsMzIK
ICgqY29uc3QgQ0VMVF9QSVRDSF9YQ09SUl9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9w
dXNfdmFsMTYgKiwKLSAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQs
IGludCk7CisgICAgICBjb25zdCBvcHVzX3ZhbDE2ICosIG9wdXNfdmFsMzIgKiwgaW50LCBpbnQs
IGludCk7CiAjICAgZGVmaW5lIE9WRVJSSURFX1BJVENIX1hDT1JSICgxKQogIyAgIGRlZmluZSBj
ZWx0X3BpdGNoX3hjb3JyKF94LCBfeSwgeGNvcnIsIGxlbiwgbWF4X3BpdGNoLCBhcmNoKSBcCiAg
ICgoKkNFTFRfUElUQ0hfWENPUlJfSU1QTFsoYXJjaCkmT1BVU19BUkNITUFTS10pKF94LCBfeSwg
XAotICAgICAgICB4Y29yciwgbGVuLCBtYXhfcGl0Y2gpKQorICAgICAgICB4Y29yciwgbGVuLCBt
YXhfcGl0Y2gsIGFyY2gpKQogCiAjICBlbGlmIGRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9FRFNQ
KSB8fCBcCiAgICAgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX01FRElBKSB8fCBcCiAgICAgZGVm
aW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT04pCiAjICAgZGVmaW5lIE9WRVJSSURFX1BJVENIX1hD
T1JSICgxKQotIyAgIGRlZmluZSBjZWx0X3BpdGNoX3hjb3JyKF94LCBfeSwgeGNvcnIsIGxlbiwg
bWF4X3BpdGNoLCBhcmNoKSBcCi0gICgodm9pZCkoYXJjaCksUFJFU1VNRV9ORU9OKGNlbHRfcGl0
Y2hfeGNvcnIpKF94LCBfeSwgeGNvcnIsIGxlbiwgbWF4X3BpdGNoKSkKKyMgICBkZWZpbmUgY2Vs
dF9waXRjaF94Y29yciAoUFJFU1VNRV9ORU9OKGNlbHRfcGl0Y2hfeGNvcnIpKQogCiAjICBlbmRp
ZgogCkBAIC05OSwyNSArMTM0LDI0IEBAIGV4dGVybiB2b2lkICgqY29uc3QgWENPUlJfS0VSTkVM
X0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKIC8qIEZsb2F0IGNhc2UgKi8KICNpZiBkZWZpbmVk
KE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikKIHZvaWQgY2VsdF9waXRjaF94Y29ycl9mbG9h
dF9uZW9uKGNvbnN0IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBp
bnQgbWF4X3BpdGNoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdXNfdmFs
MzIgKnhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3BpdGNoLCBpbnQgYXJjaCk7CiAjZW5kaWYKIAog
IyAgaWYgZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgXAogICAgIChkZWZpbmVkKE9QVVNfQVJN
X01BWV9IQVZFX05FT05fSU5UUikgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lO
VFIpKQogZXh0ZXJuIHZvaWQKICgqY29uc3QgQ0VMVF9QSVRDSF9YQ09SUl9JTVBMW09QVVNfQVJD
SE1BU0srMV0pKGNvbnN0IG9wdXNfdmFsMTYgKiwKLSAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKiwg
b3B1c192YWwzMiAqLCBpbnQsIGludCk7CisgICAgICBjb25zdCBvcHVzX3ZhbDE2ICosIG9wdXNf
dmFsMzIgKiwgaW50LCBpbnQsIGludCk7CiAKICMgIGRlZmluZSBPVkVSUklERV9QSVRDSF9YQ09S
UiAoMSkKICMgIGRlZmluZSBjZWx0X3BpdGNoX3hjb3JyKF94LCBfeSwgeGNvcnIsIGxlbiwgbWF4
X3BpdGNoLCBhcmNoKSBcCiAgICgoKkNFTFRfUElUQ0hfWENPUlJfSU1QTFsoYXJjaCkmT1BVU19B
UkNITUFTS10pKF94LCBfeSwgXAotICAgICAgICB4Y29yciwgbGVuLCBtYXhfcGl0Y2gpKQorICAg
ICAgICB4Y29yciwgbGVuLCBtYXhfcGl0Y2gsIGFyY2gpKQogCiAjICBlbGlmIGRlZmluZWQoT1BV
U19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpCiAKICMgICBkZWZpbmUgT1ZFUlJJREVfUElUQ0hfWENP
UlIgKDEpCi0jICAgZGVmaW5lIGNlbHRfcGl0Y2hfeGNvcnIoX3gsIF95LCB4Y29yciwgbGVuLCBt
YXhfcGl0Y2gsIGFyY2gpIFwKLSAgICgodm9pZCkoYXJjaCksY2VsdF9waXRjaF94Y29ycl9mbG9h
dF9uZW9uKF94LCBfeSwgeGNvcnIsIGxlbiwgbWF4X3BpdGNoKSkKKyMgICBkZWZpbmUgY2VsdF9w
aXRjaF94Y29yciBjZWx0X3BpdGNoX3hjb3JyX2Zsb2F0X25lb24KIAogIyAgZW5kaWYKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L2FybS9waXRjaF9uZW9uX2ludHIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vcGl0Y2hfbmVvbl9p
bnRyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMWFjMzhjNDMzYThhNzg1NTM1Zjk1ZjkzYWVmY2UxZDQzNjEzZmE4
MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vcGl0Y2hfbmVvbl9pbnRyLmMKQEAgLTAsMCAr
MSwyOTAgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKgorQ29weXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMu
CitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworYXJlIG1ldDoKKy0gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAordGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKK25vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKK2RvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCistIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJu
ZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCituYW1lcyBvZiBzcGVjaWZp
YyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVj
dHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0
dGVuCitwZXJtaXNzaW9uLgorVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJ
R0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCitBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRQorQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFCitMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCitDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCitJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFCitQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
LworCisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisK
KyNpbmNsdWRlIDxhcm1fbmVvbi5oPgorI2luY2x1ZGUgInBpdGNoLmgiCisKKyNpZmRlZiBGSVhF
RF9QT0lOVAorCitvcHVzX3ZhbDMyIGNlbHRfaW5uZXJfcHJvZF9uZW9uKGNvbnN0IG9wdXNfdmFs
MTYgKngsIGNvbnN0IG9wdXNfdmFsMTYgKnksIGludCBOKQoreworICAgIGludCBpOworICAgIG9w
dXNfdmFsMzIgeHk7CisgICAgaW50MTZ4OF90IHhfczE2eDgsIHlfczE2eDg7CisgICAgaW50MzJ4
NF90IHh5X3MzMng0ID0gdmR1cHFfbl9zMzIoMCk7CisgICAgaW50NjR4Ml90IHh5X3M2NHgyOwor
ICAgIGludDY0eDFfdCB4eV9zNjR4MTsKKworICAgIGZvciAoaSA9IDA7IGkgPCBOIC0gNzsgaSAr
PSA4KSB7CisgICAgICAgIHhfczE2eDggID0gdmxkMXFfczE2KCZ4W2ldKTsKKyAgICAgICAgeV9z
MTZ4OCAgPSB2bGQxcV9zMTYoJnlbaV0pOworICAgICAgICB4eV9zMzJ4NCA9IHZtbGFsX3MxNih4
eV9zMzJ4NCwgdmdldF9sb3dfczE2ICh4X3MxNng4KSwgdmdldF9sb3dfczE2ICh5X3MxNng4KSk7
CisgICAgICAgIHh5X3MzMng0ID0gdm1sYWxfczE2KHh5X3MzMng0LCB2Z2V0X2hpZ2hfczE2KHhf
czE2eDgpLCB2Z2V0X2hpZ2hfczE2KHlfczE2eDgpKTsKKyAgICB9CisKKyAgICBpZiAoTiAtIGkg
Pj0gNCkgeworICAgICAgICBjb25zdCBpbnQxNng0X3QgeF9zMTZ4NCA9IHZsZDFfczE2KCZ4W2ld
KTsKKyAgICAgICAgY29uc3QgaW50MTZ4NF90IHlfczE2eDQgPSB2bGQxX3MxNigmeVtpXSk7Cisg
ICAgICAgIHh5X3MzMng0ID0gdm1sYWxfczE2KHh5X3MzMng0LCB4X3MxNng0LCB5X3MxNng0KTsK
KyAgICAgICAgaSArPSA0OworICAgIH0KKworICAgIHh5X3M2NHgyID0gdnBhZGRscV9zMzIoeHlf
czMyeDQpOworICAgIHh5X3M2NHgxID0gdmFkZF9zNjQodmdldF9sb3dfczY0KHh5X3M2NHgyKSwg
dmdldF9oaWdoX3M2NCh4eV9zNjR4MikpOworICAgIHh5ICAgICAgID0gdmdldF9sYW5lX3MzMih2
cmVpbnRlcnByZXRfczMyX3M2NCh4eV9zNjR4MSksIDApOworCisgICAgZm9yICg7IGkgPCBOOyBp
KyspIHsKKyAgICAgICAgeHkgPSBNQUMxNl8xNih4eSwgeFtpXSwgeVtpXSk7CisgICAgfQorCisj
aWZkZWYgT1BVU19DSEVDS19BU00KKyAgICBjZWx0X2Fzc2VydChjZWx0X2lubmVyX3Byb2RfYyh4
LCB5LCBOKSA9PSB4eSk7CisjZW5kaWYKKworICAgIHJldHVybiB4eTsKK30KKwordm9pZCBkdWFs
X2lubmVyX3Byb2RfbmVvbihjb25zdCBvcHVzX3ZhbDE2ICp4LCBjb25zdCBvcHVzX3ZhbDE2ICp5
MDEsIGNvbnN0IG9wdXNfdmFsMTYgKnkwMiwKKyAgICAgICAgaW50IE4sIG9wdXNfdmFsMzIgKnh5
MSwgb3B1c192YWwzMiAqeHkyKQoreworICAgIGludCBpOworICAgIG9wdXNfdmFsMzIgeHkwMSwg
eHkwMjsKKyAgICBpbnQxNng4X3QgeF9zMTZ4OCwgeTAxX3MxNng4LCB5MDJfczE2eDg7CisgICAg
aW50MzJ4NF90IHh5MDFfczMyeDQgPSB2ZHVwcV9uX3MzMigwKTsKKyAgICBpbnQzMng0X3QgeHkw
Ml9zMzJ4NCA9IHZkdXBxX25fczMyKDApOworICAgIGludDY0eDJfdCB4eTAxX3M2NHgyLCB4eTAy
X3M2NHgyOworICAgIGludDY0eDFfdCB4eTAxX3M2NHgxLCB4eTAyX3M2NHgxOworCisgICAgZm9y
IChpID0gMDsgaSA8IE4gLSA3OyBpICs9IDgpIHsKKyAgICAgICAgeF9zMTZ4OCAgICA9IHZsZDFx
X3MxNigmeFtpXSk7CisgICAgICAgIHkwMV9zMTZ4OCAgPSB2bGQxcV9zMTYoJnkwMVtpXSk7Cisg
ICAgICAgIHkwMl9zMTZ4OCAgPSB2bGQxcV9zMTYoJnkwMltpXSk7CisgICAgICAgIHh5MDFfczMy
eDQgPSB2bWxhbF9zMTYoeHkwMV9zMzJ4NCwgdmdldF9sb3dfczE2ICh4X3MxNng4KSwgdmdldF9s
b3dfczE2ICh5MDFfczE2eDgpKTsKKyAgICAgICAgeHkwMl9zMzJ4NCA9IHZtbGFsX3MxNih4eTAy
X3MzMng0LCB2Z2V0X2xvd19zMTYgKHhfczE2eDgpLCB2Z2V0X2xvd19zMTYgKHkwMl9zMTZ4OCkp
OworICAgICAgICB4eTAxX3MzMng0ID0gdm1sYWxfczE2KHh5MDFfczMyeDQsIHZnZXRfaGlnaF9z
MTYoeF9zMTZ4OCksIHZnZXRfaGlnaF9zMTYoeTAxX3MxNng4KSk7CisgICAgICAgIHh5MDJfczMy
eDQgPSB2bWxhbF9zMTYoeHkwMl9zMzJ4NCwgdmdldF9oaWdoX3MxNih4X3MxNng4KSwgdmdldF9o
aWdoX3MxNih5MDJfczE2eDgpKTsKKyAgICB9CisKKyAgICBpZiAoTiAtIGkgPj0gNCkgeworICAg
ICAgICBjb25zdCBpbnQxNng0X3QgeF9zMTZ4NCAgID0gdmxkMV9zMTYoJnhbaV0pOworICAgICAg
ICBjb25zdCBpbnQxNng0X3QgeTAxX3MxNng0ID0gdmxkMV9zMTYoJnkwMVtpXSk7CisgICAgICAg
IGNvbnN0IGludDE2eDRfdCB5MDJfczE2eDQgPSB2bGQxX3MxNigmeTAyW2ldKTsKKyAgICAgICAg
eHkwMV9zMzJ4NCA9IHZtbGFsX3MxNih4eTAxX3MzMng0LCB4X3MxNng0LCB5MDFfczE2eDQpOwor
ICAgICAgICB4eTAyX3MzMng0ID0gdm1sYWxfczE2KHh5MDJfczMyeDQsIHhfczE2eDQsIHkwMl9z
MTZ4NCk7CisgICAgICAgIGkgKz0gNDsKKyAgICB9CisKKyAgICB4eTAxX3M2NHgyID0gdnBhZGRs
cV9zMzIoeHkwMV9zMzJ4NCk7CisgICAgeHkwMl9zNjR4MiA9IHZwYWRkbHFfczMyKHh5MDJfczMy
eDQpOworICAgIHh5MDFfczY0eDEgPSB2YWRkX3M2NCh2Z2V0X2xvd19zNjQoeHkwMV9zNjR4Miks
IHZnZXRfaGlnaF9zNjQoeHkwMV9zNjR4MikpOworICAgIHh5MDJfczY0eDEgPSB2YWRkX3M2NCh2
Z2V0X2xvd19zNjQoeHkwMl9zNjR4MiksIHZnZXRfaGlnaF9zNjQoeHkwMl9zNjR4MikpOworICAg
IHh5MDEgICAgICAgPSB2Z2V0X2xhbmVfczMyKHZyZWludGVycHJldF9zMzJfczY0KHh5MDFfczY0
eDEpLCAwKTsKKyAgICB4eTAyICAgICAgID0gdmdldF9sYW5lX3MzMih2cmVpbnRlcnByZXRfczMy
X3M2NCh4eTAyX3M2NHgxKSwgMCk7CisKKyAgICBmb3IgKDsgaSA8IE47IGkrKykgeworICAgICAg
ICB4eTAxID0gTUFDMTZfMTYoeHkwMSwgeFtpXSwgeTAxW2ldKTsKKyAgICAgICAgeHkwMiA9IE1B
QzE2XzE2KHh5MDIsIHhbaV0sIHkwMltpXSk7CisgICAgfQorICAgICp4eTEgPSB4eTAxOworICAg
ICp4eTIgPSB4eTAyOworCisjaWZkZWYgT1BVU19DSEVDS19BU00KKyAgICB7CisgICAgICAgIG9w
dXNfdmFsMzIgeHkxX2MsIHh5Ml9jOworICAgICAgICBkdWFsX2lubmVyX3Byb2RfYyh4LCB5MDEs
IHkwMiwgTiwgJnh5MV9jLCAmeHkyX2MpOworICAgICAgICBjZWx0X2Fzc2VydCh4eTFfYyA9PSAq
eHkxKTsKKyAgICAgICAgY2VsdF9hc3NlcnQoeHkyX2MgPT0gKnh5Mik7CisgICAgfQorI2VuZGlm
Cit9CisKKyNlbHNlIC8qICFGSVhFRF9QT0lOVCAqLworCisvKiA9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAq
LworCisjaWZkZWYgT1BVU19DSEVDS19BU00KKworLyogVGhpcyBwYXJ0IG9mIGNvZGUgc2ltdWxh
dGVzIGZsb2F0aW5nLXBvaW50IE5FT04gb3BlcmF0aW9ucy4gKi8KKworLyogY2VsdF9pbm5lcl9w
cm9kX25lb25fZmxvYXRfY19zaW11bGF0aW9uKCkgc2ltdWxhdGVzIHRoZSBmbG9hdGluZy1wb2lu
dCAgICovCisvKiBvcGVyYXRpb25zIG9mIGNlbHRfaW5uZXJfcHJvZF9uZW9uKCksIGFuZCBib3Ro
IGZ1bmN0aW9ucyBzaG91bGQgaGF2ZSBiaXQgKi8KKy8qIGV4YWN0IG91dHB1dC4gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworc3Rh
dGljIG9wdXNfdmFsMzIgY2VsdF9pbm5lcl9wcm9kX25lb25fZmxvYXRfY19zaW11bGF0aW9uKGNv
bnN0IG9wdXNfdmFsMTYgKngsIGNvbnN0IG9wdXNfdmFsMTYgKnksIGludCBOKQoreworICAgaW50
IGk7CisgICBvcHVzX3ZhbDMyIHh5LCB4eTAgPSAwLCB4eTEgPSAwLCB4eTIgPSAwLCB4eTMgPSAw
OworICAgZm9yIChpID0gMDsgaSA8IE4gLSAzOyBpICs9IDQpIHsKKyAgICAgIHh5MCA9IE1BQzE2
XzE2KHh5MCwgeFtpICsgMF0sIHlbaSArIDBdKTsKKyAgICAgIHh5MSA9IE1BQzE2XzE2KHh5MSwg
eFtpICsgMV0sIHlbaSArIDFdKTsKKyAgICAgIHh5MiA9IE1BQzE2XzE2KHh5MiwgeFtpICsgMl0s
IHlbaSArIDJdKTsKKyAgICAgIHh5MyA9IE1BQzE2XzE2KHh5MywgeFtpICsgM10sIHlbaSArIDNd
KTsKKyAgIH0KKyAgIHh5MCArPSB4eTI7CisgICB4eTEgKz0geHkzOworICAgeHkgPSB4eTAgKyB4
eTE7CisgICBmb3IgKDsgaSA8IE47IGkrKykgeworICAgICAgeHkgPSBNQUMxNl8xNih4eSwgeFtp
XSwgeVtpXSk7CisgICB9CisgICByZXR1cm4geHk7Cit9CisKKy8qIGR1YWxfaW5uZXJfcHJvZF9u
ZW9uX2Zsb2F0X2Nfc2ltdWxhdGlvbigpIHNpbXVsYXRlcyB0aGUgZmxvYXRpbmctcG9pbnQgICAq
LworLyogb3BlcmF0aW9ucyBvZiBkdWFsX2lubmVyX3Byb2RfbmVvbigpLCBhbmQgYm90aCBmdW5j
dGlvbnMgc2hvdWxkIGhhdmUgYml0ICovCisvKiBleGFjdCBvdXRwdXQuICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KK3N0YXRpYyB2
b2lkIGR1YWxfaW5uZXJfcHJvZF9uZW9uX2Zsb2F0X2Nfc2ltdWxhdGlvbihjb25zdCBvcHVzX3Zh
bDE2ICp4LCBjb25zdCBvcHVzX3ZhbDE2ICp5MDEsIGNvbnN0IG9wdXNfdmFsMTYgKnkwMiwKKyAg
ICAgIGludCBOLCBvcHVzX3ZhbDMyICp4eTEsIG9wdXNfdmFsMzIgKnh5MikKK3sKKyAgIGludCBp
OworICAgb3B1c192YWwzMiB4eTAxLCB4eTAyLCB4eTAxXzAgPSAwLCB4eTAxXzEgPSAwLCB4eTAx
XzIgPSAwLCB4eTAxXzMgPSAwLCB4eTAyXzAgPSAwLCB4eTAyXzEgPSAwLCB4eTAyXzIgPSAwLCB4
eTAyXzMgPSAwOworICAgZm9yIChpID0gMDsgaSA8IE4gLSAzOyBpICs9IDQpIHsKKyAgICAgIHh5
MDFfMCA9IE1BQzE2XzE2KHh5MDFfMCwgeFtpICsgMF0sIHkwMVtpICsgMF0pOworICAgICAgeHkw
MV8xID0gTUFDMTZfMTYoeHkwMV8xLCB4W2kgKyAxXSwgeTAxW2kgKyAxXSk7CisgICAgICB4eTAx
XzIgPSBNQUMxNl8xNih4eTAxXzIsIHhbaSArIDJdLCB5MDFbaSArIDJdKTsKKyAgICAgIHh5MDFf
MyA9IE1BQzE2XzE2KHh5MDFfMywgeFtpICsgM10sIHkwMVtpICsgM10pOworICAgICAgeHkwMl8w
ID0gTUFDMTZfMTYoeHkwMl8wLCB4W2kgKyAwXSwgeTAyW2kgKyAwXSk7CisgICAgICB4eTAyXzEg
PSBNQUMxNl8xNih4eTAyXzEsIHhbaSArIDFdLCB5MDJbaSArIDFdKTsKKyAgICAgIHh5MDJfMiA9
IE1BQzE2XzE2KHh5MDJfMiwgeFtpICsgMl0sIHkwMltpICsgMl0pOworICAgICAgeHkwMl8zID0g
TUFDMTZfMTYoeHkwMl8zLCB4W2kgKyAzXSwgeTAyW2kgKyAzXSk7CisgICB9CisgICB4eTAxXzAg
Kz0geHkwMV8yOworICAgeHkwMl8wICs9IHh5MDJfMjsKKyAgIHh5MDFfMSArPSB4eTAxXzM7Cisg
ICB4eTAyXzEgKz0geHkwMl8zOworICAgeHkwMSA9IHh5MDFfMCArIHh5MDFfMTsKKyAgIHh5MDIg
PSB4eTAyXzAgKyB4eTAyXzE7CisgICBmb3IgKDsgaSA8IE47IGkrKykgeworICAgICAgeHkwMSA9
IE1BQzE2XzE2KHh5MDEsIHhbaV0sIHkwMVtpXSk7CisgICAgICB4eTAyID0gTUFDMTZfMTYoeHkw
MiwgeFtpXSwgeTAyW2ldKTsKKyAgIH0KKyAgICp4eTEgPSB4eTAxOworICAgKnh5MiA9IHh5MDI7
Cit9CisKKyNlbmRpZiAvKiBPUFVTX0NIRUNLX0FTTSAqLworCisvKiA9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PSAqLworCitvcHVzX3ZhbDMyIGNlbHRfaW5uZXJfcHJvZF9uZW9uKGNvbnN0IG9wdXNfdmFsMTYg
KngsIGNvbnN0IG9wdXNfdmFsMTYgKnksIGludCBOKQoreworICAgIGludCBpOworICAgIG9wdXNf
dmFsMzIgeHk7CisgICAgZmxvYXQzMng0X3QgeHlfZjMyeDQgPSB2ZHVwcV9uX2YzMigwKTsKKyAg
ICBmbG9hdDMyeDJfdCB4eV9mMzJ4MjsKKworICAgIGZvciAoaSA9IDA7IGkgPCBOIC0gNzsgaSAr
PSA4KSB7CisgICAgICAgIGZsb2F0MzJ4NF90IHhfZjMyeDQsIHlfZjMyeDQ7CisgICAgICAgIHhf
ZjMyeDQgID0gdmxkMXFfZjMyKCZ4W2ldKTsKKyAgICAgICAgeV9mMzJ4NCAgPSB2bGQxcV9mMzIo
JnlbaV0pOworICAgICAgICB4eV9mMzJ4NCA9IHZtbGFxX2YzMih4eV9mMzJ4NCwgeF9mMzJ4NCwg
eV9mMzJ4NCk7CisgICAgICAgIHhfZjMyeDQgID0gdmxkMXFfZjMyKCZ4W2kgKyA0XSk7CisgICAg
ICAgIHlfZjMyeDQgID0gdmxkMXFfZjMyKCZ5W2kgKyA0XSk7CisgICAgICAgIHh5X2YzMng0ID0g
dm1sYXFfZjMyKHh5X2YzMng0LCB4X2YzMng0LCB5X2YzMng0KTsKKyAgICB9CisKKyAgICBpZiAo
TiAtIGkgPj0gNCkgeworICAgICAgICBjb25zdCBmbG9hdDMyeDRfdCB4X2YzMng0ID0gdmxkMXFf
ZjMyKCZ4W2ldKTsKKyAgICAgICAgY29uc3QgZmxvYXQzMng0X3QgeV9mMzJ4NCA9IHZsZDFxX2Yz
MigmeVtpXSk7CisgICAgICAgIHh5X2YzMng0ID0gdm1sYXFfZjMyKHh5X2YzMng0LCB4X2YzMng0
LCB5X2YzMng0KTsKKyAgICAgICAgaSArPSA0OworICAgIH0KKworICAgIHh5X2YzMngyID0gdmFk
ZF9mMzIodmdldF9sb3dfZjMyKHh5X2YzMng0KSwgdmdldF9oaWdoX2YzMih4eV9mMzJ4NCkpOwor
ICAgIHh5X2YzMngyID0gdnBhZGRfZjMyKHh5X2YzMngyLCB4eV9mMzJ4Mik7CisgICAgeHkgICAg
ICAgPSB2Z2V0X2xhbmVfZjMyKHh5X2YzMngyLCAwKTsKKworICAgIGZvciAoOyBpIDwgTjsgaSsr
KSB7CisgICAgICAgIHh5ID0gTUFDMTZfMTYoeHksIHhbaV0sIHlbaV0pOworICAgIH0KKworI2lm
ZGVmIE9QVVNfQ0hFQ0tfQVNNCisgICAgY2VsdF9hc3NlcnQoQUJTMzIoY2VsdF9pbm5lcl9wcm9k
X25lb25fZmxvYXRfY19zaW11bGF0aW9uKHgsIHksIE4pIC0geHkpIDw9IFZFUllfU01BTEwpOwor
I2VuZGlmCisKKyAgICByZXR1cm4geHk7Cit9CisKK3ZvaWQgZHVhbF9pbm5lcl9wcm9kX25lb24o
Y29uc3Qgb3B1c192YWwxNiAqeCwgY29uc3Qgb3B1c192YWwxNiAqeTAxLCBjb25zdCBvcHVzX3Zh
bDE2ICp5MDIsCisgICAgICAgIGludCBOLCBvcHVzX3ZhbDMyICp4eTEsIG9wdXNfdmFsMzIgKnh5
MikKK3sKKyAgICBpbnQgaTsKKyAgICBvcHVzX3ZhbDMyIHh5MDEsIHh5MDI7CisgICAgZmxvYXQz
Mng0X3QgeHkwMV9mMzJ4NCA9IHZkdXBxX25fZjMyKDApOworICAgIGZsb2F0MzJ4NF90IHh5MDJf
ZjMyeDQgPSB2ZHVwcV9uX2YzMigwKTsKKyAgICBmbG9hdDMyeDJfdCB4eTAxX2YzMngyLCB4eTAy
X2YzMngyOworCisgICAgZm9yIChpID0gMDsgaSA8IE4gLSA3OyBpICs9IDgpIHsKKyAgICAgICAg
ZmxvYXQzMng0X3QgeF9mMzJ4NCwgeTAxX2YzMng0LCB5MDJfZjMyeDQ7CisgICAgICAgIHhfZjMy
eDQgICAgPSB2bGQxcV9mMzIoJnhbaV0pOworICAgICAgICB5MDFfZjMyeDQgID0gdmxkMXFfZjMy
KCZ5MDFbaV0pOworICAgICAgICB5MDJfZjMyeDQgID0gdmxkMXFfZjMyKCZ5MDJbaV0pOworICAg
ICAgICB4eTAxX2YzMng0ID0gdm1sYXFfZjMyKHh5MDFfZjMyeDQsIHhfZjMyeDQsIHkwMV9mMzJ4
NCk7CisgICAgICAgIHh5MDJfZjMyeDQgPSB2bWxhcV9mMzIoeHkwMl9mMzJ4NCwgeF9mMzJ4NCwg
eTAyX2YzMng0KTsKKyAgICAgICAgeF9mMzJ4NCAgICA9IHZsZDFxX2YzMigmeFtpICsgNF0pOwor
ICAgICAgICB5MDFfZjMyeDQgID0gdmxkMXFfZjMyKCZ5MDFbaSArIDRdKTsKKyAgICAgICAgeTAy
X2YzMng0ICA9IHZsZDFxX2YzMigmeTAyW2kgKyA0XSk7CisgICAgICAgIHh5MDFfZjMyeDQgPSB2
bWxhcV9mMzIoeHkwMV9mMzJ4NCwgeF9mMzJ4NCwgeTAxX2YzMng0KTsKKyAgICAgICAgeHkwMl9m
MzJ4NCA9IHZtbGFxX2YzMih4eTAyX2YzMng0LCB4X2YzMng0LCB5MDJfZjMyeDQpOworICAgIH0K
KworICAgIGlmIChOIC0gaSA+PSA0KSB7CisgICAgICAgIGNvbnN0IGZsb2F0MzJ4NF90IHhfZjMy
eDQgICA9IHZsZDFxX2YzMigmeFtpXSk7CisgICAgICAgIGNvbnN0IGZsb2F0MzJ4NF90IHkwMV9m
MzJ4NCA9IHZsZDFxX2YzMigmeTAxW2ldKTsKKyAgICAgICAgY29uc3QgZmxvYXQzMng0X3QgeTAy
X2YzMng0ID0gdmxkMXFfZjMyKCZ5MDJbaV0pOworICAgICAgICB4eTAxX2YzMng0ID0gdm1sYXFf
ZjMyKHh5MDFfZjMyeDQsIHhfZjMyeDQsIHkwMV9mMzJ4NCk7CisgICAgICAgIHh5MDJfZjMyeDQg
PSB2bWxhcV9mMzIoeHkwMl9mMzJ4NCwgeF9mMzJ4NCwgeTAyX2YzMng0KTsKKyAgICAgICAgaSAr
PSA0OworICAgIH0KKworICAgIHh5MDFfZjMyeDIgPSB2YWRkX2YzMih2Z2V0X2xvd19mMzIoeHkw
MV9mMzJ4NCksIHZnZXRfaGlnaF9mMzIoeHkwMV9mMzJ4NCkpOworICAgIHh5MDJfZjMyeDIgPSB2
YWRkX2YzMih2Z2V0X2xvd19mMzIoeHkwMl9mMzJ4NCksIHZnZXRfaGlnaF9mMzIoeHkwMl9mMzJ4
NCkpOworICAgIHh5MDFfZjMyeDIgPSB2cGFkZF9mMzIoeHkwMV9mMzJ4MiwgeHkwMV9mMzJ4Mik7
CisgICAgeHkwMl9mMzJ4MiA9IHZwYWRkX2YzMih4eTAyX2YzMngyLCB4eTAyX2YzMngyKTsKKyAg
ICB4eTAxICAgICAgID0gdmdldF9sYW5lX2YzMih4eTAxX2YzMngyLCAwKTsKKyAgICB4eTAyICAg
ICAgID0gdmdldF9sYW5lX2YzMih4eTAyX2YzMngyLCAwKTsKKworICAgIGZvciAoOyBpIDwgTjsg
aSsrKSB7CisgICAgICAgIHh5MDEgPSBNQUMxNl8xNih4eTAxLCB4W2ldLCB5MDFbaV0pOworICAg
ICAgICB4eTAyID0gTUFDMTZfMTYoeHkwMiwgeFtpXSwgeTAyW2ldKTsKKyAgICB9CisgICAgKnh5
MSA9IHh5MDE7CisgICAgKnh5MiA9IHh5MDI7CisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAg
IHsKKyAgICAgICAgb3B1c192YWwzMiB4eTFfYywgeHkyX2M7CisgICAgICAgIGR1YWxfaW5uZXJf
cHJvZF9uZW9uX2Zsb2F0X2Nfc2ltdWxhdGlvbih4LCB5MDEsIHkwMiwgTiwgJnh5MV9jLCAmeHky
X2MpOworICAgICAgICBjZWx0X2Fzc2VydChBQlMzMih4eTFfYyAtICp4eTEpIDw9IFZFUllfU01B
TEwpOworICAgICAgICBjZWx0X2Fzc2VydChBQlMzMih4eTJfYyAtICp4eTIpIDw9IFZFUllfU01B
TEwpOworICAgIH0KKyNlbmRpZgorfQorCisjZW5kaWYgLyogRklYRURfUE9JTlQgKi8KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC9iYW5kcy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2JhbmRzLmMKaW5kZXggZjUzMDdhZTJlZGI2N2EwM2E5
NzRiYjVkZWNlNjQ4NWQ4MDY5NjVjNi4uM2IxZjVjZmJiZThhODFjN2Y0N2I3MDBhYzg3ODk5ZDgw
OTkwNjI4NSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2JhbmRzLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2JhbmRzLmMKQEAgLTY1
LDcgKzY1LDcgQEAgb3B1c191aW50MzIgY2VsdF9sY2dfcmFuZChvcHVzX3VpbnQzMiBzZWVkKQog
CiAvKiBUaGlzIGlzIGEgY29zKCkgYXBwcm94aW1hdGlvbiBkZXNpZ25lZCB0byBiZSBiaXQtZXhh
Y3Qgb24gYW55IHBsYXRmb3JtLiBCaXQgZXhhY3RuZXNzCiAgICB3aXRoIHRoaXMgYXBwcm94aW1h
dGlvbiBpcyBpbXBvcnRhbnQgYmVjYXVzZSBpdCBoYXMgYW4gaW1wYWN0IG9uIHRoZSBiaXQgYWxs
b2NhdGlvbiAqLwotc3RhdGljIG9wdXNfaW50MTYgYml0ZXhhY3RfY29zKG9wdXNfaW50MTYgeCkK
K29wdXNfaW50MTYgYml0ZXhhY3RfY29zKG9wdXNfaW50MTYgeCkKIHsKICAgIG9wdXNfaW50MzIg
dG1wOwogICAgb3B1c19pbnQxNiB4MjsKQEAgLTc3LDcgKzc3LDcgQEAgc3RhdGljIG9wdXNfaW50
MTYgYml0ZXhhY3RfY29zKG9wdXNfaW50MTYgeCkKICAgIHJldHVybiAxK3gyOwogfQogCi1zdGF0
aWMgaW50IGJpdGV4YWN0X2xvZzJ0YW4oaW50IGlzaW4saW50IGljb3MpCitpbnQgYml0ZXhhY3Rf
bG9nMnRhbihpbnQgaXNpbixpbnQgaWNvcykKIHsKICAgIGludCBsYzsKICAgIGludCBsczsKQEAg
LTkyLDEwICs5MiwxMSBAQCBzdGF0aWMgaW50IGJpdGV4YWN0X2xvZzJ0YW4oaW50IGlzaW4saW50
IGljb3MpCiAKICNpZmRlZiBGSVhFRF9QT0lOVAogLyogQ29tcHV0ZSB0aGUgYW1wbGl0dWRlIChz
cXJ0IGVuZXJneSkgaW4gZWFjaCBvZiB0aGUgYmFuZHMgKi8KLXZvaWQgY29tcHV0ZV9iYW5kX2Vu
ZXJnaWVzKGNvbnN0IENFTFRNb2RlICptLCBjb25zdCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpi
YW5kRSwgaW50IGVuZCwgaW50IEMsIGludCBMTSkKK3ZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVz
KGNvbnN0IENFTFRNb2RlICptLCBjb25zdCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kRSwg
aW50IGVuZCwgaW50IEMsIGludCBMTSwgaW50IGFyY2gpCiB7CiAgICBpbnQgaSwgYywgTjsKICAg
IGNvbnN0IG9wdXNfaW50MTYgKmVCYW5kcyA9IG0tPmVCYW5kczsKKyAgICh2b2lkKWFyY2g7CiAg
ICBOID0gbS0+c2hvcnRNZGN0U2l6ZTw8TE07CiAgICBjPTA7IGRvIHsKICAgICAgIGZvciAoaT0w
O2k8ZW5kO2krKykKQEAgLTE1NSw3ICsxNTYsNyBAQCB2b2lkIG5vcm1hbGlzZV9iYW5kcyhjb25z
dCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9zaWcgKiBPUFVTX1JFU1RSSUNUIGZyZXEsIGNlbAog
CiAjZWxzZSAvKiBGSVhFRF9QT0lOVCAqLwogLyogQ29tcHV0ZSB0aGUgYW1wbGl0dWRlIChzcXJ0
IGVuZXJneSkgaW4gZWFjaCBvZiB0aGUgYmFuZHMgKi8KLXZvaWQgY29tcHV0ZV9iYW5kX2VuZXJn
aWVzKGNvbnN0IENFTFRNb2RlICptLCBjb25zdCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5k
RSwgaW50IGVuZCwgaW50IEMsIGludCBMTSkKK3ZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNv
bnN0IENFTFRNb2RlICptLCBjb25zdCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kRSwgaW50
IGVuZCwgaW50IEMsIGludCBMTSwgaW50IGFyY2gpCiB7CiAgICBpbnQgaSwgYywgTjsKICAgIGNv
bnN0IG9wdXNfaW50MTYgKmVCYW5kcyA9IG0tPmVCYW5kczsKQEAgLTE2NCw3ICsxNjUsNyBAQCB2
b2lkIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhjb25zdCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9z
aWcgKlgsIGNlbHRfZW5lciAqYmFuZAogICAgICAgZm9yIChpPTA7aTxlbmQ7aSsrKQogICAgICAg
ewogICAgICAgICAgb3B1c192YWwzMiBzdW07Ci0gICAgICAgICBzdW0gPSAxZS0yN2YgKyBjZWx0
X2lubmVyX3Byb2RfYygmWFtjKk4rKGVCYW5kc1tpXTw8TE0pXSwgJlhbYypOKyhlQmFuZHNbaV08
PExNKV0sIChlQmFuZHNbaSsxXS1lQmFuZHNbaV0pPDxMTSk7CisgICAgICAgICBzdW0gPSAxZS0y
N2YgKyBjZWx0X2lubmVyX3Byb2QoJlhbYypOKyhlQmFuZHNbaV08PExNKV0sICZYW2MqTisoZUJh
bmRzW2ldPDxMTSldLCAoZUJhbmRzW2krMV0tZUJhbmRzW2ldKTw8TE0sIGFyY2gpOwogICAgICAg
ICAgYmFuZEVbaStjKm0tPm5iRUJhbmRzXSA9IGNlbHRfc3FydChzdW0pOwogICAgICAgICAgLypw
cmludGYgKCIlZiAiLCBiYW5kRVtpK2MqbS0+bmJFQmFuZHNdKTsqLwogICAgICAgfQpAQCAtMjI0
LDcgKzIyNSw3IEBAIHZvaWQgZGVub3JtYWxpc2VfYmFuZHMoY29uc3QgQ0VMVE1vZGUgKm0sIGNv
bnN0IGNlbHRfbm9ybSAqIE9QVVNfUkVTVFJJQ1QgWCwKICNlbmRpZgogICAgICAgaj1NKmVCYW5k
c1tpXTsKICAgICAgIGJhbmRfZW5kID0gTSplQmFuZHNbaSsxXTsKLSAgICAgIGxnID0gQUREMTYo
YmFuZExvZ0VbaV0sIFNITDE2KChvcHVzX3ZhbDE2KWVNZWFuc1tpXSw2KSk7CisgICAgICBsZyA9
IFNBVFVSQVRFMTYoQUREMzIoYmFuZExvZ0VbaV0sIFNITDMyKChvcHVzX3ZhbDMyKWVNZWFuc1tp
XSw2KSkpOwogI2lmbmRlZiBGSVhFRF9QT0lOVAogICAgICAgZyA9IGNlbHRfZXhwMihNSU4zMigz
Mi5mLCBsZykpOwogI2Vsc2UKQEAgLTI0MSwxMiArMjQyLDEyIEBAIHZvaWQgZGVub3JtYWxpc2Vf
YmFuZHMoY29uc3QgQ0VMVE1vZGUgKm0sIGNvbnN0IGNlbHRfbm9ybSAqIE9QVVNfUkVTVFJJQ1Qg
WCwKICAgICAgIC8qIEhhbmRsZSBleHRyZW1lIGdhaW5zIHdpdGggbmVnYXRpdmUgc2hpZnQuICov
CiAgICAgICBpZiAoc2hpZnQ8MCkKICAgICAgIHsKLSAgICAgICAgIC8qIEZvciBzaGlmdCA8IC0y
IHdlJ2QgYmUgbGlrZWx5IHRvIG92ZXJmbG93LCBzbyB3ZSdyZSBjYXBwaW5nCi0gICAgICAgICAg
ICAgICB0aGUgZ2FpbiBoZXJlLiBUaGlzIHNob3VsZG4ndCBoYXBwZW4gdW5sZXNzIHRoZSBiaXRz
dHJlYW0gaXMKLSAgICAgICAgICAgICAgIGFscmVhZHkgY29ycnVwdGVkLiAqLwotICAgICAgICAg
aWYgKHNoaWZ0IDwgLTIpCisgICAgICAgICAvKiBGb3Igc2hpZnQgPD0gLTIgYW5kIGcgPiAxNjM4
NCB3ZSdkIGJlIGxpa2VseSB0byBvdmVyZmxvdywgc28gd2UncmUKKyAgICAgICAgICAgIGNhcHBp
bmcgdGhlIGdhaW4gaGVyZSwgd2hpY2ggaXMgZXF1aXZhbGVudCB0byBhIGNhcCBvZiAxOCBvbiBs
Zy4KKyAgICAgICAgICAgIFRoaXMgc2hvdWxkbid0IHRyaWdnZXIgdW5sZXNzIHRoZSBiaXRzdHJl
YW0gaXMgYWxyZWFkeSBjb3JydXB0ZWQuICovCisgICAgICAgICBpZiAoc2hpZnQgPD0gLTIpCiAg
ICAgICAgICB7Ci0gICAgICAgICAgICBnID0gMzI3Njc7CisgICAgICAgICAgICBnID0gMTYzODQ7
CiAgICAgICAgICAgICBzaGlmdCA9IC0yOwogICAgICAgICAgfQogICAgICAgICAgZG8gewpAQCAt
MzYwLDYgKzM2MSwzMCBAQCB2b2lkIGFudGlfY29sbGFwc2UoY29uc3QgQ0VMVE1vZGUgKm0sIGNl
bHRfbm9ybSAqWF8sIHVuc2lnbmVkIGNoYXIgKmNvbGxhcHNlX21hcwogICAgfQogfQogCisvKiBD
b21wdXRlIHRoZSB3ZWlnaHRzIHRvIHVzZSBmb3Igb3B0aW1pemluZyBub3JtYWxpemVkIGRpc3Rv
cnRpb24gYWNyb3NzCisgICBjaGFubmVscy4gV2UgdXNlIHRoZSBhbXBsaXR1ZGUgdG8gd2VpZ2h0
IHNxdWFyZSBkaXN0b3J0aW9uLCB3aGljaCBtZWFucworICAgdGhhdCB3ZSB1c2UgdGhlIHNxdWFy
ZSByb290IG9mIHRoZSB2YWx1ZSB3ZSB3b3VsZCBoYXZlIGJlZW4gdXNpbmcgaWYgd2UKKyAgIHdh
bnRlZCB0byBtaW5pbWl6ZSB0aGUgTVNFIGluIHRoZSBub24tbm9ybWFsaXplZCBkb21haW4uIFRo
aXMgcm91Z2hseQorICAgY29ycmVzcG9uZHMgdG8gc29tZSBxdWljay1hbmQtZGlydHkgcGVyY2Vw
dHVhbCBleHBlcmltZW50cyBJIHJhbiB0bworICAgbWVhc3VyZSBpbnRlci1hdXJhbCBtYXNraW5n
ICh0aGVyZSBkb2Vzbid0IHNlZW0gdG8gYmUgYW55IHB1Ymxpc2hlZCBkYXRhCisgICBvbiB0aGUg
dG9waWMpLiAqLworc3RhdGljIHZvaWQgY29tcHV0ZV9jaGFubmVsX3dlaWdodHMoY2VsdF9lbmVy
IEV4LCBjZWx0X2VuZXIgRXksIG9wdXNfdmFsMTYgd1syXSkKK3sKKyAgIGNlbHRfZW5lciBtaW5F
OworI2lmIEZJWEVEX1BPSU5UCisgICBpbnQgc2hpZnQ7CisjZW5kaWYKKyAgIG1pbkUgPSBNSU4z
MihFeCwgRXkpOworICAgLyogQWRqdXN0bWVudCB0byBtYWtlIHRoZSB3ZWlnaHRzIGEgYml0IG1v
cmUgY29uc2VydmF0aXZlLiAqLworICAgRXggPSBBREQzMihFeCwgbWluRS8zKTsKKyAgIEV5ID0g
QUREMzIoRXksIG1pbkUvMyk7CisjaWYgRklYRURfUE9JTlQKKyAgIHNoaWZ0ID0gY2VsdF9pbG9n
MihFUFNJTE9OK01BWDMyKEV4LCBFeSkpLTE0OworI2VuZGlmCisgICB3WzBdID0gVlNIUjMyKEV4
LCBzaGlmdCk7CisgICB3WzFdID0gVlNIUjMyKEV5LCBzaGlmdCk7Cit9CisKIHN0YXRpYyB2b2lk
IGludGVuc2l0eV9zdGVyZW8oY29uc3QgQ0VMVE1vZGUgKm0sIGNlbHRfbm9ybSAqIE9QVVNfUkVT
VFJJQ1QgWCwgY29uc3QgY2VsdF9ub3JtICogT1BVU19SRVNUUklDVCBZLCBjb25zdCBjZWx0X2Vu
ZXIgKmJhbmRFLCBpbnQgYmFuZElELCBpbnQgTikKIHsKICAgIGludCBpID0gYmFuZElEOwpAQCAt
NjQ3LDYgKzY3Miw3IEBAIHN0YXRpYyBpbnQgY29tcHV0ZV9xbihpbnQgTiwgaW50IGIsIGludCBv
ZmZzZXQsIGludCBwdWxzZV9jYXAsIGludCBzdGVyZW8pCiAKIHN0cnVjdCBiYW5kX2N0eCB7CiAg
ICBpbnQgZW5jb2RlOworICAgaW50IHJlc3ludGg7CiAgICBjb25zdCBDRUxUTW9kZSAqbTsKICAg
IGludCBpOwogICAgaW50IGludGVuc2l0eTsKQEAgLTY1Nyw2ICs2ODMsOSBAQCBzdHJ1Y3QgYmFu
ZF9jdHggewogICAgY29uc3QgY2VsdF9lbmVyICpiYW5kRTsKICAgIG9wdXNfdWludDMyIHNlZWQ7
CiAgICBpbnQgYXJjaDsKKyAgIGludCB0aGV0YV9yb3VuZDsKKyAgIGludCBkaXNhYmxlX2ludjsK
KyAgIGludCBhdm9pZF9zcGxpdF9ub2lzZTsKIH07CiAKIHN0cnVjdCBzcGxpdF9jdHggewpAQCAt
NzE0LDggKzc0MywzNSBAQCBzdGF0aWMgdm9pZCBjb21wdXRlX3RoZXRhKHN0cnVjdCBiYW5kX2N0
eCAqY3R4LCBzdHJ1Y3Qgc3BsaXRfY3R4ICpzY3R4LAogICAgaWYgKHFuIT0xKQogICAgewogICAg
ICAgaWYgKGVuY29kZSkKLSAgICAgICAgIGl0aGV0YSA9IChpdGhldGEqKG9wdXNfaW50MzIpcW4r
ODE5Mik+PjE0OwotCisgICAgICB7CisgICAgICAgICBpZiAoIXN0ZXJlbyB8fCBjdHgtPnRoZXRh
X3JvdW5kID09IDApCisgICAgICAgICB7CisgICAgICAgICAgICBpdGhldGEgPSAoaXRoZXRhKihv
cHVzX2ludDMyKXFuKzgxOTIpPj4xNDsKKyAgICAgICAgICAgIGlmICghc3RlcmVvICYmIGN0eC0+
YXZvaWRfc3BsaXRfbm9pc2UgJiYgaXRoZXRhID4gMCAmJiBpdGhldGEgPCBxbikKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgIC8qIENoZWNrIGlmIHRoZSBzZWxlY3RlZCB2YWx1ZSBvZiB0
aGV0YSB3aWxsIGNhdXNlIHRoZSBiaXQgYWxsb2NhdGlvbgorICAgICAgICAgICAgICAgICAgdG8g
aW5qZWN0IG5vaXNlIG9uIG9uZSBzaWRlLiBJZiBzbywgbWFrZSBzdXJlIHRoZSBlbmVyZ3kgb2Yg
dGhhdCBzaWRlCisgICAgICAgICAgICAgICAgICBpcyB6ZXJvLiAqLworICAgICAgICAgICAgICAg
aW50IHVucXVhbnRpemVkID0gY2VsdF91ZGl2KChvcHVzX2ludDMyKWl0aGV0YSoxNjM4NCwgcW4p
OworICAgICAgICAgICAgICAgaW1pZCA9IGJpdGV4YWN0X2Nvcygob3B1c19pbnQxNil1bnF1YW50
aXplZCk7CisgICAgICAgICAgICAgICBpc2lkZSA9IGJpdGV4YWN0X2Nvcygob3B1c19pbnQxNiko
MTYzODQtdW5xdWFudGl6ZWQpKTsKKyAgICAgICAgICAgICAgIGRlbHRhID0gRlJBQ19NVUwxNigo
Ti0xKTw8NyxiaXRleGFjdF9sb2cydGFuKGlzaWRlLGltaWQpKTsKKyAgICAgICAgICAgICAgIGlm
IChkZWx0YSA+ICpiKQorICAgICAgICAgICAgICAgICAgaXRoZXRhID0gcW47CisgICAgICAgICAg
ICAgICBlbHNlIGlmIChkZWx0YSA8IC0qYikKKyAgICAgICAgICAgICAgICAgIGl0aGV0YSA9IDA7
CisgICAgICAgICAgICB9CisgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaW50IGRvd247
CisgICAgICAgICAgICAvKiBCaWFzIHF1YW50aXphdGlvbiB0b3dhcmRzIGl0aGV0YT0wIGFuZCBp
dGhldGE9MTYzODQuICovCisgICAgICAgICAgICBpbnQgYmlhcyA9IGl0aGV0YSA+IDgxOTIgPyAz
Mjc2Ny9xbiA6IC0zMjc2Ny9xbjsKKyAgICAgICAgICAgIGRvd24gPSBJTUlOKHFuLTEsIElNQVgo
MCwgKGl0aGV0YSoob3B1c19pbnQzMilxbiArIGJpYXMpPj4xNCkpOworICAgICAgICAgICAgaWYg
KGN0eC0+dGhldGFfcm91bmQgPCAwKQorICAgICAgICAgICAgICAgaXRoZXRhID0gZG93bjsKKyAg
ICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIGl0aGV0YSA9IGRvd24rMTsKKyAgICAgICAg
IH0KKyAgICAgIH0KICAgICAgIC8qIEVudHJvcHkgY29kaW5nIG9mIHRoZSBhbmdsZS4gV2UgdXNl
IGEgdW5pZm9ybSBwZGYgZm9yIHRoZQogICAgICAgICAgdGltZSBzcGxpdCwgYSBzdGVwIGZvciBz
dGVyZW8sIGFuZCBhIHRyaWFuZ3VsYXIgb25lIGZvciB0aGUgcmVzdC4gKi8KICAgICAgIGlmIChz
dGVyZW8gJiYgTj4yKQpAQCAtNzkzLDcgKzg0OSw3IEBAIHN0YXRpYyB2b2lkIGNvbXB1dGVfdGhl
dGEoc3RydWN0IGJhbmRfY3R4ICpjdHgsIHN0cnVjdCBzcGxpdF9jdHggKnNjdHgsCiAgICB9IGVs
c2UgaWYgKHN0ZXJlbykgewogICAgICAgaWYgKGVuY29kZSkKICAgICAgIHsKLSAgICAgICAgIGlu
diA9IGl0aGV0YSA+IDgxOTI7CisgICAgICAgICBpbnYgPSBpdGhldGEgPiA4MTkyICYmICFjdHgt
PmRpc2FibGVfaW52OwogICAgICAgICAgaWYgKGludikKICAgICAgICAgIHsKICAgICAgICAgICAg
IGludCBqOwpAQCAtODEwLDYgKzg2Niw5IEBAIHN0YXRpYyB2b2lkIGNvbXB1dGVfdGhldGEoc3Ry
dWN0IGJhbmRfY3R4ICpjdHgsIHN0cnVjdCBzcGxpdF9jdHggKnNjdHgsCiAgICAgICAgICAgICBp
bnYgPSBlY19kZWNfYml0X2xvZ3AoZWMsIDIpOwogICAgICAgfSBlbHNlCiAgICAgICAgICBpbnYg
PSAwOworICAgICAgLyogaW52IGZsYWcgb3ZlcnJpZGUgdG8gYXZvaWQgcHJvYmxlbXMgd2l0aCBk
b3dubWl4aW5nLiAqLworICAgICAgaWYgKGN0eC0+ZGlzYWJsZV9pbnYpCisgICAgICAgICBpbnYg
PSAwOwogICAgICAgaXRoZXRhID0gMDsKICAgIH0KICAgIHFhbGxvYyA9IGVjX3RlbGxfZnJhYyhl
YykgLSB0ZWxsOwpAQCAtODQ1LDExICs5MDQsNiBAQCBzdGF0aWMgdm9pZCBjb21wdXRlX3RoZXRh
KHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBzdHJ1Y3Qgc3BsaXRfY3R4ICpzY3R4LAogc3RhdGljIHVu
c2lnbmVkIHF1YW50X2JhbmRfbjEoc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwg
Y2VsdF9ub3JtICpZLCBpbnQgYiwKICAgICAgIGNlbHRfbm9ybSAqbG93YmFuZF9vdXQpCiB7Ci0j
aWZkZWYgUkVTWU5USAotICAgaW50IHJlc3ludGggPSAxOwotI2Vsc2UKLSAgIGludCByZXN5bnRo
ID0gIWN0eC0+ZW5jb2RlOwotI2VuZGlmCiAgICBpbnQgYzsKICAgIGludCBzdGVyZW87CiAgICBj
ZWx0X25vcm0gKnggPSBYOwpAQCAtODc0LDcgKzkyOCw3IEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFu
dF9iYW5kX24xKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsIGNlbHRfbm9ybSAq
WSwKICAgICAgICAgIGN0eC0+cmVtYWluaW5nX2JpdHMgLT0gMTw8QklUUkVTOwogICAgICAgICAg
Yi09MTw8QklUUkVTOwogICAgICAgfQotICAgICAgaWYgKHJlc3ludGgpCisgICAgICBpZiAoY3R4
LT5yZXN5bnRoKQogICAgICAgICAgeFswXSA9IHNpZ24gPyAtTk9STV9TQ0FMSU5HIDogTk9STV9T
Q0FMSU5HOwogICAgICAgeCA9IFk7CiAgICB9IHdoaWxlICgrK2M8MStzdGVyZW8pOwpAQCAtODk5
LDExICs5NTMsNiBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfcGFydGl0aW9uKHN0cnVjdCBiYW5k
X2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsCiAgICBpbnQgQjA9QjsKICAgIG9wdXNfdmFsMTYgbWlk
PTAsIHNpZGU9MDsKICAgIHVuc2lnbmVkIGNtPTA7Ci0jaWZkZWYgUkVTWU5USAotICAgaW50IHJl
c3ludGggPSAxOwotI2Vsc2UKLSAgIGludCByZXN5bnRoID0gIWN0eC0+ZW5jb2RlOwotI2VuZGlm
CiAgICBjZWx0X25vcm0gKlk9TlVMTDsKICAgIGludCBlbmNvZGU7CiAgICBjb25zdCBDRUxUTW9k
ZSAqbTsKQEAgLTkzNSw4ICs5ODQsNyBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfcGFydGl0aW9u
KHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsCiAgICAgICAgICBmaWxsID0gKGZp
bGwmMSl8KGZpbGw8PDEpOwogICAgICAgQiA9IChCKzEpPj4xOwogCi0gICAgICBjb21wdXRlX3Ro
ZXRhKGN0eCwgJnNjdHgsIFgsIFksIE4sICZiLCBCLCBCMCwKLSAgICAgICAgICAgIExNLCAwLCAm
ZmlsbCk7CisgICAgICBjb21wdXRlX3RoZXRhKGN0eCwgJnNjdHgsIFgsIFksIE4sICZiLCBCLCBC
MCwgTE0sIDAsICZmaWxsKTsKICAgICAgIGltaWQgPSBzY3R4LmltaWQ7CiAgICAgICBpc2lkZSA9
IHNjdHguaXNpZGU7CiAgICAgICBkZWx0YSA9IHNjdHguZGVsdGE7CkBAIC05NzAsMjQgKzEwMTgs
MjAgQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50X3BhcnRpdGlvbihzdHJ1Y3QgYmFuZF9jdHggKmN0
eCwgY2VsdF9ub3JtICpYLAogICAgICAgcmViYWxhbmNlID0gY3R4LT5yZW1haW5pbmdfYml0czsK
ICAgICAgIGlmIChtYml0cyA+PSBzYml0cykKICAgICAgIHsKLSAgICAgICAgIGNtID0gcXVhbnRf
cGFydGl0aW9uKGN0eCwgWCwgTiwgbWJpdHMsIEIsCi0gICAgICAgICAgICAgICBsb3diYW5kLCBM
TSwKKyAgICAgICAgIGNtID0gcXVhbnRfcGFydGl0aW9uKGN0eCwgWCwgTiwgbWJpdHMsIEIsIGxv
d2JhbmQsIExNLAogICAgICAgICAgICAgICAgTVVMVDE2XzE2X1AxNShnYWluLG1pZCksIGZpbGwp
OwogICAgICAgICAgcmViYWxhbmNlID0gbWJpdHMgLSAocmViYWxhbmNlLWN0eC0+cmVtYWluaW5n
X2JpdHMpOwogICAgICAgICAgaWYgKHJlYmFsYW5jZSA+IDM8PEJJVFJFUyAmJiBpdGhldGEhPTAp
CiAgICAgICAgICAgICBzYml0cyArPSByZWJhbGFuY2UgLSAoMzw8QklUUkVTKTsKLSAgICAgICAg
IGNtIHw9IHF1YW50X3BhcnRpdGlvbihjdHgsIFksIE4sIHNiaXRzLCBCLAotICAgICAgICAgICAg
ICAgbmV4dF9sb3diYW5kMiwgTE0sCisgICAgICAgICBjbSB8PSBxdWFudF9wYXJ0aXRpb24oY3R4
LCBZLCBOLCBzYml0cywgQiwgbmV4dF9sb3diYW5kMiwgTE0sCiAgICAgICAgICAgICAgICBNVUxU
MTZfMTZfUDE1KGdhaW4sc2lkZSksIGZpbGw+PkIpPDwoQjA+PjEpOwogICAgICAgfSBlbHNlIHsK
LSAgICAgICAgIGNtID0gcXVhbnRfcGFydGl0aW9uKGN0eCwgWSwgTiwgc2JpdHMsIEIsCi0gICAg
ICAgICAgICAgICBuZXh0X2xvd2JhbmQyLCBMTSwKKyAgICAgICAgIGNtID0gcXVhbnRfcGFydGl0
aW9uKGN0eCwgWSwgTiwgc2JpdHMsIEIsIG5leHRfbG93YmFuZDIsIExNLAogICAgICAgICAgICAg
ICAgTVVMVDE2XzE2X1AxNShnYWluLHNpZGUpLCBmaWxsPj5CKTw8KEIwPj4xKTsKICAgICAgICAg
IHJlYmFsYW5jZSA9IHNiaXRzIC0gKHJlYmFsYW5jZS1jdHgtPnJlbWFpbmluZ19iaXRzKTsKICAg
ICAgICAgIGlmIChyZWJhbGFuY2UgPiAzPDxCSVRSRVMgJiYgaXRoZXRhIT0xNjM4NCkKICAgICAg
ICAgICAgIG1iaXRzICs9IHJlYmFsYW5jZSAtICgzPDxCSVRSRVMpOwotICAgICAgICAgY20gfD0g
cXVhbnRfcGFydGl0aW9uKGN0eCwgWCwgTiwgbWJpdHMsIEIsCi0gICAgICAgICAgICAgICBsb3di
YW5kLCBMTSwKKyAgICAgICAgIGNtIHw9IHF1YW50X3BhcnRpdGlvbihjdHgsIFgsIE4sIG1iaXRz
LCBCLCBsb3diYW5kLCBMTSwKICAgICAgICAgICAgICAgIE1VTFQxNl8xNl9QMTUoZ2FpbixtaWQp
LCBmaWxsKTsKICAgICAgIH0KICAgIH0gZWxzZSB7CkBAIC0xMDEyLDE4ICsxMDU2LDE0IEBAIHN0
YXRpYyB1bnNpZ25lZCBxdWFudF9wYXJ0aXRpb24oc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRf
bm9ybSAqWCwKICAgICAgICAgIC8qIEZpbmFsbHkgZG8gdGhlIGFjdHVhbCBxdWFudGl6YXRpb24g
Ki8KICAgICAgICAgIGlmIChlbmNvZGUpCiAgICAgICAgICB7Ci0gICAgICAgICAgICBjbSA9IGFs
Z19xdWFudChYLCBOLCBLLCBzcHJlYWQsIEIsIGVjCi0jaWZkZWYgUkVTWU5USAotICAgICAgICAg
ICAgICAgICAsIGdhaW4KLSNlbmRpZgotICAgICAgICAgICAgICAgICApOworICAgICAgICAgICAg
Y20gPSBhbGdfcXVhbnQoWCwgTiwgSywgc3ByZWFkLCBCLCBlYywgZ2FpbiwgY3R4LT5yZXN5bnRo
LCBjdHgtPmFyY2gpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGNtID0gYWxnX3Vu
cXVhbnQoWCwgTiwgSywgc3ByZWFkLCBCLCBlYywgZ2Fpbik7CiAgICAgICAgICB9CiAgICAgICB9
IGVsc2UgewogICAgICAgICAgLyogSWYgdGhlcmUncyBubyBwdWxzZSwgZmlsbCB0aGUgYmFuZCBh
bnl3YXkgKi8KICAgICAgICAgIGludCBqOwotICAgICAgICAgaWYgKHJlc3ludGgpCisgICAgICAg
ICBpZiAoY3R4LT5yZXN5bnRoKQogICAgICAgICAgewogICAgICAgICAgICAgdW5zaWduZWQgY21f
bWFzazsKICAgICAgICAgICAgIC8qIEIgY2FuIGJlIGFzIGxhcmdlIGFzIDE2LCBzbyB0aGlzIHNo
aWZ0IG1pZ2h0IG92ZXJmbG93IGFuIGludCBvbiBhCkBAIC0xMDgwLDExICsxMTIwLDYgQEAgc3Rh
dGljIHVuc2lnbmVkIHF1YW50X2JhbmQoc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAq
WCwKICAgIGludCByZWNvbWJpbmU9MDsKICAgIGludCBsb25nQmxvY2tzOwogICAgdW5zaWduZWQg
Y209MDsKLSNpZmRlZiBSRVNZTlRICi0gICBpbnQgcmVzeW50aCA9IDE7Ci0jZWxzZQotICAgaW50
IHJlc3ludGggPSAhY3R4LT5lbmNvZGU7Ci0jZW5kaWYKICAgIGludCBrOwogICAgaW50IGVuY29k
ZTsKICAgIGludCB0Zl9jaGFuZ2U7CkBAIC0xMTUxLDExICsxMTg2LDEwIEBAIHN0YXRpYyB1bnNp
Z25lZCBxdWFudF9iYW5kKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsCiAgICAg
ICAgICBkZWludGVybGVhdmVfaGFkYW1hcmQobG93YmFuZCwgTl9CPj5yZWNvbWJpbmUsIEIwPDxy
ZWNvbWJpbmUsIGxvbmdCbG9ja3MpOwogICAgfQogCi0gICBjbSA9IHF1YW50X3BhcnRpdGlvbihj
dHgsIFgsIE4sIGIsIEIsIGxvd2JhbmQsCi0gICAgICAgICBMTSwgZ2FpbiwgZmlsbCk7CisgICBj
bSA9IHF1YW50X3BhcnRpdGlvbihjdHgsIFgsIE4sIGIsIEIsIGxvd2JhbmQsIExNLCBnYWluLCBm
aWxsKTsKIAogICAgLyogVGhpcyBjb2RlIGlzIHVzZWQgYnkgdGhlIGRlY29kZXIgYW5kIGJ5IHRo
ZSByZXN5bnRoZXNpcy1lbmFibGVkIGVuY29kZXIgKi8KLSAgIGlmIChyZXN5bnRoKQorICAgaWYg
KGN0eC0+cmVzeW50aCkKICAgIHsKICAgICAgIC8qIFVuZG8gdGhlIHNhbXBsZSByZW9yZ2FuaXph
dGlvbiBnb2luZyBmcm9tIHRpbWUgb3JkZXIgdG8gZnJlcXVlbmN5IG9yZGVyICovCiAgICAgICBp
ZiAoQjA+MSkKQEAgLTEyMDgsMTEgKzEyNDIsNiBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfYmFu
ZF9zdGVyZW8oc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwgY2VsdF9ub3JtCiAg
ICBpbnQgaW52ID0gMDsKICAgIG9wdXNfdmFsMTYgbWlkPTAsIHNpZGU9MDsKICAgIHVuc2lnbmVk
IGNtPTA7Ci0jaWZkZWYgUkVTWU5USAotICAgaW50IHJlc3ludGggPSAxOwotI2Vsc2UKLSAgIGlu
dCByZXN5bnRoID0gIWN0eC0+ZW5jb2RlOwotI2VuZGlmCiAgICBpbnQgbWJpdHMsIHNiaXRzLCBk
ZWx0YTsKICAgIGludCBpdGhldGE7CiAgICBpbnQgcWFsbG9jOwpAQCAtMTIzMiw4ICsxMjYxLDcg
QEAgc3RhdGljIHVuc2lnbmVkIHF1YW50X2JhbmRfc3RlcmVvKHN0cnVjdCBiYW5kX2N0eCAqY3R4
LCBjZWx0X25vcm0gKlgsIGNlbHRfbm9ybQogCiAgICBvcmlnX2ZpbGwgPSBmaWxsOwogCi0gICBj
b21wdXRlX3RoZXRhKGN0eCwgJnNjdHgsIFgsIFksIE4sICZiLCBCLCBCLAotICAgICAgICAgTE0s
IDEsICZmaWxsKTsKKyAgIGNvbXB1dGVfdGhldGEoY3R4LCAmc2N0eCwgWCwgWSwgTiwgJmIsIEIs
IEIsIExNLCAxLCAmZmlsbCk7CiAgICBpbnYgPSBzY3R4LmludjsKICAgIGltaWQgPSBzY3R4Lmlt
aWQ7CiAgICBpc2lkZSA9IHNjdHguaXNpZGU7CkBAIC0xMjgxLDEzICsxMzA5LDEzIEBAIHN0YXRp
YyB1bnNpZ25lZCBxdWFudF9iYW5kX3N0ZXJlbyhzdHJ1Y3QgYmFuZF9jdHggKmN0eCwgY2VsdF9u
b3JtICpYLCBjZWx0X25vcm0KICAgICAgIHNpZ24gPSAxLTIqc2lnbjsKICAgICAgIC8qIFdlIHVz
ZSBvcmlnX2ZpbGwgaGVyZSBiZWNhdXNlIHdlIHdhbnQgdG8gZm9sZCB0aGUgc2lkZSwgYnV0IGlm
CiAgICAgICAgICBpdGhldGE9PTE2Mzg0LCB3ZSdsbCBoYXZlIGNsZWFyZWQgdGhlIGxvdyBiaXRz
IG9mIGZpbGwuICovCi0gICAgICBjbSA9IHF1YW50X2JhbmQoY3R4LCB4MiwgTiwgbWJpdHMsIEIs
IGxvd2JhbmQsCi0gICAgICAgICAgICBMTSwgbG93YmFuZF9vdXQsIFExNU9ORSwgbG93YmFuZF9z
Y3JhdGNoLCBvcmlnX2ZpbGwpOworICAgICAgY20gPSBxdWFudF9iYW5kKGN0eCwgeDIsIE4sIG1i
aXRzLCBCLCBsb3diYW5kLCBMTSwgbG93YmFuZF9vdXQsIFExNU9ORSwKKyAgICAgICAgICAgIGxv
d2JhbmRfc2NyYXRjaCwgb3JpZ19maWxsKTsKICAgICAgIC8qIFdlIGRvbid0IHNwbGl0IE49MiBi
YW5kcywgc28gY20gaXMgZWl0aGVyIDEgb3IgMCAoZm9yIGEgZm9sZC1jb2xsYXBzZSksCiAgICAg
ICAgICBhbmQgdGhlcmUncyBubyBuZWVkIHRvIHdvcnJ5IGFib3V0IG1peGluZyB3aXRoIHRoZSBv
dGhlciBjaGFubmVsLiAqLwogICAgICAgeTJbMF0gPSAtc2lnbip4MlsxXTsKICAgICAgIHkyWzFd
ID0gc2lnbip4MlswXTsKLSAgICAgIGlmIChyZXN5bnRoKQorICAgICAgaWYgKGN0eC0+cmVzeW50
aCkKICAgICAgIHsKICAgICAgICAgIGNlbHRfbm9ybSB0bXA7CiAgICAgICAgICBYWzBdID0gTVVM
VDE2XzE2X1ExNShtaWQsIFhbMF0pOwpAQCAtMTMxNCwzOCArMTM0MiwzMiBAQCBzdGF0aWMgdW5z
aWduZWQgcXVhbnRfYmFuZF9zdGVyZW8oc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAq
WCwgY2VsdF9ub3JtCiAgICAgICB7CiAgICAgICAgICAvKiBJbiBzdGVyZW8gbW9kZSwgd2UgZG8g
bm90IGFwcGx5IGEgc2NhbGluZyB0byB0aGUgbWlkIGJlY2F1c2Ugd2UgbmVlZCB0aGUgbm9ybWFs
aXplZAogICAgICAgICAgICAgbWlkIGZvciBmb2xkaW5nIGxhdGVyLiAqLwotICAgICAgICAgY20g
PSBxdWFudF9iYW5kKGN0eCwgWCwgTiwgbWJpdHMsIEIsCi0gICAgICAgICAgICAgICBsb3diYW5k
LCBMTSwgbG93YmFuZF9vdXQsCi0gICAgICAgICAgICAgICBRMTVPTkUsIGxvd2JhbmRfc2NyYXRj
aCwgZmlsbCk7CisgICAgICAgICBjbSA9IHF1YW50X2JhbmQoY3R4LCBYLCBOLCBtYml0cywgQiwg
bG93YmFuZCwgTE0sIGxvd2JhbmRfb3V0LCBRMTVPTkUsCisgICAgICAgICAgICAgICBsb3diYW5k
X3NjcmF0Y2gsIGZpbGwpOwogICAgICAgICAgcmViYWxhbmNlID0gbWJpdHMgLSAocmViYWxhbmNl
LWN0eC0+cmVtYWluaW5nX2JpdHMpOwogICAgICAgICAgaWYgKHJlYmFsYW5jZSA+IDM8PEJJVFJF
UyAmJiBpdGhldGEhPTApCiAgICAgICAgICAgICBzYml0cyArPSByZWJhbGFuY2UgLSAoMzw8QklU
UkVTKTsKIAogICAgICAgICAgLyogRm9yIGEgc3RlcmVvIHNwbGl0LCB0aGUgaGlnaCBiaXRzIG9m
IGZpbGwgYXJlIGFsd2F5cyB6ZXJvLCBzbyBubwogICAgICAgICAgICAgZm9sZGluZyB3aWxsIGJl
IGRvbmUgdG8gdGhlIHNpZGUuICovCi0gICAgICAgICBjbSB8PSBxdWFudF9iYW5kKGN0eCwgWSwg
Tiwgc2JpdHMsIEIsCi0gICAgICAgICAgICAgICBOVUxMLCBMTSwgTlVMTCwKLSAgICAgICAgICAg
ICAgIHNpZGUsIE5VTEwsIGZpbGw+PkIpOworICAgICAgICAgY20gfD0gcXVhbnRfYmFuZChjdHgs
IFksIE4sIHNiaXRzLCBCLCBOVUxMLCBMTSwgTlVMTCwgc2lkZSwgTlVMTCwgZmlsbD4+Qik7CiAg
ICAgICB9IGVsc2UgewogICAgICAgICAgLyogRm9yIGEgc3RlcmVvIHNwbGl0LCB0aGUgaGlnaCBi
aXRzIG9mIGZpbGwgYXJlIGFsd2F5cyB6ZXJvLCBzbyBubwogICAgICAgICAgICAgZm9sZGluZyB3
aWxsIGJlIGRvbmUgdG8gdGhlIHNpZGUuICovCi0gICAgICAgICBjbSA9IHF1YW50X2JhbmQoY3R4
LCBZLCBOLCBzYml0cywgQiwKLSAgICAgICAgICAgICAgIE5VTEwsIExNLCBOVUxMLAotICAgICAg
ICAgICAgICAgc2lkZSwgTlVMTCwgZmlsbD4+Qik7CisgICAgICAgICBjbSA9IHF1YW50X2JhbmQo
Y3R4LCBZLCBOLCBzYml0cywgQiwgTlVMTCwgTE0sIE5VTEwsIHNpZGUsIE5VTEwsIGZpbGw+PkIp
OwogICAgICAgICAgcmViYWxhbmNlID0gc2JpdHMgLSAocmViYWxhbmNlLWN0eC0+cmVtYWluaW5n
X2JpdHMpOwogICAgICAgICAgaWYgKHJlYmFsYW5jZSA+IDM8PEJJVFJFUyAmJiBpdGhldGEhPTE2
Mzg0KQogICAgICAgICAgICAgbWJpdHMgKz0gcmViYWxhbmNlIC0gKDM8PEJJVFJFUyk7CiAgICAg
ICAgICAvKiBJbiBzdGVyZW8gbW9kZSwgd2UgZG8gbm90IGFwcGx5IGEgc2NhbGluZyB0byB0aGUg
bWlkIGJlY2F1c2Ugd2UgbmVlZCB0aGUgbm9ybWFsaXplZAogICAgICAgICAgICAgbWlkIGZvciBm
b2xkaW5nIGxhdGVyLiAqLwotICAgICAgICAgY20gfD0gcXVhbnRfYmFuZChjdHgsIFgsIE4sIG1i
aXRzLCBCLAotICAgICAgICAgICAgICAgbG93YmFuZCwgTE0sIGxvd2JhbmRfb3V0LAotICAgICAg
ICAgICAgICAgUTE1T05FLCBsb3diYW5kX3NjcmF0Y2gsIGZpbGwpOworICAgICAgICAgY20gfD0g
cXVhbnRfYmFuZChjdHgsIFgsIE4sIG1iaXRzLCBCLCBsb3diYW5kLCBMTSwgbG93YmFuZF9vdXQs
IFExNU9ORSwKKyAgICAgICAgICAgICAgIGxvd2JhbmRfc2NyYXRjaCwgZmlsbCk7CiAgICAgICB9
CiAgICB9CiAKIAogICAgLyogVGhpcyBjb2RlIGlzIHVzZWQgYnkgdGhlIGRlY29kZXIgYW5kIGJ5
IHRoZSByZXN5bnRoZXNpcy1lbmFibGVkIGVuY29kZXIgKi8KLSAgIGlmIChyZXN5bnRoKQorICAg
aWYgKGN0eC0+cmVzeW50aCkKICAgIHsKICAgICAgIGlmIChOIT0yKQogICAgICAgICAgc3RlcmVv
X21lcmdlKFgsIFksIG1pZCwgTiwgY3R4LT5hcmNoKTsKQEAgLTEzNTksMTkgKzEzODEsMzggQEAg
c3RhdGljIHVuc2lnbmVkIHF1YW50X2JhbmRfc3RlcmVvKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBj
ZWx0X25vcm0gKlgsIGNlbHRfbm9ybQogICAgcmV0dXJuIGNtOwogfQogCitzdGF0aWMgdm9pZCBz
cGVjaWFsX2h5YnJpZF9mb2xkaW5nKGNvbnN0IENFTFRNb2RlICptLCBjZWx0X25vcm0gKm5vcm0s
IGNlbHRfbm9ybSAqbm9ybTIsIGludCBzdGFydCwgaW50IE0sIGludCBkdWFsX3N0ZXJlbykKK3sK
KyAgIGludCBuMSwgbjI7CisgICBjb25zdCBvcHVzX2ludDE2ICogT1BVU19SRVNUUklDVCBlQmFu
ZHMgPSBtLT5lQmFuZHM7CisgICBuMSA9IE0qKGVCYW5kc1tzdGFydCsxXS1lQmFuZHNbc3RhcnRd
KTsKKyAgIG4yID0gTSooZUJhbmRzW3N0YXJ0KzJdLWVCYW5kc1tzdGFydCsxXSk7CisgICAvKiBE
dXBsaWNhdGUgZW5vdWdoIG9mIHRoZSBmaXJzdCBiYW5kIGZvbGRpbmcgZGF0YSB0byBiZSBhYmxl
IHRvIGZvbGQgdGhlIHNlY29uZCBiYW5kLgorICAgICAgQ29waWVzIG5vIGRhdGEgZm9yIENFTFQt
b25seSBtb2RlLiAqLworICAgT1BVU19DT1BZKCZub3JtW24xXSwgJm5vcm1bMipuMSAtIG4yXSwg
bjItbjEpOworICAgaWYgKGR1YWxfc3RlcmVvKQorICAgICAgT1BVU19DT1BZKCZub3JtMltuMV0s
ICZub3JtMlsyKm4xIC0gbjJdLCBuMi1uMSk7Cit9CiAKIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGlu
dCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQsCiAgICAgICBj
ZWx0X25vcm0gKlhfLCBjZWx0X25vcm0gKllfLCB1bnNpZ25lZCBjaGFyICpjb2xsYXBzZV9tYXNr
cywKICAgICAgIGNvbnN0IGNlbHRfZW5lciAqYmFuZEUsIGludCAqcHVsc2VzLCBpbnQgc2hvcnRC
bG9ja3MsIGludCBzcHJlYWQsCiAgICAgICBpbnQgZHVhbF9zdGVyZW8sIGludCBpbnRlbnNpdHks
IGludCAqdGZfcmVzLCBvcHVzX2ludDMyIHRvdGFsX2JpdHMsCiAgICAgICBvcHVzX2ludDMyIGJh
bGFuY2UsIGVjX2N0eCAqZWMsIGludCBMTSwgaW50IGNvZGVkQmFuZHMsCi0gICAgICBvcHVzX3Vp
bnQzMiAqc2VlZCwgaW50IGFyY2gpCisgICAgICBvcHVzX3VpbnQzMiAqc2VlZCwgaW50IGNvbXBs
ZXhpdHksIGludCBhcmNoLCBpbnQgZGlzYWJsZV9pbnYpCiB7CiAgICBpbnQgaTsKICAgIG9wdXNf
aW50MzIgcmVtYWluaW5nX2JpdHM7CiAgICBjb25zdCBvcHVzX2ludDE2ICogT1BVU19SRVNUUklD
VCBlQmFuZHMgPSBtLT5lQmFuZHM7CiAgICBjZWx0X25vcm0gKiBPUFVTX1JFU1RSSUNUIG5vcm0s
ICogT1BVU19SRVNUUklDVCBub3JtMjsKICAgIFZBUkRFQ0woY2VsdF9ub3JtLCBfbm9ybSk7Cisg
ICBWQVJERUNMKGNlbHRfbm9ybSwgX2xvd2JhbmRfc2NyYXRjaCk7CisgICBWQVJERUNMKGNlbHRf
bm9ybSwgWF9zYXZlKTsKKyAgIFZBUkRFQ0woY2VsdF9ub3JtLCBZX3NhdmUpOworICAgVkFSREVD
TChjZWx0X25vcm0sIFhfc2F2ZTIpOworICAgVkFSREVDTChjZWx0X25vcm0sIFlfc2F2ZTIpOwor
ICAgVkFSREVDTChjZWx0X25vcm0sIG5vcm1fc2F2ZTIpOworICAgaW50IHJlc3ludGhfYWxsb2M7
CiAgICBjZWx0X25vcm0gKmxvd2JhbmRfc2NyYXRjaDsKICAgIGludCBCOwogICAgaW50IE07CkBA
IC0xMzc5LDEwICsxNDIwLDExIEBAIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNv
bnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQsCiAgICBpbnQgdXBkYXRlX2xvd2Jh
bmQgPSAxOwogICAgaW50IEMgPSBZXyAhPSBOVUxMID8gMiA6IDE7CiAgICBpbnQgbm9ybV9vZmZz
ZXQ7CisgICBpbnQgdGhldGFfcmRvID0gZW5jb2RlICYmIFlfIT1OVUxMICYmICFkdWFsX3N0ZXJl
byAmJiBjb21wbGV4aXR5Pj04OwogI2lmZGVmIFJFU1lOVEgKICAgIGludCByZXN5bnRoID0gMTsK
ICNlbHNlCi0gICBpbnQgcmVzeW50aCA9ICFlbmNvZGU7CisgICBpbnQgcmVzeW50aCA9ICFlbmNv
ZGUgfHwgdGhldGFfcmRvOwogI2VuZGlmCiAgICBzdHJ1Y3QgYmFuZF9jdHggY3R4OwogICAgU0FW
RV9TVEFDSzsKQEAgLTEzOTUsOSArMTQzNywyNCBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhpbnQg
ZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAogICAgQUxMT0Mo
X25vcm0sIEMqKE0qZUJhbmRzW20tPm5iRUJhbmRzLTFdLW5vcm1fb2Zmc2V0KSwgY2VsdF9ub3Jt
KTsKICAgIG5vcm0gPSBfbm9ybTsKICAgIG5vcm0yID0gbm9ybSArIE0qZUJhbmRzW20tPm5iRUJh
bmRzLTFdLW5vcm1fb2Zmc2V0OwotICAgLyogV2UgY2FuIHVzZSB0aGUgbGFzdCBiYW5kIGFzIHNj
cmF0Y2ggc3BhY2UgYmVjYXVzZSB3ZSBkb24ndCBuZWVkIHRoYXQKLSAgICAgIHNjcmF0Y2ggc3Bh
Y2UgZm9yIHRoZSBsYXN0IGJhbmQuICovCi0gICBsb3diYW5kX3NjcmF0Y2ggPSBYXytNKmVCYW5k
c1ttLT5uYkVCYW5kcy0xXTsKKworICAgLyogRm9yIGRlY29kaW5nLCB3ZSBjYW4gdXNlIHRoZSBs
YXN0IGJhbmQgYXMgc2NyYXRjaCBzcGFjZSBiZWNhdXNlIHdlIGRvbid0IG5lZWQgdGhhdAorICAg
ICAgc2NyYXRjaCBzcGFjZSBmb3IgdGhlIGxhc3QgYmFuZCBhbmQgd2UgZG9uJ3QgY2FyZSBhYm91
dCB0aGUgZGF0YSB0aGVyZSB1bnRpbCB3ZSdyZQorICAgICAgZGVjb2RpbmcgdGhlIGxhc3QgYmFu
ZC4gKi8KKyAgIGlmIChlbmNvZGUgJiYgcmVzeW50aCkKKyAgICAgIHJlc3ludGhfYWxsb2MgPSBN
KihlQmFuZHNbbS0+bmJFQmFuZHNdLWVCYW5kc1ttLT5uYkVCYW5kcy0xXSk7CisgICBlbHNlCisg
ICAgICByZXN5bnRoX2FsbG9jID0gQUxMT0NfTk9ORTsKKyAgIEFMTE9DKF9sb3diYW5kX3NjcmF0
Y2gsIHJlc3ludGhfYWxsb2MsIGNlbHRfbm9ybSk7CisgICBpZiAoZW5jb2RlICYmIHJlc3ludGgp
CisgICAgICBsb3diYW5kX3NjcmF0Y2ggPSBfbG93YmFuZF9zY3JhdGNoOworICAgZWxzZQorICAg
ICAgbG93YmFuZF9zY3JhdGNoID0gWF8rTSplQmFuZHNbbS0+bmJFQmFuZHMtMV07CisgICBBTExP
QyhYX3NhdmUsIHJlc3ludGhfYWxsb2MsIGNlbHRfbm9ybSk7CisgICBBTExPQyhZX3NhdmUsIHJl
c3ludGhfYWxsb2MsIGNlbHRfbm9ybSk7CisgICBBTExPQyhYX3NhdmUyLCByZXN5bnRoX2FsbG9j
LCBjZWx0X25vcm0pOworICAgQUxMT0MoWV9zYXZlMiwgcmVzeW50aF9hbGxvYywgY2VsdF9ub3Jt
KTsKKyAgIEFMTE9DKG5vcm1fc2F2ZTIsIHJlc3ludGhfYWxsb2MsIGNlbHRfbm9ybSk7CiAKICAg
IGxvd2JhbmRfb2Zmc2V0ID0gMDsKICAgIGN0eC5iYW5kRSA9IGJhbmRFOwpAQCAtMTQwOCw2ICsx
NDY1LDExIEBAIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2Rl
ICptLCBpbnQgc3RhcnQsIGludCBlbmQsCiAgICBjdHguc2VlZCA9ICpzZWVkOwogICAgY3R4LnNw
cmVhZCA9IHNwcmVhZDsKICAgIGN0eC5hcmNoID0gYXJjaDsKKyAgIGN0eC5kaXNhYmxlX2ludiA9
IGRpc2FibGVfaW52OworICAgY3R4LnJlc3ludGggPSByZXN5bnRoOworICAgY3R4LnRoZXRhX3Jv
dW5kID0gMDsKKyAgIC8qIEF2b2lkIGluamVjdGluZyBub2lzZSBpbiB0aGUgZmlyc3QgYmFuZCBv
biB0cmFuc2llbnRzLiAqLworICAgY3R4LmF2b2lkX3NwbGl0X25vaXNlID0gQiA+IDE7CiAgICBm
b3IgKGk9c3RhcnQ7aTxlbmQ7aSsrKQogICAgewogICAgICAgb3B1c19pbnQzMiB0ZWxsOwpAQCAt
MTQ0NSw4ICsxNTA3LDE1IEBAIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0
IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQsCiAgICAgICAgICBiID0gMDsKICAgICAg
IH0KIAorI2lmZGVmIEVOQUJMRV9VUERBVEVfRFJBRlQKKyAgICAgIGlmIChyZXN5bnRoICYmIChN
KmVCYW5kc1tpXS1OID49IE0qZUJhbmRzW3N0YXJ0XSB8fCBpPT1zdGFydCsxKSAmJiAodXBkYXRl
X2xvd2JhbmQgfHwgbG93YmFuZF9vZmZzZXQ9PTApKQorICAgICAgICAgICAgbG93YmFuZF9vZmZz
ZXQgPSBpOworICAgICAgaWYgKGkgPT0gc3RhcnQrMSkKKyAgICAgICAgIHNwZWNpYWxfaHlicmlk
X2ZvbGRpbmcobSwgbm9ybSwgbm9ybTIsIHN0YXJ0LCBNLCBkdWFsX3N0ZXJlbyk7CisjZWxzZQog
ICAgICAgaWYgKHJlc3ludGggJiYgTSplQmFuZHNbaV0tTiA+PSBNKmVCYW5kc1tzdGFydF0gJiYg
KHVwZGF0ZV9sb3diYW5kIHx8IGxvd2JhbmRfb2Zmc2V0PT0wKSkKICAgICAgICAgICAgIGxvd2Jh
bmRfb2Zmc2V0ID0gaTsKKyNlbmRpZgogCiAgICAgICB0Zl9jaGFuZ2UgPSB0Zl9yZXNbaV07CiAg
ICAgICBjdHgudGZfY2hhbmdlID0gdGZfY2hhbmdlOwpAQCAtMTQ1Nyw3ICsxNTI2LDcgQEAgdm9p
ZCBxdWFudF9hbGxfYmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFy
dCwgaW50IGVuZCwKICAgICAgICAgICAgIFkgPSBub3JtOwogICAgICAgICAgbG93YmFuZF9zY3Jh
dGNoID0gTlVMTDsKICAgICAgIH0KLSAgICAgIGlmIChpPT1lbmQtMSkKKyAgICAgIGlmIChsYXN0
ICYmICF0aGV0YV9yZG8pCiAgICAgICAgICBsb3diYW5kX3NjcmF0Y2ggPSBOVUxMOwogCiAgICAg
ICAvKiBHZXQgYSBjb25zZXJ2YXRpdmUgZXN0aW1hdGUgb2YgdGhlIGNvbGxhcHNlX21hc2sncyBm
b3IgdGhlIGJhbmRzIHdlJ3JlCkBAIC0xNDcyLDcgKzE1NDEsMTEgQEAgdm9pZCBxdWFudF9hbGxf
YmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwK
ICAgICAgICAgIGZvbGRfc3RhcnQgPSBsb3diYW5kX29mZnNldDsKICAgICAgICAgIHdoaWxlKE0q
ZUJhbmRzWy0tZm9sZF9zdGFydF0gPiBlZmZlY3RpdmVfbG93YmFuZCtub3JtX29mZnNldCk7CiAg
ICAgICAgICBmb2xkX2VuZCA9IGxvd2JhbmRfb2Zmc2V0LTE7CisjaWZkZWYgRU5BQkxFX1VQREFU
RV9EUkFGVAorICAgICAgICAgd2hpbGUoKytmb2xkX2VuZCA8IGkgJiYgTSplQmFuZHNbZm9sZF9l
bmRdIDwgZWZmZWN0aXZlX2xvd2JhbmQrbm9ybV9vZmZzZXQrTik7CisjZWxzZQogICAgICAgICAg
d2hpbGUoTSplQmFuZHNbKytmb2xkX2VuZF0gPCBlZmZlY3RpdmVfbG93YmFuZCtub3JtX29mZnNl
dCtOKTsKKyNlbmRpZgogICAgICAgICAgeF9jbSA9IHlfY20gPSAwOwogICAgICAgICAgZm9sZF9p
ID0gZm9sZF9zdGFydDsgZG8gewogICAgICAgICAgICB4X2NtIHw9IGNvbGxhcHNlX21hc2tzW2Zv
bGRfaSpDKzBdOwpAQCAtMTUwNSwxMyArMTU3OCw3NyBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhp
bnQgZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAogICAgICAg
fSBlbHNlIHsKICAgICAgICAgIGlmIChZIT1OVUxMKQogICAgICAgICAgewotICAgICAgICAgICAg
eF9jbSA9IHF1YW50X2JhbmRfc3RlcmVvKCZjdHgsIFgsIFksIE4sIGIsIEIsCi0gICAgICAgICAg
ICAgICAgICBlZmZlY3RpdmVfbG93YmFuZCAhPSAtMSA/IG5vcm0rZWZmZWN0aXZlX2xvd2JhbmQg
OiBOVUxMLCBMTSwKLSAgICAgICAgICAgICAgICAgICAgICAgIGxhc3Q/TlVMTDpub3JtK00qZUJh
bmRzW2ldLW5vcm1fb2Zmc2V0LCBsb3diYW5kX3NjcmF0Y2gsIHhfY218eV9jbSk7CisgICAgICAg
ICAgICBpZiAodGhldGFfcmRvICYmIGkgPCBpbnRlbnNpdHkpCisgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICBlY19jdHggZWNfc2F2ZSwgZWNfc2F2ZTI7CisgICAgICAgICAgICAgICBzdHJ1
Y3QgYmFuZF9jdHggY3R4X3NhdmUsIGN0eF9zYXZlMjsKKyAgICAgICAgICAgICAgIG9wdXNfdmFs
MzIgZGlzdDAsIGRpc3QxOworICAgICAgICAgICAgICAgdW5zaWduZWQgY20sIGNtMjsKKyAgICAg
ICAgICAgICAgIGludCBuc3RhcnRfYnl0ZXMsIG5lbmRfYnl0ZXMsIHNhdmVfYnl0ZXM7CisgICAg
ICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpieXRlc19idWY7CisgICAgICAgICAgICAgICB1bnNp
Z25lZCBjaGFyIGJ5dGVzX3NhdmVbMTI3NV07CisgICAgICAgICAgICAgICBvcHVzX3ZhbDE2IHdb
Ml07CisgICAgICAgICAgICAgICBjb21wdXRlX2NoYW5uZWxfd2VpZ2h0cyhiYW5kRVtpXSwgYmFu
ZEVbaSttLT5uYkVCYW5kc10sIHcpOworICAgICAgICAgICAgICAgLyogTWFrZSBhIGNvcHkuICov
CisgICAgICAgICAgICAgICBjbSA9IHhfY218eV9jbTsKKyAgICAgICAgICAgICAgIGVjX3NhdmUg
PSAqZWM7CisgICAgICAgICAgICAgICBjdHhfc2F2ZSA9IGN0eDsKKyAgICAgICAgICAgICAgIE9Q
VVNfQ09QWShYX3NhdmUsIFgsIE4pOworICAgICAgICAgICAgICAgT1BVU19DT1BZKFlfc2F2ZSwg
WSwgTik7CisgICAgICAgICAgICAgICAvKiBFbmNvZGUgYW5kIHJvdW5kIGRvd24uICovCisgICAg
ICAgICAgICAgICBjdHgudGhldGFfcm91bmQgPSAtMTsKKyAgICAgICAgICAgICAgIHhfY20gPSBx
dWFudF9iYW5kX3N0ZXJlbygmY3R4LCBYLCBZLCBOLCBiLCBCLAorICAgICAgICAgICAgICAgICAg
ICAgZWZmZWN0aXZlX2xvd2JhbmQgIT0gLTEgPyBub3JtK2VmZmVjdGl2ZV9sb3diYW5kIDogTlVM
TCwgTE0sCisgICAgICAgICAgICAgICAgICAgICBsYXN0P05VTEw6bm9ybStNKmVCYW5kc1tpXS1u
b3JtX29mZnNldCwgbG93YmFuZF9zY3JhdGNoLCBjbSk7CisgICAgICAgICAgICAgICBkaXN0MCA9
IE1VTFQxNl8zMl9RMTUod1swXSwgY2VsdF9pbm5lcl9wcm9kKFhfc2F2ZSwgWCwgTiwgYXJjaCkp
ICsgTVVMVDE2XzMyX1ExNSh3WzFdLCBjZWx0X2lubmVyX3Byb2QoWV9zYXZlLCBZLCBOLCBhcmNo
KSk7CisKKyAgICAgICAgICAgICAgIC8qIFNhdmUgZmlyc3QgcmVzdWx0LiAqLworICAgICAgICAg
ICAgICAgY20yID0geF9jbTsKKyAgICAgICAgICAgICAgIGVjX3NhdmUyID0gKmVjOworICAgICAg
ICAgICAgICAgY3R4X3NhdmUyID0gY3R4OworICAgICAgICAgICAgICAgT1BVU19DT1BZKFhfc2F2
ZTIsIFgsIE4pOworICAgICAgICAgICAgICAgT1BVU19DT1BZKFlfc2F2ZTIsIFksIE4pOworICAg
ICAgICAgICAgICAgaWYgKCFsYXN0KQorICAgICAgICAgICAgICAgICAgT1BVU19DT1BZKG5vcm1f
c2F2ZTIsIG5vcm0rTSplQmFuZHNbaV0tbm9ybV9vZmZzZXQsIE4pOworICAgICAgICAgICAgICAg
bnN0YXJ0X2J5dGVzID0gZWNfc2F2ZS5vZmZzOworICAgICAgICAgICAgICAgbmVuZF9ieXRlcyA9
IGVjX3NhdmUuc3RvcmFnZTsKKyAgICAgICAgICAgICAgIGJ5dGVzX2J1ZiA9IGVjX3NhdmUuYnVm
K25zdGFydF9ieXRlczsKKyAgICAgICAgICAgICAgIHNhdmVfYnl0ZXMgPSBuZW5kX2J5dGVzLW5z
dGFydF9ieXRlczsKKyAgICAgICAgICAgICAgIE9QVVNfQ09QWShieXRlc19zYXZlLCBieXRlc19i
dWYsIHNhdmVfYnl0ZXMpOworCisgICAgICAgICAgICAgICAvKiBSZXN0b3JlICovCisgICAgICAg
ICAgICAgICAqZWMgPSBlY19zYXZlOworICAgICAgICAgICAgICAgY3R4ID0gY3R4X3NhdmU7Cisg
ICAgICAgICAgICAgICBPUFVTX0NPUFkoWCwgWF9zYXZlLCBOKTsKKyAgICAgICAgICAgICAgIE9Q
VVNfQ09QWShZLCBZX3NhdmUsIE4pOworICAgICAgICAgICAgICAgaWYgKGkgPT0gc3RhcnQrMSkK
KyAgICAgICAgICAgICAgICAgIHNwZWNpYWxfaHlicmlkX2ZvbGRpbmcobSwgbm9ybSwgbm9ybTIs
IHN0YXJ0LCBNLCBkdWFsX3N0ZXJlbyk7CisgICAgICAgICAgICAgICAvKiBFbmNvZGUgYW5kIHJv
dW5kIHVwLiAqLworICAgICAgICAgICAgICAgY3R4LnRoZXRhX3JvdW5kID0gMTsKKyAgICAgICAg
ICAgICAgIHhfY20gPSBxdWFudF9iYW5kX3N0ZXJlbygmY3R4LCBYLCBZLCBOLCBiLCBCLAorICAg
ICAgICAgICAgICAgICAgICAgZWZmZWN0aXZlX2xvd2JhbmQgIT0gLTEgPyBub3JtK2VmZmVjdGl2
ZV9sb3diYW5kIDogTlVMTCwgTE0sCisgICAgICAgICAgICAgICAgICAgICBsYXN0P05VTEw6bm9y
bStNKmVCYW5kc1tpXS1ub3JtX29mZnNldCwgbG93YmFuZF9zY3JhdGNoLCBjbSk7CisgICAgICAg
ICAgICAgICBkaXN0MSA9IE1VTFQxNl8zMl9RMTUod1swXSwgY2VsdF9pbm5lcl9wcm9kKFhfc2F2
ZSwgWCwgTiwgYXJjaCkpICsgTVVMVDE2XzMyX1ExNSh3WzFdLCBjZWx0X2lubmVyX3Byb2QoWV9z
YXZlLCBZLCBOLCBhcmNoKSk7CisgICAgICAgICAgICAgICBpZiAoZGlzdDAgPj0gZGlzdDEpIHsK
KyAgICAgICAgICAgICAgICAgIHhfY20gPSBjbTI7CisgICAgICAgICAgICAgICAgICAqZWMgPSBl
Y19zYXZlMjsKKyAgICAgICAgICAgICAgICAgIGN0eCA9IGN0eF9zYXZlMjsKKyAgICAgICAgICAg
ICAgICAgIE9QVVNfQ09QWShYLCBYX3NhdmUyLCBOKTsKKyAgICAgICAgICAgICAgICAgIE9QVVNf
Q09QWShZLCBZX3NhdmUyLCBOKTsKKyAgICAgICAgICAgICAgICAgIGlmICghbGFzdCkKKyAgICAg
ICAgICAgICAgICAgICAgIE9QVVNfQ09QWShub3JtK00qZUJhbmRzW2ldLW5vcm1fb2Zmc2V0LCBu
b3JtX3NhdmUyLCBOKTsKKyAgICAgICAgICAgICAgICAgIE9QVVNfQ09QWShieXRlc19idWYsIGJ5
dGVzX3NhdmUsIHNhdmVfYnl0ZXMpOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgICAgIGN0eC50aGV0YV9yb3VuZCA9IDA7CisgICAgICAgICAgICAg
ICB4X2NtID0gcXVhbnRfYmFuZF9zdGVyZW8oJmN0eCwgWCwgWSwgTiwgYiwgQiwKKyAgICAgICAg
ICAgICAgICAgICAgIGVmZmVjdGl2ZV9sb3diYW5kICE9IC0xID8gbm9ybStlZmZlY3RpdmVfbG93
YmFuZCA6IE5VTEwsIExNLAorICAgICAgICAgICAgICAgICAgICAgbGFzdD9OVUxMOm5vcm0rTSpl
QmFuZHNbaV0tbm9ybV9vZmZzZXQsIGxvd2JhbmRfc2NyYXRjaCwgeF9jbXx5X2NtKTsKKyAgICAg
ICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICB4X2NtID0gcXVhbnRfYmFu
ZCgmY3R4LCBYLCBOLCBiLCBCLAogICAgICAgICAgICAgICAgICAgZWZmZWN0aXZlX2xvd2JhbmQg
IT0gLTEgPyBub3JtK2VmZmVjdGl2ZV9sb3diYW5kIDogTlVMTCwgTE0sCi0gICAgICAgICAgICAg
ICAgICAgICAgICBsYXN0P05VTEw6bm9ybStNKmVCYW5kc1tpXS1ub3JtX29mZnNldCwgUTE1T05F
LCBsb3diYW5kX3NjcmF0Y2gsIHhfY218eV9jbSk7CisgICAgICAgICAgICAgICAgICBsYXN0P05V
TEw6bm9ybStNKmVCYW5kc1tpXS1ub3JtX29mZnNldCwgUTE1T05FLCBsb3diYW5kX3NjcmF0Y2gs
IHhfY218eV9jbSk7CiAgICAgICAgICB9CiAgICAgICAgICB5X2NtID0geF9jbTsKICAgICAgIH0K
QEAgLTE1MjEsNiArMTY1OCw5IEBAIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNv
bnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQsCiAKICAgICAgIC8qIFVwZGF0ZSB0
aGUgZm9sZGluZyBwb3NpdGlvbiBvbmx5IGFzIGxvbmcgYXMgd2UgaGF2ZSAxIGJpdC9zYW1wbGUg
ZGVwdGguICovCiAgICAgICB1cGRhdGVfbG93YmFuZCA9IGI+KE48PEJJVFJFUyk7CisgICAgICAv
KiBXZSBvbmx5IG5lZWQgdG8gYXZvaWQgbm9pc2Ugb24gYSBzcGxpdCBmb3IgdGhlIGZpcnN0IGJh
bmQuIEFmdGVyIHRoYXQsIHdlCisgICAgICAgICBoYXZlIGZvbGRpbmcuICovCisgICAgICBjdHgu
YXZvaWRfc3BsaXRfbm9pc2UgPSAwOwogICAgfQogICAgKnNlZWQgPSBjdHguc2VlZDsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L2JhbmRzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYmFuZHMuaAppbmRleCBlOGJlZjRiYWQwZTBiMjU0
ZDkxMDYyYzM2YjdhYWUyNWQzMWRjNzhhLi4yNDg4YzE4NTIxMzBkNjVjMWU3NjBiZjU3ZWU4NWY2
NWVjMWJiM2IwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYmFuZHMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYmFuZHMuaApAQCAt
MzYsMTIgKzM2LDE1IEBACiAjaW5jbHVkZSAiZW50ZGVjLmgiCiAjaW5jbHVkZSAicmF0ZS5oIgog
CitvcHVzX2ludDE2IGJpdGV4YWN0X2NvcyhvcHVzX2ludDE2IHgpOworaW50IGJpdGV4YWN0X2xv
ZzJ0YW4oaW50IGlzaW4saW50IGljb3MpOworCiAvKiogQ29tcHV0ZSB0aGUgYW1wbGl0dWRlIChz
cXJ0IGVuZXJneSkgaW4gZWFjaCBvZiB0aGUgYmFuZHMKICAqIEBwYXJhbSBtIE1vZGUgZGF0YQog
ICogQHBhcmFtIFggU3BlY3RydW0KICAqIEBwYXJhbSBiYW5kRSBTcXVhcmUgcm9vdCBvZiB0aGUg
ZW5lcmd5IGZvciBlYWNoIGJhbmQgKHJldHVybmVkKQogICovCi12b2lkIGNvbXB1dGVfYmFuZF9l
bmVyZ2llcyhjb25zdCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9zaWcgKlgsIGNlbHRfZW5lciAq
YmFuZEUsIGludCBlbmQsIGludCBDLCBpbnQgTE0pOwordm9pZCBjb21wdXRlX2JhbmRfZW5lcmdp
ZXMoY29uc3QgQ0VMVE1vZGUgKm0sIGNvbnN0IGNlbHRfc2lnICpYLCBjZWx0X2VuZXIgKmJhbmRF
LCBpbnQgZW5kLCBpbnQgQywgaW50IExNLCBpbnQgYXJjaCk7CiAKIC8qdm9pZCBjb21wdXRlX25v
aXNlX2VuZXJnaWVzKGNvbnN0IENFTFRNb2RlICptLCBjb25zdCBjZWx0X3NpZyAqWCwgY29uc3Qg
b3B1c192YWwxNiAqdG9uYWxpdHksIGNlbHRfZW5lciAqYmFuZEUpOyovCiAKQEAgLTEwNSw3ICsx
MDgsNyBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhpbnQgZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAq
bSwgaW50IHN0YXJ0LCBpbnQgZW5kLAogICAgICAgY29uc3QgY2VsdF9lbmVyICpiYW5kRSwgaW50
ICpwdWxzZXMsIGludCBzaG9ydEJsb2NrcywgaW50IHNwcmVhZCwKICAgICAgIGludCBkdWFsX3N0
ZXJlbywgaW50IGludGVuc2l0eSwgaW50ICp0Zl9yZXMsIG9wdXNfaW50MzIgdG90YWxfYml0cywK
ICAgICAgIG9wdXNfaW50MzIgYmFsYW5jZSwgZWNfY3R4ICplYywgaW50IE0sIGludCBjb2RlZEJh
bmRzLCBvcHVzX3VpbnQzMiAqc2VlZCwKLSAgICAgIGludCBhcmNoKTsKKyAgICAgIGludCBjb21w
bGV4aXR5LCBpbnQgYXJjaCwgaW50IGRpc2FibGVfaW52KTsKIAogdm9pZCBhbnRpX2NvbGxhcHNl
KGNvbnN0IENFTFRNb2RlICptLCBjZWx0X25vcm0gKlhfLAogICAgICAgdW5zaWduZWQgY2hhciAq
Y29sbGFwc2VfbWFza3MsIGludCBMTSwgaW50IEMsIGludCBzaXplLCBpbnQgc3RhcnQsCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvY2VsdC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHQuYwppbmRleCBiMTIxYzUxYTFmYWE2NDg2MDcx
OTUwZWU0YTQ1OTVlZGEwNWU4YmM5Li45Y2UyMzQ2OTVjZTBkMzE0Mjc5MDIyODYxZGYxNWNhYmE1
MTkwZDgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0LmMKQEAgLTExMSwy
NiArMTExLDMxIEBAIHZvaWQgY29tYl9maWx0ZXJfY29uc3RfYyhvcHVzX3ZhbDMyICp5LCBvcHVz
X3ZhbDMyICp4LCBpbnQgVCwgaW50IE4sCiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHhbaV0sIGcx
MCwgeDIpOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTEsIEFERDMyKHgxLHgzKSk7CiAg
ICAgICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcxMiwgQUREMzIoeDAseDQpKTsKKyAgICAgIHQgPSBT
QVRVUkFURSh0LCBTSUdfU0FUKTsKICAgICAgIHlbaV0gPSB0OwogICAgICAgeDQ9U0hMMzIoeFtp
LVQrM10sMSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHhbaSsxXSwgZzEwLCB4MSk7CiAgICAg
ICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcxMSwgQUREMzIoeDAseDIpKTsKICAgICAgIHQgPSBNQUMx
Nl8zMl9RMTYodCwgZzEyLCBBREQzMih4NCx4MykpOworICAgICAgdCA9IFNBVFVSQVRFKHQsIFNJ
R19TQVQpOwogICAgICAgeVtpKzFdID0gdDsKICAgICAgIHgzPVNITDMyKHhbaS1UKzRdLDEpOwog
ICAgICAgdCA9IE1BQzE2XzMyX1ExNih4W2krMl0sIGcxMCwgeDApOwogICAgICAgdCA9IE1BQzE2
XzMyX1ExNih0LCBnMTEsIEFERDMyKHg0LHgxKSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHQs
IGcxMiwgQUREMzIoeDMseDIpKTsKKyAgICAgIHQgPSBTQVRVUkFURSh0LCBTSUdfU0FUKTsKICAg
ICAgIHlbaSsyXSA9IHQ7CiAgICAgICB4Mj1TSEwzMih4W2ktVCs1XSwxKTsKICAgICAgIHQgPSBN
QUMxNl8zMl9RMTYoeFtpKzNdLCBnMTAsIHg0KTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYodCwg
ZzExLCBBREQzMih4Myx4MCkpOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTIsIEFERDMy
KHgyLHgxKSk7CisgICAgICB0ID0gU0FUVVJBVEUodCwgU0lHX1NBVCk7CiAgICAgICB5W2krM10g
PSB0OwogICAgICAgeDE9U0hMMzIoeFtpLVQrNl0sMSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2
KHhbaSs0XSwgZzEwLCB4Myk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcxMSwgQUREMzIo
eDIseDQpKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYodCwgZzEyLCBBREQzMih4MSx4MCkpOwor
ICAgICAgdCA9IFNBVFVSQVRFKHQsIFNJR19TQVQpOwogICAgICAgeVtpKzRdID0gdDsKICAgIH0K
ICNpZmRlZiBDVVNUT01fTU9ERVMKQEAgLTE0MSw2ICsxNDYsNyBAQCB2b2lkIGNvbWJfZmlsdGVy
X2NvbnN0X2Mob3B1c192YWwzMiAqeSwgb3B1c192YWwzMiAqeCwgaW50IFQsIGludCBOLAogICAg
ICAgdCA9IE1BQzE2XzMyX1ExNih4W2ldLCBnMTAsIHgyKTsKICAgICAgIHQgPSBNQUMxNl8zMl9R
MTYodCwgZzExLCBBREQzMih4MSx4MykpOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTIs
IEFERDMyKHgwLHg0KSk7CisgICAgICB0ID0gU0FUVVJBVEUodCwgU0lHX1NBVCk7CiAgICAgICB5
W2ldID0gdDsKICAgICAgIHg0PXgzOwogICAgICAgeDM9eDI7CkBAIC0xNjksNiArMTc1LDcgQEAg
dm9pZCBjb21iX2ZpbHRlcl9jb25zdF9jKG9wdXNfdmFsMzIgKnksIG9wdXNfdmFsMzIgKngsIGlu
dCBULCBpbnQgTiwKICAgICAgICAgICAgICAgICsgTVVMVDE2XzMyX1ExNShnMTAseDIpCiAgICAg
ICAgICAgICAgICArIE1VTFQxNl8zMl9RMTUoZzExLEFERDMyKHgxLHgzKSkKICAgICAgICAgICAg
ICAgICsgTVVMVDE2XzMyX1ExNShnMTIsQUREMzIoeDAseDQpKTsKKyAgICAgIHlbaV0gPSBTQVRV
UkFURSh5W2ldLCBTSUdfU0FUKTsKICAgICAgIHg0PXgzOwogICAgICAgeDM9eDI7CiAgICAgICB4
Mj14MTsKQEAgLTIwMCw2ICsyMDcsMTAgQEAgdm9pZCBjb21iX2ZpbHRlcihvcHVzX3ZhbDMyICp5
LCBvcHVzX3ZhbDMyICp4LCBpbnQgVDAsIGludCBUMSwgaW50IE4sCiAgICAgICAgICBPUFVTX01P
VkUoeSwgeCwgTik7CiAgICAgICByZXR1cm47CiAgICB9CisgICAvKiBXaGVuIHRoZSBnYWluIGlz
IHplcm8sIFQwIGFuZC9vciBUMSBpcyBzZXQgdG8gemVyby4gV2UgbmVlZAorICAgICAgdG8gaGF2
ZSB0aGVuIGJlIGF0IGxlYXN0IDIgdG8gYXZvaWQgcHJvY2Vzc2luZyBnYXJiYWdlIGRhdGEuICov
CisgICBUMCA9IElNQVgoVDAsIENPTUJGSUxURVJfTUlOUEVSSU9EKTsKKyAgIFQxID0gSU1BWChU
MSwgQ09NQkZJTFRFUl9NSU5QRVJJT0QpOwogICAgZzAwID0gTVVMVDE2XzE2X1AxNShnMCwgZ2Fp
bnNbdGFwc2V0MF1bMF0pOwogICAgZzAxID0gTVVMVDE2XzE2X1AxNShnMCwgZ2FpbnNbdGFwc2V0
MF1bMV0pOwogICAgZzAyID0gTVVMVDE2XzE2X1AxNShnMCwgZ2FpbnNbdGFwc2V0MF1bMl0pOwpA
QCAtMjI1LDYgKzIzNiw3IEBAIHZvaWQgY29tYl9maWx0ZXIob3B1c192YWwzMiAqeSwgb3B1c192
YWwzMiAqeCwgaW50IFQwLCBpbnQgVDEsIGludCBOLAogICAgICAgICAgICAgICAgKyBNVUxUMTZf
MzJfUTE1KE1VTFQxNl8xNl9RMTUoZixnMTApLHgyKQogICAgICAgICAgICAgICAgKyBNVUxUMTZf
MzJfUTE1KE1VTFQxNl8xNl9RMTUoZixnMTEpLEFERDMyKHgxLHgzKSkKICAgICAgICAgICAgICAg
ICsgTVVMVDE2XzMyX1ExNShNVUxUMTZfMTZfUTE1KGYsZzEyKSxBREQzMih4MCx4NCkpOworICAg
ICAgeVtpXSA9IFNBVFVSQVRFKHlbaV0sIFNJR19TQVQpOwogICAgICAgeDQ9eDM7CiAgICAgICB4
Mz14MjsKICAgICAgIHgyPXgxOwpAQCAtMjQ0LDExICsyNTYsMTYgQEAgdm9pZCBjb21iX2ZpbHRl
cihvcHVzX3ZhbDMyICp5LCBvcHVzX3ZhbDMyICp4LCBpbnQgVDAsIGludCBUMSwgaW50IE4sCiB9
CiAjZW5kaWYgLyogT1ZFUlJJREVfY29tYl9maWx0ZXIgKi8KIAorLyogVEYgY2hhbmdlIHRhYmxl
LiBQb3NpdGl2ZSB2YWx1ZXMgbWVhbiBiZXR0ZXIgZnJlcXVlbmN5IHJlc29sdXRpb24gKGxvbmdl
cgorICAgZWZmZWN0aXZlIHdpbmRvdyksIHdoZXJlYXMgbmVnYXRpdmUgdmFsdWVzIG1lYW4gYmV0
dGVyIHRpbWUgcmVzb2x1dGlvbgorICAgKHNob3J0ZXIgZWZmZWN0aXZlIHdpbmRvdykuIFRoZSBz
ZWNvbmQgaW5kZXggaXMgY29tcHV0ZWQgYXM6CisgICA0KmlzVHJhbnNpZW50ICsgMip0Zl9zZWxl
Y3QgKyBwZXJfYmFuZF9mbGFnICovCiBjb25zdCBzaWduZWQgY2hhciB0Zl9zZWxlY3RfdGFibGVb
NF1bOF0gPSB7Ci0gICAgICB7MCwgLTEsIDAsIC0xLCAgICAwLC0xLCAwLC0xfSwKLSAgICAgIHsw
LCAtMSwgMCwgLTIsICAgIDEsIDAsIDEsLTF9LAotICAgICAgezAsIC0yLCAwLCAtMywgICAgMiwg
MCwgMSwtMX0sCi0gICAgICB7MCwgLTIsIDAsIC0zLCAgICAzLCAwLCAxLC0xfSwKKyAgICAvKmlz
VHJhbnNpZW50PTAgICAgIGlzVHJhbnNpZW50PTEgKi8KKyAgICAgIHswLCAtMSwgMCwgLTEsICAg
IDAsLTEsIDAsLTF9LCAvKiAyLjUgbXMgKi8KKyAgICAgIHswLCAtMSwgMCwgLTIsICAgIDEsIDAs
IDEsLTF9LCAvKiA1IG1zICovCisgICAgICB7MCwgLTIsIDAsIC0zLCAgICAyLCAwLCAxLC0xfSwg
LyogMTAgbXMgKi8KKyAgICAgIHswLCAtMiwgMCwgLTMsICAgIDMsIDAsIDEsLTF9LCAvKiAyMCBt
cyAqLwogfTsKIAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdC5oIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHQuaAppbmRleCBk
MWY3ZWI2OTBkYjNmNjQxMDQ3YjMxYmFjN2M0MTMyOGNmYmEzMDU4Li43MDE3NTMwMTAwYTNkOTA0
NTZiNzY2YTU1ODQ0NWRiOWFlNDMwODZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdC5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9jZWx0LmgKQEAgLTUwLDYgKzUwLDggQEAgZXh0ZXJuICJDIiB7CiAjZGVmaW5lIENFTFREZWNv
ZGVyIE9wdXNDdXN0b21EZWNvZGVyCiAjZGVmaW5lIENFTFRNb2RlIE9wdXNDdXN0b21Nb2RlCiAK
KyNkZWZpbmUgTEVBS19CQU5EUyAxOQorCiB0eXBlZGVmIHN0cnVjdCB7CiAgICBpbnQgdmFsaWQ7
CiAgICBmbG9hdCB0b25hbGl0eTsKQEAgLTU3LDE3ICs1OSwyNSBAQCB0eXBlZGVmIHN0cnVjdCB7
CiAgICBmbG9hdCBub2lzaW5lc3M7CiAgICBmbG9hdCBhY3Rpdml0eTsKICAgIGZsb2F0IG11c2lj
X3Byb2I7Ci0gICBpbnQgICAgICAgIGJhbmR3aWR0aDsKLX1BbmFseXNpc0luZm87CisgICBmbG9h
dCB2YWRfcHJvYjsKKyAgIGludCAgIGJhbmR3aWR0aDsKKyAgIGZsb2F0IGFjdGl2aXR5X3Byb2Jh
YmlsaXR5OworICAgLyogU3RvcmUgYXMgUTYgY2hhciB0byBzYXZlIHNwYWNlLiAqLworICAgdW5z
aWduZWQgY2hhciBsZWFrX2Jvb3N0W0xFQUtfQkFORFNdOworfSBBbmFseXNpc0luZm87CisKK3R5
cGVkZWYgc3RydWN0IHsKKyAgIGludCBzaWduYWxUeXBlOworICAgaW50IG9mZnNldDsKK30gU0lM
S0luZm87CiAKICNkZWZpbmUgX19jZWx0X2NoZWNrX21vZGVfcHRyX3B0cihwdHIpICgocHRyKSAr
ICgocHRyKSAtIChjb25zdCBDRUxUTW9kZSoqKShwdHIpKSkKIAogI2RlZmluZSBfX2NlbHRfY2hl
Y2tfYW5hbHlzaXNfcHRyKHB0cikgKChwdHIpICsgKChwdHIpIC0gKGNvbnN0IEFuYWx5c2lzSW5m
byopKHB0cikpKQogCi0vKiBFbmNvZGVyL2RlY29kZXIgUmVxdWVzdHMgKi8KKyNkZWZpbmUgX19j
ZWx0X2NoZWNrX3NpbGtpbmZvX3B0cihwdHIpICgocHRyKSArICgocHRyKSAtIChjb25zdCBTSUxL
SW5mbyopKHB0cikpKQogCi0vKiBFeHBvc2UgdGhpcyBvcHRpb24gYWdhaW4gd2hlbiB2YXJpYWJs
ZSBmcmFtZXNpemUgYWN0dWFsbHkgd29ya3MgKi8KLSNkZWZpbmUgT1BVU19GUkFNRVNJWkVfVkFS
SUFCTEUgICAgICAgICAgICAgIDUwMTAgLyoqPCBPcHRpbWl6ZSB0aGUgZnJhbWUgc2l6ZSBkeW5h
bWljYWxseSAqLworLyogRW5jb2Rlci9kZWNvZGVyIFJlcXVlc3RzICovCiAKIAogI2RlZmluZSBD
RUxUX1NFVF9QUkVESUNUSU9OX1JFUVVFU1QgICAgMTAwMDIKQEAgLTExNiw2ICsxMjYsOSBAQCB0
eXBlZGVmIHN0cnVjdCB7CiAjZGVmaW5lIE9QVVNfU0VUX0VORVJHWV9NQVNLX1JFUVVFU1QgICAg
MTAwMjYKICNkZWZpbmUgT1BVU19TRVRfRU5FUkdZX01BU0soeCkgT1BVU19TRVRfRU5FUkdZX01B
U0tfUkVRVUVTVCwgX19vcHVzX2NoZWNrX3ZhbDE2X3B0cih4KQogCisjZGVmaW5lIENFTFRfU0VU
X1NJTEtfSU5GT19SRVFVRVNUICAgIDEwMDI4CisjZGVmaW5lIENFTFRfU0VUX1NJTEtfSU5GTyh4
KSBDRUxUX1NFVF9TSUxLX0lORk9fUkVRVUVTVCwgX19jZWx0X2NoZWNrX3NpbGtpbmZvX3B0cih4
KQorCiAvKiBFbmNvZGVyIHN0dWZmICovCiAKIGludCBjZWx0X2VuY29kZXJfZ2V0X3NpemUoaW50
IGNoYW5uZWxzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2RlY29kZXIuYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2Rl
Y29kZXIuYwppbmRleCBiOTc4YmIzNGQxYjcwMTU4MTc2MzdjZDAxNzI0MjVhYThmYWJiNjBiLi41
NjdkNzQ1NjQ5Yjk4YWQ5YzY2MWZiZjUzZjczZDBhN2RhMGE3OGIwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
Y2VsdF9kZWNvZGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfZGVjb2Rlci5jCkBAIC03Myw2ICs3Myw3IEBA
IHN0cnVjdCBPcHVzQ3VzdG9tRGVjb2RlciB7CiAgICBpbnQgZG93bnNhbXBsZTsKICAgIGludCBz
dGFydCwgZW5kOwogICAgaW50IHNpZ25hbGxpbmc7CisgICBpbnQgZGlzYWJsZV9pbnY7CiAgICBp
bnQgYXJjaDsKIAogICAgLyogRXZlcnl0aGluZyBiZXlvbmQgdGhpcyBwb2ludCBnZXRzIGNsZWFy
ZWQgb24gYSByZXNldCAqLwpAQCAtMTYzLDYgKzE2NCwxMSBAQCBPUFVTX0NVU1RPTV9OT1NUQVRJ
QyBpbnQgb3B1c19jdXN0b21fZGVjb2Rlcl9pbml0KENFTFREZWNvZGVyICpzdCwgY29uc3QgQ0VM
VE1vZAogICAgc3QtPnN0YXJ0ID0gMDsKICAgIHN0LT5lbmQgPSBzdC0+bW9kZS0+ZWZmRUJhbmRz
OwogICAgc3QtPnNpZ25hbGxpbmcgPSAxOworI2lmZGVmIEVOQUJMRV9VUERBVEVfRFJBRlQKKyAg
IHN0LT5kaXNhYmxlX2ludiA9IGNoYW5uZWxzID09IDE7CisjZWxzZQorICAgc3QtPmRpc2FibGVf
aW52ID0gMDsKKyNlbmRpZgogICAgc3QtPmFyY2ggPSBvcHVzX3NlbGVjdF9hcmNoKCk7CiAKICAg
IG9wdXNfY3VzdG9tX2RlY29kZXJfY3RsKHN0LCBPUFVTX1JFU0VUX1NUQVRFKTsKQEAgLTE3Nyw2
ICsxODMsMzYgQEAgdm9pZCBvcHVzX2N1c3RvbV9kZWNvZGVyX2Rlc3Ryb3koQ0VMVERlY29kZXIg
KnN0KQogfQogI2VuZGlmIC8qIENVU1RPTV9NT0RFUyAqLwogCisjaWZuZGVmIENVU1RPTV9NT0RF
UworLyogU3BlY2lhbCBjYXNlIGZvciBzdGVyZW8gd2l0aCBubyBkb3duc2FtcGxpbmcgYW5kIG5v
IGFjY3VtdWxhdGlvbi4gVGhpcyBpcworICAgcXVpdGUgY29tbW9uIGFuZCB3ZSBjYW4gbWFrZSBp
dCBmYXN0ZXIgYnkgcHJvY2Vzc2luZyBib3RoIGNoYW5uZWxzIGluIHRoZQorICAgc2FtZSBsb29w
LCByZWR1Y2luZyBvdmVyaGVhZCBkdWUgdG8gdGhlIGRlcGVuZGVuY3kgbG9vcCBpbiB0aGUgSUlS
IGZpbHRlci4gKi8KK3N0YXRpYyB2b2lkIGRlZW1waGFzaXNfc3RlcmVvX3NpbXBsZShjZWx0X3Np
ZyAqaW5bXSwgb3B1c192YWwxNiAqcGNtLCBpbnQgTiwgY29uc3Qgb3B1c192YWwxNiBjb2VmMCwK
KyAgICAgIGNlbHRfc2lnICptZW0pCit7CisgICBjZWx0X3NpZyAqIE9QVVNfUkVTVFJJQ1QgeDA7
CisgICBjZWx0X3NpZyAqIE9QVVNfUkVTVFJJQ1QgeDE7CisgICBjZWx0X3NpZyBtMCwgbTE7Cisg
ICBpbnQgajsKKyAgIHgwPWluWzBdOworICAgeDE9aW5bMV07CisgICBtMCA9IG1lbVswXTsKKyAg
IG0xID0gbWVtWzFdOworICAgZm9yIChqPTA7ajxOO2orKykKKyAgIHsKKyAgICAgIGNlbHRfc2ln
IHRtcDAsIHRtcDE7CisgICAgICAvKiBBZGQgVkVSWV9TTUFMTCB0byB4W10gZmlyc3QgdG8gcmVk
dWNlIGRlcGVuZGVuY3kgY2hhaW4uICovCisgICAgICB0bXAwID0geDBbal0gKyBWRVJZX1NNQUxM
ICsgbTA7CisgICAgICB0bXAxID0geDFbal0gKyBWRVJZX1NNQUxMICsgbTE7CisgICAgICBtMCA9
IE1VTFQxNl8zMl9RMTUoY29lZjAsIHRtcDApOworICAgICAgbTEgPSBNVUxUMTZfMzJfUTE1KGNv
ZWYwLCB0bXAxKTsKKyAgICAgIHBjbVsyKmogIF0gPSBTQ0FMRU9VVChTSUcyV09SRDE2KHRtcDAp
KTsKKyAgICAgIHBjbVsyKmorMV0gPSBTQ0FMRU9VVChTSUcyV09SRDE2KHRtcDEpKTsKKyAgIH0K
KyAgIG1lbVswXSA9IG0wOworICAgbWVtWzFdID0gbTE7Cit9CisjZW5kaWYKIAogI2lmbmRlZiBS
RVNZTlRICiBzdGF0aWMKQEAgLTE5MCw2ICsyMjYsMTQgQEAgdm9pZCBkZWVtcGhhc2lzKGNlbHRf
c2lnICppbltdLCBvcHVzX3ZhbDE2ICpwY20sIGludCBOLCBpbnQgQywgaW50IGRvd25zYW1wbGUs
IGMKICAgIG9wdXNfdmFsMTYgY29lZjA7CiAgICBWQVJERUNMKGNlbHRfc2lnLCBzY3JhdGNoKTsK
ICAgIFNBVkVfU1RBQ0s7CisjaWZuZGVmIENVU1RPTV9NT0RFUworICAgLyogU2hvcnQgdmVyc2lv
biBmb3IgY29tbW9uIGNhc2UuICovCisgICBpZiAoZG93bnNhbXBsZSA9PSAxICYmIEMgPT0gMiAm
JiAhYWNjdW0pCisgICB7CisgICAgICBkZWVtcGhhc2lzX3N0ZXJlb19zaW1wbGUoaW4sIHBjbSwg
TiwgY29lZlswXSwgbWVtKTsKKyAgICAgIHJldHVybjsKKyAgIH0KKyNlbmRpZgogI2lmbmRlZiBG
SVhFRF9QT0lOVAogICAgKHZvaWQpYWNjdW07CiAgICBjZWx0X2Fzc2VydChhY2N1bT09MCk7CkBA
IC0yMjUsNyArMjY5LDcgQEAgdm9pZCBkZWVtcGhhc2lzKGNlbHRfc2lnICppbltdLCBvcHVzX3Zh
bDE2ICpwY20sIGludCBOLCBpbnQgQywgaW50IGRvd25zYW1wbGUsIGMKICAgICAgICAgIC8qIFNo
b3J0Y3V0IGZvciB0aGUgc3RhbmRhcmQgKG5vbi1jdXN0b20gbW9kZXMpIGNhc2UgKi8KICAgICAg
ICAgIGZvciAoaj0wO2o8TjtqKyspCiAgICAgICAgICB7Ci0gICAgICAgICAgICBjZWx0X3NpZyB0
bXAgPSB4W2pdICsgbSArIFZFUllfU01BTEw7CisgICAgICAgICAgICBjZWx0X3NpZyB0bXAgPSB4
W2pdICsgVkVSWV9TTUFMTCArIG07CiAgICAgICAgICAgICBtID0gTVVMVDE2XzMyX1ExNShjb2Vm
MCwgdG1wKTsKICAgICAgICAgICAgIHNjcmF0Y2hbal0gPSB0bXA7CiAgICAgICAgICB9CkBAIC0y
NDYsNyArMjkwLDcgQEAgdm9pZCBkZWVtcGhhc2lzKGNlbHRfc2lnICppbltdLCBvcHVzX3ZhbDE2
ICpwY20sIGludCBOLCBpbnQgQywgaW50IGRvd25zYW1wbGUsIGMKICAgICAgICAgIHsKICAgICAg
ICAgICAgIGZvciAoaj0wO2o8TjtqKyspCiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICBj
ZWx0X3NpZyB0bXAgPSB4W2pdICsgbSArIFZFUllfU01BTEw7CisgICAgICAgICAgICAgICBjZWx0
X3NpZyB0bXAgPSB4W2pdICsgVkVSWV9TTUFMTCArIG07CiAgICAgICAgICAgICAgICBtID0gTVVM
VDE2XzMyX1ExNShjb2VmMCwgdG1wKTsKICAgICAgICAgICAgICAgIHlbaipDXSA9IFNDQUxFT1VU
KFNJRzJXT1JEMTYodG1wKSk7CiAgICAgICAgICAgICB9CkBAIC0zMzMsNyArMzc3LDcgQEAgdm9p
ZCBjZWx0X3N5bnRoZXNpcyhjb25zdCBDRUxUTW9kZSAqbW9kZSwgY2VsdF9ub3JtICpYLCBjZWx0
X3NpZyAqIG91dF9zeW5bXSwKICAgICAgIGRlbm9ybWFsaXNlX2JhbmRzKG1vZGUsIFgrTiwgZnJl
cTIsIG9sZEJhbmRFK25iRUJhbmRzLCBzdGFydCwgZWZmRW5kLCBNLAogICAgICAgICAgICAgZG93
bnNhbXBsZSwgc2lsZW5jZSk7CiAgICAgICBmb3IgKGk9MDtpPE47aSsrKQotICAgICAgICAgZnJl
cVtpXSA9IEhBTEYzMihBREQzMihmcmVxW2ldLGZyZXEyW2ldKSk7CisgICAgICAgICBmcmVxW2ld
ID0gQUREMzIoSEFMRjMyKGZyZXFbaV0pLCBIQUxGMzIoZnJlcTJbaV0pKTsKICAgICAgIGZvciAo
Yj0wO2I8QjtiKyspCiAgICAgICAgICBjbHRfbWRjdF9iYWNrd2FyZCgmbW9kZS0+bWRjdCwgJmZy
ZXFbYl0sIG91dF9zeW5bMF0rTkIqYiwgbW9kZS0+d2luZG93LCBvdmVybGFwLCBzaGlmdCwgQiwg
YXJjaCk7CiAgICB9IGVsc2UgewpAQCAtMzQ1LDYgKzM4OSwxMiBAQCB2b2lkIGNlbHRfc3ludGhl
c2lzKGNvbnN0IENFTFRNb2RlICptb2RlLCBjZWx0X25vcm0gKlgsIGNlbHRfc2lnICogb3V0X3N5
bltdLAogICAgICAgICAgICAgY2x0X21kY3RfYmFja3dhcmQoJm1vZGUtPm1kY3QsICZmcmVxW2Jd
LCBvdXRfc3luW2NdK05CKmIsIG1vZGUtPndpbmRvdywgb3ZlcmxhcCwgc2hpZnQsIEIsIGFyY2gp
OwogICAgICAgfSB3aGlsZSAoKytjPENDKTsKICAgIH0KKyAgIC8qIFNhdHVyYXRlIElNRENUIG91
dHB1dCBzbyB0aGF0IHdlIGNhbid0IG92ZXJmbG93IGluIHRoZSBwaXRjaCBwb3N0ZmlsdGVyCisg
ICAgICBvciBpbiB0aGUgKi8KKyAgIGM9MDsgZG8geworICAgICAgZm9yIChpPTA7aTxOO2krKykK
KyAgICAgICAgIG91dF9zeW5bY11baV0gPSBTQVRVUkFURShvdXRfc3luW2NdW2ldLCBTSUdfU0FU
KTsKKyAgIH0gd2hpbGUgKCsrYzxDQyk7CiAgICBSRVNUT1JFX1NUQUNLOwogfQogCkBAIC01MDYs
MTAgKzU1NiwxMSBAQCBzdGF0aWMgdm9pZCBjZWx0X2RlY29kZV9sb3N0KENFTFREZWNvZGVyICog
T1BVU19SRVNUUklDVCBzdCwgaW50IE4sIGludCBMTSkKICAgIH0gZWxzZSB7CiAgICAgICAvKiBQ
aXRjaC1iYXNlZCBQTEMgKi8KICAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKndpbmRvdzsKKyAgICAg
IG9wdXNfdmFsMTYgKmV4YzsKICAgICAgIG9wdXNfdmFsMTYgZmFkZSA9IFExNU9ORTsKICAgICAg
IGludCBwaXRjaF9pbmRleDsKICAgICAgIFZBUkRFQ0wob3B1c192YWwzMiwgZXRtcCk7Ci0gICAg
ICBWQVJERUNMKG9wdXNfdmFsMTYsIGV4Yyk7CisgICAgICBWQVJERUNMKG9wdXNfdmFsMTYsIF9l
eGMpOwogCiAgICAgICBpZiAobG9zc19jb3VudCA9PSAwKQogICAgICAgewpAQCAtNTIwLDcgKzU3
MSw4IEBAIHN0YXRpYyB2b2lkIGNlbHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBPUFVTX1JF
U1RSSUNUIHN0LCBpbnQgTiwgaW50IExNKQogICAgICAgfQogCiAgICAgICBBTExPQyhldG1wLCBv
dmVybGFwLCBvcHVzX3ZhbDMyKTsKLSAgICAgIEFMTE9DKGV4YywgTUFYX1BFUklPRCwgb3B1c192
YWwxNik7CisgICAgICBBTExPQyhfZXhjLCBNQVhfUEVSSU9EK0xQQ19PUkRFUiwgb3B1c192YWwx
Nik7CisgICAgICBleGMgPSBfZXhjK0xQQ19PUkRFUjsKICAgICAgIHdpbmRvdyA9IG1vZGUtPndp
bmRvdzsKICAgICAgIGM9MDsgZG8gewogICAgICAgICAgb3B1c192YWwxNiBkZWNheTsKQEAgLTU2
MSw2ICs2MTMsMjMgQEAgc3RhdGljIHZvaWQgY2VsdF9kZWNvZGVfbG9zdChDRUxURGVjb2RlciAq
IE9QVVNfUkVTVFJJQ1Qgc3QsIGludCBOLCBpbnQgTE0pCiAjZW5kaWYKICAgICAgICAgICAgIH0K
ICAgICAgICAgICAgIF9jZWx0X2xwYyhscGMrYypMUENfT1JERVIsIGFjLCBMUENfT1JERVIpOwor
I2lmZGVmIEZJWEVEX1BPSU5UCisgICAgICAgICAvKiBGb3IgZml4ZWQtcG9pbnQsIGFwcGx5IGJh
bmR3aWR0aCBleHBhbnNpb24gdW50aWwgd2UgY2FuIGd1YXJhbnRlZSB0aGF0CisgICAgICAgICAg
ICBubyBvdmVyZmxvdyBjYW4gaGFwcGVuIGluIHRoZSBJSVIgZmlsdGVyLiBUaGlzIG1lYW5zOgor
ICAgICAgICAgICAgMzI3Njgqc3VtKGFicyhmaWx0ZXIpKSA8IDJeMzEgKi8KKyAgICAgICAgIHdo
aWxlICgxKSB7CisgICAgICAgICAgICBvcHVzX3ZhbDE2IHRtcD1RMTVPTkU7CisgICAgICAgICAg
ICBvcHVzX3ZhbDMyIHN1bT1RQ09OU1QxNigxLiwgU0lHX1NISUZUKTsKKyAgICAgICAgICAgIGZv
ciAoaT0wO2k8TFBDX09SREVSO2krKykKKyAgICAgICAgICAgICAgIHN1bSArPSBBQlMxNihscGNb
YypMUENfT1JERVIraV0pOworICAgICAgICAgICAgaWYgKHN1bSA8IDY1NTM1KSBicmVhazsKKyAg
ICAgICAgICAgIGZvciAoaT0wO2k8TFBDX09SREVSO2krKykKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgIHRtcCA9IE1VTFQxNl8xNl9RMTUoUUNPTlNUMTYoLjk5ZiwxNSksIHRtcCk7Cisg
ICAgICAgICAgICAgICBscGNbYypMUENfT1JERVIraV0gPSBNVUxUMTZfMTZfUTE1KGxwY1tjKkxQ
Q19PUkRFUitpXSwgdG1wKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgIH0KKyNlbmRpZgogICAg
ICAgICAgfQogICAgICAgICAgLyogV2Ugd2FudCB0aGUgZXhjaXRhdGlvbiBmb3IgMiBwaXRjaCBw
ZXJpb2RzIGluIG9yZGVyIHRvIGxvb2sgZm9yIGEKICAgICAgICAgICAgIGRlY2F5aW5nIHNpZ25h
bCwgYnV0IHdlIGNhbid0IGdldCBtb3JlIHRoYW4gTUFYX1BFUklPRC4gKi8KQEAgLTU2OCwxNSAr
NjM3LDE0IEBAIHN0YXRpYyB2b2lkIGNlbHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBPUFVT
X1JFU1RSSUNUIHN0LCBpbnQgTiwgaW50IExNKQogICAgICAgICAgLyogSW5pdGlhbGl6ZSB0aGUg
TFBDIGhpc3Rvcnkgd2l0aCB0aGUgc2FtcGxlcyBqdXN0IGJlZm9yZSB0aGUgc3RhcnQKICAgICAg
ICAgICAgIG9mIHRoZSByZWdpb24gZm9yIHdoaWNoIHdlJ3JlIGNvbXB1dGluZyB0aGUgZXhjaXRh
dGlvbi4gKi8KICAgICAgICAgIHsKLSAgICAgICAgICAgIG9wdXNfdmFsMTYgbHBjX21lbVtMUENf
T1JERVJdOwogICAgICAgICAgICAgZm9yIChpPTA7aTxMUENfT1JERVI7aSsrKQogICAgICAgICAg
ICAgewotICAgICAgICAgICAgICAgbHBjX21lbVtpXSA9Ci0gICAgICAgICAgICAgICAgICAgICBS
T1VORDE2KGJ1ZltERUNPREVfQlVGRkVSX1NJWkUtZXhjX2xlbmd0aC0xLWldLCBTSUdfU0hJRlQp
OworICAgICAgICAgICAgICAgZXhjW01BWF9QRVJJT0QtZXhjX2xlbmd0aC1MUENfT1JERVIraV0g
PQorICAgICAgICAgICAgICAgICAgICAgUk9VTkQxNihidWZbREVDT0RFX0JVRkZFUl9TSVpFLWV4
Y19sZW5ndGgtTFBDX09SREVSK2ldLCBTSUdfU0hJRlQpOwogICAgICAgICAgICAgfQogICAgICAg
ICAgICAgLyogQ29tcHV0ZSB0aGUgZXhjaXRhdGlvbiBmb3IgZXhjX2xlbmd0aCBzYW1wbGVzIGJl
Zm9yZSB0aGUgbG9zcy4gKi8KICAgICAgICAgICAgIGNlbHRfZmlyKGV4YytNQVhfUEVSSU9ELWV4
Y19sZW5ndGgsIGxwYytjKkxQQ19PUkRFUiwKLSAgICAgICAgICAgICAgICAgIGV4YytNQVhfUEVS
SU9ELWV4Y19sZW5ndGgsIGV4Y19sZW5ndGgsIExQQ19PUkRFUiwgbHBjX21lbSwgc3QtPmFyY2gp
OworICAgICAgICAgICAgICAgICAgZXhjK01BWF9QRVJJT0QtZXhjX2xlbmd0aCwgZXhjX2xlbmd0
aCwgTFBDX09SREVSLCBzdC0+YXJjaCk7CiAgICAgICAgICB9CiAKICAgICAgICAgIC8qIENoZWNr
IGlmIHRoZSB3YXZlZm9ybSBpcyBkZWNheWluZywgYW5kIGlmIHNvIGhvdyBmYXN0LgpAQCAtNjMw
LDkgKzY5OCw4IEBAIHN0YXRpYyB2b2lkIGNlbHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBP
UFVTX1JFU1RSSUNUIHN0LCBpbnQgTiwgaW50IExNKQogICAgICAgICAgICAgdG1wID0gUk9VTkQx
NigKICAgICAgICAgICAgICAgICAgIGJ1ZltERUNPREVfQlVGRkVSX1NJWkUtTUFYX1BFUklPRC1O
K2V4dHJhcG9sYXRpb25fb2Zmc2V0K2pdLAogICAgICAgICAgICAgICAgICAgU0lHX1NISUZUKTsK
LSAgICAgICAgICAgIFMxICs9IFNIUjMyKE1VTFQxNl8xNih0bXAsIHRtcCksIDgpOworICAgICAg
ICAgICAgUzEgKz0gU0hSMzIoTVVMVDE2XzE2KHRtcCwgdG1wKSwgMTApOwogICAgICAgICAgfQot
CiAgICAgICAgICB7CiAgICAgICAgICAgICBvcHVzX3ZhbDE2IGxwY19tZW1bTFBDX09SREVSXTsK
ICAgICAgICAgICAgIC8qIENvcHkgdGhlIGxhc3QgZGVjb2RlZCBzYW1wbGVzIChwcmlvciB0byB0
aGUgb3ZlcmxhcCByZWdpb24pIHRvCkBAIC02NDQsNiArNzExLDEwIEBAIHN0YXRpYyB2b2lkIGNl
bHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQgTiwgaW50
IExNKQogICAgICAgICAgICAgY2VsdF9paXIoYnVmK0RFQ09ERV9CVUZGRVJfU0laRS1OLCBscGMr
YypMUENfT1JERVIsCiAgICAgICAgICAgICAgICAgICBidWYrREVDT0RFX0JVRkZFUl9TSVpFLU4s
IGV4dHJhcG9sYXRpb25fbGVuLCBMUENfT1JERVIsCiAgICAgICAgICAgICAgICAgICBscGNfbWVt
LCBzdC0+YXJjaCk7CisjaWZkZWYgRklYRURfUE9JTlQKKyAgICAgICAgICAgIGZvciAoaT0wOyBp
IDwgZXh0cmFwb2xhdGlvbl9sZW47IGkrKykKKyAgICAgICAgICAgICAgIGJ1ZltERUNPREVfQlVG
RkVSX1NJWkUtTitpXSA9IFNBVFVSQVRFKGJ1ZltERUNPREVfQlVGRkVSX1NJWkUtTitpXSwgU0lH
X1NBVCk7CisjZW5kaWYKICAgICAgICAgIH0KIAogICAgICAgICAgLyogQ2hlY2sgaWYgdGhlIHN5
bnRoZXNpcyBlbmVyZ3kgaXMgaGlnaGVyIHRoYW4gZXhwZWN0ZWQsIHdoaWNoIGNhbgpAQCAtNjU0
LDcgKzcyNSw3IEBAIHN0YXRpYyB2b2lkIGNlbHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBP
UFVTX1JFU1RSSUNUIHN0LCBpbnQgTiwgaW50IExNKQogICAgICAgICAgICAgZm9yIChpPTA7aTxl
eHRyYXBvbGF0aW9uX2xlbjtpKyspCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBvcHVz
X3ZhbDE2IHRtcCA9IFJPVU5EMTYoYnVmW0RFQ09ERV9CVUZGRVJfU0laRS1OK2ldLCBTSUdfU0hJ
RlQpOwotICAgICAgICAgICAgICAgUzIgKz0gU0hSMzIoTVVMVDE2XzE2KHRtcCwgdG1wKSwgOCk7
CisgICAgICAgICAgICAgICBTMiArPSBTSFIzMihNVUxUMTZfMTYodG1wLCB0bXApLCAxMCk7CiAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICAvKiBUaGlzIGNoZWNrcyBmb3IgYW4gImV4cGxvc2lv
biIgaW4gdGhlIHN5bnRoZXNpcy4gKi8KICNpZmRlZiBGSVhFRF9QT0lOVApAQCAtOTc5LDcgKzEw
NTAsOCBAQCBpbnQgY2VsdF9kZWNvZGVfd2l0aF9lYyhDRUxURGVjb2RlciAqIE9QVVNfUkVTVFJJ
Q1Qgc3QsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmRhdAogCiAgICBxdWFudF9hbGxfYmFuZHMoMCwg
bW9kZSwgc3RhcnQsIGVuZCwgWCwgQz09MiA/IFgrTiA6IE5VTEwsIGNvbGxhcHNlX21hc2tzLAog
ICAgICAgICAgTlVMTCwgcHVsc2VzLCBzaG9ydEJsb2Nrcywgc3ByZWFkX2RlY2lzaW9uLCBkdWFs
X3N0ZXJlbywgaW50ZW5zaXR5LCB0Zl9yZXMsCi0gICAgICAgICBsZW4qKDg8PEJJVFJFUyktYW50
aV9jb2xsYXBzZV9yc3YsIGJhbGFuY2UsIGRlYywgTE0sIGNvZGVkQmFuZHMsICZzdC0+cm5nLCBz
dC0+YXJjaCk7CisgICAgICAgICBsZW4qKDg8PEJJVFJFUyktYW50aV9jb2xsYXBzZV9yc3YsIGJh
bGFuY2UsIGRlYywgTE0sIGNvZGVkQmFuZHMsICZzdC0+cm5nLCAwLAorICAgICAgICAgc3QtPmFy
Y2gsIHN0LT5kaXNhYmxlX2ludik7CiAKICAgIGlmIChhbnRpX2NvbGxhcHNlX3JzdiA+IDApCiAg
ICB7CkBAIC0xMjM0LDYgKzEzMDYsMjYgQEAgaW50IG9wdXNfY3VzdG9tX2RlY29kZXJfY3RsKENF
TFREZWNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICAg
ICp2YWx1ZT1zdC0+cm5nOwogICAgICAgfQogICAgICAgYnJlYWs7CisgICAgICBjYXNlIE9QVVNf
U0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUOgorICAgICAgeworICAgICAgICAg
IG9wdXNfaW50MzIgdmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50MzIpOworICAgICAgICAgIGlm
KHZhbHVlPDAgfHwgdmFsdWU+MSkKKyAgICAgICAgICB7CisgICAgICAgICAgICAgZ290byBiYWRf
YXJnOworICAgICAgICAgIH0KKyAgICAgICAgICBzdC0+ZGlzYWJsZV9pbnYgPSB2YWx1ZTsKKyAg
ICAgIH0KKyAgICAgIGJyZWFrOworICAgICAgY2FzZSBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05f
RElTQUJMRURfUkVRVUVTVDoKKyAgICAgIHsKKyAgICAgICAgICBvcHVzX2ludDMyICp2YWx1ZSA9
IHZhX2FyZyhhcCwgb3B1c19pbnQzMiopOworICAgICAgICAgIGlmICghdmFsdWUpCisgICAgICAg
ICAgeworICAgICAgICAgICAgIGdvdG8gYmFkX2FyZzsKKyAgICAgICAgICB9CisgICAgICAgICAg
KnZhbHVlID0gc3QtPmRpc2FibGVfaW52OworICAgICAgfQorICAgICAgYnJlYWs7CiAgICAgICBk
ZWZhdWx0OgogICAgICAgICAgZ290byBiYWRfcmVxdWVzdDsKICAgIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9jZWx0X2VuY29kZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2VuY29kZXIuYwppbmRleCAzZWU3YTRkM2Y3YTFk
Y2ViNzFlNmExYmVmMTQzMDZhYzlkMjE3YTMyLi4wNTNlNWEzYjI5MDBjMTZmMjkwN2ZiMDNiZTUz
N2NlM2I1YjEwOTJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9lbmNvZGVyLmMKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Nl
bHRfZW5jb2Rlci5jCkBAIC03Myw4ICs3Myw4IEBAIHN0cnVjdCBPcHVzQ3VzdG9tRW5jb2RlciB7
CiAgICBpbnQgY29uc3RyYWluZWRfdmJyOyAgICAgIC8qIElmIHplcm8sIFZCUiBjYW4gZG8gd2hh
dGV2ZXIgaXQgbGlrZXMgd2l0aCB0aGUgcmF0ZSAqLwogICAgaW50IGxvc3NfcmF0ZTsKICAgIGlu
dCBsc2JfZGVwdGg7Ci0gICBpbnQgdmFyaWFibGVfZHVyYXRpb247CiAgICBpbnQgbGZlOworICAg
aW50IGRpc2FibGVfaW52OwogICAgaW50IGFyY2g7CiAKICAgIC8qIEV2ZXJ5dGhpbmcgYmV5b25k
IHRoaXMgcG9pbnQgZ2V0cyBjbGVhcmVkIG9uIGEgcmVzZXQgKi8KQEAgLTk4LDYgKzk4LDcgQEAg
c3RydWN0IE9wdXNDdXN0b21FbmNvZGVyIHsKICNlbmRpZgogICAgaW50IGNvbnNlY190cmFuc2ll
bnQ7CiAgICBBbmFseXNpc0luZm8gYW5hbHlzaXM7CisgICBTSUxLSW5mbyBzaWxrX2luZm87CiAK
ICAgIG9wdXNfdmFsMzIgcHJlZW1waF9tZW1FWzJdOwogICAgb3B1c192YWwzMiBwcmVlbXBoX21l
bURbMl07CkBAIC0xMjMsNiArMTI0LDcgQEAgc3RydWN0IE9wdXNDdXN0b21FbmNvZGVyIHsKICAg
IC8qIG9wdXNfdmFsMTYgb2xkQmFuZEVbXSwgICAgIFNpemUgPSBjaGFubmVscyptb2RlLT5uYkVC
YW5kcyAqLwogICAgLyogb3B1c192YWwxNiBvbGRMb2dFW10sICAgICAgU2l6ZSA9IGNoYW5uZWxz
Km1vZGUtPm5iRUJhbmRzICovCiAgICAvKiBvcHVzX3ZhbDE2IG9sZExvZ0UyW10sICAgICBTaXpl
ID0gY2hhbm5lbHMqbW9kZS0+bmJFQmFuZHMgKi8KKyAgIC8qIG9wdXNfdmFsMTYgZW5lcmd5RXJy
b3JbXSwgIFNpemUgPSBjaGFubmVscyptb2RlLT5uYkVCYW5kcyAqLwogfTsKIAogaW50IGNlbHRf
ZW5jb2Rlcl9nZXRfc2l6ZShpbnQgY2hhbm5lbHMpCkBAIC0xMzYsOSArMTM4LDEwIEBAIE9QVVNf
Q1VTVE9NX05PU1RBVElDIGludCBvcHVzX2N1c3RvbV9lbmNvZGVyX2dldF9zaXplKGNvbnN0IENF
TFRNb2RlICptb2RlLCBpbnQKICAgIGludCBzaXplID0gc2l6ZW9mKHN0cnVjdCBDRUxURW5jb2Rl
cikKICAgICAgICAgICsgKGNoYW5uZWxzKm1vZGUtPm92ZXJsYXAtMSkqc2l6ZW9mKGNlbHRfc2ln
KSAgICAvKiBjZWx0X3NpZyBpbl9tZW1bY2hhbm5lbHMqbW9kZS0+b3ZlcmxhcF07ICovCiAgICAg
ICAgICArIGNoYW5uZWxzKkNPTUJGSUxURVJfTUFYUEVSSU9EKnNpemVvZihjZWx0X3NpZykgLyog
Y2VsdF9zaWcgcHJlZmlsdGVyX21lbVtjaGFubmVscypDT01CRklMVEVSX01BWFBFUklPRF07ICov
Ci0gICAgICAgICArIDMqY2hhbm5lbHMqbW9kZS0+bmJFQmFuZHMqc2l6ZW9mKG9wdXNfdmFsMTYp
OyAgLyogb3B1c192YWwxNiBvbGRCYW5kRVtjaGFubmVscyptb2RlLT5uYkVCYW5kc107ICovCisg
ICAgICAgICArIDQqY2hhbm5lbHMqbW9kZS0+bmJFQmFuZHMqc2l6ZW9mKG9wdXNfdmFsMTYpOyAg
Lyogb3B1c192YWwxNiBvbGRCYW5kRVtjaGFubmVscyptb2RlLT5uYkVCYW5kc107ICovCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
b3B1c192YWwxNiBvbGRMb2dFW2NoYW5uZWxzKm1vZGUtPm5iRUJhbmRzXTsgKi8KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvcHVz
X3ZhbDE2IG9sZExvZ0UyW2NoYW5uZWxzKm1vZGUtPm5iRUJhbmRzXTsgKi8KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvcHVzX3Zh
bDE2IGVuZXJneUVycm9yW2NoYW5uZWxzKm1vZGUtPm5iRUJhbmRzXTsgKi8KICAgIHJldHVybiBz
aXplOwogfQogCkBAIC0xNzgsNyArMTgxLDYgQEAgc3RhdGljIGludCBvcHVzX2N1c3RvbV9lbmNv
ZGVyX2luaXRfYXJjaChDRUxURW5jb2RlciAqc3QsIGNvbnN0IENFTFRNb2RlICptb2RlLAogICAg
c3QtPnN0YXJ0ID0gMDsKICAgIHN0LT5lbmQgPSBzdC0+bW9kZS0+ZWZmRUJhbmRzOwogICAgc3Qt
PnNpZ25hbGxpbmcgPSAxOwotCiAgICBzdC0+YXJjaCA9IGFyY2g7CiAKICAgIHN0LT5jb25zdHJh
aW5lZF92YnIgPSAxOwpAQCAtMjIzLDcgKzIyNSw4IEBAIHZvaWQgb3B1c19jdXN0b21fZW5jb2Rl
cl9kZXN0cm95KENFTFRFbmNvZGVyICpzdCkKIAogCiBzdGF0aWMgaW50IHRyYW5zaWVudF9hbmFs
eXNpcyhjb25zdCBvcHVzX3ZhbDMyICogT1BVU19SRVNUUklDVCBpbiwgaW50IGxlbiwgaW50IEMs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHVzX3ZhbDE2ICp0Zl9lc3RpbWF0ZSwg
aW50ICp0Zl9jaGFuKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B1c192YWwxNiAq
dGZfZXN0aW1hdGUsIGludCAqdGZfY2hhbiwgaW50IGFsbG93X3dlYWtfdHJhbnNpZW50cywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqd2Vha190cmFuc2llbnQpCiB7CiAgICBp
bnQgaTsKICAgIFZBUkRFQ0wob3B1c192YWwxNiwgdG1wKTsKQEAgLTIzMyw2ICsyMzYsMTIgQEAg
c3RhdGljIGludCB0cmFuc2llbnRfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVT
VFJJQ1QgaW4sIGludCBsZW4sIGludAogICAgaW50IGM7CiAgICBvcHVzX3ZhbDE2IHRmX21heDsK
ICAgIGludCBsZW4yOworICAgLyogRm9yd2FyZCBtYXNraW5nOiA2LjcgZEIvbXMuICovCisjaWZk
ZWYgRklYRURfUE9JTlQKKyAgIGludCBmb3J3YXJkX3NoaWZ0ID0gNDsKKyNlbHNlCisgICBvcHVz
X3ZhbDE2IGZvcndhcmRfZGVjYXkgPSBRQ09OU1QxNiguMDYyNWYsMTUpOworI2VuZGlmCiAgICAv
KiBUYWJsZSBvZiA2KjY0L3gsIHRyYWluZWQgb24gcmVhbCBkYXRhIHRvIG1pbmltaXplIHRoZSBh
dmVyYWdlIGVycm9yICovCiAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBpbnZfdGFibGVb
MTI4XSA9IHsKICAgICAgICAgIDI1NSwyNTUsMTU2LDExMCwgODYsIDcwLCA1OSwgNTEsIDQ1LCA0
MCwgMzcsIDMzLCAzMSwgMjgsIDI2LCAyNSwKQEAgLTI0Nyw2ICsyNTYsMTkgQEAgc3RhdGljIGlu
dCB0cmFuc2llbnRfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVTVFJJQ1QgaW4s
IGludCBsZW4sIGludAogICAgU0FWRV9TVEFDSzsKICAgIEFMTE9DKHRtcCwgbGVuLCBvcHVzX3Zh
bDE2KTsKIAorICAgKndlYWtfdHJhbnNpZW50ID0gMDsKKyAgIC8qIEZvciBsb3dlciBiaXRyYXRl
cywgbGV0J3MgYmUgbW9yZSBjb25zZXJ2YXRpdmUgYW5kIGhhdmUgYSBmb3J3YXJkIG1hc2tpbmcK
KyAgICAgIGRlY2F5IG9mIDMuMyBkQi9tcy4gVGhpcyBhdm9pZHMgaGF2aW5nIHRvIGNvZGUgdHJh
bnNpZW50cyBhdCB2ZXJ5IGxvdworICAgICAgYml0cmF0ZSAobW9zdGx5IGZvciBoeWJyaWQpLCB3
aGljaCBjYW4gcmVzdWx0IGluIHVuc3RhYmxlIGVuZXJneSBhbmQvb3IKKyAgICAgIHBhcnRpYWwg
Y29sbGFwc2UuICovCisgICBpZiAoYWxsb3dfd2Vha190cmFuc2llbnRzKQorICAgeworI2lmZGVm
IEZJWEVEX1BPSU5UCisgICAgICBmb3J3YXJkX3NoaWZ0ID0gNTsKKyNlbHNlCisgICAgICBmb3J3
YXJkX2RlY2F5ID0gUUNPTlNUMTYoLjAzMTI1ZiwxNSk7CisjZW5kaWYKKyAgIH0KICAgIGxlbjI9
bGVuLzI7CiAgICBmb3IgKGM9MDtjPEM7YysrKQogICAgewpAQCAtMjY5LDcgKzI5MSw3IEBAIHN0
YXRpYyBpbnQgdHJhbnNpZW50X2FuYWx5c2lzKGNvbnN0IG9wdXNfdmFsMzIgKiBPUFVTX1JFU1RS
SUNUIGluLCBpbnQgbGVuLCBpbnQKICAgICAgICAgIG1lbTAgPSBtZW0xICsgeSAtIDIqeDsKICAg
ICAgICAgIG1lbTEgPSB4IC0gLjVmKnk7CiAjZW5kaWYKLSAgICAgICAgIHRtcFtpXSA9IEVYVFJB
Q1QxNihTSFIzMih5LDIpKTsKKyAgICAgICAgIHRtcFtpXSA9IFNST1VORDE2KHksIDIpOwogICAg
ICAgICAgLypwcmludGYoIiVmICIsIHRtcFtpXSk7Ki8KICAgICAgIH0KICAgICAgIC8qcHJpbnRm
KCJcbiIpOyovCkBAIC0yODAsNyArMzAyLDcgQEAgc3RhdGljIGludCB0cmFuc2llbnRfYW5hbHlz
aXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGludCBsZW4sIGludAogICAg
ICAgLyogTm9ybWFsaXplIHRtcCB0byBtYXggcmFuZ2UgKi8KICAgICAgIHsKICAgICAgICAgIGlu
dCBzaGlmdD0wOwotICAgICAgICAgc2hpZnQgPSAxNC1jZWx0X2lsb2cyKDErY2VsdF9tYXhhYnMx
Nih0bXAsIGxlbikpOworICAgICAgICAgc2hpZnQgPSAxNC1jZWx0X2lsb2cyKE1BWDE2KDEsIGNl
bHRfbWF4YWJzMTYodG1wLCBsZW4pKSk7CiAgICAgICAgICBpZiAoc2hpZnQhPTApCiAgICAgICAg
ICB7CiAgICAgICAgICAgICBmb3IgKGk9MDtpPGxlbjtpKyspCkBAIC0yOTksOSArMzIxLDkgQEAg
c3RhdGljIGludCB0cmFuc2llbnRfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVT
VFJJQ1QgaW4sIGludCBsZW4sIGludAogICAgICAgICAgbWVhbiArPSB4MjsKICNpZmRlZiBGSVhF
RF9QT0lOVAogICAgICAgICAgLyogRklYTUU6IFVzZSBQU0hSMTYoKSBpbnN0ZWFkICovCi0gICAg
ICAgICB0bXBbaV0gPSBtZW0wICsgUFNIUjMyKHgyLW1lbTAsNCk7CisgICAgICAgICB0bXBbaV0g
PSBtZW0wICsgUFNIUjMyKHgyLW1lbTAsZm9yd2FyZF9zaGlmdCk7CiAjZWxzZQotICAgICAgICAg
dG1wW2ldID0gbWVtMCArIE1VTFQxNl8xNl9QMTUoUUNPTlNUMTYoLjA2MjVmLDE1KSx4Mi1tZW0w
KTsKKyAgICAgICAgIHRtcFtpXSA9IG1lbTAgKyBNVUxUMTZfMTZfUDE1KGZvcndhcmRfZGVjYXks
eDItbWVtMCk7CiAjZW5kaWYKICAgICAgICAgIG1lbTAgPSB0bXBbaV07CiAgICAgICB9CkBAIC0z
MTEsNiArMzMzLDcgQEAgc3RhdGljIGludCB0cmFuc2llbnRfYW5hbHlzaXMoY29uc3Qgb3B1c192
YWwzMiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGludCBsZW4sIGludAogICAgICAgLyogQmFja3dhcmQg
cGFzcyB0byBjb21wdXRlIHRoZSBwcmUtZWNobyB0aHJlc2hvbGQgKi8KICAgICAgIGZvciAoaT1s
ZW4yLTE7aT49MDtpLS0pCiAgICAgICB7CisgICAgICAgICAvKiBCYWNrd2FyZCBtYXNraW5nOiAx
My45IGRCL21zLiAqLwogI2lmZGVmIEZJWEVEX1BPSU5UCiAgICAgICAgICAvKiBGSVhNRTogVXNl
IFBTSFIxNigpIGluc3RlYWQgKi8KICAgICAgICAgIHRtcFtpXSA9IG1lbTAgKyBQU0hSMzIodG1w
W2ldLW1lbTAsMyk7CkBAIC0zNTksNyArMzgyLDEyIEBAIHN0YXRpYyBpbnQgdHJhbnNpZW50X2Fu
YWx5c2lzKGNvbnN0IG9wdXNfdmFsMzIgKiBPUFVTX1JFU1RSSUNUIGluLCBpbnQgbGVuLCBpbnQK
ICAgICAgIH0KICAgIH0KICAgIGlzX3RyYW5zaWVudCA9IG1hc2tfbWV0cmljPjIwMDsKLQorICAg
LyogRm9yIGxvdyBiaXRyYXRlcywgZGVmaW5lICJ3ZWFrIHRyYW5zaWVudHMiIHRoYXQgbmVlZCB0
byBiZQorICAgICAgaGFuZGxlZCBkaWZmZXJlbnRseSB0byBhdm9pZCBwYXJ0aWFsIGNvbGxhcHNl
LiAqLworICAgaWYgKGFsbG93X3dlYWtfdHJhbnNpZW50cyAmJiBpc190cmFuc2llbnQgJiYgbWFz
a19tZXRyaWM8NjAwKSB7CisgICAgICBpc190cmFuc2llbnQgPSAwOworICAgICAgKndlYWtfdHJh
bnNpZW50ID0gMTsKKyAgIH0KICAgIC8qIEFyYml0cmFyeSBtZXRyaWMgZm9yIFZCUiBib29zdCAq
LwogICAgdGZfbWF4ID0gTUFYMTYoMCxjZWx0X3NxcnQoMjcqbWFza19tZXRyaWMpLTQyKTsKICAg
IC8qICp0Zl9lc3RpbWF0ZSA9IDEgKyBNSU4xNigxLCBzcXJ0KE1BWDE2KDAsIHRmX21heC0zMCkp
LzIwKTsgKi8KQEAgLTU0OSw3ICs1NzcsNyBAQCBzdGF0aWMgb3B1c192YWwzMiBsMV9tZXRyaWMo
Y29uc3QgY2VsdF9ub3JtICp0bXAsIGludCBOLCBpbnQgTE0sIG9wdXNfdmFsMTYgYmlhcwogCiBz
dGF0aWMgaW50IHRmX2FuYWx5c2lzKGNvbnN0IENFTFRNb2RlICptLCBpbnQgbGVuLCBpbnQgaXNU
cmFuc2llbnQsCiAgICAgICBpbnQgKnRmX3JlcywgaW50IGxhbWJkYSwgY2VsdF9ub3JtICpYLCBp
bnQgTjAsIGludCBMTSwKLSAgICAgIGludCAqdGZfc3VtLCBvcHVzX3ZhbDE2IHRmX2VzdGltYXRl
LCBpbnQgdGZfY2hhbikKKyAgICAgIG9wdXNfdmFsMTYgdGZfZXN0aW1hdGUsIGludCB0Zl9jaGFu
KQogewogICAgaW50IGk7CiAgICBWQVJERUNMKGludCwgbWV0cmljKTsKQEAgLTU3NCw3ICs2MDIs
NiBAQCBzdGF0aWMgaW50IHRmX2FuYWx5c2lzKGNvbnN0IENFTFRNb2RlICptLCBpbnQgbGVuLCBp
bnQgaXNUcmFuc2llbnQsCiAgICBBTExPQyhwYXRoMCwgbGVuLCBpbnQpOwogICAgQUxMT0MocGF0
aDEsIGxlbiwgaW50KTsKIAotICAgKnRmX3N1bSA9IDA7CiAgICBmb3IgKGk9MDtpPGxlbjtpKysp
CiAgICB7CiAgICAgICBpbnQgaywgTjsKQEAgLTYyOSw3ICs2NTYsNiBAQCBzdGF0aWMgaW50IHRm
X2FuYWx5c2lzKGNvbnN0IENFTFRNb2RlICptLCBpbnQgbGVuLCBpbnQgaXNUcmFuc2llbnQsCiAg
ICAgICAgICBtZXRyaWNbaV0gPSAyKmJlc3RfbGV2ZWw7CiAgICAgICBlbHNlCiAgICAgICAgICBt
ZXRyaWNbaV0gPSAtMipiZXN0X2xldmVsOwotICAgICAgKnRmX3N1bSArPSAoaXNUcmFuc2llbnQg
PyBMTSA6IDApIC0gbWV0cmljW2ldLzI7CiAgICAgICAvKiBGb3IgYmFuZHMgdGhhdCBjYW4ndCBi
ZSBzcGxpdCB0byAtMSwgc2V0IHRoZSBtZXRyaWMgdG8gdGhlIGhhbGYtd2F5IHBvaW50IHRvIGF2
b2lkCiAgICAgICAgICBiaWFzaW5nIHRoZSBkZWNpc2lvbiAqLwogICAgICAgaWYgKG5hcnJvdyAm
JiAobWV0cmljW2ldPT0wIHx8IG1ldHJpY1tpXT09LTIqTE0pKQpAQCAtNzU0LDcgKzc4MCw3IEBA
IHN0YXRpYyB2b2lkIHRmX2VuY29kZShpbnQgc3RhcnQsIGludCBlbmQsIGludCBpc1RyYW5zaWVu
dCwgaW50ICp0Zl9yZXMsIGludCBMTSwKIHN0YXRpYyBpbnQgYWxsb2NfdHJpbV9hbmFseXNpcyhj
b25zdCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9ub3JtICpYLAogICAgICAgY29uc3Qgb3B1c192
YWwxNiAqYmFuZExvZ0UsIGludCBlbmQsIGludCBMTSwgaW50IEMsIGludCBOMCwKICAgICAgIEFu
YWx5c2lzSW5mbyAqYW5hbHlzaXMsIG9wdXNfdmFsMTYgKnN0ZXJlb19zYXZpbmcsIG9wdXNfdmFs
MTYgdGZfZXN0aW1hdGUsCi0gICAgICBpbnQgaW50ZW5zaXR5LCBvcHVzX3ZhbDE2IHN1cnJvdW5k
X3RyaW0sIGludCBhcmNoKQorICAgICAgaW50IGludGVuc2l0eSwgb3B1c192YWwxNiBzdXJyb3Vu
ZF90cmltLCBvcHVzX2ludDMyIGVxdWl2X3JhdGUsIGludCBhcmNoKQogewogICAgaW50IGk7CiAg
ICBvcHVzX3ZhbDMyIGRpZmY9MDsKQEAgLTc2Miw2ICs3ODgsMTQgQEAgc3RhdGljIGludCBhbGxv
Y190cmltX2FuYWx5c2lzKGNvbnN0IENFTFRNb2RlICptLCBjb25zdCBjZWx0X25vcm0gKlgsCiAg
ICBpbnQgdHJpbV9pbmRleDsKICAgIG9wdXNfdmFsMTYgdHJpbSA9IFFDT05TVDE2KDUuZiwgOCk7
CiAgICBvcHVzX3ZhbDE2IGxvZ1hDLCBsb2dYQzI7CisgICAvKiBBdCBsb3cgYml0cmF0ZSwgcmVk
dWNpbmcgdGhlIHRyaW0gc2VlbXMgdG8gaGVscC4gQXQgaGlnaGVyIGJpdHJhdGVzLCBpdCdzIGxl
c3MKKyAgICAgIGNsZWFyIHdoYXQncyBiZXN0LCBzbyB3ZSdyZSBrZWVwaW5nIGl0IGFzIGl0IHdh
cyBiZWZvcmUsIGF0IGxlYXN0IGZvciBub3cuICovCisgICBpZiAoZXF1aXZfcmF0ZSA8IDY0MDAw
KSB7CisgICAgICB0cmltID0gUUNPTlNUMTYoNC5mLCA4KTsKKyAgIH0gZWxzZSBpZiAoZXF1aXZf
cmF0ZSA8IDgwMDAwKSB7CisgICAgICBvcHVzX2ludDMyIGZyYWMgPSAoZXF1aXZfcmF0ZS02NDAw
MCkgPj4gMTA7CisgICAgICB0cmltID0gUUNPTlNUMTYoNC5mLCA4KSArIFFDT05TVDE2KDEuZi8x
Ni5mLCA4KSpmcmFjOworICAgfQogICAgaWYgKEM9PTIpCiAgICB7CiAgICAgICBvcHVzX3ZhbDE2
IHN1bSA9IDA7IC8qIFExMCAqLwpAQCAtODA5LDcgKzg0Myw3IEBAIHN0YXRpYyBpbnQgYWxsb2Nf
dHJpbV9hbmFseXNpcyhjb25zdCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9ub3JtICpYLAogICAg
fSB3aGlsZSAoKytjPEMpOwogICAgZGlmZiAvPSBDKihlbmQtMSk7CiAgICAvKnByaW50ZigiJWZc
biIsIGRpZmYpOyovCi0gICB0cmltIC09IE1BWDE2KC1RQ09OU1QxNigyLmYsIDgpLCBNSU4xNihR
Q09OU1QxNigyLmYsIDgpLCBTSFIxNihkaWZmK1FDT05TVDE2KDEuZiwgREJfU0hJRlQpLERCX1NI
SUZULTgpLzYgKSk7CisgICB0cmltIC09IE1BWDMyKC1RQ09OU1QxNigyLmYsIDgpLCBNSU4zMihR
Q09OU1QxNigyLmYsIDgpLCBTSFIzMihkaWZmK1FDT05TVDE2KDEuZiwgREJfU0hJRlQpLERCX1NI
SUZULTgpLzYgKSk7CiAgICB0cmltIC09IFNIUjE2KHN1cnJvdW5kX3RyaW0sIERCX1NISUZULTgp
OwogICAgdHJpbSAtPSAyKlNIUjE2KHRmX2VzdGltYXRlLCAxNC04KTsKICNpZm5kZWYgRElTQUJM
RV9GTE9BVF9BUEkKQEAgLTkzMCw3ICs5NjQsNyBAQCBzdGF0aWMgb3B1c192YWwxNiBtZWRpYW5f
b2ZfMyhjb25zdCBvcHVzX3ZhbDE2ICp4KQogc3RhdGljIG9wdXNfdmFsMTYgZHluYWxsb2NfYW5h
bHlzaXMoY29uc3Qgb3B1c192YWwxNiAqYmFuZExvZ0UsIGNvbnN0IG9wdXNfdmFsMTYgKmJhbmRM
b2dFMiwKICAgICAgIGludCBuYkVCYW5kcywgaW50IHN0YXJ0LCBpbnQgZW5kLCBpbnQgQywgaW50
ICpvZmZzZXRzLCBpbnQgbHNiX2RlcHRoLCBjb25zdCBvcHVzX2ludDE2ICpsb2dOLAogICAgICAg
aW50IGlzVHJhbnNpZW50LCBpbnQgdmJyLCBpbnQgY29uc3RyYWluZWRfdmJyLCBjb25zdCBvcHVz
X2ludDE2ICplQmFuZHMsIGludCBMTSwKLSAgICAgIGludCBlZmZlY3RpdmVCeXRlcywgb3B1c19p
bnQzMiAqdG90X2Jvb3N0XywgaW50IGxmZSwgb3B1c192YWwxNiAqc3Vycm91bmRfZHluYWxsb2Mp
CisgICAgICBpbnQgZWZmZWN0aXZlQnl0ZXMsIG9wdXNfaW50MzIgKnRvdF9ib29zdF8sIGludCBs
ZmUsIG9wdXNfdmFsMTYgKnN1cnJvdW5kX2R5bmFsbG9jLCBBbmFseXNpc0luZm8gKmFuYWx5c2lz
KQogewogICAgaW50IGksIGM7CiAgICBvcHVzX2ludDMyIHRvdF9ib29zdD0wOwpAQCAtMTAyMCwx
NCArMTA1NCwyNiBAQCBzdGF0aWMgb3B1c192YWwxNiBkeW5hbGxvY19hbmFseXNpcyhjb25zdCBv
cHVzX3ZhbDE2ICpiYW5kTG9nRSwgY29uc3Qgb3B1c192YWwxNgogICAgICAgfQogICAgICAgZm9y
IChpPXN0YXJ0O2k8ZW5kO2krKykKICAgICAgIHsKLSAgICAgICAgIGludCB3aWR0aDsKLSAgICAg
ICAgIGludCBib29zdDsKLSAgICAgICAgIGludCBib29zdF9iaXRzOwotCiAgICAgICAgICBpZiAo
aTw4KQogICAgICAgICAgICAgZm9sbG93ZXJbaV0gKj0gMjsKICAgICAgICAgIGlmIChpPj0xMikK
ICAgICAgICAgICAgIGZvbGxvd2VyW2ldID0gSEFMRjE2KGZvbGxvd2VyW2ldKTsKKyAgICAgIH0K
KyNpZmRlZiBESVNBQkxFX0ZMT0FUX0FQSQorICAgICAgKHZvaWQpYW5hbHlzaXM7CisjZWxzZQor
ICAgICAgaWYgKGFuYWx5c2lzLT52YWxpZCkKKyAgICAgIHsKKyAgICAgICAgIGZvciAoaT1zdGFy
dDtpPElNSU4oTEVBS19CQU5EUywgZW5kKTtpKyspCisgICAgICAgICAgICBmb2xsb3dlcltpXSA9
IGZvbGxvd2VyW2ldICsgIFFDT05TVDE2KDEuZi82NC5mLCBEQl9TSElGVCkqYW5hbHlzaXMtPmxl
YWtfYm9vc3RbaV07CisgICAgICB9CisjZW5kaWYKKyAgICAgIGZvciAoaT1zdGFydDtpPGVuZDtp
KyspCisgICAgICB7CisgICAgICAgICBpbnQgd2lkdGg7CisgICAgICAgICBpbnQgYm9vc3Q7Cisg
ICAgICAgICBpbnQgYm9vc3RfYml0czsKKwogICAgICAgICAgZm9sbG93ZXJbaV0gPSBNSU4xNihm
b2xsb3dlcltpXSwgUUNPTlNUMTYoNCwgREJfU0hJRlQpKTsKIAogICAgICAgICAgd2lkdGggPSBD
KihlQmFuZHNbaSsxXS1lQmFuZHNbaV0pPDxMTTsKQEAgLTEwNDIsMTEgKzEwODgsMTEgQEAgc3Rh
dGljIG9wdXNfdmFsMTYgZHluYWxsb2NfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwxNiAqYmFuZExv
Z0UsIGNvbnN0IG9wdXNfdmFsMTYKICAgICAgICAgICAgIGJvb3N0ID0gKGludClTSFIzMihFWFRF
TkQzMihmb2xsb3dlcltpXSkqd2lkdGgvNixEQl9TSElGVCk7CiAgICAgICAgICAgICBib29zdF9i
aXRzID0gYm9vc3QqNjw8QklUUkVTOwogICAgICAgICAgfQotICAgICAgICAgLyogRm9yIENCUiBh
bmQgbm9uLXRyYW5zaWVudCBDVkJSIGZyYW1lcywgbGltaXQgZHluYWxsb2MgdG8gMS80IG9mIHRo
ZSBiaXRzICovCisgICAgICAgICAvKiBGb3IgQ0JSIGFuZCBub24tdHJhbnNpZW50IENWQlIgZnJh
bWVzLCBsaW1pdCBkeW5hbGxvYyB0byAyLzMgb2YgdGhlIGJpdHMgKi8KICAgICAgICAgIGlmICgo
IXZiciB8fCAoY29uc3RyYWluZWRfdmJyJiYhaXNUcmFuc2llbnQpKQotICAgICAgICAgICAgICAg
JiYgKHRvdF9ib29zdCtib29zdF9iaXRzKT4+QklUUkVTPj4zID4gZWZmZWN0aXZlQnl0ZXMvNCkK
KyAgICAgICAgICAgICAgICYmICh0b3RfYm9vc3QrYm9vc3RfYml0cyk+PkJJVFJFUz4+MyA+IDIq
ZWZmZWN0aXZlQnl0ZXMvMykKICAgICAgICAgIHsKLSAgICAgICAgICAgIG9wdXNfaW50MzIgY2Fw
ID0gKChlZmZlY3RpdmVCeXRlcy80KTw8QklUUkVTPDwzKTsKKyAgICAgICAgICAgIG9wdXNfaW50
MzIgY2FwID0gKCgyKmVmZmVjdGl2ZUJ5dGVzLzMpPDxCSVRSRVM8PDMpOwogICAgICAgICAgICAg
b2Zmc2V0c1tpXSA9IGNhcC10b3RfYm9vc3Q7CiAgICAgICAgICAgICB0b3RfYm9vc3QgPSBjYXA7
CiAgICAgICAgICAgICBicmVhazsKQEAgLTExOTMsNyArMTIzOSw3IEBAIHN0YXRpYyBpbnQgY29t
cHV0ZV92YnIoY29uc3QgQ0VMVE1vZGUgKm1vZGUsIEFuYWx5c2lzSW5mbyAqYW5hbHlzaXMsIG9w
dXNfaW50MzIKICAgICAgIGludCBMTSwgb3B1c19pbnQzMiBiaXRyYXRlLCBpbnQgbGFzdENvZGVk
QmFuZHMsIGludCBDLCBpbnQgaW50ZW5zaXR5LAogICAgICAgaW50IGNvbnN0cmFpbmVkX3Ziciwg
b3B1c192YWwxNiBzdGVyZW9fc2F2aW5nLCBpbnQgdG90X2Jvb3N0LAogICAgICAgb3B1c192YWwx
NiB0Zl9lc3RpbWF0ZSwgaW50IHBpdGNoX2NoYW5nZSwgb3B1c192YWwxNiBtYXhEZXB0aCwKLSAg
ICAgIGludCB2YXJpYWJsZV9kdXJhdGlvbiwgaW50IGxmZSwgaW50IGhhc19zdXJyb3VuZF9tYXNr
LCBvcHVzX3ZhbDE2IHN1cnJvdW5kX21hc2tpbmcsCisgICAgICBpbnQgbGZlLCBpbnQgaGFzX3N1
cnJvdW5kX21hc2ssIG9wdXNfdmFsMTYgc3Vycm91bmRfbWFza2luZywKICAgICAgIG9wdXNfdmFs
MTYgdGVtcG9yYWxfdmJyKQogewogICAgLyogVGhlIHRhcmdldCByYXRlIGluIDh0aCBiaXRzIHBl
ciBmcmFtZSAqLwpAQCAtMTIzNSwxMCArMTI4MSw5IEBAIHN0YXRpYyBpbnQgY29tcHV0ZV92YnIo
Y29uc3QgQ0VMVE1vZGUgKm1vZGUsIEFuYWx5c2lzSW5mbyAqYW5hbHlzaXMsIG9wdXNfaW50MzIK
ICAgICAgICAgICAgICAgICAgICAgICBTSFIzMihNVUxUMTZfMTYoc3RlcmVvX3NhdmluZy1RQ09O
U1QxNigwLjFmLDgpLChjb2RlZF9zdGVyZW9fZG9mPDxCSVRSRVMpKSw4KSk7CiAgICB9CiAgICAv
KiBCb29zdCB0aGUgcmF0ZSBhY2NvcmRpbmcgdG8gZHluYWxsb2MgKG1pbnVzIHRoZSBkeW5hbGxv
YyBhdmVyYWdlIGZvciBjYWxpYnJhdGlvbikuICovCi0gICB0YXJnZXQgKz0gdG90X2Jvb3N0LSgx
Njw8TE0pOworICAgdGFyZ2V0ICs9IHRvdF9ib29zdC0oMTk8PExNKTsKICAgIC8qIEFwcGx5IHRy
YW5zaWVudCBib29zdCwgY29tcGVuc2F0aW5nIGZvciBhdmVyYWdlIGJvb3N0LiAqLwotICAgdGZf
Y2FsaWJyYXRpb24gPSB2YXJpYWJsZV9kdXJhdGlvbj09T1BVU19GUkFNRVNJWkVfVkFSSUFCTEUg
PwotICAgICAgICAgICAgICAgICAgICBRQ09OU1QxNigwLjAyZiwxNCkgOiBRQ09OU1QxNigwLjA0
ZiwxNCk7CisgICB0Zl9jYWxpYnJhdGlvbiA9IFFDT05TVDE2KDAuMDQ0ZiwxNCk7CiAgICB0YXJn
ZXQgKz0gKG9wdXNfaW50MzIpU0hMMzIoTVVMVDE2XzMyX1ExNSh0Zl9lc3RpbWF0ZS10Zl9jYWxp
YnJhdGlvbiwgdGFyZ2V0KSwxKTsKIAogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQpAQCAtMTI0
OSw3ICsxMjk0LDcgQEAgc3RhdGljIGludCBjb21wdXRlX3Zicihjb25zdCBDRUxUTW9kZSAqbW9k
ZSwgQW5hbHlzaXNJbmZvICphbmFseXNpcywgb3B1c19pbnQzMgogICAgICAgZmxvYXQgdG9uYWw7
CiAKICAgICAgIC8qIFRvbmFsaXR5IGJvb3N0IChjb21wZW5zYXRpbmcgZm9yIHRoZSBhdmVyYWdl
KS4gKi8KLSAgICAgIHRvbmFsID0gTUFYMTYoMC5mLGFuYWx5c2lzLT50b25hbGl0eS0uMTVmKS0w
LjA5ZjsKKyAgICAgIHRvbmFsID0gTUFYMTYoMC5mLGFuYWx5c2lzLT50b25hbGl0eS0uMTVmKS0w
LjEyZjsKICAgICAgIHRvbmFsX3RhcmdldCA9IHRhcmdldCArIChvcHVzX2ludDMyKSgoY29kZWRf
Ymluczw8QklUUkVTKSoxLjJmKnRvbmFsKTsKICAgICAgIGlmIChwaXRjaF9jaGFuZ2UpCiAgICAg
ICAgICB0b25hbF90YXJnZXQgKz0gIChvcHVzX2ludDMyKSgoY29kZWRfYmluczw8QklUUkVTKSou
OGYpOwpAQCAtMTI3OSwyMSArMTMyNCwxMSBAQCBzdGF0aWMgaW50IGNvbXB1dGVfdmJyKGNvbnN0
IENFTFRNb2RlICptb2RlLCBBbmFseXNpc0luZm8gKmFuYWx5c2lzLCBvcHVzX2ludDMyCiAgICAg
ICAvKnByaW50ZigiJWYgJWRcbiIsIG1heERlcHRoLCBmbG9vcl9kZXB0aCk7Ki8KICAgIH0KIAot
ICAgaWYgKCghaGFzX3N1cnJvdW5kX21hc2t8fGxmZSkgJiYgKGNvbnN0cmFpbmVkX3ZiciB8fCBi
aXRyYXRlPDY0MDAwKSkKKyAgIC8qIE1ha2UgVkJSIGxlc3MgYWdncmVzc2l2ZSBmb3IgY29uc3Ry
YWluZWQgVkJSIGJlY2F1c2Ugd2UgY2FuJ3Qga2VlcCBhIGhpZ2hlciBiaXRyYXRlCisgICAgICBm
b3IgbG9uZy4gTmVlZHMgdHVuaW5nLiAqLworICAgaWYgKCghaGFzX3N1cnJvdW5kX21hc2t8fGxm
ZSkgJiYgY29uc3RyYWluZWRfdmJyKQogICAgewotICAgICAgb3B1c192YWwxNiByYXRlX2ZhY3Rv
ciA9IFExNU9ORTsKLSAgICAgIGlmIChiaXRyYXRlIDwgNjQwMDApCi0gICAgICB7Ci0jaWZkZWYg
RklYRURfUE9JTlQKLSAgICAgICAgIHJhdGVfZmFjdG9yID0gTUFYMTYoMCwoYml0cmF0ZS0zMjAw
MCkpOwotI2Vsc2UKLSAgICAgICAgIHJhdGVfZmFjdG9yID0gTUFYMTYoMCwoMS5mLzMyNzY4KSoo
Yml0cmF0ZS0zMjAwMCkpOwotI2VuZGlmCi0gICAgICB9Ci0gICAgICBpZiAoY29uc3RyYWluZWRf
dmJyKQotICAgICAgICAgcmF0ZV9mYWN0b3IgPSBNSU4xNihyYXRlX2ZhY3RvciwgUUNPTlNUMTYo
MC42N2YsIDE1KSk7Ci0gICAgICB0YXJnZXQgPSBiYXNlX3RhcmdldCArIChvcHVzX2ludDMyKU1V
TFQxNl8zMl9RMTUocmF0ZV9mYWN0b3IsIHRhcmdldC1iYXNlX3RhcmdldCk7Ci0KKyAgICAgIHRh
cmdldCA9IGJhc2VfdGFyZ2V0ICsgKG9wdXNfaW50MzIpTVVMVDE2XzMyX1ExNShRQ09OU1QxNigw
LjY3ZiwgMTUpLCB0YXJnZXQtYmFzZV90YXJnZXQpOwogICAgfQogCiAgICBpZiAoIWhhc19zdXJy
b3VuZF9tYXNrICYmIHRmX2VzdGltYXRlIDwgUUNPTlNUMTYoLjJmLCAxNCkpCkBAIC0xMzMxLDcg
KzEzNjYsNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVT
VFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBWQVJERUNMKGludCwgdGZfcmVz
KTsKICAgIFZBUkRFQ0wodW5zaWduZWQgY2hhciwgY29sbGFwc2VfbWFza3MpOwogICAgY2VsdF9z
aWcgKnByZWZpbHRlcl9tZW07Ci0gICBvcHVzX3ZhbDE2ICpvbGRCYW5kRSwgKm9sZExvZ0UsICpv
bGRMb2dFMjsKKyAgIG9wdXNfdmFsMTYgKm9sZEJhbmRFLCAqb2xkTG9nRSwgKm9sZExvZ0UyLCAq
ZW5lcmd5RXJyb3I7CiAgICBpbnQgc2hvcnRCbG9ja3M9MDsKICAgIGludCBpc1RyYW5zaWVudD0w
OwogICAgY29uc3QgaW50IENDID0gc3QtPmNoYW5uZWxzOwpAQCAtMTM0Myw3ICsxMzc4LDYgQEAg
aW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBj
b25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgaW50IGVuZDsKICAgIGludCBlZmZFbmQ7CiAgICBp
bnQgY29kZWRCYW5kczsKLSAgIGludCB0Zl9zdW07CiAgICBpbnQgYWxsb2NfdHJpbTsKICAgIGlu
dCBwaXRjaF9pbmRleD1DT01CRklMVEVSX01JTlBFUklPRDsKICAgIG9wdXNfdmFsMTYgZ2FpbjEg
PSAwOwpAQCAtMTM1NSw2ICsxMzg5LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVu
Y29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgb3B1
c19pbnQzMiB0b3RhbF9ib29zdDsKICAgIG9wdXNfaW50MzIgYmFsYW5jZTsKICAgIG9wdXNfaW50
MzIgdGVsbDsKKyAgIG9wdXNfaW50MzIgdGVsbDBfZnJhYzsKICAgIGludCBwcmVmaWx0ZXJfdGFw
c2V0PTA7CiAgICBpbnQgcGZfb247CiAgICBpbnQgYW50aV9jb2xsYXBzZV9yc3Y7CkBAIC0xMzc2
LDcgKzE0MTEsOSBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNf
UkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBvcHVzX3ZhbDE2IHN1cnJv
dW5kX21hc2tpbmc9MDsKICAgIG9wdXNfdmFsMTYgdGVtcG9yYWxfdmJyPTA7CiAgICBvcHVzX3Zh
bDE2IHN1cnJvdW5kX3RyaW0gPSAwOwotICAgb3B1c19pbnQzMiBlcXVpdl9yYXRlID0gNTEwMDAw
OworICAgb3B1c19pbnQzMiBlcXVpdl9yYXRlOworICAgaW50IGh5YnJpZDsKKyAgIGludCB3ZWFr
X3RyYW5zaWVudCA9IDA7CiAgICBWQVJERUNMKG9wdXNfdmFsMTYsIHN1cnJvdW5kX2R5bmFsbG9j
KTsKICAgIEFMTE9DX1NUQUNLOwogCkBAIC0xMzg2LDYgKzE0MjMsNyBAQCBpbnQgY2VsdF9lbmNv
ZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFs
MTYgKiBwY20sCiAgICBlQmFuZHMgPSBtb2RlLT5lQmFuZHM7CiAgICBzdGFydCA9IHN0LT5zdGFy
dDsKICAgIGVuZCA9IHN0LT5lbmQ7CisgICBoeWJyaWQgPSBzdGFydCAhPSAwOwogICAgdGZfZXN0
aW1hdGUgPSAwOwogICAgaWYgKG5iQ29tcHJlc3NlZEJ5dGVzPDIgfHwgcGNtPT1OVUxMKQogICAg
ewpAQCAtMTQwOSwxMiArMTQ0NywxNCBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5j
b2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBvbGRC
YW5kRSA9IChvcHVzX3ZhbDE2Kikoc3QtPmluX21lbStDQyoob3ZlcmxhcCtDT01CRklMVEVSX01B
WFBFUklPRCkpOwogICAgb2xkTG9nRSA9IG9sZEJhbmRFICsgQ0MqbmJFQmFuZHM7CiAgICBvbGRM
b2dFMiA9IG9sZExvZ0UgKyBDQypuYkVCYW5kczsKKyAgIGVuZXJneUVycm9yID0gb2xkTG9nRTIg
KyBDQypuYkVCYW5kczsKIAogICAgaWYgKGVuYz09TlVMTCkKICAgIHsKLSAgICAgIHRlbGw9MTsK
KyAgICAgIHRlbGwwX2ZyYWM9dGVsbD0xOwogICAgICAgbmJGaWxsZWRCeXRlcz0wOwogICAgfSBl
bHNlIHsKKyAgICAgIHRlbGwwX2ZyYWM9dGVsbD1lY190ZWxsX2ZyYWMoZW5jKTsKICAgICAgIHRl
bGw9ZWNfdGVsbChlbmMpOwogICAgICAgbmJGaWxsZWRCeXRlcz0odGVsbCs0KT4+MzsKICAgIH0K
QEAgLTE0NjcsMTAgKzE1MDcsMTEgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29k
ZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgICAgaWYg
KHN0LT5iaXRyYXRlIT1PUFVTX0JJVFJBVEVfTUFYKQogICAgICAgICAgbmJDb21wcmVzc2VkQnl0
ZXMgPSBJTUFYKDIsIElNSU4obmJDb21wcmVzc2VkQnl0ZXMsCiAgICAgICAgICAgICAgICAodG1w
KzQqbW9kZS0+RnMpLyg4Km1vZGUtPkZzKS0hIXN0LT5zaWduYWxsaW5nKSk7Ci0gICAgICBlZmZl
Y3RpdmVCeXRlcyA9IG5iQ29tcHJlc3NlZEJ5dGVzOworICAgICAgZWZmZWN0aXZlQnl0ZXMgPSBu
YkNvbXByZXNzZWRCeXRlcyAtIG5iRmlsbGVkQnl0ZXM7CiAgICB9CisgICBlcXVpdl9yYXRlID0g
KChvcHVzX2ludDMyKW5iQ29tcHJlc3NlZEJ5dGVzKjgqNTAgPj4gKDMtTE0pKSAtICg0MCpDKzIw
KSooKDQwMD4+TE0pIC0gNTApOwogICAgaWYgKHN0LT5iaXRyYXRlICE9IE9QVVNfQklUUkFURV9N
QVgpCi0gICAgICBlcXVpdl9yYXRlID0gc3QtPmJpdHJhdGUgLSAoNDAqQysyMCkqKCg0MDA+PkxN
KSAtIDUwKTsKKyAgICAgIGVxdWl2X3JhdGUgPSBJTUlOKGVxdWl2X3JhdGUsIHN0LT5iaXRyYXRl
IC0gKDQwKkMrMjApKigoNDAwPj5MTSkgLSA1MCkpOwogCiAgICBpZiAoZW5jPT1OVUxMKQogICAg
ewpAQCAtMTU1OCw4ICsxNTk5LDggQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29k
ZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgewogICAg
ICAgaW50IGVuYWJsZWQ7CiAgICAgICBpbnQgcWc7Ci0gICAgICBlbmFibGVkID0gKChzdC0+bGZl
JiZuYkF2YWlsYWJsZUJ5dGVzPjMpIHx8IG5iQXZhaWxhYmxlQnl0ZXM+MTIqQykgJiYgc3RhcnQ9
PTAgJiYgIXNpbGVuY2UgJiYgIXN0LT5kaXNhYmxlX3BmCi0gICAgICAgICAgICAmJiBzdC0+Y29t
cGxleGl0eSA+PSA1ICYmICEoc3QtPmNvbnNlY190cmFuc2llbnQgJiYgTE0hPTMgJiYgc3QtPnZh
cmlhYmxlX2R1cmF0aW9uPT1PUFVTX0ZSQU1FU0laRV9WQVJJQUJMRSk7CisgICAgICBlbmFibGVk
ID0gKChzdC0+bGZlJiZuYkF2YWlsYWJsZUJ5dGVzPjMpIHx8IG5iQXZhaWxhYmxlQnl0ZXM+MTIq
QykgJiYgIWh5YnJpZCAmJiAhc2lsZW5jZSAmJiAhc3QtPmRpc2FibGVfcGYKKyAgICAgICAgICAg
ICYmIHN0LT5jb21wbGV4aXR5ID49IDU7CiAKICAgICAgIHByZWZpbHRlcl90YXBzZXQgPSBzdC0+
dGFwc2V0X2RlY2lzaW9uOwogICAgICAgcGZfb24gPSBydW5fcHJlZmlsdGVyKHN0LCBpbiwgcHJl
ZmlsdGVyX21lbSwgQ0MsIE4sIHByZWZpbHRlcl90YXBzZXQsICZwaXRjaF9pbmRleCwgJmdhaW4x
LCAmcWcsIGVuYWJsZWQsIG5iQXZhaWxhYmxlQnl0ZXMpOwpAQCAtMTU2OCw3ICsxNjA5LDcgQEAg
aW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBj
b25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgICAgICAgcGl0Y2hfY2hhbmdlID0gMTsKICAgICAg
IGlmIChwZl9vbj09MCkKICAgICAgIHsKLSAgICAgICAgIGlmKHN0YXJ0PT0wICYmIHRlbGwrMTY8
PXRvdGFsX2JpdHMpCisgICAgICAgICBpZighaHlicmlkICYmIHRlbGwrMTY8PXRvdGFsX2JpdHMp
CiAgICAgICAgICAgICBlY19lbmNfYml0X2xvZ3AoZW5jLCAwLCAxKTsKICAgICAgIH0gZWxzZSB7
CiAgICAgICAgICAvKlRoaXMgYmxvY2sgaXMgbm90IGdhdGVkIGJ5IGEgdG90YWwgYml0cyBjaGVj
ayBvbmx5IGJlY2F1c2UKQEAgLTE1ODksOCArMTYzMCwxMiBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0
aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBw
Y20sCiAgICBzaG9ydEJsb2NrcyA9IDA7CiAgICBpZiAoc3QtPmNvbXBsZXhpdHkgPj0gMSAmJiAh
c3QtPmxmZSkKICAgIHsKKyAgICAgIC8qIFJlZHVjZXMgdGhlIGxpa2VsaWhvb2Qgb2YgZW5lcmd5
IGluc3RhYmlsaXR5IG9uIGZyaWNhdGl2ZXMgYXQgbG93IGJpdHJhdGUKKyAgICAgICAgIGluIGh5
YnJpZCBtb2RlLiBJdCBzZWVtcyBsaWtlIHdlIHN0aWxsIHdhbnQgdG8gaGF2ZSByZWFsIHRyYW5z
aWVudHMgb24gdm93ZWxzCisgICAgICAgICB0aG91Z2ggKHNtYWxsIFNJTEsgcXVhbnRpemF0aW9u
IG9mZnNldCB2YWx1ZSkuICovCisgICAgICBpbnQgYWxsb3dfd2Vha190cmFuc2llbnRzID0gaHli
cmlkICYmIGVmZmVjdGl2ZUJ5dGVzPDE1ICYmIHN0LT5zaWxrX2luZm8ub2Zmc2V0ID49IDEwMDsK
ICAgICAgIGlzVHJhbnNpZW50ID0gdHJhbnNpZW50X2FuYWx5c2lzKGluLCBOK292ZXJsYXAsIEND
LAotICAgICAgICAgICAgJnRmX2VzdGltYXRlLCAmdGZfY2hhbik7CisgICAgICAgICAgICAmdGZf
ZXN0aW1hdGUsICZ0Zl9jaGFuLCBhbGxvd193ZWFrX3RyYW5zaWVudHMsICZ3ZWFrX3RyYW5zaWVu
dCk7CiAgICB9CiAgICBpZiAoTE0+MCAmJiBlY190ZWxsKGVuYykrMzw9dG90YWxfYml0cykKICAg
IHsKQEAgLTE2MTAsNyArMTY1NSw3IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNv
ZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgIGlmIChz
ZWNvbmRNZGN0KQogICAgewogICAgICAgY29tcHV0ZV9tZGN0cyhtb2RlLCAwLCBpbiwgZnJlcSwg
QywgQ0MsIExNLCBzdC0+dXBzYW1wbGUsIHN0LT5hcmNoKTsKLSAgICAgIGNvbXB1dGVfYmFuZF9l
bmVyZ2llcyhtb2RlLCBmcmVxLCBiYW5kRSwgZWZmRW5kLCBDLCBMTSk7CisgICAgICBjb21wdXRl
X2JhbmRfZW5lcmdpZXMobW9kZSwgZnJlcSwgYmFuZEUsIGVmZkVuZCwgQywgTE0sIHN0LT5hcmNo
KTsKICAgICAgIGFtcDJMb2cyKG1vZGUsIGVmZkVuZCwgZW5kLCBiYW5kRSwgYmFuZExvZ0UyLCBD
KTsKICAgICAgIGZvciAoaT0wO2k8QypuYkVCYW5kcztpKyspCiAgICAgICAgICBiYW5kTG9nRTJb
aV0gKz0gSEFMRjE2KFNITDE2KExNLCBEQl9TSElGVCkpOwpAQCAtMTYxOSw3ICsxNjY0LDcgQEAg
aW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBj
b25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgY29tcHV0ZV9tZGN0cyhtb2RlLCBzaG9ydEJsb2Nr
cywgaW4sIGZyZXEsIEMsIENDLCBMTSwgc3QtPnVwc2FtcGxlLCBzdC0+YXJjaCk7CiAgICBpZiAo
Q0M9PTImJkM9PTEpCiAgICAgICB0Zl9jaGFuID0gMDsKLSAgIGNvbXB1dGVfYmFuZF9lbmVyZ2ll
cyhtb2RlLCBmcmVxLCBiYW5kRSwgZWZmRW5kLCBDLCBMTSk7CisgICBjb21wdXRlX2JhbmRfZW5l
cmdpZXMobW9kZSwgZnJlcSwgYmFuZEUsIGVmZkVuZCwgQywgTE0sIHN0LT5hcmNoKTsKIAogICAg
aWYgKHN0LT5sZmUpCiAgICB7CkBAIC0xNjM0LDcgKzE2NzksNyBAQCBpbnQgY2VsdF9lbmNvZGVf
d2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYg
KiBwY20sCiAgICBBTExPQyhzdXJyb3VuZF9keW5hbGxvYywgQypuYkVCYW5kcywgb3B1c192YWwx
Nik7CiAgICBPUFVTX0NMRUFSKHN1cnJvdW5kX2R5bmFsbG9jLCBlbmQpOwogICAgLyogVGhpcyBj
b21wdXRlcyBob3cgbXVjaCBtYXNraW5nIHRha2VzIHBsYWNlIGJldHdlZW4gc3Vycm91bmQgY2hh
bm5lbHMgKi8KLSAgIGlmIChzdGFydD09MCYmc3QtPmVuZXJneV9tYXNrJiYhc3QtPmxmZSkKKyAg
IGlmICghaHlicmlkJiZzdC0+ZW5lcmd5X21hc2smJiFzdC0+bGZlKQogICAgewogICAgICAgaW50
IG1hc2tfZW5kOwogICAgICAgaW50IG1pZGJhbmQ7CkBAIC0xNzM2LDE0ICsxNzgxLDE0IEBAIGlu
dCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29u
c3Qgb3B1c192YWwxNiAqIHBjbSwKIAogICAgLyogTGFzdCBjaGFuY2UgdG8gY2F0Y2ggYW55IHRy
YW5zaWVudCB3ZSBtaWdodCBoYXZlIG1pc3NlZCBpbiB0aGUKICAgICAgIHRpbWUtZG9tYWluIGFu
YWx5c2lzICovCi0gICBpZiAoTE0+MCAmJiBlY190ZWxsKGVuYykrMzw9dG90YWxfYml0cyAmJiAh
aXNUcmFuc2llbnQgJiYgc3QtPmNvbXBsZXhpdHk+PTUgJiYgIXN0LT5sZmUpCisgICBpZiAoTE0+
MCAmJiBlY190ZWxsKGVuYykrMzw9dG90YWxfYml0cyAmJiAhaXNUcmFuc2llbnQgJiYgc3QtPmNv
bXBsZXhpdHk+PTUgJiYgIXN0LT5sZmUgJiYgIWh5YnJpZCkKICAgIHsKICAgICAgIGlmIChwYXRj
aF90cmFuc2llbnRfZGVjaXNpb24oYmFuZExvZ0UsIG9sZEJhbmRFLCBuYkVCYW5kcywgc3RhcnQs
IGVuZCwgQykpCiAgICAgICB7CiAgICAgICAgICBpc1RyYW5zaWVudCA9IDE7CiAgICAgICAgICBz
aG9ydEJsb2NrcyA9IE07CiAgICAgICAgICBjb21wdXRlX21kY3RzKG1vZGUsIHNob3J0QmxvY2tz
LCBpbiwgZnJlcSwgQywgQ0MsIExNLCBzdC0+dXBzYW1wbGUsIHN0LT5hcmNoKTsKLSAgICAgICAg
IGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhtb2RlLCBmcmVxLCBiYW5kRSwgZWZmRW5kLCBDLCBMTSk7
CisgICAgICAgICBjb21wdXRlX2JhbmRfZW5lcmdpZXMobW9kZSwgZnJlcSwgYmFuZEUsIGVmZkVu
ZCwgQywgTE0sIHN0LT5hcmNoKTsKICAgICAgICAgIGFtcDJMb2cyKG1vZGUsIGVmZkVuZCwgZW5k
LCBiYW5kRSwgYmFuZExvZ0UsIEMpOwogICAgICAgICAgLyogQ29tcGVuc2F0ZSBmb3IgdGhlIHNj
YWxpbmcgb2Ygc2hvcnQgdnMgbG9uZyBtZGN0cyAqLwogICAgICAgICAgZm9yIChpPTA7aTxDKm5i
RUJhbmRzO2krKykKQEAgLTE3NjIsMjkgKzE4MDcsNDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhf
ZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNt
LAogCiAgICBBTExPQyh0Zl9yZXMsIG5iRUJhbmRzLCBpbnQpOwogICAgLyogRGlzYWJsZSB2YXJp
YWJsZSB0ZiByZXNvbHV0aW9uIGZvciBoeWJyaWQgYW5kIGF0IHZlcnkgbG93IGJpdHJhdGUgKi8K
LSAgIGlmIChlZmZlY3RpdmVCeXRlcz49MTUqQyAmJiBzdGFydD09MCAmJiBzdC0+Y29tcGxleGl0
eT49MiAmJiAhc3QtPmxmZSkKKyAgIGlmIChlZmZlY3RpdmVCeXRlcz49MTUqQyAmJiAhaHlicmlk
ICYmIHN0LT5jb21wbGV4aXR5Pj0yICYmICFzdC0+bGZlKQogICAgewogICAgICAgaW50IGxhbWJk
YTsKLSAgICAgIGlmIChlZmZlY3RpdmVCeXRlczw0MCkKLSAgICAgICAgIGxhbWJkYSA9IDEyOwot
ICAgICAgZWxzZSBpZiAoZWZmZWN0aXZlQnl0ZXM8NjApCi0gICAgICAgICBsYW1iZGEgPSA2Owot
ICAgICAgZWxzZSBpZiAoZWZmZWN0aXZlQnl0ZXM8MTAwKQotICAgICAgICAgbGFtYmRhID0gNDsK
LSAgICAgIGVsc2UKLSAgICAgICAgIGxhbWJkYSA9IDM7Ci0gICAgICBsYW1iZGEqPTI7Ci0gICAg
ICB0Zl9zZWxlY3QgPSB0Zl9hbmFseXNpcyhtb2RlLCBlZmZFbmQsIGlzVHJhbnNpZW50LCB0Zl9y
ZXMsIGxhbWJkYSwgWCwgTiwgTE0sICZ0Zl9zdW0sIHRmX2VzdGltYXRlLCB0Zl9jaGFuKTsKKyAg
ICAgIGxhbWJkYSA9IElNQVgoNSwgMTI4MC9lZmZlY3RpdmVCeXRlcyArIDIpOworICAgICAgdGZf
c2VsZWN0ID0gdGZfYW5hbHlzaXMobW9kZSwgZWZmRW5kLCBpc1RyYW5zaWVudCwgdGZfcmVzLCBs
YW1iZGEsIFgsIE4sIExNLCB0Zl9lc3RpbWF0ZSwgdGZfY2hhbik7CiAgICAgICBmb3IgKGk9ZWZm
RW5kO2k8ZW5kO2krKykKICAgICAgICAgIHRmX3Jlc1tpXSA9IHRmX3Jlc1tlZmZFbmQtMV07Cisg
ICB9IGVsc2UgaWYgKGh5YnJpZCAmJiB3ZWFrX3RyYW5zaWVudCkKKyAgIHsKKyAgICAgIC8qIEZv
ciB3ZWFrIHRyYW5zaWVudHMsIHdlIHJlbHkgb24gdGhlIGZhY3QgdGhhdCBpbXByb3ZpbmcgdGlt
ZSByZXNvbHV0aW9uIHVzaW5nCisgICAgICAgICBURiBvbiBhIGxvbmcgd2luZG93IGlzIGltcGVy
ZmVjdCBhbmQgd2lsbCBub3QgcmVzdWx0IGluIGFuIGVuZXJneSBjb2xsYXBzZSBhdAorICAgICAg
ICAgbG93IGJpdHJhdGUuICovCisgICAgICBmb3IgKGk9MDtpPGVuZDtpKyspCisgICAgICAgICB0
Zl9yZXNbaV0gPSAxOworICAgICAgdGZfc2VsZWN0PTA7CisgICB9IGVsc2UgaWYgKGh5YnJpZCAm
JiBlZmZlY3RpdmVCeXRlczwxNSkKKyAgIHsKKyAgICAgIC8qIEZvciBsb3cgYml0cmF0ZSBoeWJy
aWQsIHdlIGZvcmNlIHRlbXBvcmFsIHJlc29sdXRpb24gdG8gNSBtcyByYXRoZXIgdGhhbiAyLjUg
bXMuICovCisgICAgICBmb3IgKGk9MDtpPGVuZDtpKyspCisgICAgICAgICB0Zl9yZXNbaV0gPSAw
OworICAgICAgdGZfc2VsZWN0PWlzVHJhbnNpZW50OwogICAgfSBlbHNlIHsKLSAgICAgIHRmX3N1
bSA9IDA7CiAgICAgICBmb3IgKGk9MDtpPGVuZDtpKyspCiAgICAgICAgICB0Zl9yZXNbaV0gPSBp
c1RyYW5zaWVudDsKICAgICAgIHRmX3NlbGVjdD0wOwogICAgfQogCiAgICBBTExPQyhlcnJvciwg
QypuYkVCYW5kcywgb3B1c192YWwxNik7CisgICBjPTA7CisgICBkbyB7CisgICAgICBmb3IgKGk9
c3RhcnQ7aTxlbmQ7aSsrKQorICAgICAgeworICAgICAgICAgLyogV2hlbiB0aGUgZW5lcmd5IGlz
IHN0YWJsZSwgc2xpZ2h0bHkgYmlhcyBlbmVyZ3kgcXVhbnRpemF0aW9uIHRvd2FyZHMKKyAgICAg
ICAgICAgIHRoZSBwcmV2aW91cyBlcnJvciB0byBtYWtlIHRoZSBnYWluIG1vcmUgc3RhYmxlIChh
IGNvbnN0YW50IG9mZnNldCBpcworICAgICAgICAgICAgYmV0dGVyIHRoYW4gZmx1Y3R1YXRpb25z
KS4gKi8KKyAgICAgICAgIGlmIChBQlMzMihTVUIzMihiYW5kTG9nRVtpK2MqbmJFQmFuZHNdLCBv
bGRCYW5kRVtpK2MqbmJFQmFuZHNdKSkgPCBRQ09OU1QxNigyLmYsIERCX1NISUZUKSkKKyAgICAg
ICAgIHsKKyAgICAgICAgICAgIGJhbmRMb2dFW2krYypuYkVCYW5kc10gLT0gTVVMVDE2XzE2X1Ex
NShlbmVyZ3lFcnJvcltpK2MqbmJFQmFuZHNdLCBRQ09OU1QxNigwLjI1ZiwgMTUpKTsKKyAgICAg
ICAgIH0KKyAgICAgIH0KKyAgIH0gd2hpbGUgKCsrYyA8IEMpOwogICAgcXVhbnRfY29hcnNlX2Vu
ZXJneShtb2RlLCBzdGFydCwgZW5kLCBlZmZFbmQsIGJhbmRMb2dFLAogICAgICAgICAgb2xkQmFu
ZEUsIHRvdGFsX2JpdHMsIGVycm9yLCBlbmMsCiAgICAgICAgICBDLCBMTSwgbmJBdmFpbGFibGVC
eXRlcywgc3QtPmZvcmNlX2ludHJhLApAQCAtMTc5OCw3ICsxODYxLDE1IEBAIGludCBjZWx0X2Vu
Y29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192
YWwxNiAqIHBjbSwKICAgICAgIHsKICAgICAgICAgIHN0LT50YXBzZXRfZGVjaXNpb24gPSAwOwog
ICAgICAgICAgc3QtPnNwcmVhZF9kZWNpc2lvbiA9IFNQUkVBRF9OT1JNQUw7Ci0gICAgICB9IGVs
c2UgaWYgKHNob3J0QmxvY2tzIHx8IHN0LT5jb21wbGV4aXR5IDwgMyB8fCBuYkF2YWlsYWJsZUJ5
dGVzIDwgMTAqQyB8fCBzdGFydCAhPSAwKQorICAgICAgfSBlbHNlIGlmIChoeWJyaWQpCisgICAg
ICB7CisgICAgICAgICBpZiAoc3QtPmNvbXBsZXhpdHkgPT0gMCkKKyAgICAgICAgICAgIHN0LT5z
cHJlYWRfZGVjaXNpb24gPSBTUFJFQURfTk9ORTsKKyAgICAgICAgIGVsc2UgaWYgKGlzVHJhbnNp
ZW50KQorICAgICAgICAgICAgc3QtPnNwcmVhZF9kZWNpc2lvbiA9IFNQUkVBRF9OT1JNQUw7Cisg
ICAgICAgICBlbHNlCisgICAgICAgICAgICBzdC0+c3ByZWFkX2RlY2lzaW9uID0gU1BSRUFEX0FH
R1JFU1NJVkU7CisgICAgICB9IGVsc2UgaWYgKHNob3J0QmxvY2tzIHx8IHN0LT5jb21wbGV4aXR5
IDwgMyB8fCBuYkF2YWlsYWJsZUJ5dGVzIDwgMTAqQykKICAgICAgIHsKICAgICAgICAgIGlmIChz
dC0+Y29tcGxleGl0eSA9PSAwKQogICAgICAgICAgICAgc3QtPnNwcmVhZF9kZWNpc2lvbiA9IFNQ
UkVBRF9OT05FOwpAQCAtMTgzNCw3ICsxOTA1LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMo
Q0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAog
CiAgICBtYXhEZXB0aCA9IGR5bmFsbG9jX2FuYWx5c2lzKGJhbmRMb2dFLCBiYW5kTG9nRTIsIG5i
RUJhbmRzLCBzdGFydCwgZW5kLCBDLCBvZmZzZXRzLAogICAgICAgICAgc3QtPmxzYl9kZXB0aCwg
bW9kZS0+bG9nTiwgaXNUcmFuc2llbnQsIHN0LT52YnIsIHN0LT5jb25zdHJhaW5lZF92YnIsCi0g
ICAgICAgICBlQmFuZHMsIExNLCBlZmZlY3RpdmVCeXRlcywgJnRvdF9ib29zdCwgc3QtPmxmZSwg
c3Vycm91bmRfZHluYWxsb2MpOworICAgICAgICAgZUJhbmRzLCBMTSwgZWZmZWN0aXZlQnl0ZXMs
ICZ0b3RfYm9vc3QsIHN0LT5sZmUsIHN1cnJvdW5kX2R5bmFsbG9jLCAmc3QtPmFuYWx5c2lzKTsK
ICAgIC8qIEZvciBMRkUsIGV2ZXJ5dGhpbmcgaW50ZXJlc3RpbmcgaXMgaW4gdGhlIGZpcnN0IGJh
bmQgKi8KICAgIGlmIChzdC0+bGZlKQogICAgICAgb2Zmc2V0c1swXSA9IElNSU4oOCwgZWZmZWN0
aXZlQnl0ZXMvMyk7CkBAIC0xODk2LDEyICsxOTY3LDE1IEBAIGludCBjZWx0X2VuY29kZV93aXRo
X2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBj
bSwKICAgIGFsbG9jX3RyaW0gPSA1OwogICAgaWYgKHRlbGwrKDY8PEJJVFJFUykgPD0gdG90YWxf
Yml0cyAtIHRvdGFsX2Jvb3N0KQogICAgewotICAgICAgaWYgKHN0LT5sZmUpCisgICAgICBpZiAo
c3RhcnQgPiAwIHx8IHN0LT5sZmUpCisgICAgICB7CisgICAgICAgICBzdC0+c3RlcmVvX3Nhdmlu
ZyA9IDA7CiAgICAgICAgICBhbGxvY190cmltID0gNTsKLSAgICAgIGVsc2UKKyAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICBhbGxvY190cmltID0gYWxsb2NfdHJpbV9hbmFseXNpcyhtb2RlLCBYLCBi
YW5kTG9nRSwKICAgICAgICAgICAgIGVuZCwgTE0sIEMsIE4sICZzdC0+YW5hbHlzaXMsICZzdC0+
c3RlcmVvX3NhdmluZywgdGZfZXN0aW1hdGUsCi0gICAgICAgICAgICBzdC0+aW50ZW5zaXR5LCBz
dXJyb3VuZF90cmltLCBzdC0+YXJjaCk7CisgICAgICAgICAgICBzdC0+aW50ZW5zaXR5LCBzdXJy
b3VuZF90cmltLCBlcXVpdl9yYXRlLCBzdC0+YXJjaCk7CisgICAgICB9CiAgICAgICBlY19lbmNf
aWNkZihlbmMsIGFsbG9jX3RyaW0sIHRyaW1faWNkZiwgNyk7CiAgICAgICB0ZWxsID0gZWNfdGVs
bF9mcmFjKGVuYyk7CiAgICB9CkBAIC0xOTE5LDE3ICsxOTkzLDM2IEBAIGludCBjZWx0X2VuY29k
ZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwx
NiAqIHBjbSwKICAgICAgLyogRG9uJ3QgYXR0ZW1wdCB0byB1c2UgbW9yZSB0aGFuIDUxMCBrYi9z
LCBldmVuIGZvciBmcmFtZXMgc21hbGxlciB0aGFuIDIwIG1zLgogICAgICAgICBUaGUgQ0VMVCBh
bGxvY2F0b3Igd2lsbCBqdXN0IG5vdCBiZSBhYmxlIHRvIHVzZSBtb3JlIHRoYW4gdGhhdCBhbnl3
YXkuICovCiAgICAgIG5iQ29tcHJlc3NlZEJ5dGVzID0gSU1JTihuYkNvbXByZXNzZWRCeXRlcywx
Mjc1Pj4oMy1MTSkpOwotICAgICBiYXNlX3RhcmdldCA9IHZicl9yYXRlIC0gKCg0MCpDKzIwKTw8
QklUUkVTKTsKKyAgICAgaWYgKCFoeWJyaWQpCisgICAgIHsKKyAgICAgICAgYmFzZV90YXJnZXQg
PSB2YnJfcmF0ZSAtICgoNDAqQysyMCk8PEJJVFJFUyk7CisgICAgIH0gZWxzZSB7CisgICAgICAg
IGJhc2VfdGFyZ2V0ID0gSU1BWCgwLCB2YnJfcmF0ZSAtICgoOSpDKzQpPDxCSVRSRVMpKTsKKyAg
ICAgfQogCiAgICAgIGlmIChzdC0+Y29uc3RyYWluZWRfdmJyKQogICAgICAgICBiYXNlX3Rhcmdl
dCArPSAoc3QtPnZicl9vZmZzZXQ+PmxtX2RpZmYpOwogCi0gICAgIHRhcmdldCA9IGNvbXB1dGVf
dmJyKG1vZGUsICZzdC0+YW5hbHlzaXMsIGJhc2VfdGFyZ2V0LCBMTSwgZXF1aXZfcmF0ZSwKKyAg
ICAgaWYgKCFoeWJyaWQpCisgICAgIHsKKyAgICAgICAgdGFyZ2V0ID0gY29tcHV0ZV92YnIobW9k
ZSwgJnN0LT5hbmFseXNpcywgYmFzZV90YXJnZXQsIExNLCBlcXVpdl9yYXRlLAogICAgICAgICAg
ICBzdC0+bGFzdENvZGVkQmFuZHMsIEMsIHN0LT5pbnRlbnNpdHksIHN0LT5jb25zdHJhaW5lZF92
YnIsCiAgICAgICAgICAgIHN0LT5zdGVyZW9fc2F2aW5nLCB0b3RfYm9vc3QsIHRmX2VzdGltYXRl
LCBwaXRjaF9jaGFuZ2UsIG1heERlcHRoLAotICAgICAgICAgICBzdC0+dmFyaWFibGVfZHVyYXRp
b24sIHN0LT5sZmUsIHN0LT5lbmVyZ3lfbWFzayE9TlVMTCwgc3Vycm91bmRfbWFza2luZywKKyAg
ICAgICAgICAgc3QtPmxmZSwgc3QtPmVuZXJneV9tYXNrIT1OVUxMLCBzdXJyb3VuZF9tYXNraW5n
LAogICAgICAgICAgICB0ZW1wb3JhbF92YnIpOwotCisgICAgIH0gZWxzZSB7CisgICAgICAgIHRh
cmdldCA9IGJhc2VfdGFyZ2V0OworICAgICAgICAvKiBUb25hbCBmcmFtZXMgKG9mZnNldDwxMDAp
IG5lZWQgbW9yZSBiaXRzIHRoYW4gbm9pc3kgKG9mZnNldD4xMDApIG9uZXMuICovCisgICAgICAg
IGlmIChzdC0+c2lsa19pbmZvLm9mZnNldCA8IDEwMCkgdGFyZ2V0ICs9IDEyIDw8IEJJVFJFUyA+
PiAoMy1MTSk7CisgICAgICAgIGlmIChzdC0+c2lsa19pbmZvLm9mZnNldCA+IDEwMCkgdGFyZ2V0
IC09IDE4IDw8IEJJVFJFUyA+PiAoMy1MTSk7CisgICAgICAgIC8qIEJvb3N0aW5nIGJpdHJhdGUg
b24gdHJhbnNpZW50cyBhbmQgdm93ZWxzIHdpdGggc2lnbmlmaWNhbnQgdGVtcG9yYWwKKyAgICAg
ICAgICAgc3Bpa2VzLiAqLworICAgICAgICB0YXJnZXQgKz0gKG9wdXNfaW50MzIpTVVMVDE2XzE2
X1ExNCh0Zl9lc3RpbWF0ZS1RQ09OU1QxNiguMjVmLDE0KSwgKDUwPDxCSVRSRVMpKTsKKyAgICAg
ICAgLyogSWYgd2UgaGF2ZSBhIHN0cm9uZyB0cmFuc2llbnQsIGxldCdzIG1ha2Ugc3VyZSBpdCBo
YXMgZW5vdWdoIGJpdHMgdG8gY29kZQorICAgICAgICAgICB0aGUgZmlyc3QgdHdvIGJhbmRzLCBz
byB0aGF0IGl0IGNhbiB1c2UgZm9sZGluZyByYXRoZXIgdGhhbiBub2lzZS4gKi8KKyAgICAgICAg
aWYgKHRmX2VzdGltYXRlID4gUUNPTlNUMTYoLjdmLDE0KSkKKyAgICAgICAgICAgdGFyZ2V0ID0g
SU1BWCh0YXJnZXQsIDUwPDxCSVRSRVMpOworICAgICB9CiAgICAgIC8qIFRoZSBjdXJyZW50IG9m
ZnNldCBpcyByZW1vdmVkIGZyb20gdGhlIHRhcmdldCBhbmQgdGhlIHNwYWNlIHVzZWQKICAgICAg
ICAgc28gZmFyIGlzIGFkZGVkKi8KICAgICAgdGFyZ2V0PXRhcmdldCt0ZWxsOwpAQCAtMTkzNywx
MSArMjAzMCwxNiBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNf
UkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICAgICAgICByZXN1bHQgaW4g
dGhlIGVuY29kZXIgcnVubmluZyBvdXQgb2YgYml0cy4KICAgICAgICAgVGhlIG1hcmdpbiBvZiAy
IGJ5dGVzIGVuc3VyZXMgdGhhdCBub25lIG9mIHRoZSBidXN0LXByZXZlbnRpb24gbG9naWMKICAg
ICAgICAgIGluIHRoZSBkZWNvZGVyIHdpbGwgaGF2ZSB0cmlnZ2VyZWQgc28gZmFyLiAqLwotICAg
ICBtaW5fYWxsb3dlZCA9ICgodGVsbCt0b3RhbF9ib29zdCsoMTw8KEJJVFJFUyszKSktMSk+PihC
SVRSRVMrMykpICsgMiAtIG5iRmlsbGVkQnl0ZXM7CisgICAgIG1pbl9hbGxvd2VkID0gKCh0ZWxs
K3RvdGFsX2Jvb3N0KygxPDwoQklUUkVTKzMpKS0xKT4+KEJJVFJFUyszKSkgKyAyOworICAgICAv
KiBUYWtlIGludG8gYWNjb3VudCB0aGUgMzcgYml0cyB3ZSBuZWVkIHRvIGhhdmUgbGVmdCBpbiB0
aGUgcGFja2V0IHRvCisgICAgICAgIHNpZ25hbCBhIHJlZHVuZGFudCBmcmFtZSBpbiBoeWJyaWQg
bW9kZS4gQ3JlYXRpbmcgYSBzaG9ydGVyIHBhY2tldCB3b3VsZAorICAgICAgICBjcmVhdGUgYW4g
ZW50cm9weSBjb2RlciBkZXN5bmMuICovCisgICAgIGlmIChoeWJyaWQpCisgICAgICAgIG1pbl9h
bGxvd2VkID0gSU1BWChtaW5fYWxsb3dlZCwgKHRlbGwwX2ZyYWMrKDM3PDxCSVRSRVMpK3RvdGFs
X2Jvb3N0KygxPDwoQklUUkVTKzMpKS0xKT4+KEJJVFJFUyszKSk7CiAKICAgICAgbmJBdmFpbGFi
bGVCeXRlcyA9ICh0YXJnZXQrKDE8PChCSVRSRVMrMikpKT4+KEJJVFJFUyszKTsKICAgICAgbmJB
dmFpbGFibGVCeXRlcyA9IElNQVgobWluX2FsbG93ZWQsbmJBdmFpbGFibGVCeXRlcyk7Ci0gICAg
IG5iQXZhaWxhYmxlQnl0ZXMgPSBJTUlOKG5iQ29tcHJlc3NlZEJ5dGVzLG5iQXZhaWxhYmxlQnl0
ZXMrbmJGaWxsZWRCeXRlcykgLSBuYkZpbGxlZEJ5dGVzOworICAgICBuYkF2YWlsYWJsZUJ5dGVz
ID0gSU1JTihuYkNvbXByZXNzZWRCeXRlcyxuYkF2YWlsYWJsZUJ5dGVzKTsKIAogICAgICAvKiBC
eSBob3cgbXVjaCBkaWQgd2UgIm1pc3MiIHRoZSB0YXJnZXQgb24gdGhhdCBmcmFtZSAqLwogICAg
ICBkZWx0YSA9IHRhcmdldCAtIHZicl9yYXRlOwpAQCAtMTk4OCw3ICsyMDg2LDcgQEAgaW50IGNl
bHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBv
cHVzX3ZhbDE2ICogcGNtLAogICAgICAgICBzdC0+dmJyX3Jlc2Vydm9pciA9IDA7CiAgICAgICAg
IC8qcHJpbnRmICgiKyVkXG4iLCBhZGp1c3QpOyovCiAgICAgIH0KLSAgICAgbmJDb21wcmVzc2Vk
Qnl0ZXMgPSBJTUlOKG5iQ29tcHJlc3NlZEJ5dGVzLG5iQXZhaWxhYmxlQnl0ZXMrbmJGaWxsZWRC
eXRlcyk7CisgICAgIG5iQ29tcHJlc3NlZEJ5dGVzID0gSU1JTihuYkNvbXByZXNzZWRCeXRlcyxu
YkF2YWlsYWJsZUJ5dGVzKTsKICAgICAgLypwcmludGYoIiVkXG4iLCBuYkNvbXByZXNzZWRCeXRl
cyo1MCo4KTsqLwogICAgICAvKiBUaGlzIG1vdmVzIHRoZSByYXcgYml0cyB0byB0YWtlIGludG8g
YWNjb3VudCB0aGUgbmV3IGNvbXByZXNzZWQgc2l6ZSAqLwogICAgICBlY19lbmNfc2hyaW5rKGVu
YywgbmJDb21wcmVzc2VkQnl0ZXMpOwpAQCAtMjAzOCw3ICsyMTM2LDcgQEAgaW50IGNlbHRfZW5j
b2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3Zh
bDE2ICogcGNtLAogICAgcXVhbnRfYWxsX2JhbmRzKDEsIG1vZGUsIHN0YXJ0LCBlbmQsIFgsIEM9
PTIgPyBYK04gOiBOVUxMLCBjb2xsYXBzZV9tYXNrcywKICAgICAgICAgIGJhbmRFLCBwdWxzZXMs
IHNob3J0QmxvY2tzLCBzdC0+c3ByZWFkX2RlY2lzaW9uLAogICAgICAgICAgZHVhbF9zdGVyZW8s
IHN0LT5pbnRlbnNpdHksIHRmX3JlcywgbmJDb21wcmVzc2VkQnl0ZXMqKDg8PEJJVFJFUyktYW50
aV9jb2xsYXBzZV9yc3YsCi0gICAgICAgICBiYWxhbmNlLCBlbmMsIExNLCBjb2RlZEJhbmRzLCAm
c3QtPnJuZywgc3QtPmFyY2gpOworICAgICAgICAgYmFsYW5jZSwgZW5jLCBMTSwgY29kZWRCYW5k
cywgJnN0LT5ybmcsIHN0LT5jb21wbGV4aXR5LCBzdC0+YXJjaCwgc3QtPmRpc2FibGVfaW52KTsK
IAogICAgaWYgKGFudGlfY29sbGFwc2VfcnN2ID4gMCkKICAgIHsKQEAgLTIwNDksNiArMjE0Nywx
NCBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qg
c3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICAgICBlY19lbmNfYml0cyhlbmMsIGFudGlf
Y29sbGFwc2Vfb24sIDEpOwogICAgfQogICAgcXVhbnRfZW5lcmd5X2ZpbmFsaXNlKG1vZGUsIHN0
YXJ0LCBlbmQsIG9sZEJhbmRFLCBlcnJvciwgZmluZV9xdWFudCwgZmluZV9wcmlvcml0eSwgbmJD
b21wcmVzc2VkQnl0ZXMqOC1lY190ZWxsKGVuYyksIGVuYywgQyk7CisgICBPUFVTX0NMRUFSKGVu
ZXJneUVycm9yLCBuYkVCYW5kcypDQyk7CisgICBjPTA7CisgICBkbyB7CisgICAgICBmb3IgKGk9
c3RhcnQ7aTxlbmQ7aSsrKQorICAgICAgeworICAgICAgICAgZW5lcmd5RXJyb3JbaStjKm5iRUJh
bmRzXSA9IE1BWDE2KC1RQ09OU1QxNigwLjVmLCAxNSksIE1JTjE2KFFDT05TVDE2KDAuNWYsIDE1
KSwgZXJyb3JbaStjKm5iRUJhbmRzXSkpOworICAgICAgfQorICAgfSB3aGlsZSAoKytjIDwgQyk7
CiAKICAgIGlmIChzaWxlbmNlKQogICAgewpAQCAtMjMyMSwxMCArMjQyNywyNCBAQCBpbnQgb3B1
c19jdXN0b21fZW5jb2Rlcl9jdGwoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQg
cmVxdWVzdCwgLi4uKQogICAgICAgICAgICp2YWx1ZT1zdC0+bHNiX2RlcHRoOwogICAgICAgfQog
ICAgICAgYnJlYWs7Ci0gICAgICBjYXNlIE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTl9S
RVFVRVNUOgorICAgICAgY2FzZSBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVR
VUVTVDoKICAgICAgIHsKICAgICAgICAgICBvcHVzX2ludDMyIHZhbHVlID0gdmFfYXJnKGFwLCBv
cHVzX2ludDMyKTsKLSAgICAgICAgICBzdC0+dmFyaWFibGVfZHVyYXRpb24gPSB2YWx1ZTsKKyAg
ICAgICAgICBpZih2YWx1ZTwwIHx8IHZhbHVlPjEpCisgICAgICAgICAgeworICAgICAgICAgICAg
IGdvdG8gYmFkX2FyZzsKKyAgICAgICAgICB9CisgICAgICAgICAgc3QtPmRpc2FibGVfaW52ID0g
dmFsdWU7CisgICAgICB9CisgICAgICBicmVhazsKKyAgICAgIGNhc2UgT1BVU19HRVRfUEhBU0Vf
SU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1Q6CisgICAgICB7CisgICAgICAgICAgb3B1c19pbnQz
MiAqdmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50MzIqKTsKKyAgICAgICAgICBpZiAoIXZhbHVl
KQorICAgICAgICAgIHsKKyAgICAgICAgICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAgICAgfQor
ICAgICAgICAgICp2YWx1ZSA9IHN0LT5kaXNhYmxlX2ludjsKICAgICAgIH0KICAgICAgIGJyZWFr
OwogICAgICAgY2FzZSBPUFVTX1JFU0VUX1NUQVRFOgpAQCAtMjM2OCw2ICsyNDg4LDEzIEBAIGlu
dCBvcHVzX2N1c3RvbV9lbmNvZGVyX2N0bChDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3Qs
IGludCByZXF1ZXN0LCAuLi4pCiAgICAgICAgICAgICBPUFVTX0NPUFkoJnN0LT5hbmFseXNpcywg
aW5mbywgMSk7CiAgICAgICB9CiAgICAgICBicmVhazsKKyAgICAgIGNhc2UgQ0VMVF9TRVRfU0lM
S19JTkZPX1JFUVVFU1Q6CisgICAgICB7CisgICAgICAgICBTSUxLSW5mbyAqaW5mbyA9IHZhX2Fy
ZyhhcCwgU0lMS0luZm8gKik7CisgICAgICAgICBpZiAoaW5mbykKKyAgICAgICAgICAgIE9QVVNf
Q09QWSgmc3QtPnNpbGtfaW5mbywgaW5mbywgMSk7CisgICAgICB9CisgICAgICBicmVhazsKICAg
ICAgIGNhc2UgQ0VMVF9HRVRfTU9ERV9SRVFVRVNUOgogICAgICAgewogICAgICAgICAgY29uc3Qg
Q0VMVE1vZGUgKiogdmFsdWUgPSB2YV9hcmcoYXAsIGNvbnN0IENFTFRNb2RlKiopOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L2NlbHRfbHBjLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9scGMuYwppbmRleCBiNDEwYTIxYzVmNmJm
MDk1ZjJmMTZjNzM1MGE5YjQ3MTE0MWZlZDg5Li41N2JjNWYzZGQzZmQ4ODYxNjJmZTRjM2E3ZmRi
ODcxOTdmYzUzZWJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9scGMuYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9s
cGMuYwpAQCAtODksNTggKzg5LDQwIEBAIGludCAgICAgICAgICBwCiAKIAogdm9pZCBjZWx0X2Zp
cl9jKAotICAgICAgICAgY29uc3Qgb3B1c192YWwxNiAqX3gsCisgICAgICAgICBjb25zdCBvcHVz
X3ZhbDE2ICp4LAogICAgICAgICAgY29uc3Qgb3B1c192YWwxNiAqbnVtLAotICAgICAgICAgb3B1
c192YWwxNiAqX3ksCisgICAgICAgICBvcHVzX3ZhbDE2ICp5LAogICAgICAgICAgaW50IE4sCiAg
ICAgICAgICBpbnQgb3JkLAotICAgICAgICAgb3B1c192YWwxNiAqbWVtLAogICAgICAgICAgaW50
IGFyY2gpCiB7CiAgICBpbnQgaSxqOwogICAgVkFSREVDTChvcHVzX3ZhbDE2LCBybnVtKTsKLSAg
IFZBUkRFQ0wob3B1c192YWwxNiwgeCk7CiAgICBTQVZFX1NUQUNLOwogCiAgICBBTExPQyhybnVt
LCBvcmQsIG9wdXNfdmFsMTYpOwotICAgQUxMT0MoeCwgTitvcmQsIG9wdXNfdmFsMTYpOwogICAg
Zm9yKGk9MDtpPG9yZDtpKyspCiAgICAgICBybnVtW2ldID0gbnVtW29yZC1pLTFdOwotICAgZm9y
KGk9MDtpPG9yZDtpKyspCi0gICAgICB4W2ldID0gbWVtW29yZC1pLTFdOwotICAgZm9yIChpPTA7
aTxOO2krKykKLSAgICAgIHhbaStvcmRdPV94W2ldOwotICAgZm9yKGk9MDtpPG9yZDtpKyspCi0g
ICAgICBtZW1baV0gPSBfeFtOLWktMV07Ci0jaWZkZWYgU01BTExfRk9PVFBSSU5UCi0gICAodm9p
ZClhcmNoOwotICAgZm9yIChpPTA7aTxOO2krKykKLSAgIHsKLSAgICAgIG9wdXNfdmFsMzIgc3Vt
ID0gU0hMMzIoRVhURU5EMzIoX3hbaV0pLCBTSUdfU0hJRlQpOwotICAgICAgZm9yIChqPTA7ajxv
cmQ7aisrKQotICAgICAgewotICAgICAgICAgc3VtID0gTUFDMTZfMTYoc3VtLHJudW1bal0seFtp
K2pdKTsKLSAgICAgIH0KLSAgICAgIF95W2ldID0gU0FUVVJBVEUxNihQU0hSMzIoc3VtLCBTSUdf
U0hJRlQpKTsKLSAgIH0KLSNlbHNlCiAgICBmb3IgKGk9MDtpPE4tMztpKz00KQogICAgewotICAg
ICAgb3B1c192YWwzMiBzdW1bNF09ezAsMCwwLDB9OwotICAgICAgeGNvcnJfa2VybmVsKHJudW0s
IHgraSwgc3VtLCBvcmQsIGFyY2gpOwotICAgICAgX3lbaSAgXSA9IFNBVFVSQVRFMTYoQUREMzIo
RVhURU5EMzIoX3hbaSAgXSksIFBTSFIzMihzdW1bMF0sIFNJR19TSElGVCkpKTsKLSAgICAgIF95
W2krMV0gPSBTQVRVUkFURTE2KEFERDMyKEVYVEVORDMyKF94W2krMV0pLCBQU0hSMzIoc3VtWzFd
LCBTSUdfU0hJRlQpKSk7Ci0gICAgICBfeVtpKzJdID0gU0FUVVJBVEUxNihBREQzMihFWFRFTkQz
MihfeFtpKzJdKSwgUFNIUjMyKHN1bVsyXSwgU0lHX1NISUZUKSkpOwotICAgICAgX3lbaSszXSA9
IFNBVFVSQVRFMTYoQUREMzIoRVhURU5EMzIoX3hbaSszXSksIFBTSFIzMihzdW1bM10sIFNJR19T
SElGVCkpKTsKKyAgICAgIG9wdXNfdmFsMzIgc3VtWzRdOworICAgICAgc3VtWzBdID0gU0hMMzIo
RVhURU5EMzIoeFtpICBdKSwgU0lHX1NISUZUKTsKKyAgICAgIHN1bVsxXSA9IFNITDMyKEVYVEVO
RDMyKHhbaSsxXSksIFNJR19TSElGVCksCisgICAgICBzdW1bMl0gPSBTSEwzMihFWFRFTkQzMih4
W2krMl0pLCBTSUdfU0hJRlQpOworICAgICAgc3VtWzNdID0gU0hMMzIoRVhURU5EMzIoeFtpKzNd
KSwgU0lHX1NISUZUKTsKKyAgICAgIHhjb3JyX2tlcm5lbChybnVtLCB4K2ktb3JkLCBzdW0sIG9y
ZCwgYXJjaCk7CisgICAgICB5W2kgIF0gPSBST1VORDE2KHN1bVswXSwgU0lHX1NISUZUKTsKKyAg
ICAgIHlbaSsxXSA9IFJPVU5EMTYoc3VtWzFdLCBTSUdfU0hJRlQpOworICAgICAgeVtpKzJdID0g
Uk9VTkQxNihzdW1bMl0sIFNJR19TSElGVCk7CisgICAgICB5W2krM10gPSBST1VORDE2KHN1bVsz
XSwgU0lHX1NISUZUKTsKICAgIH0KICAgIGZvciAoO2k8TjtpKyspCiAgICB7Ci0gICAgICBvcHVz
X3ZhbDMyIHN1bSA9IDA7CisgICAgICBvcHVzX3ZhbDMyIHN1bSA9IFNITDMyKEVYVEVORDMyKHhb
aV0pLCBTSUdfU0hJRlQpOwogICAgICAgZm9yIChqPTA7ajxvcmQ7aisrKQotICAgICAgICAgc3Vt
ID0gTUFDMTZfMTYoc3VtLHJudW1bal0seFtpK2pdKTsKLSAgICAgIF95W2ldID0gU0FUVVJBVEUx
NihBREQzMihFWFRFTkQzMihfeFtpXSksIFBTSFIzMihzdW0sIFNJR19TSElGVCkpKTsKKyAgICAg
ICAgIHN1bSA9IE1BQzE2XzE2KHN1bSxybnVtW2pdLHhbaStqLW9yZF0pOworICAgICAgeVtpXSA9
IFJPVU5EMTYoc3VtLCBTSUdfU0hJRlQpOwogICAgfQotI2VuZGlmCiAgICBSRVNUT1JFX1NUQUNL
OwogfQogCkBAIC0xNjYsNyArMTQ4LDcgQEAgdm9pZCBjZWx0X2lpcihjb25zdCBvcHVzX3ZhbDMy
ICpfeCwKICAgICAgIHsKICAgICAgICAgIG1lbVtqXT1tZW1bai0xXTsKICAgICAgIH0KLSAgICAg
IG1lbVswXSA9IFJPVU5EMTYoc3VtLFNJR19TSElGVCk7CisgICAgICBtZW1bMF0gPSBTUk9VTkQx
NihzdW0sIFNJR19TSElGVCk7CiAgICAgICBfeVtpXSA9IHN1bTsKICAgIH0KICNlbHNlCkBAIC0x
OTUsMjAgKzE3NywyMCBAQCB2b2lkIGNlbHRfaWlyKGNvbnN0IG9wdXNfdmFsMzIgKl94LAogICAg
ICAgeGNvcnJfa2VybmVsKHJkZW4sIHkraSwgc3VtLCBvcmQsIGFyY2gpOwogCiAgICAgICAvKiBQ
YXRjaCB1cCB0aGUgcmVzdWx0IHRvIGNvbXBlbnNhdGUgZm9yIHRoZSBmYWN0IHRoYXQgdGhpcyBp
cyBhbiBJSVIgKi8KLSAgICAgIHlbaStvcmQgIF0gPSAtUk9VTkQxNihzdW1bMF0sU0lHX1NISUZU
KTsKKyAgICAgIHlbaStvcmQgIF0gPSAtU1JPVU5EMTYoc3VtWzBdLFNJR19TSElGVCk7CiAgICAg
ICBfeVtpICBdID0gc3VtWzBdOwogICAgICAgc3VtWzFdID0gTUFDMTZfMTYoc3VtWzFdLCB5W2kr
b3JkICBdLCBkZW5bMF0pOwotICAgICAgeVtpK29yZCsxXSA9IC1ST1VORDE2KHN1bVsxXSxTSUdf
U0hJRlQpOworICAgICAgeVtpK29yZCsxXSA9IC1TUk9VTkQxNihzdW1bMV0sU0lHX1NISUZUKTsK
ICAgICAgIF95W2krMV0gPSBzdW1bMV07CiAgICAgICBzdW1bMl0gPSBNQUMxNl8xNihzdW1bMl0s
IHlbaStvcmQrMV0sIGRlblswXSk7CiAgICAgICBzdW1bMl0gPSBNQUMxNl8xNihzdW1bMl0sIHlb
aStvcmQgIF0sIGRlblsxXSk7Ci0gICAgICB5W2krb3JkKzJdID0gLVJPVU5EMTYoc3VtWzJdLFNJ
R19TSElGVCk7CisgICAgICB5W2krb3JkKzJdID0gLVNST1VORDE2KHN1bVsyXSxTSUdfU0hJRlQp
OwogICAgICAgX3lbaSsyXSA9IHN1bVsyXTsKIAogICAgICAgc3VtWzNdID0gTUFDMTZfMTYoc3Vt
WzNdLCB5W2krb3JkKzJdLCBkZW5bMF0pOwogICAgICAgc3VtWzNdID0gTUFDMTZfMTYoc3VtWzNd
LCB5W2krb3JkKzFdLCBkZW5bMV0pOwogICAgICAgc3VtWzNdID0gTUFDMTZfMTYoc3VtWzNdLCB5
W2krb3JkICBdLCBkZW5bMl0pOwotICAgICAgeVtpK29yZCszXSA9IC1ST1VORDE2KHN1bVszXSxT
SUdfU0hJRlQpOworICAgICAgeVtpK29yZCszXSA9IC1TUk9VTkQxNihzdW1bM10sU0lHX1NISUZU
KTsKICAgICAgIF95W2krM10gPSBzdW1bM107CiAgICB9CiAgICBmb3IgKDtpPE47aSsrKQpAQCAt
MjE2LDcgKzE5OCw3IEBAIHZvaWQgY2VsdF9paXIoY29uc3Qgb3B1c192YWwzMiAqX3gsCiAgICAg
ICBvcHVzX3ZhbDMyIHN1bSA9IF94W2ldOwogICAgICAgZm9yIChqPTA7ajxvcmQ7aisrKQogICAg
ICAgICAgc3VtIC09IE1VTFQxNl8xNihyZGVuW2pdLHlbaStqXSk7Ci0gICAgICB5W2krb3JkXSA9
IFJPVU5EMTYoc3VtLFNJR19TSElGVCk7CisgICAgICB5W2krb3JkXSA9IFNST1VORDE2KHN1bSxT
SUdfU0hJRlQpOwogICAgICAgX3lbaV0gPSBzdW07CiAgICB9CiAgICBmb3IoaT0wO2k8b3JkO2kr
KykKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2xwYy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfbHBjLmgKaW5kZXggMzIz
NDU5ZWIxYTgzMTU2NjY0Nzg0NzQyZGRjYTc4ZTFjNDRlNmRjMC4uYTRjNWZkNmVhNWRjYTMxMmZh
ZGI5YzM2MWRiMmFiZDVlMWJlN2Y2OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfbHBjLmgKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L2NlbHRfbHBjLmgKQEAgLTQ1LDEyICs0NSwxMSBAQCB2b2lkIGNlbHRfZmlyX2MoCiAgICAg
ICAgICBvcHVzX3ZhbDE2ICp5LAogICAgICAgICAgaW50IE4sCiAgICAgICAgICBpbnQgb3JkLAot
ICAgICAgICAgb3B1c192YWwxNiAqbWVtLAogICAgICAgICAgaW50IGFyY2gpOwogCiAjaWYgIWRl
ZmluZWQoT1ZFUlJJREVfQ0VMVF9GSVIpCi0jZGVmaW5lIGNlbHRfZmlyKHgsIG51bSwgeSwgTiwg
b3JkLCBtZW0sIGFyY2gpIFwKLSAgICAoY2VsdF9maXJfYyh4LCBudW0sIHksIE4sIG9yZCwgbWVt
LCBhcmNoKSkKKyNkZWZpbmUgY2VsdF9maXIoeCwgbnVtLCB5LCBOLCBvcmQsIGFyY2gpIFwKKyAg
ICAoY2VsdF9maXJfYyh4LCBudW0sIHksIE4sIG9yZCwgYXJjaCkpCiAjZW5kaWYKIAogdm9pZCBj
ZWx0X2lpcihjb25zdCBvcHVzX3ZhbDMyICp4LApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2R1bXBfbW9kZXMv
ZHVtcF9tb2Rlcy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L2R1bXBfbW9kZXMvZHVtcF9tb2Rlcy5jCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkx
MDVhNTM0NGUzYmYzNGFlZjljYWMyNDdjMTA2MmY2OWJmNDQ3MWUKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVzLmMKQEAgLTAsMCArMSwzNTMgQEAKKy8qIENvcHly
aWdodCAoYykgMjAwOCBDU0lSTworICAgQ29weXJpZ2h0IChjKSAyMDA4LTIwMDkgWGlwaC5Pcmcg
Rm91bmRhdGlvbgorICAgV3JpdHRlbiBieSBKZWFuLU1hcmMgVmFsaW4gKi8KKy8qCisgICBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
CisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJ
QlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9X
TkVSCisgICBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAgIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAgIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICAg
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRgorICAgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcKKyAgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICAgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLwor
CisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNp
bmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgIm1vZGVzLmgi
CisjaW5jbHVkZSAiY2VsdC5oIgorI2luY2x1ZGUgInJhdGUuaCIKKyNpbmNsdWRlICJkdW1wX21v
ZGVzX2FyY2guaCIKKworI2RlZmluZSBJTlQxNiAiJWQiCisjZGVmaW5lIElOVDMyICIlZCIKKyNk
ZWZpbmUgRkxPQVQgIiUjMC44Z2YiCisKKyNpZmRlZiBGSVhFRF9QT0lOVAorI2RlZmluZSBXT1JE
MTYgSU5UMTYKKyNkZWZpbmUgV09SRDMyIElOVDMyCisjZWxzZQorI2RlZmluZSBXT1JEMTYgRkxP
QVQKKyNkZWZpbmUgV09SRDMyIEZMT0FUCisjZW5kaWYKKwordm9pZCBkdW1wX21vZGVzKEZJTEUg
KmZpbGUsIENFTFRNb2RlICoqbW9kZXMsIGludCBuYl9tb2RlcykKK3sKKyAgIGludCBpLCBqLCBr
OworICAgaW50IG1kY3RfdHdpZGRsZXNfc2l6ZTsKKyAgIGZwcmludGYoZmlsZSwgIi8qIFRoZSBj
b250ZW50cyBvZiB0aGlzIGZpbGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IGR1bXBf
bW9kZXMuY1xuIik7CisgICBmcHJpbnRmKGZpbGUsICIgICB3aXRoIGFyZ3VtZW50czoiKTsKKyAg
IGZvciAoaT0wO2k8bmJfbW9kZXM7aSsrKQorICAgeworICAgICAgQ0VMVE1vZGUgKm1vZGUgPSBt
b2Rlc1tpXTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiAlZCAlZCIsbW9kZS0+RnMsbW9kZS0+c2hv
cnRNZGN0U2l6ZSptb2RlLT5uYlNob3J0TWRjdHMpOworICAgfQorICAgZnByaW50ZihmaWxlLCAi
XG4gICBJdCBjb250YWlucyBzdGF0aWMgZGVmaW5pdGlvbnMgZm9yIHNvbWUgcHJlLWRlZmluZWQg
bW9kZXMuICovXG4iKTsKKyAgIGZwcmludGYoZmlsZSwgIiNpbmNsdWRlIFwibW9kZXMuaFwiXG4i
KTsKKyAgIGZwcmludGYoZmlsZSwgIiNpbmNsdWRlIFwicmF0ZS5oXCJcbiIpOworICAgZnByaW50
ZihmaWxlLCAiXG4jaWZkZWYgSEFWRV9BUk1fTkUxMFxuIik7CisgICBmcHJpbnRmKGZpbGUsICIj
ZGVmaW5lIE9WRVJSSURFX0ZGVCAxXG4iKTsKKyAgIGZwcmludGYoZmlsZSwgIiNpbmNsdWRlIFwi
JXNcIlxuIiwgQVJNX05FMTBfQVJDSF9GSUxFX05BTUUpOworICAgZnByaW50ZihmaWxlLCAiI2Vu
ZGlmXG4iKTsKKworICAgZnByaW50ZihmaWxlLCAiXG4iKTsKKworICAgZm9yIChpPTA7aTxuYl9t
b2RlcztpKyspCisgICB7CisgICAgICBDRUxUTW9kZSAqbW9kZSA9IG1vZGVzW2ldOworICAgICAg
aW50IG1kY3RTaXplOworICAgICAgaW50IHN0YW5kYXJkLCBmcmFtZXJhdGU7CisKKyAgICAgIG1k
Y3RTaXplID0gbW9kZS0+c2hvcnRNZGN0U2l6ZSptb2RlLT5uYlNob3J0TWRjdHM7CisgICAgICBz
dGFuZGFyZCA9IChtb2RlLT5GcyA9PSA0MDAqKG9wdXNfaW50MzIpbW9kZS0+c2hvcnRNZGN0U2l6
ZSk7CisgICAgICBmcmFtZXJhdGUgPSBtb2RlLT5Gcy9tb2RlLT5zaG9ydE1kY3RTaXplOworCisg
ICAgICBpZiAoIXN0YW5kYXJkKQorICAgICAgeworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2lm
bmRlZiBERUZfRUJBTkRTJWRfJWRcbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7CisgICAgICAgICBm
cHJpbnRmKGZpbGUsICIjZGVmaW5lIERFRl9FQkFORFMlZF8lZFxuIiwgbW9kZS0+RnMsIG1kY3RT
aXplKTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJzdGF0aWMgY29uc3Qgb3B1c19pbnQxNiBl
QmFuZHMlZF8lZFslZF0gPSB7XG4iLCBtb2RlLT5GcywgbWRjdFNpemUsIG1vZGUtPm5iRUJhbmRz
KzIpOworICAgICAgICAgZm9yIChqPTA7ajxtb2RlLT5uYkVCYW5kcysyO2orKykKKyAgICAgICAg
ICAgIGZwcmludGYgKGZpbGUsICIlZCwgIiwgbW9kZS0+ZUJhbmRzW2pdKTsKKyAgICAgICAgIGZw
cmludGYgKGZpbGUsICJ9O1xuIik7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjZW5kaWZcbiIp
OworICAgICAgICAgZnByaW50ZihmaWxlLCAiXG4iKTsKKyAgICAgIH0KKworICAgICAgZnByaW50
ZihmaWxlLCAiI2lmbmRlZiBERUZfV0lORE9XJWRcbiIsIG1vZGUtPm92ZXJsYXApOworICAgICAg
ZnByaW50ZihmaWxlLCAiI2RlZmluZSBERUZfV0lORE9XJWRcbiIsIG1vZGUtPm92ZXJsYXApOwor
ICAgICAgZnByaW50ZiAoZmlsZSwgInN0YXRpYyBjb25zdCBvcHVzX3ZhbDE2IHdpbmRvdyVkWyVk
XSA9IHtcbiIsIG1vZGUtPm92ZXJsYXAsIG1vZGUtPm92ZXJsYXApOworICAgICAgZm9yIChqPTA7
ajxtb2RlLT5vdmVybGFwO2orKykKKyAgICAgICAgIGZwcmludGYgKGZpbGUsIFdPUkQxNiAiLCVj
IiwgbW9kZS0+d2luZG93W2pdLChqKzYpJTU9PTA/J1xuJzonICcpOworICAgICAgZnByaW50ZiAo
ZmlsZSwgIn07XG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7CisgICAgICBm
cHJpbnRmKGZpbGUsICJcbiIpOworCisgICAgICBpZiAoIXN0YW5kYXJkKQorICAgICAgeworICAg
ICAgICAgZnByaW50ZihmaWxlLCAiI2lmbmRlZiBERUZfQUxMT0NfVkVDVE9SUyVkXyVkXG4iLCBt
b2RlLT5GcywgbWRjdFNpemUpOworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2RlZmluZSBERUZf
QUxMT0NfVkVDVE9SUyVkXyVkXG4iLCBtb2RlLT5GcywgbWRjdFNpemUpOworICAgICAgICAgZnBy
aW50ZiAoZmlsZSwgInN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFsbG9jVmVjdG9ycyVkXyVk
WyVkXSA9IHtcbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSwgbW9kZS0+bmJFQmFuZHMqbW9kZS0+bmJB
bGxvY1ZlY3RvcnMpOworICAgICAgICAgZm9yIChqPTA7ajxtb2RlLT5uYkFsbG9jVmVjdG9ycztq
KyspCisgICAgICAgICB7CisgICAgICAgICAgICBmb3IgKGs9MDtrPG1vZGUtPm5iRUJhbmRzO2sr
KykKKyAgICAgICAgICAgICAgIGZwcmludGYgKGZpbGUsICIlMmQsICIsIG1vZGUtPmFsbG9jVmVj
dG9yc1tqKm1vZGUtPm5iRUJhbmRzK2tdKTsKKyAgICAgICAgICAgIGZwcmludGYgKGZpbGUsICJc
biIpOworICAgICAgICAgfQorICAgICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgICAg
ICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICJc
biIpOworICAgICAgfQorCisgICAgICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIERFRl9MT0dOJWRc
biIsIGZyYW1lcmF0ZSk7CisgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIERFRl9MT0dOJWRc
biIsIGZyYW1lcmF0ZSk7CisgICAgICBmcHJpbnRmIChmaWxlLCAic3RhdGljIGNvbnN0IG9wdXNf
aW50MTYgbG9nTiVkWyVkXSA9IHtcbiIsIGZyYW1lcmF0ZSwgbW9kZS0+bmJFQmFuZHMpOworICAg
ICAgZm9yIChqPTA7ajxtb2RlLT5uYkVCYW5kcztqKyspCisgICAgICAgICBmcHJpbnRmIChmaWxl
LCAiJWQsICIsIG1vZGUtPmxvZ05bal0pOworICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsK
KyAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICJc
biIpOworCisgICAgICAvKiBQdWxzZSBjYWNoZSAqLworICAgICAgZnByaW50ZihmaWxlLCAiI2lm
bmRlZiBERUZfUFVMU0VfQ0FDSEUlZFxuIiwgbW9kZS0+RnMvbWRjdFNpemUpOworICAgICAgZnBy
aW50ZihmaWxlLCAiI2RlZmluZSBERUZfUFVMU0VfQ0FDSEUlZFxuIiwgbW9kZS0+RnMvbWRjdFNp
emUpOworICAgICAgZnByaW50ZiAoZmlsZSwgInN0YXRpYyBjb25zdCBvcHVzX2ludDE2IGNhY2hl
X2luZGV4JWRbJWRdID0ge1xuIiwgbW9kZS0+RnMvbWRjdFNpemUsIChtb2RlLT5tYXhMTSsyKSpt
b2RlLT5uYkVCYW5kcyk7CisgICAgICBmb3IgKGo9MDtqPG1vZGUtPm5iRUJhbmRzKihtb2RlLT5t
YXhMTSsyKTtqKyspCisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiJWQsJWMiLCBtb2RlLT5jYWNo
ZS5pbmRleFtqXSwoaisxNiklMTU9PTA/J1xuJzonICcpOworICAgICAgZnByaW50ZiAoZmlsZSwg
In07XG4iKTsKKyAgICAgIGZwcmludGYgKGZpbGUsICJzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hh
ciBjYWNoZV9iaXRzJWRbJWRdID0ge1xuIiwgbW9kZS0+RnMvbWRjdFNpemUsIG1vZGUtPmNhY2hl
LnNpemUpOworICAgICAgZm9yIChqPTA7ajxtb2RlLT5jYWNoZS5zaXplO2orKykKKyAgICAgICAg
IGZwcmludGYgKGZpbGUsICIlZCwlYyIsIG1vZGUtPmNhY2hlLmJpdHNbal0sKGorMTYpJTE1PT0w
Pydcbic6JyAnKTsKKyAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xuIik7CisgICAgICBmcHJpbnRm
IChmaWxlLCAic3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgY2FjaGVfY2FwcyVkWyVkXSA9IHtc
biIsIG1vZGUtPkZzL21kY3RTaXplLCAobW9kZS0+bWF4TE0rMSkqMiptb2RlLT5uYkVCYW5kcyk7
CisgICAgICBmb3IgKGo9MDtqPChtb2RlLT5tYXhMTSsxKSoyKm1vZGUtPm5iRUJhbmRzO2orKykK
KyAgICAgICAgIGZwcmludGYgKGZpbGUsICIlZCwlYyIsIG1vZGUtPmNhY2hlLmNhcHNbal0sKGor
MTYpJTE1PT0wPydcbic6JyAnKTsKKyAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xuIik7CisKKyAg
ICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICJcbiIp
OworCisgICAgICAvKiBGRlQgdHdpZGRsZXMgKi8KKyAgICAgIGZwcmludGYoZmlsZSwgIiNpZm5k
ZWYgRkZUX1RXSURETEVTJWRfJWRcbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7CisgICAgICBmcHJp
bnRmKGZpbGUsICIjZGVmaW5lIEZGVF9UV0lERExFUyVkXyVkXG4iLCBtb2RlLT5GcywgbWRjdFNp
emUpOworICAgICAgZnByaW50ZiAoZmlsZSwgInN0YXRpYyBjb25zdCBraXNzX3R3aWRkbGVfY3B4
IGZmdF90d2lkZGxlcyVkXyVkWyVkXSA9IHtcbiIsCisgICAgICAgICAgICBtb2RlLT5GcywgbWRj
dFNpemUsIG1vZGUtPm1kY3Qua2ZmdFswXS0+bmZmdCk7CisgICAgICBmb3IgKGo9MDtqPG1vZGUt
Pm1kY3Qua2ZmdFswXS0+bmZmdDtqKyspCisgICAgICAgICBmcHJpbnRmIChmaWxlLCAieyIgV09S
RDE2ICIsICIgV09SRDE2ICJ9LCVjIiwgbW9kZS0+bWRjdC5rZmZ0WzBdLT50d2lkZGxlc1tqXS5y
LCBtb2RlLT5tZGN0LmtmZnRbMF0tPnR3aWRkbGVzW2pdLmksKGorMyklMj09MD8nXG4nOicgJyk7
CisgICAgICBmcHJpbnRmIChmaWxlLCAifTtcbiIpOworCisjaWZkZWYgT1ZFUlJJREVfRkZUCisg
ICAgICBkdW1wX21vZGVfYXJjaChtb2RlKTsKKyNlbmRpZgorICAgICAgLyogRkZUIEJpdHJldiB0
YWJsZXMgKi8KKyAgICAgIGZvciAoaz0wO2s8PW1vZGUtPm1kY3QubWF4c2hpZnQ7aysrKQorICAg
ICAgeworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2lmbmRlZiBGRlRfQklUUkVWJWRcbiIsIG1v
ZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5l
IEZGVF9CSVRSRVYlZFxuIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgICAgIGZw
cmludGYgKGZpbGUsICJzdGF0aWMgY29uc3Qgb3B1c19pbnQxNiBmZnRfYml0cmV2JWRbJWRdID0g
e1xuIiwKKyAgICAgICAgICAgICAgIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCwgbW9kZS0+bWRj
dC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgICAgIGZvciAoaj0wO2o8bW9kZS0+bWRjdC5rZmZ0W2td
LT5uZmZ0O2orKykKKyAgICAgICAgICAgIGZwcmludGYgKGZpbGUsICIlZCwlYyIsIG1vZGUtPm1k
Y3Qua2ZmdFtrXS0+Yml0cmV2W2pdLChqKzE2KSUxNT09MD8nXG4nOicgJyk7CisgICAgICAgICBm
cHJpbnRmIChmaWxlLCAifTtcbiIpOworCisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjZW5kaWZc
biIpOworICAgICAgICAgZnByaW50ZihmaWxlLCAiXG4iKTsKKyAgICAgIH0KKworICAgICAgLyog
RkZUIFN0YXRlcyAqLworICAgICAgZm9yIChrPTA7azw9bW9kZS0+bWRjdC5tYXhzaGlmdDtrKysp
CisgICAgICB7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIEZGVF9TVEFURSVkXyVk
XyVkXG4iLCBtb2RlLT5GcywgbWRjdFNpemUsIGspOworICAgICAgICAgZnByaW50ZihmaWxlLCAi
I2RlZmluZSBGRlRfU1RBVEUlZF8lZF8lZFxuIiwgbW9kZS0+RnMsIG1kY3RTaXplLCBrKTsKKyAg
ICAgICAgIGZwcmludGYgKGZpbGUsICJzdGF0aWMgY29uc3Qga2lzc19mZnRfc3RhdGUgZmZ0X3N0
YXRlJWRfJWRfJWQgPSB7XG4iLAorICAgICAgICAgICAgICAgbW9kZS0+RnMsIG1kY3RTaXplLCBr
KTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICIlZCwgICAgLyogbmZmdCAqL1xuIiwgbW9kZS0+
bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsIFdPUkQxNiAiLCAg
ICAvKiBzY2FsZSAqL1xuIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5zY2FsZSk7CisjaWZkZWYgRklY
RURfUE9JTlQKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICIlZCwgICAgLyogc2NhbGVfc2hpZnQg
Ki9cbiIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+c2NhbGVfc2hpZnQpOworI2VuZGlmCisgICAgICAg
ICBmcHJpbnRmIChmaWxlLCAiJWQsICAgIC8qIHNoaWZ0ICovXG4iLCBtb2RlLT5tZGN0LmtmZnRb
a10tPnNoaWZ0KTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJ7Iik7CisgICAgICAgICBmb3Ig
KGo9MDtqPDIqTUFYRkFDVE9SUztqKyspCisgICAgICAgICAgICBmcHJpbnRmIChmaWxlLCAiJWQs
ICIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+ZmFjdG9yc1tqXSk7CisgICAgICAgICBmcHJpbnRmIChm
aWxlLCAifSwgICAgLyogZmFjdG9ycyAqL1xuIik7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAi
ZmZ0X2JpdHJldiVkLCAgICAvKiBiaXRyZXYgKi9cbiIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZm
dCk7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiZmZ0X3R3aWRkbGVzJWRfJWQsICAgIC8qIGJp
dHJldiAqL1xuIiwgbW9kZS0+RnMsIG1kY3RTaXplKTsKKworICAgICAgICAgZnByaW50ZiAoZmls
ZSwgIiNpZmRlZiBPVkVSUklERV9GRlRcbiIpOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgIihh
cmNoX2ZmdF9zdGF0ZSAqKSZjZmdfYXJjaF8lZCxcbiIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZm
dCk7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiI2Vsc2VcbiIpOworICAgICAgICAgZnByaW50
ZiAoZmlsZSwgIk5VTEwsXG4iKTsKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7
CisKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xuIik7CisKKyAgICAgICAgIGZwcmludGYo
ZmlsZSwgIiNlbmRpZlxuIik7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworICAgICAg
fQorCisgICAgICBmcHJpbnRmKGZpbGUsICIjZW5kaWZcbiIpOworICAgICAgZnByaW50ZihmaWxl
LCAiXG4iKTsKKworICAgICAgLyogTURDVCB0d2lkZGxlcyAqLworICAgICAgbWRjdF90d2lkZGxl
c19zaXplID0gbW9kZS0+bWRjdC5uLShtb2RlLT5tZGN0Lm4vMj4+bW9kZS0+bWRjdC5tYXhzaGlm
dCk7CisgICAgICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIE1EQ1RfVFdJRERMRVMlZFxuIiwgbWRj
dFNpemUpOworICAgICAgZnByaW50ZihmaWxlLCAiI2RlZmluZSBNRENUX1RXSURETEVTJWRcbiIs
IG1kY3RTaXplKTsKKyAgICAgIGZwcmludGYgKGZpbGUsICJzdGF0aWMgY29uc3Qgb3B1c192YWwx
NiBtZGN0X3R3aWRkbGVzJWRbJWRdID0ge1xuIiwKKyAgICAgICAgICAgIG1kY3RTaXplLCBtZGN0
X3R3aWRkbGVzX3NpemUpOworICAgICAgZm9yIChqPTA7ajxtZGN0X3R3aWRkbGVzX3NpemU7aisr
KQorICAgICAgICAgZnByaW50ZiAoZmlsZSwgV09SRDE2ICIsJWMiLCBtb2RlLT5tZGN0LnRyaWdb
al0sKGorNiklNT09MD8nXG4nOicgJyk7CisgICAgICBmcHJpbnRmIChmaWxlLCAifTtcbiIpOwor
CisgICAgICBmcHJpbnRmKGZpbGUsICIjZW5kaWZcbiIpOworICAgICAgZnByaW50ZihmaWxlLCAi
XG4iKTsKKworCisgICAgICAvKiBQcmludCB0aGUgYWN0dWFsIG1vZGUgZGF0YSAqLworICAgICAg
ZnByaW50ZihmaWxlLCAic3RhdGljIGNvbnN0IENFTFRNb2RlIG1vZGUlZF8lZF8lZCA9IHtcbiIs
IG1vZGUtPkZzLCBtZGN0U2l6ZSwgbW9kZS0+b3ZlcmxhcCk7CisgICAgICBmcHJpbnRmKGZpbGUs
IElOVDMyICIsICAgIC8qIEZzICovXG4iLCBtb2RlLT5Gcyk7CisgICAgICBmcHJpbnRmKGZpbGUs
ICIlZCwgICAgLyogb3ZlcmxhcCAqL1xuIiwgbW9kZS0+b3ZlcmxhcCk7CisgICAgICBmcHJpbnRm
KGZpbGUsICIlZCwgICAgLyogbmJFQmFuZHMgKi9cbiIsIG1vZGUtPm5iRUJhbmRzKTsKKyAgICAg
IGZwcmludGYoZmlsZSwgIiVkLCAgICAvKiBlZmZFQmFuZHMgKi9cbiIsIG1vZGUtPmVmZkVCYW5k
cyk7CisgICAgICBmcHJpbnRmKGZpbGUsICJ7Iik7CisgICAgICBmb3IgKGo9MDtqPDQ7aisrKQor
ICAgICAgICAgZnByaW50ZihmaWxlLCBXT1JEMTYgIiwgIiwgbW9kZS0+cHJlZW1waFtqXSk7Cisg
ICAgICBmcHJpbnRmKGZpbGUsICJ9LCAgICAvKiBwcmVlbXBoICovXG4iKTsKKyAgICAgIGlmIChz
dGFuZGFyZCkKKyAgICAgICAgIGZwcmludGYoZmlsZSwgImViYW5kNW1zLCAgICAvKiBlQmFuZHMg
Ki9cbiIpOworICAgICAgZWxzZQorICAgICAgICAgZnByaW50ZihmaWxlLCAiZUJhbmRzJWRfJWQs
ICAgIC8qIGVCYW5kcyAqL1xuIiwgbW9kZS0+RnMsIG1kY3RTaXplKTsKKworICAgICAgZnByaW50
ZihmaWxlLCAiJWQsICAgIC8qIG1heExNICovXG4iLCBtb2RlLT5tYXhMTSk7CisgICAgICBmcHJp
bnRmKGZpbGUsICIlZCwgICAgLyogbmJTaG9ydE1kY3RzICovXG4iLCBtb2RlLT5uYlNob3J0TWRj
dHMpOworICAgICAgZnByaW50ZihmaWxlLCAiJWQsICAgIC8qIHNob3J0TWRjdFNpemUgKi9cbiIs
IG1vZGUtPnNob3J0TWRjdFNpemUpOworCisgICAgICBmcHJpbnRmKGZpbGUsICIlZCwgICAgLyog
bmJBbGxvY1ZlY3RvcnMgKi9cbiIsIG1vZGUtPm5iQWxsb2NWZWN0b3JzKTsKKyAgICAgIGlmIChz
dGFuZGFyZCkKKyAgICAgICAgIGZwcmludGYoZmlsZSwgImJhbmRfYWxsb2NhdGlvbiwgICAgLyog
YWxsb2NWZWN0b3JzICovXG4iKTsKKyAgICAgIGVsc2UKKyAgICAgICAgIGZwcmludGYoZmlsZSwg
ImFsbG9jVmVjdG9ycyVkXyVkLCAgICAvKiBhbGxvY1ZlY3RvcnMgKi9cbiIsIG1vZGUtPkZzLCBt
ZGN0U2l6ZSk7CisKKyAgICAgIGZwcmludGYoZmlsZSwgImxvZ04lZCwgICAgLyogbG9nTiAqL1xu
IiwgZnJhbWVyYXRlKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIndpbmRvdyVkLCAgICAvKiB3aW5k
b3cgKi9cbiIsIG1vZGUtPm92ZXJsYXApOworICAgICAgZnByaW50ZihmaWxlLCAieyVkLCAlZCwg
eyIsIG1vZGUtPm1kY3QubiwgbW9kZS0+bWRjdC5tYXhzaGlmdCk7CisgICAgICBmb3IgKGs9MDtr
PD1tb2RlLT5tZGN0Lm1heHNoaWZ0O2srKykKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiZmZnRf
c3RhdGUlZF8lZF8lZCwgIiwgbW9kZS0+RnMsIG1kY3RTaXplLCBrKTsKKyAgICAgIGZwcmludGYg
KGZpbGUsICJ9LCBtZGN0X3R3aWRkbGVzJWR9LCAgICAvKiBtZGN0ICovXG4iLCBtZGN0U2l6ZSk7
CisKKyAgICAgIGZwcmludGYoZmlsZSwgInslZCwgY2FjaGVfaW5kZXglZCwgY2FjaGVfYml0cyVk
LCBjYWNoZV9jYXBzJWR9LCAgICAvKiBjYWNoZSAqL1xuIiwKKyAgICAgICAgICAgIG1vZGUtPmNh
Y2hlLnNpemUsIG1vZGUtPkZzL21kY3RTaXplLCBtb2RlLT5Gcy9tZGN0U2l6ZSwgbW9kZS0+RnMv
bWRjdFNpemUpOworICAgICAgZnByaW50ZihmaWxlLCAifTtcbiIpOworICAgfQorICAgZnByaW50
ZihmaWxlLCAiXG4iKTsKKyAgIGZwcmludGYoZmlsZSwgIi8qIExpc3Qgb2YgYWxsIHRoZSBhdmFp
bGFibGUgbW9kZXMgKi9cbiIpOworICAgZnByaW50ZihmaWxlLCAiI2RlZmluZSBUT1RBTF9NT0RF
UyAlZFxuIiwgbmJfbW9kZXMpOworICAgZnByaW50ZihmaWxlLCAic3RhdGljIGNvbnN0IENFTFRN
b2RlICogY29uc3Qgc3RhdGljX21vZGVfbGlzdFtUT1RBTF9NT0RFU10gPSB7XG4iKTsKKyAgIGZv
ciAoaT0wO2k8bmJfbW9kZXM7aSsrKQorICAgeworICAgICAgQ0VMVE1vZGUgKm1vZGUgPSBtb2Rl
c1tpXTsKKyAgICAgIGludCBtZGN0U2l6ZTsKKyAgICAgIG1kY3RTaXplID0gbW9kZS0+c2hvcnRN
ZGN0U2l6ZSptb2RlLT5uYlNob3J0TWRjdHM7CisgICAgICBmcHJpbnRmKGZpbGUsICImbW9kZSVk
XyVkXyVkLFxuIiwgbW9kZS0+RnMsIG1kY3RTaXplLCBtb2RlLT5vdmVybGFwKTsKKyAgIH0KKyAg
IGZwcmludGYoZmlsZSwgIn07XG4iKTsKK30KKwordm9pZCBkdW1wX2hlYWRlcihGSUxFICpmaWxl
LCBDRUxUTW9kZSAqKm1vZGVzLCBpbnQgbmJfbW9kZXMpCit7CisgICBpbnQgaTsKKyAgIGludCBj
aGFubmVscyA9IDA7CisgICBpbnQgZnJhbWVfc2l6ZSA9IDA7CisgICBpbnQgb3ZlcmxhcCA9IDA7
CisgICBmcHJpbnRmIChmaWxlLCAiLyogVGhpcyBoZWFkZXIgZmlsZSBpcyBnZW5lcmF0ZWQgYXV0
b21hdGljYWxseSovXG4iKTsKKyAgIGZvciAoaT0wO2k8bmJfbW9kZXM7aSsrKQorICAgeworICAg
ICAgQ0VMVE1vZGUgKm1vZGUgPSBtb2Rlc1tpXTsKKyAgICAgIGlmIChmcmFtZV9zaXplPT0wKQor
ICAgICAgICAgZnJhbWVfc2l6ZSA9IG1vZGUtPnNob3J0TWRjdFNpemUqbW9kZS0+bmJTaG9ydE1k
Y3RzOworICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZSAhPSBtb2RlLT5zaG9ydE1kY3RTaXplKm1v
ZGUtPm5iU2hvcnRNZGN0cykKKyAgICAgICAgIGZyYW1lX3NpemUgPSAtMTsKKyAgICAgIGlmIChv
dmVybGFwPT0wKQorICAgICAgICAgb3ZlcmxhcCA9IG1vZGUtPm92ZXJsYXA7CisgICAgICBlbHNl
IGlmIChvdmVybGFwICE9IG1vZGUtPm92ZXJsYXApCisgICAgICAgICBvdmVybGFwID0gLTE7Cisg
ICB9CisgICBpZiAoY2hhbm5lbHM+MCkKKyAgIHsKKyAgICAgIGZwcmludGYgKGZpbGUsICIjZGVm
aW5lIENIQU5ORUxTKG1vZGUpICVkXG4iLCBjaGFubmVscyk7CisgICAgICBpZiAoY2hhbm5lbHM9
PTEpCisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiI2RlZmluZSBESVNBQkxFX1NURVJFT1xuIik7
CisgICB9CisgICBpZiAoZnJhbWVfc2l6ZT4wKQorICAgeworICAgICAgZnByaW50ZiAoZmlsZSwg
IiNkZWZpbmUgRlJBTUVTSVpFKG1vZGUpICVkXG4iLCBmcmFtZV9zaXplKTsKKyAgIH0KKyAgIGlm
IChvdmVybGFwPjApCisgICB7CisgICAgICBmcHJpbnRmIChmaWxlLCAiI2RlZmluZSBPVkVSTEFQ
KG1vZGUpICVkXG4iLCBvdmVybGFwKTsKKyAgIH0KK30KKworI2lmZGVmIEZJWEVEX1BPSU5UCisj
ZGVmaW5lIEJBU0VOQU1FICJzdGF0aWNfbW9kZXNfZml4ZWQiCisjZWxzZQorI2RlZmluZSBCQVNF
TkFNRSAic3RhdGljX21vZGVzX2Zsb2F0IgorI2VuZGlmCisKK2ludCBtYWluKGludCBhcmdjLCBj
aGFyICoqYXJndikKK3sKKyAgIGludCBpLCBuYjsKKyAgIEZJTEUgKmZpbGU7CisgICBDRUxUTW9k
ZSAqKm07CisgICBpZiAoYXJnYyUyICE9IDEgfHwgYXJnYzwzKQorICAgeworICAgICAgZnByaW50
ZiAoc3RkZXJyLCAiVXNhZ2U6ICVzIHJhdGUgZnJhbWVfc2l6ZSBbcmF0ZSBmcmFtZV9zaXplXSBb
cmF0ZSBmcmFtZV9zaXplXS4uLlxuIixhcmd2WzBdKTsKKyAgICAgIHJldHVybiAxOworICAgfQor
ICAgbmIgPSAoYXJnYy0xKS8yOworICAgbSA9IG1hbGxvYyhuYipzaXplb2YoQ0VMVE1vZGUqKSk7
CisgICBmb3IgKGk9MDtpPG5iO2krKykKKyAgIHsKKyAgICAgIGludCBGcywgZnJhbWU7CisgICAg
ICBGcyAgICAgID0gYXRvaShhcmd2WzIqaSsxXSk7CisgICAgICBmcmFtZSAgID0gYXRvaShhcmd2
WzIqaSsyXSk7CisgICAgICBtW2ldID0gb3B1c19jdXN0b21fbW9kZV9jcmVhdGUoRnMsIGZyYW1l
LCBOVUxMKTsKKyAgICAgIGlmIChtW2ldPT1OVUxMKQorICAgICAgeworICAgICAgICAgZnByaW50
ZihzdGRlcnIsIkVycm9yIGNyZWF0aW5nIG1vZGUgd2l0aCBGcz0lcywgZnJhbWVfc2l6ZT0lc1xu
IiwKKyAgICAgICAgICAgICAgIGFyZ3ZbMippKzFdLGFyZ3ZbMippKzJdKTsKKyAgICAgICAgIHJl
dHVybiBFWElUX0ZBSUxVUkU7CisgICAgICB9CisgICB9CisgICBmaWxlID0gZm9wZW4oQkFTRU5B
TUUgIi5oIiwgInciKTsKKyNpZmRlZiBPVkVSUklERV9GRlQKKyAgIGR1bXBfbW9kZXNfYXJjaF9p
bml0KG0sIG5iKTsKKyNlbmRpZgorICAgZHVtcF9tb2RlcyhmaWxlLCBtLCBuYik7CisgICBmY2xv
c2UoZmlsZSk7CisjaWZkZWYgT1ZFUlJJREVfRkZUCisgICBkdW1wX21vZGVzX2FyY2hfZmluYWxp
emUoKTsKKyNlbmRpZgorICAgZm9yIChpPTA7aTxuYjtpKyspCisgICAgICBvcHVzX2N1c3RvbV9t
b2RlX2Rlc3Ryb3kobVtpXSk7CisgICBmcmVlKG0pOworICAgcmV0dXJuIDA7Cit9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVzX2FyY2guaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9kdW1wX21vZGVzL2R1
bXBfbW9kZXNfYXJjaC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNjMGQ0YmUxZWM3MzA4ZGFjZDg1M2Y2NTIxOTQ2
NTgyMGVjNzFjMTQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVz
X2FyY2guaApAQCAtMCwwICsxLDQ1IEBACisvKiBDb3B5cmlnaHQgKGMpIDIwMTUgWGlwaC5Pcmcg
Rm91bmRhdGlvbgorICAgV3JpdHRlbiBieSBWaXN3YW5hdGggUHV0dGFndW50YSAqLworLyoKKyAg
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgICBhcmUgbWV0OgorCisgICAtIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisKKyAgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAg
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMKKyAgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICAgQSBQQVJUSUNV
TEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgT1dORVIKKyAgIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
CisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworICAgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyovCisKKyNpZm5kZWYgRFVNUF9NT0RFX0FSQ0hfSAorI2RlZmluZSBEVU1QX01PREVfQVJDSF9I
CisKK3ZvaWQgZHVtcF9tb2Rlc19hcmNoX2luaXQoKTsKK3ZvaWQgZHVtcF9tb2RlX2FyY2goQ0VM
VE1vZGUgKm1vZGUpOwordm9pZCBkdW1wX21vZGVzX2FyY2hfZmluYWxpemUoKTsKKworI2lmICFk
ZWZpbmVkKEZJWEVEX1BPSU5UKQorI2RlZmluZSBBUk1fTkUxMF9BUkNIX0ZJTEVfTkFNRSAic3Rh
dGljX21vZGVzX2Zsb2F0X2FybV9uZTEwLmgiCisjZWxzZQorI2RlZmluZSBBUk1fTkUxMF9BUkNI
X0ZJTEVfTkFNRSAic3RhdGljX21vZGVzX2ZpeGVkX2FybV9uZTEwLmgiCisjZW5kaWYKKworI2lm
IGRlZmluZWQoSEFWRV9BUk1fTkUxMCkKKyNkZWZpbmUgT1ZFUlJJREVfRkZUICgxKQorI2VuZGlm
CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2R1bXBfbW9kZXMvZHVtcF9tb2Rlc19hcm1fbmUx
MC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L2R1bXBfbW9kZXMvZHVtcF9tb2Rlc19hcm1fbmUxMC5jCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgy
OGU3YjlmZmYzMWY4MWJkNzYxNjk1YTI0NzkyNmRmMDU2YTQxYWYKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVzX2FybV9uZTEwLmMKQEAgLTAsMCArMSwxNTIgQEAK
Ky8qIENvcHlyaWdodCAoYykgMjAxNSBYaXBoLk9yZyBGb3VuZGF0aW9uCisgICBXcml0dGVuIGJ5
IFZpc3dhbmF0aCBQdXR0YWd1bnRhICovCisvKgorICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJUycn
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VAorICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lmIGRlZmluZWQoSEFWRV9D
T05GSUdfSCkKKyMgaW5jbHVkZSAiY29uZmlnLmgiCisjZW5kaWYKKworI2luY2x1ZGUgPHN0ZGlv
Lmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSAibW9kZXMuaCIKKyNpbmNsdWRlICJk
dW1wX21vZGVzX2FyY2guaCIKKyNpbmNsdWRlIDxORTEwX2RzcC5oPgorCisjaWYgIWRlZmluZWQo
RklYRURfUE9JTlQpCisjIGRlZmluZSBORTEwX0ZGVF9DRkdfVFlQRV9UIG5lMTBfZmZ0X2NmZ19m
bG9hdDMyX3QKKyMgZGVmaW5lIE5FMTBfRkZUX0NQWF9UWVBFX1RfU1RSICJuZTEwX2ZmdF9jcHhf
ZmxvYXQzMl90IgorIyBkZWZpbmUgTkUxMF9GRlRfU1RBVEVfVFlQRV9UX1NUUiAibmUxMF9mZnRf
c3RhdGVfZmxvYXQzMl90IgorI2Vsc2UKKyMgZGVmaW5lIE5FMTBfRkZUX0NGR19UWVBFX1QgbmUx
MF9mZnRfY2ZnX2ludDMyX3QKKyMgZGVmaW5lIE5FMTBfRkZUX0NQWF9UWVBFX1RfU1RSICJuZTEw
X2ZmdF9jcHhfaW50MzJfdCIKKyMgZGVmaW5lIE5FMTBfRkZUX1NUQVRFX1RZUEVfVF9TVFIgIm5l
MTBfZmZ0X3N0YXRlX2ludDMyX3QiCisjZW5kaWYKKworc3RhdGljIEZJTEUgKmZpbGU7CisKK3Zv
aWQgZHVtcF9tb2Rlc19hcmNoX2luaXQoQ0VMVE1vZGUgKiptb2RlcywgaW50IG5iX21vZGVzKQor
eworICAgaW50IGk7CisKKyAgIGZpbGUgPSBmb3BlbihBUk1fTkUxMF9BUkNIX0ZJTEVfTkFNRSwg
InciKTsKKyAgIGZwcmludGYoZmlsZSwgIi8qIFRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgd2Fz
IGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5XG4iKTsKKyAgIGZwcmludGYoZmlsZSwgIiAqIGR1
bXBfbW9kZV9hcm1fbmUxMC5jIHdpdGggYXJndW1lbnRzOiIpOworICAgZm9yIChpPTA7aTxuYl9t
b2RlcztpKyspCisgICB7CisgICAgICBDRUxUTW9kZSAqbW9kZSA9IG1vZGVzW2ldOworICAgICAg
ZnByaW50ZihmaWxlLCAiICVkICVkIixtb2RlLT5Gcyxtb2RlLT5zaG9ydE1kY3RTaXplKm1vZGUt
Pm5iU2hvcnRNZGN0cyk7CisgICB9CisgICBmcHJpbnRmKGZpbGUsICJcbiAqIEl0IGNvbnRhaW5z
IHN0YXRpYyBkZWZpbml0aW9ucyBmb3Igc29tZSBwcmUtZGVmaW5lZCBtb2Rlcy4gKi9cbiIpOwor
ICAgZnByaW50ZihmaWxlLCAiI2luY2x1ZGUgPE5FMTBfdHlwZXMuaD5cblxuIik7Cit9CisKK3Zv
aWQgZHVtcF9tb2Rlc19hcmNoX2ZpbmFsaXplKCkKK3sKKyAgIGZjbG9zZShmaWxlKTsKK30KKwor
dm9pZCBkdW1wX21vZGVfYXJjaChDRUxUTW9kZSAqbW9kZSkKK3sKKyAgIGludCBrLCBqOworICAg
aW50IG1kY3RTaXplOworCisgICBtZGN0U2l6ZSA9IG1vZGUtPnNob3J0TWRjdFNpemUqbW9kZS0+
bmJTaG9ydE1kY3RzOworCisgICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIE5FMTBfRkZUX1BBUkFN
UyVkXyVkXG4iLCBtb2RlLT5GcywgbWRjdFNpemUpOworICAgZnByaW50ZihmaWxlLCAiI2RlZmlu
ZSBORTEwX0ZGVF9QQVJBTVMlZF8lZFxuIiwgbW9kZS0+RnMsIG1kY3RTaXplKTsKKyAgIC8qIGNm
Zy0+ZmFjdG9ycyAqLworICAgZm9yKGs9MDtrPD1tb2RlLT5tZGN0Lm1heHNoaWZ0O2srKykgewor
ICAgICAgTkUxMF9GRlRfQ0ZHX1RZUEVfVCBjZmc7CisgICAgICBjZmcgPSAoTkUxMF9GRlRfQ0ZH
X1RZUEVfVCltb2RlLT5tZGN0LmtmZnRba10tPmFyY2hfZmZ0LT5wcml2OworICAgICAgaWYgKCFj
ZmcpCisgICAgICAgICBjb250aW51ZTsKKyAgICAgIGZwcmludGYoZmlsZSwgInN0YXRpYyBjb25z
dCBuZTEwX2ludDMyX3QgbmUxMF9mYWN0b3JzXyVkWyVkXSA9IHtcbiIsCisgICAgICAgICAgICAg
IG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCwgKE5FMTBfTUFYRkFDVE9SUyAqIDIpKTsKKyAgICAg
IGZvcihqPTA7ajwoTkUxMF9NQVhGQUNUT1JTICogMik7aisrKSB7CisgICAgICAgICBmcHJpbnRm
KGZpbGUsICIlZCwlYyIsIGNmZy0+ZmFjdG9yc1tqXSwoaisxNiklMTU9PTA/J1xuJzonICcpOwor
ICAgICAgfQorICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgIH0KKworICAgLyogY2Zn
LT50d2lkZGxlcyAqLworICAgZm9yKGs9MDtrPD1tb2RlLT5tZGN0Lm1heHNoaWZ0O2srKykgewor
ICAgICAgTkUxMF9GRlRfQ0ZHX1RZUEVfVCBjZmc7CisgICAgICBjZmcgPSAoTkUxMF9GRlRfQ0ZH
X1RZUEVfVCltb2RlLT5tZGN0LmtmZnRba10tPmFyY2hfZmZ0LT5wcml2OworICAgICAgaWYgKCFj
ZmcpCisgICAgICAgICBjb250aW51ZTsKKyAgICAgIGZwcmludGYoZmlsZSwgInN0YXRpYyBjb25z
dCAlcyBuZTEwX3R3aWRkbGVzXyVkWyVkXSA9IHtcbiIsCisgICAgICAgICAgICAgIE5FMTBfRkZU
X0NQWF9UWVBFX1RfU1RSLCBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQsCisgICAgICAgICAgICAg
IG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7CisgICAgICBmb3Ioaj0wO2o8bW9kZS0+bWRjdC5r
ZmZ0W2tdLT5uZmZ0O2orKykgeworI2lmICFkZWZpbmVkKEZJWEVEX1BPSU5UKQorICAgICAgICAg
ZnByaW50ZihmaWxlLCAieyUjMC44Z2YsJSMwLjhnZn0sJWMiLAorICAgICAgICAgICAgICAgICBj
ZmctPnR3aWRkbGVzW2pdLnIsIGNmZy0+dHdpZGRsZXNbal0uaSwoais0KSUzPT0wPydcbic6JyAn
KTsKKyNlbHNlCisgICAgICAgICBmcHJpbnRmKGZpbGUsICJ7JWQsJWR9LCVjIiwKKyAgICAgICAg
ICAgICAgICAgY2ZnLT50d2lkZGxlc1tqXS5yLCBjZmctPnR3aWRkbGVzW2pdLmksKGorNCklMz09
MD8nXG4nOicgJyk7CisjZW5kaWYKKyAgICAgIH0KKyAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xu
Iik7CisgICB9CisKKyAgIGZvcihrPTA7azw9bW9kZS0+bWRjdC5tYXhzaGlmdDtrKyspIHsKKyAg
ICAgIE5FMTBfRkZUX0NGR19UWVBFX1QgY2ZnOworICAgICAgY2ZnID0gKE5FMTBfRkZUX0NGR19U
WVBFX1QpbW9kZS0+bWRjdC5rZmZ0W2tdLT5hcmNoX2ZmdC0+cHJpdjsKKyAgICAgIGlmICghY2Zn
KSB7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIvKiBOZTEwIGRvZXMgbm90IHN1cHBvcnQgc2Nh
bGVkIEZGVCBmb3IgbGVuZ3RoID0gJWQgKi9cbiIsCisgICAgICAgICAgICAgICAgIG1vZGUtPm1k
Y3Qua2ZmdFtrXS0+bmZmdCk7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICJzdGF0aWMgY29uc3Qg
YXJjaF9mZnRfc3RhdGUgY2ZnX2FyY2hfJWQgPSB7XG4iLCBtb2RlLT5tZGN0LmtmZnRba10tPm5m
ZnQpOworICAgICAgICAgZnByaW50ZihmaWxlLCAiMCxcbiIpOworICAgICAgICAgZnByaW50Zihm
aWxlLCAiTlVMTFxuIik7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICJ9O1xuIik7CisgICAgICAg
ICBjb250aW51ZTsKKyAgICAgIH0KKyAgICAgIGZwcmludGYoZmlsZSwgInN0YXRpYyBjb25zdCAl
cyAlc18lZCA9IHtcbiIsIE5FMTBfRkZUX1NUQVRFX1RZUEVfVF9TVFIsCisgICAgICAgICAgICAg
IE5FMTBfRkZUX1NUQVRFX1RZUEVfVF9TVFIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7Cisg
ICAgICBmcHJpbnRmKGZpbGUsICIlZCxcbiIsIGNmZy0+bmZmdCk7CisgICAgICBmcHJpbnRmKGZp
bGUsICIobmUxMF9pbnQzMl90ICopbmUxMF9mYWN0b3JzXyVkLFxuIiwgbW9kZS0+bWRjdC5rZmZ0
W2tdLT5uZmZ0KTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiglcyAqKW5lMTBfdHdpZGRsZXNfJWQs
XG4iLAorICAgICAgICAgICAgICBORTEwX0ZGVF9DUFhfVFlQRV9UX1NUUiwgbW9kZS0+bWRjdC5r
ZmZ0W2tdLT5uZmZ0KTsKKyAgICAgIGZwcmludGYoZmlsZSwgIk5VTEwsXG4iKTsgIC8qIGJ1ZmZl
ciAqLworICAgICAgZnByaW50ZihmaWxlLCAiKCVzICopJm5lMTBfdHdpZGRsZXNfJWRbJWRdLFxu
IiwKKyAgICAgICAgICAgICAgTkUxMF9GRlRfQ1BYX1RZUEVfVF9TVFIsIG1vZGUtPm1kY3Qua2Zm
dFtrXS0+bmZmdCwgY2ZnLT5uZmZ0KTsKKyNpZiAhZGVmaW5lZChGSVhFRF9QT0lOVCkKKyAgICAg
IGZwcmludGYoZmlsZSwgIi8qIGlzX2ZvcndhcmRfc2NhbGVkID0gdHJ1ZSAqL1xuIik7CisgICAg
ICBmcHJpbnRmKGZpbGUsICIobmUxMF9pbnQzMl90KSAxLFxuIik7CisgICAgICBmcHJpbnRmKGZp
bGUsICIvKiBpc19iYWNrd2FyZF9zY2FsZWQgPSBmYWxzZSAqL1xuIik7CisgICAgICBmcHJpbnRm
KGZpbGUsICIobmUxMF9pbnQzMl90KSAwLFxuIik7CisjZW5kaWYKKyAgICAgIGZwcmludGYoZmls
ZSwgIn07XG4iKTsKKworICAgICAgZnByaW50ZihmaWxlLCAic3RhdGljIGNvbnN0IGFyY2hfZmZ0
X3N0YXRlIGNmZ19hcmNoXyVkID0ge1xuIiwKKyAgICAgICAgICAgICAgbW9kZS0+bWRjdC5rZmZ0
W2tdLT5uZmZ0KTsKKyAgICAgIGZwcmludGYoZmlsZSwgIjEsXG4iKTsKKyAgICAgIGZwcmludGYo
ZmlsZSwgIih2b2lkICopJiVzXyVkLFxuIiwKKyAgICAgICAgICAgICAgTkUxMF9GRlRfU1RBVEVf
VFlQRV9UX1NUUiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgIGZwcmludGYoZmls
ZSwgIn07XG5cbiIpOworICAgfQorICAgZnByaW50ZihmaWxlLCAiI2VuZGlmICAvKiBlbmQgTkUx
MF9GRlRfUEFSQU1TJWRfJWQgKi9cbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7Cit9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvZml4ZWRfYzV4LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfYzV4LmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWE5NWE5
OThjM2MzZjg3OWUxMGNjZDcyZWZmMjAwZDFjZWNlOTcyMAotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9maXhlZF9jNXguaApAQCAtMCwwICsxLDc5IEBACisvKiBDb3B5cmlnaHQgKEMpIDIwMDMgSmVh
bi1NYXJjIFZhbGluICovCisvKioKKyAgIEBmaWxlIGZpeGVkX2M1eC5oCisgICBAYnJpZWYgRml4
ZWQtcG9pbnQgb3BlcmF0aW9ucyBmb3IgdGhlIFRJIEM1eCBEU1AgZmFtaWx5CisqLworLyoKKyAg
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgICBhcmUgbWV0OgorCisgICAtIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisKKyAgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAg
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMKKyAgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICAgQSBQQVJUSUNV
TEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgT1dORVIKKyAgIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
CisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworICAgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyovCisKKyNpZm5kZWYgRklYRURfQzVYX0gKKyNkZWZpbmUgRklYRURfQzVYX0gKKworI2luY2x1
ZGUgImRzcGxpYi5oIgorCisjdW5kZWYgSU1VTDMyCitzdGF0aWMgT1BVU19JTkxJTkUgbG9uZyBJ
TVVMMzIobG9uZyBpLCBsb25nIGopCit7CisgICBsb25nIGFjMCwgYWMxOworICAgYWMwID0gX2xt
cHkoaT4+MTYsaik7CisgICBhYzEgPSBhYzAgKyBfbG1weShpLGo+PjE2KTsKKyAgIHJldHVybiBf
bG1weXUoaSxqKSArIChhYzE8PDE2KTsKK30KKworI3VuZGVmIE1BWDE2CisjZGVmaW5lIE1BWDE2
KGEsYikgX21heChhLGIpCisKKyN1bmRlZiBNSU4xNgorI2RlZmluZSBNSU4xNihhLGIpIF9taW4o
YSxiKQorCisjdW5kZWYgTUFYMzIKKyNkZWZpbmUgTUFYMzIoYSxiKSBfbG1heChhLGIpCisKKyN1
bmRlZiBNSU4zMgorI2RlZmluZSBNSU4zMihhLGIpIF9sbWluKGEsYikKKworI3VuZGVmIFZTSFIz
MgorI2RlZmluZSBWU0hSMzIoYSwgc2hpZnQpIF9sc2hsKGEsLShzaGlmdCkpCisKKyN1bmRlZiBN
VUxUMTZfMTZfUTE1CisjZGVmaW5lIE1VTFQxNl8xNl9RMTUoYSxiKSAoX3NtcHkoYSxiKSkKKwor
I3VuZGVmIE1VTFQxNl8xNlNVCisjZGVmaW5lIE1VTFQxNl8xNlNVKGEsYikgX2xtcHlzdShhLGIp
CisKKyN1bmRlZiBNVUxUXzE2XzE2CisjZGVmaW5lIE1VTFRfMTZfMTYoYSxiKSBfbG1weShhLGIp
CisKKy8qIEZJWE1FOiBUaGlzIGlzIHRlY2huaWNhbGx5IGluY29ycmVjdCBhbmQgaXMgYm91bmQg
dG8gY2F1c2UgcHJvYmxlbXMuIElzIHRoZXJlIGFueSBjbGVhbmVyIHNvbHV0aW9uPyAqLworI3Vu
ZGVmIE1VTFQxNl8zMl9RMTUKKyNkZWZpbmUgTVVMVDE2XzMyX1ExNShhLGIpIEFERDMyKFNITChN
VUxUMTZfMTYoKGEpLFNIUigoYiksMTYpKSwxKSwgU0hSKE1VTFQxNl8xNlNVKChhKSwoYikpLDE1
KSkKKworI2RlZmluZSBjZWx0X2lsb2cyKHgpICgzMCAtIF9sbm9ybSh4KSkKKyNkZWZpbmUgT1ZF
UlJJREVfQ0VMVF9JTE9HMgorCisjZGVmaW5lIGNlbHRfbWF4YWJzMTYoeCwgbGVuKSBNQVgzMihF
WFRFTkQzMihtYXh2YWwoKERBVEEgKil4LCBsZW4pKSwtRVhURU5EMzIobWludmFsKChEQVRBICop
eCwgbGVuKSkpCisjZGVmaW5lIE9WRVJSSURFX0NFTFRfTUFYQUJTMTYKKworI2VuZGlmIC8qIEZJ
WEVEX0M1WF9IICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfYzZ4LmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfYzZ4
LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYmI2YWQ5Mjc4MDNmOWZhYmMxNTVlMTBiZDdkYTg0NWZjZTJlOGNlOAot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9jNnguaApAQCAtMCwwICsxLDcwIEBACisvKiBD
b3B5cmlnaHQgKEMpIDIwMDggQ1NJUk8gKi8KKy8qKgorICAgQGZpbGUgZml4ZWRfYzZ4LmgKKyAg
IEBicmllZiBGaXhlZC1wb2ludCBvcGVyYXRpb25zIGZvciB0aGUgVEkgQzZ4IERTUCBmYW1pbHkK
KyovCisvKgorICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICAgTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisg
ICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
ICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorKi8KKworI2lmbmRlZiBGSVhFRF9DNlhfSAorI2RlZmluZSBGSVhFRF9DNlhf
SAorCisjdW5kZWYgTVVMVDE2XzE2U1UKKyNkZWZpbmUgTVVMVDE2XzE2U1UoYSxiKSBfbXB5c3Uo
YSxiKQorCisjdW5kZWYgTVVMVF8xNl8xNgorI2RlZmluZSBNVUxUXzE2XzE2KGEsYikgX21weShh
LGIpCisKKyNkZWZpbmUgY2VsdF9pbG9nMih4KSAoMzAgLSBfbm9ybSh4KSkKKyNkZWZpbmUgT1ZF
UlJJREVfQ0VMVF9JTE9HMgorCisjdW5kZWYgTVVMVDE2XzMyX1ExNQorI2RlZmluZSBNVUxUMTZf
MzJfUTE1KGEsYikgKF9tcHlsaWxsKGEsIGIpID4+IDE1KQorCisjaWYgMAorI2luY2x1ZGUgImRz
cGxpYi5oIgorCisjdW5kZWYgTUFYMTYKKyNkZWZpbmUgTUFYMTYoYSxiKSBfbWF4KGEsYikKKwor
I3VuZGVmIE1JTjE2CisjZGVmaW5lIE1JTjE2KGEsYikgX21pbihhLGIpCisKKyN1bmRlZiBNQVgz
MgorI2RlZmluZSBNQVgzMihhLGIpIF9sbWF4KGEsYikKKworI3VuZGVmIE1JTjMyCisjZGVmaW5l
IE1JTjMyKGEsYikgX2xtaW4oYSxiKQorCisjdW5kZWYgVlNIUjMyCisjZGVmaW5lIFZTSFIzMihh
LCBzaGlmdCkgX2xzaGwoYSwtKHNoaWZ0KSkKKworI3VuZGVmIE1VTFQxNl8xNl9RMTUKKyNkZWZp
bmUgTVVMVDE2XzE2X1ExNShhLGIpIChfc21weShhLGIpKQorCisjZGVmaW5lIGNlbHRfbWF4YWJz
MTYoeCwgbGVuKSBNQVgzMihFWFRFTkQzMihtYXh2YWwoKERBVEEgKil4LCBsZW4pKSwtRVhURU5E
MzIobWludmFsKChEQVRBICopeCwgbGVuKSkpCisjZGVmaW5lIE9WRVJSSURFX0NFTFRfTUFYQUJT
MTYKKworI2VuZGlmIC8qIEZJWEVEX0M2WF9IICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfZGVi
dWcuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC9maXhlZF9kZWJ1Zy5oCmluZGV4IGQyODIyN2Y1ZGM3Mjg3OWNlZDk0NGQ4YjVk
Yjg4ODBiYTM0NjVmMDMuLmY0MzUyOTUyMzRjZmZiNTNjYjA1NGZjZGQwY2EwODg1Zjc4NmQwZmEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY2VsdC9maXhlZF9kZWJ1Zy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9kZWJ1Zy5oCkBA
IC01OSw2ICs1OSwxNCBAQCBleHRlcm4gb3B1c19pbnQ2NCBjZWx0X21pcHM7CiAjZGVmaW5lIFNI
UihhLGIpIFNIUjMyKGEsYikKICNkZWZpbmUgUFNIUihhLGIpIFBTSFIzMihhLGIpCiAKKy8qKiBB
ZGQgdHdvIDMyLWJpdCB2YWx1ZXMsIGlnbm9yZSBhbnkgb3ZlcmZsb3dzICovCisjZGVmaW5lIEFE
RDMyX292Zmx3KGEsYikgKGNlbHRfbWlwcys9Miwob3B1c192YWwzMikoKG9wdXNfdWludDMyKShh
KSsob3B1c191aW50MzIpKGIpKSkKKy8qKiBTdWJ0cmFjdCB0d28gMzItYml0IHZhbHVlcywgaWdu
b3JlIGFueSBvdmVyZmxvd3MgKi8KKyNkZWZpbmUgU1VCMzJfb3ZmbHcoYSxiKSAoY2VsdF9taXBz
Kz0yLChvcHVzX3ZhbDMyKSgob3B1c191aW50MzIpKGEpLShvcHVzX3VpbnQzMikoYikpKQorLyog
QXZvaWQgTVNWQyB3YXJuaW5nIEM0MTQ2OiB1bmFyeSBtaW51cyBvcGVyYXRvciBhcHBsaWVkIHRv
IHVuc2lnbmVkIHR5cGUgKi8KKy8qKiBOZWdhdGUgMzItYml0IHZhbHVlLCBpZ25vcmUgYW55IG92
ZXJmbG93cyAqLworI2RlZmluZSBORUczMl9vdmZsdyhhKSAoY2VsdF9taXBzKz0yLChvcHVzX3Zh
bDMyKSgwLShvcHVzX3VpbnQzMikoYSkpKQorCiBzdGF0aWMgT1BVU19JTkxJTkUgc2hvcnQgTkVH
MTYoaW50IHgpCiB7CiAgICBpbnQgcmVzOwpAQCAtMjI3LDEyICsyMzUsMTEgQEAgc3RhdGljIE9Q
VVNfSU5MSU5FIGludCBTSEwzMl8ob3B1c19pbnQ2NCBhLCBpbnQgc2hpZnQsIGNoYXIgKmZpbGUs
IGludCBsaW5lKQogI2RlZmluZSBWU0hSMzIoYSwgc2hpZnQpICgoKHNoaWZ0KT4wKSA/IFNIUjMy
KGEsIHNoaWZ0KSA6IFNITDMyKGEsIC0oc2hpZnQpKSkKIAogI2RlZmluZSBST1VORDE2KHgsYSkg
KGNlbHRfbWlwcy0tLEVYVFJBQ1QxNihQU0hSMzIoKHgpLChhKSkpKQorI2RlZmluZSBTUk9VTkQx
Nih4LGEpIChjZWx0X21pcHMtLSxFWFRSQUNUMTYoU0FUVVJBVEUoUFNIUjMyKHgsYSksIDMyNzY3
KSkpOworCiAjZGVmaW5lIEhBTEYxNih4KSAgKFNIUjE2KHgsMSkpCiAjZGVmaW5lIEhBTEYzMih4
KSAgKFNIUjMyKHgsMSkpCiAKLS8vI2RlZmluZSBTSFIoYSxzaGlmdCkgKChhKSA+PiAoc2hpZnQp
KQotLy8jZGVmaW5lIFNITChhLHNoaWZ0KSAoKGEpIDw8IChzaGlmdCkpCi0KICNkZWZpbmUgQURE
MTYoYSwgYikgQUREMTZfKGEsIGIsIF9fRklMRV9fLCBfX0xJTkVfXykKIHN0YXRpYyBPUFVTX0lO
TElORSBzaG9ydCBBREQxNl8oaW50IGEsIGludCBiLCBjaGFyICpmaWxlLCBpbnQgbGluZSkKIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY2VsdC9maXhlZF9nZW5lcmljLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfZ2VuZXJpYy5oCmlu
ZGV4IDFjZmQ2ZDY5ODkwNmJkNGZkZTg3YTBiYTBlODc0NjliZGMzZmZkZTUuLjVmNGFiZGE3NmVk
OGMwOTZmZDMwZjk1N2RmMjAwZWY3MDkxNWU3ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9nZW5l
cmljLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9jZWx0L2ZpeGVkX2dlbmVyaWMuaApAQCAtMTA0LDYgKzEwNCw5IEBACiAKIC8q
KiBTaGlmdCBieSBhIGFuZCByb3VuZC10by1uZWFyZWFzdCAzMi1iaXQgdmFsdWUuIFJlc3VsdCBp
cyBhIDE2LWJpdCB2YWx1ZSAqLwogI2RlZmluZSBST1VORDE2KHgsYSkgKEVYVFJBQ1QxNihQU0hS
MzIoKHgpLChhKSkpKQorLyoqIFNoaWZ0IGJ5IGEgYW5kIHJvdW5kLXRvLW5lYXJlYXN0IDMyLWJp
dCB2YWx1ZS4gUmVzdWx0IGlzIGEgc2F0dXJhdGVkIDE2LWJpdCB2YWx1ZSAqLworI2RlZmluZSBT
Uk9VTkQxNih4LGEpIEVYVFJBQ1QxNihTQVRVUkFURShQU0hSMzIoeCxhKSwgMzI3NjcpKTsKKwog
LyoqIERpdmlkZSBieSB0d28gKi8KICNkZWZpbmUgSEFMRjE2KHgpICAoU0hSMTYoeCwxKSkKICNk
ZWZpbmUgSEFMRjMyKHgpICAoU0hSMzIoeCwxKSkKQEAgLTExNyw2ICsxMjAsMTQgQEAKIC8qKiBT
dWJ0cmFjdCB0d28gMzItYml0IHZhbHVlcyAqLwogI2RlZmluZSBTVUIzMihhLGIpICgob3B1c192
YWwzMikoYSktKG9wdXNfdmFsMzIpKGIpKQogCisvKiogQWRkIHR3byAzMi1iaXQgdmFsdWVzLCBp
Z25vcmUgYW55IG92ZXJmbG93cyAqLworI2RlZmluZSBBREQzMl9vdmZsdyhhLGIpICgob3B1c192
YWwzMikoKG9wdXNfdWludDMyKShhKSsob3B1c191aW50MzIpKGIpKSkKKy8qKiBTdWJ0cmFjdCB0
d28gMzItYml0IHZhbHVlcywgaWdub3JlIGFueSBvdmVyZmxvd3MgKi8KKyNkZWZpbmUgU1VCMzJf
b3ZmbHcoYSxiKSAoKG9wdXNfdmFsMzIpKChvcHVzX3VpbnQzMikoYSktKG9wdXNfdWludDMyKShi
KSkpCisvKiBBdm9pZCBNU1ZDIHdhcm5pbmcgQzQxNDY6IHVuYXJ5IG1pbnVzIG9wZXJhdG9yIGFw
cGxpZWQgdG8gdW5zaWduZWQgdHlwZSAqLworLyoqIE5lZ2F0ZSAzMi1iaXQgdmFsdWUsIGlnbm9y
ZSBhbnkgb3ZlcmZsb3dzICovCisjZGVmaW5lIE5FRzMyX292Zmx3KGEpICgob3B1c192YWwzMiko
MC0ob3B1c191aW50MzIpKGEpKSkKKwogLyoqIDE2eDE2IG11bHRpcGxpY2F0aW9uIHdoZXJlIHRo
ZSByZXN1bHQgZml0cyBpbiAxNiBiaXRzICovCiAjZGVmaW5lIE1VTFQxNl8xNl8xNihhLGIpICAg
ICAoKCgob3B1c192YWwxNikoYSkpKigob3B1c192YWwxNikoYikpKSkKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L2Zsb2F0X2Nhc3QuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9mbG9hdF9jYXN0LmgKaW5kZXggZWQ1YTM5YjU0MzNiNThm
MmZhMDg0MzJkMmViNjE4OWQ2Y2JlOGY2Yy4uOThiNDBhYmNmNjVmNWRmN2E1MWQzZDlkNjdkNjE4
NjlhNTUzNWZlOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Zsb2F0X2Nhc3QuaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZmxvYXRf
Y2FzdC5oCkBAIC02MSw3ICs2MSwxMyBAQAogKiogICAgICB0aGUgY29uZmlnLmggZmlsZS4KICov
CiAKLSNpZiAoSEFWRV9MUklOVEYpCisvKiBXaXRoIEdDQywgd2hlbiBTU0UgaXMgYXZhaWxhYmxl
LCB0aGUgZmFzdGVzdCBjb252ZXJzaW9uIGlzIGN2dHNzMnNpLiAqLworI2lmIGRlZmluZWQoX19H
TlVDX18pICYmIGRlZmluZWQoX19TU0VfXykKKworI2luY2x1ZGUgPHhtbWludHJpbi5oPgorc3Rh
dGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIgZmxvYXQyaW50KGZsb2F0IHgpIHtyZXR1cm4gX21t
X2N2dF9zczJzaShfbW1fc2V0X3NzKHgpKTt9CisKKyNlbGlmIGRlZmluZWQoSEFWRV9MUklOVEYp
CiAKIC8qICAgICAgVGhlc2UgZGVmaW5lcyBlbmFibGUgZnVuY3Rpb25hbGl0eSBpbnRyb2R1Y2Vk
IHdpdGggdGhlIDE5OTkgSVNPIEMKICoqICAgICAgc3RhbmRhcmQuIFRoZXkgbXVzdCBiZSBkZWZp
bmVkIGJlZm9yZSB0aGUgaW5jbHVzaW9uIG9mIG1hdGguaCB0bwpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2tp
c3NfZmZ0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQva2lzc19mZnQuYwppbmRleCAxZjhmZDA1MzIxYTQwMjA0YTNhNjZhZDU1
ODE4ZTQ2NGFhYzlhOTljLi44Mzc3NTE2NWQ4NjZmYjAxZDU4YmNhNzFmY2Y1NjNjZjlkYjhjOGVi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQva2lzc19mZnQuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQva2lzc19mZnQuYwpAQCAtODIs
OCArODIsOCBAQCBzdGF0aWMgdm9pZCBrZl9iZmx5MigKICAgICAgICAgIENfU1VCKCBGb3V0Mlsw
XSAsICBGb3V0WzBdICwgdCApOwogICAgICAgICAgQ19BRERUTyggRm91dFswXSAsICB0ICk7CiAK
LSAgICAgICAgIHQuciA9IFNfTVVMKEZvdXQyWzFdLnIrRm91dDJbMV0uaSwgdHcpOwotICAgICAg
ICAgdC5pID0gU19NVUwoRm91dDJbMV0uaS1Gb3V0MlsxXS5yLCB0dyk7CisgICAgICAgICB0LnIg
PSBTX01VTChBREQzMl9vdmZsdyhGb3V0MlsxXS5yLCBGb3V0MlsxXS5pKSwgdHcpOworICAgICAg
ICAgdC5pID0gU19NVUwoU1VCMzJfb3ZmbHcoRm91dDJbMV0uaSwgRm91dDJbMV0uciksIHR3KTsK
ICAgICAgICAgIENfU1VCKCBGb3V0MlsxXSAsICBGb3V0WzFdICwgdCApOwogICAgICAgICAgQ19B
RERUTyggRm91dFsxXSAsICB0ICk7CiAKQEAgLTkyLDggKzkyLDggQEAgc3RhdGljIHZvaWQga2Zf
YmZseTIoCiAgICAgICAgICBDX1NVQiggRm91dDJbMl0gLCAgRm91dFsyXSAsIHQgKTsKICAgICAg
ICAgIENfQUREVE8oIEZvdXRbMl0gLCAgdCApOwogCi0gICAgICAgICB0LnIgPSBTX01VTChGb3V0
MlszXS5pLUZvdXQyWzNdLnIsIHR3KTsKLSAgICAgICAgIHQuaSA9IFNfTVVMKC1Gb3V0MlszXS5p
LUZvdXQyWzNdLnIsIHR3KTsKKyAgICAgICAgIHQuciA9IFNfTVVMKFNVQjMyX292Zmx3KEZvdXQy
WzNdLmksIEZvdXQyWzNdLnIpLCB0dyk7CisgICAgICAgICB0LmkgPSBTX01VTChORUczMl9vdmZs
dyhBREQzMl9vdmZsdyhGb3V0MlszXS5pLCBGb3V0MlszXS5yKSksIHR3KTsKICAgICAgICAgIENf
U1VCKCBGb3V0MlszXSAsICBGb3V0WzNdICwgdCApOwogICAgICAgICAgQ19BRERUTyggRm91dFsz
XSAsICB0ICk7CiAgICAgICAgICBGb3V0ICs9IDg7CkBAIC0xMjYsMTAgKzEyNiwxMCBAQCBzdGF0
aWMgdm9pZCBrZl9iZmx5NCgKICAgICAgICAgIENfQUREVE8oICpGb3V0ICwgc2NyYXRjaDEgKTsK
ICAgICAgICAgIENfU1VCKCBzY3JhdGNoMSAsIEZvdXRbMV0gLCBGb3V0WzNdICk7CiAKLSAgICAg
ICAgIEZvdXRbMV0uciA9IHNjcmF0Y2gwLnIgKyBzY3JhdGNoMS5pOwotICAgICAgICAgRm91dFsx
XS5pID0gc2NyYXRjaDAuaSAtIHNjcmF0Y2gxLnI7Ci0gICAgICAgICBGb3V0WzNdLnIgPSBzY3Jh
dGNoMC5yIC0gc2NyYXRjaDEuaTsKLSAgICAgICAgIEZvdXRbM10uaSA9IHNjcmF0Y2gwLmkgKyBz
Y3JhdGNoMS5yOworICAgICAgICAgRm91dFsxXS5yID0gQUREMzJfb3ZmbHcoc2NyYXRjaDAuciwg
c2NyYXRjaDEuaSk7CisgICAgICAgICBGb3V0WzFdLmkgPSBTVUIzMl9vdmZsdyhzY3JhdGNoMC5p
LCBzY3JhdGNoMS5yKTsKKyAgICAgICAgIEZvdXRbM10uciA9IFNVQjMyX292Zmx3KHNjcmF0Y2gw
LnIsIHNjcmF0Y2gxLmkpOworICAgICAgICAgRm91dFszXS5pID0gQUREMzJfb3ZmbHcoc2NyYXRj
aDAuaSwgc2NyYXRjaDEucik7CiAgICAgICAgICBGb3V0Kz00OwogICAgICAgfQogICAgfSBlbHNl
IHsKQEAgLTE2MCwxMCArMTYwLDEwIEBAIHN0YXRpYyB2b2lkIGtmX2JmbHk0KAogICAgICAgICAg
ICAgdHczICs9IGZzdHJpZGUqMzsKICAgICAgICAgICAgIENfQUREVE8oICpGb3V0ICwgc2NyYXRj
aFszXSApOwogCi0gICAgICAgICAgICBGb3V0W21dLnIgPSBzY3JhdGNoWzVdLnIgKyBzY3JhdGNo
WzRdLmk7Ci0gICAgICAgICAgICBGb3V0W21dLmkgPSBzY3JhdGNoWzVdLmkgLSBzY3JhdGNoWzRd
LnI7Ci0gICAgICAgICAgICBGb3V0W20zXS5yID0gc2NyYXRjaFs1XS5yIC0gc2NyYXRjaFs0XS5p
OwotICAgICAgICAgICAgRm91dFttM10uaSA9IHNjcmF0Y2hbNV0uaSArIHNjcmF0Y2hbNF0ucjsK
KyAgICAgICAgICAgIEZvdXRbbV0uciA9IEFERDMyX292Zmx3KHNjcmF0Y2hbNV0uciwgc2NyYXRj
aFs0XS5pKTsKKyAgICAgICAgICAgIEZvdXRbbV0uaSA9IFNVQjMyX292Zmx3KHNjcmF0Y2hbNV0u
aSwgc2NyYXRjaFs0XS5yKTsKKyAgICAgICAgICAgIEZvdXRbbTNdLnIgPSBTVUIzMl9vdmZsdyhz
Y3JhdGNoWzVdLnIsIHNjcmF0Y2hbNF0uaSk7CisgICAgICAgICAgICBGb3V0W20zXS5pID0gQURE
MzJfb3ZmbHcoc2NyYXRjaFs1XS5pLCBzY3JhdGNoWzRdLnIpOwogICAgICAgICAgICAgKytGb3V0
OwogICAgICAgICAgfQogICAgICAgfQpAQCAtMjEyLDE4ICsyMTIsMTggQEAgc3RhdGljIHZvaWQg
a2ZfYmZseTMoCiAgICAgICAgICB0dzEgKz0gZnN0cmlkZTsKICAgICAgICAgIHR3MiArPSBmc3Ry
aWRlKjI7CiAKLSAgICAgICAgIEZvdXRbbV0uciA9IEZvdXQtPnIgLSBIQUxGX09GKHNjcmF0Y2hb
M10ucik7Ci0gICAgICAgICBGb3V0W21dLmkgPSBGb3V0LT5pIC0gSEFMRl9PRihzY3JhdGNoWzNd
LmkpOworICAgICAgICAgRm91dFttXS5yID0gU1VCMzJfb3ZmbHcoRm91dC0+ciwgSEFMRl9PRihz
Y3JhdGNoWzNdLnIpKTsKKyAgICAgICAgIEZvdXRbbV0uaSA9IFNVQjMyX292Zmx3KEZvdXQtPmks
IEhBTEZfT0Yoc2NyYXRjaFszXS5pKSk7CiAKICAgICAgICAgIENfTVVMQllTQ0FMQVIoIHNjcmF0
Y2hbMF0gLCBlcGkzLmkgKTsKIAogICAgICAgICAgQ19BRERUTygqRm91dCxzY3JhdGNoWzNdKTsK
IAotICAgICAgICAgRm91dFttMl0uciA9IEZvdXRbbV0uciArIHNjcmF0Y2hbMF0uaTsKLSAgICAg
ICAgIEZvdXRbbTJdLmkgPSBGb3V0W21dLmkgLSBzY3JhdGNoWzBdLnI7CisgICAgICAgICBGb3V0
W20yXS5yID0gQUREMzJfb3ZmbHcoRm91dFttXS5yLCBzY3JhdGNoWzBdLmkpOworICAgICAgICAg
Rm91dFttMl0uaSA9IFNVQjMyX292Zmx3KEZvdXRbbV0uaSwgc2NyYXRjaFswXS5yKTsKIAotICAg
ICAgICAgRm91dFttXS5yIC09IHNjcmF0Y2hbMF0uaTsKLSAgICAgICAgIEZvdXRbbV0uaSArPSBz
Y3JhdGNoWzBdLnI7CisgICAgICAgICBGb3V0W21dLnIgPSBTVUIzMl9vdmZsdyhGb3V0W21dLnIs
IHNjcmF0Y2hbMF0uaSk7CisgICAgICAgICBGb3V0W21dLmkgPSBBREQzMl9vdmZsdyhGb3V0W21d
LmksIHNjcmF0Y2hbMF0ucik7CiAKICAgICAgICAgICsrRm91dDsKICAgICAgIH0gd2hpbGUoLS1r
KTsKQEAgLTI4MiwyMiArMjgyLDIyIEBAIHN0YXRpYyB2b2lkIGtmX2JmbHk1KAogICAgICAgICAg
Q19BREQoIHNjcmF0Y2hbOF0sc2NyYXRjaFsyXSxzY3JhdGNoWzNdKTsKICAgICAgICAgIENfU1VC
KCBzY3JhdGNoWzldLHNjcmF0Y2hbMl0sc2NyYXRjaFszXSk7CiAKLSAgICAgICAgIEZvdXQwLT5y
ICs9IHNjcmF0Y2hbN10uciArIHNjcmF0Y2hbOF0ucjsKLSAgICAgICAgIEZvdXQwLT5pICs9IHNj
cmF0Y2hbN10uaSArIHNjcmF0Y2hbOF0uaTsKKyAgICAgICAgIEZvdXQwLT5yID0gQUREMzJfb3Zm
bHcoRm91dDAtPnIsIEFERDMyX292Zmx3KHNjcmF0Y2hbN10uciwgc2NyYXRjaFs4XS5yKSk7Cisg
ICAgICAgICBGb3V0MC0+aSA9IEFERDMyX292Zmx3KEZvdXQwLT5pLCBBREQzMl9vdmZsdyhzY3Jh
dGNoWzddLmksIHNjcmF0Y2hbOF0uaSkpOwogCi0gICAgICAgICBzY3JhdGNoWzVdLnIgPSBzY3Jh
dGNoWzBdLnIgKyBTX01VTChzY3JhdGNoWzddLnIseWEucikgKyBTX01VTChzY3JhdGNoWzhdLnIs
eWIucik7Ci0gICAgICAgICBzY3JhdGNoWzVdLmkgPSBzY3JhdGNoWzBdLmkgKyBTX01VTChzY3Jh
dGNoWzddLmkseWEucikgKyBTX01VTChzY3JhdGNoWzhdLmkseWIucik7CisgICAgICAgICBzY3Jh
dGNoWzVdLnIgPSBBREQzMl9vdmZsdyhzY3JhdGNoWzBdLnIsIEFERDMyX292Zmx3KFNfTVVMKHNj
cmF0Y2hbN10ucix5YS5yKSwgU19NVUwoc2NyYXRjaFs4XS5yLHliLnIpKSk7CisgICAgICAgICBz
Y3JhdGNoWzVdLmkgPSBBREQzMl9vdmZsdyhzY3JhdGNoWzBdLmksIEFERDMyX292Zmx3KFNfTVVM
KHNjcmF0Y2hbN10uaSx5YS5yKSwgU19NVUwoc2NyYXRjaFs4XS5pLHliLnIpKSk7CiAKLSAgICAg
ICAgIHNjcmF0Y2hbNl0uciA9ICBTX01VTChzY3JhdGNoWzEwXS5pLHlhLmkpICsgU19NVUwoc2Ny
YXRjaFs5XS5pLHliLmkpOwotICAgICAgICAgc2NyYXRjaFs2XS5pID0gLVNfTVVMKHNjcmF0Y2hb
MTBdLnIseWEuaSkgLSBTX01VTChzY3JhdGNoWzldLnIseWIuaSk7CisgICAgICAgICBzY3JhdGNo
WzZdLnIgPSAgQUREMzJfb3ZmbHcoU19NVUwoc2NyYXRjaFsxMF0uaSx5YS5pKSwgU19NVUwoc2Ny
YXRjaFs5XS5pLHliLmkpKTsKKyAgICAgICAgIHNjcmF0Y2hbNl0uaSA9IE5FRzMyX292Zmx3KEFE
RDMyX292Zmx3KFNfTVVMKHNjcmF0Y2hbMTBdLnIseWEuaSksIFNfTVVMKHNjcmF0Y2hbOV0ucix5
Yi5pKSkpOwogCiAgICAgICAgICBDX1NVQigqRm91dDEsc2NyYXRjaFs1XSxzY3JhdGNoWzZdKTsK
ICAgICAgICAgIENfQUREKCpGb3V0NCxzY3JhdGNoWzVdLHNjcmF0Y2hbNl0pOwogCi0gICAgICAg
ICBzY3JhdGNoWzExXS5yID0gc2NyYXRjaFswXS5yICsgU19NVUwoc2NyYXRjaFs3XS5yLHliLnIp
ICsgU19NVUwoc2NyYXRjaFs4XS5yLHlhLnIpOwotICAgICAgICAgc2NyYXRjaFsxMV0uaSA9IHNj
cmF0Y2hbMF0uaSArIFNfTVVMKHNjcmF0Y2hbN10uaSx5Yi5yKSArIFNfTVVMKHNjcmF0Y2hbOF0u
aSx5YS5yKTsKLSAgICAgICAgIHNjcmF0Y2hbMTJdLnIgPSAtIFNfTVVMKHNjcmF0Y2hbMTBdLmks
eWIuaSkgKyBTX01VTChzY3JhdGNoWzldLmkseWEuaSk7Ci0gICAgICAgICBzY3JhdGNoWzEyXS5p
ID0gU19NVUwoc2NyYXRjaFsxMF0ucix5Yi5pKSAtIFNfTVVMKHNjcmF0Y2hbOV0ucix5YS5pKTsK
KyAgICAgICAgIHNjcmF0Y2hbMTFdLnIgPSBBREQzMl9vdmZsdyhzY3JhdGNoWzBdLnIsIEFERDMy
X292Zmx3KFNfTVVMKHNjcmF0Y2hbN10ucix5Yi5yKSwgU19NVUwoc2NyYXRjaFs4XS5yLHlhLnIp
KSk7CisgICAgICAgICBzY3JhdGNoWzExXS5pID0gQUREMzJfb3ZmbHcoc2NyYXRjaFswXS5pLCBB
REQzMl9vdmZsdyhTX01VTChzY3JhdGNoWzddLmkseWIuciksIFNfTVVMKHNjcmF0Y2hbOF0uaSx5
YS5yKSkpOworICAgICAgICAgc2NyYXRjaFsxMl0uciA9IFNVQjMyX292Zmx3KFNfTVVMKHNjcmF0
Y2hbOV0uaSx5YS5pKSwgU19NVUwoc2NyYXRjaFsxMF0uaSx5Yi5pKSk7CisgICAgICAgICBzY3Jh
dGNoWzEyXS5pID0gU1VCMzJfb3ZmbHcoU19NVUwoc2NyYXRjaFsxMF0ucix5Yi5pKSwgU19NVUwo
c2NyYXRjaFs5XS5yLHlhLmkpKTsKIAogICAgICAgICAgQ19BREQoKkZvdXQyLHNjcmF0Y2hbMTFd
LHNjcmF0Y2hbMTJdKTsKICAgICAgICAgIENfU1VCKCpGb3V0MyxzY3JhdGNoWzExXSxzY3JhdGNo
WzEyXSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbWF0aG9wcy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21hdGhvcHMuaAppbmRleCBh
MDUyNWE5NjEwMzBhZTVkZjE2NzRmZjU5NjEyZjIwNTQ0NTNhOTIxLi4xZjhhMjBjYjQ1NDAyNTVm
ZmM0ZWEwYTVmNjcxNmEzMTc5OGM2YTZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbWF0aG9wcy5oCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9tYXRob3BzLmgKQEAgLTM4LDExICszOCw0NCBAQAogI2luY2x1ZGUgImVudGNvZGUuaCIK
ICNpbmNsdWRlICJvc19zdXBwb3J0LmgiCiAKKyNkZWZpbmUgUEkgMy4xNDE1OTI2NTNmCisKIC8q
IE11bHRpcGxpZXMgdHdvIDE2LWJpdCBmcmFjdGlvbmFsIHZhbHVlcy4gQml0LWV4YWN0bmVzcyBv
ZiB0aGlzIG1hY3JvIGlzIGltcG9ydGFudCAqLwogI2RlZmluZSBGUkFDX01VTDE2KGEsYikgKCgx
NjM4NCsoKG9wdXNfaW50MzIpKG9wdXNfaW50MTYpKGEpKihvcHVzX2ludDE2KShiKSkpPj4xNSkK
IAogdW5zaWduZWQgaXNxcnQzMihvcHVzX3VpbnQzMiBfdmFsKTsKIAorLyogQ0VMVCBkb2Vzbid0
IG5lZWQgaXQgZm9yIGZpeGVkLXBvaW50LCBieSBhbmFseXNpcy5jIGRvZXMuICovCisjaWYgIWRl
ZmluZWQoRklYRURfUE9JTlQpIHx8IGRlZmluZWQoQU5BTFlTSVNfQykKKyNkZWZpbmUgY0EgMC40
MzE1Nzk3NGYKKyNkZWZpbmUgY0IgMC42Nzg0ODQwM2YKKyNkZWZpbmUgY0MgMC4wODU5NTU0MmYK
KyNkZWZpbmUgY0UgKChmbG9hdClQSS8yKQorc3RhdGljIE9QVVNfSU5MSU5FIGZsb2F0IGZhc3Rf
YXRhbjJmKGZsb2F0IHksIGZsb2F0IHgpIHsKKyAgIGZsb2F0IHgyLCB5MjsKKyAgIHgyID0geCp4
OworICAgeTIgPSB5Knk7CisgICAvKiBGb3IgdmVyeSBzbWFsbCB2YWx1ZXMsIHdlIGRvbid0IGNh
cmUgYWJvdXQgdGhlIGFuc3dlciwgc28KKyAgICAgIHdlIGNhbiBqdXN0IHJldHVybiAwLiAqLwor
ICAgaWYgKHgyICsgeTIgPCAxZS0xOGYpCisgICB7CisgICAgICByZXR1cm4gMDsKKyAgIH0KKyAg
IGlmKHgyPHkyKXsKKyAgICAgIGZsb2F0IGRlbiA9ICh5MiArIGNCKngyKSAqICh5MiArIGNDKngy
KTsKKyAgICAgIHJldHVybiAteCp5Kih5MiArIGNBKngyKSAvIGRlbiArICh5PDAgPyAtY0UgOiBj
RSk7CisgICB9ZWxzZXsKKyAgICAgIGZsb2F0IGRlbiA9ICh4MiArIGNCKnkyKSAqICh4MiArIGND
KnkyKTsKKyAgICAgIHJldHVybiAgeCp5Kih4MiArIGNBKnkyKSAvIGRlbiArICh5PDAgPyAtY0Ug
OiBjRSkgLSAoeCp5PDAgPyAtY0UgOiBjRSk7CisgICB9Cit9CisjdW5kZWYgY0EKKyN1bmRlZiBj
QgorI3VuZGVmIGNDCisjdW5kZWYgY0QKKyNlbmRpZgorCisKICNpZm5kZWYgT1ZFUlJJREVfQ0VM
VF9NQVhBQlMxNgogc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfdmFsMzIgY2VsdF9tYXhhYnMxNihj
b25zdCBvcHVzX3ZhbDE2ICp4LCBpbnQgbGVuKQogewpAQCAtODAsNyArMTEzLDYgQEAgc3RhdGlj
IE9QVVNfSU5MSU5FIG9wdXNfdmFsMzIgY2VsdF9tYXhhYnMzMihjb25zdCBvcHVzX3ZhbDMyICp4
LCBpbnQgbGVuKQogCiAjaWZuZGVmIEZJWEVEX1BPSU5UCiAKLSNkZWZpbmUgUEkgMy4xNDE1OTI2
NTNmCiAjZGVmaW5lIGNlbHRfc3FydCh4KSAoKGZsb2F0KXNxcnQoeCkpCiAjZGVmaW5lIGNlbHRf
cnNxcnQoeCkgKDEuZi9jZWx0X3NxcnQoeCkpCiAjZGVmaW5lIGNlbHRfcnNxcnRfbm9ybSh4KSAo
Y2VsdF9yc3FydCh4KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9tZGN0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbWRjdC5jCmluZGV4
IDUzMTVhZDExYTM3YmJhOTIxMWQ0OWI1NWRlZjU1ZWU3ZjE1MmMyMmMuLjVjNmRhYjViNzU3YTY0
YWY5MTI5MzZmMGNlNmZlMjJiOGZjMTEyZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9tZGN0LmMKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L21kY3QuYwpAQCAtMjcwLDggKzI3MCw4IEBAIHZvaWQgY2x0X21kY3RfYmFja3dhcmRfYyhj
b25zdCBtZGN0X2xvb2t1cCAqbCwga2lzc19mZnRfc2NhbGFyICppbiwga2lzc19mZnRfc2NhCiAg
ICAgICAgICBpbnQgcmV2OwogICAgICAgICAga2lzc19mZnRfc2NhbGFyIHlyLCB5aTsKICAgICAg
ICAgIHJldiA9ICpiaXRyZXYrKzsKLSAgICAgICAgIHlyID0gU19NVUwoKnhwMiwgdFtpXSkgKyBT
X01VTCgqeHAxLCB0W040K2ldKTsKLSAgICAgICAgIHlpID0gU19NVUwoKnhwMSwgdFtpXSkgLSBT
X01VTCgqeHAyLCB0W040K2ldKTsKKyAgICAgICAgIHlyID0gQUREMzJfb3ZmbHcoU19NVUwoKnhw
MiwgdFtpXSksIFNfTVVMKCp4cDEsIHRbTjQraV0pKTsKKyAgICAgICAgIHlpID0gU1VCMzJfb3Zm
bHcoU19NVUwoKnhwMSwgdFtpXSksIFNfTVVMKCp4cDIsIHRbTjQraV0pKTsKICAgICAgICAgIC8q
IFdlIHN3YXAgcmVhbCBhbmQgaW1hZyBiZWNhdXNlIHdlIHVzZSBhbiBGRlQgaW5zdGVhZCBvZiBh
biBJRkZULiAqLwogICAgICAgICAgeXBbMipyZXYrMV0gPSB5cjsKICAgICAgICAgIHlwWzIqcmV2
XSA9IHlpOwpAQCAtMzAxLDggKzMwMSw4IEBAIHZvaWQgY2x0X21kY3RfYmFja3dhcmRfYyhjb25z
dCBtZGN0X2xvb2t1cCAqbCwga2lzc19mZnRfc2NhbGFyICppbiwga2lzc19mZnRfc2NhCiAgICAg
ICAgICB0MCA9IHRbaV07CiAgICAgICAgICB0MSA9IHRbTjQraV07CiAgICAgICAgICAvKiBXZSdk
IHNjYWxlIHVwIGJ5IDIgaGVyZSwgYnV0IGluc3RlYWQgaXQncyBkb25lIHdoZW4gbWl4aW5nIHRo
ZSB3aW5kb3dzICovCi0gICAgICAgICB5ciA9IFNfTVVMKHJlLHQwKSArIFNfTVVMKGltLHQxKTsK
LSAgICAgICAgIHlpID0gU19NVUwocmUsdDEpIC0gU19NVUwoaW0sdDApOworICAgICAgICAgeXIg
PSBBREQzMl9vdmZsdyhTX01VTChyZSx0MCksIFNfTVVMKGltLHQxKSk7CisgICAgICAgICB5aSA9
IFNVQjMyX292Zmx3KFNfTVVMKHJlLHQxKSwgU19NVUwoaW0sdDApKTsKICAgICAgICAgIC8qIFdl
IHN3YXAgcmVhbCBhbmQgaW1hZyBiZWNhdXNlIHdlJ3JlIHVzaW5nIGFuIEZGVCBpbnN0ZWFkIG9m
IGFuIElGRlQuICovCiAgICAgICAgICByZSA9IHlwMVsxXTsKICAgICAgICAgIGltID0geXAxWzBd
OwpAQCAtMzEyLDggKzMxMiw4IEBAIHZvaWQgY2x0X21kY3RfYmFja3dhcmRfYyhjb25zdCBtZGN0
X2xvb2t1cCAqbCwga2lzc19mZnRfc2NhbGFyICppbiwga2lzc19mZnRfc2NhCiAgICAgICAgICB0
MCA9IHRbKE40LWktMSldOwogICAgICAgICAgdDEgPSB0WyhOMi1pLTEpXTsKICAgICAgICAgIC8q
IFdlJ2Qgc2NhbGUgdXAgYnkgMiBoZXJlLCBidXQgaW5zdGVhZCBpdCdzIGRvbmUgd2hlbiBtaXhp
bmcgdGhlIHdpbmRvd3MgKi8KLSAgICAgICAgIHlyID0gU19NVUwocmUsdDApICsgU19NVUwoaW0s
dDEpOwotICAgICAgICAgeWkgPSBTX01VTChyZSx0MSkgLSBTX01VTChpbSx0MCk7CisgICAgICAg
ICB5ciA9IEFERDMyX292Zmx3KFNfTVVMKHJlLHQwKSwgU19NVUwoaW0sdDEpKTsKKyAgICAgICAg
IHlpID0gU1VCMzJfb3ZmbHcoU19NVUwocmUsdDEpLCBTX01VTChpbSx0MCkpOwogICAgICAgICAg
eXAxWzBdID0geXI7CiAgICAgICAgICB5cDBbMV0gPSB5aTsKICAgICAgICAgIHlwMCArPSAyOwpA
QCAtMzMzLDggKzMzMyw4IEBAIHZvaWQgY2x0X21kY3RfYmFja3dhcmRfYyhjb25zdCBtZGN0X2xv
b2t1cCAqbCwga2lzc19mZnRfc2NhbGFyICppbiwga2lzc19mZnRfc2NhCiAgICAgICAgICBraXNz
X2ZmdF9zY2FsYXIgeDEsIHgyOwogICAgICAgICAgeDEgPSAqeHAxOwogICAgICAgICAgeDIgPSAq
eXAxOwotICAgICAgICAgKnlwMSsrID0gTVVMVDE2XzMyX1ExNSgqd3AyLCB4MikgLSBNVUxUMTZf
MzJfUTE1KCp3cDEsIHgxKTsKLSAgICAgICAgICp4cDEtLSA9IE1VTFQxNl8zMl9RMTUoKndwMSwg
eDIpICsgTVVMVDE2XzMyX1ExNSgqd3AyLCB4MSk7CisgICAgICAgICAqeXAxKysgPSBTVUIzMl9v
dmZsdyhNVUxUMTZfMzJfUTE1KCp3cDIsIHgyKSwgTVVMVDE2XzMyX1ExNSgqd3AxLCB4MSkpOwor
ICAgICAgICAgKnhwMS0tID0gQUREMzJfb3ZmbHcoTVVMVDE2XzMyX1ExNSgqd3AxLCB4MiksIE1V
TFQxNl8zMl9RMTUoKndwMiwgeDEpKTsKICAgICAgICAgIHdwMSsrOwogICAgICAgICAgd3AyLS07
CiAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbWlwcy92cV9taXBzcjEuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9taXBzL3Zx
X21pcHNyMS5oCmluZGV4IDU0Y2VmODYxMzM3NTQwOTcxN2I4NmVlYWFmYjczNDZkMTJlYWE4MDAu
LmZkMThlYWI3YTk2NjA0NjUzOWE2MGI4YTIyZGRlZWQyZjFhMGE1YjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9taXBzL3ZxX21pcHNyMS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9taXBzL3ZxX21pcHNyMS5oCkBAIC0zNiw5ICsz
Niw2IEBACiAjaW5jbHVkZSAibWF0aG9wcy5oIgogI2luY2x1ZGUgImFyY2guaCIKIAotc3RhdGlj
IHVuc2lnbmVkIGV4dHJhY3RfY29sbGFwc2VfbWFzayhpbnQgKml5LCBpbnQgTiwgaW50IEIpOwot
c3RhdGljIHZvaWQgbm9ybWFsaXNlX3Jlc2lkdWFsKGludCAqIE9QVVNfUkVTVFJJQ1QgaXksIGNl
bHRfbm9ybSAqIE9QVVNfUkVTVFJJQ1QgWCwgaW50IE4sIG9wdXNfdmFsMzIgUnl5LCBvcHVzX3Zh
bDE2IGdhaW4pOwotc3RhdGljIHZvaWQgZXhwX3JvdGF0aW9uKGNlbHRfbm9ybSAqWCwgaW50IGxl
biwgaW50IGRpciwgaW50IHN0cmlkZSwgaW50IEssIGludCBzcHJlYWQpOwogc3RhdGljIHZvaWQg
cmVub3JtYWxpc2VfdmVjdG9yX21pcHMoY2VsdF9ub3JtICpYLCBpbnQgTiwgb3B1c192YWwxNiBn
YWluLCBpbnQgYXJjaCk7CiAKICNkZWZpbmUgT1ZFUlJJREVfdnFfZXhwX3JvdGF0aW9uMQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L21vZGVzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbW9kZXMuYwppbmRleCA5MTE2ODZlOTA1NTIyOTg2
YjM0ZjRkYjU3ZDE2MjNhZTQyM2FhY2Q4Li4zOTBjNWU4YWViMzZhYTQ4YjE2ZDJmZmEyMDI1NTRk
YzE3NGRhNjYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbW9kZXMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbW9kZXMuYwpAQCAt
NDI3LDcgKzQyNyw3IEBAIHZvaWQgb3B1c19jdXN0b21fbW9kZV9kZXN0cm95KENFTFRNb2RlICpt
b2RlKQogICAgfQogI2VuZGlmIC8qIENVU1RPTV9NT0RFU19PTkxZICovCiAgICBvcHVzX2ZyZWUo
KG9wdXNfaW50MTYqKW1vZGUtPmVCYW5kcyk7Ci0gICBvcHVzX2ZyZWUoKG9wdXNfaW50MTYqKW1v
ZGUtPmFsbG9jVmVjdG9ycyk7CisgICBvcHVzX2ZyZWUoKHVuc2lnbmVkIGNoYXIqKW1vZGUtPmFs
bG9jVmVjdG9ycyk7CiAKICAgIG9wdXNfZnJlZSgob3B1c192YWwxNiopbW9kZS0+d2luZG93KTsK
ICAgIG9wdXNfZnJlZSgob3B1c19pbnQxNiopbW9kZS0+bG9nTik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
cGl0Y2guYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9waXRjaC5jCmluZGV4IGJmNDZlN2Q1NjJiMzlmNjI3NTJjMzAwOTFlOTAw
NjRlNDM0NGIzNzIuLjViMDYxZDg2MGY0NTJiOGMzNTM5ZjUwYjg2ZGZkMTIzMGI3ZWM1MjEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9waXRjaC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9waXRjaC5jCkBAIC0yMjAsMTMgKzIyMCw4
IEBAIG9wdXNfdmFsMzIKICNlbHNlCiB2b2lkCiAjZW5kaWYKLSNpZiBkZWZpbmVkKE9WRVJSSURF
X1BJVENIX1hDT1JSKQogY2VsdF9waXRjaF94Y29ycl9jKGNvbnN0IG9wdXNfdmFsMTYgKl94LCBj
b25zdCBvcHVzX3ZhbDE2ICpfeSwKLSAgICAgIG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBp
bnQgbWF4X3BpdGNoKQotI2Vsc2UKLWNlbHRfcGl0Y2hfeGNvcnIoY29uc3Qgb3B1c192YWwxNiAq
X3gsIGNvbnN0IG9wdXNfdmFsMTYgKl95LAogICAgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBs
ZW4sIGludCBtYXhfcGl0Y2gsIGludCBhcmNoKQotI2VuZGlmCiB7CiAKICNpZiAwIC8qIFRoaXMg
aXMgYSBzaW1wbGUgdmVyc2lvbiBvZiB0aGUgcGl0Y2ggY29ycmVsYXRpb24gdGhhdCBzaG91bGQg
d29yawpAQCAtMjY1LDExICsyNjAsNyBAQCBjZWx0X3BpdGNoX3hjb3JyKGNvbnN0IG9wdXNfdmFs
MTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKICAgIGZvciAoaT0wO2k8bWF4X3BpdGNoLTM7
aSs9NCkKICAgIHsKICAgICAgIG9wdXNfdmFsMzIgc3VtWzRdPXswLDAsMCwwfTsKLSNpZiBkZWZp
bmVkKE9WRVJSSURFX1BJVENIX1hDT1JSKQotICAgICAgeGNvcnJfa2VybmVsX2MoX3gsIF95K2ks
IHN1bSwgbGVuKTsKLSNlbHNlCiAgICAgICB4Y29ycl9rZXJuZWwoX3gsIF95K2ksIHN1bSwgbGVu
LCBhcmNoKTsKLSNlbmRpZgogICAgICAgeGNvcnJbaV09c3VtWzBdOwogICAgICAgeGNvcnJbaSsx
XT1zdW1bMV07CiAgICAgICB4Y29ycltpKzJdPXN1bVsyXTsKQEAgLTI4NSwxMSArMjc2LDcgQEAg
Y2VsdF9waXRjaF94Y29ycihjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAq
X3ksCiAgICBmb3IgKDtpPG1heF9waXRjaDtpKyspCiAgICB7CiAgICAgICBvcHVzX3ZhbDMyIHN1
bTsKLSNpZiBkZWZpbmVkKE9WRVJSSURFX1BJVENIX1hDT1JSKQotICAgICAgc3VtID0gY2VsdF9p
bm5lcl9wcm9kX2MoX3gsIF95K2ksIGxlbik7Ci0jZWxzZQogICAgICAgc3VtID0gY2VsdF9pbm5l
cl9wcm9kKF94LCBfeStpLCBsZW4sIGFyY2gpOwotI2VuZGlmCiAgICAgICB4Y29ycltpXSA9IHN1
bTsKICNpZmRlZiBGSVhFRF9QT0lOVAogICAgICAgbWF4Y29yciA9IE1BWDMyKG1heGNvcnIsIHN1
bSk7CkBAIC0zNzgsNyArMzY1LDcgQEAgdm9pZCBwaXRjaF9zZWFyY2goY29uc3Qgb3B1c192YWwx
NiAqIE9QVVNfUkVTVFJJQ1QgeF9scCwgb3B1c192YWwxNiAqIE9QVVNfUkVTVFIKICAgICAgIGZv
ciAoaj0wO2o8bGVuPj4xO2orKykKICAgICAgICAgIHN1bSArPSBTSFIzMihNVUxUMTZfMTYoeF9s
cFtqXSx5W2kral0pLCBzaGlmdCk7CiAjZWxzZQotICAgICAgc3VtID0gY2VsdF9pbm5lcl9wcm9k
X2MoeF9scCwgeStpLCBsZW4+PjEpOworICAgICAgc3VtID0gY2VsdF9pbm5lcl9wcm9kKHhfbHAs
IHkraSwgbGVuPj4xLCBhcmNoKTsKICNlbmRpZgogICAgICAgeGNvcnJbaV0gPSBNQVgzMigtMSwg
c3VtKTsKICNpZmRlZiBGSVhFRF9QT0lOVApAQCAtNDI0LDcgKzQxMSw3IEBAIHN0YXRpYyBvcHVz
X3ZhbDE2IGNvbXB1dGVfcGl0Y2hfZ2FpbihvcHVzX3ZhbDMyIHh5LCBvcHVzX3ZhbDMyIHh4LCBv
cHVzX3ZhbDMyIHl5CiAgICBzeCA9IGNlbHRfaWxvZzIoeHgpLTE0OwogICAgc3kgPSBjZWx0X2ls
b2cyKHl5KS0xNDsKICAgIHNoaWZ0ID0gc3ggKyBzeTsKLSAgIHgyeTIgPSBNVUxUMTZfMTZfUTE0
KFZTSFIzMih4eCwgc3gpLCBWU0hSMzIoeXksIHN5KSk7CisgICB4MnkyID0gU0hSMzIoTVVMVDE2
XzE2KFZTSFIzMih4eCwgc3gpLCBWU0hSMzIoeXksIHN5KSksIDE0KTsKICAgIGlmIChzaGlmdCAm
IDEpIHsKICAgICAgIGlmICh4MnkyIDwgMzI3NjgpCiAgICAgICB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
cGl0Y2guaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9waXRjaC5oCmluZGV4IGQzNTAzNTMyYTA4MGIzNzg3NTVkYzAxYmEyNmMw
NTVkZGFiMjI1YzUuLmU0MjVmNTZhZWFhODkyYTlhY2RjN2E2YmM1OGQ5ZTU3ZGRjZTcyNDYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9waXRjaC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9waXRjaC5oCkBAIC00Niw4ICs0Niw3IEBA
CiAjaW5jbHVkZSAibWlwcy9waXRjaF9taXBzcjEuaCIKICNlbmRpZgogCi0jaWYgKChkZWZpbmVk
KE9QVVNfQVJNX0FTTSkgJiYgZGVmaW5lZChGSVhFRF9QT0lOVCkpIFwKLSAgfHwgZGVmaW5lZChP
UFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpKQorI2lmIChkZWZpbmVkKE9QVVNfQVJNX0FTTSkg
fHwgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpKQogIyBpbmNsdWRlICJhcm0v
cGl0Y2hfYXJtLmgiCiAjZW5kaWYKIApAQCAtMTg0LDE3ICsxODMsMTAgQEAgb3B1c192YWwzMgog
dm9pZAogI2VuZGlmCiBjZWx0X3BpdGNoX3hjb3JyX2MoY29uc3Qgb3B1c192YWwxNiAqX3gsIGNv
bnN0IG9wdXNfdmFsMTYgKl95LAotICAgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGlu
dCBtYXhfcGl0Y2gpOwotCi0jaWYgIWRlZmluZWQoT1ZFUlJJREVfUElUQ0hfWENPUlIpCi0jaWZk
ZWYgRklYRURfUE9JTlQKLW9wdXNfdmFsMzIKLSNlbHNlCi12b2lkCi0jZW5kaWYKLWNlbHRfcGl0
Y2hfeGNvcnIoY29uc3Qgb3B1c192YWwxNiAqX3gsIGNvbnN0IG9wdXNfdmFsMTYgKl95LAogICAg
ICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gsIGludCBhcmNoKTsK
IAorI2lmbmRlZiBPVkVSUklERV9QSVRDSF9YQ09SUgorIyBkZWZpbmUgY2VsdF9waXRjaF94Y29y
ciBjZWx0X3BpdGNoX3hjb3JyX2MKICNlbmRpZgogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9x
dWFudF9iYW5kcy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L3F1YW50X2JhbmRzLmMKaW5kZXggOTUwNzZlMGFmMmQ0ZWUwN2Iy
NWI1YjMzMzA1NDI3NzNlMjQ0OTdiMi4uNTYxMDFiMWNmZWNiOGY1ODExYzA3NjE4ODMwZDdlZTM4
NDJhZWI0OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3F1YW50X2JhbmRzLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3F1YW50X2Jh
bmRzLmMKQEAgLTQxOCw2ICs0MTgsNyBAQCB2b2lkIHF1YW50X2VuZXJneV9maW5hbGlzZShjb25z
dCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLCBvcHVzX3ZhbDE2ICpvbAogICAgICAg
ICAgICAgb2Zmc2V0ID0gKHEyLS41ZikqKDE8PCgxNC1maW5lX3F1YW50W2ldLTEpKSooMS5mLzE2
Mzg0KTsKICNlbmRpZgogICAgICAgICAgICAgb2xkRUJhbmRzW2krYyptLT5uYkVCYW5kc10gKz0g
b2Zmc2V0OworICAgICAgICAgICAgZXJyb3JbaStjKm0tPm5iRUJhbmRzXSAtPSBvZmZzZXQ7CiAg
ICAgICAgICAgICBiaXRzX2xlZnQtLTsKICAgICAgICAgIH0gd2hpbGUgKCsrYyA8IEMpOwogICAg
ICAgfQpAQCAtNTQ3LDkgKzU0OCwxNSBAQCB2b2lkIGFtcDJMb2cyKGNvbnN0IENFTFRNb2RlICpt
LCBpbnQgZWZmRW5kLCBpbnQgZW5kLAogICAgYz0wOwogICAgZG8gewogICAgICAgZm9yIChpPTA7
aTxlZmZFbmQ7aSsrKQorICAgICAgewogICAgICAgICAgYmFuZExvZ0VbaStjKm0tPm5iRUJhbmRz
XSA9Ci0gICAgICAgICAgICAgICBjZWx0X2xvZzIoU0hMMzIoYmFuZEVbaStjKm0tPm5iRUJhbmRz
XSwyKSkKKyAgICAgICAgICAgICAgIGNlbHRfbG9nMihiYW5kRVtpK2MqbS0+bmJFQmFuZHNdKQog
ICAgICAgICAgICAgICAgLSBTSEwxNigob3B1c192YWwxNillTWVhbnNbaV0sNik7CisjaWZkZWYg
RklYRURfUE9JTlQKKyAgICAgICAgIC8qIENvbXBlbnNhdGUgZm9yIGJhbmRFW10gYmVpbmcgUTEy
IGJ1dCBjZWx0X2xvZzIoKSB0YWtpbmcgYSBRMTQgaW5wdXQuICovCisgICAgICAgICBiYW5kTG9n
RVtpK2MqbS0+bmJFQmFuZHNdICs9IFFDT05TVDE2KDIuZiwgREJfU0hJRlQpOworI2VuZGlmCisg
ICAgICB9CiAgICAgICBmb3IgKGk9ZWZmRW5kO2k8ZW5kO2krKykKICAgICAgICAgIGJhbmRMb2dF
W2MqbS0+bmJFQmFuZHMraV0gPSAtUUNPTlNUMTYoMTQuZixEQl9TSElGVCk7CiAgICB9IHdoaWxl
ICgrK2MgPCBDKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9yYXRlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvcmF0ZS5jCmluZGV4IDdk
ZmE1YmU4YTYzOTI2ODQxNWVhMWNmNDZiNmU0OTczMGUzODk0OTYuLmNhNGNjODcwZWFhNDEyZjUy
YTQ1ZjQxYTkzODI4MmI1YTBjN2Q0ZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9yYXRlLmMKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L3JhdGUuYwpAQCAtMzQ4LDEyICszNDgsMTcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIGludCBpbnRl
cnBfYml0czJwdWxzZXMoY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwKICAg
ICAgICAgICAgIC8qVGhpcyBpZigpIGJsb2NrIGlzIHRoZSBvbmx5IHBhcnQgb2YgdGhlIGFsbG9j
YXRpb24gZnVuY3Rpb24gdGhhdAogICAgICAgICAgICAgICAgaXMgbm90IGEgbWFuZGF0b3J5IHBh
cnQgb2YgdGhlIGJpdHN0cmVhbTogYW55IGJhbmRzIHdlIGNob29zZSB0bwogICAgICAgICAgICAg
ICAgc2tpcCBoZXJlIG11c3QgYmUgZXhwbGljaXRseSBzaWduYWxlZC4qLwotICAgICAgICAgICAg
LypDaG9vc2UgYSB0aHJlc2hvbGQgd2l0aCBzb21lIGh5c3RlcmVzaXMgdG8ga2VlcCBiYW5kcyBm
cm9tCi0gICAgICAgICAgICAgICBmbHVjdHVhdGluZyBpbiBhbmQgb3V0LiovCisgICAgICAgICAg
ICBpbnQgZGVwdGhfdGhyZXNob2xkOworICAgICAgICAgICAgLypXZSBjaG9vc2UgYSB0aHJlc2hv
bGQgd2l0aCBzb21lIGh5c3RlcmVzaXMgdG8ga2VlcCBiYW5kcyBmcm9tCisgICAgICAgICAgICAg
ICBmbHVjdHVhdGluZyBpbiBhbmQgb3V0LCBidXQgd2UgdHJ5IG5vdCB0byBmb2xkIGJlbG93IGEg
Y2VydGFpbiBwb2ludC4gKi8KKyAgICAgICAgICAgIGlmIChjb2RlZEJhbmRzID4gMTcpCisgICAg
ICAgICAgICAgICBkZXB0aF90aHJlc2hvbGQgPSBqPHByZXYgPyA3IDogOTsKKyAgICAgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICAgIGRlcHRoX3RocmVzaG9sZCA9IDA7CiAjaWZkZWYgRlVaWklO
RwogICAgICAgICAgICAgaWYgKChyYW5kKCkmMHgxKSA9PSAwKQogI2Vsc2UKLSAgICAgICAgICAg
IGlmIChjb2RlZEJhbmRzPD1zdGFydCsyIHx8IChiYW5kX2JpdHMgPiAoKGo8cHJldj83OjkpKmJh
bmRfd2lkdGg8PExNPDxCSVRSRVMpPj40ICYmIGo8PXNpZ25hbEJhbmR3aWR0aCkpCisgICAgICAg
ICAgICBpZiAoY29kZWRCYW5kczw9c3RhcnQrMiB8fCAoYmFuZF9iaXRzID4gKGRlcHRoX3RocmVz
aG9sZCpiYW5kX3dpZHRoPDxMTTw8QklUUkVTKT4+NCAmJiBqPD1zaWduYWxCYW5kd2lkdGgpKQog
I2VuZGlmCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBlY19lbmNfYml0X2xvZ3AoZWMs
IDEsIDEpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3N0YXRpY19tb2Rlc19maXhlZF9hcm1fbmUxMC5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L3N0YXRpY19tb2Rlc19maXhlZF9hcm1fbmUxMC5oCmluZGV4IGI4ZWYwY2VlOTgzOGMzNDVj
ZmJkZGJhNzg1ZTM4M2YwMGM2Mzk3MjIuLjc2MjMwOTIxOTI1MDdlZGUzNjgyYjExOGFiYjgwNDY0
NjZjNDIxNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9zdGF0aWNfbW9kZXNfZml4ZWRfYXJtX25lMTAuaAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvc3RhdGljX21vZGVzX2ZpeGVkX2FybV9uZTEwLmgKQEAgLTEsNyArMSw3IEBACiAv
KiBUaGUgY29udGVudHMgb2YgdGhpcyBmaWxlIHdhcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBi
eQogICogZHVtcF9tb2RlX2FybV9uZTEwLmMgd2l0aCBhcmd1bWVudHM6IDQ4MDAwIDk2MAogICog
SXQgY29udGFpbnMgc3RhdGljIGRlZmluaXRpb25zIGZvciBzb21lIHByZS1kZWZpbmVkIG1vZGVz
LiAqLwotI2luY2x1ZGUgPE5FMTBfaW5pdC5oPgorI2luY2x1ZGUgPE5FMTBfdHlwZXMuaD4KIAog
I2lmbmRlZiBORTEwX0ZGVF9QQVJBTVM0ODAwMF85NjAKICNkZWZpbmUgTkUxMF9GRlRfUEFSQU1T
NDgwMDBfOTYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvc3RhdGljX21vZGVzX2Zsb2F0X2FybV9uZTEwLmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvc3RhdGljX21vZGVzX2Zsb2F0X2FybV9uZTEwLmgKaW5kZXggOTM0YTgyYTQyMGEyOTZj
MmZiNWVjMDc5NGY5YzZmZGU1YmI3NjA0OS4uNjZlMWFiYjEwMTMyNzkzMDJlNDUzZGQxMDc4NWNm
MjlmYTFjNmRjZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3N0YXRpY19tb2Rlc19mbG9hdF9hcm1fbmUxMC5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC9zdGF0aWNfbW9kZXNfZmxvYXRfYXJtX25lMTAuaApAQCAtMSw3ICsxLDcgQEAK
IC8qIFRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVk
IGJ5CiAgKiBkdW1wX21vZGVfYXJtX25lMTAuYyB3aXRoIGFyZ3VtZW50czogNDgwMDAgOTYwCiAg
KiBJdCBjb250YWlucyBzdGF0aWMgZGVmaW5pdGlvbnMgZm9yIHNvbWUgcHJlLWRlZmluZWQgbW9k
ZXMuICovCi0jaW5jbHVkZSA8TkUxMF9pbml0Lmg+CisjaW5jbHVkZSA8TkUxMF90eXBlcy5oPgog
CiAjaWZuZGVmIE5FMTBfRkZUX1BBUkFNUzQ4MDAwXzk2MAogI2RlZmluZSBORTEwX0ZGVF9QQVJB
TVM0ODAwMF85NjAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0LmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
dGVzdHMvdGVzdF91bml0X2RmdC5jCmluZGV4IDYxNjZlYjBlNGZhOTNjM2UwZDBmNTIyMmYxOWU4
Y2MzZjcxMTQ2NzQuLjcwZjhmNDkzN2JhOGQwYmNhNjcwZWE5NWQxZDc1MTI0ZTkxNGQ1YjYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0LmMKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3Rf
dW5pdF9kZnQuYwpAQCAtMjksMzggKzI5LDEyIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjZW5k
aWYKIAotI2RlZmluZSBTS0lQX0NPTkZJR19ICi0KLSNpZm5kZWYgQ1VTVE9NX01PREVTCi0jZGVm
aW5lIENVU1RPTV9NT0RFUwotI2VuZGlmCi0KICNpbmNsdWRlIDxzdGRpby5oPgogCi0jZGVmaW5l
IENFTFRfQwotI2RlZmluZSBURVNUX1VOSVRfREZUX0MKICNpbmNsdWRlICJzdGFja19hbGxvYy5o
IgogI2luY2x1ZGUgImtpc3NfZmZ0LmgiCi0jaW5jbHVkZSAia2lzc19mZnQuYyIKLSNpbmNsdWRl
ICJtYXRob3BzLmMiCi0jaW5jbHVkZSAiZW50Y29kZS5jIgotCi0jaWYgZGVmaW5lZChPUFVTX1g4
Nl9NQVlfSEFWRV9TU0UyKSB8fCBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTRfMSkKLSMg
aW5jbHVkZSAieDg2L3g4NmNwdS5jIgotI2VsaWYgZGVmaW5lZChPUFVTX0FSTV9BU00pIHx8IGRl
ZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKQotIyBpbmNsdWRlICJhcm0vYXJtY3B1
LmMiCi0jIGluY2x1ZGUgImNlbHRfbHBjLmMiCi0jIGluY2x1ZGUgInBpdGNoLmMiCi0jIGlmIGRl
ZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKQotIyAgaW5jbHVkZSAiYXJtL2NlbHRf
bmVvbl9pbnRyLmMiCi0jICBpZiBkZWZpbmVkKEhBVkVfQVJNX05FMTApCi0jICAgaW5jbHVkZSAi
bWRjdC5jIgotIyAgIGluY2x1ZGUgImFybS9jZWx0X25lMTBfZmZ0LmMiCi0jICAgaW5jbHVkZSAi
YXJtL2NlbHRfbmUxMF9tZGN0LmMiCi0jICBlbmRpZgotIyBlbmRpZgotIyBpbmNsdWRlICJhcm0v
YXJtX2NlbHRfbWFwLmMiCi0jZW5kaWYKKyNpbmNsdWRlICJtYXRob3BzLmgiCisjaW5jbHVkZSAi
bW9kZXMuaCIKIAogI2lmbmRlZiBNX1BJCiAjZGVmaW5lIE1fUEkgMy4xNDE1OTI2NTMKQEAgLTEx
MiwxMSArODYsMjUgQEAgdm9pZCBjaGVjayhraXNzX2ZmdF9jcHggICogaW4sa2lzc19mZnRfY3B4
ICAqIG91dCxpbnQgbmZmdCxpbnQgaXNpbnZlcnNlKQogdm9pZCB0ZXN0MWQoaW50IG5mZnQsaW50
IGlzaW52ZXJzZSxpbnQgYXJjaCkKIHsKICAgICBzaXplX3QgYnVmbGVuID0gc2l6ZW9mKGtpc3Nf
ZmZ0X2NweCkqbmZmdDsKLQotICAgIGtpc3NfZmZ0X2NweCAgKiBpbiA9IChraXNzX2ZmdF9jcHgq
KW1hbGxvYyhidWZsZW4pOwotICAgIGtpc3NfZmZ0X2NweCAgKiBvdXQ9IChraXNzX2ZmdF9jcHgq
KW1hbGxvYyhidWZsZW4pOwotICAgIGtpc3NfZmZ0X3N0YXRlICpjZmcgPSBvcHVzX2ZmdF9hbGxv
YyhuZmZ0LDAsMCxhcmNoKTsKKyAgICBraXNzX2ZmdF9jcHggKmluOworICAgIGtpc3NfZmZ0X2Nw
eCAqb3V0OwogICAgIGludCBrOworI2lmZGVmIENVU1RPTV9NT0RFUworICAgIGtpc3NfZmZ0X3N0
YXRlICpjZmcgPSBvcHVzX2ZmdF9hbGxvYyhuZmZ0LDAsMCxhcmNoKTsKKyNlbHNlCisgICAgaW50
IGlkOworICAgIGNvbnN0IGtpc3NfZmZ0X3N0YXRlICpjZmc7CisgICAgQ0VMVE1vZGUgKm1vZGUg
PSBvcHVzX2N1c3RvbV9tb2RlX2NyZWF0ZSg0ODAwMCwgOTYwLCBOVUxMKTsKKyAgICBpZiAobmZm
dCA9PSA0ODApIGlkID0gMDsKKyAgICBlbHNlIGlmIChuZmZ0ID09IDI0MCkgaWQgPSAxOworICAg
IGVsc2UgaWYgKG5mZnQgPT0gMTIwKSBpZCA9IDI7CisgICAgZWxzZSBpZiAobmZmdCA9PSA2MCkg
aWQgPSAzOworICAgIGVsc2UgcmV0dXJuOworICAgIGNmZyA9IG1vZGUtPm1kY3Qua2ZmdFtpZF07
CisjZW5kaWYKKworICAgIGluID0gKGtpc3NfZmZ0X2NweCopbWFsbG9jKGJ1Zmxlbik7CisgICAg
b3V0ID0gKGtpc3NfZmZ0X2NweCopbWFsbG9jKGJ1Zmxlbik7CiAKICAgICBmb3IgKGs9MDtrPG5m
ZnQ7KytrKSB7CiAgICAgICAgIGluW2tdLnIgPSAocmFuZCgpICUgMzI3NjcpIC0gMTYzODQ7CkBA
IC0xNDksNyArMTM3LDkgQEAgdm9pZCB0ZXN0MWQoaW50IG5mZnQsaW50IGlzaW52ZXJzZSxpbnQg
YXJjaCkKIAogICAgIGZyZWUoaW4pOwogICAgIGZyZWUob3V0KTsKKyNpZmRlZiBDVVNUT01fTU9E
RVMKICAgICBvcHVzX2ZmdF9mcmVlKGNmZywgYXJjaCk7CisjZW5kaWYKIH0KIAogaW50IG1haW4o
aW50IGFyZ2MsY2hhciAqKiBhcmd2KQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9t
YXRob3BzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X21hdGhvcHMuYwppbmRleCBmZDMzMTlkYTkx
Y2ViM2VjZmE5NGM3MDJkMWVmZjNkYWI3MzhjODdhLi44NzRlOWFkZjBmYmYxNjFmNzQxN2YzYWU1
MTFiOGE5ZmU3NTE1ZDZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X21hdGhvcHMu
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X21hdGhvcHMuYwpAQCAtMzQsNDggKzM0LDEwIEBA
CiAjZGVmaW5lIENVU1RPTV9NT0RFUwogI2VuZGlmCiAKLSNkZWZpbmUgQ0VMVF9DCi0KICNpbmNs
dWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPG1hdGguaD4KLSNpbmNsdWRlICJtYXRob3BzLmMiCi0j
aW5jbHVkZSAiZW50ZW5jLmMiCi0jaW5jbHVkZSAiZW50ZGVjLmMiCi0jaW5jbHVkZSAiZW50Y29k
ZS5jIgotI2luY2x1ZGUgImJhbmRzLmMiCi0jaW5jbHVkZSAicXVhbnRfYmFuZHMuYyIKLSNpbmNs
dWRlICJsYXBsYWNlLmMiCi0jaW5jbHVkZSAidnEuYyIKLSNpbmNsdWRlICJjd3JzLmMiCi0jaW5j
bHVkZSAicGl0Y2guYyIKLSNpbmNsdWRlICJjZWx0X2xwYy5jIgotI2luY2x1ZGUgImNlbHQuYyIK
LQotI2lmIGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFKSB8fCBkZWZpbmVkKE9QVVNfWDg2
X01BWV9IQVZFX1NTRTIpIHx8IGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFNF8xKQotIyBp
ZiBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRSkKLSMgIGluY2x1ZGUgIng4Ni9waXRjaF9z
c2UuYyIKLSMgZW5kaWYKLSMgaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0UyKQotIyAg
aW5jbHVkZSAieDg2L3BpdGNoX3NzZTIuYyIKLSMgZW5kaWYKLSMgaWYgZGVmaW5lZChPUFVTX1g4
Nl9NQVlfSEFWRV9TU0U0XzEpCi0jICBpbmNsdWRlICJ4ODYvcGl0Y2hfc3NlNF8xLmMiCi0jICBp
bmNsdWRlICJ4ODYvY2VsdF9scGNfc3NlLmMiCi0jIGVuZGlmCi0jIGluY2x1ZGUgIng4Ni94ODZf
Y2VsdF9tYXAuYyIKLSNlbGlmIGRlZmluZWQoT1BVU19BUk1fQVNNKSB8fCBkZWZpbmVkKE9QVVNf
QVJNX01BWV9IQVZFX05FT05fSU5UUikKLSMgaW5jbHVkZSAiYXJtL2FybWNwdS5jIgotIyBpZiBk
ZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikKLSMgIGluY2x1ZGUgImFybS9jZWx0
X25lb25faW50ci5jIgotIyAgaWYgZGVmaW5lZChIQVZFX0FSTV9ORTEwKQotIyAgIGluY2x1ZGUg
Imtpc3NfZmZ0LmMiCi0jICAgaW5jbHVkZSAibWRjdC5jIgotIyAgIGluY2x1ZGUgImFybS9jZWx0
X25lMTBfZmZ0LmMiCi0jICAgaW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9tZGN0LmMiCi0jICBlbmRp
ZgotIyBlbmRpZgotIyBpbmNsdWRlICJhcm0vYXJtX2NlbHRfbWFwLmMiCi0jZW5kaWYKKyNpbmNs
dWRlICJtYXRob3BzLmgiCisjaW5jbHVkZSAiYmFuZHMuaCIKIAogI2lmZGVmIEZJWEVEX1BPSU5U
CiAjZGVmaW5lIFdPUkQgIiVkIgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tZGN0
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X21kY3QuYwppbmRleCA4ZGJiOWNhYTJlOGNmZTg1Yjhm
YzM4ZTQxM2IyOTAzODExYzM3Yzg0Li40YTU2M2NjZmUzYzkyODc4YmUwMDE4ZmU5M2JiNTJjOGZk
NThmOGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X21kY3QuYworKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
dGVzdHMvdGVzdF91bml0X21kY3QuYwpAQCAtMjksMzggKzI5LDEzIEBACiAjaW5jbHVkZSAiY29u
ZmlnLmgiCiAjZW5kaWYKIAotI2RlZmluZSBTS0lQX0NPTkZJR19ICi0KLSNpZm5kZWYgQ1VTVE9N
X01PREVTCi0jZGVmaW5lIENVU1RPTV9NT0RFUwotI2VuZGlmCi0KICNpbmNsdWRlIDxzdGRpby5o
PgogCi0jZGVmaW5lIENFTFRfQwogI2luY2x1ZGUgIm1kY3QuaCIKICNpbmNsdWRlICJzdGFja19h
bGxvYy5oIgotCi0jaW5jbHVkZSAia2lzc19mZnQuYyIKLSNpbmNsdWRlICJtZGN0LmMiCi0jaW5j
bHVkZSAibWF0aG9wcy5jIgotI2luY2x1ZGUgImVudGNvZGUuYyIKLQotI2lmIGRlZmluZWQoT1BV
U19YODZfTUFZX0hBVkVfU1NFMikgfHwgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0U0XzEp
Ci0jIGluY2x1ZGUgIng4Ni94ODZjcHUuYyIKLSNlbGlmIGRlZmluZWQoT1BVU19BUk1fQVNNKSB8
fCBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikKLSMgaW5jbHVkZSAiYXJtL2Fy
bWNwdS5jIgotIyBpbmNsdWRlICJwaXRjaC5jIgotIyBpbmNsdWRlICJjZWx0X2xwYy5jIgotIyBp
ZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikKLSMgIGluY2x1ZGUgImFybS9j
ZWx0X25lb25faW50ci5jIgotIyAgaWYgZGVmaW5lZChIQVZFX0FSTV9ORTEwKQotIyAgIGluY2x1
ZGUgImFybS9jZWx0X25lMTBfZmZ0LmMiCi0jICAgaW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9tZGN0
LmMiCi0jICBlbmRpZgotIyBlbmRpZgotIyBpbmNsdWRlICJhcm0vYXJtX2NlbHRfbWFwLmMiCi0j
ZW5kaWYKKyNpbmNsdWRlICJraXNzX2ZmdC5oIgorI2luY2x1ZGUgIm1kY3QuaCIKKyNpbmNsdWRl
ICJtb2Rlcy5oIgogCiAjaWZuZGVmIE1fUEkKICNkZWZpbmUgTV9QSSAzLjE0MTU5MjY1MwpAQCAt
MTMwLDE2ICsxMDUsMzYgQEAgdm9pZCBjaGVja19pbnYoa2lzc19mZnRfc2NhbGFyICAqIGluLGtp
c3NfZmZ0X3NjYWxhciAgKiBvdXQsaW50IG5mZnQsaW50IGlzaW52ZXIKIAogdm9pZCB0ZXN0MWQo
aW50IG5mZnQsaW50IGlzaW52ZXJzZSxpbnQgYXJjaCkKIHsKLSAgICBtZGN0X2xvb2t1cCBjZmc7
CiAgICAgc2l6ZV90IGJ1ZmxlbiA9IHNpemVvZihraXNzX2ZmdF9zY2FsYXIpKm5mZnQ7Ci0KLSAg
ICBraXNzX2ZmdF9zY2FsYXIgICogaW4gPSAoa2lzc19mZnRfc2NhbGFyKiltYWxsb2MoYnVmbGVu
KTsKLSAgICBraXNzX2ZmdF9zY2FsYXIgICogaW5fY29weSA9IChraXNzX2ZmdF9zY2FsYXIqKW1h
bGxvYyhidWZsZW4pOwotICAgIGtpc3NfZmZ0X3NjYWxhciAgKiBvdXQ9IChraXNzX2ZmdF9zY2Fs
YXIqKW1hbGxvYyhidWZsZW4pOwotICAgIG9wdXNfdmFsMTYgICogd2luZG93PSAob3B1c192YWwx
NiopbWFsbG9jKHNpemVvZihvcHVzX3ZhbDE2KSpuZmZ0LzIpOworICAgIGtpc3NfZmZ0X3NjYWxh
ciAqaW47CisgICAga2lzc19mZnRfc2NhbGFyICppbl9jb3B5OworICAgIGtpc3NfZmZ0X3NjYWxh
ciAqb3V0OworICAgIG9wdXNfdmFsMTYgKndpbmRvdzsKICAgICBpbnQgazsKIAotICAgIGNsdF9t
ZGN0X2luaXQoJmNmZywgbmZmdCwgMCwgYXJjaCk7CisjaWZkZWYgQ1VTVE9NX01PREVTCisgICAg
aW50IHNoaWZ0ID0gMDsKKyAgICBjb25zdCBtZGN0X2xvb2t1cCAqY2ZnOworICAgIG1kY3RfbG9v
a3VwIF9jZmc7CisgICAgY2x0X21kY3RfaW5pdCgmX2NmZywgbmZmdCwgMCwgYXJjaCk7CisgICAg
Y2ZnID0gJl9jZmc7CisjZWxzZQorICAgIGludCBzaGlmdDsKKyAgICBjb25zdCBtZGN0X2xvb2t1
cCAqY2ZnOworICAgIENFTFRNb2RlICptb2RlID0gb3B1c19jdXN0b21fbW9kZV9jcmVhdGUoNDgw
MDAsIDk2MCwgTlVMTCk7CisgICAgaWYgKG5mZnQgPT0gMTkyMCkgc2hpZnQgPSAwOworICAgIGVs
c2UgaWYgKG5mZnQgPT0gOTYwKSBzaGlmdCA9IDE7CisgICAgZWxzZSBpZiAobmZmdCA9PSA0ODAp
IHNoaWZ0ID0gMjsKKyAgICBlbHNlIGlmIChuZmZ0ID09IDI0MCkgc2hpZnQgPSAzOworICAgIGVs
c2UgcmV0dXJuOworICAgIGNmZyA9ICZtb2RlLT5tZGN0OworI2VuZGlmCisKKyAgICBpbiA9IChr
aXNzX2ZmdF9zY2FsYXIqKW1hbGxvYyhidWZsZW4pOworICAgIGluX2NvcHkgPSAoa2lzc19mZnRf
c2NhbGFyKiltYWxsb2MoYnVmbGVuKTsKKyAgICBvdXQgPSAoa2lzc19mZnRfc2NhbGFyKiltYWxs
b2MoYnVmbGVuKTsKKyAgICB3aW5kb3cgPSAob3B1c192YWwxNiopbWFsbG9jKHNpemVvZihvcHVz
X3ZhbDE2KSpuZmZ0LzIpOworCiAgICAgZm9yIChrPTA7azxuZmZ0OysraykgewogICAgICAgICBp
bltrXSA9IChyYW5kKCkgJSAzMjc2OCkgLSAxNjM4NDsKICAgICB9CkBAIC0xNjYsMTMgKzE2MSwx
MyBAQCB2b2lkIHRlc3QxZChpbnQgbmZmdCxpbnQgaXNpbnZlcnNlLGludCBhcmNoKQogICAgIHsK
ICAgICAgICBmb3IgKGs9MDtrPG5mZnQ7KytrKQogICAgICAgICAgIG91dFtrXSA9IDA7Ci0gICAg
ICAgY2x0X21kY3RfYmFja3dhcmQoJmNmZyxpbixvdXQsIHdpbmRvdywgbmZmdC8yLCAwLCAxLCBh
cmNoKTsKKyAgICAgICBjbHRfbWRjdF9iYWNrd2FyZChjZmcsaW4sb3V0LCB3aW5kb3csIG5mZnQv
Miwgc2hpZnQsIDEsIGFyY2gpOwogICAgICAgIC8qIGFwcGx5IFREQUMgYmVjYXVzZSBjbHRfbWRj
dF9iYWNrd2FyZCgpIG5vIGxvbmdlciBkb2VzIHRoYXQgKi8KICAgICAgICBmb3IgKGs9MDtrPG5m
ZnQvNDsrK2spCiAgICAgICAgICAgb3V0W25mZnQtay0xXSA9IG91dFtuZmZ0LzIra107CiAgICAg
ICAgY2hlY2tfaW52KGluLG91dCxuZmZ0LGlzaW52ZXJzZSk7CiAgICAgfSBlbHNlIHsKLSAgICAg
ICBjbHRfbWRjdF9mb3J3YXJkKCZjZmcsaW4sb3V0LHdpbmRvdywgbmZmdC8yLCAwLCAxLCBhcmNo
KTsKKyAgICAgICBjbHRfbWRjdF9mb3J3YXJkKGNmZyxpbixvdXQsd2luZG93LCBuZmZ0LzIsIHNo
aWZ0LCAxLCBhcmNoKTsKICAgICAgICBjaGVjayhpbl9jb3B5LG91dCxuZmZ0LGlzaW52ZXJzZSk7
CiAgICAgfQogICAgIC8qZm9yIChrPTA7azxuZmZ0OysraykgcHJpbnRmKCIlZCAlZCAiLCBvdXRb
a10uciwgb3V0W2tdLmkpO3ByaW50ZigiXG4iKTsqLwpAQCAtMTgyLDcgKzE3Nyw5IEBAIHZvaWQg
dGVzdDFkKGludCBuZmZ0LGludCBpc2ludmVyc2UsaW50IGFyY2gpCiAgICAgZnJlZShpbl9jb3B5
KTsKICAgICBmcmVlKG91dCk7CiAgICAgZnJlZSh3aW5kb3cpOwotICAgIGNsdF9tZGN0X2NsZWFy
KCZjZmcsIGFyY2gpOworI2lmZGVmIENVU1RPTV9NT0RFUworICAgIGNsdF9tZGN0X2NsZWFyKCZf
Y2ZnLCBhcmNoKTsKKyNlbmRpZgogfQogCiBpbnQgbWFpbihpbnQgYXJnYyxjaGFyICoqIGFyZ3Yp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X3JvdGF0aW9uLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMv
dGVzdF91bml0X3JvdGF0aW9uLmMKaW5kZXggMTA4MGMyMDg1ZDAyYzVjOTc1ZmQwZjVlZjlkZDgz
MjMwM2FkOWU0NS4uMjY3Yjk4MzAxYWM4MzhjY2NjM2Y1ODJiNWIyMjkzM2E2NmQ2YzFlNyAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9yb3RhdGlvbi5jCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90
ZXN0X3VuaXRfcm90YXRpb24uYwpAQCAtMzcsNDMgKzM3LDExIEBACiAKICNpbmNsdWRlIDxzdGRp
by5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2luY2x1ZGUgInZxLmMiCi0jaW5jbHVkZSAiY3dy
cy5jIgotI2luY2x1ZGUgImVudGNvZGUuYyIKLSNpbmNsdWRlICJlbnRlbmMuYyIKLSNpbmNsdWRl
ICJlbnRkZWMuYyIKLSNpbmNsdWRlICJtYXRob3BzLmMiCisjaW5jbHVkZSAidnEuaCIKICNpbmNs
dWRlICJiYW5kcy5oIgotI2luY2x1ZGUgInBpdGNoLmMiCi0jaW5jbHVkZSAiY2VsdF9scGMuYyIK
LSNpbmNsdWRlICJjZWx0LmMiCisjaW5jbHVkZSAic3RhY2tfYWxsb2MuaCIKICNpbmNsdWRlIDxt
YXRoLmg+CiAKLSNpZiBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRSkgfHwgZGVmaW5lZChP
UFVTX1g4Nl9NQVlfSEFWRV9TU0UyKSB8fCBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTRf
MSkKLSMgaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0UpCi0jICBpbmNsdWRlICJ4ODYv
cGl0Y2hfc3NlLmMiCi0jIGVuZGlmCi0jIGlmIGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NF
MikKLSMgIGluY2x1ZGUgIng4Ni9waXRjaF9zc2UyLmMiCi0jIGVuZGlmCi0jIGlmIGRlZmluZWQo
T1BVU19YODZfTUFZX0hBVkVfU1NFNF8xKQotIyAgaW5jbHVkZSAieDg2L3BpdGNoX3NzZTRfMS5j
IgotIyAgaW5jbHVkZSAieDg2L2NlbHRfbHBjX3NzZS5jIgotIyBlbmRpZgotIyBpbmNsdWRlICJ4
ODYveDg2X2NlbHRfbWFwLmMiCi0jZWxpZiBkZWZpbmVkKE9QVVNfQVJNX0FTTSkgfHwgZGVmaW5l
ZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpCi0jIGluY2x1ZGUgImFybS9hcm1jcHUuYyIK
LSMgaWYgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpCi0jICBpbmNsdWRlICJh
cm0vY2VsdF9uZW9uX2ludHIuYyIKLSMgIGlmIGRlZmluZWQoSEFWRV9BUk1fTkUxMCkKLSMgICBp
bmNsdWRlICJraXNzX2ZmdC5jIgotIyAgIGluY2x1ZGUgIm1kY3QuYyIKLSMgICBpbmNsdWRlICJh
cm0vY2VsdF9uZTEwX2ZmdC5jIgotIyAgIGluY2x1ZGUgImFybS9jZWx0X25lMTBfbWRjdC5jIgot
IyAgZW5kaWYKLSMgZW5kaWYKLSMgaW5jbHVkZSAiYXJtL2FybV9jZWx0X21hcC5jIgotI2VuZGlm
CiAKICNkZWZpbmUgTUFYX1NJWkUgMTAwCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC92cS5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3Zx
LmMKaW5kZXggZDI5ZjM4ZmQ4ZWY3OTAxNWI2M2Q4ODE5YTQ4ZDQ3OGNhOGJjZTZlNi4uOGVmODBl
NTA3ZjI2MmRhZDU1ZTVlYjZkYmJmNWFlMmIxNDNhZDEwNyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3ZxLmMK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L3ZxLmMKQEAgLTY3LDcgKzY3LDcgQEAgc3RhdGljIHZvaWQgZXhwX3JvdGF0aW9u
MShjZWx0X25vcm0gKlgsIGludCBsZW4sIGludCBzdHJpZGUsIG9wdXNfdmFsMTYgYywgb3B1c18K
IH0KICNlbmRpZiAvKiBPVkVSUklERV92cV9leHBfcm90YXRpb24xICovCiAKLXN0YXRpYyB2b2lk
IGV4cF9yb3RhdGlvbihjZWx0X25vcm0gKlgsIGludCBsZW4sIGludCBkaXIsIGludCBzdHJpZGUs
IGludCBLLCBpbnQgc3ByZWFkKQordm9pZCBleHBfcm90YXRpb24oY2VsdF9ub3JtICpYLCBpbnQg
bGVuLCBpbnQgZGlyLCBpbnQgc3RyaWRlLCBpbnQgSywgaW50IHNwcmVhZCkKIHsKICAgIHN0YXRp
YyBjb25zdCBpbnQgU1BSRUFEX0ZBQ1RPUlszXT17MTUsMTAsNX07CiAgICBpbnQgaTsKQEAgLTE1
OCw0MiArMTU4LDI3IEBAIHN0YXRpYyB1bnNpZ25lZCBleHRyYWN0X2NvbGxhcHNlX21hc2soaW50
ICppeSwgaW50IE4sIGludCBCKQogICAgcmV0dXJuIGNvbGxhcHNlX21hc2s7CiB9CiAKLXVuc2ln
bmVkIGFsZ19xdWFudChjZWx0X25vcm0gKlgsIGludCBOLCBpbnQgSywgaW50IHNwcmVhZCwgaW50
IEIsIGVjX2VuYyAqZW5jCi0jaWZkZWYgUkVTWU5USAotICAgLCBvcHVzX3ZhbDE2IGdhaW4KLSNl
bmRpZgotICAgKQorb3B1c192YWwxNiBvcF9wdnFfc2VhcmNoX2MoY2VsdF9ub3JtICpYLCBpbnQg
Kml5LCBpbnQgSywgaW50IE4sIGludCBhcmNoKQogewogICAgVkFSREVDTChjZWx0X25vcm0sIHkp
OwotICAgVkFSREVDTChpbnQsIGl5KTsKLSAgIFZBUkRFQ0wob3B1c192YWwxNiwgc2lnbngpOwor
ICAgVkFSREVDTChpbnQsIHNpZ254KTsKICAgIGludCBpLCBqOwotICAgb3B1c192YWwxNiBzOwog
ICAgaW50IHB1bHNlc0xlZnQ7CiAgICBvcHVzX3ZhbDMyIHN1bTsKICAgIG9wdXNfdmFsMzIgeHk7
CiAgICBvcHVzX3ZhbDE2IHl5OwotICAgdW5zaWduZWQgY29sbGFwc2VfbWFzazsKICAgIFNBVkVf
U1RBQ0s7CiAKLSAgIGNlbHRfYXNzZXJ0MihLPjAsICJhbGdfcXVhbnQoKSBuZWVkcyBhdCBsZWFz
dCBvbmUgcHVsc2UiKTsKLSAgIGNlbHRfYXNzZXJ0MihOPjEsICJhbGdfcXVhbnQoKSBuZWVkcyBh
dCBsZWFzdCB0d28gZGltZW5zaW9ucyIpOwotCisgICAodm9pZClhcmNoOwogICAgQUxMT0MoeSwg
TiwgY2VsdF9ub3JtKTsKLSAgIEFMTE9DKGl5LCBOLCBpbnQpOwotICAgQUxMT0Moc2lnbngsIE4s
IG9wdXNfdmFsMTYpOwotCi0gICBleHBfcm90YXRpb24oWCwgTiwgMSwgQiwgSywgc3ByZWFkKTsK
KyAgIEFMTE9DKHNpZ254LCBOLCBpbnQpOwogCiAgICAvKiBHZXQgcmlkIG9mIHRoZSBzaWduICov
CiAgICBzdW0gPSAwOwogICAgaj0wOyBkbyB7Ci0gICAgICBpZiAoWFtqXT4wKQotICAgICAgICAg
c2lnbnhbal09MTsKLSAgICAgIGVsc2UgewotICAgICAgICAgc2lnbnhbal09LTE7Ci0gICAgICAg
ICBYW2pdPS1YW2pdOwotICAgICAgfQorICAgICAgc2lnbnhbal0gPSBYW2pdPDA7CisgICAgICAv
KiBPUFQ6IE1ha2Ugc3VyZSB0aGUgY29tcGlsZXIgZG9lc24ndCB1c2UgYSBicmFuY2ggb24gQUJT
MTYoKS4gKi8KKyAgICAgIFhbal0gPSBBQlMxNihYW2pdKTsKICAgICAgIGl5W2pdID0gMDsKICAg
ICAgIHlbal0gPSAwOwogICAgfSB3aGlsZSAoKytqPE4pOwpAQCAtMjI1LDcgKzIxMCwxMiBAQCB1
bnNpZ25lZCBhbGdfcXVhbnQoY2VsdF9ub3JtICpYLCBpbnQgTiwgaW50IEssIGludCBzcHJlYWQs
IGludCBCLCBlY19lbmMgKmVuYwogICAgICAgICAgd2hpbGUgKCsrajxOKTsKICAgICAgICAgIHN1
bSA9IFFDT05TVDE2KDEuZiwxNCk7CiAgICAgICB9Ci0gICAgICByY3AgPSBFWFRSQUNUMTYoTVVM
VDE2XzMyX1ExNihLLTEsIGNlbHRfcmNwKHN1bSkpKTsKKyNpZmRlZiBGSVhFRF9QT0lOVAorICAg
ICAgcmNwID0gRVhUUkFDVDE2KE1VTFQxNl8zMl9RMTYoSywgY2VsdF9yY3Aoc3VtKSkpOworI2Vs
c2UKKyAgICAgIC8qIFVzaW5nIEsrZSB3aXRoIGUgPCAxIGd1YXJhbnRlZXMgd2UgY2Fubm90IGdl
dCBtb3JlIHRoYW4gSyBwdWxzZXMuICovCisgICAgICByY3AgPSBFWFRSQUNUMTYoTVVMVDE2XzMy
X1ExNihLKzAuOGYsIGNlbHRfcmNwKHN1bSkpKTsKKyNlbmRpZgogICAgICAgaj0wOyBkbyB7CiAj
aWZkZWYgRklYRURfUE9JTlQKICAgICAgICAgIC8qIEl0J3MgcmVhbGx5IGltcG9ydGFudCB0byBy
b3VuZCAqdG93YXJkcyB6ZXJvKiBoZXJlICovCkBAIC0yNDAsNyArMjMwLDcgQEAgdW5zaWduZWQg
YWxnX3F1YW50KGNlbHRfbm9ybSAqWCwgaW50IE4sIGludCBLLCBpbnQgc3ByZWFkLCBpbnQgQiwg
ZWNfZW5jICplbmMKICAgICAgICAgIHB1bHNlc0xlZnQgLT0gaXlbal07CiAgICAgICB9ICB3aGls
ZSAoKytqPE4pOwogICAgfQotICAgY2VsdF9hc3NlcnQyKHB1bHNlc0xlZnQ+PTEsICJBbGxvY2F0
ZWQgdG9vIG1hbnkgcHVsc2VzIGluIHRoZSBxdWljayBwYXNzIik7CisgICBjZWx0X2Fzc2VydDIo
cHVsc2VzTGVmdD49MCwgIkFsbG9jYXRlZCB0b28gbWFueSBwdWxzZXMgaW4gdGhlIHF1aWNrIHBh
c3MiKTsKIAogICAgLyogVGhpcyBzaG91bGQgbmV2ZXIgaGFwcGVuLCBidXQganVzdCBpbiBjYXNl
IGl0IGRvZXMgKGUuZy4gb24gc2lsZW5jZSkKICAgICAgIHdlIGZpbGwgdGhlIGZpcnN0IGJpbiB3
aXRoIHB1bHNlcy4gKi8KQEAgLTI1NiwxMiArMjQ2LDEyIEBAIHVuc2lnbmVkIGFsZ19xdWFudChj
ZWx0X25vcm0gKlgsIGludCBOLCBpbnQgSywgaW50IHNwcmVhZCwgaW50IEIsIGVjX2VuYyAqZW5j
CiAgICAgICBwdWxzZXNMZWZ0PTA7CiAgICB9CiAKLSAgIHMgPSAxOwogICAgZm9yIChpPTA7aTxw
dWxzZXNMZWZ0O2krKykKICAgIHsKKyAgICAgIG9wdXNfdmFsMTYgUnh5LCBSeXk7CiAgICAgICBp
bnQgYmVzdF9pZDsKLSAgICAgIG9wdXNfdmFsMzIgYmVzdF9udW0gPSAtVkVSWV9MQVJHRTE2Owot
ICAgICAgb3B1c192YWwxNiBiZXN0X2RlbiA9IDA7CisgICAgICBvcHVzX3ZhbDMyIGJlc3RfbnVt
OworICAgICAgb3B1c192YWwxNiBiZXN0X2RlbjsKICNpZmRlZiBGSVhFRF9QT0lOVAogICAgICAg
aW50IHJzaGlmdDsKICNlbmRpZgpAQCAtMjcyLDkgKzI2MiwyMiBAQCB1bnNpZ25lZCBhbGdfcXVh
bnQoY2VsdF9ub3JtICpYLCBpbnQgTiwgaW50IEssIGludCBzcHJlYWQsIGludCBCLCBlY19lbmMg
KmVuYwogICAgICAgLyogVGhlIHNxdWFyZWQgbWFnbml0dWRlIHRlcm0gZ2V0cyBhZGRlZCBhbnl3
YXksIHNvIHdlIG1pZ2h0IGFzIHdlbGwKICAgICAgICAgIGFkZCBpdCBvdXRzaWRlIHRoZSBsb29w
ICovCiAgICAgICB5eSA9IEFERDE2KHl5LCAxKTsKLSAgICAgIGo9MDsKKworICAgICAgLyogQ2Fs
Y3VsYXRpb25zIGZvciBwb3NpdGlvbiAwIGFyZSBvdXQgb2YgdGhlIGxvb3AsIGluIHBhcnQgdG8g
cmVkdWNlCisgICAgICAgICBtaXNwcmVkaWN0ZWQgYnJhbmNoZXMgKHNpbmNlIHRoZSBpZiBjb25k
aXRpb24gaXMgdXN1YWxseSBmYWxzZSkKKyAgICAgICAgIGluIHRoZSBsb29wLiAqLworICAgICAg
LyogVGVtcG9yYXJ5IHN1bXMgb2YgdGhlIG5ldyBwdWxzZShzKSAqLworICAgICAgUnh5ID0gRVhU
UkFDVDE2KFNIUjMyKEFERDMyKHh5LCBFWFRFTkQzMihYWzBdKSkscnNoaWZ0KSk7CisgICAgICAv
KiBXZSdyZSBtdWx0aXBseWluZyB5W2pdIGJ5IHR3byBzbyB3ZSBkb24ndCBoYXZlIHRvIGRvIGl0
IGhlcmUgKi8KKyAgICAgIFJ5eSA9IEFERDE2KHl5LCB5WzBdKTsKKworICAgICAgLyogQXBwcm94
aW1hdGUgc2NvcmU6IHdlIG1heGltaXNlIFJ4eS9zcXJ0KFJ5eSkgKHdlJ3JlIGd1YXJhbnRlZWQg
dGhhdAorICAgICAgICAgUnh5IGlzIHBvc2l0aXZlIGJlY2F1c2UgdGhlIHNpZ24gaXMgcHJlLWNv
bXB1dGVkKSAqLworICAgICAgUnh5ID0gTVVMVDE2XzE2X1ExNShSeHksUnh5KTsKKyAgICAgIGJl
c3RfZGVuID0gUnl5OworICAgICAgYmVzdF9udW0gPSBSeHk7CisgICAgICBqPTE7CiAgICAgICBk
byB7Ci0gICAgICAgICBvcHVzX3ZhbDE2IFJ4eSwgUnl5OwogICAgICAgICAgLyogVGVtcG9yYXJ5
IHN1bXMgb2YgdGhlIG5ldyBwdWxzZShzKSAqLwogICAgICAgICAgUnh5ID0gRVhUUkFDVDE2KFNI
UjMyKEFERDMyKHh5LCBFWFRFTkQzMihYW2pdKSkscnNoaWZ0KSk7CiAgICAgICAgICAvKiBXZSdy
ZSBtdWx0aXBseWluZyB5W2pdIGJ5IHR3byBzbyB3ZSBkb24ndCBoYXZlIHRvIGRvIGl0IGhlcmUg
Ki8KQEAgLTI4NSw4ICsyODgsMTEgQEAgdW5zaWduZWQgYWxnX3F1YW50KGNlbHRfbm9ybSAqWCwg
aW50IE4sIGludCBLLCBpbnQgc3ByZWFkLCBpbnQgQiwgZWNfZW5jICplbmMKICAgICAgICAgIFJ4
eSA9IE1VTFQxNl8xNl9RMTUoUnh5LFJ4eSk7CiAgICAgICAgICAvKiBUaGUgaWRlYSBpcyB0byBj
aGVjayBmb3IgbnVtL2RlbiA+PSBiZXN0X251bS9iZXN0X2RlbiwgYnV0IHRoYXQgd2F5CiAgICAg
ICAgICAgICB3ZSBjYW4gZG8gaXQgd2l0aG91dCBhbnkgZGl2aXNpb24gKi8KLSAgICAgICAgIC8q
IE9QVDogTWFrZSBzdXJlIHRvIHVzZSBjb25kaXRpb25hbCBtb3ZlcyBoZXJlICovCi0gICAgICAg
ICBpZiAoTVVMVDE2XzE2KGJlc3RfZGVuLCBSeHkpID4gTVVMVDE2XzE2KFJ5eSwgYmVzdF9udW0p
KQorICAgICAgICAgLyogT1BUOiBJdCdzIG5vdCBjbGVhciB3aGV0aGVyIGEgY21vdiBpcyBmYXN0
ZXIgdGhhbiBhIGJyYW5jaCBoZXJlCisgICAgICAgICAgICBzaW5jZSB0aGUgY29uZGl0aW9uIGlz
IG1vcmUgb2Z0ZW4gZmFsc2UgdGhhbiB0cnVlIGFuZCB1c2luZworICAgICAgICAgICAgYSBjbW92
IGludHJvZHVjZXMgZGF0YSBkZXBlbmRlbmNpZXMgYWNyb3NzIGl0ZXJhdGlvbnMuIFRoZSBvcHRp
bWFsCisgICAgICAgICAgICBjaG9pY2UgbWF5IGJlIGFyY2hpdGVjdHVyZS1kZXBlbmRlbnQuICov
CisgICAgICAgICBpZiAob3B1c191bmxpa2VseShNVUxUMTZfMTYoYmVzdF9kZW4sIFJ4eSkgPiBN
VUxUMTZfMTYoUnl5LCBiZXN0X251bSkpKQogICAgICAgICAgewogICAgICAgICAgICAgYmVzdF9k
ZW4gPSBSeXk7CiAgICAgICAgICAgICBiZXN0X251bSA9IFJ4eTsKQEAgLTMwMSwyMyArMzA3LDQ3
IEBAIHVuc2lnbmVkIGFsZ19xdWFudChjZWx0X25vcm0gKlgsIGludCBOLCBpbnQgSywgaW50IHNw
cmVhZCwgaW50IEIsIGVjX2VuYyAqZW5jCiAKICAgICAgIC8qIE9ubHkgbm93IHRoYXQgd2UndmUg
bWFkZSB0aGUgZmluYWwgY2hvaWNlLCB1cGRhdGUgeS9peSAqLwogICAgICAgLyogTXVsdGlwbHlp
bmcgeVtqXSBieSAyIHNvIHdlIGRvbid0IGhhdmUgdG8gZG8gaXQgZXZlcnl3aGVyZSBlbHNlICov
Ci0gICAgICB5W2Jlc3RfaWRdICs9IDIqczsKKyAgICAgIHlbYmVzdF9pZF0gKz0gMjsKICAgICAg
IGl5W2Jlc3RfaWRdKys7CiAgICB9CiAKICAgIC8qIFB1dCB0aGUgb3JpZ2luYWwgc2lnbiBiYWNr
ICovCiAgICBqPTA7CiAgICBkbyB7Ci0gICAgICBYW2pdID0gTVVMVDE2XzE2KHNpZ254W2pdLFhb
al0pOwotICAgICAgaWYgKHNpZ254W2pdIDwgMCkKLSAgICAgICAgIGl5W2pdID0gLWl5W2pdOwor
ICAgICAgLyppeVtqXSA9IHNpZ254W2pdID8gLWl5W2pdIDogaXlbal07Ki8KKyAgICAgIC8qIE9Q
VDogVGhlIGlzIG1vcmUgbGlrZWx5IHRvIGJlIGNvbXBpbGVkIHdpdGhvdXQgYSBicmFuY2ggdGhh
biB0aGUgY29kZSBhYm92ZQorICAgICAgICAgYnV0IGhhcyB0aGUgc2FtZSBwZXJmb3JtYW5jZSBv
dGhlcndpc2UuICovCisgICAgICBpeVtqXSA9IChpeVtqXV4tc2lnbnhbal0pICsgc2lnbnhbal07
CiAgICB9IHdoaWxlICgrK2o8Tik7CisgICBSRVNUT1JFX1NUQUNLOworICAgcmV0dXJuIHl5Owor
fQorCit1bnNpZ25lZCBhbGdfcXVhbnQoY2VsdF9ub3JtICpYLCBpbnQgTiwgaW50IEssIGludCBz
cHJlYWQsIGludCBCLCBlY19lbmMgKmVuYywKKyAgICAgIG9wdXNfdmFsMTYgZ2FpbiwgaW50IHJl
c3ludGgsIGludCBhcmNoKQoreworICAgVkFSREVDTChpbnQsIGl5KTsKKyAgIG9wdXNfdmFsMTYg
eXk7CisgICB1bnNpZ25lZCBjb2xsYXBzZV9tYXNrOworICAgU0FWRV9TVEFDSzsKKworICAgY2Vs
dF9hc3NlcnQyKEs+MCwgImFsZ19xdWFudCgpIG5lZWRzIGF0IGxlYXN0IG9uZSBwdWxzZSIpOwor
ICAgY2VsdF9hc3NlcnQyKE4+MSwgImFsZ19xdWFudCgpIG5lZWRzIGF0IGxlYXN0IHR3byBkaW1l
bnNpb25zIik7CisKKyAgIC8qIENvdmVycyB2ZWN0b3JpemF0aW9uIGJ5IHVwIHRvIDQuICovCisg
ICBBTExPQyhpeSwgTiszLCBpbnQpOworCisgICBleHBfcm90YXRpb24oWCwgTiwgMSwgQiwgSywg
c3ByZWFkKTsKKworICAgeXkgPSBvcF9wdnFfc2VhcmNoKFgsIGl5LCBLLCBOLCBhcmNoKTsKKwog
ICAgZW5jb2RlX3B1bHNlcyhpeSwgTiwgSywgZW5jKTsKIAotI2lmZGVmIFJFU1lOVEgKLSAgIG5v
cm1hbGlzZV9yZXNpZHVhbChpeSwgWCwgTiwgeXksIGdhaW4pOwotICAgZXhwX3JvdGF0aW9uKFgs
IE4sIC0xLCBCLCBLLCBzcHJlYWQpOwotI2VuZGlmCisgICBpZiAocmVzeW50aCkKKyAgIHsKKyAg
ICAgIG5vcm1hbGlzZV9yZXNpZHVhbChpeSwgWCwgTiwgeXksIGdhaW4pOworICAgICAgZXhwX3Jv
dGF0aW9uKFgsIE4sIC0xLCBCLCBLLCBzcHJlYWQpOworICAgfQogCiAgICBjb2xsYXBzZV9tYXNr
ID0gZXh0cmFjdF9jb2xsYXBzZV9tYXNrKGl5LCBOLCBCKTsKICAgIFJFU1RPUkVfU1RBQ0s7CkBA
IC00MDEsNyArNDMxLDcgQEAgaW50IHN0ZXJlb19pdGhldGEoY29uc3QgY2VsdF9ub3JtICpYLCBj
b25zdCBjZWx0X25vcm0gKlksIGludCBzdGVyZW8sIGludCBOLCBpbnQKICAgIC8qIDAuNjM2NjIg
PSAyL3BpICovCiAgICBpdGhldGEgPSBNVUxUMTZfMTZfUTE1KFFDT05TVDE2KDAuNjM2NjJmLDE1
KSxjZWx0X2F0YW4ycChzaWRlLCBtaWQpKTsKICNlbHNlCi0gICBpdGhldGEgPSAoaW50KWZsb29y
KC41ZisxNjM4NCowLjYzNjYyZiphdGFuMihzaWRlLG1pZCkpOworICAgaXRoZXRhID0gKGludClm
bG9vciguNWYrMTYzODQqMC42MzY2MmYqZmFzdF9hdGFuMmYoc2lkZSxtaWQpKTsKICNlbmRpZgog
CiAgICByZXR1cm4gaXRoZXRhOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3ZxLmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdnEuaAppbmRl
eCA1Y2ZjYmU1MGVhMDVlMDcyMWQxMTRhMjgzMzM5YjVkY2E0OTI4NTI3Li4wZGZlNmFmMDU4MjM5
ODZjYWQyN2YxMWVhZDYwMTI1MmEzMDQ4NTYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdnEuaAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvdnEuaApAQCAtMzcsMTAgKzM3LDIyIEBACiAjaW5jbHVkZSAiZW50ZGVjLmgiCiAjaW5jbHVk
ZSAibW9kZXMuaCIKIAorI2lmIChkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpICYmICFk
ZWZpbmVkKEZJWEVEX1BPSU5UKSkKKyNpbmNsdWRlICJ4ODYvdnFfc3NlLmgiCisjZW5kaWYKKwog
I2lmIGRlZmluZWQoTUlQU3IxX0FTTSkKICNpbmNsdWRlICJtaXBzL3ZxX21pcHNyMS5oIgogI2Vu
ZGlmCiAKK3ZvaWQgZXhwX3JvdGF0aW9uKGNlbHRfbm9ybSAqWCwgaW50IGxlbiwgaW50IGRpciwg
aW50IHN0cmlkZSwgaW50IEssIGludCBzcHJlYWQpOworCitvcHVzX3ZhbDE2IG9wX3B2cV9zZWFy
Y2hfYyhjZWx0X25vcm0gKlgsIGludCAqaXksIGludCBLLCBpbnQgTiwgaW50IGFyY2gpOworCisj
aWYgIWRlZmluZWQoT1ZFUlJJREVfT1BfUFZRX1NFQVJDSCkKKyNkZWZpbmUgb3BfcHZxX3NlYXJj
aCh4LCBpeSwgSywgTiwgYXJjaCkgXAorICAgIChvcF9wdnFfc2VhcmNoX2MoeCwgaXksIEssIE4s
IGFyY2gpKQorI2VuZGlmCiAKIC8qKiBBbGdlYnJhaWMgcHVsc2UtdmVjdG9yIHF1YW50aXNlci4g
VGhlIHNpZ25hbCB4IGlzIHJlcGxhY2VkIGJ5IHRoZSBzdW0gb2YKICAgKiB0aGUgcGl0Y2ggYW5k
IGEgY29tYmluYXRpb24gb2YgcHVsc2VzIHN1Y2ggdGhhdCBpdHMgbm9ybSBpcyBzdGlsbCBlcXVh
bApAQCAtNTEsMTIgKzYzLDggQEAKICAqIEBwYXJhbSBlbmMgRW50cm9weSBlbmNvZGVyIHN0YXRl
CiAgKiBAcmV0IEEgbWFzayBpbmRpY2F0aW5nIHdoaWNoIGJsb2NrcyBpbiB0aGUgYmFuZCByZWNl
aXZlZCBwdWxzZXMKICovCi11bnNpZ25lZCBhbGdfcXVhbnQoY2VsdF9ub3JtICpYLCBpbnQgTiwg
aW50IEssIGludCBzcHJlYWQsIGludCBCLAotICAgICAgZWNfZW5jICplbmMKLSNpZmRlZiBSRVNZ
TlRICi0gICAgICAsIG9wdXNfdmFsMTYgZ2FpbgotI2VuZGlmCi0gICAgICApOwordW5zaWduZWQg
YWxnX3F1YW50KGNlbHRfbm9ybSAqWCwgaW50IE4sIGludCBLLCBpbnQgc3ByZWFkLCBpbnQgQiwg
ZWNfZW5jICplbmMsCisgICAgICBvcHVzX3ZhbDE2IGdhaW4sIGludCByZXN5bnRoLCBpbnQgYXJj
aCk7CiAKIC8qKiBBbGdlYnJhaWMgcHVsc2UgZGVjb2RlcgogICogQHBhcmFtIFggRGVjb2RlZCBu
b3JtYWxpc2VkIHNwZWN0cnVtIChyZXR1cm5lZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvY2VsdF9s
cGNfc3NlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQveDg2L2NlbHRfbHBjX3NzZS5jCmluZGV4IDY3ZTU1OTJhY2YzY2E2Yjdm
ODE3ZDZkZDlmMTdkOTlkZTFkYTI1YjAuLjU0Nzg1Njg4NDlhYTQyZWE3OGRiNmRiMjY4MmFiZjdl
ZDE1MGZmYTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvY2VsdF9scGNfc3NlLmMKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4
Ni9jZWx0X2xwY19zc2UuYwpAQCAtNDAsNjUgKzQwLDIzIEBACiAKICNpZiBkZWZpbmVkKEZJWEVE
X1BPSU5UKQogCi12b2lkIGNlbHRfZmlyX3NzZTRfMShjb25zdCBvcHVzX3ZhbDE2ICpfeCwKK3Zv
aWQgY2VsdF9maXJfc3NlNF8xKGNvbnN0IG9wdXNfdmFsMTYgKngsCiAgICAgICAgICBjb25zdCBv
cHVzX3ZhbDE2ICpudW0sCi0gICAgICAgICBvcHVzX3ZhbDE2ICpfeSwKKyAgICAgICAgIG9wdXNf
dmFsMTYgKnksCiAgICAgICAgICBpbnQgTiwKICAgICAgICAgIGludCBvcmQsCi0gICAgICAgICBv
cHVzX3ZhbDE2ICptZW0sCiAgICAgICAgICBpbnQgYXJjaCkKIHsKICAgICBpbnQgaSxqOwogICAg
IFZBUkRFQ0wob3B1c192YWwxNiwgcm51bSk7Ci0gICAgVkFSREVDTChvcHVzX3ZhbDE2LCB4KTsK
IAogICAgIF9fbTEyOGkgdmVjTm9BOwogICAgIG9wdXNfaW50MzIgbm9BIDsKICAgICBTQVZFX1NU
QUNLOwogCiAgICBBTExPQyhybnVtLCBvcmQsIG9wdXNfdmFsMTYpOwotICAgQUxMT0MoeCwgTitv
cmQsIG9wdXNfdmFsMTYpOwogICAgZm9yKGk9MDtpPG9yZDtpKyspCiAgICAgICBybnVtW2ldID0g
bnVtW29yZC1pLTFdOwotICAgZm9yKGk9MDtpPG9yZDtpKyspCi0gICAgICB4W2ldID0gbWVtW29y
ZC1pLTFdOwotCi0gICBmb3IgKGk9MDtpPE4tNztpKz04KQotICAgewotICAgICAgIHhbaStvcmQg
IF09X3hbaSAgXTsKLSAgICAgICB4W2krb3JkKzFdPV94W2krMV07Ci0gICAgICAgeFtpK29yZCsy
XT1feFtpKzJdOwotICAgICAgIHhbaStvcmQrM109X3hbaSszXTsKLSAgICAgICB4W2krb3JkKzRd
PV94W2krNF07Ci0gICAgICAgeFtpK29yZCs1XT1feFtpKzVdOwotICAgICAgIHhbaStvcmQrNl09
X3hbaSs2XTsKLSAgICAgICB4W2krb3JkKzddPV94W2krN107Ci0gICB9Ci0KLSAgIGZvciAoO2k8
Ti0zO2krPTQpCi0gICB7Ci0gICAgICAgeFtpK29yZCAgXT1feFtpICBdOwotICAgICAgIHhbaStv
cmQrMV09X3hbaSsxXTsKLSAgICAgICB4W2krb3JkKzJdPV94W2krMl07Ci0gICAgICAgeFtpK29y
ZCszXT1feFtpKzNdOwotICAgfQotCi0gICBmb3IgKDtpPE47aSsrKQotICAgICAgICAgeFtpK29y
ZF09X3hbaV07Ci0KLSAgIGZvcihpPTA7aTxvcmQ7aSsrKQotICAgICAgbWVtW2ldID0gX3hbTi1p
LTFdOwotI2lmZGVmIFNNQUxMX0ZPT1RQUklOVAotICAgZm9yIChpPTA7aTxOO2krKykKLSAgIHsK
LSAgICAgIG9wdXNfdmFsMzIgc3VtID0gU0hMMzIoRVhURU5EMzIoX3hbaV0pLCBTSUdfU0hJRlQp
OwotICAgICAgZm9yIChqPTA7ajxvcmQ7aisrKQotICAgICAgewotICAgICAgICAgc3VtID0gTUFD
MTZfMTYoc3VtLHJudW1bal0seFtpK2pdKTsKLSAgICAgIH0KLSAgICAgIF95W2ldID0gU0FUVVJB
VEUxNihQU0hSMzIoc3VtLCBTSUdfU0hJRlQpKTsKLSAgIH0KLSNlbHNlCiAgICBub0EgPSBFWFRF
TkQzMigxKSA8PCBTSUdfU0hJRlQgPj4gMTsKICAgIHZlY05vQSA9IF9tbV9zZXRfZXBpMzIobm9B
LCBub0EsIG5vQSwgbm9BKTsKIApAQCAtMTA3LDI1ICs2NSwyNCBAQCB2b2lkIGNlbHRfZmlyX3Nz
ZTRfMShjb25zdCBvcHVzX3ZhbDE2ICpfeCwKICAgICAgIG9wdXNfdmFsMzIgc3Vtc1s0XSA9IHsw
fTsKICAgICAgIF9fbTEyOGkgdmVjU3VtLCB2ZWNYOwogCi0gICAgICB4Y29ycl9rZXJuZWwocm51
bSwgeCtpLCBzdW1zLCBvcmQsIGFyY2gpOworICAgICAgeGNvcnJfa2VybmVsKHJudW0sIHgraS1v
cmQsIHN1bXMsIG9yZCwgYXJjaCk7CiAKICAgICAgIHZlY1N1bSA9IF9tbV9sb2FkdV9zaTEyOCgo
X19tMTI4aSAqKXN1bXMpOwogICAgICAgdmVjU3VtID0gX21tX2FkZF9lcGkzMih2ZWNTdW0sIHZl
Y05vQSk7CiAgICAgICB2ZWNTdW0gPSBfbW1fc3JhaV9lcGkzMih2ZWNTdW0sIFNJR19TSElGVCk7
Ci0gICAgICB2ZWNYID0gT1BfQ1ZURVBJMTZfRVBJMzJfTTY0KF94ICsgaSk7CisgICAgICB2ZWNY
ID0gT1BfQ1ZURVBJMTZfRVBJMzJfTTY0KHggKyBpKTsKICAgICAgIHZlY1N1bSA9IF9tbV9hZGRf
ZXBpMzIodmVjU3VtLCB2ZWNYKTsKICAgICAgIHZlY1N1bSA9IF9tbV9wYWNrc19lcGkzMih2ZWNT
dW0sIHZlY1N1bSk7Ci0gICAgICBfbW1fc3RvcmVsX2VwaTY0KChfX20xMjhpICopKF95ICsgaSks
IHZlY1N1bSk7CisgICAgICBfbW1fc3RvcmVsX2VwaTY0KChfX20xMjhpICopKHkgKyBpKSwgdmVj
U3VtKTsKICAgIH0KICAgIGZvciAoO2k8TjtpKyspCiAgICB7CiAgICAgICBvcHVzX3ZhbDMyIHN1
bSA9IDA7CiAgICAgICBmb3IgKGo9MDtqPG9yZDtqKyspCi0gICAgICAgICBzdW0gPSBNQUMxNl8x
NihzdW0sIHJudW1bal0sIHhbaSArIGpdKTsKLSAgICAgIF95W2ldID0gU0FUVVJBVEUxNihBREQz
MihFWFRFTkQzMihfeFtpXSksIFBTSFIzMihzdW0sIFNJR19TSElGVCkpKTsKKyAgICAgICAgIHN1
bSA9IE1BQzE2XzE2KHN1bSwgcm51bVtqXSwgeFtpK2otb3JkXSk7CisgICAgICB5W2ldID0gU0FU
VVJBVEUxNihBREQzMihFWFRFTkQzMih4W2ldKSwgUFNIUjMyKHN1bSwgU0lHX1NISUZUKSkpOwog
ICAgfQogCi0jZW5kaWYKICAgIFJFU1RPUkVfU1RBQ0s7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94
ODYvY2VsdF9scGNfc3NlLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L2NlbHRfbHBjX3NzZS5oCmluZGV4IGM1ZWM3OTZl
ZDUyNWUwZmY2MTRiNjViMWQzZjM5MjhlN2M5NDFmM2UuLjdkMWVjZjc1MzMyODJkYmM3ODJmZTVi
ZTU0NTkzZjRlMjM1YTQwZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvY2VsdF9scGNfc3NlLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L3g4Ni9jZWx0X2xwY19zc2UuaApAQCAtNDEsMTIgKzQxLDExIEBAIHZvaWQgY2VsdF9m
aXJfc3NlNF8xKAogICAgICAgICAgb3B1c192YWwxNiAqeSwKICAgICAgICAgIGludCBOLAogICAg
ICAgICAgaW50IG9yZCwKLSAgICAgICAgIG9wdXNfdmFsMTYgKm1lbSwKICAgICAgICAgIGludCBh
cmNoKTsKIAogI2lmIGRlZmluZWQoT1BVU19YODZfUFJFU1VNRV9TU0U0XzEpCi0jZGVmaW5lIGNl
bHRfZmlyKHgsIG51bSwgeSwgTiwgb3JkLCBtZW0sIGFyY2gpIFwKLSAgICAoKHZvaWQpYXJjaCwg
Y2VsdF9maXJfc3NlNF8xKHgsIG51bSwgeSwgTiwgb3JkLCBtZW0sIGFyY2gpKQorI2RlZmluZSBj
ZWx0X2Zpcih4LCBudW0sIHksIE4sIG9yZCwgYXJjaCkgXAorICAgICgodm9pZClhcmNoLCBjZWx0
X2Zpcl9zc2U0XzEoeCwgbnVtLCB5LCBOLCBvcmQsIGFyY2gpKQogCiAjZWxzZQogCkBAIC01Niwx
MSArNTUsMTAgQEAgZXh0ZXJuIHZvaWQgKCpjb25zdCBDRUxUX0ZJUl9JTVBMW09QVVNfQVJDSE1B
U0sgKyAxXSkoCiAgICAgICAgICBvcHVzX3ZhbDE2ICp5LAogICAgICAgICAgaW50IE4sCiAgICAg
ICAgICBpbnQgb3JkLAotICAgICAgICAgb3B1c192YWwxNiAqbWVtLAogICAgICAgICAgaW50IGFy
Y2gpOwogCi0jICBkZWZpbmUgY2VsdF9maXIoeCwgbnVtLCB5LCBOLCBvcmQsIG1lbSwgYXJjaCkg
XAotICAgICgoKkNFTFRfRklSX0lNUExbKGFyY2gpICYgT1BVU19BUkNITUFTS10pKHgsIG51bSwg
eSwgTiwgb3JkLCBtZW0sIGFyY2gpKQorIyAgZGVmaW5lIGNlbHRfZmlyKHgsIG51bSwgeSwgTiwg
b3JkLCBhcmNoKSBcCisgICAgKCgqQ0VMVF9GSVJfSU1QTFsoYXJjaCkgJiBPUFVTX0FSQ0hNQVNL
XSkoeCwgbnVtLCB5LCBOLCBvcmQsIGFyY2gpKQogCiAjZW5kaWYKICNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L3g4Ni92cV9zc2UuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvdnFfc3NlLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjRlZmU4
ZjI0OWY4OTNlZDE2MDA0MGVjODI1YjJhNzY0N2UxOTJiYgotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC94ODYvdnFfc3NlLmgKQEAgLTAsMCArMSw1MCBAQAorLyogQ29weXJpZ2h0IChjKSAyMDE2ICBK
ZWFuLU1hcmMgVmFsaW4gKi8KKy8qCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJl
IG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSCisgICBPUiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAg
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAgIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICAgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgorICAgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcKKyAgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUworICAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaWZuZGVmIFZRX1NTRV9ICisjZGVmaW5l
IFZRX1NTRV9ICisKKyNpZiBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpICYmICFkZWZp
bmVkKEZJWEVEX1BPSU5UKQorI2RlZmluZSBPVkVSUklERV9PUF9QVlFfU0VBUkNICisKK29wdXNf
dmFsMTYgb3BfcHZxX3NlYXJjaF9zc2UyKGNlbHRfbm9ybSAqX1gsIGludCAqaXksIGludCBLLCBp
bnQgTiwgaW50IGFyY2gpOworCisjaWYgZGVmaW5lZChPUFVTX1g4Nl9QUkVTVU1FX1NTRTIpCisj
ZGVmaW5lIG9wX3B2cV9zZWFyY2goeCwgaXksIEssIE4sIGFyY2gpIFwKKyAgICAob3BfcHZxX3Nl
YXJjaF9zc2UyKHgsIGl5LCBLLCBOLCBhcmNoKSkKKworI2Vsc2UKKworZXh0ZXJuIG9wdXNfdmFs
MTYgKCpjb25zdCBPUF9QVlFfU0VBUkNIX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKKyAgICAg
IGNlbHRfbm9ybSAqX1gsIGludCAqaXksIGludCBLLCBpbnQgTiwgaW50IGFyY2gpOworCisjICBk
ZWZpbmUgb3BfcHZxX3NlYXJjaChYLCBpeSwgSywgTiwgYXJjaCkgXAorICAgICgoKk9QX1BWUV9T
RUFSQ0hfSU1QTFsoYXJjaCkgJiBPUFVTX0FSQ0hNQVNLXSkoWCwgaXksIEssIE4sIGFyY2gpKQor
CisjZW5kaWYKKyNlbmRpZgorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvdnFfc3NlMi5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L3g4Ni92cV9zc2UyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmEzMTc3MDM1OGI3ZDQxNjQ3MWUxNTc2
ZGQ4NTJjOGIyMDg3OGJlNwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvdnFfc3NlMi5jCkBA
IC0wLDAgKzEsMjE3IEBACisvKiBDb3B5cmlnaHQgKGMpIDIwMDctMjAwOCBDU0lSTworICAgQ29w
eXJpZ2h0IChjKSAyMDA3LTIwMDkgWGlwaC5PcmcgRm91bmRhdGlvbgorICAgQ29weXJpZ2h0IChj
KSAyMDA3LTIwMTYgSmVhbi1NYXJjIFZhbGluICovCisvKgorICAgUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBB
UyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YK
KyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lmZGVmIEhBVkVf
Q09ORklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVkZSA8eG1taW50
cmluLmg+CisjaW5jbHVkZSA8ZW1taW50cmluLmg+CisjaW5jbHVkZSAiY2VsdF9scGMuaCIKKyNp
bmNsdWRlICJzdGFja19hbGxvYy5oIgorI2luY2x1ZGUgIm1hdGhvcHMuaCIKKyNpbmNsdWRlICJ2
cS5oIgorI2luY2x1ZGUgIng4NmNwdS5oIgorCisKKyNpZm5kZWYgRklYRURfUE9JTlQKKworb3B1
c192YWwxNiBvcF9wdnFfc2VhcmNoX3NzZTIoY2VsdF9ub3JtICpfWCwgaW50ICppeSwgaW50IEss
IGludCBOLCBpbnQgYXJjaCkKK3sKKyAgIGludCBpLCBqOworICAgaW50IHB1bHNlc0xlZnQ7Cisg
ICBmbG9hdCB4eSwgeXk7CisgICBWQVJERUNMKGNlbHRfbm9ybSwgeSk7CisgICBWQVJERUNMKGNl
bHRfbm9ybSwgWCk7CisgICBWQVJERUNMKGZsb2F0LCBzaWdueSk7CisgICBfX20xMjggc2lnbm1h
c2s7CisgICBfX20xMjggc3VtczsKKyAgIF9fbTEyOGkgZm91cnM7CisgICBTQVZFX1NUQUNLOwor
CisgICAodm9pZClhcmNoOworICAgLyogQWxsIGJpdHMgc2V0IHRvIHplcm8sIGV4Y2VwdCBmb3Ig
dGhlIHNpZ24gYml0LiAqLworICAgc2lnbm1hc2sgPSBfbW1fc2V0X3BzMSgtMC5mKTsKKyAgIGZv
dXJzID0gX21tX3NldF9lcGkzMig0LCA0LCA0LCA0KTsKKyAgIEFMTE9DKHksIE4rMywgY2VsdF9u
b3JtKTsKKyAgIEFMTE9DKFgsIE4rMywgY2VsdF9ub3JtKTsKKyAgIEFMTE9DKHNpZ255LCBOKzMs
IGZsb2F0KTsKKworICAgT1BVU19DT1BZKFgsIF9YLCBOKTsKKyAgIFhbTl0gPSBYW04rMV0gPSBY
W04rMl0gPSAwOworICAgc3VtcyA9IF9tbV9zZXR6ZXJvX3BzKCk7CisgICBmb3IgKGo9MDtqPE47
ais9NCkKKyAgIHsKKyAgICAgIF9fbTEyOCB4NCwgczQ7CisgICAgICB4NCA9IF9tbV9sb2FkdV9w
cygmWFtqXSk7CisgICAgICBzNCA9IF9tbV9jbXBsdF9wcyh4NCwgX21tX3NldHplcm9fcHMoKSk7
CisgICAgICAvKiBHZXQgcmlkIG9mIHRoZSBzaWduICovCisgICAgICB4NCA9IF9tbV9hbmRub3Rf
cHMoc2lnbm1hc2ssIHg0KTsKKyAgICAgIHN1bXMgPSBfbW1fYWRkX3BzKHN1bXMsIHg0KTsKKyAg
ICAgIC8qIENsZWFyIHkgYW5kIGl5IGluIGNhc2Ugd2UgZG9uJ3QgZG8gdGhlIHByb2plY3Rpb24u
ICovCisgICAgICBfbW1fc3RvcmV1X3BzKCZ5W2pdLCBfbW1fc2V0emVyb19wcygpKTsKKyAgICAg
IF9tbV9zdG9yZXVfc2kxMjgoKF9fbTEyOGkqKSZpeVtqXSwgX21tX3NldHplcm9fc2kxMjgoKSk7
CisgICAgICBfbW1fc3RvcmV1X3BzKCZYW2pdLCB4NCk7CisgICAgICBfbW1fc3RvcmV1X3BzKCZz
aWdueVtqXSwgczQpOworICAgfQorICAgc3VtcyA9IF9tbV9hZGRfcHMoc3VtcywgX21tX3NodWZm
bGVfcHMoc3Vtcywgc3VtcywgX01NX1NIVUZGTEUoMSwgMCwgMywgMikpKTsKKyAgIHN1bXMgPSBf
bW1fYWRkX3BzKHN1bXMsIF9tbV9zaHVmZmxlX3BzKHN1bXMsIHN1bXMsIF9NTV9TSFVGRkxFKDIs
IDMsIDAsIDEpKSk7CisKKyAgIHh5ID0geXkgPSAwOworCisgICBwdWxzZXNMZWZ0ID0gSzsKKwor
ICAgLyogRG8gYSBwcmUtc2VhcmNoIGJ5IHByb2plY3Rpbmcgb24gdGhlIHB5cmFtaWQgKi8KKyAg
IGlmIChLID4gKE4+PjEpKQorICAgeworICAgICAgX19tMTI4aSBwdWxzZXNfc3VtOworICAgICAg
X19tMTI4IHl5NCwgeHk0OworICAgICAgX19tMTI4IHJjcDQ7CisgICAgICBvcHVzX3ZhbDMyIHN1
bSA9IF9tbV9jdnRzc19mMzIoc3Vtcyk7CisgICAgICAvKiBJZiBYIGlzIHRvbyBzbWFsbCwganVz
dCByZXBsYWNlIGl0IHdpdGggYSBwdWxzZSBhdCAwICovCisgICAgICAvKiBQcmV2ZW50cyBpbmZp
bml0aWVzIGFuZCBOYU5zIGZyb20gY2F1c2luZyB0b28gbWFueSBwdWxzZXMKKyAgICAgICAgIHRv
IGJlIGFsbG9jYXRlZC4gNjQgaXMgYW4gYXBwcm94aW1hdGlvbiBvZiBpbmZpbml0eSBoZXJlLiAq
LworICAgICAgaWYgKCEoc3VtID4gRVBTSUxPTiAmJiBzdW0gPCA2NCkpCisgICAgICB7CisgICAg
ICAgICBYWzBdID0gUUNPTlNUMTYoMS5mLDE0KTsKKyAgICAgICAgIGo9MTsgZG8KKyAgICAgICAg
ICAgIFhbal09MDsKKyAgICAgICAgIHdoaWxlICgrK2o8Tik7CisgICAgICAgICBzdW1zID0gX21t
X3NldF9wczEoMS5mKTsKKyAgICAgIH0KKyAgICAgIC8qIFVzaW5nIEsrZSB3aXRoIGUgPCAxIGd1
YXJhbnRlZXMgd2UgY2Fubm90IGdldCBtb3JlIHRoYW4gSyBwdWxzZXMuICovCisgICAgICByY3A0
ID0gX21tX211bF9wcyhfbW1fc2V0X3BzMSgoZmxvYXQpKEsrLjgpKSwgX21tX3JjcF9wcyhzdW1z
KSk7CisgICAgICB4eTQgPSB5eTQgPSBfbW1fc2V0emVyb19wcygpOworICAgICAgcHVsc2VzX3N1
bSA9IF9tbV9zZXR6ZXJvX3NpMTI4KCk7CisgICAgICBmb3IgKGo9MDtqPE47ais9NCkKKyAgICAg
IHsKKyAgICAgICAgIF9fbTEyOCByeDQsIHg0LCB5NDsKKyAgICAgICAgIF9fbTEyOGkgaXk0Owor
ICAgICAgICAgeDQgPSBfbW1fbG9hZHVfcHMoJlhbal0pOworICAgICAgICAgcng0ID0gX21tX211
bF9wcyh4NCwgcmNwNCk7CisgICAgICAgICBpeTQgPSBfbW1fY3Z0dHBzX2VwaTMyKHJ4NCk7Cisg
ICAgICAgICBwdWxzZXNfc3VtID0gX21tX2FkZF9lcGkzMihwdWxzZXNfc3VtLCBpeTQpOworICAg
ICAgICAgX21tX3N0b3JldV9zaTEyOCgoX19tMTI4aSopJml5W2pdLCBpeTQpOworICAgICAgICAg
eTQgPSBfbW1fY3Z0ZXBpMzJfcHMoaXk0KTsKKyAgICAgICAgIHh5NCA9IF9tbV9hZGRfcHMoeHk0
LCBfbW1fbXVsX3BzKHg0LCB5NCkpOworICAgICAgICAgeXk0ID0gX21tX2FkZF9wcyh5eTQsIF9t
bV9tdWxfcHMoeTQsIHk0KSk7CisgICAgICAgICAvKiBkb3VibGUgdGhlIHlbXSB2ZWN0b3Igc28g
d2UgZG9uJ3QgaGF2ZSB0byBkbyBpdCBpbiB0aGUgc2VhcmNoIGxvb3AuICovCisgICAgICAgICBf
bW1fc3RvcmV1X3BzKCZ5W2pdLCBfbW1fYWRkX3BzKHk0LCB5NCkpOworICAgICAgfQorICAgICAg
cHVsc2VzX3N1bSA9IF9tbV9hZGRfZXBpMzIocHVsc2VzX3N1bSwgX21tX3NodWZmbGVfZXBpMzIo
cHVsc2VzX3N1bSwgX01NX1NIVUZGTEUoMSwgMCwgMywgMikpKTsKKyAgICAgIHB1bHNlc19zdW0g
PSBfbW1fYWRkX2VwaTMyKHB1bHNlc19zdW0sIF9tbV9zaHVmZmxlX2VwaTMyKHB1bHNlc19zdW0s
IF9NTV9TSFVGRkxFKDIsIDMsIDAsIDEpKSk7CisgICAgICBwdWxzZXNMZWZ0IC09IF9tbV9jdnRz
aTEyOF9zaTMyKHB1bHNlc19zdW0pOworICAgICAgeHk0ID0gX21tX2FkZF9wcyh4eTQsIF9tbV9z
aHVmZmxlX3BzKHh5NCwgeHk0LCBfTU1fU0hVRkZMRSgxLCAwLCAzLCAyKSkpOworICAgICAgeHk0
ID0gX21tX2FkZF9wcyh4eTQsIF9tbV9zaHVmZmxlX3BzKHh5NCwgeHk0LCBfTU1fU0hVRkZMRSgy
LCAzLCAwLCAxKSkpOworICAgICAgeHkgPSBfbW1fY3Z0c3NfZjMyKHh5NCk7CisgICAgICB5eTQg
PSBfbW1fYWRkX3BzKHl5NCwgX21tX3NodWZmbGVfcHMoeXk0LCB5eTQsIF9NTV9TSFVGRkxFKDEs
IDAsIDMsIDIpKSk7CisgICAgICB5eTQgPSBfbW1fYWRkX3BzKHl5NCwgX21tX3NodWZmbGVfcHMo
eXk0LCB5eTQsIF9NTV9TSFVGRkxFKDIsIDMsIDAsIDEpKSk7CisgICAgICB5eSA9IF9tbV9jdnRz
c19mMzIoeXk0KTsKKyAgIH0KKyAgIFhbTl0gPSBYW04rMV0gPSBYW04rMl0gPSAtMTAwOworICAg
eVtOXSA9IHlbTisxXSA9IHlbTisyXSA9IDEwMDsKKyAgIGNlbHRfYXNzZXJ0MihwdWxzZXNMZWZ0
Pj0wLCAiQWxsb2NhdGVkIHRvbyBtYW55IHB1bHNlcyBpbiB0aGUgcXVpY2sgcGFzcyIpOworCisg
ICAvKiBUaGlzIHNob3VsZCBuZXZlciBoYXBwZW4sIGJ1dCBqdXN0IGluIGNhc2UgaXQgZG9lcyAo
ZS5nLiBvbiBzaWxlbmNlKQorICAgICAgd2UgZmlsbCB0aGUgZmlyc3QgYmluIHdpdGggcHVsc2Vz
LiAqLworICAgaWYgKHB1bHNlc0xlZnQgPiBOKzMpCisgICB7CisgICAgICBvcHVzX3ZhbDE2IHRt
cCA9IChvcHVzX3ZhbDE2KXB1bHNlc0xlZnQ7CisgICAgICB5eSA9IE1BQzE2XzE2KHl5LCB0bXAs
IHRtcCk7CisgICAgICB5eSA9IE1BQzE2XzE2KHl5LCB0bXAsIHlbMF0pOworICAgICAgaXlbMF0g
Kz0gcHVsc2VzTGVmdDsKKyAgICAgIHB1bHNlc0xlZnQ9MDsKKyAgIH0KKworICAgZm9yIChpPTA7
aTxwdWxzZXNMZWZ0O2krKykKKyAgIHsKKyAgICAgIGludCBiZXN0X2lkOworICAgICAgX19tMTI4
IHh5NCwgeXk0OworICAgICAgX19tMTI4IG1heCwgbWF4MjsKKyAgICAgIF9fbTEyOGkgY291bnQ7
CisgICAgICBfX20xMjhpIHBvczsKKyAgICAgIC8qIFRoZSBzcXVhcmVkIG1hZ25pdHVkZSB0ZXJt
IGdldHMgYWRkZWQgYW55d2F5LCBzbyB3ZSBtaWdodCBhcyB3ZWxsCisgICAgICAgICBhZGQgaXQg
b3V0c2lkZSB0aGUgbG9vcCAqLworICAgICAgeXkgPSBBREQxNih5eSwgMSk7CisgICAgICB4eTQg
PSBfbW1fbG9hZDFfcHMoJnh5KTsKKyAgICAgIHl5NCA9IF9tbV9sb2FkMV9wcygmeXkpOworICAg
ICAgbWF4ID0gX21tX3NldHplcm9fcHMoKTsKKyAgICAgIHBvcyA9IF9tbV9zZXR6ZXJvX3NpMTI4
KCk7CisgICAgICBjb3VudCA9IF9tbV9zZXRfZXBpMzIoMywgMiwgMSwgMCk7CisgICAgICBmb3Ig
KGo9MDtqPE47ais9NCkKKyAgICAgIHsKKyAgICAgICAgIF9fbTEyOCB4NCwgeTQsIHI0OworICAg
ICAgICAgeDQgPSBfbW1fbG9hZHVfcHMoJlhbal0pOworICAgICAgICAgeTQgPSBfbW1fbG9hZHVf
cHMoJnlbal0pOworICAgICAgICAgeDQgPSBfbW1fYWRkX3BzKHg0LCB4eTQpOworICAgICAgICAg
eTQgPSBfbW1fYWRkX3BzKHk0LCB5eTQpOworICAgICAgICAgeTQgPSBfbW1fcnNxcnRfcHMoeTQp
OworICAgICAgICAgcjQgPSBfbW1fbXVsX3BzKHg0LCB5NCk7CisgICAgICAgICAvKiBVcGRhdGUg
dGhlIGluZGV4IG9mIHRoZSBtYXguICovCisgICAgICAgICBwb3MgPSBfbW1fbWF4X2VwaTE2KHBv
cywgX21tX2FuZF9zaTEyOChjb3VudCwgX21tX2Nhc3Rwc19zaTEyOChfbW1fY21wZ3RfcHMocjQs
IG1heCkpKSk7CisgICAgICAgICAvKiBVcGRhdGUgdGhlIG1heC4gKi8KKyAgICAgICAgIG1heCA9
IF9tbV9tYXhfcHMobWF4LCByNCk7CisgICAgICAgICAvKiBVcGRhdGUgdGhlIGluZGljZXMgKCs0
KSAqLworICAgICAgICAgY291bnQgPSBfbW1fYWRkX2VwaTMyKGNvdW50LCBmb3Vycyk7CisgICAg
ICB9CisgICAgICAvKiBIb3Jpem9udGFsIG1heCAqLworICAgICAgbWF4MiA9IF9tbV9tYXhfcHMo
bWF4LCBfbW1fc2h1ZmZsZV9wcyhtYXgsIG1heCwgX01NX1NIVUZGTEUoMSwgMCwgMywgMikpKTsK
KyAgICAgIG1heDIgPSBfbW1fbWF4X3BzKG1heDIsIF9tbV9zaHVmZmxlX3BzKG1heDIsIG1heDIs
IF9NTV9TSFVGRkxFKDIsIDMsIDAsIDEpKSk7CisgICAgICAvKiBOb3cgdGhhdCBtYXgyIGNvbnRh
aW5zIHRoZSBtYXggYXQgYWxsIHBvc2l0aW9ucywgbG9vayBhdCB3aGljaCB2YWx1ZShzKSBvZiB0
aGUKKyAgICAgICAgIHBhcnRpYWwgbWF4IGlzIGVxdWFsIHRvIHRoZSBnbG9iYWwgbWF4LiAqLwor
ICAgICAgcG9zID0gX21tX2FuZF9zaTEyOChwb3MsIF9tbV9jYXN0cHNfc2kxMjgoX21tX2NtcGVx
X3BzKG1heCwgbWF4MikpKTsKKyAgICAgIHBvcyA9IF9tbV9tYXhfZXBpMTYocG9zLCBfbW1fdW5w
YWNraGlfZXBpNjQocG9zLCBwb3MpKTsKKyAgICAgIHBvcyA9IF9tbV9tYXhfZXBpMTYocG9zLCBf
bW1fc2h1ZmZsZWxvX2VwaTE2KHBvcywgX01NX1NIVUZGTEUoMSwgMCwgMywgMikpKTsKKyAgICAg
IGJlc3RfaWQgPSBfbW1fY3Z0c2kxMjhfc2kzMihwb3MpOworCisgICAgICAvKiBVcGRhdGluZyB0
aGUgc3VtcyBvZiB0aGUgbmV3IHB1bHNlKHMpICovCisgICAgICB4eSA9IEFERDMyKHh5LCBFWFRF
TkQzMihYW2Jlc3RfaWRdKSk7CisgICAgICAvKiBXZSdyZSBtdWx0aXBseWluZyB5W2pdIGJ5IHR3
byBzbyB3ZSBkb24ndCBoYXZlIHRvIGRvIGl0IGhlcmUgKi8KKyAgICAgIHl5ID0gQUREMTYoeXks
IHlbYmVzdF9pZF0pOworCisgICAgICAvKiBPbmx5IG5vdyB0aGF0IHdlJ3ZlIG1hZGUgdGhlIGZp
bmFsIGNob2ljZSwgdXBkYXRlIHkvaXkgKi8KKyAgICAgIC8qIE11bHRpcGx5aW5nIHlbal0gYnkg
MiBzbyB3ZSBkb24ndCBoYXZlIHRvIGRvIGl0IGV2ZXJ5d2hlcmUgZWxzZSAqLworICAgICAgeVti
ZXN0X2lkXSArPSAyOworICAgICAgaXlbYmVzdF9pZF0rKzsKKyAgIH0KKworICAgLyogUHV0IHRo
ZSBvcmlnaW5hbCBzaWduIGJhY2sgKi8KKyAgIGZvciAoaj0wO2o8TjtqKz00KQorICAgeworICAg
ICAgX19tMTI4aSB5NDsKKyAgICAgIF9fbTEyOGkgczQ7CisgICAgICB5NCA9IF9tbV9sb2FkdV9z
aTEyOCgoX19tMTI4aSopJml5W2pdKTsKKyAgICAgIHM0ID0gX21tX2Nhc3Rwc19zaTEyOChfbW1f
bG9hZHVfcHMoJnNpZ255W2pdKSk7CisgICAgICB5NCA9IF9tbV94b3Jfc2kxMjgoX21tX2FkZF9l
cGkzMih5NCwgczQpLCBzNCk7CisgICAgICBfbW1fc3RvcmV1X3NpMTI4KChfX20xMjhpKikmaXlb
al0sIHk0KTsKKyAgIH0KKyAgIFJFU1RPUkVfU1RBQ0s7CisgICByZXR1cm4geXk7Cit9CisKKyNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni94ODZfY2VsdF9tYXAuYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYveDg2X2Nl
bHRfbWFwLmMKaW5kZXggNDdiYTQxYjllZWZkNWUzZGNmNGU0ZjhmNTkwOGIxY2IwYzVlYWU1YS4u
ZDM5ZDg4ZWRlY2Q1NzE5Mzk3MzE1NzAxYWUzYjkzZGJjZjBhNzY3ZSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L3g4Ni94ODZfY2VsdF9tYXAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L3g4Nl9jZWx0X21hcC5jCkBAIC0zMyw2
ICszMyw3IEBACiAjaW5jbHVkZSAiY2VsdF9scGMuaCIKICNpbmNsdWRlICJwaXRjaC5oIgogI2lu
Y2x1ZGUgInBpdGNoX3NzZS5oIgorI2luY2x1ZGUgInZxLmgiCiAKICNpZiBkZWZpbmVkKE9QVVNf
SEFWRV9SVENEKQogCkBAIC00Niw3ICs0Nyw2IEBAIHZvaWQgKCpjb25zdCBDRUxUX0ZJUl9JTVBM
W09QVVNfQVJDSE1BU0sgKyAxXSkoCiAgICAgICAgICBvcHVzX3ZhbDE2ICAgICAgICp5LAogICAg
ICAgICAgaW50ICAgICAgICAgICAgICBOLAogICAgICAgICAgaW50ICAgICAgICAgICAgICBvcmQs
Ci0gICAgICAgICBvcHVzX3ZhbDE2ICAgICAgICptZW0sCiAgICAgICAgICBpbnQgICAgICAgICAg
ICAgIGFyY2gKICkgPSB7CiAgIGNlbHRfZmlyX2MsICAgICAgICAgICAgICAgIC8qIG5vbi1zc2Ug
Ki8KQEAgLTE1MSw1ICsxNTEsMTcgQEAgdm9pZCAoKmNvbnN0IENPTUJfRklMVEVSX0NPTlNUX0lN
UExbT1BVU19BUkNITUFTSyArIDFdKSgKIAogI2VuZGlmCiAKKyNpZiBkZWZpbmVkKE9QVVNfWDg2
X01BWV9IQVZFX1NTRTIpICYmICFkZWZpbmVkKE9QVVNfWDg2X1BSRVNVTUVfU1NFMikKK29wdXNf
dmFsMTYgKCpjb25zdCBPUF9QVlFfU0VBUkNIX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKKyAg
ICAgIGNlbHRfbm9ybSAqX1gsIGludCAqaXksIGludCBLLCBpbnQgTiwgaW50IGFyY2gKKykgPSB7
CisgIG9wX3B2cV9zZWFyY2hfYywgICAgICAgICAgICAgICAgLyogbm9uLXNzZSAqLworICBvcF9w
dnFfc2VhcmNoX2MsCisgIE1BWV9IQVZFX1NTRTIob3BfcHZxX3NlYXJjaCksCisgIE1BWV9IQVZF
X1NTRTIob3BfcHZxX3NlYXJjaCksCisgIE1BWV9IQVZFX1NTRTIob3BfcHZxX3NlYXJjaCkKK307
CisjZW5kaWYKKwogI2VuZGlmCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY29uZmlndXJlLmFjIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jb25m
aWd1cmUuYWMKaW5kZXggYzUyN2UzNjg0ZDZjZjVlYWNmYzI3ODA1YWZlM2UzZDdmODIzYTEwNy4u
NWZmYTJkMzhlNzBjZTY1YzM5MGQ5MDIwYjQxMTM0YjlmNTdkMjA5MiAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jb25m
aWd1cmUuYWMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jb25maWd1cmUuYWMKQEAgLTIyLDkgKzIyLDkgQEAgbTRfaWZkZWYoW0FN
X1NJTEVOVF9SVUxFU10sIFtBTV9TSUxFTlRfUlVMRVMoW3llc10pXSkKIAogIyBGb3IgbGlidG9v
bC4KIGRubCBQbGVhc2UgdXBkYXRlIHRoZXNlIGZvciByZWxlYXNlcy4KLU9QVVNfTFRfQ1VSUkVO
VD01Ci1PUFVTX0xUX1JFVklTSU9OPTMKLU9QVVNfTFRfQUdFPTUKK09QVVNfTFRfQ1VSUkVOVD02
CitPUFVTX0xUX1JFVklTSU9OPTEKK09QVVNfTFRfQUdFPTYKIAogQUNfU1VCU1QoT1BVU19MVF9D
VVJSRU5UKQogQUNfU1VCU1QoT1BVU19MVF9SRVZJU0lPTikKQEAgLTQyMSwxMiArNDIxLDEyIEBA
IEFDX0RFRlVOKFtPUFVTX1BBVEhfTkUxMF0sCiAgICAgICBmaQogCiAgICAgICBBQ19NU0dfQ0hF
Q0tJTkcoZm9yIE5FMTApCi0gICAgICBzYXZlX0NGTEFHUz0iJENGTEFHUyI7IENGTEFHUz0iJE5F
MTBfQ0ZMQUdTIgotICAgICAgc2F2ZV9MSUJTPSIkTElCUyI7IExJQlM9IiRORTEwX0xJQlMgJExJ
Qk0iCisgICAgICBzYXZlX0NGTEFHUz0iJENGTEFHUyI7IENGTEFHUz0iJENGTEFHUyAkTkUxMF9D
RkxBR1MiCisgICAgICBzYXZlX0xJQlM9IiRMSUJTIjsgTElCUz0iJExJQlMgJE5FMTBfTElCUyAk
TElCTSIKICAgICAgIEFDX0xJTktfSUZFTFNFKAogICAgICAgICAgWwogICAgICAgICAgICAgQUNf
TEFOR19QUk9HUkFNKAotICAgICAgICAgICAgICAgW1sjaW5jbHVkZSA8TkUxMF9pbml0Lmg+Cisg
ICAgICAgICAgICAgICBbWyNpbmNsdWRlIDxORTEwX2RzcC5oPgogICAgICAgICAgICAgICAgXV0s
CiAgICAgICAgICAgICAgICBbWwogICAgICAgICAgICAgICAgICAgbmUxMF9mZnRfY2ZnX2Zsb2F0
MzJfdCBjZmc7CkBAIC03MTUsNyArNzE1LDcgQEAgQVNfSUYoW3Rlc3QgeCIkZW5hYmxlX2ludHJp
bnNpY3MiID0geCJ5ZXMiXSxbCiAgICAgICAgICAgICBdXSldLAogICAgICAgICAgICAgW0FDX01T
R19SRVNVTFQoW0MgbWV0aG9kXSkKICAgICAgICAgICAgICAgICAgQUNfREVGSU5FKFtDUFVfSU5G
T19CWV9DXSwgWzFdLCBbR2V0IENQVSBJbmZvIGJ5IGMgbWV0aG9kXSldLAotICAgICAgICAgICAg
W0FDX01TR19FUlJPUihbbm8gc3VwcG9ydGVkIEdldCBDUFUgSW5mbyBtZXRob2QsIHBsZWFzZSBk
aXNhYmxlIGludHJpbnNpY3NdKV0pXSldKQorICAgICAgICAgICAgW0FDX01TR19FUlJPUihbbm8g
c3VwcG9ydGVkIEdldCBDUFUgSW5mbyBtZXRob2QsIHBsZWFzZSBkaXNhYmxlIHJ1bi10aW1lIENQ
VSBjYXBhYmlsaXRpZXMgZGV0ZWN0aW9uIG9yIGludHJpbnNpY3NdKV0pXSldKQogICAgXSwKICAg
IFsKICAgICAgIEFDX01TR19XQVJOKFtObyBpbnRyaW5zaWNzIHN1cHBvcnQgZm9yIHlvdXIgYXJj
aGl0ZWN0dXJlXSkKQEAgLTc2Nyw2ICs3NjcsMTUgQEAgQVNfSUYoW3Rlc3QgIiRlbmFibGVfZnV6
emluZyIgPSAieWVzIl0sIFsKICAgQUNfREVGSU5FKFtGVVpaSU5HXSwgWzFdLCBbRnV6emluZ10p
CiBdKQogCitBQ19BUkdfRU5BQkxFKFtjaGVjay1hc21dLAorICAgIFtBU19IRUxQX1NUUklORyhb
LS1lbmFibGUtY2hlY2stYXNtXSwKKyAgICAgICAgICAgICAgICAgICAgW2VuYWJsZSBiaXQtZXhh
Y3RuZXNzIGNoZWNrcyBiZXR3ZWVuIG9wdGltaXplZCBhbmQgYyBpbXBsZW1lbnRhdGlvbnNdKV0s
LAorICAgIFtlbmFibGVfY2hlY2tfYXNtPW5vXSkKKworQVNfSUYoW3Rlc3QgIiRlbmFibGVfY2hl
Y2tfYXNtIiA9ICJ5ZXMiXSwgWworICBBQ19ERUZJTkUoW09QVVNfQ0hFQ0tfQVNNXSwgWzFdLCBb
UnVuIGJpdC1leGFjdG5lc3MgY2hlY2tzIGJldHdlZW4gb3B0aW1pemVkIGFuZCBjIGltcGxlbWVu
dGF0aW9uc10pCitdKQorCiBBQ19BUkdfRU5BQkxFKFthbWJpc29uaWNzXSwKICAgICBbQVNfSEVM
UF9TVFJJTkcoWy0tZW5hYmxlLWFtYmlzb25pY3NdLFtlbmFibGUgZXhwZXJpbWVudGFsIGFtYmlz
b25pYyBlbmNvZGluZyBhbmQgZGVjb2Rpbmcgc3VwcG9ydF0pXSwsCiAgICAgW2VuYWJsZV9hbWJp
c29uaWNzPW5vXSkKQEAgLTc4MSw2ICs3OTAsNyBAQCBBQ19BUkdfRU5BQkxFKFtkb2NdLAogCiBB
U19JRihbdGVzdCAiJGVuYWJsZV9kb2MiID0gInllcyJdLCBbCiAgIEFDX0NIRUNLX1BST0coSEFW
RV9ET1hZR0VOLCBbZG94eWdlbl0sIFt5ZXNdLCBbbm9dKQorICBBQ19DSEVDS19QUk9HKEhBVkVf
RE9ULCBbZG90XSwgW3llc10sIFtub10pCiBdLFsKICAgSEFWRV9ET1hZR0VOPW5vCiBdKQpAQCAt
Nzk0LDYgKzgwNCwxNSBAQCBBQ19BUkdfRU5BQkxFKFtleHRyYS1wcm9ncmFtc10sCiBBTV9DT05E
SVRJT05BTChbRVhUUkFfUFJPR1JBTVNdLCBbdGVzdCAiJGVuYWJsZV9leHRyYV9wcm9ncmFtcyIg
PSAieWVzIl0pCiAKIAorQUNfQVJHX0VOQUJMRShbdXBkYXRlLWRyYWZ0XSwKKyAgQVNfSEVMUF9T
VFJJTkcoWy0tZW5hYmxlLXVwZGF0ZS1kcmFmdF0sIFtFbmFibGUgYml0c3RyZWFtIGNoYW5nZXMg
ZnJvbSBkcmFmdC1pZXRmLWNvZGVjLW9wdXMtdXBkYXRlXSksLAorICBbZW5hYmxlX3VwZGF0ZV9k
cmFmdD1ub10pCisKK0FTX0lGKFt0ZXN0ICIkZW5hYmxlX3VwZGF0ZV9kcmFmdCIgPSAieWVzIl0s
IFsKKyAgQUNfREVGSU5FKFtFTkFCTEVfVVBEQVRFX0RSQUZUXSwgWzFdLCBbRW5hYmxlIGJpdHN0
cmVhbSBjaGFuZ2VzIGZyb20gZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLXVwZGF0ZV0pCitdKQorCisK
IHNhdmVkX0NGTEFHUz0iJENGTEFHUyIKIENGTEFHUz0iJENGTEFHUyAtZnZpc2liaWxpdHk9aGlk
ZGVuIgogQUNfTVNHX0NIRUNLSU5HKFtpZiAke0NDfSBzdXBwb3J0cyAtZnZpc2liaWxpdHk9aGlk
ZGVuXSkKQEAgLTg1OSw3ICs4NzgsOCBAQCBBQ19NU0dfTk9USUNFKFsKICAgICAgIEN1c3RvbSBt
b2RlczogLi4uLi4uLi4uLi4uLi4uLi4uICR7ZW5hYmxlX2N1c3RvbV9tb2Rlc30KICAgICAgIEFz
c2VydGlvbiBjaGVja2luZzogLi4uLi4uLi4uLi4uICR7ZW5hYmxlX2Fzc2VydGlvbnN9CiAgICAg
ICBGdXp6aW5nOiAuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAke2VuYWJsZV9mdXp6aW5nfQotICAg
ICAgQW1iaXNvbmljcyBzdXBwb3J0OiAuLi4uLi4uLi4uLi4uJHtlbmFibGVfYW1iaXNvbmljc30K
KyAgICAgIENoZWNrIEFTTTogLi4uLi4uLi4uLi4uLi4uLi4uLi4uICR7ZW5hYmxlX2NoZWNrX2Fz
bX0KKyAgICAgIEFtYmlzb25pY3Mgc3VwcG9ydDogLi4uLi4uLi4uLi4uICR7ZW5hYmxlX2FtYmlz
b25pY3N9CiAKICAgICAgIEFQSSBkb2N1bWVudGF0aW9uOiAuLi4uLi4uLi4uLi4uICR7ZW5hYmxl
X2RvY30KICAgICAgIEV4dHJhIHByb2dyYW1zOiAuLi4uLi4uLi4uLi4uLi4uICR7ZW5hYmxlX2V4
dHJhX3Byb2dyYW1zfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvRG94eWZpbGUuaW4gYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9Eb3h5ZmlsZS5p
bgppbmRleCBjZDc3Njc1MmQ0OTY3ZGRlNjE4ZjkwMDcyN2Q2NzA1ZTVkYzg3YTBmLi4zNmVlZTBi
NTM4MGI4MDQzMjc5NjMxMDI2Nzg1MmNiMTYyYTQ2YmQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9Eb3h5Zmls
ZS5pbgorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2RvYy9Eb3h5ZmlsZS5pbgpAQCAtMzE4LDMgKzMxOCwxOCBAQCBQUkVERUZJTkVE
ICAgICAgICAgICAgID0gT1BVU19FWFBPUlQ9IFwKICAgICAgICAgICAgICAgICAgICAgICAgICBP
UFVTX0NVU1RPTV9FWFBPUlRfU1RBVElDPSBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgT1BV
U19XQVJOX1VOVVNFRF9SRVNVTFQ9IFwKICAgICAgICAgICAgICAgICAgICAgICAgICBPUFVTX0FS
R19OT05OVUxMKF94KT0KKworIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBDb25maWd1cmF0aW9uIG9w
dGlvbnMgcmVsYXRlZCB0byB0aGUgZG90IHRvb2wKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBJ
ZiB5b3Ugc2V0IHRoZSBIQVZFX0RPVCB0YWcgdG8gWUVTIHRoZW4gZG94eWdlbiB3aWxsIGFzc3Vt
ZSB0aGUgZG90IHRvb2wgaXMKKyMgYXZhaWxhYmxlIGZyb20gdGhlIHBhdGguIFRoaXMgdG9vbCBp
cyBwYXJ0IG9mIEdyYXBodml6IChzZWU6CisjIGh0dHA6Ly93d3cuZ3JhcGh2aXoub3JnLyksIGEg
Z3JhcGggdmlzdWFsaXphdGlvbiB0b29sa2l0IGZyb20gQVQmVCBhbmQgTHVjZW50CisjIEJlbGwg
TGFicy4KKworIyBEZWJpYW4gZGVmYXVsdHMgdG8gWUVTIGhlcmUsIHdoaWxlIEZlZG9yYSBhbmQg
SG9tZWJyZXcgZGVmYXVsdCB0byBOTy4KKyMgU28gd2Ugc2V0IHRoaXMgYmFzZWQgb24gd2hldGhl
ciB0aGUgZ3JhcGh2aXogcGFja2FnZSBpcyBhdmFpbGFibGUgYXQKKyMgY29uZmlndXJlIHRpbWUu
CisjCitIQVZFX0RPVCA9IEBIQVZFX0RPVEAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL1RPRE8gYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9UT0RP
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5ZTFjMmQ1MTNjNGQ0OWY0YTFkMmViZjEy
M2VjYzFiNWY3YzFhNjY3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvZG9jL1RPRE8KKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLWRlZmluZSBhdWRp
byBiYW5kd2lkdGggYXMgZnJlcXVlbmN5IHJhbmdlCi0KLXJlcGVhdCBwYWRkaW5nIHJlY29tbWVu
ZGF0aW9uCi0KLXB0aW1lOiByZWZlciB0byBSRkMKLQotT3B1cyBkb2VzIG5vdCBwcm92aWRlIGFu
eSBjb25maWRlbnRpYWxpdHkgb3IgaW50ZWdyaXR5IHByb3RlY3Rpb24KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9j
L2J1aWxkX2RyYWZ0LnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9kb2MvYnVpbGRfZHJhZnQuc2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDE1YjIyYTc5
YjM0NmMwZWFmZDA0NGVlMWUwYjRhMjYyNzU4NGQ5MgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1
aWxkX2RyYWZ0LnNoCkBAIC0wLDAgKzEsMTA0IEBACisjIS9iaW4vc2gKKworIyBDb3B5cmlnaHQg
KGMpIDIwMTEtMjAxMiBYaXBoLk9yZyBGb3VuZGF0aW9uIGFuZCBNb3ppbGxhIENvcnBvcmF0aW9u
CisjCisjICBUaGlzIGZpbGUgaXMgZXh0cmFjdGVkIGZyb20gUkZDNjcxNi4gUGxlYXNlIHNlZSB0
aGF0IFJGQyBmb3IgYWRkaXRpb25hbAorIyAgaW5mb3JtYXRpb24uCisjCisjICBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyMgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworIyAgYXJlIG1ldDoKKyMKKyMgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMKKyMg
IC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyMgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisjCisjICAtIE5laXRo
ZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3Ig
dGhlCisjICBuYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZQorIyAgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCisjICBwZXJtaXNzaW9uLgorIworIyAgVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRS
SUJVVE9SUworIyAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVAorIyAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisjICBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBP
V05FUgorIyAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisjICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisjICBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyMg
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YKKyMgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisjICBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyMgIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCisj
U3RvcCBvbiBlcnJvcnMKK3NldCAtZQorI1NldCB0aGUgQ1dEIHRvIHRoZSBsb2NhdGlvbiBvZiB0
aGlzIHNjcmlwdAorWyAtbiAiJHswJS8qfSIgXSAmJiBjZCAiJHswJS8qfSIKKwordG9wbGV2ZWw9
Ii4uIgorZGVzdGRpcj0ib3B1c19zb3VyY2UiCisKK2VjaG8gcGFja2FnaW5nIHNvdXJjZSBjb2Rl
CitybSAtcmYgIiR7ZGVzdGRpcn0iCitta2RpciAiJHtkZXN0ZGlyfSIKK21rZGlyICIke2Rlc3Rk
aXJ9L3NyYyIKK21rZGlyICIke2Rlc3RkaXJ9L3NpbGsiCitta2RpciAiJHtkZXN0ZGlyfS9zaWxr
L2Zsb2F0IgorbWtkaXIgIiR7ZGVzdGRpcn0vc2lsay9maXhlZCIKK21rZGlyICIke2Rlc3RkaXJ9
L2NlbHQiCitta2RpciAiJHtkZXN0ZGlyfS9pbmNsdWRlIgorZm9yIGYgaW4gYGNhdCAiJHt0b3Bs
ZXZlbH0iL29wdXNfc291cmNlcy5tayAiJHt0b3BsZXZlbH0iL2NlbHRfc291cmNlcy5tayBcCisg
IiR7dG9wbGV2ZWx9Ii9zaWxrX3NvdXJjZXMubWsgIiR7dG9wbGV2ZWx9Ii9vcHVzX2hlYWRlcnMu
bWsgXAorICIke3RvcGxldmVsfSIvY2VsdF9oZWFkZXJzLm1rICIke3RvcGxldmVsfSIvc2lsa19o
ZWFkZXJzLm1rIFwKKyB8IGdyZXAgJ1wuW2NoXScgfCBzZWQgLWUgJ3MvXi4qPS8vJyAtZSAncy9c
XFxcLy8nYCA7IGRvCisgIGNwIC1hICIke3RvcGxldmVsfS8ke2Z9IiAiJHtkZXN0ZGlyfS8ke2Z9
IgorZG9uZQorY3AgLWEgIiR7dG9wbGV2ZWx9Ii9zcmMvb3B1c19kZW1vLmMgIiR7ZGVzdGRpcn0i
L3NyYy8KK2NwIC1hICIke3RvcGxldmVsfSIvc3JjL29wdXNfY29tcGFyZS5jICIke2Rlc3RkaXJ9
Ii9zcmMvCitjcCAtYSAiJHt0b3BsZXZlbH0iL2NlbHQvb3B1c19jdXN0b21fZGVtby5jICIke2Rl
c3RkaXJ9Ii9jZWx0LworY3AgLWEgIiR7dG9wbGV2ZWx9Ii9NYWtlZmlsZS51bml4ICIke2Rlc3Rk
aXJ9Ii9NYWtlZmlsZQorY3AgLWEgIiR7dG9wbGV2ZWx9Ii9vcHVzX3NvdXJjZXMubWsgIiR7ZGVz
dGRpcn0iLworY3AgLWEgIiR7dG9wbGV2ZWx9Ii9jZWx0X3NvdXJjZXMubWsgIiR7ZGVzdGRpcn0i
LworY3AgLWEgIiR7dG9wbGV2ZWx9Ii9zaWxrX3NvdXJjZXMubWsgIiR7ZGVzdGRpcn0iLworY3Ag
LWEgIiR7dG9wbGV2ZWx9Ii9SRUFETUUuZHJhZnQgIiR7ZGVzdGRpcn0iL1JFQURNRQorY3AgLWEg
IiR7dG9wbGV2ZWx9Ii9DT1BZSU5HICIke2Rlc3RkaXJ9Ii9DT1BZSU5HCitjcCAtYSAiJHt0b3Bs
ZXZlbH0iL3Rlc3RzL3J1bl92ZWN0b3JzLnNoICIke2Rlc3RkaXJ9Ii8KKworR1pJUD0tOSB0YXIg
LS1vd25lcj1yb290IC0tZ3JvdXA9cm9vdCAtLWZvcm1hdD12NyAtY3pmIG9wdXNfc291cmNlLnRh
ci5neiAiJHtkZXN0ZGlyfSIKK2VjaG8gYnVpbGRpbmcgYmFzZTY0IHZlcnNpb24KK2NhdCBvcHVz
X3NvdXJjZS50YXIuZ3p8IGJhc2U2NCB8IHRyIC1kICdcbicgfCBmb2xkIC13IDY0IHwgXAorIHNl
ZCAtZSAncy9eL1w8c3Bhbnggc3R5bGU9InZiYXJlIlw+IyMjLycgLWUgJ3MvJC9cPFwvc3Bhbnhc
Plw8dnNwYWNlXC9cPi8nID4gXAorIG9wdXNfc291cmNlLmJhc2U2NAorCisKKyNlY2hvICc8Zmln
dXJlPicgPiBvcHVzX2NvbXBhcmVfZXNjYXBlZC5jCisjZWNobyAnPGFydHdvcms+JyA+PiBvcHVz
X2NvbXBhcmVfZXNjYXBlZC5jCisjZWNobyAnPCFbQ0RBVEFbJyA+PiBvcHVzX2NvbXBhcmVfZXNj
YXBlZC5jCisjY2F0IG9wdXNfY29tcGFyZS5jID4+IG9wdXNfY29tcGFyZV9lc2NhcGVkLmMKKyNl
Y2hvICddXT4nID4+IG9wdXNfY29tcGFyZV9lc2NhcGVkLmMKKyNlY2hvICc8L2FydHdvcms+JyA+
PiBvcHVzX2NvbXBhcmVfZXNjYXBlZC5jCisjZWNobyAnPC9maWd1cmU+JyA+PiBvcHVzX2NvbXBh
cmVfZXNjYXBlZC5jCisKK2lmIFtbICEgLWQgLi4vb3B1c190ZXN0dmVjdG9ycyBdXSA7IHRoZW4K
KyAgZWNobyAiRG93bmxvYWRpbmcgdGVzdCB2ZWN0b3JzLi4uIgorICB3Z2V0ICdodHRwOi8vb3B1
cy1jb2RlYy5vcmcvdGVzdHZlY3RvcnMvb3B1c190ZXN0dmVjdG9ycy50YXIuZ3onCisgIHRhciAt
QyAuLiAteHZ6ZiBvcHVzX3Rlc3R2ZWN0b3JzLnRhci5negorZmkKK2VjaG8gJzxmaWd1cmU+JyA+
IHRlc3R2ZWN0b3JzX3NoYTEKK2VjaG8gJzxhcnR3b3JrPicgPj4gdGVzdHZlY3RvcnNfc2hhMQor
ZWNobyAnPCFbQ0RBVEFbJyA+PiB0ZXN0dmVjdG9yc19zaGExCisoY2QgLi4vb3B1c190ZXN0dmVj
dG9yczsgc2hhMXN1bSAqLmJpdCAqLmRlYykgPj4gdGVzdHZlY3RvcnNfc2hhMQorI2NkIG9wdXNf
dGVzdHZlY3RvcnMKKyNzaGExc3VtICouYml0ICouZGVjID4+IC4uL3Rlc3R2ZWN0b3JzX3NoYTEK
KyNjZCAuLgorZWNobyAnXV0+JyA+PiB0ZXN0dmVjdG9yc19zaGExCitlY2hvICc8L2FydHdvcms+
JyA+PiB0ZXN0dmVjdG9yc19zaGExCitlY2hvICc8L2ZpZ3VyZT4nID4+IHRlc3R2ZWN0b3JzX3No
YTEKKworZWNobyBydW5uaW5nIHhtbDJyZmMKK3htbDJyZmMgZHJhZnQtaWV0Zi1jb2RlYy1vcHVz
LnhtbCBkcmFmdC1pZXRmLWNvZGVjLW9wdXMuaHRtbCAmCit4bWwycmZjIGRyYWZ0LWlldGYtY29k
ZWMtb3B1cy54bWwKK3dhaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1aWxkX2lzb2JtZmYuc2ggYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9i
dWlsZF9pc29ibWZmLnNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk1ZWEyMDJlNGFmZWVkZjQ5NWNmZTI4YWEzMjhj
OGI5ZWJlZjVjZjgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9idWlsZF9pc29ibWZmLnNoCkBAIC0w
LDAgKzEsNTAgQEAKKyMhL2Jpbi9zaAorCisjIENvcHlyaWdodCAoYykgMjAxNCBYaXBoLk9yZyBG
b3VuZGF0aW9uIGFuZCBNb3ppbGxhIEZvdW5kYXRpb24KKyMKKyMgIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorIyAgbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisjICBhcmUgbWV0OgorIworIyAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIworIyAgLSBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorIyAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorIyAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyMKKyMgIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMg
IGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QKKyMgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorIyAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyMgIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLAorIyAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorIyAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisjICBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GCisjICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORworIyAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisjICBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworI1N0b3Agb24gZXJy
b3JzCitzZXQgLWUKKyNTZXQgdGhlIENXRCB0byB0aGUgbG9jYXRpb24gb2YgdGhpcyBzY3JpcHQK
K1sgLW4gIiR7MCUvKn0iIF0gJiYgY2QgIiR7MCUvKn0iCisKK0hUTUw9b3B1c19pbl9pc29ibWZm
Lmh0bWwKKworZWNobyBkb3dubG9hZGluZyB1cGRhdGVzLi4uCitDU1M9JHtIVE1MJSUuaHRtbH0u
Y3NzCit3Z2V0IC1xIGh0dHA6Ly92ZnJtYW5pYWMuZnVzaGl6ZW4uZXUvY29udGVudHMvJHtIVE1M
fSAtTyAke0hUTUx9Cit3Z2V0IC1xIGh0dHA6Ly92ZnJtYW5pYWMuZnVzaGl6ZW4uZXUvc3R5bGUu
Y3NzIC1PICR7Q1NTfQorCitlY2hvIHVwZGF0aW5nIGxpbmtzLi4uCitjYXQgJHtIVE1MfSB8IHNl
ZCAtZSAicy9cXC5cXC5cXC9zdHlsZS5jc3MvJHtDU1N9LyIgPiAke0hUTUx9KyAmJiBtdiAke0hU
TUx9KyAke0hUTUx9CisKK2VjaG8gc3RyaXBwaW5nLi4uCitjYXQgJHtIVE1MfSB8IHNlZCAtZSAn
cy88IS0tLiotLT4vL2cnID4gJHtIVE1MfSsgJiYgbXYgJHtIVE1MfSsgJHtIVE1MfQorY2F0ICR7
SFRNTH0gfCBzZWQgLWUgJ3MvICokLy9nJyA+ICR7SFRNTH0rICYmIG12ICR7SFRNTH0rICR7SFRN
TH0KK2NhdCAke0NTU30gIHwgc2VkIC1lICdzLyAqJC8vZycgPiAke0NTU30rICYmIG12ICR7Q1NT
fSsgJHtDU1N9CisKKworVkVSU0lPTj0kKGZncmVwIFZlcnNpb24gJHtIVE1MfSB8IHNlZCAncy8u
KlZlcnNpb24gXChbMC05XVwuWzAtOV1cLlswLTldXCkuKi9cMS8nKQorZWNobyBOb3cgYXQgdmVy
c2lvbiAke1ZFUlNJT059CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9idWlsZF9vZ2dkcmFmdC5zaCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1
aWxkX29nZ2RyYWZ0LnNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMwZWU1MzRiMGQ2MDY3NTAzZjQ0YTJkZDQ3MjI3
NGNiNzAyM2Q1NDgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9idWlsZF9vZ2dkcmFmdC5zaApAQCAt
MCwwICsxLDUyIEBACisjIS9iaW4vc2gKKworIyBDb3B5cmlnaHQgKGMpIDIwMTIgWGlwaC5Pcmcg
Rm91bmRhdGlvbiBhbmQgTW96aWxsYSBDb3Jwb3JhdGlvbgorIworIyAgVGhpcyBmaWxlIGlzIGV4
dHJhY3RlZCBmcm9tIFJGQzY3MTYuIFBsZWFzZSBzZWUgdGhhdCBSRkMgZm9yIGFkZGl0aW9uYWwK
KyMgIGluZm9ybWF0aW9uLgorIworIyAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjICBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyMgIGFyZSBt
ZXQ6CisjCisjICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisjICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisjCisjICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisjICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisjICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorIworIyAgLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0
IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorIyAgbmFtZXMgb2Ygc3BlY2lm
aWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKKyMgIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbgorIyAgcGVybWlzc2lvbi4KKyMKKyMgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMgIGBgQVMgSVMnJyBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QK
KyMgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUgorIyAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyMgIE9SIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LAorIyAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorIyAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisjICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisjICBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORworIyAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTCisjICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworI1N0b3Agb24gZXJyb3JzCitzZXQgLWUK
KyNTZXQgdGhlIENXRCB0byB0aGUgbG9jYXRpb24gb2YgdGhpcyBzY3JpcHQKK1sgLW4gIiR7MCUv
Kn0iIF0gJiYgY2QgIiR7MCUvKn0iCisKK2lmIHRlc3QgLXogYHdoaWNoIHhtbDJyZmMgMj4gL2Rl
di9udWxsYDsgdGhlbgorICBlY2hvICJFcnJvcjogY291bGRuJ3QgZmluZCB4bWwycmZjLiIKKyAg
ZWNobworICBlY2hvICJQbGVhc2UgaW5zdGFsbCB4bWwycmZjIHZlcnNpb24gMiBvciBsYXRlci4i
CisgIGVjaG8gIkUuZy4gJ3BpcCBpbnN0YWxsIHhtbDJyZmMnIG9yIGZvbGxvdyB0aGUgaW5zdHJ1
Y3Rpb25zIgorICBlY2hvICJvbiBodHRwOi8vcHlwaS5weXRob24ub3JnL3B5cGkveG1sMnJmYy8g
b3IgdG9vbHMuaWV0Zi5vcmcuIgorICBleGl0IDEKK2ZpCisKK2VjaG8gcnVubmluZyB4bWwycmZj
CisjIHZlcnNpb24gMiBzeW50YXgKK3htbDJyZmMgZHJhZnQtaWV0Zi1jb2RlYy1vZ2dvcHVzLnht
bCAtLXRleHQgLS1odG1sCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9kcmFmdC1pZXRmLWNvZGVjLW9nZ29wdXMu
eG1sIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1vZ2dvcHVzLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMjg4MTZl
OTM1ZTg1OWM2MzAzNWNkOTVmZjA0YTc1ZGQ1ZjVlZTE4Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2Mv
ZHJhZnQtaWV0Zi1jb2RlYy1vZ2dvcHVzLnhtbApAQCAtMCwwICsxLDE4NzMgQEAKKzw/eG1sIHZl
cnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04Ij8+Cis8IS0tCisgICBDb3B5cmlnaHQgKGMpIDIw
MTItMjAxNiBYaXBoLk9yZyBGb3VuZGF0aW9uIGFuZCBjb250cmlidXRvcnMKKworICAgUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKwor
ICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVAorICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05F
UgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCisgICBT
cGVjaWFsIHBlcm1pc3Npb24gaXMgZ3JhbnRlZCB0byByZW1vdmUgdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIGxpc3Qgb2YKKyAgIGNvbmRpdGlvbnMsIGFuZCBkaXNjbGFpbWVyIHdoZW4gc3Vi
bWl0dGluZyB0aGlzIGRvY3VtZW50LCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwg
dG8gdGhlIElFVEYuCistLT4KKzwhRE9DVFlQRSByZmMgU1lTVEVNICdyZmMyNjI5LmR0ZCcgWwor
PCFFTlRJVFkgcmZjMjExOSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1Ymxp
Yy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMjExOS54bWwnPgorPCFFTlRJVFkgcmZjMzUzMyBQ
VUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVy
ZW5jZS5SRkMuMzUzMy54bWwnPgorPCFFTlRJVFkgcmZjMzYyOSBQVUJMSUMgJycgJ2h0dHA6Ly94
bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzYyOS54bWwn
PgorPCFFTlRJVFkgcmZjNDczMiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1
YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNDczMi54bWwnPgorPCFFTlRJVFkgcmZjNTIy
NiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3Jl
ZmVyZW5jZS5SRkMuNTIyNi54bWwnPgorPCFFTlRJVFkgcmZjNTMzNCBQVUJMSUMgJycgJ2h0dHA6
Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNTMzNC54
bWwnPgorPCFFTlRJVFkgcmZjNjM4MSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3Jn
L3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNjM4MS54bWwnPgorPCFFTlRJVFkgcmZj
NjcxNiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1s
L3JlZmVyZW5jZS5SRkMuNjcxNi54bWwnPgorPCFFTlRJVFkgcmZjNjk4MiBQVUJMSUMgJycgJ2h0
dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNjk4
Mi54bWwnPgorPCFFTlRJVFkgcmZjNzU4NyBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uu
b3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNzU4Ny54bWwnPgorXT4KKzw/cmZj
IHRvYz0ieWVzIiBzeW1yZWZzPSJ5ZXMiID8+CisKKzxyZmMgaXByPSJ0cnVzdDIwMDkwMiIgY2F0
ZWdvcnk9InN0ZCIgZG9jTmFtZT0iZHJhZnQtaWV0Zi1jb2RlYy1vZ2dvcHVzLTE0IgorIHVwZGF0
ZXM9IjUzMzQiPgorCis8ZnJvbnQ+Cis8dGl0bGUgYWJicmV2PSJPZ2cgT3B1cyI+T2dnIEVuY2Fw
c3VsYXRpb24gZm9yIHRoZSBPcHVzIEF1ZGlvIENvZGVjPC90aXRsZT4KKzxhdXRob3IgaW5pdGlh
bHM9IlQuQi4iIHN1cm5hbWU9IlRlcnJpYmVycnkiIGZ1bGxuYW1lPSJUaW1vdGh5IEIuIFRlcnJp
YmVycnkiPgorPG9yZ2FuaXphdGlvbj5Nb3ppbGxhIENvcnBvcmF0aW9uPC9vcmdhbml6YXRpb24+
Cis8YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3RyZWV0PjY1MCBDYXN0cm8gU3RyZWV0PC9zdHJlZXQ+
Cis8Y2l0eT5Nb3VudGFpbiBWaWV3PC9jaXR5PgorPHJlZ2lvbj5DQTwvcmVnaW9uPgorPGNvZGU+
OTQwNDE8L2NvZGU+Cis8Y291bnRyeT5VU0E8L2NvdW50cnk+Cis8L3Bvc3RhbD4KKzxwaG9uZT4r
MSA2NTAgOTAzLTA4MDA8L3Bob25lPgorPGVtYWlsPnR0ZXJyaWJlQHhpcGgub3JnPC9lbWFpbD4K
KzwvYWRkcmVzcz4KKzwvYXV0aG9yPgorCis8YXV0aG9yIGluaXRpYWxzPSJSLiIgc3VybmFtZT0i
TGVlIiBmdWxsbmFtZT0iUm9uIExlZSI+Cis8b3JnYW5pemF0aW9uPlZvaWNldHJvbml4PC9vcmdh
bml6YXRpb24+Cis8YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3RyZWV0PjI0NiBQdWx0ZW5leSBTdHJl
ZXQsIExldmVsIDE8L3N0cmVldD4KKzxjaXR5PkFkZWxhaWRlPC9jaXR5PgorPHJlZ2lvbj5TQTwv
cmVnaW9uPgorPGNvZGU+NTAwMDwvY29kZT4KKzxjb3VudHJ5PkF1c3RyYWxpYTwvY291bnRyeT4K
KzwvcG9zdGFsPgorPHBob25lPis2MSA4IDgyMzIgOTExMjwvcGhvbmU+Cis8ZW1haWw+cm9uQGRl
Ymlhbi5vcmc8L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisKKzxhdXRob3IgaW5pdGlh
bHM9IlIuIiBzdXJuYW1lPSJHaWxlcyIgZnVsbG5hbWU9IlJhbHBoIEdpbGVzIj4KKzxvcmdhbml6
YXRpb24+TW96aWxsYSBDb3Jwb3JhdGlvbjwvb3JnYW5pemF0aW9uPgorPGFkZHJlc3M+Cis8cG9z
dGFsPgorPHN0cmVldD4xNjMgV2VzdCBIYXN0aW5ncyBTdHJlZXQ8L3N0cmVldD4KKzxjaXR5PlZh
bmNvdXZlcjwvY2l0eT4KKzxyZWdpb24+QkM8L3JlZ2lvbj4KKzxjb2RlPlY2QiAxSDU8L2NvZGU+
Cis8Y291bnRyeT5DYW5hZGE8L2NvdW50cnk+Cis8L3Bvc3RhbD4KKzxwaG9uZT4rMSA3NzggNzg1
IDE1NDA8L3Bob25lPgorPGVtYWlsPmdpbGVzQHhpcGgub3JnPC9lbWFpbD4KKzwvYWRkcmVzcz4K
KzwvYXV0aG9yPgorCis8ZGF0ZSBkYXk9IjIyIiBtb250aD0iRmVicnVhcnkiIHllYXI9IjIwMTYi
Lz4KKzxhcmVhPlJBSTwvYXJlYT4KKzx3b3JrZ3JvdXA+Y29kZWM8L3dvcmtncm91cD4KKworPGFi
c3RyYWN0PgorPHQ+CitUaGlzIGRvY3VtZW50IGRlZmluZXMgdGhlIE9nZyBlbmNhcHN1bGF0aW9u
IGZvciB0aGUgT3B1cyBpbnRlcmFjdGl2ZSBzcGVlY2ggYW5kCisgYXVkaW8gY29kZWMuCitUaGlz
IGFsbG93cyBkYXRhIGVuY29kZWQgaW4gdGhlIE9wdXMgZm9ybWF0IHRvIGJlIHN0b3JlZCBpbiBh
biBPZ2cgbG9naWNhbAorIGJpdHN0cmVhbS4KKzwvdD4KKzwvYWJzdHJhY3Q+Cis8L2Zyb250Pgor
Cis8bWlkZGxlPgorPHNlY3Rpb24gYW5jaG9yPSJpbnRybyIgdGl0bGU9IkludHJvZHVjdGlvbiI+
Cis8dD4KK1RoZSBJRVRGIE9wdXMgY29kZWMgaXMgYSBsb3ctbGF0ZW5jeSBhdWRpbyBjb2RlYyBv
cHRpbWl6ZWQgZm9yIGJvdGggdm9pY2UgYW5kCisgZ2VuZXJhbC1wdXJwb3NlIGF1ZGlvLgorU2Vl
IDx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPiBmb3IgdGVjaG5pY2FsIGRldGFpbHMuCitUaGlzIGRv
Y3VtZW50IGRlZmluZXMgdGhlIGVuY2Fwc3VsYXRpb24gb2YgT3B1cyBpbiBhIGNvbnRpbnVvdXMs
IGxvZ2ljYWwgT2dnCisgYml0c3RyZWFtJm5ic3A7PHhyZWYgdGFyZ2V0PSJSRkMzNTMzIi8+Lgor
T2dnIGVuY2Fwc3VsYXRpb24gcHJvdmlkZXMgT3B1cyB3aXRoIGEgbG9uZy10ZXJtIHN0b3JhZ2Ug
Zm9ybWF0IHN1cHBvcnRpbmcKKyBhbGwgb2YgdGhlIGVzc2VudGlhbCBmZWF0dXJlcywgaW5jbHVk
aW5nIG1ldGFkYXRhLCBmYXN0IGFuZCBhY2N1cmF0ZSBzZWVraW5nLAorIGNvcnJ1cHRpb24gZGV0
ZWN0aW9uLCByZWNhcHR1cmUgYWZ0ZXIgZXJyb3JzLCBsb3cgb3ZlcmhlYWQsIGFuZCB0aGUgYWJp
bGl0eSB0bworIG11bHRpcGxleCBPcHVzIHdpdGggb3RoZXIgY29kZWNzIChpbmNsdWRpbmcgdmlk
ZW8pIHdpdGggbWluaW1hbCBidWZmZXJpbmcuCitJdCBhbHNvIHByb3ZpZGVzIGEgbGl2ZSBzdHJl
YW1hYmxlIGZvcm1hdCwgY2FwYWJsZSBvZiBkZWxpdmVyeSBvdmVyIGEgcmVsaWFibGUKKyBzdHJl
YW0tb3JpZW50ZWQgdHJhbnNwb3J0LCB3aXRob3V0IHJlcXVpcmluZyBhbGwgdGhlIGRhdGEsIG9y
IGV2ZW4gdGhlIHRvdGFsCisgbGVuZ3RoIG9mIHRoZSBkYXRhLCB1cC1mcm9udCwgaW4gYSBmb3Jt
IHRoYXQgaXMgaWRlbnRpY2FsIHRvIHRoZSBvbi1kaXNrCisgc3RvcmFnZSBmb3JtYXQuCis8L3Q+
Cis8dD4KK09nZyBiaXRzdHJlYW1zIGFyZSBtYWRlIHVwIG9mIGEgc2VyaWVzIG9mICdwYWdlcycs
IGVhY2ggb2Ygd2hpY2ggY29udGFpbnMgZGF0YQorIGZyb20gb25lIG9yIG1vcmUgJ3BhY2tldHMn
LgorUGFnZXMgYXJlIHRoZSBmdW5kYW1lbnRhbCB1bml0IG9mIG11bHRpcGxleGluZyBpbiBhbiBP
Z2cgc3RyZWFtLgorRWFjaCBwYWdlIGlzIGFzc29jaWF0ZWQgd2l0aCBhIHBhcnRpY3VsYXIgbG9n
aWNhbCBzdHJlYW0gYW5kIGNvbnRhaW5zIGEgY2FwdHVyZQorIHBhdHRlcm4gYW5kIGNoZWNrc3Vt
LCBmbGFncyB0byBtYXJrIHRoZSBiZWdpbm5pbmcgYW5kIGVuZCBvZiB0aGUgbG9naWNhbAorIHN0
cmVhbSwgYW5kIGEgJ2dyYW51bGUgcG9zaXRpb24nIHRoYXQgcmVwcmVzZW50cyBhbiBhYnNvbHV0
ZSBwb3NpdGlvbiBpbiB0aGUKKyBzdHJlYW0sIHRvIGFpZCBzZWVraW5nLgorQSBzaW5nbGUgcGFn
ZSBjYW4gY29udGFpbiB1cCB0byA2NSwwMjUgb2N0ZXRzIG9mIHBhY2tldCBkYXRhIGZyb20gdXAg
dG8gMjU1CisgZGlmZmVyZW50IHBhY2tldHMuCitQYWNrZXRzIGNhbiBiZSBzcGxpdCBhcmJpdHJh
cmlseSBhY3Jvc3MgcGFnZXMsIGFuZCBjb250aW51ZWQgZnJvbSBvbmUgcGFnZSB0bworIHRoZSBu
ZXh0IChhbGxvd2luZyBwYWNrZXRzIG11Y2ggbGFyZ2VyIHRoYW4gd291bGQgZml0IG9uIGEgc2lu
Z2xlIHBhZ2UpLgorRWFjaCBwYWdlIGNvbnRhaW5zICdsYWNpbmcgdmFsdWVzJyB0aGF0IGluZGlj
YXRlIGhvdyB0aGUgZGF0YSBpcyBwYXJ0aXRpb25lZAorIGludG8gcGFja2V0cywgYWxsb3dpbmcg
YSBkZW11bHRpcGxleGVyIChkZW11eGVyKSB0byByZWNvdmVyIHRoZSBwYWNrZXQKKyBib3VuZGFy
aWVzIHdpdGhvdXQgZXhhbWluaW5nIHRoZSBlbmNvZGVkIGRhdGEuCitBIHBhY2tldCBpcyBzYWlk
IHRvICdjb21wbGV0ZScgb24gYSBwYWdlIHdoZW4gdGhlIHBhZ2UgY29udGFpbnMgdGhlIGZpbmFs
CisgbGFjaW5nIHZhbHVlIGNvcnJlc3BvbmRpbmcgdG8gdGhhdCBwYWNrZXQuCis8L3Q+Cis8dD4K
K1RoaXMgZW5jYXBzdWxhdGlvbiBkZWZpbmVzIHRoZSBjb250ZW50cyBvZiB0aGUgcGFja2V0IGRh
dGEsIGluY2x1ZGluZworIHRoZSBuZWNlc3NhcnkgaGVhZGVycywgdGhlIG9yZ2FuaXphdGlvbiBv
ZiB0aG9zZSBwYWNrZXRzIGludG8gYSBsb2dpY2FsCisgc3RyZWFtLCBhbmQgdGhlIGludGVycHJl
dGF0aW9uIG9mIHRoZSBjb2RlYy1zcGVjaWZpYyBncmFudWxlIHBvc2l0aW9uIGZpZWxkLgorSXQg
ZG9lcyBub3QgYXR0ZW1wdCB0byBkZXNjcmliZSBvciBzcGVjaWZ5IHRoZSBleGlzdGluZyBPZ2cg
Y29udGFpbmVyIGZvcm1hdC4KK1JlYWRlcnMgdW5mYW1pbGlhciB3aXRoIHRoZSBiYXNpYyBjb25j
ZXB0cyBtZW50aW9uZWQgYWJvdmUgYXJlIGVuY291cmFnZWQgdG8KKyByZXZpZXcgdGhlIGRldGFp
bHMgaW4gPHhyZWYgdGFyZ2V0PSJSRkMzNTMzIi8+LgorPC90PgorCis8L3NlY3Rpb24+CisKKzxz
ZWN0aW9uIGFuY2hvcj0idGVybWlub2xvZ3kiIHRpdGxlPSJUZXJtaW5vbG9neSI+Cis8dD4KK1Ro
ZSBrZXkgd29yZHMgIk1VU1QiLCAiTVVTVCBOT1QiLCAiUkVRVUlSRUQiLCAiU0hBTEwiLCAiU0hB
TEwgTk9UIiwgIlNIT1VMRCIsCisgIlNIT1VMRCBOT1QiLCAiUkVDT01NRU5ERUQiLCAiTk9UIFJF
Q09NTUVOREVEIiwgIk1BWSIsIGFuZCAiT1BUSU9OQUwiIGluIHRoaXMKKyBkb2N1bWVudCBhcmUg
dG8gYmUgaW50ZXJwcmV0ZWQgYXMgZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0iUkZDMjExOSIv
Pi4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InBhY2tldF9vcmdhbml6
YXRpb24iIHRpdGxlPSJQYWNrZXQgT3JnYW5pemF0aW9uIj4KKzx0PgorQW4gT2dnIE9wdXMgc3Ry
ZWFtIGlzIG9yZ2FuaXplZCBhcyBmb2xsb3dzIChzZWUKKyA8eHJlZiB0YXJnZXQ9InBhY2tldC1v
cmctZXhhbXBsZSIvPiBmb3IgYW4gZXhhbXBsZSkuCis8L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSJw
YWNrZXQtb3JnLWV4YW1wbGUiCisgdGl0bGU9IkV4YW1wbGUgcGFja2V0IG9yZ2FuaXphdGlvbiBm
b3IgYSBsb2dpY2FsIE9nZyBPcHVzIHN0cmVhbSIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3Jr
IGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgIFBhZ2UgMCAgICAgICAgIFBhZ2VzIDEgLi4u
IG4gICAgICAgIFBhZ2VzIChuKzEpIC4uLgorICstLS0tLS0tLS0tLS0rICstLS0rICstLS0rIC4u
LiArLS0tKyArLS0tLS0tLS0tLS0rICstLS0tLS0tLS0rICstLQorIHwgICAgICAgICAgICB8IHwg
ICB8IHwgICB8ICAgICB8ICAgfCB8ICAgICAgICAgICB8IHwgICAgICAgICB8IHwKKyB8Ky0tLS0t
LS0tLS0rfCB8Ky0tLS0tLS0tLS0tLS0tLS0tK3wgfCstLS0tLS0tLS0tLS0tLS0tLS0tKyArLS0t
LS0KKyB8fHxJRCBIZWFkZXJ8fCB8fCAgQ29tbWVudCBIZWFkZXIgfHwgfHxBdWRpbyBEYXRhIFBh
Y2tldCAxfCB8IC4uLgorIHwrLS0tLS0tLS0tLSt8IHwrLS0tLS0tLS0tLS0tLS0tLS0rfCB8Ky0t
LS0tLS0tLS0tLS0tLS0tLS0rICstLS0tLQorIHwgICAgICAgICAgICB8IHwgICB8IHwgICB8ICAg
ICB8ICAgfCB8ICAgICAgICAgICB8IHwgICAgICAgICB8IHwKKyArLS0tLS0tLS0tLS0tKyArLS0t
KyArLS0tKyAuLi4gKy0tLSsgKy0tLS0tLS0tLS0tKyArLS0tLS0tLS0tKyArLS0KKyBeICAgICAg
XiAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KKyB8ICAgICAgfCAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwKKyB8ICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIE1hbmRhdG9y
eSBQYWdlIEJyZWFrCisgfCAgICAgIHwKKyB8ICAgICAgSUQgaGVhZGVyIGlzIGNvbnRhaW5lZCBv
biBhIHNpbmdsZSBwYWdlCisgfAorICdCZWdpbm5pbmcgT2YgU3RyZWFtJworXV0+PC9hcnR3b3Jr
PgorPC9maWd1cmU+CisKKzx0PgorVGhlcmUgYXJlIHR3byBtYW5kYXRvcnkgaGVhZGVyIHBhY2tl
dHMuCitUaGUgZmlyc3QgcGFja2V0IGluIHRoZSBsb2dpY2FsIE9nZyBiaXRzdHJlYW0gTVVTVCBj
b250YWluIHRoZSBpZGVudGlmaWNhdGlvbgorIChJRCkgaGVhZGVyLCB3aGljaCB1bmlxdWVseSBp
ZGVudGlmaWVzIGEgc3RyZWFtIGFzIE9wdXMgYXVkaW8uCitUaGUgZm9ybWF0IG9mIHRoaXMgaGVh
ZGVyIGlzIGRlZmluZWQgaW4gPHhyZWYgdGFyZ2V0PSJpZF9oZWFkZXIiLz4uCitJdCBpcyBwbGFj
ZWQgYWxvbmUgKHdpdGhvdXQgYW55IG90aGVyIHBhY2tldCBkYXRhKSBvbiB0aGUgZmlyc3QgcGFn
ZSBvZgorIHRoZSBsb2dpY2FsIE9nZyBiaXRzdHJlYW0sIGFuZCBjb21wbGV0ZXMgb24gdGhhdCBw
YWdlLgorVGhpcyBwYWdlIGhhcyBpdHMgJ2JlZ2lubmluZyBvZiBzdHJlYW0nIGZsYWcgc2V0Lgor
PC90PgorPHQ+CitUaGUgc2Vjb25kIHBhY2tldCBpbiB0aGUgbG9naWNhbCBPZ2cgYml0c3RyZWFt
IE1VU1QgY29udGFpbiB0aGUgY29tbWVudCBoZWFkZXIsCisgd2hpY2ggY29udGFpbnMgdXNlci1z
dXBwbGllZCBtZXRhZGF0YS4KK1RoZSBmb3JtYXQgb2YgdGhpcyBoZWFkZXIgaXMgZGVmaW5lZCBp
biA8eHJlZiB0YXJnZXQ9ImNvbW1lbnRfaGVhZGVyIi8+LgorSXQgTUFZIHNwYW4gbXVsdGlwbGUg
cGFnZXMsIGJlZ2lubmluZyBvbiB0aGUgc2Vjb25kIHBhZ2Ugb2YgdGhlIGxvZ2ljYWwKKyBzdHJl
YW0uCitIb3dldmVyIG1hbnkgcGFnZXMgaXQgc3BhbnMsIHRoZSBjb21tZW50IGhlYWRlciBwYWNr
ZXQgTVVTVCBmaW5pc2ggdGhlIHBhZ2Ugb24KKyB3aGljaCBpdCBjb21wbGV0ZXMuCis8L3Q+Cis8
dD4KK0FsbCBzdWJzZXF1ZW50IHBhZ2VzIGFyZSBhdWRpbyBkYXRhIHBhZ2VzLCBhbmQgdGhlIE9n
ZyBwYWNrZXRzIHRoZXkgY29udGFpbiBhcmUKKyBhdWRpbyBkYXRhIHBhY2tldHMuCitFYWNoIGF1
ZGlvIGRhdGEgcGFja2V0IGNvbnRhaW5zIG9uZSBPcHVzIHBhY2tldCBmb3IgZWFjaCBvZiBOIGRp
ZmZlcmVudAorIHN0cmVhbXMsIHdoZXJlIE4gaXMgdHlwaWNhbGx5IG9uZSBmb3IgbW9ubyBvciBz
dGVyZW8sIGJ1dCBNQVkgYmUgZ3JlYXRlciB0aGFuCisgb25lIGZvciBtdWx0aWNoYW5uZWwgYXVk
aW8uCitUaGUgdmFsdWUgTiBpcyBzcGVjaWZpZWQgaW4gdGhlIElEIGhlYWRlciAoc2VlCisgPHhy
ZWYgdGFyZ2V0PSJjaGFubmVsX21hcHBpbmciLz4pLCBhbmQgaXMgZml4ZWQgb3ZlciB0aGUgZW50
aXJlIGxlbmd0aCBvZiB0aGUKKyBsb2dpY2FsIE9nZyBiaXRzdHJlYW0uCis8L3Q+Cis8dD4KK1Ro
ZSBmaXJzdCAoTiZuYnNwOy0mbmJzcDsxKSBPcHVzIHBhY2tldHMsIGlmIGFueSwgYXJlIHBhY2tl
ZCBvbmUgYWZ0ZXIgYW5vdGhlcgorIGludG8gdGhlIE9nZyBwYWNrZXQsIHVzaW5nIHRoZSBzZWxm
LWRlbGltaXRpbmcgZnJhbWluZyBmcm9tIEFwcGVuZGl4Jm5ic3A7QiBvZgorIDx4cmVmIHRhcmdl
dD0iUkZDNjcxNiIvPi4KK1RoZSByZW1haW5pbmcgT3B1cyBwYWNrZXQgaXMgcGFja2VkIGF0IHRo
ZSBlbmQgb2YgdGhlIE9nZyBwYWNrZXQgdXNpbmcgdGhlCisgcmVndWxhciwgdW5kZWxpbWl0ZWQg
ZnJhbWluZyBmcm9tIFNlY3Rpb24mbmJzcDszIG9mIDx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPi4K
K0FsbCBvZiB0aGUgT3B1cyBwYWNrZXRzIGluIGEgc2luZ2xlIE9nZyBwYWNrZXQgTVVTVCBiZSBj
b25zdHJhaW5lZCB0byBoYXZlIHRoZQorIHNhbWUgZHVyYXRpb24uCitBbiBpbXBsZW1lbnRhdGlv
biBvZiB0aGlzIHNwZWNpZmljYXRpb24gU0hPVUxEIHRyZWF0IGFueSBPcHVzIHBhY2tldCB3aG9z
ZQorIGR1cmF0aW9uIGlzIGRpZmZlcmVudCBmcm9tIHRoYXQgb2YgdGhlIGZpcnN0IE9wdXMgcGFj
a2V0IGluIGFuIE9nZyBwYWNrZXQgYXMKKyBpZiBpdCB3ZXJlIGEgbWFsZm9ybWVkIE9wdXMgcGFj
a2V0IHdpdGggYW4gaW52YWxpZCBUYWJsZSBPZiBDb250ZW50cyAoVE9DKQorIHNlcXVlbmNlLgor
PC90PgorPHQ+CitUaGUgVE9DIHNlcXVlbmNlIGF0IHRoZSBiZWdpbm5pbmcgb2YgZWFjaCBPcHVz
IHBhY2tldCBpbmRpY2F0ZXMgdGhlIGNvZGluZworIG1vZGUsIGF1ZGlvIGJhbmR3aWR0aCwgY2hh
bm5lbCBjb3VudCwgZHVyYXRpb24gKGZyYW1lIHNpemUpLCBhbmQgbnVtYmVyIG9mCisgZnJhbWVz
IHBlciBwYWNrZXQsIGFzIGRlc2NyaWJlZCBpbiBTZWN0aW9uJm5ic3A7My4xCisgb2YmbmJzcDs8
eHJlZiB0YXJnZXQ9IlJGQzY3MTYiLz4uCitUaGUgY29kaW5nIG1vZGUgaXMgb25lIG9mIFNJTEss
IEh5YnJpZCwgb3IgQ29uc3RyYWluZWQgRW5lcmd5IExhcHBlZCBUcmFuc2Zvcm0KKyAoQ0VMVCku
CitUaGUgY29tYmluYXRpb24gb2YgY29kaW5nIG1vZGUsIGF1ZGlvIGJhbmR3aWR0aCwgYW5kIGZy
YW1lIHNpemUgaXMgcmVmZXJyZWQgdG8KKyBhcyB0aGUgY29uZmlndXJhdGlvbiBvZiBhbiBPcHVz
IHBhY2tldC4KKzwvdD4KKzx0PgorUGFja2V0cyBhcmUgcGxhY2VkIGludG8gT2dnIHBhZ2VzIGlu
IG9yZGVyIHVudGlsIHRoZSBlbmQgb2Ygc3RyZWFtLgorQXVkaW8gZGF0YSBwYWNrZXRzIG1pZ2h0
IHNwYW4gcGFnZSBib3VuZGFyaWVzLgorVGhlIGZpcnN0IGF1ZGlvIGRhdGEgcGFnZSBjb3VsZCBo
YXZlIHRoZSAnY29udGludWVkIHBhY2tldCcgZmxhZyBzZXQKKyAoaW5kaWNhdGluZyB0aGUgZmly
c3QgYXVkaW8gZGF0YSBwYWNrZXQgaXMgY29udGludWVkIGZyb20gYSBwcmV2aW91cyBwYWdlKSBp
ZiwKKyBmb3IgZXhhbXBsZSwgaXQgd2FzIGEgbGl2ZSBzdHJlYW0gam9pbmVkIG1pZC1icm9hZGNh
c3QsIHdpdGggdGhlIGhlYWRlcnMKKyBwYXN0ZWQgb24gdGhlIGZyb250LgorSWYgYSBwYWdlIGhh
cyB0aGUgJ2NvbnRpbnVlZCBwYWNrZXQnIGZsYWcgc2V0IGFuZCBvbmUgb2YgdGhlIGZvbGxvd2lu
ZworIGNvbmRpdGlvbnMgaXMgYWxzbyB0cnVlOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+
dGhlIHByZXZpb3VzIHBhZ2Ugd2l0aCBwYWNrZXQgZGF0YSBkb2VzIG5vdCBlbmQgaW4gYSBjb250
aW51ZWQgcGFja2V0IChkb2VzCisgbm90IGVuZCB3aXRoIGEgbGFjaW5nIHZhbHVlIG9mIDI1NSkg
T1I8L3Q+Cis8dD50aGUgcGFnZSBzZXF1ZW5jZSBudW1iZXJzIGFyZSBub3QgY29uc2VjdXRpdmUs
PC90PgorPC9saXN0PgorIHRoZW4gYSBkZW11eGVyIE1VU1QgTk9UIGF0dGVtcHQgdG8gZGVjb2Rl
IHRoZSBkYXRhIGZvciB0aGUgZmlyc3QgcGFja2V0IG9uIHRoZQorIHBhZ2UgdW5sZXNzIHRoZSBk
ZW11eGVyIGhhcyBzb21lIHNwZWNpYWwga25vd2xlZGdlIHRoYXQgd291bGQgYWxsb3cgaXQgdG8K
KyBpbnRlcnByZXQgdGhpcyBkYXRhIGRlc3BpdGUgdGhlIG1pc3NpbmcgcGllY2VzLgorQW4gaW1w
bGVtZW50YXRpb24gTVVTVCB0cmVhdCBhIHplcm8tb2N0ZXQgYXVkaW8gZGF0YSBwYWNrZXQgYXMg
aWYgaXQgd2VyZSBhCisgbWFsZm9ybWVkIE9wdXMgcGFja2V0IGFzIGRlc2NyaWJlZCBpbgorIFNl
Y3Rpb24mbmJzcDszLjQgb2YmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzY3MTYiLz4uCis8L3Q+Cis8
dD4KK0EgbG9naWNhbCBzdHJlYW0gZW5kcyB3aXRoIGEgcGFnZSB3aXRoIHRoZSAnZW5kIG9mIHN0
cmVhbScgZmxhZyBzZXQsIGJ1dAorIGltcGxlbWVudGF0aW9ucyBuZWVkIHRvIGJlIHByZXBhcmVk
IHRvIGRlYWwgd2l0aCB0cnVuY2F0ZWQgc3RyZWFtcyB0aGF0IGRvIG5vdAorIGhhdmUgYSBwYWdl
IG1hcmtlZCAnZW5kIG9mIHN0cmVhbScuCitUaGVyZSBpcyBubyByZWFzb24gZm9yIHRoZSBmaW5h
bCBwYWNrZXQgb24gdGhlIGxhc3QgcGFnZSB0byBiZSBhIGNvbnRpbnVlZAorIHBhY2tldCwgaS5l
LiwgZm9yIHRoZSBmaW5hbCBsYWNpbmcgdmFsdWUgdG8gYmUgMjU1LgorSG93ZXZlciwgZGVtdXhl
cnMgbWlnaHQgZW5jb3VudGVyIHN1Y2ggc3RyZWFtcywgcG9zc2libHkgYXMgdGhlIHJlc3VsdCBv
ZiBhCisgdHJhbnNmZXIgdGhhdCBkaWQgbm90IGNvbXBsZXRlIG9yIG9mIGNvcnJ1cHRpb24uCitJ
ZiBhIHBhY2tldCBjb250aW51ZXMgb250byBhIHN1YnNlcXVlbnQgcGFnZSAoaS5lLiwgd2hlbiB0
aGUgcGFnZSBlbmRzIHdpdGggYQorIGxhY2luZyB2YWx1ZSBvZiAyNTUpIGFuZCBvbmUgb2YgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zIGlzIGFsc28gdHJ1ZToKKzxsaXN0IHN0eWxlPSJzeW1ib2xz
Ij4KKzx0PnRoZSBuZXh0IHBhZ2Ugd2l0aCBwYWNrZXQgZGF0YSBkb2VzIG5vdCBoYXZlIHRoZSAn
Y29udGludWVkIHBhY2tldCcgZmxhZworIHNldCBPUjwvdD4KKzx0PnRoZXJlIGlzIG5vIG5leHQg
cGFnZSB3aXRoIHBhY2tldCBkYXRhIE9SPC90PgorPHQ+dGhlIHBhZ2Ugc2VxdWVuY2UgbnVtYmVy
cyBhcmUgbm90IGNvbnNlY3V0aXZlLDwvdD4KKzwvbGlzdD4KKyB0aGVuIGEgZGVtdXhlciBNVVNU
IE5PVCBhdHRlbXB0IHRvIGRlY29kZSB0aGUgZGF0YSBmcm9tIHRoYXQgcGFja2V0IHVubGVzcyB0
aGUKKyBkZW11eGVyIGhhcyBzb21lIHNwZWNpYWwga25vd2xlZGdlIHRoYXQgd291bGQgYWxsb3cg
aXQgdG8gaW50ZXJwcmV0IHRoaXMgZGF0YQorIGRlc3BpdGUgdGhlIG1pc3NpbmcgcGllY2VzLgor
VGhlcmUgTVVTVCBOT1QgYmUgYW55IG1vcmUgcGFnZXMgaW4gYW4gT3B1cyBsb2dpY2FsIGJpdHN0
cmVhbSBhZnRlciBhIHBhZ2UKKyBtYXJrZWQgJ2VuZCBvZiBzdHJlYW0nLgorPC90PgorPC9zZWN0
aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImdyYW5wb3MiIHRpdGxlPSJHcmFudWxlIFBvc2l0aW9u
Ij4KKzx0PgorVGhlIGdyYW51bGUgcG9zaXRpb24gTVVTVCBiZSB6ZXJvIGZvciB0aGUgSUQgaGVh
ZGVyIHBhZ2UgYW5kIHRoZQorIHBhZ2Ugd2hlcmUgdGhlIGNvbW1lbnQgaGVhZGVyIGNvbXBsZXRl
cy4KK1RoYXQgaXMsIHRoZSBmaXJzdCBwYWdlIGluIHRoZSBsb2dpY2FsIHN0cmVhbSwgYW5kIHRo
ZSBsYXN0IGhlYWRlcgorIHBhZ2UgYmVmb3JlIHRoZSBmaXJzdCBhdWRpbyBkYXRhIHBhZ2UgYm90
aCBoYXZlIGEgZ3JhbnVsZSBwb3NpdGlvbiBvZiB6ZXJvLgorPC90PgorPHQ+CitUaGUgZ3JhbnVs
ZSBwb3NpdGlvbiBvZiBhbiBhdWRpbyBkYXRhIHBhZ2UgZW5jb2RlcyB0aGUgdG90YWwgbnVtYmVy
IG9mIFBDTQorIHNhbXBsZXMgaW4gdGhlIHN0cmVhbSB1cCB0byBhbmQgaW5jbHVkaW5nIHRoZSBs
YXN0IGZ1bGx5LWRlY29kYWJsZSBzYW1wbGUgZnJvbQorIHRoZSBsYXN0IHBhY2tldCBjb21wbGV0
ZWQgb24gdGhhdCBwYWdlLgorVGhlIGdyYW51bGUgcG9zaXRpb24gb2YgdGhlIGZpcnN0IGF1ZGlv
IGRhdGEgcGFnZSB3aWxsIHVzdWFsbHkgYmUgbGFyZ2VyIHRoYW4KKyB6ZXJvLCBhcyBkZXNjcmli
ZWQgaW4gPHhyZWYgdGFyZ2V0PSJzdGFydF9ncmFucG9zX3Jlc3RyaWN0aW9ucyIvPi4KKzwvdD4K
KworPHQ+CitBIHBhZ2UgdGhhdCBpcyBlbnRpcmVseSBzcGFubmVkIGJ5IGEgc2luZ2xlIHBhY2tl
dCAodGhhdCBjb21wbGV0ZXMgb24gYQorIHN1YnNlcXVlbnQgcGFnZSkgaGFzIG5vIGdyYW51bGUg
cG9zaXRpb24sIGFuZCB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBmaWVsZCBpcworIHNldCB0byB0aGUg
c3BlY2lhbCB2YWx1ZSAnLTEnIGluIHR3bydzIGNvbXBsZW1lbnQuCis8L3Q+CisKKzx0PgorVGhl
IGdyYW51bGUgcG9zaXRpb24gb2YgYW4gYXVkaW8gZGF0YSBwYWdlIGlzIGluIHVuaXRzIG9mIFBD
TSBhdWRpbyBzYW1wbGVzIGF0CisgYSBmaXhlZCByYXRlIG9mIDQ4Jm5ic3A7a0h6IChwZXIgY2hh
bm5lbDsgYSBzdGVyZW8gc3RyZWFtJ3MgZ3JhbnVsZSBwb3NpdGlvbgorIGRvZXMgbm90IGluY3Jl
bWVudCBhdCB0d2ljZSB0aGUgc3BlZWQgb2YgYSBtb25vIHN0cmVhbSkuCitJdCBpcyBwb3NzaWJs
ZSB0byBydW4gYW4gT3B1cyBkZWNvZGVyIGF0IG90aGVyIHNhbXBsaW5nIHJhdGVzLAorIGJ1dCBh
bGwgT3B1cyBwYWNrZXRzIGVuY29kZSBzYW1wbGVzIGF0IGEgc2FtcGxpbmcgcmF0ZSB0aGF0IGV2
ZW5seSBkaXZpZGVzCisgNDgmbmJzcDtrSHouCitUaGVyZWZvcmUsIHRoZSB2YWx1ZSBpbiB0aGUg
Z3JhbnVsZSBwb3NpdGlvbiBmaWVsZCBhbHdheXMgY291bnRzIHNhbXBsZXMKKyBhc3N1bWluZyBh
IDQ4Jm5ic3A7a0h6IGRlY29kaW5nIHJhdGUsIGFuZCB0aGUgcmVzdCBvZiB0aGlzIHNwZWNpZmlj
YXRpb24gbWFrZXMKKyB0aGUgc2FtZSBhc3N1bXB0aW9uLgorPC90PgorCis8dD4KK1RoZSBkdXJh
dGlvbiBvZiBhbiBPcHVzIHBhY2tldCBhcyBkZWZpbmVkIGluIDx4cmVmIHRhcmdldD0iUkZDNjcx
NiIvPiBjYW4gYmUKKyBhbnkgbXVsdGlwbGUgb2YgMi41Jm5ic3A7bXMsIHVwIHRvIGEgbWF4aW11
bSBvZiAxMjAmbmJzcDttcy4KK1RoaXMgZHVyYXRpb24gaXMgZW5jb2RlZCBpbiB0aGUgVE9DIHNl
cXVlbmNlIGF0IHRoZSBiZWdpbm5pbmcgb2YgZWFjaCBwYWNrZXQuCitUaGUgbnVtYmVyIG9mIHNh
bXBsZXMgcmV0dXJuZWQgYnkgYSBkZWNvZGVyIGNvcnJlc3BvbmRzIHRvIHRoaXMgZHVyYXRpb24K
KyBleGFjdGx5LCBldmVuIGZvciB0aGUgZmlyc3QgZmV3IHBhY2tldHMuCitGb3IgZXhhbXBsZSwg
YSAyMCZuYnNwO21zIHBhY2tldCBmZWQgdG8gYSBkZWNvZGVyIHJ1bm5pbmcgYXQgNDgmbmJzcDtr
SHogd2lsbAorIGFsd2F5cyByZXR1cm4gOTYwJm5ic3A7c2FtcGxlcy4KK0EgZGVtdXhlciBjYW4g
cGFyc2UgdGhlIFRPQyBzZXF1ZW5jZSBhdCB0aGUgYmVnaW5uaW5nIG9mIGVhY2ggT2dnIHBhY2tl
dCB0bworIHdvcmsgYmFja3dhcmRzIG9yIGZvcndhcmRzIGZyb20gYSBwYWNrZXQgd2l0aCBhIGtu
b3duIGdyYW51bGUgcG9zaXRpb24gKGkuZS4sCisgdGhlIGxhc3QgcGFja2V0IGNvbXBsZXRlZCBv
biBzb21lIHBhZ2UpIGluIG9yZGVyIHRvIGFzc2lnbiBncmFudWxlIHBvc2l0aW9ucworIHRvIGV2
ZXJ5IHBhY2tldCwgb3IgZXZlbiBldmVyeSBpbmRpdmlkdWFsIHNhbXBsZS4KK1RoZSBvbmUgZXhj
ZXB0aW9uIGlzIHRoZSBsYXN0IHBhZ2UgaW4gdGhlIHN0cmVhbSwgYXMgZGVzY3JpYmVkIGJlbG93
LgorPC90PgorCis8dD4KK0FsbCBvdGhlciBwYWdlcyB3aXRoIGNvbXBsZXRlZCBwYWNrZXRzIGFm
dGVyIHRoZSBmaXJzdCBNVVNUIGhhdmUgYSBncmFudWxlCisgcG9zaXRpb24gZXF1YWwgdG8gdGhl
IG51bWJlciBvZiBzYW1wbGVzIGNvbnRhaW5lZCBpbiBwYWNrZXRzIHRoYXQgY29tcGxldGUgb24K
KyB0aGF0IHBhZ2UgcGx1cyB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBvZiB0aGUgbW9zdCByZWNlbnQg
cGFnZSB3aXRoIGNvbXBsZXRlZAorIHBhY2tldHMuCitUaGlzIGd1YXJhbnRlZXMgdGhhdCBhIGRl
bXV4ZXIgY2FuIGFzc2lnbiBpbmRpdmlkdWFsIHBhY2tldHMgdGhlIHNhbWUgZ3JhbnVsZQorIHBv
c2l0aW9uIHdoZW4gd29ya2luZyBmb3J3YXJkcyBhcyB3aGVuIHdvcmtpbmcgYmFja3dhcmRzLgor
Rm9yIHRoaXMgdG8gd29yaywgdGhlcmUgY2Fubm90IGJlIGFueSBnYXBzLgorPC90PgorCis8c2Vj
dGlvbiBhbmNob3I9ImdhcC1yZXBhaXIiIHRpdGxlPSJSZXBhaXJpbmcgR2FwcyBpbiBSZWFsLXRp
bWUgU3RyZWFtcyI+Cis8dD4KK0luIG9yZGVyIHRvIHN1cHBvcnQgY2FwdHVyaW5nIGEgcmVhbC10
aW1lIHN0cmVhbSB0aGF0IGhhcyBsb3N0IG9yIG5vdAorIHRyYW5zbWl0dGVkIHBhY2tldHMsIGEg
bXVsdGlwbGV4ZXIgKG11eGVyKSBTSE9VTEQgZW1pdCBwYWNrZXRzIHRoYXQgZXhwbGljaXRseQor
IHJlcXVlc3QgdGhlIHVzZSBvZiBQYWNrZXQgTG9zcyBDb25jZWFsbWVudCAoUExDKSBpbiBwbGFj
ZSBvZiB0aGUgbWlzc2luZworIHBhY2tldHMuCitJbXBsZW1lbnRhdGlvbnMgdGhhdCBmYWlsIHRv
IGRvIHNvIHN0aWxsIE1VU1QgTk9UIGluY3JlbWVudCB0aGUgZ3JhbnVsZQorIHBvc2l0aW9uIGZv
ciBhIHBhZ2UgYnkgYW55dGhpbmcgb3RoZXIgdGhhbiB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgY29u
dGFpbmVkIGluCisgcGFja2V0cyB0aGF0IGFjdHVhbGx5IGNvbXBsZXRlIG9uIHRoYXQgcGFnZS4K
KzwvdD4KKzx0PgorT25seSBnYXBzIHRoYXQgYXJlIGEgbXVsdGlwbGUgb2YgMi41Jm5ic3A7bXMg
YXJlIHJlcGFpcmFibGUsIGFzIHRoZXNlIGFyZSB0aGUKKyBvbmx5IGR1cmF0aW9ucyB0aGF0IGNh
biBiZSBjcmVhdGVkIGJ5IHBhY2tldCBsb3NzIG9yIGRpc2NvbnRpbnVvdXMKKyB0cmFuc21pc3Np
b24uCitNdXhlcnMgbmVlZCBub3QgaGFuZGxlIG90aGVyIGdhcCBzaXplcy4KK0NyZWF0aW5nIHRo
ZSBuZWNlc3NhcnkgcGFja2V0cyBpbnZvbHZlcyBzeW50aGVzaXppbmcgYSBUT0MgYnl0ZSAoZGVm
aW5lZCBpbgorU2VjdGlvbiZuYnNwOzMuMSBvZiZuYnNwOzx4cmVmIHRhcmdldD0iUkZDNjcxNiIv
PikmbWRhc2g7YW5kIHdoYXRldmVyCisgYWRkaXRpb25hbCBpbnRlcm5hbCBmcmFtaW5nIGlzIG5l
ZWRlZCZtZGFzaDt0byBpbmRpY2F0ZSB0aGUgcGFja2V0IGR1cmF0aW9uCisgZm9yIGVhY2ggc3Ry
ZWFtLgorVGhlIGFjdHVhbCBsZW5ndGggb2YgZWFjaCBtaXNzaW5nIE9wdXMgZnJhbWUgaW5zaWRl
IHRoZSBwYWNrZXQgaXMgemVybyBieXRlcywKKyBhcyBkZWZpbmVkIGluIFNlY3Rpb24mbmJzcDsz
LjIuMSBvZiZuYnNwOzx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPi4KKzwvdD4KKworPHQ+CitaZXJv
LWJ5dGUgZnJhbWVzIE1BWSBiZSBwYWNrZWQgaW50byBwYWNrZXRzIHVzaW5nIGFueSBvZiBjb2Rl
cyZuYnNwOzAsIDEsCisgMiwgb3ImbmJzcDszLgorV2hlbiBzdWNjZXNzaXZlIGZyYW1lcyBoYXZl
IHRoZSBzYW1lIGNvbmZpZ3VyYXRpb24sIHRoZSBoaWdoZXIgY29kZSBwYWNraW5ncworIHJlZHVj
ZSBvdmVyaGVhZC4KK0xpa2V3aXNlLCBpZiB0aGUgVE9DIGNvbmZpZ3VyYXRpb24gbWF0Y2hlcywg
dGhlIG11eGVyIE1BWSBmdXJ0aGVyIGNvbWJpbmUgdGhlCisgZW1wdHkgZnJhbWVzIHdpdGggcHJl
dmlvdXMgb3Igc3Vic2VxdWVudCBub24temVyby1sZW5ndGggZnJhbWVzICh1c2luZworIGNvZGUm
bmJzcDsyIG9yIFZCUiBjb2RlJm5ic3A7MykuCis8L3Q+CisKKzx0PgorPHhyZWYgdGFyZ2V0PSJS
RkM2NzE2Ii8+IGRvZXMgbm90IGltcG9zZSBhbnkgcmVxdWlyZW1lbnRzIG9uIHRoZSBQTEMsIGJ1
dCB0aGlzCisgc2VjdGlvbiBvdXRsaW5lcyBjaG9pY2VzIHRoYXQgYXJlIGV4cGVjdGVkIHRvIGhh
dmUgYSBwb3NpdGl2ZSBpbmZsdWVuY2Ugb24KKyBtb3N0IFBMQyBpbXBsZW1lbnRhdGlvbnMsIGlu
Y2x1ZGluZyB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uLgorU3ludGhlc2l6ZWQgVE9DIHNl
cXVlbmNlcyBTSE9VTEQgbWFpbnRhaW4gdGhlIHNhbWUgbW9kZSwgYXVkaW8gYmFuZHdpZHRoLAor
IGNoYW5uZWwgY291bnQsIGFuZCBmcmFtZSBzaXplIGFzIHRoZSBwcmV2aW91cyBwYWNrZXQgKGlm
IGFueSkuCitUaGlzIGlzIHRoZSBzaW1wbGVzdCBhbmQgdXN1YWxseSB0aGUgbW9zdCB3ZWxsLXRl
c3RlZCBjYXNlIGZvciB0aGUgUExDIHRvCisgaGFuZGxlIGFuZCBpdCBjb3ZlcnMgYWxsIGxvc3Nl
cyB0aGF0IGRvIG5vdCBpbmNsdWRlIGEgY29uZmlndXJhdGlvbiBzd2l0Y2gsCisgYXMgZGVmaW5l
ZCBpbiBTZWN0aW9uJm5ic3A7NC41IG9mJm5ic3A7PHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+Lgor
PC90PgorCis8dD4KK1doZW4gYSBwcmV2aW91cyBwYWNrZXQgaXMgYXZhaWxhYmxlLCBrZWVwaW5n
IHRoZSBhdWRpbyBiYW5kd2lkdGggYW5kIGNoYW5uZWwKKyBjb3VudCB0aGUgc2FtZSBhbGxvd3Mg
dGhlIFBMQyB0byBwcm92aWRlIG1heGltdW0gY29udGludWl0eSBpbiB0aGUgY29uY2VhbG1lbnQK
KyBkYXRhIGl0IGdlbmVyYXRlcy4KK0hvd2V2ZXIsIGlmIHRoZSBzaXplIG9mIHRoZSBnYXAgaXMg
bm90IGEgbXVsdGlwbGUgb2YgdGhlIG1vc3QgcmVjZW50IGZyYW1lCisgc2l6ZSwgdGhlbiB0aGUg
ZnJhbWUgc2l6ZSB3aWxsIGhhdmUgdG8gY2hhbmdlIGZvciBhdCBsZWFzdCBzb21lIGZyYW1lcy4K
K1N1Y2ggY2hhbmdlcyBTSE9VTEQgYmUgZGVsYXllZCBhcyBsb25nIGFzIHBvc3NpYmxlIHRvIHNp
bXBsaWZ5CisgdGhpbmdzIGZvciBQTEMgaW1wbGVtZW50YXRpb25zLgorPC90PgorCis8dD4KK0Fz
IGFuIGV4YW1wbGUsIGEgOTUmbmJzcDttcyBnYXAgY291bGQgYmUgZW5jb2RlZCBhcyBuaW5ldGVl
biA1Jm5ic3A7bXMgZnJhbWVzCisgaW4gdHdvIGJ5dGVzIHdpdGggYSBzaW5nbGUgQ0JSIGNvZGUm
bmJzcDszIHBhY2tldC4KK0lmIHRoZSBwcmV2aW91cyBmcmFtZSBzaXplIHdhcyAyMCZuYnNwO21z
LCB1c2luZyBmb3VyIDIwJm5ic3A7bXMgZnJhbWVzCisgZm9sbG93ZWQgYnkgdGhyZWUgNSZuYnNw
O21zIGZyYW1lcyByZXF1aXJlcyA0Jm5ic3A7Ynl0ZXMgKHBsdXMgYW4gZXh0cmEgYnl0ZQorIG9m
IE9nZyBsYWNpbmcgb3ZlcmhlYWQpLCBidXQgYWxsb3dzIHRoZSBQTEMgdG8gdXNlIGl0cyB3ZWxs
LXRlc3RlZCBzdGVhZHkKKyBzdGF0ZSBiZWhhdmlvciBmb3IgYXMgbG9uZyBhcyBwb3NzaWJsZS4K
K1RoZSB0b3RhbCBiaXRyYXRlIG9mIHRoZSBsYXR0ZXIgYXBwcm9hY2gsIGluY2x1ZGluZyBPZ2cg
b3ZlcmhlYWQsIGlzIGFib3V0CisgMC40Jm5ic3A7a2Jwcywgc28gdGhlIGltcGFjdCBvbiBmaWxl
IHNpemUgaXMgbWluaW1hbC4KKzwvdD4KKworPHQ+CitDaGFuZ2luZyBtb2RlcyBpcyBkaXNjb3Vy
YWdlZCwgc2luY2UgdGhpcyBjYXVzZXMgc29tZSBkZWNvZGVyIGltcGxlbWVudGF0aW9ucworIHRv
IHJlc2V0IHRoZWlyIFBMQyBzdGF0ZS4KK0hvd2V2ZXIsIFNJTEsgYW5kIEh5YnJpZCBtb2RlIGZy
YW1lcyBjYW5ub3QgZmlsbCBnYXBzIHRoYXQgYXJlIG5vdCBhIG11bHRpcGxlCisgb2YgMTAmbmJz
cDttcy4KK0lmIHN3aXRjaGluZyB0byBDRUxUIG1vZGUgaXMgbmVlZGVkIHRvIG1hdGNoIHRoZSBn
YXAgc2l6ZSwgYSBtdXhlciBTSE9VTEQgZG8KKyBzbyBhdCB0aGUgZW5kIG9mIHRoZSBnYXAgdG8g
YWxsb3cgdGhlIFBMQyB0byBmdW5jdGlvbiBmb3IgYXMgbG9uZyBhcyBwb3NzaWJsZS4KKzwvdD4K
KworPHQ+CitJbiB0aGUgZXhhbXBsZSBhYm92ZSwgaWYgdGhlIHByZXZpb3VzIGZyYW1lIHdhcyBh
IDIwJm5ic3A7bXMgU0lMSyBtb2RlIGZyYW1lLAorIHRoZSBiZXR0ZXIgc29sdXRpb24gaXMgdG8g
c3ludGhlc2l6ZSBhIHBhY2tldCBkZXNjcmliaW5nIGZvdXIgMjAmbmJzcDttcyBTSUxLCisgZnJh
bWVzLCBmb2xsb3dlZCBieSBhIHBhY2tldCB3aXRoIGEgc2luZ2xlIDEwJm5ic3A7bXMgU0lMSwor
IGZyYW1lLCBhbmQgZmluYWxseSBhIHBhY2tldCB3aXRoIGEgNSZuYnNwO21zIENFTFQgZnJhbWUs
IHRvIGZpbGwgdGhlIDk1Jm5ic3A7bXMKKyBnYXAuCitUaGlzIGFsc28gcmVxdWlyZXMgZm91ciBi
eXRlcyB0byBkZXNjcmliZSB0aGUgc3ludGhlc2l6ZWQgcGFja2V0IGRhdGEgKHR3bworIGJ5dGVz
IGZvciBhIENCUiBjb2RlIDMgYW5kIG9uZSBieXRlIGVhY2ggZm9yIHR3byBjb2RlIDAgcGFja2V0
cykgYnV0IHRocmVlCisgYnl0ZXMgb2YgT2dnIGxhY2luZyBvdmVyaGVhZCBhcmUgbmVlZGVkIHRv
IG1hcmsgdGhlIHBhY2tldCBib3VuZGFyaWVzLgorQXQgMC42IGticHMsIHRoaXMgaXMgc3RpbGwg
YSBtaW5pbWFsIGJpdHJhdGUgaW1wYWN0IG92ZXIgYSBuYWl2ZSwgbG93IHF1YWxpdHkKKyBzb2x1
dGlvbi4KKzwvdD4KKworPHQ+CitTaW5jZSBtZWRpdW0tYmFuZCBhdWRpbyBpcyBhbiBvcHRpb24g
b25seSBpbiB0aGUgU0lMSyBtb2RlLCB3aWRlYmFuZCBmcmFtZXMKKyBTSE9VTEQgYmUgZ2VuZXJh
dGVkIGlmIHN3aXRjaGluZyBmcm9tIHRoYXQgY29uZmlndXJhdGlvbiB0byBDRUxUIG1vZGUsIHRv
CisgZW5zdXJlIHRoYXQgYW55IFBMQyBpbXBsZW1lbnRhdGlvbiB3aGljaCBkb2VzIHRyeSB0byBt
aWdyYXRlIHN0YXRlIGJldHdlZW4KKyB0aGUgbW9kZXMgd2lsbCBiZSBhYmxlIHRvIHByZXNlcnZl
IGFsbCBvZiB0aGUgYXZhaWxhYmxlIGF1ZGlvIGJhbmR3aWR0aC4KKzwvdD4KKworPC9zZWN0aW9u
PgorCis8c2VjdGlvbiBhbmNob3I9InByZXNraXAiIHRpdGxlPSJQcmUtc2tpcCI+Cis8dD4KK1Ro
ZXJlIGlzIHNvbWUgYW1vdW50IG9mIGxhdGVuY3kgaW50cm9kdWNlZCBkdXJpbmcgdGhlIGRlY29k
aW5nIHByb2Nlc3MsIHRvCisgYWxsb3cgZm9yIG92ZXJsYXAgaW4gdGhlIENFTFQgbW9kZSwgc3Rl
cmVvIG1peGluZyBpbiB0aGUgU0lMSyBtb2RlLCBhbmQKKyByZXNhbXBsaW5nLgorVGhlIGVuY29k
ZXIgbWlnaHQgaGF2ZSBpbnRyb2R1Y2VkIGFkZGl0aW9uYWwgbGF0ZW5jeSB0aHJvdWdoIGl0cyBv
d24gcmVzYW1wbGluZworIGFuZCBhbmFseXNpcyAodGhvdWdoIHRoZSBleGFjdCBhbW91bnQgaXMg
bm90IHNwZWNpZmllZCkuCitUaGVyZWZvcmUsIHRoZSBmaXJzdCBmZXcgc2FtcGxlcyBwcm9kdWNl
ZCBieSB0aGUgZGVjb2RlciBkbyBub3QgY29ycmVzcG9uZCB0bworIHJlYWwgaW5wdXQgYXVkaW8s
IGJ1dCBhcmUgaW5zdGVhZCBjb21wb3NlZCBvZiBwYWRkaW5nIGluc2VydGVkIGJ5IHRoZSBlbmNv
ZGVyCisgdG8gY29tcGVuc2F0ZSBmb3IgdGhpcyBsYXRlbmN5LgorVGhlc2Ugc2FtcGxlcyBuZWVk
IHRvIGJlIHN0b3JlZCBhbmQgZGVjb2RlZCwgYXMgT3B1cyBpcyBhbiBhc3ltcHRvdGljYWxseQor
IGNvbnZlcmdlbnQgcHJlZGljdGl2ZSBjb2RlYywgbWVhbmluZyB0aGUgZGVjb2RlZCBjb250ZW50
cyBvZiBlYWNoIGZyYW1lIGRlcGVuZAorIG9uIHRoZSByZWNlbnQgaGlzdG9yeSBvZiBkZWNvZGVy
IGlucHV0cy4KK0hvd2V2ZXIsIGEgcGxheWVyIHdpbGwgd2FudCB0byBza2lwIHRoZXNlIHNhbXBs
ZXMgYWZ0ZXIgZGVjb2RpbmcgdGhlbS4KKzwvdD4KKworPHQ+CitBICdwcmUtc2tpcCcgZmllbGQg
aW4gdGhlIElEIGhlYWRlciAoc2VlIDx4cmVmIHRhcmdldD0iaWRfaGVhZGVyIi8+KSBzaWduYWxz
CisgdGhlIG51bWJlciBvZiBzYW1wbGVzIHRoYXQgU0hPVUxEIGJlIHNraXBwZWQgKGRlY29kZWQg
YnV0IGRpc2NhcmRlZCkgYXQgdGhlCisgYmVnaW5uaW5nIG9mIHRoZSBzdHJlYW0sIHRob3VnaCBz
b21lIHNwZWNpZmljIGFwcGxpY2F0aW9ucyBtaWdodCBoYXZlIGEgcmVhc29uCisgZm9yIGxvb2tp
bmcgYXQgdGhhdCBkYXRhLgorVGhpcyBhbW91bnQgbmVlZCBub3QgYmUgYSBtdWx0aXBsZSBvZiAy
LjUmbmJzcDttcywgTUFZIGJlIHNtYWxsZXIgdGhhbiBhIHNpbmdsZQorIHBhY2tldCwgb3IgTUFZ
IHNwYW4gdGhlIGNvbnRlbnRzIG9mIHNldmVyYWwgcGFja2V0cy4KK1RoZXNlIHNhbXBsZXMgYXJl
IG5vdCB2YWxpZCBhdWRpby4KKzwvdD4KKworPHQ+CitGb3IgZXhhbXBsZSwgaWYgdGhlIGZpcnN0
IE9wdXMgZnJhbWUgdXNlcyB0aGUgQ0VMVCBtb2RlLCBpdCB3aWxsIGFsd2F5cworIHByb2R1Y2Ug
MTIwIHNhbXBsZXMgb2Ygd2luZG93ZWQgb3ZlcmxhcC1hZGQgZGF0YS4KK0hvd2V2ZXIsIHRoZSBv
dmVybGFwIGRhdGEgaXMgaW5pdGlhbGx5IGFsbCB6ZXJvcyAoc2luY2UgdGhlcmUgaXMgbm8gcHJp
b3IKKyBmcmFtZSksIG1lYW5pbmcgdGhpcyBjYW5ub3QsIGluIGdlbmVyYWwsIGFjY3VyYXRlbHkg
cmVwcmVzZW50IHRoZSBvcmlnaW5hbAorIGF1ZGlvLgorVGhlIFNJTEsgbW9kZSByZXF1aXJlcyBh
ZGRpdGlvbmFsIGRlbGF5IHRvIGFjY291bnQgZm9yIGl0cyBhbmFseXNpcyBhbmQKKyByZXNhbXBs
aW5nIGxhdGVuY3kuCitUaGUgZW5jb2RlciBkZWxheXMgdGhlIG9yaWdpbmFsIGF1ZGlvIHRvIGF2
b2lkIHRoaXMgcHJvYmxlbS4KKzwvdD4KKworPHQ+CitUaGUgcHJlLXNraXAgZmllbGQgTUFZIGFs
c28gYmUgdXNlZCB0byBwZXJmb3JtIHNhbXBsZS1hY2N1cmF0ZSBjcm9wcGluZyBvZgorIGFscmVh
ZHkgZW5jb2RlZCBzdHJlYW1zLgorSW4gdGhpcyBjYXNlLCBhIHZhbHVlIG9mIGF0IGxlYXN0IDM4
NDAmbmJzcDtzYW1wbGVzICg4MCZuYnNwO21zKSBwcm92aWRlcworIHN1ZmZpY2llbnQgaGlzdG9y
eSB0byB0aGUgZGVjb2RlciB0aGF0IGl0IHdpbGwgaGF2ZSBjb252ZXJnZWQKKyBiZWZvcmUgdGhl
IHN0cmVhbSdzIG91dHB1dCBiZWdpbnMuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
YW5jaG9yPSJwY21fc2FtcGxlX3Bvc2l0aW9uIiB0aXRsZT0iUENNIFNhbXBsZSBQb3NpdGlvbiI+
Cis8dD4KK1RoZSBQQ00gc2FtcGxlIHBvc2l0aW9uIGlzIGRldGVybWluZWQgZnJvbSB0aGUgZ3Jh
bnVsZSBwb3NpdGlvbiB1c2luZyB0aGUKKyBmb3JtdWxhCis8L3Q+Cis8ZmlndXJlIGFsaWduPSJj
ZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisnUENNIHNhbXBsZSBw
b3NpdGlvbicgPSAnZ3JhbnVsZSBwb3NpdGlvbicgLSAncHJlLXNraXAnIC4KK11dPjwvYXJ0d29y
az4KKzwvZmlndXJlPgorCis8dD4KK0ZvciBleGFtcGxlLCBpZiB0aGUgZ3JhbnVsZSBwb3NpdGlv
biBvZiB0aGUgZmlyc3QgYXVkaW8gZGF0YSBwYWdlIGlzIDU5LDk3MSwKKyBhbmQgdGhlIHByZS1z
a2lwIGlzIDExLDk3MSwgdGhlbiB0aGUgUENNIHNhbXBsZSBwb3NpdGlvbiBvZiB0aGUgbGFzdCBk
ZWNvZGVkCisgc2FtcGxlIGZyb20gdGhhdCBwYWdlIGlzIDQ4LDAwMC4KKzwvdD4KKzx0PgorVGhp
cyBjYW4gYmUgY29udmVydGVkIGludG8gYSBwbGF5YmFjayB0aW1lIHVzaW5nIHRoZSBmb3JtdWxh
Cis8L3Q+Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAnUENNIHNhbXBsZSBwb3NpdGlvbicKKydwbGF5
YmFjayB0aW1lJyA9IC0tLS0tLS0tLS0tLS0tLS0tLS0tLSAuCisgICAgICAgICAgICAgICAgICAg
ICAgICAgNDgwMDAuMAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0PgorVGhlIGluaXRp
YWwgUENNIHNhbXBsZSBwb3NpdGlvbiBiZWZvcmUgYW55IHNhbXBsZXMgYXJlIHBsYXllZCBpcyBu
b3JtYWxseSAnMCcuCitJbiB0aGlzIGNhc2UsIHRoZSBQQ00gc2FtcGxlIHBvc2l0aW9uIG9mIHRo
ZSBmaXJzdCBhdWRpbyBzYW1wbGUgdG8gYmUgcGxheWVkCisgc3RhcnRzIGF0ICcxJywgYmVjYXVz
ZSBpdCBtYXJrcyB0aGUgdGltZSBvbiB0aGUgY2xvY2sKKyA8c3Bhbnggc3R5bGU9ImVtcGgiPmFm
dGVyPC9zcGFueD4gdGhhdCBzYW1wbGUgaGFzIGJlZW4gcGxheWVkLCBhbmQgYSBzdHJlYW0KKyB0
aGF0IGlzIGV4YWN0bHkgb25lIHNlY29uZCBsb25nIGhhcyBhIGZpbmFsIFBDTSBzYW1wbGUgcG9z
aXRpb24gb2YgJzQ4MDAwJywKKyBhcyBpbiB0aGUgZXhhbXBsZSBoZXJlLgorPC90PgorCis8dD4K
K1ZvcmJpcyBzdHJlYW1zIHVzZSBhIGdyYW51bGUgcG9zaXRpb24gc21hbGxlciB0aGFuIHRoZSBu
dW1iZXIgb2YgYXVkaW8gc2FtcGxlcworIGNvbnRhaW5lZCBpbiB0aGUgZmlyc3QgYXVkaW8gZGF0
YSBwYWdlIHRvIGluZGljYXRlIHRoYXQgc29tZSBvZiB0aG9zZSBzYW1wbGVzCisgYXJlIHRyaW1t
ZWQgZnJvbSB0aGUgb3V0cHV0IChzZWUgPHhyZWYgdGFyZ2V0PSJ2b3JiaXMtdHJpbSIvPikuCitI
b3dldmVyLCB0byBkbyBzbywgVm9yYmlzIHJlcXVpcmVzIHRoYXQgdGhlIGZpcnN0IGF1ZGlvIGRh
dGEgcGFnZSBjb250YWlucworIGV4YWN0bHkgdHdvIHBhY2tldHMsIGluIG9yZGVyIHRvIGFsbG93
IHRoZSBkZWNvZGVyIHRvIHBlcmZvcm0gUENNIHBvc2l0aW9uCisgYWRqdXN0bWVudHMgYmVmb3Jl
IG5lZWRpbmcgdG8gcmV0dXJuIGFueSBQQ00gZGF0YS4KK09wdXMgdXNlcyB0aGUgcHJlLXNraXAg
bWVjaGFuaXNtIGZvciB0aGlzIHB1cnBvc2UgaW5zdGVhZCwgc2luY2UgdGhlIGVuY29kZXIKKyBt
aWdodCBpbnRyb2R1Y2UgbW9yZSB0aGFuIGEgc2luZ2xlIHBhY2tldCdzIHdvcnRoIG9mIGxhdGVu
Y3ksIGFuZCBzaW5jZSB2ZXJ5CisgbGFyZ2UgcGFja2V0cyBpbiBzdHJlYW1zIHdpdGggYSB2ZXJ5
IGxhcmdlIG51bWJlciBvZiBjaGFubmVscyBtaWdodCBub3QgZml0Cisgb24gYSBzaW5nbGUgcGFn
ZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJlbmRfdHJpbW1pbmciIHRp
dGxlPSJFbmQgVHJpbW1pbmciPgorPHQ+CitUaGUgcGFnZSB3aXRoIHRoZSAnZW5kIG9mIHN0cmVh
bScgZmxhZyBzZXQgTUFZIGhhdmUgYSBncmFudWxlIHBvc2l0aW9uIHRoYXQKKyBpbmRpY2F0ZXMg
dGhlIHBhZ2UgY29udGFpbnMgbGVzcyBhdWRpbyBkYXRhIHRoYW4gd291bGQgbm9ybWFsbHkgYmUg
cmV0dXJuZWQgYnkKKyBkZWNvZGluZyB1cCB0aHJvdWdoIHRoZSBmaW5hbCBwYWNrZXQuCitUaGlz
IGlzIHVzZWQgdG8gZW5kIHRoZSBzdHJlYW0gc29tZXdoZXJlIG90aGVyIHRoYW4gYW4gZXZlbiBm
cmFtZSBib3VuZGFyeS4KK1RoZSBncmFudWxlIHBvc2l0aW9uIG9mIHRoZSBtb3N0IHJlY2VudCBh
dWRpbyBkYXRhIHBhZ2Ugd2l0aCBjb21wbGV0ZWQgcGFja2V0cworIGlzIHVzZWQgdG8gbWFrZSB0
aGlzIGRldGVybWluYXRpb24sIG9yICcwJyBpcyB1c2VkIGlmIHRoZXJlIHdlcmUgbm8gcHJldmlv
dXMKKyBhdWRpbyBkYXRhIHBhZ2VzIHdpdGggYSBjb21wbGV0ZWQgcGFja2V0LgorVGhlIGRpZmZl
cmVuY2UgYmV0d2VlbiB0aGVzZSBncmFudWxlIHBvc2l0aW9ucyBpbmRpY2F0ZXMgaG93IG1hbnkg
c2FtcGxlcyB0bworIGtlZXAgYWZ0ZXIgZGVjb2RpbmcgdGhlIHBhY2tldHMgdGhhdCBjb21wbGV0
ZWQgb24gdGhlIGZpbmFsIHBhZ2UuCitUaGUgcmVtYWluaW5nIHNhbXBsZXMgYXJlIGRpc2NhcmRl
ZC4KK1RoZSBudW1iZXIgb2YgZGlzY2FyZGVkIHNhbXBsZXMgU0hPVUxEIGJlIG5vIGxhcmdlciB0
aGFuIHRoZSBudW1iZXIgZGVjb2RlZAorIGZyb20gdGhlIGxhc3QgcGFja2V0LgorPC90PgorPC9z
ZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InN0YXJ0X2dyYW5wb3NfcmVzdHJpY3Rpb25zIgor
IHRpdGxlPSJSZXN0cmljdGlvbnMgb24gdGhlIEluaXRpYWwgR3JhbnVsZSBQb3NpdGlvbiI+Cis8
dD4KK1RoZSBncmFudWxlIHBvc2l0aW9uIG9mIHRoZSBmaXJzdCBhdWRpbyBkYXRhIHBhZ2Ugd2l0
aCBhIGNvbXBsZXRlZCBwYWNrZXQgTUFZCisgYmUgbGFyZ2VyIHRoYW4gdGhlIG51bWJlciBvZiBz
YW1wbGVzIGNvbnRhaW5lZCBpbiBwYWNrZXRzIHRoYXQgY29tcGxldGUgb24KKyB0aGF0IHBhZ2Us
IGhvd2V2ZXIgaXQgTVVTVCBOT1QgYmUgc21hbGxlciwgdW5sZXNzIHRoYXQgcGFnZSBoYXMgdGhl
ICdlbmQgb2YKKyBzdHJlYW0nIGZsYWcgc2V0LgorQWxsb3dpbmcgYSBncmFudWxlIHBvc2l0aW9u
IGxhcmdlciB0aGFuIHRoZSBudW1iZXIgb2Ygc2FtcGxlcyBhbGxvd3MgdGhlCisgYmVnaW5uaW5n
IG9mIGEgc3RyZWFtIHRvIGJlIGNyb3BwZWQgb3IgYSBsaXZlIHN0cmVhbSB0byBiZSBqb2luZWQg
d2l0aG91dAorIHJld3JpdGluZyB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBvZiBhbGwgdGhlIHJlbWFp
bmluZyBwYWdlcy4KK1RoaXMgbWVhbnMgdGhhdCB0aGUgUENNIHNhbXBsZSBwb3NpdGlvbiBqdXN0
IGJlZm9yZSB0aGUgZmlyc3Qgc2FtcGxlIHRvIGJlCisgcGxheWVkIE1BWSBiZSBsYXJnZXIgdGhh
biAnMCcuCitTeW5jaHJvbml6YXRpb24gd2hlbiBtdWx0aXBsZXhpbmcgd2l0aCBvdGhlciBsb2dp
Y2FsIHN0cmVhbXMgc3RpbGwgdXNlcyB0aGUgUENNCisgc2FtcGxlIHBvc2l0aW9uIHJlbGF0aXZl
IHRvICcwJyB0byBjb21wdXRlIHNhbXBsZSB0aW1lcy4KK1RoaXMgZG9lcyBub3QgYWZmZWN0IHRo
ZSBiZWhhdmlvciBvZiBwcmUtc2tpcDogZXhhY3RseSAncHJlLXNraXAnIHNhbXBsZXMKKyBTSE9V
TEQgYmUgc2tpcHBlZCBmcm9tIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGRlY29kZWQgb3V0cHV0LCBl
dmVuIGlmIHRoZQorIGluaXRpYWwgUENNIHNhbXBsZSBwb3NpdGlvbiBpcyBncmVhdGVyIHRoYW4g
emVyby4KKzwvdD4KKworPHQ+CitPbiB0aGUgb3RoZXIgaGFuZCwgYSBncmFudWxlIHBvc2l0aW9u
IHRoYXQgaXMgc21hbGxlciB0aGFuIHRoZSBudW1iZXIgb2YKKyBkZWNvZGVkIHNhbXBsZXMgcHJl
dmVudHMgYSBkZW11eGVyIGZyb20gd29ya2luZyBiYWNrd2FyZHMgdG8gYXNzaWduIGVhY2gKKyBw
YWNrZXQgb3IgZWFjaCBpbmRpdmlkdWFsIHNhbXBsZSBhIHZhbGlkIGdyYW51bGUgcG9zaXRpb24s
IHNpbmNlIGdyYW51bGUKKyBwb3NpdGlvbnMgYXJlIG5vbi1uZWdhdGl2ZS4KK0FuIGltcGxlbWVu
dGF0aW9uIE1VU1QgdHJlYXQgYW55IHN0cmVhbSBhcyBpbnZhbGlkIGlmIHRoZSBncmFudWxlIHBv
c2l0aW9uCisgaXMgc21hbGxlciB0aGFuIHRoZSBudW1iZXIgb2Ygc2FtcGxlcyBjb250YWluZWQg
aW4gcGFja2V0cyB0aGF0IGNvbXBsZXRlIG9uCisgdGhlIGZpcnN0IGF1ZGlvIGRhdGEgcGFnZSB3
aXRoIGEgY29tcGxldGVkIHBhY2tldCwgdW5sZXNzIHRoYXQgcGFnZSBoYXMgdGhlCisgJ2VuZCBv
ZiBzdHJlYW0nIGZsYWcgc2V0LgorSXQgTUFZIGRlZmVyIHRoaXMgYWN0aW9uIHVudGlsIGl0IGRl
Y29kZXMgdGhlIGxhc3QgcGFja2V0IGNvbXBsZXRlZCBvbiB0aGF0CisgcGFnZS4KKzwvdD4KKwor
PHQ+CitJZiB0aGF0IHBhZ2UgaGFzIHRoZSAnZW5kIG9mIHN0cmVhbScgZmxhZyBzZXQsIGEgZGVt
dXhlciBNVVNUIHRyZWF0IGFueSBzdHJlYW0KKyBhcyBpbnZhbGlkIGlmIGl0cyBncmFudWxlIHBv
c2l0aW9uIGlzIHNtYWxsZXIgdGhhbiB0aGUgJ3ByZS1za2lwJyBhbW91bnQuCitUaGlzIHdvdWxk
IGluZGljYXRlIHRoYXQgdGhlcmUgYXJlIG1vcmUgc2FtcGxlcyB0byBiZSBza2lwcGVkIGZyb20g
dGhlIGluaXRpYWwKKyBkZWNvZGVkIG91dHB1dCB0aGFuIGV4aXN0IGluIHRoZSBzdHJlYW0uCitJ
ZiB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBpcyBzbWFsbGVyIHRoYW4gdGhlIG51bWJlciBvZiBkZWNv
ZGVkIHNhbXBsZXMgcHJvZHVjZWQKKyBieSB0aGUgcGFja2V0cyB0aGF0IGNvbXBsZXRlIG9uIHRo
YXQgcGFnZSwgdGhlbiBhIGRlbXV4ZXIgTVVTVCB1c2UgYW4gaW5pdGlhbAorIGdyYW51bGUgcG9z
aXRpb24gb2YgJzAnLCBhbmQgY2FuIHdvcmsgZm9yd2FyZHMgZnJvbSAnMCcgdG8gdGltZXN0YW1w
CisgaW5kaXZpZHVhbCBwYWNrZXRzLgorSWYgdGhlIGdyYW51bGUgcG9zaXRpb24gaXMgbGFyZ2Vy
IHRoYW4gdGhlIG51bWJlciBvZiBkZWNvZGVkIHNhbXBsZXMgYXZhaWxhYmxlLAorIHRoZW4gdGhl
IGRlbXV4ZXIgTVVTVCBzdGlsbCB3b3JrIGJhY2t3YXJkcyBhcyBkZXNjcmliZWQgYWJvdmUsIGV2
ZW4gaWYgdGhlCisgJ2VuZCBvZiBzdHJlYW0nIGZsYWcgaXMgc2V0LCB0byBkZXRlcm1pbmUgdGhl
IGluaXRpYWwgZ3JhbnVsZSBwb3NpdGlvbiwgYW5kCisgdGh1cyB0aGUgaW5pdGlhbCBQQ00gc2Ft
cGxlIHBvc2l0aW9uLgorQm90aCBvZiB0aGVzZSB3aWxsIGJlIGdyZWF0ZXIgdGhhbiAnMCcgaW4g
dGhpcyBjYXNlLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNlZWtpbmdf
YW5kX3ByZXJvbGwiIHRpdGxlPSJTZWVraW5nIGFuZCBQcmUtcm9sbCI+Cis8dD4KK1NlZWtpbmcg
aW4gT2dnIGZpbGVzIGlzIGJlc3QgcGVyZm9ybWVkIHVzaW5nIGEgYmlzZWN0aW9uIHNlYXJjaCBm
b3IgYSBwYWdlCisgd2hvc2UgZ3JhbnVsZSBwb3NpdGlvbiBjb3JyZXNwb25kcyB0byBhIFBDTSBw
b3NpdGlvbiBhdCBvciBiZWZvcmUgdGhlIHNlZWsKKyB0YXJnZXQuCitXaXRoIGFwcHJvcHJpYXRl
bHkgd2VpZ2h0ZWQgYmlzZWN0aW9uLCBhY2N1cmF0ZSBzZWVraW5nIGNhbiBiZSBwZXJmb3JtZWQg
aW4KKyBqdXN0IG9uZSBvciB0d28gYmlzZWN0aW9ucyBvbiBhdmVyYWdlLCBldmVuIGluIG11bHRp
LWdpZ2FieXRlIGZpbGVzLgorU2VlIDx4cmVmIHRhcmdldD0ic2Vla2luZyIvPiBmb3IgYW4gZXhh
bXBsZSBvZiBnZW5lcmFsIGltcGxlbWVudGF0aW9uIGd1aWRhbmNlLgorPC90PgorCis8dD4KK1do
ZW4gc2Vla2luZyB3aXRoaW4gYW4gT2dnIE9wdXMgc3RyZWFtLCBhbiBpbXBsZW1lbnRhdGlvbiBT
SE9VTEQgc3RhcnQgZGVjb2RpbmcKKyAoYW5kIGRpc2NhcmRpbmcgdGhlIG91dHB1dCkgYXQgbGVh
c3QgMzg0MCZuYnNwO3NhbXBsZXMgKDgwJm5ic3A7bXMpIHByaW9yIHRvCisgdGhlIHNlZWsgdGFy
Z2V0IGluIG9yZGVyIHRvIGVuc3VyZSB0aGF0IHRoZSBvdXRwdXQgYXVkaW8gaXMgY29ycmVjdCBi
eSB0aGUKKyB0aW1lIGl0IHJlYWNoZXMgdGhlIHNlZWsgdGFyZ2V0LgorVGhpcyAncHJlLXJvbGwn
IGlzIHNlcGFyYXRlIGZyb20sIGFuZCB1bnJlbGF0ZWQgdG8sIHRoZSAncHJlLXNraXAnIHVzZWQg
YXQgdGhlCisgYmVnaW5uaW5nIG9mIHRoZSBzdHJlYW0uCitJZiB0aGUgcG9pbnQgODAmbmJzcDtt
cyBwcmlvciB0byB0aGUgc2VlayB0YXJnZXQgY29tZXMgYmVmb3JlIHRoZSBpbml0aWFsIFBDTQor
IHNhbXBsZSBwb3NpdGlvbiwgYW4gaW1wbGVtZW50YXRpb24gU0hPVUxEIHN0YXJ0IGRlY29kaW5n
IGZyb20gdGhlIGJlZ2lubmluZyBvZgorIHRoZSBzdHJlYW0sIGFwcGx5aW5nIHByZS1za2lwIGFz
IG5vcm1hbCwgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoZSBwcmUtc2tpcCBpcworIGxhcmdlciBv
ciBzbWFsbGVyIHRoYW4gODAmbmJzcDttcywgYW5kIHRoZW4gY29udGludWUgdG8gZGlzY2FyZCBz
YW1wbGVzCisgdG8gcmVhY2ggdGhlIHNlZWsgdGFyZ2V0IChpZiBhbnkpLgorPC90PgorPC9zZWN0
aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iaGVhZGVycyIgdGl0bGU9Ikhl
YWRlciBQYWNrZXRzIj4KKzx0PgorQW4gT2dnIE9wdXMgbG9naWNhbCBzdHJlYW0gY29udGFpbnMg
ZXhhY3RseSB0d28gbWFuZGF0b3J5IGhlYWRlciBwYWNrZXRzOgorIGFuIGlkZW50aWZpY2F0aW9u
IGhlYWRlciBhbmQgYSBjb21tZW50IGhlYWRlci4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJp
ZF9oZWFkZXIiIHRpdGxlPSJJZGVudGlmaWNhdGlvbiBIZWFkZXIiPgorCis8ZmlndXJlIGFuY2hv
cj0iaWRfaGVhZGVyX3BhY2tldCIgdGl0bGU9IklEIEhlYWRlciBQYWNrZXQiIGFsaWduPSJjZW50
ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAg
ICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMg
NCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQor
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSsKK3wgICAgICAnTycgICAgICB8ICAgICAgJ3AnICAgICAgfCAgICAgICd1JyAgICAg
IHwgICAgICAncycgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICdIJyAgICAgIHwgICAgICAnZScg
ICAgICB8ICAgICAgJ2EnICAgICAgfCAgICAgICdkJyAgICAgIHwKKystKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICBWZXJz
aW9uID0gMSAgfCBDaGFubmVsIENvdW50IHwgICAgICAgICAgIFByZS1za2lwICAgICAgICAgICAg
fAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICBJbnB1dCBTYW1wbGUgUmF0ZSAoSHop
ICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgIE91dHB1dCBHYWluIChRNy44IGlu
IGRCKSAgICB8IE1hcHBpbmcgRmFtaWx5fCAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsgICAgICAgICAgICAgICA6Cit8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorOiAgICAgICAgICAgICAgIE9wdGlvbmFsIENoYW5uZWwgTWFwcGluZyBUYWJsZS4uLiAg
ICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1
cmU+CisKKzx0PgorVGhlIGZpZWxkcyBpbiB0aGUgaWRlbnRpZmljYXRpb24gKElEKSBoZWFkZXIg
aGF2ZSB0aGUgZm9sbG93aW5nIG1lYW5pbmc6Cis8bGlzdCBzdHlsZT0ibnVtYmVycyI+Cis8dD5N
YWdpYyBTaWduYXR1cmU6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgYW4gOC1v
Y3RldCAoNjQtYml0KSBmaWVsZCB0aGF0IGFsbG93cyBjb2RlYyBpZGVudGlmaWNhdGlvbiBhbmQg
aXMKKyBodW1hbi1yZWFkYWJsZS4KK0l0IGNvbnRhaW5zLCBpbiBvcmRlciwgdGhlIG1hZ2ljIG51
bWJlcnM6Cis8bGlzdCBzdHlsZT0iZW1wdHkiPgorPHQ+MHg0RiAnTyc8L3Q+Cis8dD4weDcwICdw
JzwvdD4KKzx0PjB4NzUgJ3UnPC90PgorPHQ+MHg3MyAncyc8L3Q+Cis8dD4weDQ4ICdIJzwvdD4K
Kzx0PjB4NjUgJ2UnPC90PgorPHQ+MHg2MSAnYSc8L3Q+Cis8dD4weDY0ICdkJzwvdD4KKzwvbGlz
dD4KK1N0YXJ0aW5nIHdpdGggIk9wIiBoZWxwcyBkaXN0aW5ndWlzaCBpdCBmcm9tIGF1ZGlvIGRh
dGEgcGFja2V0cywgYXMgdGhpcyBpcyBhbgorIGludmFsaWQgVE9DIHNlcXVlbmNlLgorPHZzcGFj
ZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5WZXJzaW9uICg4IGJpdHMsIHVuc2lnbmVkKToK
Kzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhlIHZlcnNpb24gbnVtYmVyIE1VU1QgYWx3YXlz
IGJlICcxJyBmb3IgdGhpcyB2ZXJzaW9uIG9mIHRoZSBlbmNhcHN1bGF0aW9uCisgc3BlY2lmaWNh
dGlvbi4KK0ltcGxlbWVudGF0aW9ucyBTSE9VTEQgdHJlYXQgc3RyZWFtcyB3aGVyZSB0aGUgdXBw
ZXIgZm91ciBiaXRzIG9mIHRoZSB2ZXJzaW9uCisgbnVtYmVyIG1hdGNoIHRoYXQgb2YgYSByZWNv
Z25pemVkIHNwZWNpZmljYXRpb24gYXMgYmFja3dhcmRzLWNvbXBhdGlibGUgd2l0aAorIHRoYXQg
c3BlY2lmaWNhdGlvbi4KK1RoYXQgaXMsIHRoZSB2ZXJzaW9uIG51bWJlciBjYW4gYmUgc3BsaXQg
aW50byAibWFqb3IiIGFuZCAibWlub3IiIHZlcnNpb24KKyBzdWItZmllbGRzLCB3aXRoIGNoYW5n
ZXMgdG8gdGhlICJtaW5vciIgc3ViLWZpZWxkIChpbiB0aGUgbG93ZXIgZm91ciBiaXRzKQorIHNp
Z25hbGluZyBjb21wYXRpYmxlIGNoYW5nZXMuCitGb3IgZXhhbXBsZSwgYW4gaW1wbGVtZW50YXRp
b24gb2YgdGhpcyBzcGVjaWZpY2F0aW9uIFNIT1VMRCBhY2NlcHQgYW55IHN0cmVhbQorIHdpdGgg
YSB2ZXJzaW9uIG51bWJlciBvZiAnMTUnIG9yIGxlc3MsIGFuZCBTSE9VTEQgYXNzdW1lIGFueSBz
dHJlYW0gd2l0aCBhCisgdmVyc2lvbiBudW1iZXIgJzE2JyBvciBncmVhdGVyIGlzIGluY29tcGF0
aWJsZS4KK1RoZSBpbml0aWFsIHZlcnNpb24gJzEnIHdhcyBjaG9zZW4gdG8ga2VlcCBpbXBsZW1l
bnRhdGlvbnMgZnJvbSByZWx5aW5nIG9uIHRoaXMKKyBvY3RldCBhcyBhIG51bGwgdGVybWluYXRv
ciBmb3IgdGhlICJPcHVzSGVhZCIgc3RyaW5nLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8
L3Q+Cis8dD5PdXRwdXQgQ2hhbm5lbCBDb3VudCAnQycgKDggYml0cywgdW5zaWduZWQpOgorPHZz
cGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGlzIGlzIHRoZSBudW1iZXIgb2Ygb3V0cHV0IGNoYW5u
ZWxzLgorVGhpcyBtaWdodCBiZSBkaWZmZXJlbnQgdGhhbiB0aGUgbnVtYmVyIG9mIGVuY29kZWQg
Y2hhbm5lbHMsIHdoaWNoIGNhbiBjaGFuZ2UKKyBvbiBhIHBhY2tldC1ieS1wYWNrZXQgYmFzaXMu
CitUaGlzIHZhbHVlIE1VU1QgTk9UIGJlIHplcm8uCitUaGUgbWF4aW11bSBhbGxvd2FibGUgdmFs
dWUgZGVwZW5kcyBvbiB0aGUgY2hhbm5lbCBtYXBwaW5nIGZhbWlseSwgYW5kIG1pZ2h0IGJlCisg
YXMgbGFyZ2UgYXMgMjU1LgorU2VlIDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nIi8+IGZv
ciBkZXRhaWxzLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5QcmUtc2tpcCAo
MTYgYml0cywgdW5zaWduZWQsIGxpdHRsZQorIGVuZGlhbik6Cis8dnNwYWNlIGJsYW5rTGluZXM9
IjEiLz4KK1RoaXMgaXMgdGhlIG51bWJlciBvZiBzYW1wbGVzIChhdCA0OCZuYnNwO2tIeikgdG8g
ZGlzY2FyZCBmcm9tIHRoZSBkZWNvZGVyCisgb3V0cHV0IHdoZW4gc3RhcnRpbmcgcGxheWJhY2ss
IGFuZCBhbHNvIHRoZSBudW1iZXIgdG8gc3VidHJhY3QgZnJvbSBhIHBhZ2UncworIGdyYW51bGUg
cG9zaXRpb24gdG8gY2FsY3VsYXRlIGl0cyBQQ00gc2FtcGxlIHBvc2l0aW9uLgorV2hlbiBjcm9w
cGluZyB0aGUgYmVnaW5uaW5nIG9mIGV4aXN0aW5nIE9nZyBPcHVzIHN0cmVhbXMsIGEgcHJlLXNr
aXAgb2YgYXQKKyBsZWFzdCAzLDg0MCZuYnNwO3NhbXBsZXMgKDgwJm5ic3A7bXMpIGlzIFJFQ09N
TUVOREVEIHRvIGVuc3VyZSBjb21wbGV0ZQorIGNvbnZlcmdlbmNlIGluIHRoZSBkZWNvZGVyLgor
PHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5JbnB1dCBTYW1wbGUgUmF0ZSAoMzIg
Yml0cywgdW5zaWduZWQsIGxpdHRsZQorIGVuZGlhbik6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEi
Lz4KK1RoaXMgaXMgdGhlIHNhbXBsZSByYXRlIG9mIHRoZSBvcmlnaW5hbCBpbnB1dCAoYmVmb3Jl
IGVuY29kaW5nKSwgaW4gSHouCitUaGlzIGZpZWxkIGlzIDxzcGFueCBzdHlsZT0iZW1waCI+bm90
PC9zcGFueD4gdGhlIHNhbXBsZSByYXRlIHRvIHVzZSBmb3IKKyBwbGF5YmFjayBvZiB0aGUgZW5j
b2RlZCBkYXRhLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitPcHVzIGNhbiBzd2l0Y2ggYmV0
d2VlbiBpbnRlcm5hbCBhdWRpbyBiYW5kd2lkdGhzIG9mIDQsIDYsIDgsIDEyLCBhbmQKKyAyMCZu
YnNwO2tIei4KK0VhY2ggcGFja2V0IGluIHRoZSBzdHJlYW0gY2FuIGhhdmUgYSBkaWZmZXJlbnQg
YXVkaW8gYmFuZHdpZHRoLgorUmVnYXJkbGVzcyBvZiB0aGUgYXVkaW8gYmFuZHdpZHRoLCB0aGUg
cmVmZXJlbmNlIGRlY29kZXIgc3VwcG9ydHMgZGVjb2RpbmcgYW55Cisgc3RyZWFtIGF0IGEgc2Ft
cGxlIHJhdGUgb2YgOCwgMTIsIDE2LCAyNCwgb3IgNDgmbmJzcDtrSHouCitUaGUgb3JpZ2luYWwg
c2FtcGxlIHJhdGUgb2YgdGhlIGF1ZGlvIHBhc3NlZCB0byB0aGUgZW5jb2RlciBpcyBub3QgcHJl
c2VydmVkCisgYnkgdGhlIGxvc3N5IGNvbXByZXNzaW9uLgorPHZzcGFjZSBibGFua0xpbmVzPSIx
Ii8+CitBbiBPZ2cgT3B1cyBwbGF5ZXIgU0hPVUxEIHNlbGVjdCB0aGUgcGxheWJhY2sgc2FtcGxl
IHJhdGUgYWNjb3JkaW5nIHRvIHRoZQorIGZvbGxvd2luZyBwcm9jZWR1cmU6Cis8bGlzdCBzdHls
ZT0ibnVtYmVycyI+Cis8dD5JZiB0aGUgaGFyZHdhcmUgc3VwcG9ydHMgNDgmbmJzcDtrSHogcGxh
eWJhY2ssIGRlY29kZSBhdCA0OCZuYnNwO2tIei48L3Q+Cis8dD5PdGhlcndpc2UsIGlmIHRoZSBo
YXJkd2FyZSdzIGhpZ2hlc3QgYXZhaWxhYmxlIHNhbXBsZSByYXRlIGlzIGEgc3VwcG9ydGVkCisg
cmF0ZSwgZGVjb2RlIGF0IHRoaXMgc2FtcGxlIHJhdGUuPC90PgorPHQ+T3RoZXJ3aXNlLCBpZiB0
aGUgaGFyZHdhcmUncyBoaWdoZXN0IGF2YWlsYWJsZSBzYW1wbGUgcmF0ZSBpcyBsZXNzIHRoYW4K
KyA0OCZuYnNwO2tIeiwgZGVjb2RlIGF0IHRoZSBuZXh0IGhpZ2hlciBPcHVzIHN1cHBvcnRlZCBy
YXRlIGFib3ZlIHRoZSBoaWdoZXN0CisgYXZhaWxhYmxlIGhhcmR3YXJlIHJhdGUgYW5kIHJlc2Ft
cGxlLjwvdD4KKzx0Pk90aGVyd2lzZSwgZGVjb2RlIGF0IDQ4Jm5ic3A7a0h6IGFuZCByZXNhbXBs
ZS48L3Q+Cis8L2xpc3Q+CitIb3dldmVyLCB0aGUgJ0lucHV0IFNhbXBsZSBSYXRlJyBmaWVsZCBh
bGxvd3MgdGhlIG11eGVyIHRvIHBhc3MgdGhlIHNhbXBsZQorIHJhdGUgb2YgdGhlIG9yaWdpbmFs
IGlucHV0IHN0cmVhbSBhcyBtZXRhZGF0YS4KK1RoaXMgaXMgdXNlZnVsIHdoZW4gdGhlIHVzZXIg
cmVxdWlyZXMgdGhlIG91dHB1dCBzYW1wbGUgcmF0ZSB0byBtYXRjaCB0aGUKKyBpbnB1dCBzYW1w
bGUgcmF0ZS4KK0ZvciBleGFtcGxlLCB3aGVuIG5vdCBwbGF5aW5nIHRoZSBvdXRwdXQsIGFuIGlt
cGxlbWVudGF0aW9uIHdyaXRpbmcgUENNIGZvcm1hdAorIHNhbXBsZXMgdG8gZGlzayBtaWdodCBj
aG9vc2UgdG8gcmVzYW1wbGUgdGhlIGF1ZGlvIGJhY2sgdG8gdGhlIG9yaWdpbmFsIGlucHV0Cisg
c2FtcGxlIHJhdGUgdG8gcmVkdWNlIHN1cnByaXNlIHRvIHRoZSB1c2VyLCB3aG8gbWlnaHQgcmVh
c29uYWJseSBleHBlY3QgdG8gZ2V0CisgYmFjayBhIGZpbGUgd2l0aCB0aGUgc2FtZSBzYW1wbGUg
cmF0ZS4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorQSB2YWx1ZSBvZiB6ZXJvIGluZGljYXRl
cyAndW5zcGVjaWZpZWQnLgorTXV4ZXJzIFNIT1VMRCB3cml0ZSB0aGUgYWN0dWFsIGlucHV0IHNh
bXBsZSByYXRlIG9yIHplcm8sIGJ1dCBpbXBsZW1lbnRhdGlvbnMKKyB3aGljaCBkbyBzb21ldGhp
bmcgd2l0aCB0aGlzIGZpZWxkIFNIT1VMRCB0YWtlIGNhcmUgdG8gYmVoYXZlIHNhbmVseSBpZiBn
aXZlbgorIGNyYXp5IHZhbHVlcyAoZS5nLiwgZG8gbm90IGFjdHVhbGx5IHVwc2FtcGxlIHRoZSBv
dXRwdXQgdG8gMTAgTUh6IGlmCisgcmVxdWVzdGVkKS4KK0ltcGxlbWVudGF0aW9ucyBTSE9VTEQg
c3VwcG9ydCBpbnB1dCBzYW1wbGUgcmF0ZXMgYmV0d2VlbiA4Jm5ic3A7a0h6IGFuZAorIDE5MiZu
YnNwO2tIeiAoaW5jbHVzaXZlKS4KK1JhdGVzIG91dHNpZGUgdGhpcyByYW5nZSBNQVkgYmUgaWdu
b3JlZCBieSBmYWxsaW5nIGJhY2sgdG8gdGhlIGRlZmF1bHQgcmF0ZSBvZgorIDQ4Jm5ic3A7a0h6
IGluc3RlYWQuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0Pk91dHB1dCBHYWlu
ICgxNiBiaXRzLCBzaWduZWQsIGxpdHRsZSBlbmRpYW4pOgorPHZzcGFjZSBibGFua0xpbmVzPSIx
Ii8+CitUaGlzIGlzIGEgZ2FpbiB0byBiZSBhcHBsaWVkIHdoZW4gZGVjb2RpbmcuCitJdCBpcyAy
MCpsb2cxMCBvZiB0aGUgZmFjdG9yIGJ5IHdoaWNoIHRvIHNjYWxlIHRoZSBkZWNvZGVyIG91dHB1
dCB0byBhY2hpZXZlCisgdGhlIGRlc2lyZWQgcGxheWJhY2sgdm9sdW1lLCBzdG9yZWQgaW4gYSAx
Ni1iaXQsIHNpZ25lZCwgdHdvJ3MgY29tcGxlbWVudAorIGZpeGVkLXBvaW50IHZhbHVlIHdpdGgg
OCBmcmFjdGlvbmFsIGJpdHMgKGkuZS4sCisgUTcuOCZuYnNwOzx4cmVmIHRhcmdldD0icS1ub3Rh
dGlvbiIvPikuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RvIGFwcGx5IHRoZSBnYWluLCBh
biBpbXBsZW1lbnRhdGlvbiBjb3VsZCB1c2UKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3NhbXBsZSAqPSBwb3coMTAsIG91dHB1dF9n
YWluLygyMC4wKjI1NikpICwKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdoZXJlIG91dHB1
dF9nYWluIGlzIHRoZSByYXcgMTYtYml0IHZhbHVlIGZyb20gdGhlIGhlYWRlci4KKzx2c3BhY2Ug
YmxhbmtMaW5lcz0iMSIvPgorUGxheWVycyBhbmQgbWVkaWEgZnJhbWV3b3JrcyBTSE9VTEQgYXBw
bHkgaXQgYnkgZGVmYXVsdC4KK0lmIGEgcGxheWVyIGNob29zZXMgdG8gYXBwbHkgYW55IHZvbHVt
ZSBhZGp1c3RtZW50IG9yIGdhaW4gbW9kaWZpY2F0aW9uLCBzdWNoCisgYXMgdGhlIFIxMjhfVFJB
Q0tfR0FJTiAoc2VlIDx4cmVmIHRhcmdldD0iY29tbWVudF9oZWFkZXIiLz4pLCB0aGUgYWRqdXN0
bWVudAorIE1VU1QgYmUgYXBwbGllZCBpbiBhZGRpdGlvbiB0byB0aGlzIG91dHB1dCBnYWluIGlu
IG9yZGVyIHRvIGFjaGlldmUgcGxheWJhY2sKKyBhdCB0aGUgbm9ybWFsaXplZCB2b2x1bWUuCis8
dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0EgbXV4ZXIgU0hPVUxEIHNldCB0aGlzIGZpZWxkIHRv
IHplcm8sIGFuZCBpbnN0ZWFkIGFwcGx5IGFueSBnYWluIHByaW9yIHRvCisgZW5jb2RpbmcsIHdo
ZW4gdGhpcyBpcyBwb3NzaWJsZSBhbmQgZG9lcyBub3QgY29uZmxpY3Qgd2l0aCB0aGUgdXNlcidz
IHdpc2hlcy4KK0Egbm9uemVybyBvdXRwdXQgZ2FpbiBpbmRpY2F0ZXMgdGhlIGdhaW4gd2FzIGFk
anVzdGVkIGFmdGVyIGVuY29kaW5nLCBvciB0aGF0CisgYSB1c2VyIHdpc2hlZCB0byBhZGp1c3Qg
dGhlIGdhaW4gZm9yIHBsYXliYWNrIHdoaWxlIHByZXNlcnZpbmcgdGhlIGFiaWxpdHkKKyB0byBy
ZWNvdmVyIHRoZSBvcmlnaW5hbCBzaWduYWwgYW1wbGl0dWRlLgorPHZzcGFjZSBibGFua0xpbmVz
PSIxIi8+CitBbHRob3VnaCB0aGUgb3V0cHV0IGdhaW4gaGFzIGVub3Jtb3VzIHJhbmdlICgrLy0g
MTI4IGRCLCBlbm91Z2ggdG8gYW1wbGlmeQorIGluYXVkaWJsZSBzb3VuZHMgdG8gdGhlIHRocmVz
aG9sZCBvZiBwaHlzaWNhbCBwYWluKSwgbW9zdCBhcHBsaWNhdGlvbnMgY2FuCisgb25seSByZWFz
b25hYmx5IHVzZSBhIHNtYWxsIHBvcnRpb24gb2YgdGhpcyByYW5nZSBhcm91bmQgemVyby4KK1Ro
ZSBsYXJnZSByYW5nZSBzZXJ2ZXMgaW4gcGFydCB0byBlbnN1cmUgdGhhdCBnYWluIGNhbiBhbHdh
eXMgYmUgbG9zc2xlc3NseQorIHRyYW5zZmVycmVkIGJldHdlZW4gT3B1c0hlYWQgYW5kIFIxMjgg
Z2FpbiB0YWdzIChzZWUgYmVsb3cpIHdpdGhvdXQKKyBzYXR1cmF0aW5nLgorPHZzcGFjZSBibGFu
a0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5DaGFubmVsIE1hcHBpbmcgRmFtaWx5ICg4IGJpdHMsIHVu
c2lnbmVkKToKKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhpcyBvY3RldCBpbmRpY2F0ZXMg
dGhlIG9yZGVyIGFuZCBzZW1hbnRpYyBtZWFuaW5nIG9mIHRoZSBvdXRwdXQgY2hhbm5lbHMuCis8
dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0VhY2ggY3VycmVudGx5IHNwZWNpZmllZCB2YWx1ZSBv
ZiB0aGlzIG9jdGV0IGluZGljYXRlcyBhIG1hcHBpbmcgZmFtaWx5LCB3aGljaAorIGRlZmluZXMg
YSBzZXQgb2YgYWxsb3dlZCBjaGFubmVsIGNvdW50cywgYW5kIHRoZSBvcmRlcmVkIHNldCBvZiBj
aGFubmVsIG5hbWVzCisgZm9yIGVhY2ggYWxsb3dlZCBjaGFubmVsIGNvdW50LgorVGhlIGRldGFp
bHMgYXJlIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9ImNoYW5uZWxfbWFwcGluZyIvPi4KKzwv
dD4KKzx0PkNoYW5uZWwgTWFwcGluZyBUYWJsZToKK1RoaXMgdGFibGUgZGVmaW5lcyB0aGUgbWFw
cGluZyBmcm9tIGVuY29kZWQgc3RyZWFtcyB0byBvdXRwdXQgY2hhbm5lbHMuCitJdHMgY29udGVu
dHMgYXJlIHNwZWNpZmllZCBpbiA8eHJlZiB0YXJnZXQ9ImNoYW5uZWxfbWFwcGluZyIvPi4KKzwv
dD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitBbGwgZmllbGRzIGluIHRoZSBJRCBoZWFkZXJzIGFy
ZSBSRVFVSVJFRCwgZXhjZXB0IGZvciB0aGUgY2hhbm5lbCBtYXBwaW5nCisgdGFibGUsIHdoaWNo
IE1VU1QgYmUgb21pdHRlZCB3aGVuIHRoZSBjaGFubmVsIG1hcHBpbmcgZmFtaWx5IGlzIDAsIGJ1
dAorIGlzIFJFUVVJUkVEIG90aGVyd2lzZS4KK0ltcGxlbWVudGF0aW9ucyBTSE9VTEQgdHJlYXQg
YSBzdHJlYW0gYXMgaW52YWxpZCBpZiBpdCBjb250YWlucyBhbiBJRCBoZWFkZXIKKyB0aGF0IGRv
ZXMgbm90IGhhdmUgZW5vdWdoIGRhdGEgZm9yIHRoZXNlIGZpZWxkcywgZXZlbiBpZiBpdCBjb250
YWluIGEgdmFsaWQKKyBNYWdpYyBTaWduYXR1cmUuCitGdXR1cmUgdmVyc2lvbnMgb2YgdGhpcyBz
cGVjaWZpY2F0aW9uLCBldmVuIGJhY2t3YXJkcy1jb21wYXRpYmxlIHZlcnNpb25zLAorIG1pZ2h0
IGluY2x1ZGUgYWRkaXRpb25hbCBmaWVsZHMgaW4gdGhlIElEIGhlYWRlci4KK0lmIGFuIElEIGhl
YWRlciBoYXMgYSBjb21wYXRpYmxlIG1ham9yIHZlcnNpb24sIGJ1dCBhIGxhcmdlciBtaW5vciB2
ZXJzaW9uLAorIGFuIGltcGxlbWVudGF0aW9uIE1VU1QgTk9UIHRyZWF0IGl0IGFzIGludmFsaWQg
Zm9yIGNvbnRhaW5pbmcgYWRkaXRpb25hbCBkYXRhCisgbm90IHNwZWNpZmllZCBoZXJlLCBwcm92
aWRlZCBpdCBzdGlsbCBjb21wbGV0ZXMgb24gdGhlIGZpcnN0IHBhZ2UuCis8L3Q+CisKKzxzZWN0
aW9uIGFuY2hvcj0iY2hhbm5lbF9tYXBwaW5nIiB0aXRsZT0iQ2hhbm5lbCBNYXBwaW5nIj4KKzx0
PgorQW4gT2dnIE9wdXMgc3RyZWFtIGFsbG93cyBtYXBwaW5nIG9uZSBudW1iZXIgb2YgT3B1cyBz
dHJlYW1zIChOKSB0byBhIHBvc3NpYmx5CisgbGFyZ2VyIG51bWJlciBvZiBkZWNvZGVkIGNoYW5u
ZWxzIChNJm5ic3A7KyZuYnNwO04pIHRvIHlldCBhbm90aGVyIG51bWJlciBvZgorIG91dHB1dCBj
aGFubmVscyAoQyksIHdoaWNoIG1pZ2h0IGJlIGxhcmdlciBvciBzbWFsbGVyIHRoYW4gdGhlIG51
bWJlciBvZgorIGRlY29kZWQgY2hhbm5lbHMuCitUaGUgb3JkZXIgYW5kIG1lYW5pbmcgb2YgdGhl
c2UgY2hhbm5lbHMgYXJlIGRlZmluZWQgYnkgYSBjaGFubmVsIG1hcHBpbmcsCisgd2hpY2ggY29u
c2lzdHMgb2YgdGhlICdjaGFubmVsIG1hcHBpbmcgZmFtaWx5JyBvY3RldCBhbmQsIGZvciBjaGFu
bmVsIG1hcHBpbmcKKyBmYW1pbGllcyBvdGhlciB0aGFuIGZhbWlseSZuYnNwOzAsIGEgY2hhbm5l
bCBtYXBwaW5nIHRhYmxlLCBhcyBpbGx1c3RyYXRlZCBpbgorIDx4cmVmIHRhcmdldD0iY2hhbm5l
bF9tYXBwaW5nX3RhYmxlIi8+LgorPC90PgorCis8ZmlndXJlIGFuY2hvcj0iY2hhbm5lbF9tYXBw
aW5nX3RhYmxlIiB0aXRsZT0iQ2hhbm5lbCBNYXBwaW5nIFRhYmxlIgorIGFsaWduPSJjZW50ZXIi
PgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAg
ICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1
IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0rLSstKy0rLSst
Ky0rLSsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
U3RyZWFtIENvdW50ICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCBDb3VwbGVkIENvdW50IHwgICAgICAgICAgICAg
IENoYW5uZWwgTWFwcGluZy4uLiAgICAgICAgICAgICAgIDoKKystKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdv
cms+Cis8L2ZpZ3VyZT4KKworPHQ+CitUaGUgZmllbGRzIGluIHRoZSBjaGFubmVsIG1hcHBpbmcg
dGFibGUgaGF2ZSB0aGUgZm9sbG93aW5nIG1lYW5pbmc6Cis8bGlzdCBzdHlsZT0ibnVtYmVycyIg
Y291bnRlcj0iOCI+Cis8dD5TdHJlYW0gQ291bnQgJ04nICg4IGJpdHMsIHVuc2lnbmVkKToKKzx2
c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhpcyBpcyB0aGUgdG90YWwgbnVtYmVyIG9mIHN0cmVh
bXMgZW5jb2RlZCBpbiBlYWNoIE9nZyBwYWNrZXQuCitUaGlzIHZhbHVlIGlzIG5lY2Vzc2FyeSB0
byBjb3JyZWN0bHkgcGFyc2UgdGhlIHBhY2tlZCBPcHVzIHBhY2tldHMgaW5zaWRlIGFuCisgT2dn
IHBhY2tldCwgYXMgZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0icGFja2V0X29yZ2FuaXphdGlv
biIvPi4KK1RoaXMgdmFsdWUgTVVTVCBOT1QgYmUgemVybywgYXMgd2l0aG91dCBhdCBsZWFzdCBv
bmUgT3B1cyBwYWNrZXQgd2l0aCBhIHZhbGlkCisgVE9DIHNlcXVlbmNlLCBhIGRlbXV4ZXIgY2Fu
bm90IHJlY292ZXIgdGhlIGR1cmF0aW9uIG9mIGFuIE9nZyBwYWNrZXQuCis8dnNwYWNlIGJsYW5r
TGluZXM9IjEiLz4KK0ZvciBjaGFubmVsIG1hcHBpbmcgZmFtaWx5Jm5ic3A7MCwgdGhpcyB2YWx1
ZSBkZWZhdWx0cyB0byAxLCBhbmQgaXMgbm90IGNvZGVkLgorPHZzcGFjZSBibGFua0xpbmVzPSIx
Ii8+Cis8L3Q+Cis8dD5Db3VwbGVkIFN0cmVhbSBDb3VudCAnTScgKDggYml0cywgdW5zaWduZWQp
OgorVGhpcyBpcyB0aGUgbnVtYmVyIG9mIHN0cmVhbXMgd2hvc2UgZGVjb2RlcnMgYXJlIHRvIGJl
IGNvbmZpZ3VyZWQgdG8gcHJvZHVjZQorIHR3byBjaGFubmVscyAoc3RlcmVvKS4KK1RoaXMgTVVT
VCBiZSBubyBsYXJnZXIgdGhhbiB0aGUgdG90YWwgbnVtYmVyIG9mIHN0cmVhbXMsIE4uCis8dnNw
YWNlIGJsYW5rTGluZXM9IjEiLz4KK0VhY2ggcGFja2V0IGluIGFuIE9wdXMgc3RyZWFtIGhhcyBh
biBpbnRlcm5hbCBjaGFubmVsIGNvdW50IG9mIDEgb3IgMiwgd2hpY2gKKyBjYW4gY2hhbmdlIGZy
b20gcGFja2V0IHRvIHBhY2tldC4KK1RoaXMgaXMgc2VsZWN0ZWQgYnkgdGhlIGVuY29kZXIgZGVw
ZW5kaW5nIG9uIHRoZSBiaXRyYXRlIGFuZCB0aGUgYXVkaW8gYmVpbmcKKyBlbmNvZGVkLgorVGhl
IG9yaWdpbmFsIGNoYW5uZWwgY291bnQgb2YgdGhlIGF1ZGlvIHBhc3NlZCB0byB0aGUgZW5jb2Rl
ciBpcyBub3QKKyBuZWNlc3NhcmlseSBwcmVzZXJ2ZWQgYnkgdGhlIGxvc3N5IGNvbXByZXNzaW9u
LgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitSZWdhcmRsZXNzIG9mIHRoZSBpbnRlcm5hbCBj
aGFubmVsIGNvdW50LCBhbnkgT3B1cyBzdHJlYW0gY2FuIGJlIGRlY29kZWQgYXMKKyBtb25vIChh
IHNpbmdsZSBjaGFubmVsKSBvciBzdGVyZW8gKHR3byBjaGFubmVscykgYnkgYXBwcm9wcmlhdGUg
aW5pdGlhbGl6YXRpb24KKyBvZiB0aGUgZGVjb2Rlci4KK1RoZSAnY291cGxlZCBzdHJlYW0gY291
bnQnIGZpZWxkIGluZGljYXRlcyB0aGF0IHRoZSBkZWNvZGVycyBmb3IgdGhlIGZpcnN0IE0KKyBP
cHVzIHN0cmVhbXMgYXJlIHRvIGJlIGluaXRpYWxpemVkIGZvciBzdGVyZW8gKHR3by1jaGFubmVs
KSBvdXRwdXQsIGFuZCB0aGUKKyByZW1haW5pbmcgKE4mbmJzcDstJm5ic3A7TSkgZGVjb2RlcnMg
YXJlIHRvIGJlIGluaXRpYWxpemVkIGZvciBtb25vIChhIHNpbmdsZQorIGNoYW5uZWwpIG9ubHku
CitUaGUgdG90YWwgbnVtYmVyIG9mIGRlY29kZWQgY2hhbm5lbHMsIChNJm5ic3A7KyZuYnNwO04p
LCBNVVNUIGJlIG5vIGxhcmdlciB0aGFuCisgMjU1LCBhcyB0aGVyZSBpcyBubyB3YXkgdG8gaW5k
ZXggbW9yZSBjaGFubmVscyB0aGFuIHRoYXQgaW4gdGhlIGNoYW5uZWwKKyBtYXBwaW5nLgorPHZz
cGFjZSBibGFua0xpbmVzPSIxIi8+CitGb3IgY2hhbm5lbCBtYXBwaW5nIGZhbWlseSZuYnNwOzAs
IHRoaXMgdmFsdWUgZGVmYXVsdHMgdG8gKEMmbmJzcDstJm5ic3A7MSkKKyAoaS5lLiwgMCBmb3Ig
bW9ubyBhbmQgMSBmb3Igc3RlcmVvKSwgYW5kIGlzIG5vdCBjb2RlZC4KKzx2c3BhY2UgYmxhbmtM
aW5lcz0iMSIvPgorPC90PgorPHQ+Q2hhbm5lbCBNYXBwaW5nICg4KkMgYml0cyk6CitUaGlzIGNv
bnRhaW5zIG9uZSBvY3RldCBwZXIgb3V0cHV0IGNoYW5uZWwsIGluZGljYXRpbmcgd2hpY2ggZGVj
b2RlZCBjaGFubmVsCisgaXMgdG8gYmUgdXNlZCBmb3IgZWFjaCBvbmUuCitMZXQgJ2luZGV4JyBi
ZSB0aGUgdmFsdWUgb2YgdGhpcyBvY3RldCBmb3IgYSBwYXJ0aWN1bGFyIG91dHB1dCBjaGFubmVs
LgorVGhpcyB2YWx1ZSBNVVNUIGVpdGhlciBiZSBzbWFsbGVyIHRoYW4gKE0mbmJzcDsrJm5ic3A7
TiksIG9yIGJlIHRoZSBzcGVjaWFsCisgdmFsdWUgMjU1LgorSWYgJ2luZGV4JyBpcyBsZXNzIHRo
YW4gMipNLCB0aGUgb3V0cHV0IE1VU1QgYmUgdGFrZW4gZnJvbSBkZWNvZGluZyBzdHJlYW0KKyAo
J2luZGV4Jy8yKSBhcyBzdGVyZW8gYW5kIHNlbGVjdGluZyB0aGUgbGVmdCBjaGFubmVsIGlmICdp
bmRleCcgaXMgZXZlbiwgYW5kCisgdGhlIHJpZ2h0IGNoYW5uZWwgaWYgJ2luZGV4JyBpcyBvZGQu
CitJZiAnaW5kZXgnIGlzIDIqTSBvciBsYXJnZXIsIGJ1dCBsZXNzIHRoYW4gMjU1LCB0aGUgb3V0
cHV0IE1VU1QgYmUgdGFrZW4gZnJvbQorIGRlY29kaW5nIHN0cmVhbSAoJ2luZGV4JyZuYnNwOy0m
bmJzcDtNKSBhcyBtb25vLgorSWYgJ2luZGV4JyBpcyAyNTUsIHRoZSBjb3JyZXNwb25kaW5nIG91
dHB1dCBjaGFubmVsIE1VU1QgY29udGFpbiBwdXJlIHNpbGVuY2UuCis8dnNwYWNlIGJsYW5rTGlu
ZXM9IjEiLz4KK1RoZSBudW1iZXIgb2Ygb3V0cHV0IGNoYW5uZWxzLCBDLCBpcyBub3QgY29uc3Ry
YWluZWQgdG8gbWF0Y2ggdGhlIG51bWJlciBvZgorIGRlY29kZWQgY2hhbm5lbHMgKE0mbmJzcDsr
Jm5ic3A7TikuCitBIHNpbmdsZSBpbmRleCB2YWx1ZSBNQVkgYXBwZWFyIG11bHRpcGxlIHRpbWVz
LCBpLmUuLCB0aGUgc2FtZSBkZWNvZGVkIGNoYW5uZWwKKyBtaWdodCBiZSBtYXBwZWQgdG8gbXVs
dGlwbGUgb3V0cHV0IGNoYW5uZWxzLgorU29tZSBkZWNvZGVkIGNoYW5uZWxzIG1pZ2h0IG5vdCBi
ZSBhc3NpZ25lZCB0byBhbnkgb3V0cHV0IGNoYW5uZWwsIGFzIHdlbGwuCis8dnNwYWNlIGJsYW5r
TGluZXM9IjEiLz4KK0ZvciBjaGFubmVsIG1hcHBpbmcgZmFtaWx5Jm5ic3A7MCwgdGhlIGZpcnN0
IGluZGV4IGRlZmF1bHRzIHRvIDAsIGFuZCBpZgorIEMmbmJzcDs9PSZuYnNwOzIsIHRoZSBzZWNv
bmQgaW5kZXggZGVmYXVsdHMgdG8gMS4KK05laXRoZXIgaW5kZXggaXMgY29kZWQuCis8L3Q+Cis8
L2xpc3Q+Cis8L3Q+CisKKzx0PgorQWZ0ZXIgcHJvZHVjaW5nIHRoZSBvdXRwdXQgY2hhbm5lbHMs
IHRoZSBjaGFubmVsIG1hcHBpbmcgZmFtaWx5IGRldGVybWluZXMgdGhlCisgc2VtYW50aWMgbWVh
bmluZyBvZiBlYWNoIG9uZS4KK1RoZXJlIGFyZSB0aHJlZSBkZWZpbmVkIG1hcHBpbmcgZmFtaWxp
ZXMgaW4gdGhpcyBzcGVjaWZpY2F0aW9uLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImNoYW5u
ZWxfbWFwcGluZ18wIiB0aXRsZT0iQ2hhbm5lbCBNYXBwaW5nIEZhbWlseSAwIj4KKzx0PgorQWxs
b3dlZCBudW1iZXJzIG9mIGNoYW5uZWxzOiAxIG9yIDIuCitSVFAgbWFwcGluZy4KK1RoaXMgaXMg
dGhlIHNhbWUgY2hhbm5lbCBpbnRlcnByZXRhdGlvbiBhcyA8eHJlZiB0YXJnZXQ9IlJGQzc1ODci
Lz4uCis8L3Q+Cis8dD4KKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PjEgY2hhbm5lbDogbW9u
b3Bob25pYyAobW9ubykuPC90PgorPHQ+MiBjaGFubmVsczogc3RlcmVvIChsZWZ0LCByaWdodCku
PC90PgorPC9saXN0PgorU3BlY2lhbCBtYXBwaW5nOiBUaGlzIGNoYW5uZWwgbWFwcGluZyB2YWx1
ZSBhbHNvCisgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbnRlbnRzIGNvbnNpc3RzIG9mIGEgc2luZ2xl
IE9wdXMgc3RyZWFtIHRoYXQgaXMgc3RlcmVvIGlmCisgYW5kIG9ubHkgaWYgQyZuYnNwOz09Jm5i
c3A7Miwgd2l0aCBzdHJlYW0gaW5kZXgmbmJzcDswIG1hcHBlZCB0byBvdXRwdXQKKyBjaGFubmVs
Jm5ic3A7MCAobW9ubywgb3IgbGVmdCBjaGFubmVsKSBhbmQgc3RyZWFtIGluZGV4Jm5ic3A7MSBt
YXBwZWQgdG8KKyBvdXRwdXQgY2hhbm5lbCZuYnNwOzEgKHJpZ2h0IGNoYW5uZWwpIGlmIHN0ZXJl
by4KK1doZW4gdGhlICdjaGFubmVsIG1hcHBpbmcgZmFtaWx5JyBvY3RldCBoYXMgdGhpcyB2YWx1
ZSwgdGhlIGNoYW5uZWwgbWFwcGluZworIHRhYmxlIE1VU1QgYmUgb21pdHRlZCBmcm9tIHRoZSBJ
RCBoZWFkZXIgcGFja2V0LgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImNo
YW5uZWxfbWFwcGluZ18xIiB0aXRsZT0iQ2hhbm5lbCBNYXBwaW5nIEZhbWlseSAxIj4KKzx0Pgor
QWxsb3dlZCBudW1iZXJzIG9mIGNoYW5uZWxzOiAxLi4uOC4KK1ZvcmJpcyBjaGFubmVsIG9yZGVy
IChzZWUgYmVsb3cpLgorPC90PgorPHQ+CitFYWNoIGNoYW5uZWwgaXMgYXNzaWduZWQgdG8gYSBz
cGVha2VyIGxvY2F0aW9uIGluIGEgY29udmVudGlvbmFsIHN1cnJvdW5kCisgYXJyYW5nZW1lbnQu
CitTcGVjaWZpYyBsb2NhdGlvbnMgZGVwZW5kIG9uIHRoZSBudW1iZXIgb2YgY2hhbm5lbHMsIGFu
ZCBhcmUgZ2l2ZW4gYmVsb3cKKyBpbiBvcmRlciBvZiB0aGUgY29ycmVzcG9uZGluZyBjaGFubmVs
IGluZGljZXMuCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+CisgIDx0PjEgY2hhbm5lbDogbW9ub3Bo
b25pYyAobW9ubykuPC90PgorICA8dD4yIGNoYW5uZWxzOiBzdGVyZW8gKGxlZnQsIHJpZ2h0KS48
L3Q+CisgIDx0PjMgY2hhbm5lbHM6IGxpbmVhciBzdXJyb3VuZCAobGVmdCwgY2VudGVyLCByaWdo
dCk8L3Q+CisgIDx0PjQgY2hhbm5lbHM6IHF1YWRyYXBob25pYyAoZnJvbnQmbmJzcDtsZWZ0LCBm
cm9udCZuYnNwO3JpZ2h0LCByZWFyJm5ic3A7bGVmdCwgcmVhciZuYnNwO3JpZ2h0KS48L3Q+Cisg
IDx0PjUgY2hhbm5lbHM6IDUuMCBzdXJyb3VuZCAoZnJvbnQmbmJzcDtsZWZ0LCBmcm9udCZuYnNw
O2NlbnRlciwgZnJvbnQmbmJzcDtyaWdodCwgcmVhciZuYnNwO2xlZnQsIHJlYXImbmJzcDtyaWdo
dCkuPC90PgorICA8dD42IGNoYW5uZWxzOiA1LjEgc3Vycm91bmQgKGZyb250Jm5ic3A7bGVmdCwg
ZnJvbnQmbmJzcDtjZW50ZXIsIGZyb250Jm5ic3A7cmlnaHQsIHJlYXImbmJzcDtsZWZ0LCByZWFy
Jm5ic3A7cmlnaHQsIExGRSkuPC90PgorICA8dD43IGNoYW5uZWxzOiA2LjEgc3Vycm91bmQgKGZy
b250Jm5ic3A7bGVmdCwgZnJvbnQmbmJzcDtjZW50ZXIsIGZyb250Jm5ic3A7cmlnaHQsIHNpZGUm
bmJzcDtsZWZ0LCBzaWRlJm5ic3A7cmlnaHQsIHJlYXImbmJzcDtjZW50ZXIsIExGRSkuPC90Pgor
ICA8dD44IGNoYW5uZWxzOiA3LjEgc3Vycm91bmQgKGZyb250Jm5ic3A7bGVmdCwgZnJvbnQmbmJz
cDtjZW50ZXIsIGZyb250Jm5ic3A7cmlnaHQsIHNpZGUmbmJzcDtsZWZ0LCBzaWRlJm5ic3A7cmln
aHQsIHJlYXImbmJzcDtsZWZ0LCByZWFyJm5ic3A7cmlnaHQsIExGRSk8L3Q+Cis8L2xpc3Q+Cis8
L3Q+Cis8dD4KK1RoaXMgc2V0IG9mIHN1cnJvdW5kIG9wdGlvbnMgYW5kIHNwZWFrZXIgbG9jYXRp
b24gb3JkZXJpbmdzIGlzIHRoZSBzYW1lCisgYXMgdGhvc2UgdXNlZCBieSB0aGUgVm9yYmlzIGNv
ZGVjIDx4cmVmIHRhcmdldD0idm9yYmlzLW1hcHBpbmciLz4uCitUaGUgb3JkZXJpbmcgaXMgZGlm
ZmVyZW50IGZyb20gdGhlIG9uZSB1c2VkIGJ5IHRoZQorIFdBVkUgPHhyZWYgdGFyZ2V0PSJ3YXZl
LW11bHRpY2hhbm5lbCIvPiBhbmQKKyBGcmVlIExvc3NsZXNzIEF1ZGlvIENvZGVjIChGTEFDKSA8
eHJlZiB0YXJnZXQ9ImZsYWMiLz4gZm9ybWF0cywKKyBzbyBjb3JyZWN0IG9yZGVyaW5nIHJlcXVp
cmVzIHBlcm11dGF0aW9uIG9mIHRoZSBvdXRwdXQgY2hhbm5lbHMgd2hlbiBkZWNvZGluZworIHRv
IG9yIGVuY29kaW5nIGZyb20gdGhvc2UgZm9ybWF0cy4KKydMRkUnIGhlcmUgcmVmZXJzIHRvIGEg
TG93IEZyZXF1ZW5jeSBFZmZlY3RzIGNoYW5uZWwsIG9mdGVuIG1hcHBlZCB0byBhCisgIHN1Yndv
b2ZlciB3aXRoIG5vIHBhcnRpY3VsYXIgc3BhdGlhbCBwb3NpdGlvbi4KK0ltcGxlbWVudGF0aW9u
cyBTSE9VTEQgaWRlbnRpZnkgJ3NpZGUnIG9yICdyZWFyJyBzcGVha2VyIGxvY2F0aW9ucyB3aXRo
CisgJ3N1cnJvdW5kJyBhbmQgJ2JhY2snIGFzIGFwcHJvcHJpYXRlIHdoZW4gaW50ZXJmYWNpbmcg
d2l0aCBhdWRpbyBmb3JtYXRzCisgb3Igc3lzdGVtcyB3aGljaCBwcmVmZXIgdGhhdCB0ZXJtaW5v
bG9neS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJjaGFubmVsX21hcHBp
bmdfMjU1IgorIHRpdGxlPSJDaGFubmVsIE1hcHBpbmcgRmFtaWx5IDI1NSI+Cis8dD4KK0FsbG93
ZWQgbnVtYmVycyBvZiBjaGFubmVsczogMS4uLjI1NS4KK05vIGRlZmluZWQgY2hhbm5lbCBtZWFu
aW5nLgorPC90PgorPHQ+CitDaGFubmVscyBhcmUgdW5pZGVudGlmaWVkLgorR2VuZXJhbC1wdXJw
b3NlIHBsYXllcnMgU0hPVUxEIE5PVCBhdHRlbXB0IHRvIHBsYXkgdGhlc2Ugc3RyZWFtcy4KK09m
ZmxpbmUgaW1wbGVtZW50YXRpb25zIE1BWSBkZWludGVybGVhdmUgdGhlIG91dHB1dCBpbnRvIHNl
cGFyYXRlIFBDTSBmaWxlcywKKyBvbmUgcGVyIGNoYW5uZWwuCitJbXBsZW1lbnRhdGlvbnMgU0hP
VUxEIE5PVCBwcm9kdWNlIG91dHB1dCBmb3IgY2hhbm5lbHMgbWFwcGVkIHRvIHN0cmVhbSBpbmRl
eAorIDI1NSAocHVyZSBzaWxlbmNlKSB1bmxlc3MgdGhleSBoYXZlIG5vIG90aGVyIHdheSB0byBp
bmRpY2F0ZSB0aGUgaW5kZXggb2YKKyBub24tc2lsZW50IGNoYW5uZWxzLgorPC90PgorPC9zZWN0
aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImNoYW5uZWxfbWFwcGluZ191bmRlZmluZWQiCisgdGl0
bGU9IlVuZGVmaW5lZCBDaGFubmVsIE1hcHBpbmdzIj4KKzx0PgorVGhlIHJlbWFpbmluZyBjaGFu
bmVsIG1hcHBpbmcgZmFtaWxpZXMgKDIuLi4yNTQpIGFyZSByZXNlcnZlZC4KK0EgZGVtdXhlciBp
bXBsZW1lbnRhdGlvbiBlbmNvdW50ZXJpbmcgYSByZXNlcnZlZCBjaGFubmVsIG1hcHBpbmcgZmFt
aWx5IHZhbHVlCisgU0hPVUxEIGFjdCBhcyB0aG91Z2ggdGhlIHZhbHVlIGlzIDI1NS4KKzwvdD4K
Kzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJkb3dubWl4IiB0aXRsZT0iRG93bm1peGlu
ZyI+Cis8dD4KK0FuIE9nZyBPcHVzIHBsYXllciBNVVNUIHN1cHBvcnQgYW55IHZhbGlkIGNoYW5u
ZWwgbWFwcGluZyB3aXRoIGEgY2hhbm5lbAorIG1hcHBpbmcgZmFtaWx5IG9mIDAgb3IgMSwgZXZl
biBpZiB0aGUgbnVtYmVyIG9mIGNoYW5uZWxzIGRvZXMgbm90IG1hdGNoIHRoZQorIHBoeXNpY2Fs
bHkgY29ubmVjdGVkIGF1ZGlvIGhhcmR3YXJlLgorUGxheWVycyBTSE9VTEQgcGVyZm9ybSBjaGFu
bmVsIG1peGluZyB0byBpbmNyZWFzZSBvciByZWR1Y2UgdGhlIG51bWJlciBvZgorIGNoYW5uZWxz
IGFzIG5lZWRlZC4KKzwvdD4KKworPHQ+CitJbXBsZW1lbnRhdGlvbnMgTUFZIHVzZSB0aGUgbWF0
cmljZXMgaW4KKyBGaWd1cmVzJm5ic3A7PHhyZWYgdGFyZ2V0PSJkb3dubWl4LW1hdHJpeC0zIiBm
b3JtYXQ9ImNvdW50ZXIiLz4KKyB0aHJvdWdoJm5ic3A7PHhyZWYgdGFyZ2V0PSJkb3dubWl4LW1h
dHJpeC04IiBmb3JtYXQ9ImNvdW50ZXIiLz4gdG8gaW1wbGVtZW50CisgZG93bm1peGluZyBmcm9t
IG11bHRpY2hhbm5lbCBmaWxlcyB1c2luZworIDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5n
XzEiPkNoYW5uZWwgTWFwcGluZyBGYW1pbHkgMTwveHJlZj4sIHdoaWNoIGFyZQorIGtub3duIHRv
IGdpdmUgYWNjZXB0YWJsZSByZXN1bHRzIGZvciBzdGVyZW8uCitNYXRyaWNlcyBmb3IgMyBhbmQg
NCBjaGFubmVscyBhcmUgbm9ybWFsaXplZCBzbyBlYWNoIGNvZWZmaWNpZW50IHJvdyBzdW1zCisg
dG8gMSB0byBhdm9pZCBjbGlwcGluZy4KK0ZvciA1IG9yIG1vcmUgY2hhbm5lbHMgdGhleSBhcmUg
bm9ybWFsaXplZCB0byAyIGFzIGEgY29tcHJvbWlzZSBiZXR3ZWVuCisgY2xpcHBpbmcgYW5kIGR5
bmFtaWMgcmFuZ2UgcmVkdWN0aW9uLgorPC90PgorPHQ+CitJbiB0aGVzZSBtYXRyaWNlcyB0aGUg
ZnJvbnQgbGVmdCBhbmQgZnJvbnQgcmlnaHQgY2hhbm5lbHMgYXJlIGdlbmVyYWxseQorcGFzc2Vk
IHRocm91Z2ggZGlyZWN0bHkuCitXaGVuIGEgc3Vycm91bmQgY2hhbm5lbCBpcyBzcGxpdCBiZXR3
ZWVuIGJvdGggdGhlIGxlZnQgYW5kIHJpZ2h0IHN0ZXJlbworIGNoYW5uZWxzLCBjb2VmZmljaWVu
dHMgYXJlIGNob3NlbiBzbyB0aGVpciBzcXVhcmVzIHN1bSB0byAxLCB3aGljaAorIGhlbHBzIHBy
ZXNlcnZlIHRoZSBwZXJjZWl2ZWQgaW50ZW5zaXR5LgorUmVhciBjaGFubmVscyBhcmUgbWl4ZWQg
bW9yZSBkaWZmdXNlbHkgb3IgYXR0ZW51YXRlZCB0byBtYWludGFpbiBmb2N1cworIG9uIHRoZSBm
cm9udCBjaGFubmVscy4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9ImRvd25taXgtbWF0cml4LTMi
CisgdGl0bGU9IlN0ZXJlbyBkb3dubWl4IG1hdHJpeCBmb3IgdGhlIGxpbmVhciBzdXJyb3VuZCBj
aGFubmVsIG1hcHBpbmciCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij48IVtDREFUQVsKK0wgb3V0cHV0ID0gKCAwLjU4NTc4NiAqIGxlZnQgKyAwLjQxNDIxNCAqIGNl
bnRlciAgICAgICAgICAgICAgICAgICAgKQorUiBvdXRwdXQgPSAoICAgICAgICAgICAgICAgICAg
IDAuNDE0MjE0ICogY2VudGVyICsgMC41ODU3ODYgKiByaWdodCApCitdXT48L2FydHdvcms+Cis8
cG9zdGFtYmxlPgorRXhhY3QgY29lZmZpY2llbnQgdmFsdWVzIGFyZSAxIGFuZCAxL3NxcnQoMiks
IG11bHRpcGxpZWQgYnkKKyAxLygxJm5ic3A7KyZuYnNwOzEvc3FydCgyKSkgZm9yIG5vcm1hbGl6
YXRpb24uCis8L3Bvc3RhbWJsZT4KKzwvZmlndXJlPgorCis8ZmlndXJlIGFuY2hvcj0iZG93bm1p
eC1tYXRyaXgtNCIKKyB0aXRsZT0iU3RlcmVvIGRvd25taXggbWF0cml4IGZvciB0aGUgcXVhZHJh
cGhvbmljIGNoYW5uZWwgbWFwcGluZyIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWdu
PSJjZW50ZXIiPjwhW0NEQVRBWworLyAgICAgICAgICBcICAgLyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcIC8gRkwgXAorfCBMIG91dHB1dCB8ICAgfCAwLjQyMjY1MCAwLjAw
MDAwMCAwLjM2NjAyNSAwLjIxMTMyNSB8IHwgRlIgfAorfCBSIG91dHB1dCB8ID0gfCAwLjAwMDAw
MCAwLjQyMjY1MCAwLjIxMTMyNSAwLjM2NjAyNSB8IHwgUkwgfAorXCAgICAgICAgICAvICAgXCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvIFwgUlIgLworXV0+PC9hcnR3b3Jr
PgorPHBvc3RhbWJsZT4KK0V4YWN0IGNvZWZmaWNpZW50IHZhbHVlcyBhcmUgMSwgc3FydCgzKS8y
IGFuZCAxLzIsIG11bHRpcGxpZWQgYnkKKyAxLygxJm5ic3A7KyZuYnNwO3NxcnQoMykvMiZuYnNw
OysmbmJzcDsxLzIpIGZvciBub3JtYWxpemF0aW9uLgorPC9wb3N0YW1ibGU+Cis8L2ZpZ3VyZT4K
KworPGZpZ3VyZSBhbmNob3I9ImRvd25taXgtbWF0cml4LTUiCisgdGl0bGU9IlN0ZXJlbyBkb3du
bWl4IG1hdHJpeCBmb3IgdGhlIDUuMCBzdXJyb3VuZCBtYXBwaW5nIgorIGFsaWduPSJjZW50ZXIi
PgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvIEZMIFwKKy8gICBcICAgLyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHwgRkMgfAorfCBM
IHwgICB8IDAuNjUwODAyIDAuNDYwMTg2IDAuMDAwMDAwIDAuNTYzNjExIDAuMzI1NDAxIHwgfCBG
UiB8Cit8IFIgfCA9IHwgMC4wMDAwMDAgMC40NjAxODYgMC42NTA4MDIgMC4zMjU0MDEgMC41NjM2
MTEgfCB8IFJMIHwKK1wgICAvICAgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvIHwgUlIgfAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXCAgICAvCitdXT48L2FydHdvcms+Cis8cG9zdGFtYmxlPgor
RXhhY3QgY29lZmZpY2llbnQgdmFsdWVzIGFyZSAxLCAxL3NxcnQoMiksIHNxcnQoMykvMiBhbmQg
MS8yLCBtdWx0aXBsaWVkIGJ5CisgMi8oMSZuYnNwOysmbmJzcDsxL3NxcnQoMikmbmJzcDsrJm5i
c3A7c3FydCgzKS8yJm5ic3A7KyZuYnNwOzEvMikKKyBmb3Igbm9ybWFsaXphdGlvbi4KKzwvcG9z
dGFtYmxlPgorPC9maWd1cmU+CisKKzxmaWd1cmUgYW5jaG9yPSJkb3dubWl4LW1hdHJpeC02Igor
IHRpdGxlPSJTdGVyZW8gZG93bm1peCBtYXRyaXggZm9yIHRoZSA1LjEgc3Vycm91bmQgbWFwcGlu
ZyIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC9GTCBcCisvIFwgICAvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwgfEZDIHwKK3xMfCAgIHwgMC41MjkwNjcgMC4zNzQxMDcgMC4w
MDAwMDAgMC40NTgxODYgMC4yNjQ1MzQgMC4zNzQxMDcgfCB8RlIgfAorfFJ8ID0gfCAwLjAwMDAw
MCAwLjM3NDEwNyAwLjUyOTA2NyAwLjI2NDUzNCAwLjQ1ODE4NiAwLjM3NDEwNyB8IHxSTCB8Citc
IC8gICBcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8gfFJSIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcTEZFLworXV0+PC9hcnR3b3JrPgorPHBvc3RhbWJsZT4KK0V4
YWN0IGNvZWZmaWNpZW50IHZhbHVlcyBhcmUgMSwgMS9zcXJ0KDIpLCBzcXJ0KDMpLzIgYW5kIDEv
MiwgbXVsdGlwbGllZCBieQorMi8oMSZuYnNwOysmbmJzcDsxL3NxcnQoMikmbmJzcDsrJm5ic3A7
c3FydCgzKS8yJm5ic3A7KyZuYnNwOzEvMiArIDEvc3FydCgyKSkKKyBmb3Igbm9ybWFsaXphdGlv
bi4KKzwvcG9zdGFtYmxlPgorPC9maWd1cmU+CisKKzxmaWd1cmUgYW5jaG9yPSJkb3dubWl4LW1h
dHJpeC03IgorIHRpdGxlPSJTdGVyZW8gZG93bm1peCBtYXRyaXggZm9yIHRoZSA2LjEgc3Vycm91
bmQgbWFwcGluZyIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworIC8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorIHwgMC40NTUzMTAgMC4zMjE5NTMgMC4wMDAwMDAgMC4zOTQz
MTAgMC4yMjc2NTUgMC4yNzg4MTkgMC4zMjE5NTMgfAorIHwgMC4wMDAwMDAgMC4zMjE5NTMgMC40
NTUzMTAgMC4yMjc2NTUgMC4zOTQzMTAgMC4yNzg4MTkgMC4zMjE5NTMgfAorIFwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLwor
XV0+PC9hcnR3b3JrPgorPHBvc3RhbWJsZT4KK0V4YWN0IGNvZWZmaWNpZW50IHZhbHVlcyBhcmUg
MSwgMS9zcXJ0KDIpLCBzcXJ0KDMpLzIsIDEvMiBhbmQKKyBzcXJ0KDMpLzIvc3FydCgyKSwgbXVs
dGlwbGllZCBieQorIDIvKDEmbmJzcDsrJm5ic3A7MS9zcXJ0KDIpJm5ic3A7KyZuYnNwO3NxcnQo
MykvMiZuYnNwOysmbmJzcDsxLzIgKworIHNxcnQoMykvMi9zcXJ0KDIpICsgMS9zcXJ0KDIpKSBm
b3Igbm9ybWFsaXphdGlvbi4KK1RoZSBjb2VmZmljaWVudHMgYXJlIGluIHRoZSBzYW1lIG9yZGVy
IGFzIGluIDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nXzEiIC8+LAorIGFuZCB0aGUgbWF0
cmljZXMgYWJvdmUuCis8L3Bvc3RhbWJsZT4KKzwvZmlndXJlPgorCis8ZmlndXJlIGFuY2hvcj0i
ZG93bm1peC1tYXRyaXgtOCIKKyB0aXRsZT0iU3RlcmVvIGRvd25taXggbWF0cml4IGZvciB0aGUg
Ny4xIHN1cnJvdW5kIG1hcHBpbmciCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0i
Y2VudGVyIj48IVtDREFUQVsKKy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKK3wgLjM4ODYzMSAuMjc0ODA0IC4wMDAwMDAg
LjMzNjU2NSAuMTk0MzE2IC4zMzY1NjUgLjE5NDMxNiAuMjc0ODA0IHwKK3wgLjAwMDAwMCAuMjc0
ODA0IC4zODg2MzEgLjE5NDMxNiAuMzM2NTY1IC4xOTQzMTYgLjMzNjU2NSAuMjc0ODA0IHwKK1wg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8KK11dPjwvYXJ0d29yaz4KKzxwb3N0YW1ibGU+CitFeGFjdCBjb2VmZmljaWVudCB2
YWx1ZXMgYXJlIDEsIDEvc3FydCgyKSwgc3FydCgzKS8yIGFuZCAxLzIsIG11bHRpcGxpZWQgYnkK
KyAyLygyJm5ic3A7KyZuYnNwOzIvc3FydCgyKSZuYnNwOysmbmJzcDtzcXJ0KDMpKSBmb3Igbm9y
bWFsaXphdGlvbi4KK1RoZSBjb2VmZmljaWVudHMgYXJlIGluIHRoZSBzYW1lIG9yZGVyIGFzIGlu
IDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nXzEiIC8+LAorIGFuZCB0aGUgbWF0cmljZXMg
YWJvdmUuCis8L3Bvc3RhbWJsZT4KKzwvZmlndXJlPgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlv
bj4gPCEtLSBlbmQgY2hhbm5lbF9tYXBwaW5nX3RhYmxlIC0tPgorCis8L3NlY3Rpb24+IDwhLS0g
ZW5kIGlkX2hlYWRlciAtLT4KKworPHNlY3Rpb24gYW5jaG9yPSJjb21tZW50X2hlYWRlciIgdGl0
bGU9IkNvbW1lbnQgSGVhZGVyIj4KKworPGZpZ3VyZSBhbmNob3I9ImNvbW1lbnRfaGVhZGVyX3Bh
Y2tldCIgdGl0bGU9IkNvbW1lbnQgSGVhZGVyIFBhY2tldCIKKyBhbGlnbj0iY2VudGVyIj4KKzxh
cnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAg
ICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcg
OCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
Cit8ICAgICAgJ08nICAgICAgfCAgICAgICdwJyAgICAgIHwgICAgICAndScgICAgICB8ICAgICAg
J3MnICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAnVCcgICAgICB8ICAgICAgJ2EnICAgICAgfCAg
ICAgICdnJyAgICAgIHwgICAgICAncycgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAg
ICAgICAgIFZlbmRvciBTdHJpbmcgTGVuZ3RoICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgICAgICAgICAgIFZlbmRvciBTdHJpbmcuLi4g
ICAgICAgICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAg
ICAgICAgICBVc2VyIENvbW1lbnQgTGlzdCBMZW5ndGggICAgICAgICAgICAgICAgICAgIHwKKyst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rCit8ICAgICAgICAgICAgICAgICBVc2VyIENvbW1lbnQgIzAgU3RyaW5nIExlbmd0aCAg
ICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAg
IFVzZXIgQ29tbWVudCAjMCBTdHJpbmcuLi4gICAgICAgICAgICAgICAgICAgOgorfCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwK
KystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rCit8ICAgICAgICAgICAgICAgICBVc2VyIENvbW1lbnQgIzEgU3RyaW5nIExlbmd0
aCAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKKzogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6CitdXT48L2FydHdvcms+Cis8
L2ZpZ3VyZT4KKworPHQ+CitUaGUgY29tbWVudCBoZWFkZXIgY29uc2lzdHMgb2YgYSA2NC1iaXQg
bWFnaWMgc2lnbmF0dXJlLCBmb2xsb3dlZCBieSBkYXRhIGluCisgdGhlIHNhbWUgZm9ybWF0IGFz
IHRoZSA8eHJlZiB0YXJnZXQ9InZvcmJpcy1jb21tZW50Ii8+IGhlYWRlciB1c2VkIGluIE9nZwor
IFZvcmJpcywgZXhjZXB0IChsaWtlIE9nZyBUaGVvcmEgYW5kIFNwZWV4KSB0aGUgZmluYWwgImZy
YW1pbmcgYml0IiBzcGVjaWZpZWQKKyBpbiB0aGUgVm9yYmlzIHNwZWMgaXMgbm90IHByZXNlbnQu
Cis8bGlzdCBzdHlsZT0ibnVtYmVycyI+Cis8dD5NYWdpYyBTaWduYXR1cmU6Cis8dnNwYWNlIGJs
YW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgYW4gOC1vY3RldCAoNjQtYml0KSBmaWVsZCB0aGF0IGFs
bG93cyBjb2RlYyBpZGVudGlmaWNhdGlvbiBhbmQgaXMKKyBodW1hbi1yZWFkYWJsZS4KK0l0IGNv
bnRhaW5zLCBpbiBvcmRlciwgdGhlIG1hZ2ljIG51bWJlcnM6Cis8bGlzdCBzdHlsZT0iZW1wdHki
PgorPHQ+MHg0RiAnTyc8L3Q+Cis8dD4weDcwICdwJzwvdD4KKzx0PjB4NzUgJ3UnPC90PgorPHQ+
MHg3MyAncyc8L3Q+Cis8dD4weDU0ICdUJzwvdD4KKzx0PjB4NjEgJ2EnPC90PgorPHQ+MHg2NyAn
Zyc8L3Q+Cis8dD4weDczICdzJzwvdD4KKzwvbGlzdD4KK1N0YXJ0aW5nIHdpdGggIk9wIiBoZWxw
cyBkaXN0aW5ndWlzaCBpdCBmcm9tIGF1ZGlvIGRhdGEgcGFja2V0cywgYXMgdGhpcyBpcyBhbgor
IGludmFsaWQgVE9DIHNlcXVlbmNlLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8
dD5WZW5kb3IgU3RyaW5nIExlbmd0aCAoMzIgYml0cywgdW5zaWduZWQsIGxpdHRsZSBlbmRpYW4p
OgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGlzIGZpZWxkIGdpdmVzIHRoZSBsZW5ndGgg
b2YgdGhlIGZvbGxvd2luZyB2ZW5kb3Igc3RyaW5nLCBpbiBvY3RldHMuCitJdCBNVVNUIE5PVCBp
bmRpY2F0ZSB0aGF0IHRoZSB2ZW5kb3Igc3RyaW5nIGlzIGxvbmdlciB0aGFuIHRoZSByZXN0IG9m
IHRoZQorIHBhY2tldC4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorPC90PgorPHQ+VmVuZG9y
IFN0cmluZyAodmFyaWFibGUgbGVuZ3RoLCBVVEYtOCB2ZWN0b3IpOgorPHZzcGFjZSBibGFua0xp
bmVzPSIxIi8+CitUaGlzIGlzIGEgc2ltcGxlIGh1bWFuLXJlYWRhYmxlIHRhZyBmb3IgdmVuZG9y
IGluZm9ybWF0aW9uLCBlbmNvZGVkIGFzIGEgVVRGLTgKKyBzdHJpbmcmbmJzcDs8eHJlZiB0YXJn
ZXQ9IlJGQzM2MjkiLz4uCitObyB0ZXJtaW5hdGluZyBudWxsIG9jdGV0IGlzIG5lY2Vzc2FyeS4K
Kzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhpcyB0YWcgaXMgaW50ZW5kZWQgdG8gaWRlbnRp
ZnkgdGhlIGNvZGVjIGVuY29kZXIgYW5kIGVuY2Fwc3VsYXRpb24KKyBpbXBsZW1lbnRhdGlvbnMs
IGZvciB0cmFjaW5nIGRpZmZlcmVuY2VzIGluIHRlY2huaWNhbCBiZWhhdmlvci4KK1VzZXItZmFj
aW5nIGFwcGxpY2F0aW9ucyBjYW4gdXNlIHRoZSAnRU5DT0RFUicgdXNlciBjb21tZW50IHRhZyB0
byBpZGVudGlmeQorIHRoZW1zZWx2ZXMuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwvdD4K
Kzx0PlVzZXIgQ29tbWVudCBMaXN0IExlbmd0aCAoMzIgYml0cywgdW5zaWduZWQsIGxpdHRsZSBl
bmRpYW4pOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGlzIGZpZWxkIGluZGljYXRlcyB0
aGUgbnVtYmVyIG9mIHVzZXItc3VwcGxpZWQgY29tbWVudHMuCitJdCBNQVkgaW5kaWNhdGUgdGhl
cmUgYXJlIHplcm8gdXNlci1zdXBwbGllZCBjb21tZW50cywgaW4gd2hpY2ggY2FzZSB0aGVyZSBh
cmUKKyBubyBhZGRpdGlvbmFsIGZpZWxkcyBpbiB0aGUgcGFja2V0LgorSXQgTVVTVCBOT1QgaW5k
aWNhdGUgdGhhdCB0aGVyZSBhcmUgc28gbWFueSBjb21tZW50cyB0aGF0IHRoZSBjb21tZW50IHN0
cmluZworIGxlbmd0aHMgd291bGQgcmVxdWlyZSBtb3JlIGRhdGEgdGhhbiBpcyBhdmFpbGFibGUg
aW4gdGhlIHJlc3Qgb2YgdGhlIHBhY2tldC4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorPC90
PgorPHQ+VXNlciBDb21tZW50ICNpIFN0cmluZyBMZW5ndGggKDMyIGJpdHMsIHVuc2lnbmVkLCBs
aXR0bGUgZW5kaWFuKToKKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhpcyBmaWVsZCBnaXZl
cyB0aGUgbGVuZ3RoIG9mIHRoZSBmb2xsb3dpbmcgdXNlciBjb21tZW50IHN0cmluZywgaW4gb2N0
ZXRzLgorVGhlcmUgaXMgb25lIGZvciBlYWNoIHVzZXIgY29tbWVudCBpbmRpY2F0ZWQgYnkgdGhl
ICd1c2VyIGNvbW1lbnQgbGlzdCBsZW5ndGgnCisgZmllbGQuCitJdCBNVVNUIE5PVCBpbmRpY2F0
ZSB0aGF0IHRoZSBzdHJpbmcgaXMgbG9uZ2VyIHRoYW4gdGhlIHJlc3Qgb2YgdGhlIHBhY2tldC4K
Kzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorPC90PgorPHQ+VXNlciBDb21tZW50ICNpIFN0cmlu
ZyAodmFyaWFibGUgbGVuZ3RoLCBVVEYtOCB2ZWN0b3IpOgorPHZzcGFjZSBibGFua0xpbmVzPSIx
Ii8+CitUaGlzIGZpZWxkIGNvbnRhaW5zIGEgc2luZ2xlIHVzZXIgY29tbWVudCBlbmNvZGVkIGFz
IGEgVVRGLTgKKyBzdHJpbmcmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzM2MjkiLz4uCitUaGVyZSBp
cyBvbmUgZm9yIGVhY2ggdXNlciBjb21tZW50IGluZGljYXRlZCBieSB0aGUgJ3VzZXIgY29tbWVu
dCBsaXN0IGxlbmd0aCcKKyBmaWVsZC4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitUaGUg
dmVuZG9yIHN0cmluZyBsZW5ndGggYW5kIHVzZXIgY29tbWVudCBsaXN0IGxlbmd0aCBhcmUgUkVR
VUlSRUQsIGFuZAorIGltcGxlbWVudGF0aW9ucyBTSE9VTEQgdHJlYXQgYSBzdHJlYW0gYXMgaW52
YWxpZCBpZiBpdCBjb250YWlucyBhIGNvbW1lbnQKKyBoZWFkZXIgdGhhdCBkb2VzIG5vdCBoYXZl
IGVub3VnaCBkYXRhIGZvciB0aGVzZSBmaWVsZHMsIG9yIHRoYXQgZG9lcyBub3QKKyBjb250YWlu
IGVub3VnaCBkYXRhIGZvciB0aGUgY29ycmVzcG9uZGluZyB2ZW5kb3Igc3RyaW5nIG9yIHVzZXIg
Y29tbWVudHMgdGhleQorIGRlc2NyaWJlLgorTWFraW5nIHRoaXMgY2hlY2sgYmVmb3JlIGFsbG9j
YXRpbmcgdGhlIGFzc29jaWF0ZWQgbWVtb3J5IHRvIGNvbnRhaW4gdGhlIGRhdGEKKyBoZWxwcyBw
cmV2ZW50IGEgcG9zc2libGUgRGVuaWFsLW9mLVNlcnZpY2UgKERvUykgYXR0YWNrIGZyb20gc21h
bGwgY29tbWVudAorIGhlYWRlcnMgdGhhdCBjbGFpbSB0byBjb250YWluIHN0cmluZ3MgbG9uZ2Vy
IHRoYW4gdGhlIGVudGlyZSBwYWNrZXQgb3IgbW9yZQorIHVzZXIgY29tbWVudHMgdGhhbiB0aGFu
IGNvdWxkIHBvc3NpYmx5IGZpdCBpbiB0aGUgcGFja2V0LgorPC90PgorCis8dD4KK0ltbWVkaWF0
ZWx5IGZvbGxvd2luZyB0aGUgdXNlciBjb21tZW50IGxpc3QsIHRoZSBjb21tZW50IGhlYWRlciBN
QVkKKyBjb250YWluIHplcm8tcGFkZGluZyBvciBvdGhlciBiaW5hcnkgZGF0YSB3aGljaCBpcyBu
b3Qgc3BlY2lmaWVkIGhlcmUuCitJZiB0aGUgbGVhc3Qtc2lnbmlmaWNhbnQgYml0IG9mIHRoZSBm
aXJzdCBieXRlIG9mIHRoaXMgZGF0YSBpcyAxLCB0aGVuIGVkaXRvcnMKKyBTSE9VTEQgcHJlc2Vy
dmUgdGhlIGNvbnRlbnRzIG9mIHRoaXMgZGF0YSB3aGVuIHVwZGF0aW5nIHRoZSB0YWdzLCBidXQg
aWYgdGhpcworIGJpdCBpcyAwLCBhbGwgc3VjaCBkYXRhIE1BWSBiZSB0cmVhdGVkIGFzIHBhZGRp
bmcsIGFuZCB0cnVuY2F0ZWQgb3IgZGlzY2FyZGVkCisgYXMgZGVzaXJlZC4KK1RoaXMgYWxsb3dz
IGluZm9ybWFsIGV4cGVyaW1lbnRhdGlvbiB3aXRoIHRoZSBmb3JtYXQgb2YgdGhpcyBiaW5hcnkg
ZGF0YSB1bnRpbAorIGl0IGNhbiBiZSBzcGVjaWZpZWQgbGF0ZXIuCis8L3Q+CisKKzx0PgorVGhl
IGNvbW1lbnQgaGVhZGVyIGNhbiBiZSBhcmJpdHJhcmlseSBsYXJnZSBhbmQgbWlnaHQgYmUgc3By
ZWFkIG92ZXIgYSBsYXJnZQorIG51bWJlciBvZiBPZ2cgcGFnZXMuCitJbXBsZW1lbnRhdGlvbnMg
TVVTVCBhdm9pZCBhdHRlbXB0aW5nIHRvIGFsbG9jYXRlIGV4Y2Vzc2l2ZSBhbW91bnRzIG9mIG1l
bW9yeQorIHdoZW4gcHJlc2VudGVkIHdpdGggYSB2ZXJ5IGxhcmdlIGNvbW1lbnQgaGVhZGVyLgor
VG8gYWNjb21wbGlzaCB0aGlzLCBpbXBsZW1lbnRhdGlvbnMgTUFZIHRyZWF0IGEgc3RyZWFtIGFz
IGludmFsaWQgaWYgaXQgaGFzIGEKKyBjb21tZW50IGhlYWRlciBsYXJnZXIgdGhhbiAxMjUsODI5
LDEyMCZuYnNwO29jdGV0cyAoMTIwJm5ic3A7TUIpLCBhbmQgTUFZCisgaWdub3JlIGluZGl2aWR1
YWwgY29tbWVudHMgdGhhdCBhcmUgbm90IGZ1bGx5IGNvbnRhaW5lZCB3aXRoaW4gdGhlIGZpcnN0
CisgNjEsNDQwJm5ic3A7b2N0ZXRzIG9mIHRoZSBjb21tZW50IGhlYWRlci4KKzwvdD4KKworPHNl
Y3Rpb24gYW5jaG9yPSJjb21tZW50X2Zvcm1hdCIgdGl0bGU9IlRhZyBEZWZpbml0aW9ucyI+Cis8
dD4KK1RoZSB1c2VyIGNvbW1lbnQgc3RyaW5ncyBmb2xsb3cgdGhlIE5BTUU9dmFsdWUgZm9ybWF0
IGRlc2NyaWJlZCBieQorIDx4cmVmIHRhcmdldD0idm9yYmlzLWNvbW1lbnQiLz4gd2l0aCB0aGUg
c2FtZSByZWNvbW1lbmRlZCB0YWcgbmFtZXM6CisgQVJUSVNULCBUSVRMRSwgREFURSwgQUxCVU0s
IGFuZCBzbyBvbi4KKzwvdD4KKzx0PgorVHdvIG5ldyBjb21tZW50IHRhZ3MgYXJlIGludHJvZHVj
ZWQgaGVyZToKKzwvdD4KKworPHQ+Rmlyc3QsIGFuIG9wdGlvbmFsIGdhaW4gZm9yIHRyYWNrIG5v
cm1hbGl6YXRpb246PC90PgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWdu
PSJsZWZ0Ij48IVtDREFUQVsKK1IxMjhfVFJBQ0tfR0FJTj0tNTczCitdXT48L2FydHdvcms+Cis8
L2ZpZ3VyZT4KKzx0PgorIHJlcHJlc2VudGluZyB0aGUgdm9sdW1lIHNoaWZ0IG5lZWRlZCB0byBu
b3JtYWxpemUgdGhlIHRyYWNrJ3Mgdm9sdW1lCisgZHVyaW5nIGlzb2xhdGVkIHBsYXliYWNrLCBp
biByYW5kb20gc2h1ZmZsZSwgYW5kIHNvIG9uLgorVGhlIGdhaW4gaXMgYSBRNy44IGZpeGVkIHBv
aW50IG51bWJlciBpbiBkQiwgYXMgaW4gdGhlIElEIGhlYWRlcidzICdvdXRwdXQKKyBnYWluJyBm
aWVsZC4KK1RoaXMgdGFnIGlzIHNpbWlsYXIgdG8gdGhlIFJFUExBWUdBSU5fVFJBQ0tfR0FJTiB0
YWcgaW4KKyBWb3JiaXMmbmJzcDs8eHJlZiB0YXJnZXQ9InJlcGxheS1nYWluIi8+LCBleGNlcHQg
dGhhdCB0aGUgbm9ybWFsIHZvbHVtZQorIHJlZmVyZW5jZSBpcyB0aGUgPHhyZWYgdGFyZ2V0PSJF
QlUtUjEyOCIvPiBzdGFuZGFyZC4KKzwvdD4KKzx0PlNlY29uZCwgYW4gb3B0aW9uYWwgZ2FpbiBm
b3IgYWxidW0gbm9ybWFsaXphdGlvbjo8L3Q+Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFy
dHdvcmsgYWxpZ249ImxlZnQiPjwhW0NEQVRBWworUjEyOF9BTEJVTV9HQUlOPTExMQorXV0+PC9h
cnR3b3JrPgorPC9maWd1cmU+Cis8dD4KKyByZXByZXNlbnRpbmcgdGhlIHZvbHVtZSBzaGlmdCBu
ZWVkZWQgdG8gbm9ybWFsaXplIHRoZSBvdmVyYWxsIHZvbHVtZSB3aGVuCisgcGxheWVkIGFzIHBh
cnQgb2YgYSBwYXJ0aWN1bGFyIGNvbGxlY3Rpb24gb2YgdHJhY2tzLgorVGhlIGdhaW4gaXMgYWxz
byBhIFE3LjggZml4ZWQgcG9pbnQgbnVtYmVyIGluIGRCLCBhcyBpbiB0aGUgSUQgaGVhZGVyJ3MK
KyAnb3V0cHV0IGdhaW4nIGZpZWxkLgorVGhlIHZhbHVlcyAnLTU3MycgYW5kICcxMTEnIGdpdmVu
IGhlcmUgYXJlIGp1c3QgZXhhbXBsZXMuCis8L3Q+Cis8dD4KK0FuIE9nZyBPcHVzIHN0cmVhbSBN
VVNUIE5PVCBoYXZlIG1vcmUgdGhhbiBvbmUgb2YgZWFjaCBvZiB0aGVzZSB0YWdzLCBhbmQgaWYK
KyBwcmVzZW50IHRoZWlyIHZhbHVlcyBNVVNUIGJlIGFuIGludGVnZXIgZnJvbSAtMzI3NjggdG8g
MzI3NjcsIGluY2x1c2l2ZSwKKyByZXByZXNlbnRlZCBpbiBBU0NJSSBhcyBhIGJhc2UgMTAgbnVt
YmVyIHdpdGggbm8gd2hpdGVzcGFjZS4KK0EgbGVhZGluZyAnKycgb3IgJy0nIGNoYXJhY3RlciBp
cyB2YWxpZC4KK0xlYWRpbmcgemVyb3MgYXJlIGFsc28gcGVybWl0dGVkLCBidXQgdGhlIHZhbHVl
IE1VU1QgYmUgcmVwcmVzZW50ZWQgYnkKKyBubyBtb3JlIHRoYW4gNiBjaGFyYWN0ZXJzLgorT3Ro
ZXIgbm9uLWRpZ2l0IGNoYXJhY3RlcnMgTVVTVCBOT1QgYmUgcHJlc2VudC4KKzwvdD4KKzx0Pgor
SWYgcHJlc2VudCwgUjEyOF9UUkFDS19HQUlOIGFuZCBSMTI4X0FMQlVNX0dBSU4gTVVTVCBjb3Jy
ZWN0bHkgcmVwcmVzZW50CisgdGhlIFIxMjggbm9ybWFsaXphdGlvbiBnYWluIHJlbGF0aXZlIHRv
IHRoZSAnb3V0cHV0IGdhaW4nIGZpZWxkIHNwZWNpZmllZAorIGluIHRoZSBJRCBoZWFkZXIuCitJ
ZiBhIHBsYXllciBjaG9vc2VzIHRvIG1ha2UgdXNlIG9mIHRoZSBSMTI4X1RSQUNLX0dBSU4gdGFn
IG9yIHRoZQorIFIxMjhfQUxCVU1fR0FJTiB0YWcsIGl0IE1VU1QgYXBwbHkgdGhvc2UgZ2FpbnMK
KyA8c3Bhbnggc3R5bGU9ImVtcGgiPmluIGFkZGl0aW9uPC9zcGFueD4gdG8gdGhlICdvdXRwdXQg
Z2FpbicgdmFsdWUuCitJZiBhIHRvb2wgbW9kaWZpZXMgdGhlIElEIGhlYWRlcidzICdvdXRwdXQg
Z2FpbicgZmllbGQsIGl0IE1VU1QgYWxzbyB1cGRhdGUgb3IKKyByZW1vdmUgdGhlIFIxMjhfVFJB
Q0tfR0FJTiBhbmQgUjEyOF9BTEJVTV9HQUlOIGNvbW1lbnQgdGFncyBpZiBwcmVzZW50LgorQSBt
dXhlciBTSE9VTEQgcGxhY2UgdGhlIGdhaW4gaXQgd2FudHMgb3RoZXIgdG9vbHMgdG8gdXNlIGJ5
IGRlZmF1bHQgaW50byB0aGUKKyAnb3V0cHV0IGdhaW4nIGZpZWxkLCBhbmQgbm90IHRoZSBjb21t
ZW50IHRhZy4KKzwvdD4KKzx0PgorVG8gYXZvaWQgY29uZnVzaW9uIHdpdGggbXVsdGlwbGUgbm9y
bWFsaXphdGlvbiBzY2hlbWVzLCBhbiBPcHVzIGNvbW1lbnQgaGVhZGVyCisgU0hPVUxEIE5PVCBj
b250YWluIGFueSBvZiB0aGUgUkVQTEFZR0FJTl9UUkFDS19HQUlOLCBSRVBMQVlHQUlOX1RSQUNL
X1BFQUssCisgUkVQTEFZR0FJTl9BTEJVTV9HQUlOLCBvciBSRVBMQVlHQUlOX0FMQlVNX1BFQUsg
dGFncywgdW5sZXNzIHRoZXkgYXJlIG9ubHkKKyB0byBiZSB1c2VkIGluIHNvbWUgY29udGV4dCB3
aGVyZSB0aGVyZSBpcyBndWFyYW50ZWVkIHRvIGJlIG5vIHN1Y2ggY29uZnVzaW9uLgorPHhyZWYg
dGFyZ2V0PSJFQlUtUjEyOCIvPiBub3JtYWxpemF0aW9uIGlzIHByZWZlcnJlZCB0byB0aGUgZWFy
bGllcgorIFJFUExBWUdBSU4gc2NoZW1lcyBiZWNhdXNlIG9mIGl0cyBjbGVhciBkZWZpbml0aW9u
IGFuZCBhZG9wdGlvbiBieSBpbmR1c3RyeS4KK1BlYWsgbm9ybWFsaXphdGlvbnMgYXJlIGRpZmZp
Y3VsdCB0byBjYWxjdWxhdGUgcmVsaWFibHkgZm9yIGxvc3N5IGNvZGVjcworIGJlY2F1c2Ugb2Yg
dmFyaWF0aW9uIGluIGV4Y3Vyc2lvbiBoZWlnaHRzIGR1ZSB0byBkZWNvZGVyIGRpZmZlcmVuY2Vz
LgorSW4gdGhlIGF1dGhvcnMnIGludmVzdGlnYXRpb25zIHRoZXkgd2VyZSBub3QgYXBwbGllZCBj
b25zaXN0ZW50bHkgb3IgYnJvYWRseQorIGVub3VnaCB0byBtZXJpdCBpbmNsdXNpb24gaGVyZS4K
KzwvdD4KKzwvc2VjdGlvbj4gPCEtLSBlbmQgY29tbWVudF9mb3JtYXQgLS0+Cis8L3NlY3Rpb24+
IDwhLS0gZW5kIGNvbW1lbnRfaGVhZGVyIC0tPgorCis8L3NlY3Rpb24+IDwhLS0gZW5kIGhlYWRl
cnMgLS0+CisKKzxzZWN0aW9uIGFuY2hvcj0icGFja2V0X3NpemVfbGltaXRzIiB0aXRsZT0iUGFj
a2V0IFNpemUgTGltaXRzIj4KKzx0PgorVGVjaG5pY2FsbHksIHZhbGlkIE9wdXMgcGFja2V0cyBj
YW4gYmUgYXJiaXRyYXJpbHkgbGFyZ2UgZHVlIHRvIHRoZSBwYWRkaW5nCisgZm9ybWF0LCBhbHRo
b3VnaCB0aGUgYW1vdW50IG9mIG5vbi1wYWRkaW5nIGRhdGEgdGhleSBjYW4gY29udGFpbiBpcyBi
b3VuZGVkLgorVGhlc2UgcGFja2V0cyBtaWdodCBiZSBzcHJlYWQgb3ZlciBhIHNpbWlsYXJseSBl
bm9ybW91cyBudW1iZXIgb2YgT2dnIHBhZ2VzLgorV2hlbiBlbmNvZGluZywgaW1wbGVtZW50YXRp
b25zIFNIT1VMRCBsaW1pdCB0aGUgdXNlIG9mIHBhZGRpbmcgaW4gYXVkaW8gZGF0YQorIHBhY2tl
dHMgdG8gbm8gbW9yZSB0aGFuIGlzIG5lY2Vzc2FyeSB0byBtYWtlIGEgdmFyaWFibGUgYml0cmF0
ZSAoVkJSKSBzdHJlYW0KKyBjb25zdGFudCBiaXRyYXRlIChDQlIpLCB1bmxlc3MgdGhleSBoYXZl
IG5vIHJlYXNvbmFibGUgd2F5IHRvIGRldGVybWluZSB3aGF0CisgaXMgbmVjZXNzYXJ5LgorRGVt
dXhlcnMgU0hPVUxEIHRyZWF0IGF1ZGlvIGRhdGEgcGFja2V0cyBhcyBpbnZhbGlkICh0cmVhdCB0
aGVtIGFzIGlmIHRoZXkgd2VyZQorIG1hbGZvcm1lZCBPcHVzIHBhY2tldHMgd2l0aCBhbiBpbnZh
bGlkIFRPQyBzZXF1ZW5jZSkgaWYgdGhleSBhcmUgbGFyZ2VyIHRoYW4KKyA2MSw0NDAmbmJzcDtv
Y3RldHMgcGVyIE9wdXMgc3RyZWFtLCB1bmxlc3MgdGhleSBoYXZlIGEgc3BlY2lmaWMgcmVhc29u
IGZvcgorIGFsbG93aW5nIGV4dHJhIHBhZGRpbmcuCitTdWNoIHBhY2tldHMgbmVjZXNzYXJpbHkg
Y29udGFpbiBtb3JlIHBhZGRpbmcgdGhhbiBuZWVkZWQgdG8gbWFrZSBhIHN0cmVhbSBDQlIuCitE
ZW11eGVycyBNVVNUIGF2b2lkIGF0dGVtcHRpbmcgdG8gYWxsb2NhdGUgZXhjZXNzaXZlIGFtb3Vu
dHMgb2YgbWVtb3J5IHdoZW4KKyBwcmVzZW50ZWQgd2l0aCBhIHZlcnkgbGFyZ2UgcGFja2V0Lgor
RGVtdXhlcnMgTUFZIHRyZWF0IGF1ZGlvIGRhdGEgcGFja2V0cyBhcyBpbnZhbGlkIG9yIHBhcnRp
YWxseSBwcm9jZXNzIHRoZW0gaWYKKyB0aGV5IGFyZSBsYXJnZXIgdGhhbiA2MSw0NDAmbmJzcDtv
Y3RldHMgaW4gYW4gT2dnIE9wdXMgc3RyZWFtIHdpdGggY2hhbm5lbAorIG1hcHBpbmcgZmFtaWxp
ZXMmbmJzcDswIG9yJm5ic3A7MS4KK0RlbXV4ZXJzIE1BWSB0cmVhdCBhdWRpbyBkYXRhIHBhY2tl
dHMgYXMgaW52YWxpZCBvciBwYXJ0aWFsbHkgcHJvY2VzcyB0aGVtIGluCisgYW55IE9nZyBPcHVz
IHN0cmVhbSBpZiB0aGUgcGFja2V0IGlzIGxhcmdlciB0aGFuIDYxLDQ0MCZuYnNwO29jdGV0cyBh
bmQgYWxzbworIGxhcmdlciB0aGFuIDcsNjgwJm5ic3A7b2N0ZXRzIHBlciBPcHVzIHN0cmVhbS4K
K1RoZSBwcmVzZW5jZSBvZiBhbiBleHRyZW1lbHkgbGFyZ2UgcGFja2V0IGluIHRoZSBzdHJlYW0g
Y291bGQgaW5kaWNhdGUgYQorIG1lbW9yeSBleGhhdXN0aW9uIGF0dGFjayBvciBzdHJlYW0gY29y
cnVwdGlvbi4KKzwvdD4KKzx0PgorSW4gYW4gT2dnIE9wdXMgc3RyZWFtLCB0aGUgbGFyZ2VzdCBw
b3NzaWJsZSB2YWxpZCBwYWNrZXQgdGhhdCBkb2VzIG5vdCB1c2UKKyBwYWRkaW5nIGhhcyBhIHNp
emUgb2YgKDYxLDI5OCpOJm5ic3A7LSZuYnNwOzIpIG9jdGV0cy4KK1dpdGggMjU1Jm5ic3A7c3Ry
ZWFtcywgdGhpcyBpcyAxNSw2MzAsOTg4Jm5ic3A7b2N0ZXRzIGFuZCBjYW4KKyBzcGFuIHVwIHRv
IDYxLDI5OCZuYnNwO09nZyBwYWdlcywgYWxsIGJ1dCBvbmUgb2Ygd2hpY2ggd2lsbCBoYXZlIGEg
Z3JhbnVsZQorIHBvc2l0aW9uIG9mIC0xLgorVGhpcyBpcyBvZiBjb3Vyc2UgYSB2ZXJ5IGV4dHJl
bWUgcGFja2V0LCBjb25zaXN0aW5nIG9mIDI1NSZuYnNwO3N0cmVhbXMsIGVhY2gKKyBjb250YWlu
aW5nIDEyMCZuYnNwO21zIG9mIGF1ZGlvIGVuY29kZWQgYXMgMi41Jm5ic3A7bXMgZnJhbWVzLCBl
YWNoIGZyYW1lCisgdXNpbmcgdGhlIG1heGltdW0gcG9zc2libGUgbnVtYmVyIG9mIG9jdGV0cyAo
MTI3NSkgYW5kIHN0b3JlZCBpbiB0aGUgbGVhc3QKKyBlZmZpY2llbnQgbWFubmVyIGFsbG93ZWQg
KGEgVkJSIGNvZGUmbmJzcDszIE9wdXMgcGFja2V0KS4KK0V2ZW4gaW4gc3VjaCBhIHBhY2tldCwg
bW9zdCBvZiB0aGUgZGF0YSB3aWxsIGJlIHplcm9zIGFzIDIuNSZuYnNwO21zIGZyYW1lcworIGNh
bm5vdCBhY3R1YWxseSB1c2UgYWxsIDEyNzUmbmJzcDtvY3RldHMuCis8L3Q+Cis8dD4KK1RoZSBs
YXJnZXN0IHBhY2tldCBjb25zaXN0aW5nIG9mIGVudGlyZWx5IHVzZWZ1bCBkYXRhIGlzCisgKDE1
LDMyNipOJm5ic3A7LSZuYnNwOzIpIG9jdGV0cy4KK1RoaXMgY29ycmVzcG9uZHMgdG8gMTIwJm5i
c3A7bXMgb2YgYXVkaW8gZW5jb2RlZCBhcyAxMCZuYnNwO21zIGZyYW1lcyBpbiBlaXRoZXIKKyBT
SUxLIG9yIEh5YnJpZCBtb2RlLCBidXQgYXQgYSBkYXRhIHJhdGUgb2Ygb3ZlciAxJm5ic3A7TWJw
cywgd2hpY2ggbWFrZXMgbGl0dGxlCisgc2Vuc2UgZm9yIHRoZSBxdWFsaXR5IGFjaGlldmVkLgor
PC90PgorPHQ+CitBIG1vcmUgcmVhc29uYWJsZSBsaW1pdCBpcyAoNyw2NjQqTiZuYnNwOy0mbmJz
cDsyKSBvY3RldHMuCitUaGlzIGNvcnJlc3BvbmRzIHRvIDEyMCZuYnNwO21zIG9mIGF1ZGlvIGVu
Y29kZWQgYXMgMjAmbmJzcDttcyBzdGVyZW8gQ0VMVCBtb2RlCisgZnJhbWVzLCB3aXRoIGEgdG90
YWwgYml0cmF0ZSBqdXN0IHVuZGVyIDUxMSZuYnNwO2ticHMgKG5vdCBjb3VudGluZyB0aGUgT2dn
CisgZW5jYXBzdWxhdGlvbiBvdmVyaGVhZCkuCitGb3IgY2hhbm5lbCBtYXBwaW5nIGZhbWlseSAx
LCBOPTggcHJvdmlkZXMgYSByZWFzb25hYmxlIHVwcGVyIGJvdW5kLCBhcyBpdAorIGFsbG93cyBm
b3IgZWFjaCBvZiB0aGUgOCBwb3NzaWJsZSBvdXRwdXQgY2hhbm5lbHMgdG8gYmUgZGVjb2RlZCBm
cm9tIGEKKyBzZXBhcmF0ZSBzdGVyZW8gT3B1cyBzdHJlYW0uCitUaGlzIGdpdmVzIGEgc2l6ZSBv
ZiA2MSwzMTAmbmJzcDtvY3RldHMsIHdoaWNoIGlzIHJvdW5kZWQgdXAgdG8gYSBtdWx0aXBsZSBv
ZgorIDEsMDI0Jm5ic3A7b2N0ZXRzIHRvIHlpZWxkIHRoZSBhdWRpbyBkYXRhIHBhY2tldCBzaXpl
IG9mIDYxLDQ0MCZuYnNwO29jdGV0cworIHRoYXQgYW55IGltcGxlbWVudGF0aW9uIGlzIGV4cGVj
dGVkIHRvIGJlIGFibGUgdG8gcHJvY2VzcyBzdWNjZXNzZnVsbHkuCis8L3Q+Cis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0iZW5jb2RlciIgdGl0bGU9IkVuY29kZXIgR3VpZGVsaW5lcyI+
Cis8dD4KK1doZW4gZW5jb2RpbmcgT3B1cyBzdHJlYW1zLCBPZ2cgbXV4ZXJzIFNIT1VMRCB0YWtl
IGludG8gYWNjb3VudCB0aGUKKyBhbGdvcml0aG1pYyBkZWxheSBvZiB0aGUgT3B1cyBlbmNvZGVy
LgorPC90PgorPHQ+CitJbiBlbmNvZGVycyBkZXJpdmVkIGZyb20gdGhlIHJlZmVyZW5jZQorIGlt
cGxlbWVudGF0aW9uJm5ic3A7PHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+LCB0aGUgbnVtYmVyIG9m
IHNhbXBsZXMgY2FuIGJlCisgcXVlcmllZCB3aXRoOgorPC90PgorPGZpZ3VyZSBhbGlnbj0iY2Vu
dGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIG9wdXNfZW5jb2Rlcl9j
dGwoZW5jb2Rlcl9zdGF0ZSwgT1BVU19HRVRfTE9PS0FIRUFEKCZkZWxheV9zYW1wbGVzKSk7Citd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx0PgorVG8gYWNoaWV2ZSBnb29kIHF1YWxpdHkgaW4g
dGhlIHZlcnkgZmlyc3Qgc2FtcGxlcyBvZiBhIHN0cmVhbSwgaW1wbGVtZW50YXRpb25zCisgTUFZ
IHVzZSBsaW5lYXIgcHJlZGljdGl2ZSBjb2RpbmcgKExQQykgZXh0cmFwb2xhdGlvbiB0byBnZW5l
cmF0ZSBhdCBsZWFzdCAxMjAKKyBleHRyYSBzYW1wbGVzIGF0IHRoZSBiZWdpbm5pbmcgdG8gYXZv
aWQgdGhlIE9wdXMgZW5jb2RlciBoYXZpbmcgdG8gZW5jb2RlIGEKKyBkaXNjb250aW51b3VzIHNp
Z25hbC4KK0ZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGxpbmVhciBwcmVkaWN0aW9uLCBzZWUKKyA8
eHJlZiB0YXJnZXQ9ImxpbmVhci1wcmVkaWN0aW9uIi8+LgorRm9yIGFuIGlucHV0IGZpbGUgY29u
dGFpbmluZyAnbGVuZ3RoJyBzYW1wbGVzLCB0aGUgaW1wbGVtZW50YXRpb24gU0hPVUxEIHNldAor
IHRoZSBwcmUtc2tpcCBoZWFkZXIgdmFsdWUgdG8gKGRlbGF5X3NhbXBsZXMmbmJzcDsrJm5ic3A7
ZXh0cmFfc2FtcGxlcyksIGVuY29kZQorIGF0IGxlYXN0IChsZW5ndGgmbmJzcDsrJm5ic3A7ZGVs
YXlfc2FtcGxlcyZuYnNwOysmbmJzcDtleHRyYV9zYW1wbGVzKQorIHNhbXBsZXMsIGFuZCBzZXQg
dGhlIGdyYW51bGUgcG9zaXRpb24gb2YgdGhlIGxhc3QgcGFnZSB0bworIChsZW5ndGgmbmJzcDsr
Jm5ic3A7ZGVsYXlfc2FtcGxlcyZuYnNwOysmbmJzcDtleHRyYV9zYW1wbGVzKS4KK1RoaXMgZW5z
dXJlcyB0aGF0IHRoZSBlbmNvZGVkIGZpbGUgaGFzIHRoZSBzYW1lIGR1cmF0aW9uIGFzIHRoZSBv
cmlnaW5hbCwgd2l0aAorIG5vIHRpbWUgb2Zmc2V0LiBUaGUgYmVzdCB3YXkgdG8gcGFkIHRoZSBl
bmQgb2YgdGhlIHN0cmVhbSBpcyB0byBhbHNvIHVzZSBMUEMKKyBleHRyYXBvbGF0aW9uLCBidXQg
emVyby1wYWRkaW5nIGlzIGFsc28gYWNjZXB0YWJsZS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9y
PSJscGMiIHRpdGxlPSJMUEMgRXh0cmFwb2xhdGlvbiI+Cis8dD4KK1RoZSBmaXJzdCBzdGVwIGlu
IExQQyBleHRyYXBvbGF0aW9uIGlzIHRvIGNvbXB1dGUgbGluZWFyIHByZWRpY3Rpb24KKyBjb2Vm
ZmljaWVudHMuIDx4cmVmIHRhcmdldD0ibHBjLXNhbXBsZSIvPgorV2hlbiBleHRlbmRpbmcgdGhl
IGVuZCBvZiB0aGUgc2lnbmFsLCBvcmRlci1OICh0eXBpY2FsbHkgd2l0aCBOIHJhbmdpbmcgZnJv
bSA4CisgdG8gNDApIExQQyBhbmFseXNpcyBpcyBwZXJmb3JtZWQgb24gYSB3aW5kb3cgbmVhciB0
aGUgZW5kIG9mIHRoZSBzaWduYWwuCitUaGUgbGFzdCBOIHNhbXBsZXMgYXJlIHVzZWQgYXMgbWVt
b3J5IHRvIGFuIGluZmluaXRlIGltcHVsc2UgcmVzcG9uc2UgKElJUikKKyBmaWx0ZXIuCis8L3Q+
Cis8dD4KK1RoZSBmaWx0ZXIgaXMgdGhlbiBhcHBsaWVkIG9uIGEgemVybyBpbnB1dCB0byBleHRy
YXBvbGF0ZSB0aGUgZW5kIG9mIHRoZSBzaWduYWwuCitMZXQgYShrKSBiZSB0aGUga3RoIExQQyBj
b2VmZmljaWVudCBhbmQgeChuKSBiZSB0aGUgbnRoIHNhbXBsZSBvZiB0aGUgc2lnbmFsLAorIGVh
Y2ggbmV3IHNhbXBsZSBwYXN0IHRoZSBlbmQgb2YgdGhlIHNpZ25hbCBpcyBjb21wdXRlZCBhczoK
KzwvdD4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48
IVtDREFUQVsKKyAgICAgICAgTgorICAgICAgIC0tLQoreChuKSA9IFwgICBhKGspKngobi1rKQor
ICAgICAgIC8KKyAgICAgICAtLS0KKyAgICAgICBrPTEKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorPHQ+CitUaGUgcHJvY2VzcyBpcyByZXBlYXRlZCBpbmRlcGVuZGVudGx5IGZvciBlYWNoIGNo
YW5uZWwuCitJdCBpcyBwb3NzaWJsZSB0byBleHRlbmQgdGhlIGJlZ2lubmluZyBvZiB0aGUgc2ln
bmFsIGJ5IGFwcGx5aW5nIHRoZSBzYW1lCisgcHJvY2VzcyBiYWNrd2FyZCBpbiB0aW1lLgorV2hl
biBleHRlbmRpbmcgdGhlIGJlZ2lubmluZyBvZiB0aGUgc2lnbmFsLCBpdCBpcyBiZXN0IHRvIGFw
cGx5IGEgImZhZGUgaW4iIHRvCisgdGhlIGV4dHJhcG9sYXRlZCBzaWduYWwsIGUuZy4gYnkgbXVs
dGlwbHlpbmcgaXQgYnkgYSBoYWxmLUhhbm5pbmcgd2luZG93CisgPHhyZWYgdGFyZ2V0PSJoYW5u
aW5nIi8+LgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iY29udGludW91
c19jaGFpbmluZyIgdGl0bGU9IkNvbnRpbnVvdXMgQ2hhaW5pbmciPgorPHQ+CitJbiBzb21lIGFw
cGxpY2F0aW9ucywgc3VjaCBhcyBJbnRlcm5ldCByYWRpbywgaXQgaXMgZGVzaXJhYmxlIHRvIGN1
dCBhIGxvbmcKKyBzdHJlYW0gaW50byBzbWFsbGVyIGNoYWlucywgZS5nLiBzbyB0aGUgY29tbWVu
dCBoZWFkZXIgY2FuIGJlIHVwZGF0ZWQuCitUaGlzIGNhbiBiZSBkb25lIHNpbXBseSBieSBzZXBh
cmF0aW5nIHRoZSBpbnB1dCBzdHJlYW1zIGludG8gc2VnbWVudHMgYW5kCisgZW5jb2RpbmcgZWFj
aCBzZWdtZW50IGluZGVwZW5kZW50bHkuCitUaGUgZHJhd2JhY2sgb2YgdGhpcyBhcHByb2FjaCBp
cyB0aGF0IGl0IGNyZWF0ZXMgYSBzbWFsbCBkaXNjb250aW51aXR5CisgYXQgdGhlIGJvdW5kYXJ5
IGR1ZSB0byB0aGUgbG9zc3kgbmF0dXJlIG9mIE9wdXMuCitBIG11eGVyIE1BWSBhdm9pZCB0aGlz
IGRpc2NvbnRpbnVpdHkgYnkgdXNpbmcgdGhlIGZvbGxvd2luZyBwcm9jZWR1cmU6Cis8bGlzdCBz
dHlsZT0ibnVtYmVycyI+Cis8dD5FbmNvZGUgdGhlIGxhc3QgZnJhbWUgb2YgdGhlIGZpcnN0IHNl
Z21lbnQgYXMgYW4gaW5kZXBlbmRlbnQgZnJhbWUgYnkKKyB0dXJuaW5nIG9mZiBhbGwgZm9ybXMg
b2YgaW50ZXItZnJhbWUgcHJlZGljdGlvbi4KK0RlLWVtcGhhc2lzIGlzIGFsbG93ZWQuPC90Pgor
PHQ+U2V0IHRoZSBncmFudWxlIHBvc2l0aW9uIG9mIHRoZSBsYXN0IHBhZ2UgdG8gYSBwb2ludCBu
ZWFyIHRoZSBlbmQgb2YgdGhlCisgbGFzdCBmcmFtZS48L3Q+Cis8dD5CZWdpbiB0aGUgc2Vjb25k
IHNlZ21lbnQgd2l0aCBhIGNvcHkgb2YgdGhlIGxhc3QgZnJhbWUgb2YgdGhlIGZpcnN0Cisgc2Vn
bWVudC48L3Q+Cis8dD5TZXQgdGhlIHByZS1za2lwIHZhbHVlIG9mIHRoZSBzZWNvbmQgc3RyZWFt
IGluIHN1Y2ggYSB3YXkgYXMgdG8gcHJvcGVybHkKKyBqb2luIHRoZSB0d28gc3RyZWFtcy48L3Q+
Cis8dD5Db250aW51ZSB0aGUgZW5jb2RpbmcgcHJvY2VzcyBub3JtYWxseSBmcm9tIHRoZXJlLCB3
aXRob3V0IGFueSByZXNldCB0bworIHRoZSBlbmNvZGVyLjwvdD4KKzwvbGlzdD4KKzwvdD4KKzx0
PgorSW4gZW5jb2RlcnMgZGVyaXZlZCBmcm9tIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24s
IGludGVyLWZyYW1lIHByZWRpY3Rpb24KKyBjYW4gYmUgdHVybmVkIG9mZiBieSBjYWxsaW5nOgor
PC90PgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworIG9wdXNfZW5jb2Rlcl9jdGwoZW5jb2Rlcl9zdGF0ZSwgT1BVU19TRVRfUFJFRElD
VElPTl9ESVNBQkxFRCgxKSk7CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx0PgorRm9yIGJl
c3QgcmVzdWx0cywgdGhpcyBpbXBsZW1lbnRhdGlvbiByZXF1aXJlcyB0aGF0IHByZWRpY3Rpb24g
YmUgZXhwbGljaXRseQorIGVuYWJsZWQgYWdhaW4gYmVmb3JlIHJlc3VtaW5nIG5vcm1hbCBlbmNv
ZGluZywgZXZlbiBhZnRlciBhIHJlc2V0LgorPC90PgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlv
bj4KKworPHNlY3Rpb24gYW5jaG9yPSJpbXBsZW1lbnRhdGlvbiIgdGl0bGU9IkltcGxlbWVudGF0
aW9uIFN0YXR1cyI+Cis8dD4KK0EgYnJpZWYgc3VtbWFyeSBvZiBtYWpvciBpbXBsZW1lbnRhdGlv
bnMgb2YgdGhpcyBkcmFmdCBpcyBhdmFpbGFibGUKKyBhdCA8ZXJlZiB0YXJnZXQ9Imh0dHBzOi8v
d2lraS54aXBoLm9yZy9PZ2dPcHVzSW1wbGVtZW50YXRpb24iLz4sCisgYWxvbmcgd2l0aCB0aGVp
ciBzdGF0dXMuCis8L3Q+Cis8dD4KK1tOb3RlIHRvIFJGQyBFZGl0b3I6IHBsZWFzZSByZW1vdmUg
dGhpcyBlbnRpcmUgc2VjdGlvbiBiZWZvcmUKKyBmaW5hbCBwdWJsaWNhdGlvbiBwZXIgPHhyZWYg
dGFyZ2V0PSJSRkM2OTgyIi8+LCBhbG9uZyB3aXRoCisgaXRzIHJlZmVyZW5jZXMuXQorPC90Pgor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNlY3VyaXR5IiB0aXRsZT0iU2VjdXJpdHkg
Q29uc2lkZXJhdGlvbnMiPgorPHQ+CitJbXBsZW1lbnRhdGlvbnMgb2YgdGhlIE9wdXMgY29kZWMg
bmVlZCB0byB0YWtlIGFwcHJvcHJpYXRlIHNlY3VyaXR5CisgY29uc2lkZXJhdGlvbnMgaW50byBh
Y2NvdW50LCBhcyBvdXRsaW5lZCBpbiA8eHJlZiB0YXJnZXQ9IlJGQzQ3MzIiLz4uCitUaGlzIGlz
IGp1c3QgYXMgbXVjaCBhIHByb2JsZW0gZm9yIHRoZSBjb250YWluZXIgYXMgaXQgaXMgZm9yIHRo
ZSBjb2RlYyBpdHNlbGYuCitNYWxpY2lvdXMgcGF5bG9hZHMgYW5kL29yIGlucHV0IHN0cmVhbXMg
Y2FuIGJlIHVzZWQgdG8gYXR0YWNrIGNvZGVjCisgaW1wbGVtZW50YXRpb25zLgorSW1wbGVtZW50
YXRpb25zIE1VU1QgTk9UIG92ZXJydW4gdGhlaXIgYWxsb2NhdGVkIG1lbW9yeSBub3IgY29uc3Vt
ZSBleGNlc3NpdmUKKyByZXNvdXJjZXMgd2hlbiBkZWNvZGluZyBwYXlsb2FkcyBvciBwcm9jZXNz
aW5nIGlucHV0IHN0cmVhbXMuCitBbHRob3VnaCBwcm9ibGVtcyBpbiBlbmNvZGluZyBhcHBsaWNh
dGlvbnMgYXJlIHR5cGljYWxseSByYXJlciwgdGhpcyBzdGlsbAorIGFwcGxpZXMgdG8gYSBtdXhl
ciwgYXMgdnVsbmVyYWJpbGl0aWVzIHdvdWxkIGFsbG93IGFuIGF0dGFja2VyIHRvIGF0dGFjawor
IHRyYW5zY29kaW5nIGdhdGV3YXlzLgorPC90PgorCis8dD4KK0hlYWRlciBwYXJzaW5nIGNvZGUg
Y29udGFpbnMgdGhlIG1vc3QgbGlrZWx5IGFyZWEgZm9yIHBvdGVudGlhbCBvdmVycnVucy4KK0l0
IGlzIGltcG9ydGFudCBmb3IgaW1wbGVtZW50YXRpb25zIHRvIGVuc3VyZSB0aGVpciBidWZmZXJz
IGNvbnRhaW4gZW5vdWdoCisgZGF0YSBmb3IgYWxsIG9mIHRoZSByZXF1aXJlZCBmaWVsZHMgYmVm
b3JlIGF0dGVtcHRpbmcgdG8gcmVhZCBpdCAoZm9yIGV4YW1wbGUsCisgZm9yIGFsbCBvZiB0aGUg
Y2hhbm5lbCBtYXAgZGF0YSBpbiB0aGUgSUQgaGVhZGVyKS4KK0ltcGxlbWVudGF0aW9ucyB3b3Vs
ZCBkbyB3ZWxsIHRvIHZhbGlkYXRlIHRoZSBpbmRpY2VzIG9mIHRoZSBjaGFubmVsIG1hcCwgYWxz
bywKKyB0byBlbnN1cmUgdGhleSBtZWV0IGFsbCBvZiB0aGUgcmVzdHJpY3Rpb25zIG91dGxpbmVk
IGluCisgPHhyZWYgdGFyZ2V0PSJjaGFubmVsX21hcHBpbmciLz4sIGluIG9yZGVyIHRvIGF2b2lk
IGF0dGVtcHRpbmcgdG8gcmVhZCBkYXRhCisgZnJvbSBjaGFubmVscyB0aGF0IGRvIG5vdCBleGlz
dC4KKzwvdD4KKworPHQ+CitUbyBhdm9pZCBleGNlc3NpdmUgcmVzb3VyY2UgdXNhZ2UsIHdlIGFk
dmlzZSBpbXBsZW1lbnRhdGlvbnMgdG8gYmUgZXNwZWNpYWxseQorIHdhcnkgb2Ygc3RyZWFtcyB0
aGF0IG1pZ2h0IGNhdXNlIHRoZW0gdG8gcHJvY2VzcyBmYXIgbW9yZSBkYXRhIHRoYW4gd2FzCisg
YWN0dWFsbHkgdHJhbnNtaXR0ZWQuCitGb3IgZXhhbXBsZSwgYSByZWxhdGl2ZWx5IHNtYWxsIGNv
bW1lbnQgaGVhZGVyIG1heSBjb250YWluIHZhbHVlcyBmb3IgdGhlCisgc3RyaW5nIGxlbmd0aHMg
b3IgdXNlciBjb21tZW50IGxpc3QgbGVuZ3RoIHRoYXQgaW1wbHkgdGhhdCBpdCBpcyBtYW55Cisg
Z2lnYWJ5dGVzIGluIHNpemUuCitFdmVuIGNvbXB1dGluZyB0aGUgc2l6ZSBvZiB0aGUgcmVxdWly
ZWQgYnVmZmVyIGNvdWxkIG92ZXJmbG93IGEgMzItYml0IGludGVnZXIsCisgYW5kIGFjdHVhbGx5
IGF0dGVtcHRpbmcgdG8gYWxsb2NhdGUgc3VjaCBhIGJ1ZmZlciBiZWZvcmUgdmVyaWZ5aW5nIGl0
IHdvdWxkIGJlCisgYSByZWFzb25hYmxlIHNpemUgaXMgYSBiYWQgaWRlYS4KK0FmdGVyIHJlYWRp
bmcgdGhlIHVzZXIgY29tbWVudCBsaXN0IGxlbmd0aCwgaW1wbGVtZW50YXRpb25zIG1pZ2h0IHdp
c2ggdG8KKyB2ZXJpZnkgdGhhdCB0aGUgaGVhZGVyIGNvbnRhaW5zIGF0IGxlYXN0IHRoZSBtaW5p
bXVtIGFtb3VudCBvZiBkYXRhIGZvciB0aGF0CisgbWFueSBjb21tZW50cyAoNCZuYnNwO2FkZGl0
aW9uYWwgb2N0ZXRzIHBlciBjb21tZW50LCB0byBpbmRpY2F0ZSBlYWNoIGhhcyBhCisgbGVuZ3Ro
IG9mIHplcm8pIGJlZm9yZSBwcm9jZWVkaW5nIGFueSBmdXJ0aGVyLCBhZ2FpbiB0YWtpbmcgY2Fy
ZSB0byBhdm9pZAorIG92ZXJmbG93IGluIHRoZXNlIGNhbGN1bGF0aW9ucy4KK0lmIGFsbG9jYXRp
bmcgYW4gYXJyYXkgb2YgcG9pbnRlcnMgdG8gcG9pbnQgYXQgdGhlc2Ugc3RyaW5ncywgdGhlIHNp
emUgb2YgdGhlCisgcG9pbnRlcnMgbWF5IGJlIGxhcmdlciB0aGFuIDQmbmJzcDtvY3RldHMsIHBv
dGVudGlhbGx5IHJlcXVpcmluZyBhIHNlcGFyYXRlCisgb3ZlcmZsb3cgY2hlY2suCis8L3Q+CisK
Kzx0PgorQW5vdGhlciBidWcgaW4gdGhpcyBjbGFzcyB3ZSBoYXZlIG9ic2VydmVkIG1vcmUgdGhh
biBvbmNlIGludm9sdmVzIHRoZSBoYW5kbGluZworIG9mIGludmFsaWQgZGF0YSBhdCB0aGUgZW5k
IG9mIGEgc3RyZWFtLgorT2Z0ZW4sIGltcGxlbWVudGF0aW9ucyB3aWxsIHNlZWsgdG8gdGhlIGVu
ZCBvZiBhIHN0cmVhbSB0byBsb2NhdGUgdGhlIGxhc3QKKyB0aW1lc3RhbXAgaW4gb3JkZXIgdG8g
Y29tcHV0ZSBpdHMgdG90YWwgZHVyYXRpb24uCitJZiB0aGV5IGRvIG5vdCBmaW5kIGEgdmFsaWQg
Y2FwdHVyZSBwYXR0ZXJuIGFuZCBPZ2cgcGFnZSBmcm9tIHRoZSBkZXNpcmVkCisgbG9naWNhbCBz
dHJlYW0sIHRoZXkgd2lsbCBiYWNrIHVwIGFuZCB0cnkgYWdhaW4uCitJZiBjYXJlIGlzIG5vdCB0
YWtlbiB0byBhdm9pZCByZS1zY2FubmluZyBkYXRhIHRoYXQgd2FzIGFscmVhZHkgc2Nhbm5lZCwg
dGhpcworIHNlYXJjaCBjYW4gcXVpY2tseSBkZXZvbHZlIGludG8gc29tZXRoaW5nIHdpdGggYSBj
b21wbGV4aXR5IHRoYXQgaXMgcXVhZHJhdGljCisgaW4gdGhlIGFtb3VudCBvZiBpbnZhbGlkIGRh
dGEuCis8L3Q+CisKKzx0PgorSW4gZ2VuZXJhbCB3aGVuIHNlZWtpbmcsIGltcGxlbWVudGF0aW9u
cyB3aWxsIHdpc2ggdG8gYmUgY2F1dGlvdXMgYWJvdXQgdGhlCisgZWZmZWN0cyBvZiBpbnZhbGlk
IGdyYW51bGUgcG9zaXRpb24gdmFsdWVzLCBhbmQgZW5zdXJlIGFsbCBhbGdvcml0aG1zIHdpbGwK
KyBjb250aW51ZSB0byBtYWtlIHByb2dyZXNzIGFuZCBldmVudHVhbGx5IHRlcm1pbmF0ZSwgZXZl
biBpZiB0aGVzZSBhcmUgbWlzc2luZworIG9yIG91dC1vZi1vcmRlci4KKzwvdD4KKworPHQ+CitM
aWtlIG1vc3Qgb3RoZXIgY29udGFpbmVyIGZvcm1hdHMsIE9nZyBPcHVzIHN0cmVhbXMgU0hPVUxE
IE5PVCBiZSB1c2VkIHdpdGgKKyBpbnNlY3VyZSBjaXBoZXJzIG9yIGNpcGhlciBtb2RlcyB0aGF0
IGFyZSB2dWxuZXJhYmxlIHRvIGtub3duLXBsYWludGV4dAorIGF0dGFja3MuCitFbGVtZW50cyBz
dWNoIGFzIHRoZSBPZ2cgcGFnZSBjYXB0dXJlIHBhdHRlcm4gYW5kIHRoZSBtYWdpYyBzaWduYXR1
cmVzIGluIHRoZQorIElEIGhlYWRlciBhbmQgdGhlIGNvbW1lbnQgaGVhZGVyIGFsbCBoYXZlIGVh
c2lseSBwcmVkaWN0YWJsZSB2YWx1ZXMsIGluCisgYWRkaXRpb24gdG8gdmFyaW91cyBlbGVtZW50
cyBvZiB0aGUgY29kZWMgZGF0YSBpdHNlbGYuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9u
IGFuY2hvcj0iY29udGVudF90eXBlIiB0aXRsZT0iQ29udGVudCBUeXBlIj4KKzx0PgorQW4gIk9n
ZyBPcHVzIGZpbGUiIGNvbnNpc3RzIG9mIG9uZSBvciBtb3JlIHNlcXVlbnRpYWxseSBtdWx0aXBs
ZXhlZCBzZWdtZW50cywKKyBlYWNoIGNvbnRhaW5pbmcgZXhhY3RseSBvbmUgT2dnIE9wdXMgc3Ry
ZWFtLgorVGhlIFJFQ09NTUVOREVEIG1pbWUtdHlwZSBmb3IgT2dnIE9wdXMgZmlsZXMgaXMgImF1
ZGlvL29nZyIuCis8L3Q+CisKKzx0PgorSWYgbW9yZSBzcGVjaWZpY2l0eSBpcyBkZXNpcmVkLCBv
bmUgTUFZIGluZGljYXRlIHRoZSBwcmVzZW5jZSBvZiBPcHVzIHN0cmVhbXMKKyB1c2luZyB0aGUg
Y29kZWNzIHBhcmFtZXRlciBkZWZpbmVkIGluIDx4cmVmIHRhcmdldD0iUkZDNjM4MSIvPiBhbmQK
KyA8eHJlZiB0YXJnZXQ9IlJGQzUzMzQiLz4sIGUuZy4sCis8L3Q+Cis8ZmlndXJlPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgYXVkaW8vb2dnOyBjb2RlY3M9b3B1cwor
XV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8dD4KKyBmb3IgYW4gT2dnIE9wdXMgZmlsZS4KKzwv
dD4KKworPHQ+CitUaGUgUkVDT01NRU5ERUQgZmlsZW5hbWUgZXh0ZW5zaW9uIGZvciBPZ2cgT3B1
cyBmaWxlcyBpcyAnLm9wdXMnLgorPC90PgorCis8dD4KK1doZW4gT3B1cyBpcyBjb25jdXJyZW50
bHkgbXVsdGlwbGV4ZWQgd2l0aCBvdGhlciBzdHJlYW1zIGluIGFuIE9nZyBjb250YWluZXIsCisg
b25lIFNIT1VMRCB1c2Ugb25lIG9mIHRoZSAiYXVkaW8vb2dnIiwgInZpZGVvL29nZyIsIG9yICJh
cHBsaWNhdGlvbi9vZ2ciCisgbWltZS10eXBlcywgYXMgZGVmaW5lZCBpbiA8eHJlZiB0YXJnZXQ9
IlJGQzUzMzQiLz4uCitTdWNoIHN0cmVhbXMgYXJlIG5vdCBzdHJpY3RseSAiT2dnIE9wdXMgZmls
ZXMiIGFzIGRlc2NyaWJlZCBhYm92ZSwKKyBzaW5jZSB0aGV5IGNvbnRhaW4gbW9yZSB0aGFuIGEg
c2luZ2xlIE9wdXMgc3RyZWFtIHBlciBzZXF1ZW50aWFsbHkKKyBtdWx0aXBsZXhlZCBzZWdtZW50
LCBlLmcuIHZpZGVvIG9yIG11bHRpcGxlIGF1ZGlvIHRyYWNrcy4KK0luIHN1Y2ggY2FzZXMgdGhl
IHRoZSAnLm9wdXMnIGZpbGVuYW1lIGV4dGVuc2lvbiBpcyBOT1QgUkVDT01NRU5ERUQuCis8L3Q+
CisKKzx0PgorSW4gZWl0aGVyIGNhc2UsIHRoaXMgZG9jdW1lbnQgdXBkYXRlcyA8eHJlZiB0YXJn
ZXQ9IlJGQzUzMzQiLz4KKyB0byBhZGQgJ29wdXMnIGFzIGEgY29kZWNzIHBhcmFtZXRlciB2YWx1
ZSB3aXRoIGNoYXJbOF06ICdPcHVzSGVhZCcKKyBhcyBDb2RlYyBJZGVudGlmaWVyLgorPC90Pgor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImlhbmEiIHRpdGxlPSJJQU5BIENvbnNpZGVy
YXRpb25zIj4KKzx0PgorVGhpcyBkb2N1bWVudCB1cGRhdGVzIHRoZSBJQU5BIE1lZGlhIFR5cGVz
IHJlZ2lzdHJ5IHRvIGFkZCAub3B1cworIGFzIGEgZmlsZSBleHRlbnNpb24gZm9yICJhdWRpby9v
Z2ciLCBhbmQgdG8gYWRkIGl0c2VsZiBhcyBhIHJlZmVyZW5jZQorIGFsb25nc2lkZSA8eHJlZiB0
YXJnZXQ9IlJGQzUzMzQiLz4gZm9yICJhdWRpby9vZ2ciLCAidmlkZW8vb2dnIiwgYW5kCisgImFw
cGxpY2F0aW9uL29nZyIgTWVkaWEgVHlwZXMuCis8L3Q+Cis8dD4KK1RoaXMgZG9jdW1lbnQgZGVm
aW5lcyBhIG5ldyByZWdpc3RyeSAiT3B1cyBDaGFubmVsIE1hcHBpbmcgRmFtaWxpZXMiIHRvCisg
aW5kaWNhdGUgaG93IHRoZSBzZW1hbnRpYyBtZWFuaW5ncyBvZiB0aGUgY2hhbm5lbHMgaW4gYSBt
dWx0aS1jaGFubmVsIE9wdXMKKyBzdHJlYW0gYXJlIGRlc2NyaWJlZC4KK0lBTkEgaXMgcmVxdWVz
dGVkIHRvIGNyZWF0ZSBhIG5ldyBuYW1lIHNwYWNlIG9mICJPcHVzIENoYW5uZWwgTWFwcGluZwor
IEZhbWlsaWVzIi4KK1RoaXMgd2lsbCBiZSBhIG5ldyByZWdpc3RyeSBvbiB0aGUgSUFOQSBNYXRy
aXgsIGFuZCBub3QgYSBzdWJyZWdpc3RyeSBvZiBhbgorIGV4aXN0aW5nIHJlZ2lzdHJ5LgorTW9k
aWZpY2F0aW9ucyB0byB0aGlzIHJlZ2lzdHJ5IGZvbGxvdyB0aGUgIlNwZWNpZmljYXRpb24gUmVx
dWlyZWQiIHJlZ2lzdHJhdGlvbgorIHBvbGljeSBhcyBkZWZpbmVkIGluIDx4cmVmIHRhcmdldD0i
UkZDNTIyNiIvPi4KK0VhY2ggcmVnaXN0cnkgZW50cnkgY29uc2lzdHMgb2YgYSBDaGFubmVsIE1h
cHBpbmcgRmFtaWx5IE51bWJlciwgd2hpY2ggaXMKKyBzcGVjaWZpZWQgaW4gZGVjaW1hbCBpbiB0
aGUgcmFuZ2UgMCB0byAyNTUsIGluY2x1c2l2ZSwgYW5kIGEgUmVmZXJlbmNlIChvcgorIGxpc3Qg
b2YgcmVmZXJlbmNlcykKK0VhY2ggUmVmZXJlbmNlIG11c3QgcG9pbnQgdG8gc3VmZmljaWVudCBk
b2N1bWVudGF0aW9uIHRvIGRlc2NyaWJlIHdoYXQKKyBpbmZvcm1hdGlvbiBpcyBjb2RlZCBpbiB0
aGUgT3B1cyBpZGVudGlmaWNhdGlvbiBoZWFkZXIgZm9yIHRoaXMgY2hhbm5lbAorIG1hcHBpbmcg
ZmFtaWx5LCBob3cgYSBkZW11eGVyIGRldGVybWluZXMgdGhlIFN0cmVhbSBDb3VudCAoJ04nKSBh
bmQgQ291cGxlZAorIFN0cmVhbSBDb3VudCAoJ00nKSBmcm9tIHRoaXMgaW5mb3JtYXRpb24sIGFu
ZCBob3cgaXQgZGV0ZXJtaW5lcyB0aGUgcHJvcGVyCisgaW50ZXJwcmV0YXRpb24gb2YgZWFjaCBv
ZiB0aGUgZGVjb2RlZCBjaGFubmVscy4KKzwvdD4KKzx0PgorVGhpcyBkb2N1bWVudCBkZWZpbmVz
IHRocmVlIGluaXRpYWwgYXNzaWdubWVudHMgZm9yIHRoaXMgcmVnaXN0cnkuCis8L3Q+Cis8dGV4
dHRhYmxlPgorPHR0Y29sPlZhbHVlPC90dGNvbD48dHRjb2w+UmVmZXJlbmNlPC90dGNvbD4KKzxj
PjA8L2M+PGM+W1JGQ1hYWFhdIDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nXzAiLz48L2M+
Cis8Yz4xPC9jPjxjPltSRkNYWFhYXSA8eHJlZiB0YXJnZXQ9ImNoYW5uZWxfbWFwcGluZ18xIi8+
PC9jPgorPGM+MjU1PC9jPjxjPltSRkNYWFhYXSA8eHJlZiB0YXJnZXQ9ImNoYW5uZWxfbWFwcGlu
Z18yNTUiLz48L2M+Cis8L3RleHR0YWJsZT4KKzx0PgorVGhlIGRlc2lnbmF0ZWQgZXhwZXJ0IHdp
bGwgZGV0ZXJtaW5lIGlmIHRoZSBSZWZlcmVuY2UgcG9pbnRzIHRvIGEgc3BlY2lmaWNhdGlvbgor
IHRoYXQgbWVldHMgdGhlIHJlcXVpcmVtZW50cyBmb3IgcGVybWFuZW5jZSBhbmQgcmVhZHkgYXZh
aWxhYmlsaXR5IGxhaWQgb3V0CisgaW4mbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzUyMjYiLz4gYW5k
IHRoYXQgaXQgc3BlY2lmaWVzIHRoZSBpbmZvcm1hdGlvbgorIGRlc2NyaWJlZCBhYm92ZSB3aXRo
IHN1ZmZpY2llbnQgY2xhcml0eSB0byBhbGxvdyBpbnRlcm9wZXJhYmxlCisgaW1wbGVtZW50YXRp
b25zLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9IkFja25vd2xlZGdtZW50
cyIgdGl0bGU9IkFja25vd2xlZGdtZW50cyI+Cis8dD4KK1RoYW5rcyB0byBCZW4gQ2FtcGJlbGws
IEpvZWwgTS4gSGFscGVybiwgTWFyayBIYXJyaXMsIEdyZWcgTWF4d2VsbCwKKyBDaHJpc3RvcGhl
ciAiTW9udHkiIE1vbnRnb21lcnksIEplYW4tTWFyYyBWYWxpbiwgU3RlcGhhbiBXZW5nZXIsIGFu
ZCBNbyBaYW5hdHkKKyBmb3IgdGhlaXIgdmFsdWFibGUgY29udHJpYnV0aW9ucyB0byB0aGlzIGRv
Y3VtZW50LgorQWRkaXRpb25hbCB0aGFua3MgdG8gQW5kcmV3IEQnQWRkZXNpbywgR3JlZyBNYXh3
ZWxsLCBhbmQgVmluY2VudCBQZW5xdWVyYydoIGZvcgorIHRoZWlyIGZlZWRiYWNrIGJhc2VkIG9u
IGVhcmx5IGltcGxlbWVudGF0aW9ucy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0
bGU9IlJGQyBFZGl0b3IgTm90ZXMiPgorPHQ+CitJbiZuYnNwOzx4cmVmIHRhcmdldD0iaWFuYSIv
PiwgIlJGQ1hYWFgiIGlzIHRvIGJlIHJlcGxhY2VkIHdpdGggdGhlIFJGQyBudW1iZXIKKyBhc3Np
Z25lZCB0byB0aGlzIGRyYWZ0LgorPC90PgorPC9zZWN0aW9uPgorCis8L21pZGRsZT4KKzxiYWNr
PgorPHJlZmVyZW5jZXMgdGl0bGU9Ik5vcm1hdGl2ZSBSZWZlcmVuY2VzIj4KKyAmcmZjMjExOTsK
KyAmcmZjMzUzMzsKKyAmcmZjMzYyOTsKKyAmcmZjNTIyNjsKKyAmcmZjNTMzNDsKKyAmcmZjNjM4
MTsKKyAmcmZjNjcxNjsKKworPHJlZmVyZW5jZSBhbmNob3I9IkVCVS1SMTI4IiB0YXJnZXQ9Imh0
dHBzOi8vdGVjaC5lYnUuY2gvbG91ZG5lc3MiPgorPGZyb250PgorICA8dGl0bGU+TG91ZG5lc3Mg
UmVjb21tZW5kYXRpb24gRUJVIFIxMjg8L3RpdGxlPgorICA8YXV0aG9yPgorICAgIDxvcmdhbml6
YXRpb24+RUJVIFRlY2huaWNhbCBDb21taXR0ZWU8L29yZ2FuaXphdGlvbj4KKyAgPC9hdXRob3I+
CisgIDxkYXRlIG1vbnRoPSJBdWd1c3QiIHllYXI9IjIwMTEiLz4KKzwvZnJvbnQ+Cis8L3JlZmVy
ZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9InZvcmJpcy1jb21tZW50IgorIHRhcmdldD0iaHR0
cHM6Ly93d3cueGlwaC5vcmcvdm9yYmlzL2RvYy92LWNvbW1lbnQuaHRtbCI+Cis8ZnJvbnQ+Cis8
dGl0bGU+T2dnIFZvcmJpcyBJIEZvcm1hdCBTcGVjaWZpY2F0aW9uOiBDb21tZW50IEZpZWxkIGFu
ZCBIZWFkZXIKKyBTcGVjaWZpY2F0aW9uPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IkMuIiBz
dXJuYW1lPSJNb250Z29tZXJ5IgorIGZ1bGxuYW1lPSJDaHJpc3RvcGhlciAmcXVvdDtNb250eSZx
dW90OyBNb250Z29tZXJ5Ii8+Cis8ZGF0ZSBtb250aD0iSnVseSIgeWVhcj0iMjAwMiIvPgorPC9m
cm9udD4KKzwvcmVmZXJlbmNlPgorCis8L3JlZmVyZW5jZXM+CisKKzxyZWZlcmVuY2VzIHRpdGxl
PSJJbmZvcm1hdGl2ZSBSZWZlcmVuY2VzIj4KKworPCEtLT9yZmMgaW5jbHVkZT0iaHR0cDovL3ht
bC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy4zNTUwLnhtbCI/
LS0+CisgJnJmYzQ3MzI7CisgJnJmYzY5ODI7CisgJnJmYzc1ODc7CisKKzxyZWZlcmVuY2UgYW5j
aG9yPSJmbGFjIgorIHRhcmdldD0iaHR0cHM6Ly94aXBoLm9yZy9mbGFjL2Zvcm1hdC5odG1sIj4K
KyAgPGZyb250PgorICAgIDx0aXRsZT5GTEFDIC0gRnJlZSBMb3NzbGVzcyBBdWRpbyBDb2RlYyBG
b3JtYXQgRGVzY3JpcHRpb248L3RpdGxlPgorICAgIDxhdXRob3IgaW5pdGlhbHM9IkouIiBzdXJu
YW1lPSJDb2Fsc29uIiBmdWxsbmFtZT0iSm9zaCBDb2Fsc29uIi8+CisgICAgPGRhdGUgbW9udGg9
IkphbnVhcnkiIHllYXI9IjIwMDgiLz4KKyAgPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVm
ZXJlbmNlIGFuY2hvcj0iaGFubmluZyIKKyB0YXJnZXQ9Imh0dHBzOi8vZW4ud2lraXBlZGlhLm9y
Zy93L2luZGV4LnBocD90aXRsZT1XaW5kb3dfZnVuY3Rpb24mYW1wO29sZGlkPTcwMzA3NDQ2NyNI
YW5uXy4yOEhhbm5pbmcuMjlfd2luZG93Ij4KKyAgPGZyb250PgorICAgIDx0aXRsZT5IYW5uIHdp
bmRvdzwvdGl0bGU+CisgICAgPGF1dGhvcj4KKyAgICAgIDxvcmdhbml6YXRpb24+V2lraXBlZGlh
PC9vcmdhbml6YXRpb24+CisgICAgPC9hdXRob3I+CisgICAgPGRhdGUgbW9udGg9IkZlYnJ1YXJ5
IiB5ZWFyPSIyMDE2Ii8+CisgIDwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBh
bmNob3I9ImxpbmVhci1wcmVkaWN0aW9uIgorIHRhcmdldD0iaHR0cHM6Ly9lbi53aWtpcGVkaWEu
b3JnL3cvaW5kZXgucGhwP3RpdGxlPUxpbmVhcl9wcmVkaWN0aXZlX2NvZGluZyZhbXA7b2xkaWQ9
Njg3NDk4OTYyIj4KKyAgPGZyb250PgorICAgIDx0aXRsZT5MaW5lYXIgUHJlZGljdGl2ZSBDb2Rp
bmc8L3RpdGxlPgorICAgIDxhdXRob3I+CisgICAgICA8b3JnYW5pemF0aW9uPldpa2lwZWRpYTwv
b3JnYW5pemF0aW9uPgorICAgIDwvYXV0aG9yPgorICAgIDxkYXRlIG1vbnRoPSJPY3RvYmVyIiB5
ZWFyPSIyMDE1Ii8+CisgIDwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNo
b3I9ImxwYy1zYW1wbGUiCisgIHRhcmdldD0iaHR0cHM6Ly9zdm4ueGlwaC5vcmcvdHJ1bmsvdm9y
YmlzL2xpYi9scGMuYyI+Cis8ZnJvbnQ+CisgIDx0aXRsZT5BdXRvY29ycmVsYXRpb24gTFBDIGNv
ZWZmIGdlbmVyYXRpb24gYWxnb3JpdGhtCisgICAgKFZvcmJpcyBzb3VyY2UgY29kZSk8L3RpdGxl
PgorPGF1dGhvciBpbml0aWFscz0iSi4iIHN1cm5hbWU9IkRlZ2VuZXIiIGZ1bGxuYW1lPSJKdXR0
YSBEZWdlbmVyIi8+Cis8YXV0aG9yIGluaXRpYWxzPSJDLiIgc3VybmFtZT0iQm9ybWFubiIgZnVs
bG5hbWU9IkNhcnN0ZW4gQm9ybWFubiIvPgorPGRhdGUgbW9udGg9Ik5vdmVtYmVyIiB5ZWFyPSIx
OTk0Ii8+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJxLW5v
dGF0aW9uIgorIHRhcmdldD0iaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3cvaW5kZXgucGhwP3Rp
dGxlPVFfJTI4bnVtYmVyX2Zvcm1hdCUyOSZhbXA7b2xkaWQ9Njk3MjUyNjE1Ij4KKzxmcm9udD4K
Kzx0aXRsZT5RIChudW1iZXIgZm9ybWF0KTwvdGl0bGU+Cis8YXV0aG9yPjxvcmdhbml6YXRpb24+
V2lraXBlZGlhPC9vcmdhbml6YXRpb24+PC9hdXRob3I+Cis8ZGF0ZSBtb250aD0iRGVjZW1iZXIi
IHllYXI9IjIwMTUiLz4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNo
b3I9InJlcGxheS1nYWluIgorIHRhcmdldD0iaHR0cHM6Ly93aWtpLnhpcGgub3JnL1ZvcmJpc0Nv
bW1lbnQjUmVwbGF5X0dhaW4iPgorPGZyb250PgorPHRpdGxlPlZvcmJpc0NvbW1lbnQ6IFJlcGxh
eSBHYWluPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IkMuIiBzdXJuYW1lPSJQYXJrZXIiIGZ1
bGxuYW1lPSJDb25yYWQgUGFya2VyIi8+Cis8YXV0aG9yIGluaXRpYWxzPSJNLiIgc3VybmFtZT0i
TGVlc2UiIGZ1bGxuYW1lPSJNYXJ0aW4gTGVlc2UiLz4KKzxkYXRlIG1vbnRoPSJKdW5lIiB5ZWFy
PSIyMDA5Ii8+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJz
ZWVraW5nIgorIHRhcmdldD0iaHR0cHM6Ly93aWtpLnhpcGgub3JnL1NlZWtpbmciPgorPGZyb250
PgorPHRpdGxlPkdyYW51bGVwb3MgRW5jb2RpbmcgYW5kIEhvdyBTZWVraW5nIFJlYWxseSBXb3Jr
czwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSJTLiIgc3VybmFtZT0iUGZlaWZmZXIiIGZ1bGxu
YW1lPSJTaWx2aWEgUGZlaWZmZXIiLz4KKzxhdXRob3IgaW5pdGlhbHM9IkMuIiBzdXJuYW1lPSJQ
YXJrZXIiIGZ1bGxuYW1lPSJDb25yYWQgUGFya2VyIi8+Cis8YXV0aG9yIGluaXRpYWxzPSJHLiIg
c3VybmFtZT0iTWF4d2VsbCIgZnVsbG5hbWU9IkdyZWcgTWF4d2VsbCIvPgorPGRhdGUgbW9udGg9
Ik1heSIgeWVhcj0iMjAxMiIvPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNl
IGFuY2hvcj0idm9yYmlzLW1hcHBpbmciCisgdGFyZ2V0PSJodHRwczovL3d3dy54aXBoLm9yZy92
b3JiaXMvZG9jL1ZvcmJpc19JX3NwZWMuaHRtbCN4MS04MTAwMDQuMy45Ij4KKzxmcm9udD4KKzx0
aXRsZT5UaGUgVm9yYmlzIEkgU3BlY2lmaWNhdGlvbiwgU2VjdGlvbiA0LjMuOSBPdXRwdXQgQ2hh
bm5lbCBPcmRlcjwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSJDLiIgc3VybmFtZT0iTW9udGdv
bWVyeSIKKyBmdWxsbmFtZT0iQ2hyaXN0b3BoZXIgJnF1b3Q7TW9udHkmcXVvdDsgTW9udGdvbWVy
eSIvPgorPGRhdGUgbW9udGg9IkphbnVhcnkiIHllYXI9IjIwMTAiLz4KKzwvZnJvbnQ+Cis8L3Jl
ZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9InZvcmJpcy10cmltIgorIHRhcmdldD0iaHR0
cHM6Ly94aXBoLm9yZy92b3JiaXMvZG9jL1ZvcmJpc19JX3NwZWMuaHRtbCN4MS0xMzIwMDBBLjIi
PgorICA8ZnJvbnQ+CisgICAgPHRpdGxlPlRoZSBWb3JiaXMgSSBTcGVjaWZpY2F0aW9uLCBBcHBl
bmRpeCZuYnNwO0E6IEVtYmVkZGluZyBWb3JiaXMKKyAgICAgIGludG8gYW4gT2dnIHN0cmVhbTwv
dGl0bGU+CisgICAgPGF1dGhvciBpbml0aWFscz0iQy4iIHN1cm5hbWU9Ik1vbnRnb21lcnkiCisg
ICAgIGZ1bGxuYW1lPSJDaHJpc3RvcGhlciAmcXVvdDtNb250eSZxdW90OyBNb250Z29tZXJ5Ii8+
CisgICAgPGRhdGUgbW9udGg9Ik5vdmVtYmVyIiB5ZWFyPSIyMDA4Ii8+CisgIDwvZnJvbnQ+Cis8
L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IndhdmUtbXVsdGljaGFubmVsIgorIHRh
cmdldD0iaHR0cDovL21zZG4ubWljcm9zb2Z0LmNvbS9lbi11cy93aW5kb3dzL2hhcmR3YXJlL2dn
NDYzMDA2LmFzcHgiPgorICA8ZnJvbnQ+CisgICAgPHRpdGxlPk11bHRpcGxlIENoYW5uZWwgQXVk
aW8gRGF0YSBhbmQgV0FWRSBGaWxlczwvdGl0bGU+CisgICAgPGF1dGhvcj4KKyAgICAgIDxvcmdh
bml6YXRpb24+TWljcm9zb2Z0IENvcnBvcmF0aW9uPC9vcmdhbml6YXRpb24+CisgICAgPC9hdXRo
b3I+CisgICAgPGRhdGUgbW9udGg9Ik1hcmNoIiB5ZWFyPSIyMDA3Ii8+CisgIDwvZnJvbnQ+Cis8
L3JlZmVyZW5jZT4KKworPC9yZWZlcmVuY2VzPgorCis8L2JhY2s+Cis8L3JmYz4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvZG9jL2RyYWZ0LWlldGYtY29kZWMtb3B1cy11cGRhdGUueG1sIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1j
b2RlYy1vcHVzLXVwZGF0ZS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmU1MmExNjY4ZDkwNTk3ODE1ZmNhN2E5
ZGJlZjM4Yjg4OTZjNTM2MgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2RyYWZ0LWlldGYtY29kZWMt
b3B1cy11cGRhdGUueG1sCkBAIC0wLDAgKzEsNTE5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVu
Y29kaW5nPSJVUy1BU0NJSSI/PgorPCFET0NUWVBFIHJmYyBTWVNURU0gInJmYzI2MjkuZHRkIj4K
Kzw/cmZjIHRvYz0ieWVzIj8+Cis8P3JmYyB0b2NvbXBhY3Q9InllcyI/PgorPD9yZmMgdG9jZGVw
dGg9IjMiPz4KKzw/cmZjIHRvY2luZGVudD0ieWVzIj8+Cis8P3JmYyBzeW1yZWZzPSJ5ZXMiPz4K
Kzw/cmZjIHNvcnRyZWZzPSJ5ZXMiPz4KKzw/cmZjIGNvbW1lbnRzPSJ5ZXMiPz4KKzw/cmZjIGlu
bGluZT0ieWVzIj8+Cis8P3JmYyBjb21wYWN0PSJ5ZXMiPz4KKzw/cmZjIHN1YmNvbXBhY3Q9Im5v
Ij8+Cis8cmZjIGNhdGVnb3J5PSJzdGQiIGRvY05hbWU9ImRyYWZ0LWlldGYtY29kZWMtb3B1cy11
cGRhdGUtMDgiCisgICAgIGlwcj0idHJ1c3QyMDA5MDIiIHVwZGF0ZXM9IjY3MTYiPgorICA8ZnJv
bnQ+CisgICAgPHRpdGxlIGFiYnJldj0iT3B1cyBVcGRhdGUiPlVwZGF0ZXMgdG8gdGhlIE9wdXMg
QXVkaW8gQ29kZWM8L3RpdGxlPgorCis8YXV0aG9yIGluaXRpYWxzPSJKTSIgc3VybmFtZT0iVmFs
aW4iIGZ1bGxuYW1lPSJKZWFuLU1hcmMgVmFsaW4iPgorPG9yZ2FuaXphdGlvbj5Nb3ppbGxhIENv
cnBvcmF0aW9uPC9vcmdhbml6YXRpb24+Cis8YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3RyZWV0PjMz
MSBFLiBFdmVseW4gQXZlbnVlPC9zdHJlZXQ+Cis8Y2l0eT5Nb3VudGFpbiBWaWV3PC9jaXR5Pgor
PHJlZ2lvbj5DQTwvcmVnaW9uPgorPGNvZGU+OTQwNDE8L2NvZGU+Cis8Y291bnRyeT5VU0E8L2Nv
dW50cnk+Cis8L3Bvc3RhbD4KKzxwaG9uZT4rMSA2NTAgOTAzLTA4MDA8L3Bob25lPgorPGVtYWls
PmptdmFsaW5Aam12YWxpbi5jYTwvZW1haWw+Cis8L2FkZHJlc3M+Cis8L2F1dGhvcj4KKworPGF1
dGhvciBpbml0aWFscz0iSy4iIHN1cm5hbWU9IlZvcyIgZnVsbG5hbWU9IktvZW4gVm9zIj4KKzxv
cmdhbml6YXRpb24+dm9jVG9uZTwvb3JnYW5pemF0aW9uPgorPGFkZHJlc3M+Cis8cG9zdGFsPgor
PHN0cmVldD48L3N0cmVldD4KKzxjaXR5PjwvY2l0eT4KKzxyZWdpb24+PC9yZWdpb24+Cis8Y29k
ZT48L2NvZGU+Cis8Y291bnRyeT48L2NvdW50cnk+Cis8L3Bvc3RhbD4KKzxwaG9uZT48L3Bob25l
PgorPGVtYWlsPmtvZW52b3M3NEBnbWFpbC5jb208L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRo
b3I+CisKKworCisgICAgPGRhdGUgZGF5PSIyNiIgbW9udGg9Ikp1bHkiIHllYXI9IjIwMTciIC8+
CisKKyAgICA8YWJzdHJhY3Q+CisgICAgICA8dD5UaGlzIGRvY3VtZW50IGFkZHJlc3NlcyBtaW5v
ciBpc3N1ZXMgdGhhdCB3ZXJlIGZvdW5kIGluIHRoZSBzcGVjaWZpY2F0aW9uCisgICAgICBvZiB0
aGUgT3B1cyBhdWRpbyBjb2RlYyBpbiBSRkMgNjcxNi48L3Q+CisgICAgPC9hYnN0cmFjdD4KKyAg
PC9mcm9udD4KKworICA8bWlkZGxlPgorICAgIDxzZWN0aW9uIHRpdGxlPSJJbnRyb2R1Y3Rpb24i
PgorICAgICAgPHQ+VGhpcyBkb2N1bWVudCBhZGRyZXNzZXMgbWlub3IgaXNzdWVzIHRoYXQgd2Vy
ZSBkaXNjb3ZlcmVkIGluIHRoZSByZWZlcmVuY2UKKyAgICAgIGltcGxlbWVudGF0aW9uIG9mIHRo
ZSBPcHVzIGNvZGVjLiBVbmxpa2UgbW9zdCBJRVRGIHNwZWNpZmljYXRpb25zLCBPcHVzIGlzIGRl
ZmluZWQKKyAgICAgIGluIDx4cmVmIHRhcmdldD0iUkZDNjcxNiI+UkZDIDY3MTY8L3hyZWY+IGlu
IHRlcm1zIG9mIGEgbm9ybWF0aXZlIHJlZmVyZW5jZQorICAgICAgZGVjb2RlciBpbXBsZW1lbnRh
dGlvbiByYXRoZXIgdGhhbiBmcm9tIHRoZSBhc3NvY2lhdGVkIHRleHQgZGVzY3JpcHRpb24uCisg
ICAgICBUaGF0IFJGQyBpbmNsdWRlcyB0aGUgcmVmZXJlbmNlIGRlY29kZXIgaW1wbGVtZW50YXRp
b24gYXMgQXBwZW5kaXggQS4KKyAgICAgIFRoYXQncyB3aHkgb25seSBpc3N1ZXMgYWZmZWN0aW5n
IHRoZSBkZWNvZGVyIGFyZQorICAgICAgbGlzdGVkIGhlcmUuIEFuIHVwLXRvLWRhdGUgaW1wbGVt
ZW50YXRpb24gb2YgdGhlIE9wdXMgZW5jb2RlciBjYW4gYmUgZm91bmQgYXQKKyAgICAgIDxlcmVm
IHRhcmdldD0iaHR0cHM6Ly9vcHVzLWNvZGVjLm9yZy8iLz4uPC90PgorICAgIDx0PgorICAgICAg
U29tZSBvZiB0aGUgY2hhbmdlcyBpbiB0aGlzIGRvY3VtZW50IHVwZGF0ZSBub3JtYXRpdmUgYmVo
YXZpb3VyIGluIGEgd2F5IHRoYXQgcmVxdWlyZXMKKyAgICAgIG5ldyB0ZXN0IHZlY3RvcnMuIFRo
ZSBFbmdsaXNoIHRleHQgb2YgdGhlIHNwZWNpZmljYXRpb24gaXMgdW5hZmZlY3RlZCwgb25seQor
ICAgICAgdGhlIEMgaW1wbGVtZW50YXRpb24gaXMuIFRoZSB1cGRhdGVkIHNwZWNpZmljYXRpb24g
cmVtYWlucyBmdWxseSBjb21wYXRpYmxlIHdpdGgKKyAgICAgIHRoZSBvcmlnaW5hbCBzcGVjaWZp
Y2F0aW9uLgorICAgIDwvdD4KKworICAgIDx0PgorICAgIE5vdGU6IGR1ZSB0byBSRkMgZm9ybWF0
dGluZyBjb252ZW50aW9ucywgbGluZXMgZXhjZWVkaW5nIHRoZSBjb2x1bW4gd2lkdGgKKyAgICBp
biB0aGUgcGF0Y2ggYXJlIHNwbGl0IHVzaW5nIGEgYmFja3NsYXNoIGNoYXJhY3Rlci4gVGhlIGJh
Y2tzbGFzaGVzCisgICAgYXQgdGhlIGVuZCBvZiBhIGxpbmUgYW5kIHRoZSB3aGl0ZSBzcGFjZSBh
dCB0aGUgYmVnaW5uaW5nCisgICAgb2YgdGhlIGZvbGxvd2luZyBsaW5lIGFyZSBub3QgcGFydCBv
ZiB0aGUgcGF0Y2guIEEgcHJvcGVybHkgZm9ybWF0dGVkIHBhdGNoCisgICAgaW5jbHVkaW5nIGFs
bCBjaGFuZ2VzIGlzIGF2YWlsYWJsZSBhdAorICAgIDxlcmVmIHRhcmdldD0iaHR0cHM6Ly93d3cu
aWV0Zi5vcmcvcHJvY2VlZGluZ3MvOTgvc2xpZGVzL21hdGVyaWFscy05OC1jb2RlYy1vcHVzLXVw
ZGF0ZS0wMC5wYXRjaCIvPgorICAgIGFuZCBoYXMgYSBTSEExIDAyOWUzYWE4OGZjMzQyYzkxZTY3
YTIxZTdiZmJjOTQ1ODY2MWNkNWYuCisgICAgPC90PgorCisgICAgPC9zZWN0aW9uPgorCisgICAg
PHNlY3Rpb24gdGl0bGU9IlRlcm1pbm9sb2d5Ij4KKyAgICAgIDx0PlRoZSBrZXkgd29yZHMgIk1V
U1QiLCAiTVVTVCBOT1QiLCAiUkVRVUlSRUQiLCAiU0hBTEwiLCAiU0hBTEwgTk9UIiwKKyAgICAg
ICJTSE9VTEQiLCAiU0hPVUxEIE5PVCIsICJSRUNPTU1FTkRFRCIsICJNQVkiLCBhbmQgIk9QVElP
TkFMIiBpbiB0aGlzCisgICAgICBkb2N1bWVudCBhcmUgdG8gYmUgaW50ZXJwcmV0ZWQgYXMgZGVz
Y3JpYmVkIGluIDx4cmVmCisgICAgICB0YXJnZXQ9IlJGQzIxMTkiPlJGQyAyMTE5PC94cmVmPi48
L3Q+CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24gdGl0bGU9IlN0ZXJlbyBTdGF0ZSBS
ZXNldCBpbiBTSUxLIj4KKyAgICAgIDx0PlRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gZG9l
cyBub3QgcmVpbml0aWFsaXplIHRoZSBzdGVyZW8gc3RhdGUKKyAgICAgIGR1cmluZyBhIG1vZGUg
c3dpdGNoLiBUaGUgb2xkIHN0ZXJlbyBtZW1vcnkgY2FuIHByb2R1Y2UgYSBicmllZiBpbXB1bHNl
CisgICAgICAoaS5lLiBzaW5nbGUgc2FtcGxlKSBpbiB0aGUgZGVjb2RlZCBhdWRpby4gVGhpcyBj
YW4gYmUgZml4ZWQgYnkgY2hhbmdpbmcKKyAgICAgIHNpbGsvZGVjX0FQSS5jIGF0IGxpbmUgNzI6
CisgICAgPC90PgorPGZpZ3VyZT4KKzxhcnR3b3JrPjwhW0NEQVRBWworPENPREUgQkVHSU5TPgor
ICAgICBmb3IoIG4gPSAwOyBuIDwgREVDT0RFUl9OVU1fQ0hBTk5FTFM7IG4rKyApIHsKKyAgICAg
ICAgIHJldCAgPSBzaWxrX2luaXRfZGVjb2RlciggJmNoYW5uZWxfc3RhdGVbIG4gXSApOworICAg
ICB9CisrICAgIHNpbGtfbWVtc2V0KCYoKHNpbGtfZGVjb2RlciAqKWRlY1N0YXRlKS0+c1N0ZXJl
bywgMCwKKysgICAgICAgICAgICAgICAgc2l6ZW9mKCgoc2lsa19kZWNvZGVyICopZGVjU3RhdGUp
LT5zU3RlcmVvKSk7CisrICAgIC8qIE5vdCBzdHJpY3RseSBuZWVkZWQsIGJ1dCBpdCdzIGNsZWFu
ZXIgdGhhdCB3YXkgKi8KKysgICAgKChzaWxrX2RlY29kZXIgKilkZWNTdGF0ZSktPnByZXZfZGVj
b2RlX29ubHlfbWlkZGxlID0gMDsKKyAKKyAgICAgcmV0dXJuIHJldDsKKyB9Cis8Q09ERSBFTkRT
PgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisgICAgIDx0PgorICAgICBUaGlzIGNoYW5nZSBh
ZmZlY3RzIHRoZSBub3JtYXRpdmUgb3V0cHV0IG9mIHRoZSBkZWNvZGVyLCBidXQgdGhlCisgICAg
IGFtb3VudCBvZiBjaGFuZ2UgaXMgd2l0aGluIHRoZSB0b2xlcmFuY2UgYW5kIHRvbyBzbWFsbCB0
byBtYWtlIHRoZSB0ZXN0dmVjdG9yIGNoZWNrIGZhaWwuCisgICAgICA8L3Q+CisgICAgPC9zZWN0
aW9uPgorCisgICAgPHNlY3Rpb24gYW5jaG9yPSJwYWRkaW5nIiB0aXRsZT0iUGFyc2luZyBvZiB0
aGUgT3B1cyBQYWNrZXQgUGFkZGluZyI+CisgICAgICA8dD5JdCB3YXMgZGlzY292ZXJlZCB0aGF0
IHNvbWUgaW52YWxpZCBwYWNrZXRzIG9mIHZlcnkgbGFyZ2Ugc2l6ZSBjb3VsZCB0cmlnZ2VyCisg
ICAgICBhbiBvdXQtb2YtYm91bmRzIHJlYWQgaW4gdGhlIE9wdXMgcGFja2V0IHBhcnNpbmcgY29k
ZSByZXNwb25zaWJsZSBmb3IgcGFkZGluZy4KKyAgICAgIFRoaXMgaXMgZHVlIHRvIGFuIGludGVn
ZXIgb3ZlcmZsb3cgaWYgdGhlIHNpZ25hbGVkIHBhZGRpbmcgZXhjZWVkcyAyXjMxLTEgYnl0ZXMK
KyAgICAgICh0aGUgYWN0dWFsIHBhY2tldCBtYXkgYmUgc21hbGxlcikuIFRoZSBjb2RlIGNhbiBi
ZSBmaXhlZCBieSBhcHBseWluZyB0aGUgZm9sbG93aW5nCisgICAgICBjaGFuZ2VzIGF0IGxpbmUg
NTk2IG9mIHNyYy9vcHVzX2RlY29kZXIuYzoKKyAgICA8L3Q+Cis8ZmlndXJlPgorPGFydHdvcms+
PCFbQ0RBVEFbCis8Q09ERSBCRUdJTlM+CisgICAgICAgLyogUGFkZGluZyBmbGFnIGlzIGJpdCA2
ICovCisgICAgICAgaWYgKGNoJjB4NDApCisgICAgICAgeworLSAgICAgICAgIGludCBwYWRkaW5n
PTA7CisgICAgICAgICAgaW50IHA7CisgICAgICAgICAgZG8geworICAgICAgICAgICAgIGlmIChs
ZW48PTApCisgICAgICAgICAgICAgICAgcmV0dXJuIE9QVVNfSU5WQUxJRF9QQUNLRVQ7CisgICAg
ICAgICAgICAgcCA9ICpkYXRhKys7CisgICAgICAgICAgICAgbGVuLS07CistICAgICAgICAgICAg
cGFkZGluZyArPSBwPT0yNTUgPyAyNTQ6IHA7CisrICAgICAgICAgICAgbGVuIC09IHA9PTI1NSA/
IDI1NDogcDsKKyAgICAgICAgICB9IHdoaWxlIChwPT0yNTUpOworLSAgICAgICAgIGxlbiAtPSBw
YWRkaW5nOworICAgICAgIH0KKzxDT0RFIEVORFM+CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4K
KyAgICAgIDx0PlRoaXMgcGFja2V0IHBhcnNpbmcgaXNzdWUgaXMgbGltaXRlZCB0byByZWFkaW5n
IG1lbW9yeSB1cAorICAgICAgICAgdG8gYWJvdXQgNjAga0IgYmV5b25kIHRoZSBjb21wcmVzc2Vk
IGJ1ZmZlci4gVGhpcyBjYW4gb25seSBiZSB0cmlnZ2VyZWQKKyAgICAgICAgIGJ5IGEgY29tcHJl
c3NlZCBwYWNrZXQgbW9yZSB0aGFuIGFib3V0IDE2IE1CIGxvbmcsIHNvIGl0J3Mgbm90IGEgcHJv
YmxlbQorICAgICAgICAgZm9yIFJUUC4gSW4gdGhlb3J5LCBpdCBjb3VsZCBjcmFzaCBhIGZpbGUK
KyAgICAgICAgIGRlY29kZXIgKGUuZy4gT3B1cyBpbiBPZ2cpIGlmIHRoZSBtZW1vcnkganVzdCBh
ZnRlciB0aGUgaW5jb21pbmcgcGFja2V0CisgICAgICAgICBpcyBvdXQtb2YtcmFuZ2UsIGJ1dCBv
dXIgYXR0ZW1wdHMgdG8gdHJpZ2dlciBzdWNoIGEgY3Jhc2ggaW4gYSBwcm9kdWN0aW9uCisgICAg
ICAgICBhcHBsaWNhdGlvbiBidWlsdCB1c2luZyBhbiBhZmZlY3RlZCB2ZXJzaW9uIG9mIHRoZSBP
cHVzIGRlY29kZXIgZmFpbGVkLjwvdD4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiBh
bmNob3I9InJlc2FtcGxlciIgdGl0bGU9IlJlc2FtcGxlciBidWZmZXIiPgorICAgICAgPHQ+VGhl
IFNJTEsgcmVzYW1wbGVyIGhhZCB0aGUgZm9sbG93aW5nIGlzc3VlczoKKyAgICAgICAgPGxpc3Qg
c3R5bGU9Im51bWJlcnMiPgorICAgIDx0PlRoZSBjYWxscyB0byBtZW1jcHkoKSB3ZXJlIHVzaW5n
IHNpemVvZihvcHVzX2ludDMyKSwgYnV0IHRoZSB0eXBlIG9mIHRoZQorICAgICAgICBsb2NhbCBi
dWZmZXIgd2FzIG9wdXNfaW50MTYuPC90PgorICAgIDx0PkJlY2F1c2UgdGhlIHNpemUgd2FzIHdy
b25nLCB0aGlzIHBvdGVudGlhbGx5IGFsbG93ZWQgdGhlIHNvdXJjZQorICAgICAgICBhbmQgZGVz
dGluYXRpb24gcmVnaW9ucyBvZiB0aGUgbWVtY3B5KCkgdG8gb3ZlcmxhcC4KKyAgICAgICAgICBX
ZSBiZWxpZXZlIHRoYXQgblNhbXBsZXNJbiAobnVtYmVyIG9mIGlucHV0IHNhbXBsZXMpIGlzIGF0
IGxlYXN0IGZzX2luX2toWiAoc2FtcGxpbmcgcmF0ZSBpbiBrSHopLAorICAgICAgICAgIHdoaWNo
IGlzIGF0IGxlYXN0IDguCisgICAgICAgU2luY2UgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiBpcyBv
bmx5IDgsIHRoYXQgc2hvdWxkIG5vdCBiZSBhIHByb2JsZW0gb25jZQorICAgICAgIHRoZSB0eXBl
IHNpemUgaXMgZml4ZWQuPC90PgorICAgICAgICAgIDx0PlRoZSBzaXplIG9mIHRoZSBidWZmZXIg
dXNlZCBSRVNBTVBMRVJfTUFYX0JBVENIX1NJWkVfSU4sIGJ1dCB0aGUKKyAgICAgICAgZGF0YSBz
dG9yZWQgaW4gaXQgd2FzIGFjdHVhbGx5IHR3aWNlIHRoZSBpbnB1dCBiYXRjaCBzaXplCisgICAg
ICAgIChuU2FtcGxlc0luJmx0OyZsdDsxKS48L3Q+CisgICAgICA8L2xpc3Q+PC90PgorICAgICAg
PHQ+CisgICAgICBUaGUgZmFjdCB0aGF0IHRoZSBjb2RlIG5ldmVyIHByb2R1Y2VkIGFueSBlcnJv
ciBpbiB0ZXN0aW5nIChpbmNsdWRpbmcgd2hlbiBydW4gdW5kZXIgdGhlCisgICAgICBWYWxncmlu
ZCBtZW1vcnkgZGVidWdnZXIpLCBzdWdnZXN0cyB0aGF0IGluIHByYWN0aWNlCisgICAgIHRoZSBi
YXRjaCBzaXplcyBhcmUgcmVhc29uYWJsZSBlbm91Z2ggdGhhdCBub25lIG9mIHRoZSBpc3N1ZXMg
YWJvdmUKKyAgICAgd2FzIGV2ZXIgYSBwcm9ibGVtLiBIb3dldmVyLCB0aGUgYXV0aG9ycyBrbm93
IG9mIG5vIG9idmlvdXMgYXBwcm9hY2ggdG8gcHJvdmluZyB0aGF0LgorICAgIDwvdD4KKyAgICA8
dD5UaGUgY29kZSBjYW4gYmUgZml4ZWQgYnkgYXBwbHlpbmcgdGhlIGZvbGxvd2luZyBjaGFuZ2Vz
IHRvIGxpbmUgNzggb2Ygc2lsay9yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSLmM6CisgICAgPC90
PgorPGZpZ3VyZT4KKzxhcnR3b3JrPjwhW0NEQVRBWworPENPREUgQkVHSU5TPgorICkKKyB7Cisg
ICAgIHNpbGtfcmVzYW1wbGVyX3N0YXRlX3N0cnVjdCAqUyA9IFwKKyhzaWxrX3Jlc2FtcGxlcl9z
dGF0ZV9zdHJ1Y3QgKilTUzsKKyAgICAgb3B1c19pbnQzMiBuU2FtcGxlc0luOworICAgICBvcHVz
X2ludDMyIG1heF9pbmRleF9RMTYsIGluZGV4X2luY3JlbWVudF9RMTY7CistICAgIG9wdXNfaW50
MTYgYnVmWyBSRVNBTVBMRVJfTUFYX0JBVENIX1NJWkVfSU4gKyBcCitSRVNBTVBMRVJfT1JERVJf
RklSXzEyIF07CisrICAgIG9wdXNfaW50MTYgYnVmWyAyKlJFU0FNUExFUl9NQVhfQkFUQ0hfU0la
RV9JTiArIFwKK1JFU0FNUExFUl9PUkRFUl9GSVJfMTIgXTsKKyAKKyAgICAgLyogQ29weSBidWZm
ZXJlZCBzYW1wbGVzIHRvIHN0YXJ0IG9mIGJ1ZmZlciAqLworLSAgICBzaWxrX21lbWNweSggYnVm
LCBTLT5zRklSLCBSRVNBTVBMRVJfT1JERVJfRklSXzEyIFwKKyogc2l6ZW9mKCBvcHVzX2ludDMy
ICkgKTsKKysgICAgc2lsa19tZW1jcHkoIGJ1ZiwgUy0+c0ZJUiwgUkVTQU1QTEVSX09SREVSX0ZJ
Ul8xMiBcCisqIHNpemVvZiggb3B1c19pbnQxNiApICk7CisgCisgICAgIC8qIEl0ZXJhdGUgb3Zl
ciBibG9ja3Mgb2YgZnJhbWVTaXplSW4gaW5wdXQgc2FtcGxlcyAqLworICAgICBpbmRleF9pbmNy
ZW1lbnRfUTE2ID0gUy0+aW52UmF0aW9fUTE2OworICAgICB3aGlsZSggMSApIHsKKyAgICAgICAg
IG5TYW1wbGVzSW4gPSBzaWxrX21pbiggaW5MZW4sIFMtPmJhdGNoU2l6ZSApOworIAorICAgICAg
ICAgLyogVXBzYW1wbGUgMnggKi8KKyAgICAgICAgIHNpbGtfcmVzYW1wbGVyX3ByaXZhdGVfdXAy
X0hRKCBTLT5zSUlSLCAmYnVmWyBcCitSRVNBTVBMRVJfT1JERVJfRklSXzEyIF0sIGluLCBuU2Ft
cGxlc0luICk7CisgCisgICAgICAgICBtYXhfaW5kZXhfUTE2ID0gc2lsa19MU0hJRlQzMiggblNh
bXBsZXNJbiwgMTYgKyAxIFwKKyk7ICAgICAgICAgLyogKyAxIGJlY2F1c2UgMnggdXBzYW1wbGlu
ZyAqLworICAgICAgICAgb3V0ID0gc2lsa19yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSX0lOVEVS
UE9MKCBvdXQsIFwKK2J1ZiwgbWF4X2luZGV4X1ExNiwgaW5kZXhfaW5jcmVtZW50X1ExNiApOwor
ICAgICAgICAgaW4gKz0gblNhbXBsZXNJbjsKKyAgICAgICAgIGluTGVuIC09IG5TYW1wbGVzSW47
CisgCisgICAgICAgICBpZiggaW5MZW4gPiAwICkgeworICAgICAgICAgICAgIC8qIE1vcmUgaXRl
cmF0aW9ucyB0byBkbzsgY29weSBsYXN0IHBhcnQgb2YgXAorZmlsdGVyZWQgc2lnbmFsIHRvIGJl
Z2lubmluZyBvZiBidWZmZXIgKi8KKy0gICAgICAgICAgICBzaWxrX21lbWNweSggYnVmLCAmYnVm
WyBuU2FtcGxlc0luIDw8IDEgXSwgXAorUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZigg
b3B1c19pbnQzMiApICk7CisrICAgICAgICAgICAgc2lsa19tZW1tb3ZlKCBidWYsICZidWZbIG5T
YW1wbGVzSW4gPDwgMSBdLCBcCitSRVNBTVBMRVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVz
X2ludDE2ICkgKTsKKyAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgICB9CisgICAgIH0KKyAKKyAgICAgLyogQ29weSBsYXN0IHBhcnQgb2YgZmlsdGVyZWQgc2ln
bmFsIHRvIHRoZSBzdGF0ZSBmb3IgXAordGhlIG5leHQgY2FsbCAqLworLSAgICBzaWxrX21lbWNw
eSggUy0+c0ZJUiwgJmJ1ZlsgblNhbXBsZXNJbiA8PCAxIF0sIFwKK1JFU0FNUExFUl9PUkRFUl9G
SVJfMTIgKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOworKyAgICBzaWxrX21lbWNweSggUy0+c0ZJ
UiwgJmJ1ZlsgblNhbXBsZXNJbiA8PCAxIF0sIFwKK1JFU0FNUExFUl9PUkRFUl9GSVJfMTIgKiBz
aXplb2YoIG9wdXNfaW50MTYgKSApOworIH0KKzxDT0RFIEVORFM+CitdXT48L2FydHdvcms+Cis8
L2ZpZ3VyZT4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0iSW50ZWdlciB3
cmFwLWFyb3VuZCBpbiBpbnZlcnNlIGdhaW4gY29tcHV0YXRpb24iPgorICAgICAgPHQ+CisgICAg
ICAgIEl0IHdhcyBkaXNjb3ZlcmVkIHRocm91Z2ggZGVjb2RlciBmdXp6aW5nIHRoYXQgc29tZSBi
aXRzdHJlYW1zIGNvdWxkIHByb2R1Y2UKKyAgICAgICAgaW50ZWdlciB2YWx1ZXMgZXhjZWVkaW5n
IDMyLWJpdHMgaW4gTFBDX2ludmVyc2VfcHJlZF9nYWluX1FBKCksIGNhdXNpbmcKKyAgICAgICAg
YSB3cmFwLWFyb3VuZC4gQWx0aG91Z2ggdGhlIGVycm9yIGlzIGhhcm1sZXNzIGluIHByYWN0aWNl
LCB0aGUgQyBzdGFuZGFyZCBjb25zaWRlcnMKKyAgICAgICAgdGhlIGJlaGF2aW9yIGFzIHVuZGVm
aW5lZCwgc28gdGhlIGZvbGxvd2luZyBwYXRjaCB0byBsaW5lIDg3IG9mIHNpbGsvTFBDX2ludl9w
cmVkX2dhaW4uYworICAgICAgICBkZXRlY3RzIHZhbHVlcyB0aGF0IGRvIG5vdCBmaXQgaW4gYSAz
Mi1iaXQgaW50ZWdlciBhbmQgY29uc2lkZXJzIHRoZSBjb3JyZXNwb25kaW5nIGZpbHRlcnMgdW5z
dGFibGU6CisgICAgICA8L3Q+Cis8ZmlndXJlPgorPGFydHdvcms+PCFbQ0RBVEFbCis8Q09ERSBC
RUdJTlM+CisgICAgICAgICAvKiBVcGRhdGUgQVIgY29lZmZpY2llbnQgKi8KKyAgICAgICAgIGZv
ciggbiA9IDA7IG4gPCBrOyBuKysgKSB7CistICAgICAgICAgICAgdG1wX1FBID0gQW9sZF9RQVsg
biBdIC0gTVVMMzJfRlJBQ19RKCBcCitBb2xkX1FBWyBrIC0gbiAtIDEgXSwgcmNfUTMxLCAzMSAp
OworLSAgICAgICAgICAgIEFuZXdfUUFbIG4gXSA9IE1VTDMyX0ZSQUNfUSggdG1wX1FBLCByY19t
dWx0MiAsIG11bHQyUSApOworKyAgICAgICAgICAgIG9wdXNfaW50NjQgdG1wNjQ7CisrICAgICAg
ICAgICAgdG1wX1FBID0gc2lsa19TVUJfU0FUMzIoIEFvbGRfUUFbIG4gXSwgTVVMMzJfRlJBQ19R
KCBcCitBb2xkX1FBWyBrIC0gbiAtIDEgXSwgcmNfUTMxLCAzMSApICk7CisrICAgICAgICAgICAg
dG1wNjQgPSBzaWxrX1JTSElGVF9ST1VORDY0KCBzaWxrX1NNVUxMKCB0bXBfUUEsIFwKK3JjX211
bHQyICksIG11bHQyUSk7CisrICAgICAgICAgICAgaWYoIHRtcDY0ID4gc2lsa19pbnQzMl9NQVgg
fHwgdG1wNjQgPCBzaWxrX2ludDMyX01JTiApIHsKKysgICAgICAgICAgICAgICByZXR1cm4gMDsK
KysgICAgICAgICAgICB9CisrICAgICAgICAgICAgQW5ld19RQVsgbiBdID0gKCBvcHVzX2ludDMy
ICl0bXA2NDsKKyAgICAgICAgIH0KKzxDT0RFIEVORFM+CitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0iSW50ZWdlciB3cmFwLWFy
b3VuZCBpbiBMU0YgZGVjb2RpbmciIGFuY2hvcj0ibHNmX292ZXJmbG93Ij4KKyAgICAgIDx0Pgor
ICAgICAgICBJdCB3YXMgZGlzY292ZXJlZCAtLSBhbHNvIGZyb20gZGVjb2RlciBmdXp6aW5nIC0t
IHRoYXQgYW4gaW50ZWdlciB3cmFwLWFyb3VuZCBjb3VsZAorICAgICAgICBvY2N1ciB3aGVuIGRl
Y29kaW5nIGxpbmUgc3BlY3RyYWwgZnJlcXVlbmN5IGNvZWZmaWNpZW50cyBmcm9tIGV4dHJlbWUg
Yml0c3RyZWFtcy4KKyAgICAgICAgVGhlIGVuZCByZXN1bHQgb2YgdGhlIHdyYXAtYXJvdW5kIGlz
IGFuIGlsbGVnYWwgcmVhZCBhY2Nlc3Mgb24gdGhlIHN0YWNrLCB3aGljaAorICAgICAgICB0aGUg
YXV0aG9ycyBkbyBub3QgYmVsaWV2ZSBpcyBleHBsb2l0YWJsZSBidXQgc2hvdWxkIG5vbmV0aGVs
ZXNzIGJlIGZpeGVkLiBUaGUgZm9sbG93aW5nCisgICAgICAgIHBhdGNoIHRvIGxpbmUgMTM3IG9m
IHNpbGsvTkxTRl9zdGFiaWxpemUuYyBwcmV2ZW50cyB0aGUgcHJvYmxlbToKKyAgICAgIDwvdD4K
KzxmaWd1cmU+Cis8YXJ0d29yaz48IVtDREFUQVsKKzxDT0RFIEJFR0lOUz4KKyAgICAgICAgICAg
LyogS2VlcCBkZWx0YV9taW4gZGlzdGFuY2UgYmV0d2VlbiB0aGUgTkxTRnMgKi8KKyAgICAgICAg
IGZvciggaSA9IDE7IGkgPCBMOyBpKysgKQorLSAgICAgICAgICAgIE5MU0ZfUTE1W2ldID0gc2ls
a19tYXhfaW50KCBOTFNGX1ExNVtpXSwgXAorTkxTRl9RMTVbaS0xXSArIE5EZWx0YU1pbl9RMTVb
aV0gKTsKKysgICAgICAgICAgICBOTFNGX1ExNVtpXSA9IHNpbGtfbWF4X2ludCggTkxTRl9RMTVb
aV0sIFwKK3NpbGtfQUREX1NBVDE2KCBOTFNGX1ExNVtpLTFdLCBORGVsdGFNaW5fUTE1W2ldICkg
KTsKKyAKKyAgICAgICAgIC8qIExhc3QgTkxTRiBzaG91bGQgYmUgbm8gaGlnaGVyIHRoYW4gMSAt
IE5EZWx0YU1pbltMXSAqLworPENPREUgRU5EUz4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgor
CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24gdGl0bGU9IkNhcCBvbiBCYW5kIEVuZXJn
eSI+CisgICAgICA8dD5PbiBleHRyZW1lIGJpdC1zdHJlYW1zLCBpdCBpcyBwb3NzaWJsZSBmb3Ig
bG9nLWRvbWFpbiBiYW5kIGVuZXJneSBsZXZlbHMKKyAgICAgICAgdG8gZXhjZWVkIHRoZSBtYXhp
bXVtIHNpbmdsZS1wcmVjaXNpb24gZmxvYXRpbmcgcG9pbnQgdmFsdWUgb25jZSBjb252ZXJ0ZWQK
KyAgICAgICAgdG8gYSBsaW5lYXIgc2NhbGUuIFRoaXMgd291bGQgbGF0ZXIgY2F1c2UgdGhlIGRl
Y29kZWQgdmFsdWVzIHRvIGJlIE5hTiAobm90IGEgbnVtYmVyKSwKKyAgICAgICAgcG9zc2libHkg
Y2F1c2luZyBwcm9ibGVtcyBpbiB0aGUgc29mdHdhcmUgdXNpbmcgdGhlIFBDTSB2YWx1ZXMuIFRo
aXMgY2FuIGJlCisgICAgICAgIGF2b2lkZWQgd2l0aCB0aGUgZm9sbG93aW5nIHBhdGNoIHRvIGxp
bmUgNTUyIG9mIGNlbHQvcXVhbnRfYmFuZHMuYzoKKyAgICAgIDwvdD4KKzxmaWd1cmU+Cis8YXJ0
d29yaz48IVtDREFUQVsKKzxDT0RFIEJFR0lOUz4KKyAgICAgICB7CisgICAgICAgICAgb3B1c192
YWwxNiBsZyA9IEFERDE2KG9sZEVCYW5kc1tpK2MqbS0+bmJFQmFuZHNdLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICBTSEwxNigob3B1c192YWwxNillTWVhbnNbaV0sNikpOworKyAgICAgICAg
IGxnID0gTUlOMzIoUUNPTlNUMzIoMzIuZiwgMTYpLCBsZyk7CisgICAgICAgICAgZUJhbmRzW2kr
YyptLT5uYkVCYW5kc10gPSBQU0hSMzIoY2VsdF9leHAyKGxnKSw0KTsKKyAgICAgICB9CisgICAg
ICAgZm9yICg7aTxtLT5uYkVCYW5kcztpKyspCis8Q09ERSBFTkRTPgorXV0+PC9hcnR3b3JrPgor
PC9maWd1cmU+CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24gdGl0bGU9Ikh5YnJpZCBG
b2xkaW5nIiBhbmNob3I9ImZvbGRpbmciPgorICAgICAgPHQ+V2hlbiBlbmNvZGluZyBpbiBoeWJy
aWQgbW9kZSBhdCBsb3cgYml0cmF0ZSwgd2Ugc29tZXRpbWVzIG9ubHkgaGF2ZQorICAgICAgICBl
bm91Z2ggYml0cyB0byBjb2RlIGEgc2luZ2xlIENFTFQgYmFuZCAoOCAtIDkuNiBrSHopLiBXaGVu
IHRoYXQgaGFwcGVucywKKyAgICAgICAgdGhlIHNlY29uZCBiYW5kIChDRUxUIGJhbmQgMTgsIGZy
b20gOS42IHRvIDEyIGtIeikgY2Fubm90IHVzZSBmb2xkaW5nCisgICAgICAgIGJlY2F1c2UgaXQg
aXMgd2lkZXIgdGhhbiB0aGUgYW1vdW50IGFscmVhZHkgY29kZWQsIGFuZCBmYWxscyBiYWNrIHRv
CisgICAgICAgIHdoaXRlIG5vaXNlLiBCZWNhdXNlIGl0IGNhbiBhbHNvIGhhcHBlbiBvbiB0cmFu
c2llbnRzIChlLmcuIHN0b3BzKSwgaXQKKyAgICAgICAgY2FuIGNhdXNlIGF1ZGlibGUgcHJlLWVj
aG8uCisgICAgICA8L3Q+CisgICAgICA8dD4KKyAgICAgICAgVG8gYWRkcmVzcyB0aGUgaXNzdWUs
IHdlIGNoYW5nZSB0aGUgZm9sZGluZyBiZWhhdmlvciBzbyB0aGF0IGl0IGlzCisgICAgICAgIG5l
dmVyIGZvcmNlZCB0byBmYWxsIGJhY2sgdG8gTENHIGR1ZSB0byB0aGUgZmlyc3QgYmFuZCBub3Qg
Y29udGFpbmluZworICAgICAgICBlbm91Z2ggY29lZmZpY2llbnRzIHRvIGZvbGQgb250byB0aGUg
c2Vjb25kIGJhbmQuIFRoaXMKKyAgICAgICAgaXMgYWNoaWV2ZWQgYnkgc2ltcGx5IHJlcGVhdGlu
ZyBwYXJ0IG9mIHRoZSBmaXJzdCBiYW5kIGluIHRoZSBmb2xkaW5nCisgICAgICAgIG9mIHRoZSBz
ZWNvbmQgYmFuZC4gVGhpcyBjaGFuZ2VzIHRoZSBjb2RlIGluIGNlbHQvYmFuZHMuYyBhcm91bmQg
bGluZSAxMjM3OgorICAgICAgPC90PgorPGZpZ3VyZT4KKzxhcnR3b3JrPjwhW0NEQVRBWworPENP
REUgQkVHSU5TPgorICAgICAgICAgIGIgPSAwOworICAgICAgIH0KKyAKKy0gICAgICBpZiAocmVz
eW50aCAmJiBNKmVCYW5kc1tpXS1OID49IE0qZUJhbmRzW3N0YXJ0XSAmJiBcCisodXBkYXRlX2xv
d2JhbmQgfHwgbG93YmFuZF9vZmZzZXQ9PTApKQorKyAgICAgIGlmIChyZXN5bnRoICYmIChNKmVC
YW5kc1tpXS1OID49IE0qZUJhbmRzW3N0YXJ0XSB8fCBcCitpPT1zdGFydCsxKSAmJiAodXBkYXRl
X2xvd2JhbmQgfHwgbG93YmFuZF9vZmZzZXQ9PTApKQorICAgICAgICAgICAgIGxvd2JhbmRfb2Zm
c2V0ID0gaTsKKyAKKysgICAgICBpZiAoaSA9PSBzdGFydCsxKQorKyAgICAgIHsKKysgICAgICAg
ICBpbnQgbjEsIG4yOworKyAgICAgICAgIGludCBvZmZzZXQ7CisrICAgICAgICAgbjEgPSBNKihl
QmFuZHNbc3RhcnQrMV0tZUJhbmRzW3N0YXJ0XSk7CisrICAgICAgICAgbjIgPSBNKihlQmFuZHNb
c3RhcnQrMl0tZUJhbmRzW3N0YXJ0KzFdKTsKKysgICAgICAgICBvZmZzZXQgPSBNKmVCYW5kc1tz
dGFydF07CisrICAgICAgICAgLyogRHVwbGljYXRlIGVub3VnaCBvZiB0aGUgZmlyc3QgYmFuZCBm
b2xkaW5nIGRhdGEgdG8gXAorYmUgYWJsZSB0byBmb2xkIHRoZSBzZWNvbmQgYmFuZC4KKysgICAg
ICAgICAgICBDb3BpZXMgbm8gZGF0YSBmb3IgQ0VMVC1vbmx5IG1vZGUuICovCisrICAgICAgICAg
T1BVU19DT1BZKCZub3JtW29mZnNldCtuMV0sICZub3JtW29mZnNldCsyKm4xIC0gbjJdLCBuMi1u
MSk7CisrICAgICAgICAgaWYgKEM9PTIpCisrICAgICAgICAgICAgT1BVU19DT1BZKCZub3JtMltv
ZmZzZXQrbjFdLCAmbm9ybTJbb2Zmc2V0KzIqbjEgLSBuMl0sIFwKK24yLW4xKTsKKysgICAgICB9
CisrCisgICAgICAgdGZfY2hhbmdlID0gdGZfcmVzW2ldOworICAgICAgIGlmIChpPj1tLT5lZmZF
QmFuZHMpCisgICAgICAgeworPENPREUgRU5EUz4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgor
CisgICAgICA8dD4KKyAgICAgICBhcyB3ZWxsIGFzIGxpbmUgMTI2MDoKKyAgICAgIDwvdD4KKwor
PGZpZ3VyZT4KKzxhcnR3b3JrPjwhW0NEQVRBWworPENPREUgQkVHSU5TPgorICAgICAgICAgIGZv
bGRfc3RhcnQgPSBsb3diYW5kX29mZnNldDsKKyAgICAgICAgICB3aGlsZShNKmVCYW5kc1stLWZv
bGRfc3RhcnRdID4gZWZmZWN0aXZlX2xvd2JhbmQpOworICAgICAgICAgIGZvbGRfZW5kID0gbG93
YmFuZF9vZmZzZXQtMTsKKy0gICAgICAgICB3aGlsZShNKmVCYW5kc1srK2ZvbGRfZW5kXSA8IGVm
ZmVjdGl2ZV9sb3diYW5kK04pOworKyAgICAgICAgIHdoaWxlKCsrZm9sZF9lbmQgPCBpICYmIE0q
ZUJhbmRzW2ZvbGRfZW5kXSA8IFwKK2VmZmVjdGl2ZV9sb3diYW5kK04pOworICAgICAgICAgIHhf
Y20gPSB5X2NtID0gMDsKKyAgICAgICAgICBmb2xkX2kgPSBmb2xkX3N0YXJ0OyBkbyB7CisgICAg
ICAgICAgICB4X2NtIHw9IGNvbGxhcHNlX21hc2tzW2ZvbGRfaSpDKzBdOworCis8Q09ERSBFTkRT
PgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisgICAgICA8dD4KKyAgICAgICAgVGhlIGZpeCBk
b2VzIG5vdCBpbXBhY3QgY29tcGF0aWJpbGl0eSwgYmVjYXVzZSB0aGUgaW1wcm92ZW1lbnQgZG9l
cworICAgICAgICBub3QgZGVwZW5kIG9uIHRoZSBlbmNvZGVyIGRvaW5nIGFueXRoaW5nIHNwZWNp
YWwuIFRoZXJlIGlzIGFsc28gbm8KKyAgICAgICAgcmVhc29uYWJsZSB3YXkgZm9yIGFuIGVuY29k
ZXIgdG8gdXNlIHRoZSBvcmlnaW5hbCBiZWhhdmlvciB0bworICAgICAgICBpbXByb3ZlIHF1YWxp
dHkgb3ZlciB0aGUgcHJvcG9zZWQgY2hhbmdlLgorICAgICAgPC90PgorICAgIDwvc2VjdGlvbj4K
KworICAgIDxzZWN0aW9uIHRpdGxlPSJEb3dubWl4IHRvIE1vbm8iIGFuY2hvcj0ic3RlcmVvIj4K
KyAgICAgIDx0PlRoZSBsYXN0IGlzc3VlIGlzIG5vdCBzdHJpY3RseSBhIGJ1ZywgYnV0IGl0IGlz
IGFuIGlzc3VlIHRoYXQgaGFzIGJlZW4gcmVwb3J0ZWQKKyAgICAgIHdoZW4gZG93bm1peGluZyBh
biBPcHVzIGRlY29kZWQgc3RyZWFtIHRvIG1vbm8sIHdoZXRoZXIgdGhpcyBpcyBkb25lIGluc2lk
ZSB0aGUgZGVjb2RlcgorICAgICAgb3IgYXMgYSBwb3N0LXByb2Nlc3Npbmcgc3RlcCBvbiB0aGUg
c3RlcmVvIGRlY29kZXIgb3V0cHV0LiBPcHVzIGludGVuc2l0eSBzdGVyZW8gYWxsb3dzCisgICAg
ICBvcHRpb25hbGx5IGNvZGluZyB0aGUgdHdvIGNoYW5uZWxzIDE4MC1kZWdyZWVzIG91dCBvZiBw
aGFzZSBvbiBhIHBlci1iYW5kIGJhc2lzLgorICAgICAgVGhpcyBwcm92aWRlcyBiZXR0ZXIgc3Rl
cmVvIHF1YWxpdHkgdGhhbiBmb3JjaW5nIHRoZSB0d28gY2hhbm5lbHMgdG8gYmUgaW4gcGhhc2Us
CisgICAgICBidXQgd2hlbiB0aGUgb3V0cHV0IGlzIGRvd25taXhlZCB0byBtb25vLCB0aGUgZW5l
cmd5IGluIHRoZSBhZmZlY3RlZCBiYW5kcyBpcyBjYW5jZWxsZWQKKyAgICAgIHNvbWV0aW1lcyBy
ZXN1bHRpbmcgaW4gYXVkaWJsZSBhcnRlZmFjdHMuCisgICAgICA8L3Q+CisgICAgICA8dD5BcyBh
IHdvcmstYXJvdW5kIGZvciB0aGlzIGlzc3VlLCB0aGUgZGVjb2RlciBNQVkgY2hvb3NlIG5vdCB0
byBhcHBseSB0aGUgMTgwLWRlZ3JlZQorICAgICAgcGhhc2Ugc2hpZnQgd2hlbiB0aGUgb3V0cHV0
IGlzIG1lYW50IHRvIGJlIGRvd25taXhlZCAoaW5zaWRlIG9yCisgICAgICBvdXRzaWRlIG9mIHRo
ZSBkZWNvZGVyKS4KKyAgICAgIDwvdD4KKyAgICA8L3NlY3Rpb24+CisKKworICAgIDxzZWN0aW9u
IHRpdGxlPSJOZXcgVGVzdCBWZWN0b3JzIj4KKyAgICAgIDx0PkNoYW5nZXMgaW4gPHhyZWYgdGFy
Z2V0PSJmb2xkaW5nIi8+IGFuZCA8eHJlZiB0YXJnZXQ9InN0ZXJlbyIvPiBoYXZlCisgICAgICAg
IHN1ZmZpY2llbnQgaW1wYWN0IG9uIHRoZSB0ZXN0dmVjdG9ycyB0byBtYWtlIHRoZW0gZmFpbC4g
Rm9yIHRoaXMgcmVhc29uLAorICAgICAgICB0aGlzIGRvY3VtZW50IGFsc28gdXBkYXRlcyB0aGUg
T3B1cyB0ZXN0IHZlY3RvcnMuIFRoZSBuZXcgdGVzdCB2ZWN0b3JzIG5vdworICAgICAgICBpbmNs
dWRlIHR3byBkZWNvZGVkIG91dHB1dHMgZm9yIHRoZSBzYW1lIGJpdHN0cmVhbS4gVGhlIG91dHB1
dHMgd2l0aAorICAgICAgICBzdWZmaXggJ20nIGRvIG5vdCBhcHBseSB0aGUgQ0VMVCAxODAtZGVn
cmVlIHBoYXNlIHNoaWZ0IGFzIGFsbG93ZWQgaW4KKyAgICAgICAgPHhyZWYgdGFyZ2V0PSJzdGVy
ZW8iLz4sIHdoaWxlIHRoZSBvdXRwdXRzIHdpdGhvdXQgdGhlIHN1ZmZpeCBkby4gQW4KKyAgICAg
ICAgaW1wbGVtZW50YXRpb24gaXMgY29tcGxpYW50IGFzIGxvbmcgYXMgaXQgcGFzc2VzIGVpdGhl
ciBzZXQgb2YgdmVjdG9ycy4KKyAgICAgIDwvdD4KKyAgICAgIDx0PgorICAgICAgICBJbiBhZGRp
dGlvbiwgYW55IE9wdXMgaW1wbGVtZW50YXRpb24KKyAgICAgICAgdGhhdCBwYXNzZXMgdGhlIG9y
aWdpbmFsIHRlc3QgdmVjdG9ycyBmcm9tIDx4cmVmIHRhcmdldD0iUkZDNjcxNiI+UkZDIDY3MTY8
L3hyZWY+CisgICAgICAgIGlzIHN0aWxsIGNvbXBsaWFudCB3aXRoIHRoZSBPcHVzIHNwZWNpZmlj
YXRpb24uIEhvd2V2ZXIsIG5ld2VyIGltcGxlbWVudGF0aW9ucworICAgICAgICBTSE9VTEQgYmUg
YmFzZWQgb24gdGhlIG5ldyB0ZXN0IHZlY3RvcnMgcmF0aGVyIHRoYW4gdGhlIG9sZCBvbmVzLgor
ICAgICAgPC90PgorICAgICAgPHQ+VGhlIG5ldyB0ZXN0IHZlY3RvcnMgYXJlIGxvY2F0ZWQgYXQK
KyAgICAgICAgPGVyZWYgdGFyZ2V0PSJodHRwczovL3d3dy5pZXRmLm9yZy9wcm9jZWVkaW5ncy85
OC9zbGlkZXMvbWF0ZXJpYWxzLTk4LWNvZGVjLW9wdXMtbmV3dmVjdG9ycy0wMC50YXIuZ3oiLz4u
CisgICAgICAgIFRoZSBTSEExIGhhc2ggb2YgdGhlIHRlc3QgdmVjdG9ycyBhcmU6Cis8ZmlndXJl
PgorPGFydHdvcms+Cis8IVtDREFUQVsKK2U0OWIyODYyY2VlYzczMjQ3OTBlZDgwMTllYjk3NDQ1
OTZkNWJlMDEgIHRlc3R2ZWN0b3IwMS5iaXQKK2I4MDk3OTVhZTFiY2Q2MDYwNDlkNzZkZTRhZDI0
MjM2MjU3MTM1ZTAgIHRlc3R2ZWN0b3IwMi5iaXQKK2UwYzRlY2FlYWI0NGQzNWEyZjViNjU3NWNk
OTk2ODQ4ZTVlZTJhY2MgIHRlc3R2ZWN0b3IwMy5iaXQKK2EwZjg3MGNiZTE0ZWJiNzFmYTkwNjZl
ZjNlZTk2ZTU5YzlhNzUxODcgIHRlc3R2ZWN0b3IwNC5iaXQKKzliM2Q5MmI0OGI5NjVkZmU5ZWRm
N2I4YTg1ZWRkNDMwOWY4Y2Y3YzggIHRlc3R2ZWN0b3IwNS5iaXQKKzI4ZTY2NzY5YWIxN2UxN2Y3
Mjg3NTI4M2MxNGIxOTY5MGNiYzRlNTcgIHRlc3R2ZWN0b3IwNi5iaXQKK2JhY2Y0NjdiZTMyMTVm
YzdlYzI4OGYyOWUyNDc3ZGUxMTkyOTQ3YTYgIHRlc3R2ZWN0b3IwNy5iaXQKK2RkYmUwOGI2ODhi
YmY5MzQwNzFmMzg5M2NkMDAzMGNlNDhkYmExMmYgIHRlc3R2ZWN0b3IwOC5iaXQKKzM5MzJkOWQ2
MTk0NGRhYjEyMDE2NDViOGVlYWFkNTk1ZDU3MDVlY2IgIHRlc3R2ZWN0b3IwOS5iaXQKKzUyMWVi
MmExZTBjYzljMzFiOGI3NDA2NzMzMDdjMmQzYjEwYzE5MDAgIHRlc3R2ZWN0b3IxMC5iaXQKKzZi
YzhmMzE0NmZjYjk2NDUwYzkwMWIxNmMzZDQ2NGNjZGY0ZDVkOTYgIHRlc3R2ZWN0b3IxMS5iaXQK
KzMzOGMzZjFiNGI5NzIyNmJjNjBiYzQxMDM4YmVjYmM2ZGUwNmIyOGYgIHRlc3R2ZWN0b3IxMi5i
aXQKK2Y1ZWY5Mzg4NGRhNmE4MTRkMzExMDI3OTE4ZTlhZmM2ZjJlNWMyYzggIHRlc3R2ZWN0b3Iw
MS5kZWMKKzQ4YWMxZmYxOTk1MjUwYTc1NmUxZTE3YmQzMmFjZWZhOGNkMmI4MjAgIHRlc3R2ZWN0
b3IwMi5kZWMKK2QxNTU2N2U5MTlkYjJkMGU4MTg3MjcwOTJjMGFmOGRkOWRmMjNjOTUgIHRlc3R2
ZWN0b3IwMy5kZWMKKzEyNDlkZDI4ZjViZDFlMzlhNjZmZDZkOTk0NDlkY2E3YTgzMTYzNDIgIHRl
c3R2ZWN0b3IwNC5kZWMKK2I4NTY3NWQ4MWRlZWY4NGExMTJjNDY2Y2RmZjNiN2FhYTFkMmZjNzYg
IHRlc3R2ZWN0b3IwNS5kZWMKKzU1ZjBiMTkxZTkwYmZhNmY5OGI1MGQwMWE2NGI0NDI1NWNiNDgx
M2UgIHRlc3R2ZWN0b3IwNi5kZWMKKzYxZThiMzU3YWIwOTBiMTgwMWVlYjU3OGEyOGE2YWU5MzVl
MjViN2IgIHRlc3R2ZWN0b3IwNy5kZWMKK2E1ODUzOWVlNTMyMTQ1M2IyZGRmNGMwZjI1MDBlODU2
YjM5NjY4NjIgIHRlc3R2ZWN0b3IwOC5kZWMKK2JiOTZhYWQyY2RlMTg4NTU1ODYyYjdiYmIzYWY2
MTMzODUxZWY4ZjQgIHRlc3R2ZWN0b3IwOS5kZWMKKzFiNmNkZjA0MTNhYzk5NjViMTYxODRiMWJl
YTEyOWI1YzBiMmEzN2EgIHRlc3R2ZWN0b3IxMC5kZWMKK2IxZmZmNzJiNzQ2NjZlMzAyNzgwMWIy
OWRiYzQ4YjMxZjgwZGVlMGQgIHRlc3R2ZWN0b3IxMS5kZWMKKzk4ZTA5YmJhZmVkMzI5ZTM0MWMz
YjQwNTJlOWM0YmE1ZmM4M2Y5YjEgIHRlc3R2ZWN0b3IxMi5kZWMKKzFlN2Q5ODRlYTNmYmIxNmJh
OTk4YWVhNzYxZjQ4OTNmYmRiMzAxNTcgIHRlc3R2ZWN0b3IwMW0uZGVjCis0OGFjMWZmMTk5NTI1
MGE3NTZlMWUxN2JkMzJhY2VmYThjZDJiODIwICB0ZXN0dmVjdG9yMDJtLmRlYworZDE1NTY3ZTkx
OWRiMmQwZTgxODcyNzA5MmMwYWY4ZGQ5ZGYyM2M5NSAgdGVzdHZlY3RvcjAzbS5kZWMKKzEyNDlk
ZDI4ZjViZDFlMzlhNjZmZDZkOTk0NDlkY2E3YTgzMTYzNDIgIHRlc3R2ZWN0b3IwNG0uZGVjCitk
NzBiMGJhZDQzMWU3ZDQ2M2JjM2RhNDliZDJkNDlmMWM2ZDBhNTMwICB0ZXN0dmVjdG9yMDVtLmRl
YworNmFjMTY0OGMzMTc0Yzk1ZmFkYTU2NTE2MWE2Yzc4YmRiZTU5Yzc3ZCAgdGVzdHZlY3RvcjA2
bS5kZWMKK2ZjNWUyZjcwOTY5MzczODMyNGZiNGM4YmRjMGRhZDZkZGEwNGU3MTMgIHRlc3R2ZWN0
b3IwN20uZGVjCithYWQyYmEzOTdiZjFiNmExOGU4ZTA5YjUwZTRiMTk2MjdkNDc5ZjAwICB0ZXN0
dmVjdG9yMDhtLmRlYworNmZlYjdhN2I5ZDdjZGMxMzgzYmFmOGQ1NzM5ZTJhNTE0YmQwYmEwOCAg
dGVzdHZlY3RvcjA5bS5kZWMKKzFiNmNkZjA0MTNhYzk5NjViMTYxODRiMWJlYTEyOWI1YzBiMmEz
N2EgIHRlc3R2ZWN0b3IxMG0uZGVjCitmZDNkM2E3YjBkZmJkYWI5OGQzN2VkOWFhMDRiNjU5Yjlm
ZWZiZDE4ICB0ZXN0dmVjdG9yMTFtLmRlYworOThlMDliYmFmZWQzMjllMzQxYzNiNDA1MmU5YzRi
YTVmYzgzZjliMSAgdGVzdHZlY3RvcjEybS5kZWMKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+
CisgICAgICBOb3RlIHRoYXQgdGhlIGRlY29kZXIgaW5wdXQgYml0c3RyZWFtIGZpbGVzICguYml0
KSBhcmUgdW5jaGFuZ2VkLgorICAgICAgPC90PgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0
aW9uIGFuY2hvcj0ic2VjdXJpdHkiIHRpdGxlPSJTZWN1cml0eSBDb25zaWRlcmF0aW9ucyI+Cisg
ICAgICA8dD5UaGlzIGRvY3VtZW50IGZpeGVzIHR3byBzZWN1cml0eSBpc3N1ZXMgcmVwb3J0ZWQg
b24gT3B1cyBhbmQgdGhhdCBhZmZlY3QgdGhlCisgICAgICAgIHJlZmVyZW5jZSBpbXBsZW1lbnRh
dGlvbiBpbiA8eHJlZiB0YXJnZXQ9IlJGQzY3MTYiPlJGQyA2NzE2PC94cmVmPjogQ1ZFLTIwMTMt
MDg5OQorICAgICAgICA8ZXJlZiB0YXJnZXQ9Imh0dHBzOi8vbnZkLm5pc3QuZ292L3Z1bG4vZGV0
YWlsL0NWRS0yMDEzLTA4OTkiLz4KKyAgICAgICAgYW5kIENWRS0yMDE3LTAzODEgPGVyZWYgdGFy
Z2V0PSJodHRwczovL252ZC5uaXN0Lmdvdi92dWxuL2RldGFpbC9DVkUtMjAxNy0wMzgxIi8+Lgor
ICAgICAgICBDVkUtMjAxMy0wODk5IGlzIGZpeGVkIGJ5IDx4cmVmIHRhcmdldD0icGFkZGluZyIv
PiBhbmQKKyAgICAgICAgY291bGQgdGhlb3JldGljYWxseSBjYXVzZSBpbmZvcm1hdGlvbiBsZWFr
LCBidXQgdGhlCisgICAgICAgIGxlYWtlZCBpbmZvcm1hdGlvbiB3b3VsZCBhdCB0aGUgdmVyeSBs
ZWFzdCBnbyB0aHJvdWdoIHRoZSBkZWNvZGVyIHByb2Nlc3MgYmVmb3JlCisgICAgICAgIGJlaW5n
IGFjY2Vzc2libGUgdG8gdGhlIGF0dGFja2VyLiBBbHNvLCB0aGUgYnVnIGNhbiBvbmx5IGJlIHRy
aWdnZXJlZCBieSBPcHVzIHBhY2tldHMKKyAgICAgICAgYXQgbGVhc3QgMjQgTUIgaW4gc2l6ZS4g
Q1ZFLTIwMTctMDM4MSBpcyBmaXhlZCBieSA8eHJlZiB0YXJnZXQ9ImxzZl9vdmVyZmxvdyIvPiBh
bmQsIGFzIGZhcgorICAgICAgICBhcyB0aGUgYXV0aG9ycyBhcmUgYXdhcmUsIGNvdWxkIG5vdCBi
ZSBleHBsb2l0ZWQgaW4gYW55IHdheSAoZGVzcGl0ZSB0aGUgY2xhaW1zIGluCisgICAgICAgIHRo
ZSBDVkUpIHVubGVzcyB0aGUgcmVhZC1vbmx5IHRhYmxlCisgICAgICAgIHdhcyBzb21laG93IHBs
YWNlZCB2ZXJ5IGNsb3NlIHRvIHNlbnNpdGl2ZSBkYXRhLCB3aGljaCBpcyBoaWdobHkgdW5saWtl
bHkuCisgICAgICAgIEJleW9uZCB0aGUgdHdvIGZpeGVkIENWRXMsIHRoaXMgZG9jdW1lbnQgYWRk
cyBubyBuZXcgc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMgb24gdG9wIG9mCisgICAgICAgIDx4cmVm
IHRhcmdldD0iUkZDNjcxNiI+UkZDIDY3MTY8L3hyZWY+LgorICAgICAgPC90PgorICAgIDwvc2Vj
dGlvbj4KKworICAgIDxzZWN0aW9uIGFuY2hvcj0iSUFOQSIgdGl0bGU9IklBTkEgQ29uc2lkZXJh
dGlvbnMiPgorICAgICAgPHQ+VGhpcyBkb2N1bWVudCBtYWtlcyBubyByZXF1ZXN0IG9mIElBTkEu
PC90PgorCisgICAgICA8dD5Ob3RlIHRvIFJGQyBFZGl0b3I6IHRoaXMgc2VjdGlvbiBtYXkgYmUg
cmVtb3ZlZCBvbiBwdWJsaWNhdGlvbiBhcyBhbgorICAgICAgUkZDLjwvdD4KKyAgICA8L3NlY3Rp
b24+CisKKyAgICA8c2VjdGlvbiBhbmNob3I9IkFja25vd2xlZGdlbWVudHMiIHRpdGxlPSJBY2tu
b3dsZWRnZW1lbnRzIj4KKyAgICAgIDx0PldlIHdvdWxkIGxpa2UgdG8gdGhhbmsgSnVyaSBBZWRs
YSBmb3IgcmVwb3J0aW5nIHRoZSBpc3N1ZSB3aXRoIHRoZSBwYXJzaW5nIG9mCisgICAgICB0aGUg
T3B1cyBwYWRkaW5nLiBUaGFua3MgdG8gRmVsaWNpYSBMaW0gZm9yIHJlcG9ydGluZyB0aGUgTFNG
IGludGVnZXIgb3ZlcmZsb3cgaXNzdWUuCisgICAgICBBbHNvLCB0aGFua3MgdG8gVGluYSBsZSBH
cmFuZCwgSm9uYXRoYW4gTGVubm94LCBhbmQgTWFyayBIYXJyaXMgZm9yIHRoZWlyCisgICAgICBm
ZWVkYmFjayBvbiB0aGlzIGRvY3VtZW50LjwvdD4KKyAgICA8L3NlY3Rpb24+CisgIDwvbWlkZGxl
PgorCisgIDxiYWNrPgorICAgIDxyZWZlcmVuY2VzIHRpdGxlPSJOb3JtYXRpdmUgUmVmZXJlbmNl
cyI+CisgICAgICA8P3JmYyBpbmNsdWRlPSJodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMv
cmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjIxMTkueG1sIj8+CisgICAgICA8P3JmYyBpbmNsdWRl
PSJodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZD
LjY3MTYueG1sIj8+CisKKworICAgIDwvcmVmZXJlbmNlcz4KKyAgPC9iYWNrPgorPC9yZmM+CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2RvYy9kcmFmdC1pZXRmLWNvZGVjLW9wdXMueG1sIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1j
b2RlYy1vcHVzLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMzRjYWQ5N2EyN2Q3ZTdiZjFjZGQwOWY0OTE0Y2I2
YTk2YWU0NzExCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLnht
bApAQCAtMCwwICsxLDgyNzYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04
Ij8+Cis8IURPQ1RZUEUgcmZjIFNZU1RFTSAncmZjMjYyOS5kdGQnPgorPD9yZmMgdG9jPSJ5ZXMi
IHN5bXJlZnM9InllcyIgPz4KKworPHJmYyBpcHI9InRydXN0MjAwOTAyIiBjYXRlZ29yeT0ic3Rk
IiBkb2NOYW1lPSJkcmFmdC1pZXRmLWNvZGVjLW9wdXMtMTQiPgorCis8ZnJvbnQ+Cis8dGl0bGUg
YWJicmV2PSJJbnRlcmFjdGl2ZSBBdWRpbyBDb2RlYyI+RGVmaW5pdGlvbiBvZiB0aGUgT3B1cyBB
dWRpbyBDb2RlYzwvdGl0bGU+CisKKworPGF1dGhvciBpbml0aWFscz0iSk0iIHN1cm5hbWU9IlZh
bGluIiBmdWxsbmFtZT0iSmVhbi1NYXJjIFZhbGluIj4KKzxvcmdhbml6YXRpb24+TW96aWxsYSBD
b3Jwb3JhdGlvbjwvb3JnYW5pemF0aW9uPgorPGFkZHJlc3M+Cis8cG9zdGFsPgorPHN0cmVldD42
NTAgQ2FzdHJvIFN0cmVldDwvc3RyZWV0PgorPGNpdHk+TW91bnRhaW4gVmlldzwvY2l0eT4KKzxy
ZWdpb24+Q0E8L3JlZ2lvbj4KKzxjb2RlPjk0MDQxPC9jb2RlPgorPGNvdW50cnk+VVNBPC9jb3Vu
dHJ5PgorPC9wb3N0YWw+Cis8cGhvbmU+KzEgNjUwIDkwMy0wODAwPC9waG9uZT4KKzxlbWFpbD5q
bXZhbGluQGptdmFsaW4uY2E8L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisKKzxhdXRo
b3IgaW5pdGlhbHM9IksuIiBzdXJuYW1lPSJWb3MiIGZ1bGxuYW1lPSJLb2VuIFZvcyI+Cis8b3Jn
YW5pemF0aW9uPlNreXBlIFRlY2hub2xvZ2llcyBTLkEuPC9vcmdhbml6YXRpb24+Cis8YWRkcmVz
cz4KKzxwb3N0YWw+Cis8c3RyZWV0PlNvZGVyIE1hbGFyc3RyYW5kIDQzPC9zdHJlZXQ+Cis8Y2l0
eT5TdG9ja2hvbG08L2NpdHk+Cis8cmVnaW9uPjwvcmVnaW9uPgorPGNvZGU+MTE4MjU8L2NvZGU+
Cis8Y291bnRyeT5TRTwvY291bnRyeT4KKzwvcG9zdGFsPgorPHBob25lPis0NiA3MyAwODUgNzYx
OTwvcGhvbmU+Cis8ZW1haWw+a29lbi52b3NAc2t5cGUubmV0PC9lbWFpbD4KKzwvYWRkcmVzcz4K
KzwvYXV0aG9yPgorCis8YXV0aG9yIGluaXRpYWxzPSJULiIgc3VybmFtZT0iVGVycmliZXJyeSIg
ZnVsbG5hbWU9IlRpbW90aHkgQi4gVGVycmliZXJyeSI+Cis8b3JnYW5pemF0aW9uPk1vemlsbGEg
Q29ycG9yYXRpb248L29yZ2FuaXphdGlvbj4KKzxhZGRyZXNzPgorPHBvc3RhbD4KKzxzdHJlZXQ+
NjUwIENhc3RybyBTdHJlZXQ8L3N0cmVldD4KKzxjaXR5Pk1vdW50YWluIFZpZXc8L2NpdHk+Cis8
cmVnaW9uPkNBPC9yZWdpb24+Cis8Y29kZT45NDA0MTwvY29kZT4KKzxjb3VudHJ5PlVTQTwvY291
bnRyeT4KKzwvcG9zdGFsPgorPHBob25lPisxIDY1MCA5MDMtMDgwMDwvcGhvbmU+Cis8ZW1haWw+
dHRlcnJpYmVycnlAbW96aWxsYS5jb208L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisK
KzxkYXRlIGRheT0iMTciIG1vbnRoPSJNYXkiIHllYXI9IjIwMTIiIC8+CisKKzxhcmVhPkdlbmVy
YWw8L2FyZWE+CisKKzx3b3JrZ3JvdXA+PC93b3JrZ3JvdXA+CisKKzxhYnN0cmFjdD4KKzx0Pgor
VGhpcyBkb2N1bWVudCBkZWZpbmVzIHRoZSBPcHVzIGludGVyYWN0aXZlIHNwZWVjaCBhbmQgYXVk
aW8gY29kZWMuCitPcHVzIGlzIGRlc2lnbmVkIHRvIGhhbmRsZSBhIHdpZGUgcmFuZ2Ugb2YgaW50
ZXJhY3RpdmUgYXVkaW8gYXBwbGljYXRpb25zLAorIGluY2x1ZGluZyBWb2ljZSBvdmVyIElQLCB2
aWRlb2NvbmZlcmVuY2luZywgaW4tZ2FtZSBjaGF0LCBhbmQgZXZlbiBsaXZlLAorIGRpc3RyaWJ1
dGVkIG11c2ljIHBlcmZvcm1hbmNlcy4KK0l0IHNjYWxlcyBmcm9tIGxvdyBiaXRyYXRlIG5hcnJv
d2JhbmQgc3BlZWNoIGF0IDYga2IvcyB0byB2ZXJ5IGhpZ2ggcXVhbGl0eQorIHN0ZXJlbyBtdXNp
YyBhdCA1MTAga2Ivcy4KK09wdXMgdXNlcyBib3RoIGxpbmVhciBwcmVkaWN0aW9uIChMUCkgYW5k
IHRoZSBNb2RpZmllZCBEaXNjcmV0ZSBDb3NpbmUKKyBUcmFuc2Zvcm0gKE1EQ1QpIHRvIGFjaGll
dmUgZ29vZCBjb21wcmVzc2lvbiBvZiBib3RoIHNwZWVjaCBhbmQgbXVzaWMuCis8L3Q+Cis8L2Fi
c3RyYWN0PgorPC9mcm9udD4KKworPG1pZGRsZT4KKworPHNlY3Rpb24gYW5jaG9yPSJpbnRyb2R1
Y3Rpb24iIHRpdGxlPSJJbnRyb2R1Y3Rpb24iPgorPHQ+CitUaGUgT3B1cyBjb2RlYyBpcyBhIHJl
YWwtdGltZSBpbnRlcmFjdGl2ZSBhdWRpbyBjb2RlYyBkZXNpZ25lZCB0byBtZWV0IHRoZSByZXF1
aXJlbWVudHMKK2Rlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9InJlcXVpcmVtZW50cyI+PC94cmVm
Pi4KK0l0IGlzIGNvbXBvc2VkIG9mIGEgbGluZWFyCisgcHJlZGljdGlvbiAoTFApLWJhc2VkIDx4
cmVmIHRhcmdldD0iTFBDIi8+IGxheWVyIGFuZCBhIE1vZGlmaWVkIERpc2NyZXRlIENvc2luZSBU
cmFuc2Zvcm0KKyAoTURDVCktYmFzZWQgPHhyZWYgdGFyZ2V0PSJNRENUIi8+IGxheWVyLgorVGhl
IG1haW4gaWRlYSBiZWhpbmQgdXNpbmcgdHdvIGxheWVycyBpcyB0aGF0IGluIHNwZWVjaCwgbGlu
ZWFyIHByZWRpY3Rpb24KKyB0ZWNobmlxdWVzIChzdWNoIGFzIENvZGUtRXhjaXRlZCBMaW5lYXIg
UHJlZGljdGlvbiwgb3IgQ0VMUCkgY29kZSBsb3cgZnJlcXVlbmNpZXMgbW9yZSBlZmZpY2llbnRs
eSB0aGFuIHRyYW5zZm9ybQorIChlLmcuLCBNRENUKSBkb21haW4gdGVjaG5pcXVlcywgd2hpbGUg
dGhlIHNpdHVhdGlvbiBpcyByZXZlcnNlZCBmb3IgbXVzaWMgYW5kCisgaGlnaGVyIHNwZWVjaCBm
cmVxdWVuY2llcy4KK1RodXMgYSBjb2RlYyB3aXRoIGJvdGggbGF5ZXJzIGF2YWlsYWJsZSBjYW4g
b3BlcmF0ZSBvdmVyIGEgd2lkZXIgcmFuZ2UgdGhhbgorIGVpdGhlciBvbmUgYWxvbmUgYW5kLCBi
eSBjb21iaW5pbmcgdGhlbSwgYWNoaWV2ZSBiZXR0ZXIgcXVhbGl0eSB0aGFuIGVpdGhlcgorIG9u
ZSBpbmRpdmlkdWFsbHkuCis8L3Q+CisKKzx0PgorVGhlIHByaW1hcnkgbm9ybWF0aXZlIHBhcnQg
b2YgdGhpcyBzcGVjaWZpY2F0aW9uIGlzIHByb3ZpZGVkIGJ5IHRoZSBzb3VyY2UgY29kZQorIGlu
IDx4cmVmIHRhcmdldD0icmVmLWltcGxlbWVudGF0aW9uIj48L3hyZWY+LgorT25seSB0aGUgZGVj
b2RlciBwb3J0aW9uIG9mIHRoaXMgc29mdHdhcmUgaXMgbm9ybWF0aXZlLCB0aG91Z2ggYQorIHNp
Z25pZmljYW50IGFtb3VudCBvZiBjb2RlIGlzIHNoYXJlZCBieSBib3RoIHRoZSBlbmNvZGVyIGFu
ZCBkZWNvZGVyLgorPHhyZWYgdGFyZ2V0PSJjb25mb3JtYW5jZSIvPiBwcm92aWRlcyBhIGRlY29k
ZXIgY29uZm9ybWFuY2UgdGVzdC4KK1RoZSBkZWNvZGVyIGNvbnRhaW5zIGEgZ3JlYXQgZGVhbCBv
ZiBpbnRlZ2VyIGFuZCBmaXhlZC1wb2ludCBhcml0aG1ldGljIHdoaWNoCisgbmVlZHMgdG8gYmUg
cGVyZm9ybWVkIGV4YWN0bHksIGluY2x1ZGluZyBhbGwgcm91bmRpbmcgY29uc2lkZXJhdGlvbnMs
IHNvIGFueQorIHVzZWZ1bCBzcGVjaWZpY2F0aW9uIHJlcXVpcmVzIGRvbWFpbi1zcGVjaWZpYyBz
eW1ib2xpYyBsYW5ndWFnZSB0byBhZGVxdWF0ZWx5CisgZGVmaW5lIHRoZXNlIG9wZXJhdGlvbnMu
CitBZGRpdGlvbmFsbHksIGFueQorY29uZmxpY3QgYmV0d2VlbiB0aGUgc3ltYm9saWMgcmVwcmVz
ZW50YXRpb24gYW5kIHRoZSBpbmNsdWRlZCByZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uIG11c3Qg
YmUgcmVzb2x2ZWQuIEZvciB0aGUgcHJhY3RpY2FsIHJlYXNvbnMgb2YgY29tcGF0aWJpbGl0eSBh
bmQKK3Rlc3RhYmlsaXR5IGl0IHdvdWxkIGJlIGFkdmFudGFnZW91cyB0byBnaXZlIHRoZSByZWZl
cmVuY2UgaW1wbGVtZW50YXRpb24KK3ByaW9yaXR5IGluIGFueSBkaXNhZ3JlZW1lbnQuIFRoZSBD
IGxhbmd1YWdlIGlzIGFsc28gb25lIG9mIHRoZSBtb3N0Cit3aWRlbHkgdW5kZXJzdG9vZCBodW1h
bi1yZWFkYWJsZSBzeW1ib2xpYyByZXByZXNlbnRhdGlvbnMgZm9yIG1hY2hpbmUKK2JlaGF2aW9y
LgorRm9yIHRoZXNlIHJlYXNvbnMgdGhpcyBSRkMgdXNlcyB0aGUgcmVmZXJlbmNlIGltcGxlbWVu
dGF0aW9uIGFzIHRoZSBzb2xlCisgc3ltYm9saWMgcmVwcmVzZW50YXRpb24gb2YgdGhlIGNvZGVj
LgorPC90PgorCis8dD5XaGlsZSB0aGUgc3ltYm9saWMgcmVwcmVzZW50YXRpb24gaXMgdW5hbWJp
Z3VvdXMgYW5kIGNvbXBsZXRlIGl0IGlzIG5vdAorYWx3YXlzIHRoZSBlYXNpZXN0IHdheSB0byB1
bmRlcnN0YW5kIHRoZSBjb2RlYydzIG9wZXJhdGlvbi4gRm9yIHRoaXMgcmVhc29uCit0aGlzIGRv
Y3VtZW50IGFsc28gZGVzY3JpYmVzIHNpZ25pZmljYW50IHBhcnRzIG9mIHRoZSBjb2RlYyBpbiBF
bmdsaXNoIGFuZAordGFrZXMgdGhlIG9wcG9ydHVuaXR5IHRvIGV4cGxhaW4gdGhlIHJhdGlvbmFs
ZSBiZWhpbmQgbWFueSBvZiB0aGUgbW9yZQorc3VycHJpc2luZyBlbGVtZW50cyBvZiB0aGUgZGVz
aWduLiBUaGVzZSBkZXNjcmlwdGlvbnMgYXJlIGludGVuZGVkIHRvIGJlCithY2N1cmF0ZSBhbmQg
aW5mb3JtYXRpdmUsIGJ1dCB0aGUgbGltaXRhdGlvbnMgb2YgY29tbW9uIEVuZ2xpc2ggc29tZXRp
bWVzCityZXN1bHQgaW4gYW1iaWd1aXR5LCBzbyBpdCBpcyBleHBlY3RlZCB0aGF0IHRoZSByZWFk
ZXIgd2lsbCBhbHdheXMgcmVhZAordGhlbSBhbG9uZ3NpZGUgdGhlIHN5bWJvbGljIHJlcHJlc2Vu
dGF0aW9uLiBOdW1lcm91cyByZWZlcmVuY2VzIHRvIHRoZQoraW1wbGVtZW50YXRpb24gYXJlIHBy
b3ZpZGVkIGZvciB0aGlzIHB1cnBvc2UuIFRoZSBkZXNjcmlwdGlvbnMgc29tZXRpbWVzCitkaWZm
ZXIgZnJvbSB0aGUgcmVmZXJlbmNlIGluIG9yZGVyaW5nIG9yIHRocm91Z2ggbWF0aGVtYXRpY2Fs
IHNpbXBsaWZpY2F0aW9uCit3aGVyZXZlciBzdWNoIGRldmlhdGlvbiBtYWtlcyBhbiBleHBsYW5h
dGlvbiBlYXNpZXIgdG8gdW5kZXJzdGFuZC4KK0ZvciBleGFtcGxlLCB0aGUgcmlnaHQgc2hpZnQg
YW5kIGxlZnQgc2hpZnQgb3BlcmF0aW9ucyBpbiB0aGUgcmVmZXJlbmNlCitpbXBsZW1lbnRhdGlv
biBhcmUgb2Z0ZW4gZGVzY3JpYmVkIHVzaW5nIGRpdmlzaW9uIGFuZCBtdWx0aXBsaWNhdGlvbiBp
biB0aGUgdGV4dC4KK0luIGdlbmVyYWwsIHRoZSB0ZXh0IGlzIGZvY3VzZWQgb24gdGhlICJ3aGF0
IiBhbmQgIndoeSIgd2hpbGUgdGhlIHN5bWJvbGljCityZXByZXNlbnRhdGlvbiBtb3N0IGNsZWFy
bHkgcHJvdmlkZXMgdGhlICJob3ciLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9Im5vdGF0aW9u
IiB0aXRsZT0iTm90YXRpb24gYW5kIENvbnZlbnRpb25zIj4KKzx0PgorVGhlIGtleSB3b3JkcyAi
TVVTVCIsICJNVVNUIE5PVCIsICJSRVFVSVJFRCIsICJTSEFMTCIsICJTSEFMTCBOT1QiLCAiU0hP
VUxEIiwKKyAiU0hPVUxEIE5PVCIsICJSRUNPTU1FTkRFRCIsICJNQVkiLCBhbmQgIk9QVElPTkFM
IiBpbiB0aGlzIGRvY3VtZW50IGFyZSB0byBiZQorIGludGVycHJldGVkIGFzIGRlc2NyaWJlZCBp
biBSRkMgMjExOSA8eHJlZiB0YXJnZXQ9InJmYzIxMTkiPjwveHJlZj4uCis8L3Q+Cis8dD4KK1Zh
cmlvdXMgb3BlcmF0aW9ucyBpbiB0aGUgY29kZWMgcmVxdWlyZSBiaXQtZXhhY3QgZml4ZWQtcG9p
bnQgYmVoYXZpb3IsIGV2ZW4KKyB3aGVuIHdyaXRpbmcgYSBmbG9hdGluZyBwb2ludCBpbXBsZW1l
bnRhdGlvbi4KK1RoZSBub3RhdGlvbiAiUSZsdDtuJmd0OyIsIHdoZXJlIG4gaXMgYW4gaW50ZWdl
ciwgZGVub3RlcyB0aGUgbnVtYmVyIG9mIGJpbmFyeQorIGRpZ2l0cyB0byB0aGUgcmlnaHQgb2Yg
dGhlIGRlY2ltYWwgcG9pbnQgaW4gYSBmaXhlZC1wb2ludCBudW1iZXIuCitGb3IgZXhhbXBsZSwg
YSBzaWduZWQgUTE0IHZhbHVlIGluIGEgMTYtYml0IHdvcmQgY2FuIHJlcHJlc2VudCB2YWx1ZXMg
ZnJvbQorIC0yLjAgdG8gMS45OTk5Mzg5NjQ4NDM3NSwgaW5jbHVzaXZlLgorVGhpcyBub3RhdGlv
biBpcyBmb3IgaW5mb3JtYXRpb25hbCBwdXJwb3NlcyBvbmx5LgorQXJpdGhtZXRpYywgd2hlbiBk
ZXNjcmliZWQsIGFsd2F5cyBvcGVyYXRlcyBvbiB0aGUgdW5kZXJseWluZyBpbnRlZ2VyLgorRS5n
LiwgdGhlIHRleHQgd2lsbCBleHBsaWNpdGx5IGluZGljYXRlIGFueSBzaGlmdHMgcmVxdWlyZWQg
YWZ0ZXIgYQorIG11bHRpcGxpY2F0aW9uLgorPC90PgorPHQ+CitFeHByZXNzaW9ucywgd2hlcmUg
aW5jbHVkZWQgaW4gdGhlIHRleHQsIGZvbGxvdyBDIG9wZXJhdG9yIHJ1bGVzIGFuZAorIHByZWNl
ZGVuY2UsIHdpdGggdGhlIGV4Y2VwdGlvbiB0aGF0IHRoZSBzeW50YXggIngqKnkiIGluZGljYXRl
cyB4IHJhaXNlZCB0bworIHRoZSBwb3dlciB5LgorVGhlIHRleHQgYWxzbyBtYWtlcyB1c2Ugb2Yg
dGhlIGZvbGxvd2luZyBmdW5jdGlvbnM6Cis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0ibWluIiB0
b2M9ImV4Y2x1ZGUiIHRpdGxlPSJtaW4oeCx5KSI+Cis8dD4KK1RoZSBzbWFsbGVzdCBvZiB0d28g
dmFsdWVzIHggYW5kIHkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ibWF4
IiB0b2M9ImV4Y2x1ZGUiIHRpdGxlPSJtYXgoeCx5KSI+Cis8dD4KK1RoZSBsYXJnZXN0IG9mIHR3
byB2YWx1ZXMgeCBhbmQgeS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJj
bGFtcCIgdG9jPSJleGNsdWRlIiB0aXRsZT0iY2xhbXAobG8seCxoaSkiPgorPGZpZ3VyZSBhbGln
bj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworY2xhbXAobG8s
eCxoaSkgPSBtYXgobG8sbWluKHgsaGkpKQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8dD4K
K1dpdGggdGhpcyBkZWZpbml0aW9uLCBpZiBsbyZuYnNwOyZndDsmbmJzcDtoaSwgdGhlIGxvd2Vy
IGJvdW5kIGlzIHRoZSBvbmUgdGhhdAorIGlzIGVuZm9yY2VkLgorPC90PgorPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiBhbmNob3I9InNpZ24iIHRvYz0iZXhjbHVkZSIgdGl0bGU9InNpZ24oeCkiPgor
PHQ+CitUaGUgc2lnbiBvZiB4LCBpLmUuLAorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICggLTEsICB4IDwgMCAsCitz
aWduKHgpID0gPCAgMCwgIHggPT0gMCAsCisgICAgICAgICAgKCAgMSwgIHggPiAwIC4KK11dPjwv
YXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9
ImFicyIgdG9jPSJleGNsdWRlIiB0aXRsZT0iYWJzKHgpIj4KKzx0PgorVGhlIGFic29sdXRlIHZh
bHVlIG9mIHgsIGkuZS4sCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCithYnMoeCkgPSBzaWduKHgpKnggLgorXV0+PC9hcnR3b3JrPgor
PC9maWd1cmU+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZmxvb3IiIHRv
Yz0iZXhjbHVkZSIgdGl0bGU9ImZsb29yKGYpIj4KKzx0PgorVGhlIGxhcmdlc3QgaW50ZWdlciB6
IHN1Y2ggdGhhdCB6ICZsdDs9IGYuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hv
cj0iY2VpbCIgdG9jPSJleGNsdWRlIiB0aXRsZT0iY2VpbChmKSI+Cis8dD4KK1RoZSBzbWFsbGVz
dCBpbnRlZ2VyIHogc3VjaCB0aGF0IHogJmd0Oz0gZi4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNl
Y3Rpb24gYW5jaG9yPSJyb3VuZCIgdG9jPSJleGNsdWRlIiB0aXRsZT0icm91bmQoZikiPgorPHQ+
CitUaGUgaW50ZWdlciB6IG5lYXJlc3QgdG8gZiwgd2l0aCB0aWVzIHJvdW5kZWQgdG93YXJkcyBu
ZWdhdGl2ZSBpbmZpbml0eSwKKyBpLmUuLAorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIHJvdW5kKGYpID0gY2VpbChmIC0gMC41KSAu
CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
YW5jaG9yPSJsb2cyIiB0b2M9ImV4Y2x1ZGUiIHRpdGxlPSJsb2cyKGYpIj4KKzx0PgorVGhlIGJh
c2UtdHdvIGxvZ2FyaXRobSBvZiBmLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9Imlsb2ciIHRvYz0iZXhjbHVkZSIgdGl0bGU9Imlsb2cobikiPgorPHQ+CitUaGUgbWluaW11
bSBudW1iZXIgb2YgYml0cyByZXF1aXJlZCB0byBzdG9yZSBhIHBvc2l0aXZlIGludGVnZXIgbiBp
biB0d28ncworIGNvbXBsZW1lbnQgbm90YXRpb24sIG9yIDAgZm9yIGEgbm9uLXBvc2l0aXZlIGlu
dGVnZXIgbi4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij48IVtDREFUQVsKKyAgICAgICAgICAoIDAsICAgICAgICAgICAgICAgICBuIDw9IDAsCitpbG9n
KG4pID0gPAorICAgICAgICAgICggZmxvb3IobG9nMihuKSkrMSwgIG4gPiAwCitdXT48L2FydHdv
cms+Cis8L2ZpZ3VyZT4KK0V4YW1wbGVzOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+aWxv
ZygtMSkgPSAwPC90PgorPHQ+aWxvZygwKSA9IDA8L3Q+Cis8dD5pbG9nKDEpID0gMTwvdD4KKzx0
Pmlsb2coMikgPSAyPC90PgorPHQ+aWxvZygzKSA9IDI8L3Q+Cis8dD5pbG9nKDQpID0gMzwvdD4K
Kzx0Pmlsb2coNykgPSAzPC90PgorPC9saXN0PgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rp
b24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJvdmVydmlldyIgdGl0bGU9Ik9w
dXMgQ29kZWMgT3ZlcnZpZXciPgorCis8dD4KK1RoZSBPcHVzIGNvZGVjIHNjYWxlcyBmcm9tIDYm
bmJzcDtrYi9zIG5hcnJvd2JhbmQgbW9ubyBzcGVlY2ggdG8gNTEwJm5ic3A7a2IvcworIGZ1bGxi
YW5kIHN0ZXJlbyBtdXNpYywgd2l0aCBhbGdvcml0aG1pYyBkZWxheXMgcmFuZ2luZyBmcm9tIDUm
bmJzcDttcyB0bworIDY1LjImbmJzcDttcy4KK0F0IGFueSBnaXZlbiB0aW1lLCBlaXRoZXIgdGhl
IExQIGxheWVyLCB0aGUgTURDVCBsYXllciwgb3IgYm90aCwgbWF5IGJlIGFjdGl2ZS4KK0l0IGNh
biBzZWFtbGVzc2x5IHN3aXRjaCBiZXR3ZWVuIGFsbCBvZiBpdHMgdmFyaW91cyBvcGVyYXRpbmcg
bW9kZXMsIGdpdmluZyBpdAorIGEgZ3JlYXQgZGVhbCBvZiBmbGV4aWJpbGl0eSB0byBhZGFwdCB0
byB2YXJ5aW5nIGNvbnRlbnQgYW5kIG5ldHdvcmsKKyBjb25kaXRpb25zIHdpdGhvdXQgcmVuZWdv
dGlhdGluZyB0aGUgY3VycmVudCBzZXNzaW9uLgorVGhlIGNvZGVjIGFsbG93cyBpbnB1dCBhbmQg
b3V0cHV0IG9mIHZhcmlvdXMgYXVkaW8gYmFuZHdpZHRocywgZGVmaW5lZCBhcworIGZvbGxvd3M6
Cis8L3Q+Cis8dGV4dHRhYmxlIGFuY2hvcj0iYXVkaW8tYmFuZHdpZHRoIj4KKzx0dGNvbD5BYmJy
ZXZpYXRpb248L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+QXVkaW8gQmFuZHdpZHRoPC90
dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPlNhbXBsZSBSYXRlIChFZmZlY3RpdmUpPC90dGNv
bD4KKzxjPk5CIChuYXJyb3diYW5kKTwvYz4gICAgICAgPGM+NCZuYnNwO2tIejwvYz4gIDxjPjgm
bmJzcDtrSHo8L2M+Cis8Yz5NQiAobWVkaXVtLWJhbmQpPC9jPiAgICAgIDxjPjYmbmJzcDtrSHo8
L2M+IDxjPjEyJm5ic3A7a0h6PC9jPgorPGM+V0IgKHdpZGViYW5kKTwvYz4gICAgICAgICA8Yz44
Jm5ic3A7a0h6PC9jPiA8Yz4xNiZuYnNwO2tIejwvYz4KKzxjPlNXQiAoc3VwZXItd2lkZWJhbmQp
PC9jPiA8Yz4xMiZuYnNwO2tIejwvYz4gPGM+MjQmbmJzcDtrSHo8L2M+Cis8Yz5GQiAoZnVsbGJh
bmQpPC9jPiAgICAgICAgPGM+MjAmbmJzcDtrSHogKCopPC9jPiA8Yz40OCZuYnNwO2tIejwvYz4K
KzwvdGV4dHRhYmxlPgorPHQ+CisoKikgQWx0aG91Z2ggdGhlIHNhbXBsaW5nIHRoZW9yZW0gYWxs
b3dzIGEgYmFuZHdpZHRoIGFzIGxhcmdlIGFzIGhhbGYgdGhlCisgc2FtcGxpbmcgcmF0ZSwgT3B1
cyBuZXZlciBjb2RlcyBhdWRpbyBhYm92ZSAyMCZuYnNwO2tIeiwgYXMgdGhhdCBpcyB0aGUKKyBn
ZW5lcmFsbHkgYWNjZXB0ZWQgdXBwZXIgbGltaXQgb2YgaHVtYW4gaGVhcmluZy4KKzwvdD4KKwor
PHQ+CitPcHVzIGRlZmluZXMgc3VwZXItd2lkZWJhbmQgKFNXQikgd2l0aCBhbiBlZmZlY3RpdmUg
c2FtcGxlIHJhdGUgb2YgMjQmbmJzcDtrSHosCisgdW5saWtlIHNvbWUgb3RoZXIgYXVkaW8gY29k
aW5nIHN0YW5kYXJkcyB0aGF0IHVzZSAzMiZuYnNwO2tIei4KK1RoaXMgd2FzIGNob3NlbiBmb3Ig
YSBudW1iZXIgb2YgcmVhc29ucy4KK1RoZSBiYW5kIGxheW91dCBpbiB0aGUgTURDVCBsYXllciBu
YXR1cmFsbHkgYWxsb3dzIHNraXBwaW5nIGNvZWZmaWNpZW50cyBmb3IKKyBmcmVxdWVuY2llcyBv
dmVyIDEyJm5ic3A7a0h6LCBidXQgZG9lcyBub3QgYWxsb3cgY2xlYW5seSBkcm9wcGluZyBqdXN0
IHRob3NlCisgZnJlcXVlbmNpZXMgb3ZlciAxNiZuYnNwO2tIei4KK0Egc2FtcGxlIHJhdGUgb2Yg
MjQmbmJzcDtrSHogYWxzbyBtYWtlcyByZXNhbXBsaW5nIGluIHRoZSBNRENUIGxheWVyIGVhc2ll
ciwKKyBhcyAyNCBldmVubHkgZGl2aWRlcyA0OCwgYW5kIHdoZW4gMjQmbmJzcDtrSHogaXMgc3Vm
ZmljaWVudCwgaXQgY2FuIHNhdmUKKyBjb21wdXRhdGlvbiBpbiBvdGhlciBwcm9jZXNzaW5nLCBz
dWNoIGFzIEFjb3VzdGljIEVjaG8gQ2FuY2VsbGF0aW9uIChBRUMpLgorRXhwZXJpbWVudGFsIGNo
YW5nZXMgdG8gdGhlIGJhbmQgbGF5b3V0IHRvIGFsbG93IGEgMTYmbmJzcDtrSHogY3V0b2ZmCisg
KDMyJm5ic3A7a0h6IGVmZmVjdGl2ZSBzYW1wbGUgcmF0ZSkgc2hvd2VkIHBvdGVudGlhbCBxdWFs
aXR5IGRlZ3JhZGF0aW9ucyBhdAorIG90aGVyIHNhbXBsZSByYXRlcywgYW5kIGF0IHR5cGljYWwg
Yml0cmF0ZXMgdGhlIG51bWJlciBvZiBiaXRzIHNhdmVkIGJ5IHVzaW5nCisgc3VjaCBhIGN1dG9m
ZiBpbnN0ZWFkIG9mIGNvZGluZyBpbiBmdWxsYmFuZCAoRkIpIG1vZGUgaXMgdmVyeSBzbWFsbC4K
K1RoZXJlZm9yZSwgaWYgYW4gYXBwbGljYXRpb24gd2lzaGVzIHRvIHByb2Nlc3MgYSBzaWduYWwg
c2FtcGxlZCBhdCAzMiZuYnNwO2tIeiwKKyBpdCBzaG91bGQganVzdCB1c2UgRkIuCis8L3Q+CisK
Kzx0PgorVGhlIExQIGxheWVyIGlzIGJhc2VkIG9uIHRoZSBTSUxLIGNvZGVjCisgPHhyZWYgdGFy
Z2V0PSJTSUxLIj48L3hyZWY+LgorSXQgc3VwcG9ydHMgTkIsIE1CLCBvciBXQiBhdWRpbyBhbmQg
ZnJhbWUgc2l6ZXMgZnJvbSAxMCZuYnNwO21zIHRvIDYwJm5ic3A7bXMsCisgYW5kIHJlcXVpcmVz
IGFuIGFkZGl0aW9uYWwgNSZuYnNwO21zIGxvb2stYWhlYWQgZm9yIG5vaXNlIHNoYXBpbmcgZXN0
aW1hdGlvbi4KK0Egc21hbGwgYWRkaXRpb25hbCBkZWxheSAodXAgdG8gMS41IG1zKSBtYXkgYmUg
cmVxdWlyZWQgZm9yIHNhbXBsaW5nIHJhdGUKKyBjb252ZXJzaW9uLgorTGlrZSBWb3JiaXMgPHhy
ZWYgdGFyZ2V0PSdWb3JiaXMtd2Vic2l0ZScvPiBhbmQgbWFueSBvdGhlciBtb2Rlcm4gY29kZWNz
LCBTSUxLIGlzIGluaGVyZW50bHkgZGVzaWduZWQgZm9yCisgdmFyaWFibGUtYml0cmF0ZSAoVkJS
KSBjb2RpbmcsIHRob3VnaCB0aGUgZW5jb2RlciBjYW4gYWxzbyBwcm9kdWNlCisgY29uc3RhbnQt
Yml0cmF0ZSAoQ0JSKSBzdHJlYW1zLgorVGhlIHZlcnNpb24gb2YgU0lMSyB1c2VkIGluIE9wdXMg
aXMgc3Vic3RhbnRpYWxseSBtb2RpZmllZCBmcm9tLCBhbmQgbm90CisgY29tcGF0aWJsZSB3aXRo
LCB0aGUgc3RhbmQtYWxvbmUgU0lMSyBjb2RlYyBwcmV2aW91c2x5IGRlcGxveWVkIGJ5IFNreXBl
LgorVGhpcyBkb2N1bWVudCBkb2VzIG5vdCBzZXJ2ZSB0byBkZWZpbmUgdGhhdCBmb3JtYXQsIGJ1
dCB0aG9zZSBpbnRlcmVzdGVkIGluIHRoZQorIG9yaWdpbmFsIFNJTEsgY29kZWMgc2hvdWxkIHNl
ZSA8eHJlZiB0YXJnZXQ9IlNJTEsiLz4gaW5zdGVhZC4KKzwvdD4KKworPHQ+CitUaGUgTURDVCBs
YXllciBpcyBiYXNlZCBvbiB0aGUgQ0VMVCAgY29kZWMgPHhyZWYgdGFyZ2V0PSJDRUxUIj48L3hy
ZWY+LgorSXQgc3VwcG9ydHMgTkIsIFdCLCBTV0IsIG9yIEZCIGF1ZGlvIGFuZCBmcmFtZSBzaXpl
cyBmcm9tIDIuNSZuYnNwO21zIHRvCisgMjAmbmJzcDttcywgYW5kIHJlcXVpcmVzIGFuIGFkZGl0
aW9uYWwgMi41Jm5ic3A7bXMgbG9vay1haGVhZCBkdWUgdG8gdGhlCisgb3ZlcmxhcHBpbmcgTURD
VCB3aW5kb3dzLgorVGhlIENFTFQgY29kZWMgaXMgaW5oZXJlbnRseSBkZXNpZ25lZCBmb3IgQ0JS
IGNvZGluZywgYnV0IHVubGlrZSBtYW55IENCUgorIGNvZGVjcyBpdCBpcyBub3QgbGltaXRlZCB0
byBhIHNldCBvZiBwcmVkZXRlcm1pbmVkIHJhdGVzLgorSXQgaW50ZXJuYWxseSBhbGxvY2F0ZXMg
Yml0cyB0byBleGFjdGx5IGZpbGwgYW55IGdpdmVuIHRhcmdldCBidWRnZXQsIGFuZCBhbgorIGVu
Y29kZXIgY2FuIHByb2R1Y2UgYSBWQlIgc3RyZWFtIGJ5IHZhcnlpbmcgdGhlIHRhcmdldCBvbiBh
IHBlci1mcmFtZSBiYXNpcy4KK1RoZSBNRENUIGxheWVyIGlzIG5vdCB1c2VkIGZvciBzcGVlY2gg
d2hlbiB0aGUgYXVkaW8gYmFuZHdpZHRoIGlzIFdCIG9yIGxlc3MsCisgYXMgaXQgaXMgbm90IHVz
ZWZ1bCB0aGVyZS4KK09uIHRoZSBvdGhlciBoYW5kLCBub24tc3BlZWNoIHNpZ25hbHMgYXJlIG5v
dCBhbHdheXMgYWRlcXVhdGVseSBjb2RlZCB1c2luZworIGxpbmVhciBwcmVkaWN0aW9uLCBzbyBm
b3IgbXVzaWMgb25seSB0aGUgTURDVCBsYXllciBzaG91bGQgYmUgdXNlZC4KKzwvdD4KKworPHQ+
CitBICJIeWJyaWQiIG1vZGUgYWxsb3dzIHRoZSB1c2Ugb2YgYm90aCBsYXllcnMgc2ltdWx0YW5l
b3VzbHkgd2l0aCBhIGZyYW1lIHNpemUKKyBvZiAxMCZuYnNwO29yIDIwJm5ic3A7bXMgYW5kIGEg
U1dCIG9yIEZCIGF1ZGlvIGJhbmR3aWR0aC4KK1RoZSBMUCBsYXllciBjb2RlcyB0aGUgbG93IGZy
ZXF1ZW5jaWVzIGJ5IHJlc2FtcGxpbmcgdGhlIHNpZ25hbCBkb3duIHRvIFdCLgorVGhlIE1EQ1Qg
bGF5ZXIgZm9sbG93cywgY29kaW5nIHRoZSBoaWdoIGZyZXF1ZW5jeSBwb3J0aW9uIG9mIHRoZSBz
aWduYWwuCitUaGUgY3V0b2ZmIGJldHdlZW4gdGhlIHR3byBsaWVzIGF0IDgmbmJzcDtrSHosIHRo
ZSBtYXhpbXVtIFdCIGF1ZGlvIGJhbmR3aWR0aC4KK0luIHRoZSBNRENUIGxheWVyLCBhbGwgYmFu
ZHMgYmVsb3cgOCZuYnNwO2tIeiBhcmUgZGlzY2FyZGVkLCBzbyB0aGVyZSBpcyBubworIGNvZGlu
ZyByZWR1bmRhbmN5IGJldHdlZW4gdGhlIHR3byBsYXllcnMuCis8L3Q+CisKKzx0PgorVGhlIHNh
bXBsZSByYXRlIChpbiBjb250cmFzdCB0byB0aGUgYWN0dWFsIGF1ZGlvIGJhbmR3aWR0aCkgY2Fu
IGJlIGNob3NlbgorIGluZGVwZW5kZW50bHkgb24gdGhlIGVuY29kZXIgYW5kIGRlY29kZXIgc2lk
ZSwgZS5nLiwgYSBmdWxsYmFuZCBzaWduYWwgY2FuIGJlCisgZGVjb2RlZCBhcyB3aWRlYmFuZCwg
b3IgdmljZSB2ZXJzYS4KK1RoaXMgYXBwcm9hY2ggZW5zdXJlcyBhIHNlbmRlciBhbmQgcmVjZWl2
ZXIgY2FuIGFsd2F5cyBpbnRlcm9wZXJhdGUsIHJlZ2FyZGxlc3MKKyBvZiB0aGUgY2FwYWJpbGl0
aWVzIG9mIHRoZWlyIGFjdHVhbCBhdWRpbyBoYXJkd2FyZS4KK0ludGVybmFsbHksIHRoZSBMUCBs
YXllciBhbHdheXMgb3BlcmF0ZXMgYXQgYSBzYW1wbGUgcmF0ZSBvZiB0d2ljZSB0aGUgYXVkaW8K
KyBiYW5kd2lkdGgsIHVwIHRvIGEgbWF4aW11bSBvZiAxNiZuYnNwO2tIeiwgd2hpY2ggaXQgY29u
dGludWVzIHRvIHVzZSBmb3IgU1dCCisgYW5kIEZCLgorVGhlIGRlY29kZXIgc2ltcGx5IHJlc2Ft
cGxlcyBpdHMgb3V0cHV0IHRvIHN1cHBvcnQgZGlmZmVyZW50IHNhbXBsZSByYXRlcy4KK1RoZSBN
RENUIGxheWVyIGFsd2F5cyBvcGVyYXRlcyBpbnRlcm5hbGx5IGF0IGEgc2FtcGxlIHJhdGUgb2Yg
NDgmbmJzcDtrSHouCitTaW5jZSBhbGwgdGhlIHN1cHBvcnRlZCBzYW1wbGUgcmF0ZXMgZXZlbmx5
IGRpdmlkZSB0aGlzIHJhdGUsIGFuZCBzaW5jZSB0aGUKKyB0aGUgZGVjb2RlciBtYXkgZWFzaWx5
IHplcm8gb3V0IHRoZSBoaWdoIGZyZXF1ZW5jeSBwb3J0aW9uIG9mIHRoZSBzcGVjdHJ1bSBpbgor
IHRoZSBmcmVxdWVuY3kgZG9tYWluLCBpdCBjYW4gc2ltcGx5IGRlY2ltYXRlIHRoZSBNRENUIGxh
eWVyIG91dHB1dCB0byBhY2hpZXZlCisgdGhlIG90aGVyIHN1cHBvcnRlZCBzYW1wbGUgcmF0ZXMg
dmVyeSBjaGVhcGx5LgorPC90PgorCis8dD4KK0FmdGVyIGNvbnZlcnNpb24gdG8gdGhlIGNvbW1v
biwgZGVzaXJlZCBvdXRwdXQgc2FtcGxlIHJhdGUsIHRoZSBkZWNvZGVyIHNpbXBseQorIGFkZHMg
dGhlIG91dHB1dCBmcm9tIHRoZSB0d28gbGF5ZXJzIHRvZ2V0aGVyLgorVG8gY29tcGVuc2F0ZSBm
b3IgdGhlIGRpZmZlcmVudCBsb29rLWFoZWFkIHJlcXVpcmVkIGJ5IGVhY2ggbGF5ZXIsIHRoZSBD
RUxUCisgZW5jb2RlciBpbnB1dCBpcyBkZWxheWVkIGJ5IGFuIGFkZGl0aW9uYWwgMi43Jm5ic3A7
bXMuCitUaGlzIGVuc3VyZXMgdGhhdCBsb3cgZnJlcXVlbmNpZXMgYW5kIGhpZ2ggZnJlcXVlbmNp
ZXMgYXJyaXZlIGF0IHRoZSBzYW1lIHRpbWUuCitUaGlzIGV4dHJhIGRlbGF5IG1heSBiZSByZWR1
Y2VkIGJ5IGFuIGVuY29kZXIgYnkgdXNpbmcgbGVzcyBsb29rLWFoZWFkIGZvciBub2lzZQorIHNo
YXBpbmcgb3IgdXNpbmcgYSBzaW1wbGVyIHJlc2FtcGxlciBpbiB0aGUgTFAgbGF5ZXIsIGJ1dCB0
aGlzIHdpbGwgcmVkdWNlCisgcXVhbGl0eS4KK0hvd2V2ZXIsIHRoZSBiYXNlIDIuNSZuYnNwO21z
IGxvb2stYWhlYWQgaW4gdGhlIENFTFQgbGF5ZXIgY2Fubm90IGJlIHJlZHVjZWQgaW4KKyB0aGUg
ZW5jb2RlciBiZWNhdXNlIGl0IGlzIG5lZWRlZCBmb3IgdGhlIE1EQ1Qgb3ZlcmxhcCwgd2hvc2Ug
c2l6ZSBpcyBmaXhlZCBieQorIHRoZSBkZWNvZGVyLgorPC90PgorCis8dD4KK0JvdGggbGF5ZXJz
IHVzZSB0aGUgc2FtZSBlbnRyb3B5IGNvZGVyLCBhdm9pZGluZyBhbnkgd2FzdGUgZnJvbSAicGFk
ZGluZyBiaXRzIgorIGJldHdlZW4gdGhlbS4KK1RoZSBoeWJyaWQgYXBwcm9hY2ggbWFrZXMgaXQg
ZWFzeSB0byBzdXBwb3J0IGJvdGggQ0JSIGFuZCBWQlIgY29kaW5nLgorQWx0aG91Z2ggdGhlIExQ
IGxheWVyIGlzIFZCUiwgdGhlIGJpdCBhbGxvY2F0aW9uIG9mIHRoZSBNRENUIGxheWVyIGNhbiBw
cm9kdWNlCisgYSBmaW5hbCBzdHJlYW0gdGhhdCBpcyBDQlIgYnkgdXNpbmcgYWxsIHRoZSBiaXRz
IGxlZnQgdW51c2VkIGJ5IHRoZSBMUCBsYXllci4KKzwvdD4KKworPHNlY3Rpb24gdGl0bGU9IkNv
bnRyb2wgUGFyYW1ldGVycyI+Cis8dD4KK1RoZSBPcHVzIGNvZGVjIGluY2x1ZGVzIGEgbnVtYmVy
IG9mIGNvbnRyb2wgcGFyYW1ldGVycyB3aGljaCBjYW4gYmUgY2hhbmdlZCBkeW5hbWljYWxseSBk
dXJpbmcKK3JlZ3VsYXIgb3BlcmF0aW9uIG9mIHRoZSBjb2RlYywgd2l0aG91dCBpbnRlcnJ1cHRp
bmcgdGhlIGF1ZGlvIHN0cmVhbSBmcm9tIHRoZSBlbmNvZGVyIHRvIHRoZSBkZWNvZGVyLgorVGhl
c2UgcGFyYW1ldGVycyBvbmx5IGFmZmVjdCB0aGUgZW5jb2RlciBzaW5jZSBhbnkgaW1wYWN0IHRo
ZXkgaGF2ZSBvbiB0aGUgYml0LXN0cmVhbSBpcyBzaWduYWxlZAoraW4tYmFuZCBzdWNoIHRoYXQg
YSBkZWNvZGVyIGNhbiBkZWNvZGUgYW55IE9wdXMgc3RyZWFtIHdpdGhvdXQgYW55IG91dC1vZi1i
YW5kIHNpZ25hbGluZy4gQW55IE9wdXMKK2ltcGxlbWVudGF0aW9uIGNhbiBhZGQgb3IgbW9kaWZ5
IHRoZXNlIGNvbnRyb2wgcGFyYW1ldGVycyB3aXRob3V0IGFmZmVjdGluZyBpbnRlcm9wZXJhYmls
aXR5LiBUaGUgbW9zdAoraW1wb3J0YW50IGVuY29kZXIgY29udHJvbCBwYXJhbWV0ZXJzIGluIHRo
ZSByZWZlcmVuY2UgZW5jb2RlciBhcmUgbGlzdGVkIGJlbG93LgorPC90PgorCis8c2VjdGlvbiB0
aXRsZT0iQml0cmF0ZSIgdG9jPSJleGxjdWRlIj4KKzx0PgorT3B1cyBzdXBwb3J0cyBhbGwgYml0
cmF0ZXMgZnJvbSA2Jm5ic3A7a2IvcyB0byA1MTAmbmJzcDtrYi9zLiBBbGwgb3RoZXIgcGFyYW1l
dGVycyBiZWluZworZXF1YWwsIGhpZ2hlciBiaXRyYXRlIHJlc3VsdHMgaW4gaGlnaGVyIHF1YWxp
dHkuIEZvciBhIGZyYW1lIHNpemUgb2YgMjAmbmJzcDttcywgdGhlc2UKK2FyZSB0aGUgYml0cmF0
ZSAic3dlZXQgc3BvdHMiIGZvciBPcHVzIGluIHZhcmlvdXMgY29uZmlndXJhdGlvbnM6Cis8bGlz
dCBzdHlsZT0ic3ltYm9scyI+Cis8dD44LTEyIGtiL3MgZm9yIE5CIHNwZWVjaCw8L3Q+Cis8dD4x
Ni0yMCBrYi9zIGZvciBXQiBzcGVlY2gsPC90PgorPHQ+MjgtNDAga2IvcyBmb3IgRkIgc3BlZWNo
LDwvdD4KKzx0PjQ4LTY0IGtiL3MgZm9yIEZCIG1vbm8gbXVzaWMsIGFuZDwvdD4KKzx0PjY0LTEy
OCBrYi9zIGZvciBGQiBzdGVyZW8gbXVzaWMuPC90PgorPC9saXN0PgorPC90PgorPC9zZWN0aW9u
PgorCis8c2VjdGlvbiB0aXRsZT0iTnVtYmVyIG9mIENoYW5uZWxzIChNb25vL1N0ZXJlbykiIHRv
Yz0iZXhsY3VkZSI+Cis8dD4KK09wdXMgY2FuIHRyYW5zbWl0IGVpdGhlciBtb25vIG9yIHN0ZXJl
byBmcmFtZXMgd2l0aGluIGEgc2luZ2xlIHN0cmVhbS4KK1doZW4gZGVjb2RpbmcgYSBtb25vIGZy
YW1lIGluIGEgc3RlcmVvIGRlY29kZXIsIHRoZSBsZWZ0IGFuZCByaWdodCBjaGFubmVscyBhcmUK
KyBpZGVudGljYWwsIGFuZCB3aGVuIGRlY29kaW5nIGEgc3RlcmVvIGZyYW1lIGluIGEgbW9ubyBk
ZWNvZGVyLCB0aGUgbW9ubyBvdXRwdXQKKyBpcyB0aGUgYXZlcmFnZSBvZiB0aGUgbGVmdCBhbmQg
cmlnaHQgY2hhbm5lbHMuCitJbiBzb21lIGNhc2VzLCBpdCBpcyBkZXNpcmFibGUgdG8gZW5jb2Rl
IGEgc3RlcmVvIGlucHV0IHN0cmVhbSBpbiBtb25vIChlLmcuLAorIGJlY2F1c2UgdGhlIGJpdHJh
dGUgaXMgdG9vIGxvdyB0byBlbmNvZGUgc3RlcmVvIHdpdGggc3VmZmljaWVudCBxdWFsaXR5KS4K
K1RoZSBudW1iZXIgb2YgY2hhbm5lbHMgZW5jb2RlZCBjYW4gYmUgc2VsZWN0ZWQgaW4gcmVhbC10
aW1lLCBidXQgYnkgZGVmYXVsdCB0aGUKKyByZWZlcmVuY2UgZW5jb2RlciBhdHRlbXB0cyB0byBt
YWtlIHRoZSBiZXN0IGRlY2lzaW9uIHBvc3NpYmxlIGdpdmVuIHRoZQorIGN1cnJlbnQgYml0cmF0
ZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IkF1ZGlvIEJhbmR3aWR0aCIg
dG9jPSJleGxjdWRlIj4KKzx0PgorVGhlIGF1ZGlvIGJhbmR3aWR0aHMgc3VwcG9ydGVkIGJ5IE9w
dXMgYXJlIGxpc3RlZCBpbgorIDx4cmVmIHRhcmdldD0iYXVkaW8tYmFuZHdpZHRoIi8+LgorSnVz
dCBsaWtlIGZvciB0aGUgbnVtYmVyIG9mIGNoYW5uZWxzLCBhbnkgZGVjb2RlciBjYW4gZGVjb2Rl
IGF1ZGlvIGVuY29kZWQgYXQKKyBhbnkgYmFuZHdpZHRoLgorRm9yIGV4YW1wbGUsIGFueSBPcHVz
IGRlY29kZXIgb3BlcmF0aW5nIGF0IDgmbmJzcDtrSHogY2FuIGRlY29kZSBhIEZCIE9wdXMKKyBm
cmFtZSwgYW5kIGFueSBPcHVzIGRlY29kZXIgb3BlcmF0aW5nIGF0IDQ4Jm5ic3A7a0h6IGNhbiBk
ZWNvZGUgYSBOQiBmcmFtZS4KK1NpbWlsYXJseSwgdGhlIHJlZmVyZW5jZSBlbmNvZGVyIGNhbiB0
YWtlIGEgNDgmbmJzcDtrSHogaW5wdXQgc2lnbmFsIGFuZAorIGVuY29kZSBpdCBhcyBOQi4KK1Ro
ZSBoaWdoZXIgdGhlIGF1ZGlvIGJhbmR3aWR0aCwgdGhlIGhpZ2hlciB0aGUgcmVxdWlyZWQgYml0
cmF0ZSB0byBhY2hpZXZlCisgYWNjZXB0YWJsZSBxdWFsaXR5LgorVGhlIGF1ZGlvIGJhbmR3aWR0
aCBjYW4gYmUgZXhwbGljaXRseSBzcGVjaWZpZWQgaW4gcmVhbC10aW1lLCBidXQgYnkgZGVmYXVs
dAorIHRoZSByZWZlcmVuY2UgZW5jb2RlciBhdHRlbXB0cyB0byBtYWtlIHRoZSBiZXN0IGJhbmR3
aWR0aCBkZWNpc2lvbiBwb3NzaWJsZQorIGdpdmVuIHRoZSBjdXJyZW50IGJpdHJhdGUuCis8L3Q+
Cis8L3NlY3Rpb24+CisKKworPHNlY3Rpb24gdGl0bGU9IkZyYW1lIER1cmF0aW9uIiB0b2M9ImV4
bGN1ZGUiPgorPHQ+CitPcHVzIGNhbiBlbmNvZGUgZnJhbWVzIG9mIDIuNSwgNSwgMTAsIDIwLCA0
MCBvciA2MCZuYnNwO21zLgorSXQgY2FuIGFsc28gY29tYmluZSBtdWx0aXBsZSBmcmFtZXMgaW50
byBwYWNrZXRzIG9mIHVwIHRvIDEyMCZuYnNwO21zLgorRm9yIHJlYWwtdGltZSBhcHBsaWNhdGlv
bnMsIHNlbmRpbmcgZmV3ZXIgcGFja2V0cyBwZXIgc2Vjb25kIHJlZHVjZXMgdGhlCisgYml0cmF0
ZSwgc2luY2UgaXQgcmVkdWNlcyB0aGUgb3ZlcmhlYWQgZnJvbSBJUCwgVURQLCBhbmQgUlRQIGhl
YWRlcnMuCitIb3dldmVyLCBpdCBpbmNyZWFzZXMgbGF0ZW5jeSBhbmQgc2Vuc2l0aXZpdHkgdG8g
cGFja2V0IGxvc3NlcywgYXMgbG9zaW5nIG9uZQorIHBhY2tldCBjb25zdGl0dXRlcyBhIGxvc3Mg
b2YgYSBiaWdnZXIgY2h1bmsgb2YgYXVkaW8uCitJbmNyZWFzaW5nIHRoZSBmcmFtZSBkdXJhdGlv
biBhbHNvIHNsaWdodGx5IGltcHJvdmVzIGNvZGluZyBlZmZpY2llbmN5LCBidXQgdGhlCisgZ2Fp
biBiZWNvbWVzIHNtYWxsIGZvciBmcmFtZSBzaXplcyBhYm92ZSAyMCZuYnNwO21zLgorRm9yIHRo
aXMgcmVhc29uLCAyMCZuYnNwO21zIGZyYW1lcyBhcmUgYSBnb29kIGNob2ljZSBmb3IgbW9zdCBh
cHBsaWNhdGlvbnMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJDb21wbGV4
aXR5IiB0b2M9ImV4bGN1ZGUiPgorPHQ+CitUaGVyZSBhcmUgdmFyaW91cyBhc3BlY3RzIG9mIHRo
ZSBPcHVzIGVuY29kaW5nIHByb2Nlc3Mgd2hlcmUgdHJhZGUtb2ZmcworY2FuIGJlIG1hZGUgYmV0
d2VlbiBDUFUgY29tcGxleGl0eSBhbmQgcXVhbGl0eS9iaXRyYXRlLiBJbiB0aGUgcmVmZXJlbmNl
CitlbmNvZGVyLCB0aGUgY29tcGxleGl0eSBpcyBzZWxlY3RlZCB1c2luZyBhbiBpbnRlZ2VyIGZy
b20gMCB0byAxMCwgd2hlcmUKKzAgaXMgdGhlIGxvd2VzdCBjb21wbGV4aXR5IGFuZCAxMCBpcyB0
aGUgaGlnaGVzdC4gRXhhbXBsZXMgb2YKK2NvbXB1dGF0aW9ucyBmb3Igd2hpY2ggc3VjaCB0cmFk
ZS1vZmZzIG1heSBvY2N1ciBhcmU6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5UaGUgb3Jk
ZXIgb2YgdGhlIHBpdGNoIGFuYWx5c2lzIHdoaXRlbmluZyBmaWx0ZXIgPHhyZWYgdGFyZ2V0PSJX
aGl0ZW5pbmciLz4sPC90PgorPHQ+VGhlIG9yZGVyIG9mIHRoZSBzaG9ydC10ZXJtIG5vaXNlIHNo
YXBpbmcgZmlsdGVyLDwvdD4KKzx0PlRoZSBudW1iZXIgb2Ygc3RhdGVzIGluIGRlbGF5ZWQgZGVj
aXNpb24gcXVhbnRpemF0aW9uIG9mIHRoZQorcmVzaWR1YWwgc2lnbmFsLCBhbmQ8L3Q+Cis8dD5U
aGUgdXNlIG9mIGNlcnRhaW4gYml0LXN0cmVhbSBmZWF0dXJlcyBzdWNoIGFzIHZhcmlhYmxlIHRp
bWUtZnJlcXVlbmN5CityZXNvbHV0aW9uIGFuZCB0aGUgcGl0Y2ggcG9zdC1maWx0ZXIuPC90Pgor
PC9saXN0PgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iUGFja2V0IExvc3Mg
UmVzaWxpZW5jZSIgdG9jPSJleGxjdWRlIj4KKzx0PgorQXVkaW8gY29kZWNzIG9mdGVuIGV4cGxv
aXQgaW50ZXItZnJhbWUgY29ycmVsYXRpb25zIHRvIHJlZHVjZSB0aGUKK2JpdHJhdGUgYXQgYSBj
b3N0IGluIGVycm9yIHByb3BhZ2F0aW9uOiBhZnRlciBsb3Npbmcgb25lIHBhY2tldAorc2V2ZXJh
bCBwYWNrZXRzIG5lZWQgdG8gYmUgcmVjZWl2ZWQgYmVmb3JlIHRoZSBkZWNvZGVyIGlzIGFibGUg
dG8KK2FjY3VyYXRlbHkgcmVjb25zdHJ1Y3QgdGhlIHNwZWVjaCBzaWduYWwuICBUaGUgZXh0ZW50
IHRvIHdoaWNoIE9wdXMKK2V4cGxvaXRzIGludGVyLWZyYW1lIGRlcGVuZGVuY2llcyBjYW4gYmUg
YWRqdXN0ZWQgb24gdGhlIGZseSB0bworY2hvb3NlIGEgdHJhZGUtb2ZmIGJldHdlZW4gYml0cmF0
ZSBhbmQgYW1vdW50IG9mIGVycm9yIHByb3BhZ2F0aW9uLgorPC90PgorPC9zZWN0aW9uPgorCis8
c2VjdGlvbiB0aXRsZT0iRm9yd2FyZCBFcnJvciBDb3JyZWN0aW9uIChGRUMpIiB0b2M9ImV4bGN1
ZGUiPgorPHQ+CisgICBBbm90aGVyIG1lY2hhbmlzbSBwcm92aWRpbmcgcm9idXN0bmVzcyBhZ2Fp
bnN0IHBhY2tldCBsb3NzIGlzIHRoZSBpbi1iYW5kCisgICBGb3J3YXJkIEVycm9yIENvcnJlY3Rp
b24gKEZFQykuICBQYWNrZXRzIHRoYXQgYXJlIGRldGVybWluZWQgdG8KKyAgIGNvbnRhaW4gcGVy
Y2VwdHVhbGx5IGltcG9ydGFudCBzcGVlY2ggaW5mb3JtYXRpb24sIHN1Y2ggYXMgb25zZXRzIG9y
CisgICB0cmFuc2llbnRzLCBhcmUgZW5jb2RlZCBhZ2FpbiBhdCBhIGxvd2VyIGJpdHJhdGUgYW5k
IHRoaXMgcmUtZW5jb2RlZAorICAgaW5mb3JtYXRpb24gaXMgYWRkZWQgdG8gYSBzdWJzZXF1ZW50
IHBhY2tldC4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IkNvbnN0YW50L1Zh
cmlhYmxlIEJpdHJhdGUiIHRvYz0iZXhsY3VkZSI+Cis8dD4KK09wdXMgaXMgbW9yZSBlZmZpY2ll
bnQgd2hlbiBvcGVyYXRpbmcgd2l0aCB2YXJpYWJsZSBiaXRyYXRlIChWQlIpLCB3aGljaCBpcwor
dGhlIGRlZmF1bHQuIEhvd2V2ZXIsIGluIHNvbWUgKHJhcmUpIGFwcGxpY2F0aW9ucywgY29uc3Rh
bnQgYml0cmF0ZSAoQ0JSKQoraXMgcmVxdWlyZWQuIFRoZXJlIGFyZSB0d28gbWFpbiByZWFzb25z
IHRvIG9wZXJhdGUgaW4gQ0JSIG1vZGU6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5XaGVu
IHRoZSB0cmFuc3BvcnQgb25seSBzdXBwb3J0cyBhIGZpeGVkIHNpemUgZm9yIGVhY2ggY29tcHJl
c3NlZCBmcmFtZTwvdD4KKzx0PldoZW4gZW5jcnlwdGlvbiBpcyB1c2VkIGZvciBhbiBhdWRpbyBz
dHJlYW0gdGhhdCBpcyBlaXRoZXIgaGlnaGx5IGNvbnN0cmFpbmVkCisgICAoZS5nLiB5ZXMvbm8s
IHJlY29yZGVkIHByb21wdHMpIG9yIGhpZ2hseSBzZW5zaXRpdmUgPHhyZWYgdGFyZ2V0PSJTUlRQ
LVZCUiI+PC94cmVmPiA8L3Q+Cis8L2xpc3Q+CisKK1doZW4gbG93LWxhdGVuY3kgdHJhbnNtaXNz
aW9uIGlzIHJlcXVpcmVkIG92ZXIgYSByZWxhdGl2ZWx5IHNsb3cgY29ubmVjdGlvbiwgdGhlbgor
Y29uc3RyYWluZWQgVkJSIGNhbiBhbHNvIGJlIHVzZWQuIFRoaXMgdXNlcyBWQlIgaW4gYSB3YXkg
dGhhdCBzaW11bGF0ZXMgYQorImJpdCByZXNlcnZvaXIiIGFuZCBpcyBlcXVpdmFsZW50IHRvIHdo
YXQgTVAzIChNUEVHIDEsIExheWVyIDMpIGFuZAorQUFDIChBZHZhbmNlZCBBdWRpbyBDb2Rpbmcp
IGNhbGwgQ0JSIChpLmUuLCBub3QgdHJ1ZQorQ0JSIGR1ZSB0byB0aGUgYml0IHJlc2Vydm9pciku
Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJEaXNjb250aW51b3VzIFRyYW5z
bWlzc2lvbiAoRFRYKSIgdG9jPSJleGxjdWRlIj4KKzx0PgorICAgRGlzY29udGludW91cyBUcmFu
c21pc3Npb24gKERUWCkgcmVkdWNlcyB0aGUgYml0cmF0ZSBkdXJpbmcgc2lsZW5jZQorICAgb3Ig
YmFja2dyb3VuZCBub2lzZS4gIFdoZW4gRFRYIGlzIGVuYWJsZWQsIG9ubHkgb25lIGZyYW1lIGlz
IGVuY29kZWQKKyAgIGV2ZXJ5IDQwMCBtaWxsaXNlY29uZHMuCis8L3Q+Cis8L3NlY3Rpb24+CisK
Kzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Im1vZGVzIiB0aXRs
ZT0iSW50ZXJuYWwgRnJhbWluZyI+CisKKzx0PgorVGhlIE9wdXMgZW5jb2RlciBwcm9kdWNlcyAi
cGFja2V0cyIsIHdoaWNoIGFyZSBlYWNoIGEgY29udGlndW91cyBzZXQgb2YgYnl0ZXMKKyBtZWFu
dCB0byBiZSB0cmFuc21pdHRlZCBhcyBhIHNpbmdsZSB1bml0LgorVGhlIHBhY2tldHMgZGVzY3Jp
YmVkIGhlcmUgZG8gbm90IGluY2x1ZGUgc3VjaCB0aGluZ3MgYXMgSVAsIFVEUCwgb3IgUlRQCisg
aGVhZGVycyB3aGljaCBhcmUgbm9ybWFsbHkgZm91bmQgaW4gYSB0cmFuc3BvcnQtbGF5ZXIgcGFj
a2V0LgorQSBzaW5nbGUgcGFja2V0IG1heSBjb250YWluIG11bHRpcGxlIGF1ZGlvIGZyYW1lcywg
c28gbG9uZyBhcyB0aGV5IHNoYXJlIGEKKyBjb21tb24gc2V0IG9mIHBhcmFtZXRlcnMsIGluY2x1
ZGluZyB0aGUgb3BlcmF0aW5nIG1vZGUsIGF1ZGlvIGJhbmR3aWR0aCwgZnJhbWUKKyBzaXplLCBh
bmQgY2hhbm5lbCBjb3VudCAobW9ubyB2cy4gc3RlcmVvKS4KK1RoaXMgc2VjdGlvbiBkZXNjcmli
ZXMgdGhlIHBvc3NpYmxlIGNvbWJpbmF0aW9ucyBvZiB0aGVzZSBwYXJhbWV0ZXJzIGFuZCB0aGUK
KyBpbnRlcm5hbCBmcmFtaW5nIHVzZWQgdG8gcGFjayBtdWx0aXBsZSBmcmFtZXMgaW50byBhIHNp
bmdsZSBwYWNrZXQuCitUaGlzIGZyYW1pbmcgaXMgbm90IHNlbGYtZGVsaW1pdGluZy4KK0luc3Rl
YWQsIGl0IGFzc3VtZXMgdGhhdCBhIGhpZ2hlciBsYXllciAoc3VjaCBhcyBVRFAgb3IgUlRQIDx4
cmVmIHRhcmdldD0nUkZDMzU1MCcvPgorb3IgT2dnIDx4cmVmIHRhcmdldD0nUkZDMzUzMycvPiBv
ciBNYXRyb3NrYSA8eHJlZiB0YXJnZXQ9J01hdHJvc2thLXdlYnNpdGUnLz4pCisgd2lsbCBjb21t
dW5pY2F0ZSB0aGUgbGVuZ3RoLCBpbiBieXRlcywgb2YgdGhlIHBhY2tldCwgYW5kIGl0IHVzZXMg
dGhpcworIGluZm9ybWF0aW9uIHRvIHJlZHVjZSB0aGUgZnJhbWluZyBvdmVyaGVhZCBpbiB0aGUg
cGFja2V0IGl0c2VsZi4KK0EgZGVjb2RlciBpbXBsZW1lbnRhdGlvbiBNVVNUIHN1cHBvcnQgdGhl
IGZyYW1pbmcgZGVzY3JpYmVkIGluIHRoaXMgc2VjdGlvbi4KK0FuIGFsdGVybmF0aXZlLCBzZWxm
LWRlbGltaXRpbmcgdmFyaWFudCBvZiB0aGUgZnJhbWluZyBpcyBkZXNjcmliZWQgaW4KKyA8eHJl
ZiB0YXJnZXQ9InNlbGYtZGVsaW1pdGluZy1mcmFtaW5nIi8+LgorU3VwcG9ydCBmb3IgdGhhdCB2
YXJpYW50IGlzIE9QVElPTkFMLgorPC90PgorCis8dD4KK0FsbCBiaXQgZGlhZ3JhbXMgaW4gdGhp
cyBkb2N1bWVudCBudW1iZXIgdGhlIGJpdHMgc28gdGhhdCBiaXQgMCBpcyB0aGUgbW9zdAorIHNp
Z25pZmljYW50IGJpdCBvZiB0aGUgZmlyc3QgYnl0ZSwgYW5kIGJpdCA3IGlzIHRoZSBsZWFzdCBz
aWduaWZpY2FudC4KK0JpdCA4IGlzIHRodXMgdGhlIG1vc3Qgc2lnbmlmaWNhbnQgYml0IG9mIHRo
ZSBzZWNvbmQgYnl0ZSwgZXRjLgorV2VsbC1mb3JtZWQgT3B1cyBwYWNrZXRzIG9iZXkgY2VydGFp
biByZXF1aXJlbWVudHMsIG1hcmtlZCBbUjFdIHRocm91Z2ggW1I3XQorIGJlbG93LgorVGhlc2Ug
YXJlIHN1bW1hcml6ZWQgaW4gPHhyZWYgdGFyZ2V0PSJtYWxmb3JtZWQtcGFja2V0cyIvPiBhbG9u
ZyB3aXRoCisgYXBwcm9wcmlhdGUgbWVhbnMgb2YgaGFuZGxpbmcgbWFsZm9ybWVkIHBhY2tldHMu
Cis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0idG9jX2J5dGUiIHRpdGxlPSJUaGUgVE9DIEJ5dGUi
PgorPHQgYW5jaG9yPSJSMSI+CitBIHdlbGwtZm9ybWVkIE9wdXMgcGFja2V0IE1VU1QgY29udGFp
biBhdCBsZWFzdCBvbmUgYnl0ZSZuYnNwO1tSMV0uCitUaGlzIGJ5dGUgZm9ybXMgYSB0YWJsZS1v
Zi1jb250ZW50cyAoVE9DKSBoZWFkZXIgdGhhdCBzaWduYWxzIHdoaWNoIG9mIHRoZQorIHZhcmlv
dXMgbW9kZXMgYW5kIGNvbmZpZ3VyYXRpb25zIGEgZ2l2ZW4gcGFja2V0IHVzZXMuCitJdCBpcyBj
b21wb3NlZCBvZiBhIGNvbmZpZ3VyYXRpb24gbnVtYmVyLCAiY29uZmlnIiwgYSBzdGVyZW8gZmxh
ZywgInMiLCBhbmQgYQorIGZyYW1lIGNvdW50IGNvZGUsICJjIiwgYXJyYW5nZWQgYXMgaWxsdXN0
cmF0ZWQgaW4KKyA8eHJlZiB0YXJnZXQ9InRvY19ieXRlX2ZpZyIvPi4KK0EgZGVzY3JpcHRpb24g
b2YgZWFjaCBvZiB0aGVzZSBmaWVsZHMgZm9sbG93cy4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9
InRvY19ieXRlX2ZpZyIgdGl0bGU9IlRoZSBUT0MgQnl0ZSI+Cis8YXJ0d29yayBhbGlnbj0iY2Vu
dGVyIj48IVtDREFUQVsKKyAwCisgMCAxIDIgMyA0IDUgNiA3CisrLSstKy0rLSstKy0rLSstKwor
fCBjb25maWcgIHxzfCBjIHwKKystKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2Zp
Z3VyZT4KKworPHQ+CitUaGUgdG9wIGZpdmUgYml0cyBvZiB0aGUgVE9DIGJ5dGUsIGxhYmVsZWQg
ImNvbmZpZyIsIGVuY29kZSBvbmUgb2YgMzIgcG9zc2libGUKKyBjb25maWd1cmF0aW9ucyBvZiBv
cGVyYXRpbmcgbW9kZSwgYXVkaW8gYmFuZHdpZHRoLCBhbmQgZnJhbWUgc2l6ZS4KK0FzIGRlc2Ny
aWJlZCwgdGhlIExQIChTSUxLKSBsYXllciBhbmQgTURDVCAoQ0VMVCkgbGF5ZXIgY2FuIGJlIGNv
bWJpbmVkIGluIHRocmVlIHBvc3NpYmxlCisgb3BlcmF0aW5nIG1vZGVzOgorPGxpc3Qgc3R5bGU9
Im51bWJlcnMiPgorPHQ+QSBTSUxLLW9ubHkgbW9kZSBmb3IgdXNlIGluIGxvdyBiaXRyYXRlIGNv
bm5lY3Rpb25zIHdpdGggYW4gYXVkaW8gYmFuZHdpZHRoCisgb2YgV0Igb3IgbGVzcyw8L3Q+Cis8
dD5BIEh5YnJpZCAoU0lMSytDRUxUKSBtb2RlIGZvciBTV0Igb3IgRkIgc3BlZWNoIGF0IG1lZGl1
bSBiaXRyYXRlcywgYW5kPC90PgorPHQ+QSBDRUxULW9ubHkgbW9kZSBmb3IgdmVyeSBsb3cgZGVs
YXkgc3BlZWNoIHRyYW5zbWlzc2lvbiBhcyB3ZWxsIGFzIG11c2ljCisgdHJhbnNtaXNzaW9uIChO
QiB0byBGQikuPC90PgorPC9saXN0PgorVGhlIDMyIHBvc3NpYmxlIGNvbmZpZ3VyYXRpb25zIGVh
Y2ggaWRlbnRpZnkgd2hpY2ggb25lIG9mIHRoZXNlIG9wZXJhdGluZyBtb2RlcworIHRoZSBwYWNr
ZXQgdXNlcywgYXMgd2VsbCBhcyB0aGUgYXVkaW8gYmFuZHdpZHRoIGFuZCB0aGUgZnJhbWUgc2l6
ZS4KKzx4cmVmIHRhcmdldD0iY29uZmlnX2JpdHMiLz4gbGlzdHMgdGhlIHBhcmFtZXRlcnMgZm9y
IGVhY2ggY29uZmlndXJhdGlvbi4KKzwvdD4KKzx0ZXh0dGFibGUgYW5jaG9yPSJjb25maWdfYml0
cyIgdGl0bGU9IlRPQyBCeXRlIENvbmZpZ3VyYXRpb24gUGFyYW1ldGVycyI+Cis8dHRjb2w+Q29u
ZmlndXJhdGlvbiBOdW1iZXIocyk8L3R0Y29sPgorPHR0Y29sPk1vZGU8L3R0Y29sPgorPHR0Y29s
PkJhbmR3aWR0aDwvdHRjb2w+Cis8dHRjb2w+RnJhbWUgU2l6ZXM8L3R0Y29sPgorPGM+MC4uLjM8
L2M+ICAgPGM+U0lMSy1vbmx5PC9jPiA8Yz5OQjwvYz4gIDxjPjEwLCAyMCwgNDAsIDYwJm5ic3A7
bXM8L2M+Cis8Yz40Li4uNzwvYz4gICA8Yz5TSUxLLW9ubHk8L2M+IDxjPk1CPC9jPiAgPGM+MTAs
IDIwLCA0MCwgNjAmbmJzcDttczwvYz4KKzxjPjguLi4xMTwvYz4gIDxjPlNJTEstb25seTwvYz4g
PGM+V0I8L2M+ICA8Yz4xMCwgMjAsIDQwLCA2MCZuYnNwO21zPC9jPgorPGM+MTIuLi4xMzwvYz4g
PGM+SHlicmlkPC9jPiAgICA8Yz5TV0I8L2M+IDxjPjEwLCAyMCZuYnNwO21zPC9jPgorPGM+MTQu
Li4xNTwvYz4gPGM+SHlicmlkPC9jPiAgICA8Yz5GQjwvYz4gIDxjPjEwLCAyMCZuYnNwO21zPC9j
PgorPGM+MTYuLi4xOTwvYz4gPGM+Q0VMVC1vbmx5PC9jPiA8Yz5OQjwvYz4gIDxjPjIuNSwgNSwg
MTAsIDIwJm5ic3A7bXM8L2M+Cis8Yz4yMC4uLjIzPC9jPiA8Yz5DRUxULW9ubHk8L2M+IDxjPldC
PC9jPiAgPGM+Mi41LCA1LCAxMCwgMjAmbmJzcDttczwvYz4KKzxjPjI0Li4uMjc8L2M+IDxjPkNF
TFQtb25seTwvYz4gPGM+U1dCPC9jPiA8Yz4yLjUsIDUsIDEwLCAyMCZuYnNwO21zPC9jPgorPGM+
MjguLi4zMTwvYz4gPGM+Q0VMVC1vbmx5PC9jPiA8Yz5GQjwvYz4gIDxjPjIuNSwgNSwgMTAsIDIw
Jm5ic3A7bXM8L2M+Cis8L3RleHR0YWJsZT4KKzx0PgorVGhlIGNvbmZpZ3VyYXRpb24gbnVtYmVy
cyBpbiBlYWNoIHJhbmdlIChlLmcuLCAwLi4uMyBmb3IgTkIgU0lMSy1vbmx5KQorIGNvcnJlc3Bv
bmQgdG8gdGhlIHZhcmlvdXMgY2hvaWNlcyBvZiBmcmFtZSBzaXplLCBpbiB0aGUgc2FtZSBvcmRl
ci4KK0ZvciBleGFtcGxlLCBjb25maWd1cmF0aW9uIDAgaGFzIGEgMTAmbmJzcDttcyBmcmFtZSBz
aXplIGFuZCBjb25maWd1cmF0aW9uIDMKKyBoYXMgYSA2MCZuYnNwO21zIGZyYW1lIHNpemUuCis8
L3Q+CisKKzx0PgorT25lIGFkZGl0aW9uYWwgYml0LCBsYWJlbGVkICJzIiwgc2lnbmFscyBtb25v
IHZzLiBzdGVyZW8sIHdpdGggMCBpbmRpY2F0aW5nCisgbW9ubyBhbmQgMSBpbmRpY2F0aW5nIHN0
ZXJlby4KKzwvdD4KKworPHQ+CitUaGUgcmVtYWluaW5nIHR3byBiaXRzIG9mIHRoZSBUT0MgYnl0
ZSwgbGFiZWxlZCAiYyIsIGNvZGUgdGhlIG51bWJlciBvZiBmcmFtZXMKKyBwZXIgcGFja2V0IChj
b2RlcyAwIHRvIDMpIGFzIGZvbGxvd3M6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD4wOiAg
ICAxIGZyYW1lIGluIHRoZSBwYWNrZXQ8L3Q+Cis8dD4xOiAgICAyIGZyYW1lcyBpbiB0aGUgcGFj
a2V0LCBlYWNoIHdpdGggZXF1YWwgY29tcHJlc3NlZCBzaXplPC90PgorPHQ+MjogICAgMiBmcmFt
ZXMgaW4gdGhlIHBhY2tldCwgd2l0aCBkaWZmZXJlbnQgY29tcHJlc3NlZCBzaXplczwvdD4KKzx0
PjM6ICAgIGFuIGFyYml0cmFyeSBudW1iZXIgb2YgZnJhbWVzIGluIHRoZSBwYWNrZXQ8L3Q+Cis8
L2xpc3Q+CitUaGlzIGRyYWZ0IHJlZmVycyB0byBhIHBhY2tldCBhcyBhIGNvZGUgMCBwYWNrZXQs
IGNvZGUgMSBwYWNrZXQsIGV0Yy4sIGJhc2VkIG9uCisgdGhlIHZhbHVlIG9mICJjIi4KKzwvdD4K
KworPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iRnJhbWUgUGFja2luZyI+CisKKzx0Pgor
VGhpcyBzZWN0aW9uIGRlc2NyaWJlcyBob3cgZnJhbWVzIGFyZSBwYWNrZWQgYWNjb3JkaW5nIHRv
IGVhY2ggcG9zc2libGUgdmFsdWUKKyBvZiAiYyIgaW4gdGhlIFRPQyBieXRlLgorPC90PgorCis8
c2VjdGlvbiBhbmNob3I9ImZyYW1lLWxlbmd0aC1jb2RpbmciIHRpdGxlPSJGcmFtZSBMZW5ndGgg
Q29kaW5nIj4KKzx0PgorV2hlbiBhIHBhY2tldCBjb250YWlucyBtdWx0aXBsZSBWQlIgZnJhbWVz
IChpLmUuLCBjb2RlIDIgb3IgMyksIHRoZSBjb21wcmVzc2VkCisgbGVuZ3RoIG9mIG9uZSBvciBt
b3JlIG9mIHRoZXNlIGZyYW1lcyBpcyBpbmRpY2F0ZWQgd2l0aCBhIG9uZS0gb3IgdHdvLWJ5dGUK
KyBzZXF1ZW5jZSwgd2l0aCB0aGUgbWVhbmluZyBvZiB0aGUgZmlyc3QgYnl0ZSBhcyBmb2xsb3dz
OgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+MDogICAgICAgICAgTm8gZnJhbWUgKGRpc2Nv
bnRpbnVvdXMgdHJhbnNtaXNzaW9uIChEVFgpIG9yIGxvc3QgcGFja2V0KTwvdD4KKzx0PjEuLi4y
NTE6ICAgIExlbmd0aCBvZiB0aGUgZnJhbWUgaW4gYnl0ZXM8L3Q+Cis8dD4yNTIuLi4yNTU6ICBB
IHNlY29uZCBieXRlIGlzIG5lZWRlZC4gVGhlIHRvdGFsIGxlbmd0aCBpcyAoc2Vjb25kX2J5dGUq
NCkrZmlyc3RfYnl0ZTwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitUaGUgc3BlY2lhbCBsZW5n
dGggMCBpbmRpY2F0ZXMgdGhhdCBubyBmcmFtZSBpcyBhdmFpbGFibGUsIGVpdGhlciBiZWNhdXNl
IGl0Cisgd2FzIGRyb3BwZWQgZHVyaW5nIHRyYW5zbWlzc2lvbiBieSBzb21lIGludGVybWVkaWFy
eSBvciBiZWNhdXNlIHRoZSBlbmNvZGVyCisgY2hvc2Ugbm90IHRvIHRyYW5zbWl0IGl0LgorQW55
IE9wdXMgZnJhbWUgaW4gYW55IG1vZGUgTUFZIGhhdmUgYSBsZW5ndGggb2YgMC4KKzwvdD4KKwor
PHQ+CitUaGUgbWF4aW11bSByZXByZXNlbnRhYmxlIGxlbmd0aCBpcyAyNTUqNCsyNTU9MTI3NSZu
YnNwO2J5dGVzLgorRm9yIDIwJm5ic3A7bXMgZnJhbWVzLCB0aGlzIHJlcHJlc2VudHMgYSBiaXRy
YXRlIG9mIDUxMCZuYnNwO2tiL3MsIHdoaWNoIGlzCisgYXBwcm94aW1hdGVseSB0aGUgaGlnaGVz
dCB1c2VmdWwgcmF0ZSBmb3IgbG9zc2lseSBjb21wcmVzc2VkIGZ1bGxiYW5kIHN0ZXJlbworIG11
c2ljLgorQmV5b25kIHRoaXMgcG9pbnQsIGxvc3NsZXNzIGNvZGVjcyBhcmUgbW9yZSBhcHByb3By
aWF0ZS4KK0l0IGlzIGFsc28gcm91Z2hseSB0aGUgbWF4aW11bSB1c2VmdWwgcmF0ZSBvZiB0aGUg
TURDVCBsYXllciwgYXMgc2hvcnRseQorIHRoZXJlYWZ0ZXIgcXVhbGl0eSBubyBsb25nZXIgaW1w
cm92ZXMgd2l0aCBhZGRpdGlvbmFsIGJpdHMgZHVlIHRvIGxpbWl0YXRpb25zCisgb24gdGhlIGNv
ZGVib29rIHNpemVzLgorPC90PgorCis8dCBhbmNob3I9IlIyIj4KK05vIGxlbmd0aCBpcyB0cmFu
c21pdHRlZCBmb3IgdGhlIGxhc3QgZnJhbWUgaW4gYSBWQlIgcGFja2V0LCBvciBmb3IgYW55IG9m
IHRoZQorIGZyYW1lcyBpbiBhIENCUiBwYWNrZXQsIGFzIGl0IGNhbiBiZSBpbmZlcnJlZCBmcm9t
IHRoZSB0b3RhbCBzaXplIG9mIHRoZQorIHBhY2tldCBhbmQgdGhlIHNpemUgb2YgYWxsIG90aGVy
IGRhdGEgaW4gdGhlIHBhY2tldC4KK0hvd2V2ZXIsIHRoZSBsZW5ndGggb2YgYW55IGluZGl2aWR1
YWwgZnJhbWUgTVVTVCBOT1QgZXhjZWVkCisgMTI3NSZuYnNwO2J5dGVzJm5ic3A7W1IyXSwgdG8g
YWxsb3cgZm9yIHJlcGFja2V0aXphdGlvbiBieSBnYXRld2F5cywKKyBjb25mZXJlbmNlIGJyaWRn
ZXMsIG9yIG90aGVyIHNvZnR3YXJlLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRs
ZT0iQ29kZSAwOiBPbmUgRnJhbWUgaW4gdGhlIFBhY2tldCI+CisKKzx0PgorRm9yIGNvZGUmbmJz
cDswIHBhY2tldHMsIHRoZSBUT0MgYnl0ZSBpcyBpbW1lZGlhdGVseSBmb2xsb3dlZCBieSBOLTEm
bmJzcDtieXRlcworIG9mIGNvbXByZXNzZWQgZGF0YSBmb3IgYSBzaW5nbGUgZnJhbWUgKHdoZXJl
IE4gaXMgdGhlIHNpemUgb2YgdGhlIHBhY2tldCksCisgYXMgaWxsdXN0cmF0ZWQgaW4gPHhyZWYg
dGFyZ2V0PSJjb2RlMF9wYWNrZXQiLz4uCis8L3Q+Cis8ZmlndXJlIGFuY2hvcj0iY29kZTBfcGFj
a2V0IiB0aXRsZT0iQSBDb2RlIDAgUGFja2V0IiBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFs
aWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAg
ICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAy
IDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8IGNvbmZp
ZyAgfHN8MHwwfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fAorKy0rLSstKy0rLSstKy0rLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwKK3wgICAgICAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMSAoTi0x
IGJ5dGVzKS4uLiAgICAgICAgICA6Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48
L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IkNvZGUg
MTogVHdvIEZyYW1lcyBpbiB0aGUgUGFja2V0LCBFYWNoIHdpdGggRXF1YWwgQ29tcHJlc3NlZCBT
aXplIj4KKzx0IGFuY2hvcj0iUjMiPgorRm9yIGNvZGUgMSBwYWNrZXRzLCB0aGUgVE9DIGJ5dGUg
aXMgaW1tZWRpYXRlbHkgZm9sbG93ZWQgYnkgdGhlCisgKE4tMSkvMiZuYnNwO2J5dGVzIG9mIGNv
bXByZXNzZWQgZGF0YSBmb3IgdGhlIGZpcnN0IGZyYW1lLCBmb2xsb3dlZCBieQorIChOLTEpLzIm
bmJzcDtieXRlcyBvZiBjb21wcmVzc2VkIGRhdGEgZm9yIHRoZSBzZWNvbmQgZnJhbWUsIGFzIGls
bHVzdHJhdGVkIGluCisgPHhyZWYgdGFyZ2V0PSJjb2RlMV9wYWNrZXQiLz4uCitUaGUgbnVtYmVy
IG9mIHBheWxvYWQgYnl0ZXMgYXZhaWxhYmxlIGZvciBjb21wcmVzc2VkIGRhdGEsIE4tMSwgTVVT
VCBiZSBldmVuCisgZm9yIGFsbCBjb2RlIDEgcGFja2V0cyZuYnNwO1tSM10uCis8L3Q+Cis8Zmln
dXJlIGFuY2hvcj0iY29kZTFfcGFja2V0IiB0aXRsZT0iQSBDb2RlIDEgUGFja2V0IiBhbGlnbj0i
Y2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAg
ICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEg
MiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAw
IDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rCit8IGNvbmZpZyAgfHN8MHwxfCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgQ29tcHJlc3Nl
ZCBmcmFtZSAxICgoTi0xKS8yIGJ5dGVzKS4uLiAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMiAoKE4tMSkv
MiBieXRlcykuLi4gICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC9zZWN0
aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQ29kZSAyOiBUd28gRnJhbWVzIGluIHRoZSBQYWNrZXQs
IHdpdGggRGlmZmVyZW50IENvbXByZXNzZWQgU2l6ZXMiPgorPHQgYW5jaG9yPSJSNCI+CitGb3Ig
Y29kZSAyIHBhY2tldHMsIHRoZSBUT0MgYnl0ZSBpcyBmb2xsb3dlZCBieSBhIG9uZS0gb3IgdHdv
LWJ5dGUgc2VxdWVuY2UKKyBpbmRpY2F0aW5nIHRoZSBsZW5ndGggb2YgdGhlIGZpcnN0IGZyYW1l
IChtYXJrZWQgTjEgaW4gPHhyZWYgdGFyZ2V0PSdjb2RlMl9wYWNrZXQnLz4pLAorIGZvbGxvd2Vk
IGJ5IE4xIGJ5dGVzIG9mIGNvbXByZXNzZWQgZGF0YSBmb3IgdGhlIGZpcnN0IGZyYW1lLgorVGhl
IHJlbWFpbmluZyBOLU4xLTIgb3IgTi1OMS0zJm5ic3A7Ynl0ZXMgYXJlIHRoZSBjb21wcmVzc2Vk
IGRhdGEgZm9yIHRoZQorIHNlY29uZCBmcmFtZS4KK1RoaXMgaXMgaWxsdXN0cmF0ZWQgaW4gPHhy
ZWYgdGFyZ2V0PSJjb2RlMl9wYWNrZXQiLz4uCitBIGNvZGUgMiBwYWNrZXQgTVVTVCBjb250YWlu
IGVub3VnaCBieXRlcyB0byByZXByZXNlbnQgYSB2YWxpZCBsZW5ndGguCitGb3IgZXhhbXBsZSwg
YSAxLWJ5dGUgY29kZSAyIHBhY2tldCBpcyBhbHdheXMgaW52YWxpZCwgYW5kIGEgMi1ieXRlIGNv
ZGUgMgorIHBhY2tldCB3aG9zZSBzZWNvbmQgYnl0ZSBpcyBpbiB0aGUgcmFuZ2UgMjUyLi4uMjU1
IGlzIGFsc28gaW52YWxpZC4KK1RoZSBsZW5ndGggb2YgdGhlIGZpcnN0IGZyYW1lLCBOMSwgTVVT
VCBhbHNvIGJlIG5vIGxhcmdlciB0aGFuIHRoZSBzaXplIG9mIHRoZQorIHBheWxvYWQgcmVtYWlu
aW5nIGFmdGVyIGRlY29kaW5nIHRoYXQgbGVuZ3RoIGZvciBhbGwgY29kZSAyIHBhY2tldHMmbmJz
cDtbUjRdLgorVGhpcyBtYWtlcywgZm9yIGV4YW1wbGUsIGEgMi1ieXRlIGNvZGUgMiBwYWNrZXQg
d2l0aCBhIHNlY29uZCBieXRlIGluIHRoZSByYW5nZQorIDEuLi4yNTEgaW52YWxpZCBhcyB3ZWxs
ICh0aGUgb25seSB2YWxpZCAyLWJ5dGUgY29kZSAyIHBhY2tldCBpcyBvbmUgd2hlcmUgdGhlCisg
bGVuZ3RoIG9mIGJvdGggZnJhbWVzIGlzIHplcm8pLgorPC90PgorPGZpZ3VyZSBhbmNob3I9ImNv
ZGUyX3BhY2tldCIgdGl0bGU9IkEgQ29kZSAyIFBhY2tldCIgYWxpZ249ImNlbnRlciI+Cis8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAg
ICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDgg
OSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwor
fCBjb25maWcgIHxzfDF8MHwgTjEgKDEtMiBieXRlcyk6ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxIChO
MSBieXRlcykuLi4gICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICArLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fAorfCAgICAgICAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMi4uLiAgICAgICAgICAg
ICAgICAgICAgIDoKKzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4K
KzwvZmlndXJlPgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQ29kZSAzOiBBIFNpZ25h
bGVkIE51bWJlciBvZiBGcmFtZXMgaW4gdGhlIFBhY2tldCI+Cis8dCBhbmNob3I9IlI1Ij4KK0Nv
ZGUgMyBwYWNrZXRzIHNpZ25hbCB0aGUgbnVtYmVyIG9mIGZyYW1lcywgYXMgd2VsbCBhcyBhZGRp
dGlvbmFsCisgcGFkZGluZywgY2FsbGVkICJPcHVzIHBhZGRpbmciIHRvIGluZGljYXRlIHRoYXQg
dGhpcyBwYWRkaW5nIGlzIGFkZGVkIGF0IHRoZQorIE9wdXMgbGF5ZXIsIHJhdGhlciB0aGFuIGF0
IHRoZSB0cmFuc3BvcnQgbGF5ZXIuCitDb2RlIDMgcGFja2V0cyBNVVNUIGhhdmUgYXQgbGVhc3Qg
MiBieXRlcyZuYnNwO1tSNixSN10uCitUaGUgVE9DIGJ5dGUgaXMgZm9sbG93ZWQgYnkgYSBieXRl
IGVuY29kaW5nIHRoZSBudW1iZXIgb2YgZnJhbWVzIGluIHRoZSBwYWNrZXQKKyBpbiBiaXRzIDIg
dG8gNyAobWFya2VkICJNIiBpbiA8eHJlZiB0YXJnZXQ9J2ZyYW1lX2NvdW50X2J5dGUnLz4pLCB3
aXRoIGJpdCAxIGluZGljYXRpbmcgd2hldGhlcgorIG9yIG5vdCBPcHVzIHBhZGRpbmcgaXMgaW5z
ZXJ0ZWQgKG1hcmtlZCAicCIgaW4gPHhyZWYgdGFyZ2V0PSdmcmFtZV9jb3VudF9ieXRlJy8+KSwg
YW5kIGJpdCAwCisgaW5kaWNhdGluZyBWQlIgKG1hcmtlZCAidiIgaW4gPHhyZWYgdGFyZ2V0PSdm
cmFtZV9jb3VudF9ieXRlJy8+KS4KK00gTVVTVCBOT1QgYmUgemVybywgYW5kIHRoZSBhdWRpbyBk
dXJhdGlvbiBjb250YWluZWQgd2l0aGluIGEgcGFja2V0IE1VU1QgTk9UCisgZXhjZWVkIDEyMCZu
YnNwO21zJm5ic3A7W1I1XS4KK1RoaXMgbGltaXRzIHRoZSBtYXhpbXVtIGZyYW1lIGNvdW50IGZv
ciBhbnkgZnJhbWUgc2l6ZSB0byA0OCAoZm9yIDIuNSZuYnNwO21zCisgZnJhbWVzKSwgd2l0aCBs
b3dlciBsaW1pdHMgZm9yIGxvbmdlciBmcmFtZSBzaXplcy4KKzx4cmVmIHRhcmdldD0iZnJhbWVf
Y291bnRfYnl0ZSIvPiBpbGx1c3RyYXRlcyB0aGUgbGF5b3V0IG9mIHRoZSBmcmFtZSBjb3VudAor
IGJ5dGUuCis8L3Q+Cis8ZmlndXJlIGFuY2hvcj0iZnJhbWVfY291bnRfYnl0ZSIgdGl0bGU9IlRo
ZSBmcmFtZSBjb3VudCBieXRlIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
IDAKKyAwIDEgMiAzIDQgNSA2IDcKKystKy0rLSstKy0rLSstKy0rCit8dnxwfCAgICAgTSAgICAg
fAorKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPHQ+CitXaGVu
IE9wdXMgcGFkZGluZyBpcyB1c2VkLCB0aGUgbnVtYmVyIG9mIGJ5dGVzIG9mIHBhZGRpbmcgaXMg
ZW5jb2RlZCBpbiB0aGUKKyBieXRlcyBmb2xsb3dpbmcgdGhlIGZyYW1lIGNvdW50IGJ5dGUuCitW
YWx1ZXMgZnJvbSAwLi4uMjU0IGluZGljYXRlIHRoYXQgMC4uLjI1NCZuYnNwO2J5dGVzIG9mIHBh
ZGRpbmcgYXJlIGluY2x1ZGVkLAorIGluIGFkZGl0aW9uIHRvIHRoZSBieXRlKHMpIHVzZWQgdG8g
aW5kaWNhdGUgdGhlIHNpemUgb2YgdGhlIHBhZGRpbmcuCitJZiB0aGUgdmFsdWUgaXMgMjU1LCB0
aGVuIHRoZSBzaXplIG9mIHRoZSBhZGRpdGlvbmFsIHBhZGRpbmcgaXMgMjU0Jm5ic3A7Ynl0ZXMs
CisgcGx1cyB0aGUgcGFkZGluZyB2YWx1ZSBlbmNvZGVkIGluIHRoZSBuZXh0IGJ5dGUuCitUaGVy
ZSBNVVNUIGJlIGF0IGxlYXN0IG9uZSBtb3JlIGJ5dGUgaW4gdGhlIHBhY2tldCBpbiB0aGlzIGNh
c2UmbmJzcDtbUjYsUjddLgorVGhlIGFkZGl0aW9uYWwgcGFkZGluZyBieXRlcyBhcHBlYXIgYXQg
dGhlIGVuZCBvZiB0aGUgcGFja2V0LCBhbmQgTVVTVCBiZSBzZXQKKyB0byB6ZXJvIGJ5IHRoZSBl
bmNvZGVyIHRvIGF2b2lkIGNyZWF0aW5nIGEgY292ZXJ0IGNoYW5uZWwuCitUaGUgZGVjb2RlciBN
VVNUIGFjY2VwdCBhbnkgdmFsdWUgZm9yIHRoZSBwYWRkaW5nIGJ5dGVzLCBob3dldmVyLgorPC90
PgorPHQ+CitBbHRob3VnaCB0aGlzIGVuY29kaW5nIHByb3ZpZGVzIG11bHRpcGxlIHdheXMgdG8g
aW5kaWNhdGUgYSBnaXZlbiBudW1iZXIgb2YKKyBwYWRkaW5nIGJ5dGVzLCBlYWNoIHVzZXMgYSBk
aWZmZXJlbnQgbnVtYmVyIG9mIGJ5dGVzIHRvIGluZGljYXRlIHRoZSBwYWRkaW5nCisgc2l6ZSwg
YW5kIHRodXMgd2lsbCBpbmNyZWFzZSB0aGUgdG90YWwgcGFja2V0IHNpemUgYnkgYSBkaWZmZXJl
bnQgYW1vdW50LgorRm9yIGV4YW1wbGUsIHRvIGFkZCAyNTUgYnl0ZXMgdG8gYSBwYWNrZXQsIHNl
dCB0aGUgcGFkZGluZyBiaXQsIHAsIHRvIDEsIGluc2VydAorIGEgc2luZ2xlIGJ5dGUgYWZ0ZXIg
dGhlIGZyYW1lIGNvdW50IGJ5dGUgd2l0aCBhIHZhbHVlIG9mIDI1NCwgYW5kIGFwcGVuZCAyNTQK
KyBwYWRkaW5nIGJ5dGVzIHdpdGggdGhlIHZhbHVlIHplcm8gdG8gdGhlIGVuZCBvZiB0aGUgcGFj
a2V0LgorVG8gYWRkIDI1NiBieXRlcyB0byBhIHBhY2tldCwgc2V0IHRoZSBwYWRkaW5nIGJpdCB0
byAxLCBpbnNlcnQgdHdvIGJ5dGVzIGFmdGVyCisgdGhlIGZyYW1lIGNvdW50IGJ5dGUgd2l0aCB0
aGUgdmFsdWVzIDI1NSBhbmQgMCwgcmVzcGVjdGl2ZWx5LCBhbmQgYXBwZW5kIDI1NAorIHBhZGRp
bmcgYnl0ZXMgd2l0aCB0aGUgdmFsdWUgemVybyB0byB0aGUgZW5kIG9mIHRoZSBwYWNrZXQuCitC
eSB1c2luZyB0aGUgdmFsdWUgMjU1IG11bHRpcGxlIHRpbWVzLCBpdCBpcyBwb3NzaWJsZSB0byBj
cmVhdGUgYSBwYWNrZXQgb2YgYW55Cisgc3BlY2lmaWMsIGRlc2lyZWQgc2l6ZS4KK0xldCBQIGJl
IHRoZSBudW1iZXIgb2YgaGVhZGVyIGJ5dGVzIHVzZWQgdG8gaW5kaWNhdGUgdGhlIHBhZGRpbmcg
c2l6ZSBwbHVzIHRoZQorIG51bWJlciBvZiBwYWRkaW5nIGJ5dGVzIHRoZW1zZWx2ZXMgKGkuZS4s
IFAgaXMgdGhlIHRvdGFsIG51bWJlciBvZiBieXRlcyBhZGRlZAorIHRvIHRoZSBwYWNrZXQpLgor
VGhlbiBQIE1VU1QgYmUgbm8gbW9yZSB0aGFuIE4tMiZuYnNwO1tSNixSN10uCis8L3Q+Cis8dCBh
bmNob3I9IlI2Ij4KK0luIHRoZSBDQlIgY2FzZSwgbGV0IFI9Ti0yLVAgYmUgdGhlIG51bWJlciBv
ZiBieXRlcyByZW1haW5pbmcgaW4gdGhlIHBhY2tldAorIGFmdGVyIHN1YnRyYWN0aW5nIHRoZSAo
b3B0aW9uYWwpIHBhZGRpbmcuCitUaGVuIHRoZSBjb21wcmVzc2VkIGxlbmd0aCBvZiBlYWNoIGZy
YW1lIGluIGJ5dGVzIGlzIGVxdWFsIHRvIFIvTS4KK1RoZSB2YWx1ZSBSIE1VU1QgYmUgYSBub24t
bmVnYXRpdmUgaW50ZWdlciBtdWx0aXBsZSBvZiBNJm5ic3A7W1I2XS4KK1RoZSBjb21wcmVzc2Vk
IGRhdGEgZm9yIGFsbCBNIGZyYW1lcyBmb2xsb3dzLCBlYWNoIG9mIHNpemUKKyBSL00mbmJzcDti
eXRlcywgYXMgaWxsdXN0cmF0ZWQgaW4gPHhyZWYgdGFyZ2V0PSJjb2RlM2Nicl9wYWNrZXQiLz4u
Cis8L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSJjb2RlM2Nicl9wYWNrZXQiIHRpdGxlPSJBIENCUiBD
b2RlIDMgUGFja2V0IiBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAg
ICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkg
MCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8IGNvbmZpZyAgfHN8MXwxfDB8cHwg
ICAgIE0gICAgIHwgIFBhZGRpbmcgbGVuZ3RoIChPcHRpb25hbCkgICAgOgorKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8Cis6ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxIChSL00gYnl0ZXMpLi4u
ICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAg
ICAgICAgIENvbXByZXNzZWQgZnJhbWUgMiAoUi9NIGJ5dGVzKS4uLiAgICAgICAgICAgICAgIDoK
K3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAuLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSBNIChSL00gYnl0
ZXMpLi4uICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCis6ICAgICAgICAgICAg
ICAgICAgT3B1cyBQYWRkaW5nIChPcHRpb25hbCkuLi4gICAgICAgICAgICAgICAgICAgfAorKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8dCBhbmNob3I9IlI3Ij4KK0luIHRo
ZSBWQlIgY2FzZSwgdGhlIChvcHRpb25hbCkgcGFkZGluZyBsZW5ndGggaXMgZm9sbG93ZWQgYnkg
TS0xIGZyYW1lCisgbGVuZ3RocyAoaW5kaWNhdGVkIGJ5ICJOMSIgdG8gIk5bTS0xXSIgaW4gPHhy
ZWYgdGFyZ2V0PSdjb2RlM3Zicl9wYWNrZXQnLz4pLCBlYWNoIGVuY29kZWQgaW4gYQorIG9uZS0g
b3IgdHdvLWJ5dGUgc2VxdWVuY2UgYXMgZGVzY3JpYmVkIGFib3ZlLgorVGhlIHBhY2tldCBNVVNU
IGNvbnRhaW4gZW5vdWdoIGRhdGEgZm9yIHRoZSBNLTEgbGVuZ3RocyBhZnRlciByZW1vdmluZyB0
aGUKKyAob3B0aW9uYWwpIHBhZGRpbmcsIGFuZCB0aGUgc3VtIG9mIHRoZXNlIGxlbmd0aHMgTVVT
VCBiZSBubyBsYXJnZXIgdGhhbiB0aGUKKyBudW1iZXIgb2YgYnl0ZXMgcmVtYWluaW5nIGluIHRo
ZSBwYWNrZXQgYWZ0ZXIgZGVjb2RpbmcgdGhlbSZuYnNwO1tSN10uCitUaGUgY29tcHJlc3NlZCBk
YXRhIGZvciBhbGwgTSBmcmFtZXMgZm9sbG93cywgZWFjaCBmcmFtZSBjb25zaXN0aW5nIG9mIHRo
ZQorIGluZGljYXRlZCBudW1iZXIgb2YgYnl0ZXMsIHdpdGggdGhlIGZpbmFsIGZyYW1lIGNvbnN1
bWluZyBhbnkgcmVtYWluaW5nIGJ5dGVzCisgYmVmb3JlIHRoZSBmaW5hbCBwYWRkaW5nLCBhcyBp
bGx1c3RyYXRlZCBpbiA8eHJlZiB0YXJnZXQ9ImNvZGUzY2JyX3BhY2tldCIvPi4KK1RoZSBudW1i
ZXIgb2YgaGVhZGVyIGJ5dGVzIChUT0MgYnl0ZSwgZnJhbWUgY291bnQgYnl0ZSwgcGFkZGluZyBs
ZW5ndGggYnl0ZXMsCisgYW5kIGZyYW1lIGxlbmd0aCBieXRlcyksIHBsdXMgdGhlIHNpZ25hbGVk
IGxlbmd0aCBvZiB0aGUgZmlyc3QgTS0xIGZyYW1lcyB0aGVtc2VsdmVzLAorIHBsdXMgdGhlIHNp
Z25hbGVkIGxlbmd0aCBvZiB0aGUgcGFkZGluZyBNVVNUIGJlIG5vIGxhcmdlciB0aGFuIE4sIHRo
ZSB0b3RhbCBzaXplIG9mIHRoZQorIHBhY2tldC4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9ImNv
ZGUzdmJyX3BhY2tldCIgdGl0bGU9IkEgVkJSIENvZGUgMyBQYWNrZXQiIGFsaWduPSJjZW50ZXIi
PgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAg
ICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1
IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSsKK3wgY29uZmlnICB8c3wxfDF8MXxwfCAgICAgTSAgICAgfCBQYWRkaW5nIGxlbmd0aCAo
T3B0aW9uYWwpICAgICA6CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKworOiBOMSAoMS0yIGJ5dGVzKTogTjIgKDEtMiBieXRl
cyk6ICAgICAuLi4gICAgICAgOiAgICAgTltNLTFdICAgIHwKKystKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAor
OiAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMSAoTjEgYnl0ZXMpLi4uICAgICAgICAg
ICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICBD
b21wcmVzc2VkIGZyYW1lIDIgKE4yIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICA6Cit8ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4u
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorOiAgICAgICAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgTS4uLiAgICAgICAg
ICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworOiAgICAgICAgICAgICAgICAgIE9w
dXMgUGFkZGluZyAoT3B0aW9uYWwpLi4uICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvc2VjdGlvbj4KKzwvc2VjdGlvbj4KKworPHNlY3Rp
b24gYW5jaG9yPSJleGFtcGxlcyIgdGl0bGU9IkV4YW1wbGVzIj4KKzx0PgorU2ltcGxlc3QgY2Fz
ZSwgb25lIE5CIG1vbm8gMjAmbmJzcDttcyBTSUxLIGZyYW1lOgorPC90PgorCis8ZmlndXJlIGFu
Y2hvcj0nZnJhbWluZ19leGFtcGxlXzEnPgorPGFydHdvcms+PCFbQ0RBVEFbCisgMCAgICAgICAg
ICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAg
MSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5
IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSsKK3wgICAgMSAgICB8MHwwfDB8ICAgICAgICAgICAgICAgY29tcHJlc3Nl
ZCBkYXRhLi4uICAgICAgICAgICAgICA6CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1
cmU+CisKKzx0PgorVHdvIEZCIG1vbm8gNSZuYnNwO21zIENFTFQgZnJhbWVzIG9mIHRoZSBzYW1l
IGNvbXByZXNzZWQgc2l6ZToKKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9J2ZyYW1pbmdfZXhhbXBs
ZV8yJz4KKzxhcnR3b3JrPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAg
ICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAg
MSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAg
MjkgICAgfDB8MHwxfCAgICAgICAgICAgICAgIGNvbXByZXNzZWQgZGF0YS4uLiAgICAgICAgICAg
ICAgOgorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8dD4KK1R3byBGQiBt
b25vIDIwJm5ic3A7bXMgSHlicmlkIGZyYW1lcyBvZiBkaWZmZXJlbnQgY29tcHJlc3NlZCBzaXpl
OgorPC90PgorCis8ZmlndXJlIGFuY2hvcj0nZnJhbWluZ19leGFtcGxlXzMnPgorPGFydHdvcms+
PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAg
ICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDgg
OSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAxNSAgICB8MHwxfDF8MXww
fCAgICAgMiAgICAgfCAgICAgIE4xICAgICAgIHwgICAgICAgICAgICAgICB8CisrLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rICAgICAgICAgICAgICAgfAor
fCAgICAgICAgICAgICAgICAgICAgICAgY29tcHJlc3NlZCBkYXRhLi4uICAgICAgICAgICAgICAg
ICAgICAgIDoKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitGb3Vy
IEZCIHN0ZXJlbyAyMCZuYnNwO21zIENFTFQgZnJhbWVzIG9mIHRoZSBzYW1lIGNvbXByZXNzZWQg
c2l6ZToKKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9J2ZyYW1pbmdfZXhhbXBsZV80Jz4KKzxhcnR3
b3JrPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAy
ICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYg
NyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgMzEgICAgfDF8MXwx
fDB8MHwgICAgIDQgICAgIHwgICAgICBjb21wcmVzc2VkIGRhdGEuLi4gICAgICAgOgorKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9Im1hbGZvcm1lZC1wYWNrZXRzIiB0aXRsZT0iUmVjZWl2aW5nIE1hbGZvcm1lZCBQYWNrZXRz
Ij4KKzx0PgorQSByZWNlaXZlciBNVVNUIE5PVCBwcm9jZXNzIHBhY2tldHMgd2hpY2ggdmlvbGF0
ZSBhbnkgb2YgdGhlIHJ1bGVzIGFib3ZlIGFzCisgbm9ybWFsIE9wdXMgcGFja2V0cy4KK1RoZXkg
YXJlIHJlc2VydmVkIGZvciBmdXR1cmUgYXBwbGljYXRpb25zLCBzdWNoIGFzIGluLWJhbmQgaGVh
ZGVycyAoY29udGFpbmluZworIG1ldGFkYXRhLCBldGMuKS4KK1BhY2tldHMgd2hpY2ggdmlvbGF0
ZSB0aGVzZSBjb25zdHJhaW50cyBtYXkgY2F1c2UgaW1wbGVtZW50YXRpb25zIG9mCisgPHNwYW54
IHN0eWxlPSJlbXBoIj50aGlzPC9zcGFueD4gc3BlY2lmaWNhdGlvbiB0byB0cmVhdCB0aGVtIGFz
IG1hbGZvcm1lZCwgYW5kCisgZGlzY2FyZCB0aGVtLgorPC90PgorPHQ+CitUaGVzZSBjb25zdHJh
aW50cyBhcmUgc3VtbWFyaXplZCBoZXJlIGZvciByZWZlcmVuY2U6Cis8bGlzdCBzdHlsZT0iZm9y
bWF0IFtSJWRdIj4KKzx0PlBhY2tldHMgYXJlIGF0IGxlYXN0IG9uZSBieXRlLjwvdD4KKzx0Pk5v
IGltcGxpY2l0IGZyYW1lIGxlbmd0aCBpcyBsYXJnZXIgdGhhbiAxMjc1IGJ5dGVzLjwvdD4KKzx0
PkNvZGUgMSBwYWNrZXRzIGhhdmUgYW4gb2RkIHRvdGFsIGxlbmd0aCwgTiwgc28gdGhhdCAoTi0x
KS8yIGlzIGFuCisgaW50ZWdlci48L3Q+Cis8dD5Db2RlIDIgcGFja2V0cyBoYXZlIGVub3VnaCBi
eXRlcyBhZnRlciB0aGUgVE9DIGZvciBhIHZhbGlkIGZyYW1lCisgbGVuZ3RoLCBhbmQgdGhhdCBs
ZW5ndGggaXMgbm8gbGFyZ2VyIHRoYW4gdGhlIG51bWJlciBvZiBieXRlcyByZW1haW5pbmcgaW4g
dGhlCisgcGFja2V0LjwvdD4KKzx0PkNvZGUgMyBwYWNrZXRzIGNvbnRhaW4gYXQgbGVhc3Qgb25l
IGZyYW1lLCBidXQgbm8gbW9yZSB0aGFuIDEyMCZuYnNwO21zCisgb2YgYXVkaW8gdG90YWwuPC90
PgorPHQ+VGhlIGxlbmd0aCBvZiBhIENCUiBjb2RlIDMgcGFja2V0LCBOLCBpcyBhdCBsZWFzdCB0
d28gYnl0ZXMsIHRoZSBudW1iZXIgb2YKKyBieXRlcyBhZGRlZCB0byBpbmRpY2F0ZSB0aGUgcGFk
ZGluZyBzaXplIHBsdXMgdGhlIHRyYWlsaW5nIHBhZGRpbmcgYnl0ZXMKKyB0aGVtc2VsdmVzLCBQ
LCBpcyBubyBtb3JlIHRoYW4gTi0yLCBhbmQgdGhlIGZyYW1lIGNvdW50LCBNLCBzYXRpc2ZpZXMK
KyB0aGUgY29uc3RyYWludCB0aGF0IChOLTItUCkgaXMgYSBub24tbmVnYXRpdmUgaW50ZWdlciBt
dWx0aXBsZSBvZiBNLjwvdD4KKzx0PlZCUiBjb2RlIDMgcGFja2V0cyBhcmUgbGFyZ2UgZW5vdWdo
IHRvIGNvbnRhaW4gYWxsIHRoZSBoZWFkZXIgYnl0ZXMgKFRPQworIGJ5dGUsIGZyYW1lIGNvdW50
IGJ5dGUsIGFueSBwYWRkaW5nIGxlbmd0aCBieXRlcywgYW5kIGFueSBmcmFtZSBsZW5ndGggYnl0
ZXMpLAorIHBsdXMgdGhlIGxlbmd0aCBvZiB0aGUgZmlyc3QgTS0xIGZyYW1lcywgcGx1cyBhbnkg
dHJhaWxpbmcgcGFkZGluZyBieXRlcy48L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8L3NlY3Rpb24+CisK
Kzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9Ik9wdXMgRGVjb2RlciI+Cis8dD4KK1RoZSBP
cHVzIGRlY29kZXIgY29uc2lzdHMgb2YgdHdvIG1haW4gYmxvY2tzOiB0aGUgU0lMSyBkZWNvZGVy
IGFuZCB0aGUgQ0VMVAorIGRlY29kZXIuCitBdCBhbnkgZ2l2ZW4gdGltZSwgb25lIG9yIGJvdGgg
b2YgdGhlIFNJTEsgYW5kIENFTFQgZGVjb2RlcnMgbWF5IGJlIGFjdGl2ZS4KK1RoZSBvdXRwdXQg
b2YgdGhlIE9wdXMgZGVjb2RlIGlzIHRoZSBzdW0gb2YgdGhlIG91dHB1dHMgZnJvbSB0aGUgU0lM
SyBhbmQgQ0VMVAorIGRlY29kZXJzIHdpdGggcHJvcGVyIHNhbXBsZSByYXRlIGNvbnZlcnNpb24g
YW5kIGRlbGF5IGNvbXBlbnNhdGlvbiBvbiB0aGUgU0lMSworIHNpZGUsIGFuZCBvcHRpb25hbCBk
ZWNpbWF0aW9uICh3aGVuIGRlY29kaW5nIHRvIHNhbXBsZSByYXRlcyBsZXNzIHRoYW4KKyA0OCZu
YnNwO2tIeikgb24gdGhlIENFTFQgc2lkZSwgYXMgaWxsdXN0cmF0ZWQgaW4gdGhlIGJsb2NrIGRp
YWdyYW0gYmVsb3cuCis8L3Q+Cis8ZmlndXJlPgorPGFydHdvcms+Cis8IVtDREFUQVsKKyAgICAg
ICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tKyAgICArLS0tLS0tLS0tLS0tKworICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgIFNJTEsgICB8ICAgIHwgICBTYW1wbGUgICB8CisgICAgICAg
ICAgICAgICAgICAgICAgKy0+fCBEZWNvZGVyIHwtLS0+fCAgICBSYXRlICAgIHwtLS0tKworQml0
LSAgICArLS0tLS0tLS0tKyAgIHwgIHwgICAgICAgICB8ICAgIHwgQ29udmVyc2lvbiB8ICAgIHYK
K3N0cmVhbSAgfCAgUmFuZ2UgIHwtLS0rICArLS0tLS0tLS0tKyAgICArLS0tLS0tLS0tLS0tKyAg
Ly0tLVwgIEF1ZGlvCistLS0tLS0tPnwgRGVjb2RlciB8ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgKyB8LS0tLS0tPgorICAgICAgICB8ICAgICAgICAgfC0tLSsgICstLS0t
LS0tLS0rICAgICstLS0tLS0tLS0tLS0rICBcLS0tLworICAgICAgICArLS0tLS0tLS0tKyAgIHwg
IHwgIENFTFQgICB8ICAgIHwgRGVjaW1hdGlvbiB8ICAgIF4KKyAgICAgICAgICAgICAgICAgICAg
ICArLT58IERlY29kZXIgfC0tLT58IChPcHRpb25hbCkgfC0tLS0rCisgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgICAgICAgIHwgICAgfCAgICAgICAgICAgIHwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICArLS0tLS0tLS0tKyAgICArLS0tLS0tLS0tLS0tKworXV0+Cis8L2FydHdvcms+Cis8
L2ZpZ3VyZT4KKworPHNlY3Rpb24gYW5jaG9yPSJyYW5nZS1kZWNvZGVyIiB0aXRsZT0iUmFuZ2Ug
RGVjb2RlciI+Cis8dD4KK09wdXMgdXNlcyBhbiBlbnRyb3B5IGNvZGVyIGJhc2VkIG9uIHJhbmdl
IGNvZGluZyA8eHJlZiB0YXJnZXQ9InJhbmdlLWNvZGluZyI+PC94cmVmPgorPHhyZWYgdGFyZ2V0
PSJNYXJ0aW43OSI+PC94cmVmPiwKK3doaWNoIGlzIGl0c2VsZiBhIHJlZGlzY292ZXJ5IG9mIHRo
ZSBGSUZPIGFyaXRobWV0aWMgY29kZSBpbnRyb2R1Y2VkIGJ5IDx4cmVmIHRhcmdldD0iY29kaW5n
LXRoZXNpcyI+PC94cmVmPi4KK0l0IGlzIHZlcnkgc2ltaWxhciB0byBhcml0aG1ldGljIGVuY29k
aW5nLCBleGNlcHQgdGhhdCBlbmNvZGluZyBpcyBkb25lIHdpdGgKK2RpZ2l0cyBpbiBhbnkgYmFz
ZSBpbnN0ZWFkIG9mIHdpdGggYml0cywKK3NvIGl0IGlzIGZhc3RlciB3aGVuIHVzaW5nIGxhcmdl
ciBiYXNlcyAoaS5lLiwgYSBieXRlKS4gQWxsIG9mIHRoZQorY2FsY3VsYXRpb25zIGluIHRoZSBy
YW5nZSBjb2RlciBtdXN0IHVzZSBiaXQtZXhhY3QgaW50ZWdlciBhcml0aG1ldGljLgorPC90Pgor
PHQ+CitTeW1ib2xzIG1heSBhbHNvIGJlIGNvZGVkIGFzICJyYXcgYml0cyIgcGFja2VkIGRpcmVj
dGx5IGludG8gdGhlIGJpdHN0cmVhbSwKKyBieXBhc3NpbmcgdGhlIHJhbmdlIGNvZGVyLgorVGhl
c2UgYXJlIHBhY2tlZCBiYWNrd2FyZHMgc3RhcnRpbmcgYXQgdGhlIGVuZCBvZiB0aGUgZnJhbWUs
IGFzIGlsbHVzdHJhdGVkIGluCisgPHhyZWYgdGFyZ2V0PSJyYXdiaXRzLWV4YW1wbGUiLz4uCitU
aGlzIHJlZHVjZXMgY29tcGxleGl0eSBhbmQgbWFrZXMgdGhlIHN0cmVhbSBtb3JlIHJlc2lsaWVu
dCB0byBiaXQgZXJyb3JzLCBhcworIGNvcnJ1cHRpb24gaW4gdGhlIHJhdyBiaXRzIHdpbGwgbm90
IGRlc3luY2hyb25pemUgdGhlIGRlY29kaW5nIHByb2Nlc3MsIHVubGlrZQorIGNvcnJ1cHRpb24g
aW4gdGhlIGlucHV0IHRvIHRoZSByYW5nZSBkZWNvZGVyLgorUmF3IGJpdHMgYXJlIG9ubHkgdXNl
ZCBpbiB0aGUgQ0VMVCBsYXllci4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9InJhd2JpdHMtZXhh
bXBsZSIgdGl0bGU9IklsbHVzdHJhdGl2ZSBleGFtcGxlIG9mIHBhY2tpbmcgcmFuZ2UKKyBjb2Rl
ciBhbmQgcmF3IGJpdHMgZGF0YSI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsK
KyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAg
ICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMg
NCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCBSYW5nZSBjb2RlciBkYXRhIChwYWNrZWQgTVNC
IHRvIExTQikgLT4gICAgICAgICAgICAgICAgICAgICAgIDoKKysgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCis6ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOgor
KyAgICAgKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSsKKzogICAgIHwgPC0gQm91bmRhcnkgb2NjdXJzIGF0IGFuIGFyYml0cmFyeSBiaXQg
cG9zaXRpb24gICAgICAgICA6CisrLSstKy0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKworOiAgICAgICAgICAgICAgICAgICAgICAgICAg
PC0gUmF3IGJpdHMgZGF0YSAocGFja2VkIExTQiB0byBNU0IpIHwKKystKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2Fy
dHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitFYWNoIHN5bWJvbCBjb2RlZCBieSB0aGUgcmFuZ2Ug
Y29kZXIgaXMgZHJhd24gZnJvbSBhIGZpbml0ZSBhbHBoYWJldCBhbmQgY29kZWQKKyBpbiBhIHNl
cGFyYXRlICJjb250ZXh0Iiwgd2hpY2ggZGVzY3JpYmVzIHRoZSBzaXplIG9mIHRoZSBhbHBoYWJl
dCBhbmQgdGhlCisgcmVsYXRpdmUgZnJlcXVlbmN5IG9mIGVhY2ggc3ltYm9sIGluIHRoYXQgYWxw
aGFiZXQuCis8L3Q+Cis8dD4KK1N1cHBvc2UgdGhlcmUgaXMgYSBjb250ZXh0IHdpdGggbiBzeW1i
b2xzLCBpZGVudGlmaWVkIHdpdGggYW4gaW5kZXggdGhhdCByYW5nZXMKKyBmcm9tIDAgdG8gbi0x
LgorVGhlIHBhcmFtZXRlcnMgbmVlZGVkIHRvIGVuY29kZSBvciBkZWNvZGUgc3ltYm9sIGsgaW4g
dGhpcyBjb250ZXh0IGFyZQorIHJlcHJlc2VudGVkIGJ5IGEgdGhyZWUtdHVwbGUgKGZsW2tdLCZu
YnNwO2ZoW2tdLCZuYnNwO2Z0KSwgd2l0aAorIDAmbmJzcDsmbHQ7PSZuYnNwO2ZsW2tdJm5ic3A7
Jmx0OyZuYnNwO2ZoW2tdJm5ic3A7Jmx0Oz0mbmJzcDtmdCZuYnNwOyZsdDs9Jm5ic3A7NjU1MzUu
CitUaGUgdmFsdWVzIG9mIHRoaXMgdHVwbGUgYXJlIGRlcml2ZWQgZnJvbSB0aGUgcHJvYmFiaWxp
dHkgbW9kZWwgZm9yIHRoZQorIHN5bWJvbCwgcmVwcmVzZW50ZWQgYnkgdHJhZGl0aW9uYWwgImZy
ZXF1ZW5jeSBjb3VudHMiLgorQmVjYXVzZSBPcHVzIHVzZXMgc3RhdGljIGNvbnRleHRzIHRoZXNl
IGFyZSBub3QgdXBkYXRlZCBhcyBzeW1ib2xzIGFyZSBkZWNvZGVkLgorTGV0IGZbaV0gYmUgdGhl
IGZyZXF1ZW5jeSBvZiBzeW1ib2wgaS4KK1RoZW4gdGhlIHRocmVlLXR1cGxlIGNvcnJlc3BvbmRp
bmcgdG8gc3ltYm9sIGsgaXMgZ2l2ZW4gYnkKKzwvdD4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+
Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgay0xICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBuLTEKKyAgICAgICAgX18gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBfXworZmxba10gPSBcICBmW2ldLCAgZmhba10gPSBmbFtrXSAr
IGZba10sICBmdCA9IFwgIGZbaV0KKyAgICAgICAgL18gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvXworICAgICAgICBpPTAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGk9MAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8dD4KK1RoZSByYW5nZSBkZWNvZGVy
IGV4dHJhY3RzIHRoZSBzeW1ib2xzIGFuZCBpbnRlZ2VycyBlbmNvZGVkIHVzaW5nIHRoZSByYW5n
ZQorIGVuY29kZXIgaW4gPHhyZWYgdGFyZ2V0PSJyYW5nZS1lbmNvZGVyIi8+LgorVGhlIHJhbmdl
IGRlY29kZXIgbWFpbnRhaW5zIGFuIGludGVybmFsIHN0YXRlIHZlY3RvciBjb21wb3NlZCBvZiB0
aGUgdHdvLXR1cGxlCisgKHZhbCwmbmJzcDtybmcpLCByZXByZXNlbnRpbmcgdGhlIGRpZmZlcmVu
Y2UgYmV0d2VlbiB0aGUgaGlnaCBlbmQgb2YgdGhlCisgY3VycmVudCByYW5nZSBhbmQgdGhlIGFj
dHVhbCBjb2RlZCB2YWx1ZSwgbWludXMgb25lLCBhbmQgdGhlIHNpemUgb2YgdGhlCisgY3VycmVu
dCByYW5nZSwgcmVzcGVjdGl2ZWx5LgorQm90aCB2YWwgYW5kIHJuZyBhcmUgMzItYml0IHVuc2ln
bmVkIGludGVnZXIgdmFsdWVzLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9InJhbmdlLWRlY29k
ZXItaW5pdCIgdGl0bGU9IlJhbmdlIERlY29kZXIgSW5pdGlhbGl6YXRpb24iPgorPHQ+CitMZXQg
YjAgYmUgdGhlIGZpcnN0IGlucHV0IGJ5dGUgKG9yIHplcm8gaWYgdGhlcmUgYXJlIG5vIGJ5dGVz
IGluIHRoaXMgT3B1cworIGZyYW1lKS4KK1RoZSBkZWNvZGVyIGluaXRpYWxpemVzIHJuZyB0byAx
MjggYW5kIGluaXRpYWxpemVzIHZhbCB0bworICgxMjcmbmJzcDstJm5ic3A7KGIwJmd0OyZndDsx
KSksIHdoZXJlIChiMCZndDsmZ3Q7MSkgaXMgdGhlIHRvcCA3IGJpdHMgb2YgdGhlCisgZmlyc3Qg
aW5wdXQgYnl0ZS4KK0l0IHNhdmVzIHRoZSByZW1haW5pbmcgYml0LCAoYjAmYW1wOzEpLCBmb3Ig
dXNlIGluIHRoZSByZW5vcm1hbGl6YXRpb24KKyBwcm9jZWR1cmUgZGVzY3JpYmVkIGluIDx4cmVm
IHRhcmdldD0icmFuZ2UtZGVjb2Rlci1yZW5vcm0iLz4sIHdoaWNoIHRoZQorIGRlY29kZXIgaW52
b2tlcyBpbW1lZGlhdGVseSBhZnRlciBpbml0aWFsaXphdGlvbiB0byByZWFkIGFkZGl0aW9uYWwg
Yml0cyBhbmQKKyBlc3RhYmxpc2ggdGhlIGludmFyaWFudCB0aGF0IHJuZyZuYnNwOyZndDsmbmJz
cDsyKioyMy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJkZWNvZGluZy1z
eW1ib2xzIiB0aXRsZT0iRGVjb2RpbmcgU3ltYm9scyI+Cis8dD4KK0RlY29kaW5nIGEgc3ltYm9s
IGlzIGEgdHdvLXN0ZXAgcHJvY2Vzcy4KK1RoZSBmaXJzdCBzdGVwIGRldGVybWluZXMgYSAxNi1i
aXQgdW5zaWduZWQgdmFsdWUgZnMsIHdoaWNoIGxpZXMgd2l0aGluIHRoZQorIHJhbmdlIG9mIHNv
bWUgc3ltYm9sIGluIHRoZSBjdXJyZW50IGNvbnRleHQuCitUaGUgc2Vjb25kIHN0ZXAgdXBkYXRl
cyB0aGUgcmFuZ2UgZGVjb2RlciBzdGF0ZSB3aXRoIHRoZSB0aHJlZS10dXBsZQorIChmbFtrXSwm
bmJzcDtmaFtrXSwmbmJzcDtmdCkgY29ycmVzcG9uZGluZyB0byB0aGF0IHN5bWJvbC4KKzwvdD4K
Kzx0PgorVGhlIGZpcnN0IHN0ZXAgaXMgaW1wbGVtZW50ZWQgYnkgZWNfZGVjb2RlKCkgKGVudGRl
Yy5jKSwgd2hpY2ggY29tcHV0ZXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBh
bGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgIHZhbAorZnMgPSBmdCAtIG1p
bigtLS0tLS0gKyAxLCBmdCkgLgorICAgICAgICAgICAgICBybmcvZnQKK11dPjwvYXJ0d29yaz4K
KzwvZmlndXJlPgorVGhlIGRpdmlzaW9ucyBoZXJlIGFyZSBpbnRlZ2VyIGRpdmlzaW9uLgorPC90
PgorPHQ+CitUaGUgZGVjb2RlciB0aGVuIGlkZW50aWZpZXMgdGhlIHN5bWJvbCBpbiB0aGUgY3Vy
cmVudCBjb250ZXh0IGNvcnJlc3BvbmRpbmcgdG8KKyBmczsgaS5lLiwgdGhlIHZhbHVlIG9mIGsg
d2hvc2UgdGhyZWUtdHVwbGUgKGZsW2tdLCZuYnNwO2ZoW2tdLCZuYnNwO2Z0KQorIHNhdGlzZmll
cyBmbFtrXSZuYnNwOyZsdDs9Jm5ic3A7ZnMmbmJzcDsmbHQ7Jm5ic3A7Zmhba10uCitJdCB1c2Vz
IHRoaXMgdHVwbGUgdG8gdXBkYXRlIHZhbCBhY2NvcmRpbmcgdG8KKzxmaWd1cmUgYWxpZ249ImNl
bnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgIHJu
ZwordmFsID0gdmFsIC0gLS0tICogKGZ0IC0gZmhba10pIC4KKyAgICAgICAgICAgIGZ0CitdXT48
L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0lmIGZsW2tdIGlzIGdyZWF0ZXIgdGhhbiB6ZXJvLCB0aGVu
IHRoZSBkZWNvZGVyIHVwZGF0ZXMgcm5nIHVzaW5nCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICBybmcKK3JuZyA9IC0tLSAq
IChmaFtrXSAtIGZsW2tdKSAuCisgICAgICBmdAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitP
dGhlcndpc2UsIGl0IHVwZGF0ZXMgcm5nIHVzaW5nCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICBybmcKK3JuZyA9
IHJuZyAtIC0tLSAqIChmdCAtIGZoW2tdKSAuCisgICAgICAgICAgICBmdAorXV0+PC9hcnR3b3Jr
PgorPC9maWd1cmU+Cis8L3Q+Cis8dD4KK1VzaW5nIGEgc3BlY2lhbCBjYXNlIGZvciB0aGUgZmly
c3Qgc3ltYm9sIChyYXRoZXIgdGhhbiB0aGUgbGFzdCBzeW1ib2wsIGFzIGlzCisgY29tbW9ubHkg
ZG9uZSBpbiBvdGhlciBhcml0aG1ldGljIGNvZGVycykgZW5zdXJlcyB0aGF0IGFsbCB0aGUgdHJ1
bmNhdGlvbgorIGVycm9yIGZyb20gdGhlIGZpbml0ZSBwcmVjaXNpb24gYXJpdGhtZXRpYyBhY2N1
bXVsYXRlcyBpbiBzeW1ib2wgMC4KK1RoaXMgbWFrZXMgdGhlIGNvc3Qgb2YgY29kaW5nIGEgMCBz
bGlnaHRseSBzbWFsbGVyLCBvbiBhdmVyYWdlLCB0aGFuIGl0cworIGVzdGltYXRlZCBwcm9iYWJp
bGl0eSBpbmRpY2F0ZXMgYW5kIG1ha2VzIHRoZSBjb3N0IG9mIGNvZGluZyBhbnkgb3RoZXIgc3lt
Ym9sCisgc2xpZ2h0bHkgbGFyZ2VyLgorV2hlbiBjb250ZXh0cyBhcmUgZGVzaWduZWQgc28gdGhh
dCAwIGlzIHRoZSBtb3N0IHByb2JhYmxlIHN5bWJvbCwgd2hpY2ggaXMKKyBvZnRlbiB0aGUgY2Fz
ZSwgdGhpcyBzdHJhdGVneSBtaW5pbWl6ZXMgdGhlIGluZWZmaWNpZW5jeSBpbnRyb2R1Y2VkIGJ5
IHRoZQorIGZpbml0ZSBwcmVjaXNpb24uCitJdCBhbHNvIG1ha2VzIHNvbWUgb2YgdGhlIHNwZWNp
YWwtY2FzZSBkZWNvZGluZyByb3V0aW5lcyBpbgorIDx4cmVmIHRhcmdldD0iZGVjb2RpbmctYWx0
ZXJuYXRlIi8+IHBhcnRpY3VsYXJseSBzaW1wbGUuCis8L3Q+Cis8dD4KK0FmdGVyIHRoZSB1cGRh
dGVzLCBpbXBsZW1lbnRlZCBieSBlY19kZWNfdXBkYXRlKCkgKGVudGRlYy5jKSwgdGhlIGRlY29k
ZXIKKyBub3JtYWxpemVzIHRoZSByYW5nZSB1c2luZyB0aGUgcHJvY2VkdXJlIGluIHRoZSBuZXh0
IHNlY3Rpb24sIGFuZCByZXR1cm5zIHRoZQorIGluZGV4IGsuCis8L3Q+CisKKzxzZWN0aW9uIGFu
Y2hvcj0icmFuZ2UtZGVjb2Rlci1yZW5vcm0iIHRpdGxlPSJSZW5vcm1hbGl6YXRpb24iPgorPHQ+
CitUbyBub3JtYWxpemUgdGhlIHJhbmdlLCB0aGUgZGVjb2RlciByZXBlYXRzIHRoZSBmb2xsb3dp
bmcgcHJvY2VzcywgaW1wbGVtZW50ZWQKKyBieSBlY19kZWNfbm9ybWFsaXplKCkgKGVudGRlYy5j
KSwgdW50aWwgcm5nJm5ic3A7Jmd0OyZuYnNwOzIqKjIzLgorSWYgcm5nIGlzIGFscmVhZHkgZ3Jl
YXRlciB0aGFuIDIqKjIzLCB0aGUgZW50aXJlIHByb2Nlc3MgaXMgc2tpcHBlZC4KK0ZpcnN0LCBp
dCBzZXRzIHJuZyB0byAocm5nJmx0OyZsdDs4KS4KK1RoZW4gaXQgcmVhZHMgdGhlIG5leHQgYnl0
ZSBvZiB0aGUgT3B1cyBmcmFtZSBhbmQgZm9ybXMgYW4gOC1iaXQgdmFsdWUgc3ltLAorIHVzaW5n
IHRoZSBsZWZ0LW92ZXIgYml0IGJ1ZmZlcmVkIGZyb20gdGhlIHByZXZpb3VzIGJ5dGUgYXMgdGhl
IGhpZ2ggYml0CisgYW5kIHRoZSB0b3AgNyBiaXRzIG9mIHRoZSBieXRlIGp1c3QgcmVhZCBhcyB0
aGUgb3RoZXIgNyBiaXRzIG9mIHN5bS4KK1RoZSByZW1haW5pbmcgYml0IGluIHRoZSBieXRlIGp1
c3QgcmVhZCBpcyBidWZmZXJlZCBmb3IgdXNlIGluIHRoZSBuZXh0CisgaXRlcmF0aW9uLgorSWYg
bm8gbW9yZSBpbnB1dCBieXRlcyByZW1haW4sIGl0IHVzZXMgemVybyBiaXRzIGluc3RlYWQuCitT
ZWUgPHhyZWYgdGFyZ2V0PSJyYW5nZS1kZWNvZGVyLWluaXQiLz4gZm9yIHRoZSBpbml0aWFsaXph
dGlvbiB1c2VkIHRvIHByb2Nlc3MKKyB0aGUgZmlyc3QgYnl0ZS4KK1RoZW4sIGl0IHNldHMKKzxm
aWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsK
K3ZhbCA9ICgodmFsPDw4KSArICgyNTUtc3ltKSkgJiAweDdGRkZGRkZGIC4KK11dPjwvYXJ0d29y
az4KKzwvZmlndXJlPgorPC90PgorPHQ+CitJdCBpcyBub3JtYWwgYW5kIGV4cGVjdGVkIHRoYXQg
dGhlIHJhbmdlIGRlY29kZXIgd2lsbCByZWFkIHNldmVyYWwgYnl0ZXMKKyBpbnRvIHRoZSByYXcg
Yml0cyBkYXRhIChpZiBhbnkpIGF0IHRoZSBlbmQgb2YgdGhlIHBhY2tldCBieSB0aGUgdGltZSB0
aGUgZnJhbWUKKyBpcyBjb21wbGV0ZWx5IGRlY29kZWQsIGFzIGlsbHVzdHJhdGVkIGluIDx4cmVm
IHRhcmdldD0iZmluYWxpemUtZXhhbXBsZSIvPi4KK1RoaXMgc2FtZSBkYXRhIE1VU1QgYWxzbyBi
ZSByZXR1cm5lZCBhcyByYXcgYml0cyB3aGVuIHJlcXVlc3RlZC4KK1RoZSBlbmNvZGVyIGlzIGV4
cGVjdGVkIHRvIHRlcm1pbmF0ZSB0aGUgc3RyZWFtIGluIHN1Y2ggYSB3YXkgdGhhdCB0aGUgZGVj
b2RlcgorIHdpbGwgZGVjb2RlIHRoZSBpbnRlbmRlZCB2YWx1ZXMgcmVnYXJkbGVzcyBvZiB0aGUg
ZGF0YSBjb250YWluZWQgaW4gdGhlIHJhdworIGJpdHMuCis8eHJlZiB0YXJnZXQ9ImVuY29kZXIt
ZmluYWxpemluZyIvPiBkZXNjcmliZXMgYSBwcm9jZWR1cmUgZm9yIGRvaW5nIHRoaXMuCitJZiB0
aGUgcmFuZ2UgZGVjb2RlciBjb25zdW1lcyBhbGwgb2YgdGhlIGJ5dGVzIGJlbG9uZ2luZyB0byB0
aGUgY3VycmVudCBmcmFtZSwKKyBpdCBNVVNUIGNvbnRpbnVlIHRvIHVzZSB6ZXJvIHdoZW4gYW55
IGZ1cnRoZXIgaW5wdXQgYnl0ZXMgYXJlIHJlcXVpcmVkLCBldmVuCisgaWYgdGhlcmUgaXMgYWRk
aXRpb25hbCBkYXRhIGluIHRoZSBjdXJyZW50IHBhY2tldCBmcm9tIHBhZGRpbmcgb3Igb3RoZXIK
KyBmcmFtZXMuCis8L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSJmaW5hbGl6ZS1leGFtcGxlIiB0aXRs
ZT0iSWxsdXN0cmF0aXZlIGV4YW1wbGUgb2YgcmF3IGJpdHMKKyBvdmVybGFwcGluZyByYW5nZSBj
b2RlciBkYXRhIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIG4gICAgICAg
ICAgICAgIG4rMSAgICAgICAgICAgICBuKzIgICAgICAgICAgICAgbiszCisgMCAxIDIgMyA0IDUg
NiA3IDAgMSAyIDMgNCA1IDYgNyAwIDEgMiAzIDQgNSA2IDcgMCAxIDIgMyA0IDUgNiA3CisrLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKworOiAgICAgfCA8LS0tLS0tLS0tLS0gT3ZlcmxhcCByZWdpb24gLS0tLS0tLS0tLS0tPiB8
ICAgICAgICAgICAgIDoKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rCisgICAgICBeICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIF4KKyAgICAgIHwgICBFbmQgb2YgZGF0YSBidWZmZXJlZCBieSB0
aGUgcmFuZ2UgY29kZXIgfAorLi4uLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0rCisgICAgICB8CisgICAgICB8IEVuZCBvZiBkYXRhIGNvbnN1bWVkIGJ5IHJh
dyBiaXRzCisgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS4uLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3NlY3Rpb24+Cis8
L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZGVjb2RpbmctYWx0ZXJuYXRlIiB0aXRsZT0i
QWx0ZXJuYXRlIERlY29kaW5nIE1ldGhvZHMiPgorPHQ+CitUaGUgcmVmZXJlbmNlIGltcGxlbWVu
dGF0aW9uIHVzZXMgdGhyZWUgYWRkaXRpb25hbCBkZWNvZGluZyBtZXRob2RzIHRoYXQgYXJlCisg
ZXhhY3RseSBlcXVpdmFsZW50IHRvIHRoZSBhYm92ZSwgYnV0IG1ha2UgYXNzdW1wdGlvbnMgYW5k
IHNpbXBsaWZpY2F0aW9ucyB0aGF0CisgYWxsb3cgZm9yIGEgbW9yZSBlZmZpY2llbnQgaW1wbGVt
ZW50YXRpb24uCis8L3Q+Cis8c2VjdGlvbiBhbmNob3I9ImVjX2RlY29kZV9iaW4iIHRpdGxlPSJl
Y19kZWNvZGVfYmluKCkiPgorPHQ+CitUaGUgZmlyc3QgaXMgZWNfZGVjb2RlX2JpbigpIChlbnRk
ZWMuYyksIGRlZmluZWQgdXNpbmcgdGhlIHBhcmFtZXRlciBmdGIKKyBpbnN0ZWFkIG9mIGZ0Lgor
SXQgaXMgbWF0aGVtYXRpY2FsbHkgZXF1aXZhbGVudCB0byBjYWxsaW5nIGVjX2RlY29kZSgpIHdp
dGgKKyBmdCZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7ZnRiKSwgYnV0IGF2b2lkcyBvbmUgb2YgdGhl
IGRpdmlzaW9ucy4KKzwvdD4KKzwvc2VjdGlvbj4KKzxzZWN0aW9uIGFuY2hvcj0iZWNfZGVjX2Jp
dF9sb2dwIiB0aXRsZT0iZWNfZGVjX2JpdF9sb2dwKCkiPgorPHQ+CitUaGUgbmV4dCBpcyBlY19k
ZWNfYml0X2xvZ3AoKSAoZW50ZGVjLmMpLCB3aGljaCBkZWNvZGVzIGEgc2luZ2xlIGJpbmFyeSBz
eW1ib2wsCisgcmVwbGFjaW5nIGJvdGggdGhlIGVjX2RlY29kZSgpIGFuZCBlY19kZWNfdXBkYXRl
KCkgc3RlcHMuCitUaGUgY29udGV4dCBpcyBkZXNjcmliZWQgYnkgYSBzaW5nbGUgcGFyYW1ldGVy
LCBsb2dwLCB3aGljaCBpcyB0aGUgYWJzb2x1dGUKKyB2YWx1ZSBvZiB0aGUgYmFzZS0yIGxvZ2Fy
aXRobSBvZiB0aGUgcHJvYmFiaWxpdHkgb2YgYSAiMSIuCitJdCBpcyBtYXRoZW1hdGljYWxseSBl
cXVpdmFsZW50IHRvIGNhbGxpbmcgZWNfZGVjb2RlKCkgd2l0aAorIGZ0Jm5ic3A7PSZuYnNwOygx
Jmx0OyZsdDtsb2dwKSwgZm9sbG93ZWQgYnkgZWNfZGVjX3VwZGF0ZSgpIHdpdGgKKyB0aGUgMy10
dXBsZSAoZmxba10mbmJzcDs9Jm5ic3A7MCwKKyBmaFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7
bG9ncCkmbmJzcDstJm5ic3A7MSwKKyBmdCZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7bG9ncCkpIGlm
IHRoZSByZXR1cm5lZCB2YWx1ZQorIG9mIGZzIGlzIGxlc3MgdGhhbiAoMSZsdDsmbHQ7bG9ncCkm
bmJzcDstJm5ic3A7MSAoYSAiMCIgd2FzIGRlY29kZWQpLCBhbmQgd2l0aAorIChmbFtrXSZuYnNw
Oz0mbmJzcDsoMSZsdDsmbHQ7bG9ncCkmbmJzcDstJm5ic3A7MSwKKyBmaFtrXSZuYnNwOz0mbmJz
cDtmdCZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7bG9ncCkpIG90aGVyd2lzZSAoYSAiMSIgd2FzCisg
ZGVjb2RlZCkuCitUaGUgaW1wbGVtZW50YXRpb24gcmVxdWlyZXMgbm8gbXVsdGlwbGljYXRpb25z
IG9yIGRpdmlzaW9ucy4KKzwvdD4KKzwvc2VjdGlvbj4KKzxzZWN0aW9uIGFuY2hvcj0iZWNfZGVj
X2ljZGYiIHRpdGxlPSJlY19kZWNfaWNkZigpIj4KKzx0PgorVGhlIGxhc3QgaXMgZWNfZGVjX2lj
ZGYoKSAoZW50ZGVjLmMpLCB3aGljaCBkZWNvZGVzIGEgc2luZ2xlIHN5bWJvbCB3aXRoIGEKKyB0
YWJsZS1iYXNlZCBjb250ZXh0IG9mIHVwIHRvIDggYml0cywgYWxzbyByZXBsYWNpbmcgYm90aCB0
aGUgZWNfZGVjb2RlKCkgYW5kCisgZWNfZGVjX3VwZGF0ZSgpIHN0ZXBzLCBhcyB3ZWxsIGFzIHRo
ZSBzZWFyY2ggZm9yIHRoZSBkZWNvZGVkIHN5bWJvbCBpbiBiZXR3ZWVuLgorVGhlIGNvbnRleHQg
aXMgZGVzY3JpYmVkIGJ5IHR3byBwYXJhbWV0ZXJzLCBhbiBpY2RmCisgKCJpbnZlcnNlIiBjdW11
bGF0aXZlIGRpc3RyaWJ1dGlvbiBmdW5jdGlvbikgdGFibGUgYW5kIGZ0Yi4KK0FzIHdpdGggZWNf
ZGVjb2RlX2JpbigpLCAoMSZsdDsmbHQ7ZnRiKSBpcyBlcXVpdmFsZW50IHRvIGZ0LgoraWRjZltr
XSwgb24gdGhlIG90aGVyIGhhbmQsIHN0b3JlcyAoMSZsdDsmbHQ7ZnRiKS1maFtrXSwgd2hpY2gg
aXMgZXF1YWwgdG8KKyAoMSZsdDsmbHQ7ZnRiKSZuYnNwOy0mbmJzcDtmbFtrKzFdLgorZmxbMF0g
aXMgYXNzdW1lZCB0byBiZSAwLCBhbmQgdGhlIHRhYmxlIGlzIHRlcm1pbmF0ZWQgYnkgYSB2YWx1
ZSBvZiAwICh3aGVyZQorIGZoW2tdJm5ic3A7PT0mbmJzcDtmdCkuCis8L3Q+Cis8dD4KK1RoZSBm
dW5jdGlvbiBpcyBtYXRoZW1hdGljYWxseSBlcXVpdmFsZW50IHRvIGNhbGxpbmcgZWNfZGVjb2Rl
KCkgd2l0aAorIGZ0Jm5ic3A7PSZuYnNwOygxJmx0OyZsdDtmdGIpLCB1c2luZyB0aGUgcmV0dXJu
ZWQgdmFsdWUgZnMgdG8gc2VhcmNoIHRoZSB0YWJsZQorIGZvciB0aGUgZmlyc3QgZW50cnkgd2hl
cmUgZnMmbmJzcDsmbHQ7Jm5ic3A7KDEmbHQ7Jmx0O2Z0YiktaWNkZltrXSwgYW5kCisgY2FsbGlu
ZyBlY19kZWNfdXBkYXRlKCkgd2l0aAorIGZsW2tdJm5ic3A7PSZuYnNwOygxJmx0OyZsdDtmdGIp
Jm5ic3A7LSZuYnNwO2ljZGZbay0xXSAob3IgMAorIGlmIGsmbmJzcDs9PSZuYnNwOzApLCBmaFtr
XSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7ZnRiKSZuYnNwOy0mbmJzcDtpZGNmW2tdLAorIGFuZCBm
dCZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7ZnRiKS4KK0NvbWJpbmluZyB0aGUgc2VhcmNoIHdpdGgg
dGhlIHVwZGF0ZSBhbGxvd3MgdGhlIGRpdmlzaW9uIHRvIGJlIHJlcGxhY2VkIGJ5IGEKKyBzZXJp
ZXMgb2YgbXVsdGlwbGljYXRpb25zICh3aGljaCBhcmUgdXN1YWxseSBtdWNoIGNoZWFwZXIpLCBh
bmQgdXNpbmcgYW4KKyBpbnZlcnNlIENERiBhbGxvd3MgdGhlIHVzZSBvZiBhbiBmdGIgYXMgbGFy
Z2UgYXMgOCBpbiBhbiA4LWJpdCB0YWJsZSB3aXRob3V0CisgYW55IHNwZWNpYWwgY2FzZXMuCitU
aGlzIGlzIHRoZSBwcmltYXJ5IGludGVyZmFjZSB3aXRoIHRoZSByYW5nZSBkZWNvZGVyIGluIHRo
ZSBTSUxLIGxheWVyLCB0aG91Z2gKKyBpdCBpcyB1c2VkIGluIGEgZmV3IHBsYWNlcyBpbiB0aGUg
Q0VMVCBsYXllciBhcyB3ZWxsLgorPC90PgorPHQ+CitBbHRob3VnaCBpY2RmW2tdIGlzIG1vcmUg
Y29udmVuaWVudCBmb3IgdGhlIGNvZGUsIHRoZSBmcmVxdWVuY3kgY291bnRzLCBmW2tdLAorIGFy
ZSBhIG1vcmUgbmF0dXJhbCByZXByZXNlbnRhdGlvbiBvZiB0aGUgcHJvYmFiaWxpdHkgZGlzdHJp
YnV0aW9uIGZ1bmN0aW9uCisgKFBERikgZm9yIGEgZ2l2ZW4gc3ltYm9sLgorVGhlcmVmb3JlIHRo
aXMgZHJhZnQgbGlzdHMgdGhlIGxhdHRlciwgbm90IHRoZSBmb3JtZXIsIHdoZW4gZGVzY3JpYmlu
ZyB0aGUKKyBjb250ZXh0IGluIHdoaWNoIGEgc3ltYm9sIGlzIGNvZGVkIGFzIGEgbGlzdCwgZS5n
LiwgezQsIDQsIDQsIDR9LzE2IGZvciBhCisgdW5pZm9ybSBjb250ZXh0IHdpdGggZm91ciBwb3Nz
aWJsZSB2YWx1ZXMgYW5kIGZ0Jm5ic3A7PSZuYnNwOzE2LgorVGhlIHZhbHVlIG9mIGZ0IGFmdGVy
IHRoZSBzbGFzaCBpcyBhbHdheXMgdGhlIHN1bSBvZiB0aGUgZW50cmllcyBpbiB0aGUgUERGLAor
IGJ1dCBpcyBpbmNsdWRlZCBmb3IgY29udmVuaWVuY2UuCitDb250ZXh0cyB3aXRoIGlkZW50aWNh
bCBwcm9iYWJpbGl0aWVzLCBmW2tdL2Z0LCBidXQgZGlmZmVyZW50IHZhbHVlcyBvZiBmdAorIChv
ciBlcXVpdmFsZW50bHksIGZ0YikgYXJlIG5vdCB0aGUgc2FtZSwgYW5kIGNhbm5vdCwgaW4gZ2Vu
ZXJhbCwgYmUgdXNlZCBpbgorIHBsYWNlIG9mIG9uZSBhbm90aGVyLgorQW4gaWNkZiB0YWJsZSBp
cyBhbHNvIG5vdCBjYXBhYmxlIG9mIHJlcHJlc2VudGluZyBhIFBERiB3aGVyZSB0aGUgZmlyc3Qg
c3ltYm9sCisgaGFzIDAgcHJvYmFiaWxpdHkuCitJbiBzdWNoIGNvbnRleHRzLCBlY19kZWNfaWNk
ZigpIGNhbiBkZWNvZGUgdGhlIHN5bWJvbCBieSB1c2luZyBhIHRhYmxlIHRoYXQKKyBkcm9wcyB0
aGUgZW50cmllcyBmb3IgYW55IGluaXRpYWwgemVyby1wcm9iYWJpbGl0eSB2YWx1ZXMgYW5kIGFk
ZGluZyB0aGUKKyBjb25zdGFudCBvZmZzZXQgb2YgdGhlIGZpcnN0IHZhbHVlIHdpdGggYSBub24t
emVybyBwcm9iYWJpbGl0eSB0byBpdHMgcmV0dXJuCisgdmFsdWUuCis8L3Q+Cis8L3NlY3Rpb24+
Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZGVjb2RpbmctYml0cyIgdGl0bGU9IkRl
Y29kaW5nIFJhdyBCaXRzIj4KKzx0PgorVGhlIHJhdyBiaXRzIHVzZWQgYnkgdGhlIENFTFQgbGF5
ZXIgYXJlIHBhY2tlZCBhdCB0aGUgZW5kIG9mIHRoZSBwYWNrZXQsIHdpdGgKKyB0aGUgbGVhc3Qg
c2lnbmlmaWNhbnQgYml0IG9mIHRoZSBmaXJzdCB2YWx1ZSBwYWNrZWQgaW4gdGhlIGxlYXN0IHNp
Z25pZmljYW50CisgYml0IG9mIHRoZSBsYXN0IGJ5dGUsIGZpbGxpbmcgdXAgdG8gdGhlIG1vc3Qg
c2lnbmlmaWNhbnQgYml0IGluIHRoZSBsYXN0IGJ5dGUsCisgY29udGludWluZyBvbiB0byB0aGUg
bGVhc3Qgc2lnbmlmaWNhbnQgYml0IG9mIHRoZSBwZW51bHRpbWF0ZSBieXRlLCBhbmQgc28gb24u
CitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIHJlYWRzIHRoZW0gdXNpbmcgZWNfZGVjX2Jp
dHMoKSAoZW50ZGVjLmMpLgorQmVjYXVzZSB0aGUgcmFuZ2UgZGVjb2RlciBtdXN0IHJlYWQgc2V2
ZXJhbCBieXRlcyBhaGVhZCBpbiB0aGUgc3RyZWFtLCBhcworIGRlc2NyaWJlZCBpbiA8eHJlZiB0
YXJnZXQ9InJhbmdlLWRlY29kZXItcmVub3JtIi8+LCB0aGUgaW5wdXQgY29uc3VtZWQgYnkgdGhl
CisgcmF3IGJpdHMgbWF5IG92ZXJsYXAgd2l0aCB0aGUgaW5wdXQgY29uc3VtZWQgYnkgdGhlIHJh
bmdlIGNvZGVyLCBhbmQgYSBkZWNvZGVyCisgTVVTVCBhbGxvdyB0aGlzLgorVGhlIGZvcm1hdCBz
aG91bGQgcmVuZGVyIGl0IGltcG9zc2libGUgdG8gYXR0ZW1wdCB0byByZWFkIG1vcmUgcmF3IGJp
dHMgdGhhbgorIHRoZXJlIGFyZSBhY3R1YWwgYml0cyBpbiB0aGUgZnJhbWUsIHRob3VnaCBhIGRl
Y29kZXIgbWF5IHdpc2ggdG8gY2hlY2sgZm9yCisgdGhpcyBhbmQgcmVwb3J0IGFuIGVycm9yLgor
PC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImVjX2RlY191aW50IiB0aXRsZT0i
RGVjb2RpbmcgVW5pZm9ybWx5IERpc3RyaWJ1dGVkIEludGVnZXJzIj4KKzx0PgorVGhlIGZ1bmN0
aW9uIGVjX2RlY191aW50KCkgKGVudGRlYy5jKSBkZWNvZGVzIG9uZSBvZiBmdCBlcXVpcHJvYmFi
bGUgdmFsdWVzIGluCisgdGhlIHJhbmdlIDAgdG8gKGZ0Jm5ic3A7LSZuYnNwOzEpLCBpbmNsdXNp
dmUsIGVhY2ggd2l0aCBhIGZyZXF1ZW5jeSBvZiAxLAorIHdoZXJlIGZ0IG1heSBiZSBhcyBsYXJn
ZSBhcyAoMioqMzImbmJzcDstJm5ic3A7MSkuCitCZWNhdXNlIGVjX2RlY29kZSgpIGlzIGxpbWl0
ZWQgdG8gYSB0b3RhbCBmcmVxdWVuY3kgb2YgKDIqKjE2Jm5ic3A7LSZuYnNwOzEpLAorIGl0IHNw
bGl0cyB1cCB0aGUgdmFsdWUgaW50byBhIHJhbmdlIGNvZGVkIHN5bWJvbCByZXByZXNlbnRpbmcg
dXAgdG8gOCBvZiB0aGUKKyBoaWdoIGJpdHMsIGFuZCwgaWYgbmVjZXNzYXJ5LCByYXcgYml0cyBy
ZXByZXNlbnRpbmcgdGhlIHJlbWFpbmRlciBvZiB0aGUKKyB2YWx1ZS4KK1RoZSBsaW1pdCBvZiA4
IGJpdHMgaW4gdGhlIHJhbmdlIGNvZGVkIHN5bWJvbCBpcyBhIHRyYWRlLW9mZiBiZXR3ZWVuCisg
aW1wbGVtZW50YXRpb24gY29tcGxleGl0eSwgbW9kZWxpbmcgZXJyb3IgKHNpbmNlIHRoZSBzeW1i
b2xzIG5vIGxvbmdlciB0cnVseQorIGhhdmUgZXF1YWwgY29kaW5nIGNvc3QpLCBhbmQgcm91bmRp
bmcgZXJyb3IgaW50cm9kdWNlZCBieSB0aGUgcmFuZ2UgY29kZXIKKyBpdHNlbGYgKHdoaWNoIGdl
dHMgbGFyZ2VyIGFzIG1vcmUgYml0cyBhcmUgaW5jbHVkZWQpLgorVXNpbmcgcmF3IGJpdHMgcmVk
dWNlcyB0aGUgbWF4aW11bSBudW1iZXIgb2YgZGl2aXNpb25zIHJlcXVpcmVkIGluIHRoZSB3b3Jz
dAorIGNhc2UsIGJ1dCBtZWFucyB0aGF0IGl0IG1heSBiZSBwb3NzaWJsZSB0byBkZWNvZGUgYSB2
YWx1ZSBvdXRzaWRlIHRoZSByYW5nZQorIDAgdG8gKGZ0Jm5ic3A7LSZuYnNwOzEpLCBpbmNsdXNp
dmUuCis8L3Q+CisKKzx0PgorZWNfZGVjX3VpbnQoKSB0YWtlcyBhIHNpbmdsZSwgcG9zaXRpdmUg
cGFyYW1ldGVyLCBmdCwgd2hpY2ggaXMgbm90IG5lY2Vzc2FyaWx5CisgYSBwb3dlciBvZiB0d28s
IGFuZCByZXR1cm5zIGFuIGludGVnZXIsIHQsIHdob3NlIHZhbHVlIGxpZXMgYmV0d2VlbiAwIGFu
ZAorIChmdCZuYnNwOy0mbmJzcDsxKSwgaW5jbHVzaXZlLgorTGV0IGZ0YiZuYnNwOz0mbmJzcDtp
bG9nKGZ0Jm5ic3A7LSZuYnNwOzEpLCBpLmUuLCB0aGUgbnVtYmVyIG9mIGJpdHMgcmVxdWlyZWQK
KyB0byBzdG9yZSAoZnQmbmJzcDstJm5ic3A7MSkgaW4gdHdvJ3MgY29tcGxlbWVudCBub3RhdGlv
bi4KK0lmIGZ0YiBpcyA4IG9yIGxlc3MsIHRoZW4gdCBpcyBkZWNvZGVkIHdpdGggdCZuYnNwOz0m
bmJzcDtlY19kZWNvZGUoZnQpLCBhbmQKKyB0aGUgcmFuZ2UgY29kZXIgc3RhdGUgaXMgdXBkYXRl
ZCB1c2luZyB0aGUgdGhyZWUtdHVwbGUgKHQsIHQmbmJzcDsrJm5ic3A7MSwKKyBmdCkuCis8L3Q+
Cis8dD4KK0lmIGZ0YiBpcyBncmVhdGVyIHRoYW4gOCwgdGhlbiB0aGUgdG9wIDggYml0cyBvZiB0
IGFyZSBkZWNvZGVkIHVzaW5nCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxp
Z249ImNlbnRlciI+PCFbQ0RBVEFbCit0ID0gZWNfZGVjb2RlKCgoZnQgLSAxKSA+PiAoZnRiIC0g
OCkpICsgMSkgLAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisgdGhlIGRlY29kZXIgc3RhdGUg
aXMgdXBkYXRlZCB1c2luZyB0aGUgdGhyZWUtdHVwbGUKKyAodCwgdCZuYnNwOysmbmJzcDsxLAor
ICgoZnQmbmJzcDstJm5ic3A7MSkmbmJzcDsmZ3Q7Jmd0OyZuYnNwOyhmdGImbmJzcDstJm5ic3A7
OCkpJm5ic3A7KyZuYnNwOzEpLAorIGFuZCB0aGUgcmVtYWluaW5nIGJpdHMgYXJlIGRlY29kZWQg
YXMgcmF3IGJpdHMsIHNldHRpbmcKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBh
bGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3QgPSAodCA8PCAoZnRiIC0gOCkpIHwgZWNfZGVjX2Jp
dHMoZnRiIC0gOCkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitJZiwgYXQgdGhpcyBwb2lu
dCwgdCA+PSBmdCwgdGhlbiB0aGUgY3VycmVudCBmcmFtZSBpcyBjb3JydXB0LgorSW4gdGhhdCBj
YXNlLCB0aGUgZGVjb2RlciBzaG91bGQgYXNzdW1lIHRoZXJlIGhhcyBiZWVuIGFuIGVycm9yIGlu
IHRoZSBjb2RpbmcsCisgZGVjb2RpbmcsIG9yIHRyYW5zbWlzc2lvbiBhbmQgU0hPVUxEIHRha2Ug
bWVhc3VyZXMgdG8gY29uY2VhbCB0aGUKKyBlcnJvciBhbmQvb3IgcmVwb3J0IHRvIHRoZSBhcHBs
aWNhdGlvbiB0aGF0IHRoZSBlcnJvciBoYXMgb2NjdXJyZWQuCis8L3Q+CisKKzwvc2VjdGlvbj4K
KworPHNlY3Rpb24gYW5jaG9yPSJkZWNvZGVyLXRlbGwiIHRpdGxlPSJDdXJyZW50IEJpdCBVc2Fn
ZSI+Cis8dD4KK1RoZSBiaXQgYWxsb2NhdGlvbiByb3V0aW5lcyBpbiB0aGUgQ0VMVCBkZWNvZGVy
IG5lZWQgYSBjb25zZXJ2YXRpdmUgdXBwZXIgYm91bmQKKyBvbiB0aGUgbnVtYmVyIG9mIGJpdHMg
dGhhdCBoYXZlIGJlZW4gdXNlZCBmcm9tIHRoZSBjdXJyZW50IGZyYW1lIHRodXMgZmFyLAorIGlu
Y2x1ZGluZyBib3RoIHJhbmdlIGNvZGVyIGJpdHMgYW5kIHJhdyBiaXRzLgorVGhpcyBkcml2ZXMg
YWxsb2NhdGlvbiBkZWNpc2lvbnMgdGhhdCBtdXN0IG1hdGNoIHRob3NlIG1hZGUgaW4gdGhlIGVu
Y29kZXIuCitUaGUgdXBwZXIgYm91bmQgaXMgY29tcHV0ZWQgaW4gdGhlIHJlZmVyZW5jZSBpbXBs
ZW1lbnRhdGlvbiB0byB3aG9sZS1iaXQKKyBwcmVjaXNpb24gYnkgdGhlIGZ1bmN0aW9uIGVjX3Rl
bGwoKSAoZW50Y29kZS5oKSBhbmQgdG8gZnJhY3Rpb25hbCAxLzh0aCBiaXQKKyBwcmVjaXNpb24g
YnkgdGhlIGZ1bmN0aW9uIGVjX3RlbGxfZnJhYygpIChlbnRjb2RlLmMpLgorTGlrZSBhbGwgb3Bl
cmF0aW9ucyBpbiB0aGUgcmFuZ2UgY29kZXIsIGl0IG11c3QgYmUgaW1wbGVtZW50ZWQgaW4gYSBi
aXQtZXhhY3QKKyBtYW5uZXIsIGFuZCBtdXN0IHByb2R1Y2UgZXhhY3RseSB0aGUgc2FtZSB2YWx1
ZSByZXR1cm5lZCBieSB0aGUgc2FtZSBmdW5jdGlvbnMKKyBpbiB0aGUgZW5jb2RlciBhZnRlciBl
bmNvZGluZyB0aGUgc2FtZSBzeW1ib2xzLgorPC90PgorPHQ+CitlY190ZWxsKCkgaXMgZ3VhcmFu
dGVlZCB0byByZXR1cm4gY2VpbChlY190ZWxsX2ZyYWMoKS84LjApLgorSW4gdmFyaW91cyBwbGFj
ZXMgdGhlIGNvZGVjIHdpbGwgY2hlY2sgdG8gZW5zdXJlIHRoZXJlIGlzIGVub3VnaCByb29tIHRv
CisgY29udGFpbiBhIHN5bWJvbCBiZWZvcmUgYXR0ZW1wdGluZyB0byBkZWNvZGUgaXQuCitJbiBw
cmFjdGljZSwgYWx0aG91Z2ggdGhlIG51bWJlciBvZiBiaXRzIHVzZWQgc28gZmFyIGlzIGFuIHVw
cGVyIGJvdW5kLAorIGRlY29kaW5nIGEgc3ltYm9sIHdob3NlIHByb2JhYmlsaXR5IG1vZGVsIHN1
Z2dlc3RzIGl0IGhhcyBhIHdvcnN0LWNhc2UgY29zdCBvZgorIHAgMS84dGggYml0cyBtYXkgYWN0
dWFsbHkgYWR2YW5jZSB0aGUgcmV0dXJuIHZhbHVlIG9mIGVjX3RlbGxfZnJhYygpIGJ5CisgcC0x
LCBwLCBvciBwKzEgMS84dGggYml0cywgZHVlIHRvIGFwcHJveGltYXRpb24gZXJyb3IgaW4gdGhh
dCB1cHBlciBib3VuZCwKKyB0cnVuY2F0aW9uIGVycm9yIGluIHRoZSByYW5nZSBjb2RlciwgYW5k
IGZvciBsYXJnZSB2YWx1ZXMgb2YgZnQsIG1vZGVsaW5nCisgZXJyb3IgaW4gZWNfZGVjX3VpbnQo
KS4KKzwvdD4KKzx0PgorSG93ZXZlciwgdGhpcyBlcnJvciBpcyBib3VuZGVkLCBhbmQgcGVyaW9k
aWMgY2FsbHMgdG8gZWNfdGVsbCgpIG9yCisgZWNfdGVsbF9mcmFjKCkgYXQgcHJlY2lzZWx5IGRl
ZmluZWQgcG9pbnRzIGluIHRoZSBkZWNvZGluZyBwcm9jZXNzIHByZXZlbnQgaXQKKyBmcm9tIGFj
Y3VtdWxhdGluZy4KK0ZvciBhIHJhbmdlIGNvZGVyIHN5bWJvbCB0aGF0IHJlcXVpcmVzIGEgd2hv
bGUgbnVtYmVyIG9mIGJpdHMgKGkuZS4sCisgZm9yIHdoaWNoIGZ0LyhmaFtrXSZuYnNwOy0mbmJz
cDtmbFtrXSkgaXMgYSBwb3dlciBvZiB0d28pLCB3aGVyZSB0aGVyZSBhcmUgYXQKKyBsZWFzdCBw
IDEvOHRoIGJpdHMgYXZhaWxhYmxlLCBkZWNvZGluZyB0aGUgc3ltYm9sIHdpbGwgbmV2ZXIgY2F1
c2UgZWNfdGVsbCgpIG9yCisgZWNfdGVsbF9mcmFjKCkgdG8gZXhjZWVkIHRoZSBzaXplIG9mIHRo
ZSBmcmFtZSAoImJ1c3QgdGhlIGJ1ZGdldCIpLgorSW4gdGhpcyBjYXNlIHRoZSByZXR1cm4gdmFs
dWUgb2YgZWNfdGVsbF9mcmFjKCkgd2lsbCBvbmx5IGFkdmFuY2UgYnkgbW9yZSB0aGFuCisgcCAx
Lzh0aCBiaXRzIGlmIHRoZXJlIHdhcyBhbiBhZGRpdGlvbmFsLCBmcmFjdGlvbmFsIG51bWJlciBv
ZiBiaXRzIHJlbWFpbmluZywKKyBhbmQgaXQgd2lsbCBuZXZlciBhZHZhbmNlIGJleW9uZCB0aGUg
bmV4dCB3aG9sZS1iaXQgYm91bmRhcnksIHdoaWNoIGlzIHNhZmUsCisgc2luY2UgZnJhbWVzIGFs
d2F5cyBjb250YWluIGEgd2hvbGUgbnVtYmVyIG9mIGJpdHMuCitIb3dldmVyLCB3aGVuIHAgaXMg
bm90IGEgd2hvbGUgbnVtYmVyIG9mIGJpdHMsIGFuIGV4dHJhIDEvOHRoIGJpdCBpcyByZXF1aXJl
ZAorIHRvIGVuc3VyZSB0aGF0IGRlY29kaW5nIHRoZSBzeW1ib2wgd2lsbCBub3QgYnVzdCB0aGUg
YnVkZ2V0LgorPC90PgorPHQ+CitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGtlZXBzIHRy
YWNrIG9mIHRoZSB0b3RhbCBudW1iZXIgb2Ygd2hvbGUgYml0cyB0aGF0CisgaGF2ZSBiZWVuIHBy
b2Nlc3NlZCBieSB0aGUgZGVjb2RlciBzbyBmYXIgaW4gdGhlIHZhcmlhYmxlIG5iaXRzX3RvdGFs
LAorIGluY2x1ZGluZyB0aGUgKHBvc3NpYmx5IGZyYWN0aW9uYWwpIG51bWJlciBvZiBiaXRzIHRo
YXQgYXJlIGN1cnJlbnRseQorIGJ1ZmZlcmVkLCBidXQgbm90IGNvbnN1bWVkLCBpbnNpZGUgdGhl
IHJhbmdlIGNvZGVyLgorbmJpdHNfdG90YWwgaXMgaW5pdGlhbGl6ZWQgdG8gOSBqdXN0IGJlZm9y
ZSB0aGUgaW5pdGlhbCByYW5nZSByZW5vcm1hbGl6YXRpb24KKyBwcm9jZXNzIGNvbXBsZXRlcyAo
b3IgZXF1aXZhbGVudGx5LCBpdCBjYW4gYmUgaW5pdGlhbGl6ZWQgdG8gMzMgYWZ0ZXIgdGhlCisg
Zmlyc3QgcmVub3JtYWxpemF0aW9uKS4KK1RoZSBleHRyYSB0d28gYml0cyBvdmVyIHRoZSBhY3R1
YWwgYW1vdW50IGJ1ZmZlcmVkIGJ5IHRoZSByYW5nZSBjb2RlcgorIGd1YXJhbnRlZXMgdGhhdCBp
dCBpcyBhbiB1cHBlciBib3VuZCBhbmQgdGhhdCB0aGVyZSBpcyBlbm91Z2ggcm9vbSBmb3IgdGhl
CisgZW5jb2RlciB0byB0ZXJtaW5hdGUgdGhlIHN0cmVhbS4KK0VhY2ggaXRlcmF0aW9uIHRocm91
Z2ggdGhlIHJhbmdlIGNvZGVyJ3MgcmVub3JtYWxpemF0aW9uIGxvb3AgaW5jcmVhc2VzCisgbmJp
dHNfdG90YWwgYnkgOC4KK1JlYWRpbmcgcmF3IGJpdHMgaW5jcmVhc2VzIG5iaXRzX3RvdGFsIGJ5
IHRoZSBudW1iZXIgb2YgcmF3IGJpdHMgcmVhZC4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJl
Y190ZWxsIiB0aXRsZT0iZWNfdGVsbCgpIj4KKzx0PgorVGhlIHdob2xlIG51bWJlciBvZiBiaXRz
IGJ1ZmZlcmVkIGluIHJuZyBtYXkgYmUgZXN0aW1hdGVkIHZpYSBsZyA9IGlsb2cocm5nKS4KK2Vj
X3RlbGwoKSB0aGVuIGJlY29tZXMgYSBzaW1wbGUgbWF0dGVyIG9mIHJlbW92aW5nIHRoZXNlIGJp
dHMgZnJvbSB0aGUgdG90YWwuCitJdCByZXR1cm5zIChuYml0c190b3RhbCAtIGxnKS4KKzwvdD4K
Kzx0PgorSW4gYSBuZXdseSBpbml0aWFsaXplZCBkZWNvZGVyLCBiZWZvcmUgYW55IHN5bWJvbHMg
aGF2ZSBiZWVuIHJlYWQsIHRoaXMgcmVwb3J0cworIHRoYXQgMSBiaXQgaGFzIGJlZW4gdXNlZC4K
K1RoaXMgaXMgdGhlIGJpdCByZXNlcnZlZCBmb3IgdGVybWluYXRpb24gb2YgdGhlIGVuY29kZXIu
Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZWNfdGVsbF9mcmFjIiB0aXRs
ZT0iZWNfdGVsbF9mcmFjKCkiPgorPHQ+CitlY190ZWxsX2ZyYWMoKSBlc3RpbWF0ZXMgdGhlIG51
bWJlciBvZiBiaXRzIGJ1ZmZlcmVkIGluIHJuZyB0byBmcmFjdGlvbmFsCisgcHJlY2lzaW9uLgor
U2luY2Ugcm5nIG11c3QgYmUgZ3JlYXRlciB0aGFuIDIqKjIzIGFmdGVyIHJlbm9ybWFsaXphdGlv
biwgbGcgbXVzdCBiZSBhdCBsZWFzdAorIDI0LgorTGV0Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIi
PgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKK3JfUTE1ID0gcm5nID4+IChs
Zy0xNikgLAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cisgc28gdGhhdCAzMjc2OCAmbHQ7PSBy
X1ExNSAmbHQ7IDY1NTM2LCBhbiB1bnNpZ25lZCBRMTUgdmFsdWUgcmVwcmVzZW50aW5nIHRoZQor
IGZyYWN0aW9uYWwgcGFydCBvZiBybmcuCitUaGVuIHRoZSBmb2xsb3dpbmcgcHJvY2VkdXJlIGNh
biBiZSB1c2VkIHRvIGFkZCBvbmUgYml0IG9mIHByZWNpc2lvbiB0byBsZy4KK0ZpcnN0LCB1cGRh
dGUKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwh
W0NEQVRBWworcl9RMTUgPSAocl9RMTUqcl9RMTUpID4+IDE1IC4KK11dPjwvYXJ0d29yaz4KKzwv
ZmlndXJlPgorVGhlbiBhZGQgdGhlIDE2dGggYml0IG9mIHJfUTE1IHRvIGxnIHZpYQorPGZpZ3Vy
ZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCits
ZyA9IDIqbGcgKyAocl9RMTUgPj4gMTYpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorRmlu
YWxseSwgaWYgdGhpcyBiaXQgd2FzIGEgMSwgcmVkdWNlIHJfUTE1IGJ5IGEgZmFjdG9yIG9mIHR3
byB2aWEKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4K
KzwhW0NEQVRBWworcl9RMTUgPSByX1ExNSA+PiAxICwKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorIHNvIHRoYXQgaXQgb25jZSBhZ2FpbiBsaWVzIGluIHRoZSByYW5nZSAzMjc2OCAmbHQ7PSBy
X1ExNSAmbHQ7IDY1NTM2LgorPC90PgorPHQ+CitUaGlzIHByb2NlZHVyZSBpcyByZXBlYXRlZCB0
aHJlZSB0aW1lcyB0byBleHRlbmQgbGcgdG8gMS84dGggYml0IHByZWNpc2lvbi4KK2VjX3RlbGxf
ZnJhYygpIHRoZW4gcmV0dXJucyAobmJpdHNfdG90YWwqOCAtIGxnKS4KKzwvdD4KKzwvc2VjdGlv
bj4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19k
ZWNvZGVyX291dGxpbmUiIHRpdGxlPSJTSUxLIERlY29kZXIiPgorPHQ+CitUaGUgZGVjb2Rlcidz
IExQIGxheWVyIHVzZXMgYSBtb2RpZmllZCB2ZXJzaW9uIG9mIHRoZSBTSUxLIGNvZGVjIChoZXJl
aW4gc2ltcGx5CisgY2FsbGVkICJTSUxLIiksIHdoaWNoIHJ1bnMgYSBkZWNvZGVkIGV4Y2l0YXRp
b24gc2lnbmFsIHRocm91Z2ggYWRhcHRpdmUKKyBsb25nLXRlcm0gYW5kIHNob3J0LXRlcm0gcHJl
ZGljdGlvbiBzeW50aGVzaXMgZmlsdGVycy4KK0l0IHJ1bnMgYXQgTkIsIE1CLCBhbmQgV0Igc2Ft
cGxlIHJhdGVzIGludGVybmFsbHkuCitXaGVuIHVzZWQgaW4gYSBTV0Igb3IgRkIgSHlicmlkIGZy
YW1lLCB0aGUgTFAgbGF5ZXIgaXRzZWxmIHN0aWxsIG9ubHkgcnVucyBpbgorIFdCLgorPC90Pgor
Cis8c2VjdGlvbiB0aXRsZT0iU0lMSyBEZWNvZGVyIE1vZHVsZXMiPgorPHQ+CitBbiBvdmVydmll
dyBvZiB0aGUgZGVjb2RlciBpcyBnaXZlbiBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfZGVjb2Rlcl9m
aWd1cmUiLz4uCis8L3Q+Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiIGFuY2hvcj0ic2lsa19kZWNv
ZGVyX2ZpZ3VyZSIgdGl0bGU9IlNJTEsgRGVjb2RlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij4KKzwhW0NEQVRBWworICAgKy0tLS0tLS0tLSsgICAgKy0tLS0tLS0tLS0tLSsKKy0tPnwgUmFu
Z2UgICB8LS0tPnwgRGVjb2RlICAgICB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworIDEg
fCBEZWNvZGVyIHwgMiAgfCBQYXJhbWV0ZXJzIHwtLS0tLS0tLS0tKyAgICAgICA1ICAgICAgICB8
CisgICArLS0tLS0tLS0tKyAgICArLS0tLS0tLS0tLS0tKyAgICAgNCAgICB8ICAgICAgICAgICAg
ICAgIHwKKyAgICAgICAgICAgICAgICAgICAgICAgMyB8ICAgICAgICAgICAgICAgIHwgICAgICAg
ICAgICAgICAgfAorICAgICAgICAgICAgICAgICAgICAgICAgXC8gICAgICAgICAgICAgICBcLyAg
ICAgICAgICAgICAgIFwvCisgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tKyAgICstLS0t
LS0tLS0tLS0rICAgKy0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgICAgICAgIHwgR2VuZXJhdGUg
ICB8LS0+fCBMVFAgICAgICAgIHwtLT58IExQQyAgICAgICAgfAorICAgICAgICAgICAgICAgICAg
fCBFeGNpdGF0aW9uIHwgICB8IFN5bnRoZXNpcyAgfCAgIHwgU3ludGhlc2lzICB8CisgICAgICAg
ICAgICAgICAgICArLS0tLS0tLS0tLS0tKyAgICstLS0tLS0tLS0tLS0rICAgKy0tLS0tLS0tLS0t
LSsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4gICAgICAgICAg
ICAgICAgfAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAg
ICAgICAgICAgICB8CisgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0r
LS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA2CisgICAgICAgICAgICAgICAgICAgICAgfCAgICstLS0t
LS0tLS0tLS0rICAgKy0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICAgICAgICAgICAgKy0tPnwg
U3RlcmVvICAgICB8LS0+fCBTYW1wbGUgUmF0ZSB8LS0+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwgVW5taXhpbmcgICB8IDcgfCBDb252ZXJzaW9uICB8IDgKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgKy0tLS0tLS0tLS0tLSsgICArLS0tLS0tLS0tLS0tLSsKKworMTogUmFuZ2UgZW5j
b2RlZCBiaXRzdHJlYW0KKzI6IENvZGVkIHBhcmFtZXRlcnMKKzM6IFB1bHNlcywgTFNCcywgYW5k
IHNpZ25zCis0OiBQaXRjaCBsYWdzLCBMb25nLVRlcm0gUHJlZGljdGlvbiAoTFRQKSBjb2VmZmlj
aWVudHMKKzU6IExpbmVhciBQcmVkaWN0aXZlIENvZGluZyAoTFBDKSBjb2VmZmljaWVudHMgYW5k
IGdhaW5zCis2OiBEZWNvZGVkIHNpZ25hbCAobW9ubyBvciBtaWQtc2lkZSBzdGVyZW8pCis3OiBV
bm1peGVkIHNpZ25hbCAobW9ubyBvciBsZWZ0LXJpZ2h0IHN0ZXJlbykKKzg6IFJlc2FtcGxlZCBz
aWduYWwKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0PgorVGhlIGRlY29kZXIgZmVl
ZHMgdGhlIGJpdHN0cmVhbSAoMSkgdG8gdGhlIHJhbmdlIGRlY29kZXIgZnJvbQorIDx4cmVmIHRh
cmdldD0icmFuZ2UtZGVjb2RlciIvPiwgYW5kIHRoZW4gZGVjb2RlcyB0aGUgcGFyYW1ldGVycyBp
biBpdCAoMikKKyB1c2luZyB0aGUgcHJvY2VkdXJlcyBkZXRhaWxlZCBpbgorIFNlY3Rpb25zJm5i
c3A7PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfaGVhZGVyX2JpdHMiLz4KKyB0
aHJvdWdoJm5ic3A7PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfc2lnbnMiLz4u
CitUaGVzZSBwYXJhbWV0ZXJzICgzLCA0LCA1KSBhcmUgdXNlZCB0byBnZW5lcmF0ZSBhbiBleGNp
dGF0aW9uIHNpZ25hbCAoc2VlCisgPHhyZWYgdGFyZ2V0PSJzaWxrX2V4Y2l0YXRpb25fcmVjb25z
dHJ1Y3Rpb24iLz4pLCB3aGljaCBpcyBmZWQgdG8gYW4gb3B0aW9uYWwKKyBsb25nLXRlcm0gcHJl
ZGljdGlvbiAoTFRQKSBmaWx0ZXIgKHZvaWNlZCBmcmFtZXMgb25seSwgc2VlCisgPHhyZWYgdGFy
Z2V0PSJzaWxrX2x0cF9zeW50aGVzaXMiLz4pIGFuZCB0aGVuIGEgc2hvcnQtdGVybSBwcmVkaWN0
aW9uIGZpbHRlcgorIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2xwY19zeW50aGVzaXMiLz4pLCBw
cm9kdWNpbmcgdGhlIGRlY29kZWQgc2lnbmFsICg2KS4KK0ZvciBzdGVyZW8gc3RyZWFtcywgdGhl
IG1pZC1zaWRlIHJlcHJlc2VudGF0aW9uIGlzIGNvbnZlcnRlZCB0byBzZXBhcmF0ZSBsZWZ0Cisg
YW5kIHJpZ2h0IGNoYW5uZWxzICg3KS4KK1RoZSByZXN1bHQgaXMgZmluYWxseSByZXNhbXBsZWQg
dG8gdGhlIGRlc2lyZWQgb3V0cHV0IHNhbXBsZSByYXRlIChlLmcuLAorIDQ4Jm5ic3A7a0h6KSBz
byB0aGF0IHRoZSByZXNhbXBsZWQgc2lnbmFsICg4KSBjYW4gYmUgbWl4ZWQgd2l0aCB0aGUgQ0VM
VAorIGxheWVyLgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19s
YXllcl9vcmdhbml6YXRpb24iIHRpdGxlPSJMUCBMYXllciBPcmdhbml6YXRpb24iPgorCis8dD4K
K0ludGVybmFsbHksIHRoZSBMUCBsYXllciBvZiBhIHNpbmdsZSBPcHVzIGZyYW1lIGlzIGNvbXBv
c2VkIG9mIGVpdGhlciBhIHNpbmdsZQorIDEwJm5ic3A7bXMgcmVndWxhciBTSUxLIGZyYW1lIG9y
IGJldHdlZW4gb25lIGFuZCB0aHJlZSAyMCZuYnNwO21zIHJlZ3VsYXIgU0lMSworIGZyYW1lcy4K
K0Egc3RlcmVvIE9wdXMgZnJhbWUgbWF5IGRvdWJsZSB0aGUgbnVtYmVyIG9mIHJlZ3VsYXIgU0lM
SyBmcmFtZXMgKHVwIHRvIGEgdG90YWwKKyBvZiBzaXgpLCBzaW5jZSBpdCBpbmNsdWRlcyBzZXBh
cmF0ZSBmcmFtZXMgZm9yIGEgbWlkIGNoYW5uZWwgYW5kLCBvcHRpb25hbGx5LAorIGEgc2lkZSBj
aGFubmVsLgorT3B0aW9uYWwgTG93IEJpdC1SYXRlIFJlZHVuZGFuY3kgKExCUlIpIGZyYW1lcywg
d2hpY2ggYXJlIHJlZHVjZWQtYml0cmF0ZQorIGVuY29kaW5ncyBvZiBwcmV2aW91cyBTSUxLIGZy
YW1lcywgbWF5IGJlIGluY2x1ZGVkIHRvIGFpZCBpbiByZWNvdmVyeSBmcm9tCisgcGFja2V0IGxv
c3MuCitJZiBwcmVzZW50LCB0aGVzZSBhcHBlYXIgYmVmb3JlIHRoZSByZWd1bGFyIFNJTEsgZnJh
bWVzLgorVGhleSBhcmUgaW4gbW9zdCByZXNwZWN0cyBpZGVudGljYWwgdG8gcmVndWxhciwgYWN0
aXZlIFNJTEsgZnJhbWVzLCBleGNlcHQgdGhhdAorIHRoZXkgYXJlIHVzdWFsbHkgZW5jb2RlZCB3
aXRoIGEgbG93ZXIgYml0cmF0ZS4KK1RoaXMgZHJhZnQgdXNlcyAiU0lMSyBmcmFtZSIgdG8gcmVm
ZXIgdG8gZWl0aGVyIG9uZSBhbmQgInJlZ3VsYXIgU0lMSyBmcmFtZSIgaWYKKyBpdCBuZWVkcyB0
byBkcmF3IGEgZGlzdGluY3Rpb24gYmV0d2VlbiB0aGUgdHdvLgorPC90PgorPHQ+CitMb2dpY2Fs
bHksIGVhY2ggU0lMSyBmcmFtZSBpcyBpbiB0dXJuIGNvbXBvc2VkIG9mIGVpdGhlciB0d28gb3Ig
Zm91ciA1Jm5ic3A7bXMKKyBzdWJmcmFtZXMuCitWYXJpb3VzIHBhcmFtZXRlcnMsIHN1Y2ggYXMg
dGhlIHF1YW50aXphdGlvbiBnYWluIG9mIHRoZSBleGNpdGF0aW9uIGFuZCB0aGUKKyBwaXRjaCBs
YWcgYW5kIGZpbHRlciBjb2VmZmljaWVudHMgY2FuIHZhcnkgb24gYSBzdWJmcmFtZS1ieS1zdWJm
cmFtZSBiYXNpcy4KK1BoeXNpY2FsbHksIHRoZSBwYXJhbWV0ZXJzIGZvciBlYWNoIHN1YmZyYW1l
IGFyZSBpbnRlcmxlYXZlZCBpbiB0aGUgYml0c3RyZWFtLAorIGFzIGRlc2NyaWJlZCBpbiB0aGUg
cmVsZXZhbnQgc2VjdGlvbnMgZm9yIGVhY2ggcGFyYW1ldGVyLgorPC90PgorPHQ+CitBbGwgb2Yg
dGhlc2UgZnJhbWVzIGFuZCBzdWJmcmFtZXMgYXJlIGRlY29kZWQgZnJvbSB0aGUgc2FtZSByYW5n
ZSBjb2Rlciwgd2l0aAorIG5vIHBhZGRpbmcgYmV0d2VlbiB0aGVtLgorVGh1cyBwYWNraW5nIG11
bHRpcGxlIFNJTEsgZnJhbWVzIGluIGEgc2luZ2xlIE9wdXMgZnJhbWUgc2F2ZXMsIG9uIGF2ZXJh
Z2UsCisgaGFsZiBhIGJ5dGUgcGVyIFNJTEsgZnJhbWUuCitJdCBhbHNvIGFsbG93cyBzb21lIHBh
cmFtZXRlcnMgdG8gYmUgcHJlZGljdGVkIGZyb20gcHJpb3IgU0lMSyBmcmFtZXMgaW4gdGhlCisg
c2FtZSBPcHVzIGZyYW1lLCBzaW5jZSB0aGlzIGRvZXMgbm90IGRlZ3JhZGUgcGFja2V0IGxvc3Mg
cm9idXN0bmVzcyAoYmV5b25kCisgYW55IHBlbmFsdHkgZm9yIG1lcmVseSB1c2luZyBmZXdlciwg
bGFyZ2VyIHBhY2tldHMgdG8gc3RvcmUgbXVsdGlwbGUgZnJhbWVzKS4KKzwvdD4KKworPHQ+CitT
dGVyZW8gc3VwcG9ydCBpbiBTSUxLIHVzZXMgYSB2YXJpYW50IG9mIG1pZC1zaWRlIGNvZGluZywg
YWxsb3dpbmcgYSBtb25vCisgZGVjb2RlciB0byBzaW1wbHkgZGVjb2RlIHRoZSBtaWQgY2hhbm5l
bC4KK0hvd2V2ZXIsIHRoZSBkYXRhIGZvciB0aGUgdHdvIGNoYW5uZWxzIGlzIGludGVybGVhdmVk
LCBzbyBhIG1vbm8gZGVjb2RlciBtdXN0Cisgc3RpbGwgdW5wYWNrIHRoZSBkYXRhIGZvciB0aGUg
c2lkZSBjaGFubmVsLgorSXQgd291bGQgYmUgcmVxdWlyZWQgdG8gZG8gc28gYW55d2F5IGZvciBI
eWJyaWQgT3B1cyBmcmFtZXMsIG9yIHRvIHN1cHBvcnQKKyBkZWNvZGluZyBpbmRpdmlkdWFsIDIw
Jm5ic3A7bXMgZnJhbWVzLgorPC90PgorCis8dD4KKzx4cmVmIHRhcmdldD0ic2lsa19zeW1ib2xz
Ii8+IHN1bW1hcml6ZXMgdGhlIG92ZXJhbGwgZ3JvdXBpbmcgb2YgdGhlIGNvbnRlbnRzIG9mCisg
dGhlIExQIGxheWVyLgorRmlndXJlcyZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0
PSJzaWxrX21vbm9fNjBtc19mcmFtZSIvPgorIGFuZCZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRl
ciIgdGFyZ2V0PSJzaWxrX3N0ZXJlb182MG1zX2ZyYW1lIi8+IGlsbHVzdHJhdGUKKyB0aGUgb3Jk
ZXJpbmcgb2YgdGhlIHZhcmlvdXMgU0lMSyBmcmFtZXMgZm9yIGEgNjAmbmJzcDttcyBPcHVzIGZy
YW1lLCBmb3IgYm90aAorIG1vbm8gYW5kIHN0ZXJlbywgcmVzcGVjdGl2ZWx5LgorPC90PgorCis8
dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19zeW1ib2xzIgorIHRpdGxlPSJPcmdhbml6YXRpb24gb2Yg
dGhlIFNJTEsgbGF5ZXIgb2YgYW4gT3B1cyBmcmFtZSI+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+
U3ltYm9sKHMpPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0iY2VudGVyIj5QREYocyk8L3R0Y29sPgor
PHR0Y29sIGFsaWduPSJjZW50ZXIiPkNvbmRpdGlvbjwvdHRjb2w+CisKKzxjPlZvaWNlIEFjdGl2
aXR5IERldGVjdGlvbiAoVkFEKSBmbGFnczwvYz4KKzxjPnsxLCAxfS8yPC9jPgorPGMvPgorCis8
Yz5MQlJSIGZsYWc8L2M+Cis8Yz57MSwgMX0vMjwvYz4KKzxjLz4KKworPGM+UGVyLWZyYW1lIExC
UlIgZmxhZ3M8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbGJycl9mbGFnX3BkZnMiLz48L2M+
Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbGJycl9mbGFncyIvPjwvYz4KKworPGM+TEJSUiBGcmFt
ZShzKTwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19mcmFtZSIvPjwvYz4KKzxjPjx4cmVmIHRh
cmdldD0ic2lsa19sYnJyX2ZsYWdzIi8+PC9jPgorCis8Yz5SZWd1bGFyIFNJTEsgRnJhbWUocyk8
L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWUiLz48L2M+Cis8Yy8+CisKKzwvdGV4dHRh
YmxlPgorCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiIGFuY2hvcj0ic2lsa19tb25vXzYwbXNfZnJh
bWUiCisgdGl0bGU9IkEgNjAmbmJzcDttcyBNb25vIEZyYW1lIj4KKzxhcnR3b3JrIGFsaWduPSJj
ZW50ZXIiPjwhW0NEQVRBWworKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wg
ICAgICAgICAgICBWQUQgRmxhZ3MgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tKworfCAgICAgICAgICAgIExCUlIgRmxhZyAgICAgICAgICAgIHwKKystLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IFBlci1GcmFtZSBMQlJSIEZsYWdzIChP
cHRpb25hbCkgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgIExC
UlIgRnJhbWUgMSAoT3B0aW9uYWwpICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tKworfCAgICAgTEJSUiBGcmFtZSAyIChPcHRpb25hbCkgICAgIHwKKystLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICBMQlJSIEZyYW1lIDMgKE9wdGlvbmFsKSAg
ICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgICBSZWd1bGFy
IFNJTEsgRnJhbWUgMSAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
KworfCAgICAgIFJlZ3VsYXIgU0lMSyBGcmFtZSAyICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAgUmVndWxhciBTSUxLIEZyYW1lIDMgICAgICAgfAor
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK11dPjwvYXJ0d29yaz4KKzwvZmln
dXJlPgorCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiIGFuY2hvcj0ic2lsa19zdGVyZW9fNjBtc19m
cmFtZSIKKyB0aXRsZT0iQSA2MCZuYnNwO21zIFN0ZXJlbyBGcmFtZSI+Cis8YXJ0d29yayBhbGln
bj0iY2VudGVyIj48IVtDREFUQVsKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0rCit8ICAgICAgICAgICAgIE1pZCBWQUQgRmxhZ3MgICAgICAgICAgICAgfAorKy0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgICAgICAgICAgTWlkIExC
UlIgRmxhZyAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tKworfCAgICAgICAgICAgICBTaWRlIFZBRCBGbGFncyAgICAgICAgICAgIHwKKystLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAgICAgICAgIFNpZGUg
TEJSUiBGbGFnICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSsKK3wgIE1pZCBQZXItRnJhbWUgTEJSUiBGbGFncyAoT3B0aW9uYWwpICB8CisrLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBTaWRlIFBlci1GcmFtZSBM
QlJSIEZsYWdzIChPcHRpb25hbCkgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0rCit8ICAgICBNaWQgTEJSUiBGcmFtZSAxIChPcHRpb25hbCkgICAgICAgfAorKy0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgIFNpZGUgTEJSUiBG
cmFtZSAxIChPcHRpb25hbCkgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tKworfCAgICAgTWlkIExCUlIgRnJhbWUgMiAoT3B0aW9uYWwpICAgICAgIHwKKyst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICBTaWRlIExCUlIg
RnJhbWUgMiAoT3B0aW9uYWwpICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLSsKK3wgICAgIE1pZCBMQlJSIEZyYW1lIDMgKE9wdGlvbmFsKSAgICAgICB8Cisr
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgU2lkZSBMQlJS
IEZyYW1lIDMgKE9wdGlvbmFsKSAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0rCit8ICAgICAgTWlkIFJlZ3VsYXIgU0lMSyBGcmFtZSAxICAgICAgICAgfAor
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgU2lkZSBSZWd1bGFy
IFNJTEsgRnJhbWUgMSAoT3B0aW9uYWwpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tKworfCAgICAgIE1pZCBSZWd1bGFyIFNJTEsgRnJhbWUgMiAgICAgICAgIHwK
KystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IFNpZGUgUmVndWxh
ciBTSUxLIEZyYW1lIDIgKE9wdGlvbmFsKSAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSsKK3wgICAgICBNaWQgUmVndWxhciBTSUxLIEZyYW1lIDMgICAgICAgICB8
CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBTaWRlIFJlZ3Vs
YXIgU0lMSyBGcmFtZSAzIChPcHRpb25hbCkgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiBhbmNob3I9InNpbGtfaGVhZGVyX2JpdHMiIHRpdGxlPSJIZWFkZXIgQml0cyI+
Cis8dD4KK1RoZSBMUCBsYXllciBiZWdpbnMgd2l0aCB0d28gdG8gZWlnaHQgaGVhZGVyIGJpdHMs
IGRlY29kZWQgaW4gc2lsa19EZWNvZGUoKQorIChkZWNfQVBJLmMpLgorVGhlc2UgY29uc2lzdCBv
ZiBvbmUgVm9pY2UgQWN0aXZpdHkgRGV0ZWN0aW9uIChWQUQpIGJpdCBwZXIgZnJhbWUgKHVwIHRv
IDMpLAorIGZvbGxvd2VkIGJ5IGEgc2luZ2xlIGZsYWcgaW5kaWNhdGluZyB0aGUgcHJlc2VuY2Ug
b2YgTEJSUiBmcmFtZXMuCitGb3IgYSBzdGVyZW8gcGFja2V0LCB0aGVzZSBmaXJzdCBmbGFncyBj
b3JyZXNwb25kIHRvIHRoZSBtaWQgY2hhbm5lbCwgYW5kIGEKKyBzZWNvbmQgc2V0IG9mIGZsYWdz
IGlzIGluY2x1ZGVkIGZvciB0aGUgc2lkZSBjaGFubmVsLgorPC90PgorPHQ+CitCZWNhdXNlIHRo
ZXNlIGFyZSB0aGUgZmlyc3Qgc3ltYm9scyBkZWNvZGVkIGJ5IHRoZSByYW5nZSBjb2RlciBhbmQg
YmVjYXVzZSB0aGV5CisgYXJlIGNvZGVkIGFzIGJpbmFyeSB2YWx1ZXMgd2l0aCB1bmlmb3JtIHBy
b2JhYmlsaXR5LCB0aGV5IGNhbiBiZSBleHRyYWN0ZWQKKyBkaXJlY3RseSBmcm9tIHRoZSBtb3N0
IHNpZ25pZmljYW50IGJpdHMgb2YgdGhlIGZpcnN0IGJ5dGUgb2YgY29tcHJlc3NlZCBkYXRhLgor
VGh1cywgYSByZWNlaXZlciBjYW4gZGV0ZXJtaW5lIGlmIGFuIE9wdXMgZnJhbWUgY29udGFpbnMg
YW55IGFjdGl2ZSBTSUxLIGZyYW1lcworIHdpdGhvdXQgdGhlIG92ZXJoZWFkIG9mIHVzaW5nIHRo
ZSByYW5nZSBkZWNvZGVyLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNp
bGtfbGJycl9mbGFncyIgdGl0bGU9IlBlci1GcmFtZSBMQlJSIEZsYWdzIj4KKzx0PgorRm9yIE9w
dXMgZnJhbWVzIGxvbmdlciB0aGFuIDIwJm5ic3A7bXMsIGEgc2V0IG9mIExCUlIgZmxhZ3MgaXMK
KyBkZWNvZGVkIGZvciBlYWNoIGNoYW5uZWwgdGhhdCBoYXMgaXRzIExCUlIgZmxhZyBzZXQuCitF
YWNoIHNldCBjb250YWlucyBvbmUgZmxhZyBwZXIgMjAmbmJzcDttcyBTSUxLIGZyYW1lLgorNDAm
bmJzcDttcyBPcHVzIGZyYW1lcyB1c2UgdGhlIDItZnJhbWUgTEJSUiBmbGFnIFBERiBmcm9tCisg
PHhyZWYgdGFyZ2V0PSJzaWxrX2xicnJfZmxhZ19wZGZzIi8+LCBhbmQgNjAmbmJzcDttcyBPcHVz
IGZyYW1lcyB1c2UgdGhlCisgMy1mcmFtZSBMQlJSIGZsYWcgUERGLgorRm9yIGVhY2ggY2hhbm5l
bCwgdGhlIHJlc3VsdGluZyAyLSBvciAzLWJpdCBpbnRlZ2VyIGNvbnRhaW5zIHRoZSBjb3JyZXNw
b25kaW5nCisgTEJSUiBmbGFnIGZvciBlYWNoIGZyYW1lLCBwYWNrZWQgaW4gb3JkZXIgZnJvbSB0
aGUgTFNCIHRvIHRoZSBNU0IuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX2xicnJf
ZmxhZ19wZGZzIiB0aXRsZT0iTEJSUiBGbGFnIFBERnMiPgorPHR0Y29sPkZyYW1lIFNpemU8L3R0
Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz40MCZuYnNwO21zPC9jPiA8Yz57MCwgNTMsIDUz
LCAxNTB9LzI1NjwvYz4KKzxjPjYwJm5ic3A7bXM8L2M+IDxjPnswLCA0MSwgMjAsIDI5LCA0MSwg
MTUsIDI4LCA4Mn0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorQSAxMCZuYnNwO29yIDIw
Jm5ic3A7bXMgT3B1cyBmcmFtZSBkb2VzIG5vdCBjb250YWluIGFueSBwZXItZnJhbWUgTEJSUiBm
bGFncywKKyBhcyB0aGVyZSBtYXkgYmUgYXQgbW9zdCBvbmUgTEJSUiBmcmFtZSBwZXIgY2hhbm5l
bC4KK1RoZSBnbG9iYWwgTEJSUiBmbGFnIGluIHRoZSBoZWFkZXIgYml0cyAoc2VlIDx4cmVmIHRh
cmdldD0ic2lsa19oZWFkZXJfYml0cyIvPikKKyBpcyBhbHJlYWR5IHN1ZmZpY2llbnQgdG8gaW5k
aWNhdGUgdGhlIHByZXNlbmNlIG9mIHRoYXQgc2luZ2xlIExCUlIgZnJhbWUuCis8L3Q+CisKKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2xicnJfZnJhbWVzIiB0aXRsZT0iTEJS
UiBGcmFtZXMiPgorPHQ+CitUaGUgTEJSUiBmcmFtZXMsIGlmIHByZXNlbnQsIGNvbnRhaW4gYW4g
ZW5jb2RlZCByZXByZXNlbnRhdGlvbiBvZiB0aGUgc2lnbmFsCisgaW1tZWRpYXRlbHkgcHJpb3Ig
dG8gdGhlIGN1cnJlbnQgT3B1cyBmcmFtZSBhcyBpZiBpdCB3ZXJlIGVuY29kZWQgd2l0aCB0aGUK
KyBjdXJyZW50IG1vZGUsIGZyYW1lIHNpemUsIGF1ZGlvIGJhbmR3aWR0aCwgYW5kIGNoYW5uZWwg
Y291bnQsIGV2ZW4gaWYgdGhvc2UKKyBkaWZmZXIgZnJvbSB0aGUgcHJpb3IgT3B1cyBmcmFtZS4K
K1doZW4gb25lIG9mIHRoZXNlIHBhcmFtZXRlcnMgY2hhbmdlcyBmcm9tIG9uZSBPcHVzIGZyYW1l
IHRvIHRoZSBuZXh0LCB0aGlzCisgaW1wbGllcyB0aGF0IHRoZSBMQlJSIGZyYW1lcyBvZiB0aGUg
Y3VycmVudCBPcHVzIGZyYW1lIG1heSBub3QgYmUgc2ltcGxlCisgZHJvcC1pbiByZXBsYWNlbWVu
dHMgZm9yIHRoZSBjb250ZW50cyBvZiB0aGUgcHJldmlvdXMgT3B1cyBmcmFtZS4KKzwvdD4KKwor
PHQ+CitGb3IgZXhhbXBsZSwgd2hlbiBzd2l0Y2hpbmcgZnJvbSAyMCZuYnNwO21zIHRvIDYwJm5i
c3A7bXMsIHRoZSA2MCZuYnNwO21zIE9wdXMKKyBmcmFtZSBtYXkgY29udGFpbiBMQlJSIGZyYW1l
cyBjb3ZlcmluZyB1cCB0byB0aHJlZSBwcmlvciAyMCZuYnNwO21zIE9wdXMKKyBmcmFtZXMsIGV2
ZW4gaWYgdGhvc2UgZnJhbWVzIGFscmVhZHkgY29udGFpbmVkIExCUlIgZnJhbWVzIGNvdmVyaW5n
IHNvbWUgb2YKKyB0aGUgc2FtZSB0aW1lIHBlcmlvZHMuCitXaGVuIHN3aXRjaGluZyBmcm9tIDIw
Jm5ic3A7bXMgdG8gMTAmbmJzcDttcywgdGhlIDEwJm5ic3A7bXMgT3B1cyBmcmFtZSBjYW4KKyBj
b250YWluIGFuIExCUlIgZnJhbWUgY292ZXJpbmcgYXQgbW9zdCBoYWxmIHRoZSBwcmlvciAyMCZu
YnNwO21zIE9wdXMgZnJhbWUsCisgcG90ZW50aWFsbHkgbGVhdmluZyBhIGhvbGUgdGhhdCBuZWVk
cyB0byBiZSBjb25jZWFsZWQgZnJvbSBldmVuIGEgc2luZ2xlCisgcGFja2V0IGxvc3MgKHNlZSA8
eHJlZiB0YXJnZXQ9IlBhY2tldCBMb3NzIENvbmNlYWxtZW50Ii8+KS4KK1doZW4gc3dpdGNoaW5n
IGZyb20gbW9ubyB0byBzdGVyZW8sIHRoZSBMQlJSIGZyYW1lcyBpbiB0aGUgZmlyc3Qgc3RlcmVv
IE9wdXMKKyBmcmFtZSBNQVkgY29udGFpbiBhIG5vbi10cml2aWFsIHNpZGUgY2hhbm5lbC4KKzwv
dD4KKworPHQ+CitJbiBvcmRlciB0byBwcm9wZXJseSBwcm9kdWNlIExCUlIgZnJhbWVzIHVuZGVy
IGFsbCBjb25kaXRpb25zLCBhbiBlbmNvZGVyIG1pZ2h0CisgbmVlZCB0byBidWZmZXIgdXAgdG8g
NjAmbmJzcDttcyBvZiBhdWRpbyBhbmQgcmUtZW5jb2RlIGl0IGR1cmluZyB0aGVzZQorIHRyYW5z
aXRpb25zLgorSG93ZXZlciwgdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBvcHRzIHRvIGRp
c2FibGUgTEJSUiBmcmFtZXMgYXQgdGhlCisgdHJhbnNpdGlvbiBwb2ludCBmb3Igc2ltcGxpY2l0
eS4KK1NpbmNlIHRyYW5zaXRpb25zIGFyZSByZWxhdGl2ZWx5IGluZnJlcXVlbnQgaW4gbm9ybWFs
IHVzYWdlLCB0aGlzIGRvZXMgbm90IGhhdmUKKyBhIHNpZ25pZmljYW50IGltcGFjdCBvbiBwYWNr
ZXQgbG9zcyByb2J1c3RuZXNzLgorPC90PgorCis8dD4KK1RoZSBMQlJSIGZyYW1lcyBpbW1lZGlh
dGVseSBmb2xsb3cgdGhlIExCUlIgZmxhZ3MsIHByaW9yIHRvIGFueSByZWd1bGFyIFNJTEsKKyBm
cmFtZXMuCis8eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWUiLz4gZGVzY3JpYmVzIHRoZWlyIGV4YWN0
IGNvbnRlbnRzLgorTEJSUiBmcmFtZXMgZG8gbm90IGluY2x1ZGUgdGhlaXIgb3duIHNlcGFyYXRl
IFZBRCBmbGFncy4KK0xCUlIgZnJhbWVzIGFyZSBvbmx5IG1lYW50IHRvIGJlIHRyYW5zbWl0dGVk
IGZvciBhY3RpdmUgc3BlZWNoLCB0aHVzIGFsbCBMQlJSCisgZnJhbWVzIGFyZSB0cmVhdGVkIGFz
IGFjdGl2ZS4KKzwvdD4KKworPHQ+CitJbiBhIHN0ZXJlbyBPcHVzIGZyYW1lIGxvbmdlciB0aGFu
IDIwJm5ic3A7bXMsIGFsdGhvdWdoIHRoZSBwZXItZnJhbWUgTEJSUgorIGZsYWdzIGZvciB0aGUg
bWlkIGNoYW5uZWwgYXJlIGNvZGVkIGFzIGEgdW5pdCBiZWZvcmUgdGhlIHBlci1mcmFtZSBMQlJS
IGZsYWdzCisgZm9yIHRoZSBzaWRlIGNoYW5uZWwsIHRoZSBMQlJSIGZyYW1lcyB0aGVtc2VsdmVz
IGFyZSBpbnRlcmxlYXZlZC4KK1RoZSBkZWNvZGVyIHBhcnNlcyBhbiBMQlJSIGZyYW1lIGZvciB0
aGUgbWlkIGNoYW5uZWwgb2YgYSBnaXZlbiAyMCZuYnNwO21zCisgaW50ZXJ2YWwgKGlmIHByZXNl
bnQpIGFuZCB0aGVuIGltbWVkaWF0ZWx5IHBhcnNlcyB0aGUgY29ycmVzcG9uZGluZyBMQlJSCisg
ZnJhbWUgZm9yIHRoZSBzaWRlIGNoYW5uZWwgKGlmIHByZXNlbnQpLCBiZWZvcmUgcHJvY2VlZGlu
ZyB0byB0aGUgbmV4dAorIDIwJm5ic3A7bXMgaW50ZXJ2YWwuCis8L3Q+Cis8L3NlY3Rpb24+CisK
KzxzZWN0aW9uIGFuY2hvcj0ic2lsa19yZWd1bGFyX2ZyYW1lcyIgdGl0bGU9IlJlZ3VsYXIgU0lM
SyBGcmFtZXMiPgorPHQ+CitUaGUgcmVndWxhciBTSUxLIGZyYW1lKHMpIGZvbGxvdyB0aGUgTEJS
UiBmcmFtZXMgKGlmIGFueSkuCis8eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWUiLz4gZGVzY3JpYmVz
IHRoZWlyIGNvbnRlbnRzLCBhcyB3ZWxsLgorVW5saWtlIHRoZSBMQlJSIGZyYW1lcywgYSByZWd1
bGFyIFNJTEsgZnJhbWUgaXMgY29kZWQgZm9yIGVhY2ggdGltZSBpbnRlcnZhbCBpbgorIGFuIE9w
dXMgZnJhbWUsIGV2ZW4gaWYgdGhlIGNvcnJlc3BvbmRpbmcgVkFEIGZsYWdzIGFyZSB1bnNldC4K
K0ZvciBzdGVyZW8gT3B1cyBmcmFtZXMgbG9uZ2VyIHRoYW4gMjAmbmJzcDttcywgdGhlIHJlZ3Vs
YXIgbWlkIGFuZCBzaWRlIFNJTEsKKyBmcmFtZXMgZm9yIGVhY2ggMjAmbmJzcDttcyBpbnRlcnZh
bCBhcmUgaW50ZXJsZWF2ZWQsIGp1c3QgYXMgd2l0aCB0aGUgTEJSUgorIGZyYW1lcy4KK1RoZSBz
aWRlIGZyYW1lIG1heSBiZSBza2lwcGVkIGJ5IGNvZGluZyBhbiBhcHByb3ByaWF0ZSBmbGFnLCBh
cyBkZXRhaWxlZCBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19taWRfb25seV9mbGFnIi8+LgorPC90
PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfZnJhbWUiIHRpdGxlPSJTSUxL
IEZyYW1lIENvbnRlbnRzIj4KKzx0PgorRWFjaCBTSUxLIGZyYW1lIGluY2x1ZGVzIGEgc2V0IG9m
IHNpZGUgaW5mb3JtYXRpb24gdGhhdCBlbmNvZGVzCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8
dD5UaGUgZnJhbWUgdHlwZSBhbmQgcXVhbnRpemF0aW9uIHR5cGUgKDx4cmVmIHRhcmdldD0ic2ls
a19mcmFtZV90eXBlIi8+KSw8L3Q+Cis8dD5RdWFudGl6YXRpb24gZ2FpbnMgKDx4cmVmIHRhcmdl
dD0ic2lsa19nYWlucyIvPiksPC90PgorPHQ+U2hvcnQtdGVybSBwcmVkaWN0aW9uIGZpbHRlciBj
b2VmZmljaWVudHMgKDx4cmVmIHRhcmdldD0ic2lsa19ubHNmcyIvPiksPC90PgorPHQ+QSBMaW5l
IFNwZWN0cmFsIEZyZXF1ZW5jaWVzIChMU0YpIGludGVycG9sYXRpb24gd2VpZ2h0ICg8eHJlZiB0
YXJnZXQ9InNpbGtfbmxzZl9pbnRlcnBvbGF0aW9uIi8+KSw8L3Q+Cis8dD4KK0xvbmctdGVybSBw
cmVkaWN0aW9uIGZpbHRlciBsYWdzIGFuZCBnYWlucyAoPHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9w
YXJhbXMiLz4pLAorIGFuZAorPC90PgorPHQ+QSBsaW5lYXIgY29uZ3J1ZW50aWFsIGdlbmVyYXRv
ciAoTENHKSBzZWVkICg8eHJlZiB0YXJnZXQ9InNpbGtfc2VlZCIvPikuPC90PgorPC9saXN0Pgor
VGhlIHF1YW50aXplZCBleGNpdGF0aW9uIHNpZ25hbCAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19l
eGNpdGF0aW9uIi8+KSBmb2xsb3dzCisgdGhlc2UgYXQgdGhlIGVuZCBvZiB0aGUgZnJhbWUuCis8
eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWVfc3ltYm9scyIvPiBkZXRhaWxzIHRoZSBvdmVyYWxsIG9y
Z2FuaXphdGlvbiBvZiBhCisgU0lMSyBmcmFtZS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9
InNpbGtfZnJhbWVfc3ltYm9scyIKKyB0aXRsZT0iT3JkZXIgb2YgdGhlIHN5bWJvbHMgaW4gYW4g
aW5kaXZpZHVhbCBTSUxLIGZyYW1lIj4KKzx0dGNvbCBhbGlnbj0iY2VudGVyIj5TeW1ib2wocyk8
L3R0Y29sPgorPHR0Y29sIGFsaWduPSJjZW50ZXIiPlBERihzKTwvdHRjb2w+Cis8dHRjb2wgYWxp
Z249ImNlbnRlciI+Q29uZGl0aW9uPC90dGNvbD4KKworPGM+U3RlcmVvIFByZWRpY3Rpb24gV2Vp
Z2h0czwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19zdGVyZW9fcHJlZF9wZGZzIi8+PC9jPgor
PGM+PHhyZWYgdGFyZ2V0PSJzaWxrX3N0ZXJlb19wcmVkIi8+PC9jPgorCis8Yz5NaWQtb25seSBG
bGFnPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX21pZF9vbmx5X3BkZiIvPjwvYz4KKzxjPjx4
cmVmIHRhcmdldD0ic2lsa19taWRfb25seV9mbGFnIi8+PC9jPgorCis8Yz5GcmFtZSBUeXBlPC9j
PgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz48L2M+Cis8Yy8+CisKKzxjPlN1
YmZyYW1lIEdhaW5zPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2dhaW5zIi8+PC9jPgorPGMv
PgorCis8Yz5Ob3JtYWxpemVkIExTRiBTdGFnZS0xIEluZGV4PC9jPgorPGM+PHhyZWYgdGFyZ2V0
PSJzaWxrX25sc2Zfc3RhZ2UxX3BkZnMiLz48L2M+Cis8Yy8+CisKKzxjPk5vcm1hbGl6ZWQgTFNG
IFN0YWdlLTIgUmVzaWR1YWw8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFnZTIi
Lz48L2M+Cis8Yy8+CisKKzxjPk5vcm1hbGl6ZWQgTFNGIEludGVycG9sYXRpb24gV2VpZ2h0PC9j
PgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfaW50ZXJwX3BkZiIvPjwvYz4KKzxjPjIwJm5i
c3A7bXMgZnJhbWU8L2M+CisKKzxjPlByaW1hcnkgUGl0Y2ggTGFnPC9jPgorPGM+PHhyZWYgdGFy
Z2V0PSJzaWxrX2x0cF9sYWdzIi8+PC9jPgorPGM+Vm9pY2VkIGZyYW1lPC9jPgorCis8Yz5TdWJm
cmFtZSBQaXRjaCBDb250b3VyPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX3BpdGNoX2NvbnRv
dXJfcGRmcyIvPjwvYz4KKzxjPlZvaWNlZCBmcmFtZTwvYz4KKworPGM+UGVyaW9kaWNpdHkgSW5k
ZXg8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfcGVyaW5kZXhfcGRmIi8+PC9jPgorPGM+Vm9p
Y2VkIGZyYW1lPC9jPgorCis8Yz5MVFAgRmlsdGVyPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxr
X2x0cF9maWx0ZXJfcGRmcyIvPjwvYz4KKzxjPlZvaWNlZCBmcmFtZTwvYz4KKworPGM+TFRQIFNj
YWxpbmc8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbHRwX3NjYWxpbmdfcGRmIi8+PC9jPgor
PGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9zY2FsaW5nIi8+PC9jPgorCis8Yz5MQ0cgU2VlZDwv
Yz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19zZWVkX3BkZiIvPjwvYz4KKzxjLz4KKworPGM+RXhj
aXRhdGlvbiBSYXRlIExldmVsPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX3JhdGVfbGV2ZWxf
cGRmcyIvPjwvYz4KKzxjLz4KKworPGM+RXhjaXRhdGlvbiBQdWxzZSBDb3VudHM8L2M+Cis8Yz48
eHJlZiB0YXJnZXQ9InNpbGtfcHVsc2VfY291bnRfcGRmcyIvPjwvYz4KKzxjLz4KKworPGM+RXhj
aXRhdGlvbiBQdWxzZSBMb2NhdGlvbnM8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfcHVsc2Vf
bG9jYXRpb25zIi8+PC9jPgorPGM+Tm9uLXplcm8gcHVsc2UgY291bnQ8L2M+CisKKzxjPkV4Y2l0
YXRpb24gTFNCczwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19zaGVsbF9sc2JfcGRmIi8+PC9j
PgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX3B1bHNlX2NvdW50cyIvPjwvYz4KKworPGM+RXhjaXRh
dGlvbiBTaWduczwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19zaWduX3BkZnMiLz48L2M+Cis8
Yy8+CisKKzwvdGV4dHRhYmxlPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfc3RlcmVvX3ByZWQi
IHRvYz0iaW5jbHVkZSIKKyB0aXRsZT0iU3RlcmVvIFByZWRpY3Rpb24gV2VpZ2h0cyI+Cis8dD4K
K0EgU0lMSyBmcmFtZSBjb3JyZXNwb25kaW5nIHRvIHRoZSBtaWQgY2hhbm5lbCBvZiBhIHN0ZXJl
byBPcHVzIGZyYW1lIGJlZ2lucworIHdpdGggYSBwYWlyIG9mIHNpZGUgY2hhbm5lbCBwcmVkaWN0
aW9uIHdlaWdodHMsIGRlc2lnbmVkIHN1Y2ggdGhhdCB6ZXJvcworIGluZGljYXRlIG5vcm1hbCBt
aWQtc2lkZSBjb3VwbGluZy4KK1NpbmNlIHRoZXNlIHdlaWdodHMgY2FuIGNoYW5nZSBvbiBldmVy
eSBmcmFtZSwgdGhlIGZpcnN0IHBvcnRpb24gb2YgZWFjaCBmcmFtZQorIGxpbmVhcmx5IGludGVy
cG9sYXRlcyBiZXR3ZWVuIHRoZSBwcmV2aW91cyB3ZWlnaHRzIGFuZCB0aGUgY3VycmVudCBvbmVz
LCB1c2luZworIHplcm9zIGZvciB0aGUgcHJldmlvdXMgd2VpZ2h0cyBpZiBub25lIGFyZSBhdmFp
bGFibGUuCitUaGVzZSBwcmVkaWN0aW9uIHdlaWdodHMgYXJlIG5ldmVyIGluY2x1ZGVkIGluIGEg
bW9ubyBPcHVzIGZyYW1lLCBhbmQgdGhlCisgcHJldmlvdXMgd2VpZ2h0cyBhcmUgcmVzZXQgdG8g
emVyb3Mgb24gYW55IHRyYW5zaXRpb24gZnJvbSBtb25vIHRvIHN0ZXJlby4KK1RoZXkgYXJlIGFs
c28gbm90IGluY2x1ZGVkIGluIGFuIExCUlIgZnJhbWUgZm9yIHRoZSBzaWRlIGNoYW5uZWwsIGV2
ZW4gaWYgdGhlCisgTEJSUiBmbGFncyBpbmRpY2F0ZSB0aGUgY29ycmVzcG9uZGluZyBtaWQgY2hh
bm5lbCB3YXMgbm90IGNvZGVkLgorSW4gdGhhdCBjYXNlLCB0aGUgcHJldmlvdXMgd2VpZ2h0cyBh
cmUgdXNlZCwgYWdhaW4gc3Vic3RpdHV0aW5nIGluIHplcm9zIGlmIG5vCisgcHJldmlvdXMgd2Vp
Z2h0cyBhcmUgYXZhaWxhYmxlIHNpbmNlIHRoZSBsYXN0IGRlY29kZXIgcmVzZXQKKyAoc2VlIDx4
cmVmIHRhcmdldD0iZGVjb2Rlci1yZXNldCIvPikuCis8L3Q+CisKKzx0PgorVG8gc3VtbWFyaXpl
LCB0aGVzZSB3ZWlnaHRzIGFyZSBjb2RlZCBpZiBhbmQgb25seSBpZgorPGxpc3Qgc3R5bGU9InN5
bWJvbHMiPgorPHQ+VGhpcyBpcyBhIHN0ZXJlbyBPcHVzIGZyYW1lICg8eHJlZiB0YXJnZXQ9InRv
Y19ieXRlIi8+KSwgYW5kPC90PgorPHQ+VGhlIGN1cnJlbnQgU0lMSyBmcmFtZSBjb3JyZXNwb25k
cyB0byB0aGUgbWlkIGNoYW5uZWwuPC90PgorPC9saXN0PgorPC90PgorCis8dD4KK1RoZSBwcmVk
aWN0aW9uIHdlaWdodHMgYXJlIGNvZGVkIGluIHRocmVlIHNlcGFyYXRlIHBpZWNlcywgd2hpY2gg
YXJlIGRlY29kZWQKKyBieSBzaWxrX3N0ZXJlb19kZWNvZGVfcHJlZCgpIChkZWNvZGVfc3RlcmVv
X3ByZWQuYykuCitUaGUgZmlyc3QgcGllY2Ugam9pbnRseSBjb2RlcyB0aGUgaGlnaC1vcmRlciBw
YXJ0IG9mIGEgdGFibGUgaW5kZXggZm9yIGJvdGgKKyB3ZWlnaHRzLgorVGhlIHNlY29uZCBwaWVj
ZSBjb2RlcyB0aGUgbG93LW9yZGVyIHBhcnQgb2YgZWFjaCB0YWJsZSBpbmRleC4KK1RoZSB0aGly
ZCBwaWVjZSBjb2RlcyBhbiBvZmZzZXQgdXNlZCB0byBsaW5lYXJseSBpbnRlcnBvbGF0ZSBiZXR3
ZWVuIHRhYmxlCisgaW5kaWNlcy4KK1RoZSBkZXRhaWxzIGFyZSBhcyBmb2xsb3dzLgorPC90Pgor
Cis8dD4KK0xldCBuIGJlIGFuIGluZGV4IGRlY29kZWQgd2l0aCB0aGUgMjUtZWxlbWVudCBzdGFn
ZS0xIFBERiBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19zdGVyZW9fcHJlZF9wZGZzIi8+LgorVGhl
biBsZXQgaTAgYW5kIGkxIGJlIGluZGljZXMgZGVjb2RlZCB3aXRoIHRoZSBzdGFnZS0yIGFuZCBz
dGFnZS0zIFBERnMgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtfc3RlcmVvX3ByZWRfcGRmcyIvPiwg
cmVzcGVjdGl2ZWx5LCBhbmQgbGV0IGkyIGFuZCBpMworIGJlIHR3byBtb3JlIGluZGljZXMgZGVj
b2RlZCB3aXRoIHRoZSBzdGFnZS0yIGFuZCBzdGFnZS0zIFBERnMsIGFsbCBpbiB0aGF0Cisgb3Jk
ZXIuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3N0ZXJlb19wcmVkX3BkZnMiIHRp
dGxlPSJTdGVyZW8gV2VpZ2h0IFBERnMiPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5TdGFnZTwvdHRj
b2w+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz5TdGFnZSAxPC9jPgorPGM+
ezcsICAyLCAgMSwgIDEsICAxLAorICAgMTAsIDI0LCAgOCwgIDEsICAxLAorICAgIDMsIDIzLCA5
MiwgMjMsICAzLAorICAgIDEsICAxLCAgOCwgMjQsIDEwLAorICAgIDEsICAxLCAgMSwgIDIsICA3
fS8yNTY8L2M+CisKKzxjPlN0YWdlIDI8L2M+Cis8Yz57ODUsIDg2LCA4NX0vMjU2PC9jPgorCis8
Yz5TdGFnZSAzPC9jPgorPGM+ezUxLCA1MSwgNTIsIDUxLCA1MX0vMjU2PC9jPgorPC90ZXh0dGFi
bGU+CisKKzx0PgorVGhlbiB1c2UgbiwgaTAsIGFuZCBpMiB0byBmb3JtIHR3byB0YWJsZSBpbmRp
Y2VzLCB3aTAgYW5kIHdpMSwgYWNjb3JkaW5nIHRvCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCit3aTAgPSBpMCArIDMqKG4vNSkKK3dp
MSA9IGkyICsgMyoobiU1KQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cisgd2hlcmUgdGhlIGRp
dmlzaW9uIGlzIGludGVnZXIgZGl2aXNpb24uCitUaGUgcmFuZ2Ugb2YgdGhlc2UgaW5kaWNlcyBp
cyAwIHRvIDE0LCBpbmNsdXNpdmUuCitMZXQgd1tpXSBiZSB0aGUgaSd0aCB3ZWlnaHQgZnJvbSA8
eHJlZiB0YXJnZXQ9InNpbGtfc3RlcmVvX3dlaWdodHNfdGFibGUiLz4uCitUaGVuIHRoZSB0d28g
cHJlZGljdGlvbiB3ZWlnaHRzLCB3MF9RMTMgYW5kIHcxX1ExMywgYXJlCis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCit3MV9RMTMgPSB3
X1ExM1t3aTFdCisgICAgICAgICArICgod19RMTNbd2kxKzFdIC0gd19RMTNbd2kxXSkqNjU1NCkg
Pj4gMTYpKigyKmkzICsgMSkKKwordzBfUTEzID0gd19RMTNbd2kwXQorICAgICAgICAgKyAoKHdf
UTEzW3dpMCsxXSAtIHdfUTEzW3dpMF0pKjY1NTQpID4+IDE2KSooMippMSArIDEpCisgICAgICAg
ICAtIHcxX1ExMworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitOLmIuLCB3MV9RMTMgaXMgY29t
cHV0ZWQgZmlyc3QgaGVyZSwgYmVjYXVzZSB3MF9RMTMgZGVwZW5kcyBvbiBpdC4KK1RoZSBjb25z
dGFudCA2NTU0IGlzIGFwcHJveGltYXRlbHkgMC4xIGluIFExNi4KK0FsdGhvdWdoIHdpMCBhbmQg
d2kxIG9ubHkgaGF2ZSAxNSBwb3NzaWJsZSB2YWx1ZXMsCisgPHhyZWYgdGFyZ2V0PSJzaWxrX3N0
ZXJlb193ZWlnaHRzX3RhYmxlIi8+IGNvbnRhaW5zIDE2IGVudHJpZXMgdG8gYWxsb3cKKyBpbnRl
cnBvbGF0aW9uIGJldHdlZW4gZW50cnkgd2kwIGFuZCAod2kwJm5ic3A7KyZuYnNwOzEpIChhbmQg
bGlrZXdpc2UgZm9yIHdpMSkuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3N0ZXJl
b193ZWlnaHRzX3RhYmxlIgorIHRpdGxlPSJTdGVyZW8gV2VpZ2h0IFRhYmxlIj4KKzx0dGNvbCBh
bGlnbj0ibGVmdCI+SW5kZXg8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+V2VpZ2h0IChR
MTMpPC90dGNvbD4KKyA8Yz4wPC9jPiA8Yz4tMTM3MzI8L2M+CisgPGM+MTwvYz4gPGM+LTEwMDUw
PC9jPgorIDxjPjI8L2M+ICA8Yz4tODI2NjwvYz4KKyA8Yz4zPC9jPiAgPGM+LTc1MjY8L2M+Cisg
PGM+NDwvYz4gIDxjPi02NTAwPC9jPgorIDxjPjU8L2M+ICA8Yz4tNTAwMDwvYz4KKyA8Yz42PC9j
PiAgPGM+LTI5NTA8L2M+CisgPGM+NzwvYz4gICA8Yz4tODIwPC9jPgorIDxjPjg8L2M+ICAgIDxj
PjgyMDwvYz4KKyA8Yz45PC9jPiAgIDxjPjI5NTA8L2M+Cis8Yz4xMDwvYz4gICA8Yz41MDAwPC9j
PgorPGM+MTE8L2M+ICAgPGM+NjUwMDwvYz4KKzxjPjEyPC9jPiAgIDxjPjc1MjY8L2M+Cis8Yz4x
MzwvYz4gICA8Yz44MjY2PC9jPgorPGM+MTQ8L2M+ICA8Yz4xMDA1MDwvYz4KKzxjPjE1PC9jPiAg
PGM+MTM3MzI8L2M+Cis8L3RleHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9InNpbGtfbWlkX29ubHlfZmxhZyIgdG9jPSJpbmNsdWRlIiB0aXRsZT0iTWlkLW9ubHkgRmxh
ZyI+Cis8dD4KK0EgZmxhZyBhcHBlYXJzIGFmdGVyIHRoZSBzdGVyZW8gcHJlZGljdGlvbiB3ZWln
aHRzIHRoYXQgaW5kaWNhdGVzIGlmIG9ubHkgdGhlCisgbWlkIGNoYW5uZWwgaXMgY29kZWQgZm9y
IHRoaXMgdGltZSBpbnRlcnZhbC4KK0l0IGFwcGVhcnMgb25seSB3aGVuCis8bGlzdCBzdHlsZT0i
c3ltYm9scyI+Cis8dD5UaGlzIGlzIGEgc3RlcmVvIE9wdXMgZnJhbWUgKHNlZSA8eHJlZiB0YXJn
ZXQ9InRvY19ieXRlIi8+KSw8L3Q+Cis8dD5UaGUgY3VycmVudCBTSUxLIGZyYW1lIGNvcnJlc3Bv
bmRzIHRvIHRoZSBtaWQgY2hhbm5lbCwgYW5kPC90PgorPHQ+RWl0aGVyCis8bGlzdCBzdHlsZT0i
c3ltYm9scyI+Cis8dD5UaGlzIGlzIGEgcmVndWxhciBTSUxLIGZyYW1lIHdoZXJlIHRoZSBWQUQg
ZmxhZ3MKKyAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19oZWFkZXJfYml0cyIvPikgaW5kaWNhdGUg
dGhhdCB0aGUgY29ycmVzcG9uZGluZyBzaWRlCisgY2hhbm5lbCBpcyBub3QgYWN0aXZlLjwvdD4K
Kzx0PgorVGhpcyBpcyBhbiBMQlJSIGZyYW1lIHdoZXJlIHRoZSBMQlJSIGZsYWdzCisgKHNlZSA8
eHJlZiB0YXJnZXQ9InNpbGtfaGVhZGVyX2JpdHMiLz4gYW5kIDx4cmVmIHRhcmdldD0ic2lsa19s
YnJyX2ZsYWdzIi8+KQorIGluZGljYXRlIHRoYXQgdGhlIGNvcnJlc3BvbmRpbmcgc2lkZSBjaGFu
bmVsIGlzIG5vdCBjb2RlZC4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKzwvbGlzdD4KK0l0IGlzIG9t
aXR0ZWQgd2hlbiB0aGVyZSBhcmUgbm8gc3RlcmVvIHdlaWdodHMsIGZvciBhbGwgb2YgdGhlIHNh
bWUgcmVhc29ucy4KK0l0IGlzIGFsc28gb21pdHRlZCBmb3IgYSByZWd1bGFyIFNJTEsgZnJhbWUg
d2hlbiB0aGUgVkFEIGZsYWcgb2YgdGhlCisgY29ycmVzcG9uZGluZyBzaWRlIGNoYW5uZWwgZnJh
bWUgaXMgc2V0IChpbmRpY2F0aW5nIGl0IGlzIGFjdGl2ZSkuCitUaGUgc2lkZSBjaGFubmVsIG11
c3QgYmUgY29kZWQgaW4gdGhpcyBjYXNlLCBtYWtpbmcgdGhlIG1pZC1vbmx5IGZsYWcKKyByZWR1
bmRhbnQuCitJdCBpcyBhbHNvIG9taXR0ZWQgZm9yIGFuIExCUlIgZnJhbWUgd2hlbiB0aGUgY29y
cmVzcG9uZGluZyBMQlJSIGZsYWdzCisgaW5kaWNhdGUgdGhlIHNpZGUgY2hhbm5lbCBpcyBjb2Rl
ZC4KKzwvdD4KKworPHQ+CitXaGVuIHRoZSBmbGFnIGlzIHByZXNlbnQsIHRoZSBkZWNvZGVyIHJl
YWRzIGEgc2luZ2xlIHZhbHVlIHVzaW5nIHRoZSBQREYgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtf
bWlkX29ubHlfcGRmIi8+LCBhcyBpbXBsZW1lbnRlZCBpbgorIHNpbGtfc3RlcmVvX2RlY29kZV9t
aWRfb25seSgpIChkZWNvZGVfc3RlcmVvX3ByZWQuYykuCitJZiB0aGUgZmxhZyBpcyBzZXQsIHRo
ZW4gdGhlcmUgaXMgbm8gY29ycmVzcG9uZGluZyBTSUxLIGZyYW1lIGZvciB0aGUgc2lkZQorIGNo
YW5uZWwsIHRoZSBlbnRpcmUgZGVjb2RpbmcgcHJvY2VzcyBmb3IgdGhlIHNpZGUgY2hhbm5lbCBp
cyBza2lwcGVkLCBhbmQKKyB6ZXJvcyBhcmUgZmVkIHRvIHRoZSBzdGVyZW8gdW5taXhpbmcgcHJv
Y2VzcyAoc2VlCisgPHhyZWYgdGFyZ2V0PSJzaWxrX3N0ZXJlb191bm1peGluZyIvPikgaW5zdGVh
ZC4KK0FzIHN0YXRlZCBhYm92ZSwgTEJSUiBmcmFtZXMgc3RpbGwgaW5jbHVkZSB0aGlzIGZsYWcg
d2hlbiB0aGUgTEJSUiBmbGFnCisgaW5kaWNhdGVzIHRoYXQgdGhlIHNpZGUgY2hhbm5lbCBpcyBu
b3QgY29kZWQuCitJbiB0aGF0IGNhc2UsIGlmIHRoaXMgZmxhZyBpcyB6ZXJvIChpbmRpY2F0aW5n
IHRoYXQgdGhlcmUgc2hvdWxkIGJlIGEgc2lkZQorIGNoYW5uZWwpLCB0aGVuIFBhY2tldCBMb3Nz
IENvbmNlYWxtZW50IChQTEMsIHNlZQorIDx4cmVmIHRhcmdldD0iUGFja2V0IExvc3MgQ29uY2Vh
bG1lbnQiLz4pIFNIT1VMRCBiZSBpbnZva2VkIHRvIHJlY292ZXIgYQorIHNpZGUgY2hhbm5lbCBz
aWduYWwuCitPdGhlcndpc2UsIHRoZSBzdGVyZW8gaW1hZ2Ugd2lsbCBjb2xsYXBzZS4KKzwvdD4K
KworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbWlkX29ubHlfcGRmIiB0aXRsZT0iTWlkLW9ubHkg
RmxhZyBQREYiPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29sPgorPGM+ezE5MiwgNjR9
LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0i
c2lsa19mcmFtZV90eXBlIiB0b2M9ImluY2x1ZGUiIHRpdGxlPSJGcmFtZSBUeXBlIj4KKzx0Pgor
RWFjaCBTSUxLIGZyYW1lIGNvbnRhaW5zIGEgc2luZ2xlICJmcmFtZSB0eXBlIiBzeW1ib2wgdGhh
dCBqb2ludGx5IGNvZGVzIHRoZQorIHNpZ25hbCB0eXBlIGFuZCBxdWFudGl6YXRpb24gb2Zmc2V0
IHR5cGUgb2YgdGhlIGNvcnJlc3BvbmRpbmcgZnJhbWUuCitJZiB0aGUgY3VycmVudCBmcmFtZSBp
cyBhIHJlZ3VsYXIgU0lMSyBmcmFtZSB3aG9zZSBWQUQgYml0IHdhcyBub3Qgc2V0IChhbgorICJp
bmFjdGl2ZSIgZnJhbWUpLCB0aGVuIHRoZSBmcmFtZSB0eXBlIHN5bWJvbCB0YWtlcyBvbiBhIHZh
bHVlIG9mIGVpdGhlciAwIG9yCisgMSBhbmQgaXMgZGVjb2RlZCB1c2luZyB0aGUgZmlyc3QgUERG
IGluIDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV90eXBlX3BkZnMiLz4uCitJZiB0aGUgZnJhbWUg
aXMgYW4gTEJSUiBmcmFtZSBvciBhIHJlZ3VsYXIgU0lMSyBmcmFtZSB3aG9zZSBWQUQgZmxhZyB3
YXMgc2V0CisgKGFuICJhY3RpdmUiIGZyYW1lKSwgdGhlbiB0aGUgdmFsdWUgb2YgdGhlIHN5bWJv
bCBtYXkgcmFuZ2UgZnJvbSAyIHRvIDUsCisgaW5jbHVzaXZlLCBhbmQgaXMgZGVjb2RlZCB1c2lu
ZyB0aGUgc2Vjb25kIFBERiBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV90eXBlX3BkZnMi
Lz4uCis8eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWVfdHlwZV90YWJsZSIvPiB0cmFuc2xhdGVzIGJl
dHdlZW4gdGhlIHZhbHVlIG9mIHRoZQorIGZyYW1lIHR5cGUgc3ltYm9sIGFuZCB0aGUgY29ycmVz
cG9uZGluZyBzaWduYWwgdHlwZSBhbmQgcXVhbnRpemF0aW9uIG9mZnNldAorIHR5cGUuCis8L3Q+
CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX2ZyYW1lX3R5cGVfcGRmcyIgdGl0bGU9IkZyYW1l
IFR5cGUgUERGcyI+Cis8dHRjb2w+VkFEIEZsYWc8L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+
Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+ezI2LCAyMzAsIDAsIDAsIDAsIDB9LzI1NjwvYz4KKzxjPkFj
dGl2ZTwvYz4gICA8Yz57MCwgMCwgMjQsIDc0LCAxNDgsIDEwfS8yNTY8L2M+Cis8L3RleHR0YWJs
ZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfZnJhbWVfdHlwZV90YWJsZSIKKyB0aXRsZT0i
U2lnbmFsIFR5cGUgYW5kIFF1YW50aXphdGlvbiBPZmZzZXQgVHlwZSBmcm9tIEZyYW1lIFR5cGUi
PgorPHR0Y29sPkZyYW1lIFR5cGU8L3R0Y29sPgorPHR0Y29sPlNpZ25hbCBUeXBlPC90dGNvbD4K
Kzx0dGNvbCBhbGlnbj0icmlnaHQiPlF1YW50aXphdGlvbiBPZmZzZXQgVHlwZTwvdHRjb2w+Cis8
Yz4wPC9jPiA8Yz5JbmFjdGl2ZTwvYz4gPGM+TG93PC9jPgorPGM+MTwvYz4gPGM+SW5hY3RpdmU8
L2M+IDxjPkhpZ2g8L2M+Cis8Yz4yPC9jPiA8Yz5VbnZvaWNlZDwvYz4gPGM+TG93PC9jPgorPGM+
MzwvYz4gPGM+VW52b2ljZWQ8L2M+IDxjPkhpZ2g8L2M+Cis8Yz40PC9jPiA8Yz5Wb2ljZWQ8L2M+
ICAgPGM+TG93PC9jPgorPGM+NTwvYz4gPGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+Cis8L3Rl
eHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfZ2FpbnMiIHRv
Yz0iaW5jbHVkZSIgdGl0bGU9IlN1YmZyYW1lIEdhaW5zIj4KKzx0PgorQSBzZXBhcmF0ZSBxdWFu
dGl6YXRpb24gZ2FpbiBpcyBjb2RlZCBmb3IgZWFjaCA1Jm5ic3A7bXMgc3ViZnJhbWUuCitUaGVz
ZSBnYWlucyBjb250cm9sIHRoZSBzdGVwIHNpemUgYmV0d2VlbiBxdWFudGl6YXRpb24gbGV2ZWxz
IG9mIHRoZSBleGNpdGF0aW9uCisgc2lnbmFsIGFuZCwgdGhlcmVmb3JlLCB0aGUgcXVhbGl0eSBv
ZiB0aGUgcmVjb25zdHJ1Y3Rpb24uCitUaGV5IGFyZSBpbmRlcGVuZGVudCBvZiBhbmQgdW5yZWxh
dGVkIHRvIHRoZSBwaXRjaCBjb250b3VycyBjb2RlZCBmb3Igdm9pY2VkCisgZnJhbWVzLgorVGhl
IHF1YW50aXphdGlvbiBnYWlucyBhcmUgdGhlbXNlbHZlcyB1bmlmb3JtbHkgcXVhbnRpemVkIHRv
IDYmbmJzcDtiaXRzIG9uIGEKKyBsb2cgc2NhbGUsIGdpdmluZyB0aGVtIGEgcmVzb2x1dGlvbiBv
ZiBhcHByb3hpbWF0ZWx5IDEuMzY5Jm5ic3A7ZEIgYW5kIGEgcmFuZ2UKKyBvZiBhcHByb3hpbWF0
ZWx5IDEuOTQmbmJzcDtkQiB0byA4OC4yMSZuYnNwO2RCLgorPC90PgorPHQ+CitUaGUgc3ViZnJh
bWUgZ2FpbnMgYXJlIGVpdGhlciBjb2RlZCBpbmRlcGVuZGVudGx5LCBvciByZWxhdGl2ZSB0byB0
aGUgZ2FpbiBmcm9tCisgdGhlIG1vc3QgcmVjZW50IGNvZGVkIHN1YmZyYW1lIGluIHRoZSBzYW1l
IGNoYW5uZWwuCitJbmRlcGVuZGVudCBjb2RpbmcgaXMgdXNlZCBpZiBhbmQgb25seSBpZgorPGxp
c3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitUaGlzIGlzIHRoZSBmaXJzdCBzdWJmcmFtZSBpbiB0
aGUgY3VycmVudCBTSUxLIGZyYW1lLCBhbmQKKzwvdD4KKzx0PkVpdGhlcgorPGxpc3Qgc3R5bGU9
InN5bWJvbHMiPgorPHQ+CitUaGlzIGlzIHRoZSBmaXJzdCBTSUxLIGZyYW1lIG9mIGl0cyB0eXBl
IChMQlJSIG9yIHJlZ3VsYXIpIGZvciB0aGlzIGNoYW5uZWwgaW4KKyB0aGUgY3VycmVudCBPcHVz
IGZyYW1lLCBvcgorIDwvdD4KKzx0PgorVGhlIHByZXZpb3VzIFNJTEsgZnJhbWUgb2YgdGhlIHNh
bWUgdHlwZSAoTEJSUiBvciByZWd1bGFyKSBmb3IgdGhpcyBjaGFubmVsIGluCisgdGhlIHNhbWUg
T3B1cyBmcmFtZSB3YXMgbm90IGNvZGVkLgorPC90PgorPC9saXN0PgorPC90PgorPC9saXN0Pgor
PC90PgorCis8dD4KK0luIGFuIGluZGVwZW5kZW50bHkgY29kZWQgc3ViZnJhbWUgZ2FpbiwgdGhl
IDMgbW9zdCBzaWduaWZpY2FudCBiaXRzIG9mIHRoZQorIHF1YW50aXphdGlvbiBnYWluIGFyZSBk
ZWNvZGVkIHVzaW5nIGEgUERGIHNlbGVjdGVkIGZyb20KKyA8eHJlZiB0YXJnZXQ9InNpbGtfaW5k
ZXBlbmRlbnRfZ2Fpbl9tc2JfcGRmcyIvPiBiYXNlZCBvbiB0aGUgZGVjb2RlZCBzaWduYWwKKyB0
eXBlIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pLgorPC90PgorCis8dGV4
dHRhYmxlIGFuY2hvcj0ic2lsa19pbmRlcGVuZGVudF9nYWluX21zYl9wZGZzIgorIHRpdGxlPSJQ
REZzIGZvciBJbmRlcGVuZGVudCBRdWFudGl6YXRpb24gR2FpbiBNU0IgQ29kaW5nIj4KKzx0dGNv
bCBhbGlnbj0ibGVmdCI+U2lnbmFsIFR5cGU8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5Q
REY8L3R0Y29sPgorPGM+SW5hY3RpdmU8L2M+IDxjPnszMiwgMTEyLCA2OCwgMjksIDEyLCAgMSwg
IDEsIDF9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiAgPGM+ezIsICAxNywgNDUsIDYwLCA2Miwg
NDcsIDE5LCA0fS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgIDxjPnsxLCAgIDMsIDI2LCA3MSwg
OTQsIDUwLCAgOSwgMn0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlIDMgbGVhc3Qg
c2lnbmlmaWNhbnQgYml0cyBhcmUgZGVjb2RlZCB1c2luZyBhIHVuaWZvcm0gUERGOgorPC90Pgor
PHRleHR0YWJsZSBhbmNob3I9InNpbGtfaW5kZXBlbmRlbnRfZ2Fpbl9sc2JfcGRmIgorIHRpdGxl
PSJQREYgZm9yIEluZGVwZW5kZW50IFF1YW50aXphdGlvbiBHYWluIExTQiBDb2RpbmciPgorPHR0
Y29sIGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29sPgorPGM+ezMyLCAzMiwgMzIsIDMyLCAzMiwgMzIs
IDMyLCAzMn0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlc2UgNiBiaXRzIGFyZSBj
b21iaW5lZCB0byBmb3JtIGEgdmFsdWUsIGdhaW5faW5kZXgsIGJldHdlZW4gMCBhbmQgNjMuCitX
aGVuIHRoZSBnYWluIGZvciB0aGUgcHJldmlvdXMgc3ViZnJhbWUgaXMgYXZhaWxhYmxlLCB0aGVu
IHRoZSBjdXJyZW50IGdhaW4gaXMKKyBsaW1pdGVkIGFzIGZvbGxvd3M6Cis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitsb2dfZ2FpbiA9
IG1heChnYWluX2luZGV4LCBwcmV2aW91c19sb2dfZ2FpbiAtIDE2KSAuCitdXT48L2FydHdvcms+
Cis8L2ZpZ3VyZT4KK1RoaXMgbWF5IGhlbHAgc29tZSBpbXBsZW1lbnRhdGlvbnMgbGltaXQgdGhl
IGNoYW5nZSBpbiBwcmVjaXNpb24gb2YgdGhlaXIKKyBpbnRlcm5hbCBMVFAgaGlzdG9yeS4KK1Ro
ZSBpbmRpY2VzIHdoaWNoIHRoaXMgY2xhbXAgYXBwbGllcyB0byBjYW5ub3Qgc2ltcGx5IGJlIHJl
bW92ZWQgZnJvbSB0aGUKKyBjb2RlYm9vaywgYmVjYXVzZSBwcmV2aW91c19sb2dfZ2FpbiB3aWxs
IG5vdCBiZSBhdmFpbGFibGUgYWZ0ZXIgcGFja2V0IGxvc3MuCitUaGUgY2xhbXBpbmcgaXMgc2tp
cHBlZCBhZnRlciBhIGRlY29kZXIgcmVzZXQsIGFuZCBpbiB0aGUgc2lkZSBjaGFubmVsIGlmIHRo
ZQorIHByZXZpb3VzIGZyYW1lIGluIHRoZSBzaWRlIGNoYW5uZWwgd2FzIG5vdCBjb2RlZCwgc2lu
Y2UgdGhlcmUgaXMgbm8gdmFsdWUgZm9yCisgcHJldmlvdXNfbG9nX2dhaW4gYXZhaWxhYmxlLgor
SXQgTUFZIGFsc28gYmUgc2tpcHBlZCBhZnRlciBwYWNrZXQgbG9zcy4KKzwvdD4KKworPHQ+CitG
b3Igc3ViZnJhbWVzIHdoaWNoIGRvIG5vdCBoYXZlIGFuIGluZGVwZW5kZW50IGdhaW4gKGluY2x1
ZGluZyB0aGUgZmlyc3QKKyBzdWJmcmFtZSBvZiBmcmFtZXMgbm90IGxpc3RlZCBhcyB1c2luZyBp
bmRlcGVuZGVudCBjb2RpbmcgYWJvdmUpLCB0aGUKKyBxdWFudGl6YXRpb24gZ2FpbiBpcyBjb2Rl
ZCByZWxhdGl2ZSB0byB0aGUgZ2FpbiBmcm9tIHRoZSBwcmV2aW91cyBzdWJmcmFtZSAoaW4KKyB0
aGUgc2FtZSBjaGFubmVsKS4KK1RoZSBQREYgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX2RlbHRhX2dh
aW5fcGRmIi8+IHlpZWxkcyBhIGRlbHRhX2dhaW5faW5kZXggdmFsdWUKKyBiZXR3ZWVuIDAgYW5k
IDQwLCBpbmNsdXNpdmUuCis8L3Q+Cis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19kZWx0YV9nYWlu
X3BkZiIKKyB0aXRsZT0iUERGIGZvciBEZWx0YSBRdWFudGl6YXRpb24gR2FpbiBDb2RpbmciPgor
PHR0Y29sIGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29sPgorPGM+ezYsICAgNSwgIDExLCAgMzEsIDEz
MiwgIDIxLCAgIDgsICAgNCwKKyAgICAzLCAgIDIsICAgMiwgICAyLCAgIDEsICAgMSwgICAxLCAg
IDEsCisgICAgMSwgICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAxLAorICAgIDEsICAg
MSwgICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwKKyAgICAxLCAgIDEsICAgMSwgICAxLCAg
IDEsICAgMSwgICAxLCAgIDEsICAgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+Cis8dD4KK1RoZSBm
b2xsb3dpbmcgZm9ybXVsYSB0cmFuc2xhdGVzIHRoaXMgaW5kZXggaW50byBhIHF1YW50aXphdGlv
biBnYWluIGZvciB0aGUKKyBjdXJyZW50IHN1YmZyYW1lIHVzaW5nIHRoZSBnYWluIGZyb20gdGhl
IHByZXZpb3VzIHN1YmZyYW1lOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFs
aWduPSJjZW50ZXIiPjwhW0NEQVRBWworbG9nX2dhaW4gPSBjbGFtcCgwLCBtYXgoMipkZWx0YV9n
YWluX2luZGV4IC0gMTYsCisgICAgICAgICAgICAgICAgICAgcHJldmlvdXNfbG9nX2dhaW4gKyBk
ZWx0YV9nYWluX2luZGV4IC0gNCksIDYzKSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwv
dD4KKzx0Pgorc2lsa19nYWluc19kZXF1YW50KCkgKGdhaW5fcXVhbnQuYykgZGVxdWFudGl6ZXMg
bG9nX2dhaW4gZm9yIHRoZSBrJ3RoIHN1YmZyYW1lCisgYW5kIGNvbnZlcnRzIGl0IGludG8gYSBs
aW5lYXIgUTE2IHNjYWxlIGZhY3RvciB2aWEKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2dhaW5fUTE2W2tdID0gc2lsa19sb2cybGlu
KCgweDFEMUM3MSpsb2dfZ2Fpbj4+MTYpICsgMjA5MCkKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorPC90PgorPHQ+CitUaGUgZnVuY3Rpb24gc2lsa19sb2cybGluKCkgKGxvZzJsaW4uYykgY29t
cHV0ZXMgYW4gYXBwcm94aW1hdGlvbiBvZgorIDIqKihpbkxvZ19RNy8xMjguMCksIHdoZXJlIGlu
TG9nX1E3IGlzIGl0cyBRNyBpbnB1dC4KK0xldCBpID0gaW5Mb2dfUTcmZ3Q7Jmd0OzcgYmUgdGhl
IGludGVnZXIgcGFydCBvZiBpbkxvZ1E3IGFuZAorIGYgPSBpbkxvZ19RNyZhbXA7MTI3IGJlIHRo
ZSBmcmFjdGlvbmFsIHBhcnQuCitUaGVuCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisoMTw8aSkgKyAoKC0xNzQqZiooMTI4LWYpPj4x
NikrZikqKCgxPDxpKT4+NykKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHlpZWxkcyB0aGUg
YXBwcm94aW1hdGUgZXhwb25lbnRpYWwuCitUaGUgZmluYWwgUTE2IGdhaW4gdmFsdWVzIGxpZXMg
YmV0d2VlbiA4MTkyMCBhbmQgMTY4NjExMDIwOCwgaW5jbHVzaXZlCisgKHJlcHJlc2VudGluZyBz
Y2FsZSBmYWN0b3JzIG9mIDEuMjUgdG8gMjU3MjgsIHJlc3BlY3RpdmVseSkuCis8L3Q+Cis8L3Nl
Y3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19ubHNmcyIgdG9jPSJpbmNsdWRlIiB0aXRs
ZT0iTm9ybWFsaXplZCBMaW5lIFNwZWN0cmFsCisgRnJlcXVlbmN5IChMU0YpIGFuZCBMaW5lYXIg
UHJlZGljdGl2ZSBDb2RpbmcgKExQQykgQ29lZmZpY2llbnRzIj4KKzx0PgorQSBzZXQgb2Ygbm9y
bWFsaXplZCBMaW5lIFNwZWN0cmFsIEZyZXF1ZW5jeSAoTFNGKSBjb2VmZmljaWVudHMgZm9sbG93
IHRoZQorIHF1YW50aXphdGlvbiBnYWlucyBpbiB0aGUgYml0c3RyZWFtLCBhbmQgcmVwcmVzZW50
IHRoZSBMaW5lYXIgUHJlZGljdGl2ZQorIENvZGluZyAoTFBDKSBjb2VmZmljaWVudHMgZm9yIHRo
ZSBjdXJyZW50IFNJTEsgZnJhbWUuCitPbmNlIGRlY29kZWQsIHRoZSBub3JtYWxpemVkIExTRnMg
Zm9ybSBhbiBpbmNyZWFzaW5nIGxpc3Qgb2YgUTE1IHZhbHVlcyBiZXR3ZWVuCisgMCBhbmQgMS4K
K1RoZXNlIHJlcHJlc2VudCB0aGUgaW50ZXJsZWF2ZWQgemVyb3Mgb24gdGhlIHVwcGVyIGhhbGYg
b2YgdGhlIHVuaXQgY2lyY2xlCisgKGJldHdlZW4gMCBhbmQgcGksIGhlbmNlICJub3JtYWxpemVk
IikgaW4gdGhlIHN0YW5kYXJkIGRlY29tcG9zaXRpb24KKyA8eHJlZiB0YXJnZXQ9ImxpbmUtc3Bl
Y3RyYWwtcGFpcnMiLz4gb2YgdGhlIExQQyBmaWx0ZXIgaW50byBhIHN5bW1ldHJpYyBwYXJ0Cisg
YW5kIGFuIGFudGktc3ltbWV0cmljIHBhcnQgKFAgYW5kIFEgaW4gPHhyZWYgdGFyZ2V0PSJzaWxr
X25sc2YybHBjIi8+KS4KK0JlY2F1c2Ugb2Ygbm9uLWxpbmVhciBlZmZlY3RzIGluIHRoZSBkZWNv
ZGluZyBwcm9jZXNzLCBhbiBpbXBsZW1lbnRhdGlvbiBTSE9VTEQKKyBtYXRjaCB0aGUgZml4ZWQt
cG9pbnQgYXJpdGhtZXRpYyBkZXNjcmliZWQgaW4gdGhpcyBzZWN0aW9uIGV4YWN0bHkuCitBbiBl
bmNvZGVyIFNIT1VMRCBhbHNvIHVzZSB0aGUgc2FtZSBwcm9jZXNzLgorPC90PgorPHQ+CitUaGUg
bm9ybWFsaXplZCBMU0ZzIGFyZSBjb2RlZCB1c2luZyBhIHR3by1zdGFnZSB2ZWN0b3IgcXVhbnRp
emVyIChWUSkKKyAoPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zfc3RhZ2UxIi8+IGFuZCA8eHJlZiB0
YXJnZXQ9InNpbGtfbmxzZl9zdGFnZTIiLz4pLgorTkIgYW5kIE1CIGZyYW1lcyB1c2UgYW4gb3Jk
ZXItMTAgcHJlZGljdG9yLCB3aGlsZSBXQiBmcmFtZXMgdXNlIGFuIG9yZGVyLTE2CisgcHJlZGlj
dG9yLCBhbmQgdGh1cyBoYXZlIGRpZmZlcmVudCBzZXRzIG9mIHRhYmxlcy4KK0FmdGVyIHJlY29u
c3RydWN0aW5nIHRoZSBub3JtYWxpemVkIExTRnMKKyAoPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zf
cmVjb25zdHJ1Y3Rpb24iLz4pLCB0aGUgZGVjb2RlciBydW5zIHRoZW0gdGhyb3VnaCBhCisgc3Rh
YmlsaXphdGlvbiBwcm9jZXNzICg8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFiaWxpemF0aW9u
Ii8+KSwgaW50ZXJwb2xhdGVzCisgdGhlbSBiZXR3ZWVuIGZyYW1lcyAoPHhyZWYgdGFyZ2V0PSJz
aWxrX25sc2ZfaW50ZXJwb2xhdGlvbiIvPiksIGNvbnZlcnRzIHRoZW0KKyBiYWNrIGludG8gTFBD
IGNvZWZmaWNpZW50cyAoPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2YybHBjIi8+KSwgYW5kIHRoZW4g
cnVucworIHRoZW0gdGhyb3VnaCBmdXJ0aGVyIHByb2Nlc3NlcyB0byBsaW1pdCB0aGUgcmFuZ2Ug
b2YgdGhlIGNvZWZmaWNpZW50cworICg8eHJlZiB0YXJnZXQ9InNpbGtfbHBjX3JhbmdlX2xpbWl0
Ii8+KSBhbmQgdGhlIGdhaW4gb2YgdGhlIGZpbHRlcgorICg8eHJlZiB0YXJnZXQ9InNpbGtfbHBj
X2dhaW5fbGltaXQiLz4pLgorQWxsIG9mIHRoaXMgaXMgbmVjZXNzYXJ5IHRvIGVuc3VyZSB0aGUg
cmVjb25zdHJ1Y3Rpb24gcHJvY2VzcyBpcyBzdGFibGUuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hv
cj0ic2lsa19ubHNmX3N0YWdlMSIgdGl0bGU9Ik5vcm1hbGl6ZWQgTFNGIFN0YWdlIDEgRGVjb2Rp
bmciPgorPHQ+CitUaGUgZmlyc3QgVlEgc3RhZ2UgdXNlcyBhIDMyLWVsZW1lbnQgY29kZWJvb2ss
IGNvZGVkIHdpdGggb25lIG9mIHRoZSBQREZzIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zf
c3RhZ2UxX3BkZnMiLz4sIGRlcGVuZGluZyBvbiB0aGUgYXVkaW8gYmFuZHdpZHRoIGFuZAorIHRo
ZSBzaWduYWwgdHlwZSBvZiB0aGUgY3VycmVudCBTSUxLIGZyYW1lLgorVGhpcyB5aWVsZHMgYSBz
aW5nbGUgaW5kZXgsIEkxLCBmb3IgdGhlIGVudGlyZSBmcmFtZSwgd2hpY2gKKzxsaXN0IHN0eWxl
PSJudW1iZXJzIj4KKzx0PkluZGV4ZXMgYW4gZWxlbWVudCBpbiBhIGNvYXJzZSBjb2RlYm9vayw8
L3Q+Cis8dD5TZWxlY3RzIHRoZSBQREZzIGZvciB0aGUgc2Vjb25kIHN0YWdlIG9mIHRoZSBWUSwg
YW5kPC90PgorPHQ+U2VsZWN0cyB0aGUgcHJlZGljdGlvbiB3ZWlnaHRzIHVzZWQgdG8gcmVtb3Zl
IGludHJhLWZyYW1lIHJlZHVuZGFuY3kgZnJvbQorIHRoZSBzZWNvbmQgc3RhZ2UuPC90PgorPC9s
aXN0PgorVGhlIGFjdHVhbCBjb2RlYm9vayBlbGVtZW50cyBhcmUgbGlzdGVkIGluCisgPHhyZWYg
dGFyZ2V0PSJzaWxrX25sc2ZfbmJtYl9jb2RlYm9vayIvPiBhbmQKKyA8eHJlZiB0YXJnZXQ9InNp
bGtfbmxzZl93Yl9jb2RlYm9vayIvPiwgYnV0IHRoZXkgYXJlIG5vdCBuZWVkZWQgdW50aWwgdGhl
IGxhc3QKKyBzdGFnZXMgb2YgcmVjb25zdHJ1Y3RpbmcgdGhlIExTRiBjb2VmZmljaWVudHMuCis8
L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25sc2Zfc3RhZ2UxX3BkZnMiCisgdGl0bGU9
IlBERnMgZm9yIE5vcm1hbGl6ZWQgTFNGIFN0YWdlLTEgSW5kZXggRGVjb2RpbmciPgorPHR0Y29s
IGFsaWduPSJsZWZ0Ij5BdWRpbyBCYW5kd2lkdGg8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJsZWZ0
Ij5TaWduYWwgVHlwZTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8
Yz5OQiBvciBNQjwvYz4gPGM+SW5hY3RpdmUgb3IgdW52b2ljZWQ8L2M+Cis8Yz4KK3s0NCwgMzQs
IDMwLCAxOSwgMjEsIDEyLCAxMSwgIDMsCisgIDMsICAyLCAxNiwgIDIsICAyLCAgMSwgIDUsICAy
LAorICAxLCAgMywgIDMsICAxLCAgMSwgIDIsICAyLCAgMiwKKyAgMywgIDEsICA5LCAgOSwgIDIs
ICA3LCAgMiwgIDF9LzI1NgorPC9jPgorPGM+TkIgb3IgTUI8L2M+IDxjPlZvaWNlZDwvYz4KKzxj
PgorezEsIDEwLCAgMSwgIDgsICAzLCAgOCwgIDgsIDE0LAorMTMsIDE0LCAgMSwgMTQsIDEyLCAx
MywgMTEsIDExLAorMTIsIDExLCAxMCwgMTAsIDExLCAgOCwgIDksICA4LAorIDcsICA4LCAgMSwg
IDEsICA2LCAgMSwgIDYsICA1fS8yNTYKKzwvYz4KKzxjPldCPC9jPiA8Yz5JbmFjdGl2ZSBvciB1
bnZvaWNlZDwvYz4KKzxjPgorezMxLCAyMSwgIDMsIDE3LCAgMSwgIDgsIDE3LCAgNCwKKyAgMSwg
MTgsIDE2LCAgNCwgIDIsICAzLCAgMSwgMTAsCisgIDEsICAzLCAxNiwgMTEsIDE2LCAgMiwgIDIs
ICAzLAorICAyLCAxMSwgIDEsICA0LCAgOSwgIDgsICA3LCAgM30vMjU2Cis8L2M+Cis8Yz5XQjwv
Yz4gPGM+Vm9pY2VkPC9jPgorPGM+Cit7MSwgIDQsIDE2LCAgNSwgMTgsIDExLCAgNSwgMTQsCisx
NSwgIDEsICAzLCAxMiwgMTMsIDE0LCAxNCwgIDYsCisxNCwgMTIsICAyLCAgNiwgIDEsIDEyLCAx
MiwgMTEsCisxMCwgIDMsIDEwLCAgNSwgIDEsICAxLCAgMSwgIDN9LzI1NgorPC9jPgorPC90ZXh0
dGFibGU+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX25sc2Zfc3RhZ2Uy
IiB0aXRsZT0iTm9ybWFsaXplZCBMU0YgU3RhZ2UgMiBEZWNvZGluZyI+Cis8dD4KK0EgdG90YWwg
b2YgMTYgUERGcyBhcmUgYXZhaWxhYmxlIGZvciB0aGUgTFNGIHJlc2lkdWFsIGluIHRoZSBzZWNv
bmQgc3RhZ2U6IHRoZQorIDggKGEuLi5oKSBmb3IgTkIgYW5kIE1CIGZyYW1lcyBnaXZlbiBpbgor
IDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3N0YWdlMl9uYm1iX3BkZnMiLz4sIGFuZCB0aGUgOCAo
aS4uLnApIGZvciBXQiBmcmFtZXMKKyBnaXZlbiBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9z
dGFnZTJfd2JfcGRmcyIvPi4KK1doaWNoIFBERiBpcyB1c2VkIGZvciB3aGljaCBjb2VmZmljaWVu
dCBpcyBkcml2ZW4gYnkgdGhlIGluZGV4LCBJMSwKKyBkZWNvZGVkIGluIHRoZSBmaXJzdCBzdGFn
ZS4KKzx4cmVmIHRhcmdldD0ic2lsa19ubHNmX25ibWJfc3RhZ2UyX2NiX3NlbCIvPiBsaXN0cyB0
aGUgbGV0dGVyIG9mIHRoZQorIGNvcnJlc3BvbmRpbmcgUERGIGZvciBlYWNoIG5vcm1hbGl6ZWQg
TFNGIGNvZWZmaWNpZW50IGZvciBOQiBhbmQgTUIsIGFuZAorIDx4cmVmIHRhcmdldD0ic2lsa19u
bHNmX3diX3N0YWdlMl9jYl9zZWwiLz4gbGlzdHMgdGhlIHNhbWUgaW5mb3JtYXRpb24gZm9yIFdC
LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNmX3N0YWdlMl9uYm1iX3BkZnMi
CisgdGl0bGU9IlBERnMgZm9yIE5CL01CIE5vcm1hbGl6ZWQgTFNGIFN0YWdlLTIgSW5kZXggRGVj
b2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5Db2RlYm9vazwvdHRjb2w+Cis8dHRjb2wgYWxp
Z249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz5hPC9jPiA8Yz57MSwgICAxLCAgIDEsICAxNSwgMjI0
LCAgMTEsICAgMSwgICAxLCAgIDF9LzI1NjwvYz4KKzxjPmI8L2M+IDxjPnsxLCAgIDEsICAgMiwg
IDM0LCAxODMsICAzMiwgICAxLCAgIDEsICAgMX0vMjU2PC9jPgorPGM+YzwvYz4gPGM+ezEsICAg
MSwgICA0LCAgNDIsIDE0OSwgIDU1LCAgIDIsICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5kPC9jPiA8
Yz57MSwgICAxLCAgIDgsICA1MiwgMTIzLCAgNjEsICAgOCwgICAxLCAgIDF9LzI1NjwvYz4KKzxj
PmU8L2M+IDxjPnsxLCAgIDMsICAxNiwgIDUzLCAxMDEsICA3NCwgICA2LCAgIDEsICAgMX0vMjU2
PC9jPgorPGM+ZjwvYz4gPGM+ezEsICAgMywgIDE3LCAgNTUsICA5MCwgIDczLCAgMTUsICAgMSwg
ICAxfS8yNTY8L2M+Cis8Yz5nPC9jPiA8Yz57MSwgICA3LCAgMjQsICA1MywgIDc0LCAgNjcsICAy
NiwgICAzLCAgIDF9LzI1NjwvYz4KKzxjPmg8L2M+IDxjPnsxLCAgIDEsICAxOCwgIDYzLCAgNzgs
ICA1OCwgIDMwLCAgIDYsICAgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUg
YW5jaG9yPSJzaWxrX25sc2Zfc3RhZ2UyX3diX3BkZnMiCisgdGl0bGU9IlBERnMgZm9yIFdCIE5v
cm1hbGl6ZWQgTFNGIFN0YWdlLTIgSW5kZXggRGVjb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0
Ij5Db2RlYm9vazwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz5p
PC9jPiA8Yz57MSwgICAxLCAgIDEsICAgOSwgMjMyLCAgIDksICAgMSwgICAxLCAgIDF9LzI1Njwv
Yz4KKzxjPmo8L2M+IDxjPnsxLCAgIDEsICAgMiwgIDI4LCAxODYsICAzNSwgICAxLCAgIDEsICAg
MX0vMjU2PC9jPgorPGM+azwvYz4gPGM+ezEsICAgMSwgICAzLCAgNDIsIDE1MiwgIDUzLCAgIDIs
ICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5sPC9jPiA8Yz57MSwgICAxLCAgMTAsICA0OSwgMTI2LCAg
NjUsICAgMiwgICAxLCAgIDF9LzI1NjwvYz4KKzxjPm08L2M+IDxjPnsxLCAgIDQsICAxOSwgIDQ4
LCAxMDAsICA3NywgICA1LCAgIDEsICAgMX0vMjU2PC9jPgorPGM+bjwvYz4gPGM+ezEsICAgMSwg
IDE0LCAgNTQsIDEwMCwgIDcyLCAgMTIsICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5vPC9jPiA8Yz57
MSwgICAxLCAgMTUsICA2MSwgIDg3LCAgNjEsICAyNSwgICA0LCAgIDF9LzI1NjwvYz4KKzxjPnA8
L2M+IDxjPnsxLCAgIDcsICAyMSwgIDUwLCAgNzcsICA4MSwgIDE3LCAgIDEsICAgMX0vMjU2PC9j
PgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25sc2ZfbmJtYl9zdGFn
ZTJfY2Jfc2VsIgorIHRpdGxlPSJDb2RlYm9vayBTZWxlY3Rpb24gZm9yIE5CL01CIE5vcm1hbGl6
ZWQgTFNGIFN0YWdlLTIgSW5kZXggRGVjb2RpbmciPgorPHR0Y29sPkkxPC90dGNvbD4KKzx0dGNv
bD5Db2VmZmljaWVudDwvdHRjb2w+Cis8Yy8+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4wJm5i
c3A7MSZuYnNwOzImbmJzcDszJm5ic3A7NCZuYnNwOzUmbmJzcDs2Jm5ic3A7NyZuYnNwOzgmbmJz
cDs5PC9zcGFueD48L2M+Cis8Yz4gMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmEmbmJz
cDthJm5ic3A7YSZuYnNwO2EmbmJzcDthJm5ic3A7YSZuYnNwO2EmbmJzcDthJm5ic3A7YSZuYnNw
O2E8L3NwYW54PjwvYz4KKzxjPiAxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YiZuYnNw
O2QmbmJzcDtiJm5ic3A7YyZuYnNwO2MmbmJzcDtiJm5ic3A7YyZuYnNwO2ImbmJzcDtiJm5ic3A7
Yjwvc3Bhbng+PC9jPgorPGM+IDI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5jJm5ic3A7
YiZuYnNwO2ImbmJzcDtiJm5ic3A7YiZuYnNwO2ImbmJzcDtiJm5ic3A7YiZuYnNwO2ImbmJzcDti
PC9zcGFueD48L2M+Cis8Yz4gMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmImbmJzcDtj
Jm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7YiZuYnNwO2MmbmJzcDtiJm5ic3A7YiZuYnNwO2I8
L3NwYW54PjwvYz4KKzxjPiA0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2Qm
bmJzcDtkJm5ic3A7ZCZuYnNwO2QmbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7Yzwv
c3Bhbng+PC9jPgorPGM+IDU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5hJm5ic3A7ZiZu
YnNwO2QmbmJzcDtkJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2ImbmJzcDtiPC9z
cGFueD48L2M+Cis8Yz4gZzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmEmbmJzcDtjJm5i
c3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2I8L3Nw
YW54PjwvYz4KKzxjPiA3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2QmbmJz
cDtnJm5ic3A7ZSZuYnNwO2UmbmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtmJm5ic3A7Zjwvc3Bh
bng+PC9jPgorPGM+IDg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5jJm5ic3A7ZSZuYnNw
O2YmbmJzcDtmJm5ic3A7ZSZuYnNwO2YmbmJzcDtlJm5ic3A7ZyZuYnNwO2UmbmJzcDtlPC9zcGFu
eD48L2M+Cis8Yz4gOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtlJm5ic3A7
ZSZuYnNwO2gmbmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtmJm5ic3A7ZiZuYnNwO2U8L3NwYW54
PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ZSZuYnNwO2QmbmJzcDtk
Jm5ic3A7ZCZuYnNwO2MmbmJzcDtkJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7Yzwvc3Bhbng+
PC9jPgorPGM+MTE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5iJm5ic3A7ZiZuYnNwO2Ym
bmJzcDtnJm5ic3A7ZSZuYnNwO2YmbmJzcDtlJm5ic3A7ZiZuYnNwO2YmbmJzcDtmPC9zcGFueD48
L2M+Cis8Yz4xMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtoJm5ic3A7ZSZu
YnNwO2cmbmJzcDtmJm5ic3A7ZiZuYnNwO2YmbmJzcDtmJm5ic3A7ZiZuYnNwO2Y8L3NwYW54Pjwv
Yz4KKzxjPjEzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2gmbmJzcDtmJm5i
c3A7ZiZuYnNwO2YmbmJzcDtmJm5ic3A7ZiZuYnNwO2cmbmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9j
PgorPGM+MTQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5kJm5ic3A7ZCZuYnNwO2YmbmJz
cDtlJm5ic3A7ZSZuYnNwO2YmbmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtlPC9zcGFueD48L2M+
Cis8Yz4xNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtkJm5ic3A7ZCZuYnNw
O2YmbmJzcDtmJm5ic3A7ZSZuYnNwO2UmbmJzcDtlJm5ic3A7ZSZuYnNwO2U8L3NwYW54PjwvYz4K
KzxjPjE2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2UmbmJzcDtlJm5ic3A7
ZyZuYnNwO2UmbmJzcDtmJm5ic3A7ZSZuYnNwO2YmbmJzcDtmJm5ic3A7Zjwvc3Bhbng+PC9jPgor
PGM+MTc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5jJm5ic3A7ZiZuYnNwO2UmbmJzcDtn
Jm5ic3A7ZiZuYnNwO2YmbmJzcDtmJm5ic3A7ZSZuYnNwO2YmbmJzcDtlPC9zcGFueD48L2M+Cis8
Yz4xODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtoJm5ic3A7ZSZuYnNwO2Ym
bmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtmJm5ic3A7ZiZuYnNwO2Y8L3NwYW54PjwvYz4KKzxj
PjE5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2YmbmJzcDtlJm5ic3A7ZyZu
YnNwO2gmbmJzcDtnJm5ic3A7ZiZuYnNwO2cmbmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+
MjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5kJm5ic3A7ZyZuYnNwO2gmbmJzcDtlJm5i
c3A7ZyZuYnNwO2YmbmJzcDtmJm5ic3A7ZyZuYnNwO2UmbmJzcDtmPC9zcGFueD48L2M+Cis8Yz4y
MTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtoJm5ic3A7ZyZuYnNwO2UmbmJz
cDtlJm5ic3A7ZSZuYnNwO2YmbmJzcDtlJm5ic3A7ZiZuYnNwO2Y8L3NwYW54PjwvYz4KKzxjPjIy
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ZSZuYnNwO2YmbmJzcDtmJm5ic3A7ZSZuYnNw
O2cmbmJzcDtnJm5ic3A7ZiZuYnNwO2cmbmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MjM8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5jJm5ic3A7ZiZuYnNwO2YmbmJzcDtnJm5ic3A7
ZiZuYnNwO2cmbmJzcDtlJm5ic3A7ZyZuYnNwO2UmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4yNDwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmUmbmJzcDtmJm5ic3A7ZiZuYnNwO2YmbmJzcDtk
Jm5ic3A7aCZuYnNwO2UmbmJzcDtmJm5ic3A7ZiZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjI1PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2QmbmJzcDtlJm5ic3A7ZiZuYnNwO2Ym
bmJzcDtnJm5ic3A7ZSZuYnNwO2YmbmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MjY8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5jJm5ic3A7ZCZuYnNwO2MmbmJzcDtkJm5ic3A7ZCZu
YnNwO2UmbmJzcDtjJm5ic3A7ZCZuYnNwO2QmbmJzcDtkPC9zcGFueD48L2M+Cis8Yz4yNzwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmImbmJzcDtiJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5i
c3A7YyZuYnNwO2MmbmJzcDtkJm5ic3A7YyZuYnNwO2M8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ZSZuYnNwO2YmbmJzcDtmJm5ic3A7ZyZuYnNwO2cmbmJz
cDtnJm5ic3A7ZiZuYnNwO2cmbmJzcDtlJm5ic3A7Zjwvc3Bhbng+PC9jPgorPGM+Mjk8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5kJm5ic3A7ZiZuYnNwO2YmbmJzcDtlJm5ic3A7ZSZuYnNw
O2UmbmJzcDtlJm5ic3A7ZCZuYnNwO2QmbmJzcDtjPC9zcGFueD48L2M+Cis8Yz4zMDwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtmJm5ic3A7ZCZuYnNwO2gmbmJzcDtmJm5ic3A7
ZiZuYnNwO2UmbmJzcDtlJm5ic3A7ZiZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjMxPC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+ZSZuYnNwO2UmbmJzcDtmJm5ic3A7ZSZuYnNwO2YmbmJzcDtn
Jm5ic3A7ZiZuYnNwO2cmbmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisK
Kzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25sc2Zfd2Jfc3RhZ2UyX2NiX3NlbCIKKyB0aXRsZT0i
Q29kZWJvb2sgU2VsZWN0aW9uIGZvciBXQiBOb3JtYWxpemVkIExTRiBTdGFnZS0yIEluZGV4IERl
Y29kaW5nIj4KKzx0dGNvbD5JMTwvdHRjb2w+Cis8dHRjb2w+Q29lZmZpY2llbnQ8L3R0Y29sPgor
PGMvPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsy
Jm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzQmbmJzcDsmbmJzcDs1Jm5ic3A7Jm5ic3A7NiZuYnNw
OyZuYnNwOzcmbmJzcDsmbmJzcDs4Jm5ic3A7Jm5ic3A7OSZuYnNwOzEwJm5ic3A7MTEmbmJzcDsx
MiZuYnNwOzEzJm5ic3A7MTQmbmJzcDsxNTwvc3Bhbng+PC9jPgorPGM+IDA8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtp
Jm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNw
OyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJz
cDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpPC9zcGFueD48L2M+Cis8
Yz4gMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmsmbmJzcDsmbmJzcDtsJm5ic3A7Jm5i
c3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2sm
bmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7
Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNw
O2w8L3NwYW54PjwvYz4KKzxjPiAyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ayZuYnNw
OyZuYnNwO24mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO3AmbmJzcDsmbmJz
cDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7biZu
YnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+IDM8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtrJm5ic3A7
Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNw
O2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5i
c3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtqPC9zcGFueD48L2M+Cis8Yz4gNDwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7biZu
YnNwOyZuYnNwO20mbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO3AmbmJzcDsm
bmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7
biZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2w8L3Nw
YW54PjwvYz4KKzxjPiA1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNw
O2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5i
c3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZu
YnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtr
Jm5ic3A7Jm5ic3A7bTwvc3Bhbng+PC9jPgorPGM+IDY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj5pJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7
aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJz
cDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5i
c3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpPC9zcGFueD48L2M+Cis8Yz4gNzwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7byZuYnNwOyZu
YnNwO2wmbmJzcDsmbmJzcDtwJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDts
Jm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNw
OyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2w8L3NwYW54Pjwv
Yz4KKzxjPiA4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO28mbmJz
cDsmbmJzcDtrJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDttJm5ic3A7Jm5i
c3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20m
bmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7
Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+IDk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5r
Jm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNw
OyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJz
cDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZu
YnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpPC9zcGFueD48L2M+Cis8Yz4xMDwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2km
bmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7
Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNw
O2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2o8L3NwYW54PjwvYz4KKzxj
PjExPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJz
cDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZu
YnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7
bDwvc3Bhbng+PC9jPgorPGM+MTI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5rJm5ic3A7
Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNw
O2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5i
c3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZu
YnNwO2ombmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4xMzwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPmwmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsm
bmJzcDtvJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7
bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJz
cDsmbmJzcDttJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO208L3NwYW54PjwvYz4KKzxjPjE0PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDttJm5i
c3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtwJm5ic3A7Jm5ic3A7biZuYnNwOyZu
YnNwO2smbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDtt
Jm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bDwvc3Bh
bng+PC9jPgorPGM+MTU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7
aiZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJz
cDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5i
c3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2om
bmJzcDsmbmJzcDtpPC9zcGFueD48L2M+Cis8Yz4xNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPmombmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDtu
Jm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNw
OyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJz
cDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO208L3NwYW54PjwvYz4KKzxjPjE3PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+aiZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5i
c3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24m
bmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7
Jm5ic3A7biZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bTwvc3Bhbng+PC9j
PgorPGM+MTg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7bCZuYnNw
OyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJz
cDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZu
YnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsm
bmJzcDttPC9zcGFueD48L2M+Cis8Yz4xOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkm
bmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7
Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNw
O2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5i
c3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2k8L3NwYW54PjwvYz4KKzxjPjIwPC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+bCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZu
YnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsm
bmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7
aiZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bTwvc3Bhbng+PC9jPgorPGM+
MjE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNw
O2wmbmJzcDsmbmJzcDtwJm5ic3A7Jm5ic3A7cCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5i
c3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZu
YnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDts
PC9zcGFueD48L2M+Cis8Yz4yMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmsmbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7
bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJz
cDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5i
c3A7ayZuYnNwOyZuYnNwO208L3NwYW54PjwvYz4KKzxjPjIzPC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+aiZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZu
YnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtu
Jm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7aiZuYnNw
OyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7ajwvc3Bhbng+PC9jPgorPGM+MjQ8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJz
cDsmbmJzcDtvJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtwJm5ic3A7Jm5i
c3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO20m
bmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsPC9zcGFu
eD48L2M+Cis8Yz4yNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtv
Jm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNw
OyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJz
cDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZu
YnNwOyZuYnNwO2k8L3NwYW54PjwvYz4KKzxjPjI2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+aSZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24m
bmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7
Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtwJm5ic3A7Jm5ic3A7cCZuYnNwOyZuYnNw
O20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bTwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj5sJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO3AmbmJzcDsmbmJz
cDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZu
YnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtsPC9zcGFueD48L2M+
Cis8Yz4yODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtpJm5ic3A7
Jm5ic3A7aiZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNw
O2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5i
c3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZu
YnNwO2o8L3NwYW54PjwvYz4KKzxjPjI5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZu
YnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7
aiZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2kmbmJz
cDsmbmJzcDtpJm5ic3A7Jm5ic3A7ajwvc3Bhbng+PC9jPgorPGM+MzA8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5sJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5i
c3A7Jm5ic3A7cCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZu
YnNwO2smbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtq
Jm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtpPC9zcGFueD48L2M+Cis8Yz4z
MTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmsmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7
biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJz
cDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtrJm5ic3A7Jm5i
c3A7byZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2k8
L3NwYW54PjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK0RlY29kaW5nIHRoZSBzZWNvbmQgc3Rh
Z2UgcmVzaWR1YWwgcHJvY2VlZHMgYXMgZm9sbG93cy4KK0ZvciBlYWNoIGNvZWZmaWNpZW50LCB0
aGUgZGVjb2RlciByZWFkcyBhIHN5bWJvbCB1c2luZyB0aGUgUERGIGNvcnJlc3BvbmRpbmcgdG8K
KyBJMSBmcm9tIGVpdGhlciA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9uYm1iX3N0YWdlMl9jYl9z
ZWwiLz4gb3IKKyA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl93Yl9zdGFnZTJfY2Jfc2VsIi8+LCBh
bmQgc3VidHJhY3RzIDQgZnJvbSB0aGUgcmVzdWx0CisgdG8gZ2l2ZSBhbiBpbmRleCBpbiB0aGUg
cmFuZ2UgLTQgdG8gNCwgaW5jbHVzaXZlLgorSWYgdGhlIGluZGV4IGlzIGVpdGhlciAtNCBvciA0
LCBpdCByZWFkcyBhIHNlY29uZCBzeW1ib2wgdXNpbmcgdGhlIFBERiBpbgorIDx4cmVmIHRhcmdl
dD0ic2lsa19ubHNmX2V4dF9wZGYiLz4sIGFuZCBhZGRzIHRoZSB2YWx1ZSBvZiB0aGlzIHNlY29u
ZCBzeW1ib2wKKyB0byB0aGUgaW5kZXgsIHVzaW5nIHRoZSBzYW1lIHNpZ24uCitUaGlzIGdpdmVz
IHRoZSBpbmRleCwgSTJba10sIGEgdG90YWwgcmFuZ2Ugb2YgLTEwIHRvIDEwLCBpbmNsdXNpdmUu
Cis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25sc2ZfZXh0X3BkZiIKKyB0aXRsZT0i
UERGIGZvciBOb3JtYWxpemVkIExTRiBJbmRleCBFeHRlbnNpb24gRGVjb2RpbmciPgorPHR0Y29s
IGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29sPgorPGM+ezE1NiwgNjAsIDI0LCAgOSwgIDQsICAyLCAg
MX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlIGRlY29kZWQgaW5kaWNlcyBmcm9t
IGJvdGggc3RhZ2VzIGFyZSB0cmFuc2xhdGVkIGJhY2sgaW50byBub3JtYWxpemVkIExTRgorIGNv
ZWZmaWNpZW50cyBpbiBzaWxrX05MU0ZfZGVjb2RlKCkgKE5MU0ZfZGVjb2RlLmMpLgorVGhlIHN0
YWdlLTIgaW5kaWNlcyByZXByZXNlbnQgcmVzaWR1YWxzIGFmdGVyIGJvdGggdGhlIGZpcnN0IHN0
YWdlIG9mIHRoZSBWUQorIGFuZCBhIHNlcGFyYXRlIGJhY2t3YXJkcy1wcmVkaWN0aW9uIHN0ZXAu
CitUaGUgYmFja3dhcmRzIHByZWRpY3Rpb24gcHJvY2VzcyBpbiB0aGUgZW5jb2RlciBzdWJ0cmFj
dHMgYSBwcmVkaWN0aW9uIGZyb20KKyBlYWNoIHJlc2lkdWFsIGZvcm1lZCBieSBhIG11bHRpcGxl
IG9mIHRoZSBjb2VmZmljaWVudCB0aGF0IGZvbGxvd3MgaXQuCitUaGUgZGVjb2RlciBtdXN0IHVu
ZG8gdGhpcyBwcm9jZXNzLgorPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfcHJlZF93ZWlnaHRzIi8+
IGNvbnRhaW5zIGxpc3RzIG9mIHByZWRpY3Rpb24gd2VpZ2h0cworIGZvciBlYWNoIGNvZWZmaWNp
ZW50LgorVGhlcmUgYXJlIHR3byBsaXN0cyBmb3IgTkIgYW5kIE1CLCBhbmQgYW5vdGhlciB0d28g
bGlzdHMgZm9yIFdCLCBnaXZpbmcgdHdvCisgcG9zc2libGUgcHJlZGljdGlvbiB3ZWlnaHRzIGZv
ciBlYWNoIGNvZWZmaWNpZW50LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNm
X3ByZWRfd2VpZ2h0cyIKKyB0aXRsZT0iUHJlZGljdGlvbiBXZWlnaHRzIGZvciBOb3JtYWxpemVk
IExTRiBEZWNvZGluZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPkNvZWZmaWNpZW50PC90dGNvbD4K
Kzx0dGNvbCBhbGlnbj0icmlnaHQiPkE8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+Qjwv
dHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5DPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmln
aHQiPkQ8L3R0Y29sPgorIDxjPjA8L2M+IDxjPjE3OTwvYz4gPGM+MTE2PC9jPiA8Yz4xNzU8L2M+
ICA8Yz42ODwvYz4KKyA8Yz4xPC9jPiA8Yz4xMzg8L2M+ICA8Yz42NzwvYz4gPGM+MTQ4PC9jPiAg
PGM+NjI8L2M+CisgPGM+MjwvYz4gPGM+MTQwPC9jPiAgPGM+ODI8L2M+IDxjPjE2MDwvYz4gIDxj
PjY2PC9jPgorIDxjPjM8L2M+IDxjPjE0ODwvYz4gIDxjPjU5PC9jPiA8Yz4xNzY8L2M+ICA8Yz42
MDwvYz4KKyA8Yz40PC9jPiA8Yz4xNTE8L2M+ICA8Yz45MjwvYz4gPGM+MTc4PC9jPiAgPGM+NzI8
L2M+CisgPGM+NTwvYz4gPGM+MTQ5PC9jPiAgPGM+NzI8L2M+IDxjPjE3MzwvYz4gPGM+MTE3PC9j
PgorIDxjPjY8L2M+IDxjPjE1MzwvYz4gPGM+MTAwPC9jPiA8Yz4xNzQ8L2M+ICA8Yz44NTwvYz4K
KyA8Yz43PC9jPiA8Yz4xNTE8L2M+ICA8Yz44OTwvYz4gPGM+MTY0PC9jPiAgPGM+OTA8L2M+Cisg
PGM+ODwvYz4gPGM+MTYzPC9jPiAgPGM+OTI8L2M+IDxjPjE3NzwvYz4gPGM+MTE4PC9jPgorIDxj
Pjk8L2M+IDxjLz4gICAgICAgIDxjLz4gICAgICA8Yz4xNzQ8L2M+IDxjPjEzNjwvYz4KKzxjPjEw
PC9jPiA8Yy8+ICAgICAgICA8Yy8+ICAgICAgPGM+MTk2PC9jPiA8Yz4xNTE8L2M+Cis8Yz4xMTwv
Yz4gPGMvPiAgICAgICAgPGMvPiAgICAgIDxjPjE4MjwvYz4gPGM+MTQyPC9jPgorPGM+MTI8L2M+
IDxjLz4gICAgICAgIDxjLz4gICAgICA8Yz4xOTg8L2M+IDxjPjE2MDwvYz4KKzxjPjEzPC9jPiA8
Yy8+ICAgICAgICA8Yy8+ICAgICAgPGM+MTkyPC9jPiA8Yz4xNDI8L2M+Cis8Yz4xNDwvYz4gPGMv
PiAgICAgICAgPGMvPiAgICAgIDxjPjE4MjwvYz4gPGM+MTU1PC9jPgorPC90ZXh0dGFibGU+CisK
Kzx0PgorVGhlIHByZWRpY3Rpb24gaXMgdW5kb25lIHVzaW5nIHRoZSBwcm9jZWR1cmUgaW1wbGVt
ZW50ZWQgaW4KKyBzaWxrX05MU0ZfcmVzaWR1YWxfZGVxdWFudCgpIChOTFNGX2RlY29kZS5jKSwg
d2hpY2ggaXMgYXMgZm9sbG93cy4KK0VhY2ggY29lZmZpY2llbnQgc2VsZWN0cyBpdHMgcHJlZGlj
dGlvbiB3ZWlnaHQgZnJvbSBvbmUgb2YgdGhlIHR3byBsaXN0cyBiYXNlZAorIG9uIHRoZSBzdGFn
ZS0xIGluZGV4LCBJMS4KKzx4cmVmIHRhcmdldD0ic2lsa19ubHNmX25ibWJfd2VpZ2h0X3NlbCIv
PiBnaXZlcyB0aGUgc2VsZWN0aW9ucyBmb3IgZWFjaAorIGNvZWZmaWNpZW50IGZvciBOQiBhbmQg
TUIsIGFuZCA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl93Yl93ZWlnaHRfc2VsIi8+IGdpdmVzCisg
dGhlIHNlbGVjdGlvbnMgZm9yIFdCLgorTGV0IGRfTFBDIGJlIHRoZSBvcmRlciBvZiB0aGUgY29k
ZWJvb2ssIGkuZS4sIDEwIGZvciBOQiBhbmQgTUIsIGFuZCAxNiBmb3IgV0IsCisgYW5kIGxldCBw
cmVkX1E4W2tdIGJlIHRoZSB3ZWlnaHQgZm9yIHRoZSBrJ3RoIGNvZWZmaWNpZW50IHNlbGVjdGVk
IGJ5IHRoaXMKKyBwcm9jZXNzIGZvciAwJm5ic3A7Jmx0Oz0mbmJzcDtrJm5ic3A7Jmx0OyZuYnNw
O2RfTFBDLTEuCitUaGVuLCB0aGUgc3RhZ2UtMiByZXNpZHVhbCBmb3IgZWFjaCBjb2VmZmljaWVu
dCBpcyBjb21wdXRlZCB2aWEKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGln
bj0iY2VudGVyIj48IVtDREFUQVsKK3Jlc19RMTBba10gPSAoaysxIDwgZF9MUEMgPyAocmVzX1Ex
MFtrKzFdKnByZWRfUThba10pPj44IDogMCkKKyAgICAgICAgICAgICArICgoKChJMltrXTw8MTAp
IC0gc2lnbihJMltrXSkqMTAyKSpxc3RlcCk+PjE2KSAsCitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KKyB3aGVyZSBxc3RlcCBpcyB0aGUgUTE2IHF1YW50aXphdGlvbiBzdGVwIHNpemUsIHdoaWNo
IGlzIDExNzk2IGZvciBOQiBhbmQgTUIKKyBhbmQgOTgzMCBmb3IgV0IgKHJlcHJlc2VudGluZyBz
dGVwIHNpemVzIG9mIGFwcHJveGltYXRlbHkgMC4xOCBhbmQgMC4xNSwKKyByZXNwZWN0aXZlbHkp
LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNmX25ibWJfd2VpZ2h0X3NlbCIK
KyB0aXRsZT0iUHJlZGljdGlvbiBXZWlnaHQgU2VsZWN0aW9uIGZvciBOQi9NQiBOb3JtYWxpemVk
IExTRiBEZWNvZGluZyI+Cis8dHRjb2w+STE8L3R0Y29sPgorPHR0Y29sPkNvZWZmaWNpZW50PC90
dGNvbD4KKzxjLz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjAmbmJzcDsxJm5ic3A7MiZuYnNw
OzMmbmJzcDs0Jm5ic3A7NSZuYnNwOzYmbmJzcDs3Jm5ic3A7ODwvc3Bhbng+PC9jPgorPGM+IDA8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5ic3A7
QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPiAxPC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+QiZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtB
Jm5ic3A7QSZuYnNwO0EmbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4gMjwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPkEmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0Em
bmJzcDtBJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+IDM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj5CJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QiZu
YnNwO0E8L3NwYW54PjwvYz4KKzxjPiA0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZu
YnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBPC9z
cGFueD48L2M+Cis8Yz4gNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtCJm5i
c3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QTwvc3Bhbng+PC9j
PgorPGM+IDY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5CJm5ic3A7QSZuYnNwO0ImbmJz
cDtCJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPiA3
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNw
O0EmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4gODwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7
QiZuYnNwO0EmbmJzcDtCJm5ic3A7Qjwvc3Bhbng+PC9jPgorPGM+IDk8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0EmbmJzcDtC
Jm5ic3A7QiZuYnNwO0I8L3NwYW54PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0Em
bmJzcDtBPC9zcGFueD48L2M+Cis8Yz4xMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEm
bmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QTwv
c3Bhbng+PC9jPgorPGM+MTI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZu
YnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0E8L3NwYW54Pjwv
Yz4KKzxjPjEzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtCJm5i
c3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4x
NDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkImbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJz
cDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7Qjwvc3Bhbng+PC9jPgorPGM+MTU8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNw
O0ImbmJzcDtBJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjE2PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7
QSZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4xNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPkEmbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtC
Jm5ic3A7Qjwvc3Bhbng+PC9jPgorPGM+MTg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5B
Jm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0E8
L3NwYW54PjwvYz4KKzxjPjE5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0Em
bmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtBPC9zcGFueD48
L2M+Cis8Yz4yMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7QiZu
YnNwO0EmbmJzcDtBJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+
MjE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5i
c3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjIyPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJz
cDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtCPC9zcGFueD48L2M+Cis8Yz4yMzwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNw
O0EmbmJzcDtCJm5ic3A7Qjwvc3Bhbng+PC9jPgorPGM+MjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj5BJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7
QiZuYnNwO0I8L3NwYW54PjwvYz4KKzxjPjI1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtB
PC9zcGFueD48L2M+Cis8Yz4yNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtB
Jm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QTwvc3Bhbng+
PC9jPgorPGM+Mjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNwO0Em
bmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0E8L3NwYW54PjwvYz4KKzxj
PjI4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtCJm5ic3A7QSZu
YnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4yOTwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkImbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtBJm5i
c3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+MzA8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJz
cDtCJm5ic3A7QSZuYnNwO0I8L3NwYW54PjwvYz4KKzxjPjMxPC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+QiZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNw
O0ImbmJzcDtCPC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9
InNpbGtfbmxzZl93Yl93ZWlnaHRfc2VsIgorIHRpdGxlPSJQcmVkaWN0aW9uIFdlaWdodCBTZWxl
Y3Rpb24gZm9yIFdCIE5vcm1hbGl6ZWQgTFNGIERlY29kaW5nIj4KKzx0dGNvbD5JMTwvdHRjb2w+
Cis8dHRjb2w+Q29lZmZpY2llbnQ8L3R0Y29sPgorPGMvPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzQm
bmJzcDsmbmJzcDs1Jm5ic3A7Jm5ic3A7NiZuYnNwOyZuYnNwOzcmbmJzcDsmbmJzcDs4Jm5ic3A7
Jm5ic3A7OSZuYnNwOzEwJm5ic3A7MTEmbmJzcDsxMiZuYnNwOzEzJm5ic3A7MTQ8L3NwYW54Pjwv
Yz4KKzxjPiAwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEPC9zcGFu
eD48L2M+Cis8Yz4gMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwv
c3Bhbng+PC9jPgorPGM+IDI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Qm
bmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0M8L3NwYW54PjwvYz4KKzxjPiAzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDPC9zcGFueD48L2M+Cis8Yz4gNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMm
bmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5i
c3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+IDU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPiA2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0QmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4gNzwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7RDwvc3Bhbng+PC9jPgorPGM+IDg8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPiA5PC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4xMDwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MTE8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPjEy
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8
Yz4xMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9j
PgorPGM+MTQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7RCZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Q8L3NwYW54
PjwvYz4KKzxjPjE1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDPC9z
cGFueD48L2M+Cis8Yz4xNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJz
cDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
Qzwvc3Bhbng+PC9jPgorPGM+MTc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0M8L3NwYW54PjwvYz4KKzxjPjE4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4xOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPjIxPC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNw
OyZuYnNwO0QmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4yMjwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJz
cDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Qm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MjM8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPjI0PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4yNTwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RDwvc3Bhbng+PC9jPgorPGM+MjY8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Qm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxj
PjI3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEPC9zcGFueD48L2M+
Cis8Yz4yODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RDwvc3Bhbng+
PC9jPgorPGM+Mjk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Q8L3Nw
YW54PjwvYz4KKzxjPjMwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+RCZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
PC9zcGFueD48L2M+Cis8Yz4zMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7Qzwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
YW5jaG9yPSJzaWxrX25sc2ZfcmVjb25zdHJ1Y3Rpb24iCisgdGl0bGU9IlJlY29uc3RydWN0aW5n
IHRoZSBOb3JtYWxpemVkIExTRiBDb2VmZmljaWVudHMiPgorPHQ+CitPbmNlIHRoZSBzdGFnZS0x
IGluZGV4IEkxIGFuZCB0aGUgc3RhZ2UtMiByZXNpZHVhbCByZXNfUTEwW10gaGF2ZSBiZWVuIGRl
Y29kZWQsCisgdGhlIGZpbmFsIG5vcm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50cyBjYW4gYmUgcmVj
b25zdHJ1Y3RlZC4KKzwvdD4KKzx0PgorVGhlIHNwZWN0cmFsIGRpc3RvcnRpb24gaW50cm9kdWNl
ZCBieSB0aGUgcXVhbnRpemF0aW9uIG9mIGVhY2ggTFNGIGNvZWZmaWNpZW50CisgdmFyaWVzLCBz
byB0aGUgc3RhZ2UtMiByZXNpZHVhbCBpcyB3ZWlnaHRlZCBhY2NvcmRpbmdseSwgdXNpbmcgdGhl
CisgbG93LWNvbXBsZXhpdHkgSW52ZXJzZSBIYXJtb25pYyBNZWFuIFdlaWdodGluZyAoSUhNVykg
ZnVuY3Rpb24gcHJvcG9zZWQgaW4KKyA8eHJlZiB0YXJnZXQ9Imxhcm9pYS1pY2Fzc3AiLz4uCitU
aGUgd2VpZ2h0cyBhcmUgZGVyaXZlZCBkaXJlY3RseSBmcm9tIHRoZSBzdGFnZS0xIGNvZGVib29r
IHZlY3Rvci4KK0xldCBjYjFfUThba10gYmUgdGhlIGsndGggZW50cnkgb2YgdGhlIHN0YWdlLTEg
Y29kZWJvb2sgdmVjdG9yIGZyb20KKyA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9uYm1iX2NvZGVi
b29rIi8+IG9yCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zfd2JfY29kZWJvb2siLz4uCitUaGVu
IGZvciAwJm5ic3A7Jmx0Oz0mbmJzcDtrJm5ic3A7Jmx0OyZuYnNwO2RfTFBDIHRoZSBmb2xsb3dp
bmcgZXhwcmVzc2lvbgorIGNvbXB1dGVzIHRoZSBzcXVhcmUgb2YgdGhlIHdlaWdodCBhcyBhIFEx
OCB2YWx1ZToKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij4KKzwhW0NEQVRBWwordzJfUTE4W2tdID0gKDEwMjQvKGNiMV9ROFtrXSAtIGNiMV9ROFtrLTFd
KQorICAgICAgICAgICAgICsgMTAyNC8oY2IxX1E4W2srMV0gLSBjYjFfUThba10pKSA8PCAxNiAs
CitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdoZXJlIGNiMV9ROFstMV0mbmJzcDs9Jm5i
c3A7MCBhbmQgY2IxX1E4W2RfTFBDXSZuYnNwOz0mbmJzcDsyNTYsIGFuZCB0aGUKKyBkaXZpc2lv
biBpcyBpbnRlZ2VyIGRpdmlzaW9uLgorVGhpcyBpcyByZWR1Y2VkIHRvIGFuIHVuc3F1YXJlZCwg
UTkgdmFsdWUgdXNpbmcgdGhlIGZvbGxvd2luZyBzcXVhcmUtcm9vdAorIGFwcHJveGltYXRpb246
Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RB
VEFbCitpID0gaWxvZyh3Ml9RMThba10pCitmID0gKHcyX1ExOFtrXT4+KGktOCkpICYgMTI3Cit5
ID0gKChpJjEpID8gMzI3NjggOiA0NjIxNCkgPj4gKCgzMi1pKT4+MSkKK3dfUTlba10gPSB5ICsg
KCgyMTMqZip5KT4+MTYpCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBjb25zdGFudCA0
NjIxNCBoZXJlIGlzIGFwcHJveGltYXRlbHkgdGhlIHNxdWFyZSByb290IG9mIDIgaW4gUTE1Lgor
VGhlIGNiMV9ROFtdIHZlY3RvciBjb21wbGV0ZWx5IGRldGVybWluZXMgdGhlc2Ugd2VpZ2h0cywg
YW5kIHRoZXkgbWF5IGJlCisgdGFidWxhdGVkIGFuZCBzdG9yZWQgYXMgMTMtYml0IHVuc2lnbmVk
IHZhbHVlcyAod2l0aCBhIHJhbmdlIG9mIDE4MTkgdG8gNTIyNywKKyBpbmNsdXNpdmUpIHRvIGF2
b2lkIGNvbXB1dGluZyB0aGVtIHdoZW4gZGVjb2RpbmcuCitUaGUgcmVmZXJlbmNlIGltcGxlbWVu
dGF0aW9uIGFscmVhZHkgcmVxdWlyZXMgY29kZSB0byBjb21wdXRlIHRoZXNlIHdlaWdodHMgb24K
KyB1bnF1YW50aXplZCBjb2VmZmljaWVudHMgaW4gdGhlIGVuY29kZXIsIGluIHNpbGtfTkxTRl9W
UV93ZWlnaHRzX2xhcm9pYSgpCisgKE5MU0ZfVlFfd2VpZ2h0c19sYXJvaWEuYykgYW5kIGl0cyBj
YWxsZXJzLCBzbyBpdCByZXVzZXMgdGhhdCBjb2RlIGluIHRoZQorIGRlY29kZXIgaW5zdGVhZCBv
ZiB1c2luZyBhIHByZS1jb21wdXRlZCB0YWJsZSB0byByZWR1Y2UgdGhlIGFtb3VudCBvZiBST00K
KyByZXF1aXJlZC4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl9uYm1iX2Nv
ZGVib29rIgorICAgICAgICAgICB0aXRsZT0iTkIvTUIgTm9ybWFsaXplZCBMU0YgU3RhZ2UtMSBD
b2RlYm9vayBWZWN0b3JzIj4KKzx0dGNvbD5JMTwvdHRjb2w+Cis8dHRjb2w+Q29kZWJvb2sgKFE4
KTwvdHRjb2w+Cis8Yy8+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5i
c3A7Jm5ic3A7MSZuYnNwOyZuYnNwOyZuYnNwOzImbmJzcDsmbmJzcDsmbmJzcDszJm5ic3A7Jm5i
c3A7Jm5ic3A7NCZuYnNwOyZuYnNwOyZuYnNwOzUmbmJzcDsmbmJzcDsmbmJzcDs2Jm5ic3A7Jm5i
c3A7Jm5ic3A7NyZuYnNwOyZuYnNwOyZuYnNwOzgmbmJzcDsmbmJzcDsmbmJzcDs5PC9zcGFueD48
L2M+Cis8Yz4wPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTImbmJzcDsmbmJzcDszNSZu
YnNwOyZuYnNwOzYwJm5ic3A7Jm5ic3A7ODMmbmJzcDsxMDgmbmJzcDsxMzImbmJzcDsxNTcmbmJz
cDsxODAmbmJzcDsyMDYmbmJzcDsyMjg8L3NwYW54PjwvYz4KKzxjPjE8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4xNSZuYnNwOyZuYnNwOzMyJm5ic3A7Jm5ic3A7NTUmbmJzcDsmbmJzcDs3
NyZuYnNwOzEwMSZuYnNwOzEyNSZuYnNwOzE1MSZuYnNwOzE3NSZuYnNwOzIwMSZuYnNwOzIyNTwv
c3Bhbng+PC9jPgorPGM+MjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE5Jm5ic3A7Jm5i
c3A7NDImbmJzcDsmbmJzcDs2NiZuYnNwOyZuYnNwOzg5Jm5ic3A7MTE0Jm5ic3A7MTM3Jm5ic3A7
MTYyJm5ic3A7MTg0Jm5ic3A7MjA5Jm5ic3A7MjMwPC9zcGFueD48L2M+Cis8Yz4zPC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTImbmJzcDsmbmJzcDsyNSZuYnNwOyZuYnNwOzUwJm5ic3A7
Jm5ic3A7NzImbmJzcDsmbmJzcDs5NyZuYnNwOzEyMCZuYnNwOzE0NyZuYnNwOzE3MiZuYnNwOzIw
MCZuYnNwOzIyMzwvc3Bhbng+PC9jPgorPGM+NDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PjI2Jm5ic3A7Jm5ic3A7NDQmbmJzcDsmbmJzcDs2OSZuYnNwOyZuYnNwOzkwJm5ic3A7MTE0Jm5i
c3A7MTM1Jm5ic3A7MTU5Jm5ic3A7MTgwJm5ic3A7MjA1Jm5ic3A7MjI1PC9zcGFueD48L2M+Cis8
Yz41PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTMmbmJzcDsmbmJzcDsyMiZuYnNwOyZu
YnNwOzUzJm5ic3A7Jm5ic3A7ODAmbmJzcDsxMDYmbmJzcDsxMzAmbmJzcDsxNTYmbmJzcDsxODAm
bmJzcDsyMDUmbmJzcDsyMjg8L3NwYW54PjwvYz4KKzxjPjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4xNSZuYnNwOyZuYnNwOzI1Jm5ic3A7Jm5ic3A7NDQmbmJzcDsmbmJzcDs2NCZuYnNw
OyZuYnNwOzkwJm5ic3A7MTE1Jm5ic3A7MTQyJm5ic3A7MTY4Jm5ic3A7MTk2Jm5ic3A7MjIyPC9z
cGFueD48L2M+Cis8Yz43PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTkmbmJzcDsmbmJz
cDsyNCZuYnNwOyZuYnNwOzYyJm5ic3A7Jm5ic3A7ODImbmJzcDsxMDAmbmJzcDsxMjAmbmJzcDsx
NDUmbmJzcDsxNjgmbmJzcDsxOTAmbmJzcDsyMTQ8L3NwYW54PjwvYz4KKzxjPjg8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4yMiZuYnNwOyZuYnNwOzMxJm5ic3A7Jm5ic3A7NTAmbmJzcDsm
bmJzcDs3OSZuYnNwOzEwMyZuYnNwOzEyMCZuYnNwOzE1MSZuYnNwOzE3MCZuYnNwOzIwMyZuYnNw
OzIyNzwvc3Bhbng+PC9jPgorPGM+OTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjIxJm5i
c3A7Jm5ic3A7MjkmbmJzcDsmbmJzcDs0NSZuYnNwOyZuYnNwOzY1Jm5ic3A7MTA2Jm5ic3A7MTI0
Jm5ic3A7MTUwJm5ic3A7MTcxJm5ic3A7MTk2Jm5ic3A7MjI0PC9zcGFueD48L2M+Cis8Yz4xMDwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjMwJm5ic3A7Jm5ic3A7NDkmbmJzcDsmbmJzcDs3
NSZuYnNwOyZuYnNwOzk3Jm5ic3A7MTIxJm5ic3A7MTQyJm5ic3A7MTY1Jm5ic3A7MTg2Jm5ic3A7
MjA5Jm5ic3A7MjI5PC9zcGFueD48L2M+Cis8Yz4xMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPjE5Jm5ic3A7Jm5ic3A7MjUmbmJzcDsmbmJzcDs1MiZuYnNwOyZuYnNwOzcwJm5ic3A7Jm5i
c3A7OTMmbmJzcDsxMTYmbmJzcDsxNDMmbmJzcDsxNjYmbmJzcDsxOTImbmJzcDsyMTk8L3NwYW54
PjwvYz4KKzxjPjEyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjYmbmJzcDsmbmJzcDsz
NCZuYnNwOyZuYnNwOzYyJm5ic3A7Jm5ic3A7NzUmbmJzcDsmbmJzcDs5NyZuYnNwOzExOCZuYnNw
OzE0NSZuYnNwOzE2NyZuYnNwOzE5NCZuYnNwOzIxNzwvc3Bhbng+PC9jPgorPGM+MTM8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yNSZuYnNwOyZuYnNwOzMzJm5ic3A7Jm5ic3A7NTYmbmJz
cDsmbmJzcDs3MCZuYnNwOyZuYnNwOzkxJm5ic3A7MTEzJm5ic3A7MTQzJm5ic3A7MTY1Jm5ic3A7
MTk2Jm5ic3A7MjIzPC9zcGFueD48L2M+Cis8Yz4xNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPjIxJm5ic3A7Jm5ic3A7MzQmbmJzcDsmbmJzcDs1MSZuYnNwOyZuYnNwOzcyJm5ic3A7Jm5i
c3A7OTcmbmJzcDsxMTcmbmJzcDsxNDUmbmJzcDsxNzEmbmJzcDsxOTYmbmJzcDsyMjI8L3NwYW54
PjwvYz4KKzxjPjE1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjAmbmJzcDsmbmJzcDsy
OSZuYnNwOyZuYnNwOzUwJm5ic3A7Jm5ic3A7NjcmbmJzcDsmbmJzcDs5MCZuYnNwOzExNyZuYnNw
OzE0NCZuYnNwOzE2OCZuYnNwOzE5NyZuYnNwOzIyMTwvc3Bhbng+PC9jPgorPGM+MTY8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yMiZuYnNwOyZuYnNwOzMxJm5ic3A7Jm5ic3A7NDgmbmJz
cDsmbmJzcDs2NiZuYnNwOyZuYnNwOzk1Jm5ic3A7MTE3Jm5ic3A7MTQ2Jm5ic3A7MTY4Jm5ic3A7
MTk2Jm5ic3A7MjIyPC9zcGFueD48L2M+Cis8Yz4xNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPjI0Jm5ic3A7Jm5ic3A7MzMmbmJzcDsmbmJzcDs1MSZuYnNwOyZuYnNwOzc3Jm5ic3A7MTE2
Jm5ic3A7MTM0Jm5ic3A7MTU4Jm5ic3A7MTgwJm5ic3A7MjAwJm5ic3A7MjI0PC9zcGFueD48L2M+
Cis8Yz4xODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjIxJm5ic3A7Jm5ic3A7MjgmbmJz
cDsmbmJzcDs3MCZuYnNwOyZuYnNwOzg3Jm5ic3A7MTA2Jm5ic3A7MTI0Jm5ic3A7MTQ5Jm5ic3A7
MTcwJm5ic3A7MTk0Jm5ic3A7MjE3PC9zcGFueD48L2M+Cis8Yz4xOTwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPjI2Jm5ic3A7Jm5ic3A7MzMmbmJzcDsmbmJzcDs1MyZuYnNwOyZuYnNwOzY0
Jm5ic3A7Jm5ic3A7ODMmbmJzcDsxMTcmbmJzcDsxNTImbmJzcDsxNzMmbmJzcDsyMDQmbmJzcDsy
MjU8L3NwYW54PjwvYz4KKzxjPjIwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjcmbmJz
cDsmbmJzcDszNCZuYnNwOyZuYnNwOzY1Jm5ic3A7Jm5ic3A7OTUmbmJzcDsxMDgmbmJzcDsxMjkm
bmJzcDsxNTUmbmJzcDsxNzQmbmJzcDsyMTAmbmJzcDsyMjU8L3NwYW54PjwvYz4KKzxjPjIxPC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjAmbmJzcDsmbmJzcDsyNiZuYnNwOyZuYnNwOzcy
Jm5ic3A7Jm5ic3A7OTkmbmJzcDsxMTMmbmJzcDsxMzEmbmJzcDsxNTQmbmJzcDsxNzYmbmJzcDsy
MDAmbmJzcDsyMTk8L3NwYW54PjwvYz4KKzxjPjIyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+MzQmbmJzcDsmbmJzcDs0MyZuYnNwOyZuYnNwOzYxJm5ic3A7Jm5ic3A7NzgmbmJzcDsmbmJz
cDs5MyZuYnNwOzExNCZuYnNwOzE1NSZuYnNwOzE3NyZuYnNwOzIwNSZuYnNwOzIyOTwvc3Bhbng+
PC9jPgorPGM+MjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yMyZuYnNwOyZuYnNwOzI5
Jm5ic3A7Jm5ic3A7NTQmbmJzcDsmbmJzcDs5NyZuYnNwOzEyNCZuYnNwOzEzOCZuYnNwOzE2MyZu
YnNwOzE3OSZuYnNwOzIwOSZuYnNwOzIyOTwvc3Bhbng+PC9jPgorPGM+MjQ8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4zMCZuYnNwOyZuYnNwOzM4Jm5ic3A7Jm5ic3A7NTYmbmJzcDsmbmJz
cDs4OSZuYnNwOzExOCZuYnNwOzEyOSZuYnNwOzE1OCZuYnNwOzE3OCZuYnNwOzIwMCZuYnNwOzIz
MTwvc3Bhbng+PC9jPgorPGM+MjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yMSZuYnNw
OyZuYnNwOzI5Jm5ic3A7Jm5ic3A7NDkmbmJzcDsmbmJzcDs2MyZuYnNwOyZuYnNwOzg1Jm5ic3A7
MTExJm5ic3A7MTQyJm5ic3A7MTYzJm5ic3A7MTkzJm5ic3A7MjIyPC9zcGFueD48L2M+Cis8Yz4y
NjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjI3Jm5ic3A7Jm5ic3A7NDgmbmJzcDsmbmJz
cDs3NyZuYnNwOzEwMyZuYnNwOzEzMyZuYnNwOzE1OCZuYnNwOzE3OSZuYnNwOzE5NiZuYnNwOzIx
NSZuYnNwOzIzMjwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4yOSZuYnNwOyZuYnNwOzQ3Jm5ic3A7Jm5ic3A7NzQmbmJzcDsmbmJzcDs5OSZuYnNwOzEyNCZu
YnNwOzE1MSZuYnNwOzE3NiZuYnNwOzE5OCZuYnNwOzIyMCZuYnNwOzIzNzwvc3Bhbng+PC9jPgor
PGM+Mjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4zMyZuYnNwOyZuYnNwOzQyJm5ic3A7
Jm5ic3A7NjEmbmJzcDsmbmJzcDs3NiZuYnNwOyZuYnNwOzkzJm5ic3A7MTIxJm5ic3A7MTU1Jm5i
c3A7MTc0Jm5ic3A7MjA3Jm5ic3A7MjI1PC9zcGFueD48L2M+Cis8Yz4yOTwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPjI5Jm5ic3A7Jm5ic3A7NTMmbmJzcDsmbmJzcDs4NyZuYnNwOzExMiZu
YnNwOzEzNiZuYnNwOzE1NCZuYnNwOzE3MCZuYnNwOzE4OCZuYnNwOzIwOCZuYnNwOzIyNzwvc3Bh
bng+PC9jPgorPGM+MzA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yNCZuYnNwOyZuYnNw
OzMwJm5ic3A7Jm5ic3A7NTImbmJzcDsmbmJzcDs4NCZuYnNwOzEzMSZuYnNwOzE1MCZuYnNwOzE2
NiZuYnNwOzE4NiZuYnNwOzIwMyZuYnNwOzIyOTwvc3Bhbng+PC9jPgorPGM+MzE8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4zNyZuYnNwOyZuYnNwOzQ4Jm5ic3A7Jm5ic3A7NjQmbmJzcDsm
bmJzcDs4NCZuYnNwOzEwNCZuYnNwOzExOCZuYnNwOzE1NiZuYnNwOzE3NyZuYnNwOzIwMSZuYnNw
OzIzMDwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxr
X25sc2Zfd2JfY29kZWJvb2siCisgICAgICAgICAgIHRpdGxlPSJXQiBOb3JtYWxpemVkIExTRiBT
dGFnZS0xIENvZGVib29rIFZlY3RvcnMiPgorPHR0Y29sPkkxPC90dGNvbD4KKzx0dGNvbD5Db2Rl
Ym9vayAoUTgpPC90dGNvbD4KKzxjLz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAm
bmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOzMmbmJzcDsmbmJzcDs0Jm5ic3A7
Jm5ic3A7Jm5ic3A7NSZuYnNwOyZuYnNwOyZuYnNwOzYmbmJzcDsmbmJzcDsmbmJzcDs3Jm5ic3A7
Jm5ic3A7Jm5ic3A7OCZuYnNwOyZuYnNwOyZuYnNwOzkmbmJzcDsmbmJzcDsxMCZuYnNwOyZuYnNw
OzExJm5ic3A7Jm5ic3A7MTImbmJzcDsmbmJzcDsxMyZuYnNwOyZuYnNwOzE0Jm5ic3A7Jm5ic3A7
MTU8L3NwYW54PjwvYz4KKzxjPjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs3
Jm5ic3A7MjMmbmJzcDszOCZuYnNwOzU0Jm5ic3A7NjkmbmJzcDsmbmJzcDs4NSZuYnNwOzEwMCZu
YnNwOzExNiZuYnNwOzEzMSZuYnNwOzE0NyZuYnNwOzE2MiZuYnNwOzE3OCZuYnNwOzE5MyZuYnNw
OzIwOCZuYnNwOzIyMyZuYnNwOzIzOTwvc3Bhbng+PC9jPgorPGM+MTwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPjEzJm5ic3A7MjUmbmJzcDs0MSZuYnNwOzU1Jm5ic3A7NjkmbmJzcDsmbmJz
cDs4MyZuYnNwOyZuYnNwOzk4Jm5ic3A7MTEyJm5ic3A7MTI3Jm5ic3A7MTQyJm5ic3A7MTU3Jm5i
c3A7MTcxJm5ic3A7MTg3Jm5ic3A7MjAzJm5ic3A7MjIwJm5ic3A7MjM2PC9zcGFueD48L2M+Cis8
Yz4yPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTUmbmJzcDsyMSZuYnNwOzM0Jm5ic3A7
NTEmbmJzcDs2MSZuYnNwOyZuYnNwOzc4Jm5ic3A7Jm5ic3A7OTImbmJzcDsxMDYmbmJzcDsxMjYm
bmJzcDsxMzYmbmJzcDsxNTImbmJzcDsxNjcmbmJzcDsxODUmbmJzcDsyMDUmbmJzcDsyMjUmbmJz
cDsyNDA8L3NwYW54PjwvYz4KKzxjPjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xMCZu
YnNwOzIxJm5ic3A7MzYmbmJzcDs1MCZuYnNwOzYzJm5ic3A7Jm5ic3A7NzkmbmJzcDsmbmJzcDs5
NSZuYnNwOzExMCZuYnNwOzEyNiZuYnNwOzE0MSZuYnNwOzE1NyZuYnNwOzE3MyZuYnNwOzE4OSZu
YnNwOzIwNSZuYnNwOzIyMSZuYnNwOzIzNzwvc3Bhbng+PC9jPgorPGM+NDwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPjE3Jm5ic3A7MjAmbmJzcDszNyZuYnNwOzUxJm5ic3A7NTkmbmJzcDsm
bmJzcDs3OCZuYnNwOyZuYnNwOzg5Jm5ic3A7MTA3Jm5ic3A7MTIzJm5ic3A7MTM0Jm5ic3A7MTUw
Jm5ic3A7MTY0Jm5ic3A7MTg0Jm5ic3A7MjA1Jm5ic3A7MjI0Jm5ic3A7MjQwPC9zcGFueD48L2M+
Cis8Yz41PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTAmbmJzcDsxNSZuYnNwOzMyJm5i
c3A7NTEmbmJzcDs2NyZuYnNwOyZuYnNwOzgxJm5ic3A7Jm5ic3A7OTYmbmJzcDsxMTImbmJzcDsx
MjkmbmJzcDsxNDImbmJzcDsxNTgmbmJzcDsxNzMmbmJzcDsxODkmbmJzcDsyMDQmbmJzcDsyMjAm
bmJzcDsyMzY8L3NwYW54PjwvYz4KKzxjPjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4m
bmJzcDs4Jm5ic3A7MjEmbmJzcDszNyZuYnNwOzUxJm5ic3A7NjUmbmJzcDsmbmJzcDs3OSZuYnNw
OyZuYnNwOzk4Jm5ic3A7MTEzJm5ic3A7MTI2Jm5ic3A7MTM4Jm5ic3A7MTU1Jm5ic3A7MTY4Jm5i
c3A7MTc5Jm5ic3A7MTkyJm5ic3A7MjA5Jm5ic3A7MjE4PC9zcGFueD48L2M+Cis8Yz43PC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTImbmJzcDsxNSZuYnNwOzM0Jm5ic3A7NTUmbmJzcDs2
MyZuYnNwOyZuYnNwOzc4Jm5ic3A7Jm5ic3A7ODcmbmJzcDsxMDgmbmJzcDsxMTgmbmJzcDsxMzEm
bmJzcDsxNDgmbmJzcDsxNjcmbmJzcDsxODUmbmJzcDsyMDMmbmJzcDsyMTkmbmJzcDsyMzY8L3Nw
YW54PjwvYz4KKzxjPjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNiZuYnNwOzE5Jm5i
c3A7MzImbmJzcDszNiZuYnNwOzU2Jm5ic3A7Jm5ic3A7NzkmbmJzcDsmbmJzcDs5MSZuYnNwOzEw
OCZuYnNwOzExOCZuYnNwOzEzNiZuYnNwOzE1NCZuYnNwOzE3MSZuYnNwOzE4NiZuYnNwOzIwNCZu
YnNwOzIyMCZuYnNwOzIzNzwvc3Bhbng+PC9jPgorPGM+OTwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPjExJm5ic3A7MjgmbmJzcDs0MyZuYnNwOzU4Jm5ic3A7NzQmbmJzcDsmbmJzcDs4OSZu
YnNwOzEwNSZuYnNwOzEyMCZuYnNwOzEzNSZuYnNwOzE1MCZuYnNwOzE2NSZuYnNwOzE4MCZuYnNw
OzE5NiZuYnNwOzIxMSZuYnNwOzIyNiZuYnNwOzI0MTwvc3Bhbng+PC9jPgorPGM+MTA8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs2Jm5ic3A7MTYmbmJzcDszMyZuYnNwOzQ2Jm5i
c3A7NjAmbmJzcDsmbmJzcDs3NSZuYnNwOyZuYnNwOzkyJm5ic3A7MTA3Jm5ic3A7MTIzJm5ic3A7
MTM3Jm5ic3A7MTU2Jm5ic3A7MTY5Jm5ic3A7MTg1Jm5ic3A7MTk5Jm5ic3A7MjE0Jm5ic3A7MjI1
PC9zcGFueD48L2M+Cis8Yz4xMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjExJm5ic3A7
MTkmbmJzcDszMCZuYnNwOzQ0Jm5ic3A7NTcmbmJzcDsmbmJzcDs3NCZuYnNwOyZuYnNwOzg5Jm5i
c3A7MTA1Jm5ic3A7MTIxJm5ic3A7MTM1Jm5ic3A7MTUyJm5ic3A7MTY5Jm5ic3A7MTg2Jm5ic3A7
MjAyJm5ic3A7MjE4Jm5ic3A7MjM0PC9zcGFueD48L2M+Cis8Yz4xMjwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPjEyJm5ic3A7MTkmbmJzcDsyOSZuYnNwOzQ2Jm5ic3A7NTcmbmJzcDsmbmJz
cDs3MSZuYnNwOyZuYnNwOzg4Jm5ic3A7MTAwJm5ic3A7MTIwJm5ic3A7MTMyJm5ic3A7MTQ4Jm5i
c3A7MTY1Jm5ic3A7MTgyJm5ic3A7MTk5Jm5ic3A7MjE2Jm5ic3A7MjMzPC9zcGFueD48L2M+Cis8
Yz4xMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE3Jm5ic3A7MjMmbmJzcDszNSZuYnNw
OzQ2Jm5ic3A7NTYmbmJzcDsmbmJzcDs3NyZuYnNwOyZuYnNwOzkyJm5ic3A7MTA2Jm5ic3A7MTIz
Jm5ic3A7MTM0Jm5ic3A7MTUyJm5ic3A7MTY3Jm5ic3A7MTg1Jm5ic3A7MjA0Jm5ic3A7MjIyJm5i
c3A7MjM3PC9zcGFueD48L2M+Cis8Yz4xNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE0
Jm5ic3A7MTcmbmJzcDs0NSZuYnNwOzUzJm5ic3A7NjMmbmJzcDsmbmJzcDs3NSZuYnNwOyZuYnNw
Ozg5Jm5ic3A7MTA3Jm5ic3A7MTE1Jm5ic3A7MTMyJm5ic3A7MTUxJm5ic3A7MTcxJm5ic3A7MTg4
Jm5ic3A7MjA2Jm5ic3A7MjIxJm5ic3A7MjQwPC9zcGFueD48L2M+Cis8Yz4xNTwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzkmbmJzcDsxNiZuYnNwOzI5Jm5ic3A7NDAmbmJzcDs1
NiZuYnNwOyZuYnNwOzcxJm5ic3A7Jm5ic3A7ODgmbmJzcDsxMDMmbmJzcDsxMTkmbmJzcDsxMzcm
bmJzcDsxNTQmbmJzcDsxNzEmbmJzcDsxODkmbmJzcDsyMDUmbmJzcDsyMjImbmJzcDsyMzc8L3Nw
YW54PjwvYz4KKzxjPjE2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTYmbmJzcDsxOSZu
YnNwOzM2Jm5ic3A7NDgmbmJzcDs1NyZuYnNwOyZuYnNwOzc2Jm5ic3A7Jm5ic3A7ODcmbmJzcDsx
MDUmbmJzcDsxMTgmbmJzcDsxMzImbmJzcDsxNTAmbmJzcDsxNjcmbmJzcDsxODUmbmJzcDsyMDIm
bmJzcDsyMTgmbmJzcDsyMzY8L3NwYW54PjwvYz4KKzxjPjE3PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+MTImbmJzcDsxNyZuYnNwOzI5Jm5ic3A7NTQmbmJzcDs3MSZuYnNwOyZuYnNwOzgx
Jm5ic3A7Jm5ic3A7OTQmbmJzcDsxMDQmbmJzcDsxMjYmbmJzcDsxMzYmbmJzcDsxNDkmbmJzcDsx
NjQmbmJzcDsxODImbmJzcDsyMDEmbmJzcDsyMjEmbmJzcDsyMzc8L3NwYW54PjwvYz4KKzxjPjE4
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTUmbmJzcDsyOCZuYnNwOzQ3Jm5ic3A7NjIm
bmJzcDs3OSZuYnNwOyZuYnNwOzk3Jm5ic3A7MTE1Jm5ic3A7MTI5Jm5ic3A7MTQyJm5ic3A7MTU1
Jm5ic3A7MTY4Jm5ic3A7MTgwJm5ic3A7MTk0Jm5ic3A7MjA4Jm5ic3A7MjIzJm5ic3A7MjM4PC9z
cGFueD48L2M+Cis8Yz4xOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzgmbmJz
cDsxNCZuYnNwOzMwJm5ic3A7NDUmbmJzcDs2MiZuYnNwOyZuYnNwOzc4Jm5ic3A7Jm5ic3A7OTQm
bmJzcDsxMTEmbmJzcDsxMjcmbmJzcDsxNDMmbmJzcDsxNTkmbmJzcDsxNzUmbmJzcDsxOTImbmJz
cDsyMDcmbmJzcDsyMjMmbmJzcDsyMzk8L3NwYW54PjwvYz4KKzxjPjIwPC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+MTcmbmJzcDszMCZuYnNwOzQ5Jm5ic3A7NjImbmJzcDs3OSZuYnNwOyZu
YnNwOzkyJm5ic3A7MTA3Jm5ic3A7MTE5Jm5ic3A7MTMyJm5ic3A7MTQ1Jm5ic3A7MTYwJm5ic3A7
MTc0Jm5ic3A7MTkwJm5ic3A7MjA0Jm5ic3A7MjIwJm5ic3A7MjM1PC9zcGFueD48L2M+Cis8Yz4y
MTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE0Jm5ic3A7MTkmbmJzcDszNiZuYnNwOzQ1
Jm5ic3A7NjEmbmJzcDsmbmJzcDs3NiZuYnNwOyZuYnNwOzkxJm5ic3A7MTA4Jm5ic3A7MTIxJm5i
c3A7MTM4Jm5ic3A7MTU0Jm5ic3A7MTcyJm5ic3A7MTg5Jm5ic3A7MjA1Jm5ic3A7MjIyJm5ic3A7
MjM4PC9zcGFueD48L2M+Cis8Yz4yMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjEyJm5i
c3A7MTgmbmJzcDszMSZuYnNwOzQ1Jm5ic3A7NjAmbmJzcDsmbmJzcDs3NiZuYnNwOyZuYnNwOzkx
Jm5ic3A7MTA3Jm5ic3A7MTIzJm5ic3A7MTM4Jm5ic3A7MTU0Jm5ic3A7MTcxJm5ic3A7MTg3Jm5i
c3A7MjA0Jm5ic3A7MjIxJm5ic3A7MjM2PC9zcGFueD48L2M+Cis8Yz4yMzwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPjEzJm5ic3A7MTcmbmJzcDszMSZuYnNwOzQzJm5ic3A7NTMmbmJzcDsm
bmJzcDs3MCZuYnNwOyZuYnNwOzgzJm5ic3A7MTAzJm5ic3A7MTE0Jm5ic3A7MTMxJm5ic3A7MTQ5
Jm5ic3A7MTY3Jm5ic3A7MTg1Jm5ic3A7MjAzJm5ic3A7MjIwJm5ic3A7MjM3PC9zcGFueD48L2M+
Cis8Yz4yNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE3Jm5ic3A7MjImbmJzcDszNSZu
YnNwOzQyJm5ic3A7NTgmbmJzcDsmbmJzcDs3OCZuYnNwOyZuYnNwOzkzJm5ic3A7MTEwJm5ic3A7
MTI1Jm5ic3A7MTM5Jm5ic3A7MTU1Jm5ic3A7MTcwJm5ic3A7MTg4Jm5ic3A7MjA2Jm5ic3A7MjI0
Jm5ic3A7MjQwPC9zcGFueD48L2M+Cis8Yz4yNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PiZuYnNwOzgmbmJzcDsxNSZuYnNwOzM0Jm5ic3A7NTAmbmJzcDs2NyZuYnNwOyZuYnNwOzgzJm5i
c3A7Jm5ic3A7OTkmbmJzcDsxMTUmbmJzcDsxMzEmbmJzcDsxNDYmbmJzcDsxNjImbmJzcDsxNzgm
bmJzcDsxOTMmbmJzcDsyMDkmbmJzcDsyMjQmbmJzcDsyMzk8L3NwYW54PjwvYz4KKzxjPjI2PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTMmbmJzcDsxNiZuYnNwOzQxJm5ic3A7NjYmbmJz
cDs3MyZuYnNwOyZuYnNwOzg2Jm5ic3A7Jm5ic3A7OTUmbmJzcDsxMTEmbmJzcDsxMjgmbmJzcDsx
MzcmbmJzcDsxNTAmbmJzcDsxNjMmbmJzcDsxODMmbmJzcDsyMDYmbmJzcDsyMjUmbmJzcDsyNDE8
L3NwYW54PjwvYz4KKzxjPjI3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTcmbmJzcDsy
NSZuYnNwOzM3Jm5ic3A7NTImbmJzcDs2MyZuYnNwOyZuYnNwOzc1Jm5ic3A7Jm5ic3A7OTImbmJz
cDsxMDImbmJzcDsxMTkmbmJzcDsxMzImbmJzcDsxNDQmbmJzcDsxNjAmbmJzcDsxNzUmbmJzcDsx
OTEmbmJzcDsyMTImbmJzcDsyMzE8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+MTkmbmJzcDszMSZuYnNwOzQ5Jm5ic3A7NjUmbmJzcDs4MyZuYnNwOzEwMCZu
YnNwOzExNyZuYnNwOzEzMyZuYnNwOzE0NyZuYnNwOzE2MSZuYnNwOzE3NCZuYnNwOzE4NyZuYnNw
OzIwMCZuYnNwOzIxMyZuYnNwOzIyNyZuYnNwOzI0Mjwvc3Bhbng+PC9jPgorPGM+Mjk8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xOCZuYnNwOzMxJm5ic3A7NTImbmJzcDs2OCZuYnNwOzg4
Jm5ic3A7MTAzJm5ic3A7MTE3Jm5ic3A7MTI2Jm5ic3A7MTM4Jm5ic3A7MTQ5Jm5ic3A7MTYzJm5i
c3A7MTc3Jm5ic3A7MTkyJm5ic3A7MjA3Jm5ic3A7MjIzJm5ic3A7MjM5PC9zcGFueD48L2M+Cis8
Yz4zMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE2Jm5ic3A7MjkmbmJzcDs0NyZuYnNw
OzYxJm5ic3A7NzYmbmJzcDsmbmJzcDs5MCZuYnNwOzEwNiZuYnNwOzExOSZuYnNwOzEzMyZuYnNw
OzE0NyZuYnNwOzE2MSZuYnNwOzE3NiZuYnNwOzE5MyZuYnNwOzIwOSZuYnNwOzIyNCZuYnNwOzI0
MDwvc3Bhbng+PC9jPgorPGM+MzE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNSZuYnNw
OzIxJm5ic3A7MzUmbmJzcDs1MCZuYnNwOzYxJm5ic3A7Jm5ic3A7NzMmbmJzcDsmbmJzcDs4NiZu
YnNwOyZuYnNwOzk3Jm5ic3A7MTEwJm5ic3A7MTE5Jm5ic3A7MTI5Jm5ic3A7MTQxJm5ic3A7MTc1
Jm5ic3A7MTk4Jm5ic3A7MjE4Jm5ic3A7MjM3PC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKwor
PHQ+CitHaXZlbiB0aGUgc3RhZ2UtMSBjb2RlYm9vayBlbnRyeSBjYjFfUThbXSwgdGhlIHN0YWdl
LTIgcmVzaWR1YWwgcmVzX1ExMFtdLCBhbmQKKyB0aGVpciBjb3JyZXNwb25kaW5nIHdlaWdodHMs
IHdfUTlbXSwgdGhlIHJlY29uc3RydWN0ZWQgbm9ybWFsaXplZCBMU0YKKyBjb2VmZmljaWVudHMg
YXJlCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFb
Q0RBVEFbCitOTFNGX1ExNVtrXSA9IGNsYW1wKDAsCisgICAgICAgICAgICAgICAoY2IxX1E4W2td
PDw3KSArIChyZXNfUTEwW2tdPDwxNCkvd19ROVtrXSwgMzI3NjcpICwKK11dPjwvYXJ0d29yaz4K
KzwvZmlndXJlPgorIHdoZXJlIHRoZSBkaXZpc2lvbiBpcyBpbnRlZ2VyIGRpdmlzaW9uLgorSG93
ZXZlciwgbm90aGluZyBpbiBlaXRoZXIgdGhlIHJlY29uc3RydWN0aW9uIHByb2Nlc3Mgb3IgdGhl
CisgcXVhbnRpemF0aW9uIHByb2Nlc3MgaW4gdGhlIGVuY29kZXIgdGh1cyBmYXIgZ3VhcmFudGVl
cyB0aGF0IHRoZSBjb2VmZmljaWVudHMKKyBhcmUgbW9ub3RvbmljYWxseSBpbmNyZWFzaW5nIGFu
ZCBzZXBhcmF0ZWQgd2VsbCBlbm91Z2ggdG8gZW5zdXJlIGEgc3RhYmxlCisgZmlsdGVyIDx4cmVm
IHRhcmdldD0iS2FiYWw4NiIvPi4KK1doZW4gdXNpbmcgdGhlIHJlZmVyZW5jZSBlbmNvZGVyLCBy
b3VnaGx5IDIlIG9mIGZyYW1lcyB2aW9sYXRlIHRoaXMgY29uc3RyYWludC4KK1RoZSBuZXh0IHNl
Y3Rpb24gZGVzY3JpYmVzIGEgc3RhYmlsaXphdGlvbiBwcm9jZWR1cmUgdXNlZCB0byBtYWtlIHRo
ZXNlCisgZ3VhcmFudGVlcy4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9
InNpbGtfbmxzZl9zdGFiaWxpemF0aW9uIiB0aXRsZT0iTm9ybWFsaXplZCBMU0YgU3RhYmlsaXph
dGlvbiI+Cis8dD4KK1RoZSBub3JtYWxpemVkIExTRiBzdGFiaWxpemF0aW9uIHByb2NlZHVyZSBp
cyBpbXBsZW1lbnRlZCBpbgorIHNpbGtfTkxTRl9zdGFiaWxpemUoKSAoTkxTRl9zdGFiaWxpemUu
YykuCitUaGlzIHByb2Nlc3MgZW5zdXJlcyB0aGF0IGNvbnNlY3V0aXZlIHZhbHVlcyBvZiB0aGUg
bm9ybWFsaXplZCBMU0YKKyBjb2VmZmljaWVudHMsIE5MU0ZfUTE1W10sIGFyZSBzcGFjZWQgc29t
ZSBtaW5pbXVtIGRpc3RhbmNlIGFwYXJ0CisgKHByZWRldGVybWluZWQgdG8gYmUgdGhlIDAuMDEg
cGVyY2VudGlsZSBvZiBhIGxhcmdlIHRyYWluaW5nIHNldCkuCis8eHJlZiB0YXJnZXQ9InNpbGtf
bmxzZl9taW5fc3BhY2luZyIvPiBnaXZlcyB0aGUgbWluaW11bSBzcGFjaW5ncyBmb3IgTkIgYW5k
IE1CCisgYW5kIHRob3NlIGZvciBXQiwgd2hlcmUgcm93IGsgaXMgdGhlIG1pbmltdW0gYWxsb3dl
ZCB2YWx1ZSBvZgorIE5MU0ZfUVtrXS1OTFNGX1Fbay0xXS4KK0ZvciB0aGUgcHVycG9zZXMgb2Yg
Y29tcHV0aW5nIHRoaXMgc3BhY2luZyBmb3IgdGhlIGZpcnN0IGFuZCBsYXN0IGNvZWZmaWNpZW50
LAorIE5MU0ZfUTE1Wy0xXSBpcyB0YWtlbiB0byBiZSAwLCBhbmQgTkxTRl9RMTVbZF9MUENdIGlz
IHRha2VuIHRvIGJlIDMyNzY4LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNm
X21pbl9zcGFjaW5nIgorICAgICAgICAgICB0aXRsZT0iTWluaW11bSBTcGFjaW5nIGZvciBOb3Jt
YWxpemVkIExTRiBDb2VmZmljaWVudHMiPgorPHR0Y29sPkNvZWZmaWNpZW50PC90dGNvbD4KKzx0
dGNvbCBhbGlnbj0icmlnaHQiPk5CIGFuZCBNQjwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0
Ij5XQjwvdHRjb2w+CisgPGM+MDwvYz4gPGM+MjUwPC9jPiA8Yz4xMDA8L2M+CisgPGM+MTwvYz4g
ICA8Yz4zPC9jPiAgIDxjPjM8L2M+CisgPGM+MjwvYz4gICA8Yz42PC9jPiAgPGM+NDA8L2M+Cisg
PGM+MzwvYz4gICA8Yz4zPC9jPiAgIDxjPjM8L2M+CisgPGM+NDwvYz4gICA8Yz4zPC9jPiAgIDxj
PjM8L2M+CisgPGM+NTwvYz4gICA8Yz4zPC9jPiAgIDxjPjM8L2M+CisgPGM+NjwvYz4gICA8Yz40
PC9jPiAgIDxjPjU8L2M+CisgPGM+NzwvYz4gICA8Yz4zPC9jPiAgPGM+MTQ8L2M+CisgPGM+ODwv
Yz4gICA8Yz4zPC9jPiAgPGM+MTQ8L2M+CisgPGM+OTwvYz4gICA8Yz4zPC9jPiAgPGM+MTA8L2M+
Cis8Yz4xMDwvYz4gPGM+NDYxPC9jPiAgPGM+MTE8L2M+Cis8Yz4xMTwvYz4gICAgICAgPGMvPiAg
IDxjPjM8L2M+Cis8Yz4xMjwvYz4gICAgICAgPGMvPiAgIDxjPjg8L2M+Cis8Yz4xMzwvYz4gICAg
ICAgPGMvPiAgIDxjPjk8L2M+Cis8Yz4xNDwvYz4gICAgICAgPGMvPiAgIDxjPjc8L2M+Cis8Yz4x
NTwvYz4gICAgICAgPGMvPiAgIDxjPjM8L2M+Cis8Yz4xNjwvYz4gICAgICAgPGMvPiA8Yz4zNDc8
L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitUaGUgcHJvY2VkdXJlIHN0YXJ0cyBvZmYgYnkgdHJ5
aW5nIHRvIG1ha2Ugc21hbGwgYWRqdXN0bWVudHMgd2hpY2ggYXR0ZW1wdCB0bworIG1pbmltaXpl
IHRoZSBhbW91bnQgb2YgZGlzdG9ydGlvbiBpbnRyb2R1Y2VkLgorQWZ0ZXIgMjAgc3VjaCBhZGp1
c3RtZW50cywgaXQgZmFsbHMgYmFjayB0byBhIG1vcmUgZGlyZWN0IG1ldGhvZCB3aGljaAorIGd1
YXJhbnRlZXMgdGhlIGNvbnN0cmFpbnRzIGFyZSBlbmZvcmNlZCBidXQgbWF5IHJlcXVpcmUgbGFy
Z2UgYWRqdXN0bWVudHMuCis8L3Q+Cis8dD4KK0xldCBORGVsdGFNaW5fUTE1W2tdIGJlIHRoZSBt
aW5pbXVtIHJlcXVpcmVkIHNwYWNpbmcgZm9yIHRoZSBjdXJyZW50IGF1ZGlvCisgYmFuZHdpZHRo
IGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfbWluX3NwYWNpbmciLz4uCitGaXJzdCwgdGhl
IHByb2NlZHVyZSBmaW5kcyB0aGUgaW5kZXggaSB3aGVyZQorIE5MU0ZfUTE1W2ldJm5ic3A7LSZu
YnNwO05MU0ZfUTE1W2ktMV0mbmJzcDstJm5ic3A7TkRlbHRhTWluX1ExNVtpXSBpcyB0aGUKKyBz
bWFsbGVzdCwgYnJlYWtpbmcgdGllcyBieSB1c2luZyB0aGUgbG93ZXIgdmFsdWUgb2YgaS4KK0lm
IHRoaXMgdmFsdWUgaXMgbm9uLW5lZ2F0aXZlLCB0aGVuIHRoZSBzdGFiaWxpemF0aW9uIHN0b3Bz
OyB0aGUgY29lZmZpY2llbnRzCisgc2F0aXNmeSBhbGwgdGhlIGNvbnN0cmFpbnRzLgorT3RoZXJ3
aXNlLCBpZiBpJm5ic3A7PT0mbmJzcDswLCBpdCBzZXRzIE5MU0ZfUTE1WzBdIHRvIE5EZWx0YU1p
bl9RMTVbMF0sIGFuZCBpZgorIGkmbmJzcDs9PSZuYnNwO2RfTFBDLCBpdCBzZXRzIE5MU0ZfUTE1
W2RfTFBDLTFdIHRvCisgKDMyNzY4Jm5ic3A7LSZuYnNwO05EZWx0YU1pbl9RMTVbZF9MUENdKS4K
K0ZvciBhbGwgb3RoZXIgdmFsdWVzIG9mIGksIGJvdGggTkxTRl9RMTVbaS0xXSBhbmQgTkxTRl9R
MTVbaV0gYXJlIHVwZGF0ZWQgYXMKKyBmb2xsb3dzOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4K
KzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaS0xCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBfXworIG1pbl9jZW50ZXJfUTE1ID0gKE5EZWx0YU1pbl9RMTVbaV0+PjEpICsg
XCAgTkRlbHRhTWluX1ExNVtrXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgL18KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGs9MAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRfTFBDCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fCisgbWF4
X2NlbnRlcl9RMTUgPSAzMjc2OCAtIChORGVsdGFNaW5fUTE1W2ldPj4xKSAtIFwgIE5EZWx0YU1p
bl9RMTVba10KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgL18KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBr
PWkrMQorY2VudGVyX2ZyZXFfUTE1ID0gY2xhbXAobWluX2NlbnRlcl9RMTVbaV0sCisgICAgICAg
ICAgICAgICAgICAgICAgICAoTkxTRl9RMTVbaS0xXSArIE5MU0ZfUTE1W2ldICsgMSk+PjEsCisg
ICAgICAgICAgICAgICAgICAgICAgICBtYXhfY2VudGVyX1ExNVtpXSkKKworIE5MU0ZfUTE1W2kt
MV0gPSBjZW50ZXJfZnJlcV9RMTUgLSAoTkRlbHRhTWluX1ExNVtpXT4+MSkKKworICAgTkxTRl9R
MTVbaV0gPSBOTFNGX1ExNVtpLTFdICsgTkRlbHRhTWluX1ExNVtpXSAuCitdXT48L2FydHdvcms+
Cis8L2ZpZ3VyZT4KK1RoZW4gdGhlIHByb2NlZHVyZSByZXBlYXRzIGFnYWluLCB1bnRpbCBpdCBo
YXMgZWl0aGVyIGV4ZWN1dGVkIDIwIHRpbWVzIG9yCisgaGFzIHN0b3BwZWQgYmVjYXVzZSB0aGUg
Y29lZmZpY2llbnRzIHNhdGlzZnkgYWxsIHRoZSBjb25zdHJhaW50cy4KKzwvdD4KKzx0PgorQWZ0
ZXIgdGhlIDIwdGggcmVwZXRpdGlvbiBvZiB0aGUgYWJvdmUgcHJvY2VkdXJlLCB0aGUgZm9sbG93
aW5nIGZhbGxiYWNrCisgcHJvY2VkdXJlIGV4ZWN1dGVzIG9uY2UuCitGaXJzdCwgdGhlIHZhbHVl
cyBvZiBOTFNGX1ExNVtrXSBmb3IgMCZuYnNwOyZsdDs9Jm5ic3A7ayZuYnNwOyZsdDsmbmJzcDtk
X0xQQworIGFyZSBzb3J0ZWQgaW4gYXNjZW5kaW5nIG9yZGVyLgorVGhlbiBmb3IgZWFjaCB2YWx1
ZSBvZiBrIGZyb20gMCB0byBkX0xQQy0xLCBOTFNGX1ExNVtrXSBpcyBzZXQgdG8KKzxmaWd1cmUg
YWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK21heChO
TFNGX1ExNVtrXSwgTkxTRl9RMTVbay0xXSArIE5EZWx0YU1pbl9RMTVba10pIC4KK11dPjwvYXJ0
d29yaz4KKzwvZmlndXJlPgorTmV4dCwgZm9yIGVhY2ggdmFsdWUgb2YgayBmcm9tIGRfTFBDLTEg
ZG93biB0byAwLCBOTFNGX1ExNVtrXSBpcyBzZXQgdG8KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+
Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK21pbihOTFNGX1ExNVtrXSwgTkxT
Rl9RMTVbaysxXSAtIE5EZWx0YU1pbl9RMTVbaysxXSkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1
cmU+Cis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX25sc2ZfaW50
ZXJwb2xhdGlvbiIgdGl0bGU9Ik5vcm1hbGl6ZWQgTFNGIEludGVycG9sYXRpb24iPgorPHQ+CitG
b3IgMjAmbmJzcDttcyBTSUxLIGZyYW1lcywgdGhlIGZpcnN0IGhhbGYgb2YgdGhlIGZyYW1lIChp
LmUuLCB0aGUgZmlyc3QgdHdvCisgc3ViZnJhbWVzKSBtYXkgdXNlIG5vcm1hbGl6ZWQgTFNGIGNv
ZWZmaWNpZW50cyB0aGF0IGFyZSBpbnRlcnBvbGF0ZWQgYmV0d2VlbgorIHRoZSBkZWNvZGVkIExT
RnMgZm9yIHRoZSBtb3N0IHJlY2VudCBjb2RlZCBmcmFtZSAoaW4gdGhlIHNhbWUgY2hhbm5lbCkg
YW5kIHRoZQorIGN1cnJlbnQgZnJhbWUuCitBIFEyIGludGVycG9sYXRpb24gZmFjdG9yIGZvbGxv
d3MgdGhlIExTRiBjb2VmZmljaWVudCBpbmRpY2VzIGluIHRoZSBiaXRzdHJlYW0sCisgd2hpY2gg
aXMgZGVjb2RlZCB1c2luZyB0aGUgUERGIGluIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX2ludGVy
cF9wZGYiLz4uCitUaGlzIGhhcHBlbnMgaW4gc2lsa19kZWNvZGVfaW5kaWNlcygpIChkZWNvZGVf
aW5kaWNlcy5jKS4KK0FmdGVyIGVpdGhlcgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+QW4g
dW5jb2RlZCByZWd1bGFyIFNJTEsgZnJhbWUgaW4gdGhlIHNpZGUgY2hhbm5lbCwgb3I8L3Q+Cis8
dD5BIGRlY29kZXIgcmVzZXQgKHNlZSA8eHJlZiB0YXJnZXQ9ImRlY29kZXItcmVzZXQiLz4pLDwv
dD4KKzwvbGlzdD4KKyB0aGUgZGVjb2RlciBzdGlsbCBkZWNvZGVzIHRoaXMgZmFjdG9yLCBidXQg
aWdub3JlcyBpdHMgdmFsdWUgYW5kIGFsd2F5cyB1c2VzCisgNCBpbnN0ZWFkLgorRm9yIDEwJm5i
c3A7bXMgU0lMSyBmcmFtZXMsIHRoaXMgZmFjdG9yIGlzIG5vdCBzdG9yZWQgYXQgYWxsLgorPC90
PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNmX2ludGVycF9wZGYiCisgICAgICAgICAg
IHRpdGxlPSJQREYgZm9yIE5vcm1hbGl6ZWQgTFNGIEludGVycG9sYXRpb24gSW5kZXgiPgorPHR0
Y29sPlBERjwvdHRjb2w+Cis8Yz57MTMsIDIyLCAyOSwgMTEsIDE4MX0vMjU2PC9jPgorPC90ZXh0
dGFibGU+CisKKzx0PgorTGV0IG4yX1ExNVtrXSBiZSB0aGUgbm9ybWFsaXplZCBMU0YgY29lZmZp
Y2llbnRzIGRlY29kZWQgYnkgdGhlIHByb2NlZHVyZSBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19u
bHNmcyIvPiwgbjBfUTE1W2tdIGJlIHRoZSBMU0YgY29lZmZpY2llbnRzCisgZGVjb2RlZCBmb3Ig
dGhlIHByaW9yIGZyYW1lLCBhbmQgd19RMiBiZSB0aGUgaW50ZXJwb2xhdGlvbiBmYWN0b3IuCitU
aGVuIHRoZSBub3JtYWxpemVkIExTRiBjb2VmZmljaWVudHMgdXNlZCBmb3IgdGhlIGZpcnN0IGhh
bGYgb2YgYSAyMCZuYnNwO21zCisgZnJhbWUsIG4xX1ExNVtrXSwgYXJlCis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCituMV9RMTVba10g
PSBuMF9RMTVba10gKyAod19RMioobjJfUTE1W2tdIC0gbjBfUTE1W2tdKSA+PiAyKSAuCitdXT48
L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoaXMgaW50ZXJwb2xhdGlvbiBpcyBwZXJmb3JtZWQgaW4g
c2lsa19kZWNvZGVfcGFyYW1ldGVycygpCisgKGRlY29kZV9wYXJhbWV0ZXJzLmMpLgorPC90Pgor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbmxzZjJscGMiCisgdGl0bGU9IkNv
bnZlcnRpbmcgTm9ybWFsaXplZCBMU0ZzIHRvIExQQyBDb2VmZmljaWVudHMiPgorPHQ+CitBbnkg
TFBDIGZpbHRlciBBKHopIGNhbiBiZSBzcGxpdCBpbnRvIGEgc3ltbWV0cmljIHBhcnQgUCh6KSBh
bmQgYW4KKyBhbnRpLXN5bW1ldHJpYyBwYXJ0IFEoeikgc3VjaCB0aGF0Cis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAg
ZF9MUEMKKyAgICAgICAgICAgX18gICAgICAgICAtayAgIDEKK0EoeikgPSAxIC0gXCAgYVtrXSAq
IHogICA9IC0gKiAoUCh6KSArIFEoeikpCisgICAgICAgICAgIC9fICAgICAgICAgICAgICAyCisg
ICAgICAgICAgIGs9MQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cit3aXRoCis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAg
ICAgICAgICAtZF9MUEMtMSAgICAgIC0xCitQKHopID0gQSh6KSArIHogICAgICAgICAqIEEoeiAg
KQorCisgICAgICAgICAgICAgICAtZF9MUEMtMSAgICAgIC0xCitRKHopID0gQSh6KSAtIHogICAg
ICAgICAqIEEoeiAgKSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBldmVuIG5vcm1h
bGl6ZWQgTFNGIGNvZWZmaWNpZW50cyBjb3JyZXNwb25kIHRvIGEgcGFpciBvZiBjb25qdWdhdGUg
cm9vdHMgb2YKKyBQKHopLCB3aGlsZSB0aGUgb2RkIGNvZWZmaWNpZW50cyBjb3JyZXNwb25kIHRv
IGEgcGFpciBvZiBjb25qdWdhdGUgcm9vdHMgb2YKKyBRKHopLCBhbGwgb2Ygd2hpY2ggbGllIG9u
IHRoZSB1bml0IGNpcmNsZS4KK0luIGFkZGl0aW9uLCBQKHopIGhhcyBhIHJvb3QgYXQgcGkgYW5k
IFEoeikgaGFzIGEgcm9vdCBhdCAwLgorVGh1cywgdGhleSBtYXkgYmUgcmVjb25zdHJ1Y3RlZCBt
YXRoZW1hdGljYWxseSBmcm9tIGEgc2V0IG9mIG5vcm1hbGl6ZWQgTFNGCisgY29lZmZpY2llbnRz
LCBuW2tdLCBhcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50
ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgICAgICBkX0xQQy8yLTEKKyAgICAgICAgICAgICAt
MSAgICAgX19fICAgICAgICAgICAgICAgICAgICAgICAgLTEgICAgLTIKK1AoeikgPSAoMSArIHog
ICkgKiAgfCB8ICAoMSAtIDIqY29zKHBpKm5bMiprXSkqeiAgKyB6ICApCisgICAgICAgICAgICAg
ICAgICAgIGs9MAorCisgICAgICAgICAgICAgICAgIGRfTFBDLzItMQorICAgICAgICAgICAgIC0x
ICAgICBfX18gICAgICAgICAgICAgICAgICAgICAgICAgIC0xICAgIC0yCitRKHopID0gKDEgLSB6
ICApICogIHwgfCAgKDEgLSAyKmNvcyhwaSpuWzIqaysxXSkqeiAgKyB6ICApCisgICAgICAgICAg
ICAgICAgICAgIGs9MAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8dD4KK0hvd2V2
ZXIsIFNJTEsgcGVyZm9ybXMgdGhpcyByZWNvbnN0cnVjdGlvbiB1c2luZyBhIGZpeGVkLXBvaW50
IGFwcHJveGltYXRpb24gc28KKyB0aGF0IGFsbCBkZWNvZGVycyBjYW4gcmVwcm9kdWNlIGl0IGlu
IGEgYml0LWV4YWN0IG1hbm5lciB0byBhdm9pZCBwcmVkaWN0aW9uCisgZHJpZnQuCitUaGUgZnVu
Y3Rpb24gc2lsa19OTFNGMkEoKSAoTkxTRjJBLmMpIGltcGxlbWVudHMgdGhpcyBwcm9jZWR1cmUu
Cis8L3Q+Cis8dD4KK1RvIHN0YXJ0LCBpdCBhcHByb3hpbWF0ZXMgY29zKHBpKm5ba10pIHVzaW5n
IGEgdGFibGUgbG9va3VwIHdpdGggbGluZWFyCisgaW50ZXJwb2xhdGlvbi4KK1RoZSBlbmNvZGVy
IFNIT1VMRCB1c2UgdGhlIGludmVyc2Ugb2YgdGhpcyBwaWVjZXdpc2UgbGluZWFyIGFwcHJveGlt
YXRpb24sCisgcmF0aGVyIHRoYW4gdGhlIHRydWUgaW52ZXJzZSBvZiB0aGUgY29zaW5lIGZ1bmN0
aW9uLCB3aGVuIGRlcml2aW5nIHRoZQorIG5vcm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50cy4KK1Ro
ZXNlIHZhbHVlcyBhcmUgYWxzbyByZS1vcmRlcmVkIHRvIGltcHJvdmUgbnVtZXJpY2FsIGFjY3Vy
YWN5IHdoZW4KKyBjb25zdHJ1Y3RpbmcgdGhlIExQQyBwb2x5bm9taWFscy4KKzwvdD4KKworPHRl
eHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl9vcmRlcmluZ3MiCisgICAgICAgICAgIHRpdGxlPSJM
U0YgT3JkZXJpbmcgZm9yIFBvbHlub21pYWwgRXZhbHVhdGlvbiI+Cis8dHRjb2w+Q29lZmZpY2ll
bnQ8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+TkIgYW5kIE1CPC90dGNvbD4KKzx0dGNv
bCBhbGlnbj0icmlnaHQiPldCPC90dGNvbD4KKyA8Yz4wPC9jPiAgPGM+MDwvYz4gIDxjPjA8L2M+
CisgPGM+MTwvYz4gIDxjPjk8L2M+IDxjPjE1PC9jPgorIDxjPjI8L2M+ICA8Yz42PC9jPiAgPGM+
ODwvYz4KKyA8Yz4zPC9jPiAgPGM+MzwvYz4gIDxjPjc8L2M+CisgPGM+NDwvYz4gIDxjPjQ8L2M+
ICA8Yz40PC9jPgorIDxjPjU8L2M+ICA8Yz41PC9jPiA8Yz4xMTwvYz4KKyA8Yz42PC9jPiAgPGM+
ODwvYz4gPGM+MTI8L2M+CisgPGM+NzwvYz4gIDxjPjE8L2M+ICA8Yz4zPC9jPgorIDxjPjg8L2M+
ICA8Yz4yPC9jPiAgPGM+MjwvYz4KKyA8Yz45PC9jPiAgPGM+NzwvYz4gPGM+MTM8L2M+Cis8Yz4x
MDwvYz4gICAgICA8Yy8+IDxjPjEwPC9jPgorPGM+MTE8L2M+ICAgICAgPGMvPiAgPGM+NTwvYz4K
KzxjPjEyPC9jPiAgICAgIDxjLz4gIDxjPjY8L2M+Cis8Yz4xMzwvYz4gICAgICA8Yy8+ICA8Yz45
PC9jPgorPGM+MTQ8L2M+ICAgICAgPGMvPiA8Yz4xNDwvYz4KKzxjPjE1PC9jPiAgICAgIDxjLz4g
IDxjPjE8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitUaGUgdG9wIDcgYml0cyBvZiBlYWNoIG5v
cm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50IGluZGV4IGEgdmFsdWUgaW4gdGhlIHRhYmxlLAorIGFu
ZCB0aGUgbmV4dCA4IGJpdHMgaW50ZXJwb2xhdGUgYmV0d2VlbiBpdCBhbmQgdGhlIG5leHQgdmFs
dWUuCitMZXQgaSZuYnNwOz0mbmJzcDsobltrXSZuYnNwOyZndDsmZ3Q7Jm5ic3A7OCkgYmUgdGhl
IGludGVnZXIgaW5kZXggYW5kCisgZiZuYnNwOz0mbmJzcDsobltrXSZuYnNwOyZhbXA7Jm5ic3A7
MjU1KSBiZSB0aGUgZnJhY3Rpb25hbCBwYXJ0IG9mIGEgZ2l2ZW4KKyBjb2VmZmljaWVudC4KK1Ro
ZW4gdGhlIHJlLW9yZGVyZWQsIGFwcHJveGltYXRlZCBjb3NpbmUsIGNfUTE3W29yZGVyaW5nW2td
XSwgaXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48
IVtDREFUQVsKK2NfUTE3W29yZGVyaW5nW2tdXSA9IChjb3NfUTEyW2ldKjI1NgorICAgICAgICAg
ICAgICAgICAgICAgICsgKGNvc19RMTJbaSsxXS1jb3NfUTEyW2ldKSpmICsgNCkgPj4gMyAsCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyB3aGVyZSBvcmRlcmluZ1trXSBpcyB0aGUgayd0aCBl
bnRyeSBvZiB0aGUgY29sdW1uIG9mCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zfb3JkZXJpbmdz
Ii8+IGNvcnJlc3BvbmRpbmcgdG8gdGhlIGN1cnJlbnQgYXVkaW8KKyBiYW5kd2lkdGggYW5kIGNv
c19RMTJbaV0gaXMgdGhlIGkndGggZW50cnkgb2YgPHhyZWYgdGFyZ2V0PSJzaWxrX2Nvc190YWJs
ZSIvPi4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfY29zX3RhYmxlIgorICAgICAg
ICAgICB0aXRsZT0iUTEyIENvc2luZSBUYWJsZSBmb3IgTFNGIENvbnZlcnNpb24iPgorPHR0Y29s
IGFsaWduPSJyaWdodCI+aTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4rMDwvdHRjb2w+
Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4rMTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4r
MjwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4rMzwvdHRjb2w+Cis8Yz4wPC9jPgorIDxj
PjQwOTY8L2M+IDxjPjQwOTU8L2M+IDxjPjQwOTE8L2M+IDxjPjQwODU8L2M+Cis8Yz40PC9jPgor
IDxjPjQwNzY8L2M+IDxjPjQwNjU8L2M+IDxjPjQwNTI8L2M+IDxjPjQwMzY8L2M+Cis8Yz44PC9j
PgorIDxjPjQwMTc8L2M+IDxjPjM5OTc8L2M+IDxjPjM5NzM8L2M+IDxjPjM5NDg8L2M+Cis8Yz4x
MjwvYz4KKyA8Yz4zOTIwPC9jPiA8Yz4zODg5PC9jPiA8Yz4zODU3PC9jPiA8Yz4zODIyPC9jPgor
PGM+MTY8L2M+CisgPGM+Mzc4NDwvYz4gPGM+Mzc0NTwvYz4gPGM+MzcwMzwvYz4gPGM+MzY1OTwv
Yz4KKzxjPjIwPC9jPgorIDxjPjM2MTM8L2M+IDxjPjM1NjQ8L2M+IDxjPjM1MTM8L2M+IDxjPjM0
NjE8L2M+Cis8Yz4yNDwvYz4KKyA8Yz4zNDA2PC9jPiA8Yz4zMzQ5PC9jPiA8Yz4zMjkwPC9jPiA8
Yz4zMjI5PC9jPgorPGM+Mjg8L2M+CisgPGM+MzE2NjwvYz4gPGM+MzEwMjwvYz4gPGM+MzAzNTwv
Yz4gPGM+Mjk2NzwvYz4KKzxjPjMyPC9jPgorIDxjPjI4OTY8L2M+IDxjPjI4MjQ8L2M+IDxjPjI3
NTE8L2M+IDxjPjI2NzY8L2M+Cis8Yz4zNjwvYz4KKyA8Yz4yNTk5PC9jPiA8Yz4yNTIwPC9jPiA8
Yz4yNDQwPC9jPiA8Yz4yMzU5PC9jPgorPGM+NDA8L2M+CisgPGM+MjI3NjwvYz4gPGM+MjE5MTwv
Yz4gPGM+MjEwNjwvYz4gPGM+MjAxOTwvYz4KKzxjPjQ0PC9jPgorIDxjPjE5MzE8L2M+IDxjPjE4
NDI8L2M+IDxjPjE3NTE8L2M+IDxjPjE2NjA8L2M+Cis8Yz40ODwvYz4KKyA8Yz4xNTY4PC9jPiA8
Yz4xNDc0PC9jPiA8Yz4xMzgwPC9jPiA8Yz4xMjg1PC9jPgorPGM+NTI8L2M+CisgPGM+MTE4OTwv
Yz4gPGM+MTA5MzwvYz4gIDxjPjk5NTwvYz4gIDxjPjg5NzwvYz4KKzxjPjU2PC9jPgorICA8Yz43
OTk8L2M+ICA8Yz43MDA8L2M+ICA8Yz42MDE8L2M+ICA8Yz41MDE8L2M+Cis8Yz42MDwvYz4KKyAg
PGM+NDAxPC9jPiAgPGM+MzAxPC9jPiAgPGM+MjAxPC9jPiAgPGM+MTAxPC9jPgorPGM+NjQ8L2M+
CisgICAgPGM+MDwvYz4gPGM+LTEwMTwvYz4gPGM+LTIwMTwvYz4gPGM+LTMwMTwvYz4KKzxjPjY4
PC9jPgorIDxjPi00MDE8L2M+IDxjPi01MDE8L2M+IDxjPi02MDE8L2M+IDxjPi03MDA8L2M+Cis8
Yz43MjwvYz4KKyA8Yz4tNzk5PC9jPiA8Yz4tODk3PC9jPiA8Yz4tOTk1PC9jPiA8Yz4tMTA5Mzwv
Yz4KKzxjPjc2PC9jPgorPGM+LTExODk8L2M+PGM+LTEyODU8L2M+PGM+LTEzODA8L2M+PGM+LTE0
NzQ8L2M+Cis8Yz44MDwvYz4KKzxjPi0xNTY4PC9jPjxjPi0xNjYwPC9jPjxjPi0xNzUxPC9jPjxj
Pi0xODQyPC9jPgorPGM+ODQ8L2M+Cis8Yz4tMTkzMTwvYz48Yz4tMjAxOTwvYz48Yz4tMjEwNjwv
Yz48Yz4tMjE5MTwvYz4KKzxjPjg4PC9jPgorPGM+LTIyNzY8L2M+PGM+LTIzNTk8L2M+PGM+LTI0
NDA8L2M+PGM+LTI1MjA8L2M+Cis8Yz45MjwvYz4KKzxjPi0yNTk5PC9jPjxjPi0yNjc2PC9jPjxj
Pi0yNzUxPC9jPjxjPi0yODI0PC9jPgorPGM+OTY8L2M+Cis8Yz4tMjg5NjwvYz48Yz4tMjk2Nzwv
Yz48Yz4tMzAzNTwvYz48Yz4tMzEwMjwvYz4KKzxjPjEwMDwvYz4KKzxjPi0zMTY2PC9jPjxjPi0z
MjI5PC9jPjxjPi0zMjkwPC9jPjxjPi0zMzQ5PC9jPgorPGM+MTA0PC9jPgorPGM+LTM0MDY8L2M+
PGM+LTM0NjE8L2M+PGM+LTM1MTM8L2M+PGM+LTM1NjQ8L2M+Cis8Yz4xMDg8L2M+Cis8Yz4tMzYx
MzwvYz48Yz4tMzY1OTwvYz48Yz4tMzcwMzwvYz48Yz4tMzc0NTwvYz4KKzxjPjExMjwvYz4KKzxj
Pi0zNzg0PC9jPjxjPi0zODIyPC9jPjxjPi0zODU3PC9jPjxjPi0zODg5PC9jPgorPGM+MTE2PC9j
PgorPGM+LTM5MjA8L2M+PGM+LTM5NDg8L2M+PGM+LTM5NzM8L2M+PGM+LTM5OTc8L2M+Cis8Yz4x
MjA8L2M+Cis8Yz4tNDAxNzwvYz48Yz4tNDAzNjwvYz48Yz4tNDA1MjwvYz48Yz4tNDA2NTwvYz4K
KzxjPjEyNDwvYz4KKzxjPi00MDc2PC9jPjxjPi00MDg1PC9jPjxjPi00MDkxPC9jPjxjPi00MDk1
PC9jPgorPGM+MTI4PC9jPgorPGM+LTQwOTY8L2M+ICAgICAgICA8Yy8+ICAgICAgICA8Yy8+ICAg
ICAgICA8Yy8+Cis8L3RleHR0YWJsZT4KKworPHQ+CitHaXZlbiB0aGUgbGlzdCBvZiBjb3NpbmUg
dmFsdWVzLCBzaWxrX05MU0YyQV9maW5kX3BvbHkoKSAoTkxTRjJBLmMpCisgY29tcHV0ZXMgdGhl
IGNvZWZmaWNpZW50cyBvZiBQIGFuZCBRLCBkZXNjcmliZWQgaGVyZSB2aWEgYSBzaW1wbGUgcmVj
dXJyZW5jZS4KK0xldCBwX1ExNltrXVtqXSBhbmQgcV9RMTZba11bal0gYmUgdGhlIGNvZWZmaWNp
ZW50cyBvZiB0aGUgcHJvZHVjdHMgb2YgdGhlCisgZmlyc3QgKGsrMSkgcm9vdCBwYWlycyBmb3Ig
UCBhbmQgUSwgd2l0aCBqIGluZGV4aW5nIHRoZSBjb2VmZmljaWVudCBudW1iZXIuCitPbmx5IHRo
ZSBmaXJzdCAoaysyKSBjb2VmZmljaWVudHMgYXJlIG5lZWRlZCwgYXMgdGhlIHByb2R1Y3RzIGFy
ZSBzeW1tZXRyaWMuCitMZXQgcF9RMTZbMF1bMF0mbmJzcDs9Jm5ic3A7cV9RMTZbMF1bMF0mbmJz
cDs9Jm5ic3A7MSZsdDsmbHQ7MTYsCisgcF9RMTZbMF1bMV0mbmJzcDs9Jm5ic3A7LWNfUTE3WzBd
LCBxX1ExNlswXVsxXSZuYnNwOz0mbmJzcDstY19RMTdbMV0sIGFuZAorIGQyJm5ic3A7PSZuYnNw
O2RfTFBDLzIuCitBcyBib3VuZGFyeSBjb25kaXRpb25zLCBhc3N1bWUKKyBwX1ExNltrXVtqXSZu
YnNwOz0mbmJzcDtxX1ExNltrXVtqXSZuYnNwOz0mbmJzcDswIGZvciBhbGwKKyBqJm5ic3A7Jmx0
OyZuYnNwOzAuCitBbHNvLCBhc3N1bWUgcF9RMTZba11baysyXSZuYnNwOz0mbmJzcDtwX1ExNltr
XVtrXSBhbmQKKyBxX1ExNltrXVtrKzJdJm5ic3A7PSZuYnNwO3FfUTE2W2tdW2tdIChiZWNhdXNl
IG9mIHRoZSBzeW1tZXRyeSkuCitUaGVuLCBmb3IgMCZuYnNwOyZsdDsmbmJzcDtrJm5ic3A7Jmx0
OyZuYnNwO2QyIGFuZCAwJm5ic3A7Jmx0Oz0mbmJzcDtqJm5ic3A7Jmx0Oz0mbmJzcDtrKzEsCis8
ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFb
CitwX1ExNltrXVtqXSA9IHBfUTE2W2stMV1bal0gKyBwX1ExNltrLTFdW2otMl0KKyAgICAgICAg
ICAgICAgLSAoKGNfUTE3WzIqa10qcF9RMTZbay0xXVtqLTFdICsgMzI3NjgpPj4xNikgLAorCitx
X1ExNltrXVtqXSA9IHFfUTE2W2stMV1bal0gKyBxX1ExNltrLTFdW2otMl0KKyAgICAgICAgICAg
ICAgLSAoKGNfUTE3WzIqaysxXSpxX1ExNltrLTFdW2otMV0gKyAzMjc2OCk+PjE2KSAuCitdXT48
L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSB1c2Ugb2YgUTE3IHZhbHVlcyBmb3IgdGhlIGNvc2lu
ZSB0ZXJtcyBpbiBhbiBvdGhlcndpc2UgUTE2IGV4cHJlc3Npb24KKyBpbXBsaWNpdGx5IHNjYWxl
cyB0aGVtIGJ5IGEgZmFjdG9yIG9mIDIuCitUaGUgbXVsdGlwbGljYXRpb25zIGluIHRoaXMgcmVj
dXJyZW5jZSBtYXkgcmVxdWlyZSB1cCB0byA0OCBiaXRzIG9mIHByZWNpc2lvbgorIGluIHRoZSBy
ZXN1bHQgdG8gYXZvaWQgb3ZlcmZsb3cuCitJbiBwcmFjdGljZSwgZWFjaCByb3cgb2YgdGhlIHJl
Y3VycmVuY2Ugb25seSBkZXBlbmRzIG9uIHRoZSBwcmV2aW91cyByb3csIHNvIGFuCisgaW1wbGVt
ZW50YXRpb24gZG9lcyBub3QgbmVlZCB0byBzdG9yZSBhbGwgb2YgdGhlbS4KKzwvdD4KKzx0Pgor
c2lsa19OTFNGMkEoKSB1c2VzIHRoZSB2YWx1ZXMgZnJvbSB0aGUgbGFzdCByb3cgb2YgdGhpcyBy
ZWN1cnJlbmNlIHRvCisgcmVjb25zdHJ1Y3QgYSAzMi1iaXQgdmVyc2lvbiBvZiB0aGUgTFBDIGZp
bHRlciAod2l0aG91dCB0aGUgbGVhZGluZyAxLjAKKyBjb2VmZmljaWVudCksIGEzMl9RMTdba10s
IDAmbmJzcDsmbHQ7PSZuYnNwO2smbmJzcDsmbHQ7Jm5ic3A7ZDI6Cis8ZmlndXJlIGFsaWduPSJj
ZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCithMzJfUTE3W2tdICAg
ICAgICAgPSAtKHFfUTE2W2QyLTFdW2srMV0gLSBxX1ExNltkMi0xXVtrXSkKKyAgICAgICAgICAg
ICAgICAgICAgIC0gKHBfUTE2W2QyLTFdW2srMV0gKyBwX1ExNltkMi0xXVtrXSkpICwKKworYTMy
X1ExN1tkX0xQQy1rLTFdID0gIChxX1ExNltkMi0xXVtrKzFdIC0gcV9RMTZbZDItMV1ba10pCisg
ICAgICAgICAgICAgICAgICAgICAtIChwX1ExNltkMi0xXVtrKzFdICsgcF9RMTZbZDItMV1ba10p
KSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBzdW0gYW5kIGRpZmZlcmVuY2Ugb2Yg
dHdvIHRlcm1zIGZyb20gZWFjaCBvZiB0aGUgcF9RMTYgYW5kIHFfUTE2CisgY29lZmZpY2llbnQg
bGlzdHMgcmVmbGVjdCB0aGUgKDEmbmJzcDsrJm5ic3A7eioqLTEpIGFuZAorICgxJm5ic3A7LSZu
YnNwO3oqKi0xKSBmYWN0b3JzIG9mIFAgYW5kIFEsIHJlc3BlY3RpdmVseS4KK1RoZSBwcm9tb3Rp
b24gb2YgdGhlIGV4cHJlc3Npb24gZnJvbSBRMTYgdG8gUTE3IGltcGxpY2l0bHkgc2NhbGVzIHRo
ZSByZXN1bHQKKyBieSAxLzIuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0i
c2lsa19scGNfcmFuZ2VfbGltaXQiCisgdGl0bGU9IkxpbWl0aW5nIHRoZSBSYW5nZSBvZiB0aGUg
TFBDIENvZWZmaWNpZW50cyI+Cis8dD4KK1RoZSBhMzJfUTE3W10gY29lZmZpY2llbnRzIGFyZSB0
b28gbGFyZ2UgdG8gZml0IGluIGEgMTYtYml0IHZhbHVlLCB3aGljaAorIHNpZ25pZmljYW50bHkg
aW5jcmVhc2VzIHRoZSBjb3N0IG9mIGFwcGx5aW5nIHRoaXMgZmlsdGVyIGluIGZpeGVkLXBvaW50
CisgZGVjb2RlcnMuCitSZWR1Y2luZyB0aGVtIHRvIFExMiBwcmVjaXNpb24gZG9lc24ndCBpbmN1
ciBhbnkgc2lnbmlmaWNhbnQgcXVhbGl0eSBsb3NzLAorIGJ1dCBzdGlsbCBkb2VzIG5vdCBndWFy
YW50ZWUgdGhleSB3aWxsIGZpdC4KK3NpbGtfTkxTRjJBKCkgYXBwbGllcyB1cCB0byAxMCByb3Vu
ZHMgb2YgYmFuZHdpZHRoIGV4cGFuc2lvbiB0byBsaW1pdAorIHRoZSBkeW5hbWljIHJhbmdlIG9m
IHRoZXNlIGNvZWZmaWNpZW50cy4KK0V2ZW4gZmxvYXRpbmctcG9pbnQgZGVjb2RlcnMgU0hPVUxE
IHBlcmZvcm0gdGhlc2Ugc3RlcHMsIHRvIGF2b2lkIG1pc21hdGNoLgorPC90PgorPHQ+CitGb3Ig
ZWFjaCByb3VuZCwgdGhlIHByb2Nlc3MgZmlyc3QgZmluZHMgdGhlIGluZGV4IGsgc3VjaCB0aGF0
IGFicyhhMzJfUTE3W2tdKQorIGlzIGxhcmdlc3QsIGJyZWFraW5nIHRpZXMgYnkgY2hvb3Npbmcg
dGhlIGxvd2VzdCB2YWx1ZSBvZiBrLgorVGhlbiwgaXQgY29tcHV0ZXMgdGhlIGNvcnJlc3BvbmRp
bmcgUTEyIHByZWNpc2lvbiB2YWx1ZSwgbWF4YWJzX1ExMiwgc3ViamVjdCB0bworIGFuIHVwcGVy
IGJvdW5kIHRvIGF2b2lkIG92ZXJmbG93IGluIHN1YnNlcXVlbnQgY29tcHV0YXRpb25zOgorPGZp
Z3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
bWF4YWJzX1ExMiA9IG1pbigobWF4YWJzX1ExNyArIDE2KSA+PiA1LCAxNjM4MzgpIC4KK11dPjwv
YXJ0d29yaz4KKzwvZmlndXJlPgorSWYgdGhpcyBpcyBsYXJnZXIgdGhhbiAzMjc2NywgdGhlIHBy
b2NlZHVyZSBkZXJpdmVzIHRoZSBjaGlycCBmYWN0b3IsCisgc2NfUTE2WzBdLCB0byB1c2UgaW4g
dGhlIGJhbmR3aWR0aCBleHBhbnNpb24gYXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAgKG1heGFi
c19RMTIgLSAzMjc2NykgPDwgMTQKK3NjX1ExNlswXSA9IDY1NDcwIC0gLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0gLAorICAgICAgICAgICAgICAgICAgICAobWF4YWJzX1ExMiAqIChrKzEpKSA+
PiAyCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyB3aGVyZSB0aGUgZGl2aXNpb24gaGVyZSBp
cyBpbnRlZ2VyIGRpdmlzaW9uLgorVGhpcyBpcyBhbiBhcHByb3hpbWF0aW9uIG9mIHRoZSBjaGly
cCBmYWN0b3IgbmVlZGVkIHRvIHJlZHVjZSB0aGUgdGFyZ2V0CisgY29lZmZpY2llbnQgdG8gMzI3
NjcsIHRob3VnaCBpdCBpcyBib3RoIGxlc3MgdGhhbiAwLjk5OSBhbmQsIGZvcgorIGsmbmJzcDsm
Z3Q7Jm5ic3A7MCB3aGVuIG1heGFic19RMTIgaXMgbXVjaCBncmVhdGVyIHRoYW4gMzI3NjcsIHN0
aWxsIHNsaWdodGx5CisgdG9vIGxhcmdlLgorVGhlIHVwcGVyIGJvdW5kIG9uIG1heGFic19RMTIs
IDE2MzgzOCwgd2FzIGNob3NlbiBiZWNhdXNlIGl0IGlzIGVxdWFsIHRvCisgKCgyKiozMSZuYnNw
Oy0mbmJzcDsxKSZuYnNwOyZndDsmZ3Q7Jm5ic3A7MTQpJm5ic3A7KyZuYnNwOzMyNzY3LCBpLmUu
LCB0aGUKKyBsYXJnZXN0IHZhbHVlIG9mIG1heGFic19RMTIgdGhhdCB3b3VsZCBub3Qgb3ZlcmZs
b3cgdGhlIG51bWVyYXRvciBpbiB0aGUKKyBlcXVhdGlvbiBhYm92ZSB3aGVuIHN0b3JlZCBpbiBh
IHNpZ25lZCAzMi1iaXQgaW50ZWdlci4KKzwvdD4KKzx0Pgorc2lsa19id2V4cGFuZGVyXzMyKCkg
KGJ3ZXhwYW5kZXJfMzIuYykgcGVyZm9ybXMgdGhlIGJhbmR3aWR0aCBleHBhbnNpb24gKGFnYWlu
LAorIG9ubHkgd2hlbiBtYXhhYnNfUTEyIGlzIGdyZWF0ZXIgdGhhbiAzMjc2NykgdXNpbmcgdGhl
IGZvbGxvd2luZyByZWN1cnJlbmNlOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3Jr
IGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIGEzMl9RMTdba10gPSAoYTMyX1ExN1trXSpzY19R
MTZba10pID4+IDE2CisKK3NjX1ExNltrKzFdID0gKHNjX1ExNlswXSpzY19RMTZba10gKyAzMjc2
OCkgPj4gMTYKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlIGZpcnN0IG11bHRpcGx5IG1h
eSByZXF1aXJlIHVwIHRvIDQ4IGJpdHMgb2YgcHJlY2lzaW9uIGluIHRoZSByZXN1bHQgdG8KKyBh
dm9pZCBvdmVyZmxvdy4KK1RoZSBzZWNvbmQgbXVsdGlwbHkgbXVzdCBiZSB1bnNpZ25lZCB0byBh
dm9pZCBvdmVyZmxvdyB3aXRoIG9ubHkgMzIgYml0cyBvZgorIHByZWNpc2lvbi4KK1RoZSByZWZl
cmVuY2UgaW1wbGVtZW50YXRpb24gdXNlcyBhIHNsaWdodGx5IG1vcmUgY29tcGxleCBmb3JtdWxh
dGlvbiB0aGF0CisgYXZvaWRzIHRoZSAzMi1iaXQgb3ZlcmZsb3cgdXNpbmcgc2lnbmVkIG11bHRp
cGxpY2F0aW9uLCBidXQgaXMgb3RoZXJ3aXNlCisgZXF1aXZhbGVudC4KKzwvdD4KKzx0PgorQWZ0
ZXIgMTAgcm91bmRzIG9mIGJhbmR3aWR0aCBleHBhbnNpb24gYXJlIHBlcmZvcm1lZCwgdGhleSBh
cmUgc2ltcGx5IHNhdHVyYXRlZAorIHRvIDE2IGJpdHM6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIi
PgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCithMzJfUTE3W2tdID0gY2xhbXAo
LTMyNzY4LCAoYTMyX1ExN1trXSArIDE2KSA+PiA1LCAzMjc2NykgPDwgNSAuCitdXT48L2FydHdv
cms+Cis8L2ZpZ3VyZT4KK0JlY2F1c2UgdGhpcyBwZXJmb3JtcyB0aGUgYWN0dWFsIHNhdHVyYXRp
b24gaW4gdGhlIFExMiBkb21haW4sIGJ1dCBjb252ZXJ0cyB0aGUKKyBjb2VmZmljaWVudHMgYmFj
ayB0byB0aGUgUTE3IGRvbWFpbiBmb3IgdGhlIHB1cnBvc2VzIG9mIHByZWRpY3Rpb24gZ2Fpbgor
IGxpbWl0aW5nLCB0aGlzIHN0ZXAgbXVzdCBiZSBwZXJmb3JtZWQgYWZ0ZXIgdGhlIDEwdGggcm91
bmQgb2YgYmFuZHdpZHRoCisgZXhwYW5zaW9uLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgb3Igbm90
IHRoZSBRMTIgdmVyc2lvbiBvZiBhbnkgY29lZmZpY2llbnQKKyBzdGlsbCBvdmVyZmxvd3MgYSAx
Ni1iaXQgaW50ZWdlci4KK1RoaXMgc2F0dXJhdGlvbiBpcyBub3QgcGVyZm9ybWVkIGlmIG1heGFi
c19RMTIgZHJvcHMgdG8gMzI3Njcgb3IgbGVzcyBwcmlvciB0bworIHRoZSAxMHRoIHJvdW5kLgor
PC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbHBjX2dhaW5fbGltaXQi
CisgdGl0bGU9IkxpbWl0aW5nIHRoZSBQcmVkaWN0aW9uIEdhaW4gb2YgdGhlIExQQyBGaWx0ZXIi
PgorPHQ+CitUaGUgcHJlZGljdGlvbiBnYWluIG9mIGFuIExQQyBzeW50aGVzaXMgZmlsdGVyIGlz
IHRoZSBzcXVhcmUtcm9vdCBvZiB0aGUgb3V0cHV0CisgZW5lcmd5IHdoZW4gdGhlIGZpbHRlciBp
cyBleGNpdGVkIGJ5IGEgdW5pdC1lbmVyZ3kgaW1wdWxzZS4KK0V2ZW4gaWYgdGhlIFExMiBjb2Vm
ZmljaWVudHMgd291bGQgZml0LCB0aGUgcmVzdWx0aW5nIGZpbHRlciBtYXkgc3RpbGwgaGF2ZSBh
Cisgc2lnbmlmaWNhbnQgZ2FpbiAoZXNwZWNpYWxseSBmb3Igdm9pY2VkIHNvdW5kcyksIG1ha2lu
ZyB0aGUgZmlsdGVyIHVuc3RhYmxlLgorc2lsa19OTFNGMkEoKSBhcHBsaWVzIHVwIHRvIDE4IGFk
ZGl0aW9uYWwgcm91bmRzIG9mIGJhbmR3aWR0aCBleHBhbnNpb24gdG8KKyBsaW1pdCB0aGUgcHJl
ZGljdGlvbiBnYWluLgorSW5zdGVhZCBvZiBjb250cm9sbGluZyB0aGUgYW1vdW50IG9mIGJhbmR3
aWR0aCBleHBhbnNpb24gdXNpbmcgdGhlIHByZWRpY3Rpb24KKyBnYWluIGl0c2VsZiAod2hpY2gg
bWF5IGRpdmVyZ2UgdG8gaW5maW5pdHkgZm9yIGFuIHVuc3RhYmxlIGZpbHRlciksCisgc2lsa19O
TFNGMkEoKSB1c2VzIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX1FBKCkgKExQQ19pbnZfcHJl
ZF9nYWluLmMpIHRvCisgY29tcHV0ZSB0aGUgcmVmbGVjdGlvbiBjb2VmZmljaWVudHMgYXNzb2Np
YXRlZCB3aXRoIHRoZSBmaWx0ZXIuCitUaGUgZmlsdGVyIGlzIHN0YWJsZSBpZiBhbmQgb25seSBp
ZiB0aGUgbWFnbml0dWRlIG9mIHRoZXNlIGNvZWZmaWNpZW50cyBpcworIHN1ZmZpY2llbnRseSBs
ZXNzIHRoYW4gb25lLgorVGhlIHJlZmxlY3Rpb24gY29lZmZpY2llbnRzLCByY1trXSwgY2FuIGJl
IGNvbXB1dGVkIHVzaW5nIGEgc2ltcGxlIExldmluc29uCisgcmVjdXJyZW5jZSwgaW5pdGlhbGl6
ZWQgd2l0aCB0aGUgTFBDIGNvZWZmaWNpZW50cworIGFbZF9MUEMtMV1bbl0mbmJzcDs9Jm5ic3A7
YVtuXSwgYW5kIHRoZW4gdXBkYXRlZCB2aWEKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICByY1trXSA9IC1hW2tdW2tdICwKKwor
ICAgICAgICAgICAgYVtrXVtuXSAtIGFba11bay1uLTFdKnJjW2tdCithW2stMV1bbl0gPSAtLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAy
CisgICAgICAgICAgICAgICAgICAgIDEgLSByY1trXQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+
Cis8L3Q+Cis8dD4KK0hvd2V2ZXIsIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX1FBKCkgYXBw
cm94aW1hdGVzIHRoaXMgdXNpbmcgZml4ZWQtcG9pbnQKKyBhcml0aG1ldGljIHRvIGd1YXJhbnRl
ZSByZXByb2R1Y2libGUgcmVzdWx0cyBhY3Jvc3MgcGxhdGZvcm1zIGFuZAorIGltcGxlbWVudGF0
aW9ucy4KK1NpbmNlIHNtYWxsIGNoYW5nZXMgaW4gdGhlIGNvZWZmaWNpZW50cyBjYW4gbWFrZSBh
IHN0YWJsZSBmaWx0ZXIgdW5zdGFibGUsIGl0CisgdGFrZXMgdGhlIHJlYWwgUTEyIGNvZWZmaWNp
ZW50cyB0aGF0IHdpbGwgYmUgdXNlZCBkdXJpbmcgcmVjb25zdHJ1Y3Rpb24gYXMKKyBpbnB1dC4K
K1RodXMsIGxldAorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50
ZXIiPjwhW0NEQVRBWworYTMyX1ExMltuXSA9IChhMzJfUTE3W25dICsgMTYpID4+IDUKK11dPjwv
YXJ0d29yaz4KKzwvZmlndXJlPgorIGJlIHRoZSBRMTIgdmVyc2lvbiBvZiB0aGUgTFBDIGNvZWZm
aWNpZW50cyB0aGF0IHdpbGwgZXZlbnR1YWxseSBiZSB1c2VkLgorQXMgYSBzaW1wbGUgaW5pdGlh
bCBjaGVjaywgdGhlIGRlY29kZXIgY29tcHV0ZXMgdGhlIERDIHJlc3BvbnNlIGFzCis8ZmlndXJl
IGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAg
ICAgIGRfUExDLTEKKyAgICAgICAgICBfXworRENfcmVzcCA9IFwgICBhMzJfUTEyW25dCisgICAg
ICAgICAgL18KKyAgICAgICAgICBuPTAKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIGFuZCBp
ZiBEQ19yZXNwJm5ic3A7Jmd0OyZuYnNwOzQwOTYsIHRoZSBmaWx0ZXIgaXMgdW5zdGFibGUuCis8
L3Q+Cis8dD4KK0luY3JlYXNpbmcgdGhlIHByZWNpc2lvbiBvZiB0aGVzZSBRMTIgY29lZmZpY2ll
bnRzIHRvIFEyNCBmb3IgaW50ZXJtZWRpYXRlCisgY29tcHV0YXRpb25zIGFsbG93cyBtb3JlIGFj
Y3VyYXRlIGNvbXB1dGF0aW9uIG9mIHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50cywKKyBzbyB0
aGUgZGVjb2RlciBpbml0aWFsaXplcyB0aGUgcmVjdXJyZW5jZSB2aWEKKzxmaWd1cmUgYWxpZ249
ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2EzMl9RMjRbZF9M
UEMtMV1bbl0gPSBhMzJfUTEyW25dIDw8IDEyIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgor
VGhlbiBmb3IgZWFjaCBrIGZyb20gZF9MUEMtMSBkb3duIHRvIDAsIGlmCisgYWJzKGEzMl9RMjRb
a11ba10pJm5ic3A7Jmd0OyZuYnNwOzE2NzczMDIyLCB0aGUgZmlsdGVyIGlzIHVuc3RhYmxlIGFu
ZCB0aGUKKyByZWN1cnJlbmNlIHN0b3BzLgorVGhlIGNvbnN0YW50IDE2NzczMDIyIGhlcmUgaXMg
YXBwcm94aW1hdGVseSAwLjk5OTc1IGluIFEyNC4KK090aGVyd2lzZSwgcm93IGstMSBvZiBhMzJf
UTI0IGlzIGNvbXB1dGVkIGZyb20gcm93IGsgYXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8
YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgIHJjX1EzMVtrXSA9IC1hMzJf
UTI0W2tdW2tdIDw8IDcgLAorCisgICAgIGRpdl9RMzBba10gPSAoMTw8MzApIC0gKHJjX1EzMVtr
XSpyY19RMzFba10gPj4gMzIpICwKKworICAgICAgICAgIGIxW2tdID0gaWxvZyhkaXZfUTMwW2td
KSAsCisKKyAgICAgICAgICBiMltrXSA9IGIxW2tdIC0gMTYgLAorCisgICAgICAgICAgICAgICAg
ICAgICAgICAoMTw8MjkpIC0gMQorICAgICBpbnZfUWIyW2tdID0gLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0gLAorICAgICAgICAgICAgICAgICAgZGl2X1EzMFtrXSA+PiAoYjJba10rMSkKKworICAg
ICBlcnJfUTI5W2tdID0gKDE8PDI5KQorICAgICAgICAgICAgICAgICAgLSAoKGRpdl9RMzBba108
PCgxNS1iMltrXSkpKmludl9RYjJba10gPj4gMTYpICwKKworICAgIGdhaW5fUWIxW2tdID0gKChp
bnZfUWIyW2tdIDw8IDE2KQorICAgICAgICAgICAgICAgICAgICsgKGVycl9RMjlba10qaW52X1Fi
MltrXSA+PiAxMykpICwKKworbnVtX1EyNFtrLTFdW25dID0gYTMyX1EyNFtrXVtuXQorICAgICAg
ICAgICAgICAgICAgLSAoKGEzMl9RMjRba11bay1uLTFdKnJjX1EzMVtrXSArICgxPDwzMCkpID4+
IDMxKSAsCisKK2EzMl9RMjRbay0xXVtuXSA9IChudW1fUTI0W2stMV1bbl0qZ2Fpbl9RYjFba10K
KyAgICAgICAgICAgICAgICAgICArICgxPDwoYjFba10tMSkpKSA+PiBiMVtrXSAsCitdXT48L2Fy
dHdvcms+Cis8L2ZpZ3VyZT4KKyB3aGVyZSAwJm5ic3A7Jmx0Oz0mbmJzcDtuJm5ic3A7Jmx0OyZu
YnNwO2suCitIZXJlLCByY19RMzBba10gYXJlIHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50cy4K
K2Rpdl9RMzBba10gaXMgdGhlIGRlbm9taW5hdG9yIGZvciBlYWNoIGl0ZXJhdGlvbiwgYW5kIGdh
aW5fUWIxW2tdIGlzIGl0cworIG11bHRpcGxpY2F0aXZlIGludmVyc2UgKHdpdGggYjFba10gZnJh
Y3Rpb25hbCBiaXRzLCB3aGVyZSBiMVtrXSByYW5nZXMgZnJvbQorIDIwIHRvIDMxKS4KK2ludl9R
YjJba10sIHdoaWNoIHJhbmdlcyBmcm9tIDE2Mzg0IHRvIDMyNzY3LCBpcyBhIGxvdy1wcmVjaXNp
b24gdmVyc2lvbiBvZgorIHRoYXQgaW52ZXJzZSAod2l0aCBiMltrXSBmcmFjdGlvbmFsIGJpdHMp
LgorZXJyX1EyOVtrXSBpcyB0aGUgcmVzaWR1YWwgZXJyb3IsIHJhbmdpbmcgZnJvbSAtMzI3NjMg
dG8gMzIzOTIsIHdoaWNoIGlzIHVzZWQKKyB0byBpbXByb3ZlIHRoZSBhY2N1cmFjeS4KK1RoZSB2
YWx1ZXMgdF9RMjRbay0xXVtuXSBmb3IgZWFjaCBuIGFyZSB0aGUgbnVtZXJhdG9ycyBmb3IgdGhl
IG5leHQgcm93IG9mCisgY29lZmZpY2llbnRzIGluIHRoZSByZWN1cnNpb24sIGFuZCBhMzJfUTI0
W2stMV1bbl0gaXMgdGhlIGZpbmFsIHZlcnNpb24gb2YKKyB0aGF0IHJvdy4KK0V2ZXJ5IG11bHRp
cGx5IGluIHRoaXMgcHJvY2VkdXJlIGV4Y2VwdCB0aGUgb25lIHVzZWQgdG8gY29tcHV0ZSBnYWlu
X1FiMVtrXQorIHJlcXVpcmVzIG1vcmUgdGhhbiAzMiBiaXRzIG9mIHByZWNpc2lvbiwgYnV0IG90
aGVyd2lzZSBhbGwgaW50ZXJtZWRpYXRlCisgcmVzdWx0cyBmaXQgaW4gMzIgYml0cyBvciBsZXNz
LgorSW4gcHJhY3RpY2UsIGJlY2F1c2UgZWFjaCByb3cgb25seSBkZXBlbmRzIG9uIHRoZSBuZXh0
IG9uZSwgYW4gaW1wbGVtZW50YXRpb24KKyBkb2VzIG5vdCBuZWVkIHRvIHN0b3JlIHRoZW0gYWxs
LgorPC90PgorPHQ+CitJZiBhYnMoYTMyX1EyNFtrXVtrXSkmbmJzcDsmbHQ7PSZuYnNwOzE2Nzcz
MDIyIGZvcgorIDAmbmJzcDsmbHQ7PSZuYnNwO2smbmJzcDsmbHQ7Jm5ic3A7ZF9MUEMsIHRoZW4g
dGhlIGZpbHRlciBpcyBjb25zaWRlcmVkIHN0YWJsZS4KK0hvd2V2ZXIsIHRoZSBwcm9ibGVtIG9m
IGRldGVybWluaW5nIHN0YWJpbGl0eSBpcyBpbGwtY29uZGl0aW9uZWQgd2hlbiB0aGUKKyBmaWx0
ZXIgY29udGFpbnMgc2V2ZXJhbCByZWZsZWN0aW9uIGNvZWZmaWNpZW50cyB3aG9zZSBtYWduaXR1
ZGUgaXMgdmVyeSBjbG9zZQorIHRvIG9uZS4KK1RoaXMgZml4ZWQtcG9pbnQgYWxnb3JpdGhtIGlz
IG5vdCBtYXRoZW1hdGljYWxseSBndWFyYW50ZWVkIHRvIGNvcnJlY3RseQorIGNsYXNzaWZ5IGZp
bHRlcnMgYXMgc3RhYmxlIG9yIHVuc3RhYmxlIGluIHRoaXMgY2FzZSwgdGhvdWdoIGl0IGRvZXMg
dmVyeSB3ZWxsCisgaW4gcHJhY3RpY2UuCis8L3Q+Cis8dD4KK09uIHJvdW5kIGksIDEmbmJzcDsm
bHQ7PSZuYnNwO2kmbmJzcDsmbHQ7PSZuYnNwOzE4LCBpZiB0aGUgZmlsdGVyIHBhc3NlcyB0aGVz
ZQorIHN0YWJpbGl0eSBjaGVja3MsIHRoZW4gdGhpcyBwcm9jZWR1cmUgc3RvcHMsIGFuZCB0aGUg
ZmluYWwgTFBDIGNvZWZmaWNpZW50cyB0bworIHVzZSBmb3IgcmVjb25zdHJ1Y3Rpb24gaW4gPHhy
ZWYgdGFyZ2V0PSJzaWxrX2xwY19zeW50aGVzaXMiLz4gYXJlCis8ZmlndXJlIGFsaWduPSJjZW50
ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCithX1ExMltrXSA9IChhMzJf
UTE3W2tdICsgMTYpID4+IDUgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitPdGhlcndpc2Us
IGEgcm91bmQgb2YgYmFuZHdpZHRoIGV4cGFuc2lvbiBpcyBhcHBsaWVkIHVzaW5nIHRoZSBzYW1l
IHByb2NlZHVyZQorIGFzIGluIDx4cmVmIHRhcmdldD0ic2lsa19scGNfcmFuZ2VfbGltaXQiLz4s
IHdpdGgKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48
IVtDREFUQVsKK3NjX1ExNlswXSA9IDY1NTM2IC0gKDI8PGkpIC4KK11dPjwvYXJ0d29yaz4KKzwv
ZmlndXJlPgorRHVyaW5nIHRoZSAxNXRoIHJvdW5kLCBzY19RMTZbMF0gYmVjb21lcyAwIGluIHRo
ZSBhYm92ZSBlcXVhdGlvbiwgc28gYV9RMTJba10KKyBpcyBzZXQgdG8gMCBmb3IgYWxsIGssIGd1
YXJhbnRlZWluZyBhIHN0YWJsZSBmaWx0ZXIuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlv
bj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2x0cF9wYXJhbXMiIHRvYz0iaW5jbHVkZSIKKyB0
aXRsZT0iTG9uZy1UZXJtIFByZWRpY3Rpb24gKExUUCkgUGFyYW1ldGVycyI+Cis8dD4KK0FmdGVy
IHRoZSBub3JtYWxpemVkIExTRiBpbmRpY2VzIGFuZCwgZm9yIDIwJm5ic3A7bXMgZnJhbWVzLCB0
aGUgTFNGCisgaW50ZXJwb2xhdGlvbiBpbmRleCwgdm9pY2VkIGZyYW1lcyAoc2VlIDx4cmVmIHRh
cmdldD0ic2lsa19mcmFtZV90eXBlIi8+KQorIGluY2x1ZGUgYWRkaXRpb25hbCBMVFAgcGFyYW1l
dGVycy4KK1RoZXJlIGlzIG9uZSBwcmltYXJ5IGxhZyBpbmRleCBmb3IgZWFjaCBTSUxLIGZyYW1l
LCBidXQgdGhpcyBpcyByZWZpbmVkIHRvCisgcHJvZHVjZSBhIHNlcGFyYXRlIGxhZyBpbmRleCBw
ZXIgc3ViZnJhbWUgdXNpbmcgYSB2ZWN0b3IgcXVhbnRpemVyLgorRWFjaCBzdWJmcmFtZSBhbHNv
IGdldHMgaXRzIG93biBwcmVkaWN0aW9uIGdhaW4gY29lZmZpY2llbnQuCis8L3Q+CisKKzxzZWN0
aW9uIGFuY2hvcj0ic2lsa19sdHBfbGFncyIgdGl0bGU9IlBpdGNoIExhZ3MiPgorPHQ+CitUaGUg
cHJpbWFyeSBsYWcgaW5kZXggaXMgY29kZWQgZWl0aGVyIHJlbGF0aXZlIHRvIHRoZSBwcmltYXJ5
IGxhZyBvZiB0aGUgcHJpb3IKKyBmcmFtZSBpbiB0aGUgc2FtZSBjaGFubmVsLCBvciBhcyBhbiBh
YnNvbHV0ZSBpbmRleC4KK0Fic29sdXRlIGNvZGluZyBpcyB1c2VkIGlmIGFuZCBvbmx5IGlmCis8
bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD4KK1RoaXMgaXMgdGhlIGZpcnN0IFNJTEsgZnJhbWUg
b2YgaXRzIHR5cGUgKExCUlIgb3IgcmVndWxhcikgZm9yIHRoaXMgY2hhbm5lbCBpbgorIHRoZSBj
dXJyZW50IE9wdXMgZnJhbWUsCis8L3Q+Cis8dD4KK1RoZSBwcmV2aW91cyBTSUxLIGZyYW1lIG9m
IHRoZSBzYW1lIHR5cGUgKExCUlIgb3IgcmVndWxhcikgZm9yIHRoaXMgY2hhbm5lbCBpbgorIHRo
ZSBzYW1lIE9wdXMgZnJhbWUgd2FzIG5vdCBjb2RlZCwgb3IKKzwvdD4KKzx0PgorVGhhdCBwcmV2
aW91cyBTSUxLIGZyYW1lIHdhcyBjb2RlZCwgYnV0IHdhcyBub3Qgdm9pY2VkIChzZWUKKyA8eHJl
ZiB0YXJnZXQ9InNpbGtfZnJhbWVfdHlwZSIvPikuCis8L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzx0
PgorV2l0aCBhYnNvbHV0ZSBjb2RpbmcsIHRoZSBwcmltYXJ5IHBpdGNoIGxhZyBtYXkgcmFuZ2Ug
ZnJvbSAyJm5ic3A7bXMKKyAoaW5jbHVzaXZlKSB1cCB0byAxOCZuYnNwO21zIChleGNsdXNpdmUp
LCBjb3JyZXNwb25kaW5nIHRvIHBpdGNoZXMgZnJvbQorIDUwMCZuYnNwO0h6IGRvd24gdG8gNTUu
NiZuYnNwO0h6LCByZXNwZWN0aXZlbHkuCitJdCBpcyBjb21wcmlzZWQgb2YgYSBoaWdoIHBhcnQg
YW5kIGEgbG93IHBhcnQsIHdoZXJlIHRoZSBkZWNvZGVyIHJlYWRzIHRoZSBoaWdoCisgcGFydCB1
c2luZyB0aGUgMzItZW50cnkgY29kZWJvb2sgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX2Fic19waXRj
aF9oaWdoX3BkZiIvPgorIGFuZCB0aGUgbG93IHBhcnQgdXNpbmcgdGhlIGNvZGVib29rIGNvcnJl
c3BvbmRpbmcgdG8gdGhlIGN1cnJlbnQgYXVkaW8KKyBiYW5kd2lkdGggZnJvbSA8eHJlZiB0YXJn
ZXQ9InNpbGtfYWJzX3BpdGNoX2xvd19wZGYiLz4uCitUaGUgZmluYWwgcHJpbWFyeSBwaXRjaCBs
YWcgaXMgdGhlbgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50
ZXIiPjwhW0NEQVRBWworbGFnID0gbGFnX2hpZ2gqbGFnX3NjYWxlICsgbGFnX2xvdyArIGxhZ19t
aW4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdoZXJlIGxhZ19oaWdoIGlzIHRoZSBoaWdo
IHBhcnQsIGxhZ19sb3cgaXMgdGhlIGxvdyBwYXJ0LCBhbmQgbGFnX3NjYWxlCisgYW5kIGxhZ19t
aW4gYXJlIHRoZSB2YWx1ZXMgZnJvbSB0aGUgIlNjYWxlIiBhbmQgIk1pbmltdW0gTGFnIiBjb2x1
bW5zIG9mCisgPHhyZWYgdGFyZ2V0PSJzaWxrX2Fic19waXRjaF9sb3dfcGRmIi8+LCByZXNwZWN0
aXZlbHkuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX2Fic19waXRjaF9oaWdoX3Bk
ZiIKKyB0aXRsZT0iUERGIGZvciBIaWdoIFBhcnQgb2YgUHJpbWFyeSBQaXRjaCBMYWciPgorPHR0
Y29sIGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29sPgorPGM+ezMsICAgMywgICA2LCAgMTEsICAyMSwg
IDMwLCAgMzIsICAxOSwKKyAgIDExLCAgMTAsICAxMiwgIDEzLCAgMTMsICAxMiwgIDExLCAgIDks
CisgICAgOCwgICA3LCAgIDYsICAgNCwgICAyLCAgIDIsICAgMiwgICAxLAorICAgIDEsICAgMSwg
ICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0
ZXh0dGFibGUgYW5jaG9yPSJzaWxrX2Fic19waXRjaF9sb3dfcGRmIgorIHRpdGxlPSJQREYgZm9y
IExvdyBQYXJ0IG9mIFByaW1hcnkgUGl0Y2ggTGFnIj4KKzx0dGNvbD5BdWRpbyBCYW5kd2lkdGg8
L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8dHRjb2w+U2NhbGU8L3R0Y29sPgorPHR0Y29s
Pk1pbmltdW0gTGFnPC90dGNvbD4KKzx0dGNvbD5NYXhpbXVtIExhZzwvdHRjb2w+Cis8Yz5OQjwv
Yz4gPGM+ezY0LCA2NCwgNjQsIDY0fS8yNTY8L2M+ICAgICAgICAgICAgICAgICA8Yz40PC9jPiA8
Yz4xNjwvYz4gPGM+MTQ0PC9jPgorPGM+TUI8L2M+IDxjPns0MywgNDIsIDQzLCA0MywgNDIsIDQz
fS8yNTY8L2M+ICAgICAgICAgPGM+NjwvYz4gPGM+MjQ8L2M+IDxjPjIxNjwvYz4KKzxjPldCPC9j
PiA8Yz57MzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyfS8yNTY8L2M+IDxjPjg8L2M+IDxj
PjMyPC9jPiA8Yz4yODg8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitBbGwgZnJhbWVzIHRoYXQg
ZG8gbm90IHVzZSBhYnNvbHV0ZSBjb2RpbmcgZm9yIHRoZSBwcmltYXJ5IGxhZyBpbmRleCB1c2UK
KyByZWxhdGl2ZSBjb2RpbmcgaW5zdGVhZC4KK1RoZSBkZWNvZGVyIHJlYWRzIGEgc2luZ2xlIGRl
bHRhIHZhbHVlIHVzaW5nIHRoZSAyMS1lbnRyeSBQREYgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtf
cmVsX3BpdGNoX3BkZiIvPi4KK0lmIHRoZSByZXN1bHRpbmcgdmFsdWUgaXMgemVybywgaXQgZmFs
bHMgYmFjayB0byB0aGUgYWJzb2x1dGUgY29kaW5nIHByb2NlZHVyZQorIGZyb20gdGhlIHByaW9y
IHBhcmFncmFwaC4KK090aGVyd2lzZSwgdGhlIGZpbmFsIHByaW1hcnkgcGl0Y2ggbGFnIGlzIHRo
ZW4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKK2xhZyA9IHByZXZpb3VzX2xhZyArIChkZWx0YV9sYWdfaW5kZXggLSA5KQorXV0+PC9h
cnR3b3JrPgorPC9maWd1cmU+Cisgd2hlcmUgcHJldmlvdXNfbGFnIGlzIHRoZSBwcmltYXJ5IHBp
dGNoIGxhZyBmcm9tIHRoZSBtb3N0IHJlY2VudCBmcmFtZSBpbiB0aGUKKyBzYW1lIGNoYW5uZWwg
YW5kIGRlbHRhX2xhZ19pbmRleCBpcyB0aGUgdmFsdWUganVzdCBkZWNvZGVkLgorVGhpcyBhbGxv
d3MgYSBwZXItZnJhbWUgY2hhbmdlIGluIHRoZSBwaXRjaCBsYWcgb2YgLTggdG8gKzExIHNhbXBs
ZXMuCitUaGUgZGVjb2RlciBkb2VzIG5vIGNsYW1waW5nIGF0IHRoaXMgcG9pbnQsIHNvIHRoaXMg
dmFsdWUgY2FuIGZhbGwgb3V0c2lkZSB0aGUKKyByYW5nZSBvZiAyJm5ic3A7bXMgdG8gMTgmbmJz
cDttcywgYW5kIHRoZSBkZWNvZGVyIG11c3QgdXNlIHRoaXMgdW5jbGFtcGVkCisgdmFsdWUgd2hl
biB1c2luZyByZWxhdGl2ZSBjb2RpbmcgaW4gdGhlIG5leHQgU0lMSyBmcmFtZSAoaWYgYW55KS4K
K0hvd2V2ZXIsIGJlY2F1c2UgYW4gT3B1cyBmcmFtZSBjYW4gdXNlIHJlbGF0aXZlIGNvZGluZyBm
b3IgYXQgbW9zdCB0d28KKyBjb25zZWN1dGl2ZSBTSUxLIGZyYW1lcywgaW50ZWdlciBvdmVyZmxv
dyBzaG91bGQgbm90IGJlIGFuIGlzc3VlLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2ls
a19yZWxfcGl0Y2hfcGRmIgorIHRpdGxlPSJQREYgZm9yIFByaW1hcnkgUGl0Y2ggTGFnIENoYW5n
ZSI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz57NDYsICAyLCAgMiwgIDMs
ICA0LCAgNiwgMTAsIDE1LAorICAgIDI2LCAzOCwgMzAsIDIyLCAxNSwgMTAsICA3LCAgNiwKKyAg
ICAgNCwgIDQsICAyLCAgMiwgIDJ9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK0FmdGVy
IHRoZSBwcmltYXJ5IHBpdGNoIGxhZywgYSAicGl0Y2ggY29udG91ciIsIHN0b3JlZCBhcyBhIHNp
bmdsZSBlbnRyeSBmcm9tCisgb25lIG9mIGZvdXIgc21hbGwgVlEgY29kZWJvb2tzLCBnaXZlcyBs
YWcgb2Zmc2V0cyBmb3IgZWFjaCBzdWJmcmFtZSBpbiB0aGUKKyBjdXJyZW50IFNJTEsgZnJhbWUu
CitUaGUgY29kZWJvb2sgaW5kZXggaXMgZGVjb2RlZCB1c2luZyBvbmUgb2YgdGhlIFBERnMgaW4K
KyA8eHJlZiB0YXJnZXQ9InNpbGtfcGl0Y2hfY29udG91cl9wZGZzIi8+IGRlcGVuZGluZyBvbiB0
aGUgY3VycmVudCBmcmFtZSBzaXplCisgYW5kIGF1ZGlvIGJhbmR3aWR0aC4KK1RhYmxlcyZuYnNw
Ozx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX3BpdGNoX2NvbnRvdXJfY2JfbmIx
MG1zIi8+CisgdGhyb3VnaCZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxr
X3BpdGNoX2NvbnRvdXJfY2JfbWJ3YjIwbXMiLz4KKyBnaXZlIHRoZSBjb3JyZXNwb25kaW5nIG9m
ZnNldHMgdG8gYXBwbHkgdG8gdGhlIHByaW1hcnkgcGl0Y2ggbGFnIGZvciBlYWNoCisgc3ViZnJh
bWUgZ2l2ZW4gdGhlIGRlY29kZWQgY29kZWJvb2sgaW5kZXguCis8L3Q+CisKKzx0ZXh0dGFibGUg
YW5jaG9yPSJzaWxrX3BpdGNoX2NvbnRvdXJfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgU3ViZnJh
bWUgUGl0Y2ggQ29udG91ciI+Cis8dHRjb2w+QXVkaW8gQmFuZHdpZHRoPC90dGNvbD4KKzx0dGNv
bD5TSUxLIEZyYW1lIFNpemU8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+Q29kZWJvb2sg
U2l6ZTwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPk5CPC9jPiAgICAgICA8Yz4xMCZu
YnNwO21zPC9jPiAgPGM+MzwvYz4KKzxjPnsxNDMsIDUwLCA2M30vMjU2PC9jPgorPGM+TkI8L2M+
ICAgICAgIDxjPjIwJm5ic3A7bXM8L2M+IDxjPjExPC9jPgorPGM+ezY4LCAxMiwgMjEsIDE3LCAx
OSwgMjIsIDMwLCAyNCwKKyAgICAxNywgMTYsIDEwfS8yNTY8L2M+Cis8Yz5NQiBvciBXQjwvYz4g
PGM+MTAmbmJzcDttczwvYz4gPGM+MTI8L2M+Cis8Yz57OTEsIDQ2LCAzOSwgMTksIDE0LCAxMiwg
IDgsICA3LAorICAgICA2LCAgNSwgIDUsICA0fS8yNTY8L2M+Cis8Yz5NQiBvciBXQjwvYz4gPGM+
MjAmbmJzcDttczwvYz4gPGM+MzQ8L2M+Cis8Yz57MzMsIDIyLCAxOCwgMTYsIDE1LCAxNCwgMTQs
IDEzLAorICAgIDEzLCAxMCwgIDksICA5LCAgOCwgIDYsICA2LCAgNiwKKyAgICAgNSwgIDQsICA0
LCAgNCwgIDMsICAzLCAgMywgIDIsCisgICAgIDIsICAyLCAgMiwgIDIsICAyLCAgMiwgIDEsICAx
LAorICAgICAxLCAgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9y
PSJzaWxrX3BpdGNoX2NvbnRvdXJfY2JfbmIxMG1zIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0b3Jz
IGZvciBTdWJmcmFtZSBQaXRjaCBDb250b3VyOiBOQiwgMTAmbmJzcDttcyBGcmFtZXMiPgorPHR0
Y29sPkluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPlN1YmZyYW1lIE9mZnNldHM8
L3R0Y29sPgorPGM+MDwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZu
YnNwOzA8L3NwYW54PjwvYz4KKzxjPjE8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNw
OzEmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+Cis8Yz4yPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MTwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisKKzx0
ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3BpdGNoX2NvbnRvdXJfY2JfbmIyMG1zIgorIHRpdGxlPSJD
b2RlYm9vayBWZWN0b3JzIGZvciBTdWJmcmFtZSBQaXRjaCBDb250b3VyOiBOQiwgMjAmbmJzcDtt
cyBGcmFtZXMiPgorPHR0Y29sPkluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPlN1
YmZyYW1lIE9mZnNldHM8L3R0Y29sPgorIDxjPjA8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PiZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3NwYW54Pjwv
Yz4KKyA8Yz4xPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsyJm5ic3A7Jm5ic3A7
MSZuYnNwOyZuYnNwOzAmbmJzcDstMTwvc3Bhbng+PC9jPgorIDxjPjI8L2M+IDxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPi0xJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsyPC9z
cGFueD48L2M+CisgPGM+MzwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEmbmJzcDsmbmJz
cDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8Yz40PC9jPiA8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4tMSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5i
c3A7MDwvc3Bhbng+PC9jPgorIDxjPjU8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNw
OzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8
Yz42PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNw
OyZuYnNwOzEmbmJzcDsmbmJzcDsxPC9zcGFueD48L2M+CisgPGM+NzwvYz4gPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7
MDwvc3Bhbng+PC9jPgorIDxjPjg8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEm
bmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8Yz45
PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZu
YnNwOzAmbmJzcDstMTwvc3Bhbng+PC9jPgorPGM+MTA8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPiZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOy0xPC9zcGFueD48L2M+
Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfcGl0Y2hfY29udG91cl9j
Yl9tYndiMTBtcyIKKyB0aXRsZT0iQ29kZWJvb2sgVmVjdG9ycyBmb3IgU3ViZnJhbWUgUGl0Y2gg
Q29udG91cjogTUIgb3IgV0IsIDEwJm5ic3A7bXMgRnJhbWVzIj4KKzx0dGNvbD5JbmRleDwvdHRj
b2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5TdWJmcmFtZSBPZmZzZXRzPC90dGNvbD4KKyA8Yz4w
PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+
PC9jPgorIDxjPjE8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJz
cDsxPC9zcGFueD48L2M+CisgPGM+MjwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7
MSZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8Yz4zPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4tMSZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8Yz40PC9jPiA8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4mbmJzcDsxJm5ic3A7LTE8L3NwYW54PjwvYz4KKyA8Yz41PC9jPiA8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4tMSZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4KKyA8Yz42PC9jPiA8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsyJm5ic3A7LTE8L3NwYW54PjwvYz4KKyA8Yz43
PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMiZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4K
KyA8Yz44PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsyJm5ic3A7LTI8L3NwYW54
PjwvYz4KKyA8Yz45PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMiZuYnNwOyZuYnNwOzM8
L3NwYW54PjwvYz4KKzxjPjEwPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDszJm5i
c3A7LTI8L3NwYW54PjwvYz4KKzxjPjExPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMyZu
YnNwOyZuYnNwOzM8L3NwYW54PjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hv
cj0ic2lsa19waXRjaF9jb250b3VyX2NiX21id2IyMG1zIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0
b3JzIGZvciBTdWJmcmFtZSBQaXRjaCBDb250b3VyOiBNQiBvciBXQiwgMjAmbmJzcDttcyBGcmFt
ZXMiPgorPHR0Y29sPkluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPlN1YmZyYW1l
IE9mZnNldHM8L3R0Y29sPgorIDxjPjA8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNw
OzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8
Yz4xPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNw
OyZuYnNwOzEmbmJzcDsmbmJzcDsxPC9zcGFueD48L2M+CisgPGM+MjwvYz4gPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7
MDwvc3Bhbng+PC9jPgorIDxjPjM8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xJm5ic3A7
Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+CisgPGM+NDwvYz4g
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsw
Jm5ic3A7Jm5ic3A7MTwvc3Bhbng+PC9jPgorIDxjPjU8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPiZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3NwYW54
PjwvYz4KKyA8Yz42PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMSZuYnNwOyZuYnNwOzAm
bmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MTwvc3Bhbng+PC9jPgorIDxjPjc8L2M+IDxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOy0x
PC9zcGFueD48L2M+CisgPGM+ODwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEmbmJzcDsm
bmJzcDswJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4KKyA8Yz45PC9jPiA8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsxJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzAm
bmJzcDstMTwvc3Bhbng+PC9jPgorPGM+MTA8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0y
Jm5ic3A7LTEmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7Mjwvc3Bhbng+PC9jPgorPGM+MTE8L2M+
IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzImbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7
MCZuYnNwOy0xPC9zcGFueD48L2M+Cis8Yz4xMjwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
LTImbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4KKzxj
PjEzPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMiZuYnNwOyZuYnNwOzAmbmJzcDsmbmJz
cDsxJm5ic3A7Jm5ic3A7Mzwvc3Bhbng+PC9jPgorPGM+MTQ8L2M+IDxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPiZuYnNwOzImbmJzcDsmbmJzcDsxJm5ic3A7LTEmbmJzcDstMjwvc3Bhbng+PC9jPgor
PGM+MTU8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0zJm5ic3A7LTEmbmJzcDsmbmJzcDsx
Jm5ic3A7Jm5ic3A7Mzwvc3Bhbng+PC9jPgorPGM+MTY8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPiZuYnNwOzImbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOy0yPC9zcGFueD48L2M+
Cis8Yz4xNzwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MyZuYnNwOyZuYnNwOzEm
bmJzcDsmbmJzcDswJm5ic3A7LTI8L3NwYW54PjwvYz4KKzxjPjE4PC9jPiA8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4tMyZuYnNwOy0xJm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOzQ8L3NwYW54Pjwv
Yz4KKzxjPjE5PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tNCZuYnNwOy0xJm5ic3A7Jm5i
c3A7MSZuYnNwOyZuYnNwOzQ8L3NwYW54PjwvYz4KKzxjPjIwPC9jPiA8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4mbmJzcDszJm5ic3A7Jm5ic3A7MSZuYnNwOy0xJm5ic3A7LTM8L3NwYW54PjwvYz4K
KzxjPjIxPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tNCZuYnNwOy0xJm5ic3A7Jm5ic3A7
MiZuYnNwOyZuYnNwOzU8L3NwYW54PjwvYz4KKzxjPjIyPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDs0Jm5ic3A7Jm5ic3A7MiZuYnNwOy0xJm5ic3A7LTM8L3NwYW54PjwvYz4KKzxj
PjIzPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs0Jm5ic3A7Jm5ic3A7MSZuYnNw
Oy0xJm5ic3A7LTQ8L3NwYW54PjwvYz4KKzxjPjI0PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4tNSZuYnNwOy0xJm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOzY8L3NwYW54PjwvYz4KKzxjPjI1
PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs1Jm5ic3A7Jm5ic3A7MiZuYnNwOy0x
Jm5ic3A7LTQ8L3NwYW54PjwvYz4KKzxjPjI2PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4t
NiZuYnNwOy0yJm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOzY8L3NwYW54PjwvYz4KKzxjPjI3PC9j
PiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tNSZuYnNwOy0yJm5ic3A7Jm5ic3A7MiZuYnNwOyZu
YnNwOzU8L3NwYW54PjwvYz4KKzxjPjI4PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJz
cDs2Jm5ic3A7Jm5ic3A7MiZuYnNwOy0xJm5ic3A7LTU8L3NwYW54PjwvYz4KKzxjPjI5PC9jPiA8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tNyZuYnNwOy0yJm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNw
Ozg8L3NwYW54PjwvYz4KKzxjPjMwPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs2
Jm5ic3A7Jm5ic3A7MiZuYnNwOy0yJm5ic3A7LTY8L3NwYW54PjwvYz4KKzxjPjMxPC9jPiA8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs1Jm5ic3A7Jm5ic3A7MiZuYnNwOy0yJm5ic3A7LTU8
L3NwYW54PjwvYz4KKzxjPjMyPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs4Jm5i
c3A7Jm5ic3A7MyZuYnNwOy0yJm5ic3A7LTc8L3NwYW54PjwvYz4KKzxjPjMzPC9jPiA8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4tOSZuYnNwOy0zJm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzk8L3Nw
YW54PjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK1RoZSBmaW5hbCBwaXRjaCBsYWcgZm9yIGVh
Y2ggc3ViZnJhbWUgaXMgYXNzZW1ibGVkIGluIHNpbGtfZGVjb2RlX3BpdGNoKCkKKyAoZGVjb2Rl
X3BpdGNoLmMpLgorTGV0IGxhZyBiZSB0aGUgcHJpbWFyeSBwaXRjaCBsYWcgZm9yIHRoZSBjdXJy
ZW50IFNJTEsgZnJhbWUsIGNvbnRvdXJfaW5kZXggYmUKKyBpbmRleCBvZiB0aGUgVlEgY29kZWJv
b2ssIGFuZCBsYWdfY2JbY29udG91cl9pbmRleF1ba10gYmUgdGhlIGNvcnJlc3BvbmRpbmcKKyBl
bnRyeSBvZiB0aGUgY29kZWJvb2sgZnJvbSB0aGUgYXBwcm9wcmlhdGUgdGFibGUgZ2l2ZW4gYWJv
dmUgZm9yIHRoZSBrJ3RoCisgc3ViZnJhbWUuCitUaGVuIHRoZSBmaW5hbCBwaXRjaCBsYWcgZm9y
IHRoYXQgc3ViZnJhbWUgaXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGln
bj0iY2VudGVyIj48IVtDREFUQVsKK3BpdGNoX2xhZ3Nba10gPSBjbGFtcChsYWdfbWluLCBsYWcg
KyBsYWdfY2JbY29udG91cl9pbmRleF1ba10sCisgICAgICAgICAgICAgICAgICAgICAgbGFnX21h
eCkKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdoZXJlIGxhZ19taW4gYW5kIGxhZ19tYXgg
YXJlIHRoZSB2YWx1ZXMgZnJvbSB0aGUgIk1pbmltdW0gTGFnIiBhbmQKKyAiTWF4aW11bSBMYWci
IGNvbHVtbnMgb2YgPHhyZWYgdGFyZ2V0PSJzaWxrX2Fic19waXRjaF9sb3dfcGRmIi8+LAorIHJl
c3BlY3RpdmVseS4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtf
bHRwX2ZpbHRlciIgdGl0bGU9IkxUUCBGaWx0ZXIgQ29lZmZpY2llbnRzIj4KKzx0PgorU0lMSyB1
c2VzIGEgc2VwYXJhdGUgNS10YXAgcGl0Y2ggZmlsdGVyIGZvciBlYWNoIHN1YmZyYW1lLCBzZWxl
Y3RlZCBmcm9tIG9uZQorIG9mIHRocmVlIGNvZGVib29rcy4KK1RoZSB0aHJlZSBjb2RlYm9va3Mg
ZWFjaCByZXByZXNlbnQgZGlmZmVyZW50IHJhdGUtZGlzdG9ydGlvbiB0cmFkZS1vZmZzLCB3aXRo
CisgYXZlcmFnZSByYXRlcyBvZiAxLjYxJm5ic3A7Yml0cy9zdWJmcmFtZSwgMy42OCZuYnNwO2Jp
dHMvc3ViZnJhbWUsIGFuZAorIDQuODUmbmJzcDtiaXRzL3N1YmZyYW1lLCByZXNwZWN0aXZlbHku
Cis8L3Q+CisKKzx0PgorVGhlIGltcG9ydGFuY2Ugb2YgdGhlIGZpbHRlciBjb2VmZmljaWVudHMg
Z2VuZXJhbGx5IGRlcGVuZHMgb24gdHdvIGZhY3RvcnM6IHRoZQorIHBlcmlvZGljaXR5IG9mIHRo
ZSBzaWduYWwgYW5kIHJlbGF0aXZlIGVuZXJneSBiZXR3ZWVuIHRoZSBjdXJyZW50IHN1YmZyYW1l
IGFuZAorIHRoZSBzaWduYWwgZnJvbSBvbmUgcGVyaW9kIGVhcmxpZXIuCitHcmVhdGVyIHBlcmlv
ZGljaXR5IGFuZCBkZWNheWluZyBlbmVyZ3kgYm90aCBsZWFkIHRvIG1vcmUgaW1wb3J0YW50IGZp
bHRlcgorIGNvZWZmaWNpZW50cywgYW5kIHRodXMgc2hvdWxkIGJlIGNvZGVkIHdpdGggbG93ZXIg
ZGlzdG9ydGlvbiBhbmQgaGlnaGVyIHJhdGUuCitUaGVzZSBwcm9wZXJ0aWVzIGFyZSByZWxhdGl2
ZWx5IHN0YWJsZSBvdmVyIHRoZSBkdXJhdGlvbiBvZiBhIHNpbmdsZSBTSUxLCisgZnJhbWUsIGhl
bmNlIGFsbCBvZiB0aGUgc3ViZnJhbWVzIGluIGEgU0lMSyBmcmFtZSBjaG9vc2UgdGhlaXIgZmls
dGVyIGZyb20gdGhlCisgc2FtZSBjb2RlYm9vay4KK1RoaXMgaXMgc2lnbmFsZWQgd2l0aCBhbiBl
eHBsaWNpdGx5LWNvZGVkICJwZXJpb2RpY2l0eSBpbmRleCIuCitUaGlzIGltbWVkaWF0ZWx5IGZv
bGxvd3MgdGhlIHN1YmZyYW1lIHBpdGNoIGxhZ3MsIGFuZCBpcyBjb2RlZCB1c2luZyB0aGUKKyAz
LWVudHJ5IFBERiBmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19wZXJpbmRleF9wZGYiLz4uCis8L3Q+
CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3BlcmluZGV4X3BkZiIgdGl0bGU9IlBlcmlvZGlj
aXR5IEluZGV4IFBERiI+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPns3NywgODAsIDk5fS8yNTY8
L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitUaGUgaW5kaWNlcyBvZiB0aGUgZmlsdGVycyBmb3Ig
ZWFjaCBzdWJmcmFtZSBmb2xsb3cuCitUaGV5IGFyZSBhbGwgY29kZWQgdXNpbmcgdGhlIFBERiBm
cm9tIDx4cmVmIHRhcmdldD0ic2lsa19sdHBfZmlsdGVyX3BkZnMiLz4KKyBjb3JyZXNwb25kaW5n
IHRvIHRoZSBwZXJpb2RpY2l0eSBpbmRleC4KK1RhYmxlcyZuYnNwOzx4cmVmIGZvcm1hdD0iY291
bnRlciIgdGFyZ2V0PSJzaWxrX2x0cF9maWx0ZXJfY29lZmZzMCIvPgorIHRocm91Z2gmbmJzcDs8
eHJlZiBmb3JtYXQ9ImNvdW50ZXIiIHRhcmdldD0ic2lsa19sdHBfZmlsdGVyX2NvZWZmczIiLz4K
KyBjb250YWluIHRoZSBjb3JyZXNwb25kaW5nIGZpbHRlciB0YXBzIGFzIHNpZ25lZCBRNyBpbnRl
Z2Vycy4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbHRwX2ZpbHRlcl9wZGZzIiB0
aXRsZT0iTFRQIEZpbHRlciBQREZzIj4KKzx0dGNvbD5QZXJpb2RpY2l0eSBJbmRleDwvdHRjb2w+
Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5Db2RlYm9vayBTaXplPC90dGNvbD4KKzx0dGNvbD5QREY8
L3R0Y29sPgorPGM+MDwvYz4gIDxjPjg8L2M+IDxjPnsxODUsIDE1LCAxMywgMTMsIDksIDksIDYs
IDZ9LzI1NjwvYz4KKzxjPjE8L2M+IDxjPjE2PC9jPiA8Yz57NTcsIDM0LCAyMSwgMjAsIDE1LCAx
MywgMTIsIDEzLAorICAgICAgICAgICAgICAgICAgICAgICAxMCwgMTAsICA5LCAxMCwgIDksICA4
LCAgNywgIDh9LzI1NjwvYz4KKzxjPjI8L2M+IDxjPjMyPC9jPiA8Yz57MTUsIDE2LCAxNCwgMTIs
IDEyLCAxMiwgMTEsIDExLAorICAgICAgICAgICAgICAgICAgICAgICAxMSwgMTAsICA5LCAgOSwg
IDksICA5LCAgOCwgIDgsCisgICAgICAgICAgICAgICAgICAgICAgICA4LCAgOCwgIDcsICA3LCAg
NiwgIDYsICA1LCAgNCwKKyAgICAgICAgICAgICAgICAgICAgICAgIDUsICA0LCAgNCwgIDQsICAz
LCAgNCwgIDMsICAyfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9
InNpbGtfbHRwX2ZpbHRlcl9jb2VmZnMwIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0b3JzIGZvciBM
VFAgRmlsdGVyLCBQZXJpb2RpY2l0eSBJbmRleCAwIj4KKzx0dGNvbD5JbmRleDwvdHRjb2w+Cis8
dHRjb2wgYWxpZ249InJpZ2h0Ij5GaWx0ZXIgVGFwcyAoUTcpPC90dGNvbD4KKyA8Yz4wPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7NCZuYnNwOyZuYnNwOyZuYnNwOzYm
bmJzcDsmbmJzcDsyNCZuYnNwOyZuYnNwOyZuYnNwOzcmbmJzcDsmbmJzcDsmbmJzcDs1PC9zcGFu
eD48L2M+CisgPGM+MTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzAm
bmJzcDsmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOyZuYnNwOzAm
bmJzcDsmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+CisgPGM+MjwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPiZuYnNwOzEyJm5ic3A7Jm5ic3A7MjgmbmJzcDsmbmJzcDs0MSZuYnNwOyZuYnNw
OzEzJm5ic3A7Jm5ic3A7LTQ8L3NwYW54PjwvYz4KKyA8Yz4zPC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+Jm5ic3A7LTkmbmJzcDsmbmJzcDsxNSZuYnNwOyZuYnNwOzQyJm5ic3A7Jm5ic3A7
MjUmbmJzcDsmbmJzcDsxNDwvc3Bhbng+PC9jPgorIDxjPjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4mbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7LTImbmJzcDsmbmJzcDs2MiZuYnNwOyZu
YnNwOzQxJm5ic3A7Jm5ic3A7LTk8L3NwYW54PjwvYz4KKyA8Yz41PC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+LTEwJm5ic3A7Jm5ic3A7MzcmbmJzcDsmbmJzcDs2NSZuYnNwOyZuYnNwOy00
Jm5ic3A7Jm5ic3A7Jm5ic3A7Mzwvc3Bhbng+PC9jPgorIDxjPjY8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4mbmJzcDstNiZuYnNwOyZuYnNwOyZuYnNwOzQmbmJzcDsmbmJzcDs2NiZuYnNw
OyZuYnNwOyZuYnNwOzcmbmJzcDsmbmJzcDstODwvc3Bhbng+PC9jPgorIDxjPjc8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsxNiZuYnNwOyZuYnNwOzE0Jm5ic3A7Jm5ic3A7Mzgm
bmJzcDsmbmJzcDstMyZuYnNwOyZuYnNwOzMzPC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKwor
PHRleHR0YWJsZSBhbmNob3I9InNpbGtfbHRwX2ZpbHRlcl9jb2VmZnMxIgorIHRpdGxlPSJDb2Rl
Ym9vayBWZWN0b3JzIGZvciBMVFAgRmlsdGVyLCBQZXJpb2RpY2l0eSBJbmRleCAxIj4KKzx0dGNv
bD5JbmRleDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5GaWx0ZXIgVGFwcyAoUTcpPC90
dGNvbD4KKworIDxjPjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsxMyZuYnNw
OyZuYnNwOzIyJm5ic3A7Jm5ic3A7MzkmbmJzcDsmbmJzcDsyMyZuYnNwOyZuYnNwOzEyPC9zcGFu
eD48L2M+CisgPGM+MTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy0xJm5ic3A7
Jm5ic3A7MzYmbmJzcDsmbmJzcDs2NCZuYnNwOyZuYnNwOzI3Jm5ic3A7Jm5ic3A7LTY8L3NwYW54
PjwvYz4KKyA8Yz4yPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTcmbmJzcDsm
bmJzcDsxMCZuYnNwOyZuYnNwOzU1Jm5ic3A7Jm5ic3A7NDMmbmJzcDsmbmJzcDsxNzwvc3Bhbng+
PC9jPgorIDxjPjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDsxJm5i
c3A7Jm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOyZuYnNwOzgmbmJzcDsmbmJzcDsmbmJzcDsxJm5i
c3A7Jm5ic3A7Jm5ic3A7MTwvc3Bhbng+PC9jPgorIDxjPjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4mbmJzcDsmbmJzcDs2Jm5ic3A7LTExJm5ic3A7Jm5ic3A7NzQmbmJzcDsmbmJzcDs1
MyZuYnNwOyZuYnNwOy05PC9zcGFueD48L2M+CisgPGM+NTwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPi0xMiZuYnNwOyZuYnNwOzU1Jm5ic3A7Jm5ic3A7NzYmbmJzcDstMTImbmJzcDsmbmJz
cDsmbmJzcDs4PC9zcGFueD48L2M+CisgPGM+NjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PiZuYnNwOy0zJm5ic3A7Jm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzkzJm5ic3A7Jm5ic3A7Mjcm
bmJzcDsmbmJzcDstNDwvc3Bhbng+PC9jPgorIDxjPjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDsyNiZuYnNwOyZuYnNwOzM5Jm5ic3A7Jm5ic3A7NTkmbmJzcDsmbmJzcDsmbmJz
cDszJm5ic3A7Jm5ic3A7LTg8L3NwYW54PjwvYz4KKyA8Yz44PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDs3NyZu
YnNwOyZuYnNwOzExJm5ic3A7Jm5ic3A7Jm5ic3A7OTwvc3Bhbng+PC9jPgorIDxjPjk8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDstOCZuYnNwOyZuYnNwOzIyJm5ic3A7Jm5ic3A7
NDQmbmJzcDsmbmJzcDstNiZuYnNwOyZuYnNwOyZuYnNwOzc8L3NwYW54PjwvYz4KKzxjPjEwPC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7NDAmbmJzcDsmbmJzcDsmbmJzcDs5Jm5i
c3A7Jm5ic3A7MjYmbmJzcDsmbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7Jm5ic3A7OTwvc3Bhbng+
PC9jPgorPGM+MTE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDstNyZuYnNwOyZu
YnNwOzIwJm5ic3A7MTAxJm5ic3A7Jm5ic3A7LTcmbmJzcDsmbmJzcDsmbmJzcDs0PC9zcGFueD48
L2M+Cis8Yz4xMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzMmbmJz
cDsmbmJzcDstOCZuYnNwOyZuYnNwOzQyJm5ic3A7Jm5ic3A7MjYmbmJzcDsmbmJzcDsmbmJzcDsw
PC9zcGFueD48L2M+Cis8Yz4xMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xNSZuYnNw
OyZuYnNwOzMzJm5ic3A7Jm5ic3A7NjgmbmJzcDsmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7MjM8
L3NwYW54PjwvYz4KKzxjPjE0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTIm
bmJzcDsmbmJzcDs1NSZuYnNwOyZuYnNwOzQ2Jm5ic3A7Jm5ic3A7LTImbmJzcDsmbmJzcDsxNTwv
c3Bhbng+PC9jPgorPGM+MTU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJz
cDszJm5ic3A7Jm5ic3A7LTEmbmJzcDsmbmJzcDsyMSZuYnNwOyZuYnNwOzE2Jm5ic3A7Jm5ic3A7
NDE8L3NwYW54PjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19s
dHBfZmlsdGVyX2NvZWZmczIiCisgdGl0bGU9IkNvZGVib29rIFZlY3RvcnMgZm9yIExUUCBGaWx0
ZXIsIFBlcmlvZGljaXR5IEluZGV4IDIiPgorPHR0Y29sPkluZGV4PC90dGNvbD4KKzx0dGNvbCBh
bGlnbj0icmlnaHQiPkZpbHRlciBUYXBzIChRNyk8L3R0Y29sPgorIDxjPjA8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4mbmJzcDstNiZuYnNwOyZuYnNwOzI3Jm5ic3A7Jm5ic3A7NjEmbmJz
cDsmbmJzcDszOSZuYnNwOyZuYnNwOyZuYnNwOzU8L3NwYW54PjwvYz4KKyA8Yz4xPC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTExJm5ic3A7Jm5ic3A7NDImbmJzcDsmbmJzcDs4OCZuYnNw
OyZuYnNwOyZuYnNwOzQmbmJzcDsmbmJzcDsmbmJzcDsxPC9zcGFueD48L2M+CisgPGM+MjwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy0yJm5ic3A7Jm5ic3A7NjAmbmJzcDsmbmJz
cDs2NSZuYnNwOyZuYnNwOyZuYnNwOzYmbmJzcDsmbmJzcDstNDwvc3Bhbng+PC9jPgorIDxjPjM8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDstMSZuYnNwOyZuYnNwOy01Jm5ic3A7
Jm5ic3A7NzMmbmJzcDsmbmJzcDs1NiZuYnNwOyZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8
Yz40PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTkmbmJzcDsmbmJzcDsxOSZu
YnNwOyZuYnNwOzk0Jm5ic3A7Jm5ic3A7MjkmbmJzcDsmbmJzcDstOTwvc3Bhbng+PC9jPgorIDxj
PjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7
MTImbmJzcDsmbmJzcDs5OSZuYnNwOyZuYnNwOyZuYnNwOzYmbmJzcDsmbmJzcDsmbmJzcDs0PC9z
cGFueD48L2M+CisgPGM+NjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNw
OzgmbmJzcDstMTkmbmJzcDsxMDImbmJzcDsmbmJzcDs0NiZuYnNwOy0xMzwvc3Bhbng+PC9jPgor
IDxjPjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDszJm5ic3A7Jm5i
c3A7Jm5ic3A7MiZuYnNwOyZuYnNwOzEzJm5ic3A7Jm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOyZu
YnNwOzI8L3NwYW54PjwvYz4KKyA8Yz44PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5i
c3A7Jm5ic3A7OSZuYnNwOy0yMSZuYnNwOyZuYnNwOzg0Jm5ic3A7Jm5ic3A7NzImbmJzcDstMTg8
L3NwYW54PjwvYz4KKyA8Yz45PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTExJm5ic3A7
Jm5ic3A7NDYmbmJzcDsxMDQmbmJzcDstMjImbmJzcDsmbmJzcDsmbmJzcDs4PC9zcGFueD48L2M+
Cis8Yz4xMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzE4Jm5ic3A7Jm5ic3A7
MzgmbmJzcDsmbmJzcDs0OCZuYnNwOyZuYnNwOzIzJm5ic3A7Jm5ic3A7Jm5ic3A7MDwvc3Bhbng+
PC9jPgorPGM+MTE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMTYmbmJzcDsmbmJzcDs3
MCZuYnNwOyZuYnNwOzgzJm5ic3A7LTIxJm5ic3A7Jm5ic3A7MTE8L3NwYW54PjwvYz4KKzxjPjEy
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7NSZuYnNwOy0xMSZuYnNw
OzExNyZuYnNwOyZuYnNwOzIyJm5ic3A7Jm5ic3A7LTg8L3NwYW54PjwvYz4KKzxjPjEzPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTYmbmJzcDsmbmJzcDsyMyZuYnNwOzExNyZu
YnNwOy0xMiZuYnNwOyZuYnNwOyZuYnNwOzM8L3NwYW54PjwvYz4KKzxjPjE0PC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOy04Jm5ic3A7Jm5ic3A7
OTUmbmJzcDsmbmJzcDsyOCZuYnNwOyZuYnNwOyZuYnNwOzQ8L3NwYW54PjwvYz4KKzxjPjE1PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEwJm5ic3A7Jm5ic3A7MTUmbmJzcDsmbmJzcDs3
NyZuYnNwOyZuYnNwOzYwJm5ic3A7LTE1PC9zcGFueD48L2M+Cis8Yz4xNjwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPiZuYnNwOy0xJm5ic3A7Jm5ic3A7Jm5ic3A7NCZuYnNwOzEyNCZuYnNw
OyZuYnNwOyZuYnNwOzImbmJzcDsmbmJzcDstNDwvc3Bhbng+PC9jPgorPGM+MTc8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7MzgmbmJzcDsmbmJz
cDs4NCZuYnNwOyZuYnNwOzI0Jm5ic3A7LTI1PC9zcGFueD48L2M+Cis8Yz4xODwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzImbmJzcDsmbmJzcDsxMyZuYnNwOyZuYnNw
OzQyJm5ic3A7Jm5ic3A7MTMmbmJzcDsmbmJzcDszMTwvc3Bhbng+PC9jPgorPGM+MTk8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsyMSZuYnNwOyZuYnNwOy00Jm5ic3A7Jm5ic3A7
NTYmbmJzcDsmbmJzcDs0NiZuYnNwOyZuYnNwOy0xPC9zcGFueD48L2M+Cis8Yz4yMDwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy0xJm5ic3A7Jm5ic3A7MzUmbmJzcDsmbmJzcDs3
OSZuYnNwOy0xMyZuYnNwOyZuYnNwOzE5PC9zcGFueD48L2M+Cis8Yz4yMTwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPiZuYnNwOy03Jm5ic3A7Jm5ic3A7NjUmbmJzcDsmbmJzcDs4OCZuYnNw
OyZuYnNwOy05Jm5ic3A7LTE0PC9zcGFueD48L2M+Cis8Yz4yMjwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPiZuYnNwOzIwJm5ic3A7Jm5ic3A7Jm5ic3A7NCZuYnNwOyZuYnNwOzgxJm5ic3A7
Jm5ic3A7NDkmbmJzcDstMjk8L3NwYW54PjwvYz4KKzxjPjIzPC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+Jm5ic3A7MjAmbmJzcDsmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7NzUmbmJzcDsm
bmJzcDsmbmJzcDszJm5ic3A7LTE3PC9zcGFueD48L2M+Cis8Yz4yNDwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzUmbmJzcDsmbmJzcDstOSZuYnNwOyZuYnNwOzQ0Jm5i
c3A7Jm5ic3A7OTImbmJzcDsmbmJzcDstODwvc3Bhbng+PC9jPgorPGM+MjU8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7LTMmbmJzcDsmbmJzcDsy
MiZuYnNwOyZuYnNwOzY5Jm5ic3A7Jm5ic3A7MzE8L3NwYW54PjwvYz4KKzxjPjI2PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTYmbmJzcDsmbmJzcDs5NSZuYnNwOyZuYnNwOzQx
Jm5ic3A7LTEyJm5ic3A7Jm5ic3A7Jm5ic3A7NTwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDszOSZuYnNwOyZuYnNwOzY3Jm5ic3A7Jm5ic3A7MTYm
bmJzcDsmbmJzcDstNCZuYnNwOyZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOy02Jm5ic3A7
MTIwJm5ic3A7Jm5ic3A7NTUmbmJzcDstMzY8L3NwYW54PjwvYz4KKzxjPjI5PC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+LTEzJm5ic3A7Jm5ic3A7NDQmbmJzcDsxMjImbmJzcDsmbmJzcDsm
bmJzcDs0Jm5ic3A7LTI0PC9zcGFueD48L2M+Cis8Yz4zMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPiZuYnNwOzgxJm5ic3A7Jm5ic3A7Jm5ic3A7NSZuYnNwOyZuYnNwOzExJm5ic3A7Jm5i
c3A7Jm5ic3A7MyZuYnNwOyZuYnNwOyZuYnNwOzc8L3NwYW54PjwvYz4KKzxjPjMxPC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOyZuYnNwOzAmbmJz
cDsmbmJzcDsmbmJzcDs5Jm5ic3A7Jm5ic3A7MTAmbmJzcDsmbmJzcDs4ODwvc3Bhbng+PC9jPgor
PC90ZXh0dGFibGU+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2x0cF9z
Y2FsaW5nIiB0aXRsZT0iTFRQIFNjYWxpbmcgUGFyYW1ldGVyIj4KKzx0PgorQW4gTFRQIHNjYWxp
bmcgcGFyYW1ldGVyIGFwcGVhcnMgYWZ0ZXIgdGhlIExUUCBmaWx0ZXIgY29lZmZpY2llbnRzIGlm
IGFuZCBvbmx5CisgaWYKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PlRoaXMgaXMgYSB2b2lj
ZWQgZnJhbWUgKHNlZSA8eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWVfdHlwZSIvPiksIGFuZDwvdD4K
Kzx0PkVpdGhlcgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitUaGlzIFNJTEsgZnJhbWUg
Y29ycmVzcG9uZHMgdG8gdGhlIGZpcnN0IHRpbWUgaW50ZXJ2YWwgb2YgdGhlCisgY3VycmVudCBP
cHVzIGZyYW1lIGZvciBpdHMgdHlwZSAoTEJSUiBvciByZWd1bGFyKSwgb3IKKzwvdD4KKzx0Pgor
VGhpcyBpcyBhbiBMQlJSIGZyYW1lIHdoZXJlIHRoZSBMQlJSIGZsYWdzIChzZWUKKyA8eHJlZiB0
YXJnZXQ9InNpbGtfbGJycl9mbGFncyIvPikgaW5kaWNhdGUgdGhlIHByZXZpb3VzIExCUlIgZnJh
bWUgaW4gdGhlIHNhbWUKKyBjaGFubmVsIGlzIG5vdCBjb2RlZC4KKzwvdD4KKzwvbGlzdD4KKzwv
dD4KKzwvbGlzdD4KK1RoaXMgYWxsb3dzIHRoZSBlbmNvZGVyIHRvIHRyYWRlIG9mZiB0aGUgcHJl
ZGljdGlvbiBnYWluIGJldHdlZW4KKyBwYWNrZXRzIGFnYWluc3QgdGhlIHJlY292ZXJ5IHRpbWUg
YWZ0ZXIgcGFja2V0IGxvc3MuCitVbmxpa2UgYWJzb2x1dGUtY29kaW5nIGZvciBwaXRjaCBsYWdz
LCByZWd1bGFyIFNJTEsgZnJhbWVzIHRoYXQgYXJlIG5vdCBhdCB0aGUKKyBzdGFydCBvZiBhbiBP
cHVzIGZyYW1lIChpLmUuLCB0aGF0IGRvIG5vdCBjb3JyZXNwb25kIHRvIHRoZSBmaXJzdCAyMCZu
YnNwO21zCisgdGltZSBpbnRlcnZhbCBpbiBPcHVzIGZyYW1lcyBvZiA0MCZuYnNwO29yIDYwJm5i
c3A7bXMpIGRvIG5vdCBpbmNsdWRlIHRoaXMKKyBmaWVsZCwgZXZlbiBpZiB0aGUgcHJpb3IgZnJh
bWUgd2FzIG5vdCB2b2ljZWQsIG9yIChpbiB0aGUgY2FzZSBvZiB0aGUgc2lkZQorIGNoYW5uZWwp
IG5vdCBldmVuIGNvZGVkLgorQWZ0ZXIgYW4gdW5jb2RlZCBmcmFtZSBpbiB0aGUgc2lkZSBjaGFu
bmVsLCB0aGUgTFRQIGJ1ZmZlciAoc2VlCisgPHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9zeW50aGVz
aXMiLz4pIGlzIGNsZWFyZWQgdG8gemVybywgYW5kIGlzIHRodXMgaW4gYQorIGtub3duIHN0YXRl
LgorSW4gY29udHJhc3QsIExCUlIgZnJhbWVzIGRvIGluY2x1ZGUgdGhpcyBmaWVsZCB3aGVuIHRo
ZSBwcmlvciBmcmFtZSB3YXMgbm90CisgY29kZWQsIHNpbmNlIHRoZSBMVFAgYnVmZmVyIGNvbnRh
aW5zIHRoZSBvdXRwdXQgb2YgdGhlIFBMQywgd2hpY2ggaXMKKyBub24tbm9ybWF0aXZlLgorPC90
PgorPHQ+CitJZiBwcmVzZW50LCB0aGUgZGVjb2RlciByZWFkcyBhIHZhbHVlIHVzaW5nIHRoZSAz
LWVudHJ5IFBERiBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19sdHBfc2NhbGluZ19wZGYiLz4uCitU
aGUgdGhyZWUgcG9zc2libGUgdmFsdWVzIHJlcHJlc2VudCBRMTQgc2NhbGUgZmFjdG9ycyBvZiAx
NTU2NSwgMTIyODgsIGFuZAorIDgxOTIsIHJlc3BlY3RpdmVseSAoY29ycmVzcG9uZGluZyB0byBh
cHByb3hpbWF0ZWx5IDAuOTUsIDAuNzUsIGFuZCAwLjUpLgorRnJhbWVzIHRoYXQgZG8gbm90IGNv
ZGUgdGhlIHNjYWxpbmcgcGFyYW1ldGVyIHVzZSB0aGUgZGVmYXVsdCBmYWN0b3Igb2YgMTU1NjUK
KyAoYXBwcm94aW1hdGVseSAwLjk1KS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtf
bHRwX3NjYWxpbmdfcGRmIgorIHRpdGxlPSJQREYgZm9yIExUUCBTY2FsaW5nIFBhcmFtZXRlciI+
Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz57MTI4LCA2NCwgNjR9LzI1Njwv
Yz4KKzwvdGV4dHRhYmxlPgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
YW5jaG9yPSJzaWxrX3NlZWQiIHRvYz0iaW5jbHVkZSIKKyB0aXRsZT0iTGluZWFyIENvbmdydWVu
dGlhbCBHZW5lcmF0b3IgKExDRykgU2VlZCI+Cis8dD4KK0FzIGRlc2NyaWJlZCBpbiA8eHJlZiB0
YXJnZXQ9InNpbGtfZXhjaXRhdGlvbl9yZWNvbnN0cnVjdGlvbiIvPiwgU0lMSyB1c2VzIGEKKyBs
aW5lYXIgY29uZ3J1ZW50aWFsIGdlbmVyYXRvciAoTENHKSB0byBpbmplY3QgcHNldWRvcmFuZG9t
IG5vaXNlIGludG8gdGhlCisgcXVhbnRpemVkIGV4Y2l0YXRpb24uCitUbyBlbnN1cmUgc3luY2hy
b25pemF0aW9uIG9mIHRoaXMgcHJvY2VzcyBiZXR3ZWVuIHRoZSBlbmNvZGVyIGFuZCBkZWNvZGVy
LCBlYWNoCisgU0lMSyBmcmFtZSBzdG9yZXMgYSAyLWJpdCBzZWVkIGFmdGVyIHRoZSBMVFAgcGFy
YW1ldGVycyAoaWYgYW55KS4KK1RoZSBlbmNvZGVyIG1heSBjb25zaWRlciB0aGUgY2hvaWNlIG9m
IHNlZWQgZHVyaW5nIHF1YW50aXphdGlvbiwgYW5kIHRoZQorIGZsZXhpYmlsaXR5IG9mIHRoaXMg
Y2hvaWNlIGxldHMgaXQgcmVkdWNlIGRpc3RvcnRpb24sIGhlbHBpbmcgdG8gcGF5IGZvciB0aGUK
KyBiaXQgY29zdCByZXF1aXJlZCB0byBzaWduYWwgaXQuCitUaGUgZGVjb2RlciByZWFkcyB0aGUg
c2VlZCB1c2luZyB0aGUgdW5pZm9ybSA0LWVudHJ5IFBERiBpbgorIDx4cmVmIHRhcmdldD0ic2ls
a19zZWVkX3BkZiIvPiwgeWllbGRpbmcgYSB2YWx1ZSBiZXR3ZWVuIDAgYW5kIDMsIGluY2x1c2l2
ZS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfc2VlZF9wZGYiCisgdGl0bGU9IlBE
RiBmb3IgTENHIFNlZWQiPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29sPgorPGM+ezY0
LCA2NCwgNjQsIDY0fS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2Vj
dGlvbiBhbmNob3I9InNpbGtfZXhjaXRhdGlvbiIgdG9jPSJpbmNsdWRlIiB0aXRsZT0iRXhjaXRh
dGlvbiI+Cis8dD4KK1NJTEsgY29kZXMgdGhlIGV4Y2l0YXRpb24gdXNpbmcgYSBtb2RpZmllZCB2
ZXJzaW9uIG9mIHRoZSBQeXJhbWlkIFZlY3RvcgorIFF1YW50aXphdGlvbiAoUFZRKSBjb2RlYm9v
ayA8eHJlZiB0YXJnZXQ9IlBWUSIvPi4KK1RoZSBQVlEgY29kZWJvb2sgaXMgZGVzaWduZWQgZm9y
IExhcGxhY2UtZGlzdHJpYnV0ZWQgdmFsdWVzIGFuZCBjb25zaXN0cyBvZiBhbGwKKyBzdW1zIG9m
IEsgc2lnbmVkLCB1bml0IHB1bHNlcyBpbiBhIHZlY3RvciBvZiBkaW1lbnNpb24gTiwgd2hlcmUg
dHdvIHB1bHNlcyBhdAorIHRoZSBzYW1lIHBvc2l0aW9uIGFyZSByZXF1aXJlZCB0byBoYXZlIHRo
ZSBzYW1lIHNpZ24uCitUaHVzIHRoZSBjb2RlYm9vayBpbmNsdWRlcyBhbGwgaW50ZWdlciBjb2Rl
dmVjdG9ycyB5IG9mIGRpbWVuc2lvbiBOIHRoYXQKKyBzYXRpc2Z5Cis8ZmlndXJlIGFsaWduPSJj
ZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitOLTEKK19fCitcICBh
YnMoeVtqXSkgPSBLIC4KKy9fCitqPTAKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVW5saWtl
IHJlZ3VsYXIgUFZRLCBTSUxLIHVzZXMgYSB2YXJpYWJsZS1sZW5ndGgsIHJhdGhlciB0aGFuIGZp
eGVkLWxlbmd0aCwKKyBlbmNvZGluZy4KK1RoaXMgZW5jb2RpbmcgaXMgYmV0dGVyIHN1aXRlZCB0
byB0aGUgbW9yZSBHYXVzc2lhbi1saWtlIGRpc3RyaWJ1dGlvbiBvZiB0aGUKKyBjb2VmZmljaWVu
dCBtYWduaXR1ZGVzIGFuZCB0aGUgbm9uLXVuaWZvcm0gZGlzdHJpYnV0aW9uIG9mIHRoZWlyIHNp
Z25zIChjYXVzZWQKKyBieSB0aGUgcXVhbnRpemF0aW9uIG9mZnNldCBkZXNjcmliZWQgYmVsb3cp
LgorU0lMSyBhbHNvIGhhbmRsZXMgbGFyZ2UgY29kZWJvb2tzIGJ5IGNvZGluZyB0aGUgbGVhc3Qg
c2lnbmlmaWNhbnQgYml0cyAoTFNCcykKKyBvZiBlYWNoIGNvZWZmaWNpZW50IGRpcmVjdGx5Lgor
VGhpcyBhZGRzIGEgc21hbGwgY29kaW5nIGVmZmljaWVuY3kgbG9zcywgYnV0IGdyZWF0bHkgcmVk
dWNlcyB0aGUgY29tcHV0YXRpb24KKyB0aW1lIGFuZCBST00gc2l6ZSByZXF1aXJlZCBmb3IgZGVj
b2RpbmcsIGFzIGltcGxlbWVudGVkIGluCisgc2lsa19kZWNvZGVfcHVsc2VzKCkgKGRlY29kZV9w
dWxzZXMuYykuCis8L3Q+CisKKzx0PgorU0lMSyBmaXhlcyB0aGUgZGltZW5zaW9uIG9mIHRoZSBj
b2RlYm9vayB0byBOJm5ic3A7PSZuYnNwOzE2LgorVGhlIGV4Y2l0YXRpb24gaXMgbWFkZSB1cCBv
ZiBhIG51bWJlciBvZiAic2hlbGwgYmxvY2tzIiwgZWFjaCAxNiBzYW1wbGVzIGluCisgc2l6ZS4K
Kzx4cmVmIHRhcmdldD0ic2lsa19zaGVsbF9ibG9ja190YWJsZSIvPiBsaXN0cyB0aGUgbnVtYmVy
IG9mIHNoZWxsIGJsb2NrcworIHJlcXVpcmVkIGZvciBhIFNJTEsgZnJhbWUgZm9yIGVhY2ggcG9z
c2libGUgYXVkaW8gYmFuZHdpZHRoIGFuZCBmcmFtZSBzaXplLgorMTAmbmJzcDttcyBNQiBmcmFt
ZXMgbm9taW5hbGx5IGNvbnRhaW4gMTIwJm5ic3A7c2FtcGxlcyAoMTAmbmJzcDttcyBhdAorIDEy
Jm5ic3A7a0h6KSwgd2hpY2ggaXMgbm90IGEgbXVsdGlwbGUgb2YgMTYuCitUaGlzIGlzIGhhbmRs
ZWQgYnkgY29kaW5nIDggc2hlbGwgYmxvY2tzICgxMjggc2FtcGxlcykgYW5kIGRpc2NhcmRpbmcg
dGhlIGZpbmFsCisgOCBzYW1wbGVzIG9mIHRoZSBsYXN0IGJsb2NrLgorVGhlIGRlY29kZXIgY29u
dGFpbnMgbm8gc3BlY2lhbCBjYXNlIHRoYXQgcHJldmVudHMgYW4gZW5jb2RlciBmcm9tIHBsYWNp
bmcKKyBwdWxzZXMgaW4gdGhlc2Ugc2FtcGxlcywgYW5kIHRoZXkgbXVzdCBiZSBjb3JyZWN0bHkg
cGFyc2VkIGZyb20gdGhlIGJpdHN0cmVhbQorIGlmIHByZXNlbnQsIGJ1dCB0aGV5IGFyZSBvdGhl
cndpc2UgaWdub3JlZC4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfc2hlbGxfYmxv
Y2tfdGFibGUiCisgdGl0bGU9Ik51bWJlciBvZiBTaGVsbCBCbG9ja3MgUGVyIFNJTEsgRnJhbWUi
PgorPHR0Y29sPkF1ZGlvIEJhbmR3aWR0aDwvdHRjb2w+Cis8dHRjb2w+RnJhbWUgU2l6ZTwvdHRj
b2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5OdW1iZXIgb2YgU2hlbGwgQmxvY2tzPC90dGNvbD4K
KzxjPk5CPC9jPiA8Yz4xMCZuYnNwO21zPC9jPiAgPGM+NTwvYz4KKzxjPk1CPC9jPiA8Yz4xMCZu
YnNwO21zPC9jPiAgPGM+ODwvYz4KKzxjPldCPC9jPiA8Yz4xMCZuYnNwO21zPC9jPiA8Yz4xMDwv
Yz4KKzxjPk5CPC9jPiA8Yz4yMCZuYnNwO21zPC9jPiA8Yz4xMDwvYz4KKzxjPk1CPC9jPiA8Yz4y
MCZuYnNwO21zPC9jPiA8Yz4xNTwvYz4KKzxjPldCPC9jPiA8Yz4yMCZuYnNwO21zPC9jPiA8Yz4y
MDwvYz4KKzwvdGV4dHRhYmxlPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfcmF0ZV9sZXZlbCIg
dGl0bGU9IlJhdGUgTGV2ZWwiPgorPHQ+CitUaGUgZmlyc3Qgc3ltYm9sIGluIHRoZSBleGNpdGF0
aW9uIGlzIGEgInJhdGUgbGV2ZWwiLCB3aGljaCBpcyBhbiBpbmRleCBmcm9tIDAKKyB0byA4LCBp
bmNsdXNpdmUsIGNvZGVkIHVzaW5nIHRoZSBQREYgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX3JhdGVf
bGV2ZWxfcGRmcyIvPgorIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHNpZ25hbCB0eXBlIG9mIHRoZSBj
dXJyZW50IGZyYW1lIChmcm9tCisgPHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pLgor
VGhlIHJhdGUgbGV2ZWwgc2VsZWN0cyB0aGUgUERGIHVzZWQgdG8gZGVjb2RlIHRoZSBudW1iZXIg
b2YgcHVsc2VzIGluCisgdGhlIGluZGl2aWR1YWwgc2hlbGwgYmxvY2tzLgorSXQgZG9lcyBub3Qg
ZGlyZWN0bHkgY29udmV5IGFueSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYml0cmF0ZSBvciB0aGUg
bnVtYmVyIG9mCisgcHVsc2VzIGl0c2VsZiwgYnV0IG1lcmVseSBjaGFuZ2VzIHRoZSBwcm9iYWJp
bGl0eSBvZiB0aGUgc3ltYm9scyBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19wdWxzZV9jb3VudHMi
Lz4uCitMZXZlbCZuYnNwOzAgcHJvdmlkZXMgYSBtb3JlIGVmZmljaWVudCBlbmNvZGluZyBhdCBs
b3cgcmF0ZXMgZ2VuZXJhbGx5LCBhbmQKKyBsZXZlbCZuYnNwOzggcHJvdmlkZXMgYSBtb3JlIGVm
ZmljaWVudCBlbmNvZGluZyBhdCBoaWdoIHJhdGVzIGdlbmVyYWxseSwKKyB0aG91Z2ggdGhlIG1v
c3QgZWZmaWNpZW50IGxldmVsIGZvciBhIHBhcnRpY3VsYXIgU0lMSyBmcmFtZSBtYXkgZGVwZW5k
IG9uIHRoZQorIGV4YWN0IGRpc3RyaWJ1dGlvbiBvZiB0aGUgY29kZWQgc3ltYm9scy4KK0FuIGVu
Y29kZXIgc2hvdWxkLCBidXQgaXMgbm90IHJlcXVpcmVkIHRvLCB1c2UgdGhlIG1vc3QgZWZmaWNp
ZW50IHJhdGUgbGV2ZWwuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3JhdGVfbGV2
ZWxfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgdGhlIFJhdGUgTGV2ZWwiPgorPHR0Y29sPlNpZ25h
bCBUeXBlPC90dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29sPgorPGM+SW5hY3RpdmUgb3IgVW52b2lj
ZWQ8L2M+Cis8Yz57MTUsIDUxLCAxMiwgNDYsIDQ1LCAxMywgMzMsIDI3LCAxNH0vMjU2PC9jPgor
PGM+Vm9pY2VkPC9jPgorPGM+ezMzLCAzMCwgMzYsIDE3LCAzNCwgNDksIDE4LCAyMSwgMTh9LzI1
NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2ls
a19wdWxzZV9jb3VudHMiIHRpdGxlPSJQdWxzZXMgUGVyIFNoZWxsIEJsb2NrIj4KKzx0PgorVGhl
IHRvdGFsIG51bWJlciBvZiBwdWxzZXMgaW4gZWFjaCBvZiB0aGUgc2hlbGwgYmxvY2tzIGZvbGxv
d3MgdGhlIHJhdGUgbGV2ZWwuCitUaGUgcHVsc2UgY291bnRzIGZvciBhbGwgb2YgdGhlIHNoZWxs
IGJsb2NrcyBhcmUgY29kZWQgY29uc2VjdXRpdmVseSwgYmVmb3JlCisgdGhlIGNvbnRlbnQgb2Yg
YW55IG9mIHRoZSBibG9ja3MuCitFYWNoIGJsb2NrIG1heSBoYXZlIGFueXdoZXJlIGZyb20gMCB0
byAxNiBwdWxzZXMsIGluY2x1c2l2ZSwgY29kZWQgdXNpbmcgdGhlCisgMTgtZW50cnkgUERGIGlu
IDx4cmVmIHRhcmdldD0ic2lsa19wdWxzZV9jb3VudF9wZGZzIi8+IGNvcnJlc3BvbmRpbmcgdG8g
dGhlCisgcmF0ZSBsZXZlbCBmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19yYXRlX2xldmVsIi8+Lgor
VGhlIHNwZWNpYWwgdmFsdWUgMTcgaW5kaWNhdGVzIHRoYXQgdGhpcyBibG9jayBoYXMgb25lIG9y
IG1vcmUgYWRkaXRpb25hbAorIExTQnMgdG8gZGVjb2RlIGZvciBlYWNoIGNvZWZmaWNpZW50Lgor
SWYgdGhlIGRlY29kZXIgZW5jb3VudGVycyB0aGlzIHZhbHVlLCBpdCBkZWNvZGVzIGFub3RoZXIg
dmFsdWUgZm9yIHRoZSBhY3R1YWwKKyBwdWxzZSBjb3VudCBvZiB0aGUgYmxvY2ssIGJ1dCB1c2Vz
IHRoZSBQREYgY29ycmVzcG9uZGluZyB0byB0aGUgc3BlY2lhbCByYXRlCisgbGV2ZWwmbmJzcDs5
IGluc3RlYWQgb2YgdGhlIG5vcm1hbCByYXRlIGxldmVsLgorVGhpcyBwcm9jZXNzIHJlcGVhdHMg
dW50aWwgdGhlIGRlY29kZXIgcmVhZHMgYSB2YWx1ZSBsZXNzIHRoYW4gMTcsIGFuZCBpdCB0aGVu
Cisgc2V0cyB0aGUgbnVtYmVyIG9mIGV4dHJhIExTQnMgdXNlZCB0byB0aGUgbnVtYmVyIG9mIDE3
J3MgZGVjb2RlZCBmb3IgdGhhdAorIGJsb2NrLgorSWYgaXQgcmVhZHMgdGhlIHZhbHVlIDE3IHRl
biB0aW1lcywgdGhlbiB0aGUgbmV4dCBpdGVyYXRpb24gdXNlcyB0aGUgc3BlY2lhbAorIHJhdGUg
bGV2ZWwmbmJzcDsxMCBpbnN0ZWFkIG9mIDkuCitUaGUgcHJvYmFiaWxpdHkgb2YgZGVjb2Rpbmcg
YSAxNyB3aGVuIHVzaW5nIHRoZSBQREYgZm9yIHJhdGUgbGV2ZWwmbmJzcDsxMCBpcworIHplcm8s
IGVuc3VyaW5nIHRoYXQgdGhlIG51bWJlciBvZiBMU0JzIGZvciBhIGJsb2NrIHdpbGwgbm90IGV4
Y2VlZCAxMC4KK1RoZSBjdW11bGF0aXZlIGRpc3RyaWJ1dGlvbiBmb3IgcmF0ZSBsZXZlbCZuYnNw
OzEwIGlzIGp1c3QgYSBzaGlmdGVkIHZlcnNpb24gb2YKKyB0aGF0IGZvciA5IGFuZCB0aHVzIGRv
ZXMgbm90IHJlcXVpcmUgYW55IGFkZGl0aW9uYWwgc3RvcmFnZS4KKzwvdD4KKworPHRleHR0YWJs
ZSBhbmNob3I9InNpbGtfcHVsc2VfY291bnRfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgdGhlIFB1
bHNlIENvdW50Ij4KKzx0dGNvbD5SYXRlIExldmVsPC90dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29s
PgorPGM+MDwvYz4KKzxjPnsxMzEsIDc0LCAyNSwgOCwgMywgMywgMSwgMSwgMSwgMSwgMSwgMSwg
MSwgMSwgMSwgMSwgMSwgMX0vMjU2PC9jPgorPGM+MTwvYz4KKzxjPns1OCwgOTMsIDYwLCAyMywg
NywgMywgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMX0vMjU2PC9jPgorPGM+Mjwv
Yz4KKzxjPns0MywgNTEsIDQ2LCAzMywgMjQsIDE2LCAxMSwgOCwgNiwgMywgMywgMywgMiwgMSwg
MSwgMiwgMSwgMn0vMjU2PC9jPgorPGM+MzwvYz4KKzxjPnsxNywgNTIsIDcxLCA1NywgMzEsIDEy
LCA1LCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxfS8yNTY8L2M+Cis8Yz40PC9jPgor
PGM+ezYsIDIxLCA0MSwgNTMsIDQ5LCAzNSwgMjEsIDExLCA2LCAzLCAyLCAyLCAxLCAxLCAxLCAx
LCAxLCAxfS8yNTY8L2M+Cis8Yz41PC9jPgorPGM+ezcsIDE0LCAyMiwgMjgsIDI5LCAyOCwgMjUs
IDIwLCAxNywgMTMsIDExLCA5LCA3LCA1LCA0LCA0LCAzLCAxMH0vMjU2PC9jPgorPGM+NjwvYz4K
KzxjPnsyLCA1LCAxNCwgMjksIDQyLCA0NiwgNDEsIDMxLCAxOSwgMTEsIDYsIDMsIDIsIDEsIDEs
IDEsIDEsIDF9LzI1NjwvYz4KKzxjPjc8L2M+Cis8Yz57MSwgMiwgNCwgMTAsIDE5LCAyOSwgMzUs
IDM3LCAzNCwgMjgsIDIwLCAxNCwgOCwgNSwgNCwgMiwgMiwgMn0vMjU2PC9jPgorPGM+ODwvYz4K
KzxjPnsxLCAyLCAyLCA1LCA5LCAxNCwgMjAsIDI0LCAyNywgMjgsIDI2LCAyMywgMjAsIDE1LCAx
MSwgOCwgNiwgMTV9LzI1NjwvYz4KKzxjPjk8L2M+Cis8Yz57MSwgMSwgMSwgNiwgMjcsIDU4LCA1
NiwgMzksIDI1LCAxNCwgMTAsIDYsIDMsIDMsIDIsIDEsIDEsIDJ9LzI1NjwvYz4KKzxjPjEwPC9j
PgorPGM+ezIsIDEsIDYsIDI3LCA1OCwgNTYsIDM5LCAyNSwgMTQsIDEwLCA2LCAzLCAzLCAyLCAx
LCAxLCAyLCAwfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlv
biBhbmNob3I9InNpbGtfcHVsc2VfbG9jYXRpb25zIiB0aXRsZT0iUHVsc2UgTG9jYXRpb24gRGVj
b2RpbmciPgorPHQ+CitUaGUgbG9jYXRpb25zIG9mIHRoZSBwdWxzZXMgaW4gZWFjaCBzaGVsbCBi
bG9jayBmb2xsb3cgdGhlIHB1bHNlIGNvdW50cywKKyBhcyBkZWNvZGVkIGJ5IHNpbGtfc2hlbGxf
ZGVjb2RlcigpIChzaGVsbF9jb2Rlci5jKS4KK0FzIHdpdGggdGhlIHB1bHNlIGNvdW50cywgdGhl
c2UgbG9jYXRpb25zIGFyZSBjb2RlZCBmb3IgYWxsIHRoZSBzaGVsbCBibG9ja3MKKyBiZWZvcmUg
YW55IG9mIHRoZSByZW1haW5pbmcgaW5mb3JtYXRpb24gZm9yIGVhY2ggYmxvY2suCitVbmxpa2Ug
bWFueSBvdGhlciBjb2RlY3MsIFNJTEsgcGxhY2VzIG5vIHJlc3RyaWN0aW9uIG9uIHRoZSBkaXN0
cmlidXRpb24gb2YKKyBwdWxzZXMgd2l0aGluIGEgc2hlbGwgYmxvY2suCitBbGwgb2YgdGhlIHB1
bHNlcyBtYXkgYmUgcGxhY2VkIGluIGEgc2luZ2xlIGxvY2F0aW9uLCBvciBlYWNoIG9uZSBpbiBh
IHVuaXF1ZQorIGxvY2F0aW9uLCBvciBhbnl0aGluZyBpbiBiZXR3ZWVuLgorPC90PgorCis8dD4K
K1RoZSBsb2NhdGlvbiBvZiBwdWxzZXMgaXMgY29kZWQgYnkgcmVjdXJzaXZlbHkgcGFydGl0aW9u
aW5nIGVhY2ggYmxvY2sgaW50bworIGhhbHZlcywgYW5kIGNvZGluZyBob3cgbWFueSBwdWxzZXMg
ZmFsbCBvbiB0aGUgbGVmdCBzaWRlIG9mIHRoZSBzcGxpdC4KK0FsbCByZW1haW5pbmcgcHVsc2Vz
IG11c3QgZmFsbCBvbiB0aGUgcmlnaHQgc2lkZSBvZiB0aGUgc3BsaXQuCitUaGUgcHJvY2VzcyB0
aGVuIHJlY3Vyc2VzIGludG8gdGhlIGxlZnQgaGFsZiwgYW5kIGFmdGVyIHRoYXQgcmV0dXJucywg
dGhlCisgcmlnaHQgaGFsZiAocHJlb3JkZXIgdHJhdmVyc2FsKS4KK1RoZSBQREYgdG8gdXNlIGlz
IGNob3NlbiBieSB0aGUgc2l6ZSBvZiB0aGUgY3VycmVudCBwYXJ0aXRpb24gKDE2LCA4LCA0LCBv
ciAyKQorIGFuZCB0aGUgbnVtYmVyIG9mIHB1bHNlcyBpbiB0aGUgcGFydGl0aW9uICgxIHRvIDE2
LCBpbmNsdXNpdmUpLgorVGFibGVzJm5ic3A7PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9
InNpbGtfc2hlbGxfY29kZTNfcGRmcyIvPgorIHRocm91Z2gmbmJzcDs8eHJlZiBmb3JtYXQ9ImNv
dW50ZXIiIHRhcmdldD0ic2lsa19zaGVsbF9jb2RlMF9wZGZzIi8+IGxpc3QgdGhlCisgUERGcyB1
c2VkIGZvciBlYWNoIHBhcnRpdGlvbiBzaXplIGFuZCBwdWxzZSBjb3VudC4KK1RoaXMgcHJvY2Vz
cyBza2lwcyBwYXJ0aXRpb25zIHdpdGhvdXQgYW55IHB1bHNlcywgaS5lLiwgd2hlcmUgdGhlIGlu
aXRpYWwgcHVsc2UKKyBjb3VudCBmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19wdWxzZV9jb3VudHMi
Lz4gd2FzIHplcm8sIG9yIHdoZXJlIHRoZSBzcGxpdCBpbgorIHRoZSBwcmlvciBsZXZlbCBpbmRp
Y2F0ZWQgdGhhdCBhbGwgb2YgdGhlIHB1bHNlcyBmZWxsIG9uIHRoZSBvdGhlciBzaWRlLgorVGhl
c2UgcGFydGl0aW9ucyBoYXZlIG5vdGhpbmcgdG8gY29kZSwgc28gdGhleSByZXF1aXJlIG5vIFBE
Ri4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfc2hlbGxfY29kZTNfcGRmcyIKKyB0
aXRsZT0iUERGcyBmb3IgUHVsc2UgQ291bnQgU3BsaXQsIDE2IFNhbXBsZSBQYXJ0aXRpb25zIj4K
Kzx0dGNvbD5QdWxzZSBDb3VudDwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNvbD4KKyA8Yz4xPC9j
PiA8Yz57MTI2LCAxMzB9LzI1NjwvYz4KKyA8Yz4yPC9jPiA8Yz57NTYsIDE0MiwgNTh9LzI1Njwv
Yz4KKyA8Yz4zPC9jPiA8Yz57MjUsIDEwMSwgMTA0LCAyNn0vMjU2PC9jPgorIDxjPjQ8L2M+IDxj
PnsxMiwgNjAsIDEwOCwgNjQsIDEyfS8yNTY8L2M+CisgPGM+NTwvYz4gPGM+ezcsIDM1LCA4NCwg
ODcsIDM3LCA2fS8yNTY8L2M+CisgPGM+NjwvYz4gPGM+ezQsIDIwLCA1OSwgODYsIDYzLCAyMSwg
M30vMjU2PC9jPgorIDxjPjc8L2M+IDxjPnszLCAxMiwgMzgsIDcyLCA3NSwgNDIsIDEyLCAyfS8y
NTY8L2M+CisgPGM+ODwvYz4gPGM+ezIsIDgsIDI1LCA1NCwgNzMsIDU5LCAyNywgNywgMX0vMjU2
PC9jPgorIDxjPjk8L2M+IDxjPnsyLCA1LCAxNywgMzksIDYzLCA2NSwgNDIsIDE4LCA0LCAxfS8y
NTY8L2M+Cis8Yz4xMDwvYz4gPGM+ezEsIDQsIDEyLCAyOCwgNDksIDYzLCA1NCwgMzAsIDExLCAz
LCAxfS8yNTY8L2M+Cis8Yz4xMTwvYz4gPGM+ezEsIDQsIDgsIDIwLCAzNywgNTUsIDU3LCA0MSwg
MjIsIDgsIDIsIDF9LzI1NjwvYz4KKzxjPjEyPC9jPiA8Yz57MSwgMywgNywgMTUsIDI4LCA0NCwg
NTMsIDQ4LCAzMywgMTYsIDYsIDEsIDF9LzI1NjwvYz4KKzxjPjEzPC9jPiA8Yz57MSwgMiwgNiwg
MTIsIDIxLCAzNSwgNDcsIDQ4LCA0MCwgMjUsIDEyLCA1LCAxLCAxfS8yNTY8L2M+Cis8Yz4xNDwv
Yz4gPGM+ezEsIDEsIDQsIDEwLCAxNywgMjcsIDM3LCA0NywgNDMsIDMzLCAyMSwgOSwgNCwgMSwg
MX0vMjU2PC9jPgorPGM+MTU8L2M+IDxjPnsxLCAxLCAxLCA4LCAxNCwgMjIsIDMzLCA0MCwgNDMs
IDM4LCAyOCwgMTYsIDgsIDEsIDEsIDF9LzI1NjwvYz4KKzxjPjE2PC9jPiA8Yz57MSwgMSwgMSwg
MSwgMTMsIDE4LCAyNywgMzYsIDQxLCA0MSwgMzQsIDI0LCAxNCwgMSwgMSwgMSwgMX0vMjU2PC9j
PgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3NoZWxsX2NvZGUyX3Bk
ZnMiCisgdGl0bGU9IlBERnMgZm9yIFB1bHNlIENvdW50IFNwbGl0LCA4IFNhbXBsZSBQYXJ0aXRp
b25zIj4KKzx0dGNvbD5QdWxzZSBDb3VudDwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNvbD4KKyA8
Yz4xPC9jPiA8Yz57MTI3LCAxMjl9LzI1NjwvYz4KKyA8Yz4yPC9jPiA8Yz57NTMsIDE0OSwgNTR9
LzI1NjwvYz4KKyA8Yz4zPC9jPiA8Yz57MjIsIDEwNSwgMTA2LCAyM30vMjU2PC9jPgorIDxjPjQ8
L2M+IDxjPnsxMSwgNjEsIDExMSwgNjMsIDEwfS8yNTY8L2M+CisgPGM+NTwvYz4gPGM+ezYsIDM1
LCA4NiwgODgsIDM2LCA1fS8yNTY8L2M+CisgPGM+NjwvYz4gPGM+ezQsIDIwLCA1OSwgODcsIDYy
LCAyMSwgM30vMjU2PC9jPgorIDxjPjc8L2M+IDxjPnszLCAxMywgNDAsIDcxLCA3MywgNDEsIDEz
LCAyfS8yNTY8L2M+CisgPGM+ODwvYz4gPGM+ezMsIDksIDI3LCA1MywgNzAsIDU2LCAyOCwgOSwg
MX0vMjU2PC9jPgorIDxjPjk8L2M+IDxjPnszLCA4LCAxOSwgMzcsIDU3LCA2MSwgNDQsIDIwLCA2
LCAxfS8yNTY8L2M+Cis8Yz4xMDwvYz4gPGM+ezMsIDcsIDE1LCAyOCwgNDQsIDU0LCA0OSwgMzMs
IDE3LCA1LCAxfS8yNTY8L2M+Cis8Yz4xMTwvYz4gPGM+ezEsIDcsIDEzLCAyMiwgMzQsIDQ2LCA0
OCwgMzgsIDI4LCAxNCwgNCwgMX0vMjU2PC9jPgorPGM+MTI8L2M+IDxjPnsxLCAxLCAxMSwgMjIs
IDI3LCAzNSwgNDIsIDQ3LCAzMywgMjUsIDEwLCAxLCAxfS8yNTY8L2M+Cis8Yz4xMzwvYz4gPGM+
ezEsIDEsIDYsIDE0LCAyNiwgMzcsIDQzLCA0MywgMzcsIDI2LCAxNCwgNiwgMSwgMX0vMjU2PC9j
PgorPGM+MTQ8L2M+IDxjPnsxLCAxLCA0LCAxMCwgMjAsIDMxLCA0MCwgNDIsIDQwLCAzMSwgMjAs
IDEwLCA0LCAxLCAxfS8yNTY8L2M+Cis8Yz4xNTwvYz4gPGM+ezEsIDEsIDMsIDgsIDE2LCAyNiwg
MzUsIDM4LCAzOCwgMzUsIDI2LCAxNiwgOCwgMywgMSwgMX0vMjU2PC9jPgorPGM+MTY8L2M+IDxj
PnsxLCAxLCAyLCA2LCAxMiwgMjEsIDMwLCAzNiwgMzgsIDM2LCAzMCwgMjEsIDEyLCA2LCAyLCAx
LCAxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfc2hl
bGxfY29kZTFfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgUHVsc2UgQ291bnQgU3BsaXQsIDQgU2Ft
cGxlIFBhcnRpdGlvbnMiPgorPHR0Y29sPlB1bHNlIENvdW50PC90dGNvbD4KKzx0dGNvbD5QREY8
L3R0Y29sPgorIDxjPjE8L2M+IDxjPnsxMjcsIDEyOX0vMjU2PC9jPgorIDxjPjI8L2M+IDxjPns0
OSwgMTU3LCA1MH0vMjU2PC9jPgorIDxjPjM8L2M+IDxjPnsyMCwgMTA3LCAxMDksIDIwfS8yNTY8
L2M+CisgPGM+NDwvYz4gPGM+ezExLCA2MCwgMTEzLCA2MiwgMTB9LzI1NjwvYz4KKyA8Yz41PC9j
PiA8Yz57NywgMzYsIDg0LCA4NywgMzYsIDZ9LzI1NjwvYz4KKyA8Yz42PC9jPiA8Yz57NiwgMjQs
IDU3LCA4MiwgNjAsIDIzLCA0fS8yNTY8L2M+CisgPGM+NzwvYz4gPGM+ezUsIDE4LCAzOSwgNjQs
IDY4LCA0MiwgMTYsIDR9LzI1NjwvYz4KKyA8Yz44PC9jPiA8Yz57NiwgMTQsIDI5LCA0NywgNjEs
IDUyLCAzMCwgMTQsIDN9LzI1NjwvYz4KKyA8Yz45PC9jPiA8Yz57MSwgMTUsIDIzLCAzNSwgNTEs
IDUwLCA0MCwgMzAsIDEwLCAxfS8yNTY8L2M+Cis8Yz4xMDwvYz4gPGM+ezEsIDEsIDIxLCAzMiwg
NDIsIDUyLCA0NiwgNDEsIDE4LCAxLCAxfS8yNTY8L2M+Cis8Yz4xMTwvYz4gPGM+ezEsIDYsIDE2
LCAyNywgMzYsIDQyLCA0MiwgMzYsIDI3LCAxNiwgNiwgMX0vMjU2PC9jPgorPGM+MTI8L2M+IDxj
PnsxLCA1LCAxMiwgMjEsIDMxLCAzOCwgNDAsIDM4LCAzMSwgMjEsIDEyLCA1LCAxfS8yNTY8L2M+
Cis8Yz4xMzwvYz4gPGM+ezEsIDMsIDksIDE3LCAyNiwgMzQsIDM4LCAzOCwgMzQsIDI2LCAxNywg
OSwgMywgMX0vMjU2PC9jPgorPGM+MTQ8L2M+IDxjPnsxLCAzLCA3LCAxNCwgMjIsIDI5LCAzNCwg
MzYsIDM0LCAyOSwgMjIsIDE0LCA3LCAzLCAxfS8yNTY8L2M+Cis8Yz4xNTwvYz4gPGM+ezEsIDIs
IDUsIDExLCAxOCwgMjUsIDMxLCAzNSwgMzUsIDMxLCAyNSwgMTgsIDExLCA1LCAyLCAxfS8yNTY8
L2M+Cis8Yz4xNjwvYz4gPGM+ezEsIDEsIDQsIDksIDE1LCAyMSwgMjgsIDMyLCAzNCwgMzIsIDI4
LCAyMSwgMTUsIDksIDQsIDEsIDF9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxl
IGFuY2hvcj0ic2lsa19zaGVsbF9jb2RlMF9wZGZzIgorIHRpdGxlPSJQREZzIGZvciBQdWxzZSBD
b3VudCBTcGxpdCwgMiBTYW1wbGUgUGFydGl0aW9ucyI+Cis8dHRjb2w+UHVsc2UgQ291bnQ8L3R0
Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+CisgPGM+MTwvYz4gPGM+ezEyOCwgMTI4fS8yNTY8L2M+
CisgPGM+MjwvYz4gPGM+ezQyLCAxNzIsIDQyfS8yNTY8L2M+CisgPGM+MzwvYz4gPGM+ezIxLCAx
MDcsIDEwNywgMjF9LzI1NjwvYz4KKyA8Yz40PC9jPiA8Yz57MTIsIDYwLCAxMTIsIDYxLCAxMX0v
MjU2PC9jPgorIDxjPjU8L2M+IDxjPns4LCAzNCwgODYsIDg2LCAzNSwgN30vMjU2PC9jPgorIDxj
PjY8L2M+IDxjPns4LCAyMywgNTUsIDkwLCA1NSwgMjAsIDV9LzI1NjwvYz4KKyA8Yz43PC9jPiA8
Yz57NSwgMTUsIDM4LCA3MiwgNzIsIDM2LCAxNSwgM30vMjU2PC9jPgorIDxjPjg8L2M+IDxjPns2
LCAxMiwgMjcsIDUyLCA3NywgNDcsIDIwLCAxMCwgNX0vMjU2PC9jPgorIDxjPjk8L2M+IDxjPns2
LCAxOSwgMjgsIDM1LCA0MCwgNDAsIDM1LCAyOCwgMTksIDZ9LzI1NjwvYz4KKzxjPjEwPC9jPiA8
Yz57NCwgMTQsIDIyLCAzMSwgMzcsIDQwLCAzNywgMzEsIDIyLCAxNCwgNH0vMjU2PC9jPgorPGM+
MTE8L2M+IDxjPnszLCAxMCwgMTgsIDI2LCAzMywgMzgsIDM4LCAzMywgMjYsIDE4LCAxMCwgM30v
MjU2PC9jPgorPGM+MTI8L2M+IDxjPnsyLCA4LCAxMywgMjEsIDI5LCAzNiwgMzgsIDM2LCAyOSwg
MjEsIDEzLCA4LCAyfS8yNTY8L2M+Cis8Yz4xMzwvYz4gPGM+ezEsIDUsIDEwLCAxNywgMjUsIDMy
LCAzOCwgMzgsIDMyLCAyNSwgMTcsIDEwLCA1LCAxfS8yNTY8L2M+Cis8Yz4xNDwvYz4gPGM+ezEs
IDQsIDcsIDEzLCAyMSwgMjksIDM1LCAzNiwgMzUsIDI5LCAyMSwgMTMsIDcsIDQsIDF9LzI1Njwv
Yz4KKzxjPjE1PC9jPiA8Yz57MSwgMiwgNSwgMTAsIDE3LCAyNSwgMzIsIDM2LCAzNiwgMzIsIDI1
LCAxNywgMTAsIDUsIDIsIDF9LzI1NjwvYz4KKzxjPjE2PC9jPiA8Yz57MSwgMiwgNCwgNywgMTMs
IDIxLCAyOCwgMzQsIDM2LCAzNCwgMjgsIDIxLCAxMywgNywgNCwgMiwgMX0vMjU2PC9jPgorPC90
ZXh0dGFibGU+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX3NoZWxsX2xz
YiIgdGl0bGU9IkxTQiBEZWNvZGluZyI+Cis8dD4KK0FmdGVyIHRoZSBkZWNvZGVyIHJlYWRzIHRo
ZSBwdWxzZSBsb2NhdGlvbnMgZm9yIGFsbCBibG9ja3MsIGl0IHJlYWRzIHRoZSBMU0JzCisgKGlm
IGFueSkgZm9yIGVhY2ggYmxvY2sgaW4gdHVybi4KK0luc2lkZSBlYWNoIGJsb2NrLCBpdCByZWFk
cyBhbGwgdGhlIExTQnMgZm9yIGVhY2ggY29lZmZpY2llbnQgaW4gdHVybiwgZXZlbgorIHRob3Nl
IHdoZXJlIG5vIHB1bHNlcyB3ZXJlIGFsbG9jYXRlZCwgYmVmb3JlIHByb2NlZWRpbmcgdG8gdGhl
IG5leHQgb25lLgorRm9yIDEwJm5ic3A7bXMgTUIgZnJhbWVzLCBpdCByZWFkcyBMU0JzIGV2ZW4g
Zm9yIHRoZSBleHRyYSA4Jm5ic3A7c2FtcGxlcyBpbgorIHRoZSBsYXN0IGJsb2NrLgorVGhlIExT
QnMgYXJlIGNvZGVkIGZyb20gbW9zdCBzaWduaWZpY2FudCB0byBsZWFzdCBzaWduaWZpY2FudCwg
YW5kIHRoZXkgYWxsIHVzZQorIHRoZSBQREYgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX3NoZWxsX2xz
Yl9wZGYiLz4uCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3NoZWxsX2xzYl9wZGYi
IHRpdGxlPSJQREYgZm9yIEV4Y2l0YXRpb24gTFNCcyI+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxj
PnsxMzYsIDEyMH0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlIG51bWJlciBvZiBM
U0JzIHJlYWQgZm9yIGVhY2ggY29lZmZpY2llbnQgaW4gYSBibG9jayBpcyBkZXRlcm1pbmVkIGlu
CisgPHhyZWYgdGFyZ2V0PSJzaWxrX3B1bHNlX2NvdW50cyIvPi4KK1RoZSBtYWduaXR1ZGUgb2Yg
dGhlIGNvZWZmaWNpZW50IGlzIGluaXRpYWxseSBlcXVhbCB0byB0aGUgbnVtYmVyIG9mIHB1bHNl
cworIHBsYWNlZCBhdCB0aGF0IGxvY2F0aW9uIGluIDx4cmVmIHRhcmdldD0ic2lsa19wdWxzZV9s
b2NhdGlvbnMiLz4uCitBcyBlYWNoIExTQiBpcyBkZWNvZGVkLCB0aGUgbWFnbml0dWRlIGlzIGRv
dWJsZWQsIGFuZCB0aGVuIHRoZSB2YWx1ZSBvZiB0aGUgTFNCCisgYWRkZWQgdG8gaXQsIHRvIG9i
dGFpbiBhbiB1cGRhdGVkIG1hZ25pdHVkZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
YW5jaG9yPSJzaWxrX3NpZ25zIiB0aXRsZT0iU2lnbiBEZWNvZGluZyI+Cis8dD4KK0FmdGVyIGRl
Y29kaW5nIHRoZSBwdWxzZSBsb2NhdGlvbnMgYW5kIHRoZSBMU0JzLCB0aGUgZGVjb2RlciBrbm93
cyB0aGUKKyBtYWduaXR1ZGUgb2YgZWFjaCBjb2VmZmljaWVudCBpbiB0aGUgZXhjaXRhdGlvbi4K
K0l0IHRoZW4gZGVjb2RlcyBhIHNpZ24gZm9yIGFsbCBjb2VmZmljaWVudHMgd2l0aCBhIG5vbi16
ZXJvIG1hZ25pdHVkZSwgdXNpbmcKKyBvbmUgb2YgdGhlIFBERnMgZnJvbSA8eHJlZiB0YXJnZXQ9
InNpbGtfc2lnbl9wZGZzIi8+LgorSWYgdGhlIHZhbHVlIGRlY29kZWQgaXMgMCwgdGhlbiB0aGUg
Y29lZmZpY2llbnQgbWFnbml0dWRlIGlzIG5lZ2F0ZWQuCitPdGhlcndpc2UsIGl0IHJlbWFpbnMg
cG9zaXRpdmUuCis8L3Q+CisKKzx0PgorVGhlIGRlY29kZXIgY2hvb3NlcyB0aGUgUERGIGZvciB0
aGUgc2lnbiBiYXNlZCBvbiB0aGUgc2lnbmFsIHR5cGUgYW5kCisgcXVhbnRpemF0aW9uIG9mZnNl
dCB0eXBlIChmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV90eXBlIi8+KSBhbmQgdGhlCisg
bnVtYmVyIG9mIHB1bHNlcyBpbiB0aGUgYmxvY2sgKGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxrX3B1
bHNlX2NvdW50cyIvPikuCitUaGUgbnVtYmVyIG9mIHB1bHNlcyBpbiB0aGUgYmxvY2sgZG9lcyBu
b3QgdGFrZSBpbnRvIGFjY291bnQgYW55IExTQnMuCitNb3N0IFBERnMgYXJlIHNrZXdlZCB0b3dh
cmRzIG5lZ2F0aXZlIHNpZ25zIGJlY2F1c2Ugb2YgdGhlIHF1YW50aXphdGlvbiBvZmZzZXQsCisg
YnV0IHRoZSBQREZzIGZvciB6ZXJvIHB1bHNlcyBhcmUgaGlnaGx5IHNrZXdlZCB0b3dhcmRzIHBv
c2l0aXZlIHNpZ25zLgorSWYgYSBibG9jayBjb250YWlucyBtYW55IHBvc2l0aXZlIGNvZWZmaWNp
ZW50cywgaXQgaXMgc29tZXRpbWVzIGJlbmVmaWNpYWwgdG8KKyBjb2RlIGl0IHNvbGVseSB1c2lu
ZyBMU0JzIChpLmUuLCB3aXRoIHplcm8gcHVsc2VzKSwgc2luY2UgdGhlIGVuY29kZXIgbWF5IGJl
CisgYWJsZSB0byBzYXZlIGVub3VnaCBiaXRzIG9uIHRoZSBzaWducyB0byBqdXN0aWZ5IHRoZSBs
ZXNzIGVmZmljaWVudAorIGNvZWZmaWNpZW50IG1hZ25pdHVkZSBlbmNvZGluZy4KKzwvdD4KKwor
PHRleHR0YWJsZSBhbmNob3I9InNpbGtfc2lnbl9wZGZzIgorIHRpdGxlPSJQREZzIGZvciBFeGNp
dGF0aW9uIFNpZ25zIj4KKzx0dGNvbD5TaWduYWwgVHlwZTwvdHRjb2w+Cis8dHRjb2w+UXVhbnRp
emF0aW9uIE9mZnNldCBUeXBlPC90dGNvbD4KKzx0dGNvbD5QdWxzZSBDb3VudDwvdHRjb2w+Cis8
dHRjb2w+UERGPC90dGNvbD4KKzxjPkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4wPC9jPiAg
ICAgICAgIDxjPnsyLCAyNTR9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+ICA8
Yz4xPC9jPiAgICAgICAgIDxjPnsyMDcsIDQ5fS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+
TG93PC9jPiAgPGM+MjwvYz4gICAgICAgICA8Yz57MTg5LCA2N30vMjU2PC9jPgorPGM+SW5hY3Rp
dmU8L2M+IDxjPkxvdzwvYz4gIDxjPjM8L2M+ICAgICAgICAgPGM+ezE3OSwgNzd9LzI1NjwvYz4K
KzxjPkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+ICA8Yz40PC9jPiAgICAgICAgIDxjPnsxNzQsIDgy
fS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+TG93PC9jPiAgPGM+NTwvYz4gICAgICAgICA8
Yz57MTYzLCA5M30vMjU2PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkxvdzwvYz4gIDxjPjYgb3Ig
bW9yZTwvYz4gPGM+ezE1NywgOTl9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5IaWdoPC9j
PiA8Yz4wPC9jPiAgICAgICAgIDxjPns1OCwgMTk4fS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4g
PGM+SGlnaDwvYz4gPGM+MTwvYz4gICAgICAgICA8Yz57MjQ1LCAxMX0vMjU2PC9jPgorPGM+SW5h
Y3RpdmU8L2M+IDxjPkhpZ2g8L2M+IDxjPjI8L2M+ICAgICAgICAgPGM+ezIzOCwgMTh9LzI1Njwv
Yz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5IaWdoPC9jPiA8Yz4zPC9jPiAgICAgICAgIDxjPnsyMzIs
IDI0fS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+SGlnaDwvYz4gPGM+NDwvYz4gICAgICAg
ICA8Yz57MjI1LCAzMX0vMjU2PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkhpZ2g8L2M+IDxjPjU8
L2M+ICAgICAgICAgPGM+ezIyMCwgMzZ9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5IaWdo
PC9jPiA8Yz42IG9yIG1vcmU8L2M+IDxjPnsyMTEsIDQ1fS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwv
Yz4gPGM+TG93PC9jPiAgPGM+MDwvYz4gICAgICAgICA8Yz57MSwgMjU1fS8yNTY8L2M+Cis8Yz5V
bnZvaWNlZDwvYz4gPGM+TG93PC9jPiAgPGM+MTwvYz4gICAgICAgICA8Yz57MjEwLCA0Nn0vMjU2
PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkxvdzwvYz4gIDxjPjI8L2M+ICAgICAgICAgPGM+ezE5
MCwgNjZ9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4zPC9jPiAgICAg
ICAgIDxjPnsxNzgsIDc4fS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+TG93PC9jPiAgPGM+
NDwvYz4gICAgICAgICA8Yz57MTY5LCA4N30vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkxv
dzwvYz4gIDxjPjU8L2M+ICAgICAgICAgPGM+ezE2MiwgOTR9LzI1NjwvYz4KKzxjPlVudm9pY2Vk
PC9jPiA8Yz5Mb3c8L2M+ICA8Yz42IG9yIG1vcmU8L2M+IDxjPnsxNTIsIDEwNH0vMjU2PC9jPgor
PGM+VW52b2ljZWQ8L2M+IDxjPkhpZ2g8L2M+IDxjPjA8L2M+ICAgICAgICAgPGM+ezQ4LCAyMDh9
LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5IaWdoPC9jPiA8Yz4xPC9jPiAgICAgICAgIDxj
PnsyNDIsIDE0fS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+SGlnaDwvYz4gPGM+MjwvYz4g
ICAgICAgICA8Yz57MjM1LCAyMX0vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkhpZ2g8L2M+
IDxjPjM8L2M+ICAgICAgICAgPGM+ezIyNCwgMzJ9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8
Yz5IaWdoPC9jPiA8Yz40PC9jPiAgICAgICAgIDxjPnsyMTQsIDQyfS8yNTY8L2M+Cis8Yz5VbnZv
aWNlZDwvYz4gPGM+SGlnaDwvYz4gPGM+NTwvYz4gICAgICAgICA8Yz57MjA1LCA1MX0vMjU2PC9j
PgorPGM+VW52b2ljZWQ8L2M+IDxjPkhpZ2g8L2M+IDxjPjYgb3IgbW9yZTwvYz4gPGM+ezE5MCwg
NjZ9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICA8Yz4wPC9jPiAgICAgICAg
IDxjPnsxLCAyNTV9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICA8Yz4xPC9j
PiAgICAgICAgIDxjPnsxNjIsIDk0fS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+TG93PC9j
PiAgPGM+MjwvYz4gICAgICAgICA8Yz57MTUyLCAxMDR9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4g
ICA8Yz5Mb3c8L2M+ICA8Yz4zPC9jPiAgICAgICAgIDxjPnsxNDcsIDEwOX0vMjU2PC9jPgorPGM+
Vm9pY2VkPC9jPiAgIDxjPkxvdzwvYz4gIDxjPjQ8L2M+ICAgICAgICAgPGM+ezE0NCwgMTEyfS8y
NTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+TG93PC9jPiAgPGM+NTwvYz4gICAgICAgICA8Yz57
MTQxLCAxMTV9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICA8Yz42IG9yIG1v
cmU8L2M+IDxjPnsxMzgsIDExOH0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+
IDxjPjA8L2M+ICAgICAgICAgPGM+ezgsIDI0OH0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxj
PkhpZ2g8L2M+IDxjPjE8L2M+ICAgICAgICAgPGM+ezIwMywgNTN9LzI1NjwvYz4KKzxjPlZvaWNl
ZDwvYz4gICA8Yz5IaWdoPC9jPiA8Yz4yPC9jPiAgICAgICAgIDxjPnsxODcsIDY5fS8yNTY8L2M+
Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+SGlnaDwvYz4gPGM+MzwvYz4gICAgICAgICA8Yz57MTc2LCA4
MH0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+IDxjPjQ8L2M+ICAgICAgICAg
PGM+ezE2OCwgODh9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5IaWdoPC9jPiA8Yz41PC9j
PiAgICAgICAgIDxjPnsxNjEsIDk1fS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+SGlnaDwv
Yz4gPGM+NiBvciBtb3JlPC9jPiA8Yz57MTU0LCAxMDJ9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgor
Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19leGNpdGF0aW9uX3JlY29uc3Ry
dWN0aW9uIgorIHRpdGxlPSJSZWNvbnN0cnVjdGluZyB0aGUgRXhjaXRhdGlvbiI+CisKKzx0Pgor
QWZ0ZXIgdGhlIHNpZ25zIGhhdmUgYmVlbiByZWFkLCB0aGVyZSBpcyBlbm91Z2ggaW5mb3JtYXRp
b24gdG8gcmVjb25zdHJ1Y3QgdGhlCisgY29tcGxldGUgZXhjaXRhdGlvbiBzaWduYWwuCitUaGlz
IHJlcXVpcmVzIGFkZGluZyBhIGNvbnN0YW50IHF1YW50aXphdGlvbiBvZmZzZXQgdG8gZWFjaCBu
b24temVybyBzYW1wbGUsCisgYW5kIHRoZW4gcHNldWRvcmFuZG9tbHkgaW52ZXJ0aW5nIGFuZCBv
ZmZzZXR0aW5nIGV2ZXJ5IHNhbXBsZS4KK1RoZSBjb25zdGFudCBxdWFudGl6YXRpb24gb2Zmc2V0
IHZhcmllcyBkZXBlbmRpbmcgb24gdGhlIHNpZ25hbCB0eXBlIGFuZAorIHF1YW50aXphdGlvbiBv
ZmZzZXQgdHlwZSAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV90eXBlIi8+KS4KKzwvdD4K
KworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfcXVhbnRpemF0aW9uX29mZnNldHMiCisgdGl0bGU9
IkV4Y2l0YXRpb24gUXVhbnRpemF0aW9uIE9mZnNldHMiPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5T
aWduYWwgVHlwZTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlF1YW50aXphdGlvbiBPZmZz
ZXQgVHlwZTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5RdWFudGl6YXRpb24gT2Zmc2V0
IChRMjMpPC90dGNvbD4KKzxjPkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4yNTwvYz4KKzxj
PkluYWN0aXZlPC9jPiA8Yz5IaWdoPC9jPiA8Yz42MDwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5M
b3c8L2M+ICA8Yz4yNTwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5IaWdoPC9jPiA8Yz42MDwvYz4K
KzxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICAgPGM+ODwvYz4KKzxjPlZvaWNlZDwvYz4gICA8
Yz5IaWdoPC9jPiA8Yz4yNTwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK0xldCBlX3Jhd1tpXSBi
ZSB0aGUgcmF3IGV4Y2l0YXRpb24gdmFsdWUgYXQgcG9zaXRpb24gaSwgd2l0aCBhIG1hZ25pdHVk
ZQorIGNvbXBvc2VkIG9mIHRoZSBwdWxzZXMgYXQgdGhhdCBsb2NhdGlvbiAoc2VlCisgPHhyZWYg
dGFyZ2V0PSJzaWxrX3B1bHNlX2xvY2F0aW9ucyIvPikgY29tYmluZWQgd2l0aCBhbnkgYWRkaXRp
b25hbCBMU0JzIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNpbGtfc2hlbGxfbHNiIi8+KSwgYW5kIHdp
dGggdGhlIGNvcnJlc3BvbmRpbmcgc2lnbiBkZWNvZGVkIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxr
X3NpZ25zIi8+LgorQWRkaXRpb25hbGx5LCBsZXQgc2VlZCBiZSB0aGUgY3VycmVudCBwc2V1ZG9y
YW5kb20gc2VlZCwgd2hpY2ggaXMgaW5pdGlhbGl6ZWQKKyB0byB0aGUgdmFsdWUgZGVjb2RlZCBm
cm9tIDx4cmVmIHRhcmdldD0ic2lsa19zZWVkIi8+IGZvciB0aGUgZmlyc3Qgc2FtcGxlIGluCisg
dGhlIGN1cnJlbnQgU0lMSyBmcmFtZSwgYW5kIHVwZGF0ZWQgZm9yIGVhY2ggc3Vic2VxdWVudCBz
YW1wbGUgYWNjb3JkaW5nIHRvCisgdGhlIHByb2NlZHVyZSBiZWxvdy4KK0ZpbmFsbHksIGxldCBv
ZmZzZXRfUTIzIGJlIHRoZSBxdWFudGl6YXRpb24gb2Zmc2V0IGZyb20KKyA8eHJlZiB0YXJnZXQ9
InNpbGtfcXVhbnRpemF0aW9uX29mZnNldHMiLz4uCitUaGVuIHRoZSBmb2xsb3dpbmcgcHJvY2Vk
dXJlIHByb2R1Y2VzIHRoZSBmaW5hbCByZWNvbnN0cnVjdGVkIGV4Y2l0YXRpb24gdmFsdWUsCisg
ZV9RMjNbaV06Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRl
ciI+PCFbQ0RBVEFbCitlX1EyM1tpXSA9IChlX3Jhd1tpXSA8PCA4KSAtIHNpZ24oZV9yYXdbaV0p
KjIwICsgb2Zmc2V0X1EyMzsKKyAgICBzZWVkID0gKDE5NjMxNDE2NSpzZWVkICsgOTA3NjMzNTE1
KSAmIDB4RkZGRkZGRkY7CitlX1EyM1tpXSA9IChzZWVkICYgMHg4MDAwMDAwMCkgPyAtZV9RMjNb
aV0gOiBlX1EyM1tpXTsKKyAgICBzZWVkID0gKHNlZWQgKyBlX3Jhd1tpXSkgJiAweEZGRkZGRkZG
OworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitXaGVuIGVfcmF3W2ldIGlzIHplcm8sIHNpZ24o
KSByZXR1cm5zIDAgYnkgdGhlIGRlZmluaXRpb24gaW4KKyA8eHJlZiB0YXJnZXQ9InNpZ24iLz4s
IHNvIHRoZSBmYWN0b3Igb2YgMjAgZG9lcyBub3QgZ2V0IGFkZGVkLgorVGhlIGZpbmFsIGVfUTIz
W2ldIHZhbHVlIG1heSByZXF1aXJlIG1vcmUgdGhhbiAxNiBiaXRzIHBlciBzYW1wbGUsIGJ1dCB3
aWxsIG5vdAorIHJlcXVpcmUgbW9yZSB0aGFuIDIzLCBpbmNsdWRpbmcgdGhlIHNpZ24uCis8L3Q+
CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfZnJh
bWVfcmVjb25zdHJ1Y3Rpb24iIHRvYz0iaW5jbHVkZSIKKyB0aXRsZT0iU0lMSyBGcmFtZSBSZWNv
bnN0cnVjdGlvbiI+CisKKzx0PgorVGhlIHJlbWFpbmRlciBvZiB0aGUgcmVjb25zdHJ1Y3Rpb24g
cHJvY2VzcyBmb3IgdGhlIGZyYW1lIGRvZXMgbm90IG5lZWQgdG8gYmUKKyBiaXQtZXhhY3QsIGFz
IHNtYWxsIGVycm9ycyBzaG91bGQgb25seSBpbnRyb2R1Y2UgcHJvcG9ydGlvbmFsbHkgc21hbGwK
KyBkaXN0b3J0aW9ucy4KK0FsdGhvdWdoIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gb25s
eSBpbmNsdWRlcyBhIGZpeGVkLXBvaW50IHZlcnNpb24gb2YKKyB0aGUgcmVtYWluaW5nIHN0ZXBz
LCB0aGlzIHNlY3Rpb24gZGVzY3JpYmVzIHRoZW0gaW4gdGVybXMgb2YgYSBmbG9hdGluZy1wb2lu
dAorIHZlcnNpb24gZm9yIHNpbXBsaWNpdHkuCitUaGlzIHByb2R1Y2VzIGEgc2lnbmFsIHdpdGgg
YSBub21pbmFsIHJhbmdlIG9mIC0xLjAgdG8gMS4wLgorPC90PgorCis8dD4KK3NpbGtfZGVjb2Rl
X2NvcmUoKSAoZGVjb2RlX2NvcmUuYykgY29udGFpbnMgdGhlIGNvZGUgZm9yIHRoZSBtYWluCisg
cmVjb25zdHJ1Y3Rpb24gcHJvY2Vzcy4KK0l0IHByb2NlZWRzIHN1YmZyYW1lLWJ5LXN1YmZyYW1l
LCBzaW5jZSBxdWFudGl6YXRpb24gZ2FpbnMsIExUUCBwYXJhbWV0ZXJzLCBhbmQKKyAoaW4gMjAm
bmJzcDttcyBTSUxLIGZyYW1lcykgTFBDIGNvZWZmaWNpZW50cyBjYW4gdmFyeSBmcm9tIG9uZSB0
byB0aGUKKyBuZXh0LgorPC90PgorCis8dD4KK0xldCBhX1ExMltrXSBiZSB0aGUgTFBDIGNvZWZm
aWNpZW50cyBmb3IgdGhlIGN1cnJlbnQgc3ViZnJhbWUuCitJZiB0aGlzIGlzIHRoZSBmaXJzdCBv
ciBzZWNvbmQgc3ViZnJhbWUgb2YgYSAyMCZuYnNwO21zIFNJTEsgZnJhbWUgYW5kIHRoZSBMU0YK
KyBpbnRlcnBvbGF0aW9uIGZhY3Rvciwgd19RMiAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19ubHNm
X2ludGVycG9sYXRpb24iLz4pLCBpcworIGxlc3MgdGhhbiA0LCB0aGVuIHRoZXNlIGNvcnJlc3Bv
bmQgdG8gdGhlIGZpbmFsIExQQyBjb2VmZmljaWVudHMgcHJvZHVjZWQgYnkKKyA8eHJlZiB0YXJn
ZXQ9InNpbGtfbHBjX2dhaW5fbGltaXQiLz4gZnJvbSB0aGUgaW50ZXJwb2xhdGVkIExTRiBjb2Vm
ZmljaWVudHMsCisgbjFfUTE1W2tdIChjb21wdXRlZCBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfbmxz
Zl9pbnRlcnBvbGF0aW9uIi8+KS4KK090aGVyd2lzZSwgdGhleSBjb3JyZXNwb25kIHRvIHRoZSBm
aW5hbCBMUEMgY29lZmZpY2llbnRzIHByb2R1Y2VkIGZyb20gdGhlCisgdW5pbnRlcnBvbGF0ZWQg
TFNGIGNvZWZmaWNpZW50cyBmb3IgdGhlIGN1cnJlbnQgZnJhbWUsIG4yX1ExNVtrXS4KKzwvdD4K
KworPHQ+CitBbHNvLCBsZXQgbiBiZSB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgaW4gYSBzdWJmcmFt
ZSAoNDAgZm9yIE5CLCA2MCBmb3IgTUIsIGFuZAorIDgwIGZvciBXQiksIHMgYmUgdGhlIGluZGV4
IG9mIHRoZSBjdXJyZW50IHN1YmZyYW1lIGluIHRoaXMgU0lMSyBmcmFtZSAoMCBvciAxCisgZm9y
IDEwJm5ic3A7bXMgZnJhbWVzLCBvciAwIHRvIDMgZm9yIDIwJm5ic3A7bXMgZnJhbWVzKSwgYW5k
IGogYmUgdGhlIGluZGV4IG9mCisgdGhlIGZpcnN0IHNhbXBsZSBpbiB0aGUgcmVzaWR1YWwgY29y
cmVzcG9uZGluZyB0byB0aGUgY3VycmVudCBzdWJmcmFtZS4KKzwvdD4KKworPHNlY3Rpb24gYW5j
aG9yPSJzaWxrX2x0cF9zeW50aGVzaXMiIHRpdGxlPSJMVFAgU3ludGhlc2lzIj4KKzx0PgorVm9p
Y2VkIFNJTEsgZnJhbWVzIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pIHBh
c3MgdGhlIGV4Y2l0YXRpb24KKyB0aHJvdWdoIGFuIExUUCBmaWx0ZXIgdXNpbmcgdGhlIHBhcmFt
ZXRlcnMgZGVjb2RlZCBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19sdHBfcGFyYW1zIi8+IHRvIHBy
b2R1Y2UgYW4gTFBDIHJlc2lkdWFsLgorVGhlIExUUCBmaWx0ZXIgcmVxdWlyZXMgTFBDIHJlc2lk
dWFsIHZhbHVlcyBmcm9tIGJlZm9yZSB0aGUgY3VycmVudCBzdWJmcmFtZSBhcworIGlucHV0Lgor
SG93ZXZlciwgc2luY2UgdGhlIExQQyBjb2VmZmljaWVudHMgbWF5IGhhdmUgY2hhbmdlZCwgaXQg
b2J0YWlucyB0aGlzIHJlc2lkdWFsCisgYnkgInJld2hpdGVuaW5nIiB0aGUgY29ycmVzcG9uZGlu
ZyBvdXRwdXQgc2lnbmFsIHVzaW5nIHRoZSBMUEMgY29lZmZpY2llbnRzCisgZnJvbSB0aGUgY3Vy
cmVudCBzdWJmcmFtZS4KK0xldCBvdXRbaV0gZm9yCisgKGombmJzcDstJm5ic3A7cGl0Y2hfbGFn
c1tzXSZuYnNwOy0mbmJzcDtkX0xQQyZuYnNwOy0mbmJzcDsyKSZuYnNwOyZsdDs9Jm5ic3A7aSZu
YnNwOyZsdDsmbmJzcDtqCisgYmUgdGhlIGZ1bGx5IHJlY29uc3RydWN0ZWQgb3V0cHV0IHNpZ25h
bCBmcm9tIHRoZSBsYXN0CisgKHBpdGNoX2xhZ3Nbc10mbmJzcDsrJm5ic3A7ZF9MUEMmbmJzcDsr
Jm5ic3A7Mikgc2FtcGxlcyBvZiBwcmV2aW91cyBzdWJmcmFtZXMKKyAoc2VlIDx4cmVmIHRhcmdl
dD0ic2lsa19scGNfc3ludGhlc2lzIi8+KSwgd2hlcmUgcGl0Y2hfbGFnc1tzXSBpcyB0aGUgcGl0
Y2gKKyBsYWcgZm9yIHRoZSBjdXJyZW50IHN1YmZyYW1lIGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxr
X2x0cF9sYWdzIi8+LgorRHVyaW5nIHJlY29uc3RydWN0aW9uIG9mIHRoZSBmaXJzdCBzdWJmcmFt
ZSBmb3IgdGhpcyBjaGFubmVsIGFmdGVyIGVpdGhlcgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgor
PHQ+QW4gdW5jb2RlZCByZWd1bGFyIFNJTEsgZnJhbWUgKGlmIHRoaXMgaXMgdGhlIHNpZGUgY2hh
bm5lbCksIG9yPC90PgorPHQ+QSBkZWNvZGVyIHJlc2V0IChzZWUgPHhyZWYgdGFyZ2V0PSJkZWNv
ZGVyLXJlc2V0Ii8+KSw8L3Q+Cis8L2xpc3Q+Cisgb3V0W10gaXMgcmV3aGl0ZW5lZCBpbnRvIGFu
IExQQyByZXNpZHVhbCwKKyByZXNbaV0sIHZpYQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxh
cnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgNC4wKkxUUF9zY2FsZV9R
MTQKK3Jlc1tpXSA9IC0tLS0tLS0tLS0tLS0tLS0tICogY2xhbXAoLTEuMCwKKyAgICAgICAgICAg
IGdhaW5fUTE2W3NdCisKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZF9MUEMt
MQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fICAgICAgICAgICAgICBh
X1ExMltrXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dFtpXSAtIFwgIG91dFtpLWst
MV0gKiAtLS0tLS0tLSwgMS4wKSAuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgL18gICAgICAgICAgICAgICA0MDk2LjAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBrPTAKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhpcyByZXF1aXJlcyBzdG9y
YWdlIHRvIGJ1ZmZlciB1cCB0byAzMDYgdmFsdWVzIG9mIG91dFtpXSBmcm9tIHByZXZpb3VzCisg
c3ViZnJhbWVzLgorVGhpcyBjb3JyZXNwb25kcyB0byBXQiB3aXRoIGEgbWF4aW11bSBwaXRjaCBs
YWcgb2YKKyAxOCZuYnNwO21zJm5ic3A7KiZuYnNwOzE2Jm5ic3A7a0h6IHNhbXBsZXMsIHBsdXMg
MTYgc2FtcGxlcyBmb3IgZF9MUEMsIHBsdXMgMgorIHNhbXBsZXMgZm9yIHRoZSB3aWR0aCBvZiB0
aGUgTFRQIGZpbHRlci4KKzwvdD4KKworPHQ+CitMZXQgZV9RMjNbaV0gZm9yIGombmJzcDsmbHQ7
PSZuYnNwO2kmbmJzcDsmbHQ7Jm5ic3A7KGombmJzcDsrJm5ic3A7bikgYmUgdGhlCisgZXhjaXRh
dGlvbiBmb3IgdGhlIGN1cnJlbnQgc3ViZnJhbWUsIGFuZCBiX1E3W2tdIGZvcgorIDAmbmJzcDsm
bHQ7PSZuYnNwO2smbmJzcDsmbHQ7Jm5ic3A7NSBiZSB0aGUgY29lZmZpY2llbnRzIG9mIHRoZSBM
VFAgZmlsdGVyCisgdGFrZW4gZnJvbSB0aGUgY29kZWJvb2sgZW50cnkgaW4gb25lIG9mCisgVGFi
bGVzJm5ic3A7PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfbHRwX2ZpbHRlcl9j
b2VmZnMwIi8+CisgdGhyb3VnaCZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJz
aWxrX2x0cF9maWx0ZXJfY29lZmZzMiIvPgorIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGluZGV4IGRl
Y29kZWQgZm9yIHRoZSBjdXJyZW50IHN1YmZyYW1lIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX2x0
cF9maWx0ZXIiLz4uCitUaGVuIGZvciBpIHN1Y2ggdGhhdCBqJm5ic3A7Jmx0Oz0mbmJzcDtpJm5i
c3A7Jmx0OyZuYnNwOyhqJm5ic3A7KyZuYnNwO24pLAorIHRoZSBMUEMgcmVzaWR1YWwgaXMKKzxm
aWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsK
KyAgICAgICAgICAgICAgICAgICAgICA0CisgICAgICAgICAgZV9RMjNbaV0gICBfXyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBiX1E3W2tdCityZXNbaV0gPSAtLS0tLS0tLS0gKyBc
ICByZXNbaSAtIHBpdGNoX2xhZ3Nbc10gKyAyIC0ga10gKiAtLS0tLS0tIC4KKyAgICAgICAgICAy
LjAqKjIzICAgIC9fICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMjguMAorICAg
ICAgICAgICAgICAgICAgICAgaz0wCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKwor
PHQ+CitGb3IgdW52b2ljZWQgZnJhbWVzLCB0aGUgTFBDIHJlc2lkdWFsIGZvcgorIGombmJzcDsm
bHQ7PSZuYnNwO2kmbmJzcDsmbHQ7Jm5ic3A7KGombmJzcDsrJm5ic3A7bikgaXMgc2ltcGx5IGEg
bm9ybWFsaXplZAorIGNvcHkgb2YgdGhlIGV4Y2l0YXRpb24gc2lnbmFsLCBpLmUuLAorPGZpZ3Vy
ZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAg
ICAgICAgIGVfUTIzW2ldCityZXNbaV0gPSAtLS0tLS0tLS0KKyAgICAgICAgICAyLjAqKjIzCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5j
aG9yPSJzaWxrX2xwY19zeW50aGVzaXMiIHRpdGxlPSJMUEMgU3ludGhlc2lzIj4KKzx0PgorTFBD
IHN5bnRoZXNpcyB1c2VzIHRoZSBzaG9ydC10ZXJtIExQQyBmaWx0ZXIgdG8gcHJlZGljdCB0aGUg
bmV4dCBvdXRwdXQKKyBjb2VmZmljaWVudC4KK0ZvciBpIHN1Y2ggdGhhdCAoaiZuYnNwOy0mbmJz
cDtkX0xQQykmbmJzcDsmbHQ7PSZuYnNwO2kmbmJzcDsmbHQ7Jm5ic3A7aiwgbGV0CisgbHBjW2ld
IGJlIHRoZSByZXN1bHQgb2YgTFBDIHN5bnRoZXNpcyBmcm9tIHRoZSBsYXN0IGRfTFBDIHNhbXBs
ZXMgb2YgdGhlCisgcHJldmlvdXMgc3ViZnJhbWUsIG9yIHplcm9zIGluIHRoZSBmaXJzdCBzdWJm
cmFtZSBmb3IgdGhpcyBjaGFubmVsIGFmdGVyCisgZWl0aGVyCis8bGlzdCBzdHlsZT0ic3ltYm9s
cyI+Cis8dD5BbiB1bmNvZGVkIHJlZ3VsYXIgU0lMSyBmcmFtZSAoaWYgdGhpcyBpcyB0aGUgc2lk
ZSBjaGFubmVsKSwgb3I8L3Q+Cis8dD5BIGRlY29kZXIgcmVzZXQgKHNlZSA8eHJlZiB0YXJnZXQ9
ImRlY29kZXItcmVzZXQiLz4pLjwvdD4KKzwvbGlzdD4KK1RoZW4gZm9yIGkgc3VjaCB0aGF0IGom
bmJzcDsmbHQ7PSZuYnNwO2kmbmJzcDsmbHQ7Jm5ic3A7KGombmJzcDsrJm5ic3A7biksIHRoZQor
IHJlc3VsdCBvZiBMUEMgc3ludGhlc2lzIGZvciB0aGUgY3VycmVudCBzdWJmcmFtZSBpcworPGZp
Z3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZF9MUEMtMQorICAgICAgICAgZ2Fpbl9RMTZb
aV0gICAgICAgICAgICBfXyAgICAgICAgICAgICAgYV9RMTJba10KK2xwY1tpXSA9IC0tLS0tLS0t
LS0tICogcmVzW2ldICsgXCAgbHBjW2ktay0xXSAqIC0tLS0tLS0tIC4KKyAgICAgICAgICAgNjU1
MzYuMCAgICAgICAgICAgICAgL18gICAgICAgICAgICAgICA0MDk2LjAKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaz0wCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBkZWNv
ZGVyIHNhdmVzIHRoZSBmaW5hbCBkX0xQQyB2YWx1ZXMsIGkuZS4sIGxwY1tpXSBzdWNoIHRoYXQK
KyAoaiZuYnNwOysmbmJzcDtuJm5ic3A7LSZuYnNwO2RfTFBDKSZuYnNwOyZsdDs9Jm5ic3A7aSZu
YnNwOyZsdDsmbmJzcDsoaiZuYnNwOysmbmJzcDtuKSwKKyB0byBmZWVkIGludG8gdGhlIExQQyBz
eW50aGVzaXMgb2YgdGhlIG5leHQgc3ViZnJhbWUuCitUaGlzIHJlcXVpcmVzIHN0b3JhZ2UgZm9y
IHVwIHRvIDE2IHZhbHVlcyBvZiBscGNbaV0gKGZvciBXQiBmcmFtZXMpLgorPC90PgorCis8dD4K
K1RoZW4sIHRoZSBzaWduYWwgaXMgY2xhbXBlZCBpbnRvIHRoZSBmaW5hbCBub21pbmFsIHJhbmdl
OgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NE
QVRBWworb3V0W2ldID0gY2xhbXAoLTEuMCwgbHBjW2ldLCAxLjApIC4KK11dPjwvYXJ0d29yaz4K
KzwvZmlndXJlPgorVGhpcyBjbGFtcGluZyBvY2N1cnMgZW50aXJlbHkgYWZ0ZXIgdGhlIExQQyBz
eW50aGVzaXMgZmlsdGVyIGhhcyBydW4uCitUaGUgZGVjb2RlciBzYXZlcyB0aGUgdW5jbGFtcGVk
IHZhbHVlcywgbHBjW2ldLCB0byBmZWVkIGludG8gdGhlIExQQyBmaWx0ZXIgZm9yCisgdGhlIG5l
eHQgc3ViZnJhbWUsIGJ1dCBzYXZlcyB0aGUgY2xhbXBlZCB2YWx1ZXMsIG91dFtpXSwgZm9yIHJl
d2hpdGVuaW5nIGluCisgdm9pY2VkIGZyYW1lcy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0
aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19zdGVyZW9fdW5taXhp
bmciIHRpdGxlPSJTdGVyZW8gVW5taXhpbmciPgorPHQ+CitGb3Igc3RlcmVvIHN0cmVhbXMsIGFm
dGVyIGRlY29kaW5nIGEgZnJhbWUgZnJvbSBlYWNoIGNoYW5uZWwsIHRoZSBkZWNvZGVyIG11c3QK
KyBjb252ZXJ0IHRoZSBtaWQtc2lkZSAoTVMpIHJlcHJlc2VudGF0aW9uIGludG8gYSBsZWZ0LXJp
Z2h0IChMUikKKyByZXByZXNlbnRhdGlvbi4KK1RoZSBmdW5jdGlvbiBzaWxrX3N0ZXJlb19NU190
b19MUiAoc3RlcmVvX01TX3RvX0xSLmMpIGltcGxlbWVudHMgdGhpcyBwcm9jZXNzLgorSW4gaXQs
IHRoZSBkZWNvZGVyIHByZWRpY3RzIHRoZSBzaWRlIGNoYW5uZWwgdXNpbmcgYSkgYSBzaW1wbGUg
bG93LXBhc3NlZAorIHZlcnNpb24gb2YgdGhlIG1pZCBjaGFubmVsLCBhbmQgYikgdGhlIHVuZmls
dGVyZWQgbWlkIGNoYW5uZWwsIHVzaW5nIHRoZQorIHByZWRpY3Rpb24gd2VpZ2h0cyBkZWNvZGVk
IGluIDx4cmVmIHRhcmdldD0ic2lsa19zdGVyZW9fcHJlZCIvPi4KK1RoaXMgc2ltcGxlIGxvdy1w
YXNzIGZpbHRlciBpbXBvc2VzIGEgb25lLXNhbXBsZSBkZWxheSwgYW5kIHRoZSB1bmZpbHRlcmVk
CittaWQgY2hhbm5lbCBpcyBhbHNvIGRlbGF5ZWQgYnkgb25lIHNhbXBsZS4KK0luIG9yZGVyIHRv
IGFsbG93IHNlYW1sZXNzIHN3aXRjaGluZyBiZXR3ZWVuIHN0ZXJlbyBhbmQgbW9ubywgbW9ubyBz
dHJlYW1zIG11c3QKKyBhbHNvIGltcG9zZSB0aGUgc2FtZSBvbmUtc2FtcGxlIGRlbGF5LgorVGhl
IGVuY29kZXIgcmVxdWlyZXMgYW4gYWRkaXRpb25hbCBvbmUtc2FtcGxlIGRlbGF5IGZvciBib3Ro
IG1vbm8gYW5kIHN0ZXJlbworIHN0cmVhbXMsIHRob3VnaCBhbiBlbmNvZGVyIG1heSBvbWl0IHRo
ZSBkZWxheSBmb3IgbW9ubyBpZiBpdCBrbm93cyBpdCB3aWxsCisgbmV2ZXIgc3dpdGNoIHRvIHN0
ZXJlby4KKzwvdD4KKworPHQ+CitUaGUgdW5taXhpbmcgcHJvY2VzcyBvcGVyYXRlcyBpbiB0d28g
cGhhc2VzLgorVGhlIGZpcnN0IHBoYXNlIGxhc3RzIGZvciA4Jm5ic3A7bXMsIGR1cmluZyB3aGlj
aCBpdCBpbnRlcnBvbGF0ZXMgdGhlCisgcHJlZGljdGlvbiB3ZWlnaHRzIGZyb20gdGhlIHByZXZp
b3VzIGZyYW1lLCBwcmV2X3cwX1ExMyBhbmQgcHJldl93MV9RMTMsIHRvCisgdGhlIHZhbHVlcyBm
b3IgdGhlIGN1cnJlbnQgZnJhbWUsIHcwX1ExMyBhbmQgdzFfUTEzLgorVGhlIHNlY29uZCBwaGFz
ZSBzaW1wbHkgdXNlcyB0aGVzZSB3ZWlnaHRzIGZvciB0aGUgcmVtYWluZGVyIG9mIHRoZSBmcmFt
ZS4KKzwvdD4KKworPHQ+CitMZXQgbWlkW2ldIGFuZCBzaWRlW2ldIGJlIHRoZSBjb250ZW50cyBv
ZiBvdXRbaV0gKGZyb20KKyA8eHJlZiB0YXJnZXQ9InNpbGtfbHBjX3N5bnRoZXNpcyIvPikgZm9y
IHRoZSBjdXJyZW50IG1pZCBhbmQgc2lkZSBjaGFubmVscywKKyByZXNwZWN0aXZlbHksIGFuZCBs
ZXQgbGVmdFtpXSBhbmQgcmlnaHRbaV0gYmUgdGhlIGNvcnJlc3BvbmRpbmcgc3RlcmVvIG91dHB1
dAorIGNoYW5uZWxzLgorSWYgdGhlIHNpZGUgY2hhbm5lbCBpcyBub3QgY29kZWQgKHNlZSA8eHJl
ZiB0YXJnZXQ9InNpbGtfbWlkX29ubHlfZmxhZyIvPiksCisgdGhlbiBzaWRlW2ldIGlzIHNldCB0
byB6ZXJvLgorQWxzbyBsZXQgaiBiZSBkZWZpbmVkIGFzIGluIDx4cmVmIHRhcmdldD0ic2lsa19m
cmFtZV9yZWNvbnN0cnVjdGlvbiIvPiwgbjEgYmUKKyB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgaW4g
cGhhc2UmbmJzcDsxICg2NCBmb3IgTkIsIDk2IGZvciBNQiwgYW5kIDEyOCBmb3IgV0IpLAorIGFu
ZCBuMiBiZSB0aGUgdG90YWwgbnVtYmVyIG9mIHNhbXBsZXMgaW4gdGhlIGZyYW1lLgorVGhlbiBm
b3IgaSBzdWNoIHRoYXQgaiZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsmbmJzcDsoaiZuYnNw
OysmbmJzcDtuMiksCisgdGhlIGxlZnQgYW5kIHJpZ2h0IGNoYW5uZWwgb3V0cHV0IGlzCis8Zmln
dXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisg
ICAgICAgICAgICAgIHByZXZfdzBfUTEzICAgICAgICAgICAgICAgICAgKHcwX1ExMyAtIHByZXZf
dzBfUTEzKQorICAgICAgICB3MCA9ICAtLS0tLS0tLS0tLSArIG1pbihpIC0gaiwgbjEpKi0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0gLAorICAgICAgICAgICAgICAgIDgxOTIuMCAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDgxOTIuMCpuMQorCisgICAgICAgICAgICAgIHByZXZfdzFfUTEzICAgICAg
ICAgICAgICAgICAgKHcxX1ExMyAtIHByZXZfdzFfUTEzKQorICAgICAgICB3MSA9ICAtLS0tLS0t
LS0tLSArIG1pbihpIC0gaiwgbjEpKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLAorICAgICAgICAg
ICAgICAgIDgxOTIuMCAgICAgICAgICAgICAgICAgICAgICAgICAgICA4MTkyLjAqbjEKKworICAg
ICAgICAgICAgIG1pZFtpLTJdICsgMiptaWRbaS0xXSArIG1pZFtpXQorICAgICAgICBwMCA9IC0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAsCisgICAgICAgICAgICAgICAgICAgICAgICAg
IDQuMAorCisgbGVmdFtpXSA9IGNsYW1wKC0xLjAsICgxICsgdzEpKm1pZFtpLTFdICsgc2lkZVtp
LTFdICsgdzAqcDAsIDEuMCkgLAorCityaWdodFtpXSA9IGNsYW1wKC0xLjAsICgxIC0gdzEpKm1p
ZFtpLTFdIC0gc2lkZVtpLTFdIC0gdzAqcDAsIDEuMCkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1
cmU+CitUaGVzZSBmb3JtdWxhcyByZXF1aXJlIHR3byBzYW1wbGVzIHByaW9yIHRvIGluZGV4Jm5i
c3A7aiwgdGhlIHN0YXJ0IG9mIHRoZQorIGZyYW1lLCBmb3IgdGhlIG1pZCBjaGFubmVsLCBhbmQg
b25lIHByaW9yIHNhbXBsZSBmb3IgdGhlIHNpZGUgY2hhbm5lbC4KK0ZvciB0aGUgZmlyc3QgZnJh
bWUgYWZ0ZXIgYSBkZWNvZGVyIHJlc2V0LCB6ZXJvcyBhcmUgdXNlZCBpbnN0ZWFkLgorPC90Pgor
Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJSZXNhbXBsaW5nIj4KKzx0PgorQWZ0ZXIg
c3RlcmVvIHVubWl4aW5nIChpZiBhbnkpLCB0aGUgZGVjb2RlciBhcHBsaWVzIHJlc2FtcGxpbmcg
dG8gY29udmVydCB0aGUKKyBkZWNvZGVkIFNJTEsgb3V0cHV0IHRvIHRoZSBzYW1wbGUgcmF0ZSBk
ZXNpcmVkIGJ5IHRoZSBhcHBsaWNhdGlvbi4KK1RoaXMgaXMgbmVjZXNzYXJ5IHdoZW4gZGVjb2Rp
bmcgYSBIeWJyaWQgZnJhbWUgYXQgU1dCIG9yIEZCIHNhbXBsZSByYXRlcywgb3IKKyB3aGVuZXZl
ciB0aGUgZGVjb2RlciB3YW50cyB0aGUgb3V0cHV0IGF0IGEgZGlmZmVyZW50IHNhbXBsZSByYXRl
IHRoYW4gdGhlCisgaW50ZXJuYWwgU0lMSyBzYW1wbGluZyByYXRlIChlLmcuLCB0byBhbGxvdyBh
IGNvbnN0YW50IHNhbXBsZSByYXRlIHdoZW4gdGhlCisgYXVkaW8gYmFuZHdpZHRoIGNoYW5nZXMs
IG9yIHRvIGFsbG93IG1peGluZyB3aXRoIGF1ZGlvIGZyb20gb3RoZXIKKyBhcHBsaWNhdGlvbnMp
LgorVGhlIHJlc2FtcGxlciBpdHNlbGYgaXMgbm9uLW5vcm1hdGl2ZSwgYW5kIGEgZGVjb2RlciBj
YW4gdXNlIGFueSBtZXRob2QgaXQKKyB3YW50cyB0byBwZXJmb3JtIHRoZSByZXNhbXBsaW5nLgor
PC90PgorCis8dD4KK0hvd2V2ZXIsIGEgbWluaW11bSBhbW91bnQgb2YgZGVsYXkgaXMgaW1wb3Nl
ZCB0byBhbGxvdyB0aGUgcmVzYW1wbGVyIHRvCisgb3BlcmF0ZSwgYW5kIHRoaXMgZGVsYXkgaXMg
bm9ybWF0aXZlLCBzbyB0aGF0IHRoZSBjb3JyZXNwb25kaW5nIGRlbGF5IGNhbiBiZQorIGFwcGxp
ZWQgdG8gdGhlIE1EQ1QgbGF5ZXIgaW4gdGhlIGVuY29kZXIuCitBIGRlY29kZXIgaXMgYWx3YXlz
IGZyZWUgdG8gdXNlIGEgcmVzYW1wbGVyIHdoaWNoIHJlcXVpcmVzIG1vcmUgZGVsYXkgdGhhbgor
IGFsbG93ZWQgZm9yIGhlcmUgKGUuZy4sIHRvIGltcHJvdmUgcXVhbGl0eSksIGJ1dCBpdCBtdXN0
IHRoZW4gZGVsYXkgdGhlIG91dHB1dAorIG9mIHRoZSBNRENUIGxheWVyIGJ5IHRoaXMgZXh0cmEg
YW1vdW50LgorS2VlcGluZyBhcyBtdWNoIGRlbGF5IGFzIHBvc3NpYmxlIG9uIHRoZSBlbmNvZGVy
IHNpZGUgYWxsb3dzIGFuIGVuY29kZXIgd2hpY2gKKyBrbm93cyBpdCB3aWxsIG5ldmVyIHVzZSBh
bnkgb2YgdGhlIFNJTEsgb3IgSHlicmlkIG1vZGVzIHRvIHNraXAgdGhpcyBkZWxheS4KK0J5IGNv
bnRyYXN0LCBpZiBpdCB3ZXJlIGFsbCBhcHBsaWVkIGJ5IHRoZSBkZWNvZGVyLCB0aGVuIGEgZGVj
b2RlciB3aGljaAorIHByb2Nlc3NlcyBhdWRpbyBpbiBmaXhlZC1zaXplIGJsb2NrcyB3b3VsZCBi
ZSBmb3JjZWQgdG8gZGVsYXkgdGhlIG91dHB1dCBvZgorIENFTFQgZnJhbWVzIGp1c3QgaW4gY2Fz
ZSBvZiBhIGxhdGVyIHN3aXRjaCB0byBhIFNJTEsgb3IgSHlicmlkIG1vZGUuCis8L3Q+CisKKzx0
PgorPHhyZWYgdGFyZ2V0PSJzaWxrX3Jlc2FtcGxlcl9kZWxheV9hbGxvYyIvPiBnaXZlcyB0aGUg
bWF4aW11bSByZXNhbXBsZXIgZGVsYXkKKyBpbiBzYW1wbGVzIGF0IDQ4Jm5ic3A7a0h6IGZvciBl
YWNoIFNJTEsgYXVkaW8gYmFuZHdpZHRoLgorQmVjYXVzZSB0aGUgYWN0dWFsIG91dHB1dCByYXRl
IG1heSBub3QgYmUgNDgmbmJzcDtrSHosIGl0IG1heSBub3QgYmUgcG9zc2libGUKKyB0byBhY2hp
ZXZlIGV4YWN0bHkgdGhlc2UgZGVsYXlzIHdoaWxlIHVzaW5nIGEgd2hvbGUgbnVtYmVyIG9mIGlu
cHV0IG9yIG91dHB1dAorIHNhbXBsZXMuCitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGlz
IGFibGUgdG8gcmVzYW1wbGUgdG8gYW55IG9mIHRoZSBzdXBwb3J0ZWQKKyBvdXRwdXQgc2FtcGxp
bmcgcmF0ZXMgKDgsIDEyLCAxNiwgMjQsIG9yIDQ4Jm5ic3A7a0h6KSB3aXRoaW4gb3IgbmVhciB0
aGlzCisgZGVsYXkgY29uc3RyYWludC4KK1NvbWUgcmVzYW1wbGluZyBmaWx0ZXJzIChpbmNsdWRp
bmcgdGhvc2UgdXNlZCBieSB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uKQorIG1heSBhZGQg
YSBkZWxheSB0aGF0IGlzIG5vdCBhbiBleGFjdCBpbnRlZ2VyLCBvciBpcyBub3QgbGluZWFyLXBo
YXNlLCBhbmQgc28KKyBjYW5ub3QgYmUgcmVwcmVzZW50ZWQgYnkgYSBzaW5nbGUgZGVsYXkgYXQg
YWxsIGZyZXF1ZW5jaWVzLgorSG93ZXZlciwgc3VjaCBkZXZpYXRpb25zIGFyZSB1bmxpa2VseSB0
byBiZSBwZXJjZXB0aWJsZSwgYW5kIHRoZSBjb21wYXJpc29uCisgdG9vbCBkZXNjcmliZWQgaW4g
PHhyZWYgdGFyZ2V0PSJjb25mb3JtYW5jZSIvPiBpcyBkZXNpZ25lZCB0byBiZSByZWxhdGl2ZWx5
CisgaW5zZW5zaXRpdmUgdG8gdGhlbS4KK1RoZSBkZWxheXMgbGlzdGVkIGhlcmUgYXJlIHRoZSBv
bmVzIHRoYXQgc2hvdWxkIGJlIHRhcmdldGVkIGJ5IHRoZSBlbmNvZGVyLgorPC90PgorCis8dGV4
dHRhYmxlIGFuY2hvcj0ic2lsa19yZXNhbXBsZXJfZGVsYXlfYWxsb2MiCisgdGl0bGU9IlNJTEsg
UmVzYW1wbGVyIERlbGF5IEFsbG9jYXRpb25zIj4KKzx0dGNvbD5BdWRpbyBCYW5kd2lkdGg8L3R0
Y29sPgorPHR0Y29sPkRlbGF5IGluIG1pbGxpc2Vjb25kPC90dGNvbD4KKzxjPk5CPC9jPiA8Yz4w
LjUzODwvYz4KKzxjPk1CPC9jPiA8Yz4wLjY5MjwvYz4KKzxjPldCPC9jPiA8Yz4wLjcwNjwvYz4K
KzwvdGV4dHRhYmxlPgorCis8dD4KK05CIGlzIGdpdmVuIGEgc21hbGxlciBkZWNvZGVyIGRlbGF5
IGFsbG9jYXRpb24gdGhhbiBNQiBhbmQgV0IgdG8gYWxsb3cgYQorIGhpZ2hlci1vcmRlciBmaWx0
ZXIgd2hlbiByZXNhbXBsaW5nIHRvIDgmbmJzcDtrSHogaW4gYm90aCB0aGUgZW5jb2RlciBhbmQK
KyBkZWNvZGVyLgorVGhpcyBpbXBsaWVzIHRoYXQgdGhlIGF1ZGlvIGNvbnRlbnQgb2YgdHdvIFNJ
TEsgZnJhbWVzIG9wZXJhdGluZyBhdCBkaWZmZXJlbnQKKyBiYW5kd2lkdGhzIGFyZSBub3QgcGVy
ZmVjdGx5IGFsaWduZWQgaW4gdGltZS4KK1RoaXMgaXMgbm90IGFuIGlzc3VlIGZvciBhbnkgdHJh
bnNpdGlvbnMgZGVzY3JpYmVkIGluCisgPHhyZWYgdGFyZ2V0PSJzd2l0Y2hpbmciLz4sIGJlY2F1
c2UgdGhleSBhbGwgaW52b2x2ZSBhIFNJTEsgZGVjb2RlciByZXNldC4KK1doZW4gdGhlIGRlY29k
ZXIgaXMgcmVzZXQsIGFueSBzYW1wbGVzIHJlbWFpbmluZyBpbiB0aGUgcmVzYW1wbGluZyBidWZm
ZXIKKyBhcmUgZGlzY2FyZGVkLCBhbmQgdGhlIHJlc2FtcGxlciBpcyByZS1pbml0aWFsaXplZCB3
aXRoIHNpbGVuY2UuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCisKKzxzZWN0
aW9uIHRpdGxlPSJDRUxUIERlY29kZXIiPgorCis8dD4KK1RoZSBDRUxUIGxheWVyIG9mIE9wdXMg
aXMgYmFzZWQgb24gdGhlIE1vZGlmaWVkIERpc2NyZXRlIENvc2luZSBUcmFuc2Zvcm0KKzx4cmVm
IHRhcmdldD0nTURDVCcvPiB3aXRoIHBhcnRpYWxseSBvdmVybGFwcGluZyB3aW5kb3dzIG9mIDUg
dG8gMjIuNSBtcy4KK1RoZSBtYWluIHByaW5jaXBsZSBiZWhpbmQgQ0VMVCBpcyB0aGF0IHRoZSBN
RENUIHNwZWN0cnVtIGlzIGRpdmlkZWQgaW50bworYmFuZHMgdGhhdCAocm91Z2hseSkgZm9sbG93
IHRoZSBCYXJrIHNjYWxlLCBpLmUuLCB0aGUgc2NhbGUgb2YgdGhlIGVhcidzCitjcml0aWNhbCBi
YW5kcyZuYnNwOzx4cmVmIHRhcmdldD0iWndpY2tlcjYxIi8+LiBUaGUgbm9ybWFsIENFTFQgbGF5
ZXIgdXNlcyAyMSBvZiB0aG9zZSBiYW5kcywgdGhvdWdoIE9wdXMKKyBDdXN0b20gKHNlZSA8eHJl
ZiB0YXJnZXQ9Im9wdXMtY3VzdG9tIi8+KSBtYXkgdXNlIGEgZGlmZmVyZW50IG51bWJlciBvZiBi
YW5kcy4KK0luIEh5YnJpZCBtb2RlLCB0aGUgZmlyc3QgMTcgYmFuZHMgKHVwIHRvIDgmbmJzcDtr
SHopIGFyZSBub3QgY29kZWQuCitBIGJhbmQgY2FuIGNvbnRhaW4gYXMgbGl0dGxlIGFzIG9uZSBN
RENUIGJpbiBwZXIgY2hhbm5lbCwgYW5kIGFzIG1hbnkgYXMgMTc2CitiaW5zIHBlciBjaGFubmVs
LCBhcyBkZXRhaWxlZCBpbiA8eHJlZiB0YXJnZXQ9ImNlbHRfYmFuZF9zaXplcyIvPi4KK0luIGVh
Y2ggYmFuZCwgdGhlIGdhaW4gKGVuZXJneSkgaXMgY29kZWQgc2VwYXJhdGVseSBmcm9tCit0aGUg
c2hhcGUgb2YgdGhlIHNwZWN0cnVtLiBDb2RpbmcgdGhlIGdhaW4gZXhwbGljaXRseSBtYWtlcyBp
dCBlYXN5IHRvCitwcmVzZXJ2ZSB0aGUgc3BlY3RyYWwgZW52ZWxvcGUgb2YgdGhlIHNpZ25hbC4g
VGhlIHJlbWFpbmluZyB1bml0LW5vcm0gc2hhcGUKK3ZlY3RvciBpcyBlbmNvZGVkIHVzaW5nIGEg
UHlyYW1pZCBWZWN0b3IgUXVhbnRpemVyIChQVlEpJm5ic3A7PHhyZWYgdGFyZ2V0PSdQVlEtZGVj
b2RlcicvPi4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9ImNlbHRfYmFuZF9zaXplcyIKKyB0
aXRsZT0iTURDVCBCaW5zIFBlciBDaGFubmVsIFBlciBCYW5kIGZvciBFYWNoIEZyYW1lIFNpemUi
PgorPHR0Y29sPkZyYW1lIFNpemU6PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjIuNSZu
YnNwO21zPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjUmbmJzcDttczwvdHRjb2w+Cis8
dHRjb2wgYWxpZ249InJpZ2h0Ij4xMCZuYnNwO21zPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmln
aHQiPjIwJm5ic3A7bXM8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+U3RhcnQgRnJlcXVl
bmN5PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPlN0b3AgRnJlcXVlbmN5PC90dGNvbD4K
KzxjPkJhbmQ8L2M+IDxjPkJpbnM6PC9jPiA8Yy8+IDxjLz4gPGMvPiA8Yy8+IDxjLz4KKyA8Yz4w
PC9jPiAgPGM+MTwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgIDxjPjg8L2M+ICAgICA8Yz4wJm5i
c3A7SHo8L2M+ICAgPGM+MjAwJm5ic3A7SHo8L2M+CisgPGM+MTwvYz4gIDxjPjE8L2M+ICA8Yz4y
PC9jPiAgPGM+NDwvYz4gICA8Yz44PC9jPiAgIDxjPjIwMCZuYnNwO0h6PC9jPiAgIDxjPjQwMCZu
YnNwO0h6PC9jPgorIDxjPjI8L2M+ICA8Yz4xPC9jPiAgPGM+MjwvYz4gIDxjPjQ8L2M+ICAgPGM+
ODwvYz4gICA8Yz40MDAmbmJzcDtIejwvYz4gICA8Yz42MDAmbmJzcDtIejwvYz4KKyA8Yz4zPC9j
PiAgPGM+MTwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgIDxjPjg8L2M+ICAgPGM+NjAwJm5ic3A7
SHo8L2M+ICAgPGM+ODAwJm5ic3A7SHo8L2M+CisgPGM+NDwvYz4gIDxjPjE8L2M+ICA8Yz4yPC9j
PiAgPGM+NDwvYz4gICA8Yz44PC9jPiAgIDxjPjgwMCZuYnNwO0h6PC9jPiAgPGM+MTAwMCZuYnNw
O0h6PC9jPgorIDxjPjU8L2M+ICA8Yz4xPC9jPiAgPGM+MjwvYz4gIDxjPjQ8L2M+ICAgPGM+ODwv
Yz4gIDxjPjEwMDAmbmJzcDtIejwvYz4gIDxjPjEyMDAmbmJzcDtIejwvYz4KKyA8Yz42PC9jPiAg
PGM+MTwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgIDxjPjg8L2M+ICA8Yz4xMjAwJm5ic3A7SHo8
L2M+ICA8Yz4xNDAwJm5ic3A7SHo8L2M+CisgPGM+NzwvYz4gIDxjPjE8L2M+ICA8Yz4yPC9jPiAg
PGM+NDwvYz4gICA8Yz44PC9jPiAgPGM+MTQwMCZuYnNwO0h6PC9jPiAgPGM+MTYwMCZuYnNwO0h6
PC9jPgorIDxjPjg8L2M+ICA8Yz4yPC9jPiAgPGM+NDwvYz4gIDxjPjg8L2M+ICA8Yz4xNjwvYz4g
IDxjPjE2MDAmbmJzcDtIejwvYz4gIDxjPjIwMDAmbmJzcDtIejwvYz4KKyA8Yz45PC9jPiAgPGM+
MjwvYz4gIDxjPjQ8L2M+ICA8Yz44PC9jPiAgPGM+MTY8L2M+ICA8Yz4yMDAwJm5ic3A7SHo8L2M+
ICA8Yz4yNDAwJm5ic3A7SHo8L2M+Cis8Yz4xMDwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgPGM+
ODwvYz4gIDxjPjE2PC9jPiAgPGM+MjQwMCZuYnNwO0h6PC9jPiAgPGM+MjgwMCZuYnNwO0h6PC9j
PgorPGM+MTE8L2M+ICA8Yz4yPC9jPiAgPGM+NDwvYz4gIDxjPjg8L2M+ICA8Yz4xNjwvYz4gIDxj
PjI4MDAmbmJzcDtIejwvYz4gIDxjPjMyMDAmbmJzcDtIejwvYz4KKzxjPjEyPC9jPiAgPGM+NDwv
Yz4gIDxjPjg8L2M+IDxjPjE2PC9jPiAgPGM+MzI8L2M+ICA8Yz4zMjAwJm5ic3A7SHo8L2M+ICA8
Yz40MDAwJm5ic3A7SHo8L2M+Cis8Yz4xMzwvYz4gIDxjPjQ8L2M+ICA8Yz44PC9jPiA8Yz4xNjwv
Yz4gIDxjPjMyPC9jPiAgPGM+NDAwMCZuYnNwO0h6PC9jPiAgPGM+NDgwMCZuYnNwO0h6PC9jPgor
PGM+MTQ8L2M+ICA8Yz40PC9jPiAgPGM+ODwvYz4gPGM+MTY8L2M+ICA8Yz4zMjwvYz4gIDxjPjQ4
MDAmbmJzcDtIejwvYz4gIDxjPjU2MDAmbmJzcDtIejwvYz4KKzxjPjE1PC9jPiAgPGM+NjwvYz4g
PGM+MTI8L2M+IDxjPjI0PC9jPiAgPGM+NDg8L2M+ICA8Yz41NjAwJm5ic3A7SHo8L2M+ICA8Yz42
ODAwJm5ic3A7SHo8L2M+Cis8Yz4xNjwvYz4gIDxjPjY8L2M+IDxjPjEyPC9jPiA8Yz4yNDwvYz4g
IDxjPjQ4PC9jPiAgPGM+NjgwMCZuYnNwO0h6PC9jPiAgPGM+ODAwMCZuYnNwO0h6PC9jPgorPGM+
MTc8L2M+ICA8Yz44PC9jPiA8Yz4xNjwvYz4gPGM+MzI8L2M+ICA8Yz42NDwvYz4gIDxjPjgwMDAm
bmJzcDtIejwvYz4gIDxjPjk2MDAmbmJzcDtIejwvYz4KKzxjPjE4PC9jPiA8Yz4xMjwvYz4gPGM+
MjQ8L2M+IDxjPjQ4PC9jPiAgPGM+OTY8L2M+ICA8Yz45NjAwJm5ic3A7SHo8L2M+IDxjPjEyMDAw
Jm5ic3A7SHo8L2M+Cis8Yz4xOTwvYz4gPGM+MTg8L2M+IDxjPjM2PC9jPiA8Yz43MjwvYz4gPGM+
MTQ0PC9jPiA8Yz4xMjAwMCZuYnNwO0h6PC9jPiA8Yz4xNTYwMCZuYnNwO0h6PC9jPgorPGM+MjA8
L2M+IDxjPjIyPC9jPiA8Yz40NDwvYz4gPGM+ODg8L2M+IDxjPjE3NjwvYz4gPGM+MTU2MDAmbmJz
cDtIejwvYz4gPGM+MjAwMDAmbmJzcDtIejwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK1RyYW5z
aWVudHMgYXJlIG5vdG9yaW91c2x5IGRpZmZpY3VsdCBmb3IgdHJhbnNmb3JtIGNvZGVjcyB0byBj
b2RlLgorQ0VMVCB1c2VzIHR3byBkaWZmZXJlbnQgc3RyYXRlZ2llcyBmb3IgdGhlbToKKzxsaXN0
IHN0eWxlPSJudW1iZXJzIj4KKzx0PlVzaW5nIG11bHRpcGxlIHNtYWxsZXIgTURDVHMgaW5zdGVh
ZCBvZiBhIHNpbmdsZSBsYXJnZSBNRENULCBhbmQ8L3Q+Cis8dD5EeW5hbWljIHRpbWUtZnJlcXVl
bmN5IHJlc29sdXRpb24gY2hhbmdlcyAoU2VlIDx4cmVmIHRhcmdldD0ndGYtY2hhbmdlJy8+KS48
L3Q+Cis8L2xpc3Q+CitUbyBpbXByb3ZlIHF1YWxpdHkgb24gaGlnaGx5IHRvbmFsIGFuZCBwZXJp
b2RpYyBzaWduYWxzLCBDRUxUIGluY2x1ZGVzCithIHByZWZpbHRlci9wb3N0ZmlsdGVyIGNvbWJp
bmF0aW9uLiBUaGUgcHJlZmlsdGVyIG9uIHRoZSBlbmNvZGVyIHNpZGUKK2F0dGVudWF0ZXMgdGhl
IHNpZ25hbCdzIGhhcm1vbmljcy4gVGhlIHBvc3RmaWx0ZXIgb24gdGhlIGRlY29kZXIgc2lkZQor
cmVzdG9yZXMgdGhlIG9yaWdpbmFsIGdhaW4gb2YgdGhlIGhhcm1vbmljcywgd2hpbGUgc2hhcGlu
ZyB0aGUgY29kaW5nIG5vaXNlCit0byByb3VnaGx5IGZvbGxvdyB0aGUgaGFybW9uaWNzLiBTdWNo
IG5vaXNlIHNoYXBpbmcgcmVkdWNlcyB0aGUgcGVyY2VwdGlvbgorb2YgdGhlIG5vaXNlLgorPC90
PgorCis8dD4KK1doZW4gY29kaW5nIGEgc3RlcmVvIHNpZ25hbCwgdGhyZWUgY29kaW5nIG1ldGhv
ZHMgYXJlIGF2YWlsYWJsZToKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0Pm1pZC1zaWRlIHN0
ZXJlbzogZW5jb2RlcyB0aGUgbWVhbiBhbmQgdGhlIGRpZmZlcmVuY2Ugb2YgdGhlIGxlZnQgYW5k
IHJpZ2h0IGNoYW5uZWxzLDwvdD4KKzx0PmludGVuc2l0eSBzdGVyZW86IG9ubHkgZW5jb2RlcyB0
aGUgbWVhbiBvZiB0aGUgbGVmdCBhbmQgcmlnaHQgY2hhbm5lbHMgKGRpc2NhcmRzIHRoZSBkaWZm
ZXJlbmNlKSw8L3Q+Cis8dD5kdWFsIHN0ZXJlbzogZW5jb2RlcyB0aGUgbGVmdCBhbmQgcmlnaHQg
Y2hhbm5lbHMgc2VwYXJhdGVseS48L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzx0PgorQW4gb3ZlcnZp
ZXcgb2YgdGhlIGRlY29kZXIgaXMgZ2l2ZW4gaW4gPHhyZWYgdGFyZ2V0PSJjZWx0LWRlY29kZXIt
b3ZlcnZpZXciLz4uCis8L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSJjZWx0LWRlY29kZXItb3ZlcnZp
ZXciIHRpdGxlPSJTdHJ1Y3R1cmUgb2YgdGhlIENFTFQgZGVjb2RlciI+Cis8YXJ0d29yayBhbGln
bj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgICstLS0tLS0tLS0rCisgICAgICAg
ICAgICAgICB8IENvYXJzZSAgfAorICAgICAgICAgICAgKy0+fCBkZWNvZGVyIHwtLS0tKworICAg
ICAgICAgICAgfCAgKy0tLS0tLS0tLSsgICAgfAorICAgICAgICAgICAgfCAgICAgICAgICAgICAg
ICAgfAorICAgICAgICAgICAgfCAgKy0tLS0tLS0tLSsgICAgdgorICAgICAgICAgICAgfCAgfCAg
RmluZSAgIHwgICstLS0rCisgICAgICAgICAgICArLT58IGRlY29kZXIgfC0+fCArIHwKKyAgICAg
ICAgICAgIHwgICstLS0tLS0tLS0rICArLS0tKworICAgICAgICAgICAgfCAgICAgICBeICAgICAg
ICAgfAorKy0tLS0tLS0tLSsgfCAgICAgICB8ICAgICAgICAgfAorfCAgUmFuZ2UgIHwgfCArLS0t
LS0tLS0tLSsgICAgdgorfCBEZWNvZGVyIHwtKyB8ICAgQml0ICAgIHwgKy0tLS0tLSsKKystLS0t
LS0tLS0rIHwgfEFsbG9jYXRpb258IHwgMioqeCB8CisgICAgICAgICAgICB8ICstLS0tLS0tLS0t
KyArLS0tLS0tKworICAgICAgICAgICAgfCAgICAgICB8ICAgICAgICAgfAorICAgICAgICAgICAg
fCAgICAgICB2ICAgICAgICAgdiAgICAgICAgICAgICAgICstLS0tLS0tLSsKKyAgICAgICAgICAg
IHwgICstLS0tLS0tLS0rICArLS0tKyAgKy0tLS0tLS0rICB8IHBpdGNoICB8CisgICAgICAgICAg
ICArLT58ICAgUFZRICAgfC0+fCAqIHwtPnwgSU1EQ1QgfC0+fCBwb3N0LSAgfC0tLT4KKyAgICAg
ICAgICAgIHwgIHwgZGVjb2RlciB8ICArLS0tKyAgKy0tLS0tLS0rICB8IGZpbHRlciB8CisgICAg
ICAgICAgICB8ICArLS0tLS0tLS0tKyAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tKworICAg
ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgorICAgICAg
ICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworXV0+PC9hcnR3
b3JrPgorPC9maWd1cmU+CisKKzx0PgorVGhlIGRlY29kZXIgaXMgYmFzZWQgb24gdGhlIGZvbGxv
d2luZyBzeW1ib2xzIGFuZCBzZXRzIG9mIHN5bWJvbHM6Cis8L3Q+CisKKzx0ZXh0dGFibGUgYW5j
aG9yPSJjZWx0X3N5bWJvbHMiCisgdGl0bGU9Ik9yZGVyIG9mIHRoZSBTeW1ib2xzIGluIHRoZSBD
RUxUIFNlY3Rpb24gb2YgdGhlIEJpdHN0cmVhbSI+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+U3lt
Ym9sKHMpPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0iY2VudGVyIj5QREY8L3R0Y29sPgorPHR0Y29s
IGFsaWduPSJjZW50ZXIiPkNvbmRpdGlvbjwvdHRjb2w+Cis8Yz5zaWxlbmNlPC9jPiAgICAgIDxj
PnszMjc2NywgMX0vMzI3Njg8L2M+IDxjPjwvYz4KKzxjPnBvc3QtZmlsdGVyPC9jPiAgPGM+ezEs
IDF9LzI8L2M+IDxjPjwvYz4KKzxjPm9jdGF2ZTwvYz4gICAgICAgPGM+dW5pZm9ybSAoNik8L2M+
PGM+cG9zdC1maWx0ZXI8L2M+Cis8Yz5wZXJpb2Q8L2M+ICAgICAgIDxjPnJhdyBiaXRzICg0K29j
dGF2ZSk8L2M+PGM+cG9zdC1maWx0ZXI8L2M+Cis8Yz5nYWluPC9jPiAgICAgICAgIDxjPnJhdyBi
aXRzICgzKTwvYz48Yz5wb3N0LWZpbHRlcjwvYz4KKzxjPnRhcHNldDwvYz4gICAgICAgPGM+ezIs
IDEsIDF9LzQ8L2M+PGM+cG9zdC1maWx0ZXI8L2M+Cis8Yz50cmFuc2llbnQ8L2M+ICAgIDxjPns3
LCAxfS84PC9jPjxjPjwvYz4KKzxjPmludHJhPC9jPiAgICAgICAgPGM+ezcsIDF9Lzg8L2M+PGM+
PC9jPgorPGM+Y29hcnNlIGVuZXJneTwvYz48Yz48eHJlZiB0YXJnZXQ9ImVuZXJneS1kZWNvZGlu
ZyIvPjwvYz48Yz48L2M+Cis8Yz50Zl9jaGFuZ2U8L2M+ICAgIDxjPjx4cmVmIHRhcmdldD0idHJh
bnNpZW50LWRlY29kaW5nIi8+PC9jPjxjPjwvYz4KKzxjPnRmX3NlbGVjdDwvYz4gICAgPGM+ezEs
IDF9LzI8L2M+PGM+PHhyZWYgdGFyZ2V0PSJ0cmFuc2llbnQtZGVjb2RpbmciLz48L2M+Cis8Yz5z
cHJlYWQ8L2M+ICAgICAgIDxjPns3LCAyLCAyMSwgMn0vMzI8L2M+PGM+PC9jPgorPGM+ZHluLiBh
bGxvYy48L2M+ICA8Yz48eHJlZiB0YXJnZXQ9ImFsbG9jYXRpb24iLz48L2M+PGM+PC9jPgorPGM+
YWxsb2MuIHRyaW08L2M+ICA8Yz57MiwgMiwgNSwgMTAsIDIyLCA0NiwgMjIsIDEwLCA1LCAyLCAy
fS8xMjg8L2M+PGM+PC9jPgorPGM+c2tpcDwvYz4gICAgICAgICA8Yz57MSwgMX0vMjwvYz48Yz48
eHJlZiB0YXJnZXQ9ImFsbG9jYXRpb24iLz48L2M+Cis8Yz5pbnRlbnNpdHk8L2M+ICAgIDxjPnVu
aWZvcm08L2M+PGM+PHhyZWYgdGFyZ2V0PSJhbGxvY2F0aW9uIi8+PC9jPgorPGM+ZHVhbDwvYz4g
ICAgICAgICA8Yz57MSwgMX0vMjwvYz48Yz48L2M+Cis8Yz5maW5lIGVuZXJneTwvYz4gIDxjPjx4
cmVmIHRhcmdldD0iZW5lcmd5LWRlY29kaW5nIi8+PC9jPjxjPjwvYz4KKzxjPnJlc2lkdWFsPC9j
PiAgICAgPGM+PHhyZWYgdGFyZ2V0PSJQVlEtZGVjb2RlciIvPjwvYz48Yz48L2M+Cis8Yz5hbnRp
LWNvbGxhcHNlPC9jPjxjPnsxLCAxfS8yPC9jPjxjPjx4cmVmIHRhcmdldD0iYW50aS1jb2xsYXBz
ZSIvPjwvYz4KKzxjPmZpbmFsaXplPC9jPiAgICAgPGM+PHhyZWYgdGFyZ2V0PSJlbmVyZ3ktZGVj
b2RpbmciLz48L2M+PGM+PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlIGRlY29kZXIgZXh0
cmFjdHMgaW5mb3JtYXRpb24gZnJvbSB0aGUgcmFuZ2UtY29kZWQgYml0c3RyZWFtIGluIHRoZSBv
cmRlcgorZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0nY2VsdF9zeW1ib2xzJy8+LiBJbiBzb21l
IGNpcmN1bXN0YW5jZXMsIGl0IGlzCitwb3NzaWJsZSBmb3IgYSBkZWNvZGVkIHZhbHVlIHRvIGJl
IG91dCBvZiByYW5nZSBkdWUgdG8gYSB2ZXJ5IHNtYWxsIGFtb3VudCBvZiByZWR1bmRhbmN5Citp
biB0aGUgZW5jb2Rpbmcgb2YgbGFyZ2UgaW50ZWdlcnMgYnkgdGhlIHJhbmdlIGNvZGVyLgorSW4g
dGhhdCBjYXNlLCB0aGUgZGVjb2RlciBzaG91bGQgYXNzdW1lIHRoZXJlIGhhcyBiZWVuIGFuIGVy
cm9yIGluIHRoZSBjb2RpbmcsCitkZWNvZGluZywgb3IgdHJhbnNtaXNzaW9uIGFuZCBTSE9VTEQg
dGFrZSBtZWFzdXJlcyB0byBjb25jZWFsIHRoZSBlcnJvciBhbmQvb3IgcmVwb3J0Cit0byB0aGUg
YXBwbGljYXRpb24gdGhhdCBhIHByb2JsZW0gaGFzIG9jY3VycmVkLiBTdWNoIG91dCBvZiByYW5n
ZSBlcnJvcnMgY2Fubm90IG9jY3VyCitpbiB0aGUgU0lMSyBsYXllci4KKzwvdD4KKworPHNlY3Rp
b24gYW5jaG9yPSJ0cmFuc2llbnQtZGVjb2RpbmciIHRpdGxlPSJUcmFuc2llbnQgRGVjb2Rpbmci
PgorPHQ+CitUaGUgInRyYW5zaWVudCIgZmxhZyBpbmRpY2F0ZXMgd2hldGhlciB0aGUgZnJhbWUg
dXNlcyBhIHNpbmdsZSBsb25nIE1EQ1Qgb3Igc2V2ZXJhbCBzaG9ydCBNRENUcy4KK1doZW4gaXQg
aXMgc2V0LCB0aGVuIHRoZSBNRENUIGNvZWZmaWNpZW50cyByZXByZXNlbnQgbXVsdGlwbGUKK3No
b3J0IE1EQ1RzIGluIHRoZSBmcmFtZS4gV2hlbiBub3Qgc2V0LCB0aGUgY29lZmZpY2llbnRzIHJl
cHJlc2VudCBhIHNpbmdsZQorbG9uZyBNRENUIGZvciB0aGUgZnJhbWUuIFRoZSBmbGFnIGlzIGVu
Y29kZWQgaW4gdGhlIGJpdHN0cmVhbSB3aXRoIGEgcHJvYmFiaWxpdHkgb2YgMS84LgorSW4gYWRk
aXRpb24gdG8gdGhlIGdsb2JhbCB0cmFuc2llbnQgZmxhZyBpcyBhIHBlci1iYW5kCitiaW5hcnkg
ZmxhZyB0byBjaGFuZ2UgdGhlIHRpbWUtZnJlcXVlbmN5ICh0ZikgcmVzb2x1dGlvbiBpbmRlcGVu
ZGVudGx5IGluIGVhY2ggYmFuZC4gVGhlCitjaGFuZ2UgaW4gdGYgcmVzb2x1dGlvbiBpcyBkZWZp
bmVkIGluIHRmX3NlbGVjdF90YWJsZVtdW10gaW4gY2VsdC5jIGFuZCBkZXBlbmRzCitvbiB0aGUg
ZnJhbWUgc2l6ZSwgd2hldGhlciB0aGUgdHJhbnNpZW50IGZsYWcgaXMgc2V0LCBhbmQgdGhlIHZh
bHVlIG9mIHRmX3NlbGVjdC4KK1RoZSB0Zl9zZWxlY3QgZmxhZyB1c2VzIGEgMS8yIHByb2JhYmls
aXR5LCBidXQgaXMgb25seSBkZWNvZGVkCitpZiBpdCBjYW4gaGF2ZSBhbiBpbXBhY3Qgb24gdGhl
IHJlc3VsdCBrbm93aW5nIHRoZSB2YWx1ZSBvZiBhbGwgcGVyLWJhbmQKK3RmX2NoYW5nZSBmbGFn
cy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJlbmVyZ3ktZGVjb2Rpbmci
IHRpdGxlPSJFbmVyZ3kgRW52ZWxvcGUgRGVjb2RpbmciPgorCis8dD4KK0l0IGlzIGltcG9ydGFu
dCB0byBxdWFudGl6ZSB0aGUgZW5lcmd5IHdpdGggc3VmZmljaWVudCByZXNvbHV0aW9uIGJlY2F1
c2UKK2FueSBlbmVyZ3kgcXVhbnRpemF0aW9uIGVycm9yIGNhbm5vdCBiZSBjb21wZW5zYXRlZCBm
b3IgYXQgYSBsYXRlcgorc3RhZ2UuIFJlZ2FyZGxlc3Mgb2YgdGhlIHJlc29sdXRpb24gdXNlZCBm
b3IgZW5jb2RpbmcgdGhlIHNwZWN0cmFsIHNoYXBlIG9mIGEgYmFuZCwKK2l0IGlzIHBlcmNlcHR1
YWxseSBpbXBvcnRhbnQgdG8gcHJlc2VydmUgdGhlIGVuZXJneSBpbiBlYWNoIGJhbmQuIENFTFQg
dXNlcyBhCit0aHJlZS1zdGVwIGNvYXJzZS1maW5lLWZpbmUgc3RyYXRlZ3kgZm9yIGVuY29kaW5n
IHRoZSBlbmVyZ3kgaW4gdGhlIGJhc2UtMiBsb2cKK2RvbWFpbiwgYXMgaW1wbGVtZW50ZWQgaW4g
cXVhbnRfYmFuZHMuYzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJjb2Fyc2UtZW5lcmd5LWRlY29k
aW5nIiB0aXRsZT0iQ29hcnNlIGVuZXJneSBkZWNvZGluZyI+Cis8dD4KK0NvYXJzZSBxdWFudGl6
YXRpb24gb2YgdGhlIGVuZXJneSB1c2VzIGEgZml4ZWQgcmVzb2x1dGlvbiBvZiA2IGRCCisoaW50
ZWdlciBwYXJ0IG9mIGJhc2UtMiBsb2cpLiBUbyBtaW5pbWl6ZSB0aGUgYml0cmF0ZSwgcHJlZGlj
dGlvbiBpcyBhcHBsaWVkCitib3RoIGluIHRpbWUgKHVzaW5nIHRoZSBwcmV2aW91cyBmcmFtZSkg
YW5kIGluIGZyZXF1ZW5jeSAodXNpbmcgdGhlIHByZXZpb3VzCitiYW5kcykuIFRoZSBwYXJ0IG9m
IHRoZSBwcmVkaWN0aW9uIHRoYXQgaXMgYmFzZWQgb24gdGhlCitwcmV2aW91cyBmcmFtZSBjYW4g
YmUgZGlzYWJsZWQsIGNyZWF0aW5nIGFuICJpbnRyYSIgZnJhbWUgd2hlcmUgdGhlIGVuZXJneQor
aXMgY29kZWQgd2l0aG91dCByZWZlcmVuY2UgdG8gcHJpb3IgZnJhbWVzLiBUaGUgZGVjb2RlciBm
aXJzdCByZWFkcyB0aGUgaW50cmEgZmxhZwordG8gZGV0ZXJtaW5lIHdoYXQgcHJlZGljdGlvbiBp
cyB1c2VkLgorVGhlIDItRCB6LXRyYW5zZm9ybSA8eHJlZiB0YXJnZXQ9J3otdHJhbnNmb3JtJy8+
IG9mCit0aGUgcHJlZGljdGlvbiBmaWx0ZXIgaXM6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLTEgICAgICAgICAgLTEKKyAgICAgICAgICAgICAgKDEgLSBhbHBoYSp6X2wgICkqKDEg
LSB6X2IgICkKK0Eoel9sLCB6X2IpID0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xCisgICAgICAgICAgICAgICAgICAgICAx
IC0gYmV0YSp6X2IKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgord2hlcmUgYiBpcyB0aGUgYmFu
ZCBpbmRleCBhbmQgbCBpcyB0aGUgZnJhbWUgaW5kZXguIFRoZSBwcmVkaWN0aW9uIGNvZWZmaWNp
ZW50cworYXBwbGllZCBkZXBlbmQgb24gdGhlIGZyYW1lIHNpemUgaW4gdXNlIHdoZW4gbm90IHVz
aW5nIGludHJhIGVuZXJneSBhbmQgYXJlIGFscGhhPTAsIGJldGE9NDkxNS8zMjc2OAord2hlbiB1
c2luZyBpbnRyYSBlbmVyZ3kuCitUaGUgdGltZS1kb21haW4gcHJlZGljdGlvbiBpcyBiYXNlZCBv
biB0aGUgZmluYWwgZmluZSBxdWFudGl6YXRpb24gb2YgdGhlIHByZXZpb3VzCitmcmFtZSwgd2hp
bGUgdGhlIGZyZXF1ZW5jeSBkb21haW4gKHdpdGhpbiB0aGUgY3VycmVudCBmcmFtZSkgcHJlZGlj
dGlvbiBpcyBiYXNlZAorb24gY29hcnNlIHF1YW50aXphdGlvbiBvbmx5IChiZWNhdXNlIHRoZSBm
aW5lIHF1YW50aXphdGlvbiBoYXMgbm90IGJlZW4gY29tcHV0ZWQKK3lldCkuIFRoZSBwcmVkaWN0
aW9uIGlzIGNsYW1wZWQgaW50ZXJuYWxseSBzbyB0aGF0IGZpeGVkIHBvaW50IGltcGxlbWVudGF0
aW9ucyB3aXRoCitsaW1pdGVkIGR5bmFtaWMgcmFuZ2UgYWx3YXlzIHJlbWFpbiBpbiB0aGUgc2Ft
ZSBzdGF0ZSBhcyBmbG9hdGluZyBwb2ludCBpbXBsZW1lbnRhdGlvbnMuCitXZSBhcHByb3hpbWF0
ZSB0aGUgaWRlYWwKK3Byb2JhYmlsaXR5IGRpc3RyaWJ1dGlvbiBvZiB0aGUgcHJlZGljdGlvbiBl
cnJvciB1c2luZyBhIExhcGxhY2UgZGlzdHJpYnV0aW9uCit3aXRoIHNlcGFyYXRlIHBhcmFtZXRl
cnMgZm9yIGVhY2ggZnJhbWUgc2l6ZSBpbiBpbnRyYS0gYW5kIGludGVyLWZyYW1lIG1vZGVzLiBU
aGVzZQorcGFyYW1ldGVycyBhcmUgaGVsZCBpbiB0aGUgZV9wcm9iX21vZGVsIHRhYmxlIGluIHF1
YW50X2JhbmRzLmMuCitUaGUKK2NvYXJzZSBlbmVyZ3kgcXVhbnRpemF0aW9uIGlzIHBlcmZvcm1l
ZCBieSB1bnF1YW50X2NvYXJzZV9lbmVyZ3koKSBhbmQKK3VucXVhbnRfY29hcnNlX2VuZXJneV9p
bXBsKCkgKHF1YW50X2JhbmRzLmMpLiBUaGUgZW5jb2Rpbmcgb2YgdGhlIExhcGxhY2UtZGlzdHJp
YnV0ZWQgdmFsdWVzIGlzCitpbXBsZW1lbnRlZCBpbiBlY19sYXBsYWNlX2RlY29kZSgpIChsYXBs
YWNlLmMpLgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZmluZS1lbmVy
Z3ktZGVjb2RpbmciIHRpdGxlPSJGaW5lIGVuZXJneSBxdWFudGl6YXRpb24iPgorPHQ+CitUaGUg
bnVtYmVyIG9mIGJpdHMgYXNzaWduZWQgdG8gZmluZSBlbmVyZ3kgcXVhbnRpemF0aW9uIGluIGVh
Y2ggYmFuZCBpcyBkZXRlcm1pbmVkCitieSB0aGUgYml0IGFsbG9jYXRpb24gY29tcHV0YXRpb24g
ZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0iYWxsb2NhdGlvbiI+PC94cmVmPi4KK0xldCBCX2kg
YmUgdGhlIG51bWJlciBvZiBmaW5lIGVuZXJneSBiaXRzCitmb3IgYmFuZCBpOyB0aGUgcmVmaW5l
bWVudCBpcyBhbiBpbnRlZ2VyIGYgaW4gdGhlIHJhbmdlIFswLDIqKkJfaS0xXS4gVGhlIG1hcHBp
bmcgYmV0d2VlbiBmCithbmQgdGhlIGNvcnJlY3Rpb24gYXBwbGllZCB0byB0aGUgY29hcnNlIGVu
ZXJneSBpcyBlcXVhbCB0byAoZisxLzIpLzIqKkJfaSAtIDEvMi4gRmluZQorZW5lcmd5IHF1YW50
aXphdGlvbiBpcyBpbXBsZW1lbnRlZCBpbiBxdWFudF9maW5lX2VuZXJneSgpIChxdWFudF9iYW5k
cy5jKS4KKzwvdD4KKzx0PgorV2hlbiBzb21lIGJpdHMgYXJlIGxlZnQgInVudXNlZCIgYWZ0ZXIg
YWxsIG90aGVyIGZsYWdzIGhhdmUgYmVlbiBkZWNvZGVkLCB0aGVzZSBiaXRzCithcmUgYXNzaWdu
ZWQgdG8gYSAiZmluYWwiIHN0ZXAgb2YgZmluZSBhbGxvY2F0aW9uLiBJbiBlZmZlY3QsIHRoZXNl
IGJpdHMgYXJlIHVzZWQKK3RvIGFkZCBvbmUgZXh0cmEgZmluZSBlbmVyZ3kgYml0IHBlciBiYW5k
IHBlciBjaGFubmVsLiBUaGUgYWxsb2NhdGlvbiBwcm9jZXNzCitkZXRlcm1pbmVzIHR3byAicHJp
b3JpdGllcyIgZm9yIHRoZSBmaW5hbCBmaW5lIGJpdHMuCitBbnkgcmVtYWluaW5nIGJpdHMgYXJl
IGZpcnN0IGFzc2lnbmVkIG9ubHkgdG8gYmFuZHMgb2YgcHJpb3JpdHkgMCwgc3RhcnRpbmcKK2Zy
b20gYmFuZCAwIGFuZCBnb2luZyB1cC4gSWYgYWxsIGJhbmRzIG9mIHByaW9yaXR5IDAgaGF2ZSBy
ZWNlaXZlZCBvbmUgYml0IHBlcgorY2hhbm5lbCwgdGhlbiBiYW5kcyBvZiBwcmlvcml0eSAxIGFy
ZSBhc3NpZ25lZCBhbiBleHRyYSBiaXQgcGVyIGNoYW5uZWwsCitzdGFydGluZyBmcm9tIGJhbmQg
MC4gSWYgYW55IGJpdHMgYXJlIGxlZnQgYWZ0ZXIgdGhpcywgdGhleSBhcmUgbGVmdCB1bnVzZWQu
CitUaGlzIGlzIGltcGxlbWVudGVkIGluIHVucXVhbnRfZW5lcmd5X2ZpbmFsaXNlKCkgKHF1YW50
X2JhbmRzLmMpLgorPC90PgorCis8L3NlY3Rpb24+IDwhLS0gZmluZSBlbmVyZ3kgLS0+CisKKzwv
c2VjdGlvbj4gPCEtLSBFbmVyZ3kgZGVjb2RlIC0tPgorCis8c2VjdGlvbiBhbmNob3I9ImFsbG9j
YXRpb24iIHRpdGxlPSJCaXQgQWxsb2NhdGlvbiI+CisKKzx0PkJlY2F1c2UgdGhlIGJpdCBhbGxv
Y2F0aW9uIGRyaXZlcyB0aGUgZGVjb2Rpbmcgb2YgdGhlIHJhbmdlLWNvZGVyCitzdHJlYW0sIGl0
IE1VU1QgYmUgcmVjb3ZlcmVkIGV4YWN0bHkgc28gdGhhdCBpZGVudGljYWwgY29kaW5nIGRlY2lz
aW9ucyBhcmUKK21hZGUgaW4gdGhlIGVuY29kZXIgYW5kIGRlY29kZXIuIEFueSBkZXZpYXRpb24g
ZnJvbSB0aGUgcmVmZXJlbmNlJ3MgcmVzdWx0aW5nCitiaXQgYWxsb2NhdGlvbiB3aWxsIHJlc3Vs
dCBpbiBjb3JydXB0ZWQgb3V0cHV0LCB0aG91Z2ggaW1wbGVtZW50ZXJzIGFyZQorZnJlZSB0byBp
bXBsZW1lbnQgdGhlIHByb2NlZHVyZSBpbiBhbnkgd2F5IHdoaWNoIHByb2R1Y2VzIGlkZW50aWNh
bCByZXN1bHRzLjwvdD4KKworPHQ+VGhlIHBlci1iYW5kIGdhaW4tc2hhcGUgc3RydWN0dXJlIG9m
IHRoZSBDRUxUIGxheWVyIGVuc3VyZXMgdGhhdCB1c2luZworIHRoZSBzYW1lIG51bWJlciBvZiBi
aXRzIGZvciB0aGUgc3BlY3RyYWwgc2hhcGUgb2YgYSBiYW5kIGluIGV2ZXJ5IGZyYW1lIHdpbGwK
KyByZXN1bHQgaW4gYSByb3VnaGx5IGNvbnN0YW50IHNpZ25hbC10by1ub2lzZSByYXRpbyBpbiB0
aGF0IGJhbmQuCitUaGlzIHJlc3VsdHMgaW4gY29kaW5nIG5vaXNlIHRoYXQgaGFzIHRoZSBzYW1l
IHNwZWN0cmFsIGVudmVsb3BlIGFzIHRoZSBzaWduYWwuCitUaGUgbWFza2luZyBjdXJ2ZSBwcm9k
dWNlZCBieSBhIHN0YW5kYXJkIHBzeWNob2Fjb3VzdGljIG1vZGVsIGFsc28gY2xvc2VseQorIGZv
bGxvd3MgdGhlIHNwZWN0cmFsIGVudmVsb3BlIG9mIHRoZSBzaWduYWwuCitUaGlzIHN0cnVjdHVy
ZSBtZWFucyB0aGF0IHRoZSBpZGVhbCBhbGxvY2F0aW9uIGlzIG1vcmUgY29uc2lzdGVudCBmcm9t
IGZyYW1lIHRvCisgZnJhbWUgdGhhbiBpdCBpcyBmb3Igb3RoZXIgY29kZWNzIHdpdGhvdXQgYW4g
ZXF1aXZhbGVudCBzdHJ1Y3R1cmUsIGFuZCB0aGF0IGEKKyBmaXhlZCBhbGxvY2F0aW9uIHByb3Zp
ZGVzIGZhaXJseSBjb25zaXN0ZW50IHBlcmNlcHR1YWwKKyBwZXJmb3JtYW5jZSZuYnNwOzx4cmVm
IHRhcmdldD0nVmFsaW4yMDEwJy8+LjwvdD4KKworPHQ+TWFueSBjb2RlY3MgdHJhbnNtaXQgc2ln
bmlmaWNhbnQgYW1vdW50cyBvZiBzaWRlIGluZm9ybWF0aW9uIHRvIGNvbnRyb2wgdGhlCisgYml0
IGFsbG9jYXRpb24gd2l0aGluIGEgZnJhbWUuCitPZnRlbiB0aGlzIGNvbnRyb2wgaXMgb25seSBp
bmRpcmVjdCwgYW5kIG11c3QgYmUgZXhlcmNpc2VkIGNhcmVmdWxseSB0bworIGFjaGlldmUgdGhl
IGRlc2lyZWQgcmF0ZSBjb25zdHJhaW50cy4KK1RoZSBDRUxUIGxheWVyLCBob3dldmVyLCBjYW4g
YWRhcHQgb3ZlciBhIHZlcnkgd2lkZSByYW5nZSBvZiByYXRlcywgYW5kIHRodXMKKyBoYXMgYSBs
YXJnZSBudW1iZXIgb2YgY29kZWJvb2sgc2l6ZXMgdG8gY2hvb3NlIGZyb20gZm9yIGVhY2ggYmFu
ZC4KK0V4cGxpY2l0bHkgc2lnbmFsaW5nIHRoZSBzaXplIG9mIGVhY2ggb2YgdGhlc2UgY29kZWJv
b2tzIHdvdWxkIGltcG9zZQorIGNvbnNpZGVyYWJsZSBvdmVyaGVhZCwgZXZlbiB0aG91Z2ggdGhl
IGFsbG9jYXRpb24gaXMgcmVsYXRpdmVseSBzdGF0aWMgZnJvbQorIGZyYW1lIHRvIGZyYW1lLgor
VGhpcyBpcyBiZWNhdXNlIGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gY29tcHV0
ZSB0aGVzZSBjb2RlYm9vayBzaXplcworIG11c3QgYmUgZGVyaXZlZCBmcm9tIGEgc2luZ2xlIGZy
YW1lIGJ5IGl0c2VsZiwgaW4gb3JkZXIgdG8gcmV0YWluIHJvYnVzdG5lc3MKKyB0byBwYWNrZXQg
bG9zcywgc28gdGhlIHNpZ25hbGluZyBjYW5ub3QgdGFrZSBhZHZhbnRhZ2Ugb2Yga25vd2xlZGdl
IG9mIHRoZQorIGFsbG9jYXRpb24gaW4gbmVpZ2hib3JpbmcgZnJhbWVzLgorVGhpcyBwcm9ibGVt
IGlzIGV4YWNlcmJhdGVkIGluIGxvdy1sYXRlbmN5IChzbWFsbCBmcmFtZSBzaXplKSBhcHBsaWNh
dGlvbnMsCisgd2hpY2ggd291bGQgaW5jbHVkZSB0aGlzIG92ZXJoZWFkIGluIGV2ZXJ5IGZyYW1l
LjwvdD4KKworPHQ+Rm9yIHRoaXMgcmVhc29uLCBpbiB0aGUgTURDVCBtb2RlIE9wdXMgdXNlcyBh
IHByaW1hcmlseSBpbXBsaWNpdCBiaXQKK2FsbG9jYXRpb24uIFRoZSBhdmFpbGFibGUgYml0c3Ry
ZWFtIGNhcGFjaXR5IGlzIGtub3duIGluIGFkdmFuY2UgdG8gYm90aAordGhlIGVuY29kZXIgYW5k
IGRlY29kZXIgd2l0aG91dCBhZGRpdGlvbmFsIHNpZ25hbGluZywgdWx0aW1hdGVseSBmcm9tIHRo
ZQorcGFja2V0IHNpemVzIGV4cHJlc3NlZCBieSBhIGhpZ2hlci1sZXZlbCBwcm90b2NvbC4gVXNp
bmcgdGhpcyBpbmZvcm1hdGlvbiwKK3RoZSBjb2RlYyBpbnRlcnBvbGF0ZXMgYW4gYWxsb2NhdGlv
biBmcm9tIGEgaGFyZC1jb2RlZCB0YWJsZS48L3Q+CisKKzx0PldoaWxlIHRoZSBiYW5kLWVuZXJn
eSBzdHJ1Y3R1cmUgZWZmZWN0aXZlbHkgbW9kZWxzIGludHJhLWJhbmQgbWFza2luZywKK2l0IGln
bm9yZXMgdGhlIHdlYWtlciBpbnRlci1iYW5kIG1hc2tpbmcsIGJhbmQtdGVtcG9yYWwgbWFza2lu
ZywgYW5kCitvdGhlciBsZXNzIHNpZ25pZmljYW50IHBlcmNlcHR1YWwgZWZmZWN0cy4gV2hpbGUg
dGhlc2UgZWZmZWN0cyBjYW4KK29mdGVuIGJlIGlnbm9yZWQsIHRoZXkgY2FuIGJlY29tZSBzaWdu
aWZpY2FudCBmb3IgcGFydGljdWxhciBzYW1wbGVzLiBPbmUKK21lY2hhbmlzbSBhdmFpbGFibGUg
dG8gZW5jb2RlcnMgd291bGQgYmUgdG8gc2ltcGx5IGluY3JlYXNlIHRoZSBvdmVyYWxsCityYXRl
IGZvciB0aGVzZSBmcmFtZXMsIGJ1dCB0aGlzIGlzIG5vdCBwb3NzaWJsZSBpbiBhIGNvbnN0YW50
IHJhdGUgbW9kZQorYW5kIGNhbiBiZSBmYWlybHkgaW5lZmZpY2llbnQuIEFzIGEgcmVzdWx0IHRo
cmVlIGV4cGxpY2l0bHkgc2lnbmFsZWQKK21lY2hhbmlzbXMgYXJlIHByb3ZpZGVkIHRvIGFsdGVy
IHRoZSBpbXBsaWNpdCBhbGxvY2F0aW9uOjwvdD4KKworPHQ+Cis8bGlzdCBzdHlsZT0ic3ltYm9s
cyI+Cis8dD5CYW5kIGJvb3N0PC90PgorPHQ+QWxsb2NhdGlvbiB0cmltPC90PgorPHQ+QmFuZCBz
a2lwcGluZzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+VGhlIGZpcnN0IG9mIHRoZXNlIG1lY2hh
bmlzbXMsIGJhbmQgYm9vc3QsIGFsbG93cyBhbiBlbmNvZGVyIHRvIGJvb3N0Cit0aGUgYWxsb2Nh
dGlvbiBpbiBzcGVjaWZpYyBiYW5kcy4gVGhlIHNlY29uZCwgYWxsb2NhdGlvbiB0cmltLCB3b3Jr
cyBieQorYmlhc2luZyB0aGUgb3ZlcmFsbCBhbGxvY2F0aW9uIHRvd2FyZHMgaGlnaGVyIG9yIGxv
d2VyIGZyZXF1ZW5jeSBiYW5kcy4gVGhlIHRoaXJkLCBiYW5kCitza2lwcGluZywgc2VsZWN0cyB3
aGljaCBsb3ctcHJlY2lzaW9uIGhpZ2ggZnJlcXVlbmN5IGJhbmRzCit3aWxsIGJlIGFsbG9jYXRl
ZCBubyBzaGFwZSBiaXRzIGF0IGFsbC48L3Q+CisKKzx0PkluIHN0ZXJlbyBtb2RlIHRoZXJlIGFy
ZSB0d28gYWRkaXRpb25hbCBwYXJhbWV0ZXJzCitwb3RlbnRpYWxseSBjb2RlZCBhcyBwYXJ0IG9m
IHRoZSBhbGxvY2F0aW9uIHByb2NlZHVyZTogYSBwYXJhbWV0ZXIgdG8gYWxsb3cgdGhlCitzZWxl
Y3RpdmUgZWxpbWluYXRpb24gb2YgYWxsb2NhdGlvbiBmb3IgdGhlICdzaWRlJyAoaS5lLiwgaW50
ZW5zaXR5IHN0ZXJlbykgaW4gam9pbnRseSBjb2RlZCBiYW5kcywKK2FuZCBhIGZsYWcgdG8gZGVh
Y3RpdmF0ZSBqb2ludCBjb2RpbmcgKGkuZS4sIGR1YWwgc3RlcmVvKS4gVGhlc2UgdmFsdWVzIGFy
ZSBub3Qgc2lnbmFsZWQgaWYKK3RoZXkgd291bGQgYmUgbWVhbmluZ2xlc3MgaW4gdGhlIG92ZXJh
bGwgY29udGV4dCBvZiB0aGUgYWxsb2NhdGlvbi48L3Q+CisKKzx0PkJlY2F1c2UgZXZlcnkgc2ln
bmFsZWQgYWRqdXN0bWVudCBpbmNyZWFzZXMgb3ZlcmhlYWQgYW5kIGltcGxlbWVudGF0aW9uCitj
b21wbGV4aXR5LCBub25lIHdlcmUgaW5jbHVkZWQgc3BlY3VsYXRpdmVseTogdGhlIHJlZmVyZW5j
ZSBlbmNvZGVyIG1ha2VzIHVzZQorb2YgYWxsIG9mIHRoZXNlIG1lY2hhbmlzbXMuIFdoaWxlIHRo
ZSBkZWNpc2lvbiBsb2dpYyBpbiB0aGUgcmVmZXJlbmNlIHdhcworZm91bmQgdG8gYmUgZWZmZWN0
aXZlIGVub3VnaCB0byBqdXN0aWZ5IHRoZSBvdmVyaGVhZCBhbmQgY29tcGxleGl0eSwgZnVydGhl
cgorYW5hbHlzaXMgdGVjaG5pcXVlcyBtYXkgYmUgZGlzY292ZXJlZCB3aGljaCBpbmNyZWFzZSB0
aGUgZWZmZWN0aXZlbmVzcyBvZiB0aGVzZQorcGFyYW1ldGVycy4gQXMgd2l0aCBvdGhlciBzaWdu
YWxlZCBwYXJhbWV0ZXJzLCBhbiBlbmNvZGVyIGlzIGZyZWUgdG8gY2hvb3NlIHRoZQordmFsdWVz
IGluIGFueSBtYW5uZXIsIGJ1dCB1bmxlc3MgYSB0ZWNobmlxdWUgaXMga25vd24gdG8gZGVsaXZl
ciBzdXBlcmlvcgorcGVyY2VwdHVhbCByZXN1bHRzIHRoZSBtZXRob2RzIHVzZWQgYnkgdGhlIHJl
ZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBzaG91bGQgYmUKK3VzZWQuPC90PgorCis8dD5UaGUgYWxs
b2NhdGlvbiBwcm9jZXNzIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IGRldGVybWlu
aW5nIHRoZSBwZXItYmFuZAorbWF4aW11bSBhbGxvY2F0aW9uIHZlY3RvciwgZGVjb2RpbmcgdGhl
IGJvb3N0cywgZGVjb2RpbmcgdGhlIHRpbHQsIGRldGVybWluaW5nCit0aGUgcmVtYWluaW5nIGNh
cGFjaXR5IG9mIHRoZSBmcmFtZSwgc2VhcmNoaW5nIHRoZSBtb2RlIHRhYmxlIGZvciB0aGUKK2Vu
dHJ5IG5lYXJlc3QgYnV0IG5vdCBleGNlZWRpbmcgdGhlIGF2YWlsYWJsZSBzcGFjZSAoc3ViamVj
dCB0byB0aGUgdGlsdCwgYm9vc3RzLCBiYW5kCittYXhpbXVtcywgYW5kIGJhbmQgbWluaW11bXMp
LCBsaW5lYXIgaW50ZXJwb2xhdGlvbiwgcmVhbGxvY2F0aW9uIG9mCit1bnVzZWQgYml0cyB3aXRo
IGNvbmN1cnJlbnQgc2tpcCBkZWNvZGluZywgZGV0ZXJtaW5hdGlvbiBvZiB0aGUKK2ZpbmUtZW5l
cmd5IHZzLiBzaGFwZSBzcGxpdCwgYW5kIGZpbmFsIHJlYWxsb2NhdGlvbi4gVGhpcyBwcm9jZXNz
IHJlc3VsdHMKK2luIGEgcGVyLWJhbmQgc2hhcGUgYWxsb2NhdGlvbiAoaW4gMS84dGggYml0IHVu
aXRzKSwgYSBwZXItYmFuZCBmaW5lLWVuZXJneQorYWxsb2NhdGlvbiAoaW4gMSBiaXQgcGVyIGNo
YW5uZWwgdW5pdHMpLCBhIHNldCBvZiBiYW5kIHByaW9yaXRpZXMgZm9yCitjb250cm9sbGluZyB0
aGUgdXNlIG9mIHJlbWFpbmluZyBiaXRzIGF0IHRoZSBlbmQgb2YgdGhlIGZyYW1lLCBhbmQgYQor
cmVtYWluaW5nIGJhbGFuY2Ugb2YgdW5hbGxvY2F0ZWQgc3BhY2UsIHdoaWNoIGlzIHVzdWFsbHkg
emVybyBleGNlcHQKK2F0IHZlcnkgaGlnaCByYXRlcy48L3Q+CisKKzx0PgorVGhlICJzdGF0aWMi
IGJpdCBhbGxvY2F0aW9uIChpbiAxLzggYml0cykgZm9yIGEgcXVhbGl0eSBxLCBleGNsdWRpbmcg
dGhlIG1pbmltdW1zLCBtYXhpbXVtcywKK3RpbHQgYW5kIGJvb3N0cywgaXMgZXF1YWwgdG8gY2hh
bm5lbHMqTiphbGxvY1tiYW5kXVtxXSZsdDsmbHQ7TE0mZ3Q7Jmd0OzIsIHdoZXJlCithbGxvY1td
W10gaXMgZ2l2ZW4gaW4gPHhyZWYgdGFyZ2V0PSJzdGF0aWNfYWxsb2MiLz4gYW5kIExNPWxvZzIo
ZnJhbWVfc2l6ZS8xMjApLiBUaGUgYWxsb2NhdGlvbgoraXMgb2J0YWluZWQgYnkgbGluZWFybHkg
aW50ZXJwb2xhdGluZyBiZXR3ZWVuIHR3byB2YWx1ZXMgb2YgcSAoaW4gc3RlcHMgb2YgMS82NCkg
dG8gZmluZCB0aGUKK2hpZ2hlc3QgYWxsb2NhdGlvbiB0aGF0IGRvZXMgbm90IGV4Y2VlZCB0aGUg
bnVtYmVyIG9mIGJpdHMgcmVtYWluaW5nLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic3Rh
dGljX2FsbG9jIgorIHRpdGxlPSJDRUxUIFN0YXRpYyBBbGxvY2F0aW9uIFRhYmxlIj4KKyA8cHJl
YW1ibGU+Um93cyBpbmRpY2F0ZSB0aGUgTURDVCBiYW5kcywgY29sdW1ucyBhcmUgdGhlIGRpZmZl
cmVudCBxdWFsaXR5IChxKSBwYXJhbWV0ZXJzLiBUaGUgdW5pdHMgYXJlIDEvMzIgYml0IHBlciBN
RENUIGJpbi48L3ByZWFtYmxlPgorPHR0Y29sIGFsaWduPSJyaWdodCI+MDwvdHRjb2w+Cis8dHRj
b2wgYWxpZ249InJpZ2h0Ij4xPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjI8L3R0Y29s
PgorPHR0Y29sIGFsaWduPSJyaWdodCI+MzwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij40
PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjU8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJy
aWdodCI+NjwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij43PC90dGNvbD4KKzx0dGNvbCBh
bGlnbj0icmlnaHQiPjg8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+OTwvdHRjb2w+Cis8
dHRjb2wgYWxpZ249InJpZ2h0Ij4xMDwvdHRjb2w+Cis8Yz4wPC9jPjxjPjkwPC9jPjxjPjExMDwv
Yz48Yz4xMTg8L2M+PGM+MTI2PC9jPjxjPjEzNDwvYz48Yz4xNDQ8L2M+PGM+MTUyPC9jPjxjPjE2
MjwvYz48Yz4xNzI8L2M+PGM+MjAwPC9jPgorPGM+MDwvYz48Yz44MDwvYz48Yz4xMDA8L2M+PGM+
MTEwPC9jPjxjPjExOTwvYz48Yz4xMjc8L2M+PGM+MTM3PC9jPjxjPjE0NTwvYz48Yz4xNTU8L2M+
PGM+MTY1PC9jPjxjPjIwMDwvYz4KKzxjPjA8L2M+PGM+NzU8L2M+PGM+OTA8L2M+PGM+MTAzPC9j
PjxjPjExMjwvYz48Yz4xMjA8L2M+PGM+MTMwPC9jPjxjPjEzODwvYz48Yz4xNDg8L2M+PGM+MTU4
PC9jPjxjPjIwMDwvYz4KKzxjPjA8L2M+PGM+Njk8L2M+PGM+ODQ8L2M+PGM+OTM8L2M+PGM+MTA0
PC9jPjxjPjExNDwvYz48Yz4xMjQ8L2M+PGM+MTMyPC9jPjxjPjE0MjwvYz48Yz4xNTI8L2M+PGM+
MjAwPC9jPgorPGM+MDwvYz48Yz42MzwvYz48Yz43ODwvYz48Yz44NjwvYz48Yz45NTwvYz48Yz4x
MDM8L2M+PGM+MTEzPC9jPjxjPjEyMzwvYz48Yz4xMzM8L2M+PGM+MTQzPC9jPjxjPjIwMDwvYz4K
KzxjPjA8L2M+PGM+NTY8L2M+PGM+NzE8L2M+PGM+ODA8L2M+PGM+ODk8L2M+PGM+OTc8L2M+PGM+
MTA3PC9jPjxjPjExNzwvYz48Yz4xMjc8L2M+PGM+MTM3PC9jPjxjPjIwMDwvYz4KKzxjPjA8L2M+
PGM+NDk8L2M+PGM+NjU8L2M+PGM+NzU8L2M+PGM+ODM8L2M+PGM+OTE8L2M+PGM+MTAxPC9jPjxj
PjExMTwvYz48Yz4xMjE8L2M+PGM+MTMxPC9jPjxjPjIwMDwvYz4KKzxjPjA8L2M+PGM+NDA8L2M+
PGM+NTg8L2M+PGM+NzA8L2M+PGM+Nzg8L2M+PGM+ODU8L2M+PGM+OTU8L2M+PGM+MTA1PC9jPjxj
PjExNTwvYz48Yz4xMjU8L2M+PGM+MjAwPC9jPgorPGM+MDwvYz48Yz4zNDwvYz48Yz41MTwvYz48
Yz42NTwvYz48Yz43MjwvYz48Yz43ODwvYz48Yz44ODwvYz48Yz45ODwvYz48Yz4xMDg8L2M+PGM+
MTE4PC9jPjxjPjE5ODwvYz4KKzxjPjA8L2M+PGM+Mjk8L2M+PGM+NDU8L2M+PGM+NTk8L2M+PGM+
NjY8L2M+PGM+NzI8L2M+PGM+ODI8L2M+PGM+OTI8L2M+PGM+MTAyPC9jPjxjPjExMjwvYz48Yz4x
OTM8L2M+Cis8Yz4wPC9jPjxjPjIwPC9jPjxjPjM5PC9jPjxjPjUzPC9jPjxjPjYwPC9jPjxjPjY2
PC9jPjxjPjc2PC9jPjxjPjg2PC9jPjxjPjk2PC9jPjxjPjEwNjwvYz48Yz4xODg8L2M+Cis8Yz4w
PC9jPjxjPjE4PC9jPjxjPjMyPC9jPjxjPjQ3PC9jPjxjPjU0PC9jPjxjPjYwPC9jPjxjPjcwPC9j
PjxjPjgwPC9jPjxjPjkwPC9jPjxjPjEwMDwvYz48Yz4xODM8L2M+Cis8Yz4wPC9jPjxjPjEwPC9j
PjxjPjI2PC9jPjxjPjQwPC9jPjxjPjQ3PC9jPjxjPjU0PC9jPjxjPjY0PC9jPjxjPjc0PC9jPjxj
Pjg0PC9jPjxjPjk0PC9jPjxjPjE3ODwvYz4KKzxjPjA8L2M+PGM+MDwvYz48Yz4yMDwvYz48Yz4z
MTwvYz48Yz4zOTwvYz48Yz40NzwvYz48Yz41NzwvYz48Yz42NzwvYz48Yz43NzwvYz48Yz44Nzwv
Yz48Yz4xNzM8L2M+Cis8Yz4wPC9jPjxjPjA8L2M+PGM+MTI8L2M+PGM+MjM8L2M+PGM+MzI8L2M+
PGM+NDE8L2M+PGM+NTE8L2M+PGM+NjE8L2M+PGM+NzE8L2M+PGM+ODE8L2M+PGM+MTY4PC9jPgor
PGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+MTU8L2M+PGM+MjU8L2M+PGM+MzU8L2M+PGM+NDU8
L2M+PGM+NTU8L2M+PGM+NjU8L2M+PGM+NzU8L2M+PGM+MTYzPC9jPgorPGM+MDwvYz48Yz4wPC9j
PjxjPjA8L2M+PGM+NDwvYz48Yz4xNzwvYz48Yz4yOTwvYz48Yz4zOTwvYz48Yz40OTwvYz48Yz41
OTwvYz48Yz42OTwvYz48Yz4xNTg8L2M+Cis8Yz4wPC9jPjxjPjA8L2M+PGM+MDwvYz48Yz4wPC9j
PjxjPjEyPC9jPjxjPjIzPC9jPjxjPjMzPC9jPjxjPjQzPC9jPjxjPjUzPC9jPjxjPjYzPC9jPjxj
PjE1MzwvYz4KKzxjPjA8L2M+PGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+MTwvYz48Yz4xNjwv
Yz48Yz4yNjwvYz48Yz4zNjwvYz48Yz40NjwvYz48Yz41NjwvYz48Yz4xNDg8L2M+Cis8Yz4wPC9j
PjxjPjA8L2M+PGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+MTA8L2M+PGM+MTU8L2M+PGM+MjA8
L2M+PGM+MzA8L2M+PGM+NDU8L2M+PGM+MTI5PC9jPgorPGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+
PGM+MDwvYz48Yz4wPC9jPjxjPjE8L2M+PGM+MTwvYz48Yz4xPC9jPjxjPjE8L2M+PGM+MjA8L2M+
PGM+MTA0PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PlRoZSBtYXhpbXVtIGFsbG9jYXRpb24gdmVj
dG9yIGlzIGFuIGFwcHJveGltYXRpb24gb2YgdGhlIG1heGltdW0gc3BhY2UKK3RoYXQgY2FuIGJl
IHVzZWQgYnkgZWFjaCBiYW5kIGZvciBhIGdpdmVuIG1vZGUuIFRoZSB2YWx1ZSBpcworYXBwcm94
aW1hdGUgYmVjYXVzZSB0aGUgc2hhcGUgZW5jb2RpbmcgaXMgdmFyaWFibGUgcmF0ZSAoZHVlCit0
byBlbnRyb3B5IGNvZGluZyBvZiBzcGxpdHRpbmcgcGFyYW1ldGVycykuIFNldHRpbmcgdGhlIG1h
eGltdW0gdG9vIGxvdyByZWR1Y2VzIHRoZQorbWF4aW11bSBhY2hpZXZhYmxlIHF1YWxpdHkgaW4g
YSBiYW5kIHdoaWxlIHNldHRpbmcgaXQgdG9vIGhpZ2gKK21heSByZXN1bHQgaW4gd2FzdGU6IGJp
dHN0cmVhbSBjYXBhY2l0eSBhdmFpbGFibGUgYXQgdGhlIGVuZAorb2YgdGhlIGZyYW1lIHdoaWNo
IGNhbiBub3QgYmUgcHV0IHRvIGFueSB1c2UuIFRoZSBtYXhpbXVtcworc3BlY2lmaWVkIGJ5IHRo
ZSBjb2RlYyByZWZsZWN0IHRoZSBhdmVyYWdlIG1heGltdW0uIEluIHRoZSByZWZlcmVuY2UKK2lt
cGxlbWVudGF0aW9uLCB0aGUgbWF4aW11bXMgaW4gYml0cy9zYW1wbGUgYXJlIHByZWNvbXB1dGVk
IGluIGEgc3RhdGljIHRhYmxlCisoc2VlIGNhY2hlX2NhcHM1MFtdIGluIHN0YXRpY19tb2Rlc19m
bG9hdC5oKSBmb3IgZWFjaCBiYW5kLAorZm9yIGVhY2ggdmFsdWUgb2YgTE0sIGFuZCBmb3IgYm90
aCBtb25vIGFuZCBzdGVyZW8uCisKK0ltcGxlbWVudGF0aW9ucyBhcmUgZXhwZWN0ZWQKK3RvIHNp
bXBseSB1c2UgdGhlIHNhbWUgdGFibGUgZGF0YSwgYnV0IHRoZSBwcm9jZWR1cmUgZm9yIGdlbmVy
YXRpbmcKK3RoaXMgdGFibGUgaXMgaW5jbHVkZWQgaW4gcmF0ZS5jIGFzIHBhcnQgb2YgY29tcHV0
ZV9wdWxzZV9jYWNoZSgpLjwvdD4KKworPHQ+VG8gY29udmVydCB0aGUgdmFsdWVzIGluIGNhY2hl
LmNhcHMgaW50byB0aGUgYWN0dWFsIG1heGltdW1zOiBmaXJzdAorc2V0IG5iQmFuZHMgdG8gdGhl
IG1heGltdW0gbnVtYmVyIG9mIGJhbmRzIGZvciB0aGlzIG1vZGUsIGFuZCBzdGVyZW8gdG8KK3pl
cm8gaWYgc3RlcmVvIGlzIG5vdCBpbiB1c2UgYW5kIG9uZSBvdGhlcndpc2UuIEZvciBlYWNoIGJh
bmQgc2V0IE4KK3RvIHRoZSBudW1iZXIgb2YgTURDVCBiaW5zIGNvdmVyZWQgYnkgdGhlIGJhbmQg
KGZvciBvbmUgY2hhbm5lbCksIHNldCBMTQordG8gdGhlIHNoaWZ0IHZhbHVlIGZvciB0aGUgZnJh
bWUgc2l6ZSwKK3RoZW4gc2V0IGkgdG8gbmJCYW5kcyooMipMTStzdGVyZW8pLiBUaGVuIHNldCB0
aGUgbWF4aW11bSBmb3IgdGhlIGJhbmQgdG8KK3RoZSBpLXRoIGluZGV4IG9mIGNhY2hlLmNhcHMg
KyA2NCBhbmQgbXVsdGlwbHkgYnkgdGhlIG51bWJlciBvZiBjaGFubmVscworaW4gdGhlIGN1cnJl
bnQgZnJhbWUgKG9uZSBvciB0d28pIGFuZCBieSBOLCB0aGVuIGRpdmlkZSB0aGUgcmVzdWx0IGJ5
IDQKK3VzaW5nIGludGVnZXIgZGl2aXNpb24uIFRoZSByZXN1bHRpbmcgdmVjdG9yIHdpbGwgYmUg
Y2FsbGVkCitjYXBbXS4gVGhlIGVsZW1lbnRzIGZpdCBpbiBzaWduZWQgMTYtYml0IGludGVnZXJz
IGJ1dCBkbyBub3QgZml0IGluIDggYml0cy4KK1RoaXMgcHJvY2VkdXJlIGlzIGltcGxlbWVudGVk
IGluIHRoZSByZWZlcmVuY2UgaW4gdGhlIGZ1bmN0aW9uIGluaXRfY2FwcygpIGluIGNlbHQuYy4K
KzwvdD4KKworPHQ+VGhlIGJhbmQgYm9vc3RzIGFyZSByZXByZXNlbnRlZCBieSBhIHNlcmllcyBv
ZiBiaW5hcnkgc3ltYm9scyB3aGljaAorYXJlIGVudHJvcHkgY29kZWQgd2l0aCB2ZXJ5IGxvdyBw
cm9iYWJpbGl0eS4gRWFjaCBiYW5kIGNhbiBwb3RlbnRpYWxseSBiZSBib29zdGVkCittdWx0aXBs
ZSB0aW1lcywgc3ViamVjdCB0byB0aGUgZnJhbWUgYWN0dWFsbHkgaGF2aW5nIGVub3VnaCByb29t
IHRvIG9iZXkKK3RoZSBib29zdCBhbmQgaGF2aW5nIGVub3VnaCByb29tIHRvIGNvZGUgdGhlIGJv
b3N0IHN5bWJvbC4gVGhlIGRlZmF1bHQKK2NvZGluZyBjb3N0IGZvciBhIGJvb3N0IHN0YXJ0cyBv
dXQgYXQgc2l4IGJpdHMgKHByb2JhYmlsaXR5IHA9MS82NCksIGJ1dCBzdWJzZXF1ZW50IGJvb3N0
cworaW4gYSBiYW5kIGNvc3Qgb25seSBhIHNpbmdsZSBiaXQgYW5kIGV2ZXJ5IHRpbWUgYSBiYW5k
IGlzIGJvb3N0ZWQgdGhlCitpbml0aWFsIGNvc3QgaXMgcmVkdWNlZCAoZG93biB0byBhIG1pbmlt
dW0gb2YgdHdvIGJpdHMsIG9yIHA9MS80KS4gU2luY2UgdGhlIGluaXRpYWwKK2Nvc3Qgb2YgY29k
aW5nIGEgYm9vc3QgaXMgNiBiaXRzLCB0aGUgY29kaW5nIGNvc3Qgb2YgdGhlIGJvb3N0IHN5bWJv
bHMgd2hlbgorY29tcGxldGVseSB1bnVzZWQgaXMgMC40OCBiaXRzL2ZyYW1lIGZvciBhIDIxIGJh
bmQgbW9kZSAoMjEqLWxvZzIoMS0xLzIqKjYpKS48L3Q+CisKKzx0PlRvIGRlY29kZSB0aGUgYmFu
ZCBib29zdHM6IEZpcnN0IHNldCAnZHluYWxsb2NfbG9ncCcgdG8gNiwgdGhlIGluaXRpYWwKK2Ft
b3VudCBvZiBzdG9yYWdlIHJlcXVpcmVkIHRvIHNpZ25hbCBhIGJvb3N0IGluIGJpdHMsICd0b3Rh
bF9iaXRzJyB0byB0aGUKK3NpemUgb2YgdGhlIGZyYW1lIGluIDh0aCBiaXRzLCAndG90YWxfYm9v
c3QnIHRvIHplcm8sIGFuZCAndGVsbCcgdG8gdGhlIHRvdGFsIG51bWJlcgorb2YgOHRoIGJpdHMg
ZGVjb2RlZAorc28gZmFyLiBGb3IgZWFjaCBiYW5kIGZyb20gdGhlIGNvZGluZyBzdGFydCAoMCBu
b3JtYWxseSwgYnV0IDE3IGluIEh5YnJpZCBtb2RlKQordG8gdGhlIGNvZGluZyBlbmQgKHdoaWNo
IGNoYW5nZXMgZGVwZW5kaW5nIG9uIHRoZSBzaWduYWxlZCBiYW5kd2lkdGgpLCB0aGUgYm9vc3Qg
cXVhbnRhCitpbiB1bml0cyBvZiAxLzggYml0IGlzIGNhbGN1bGF0ZWQgYXMgcXVhbnRhID0gbWlu
KDgqTiwgbWF4KDQ4LCBOKSkuCitUaGlzIHJlcHJlc2VudHMgYSBib29zdCBzdGVwIHNpemUgb2Yg
c2l4IGJpdHMsIHN1YmplY3QgdG8gYSBsb3dlciBsaW1pdCBvZgorMS84dGgmbmJzcDtiaXQvc2Ft
cGxlIGFuZCBhbiB1cHBlciBsaW1pdCBvZiAxJm5ic3A7Yml0L3NhbXBsZS4KK1NldCAnYm9vc3Qn
IHRvIHplcm8gYW5kICdkeW5hbGxvY19sb29wX2xvZ3AnCit0byBkeW5hbGxvY19sb2dwLiBXaGls
ZSBkeW5hbGxvY19sb29wX2xvZyAodGhlIGN1cnJlbnQgd29yc3QgY2FzZSBzeW1ib2wgY29zdCkg
aW4KKzh0aCBiaXRzIHBsdXMgdGVsbCBpcyBsZXNzIHRoYW4gdG90YWxfYml0cyBwbHVzIHRvdGFs
X2Jvb3N0IGFuZCBib29zdCBpcyBsZXNzIHRoYW4gY2FwW10gZm9yIHRoaXMKK2JhbmQ6IERlY29k
ZSBhIGJpdCBmcm9tIHRoZSBiaXRzdHJlYW0gd2l0aCBhIHdpdGggZHluYWxsb2NfbG9vcF9sb2dw
IGFzIHRoZSBjb3N0CitvZiBhIG9uZSwgdXBkYXRlIHRlbGwgdG8gcmVmbGVjdCB0aGUgY3VycmVu
dCB1c2VkIGNhcGFjaXR5LCBpZiB0aGUgZGVjb2RlZCB2YWx1ZQoraXMgemVybyBicmVhayB0aGUg
IGxvb3Agb3RoZXJ3aXNlIGFkZCBxdWFudGEgdG8gYm9vc3QgYW5kIHRvdGFsX2Jvb3N0LCBzdWJ0
cmFjdCBxdWFudGEgZnJvbQordG90YWxfYml0cywgYW5kIHNldCBkeW5hbGxvY19sb29wX2xvZyB0
byAxLiBXaGVuIHRoZSB3aGlsZSBsb29wIGZpbmlzaGVzCitib29zdCBjb250YWlucyB0aGUgYm9v
c3QgZm9yIHRoaXMgYmFuZC4gSWYgYm9vc3QgaXMgbm9uLXplcm8gYW5kIGR5bmFsbG9jX2xvZ3AK
K2lzIGdyZWF0ZXIgdGhhbiAyLCBkZWNyZWFzZSBkeW5hbGxvY19sb2dwLiAgT25jZSB0aGlzIHBy
b2Nlc3MgaGFzIGJlZW4KK2V4ZWN1dGVkIG9uIGFsbCBiYW5kcywgdGhlIGJhbmQgYm9vc3RzIGhh
dmUgYmVlbiBkZWNvZGVkLiBUaGlzIHByb2NlZHVyZQoraXMgaW1wbGVtZW50ZWQgYXJvdW5kIGxp
bmUgMjQ3NCBvZiBjZWx0LmMuPC90PgorCis8dD5BdCB2ZXJ5IGxvdyByYXRlcyBpdCBpcyBwb3Nz
aWJsZSB0aGF0IHRoZXJlIHdvbid0IGJlIGVub3VnaCBhdmFpbGFibGUKK3NwYWNlIHRvIGV4ZWN1
dGUgdGhlIGlubmVyIGxvb3AgZXZlbiBvbmNlLiBJbiB0aGVzZSBjYXNlcyBiYW5kIGJvb3N0Citp
cyBub3QgcG9zc2libGUgYnV0IGl0cyBvdmVyaGVhZCBpcyBjb21wbGV0ZWx5IGVsaW1pbmF0ZWQu
IEJlY2F1c2Ugb2YgdGhlCitoaWdoIGNvc3Qgb2YgYmFuZCBib29zdCB3aGVuIGFjdGl2YXRlZCwg
YSByZWFzb25hYmxlIGVuY29kZXIgc2hvdWxkIG5vdCBiZQordXNpbmcgaXQgYXQgdmVyeSBsb3cg
cmF0ZXMuIFRoZSByZWZlcmVuY2UgaW1wbGVtZW50cyBpdHMgZHluYWxsb2MgZGVjaXNpb24KK2xv
Z2ljIGFyb3VuZCBsaW5lIDEzMDQgb2YgY2VsdC5jLjwvdD4KKworPHQ+VGhlIGFsbG9jYXRpb24g
dHJpbSBpcyBhIGludGVnZXIgdmFsdWUgZnJvbSAwLTEwLiBUaGUgZGVmYXVsdCB2YWx1ZSBvZgor
NSBpbmRpY2F0ZXMgbm8gdHJpbS4gVGhlIHRyaW0gcGFyYW1ldGVyIGlzIGVudHJvcHkgY29kZWQg
aW4gb3JkZXIgdG8KK2xvd2VyIHRoZSBjb2RpbmcgY29zdCBvZiBsZXNzIGV4dHJlbWUgYWRqdXN0
bWVudHMuIFZhbHVlcyBsb3dlciB0aGFuCis1IGJpYXMgdGhlIGFsbG9jYXRpb24gdG93YXJkcyBs
b3dlciBmcmVxdWVuY2llcyBhbmQgdmFsdWVzIGFib3ZlIDUKK2JpYXMgaXQgdG93YXJkcyBoaWdo
ZXIgZnJlcXVlbmNpZXMuIExpa2Ugb3RoZXIgc2lnbmFsZWQgcGFyYW1ldGVycywgc2lnbmFsaW5n
CitvZiB0aGUgdHJpbSBpcyBnYXRlZCBzbyB0aGF0IGl0IGlzIG5vdCBpbmNsdWRlZCBpZiB0aGVy
ZSBpcyBpbnN1ZmZpY2llbnQgc3BhY2UKK2F2YWlsYWJsZSBpbiB0aGUgYml0c3RyZWFtLiBUbyBk
ZWNvZGUgdGhlIHRyaW0sIGZpcnN0IHNldAordGhlIHRyaW0gdmFsdWUgdG8gNSwgdGhlbiBpZiBh
bmQgb25seSBpZiB0aGUgY291bnQgb2YgZGVjb2RlZCA4dGggYml0cyBzbyBmYXIgKGVjX3RlbGxf
ZnJhYykKK3BsdXMgNDggKDYgYml0cykgaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHRoZSB0b3Rh
bCBmcmFtZSBzaXplIGluIDh0aAorYml0cyBtaW51cyB0b3RhbF9ib29zdCAoYSBwcm9kdWN0IG9m
IHRoZSBhYm92ZSBiYW5kIGJvb3N0IHByb2NlZHVyZSksCitkZWNvZGUgdGhlIHRyaW0gdmFsdWUg
dXNpbmcgdGhlIFBERiBpbiA8eHJlZiB0YXJnZXQ9ImNlbHRfdHJpbV9wZGYiLz4uPC90PgorCis8
dGV4dHRhYmxlIGFuY2hvcj0iY2VsdF90cmltX3BkZiIgdGl0bGU9IlBERiBmb3IgdGhlIFRyaW0i
PgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz57MSwgMSwgMiwgNSwgMTAsIDIyLCA0NiwgMjIsIDEw
LCA1LCAyLCAyfS8xMjg8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+Rm9yIDEwIG1zIGFuZCAyMCBt
cyBmcmFtZXMgdXNpbmcgc2hvcnQgYmxvY2tzIGFuZCB0aGF0IGhhdmUgYXQgbGVhc3QgTE0rMiBi
aXRzIGxlZnQgcHJpb3IgdG8KK3RoZSBhbGxvY2F0aW9uIHByb2Nlc3MsIHRoZW4gb25lIGFudGkt
Y29sbGFwc2UgYml0IGlzIHJlc2VydmVkIGluIHRoZSBhbGxvY2F0aW9uIHByb2Nlc3Mgc28gaXQg
Y2FuCitiZSBkZWNvZGVkIGxhdGVyLiBGb2xsb3dpbmcgdGhlIHRoZSBhbnRpLWNvbGxhcHNlIHJl
c2VydmF0aW9uLCBvbmUgYml0IGlzIHJlc2VydmVkIGZvciBza2lwIGlmIGF2YWlsYWJsZS48L3Q+
CisKKzx0PkZvciBzdGVyZW8gZnJhbWVzLCBiaXRzIGFyZSByZXNlcnZlZCBmb3IgaW50ZW5zaXR5
IHN0ZXJlbyBhbmQgZm9yIGR1YWwgc3RlcmVvLiBJbnRlbnNpdHkgc3RlcmVvCityZXF1aXJlcyBp
bG9nMihlbmQtc3RhcnQpIGJpdHMuIFRob3NlIGJpdHMgYXJlIHJlc2VydmVkIGlmIHRoZXJlIGlz
IGVub3VnaCBiaXRzIGxlZnQuIEZvbGxvd2luZyB0aGlzLCBvbmUKK2JpdCBpcyByZXNlcnZlZCBm
b3IgZHVhbCBzdGVyZW8gaWYgYXZhaWxhYmxlLjwvdD4KKworCis8dD5UaGUgYWxsb2NhdGlvbiBj
b21wdXRhdGlvbiBiZWdpbnMgYnkgc2V0dGluZyB1cCBzb21lIGluaXRpYWwgY29uZGl0aW9ucy4K
Kyd0b3RhbCcgaXMgc2V0IHRvIHRoZSByZW1haW5pbmcgYXZhaWxhYmxlIDh0aCBiaXRzLCBjb21w
dXRlZCBieSB0YWtpbmcgdGhlCitzaXplIG9mIHRoZSBjb2RlZCBmcmFtZSB0aW1lcyA4IGFuZCBz
dWJ0cmFjdGluZyBlY190ZWxsX2ZyYWMoKS4gRnJvbSB0aGlzIHZhbHVlLCBvbmUgKDh0aCBiaXQp
CitpcyBzdWJ0cmFjdGVkIHRvIGVuc3VyZSB0aGF0IHRoZSByZXN1bHRpbmcgYWxsb2NhdGlvbiB3
aWxsIGJlIGNvbnNlcnZhdGl2ZS4gJ2FudGlfY29sbGFwc2VfcnN2JworaXMgc2V0IHRvIDggKDh0
aCBiaXRzKSBpZiBhbmQgb25seSBpZiB0aGUgZnJhbWUgaXMgYSB0cmFuc2llbnQsIExNIGlzIGdy
ZWF0ZXIgdGhhbiAxLCBhbmQgdG90YWwgaXMKK2dyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAoTE0r
MikgKiA4LiBUb3RhbCBpcyB0aGVuIGRlY3JlbWVudGVkIGJ5IGFudGlfY29sbGFwc2VfcnN2IGFu
ZCBjbGFtcGVkCit0byBiZSBlcXVhbCB0byBvciBncmVhdGVyIHRoYW4gemVyby4gJ3NraXBfcnN2
JyBpcyBzZXQgdG8gOCAoOHRoIGJpdHMpIGlmIHRvdGFsIGlzIGdyZWF0ZXIgdGhhbgorOCwgb3Ro
ZXJ3aXNlIGl0IGlzIHplcm8uIFRvdGFsIGlzIHRoZW4gZGVjcmVtZW50ZWQgYnkgc2tpcF9yc3Yu
IFRoaXMgcmVzZXJ2ZXMgc3BhY2UgZm9yIHRoZQorZmluYWwgc2tpcHBpbmcgZmxhZy48L3Q+CisK
Kzx0PklmIHRoZSBjdXJyZW50IGZyYW1lIGlzIHN0ZXJlbywgaW50ZW5zaXR5X3JzdiBpcyBzZXQg
dG8gdGhlIGNvbnNlcnZhdGl2ZSBsb2cyIGluIDh0aCBiaXRzCitvZiB0aGUgbnVtYmVyIG9mIGNv
ZGVkIGJhbmRzIGZvciB0aGlzIGZyYW1lIChnaXZlbiBieSB0aGUgdGFibGUgTE9HMl9GUkFDX1RB
QkxFIGluIHJhdGUuYykuIElmCitpbnRlbnNpdHlfcnN2IGlzIGdyZWF0ZXIgdGhhbiB0b3RhbCB0
aGVuIGludGVuc2l0eV9yc3YgaXMgc2V0IHRvIHplcm8uIE90aGVyd2lzZSB0b3RhbCBpcworZGVj
cmVtZW50ZWQgYnkgaW50ZW5zaXR5X3JzdiwgYW5kIGlmIHRvdGFsIGlzIHN0aWxsIGdyZWF0ZXIg
dGhhbiA4LCBkdWFsX3N0ZXJlb19yc3YgaXMKK3NldCB0byA4IGFuZCB0b3RhbCBpcyBkZWNyZW1l
bnRlZCBieSBkdWFsX3N0ZXJlb19yc3YuPC90PgorCis8dD5UaGUgYWxsb2NhdGlvbiBwcm9jZXNz
IHRoZW4gY29tcHV0ZXMgYSB2ZWN0b3IgcmVwcmVzZW50aW5nIHRoZSBoYXJkIG1pbmltdW0gYW1v
dW50cyBhbGxvY2F0aW9uCithbnkgYmFuZCB3aWxsIHJlY2VpdmUgZm9yIHNoYXBlLiBUaGlzIG1p
bmltdW0gaXMgaGlnaGVyIHRoYW4gdGhlIHRlY2huaWNhbCBsaW1pdCBvZiB0aGUgUFZRCitwcm9j
ZXNzLCBidXQgdmVyeSBsb3cgcmF0ZSBhbGxvY2F0aW9ucyBwcm9kdWNlIGFuIGV4Y2Vzc2l2ZWx5
IHNwYXJzZSBzcGVjdHJ1bSBhbmQgdGhlc2UgYmFuZHMKK2FyZSBiZXR0ZXIgc2VydmVkIGJ5IGhh
dmluZyBubyBhbGxvY2F0aW9uIGF0IGFsbC4gRm9yIGVhY2ggY29kZWQgYmFuZCwgc2V0IHRocmVz
aFtiYW5kXSB0bwordHdlbnR5LWZvdXIgdGltZXMgdGhlIG51bWJlciBvZiBNRENUIGJpbnMgaW4g
dGhlIGJhbmQgYW5kIGRpdmlkZSBieSAxNi4gSWYgOCB0aW1lcyB0aGUgbnVtYmVyCitvZiBjaGFu
bmVscyBpcyBncmVhdGVyLCB1c2UgdGhhdCBpbnN0ZWFkLiBUaGlzIHNldHMgdGhlIG1pbmltdW0g
YWxsb2NhdGlvbiB0byBvbmUgYml0IHBlciBjaGFubmVsCitvciA0OCAxMjh0aCBiaXRzIHBlciBN
RENUIGJpbiwgd2hpY2hldmVyIGlzIGdyZWF0ZXIuIFRoZSBiYW5kLXNpemUgZGVwZW5kZW50IHBh
cnQgb2YgdGhpcwordmFsdWUgaXMgbm90IHNjYWxlZCBieSB0aGUgY2hhbm5lbCBjb3VudCwgYmVj
YXVzZSBhdCB0aGUgdmVyeSBsb3cgcmF0ZXMgd2hlcmUgdGhpcyBsaW1pdCBpcworYXBwbGljYWJs
ZSB0aGVyZSB3aWxsIHVzdWFsbHkgYmUgbm8gYml0cyBhbGxvY2F0ZWQgdG8gdGhlIHNpZGUuPC90
PgorCis8dD5UaGUgcHJldmlvdXNseSBkZWNvZGVkIGFsbG9jYXRpb24gdHJpbSBpcyB1c2VkIHRv
IGRlcml2ZSBhIHZlY3RvciBvZiBwZXItYmFuZCBhZGp1c3RtZW50cywKKyd0cmltX29mZnNldHNb
XScuIEZvciBlYWNoIGNvZGVkIGJhbmQgdGFrZSB0aGUgYWxsb2NfdHJpbSBhbmQgc3VidHJhY3Qg
NSBhbmQgTE0uIFRoZW4gbXVsdGlwbHkKK3RoZSByZXN1bHQgYnkgdGhlIG51bWJlciBvZiBjaGFu
bmVscywgdGhlIG51bWJlciBvZiBNRENUIGJpbnMgaW4gdGhlIHNob3J0ZXN0IGZyYW1lIHNpemUg
Zm9yIHRoaXMgbW9kZSwKK3RoZSBudW1iZXIgb2YgcmVtYWluaW5nIGJhbmRzLCAyKipMTSwgYW5k
IDguIFRoZW4gZGl2aWRlIHRoaXMgdmFsdWUgYnkgNjQuIEZpbmFsbHksIGlmIHRoZQorbnVtYmVy
IG9mIE1EQ1QgYmlucyBpbiB0aGUgYmFuZCBwZXIgY2hhbm5lbCBpcyBvbmx5IG9uZSwgOCB0aW1l
cyB0aGUgbnVtYmVyIG9mIGNoYW5uZWxzIGlzIHN1YnRyYWN0ZWQKK2luIG9yZGVyIHRvIGRpbWlu
aXNoIHRoZSBhbGxvY2F0aW9uIGJ5IG9uZSBiaXQsIGJlY2F1c2Ugd2lkdGggMSBiYW5kcyByZWNl
aXZlIGdyZWF0ZXIgYmVuZWZpdAorZnJvbSB0aGUgY29hcnNlIGVuZXJneSBjb2RpbmcuPC90Pgor
CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJQVlEtZGVjb2RlciIgdGl0bGU9IlNo
YXBlIERlY29kaW5nIj4KKzx0PgorSW4gZWFjaCBiYW5kLCB0aGUgbm9ybWFsaXplZCAic2hhcGUi
IGlzIGVuY29kZWQKK3VzaW5nIGEgdmVjdG9yIHF1YW50aXphdGlvbiBzY2hlbWUgY2FsbGVkIGEg
InB5cmFtaWQgdmVjdG9yIHF1YW50aXplciIuCis8L3Q+CisKKzx0PkluCit0aGUgc2ltcGxlc3Qg
Y2FzZSwgdGhlIG51bWJlciBvZiBiaXRzIGFsbG9jYXRlZCBpbgorPHhyZWYgdGFyZ2V0PSJhbGxv
Y2F0aW9uIj48L3hyZWY+IGlzIGNvbnZlcnRlZCB0byBhIG51bWJlciBvZiBwdWxzZXMgYXMgZGVz
Y3JpYmVkCitieSA8eHJlZiB0YXJnZXQ9ImJpdHMtcHVsc2VzIj48L3hyZWY+LiBLbm93aW5nIHRo
ZSBudW1iZXIgb2YgcHVsc2VzIGFuZCB0aGUKK251bWJlciBvZiBzYW1wbGVzIGluIHRoZSBiYW5k
LCB0aGUgZGVjb2RlciBjYWxjdWxhdGVzIHRoZSBzaXplIG9mIHRoZSBjb2RlYm9vaworYXMgZGV0
YWlsZWQgaW4gPHhyZWYgdGFyZ2V0PSJjd3JzLWRlY29kZXIiPjwveHJlZj4uIFRoZSBzaXplIGlz
IHVzZWQgdG8gZGVjb2RlCithbiB1bnNpZ25lZCBpbnRlZ2VyICh1bmlmb3JtIHByb2JhYmlsaXR5
IG1vZGVsKSwgd2hpY2ggaXMgdGhlIGNvZGV3b3JkIGluZGV4LgorVGhpcyBpbmRleCBpcyBjb252
ZXJ0ZWQgaW50byB0aGUgY29ycmVzcG9uZGluZyB2ZWN0b3IgYXMgZXhwbGFpbmVkIGluCis8eHJl
ZiB0YXJnZXQ9ImN3cnMtZGVjb2RlciI+PC94cmVmPi4gVGhpcyB2ZWN0b3IgaXMgdGhlbiBzY2Fs
ZWQgdG8gdW5pdCBub3JtLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImJpdHMtcHVsc2VzIiB0
aXRsZT0iQml0cyB0byBQdWxzZXMiPgorPHQ+CitBbHRob3VnaCB0aGUgYWxsb2NhdGlvbiBpcyBw
ZXJmb3JtZWQgaW4gMS84dGggYml0IHVuaXRzLCB0aGUgcXVhbnRpemF0aW9uIHJlcXVpcmVzCith
biBpbnRlZ2VyIG51bWJlciBvZiBwdWxzZXMgSy4gVG8gZG8gdGhpcywgdGhlIGVuY29kZXIgc2Vh
cmNoZXMgZm9yIHRoZSB2YWx1ZQorb2YgSyB0aGF0IHByb2R1Y2VzIHRoZSBudW1iZXIgb2YgYml0
cyBuZWFyZXN0IHRvIHRoZSBhbGxvY2F0ZWQgdmFsdWUKKyhyb3VuZGluZyBkb3duIGlmIGV4YWN0
bHkgaGFsZndheSBiZXR3ZWVuIHR3byB2YWx1ZXMpLCBub3QgdG8gZXhjZWVkCit0aGUgdG90YWwg
bnVtYmVyIG9mIGJpdHMgYXZhaWxhYmxlLiBGb3IgZWZmaWNpZW5jeSByZWFzb25zLCB0aGUgc2Vh
cmNoIGlzIHBlcmZvcm1lZCBhZ2FpbnN0IGEKK3ByZWNvbXB1dGVkIGFsbG9jYXRpb24gdGFibGUg
d2hpY2ggb25seSBwZXJtaXRzIHNvbWUgSyB2YWx1ZXMgZm9yIGVhY2ggTi4gVGhlIG51bWJlciBv
ZgorY29kZWJvb2sgZW50cmllcyBjYW4gYmUgY29tcHV0ZWQgYXMgZXhwbGFpbmVkIGluIDx4cmVm
IHRhcmdldD0iY3dycy1kZWNvZGVyIj48L3hyZWY+LiBUaGUgZGlmZmVyZW5jZQorYmV0d2VlbiB0
aGUgbnVtYmVyIG9mIGJpdHMgYWxsb2NhdGVkIGFuZCB0aGUgbnVtYmVyIG9mIGJpdHMgdXNlZCBp
cyBhY2N1bXVsYXRlZCB0byBhCisiYmFsYW5jZSIgKGluaXRpYWxpemVkIHRvIHplcm8pIHRoYXQg
aGVscHMgYWRqdXN0IHRoZQorYWxsb2NhdGlvbiBmb3IgdGhlIG5leHQgYmFuZHMuIE9uZSB0aGly
ZCBvZiB0aGUgYmFsYW5jZSBpcyBhcHBsaWVkIHRvIHRoZQorYml0IGFsbG9jYXRpb24gb2YgZWFj
aCBiYW5kIHRvIGhlbHAgYWNoaWV2ZSB0aGUgdGFyZ2V0IGFsbG9jYXRpb24uIFRoZSBvbmx5Citl
eGNlcHRpb25zIGFyZSB0aGUgYmFuZCBiZWZvcmUgdGhlIGxhc3QgYW5kIHRoZSBsYXN0IGJhbmQs
IGZvciB3aGljaCBoYWxmIHRoZSBiYWxhbmNlCithbmQgdGhlIHdob2xlIGJhbGFuY2UgYXJlIGFw
cGxpZWQsIHJlc3BlY3RpdmVseS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9y
PSJjd3JzLWRlY29kZXIiIHRpdGxlPSJQVlEgRGVjb2RpbmciPgorCis8dD4KK0RlY29kaW5nIG9m
IFBWUSB2ZWN0b3JzIGlzIGltcGxlbWVudGVkIGluIGRlY29kZV9wdWxzZXMoKSAoY3dycy5jKS4K
K1RoZSB1bmlxdWUgY29kZXdvcmQgaW5kZXggaXMgZGVjb2RlZCBhcyBhIHVuaWZvcm1seS1kaXN0
cmlidXRlZCBpbnRlZ2VyIHZhbHVlIGJldHdlZW4gMCBhbmQKK1YoTixLKS0xLCB3aGVyZSBWKE4s
SykgaXMgdGhlIG51bWJlciBvZiBwb3NzaWJsZSBjb21iaW5hdGlvbnMgb2YgSyBwdWxzZXMgaW4K
K04gc2FtcGxlcy4gVGhlIGluZGV4IGlzIHRoZW4gY29udmVydGVkIHRvIGEgdmVjdG9yIGluIHRo
ZSBzYW1lIHdheSBzcGVjaWZpZWQgaW4KKzx4cmVmIHRhcmdldD0iUFZRIj48L3hyZWY+LiBUaGUg
aW5kZXhpbmcgaXMgYmFzZWQgb24gdGhlIGNhbGN1bGF0aW9uIG9mIFYoTixLKQorKGRlbm90ZWQg
TihMLEspIGluIDx4cmVmIHRhcmdldD0iUFZRIj48L3hyZWY+KS4KKzwvdD4KKworPHQ+CisgVGhl
IG51bWJlciBvZiBjb21iaW5hdGlvbnMgY2FuIGJlIGNvbXB1dGVkIHJlY3Vyc2l2ZWx5IGFzCitW
KE4sSykgPSBWKE4tMSxLKSArIFYoTixLLTEpICsgVihOLTEsSy0xKSwgd2l0aCBWKE4sMCkgPSAx
IGFuZCBWKDAsSykgPSAwLCBLICE9IDAuCitUaGVyZSBhcmUgbWFueSBkaWZmZXJlbnQgd2F5cyB0
byBjb21wdXRlIFYoTixLKSwgaW5jbHVkaW5nIHByZWNvbXB1dGVkIHRhYmxlcyBhbmQgZGlyZWN0
Cit1c2Ugb2YgdGhlIHJlY3Vyc2l2ZSBmb3JtdWxhdGlvbi4gVGhlIHJlZmVyZW5jZSBpbXBsZW1l
bnRhdGlvbiBhcHBsaWVzIHRoZSByZWN1cnNpdmUKK2Zvcm11bGF0aW9uIG9uZSBsaW5lIChvciBj
b2x1bW4pIGF0IGEgdGltZSB0byBzYXZlIG9uIG1lbW9yeSB1c2UsCithbG9uZyB3aXRoIGFuIGFs
dGVybmF0ZSwKK3VuaXZhcmlhdGUgcmVjdXJyZW5jZSB0byBpbml0aWFsaXplIGFuIGFyYml0cmFy
eSBsaW5lLCBhbmQgZGlyZWN0Citwb2x5bm9taWFsIHNvbHV0aW9ucyBmb3Igc21hbGwgTi4gQWxs
IG9mIHRoZXNlIG1ldGhvZHMgYXJlCitlcXVpdmFsZW50LCBhbmQgaGF2ZSBkaWZmZXJlbnQgdHJh
ZGUtb2ZmcyBpbiBzcGVlZCwgbWVtb3J5IHVzYWdlLCBhbmQKK2NvZGUgc2l6ZS4gSW1wbGVtZW50
YXRpb25zIE1BWSB1c2UgYW55IG1ldGhvZHMgdGhleSBsaWtlLCBhcyBsb25nIGFzCit0aGV5IGFy
ZSBlcXVpdmFsZW50IHRvIHRoZSBtYXRoZW1hdGljYWwgZGVmaW5pdGlvbi4KKzwvdD4KKworPHQ+
CitUaGUgZGVjb2RlZCB2ZWN0b3IgWCBpcyByZWNvdmVyZWQgYXMgZm9sbG93cy4KK0xldCBpIGJl
IHRoZSBpbmRleCBkZWNvZGVkIHdpdGggdGhlIHByb2NlZHVyZSBpbiA8eHJlZiB0YXJnZXQ9ImVj
X2RlY191aW50Ii8+Cisgd2l0aCBmdCZuYnNwOz0mbmJzcDtWKE4sSyksIHNvIHRoYXQgMCZuYnNw
OyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsmbmJzcDtWKE4sSykuCitMZXQgayZuYnNwOz0mbmJzcDtL
LgorVGhlbiBmb3IgaiZuYnNwOz0mbmJzcDswIHRvIChOJm5ic3A7LSZuYnNwOzEpLCBpbmNsdXNp
dmUsIGRvOgorPGxpc3Qgc3R5bGU9Im51bWJlcnMiPgorPHQ+TGV0IHAmbmJzcDs9Jm5ic3A7KFYo
Ti1qLTEsaykmbmJzcDsrJm5ic3A7VihOLWosaykpLzIuPC90PgorPHQ+CitJZiBpJm5ic3A7Jmx0
OyZuYnNwO3AsIHRoZW4gbGV0IHNnbiZuYnNwOz0mbmJzcDsxLCBlbHNlIGxldCBzZ24mbmJzcDs9
Jm5ic3A7LTEKKyBhbmQgc2V0IGkmbmJzcDs9Jm5ic3A7aSZuYnNwOy0mbmJzcDtwLgorPC90Pgor
PHQ+TGV0IGswJm5ic3A7PSZuYnNwO2sgYW5kIHNldCBwJm5ic3A7PSZuYnNwO3AmbmJzcDstJm5i
c3A7VihOLWotMSxrKS48L3Q+Cis8dD4KK1doaWxlIHAmbmJzcDsmZ3Q7Jm5ic3A7aSwgc2V0IGsm
bmJzcDs9Jm5ic3A7ayZuYnNwOy0mbmJzcDsxIGFuZAorIHAmbmJzcDs9Jm5ic3A7cCZuYnNwOy0m
bmJzcDtWKE4tai0xLGspLgorPC90PgorPHQ+CitTZXQgWFtqXSZuYnNwOz0mbmJzcDtzZ24qKGsw
Jm5ic3A7LSZuYnNwO2spIGFuZCBpJm5ic3A7PSZuYnNwO2kmbmJzcDstJm5ic3A7cC4KKzwvdD4K
KzwvbGlzdD4KKzwvdD4KKworPHQ+CitUaGUgZGVjb2RlZCB2ZWN0b3IgWCBpcyB0aGVuIG5vcm1h
bGl6ZWQgc3VjaCB0aGF0IGl0cworTDItbm9ybSBlcXVhbHMgb25lLgorPC90PgorPC9zZWN0aW9u
PgorCis8c2VjdGlvbiBhbmNob3I9InNwcmVhZGluZyIgdGl0bGU9IlNwcmVhZGluZyI+Cis8dD4K
K1RoZSBub3JtYWxpemVkIHZlY3RvciBkZWNvZGVkIGluIDx4cmVmIHRhcmdldD0iY3dycy1kZWNv
ZGVyIi8+IGlzIHRoZW4gcm90YXRlZAorZm9yIHRoZSBwdXJwb3NlIG9mIGF2b2lkaW5nIHRvbmFs
IGFydGlmYWN0cy4gVGhlIHJvdGF0aW9uIGdhaW4gaXMgZXF1YWwgdG8KKzxmaWd1cmUgYWxpZ249
ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2dfciA9IE4gLyAo
TiArIGZfcipLKQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKK3doZXJlIE4gaXMgdGhlIG51
bWJlciBvZiBkaW1lbnNpb25zLCBLIGlzIHRoZSBudW1iZXIgb2YgcHVsc2VzLCBhbmQgZl9yIGRl
cGVuZHMgb24KK3RoZSB2YWx1ZSBvZiB0aGUgInNwcmVhZCIgcGFyYW1ldGVyIGluIHRoZSBiaXQt
c3RyZWFtLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic3ByZWFkIHZhbHVlcyIgdGl0bGU9
IlNwcmVhZGluZyBWYWx1ZXMiPgorPHR0Y29sPlNwcmVhZCB2YWx1ZTwvdHRjb2w+Cis8dHRjb2w+
Zl9yPC90dGNvbD4KKyA8Yz4wPC9jPiA8Yz5pbmZpbml0ZSAobm8gcm90YXRpb24pPC9jPgorIDxj
PjE8L2M+IDxjPjE1PC9jPgorIDxjPjI8L2M+IDxjPjEwPC9jPgorIDxjPjM8L2M+IDxjPjU8L2M+
Cis8L3RleHR0YWJsZT4KKworPHQ+CitUaGUgcm90YXRpb24gYW5nbGUgaXMgdGhlbiBjYWxjdWxh
dGVkIGFzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgIDIKKyAgICAgICAgcGkgKiAgZ19yCit0aGV0YSA9
IC0tLS0tLS0tLS0KKyAgICAgICAgICAgIDQKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorQSAy
LUQgcm90YXRpb24gUihpLGopIGJldHdlZW4gcG9pbnRzIHhfaSBhbmQgeF9qIGlzIGRlZmluZWQg
YXM6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFb
Q0RBVEFbCit4X2knID0gIGNvcyh0aGV0YSkqeF9pICsgc2luKHRoZXRhKSp4X2oKK3hfaicgPSAt
c2luKHRoZXRhKSp4X2kgKyBjb3ModGhldGEpKnhfagorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+
CisKK0FuIE4tRCByb3RhdGlvbiBpcyB0aGVuIGFjaGlldmVkIGJ5IGFwcGx5aW5nIGEgc2VyaWVz
IG9mIDItRCByb3RhdGlvbnMgYmFjayBhbmQgZm9ydGgsIGluIHRoZQorZm9sbG93aW5nIG9yZGVy
OiBSKHhfMSwgeF8yKSwgUih4XzIsIHhfMyksIC4uLiwgUih4X04tMiwgWF9OLTEpLCBSKHhfTi0x
LCBYX04pLAorUih4X04tMiwgWF9OLTEpLCAuLi4sIFIoeF8xLCB4XzIpLgorPC90PgorCis8dD4K
K0lmIHRoZSBkZWNvZGVkIHZlY3RvciByZXByZXNlbnRzIG1vcmUKK3RoYW4gb25lIHRpbWUgYmxv
Y2ssIHRoZW4gdGhpcyBzcHJlYWRpbmcgcHJvY2VzcyBpcyBhcHBsaWVkIHNlcGFyYXRlbHkgb24g
ZWFjaCB0aW1lIGJsb2NrLgorQWxzbywgaWYgZWFjaCBibG9jayByZXByZXNlbnRzIDggc2FtcGxl
cyBvciBtb3JlLCB0aGVuIGFub3RoZXIgTi1EIHJvdGF0aW9uLCBieQorKHBpLzItdGhldGEpLCBp
cyBhcHBsaWVkIDxzcGFueCBzdHlsZT0iZW1waCI+YmVmb3JlPC9zcGFueD4gdGhlIHJvdGF0aW9u
IGRlc2NyaWJlZCBhYm92ZS4gVGhpcworZXh0cmEgcm90YXRpb24gaXMgYXBwbGllZCBpbiBhbiBp
bnRlcmxlYXZlZCBtYW5uZXIgd2l0aCBhIHN0cmlkZSBlcXVhbCB0byByb3VuZChzcXJ0KE4vbmJf
YmxvY2tzKSksCitpLmUuLCBpdCBpcyBhcHBsaWVkIGluZGVwZW5kZW50bHkgZm9yIGVhY2ggc2V0
IG9mIHNhbXBsZSBTX2sgPSB7c3RyaWRlKm4gKyBrfSwgbj0wLi5OL3N0cmlkZS0xLgorPC90Pgor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNwbGl0IiB0aXRsZT0iU3BsaXQgZGVjb2Rp
bmciPgorPHQ+CitUbyBhdm9pZCB0aGUgbmVlZCBmb3IgbXVsdGktcHJlY2lzaW9uIGNhbGN1bGF0
aW9ucyB3aGVuIGRlY29kaW5nIFBWUSBjb2RldmVjdG9ycywKK3RoZSBtYXhpbXVtIHNpemUgYWxs
b3dlZCBmb3IgY29kZWJvb2tzIGlzIDMyIGJpdHMuIFdoZW4gbGFyZ2VyIGNvZGVib29rcyBhcmUK
K25lZWRlZCwgdGhlIHZlY3RvciBpcyBpbnN0ZWFkIHNwbGl0IGluIHR3byBzdWItdmVjdG9ycyBv
ZiBzaXplIE4vMi4KK0EgcXVhbnRpemVkIGdhaW4gcGFyYW1ldGVyIHdpdGggcHJlY2lzaW9uCitk
ZXJpdmVkIGZyb20gdGhlIGN1cnJlbnQgYWxsb2NhdGlvbiBpcyBlbnRyb3B5IGNvZGVkIHRvIHJl
cHJlc2VudCB0aGUgcmVsYXRpdmUKK2dhaW5zIG9mIGVhY2ggc2lkZSBvZiB0aGUgc3BsaXQsIGFu
ZCB0aGUgZW50aXJlIGRlY29kaW5nIHByb2Nlc3MgaXMgcmVjdXJzaXZlbHkKK2FwcGxpZWQuIE11
bHRpcGxlIGxldmVscyBvZiBzcGxpdHRpbmcgbWF5IGJlIGFwcGxpZWQgdXAgdG8gYSBsaW1pdCBv
ZiBMTSsxIHNwbGl0cy4KK1RoZSBzYW1lIHJlY3Vyc2l2ZSBtZWNoYW5pc20gaXMgYXBwbGllZCBm
b3IgdGhlIGpvaW50IGNvZGluZworb2Ygc3RlcmVvIGF1ZGlvLgorPC90PgorCis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0idGYtY2hhbmdlIiB0aXRsZT0iVGltZS1GcmVxdWVuY3kgY2hh
bmdlIj4KKzx0PgorVGhlIHRpbWUtZnJlcXVlbmN5IChURikgcGFyYW1ldGVycyBhcmUgdXNlZCB0
byBjb250cm9sIHRoZSB0aW1lLWZyZXF1ZW5jeSByZXNvbHV0aW9uIHRyYWRlb2ZmCitpbiBlYWNo
IGNvZGVkIGJhbmQuIEZvciBlYWNoIGJhbmQsIHRoZXJlIGFyZSB0d28gcG9zc2libGUgVEYgY2hv
aWNlcy4gRm9yIHRoZSBmaXJzdAorYmFuZCBjb2RlZCwgdGhlIFBERiBpcyB7MywgMX0vNCBmb3Ig
ZnJhbWVzIG1hcmtlZCBhcyB0cmFuc2llbnQgYW5kIHsxNSwgMX0vMTYgZm9yCit0aGUgb3RoZXIg
ZnJhbWVzLiBGb3Igc3Vic2VxdWVudCBiYW5kcywgdGhlIFRGIGNob2ljZSBpcyBjb2RlZCByZWxh
dGl2ZSB0byB0aGUKK3ByZXZpb3VzIFRGIGNob2ljZSB3aXRoIHByb2JhYmlsaXR5IHsxNSwgMX0v
MTUgZm9yIHRyYW5zaWVudCBmcmFtZXMgYW5kIHszMSwgMX0vMzIKK290aGVyd2lzZS4gVGhlIG1h
cHBpbmcgYmV0d2VlbiB0aGUgZGVjb2RlZCBURiBjaG9pY2VzIGFuZCB0aGUgYWRqdXN0bWVudCBp
biBURgorcmVzb2x1dGlvbiBpcyBzaG93biBpbiB0aGUgdGFibGVzIGJlbG93LgorPC90PgorCis8
dGV4dHRhYmxlIGFuY2hvcj0ndGZfMDAnCisgdGl0bGU9IlRGIEFkanVzdG1lbnRzIGZvciBOb24t
dHJhbnNpZW50IEZyYW1lcyBhbmQgdGZfc2VsZWN0PTAiPgorPHR0Y29sIGFsaWduPSdjZW50ZXIn
PkZyYW1lIHNpemUgKG1zKTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MDwvdHRjb2w+
Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MTwvdHRjb2w+Cis8Yz4yLjU8L2M+ICAgICAgPGM+MDwv
Yz4gPGM+LTE8L2M+Cis8Yz41PC9jPiAgICAgIDxjPjA8L2M+IDxjPi0xPC9jPgorPGM+MTA8L2M+
ICAgICAgPGM+MDwvYz4gPGM+LTI8L2M+Cis8Yz4yMDwvYz4gICAgICA8Yz4wPC9jPiA8Yz4tMjwv
Yz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ndGZfMDEnCisgdGl0bGU9IlRG
IEFkanVzdG1lbnRzIGZvciBOb24tdHJhbnNpZW50IEZyYW1lcyBhbmQgdGZfc2VsZWN0PTEiPgor
PHR0Y29sIGFsaWduPSdjZW50ZXInPkZyYW1lIHNpemUgKG1zKTwvdHRjb2w+Cis8dHRjb2wgYWxp
Z249J2NlbnRlcic+MDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MTwvdHRjb2w+Cis8
Yz4yLjU8L2M+ICAgICAgPGM+MDwvYz4gPGM+LTE8L2M+Cis8Yz41PC9jPiAgICAgIDxjPjA8L2M+
IDxjPi0yPC9jPgorPGM+MTA8L2M+ICAgICAgPGM+MDwvYz4gPGM+LTM8L2M+Cis8Yz4yMDwvYz4g
ICAgICA8Yz4wPC9jPiA8Yz4tMzwvYz4KKzwvdGV4dHRhYmxlPgorCisKKzx0ZXh0dGFibGUgYW5j
aG9yPSd0Zl8xMCcKKyB0aXRsZT0iVEYgQWRqdXN0bWVudHMgZm9yIFRyYW5zaWVudCBGcmFtZXMg
YW5kIHRmX3NlbGVjdD0wIj4KKzx0dGNvbCBhbGlnbj0nY2VudGVyJz5GcmFtZSBzaXplIChtcyk8
L3R0Y29sPgorPHR0Y29sIGFsaWduPSdjZW50ZXInPjA8L3R0Y29sPgorPHR0Y29sIGFsaWduPSdj
ZW50ZXInPjE8L3R0Y29sPgorPGM+Mi41PC9jPiAgICAgIDxjPjA8L2M+IDxjPi0xPC9jPgorPGM+
NTwvYz4gICAgICA8Yz4xPC9jPiA8Yz4wPC9jPgorPGM+MTA8L2M+ICAgICAgPGM+MjwvYz4gPGM+
MDwvYz4KKzxjPjIwPC9jPiAgICAgIDxjPjM8L2M+IDxjPjA8L2M+Cis8L3RleHR0YWJsZT4KKwor
PHRleHR0YWJsZSBhbmNob3I9J3RmXzExJworIHRpdGxlPSJURiBBZGp1c3RtZW50cyBmb3IgVHJh
bnNpZW50IEZyYW1lcyBhbmQgdGZfc2VsZWN0PTEiPgorPHR0Y29sIGFsaWduPSdjZW50ZXInPkZy
YW1lIHNpemUgKG1zKTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MDwvdHRjb2w+Cis8
dHRjb2wgYWxpZ249J2NlbnRlcic+MTwvdHRjb2w+Cis8Yz4yLjU8L2M+ICAgICAgPGM+MDwvYz4g
PGM+LTE8L2M+Cis8Yz41PC9jPiAgICAgIDxjPjE8L2M+IDxjPi0xPC9jPgorPGM+MTA8L2M+ICAg
ICAgPGM+MTwvYz4gPGM+LTE8L2M+Cis8Yz4yMDwvYz4gICAgICA8Yz4xPC9jPiA8Yz4tMTwvYz4K
KzwvdGV4dHRhYmxlPgorCis8dD4KK0EgbmVnYXRpdmUgVEYgYWRqdXN0bWVudCBtZWFucyB0aGF0
IHRoZSB0ZW1wb3JhbCByZXNvbHV0aW9uIGlzIGluY3JlYXNlZCwKK3doaWxlIGEgcG9zaXRpdmUg
VEYgYWRqdXN0bWVudCBtZWFucyB0aGF0IHRoZSBmcmVxdWVuY3kgcmVzb2x1dGlvbiBpcyBpbmNy
ZWFzZWQuCitDaGFuZ2VzIGluIFRGIHJlc29sdXRpb24gYXJlIGltcGxlbWVudGVkIHVzaW5nIHRo
ZSBIYWRhbWFyZCB0cmFuc2Zvcm0gPHhyZWYgdGFyZ2V0PSJIYWRhbWFyZCIvPi4gVG8gaW5jcmVh
c2UKK3RoZSB0aW1lIHJlc29sdXRpb24gYnkgTiwgTiAibGV2ZWxzIiBvZiB0aGUgSGFkYW1hcmQg
dHJhbnNmb3JtIGFyZSBhcHBsaWVkIHRvIHRoZQorZGVjb2RlZCB2ZWN0b3IgZm9yIGVhY2ggaW50
ZXJsZWF2ZWQgTURDVCB2ZWN0b3IuIFRvIGluY3JlYXNlIHRoZSBmcmVxdWVuY3kgcmVzb2x1dGlv
bgorKGFzc3VtZXMgYSB0cmFuc2llbnQgZnJhbWUpLCB0aGVuIE4gbGV2ZWxzIG9mIHRoZSBIYWRh
bWFyZCB0cmFuc2Zvcm0gYXJlIGFwcGxpZWQKKzxzcGFueCBzdHlsZT0iZW1waCI+YWNyb3NzPC9z
cGFueD4gdGhlIGludGVybGVhdmVkIE1EQ1QgdmVjdG9yLiBJbiB0aGUgY2FzZSBvZiBpbmNyZWFz
ZWQKK3RpbWUgcmVzb2x1dGlvbiB0aGUgZGVjb2RlciB1c2VzIHRoZSAic2VxdWVuY3kgb3JkZXIi
IGJlY2F1c2UgdGhlIGlucHV0IHZlY3RvcgoraXMgc29ydGVkIGluIHRpbWUuCis8L3Q+Cis8L3Nl
Y3Rpb24+CisKKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImFudGktY29sbGFwc2Ui
IHRpdGxlPSJBbnRpLUNvbGxhcHNlIFByb2Nlc3NpbmciPgorPHQ+CitUaGUgYW50aS1jb2xsYXBz
ZSBmZWF0dXJlIGlzIGRlc2lnbmVkIHRvIGF2b2lkIHRoZSBzaXR1YXRpb24gd2hlcmUgdGhlIHVz
ZSBvZiBtdWx0aXBsZQorc2hvcnQgTURDVHMgY2F1c2VzIHRoZSBlbmVyZ3kgaW4gb25lIG9yIG1v
cmUgb2YgdGhlIE1EQ1RzIHRvIGJlIHplcm8gZm9yCitzb21lIGJhbmRzLCBjYXVzaW5nIHVucGxl
YXNhbnQgYXJ0aWZhY3RzLgorV2hlbiB0aGUgZnJhbWUgaGFzIHRoZSB0cmFuc2llbnQgYml0IHNl
dCwgYW4gYW50aS1jb2xsYXBzZSBiaXQgaXMgZGVjb2RlZC4KK1doZW4gYW50aS1jb2xsYXBzZSBp
cyBzZXQsIHRoZSBlbmVyZ3kgaW4gZWFjaCBzbWFsbCBNRENUIGlzIHByZXZlbnRlZAorZnJvbSBj
b2xsYXBzaW5nIHRvIHplcm8uIEZvciBlYWNoIGJhbmQgb2YgZWFjaCBNRENUIHdoZXJlIGEgY29s
bGFwc2UgaXMKK2RldGVjdGVkLCBhIHBzZXVkby1yYW5kb20gc2lnbmFsIGlzIGluc2VydGVkIHdp
dGggYW4gZW5lcmd5IGNvcnJlc3BvbmRpbmcKK3RvIHRoZSBtaW5pbXVtIGVuZXJneSBvdmVyIHRo
ZSB0d28gcHJldmlvdXMgZnJhbWVzLiBBIHJlbm9ybWFsaXphdGlvbiBzdGVwIGlzCit0aGVuIHJl
cXVpcmVkIHRvIGVuc3VyZSB0aGF0IHRoZSBhbnRpLWNvbGxhcHNlIHN0ZXAgZGlkIG5vdCBhbHRl
ciB0aGUKK2VuZXJneSBwcmVzZXJ2YXRpb24gcHJvcGVydHkuCis8L3Q+Cis8L3NlY3Rpb24+CisK
KzxzZWN0aW9uIGFuY2hvcj0iZGVub3JtYWxpemF0aW9uIiB0aXRsZT0iRGVub3JtYWxpemF0aW9u
Ij4KKzx0PgorSnVzdCBhcyBlYWNoIGJhbmQgd2FzIG5vcm1hbGl6ZWQgaW4gdGhlIGVuY29kZXIs
IHRoZSBsYXN0IHN0ZXAgb2YgdGhlIGRlY29kZXIgYmVmb3JlCit0aGUgaW52ZXJzZSBNRENUIGlz
IHRvIGRlbm9ybWFsaXplIHRoZSBiYW5kcy4gRWFjaCBkZWNvZGVkIG5vcm1hbGl6ZWQgYmFuZCBp
cworbXVsdGlwbGllZCBieSB0aGUgc3F1YXJlIHJvb3Qgb2YgdGhlIGRlY29kZWQgZW5lcmd5LiBU
aGlzIGlzIGRvbmUgYnkgZGVub3JtYWxpc2VfYmFuZHMoKQorKGJhbmRzLmMpLgorPC90PgorPC9z
ZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImludmVyc2UtbWRjdCIgdGl0bGU9IkludmVyc2Ug
TURDVCI+CisKKworPHQ+VGhlIGludmVyc2UgTURDVCBpbXBsZW1lbnRhdGlvbiBoYXMgbm8gc3Bl
Y2lhbCBjaGFyYWN0ZXJpc3RpY3MuIFRoZQoraW5wdXQgaXMgTiBmcmVxdWVuY3ktZG9tYWluIHNh
bXBsZXMgYW5kIHRoZSBvdXRwdXQgaXMgMipOIHRpbWUtZG9tYWluCitzYW1wbGVzLCB3aGlsZSBz
Y2FsaW5nIGJ5IDEvMi4gQSAibG93LW92ZXJsYXAiIHdpbmRvdyByZWR1Y2VzIHRoZSBhbGdvcml0
aG1pYyBkZWxheS4KK0l0IGlzIGRlcml2ZWQgZnJvbSBhIGJhc2ljIChmdWxsIG92ZXJsYXApIDI0
MC1zYW1wbGUgdmVyc2lvbiBvZiB0aGUgd2luZG93IHVzZWQgYnkgdGhlIFZvcmJpcyBjb2RlYzoK
KzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMgorICAgICAgIC8gICAv
cGkgICAgICAvcGkgICBuICsgMS8yXCBcIFwKK1cobikgPSB8c2lufC0tICogc2lufC0tICogLS0t
LS0tLXwgfCB8IC4KKyAgICAgICBcICAgXDIgICAgICAgXDIgICAgICAgTCAgIC8gLyAvCitdXT48
L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBsb3ctb3ZlcmxhcCB3aW5kb3cgaXMgY3JlYXRlZCBi
eSB6ZXJvLXBhZGRpbmcgdGhlIGJhc2ljIHdpbmRvdyBhbmQgaW5zZXJ0aW5nIG9uZXMgaW4gdGhl
CittaWRkbGUsIHN1Y2ggdGhhdCB0aGUgcmVzdWx0aW5nIHdpbmRvdyBzdGlsbCBzYXRpc2ZpZXMg
cG93ZXIgY29tcGxlbWVudGFyaXR5IDx4cmVmIHRhcmdldD0nUHJpbmNlbjg2Jy8+LgorVGhlIElN
RENUIGFuZAord2luZG93aW5nIGFyZSBwZXJmb3JtZWQgYnkgbWRjdF9iYWNrd2FyZCAobWRjdC5j
KS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJwb3N0LWZpbHRlciIgdGl0bGU9IlBvc3QtZmls
dGVyIj4KKzx0PgorVGhlIG91dHB1dCBvZiB0aGUgaW52ZXJzZSBNRENUIChhZnRlciB3ZWlnaHRl
ZCBvdmVybGFwLWFkZCkgaXMgc2VudCB0byB0aGUKK3Bvc3QtZmlsdGVyLiBBbHRob3VnaCB0aGUg
cG9zdC1maWx0ZXIgaXMgYXBwbGllZCBhdCB0aGUgZW5kLCB0aGUgcG9zdC1maWx0ZXIKK3BhcmFt
ZXRlcnMgYXJlIGVuY29kZWQgYXQgdGhlIGJlZ2lubmluZywganVzdCBhZnRlciB0aGUgc2lsZW5j
ZSBmbGFnLgorVGhlIHBvc3QtZmlsdGVyIGNhbiBiZSBzd2l0Y2hlZCBvbiBvciBvZmYgdXNpbmcg
b25lIGJpdCAobG9ncD0xKS4KK0lmIHRoZSBwb3N0LWZpbHRlciBpcyBlbmFibGVkLCB0aGVuIHRo
ZSBvY3RhdmUgaXMgZGVjb2RlZCBhcyBhbiBpbnRlZ2VyIHZhbHVlCitiZXR3ZWVuIDAgYW5kIDYg
b2YgdW5pZm9ybSBwcm9iYWJpbGl0eS4gT25jZSB0aGUgb2N0YXZlIGlzIGtub3duLCB0aGUgZmlu
ZSBwaXRjaAord2l0aGluIHRoZSBvY3RhdmUgaXMgZGVjb2RlZCB1c2luZyA0K29jdGF2ZSByYXcg
Yml0cy4gVGhlIGZpbmFsIHBpdGNoIHBlcmlvZAoraXMgZXF1YWwgdG8gKDE2Jmx0OyZsdDtvY3Rh
dmUpK2ZpbmVfcGl0Y2gtMSBzbyBpdCBpcyBib3VuZGVkIGJldHdlZW4gMTUgYW5kIDEwMjIsCitp
bmNsdXNpdmVseS4gTmV4dCwgdGhlIGdhaW4gaXMgZGVjb2RlZCBhcyB0aHJlZSByYXcgYml0cyBh
bmQgaXMgZXF1YWwgdG8KK0c9MyooaW50X2dhaW4rMSkvMzIuIFRoZSBzZXQgb2YgcG9zdC1maWx0
ZXIgdGFwcyBpcyBkZWNvZGVkIGxhc3QsIHVzaW5nCithIHBkZiBlcXVhbCB0byB7MiwgMSwgMX0v
NC4gVGFwc2V0IHplcm8gY29ycmVzcG9uZHMgdG8gdGhlIGZpbHRlciBjb2VmZmljaWVudHMKK2cw
ID0gMC4zMDY2NDA2MjUwLCBnMSA9IDAuMjE3MDQxMDE1NiwgZzIgPSAwLjEyOTYzODY3MTkuIFRh
cHNldCBvbmUKK2NvcnJlc3BvbmRzIHRvIHRoZSBmaWx0ZXIgY29lZmZpY2llbnRzIGcwID0gMC40
NjM4NjcxODc1LCBnMSA9IDAuMjY4MDY2NDA2MiwKK2cyID0gMCwgYW5kIHRhcHNldCB0d28gdXNl
cyBmaWx0ZXIgY29lZmZpY2llbnRzIGcwID0gMC43OTk4MDQ2ODc1LAorZzEgPSAwLjEwMDA5NzY1
NjIsIGcyID0gMC4KKzwvdD4KKworPHQ+CitUaGUgcG9zdC1maWx0ZXIgcmVzcG9uc2UgaXMgdGh1
cyBjb21wdXRlZCBhczoKKyAgICAgICAgICAgICAgPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKyAg
ICAgICAgICAgICAgICA8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKyAgICAgICAgICAgICAgICAg
IDwhW0NEQVRBWworICAgeShuKSA9IHgobikgKyBHKihnMCp5KG4tVCkgKyBnMSooeShuLVQrMSkr
eShuLVQrMSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIGcyKih5KG4tVCsyKSt5
KG4tVCsyKSkpCitdXT4KKyAgICAgICAgICAgICAgICA8L2FydHdvcms+CisgICAgICAgICAgICAg
IDwvZmlndXJlPgorCitEdXJpbmcgYSB0cmFuc2l0aW9uIGJldHdlZW4gZGlmZmVyZW50IGdhaW5z
LCBhIHNtb290aCB0cmFuc2l0aW9uIGlzIGNhbGN1bGF0ZWQKK3VzaW5nIHRoZSBzcXVhcmUgb2Yg
dGhlIE1EQ1Qgd2luZG93LiBJdCBpcyBpbXBvcnRhbnQgdGhhdCB2YWx1ZXMgb2YgeShuKSBiZQor
aW50ZXJwb2xhdGVkIG9uZSBhdCBhIHRpbWUgc3VjaCB0aGF0IHRoZSBwYXN0IHZhbHVlIG9mIHko
bikgdXNlZCBpcyBpbnRlcnBvbGF0ZWQuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFu
Y2hvcj0iZGVlbXBoYXNpcyIgdGl0bGU9IkRlLWVtcGhhc2lzIj4KKzx0PgorQWZ0ZXIgdGhlIHBv
c3QtZmlsdGVyLAordGhlIHNpZ25hbCBpcyBkZS1lbXBoYXNpemVkIHVzaW5nIHRoZSBpbnZlcnNl
IG9mIHRoZSBwcmUtZW1waGFzaXMgZmlsdGVyCit1c2VkIGluIHRoZSBlbmNvZGVyOgorPGZpZ3Vy
ZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDEg
ICAgICAgICAgICAxCistLS0tID0gLS0tLS0tLS0tLS0tLS0tICwKK0EoeikgICAgICAgICAgICAg
ICAgLTEKKyAgICAgICAxIC0gYWxwaGFfcCp6CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK3do
ZXJlIGFscGhhX3A9MC44NTAwMDYxMDM1LgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+
CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJQYWNrZXQgTG9zcyBDb25jZWFsbWVu
dCIgdGl0bGU9IlBhY2tldCBMb3NzIENvbmNlYWxtZW50IChQTEMpIj4KKzx0PgorUGFja2V0IGxv
c3MgY29uY2VhbG1lbnQgKFBMQykgaXMgYW4gb3B0aW9uYWwgZGVjb2Rlci1zaWRlIGZlYXR1cmUg
dGhhdAorU0hPVUxEIGJlIGluY2x1ZGVkIHdoZW4gcmVjZWl2aW5nIGZyb20gYW4gdW5yZWxpYWJs
ZSBjaGFubmVsLiBCZWNhdXNlCitQTEMgaXMgbm90IHBhcnQgb2YgdGhlIGJpdHN0cmVhbSwgdGhl
cmUgYXJlIG1hbnkgYWNjZXB0YWJsZSB3YXlzIHRvCitpbXBsZW1lbnQgUExDIHdpdGggZGlmZmVy
ZW50IGNvbXBsZXhpdHkvcXVhbGl0eSB0cmFkZS1vZmZzLgorPC90PgorCis8dD4KK1RoZSBQTEMg
aW4KK3RoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gZGVwZW5kcyBvbiB0aGUgbW9kZSBvZiBs
YXN0IHBhY2tldCByZWNlaXZlZC4KK0luIENFTFQgbW9kZSwgdGhlIFBMQyBmaW5kcyBhIHBlcmlv
ZGljaXR5IGluIHRoZSBkZWNvZGVkCitzaWduYWwgYW5kIHJlcGVhdHMgdGhlIHdpbmRvd2VkIHdh
dmVmb3JtIHVzaW5nIHRoZSBwaXRjaCBvZmZzZXQuIFRoZSB3aW5kb3dlZAord2F2ZWZvcm0gaXMg
b3ZlcmxhcHBlZCBpbiBzdWNoIGEgd2F5IGFzIHRvIHByZXNlcnZlIHRoZSB0aW1lLWRvbWFpbiBh
bGlhc2luZworY2FuY2VsbGF0aW9uIHdpdGggdGhlIHByZXZpb3VzIGZyYW1lIGFuZCB0aGUgbmV4
dCBmcmFtZS4gVGhpcyBpcyBpbXBsZW1lbnRlZAoraW4gY2VsdF9kZWNvZGVfbG9zdCgpIChtZGN0
LmMpLiAgSW4gU0lMSyBtb2RlLCB0aGUgUExDIHVzZXMgTFBDIGV4dHJhcG9sYXRpb24KK2Zyb20g
dGhlIHByZXZpb3VzIGZyYW1lLCBpbXBsZW1lbnRlZCBpbiBzaWxrX1BMQygpIChQTEMuYykuCis8
L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0iY2xvY2stZHJpZnQiIHRpdGxlPSJDbG9jayBEcmlmdCBD
b21wZW5zYXRpb24iPgorPHQ+CitDbG9jayBkcmlmdCByZWZlcnMgdG8gdGhlIGdyYWR1YWwgZGVz
eW5jaHJvbml6YXRpb24gb2YgdHdvIGVuZHBvaW50cword2hvc2Ugc2FtcGxlIGNsb2NrcyBydW4g
YXQgZGlmZmVyZW50IGZyZXF1ZW5jaWVzIHdoaWxlIHRoZXkgYXJlIHN0cmVhbWluZworbGl2ZSBh
dWRpby4gIERpZmZlcmVuY2VzIGluIGNsb2NrIGZyZXF1ZW5jaWVzIGFyZSBnZW5lcmFsbHkgYXR0
cmlidXRhYmxlIHRvCittYW51ZmFjdHVyaW5nIHZhcmlhdGlvbiBpbiB0aGUgZW5kcG9pbnRzJyBj
bG9jayBoYXJkd2FyZS4gIEZvciBsb25nLWxpdmVkCitzdHJlYW1zLCB0aGUgdGltZSBkaWZmZXJl
bmNlIGJldHdlZW4gc2VuZGVyIGFuZCByZWNlaXZlciBjYW4gZ3JvdyB3aXRob3V0Citib3VuZC4K
KzwvdD4KKworPHQ+CitXaGVuIHRoZSBzZW5kZXIncyBjbG9jayBydW5zIHNsb3dlciB0aGFuIHRo
ZSByZWNlaXZlcidzLCB0aGUgZWZmZWN0IGlzIHNpbWlsYXIKK3RvIHBhY2tldCBsb3NzOiB0b28g
ZmV3IHBhY2tldHMgYXJlIHJlY2VpdmVkLiAgVGhlIHJlY2VpdmVyIGNhbiBkaXN0aW5ndWlzaAor
YmV0d2VlbiBkcmlmdCBhbmQgbG9zcyBpZiB0aGUgdHJhbnNwb3J0IHByb3ZpZGVzIHBhY2tldCB0
aW1lc3RhbXBzLiAgQSByZWNlaXZlcgorZm9yIGxpdmUgc3RyZWFtcyBTSE9VTEQgY29uY2VhbCB0
aGUgZWZmZWN0cyBvZiBkcmlmdCwgYW5kIE1BWSBkbyBzbyBieSBpbnZva2luZwordGhlIFBMQy4K
KzwvdD4KKworPHQ+CitXaGVuIHRoZSBzZW5kZXIncyBjbG9jayBydW5zIGZhc3RlciB0aGFuIHRo
ZSByZWNlaXZlcidzLCB0b28gbWFueSBwYWNrZXRzIHdpbGwKK2JlIHJlY2VpdmVkLiAgVGhlIHJl
Y2VpdmVyIE1BWSByZXNwb25kIGJ5IHNraXBwaW5nIGFueSBwYWNrZXQgKGkuZS4sIG5vdAorc3Vi
bWl0dGluZyB0aGUgcGFja2V0IGZvciBkZWNvZGluZykuICBUaGlzIGlzIGxpa2VseSB0byBwcm9k
dWNlIGEgbGVzcyBzZXZlcmUKK2FydGlmYWN0IHRoYW4gaWYgdGhlIGZyYW1lIHdlcmUgZHJvcHBl
ZCBhZnRlciBkZWNvZGluZy4KKzwvdD4KKworPHQ+CitBIGRlY29kZXIgTUFZIGVtcGxveSBhIG1v
cmUgc29waGlzdGljYXRlZCBkcmlmdCBjb21wZW5zYXRpb24gbWV0aG9kLiBGb3IKK2V4YW1wbGUs
IHRoZQorPHhyZWYgdGFyZ2V0PSdHb29nbGUtTmV0RVEnPk5ldEVRIGNvbXBvbmVudDwveHJlZj4K
K29mIHRoZQorPHhyZWYgdGFyZ2V0PSdHb29nbGUtV2ViUlRDJz5Hb29nbGUgV2ViUlRDIGNvZGVi
YXNlPC94cmVmPgorY29tcGVuc2F0ZXMgZm9yIGRyaWZ0IGJ5IGFkZGluZyBvciByZW1vdmluZwor
b25lIHBlcmlvZCB3aGVuIHRoZSBzaWduYWwgaXMgaGlnaGx5IHBlcmlvZGljLiBUaGUgcmVmZXJl
bmNlIGltcGxlbWVudGF0aW9uIG9mCitPcHVzIGFsbG93cyBhIGNhbGxlciB0byBsZWFybiB3aGV0
aGVyIHRoZSBjdXJyZW50IGZyYW1lJ3Mgc2lnbmFsIGlzIGhpZ2hseQorcGVyaW9kaWMsIGFuZCBp
ZiBzbyB3aGF0IHRoZSBwZXJpb2QgaXMsIHVzaW5nIHRoZSBPUFVTX0dFVF9QSVRDSCgpIHJlcXVl
c3QuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJz
d2l0Y2hpbmciIHRpdGxlPSJDb25maWd1cmF0aW9uIFN3aXRjaGluZyI+CisKKzx0PgorU3dpdGNo
aW5nIGJldHdlZW4gdGhlIE9wdXMgY29kaW5nIG1vZGVzLCBhdWRpbyBiYW5kd2lkdGhzLCBhbmQg
Y2hhbm5lbCBjb3VudHMKKyByZXF1aXJlcyBjYXJlZnVsIGNvbnNpZGVyYXRpb24gdG8gYXZvaWQg
YXVkaWJsZSBnbGl0Y2hlcy4KK1N3aXRjaGluZyBiZXR3ZWVuIGFueSB0d28gY29uZmlndXJhdGlv
bnMgb2YgdGhlIENFTFQtb25seSBtb2RlLCBhbnkgdHdvCisgY29uZmlndXJhdGlvbnMgb2YgdGhl
IEh5YnJpZCBtb2RlLCBvciBmcm9tIFdCIFNJTEsgdG8gSHlicmlkIG1vZGUgZG9lcyBub3QKKyBy
ZXF1aXJlIGFueSBzcGVjaWFsIHRyZWF0bWVudCBpbiB0aGUgZGVjb2RlciwgYXMgdGhlIE1EQ1Qg
b3ZlcmxhcCB3aWxsIHNtb290aAorIHRoZSB0cmFuc2l0aW9uLgorU3dpdGNoaW5nIGZyb20gSHli
cmlkIG1vZGUgdG8gV0IgU0lMSyByZXF1aXJlcyBhZGRpbmcgaW4gdGhlIGZpbmFsIGNvbnRlbnRz
Cisgb2YgdGhlIENFTFQgb3ZlcmxhcCBidWZmZXIgdG8gdGhlIGZpcnN0IFNJTEstb25seSBwYWNr
ZXQuCitUaGlzIGNhbiBiZSBkb25lIGJ5IGRlY29kaW5nIGEgMi41Jm5ic3A7bXMgc2lsZW5jZSBm
cmFtZSB3aXRoIHRoZSBDRUxUIGRlY29kZXIKKyB1c2luZyB0aGUgY2hhbm5lbCBjb3VudCBvZiB0
aGUgU0lMSy1vbmx5IHBhY2tldCAoYW5kIGFueSBjaG9pY2Ugb2YgYXVkaW8KKyBiYW5kd2lkdGgp
LCB3aGljaCB3aWxsIGNvcnJlY3RseSBoYW5kbGUgdGhlIGNhc2VzIHdoZW4gdGhlIGNoYW5uZWwg
Y291bnQKKyBjaGFuZ2VzIGFzIHdlbGwuCis8L3Q+CisKKzx0PgorV2hlbiBjaGFuZ2luZyB0aGUg
Y2hhbm5lbCBjb3VudCBmb3IgU0lMSy1vbmx5IG9yIEh5YnJpZCBwYWNrZXRzLCB0aGUgZW5jb2Rl
cgorIGNhbiBhdm9pZCBnbGl0Y2hlcyBieSBzbW9vdGhseSB2YXJ5aW5nIHRoZSBzdGVyZW8gd2lk
dGggb2YgdGhlIGlucHV0IHNpZ25hbAorIGJlZm9yZSBvciBhZnRlciB0aGUgdHJhbnNpdGlvbiwg
YW5kIFNIT1VMRCBkbyBzby4KK0hvd2V2ZXIsIG90aGVyIHRyYW5zaXRpb25zIGJldHdlZW4gU0lM
Sy1vbmx5IHBhY2tldHMgb3IgYmV0d2VlbiBOQiBvciBNQiBTSUxLCisgYW5kIEh5YnJpZCBwYWNr
ZXRzIG1heSBjYXVzZSBnbGl0Y2hlcywgYmVjYXVzZSBuZWl0aGVyIHRoZSBMU0YgY29lZmZpY2ll
bnRzCisgbm9yIHRoZSBMVFAsIExQQywgc3RlcmVvIHVubWl4aW5nLCBhbmQgcmVzYW1wbGVyIGJ1
ZmZlcnMgYXJlIGF2YWlsYWJsZSBhdCB0aGUKKyBuZXcgc2FtcGxlIHJhdGUuCitUaGVzZSBzd2l0
Y2hlcyBTSE9VTEQgYmUgZGVsYXllZCBieSB0aGUgZW5jb2RlciB1bnRpbCBxdWlldCBwZXJpb2Rz
IG9yCisgdHJhbnNpZW50cywgd2hlcmUgdGhlIGluZXZpdGFibGUgZ2xpdGNoZXMgd2lsbCBiZSBs
ZXNzIGF1ZGlibGUuIEFkZGl0aW9uYWxseSwKKyB0aGUgYml0LXN0cmVhbSBNQVkgaW5jbHVkZSBy
ZWR1bmRhbnQgc2lkZSBpbmZvcm1hdGlvbiAoInJlZHVuZGFuY3kiKSwgaW4gdGhlCisgZm9ybSBv
ZiBhZGRpdGlvbmFsIENFTFQgZnJhbWVzIGVtYmVkZGVkIGluIGVhY2ggb2YgdGhlIE9wdXMgZnJh
bWVzIGFyb3VuZCB0aGUKKyB0cmFuc2l0aW9uLgorPC90PgorCis8dD4KK1RoZSBvdGhlciB0cmFu
c2l0aW9ucyB0aGF0IGNhbm5vdCBiZSBlYXNpbHkgaGFuZGxlZCBhcmUgdGhvc2Ugd2hlcmUgdGhl
IGxvd2VyCisgZnJlcXVlbmNpZXMgc3dpdGNoIGJldHdlZW4gdGhlIFNJTEsgTFAtYmFzZWQgbW9k
ZWwgYW5kIHRoZSBDRUxUIE1EQ1QgbW9kZWwuCitIb3dldmVyLCBhbiBlbmNvZGVyIG1heSBub3Qg
aGF2ZSBhbiBvcHBvcnR1bml0eSB0byBkZWxheSBzdWNoIGEgc3dpdGNoIHRvIGEKKyBjb252ZW5p
ZW50IHBvaW50LgorRm9yIGV4YW1wbGUsIGlmIHRoZSBjb250ZW50IHN3aXRjaGVzIGZyb20gc3Bl
ZWNoIHRvIG11c2ljLCBhbmQgdGhlIGVuY29kZXIgZG9lcworIG5vdCBoYXZlIGVub3VnaCBsYXRl
bmN5IGluIGl0cyBhbmFseXNpcyB0byBkZXRlY3QgdGhpcyBpbiBhZHZhbmNlLCB0aGVyZSBtYXkK
KyBiZSBubyBjb252ZW5pZW50IHNpbGVuY2UgcGVyaW9kIGR1cmluZyB3aGljaCB0byBtYWtlIHRo
ZSB0cmFuc2l0aW9uIGZvciBxdWl0ZQorIHNvbWUgdGltZS4KK1RvIGF2b2lkIG9yIHJlZHVjZSBn
bGl0Y2hlcyBkdXJpbmcgdGhlc2UgcHJvYmxlbWF0aWMgbW9kZSB0cmFuc2l0aW9ucywgYW5kCisg
YWxzbyBiZXR3ZWVuIGF1ZGlvIGJhbmR3aWR0aCBjaGFuZ2VzIGluIHRoZSBTSUxLLW9ubHkgbW9k
ZXMsIHRyYW5zaXRpb25zIE1BWQorIGluY2x1ZGUgcmVkdW5kYW50IHNpZGUgaW5mb3JtYXRpb24g
KCJyZWR1bmRhbmN5IiksIGluIHRoZSBmb3JtIG9mIGFuCisgYWRkaXRpb25hbCBDRUxUIGZyYW1l
IGVtYmVkZGVkIGluIHRoZSBPcHVzIGZyYW1lLgorPC90PgorCis8dD4KK0EgdHJhbnNpdGlvbiBi
ZXR3ZWVuIGNvZGluZyB0aGUgbG93ZXIgZnJlcXVlbmNpZXMgd2l0aCB0aGUgTFAgbW9kZWwgYW5k
IHRoZQorIE1EQ1QgbW9kZWwgb3IgYSB0cmFuc2l0aW9uIHRoYXQgaW52b2x2ZXMgY2hhbmdpbmcg
dGhlIFNJTEsgYmFuZHdpZHRoCisgaXMgb25seSBub3JtYXRpdmVseSBzcGVjaWZpZWQgd2hlbiBp
dCBpbmNsdWRlcyByZWR1bmRhbmN5LgorRm9yIHRob3NlIHdpdGhvdXQgcmVkdW5kYW5jeSwgaXQg
aXMgUkVDT01NRU5ERUQgdGhhdCB0aGUgZGVjb2RlciB1c2UgYQorIGNvbmNlYWxtZW50IHRlY2hu
aXF1ZSAoZS5nLiwgbWFrZSB1c2Ugb2YgYSBQTEMgYWxnb3JpdGhtKSB0byAiZmlsbCBpbiIgdGhl
CisgZ2FwIG9yIGRpc2NvbnRpbnVpdHkgY2F1c2VkIGJ5IHRoZSBtb2RlIHRyYW5zaXRpb24uCitU
aGVyZWZvcmUsIFBMQyBNVVNUIE5PVCBiZSBhcHBsaWVkIGR1cmluZyBhbnkgbm9ybWF0aXZlIHRy
YW5zaXRpb24sIGkuZS4sIHdoZW4KKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PkEgcGFja2V0
IGluY2x1ZGVzIHJlZHVuZGFuY3kgZm9yIHRoaXMgdHJhbnNpdGlvbiAoYXMgZGVzY3JpYmVkIGJl
bG93KSw8L3Q+Cis8dD5UaGUgdHJhbnNpdGlvbiBpcyBiZXR3ZWVuIGFueSBXQiBTSUxLIHBhY2tl
dCBhbmQgYW55IEh5YnJpZCBwYWNrZXQsIG9yIHZpY2UKKyB2ZXJzYSw8L3Q+Cis8dD5UaGUgdHJh
bnNpdGlvbiBpcyBiZXR3ZWVuIGFueSB0d28gSHlicmlkIG1vZGUgcGFja2V0cywgb3I8L3Q+Cis8
dD5UaGUgdHJhbnNpdGlvbiBpcyBiZXR3ZWVuIGFueSB0d28gQ0VMVCBtb2RlIHBhY2tldHMsPC90
PgorPC9saXN0PgorIHVubGVzcyB0aGVyZSBpcyBhY3R1YWwgcGFja2V0IGxvc3MuCis8L3Q+CisK
KzxzZWN0aW9uIGFuY2hvcj0ic2lkZS1pbmZvIiB0aXRsZT0iVHJhbnNpdGlvbiBTaWRlIEluZm9y
bWF0aW9uIChSZWR1bmRhbmN5KSI+Cis8dD4KK1RyYW5zaXRpb25zIHdpdGggc2lkZSBpbmZvcm1h
dGlvbiBpbmNsdWRlIGFuIGV4dHJhIDUmbmJzcDttcyAicmVkdW5kYW50IiBDRUxUCisgZnJhbWUg
d2l0aGluIHRoZSBPcHVzIGZyYW1lLgorVGhpcyBmcmFtZSBpcyBkZXNpZ25lZCB0byBmaWxsIGlu
IHRoZSBnYXAgb3IgZGlzY29udGludWl0eSBpbiB0aGUgZGlmZmVyZW50CisgbGF5ZXJzIHdpdGhv
dXQgcmVxdWlyaW5nIHRoZSBkZWNvZGVyIHRvIGNvbmNlYWwgaXQuCitGb3IgdHJhbnNpdGlvbnMg
ZnJvbSBDRUxULW9ubHkgdG8gU0lMSy1vbmx5IG9yIEh5YnJpZCwgdGhlIHJlZHVuZGFudCBmcmFt
ZSBpcworIGluc2VydGVkIGluIHRoZSBmaXJzdCBPcHVzIGZyYW1lIGFmdGVyIHRoZSB0cmFuc2l0
aW9uIChpLmUuLCB0aGUgZmlyc3QKKyBTSUxLLW9ubHkgb3IgSHlicmlkIGZyYW1lKS4KK0ZvciB0
cmFuc2l0aW9ucyBmcm9tIFNJTEstb25seSBvciBIeWJyaWQgdG8gQ0VMVC1vbmx5LCB0aGUgcmVk
dW5kYW50IGZyYW1lIGlzCisgaW5zZXJ0ZWQgaW4gdGhlIGxhc3QgT3B1cyBmcmFtZSBiZWZvcmUg
dGhlIHRyYW5zaXRpb24gKGkuZS4sIHRoZSBsYXN0CisgU0lMSy1vbmx5IG9yIEh5YnJpZCBmcmFt
ZSkuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0ib3B1c19yZWR1bmRhbmN5X2ZsYWciIHRpdGxl
PSJSZWR1bmRhbmN5IEZsYWciPgorPHQ+CitUaGUgcHJlc2VuY2Ugb2YgcmVkdW5kYW5jeSBpcyBz
aWduYWxlZCBpbiBhbGwgU0lMSy1vbmx5IGFuZCBIeWJyaWQgZnJhbWVzLCBub3QKKyBqdXN0IHRo
b3NlIGludm9sdmVkIGluIGEgbW9kZSB0cmFuc2l0aW9uLgorVGhpcyBhbGxvd3MgdGhlIGZyYW1l
cyB0byBiZSBkZWNvZGVkIGNvcnJlY3RseSBldmVuIGlmIGFuIGFkamFjZW50IGZyYW1lIGlzCisg
bG9zdC4KK0ZvciBTSUxLLW9ubHkgZnJhbWVzLCB0aGlzIHNpZ25hbGluZyBpcyBpbXBsaWNpdCwg
YmFzZWQgb24gdGhlIHNpemUgb2YgdGhlCisgb2YgdGhlIE9wdXMgZnJhbWUgYW5kIHRoZSBudW1i
ZXIgb2YgYml0cyBjb25zdW1lZCBkZWNvZGluZyB0aGUgU0lMSyBwb3J0aW9uIG9mCisgaXQuCitB
ZnRlciBkZWNvZGluZyB0aGUgU0lMSyBwb3J0aW9uIG9mIHRoZSBPcHVzIGZyYW1lLCB0aGUgZGVj
b2RlciB1c2VzIGVjX3RlbGwoKQorIChzZWUgPHhyZWYgdGFyZ2V0PSJlY190ZWxsIi8+KSB0byBj
aGVjayBpZiB0aGVyZSBhcmUgYXQgbGVhc3QgMTcgYml0cworIHJlbWFpbmluZy4KK0lmIHNvLCB0
aGVuIHRoZSBmcmFtZSBjb250YWlucyByZWR1bmRhbmN5LgorPC90PgorCis8dD4KK0ZvciBIeWJy
aWQgZnJhbWVzLCB0aGlzIHNpZ25hbGluZyBpcyBleHBsaWNpdC4KK0FmdGVyIGRlY29kaW5nIHRo
ZSBTSUxLIHBvcnRpb24gb2YgdGhlIE9wdXMgZnJhbWUsIHRoZSBkZWNvZGVyIHVzZXMgZWNfdGVs
bCgpCisgKHNlZSA8eHJlZiB0YXJnZXQ9ImVjX3RlbGwiLz4pIHRvIGVuc3VyZSB0aGVyZSBhcmUg
YXQgbGVhc3QgMzcgYml0cyByZW1haW5pbmcuCitJZiBzbywgaXQgcmVhZHMgYSBzeW1ib2wgd2l0
aCB0aGUgUERGIGluCisgPHhyZWYgdGFyZ2V0PSJvcHVzX3JlZHVuZGFuY3lfZmxhZ19wZGYiLz4s
IGFuZCBpZiB0aGUgdmFsdWUgaXMgMSwgdGhlbiB0aGUKKyBmcmFtZSBjb250YWlucyByZWR1bmRh
bmN5LgorT3RoZXJ3aXNlIChpZiB0aGVyZSB3ZXJlIGZld2VyIHRoYW4gMzcgYml0cyBsZWZ0IG9y
IHRoZSB2YWx1ZSB3YXMgMCksIHRoZSBmcmFtZQorIGRvZXMgbm90IGNvbnRhaW4gcmVkdW5kYW5j
eS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9Im9wdXNfcmVkdW5kYW5jeV9mbGFnX3BkZiIg
dGl0bGU9IlJlZHVuZGFuY3kgRmxhZyBQREYiPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz57NDA5
NSwgMX0vNDA5NjwvYz4KKzwvdGV4dHRhYmxlPgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9Im9wdXNfcmVkdW5kYW5jeV9wb3MiIHRpdGxlPSJSZWR1bmRhbmN5IFBvc2l0aW9uIEZsYWci
PgorPHQ+CitTaW5jZSB0aGUgY3VycmVudCBmcmFtZSBpcyBhIFNJTEstb25seSBvciBhIEh5YnJp
ZCBmcmFtZSwgaXQgbXVzdCBiZSBhdCBsZWFzdAorIDEwJm5ic3A7bXMuCitUaGVyZWZvcmUsIGl0
IG5lZWRzIGFuIGFkZGl0aW9uYWwgZmxhZyB0byBpbmRpY2F0ZSB3aGV0aGVyIHRoZSByZWR1bmRh
bnQKKyA1Jm5ic3A7bXMgQ0VMVCBmcmFtZSBzaG91bGQgYmUgbWl4ZWQgaW50byB0aGUgYmVnaW5u
aW5nIG9mIHRoZSBjdXJyZW50IGZyYW1lLAorIG9yIHRoZSBlbmQuCitBZnRlciBkZXRlcm1pbmlu
ZyB0aGF0IGEgZnJhbWUgY29udGFpbnMgcmVkdW5kYW5jeSwgdGhlIGRlY29kZXIgcmVhZHMgYQor
IDEmbmJzcDtiaXQgc3ltYm9sIHdpdGggYSB1bmlmb3JtIFBERgorICg8eHJlZiB0YXJnZXQ9Im9w
dXNfcmVkdW5kYW5jeV9wb3NfcGRmIi8+KS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9Im9w
dXNfcmVkdW5kYW5jeV9wb3NfcGRmIiB0aXRsZT0iUmVkdW5kYW5jeSBQb3NpdGlvbiBQREYiPgor
PHR0Y29sPlBERjwvdHRjb2w+Cis8Yz57MSwgMX0vMjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4K
K0lmIHRoZSB2YWx1ZSBpcyB6ZXJvLCB0aGlzIGlzIHRoZSBmaXJzdCBmcmFtZSBpbiB0aGUgdHJh
bnNpdGlvbiwgYW5kIHRoZQorIHJlZHVuZGFuY3kgYmVsb25ncyBhdCB0aGUgZW5kLgorSWYgdGhl
IHZhbHVlIGlzIG9uZSwgdGhpcyBpcyB0aGUgc2Vjb25kIGZyYW1lIGluIHRoZSB0cmFuc2l0aW9u
LCBhbmQgdGhlCisgcmVkdW5kYW5jeSBiZWxvbmdzIGF0IHRoZSBiZWdpbm5pbmcuCitUaGVyZSBp
cyBubyB3YXkgdG8gc3BlY2lmeSB0aGF0IGFuIE9wdXMgZnJhbWUgY29udGFpbnMgc2VwYXJhdGUg
cmVkdW5kYW50IENFTFQKKyBmcmFtZXMgYXQgYm90aCB0aGUgYmVnaW5uaW5nIGFuZCB0aGUgZW5k
LgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Im9wdXNfcmVkdW5kYW5jeV9z
aXplIiB0aXRsZT0iUmVkdW5kYW5jeSBTaXplIj4KKzx0PgorVW5saWtlIHRoZSBDRUxUIHBvcnRp
b24gb2YgYSBIeWJyaWQgZnJhbWUsIHRoZSByZWR1bmRhbnQgQ0VMVCBmcmFtZSBkb2VzIG5vdAor
IHVzZSB0aGUgc2FtZSBlbnRyb3B5IGNvZGVyIHN0YXRlIGFzIHRoZSByZXN0IG9mIHRoZSBPcHVz
IGZyYW1lLCBiZWNhdXNlIHRoaXMKKyB3b3VsZCBicmVhayB0aGUgQ0VMVCBiaXQgYWxsb2NhdGlv
biBtZWNoYW5pc20gaW4gSHlicmlkIGZyYW1lcy4KK1RodXMsIGEgcmVkdW5kYW50IENFTFQgZnJh
bWUgYWx3YXlzIHN0YXJ0cyBhbmQgZW5kcyBvbiBhIGJ5dGUgYm91bmRhcnksIGV2ZW4gaW4KKyBT
SUxLLW9ubHkgZnJhbWVzLCB3aGVyZSB0aGlzIGlzIG5vdCBzdHJpY3RseSBuZWNlc3NhcnkuCis8
L3Q+CisKKzx0PgorRm9yIFNJTEstb25seSBmcmFtZXMsIHRoZSBudW1iZXIgb2YgYnl0ZXMgaW4g
dGhlIHJlZHVuZGFudCBDRUxUIGZyYW1lIGlzIHNpbXBseQorIHRoZSBudW1iZXIgb2Ygd2hvbGUg
Ynl0ZXMgcmVtYWluaW5nLCB3aGljaCBtdXN0IGJlIGF0IGxlYXN0IDIsIGR1ZSB0byB0aGUKKyBz
cGFjZSBjaGVjayBpbiA8eHJlZiB0YXJnZXQ9Im9wdXNfcmVkdW5kYW5jeV9mbGFnIi8+LgorRm9y
IEh5YnJpZCBmcmFtZXMsIHRoZSBudW1iZXIgb2YgYnl0ZXMgaXMgZXF1YWwgdG8gMiwgcGx1cyBh
IGRlY29kZWQgdW5zaWduZWQKKyBpbnRlZ2VyIGxlc3MgdGhhbiAyNTYgKHNlZSA8eHJlZiB0YXJn
ZXQ9ImVjX2RlY191aW50Ii8+KS4KK1RoaXMgbWF5IGJlIG1vcmUgdGhhbiB0aGUgbnVtYmVyIG9m
IHdob2xlIGJ5dGVzIHJlbWFpbmluZyBpbiB0aGUgT3B1cyBmcmFtZSwKKyBpbiB3aGljaCBjYXNl
IHRoZSBmcmFtZSBpcyBpbnZhbGlkLgorSG93ZXZlciwgYSBkZWNvZGVyIGlzIG5vdCByZXF1aXJl
ZCB0byBpZ25vcmUgdGhlIGVudGlyZSBmcmFtZSwgYXMgdGhpcyBtYXkgYmUKKyB0aGUgcmVzdWx0
IG9mIGEgYml0IGVycm9yIHRoYXQgZGVzeW5jaHJvbml6ZWQgdGhlIHJhbmdlIGNvZGVyLgorVGhl
cmUgbWF5IHN0aWxsIGJlIHVzZWZ1bCBkYXRhIGJlZm9yZSB0aGUgZXJyb3IsIGFuZCBhIGRlY29k
ZXIgTUFZIGtlZXAgYW55CisgYXVkaW8gZGVjb2RlZCBzbyBmYXIgaW5zdGVhZCBvZiBpbnZva2lu
ZyB0aGUgUExDLCBidXQgaXQgaXMgUkVDT01NRU5ERUQgdGhhdAorIHRoZSBkZWNvZGVyIHN0b3Ag
ZGVjb2RpbmcgYW5kIGRpc2NhcmQgdGhlIHJlc3Qgb2YgdGhlIGN1cnJlbnQgT3B1cyBmcmFtZS4K
KzwvdD4KKworPHQ+CitJdCB3b3VsZCBoYXZlIGJlZW4gcG9zc2libGUgdG8gYXZvaWQgdGhlc2Ug
aW52YWxpZCBzdGF0ZXMgaW4gdGhlIGRlc2lnbiBvZiBPcHVzCisgYnkgbGltaXRpbmcgdGhlIHJh
bmdlIG9mIHRoZSBleHBsaWNpdCBsZW5ndGggZGVjb2RlZCBmcm9tIEh5YnJpZCBmcmFtZXMgYnkg
dGhlCisgYWN0dWFsIG51bWJlciBvZiB3aG9sZSBieXRlcyByZW1haW5pbmcuCitIb3dldmVyLCB0
aGlzIHdvdWxkIHJlcXVpcmUgYW4gZW5jb2RlciB0byBkZXRlcm1pbmUgdGhlIHJhdGUgYWxsb2Nh
dGlvbiBmb3IgdGhlCisgTURDVCBsYXllciB1cCBmcm9udCwgYmVmb3JlIGl0IGJlZ2FuIGVuY29k
aW5nIHRoYXQgbGF5ZXIuCitCeSBhbGxvd2luZyBzb21lIGludmFsaWQgc2l6ZXMsIHRoZSBlbmNv
ZGVyIGlzIGFibGUgdG8gZGVmZXIgdGhhdCBkZWNpc2lvbgorIHVudGlsIG11Y2ggbGF0ZXIuCitX
aGVuIGVuY29kaW5nIEh5YnJpZCBmcmFtZXMgd2hpY2ggZG8gbm90IGluY2x1ZGUgcmVkdW5kYW5j
eSwgdGhlIGVuY29kZXIgbXVzdAorIHN0aWxsIGRlY2lkZSB1cC1mcm9udCBpZiBpdCB3aXNoZXMg
dG8gdXNlIHRoZSBtaW5pbXVtIDM3IGJpdHMgcmVxdWlyZWQgdG8KKyB0cmlnZ2VyIGVuY29kaW5n
IG9mIHRoZSByZWR1bmRhbmN5IGZsYWcsIGJ1dCB0aGlzIGlzIGEgbXVjaCBsb29zZXIKKyByZXN0
cmljdGlvbi4KKzwvdD4KKworPHQ+CitBZnRlciBkZXRlcm1pbmluZyB0aGUgc2l6ZSBvZiB0aGUg
cmVkdW5kYW50IENFTFQgZnJhbWUsIHRoZSBkZWNvZGVyIHJlZHVjZXMKKyB0aGUgc2l6ZSBvZiB0
aGUgYnVmZmVyIGN1cnJlbnRseSBpbiB1c2UgYnkgdGhlIHJhbmdlIGNvZGVyIGJ5IHRoYXQgYW1v
dW50LgorVGhlIENFTFQgbGF5ZXIgcmVhZCBhbnkgcmF3IGJpdHMgZnJvbSB0aGUgZW5kIG9mIHRo
aXMgcmVkdWNlZCBidWZmZXIsIGFuZCBhbGwKKyBjYWxjdWxhdGlvbnMgb2YgdGhlIG51bWJlciBv
ZiBiaXRzIHJlbWFpbmluZyBpbiB0aGUgYnVmZmVyIG11c3QgYmUgZG9uZSB1c2luZworIHRoaXMg
bmV3LCByZWR1Y2VkIHNpemUsIHJhdGhlciB0aGFuIHRoZSBvcmlnaW5hbCBzaXplIG9mIHRoZSBP
cHVzIGZyYW1lLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Im9wdXNfcmVk
dW5kYW5jeV9kZWNvZGluZyIgdGl0bGU9IkRlY29kaW5nIHRoZSBSZWR1bmRhbmN5Ij4KKzx0Pgor
VGhlIHJlZHVuZGFudCBmcmFtZSBpcyBkZWNvZGVkIGxpa2UgYW55IG90aGVyIENFTFQtb25seSBm
cmFtZSwgd2l0aCB0aGUKKyBleGNlcHRpb24gdGhhdCBpdCBkb2VzIG5vdCBjb250YWluIGEgVE9D
IGJ5dGUuCitUaGUgZnJhbWUgc2l6ZSBpcyBmaXhlZCBhdCA1Jm5ic3A7bXMsIHRoZSBjaGFubmVs
IGNvdW50IGlzIHNldCB0byB0aGF0IG9mIHRoZQorIGN1cnJlbnQgZnJhbWUsIGFuZCB0aGUgYXVk
aW8gYmFuZHdpZHRoIGlzIGFsc28gc2V0IHRvIHRoYXQgb2YgdGhlIGN1cnJlbnQKKyBmcmFtZSwg
d2l0aCB0aGUgZXhjZXB0aW9uIHRoYXQgZm9yIE1CIFNJTEsgZnJhbWVzLCBpdCBpcyBzZXQgdG8g
V0IuCis8L3Q+CisKKzx0PgorSWYgdGhlIHJlZHVuZGFuY3kgYmVsb25ncyBhdCB0aGUgYmVnaW5u
aW5nIChpbiBhIENFTFQtb25seSB0byBTSUxLLW9ubHkgb3IKKyBIeWJyaWQgdHJhbnNpdGlvbiks
IHRoZSBmaW5hbCByZWNvbnN0cnVjdGVkIG91dHB1dCB1c2VzIHRoZSBmaXJzdCAyLjUmbmJzcDtt
cworIG9mIGF1ZGlvIG91dHB1dCBieSB0aGUgZGVjb2RlciBmb3IgdGhlIHJlZHVuZGFudCBmcmFt
ZSBhcy1pcywgZGlzY2FyZGluZworIHRoZSBjb3JyZXNwb25kaW5nIG91dHB1dCBmcm9tIHRoZSBT
SUxLLW9ubHkgb3IgSHlicmlkIHBvcnRpb24gb2YgdGhlIGZyYW1lLgorVGhlIHJlbWFpbmluZyAy
LjUmbmJzcDttcyBpcyBjcm9zcy1sYXBwZWQgd2l0aCB0aGUgZGVjb2RlZCBTSUxLL0h5YnJpZCBz
aWduYWwKKyB1c2luZyB0aGUgQ0VMVCdzIHBvd2VyLWNvbXBsZW1lbnRhcnkgTURDVCB3aW5kb3cg
dG8gZW5zdXJlIGEgc21vb3RoCisgdHJhbnNpdGlvbi4KKzwvdD4KKworPHQ+CitJZiB0aGUgcmVk
dW5kYW5jeSBiZWxvbmdzIGF0IHRoZSBlbmQgKGluIGEgU0lMSy1vbmx5IG9yIEh5YnJpZCB0byBD
RUxULW9ubHkKKyB0cmFuc2l0aW9uKSwgb25seSB0aGUgc2Vjb25kIGhhbGYgKDIuNSZuYnNwO21z
KSBvZiB0aGUgYXVkaW8gb3V0cHV0IGJ5IHRoZQorIGRlY29kZXIgZm9yIHRoZSByZWR1bmRhbnQg
ZnJhbWUgaXMgdXNlZC4KK0luIHRoYXQgY2FzZSwgdGhlIHNlY29uZCBoYWxmIG9mIHRoZSByZWR1
bmRhbnQgZnJhbWUgaXMgY3Jvc3MtbGFwcGVkIHdpdGggdGhlCisgZW5kIG9mIHRoZSBTSUxLL0h5
YnJpZCBzaWduYWwsIGFnYWluIHVzaW5nIENFTFQncyBwb3dlci1jb21wbGVtZW50YXJ5IE1EQ1QK
KyB3aW5kb3cgdG8gZW5zdXJlIGEgc21vb3RoIHRyYW5zaXRpb24uCis8L3Q+Cis8L3NlY3Rpb24+
CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJkZWNvZGVyLXJlc2V0IiB0aXRsZT0i
U3RhdGUgUmVzZXQiPgorPHQ+CitXaGVuIGEgdHJhbnNpdGlvbiBvY2N1cnMsIHRoZSBzdGF0ZSBv
ZiB0aGUgU0lMSyBvciB0aGUgQ0VMVCBkZWNvZGVyIChvciBib3RoKQorIG1heSBuZWVkIHRvIGJl
IHJlc2V0IGJlZm9yZSBkZWNvZGluZyBhIGZyYW1lIGluIHRoZSBuZXcgbW9kZS4KK1RoaXMgYXZv
aWRzIHJldXNpbmcgIm91dCBvZiBkYXRlIiBtZW1vcnksIHdoaWNoIG1heSBub3QgaGF2ZSBiZWVu
IHVwZGF0ZWQgaW4KKyBzb21lIHRpbWUgb3IgbWF5IG5vdCBiZSBpbiBhIHdlbGwtZGVmaW5lZCBz
dGF0ZSBkdWUgdG8sIGUuZy4sIFBMQy4KK1RoZSBTSUxLIHN0YXRlIGlzIHJlc2V0IGJlZm9yZSBl
dmVyeSBTSUxLLW9ubHkgb3IgSHlicmlkIGZyYW1lIHdoZXJlIHRoZQorIHByZXZpb3VzIGZyYW1l
IHdhcyBDRUxULW9ubHkuCitUaGUgQ0VMVCBzdGF0ZSBpcyByZXNldCBldmVyeSB0aW1lIHRoZSBv
cGVyYXRpbmcgbW9kZSBjaGFuZ2VzIGFuZCB0aGUgbmV3IG1vZGUKKyBpcyBlaXRoZXIgSHlicmlk
IG9yIENFTFQtb25seSwgZXhjZXB0IHdoZW4gdGhlIHRyYW5zaXRpb24gdXNlcyByZWR1bmRhbmN5
IGFzCisgZGVzY3JpYmVkIGFib3ZlLgorV2hlbiBzd2l0Y2hpbmcgZnJvbSBTSUxLLW9ubHkgb3Ig
SHlicmlkIHRvIENFTFQtb25seSB3aXRoIHJlZHVuZGFuY3ksIHRoZSBDRUxUCisgc3RhdGUgaXMg
cmVzZXQgYmVmb3JlIGRlY29kaW5nIHRoZSByZWR1bmRhbnQgQ0VMVCBmcmFtZSBlbWJlZGRlZCBp
biB0aGUKKyBTSUxLLW9ubHkgb3IgSHlicmlkIGZyYW1lLCBidXQgaXQgaXMgbm90IHJlc2V0IGJl
Zm9yZSBkZWNvZGluZyB0aGUgZm9sbG93aW5nCisgQ0VMVC1vbmx5IGZyYW1lLgorV2hlbiBzd2l0
Y2hpbmcgZnJvbSBDRUxULW9ubHkgbW9kZSB0byBTSUxLLW9ubHkgb3IgSHlicmlkIG1vZGUgd2l0
aCByZWR1bmRhbmN5LAorIHRoZSBDRUxUIGRlY29kZXIgaXMgbm90IHJlc2V0IGZvciBkZWNvZGlu
ZyB0aGUgcmVkdW5kYW50IENFTFQgZnJhbWUuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9u
IHRpdGxlPSJTdW1tYXJ5IG9mIFRyYW5zaXRpb25zIj4KKworPHQ+Cis8eHJlZiB0YXJnZXQ9Im5v
cm1hdGl2ZV90cmFuc2l0aW9ucyIvPiBpbGx1c3RyYXRlcyBhbGwgb2YgdGhlIG5vcm1hdGl2ZQor
IHRyYW5zaXRpb25zIGludm9sdmluZyBhIG1vZGUgY2hhbmdlLCBhbiBhdWRpbyBiYW5kd2lkdGgg
Y2hhbmdlLCBvciBib3RoLgorRWFjaCBvbmUgdXNlcyBhbiBTLCBILCBvciBDIHRvIHJlcHJlc2Vu
dCBhbiBPcHVzIGZyYW1lIGluIHRoZSBjb3JyZXNwb25kaW5nCisgbW9kZS4KK0luIGFkZGl0aW9u
LCBhbiBSIGluZGljYXRlcyB0aGUgcHJlc2VuY2Ugb2YgcmVkdW5kYW5jeSBpbiB0aGUgT3B1cyBm
cmFtZSBpdCBpcworIGNyb3NzLWxhcHBlZCB3aXRoLgorSXRzIGxvY2F0aW9uIGluIHRoZSBmaXJz
dCBvciBsYXN0IDUmbmJzcDttcyBpcyBhc3N1bWVkIHRvIGNvcnJlc3BvbmQgdG8gd2hldGhlcgor
IGl0IGlzIHRoZSBmcmFtZSBiZWZvcmUgb3IgYWZ0ZXIgdGhlIHRyYW5zaXRpb24uCitPdGhlciB1
c2VzIG9mIHJlZHVuZGFuY3kgYXJlIG5vbi1ub3JtYXRpdmUuCitGaW5hbGx5LCBhIGMgaW5kaWNh
dGVzIHRoZSBjb250ZW50cyBvZiB0aGUgQ0VMVCBvdmVybGFwIGJ1ZmZlciBhZnRlciB0aGUKKyBw
cmV2aW91c2x5IGRlY29kZWQgZnJhbWUgKGkuZS4sIGFzIGV4dHJhY3RlZCBieSBkZWNvZGluZyBh
IHNpbGVuY2UgZnJhbWUpLgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIiBhbmNob3I9Im5vcm1hdGl2
ZV90cmFuc2l0aW9ucyIKKyB0aXRsZT0iTm9ybWF0aXZlIFRyYW5zaXRpb25zIj4KKzxhcnR3b3Jr
IGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworU0lMSyB0byBTSUxLIHdpdGggUmVkdW5kYW5jeTog
ICAgICAgICAgICAgUyAtPiBTIC0+IFMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAhUiAtPiBSCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtTIC0+IFMgLT4gUworCitOQiBvciBNQiBTSUxL
IHRvIEh5YnJpZCB3aXRoIFJlZHVuZGFuY3k6ICBTIC0+IFMgLT4gUworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFSIC0+O0ggLT4gSCAtPiBICisKK1dC
IFNJTEsgdG8gSHlicmlkOiAgICAgICAgICAgICAgICAgICAgICAgIFMgLT4gUyAtPiBTIC0+IUgg
LT4gSCAtPiBICisKK1NJTEsgdG8gQ0VMVCB3aXRoIFJlZHVuZGFuY3k6ICAgICAgICAgICAgIFMg
LT4gUyAtPiBTCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgJgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIVIgLT4gQyAtPiBDIC0+IEMKKworSHlicmlkIHRvIE5CIG9yIE1CIFNJTEsgd2l0aCBSZWR1
bmRhbmN5OiAgSCAtPiBIIC0+IEgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAhUiAtPiBSCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDtTIC0+IFMgLT4gUworCitIeWJyaWQgdG8gV0IgU0lM
SzogICAgICAgICAgICAgICAgICAgICAgICBIIC0+IEggLT4gSCAtPiBjCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcICArCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBTIC0+IFMgLT4g
UworCitIeWJyaWQgdG8gQ0VMVCB3aXRoIFJlZHVuZGFuY3k6ICAgICAgICAgICBIIC0+IEggLT4g
SAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFSIC0+
IEMgLT4gQyAtPiBDCisKK0NFTFQgdG8gU0lMSyB3aXRoIFJlZHVuZGFuY3k6ICAgICAgICAgICAg
IEMgLT4gQyAtPiBDIC0+IFIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgO1MgLT4gUyAtPiBTCisKK0NFTFQgdG8gSHlicmlkIHdpdGgg
UmVkdW5kYW5jeTogICAgICAgICAgIEMgLT4gQyAtPiBDIC0+IFIKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfEggLT4gSCAtPiBICisK
K0tleToKK1MgICBTSUxLLW9ubHkgZnJhbWUgICAgICAgICAgICAgICAgIDsgICBTSUxLIGRlY29k
ZXIgcmVzZXQKK0ggICBIeWJyaWQgZnJhbWUgICAgICAgICAgICAgICAgICAgIHwgICBDRUxUIGFu
ZCBTSUxLIGRlY29kZXIgcmVzZXRzCitDICAgQ0VMVC1vbmx5IGZyYW1lICAgICAgICAgICAgICAg
ICAhICAgQ0VMVCBkZWNvZGVyIHJlc2V0CitjICAgQ0VMVCBvdmVybGFwICAgICAgICAgICAgICAg
ICAgICArICAgRGlyZWN0IG1peGluZworUiAgIFJlZHVuZGFudCBDRUxUIGZyYW1lICAgICAgICAg
ICAgJiAgIFdpbmRvd2VkIGNyb3NzLWxhcAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGUg
Zmlyc3QgdHdvIGFuZCB0aGUgbGFzdCB0d28gT3B1cyBmcmFtZXMgaW4gZWFjaCBleGFtcGxlIGFy
ZSBpbGx1c3RyYXRpdmUsCisgaS5lLiwgdGhlcmUgaXMgbm8gcmVxdWlyZW1lbnQgdGhhdCBhIHN0
cmVhbSByZW1haW4gaW4gdGhlIHNhbWUgY29uZmlndXJhdGlvbgorIGZvciB0aHJlZSBjb25zZWN1
dGl2ZSBmcmFtZXMgYmVmb3JlIG9yIGFmdGVyIGEgc3dpdGNoLgorPC90PgorCis8dD4KK1RoZSBi
ZWhhdmlvciBvZiB0cmFuc2l0aW9ucyB3aXRob3V0IHJlZHVuZGFuY3kgd2hlcmUgUExDIGlzIGFs
bG93ZWQgaXMgbm9uLW5vcm1hdGl2ZS4KK0FuIGVuY29kZXIgbWlnaHQgc3RpbGwgd2lzaCB0byB1
c2UgdGhlc2UgdHJhbnNpdGlvbnMgaWYsIGZvciBleGFtcGxlLCBpdAorIGRvZXNuJ3Qgd2FudCB0
byBhZGQgdGhlIGV4dHJhIGJpdHJhdGUgcmVxdWlyZWQgZm9yIHJlZHVuZGFuY3kgb3IgaWYgaXQg
bWFrZXMKKyBhIGRlY2lzaW9uIHRvIHN3aXRjaCBhZnRlciBpdCBoYXMgYWxyZWFkeSB0cmFuc21p
dHRlZCB0aGUgZnJhbWUgdGhhdCB3b3VsZAorIGhhdmUgaGFkIHRvIGNvbnRhaW4gdGhlIHJlZHVu
ZGFuY3kuCis8eHJlZiB0YXJnZXQ9Im5vbm5vcm1hdGl2ZV90cmFuc2l0aW9ucyIvPiBpbGx1c3Ry
YXRlcyB0aGUgcmVjb21tZW5kZWQKKyBjcm9zcy1sYXBwaW5nIGFuZCBkZWNvZGVyIHJlc2V0cyBm
b3IgdGhlc2UgdHJhbnNpdGlvbnMuCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiIGFuY2hvcj0ibm9u
bm9ybWF0aXZlX3RyYW5zaXRpb25zIgorIHRpdGxlPSJSZWNvbW1lbmRlZCBOb24tTm9ybWF0aXZl
IFRyYW5zaXRpb25zIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworU0lMSyB0
byBTSUxLIChhdWRpbyBiYW5kd2lkdGggY2hhbmdlKTogICAgUyAtPiBTIC0+IFMgICA7UyAtPiBT
IC0+IFMKKworTkIgb3IgTUIgU0lMSyB0byBIeWJyaWQ6ICAgICAgICAgICAgICAgICAgUyAtPiBT
IC0+IFMgICB8SCAtPiBIIC0+IEgKKworU0lMSyB0byBDRUxUIHdpdGhvdXQgUmVkdW5kYW5jeTog
ICAgICAgICAgUyAtPiBTIC0+IFMgLT4gUAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhQyAtPiBDIC0+IEMKKworSHlicmlkIHRvIE5C
IG9yIE1CIFNJTEs6ICAgICAgICAgICAgICAgICAgSCAtPiBIIC0+IEggLT4gYworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7UyAtPiBT
IC0+IFMKKworSHlicmlkIHRvIENFTFQgd2l0aG91dCBSZWR1bmRhbmN5OiAgICAgICAgSCAtPiBI
IC0+IEggLT4gUAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAhQyAtPiBDIC0+IEMKKworQ0VMVCB0byBTSUxLIHdpdGhvdXQgUmVkdW5k
YW5jeTogICAgICAgICAgQyAtPiBDIC0+IEMgLT4gUAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7UyAtPiBTIC0+IFMKKworQ0VMVCB0
byBIeWJyaWQgd2l0aG91dCBSZWR1bmRhbmN5OiAgICAgICAgQyAtPiBDIC0+IEMgLT4gUAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
SCAtPiBIIC0+IEgKKworS2V5OgorUyAgIFNJTEstb25seSBmcmFtZSAgICAgICAgICAgICAgICAg
OyAgIFNJTEsgZGVjb2RlciByZXNldAorSCAgIEh5YnJpZCBmcmFtZSAgICAgICAgICAgICAgICAg
ICAgfCAgIENFTFQgYW5kIFNJTEsgZGVjb2RlciByZXNldHMKK0MgICBDRUxULW9ubHkgZnJhbWUg
ICAgICAgICAgICAgICAgICEgICBDRUxUIGRlY29kZXIgcmVzZXQKK2MgICBDRUxUIG92ZXJsYXAg
ICAgICAgICAgICAgICAgICAgICsgICBEaXJlY3QgbWl4aW5nCitQICAgUGFja2V0IExvc3MgQ29u
Y2VhbG1lbnQgICAgICAgICAmICAgV2luZG93ZWQgY3Jvc3MtbGFwCitdXT48L2FydHdvcms+Cis8
L2ZpZ3VyZT4KK0VuY29kZXJzIFNIT1VMRCBOT1QgdXNlIG90aGVyIHRyYW5zaXRpb25zLCBlLmcu
LCB0aG9zZSB0aGF0IGludm9sdmUgcmVkdW5kYW5jeQorIGluIHdheXMgbm90IGlsbHVzdHJhdGVk
IGluIDx4cmVmIHRhcmdldD0ibm9ybWF0aXZlX3RyYW5zaXRpb25zIi8+LgorPC90PgorCis8L3Nl
Y3Rpb24+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCisKKzwhLS0gICoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiog
LS0+Cis8IS0tICAqKioqKioqKioqKioqKioqKioqKioqKioqKiAgIE9QVVMgRU5DT0RFUiAgICoq
KioqKioqKioqKioqKioqKioqKioqIC0tPgorPCEtLSAgKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAtLT4KKworPHNlY3Rp
b24gdGl0bGU9Ik9wdXMgRW5jb2RlciI+Cis8dD4KK0p1c3QgbGlrZSB0aGUgZGVjb2RlciwgdGhl
IE9wdXMgZW5jb2RlciBhbHNvIG5vcm1hbGx5IGNvbnNpc3RzIG9mIHR3byBtYWluIGJsb2Nrczog
dGhlCitTSUxLIGVuY29kZXIgYW5kIHRoZSBDRUxUIGVuY29kZXIuIEhvd2V2ZXIsIHVubGlrZSB0
aGUgY2FzZSBvZiB0aGUgZGVjb2RlciwgYSB2YWxpZAorKHRob3VnaCBwb3RlbnRpYWxseSBzdWJv
cHRpbWFsKSBPcHVzIGVuY29kZXIgaXMgbm90IHJlcXVpcmVkIHRvIHN1cHBvcnQgYWxsIG1vZGVz
IGFuZAorbWF5IHRodXMgb25seSBpbmNsdWRlIGEgU0lMSyBlbmNvZGVyIG1vZHVsZSBvciBhIENF
TFQgZW5jb2RlciBtb2R1bGUuCitUaGUgb3V0cHV0IGJpdC1zdHJlYW0gb2YgdGhlIE9wdXMgZW5j
b2RpbmcgY29udGFpbnMgYml0cyBmcm9tIHRoZSBTSUxLIGFuZCBDRUxUCisgZW5jb2RlcnMsIHRo
b3VnaCB0aGVzZSBhcmUgbm90IHNlcGFyYWJsZSBkdWUgdG8gdGhlIHVzZSBvZiBhIHJhbmdlIGNv
ZGVyLgorQSBibG9jayBkaWFncmFtIG9mIHRoZSBlbmNvZGVyIGlzIGlsbHVzdHJhdGVkIGJlbG93
LgorCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiIGFuY2hvcj0ib3B1cy1lbmNvZGVyLWZpZ3VyZSIg
dGl0bGU9Ik9wdXMgRW5jb2RlciI+Cis8YXJ0d29yaz4KKzwhW0NEQVRBWworICAgICAgICAgICAg
ICAgICAgICArLS0tLS0tLS0tLS0tKyAgICArLS0tLS0tLS0tKworICAgICAgICAgICAgICAgICAg
ICB8ICAgU2FtcGxlICAgfCAgICB8ICBTSUxLICAgfC0tLS0tLSsKKyAgICAgICAgICAgICAgICAg
Ky0+fCAgICBSYXRlICAgIHwtLS0+fCBFbmNvZGVyIHwgICAgICBWCisgICstLS0tLS0tLS0tLSsg
IHwgIHwgQ29udmVyc2lvbiB8ICAgIHwgICAgICAgICB8ICstLS0tLS0tLS0rCisgIHwgT3B0aW9u
YWwgIHwgIHwgICstLS0tLS0tLS0tLS0rICAgICstLS0tLS0tLS0rIHwgIFJhbmdlICB8CistPnwg
SGlnaC1wYXNzIHwtLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgRW5jb2RlciB8
LS0tLT4KKyAgfCAgRmlsdGVyICAgfCAgfCAgKy0tLS0tLS0tLS0tLS0tKyAgKy0tLS0tLS0tLSsg
fCAgICAgICAgIHwgQml0LQorICArLS0tLS0tLS0tLS0rICB8ICB8ICAgIERlbGF5ICAgICB8ICB8
ICBDRUxUICAgfCArLS0tLS0tLS0tKyBzdHJlYW0KKyAgICAgICAgICAgICAgICAgKy0+fCBDb21w
ZW5zYXRpb24gfC0+fCBFbmNvZGVyIHwgICAgICBeCisgICAgICAgICAgICAgICAgICAgIHwgICAg
ICAgICAgICAgIHwgIHwgICAgICAgICB8LS0tLS0tKworICAgICAgICAgICAgICAgICAgICArLS0t
LS0tLS0tLS0tLS0rICArLS0tLS0tLS0tKworXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwv
dD4KKworPHQ+CitGb3IgYSBub3JtYWwgZW5jb2RlciB3aGVyZSBib3RoIHRoZSBTSUxLIGFuZCB0
aGUgQ0VMVCBtb2R1bGVzIGFyZSBpbmNsdWRlZCwgYW4gb3B0aW1hbAorZW5jb2RlciBzaG91bGQg
c2VsZWN0IHdoaWNoIGNvZGluZyBtb2RlIHRvIHVzZSBhdCBydW4tdGltZSBkZXBlbmRpbmcgb24g
dGhlIGNvbmRpdGlvbnMuCitJbiB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uLCB0aGUgZnJh
bWUgc2l6ZSBpcyBzZWxlY3RlZCBieSB0aGUgYXBwbGljYXRpb24sIGJ1dCB0aGUKK290aGVyIGNv
bmZpZ3VyYXRpb24gcGFyYW1ldGVycyAobnVtYmVyIG9mIGNoYW5uZWxzLCBiYW5kd2lkdGgsIG1v
ZGUpIGFyZSBhdXRvbWF0aWNhbGx5CitzZWxlY3RlZCAodW5sZXNzIGV4cGxpY2l0bHkgb3ZlcnJp
ZGRlbiBieSB0aGUgYXBwbGljYXRpb24pIGRlcGVuZCBvbiB0aGUgZm9sbG93aW5nOgorPGxpc3Qg
c3R5bGU9InN5bWJvbHMiPgorPHQ+UmVxdWVzdGVkIGJpdHJhdGU8L3Q+Cis8dD5JbnB1dCBzYW1w
bGluZyByYXRlPC90PgorPHQ+VHlwZSBvZiBzaWduYWwgKHNwZWVjaCB2cyBtdXNpYyk8L3Q+Cis8
dD5GcmFtZSBzaXplIGluIHVzZTwvdD4KKzwvbGlzdD4KKworVGhlIHR5cGUgb2Ygc2lnbmFsIGN1
cnJlbnRseSBuZWVkcyB0byBiZSBwcm92aWRlZCBieSB0aGUgYXBwbGljYXRpb24gKHRob3VnaCBp
dCBjYW4gYmUKK2NoYW5nZWQgaW4gcmVhbC10aW1lKS4gQW4gT3B1cyBlbmNvZGVyIGltcGxlbWVu
dGF0aW9uIGNvdWxkIGFsc28gZG8gYXV0b21hdGljIGRldGVjdGlvbiwKK2J1dCBzaW5jZSBPcHVz
IGlzIGFuIGludGVyYWN0aXZlIGNvZGVjLCBzdWNoIGFuIGltcGxlbWVudGF0aW9uIHdvdWxkIGxp
a2VseSBoYXZlIHRvIGVpdGhlcgorZGVsYXkgdGhlIHNpZ25hbCAoZm9yIG5vbi1pbnRlcmFjdGl2
ZSBhcHBsaWNhdGlvbnMpIG9yIGRlbGF5IHRoZSBtb2RlIHN3aXRjaGluZyBkZWNpc2lvbnMgKGZv
cgoraW50ZXJhY3RpdmUgYXBwbGljYXRpb25zKS4KKzwvdD4KKworPHQ+CitXaGVuIHRoZSBlbmNv
ZGVyIGlzIGNvbmZpZ3VyZWQgZm9yIHZvaWNlIG92ZXIgSVAgYXBwbGljYXRpb25zLCB0aGUgaW5w
dXQgc2lnbmFsIGlzCitmaWx0ZXJlZCBieSBhIGhpZ2gtcGFzcyBmaWx0ZXIgdG8gcmVtb3ZlIHRo
ZSBsb3dlc3QgcGFydCBvZiB0aGUgc3BlY3RydW0KK3RoYXQgY29udGFpbnMgbGl0dGxlIHNwZWVj
aCBlbmVyZ3kgYW5kIG1heSBjb250YWluIGJhY2tncm91bmQgbm9pc2UuIFRoaXMgaXMgYSBzZWNv
bmQgb3JkZXIKK0F1dG8gUmVncmVzc2l2ZSBNb3ZpbmcgQXZlcmFnZSAoaS5lLiwgd2l0aCBwb2xl
cyBhbmQgemVyb3MpIGZpbHRlciB3aXRoIGEgY3V0LW9mZiBmcmVxdWVuY3kgYXJvdW5kIDUwJm5i
c3A7SHouCitJbiB0aGUgZnV0dXJlLCBhIG11c2ljIGRldGVjdG9yIG1heSBhbHNvIGJlIHVzZWQg
dG8gbG93ZXIgdGhlIGN1dC1vZmYgZnJlcXVlbmN5IHdoZW4gdGhlCitpbnB1dCBzaWduYWwgaXMg
ZGV0ZWN0ZWQgdG8gYmUgbXVzaWMgcmF0aGVyIHRoYW4gc3BlZWNoLgorPC90PgorCis8c2VjdGlv
biBhbmNob3I9InJhbmdlLWVuY29kZXIiIHRpdGxlPSJSYW5nZSBFbmNvZGVyIj4KKzx0PgorVGhl
IHJhbmdlIGNvZGVyIGFjdHMgYXMgdGhlIGJpdC1wYWNrZXIgZm9yIE9wdXMuCitJdCBpcyB1c2Vk
IGluIHRocmVlIGRpZmZlcmVudCB3YXlzOiB0byBlbmNvZGUKKzxsaXN0IHN0eWxlPSJzeW1ib2xz
Ij4KKzx0PgorRW50cm9weS1jb2RlZCBzeW1ib2xzIHdpdGggYSBmaXhlZCBwcm9iYWJpbGl0eSBt
b2RlbCB1c2luZyBlY19lbmNvZGUoKQorIChlbnRlbmMuYyksCis8L3Q+Cis8dD4KK0ludGVnZXJz
IGZyb20gMCB0byAoMioqTSZuYnNwOy0mbmJzcDsxKSB1c2luZyBlY19lbmNfdWludCgpIG9yIGVj
X2VuY19iaXRzKCkKKyAoZW50ZW5jLmMpLDwvdD4KKzx0PgorSW50ZWdlcnMgZnJvbSAwIHRvIChm
dCZuYnNwOy0mbmJzcDsxKSAod2hlcmUgZnQgaXMgbm90IGEgcG93ZXIgb2YgdHdvKSB1c2luZwor
IGVjX2VuY191aW50KCkgKGVudGVuYy5jKS4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitU
aGUgcmFuZ2UgZW5jb2RlciBtYWludGFpbnMgYW4gaW50ZXJuYWwgc3RhdGUgdmVjdG9yIGNvbXBv
c2VkIG9mIHRoZSBmb3VyLXR1cGxlCisgKHZhbCwmbmJzcDtybmcsJm5ic3A7cmVtLCZuYnNwO2V4
dCkgcmVwcmVzZW50aW5nIHRoZSBsb3cgZW5kIG9mIHRoZSBjdXJyZW50CisgcmFuZ2UsIHRoZSBz
aXplIG9mIHRoZSBjdXJyZW50IHJhbmdlLCBhIHNpbmdsZSBidWZmZXJlZCBvdXRwdXQgYnl0ZSwg
YW5kIGEKKyBjb3VudCBvZiBhZGRpdGlvbmFsIGNhcnJ5LXByb3BhZ2F0aW5nIG91dHB1dCBieXRl
cy4KK0JvdGggdmFsIGFuZCBybmcgYXJlIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2VyIHZhbHVlcywg
cmVtIGlzIGEgYnl0ZSB2YWx1ZSBvcgorIGxlc3MgdGhhbiAyNTUgb3IgdGhlIHNwZWNpYWwgdmFs
dWUgLTEsIGFuZCBleHQgaXMgYW4gdW5zaWduZWQgaW50ZWdlciB3aXRoIGF0CisgbGVhc3QgMTEg
Yml0cy4KK1RoaXMgc3RhdGUgdmVjdG9yIGlzIGluaXRpYWxpemVkIGF0IHRoZSBzdGFydCBvZiBl
YWNoIGVhY2ggZnJhbWUgdG8gdGhlIHZhbHVlCisgKDAsJm5ic3A7MioqMzEsJm5ic3A7LTEsJm5i
c3A7MCkuCitBZnRlciBlbmNvZGluZyBhIHNlcXVlbmNlIG9mIHN5bWJvbHMsIHRoZSB2YWx1ZSBv
ZiBybmcgaW4gdGhlIGVuY29kZXIgc2hvdWxkCisgZXhhY3RseSBtYXRjaCB0aGUgdmFsdWUgb2Yg
cm5nIGluIHRoZSBkZWNvZGVyIGFmdGVyIGRlY29kaW5nIHRoZSBzYW1lIHNlcXVlbmNlCisgb2Yg
c3ltYm9scy4KK1RoaXMgaXMgYSBwb3dlcmZ1bCB0b29sIGZvciBkZXRlY3RpbmcgZXJyb3JzIGlu
IGVpdGhlciBhbiBlbmNvZGVyIG9yIGRlY29kZXIKKyBpbXBsZW1lbnRhdGlvbi4KK1RoZSB2YWx1
ZSBvZiB2YWwsIG9uIHRoZSBvdGhlciBoYW5kLCByZXByZXNlbnRzIGRpZmZlcmVudCB0aGluZ3Mg
aW4gdGhlIGVuY29kZXIKKyBhbmQgZGVjb2RlciwgYW5kIGlzIG5vdCBleHBlY3RlZCB0byBtYXRj
aC4KKzwvdD4KKworPHQ+CitUaGUgZGVjb2RlciBoYXMgbm8gYW5hbG9nIGZvciByZW0gYW5kIGV4
dC4KK1RoZXNlIGFyZSB1c2VkIHRvIHBlcmZvcm0gY2FycnkgcHJvcGFnYXRpb24gaW4gdGhlIHJl
bm9ybWFsaXphdGlvbiBsb29wIGJlbG93LgorRWFjaCBpdGVyYXRpb24gb2YgdGhpcyBsb29wIHBy
b2R1Y2VzIDkgYml0cyBvZiBvdXRwdXQsIGNvbnNpc3Rpbmcgb2YgOCBkYXRhCisgYml0cyBhbmQg
YSBjYXJyeSBmbGFnLgorVGhlIGVuY29kZXIgY2Fubm90IGRldGVybWluZSB0aGUgZmluYWwgdmFs
dWUgb2YgdGhlIG91dHB1dCBieXRlcyB1bnRpbCBpdAorIHByb3BhZ2F0ZXMgdGhlc2UgY2Fycnkg
ZmxhZ3MuCitUaGVyZWZvcmUgdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBidWZmZXJzIGEg
c2luZ2xlIG5vbi1wcm9wYWdhdGluZyBvdXRwdXQKKyBieXRlIChpLmUuLCBvbmUgbGVzcyB0aGFu
IDI1NSkgaW4gcmVtIGFuZCBrZWVwcyBhIGNvdW50IG9mIGFkZGl0aW9uYWwKKyBwcm9wYWdhdGlu
ZyAoaS5lLiwgMjU1KSBvdXRwdXQgYnl0ZXMgaW4gZXh0LgorQW4gaW1wbGVtZW50YXRpb24gbWF5
IGNob29zZSB0byB1c2UgYW55IG1hdGhlbWF0aWNhbGx5IGVxdWl2YWxlbnQgc2NoZW1lIHRvCisg
cGVyZm9ybSBjYXJyeSBwcm9wYWdhdGlvbi4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJlbmNv
ZGluZy1zeW1ib2xzIiB0aXRsZT0iRW5jb2RpbmcgU3ltYm9scyI+Cis8dD4KK1RoZSBtYWluIGVu
Y29kaW5nIGZ1bmN0aW9uIGlzIGVjX2VuY29kZSgpIChlbnRlbmMuYyksIHdoaWNoIGVuY29kZXMg
c3ltYm9sIGsgaW4KKyB0aGUgY3VycmVudCBjb250ZXh0IHVzaW5nIHRoZSBzYW1lIHRocmVlLXR1
cGxlIChmbFtrXSwmbmJzcDtmaFtrXSwmbmJzcDtmdCkKKyBhcyB0aGUgZGVjb2RlciB0byBkZXNj
cmliZSB0aGUgcmFuZ2Ugb2YgdGhlIHN5bWJvbCAoc2VlCisgPHhyZWYgdGFyZ2V0PSJyYW5nZS1k
ZWNvZGVyIi8+KS4KKzwvdD4KKzx0PgorZWNfZW5jb2RlKCkgdXBkYXRlcyB0aGUgc3RhdGUgb2Yg
dGhlIGVuY29kZXIgYXMgZm9sbG93cy4KK0lmIGZsW2tdIGlzIGdyZWF0ZXIgdGhhbiB6ZXJvLCB0
aGVuCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFb
Q0RBVEFbCisgICAgICAgICAgICAgICAgICBybmcKK3ZhbCA9IHZhbCArIHJuZyAtIC0tLSAqIChm
dCAtIGZsKSAsCisgICAgICAgICAgICAgICAgICBmdAorCisgICAgICBybmcKK3JuZyA9IC0tLSAq
IChmaCAtIGZsKSAuCisgICAgICBmdAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitPdGhlcndp
c2UsIHZhbCBpcyB1bmNoYW5nZWQgYW5kCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICBybmcKK3JuZyA9IHJuZyAt
IC0tLSAqIChmaCAtIGZsKSAuCisgICAgICAgICAgICBmdAorXV0+PC9hcnR3b3JrPgorPC9maWd1
cmU+CitUaGUgZGl2aXNpb25zIGhlcmUgYXJlIGludGVnZXIgZGl2aXNpb24uCis8L3Q+CisKKzxz
ZWN0aW9uIGFuY2hvcj0icmFuZ2UtZW5jb2Rlci1yZW5vcm0iIHRpdGxlPSJSZW5vcm1hbGl6YXRp
b24iPgorPHQ+CitBZnRlciB0aGlzIHVwZGF0ZSwgdGhlIHJhbmdlIGlzIG5vcm1hbGl6ZWQgdXNp
bmcgYSBwcm9jZWR1cmUgdmVyeSBzaW1pbGFyIHRvCisgdGhhdCBvZiA8eHJlZiB0YXJnZXQ9InJh
bmdlLWRlY29kZXItcmVub3JtIi8+LCBpbXBsZW1lbnRlZCBieQorIGVjX2VuY19ub3JtYWxpemUo
KSAoZW50ZW5jLmMpLgorVGhlIGZvbGxvd2luZyBwcm9jZXNzIGlzIHJlcGVhdGVkIHVudGlsIHJu
ZyZuYnNwOyZndDsmbmJzcDsyKioyMy4KK0ZpcnN0LCB0aGUgdG9wIDkgYml0cyBvZiB2YWwsICh2
YWwmZ3Q7Jmd0OzIzKSwgYXJlIHNlbnQgdG8gdGhlIGNhcnJ5IGJ1ZmZlciwKKyBkZXNjcmliZWQg
aW4gPHhyZWYgdGFyZ2V0PSJlY19lbmNfY2Fycnlfb3V0Ii8+LgorVGhlbiwgdGhlIGVuY29kZXIg
c2V0cworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWwordmFsID0gKHZhbDw8OCkgJiAweDdGRkZGRkZGICwKKworcm5nID0gcm5nPDw4IC4K
K11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBh
bmNob3I9ImVjX2VuY19jYXJyeV9vdXQiCisgdGl0bGU9IkNhcnJ5IFByb3BhZ2F0aW9uIGFuZCBP
dXRwdXQgQnVmZmVyaW5nIj4KKzx0PgorVGhlIGZ1bmN0aW9uIGVjX2VuY19jYXJyeV9vdXQoKSAo
ZW50ZW5jLmMpIGltcGxlbWVudHMgY2FycnkgcHJvcGFnYXRpb24gYW5kCisgb3V0cHV0IGJ1ZmZl
cmluZy4KK0l0IHRha2VzIGFzIGlucHV0IGEgOS1iaXQgdmFsdWUsIGMsIGNvbnNpc3Rpbmcgb2Yg
OCBkYXRhIGJpdHMgYW5kIGFuIGFkZGl0aW9uYWwKKyBjYXJyeSBiaXQuCitJZiBjIGlzIGVxdWFs
IHRvIHRoZSB2YWx1ZSAyNTUsIHRoZW4gZXh0IGlzIHNpbXBseSBpbmNyZW1lbnRlZCwgYW5kIG5v
IG90aGVyCisgc3RhdGUgdXBkYXRlcyBhcmUgcGVyZm9ybWVkLgorT3RoZXJ3aXNlLCBsZXQgYiZu
YnNwOz0mbmJzcDsoYyZndDsmZ3Q7OCkgYmUgdGhlIGNhcnJ5IGJpdC4KK1RoZW4sCis8bGlzdCBz
dHlsZT0ic3ltYm9scyI+Cis8dD4KK0lmIHRoZSBidWZmZXJlZCBieXRlIHJlbSBjb250YWlucyBh
IHZhbHVlIG90aGVyIHRoYW4gLTEsIHRoZSBlbmNvZGVyIG91dHB1dHMKKyB0aGUgYnl0ZSAocmVt
Jm5ic3A7KyZuYnNwO2IpLgorT3RoZXJ3aXNlLCBpZiByZW0gaXMgLTEsIG5vIGJ5dGUgaXMgb3V0
cHV0LgorPC90PgorPHQ+CitJZiBleHQgaXMgbm9uLXplcm8sIHRoZW4gdGhlIGVuY29kZXIgb3V0
cHV0cyBleHQgYnl0ZXMtLS1hbGwgd2l0aCBhIHZhbHVlIG9mIDAKKyBpZiBiIGlzIHNldCwgb3Ig
MjU1IGlmIGIgaXMgdW5zZXQtLS1hbmQgc2V0cyBleHQgdG8gMC4KKzwvdD4KKzx0PgorcmVtIGlz
IHNldCB0byB0aGUgOCBkYXRhIGJpdHM6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCityZW0gPSBjICYgMjU1IC4KK11dPjwvYXJ0d29y
az4KKzwvZmlndXJlPgorPC90PgorPC9saXN0PgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZW5jb2RpbmctYWx0ZXJuYXRlIiB0aXRsZT0iQWx0ZXJu
YXRlIEVuY29kaW5nIE1ldGhvZHMiPgorPHQ+CitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9u
IHVzZXMgdGhyZWUgYWRkaXRpb25hbCBlbmNvZGluZyBtZXRob2RzIHRoYXQgYXJlCisgZXhhY3Rs
eSBlcXVpdmFsZW50IHRvIHRoZSBhYm92ZSwgYnV0IG1ha2UgYXNzdW1wdGlvbnMgYW5kIHNpbXBs
aWZpY2F0aW9ucyB0aGF0CisgYWxsb3cgZm9yIGEgbW9yZSBlZmZpY2llbnQgaW1wbGVtZW50YXRp
b24uCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0iZWNfZW5jb2RlX2JpbiIgdGl0bGU9ImVjX2Vu
Y29kZV9iaW4oKSI+Cis8dD4KK1RoZSBmaXJzdCBpcyBlY19lbmNvZGVfYmluKCkgKGVudGVuYy5j
KSwgZGVmaW5lZCB1c2luZyB0aGUgcGFyYW1ldGVyIGZ0YgorIGluc3RlYWQgb2YgZnQuCitJdCBp
cyBtYXRoZW1hdGljYWxseSBlcXVpdmFsZW50IHRvIGNhbGxpbmcgZWNfZW5jb2RlKCkgd2l0aAor
IGZ0Jm5ic3A7PSZuYnNwOygxJmx0OyZsdDtmdGIpLCBidXQgYXZvaWRzIHVzaW5nIGRpdmlzaW9u
LgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImVjX2VuY19iaXRfbG9ncCIg
dGl0bGU9ImVjX2VuY19iaXRfbG9ncCgpIj4KKzx0PgorVGhlIG5leHQgaXMgZWNfZW5jX2JpdF9s
b2dwKCkgKGVudGVuYy5jKSwgd2hpY2ggZW5jb2RlcyBhIHNpbmdsZSBiaW5hcnkgc3ltYm9sLgor
VGhlIGNvbnRleHQgaXMgZGVzY3JpYmVkIGJ5IGEgc2luZ2xlIHBhcmFtZXRlciwgbG9ncCwgd2hp
Y2ggaXMgdGhlIGFic29sdXRlCisgdmFsdWUgb2YgdGhlIGJhc2UtMiBsb2dhcml0aG0gb2YgdGhl
IHByb2JhYmlsaXR5IG9mIGEgIjEiLgorSXQgaXMgbWF0aGVtYXRpY2FsbHkgZXF1aXZhbGVudCB0
byBjYWxsaW5nIGVjX2VuY29kZSgpIHdpdGggdGhlIDMtdHVwbGUKKyAoZmxba10mbmJzcDs9Jm5i
c3A7MCwgZmhba10mbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2xvZ3ApJm5ic3A7LSZuYnNwOzEsCisg
ZnQmbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2xvZ3ApKSBpZiBrIGlzIDAgYW5kIHdpdGgKKyAoZmxb
a10mbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2xvZ3ApJm5ic3A7LSZuYnNwOzEsCisgZmhba10mbmJz
cDs9Jm5ic3A7ZnQmbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2xvZ3ApKSBpZiBrIGlzIDEuCitUaGUg
aW1wbGVtZW50YXRpb24gcmVxdWlyZXMgbm8gbXVsdGlwbGljYXRpb25zIG9yIGRpdmlzaW9ucy4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJlY19lbmNfaWNkZiIgdGl0bGU9
ImVjX2VuY19pY2RmKCkiPgorPHQ+CitUaGUgbGFzdCBpcyBlY19lbmNfaWNkZigpIChlbnRlbmMu
YyksIHdoaWNoIGVuY29kZXMgYSBzaW5nbGUgYmluYXJ5IHN5bWJvbCB3aXRoCisgYSB0YWJsZS1i
YXNlZCBjb250ZXh0IG9mIHVwIHRvIDggYml0cy4KK1RoaXMgdXNlcyB0aGUgc2FtZSBpY2RmIHRh
YmxlIGFzIGVjX2RlY19pY2RmKCkgZnJvbQorIDx4cmVmIHRhcmdldD0iZWNfZGVjX2ljZGYiLz4u
CitUaGUgZnVuY3Rpb24gaXMgbWF0aGVtYXRpY2FsbHkgZXF1aXZhbGVudCB0byBjYWxsaW5nIGVj
X2VuY29kZSgpIHdpdGgKKyBmbFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7ZnRiKSZuYnNwOy0m
bmJzcDtpY2RmW2stMV0gKG9yIDAgaWYKKyBrJm5ic3A7PT0mbmJzcDswKSwgZmhba10mbmJzcDs9
Jm5ic3A7KDEmbHQ7Jmx0O2Z0YikmbmJzcDstJm5ic3A7aWNkZltrXSwgYW5kCisgZnQmbmJzcDs9
Jm5ic3A7KDEmbHQ7Jmx0O2Z0YikuCitUaGlzIG9ubHkgc2F2ZXMgYSBmZXcgYXJpdGhtZXRpYyBv
cGVyYXRpb25zIG92ZXIgZWNfZW5jb2RlX2JpbigpLCBidXQgYWxsb3dzCisgdGhlIGVuY29kZXIg
dG8gdXNlIHRoZSBzYW1lIGljZGYgdGFibGVzIGFzIHRoZSBkZWNvZGVyLgorPC90PgorPC9zZWN0
aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZW5jb2RpbmctYml0cyIgdGl0
bGU9IkVuY29kaW5nIFJhdyBCaXRzIj4KKzx0PgorVGhlIHJhdyBiaXRzIHVzZWQgYnkgdGhlIENF
TFQgbGF5ZXIgYXJlIHBhY2tlZCBhdCB0aGUgZW5kIG9mIHRoZSBidWZmZXIgdXNpbmcKKyBlY19l
bmNfYml0cygpIChlbnRlbmMuYykuCitCZWNhdXNlIHRoZSByYXcgYml0cyBtYXkgY29udGludWUg
aW50byB0aGUgbGFzdCBieXRlIG91dHB1dCBieSB0aGUgcmFuZ2UgY29kZXIKKyBpZiB0aGVyZSBp
cyByb29tIGluIHRoZSBsb3ctb3JkZXIgYml0cywgdGhlIGVuY29kZXIgbXVzdCBiZSBwcmVwYXJl
ZCB0byBtZXJnZQorIHRoZXNlIHZhbHVlcyBpbnRvIGEgc2luZ2xlIGJ5dGUuCitUaGUgcHJvY2Vk
dXJlIGluIDx4cmVmIHRhcmdldD0iZW5jb2Rlci1maW5hbGl6aW5nIi8+IGRvZXMgdGhpcyBpbiBh
IHdheSB0aGF0CisgZW5zdXJlcyBib3RoIHRoZSByYW5nZSBjb2RlZCBkYXRhIGFuZCB0aGUgcmF3
IGJpdHMgY2FuIGJlIGRlY29kZWQKKyBzdWNjZXNzZnVsbHkuCis8L3Q+Cis8L3NlY3Rpb24+CisK
KzxzZWN0aW9uIGFuY2hvcj0iZW5jb2RpbmctaW50cyIgdGl0bGU9IkVuY29kaW5nIFVuaWZvcm1s
eSBEaXN0cmlidXRlZCBJbnRlZ2VycyI+Cis8dD4KK1RoZSBmdW5jdGlvbiBlY19lbmNfdWludCgp
IChlbnRlbmMuYykgZW5jb2RlcyBvbmUgb2YgZnQgZXF1aXByb2JhYmxlIHN5bWJvbHMgaW4KKyB0
aGUgcmFuZ2UgMCB0byAoZnQmbmJzcDstJm5ic3A7MSksIGluY2x1c2l2ZSwgZWFjaCB3aXRoIGEg
ZnJlcXVlbmN5IG9mIDEsCisgd2hlcmUgZnQgbWF5IGJlIGFzIGxhcmdlIGFzICgyKiozMiZuYnNw
Oy0mbmJzcDsxKS4KK0xpa2UgdGhlIGRlY29kZXIgKHNlZSA8eHJlZiB0YXJnZXQ9ImVjX2RlY191
aW50Ii8+KSwgaXQgc3BsaXRzIHVwIHRoZQorIHZhbHVlIGludG8gYSByYW5nZSBjb2RlZCBzeW1i
b2wgcmVwcmVzZW50aW5nIHVwIHRvIDggb2YgdGhlIGhpZ2ggYml0cywgYW5kLCBpZgorIG5lY2Vz
c2FyeSwgcmF3IGJpdHMgcmVwcmVzZW50aW5nIHRoZSByZW1haW5kZXIgb2YgdGhlIHZhbHVlLgor
PC90PgorPHQ+CitlY19lbmNfdWludCgpIHRha2VzIGEgdHdvLXR1cGxlICh0LCZuYnNwO2Z0KSwg
d2hlcmUgdCBpcyB0aGUgdmFsdWUgdG8gYmUKKyBlbmNvZGVkLCAwJm5ic3A7Jmx0Oz0mbmJzcDt0
Jm5ic3A7Jmx0OyZuYnNwO2Z0LCBhbmQgZnQgaXMgbm90IG5lY2Vzc2FyaWx5IGEKKyBwb3dlciBv
ZiB0d28uCitMZXQgZnRiJm5ic3A7PSZuYnNwO2lsb2coZnQmbmJzcDstJm5ic3A7MSksIGkuZS4s
IHRoZSBudW1iZXIgb2YgYml0cyByZXF1aXJlZAorIHRvIHN0b3JlIChmdCZuYnNwOy0mbmJzcDsx
KSBpbiB0d28ncyBjb21wbGVtZW50IG5vdGF0aW9uLgorSWYgZnRiIGlzIDggb3IgbGVzcywgdGhl
biB0IGlzIGVuY29kZWQgZGlyZWN0bHkgdXNpbmcgZWNfZW5jb2RlKCkgd2l0aCB0aGUKKyB0aHJl
ZS10dXBsZSAodCwgdCZuYnNwOysmbmJzcDsxLCBmdCkuCis8L3Q+Cis8dD4KK0lmIGZ0YiBpcyBn
cmVhdGVyIHRoYW4gOCwgdGhlbiB0aGUgdG9wIDggYml0cyBvZiB0IGFyZSBlbmNvZGVkIHVzaW5n
IHRoZQorIHRocmVlLXR1cGxlICh0Jmd0OyZndDsoZnRiJm5ic3A7LSZuYnNwOzgpLAorICh0Jmd0
OyZndDsoZnRiJm5ic3A7LSZuYnNwOzgpKSZuYnNwOysmbmJzcDsxLAorICgoZnQmbmJzcDstJm5i
c3A7MSkmZ3Q7Jmd0OyhmdGImbmJzcDstJm5ic3A7OCkpJm5ic3A7KyZuYnNwOzEpLCBhbmQgdGhl
CisgcmVtYWluaW5nIGJpdHMsCisgKHQmbmJzcDsmYW1wOyZuYnNwOygoMSZsdDsmbHQ7KGZ0YiZu
YnNwOy0mbmJzcDs4KSkmbmJzcDstJm5ic3A7MSksCisgYXJlIGVuY29kZWQgYXMgcmF3IGJpdHMg
d2l0aCBlY19lbmNfYml0cygpLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9
ImVuY29kZXItZmluYWxpemluZyIgdGl0bGU9IkZpbmFsaXppbmcgdGhlIFN0cmVhbSI+Cis8dD4K
K0FmdGVyIGFsbCBzeW1ib2xzIGFyZSBlbmNvZGVkLCB0aGUgc3RyZWFtIG11c3QgYmUgZmluYWxp
emVkIGJ5IG91dHB1dHRpbmcgYQorIHZhbHVlIGluc2lkZSB0aGUgY3VycmVudCByYW5nZS4KK0xl
dCBlbmQgYmUgdGhlIGludGVnZXIgaW4gdGhlIGludGVydmFsIFt2YWwsJm5ic3A7dmFsJm5ic3A7
KyZuYnNwO3JuZykgd2l0aCB0aGUKKyBsYXJnZXN0IG51bWJlciBvZiB0cmFpbGluZyB6ZXJvIGJp
dHMsIGIsIHN1Y2ggdGhhdAorIChlbmQmbmJzcDsrJm5ic3A7KDEmbHQ7Jmx0O2IpJm5ic3A7LSZu
YnNwOzEpIGlzIGFsc28gaW4gdGhlIGludGVydmFsCisgW3ZhbCwmbmJzcDt2YWwmbmJzcDsrJm5i
c3A7cm5nKS4KK1RoaXMgY2hvaWNlIG9mIGVuZCBhbGxvd3MgdGhlIG1heGltdW0gbnVtYmVyIG9m
IHRyYWlsaW5nIGJpdHMgdG8gYmUgc2V0IHRvCisgYXJiaXRyYXJ5IHZhbHVlcyB3aGlsZSBzdGls
bCBlbnN1cmluZyB0aGUgcmFuZ2UgY29kZWQgcGFydCBvZiB0aGUgYnVmZmVyIGNhbgorIGJlIGRl
Y29kZWQgY29ycmVjdGx5LgorVGhlbiwgd2hpbGUgZW5kIGlzIG5vdCB6ZXJvLCB0aGUgdG9wIDkg
Yml0cyBvZiBlbmQsIGkuZS4sIChlbmQmZ3Q7Jmd0OzIzKSwgYXJlCisgcGFzc2VkIHRvIHRoZSBj
YXJyeSBidWZmZXIgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBwcm9jZWR1cmUgaW4KKyA8eHJlZiB0
YXJnZXQ9ImVjX2VuY19jYXJyeV9vdXQiLz4sIGFuZCBlbmQgaXMgdXBkYXRlZCB2aWEKKzxmaWd1
cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2Vu
ZCA9IChlbmQ8PDgpICYgMHg3RkZGRkZGRiAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0Zp
bmFsbHksIGlmIHRoZSBidWZmZXJlZCBvdXRwdXQgYnl0ZSwgcmVtLCBpcyBuZWl0aGVyIHplcm8g
bm9yIHRoZSBzcGVjaWFsCisgdmFsdWUgLTEsIG9yIHRoZSBjYXJyeSBjb3VudCwgZXh0LCBpcyBn
cmVhdGVyIHRoYW4gemVybywgdGhlbiA5IHplcm8gYml0cyBhcmUKKyBzZW50IHRvIHRoZSBjYXJy
eSBidWZmZXIgdG8gZmx1c2ggaXQgdG8gdGhlIG91dHB1dCBidWZmZXIuCitXaGVuIG91dHB1dHRp
bmcgdGhlIGZpbmFsIGJ5dGUgZnJvbSB0aGUgcmFuZ2UgY29kZXIsIGlmIGl0IHdvdWxkIG92ZXJs
YXAgYW55CisgcmF3IGJpdHMgYWxyZWFkeSBwYWNrZWQgaW50byB0aGUgZW5kIG9mIHRoZSBvdXRw
dXQgYnVmZmVyLCB0aGV5IHNob3VsZCBiZSBPUmVkCisgaW50byB0aGUgc2FtZSBieXRlLgorVGhl
IGJpdCBhbGxvY2F0aW9uIHJvdXRpbmVzIGluIHRoZSBDRUxUIGxheWVyIHNob3VsZCBlbnN1cmUg
dGhhdCB0aGlzIGNhbiBiZQorIGRvbmUgd2l0aG91dCBjb3JydXB0aW5nIHRoZSByYW5nZSBjb2Rl
ciBkYXRhIHNvIGxvbmcgYXMgZW5kIGlzIGNob3NlbiBhcworIGRlc2NyaWJlZCBhYm92ZS4KK0lm
IHRoZXJlIGlzIGFueSBzcGFjZSBiZXR3ZWVuIHRoZSBlbmQgb2YgdGhlIHJhbmdlIGNvZGVyIGRh
dGEgYW5kIHRoZSBlbmQgb2YKKyB0aGUgcmF3IGJpdHMsIGl0IGlzIHBhZGRlZCB3aXRoIHplcm8g
Yml0cy4KK1RoaXMgZW50aXJlIHByb2Nlc3MgaXMgaW1wbGVtZW50ZWQgYnkgZWNfZW5jX2RvbmUo
KSAoZW50ZW5jLmMpLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImVuY29k
ZXItdGVsbCIgdGl0bGU9IkN1cnJlbnQgQml0IFVzYWdlIj4KKzx0PgorICAgVGhlIGJpdCBhbGxv
Y2F0aW9uIHJvdXRpbmVzIGluIE9wdXMgbmVlZCB0byBiZSBhYmxlIHRvIGRldGVybWluZSBhCisg
ICBjb25zZXJ2YXRpdmUgdXBwZXIgYm91bmQgb24gdGhlIG51bWJlciBvZiBiaXRzIHRoYXQgaGF2
ZSBiZWVuIHVzZWQKKyAgIHRvIGVuY29kZSB0aGUgY3VycmVudCBmcmFtZSB0aHVzIGZhci4gVGhp
cyBkcml2ZXMgYWxsb2NhdGlvbgorICAgZGVjaXNpb25zIGFuZCBlbnN1cmVzIHRoYXQgdGhlIHJh
bmdlIGNvZGVyIGFuZCByYXcgYml0cyB3aWxsIG5vdAorICAgb3ZlcmZsb3cgdGhlIG91dHB1dCBi
dWZmZXIuIFRoaXMgaXMgY29tcHV0ZWQgaW4gdGhlCisgICByZWZlcmVuY2UgaW1wbGVtZW50YXRp
b24gdG8gd2hvbGUtYml0IHByZWNpc2lvbiBieQorICAgdGhlIGZ1bmN0aW9uIGVjX3RlbGwoKSAo
ZW50Y29kZS5oKSBhbmQgdG8gZnJhY3Rpb25hbCAxLzh0aCBiaXQKKyAgIHByZWNpc2lvbiBieSB0
aGUgZnVuY3Rpb24gZWNfdGVsbF9mcmFjKCkgKGVudGNvZGUuYykuCisgICBMaWtlIGFsbCBvcGVy
YXRpb25zIGluIHRoZSByYW5nZSBjb2RlciwgaXQgbXVzdCBiZSBpbXBsZW1lbnRlZCBpbiBhCisg
ICBiaXQtZXhhY3QgbWFubmVyLCBhbmQgbXVzdCBwcm9kdWNlIGV4YWN0bHkgdGhlIHNhbWUgdmFs
dWUgcmV0dXJuZWQgYnkKKyAgIHRoZSBzYW1lIGZ1bmN0aW9ucyBpbiB0aGUgZGVjb2RlciBhZnRl
ciBkZWNvZGluZyB0aGUgc2FtZSBzeW1ib2xzLgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIHRpdGxlPSdTSUxLIEVuY29kZXInPgorICA8dD4KKyAgICBJbiBtYW55
IHJlc3BlY3RzIHRoZSBTSUxLIGVuY29kZXIgbWlycm9ycyB0aGUgU0lMSyBkZWNvZGVyIGRlc2Ny
aWJlZAorICAgIGluIDx4cmVmIHRhcmdldD0nc2lsa19kZWNvZGVyX291dGxpbmUnLz4uCisgICAg
RGV0YWlscyBzdWNoIGFzIHRoZSBxdWFudGl6YXRpb24gYW5kIHJhbmdlIGNvZGVyIHRhYmxlcyBj
YW4gYmUgZm91bmQKKyAgICB0aGVyZSwgd2hpbGUgdGhpcyBzZWN0aW9uIGRlc2NyaWJlcyB0aGUg
aGlnaC1sZXZlbCBkZXNpZ24gY2hvaWNlcyB0aGF0CisgICAgd2VyZSBtYWRlLgorICAgIFRoZSBk
aWFncmFtIGJlbG93IHNob3dzIHRoZSBiYXNpYyBtb2R1bGVzIG9mIHRoZSBTSUxLIGVuY29kZXIu
Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiIGFuY2hvcj0ic2lsa19lbmNvZGVyX2ZpZ3VyZSIgdGl0
bGU9IlNJTEsgRW5jb2RlciI+Cis8YXJ0d29yaz4KKzwhW0NEQVRBWworICAgICAgICstLS0tLS0t
LS0tKyAgICArLS0tLS0tLS0rICAgICstLS0tLS0tLS0rCisgICAgICAgfCAgU2FtcGxlICB8ICAg
IHwgU3RlcmVvIHwgICAgfCAgU0lMSyAgIHwKKy0tLS0tLT58ICAgUmF0ZSAgIHwtLS0+fCBNaXhp
bmcgfC0tLT58ICBDb3JlICAgfC0tLS0tLS0tLS0+CitJbnB1dCAgfENvbnZlcnNpb258ICAgIHwg
ICAgICAgIHwgICAgfCBFbmNvZGVyIHwgIEJpdHN0cmVhbQorICAgICAgICstLS0tLS0tLS0tKyAg
ICArLS0tLS0tLS0rICAgICstLS0tLS0tLS0rCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgor
PC90PgorCis8c2VjdGlvbiB0aXRsZT0nU2FtcGxlIFJhdGUgQ29udmVyc2lvbic+Cis8dD4KK1Ro
ZSBpbnB1dCBzaWduYWwncyBzYW1wbGluZyByYXRlIGlzIGFkanVzdGVkIGJ5IGEgc2FtcGxlIHJh
dGUgY29udmVyc2lvbgorbW9kdWxlIHNvIHRoYXQgaXQgbWF0Y2hlcyB0aGUgU0lMSyBpbnRlcm5h
bCBzYW1wbGluZyByYXRlLgorVGhlIGlucHV0IHRvIHRoZSBzYW1wbGUgcmF0ZSBjb252ZXJ0ZXIg
aXMgZGVsYXllZCBieSBhIG51bWJlciBvZiBzYW1wbGVzCitkZXBlbmRpbmcgb24gdGhlIHNhbXBs
ZSByYXRlIHJhdGlvLCBzdWNoIHRoYXQgdGhlIG92ZXJhbGwgZGVsYXkgaXMgY29uc3RhbnQKK2Zv
ciBhbGwgaW5wdXQgYW5kIG91dHB1dCBzYW1wbGUgcmF0ZXMuCis8L3Q+Cis8L3NlY3Rpb24+CisK
KzxzZWN0aW9uIHRpdGxlPSdTdGVyZW8gTWl4aW5nJz4KKzx0PgorVGhlIHN0ZXJlbyBtaXhlciBp
cyBvbmx5IHVzZWQgZm9yIHN0ZXJlbyBpbnB1dCBzaWduYWxzLgorSXQgY29udmVydHMgYSBzdGVy
ZW8gbGVmdC9yaWdodCBzaWduYWwgaW50byBhbiBhZGFwdGl2ZQorbWlkL3NpZGUgcmVwcmVzZW50
YXRpb24uCitUaGUgZmlyc3Qgc3RlcCBpcyB0byBjb21wdXRlIG5vbi1hZGFwdGl2ZSBtaWQvc2lk
ZSBzaWduYWxzCithcyBoYWxmIHRoZSBzdW0gYW5kIGRpZmZlcmVuY2UgYmV0d2VlbiBsZWZ0IGFu
ZCByaWdodCBzaWduYWxzLgorVGhlIHNpZGUgc2lnbmFsIGlzIHRoZW4gbWluaW1pemVkIGluIGVu
ZXJneSBieSBzdWJ0cmFjdGluZyBhCitwcmVkaWN0aW9uIG9mIGl0IGJhc2VkIG9uIHRoZSBtaWQg
c2lnbmFsLgorVGhpcyBwcmVkaWN0aW9uIHdvcmtzIHdlbGwgd2hlbiB0aGUgbGVmdCBhbmQgcmln
aHQgc2lnbmFscworZXhoaWJpdCBsaW5lYXIgZGVwZW5kZW5jeSwgZm9yIGluc3RhbmNlIGZvciBh
biBhbXBsaXR1ZGUtcGFubmVkCitpbnB1dCBzaWduYWwuCitMaWtlIGluIHRoZSBkZWNvZGVyLCB0
aGUgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgYXJlIGxpbmVhcmx5CitpbnRlcnBvbGF0ZWQgZHVy
aW5nIHRoZSBmaXJzdCA4Jm5ic3A7bXMgb2YgdGhlIGZyYW1lLgorICBUaGUgbWlkIHNpZ25hbCBp
cyBhbHdheXMgZW5jb2RlZCwgd2hlcmVhcyB0aGUgcmVzaWR1YWwKKyAgc2lkZSBzaWduYWwgaXMg
b25seSBlbmNvZGVkIGlmIGl0IGhhcyBzdWZmaWNpZW50CisgIGVuZXJneSBjb21wYXJlZCB0byB0
aGUgbWlkIHNpZ25hbCdzIGVuZXJneS4KKyAgSWYgaXQgaGFzIG5vdCwKKyAgdGhlICJtaWRfb25s
eV9mbGFnIiBpcyBzZXQgd2l0aG91dCBlbmNvZGluZyB0aGUgc2lkZSBzaWduYWwuCis8L3Q+Cis8
dD4KK1RoZSBwcmVkaWN0b3IgY29lZmZpY2llbnRzIGFyZSBjb2RlZCByZWdhcmRsZXNzIG9mIHdo
ZXRoZXIKK3RoZSBzaWRlIHNpZ25hbCBpcyBlbmNvZGVkLgorRm9yIGVhY2ggZnJhbWUsIHR3byBw
cmVkaWN0b3IgY29lZmZpY2llbnRzIGFyZSBjb21wdXRlZCwgb25lCit0aGF0IHByZWRpY3RzIGJl
dHdlZW4gbG93LXBhc3NlZCBtaWQgYW5kIHNpZGUgY2hhbm5lbHMsIGFuZAorb25lIHRoYXQgcHJl
ZGljdHMgYmV0d2VlbiBoaWdoLXBhc3NlZCBtaWQgYW5kIHNpZGUgY2hhbm5lbHMuCitUaGUgbG93
LXBhc3MgZmlsdGVyIGlzIGEgc2ltcGxlIHRocmVlLXRhcCBmaWx0ZXIKK2FuZCBjcmVhdGVzIGEg
ZGVsYXkgb2Ygb25lIHNhbXBsZS4KK1RoZSBoaWdoLXBhc3MgZmlsdGVyZWQgc2lnbmFsIGlzIHRo
ZSBkaWZmZXJlbmNlIGJldHdlZW4KK3RoZSBtaWQgc2lnbmFsIGRlbGF5ZWQgYnkgb25lIHNhbXBs
ZSBhbmQgdGhlIGxvdy1wYXNzZWQKK3NpZ25hbC4gIEluc3RlYWQgb2YgZXhwbGljaXRseSBjb21w
dXRpbmcgdGhlIGhpZ2gtcGFzc2VkCitzaWduYWwsIGl0IGlzIGNvbXB1dGF0aW9uYWxseSBtb3Jl
IGVmZmljaWVudCB0byB0cmFuc2Zvcm0KK3RoZSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cyBiZWZv
cmUgYXBwbHlpbmcgdGhlbSB0byB0aGUKK2ZpbHRlcmVkIG1pZCBzaWduYWwsIGFzIGZvbGxvd3MK
KzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NE
QVRBWworcHJlZChuKSA9IExQKG4pICogdzAgKyBIUChuKSAqIHcxCisgICAgICAgID0gTFAobikg
KiB3MCArIChtaWQobi0xKSAtIExQKG4pKSAqIHcxCisgICAgICAgID0gTFAobikgKiAodzAgLSB3
MSkgKyBtaWQobi0xKSAqIHcxCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgord2hlcmUgdzAg
YW5kIHcxIGFyZSB0aGUgbG93LXBhc3MgYW5kIGhpZ2gtcGFzcyBwcmVkaWN0aW9uCitjb2VmZmlj
aWVudHMsIG1pZChuLTEpIGlzIHRoZSBtaWQgc2lnbmFsIGRlbGF5ZWQgYnkgb25lIHNhbXBsZSwK
K0xQKG4pIGFuZCBIUChuKSBhcmUgdGhlIGxvdy1wYXNzZWQgYW5kIGhpZ2gtcGFzc2VkCitzaWdu
YWxzIGFuZCBwcmVkKG4pIGlzIHRoZSBwcmVkaWN0aW9uIHNpZ25hbCB0aGF0IGlzIHN1YnRyYWN0
ZWQKK2Zyb20gdGhlIHNpZGUgc2lnbmFsLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0
aXRsZT0nU0lMSyBDb3JlIEVuY29kZXInPgorPHQ+CitXaGF0IGZvbGxvd3MgaXMgYSBkZXNjcmlw
dGlvbiBvZiB0aGUgY29yZSBlbmNvZGVyIGFuZCBpdHMgY29tcG9uZW50cy4KK0ZvciBzaW1wbGlj
aXR5LCB0aGUgY29yZSBlbmNvZGVyIGlzIHJlZmVycmVkIHRvIHNpbXBseSBhcyB0aGUgZW5jb2Rl
ciBpbgordGhlIHJlbWFpbmRlciBvZiB0aGlzIHNlY3Rpb24uIEFuIG92ZXJ2aWV3IG9mIHRoZSBl
bmNvZGVyIGlzIGdpdmVuIGluCis8eHJlZiB0YXJnZXQ9ImVuY29kZXJfZmlndXJlIiAvPi4KKzwv
dD4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciIgYW5jaG9yPSJlbmNvZGVyX2ZpZ3VyZSIgdGl0bGU9
IlNJTEsgQ29yZSBFbmNvZGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFb
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKy0tLSsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLT58ICAgfAorICAgICArLS0tLS0tLS0tKyAgICAgICAgICB8ICAgICAg
Ky0tLS0tLS0tLSsgICAgICAgICAgICAgICAgIHwgICB8CisgICAgIHxWb2ljZSAgICB8ICAgICAg
ICAgIHwgICAgICB8TFRQICAgICAgfDEyICAgICAgICAgICAgICAgfCAgIHwKKyArLS0+fEFjdGl2
aXR5IHwtLSsgICAgICAgKy0tLS0tPnxTY2FsaW5nICB8LS0tLS0tLS0tLS0rLS0tLT58ICAgfAor
IHwgICB8RGV0ZWN0b3IgfDMgfCAgICAgICB8ICAgICAgfENvbnRyb2wgIHw8LS0rICAgICAgIHwg
ICAgIHwgICB8CisgfCAgICstLS0tLS0tLS0rICB8ICAgICAgIHwgICAgICArLS0tLS0tLS0tKyAg
IHwgICAgICAgfCAgICAgfCAgIHwKKyB8ICAgICAgICAgICAgICAgIHwgICAgICAgfCAgICAgICst
LS0tLS0tLS0rICAgfCAgICAgICB8ICAgICB8ICAgfAorIHwgICAgICAgICAgICAgICAgfCAgICAg
ICB8ICAgICAgfEdhaW5zICAgIHwgICB8ICAgICAgIHwgICAgIHwgICB8CisgfCAgICAgICAgICAg
ICAgICB8ICAgICAgIHwgICstLT58UHJvY2Vzc29yfC0tLXwtLS0rLS0tfC0tLS0+fCBSIHwKKyB8
ICAgICAgICAgICAgICAgIHwgICAgICAgfCAgfCAgIHwgICAgICAgICB8MTEgfCAgIHwgICB8ICAg
ICB8IGEgfAorIHwgICAgICAgICAgICAgICBcLyAgICAgICB8ICB8ICAgKy0tLS0tLS0tLSsgICB8
ICAgfCAgIHwgICAgIHwgbiB8CisgfCAgICAgICAgICArLS0tLS0tLS0tKyAgIHwgIHwgICArLS0t
LS0tLS0tKyAgIHwgICB8ICAgfCAgICAgfCBnIHwKKyB8ICAgICAgICAgIHxQaXRjaCAgICB8ICAg
fCAgfCAgIHxMU0YgICAgICB8ICAgfCAgIHwgICB8ICAgICB8IGUgfAorIHwgICAgICAgKy0+fEFu
YWx5c2lzIHwtLS0rICB8ICAgfFF1YW50aXplcnwtLS18LS0tfC0tLXwtLS0tPnwgICB8CisgfCAg
ICAgICB8ICB8ICAgICAgICAgfDQgIHwgIHwgICB8ICAgICAgICAgfDggIHwgICB8ICAgfCAgICAg
fCBFIHwtLT4KKyB8ICAgICAgIHwgICstLS0tLS0tLS0rICAgfCAgfCAgICstLS0tLS0tLS0rICAg
fCAgIHwgICB8ICAgICB8IG4gfCAyCisgfCAgICAgICB8ICAgICAgICAgICAgICAgIHwgIHwgICAg
OS9cICAxMHwgICAgIHwgICB8ICAgfCAgICAgfCBjIHwKKyB8ICAgICAgIHwgICAgICAgICAgICAg
ICAgfCAgfCAgICAgfCAgICBcLyAgICAgfCAgIHwgICB8ICAgICB8IG8gfAorIHwgICAgICAgfCAg
Ky0tLS0tLS0tLSsgICB8ICB8ICAgKy0tLS0tLS0tLS0rICB8ICAgfCAgIHwgICAgIHwgZCB8Cisg
fCAgICAgICB8ICB8Tm9pc2UgICAgfCAgICstLXwtLT58UHJlZGljdGlvbnwtLSstLS18LS0tfC0t
LS0+fCBlIHwKKyB8ICAgICAgICstPnxTaGFwaW5nICB8LS0tfC0tKyAgIHxBbmFseXNpcyAgfDcg
fCAgIHwgICB8ICAgICB8IHIgfAorIHwgICAgICAgfCAgfEFuYWx5c2lzIHw1ICB8ICB8ICAgfCAg
ICAgICAgICB8ICB8ICAgfCAgIHwgICAgIHwgICB8CisgfCAgICAgICB8ICArLS0tLS0tLS0tKyAg
IHwgIHwgICArLS0tLS0tLS0tLSsgIHwgICB8ICAgfCAgICAgfCAgIHwKKyB8ICAgICAgIHwgICAg
ICAgICAgICAgICAgfCAgfCAgICAgICAgL1wgICAgICAgfCAgIHwgICB8ICAgICB8ICAgfAorIHwg
ICAgICAgfCAgICAgKy0tLS0tLS0tLS18LS18LS0tLS0tLS0rICAgICAgICB8ICAgfCAgIHwgICAg
IHwgICB8CisgfCAgICAgICB8ICAgICB8ICAgICAgICAgXC8gIFwvICAgICAgICAgICAgICAgXC8g
IFwvICBcLyAgICAgfCAgIHwKKyB8ICAgICAgIHwgICAgIHwgICAgICAgKy0tLS0tLS0tLSsgICAg
ICAgICAgKy0tLS0tLS0tLS0tLSsgICB8ICAgfAorIHwgICAgICAgfCAgICAgfCAgICAgICB8ICAg
ICAgICAgfCAgICAgICAgICB8Tm9pc2UgICAgICAgfCAgIHwgICB8CistKy0tLS0tLS0rLS0tLS0r
LS0tLS0tPnxQcmVmaWx0ZXJ8LS0tLS0tLS0tPnxTaGFwaW5nICAgICB8LS0+fCAgIHwKKzEgICAg
ICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHwgNiAgICAgICAgfFF1YW50aXphdGlvbnwxMyB8
ICAgfAorICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tKyAgICAgICAgICArLS0tLS0t
LS0tLS0tKyAgICstLS0rCisKKzE6ICBJbnB1dCBzcGVlY2ggc2lnbmFsCisyOiAgUmFuZ2UgZW5j
b2RlZCBiaXRzdHJlYW0KKzM6ICBWb2ljZSBhY3Rpdml0eSBlc3RpbWF0ZQorNDogIFBpdGNoIGxh
Z3MgKHBlciA1IG1zKSBhbmQgdm9pY2luZyBkZWNpc2lvbiAocGVyIDIwIG1zKQorNTogIE5vaXNl
IHNoYXBpbmcgcXVhbnRpemF0aW9uIGNvZWZmaWNpZW50cworICAtIFNob3J0IHRlcm0gc3ludGhl
c2lzIGFuZCBhbmFseXNpcworICAgIG5vaXNlIHNoYXBpbmcgY29lZmZpY2llbnRzIChwZXIgNSBt
cykKKyAgLSBMb25nIHRlcm0gc3ludGhlc2lzIGFuZCBhbmFseXNpcyBub2lzZQorICAgIHNoYXBp
bmcgY29lZmZpY2llbnRzIChwZXIgNSBtcyBhbmQgZm9yIHZvaWNlZCBzcGVlY2ggb25seSkKKyAg
LSBOb2lzZSBzaGFwaW5nIHRpbHQgKHBlciA1IG1zKQorICAtIFF1YW50aXplciBnYWluL3N0ZXAg
c2l6ZSAocGVyIDUgbXMpCis2OiAgSW5wdXQgc2lnbmFsIGZpbHRlcmVkIHdpdGggYW5hbHlzaXMg
bm9pc2Ugc2hhcGluZyBmaWx0ZXJzCis3OiAgU2hvcnQgYW5kIGxvbmcgdGVybSBwcmVkaWN0aW9u
IGNvZWZmaWNpZW50cworICAgIExUUCAocGVyIDUgbXMpIGFuZCBMUEMgKHBlciAyMCBtcykKKzg6
ICBMU0YgcXVhbnRpemF0aW9uIGluZGljZXMKKzk6ICBMU0YgY29lZmZpY2llbnRzCisxMDogUXVh
bnRpemVkIExTRiBjb2VmZmljaWVudHMKKzExOiBQcm9jZXNzZWQgZ2FpbnMsIGFuZCBzeW50aGVz
aXMgbm9pc2Ugc2hhcGUgY29lZmZpY2llbnRzCisxMjogTFRQIHN0YXRlIHNjYWxpbmcgY29lZmZp
Y2llbnQuIENvbnRyb2xsaW5nIGVycm9yIHByb3BhZ2F0aW9uCisgICAvIHByZWRpY3Rpb24gZ2Fp
biB0cmFkZS1vZmYKKzEzOiBRdWFudGl6ZWQgc2lnbmFsCitdXT4KKzwvYXJ0d29yaz4KKzwvZmln
dXJlPgorCis8c2VjdGlvbiB0aXRsZT0nVm9pY2UgQWN0aXZpdHkgRGV0ZWN0aW9uJz4KKzx0Pgor
VGhlIGlucHV0IHNpZ25hbCBpcyBwcm9jZXNzZWQgYnkgYSBWb2ljZSBBY3Rpdml0eSBEZXRlY3Rv
ciAoVkFEKSB0byBwcm9kdWNlCithIG1lYXN1cmUgb2Ygdm9pY2UgYWN0aXZpdHksIHNwZWN0cmFs
IHRpbHQsIGFuZCBzaWduYWwtdG8tbm9pc2UgZXN0aW1hdGVzIGZvcgorZWFjaCBmcmFtZS4gVGhl
IFZBRCB1c2VzIGEgc2VxdWVuY2Ugb2YgaGFsZi1iYW5kIGZpbHRlcmJhbmtzIHRvIHNwbGl0IHRo
ZQorc2lnbmFsIGludG8gZm91ciBzdWJiYW5kczogMC4uLkZzLzE2LCBGcy8xNi4uLkZzLzgsIEZz
LzguLi5Gcy80LCBhbmQKK0ZzLzQuLi5Gcy8yLCB3aGVyZSBGcyBpcyB0aGUgc2FtcGxpbmcgZnJl
cXVlbmN5ICg4LCAxMiwgMTYsIG9yIDI0Jm5ic3A7a0h6KS4KK1RoZSBsb3dlc3Qgc3ViYmFuZCwg
ZnJvbSAwIC0gRnMvMTYsIGlzIGhpZ2gtcGFzcyBmaWx0ZXJlZCB3aXRoIGEgZmlyc3Qtb3JkZXIK
K21vdmluZyBhdmVyYWdlIChNQSkgZmlsdGVyICh3aXRoIHRyYW5zZmVyIGZ1bmN0aW9uIEgoeikg
PSAxLXoqKigtMSkpIHRvCityZWR1Y2UgdGhlIGVuZXJneSBhdCB0aGUgbG93ZXN0IGZyZXF1ZW5j
aWVzLiBGb3IgZWFjaCBmcmFtZSwgdGhlIHNpZ25hbAorZW5lcmd5IHBlciBzdWJiYW5kIGlzIGNv
bXB1dGVkLgorSW4gZWFjaCBzdWJiYW5kLCBhIG5vaXNlIGxldmVsIGVzdGltYXRvciB0cmFja3Mg
dGhlIGJhY2tncm91bmQgbm9pc2UgbGV2ZWwKK2FuZCBhIFNpZ25hbC10by1Ob2lzZSBSYXRpbyAo
U05SKSB2YWx1ZSBpcyBjb21wdXRlZCBhcyB0aGUgbG9nYXJpdGhtIG9mIHRoZQorcmF0aW8gb2Yg
ZW5lcmd5IHRvIG5vaXNlIGxldmVsLgorVXNpbmcgdGhlc2UgaW50ZXJtZWRpYXRlIHZhcmlhYmxl
cywgdGhlIGZvbGxvd2luZyBwYXJhbWV0ZXJzIGFyZSBjYWxjdWxhdGVkCitmb3IgdXNlIGluIG90
aGVyIFNJTEsgbW9kdWxlczoKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PgorQXZlcmFnZSBT
TlIuIFRoZSBhdmVyYWdlIG9mIHRoZSBzdWJiYW5kIFNOUiB2YWx1ZXMuCis8L3Q+CisKKzx0Pgor
U21vb3RoZWQgc3ViYmFuZCBTTlJzLiBUZW1wb3JhbGx5IHNtb290aGVkIHN1YmJhbmQgU05SIHZh
bHVlcy4KKzwvdD4KKworPHQ+CitTcGVlY2ggYWN0aXZpdHkgbGV2ZWwuIEJhc2VkIG9uIHRoZSBh
dmVyYWdlIFNOUiBhbmQgYSB3ZWlnaHRlZCBhdmVyYWdlIG9mIHRoZQorc3ViYmFuZCBlbmVyZ2ll
cy4KKzwvdD4KKworPHQ+CitTcGVjdHJhbCB0aWx0LiBBIHdlaWdodGVkIGF2ZXJhZ2Ugb2YgdGhl
IHN1YmJhbmQgU05Scywgd2l0aCBwb3NpdGl2ZSB3ZWlnaHRzCitmb3IgdGhlIGxvdyBzdWJiYW5k
cyBhbmQgbmVnYXRpdmUgd2VpZ2h0cyBmb3IgdGhlIGhpZ2ggc3ViYmFuZHMuCis8L3Q+Cis8L2xp
c3Q+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSdQaXRjaCBBbmFseXNpcycg
YW5jaG9yPSdwaXRjaF9lc3RpbWF0b3Jfb3ZlcnZpZXdfc2VjdGlvbic+Cis8dD4KK1RoZSBpbnB1
dCBzaWduYWwgaXMgcHJvY2Vzc2VkIGJ5IHRoZSBvcGVuIGxvb3AgcGl0Y2ggZXN0aW1hdG9yIHNo
b3duIGluCis8eHJlZiB0YXJnZXQ9J3BpdGNoX2VzdGltYXRvcl9maWd1cmUnIC8+LgorPGZpZ3Vy
ZSBhbGlnbj0iY2VudGVyIiBhbmNob3I9InBpdGNoX2VzdGltYXRvcl9maWd1cmUiCisgdGl0bGU9
IkJsb2NrIGRpYWdyYW0gb2YgdGhlIHBpdGNoIGVzdGltYXRvciI+Cis8YXJ0d29yayBhbGlnbj0i
Y2VudGVyIj4KKzwhW0NEQVRBWworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0t
LS0tLS0tKyAgKy0tLS0tLS0tLS0rCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
MiB4IERvd258ICB8VGltZS0gICAgIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICst
PnxzYW1wbGluZ3wtPnxDb3JyZWxhdG9yfCAgICAgfAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgfCAgICAgICAgfCAgfCAgICAgICAgICB8ICAgICB8NAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgKy0tLS0tLS0tKyAgKy0tLS0tLS0tLS0rICAgIFwvCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICB8IDIgICAgKy0tLS0t
LS0rCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICB8
ICArLS0+fFNwZWVjaCB8NQorICAgICstLS0tLS0tLS0rICAgICstLS0tLS0tLSsgfCAgICAgICAg
ICAgICAgICAgICBcLyAgfCAgIHxUeXBlICAgfC0+CisgICAgfExQQyAgICAgIHwgICAgfERvd24g
ICAgfCB8ICAgICAgICAgICAgICArLS0tLS0tLS0tLSsgfCAgICAgICB8CisgKy0+fEFuYWx5c2lz
IHwgKy0+fHNhbXBsZSAgfC0rLS0tLS0tLS0tLS0tLT58VGltZS0gICAgIHwgKy0tLS0tLS0rCisg
fCAgfCAgICAgICAgIHwgfCAgfHRvIDgga0h6fCAgICAgICAgICAgICAgICB8Q29ycmVsYXRvcnwt
LS0tLS0tLS0tLT4KKyB8ICArLS0tLS0tLS0tKyB8ICArLS0tLS0tLS0rICAgICAgICAgICAgICAg
IHxfX19fX19fX19ffCAgICAgICAgICA2CisgfCAgICAgICB8ICAgICAgfCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8MworIHwgICAgICBcLyAgICAgIHwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcLworIHwgICstLS0tLS0tLS0rIHwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKy0tLS0tLS0tLS0rCisgfCAgfFdoaXRlbmluZ3wgfCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8VGltZS0gICAgIHwKKy0rLT58RmlsdGVyICAgfC0rLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tPnxDb3JyZWxhdG9yfC0tLS0tLS0tLS0tPgorMSAgIHwgICAgICAgICB8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICB8ICAgICAgICAgIDcKKyAgICAr
LS0tLS0tLS0tKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tKworCisx
OiBJbnB1dCBzaWduYWwKKzI6IExhZyBjYW5kaWRhdGVzIGZyb20gc3RhZ2UgMQorMzogTGFnIGNh
bmRpZGF0ZXMgZnJvbSBzdGFnZSAyCis0OiBDb3JyZWxhdGlvbiB0aHJlc2hvbGQKKzU6IFZvaWNl
ZC91bnZvaWNlZCBmbGFnCis2OiBQaXRjaCBjb3JyZWxhdGlvbgorNzogUGl0Y2ggbGFncworXV0+
Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBwaXRjaCBhbmFseXNpcyBmaW5kcyBhIGJpbmFy
eSB2b2ljZWQvdW52b2ljZWQgY2xhc3NpZmljYXRpb24sIGFuZCwgZm9yCitmcmFtZXMgY2xhc3Np
ZmllZCBhcyB2b2ljZWQsIGZvdXIgcGl0Y2ggbGFncyBwZXIgZnJhbWUgLSBvbmUgZm9yIGVhY2gK
KzUmbmJzcDttcyBzdWJmcmFtZSAtIGFuZCBhIHBpdGNoIGNvcnJlbGF0aW9uIGluZGljYXRpbmcg
dGhlIHBlcmlvZGljaXR5IG9mCit0aGUgc2lnbmFsLgorVGhlIGlucHV0IGlzIGZpcnN0IHdoaXRl
bmVkIHVzaW5nIGEgTGluZWFyIFByZWRpY3Rpb24gKExQKSB3aGl0ZW5pbmcgZmlsdGVyLAord2hl
cmUgdGhlIGNvZWZmaWNpZW50cyBhcmUgY29tcHV0ZWQgdGhyb3VnaCBzdGFuZGFyZCBMaW5lYXIg
UHJlZGljdGlvbiBDb2RpbmcKKyhMUEMpIGFuYWx5c2lzLiBUaGUgb3JkZXIgb2YgdGhlIHdoaXRl
bmluZyBmaWx0ZXIgaXMgMTYgZm9yIGJlc3QgcmVzdWx0cywgYnV0CitpcyByZWR1Y2VkIHRvIDEy
IGZvciBtZWRpdW0gY29tcGxleGl0eSBhbmQgOCBmb3IgbG93IGNvbXBsZXhpdHkgbW9kZXMuCitU
aGUgd2hpdGVuZWQgc2lnbmFsIGlzIGFuYWx5emVkIHRvIGZpbmQgcGl0Y2ggbGFncyBmb3Igd2hp
Y2ggdGhlIHRpbWUKK2NvcnJlbGF0aW9uIGlzIGhpZ2guCitUaGUgYW5hbHlzaXMgY29uc2lzdHMg
b2YgdGhyZWUgc3RhZ2VzIGZvciByZWR1Y2luZyB0aGUgY29tcGxleGl0eToKKzxsaXN0IHN0eWxl
PSJzeW1ib2xzIj4KKzx0PkluIHRoZSBmaXJzdCBzdGFnZSwgdGhlIHdoaXRlbmVkIHNpZ25hbCBp
cyBkb3duc2FtcGxlZCB0byA0Jm5ic3A7a0h6CisoZnJvbSA4Jm5ic3A7a0h6KSBhbmQgdGhlIGN1
cnJlbnQgZnJhbWUgaXMgY29ycmVsYXRlZCB0byBhIHNpZ25hbCBkZWxheWVkCitieSBhIHJhbmdl
IG9mIGxhZ3MsIHN0YXJ0aW5nIGZyb20gYSBzaG9ydGVzdCBsYWcgY29ycmVzcG9uZGluZyB0bwor
NTAwJm5ic3A7SHosIHRvIGEgbG9uZ2VzdCBsYWcgY29ycmVzcG9uZGluZyB0byA1NiZuYnNwO0h6
LjwvdD4KKworPHQ+CitUaGUgc2Vjb25kIHN0YWdlIG9wZXJhdGVzIG9uIGFuIDgmbmJzcDtrSHog
c2lnbmFsIChkb3duc2FtcGxlZCBmcm9tIDEyLCAxNiwKK29yIDI0Jm5ic3A7a0h6KSBhbmQgbWVh
c3VyZXMgdGltZSBjb3JyZWxhdGlvbnMgb25seSBuZWFyIHRoZSBsYWdzCitjb3JyZXNwb25kaW5n
IHRvIHRob3NlIHRoYXQgaGFkIHN1ZmZpY2llbnRseSBoaWdoIGNvcnJlbGF0aW9ucyBpbiB0aGUg
Zmlyc3QKK3N0YWdlLiBUaGUgcmVzdWx0aW5nIGNvcnJlbGF0aW9ucyBhcmUgYWRqdXN0ZWQgZm9y
IGEgc21hbGwgYmlhcyB0b3dhcmRzCitzaG9ydCBsYWdzIHRvIGF2b2lkIGVuZGluZyB1cCB3aXRo
IGEgbXVsdGlwbGUgb2YgdGhlIHRydWUgcGl0Y2ggbGFnLgorVGhlIGhpZ2hlc3QgYWRqdXN0ZWQg
Y29ycmVsYXRpb24gaXMgY29tcGFyZWQgdG8gYSB0aHJlc2hvbGQgZGVwZW5kaW5nIG9uOgorPGxp
c3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitXaGV0aGVyIHRoZSBwcmV2aW91cyBmcmFtZSB3YXMg
Y2xhc3NpZmllZCBhcyB2b2ljZWQKKzwvdD4KKzx0PgorVGhlIHNwZWVjaCBhY3Rpdml0eSBsZXZl
bAorPC90PgorPHQ+CitUaGUgc3BlY3RyYWwgdGlsdC4KKzwvdD4KKzwvbGlzdD4KK0lmIHRoZSB0
aHJlc2hvbGQgaXMgZXhjZWVkZWQsIHRoZSBjdXJyZW50IGZyYW1lIGlzIGNsYXNzaWZpZWQgYXMg
dm9pY2VkIGFuZAordGhlIGxhZyB3aXRoIHRoZSBoaWdoZXN0IGFkanVzdGVkIGNvcnJlbGF0aW9u
IGlzIHN0b3JlZCBmb3IgYSBmaW5hbCBwaXRjaAorYW5hbHlzaXMgb2YgdGhlIGhpZ2hlc3QgcHJl
Y2lzaW9uIGluIHRoZSB0aGlyZCBzdGFnZS4KKzwvdD4KKzx0PgorVGhlIGxhc3Qgc3RhZ2Ugb3Bl
cmF0ZXMgZGlyZWN0bHkgb24gdGhlIHdoaXRlbmVkIGlucHV0IHNpZ25hbCB0byBjb21wdXRlIHRp
bWUKK2NvcnJlbGF0aW9ucyBmb3IgZWFjaCBvZiB0aGUgZm91ciBzdWJmcmFtZXMgaW5kZXBlbmRl
bnRseSBpbiBhIG5hcnJvdyByYW5nZQorYXJvdW5kIHRoZSBsYWcgd2l0aCBoaWdoZXN0IGNvcnJl
bGF0aW9uIGZyb20gdGhlIHNlY29uZCBzdGFnZS4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKzwvc2Vj
dGlvbj4KKworPHNlY3Rpb24gdGl0bGU9J05vaXNlIFNoYXBpbmcgQW5hbHlzaXMnIGFuY2hvcj0n
bm9pc2Vfc2hhcGluZ19hbmFseXNpc19vdmVydmlld19zZWN0aW9uJz4KKzx0PgorVGhlIG5vaXNl
IHNoYXBpbmcgYW5hbHlzaXMgZmluZHMgZ2FpbnMgYW5kIGZpbHRlciBjb2VmZmljaWVudHMgdXNl
ZCBpbiB0aGUKK3ByZWZpbHRlciBhbmQgbm9pc2Ugc2hhcGluZyBxdWFudGl6ZXIuIFRoZXNlIHBh
cmFtZXRlcnMgYXJlIGNob3NlbiBzdWNoIHRoYXQKK3RoZXkgd2lsbCBmdWxmaWxsIHNldmVyYWwg
cmVxdWlyZW1lbnRzOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitCYWxhbmNpbmcgcXVh
bnRpemF0aW9uIG5vaXNlIGFuZCBiaXRyYXRlLgorVGhlIHF1YW50aXphdGlvbiBnYWlucyBkZXRl
cm1pbmUgdGhlIHN0ZXAgc2l6ZSBiZXR3ZWVuIHJlY29uc3RydWN0aW9uIGxldmVscworb2YgdGhl
IGV4Y2l0YXRpb24gc2lnbmFsLiBUaGVyZWZvcmUsIGluY3JlYXNpbmcgdGhlIHF1YW50aXphdGlv
biBnYWluCithbXBsaWZpZXMgcXVhbnRpemF0aW9uIG5vaXNlLCBidXQgYWxzbyByZWR1Y2VzIHRo
ZSBiaXRyYXRlIGJ5IGxvd2VyaW5nCit0aGUgZW50cm9weSBvZiB0aGUgcXVhbnRpemF0aW9uIGlu
ZGljZXMuCis8L3Q+Cis8dD4KK1NwZWN0cmFsIHNoYXBpbmcgb2YgdGhlIHF1YW50aXphdGlvbiBu
b2lzZTsgdGhlIG5vaXNlIHNoYXBpbmcgcXVhbnRpemVyIGlzCitjYXBhYmxlIG9mIHJlZHVjaW5n
IHF1YW50aXphdGlvbiBub2lzZSBpbiBzb21lIHBhcnRzIG9mIHRoZSBzcGVjdHJ1bSBhdCB0aGUK
K2Nvc3Qgb2YgaW5jcmVhc2VkIG5vaXNlIGluIG90aGVyIHBhcnRzIHdpdGhvdXQgc3Vic3RhbnRp
YWxseSBjaGFuZ2luZyB0aGUKK2JpdHJhdGUuCitCeSBzaGFwaW5nIHRoZSBub2lzZSBzdWNoIHRo
YXQgaXQgZm9sbG93cyB0aGUgc2lnbmFsIHNwZWN0cnVtLCBpdCBiZWNvbWVzCitsZXNzIGF1ZGli
bGUuIEluIHByYWN0aWNlLCBiZXN0IHJlc3VsdHMgYXJlIG9idGFpbmVkIGJ5IG1ha2luZyB0aGUg
c2hhcGUKK29mIHRoZSBub2lzZSBzcGVjdHJ1bSBzbGlnaHRseSBmbGF0dGVyIHRoYW4gdGhlIHNp
Z25hbCBzcGVjdHJ1bS4KKzwvdD4KKzx0PgorRGUtZW1waGFzaXppbmcgc3BlY3RyYWwgdmFsbGV5
czsgYnkgdXNpbmcgZGlmZmVyZW50IGNvZWZmaWNpZW50cyBpbiB0aGUKK2FuYWx5c2lzIGFuZCBz
eW50aGVzaXMgcGFydCBvZiB0aGUgcHJlZmlsdGVyIGFuZCBub2lzZSBzaGFwaW5nIHF1YW50aXpl
ciwKK3RoZSBsZXZlbHMgb2YgdGhlIHNwZWN0cmFsIHZhbGxleXMgY2FuIGJlIGRlY3JlYXNlZCBy
ZWxhdGl2ZSB0byB0aGUgbGV2ZWxzCitvZiB0aGUgc3BlY3RyYWwgcGVha3Mgc3VjaCBhcyBzcGVl
Y2ggZm9ybWFudHMgYW5kIGhhcm1vbmljcy4KK1RoaXMgcmVkdWNlcyB0aGUgZW50cm9weSBvZiB0
aGUgc2lnbmFsLCB3aGljaCBpcyB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZQorY29kZWQgc2ln
bmFsIGFuZCB0aGUgcXVhbnRpemF0aW9uIG5vaXNlLCB0aHVzIGxvd2VyaW5nIHRoZSBiaXRyYXRl
LgorPC90PgorPHQ+CitNYXRjaGluZyB0aGUgbGV2ZWxzIG9mIHRoZSBkZWNvZGVkIHNwZWVjaCBm
b3JtYW50cyB0byB0aGUgbGV2ZWxzIG9mIHRoZQorb3JpZ2luYWwgc3BlZWNoIGZvcm1hbnRzOyBh
biBhZGp1c3RtZW50IGdhaW4gYW5kIGEgZmlyc3Qgb3JkZXIgdGlsdAorY29lZmZpY2llbnQgYXJl
IGNvbXB1dGVkIHRvIGNvbXBlbnNhdGUgZm9yIHRoZSBlZmZlY3Qgb2YgdGhlIG5vaXNlCitzaGFw
aW5nIHF1YW50aXphdGlvbiBvbiB0aGUgbGV2ZWwgYW5kIHNwZWN0cmFsIHRpbHQuCis8L3Q+Cis8
L2xpc3Q+Cis8L3Q+Cis8dD4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciIgYW5jaG9yPSJub2lzZV9z
aGFwZV9hbmFseXNpc19zcGVjdHJhX2ZpZ3VyZSIKKyB0aXRsZT0iTm9pc2Ugc2hhcGluZyBhbmQg
c3BlY3RyYWwgZGUtZW1waGFzaXMgaWxsdXN0cmF0aW9uIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50
ZXIiPgorPCFbQ0RBVEFbCisgIC8gXCAgIF9fXworICAgfCAgIC8vIFxcCisgICB8ICAvLyAgIFxc
ICAgICBfX19fCisgICB8Xy8vICAgICBcXF9fXy8vICBcXCAgICAgICAgIF9fX18KKyAgIHwgLyAg
X19fICBcICAgLyAgICBcXCAgICAgICAvLyAgXFwKKyBQIHwvICAvICAgXCAgXF8vICAgICAgXFxf
X19fXy8vICAgIFxcCisgbyB8ICAvICAgICBcICAgICBfX19fICBcICAgICAvICAgICAgXFwKKyB3
IHwgLyAgICAgICBcX19fLyAgICBcICBcX19fLyAgX19fXyAgXFxfX18gMQorIGUgfC8gICAgICAg
ICAgICAgICAgICBcICAgICAgIC8gICAgXCAgXAorIHIgfCAgICAgICAgICAgICAgICAgICAgXF9f
X19fLyAgICAgIFwgIFxfXyAyCisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxfX18gMworICAgfAor
ICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0+CisgICAgICAgICAg
ICAgICAgICAgIEZyZXF1ZW5jeQorCisxOiBJbnB1dCBzaWduYWwgc3BlY3RydW0KKzI6IERlLWVt
cGhhc2l6ZWQgYW5kIGxldmVsIG1hdGNoZWQgc3BlY3RydW0KKzM6IFF1YW50aXphdGlvbiBub2lz
ZSBzcGVjdHJ1bQorXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx4cmVmIHRhcmdldD0nbm9p
c2Vfc2hhcGVfYW5hbHlzaXNfc3BlY3RyYV9maWd1cmUnIC8+IHNob3dzIGFuIGV4YW1wbGUgb2Yg
YW4KK2lucHV0IHNpZ25hbCBzcGVjdHJ1bSAoMSkuCitBZnRlciBkZS1lbXBoYXNpcyBhbmQgbGV2
ZWwgbWF0Y2hpbmcsIHRoZSBzcGVjdHJ1bSBoYXMgZGVlcGVyIHZhbGxleXMgKDIpLgorVGhlIHF1
YW50aXphdGlvbiBub2lzZSBzcGVjdHJ1bSAoMykgbW9yZSBvciBsZXNzIGZvbGxvd3MgdGhlIGlu
cHV0IHNpZ25hbAorc3BlY3RydW0sIHdoaWxlIGhhdmluZyBzbGlnaHRseSBsZXNzIHByb25vdW5j
ZWQgcGVha3MuCitUaGUgZW50cm9weSwgd2hpY2ggcHJvdmlkZXMgYSBsb3dlciBib3VuZCBvbiB0
aGUgYml0cmF0ZSBmb3IgZW5jb2RpbmcgdGhlCitleGNpdGF0aW9uIHNpZ25hbCwgaXMgcHJvcG9y
dGlvbmFsIHRvIHRoZSBhcmVhIGJldHdlZW4gdGhlIGRlLWVtcGhhc2l6ZWQKK3NwZWN0cnVtICgy
KSBhbmQgdGhlIHF1YW50aXphdGlvbiBub2lzZSBzcGVjdHJ1bSAoMykuIFdpdGhvdXQgZGUtZW1w
aGFzaXMsCit0aGUgZW50cm9weSBpcyBwcm9wb3J0aW9uYWwgdG8gdGhlIGFyZWEgYmV0d2VlbiBp
bnB1dCBzcGVjdHJ1bSAoMSkgYW5kCitxdWFudGl6YXRpb24gbm9pc2UgKDMpIC0gY2xlYXJseSBo
aWdoZXIuCis8L3Q+CisKKzx0PgorVGhlIHRyYW5zZm9ybWF0aW9uIGZyb20gaW5wdXQgc2lnbmFs
IHRvIGRlLWVtcGhhc2l6ZWQgc2lnbmFsIGNhbiBiZQorZGVzY3JpYmVkIGFzIGEgZmlsdGVyaW5n
IG9wZXJhdGlvbiB3aXRoIGEgZmlsdGVyCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
IC0xICAgIFdhbmEoeikKK0goeikgPSBHICogKCAxIC0gY190aWx0ICogeiAgKSAqIC0tLS0tLS0K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdzeW4oeiksCitdXT4KKzwvYXJ0d29y
az4KKzwvZmlndXJlPgoraGF2aW5nIGFuIGFkanVzdG1lbnQgZ2FpbiBHLCBhIGZpcnN0IG9yZGVy
IHRpbHQgYWRqdXN0bWVudCBmaWx0ZXIgd2l0aAordGlsdCBjb2VmZmljaWVudCBjX3RpbHQsIGFu
ZCB3aGVyZQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIi
PgorPCFbQ0RBVEFbCisgICAgICAgICAgICAgICAxNiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBkCisgICAgICAgICAgICAgICBfXyAgICAgICAgICAgICAtayAgICAgICAgLUwgIF9fICAgICAg
ICAgICAgLWsKK1dhbmEoeikgPSAoMSAtIFwgKGFfYW5hKGspICogeiAgKSooMSAtIHogICogXCBi
X2FuYShrKSAqIHogICksCisgICAgICAgICAgICAgICAvXyAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC9fCisgICAgICAgICAgICAgICBrPTEgICAgICAgICAgICAgICAgICAgICAgICAgIGs9LWQK
K11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+CitpcyB0aGUgYW5hbHlzaXMgcGFydCBvZiB0aGUg
ZGUtZW1waGFzaXMgZmlsdGVyLCBjb25zaXN0aW5nIG9mIHRoZSBzaG9ydC10ZXJtCitzaGFwaW5n
IGZpbHRlciB3aXRoIGNvZWZmaWNpZW50cyBhX2FuYShrKSwgYW5kIHRoZSBsb25nLXRlcm0gc2hh
cGluZyBmaWx0ZXIKK3dpdGggY29lZmZpY2llbnRzIGJfYW5hKGspIGFuZCBwaXRjaCBsYWcgTC4K
K1RoZSBwYXJhbWV0ZXIgZCBkZXRlcm1pbmVzIHRoZSBudW1iZXIgb2YgbG9uZy10ZXJtIHNoYXBp
bmcgZmlsdGVyIHRhcHMuCis8L3Q+CisKKzx0PgorU2ltaWxhcmx5LCBidXQgd2l0aG91dCB0aGUg
dGlsdCBhZGp1c3RtZW50LCB0aGUgc3ludGhlc2lzIHBhcnQgY2FuIGJlIHdyaXR0ZW4gYXMKKzxm
aWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRB
WworICAgICAgICAgICAgICAgMTYgICAgICAgICAgICAgICAgICAgICAgICAgICAgZAorICAgICAg
ICAgICAgICAgX18gICAgICAgICAgICAgLWsgICAgICAgIC1MICBfXyAgICAgICAgICAgIC1rCitX
c3luKHopID0gKDEgLSBcIChhX3N5bihrKSAqIHogICkqKDEgLSB6ICAqIFwgYl9zeW4oaykgKiB6
ICApLgorICAgICAgICAgICAgICAgL18gICAgICAgICAgICAgICAgICAgICAgICAgICAvXworICAg
ICAgICAgICAgICAgaz0xICAgICAgICAgICAgICAgICAgICAgICAgICBrPS1kCisgICAgICAgICAg
ICBdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorPHQ+CitBbGwgbm9pc2Ugc2hhcGlu
ZyBwYXJhbWV0ZXJzIGFyZSBjb21wdXRlZCBhbmQgYXBwbGllZCBwZXIgc3ViZnJhbWUgb2YgNSZu
YnNwO21zLgorRmlyc3QsIGFuIExQQyBhbmFseXNpcyBpcyBwZXJmb3JtZWQgb24gYSB3aW5kb3dl
ZCBzaWduYWwgYmxvY2sgb2YgMTUmbmJzcDttcy4KK1RoZSBzaWduYWwgYmxvY2sgaGFzIGEgbG9v
ay1haGVhZCBvZiA1Jm5ic3A7bXMgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgc3ViZnJhbWUsCith
bmQgdGhlIHdpbmRvdyBpcyBhbiBhc3ltbWV0cmljIHNpbmUgd2luZG93LiBUaGUgTFBDIGFuYWx5
c2lzIGlzIGRvbmUgd2l0aCB0aGUKK2F1dG9jb3JyZWxhdGlvbiBtZXRob2QsIHdpdGggYW4gb3Jk
ZXIgb2YgYmV0d2VlbiA4LCBpbiBsb3dlc3QtY29tcGxleGl0eSBtb2RlLAorYW5kIDE2LCBmb3Ig
YmVzdCBxdWFsaXR5LgorPC90PgorPHQ+CitPcHRpb25hbGx5IHRoZSBMUEMgYW5hbHlzaXMgYW5k
IG5vaXNlIHNoYXBpbmcgZmlsdGVycyBhcmUgd2FycGVkIGJ5IHJlcGxhY2luZwordGhlIGRlbGF5
IGVsZW1lbnRzIGJ5IGZpcnN0LW9yZGVyIGFsbHBhc3MgZmlsdGVycy4KK1RoaXMgaW5jcmVhc2Vz
IHRoZSBmcmVxdWVuY3kgcmVzb2x1dGlvbiBhdCBsb3cgZnJlcXVlbmNpZXMgYW5kIHJlZHVjZXMg
aXQgYXQKK2hpZ2ggb25lcywgd2hpY2ggYmV0dGVyIG1hdGNoZXMgdGhlIGh1bWFuIGF1ZGl0b3J5
IHN5c3RlbSBhbmQgaW1wcm92ZXMKK3F1YWxpdHkuCitUaGUgd2FycGVkIGFuYWx5c2lzIGFuZCBm
aWx0ZXJpbmcgY29tZXMgYXQgYSBjb3N0IGluIGNvbXBsZXhpdHkKK2FuZCBpcyB0aGVyZWZvcmUg
b25seSBkb25lIGluIGhpZ2hlciBjb21wbGV4aXR5IG1vZGVzLgorPC90PgorPHQ+CitUaGUgcXVh
bnRpemF0aW9uIGdhaW4gaXMgZm91bmQgYnkgdGFraW5nIHRoZSBzcXVhcmUgcm9vdCBvZiB0aGUg
cmVzaWR1YWwgZW5lcmd5Citmcm9tIHRoZSBMUEMgYW5hbHlzaXMgYW5kIG11bHRpcGx5aW5nIGl0
IGJ5IGEgdmFsdWUgaW52ZXJzZWx5IHByb3BvcnRpb25hbAordG8gdGhlIGNvZGluZyBxdWFsaXR5
IGNvbnRyb2wgcGFyYW1ldGVyIGFuZCB0aGUgcGl0Y2ggY29ycmVsYXRpb24uCis8L3Q+Cis8dD4K
K05leHQgdGhlIHR3byBzZXRzIG9mIHNob3J0LXRlcm0gbm9pc2Ugc2hhcGluZyBjb2VmZmljaWVu
dHMgYV9hbmEoaykgYW5kCithX3N5bihrKSBhcmUgb2J0YWluZWQgYnkgYXBwbHlpbmcgZGlmZmVy
ZW50IGFtb3VudHMgb2YgYmFuZHdpZHRoIGV4cGFuc2lvbiB0byB0aGUKK2NvZWZmaWNpZW50cyBm
b3VuZCBpbiB0aGUgTFBDIGFuYWx5c2lzLgorVGhpcyBiYW5kd2lkdGggZXhwYW5zaW9uIG1vdmVz
IHRoZSByb290cyBvZiB0aGUgTFBDIHBvbHlub21pYWwgdG93YXJkcyB0aGUKK29yaWdpbiwgdXNp
bmcgdGhlIGZvcm11bGFzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+Cis8IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAgICBrCisgYV9hbmEoaykg
PSBhKGspKmdfYW5hICwgYW5kCisKKyAgICAgICAgICAgICAgICAgICAgICBrCisgYV9zeW4oaykg
PSBhKGspKmdfc3luICwKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+Cit3aGVyZSBhKGspIGlz
IHRoZSBrJ3RoIExQQyBjb2VmZmljaWVudCwgYW5kIHRoZSBiYW5kd2lkdGggZXhwYW5zaW9uIGZh
Y3RvcnMKK2dfYW5hIGFuZCBnX3N5biBhcmUgY2FsY3VsYXRlZCBhcworPGZpZ3VyZSBhbGlnbj0i
Y2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCitnX2FuYSA9IDAu
OTUgLSAwLjAxKkMsIGFuZAorCitnX3N5biA9IDAuOTUgKyAwLjAxKkMsCitdXT4KKzwvYXJ0d29y
az4KKzwvZmlndXJlPgord2hlcmUgQyBpcyB0aGUgY29kaW5nIHF1YWxpdHkgY29udHJvbCBwYXJh
bWV0ZXIgYmV0d2VlbiAwIGFuZCAxLgorQXBwbHlpbmcgbW9yZSBiYW5kd2lkdGggZXhwYW5zaW9u
IHRvIHRoZSBhbmFseXNpcyBwYXJ0IHRoYW4gdG8gdGhlIHN5bnRoZXNpcworcGFydCBnaXZlcyB0
aGUgZGVzaXJlZCBkZS1lbXBoYXNpcyBvZiBzcGVjdHJhbCB2YWxsZXlzIGluIGJldHdlZW4gZm9y
bWFudHMuCis8L3Q+CisKKzx0PgorVGhlIGxvbmctdGVybSBzaGFwaW5nIGlzIGFwcGxpZWQgb25s
eSBkdXJpbmcgdm9pY2VkIGZyYW1lcy4KK0l0IHVzZXMgdGhyZWUgZmlsdGVyIHRhcHMsIGRlc2Ny
aWJlZCBieQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIi
PgorICA8IVtDREFUQVsKK2JfYW5hID0gRl9hbmEgKiBbMC4yNSwgMC41LCAwLjI1XSwgYW5kCisK
K2Jfc3luID0gRl9zeW4gKiBbMC4yNSwgMC41LCAwLjI1XS4KK11dPgorPC9hcnR3b3JrPgorPC9m
aWd1cmU+CitGb3IgdW52b2ljZWQgZnJhbWVzIHRoZXNlIGNvZWZmaWNpZW50cyBhcmUgc2V0IHRv
IDAuIFRoZSBtdWx0aXBsaWNhdGlvbiBmYWN0b3JzCitGX2FuYSBhbmQgRl9zeW4gYXJlIGNob3Nl
biBiZXR3ZWVuIDAgYW5kIDEsIGRlcGVuZGluZyBvbiB0aGUgY29kaW5nIHF1YWxpdHkKK2NvbnRy
b2wgcGFyYW1ldGVyLCBhcyB3ZWxsIGFzIHRoZSBjYWxjdWxhdGVkIHBpdGNoIGNvcnJlbGF0aW9u
IGFuZCBzbW9vdGhlZAorc3ViYmFuZCBTTlIgb2YgdGhlIGxvd2VzdCBzdWJiYW5kLiBCeSBoYXZp
bmcgRl9hbmEgbGVzcyB0aGFuIEZfc3luLAordGhlIHBpdGNoIGhhcm1vbmljcyBhcmUgZW1waGFz
aXplZCByZWxhdGl2ZSB0byB0aGUgdmFsbGV5cyBpbiBiZXR3ZWVuIHRoZQoraGFybW9uaWNzLgor
PC90PgorCis8dD4KK1RoZSB0aWx0IGNvZWZmaWNpZW50IGNfdGlsdCBpcyBmb3IgdW52b2ljZWQg
ZnJhbWVzIGNob3NlbiBhcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWdu
PSJjZW50ZXIiPgorPCFbQ0RBVEFbCitjX3RpbHQgPSAwLjI1LAorXV0+Cis8L2FydHdvcms+Cis8
L2ZpZ3VyZT4KK2FuZCBhcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWdu
PSJjZW50ZXIiPgorPCFbQ0RBVEFbCitjX3RpbHQgPSAwLjI1ICsgMC4yNjI1ICogVgorXV0+Cis8
L2FydHdvcms+Cis8L2ZpZ3VyZT4KK2ZvciB2b2ljZWQgZnJhbWVzLCB3aGVyZSBWIGlzIHRoZSB2
b2ljZSBhY3Rpdml0eSBsZXZlbCBiZXR3ZWVuIDAgYW5kIDEuCis8L3Q+Cis8dD4KK1RoZSBhZGp1
c3RtZW50IGdhaW4gRyBzZXJ2ZXMgdG8gY29ycmVjdCBhbnkgbGV2ZWwgbWlzbWF0Y2ggYmV0d2Vl
biB0aGUgb3JpZ2luYWwKK2FuZCBkZWNvZGVkIHNpZ25hbHMgdGhhdCBtaWdodCBhcmlzZSBmcm9t
IHRoZSBub2lzZSBzaGFwaW5nIGFuZCBkZS1lbXBoYXNpcy4KK1RoaXMgZ2FpbiBpcyBjb21wdXRl
ZCBhcyB0aGUgcmF0aW8gb2YgdGhlIHByZWRpY3Rpb24gZ2FpbiBvZiB0aGUgc2hvcnQtdGVybQor
YW5hbHlzaXMgYW5kIHN5bnRoZXNpcyBmaWx0ZXIgY29lZmZpY2llbnRzLiBUaGUgcHJlZGljdGlv
biBnYWluIG9mIGFuIExQQworc3ludGhlc2lzIGZpbHRlciBpcyB0aGUgc3F1YXJlIHJvb3Qgb2Yg
dGhlIG91dHB1dCBlbmVyZ3kgd2hlbiB0aGUgZmlsdGVyIGlzCitleGNpdGVkIGJ5IGEgdW5pdC1l
bmVyZ3kgaW1wdWxzZSBvbiB0aGUgaW5wdXQuCitBbiBlZmZpY2llbnQgd2F5IHRvIGNvbXB1dGUg
dGhlIHByZWRpY3Rpb24gZ2FpbiBpcyBieSBmaXJzdCBjb21wdXRpbmcgdGhlCityZWZsZWN0aW9u
IGNvZWZmaWNpZW50cyBmcm9tIHRoZSBMUEMgY29lZmZpY2llbnRzIHRocm91Z2ggdGhlIHN0ZXAt
ZG93bgorYWxnb3JpdGhtLCBhbmQgZXh0cmFjdGluZyB0aGUgcHJlZGljdGlvbiBnYWluIGZyb20g
dGhlIHJlZmxlY3Rpb24gY29lZmZpY2llbnRzCithcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4K
KzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisgICAgICAgICAgICAgICBLCisg
ICAgICAgICAgICAgIF9fXyAgICAgICAgICAyICAtMC41CisgcHJlZEdhaW4gPSAoIHwgfCAxIC0g
KHJfaykgICkgICAgLAorICAgICAgICAgICAgICBrPTEKK11dPgorPC9hcnR3b3JrPgorPC9maWd1
cmU+Cit3aGVyZSByX2sgaXMgdGhlIGsndGggcmVmbGVjdGlvbiBjb2VmZmljaWVudC4KKzwvdD4K
KworPHQ+CitJbml0aWFsIHZhbHVlcyBmb3IgdGhlIHF1YW50aXphdGlvbiBnYWlucyBhcmUgY29t
cHV0ZWQgYXMgdGhlIHNxdWFyZS1yb290IG9mCit0aGUgcmVzaWR1YWwgZW5lcmd5IG9mIHRoZSBM
UEMgYW5hbHlzaXMsIGFkanVzdGVkIGJ5IHRoZSBjb2RpbmcgcXVhbGl0eSBjb250cm9sCitwYXJh
bWV0ZXIuCitUaGVzZSBxdWFudGl6YXRpb24gZ2FpbnMgYXJlIGxhdGVyIGFkanVzdGVkIGJhc2Vk
IG9uIHRoZSByZXN1bHRzIG9mIHRoZQorcHJlZGljdGlvbiBhbmFseXNpcy4KKzwvdD4KKzwvc2Vj
dGlvbj4KKworPHNlY3Rpb24gdGl0bGU9J1ByZWRpY3Rpb24gQW5hbHlzaXMnIGFuY2hvcj0ncHJl
ZF9hbmFfb3ZlcnZpZXdfc2VjdGlvbic+Cis8dD4KK1RoZSBwcmVkaWN0aW9uIGFuYWx5c2lzIGlz
IHBlcmZvcm1lZCBpbiBvbmUgb2YgdHdvIHdheXMgZGVwZW5kaW5nIG9uIGhvdwordGhlIHBpdGNo
IGVzdGltYXRvciBjbGFzc2lmaWVkIHRoZSBmcmFtZS4KK1RoZSBwcm9jZXNzaW5nIGZvciB2b2lj
ZWQgYW5kIHVudm9pY2VkIHNwZWVjaCBpcyBkZXNjcmliZWQgaW4KKzx4cmVmIHRhcmdldD0ncHJl
ZF9hbmFfdm9pY2VkX292ZXJ2aWV3X3NlY3Rpb24nIC8+IGFuZAorICA8eHJlZiB0YXJnZXQ9J3By
ZWRfYW5hX3Vudm9pY2VkX292ZXJ2aWV3X3NlY3Rpb24nIC8+LCByZXNwZWN0aXZlbHkuCisgIElu
cHV0cyB0byB0aGlzIGZ1bmN0aW9uIGluY2x1ZGUgdGhlIHByZS13aGl0ZW5lZCBzaWduYWwgZnJv
bSB0aGUKKyAgcGl0Y2ggZXN0aW1hdG9yIChzZWUgPHhyZWYgdGFyZ2V0PSdwaXRjaF9lc3RpbWF0
b3Jfb3ZlcnZpZXdfc2VjdGlvbicvPikuCis8L3Q+CisKKzxzZWN0aW9uIHRpdGxlPSdWb2ljZWQg
U3BlZWNoJyBhbmNob3I9J3ByZWRfYW5hX3ZvaWNlZF9vdmVydmlld19zZWN0aW9uJz4KKzx0Pgor
ICBGb3IgYSBmcmFtZSBvZiB2b2ljZWQgc3BlZWNoIHRoZSBwaXRjaCBwdWxzZXMgd2lsbCByZW1h
aW4gZG9taW5hbnQgaW4gdGhlCisgIHByZS13aGl0ZW5lZCBpbnB1dCBzaWduYWwuCisgIEZ1cnRo
ZXIgd2hpdGVuaW5nIGlzIGRlc2lyYWJsZSBhcyBpdCBsZWFkcyB0byBoaWdoZXIgcXVhbGl0eSBh
dCB0aGUgc2FtZQorICBhdmFpbGFibGUgYml0cmF0ZS4KKyAgVG8gYWNoaWV2ZSB0aGlzLCBhIExv
bmctVGVybSBQcmVkaWN0aW9uIChMVFApIGFuYWx5c2lzIGlzIGNhcnJpZWQgb3V0IHRvCisgIGVz
dGltYXRlIHRoZSBjb2VmZmljaWVudHMgb2YgYSBmaWZ0aC1vcmRlciBMVFAgZmlsdGVyIGZvciBl
YWNoIG9mIGZvdXIKKyAgc3ViZnJhbWVzLgorICBUaGUgTFRQIGNvZWZmaWNpZW50cyBhcmUgcXVh
bnRpemVkIHVzaW5nIHRoZSBtZXRob2QgZGVzY3JpYmVkIGluCisgIDx4cmVmIHRhcmdldD0nbHRw
X3F1YW50aXplcl9vdmVydmlld19zZWN0aW9uJy8+LCBhbmQgdGhlIHF1YW50aXplZCBMVFAKKyAg
Y29lZmZpY2llbnRzIGFyZSB1c2VkIHRvIGNvbXB1dGUgdGhlIExUUCByZXNpZHVhbCBzaWduYWwu
CisgIFRoaXMgTFRQIHJlc2lkdWFsIHNpZ25hbCBpcyB0aGUgaW5wdXQgdG8gYW4gTFBDIGFuYWx5
c2lzIHdoZXJlIHRoZSBMUEMgY29lZmZpY2llbnRzIGFyZQorICBlc3RpbWF0ZWQgdXNpbmcgQnVy
ZydzIG1ldGhvZCA8eHJlZiB0YXJnZXQ9IkJ1cmciLz4sIHN1Y2ggdGhhdCB0aGUgcmVzaWR1YWwg
ZW5lcmd5IGlzIG1pbmltaXplZC4KKyAgVGhlIGVzdGltYXRlZCBMUEMgY29lZmZpY2llbnRzIGFy
ZSBjb252ZXJ0ZWQgdG8gYSBMaW5lIFNwZWN0cmFsIEZyZXF1ZW5jeSAoTFNGKSB2ZWN0b3IKKyAg
YW5kIHF1YW50aXplZCBhcyBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSdsc2ZfcXVhbnRpemVy
X292ZXJ2aWV3X3NlY3Rpb24nLz4uCitBZnRlciBxdWFudGl6YXRpb24sIHRoZSBxdWFudGl6ZWQg
TFNGIHZlY3RvciBpcyBjb252ZXJ0ZWQgYmFjayB0byBMUEMKK2NvZWZmaWNpZW50cyB1c2luZyB0
aGUgZnVsbCBwcm9jZWR1cmUgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZzIi8+LgorQnkgdXNp
bmcgcXVhbnRpemVkIExUUCBjb2VmZmljaWVudHMgYW5kIExQQyBjb2VmZmljaWVudHMgZGVyaXZl
ZCBmcm9tIHRoZQorcXVhbnRpemVkIExTRiBjb2VmZmljaWVudHMsIHRoZSBlbmNvZGVyIHJlbWFp
bnMgZnVsbHkgc3luY2hyb25pemVkIHdpdGggdGhlCitkZWNvZGVyLgorVGhlIHF1YW50aXplZCBM
UEMgYW5kIExUUCBjb2VmZmljaWVudHMgYXJlIGFsc28gdXNlZCB0byBmaWx0ZXIgdGhlIGlucHV0
CitzaWduYWwgYW5kIG1lYXN1cmUgcmVzaWR1YWwgZW5lcmd5IGZvciBlYWNoIG9mIHRoZSBmb3Vy
IHN1YmZyYW1lcy4KKzwvdD4KKzwvc2VjdGlvbj4KKzxzZWN0aW9uIHRpdGxlPSdVbnZvaWNlZCBT
cGVlY2gnIGFuY2hvcj0ncHJlZF9hbmFfdW52b2ljZWRfb3ZlcnZpZXdfc2VjdGlvbic+Cis8dD4K
K0ZvciBhIHNwZWVjaCBzaWduYWwgdGhhdCBoYXMgYmVlbiBjbGFzc2lmaWVkIGFzIHVudm9pY2Vk
LCB0aGVyZSBpcyBubyBuZWVkCitmb3IgTFRQIGZpbHRlcmluZywgYXMgaXQgaGFzIGFscmVhZHkg
YmVlbiBkZXRlcm1pbmVkIHRoYXQgdGhlIHByZS13aGl0ZW5lZAoraW5wdXQgc2lnbmFsIGlzIG5v
dCBwZXJpb2RpYyBlbm91Z2ggd2l0aGluIHRoZSBhbGxvd2VkIHBpdGNoIHBlcmlvZCByYW5nZQor
Zm9yIExUUCBhbmFseXNpcyB0byBiZSB3b3J0aCB0aGUgY29zdCBpbiB0ZXJtcyBvZiBjb21wbGV4
aXR5IGFuZCBiaXRyYXRlLgorVGhlIHByZS13aGl0ZW5lZCBpbnB1dCBzaWduYWwgaXMgdGhlcmVm
b3JlIGRpc2NhcmRlZCwgYW5kIGluc3RlYWQgdGhlIGlucHV0CitzaWduYWwgaXMgdXNlZCBmb3Ig
TFBDIGFuYWx5c2lzIHVzaW5nIEJ1cmcncyBtZXRob2QuCitUaGUgcmVzdWx0aW5nIExQQyBjb2Vm
ZmljaWVudHMgYXJlIGNvbnZlcnRlZCB0byBhbiBMU0YgdmVjdG9yIGFuZCBxdWFudGl6ZWQKK2Fz
IGRlc2NyaWJlZCBpbiB0aGUgZm9sbG93aW5nIHNlY3Rpb24uCitUaGV5IGFyZSB0aGVuIHRyYW5z
Zm9ybWVkIGJhY2sgdG8gb2J0YWluIHF1YW50aXplZCBMUEMgY29lZmZpY2llbnRzLCB3aGljaAor
YXJlIHRoZW4gdXNlZCB0byBmaWx0ZXIgdGhlIGlucHV0IHNpZ25hbCBhbmQgbWVhc3VyZSByZXNp
ZHVhbCBlbmVyZ3kgZm9yCitlYWNoIG9mIHRoZSBmb3VyIHN1YmZyYW1lcy4KKzwvdD4KKzxzZWN0
aW9uIHRpdGxlPSJCdXJnJ3MgTWV0aG9kIj4KKzx0PgorVGhlIG1haW4gcHVycG9zZSBvZiBsaW5l
YXIgcHJlZGljdGlvbiBpbiBTSUxLIGlzIHRvIHJlZHVjZSB0aGUgYml0cmF0ZSBieQorbWluaW1p
emluZyB0aGUgcmVzaWR1YWwgZW5lcmd5LgorQXQgbGVhc3QgYXQgaGlnaCBiaXRyYXRlcywgcGVy
Y2VwdHVhbCBhc3BlY3RzIGFyZSBoYW5kbGVkCitpbmRlcGVuZGVudGx5IGJ5IHRoZSBub2lzZSBz
aGFwaW5nIGZpbHRlci4KK0J1cmcncyBtZXRob2QgaXMgdXNlZCBiZWNhdXNlIGl0IHByb3ZpZGVz
IGhpZ2hlciBwcmVkaWN0aW9uIGdhaW4KK3RoYW4gdGhlIGF1dG9jb3JyZWxhdGlvbiBtZXRob2Qg
YW5kLCB1bmxpa2UgdGhlIGNvdmFyaWFuY2UgbWV0aG9kLAorcHJvZHVjZXMgc3RhYmxlIGZpbHRl
cnMgKGFzc3VtaW5nIG51bWVyaWNhbCBlcnJvcnMgZG9uJ3Qgc3BvaWwKK3RoYXQpLiBTSUxLJ3Mg
aW1wbGVtZW50YXRpb24gb2YgQnVyZydzIG1ldGhvZCBpcyBhbHNvIGNvbXB1dGF0aW9uYWxseQor
ZmFzdGVyIHRoYW4gdGhlIGF1dG9jb3ZhcmlhbmNlIG1ldGhvZC4KK1RoZSBpbXBsZW1lbnRhdGlv
biBvZiBCdXJnJ3MgbWV0aG9kIGRpZmZlcnMgZnJvbSB0cmFkaXRpb25hbAoraW1wbGVtZW50YXRp
b25zIGluIHR3byBhc3BlY3RzLgorVGhlIGZpcnN0IGRpZmZlcmVuY2UgaXMgdGhhdCBpdAorb3Bl
cmF0ZXMgb24gYXV0b2NvcnJlbGF0aW9ucywgc2ltaWxhciB0byB0aGUgU2NodXIgYWxnb3JpdGht
IDx4cmVmIHRhcmdldD0iU2NodXIiLz4sIGJ1dAord2l0aCBhIHNpbXBsZSB1cGRhdGUgdG8gdGhl
IGF1dG9jb3JyZWxhdGlvbnMgYWZ0ZXIgZmluZGluZyBlYWNoCityZWZsZWN0aW9uIGNvZWZmaWNp
ZW50IHRvIG1ha2UgdGhlIHJlc3VsdCBpZGVudGljYWwgdG8gQnVyZydzIG1ldGhvZC4KK1RoaXMg
YnJpbmdzIGRvd24gdGhlIGNvbXBsZXhpdHkgb2YgQnVyZydzIG1ldGhvZCB0byBuZWFyIHRoYXQg
b2YKK3RoZSBhdXRvY29ycmVsYXRpb24gbWV0aG9kLgorVGhlIHNlY29uZCBkaWZmZXJlbmNlIGlz
IHRoYXQgdGhlIHNpZ25hbCBpbiBlYWNoIHN1YmZyYW1lIGlzIHNjYWxlZAorYnkgdGhlIGludmVy
c2Ugb2YgdGhlIHJlc2lkdWFsIHF1YW50aXphdGlvbiBzdGVwIHNpemUuICBTdWJmcmFtZXMgd2l0
aAorYSBzbWFsbCBxdWFudGl6YXRpb24gc3RlcCBzaXplIHdpbGwgb24gYXZlcmFnZSBzcGVuZCBt
b3JlIGJpdHMgZm9yIGEKK2dpdmVuIGFtb3VudCBvZiByZXNpZHVhbCBlbmVyZ3kgdGhhbiBzdWJm
cmFtZXMgd2l0aCBhIGxhcmdlIHN0ZXAgc2l6ZS4KK1dpdGhvdXQgc2NhbGluZywgQnVyZydzIG1l
dGhvZCBtaW5pbWl6ZXMgdGhlIHRvdGFsIHJlc2lkdWFsIGVuZXJneSBpbgorYWxsIHN1YmZyYW1l
cywgd2hpY2ggZG9lc24ndCBuZWNlc3NhcmlseSBtaW5pbWl6ZSB0aGUgdG90YWwgbnVtYmVyIG9m
CitiaXRzIG5lZWRlZCBmb3IgY29kaW5nIHRoZSBxdWFudGl6ZWQgcmVzaWR1YWwuICBUaGUgcmVz
aWR1YWwgZW5lcmd5CitvZiB0aGUgc2NhbGVkIHN1YmZyYW1lcyBpcyBhIGJldHRlciBtZWFzdXJl
IGZvciB0aGF0IG51bWJlciBvZgorYml0cy4KKzwvdD4KKzwvc2VjdGlvbj4KKzwvc2VjdGlvbj4K
Kzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9J0xTRiBRdWFudGl6YXRpb24nIGFuY2hvcj0n
bHNmX3F1YW50aXplcl9vdmVydmlld19zZWN0aW9uJz4KKzx0PgorVW5saWtlIG1hbnkgb3RoZXIg
c3BlZWNoIGNvZGVjcywgU0lMSyB1c2VzIHZhcmlhYmxlIGJpdHJhdGUgY29kaW5nCitmb3IgdGhl
IExTRnMuCitUaGlzIGltcHJvdmVzIHRoZSBhdmVyYWdlIHJhdGUtZGlzdG9ydGlvbiAoUi1EKSB0
cmFkZW9mZiBhbmQgcmVkdWNlcyBvdXRsaWVycy4KK1RoZSB2YXJpYWJsZSBiaXRyYXRlIGNvZGlu
ZyBtaW5pbWl6ZXMgYSBsaW5lYXIgY29tYmluYXRpb24gb2YgdGhlIHdlaWdodGVkCitxdWFudGl6
YXRpb24gZXJyb3JzIGFuZCB0aGUgYml0cmF0ZS4KK1RoZSB3ZWlnaHRzIGZvciB0aGUgcXVhbnRp
emF0aW9uIGVycm9ycyBhcmUgdGhlIEludmVyc2UKK0hhcm1vbmljIE1lYW4gV2VpZ2h0aW5nIChJ
SE1XKSBmdW5jdGlvbiBwcm9wb3NlZCBieSBMYXJvaWEgZXQgYWwuCisoc2VlIDx4cmVmIHRhcmdl
dD0ibGFyb2lhLWljYXNzcCIgLz4pLgorVGhlc2Ugd2VpZ2h0cyBhcmUgcmVmZXJyZWQgdG8gaGVy
ZSBhcyBMYXJvaWEgd2VpZ2h0cy4KKzwvdD4KKzx0PgorVGhlIExTRiBxdWFudGl6ZXIgY29uc2lz
dHMgb2YgdHdvIHN0YWdlcy4KK1RoZSBmaXJzdCBzdGFnZSBpcyBhbiAodW53ZWlnaHRlZCkgdmVj
dG9yIHF1YW50aXplciAoVlEpLCB3aXRoIGEKK2NvZGVib29rIHNpemUgb2YgMzIgdmVjdG9ycy4K
K1RoZSBxdWFudGl6YXRpb24gZXJyb3JzIGZvciB0aGUgY29kZWJvb2sgdmVjdG9yIGFyZSBzb3J0
ZWQsIGFuZAorZm9yIHRoZSBOIGJlc3QgdmVjdG9ycyBhIHNlY29uZCBzdGFnZSBxdWFudGl6ZXIg
aXMgcnVuLgorQnkgdmFyeWluZyB0aGUgbnVtYmVyIE4gYSB0cmFkZW9mZiBpcyBtYWRlIGJldHdl
ZW4gUi1EIHBlcmZvcm1hbmNlCithbmQgY29tcHV0YXRpb25hbCBlZmZpY2llbmN5LgorRm9yIGVh
Y2ggb2YgdGhlIE4gY29kZWJvb2sgdmVjdG9ycyB0aGUgTGFyb2lhIHdlaWdodHMgY29ycmVzcG9u
ZGluZwordG8gdGhhdCB2ZWN0b3IgKGFuZCBub3QgdG8gdGhlIGlucHV0IHZlY3RvcikgYXJlIGNh
bGN1bGF0ZWQuCitUaGVuIHRoZSByZXNpZHVhbCBiZXR3ZWVuIHRoZSBpbnB1dCBMU0YgdmVjdG9y
IGFuZCB0aGUgY29kZWJvb2sKK3ZlY3RvciBpcyBzY2FsZWQgYnkgdGhlIHNxdWFyZSByb290cyBv
ZiB0aGVzZSBMYXJvaWEgd2VpZ2h0cy4KK1RoaXMgc2NhbGluZyBwYXJ0aWFsbHkgbm9ybWFsaXpl
cyBlcnJvciBzZW5zaXRpdml0eSBmb3IgdGhlCityZXNpZHVhbCB2ZWN0b3IsIHNvIHRoYXQgYSB1
bmlmb3JtIHF1YW50aXplciB3aXRoIGZpeGVkCitzdGVwIHNpemVzIGNhbiBiZSB1c2VkIGluIHRo
ZSBzZWNvbmQgc3RhZ2Ugd2l0aG91dCB0b28gbXVjaAorcGVyZm9ybWFuY2UgbG9zcy4KK0FuZCBi
eSBzY2FsaW5nIHdpdGggTGFyb2lhIHdlaWdodHMgZGV0ZXJtaW5lZCBmcm9tIHRoZSBmaXJzdC1z
dGFnZQorY29kZWJvb2sgdmVjdG9yLCB0aGUgcHJvY2VzcyBjYW4gYmUgcmV2ZXJzZWQgaW4gdGhl
IGRlY29kZXIuCis8L3Q+Cis8dD4KK1RoZSBzZWNvbmQgc3RhZ2UgdXNlcyBwcmVkaWN0aXZlIGRl
bGF5ZWQgZGVjaXNpb24gc2NhbGFyCitxdWFudGl6YXRpb24uCitUaGUgcXVhbnRpemF0aW9uIGVy
cm9yIGlzIHdlaWdodGVkIGJ5IExhcm9pYSB3ZWlnaHRzIGRldGVybWluZWQKK2Zyb20gdGhlIExT
RiBpbnB1dCB2ZWN0b3IuCitUaGUgcHJlZGljdG9yIG11bHRpcGxpZXMgdGhlIHByZXZpb3VzIHF1
YW50aXplZCByZXNpZHVhbCB2YWx1ZQorYnkgYSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50IHRoYXQg
ZGVwZW5kcyBvbiB0aGUgdmVjdG9yIGluZGV4IGZyb20gdGhlCitmaXJzdCBzdGFnZSBWUSBhbmQg
b24gdGhlIGxvY2F0aW9uIGluIHRoZSBMU0YgdmVjdG9yLgorVGhlIHByZWRpY3Rpb24gaXMgc3Vi
dHJhY3RlZCBmcm9tIHRoZSBMU0YgcmVzaWR1YWwgdmFsdWUgYmVmb3JlCitxdWFudGl6aW5nIHRo
ZSByZXN1bHQsIGFuZCBhZGRlZCBiYWNrIGFmdGVyd2FyZHMuCitUaGlzIHN1YnRyYWN0aW9uIGNh
biBiZSBpbnRlcnByZXRlZCBhcyBzaGlmdGluZyB0aGUgcXVhbnRpemF0aW9uIGxldmVscworb2Yg
dGhlIHNjYWxhciBxdWFudGl6ZXIsIGFuZCBhcyBhIHJlc3VsdCB0aGUgcXVhbnRpemF0aW9uIGVy
cm9yIG9mCitlYWNoIHZhbHVlIGRlcGVuZHMgb24gdGhlIHF1YW50aXphdGlvbiBkZWNpc2lvbiBv
ZiB0aGUgcHJldmlvdXMgdmFsdWUuCitUaGlzIGRlcGVuZGVuY3kgaXMgZXhwbG9pdGVkIGJ5IHRo
ZSBkZWxheWVkIGRlY2lzaW9uIG1lY2hhbmlzbSB0bworc2VhcmNoIGZvciBhIHF1YW50aXphdGlv
biBzZXF1ZW5jeSB3aXRoIGJlc3QgUi1EIHBlcmZvcm1hbmNlCit3aXRoIGEgVml0ZXJiaS1saWtl
IGFsZ29yaXRobSA8eHJlZiB0YXJnZXQ9IlZpdGVyYmkiLz4uCitUaGUgcXVhbnRpemVyIHByb2Nl
c3NlcyB0aGUgcmVzaWR1YWwgTFNGIHZlY3RvciBpbiByZXZlcnNlIG9yZGVyCisoaS5lLiwgaXQg
c3RhcnRzIHdpdGggdGhlIGhpZ2hlc3QgcmVzaWR1YWwgTFNGIHZhbHVlKS4KK1RoaXMgaXMgZG9u
ZSBiZWNhdXNlIHRoZSBwcmVkaWN0aW9uIHdvcmtzIHNsaWdodGx5CitiZXR0ZXIgaW4gdGhlIHJl
dmVyc2UgZGlyZWN0aW9uLgorPC90PgorPHQ+CitUaGUgcXVhbnRpemF0aW9uIGluZGV4IG9mIHRo
ZSBmaXJzdCBzdGFnZSBpcyBlbnRyb3B5IGNvZGVkLgorVGhlIHF1YW50aXphdGlvbiBzZXF1ZW5j
ZSBmcm9tIHRoZSBzZWNvbmQgc3RhZ2UgaXMgYWxzbyBlbnRyb3B5Citjb2RlZCwgd2hlcmUgZm9y
IGVhY2ggZWxlbWVudCB0aGUgcHJvYmFiaWxpdHkgdGFibGUgaXMgY2hvc2VuCitkZXBlbmRpbmcg
b24gdGhlIHZlY3RvciBpbmRleCBmcm9tIHRoZSBmaXJzdCBzdGFnZSBhbmQgdGhlIGxvY2F0aW9u
CitvZiB0aGF0IGVsZW1lbnQgaW4gdGhlIExTRiB2ZWN0b3IuCis8L3Q+CisKKzxzZWN0aW9uIHRp
dGxlPSdMU0YgU3RhYmlsaXphdGlvbicgYW5jaG9yPSdsc2Zfc3RhYmlsaXplcl9vdmVydmlld19z
ZWN0aW9uJz4KKzx0PgorSWYgdGhlIGlucHV0IGlzIHN0YWJsZSwgZmluZGluZyB0aGUgYmVzdCBj
YW5kaWRhdGUgdXN1YWxseSByZXN1bHRzIGluIGEKK3F1YW50aXplZCB2ZWN0b3IgdGhhdCBpcyBh
bHNvIHN0YWJsZS4gQmVjYXVzZSBvZiB0aGUgdHdvLXN0YWdlIGFwcHJvYWNoLAoraG93ZXZlciwg
aXQgaXMgcG9zc2libGUgdGhhdCB0aGUgYmVzdCBxdWFudGl6YXRpb24gY2FuZGlkYXRlIGlzIHVu
c3RhYmxlLgorVGhlIGVuY29kZXIgYXBwbGllcyB0aGUgc2FtZSBzdGFiaWxpemF0aW9uIHByb2Nl
ZHVyZSBhcHBsaWVkIGJ5IHRoZSBkZWNvZGVyCisgKHNlZSA8eHJlZiB0YXJnZXQ9InNpbGtfbmxz
Zl9zdGFiaWxpemF0aW9uIi8+IHRvIGVuc3VyZSB0aGUgTFNGIHBhcmFtZXRlcnMKKyBhcmUgd2l0
aGluIHRoZWlyIHZhbGlkIHJhbmdlLCBpbmNyZWFzaW5nbHkgc29ydGVkLCBhbmQgaGF2ZSBtaW5p
bXVtCisgZGlzdGFuY2VzIGJldHdlZW4gZWFjaCBvdGhlciBhbmQgdGhlIGJvcmRlciB2YWx1ZXMu
Cis8L3Q+Cis8L3NlY3Rpb24+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSdMVFAgUXVh
bnRpemF0aW9uJyBhbmNob3I9J2x0cF9xdWFudGl6ZXJfb3ZlcnZpZXdfc2VjdGlvbic+Cis8dD4K
K0ZvciB2b2ljZWQgZnJhbWVzLCB0aGUgcHJlZGljdGlvbiBhbmFseXNpcyBkZXNjcmliZWQgaW4K
Kzx4cmVmIHRhcmdldD0ncHJlZF9hbmFfdm9pY2VkX292ZXJ2aWV3X3NlY3Rpb24nIC8+IHJlc3Vs
dGVkIGluIGZvdXIgc2V0cworKG9uZSBzZXQgcGVyIHN1YmZyYW1lKSBvZiBmaXZlIExUUCBjb2Vm
ZmljaWVudHMsIHBsdXMgZm91ciB3ZWlnaHRpbmcgbWF0cmljZXMuCitUaGUgTFRQIGNvZWZmaWNp
ZW50cyBmb3IgZWFjaCBzdWJmcmFtZSBhcmUgcXVhbnRpemVkIHVzaW5nIGVudHJvcHkgY29uc3Ry
YWluZWQKK3ZlY3RvciBxdWFudGl6YXRpb24uCitBIHRvdGFsIG9mIHRocmVlIHZlY3RvciBjb2Rl
Ym9va3MgYXJlIGF2YWlsYWJsZSBmb3IgcXVhbnRpemF0aW9uLCB3aXRoCitkaWZmZXJlbnQgcmF0
ZS1kaXN0b3J0aW9uIHRyYWRlLW9mZnMuIFRoZSB0aHJlZSBjb2RlYm9va3MgaGF2ZSAxMCwgMjAs
IGFuZAorNDAgdmVjdG9ycyBhbmQgYXZlcmFnZSByYXRlcyBvZiBhYm91dCAzLCA0LCBhbmQgNSBi
aXRzIHBlciB2ZWN0b3IsIHJlc3BlY3RpdmVseS4KK0NvbnNlcXVlbnRseSwgdGhlIGZpcnN0IGNv
ZGVib29rIGhhcyBsYXJnZXIgYXZlcmFnZSBxdWFudGl6YXRpb24gZGlzdG9ydGlvbiBhdAorYSBs
b3dlciByYXRlLCB3aGVyZWFzIHRoZSBsYXN0IGNvZGVib29rIGhhcyBzbWFsbGVyIGF2ZXJhZ2Ug
cXVhbnRpemF0aW9uCitkaXN0b3J0aW9uIGF0IGEgaGlnaGVyIHJhdGUuCitHaXZlbiB0aGUgd2Vp
Z2h0aW5nIG1hdHJpeCBXX2x0cCBhbmQgTFRQIHZlY3RvciBiLCB0aGUgd2VpZ2h0ZWQgcmF0ZS1k
aXN0b3J0aW9uCittZWFzdXJlIGZvciBhIGNvZGVib29rIHZlY3RvciBjYl9pIHdpdGggcmF0ZSBy
X2kgaXMgZ2l2ZSBieQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJj
ZW50ZXIiPgorPCFbQ0RBVEFbCisgUkQgPSB1ICogKGIgLSBjYl9pKScgKiBXX2x0cCAqIChiIC0g
Y2JfaSkgKyByX2ksCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgord2hlcmUgdSBpcyBhIGZp
eGVkLCBoZXVyaXN0aWNhbGx5LWRldGVybWluZWQgcGFyYW1ldGVyIGJhbGFuY2luZyB0aGUgZGlz
dG9ydGlvbgorYW5kIHJhdGUuCitXaGljaCBjb2RlYm9vayBnaXZlcyB0aGUgYmVzdCBwZXJmb3Jt
YW5jZSBmb3IgYSBnaXZlbiBMVFAgdmVjdG9yIGRlcGVuZHMgb24gdGhlCit3ZWlnaHRpbmcgbWF0
cml4IGZvciB0aGF0IExUUCB2ZWN0b3IuCitGb3IgZXhhbXBsZSwgZm9yIGEgbG93IHZhbHVlZCBX
X2x0cCwgaXQgaXMgYWR2YW50YWdlb3VzIHRvIHVzZSB0aGUgY29kZWJvb2sKK3dpdGggMTAgdmVj
dG9ycyBhcyBpdCBoYXMgYSBsb3dlciBhdmVyYWdlIHJhdGUuCitGb3IgYSBsYXJnZSBXX2x0cCwg
b24gdGhlIG90aGVyIGhhbmQsIGl0IGlzIG9mdGVuIGJldHRlciB0byB1c2UgdGhlIGNvZGVib29r
Cit3aXRoIDQwIHZlY3RvcnMsIGFzIGl0IGlzIG1vcmUgbGlrZWx5IHRvIGNvbnRhaW4gdGhlIGJl
c3QgY29kZWJvb2sgdmVjdG9yLgorVGhlIHdlaWdodGluZyBtYXRyaXggV19sdHAgZGVwZW5kcyBt
b3N0bHkgb24gdHdvIGFzcGVjdHMgb2YgdGhlIGlucHV0IHNpZ25hbC4KK1RoZSBmaXJzdCBpcyB0
aGUgcGVyaW9kaWNpdHkgb2YgdGhlIHNpZ25hbDsgdGhlIG1vcmUgcGVyaW9kaWMsIHRoZSBsYXJn
ZXIgV19sdHAuCitUaGUgc2Vjb25kIGlzIHRoZSBjaGFuZ2UgaW4gc2lnbmFsIGVuZXJneSBpbiB0
aGUgY3VycmVudCBzdWJmcmFtZSwgcmVsYXRpdmUgdG8KK3RoZSBzaWduYWwgb25lIHBpdGNoIGxh
ZyBlYXJsaWVyLgorQSBkZWNheWluZyBlbmVyZ3kgbGVhZHMgdG8gYSBsYXJnZXIgV19sdHAgdGhh
biBhbiBpbmNyZWFzaW5nIGVuZXJneS4KK0JvdGggYXNwZWN0cyBmbHVjdHVhdGUgcmVsYXRpdmVs
eSBzbG93bHksIHdoaWNoIGNhdXNlcyB0aGUgV19sdHAgbWF0cmljZXMgZm9yCitkaWZmZXJlbnQg
c3ViZnJhbWVzIG9mIG9uZSBmcmFtZSBvZnRlbiB0byBiZSBzaW1pbGFyLgorQmVjYXVzZSBvZiB0
aGlzLCBvbmUgb2YgdGhlIHRocmVlIGNvZGVib29rcyB0eXBpY2FsbHkgZ2l2ZXMgZ29vZCBwZXJm
b3JtYW5jZQorZm9yIGFsbCBzdWJmcmFtZXMsIGFuZCB0aGVyZWZvcmUgdGhlIGNvZGVib29rIHNl
YXJjaCBmb3IgdGhlIHN1YmZyYW1lIExUUAordmVjdG9ycyBpcyBjb25zdHJhaW5lZCB0byBvbmx5
IGFsbG93IGNvZGVib29rIHZlY3RvcnMgdG8gYmUgY2hvc2VuIGZyb20gdGhlCitzYW1lIGNvZGVi
b29rLCByZXN1bHRpbmcgaW4gYSByYXRlIHJlZHVjdGlvbi4KKzwvdD4KKworPHQ+CitUbyBmaW5k
IHRoZSBiZXN0IGNvZGVib29rLCBlYWNoIG9mIHRoZSB0aHJlZSB2ZWN0b3IgY29kZWJvb2tzIGlz
Cit1c2VkIHRvIHF1YW50aXplIGFsbCBzdWJmcmFtZSBMVFAgdmVjdG9ycyBhbmQgcHJvZHVjZSBh
IGNvbWJpbmVkCit3ZWlnaHRlZCByYXRlLWRpc3RvcnRpb24gbWVhc3VyZSBmb3IgZWFjaCB2ZWN0
b3IgY29kZWJvb2suCitUaGUgdmVjdG9yIGNvZGVib29rIHdpdGggdGhlIGxvd2VzdCBjb21iaW5l
ZCByYXRlLWRpc3RvcnRpb24KK292ZXIgYWxsIHN1YmZyYW1lcyBpcyBjaG9zZW4uIFRoZSBxdWFu
dGl6ZWQgTFRQIHZlY3RvcnMgYXJlIHVzZWQKK2luIHRoZSBub2lzZSBzaGFwaW5nIHF1YW50aXpl
ciwgYW5kIHRoZSBpbmRleCBvZiB0aGUgY29kZWJvb2sKK3BsdXMgdGhlIGZvdXIgaW5kaWNlcyBm
b3IgdGhlIGZvdXIgc3ViZnJhbWUgY29kZWJvb2sgdmVjdG9ycworYXJlIHBhc3NlZCBvbiB0byB0
aGUgcmFuZ2UgZW5jb2Rlci4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9J1By
ZWZpbHRlcic+Cis8dD4KK0luIHRoZSBwcmVmaWx0ZXIgdGhlIGlucHV0IHNpZ25hbCBpcyBmaWx0
ZXJlZCB1c2luZyB0aGUgc3BlY3RyYWwgdmFsbGV5CitkZS1lbXBoYXNpcyBmaWx0ZXIgY29lZmZp
Y2llbnRzIGZyb20gdGhlIG5vaXNlIHNoYXBpbmcgYW5hbHlzaXMKKyhzZWUgPHhyZWYgdGFyZ2V0
PSdub2lzZV9zaGFwaW5nX2FuYWx5c2lzX292ZXJ2aWV3X3NlY3Rpb24nLz4pLgorQnkgYXBwbHlp
bmcgb25seSB0aGUgbm9pc2Ugc2hhcGluZyBhbmFseXNpcyBmaWx0ZXIgdG8gdGhlIGlucHV0IHNp
Z25hbCwKK2l0IHByb3ZpZGVzIHRoZSBpbnB1dCB0byB0aGUgbm9pc2Ugc2hhcGluZyBxdWFudGl6
ZXIuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSdOb2lzZSBTaGFwaW5nIFF1
YW50aXplcic+Cis8dD4KK1RoZSBub2lzZSBzaGFwaW5nIHF1YW50aXplciBpbmRlcGVuZGVudGx5
IHNoYXBlcyB0aGUgc2lnbmFsIGFuZCBjb2Rpbmcgbm9pc2UKK3NwZWN0cmEgdG8gb2J0YWluIGEg
cGVyY2VwdHVhbGx5IGhpZ2hlciBxdWFsaXR5IGF0IHRoZSBzYW1lIGJpdHJhdGUuCis8L3Q+Cis8
dD4KK1RoZSBwcmVmaWx0ZXIgb3V0cHV0IHNpZ25hbCBpcyBtdWx0aXBsaWVkIHdpdGggYSBjb21w
ZW5zYXRpb24gZ2FpbiBHIGNvbXB1dGVkCitpbiB0aGUgbm9pc2Ugc2hhcGluZyBhbmFseXNpcy4g
VGhlbiB0aGUgb3V0cHV0IG9mIGEgc3ludGhlc2lzIHNoYXBpbmcgZmlsdGVyCitpcyBhZGRlZCwg
YW5kIHRoZSBvdXRwdXQgb2YgYSBwcmVkaWN0aW9uIGZpbHRlciBpcyBzdWJ0cmFjdGVkIHRvIGNy
ZWF0ZSBhCityZXNpZHVhbCBzaWduYWwuCitUaGUgcmVzaWR1YWwgc2lnbmFsIGlzIG11bHRpcGxp
ZWQgYnkgdGhlIGludmVyc2UgcXVhbnRpemVkIHF1YW50aXphdGlvbiBnYWluCitmcm9tIHRoZSBu
b2lzZSBzaGFwaW5nIGFuYWx5c2lzLCBhbmQgaW5wdXQgdG8gYSBzY2FsYXIgcXVhbnRpemVyLgor
VGhlIHF1YW50aXphdGlvbiBpbmRpY2VzIG9mIHRoZSBzY2FsYXIgcXVhbnRpemVyIHJlcHJlc2Vu
dCBhIHNpZ25hbCBvZiBwdWxzZXMKK3RoYXQgaXMgaW5wdXQgdG8gdGhlIHB5cmFtaWQgcmFuZ2Ug
ZW5jb2Rlci4KK1RoZSBzY2FsYXIgcXVhbnRpemVyIGFsc28gb3V0cHV0cyBhIHF1YW50aXphdGlv
biBzaWduYWwsIHdoaWNoIGlzIG11bHRpcGxpZWQKK2J5IHRoZSBxdWFudGl6ZWQgcXVhbnRpemF0
aW9uIGdhaW4gZnJvbSB0aGUgbm9pc2Ugc2hhcGluZyBhbmFseXNpcyB0byBjcmVhdGUKK2FuIGV4
Y2l0YXRpb24gc2lnbmFsLgorVGhlIG91dHB1dCBvZiB0aGUgcHJlZGljdGlvbiBmaWx0ZXIgaXMg
YWRkZWQgdG8gdGhlIGV4Y2l0YXRpb24gc2lnbmFsIHRvIGZvcm0KK3RoZSBxdWFudGl6ZWQgb3V0
cHV0IHNpZ25hbCB5KG4pLgorVGhlIHF1YW50aXplZCBvdXRwdXQgc2lnbmFsIHkobikgaXMgaW5w
dXQgdG8gdGhlIHN5bnRoZXNpcyBzaGFwaW5nIGFuZAorcHJlZGljdGlvbiBmaWx0ZXJzLgorPC90
PgorPHQ+CitPcHRpb25hbGx5IHRoZSBub2lzZSBzaGFwaW5nIHF1YW50aXplciBvcGVyYXRlcyBp
biBhIGRlbGF5ZWQgZGVjaXNpb24KK21vZGUuCitJbiB0aGlzIG1vZGUgaXQgdXNlcyBhIFZpdGVy
YmkgYWxnb3JpdGhtIHRvIGtlZXAgdHJhY2sgb2YKK211bHRpcGxlIHJvdW5kaW5nIGNob2ljZXMg
aW4gdGhlIHF1YW50aXplciBhbmQgc2VsZWN0IHRoZSBiZXN0CitvbmUgYWZ0ZXIgYSBkZWxheSBv
ZiAzMiBzYW1wbGVzLiAgVGhpcyBpbXByb3ZlcyB0aGUgcmF0ZS9kaXN0b3J0aW9uCitwZXJmb3Jt
YW5jZSBvZiB0aGUgcXVhbnRpemVyLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRs
ZT0nQ29uc3RhbnQgQml0cmF0ZSBNb2RlJz4KKzx0PgorICBTSUxLIHdhcyBkZXNpZ25lZCB0byBy
dW4gaW4gVmFyaWFibGUgQml0cmF0ZSAoVkJSKSBtb2RlLiAgSG93ZXZlcgorICB0aGUgcmVmZXJl
bmNlIGltcGxlbWVudGF0aW9uIGFsc28gaGFzIGEgQ29uc3RhbnQgQml0cmF0ZSAoQ0JSKSBtb2Rl
CisgIGZvciBTSUxLLiAgSW4gQ0JSIG1vZGUgU0lMSyB3aWxsIGF0dGVtcHQgdG8gZW5jb2RlIGVh
Y2ggcGFja2V0IHdpdGgKKyAgbm8gbW9yZSB0aGFuIHRoZSBhbGxvd2VkIG51bWJlciBvZiBiaXRz
LiAgVGhlIE9wdXMgd3JhcHBlciBjb2RlCisgIHRoZW4gcGFkcyB0aGUgYml0c3RyZWFtIGlmIGFu
eSB1bnVzZWQgYml0cyBhcmUgbGVmdCBpbiBTSUxLIG1vZGUsIG9yCisgIGVuY29kZXMgdGhlIGhp
Z2ggYmFuZCB3aXRoIHRoZSByZW1haW5pbmcgbnVtYmVyIG9mIGJpdHMgaW4gSHlicmlkIG1vZGUu
CisgIFRoZSBudW1iZXIgb2YgcGF5bG9hZCBiaXRzIGlzIGFkanVzdGVkIGJ5IGNoYW5naW5nCisg
IHRoZSBxdWFudGl6YXRpb24gZ2FpbnMgYW5kIHRoZSByYXRlL2Rpc3RvcnRpb24gdHJhZGVvZmYg
aW4gdGhlIG5vaXNlCisgIHNoYXBpbmcgcXVhbnRpemVyLCBpbiBhbiBpdGVyYXRpdmUgbG9vcAor
ICBhcm91bmQgdGhlIG5vaXNlIHNoYXBpbmcgcXVhbnRpemVyIGFuZCBlbnRyb3B5IGNvZGluZy4K
KyAgQ29tcGFyZWQgdG8gdGhlIFNJTEsgVkJSIG1vZGUsIHRoZSBDQlIgbW9kZSBoYXMgbG93ZXIK
KyAgYXVkaW8gcXVhbGl0eSBhdCBhIGdpdmVuIGF2ZXJhZ2UgYml0cmF0ZSwgYW5kIGFsc28gaGFz
IGhpZ2hlcgorICBjb21wdXRhdGlvbmFsIGNvbXBsZXhpdHkuCis8L3Q+Cis8L3NlY3Rpb24+CisK
Kzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCisKKzxzZWN0aW9uIHRpdGxlPSJDRUxUIEVuY29k
ZXIiPgorPHQ+CitNb3N0IG9mIHRoZSBhc3BlY3RzIG9mIHRoZSBDRUxUIGVuY29kZXIgY2FuIGJl
IGRpcmVjdGx5IGRlcml2ZWQgZnJvbSB0aGUgZGVzY3JpcHRpb24KK29mIHRoZSBkZWNvZGVyLiBG
b3IgZXhhbXBsZSwgdGhlIGZpbHRlcnMgYW5kIHJvdGF0aW9ucyBpbiB0aGUgZW5jb2RlciBhcmUg
c2ltcGx5IHRoZQoraW52ZXJzZSBvZiB0aGUgb3BlcmF0aW9uIHBlcmZvcm1lZCBieSB0aGUgZGVj
b2Rlci4gU2ltaWxhcmx5LCB0aGUgcXVhbnRpemVycyBnZW5lcmFsbHkKK29wdGltaXplIGZvciB0
aGUgbWVhbiBzcXVhcmUgZXJyb3IgKGJlY2F1c2Ugbm9pc2Ugc2hhcGluZyBpcyBwYXJ0IG9mIHRo
ZSBiaXQtc3RyZWFtIGl0c2VsZiksCitzbyBubyBzcGVjaWFsIHNlYXJjaCBpcyByZXF1aXJlZC4g
Rm9yIHRoaXMgcmVhc29uLCBvbmx5IHRoZSBsZXNzIHN0cmFpZ2h0Zm9yd2FyZCBhc3BlY3RzIG9m
IHRoZQorZW5jb2RlciBhcmUgZGVzY3JpYmVkIGhlcmUuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hv
cj0icGl0Y2gtcHJlZmlsdGVyIiB0aXRsZT0iUGl0Y2ggUHJlZmlsdGVyIj4KKzx0PlRoZSBwaXRj
aCBwcmVmaWx0ZXIgaXMgYXBwbGllZCBhZnRlciB0aGUgcHJlLWVtcGhhc2lzLiBJdCBpcyBhcHBs
aWVkCitpbiBzdWNoIGEgd2F5IGFzIHRvIGJlIHRoZSBpbnZlcnNlIG9mIHRoZSBkZWNvZGVyJ3Mg
cG9zdC1maWx0ZXIuIFRoZSBtYWluIG5vbi1vYnZpb3VzIGFzcGVjdCBvZiB0aGUKK3ByZWZpbHRl
ciBpcyB0aGUgc2VsZWN0aW9uIG9mIHRoZSBwaXRjaCBwZXJpb2QuIFRoZSBwaXRjaCBzZWFyY2gg
c2hvdWxkIGJlIG9wdGltaXplZCBmb3IgdGhlCitmb2xsb3dpbmcgY3JpdGVyaWE6Cis8bGlzdCBz
dHlsZT0ic3ltYm9scyI+Cis8dD5jb250aW51aXR5OiBpdCBpcyBpbXBvcnRhbnQgdGhhdCB0aGUg
cGl0Y2ggcGVyaW9kCitkb2VzIG5vdCBjaGFuZ2UgYWJydXB0bHkgYmV0d2VlbiBmcmFtZXM7IGFu
ZDwvdD4KKzx0PmF2b2lkYW5jZSBvZiBwaXRjaCBtdWx0aXBsZXM6IHdoZW4gdGhlIHBlcmlvZCB1
c2VkIGlzIGEgbXVsdGlwbGUgb2YgdGhlIHJlYWwgcGVyaW9kCisobG93ZXIgZnJlcXVlbmN5IGZ1
bmRhbWVudGFsKSwgdGhlIHBvc3QtZmlsdGVyIGxvc2VzIG1vc3Qgb2YgaXRzIGFiaWxpdHkgdG8g
cmVkdWNlIG5vaXNlPC90PgorPC9saXN0PgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBh
bmNob3I9Im5vcm1hbGl6YXRpb24iIHRpdGxlPSJCYW5kcyBhbmQgTm9ybWFsaXphdGlvbiI+Cis8
dD4KK1RoZSBNRENUIG91dHB1dCBpcyBkaXZpZGVkIGludG8gYmFuZHMgdGhhdCBhcmUgZGVzaWdu
ZWQgdG8gbWF0Y2ggdGhlIGVhcidzIGNyaXRpY2FsCitiYW5kcyBmb3IgdGhlIHNtYWxsZXN0ICgy
LjUmbmJzcDttcykgZnJhbWUgc2l6ZS4gVGhlIGxhcmdlciBmcmFtZSBzaXplcyB1c2UgaW50ZWdl
cgorbXVsdGlwbGVzIG9mIHRoZSAyLjUmbmJzcDttcyBsYXlvdXQuIEZvciBlYWNoIGJhbmQsIHRo
ZSBlbmNvZGVyCitjb21wdXRlcyB0aGUgZW5lcmd5IHRoYXQgd2lsbCBsYXRlciBiZSBlbmNvZGVk
LiBFYWNoIGJhbmQgaXMgdGhlbiBub3JtYWxpemVkIGJ5IHRoZQorc3F1YXJlIHJvb3Qgb2YgdGhl
IDxzcGFueCBzdHlsZT0ic3Ryb25nIj51bnF1YW50aXplZDwvc3Bhbng+IGVuZXJneSwgc3VjaCB0
aGF0IGVhY2ggYmFuZCBub3cgZm9ybXMgYSB1bml0IHZlY3RvciBYLgorVGhlIGVuZXJneSBhbmQg
dGhlIG5vcm1hbGl6YXRpb24gYXJlIGNvbXB1dGVkIGJ5IGNvbXB1dGVfYmFuZF9lbmVyZ2llcygp
CithbmQgbm9ybWFsaXNlX2JhbmRzKCkgKGJhbmRzLmMpLCByZXNwZWN0aXZlbHkuCis8L3Q+Cis8
L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZW5lcmd5LXF1YW50aXphdGlvbiIgdGl0bGU9
IkVuZXJneSBFbnZlbG9wZSBRdWFudGl6YXRpb24iPgorCis8dD4KK0VuZXJneSBxdWFudGl6YXRp
b24gKGJvdGggY29hcnNlIGFuZCBmaW5lKSBjYW4gYmUgZWFzaWx5IHVuZGVyc3Rvb2QgZnJvbSB0
aGUgZGVjb2RpbmcgcHJvY2Vzcy4KK0ZvciBhbGwgdXNlZnVsIGJpdHJhdGVzLCB0aGUgY29hcnNl
IHF1YW50aXplciBhbHdheXMgY2hvb3NlcyB0aGUgcXVhbnRpemVkIGxvZyBlbmVyZ3kgdmFsdWUg
dGhhdAorbWluaW1pemVzIHRoZSBlcnJvciBmb3IgZWFjaCBiYW5kLiBPbmx5IGF0IHZlcnkgbG93
IHJhdGUgZG9lcyB0aGUgZW5jb2RlciBhbGxvdyBsYXJnZXIgZXJyb3JzIHRvCittaW5pbWl6ZSB0
aGUgcmF0ZSBhbmQgYXZvaWQgdXNpbmcgbW9yZSBiaXRzIHRoYW4gYXJlIGF2YWlsYWJsZS4gV2hl
biB0aGUKK2F2YWlsYWJsZSBDUFUgcmVxdWlyZW1lbnRzIGFsbG93IGl0LCBpdCBpcyBiZXN0IHRv
IHRyeSBlbmNvZGluZyB0aGUgY29hcnNlIGVuZXJneSBib3RoIHdpdGggYW5kIHdpdGhvdXQKK2lu
dGVyLWZyYW1lIHByZWRpY3Rpb24gc3VjaCB0aGF0IHRoZSBiZXN0IHByZWRpY3Rpb24gbW9kZSBj
YW4gYmUgc2VsZWN0ZWQuIFRoZSBvcHRpbWFsIG1vZGUgZGVwZW5kcyBvbgordGhlIGNvZGluZyBy
YXRlLCB0aGUgYXZhaWxhYmxlIGJpdHJhdGUsIGFuZCB0aGUgY3VycmVudCByYXRlIG9mIHBhY2tl
dCBsb3NzLgorPC90PgorCis8dD5UaGUgZmluZSBlbmVyZ3kgcXVhbnRpemVyIGFsd2F5cyBjaG9v
c2VzIHRoZSBxdWFudGl6ZWQgbG9nIGVuZXJneSB2YWx1ZSB0aGF0CittaW5pbWl6ZXMgdGhlIGVy
cm9yIGZvciBlYWNoIGJhbmQgYmVjYXVzZSB0aGUgcmF0ZSBvZiB0aGUgZmluZSBxdWFudGl6YXRp
b24gZGVwZW5kcyBvbmx5CitvbiB0aGUgYml0IGFsbG9jYXRpb24gYW5kIG5vdCBvbiB0aGUgdmFs
dWVzIHRoYXQgYXJlIGNvZGVkLgorPC90PgorPC9zZWN0aW9uPiA8IS0tIEVuZXJneSBxdWFudCAt
LT4KKworPHNlY3Rpb24gdGl0bGU9IkJpdCBBbGxvY2F0aW9uIj4KKzx0PlRoZSBlbmNvZGVyIG11
c3QgdXNlIGV4YWN0bHkgdGhlIHNhbWUgYml0IGFsbG9jYXRpb24gcHJvY2VzcyBhcyB1c2VkIGJ5
IHRoZSBkZWNvZGVyCithbmQgZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0iYWxsb2NhdGlvbiIv
Pi4gVGhlIHRocmVlIG1lY2hhbmlzbXMgdGhhdCBjYW4gYmUgdXNlZCBieSB0aGUKK2VuY29kZXIg
dG8gYWRqdXN0IHRoZSBiaXRyYXRlIG9uIGEgZnJhbWUtYnktZnJhbWUgYmFzaXMgYXJlIGJhbmQg
Ym9vc3QsIGFsbG9jYXRpb24gdHJpbSwKK2FuZCBiYW5kIHNraXBwaW5nLgorPC90PgorCis8c2Vj
dGlvbiB0aXRsZT0iQmFuZCBCb29zdCI+Cis8dD5UaGUgcmVmZXJlbmNlIGVuY29kZXIgbWFrZXMg
YSBkZWNpc2lvbiB0byBib29zdCBhIGJhbmQgd2hlbiB0aGUgZW5lcmd5IG9mIHRoYXQgYmFuZCBp
cyBzaWduaWZpY2FudGx5CitoaWdoZXIgdGhhbiB0aGF0IG9mIHRoZSBuZWlnaGJvcmluZyBiYW5k
cy4gTGV0IEVfaiBiZSB0aGUgbG9nLWVuZXJneSBvZiBiYW5kIGosIHdlIGRlZmluZQorPGxpc3Q+
Cis8dD5EX2ogPSAyKkVfaiAtIEVfai0xIC0gRV9qKzEgPC90PgorPC9saXN0PgorCitUaGUgYWxs
b2NhdGlvbiBvZiBiYW5kIGogaXMgYm9vc3RlZCBvbmNlIGlmIERfaiAmZ3Q7IHQxIGFuZCB0d2lj
ZSBpZiBEX2ogJmd0OyB0Mi4gRm9yIExNJmd0Oz0xLCB0MT0yIGFuZCB0Mj00LAord2hpbGUgZm9y
IExNJmx0OzEsIHQxPTMgYW5kIHQyPTUuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
dGl0bGU9IkFsbG9jYXRpb24gVHJpbSI+Cis8dD5UaGUgYWxsb2NhdGlvbiB0cmltIGlzIGEgdmFs
dWUgYmV0d2VlbiAwIGFuZCAxMCAoaW5jbHVzaXZlbHkpIHRoYXQgY29udHJvbHMgdGhlIGFsbG9j
YXRpb24KK2JhbGFuY2UgYmV0d2VlbiB0aGUgbG93IGFuZCBoaWdoIGZyZXF1ZW5jaWVzLiBUaGUg
ZW5jb2RlciBzdGFydHMgd2l0aCBhIHNhZmUgImRlZmF1bHQiIG9mIDUKK2FuZCBkZXZpYXRlcyBm
cm9tIHRoYXQgZGVmYXVsdCBpbiB0d28gZGlmZmVyZW50IHdheXMuIEZpcnN0IHRoZSB0cmltIGNh
biBkZXZpYXRlIGJ5ICsvLSAyCitkZXBlbmRpbmcgb24gdGhlIHNwZWN0cmFsIHRpbHQgb2YgdGhl
IGlucHV0IHNpZ25hbC4gRm9yIHNpZ25hbHMgd2l0aCBtb3JlIGxvdyBmcmVxdWVuY2llcywgdGhl
Cit0cmltIGlzIGluY3JlYXNlZCBieSB1cCB0byAyLCB3aGlsZSBmb3Igc2lnbmFscyB3aXRoIG1v
cmUgaGlnaCBmcmVxdWVuY2llcywgdGhlIHRyaW0gaXMKK2RlY3JlYXNlZCBieSB1cCB0byAyLgor
Rm9yIHN0ZXJlbyBpbnB1dHMsIHRoZSB0cmltIHZhbHVlIGNhbgorYmUgZGVjcmVhc2VkIGJ5IHVw
IHRvIDQgd2hlbiB0aGUgaW50ZXItY2hhbm5lbCBjb3JyZWxhdGlvbiBhdCBsb3cgZnJlcXVlbmN5
IChmaXJzdCA4IGJhbmRzKQoraXMgaGlnaC4gPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0
aXRsZT0iQmFuZCBTa2lwcGluZyI+Cis8dD5UaGUgZW5jb2RlciB1c2VzIGJhbmQgc2tpcHBpbmcg
dG8gZW5zdXJlIHRoYXQgdGhlIHNoYXBlIG9mIHRoZSBiYW5kcyBpcyBvbmx5IGNvZGVkCitpZiB0
aGVyZSBpcyBhdCBsZWFzdCAxLzIgYml0IHBlciBzYW1wbGUgYXZhaWxhYmxlIGZvciB0aGUgUFZR
LiBJZiBub3QsIHRoZW4gbm8gYml0IGlzIGFsbG9jYXRlZAorYW5kIGZvbGRpbmcgaXMgdXNlZCBp
bnN0ZWFkLiBUbyBlbnN1cmUgY29udGludWl0eSBpbiB0aGUgYWxsb2NhdGlvbiwgc29tZSBhbW91
bnQgb2YgaHlzdGVyZXNpcyBpcworYWRkZWQgdG8gdGhlIHByb2Nlc3MsIHN1Y2ggdGhhdCBhIGJh
bmQgdGhhdCByZWNlaXZlZCBQVlEgYml0cyBpbiB0aGUgcHJldmlvdXMgZnJhbWUgb25seSBuZWVk
cyA3LzE2CitiaXQvc2FtcGxlIHRvIGJlIGNvZGVkIGZvciB0aGUgY3VycmVudCBmcmFtZSwgd2hp
bGUgYSBiYW5kIHRoYXQgZGlkIG5vdCByZWNlaXZlIFBWUSBiaXRzIGluIHRoZQorcHJldmlvdXMg
ZnJhbWVzIG5lZWRzIGF0IGxlYXN0IDkvMTYgYml0L3NhbXBsZSB0byBiZSBjb2RlZC48L3Q+Cis8
L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IlN0ZXJlbyBEZWNpc2lv
bnMiPgorPHQ+QmVjYXVzZSBDRUxUIGFwcGxpZXMgbWlkLXNpZGUgc3RlcmVvIGNvdXBsaW5nIGlu
IHRoZSBub3JtYWxpemVkIGRvbWFpbiwgaXQgZG9lcyBub3Qgc3VmZmVyIGZyb20KK2ltcG9ydGFu
dCBzdGVyZW8gaW1hZ2UgcHJvYmxlbXMgZXZlbiB3aGVuIHRoZSB0d28gY2hhbm5lbHMgYXJlIGNv
bXBsZXRlbHkgdW5jb3JyZWxhdGVkLiBGb3IgdGhpcyByZWFzb24KK2l0IGlzIGFsd2F5cyBzYWZl
IHRvIHVzZSBzdGVyZW8gY291cGxpbmcgb24gYW55IGF1ZGlvIGZyYW1lLiBUaGF0IGJlaW5nIHNh
aWQsIHRoZXJlIGFyZSBzb21lIGZyYW1lcworZm9yIHdoaWNoIGR1YWwgKGluZGVwZW5kZW50KSBz
dGVyZW8gaXMgc3RpbGwgbW9yZSBlZmZpY2llbnQuIFRoaXMgZGVjaXNpb24gaXMgbWFkZSBieSBj
b21wYXJpbmcgdGhlIGVzdGltYXRlZAorZW50cm9weSB3aXRoIGFuZCB3aXRob3V0IGNvdXBsaW5n
IG92ZXIgdGhlIGZpcnN0IDEzIGJhbmRzLCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBmYWN0IHRo
YXQgYWxsIGJhbmRzIHdpdGgKK21vcmUgdGhhbiB0d28gTURDVCBiaW5zIHJlcXVpcmUgb25lIGV4
dHJhIGRlZ3JlZSBvZiBmcmVlZG9tIHdoZW4gY29kZWQgaW4gbWlkLXNpZGUuIExldCBMMV9tcyBh
bmQgTDFfbHIKK2JlIHRoZSBMMS1ub3JtIG9mIHRoZSBtaWQtc2lkZSB2ZWN0b3IgYW5kIHRoZSBM
MS1ub3JtIG9mIHRoZSBsZWZ0LXJpZ2h0IHZlY3RvciwgcmVzcGVjdGl2ZWx5LiBUaGUgZGVjaXNp
b24KK3RvIHVzZSBtaWQtc2lkZSBpcyBtYWRlIGlmIGFuZCBvbmx5IGlmCis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgTDFfbXMgICAg
ICAgICAgTDFfbHIKKy0tLS0tLS0tICAgIDwgICAtLS0tLQorYmlucyArIEUgICAgICAgIGJpbnMK
K11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgord2hlcmUgYmlucyBpcyB0aGUgbnVtYmVyIG9mIE1E
Q1QgYmlucyBpbiB0aGUgZmlyc3QgMTMgYmFuZHMgYW5kIEUgaXMgdGhlIG51bWJlciBvZiBleHRy
YSBkZWdyZWVzIG9mCitmcmVlZG9tIGZvciBtaWQtc2lkZSBjb2RpbmcuIEZvciBMTT4xLCBFPTEz
LCBvdGhlcndpc2UgRT01LgorPC90PgorCis8dD5UaGUgcmVmZXJlbmNlIGVuY29kZXIgZGVjaWRl
cyBvbiB0aGUgaW50ZW5zaXR5IHN0ZXJlbyB0aHJlc2hvbGQgYmFzZWQgb24gdGhlIGJpdHJhdGUg
YWxvbmUuIEFmdGVyCit0YWtpbmcgaW50byBhY2NvdW50IHRoZSBmcmFtZSBzaXplIGJ5IHN1YnRy
YWN0aW5nIDgwIGJpdHMgcGVyIGZyYW1lIGZvciBjb2Fyc2UgZW5lcmd5LCB0aGUgZmlyc3QKK2Jh
bmQgdXNpbmcgaW50ZW5zaXR5IGNvZGluZyBpcyBhcyBmb2xsb3dzOgorPC90PgorCis8dGV4dHRh
YmxlIGFuY2hvcj0iaW50ZW5zaXR5LXRocmVzaG9sZHMiCisgdGl0bGU9IlRocmVzaG9sZHMgZm9y
IEludGVuc2l0eSBTdGVyZW8iPgorPHR0Y29sIGFsaWduPSdjZW50ZXInPmJpdHJhdGUgKGtiL3Mp
PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0nY2VudGVyJz5zdGFydCBiYW5kPC90dGNvbD4KKzxjPiZs
dDszNTwvYz4gICAgICA8Yz44PC9jPgorPGM+MzUtNTA8L2M+ICAgICAgPGM+MTI8L2M+Cis8Yz41
MC02ODwvYz4gICAgICA8Yz4xNjwvYz4KKzxjPjg0LTg0PC9jPiAgICAgIDxjPjE4PC9jPgorPGM+
ODQtMTAyPC9jPiAgICAgPGM+MTk8L2M+Cis8Yz4xMDItMTMwPC9jPiAgICAgPGM+MjA8L2M+Cis8
Yz4mZ3Q7MTMwPC9jPiAgICAgPGM+ZGlzYWJsZWQ8L2M+Cis8L3RleHR0YWJsZT4KKworCis8L3Nl
Y3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJUaW1lLUZyZXF1ZW5jeSBEZWNpc2lvbiI+Cis8dD4K
K1RoZSBjaG9pY2Ugb2YgdGltZS1mcmVxdWVuY3kgcmVzb2x1dGlvbiB1c2VkIGluIDx4cmVmIHRh
cmdldD0idGYtY2hhbmdlIj48L3hyZWY+IGlzIGJhc2VkIG9uCitSLUQgb3B0aW1pemF0aW9uLiBU
aGUgZGlzdG9ydGlvbiBpcyB0aGUgTDEtbm9ybSAoc3VtIG9mIGFic29sdXRlIHZhbHVlcykgb2Yg
ZWFjaCBiYW5kCithZnRlciBlYWNoIFRGIHJlc29sdXRpb24gdW5kZXIgY29uc2lkZXJhdGlvbi4g
VGhlIEwxIG5vcm0gaXMgdXNlZCBiZWNhdXNlIGl0IHJlcHJlc2VudHMgdGhlIGVudHJvcHkKK2Zv
ciBhIExhcGxhY2lhbiBzb3VyY2UuIFRoZSBudW1iZXIgb2YgYml0cyByZXF1aXJlZCB0byBjb2Rl
IGEgY2hhbmdlIGluIFRGIHJlc29sdXRpb24gYmV0d2VlbgordHdvIGJhbmRzIGlzIGhpZ2hlciB0
aGFuIHRoZSBjb3N0IG9mIGhhdmluZyB0aG9zZSB0d28gYmFuZHMgdXNlIHRoZSBzYW1lIHJlc29s
dXRpb24sIHdoaWNoIGlzCit3aGF0IHJlcXVpcmVzIHRoZSBSLUQgb3B0aW1pemF0aW9uLiBUaGUg
b3B0aW1hbCBkZWNpc2lvbiBpcyBjb21wdXRlZCB1c2luZyB0aGUgVml0ZXJiaSBhbGdvcml0aG0u
CitTZWUgdGZfYW5hbHlzaXMoKSBpbiBjZWx0L2NlbHQuYy4KKzwvdD4KKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gdGl0bGU9IlNwcmVhZGluZyBWYWx1ZXMgRGVjaXNpb24iPgorPHQ+CitUaGUgY2hv
aWNlIG9mIHRoZSBzcHJlYWRpbmcgdmFsdWUgaW4gPHhyZWYgdGFyZ2V0PSJzcHJlYWQgdmFsdWVz
Ij48L3hyZWY+IGhhcyBhbgoraW1wYWN0IG9uIHRoZSBuYXR1cmUgb2YgdGhlIGNvZGluZyBub2lz
ZSBpbnRyb2R1Y2VkIGJ5IENFTFQuIFRoZSBsYXJnZXIgdGhlIGZfciB2YWx1ZSwgdGhlCitsb3dl
ciB0aGUgaW1wYWN0IG9mIHRoZSByb3RhdGlvbiwgYW5kIHRoZSBtb3JlIHRvbmFsIHRoZSBjb2Rp
bmcgbm9pc2UuIFRoZQorbW9yZSB0b25hbCB0aGUgc2lnbmFsLCB0aGUgbW9yZSB0b25hbCB0aGUg
bm9pc2Ugc2hvdWxkIGJlLCBzbyB0aGUgQ0VMVCBlbmNvZGVyIGRldGVybWluZXMKK3RoZSBvcHRp
bWFsIHZhbHVlIGZvciBmX3IgYnkgZXN0aW1hdGluZyBob3cgdG9uYWwgdGhlIHNpZ25hbCBpcy4g
VGhlIHRvbmFsaXR5IGVzdGltYXRlCitpcyBiYXNlZCBvbiBkaXNjcmV0ZSBwZGYgKDQtYmluIGhp
c3RvZ3JhbSkgb2YgZWFjaCBiYW5kLiBCYW5kcyB0aGF0IGhhdmUgYSBsYXJnZSBudW1iZXIgb2Yg
c21hbGwKK3ZhbHVlcyBhcmUgY29uc2lkZXJlZCBtb3JlIHRvbmFsIGFuZCBhIGRlY2lzaW9uIGlz
IG1hZGUgYnkgY29tYmluaW5nIGFsbCBiYW5kcyB3aXRoIG1vcmUgdGhhbgorOCBzYW1wbGVzLiBT
ZWUgc3ByZWFkaW5nX2RlY2lzaW9uKCkgaW4gY2VsdC9iYW5kcy5jLgorPC90PgorPC9zZWN0aW9u
PgorCis8c2VjdGlvbiBhbmNob3I9InB2cSIgdGl0bGU9IlNwaGVyaWNhbCBWZWN0b3IgUXVhbnRp
emF0aW9uIj4KKzx0PkNFTFQgdXNlcyBhIFB5cmFtaWQgVmVjdG9yIFF1YW50aXphdGlvbiAoUFZR
KSA8eHJlZiB0YXJnZXQ9IlBWUSI+PC94cmVmPgorY29kZWJvb2sgZm9yIHF1YW50aXppbmcgdGhl
IGRldGFpbHMgb2YgdGhlIHNwZWN0cnVtIGluIGVhY2ggYmFuZCB0aGF0IGhhdmUgbm90CitiZWVu
IHByZWRpY3RlZCBieSB0aGUgcGl0Y2ggcHJlZGljdG9yLiBUaGUgUFZRIGNvZGVib29rIGNvbnNp
c3RzIG9mIGFsbCBzdW1zCitvZiBLIHNpZ25lZCBwdWxzZXMgaW4gYSB2ZWN0b3Igb2YgTiBzYW1w
bGVzLCB3aGVyZSB0d28gcHVsc2VzIGF0IHRoZSBzYW1lIHBvc2l0aW9uCithcmUgcmVxdWlyZWQg
dG8gaGF2ZSB0aGUgc2FtZSBzaWduLiBUaHVzIHRoZSBjb2RlYm9vayBpbmNsdWRlcworYWxsIGlu
dGVnZXIgY29kZXZlY3RvcnMgeSBvZiBOIGRpbWVuc2lvbnMgdGhhdCBzYXRpc2Z5IHN1bShhYnMo
eShqKSkpID0gSy4KKzwvdD4KKworPHQ+CitJbiBiYW5kcyB3aGVyZSB0aGVyZSBhcmUgc3VmZmlj
aWVudCBiaXRzIGFsbG9jYXRlZCBQVlEgaXMgdXNlZCB0byBlbmNvZGUKK3RoZSB1bml0IHZlY3Rv
ciB0aGF0IHJlc3VsdHMgZnJvbSB0aGUgbm9ybWFsaXphdGlvbiBpbgorPHhyZWYgdGFyZ2V0PSJu
b3JtYWxpemF0aW9uIj48L3hyZWY+IGRpcmVjdGx5LiBHaXZlbiBhIFBWUSBjb2RldmVjdG9yIHks
Cit0aGUgdW5pdCB2ZWN0b3IgWCBpcyBvYnRhaW5lZCBhcyBYID0geS98fHl8fCwgd2hlcmUgfHwu
fHwgZGVub3RlcyB0aGUKK0wyIG5vcm0uCis8L3Q+CisKKworPHNlY3Rpb24gYW5jaG9yPSJwdnEt
c2VhcmNoIiB0aXRsZT0iUFZRIFNlYXJjaCI+CisKKzx0PgorVGhlIHNlYXJjaCBmb3IgdGhlIGJl
c3QgY29kZXZlY3RvciB5IGlzIHBlcmZvcm1lZCBieSBhbGdfcXVhbnQoKQorKHZxLmMpLiBUaGVy
ZSBhcmUgc2V2ZXJhbCBwb3NzaWJsZSBhcHByb2FjaGVzIHRvIHRoZQorc2VhcmNoLCB3aXRoIGEg
dHJhZGUtb2ZmIGJldHdlZW4gcXVhbGl0eSBhbmQgY29tcGxleGl0eS4gVGhlIG1ldGhvZCB1c2Vk
IGluIHRoZSByZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uIGNvbXB1dGVzIGFuIGluaXRpYWwgY29k
ZXdvcmQgeTEgYnkgcHJvamVjdGluZyB0aGUgbm9ybWFsaXplZCBzcGVjdHJ1bQorWCBvbnRvIHRo
ZSBjb2RlYm9vayBweXJhbWlkIG9mIEstMSBwdWxzZXM6Cis8L3Q+Cis8dD4KK3kwID0gdHJ1bmNh
dGVfdG93YXJkc196ZXJvKCAoSy0xKSAqIFggLyBzdW0oYWJzKFgpKSkKKzwvdD4KKworPHQ+CitE
ZXBlbmRpbmcgb24gTiwgSyBhbmQgdGhlIGlucHV0IGRhdGEsIHRoZSBpbml0aWFsIGNvZGV3b3Jk
IHkwIG1heSBjb250YWluIGZyb20KKzAgdG8gSy0xIG5vbi16ZXJvIHZhbHVlcy4gQWxsIHRoZSBy
ZW1haW5pbmcgcHVsc2VzLCB3aXRoIHRoZSBleGNlcHRpb24gb2YgdGhlIGxhc3Qgb25lLAorYXJl
IGZvdW5kIGl0ZXJhdGl2ZWx5IHdpdGggYSBncmVlZHkgc2VhcmNoIHRoYXQgbWluaW1pemVzIHRo
ZSBub3JtYWxpemVkIGNvcnJlbGF0aW9uCitiZXR3ZWVuIHkgYW5kIFg6Cis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICBUCitK
ID0gLVggKiB5IC8gfHx5fHwKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorCis8dD4K
K1RoZSBzZWFyY2ggZGVzY3JpYmVkIGFib3ZlIGlzIGNvbnNpZGVyZWQgdG8gYmUgYSBnb29kIHRy
YWRlLW9mZiBiZXR3ZWVuIHF1YWxpdHkKK2FuZCBjb21wdXRhdGlvbmFsIGNvc3QuIEhvd2V2ZXIs
IHRoZXJlIGFyZSBvdGhlciBwb3NzaWJsZSB3YXlzIHRvIHNlYXJjaCB0aGUgUFZRCitjb2RlYm9v
ayBhbmQgdGhlIGltcGxlbWVudGVycyBNQVkgdXNlIGFueSBvdGhlciBzZWFyY2ggbWV0aG9kcy4g
U2VlIGFsZ19xdWFudCgpIGluIGNlbHQvdnEuYy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rp
b24gYW5jaG9yPSJjd3JzLWVuY29kZXIiIHRpdGxlPSJQVlEgRW5jb2RpbmciPgorCis8dD4KK1Ro
ZSB2ZWN0b3IgdG8gZW5jb2RlLCBYLCBpcyBjb252ZXJ0ZWQgaW50byBhbiBpbmRleCBpIHN1Y2gg
dGhhdAorIDAmbmJzcDsmbHQ7PSZuYnNwO2kmbmJzcDsmbHQ7Jm5ic3A7VihOLEspIGFzIGZvbGxv
d3MuCitMZXQgaSZuYnNwOz0mbmJzcDswIGFuZCBrJm5ic3A7PSZuYnNwOzAuCitUaGVuIGZvciBq
Jm5ic3A7PSZuYnNwOyhOJm5ic3A7LSZuYnNwOzEpIGRvd24gdG8gMCwgaW5jbHVzaXZlLCBkbzoK
KzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0PgorSWYgayZuYnNwOz4mbmJzcDswLCBzZXQKKyBp
Jm5ic3A7PSZuYnNwO2kmbmJzcDsrJm5ic3A7KFYoTi1qLTEsay0xKSZuYnNwOysmbmJzcDtWKE4t
aixrLTEpKS8yLgorPC90PgorPHQ+U2V0IGsmbmJzcDs9Jm5ic3A7ayZuYnNwOysmbmJzcDthYnMo
WFtqXSkuPC90PgorPHQ+CitJZiBYW2pdJm5ic3A7Jmx0OyZuYnNwOzAsIHNldAorIGkmbmJzcDs9
Jm5ic3A7aSZuYnNwOysmbmJzcDsoVihOLWotMSxrKSZuYnNwOysmbmJzcDtWKE4taixrKSkvMi4K
KzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitUaGUgaW5kZXggaSBpcyB0aGVuIGVuY29kZWQg
dXNpbmcgdGhlIHByb2NlZHVyZSBpbgorIDx4cmVmIHRhcmdldD0iZW5jb2RpbmctaW50cyIvPiB3
aXRoIGZ0Jm5ic3A7PSZuYnNwO1YoTixLKS4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rp
b24+CisKKworCisKKworPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKworPHNlY3Rpb24gYW5j
aG9yPSJjb25mb3JtYW5jZSIgdGl0bGU9IkNvbmZvcm1hbmNlIj4KKworPHQ+CitJdCBpcyBvdXIg
aW50ZW50aW9uIHRvIGFsbG93IHRoZSBncmVhdGVzdCBwb3NzaWJsZSBjaG9pY2Ugb2YgZnJlZWRv
bSBpbgoraW1wbGVtZW50aW5nIHRoZSBzcGVjaWZpY2F0aW9uLiBGb3IgdGhpcyByZWFzb24sIG91
dHNpZGUgb2YgdGhlIGV4Y2VwdGlvbnMKK25vdGVkIGluIHRoaXMgc2VjdGlvbiwgY29uZm9ybWFu
Y2UgaXMgZGVmaW5lZCB0aHJvdWdoIHRoZSByZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uIG9mIHRo
ZSBkZWNvZGVyIHByb3ZpZGVkIGluIDx4cmVmIHRhcmdldD0icmVmLWltcGxlbWVudGF0aW9uIi8+
LgorQWx0aG91Z2ggdGhpcyBkb2N1bWVudCBpbmNsdWRlcyBhbiBFbmdsaXNoIGRlc2NyaXB0aW9u
IG9mIHRoZSBjb2RlYywgc2hvdWxkCit0aGUgZGVzY3JpcHRpb24gY29udHJhZGljdCB0aGUgc291
cmNlIGNvZGUgb2YgdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiwKK3RoZSBsYXR0ZXIgc2hh
bGwgdGFrZSBwcmVjZWRlbmNlLgorPC90PgorCis8dD4KK0NvbXBsaWFuY2Ugd2l0aCB0aGlzIHNw
ZWNpZmljYXRpb24gbWVhbnMgdGhhdCBpbiBhZGRpdGlvbiB0byBmb2xsb3dpbmcgdGhlIG5vcm1h
dGl2ZSBrZXl3b3JkcyBpbiB0aGlzIGRvY3VtZW50LAorIGEgZGVjb2RlcidzIG91dHB1dCBNVVNU
IGFsc28gYmUKKyB3aXRoaW4gdGhlIHRocmVzaG9sZHMgc3BlY2lmaWVkIGJ5IHRoZSBvcHVzX2Nv
bXBhcmUuYyB0b29sIChpbmNsdWRlZAorIHdpdGggdGhlIGNvZGUpIHdoZW4gY29tcGFyZWQgdG8g
dGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBmb3IgZWFjaCBvZiB0aGUKKyB0ZXN0IHZlY3Rv
cnMgcHJvdmlkZWQgKHNlZSA8eHJlZiB0YXJnZXQ9InRlc3QtdmVjdG9ycyI+PC94cmVmPikgYW5k
IGZvciBlYWNoIG91dHB1dAorIHNhbXBsaW5nIHJhdGUgYW5kIGNoYW5uZWwgY291bnQgc3VwcG9y
dGVkLiBJbiBhZGRpdGlvbiwgYSBjb21wbGlhbnQKKyBkZWNvZGVyIGltcGxlbWVudGF0aW9uIE1V
U1QgaGF2ZSB0aGUgc2FtZSBmaW5hbCByYW5nZSBkZWNvZGVyIHN0YXRlIGFzIHRoYXQgb2YgdGhl
CisgcmVmZXJlbmNlIGRlY29kZXIuIEl0IGlzIHRoZXJlZm9yZSBSRUNPTU1FTkRFRCB0aGF0IHRo
ZQorIGRlY29kZXIgaW1wbGVtZW50IHRoZSBzYW1lIGZ1bmN0aW9uYWwgYmVoYXZpb3IgYXMgdGhl
IHJlZmVyZW5jZS4KKworIEEgZGVjb2RlciBpbXBsZW1lbnRhdGlvbiBpcyBub3QgcmVxdWlyZWQg
dG8gc3VwcG9ydCBhbGwgb3V0cHV0IHNhbXBsaW5nCisgcmF0ZXMgb3IgYWxsIG91dHB1dCBjaGFu
bmVsIGNvdW50cy4KKzwvdD4KKworPHNlY3Rpb24gdGl0bGU9IlRlc3RpbmciPgorPHQ+CitVc2lu
ZyB0aGUgcmVmZXJlbmNlIGNvZGUgcHJvdmlkZWQgaW4gPHhyZWYgdGFyZ2V0PSJyZWYtaW1wbGVt
ZW50YXRpb24iPjwveHJlZj4sCithIHRlc3QgdmVjdG9yIGNhbiBiZSBkZWNvZGVkIHdpdGgKKzxs
aXN0PgorPHQ+b3B1c19kZW1vIC1kICZsdDtyYXRlJmd0OyAmbHQ7Y2hhbm5lbHMmZ3Q7IHRlc3R2
ZWN0b3JYLmJpdCB0ZXN0WC5vdXQ8L3Q+Cis8L2xpc3Q+Cit3aGVyZSAmbHQ7cmF0ZSZndDsgaXMg
dGhlIHNhbXBsaW5nIHJhdGUgYW5kIGNhbiBiZSA4MDAwLCAxMjAwMCwgMTYwMDAsIDI0MDAwLCBv
ciA0ODAwMCwgYW5kCismbHQ7Y2hhbm5lbHMmZ3Q7IGlzIDEgZm9yIG1vbm8gb3IgMiBmb3Igc3Rl
cmVvLgorPC90PgorCis8dD4KK0lmIHRoZSByYW5nZSBkZWNvZGVyIHN0YXRlIGlzIGluY29ycmVj
dCBmb3Igb25lIG9mIHRoZSBmcmFtZXMsIHRoZSBkZWNvZGVyIHdpbGwgZXhpdCB3aXRoCisiRXJy
b3I6IFJhbmdlIGNvZGVyIHN0YXRlIG1pc21hdGNoIGJldHdlZW4gZW5jb2RlciBhbmQgZGVjb2Rl
ciIuIElmIHRoZSBkZWNvZGVyIHN1Y2NlZWRzLCB0aGVuCit0aGUgb3V0cHV0IGNhbiBiZSBjb21w
YXJlZCB3aXRoIHRoZSAicmVmZXJlbmNlIiBvdXRwdXQgd2l0aAorPGxpc3Q+Cis8dD5vcHVzX2Nv
bXBhcmUgLXMgLXIgJmx0O3JhdGUmZ3Q7IHRlc3R2ZWN0b3JYLmRlYyB0ZXN0WC5vdXQ8L3Q+Cis8
L2xpc3Q+Citmb3Igc3RlcmVvIG9yCis8bGlzdD4KKzx0Pm9wdXNfY29tcGFyZSAtciAmbHQ7cmF0
ZSZndDsgdGVzdHZlY3RvclguZGVjIHRlc3RYLm91dDwvdD4KKzwvbGlzdD4KK2ZvciBtb25vLgor
PC90PgorCis8dD5JbiBhZGRpdGlvbiB0byBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIHRlc3QgdmVj
dG9yIGNvbXBhcmlzb24gcGFzc2VzLCB0aGUgb3B1c19jb21wYXJlIHRvb2wKK291dHB1dHMgYW4g
Ik9wdXMgcXVhbGl0eSBtZXRyaWMiIHRoYXQgaW5kaWNhdGVzIGhvdyB3ZWxsIHRoZSB0ZXN0ZWQg
ZGVjb2RlciBtYXRjaGVzIHRoZQorcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uLiBBIHF1YWxpdHkg
b2YgMCBjb3JyZXNwb25kcyB0byB0aGUgcGFzc2luZyB0aHJlc2hvbGQsIHdoaWxlCithIHF1YWxp
dHkgb2YgMTAwIGlzIHRoZSBoaWdoZXN0IHBvc3NpYmxlIHZhbHVlIGFuZCBtZWFucyB0aGF0IHRo
ZSBvdXRwdXQgb2YgdGhlIHRlc3RlZCBkZWNvZGVyIGlzIGlkZW50aWNhbCB0byB0aGUgcmVmZXJl
bmNlCitpbXBsZW1lbnRhdGlvbi4gVGhlIHBhc3NpbmcgdGhyZXNob2xkIChxdWFsaXR5IDApIHdh
cyBjYWxpYnJhdGVkIGluIHN1Y2ggYSB3YXkgdGhhdCBpdCBjb3JyZXNwb25kcyB0bworYWRkaXRp
dmUgd2hpdGUgbm9pc2Ugd2l0aCBhIDQ4IGRCIFNOUiAoc2ltaWxhciB0byB3aGF0IGNhbiBiZSBv
YnRhaW5lZCBvbiBhIGNhc3NldHRlIGRlY2spLgorSXQgaXMgc3RpbGwgcG9zc2libGUgZm9yIGFu
IGltcGxlbWVudGF0aW9uIHRvIHNvdW5kIHZlcnkgZ29vZCB3aXRoIHN1Y2ggYSBsb3cgcXVhbGl0
eSBtZWFzdXJlCisoZS5nLiBpZiB0aGUgZGV2aWF0aW9uIGlzIGR1ZSB0byBpbmF1ZGlibGUgcGhh
c2UgZGlzdG9ydGlvbiksIGJ1dCB1bmxlc3MgdGhpcyBpcyB2ZXJpZmllZCBieQorbGlzdGVuaW5n
IHRlc3RzLCBpdCBpcyBSRUNPTU1FTkRFRCB0aGF0IGltcGxlbWVudGF0aW9ucyBhY2hpZXZlIGEg
cXVhbGl0eSBhYm92ZSA5MCBmb3IgNDgmbmJzcDtrSHoKK2RlY29kaW5nLiBGb3Igb3RoZXIgc2Ft
cGxpbmcgcmF0ZXMsIGl0IGlzIG5vcm1hbCBmb3IgdGhlIHF1YWxpdHkgbWV0cmljIHRvIGJlIGxv
d2VyCisodHlwaWNhbGx5IGFzIGxvdyBhcyA1MCBldmVuIGZvciBhIGdvb2QgaW1wbGVtZW50YXRp
b24pIGJlY2F1c2Ugb2YgaGFybWxlc3MgbWlzbWF0Y2ggd2l0aAordGhlIGRlbGF5IGFuZCBwaGFz
ZSBvZiB0aGUgaW50ZXJuYWwgc2FtcGxpbmcgcmF0ZSBjb252ZXJzaW9uLgorPC90PgorCis8dD4K
K09uIFBPU0lYIGVudmlyb25tZW50cywgdGhlIHJ1bl92ZWN0b3JzLnNoIHNjcmlwdCBjYW4gYmUg
dXNlZCB0byB2ZXJpZnkgYWxsIHRlc3QKK3ZlY3RvcnMuIFRoaXMgY2FuIGJlIGRvbmUgd2l0aAor
PGxpc3Q+Cis8dD5ydW5fdmVjdG9ycy5zaCAmbHQ7ZXhlYyBwYXRoJmd0OyAmbHQ7dmVjdG9yIHBh
dGgmZ3Q7ICZsdDtyYXRlJmd0OzwvdD4KKzwvbGlzdD4KK3doZXJlICZsdDtleGVjIHBhdGgmZ3Q7
IGlzIHRoZSBkaXJlY3Rvcnkgd2hlcmUgdGhlIG9wdXNfZGVtbyBhbmQgb3B1c19jb21wYXJlIGV4
ZWN1dGFibGVzCithcmUgYnVpbHQgYW5kICZsdDt2ZWN0b3IgcGF0aCZndDsgaXMgdGhlIGRpcmVj
dG9yeSBjb250YWluaW5nIHRoZSB0ZXN0IHZlY3RvcnMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxz
ZWN0aW9uIGFuY2hvcj0ib3B1cy1jdXN0b20iIHRpdGxlPSJPcHVzIEN1c3RvbSI+Cis8dD4KK09w
dXMgQ3VzdG9tIGlzIGFuIE9QVElPTkFMIHBhcnQgb2YgdGhlIHNwZWNpZmljYXRpb24gdGhhdCBp
cyBkZWZpbmVkIHRvCitoYW5kbGUgc3BlY2lhbCBzYW1wbGUgcmF0ZXMgYW5kIGZyYW1lIHJhdGVz
IHRoYXQgYXJlIG5vdCBzdXBwb3J0ZWQgYnkgdGhlCittYWluIE9wdXMgc3BlY2lmaWNhdGlvbi4g
VXNlIG9mIE9wdXMgQ3VzdG9tIGlzIGRpc2NvdXJhZ2VkIGZvciBhbGwgYnV0IHZlcnkKK3NwZWNp
YWwgYXBwbGljYXRpb25zIGZvciB3aGljaCBhIGZyYW1lIHNpemUgZGlmZmVyZW50IGZyb20gMi41
LCA1LCAxMCwgb3IgMjAmbmJzcDttcyBpcworbmVlZGVkIChmb3IgZWl0aGVyIGNvbXBsZXhpdHkg
b3IgbGF0ZW5jeSByZWFzb25zKS4gQmVjYXVzZSBPcHVzIEN1c3RvbSBpcworb3B0aW9uYWwsIHN0
cmVhbXMgZW5jb2RlZCB1c2luZyBPcHVzIEN1c3RvbSBjYW5ub3QgYmUgZXhwZWN0ZWQgdG8gYmUg
ZGVjb2RhYmxlIGJ5IGFsbCBPcHVzCitpbXBsZW1lbnRhdGlvbnMuIEFsc28sIGJlY2F1c2Ugbm8g
aW4tYmFuZCBtZWNoYW5pc20gZXhpc3RzIGZvciBzcGVjaWZ5aW5nIHRoZSBzYW1wbGluZworcmF0
ZSBhbmQgZnJhbWUgc2l6ZSBvZiBPcHVzIEN1c3RvbSBzdHJlYW1zLCBvdXQtb2YtYmFuZCBzaWdu
YWxpbmcgaXMgcmVxdWlyZWQuCitJbiBPcHVzIEN1c3RvbSBvcGVyYXRpb24sIG9ubHkgdGhlIENF
TFQgbGF5ZXIgaXMgYXZhaWxhYmxlLCB1c2luZyB0aGUgb3B1c19jdXN0b21fKiBmdW5jdGlvbgor
Y2FsbHMgaW4gb3B1c19jdXN0b20uaC4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiBhbmNob3I9InNlY3VyaXR5IiB0aXRsZT0iU2VjdXJpdHkgQ29uc2lkZXJhdGlv
bnMiPgorCis8dD4KK0ltcGxlbWVudGF0aW9ucyBvZiB0aGUgT3B1cyBjb2RlYyBuZWVkIHRvIHRh
a2UgYXBwcm9wcmlhdGUgc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMKK2ludG8gYWNjb3VudCwgYXMg
b3V0bGluZWQgaW4gPHhyZWYgdGFyZ2V0PSJET1MiLz4uCitJdCBpcyBleHRyZW1lbHkgaW1wb3J0
YW50IGZvciB0aGUgZGVjb2RlciB0byBiZSByb2J1c3QgYWdhaW5zdCBtYWxpY2lvdXMKK3BheWxv
YWRzLgorTWFsaWNpb3VzIHBheWxvYWRzIG11c3Qgbm90IGNhdXNlIHRoZSBkZWNvZGVyIHRvIG92
ZXJydW4gaXRzIGFsbG9jYXRlZCBtZW1vcnkKKyBvciB0byB0YWtlIGFuIGV4Y2Vzc2l2ZSBhbW91
bnQgb2YgcmVzb3VyY2VzIHRvIGRlY29kZS4KK0FsdGhvdWdoIHByb2JsZW1zCitpbiBlbmNvZGVy
cyBhcmUgdHlwaWNhbGx5IHJhcmVyLCB0aGUgc2FtZSBhcHBsaWVzIHRvIHRoZSBlbmNvZGVyLiBN
YWxpY2lvdXMKK2F1ZGlvIHN0cmVhbXMgbXVzdCBub3QgY2F1c2UgdGhlIGVuY29kZXIgdG8gbWlz
YmVoYXZlIGJlY2F1c2UgdGhpcyB3b3VsZAorYWxsb3cgYW4gYXR0YWNrZXIgdG8gYXR0YWNrIHRy
YW5zY29kaW5nIGdhdGV3YXlzLgorPC90PgorPHQ+CitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0
aW9uIGNvbnRhaW5zIG5vIGtub3duIGJ1ZmZlciBvdmVyZmxvdyBvciBjYXNlcyB3aGVyZQorIGEg
c3BlY2lhbGx5IGNyYWZ0ZWQgcGFja2V0IG9yIGF1ZGlvIHNlZ21lbnQgY291bGQgY2F1c2UgYSBz
aWduaWZpY2FudCBpbmNyZWFzZQorIGluIENQVSBsb2FkLgorSG93ZXZlciwgb24gY2VydGFpbiBD
UFUgYXJjaGl0ZWN0dXJlcyB3aGVyZSBkZW5vcm1hbGl6ZWQgZmxvYXRpbmctcG9pbnQKKyBvcGVy
YXRpb25zIGFyZSBtdWNoIHNsb3dlciB0aGFuIG5vcm1hbCBmbG9hdGluZy1wb2ludCBvcGVyYXRp
b25zLCBpdCBpcworIHBvc3NpYmxlIGZvciBzb21lIGF1ZGlvIGNvbnRlbnQgKGUuZy4sIHNpbGVu
Y2Ugb3IgbmVhci1zaWxlbmNlKSB0byBjYXVzZSBhbgorIGluY3JlYXNlIGluIENQVSBsb2FkLgor
RGVub3JtYWxzIGNhbiBiZSBpbnRyb2R1Y2VkIGJ5IHJlb3JkZXJpbmcgb3BlcmF0aW9ucyBpbiB0
aGUgY29tcGlsZXIgYW5kIGRlcGVuZAorIG9uIHRoZSB0YXJnZXQgYXJjaGl0ZWN0dXJlLCBzbyBp
dCBpcyBkaWZmaWN1bHQgdG8gZ3VhcmFudGVlIHRoYXQgYW4gaW1wbGVtZW50YXRpb24KKyBhdm9p
ZHMgdGhlbS4KK0ZvciBhcmNoaXRlY3R1cmVzIG9uIHdoaWNoIGRlbm9ybWFscyBhcmUgcHJvYmxl
bWF0aWMsIGFkZGluZyB2ZXJ5IHNtYWxsCisgZmxvYXRpbmctcG9pbnQgb2Zmc2V0cyB0byB0aGUg
YWZmZWN0ZWQgc2lnbmFscyB0byBwcmV2ZW50IHNpZ25pZmljYW50IG51bWJlcnMKKyBvZiBkZW5v
cm1hbGl6ZWQgb3BlcmF0aW9ucyBpcyBSRUNPTU1FTkRFRC4KK0FsdGVybmF0aXZlbHksIGl0IGlz
IG9mdGVuIHBvc3NpYmxlIHRvIGNvbmZpZ3VyZSB0aGUgaGFyZHdhcmUgdG8gdHJlYXQKKyBkZW5v
cm1hbHMgYXMgemVybyAoREFaKS4KK05vIHN1Y2ggaXNzdWUgZXhpc3RzIGZvciB0aGUgZml4ZWQt
cG9pbnQgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uLgorPC90PgorPHQ+VGhlIHJlZmVyZW5jZSBp
bXBsZW1lbnRhdGlvbiB3YXMgdmFsaWRhdGVkIGluIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoK
KzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0PgorU2VuZGluZyB0aGUgZGVjb2RlciB2YWxpZCBw
YWNrZXRzIGdlbmVyYXRlZCBieSB0aGUgcmVmZXJlbmNlIGVuY29kZXIgYW5kCisgdmVyaWZ5aW5n
IHRoYXQgdGhlIGRlY29kZXIncyBmaW5hbCByYW5nZSBjb2RlciBzdGF0ZSBtYXRjaGVzIHRoYXQg
b2YgdGhlCisgZW5jb2Rlci4KKzwvdD4KKzx0PgorU2VuZGluZyB0aGUgZGVjb2RlciBwYWNrZXRz
IGdlbmVyYXRlZCBieSB0aGUgcmVmZXJlbmNlIGVuY29kZXIgYW5kIHRoZW4KKyBzdWJqZWN0ZWQg
dG8gcmFuZG9tIGNvcnJ1cHRpb24uCis8L3Q+Cis8dD5TZW5kaW5nIHRoZSBkZWNvZGVyIHJhbmRv
bSBwYWNrZXRzLjwvdD4KKzx0PgorU2VuZGluZyB0aGUgZGVjb2RlciBwYWNrZXRzIGdlbmVyYXRl
ZCBieSBhIHZlcnNpb24gb2YgdGhlIHJlZmVyZW5jZSBlbmNvZGVyCisgbW9kaWZpZWQgdG8gbWFr
ZSByYW5kb20gY29kaW5nIGRlY2lzaW9ucyAoaW50ZXJuYWwgZnV6emluZyksIGluY2x1ZGluZyBt
b2RlCisgc3dpdGNoaW5nLCBhbmQgdmVyaWZ5aW5nIHRoYXQgdGhlIHJhbmdlIGNvZGVyIGZpbmFs
IHN0YXRlcyBtYXRjaC4KKzwvdD4KKzwvbGlzdD4KK0luIGFsbCBvZiB0aGUgY29uZGl0aW9ucyBh
Ym92ZSwgYm90aCB0aGUgZW5jb2RlciBhbmQgdGhlIGRlY29kZXIgd2VyZSBydW4KKyBpbnNpZGUg
dGhlIDx4cmVmIHRhcmdldD0iVmFsZ3JpbmQiPlZhbGdyaW5kPC94cmVmPiBtZW1vcnkKKyBkZWJ1
Z2dlciwgd2hpY2ggdHJhY2tzIHJlYWRzIGFuZCB3cml0ZXMgdG8gaW52YWxpZCBtZW1vcnkgcmVn
aW9ucyBhcyB3ZWxsIGFzCisgdGhlIHVzZSBvZiB1bmluaXRpYWxpemVkIG1lbW9yeS4KK1RoZXJl
IHdlcmUgbm8gZXJyb3JzIHJlcG9ydGVkIG9uIGFueSBvZiB0aGUgdGVzdGVkIGNvbmRpdGlvbnMu
Cis8L3Q+Cis8L3NlY3Rpb24+CisKKworPHNlY3Rpb24gdGl0bGU9IklBTkEgQ29uc2lkZXJhdGlv
bnMiPgorPHQ+CitUaGlzIGRvY3VtZW50IGhhcyBubyBhY3Rpb25zIGZvciBJQU5BLgorPC90Pgor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9IkFja25vd2xlZGdlbWVudHMiIHRpdGxlPSJB
Y2tub3dsZWRnZW1lbnRzIj4KKzx0PgorVGhhbmtzIHRvIGFsbCBvdGhlciBkZXZlbG9wZXJzLCBp
bmNsdWRpbmcgUmF5bW9uZCBDaGVuLCBTb2VyZW4gU2thayBKZW5zZW4sIEdyZWdvcnkgTWF4d2Vs
bCwKK0NocmlzdG9waGVyIE1vbnRnb21lcnksIGFuZCBLYXJzdGVuIFZhbmRib3JnIFNvZXJlbnNl
bi4gV2Ugd291bGQgYWxzbworbGlrZSB0byB0aGFuayBJZ29yIER5YWtvbm92LCBKYW4gU2tvZ2x1
bmQsIGFuZCBDaHJpc3RpYW4gSG9lbmUgZm9yIHRoZWlyIGhlbHAgd2l0aCBzdWJqZWN0aXZlIHRl
c3Rpbmcgb2YgdGhlCitPcHVzIGNvZGVjLiBUaGFua3MgdG8gUmFscGggR2lsZXMsIEpvaG4gUmlk
Z2VzLCBCZW4gU2Nod2FydHosIEtlaXRoIFlhbiwgQ2hyaXN0aWFuIEhvZW5lLCBLYXQgV2Fsc2gs
IGFuZCBtYW55IG90aGVycyBvbiB0aGUgT3B1cyBhbmQgQ0VMVCBtYWlsaW5nIGxpc3RzCitmb3Ig
dGhlaXIgYnVnIHJlcG9ydHMgYW5kIGZlZWRiYWNrLgorPC90PgorPC9zZWN0aW9uPgorCis8c2Vj
dGlvbiB0aXRsZT0iQ29weWluZyBDb25kaXRpb25zIj4KKzx0PlRoZSBhdXRob3JzIGFncmVlIHRv
IGdyYW50IHRoaXJkIHBhcnRpZXMgdGhlIGlycmV2b2NhYmxlIHJpZ2h0IHRvIGNvcHksIHVzZSBh
bmQgZGlzdHJpYnV0ZQordGhlIHdvcmsgKGV4Y2x1ZGluZyBDb2RlIENvbXBvbmVudHMgYXZhaWxh
YmxlIHVuZGVyIHRoZSBzaW1wbGlmaWVkIEJTRCBsaWNlbnNlKSwgd2l0aCBvcgord2l0aG91dCBt
b2RpZmljYXRpb24sIGluIGFueSBtZWRpdW0sIHdpdGhvdXQgcm95YWx0eSwgcHJvdmlkZWQgdGhh
dCwgdW5sZXNzIHNlcGFyYXRlCitwZXJtaXNzaW9uIGlzIGdyYW50ZWQsIHJlZGlzdHJpYnV0ZWQg
bW9kaWZpZWQgd29ya3MgZG8gbm90IGNvbnRhaW4gbWlzbGVhZGluZyBhdXRob3IsIHZlcnNpb24s
CituYW1lIG9mIHdvcmssIG9yIGVuZG9yc2VtZW50IGluZm9ybWF0aW9uLjwvdD4KKzwvc2VjdGlv
bj4KKworPC9taWRkbGU+CisKKzxiYWNrPgorCis8cmVmZXJlbmNlcyB0aXRsZT0iTm9ybWF0aXZl
IFJlZmVyZW5jZXMiPgorCis8cmVmZXJlbmNlIGFuY2hvcj0icmZjMjExOSI+Cis8ZnJvbnQ+Cis8
dGl0bGU+S2V5IHdvcmRzIGZvciB1c2UgaW4gUkZDcyB0byBJbmRpY2F0ZSBSZXF1aXJlbWVudCBM
ZXZlbHMgPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IlMuIiBzdXJuYW1lPSJCcmFkbmVyIiBm
dWxsbmFtZT0iU2NvdHQgQnJhZG5lciI+PC9hdXRob3I+Cis8L2Zyb250PgorPHNlcmllc0luZm8g
bmFtZT0iUkZDIiB2YWx1ZT0iMjExOSIgLz4KKzwvcmVmZXJlbmNlPgorCis8L3JlZmVyZW5jZXM+
CisKKzxyZWZlcmVuY2VzIHRpdGxlPSJJbmZvcm1hdGl2ZSBSZWZlcmVuY2VzIj4KKworPHJlZmVy
ZW5jZSBhbmNob3I9J3JlcXVpcmVtZW50cyc+Cis8ZnJvbnQ+Cis8dGl0bGU+UmVxdWlyZW1lbnRz
IGZvciBhbiBJbnRlcm5ldCBBdWRpbyBDb2RlYzwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSdK
Li1NLicgc3VybmFtZT0nVmFsaW4nIGZ1bGxuYW1lPSdKLi1NLiBWYWxpbic+Cis8b3JnYW5pemF0
aW9uIC8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSdLLicgc3VybmFtZT0nVm9zJyBmdWxs
bmFtZT0nSy4gVm9zJz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxhdXRob3I+Cis8b3Jn
YW5pemF0aW9uPklFVEY8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzxkYXRlIHllYXI9JzIwMTEn
IG1vbnRoPSdBdWd1c3QnIC8+Cis8YWJzdHJhY3Q+Cis8dD5UaGlzIGRvY3VtZW50IHByb3ZpZGVz
IHNwZWNpZmljIHJlcXVpcmVtZW50cyBmb3IgYW4gSW50ZXJuZXQgYXVkaW8KKyAgIGNvZGVjLiAg
VGhlc2UgcmVxdWlyZW1lbnRzIGFkZHJlc3MgcXVhbGl0eSwgc2FtcGxlIHJhdGUsIGJpdHJhdGUs
CisgICBhbmQgcGFja2V0LWxvc3Mgcm9idXN0bmVzcywgYXMgd2VsbCBhcyBvdGhlciBkZXNpcmFi
bGUgcHJvcGVydGllcy4KKzwvdD48L2Fic3RyYWN0PjwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1l
PSdSRkMnIHZhbHVlPSc2MzY2JyAvPgorPGZvcm1hdCB0eXBlPSdUWFQnIHRhcmdldD0naHR0cDov
L3Rvb2xzLmlldGYub3JnL3JmYy9yZmM2MzY2LnR4dCcgLz4KKzwvcmVmZXJlbmNlPgorCis8P3Jm
YyBpbmNsdWRlPSJodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZl
cmVuY2UuUkZDLjM1NTAueG1sIj8+Cis8P3JmYyBpbmNsdWRlPSJodHRwOi8veG1sLnJlc291cmNl
Lm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjM1MzMueG1sIj8+CisKKzxyZWZl
cmVuY2UgYW5jaG9yPSdTSUxLJyB0YXJnZXQ9J2h0dHA6Ly9kZXZlbG9wZXIuc2t5cGUuY29tL3Np
bGsnPgorPGZyb250PgorPHRpdGxlPlNJTEsgU3BlZWNoIENvZGVjPC90aXRsZT4KKzxhdXRob3Ig
aW5pdGlhbHM9J0suJyBzdXJuYW1lPSdWb3MnIGZ1bGxuYW1lPSdLLiBWb3MnPgorPG9yZ2FuaXph
dGlvbiAvPjwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0nUy4nIHN1cm5hbWU9J0plbnNlbicg
ZnVsbG5hbWU9J1MuIEplbnNlbic+Cis8b3JnYW5pemF0aW9uIC8+PC9hdXRob3I+Cis8YXV0aG9y
IGluaXRpYWxzPSdLLicgc3VybmFtZT0nU29lcmVuc2VuJyBmdWxsbmFtZT0nSy4gU29lcmVuc2Vu
Jz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxkYXRlIHllYXI9JzIwMTAnIG1vbnRoPSdN
YXJjaCcgLz4KKzxhYnN0cmFjdD4KKzx0PjwvdD4KKzwvYWJzdHJhY3Q+PC9mcm9udD4KKzxzZXJp
ZXNJbmZvIG5hbWU9J0ludGVybmV0LURyYWZ0JyB2YWx1ZT0nZHJhZnQtdm9zLXNpbGstMDEnIC8+
Cis8Zm9ybWF0IHR5cGU9J1RYVCcgdGFyZ2V0PSdodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9k
cmFmdC12b3Mtc2lsay0wMScgLz4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0i
bGFyb2lhLWljYXNzcCI+Cis8ZnJvbnQ+Cis8dGl0bGUgYWJicmV2PSJSb2J1c3QgYW5kIEVmZmlj
aWVudCBRdWFudGl6YXRpb24gb2YgU3BlZWNoIExTUCI+CitSb2J1c3QgYW5kIEVmZmljaWVudCBR
dWFudGl6YXRpb24gb2YgU3BlZWNoIExTUCBQYXJhbWV0ZXJzIFVzaW5nIFN0cnVjdHVyZWQgVmVj
dG9yIFF1YW50aXphdGlvbgorPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IlIuTC4iIHN1cm5h
bWU9Ikxhcm9pYSIgZnVsbG5hbWU9IlIuIj4KKzxvcmdhbml6YXRpb24vPgorPC9hdXRob3I+Cis8
YXV0aG9yIGluaXRpYWxzPSJOLlAuIiBzdXJuYW1lPSJQaGFtZG8iIGZ1bGxuYW1lPSJOLiI+Cis8
b3JnYW5pemF0aW9uLz4KKzwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0iTi5GLiIgc3VybmFt
ZT0iRmFydmFyZGluIiBmdWxsbmFtZT0iTi4iPgorPG9yZ2FuaXphdGlvbi8+Cis8L2F1dGhvcj4K
KzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJJQ0FTU1AtMTk5MSwgUHJvYy4gSUVFRSBJbnQu
IENvbmYuIEFjb3VzdC4sIFNwZWVjaCwgU2lnbmFsIFByb2Nlc3NpbmcsIHBwLiA2NDEtNjQ0LCBP
Y3RvYmVyIiB2YWx1ZT0iMTk5MSIvPgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9y
PSdDRUxUJyB0YXJnZXQ9J2h0dHA6Ly9jZWx0LWNvZGVjLm9yZy8nPgorPGZyb250PgorPHRpdGxl
PkNvbnN0cmFpbmVkLUVuZXJneSBMYXBwZWQgVHJhbnNmb3JtIChDRUxUKSBDb2RlYzwvdGl0bGU+
Cis8YXV0aG9yIGluaXRpYWxzPSdKLU0uJyBzdXJuYW1lPSdWYWxpbicgZnVsbG5hbWU9J0otTS4g
VmFsaW4nPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0nVCYj
eDJFO0IuJyBzdXJuYW1lPSdUZXJyaWJlcnJ5JyBmdWxsbmFtZT0nVGltb3RoeSBCLiBUZXJyaWJl
cnJ5Jz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9J0cuJyBz
dXJuYW1lPSdNYXh3ZWxsJyBmdWxsbmFtZT0nRy4gTWF4d2VsbCc+Cis8b3JnYW5pemF0aW9uIC8+
PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSdDLicgc3VybmFtZT0nTW9udGdvbWVyeScgZnVs
bG5hbWU9J0MuIE1vbnRnb21lcnknPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGRhdGUg
eWVhcj0nMjAxMCcgbW9udGg9J0p1bHknIC8+Cis8YWJzdHJhY3Q+Cis8dD48L3Q+Cis8L2Fic3Ry
YWN0PjwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSdJbnRlcm5ldC1EcmFmdCcgdmFsdWU9J2Ry
YWZ0LXZhbGluLWNlbHQtY29kZWMtMDInIC8+Cis8Zm9ybWF0IHR5cGU9J1RYVCcgdGFyZ2V0PSdo
dHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9kcmFmdC12YWxpbi1jZWx0LWNvZGVjLTAyJyAvPgor
PC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSdTUlRQLVZCUic+Cis8ZnJvbnQ+Cis8
dGl0bGU+R3VpZGVsaW5lcyBmb3IgdGhlIHVzZSBvZiBWYXJpYWJsZSBCaXQgUmF0ZSBBdWRpbyB3
aXRoIFNlY3VyZSBSVFA8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0nQy4nIHN1cm5hbWU9J1Bl
cmtpbnMnIGZ1bGxuYW1lPSdLLiBWb3MnPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGF1
dGhvciBpbml0aWFscz0nSi5NLicgc3VybmFtZT0nVmFsaW4nIGZ1bGxuYW1lPSdKLk0uIFZhbGlu
Jz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxkYXRlIHllYXI9JzIwMTEnIG1vbnRoPSdK
dWx5JyAvPgorPGFic3RyYWN0PgorPHQ+PC90PgorPC9hYnN0cmFjdD48L2Zyb250PgorPHNlcmll
c0luZm8gbmFtZT0nUkZDJyB2YWx1ZT0nNjU2MicgLz4KKzxmb3JtYXQgdHlwZT0nVFhUJyB0YXJn
ZXQ9J2h0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzY1NjInIC8+Cis8L3JlZmVyZW5jZT4K
KworPHJlZmVyZW5jZSBhbmNob3I9J0RPUyc+Cis8ZnJvbnQ+Cis8dGl0bGU+SW50ZXJuZXQgRGVu
aWFsLW9mLVNlcnZpY2UgQ29uc2lkZXJhdGlvbnM8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0n
TS4nIHN1cm5hbWU9J0hhbmRsZXknIGZ1bGxuYW1lPSdNLiBIYW5kbGV5Jz4KKzxvcmdhbml6YXRp
b24gLz48L2F1dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9J0UuJyBzdXJuYW1lPSdSZXNjb3JsYScg
ZnVsbG5hbWU9J0UuIFJlc2NvcmxhJz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxhdXRo
b3I+Cis8b3JnYW5pemF0aW9uPklBQjwvb3JnYW5pemF0aW9uPjwvYXV0aG9yPgorPGRhdGUgeWVh
cj0nMjAwNicgbW9udGg9J0RlY2VtYmVyJyAvPgorPGFic3RyYWN0PgorPHQ+VGhpcyBkb2N1bWVu
dCBwcm92aWRlcyBhbiBvdmVydmlldyBvZiBwb3NzaWJsZSBhdmVudWVzIGZvciBkZW5pYWwtb2Yt
c2VydmljZSAoRG9TKSBhdHRhY2sgb24gSW50ZXJuZXQgc3lzdGVtcy4gIFRoZSBhaW0gaXMgdG8g
ZW5jb3VyYWdlIHByb3RvY29sIGRlc2lnbmVycyBhbmQgbmV0d29yayBlbmdpbmVlcnMgdG93YXJk
cyBkZXNpZ25zIHRoYXQgYXJlIG1vcmUgcm9idXN0LiAgV2UgZGlzY3VzcyBwYXJ0aWFsIHNvbHV0
aW9ucyB0aGF0IHJlZHVjZSB0aGUgZWZmZWN0aXZlbmVzcyBvZiBhdHRhY2tzLCBhbmQgaG93IHNv
bWUgc29sdXRpb25zIG1pZ2h0IGluYWR2ZXJ0ZW50bHkgb3BlbiB1cCBhbHRlcm5hdGl2ZSB2dWxu
ZXJhYmlsaXRpZXMuICBUaGlzIG1lbW8gcHJvdmlkZXMgaW5mb3JtYXRpb24gZm9yIHRoZSBJbnRl
cm5ldCBjb21tdW5pdHkuPC90PjwvYWJzdHJhY3Q+PC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9
J1JGQycgdmFsdWU9JzQ3MzInIC8+Cis8Zm9ybWF0IHR5cGU9J1RYVCcgb2N0ZXRzPSc5MTg0NCcg
dGFyZ2V0PSdmdHA6Ly9mdHAuaXNpLmVkdS9pbi1ub3Rlcy9yZmM0NzMyLnR4dCcgLz4KKzwvcmVm
ZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iTWFydGluNzkiPgorPGZyb250PgorPHRpdGxl
PlJhbmdlIGVuY29kaW5nOiBBbiBhbGdvcml0aG0gZm9yIHJlbW92aW5nIHJlZHVuZGFuY3kgZnJv
bSBhIGRpZ2l0aXNlZCBtZXNzYWdlPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IkcuTi5OLiIg
c3VybmFtZT0iTWFydGluIiBmdWxsbmFtZT0iRy4gTmlnZWwgTi4gTWFydGluIj48b3JnYW5pemF0
aW9uLz48L2F1dGhvcj4KKzxkYXRlIHllYXI9IjE5NzkiIC8+Cis8L2Zyb250PgorPHNlcmllc0lu
Zm8gbmFtZT0iUHJvYy4gSW5zdGl0dXRpb24gb2YgRWxlY3Ryb25pYyBhbmQgUmFkaW8gRW5naW5l
ZXJzIEludGVybmF0aW9uYWwgQ29uZmVyZW5jZSBvbiBWaWRlbyBhbmQgRGF0YSBSZWNvcmRpbmci
IHZhbHVlPSIiIC8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9ImNvZGluZy10
aGVzaXMiPgorPGZyb250PgorPHRpdGxlPlNvdXJjZSBjb2RpbmcgYWxnb3JpdGhtcyBmb3IgZmFz
dCBkYXRhIGNvbXByZXNzaW9uPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IlIuIiBzdXJuYW1l
PSJQYXNjbyIgZnVsbG5hbWU9IiI+PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8ZGF0ZSBtb250
aD0iTWF5IiB5ZWFyPSIxOTc2IiAvPgorPC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9IlBoLkQu
IHRoZXNpcyIgdmFsdWU9IkRlcHQuIG9mIEVsZWN0cmljYWwgRW5naW5lZXJpbmcsIFN0YW5mb3Jk
IFVuaXZlcnNpdHkiIC8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IlBWUSI+
Cis8ZnJvbnQ+Cis8dGl0bGU+QSBQeXJhbWlkIFZlY3RvciBRdWFudGl6ZXI8L3RpdGxlPgorPGF1
dGhvciBpbml0aWFscz0iVC4iIHN1cm5hbWU9IkZpc2NoZXIiIGZ1bGxuYW1lPSIiPjxvcmdhbml6
YXRpb24vPjwvYXV0aG9yPgorPGRhdGUgbW9udGg9Ikp1bHkiIHllYXI9IjE5ODYiIC8+Cis8L2Zy
b250PgorPHNlcmllc0luZm8gbmFtZT0iSUVFRSBUcmFucy4gb24gSW5mb3JtYXRpb24gVGhlb3J5
LCBWb2wuIDMyIiB2YWx1ZT0icHAuIDU2OC01ODMiIC8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVy
ZW5jZSBhbmNob3I9IkthYmFsODYiPgorPGZyb250PgorPHRpdGxlPlRoZSBDb21wdXRhdGlvbiBv
ZiBMaW5lIFNwZWN0cmFsIEZyZXF1ZW5jaWVzIFVzaW5nIENoZWJ5c2hldiBQb2x5bm9taWFsczwv
dGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSJQLiIgc3VybmFtZT0iS2FiYWwiIGZ1bGxuYW1lPSJQ
LiBLYWJhbCI+PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJSLiIg
c3VybmFtZT0iUmFtYWNoYW5kcmFuIiBmdWxsbmFtZT0iUi4gUC4gUmFtYWNoYW5kcmFuIj48b3Jn
YW5pemF0aW9uLz48L2F1dGhvcj4KKzxkYXRlIG1vbnRoPSJEZWNlbWJlciIgeWVhcj0iMTk4NiIg
Lz4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJJRUVFIFRyYW5zLiBBY291c3RpY3MsIFNw
ZWVjaCwgU2lnbmFsIFByb2Nlc3NpbmcsIHZvbC4gMzQsIG5vLiA2IiB2YWx1ZT0icHAuIDE0MTkt
MTQyNiIgLz4KKzwvcmVmZXJlbmNlPgorCisKKzxyZWZlcmVuY2UgYW5jaG9yPSJWYWxncmluZCIg
dGFyZ2V0PSJodHRwOi8vdmFsZ3JpbmQub3JnLyI+Cis8ZnJvbnQ+Cis8dGl0bGU+VmFsZ3JpbmQg
d2Vic2l0ZTwvdGl0bGU+Cis8YXV0aG9yPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNl
PgorCis8cmVmZXJlbmNlIGFuY2hvcj0iR29vZ2xlLU5ldEVRIiB0YXJnZXQ9Imh0dHA6Ly9jb2Rl
Lmdvb2dsZS5jb20vcC93ZWJydGMvc291cmNlL2Jyb3dzZS90cnVuay9zcmMvbW9kdWxlcy9hdWRp
b19jb2RpbmcvTmV0RVEvbWFpbi9zb3VyY2UvP3I9NTgzIj4KKzxmcm9udD4KKzx0aXRsZT5Hb29n
bGUgTmV0RVEgY29kZTwvdGl0bGU+Cis8YXV0aG9yPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVm
ZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iR29vZ2xlLVdlYlJUQyIgdGFyZ2V0PSJodHRw
Oi8vY29kZS5nb29nbGUuY29tL3Avd2VicnRjLyI+Cis8ZnJvbnQ+Cis8dGl0bGU+R29vZ2xlIFdl
YlJUQyBjb2RlPC90aXRsZT4KKzxhdXRob3I+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVu
Y2U+CisKKworPHJlZmVyZW5jZSBhbmNob3I9Ik9wdXMtZ2l0IiB0YXJnZXQ9ImdpdDovL2dpdC54
aXBoLm9yZy9vcHVzLmdpdCI+Cis8ZnJvbnQ+Cis8dGl0bGU+T3B1cyBHaXQgUmVwb3NpdG9yeTwv
dGl0bGU+Cis8YXV0aG9yPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVm
ZXJlbmNlIGFuY2hvcj0iT3B1cy13ZWJzaXRlIiB0YXJnZXQ9Imh0dHA6Ly9vcHVzLWNvZGVjLm9y
Zy8iPgorPGZyb250PgorPHRpdGxlPk9wdXMgd2Vic2l0ZTwvdGl0bGU+Cis8YXV0aG9yPjwvYXV0
aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iVm9yYmlz
LXdlYnNpdGUiIHRhcmdldD0iaHR0cDovL3hpcGgub3JnL3ZvcmJpcy8iPgorPGZyb250PgorPHRp
dGxlPlZvcmJpcyB3ZWJzaXRlPC90aXRsZT4KKzxhdXRob3I+PC9hdXRob3I+Cis8L2Zyb250Pgor
PC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJNYXRyb3NrYS13ZWJzaXRlIiB0YXJn
ZXQ9Imh0dHA6Ly9tYXRyb3NrYS5vcmcvIj4KKzxmcm9udD4KKzx0aXRsZT5NYXRyb3NrYSB3ZWJz
aXRlPC90aXRsZT4KKzxhdXRob3I+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisK
KzxyZWZlcmVuY2UgYW5jaG9yPSJWZWN0b3JzLXdlYnNpdGUiIHRhcmdldD0iaHR0cDovL29wdXMt
Y29kZWMub3JnL3Rlc3R2ZWN0b3JzLyI+Cis8ZnJvbnQ+Cis8dGl0bGU+T3B1cyBUZXN0dmVjdG9y
cyAod2Vic2lkZSk8L3RpdGxlPgorPGF1dGhvcj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVy
ZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IlZlY3RvcnMtcHJvYyIgdGFyZ2V0PSJodHRwOi8v
d3d3LmlldGYub3JnL3Byb2NlZWRpbmdzLzgzL3NsaWRlcy9zbGlkZXMtODMtY29kZWMtMC5neiI+
Cis8ZnJvbnQ+Cis8dGl0bGU+T3B1cyBUZXN0dmVjdG9ycyAocHJvY2VlZGluZ3MpPC90aXRsZT4K
KzxhdXRob3I+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2Ug
YW5jaG9yPSJsaW5lLXNwZWN0cmFsLXBhaXJzIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEu
b3JnL3dpa2kvTGluZV9zcGVjdHJhbF9wYWlycyI+Cis8ZnJvbnQ+Cis8dGl0bGU+TGluZSBTcGVj
dHJhbCBQYWlyczwvdGl0bGU+Cis8YXV0aG9yPjxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdh
bml6YXRpb24+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2Ug
YW5jaG9yPSJyYW5nZS1jb2RpbmciIHRhcmdldD0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lr
aS9SYW5nZV9jb2RpbmciPgorPGZyb250PgorPHRpdGxlPlJhbmdlIENvZGluZzwvdGl0bGU+Cis8
YXV0aG9yPjxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+PC9hdXRob3I+Cis8
L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJIYWRhbWFyZCIgdGFy
Z2V0PSJodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0hhZGFtYXJkX3RyYW5zZm9ybSI+Cis8
ZnJvbnQ+Cis8dGl0bGU+SGFkYW1hcmQgVHJhbnNmb3JtPC90aXRsZT4KKzxhdXRob3I+PG9yZ2Fu
aXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3Jl
ZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IlZpdGVyYmkiIHRhcmdldD0iaHR0cDovL2Vu
Lndpa2lwZWRpYS5vcmcvd2lraS9WaXRlcmJpX2FsZ29yaXRobSI+Cis8ZnJvbnQ+Cis8dGl0bGU+
Vml0ZXJiaSBBbGdvcml0aG08L3RpdGxlPgorPGF1dGhvcj48b3JnYW5pemF0aW9uPldpa2lwZWRp
YTwvb3JnYW5pemF0aW9uPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVm
ZXJlbmNlIGFuY2hvcj0iV2hpdGVuaW5nIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3Jn
L3dpa2kvV2hpdGVfbm9pc2UiPgorPGZyb250PgorPHRpdGxlPldoaXRlIE5vaXNlPC90aXRsZT4K
KzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4K
KzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IkxQQyIgdGFyZ2V0
PSJodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0xpbmVhcl9wcmVkaWN0aW9uIj4KKzxmcm9u
dD4KKzx0aXRsZT5MaW5lYXIgUHJlZGljdGlvbjwvdGl0bGU+Cis8YXV0aG9yPjxvcmdhbml6YXRp
b24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVu
Y2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJNRENUIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVk
aWEub3JnL3dpa2kvTW9kaWZpZWRfZGlzY3JldGVfY29zaW5lX3RyYW5zZm9ybSI+Cis8ZnJvbnQ+
Cis8dGl0bGU+TW9kaWZpZWQgRGlzY3JldGUgQ29zaW5lIFRyYW5zZm9ybTwvdGl0bGU+Cis8YXV0
aG9yPjxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+PC9hdXRob3I+Cis8L2Zy
b250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJGRlQiIHRhcmdldD0iaHR0
cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9GYXN0X0ZvdXJpZXJfdHJhbnNmb3JtIj4KKzxmcm9u
dD4KKzx0aXRsZT5GYXN0IEZvdXJpZXIgVHJhbnNmb3JtPC90aXRsZT4KKzxhdXRob3I+PG9yZ2Fu
aXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3Jl
ZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9InotdHJhbnNmb3JtIiB0YXJnZXQ9Imh0dHA6
Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvWi10cmFuc2Zvcm0iPgorPGZyb250PgorPHRpdGxlPlot
dHJhbnNmb3JtPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2Fu
aXphdGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworCis8cmVmZXJlbmNl
IGFuY2hvcj0iQnVyZyI+Cis8ZnJvbnQ+Cis8dGl0bGU+TWF4aW11bSBFbnRyb3B5IFNwZWN0cmFs
IEFuYWx5c2lzPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IkpQLiIgc3VybmFtZT0iQnVyZyIg
ZnVsbG5hbWU9IkouUC4gQnVyZyI+PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8L2Zyb250Pgor
PC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJTY2h1ciI+Cis8ZnJvbnQ+Cis8dGl0
bGU+QSBmaXhlZCBwb2ludCBjb21wdXRhdGlvbiBvZiBwYXJ0aWFsIGNvcnJlbGF0aW9uIGNvZWZm
aWNpZW50czwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSJKLiIgc3VybmFtZT0iTGUgUm91eCIg
ZnVsbG5hbWU9IkouIExlIFJvdXgiPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPGF1dGhvciBp
bml0aWFscz0iQy4iIHN1cm5hbWU9Ikd1ZWd1ZW4iIGZ1bGxuYW1lPSJDLiBHdWVndWVuIj48b3Jn
YW5pemF0aW9uLz48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJJQ0FTU1At
MTk3NywgUHJvYy4gSUVFRSBJbnQuIENvbmYuIEFjb3VzdC4sIFNwZWVjaCwgU2lnbmFsIFByb2Nl
c3NpbmcsIHBwLiAyNTctMjU5LCBPY3RvYmVyIiB2YWx1ZT0iMTk3NyIvPgorPC9yZWZlcmVuY2U+
CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJQcmluY2VuODYiPgorPGZyb250PgorPHRpdGxlPkFuYWx5
c2lzL3N5bnRoZXNpcyBmaWx0ZXIgYmFuayBkZXNpZ24gYmFzZWQgb24gdGltZSBkb21haW4gYWxp
YXNpbmcgY2FuY2VsbGF0aW9uPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IkouIiBzdXJuYW1l
PSJQcmluY2VuIiBmdWxsbmFtZT0iSm9obiBQLiBQcmluY2VuIj48b3JnYW5pemF0aW9uLz48L2F1
dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9IkEuIiBzdXJuYW1lPSJCcmFkbGV5IiBmdWxsbmFtZT0i
QWxhbiBCLiBCcmFkbGV5Ij48b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8c2Vy
aWVzSW5mbyBuYW1lPSJJRUVFIFRyYW5zLiBBY291c3QuIFNwZWVjaCBTaWcuIFByb2MuIEFTU1At
MzQgKDUpLCAxMTUzLTExNjEiIHZhbHVlPSIxOTg2Ii8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVy
ZW5jZSBhbmNob3I9IlZhbGluMjAxMCI+Cis8ZnJvbnQ+Cis8dGl0bGU+QSBIaWdoLVF1YWxpdHkg
U3BlZWNoIGFuZCBBdWRpbyBDb2RlYyBXaXRoIExlc3MgVGhhbiAxMCBtcyBkZWxheTwvdGl0bGU+
Cis8YXV0aG9yIGluaXRpYWxzPSJKTSIgc3VybmFtZT0iVmFsaW4iIGZ1bGxuYW1lPSJKZWFuLU1h
cmMgVmFsaW4iPjxvcmdhbml6YXRpb24vPgorPC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJU
LiBCLiIgc3VybmFtZT0iVGVycmliZXJyeSIgZnVsbG5hbWU9IlRpbW90aHkgVGVycmliZXJyeSI+
PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJDLiIgc3VybmFtZT0i
TW9udGdvbWVyeSIgZnVsbG5hbWU9IkNocmlzdG9waGVyIE1vbnRnb21lcnkiPjxvcmdhbml6YXRp
b24vPjwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0iRy4iIHN1cm5hbWU9Ik1heHdlbGwiIGZ1
bGxuYW1lPSJHcmVnb3J5IE1heHdlbGwiPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPC9mcm9u
dD4KKzxzZXJpZXNJbmZvIG5hbWU9IklFRUUgVHJhbnMuIG9uIEF1ZGlvLCBTcGVlY2ggYW5kIExh
bmd1YWdlIFByb2Nlc3NpbmcsIFZvbC4gMTgsIE5vLiAxLCBwcC4gNTgtNjciIHZhbHVlPSIyMDEw
IiAvPgorPC9yZWZlcmVuY2U+CisKKworPHJlZmVyZW5jZSBhbmNob3I9Ilp3aWNrZXI2MSI+Cis8
ZnJvbnQ+Cis8dGl0bGU+U3ViZGl2aXNpb24gb2YgdGhlIGF1ZGlibGUgZnJlcXVlbmN5IHJhbmdl
IGludG8gY3JpdGljYWwgYmFuZHM8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0iRS4iIHN1cm5h
bWU9Ilp3aWNrZXIiIGZ1bGxuYW1lPSJFLiBad2lja2VyIj48b3JnYW5pemF0aW9uLz48L2F1dGhv
cj4KKzxkYXRlIG1vbnRoPSJGZWJydWFyeSIgeWVhcj0iMTk2MSIgLz4KKzwvZnJvbnQ+Cis8c2Vy
aWVzSW5mbyBuYW1lPSJUaGUgSm91cm5hbCBvZiB0aGUgQWNvdXN0aWNhbCBTb2NpZXR5IG9mIEFt
ZXJpY2EsIFZvbC4gMzMsIE5vIDIiIHZhbHVlPSJwLiAyNDgiIC8+Cis8L3JlZmVyZW5jZT4KKwor
Cis8L3JlZmVyZW5jZXM+CisKKzxzZWN0aW9uIGFuY2hvcj0icmVmLWltcGxlbWVudGF0aW9uIiB0
aXRsZT0iUmVmZXJlbmNlIEltcGxlbWVudGF0aW9uIj4KKworPHQ+VGhpcyBhcHBlbmRpeCBjb250
YWlucyB0aGUgY29tcGxldGUgc291cmNlIGNvZGUgZm9yIHRoZQorcmVmZXJlbmNlIGltcGxlbWVu
dGF0aW9uIG9mIHRoZSBPcHVzIGNvZGVjIHdyaXR0ZW4gaW4gQy4gQnkgZGVmYXVsdCwKK3RoaXMg
aW1wbGVtZW50YXRpb24gcmVsaWVzIG9uIGZsb2F0aW5nLXBvaW50IGFyaXRobWV0aWMsIGJ1dCBp
dCBjYW4gYmUKK2NvbXBpbGVkIHRvIHVzZSBvbmx5IGZpeGVkLXBvaW50IGFyaXRobWV0aWMgYnkg
ZGVmaW5pbmcgdGhlIEZJWEVEX1BPSU5UCittYWNyby4gSW5mb3JtYXRpb24gb24gYnVpbGRpbmcg
YW5kIHVzaW5nIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gaXMKK2F2YWlsYWJsZSBpbiB0
aGUgUkVBRE1FIGZpbGUuCis8L3Q+CisKKzx0PlRoZSBpbXBsZW1lbnRhdGlvbiBjYW4gYmUgY29t
cGlsZWQgd2l0aCBlaXRoZXIgYSBDODkgb3IgYSBDOTkKK2NvbXBpbGVyLiBJdCBpcyByZWFzb25h
Ymx5IG9wdGltaXplZCBmb3IgbW9zdCBwbGF0Zm9ybXMgc3VjaCB0aGF0Citvbmx5IGFyY2hpdGVj
dHVyZS1zcGVjaWZpYyBvcHRpbWl6YXRpb25zIGFyZSBsaWtlbHkgdG8gYmUgdXNlZnVsLgorVGhl
IEZGVCA8eHJlZiB0YXJnZXQ9IkZGVCIvPiB1c2VkIGlzIGEgc2xpZ2h0bHkgbW9kaWZpZWQgdmVy
c2lvbiBvZiB0aGUgS0lTUy1GRlQgbGlicmFyeSwKK2J1dCBpdCBpcyBlYXN5IHRvIHN1YnN0aXR1
dGUgYW55IG90aGVyIEZGVCBsaWJyYXJ5LgorPC90PgorCis8dD4KK1doaWxlIHRoZSByZWZlcmVu
Y2UgaW1wbGVtZW50YXRpb24gZG9lcyBub3QgcmVseSBvbiBhbnkKKzxzcGFueCBzdHlsZT0iZW1w
aCI+dW5kZWZpbmVkIGJlaGF2aW9yPC9zcGFueD4gYXMgZGVmaW5lZCBieSBDODkgb3IgQzk5LAor
aXQgcmVsaWVzIG9uIGNvbW1vbiA8c3Bhbnggc3R5bGU9ImVtcGgiPmltcGxlbWVudGF0aW9uLWRl
ZmluZWQgYmVoYXZpb3I8L3NwYW54PgorZm9yIHR3bydzIGNvbXBsZW1lbnQgYXJjaGl0ZWN0dXJl
czoKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PlJpZ2h0IHNoaWZ0cyBvZiBuZWdhdGl2ZSB2
YWx1ZXMgYXJlIGNvbnNpc3RlbnQgd2l0aCB0d28ncyBjb21wbGVtZW50IGFyaXRobWV0aWMsIHNv
IHRoYXQgYT4+YiBpcyBlcXVpdmFsZW50IHRvIGZsb29yKGEvKDIqKmIpKSw8L3Q+Cis8dD5Gb3Ig
Y29udmVyc2lvbiB0byBhIHNpZ25lZCBpbnRlZ2VyIG9mIE4gYml0cywgdGhlIHZhbHVlIGlzIHJl
ZHVjZWQgbW9kdWxvIDIqKk4gdG8gYmUgd2l0aGluIHJhbmdlIG9mIHRoZSB0eXBlLDwvdD4KKzx0
PlRoZSByZXN1bHQgb2YgaW50ZWdlciBkaXZpc2lvbiBvZiBhIG5lZ2F0aXZlIHZhbHVlIGlzIHRy
dW5jYXRlZCB0b3dhcmRzIHplcm8sIGFuZDwvdD4KKzx0PlRoZSBjb21waWxlciBwcm92aWRlcyBh
IDY0LWJpdCBpbnRlZ2VyIHR5cGUgKGEgQzk5IHJlcXVpcmVtZW50IHdoaWNoIGlzIHN1cHBvcnRl
ZCBieSBtb3N0IEM4OSBjb21waWxlcnMpLjwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitJbiBp
dHMgY3VycmVudCBmb3JtLCB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGFsc28gcmVxdWly
ZXMgdGhlIGZvbGxvd2luZworYXJjaGl0ZWN0dXJhbCBjaGFyYWN0ZXJpc3RpY3MgdG8gb2J0YWlu
IGFjY2VwdGFibGUgcGVyZm9ybWFuY2U6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5Ud28n
cyBjb21wbGVtZW50IGFyaXRobWV0aWMsPC90PgorPHQ+QXQgbGVhc3QgYSAxNiBiaXQgYnkgMTYg
Yml0IGludGVnZXIgbXVsdGlwbGllciAoMzItYml0IHJlc3VsdCksIGFuZDwvdD4KKzx0PkF0IGxl
YXN0IGEgMzItYml0IGFkZGVyL2FjY3VtdWxhdG9yLjwvdD4KKzwvbGlzdD4KKzwvdD4KKworCis8
c2VjdGlvbiB0aXRsZT0iRXh0cmFjdGluZyB0aGUgc291cmNlIj4KKzx0PgorVGhlIGNvbXBsZXRl
IHNvdXJjZSBjb2RlIGNhbiBiZSBleHRyYWN0ZWQgZnJvbSB0aGlzIGRyYWZ0LCBieSBydW5uaW5n
IHRoZQorZm9sbG93aW5nIGNvbW1hbmQgbGluZToKKworPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgor
PHQ+PCFbQ0RBVEFbCitjYXQgZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLnR4dCB8IGdyZXAgJ15cIFwg
XCAjIyMnIHwgc2VkIC1lICdzLy4uLiMjIy8vJyB8IGJhc2U2NCAtZCA+IG9wdXNfc291cmNlLnRh
ci5negorXV0+PC90PgorPHQ+Cit0YXIgeHp2ZiBvcHVzX3NvdXJjZS50YXIuZ3oKKzwvdD4KKzx0
PmNkIG9wdXNfc291cmNlPC90PgorPHQ+bWFrZTwvdD4KKzwvbGlzdD4KK09uIHN5c3RlbXMgd2hl
cmUgdGhlIHByb3ZpZGVkIE1ha2VmaWxlIGRvZXMgbm90IHdvcmssIHRoZSBmb2xsb3dpbmcgY29t
bWFuZCBsaW5lIG1heSBiZSB1c2VkIHRvIGNvbXBpbGUKK3RoZSBzb3VyY2UgY29kZToKKzxsaXN0
IHN0eWxlPSJzeW1ib2xzIj4KKzx0PjwhW0NEQVRBWworY2MgLU8yIC1nIC1vIG9wdXNfZGVtbyBz
cmMvb3B1c19kZW1vLmMgYGNhdCAqLm1rIHwgZ3JlcCAtdiBmaXhlZCB8IHNlZCAtZSAncy8uKj0v
LycgLWUgJ3MvXFxcXC8vJ2AgLURPUFVTX0JVSUxEIC1JaW5jbHVkZSAtSWNlbHQgLUlzaWxrIC1J
c2lsay9mbG9hdCAtRFVTRV9BTExPQ0EgLURyZXN0cmljdD0gLWxtCitdXT48L3Q+PC9saXN0Pgor
PC90PgorCis8dD4KK09uIHN5c3RlbXMgd2hlcmUgdGhlIGJhc2U2NCB1dGlsaXR5IGlzIG5vdCBw
cmVzZW50LCB0aGUgZm9sbG93aW5nIGNvbW1hbmRzIGNhbiBiZSB1c2VkIGluc3RlYWQ6Cis8bGlz
dCBzdHlsZT0ic3ltYm9scyI+Cis8dD48IVtDREFUQVsKK2NhdCBkcmFmdC1pZXRmLWNvZGVjLW9w
dXMudHh0IHwgZ3JlcCAnXlwgXCBcICMjIycgfCBzZWQgLWUgJ3MvLi4uIyMjLy8nID4gb3B1cy5i
NjQKK11dPjwvdD4KKzx0Pm9wZW5zc2wgYmFzZTY0IC1kIC1pbiBvcHVzLmI2NCA+IG9wdXNfc291
cmNlLnRhci5nejwvdD4KKzwvbGlzdD4KKworPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0
aXRsZT0iVXAtdG8tZGF0ZSBJbXBsZW1lbnRhdGlvbiI+Cis8dD4KK0FzIG9mIHRoZSB0aW1lIG9m
IHB1YmxpY2F0aW9uIG9mIHRoaXMgbWVtbywgYW4gdXAtdG8tZGF0ZSBpbXBsZW1lbnRhdGlvbiBj
b25mb3JtaW5nIHRvCit0aGlzIHN0YW5kYXJkIGlzIGF2YWlsYWJsZSBpbiBhCisgPHhyZWYgdGFy
Z2V0PSdPcHVzLWdpdCc+R2l0IHJlcG9zaXRvcnk8L3hyZWY+LgorUmVsZWFzZXMgYW5kIG90aGVy
IHJlc291cmNlcyBhcmUgYXZhaWxhYmxlIGF0CisgPHhyZWYgdGFyZ2V0PSdPcHVzLXdlYnNpdGUn
Lz4uIEhvd2V2ZXIsIGFsdGhvdWdoIHRoYXQgaW1wbGVtZW50YXRpb24gaXMgZXhwZWN0ZWQgdG8K
KyByZW1haW4gY29uZm9ybWFudCB3aXRoIHRoZSBzdGFuZGFyZCwgaXQgaXMgdGhlIGNvZGUgaW4g
dGhpcyBkb2N1bWVudCB0aGF0IHNoYWxsCisgcmVtYWluIG5vcm1hdGl2ZS4KKzwvdD4KKzwvc2Vj
dGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IkJhc2U2NC1lbmNvZGVkIFNvdXJjZSBDb2RlIj4KKzx0
PgorPD9yZmMgaW5jbHVkZT0ib3B1c19zb3VyY2UuYmFzZTY0Ij8+Cis8L3Q+Cis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0idGVzdC12ZWN0b3JzIiB0aXRsZT0iVGVzdCBWZWN0b3JzIj4K
Kzx0PgorQmVjYXVzZSBvZiBzaXplIGNvbnN0cmFpbnRzLCB0aGUgT3B1cyB0ZXN0IHZlY3RvcnMg
YXJlIG5vdCBkaXN0cmlidXRlZCBpbiB0aGlzCitkcmFmdC4gVGhleSBhcmUgYXZhaWxhYmxlIGlu
IHRoZSBwcm9jZWVkaW5ncyBvZiB0aGUgODN0aCBJRVRGIG1lZXRpbmcgKFBhcmlzKSA8eHJlZiB0
YXJnZXQ9IlZlY3RvcnMtcHJvYyIvPiBhbmQgZnJvbSB0aGUgT3B1cyBjb2RlYyB3ZWJzaXRlIGF0
Cis8eHJlZiB0YXJnZXQ9IlZlY3RvcnMtd2Vic2l0ZSIvPi4gVGhlc2UgdGVzdCB2ZWN0b3JzIHdl
cmUgY3JlYXRlZCBzcGVjaWZpY2FsbHkgdG8gZXhlcmNpc2UKK2FsbCBhc3BlY3RzIG9mIHRoZSBk
ZWNvZGVyIGFuZCB0aGVyZWZvcmUgdGhlIGF1ZGlvIHF1YWxpdHkgb2YgdGhlIGRlY29kZWQgb3V0
cHV0IGlzCitzaWduaWZpY2FudGx5IGxvd2VyIHRoYW4gd2hhdCBPcHVzIGNhbiBhY2hpZXZlIGlu
IG5vcm1hbCBvcGVyYXRpb24uCis8L3Q+CisKKzx0PgorVGhlIFNIQTEgaGFzaCBvZiB0aGUgZmls
ZXMgaW4gdGhlIHRlc3QgdmVjdG9yIHBhY2thZ2UgYXJlCis8P3JmYyBpbmNsdWRlPSJ0ZXN0dmVj
dG9yc19zaGExIj8+Cis8L3Q+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlv
biBhbmNob3I9InNlbGYtZGVsaW1pdGluZy1mcmFtaW5nIiB0aXRsZT0iU2VsZi1EZWxpbWl0aW5n
IEZyYW1pbmciPgorPHQ+CitUbyB1c2UgdGhlIGludGVybmFsIGZyYW1pbmcgZGVzY3JpYmVkIGlu
IDx4cmVmIHRhcmdldD0ibW9kZXMiLz4sIHRoZSBkZWNvZGVyCisgbXVzdCBrbm93IHRoZSB0b3Rh
bCBsZW5ndGggb2YgdGhlIE9wdXMgcGFja2V0LCBpbiBieXRlcy4KK1RoaXMgc2VjdGlvbiBkZXNj
cmliZXMgYSBzaW1wbGUgdmFyaWF0aW9uIG9mIHRoYXQgZnJhbWluZyB3aGljaCBjYW4gYmUgdXNl
ZAorIHdoZW4gdGhlIHRvdGFsIGxlbmd0aCBvZiB0aGUgcGFja2V0IGlzIG5vdCBrbm93bi4KK05v
dGhpbmcgaW4gdGhlIGVuY29kaW5nIG9mIHRoZSBwYWNrZXQgaXRzZWxmIGFsbG93cyBhIGRlY29k
ZXIgdG8gZGlzdGluZ3Vpc2gKKyBiZXR3ZWVuIHRoZSByZWd1bGFyLCB1bmRlbGltaXRlZCBmcmFt
aW5nIGFuZCB0aGUgc2VsZi1kZWxpbWl0aW5nIGZyYW1pbmcKKyBkZXNjcmliZWQgaW4gdGhpcyBh
cHBlbmRpeC4KK1doaWNoIG9uZSBpcyB1c2VkIGFuZCB3aGVyZSBtdXN0IGJlIGVzdGFibGlzaGVk
IGJ5IGNvbnRleHQgYXQgdGhlIHRyYW5zcG9ydAorIGxheWVyLgorSXQgaXMgUkVDT01NRU5ERUQg
dGhhdCBhIHRyYW5zcG9ydCBsYXllciBjaG9vc2UgZXhhY3RseSBvbmUgZnJhbWluZyBzY2hlbWUs
CisgcmF0aGVyIHRoYW4gYWxsb3dpbmcgYW4gZW5jb2RlciB0byBzaWduYWwgd2hpY2ggb25lIGl0
IHdhbnRzIHRvIHVzZS4KKzwvdD4KKworPHQ+CitGb3IgZXhhbXBsZSwgYWx0aG91Z2ggYSByZWd1
bGFyIE9wdXMgc3RyZWFtIGRvZXMgbm90IHN1cHBvcnQgbW9yZSB0aGFuIHR3bworIGNoYW5uZWxz
LCBhIG11bHRpLWNoYW5uZWwgT3B1cyBzdHJlYW0gbWF5IGJlIGZvcm1lZCBmcm9tIHNldmVyYWwg
b25lLSBhbmQKKyB0d28tY2hhbm5lbCBzdHJlYW1zLgorVG8gcGFjayBhbiBPcHVzIHBhY2tldCBm
cm9tIGVhY2ggb2YgdGhlc2Ugc3RyZWFtcyB0b2dldGhlciBpbiBhIHNpbmdsZSBwYWNrZXQKKyBh
dCB0aGUgdHJhbnNwb3J0IGxheWVyLCBvbmUgY291bGQgdXNlIHRoZSBzZWxmLWRlbGltaXRpbmcg
ZnJhbWluZyBmb3IgYWxsIGJ1dAorIHRoZSBsYXN0IHN0cmVhbSwgYW5kIHRoZW4gdGhlIHJlZ3Vs
YXIsIHVuZGVsaW1pdGVkIGZyYW1pbmcgZm9yIHRoZSBsYXN0IG9uZS4KK1JldmVydGluZyB0byB0
aGUgdW5kZWxpbWl0ZWQgZnJhbWluZyBmb3IgdGhlIGxhc3Qgc3RyZWFtIHNhdmVzIG92ZXJoZWFk
CisgKGJlY2F1c2UgdGhlIHRvdGFsIHNpemUgb2YgdGhlIHRyYW5zcG9ydC1sYXllciBwYWNrZXQg
d2lsbCBzdGlsbCBiZSBrbm93biksCisgYW5kIGVuc3VyZXMgdGhhdCBhICJtdWx0aS1jaGFubmVs
IiBzdHJlYW0gd2hpY2ggb25seSBoYXMgYSBzaW5nbGUgT3B1cyBzdHJlYW0KKyB1c2VzIHRoZSBz
YW1lIGZyYW1pbmcgYXMgYSByZWd1bGFyIE9wdXMgc3RyZWFtIGRvZXMuCitUaGlzIGF2b2lkcyB0
aGUgbmVlZCBmb3Igc2lnbmFsaW5nIHRvIGRpc3Rpbmd1aXNoIHRoZXNlIHR3byBjYXNlcy4KKzwv
dD4KKworPHQ+CitUaGUgc2VsZi1kZWxpbWl0aW5nIGZyYW1pbmcgaXMgaWRlbnRpY2FsIHRvIHRo
ZSByZWd1bGFyLCB1bmRlbGltaXRlZCBmcmFtaW5nCisgZnJvbSA8eHJlZiB0YXJnZXQ9Im1vZGVz
Ii8+LCBleGNlcHQgdGhhdCBlYWNoIE9wdXMgcGFja2V0IGNvbnRhaW5zIG9uZSBleHRyYQorIGxl
bmd0aCBmaWVsZCwgZW5jb2RlZCB1c2luZyB0aGUgc2FtZSBvbmUtIG9yIHR3by1ieXRlIHNjaGVt
ZSBmcm9tCisgPHhyZWYgdGFyZ2V0PSJmcmFtZS1sZW5ndGgtY29kaW5nIi8+LgorVGhpcyBleHRy
YSBsZW5ndGggaW1tZWRpYXRlbHkgcHJlY2VkZXMgdGhlIGNvbXByZXNzZWQgZGF0YSBvZiB0aGUg
Zmlyc3QgT3B1cworIGZyYW1lIGluIHRoZSBwYWNrZXQsIGFuZCBpcyBpbnRlcnByZXRlZCBpbiB0
aGUgdmFyaW91cyBtb2RlcyBhcyBmb2xsb3dzOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+
CitDb2RlJm5ic3A7MCBwYWNrZXRzOiBJdCBpcyB0aGUgbGVuZ3RoIG9mIHRoZSBzaW5nbGUgT3B1
cyBmcmFtZSAoc2VlCisgPHhyZWYgdGFyZ2V0PSJzZF9jb2RlMF9wYWNrZXQiLz4pLgorPC90Pgor
PHQ+CitDb2RlJm5ic3A7MSBwYWNrZXRzOiBJdCBpcyB0aGUgbGVuZ3RoIHVzZWQgZm9yIGJvdGgg
b2YgdGhlIE9wdXMgZnJhbWVzIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNkX2NvZGUxX3BhY2tldCIv
PikuCis8L3Q+Cis8dD4KK0NvZGUmbmJzcDsyIHBhY2tldHM6IEl0IGlzIHRoZSBsZW5ndGggb2Yg
dGhlIHNlY29uZCBPcHVzIGZyYW1lIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNkX2NvZGUyX3BhY2tl
dCIvPikuPC90PgorPHQ+CitDQlIgQ29kZSZuYnNwOzMgcGFja2V0czogSXQgaXMgdGhlIGxlbmd0
aCB1c2VkIGZvciBhbGwgb2YgdGhlIE9wdXMgZnJhbWVzIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNk
X2NvZGUzY2JyX3BhY2tldCIvPikuCis8L3Q+Cis8dD5WQlIgQ29kZSZuYnNwOzMgcGFja2V0czog
SXQgaXMgdGhlIGxlbmd0aCBvZiB0aGUgbGFzdCBPcHVzIGZyYW1lIChzZWUKKyA8eHJlZiB0YXJn
ZXQ9InNkX2NvZGUzdmJyX3BhY2tldCIvPikuCis8L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzxmaWd1
cmUgYW5jaG9yPSJzZF9jb2RlMF9wYWNrZXQiIHRpdGxlPSJBIFNlbGYtRGVsaW1pdGVkIENvZGUg
MCBQYWNrZXQiCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAg
ICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAg
MSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxzfDB8MHwgTjEgKDEt
MiBieXRlcyk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8ICAg
ICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxIChOMSBieXRlcykuLi4gICAgICAgICAgICAg
ICAgOgorOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1
cmU+CisKKzxmaWd1cmUgYW5jaG9yPSJzZF9jb2RlMV9wYWNrZXQiIHRpdGxlPSJBIFNlbGYtRGVs
aW1pdGVkIENvZGUgMSBQYWNrZXQiCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0i
Y2VudGVyIj48IVtDREFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAg
ICAgMiAgICAgICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQg
NSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxz
fDB8MXwgTjEgKDEtMiBieXRlcyk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA6Cit8ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxIChOMSBieXRlcykuLi4g
ICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOgorfCAgICAgICAg
ICAgICAgIENvbXByZXNzZWQgZnJhbWUgMiAoTjEgYnl0ZXMpLi4uICAgICAgICAgICAgICAgIHwK
KzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICstKy0rLSst
Ky0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPGZpZ3VyZSBhbmNob3I9InNkX2NvZGUyX3BhY2tl
dCIgdGl0bGU9IkEgU2VsZi1EZWxpbWl0ZWQgQ29kZSAyIFBhY2tldCIKKyBhbGlnbj0iY2VudGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAg
ICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQg
NSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKyst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rCit8IGNvbmZpZyAgfHN8MXwwfCBOMSAoMS0yIGJ5dGVzKTogTjIgKDEtMiBieXRlcyA6
ICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKyAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICBDb21wcmVzc2VkIGZy
YW1lIDEgKE4xIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwK
KystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8Cit8ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAyIChOMiBieXRlcyku
Li4gICAgICAgICAgICAgICAgOgorOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9h
cnR3b3JrPgorPC9maWd1cmU+CisKKzxmaWd1cmUgYW5jaG9yPSJzZF9jb2RlM2Nicl9wYWNrZXQi
IHRpdGxlPSJBIFNlbGYtRGVsaW1pdGVkIENCUiBDb2RlIDMgUGFja2V0IgorIGFsaWduPSJjZW50
ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAg
ICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMg
NCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQor
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSsKK3wgY29uZmlnICB8c3wxfDF8MHxwfCAgICAgTSAgICAgfCBQYWQgbGVuIChPcHQp
IDogTjEgKDEtMiBieXRlcyk6CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICBD
b21wcmVzc2VkIGZyYW1lIDEgKE4xIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICA6Cit8ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAy
IChOMSBieXRlcykuLi4gICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAg
ICAgICBDb21wcmVzc2VkIGZyYW1lIE0gKE4xIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICA6Cit8
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSsKKzogICAgICAgICAgICAgICAgICBPcHVzIFBhZGRpbmcgKE9wdGlv
bmFsKS4uLiAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9m
aWd1cmU+CisKKzxmaWd1cmUgYW5jaG9yPSJzZF9jb2RlM3Zicl9wYWNrZXQiIHRpdGxlPSJBIFNl
bGYtRGVsaW1pdGVkIFZCUiBDb2RlIDMgUGFja2V0IgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAg
ICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkg
MCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wg
Y29uZmlnICB8c3wxfDF8MXxwfCAgICAgTSAgICAgfCBQYWRkaW5nIGxlbmd0aCAoT3B0aW9uYWwp
ICAgICA6CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKworOiBOMSAoMS0yIGJ5dGVzKTogICAgIC4uLiAgICAgICA6ICAgICBO
W00tMV0gICAgfCAgICAgTltNXSAgICAgIDoKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAg
ICAgICAgIENvbXByZXNzZWQgZnJhbWUgMSAoTjEgYnl0ZXMpLi4uICAgICAgICAgICAgICAgIDoK
K3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICBDb21wcmVzc2Vk
IGZyYW1lIDIgKE4yIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAg
ICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSBNIChOW01dIGJ5dGVzKS4uLiAgICAgICAgICAg
ICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKworOiAgICAgICAgICAgICAgICAgIE9wdXMgUGFkZGlu
ZyAoT3B0aW9uYWwpLi4uICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdv
cms+Cis8L2ZpZ3VyZT4KKworPC9zZWN0aW9uPgorCis8L2JhY2s+CisKKzwvcmZjPgpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9kb2MvZHJhZnQtaWV0Zi1wYXlsb2FkLXJ0cC1vcHVzLnhtbCBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2RyYWZ0LWlldGYt
cGF5bG9hZC1ydHAtb3B1cy54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzRlYjIxMDc3YjcyMjRlZjE0NDNmNmQ0
NTY1ODMyNjA0ZjQ3ZGQzOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2RyYWZ0LWlldGYtcGF5bG9h
ZC1ydHAtb3B1cy54bWwKQEAgLTAsMCArMSw5NjAgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5j
b2Rpbmc9IlVURi04Ij8+Cis8IURPQ1RZUEUgcmZjIFNZU1RFTSAicmZjMjYyOS5kdGQiIFsKKzwh
RU5USVRZIHJmYzIxMTkgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMv
cmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjIxMTkueG1sJz4KKzwhRU5USVRZIHJmYzMzODkgUFVC
TElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVu
Y2UuUkZDLjMzODkueG1sJz4KKzwhRU5USVRZIHJmYzM1NTAgUFVCTElDICcnICdodHRwOi8veG1s
LnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjM1NTAueG1sJz4K
KzwhRU5USVRZIHJmYzM3MTEgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJs
aWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjM3MTEueG1sJz4KKzwhRU5USVRZIHJmYzM1NTEg
UFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZl
cmVuY2UuUkZDLjM1NTEueG1sJz4KKzwhRU5USVRZIHJmYzY4MzggUFVCTElDICcnICdodHRwOi8v
eG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjY4MzgueG1s
Jz4KKzwhRU5USVRZIHJmYzQ4NTUgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9w
dWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjQ4NTUueG1sJz4KKzwhRU5USVRZIHJmYzQ1
NjYgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9y
ZWZlcmVuY2UuUkZDLjQ1NjYueG1sJz4KKzwhRU5USVRZIHJmYzQ1ODUgUFVCTElDICcnICdodHRw
Oi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjQ1ODUu
eG1sJz4KKzwhRU5USVRZIHJmYzMyNjQgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9y
Zy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjMyNjQueG1sJz4KKzwhRU5USVRZIHJm
YzI5NzQgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnht
bC9yZWZlcmVuY2UuUkZDLjI5NzQueG1sJz4KKzwhRU5USVRZIHJmYzIzMjYgUFVCTElDICcnICdo
dHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjIz
MjYueG1sJz4KKzwhRU5USVRZIHJmYzM1NTUgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNl
Lm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjM1NTUueG1sJz4KKzwhRU5USVRZ
IHJmYzUxMjQgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2Jp
YnhtbC9yZWZlcmVuY2UuUkZDLjUxMjQueG1sJz4KKzwhRU5USVRZIHJmYzU0MDUgUFVCTElDICcn
ICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZD
LjU0MDUueG1sJz4KKzwhRU5USVRZIHJmYzU1NzYgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291
cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjU1NzYueG1sJz4KKzwhRU5U
SVRZIHJmYzY1NjIgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZj
L2JpYnhtbC9yZWZlcmVuY2UuUkZDLjY1NjIueG1sJz4KKzwhRU5USVRZIHJmYzY3MTYgUFVCTElD
ICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2Uu
UkZDLjY3MTYueG1sJz4KKzwhRU5USVRZIHJmYzcyMDIgUFVCTElDICcnICdodHRwOi8veG1sLnJl
c291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjcyMDIueG1sJz4KKzwh
RU5USVRZIG5ic3AgIiYjMTYwOyI+CisgIF0+CisKKyAgPHJmYyBjYXRlZ29yeT0ic3RkIiBpcHI9
InRydXN0MjAwOTAyIiBkb2NOYW1lPSJkcmFmdC1pZXRmLXBheWxvYWQtcnRwLW9wdXMtMTEiPgor
PD94bWwtc3R5bGVzaGVldCB0eXBlPSd0ZXh0L3hzbCcgaHJlZj0ncmZjMjYyOS54c2x0JyA/Pgor
Cis8P3JmYyBzdHJpY3Q9InllcyIgPz4KKzw/cmZjIHRvYz0ieWVzIiA/PgorPD9yZmMgdG9jZGVw
dGg9IjMiID8+Cis8P3JmYyB0b2NhcHBlbmRpeD0nbm8nID8+Cis8P3JmYyB0b2NpbmRlbnQ9J3ll
cycgPz4KKzw/cmZjIHN5bXJlZnM9InllcyIgPz4KKzw/cmZjIHNvcnRyZWZzPSJ5ZXMiID8+Cis8
P3JmYyBjb21wYWN0PSJubyIgPz4KKzw/cmZjIHN1YmNvbXBhY3Q9InllcyIgPz4KKzw/cmZjIGlw
cm5vdGlmaWVkPSJ5ZXMiID8+CisKKyAgPGZyb250PgorICAgIDx0aXRsZSBhYmJyZXY9IlJUUCBQ
YXlsb2FkIEZvcm1hdCBmb3IgT3B1cyI+CisgICAgICBSVFAgUGF5bG9hZCBGb3JtYXQgZm9yIHRo
ZSBPcHVzIFNwZWVjaCBhbmQgQXVkaW8gQ29kZWMKKyAgICA8L3RpdGxlPgorCisgICAgPGF1dGhv
ciBmdWxsbmFtZT0iSnVsaWFuIFNwaXR0a2EiIGluaXRpYWxzPSJKLiIgc3VybmFtZT0iU3BpdHRr
YSI+CisgICAgICA8YWRkcmVzcz4KKyAgICAgICAgPGVtYWlsPmpzcGl0dGthQGdtYWlsLmNvbTwv
ZW1haWw+CisgICAgICA8L2FkZHJlc3M+CisgICAgPC9hdXRob3I+CisKKyAgICA8YXV0aG9yIGlu
aXRpYWxzPSdLLicgc3VybmFtZT0nVm9zJyBmdWxsbmFtZT0nS29lbiBWb3MnPgorICAgICAgPG9y
Z2FuaXphdGlvbj52b2NUb25lPC9vcmdhbml6YXRpb24+CisgICAgICA8YWRkcmVzcz4KKyAgICAg
ICAgPHBvc3RhbD4KKyAgICAgICAgICA8c3RyZWV0Pjwvc3RyZWV0PgorICAgICAgICAgIDxjb2Rl
PjwvY29kZT4KKyAgICAgICAgICA8Y2l0eT48L2NpdHk+CisgICAgICAgICAgPHJlZ2lvbj48L3Jl
Z2lvbj4KKyAgICAgICAgICA8Y291bnRyeT48L2NvdW50cnk+CisgICAgICAgIDwvcG9zdGFsPgor
ICAgICAgICA8ZW1haWw+a29lbnZvczc0QGdtYWlsLmNvbTwvZW1haWw+CisgICAgICA8L2FkZHJl
c3M+CisgICAgPC9hdXRob3I+CisKKyAgICA8YXV0aG9yIGluaXRpYWxzPSJKTSIgc3VybmFtZT0i
VmFsaW4iIGZ1bGxuYW1lPSJKZWFuLU1hcmMgVmFsaW4iPgorICAgICAgPG9yZ2FuaXphdGlvbj5N
b3ppbGxhPC9vcmdhbml6YXRpb24+CisgICAgICA8YWRkcmVzcz4KKyAgICAgICAgPHBvc3RhbD4K
KyAgICAgICAgICA8c3RyZWV0PjMzMSBFLiBFdmVseW4gQXZlbnVlPC9zdHJlZXQ+CisgICAgICAg
ICAgPGNpdHk+TW91bnRhaW4gVmlldzwvY2l0eT4KKyAgICAgICAgICA8cmVnaW9uPkNBPC9yZWdp
b24+CisgICAgICAgICAgPGNvZGU+OTQwNDE8L2NvZGU+CisgICAgICAgICAgPGNvdW50cnk+VVNB
PC9jb3VudHJ5PgorICAgICAgICA8L3Bvc3RhbD4KKyAgICAgICAgPGVtYWlsPmptdmFsaW5Aam12
YWxpbi5jYTwvZW1haWw+CisgICAgICA8L2FkZHJlc3M+CisgICAgPC9hdXRob3I+CisKKyAgICA8
ZGF0ZSBkYXk9JzE0JyBtb250aD0nQXByaWwnIHllYXI9JzIwMTUnIC8+CisKKyAgICA8YWJzdHJh
Y3Q+CisgICAgICA8dD4KKyAgICAgICAgVGhpcyBkb2N1bWVudCBkZWZpbmVzIHRoZSBSZWFsLXRp
bWUgVHJhbnNwb3J0IFByb3RvY29sIChSVFApIHBheWxvYWQKKyAgICAgICAgZm9ybWF0IGZvciBw
YWNrZXRpemF0aW9uIG9mIE9wdXMgZW5jb2RlZAorICAgICAgICBzcGVlY2ggYW5kIGF1ZGlvIGRh
dGEgbmVjZXNzYXJ5IHRvIGludGVncmF0ZSB0aGUgY29kZWMgaW4gdGhlCisgICAgICAgIG1vc3Qg
Y29tcGF0aWJsZSB3YXkuIEl0IGFsc28gcHJvdmlkZXMgYW4gYXBwbGljYWJpbGl0eSBzdGF0ZW1l
bnQKKyAgICAgICAgZm9yIHRoZSB1c2Ugb2YgT3B1cyBvdmVyIFJUUC4gRnVydGhlciwgaXQgZGVz
Y3JpYmVzIG1lZGlhIHR5cGUgcmVnaXN0cmF0aW9ucworICAgICAgICBmb3IgdGhlIFJUUCBwYXls
b2FkIGZvcm1hdC4KKyAgICAgIDwvdD4KKyAgICA8L2Fic3RyYWN0PgorICA8L2Zyb250PgorCisg
IDxtaWRkbGU+CisgICAgPHNlY3Rpb24gdGl0bGU9J0ludHJvZHVjdGlvbic+CisgICAgICA8dD4K
KyAgICAgICAgT3B1cyA8eHJlZiB0YXJnZXQ9IlJGQzY3MTYiLz4gaXMgYSBzcGVlY2ggYW5kIGF1
ZGlvIGNvZGVjIGRldmVsb3BlZCB3aXRoaW4gdGhlCisgICAgICAgIElFVEYgSW50ZXJuZXQgV2lk
ZWJhbmQgQXVkaW8gQ29kZWMgd29ya2luZyBncm91cC4gVGhlIGNvZGVjCisgICAgICAgIGhhcyBh
IHZlcnkgbG93IGFsZ29yaXRobWljIGRlbGF5IGFuZCBpdAorICAgICAgICBpcyBoaWdobHkgc2Nh
bGFibGUgaW4gdGVybXMgb2YgYXVkaW8gYmFuZHdpZHRoLCBiaXRyYXRlLCBhbmQKKyAgICAgICAg
Y29tcGxleGl0eS4gRnVydGhlciwgaXQgcHJvdmlkZXMgZGlmZmVyZW50IG1vZGVzIHRvIGVmZmlj
aWVudGx5IGVuY29kZSBzcGVlY2ggc2lnbmFscworICAgICAgICBhcyB3ZWxsIGFzIG11c2ljIHNp
Z25hbHMsIHRodXMgbWFraW5nIGl0IHRoZSBjb2RlYyBvZiBjaG9pY2UgZm9yCisgICAgICAgIHZh
cmlvdXMgYXBwbGljYXRpb25zIHVzaW5nIHRoZSBJbnRlcm5ldCBvciBzaW1pbGFyIG5ldHdvcmtz
LgorICAgICAgPC90PgorICAgICAgPHQ+CisgICAgICAgIFRoaXMgZG9jdW1lbnQgZGVmaW5lcyB0
aGUgUmVhbC10aW1lIFRyYW5zcG9ydCBQcm90b2NvbCAoUlRQKQorICAgICAgICA8eHJlZiB0YXJn
ZXQ9IlJGQzM1NTAiLz4gcGF5bG9hZCBmb3JtYXQgZm9yIHBhY2tldGl6YXRpb24KKyAgICAgICAg
b2YgT3B1cyBlbmNvZGVkIHNwZWVjaCBhbmQgYXVkaW8gZGF0YSBuZWNlc3NhcnkgdG8KKyAgICAg
ICAgaW50ZWdyYXRlIE9wdXMgaW4gdGhlCisgICAgICAgIG1vc3QgY29tcGF0aWJsZSB3YXkuIEl0
IGFsc28gcHJvdmlkZXMgYW4gYXBwbGljYWJpbGl0eSBzdGF0ZW1lbnQKKyAgICAgICAgZm9yIHRo
ZSB1c2Ugb2YgT3B1cyBvdmVyIFJUUC4KKyAgICAgICAgRnVydGhlciwgaXQgZGVzY3JpYmVzIG1l
ZGlhIHR5cGUgcmVnaXN0cmF0aW9ucyBmb3IKKyAgICAgICAgdGhlIFJUUCBwYXlsb2FkIGZvcm1h
dC4KKyAgICAgIDwvdD4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0nQ29u
dmVudGlvbnMsIERlZmluaXRpb25zIGFuZCBBY3JvbnltcyB1c2VkIGluIHRoaXMgZG9jdW1lbnQn
PgorICAgICAgPHQ+VGhlIGtleSB3b3JkcyAiTVVTVCIsICJNVVNUIE5PVCIsICJSRVFVSVJFRCIs
ICJTSEFMTCIsICJTSEFMTCBOT1QiLAorICAgICAgIlNIT1VMRCIsICJTSE9VTEQgTk9UIiwgIlJF
Q09NTUVOREVEIiwgIk1BWSIsIGFuZCAiT1BUSU9OQUwiIGluIHRoaXMKKyAgICAgIGRvY3VtZW50
IGFyZSB0byBiZSBpbnRlcnByZXRlZCBhcyBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJSRkMy
MTE5Ii8+LjwvdD4KKyAgICAgIDx0PgorICAgICAgPGxpc3Qgc3R5bGU9J2hhbmdpbmcnPgorICAg
ICAgICAgIDx0IGhhbmdUZXh0PSJhdWRpbyBiYW5kd2lkdGg6Ij4gVGhlIHJhbmdlIG9mIGF1ZGlv
IGZyZXF1ZWNpZXMgYmVpbmcgY29kZWQ8L3Q+CisgICAgICAgICAgPHQgaGFuZ1RleHQ9IkNCUjoi
PiBDb25zdGFudCBiaXRyYXRlPC90PgorICAgICAgICAgIDx0IGhhbmdUZXh0PSJDUFU6Ij4gQ2Vu
dHJhbCBQcm9jZXNzaW5nIFVuaXQ8L3Q+CisgICAgICAgICAgPHQgaGFuZ1RleHQ9IkRUWDoiPiBE
aXNjb250aW51b3VzIHRyYW5zbWlzc2lvbjwvdD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0iRkVD
OiI+IEZvcndhcmQgZXJyb3IgY29ycmVjdGlvbjwvdD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0i
SVA6Ij4gSW50ZXJuZXQgUHJvdG9jb2w8L3Q+CisgICAgICAgICAgPHQgaGFuZ1RleHQ9InNhbXBs
ZXM6Ij4gU3BlZWNoIG9yIGF1ZGlvIHNhbXBsZXMgKHBlciBjaGFubmVsKTwvdD4KKyAgICAgICAg
ICA8dCBoYW5nVGV4dD0iU0RQOiI+IFNlc3Npb24gRGVzY3JpcHRpb24gUHJvdG9jb2w8L3Q+Cisg
ICAgICAgICAgPHQgaGFuZ1RleHQ9IlZCUjoiPiBWYXJpYWJsZSBiaXRyYXRlPC90PgorICAgICAg
PC9saXN0PgorICAgICAgPC90PgorICAgICAgICA8dD4KKyAgICAgICAgICBUaHJvdWdob3V0IHRo
aXMgZG9jdW1lbnQsIHdlIHJlZmVyIHRvIHRoZSBmb2xsb3dpbmcgZGVmaW5pdGlvbnM6CisgICAg
ICAgIDwvdD4KKyAgICAgICAgICA8dGV4dHRhYmxlIGFuY2hvcj0nYmFuZHdpZHRoX2RlZmluaXRp
b25zJz4KKyAgICAgICAgICAgIDx0dGNvbCBhbGlnbj0nY2VudGVyJz5BYmJyZXZpYXRpb248L3R0
Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPk5hbWU8L3R0Y29sPgorICAg
ICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPkF1ZGlvIEJhbmR3aWR0aCAoSHopPC90dGNv
bD4KKyAgICAgICAgICAgIDx0dGNvbCBhbGlnbj0nY2VudGVyJz5TYW1wbGluZyBSYXRlIChIeik8
L3R0Y29sPgorICAgICAgICAgICAgPGM+TkI8L2M+CisgICAgICAgICAgICA8Yz5OYXJyb3diYW5k
PC9jPgorICAgICAgICAgICAgPGM+MCAtIDQwMDA8L2M+CisgICAgICAgICAgICA8Yz44MDAwPC9j
PgorCisgICAgICAgICAgICA8Yz5NQjwvYz4KKyAgICAgICAgICAgIDxjPk1lZGl1bWJhbmQ8L2M+
CisgICAgICAgICAgICA8Yz4wIC0gNjAwMDwvYz4KKyAgICAgICAgICAgIDxjPjEyMDAwPC9jPgor
CisgICAgICAgICAgICA8Yz5XQjwvYz4KKyAgICAgICAgICAgIDxjPldpZGViYW5kPC9jPgorICAg
ICAgICAgICAgPGM+MCAtIDgwMDA8L2M+CisgICAgICAgICAgICA8Yz4xNjAwMDwvYz4KKworICAg
ICAgICAgICAgPGM+U1dCPC9jPgorICAgICAgICAgICAgPGM+U3VwZXItd2lkZWJhbmQ8L2M+Cisg
ICAgICAgICAgICA8Yz4wIC0gMTIwMDA8L2M+CisgICAgICAgICAgICA8Yz4yNDAwMDwvYz4KKwor
ICAgICAgICAgICAgPGM+RkI8L2M+CisgICAgICAgICAgICA8Yz5GdWxsYmFuZDwvYz4KKyAgICAg
ICAgICAgIDxjPjAgLSAyMDAwMDwvYz4KKyAgICAgICAgICAgIDxjPjQ4MDAwPC9jPgorCisgICAg
ICAgICAgICA8cG9zdGFtYmxlPgorICAgICAgICAgICAgICBBdWRpbyBiYW5kd2lkdGggbmFtaW5n
CisgICAgICAgICAgICA8L3Bvc3RhbWJsZT4KKyAgICAgICAgICA8L3RleHR0YWJsZT4KKyAgICA8
L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0nT3B1cyBDb2RlYyc+CisgICAgICA8dD4K
KyAgICAgICAgT3B1cyBlbmNvZGVzIHNwZWVjaAorICAgICAgICBzaWduYWxzIGFzIHdlbGwgYXMg
Z2VuZXJhbCBhdWRpbyBzaWduYWxzLiBUd28gZGlmZmVyZW50IG1vZGVzIGNhbiBiZQorICAgICAg
ICBjaG9zZW4sIGEgdm9pY2UgbW9kZSBvciBhbiBhdWRpbyBtb2RlLCB0byBhbGxvdyB0aGUgbW9z
dCBlZmZpY2llbnQgY29kaW5nCisgICAgICAgIGRlcGVuZGluZyBvbiB0aGUgdHlwZSBvZiB0aGUg
aW5wdXQgc2lnbmFsLCB0aGUgc2FtcGxpbmcgZnJlcXVlbmN5IG9mIHRoZQorICAgICAgICBpbnB1
dCBzaWduYWwsIGFuZCB0aGUgaW50ZW5kZWQgYXBwbGljYXRpb24uCisgICAgICA8L3Q+CisKKyAg
ICAgIDx0PgorICAgICAgICBUaGUgdm9pY2UgbW9kZSBhbGxvd3MgZWZmaWNpZW50IGVuY29kaW5n
IG9mIHZvaWNlIHNpZ25hbHMgYXQgbG93ZXIgYml0CisgICAgICAgIHJhdGVzIHdoaWxlIHRoZSBh
dWRpbyBtb2RlIGlzIG9wdGltaXplZCBmb3IgZ2VuZXJhbCBhdWRpbyBzaWduYWxzIGF0IG1lZGl1
bSBhbmQKKyAgICAgICAgaGlnaGVyIGJpdHJhdGVzLgorICAgICAgPC90PgorCisgICAgICA8dD4K
KyAgICAgICAgT3B1cyBpcyBoaWdobHkgc2NhbGFibGUgaW4gdGVybXMgb2YgYXVkaW8KKyAgICAg
ICAgYmFuZHdpZHRoLCBiaXRyYXRlLCBhbmQgY29tcGxleGl0eS4gRnVydGhlciwgT3B1cyBhbGxv
d3MKKyAgICAgICAgdHJhbnNtaXR0aW5nIHN0ZXJlbyBzaWduYWxzIHdpdGggaW4tYmFuZCBzaWdu
YWxpbmcgaW4gdGhlIGJpdC1zdHJlYW0uCisgICAgICA8L3Q+CisKKyAgICAgIDxzZWN0aW9uIHRp
dGxlPSdOZXR3b3JrIEJhbmR3aWR0aCc+CisgICAgICAgICAgPHQ+CisgICAgICAgICAgICBPcHVz
IHN1cHBvcnRzIGJpdHJhdGVzIGZyb20gNiZuYnNwO2tiL3MgdG8gNTEwJm5ic3A7a2Ivcy4KKyAg
ICAgICAgICAgIFRoZSBiaXRyYXRlIGNhbiBiZSBjaGFuZ2VkIGR5bmFtaWNhbGx5IHdpdGhpbiB0
aGF0IHJhbmdlLgorICAgICAgICAgICAgQWxsCisgICAgICAgICAgICBvdGhlciBwYXJhbWV0ZXJz
IGJlaW5nCisgICAgICAgICAgICBlcXVhbCwgaGlnaGVyIGJpdHJhdGVzIHJlc3VsdCBpbiBoaWdo
ZXIgYXVkaW8gcXVhbGl0eS4KKyAgICAgICAgICA8L3Q+CisgICAgICAgICAgPHNlY3Rpb24gdGl0
bGU9J1JlY29tbWVuZGVkIEJpdHJhdGUnIGFuY2hvcj0nYml0cmF0ZV9ieV9iYW5kd2lkdGgnPgor
ICAgICAgICAgIDx0PgorICAgICAgICAgICAgRm9yIGEgZnJhbWUgc2l6ZSBvZgorICAgICAgICAg
ICAgMjAmbmJzcDttcywgdGhlc2UKKyAgICAgICAgICAgIGFyZSB0aGUgYml0cmF0ZSAic3dlZXQg
c3BvdHMiIGZvciBPcHVzIGluIHZhcmlvdXMgY29uZmlndXJhdGlvbnM6CisKKyAgICAgICAgICA8
bGlzdCBzdHlsZT0ic3ltYm9scyI+CisgICAgICAgICAgICA8dD44LTEyIGtiL3MgZm9yIE5CIHNw
ZWVjaCw8L3Q+CisgICAgICAgICAgICA8dD4xNi0yMCBrYi9zIGZvciBXQiBzcGVlY2gsPC90Pgor
ICAgICAgICAgICAgPHQ+MjgtNDAga2IvcyBmb3IgRkIgc3BlZWNoLDwvdD4KKyAgICAgICAgICAg
IDx0PjQ4LTY0IGtiL3MgZm9yIEZCIG1vbm8gbXVzaWMsIGFuZDwvdD4KKyAgICAgICAgICAgIDx0
PjY0LTEyOCBrYi9zIGZvciBGQiBzdGVyZW8gbXVzaWMuPC90PgorICAgICAgICAgIDwvbGlzdD4K
KyAgICAgICAgPC90PgorICAgICAgPC9zZWN0aW9uPgorICAgICAgICA8c2VjdGlvbiB0aXRsZT0n
VmFyaWFibGUgdmVyc3VzIENvbnN0YW50IEJpdHJhdGUnICBhbmNob3I9J3ZhcmlhYmxlLXZzLWNv
bnN0YW50LWJpdHJhdGUnPgorICAgICAgICAgIDx0PgorICAgICAgICAgICAgRm9yIHRoZSBzYW1l
IGF2ZXJhZ2UgYml0cmF0ZSwgdmFyaWFibGUgYml0cmF0ZSAoVkJSKSBjYW4gYWNoaWV2ZSBoaWdo
ZXIgYXVkaW8gcXVhbGl0eQorICAgICAgICAgICAgdGhhbiBjb25zdGFudCBiaXRyYXRlIChDQlIp
LiBGb3IgdGhlIG1ham9yaXR5IG9mIHZvaWNlIHRyYW5zbWlzc2lvbiBhcHBsaWNhdGlvbnMsIFZC
UgorICAgICAgICAgICAgaXMgdGhlIGJlc3QgY2hvaWNlLiBPbmUgcmVhc29uIGZvciBjaG9vc2lu
ZyBDQlIgaXMgdGhlIHBvdGVudGlhbAorICAgICAgICAgICAgaW5mb3JtYXRpb24gbGVhayB0aGF0
IDxzcGFueCBzdHlsZT0nZW1waCc+bWlnaHQ8L3NwYW54PiBvY2N1ciB3aGVuIGVuY3J5cHRpbmcg
dGhlCisgICAgICAgICAgICBjb21wcmVzc2VkIHN0cmVhbS4gU2VlIDx4cmVmIHRhcmdldD0iUkZD
NjU2MiIvPiBmb3IgZ3VpZGVsaW5lcyBvbiB3aGVuIFZCUiBpcworICAgICAgICAgICAgYXBwcm9w
cmlhdGUgZm9yIGVuY3J5cHRlZCBhdWRpbyBjb21tdW5pY2F0aW9ucy4gSW4gdGhlIGNhc2Ugd2hl
cmUgYW4gZXhpc3RpbmcKKyAgICAgICAgICAgIFZCUiBzdHJlYW0gbmVlZHMgdG8gYmUgY29udmVy
dGVkIHRvIENCUiBmb3Igc2VjdXJpdHkgcmVhc29ucywgdGhlbiB0aGUgT3B1cyBwYWRkaW5nCisg
ICAgICAgICAgICBtZWNoYW5pc20gZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0iUkZDNjcxNiIv
PiBpcyB0aGUgUkVDT01NRU5ERUQgd2F5IHRvIGFjaGlldmUgcGFkZGluZworICAgICAgICAgICAg
YmVjYXVzZSB0aGUgUlRQIHBhZGRpbmcgYml0IGlzIHVuZW5jcnlwdGVkLjwvdD4KKworICAgICAg
ICAgIDx0PgorICAgICAgICAgICAgVGhlIGJpdHJhdGUgY2FuIGJlIGFkanVzdGVkIGF0IGFueSBw
b2ludCBpbiB0aW1lLiBUbyBhdm9pZCBjb25nZXN0aW9uLAorICAgICAgICAgICAgdGhlIGF2ZXJh
Z2UgYml0cmF0ZSBTSE9VTEQgTk9UIGV4Y2VlZCB0aGUgYXZhaWxhYmxlCisgICAgICAgICAgICBu
ZXR3b3JrIGJhbmR3aWR0aC4gSWYgbm8gdGFyZ2V0IGJpdHJhdGUgaXMgc3BlY2lmaWVkLCB0aGUg
Yml0cmF0ZXMgc3BlY2lmaWVkIGluCisgICAgICAgICAgICA8eHJlZiB0YXJnZXQ9J2JpdHJhdGVf
YnlfYmFuZHdpZHRoJy8+IGFyZSBSRUNPTU1FTkRFRC4KKyAgICAgICAgICA8L3Q+CisKKyAgICAg
ICAgPC9zZWN0aW9uPgorCisgICAgICAgIDxzZWN0aW9uIHRpdGxlPSdEaXNjb250aW51b3VzIFRy
YW5zbWlzc2lvbiAoRFRYKSc+CisKKyAgICAgICAgICA8dD4KKyAgICAgICAgICAgIE9wdXMgY2Fu
LCBhcyBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSd2YXJpYWJsZS12cy1jb25zdGFudC1iaXRy
YXRlJy8+LAorICAgICAgICAgICAgYmUgb3BlcmF0ZWQgd2l0aCBhIHZhcmlhYmxlIGJpdHJhdGUu
IEluIHRoYXQgY2FzZSwgdGhlIGVuY29kZXIgd2lsbAorICAgICAgICAgICAgYXV0b21hdGljYWxs
eSByZWR1Y2UgdGhlIGJpdHJhdGUgZm9yIGNlcnRhaW4gaW5wdXQgc2lnbmFscywgbGlrZSBwZXJp
b2RzCisgICAgICAgICAgICBvZiBzaWxlbmNlLiBXaGVuIHVzaW5nIGNvbnRpbnVvdXMgdHJhbnNt
aXNzaW9uLCBpdCB3aWxsIHJlZHVjZSB0aGUKKyAgICAgICAgICAgIGJpdHJhdGUgd2hlbiB0aGUg
Y2hhcmFjdGVyaXN0aWNzIG9mIHRoZSBpbnB1dCBzaWduYWwgcGVybWl0LCBidXQKKyAgICAgICAg
ICAgIHdpbGwgbmV2ZXIgaW50ZXJydXB0IHRoZSB0cmFuc21pc3Npb24gdG8gdGhlIHJlY2VpdmVy
LiBUaGVyZWZvcmUsIHRoZQorICAgICAgICAgICAgcmVjZWl2ZWQgc2lnbmFsIHdpbGwgbWFpbnRh
aW4gdGhlIHNhbWUgaGlnaCBsZXZlbCBvZiBhdWRpbyBxdWFsaXR5IG92ZXIgdGhlCisgICAgICAg
ICAgICBmdWxsIGR1cmF0aW9uIG9mIGEgdHJhbnNtaXNzaW9uIHdoaWxlIG1pbmltaXppbmcgdGhl
IGF2ZXJhZ2UgYml0CisgICAgICAgICAgICByYXRlIG92ZXIgdGltZS4KKyAgICAgICAgICA8L3Q+
CisKKyAgICAgICAgICA8dD4KKyAgICAgICAgICAgIEluIGNhc2VzIHdoZXJlIHRoZSBiaXRyYXRl
IG9mIE9wdXMgbmVlZHMgdG8gYmUgcmVkdWNlZCBldmVuCisgICAgICAgICAgICBmdXJ0aGVyIG9y
IGluIGNhc2VzIHdoZXJlIG9ubHkgY29uc3RhbnQgYml0cmF0ZSBpcyBhdmFpbGFibGUsCisgICAg
ICAgICAgICB0aGUgT3B1cyBlbmNvZGVyIGNhbiB1c2UgZGlzY29udGludW91cworICAgICAgICAg
ICAgdHJhbnNtaXNzaW9uIChEVFgpLCB3aGVyZSBwYXJ0cyBvZiB0aGUgZW5jb2RlZCBzaWduYWwg
dGhhdAorICAgICAgICAgICAgY29ycmVzcG9uZCB0byBwZXJpb2RzIG9mIHNpbGVuY2UgaW4gdGhl
IGlucHV0IHNwZWVjaCBvciBhdWRpbyBzaWduYWwKKyAgICAgICAgICAgIGFyZSBub3QgdHJhbnNt
aXR0ZWQgdG8gdGhlIHJlY2VpdmVyLiBBIHJlY2VpdmVyIGNhbiBkaXN0aW5ndWlzaAorICAgICAg
ICAgICAgYmV0d2VlbiBEVFggYW5kIHBhY2tldCBsb3NzIGJ5IGxvb2tpbmcgZm9yIGdhcHMgaW4g
dGhlIHNlcXVlbmNlCisgICAgICAgICAgICBudW1iZXIsIGFzIGRlc2NyaWJlZCBieSBTZWN0aW9u
IDQuMQorICAgICAgICAgICAgb2YmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzM1NTEiLz4uCisgICAg
ICAgICAgPC90PgorCisgICAgICAgICAgPHQ+CisgICAgICAgICAgICBPbiB0aGUgcmVjZWl2aW5n
IHNpZGUsIHRoZSBub24tdHJhbnNtaXR0ZWQgcGFydHMgd2lsbCBiZSBoYW5kbGVkIGJ5IGEKKyAg
ICAgICAgICAgIGZyYW1lIGxvc3MgY29uY2VhbG1lbnQgdW5pdCBpbiB0aGUgT3B1cyBkZWNvZGVy
IHdoaWNoIGdlbmVyYXRlcyBhCisgICAgICAgICAgICBjb21mb3J0IG5vaXNlIHNpZ25hbCB0byBy
ZXBsYWNlIHRoZSBub24gdHJhbnNtaXR0ZWQgcGFydHMgb2YgdGhlCisgICAgICAgICAgICBzcGVl
Y2ggb3IgYXVkaW8gc2lnbmFsLiBVc2Ugb2YgPHhyZWYgdGFyZ2V0PSJSRkMzMzg5Ii8+IENvbWZv
cnQKKyAgICAgICAgICAgIE5vaXNlIChDTikgd2l0aCBPcHVzIGlzIGRpc2NvdXJhZ2VkLgorICAg
ICAgICAgICAgVGhlIHRyYW5zbWl0dGVyIE1VU1QgZHJvcCB3aG9sZSBmcmFtZXMgb25seSwKKyAg
ICAgICAgICAgIGJhc2VkIG9uIHRoZSBzaXplIG9mIHRoZSBsYXN0IHRyYW5zbWl0dGVkIGZyYW1l
LAorICAgICAgICAgICAgdG8gZW5zdXJlIHN1Y2Nlc3NpdmUgUlRQIHRpbWVzdGFtcHMgZGlmZmVy
IGJ5IGEgbXVsdGlwbGUgb2YgMTIwIGFuZAorICAgICAgICAgICAgdG8gYWxsb3cgdGhlIHJlY2Vp
dmVyIHRvIHVzZSB3aG9sZSBmcmFtZXMgZm9yIGNvbmNlYWxtZW50LgorICAgICAgICAgIDwvdD4K
KworICAgICAgICAgIDx0PgorICAgICAgICAgICAgRFRYIGNhbiBiZSB1c2VkIHdpdGggYm90aCB2
YXJpYWJsZSBhbmQgY29uc3RhbnQgYml0cmF0ZS4KKyAgICAgICAgICAgIEl0IHdpbGwgaGF2ZSBh
IHNsaWdodGx5IGxvd2VyIHNwZWVjaCBvciBhdWRpbworICAgICAgICAgICAgcXVhbGl0eSB0aGFu
IGNvbnRpbnVvdXMgdHJhbnNtaXNzaW9uLiBUaGVyZWZvcmUsIHVzaW5nIGNvbnRpbnVvdXMKKyAg
ICAgICAgICAgIHRyYW5zbWlzc2lvbiBpcyBSRUNPTU1FTkRFRCB1bmxlc3MgY29uc3RyYWludHMg
b24gYXZhaWxhYmxlIG5ldHdvcmsgYmFuZHdpZHRoCisgICAgICAgICAgICBhcmUgc2V2ZXJlLgor
ICAgICAgICAgIDwvdD4KKworICAgICAgICA8L3NlY3Rpb24+CisKKyAgICAgICAgPC9zZWN0aW9u
PgorCisgICAgICA8c2VjdGlvbiB0aXRsZT0nQ29tcGxleGl0eSc+CisKKyAgICAgICAgPHQ+Cisg
ICAgICAgICAgQ29tcGxleGl0eSBvZiB0aGUgZW5jb2RlciBjYW4gYmUgc2NhbGVkIHRvIG9wdGlt
aXplIGZvciBDUFUgcmVzb3VyY2VzIGluIHJlYWwtdGltZSwgbW9zdGx5IGFzCisgICAgICAgICAg
YSB0cmFkZS1vZmYgYmV0d2VlbiBhdWRpbyBxdWFsaXR5IGFuZCBiaXRyYXRlLiBBbHNvLCBkaWZm
ZXJlbnQgbW9kZXMgb2YgT3B1cyBoYXZlIGRpZmZlcmVudCBjb21wbGV4aXR5LgorICAgICAgICA8
L3Q+CisKKyAgICAgIDwvc2VjdGlvbj4KKworICAgICAgPHNlY3Rpb24gdGl0bGU9IkZvcndhcmQg
RXJyb3IgQ29ycmVjdGlvbiAoRkVDKSI+CisKKyAgICAgICAgPHQ+CisgICAgICAgICAgVGhlIHZv
aWNlIG1vZGUgb2YgT3B1cyBhbGxvd3MgZm9yIGVtYmVkZGluZyAiaW4tYmFuZCIgZm9yd2FyZCBl
cnJvciBjb3JyZWN0aW9uIChGRUMpCisgICAgICAgICAgZGF0YSBpbnRvIHRoZSBPcHVzIGJpdCBz
dHJlYW0uIFRoaXMgRkVDIHNjaGVtZSBhZGRzCisgICAgICAgICAgcmVkdW5kYW50IGluZm9ybWF0
aW9uIGFib3V0IHRoZSBwcmV2aW91cyBwYWNrZXQgKE4tMSkgdG8gdGhlIGN1cnJlbnQKKyAgICAg
ICAgICBvdXRwdXQgcGFja2V0IE4uIEZvcgorICAgICAgICAgIGVhY2ggZnJhbWUsIHRoZSBlbmNv
ZGVyIGRlY2lkZXMgd2hldGhlciB0byB1c2UgRkVDIGJhc2VkIG9uICgxKSBhbgorICAgICAgICAg
IGV4dGVybmFsbHktcHJvdmlkZWQgZXN0aW1hdGUgb2YgdGhlIGNoYW5uZWwncyBwYWNrZXQgbG9z
cyByYXRlOyAoMikgYW4KKyAgICAgICAgICBleHRlcm5hbGx5LXByb3ZpZGVkIGVzdGltYXRlIG9m
IHRoZSBjaGFubmVsJ3MgY2FwYWNpdHk7ICgzKSB0aGUKKyAgICAgICAgICBzZW5zaXRpdml0eSBv
ZiB0aGUgYXVkaW8gb3Igc3BlZWNoIHNpZ25hbCB0byBwYWNrZXQgbG9zczsgKDQpIHdoZXRoZXIK
KyAgICAgICAgICB0aGUgcmVjZWl2aW5nIGRlY29kZXIgaGFzIGluZGljYXRlZCBpdCBjYW4gdGFr
ZSBhZHZhbnRhZ2Ugb2YgImluLWJhbmQiCisgICAgICAgICAgRkVDIGluZm9ybWF0aW9uLiBUaGUg
ZGVjaXNpb24gdG8gc2VuZCAiaW4tYmFuZCIgRkVDIGluZm9ybWF0aW9uIGlzCisgICAgICAgICAg
ZW50aXJlbHkgY29udHJvbGxlZCBieSB0aGUgZW5jb2RlciBhbmQgdGhlcmVmb3JlIG5vIHNwZWNp
YWwgcHJlY2F1dGlvbnMKKyAgICAgICAgICBmb3IgdGhlIHBheWxvYWQgaGF2ZSB0byBiZSB0YWtl
bi4KKyAgICAgICAgPC90PgorCisgICAgICAgIDx0PgorICAgICAgICAgIE9uIHRoZSByZWNlaXZp
bmcgc2lkZSwgdGhlIGRlY29kZXIgY2FuIHRha2UgYWR2YW50YWdlIG9mIHRoaXMKKyAgICAgICAg
ICBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIHdoZW4gaXQgbG9zZXMgYSBwYWNrZXQgYW5kIHRoZSBu
ZXh0IHBhY2tldAorICAgICAgICAgIGlzIGF2YWlsYWJsZS4gIEluIG9yZGVyIHRvIHVzZSB0aGUg
RkVDIGRhdGEsIHRoZSBqaXR0ZXIgYnVmZmVyIG5lZWRzCisgICAgICAgICAgdG8gcHJvdmlkZSBh
Y2Nlc3MgdG8gcGF5bG9hZHMgd2l0aCB0aGUgRkVDIGRhdGEuICAKKyAgICAgICAgICBJbnN0ZWFk
IG9mIHBlcmZvcm1pbmcgbG9zcyBjb25jZWFsbWVudCBmb3IgYSBtaXNzaW5nIHBhY2tldCwgdGhl
CisgICAgICAgICAgcmVjZWl2ZXIgY2FuIHRoZW4gY29uZmlndXJlIGl0cyBkZWNvZGVyIHRvIGRl
Y29kZSB0aGUgRkVDIGRhdGEgZnJvbSB0aGUgbmV4dCBwYWNrZXQuCisgICAgICAgIDwvdD4KKwor
ICAgICAgICA8dD4KKyAgICAgICAgICBBbnkgY29tcGxpYW50IE9wdXMgZGVjb2RlciBpcyBjYXBh
YmxlIG9mIGlnbm9yaW5nCisgICAgICAgICAgRkVDIGluZm9ybWF0aW9uIHdoZW4gaXQgaXMgbm90
IG5lZWRlZCwgc28gZW5jb2Rpbmcgd2l0aCBGRUMgY2Fubm90IGNhdXNlCisgICAgICAgICAgaW50
ZXJvcGVyYWJpbGl0eSBwcm9ibGVtcy4KKyAgICAgICAgICBIb3dldmVyLCBpZiBGRUMgY2Fubm90
IGJlIHVzZWQgb24gdGhlIHJlY2VpdmluZyBzaWRlLCB0aGVuIEZFQworICAgICAgICAgIFNIT1VM
RCBOT1QgYmUgdXNlZCwgYXMgaXQgbGVhZHMgdG8gYW4gaW5lZmZpY2llbnQgdXNhZ2Ugb2YgbmV0
d29yaworICAgICAgICAgIHJlc291cmNlcy4gRGVjb2RlciBzdXBwb3J0IGZvciBGRUMgU0hPVUxE
IGJlIGluZGljYXRlZCBhdCB0aGUgdGltZSBhCisgICAgICAgICAgc2Vzc2lvbiBpcyBzZXQgdXAu
CisgICAgICAgIDwvdD4KKworICAgICAgPC9zZWN0aW9uPgorCisgICAgICA8c2VjdGlvbiB0aXRs
ZT0nU3RlcmVvIE9wZXJhdGlvbic+CisKKyAgICAgICAgPHQ+CisgICAgICAgICAgT3B1cyBhbGxv
d3MgZm9yIHRyYW5zbWlzc2lvbiBvZiBzdGVyZW8gYXVkaW8gc2lnbmFscy4gVGhpcyBvcGVyYXRp
b24KKyAgICAgICAgICBpcyBzaWduYWxlZCBpbi1iYW5kIGluIHRoZSBPcHVzIGJpdC1zdHJlYW0g
YW5kIG5vIHNwZWNpYWwgYXJyYW5nZW1lbnQKKyAgICAgICAgICBpcyBuZWVkZWQgaW4gdGhlIHBh
eWxvYWQgZm9ybWF0LiBBbgorICAgICAgICAgIE9wdXMgZGVjb2RlciBpcyBjYXBhYmxlIG9mIGhh
bmRsaW5nIGEgc3RlcmVvIGVuY29kaW5nLCBidXQgYW4KKyAgICAgICAgICBhcHBsaWNhdGlvbiBt
aWdodCBvbmx5IGJlIGNhcGFibGUgb2YgY29uc3VtaW5nIGEgc2luZ2xlIGF1ZGlvCisgICAgICAg
ICAgY2hhbm5lbC4KKyAgICAgICAgPC90PgorICAgICAgICA8dD4KKyAgICAgICAgICBJZiBhIGRl
Y29kZXIgY2Fubm90IHRha2UgYWR2YW50YWdlIG9mIHRoZSBiZW5lZml0cyBvZiBhIHN0ZXJlbyBz
aWduYWwKKyAgICAgICAgICB0aGlzIFNIT1VMRCBiZSBpbmRpY2F0ZWQgYXQgdGhlIHRpbWUgYSBz
ZXNzaW9uIGlzIHNldCB1cC4gSW4gdGhhdCBjYXNlCisgICAgICAgICAgdGhlIHNlbmRpbmcgc2lk
ZSBTSE9VTEQgTk9UIHNlbmQgc3RlcmVvIHNpZ25hbHMgYXMgaXQgbGVhZHMgdG8gYW4KKyAgICAg
ICAgICBpbmVmZmljaWVudCB1c2FnZSBvZiBuZXR3b3JrIHJlc291cmNlcy4KKyAgICAgICAgPC90
PgorCisgICAgICA8L3NlY3Rpb24+CisKKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0
aXRsZT0nT3B1cyBSVFAgUGF5bG9hZCBGb3JtYXQnIGFuY2hvcj0nb3B1cy1ydHAtcGF5bG9hZC1m
b3JtYXQnPgorICAgICAgPHQ+VGhlIHBheWxvYWQgZm9ybWF0IGZvciBPcHVzIGNvbnNpc3RzIG9m
IHRoZSBSVFAgaGVhZGVyIGFuZCBPcHVzIHBheWxvYWQKKyAgICAgIGRhdGEuPC90PgorICAgICAg
PHNlY3Rpb24gdGl0bGU9J1JUUCBIZWFkZXIgVXNhZ2UnPgorICAgICAgICA8dD5UaGUgZm9ybWF0
IG9mIHRoZSBSVFAgaGVhZGVyIGlzIHNwZWNpZmllZCBpbiA8eHJlZiB0YXJnZXQ9IlJGQzM1NTAi
Lz4uCisgICAgICAgIFRoZSB1c2Ugb2YgdGhlIGZpZWxkcyBvZiB0aGUgUlRQIGhlYWRlciBieSB0
aGUgT3B1cyBwYXlsb2FkIGZvcm1hdCBpcworICAgICAgICBjb25zaXN0ZW50IHdpdGggdGhhdCBz
cGVjaWZpY2F0aW9uLjwvdD4KKworICAgICAgICA8dD5UaGUgcGF5bG9hZCBsZW5ndGggb2YgT3B1
cyBpcyBhbiBpbnRlZ2VyIG51bWJlciBvZiBvY3RldHMgYW5kCisgICAgICAgIHRoZXJlZm9yZSBu
byBwYWRkaW5nIGlzIG5lY2Vzc2FyeS4gVGhlIHBheWxvYWQgTUFZIGJlIHBhZGRlZCBieSBhbgor
ICAgICAgICBpbnRlZ2VyIG51bWJlciBvZiBvY3RldHMgYWNjb3JkaW5nIHRvIDx4cmVmIHRhcmdl
dD0iUkZDMzU1MCIvPiwKKyAgICAgICAgYWx0aG91Z2ggdGhlIE9wdXMgaW50ZXJuYWwgcGFkZGlu
ZyBpcyBwcmVmZXJyZWQuPC90PgorCisgICAgICAgIDx0PlRoZSB0aW1lc3RhbXAsIHNlcXVlbmNl
IG51bWJlciwgYW5kIG1hcmtlciBiaXQgKE0pIG9mIHRoZSBSVFAgaGVhZGVyCisgICAgICAgIGFy
ZSB1c2VkIGluIGFjY29yZGFuY2Ugd2l0aCBTZWN0aW9uIDQuMQorICAgICAgICBvZiZuYnNwOzx4
cmVmIHRhcmdldD0iUkZDMzU1MSIvPi48L3Q+CisKKyAgICAgICAgPHQ+VGhlIFJUUCBwYXlsb2Fk
IHR5cGUgZm9yIE9wdXMgaXMgdG8gYmUgYXNzaWduZWQgZHluYW1pY2FsbHkuPC90PgorCisgICAg
ICAgIDx0PlRoZSByZWNlaXZpbmcgc2lkZSBNVVNUIGJlIHByZXBhcmVkIHRvIHJlY2VpdmUgZHVw
bGljYXRlIFJUUAorICAgICAgICBwYWNrZXRzLiBUaGUgcmVjZWl2ZXIgTVVTVCBwcm92aWRlIGF0
IG1vc3Qgb25lIG9mIHRob3NlIHBheWxvYWRzIHRvIHRoZQorICAgICAgICBPcHVzIGRlY29kZXIg
Zm9yIGRlY29kaW5nLCBhbmQgTVVTVCBkaXNjYXJkIHRoZSBvdGhlcnMuPC90PgorCisgICAgICAg
IDx0Pk9wdXMgc3VwcG9ydHMgNSBkaWZmZXJlbnQgYXVkaW8gYmFuZHdpZHRocywgd2hpY2ggY2Fu
IGJlIGFkanVzdGVkIGR1cmluZworICAgICAgICBhIHN0cmVhbS4KKyAgICAgICAgVGhlIFJUUCB0
aW1lc3RhbXAgaXMgaW5jcmVtZW50ZWQgd2l0aCBhIDQ4MDAwIEh6IGNsb2NrIHJhdGUKKyAgICAg
ICAgZm9yIGFsbCBtb2RlcyBvZiBPcHVzIGFuZCBhbGwgc2FtcGxpbmcgcmF0ZXMuCisgICAgICAg
IFRoZSB1bml0CisgICAgICAgIGZvciB0aGUgdGltZXN0YW1wIGlzIHNhbXBsZXMgcGVyIHNpbmds
ZSAobW9ubykgY2hhbm5lbC4gVGhlIFJUUCB0aW1lc3RhbXAgY29ycmVzcG9uZHMgdG8gdGhlCisg
ICAgICAgIHNhbXBsZSB0aW1lIG9mIHRoZSBmaXJzdCBlbmNvZGVkIHNhbXBsZSBpbiB0aGUgZW5j
b2RlZCBmcmFtZS4KKyAgICAgICAgRm9yIGRhdGEgZW5jb2RlZCB3aXRoIHNhbXBsaW5nIHJhdGVz
IG90aGVyIHRoYW4gNDgwMDAgSHosCisJdGhlIHNhbXBsaW5nIHJhdGUgaGFzIHRvIGJlIGFkanVz
dGVkIHRvIDQ4MDAwIEh6LjwvdD4KKworICAgICAgPC9zZWN0aW9uPgorCisgICAgICA8c2VjdGlv
biB0aXRsZT0nUGF5bG9hZCBTdHJ1Y3R1cmUnPgorICAgICAgICA8dD4KKyAgICAgICAgICBUaGUg
T3B1cyBlbmNvZGVyIGNhbiBvdXRwdXQgZW5jb2RlZCBmcmFtZXMgcmVwcmVzZW50aW5nIDIuNSwg
NSwgMTAsIDIwLAorICAgICAgICAgIDQwLCBvciA2MCZuYnNwO21zIG9mIHNwZWVjaCBvciBhdWRp
byBkYXRhLiBGdXJ0aGVyLCBhbiBhcmJpdHJhcnkgbnVtYmVyIG9mIGZyYW1lcyBjYW4gYmUKKyAg
ICAgICAgICBjb21iaW5lZCBpbnRvIGEgcGFja2V0LCB1cCB0byBhIG1heGltdW0gcGFja2V0IGR1
cmF0aW9uIHJlcHJlc2VudGluZworICAgICAgICAgIDEyMCZuYnNwO21zIG9mIHNwZWVjaCBvciBh
dWRpbyBkYXRhLiBUaGUgZ3JvdXBpbmcgb2Ygb25lIG9yIG1vcmUgT3B1cworICAgICAgICAgIGZy
YW1lcyBpbnRvIGEgc2luZ2xlIE9wdXMgcGFja2V0IGlzIGRlZmluZWQgaW4gU2VjdGlvbiZuYnNw
OzMgb2YKKyAgICAgICAgICA8eHJlZiB0YXJnZXQ9IlJGQzY3MTYiLz4uIEFuIFJUUCBwYXlsb2Fk
IE1VU1QgY29udGFpbiBleGFjdGx5IG9uZQorICAgICAgICAgIE9wdXMgcGFja2V0IGFzIGRlZmlu
ZWQgYnkgdGhhdCBkb2N1bWVudC4KKyAgICAgICAgPC90PgorCisgICAgICAgIDx0Pjx4cmVmIHRh
cmdldD0ncGF5bG9hZC1zdHJ1Y3R1cmUnLz4gc2hvd3MgdGhlIHN0cnVjdHVyZSBjb21iaW5lZCB3
aXRoIHRoZSBSVFAgaGVhZGVyLjwvdD4KKworICAgICAgICA8ZmlndXJlIGFuY2hvcj0icGF5bG9h
ZC1zdHJ1Y3R1cmUiCisgICAgICAgICAgICAgICAgdGl0bGU9IlBhY2tldCBzdHJ1Y3R1cmUgd2l0
aCBSVFAgaGVhZGVyIj4KKyAgICAgICAgICA8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKyAgICAg
ICAgICAgIDwhW0NEQVRBWworKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rCit8UlRQIEhlYWRl
cnwgT3B1cyBQYXlsb2FkIHwKKystLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKworICAgICAgICAg
ICBdXT4KKyAgICAgICAgICA8L2FydHdvcms+CisgICAgICAgIDwvZmlndXJlPgorCisgICAgICAg
IDx0PgorICAgICAgICAgIDx4cmVmIHRhcmdldD0nb3B1cy1wYWNrZXRpemF0aW9uJy8+IHNob3dz
IHN1cHBvcnRlZCBmcmFtZSBzaXplcyBpbgorICAgICAgICAgIG1pbGxpc2Vjb25kcyBvZiBlbmNv
ZGVkIHNwZWVjaCBvciBhdWRpbyBkYXRhIGZvciB0aGUgc3BlZWNoIGFuZCBhdWRpbyBtb2Rlcwor
ICAgICAgICAgIChNb2RlKSBhbmQgc2FtcGxpbmcgcmF0ZXMgKGZzKSBvZiBPcHVzIGFuZCBzaG93
cyBob3cgdGhlIHRpbWVzdGFtcCBpcworICAgICAgICAgIGluY3JlbWVudGVkIGZvciBwYWNrZXRp
emF0aW9uICh0cyBpbmNyKS4gSWYgdGhlIE9wdXMgZW5jb2RlcgorICAgICAgICAgIG91dHB1dHMg
bXVsdGlwbGUgZW5jb2RlZCBmcmFtZXMgaW50byBhIHNpbmdsZSBwYWNrZXQsIHRoZSB0aW1lc3Rh
bXAKKyAgICAgICAgICBpbmNyZW1lbnQgaXMgdGhlIHN1bSBvZiB0aGUgaW5jcmVtZW50cyBmb3Ig
dGhlIGluZGl2aWR1YWwgZnJhbWVzLgorICAgICAgICA8L3Q+CisKKyAgICAgICAgPHRleHR0YWJs
ZSBhbmNob3I9J29wdXMtcGFja2V0aXphdGlvbicgdGl0bGU9IlN1cHBvcnRlZCBPcHVzIGZyYW1l
CisgICAgICAgICBzaXplcyBhbmQgdGltZXN0YW1wIGluY3JlbWVudHMgbWFya2VkIHdpdGggYW4g
by4gVW5zdXBwb3J0ZWQgbWFya2VkIHdpdGggYW4geC4iPgorICAgICAgICAgICAgPHR0Y29sIGFs
aWduPSdjZW50ZXInPk1vZGU8L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50
ZXInPmZzPC90dGNvbD4KKyAgICAgICAgICAgIDx0dGNvbCBhbGlnbj0nY2VudGVyJz4yLjU8L3R0
Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPjU8L3R0Y29sPgorICAgICAg
ICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPjEwPC90dGNvbD4KKyAgICAgICAgICAgIDx0dGNv
bCBhbGlnbj0nY2VudGVyJz4yMDwvdHRjb2w+CisgICAgICAgICAgICA8dHRjb2wgYWxpZ249J2Nl
bnRlcic+NDA8L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPjYwPC90
dGNvbD4KKyAgICAgICAgICAgIDxjPnRzIGluY3I8L2M+CisgICAgICAgICAgICA8Yz5hbGw8L2M+
CisgICAgICAgICAgICA8Yz4xMjA8L2M+CisgICAgICAgICAgICA8Yz4yNDA8L2M+CisgICAgICAg
ICAgICA8Yz40ODA8L2M+CisgICAgICAgICAgICA8Yz45NjA8L2M+CisgICAgICAgICAgICA8Yz4x
OTIwPC9jPgorICAgICAgICAgICAgPGM+Mjg4MDwvYz4KKyAgICAgICAgICAgIDxjPnZvaWNlPC9j
PgorICAgICAgICAgICAgPGM+TkIvTUIvV0IvU1dCL0ZCPC9jPgorICAgICAgICAgICAgPGM+eDwv
Yz4KKyAgICAgICAgICAgIDxjPng8L2M+CisgICAgICAgICAgICA8Yz5vPC9jPgorICAgICAgICAg
ICAgPGM+bzwvYz4KKyAgICAgICAgICAgIDxjPm88L2M+CisgICAgICAgICAgICA8Yz5vPC9jPgor
ICAgICAgICAgICAgPGM+YXVkaW88L2M+CisgICAgICAgICAgICA8Yz5OQi9XQi9TV0IvRkI8L2M+
CisgICAgICAgICAgICA8Yz5vPC9jPgorICAgICAgICAgICAgPGM+bzwvYz4KKyAgICAgICAgICAg
IDxjPm88L2M+CisgICAgICAgICAgICA8Yz5vPC9jPgorICAgICAgICAgICAgPGM+eDwvYz4KKyAg
ICAgICAgICAgIDxjPng8L2M+CisgICAgICAgICAgPC90ZXh0dGFibGU+CisKKyAgICAgIDwvc2Vj
dGlvbj4KKworICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIHRpdGxlPSdDb25nZXN0aW9u
IENvbnRyb2wnPgorCisgICAgICA8dD5UaGUgdGFyZ2V0IGJpdHJhdGUgb2YgT3B1cyBjYW4gYmUg
YWRqdXN0ZWQgYXQgYW55IHBvaW50IGluIHRpbWUsIHRodXMKKyAgICAgIGFsbG93aW5nIGVmZmlj
aWVudCBjb25nZXN0aW9uIGNvbnRyb2wuIEZ1cnRoZXJtb3JlLCB0aGUgYW1vdW50CisgICAgICBv
ZiBlbmNvZGVkIHNwZWVjaCBvciBhdWRpbyBkYXRhIGVuY29kZWQgaW4gYQorICAgICAgc2luZ2xl
IHBhY2tldCBjYW4gYmUgdXNlZCBmb3IgY29uZ2VzdGlvbiBjb250cm9sLCBzaW5jZSB0aGUgdHJh
bnNtaXNzaW9uCisgICAgICByYXRlIGlzIGludmVyc2VseSBwcm9wb3J0aW9uYWwgdG8gdGhlIHBh
Y2tldCBkdXJhdGlvbi4gQSBsb3dlciBwYWNrZXQKKyAgICAgIHRyYW5zbWlzc2lvbiByYXRlIHJl
ZHVjZXMgdGhlIGFtb3VudCBvZiBoZWFkZXIgb3ZlcmhlYWQsIGJ1dCBhdCB0aGUgc2FtZQorICAg
ICAgdGltZSBpbmNyZWFzZXMgbGF0ZW5jeSBhbmQgbG9zcyBzZW5zaXRpdml0eSwgc28gaXQgb3Vn
aHQgdG8gYmUgdXNlZCB3aXRoCisgICAgICBjYXJlLjwvdD4KKworICAgICAgPHQ+U2luY2UgVURQ
IGRvZXMgbm90IHByb3ZpZGUgY29uZ2VzdGlvbiBjb250cm9sLCBhcHBsaWNhdGlvbnMgdGhhdCB1
c2UKKyAgICAgIFJUUCBvdmVyIFVEUCBTSE9VTEQgaW1wbGVtZW50IHRoZWlyIG93biBjb25nZXN0
aW9uIGNvbnRyb2wgYWJvdmUgdGhlCisgICAgICBVRFAgbGF5ZXIgPHhyZWYgdGFyZ2V0PSJSRkM1
NDA1Ii8+LiBXb3JrIGluIHRoZSBybWNhdCB3b3JraW5nIGdyb3VwCisgICAgICA8eHJlZiB0YXJn
ZXQ9InJtY2F0Ii8+IGRlc2NyaWJlcyB0aGUKKyAgICAgIGludGVyYWN0aW9ucyBhbmQgY29uY2Vw
dHVhbCBpbnRlcmZhY2VzIG5lY2Vzc2FyeSBiZXR3ZWVuIHRoZSBhcHBsaWNhdGlvbgorICAgICAg
Y29tcG9uZW50cyB0aGF0IHJlbGF0ZSB0byBjb25nZXN0aW9uIGNvbnRyb2wsIGluY2x1ZGluZyB0
aGUgUlRQIGxheWVyLAorICAgICAgdGhlIGhpZ2hlci1sZXZlbCBtZWRpYSBjb2RlYyBjb250cm9s
IGxheWVyLCBhbmQgdGhlIGxvd2VyLWxldmVsCisgICAgICB0cmFuc3BvcnQgaW50ZXJmYWNlLCBh
cyB3ZWxsIGFzIGNvbXBvbmVudHMgZGVkaWNhdGVkIHRvIGNvbmdlc3Rpb24KKyAgICAgIGNvbnRy
b2wgZnVuY3Rpb25zLjwvdD4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0n
SUFOQSBDb25zaWRlcmF0aW9ucyc+CisgICAgICA8dD5PbmUgbWVkaWEgc3VidHlwZSAoYXVkaW8v
b3B1cykgaGFzIGJlZW4gZGVmaW5lZCBhbmQgcmVnaXN0ZXJlZCBhcworICAgICAgZGVzY3JpYmVk
IGluIHRoZSBmb2xsb3dpbmcgc2VjdGlvbi48L3Q+CisKKyAgICAgIDxzZWN0aW9uIHRpdGxlPSdP
cHVzIE1lZGlhIFR5cGUgUmVnaXN0cmF0aW9uJz4KKyAgICAgICAgPHQ+TWVkaWEgdHlwZSByZWdp
c3RyYXRpb24gaXMgZG9uZSBhY2NvcmRpbmcgdG8gPHhyZWYKKyAgICAgICAgdGFyZ2V0PSJSRkM2
ODM4Ii8+IGFuZCA8eHJlZiB0YXJnZXQ9IlJGQzQ4NTUiLz4uPHZzcGFjZQorICAgICAgICBibGFu
a0xpbmVzPScxJy8+PC90PgorCisgICAgICAgICAgPHQ+VHlwZSBuYW1lOiBhdWRpbzx2c3BhY2Ug
YmxhbmtMaW5lcz0nMScvPjwvdD4KKyAgICAgICAgICA8dD5TdWJ0eXBlIG5hbWU6IG9wdXM8dnNw
YWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisKKyAgICAgICAgICA8dD5SZXF1aXJlZCBwYXJhbWV0
ZXJzOjwvdD4KKyAgICAgICAgICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAg
ICA8dCBoYW5nVGV4dD0icmF0ZToiPiB0aGUgUlRQIHRpbWVzdGFtcCBpcyBpbmNyZW1lbnRlZCB3
aXRoIGEKKyAgICAgICAgICAgIDQ4MDAwIEh6IGNsb2NrIHJhdGUgZm9yIGFsbCBtb2RlcyBvZiBP
cHVzIGFuZCBhbGwgc2FtcGxpbmcKKyAgICAgICAgICAgIHJhdGVzLiBGb3IgZGF0YSBlbmNvZGVk
IHdpdGggc2FtcGxpbmcgcmF0ZXMgb3RoZXIgdGhhbiA0ODAwMCBIeiwKKyAgICAgICAgICAgIHRo
ZSBzYW1wbGluZyByYXRlIGhhcyB0byBiZSBhZGp1c3RlZCB0byA0ODAwMCBIei4KKyAgICAgICAg
ICA8L3Q+CisgICAgICAgICAgPC9saXN0PjwvdD4KKworICAgICAgICAgIDx0Pk9wdGlvbmFsIHBh
cmFtZXRlcnM6PC90PgorCisgICAgICAgICAgPHQ+PGxpc3Qgc3R5bGU9ImhhbmdpbmciPgorICAg
ICAgICAgICAgPHQgaGFuZ1RleHQ9Im1heHBsYXliYWNrcmF0ZToiPgorICAgICAgICAgICAgICBh
IGhpbnQgYWJvdXQgdGhlIG1heGltdW0gb3V0cHV0IHNhbXBsaW5nIHJhdGUgdGhhdCB0aGUgcmVj
ZWl2ZXIgaXMKKyAgICAgICAgICAgICAgY2FwYWJsZSBvZiByZW5kZXJpbmcgaW4gSHouCisgICAg
ICAgICAgICAgIFRoZSBkZWNvZGVyIE1VU1QgYmUgY2FwYWJsZSBvZiBkZWNvZGluZworICAgICAg
ICAgICAgICBhbnkgYXVkaW8gYmFuZHdpZHRoIGJ1dCBkdWUgdG8gaGFyZHdhcmUgbGltaXRhdGlv
bnMgb25seSBzaWduYWxzCisgICAgICAgICAgICAgIHVwIHRvIHRoZSBzcGVjaWZpZWQgc2FtcGxp
bmcgcmF0ZSBjYW4gYmUgcGxheWVkIGJhY2suIFNlbmRpbmcgc2lnbmFscworICAgICAgICAgICAg
ICB3aXRoIGhpZ2hlciBhdWRpbyBiYW5kd2lkdGggcmVzdWx0cyBpbiBoaWdoZXIgdGhhbiBuZWNl
c3NhcnkgbmV0d29yaworICAgICAgICAgICAgICB1c2FnZSBhbmQgZW5jb2RpbmcgY29tcGxleGl0
eSwgc28gYW4gZW5jb2RlciBTSE9VTEQgTk9UIGVuY29kZQorICAgICAgICAgICAgICBmcmVxdWVu
Y2llcyBhYm92ZSB0aGUgYXVkaW8gYmFuZHdpZHRoIHNwZWNpZmllZCBieSBtYXhwbGF5YmFja3Jh
dGUuCisgICAgICAgICAgICAgIFRoaXMgcGFyYW1ldGVyIGNhbiB0YWtlIGFueSB2YWx1ZSBiZXR3
ZWVuIDgwMDAgYW5kIDQ4MDAwLCBhbHRob3VnaAorICAgICAgICAgICAgICBjb21tb25seSB0aGUg
dmFsdWUgd2lsbCBtYXRjaCBvbmUgb2YgdGhlIE9wdXMgYmFuZHdpZHRocworICAgICAgICAgICAg
ICAoPHhyZWYgdGFyZ2V0PSJiYW5kd2lkdGhfZGVmaW5pdGlvbnMiLz4pLgorICAgICAgICAgICAg
ICBCeSBkZWZhdWx0LCB0aGUgcmVjZWl2ZXIgaXMgYXNzdW1lZCB0byBoYXZlIG5vIGxpbWl0YXRp
b25zLCBpLmUuIDQ4MDAwLgorICAgICAgICAgICAgICA8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz4K
KyAgICAgICAgICAgIDwvdD4KKworICAgICAgICAgICAgPHQgaGFuZ1RleHQ9InNwcm9wLW1heGNh
cHR1cmVyYXRlOiI+CisgICAgICAgICAgICAgIGEgaGludCBhYm91dCB0aGUgbWF4aW11bSBpbnB1
dCBzYW1wbGluZyByYXRlIHRoYXQgdGhlIHNlbmRlciBpcyBsaWtlbHkgdG8gcHJvZHVjZS4KKyAg
ICAgICAgICAgICAgVGhpcyBpcyBub3QgYSBndWFyYW50ZWUgdGhhdCB0aGUgc2VuZGVyIHdpbGwg
bmV2ZXIgc2VuZCBhbnkgaGlnaGVyIGJhbmR3aWR0aAorICAgICAgICAgICAgICAoZS5nLiBpdCBj
b3VsZCBzZW5kIGEgcHJlLXJlY29yZGVkIHByb21wdCB0aGF0IHVzZXMgYSBoaWdoZXIgYmFuZHdp
ZHRoKSwgYnV0IGl0CisgICAgICAgICAgICAgIGluZGljYXRlcyB0byB0aGUgcmVjZWl2ZXIgdGhh
dCBmcmVxdWVuY2llcyBhYm92ZSB0aGlzIG1heGltdW0gY2FuIHNhZmVseSBiZSBkaXNjYXJkZWQu
CisgICAgICAgICAgICAgIFRoaXMgcGFyYW1ldGVyIGlzIHVzZWZ1bCB0byBhdm9pZCB3YXN0aW5n
IHJlY2VpdmVyIHJlc291cmNlcyBieSBvcGVyYXRpbmcgdGhlIGF1ZGlvCisgICAgICAgICAgICAg
IHByb2Nlc3NpbmcgcGlwZWxpbmUgKGUuZy4gZWNobyBjYW5jZWxsYXRpb24pIGF0IGEgaGlnaGVy
IHJhdGUgdGhhbiBuZWNlc3NhcnkuCisgICAgICAgICAgICAgIFRoaXMgcGFyYW1ldGVyIGNhbiB0
YWtlIGFueSB2YWx1ZSBiZXR3ZWVuIDgwMDAgYW5kIDQ4MDAwLCBhbHRob3VnaAorICAgICAgICAg
ICAgICBjb21tb25seSB0aGUgdmFsdWUgd2lsbCBtYXRjaCBvbmUgb2YgdGhlIE9wdXMgYmFuZHdp
ZHRocworICAgICAgICAgICAgICAoPHhyZWYgdGFyZ2V0PSJiYW5kd2lkdGhfZGVmaW5pdGlvbnMi
Lz4pLgorICAgICAgICAgICAgICBCeSBkZWZhdWx0LCB0aGUgc2VuZGVyIGlzIGFzc3VtZWQgdG8g
aGF2ZSBubyBsaW1pdGF0aW9ucywgaS5lLiA0ODAwMC4KKyAgICAgICAgICAgICAgPHZzcGFjZSBi
bGFua0xpbmVzPScxJy8+CisgICAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICAgIDx0IGhhbmdU
ZXh0PSJtYXhwdGltZToiPiB0aGUgbWF4aW11bSBkdXJhdGlvbiBvZiBtZWRpYSByZXByZXNlbnRl
ZAorICAgICAgICAgICAgYnkgYSBwYWNrZXQgKGFjY29yZGluZyB0byBTZWN0aW9uJm5ic3A7NiBv
ZgorICAgICAgICAgICAgPHhyZWYgdGFyZ2V0PSJSRkM0NTY2Ii8+KSB0aGF0IGEgZGVjb2RlciB3
YW50cyB0byByZWNlaXZlLCBpbgorICAgICAgICAgICAgbWlsbGlzZWNvbmRzIHJvdW5kZWQgdXAg
dG8gdGhlIG5leHQgZnVsbCBpbnRlZ2VyIHZhbHVlLgorICAgICAgICAgICAgUG9zc2libGUgdmFs
dWVzIGFyZSAzLCA1LCAxMCwgMjAsIDQwLCA2MCwgb3IgYW4gYXJiaXRyYXJ5CisgICAgICAgICAg
ICBtdWx0aXBsZSBvZiBhbiBPcHVzIGZyYW1lIHNpemUgcm91bmRlZCB1cCB0byB0aGUgbmV4dCBm
dWxsIGludGVnZXIKKyAgICAgICAgICAgIHZhbHVlLCB1cCB0byBhIG1heGltdW0gdmFsdWUgb2Yg
MTIwLCBhcworICAgICAgICAgICAgZGVmaW5lZCBpbiA8eHJlZiB0YXJnZXQ9J29wdXMtcnRwLXBh
eWxvYWQtZm9ybWF0Jy8+LiBJZiBubyB2YWx1ZSBpcworICAgICAgICAgICAgICBzcGVjaWZpZWQs
IHRoZSBkZWZhdWx0IGlzIDEyMC4KKyAgICAgICAgICAgICAgPHZzcGFjZSBibGFua0xpbmVzPScx
Jy8+PC90PgorCisgICAgICAgICAgICA8dCBoYW5nVGV4dD0icHRpbWU6Ij4gdGhlIHByZWZlcnJl
ZCBkdXJhdGlvbiBvZiBtZWRpYSByZXByZXNlbnRlZAorICAgICAgICAgICAgYnkgYSBwYWNrZXQg
KGFjY29yZGluZyB0byBTZWN0aW9uJm5ic3A7NiBvZgorICAgICAgICAgICAgPHhyZWYgdGFyZ2V0
PSJSRkM0NTY2Ii8+KSB0aGF0IGEgZGVjb2RlciB3YW50cyB0byByZWNlaXZlLCBpbgorICAgICAg
ICAgICAgbWlsbGlzZWNvbmRzIHJvdW5kZWQgdXAgdG8gdGhlIG5leHQgZnVsbCBpbnRlZ2VyIHZh
bHVlLgorICAgICAgICAgICAgUG9zc2libGUgdmFsdWVzIGFyZSAzLCA1LCAxMCwgMjAsIDQwLCA2
MCwgb3IgYW4gYXJiaXRyYXJ5CisgICAgICAgICAgICBtdWx0aXBsZSBvZiBhbiBPcHVzIGZyYW1l
IHNpemUgcm91bmRlZCB1cCB0byB0aGUgbmV4dCBmdWxsIGludGVnZXIKKyAgICAgICAgICAgIHZh
bHVlLCB1cCB0byBhIG1heGltdW0gdmFsdWUgb2YgMTIwLCBhcyBkZWZpbmVkIGluIDx4cmVmCisg
ICAgICAgICAgICB0YXJnZXQ9J29wdXMtcnRwLXBheWxvYWQtZm9ybWF0Jy8+LiBJZiBubyB2YWx1
ZSBpcworICAgICAgICAgICAgICBzcGVjaWZpZWQsIHRoZSBkZWZhdWx0IGlzIDIwLiAKKyAgICAg
ICAgICAgICAgPHZzcGFjZSBibGFua0xpbmVzPScxJy8+PC90PgorCisgICAgICAgICAgICA8dCBo
YW5nVGV4dD0ibWF4YXZlcmFnZWJpdHJhdGU6Ij4gc3BlY2lmaWVzIHRoZSBtYXhpbXVtIGF2ZXJh
Z2UKKyAgICAgICAgICAgIHJlY2VpdmUgYml0cmF0ZSBvZiBhIHNlc3Npb24gaW4gYml0cyBwZXIg
c2Vjb25kIChiL3MpLiBUaGUgYWN0dWFsCisgICAgICAgICAgICB2YWx1ZSBvZiB0aGUgYml0cmF0
ZSBjYW4gdmFyeSwgYXMgaXQgaXMgZGVwZW5kZW50IG9uIHRoZQorICAgICAgICAgICAgY2hhcmFj
dGVyaXN0aWNzIG9mIHRoZSBtZWRpYSBpbiBhIHBhY2tldC4gTm90ZSB0aGF0IHRoZSBtYXhpbXVt
CisgICAgICAgICAgICBhdmVyYWdlIGJpdHJhdGUgTUFZIGJlIG1vZGlmaWVkIGR5bmFtaWNhbGx5
IGR1cmluZyBhIHNlc3Npb24uIEFueQorICAgICAgICAgICAgcG9zaXRpdmUgaW50ZWdlciBpcyBh
bGxvd2VkLCBidXQgdmFsdWVzIG91dHNpZGUgdGhlIHJhbmdlCisgICAgICAgICAgICA2MDAwIHRv
IDUxMDAwMCBTSE9VTEQgYmUgaWdub3JlZC4gSWYgbm8gdmFsdWUgaXMgc3BlY2lmaWVkLCB0aGUK
KyAgICAgICAgICAgIG1heGltdW0gdmFsdWUgc3BlY2lmaWVkIGluIDx4cmVmIHRhcmdldD0nYml0
cmF0ZV9ieV9iYW5kd2lkdGgnLz4KKyAgICAgICAgICAgIGZvciB0aGUgY29ycmVzcG9uZGluZyBt
b2RlIG9mIE9wdXMgYW5kIGNvcnJlc3BvbmRpbmcgbWF4cGxheWJhY2tyYXRlCisgICAgICAgICAg
ICBpcyB0aGUgZGVmYXVsdC48dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisKKyAgICAgICAg
ICAgIDx0IGhhbmdUZXh0PSJzdGVyZW86Ij4KKyAgICAgICAgICAgICAgc3BlY2lmaWVzIHdoZXRo
ZXIgdGhlIGRlY29kZXIgcHJlZmVycyByZWNlaXZpbmcgc3RlcmVvIG9yIG1vbm8gc2lnbmFscy4K
KyAgICAgICAgICAgICAgUG9zc2libGUgdmFsdWVzIGFyZSAxIGFuZCAwIHdoZXJlIDEgc3BlY2lm
aWVzIHRoYXQgc3RlcmVvIHNpZ25hbHMgYXJlIHByZWZlcnJlZCwKKyAgICAgICAgICAgICAgYW5k
IDAgc3BlY2lmaWVzIHRoYXQgb25seSBtb25vIHNpZ25hbHMgYXJlIHByZWZlcnJlZC4KKyAgICAg
ICAgICAgICAgSW5kZXBlbmRlbnQgb2YgdGhlIHN0ZXJlbyBwYXJhbWV0ZXIgZXZlcnkgcmVjZWl2
ZXIgTVVTVCBiZSBhYmxlIHRvIHJlY2VpdmUgYW5kCisgICAgICAgICAgICAgIGRlY29kZSBzdGVy
ZW8gc2lnbmFscyBidXQgc2VuZGluZyBzdGVyZW8gc2lnbmFscyB0byBhIHJlY2VpdmVyIHRoYXQg
c2lnbmFsZWQgYQorICAgICAgICAgICAgICBwcmVmZXJlbmNlIGZvciBtb25vIHNpZ25hbHMgbWF5
IHJlc3VsdCBpbiBoaWdoZXIgdGhhbiBuZWNlc3NhcnkgbmV0d29yaworICAgICAgICAgICAgICB1
dGlsaXphdGlvbiBhbmQgZW5jb2RpbmcgY29tcGxleGl0eS4gSWYgbm8gdmFsdWUgaXMgc3BlY2lm
aWVkLAorICAgICAgICAgICAgICB0aGUgZGVmYXVsdCBpcyAwIChtb25vKS48dnNwYWNlIGJsYW5r
TGluZXM9JzEnLz4KKyAgICAgICAgICAgIDwvdD4KKworICAgICAgICAgICAgPHQgaGFuZ1RleHQ9
InNwcm9wLXN0ZXJlbzoiPgorICAgICAgICAgICAgICBzcGVjaWZpZXMgd2hldGhlciB0aGUgc2Vu
ZGVyIGlzIGxpa2VseSB0byBwcm9kdWNlIHN0ZXJlbyBhdWRpby4KKyAgICAgICAgICAgICAgUG9z
c2libGUgdmFsdWVzIGFyZSAxIGFuZCAwLCB3aGVyZSAxIHNwZWNpZmllcyB0aGF0IHN0ZXJlbyBz
aWduYWxzIGFyZSBsaWtlbHkgdG8KKyAgICAgICAgICAgICAgYmUgc2VudCwgYW5kIDAgc3BlY2lm
aWVzIHRoYXQgdGhlIHNlbmRlciB3aWxsIGxpa2VseSBvbmx5IHNlbmQgbW9uby4KKyAgICAgICAg
ICAgICAgVGhpcyBpcyBub3QgYSBndWFyYW50ZWUgdGhhdCB0aGUgc2VuZGVyIHdpbGwgbmV2ZXIg
c2VuZCBzdGVyZW8gYXVkaW8KKyAgICAgICAgICAgICAgKGUuZy4gaXQgY291bGQgc2VuZCBhIHBy
ZS1yZWNvcmRlZCBwcm9tcHQgdGhhdCB1c2VzIHN0ZXJlbyksIGJ1dCBpdAorICAgICAgICAgICAg
ICBpbmRpY2F0ZXMgdG8gdGhlIHJlY2VpdmVyIHRoYXQgdGhlIHJlY2VpdmVkIHNpZ25hbCBjYW4g
YmUgc2FmZWx5IGRvd25taXhlZCB0byBtb25vLgorICAgICAgICAgICAgICBUaGlzIHBhcmFtZXRl
ciBpcyB1c2VmdWwgdG8gYXZvaWQgd2FzdGluZyByZWNlaXZlciByZXNvdXJjZXMgYnkgb3BlcmF0
aW5nIHRoZSBhdWRpbworICAgICAgICAgICAgICBwcm9jZXNzaW5nIHBpcGVsaW5lIChlLmcuIGVj
aG8gY2FuY2VsbGF0aW9uKSBpbiBzdGVyZW8gd2hlbiBub3QgbmVjZXNzYXJ5LgorICAgICAgICAg
ICAgICBJZiBubyB2YWx1ZSBpcyBzcGVjaWZpZWQsIHRoZSBkZWZhdWx0IGlzIDAKKyAgICAgICAg
ICAgICAgKG1vbm8pLjx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPgorICAgICAgICAgICAgPC90Pgor
CisgICAgICAgICAgICA8dCBoYW5nVGV4dD0iY2JyOiI+CisgICAgICAgICAgICAgIHNwZWNpZmll
cyBpZiB0aGUgZGVjb2RlciBwcmVmZXJzIHRoZSB1c2Ugb2YgYSBjb25zdGFudCBiaXRyYXRlIHZl
cnN1cworICAgICAgICAgICAgICB2YXJpYWJsZSBiaXRyYXRlLiBQb3NzaWJsZSB2YWx1ZXMgYXJl
IDEgYW5kIDAsIHdoZXJlIDEgc3BlY2lmaWVzIGNvbnN0YW50CisgICAgICAgICAgICAgIGJpdHJh
dGUgYW5kIDAgc3BlY2lmaWVzIHZhcmlhYmxlIGJpdHJhdGUuIElmIG5vIHZhbHVlIGlzIHNwZWNp
ZmllZCwKKyAgICAgICAgICAgICAgdGhlIGRlZmF1bHQgaXMgMCAodmJyKS4gV2hlbiBjYnIgaXMg
MSwgdGhlIG1heGltdW0gYXZlcmFnZSBiaXRyYXRlIGNhbiBzdGlsbAorICAgICAgICAgICAgICBj
aGFuZ2UsIGUuZy4gdG8gYWRhcHQgdG8gY2hhbmdpbmcgbmV0d29yayBjb25kaXRpb25zLjx2c3Bh
Y2UgYmxhbmtMaW5lcz0nMScvPgorICAgICAgICAgICAgPC90PgorCisgICAgICAgICAgICA8dCBo
YW5nVGV4dD0idXNlaW5iYW5kZmVjOiI+IHNwZWNpZmllcyB0aGF0IHRoZSBkZWNvZGVyIGhhcyB0
aGUgY2FwYWJpbGl0eSB0bworICAgICAgICAgICAgdGFrZSBhZHZhbnRhZ2Ugb2YgdGhlIE9wdXMg
aW4tYmFuZCBGRUMuIFBvc3NpYmxlIHZhbHVlcyBhcmUgMSBhbmQgMC4KKyAgICAgICAgICAgIFBy
b3ZpZGluZyAwIHdoZW4gRkVDIGNhbm5vdCBiZSB1c2VkIG9uIHRoZSByZWNlaXZpbmcgc2lkZSBp
cworICAgICAgICAgICAgUkVDT01NRU5ERUQuIElmIG5vCisgICAgICAgICAgICB2YWx1ZSBpcyBz
cGVjaWZpZWQsIHVzZWluYmFuZGZlYyBpcyBhc3N1bWVkIHRvIGJlIDAuCisgICAgICAgICAgICBU
aGlzIHBhcmFtZXRlciBpcyBvbmx5IGEgcHJlZmVyZW5jZSBhbmQgdGhlIHJlY2VpdmVyIE1VU1Qg
YmUgYWJsZSB0byBwcm9jZXNzCisgICAgICAgICAgICBwYWNrZXRzIHRoYXQgaW5jbHVkZSBGRUMg
aW5mb3JtYXRpb24sIGV2ZW4gaWYgaXQgbWVhbnMgdGhlIEZFQyBwYXJ0IGlzIGRpc2NhcmRlZC4K
KyAgICAgICAgICAgIDx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKworICAgICAgICAgICAg
PHQgaGFuZ1RleHQ9InVzZWR0eDoiPiBzcGVjaWZpZXMgaWYgdGhlIGRlY29kZXIgcHJlZmVycyB0
aGUgdXNlIG9mCisgICAgICAgICAgICBEVFguIFBvc3NpYmxlIHZhbHVlcyBhcmUgMSBhbmQgMC4g
SWYgbm8gdmFsdWUgaXMgc3BlY2lmaWVkLCB0aGUKKyAgICAgICAgICAgIGRlZmF1bHQgaXMgMC48
dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisgICAgICAgICAgPC9saXN0PjwvdD4KKworICAg
ICAgICAgIDx0PkVuY29kaW5nIGNvbnNpZGVyYXRpb25zOjx2c3BhY2UgYmxhbmtMaW5lcz0nMScv
PjwvdD4KKyAgICAgICAgICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8
dD5UaGUgT3B1cyBtZWRpYSB0eXBlIGlzIGZyYW1lZCBhbmQgY29uc2lzdHMgb2YgYmluYXJ5IGRh
dGEgYWNjb3JkaW5nCisgICAgICAgICAgICB0byBTZWN0aW9uJm5ic3A7NC44IGluIDx4cmVmIHRh
cmdldD0iUkZDNjgzOCIvPi48L3Q+CisgICAgICAgICAgPC9saXN0PjwvdD4KKworICAgICAgICAg
IDx0PlNlY3VyaXR5IGNvbnNpZGVyYXRpb25zOiA8L3Q+CisgICAgICAgICAgPHQ+PGxpc3Qgc3R5
bGU9ImhhbmdpbmciPgorICAgICAgICAgICAgPHQ+U2VlIDx4cmVmIHRhcmdldD0nc2VjdXJpdHkt
Y29uc2lkZXJhdGlvbnMnLz4gb2YgdGhpcyBkb2N1bWVudC48L3Q+CisgICAgICAgICAgPC9saXN0
PjwvdD4KKworICAgICAgICAgIDx0PkludGVyb3BlcmFiaWxpdHkgY29uc2lkZXJhdGlvbnM6IG5v
bmU8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisJICA8dD5QdWJsaXNoZWQgc3BlY2lmaWNh
dGlvbjogUkZDIFtYWFhYXTwvdD4KKwkgIDx0Pk5vdGUgdG8gdGhlIFJGQyBFZGl0b3I6IFJlcGxh
Y2UgW1hYWFhdIHdpdGggdGhlIG51bWJlciBvZiB0aGUgcHVibGlzaGVkCisgICAgICAgICAgUkZD
Ljx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKworICAgICAgICAgIDx0PkFwcGxpY2F0aW9u
cyB0aGF0IHVzZSB0aGlzIG1lZGlhIHR5cGU6IDwvdD4KKyAgICAgICAgICA8dD48bGlzdCBzdHls
ZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dD5BbnkgYXBwbGljYXRpb24gdGhhdCByZXF1aXJl
cyB0aGUgdHJhbnNwb3J0IG9mCisgICAgICAgICAgICBzcGVlY2ggb3IgYXVkaW8gZGF0YSBjYW4g
dXNlIHRoaXMgbWVkaWEgdHlwZS4gU29tZSBleGFtcGxlcyBhcmUsCisgICAgICAgICAgICBidXQg
bm90IGxpbWl0ZWQgdG8sIGF1ZGlvIGFuZCB2aWRlbyBjb25mZXJlbmNpbmcsIFZvaWNlIG92ZXIg
SVAsCisgICAgICAgICAgICBtZWRpYSBzdHJlYW1pbmcuPC90PgorICAgICAgICAgIDwvbGlzdD48
L3Q+CisKKyAgICAgICAgICA8dD5GcmFnbWVudCBpZGVudGlmaWVyIGNvbnNpZGVyYXRpb25zOiBO
L0E8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisKKyAgICAgICAgICA8dD5QZXJzb24gJmFt
cDsgZW1haWwgYWRkcmVzcyB0byBjb250YWN0IGZvciBmdXJ0aGVyIGluZm9ybWF0aW9uOjwvdD4K
KyAgICAgICAgICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dD5TSUxL
IFN1cHBvcnQgc2lsa3N1cHBvcnRAc2t5cGUubmV0PC90PgorICAgICAgICAgICAgPHQ+SmVhbi1N
YXJjIFZhbGluIGptdmFsaW5Aam12YWxpbi5jYTwvdD4KKyAgICAgICAgICA8L2xpc3Q+PC90Pgor
CisgICAgICAgICAgPHQ+SW50ZW5kZWQgdXNhZ2U6IENPTU1PTjx2c3BhY2UgYmxhbmtMaW5lcz0n
MScvPjwvdD4KKworICAgICAgICAgIDx0PlJlc3RyaWN0aW9ucyBvbiB1c2FnZTo8dnNwYWNlIGJs
YW5rTGluZXM9JzEnLz48L3Q+CisKKyAgICAgICAgICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+
CisgICAgICAgICAgICA8dD5Gb3IgdHJhbnNmZXIgb3ZlciBSVFAsIHRoZSBSVFAgcGF5bG9hZCBm
b3JtYXQgKDx4cmVmCisgICAgICAgICAgICB0YXJnZXQ9J29wdXMtcnRwLXBheWxvYWQtZm9ybWF0
Jy8+IG9mIHRoaXMgZG9jdW1lbnQpIFNIQUxMIGJlCisgICAgICAgICAgICB1c2VkLjwvdD4KKyAg
ICAgICAgICA8L2xpc3Q+PC90PgorCisgICAgICAgICAgPHQ+QXV0aG9yOjwvdD4KKyAgICAgICAg
ICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dD5KdWxpYW4gU3BpdHRr
YSBqc3BpdHRrYUBnbWFpbC5jb208dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisgICAgICAg
ICAgICA8dD5Lb2VuIFZvcyBrb2Vudm9zNzRAZ21haWwuY29tPHZzcGFjZSBibGFua0xpbmVzPScx
Jy8+PC90PgorICAgICAgICAgICAgPHQ+SmVhbi1NYXJjIFZhbGluIGptdmFsaW5Aam12YWxpbi5j
YTx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKyAgICAgICAgICA8L2xpc3Q+PC90PgorCisg
ICAgICAgICAgPHQ+IENoYW5nZSBjb250cm9sbGVyOiBJRVRGIFBheWxvYWQgV29ya2luZyBHcm91
cCBkZWxlZ2F0ZWQgZnJvbSB0aGUgSUVTRzwvdD4KKyAgICAgIDwvc2VjdGlvbj4KKyAgICA8L3Nl
Y3Rpb24+CisgICAgCisgICAgPHNlY3Rpb24gdGl0bGU9J1NEUCBDb25zaWRlcmF0aW9ucyc+Cisg
ICAgICAgIDx0PlRoZSBpbmZvcm1hdGlvbiBkZXNjcmliZWQgaW4gdGhlIG1lZGlhIHR5cGUgc3Bl
Y2lmaWNhdGlvbiBoYXMgYQorICAgICAgICBzcGVjaWZpYyBtYXBwaW5nIHRvIGZpZWxkcyBpbiB0
aGUgU2Vzc2lvbiBEZXNjcmlwdGlvbiBQcm90b2NvbCAoU0RQKQorICAgICAgICA8eHJlZiB0YXJn
ZXQ9IlJGQzQ1NjYiLz4sIHdoaWNoIGlzIGNvbW1vbmx5IHVzZWQgdG8gZGVzY3JpYmUgUlRQCisg
ICAgICAgIHNlc3Npb25zLiBXaGVuIFNEUCBpcyB1c2VkIHRvIHNwZWNpZnkgc2Vzc2lvbnMgZW1w
bG95aW5nIE9wdXMsCisgICAgICAgIHRoZSBtYXBwaW5nIGlzIGFzIGZvbGxvd3M6PC90PgorCisg
ICAgICAgIDx0PgorICAgICAgICAgIDxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKyAgICAgICAgICAg
IDx0PlRoZSBtZWRpYSB0eXBlICgiYXVkaW8iKSBnb2VzIGluIFNEUCAibT0iIGFzIHRoZSBtZWRp
YSBuYW1lLjwvdD4KKworICAgICAgICAgICAgPHQ+VGhlIG1lZGlhIHN1YnR5cGUgKCJvcHVzIikg
Z29lcyBpbiBTRFAgImE9cnRwbWFwIiBhcyB0aGUgZW5jb2RpbmcKKyAgICAgICAgICAgIG5hbWUu
IFRoZSBSVFAgY2xvY2sgcmF0ZSBpbiAiYT1ydHBtYXAiIE1VU1QgYmUgNDgwMDAgYW5kIHRoZSBu
dW1iZXIgb2YKKyAgICAgICAgICAgIGNoYW5uZWxzIE1VU1QgYmUgMi48L3Q+CisKKyAgICAgICAg
ICAgIDx0PlRoZSBPUFRJT05BTCBtZWRpYSB0eXBlIHBhcmFtZXRlcnMgInB0aW1lIiBhbmQgIm1h
eHB0aW1lIiBhcmUKKyAgICAgICAgICAgIG1hcHBlZCB0byAiYT1wdGltZSIgYW5kICJhPW1heHB0
aW1lIiBhdHRyaWJ1dGVzLCByZXNwZWN0aXZlbHksIGluIHRoZQorICAgICAgICAgICAgU0RQLjwv
dD4KKworICAgICAgICAgICAgPHQ+VGhlIE9QVElPTkFMIG1lZGlhIHR5cGUgcGFyYW1ldGVycyAi
bWF4YXZlcmFnZWJpdHJhdGUiLAorICAgICAgICAgICAgIm1heHBsYXliYWNrcmF0ZSIsICJzdGVy
ZW8iLCAiY2JyIiwgInVzZWluYmFuZGZlYyIsIGFuZAorICAgICAgICAgICAgInVzZWR0eCIsIHdo
ZW4gcHJlc2VudCwgTVVTVCBiZSBpbmNsdWRlZCBpbiB0aGUgImE9Zm10cCIgYXR0cmlidXRlCisg
ICAgICAgICAgICBpbiB0aGUgU0RQLCBleHByZXNzZWQgYXMgYSBtZWRpYSB0eXBlIHN0cmluZyBp
biB0aGUgZm9ybSBvZiBhCisgICAgICAgICAgICBzZW1pY29sb24tc2VwYXJhdGVkIGxpc3Qgb2Yg
cGFyYW1ldGVyPXZhbHVlIHBhaXJzIChlLmcuLAorICAgICAgICAgICAgbWF4cGxheWJhY2tyYXRl
PTQ4MDAwKS4gVGhleSBNVVNUIE5PVCBiZSBzcGVjaWZpZWQgaW4gYW4KKyAgICAgICAgICAgIFNT
UkMtc3BlY2lmaWMgImZtdHAiIHNvdXJjZS1sZXZlbCBhdHRyaWJ1dGUgKGFzIGRlZmluZWQgaW4K
KyAgICAgICAgICAgIFNlY3Rpb24mbmJzcDs2LjMgb2YmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzU1
NzYiLz4pLjwvdD4KKworICAgICAgICAgICAgPHQ+VGhlIE9QVElPTkFMIG1lZGlhIHR5cGUgcGFy
YW1ldGVycyAic3Byb3AtbWF4Y2FwdHVyZXJhdGUiLAorICAgICAgICAgICAgYW5kICJzcHJvcC1z
dGVyZW8iIE1BWSBiZSBtYXBwZWQgdG8gdGhlICJhPWZtdHAiIFNEUCBhdHRyaWJ1dGUgYnkKKyAg
ICAgICAgICAgIGNvcHlpbmcgdGhlbSBkaXJlY3RseSBmcm9tIHRoZSBtZWRpYSB0eXBlIHBhcmFt
ZXRlciBzdHJpbmcgYXMgcGFydAorICAgICAgICAgICAgb2YgdGhlIHNlbWljb2xvbi1zZXBhcmF0
ZWQgbGlzdCBvZiBwYXJhbWV0ZXI9dmFsdWUgcGFpcnMgKGUuZy4sCisgICAgICAgICAgICBzcHJv
cC1zdGVyZW89MSkuIFRoZXNlIHNhbWUgT1BUSU9OQUwgbWVkaWEgdHlwZSBwYXJhbWV0ZXJzIE1B
WSBhbHNvCisgICAgICAgICAgICBiZSBzcGVjaWZpZWQgdXNpbmcgYW4gU1NSQy1zcGVjaWZpYyAi
Zm10cCIgc291cmNlLWxldmVsIGF0dHJpYnV0ZQorICAgICAgICAgICAgYXMgZGVzY3JpYmVkIGlu
IFNlY3Rpb24mbmJzcDs2LjMgb2YmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzU1NzYiLz4uCisgICAg
ICAgICAgICBUaGV5IE1BWSBiZSBzcGVjaWZpZWQgaW4gYm90aCBwbGFjZXMsIGluIHdoaWNoIGNh
c2UgdGhlIHBhcmFtZXRlcgorICAgICAgICAgICAgaW4gdGhlIHNvdXJjZS1sZXZlbCBhdHRyaWJ1
dGUgb3ZlcnJpZGVzIHRoZSBvbmUgZm91bmQgb24gdGhlCisgICAgICAgICAgICAiYT1mbXRwIiBs
aW5lLiBUaGUgdmFsdWUgb2YgYW55IHBhcmFtZXRlciB3aGljaCBpcyBub3Qgc3BlY2lmaWVkIGlu
CisgICAgICAgICAgICBhIHNvdXJjZS1sZXZlbCBzb3VyY2UgYXR0cmlidXRlIE1VU1QgYmUgdGFr
ZW4gZnJvbSB0aGUgImE9Zm10cCIKKyAgICAgICAgICAgIGxpbmUsIGlmIGl0IGlzIHByZXNlbnQg
dGhlcmUuPC90PgorCisgICAgICAgICAgPC9saXN0PgorICAgICAgICA8L3Q+CisKKyAgICAgICAg
PHQ+QmVsb3cgYXJlIHNvbWUgZXhhbXBsZXMgb2YgU0RQIHNlc3Npb24gZGVzY3JpcHRpb25zIGZv
ciBPcHVzOjwvdD4KKworICAgICAgICA8dD5FeGFtcGxlIDE6IFN0YW5kYXJkIG1vbm8gc2Vzc2lv
biB3aXRoIDQ4MDAwIEh6IGNsb2NrIHJhdGU8L3Q+CisgICAgICAgICAgPGZpZ3VyZT4KKyAgICAg
ICAgICAgIDxhcnR3b3JrPgorICAgICAgICAgICAgICA8IVtDREFUQVsKKyAgICBtPWF1ZGlvIDU0
MzEyIFJUUC9BVlAgMTAxCisgICAgYT1ydHBtYXA6MTAxIG9wdXMvNDgwMDAvMgorICAgICAgICAg
ICAgICBdXT4KKyAgICAgICAgICAgIDwvYXJ0d29yaz4KKyAgICAgICAgICA8L2ZpZ3VyZT4KKwor
CisgICAgICAgIDx0PkV4YW1wbGUgMjogMTYwMDAgSHogY2xvY2sgcmF0ZSwgbWF4aW11bSBwYWNr
ZXQgc2l6ZSBvZiA0MCBtcywKKyAgICAgICAgcmVjb21tZW5kZWQgcGFja2V0IHNpemUgb2YgNDAg
bXMsIG1heGltdW0gYXZlcmFnZSBiaXRyYXRlIG9mIDIwMDAwIGJwcywKKyAgICAgICAgcHJlZmVy
cyB0byByZWNlaXZlIHN0ZXJlbyBidXQgb25seSBwbGFucyB0byBzZW5kIG1vbm8sIEZFQyBpcyBk
ZXNpcmVkLAorICAgICAgICBEVFggaXMgbm90IGRlc2lyZWQ8L3Q+CisKKyAgICAgICAgPGZpZ3Vy
ZT4KKyAgICAgICAgICA8YXJ0d29yaz4KKyAgICAgICAgICAgIDwhW0NEQVRBWworICAgIG09YXVk
aW8gNTQzMTIgUlRQL0FWUCAxMDEKKyAgICBhPXJ0cG1hcDoxMDEgb3B1cy80ODAwMC8yCisgICAg
YT1mbXRwOjEwMSBtYXhwbGF5YmFja3JhdGU9MTYwMDA7IHNwcm9wLW1heGNhcHR1cmVyYXRlPTE2
MDAwOworICAgIG1heGF2ZXJhZ2ViaXRyYXRlPTIwMDAwOyBzdGVyZW89MTsgdXNlaW5iYW5kZmVj
PTE7IHVzZWR0eD0wCisgICAgYT1wdGltZTo0MAorICAgIGE9bWF4cHRpbWU6NDAKKyAgICAgICAg
ICAgIF1dPgorICAgICAgICAgIDwvYXJ0d29yaz4KKyAgICAgICAgPC9maWd1cmU+CisKKyAgICAg
ICAgPHQ+RXhhbXBsZSAzOiBUd28td2F5IGZ1bGwtYmFuZCBzdGVyZW8gcHJlZmVycmVkPC90Pgor
CisgICAgICAgIDxmaWd1cmU+CisgICAgICAgICAgPGFydHdvcms+CisgICAgICAgICAgICA8IVtD
REFUQVsKKyAgICBtPWF1ZGlvIDU0MzEyIFJUUC9BVlAgMTAxCisgICAgYT1ydHBtYXA6MTAxIG9w
dXMvNDgwMDAvMgorICAgIGE9Zm10cDoxMDEgc3RlcmVvPTE7IHNwcm9wLXN0ZXJlbz0xCisgICAg
ICAgICAgICBdXT4KKyAgICAgICAgICA8L2FydHdvcms+CisgICAgICAgIDwvZmlndXJlPgorCisK
KyAgICAgIDxzZWN0aW9uIHRpdGxlPSdTRFAgT2ZmZXIvQW5zd2VyIENvbnNpZGVyYXRpb25zJz4K
KworICAgICAgICAgIDx0PldoZW4gdXNpbmcgdGhlIG9mZmVyLWFuc3dlciBwcm9jZWR1cmUgZGVz
Y3JpYmVkIGluIDx4cmVmCisgICAgICAgICAgdGFyZ2V0PSJSRkMzMjY0Ii8+IHRvIG5lZ290aWF0
ZSB0aGUgdXNlIG9mIE9wdXMsIHRoZSBmb2xsb3dpbmcKKyAgICAgICAgICBjb25zaWRlcmF0aW9u
cyBhcHBseTo8L3Q+CisKKyAgICAgICAgICA8dD48bGlzdCBzdHlsZT0ic3ltYm9scyI+CisKKyAg
ICAgICAgICAgIDx0Pk9wdXMgc3VwcG9ydHMgc2V2ZXJhbCBjbG9jayByYXRlcy4gRm9yIHNpZ25h
bGluZyBwdXJwb3NlcyBvbmx5CisgICAgICAgICAgICB0aGUgaGlnaGVzdCwgaS5lLiA0ODAwMCwg
aXMgdXNlZC4gVGhlIGFjdHVhbCBjbG9jayByYXRlIG9mIHRoZQorICAgICAgICAgICAgY29ycmVz
cG9uZGluZyBtZWRpYSBpcyBzaWduYWxlZCBpbnNpZGUgdGhlIHBheWxvYWQgYW5kIGlzIG5vdAor
ICAgICAgICAgICAgcmVzdHJpY3RlZCBieSB0aGlzIHBheWxvYWQgZm9ybWF0IGRlc2NyaXB0aW9u
LiBUaGUgZGVjb2RlciBNVVNUIGJlCisgICAgICAgICAgICBjYXBhYmxlIG9mIGRlY29kaW5nIGV2
ZXJ5IHJlY2VpdmVkIGNsb2NrIHJhdGUuIEFuIGV4YW1wbGUKKyAgICAgICAgICAgIGlzIHNob3du
IGJlbG93OgorCisgICAgICAgICAgICA8ZmlndXJlPgorICAgICAgICAgICAgICA8YXJ0d29yaz4K
KyAgICAgICAgICAgICAgICA8IVtDREFUQVsKKyAgICBtPWF1ZGlvIDU0MzEyIFJUUC9BVlAgMTAw
CisgICAgYT1ydHBtYXA6MTAwIG9wdXMvNDgwMDAvMgorICAgICAgICAgICAgICAgIF1dPgorICAg
ICAgICAgICAgICA8L2FydHdvcms+CisgICAgICAgICAgICA8L2ZpZ3VyZT4KKyAgICAgICAgICAg
IDwvdD4KKworICAgICAgICAgICAgPHQ+VGhlICJwdGltZSIgYW5kICJtYXhwdGltZSIgcGFyYW1l
dGVycyBhcmUgdW5pZGlyZWN0aW9uYWwKKyAgICAgICAgICAgIHJlY2VpdmUtb25seSBwYXJhbWV0
ZXJzIGFuZCB0eXBpY2FsbHkgd2lsbCBub3QgY29tcHJvbWlzZQorICAgICAgICAgICAgaW50ZXJv
cGVyYWJpbGl0eTsgaG93ZXZlciwgc29tZSB2YWx1ZXMgbWlnaHQgY2F1c2UgYXBwbGljYXRpb24K
KyAgICAgICAgICAgIHBlcmZvcm1hbmNlIHRvIHN1ZmZlci4gPHhyZWYKKyAgICAgICAgICAgIHRh
cmdldD0iUkZDMzI2NCIvPiBkZWZpbmVzIHRoZSBTRFAgb2ZmZXItYW5zd2VyIGhhbmRsaW5nIG9m
IHRoZQorICAgICAgICAgICAgInB0aW1lIiBwYXJhbWV0ZXIuIFRoZSAibWF4cHRpbWUiIHBhcmFt
ZXRlciBNVVNUIGJlIGhhbmRsZWQgaW4gdGhlCisgICAgICAgICAgICBzYW1lIHdheS48L3Q+CisK
KyAgICAgICAgICAgIDx0PgorICAgICAgICAgICAgICBUaGUgIm1heHBsYXliYWNrcmF0ZSIgcGFy
YW1ldGVyIGlzIGEgdW5pZGlyZWN0aW9uYWwgcmVjZWl2ZS1vbmx5CisgICAgICAgICAgICAgIHBh
cmFtZXRlciB0aGF0IHJlZmxlY3RzIGxpbWl0YXRpb25zIG9mIHRoZSBsb2NhbCByZWNlaXZlci4g
V2hlbgorICAgICAgICAgICAgICBzZW5kaW5nIHRvIGEgc2luZ2xlIGRlc3RpbmF0aW9uLCBhIHNl
bmRlciBNVVNUIE5PVCB1c2UgYW4gYXVkaW8KKyAgICAgICAgICAgICAgYmFuZHdpZHRoIGhpZ2hl
ciB0aGFuIG5lY2Vzc2FyeSB0byBtYWtlIGZ1bGwgdXNlIG9mIGF1ZGlvIHNhbXBsZWQgYXQKKyAg
ICAgICAgICAgICAgYSBzYW1wbGluZyByYXRlIG9mICJtYXhwbGF5YmFja3JhdGUiLiBHYXRld2F5
cyBvciBzZW5kZXJzIHRoYXQKKyAgICAgICAgICAgICAgYXJlIHNlbmRpbmcgdGhlIHNhbWUgZW5j
b2RlZCBhdWRpbyB0byBtdWx0aXBsZSBkZXN0aW5hdGlvbnMKKyAgICAgICAgICAgICAgU0hPVUxE
IE5PVCB1c2UgYW4gYXVkaW8gYmFuZHdpZHRoIGhpZ2hlciB0aGFuIG5lY2Vzc2FyeSB0bworICAg
ICAgICAgICAgICByZXByZXNlbnQgYXVkaW8gc2FtcGxlZCBhdCAibWF4cGxheWJhY2tyYXRlIiwg
YXMgdGhpcyB3b3VsZCBsZWFkCisgICAgICAgICAgICAgIHRvIGluZWZmaWNpZW50IHVzZSBvZiBu
ZXR3b3JrIHJlc291cmNlcy4KKyAgICAgICAgICAgICAgVGhlICJtYXhwbGF5YmFja3JhdGUiIHBh
cmFtZXRlciBkb2VzIG5vdAorICAgICAgICAgICAgICBhZmZlY3QgaW50ZXJvcGVyYWJpbGl0eS4g
QWxzbywgdGhpcyBwYXJhbWV0ZXIgU0hPVUxEIE5PVCBiZSB1c2VkCisgICAgICAgICAgICAgIHRv
IGFkanVzdCB0aGUgYXVkaW8gYmFuZHdpZHRoIGFzIGEgZnVuY3Rpb24gb2YgdGhlIGJpdHJhdGUs
IGFzIHRoaXMKKyAgICAgICAgICAgICAgaXMgdGhlIHJlc3BvbnNpYmlsaXR5IG9mIHRoZSBPcHVz
IGVuY29kZXIgaW1wbGVtZW50YXRpb24uCisgICAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICAg
IDx0PlRoZSAibWF4YXZlcmFnZWJpdHJhdGUiIHBhcmFtZXRlciBpcyBhIHVuaWRpcmVjdGlvbmFs
IHJlY2VpdmUtb25seQorICAgICAgICAgICAgcGFyYW1ldGVyIHRoYXQgcmVmbGVjdHMgbGltaXRh
dGlvbnMgb2YgdGhlIGxvY2FsIHJlY2VpdmVyLiBUaGUgc2VuZGVyCisgICAgICAgICAgICBvZiB0
aGUgb3RoZXIgc2lkZSBNVVNUIE5PVCBzZW5kIHdpdGggYW4gYXZlcmFnZSBiaXRyYXRlIGhpZ2hl
ciB0aGFuCisgICAgICAgICAgICAibWF4YXZlcmFnZWJpdHJhdGUiIGFzIGl0IG1pZ2h0IG92ZXJs
b2FkIHRoZSBuZXR3b3JrIGFuZC9vcgorICAgICAgICAgICAgcmVjZWl2ZXIuIFRoZSAibWF4YXZl
cmFnZWJpdHJhdGUiIHBhcmFtZXRlciB0eXBpY2FsbHkgd2lsbCBub3QKKyAgICAgICAgICAgIGNv
bXByb21pc2UgaW50ZXJvcGVyYWJpbGl0eTsgaG93ZXZlciwgc29tZSB2YWx1ZXMgbWlnaHQgY2F1
c2UKKyAgICAgICAgICAgIGFwcGxpY2F0aW9uIHBlcmZvcm1hbmNlIHRvIHN1ZmZlciwgYW5kIG91
Z2h0IHRvIGJlIHNldCB3aXRoCisgICAgICAgICAgICBjYXJlLjwvdD4KKworICAgICAgICAgICAg
PHQ+VGhlICJzcHJvcC1tYXhjYXB0dXJlcmF0ZSIgYW5kICJzcHJvcC1zdGVyZW8iIHBhcmFtZXRl
cnMgYXJlCisgICAgICAgICAgICB1bmlkaXJlY3Rpb25hbCBzZW5kZXItb25seSBwYXJhbWV0ZXJz
IHRoYXQgcmVmbGVjdCBsaW1pdGF0aW9ucyBvZgorICAgICAgICAgICAgdGhlIHNlbmRlciBzaWRl
LgorICAgICAgICAgICAgVGhleSBhbGxvdyB0aGUgcmVjZWl2ZXIgdG8gc2V0IHVwIGEgcmVkdWNl
ZC1jb21wbGV4aXR5IGF1ZGlvCisgICAgICAgICAgICBwcm9jZXNzaW5nIHBpcGVsaW5lIGlmIHRo
ZSAgc2VuZGVyIGlzIG5vdCBwbGFubmluZyB0byB1c2UgdGhlIGZ1bGwKKyAgICAgICAgICAgIHJh
bmdlIG9mIE9wdXMncyBjYXBhYmlsaXRpZXMuCisgICAgICAgICAgICBOZWl0aGVyICJzcHJvcC1t
YXhjYXB0dXJlcmF0ZSIgbm9yICJzcHJvcC1zdGVyZW8iIGFmZmVjdAorICAgICAgICAgICAgaW50
ZXJvcGVyYWJpbGl0eSBhbmQgdGhlIHJlY2VpdmVyIE1VU1QgYmUgY2FwYWJsZSBvZiByZWNlaXZp
bmcgYW55IHNpZ25hbC4KKyAgICAgICAgICAgIDwvdD4KKworICAgICAgICAgICAgPHQ+CisgICAg
ICAgICAgICAgIFRoZSAic3RlcmVvIiBwYXJhbWV0ZXIgaXMgYSB1bmlkaXJlY3Rpb25hbCByZWNl
aXZlLW9ubHkKKyAgICAgICAgICAgICAgcGFyYW1ldGVyLiBXaGVuIHNlbmRpbmcgdG8gYSBzaW5n
bGUgZGVzdGluYXRpb24sIGEgc2VuZGVyIE1VU1QKKyAgICAgICAgICAgICAgTk9UIHVzZSBzdGVy
ZW8gd2hlbiAic3RlcmVvIiBpcyAwLiBHYXRld2F5cyBvciBzZW5kZXJzIHRoYXQgYXJlCisgICAg
ICAgICAgICAgIHNlbmRpbmcgdGhlIHNhbWUgZW5jb2RlZCBhdWRpbyB0byBtdWx0aXBsZSBkZXN0
aW5hdGlvbnMgU0hPVUxECisgICAgICAgICAgICAgIE5PVCB1c2Ugc3RlcmVvIHdoZW4gInN0ZXJl
byIgaXMgMCwgYXMgdGhpcyB3b3VsZCBsZWFkIHRvCisgICAgICAgICAgICAgIGluZWZmaWNpZW50
IHVzZSBvZiBuZXR3b3JrIHJlc291cmNlcy4gVGhlICJzdGVyZW8iIHBhcmFtZXRlciBkb2VzCisg
ICAgICAgICAgICAgIG5vdCBhZmZlY3QgaW50ZXJvcGVyYWJpbGl0eS4KKyAgICAgICAgICAgIDwv
dD4KKworICAgICAgICAgICAgPHQ+CisgICAgICAgICAgICAgIFRoZSAiY2JyIiBwYXJhbWV0ZXIg
aXMgYSB1bmlkaXJlY3Rpb25hbCByZWNlaXZlLW9ubHkKKyAgICAgICAgICAgICAgcGFyYW1ldGVy
LgorICAgICAgICAgICAgPC90PgorCisgICAgICAgICAgICA8dD5UaGUgInVzZWluYmFuZGZlYyIg
cGFyYW1ldGVyIGlzIGEgdW5pZGlyZWN0aW9uYWwgcmVjZWl2ZS1vbmx5CisgICAgICAgICAgICBw
YXJhbWV0ZXIuPC90PgorCisgICAgICAgICAgICA8dD5UaGUgInVzZWR0eCIgcGFyYW1ldGVyIGlz
IGEgdW5pZGlyZWN0aW9uYWwgcmVjZWl2ZS1vbmx5CisgICAgICAgICAgICBwYXJhbWV0ZXIuPC90
PgorCisgICAgICAgICAgICA8dD5BbnkgdW5rbm93biBwYXJhbWV0ZXIgaW4gYW4gb2ZmZXIgTVVT
VCBiZSBpZ25vcmVkIGJ5IHRoZSByZWNlaXZlcgorICAgICAgICAgICAgYW5kIE1VU1QgYmUgcmVt
b3ZlZCBmcm9tIHRoZSBhbnN3ZXIuPC90PgorCisgICAgICAgICAgPC9saXN0PjwvdD4KKyAgICAg
IAorICAgICAgICA8dD4KKwkgIFRoZSBPcHVzIHBhcmFtZXRlcnMgaW4gYW4gU0RQIE9mZmVyL0Fu
c3dlciBleGNoYW5nZSBhcmUgY29tcGxldGVseQorICAgICAgICAgIG9ydGhvZ29uYWwsIGFuZCB0
aGVyZSBpcyBubyByZWxhdGlvbnNoaXAgYmV0d2VlbiB0aGUgU0RQIE9mZmVyIGFuZAorICAgICAg
ICAgIHRoZSBBbnN3ZXIuCisgICAgICAgIDwvdD4KKyAgICAgIDwvc2VjdGlvbj4KKworICAgICAg
PHNlY3Rpb24gdGl0bGU9J0RlY2xhcmF0aXZlIFNEUCBDb25zaWRlcmF0aW9ucyBmb3IgT3B1cyc+
CisKKyAgICAgICAgPHQ+Rm9yIGRlY2xhcmF0aXZlIHVzZSBvZiBTRFAgc3VjaCBhcyBpbiBTZXNz
aW9uIEFubm91bmNlbWVudCBQcm90b2NvbAorICAgICAgICAoU0FQKSwgPHhyZWYgdGFyZ2V0PSJS
RkMyOTc0Ii8+LCBhbmQgUlRTUCwgPHhyZWYgdGFyZ2V0PSJSRkMyMzI2Ii8+LCBmb3IKKyAgICAg
ICAgT3B1cywgdGhlIGZvbGxvd2luZyBuZWVkcyB0byBiZSBjb25zaWRlcmVkOjwvdD4KKworICAg
ICAgICA8dD48bGlzdCBzdHlsZT0ic3ltYm9scyI+CisKKyAgICAgICAgICA8dD5UaGUgdmFsdWVz
IGZvciAibWF4cHRpbWUiLCAicHRpbWUiLCAibWF4cGxheWJhY2tyYXRlIiwgYW5kCisgICAgICAg
ICAgIm1heGF2ZXJhZ2ViaXRyYXRlIiBvdWdodCB0byBiZSBzZWxlY3RlZCBjYXJlZnVsbHkgdG8g
ZW5zdXJlIHRoYXQgYQorICAgICAgICAgIHJlYXNvbmFibGUgcGVyZm9ybWFuY2UgY2FuIGJlIGFj
aGlldmVkIGZvciB0aGUgcGFydGljaXBhbnRzIG9mIGEgc2Vzc2lvbi48L3Q+CisKKyAgICAgICAg
ICA8dD4KKyAgICAgICAgICAgIFRoZSB2YWx1ZXMgZm9yICJtYXhwdGltZSIsICJwdGltZSIsIGFu
ZCBvZiB0aGUgcGF5bG9hZAorICAgICAgICAgICAgZm9ybWF0IGNvbmZpZ3VyYXRpb24gYXJlIHJl
Y29tbWVuZGF0aW9ucyBieSB0aGUgZGVjb2Rpbmcgc2lkZSB0byBlbnN1cmUKKyAgICAgICAgICAg
IHRoZSBiZXN0IHBlcmZvcm1hbmNlIGZvciB0aGUgZGVjb2Rlci4KKyAgICAgICAgICA8L3Q+CisK
KyAgICAgICAgICA8dD5BbGwgb3RoZXIgcGFyYW1ldGVycyBvZiB0aGUgcGF5bG9hZCBmb3JtYXQg
Y29uZmlndXJhdGlvbiBhcmUgZGVjbGFyYXRpdmUKKyAgICAgICAgICBhbmQgYSBwYXJ0aWNpcGFu
dCBNVVNUIHVzZSB0aGUgY29uZmlndXJhdGlvbnMgdGhhdCBhcmUgcHJvdmlkZWQgZm9yCisgICAg
ICAgICAgdGhlIHNlc3Npb24uIE1vcmUgdGhhbiBvbmUgY29uZmlndXJhdGlvbiBjYW4gYmUgcHJv
dmlkZWQgaWYgbmVjZXNzYXJ5CisgICAgICAgICAgYnkgZGVjbGFyaW5nIG11bHRpcGxlIFJUUCBw
YXlsb2FkIHR5cGVzOyBob3dldmVyLCB0aGUgbnVtYmVyIG9mIHR5cGVzCisgICAgICAgICAgb3Vn
aHQgdG8gYmUga2VwdCBzbWFsbC48L3Q+CisgICAgICAgIDwvbGlzdD48L3Q+CisgICAgICA8L3Nl
Y3Rpb24+CisgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIHRpdGxlPSdTZWN1cml0eSBDb25z
aWRlcmF0aW9ucycgYW5jaG9yPSdzZWN1cml0eS1jb25zaWRlcmF0aW9ucyc+CisKKyAgICAgIDx0
PlVzZSBvZiB2YXJpYWJsZSBiaXRyYXRlIChWQlIpIGlzIHN1YmplY3QgdG8gdGhlIHNlY3VyaXR5
IGNvbnNpZGVyYXRpb25zIGluCisgICAgICA8eHJlZiB0YXJnZXQ9IlJGQzY1NjIiLz4uPC90Pgor
CisgICAgICA8dD5SVFAgcGFja2V0cyB1c2luZyB0aGUgcGF5bG9hZCBmb3JtYXQgZGVmaW5lZCBp
biB0aGlzIHNwZWNpZmljYXRpb24KKyAgICAgIGFyZSBzdWJqZWN0IHRvIHRoZSBzZWN1cml0eSBj
b25zaWRlcmF0aW9ucyBkaXNjdXNzZWQgaW4gdGhlIFJUUAorICAgICAgc3BlY2lmaWNhdGlvbiA8
eHJlZiB0YXJnZXQ9IlJGQzM1NTAiLz4sIGFuZCBpbiBhbnkgYXBwbGljYWJsZSBSVFAgcHJvZmls
ZSBzdWNoIGFzCisgICAgICBSVFAvQVZQIDx4cmVmIHRhcmdldD0iUkZDMzU1MSIvPiwgUlRQL0FW
UEYgPHhyZWYgdGFyZ2V0PSJSRkM0NTg1Ii8+LAorICAgICAgUlRQL1NBVlAgPHhyZWYgdGFyZ2V0
PSJSRkMzNzExIi8+IG9yIFJUUC9TQVZQRiA8eHJlZiB0YXJnZXQ9IlJGQzUxMjQiLz4uCisgICAg
ICBIb3dldmVyLCBhcyAiU2VjdXJpbmcgdGhlIFJUUCBQcm90b2NvbCBGcmFtZXdvcms6CisgICAg
ICBXaHkgUlRQIERvZXMgTm90IE1hbmRhdGUgYSBTaW5nbGUgTWVkaWEgU2VjdXJpdHkgU29sdXRp
b24iCisgICAgICA8eHJlZiB0YXJnZXQ9IlJGQzcyMDIiLz4gZGlzY3Vzc2VzLCBpdCBpcyBub3Qg
YW4gUlRQIHBheWxvYWQKKyAgICAgIGZvcm1hdCdzIHJlc3BvbnNpYmlsaXR5IHRvIGRpc2N1c3Mg
b3IgbWFuZGF0ZSB3aGF0IHNvbHV0aW9ucyBhcmUgdXNlZAorICAgICAgdG8gbWVldCB0aGUgYmFz
aWMgc2VjdXJpdHkgZ29hbHMgbGlrZSBjb25maWRlbnRpYWxpdHksIGludGVncml0eSBhbmQKKyAg
ICAgIHNvdXJjZSBhdXRoZW50aWNpdHkgZm9yIFJUUCBpbiBnZW5lcmFsLiAgVGhpcyByZXNwb25z
aWJpbGl0eSBsYXlzIG9uCisgICAgICBhbnlvbmUgdXNpbmcgUlRQIGluIGFuIGFwcGxpY2F0aW9u
LiAgVGhleSBjYW4gZmluZCBndWlkYW5jZSBvbgorICAgICAgYXZhaWxhYmxlIHNlY3VyaXR5IG1l
Y2hhbmlzbXMgYW5kIGltcG9ydGFudCBjb25zaWRlcmF0aW9ucyBpbiBPcHRpb25zCisgICAgICBm
b3IgU2VjdXJpbmcgUlRQIFNlc3Npb25zIFtJLUQuaWV0Zi1hdnRjb3JlLXJ0cC1zZWN1cml0eS1v
cHRpb25zXS4KKyAgICAgIEFwcGxpY2F0aW9ucyBTSE9VTEQgdXNlIG9uZSBvciBtb3JlIGFwcHJv
cHJpYXRlIHN0cm9uZyBzZWN1cml0eQorICAgICAgbWVjaGFuaXNtcy48L3Q+CisKKyAgICAgIDx0
PlRoaXMgcGF5bG9hZCBmb3JtYXQgYW5kIHRoZSBPcHVzIGVuY29kaW5nIGRvIG5vdCBleGhpYml0
IGFueQorICAgICAgc2lnbmlmaWNhbnQgbm9uLXVuaWZvcm1pdHkgaW4gdGhlIHJlY2VpdmVyLWVu
ZCBjb21wdXRhdGlvbmFsIGxvYWQgYW5kIHRodXMKKyAgICAgIGFyZSB1bmxpa2VseSB0byBwb3Nl
IGEgZGVuaWFsLW9mLXNlcnZpY2UgdGhyZWF0IGR1ZSB0byB0aGUgcmVjZWlwdCBvZgorICAgICAg
cGF0aG9sb2dpY2FsIGRhdGFncmFtcy48L3Q+CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rp
b24gdGl0bGU9J0Fja25vd2xlZGdlbWVudHMnPgorICAgIDx0Pk1hbnkgcGVvcGxlIGhhdmUgbWFk
ZSB1c2VmdWwgY29tbWVudHMgYW5kIHN1Z2dlc3Rpb25zIGNvbnRyaWJ1dGluZyB0byB0aGlzIGRv
Y3VtZW50LiAKKyAgICAgIEluIHBhcnRpY3VsYXIsIHdlIHdvdWxkIGxpa2UgdG8gdGhhbmsKKyAg
ICAgIFRpbmEgbGUgR3JhbmQsIEN1bGxlbiBKZW5uaW5ncywgSm9uYXRoYW4gTGVubm94LCBHcmVn
b3J5IE1heHdlbGwsIENvbGluIFBlcmtpbnMsIEphbiBTa29nbHVuZCwKKyAgICAgIFRpbW90aHkg
Qi4gVGVycmliZXJyeSwgTWFydGluIFRob21wc29uLCBKdXN0aW4gVWJlcnRpLCBNYWdudXMgV2Vz
dGVybHVuZCwgYW5kIE1vIFphbmF0eS48L3Q+CisgICAgPC9zZWN0aW9uPgorICA8L21pZGRsZT4K
KworICA8YmFjaz4KKyAgICA8cmVmZXJlbmNlcyB0aXRsZT0iTm9ybWF0aXZlIFJlZmVyZW5jZXMi
PgorICAgICAgJnJmYzIxMTk7CisgICAgICAmcmZjMzM4OTsKKyAgICAgICZyZmMzNTUwOworICAg
ICAgJnJmYzM3MTE7CisgICAgICAmcmZjMzU1MTsKKyAgICAgICZyZmM2ODM4OworICAgICAgJnJm
YzQ4NTU7CisgICAgICAmcmZjNDU2NjsKKyAgICAgICZyZmMzMjY0OworICAgICAgJnJmYzIzMjY7
CisgICAgICAmcmZjNTU3NjsKKyAgICAgICZyZmM2NTYyOworICAgICAgJnJmYzY3MTY7CisgICAg
PC9yZWZlcmVuY2VzPgorCisgICAgPHJlZmVyZW5jZXMgdGl0bGU9IkluZm9ybWF0aXZlIFJlZmVy
ZW5jZXMiPgorICAgICAgJnJmYzI5NzQ7CisgICAgICAmcmZjNDU4NTsKKyAgICAgICZyZmM1MTI0
OworICAgICAgJnJmYzU0MDU7CisgICAgICAmcmZjNzIwMjsKKyAgICAgIAorICAgICAgPHJlZmVy
ZW5jZSBhbmNob3I9J3JtY2F0JyB0YXJnZXQ9J2h0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcv
d2cvcm1jYXQvZG9jdW1lbnRzLyc+CisgICAgICAgIDxmcm9udD4KKyAgICAgICAgICA8dGl0bGU+
cm1jYXQgZG9jdW1lbnRzPC90aXRsZT4KKyAgICAgICAgICA8YXV0aG9yLz4KKyAgICAgICAgICA8
ZGF0ZS8+CisgICAgICAgICAgPGFic3RyYWN0PgorICAgICAgICAgICAgPHQ+PC90PgorICAgICAg
ICAgIDwvYWJzdHJhY3Q+PC9mcm9udD4KKyAgICAgIDwvcmVmZXJlbmNlPgorCisKKyAgICA8L3Jl
ZmVyZW5jZXM+CisKKyAgPC9iYWNrPgorPC9yZmM+CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9vcHVzX2luX2lz
b2JtZmYuY3NzIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9kb2Mvb3B1c19pbl9pc29ibWZmLmNzcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZmZlOGY0NWFl
OTk1OWJiZDljODRmOTZlYzgzMmE5YTBhZTVlMGRjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1
c19pbl9pc29ibWZmLmNzcwpAQCAtMCwwICsxLDYwIEBACisvKiBOb3JtYWwgbGlua3MgKi8KKy5u
b3JtYWxfbGluayBhOmxpbmsKK3sKKyAgICBjb2xvciA6IHllbGxvdzsKK30KKy5ub3JtYWxfbGlu
ayBhOnZpc2l0ZWQKK3sKKyAgICBjb2xvciA6IGdyZWVuOworfQorCisvKiBCb3hlcyAqLworLnBy
ZQoreworCXdoaXRlLXNwYWNlOiBwcmU7ICAgICAgICAgICAvKiBDU1MgMi4wICovCisJd2hpdGUt
c3BhY2U6IHByZS13cmFwOyAgICAgIC8qIENTUyAyLjEgKi8KKwl3aGl0ZS1zcGFjZTogLXByZS13
cmFwOyAgICAgLyogT3BlcmEgNC02ICovCisJd2hpdGUtc3BhY2U6IC1vLXByZS13cmFwOyAgIC8q
IE9wZXJhIDcgKi8KKwl3aGl0ZS1zcGFjZTogLW1vei1wcmUtd3JhcDsgLyogTW96aWxsYSAqLwor
CXdoaXRlLXNwYWNlOiAtaHAtcHJlLXdyYXA7ICAvKiBIUCBQcmludGVycyAqLworCXdvcmQtd3Jh
cCAgOiBicmVhay13b3JkOyAgICAvKiBJRSA1KyAqLworfQorCisudGl0bGVfYm94Cit7CisgICAg
d2lkdGggICAgICAgICAgICA6IDQ3MHB4OworICAgIGhlaWdodCAgICAgICAgICAgOiA3MHB4Owor
ICAgIG1hcmdpbiAgICAgICAgICAgOiAycHggNTBweCAycHggMnB4OworICAgIHBhZGRpbmcgICAg
ICAgICAgOiAxMHB4OworICAgIGJvcmRlciAgICAgICAgICAgOiAxcHggc29saWQgYmxhY2s7Cisg
ICAgYmFja2dyb3VuZC1jb2xvciA6ICM2NjY2NjY7CisgICAgd2hpdGUtc3BhY2UgICAgICA6IHBy
ZTsKKyAgICBmbG9hdCAgICAgICAgICAgIDogbGVmdDsKKyAgICB0ZXh0LWFsaWduICAgICAgIDog
Y2VudGVyOworICAgIGNvbG9yICAgICAgICAgICAgOiAjQzBDMEMwOworICAgIGZvbnQtc2l6ZSAg
ICAgICAgOiA1MHB0OworICAgIGZvbnQtc3R5bGUgICAgICAgOiBpdGFsaWM7Cit9CisKKy5zdWJp
bmRleF9ib3gKK3sKKyAgICBtYXJnaW4gICAgICAgICAgIDogNXB4OworICAgIHBhZGRpbmcgICAg
ICAgICAgOiAxNHB4IDIycHg7CisgICAgYm9yZGVyICAgICAgICAgICA6IDFweCBzb2xpZCBibGFj
azsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yIDogIzc3ODg3NzsKKyAgICBmbG9hdCAgICAgICAgICAg
IDogbGVmdDsKKyAgICB0ZXh0LWFsaWduICAgICAgIDogY2VudGVyOworICAgIGNvbG9yICAgICAg
ICAgICAgOiAjMTE1NTU1OworICAgIGZvbnQtc2l6ZSAgICAgICAgOiAzMnB0OworfQorCisuZnJh
bWVfYm94Cit7CisgICAgbWFyZ2luICAgICAgICAgICA6IDEwcHg7CisgICAgcGFkZGluZyAgICAg
ICAgICA6IDEwcHg7CisgICAgYm9yZGVyICAgICAgICAgICA6IDBweDsKKyAgICBiYWNrZ3JvdW5k
LWNvbG9yIDogIzA4NDA0MDsKKyAgICB0ZXh0LWFsaWduICAgICAgIDogbGVmdDsKKyAgICBjb2xv
ciAgICAgICAgICAgIDogI0MwQzBDMDsKKyAgICBmb250LWZhbWlseSAgICAgIDogbW9ub3NwYWNl
OworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1c19pbl9pc29ibWZmLmh0bWwgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9vcHVzX2luX2lz
b2JtZmYuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMTE3NWRiZmRkZTI1ZTgzNzJlZDZmYzRkMDQwMWZjYTky
MmM1OTllCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1c19pbl9pc29ibWZmLmh0bWwKQEAgLTAs
MCArMSw2ODQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAx
Ly9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L3N0cmljdC5kdGQiPgorPGh0bWw+Cisg
ICAgPGhlYWQ+CisgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3Mi
IGhyZWY9Im9wdXNfaW5faXNvYm1mZi5jc3MiLz4KKyAgICAgICAgPG1ldGEgaHR0cC1lcXVpdj0i
Q29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiIC8+CisgICAg
ICAgIDx0aXRsZT5FbmNhcHN1bGF0aW9uIG9mIE9wdXMgaW4gSVNPIEJhc2UgTWVkaWEgRmlsZSBG
b3JtYXQ8L3RpdGxlPgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBiZ2NvbG9yPSIweDMzMzMzMyIg
dGV4dD0iIzYwQjBDMCI+CisgICAgICAgIDxiPjx1PkVuY2Fwc3VsYXRpb24gb2YgT3B1cyBpbiBJ
U08gQmFzZSBNZWRpYSBGaWxlIEZvcm1hdDwvdT48L2I+PGJyPgorICAgICAgICA8Zm9udCBzaXpl
PSIyIj5sYXN0IHVwZGF0ZWQ6IEFwcmlsIDI4LCAyMDE2PC9mb250Pjxicj4KKyAgICAgICAgPGJy
PgorICAgICAgICA8ZGl2IGNsYXNzPSJub3JtYWxfbGluayBwcmUgZnJhbWVfYm94Ij4KKworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmNhcHN1bGF0aW9uIG9mIE9wdXMgaW4gSVNP
IEJhc2UgTWVkaWEgRmlsZSBGb3JtYXQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBWZXJzaW9uIDAuNi44IChpbmNvbXBsZXRlKQorCisKK1RhYmxlIG9mIENvbnRlbnRz
Cis8YSBocmVmPSIjMSI+MTwvYT4gU2NvcGUKKzxhIGhyZWY9IiMyIj4yPC9hPiBOb3JtYXRpdmUg
UmVmZXJlbmNlcworPGEgaHJlZj0iIzMiPjM8L2E+IFRlcm1zIGFuZCBEZWZpbml0aW9ucworPGEg
aHJlZj0iIzQiPjQ8L2E+IERlc2lnbiBSdWxlcyBvZiBFbmNhcHN1bGF0aW9uCisgICAgPGEgaHJl
Zj0iIzQuMSI+NC4xPC9hPiBGaWxlIFR5cGUgSW5kZW50aWZpY2F0aW9uCisgICAgPGEgaHJlZj0i
IzQuMiI+NC4yPC9hPiBPdmVydmlldyBvZiBUcmFjayBTdHJ1Y3R1cmUKKyAgICA8YSBocmVmPSIj
NC4zIj40LjM8L2E+IERlZmluaXRpb25zIG9mIE9wdXMgc2FtcGxlCisgICAgICAgIDxhIGhyZWY9
IiM0LjMuMSI+NC4zLjE8L2E+IFNhbXBsZSBlbnRyeSBmb3JtYXQKKyAgICAgICAgPGEgaHJlZj0i
IzQuMy4yIj40LjMuMjwvYT4gT3B1cyBTcGVjaWZpYyBCb3gKKyAgICAgICAgPGEgaHJlZj0iIzQu
My4zIj40LjMuMzwvYT4gU2FtcGxlIGZvcm1hdAorICAgICAgICA8YSBocmVmPSIjNC4zLjQiPjQu
My40PC9hPiBEdXJhdGlvbiBvZiBPcHVzIHNhbXBsZQorICAgICAgICA8YSBocmVmPSIjNC4zLjUi
PjQuMy41PC9hPiBTdWItc2FtcGxlCisgICAgICAgIDxhIGhyZWY9IiM0LjMuNiI+NC4zLjY8L2E+
IFJhbmRvbSBBY2Nlc3MKKyAgICAgICAgICAgIDxhIGhyZWY9IiM0LjMuNi4xIj40LjMuNi4xPC9h
PiBSYW5kb20gQWNjZXNzIFBvaW50CisgICAgICAgICAgICA8YSBocmVmPSIjNC4zLjYuMiI+NC4z
LjYuMjwvYT4gUHJlLXJvbGwKKyAgICA8YSBocmVmPSIjNC40Ij40LjQ8L2E+IFRyaW1taW5nIG9m
IEFjdHVhbCBEdXJhdGlvbgorICAgIDxhIGhyZWY9IiM0LjUiPjQuNTwvYT4gQ2hhbm5lbCBMYXlv
dXQgKGluZm9ybWF0aXZlKQorICAgIDxhIGhyZWY9IiM0LjYiPjQuNjwvYT4gQmFzaWMgU3RydWN0
dXJlIChpbmZvcm1hdGl2ZSkKKyAgICAgICAgPGEgaHJlZj0iIzQuNi4xIj40LjYuMjwvYT4gSW5p
dGlhbCBNb3ZpZQorICAgICAgICA8YSBocmVmPSIjNC42LjIiPjQuNi4zPC9hPiBNb3ZpZSBGcmFn
bWVudHMKKyAgICA8YSBocmVmPSIjNC43Ij40Ljc8L2E+IEV4YW1wbGUgb2YgRW5jYXBzdWxhdGlv
biAoaW5mb3JtYXRpdmUpCis8YSBocmVmPSIjNSI+NTwvYT4gQXV0aG9yJ3MgQWRkcmVzcworCis8
YSBuYW1lPSIxIj48L2E+CisxIFNjb3BlCisgICAgVGhpcyBzcGVjaWZpY2F0aW9uIHNwZWNpZmll
cyB0aGUgZnVuZGFtZW50YWwgd2F5IG9mIHRoZSBlbmNhcHN1bGF0aW9uIG9mIE9wdXMgY29kZWQg
Yml0c3RyZWFtcyBpbiBJU08gQmFzZSBNZWRpYQorICAgIGZpbGUgZm9ybWF0IGFuZCBpdHMgZGVy
aXZhdGl2ZXMuIFRoZSBlbmNhcHN1bGF0aW9uIG9mIE9wdXMgY29kZWQgYml0c3RyZWFtcyBpbiBR
dWlja1RpbWUgZmlsZSBmb3JtYXQgaXMgb3V0c2lkZQorICAgIHRoZSBzY29wZSBvZiB0aGlzIHNw
ZWNpZmljYXRpb24uCisKKzxhIG5hbWU9IjIiPjwvYT4KKzIgTm9ybWF0aXZlIFJlZmVyZW5jZXMK
KyAgICBbMV0gSVNPL0lFQyAxNDQ5Ni0xMjoyMDE1IENvcnJlY3RlZCB2ZXJzaW9uCisgICAgICAg
IEluZm9ybWF0aW9uIHRlY2hub2xvZ3kg4oCUIENvZGluZyBvZiBhdWRpby12aXN1YWwgb2JqZWN0
cyDigJQgUGFydCAxMjogSVNPIGJhc2UgbWVkaWEgZmlsZSBmb3JtYXQKKworICAgIFsyXSBSRkMg
NjcxNgorICAgICAgICBEZWZpbml0aW9uIG9mIHRoZSBPcHVzIEF1ZGlvIENvZGVjCisKKyAgICBb
M10gZHJhZnQtaWV0Zi1jb2RlYy1vZ2dvcHVzLTA2CisgICAgICAgIE9nZyBFbmNhcHN1bGF0aW9u
IGZvciB0aGUgT3B1cyBBdWRpbyBDb2RlYworCis8YSBuYW1lPSIzIj48L2E+CiszIFRlcm1zIGFu
ZCBEZWZpbml0aW9ucworICAgIDMuMSBhY3RpdmUgdHJhY2sKKyAgICAgICAgZW5hYmxlZCB0cmFj
ayBmcm9tIHRoZSBub24tYWx0ZXJuYXRlIGdyb3VwIG9yIHNlbGVjdGVkIHRyYWNrIGZyb20gYWx0
ZXJuYXRlIGdyb3VwCisKKyAgICAzLjIgYWN0dWFsIGR1cmF0aW9uCisgICAgICAgIGR1cmF0aW9u
IGNvbnN0cnVjdGVkIGZyb20gdmFsaWQgc2FtcGxlcworCisgICAgMy4zIGVkaXQKKyAgICAgICAg
ZW50cnkgaW4gdGhlIEVkaXQgTGlzdCBCb3gKKworICAgIDMuNCBwYWRkZWQgc2FtcGxlcworICAg
ICAgICBQQ00gc2FtcGxlcyBhZnRlciBkZWNvZGluZyBPcHVzIHNhbXBsZShzKSB3aGljaCBhcmUg
bm90IHZhbGlkIHNhbXBsZXMKKyAgICAgICAgQW4gT3B1cyBiaXRzdHJlYW0gYWx3YXlzIGNvbnRh
aW5zIHRoZW0gcGFydGlhbGx5IGF0IHRoZSBiZWdpbm5pbmcgYW5kIG1heSBjb250YWluIHRoZW0g
aW4gcGFydCBhdCB0aGUgZW5kLCBhcworICAgICAgICBsb25nIGFzIG5vdCBwaHlzaWNhbGx5IHJl
bW92ZWQgeWV0IGF0IHRoZSBiZWdpbm5pbmcgYW5kL29yIHRoZSBlbmQuCisKKyAgICAzLjUgcHJp
bWluZyBzYW1wbGVzCisgICAgICAgIHBhZGRlZCBzYW1wbGVzIGF0IHRoZSBiZWdpbm5pbmcgb2Yg
dGhlIE9wdXMgYml0c3RyZWFtCisKKyAgICAzLjYgc2FtcGxlLWFjY3VyYXRlCisgICAgICAgIGZv
ciBhbnkgUENNIHNhbXBsZSwgYSB0aW1lc3RhbXAgZXhhY3RseSBtYXRjaGluZyBpdHMgc2FtcGxp
bmcgdGltZXN0YW1wIGlzIHByZXNlbnQgaW4gdGhlIG1lZGlhIHRpbWVsaW5lLgorCisgICAgMy43
IHZhbGlkIHNhbXBsZXMKKyAgICAgICAgUENNIHNhbXBsZXMgYWZ0ZXIgZGVjb2RpbmcgT3B1cyBz
YW1wbGUocykgY29ycmVzcG9uZGluZyB0byBpbnB1dCBQQ00gc2FtcGxlcworCis8YSBuYW1lPSI0
Ij48L2E+Cis0IERlc2lnbiBSdWxlcyBvZiBFbmNhcHN1bGF0aW9uCisgICAgNC4xIEZpbGUgVHlw
ZSBJbmRlbnRpZmljYXRpb248YSBuYW1lPSI0LjEiPjwvYT4KKyAgICAgICAgVGhpcyBzcGVjaWZp
Y2F0aW9uIGRvZXMgbm90IGRlZmluZSBhbnkgYnJhbmQgdG8gZGVjbGFyZSBmaWxlcyBhcmUgY29u
Zm9ybWFudCB0byB0aGlzIHNwZWNpZmljYXRpb24uIEhvd2V2ZXIsCisgICAgICAgIGZpbGVzIGNv
bmZvcm1hbnQgdG8gdGhpcyBzcGVjaWZpY2F0aW9uIHNoYWxsIGNvbnRhaW4gYXQgbGVhc3Qgb25l
IGJyYW5kLCB3aGljaCBzdXBwb3J0cyB0aGUgcmVxdWlyZW1lbnRzIGFuZCB0aGUKKyAgICAgICAg
cmVxdWlyZW1lbnRzIGRlc2NyaWJlZCBpbiB0aGlzIGNsYXVzZSB3aXRob3V0IGNvbnRyYWRpY3Rp
b24sIGluIHRoZSBjb21wYXRpYmxlIGJyYW5kcyBsaXN0IG9mIHRoZSBGaWxlIFR5cGUgQm94Lgor
ICAgICAgICBBcyBhbiBleGFtcGxlLCB0aGUgbWluaW1hbCBzdXBwb3J0IG9mIHRoZSBlbmNhcHN1
bGF0aW9uIG9mIE9wdXMgYml0c3RyZWFtcyBpbiBJU08gQmFzZSBNZWRpYSBmaWxlIGZvcm1hdCBy
ZXF1aXJlcworICAgICAgICB0aGUgJ2lzbzInIGJyYW5kIGluIHRoZSBjb21wYXRpYmxlIGJyYW5k
cyBsaXN0IHNpbmNlIHN1cHBvcnQgb2Ygcm9sbCBncm91cHMgaXMgcmVxdWlyZWQuCis8YSBuYW1l
PSI0LjIiPjwvYT4KKyAgICA0LjIgT3ZlcnZpZXcgb2YgVHJhY2sgU3RydWN0dXJlCisgICAgICAg
IFRoaXMgY2xhdXNlIHN1bW1hcml6ZXMgcmVxdWlyZW1lbnRzIG9mIHRoZSBlbmNhcHN1bGF0aW9u
IG9mIE9wdXMgY29kZWQgYml0c3RyZWFtIGFzIG1lZGlhIGRhdGEgaW4gYXVkaW8gdHJhY2tzCisg
ICAgICAgIGluIGZpbGUgZm9ybWF0cyBjb21wbGlhbnQgd2l0aCB0aGUgSVNPIEJhc2UgTWVkaWEg
RmlsZSBGb3JtYXQuIFRoZSBkZXRhaWxzIGFyZSBkZXNjcmliZWQgaW4gY2xhdXNlcyBhZnRlciB0
aGlzCisgICAgICAgIGNsYXVzZS4KKyAgICAgICAgICAgICsgVGhlIGhhbmRsZXJfdHlwZSBmaWVs
ZCBpbiB0aGUgSGFuZGxlciBSZWZlcmVuY2UgQm94IHNoYWxsIGJlIHNldCB0byAnc291bicuCisg
ICAgICAgICAgICArIFRoZSBNZWRpYSBJbmZvcm1hdGlvbiBCb3ggc2hhbGwgY29udGFpbiB0aGUg
U291bmQgTWVkaWEgSGVhZGVyIEJveC4KKyAgICAgICAgICAgICsgVGhlIGNvZGluZ25hbWUgb2Yg
dGhlIHNhbXBsZSBlbnRyeSBpcyAnT3B1cycuCisgICAgICAgICAgICAgICAgVGhpcyBzcGVjaWZp
Y2F0aW9uIGRvZXMgbm90IGRlZmluZSBhbnkgZW5jYXBzdWxhdGlvbiB1c2luZyBNUDRBdWRpb1Nh
bXBsZUVudHJ5IHdpdGggb2JqZWN0VHlwZUluZGljYXRpb24KKyAgICAgICAgICAgICAgICBzcGVj
aWZpZWQgYnkgdGhlIE1QRUctNCBSZWdpc3RyYXRpb24gQXV0aG9yaXR5IChodHRwOi8vd3d3Lm1w
NHJhLm9yZy8pLgorICAgICAgICAgICAgICAgIFNlZSA0LjMuMSBTYW1wbGUgZW50cnkgZm9ybWF0
IHRvIGdldCB0aGUgZGV0YWlscyBhYm91dCB0aGUgc2FtcGxlIGVudHJ5LgorICAgICAgICAgICAg
KyBUaGUgJ2RPcHMnIGJveCBpcyBhZGRlZCB0byB0aGUgc2FtcGxlIGVudHJ5IHRvIGNvbnZleSBp
bml0aWFsaXppbmcgaW5mb3JtYXRpb24gZm9yIHRoZSBkZWNvZGVyLgorICAgICAgICAgICAgICAg
IFNlZSA0LjMuMiBPcHVzIFNwZWNpZmljIEJveCB0byBnZXQgdGhlIGRldGFpbHMuCisgICAgICAg
ICAgICArIEFuIE9wdXMgc2FtcGxlIGlzIGV4YWN0bHkgb25lIE9wdXMgcGFja2V0IGZvciBlYWNo
IG9mIGRpZmZlcmVudCBPcHVzIGJpdHN0cmVhbXMuCisgICAgICAgICAgICAgICAgU2VlIDQuMy4z
IFNhbXBsZSBmb3JtYXQgdG8gZ2V0IHRoZSBkZXRhaWxzLgorICAgICAgICAgICAgKyBFdmVyeSBP
cHVzIHNhbXBsZSBpcyBhIHN5bmMgc2FtcGxlIGJ1dCByZXF1aXJlcyBwcmUtcm9sbCBmb3IgZXZl
cnkgcmFuZG9tIGFjY2VzcyB0byBnZXQgY29ycmVjdCBvdXRwdXQuCisgICAgICAgICAgICAgICAg
U2VlIDQuMy42IFJhbmRvbSBBY2Nlc3MgdG8gZ2V0IHRoZSBkZXRhaWxzLgorPGEgbmFtZT0iNC4z
Ij48L2E+CisgICAgNC4zIERlZmluaXRpb25zIG9mIE9wdXMgc2FtcGxlCisgICAgICAgIDQuMy4x
IFNhbXBsZSBlbnRyeSBmb3JtYXQ8YSBuYW1lPSI0LjMuMSI+PC9hPgorICAgICAgICAgICAgRm9y
IGFueSB0cmFjayBjb250YWluaW5nIE9wdXMgYml0c3RyZWFtcywgYXQgbGVhc3Qgb25lIHNhbXBs
ZSBlbnRyeSBkZXNjcmliaW5nIGNvcnJlc3BvbmRpbmcgT3B1cyBiaXRzdHJlYW0KKyAgICAgICAg
ICAgIHNoYWxsIGJlIHByZXNlbnQgaW5zaWRlIHRoZSBTYW1wbGUgVGFibGUgQm94LiBUaGlzIHZl
cnNpb24gb2YgdGhlIHNwZWNpZmljYXRpb24gZGVmaW5lcyBvbmx5IG9uZSBzYW1wbGUKKyAgICAg
ICAgICAgIGVudHJ5IGZvcm1hdCBuYW1lZCBPcHVzU2FtcGxlRW50cnkgd2hvc2UgY29kaW5nbmFt
ZSBpcyAnT3B1cycuIFRoaXMgc2FtcGxlIGVudHJ5IGluY2x1ZGVzIGV4YWN0bHkgb25lIE9wdXMK
KyAgICAgICAgICAgIFNwZWNpZmljIEJveCBkZWZpbmVkIGluIDQuMy4yIGFzIGEgbWFuZGF0b3J5
IGJveCBhbmQgaW5kaWNhdGVzIHRoYXQgT3B1cyBzYW1wbGVzIGRlc2NyaWJlZCBieSB0aGlzIHNh
bXBsZQorICAgICAgICAgICAgZW50cnkgYXJlIHN0b3JlZCBieSB0aGUgc2FtcGxlIGZvcm1hdCBk
ZXNjcmliZWQgaW4gNC4zLjMuCisKKyAgICAgICAgICAgIFRoZSBzeW50YXggYW5kIHNlbWFudGlj
cyBvZiB0aGUgT3B1c1NhbXBsZUVudHJ5IGlzIHNob3duIGFzIGZvbGxvd3MuCisKKyAgICAgICAg
ICAgIGNsYXNzIE9wdXNTYW1wbGVFbnRyeSgpIGV4dGVuZHMgQXVkaW9TYW1wbGVFbnRyeSAoJ09w
dXMnKXsKKyAgICAgICAgICAgICAgICBPcHVzU3BlY2lmaWNCb3goKTsKKyAgICAgICAgICAgIH0K
KworICAgICAgICAgICAgKyBjaGFubmVsY291bnQ6CisgICAgICAgICAgICAgICAgVGhlIGNoYW5u
ZWxjb3VudCBmaWVsZCBzaGFsbCBiZSBzZXQgdG8gdGhlIHN1bSBvZiB0aGUgdG90YWwgbnVtYmVy
IG9mIE9wdXMgYml0c3RyZWFtcyBhbmQgdGhlIG51bWJlcgorICAgICAgICAgICAgICAgIG9mIE9w
dXMgYml0c3RyZWFtcyBwcm9kdWNpbmcgdHdvIGNoYW5uZWxzLiBUaGlzIHZhbHVlIGlzIGluZGVu
dGljYWwgd2l0aCAoTStOKSwgd2hlcmUgTSBpcyB0aGUgdmFsdWUgb2YKKyAgICAgICAgICAgICAg
ICB0aGUgKkNvdXBsZWQgU3RyZWFtIENvdW50KiBmaWVsZCBhbmQgTiBpcyB0aGUgdmFsdWUgb2Yg
dGhlICpTdHJlYW0gQ291bnQqIGZpZWxkIGluIHRoZSAqQ2hhbm5lbCBNYXBwaW5nCisgICAgICAg
ICAgICAgICAgVGFibGUqIGluIHRoZSBpZGVudGlmaWNhdGlvbiBoZWFkZXIgZGVmaW5lZCBpbiBP
Z2cgT3B1cyBbM10uCisgICAgICAgICAgICArIHNhbXBsZXNpemU6CisgICAgICAgICAgICAgICAg
VGhlIHNhbXBsZXNpemUgZmllbGQgc2hhbGwgYmUgc2V0IHRvIDE2LgorICAgICAgICAgICAgKyBz
YW1wbGVyYXRlOgorICAgICAgICAgICAgICAgIFRoZSBzYW1wbGVyYXRlIGZpZWxkIHNoYWxsIGJl
IHNldCB0byA0ODAwMCZsdCZsdDE2LgorICAgICAgICAgICAgKyBPcHVzU3BlY2lmaWNCb3gKKyAg
ICAgICAgICAgICAgICBUaGlzIGJveCBjb250YWlucyBpbml0aWFsaXppbmcgaW5mb3JtYXRpb24g
Zm9yIHRoZSBkZWNvZGVyIGFzIGRlZmluZWQgaW4gNC4zLjIuCisKKyAgICAgICAgNC4zLjIgT3B1
cyBTcGVjaWZpYyBCb3g8YSBuYW1lPSI0LjMuMiI+PC9hPgorICAgICAgICAgICAgRXhhY3RseSBv
bmUgT3B1cyBTcGVjaWZpYyBCb3ggc2hhbGwgYmUgcHJlc2VudCBpbiBlYWNoIE9wdXNTYW1wbGVF
bnRyeS4KKyAgICAgICAgICAgIFRoZSBPcHVzIFNwZWNpZmljIEJveCBjb250YWlucyB0aGUgVmVy
c2lvbiBmaWVsZCBhbmQgdGhpcyBzcGVjaWZpY2F0aW9uIGRlZmluZXMgdmVyc2lvbiAwIG9mIHRo
aXMgYm94LgorICAgICAgICAgICAgSWYgaW5jb21wYXRpYmxlIGNoYW5nZXMgb2NjdXJlZCBpbiB0
aGUgZmllbGRzIGFmdGVyIHRoZSBWZXJzaW9uIGZpZWxkIHdpdGhpbiB0aGUgT3B1c1NwZWNpZmlj
Qm94IGluIHRoZQorICAgICAgICAgICAgZnV0dXJlIHZlcnNpb25zIG9mIHRoaXMgc3BlY2lmaWNh
dGlvbiwgYW5vdGhlciB2ZXJzaW9uIHdpbGwgYmUgZGVmaW5lZC4KKyAgICAgICAgICAgIFRoaXMg
Ym94IHJlZmVycyB0byBPZ2cgT3B1cyBbM10gYXQgbWFueSBwYXJ0cyBidXQgYWxsIHRoZSBkYXRh
IGFyZSBzdG9yZWQgYXMgYmlnLWVuZGlhbiBmb3JtYXQuCisKKyAgICAgICAgICAgIFRoZSBzeW50
YXggYW5kIHNlbWFudGljcyBvZiB0aGUgT3B1cyBTcGVjaWZpYyBCb3ggaXMgc2hvd24gYXMgZm9s
bG93cy4KKworICAgICAgICAgICAgY2xhc3MgQ2hhbm5lbE1hcHBpbmdUYWJsZSAodW5zaWduZWQg
aW50KDgpIE91dHB1dENoYW5uZWxDb3VudCl7CisgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50
KDgpIFN0cmVhbUNvdW50OworICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCg4KSBDb3VwbGVk
Q291bnQ7CisgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50KDggKiBPdXRwdXRDaGFubmVsQ291
bnQpIENoYW5uZWxNYXBwaW5nOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBhbGlnbmVk
KDgpIGNsYXNzIE9wdXNTcGVjaWZpY0JveCBleHRlbmRzIEJveCgnZE9wcycpeworICAgICAgICAg
ICAgICAgIHVuc2lnbmVkIGludCg4KSBWZXJzaW9uOworICAgICAgICAgICAgICAgIHVuc2lnbmVk
IGludCg4KSBPdXRwdXRDaGFubmVsQ291bnQ7CisgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50
KDE2KSBQcmVTa2lwOworICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCgzMikgSW5wdXRTYW1w
bGVSYXRlOworICAgICAgICAgICAgICAgIHNpZ25lZCBpbnQoMTYpIE91dHB1dEdhaW47CisgICAg
ICAgICAgICAgICAgdW5zaWduZWQgaW50KDgpIENoYW5uZWxNYXBwaW5nRmFtaWx5OworICAgICAg
ICAgICAgICAgIGlmIChDaGFubmVsTWFwcGluZ0ZhbWlseSAhPSAwKSB7CisgICAgICAgICAgICAg
ICAgICAgIENoYW5uZWxNYXBwaW5nVGFibGUoT3V0cHV0Q2hhbm5lbENvdW50KTsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICsgVmVyc2lvbjoKKyAgICAg
ICAgICAgICAgICBUaGUgVmVyc2lvbiBmaWVsZCBzaGFsbCBiZSBzZXQgdG8gMC4KKyAgICAgICAg
ICAgICAgICBJbiB0aGUgZnV0dXJlIHZlcnNpb25zIG9mIHRoaXMgc3BlY2lmaWNhdGlvbiwgdGhp
cyBmaWVsZCBtYXkgYmUgc2V0IHRvIG90aGVyIHZhbHVlcy4gQW5kIHdpdGhvdXQgc3VwcG9ydAor
ICAgICAgICAgICAgICAgIG9mIHRob3NlIHZhbHVlcywgdGhlIHJlYWRlciBzaGFsbCBub3QgcmVh
ZCB0aGUgZmllbGRzIGFmdGVyIHRoaXMgd2l0aGluIHRoZSBPcHVzU3BlY2lmaWNCb3guCisgICAg
ICAgICAgICArIE91dHB1dENoYW5uZWxDb3VudDoKKyAgICAgICAgICAgICAgICBUaGUgT3V0cHV0
Q2hhbm5lbENvdW50IGZpZWxkIHNoYWxsIGJlIHNldCB0byB0aGUgc2FtZSB2YWx1ZSBhcyB0aGUg
Kk91dHB1dCBDaGFubmVsIENvdW50KiBmaWVsZCBpbiB0aGUKKyAgICAgICAgICAgICAgICBpZGVu
dGlmaWNhdGlvbiBoZWFkZXIgZGVmaW5lZCBpbiBPZ2cgT3B1cyBbM10uCisgICAgICAgICAgICAr
IFByZVNraXA6CisgICAgICAgICAgICAgICAgVGhlIFByZVNraXAgZmllbGQgaW5kaWNhdGVzIHRo
ZSBudW1iZXIgb2YgdGhlIHByaW1pbmcgc2FtcGxlcywgdGhhdCBpcywgdGhlIG51bWJlciBvZiBz
YW1wbGVzIGF0IDQ4MDAwIEh6CisgICAgICAgICAgICAgICAgdG8gZGlzY2FyZCBmcm9tIHRoZSBk
ZWNvZGVyIG91dHB1dCB3aGVuIHN0YXJ0aW5nIHBsYXliYWNrLiBUaGUgdmFsdWUgb2YgdGhlIFBy
ZVNraXAgZmllbGQgc2hhbGwgYmUgYXQgbGVhc3QKKyAgICAgICAgICAgICAgICA4MCBtaWxsaXNl
Y29uZHMnIHdvcnRoIG9mIFBDTSBzYW1wbGVzIGV2ZW4gd2hlbiByZW1vdmluZyBhbnkgbnVtYmVy
IG9mIE9wdXMgc2FtcGxlcyB3aGljaCBtYXkgb3IgbWF5IG5vdAorICAgICAgICAgICAgICAgIGNv
bnRhaW4gdGhlIHByaW1pbmcgc2FtcGxlcy4gVGhlIFByZVNraXAgZmllbGQgaXMgbm90IHVzZWQg
Zm9yIGRpc2NhcmRpbmcgdGhlIHByaW1pbmcgc2FtcGxlcyBhdCB0aGUgd2hvbGUKKyAgICAgICAg
ICAgICAgICBwbGF5YmFjayBhdCBhbGwgc2luY2UgaXQgaXMgaW5mb3JtYXRpdmUgb25seSwgYW5k
IHRoYXQgdGFzayBmYWxscyBvbiB0aGUgRWRpdCBMaXN0IEJveC4KKyAgICAgICAgICAgICsgSW5w
dXRTYW1wbGVSYXRlOgorICAgICAgICAgICAgICAgIFRoZSBJbnB1dFNhbXBsZVJhdGUgZmllbGQg
c2hhbGwgYmUgc2V0IHRvIHRoZSBzYW1lIHZhbHVlIGFzIHRoZSAqSW5wdXQgU2FtcGxlIFJhdGUq
IGZpZWxkIGluIHRoZQorICAgICAgICAgICAgICAgIGlkZW50aWZpY2F0aW9uIGhlYWRlciBkZWZp
bmVkIGluIE9nZyBPcHVzIFszXS4KKyAgICAgICAgICAgICsgT3V0cHV0R2FpbjoKKyAgICAgICAg
ICAgICAgICBUaGUgT3V0cHV0R2FpbiBmaWVsZCBzaGFsbCBiZSBzZXQgdG8gdGhlIHNhbWUgdmFs
dWUgYXMgdGhlICpPdXRwdXQgR2FpbiogZmllbGQgaW4gdGhlIGlkZW50aWZpY2F0aW9uCisgICAg
ICAgICAgICAgICAgaGVhZGVyIGRlZmluZSBpbiBPZ2cgT3B1cyBbM10uIE5vdGUgdGhhdCB0aGUg
dmFsdWUgaXMgc3RvcmVkIGFzIDguOCBmaXhlZC1wb2ludC4KKyAgICAgICAgICAgICsgQ2hhbm5l
bE1hcHBpbmdGYW1pbHk6CisgICAgICAgICAgICAgICAgVGhlIENoYW5uZWxNYXBwaW5nRmFtaWx5
IGZpZWxkIHNoYWxsIGJlIHNldCB0byB0aGUgc2FtZSB2YWx1ZSBhcyB0aGUgKkNoYW5uZWwgTWFw
cGluZyBGYW1pbHkqIGZpZWxkIGluCisgICAgICAgICAgICAgICAgdGhlIGlkZW50aWZpY2F0aW9u
IGhlYWRlciBkZWZpbmVkIGluIE9nZyBPcHVzIFszXS4KKyAgICAgICAgICAgICsgU3RyZWFtQ291
bnQ6CisgICAgICAgICAgICAgICAgVGhlIFN0cmVhbUNvdW50IGZpZWxkIHNoYWxsIGJlIHNldCB0
byB0aGUgc2FtZSB2YWx1ZSBhcyB0aGUgKlN0cmVhbSBDb3VudCogZmllbGQgaW4gdGhlIGlkZW50
aWZpY2F0aW9uCisgICAgICAgICAgICAgICAgaGVhZGVyIGRlZmluZWQgaW4gT2dnIE9wdXMgWzNd
LgorICAgICAgICAgICAgKyBDb3VwbGVkQ291bnQ6CisgICAgICAgICAgICAgICAgVGhlIENvdXBs
ZWRDb3VudCBmaWVsZCBzaGFsbCBiZSBzZXQgdG8gdGhlIHNhbWUgdmFsdWUgYXMgdGhlICpDb3Vw
bGVkIENvdW50KiBmaWVsZCBpbiB0aGUgaWRlbnRpZmljYXRpb24KKyAgICAgICAgICAgICAgICBo
ZWFkZXIgZGVmaW5lZCBpbiBPZ2cgT3B1cyBbM10uCisgICAgICAgICAgICArIENoYW5uZWxNYXBw
aW5nOgorICAgICAgICAgICAgICAgIFRoZSBDaGFubmVsTWFwcGluZyBmaWVsZCBzaGFsbCBiZSBz
ZXQgdG8gdGhlIHNhbWUgb2N0ZXQgc3RyaW5nIGFzICpDaGFubmVsIE1hcHBpbmcqIGZpZWxkIGlu
IHRoZSBpZGVudGktCisgICAgICAgICAgICAgICAgZmljYXRpb24gaGVhZGVyIGRlZmluZWQgaW4g
T2dnIE9wdXMgWzNdLgorCisgICAgICAgIDQuMy4zIFNhbXBsZSBmb3JtYXQ8YSBuYW1lPSI0LjMu
MyI+PC9hPgorICAgICAgICAgICAgQW4gT3B1cyBzYW1wbGUgaXMgZXhhY3RseSBvbmUgT3B1cyBw
YWNrZXQgZm9yIGVhY2ggb2YgZGlmZmVyZW50IE9wdXMgYml0c3RyZWFtcy4gRHVlIHRvIHN1cHBv
cnQgbW9yZSB0aGFuCisgICAgICAgICAgICB0d28gY2hhbm5lbHMsIGFuIE9wdXMgc2FtcGxlIGNh
biBjb250YWluIGZyYW1lcyBmcm9tIG11bHRpcGxlIE9wdXMgYml0c3RyZWFtcyBidXQgYWxsIE9w
dXMgcGFja2V0cyBzaGFsbAorICAgICAgICAgICAgc2hhcmUgd2l0aCB0aGUgdG90YWwgb2YgZnJh
bWUgc2l6ZXMgaW4gYSBzaW5nbGUgT3B1cyBzYW1wbGUuIFRoZSB3YXkgb2YgaG93IHRvIHBhY2sg
YW4gT3B1cyBwYWNrZXQgZnJvbQorICAgICAgICAgICAgZWFjaCBvZiBPcHVzIGJpdHN0cmVhbXMg
aW50byBhIHNpbmdsZSBPcHVzIHNhbXBsZSBmb2xsb3dzIEFwcGVuZGl4IEIuIGluIFJGQyA2NzE2
IFsyXS4KKyAgICAgICAgICAgIFRoZSBlbmRpYW5uZXNzIGhhcyBub3RoaW5nIHRvIGRvIHdpdGgg
YW55IE9wdXMgc2FtcGxlIHNpbmNlIGV2ZXJ5IE9wdXMgcGFja2V0IGlzIHByb2Nlc3NlZCBieXRl
LWJ5LWJ5dGUuCisgICAgICAgICAgICBJbiB0aGlzIHNwZWNpZmljYXRpb24sICdzYW1wbGUnIG1l
YW5zICdPcHVzIHNhbXBsZScgZXhjZXB0IGZvciAncGFkZGVkIHNhbXBsZXMnLCAncHJpbWluZyBz
YW1wbGVzJywgJ3ZhbGlkCisgICAgICAgICAgICBzYW1wbGUnIGFuZCAnc2FtcGxlLWFjY3VyYXRl
JywgaS5lLiAnc2FtcGxlJyBpcyAnc2FtcGxlJyBpbiB0aGUgdGVybSBkZWZpbmVkIGluIElTTy9J
RUMgMTQ0OTYtMTIgWzFdLgorCisgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0rCisgICAgICAgICAgICAgICAgfCBPcHVzIHBhY2tldCAwIChzZWxmLWRlbGltaXRpbmcgZnJh
bWluZykgfCBPcHVzIHBhY2tldCAxICh1bmRlbGltaXRlZCBmcmFtaW5nKSB8CisgICAgICAgICAg
ICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICAgICAgfDwtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tIHRoZSBzaXplIG9mIE9wdXMgc2FtcGxlIC0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLT58CisKKyAgICAgICAgICAgICAgICAgICAgRmlndXJlIDEgLSBFeGFtcGxl
IHN0cnVjdHVyZSBvZiBhbiBPcHVzIHNhbXBsZSBjb250YWluaW5nIHR3byBPcHVzIGJpdHN0cmVh
bXMKKworICAgICAgICA0LjMuNCBEdXJhdGlvbiBvZiBPcHVzIHNhbXBsZTxhIG5hbWU9IjQuMy40
Ij48L2E+CisgICAgICAgICAgICBUaGUgZHVyYXRpb24gb2YgT3B1cyBzYW1wbGUgaXMgZ2l2ZW4g
YnkgbXVsdGlwbHlpbmcgdGhlIHRvdGFsIG9mIGZyYW1lIHNpemVzIGZvciBhIHNpbmdsZSBPcHVz
IGJpdHN0cmVhbQorICAgICAgICAgICAgZXhwcmVzc2VkIGluIHNlY29uZHMgYnkgdGhlIHZhbHVl
IG9mIHRoZSB0aW1lc2NhbGUgZmllbGQgaW4gdGhlIE1lZGlhIEhlYWRlciBCb3guCisgICAgICAg
ICAgICBMZXQncyBzYXkgYW4gT3B1cyBzYW1wbGUgY29uc2lzdHMgb2YgdHdvIE9wdXMgYml0c3Ry
ZWFtcywgd2hlcmUgdGhlIGZyYW1lIHNpemUgb2Ygb25lIGJpdHN0cmVhbSBpcyA0MCBtaWxsaS0K
KyAgICAgICAgICAgIHNlY29uZHMgYW5kIHRoZSBmcmFtZSBzaXplIG9mIGFub3RoZXIgaXMgNjAg
bWlsbGlzZWNvbmRzLCBhbmQgdGhlIHRpbWVzY2FsZSBmaWVsZCBpbiB0aGUgTWVkaWEgSGVhZGVy
IEJveAorICAgICAgICAgICAgaXMgc2V0IHRvIDQ4MDAwLCB0aGVuIHRoZSBkdXJhdGlvbiBvZiB0
aGF0IE9wdXMgc2FtcGxlIHNoYWxsIGJlIDEyMCBtaWxsaXNlY29uZHMgc2luY2UgdGhyZWUgNDAg
bWlsbGlzZWNvbmQKKyAgICAgICAgICAgIGZyYW1lIGFuZCB0d28gNjAgbWlsbGlzZWNvbmQgZnJh
bWVzIHNoYWxsIGJlIGNvbnRhaW5lZCBiZWNhdXNlIG9mIHRoZSBtYXhpbXVtIGR1cmF0aW9uIG9m
IE9wdXMgcGFja2V0LCAxMjAKKyAgICAgICAgICAgIG1pbGxpc2Vjb25kcywgYW5kIDU3NjAgaW4g
dGhlIHRpbWVzY2FsZSBpbmRpY2F0ZWQgaW4gdGhlIE1lZGlhIEhlYWRlciBCb3guCisKKyAgICAg
ICAgICAgIFRvIGluZGljYXRlIHRoZSB2YWxpZCBzYW1wbGVzIGV4Y2x1ZGluZyB0aGUgcGFkZGVk
IHNhbXBsZXMgYXQgdGhlIGVuZCBvZiBPcHVzIGJpdHN0cmVhbSwgdGhlIGR1cmF0aW9uIG9mCisg
ICAgICAgICAgICB0aGUgbGFzdCBPcHVzIHNhbXBsZSBvZiBhbiBPcHVzIGJpdHN0cmVhbSBpcyBn
aXZlbiBieSBtdWx0aXBseWluZyB0aGUgbnVtYmVyIG9mIHRoZSB2YWxpZCBzYW1wbGVzIGJ5IHRo
ZQorICAgICAgICAgICAgdmFsdWUgcHJvZHVjZWQgYnkgZGl2aWRpbmcgdGhlIHZhbHVlIG9mIHRo
ZSB0aW1lc2NhbGUgZmllbGQgaW4gdGhlIE1lZGlhIEhlYWRlciBCb3ggYnkgNDgwMDAuCisKKyAg
ICAgICAgNC4zLjUgU3ViLXNhbXBsZTxhIG5hbWU9IjQuMy41Ij48L2E+CisgICAgICAgICAgICBU
aGUgc3RydWN0dXJlIG9mIHRoZSBsYXN0IE9wdXMgcGFja2V0IGluIGFuIE9wdXMgc2FtcGxlIGlz
IGRpZmZlcmVudCBmcm9tIHRoZSBvdGhlcnMgaW4gdGhlIHNhbWUgT3B1cyBzYW1wbGUsCisgICAg
ICAgICAgICBhbmQgdGhlIG90aGVycyBhcmUgaW52YWxpZCBPcHVzIHBhY2tldHMgYXMgYW4gT3B1
cyBzYW1wbGUgYmVjYXVzZSBvZiBzZWxmLWRlbGltaXRpbmcgZnJhbWluZy4gVG8gYXZvaWQKKyAg
ICAgICAgICAgIGNvbXBsZXhpdGllcywgc3ViLXNhbXBsZSBpcyBub3QgZGVmaW5lZCBmb3IgT3B1
cyBzYW1wbGUgaW4gdGhpcyBzcGVjaWZpY2F0aW9uLgorCisgICAgICAgIDQuMy42IFJhbmRvbSBB
Y2Nlc3M8YSBuYW1lPSI0LjMuNiI+PC9hPgorICAgICAgICAgICAgVGhpcyBzdWJjbGF1c2UgZGVz
Y3JpYmVzIHRoZSBuYXR1cmUgb2YgdGhlIHJhbmRvbSBhY2Nlc3Mgb2YgT3B1cyBzYW1wbGUuCisK
KyAgICAgICAgICAgIDQuMy42LjEgUmFuZG9tIEFjY2VzcyBQb2ludDxhIG5hbWU9IjQuMy42LjEi
PjwvYT4KKyAgICAgICAgICAgICAgICBBbGwgT3B1cyBzYW1wbGVzIGNhbiBiZSBpbmRlcGVuZGVu
dGx5IGRlY29kZWQgaS5lLiBldmVyeSBPcHVzIHNhbXBsZSBpcyBhIHN5bmMgc2FtcGxlLiBUaGVy
ZWZvcmUsIHRoZQorICAgICAgICAgICAgICAgIFN5bmMgU2FtcGxlIEJveCBzaGFsbCBub3QgYmUg
cHJlc2VudCBhcyBsb25nIGFzIHRoZXJlIGFyZSBubyBzYW1wbGVzIG90aGVyIHRoYW4gT3B1cyBz
YW1wbGVzIGluIHRoZSBzYW1lCisgICAgICAgICAgICAgICAgdHJhY2suIEFuZCB0aGUgc2FtcGxl
X2lzX25vbl9zeW5jX3NhbXBsZSBmaWVsZCBmb3IgT3B1cyBzYW1wbGVzIHNoYWxsIGJlIHNldCB0
byAwLgorCisgICAgICAgICAgICA0LjMuNi4yIFByZS1yb2xsPGEgbmFtZT0iNC4zLjYuMiI+PC9h
PgorICAgICAgICAgICAgICAgIE9wdXMgYml0c3RyZWFtIHJlcXVpcmVzIGF0IGxlYXN0IDgwIG1p
bGxpc2Vjb25kIHByZS1yb2xsIGFmdGVyIGVhY2ggcmFuZG9tIGFjY2VzcyB0byBnZXQgY29ycmVj
dCBvdXRwdXQuCisgICAgICAgICAgICAgICAgUHJlLXJvbGwgaXMgaW5kaWNhdGVkIGJ5IHRoZSBy
b2xsX2Rpc3RhbmNlIGZpZWxkIGluIEF1ZGlvUm9sbFJlY292ZXJ5RW50cnkuIEF1ZGlvUHJlUm9s
bEVudHJ5IHNoYWxsIG5vdAorICAgICAgICAgICAgICAgIGJlIHVzZWQgc2luY2UgZXZlcnkgT3B1
cyBzYW1wbGUgaXMgYSBzeW5jIHNhbXBsZSBpbiBPcHVzIGJpdHN0cmVhbS4gTm90ZSB0aGF0IHJv
bGxfZGlzdGFuY2UgaXMgZXhwcmVzc2VkCisgICAgICAgICAgICAgICAgaW4gc2FtcGxlIHVuaXRz
IGluIGEgdGVybSBvZiBJU08gQmFzZSBNZWRpYSBGaWxlIEZvcm1hdCwgYW5kIGFsd2F5cyB0YWtl
cyBuZWdhdGl2ZSB2YWx1ZXMuCisKKyAgICAgICAgICAgICAgICBGb3IgYW55IHRyYWNrIGNvbnRh
aW5pbmcgT3B1cyBiaXRzdHJlYW1zLCBhdCBsZWFzdCBvbmUgU2FtcGxlIEdyb3VwIERlc2NyaXB0
aW9uIEJveCBhbmQgYXQgbGVhc3Qgb25lCisgICAgICAgICAgICAgICAgU2FtcGxlIHRvIEdyb3Vw
IEJveCB3aXRoaW4gdGhlIFNhbXBsZSBUYWJsZSBCb3ggc2hhbGwgYmUgcHJlc2VudCBhbmQgdGhl
c2UgaGF2ZSB0aGUgZ3JvdXBpbmdfdHlwZSBmaWVsZAorICAgICAgICAgICAgICAgIHNldCB0byAn
cm9sbCcuIElmIGFueSBPcHVzIHNhbXBsZSBpcyBjb250YWluZWQgaW4gYSB0cmFjayBmcmFnbWVu
dCwgdGhlIFNhbXBsZSB0byBHcm91cCBCb3ggd2l0aCB0aGUKKyAgICAgICAgICAgICAgICBncm91
cGluZ190eXBlIGZpZWxkIHNldCB0byAncm9sbCcgc2hhbGwgYmUgcHJlc2VudCBmb3IgdGhhdCB0
cmFjayBmcmFnbWVudC4KKworICAgICAgICAgICAgICAgIEZvciB0aGUgcmVxdWlyZW1lbnQgb2Yg
QXVkaW9Sb2xsUmVjb3ZlcnlFbnRyeSwgdGhlIGNvbXBhdGlibGVfYnJhbmRzIGZpZWxkIGluIHRo
ZSBGaWxlIFR5cGUgQm94IHNoYWxsCisgICAgICAgICAgICAgICAgY29udGFpbiBhdCBsZWFzdCBv
bmUgYnJhbmQgd2hpY2ggcmVxdWlyZXMgc3VwcG9ydCBmb3Igcm9sbCBncm91cHMuCis8YSBuYW1l
PSI0LjQiPjwvYT4KKyAgICA0LjQgVHJpbW1pbmcgb2YgQWN0dWFsIER1cmF0aW9uCisgICAgICAg
IER1ZSB0byB0aGUgcHJpbWluZyBzYW1wbGVzIChvciB0aGUgcGFkZGluZyBhdCB0aGUgYmVnaW5u
aW5nKSBkZXJpdmVkIGZyb20gdGhlIHByZS1yb2xsIGZvciB0aGUgc3RhcnR1cCBhbmQgdGhlCisg
ICAgICAgIHBhZGRlZCBzYW1wbGVzIGF0IHRoZSBlbmQsIHdlIG5lZWQgdHJpbSBmcm9tIG1lZGlh
IHRvIGdldCB0aGUgYWN0dWFsIGR1cmF0aW9uLiBBbiBlZGl0IGluIHRoZSBFZGl0IExpc3QgQm94
IGNhbgorICAgICAgICBhY2hpZXZlIHRoaXMgZGVtYW5kLCBhbmQgdGhlIEVkaXQgQm94IGFuZCB0
aGUgRWRpdCBMaXN0IEJveCBzaGFsbCBiZSBwcmVzZW50LgorCisgICAgICAgIEZvciBzYW1wbGUt
YWNjdXJhdGUgdHJpbW1pbmcsIHByb3BlciB0aW1lc2NhbGUgc2hvdWxkIGJlIHNldCB0byB0aGUg
dGltZXNjYWxlIGZpZWxkIGluIHRoZSBNb3ZpZSBIZWFkZXIgQm94CisgICAgICAgIGFuZCB0aGUg
TWVkaWEgSGVhZGVyIEJveCBpbnNpZGUgVHJhY2sgQm94KGVzKSBmb3IgT3B1cyBiaXRzdHJlYW0u
IFRoZSB0aW1lc2NhbGUgZmllbGQgaW4gdGhlIE1lZGlhIEhlYWRlciBCb3ggaXMKKyAgICAgICAg
dHlwaWNhbGx5IHNldCB0byA0ODAwMC4gSXQgaXMgcmVjb21tZW5kZWQgdGhhdCB0aGUgdGltZXNj
YWxlIGZpZWxkIGluIHRoZSBNb3ZpZSBIZWFkZXIgQm94IGJlIHNldCB0byB0aGUgc2FtZQorICAg
ICAgICB2YWx1ZSBvZiB0aGUgdGltZXNjYWxlIGZpZWxkIGluIHRoZSBNZWRpYSBIZWFkZXIgQm94
IGluIG9yZGVyIHRvIGF2b2lkIHRoZSByb3VuZGluZyBwcm9ibGVtIHdoZW4gc3BlY2lmeWluZwor
ICAgICAgICBkdXJhdGlvbiBvZiBlZGl0IGlmIHRoZSB0aW1lc2NhbGVzIGluIGFsbCBvZiB0aGUg
TWVkaWEgSGVhZGVyIEJveGVzIGFyZSBzZXQgdG8gdGhlIHNhbWUgdmFsdWUuCisKKyAgICAgICAg
Rm9yIGV4YW1wbGUsIHRvIGluZGljYXRlIHRoZSBhY3R1YWwgZHVyYXRpb24gb2YgYW4gT3B1cyBi
aXRzdHJlYW0gaW4gYSB0cmFjayB3aXRoIHRoZSB0aW1lc2NhbGUgZmllbGRzIG9mIGJvdGgKKyAg
ICAgICAgdGhlIE1vdmllIEhlYWRlciBCb3ggYW5kIHRoZSBNZWRpYSBIZWFkZXIgQm94IHNldCB0
byA0ODAwMCwgd2Ugd291bGQgdXNlIHRoZSBmb2xsb3dpbmcgZWRpdDoKKyAgICAgICAgICAgIHNl
Z21lbnRfZHVyYXRpb24gPSB0aGUgbnVtYmVyIG9mIHRoZSB2YWxpZCBzYW1wbGVzCisgICAgICAg
ICAgICBtZWRpYV90aW1lID0gdGhlIG51bWJlciBvZiB0aGUgcHJpbWluZyBzYW1wbGVzCisgICAg
ICAgICAgICBtZWRpYV9yYXRlID0gMSAmbHQmbHQgMTYKKworICAgICAgICBUaGUgRWRpdCBMaXN0
IEJveCBpcyBhcHBsaWVkIHRvIHdob2xlIG1vdmllIGluY2x1ZGluZyBhbGwgbW92aWUgZnJhZ21l
bnRzLiBUaGVyZWZvcmUsIGl0IGlzIGltcG9zc2libGUgdG8gdGVsbAorICAgICAgICB0aGUgYWN0
dWFsIGR1cmF0aW9uIGluIHRoZSBjYXNlIHByb2R1Y2luZyBtb3ZpZSBmcmFnbWVudHMgb24gdGhl
IGZseSBzdWNoIGFzIGxpdmUtc3RyZWFtaW5nLiBJbiBzdWNoIGNhc2VzLAorICAgICAgICB0aGUg
ZHVyYXRpb24gb2YgdGhlIGxhc3QgT3B1cyBzYW1wbGUgbWF5IGJlIGhlbHBmdWwgYnkgc2V0dGlu
ZyB6ZXJvIHRvIHRoZSBzZWdtZW50X2R1cmF0aW9uIGZpZWxkIHNpbmNlIHRoZQorICAgICAgICB2
YWx1ZSAwIHJlcHJlc2VudHMgaW1wbGljaXQgZHVyYXRpb24gZXF1YWwgdG8gdGhlIHN1bSBvZiB0
aGUgZHVyYXRpb24gb2YgYWxsIHNhbXBsZXMuCis8YSBuYW1lPSI0LjUiPjwvYT4KKyAgICA0LjUg
Q2hhbm5lbCBMYXlvdXQgKGluZm9ybWF0aXZlKQorICAgICAgICBCeSB0aGUgYXBwbGljYXRpb24g
b2YgYWx0ZXJuYXRlX2dyb3VwIGluIHRoZSBUcmFjayBIZWFkZXIgQm94LCB3aG9sZSBhdWRpbyBj
aGFubmVscyBpbiBhbGwgYWN0aXZlIHRyYWNrcyBmcm9tCisgICAgICAgIG5vbi1hbHRlcm5hdGUg
Z3JvdXAgYW5kL29yIGRpZmZlcmVudCBhbHRlcm5hdGUgZ3JvdXAgZnJvbSBlYWNoIG90aGVyIGFy
ZSBjb21wb3NpdGVkIGludG8gdGhlIHByZXNlbnRhdGlvbi4gSWYKKyAgICAgICAgYW4gT3B1cyBz
YW1wbGUgY29uc2lzdHMgb2YgbXVsdGlwbGUgT3B1cyBiaXRzdHJlYW1zLCBpdCBjYW4gYmUgc3Bs
aXR0ZWQgaW50byBpbmRpdmlkdWFsIE9wdXMgYml0c3RyZWFtcyBhbmQKKyAgICAgICAgcmVjb25z
dHJ1Y3RlZCBpbnRvIG5ldyBPcHVzIHNhbXBsZXMgYXMgbG9uZyBhcyBldmVyeSBPcHVzIGJpdHN0
cmVhbSBoYXMgdGhlIHNhbWUgdG90YWwgZHVyYXRpb24gaW4gZWFjaCBPcHVzCisgICAgICAgIHNh
bXBsZS4gVGhpcyBuYXR1cmUgY2FuIGJlIHV0aWxpemVkIHRvIGVuY2Fwc3VsYXRlIGEgc2luZ2xl
IE9wdXMgYml0c3RyZWFtIGluIGVhY2ggdHJhY2sgd2l0aG91dCBicmVha2luZyB0aGUKKyAgICAg
ICAgb3JpZ2luYWwgY2hhbm5lbCBsYXlvdXQuCisKKyAgICAgICAgQXMgYW4gZXhhbXBsZSwgbGV0
J3Mgc2F5IHRoZXJlIGlzIGEgZm9sbG93aW5nIHRyYWNrOgorICAgICAgICAgICAgT3V0cHV0Q2hh
bm5lbENvdW50ID0gNjsKKyAgICAgICAgICAgIFN0cmVhbUNvdW50ICAgICAgICA9IDQ7CisgICAg
ICAgICAgICBDb3VwbGVkQ291bnQgICAgICAgPSAyOworICAgICAgICAgICAgQ2hhbm5lbE1hcHBp
bmcgICAgID0gezAsIDQsIDEsIDIsIDMsIDV9OyAvLyBmcm9udCBsZWZ0LCBmcm9udCBjZW50ZXIs
IGZyb250IHJpZ2h0LCByZWFyIGxlZnQsIHJlYXIgcmlnaHQsIExGRQorICAgICAgICBIZXJlLCB0
byBjb3VwbGUgZnJvbnQgbGVmdCB0byBmcm9udCByaWdodCBjaGFubmVscyBpbnRvIHRoZSBmaXJz
dCBzdHJlYW0sIGFuZCBjb3VwbGUgcmVhciBsZWZ0IHRvIHJlYXIgcmlnaHQKKyAgICAgICAgY2hh
bm5lbHMgaW50byB0aGUgc2Vjb25kIHN0cmVhbSwgcmVvcmRlcmluZyBpcyBuZWVkZWQgc2luY2Ug
Y291cGxlZCBzdHJlYW1zIG11c3QgcHJlY2VkZSBhbnkgbm9uLWNvdXBsZWQgc3RyZWFtLgorICAg
ICAgICBZb3UgZXh0cmFjdCB0aGUgZm91ciBPcHVzIGJpdHN0cmVhbXMgZnJvbSB0aGlzIHRyYWNr
IGFuZCB5b3UgZW5jYXBzdWxhdGUgdHdvIG9mIHRoZSBmb3VyIGludG8gYSB0cmFjayBhbmQgdGhl
CisgICAgICAgIG90aGVycyBpbnRvIGFub3RoZXIgdHJhY2suIFRoZSBmb3JtZXIgdHJhY2sgaXMg
YXMgZm9sbG93cy4KKyAgICAgICAgICAgIE91dHB1dENoYW5uZWxDb3VudCA9IDY7CisgICAgICAg
ICAgICBTdHJlYW1Db3VudCAgICAgICAgPSAyOworICAgICAgICAgICAgQ291cGxlZENvdW50ICAg
ICAgID0gMjsKKyAgICAgICAgICAgIENoYW5uZWxNYXBwaW5nICAgICA9IHswLCAyNTUsIDEsIDIs
IDMsIDI1NX07IC8vIGZyb250IGxlZnQsIGZyb250IGNlbnRlciwgZnJvbnQgcmlnaHQsIHJlYXIg
bGVmdCwgcmVhciByaWdodCwgTEZFCisgICAgICAgIEFuZCB0aGUgbGF0dGVyIHRyYWNrIGlzIGFz
IGZvbGxvd3MuCisgICAgICAgICAgICBPdXRwdXRDaGFubmVsQ291bnQgPSA2OworICAgICAgICAg
ICAgU3RyZWFtQ291bnQgICAgICAgID0gMjsKKyAgICAgICAgICAgIENvdXBsZWRDb3VudCAgICAg
ICA9IDA7CisgICAgICAgICAgICBDaGFubmVsTWFwcGluZyAgICAgPSB7MjU1LCAwLCAyNTUsIDI1
NSwgMjU1LCAxfTsgLy8gZnJvbnQgbGVmdCwgZnJvbnQgY2VudGVyLCBmcm9udCByaWdodCwgcmVh
ciBsZWZ0LCByZWFyIHJpZ2h0LCBMRkUKKyAgICAgICAgSW4gYWRkaXRpb24sIHRoZSB2YWx1ZSBv
ZiB0aGUgYWx0ZXJuYXRlX2dyb3VwIGZpZWxkIGluIHRoZSBib3RoIHRyYWNrcyBpcyBzZXQgdG8g
MC4gQXMgdGhlIHJlc3VsdCwgdGhlIHBsYXllcgorICAgICAgICBtYXkgcGxheSBhcyBpZiBjaGFu
bmVscyB3aXRoIDI1NSBhcmUgbm90IHByZXNlbnQsIGFuZCBwbGF5IHRoZSBwcmVzZW50YXRpb24g
Y29uc3RydWN0ZWQgZnJvbSB0aGUgYm90aCB0cmFja3MKKyAgICAgICAgaW4gdGhlIHNhbWUgY2hh
bm5lbCBsYXlvdXQgYXMgdGhlIG9uZSBvZiB0aGUgb3JpZ2luYWwgdHJhY2suIEtlZXAgaW4gbWlu
ZCB0aGF0IHRoZSB3YXkgb2YgdGhlIGNvbXBvc2l0aW9uLCBpLmUuCisgICAgICAgIHRoZSBtaXhp
bmcgZm9yIHBsYXliYWNrLCBpcyBub3QgZGVmaW5lZCBoZXJlLCBhbmQgbWF5YmUgZGlmZmVyZW50
IHJlc3VsdHMgY291bGQgb2NjdXIgZXhjZXB0IGZvciB0aGUgY2hhbm5lbAorICAgICAgICBsYXlv
dXQgb2YgdGhlIG9yaWdpbmFsLCBkZXBlbmRpbmcgb24gYW4gaW1wbGVtZW50YXRpb24gb3IgdGhl
IGRlZmluaXRpb24gb2YgYSBkZXJpdmVkIGZpbGUgZm9ybWF0LgorCisgICAgICAgIE5vdGUgdGhh
dCBzb21lIGRlcml2ZWQgZmlsZSBmb3JtYXRzIG1heSBzcGVjaWZ5IHRoZSByZXN0cmljdGlvbiB0
byBpZ25vcmUgYWx0ZXJuYXRlIGdyb3VwaW5nLiBJbiB0aGUgY29udGV4dCBvZgorICAgICAgICBz
dWNoIGZpbGUgZm9ybWF0cywgdGhpcyBhcHBsaWNhdGlvbiBpcyBub3QgYXZhaWxhYmxlLiBUaGlz
IHVuYXZhaWxhYmlsaXR5IGRvZXMgbm90IG1lYW4gaW5jb21wYXRpYmlsaXRpZXMgYW1vbmcKKyAg
ICAgICAgZmlsZSBmb3JtYXRzIHVubGVzcyB0aGUgcmVzdHJpY3Rpb24gdG8gdGhlIHZhbHVlIG9m
IHRoZSBhbHRlcm5hdGVfZ3JvdXAgZmllbGQgaXMgc3BlY2lmaWVkIGFuZCBicmluZ3MgYWJvdXQK
KyAgICAgICAgYW55IGNvbmZsaWN0IGFtb25nIHRoZWlyIGRlZmluaXRpb25zLgorPGEgbmFtZT0i
NC42Ij48L2E+CisgICAgNC42IEJhc2ljIFN0cnVjdHVyZSAoaW5mb3JtYXRpdmUpCisgICAgICAg
IDQuNi4xIEluaXRpYWwgTW92aWU8YSBuYW1lPSI0LjYuMSI+PC9hPgorICAgICAgICAgICAgVGhp
cyBzdWJjbGF1c2Ugc2hvd3MgYSBiYXNpYyBzdHJ1Y3R1cmUgb2YgdGhlIE1vdmllIEJveCBhcyBm
b2xsb3dzOgorCisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHxtb292
fCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8IE1vdmllIEJveCAgICAgICAgICAg
ICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAg
IHxtdmhkfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBNb3ZpZSBIZWFkZXIgQm94ICAg
ICAgICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAg
ICB8dHJha3wgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgVHJhY2sgQm94ICAgICAgICAg
ICAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwg
ICAgfCAgICB8dGtoZHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8IFRyYWNrIEhlYWRlciBCb3gg
ICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8
ICAgIHwgICAgfGVkdHN8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBFZGl0IEJveCAgICAgICAg
ICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAg
fCAgICB8ICAgIHwgICAgfGVsc3R8ICAgIHwgICAgfCAgICB8ICAgIHwgRWRpdCBMaXN0IEJveCAg
ICAgICAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAg
IHwgICAgfCAgICB8bWRpYXwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8IE1lZGlhIEJveCAgICAg
ICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAg
ICB8ICAgIHwgICAgfCAgICB8bWRoZHwgICAgfCAgICB8ICAgIHwgICAgfCBNZWRpYSBIZWFkZXIg
Qm94ICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAg
ICAgfCAgICB8ICAgIHwgICAgfGhkbHJ8ICAgIHwgICAgfCAgICB8ICAgIHwgSGFuZGxlciBSZWZl
cmVuY2UgQm94ICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAg
ICAgIHwgICAgfCAgICB8ICAgIHxtaW5mfCAgICB8ICAgIHwgICAgfCAgICB8IE1lZGlhIEluZm9y
bWF0aW9uIEJveCAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAg
ICAgICB8ICAgIHwgICAgfCAgICB8ICAgIHxzbWhkfCAgICB8ICAgIHwgICAgfCBTb3VuZCBNZWRp
YSBIZWFkZXIgQm94ICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAg
ICAgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ZGluZnwgICAgfCAgICB8ICAgIHwgRGF0YSBJbmZv
cm1hdGlvbiBCb3ggICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAg
ICAgICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ZHJlZnwgICAgfCAgICB8IERhdGEgUmVm
ZXJlbmNlIEJveCAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAg
ICAgICAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8dXJsIHwgICAgfCBEYXRhRW50
cnlVcmxCb3ggICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLSsgb3IgKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAg
ICAgICAgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfHVybiB8ICAgIHwgRGF0YUVu
dHJ5VXJuQm94ICAgICAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAg
ICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwgICAgfHN0Ymx8ICAgIHwgICAgfCAgICB8IFNhbXBs
ZSBUYWJsZSAgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisg
ICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfHN0c2R8ICAgIHwgICAgfCBTYW1w
bGUgRGVzY3JpcHRpb24gQm94ICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwor
ICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfE9wdXN8ICAgIHwgT3B1
c1NhbXBsZUVudHJ5ICAgICAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsK
KyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfGRPcHN8IE9w
dXMgU3BlY2lmaWMgQm94ICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r
CisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfHN0dHN8ICAgIHwgICAgfCBE
ZWNvZGluZyBUaW1lIHRvIFNhbXBsZSBCb3ggIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
KworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHxzdHNjfCAgICB8ICAgIHwg
U2FtcGxlIFRvIENodW5rIEJveCAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8c3RzenwgICAgfCAgICB8
IFNhbXBsZSBTaXplIEJveCAgICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSst
LS0tKy0tLS0rLS0tLSsgb3IgKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfHN0ejJ8ICAgIHwgICAg
fCBDb21wYWN0IFNhbXBsZSBTaXplIEJveCAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0r
LS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHxzdGNvfCAgICB8ICAg
IHwgQ2h1bmsgT2Zmc2V0IEJveCAgICAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0t
Ky0tLS0rLS0tLSstLS0tKyBvciArLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8Y282NHwgICAgfCAg
ICB8IENodW5rIExhcmdlIE9mZnNldCBCb3ggICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0t
LSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfHNncGR8ICAgIHwg
ICAgfCBTYW1wbGUgR3JvdXAgRGVzY3JpcHRpb24gQm94IHwKKyAgICAgICAgICAgICstLS0tKy0t
LS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHxzYmdwfCAgICB8
ICAgIHwgU2FtcGxlIHRvIEdyb3VwIEJveCAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSst
LS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfG12ZXh8KiAgIHwgICAgfCAgICB8ICAgIHwgICAg
fCAgICB8IE1vdmllIEV4dGVuZHMgQm94ICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0r
LS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfHRyZXh8KiAgIHwgICAgfCAgICB8ICAg
IHwgICAgfCBUcmFjayBFeHRlbmRzIEJveCAgICAgICAgICAgIHwKKyAgICAgICAgICAgICstLS0t
Ky0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tKworCisgICAgICAgICAgICAgICAgICAgIEZpZ3VyZSAyIC0gQmFzaWMgc3RydWN0
dXJlIG9mIE1vdmllIEJveAorCisgICAgICAgICAgICBJdCBpcyBzdHJvbmdseSByZWNvbW1lbmRl
ZCB0aGF0IHRoZSBvcmRlciBvZiBib3hlcyBzaG91bGQgZm9sbG93IHRoZSBhYm92ZSBzdHJ1Y3R1
cmUuCisgICAgICAgICAgICBCb3hlcyBtYXJrZWQgd2l0aCBhbiBhc3RlcmlzayAoKikgbWF5IGJl
IHByZXNlbnQuCisgICAgICAgICAgICBGb3IgbW9zdCBib3hlcyBsaXN0ZWQgYWJvdmUsIHRoZSBk
ZWZpbml0aW9uIGlzIGFzIGlzIGRlZmluZWQgaW4gSVNPL0lFQyAxNDQ5Ni0xMiBbMV0uIFRoZSBh
ZGRpdGlvbmFsIGJveGVzCisgICAgICAgICAgICBhbmQgdGhlIGFkZGl0aW9uYWwgcmVxdWlyZW1l
bnRzLCByZXN0cmljdGlvbnMgYW5kIHJlY29tbWVuZGF0aW9ucyB0byB0aGUgb3RoZXIgYm94ZXMg
YXJlIGRlc2NyaWJlZCBpbiB0aGlzCisgICAgICAgICAgICBzcGVjaWZpY2F0aW9uLgorCisgICAg
ICAgIDQuNi4yIE1vdmllIEZyYWdtZW50czxhIG5hbWU9IjQuNi4yIj48L2E+CisgICAgICAgICAg
ICBUaGlzIHN1YmNsYXVzZSBzaG93cyBhIGJhc2ljIHN0cnVjdHVyZSBvZiB0aGUgTW92aWUgRnJh
Z21lbnQgQm94IGFzIGZvbGxvd3M6CisKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAg
ICAgICAgICAgfG1vb2Z8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgTW92aWUg
RnJhZ21lbnQgQm94ICAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAg
ICAgICAgICAgIHwgICAgfG1maGR8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8IE1vdmll
IEZyYWdtZW50IEhlYWRlciBCb3ggICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisg
ICAgICAgICAgICB8ICAgIHx0cmFmfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBUcmFj
ayBGcmFnbWVudCBCb3ggICAgICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwor
ICAgICAgICAgICAgfCAgICB8ICAgIHx0ZmhkfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgVHJh
Y2sgRnJhZ21lbnQgSGVhZGVyIEJveCAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsK
KyAgICAgICAgICAgIHwgICAgfCAgICB8dHJ1bnwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8IFRy
YWNrIEZyYWdtZW50IFJ1biBCb3ggICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r
CisgICAgICAgICAgICB8ICAgIHwgICAgfHNncGR8KiAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBT
YW1wbGUgR3JvdXAgRGVzY3JpcHRpb24gQm94IHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
KworICAgICAgICAgICAgfCAgICB8ICAgIHxzYmdwfCogICB8ICAgIHwgICAgfCAgICB8ICAgIHwg
U2FtcGxlIHRvIEdyb3VwIEJveCAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSsKKworICAgICAgICAgICAgICAgICAgICBGaWd1cmUgMyAtIEJhc2ljIHN0cnVjdHVyZSBvZiBN
b3ZpZSBGcmFnbWVudCBCb3gKKworICAgICAgICAgICAgSXQgaXMgc3Ryb25nbHkgcmVjb21tZW5k
ZWQgdGhhdCB0aGUgTW92aWUgRnJhZ21lbnQgSGVhZGVyIEJveCBhbmQgdGhlIFRyYWNrIEZyYWdt
ZW50IEhlYWRlciBCb3ggYmUKKyAgICAgICAgICAgIHBsYWNlZCBmaXJzdCBpbiB0aGVpciBjb250
YWluZXIuCisgICAgICAgICAgICBCb3hlcyBtYXJrZWQgd2l0aCBhbiBhc3RlcmlzayAoKikgbWF5
IGJlIHByZXNlbnQuCisgICAgICAgICAgICBGb3IgdGhlIGJveGVzIGxpc3RlZCBhYm92ZSwgdGhl
IGRlZmluaXRpb24gaXMgYXMgaXMgZGVmaW5lZCBpbiBJU08vSUVDIDE0NDk2LTEyIFsxXS4KKzxh
IG5hbWU9IjQuNyI+PC9hPgorICAgIDQuNyBFeGFtcGxlIG9mIEVuY2Fwc3VsYXRpb24gKGluZm9y
bWF0aXZlKQorICAgICAgICBbRmlsZV0KKyAgICAgICAgICAgIHNpemUgPSAxNzc5MAorICAgICAg
ICAgICAgW2Z0eXA6IEZpbGUgVHlwZSBCb3hdCisgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAw
CisgICAgICAgICAgICAgICAgc2l6ZSA9IDI0CisgICAgICAgICAgICAgICAgbWFqb3JfYnJhbmQg
PSBtcDQyIDogTVA0IHZlcnNpb24gMgorICAgICAgICAgICAgICAgIG1pbm9yX3ZlcnNpb24gPSAw
CisgICAgICAgICAgICAgICAgY29tcGF0aWJsZV9icmFuZHMKKyAgICAgICAgICAgICAgICAgICAg
YnJhbmRbMF0gPSBtcDQyIDogTVA0IHZlcnNpb24gMgorICAgICAgICAgICAgICAgICAgICBicmFu
ZFsxXSA9IGlzbzIgOiBJU08gQmFzZSBNZWRpYSBmaWxlIGZvcm1hdCB2ZXJzaW9uIDIKKyAgICAg
ICAgICAgIFttb292OiBNb3ZpZSBCb3hdCisgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAyNAor
ICAgICAgICAgICAgICAgIHNpemUgPSA3NTcKKyAgICAgICAgICAgICAgICBbbXZoZDogTW92aWUg
SGVhZGVyIEJveF0KKyAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAzMgorICAgICAgICAg
ICAgICAgICAgICBzaXplID0gMTA4CisgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisg
ICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAg
Y3JlYXRpb25fdGltZSA9IFVUQyAyMDE0LzEyLzEyLCAxODo0MToxOQorICAgICAgICAgICAgICAg
ICAgICBtb2RpZmljYXRpb25fdGltZSA9IFVUQyAyMDE0LzEyLzEyLCAxODo0MToxOQorICAgICAg
ICAgICAgICAgICAgICB0aW1lc2NhbGUgPSA0ODAwMAorICAgICAgICAgICAgICAgICAgICBkdXJh
dGlvbiA9IDMzNjAwICgwMDowMDowMC43MDApCisgICAgICAgICAgICAgICAgICAgIHJhdGUgPSAx
LjAwMDAwMAorICAgICAgICAgICAgICAgICAgICB2b2x1bWUgPSAxLjAwMDAwMAorICAgICAgICAg
ICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMAorICAgICAgICAgICAgICAgICAgICByZXNlcnZl
ZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAw
CisgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybWF0aW9uIG1hdHJpeAorICAgICAgICAgICAg
ICAgICAgICAgICAgfCBhLCBiLCB1IHwgICB8IDEuMDAwMDAwLCAwLjAwMDAwMCwgMC4wMDAwMDAg
fAorICAgICAgICAgICAgICAgICAgICAgICAgfCBjLCBkLCB2IHwgPSB8IDAuMDAwMDAwLCAxLjAw
MDAwMCwgMC4wMDAwMDAgfAorICAgICAgICAgICAgICAgICAgICAgICAgfCB4LCB5LCB3IHwgICB8
IDAuMDAwMDAwLCAwLjAwMDAwMCwgMS4wMDAwMDAgfAorICAgICAgICAgICAgICAgICAgICBwcmVf
ZGVmaW5lZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgcHJlX2RlZmluZWQgPSAw
eDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgIHByZV9kZWZpbmVkID0gMHgwMDAwMDAwMAor
ICAgICAgICAgICAgICAgICAgICBwcmVfZGVmaW5lZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAg
ICAgICAgICAgcHJlX2RlZmluZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgIHBy
ZV9kZWZpbmVkID0gMHgwMDAwMDAwMAorICAgICAgICAgICAgICAgICAgICBuZXh0X3RyYWNrX0lE
ID0gMgorICAgICAgICAgICAgICAgIFtpb2RzOiBPYmplY3QgRGVzY3JpcHRvciBCb3hdCisgICAg
ICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gMTQwCisgICAgICAgICAgICAgICAgICAgIHNpemUg
PSAzMworICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAg
ICBmbGFncyA9IDB4MDAwMDAwCisgICAgICAgICAgICAgICAgICAgIFt0YWcgPSAweDEwOiBNUDRf
SU9EXQorICAgICAgICAgICAgICAgICAgICAgICAgZXhwYW5kYWJsZUNsYXNzU2l6ZSA9IDE2Cisg
ICAgICAgICAgICAgICAgICAgICAgICBPYmplY3REZXNjcmlwdG9ySUQgPSAxCisgICAgICAgICAg
ICAgICAgICAgICAgICBVUkxfRmxhZyA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1
ZGVJbmxpbmVQcm9maWxlTGV2ZWxGbGFnID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgcmVz
ZXJ2ZWQgPSAweGYKKyAgICAgICAgICAgICAgICAgICAgICAgIE9EUHJvZmlsZUxldmVsSW5kaWNh
dGlvbiA9IDB4ZmYKKyAgICAgICAgICAgICAgICAgICAgICAgIHNjZW5lUHJvZmlsZUxldmVsSW5k
aWNhdGlvbiA9IDB4ZmYKKyAgICAgICAgICAgICAgICAgICAgICAgIGF1ZGlvUHJvZmlsZUxldmVs
SW5kaWNhdGlvbiA9IDB4ZmUKKyAgICAgICAgICAgICAgICAgICAgICAgIHZpc3VhbFByb2ZpbGVM
ZXZlbEluZGljYXRpb24gPSAweGZmCisgICAgICAgICAgICAgICAgICAgICAgICBncmFwaGljc1By
b2ZpbGVMZXZlbEluZGljYXRpb24gPSAweGZmCisgICAgICAgICAgICAgICAgICAgICAgICBbdGFn
ID0gMHgwZTogRVNfSURfSW5jXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGFuZGFi
bGVDbGFzc1NpemUgPSA0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJhY2tfSUQgPSAx
CisgICAgICAgICAgICAgICAgW3RyYWs6IFRyYWNrIEJveF0KKyAgICAgICAgICAgICAgICAgICAg
cG9zaXRpb24gPSAxNzMKKyAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDYwOAorICAgICAgICAg
ICAgICAgICAgICBbdGtoZDogVHJhY2sgSGVhZGVyIEJveF0KKyAgICAgICAgICAgICAgICAgICAg
ICAgIHBvc2l0aW9uID0gMTgxCisgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gOTIKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAg
ICBmbGFncyA9IDB4MDAwMDA3CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJhY2sgZW5h
YmxlZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYWNrIGluIG1vdmllCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgVHJhY2sgaW4gcHJldmlldworICAgICAgICAgICAgICAgICAg
ICAgICAgY3JlYXRpb25fdGltZSA9IFVUQyAyMDE0LzEyLzEyLCAxODo0MToxOQorICAgICAgICAg
ICAgICAgICAgICAgICAgbW9kaWZpY2F0aW9uX3RpbWUgPSBVVEMgMjAxNC8xMi8xMiwgMTg6NDE6
MTkKKyAgICAgICAgICAgICAgICAgICAgICAgIHRyYWNrX0lEID0gMQorICAgICAgICAgICAgICAg
ICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICBk
dXJhdGlvbiA9IDMzNjAwICgwMDowMDowMC43MDApCisgICAgICAgICAgICAgICAgICAgICAgICBy
ZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0g
MHgwMDAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXIgPSAwCisgICAgICAgICAg
ICAgICAgICAgICAgICBhbHRlcm5hdGVfZ3JvdXAgPSAwCisgICAgICAgICAgICAgICAgICAgICAg
ICB2b2x1bWUgPSAxLjAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAw
eDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybWF0aW9uIG1hdHJpeAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgYSwgYiwgdSB8ICAgfCAxLjAwMDAwMCwgMC4wMDAw
MDAsIDAuMDAwMDAwIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGMsIGQsIHYgfCA9
IHwgMC4wMDAwMDAsIDEuMDAwMDAwLCAwLjAwMDAwMCB8CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCB4LCB5LCB3IHwgICB8IDAuMDAwMDAwLCAwLjAwMDAwMCwgMS4wMDAwMDAgfAorICAg
ICAgICAgICAgICAgICAgICAgICAgd2lkdGggPSAwLjAwMDAwMAorICAgICAgICAgICAgICAgICAg
ICAgICAgaGVpZ2h0ID0gMC4wMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgW2VkdHM6IEVkaXQg
Qm94XQorICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAyNzMKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHNpemUgPSAzNgorICAgICAgICAgICAgICAgICAgICAgICAgW2Vsc3Q6IEVk
aXQgTGlzdCBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAyODEK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gMjgKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdz
ID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9jb3VudCA9IDEK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeVswXQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzZWdtZW50X2R1cmF0aW9uID0gMzM2MDAKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbWVkaWFfdGltZSA9IDMxMgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBtZWRpYV9yYXRlID0gMS4wMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgW21kaWE6
IE1lZGlhIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gMzA5CisgICAg
ICAgICAgICAgICAgICAgICAgICBzaXplID0gNDcyCisgICAgICAgICAgICAgICAgICAgICAgICBb
bWRoZDogTWVkaWEgSGVhZGVyIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3Np
dGlvbiA9IDMxNworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSAzMgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyZWF0
aW9uX3RpbWUgPSBVVEMgMjAxNC8xMi8xMiwgMTg6NDE6MTkKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBtb2RpZmljYXRpb25fdGltZSA9IFVUQyAyMDE0LzEyLzEyLCAxODo0MToxOQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVzY2FsZSA9IDQ4MDAwCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZHVyYXRpb24gPSAzNDU2MCAoMDA6MDA6MDAuNzIwKQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGxhbmd1YWdlID0gdW5kCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcHJlX2RlZmluZWQgPSAweDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgIFtoZGxy
OiBIYW5kbGVyIFJlZmVyZW5jZSBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9z
aXRpb24gPSAzNDkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gNTEKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVf
ZGVmaW5lZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVy
X3R5cGUgPSBzb3VuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAw
MDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAw
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSA9IFhpcGggQXVkaW8gSGFuZGxlcgorICAgICAg
ICAgICAgICAgICAgICAgICAgW21pbmY6IE1lZGlhIEluZm9ybWF0aW9uIEJveF0KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDQwMAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNpemUgPSAzODEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc21oZDogU291
bmQgTWVkaWEgSGVhZGVyIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9z
aXRpb24gPSA0MDgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDE2Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgYmFsYW5jZSA9IDAuMDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHJlc2VydmVkID0gMHgwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rp
bmY6IERhdGEgSW5mb3JtYXRpb24gQm94XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBwb3NpdGlvbiA9IDQyNAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0g
MzYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RyZWY6IERhdGEgUmVmZXJlbmNl
IEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNDMy
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gMjgKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDAwCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBlbnRyeV9jb3VudCA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFt1cmwgOiBEYXRhIEVudHJ5IFVybCBCb3hdCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSA0NDgKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gMTIKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBsb2NhdGlvbiA9IGluIHRoZSBzYW1lIGZpbGUKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBbc3RibDogU2FtcGxlIFRhYmxlIEJveF0KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcG9zaXRpb24gPSA0NjAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc2l6ZSA9IDMyMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3RzZDog
U2FtcGxlIERlc2NyaXB0aW9uIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHBvc2l0aW9uID0gNDY4CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
aXplID0gNzkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAw
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDAwCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9jb3VudCA9IDEKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtPcHVzOiBBdWRpbyBEZXNjcmlwdGlvbl0K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDQ4NAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSA2MworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwMDAwMDAw
MDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhX3JlZmVyZW5j
ZV9pbmRleCA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNl
cnZlZCA9IDB4MDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJl
c2VydmVkID0gMHgwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY2hhbm5lbGNvdW50ID0gNgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNhbXBsZXNpemUgPSAxNgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHByZV9kZWZpbmVkID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHJlc2VydmVkID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNhbXBsZXJhdGUgPSA0ODAwMC4wMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBbZE9wczogT3B1cyBTcGVjaWZpYyBCb3hdCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNTIwCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSAyNworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWZXJzaW9uID0gMAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPdXRwdXRDaGFubmVsQ291bnQgPSA2CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByZVNraXAgPSAzMTIKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSW5wdXRTYW1wbGVSYXRl
ID0gNDgwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3V0
cHV0R2FpbiA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Q2hhbm5lbE1hcHBpbmdGYW1pbHkgPSAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFN0cmVhbUNvdW50ID0gNAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBDb3VwbGVkQ291bnQgPSAyCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIENoYW5uZWxNYXBwaW5nCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwIC0+IDA6IGZyb250IGxlZnQKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEgLT4gNDogZnJvbiBjZW50
ZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIgLT4g
MTogZnJvbnQgcmlnaHQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDMgLT4gMjogc2lkZSBsZWZ0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA0IC0+IDM6IHNpZGUgcmlnaHQKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDUgLT4gNTogcmVhciBjZW50ZXIKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgW3N0dHM6IERlY29kaW5nIFRpbWUgdG8gU2FtcGxlIEJv
eF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNTQ3Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gMjQKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9jb3VudCA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5WzBdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc2FtcGxlX2NvdW50ID0gMTgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzYW1wbGVfZGVsdGEgPSAxOTIwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFtzdHNjOiBTYW1wbGUgVG8gQ2h1bmsgQm94XQorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcG9zaXRpb24gPSA1NzEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNpemUgPSA0MAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lv
biA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAw
MDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5X2NvdW50ID0gMgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlbMF0KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaXJzdF9jaHVuayA9IDEKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYW1wbGVzX3Blcl9jaHVuayA9IDEzCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FtcGxlX2Rlc2NyaXB0aW9uX2lu
ZGV4ID0gMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlbMV0KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaXJzdF9jaHVuayA9IDIKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYW1wbGVzX3Blcl9jaHVuayA9
IDUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYW1wbGVfZGVzY3Jp
cHRpb25faW5kZXggPSAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHN6OiBT
YW1wbGUgU2l6ZSBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3Np
dGlvbiA9IDYxMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDky
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gMAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FtcGxlX3NpemUgPSAwICh2YXJpYWJsZSkKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhbXBsZV9jb3VudCA9IDE4CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzBdID0gOTc3CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzFdID0gOTM4CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzJdID0gOTM5CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzNdID0gOTM4CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzRdID0gOTM0CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzVdID0gOTQ1CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzZdID0gOTQ4CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzddID0gOTU2CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzhdID0gOTU1CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzldID0gOTMwCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzEwXSA9IDkzMworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlfc2l6ZVsxMV0gPSA5MzQKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5X3NpemVbMTJdID0gOTcyCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzEzXSA9IDk3Nwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlfc2l6ZVsxNF0gPSA5NTgK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5X3NpemVbMTVdID0gOTQ5
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzE2XSA9IDk2
MgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlfc2l6ZVsxN10gPSA4
NDgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0Y286IENodW5rIE9mZnNldCBC
b3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDcwMwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDI0CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZW50cnlfY291bnQgPSAyCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjaHVua19vZmZzZXRbMF0gPSA3OTcKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNodW5rX29mZnNldFsxXSA9IDEzMDk2CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFtzZ3BkOiBTYW1wbGUgR3JvdXAgRGVzY3JpcHRpb24gQm94XQorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSA3MjcKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSAyNgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdmVyc2lvbiA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGdyb3VwaW5nX3R5cGUgPSByb2xsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBkZWZhdWx0X2xlbmd0aCA9IDIgKGNvbnN0YW50KQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZW50cnlfY291bnQgPSAxCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICByb2xsX2Rpc3RhbmNlWzBdID0gLTIKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgW3NiZ3A6IFNhbXBsZSB0byBHcm91cCBCb3hdCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDc1MworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc2l6ZSA9IDI4CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3Mg
PSAweDAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JvdXBpbmdf
dHlwZSA9IHJvbGwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5X2Nv
dW50ID0gMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlbMF0KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYW1wbGVfY291bnQgPSAxOAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyb3VwX2Rlc2NyaXB0aW9u
X2luZGV4ID0gMQorICAgICAgICAgICAgW2ZyZWU6IEZyZWUgU3BhY2UgQm94XQorICAgICAgICAg
ICAgICAgIHBvc2l0aW9uID0gNzgxCisgICAgICAgICAgICAgICAgc2l6ZSA9IDgKKyAgICAgICAg
ICAgIFttZGF0OiBNZWRpYSBEYXRhIEJveF0KKyAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDc4
OQorICAgICAgICAgICAgICAgIHNpemUgPSAxNzAwMQorPGEgbmFtZT0iNSI+PC9hPgorNSBBdXRo
b3JzJyBBZGRyZXNzCisgICAgWXVzdWtlIE5ha2FtdXJhCisgICAgICAgIEVtYWlsOiBtdWtlbi50
aGUudmZybWFuaWFjIHxhdHwgZ21haWwuY29tCisgICAgICAgIDwvZGl2PgorICAgIDwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL29wdXNfdXBkYXRlLnBhdGNoIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1c191cGRh
dGUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMTFmMDY2YzcwMjJmZjZmODk2ZTMxYzg2MDBhM2Q2ZjA2ZjBm
NDE4MgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL29wdXNfdXBkYXRlLnBhdGNoCkBAIC0wLDAgKzEs
MjQ0IEBACitkaWZmIC0tZ2l0IGEvY2VsdC9iYW5kcy5jIGIvY2VsdC9iYW5kcy5jCitpbmRleCA2
OTYyNTg3Li4zMmUxZGU2IDEwMDY0NAorLS0tIGEvY2VsdC9iYW5kcy5jCisrKysgYi9jZWx0L2Jh
bmRzLmMKK0BAIC0xMjM0LDkgKzEyMzQsMjMgQEAgdm9pZCBxdWFudF9hbGxfYmFuZHMoaW50IGVu
Y29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwKKyAgICAgICAgICBi
ID0gMDsKKyAgICAgICB9CisgCistICAgICAgaWYgKHJlc3ludGggJiYgTSplQmFuZHNbaV0tTiA+
PSBNKmVCYW5kc1tzdGFydF0gJiYgKHVwZGF0ZV9sb3diYW5kIHx8IGxvd2JhbmRfb2Zmc2V0PT0w
KSkKKysgICAgICBpZiAocmVzeW50aCAmJiAoTSplQmFuZHNbaV0tTiA+PSBNKmVCYW5kc1tzdGFy
dF0gfHwgaT09c3RhcnQrMSkgJiYgKHVwZGF0ZV9sb3diYW5kIHx8IGxvd2JhbmRfb2Zmc2V0PT0w
KSkKKyAgICAgICAgICAgICBsb3diYW5kX29mZnNldCA9IGk7CisgCisrICAgICAgaWYgKGkgPT0g
c3RhcnQrMSkKKysgICAgICB7CisrICAgICAgICAgaW50IG4xLCBuMjsKKysgICAgICAgICBpbnQg
b2Zmc2V0OworKyAgICAgICAgIG4xID0gTSooZUJhbmRzW3N0YXJ0KzFdLWVCYW5kc1tzdGFydF0p
OworKyAgICAgICAgIG4yID0gTSooZUJhbmRzW3N0YXJ0KzJdLWVCYW5kc1tzdGFydCsxXSk7Cisr
ICAgICAgICAgb2Zmc2V0ID0gTSplQmFuZHNbc3RhcnRdOworKyAgICAgICAgIC8qIER1cGxpY2F0
ZSBlbm91Z2ggb2YgdGhlIGZpcnN0IGJhbmQgZm9sZGluZyBkYXRhIHRvIGJlIGFibGUgdG8gZm9s
ZCB0aGUgc2Vjb25kIGJhbmQuCisrICAgICAgICAgICAgQ29waWVzIG5vIGRhdGEgZm9yIENFTFQt
b25seSBtb2RlLiAqLworKyAgICAgICAgIE9QVVNfQ09QWSgmbm9ybVtvZmZzZXQrbjFdLCAmbm9y
bVtvZmZzZXQrMipuMSAtIG4yXSwgbjItbjEpOworKyAgICAgICAgIGlmIChDPT0yKQorKyAgICAg
ICAgICAgIE9QVVNfQ09QWSgmbm9ybTJbb2Zmc2V0K24xXSwgJm5vcm0yW29mZnNldCsyKm4xIC0g
bjJdLCBuMi1uMSk7CisrICAgICAgfQorKworICAgICAgIHRmX2NoYW5nZSA9IHRmX3Jlc1tpXTsK
KyAgICAgICBpZiAoaT49bS0+ZWZmRUJhbmRzKQorICAgICAgIHsKK0BAIC0xMjU3LDcgKzEyNzEs
NyBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhpbnQgZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAqbSwg
aW50IHN0YXJ0LCBpbnQgZW5kLAorICAgICAgICAgIGZvbGRfc3RhcnQgPSBsb3diYW5kX29mZnNl
dDsKKyAgICAgICAgICB3aGlsZShNKmVCYW5kc1stLWZvbGRfc3RhcnRdID4gZWZmZWN0aXZlX2xv
d2JhbmQpOworICAgICAgICAgIGZvbGRfZW5kID0gbG93YmFuZF9vZmZzZXQtMTsKKy0gICAgICAg
ICB3aGlsZShNKmVCYW5kc1srK2ZvbGRfZW5kXSA8IGVmZmVjdGl2ZV9sb3diYW5kK04pOworKyAg
ICAgICAgIHdoaWxlKCsrZm9sZF9lbmQgPCBpICYmIE0qZUJhbmRzW2ZvbGRfZW5kXSA8IGVmZmVj
dGl2ZV9sb3diYW5kK04pOworICAgICAgICAgIHhfY20gPSB5X2NtID0gMDsKKyAgICAgICAgICBm
b2xkX2kgPSBmb2xkX3N0YXJ0OyBkbyB7CisgICAgICAgICAgICB4X2NtIHw9IGNvbGxhcHNlX21h
c2tzW2ZvbGRfaSpDKzBdOworZGlmZiAtLWdpdCBhL2NlbHQvcXVhbnRfYmFuZHMuYyBiL2NlbHQv
cXVhbnRfYmFuZHMuYworaW5kZXggZTVlZDllZi4uODJmYjgyMyAxMDA2NDQKKy0tLSBhL2NlbHQv
cXVhbnRfYmFuZHMuYworKysrIGIvY2VsdC9xdWFudF9iYW5kcy5jCitAQCAtNTUyLDYgKzU1Miw3
IEBAIHZvaWQgbG9nMkFtcChjb25zdCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAor
ICAgICAgIHsKKyAgICAgICAgICBvcHVzX3ZhbDE2IGxnID0gQUREMTYob2xkRUJhbmRzW2krYypt
LT5uYkVCYW5kc10sCisgICAgICAgICAgICAgICAgICAgICAgICAgIFNITDE2KChvcHVzX3ZhbDE2
KWVNZWFuc1tpXSw2KSk7CisrICAgICAgICAgbGcgPSBNSU4zMihRQ09OU1QzMigzMi5mLCAxNiks
IGxnKTsKKyAgICAgICAgICBlQmFuZHNbaStjKm0tPm5iRUJhbmRzXSA9IFBTSFIzMihjZWx0X2V4
cDIobGcpLDQpOworICAgICAgIH0KKyAgICAgICBmb3IgKDtpPG0tPm5iRUJhbmRzO2krKykKK2Rp
ZmYgLS1naXQgYS9zaWxrL0xQQ19pbnZfcHJlZF9nYWluLmMgYi9zaWxrL0xQQ19pbnZfcHJlZF9n
YWluLmMKK2luZGV4IDYwYzQzOWIuLjZjMzAxZGEgMTAwNjQ0CistLS0gYS9zaWxrL0xQQ19pbnZf
cHJlZF9nYWluLmMKKysrKyBiL3NpbGsvTFBDX2ludl9wcmVkX2dhaW4uYworQEAgLTg0LDggKzg0
LDEzIEBAIHN0YXRpYyBvcHVzX2ludDMyIExQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RQSggICAgICAg
ICAgICAgICAgIC8qIE8gICBSZXR1cm5zIGludmVyCisgCisgICAgICAgICAvKiBVcGRhdGUgQVIg
Y29lZmZpY2llbnQgKi8KKyAgICAgICAgIGZvciggbiA9IDA7IG4gPCBrOyBuKysgKSB7CistICAg
ICAgICAgICAgdG1wX1FBID0gQW9sZF9RQVsgbiBdIC0gTVVMMzJfRlJBQ19RKCBBb2xkX1FBWyBr
IC0gbiAtIDEgXSwgcmNfUTMxLCAzMSApOworLSAgICAgICAgICAgIEFuZXdfUUFbIG4gXSA9IE1V
TDMyX0ZSQUNfUSggdG1wX1FBLCByY19tdWx0MiAsIG11bHQyUSApOworKyAgICAgICAgICAgIG9w
dXNfaW50NjQgdG1wNjQ7CisrICAgICAgICAgICAgdG1wX1FBID0gc2lsa19TVUJfU0FUMzIoIEFv
bGRfUUFbIG4gXSwgTVVMMzJfRlJBQ19RKCBBb2xkX1FBWyBrIC0gbiAtIDEgXSwgcmNfUTMxLCAz
MSApICk7CisrICAgICAgICAgICAgdG1wNjQgPSBzaWxrX1JTSElGVF9ST1VORDY0KCBzaWxrX1NN
VUxMKCB0bXBfUUEsIHJjX211bHQyICksIG11bHQyUSk7CisrICAgICAgICAgICAgaWYoIHRtcDY0
ID4gc2lsa19pbnQzMl9NQVggfHwgdG1wNjQgPCBzaWxrX2ludDMyX01JTiApIHsKKysgICAgICAg
ICAgICAgICByZXR1cm4gMDsKKysgICAgICAgICAgICB9CisrICAgICAgICAgICAgQW5ld19RQVsg
biBdID0gKCBvcHVzX2ludDMyICl0bXA2NDsKKyAgICAgICAgIH0KKyAgICAgfQorIAorZGlmZiAt
LWdpdCBhL3NpbGsvTkxTRl9zdGFiaWxpemUuYyBiL3NpbGsvTkxTRl9zdGFiaWxpemUuYworaW5k
ZXggOTc5YWFiYS4uMmVmMjM5OCAxMDA2NDQKKy0tLSBhL3NpbGsvTkxTRl9zdGFiaWxpemUuYwor
KysrIGIvc2lsay9OTFNGX3N0YWJpbGl6ZS5jCitAQCAtMTM0LDcgKzEzNCw3IEBAIHZvaWQgc2ls
a19OTFNGX3N0YWJpbGl6ZSgKKyAKKyAgICAgICAgIC8qIEtlZXAgZGVsdGFfbWluIGRpc3RhbmNl
IGJldHdlZW4gdGhlIE5MU0ZzICovCisgICAgICAgICBmb3IoIGkgPSAxOyBpIDwgTDsgaSsrICkK
Ky0gICAgICAgICAgICBOTFNGX1ExNVtpXSA9IHNpbGtfbWF4X2ludCggTkxTRl9RMTVbaV0sIE5M
U0ZfUTE1W2ktMV0gKyBORGVsdGFNaW5fUTE1W2ldICk7CisrICAgICAgICAgICAgTkxTRl9RMTVb
aV0gPSBzaWxrX21heF9pbnQoIE5MU0ZfUTE1W2ldLCBzaWxrX0FERF9TQVQxNiggTkxTRl9RMTVb
aS0xXSwgTkRlbHRhTWluX1ExNVtpXSApICk7CisgCisgICAgICAgICAvKiBMYXN0IE5MU0Ygc2hv
dWxkIGJlIG5vIGhpZ2hlciB0aGFuIDEgLSBORGVsdGFNaW5bTF0gKi8KKyAgICAgICAgIE5MU0Zf
UTE1W0wtMV0gPSBzaWxrX21pbl9pbnQoIE5MU0ZfUTE1W0wtMV0sICgxPDwxNSkgLSBORGVsdGFN
aW5fUTE1W0xdICk7CitkaWZmIC0tZ2l0IGEvc2lsay9kZWNfQVBJLmMgYi9zaWxrL2RlY19BUEku
YworaW5kZXggZWZkNzkxOC4uMjFiYjdlMCAxMDA2NDQKKy0tLSBhL3NpbGsvZGVjX0FQSS5jCisr
KysgYi9zaWxrL2RlY19BUEkuYworQEAgLTcyLDYgKzcyLDkgQEAgb3B1c19pbnQgc2lsa19Jbml0
RGVjb2RlciggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJldHVybnMgZXJy
b3IgY28KKyAgICAgZm9yKCBuID0gMDsgbiA8IERFQ09ERVJfTlVNX0NIQU5ORUxTOyBuKysgKSB7
CisgICAgICAgICByZXQgID0gc2lsa19pbml0X2RlY29kZXIoICZjaGFubmVsX3N0YXRlWyBuIF0g
KTsKKyAgICAgfQorKyAgICBzaWxrX21lbXNldCgmKChzaWxrX2RlY29kZXIgKilkZWNTdGF0ZSkt
PnNTdGVyZW8sIDAsIHNpemVvZigoKHNpbGtfZGVjb2RlciAqKWRlY1N0YXRlKS0+c1N0ZXJlbykp
OworKyAgICAvKiBOb3Qgc3RyaWN0bHkgbmVlZGVkLCBidXQgaXQncyBjbGVhbmVyIHRoYXQgd2F5
ICovCisrICAgICgoc2lsa19kZWNvZGVyICopZGVjU3RhdGUpLT5wcmV2X2RlY29kZV9vbmx5X21p
ZGRsZSA9IDA7CisgCisgICAgIHJldHVybiByZXQ7CisgfQorZGlmZiAtLWdpdCBhL3NpbGsvcmVz
YW1wbGVyX3ByaXZhdGVfSUlSX0ZJUi5jIGIvc2lsay9yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklS
LmMKK2luZGV4IGRiZDZkOWEuLjkxYTQzYWEgMTAwNjQ0CistLS0gYS9zaWxrL3Jlc2FtcGxlcl9w
cml2YXRlX0lJUl9GSVIuYworKysrIGIvc2lsay9yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSLmMK
K0BAIC03NSwxMCArNzUsMTAgQEAgdm9pZCBzaWxrX3Jlc2FtcGxlcl9wcml2YXRlX0lJUl9GSVIo
CisgICAgIHNpbGtfcmVzYW1wbGVyX3N0YXRlX3N0cnVjdCAqUyA9IChzaWxrX3Jlc2FtcGxlcl9z
dGF0ZV9zdHJ1Y3QgKilTUzsKKyAgICAgb3B1c19pbnQzMiBuU2FtcGxlc0luOworICAgICBvcHVz
X2ludDMyIG1heF9pbmRleF9RMTYsIGluZGV4X2luY3JlbWVudF9RMTY7CistICAgIG9wdXNfaW50
MTYgYnVmWyBSRVNBTVBMRVJfTUFYX0JBVENIX1NJWkVfSU4gKyBSRVNBTVBMRVJfT1JERVJfRklS
XzEyIF07CisrICAgIG9wdXNfaW50MTYgYnVmWyAyKlJFU0FNUExFUl9NQVhfQkFUQ0hfU0laRV9J
TiArIFJFU0FNUExFUl9PUkRFUl9GSVJfMTIgXTsKKyAKKyAgICAgLyogQ29weSBidWZmZXJlZCBz
YW1wbGVzIHRvIHN0YXJ0IG9mIGJ1ZmZlciAqLworLSAgICBzaWxrX21lbWNweSggYnVmLCBTLT5z
RklSLCBSRVNBTVBMRVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKKysg
ICAgc2lsa19tZW1jcHkoIGJ1ZiwgUy0+c0ZJUiwgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNp
emVvZiggb3B1c19pbnQxNiApICk7CisgCisgICAgIC8qIEl0ZXJhdGUgb3ZlciBibG9ja3Mgb2Yg
ZnJhbWVTaXplSW4gaW5wdXQgc2FtcGxlcyAqLworICAgICBpbmRleF9pbmNyZW1lbnRfUTE2ID0g
Uy0+aW52UmF0aW9fUTE2OworQEAgLTk1LDEzICs5NSwxMyBAQCB2b2lkIHNpbGtfcmVzYW1wbGVy
X3ByaXZhdGVfSUlSX0ZJUigKKyAKKyAgICAgICAgIGlmKCBpbkxlbiA+IDAgKSB7CisgICAgICAg
ICAgICAgLyogTW9yZSBpdGVyYXRpb25zIHRvIGRvOyBjb3B5IGxhc3QgcGFydCBvZiBmaWx0ZXJl
ZCBzaWduYWwgdG8gYmVnaW5uaW5nIG9mIGJ1ZmZlciAqLworLSAgICAgICAgICAgIHNpbGtfbWVt
Y3B5KCBidWYsICZidWZbIG5TYW1wbGVzSW4gPDwgMSBdLCBSRVNBTVBMRVJfT1JERVJfRklSXzEy
ICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKKysgICAgICAgICAgICBzaWxrX21lbW1vdmUoIGJ1
ZiwgJmJ1ZlsgblNhbXBsZXNJbiA8PCAxIF0sIFJFU0FNUExFUl9PUkRFUl9GSVJfMTIgKiBzaXpl
b2YoIG9wdXNfaW50MTYgKSApOworICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgIH0KKyAgICAgfQorIAorICAgICAvKiBDb3B5IGxhc3QgcGFydCBvZiBmaWx0
ZXJlZCBzaWduYWwgdG8gdGhlIHN0YXRlIGZvciB0aGUgbmV4dCBjYWxsICovCistICAgIHNpbGtf
bWVtY3B5KCBTLT5zRklSLCAmYnVmWyBuU2FtcGxlc0luIDw8IDEgXSwgUkVTQU1QTEVSX09SREVS
X0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQzMiApICk7CisrICAgIHNpbGtfbWVtY3B5KCBTLT5z
RklSLCAmYnVmWyBuU2FtcGxlc0luIDw8IDEgXSwgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNp
emVvZiggb3B1c19pbnQxNiApICk7CisgfQorIAorZGlmZiAtLWdpdCBhL3NyYy9vcHVzX2RlY29k
ZXIuYyBiL3NyYy9vcHVzX2RlY29kZXIuYworaW5kZXggMGNjNTZmOC4uOGEzMGZiYyAxMDA2NDQK
Ky0tLSBhL3NyYy9vcHVzX2RlY29kZXIuYworKysrIGIvc3JjL29wdXNfZGVjb2Rlci5jCitAQCAt
NTk1LDE2ICs1OTUsMTQgQEAgc3RhdGljIGludCBvcHVzX3BhY2tldF9wYXJzZV9pbXBsKGNvbnN0
IHVuc2lnbmVkIGNoYXIgKmRhdGEsIGludCBsZW4sCisgICAgICAgLyogUGFkZGluZyBmbGFnIGlz
IGJpdCA2ICovCisgICAgICAgaWYgKGNoJjB4NDApCisgICAgICAgeworLSAgICAgICAgIGludCBw
YWRkaW5nPTA7CisgICAgICAgICAgaW50IHA7CisgICAgICAgICAgZG8geworICAgICAgICAgICAg
IGlmIChsZW48PTApCisgICAgICAgICAgICAgICAgcmV0dXJuIE9QVVNfSU5WQUxJRF9QQUNLRVQ7
CisgICAgICAgICAgICAgcCA9ICpkYXRhKys7CisgICAgICAgICAgICAgbGVuLS07CistICAgICAg
ICAgICAgcGFkZGluZyArPSBwPT0yNTUgPyAyNTQ6IHA7CisrICAgICAgICAgICAgbGVuIC09IHA9
PTI1NSA/IDI1NDogcDsKKyAgICAgICAgICB9IHdoaWxlIChwPT0yNTUpOworLSAgICAgICAgIGxl
biAtPSBwYWRkaW5nOworICAgICAgIH0KKyAgICAgICBpZiAobGVuPDApCisgICAgICAgICAgcmV0
dXJuIE9QVVNfSU5WQUxJRF9QQUNLRVQ7CitkaWZmIC0tZ2l0IGEvcnVuX3ZlY3RvcnMuc2ggYi9y
dW5fdmVjdG9ycy5zaAoraW5kZXggN2NkMjNlZC4uNDg0MWIwYSAxMDA3NTUKKy0tLSBhL3J1bl92
ZWN0b3JzLnNoCisrKysgYi9ydW5fdmVjdG9ycy5zaAorQEAgLTEsMyArMSw1IEBACisrIyEvYmlu
L3NoCisrIworICMgQ29weXJpZ2h0IChjKSAyMDExLTIwMTIgSUVURiBUcnVzdCwgSmVhbi1NYXJj
IFZhbGluLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICMKKyAjICBUaGlzIGZpbGUgaXMgZXh0cmFj
dGVkIGZyb20gUkZDNjcxNi4gUGxlYXNlIHNlZSB0aGF0IFJGQyBmb3IgYWRkaXRpb25hbAorQEAg
LTMxLDEwICszMyw4IEBACisgIyAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgIyAgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgCistIyEvYmluL3NoCist
Cistcm0gbG9nc19tb25vLnR4dAorLXJtIGxvZ3Nfc3RlcmVvLnR4dAorK3JtIC1mIGxvZ3NfbW9u
by50eHQgbG9nc19tb25vMi50eHQKKytybSAtZiBsb2dzX3N0ZXJlby50eHQgbG9nc19zdGVyZW8y
LnR4dAorIAorIGlmIFsgIiQjIiAtbmUgIjMiIF07IHRoZW4KKyAgICAgZWNobyAidXNhZ2U6IHJ1
bl92ZWN0b3JzLnNoIDxleGVjIHBhdGg+IDx2ZWN0b3IgcGF0aD4gPHJhdGU+IgorQEAgLTQ1LDE4
ICs0NSwyMyBAQCBDTURfUEFUSD0kMQorIFZFQ1RPUl9QQVRIPSQyCisgUkFURT0kMworIAorLU9Q
VVNfREVNTz0kQ01EX1BBVEgvb3B1c19kZW1vCistT1BVU19DT01QQVJFPSRDTURfUEFUSC9vcHVz
X2NvbXBhcmUKKys6ICR7T1BVU19ERU1POj0kQ01EX1BBVEgvb3B1c19kZW1vfQorKzogJHtPUFVT
X0NPTVBBUkU6PSRDTURfUEFUSC9vcHVzX2NvbXBhcmV9CisgCisgaWYgWyAtZCAkVkVDVE9SX1BB
VEggXTsgdGhlbgorICAgICBlY2hvIFRlc3QgdmVjdG9ycyBmb3VuZCBpbiAkVkVDVE9SX1BBVEgK
KyBlbHNlCisgICAgIGVjaG8gTm8gdGVzdCB2ZWN0b3JzIGZvdW5kCistICAgICNEb24ndCBtYWtl
IHRoZSB0ZXN0IGZhaWwgaGVyZSBiZWNhdXNlIHRoZSB0ZXN0IHZlY3RvcnMgd2lsbCBiZQorLSAg
ICAjZGlzdHJpYnV0ZWQgc2VwYXJhdGVseQorKyAgICAjRG9uJ3QgbWFrZSB0aGUgdGVzdCBmYWls
IGhlcmUgYmVjYXVzZSB0aGUgdGVzdCB2ZWN0b3JzCisrICAgICN3aWxsIGJlIGRpc3RyaWJ1dGVk
IHNlcGFyYXRlbHkKKyAgICAgZXhpdCAwCisgZmkKKyAKKytpZiBbICEgLXggJE9QVVNfQ09NUEFS
RSBdOyB0aGVuCisrICAgIGVjaG8gRVJST1I6IENvbXBhcmUgcHJvZ3JhbSBub3QgZm91bmQ6ICRP
UFVTX0NPTVBBUkUKKysgICAgZXhpdCAxCisrZmkKKysKKyBpZiBbIC14ICRPUFVTX0RFTU8gXTsg
dGhlbgorICAgICBlY2hvIERlY29kaW5nIHdpdGggJE9QVVNfREVNTworIGVsc2UKK0BAIC04Miw5
ICs4NywxMSBAQCBkbworICAgICAgICAgZWNobyBFUlJPUjogZGVjb2RpbmcgZmFpbGVkCisgICAg
ICAgICBleGl0IDEKKyAgICAgZmkKKy0gICAgJE9QVVNfQ09NUEFSRSAtciAkUkFURSAkVkVDVE9S
X1BBVEgvdGVzdHZlY3RvciRmaWxlLmRlYyB0bXAub3V0ID4+IGxvZ3NfbW9uby50eHQgMj4mMQor
KyAgICAkT1BVU19DT01QQVJFIC1yICRSQVRFICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJHtmaWxl
fS5kZWMgdG1wLm91dCA+PiBsb2dzX21vbm8udHh0IDI+JjEKKyAgICAgZmxvYXRfcmV0PSQ/Cist
ICAgIGlmIFsgIiRmbG9hdF9yZXQiIC1lcSAiMCIgXTsgdGhlbgorKyAgICAkT1BVU19DT01QQVJF
IC1yICRSQVRFICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJHtmaWxlfW0uZGVjIHRtcC5vdXQgPj4g
bG9nc19tb25vMi50eHQgMj4mMQorKyAgICBmbG9hdF9yZXQyPSQ/CisrICAgIGlmIFsgIiRmbG9h
dF9yZXQiIC1lcSAiMCIgXSB8fCBbICIkZmxvYXRfcmV0MiIgLWVxICIwIiBdOyB0aGVuCisgICAg
ICAgICBlY2hvIG91dHB1dCBtYXRjaGVzIHJlZmVyZW5jZQorICAgICBlbHNlCisgICAgICAgICBl
Y2hvIEVSUk9SOiBvdXRwdXQgZG9lcyBub3QgbWF0Y2ggcmVmZXJlbmNlCitAQCAtMTExLDkgKzEx
OCwxMSBAQCBkbworICAgICAgICAgZWNobyBFUlJPUjogZGVjb2RpbmcgZmFpbGVkCisgICAgICAg
ICBleGl0IDEKKyAgICAgZmkKKy0gICAgJE9QVVNfQ09NUEFSRSAtcyAtciAkUkFURSAkVkVDVE9S
X1BBVEgvdGVzdHZlY3RvciRmaWxlLmRlYyB0bXAub3V0ID4+IGxvZ3Nfc3RlcmVvLnR4dCAyPiYx
CisrICAgICRPUFVTX0NPTVBBUkUgLXMgLXIgJFJBVEUgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3Ik
e2ZpbGV9LmRlYyB0bXAub3V0ID4+IGxvZ3Nfc3RlcmVvLnR4dCAyPiYxCisgICAgIGZsb2F0X3Jl
dD0kPworLSAgICBpZiBbICIkZmxvYXRfcmV0IiAtZXEgIjAiIF07IHRoZW4KKysgICAgJE9QVVNf
Q09NUEFSRSAtcyAtciAkUkFURSAkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciR7ZmlsZX1tLmRlYyB0
bXAub3V0ID4+IGxvZ3Nfc3RlcmVvMi50eHQgMj4mMQorKyAgICBmbG9hdF9yZXQyPSQ/CisrICAg
IGlmIFsgIiRmbG9hdF9yZXQiIC1lcSAiMCIgXSB8fCBbICIkZmxvYXRfcmV0MiIgLWVxICIwIiBd
OyB0aGVuCisgICAgICAgICBlY2hvIG91dHB1dCBtYXRjaGVzIHJlZmVyZW5jZQorICAgICBlbHNl
CisgICAgICAgICBlY2hvIEVSUk9SOiBvdXRwdXQgZG9lcyBub3QgbWF0Y2ggcmVmZXJlbmNlCitA
QCAtMTI1LDUgKzEzNCwxMCBAQCBkb25lCisgCisgCisgZWNobyBBbGwgdGVzdHMgaGF2ZSBwYXNz
ZWQgc3VjY2Vzc2Z1bGx5CistZ3JlcCBxdWFsaXR5IGxvZ3NfbW9uby50eHQgfCBhd2sgJ3tzdW0r
PSQ0fUVORHtwcmludCAiQXZlcmFnZSBtb25vIHF1YWxpdHkgaXMiLCBzdW0vTlIsICIlIn0nCist
Z3JlcCBxdWFsaXR5IGxvZ3Nfc3RlcmVvLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee3ByaW50ICJB
dmVyYWdlIHN0ZXJlbyBxdWFsaXR5IGlzIiwgc3VtL05SLCAiJSJ9JworK21vbm8xPWBncmVwIHF1
YWxpdHkgbG9nc19tb25vLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee2lmIChOUiA9PSAxMikgc3Vt
IC89IDEyOyBlbHNlIHN1bSA9IDA7IHByaW50IHN1bX0nYAorK21vbm8yPWBncmVwIHF1YWxpdHkg
bG9nc19tb25vMi50eHQgfCBhd2sgJ3tzdW0rPSQ0fUVORHtpZiAoTlIgPT0gMTIpIHN1bSAvPSAx
MjsgZWxzZSBzdW0gPSAwOyBwcmludCBzdW19J2AKKytlY2hvICRtb25vMSAkbW9ubzIgfCBhd2sg
J3tpZiAoJDIgPiAkMSkgJDEgPSAkMjsgcHJpbnQgIkF2ZXJhZ2UgbW9ubyBxdWFsaXR5IGlzIiwg
JDEsICIlIn0nCisrCisrc3RlcmVvMT1gZ3JlcCBxdWFsaXR5IGxvZ3Nfc3RlcmVvLnR4dCB8IGF3
ayAne3N1bSs9JDR9RU5Ee2lmIChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNlIHN1bSA9IDA7IHBy
aW50IHN1bX0nYAorK3N0ZXJlbzI9YGdyZXAgcXVhbGl0eSBsb2dzX3N0ZXJlbzIudHh0IHwgYXdr
ICd7c3VtKz0kNH1FTkR7aWYgKE5SID09IDEyKSBzdW0gLz0gMTI7IGVsc2Ugc3VtID0gMDsgcHJp
bnQgc3VtfSdgCisrZWNobyAkc3RlcmVvMSAkc3RlcmVvMiB8IGF3ayAne2lmICgkMiA+ICQxKSAk
MSA9ICQyOyBwcmludCAiQXZlcmFnZSBzdGVyZW8gcXVhbGl0eSBpcyIsICQxLCAiJSJ9JwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9kb2MvcmVsZWFzZS50eHQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9yZWxlYXNlLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZDNm
ZmEyMzkwMWMwNGQyZmI5ODg2ZjUyZDRjYjc0Y2E0MjdiNmQxCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9k
b2MvcmVsZWFzZS50eHQKQEAgLTAsMCArMSw0MyBAQAorPSBSZWxlYXNlIGNoZWNrbGlzdCA9CisK
Kz09IFNvdXJjZSByZWxlYXNlID09CisKKy0gQ2hlY2sgZm9yIHVuY29tbWl0dGVkIGNoYW5nZXMg
dG8gbWFzdGVyLgorLSBVcGRhdGUgT1BVU19MVF8qIEFQSSB2ZXJzaW9uaW5nIGluIGNvbmZpZ3Vy
ZS5hYy4KKy0gVGFnIHRoZSByZWxlYXNlIGNvbW1pdCB3aXRoICdnaXQgdGFnIC1zIHZOLk0nLgor
IC0gSW5jbHVkZSByZWxlYXNlIG5vdGVzIGluIHRoZSB0YWcgYW5ub3RhdGlvbi4KKy0gVmVyaWZ5
ICdtYWtlIGRpc3RjaGVjaycgcHJvZHVjZXMgYSB0YXJiYWxsIHdpdGgKKyAgdGhlIGRlc2lyZWQg
bmFtZS4KKy0gUHVzaCB0YWcgdG8gcHVibGljIHJlcG8uCistIFVwbG9hZCBzb3VyY2UgcGFja2Fn
ZSAnb3B1cy0ke3ZlcnNpb259LnRhci5neicKKyAtIEFkZCB0byBodHRwczovL3N2bi54aXBoLm9y
Zy9yZWxlYXNlcy9vcHVzLworIC0gVXBkYXRlIGNoZWNrc3VtIGZpbGVzCisgLSBzdm4gY29tbWl0
CisgLSBDb3B5IHRvIGFyY2hpdmUubW96aWxsYS5vcmcvcHViL29wdXMvCisgLSBVcGRhdGUgY2hl
Y2tzdW0gZmlsZXMgdGhlcmUgYXMgd2VsbC4KKy0gQWRkIHJlbGVhc2Ugbm90ZXMgdG8gaHR0cHM6
Ly9naXQueGlwaC5vcmcvb3B1cy13ZWJzaXRlLmdpdAorLSBVcGRhdGUgbGlua3MgYW5kIGNoZWNr
c3VtcyBvbiB0aGUgZG93bmxvYWRzIHBhZ2UuCistIEFkZCBhIGNvcHkgb2YgdGhlIGRvY3VtZW50
YXRpb24gdG8gPGh0dHBzOi8vd3d3Lm9wdXMtY29kZWMub3JnL2RvY3MvPgorICBhbmQgdXBkYXRl
IHRoZSBsaW5rcy4KKy0gVXBkYXRlIC90b3BpYyBpbiAjb3B1cyBJUkMgY2hhbm5lbC4KKworUmVs
ZWFzZXMgYXJlIGNvbW1pdGVkIHRvIGh0dHBzOi8vc3ZuLnhpcGgub3JnL3JlbGVhc2VzL29wdXMv
Cit3aGljaCBwcm9wYWdhdGVzIHRvIGRvd25sb2Fkcy54aXBoLm9yZywgYW5kIGNvcGllZCBtYW51
YWxseQordG8gaHR0cHM6Ly9hcmNoaXZlLm1vemlsbGEub3JnL3B1Yi9vcHVzLworCitXZWJzaXRl
IHVwZGF0ZXMgYXJlIGNvbW1pdHRlZCB0byBodHRwczovL2dpdC54aXBoLm9yZy9vcHVzLXdlYnNp
dGUuZ2l0Cit3aGljaCBwcm9wYWdhdGVzIHRvIGh0dHBzOi8vb3B1cy1jb2RlYy5vcmcvCisKKz09
IEJpbmFyeSByZWxlYXNlID09CisKK1dlIHVzdWFsbHkgYnVpbGQgb3B1cy10b29scyBiaW5hcmll
cyBmb3IgTWFjT1MgYW5kIFdpbmRvd3MuCisKK0JpbmFyeSByZWxlYXNlcyBhcmUgY29waWVkIG1h
bnVhbGx5IHRvCitodHRwczovL2FyY2hpdmUubW96aWxsYS5vcmcvcHViL29wdXMvd2luMzIvCisK
K0ZvciBNYWMsIHN1Ym1pdCBhIHB1bGwgcmVxdWVzdCB0byBob21lYnJldy4KKworPT0gV2Vic2l0
ZSB1cGRhdGVzID09CisKK0ZvciBtYWpvciByZWxlYXNlcywgcmVjcmVhdGUgdGhlIGZpbGVzIG9u
IGh0dHBzOi8vb3B1cy1jb2RlYy5vcmcvZXhhbXBsZXMvCit3aXRoIHRoZSBuZXh0IGVuY29kZXIu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2luY2x1ZGUvb3B1c19kZWZpbmVzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUvb3B1c19kZWZpbmVz
LmgKaW5kZXggMzE1NDEyZGQxZDIzODNjZjkwMDk2OTBkM2FhMTAyYWFhMzBhYTgxMy4uMzNjNWFj
ZGIzMzkzNTAxYzlkZDYyODk3OGM3OGZkMjI2NDU5ZGM1NSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29w
dXNfZGVmaW5lcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvaW5jbHVkZS9vcHVzX2RlZmluZXMuaApAQCAtMTY1LDggKzE2NSw5
IEBAIGV4dGVybiAiQyIgewogI2RlZmluZSBPUFVTX0dFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT05f
UkVRVUVTVCA0MDQxCiAjZGVmaW5lIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRURfUkVRVUVT
VCA0MDQyCiAjZGVmaW5lIE9QVVNfR0VUX1BSRURJQ1RJT05fRElTQUJMRURfUkVRVUVTVCA0MDQz
Ci0KIC8qIERvbid0IHVzZSA0MDQ1LCBpdCdzIGFscmVhZHkgdGFrZW4gYnkgT1BVU19HRVRfR0FJ
Tl9SRVFVRVNUICovCisjZGVmaW5lIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRF9S
RVFVRVNUIDQwNDYKKyNkZWZpbmUgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JF
UVVFU1QgNDA0NwogCiAvKiBNYWNyb3MgdG8gdHJpZ2dlciBjb21waWxhdGlvbiBlcnJvcnMgd2hl
biB0aGUgd3JvbmcgdHlwZXMgYXJlIHByb3ZpZGVkIHRvIGEgQ1RMICovCiAjZGVmaW5lIF9fb3B1
c19jaGVja19pbnQoeCkgKCgodm9pZCkoKHgpID09IChvcHVzX2ludDMyKTApKSwgKG9wdXNfaW50
MzIpKHgpKQpAQCAtMjA4LDYgKzIwOSw5IEBAIGV4dGVybiAiQyIgewogI2RlZmluZSBPUFVTX0ZS
QU1FU0laRV8yMF9NUyAgICAgICAgICAgICAgICAgNTAwNCAvKio8IFVzZSAyMCBtcyBmcmFtZXMg
Ki8KICNkZWZpbmUgT1BVU19GUkFNRVNJWkVfNDBfTVMgICAgICAgICAgICAgICAgIDUwMDUgLyoq
PCBVc2UgNDAgbXMgZnJhbWVzICovCiAjZGVmaW5lIE9QVVNfRlJBTUVTSVpFXzYwX01TICAgICAg
ICAgICAgICAgICA1MDA2IC8qKjwgVXNlIDYwIG1zIGZyYW1lcyAqLworI2RlZmluZSBPUFVTX0ZS
QU1FU0laRV84MF9NUyAgICAgICAgICAgICAgICAgNTAwNyAvKio8IFVzZSA4MCBtcyBmcmFtZXMg
Ki8KKyNkZWZpbmUgT1BVU19GUkFNRVNJWkVfMTAwX01TICAgICAgICAgICAgICAgIDUwMDggLyoq
PCBVc2UgMTAwIG1zIGZyYW1lcyAqLworI2RlZmluZSBPUFVTX0ZSQU1FU0laRV8xMjBfTVMgICAg
ICAgICAgICAgICAgNTAwOSAvKio8IFVzZSAxMjAgbXMgZnJhbWVzICovCiAKIC8qKkB9Ki8KIApA
QCAtNTY2LDcgKzU3MCw5IEBAIGV4dGVybiAiQyIgewogICAqIDxkdD5PUFVTX0ZSQU1FU0laRV8y
MF9NUzwvZHQ+PGRkPlVzZSAyMCBtcyBmcmFtZXMuPC9kZD4KICAgKiA8ZHQ+T1BVU19GUkFNRVNJ
WkVfNDBfTVM8L2R0PjxkZD5Vc2UgNDAgbXMgZnJhbWVzLjwvZGQ+CiAgICogPGR0Pk9QVVNfRlJB
TUVTSVpFXzYwX01TPC9kdD48ZGQ+VXNlIDYwIG1zIGZyYW1lcy48L2RkPgotICAqIDxkdD5PUFVT
X0ZSQU1FU0laRV9WQVJJQUJMRTwvZHQ+PGRkPk9wdGltaXplIHRoZSBmcmFtZSBzaXplIGR5bmFt
aWNhbGx5LjwvZGQ+CisgICogPGR0Pk9QVVNfRlJBTUVTSVpFXzgwX01TPC9kdD48ZGQ+VXNlIDgw
IG1zIGZyYW1lcy48L2RkPgorICAqIDxkdD5PUFVTX0ZSQU1FU0laRV8xMDBfTVM8L2R0PjxkZD5V
c2UgMTAwIG1zIGZyYW1lcy48L2RkPgorICAqIDxkdD5PUFVTX0ZSQU1FU0laRV8xMjBfTVM8L2R0
PjxkZD5Vc2UgMTIwIG1zIGZyYW1lcy48L2RkPgogICAqIDwvZGw+CiAgICogQGhpZGVpbml0aWFs
aXplciAqLwogI2RlZmluZSBPUFVTX1NFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT04oeCkgT1BVU19T
RVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OX1JFUVVFU1QsIF9fb3B1c19jaGVja19pbnQoeCkKQEAg
LTU4MSw3ICs1ODcsOSBAQCBleHRlcm4gIkMiIHsKICAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfMjBf
TVM8L2R0PjxkZD5Vc2UgMjAgbXMgZnJhbWVzLjwvZGQ+CiAgICogPGR0Pk9QVVNfRlJBTUVTSVpF
XzQwX01TPC9kdD48ZGQ+VXNlIDQwIG1zIGZyYW1lcy48L2RkPgogICAqIDxkdD5PUFVTX0ZSQU1F
U0laRV82MF9NUzwvZHQ+PGRkPlVzZSA2MCBtcyBmcmFtZXMuPC9kZD4KLSAgKiA8ZHQ+T1BVU19G
UkFNRVNJWkVfVkFSSUFCTEU8L2R0PjxkZD5PcHRpbWl6ZSB0aGUgZnJhbWUgc2l6ZSBkeW5hbWlj
YWxseS48L2RkPgorICAqIDxkdD5PUFVTX0ZSQU1FU0laRV84MF9NUzwvZHQ+PGRkPlVzZSA4MCBt
cyBmcmFtZXMuPC9kZD4KKyAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfMTAwX01TPC9kdD48ZGQ+VXNl
IDEwMCBtcyBmcmFtZXMuPC9kZD4KKyAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfMTIwX01TPC9kdD48
ZGQ+VXNlIDEyMCBtcyBmcmFtZXMuPC9kZD4KICAgKiA8L2RsPgogICAqIEBoaWRlaW5pdGlhbGl6
ZXIgKi8KICNkZWZpbmUgT1BVU19HRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKHgpIE9QVVNfR0VU
X0VYUEVSVF9GUkFNRV9EVVJBVElPTl9SRVFVRVNULCBfX29wdXNfY2hlY2tfaW50X3B0cih4KQpA
QCAtNjgxLDYgKzY4OSwzMCBAQCBleHRlcm4gIkMiIHsKICAgKi8KICNkZWZpbmUgT1BVU19HRVRf
U0FNUExFX1JBVEUoeCkgT1BVU19HRVRfU0FNUExFX1JBVEVfUkVRVUVTVCwgX19vcHVzX2NoZWNr
X2ludF9wdHIoeCkKIAorLyoqIElmIHNldCB0byAxLCBkaXNhYmxlcyB0aGUgdXNlIG9mIHBoYXNl
IGludmVyc2lvbiBmb3IgaW50ZW5zaXR5IHN0ZXJlbywKKyAgKiBpbXByb3ZpbmcgdGhlIHF1YWxp
dHkgb2YgbW9ubyBkb3dubWl4ZXMsIGJ1dCBzbGlnaHRseSByZWR1Y2luZyBub3JtYWwKKyAgKiBz
dGVyZW8gcXVhbGl0eS4gRGlzYWJsaW5nIHBoYXNlIGludmVyc2lvbiBpbiB0aGUgZGVjb2RlciBk
b2VzIG5vdCBjb21wbHkKKyAgKiB3aXRoIFJGQyA2NzE2LCBhbHRob3VnaCBpdCBkb2VzIG5vdCBj
YXVzZSBhbnkgaW50ZXJvcGVyYWJpbGl0eSBpc3N1ZSBhbmQKKyAgKiBpcyBleHBlY3RlZCB0byBi
ZWNvbWUgcGFydCBvZiB0aGUgT3B1cyBzdGFuZGFyZCBvbmNlIFJGQyA2NzE2IGlzIHVwZGF0ZWQK
KyAgKiBieSBkcmFmdC1pZXRmLWNvZGVjLW9wdXMtdXBkYXRlLgorICAqIEBzZWUgT1BVU19HRVRf
UEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVECisgICogQHBhcmFtW2luXSB4IDx0dD5vcHVzX2ludDMy
PC90dD46IEFsbG93ZWQgdmFsdWVzOgorICAqIDxkbD4KKyAgKiA8ZHQ+MDwvZHQ+PGRkPkVuYWJs
ZSBwaGFzZSBpbnZlcnNpb24gKGRlZmF1bHQpLjwvZGQ+CisgICogPGR0PjE8L2R0PjxkZD5EaXNh
YmxlIHBoYXNlIGludmVyc2lvbi48L2RkPgorICAqIDwvZGw+CisgICogQGhpZGVpbml0aWFsaXpl
ciAqLworI2RlZmluZSBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoeCkgT1BVU19T
RVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1QsIF9fb3B1c19jaGVja19pbnQoeCkK
Ky8qKiBHZXRzIHRoZSBlbmNvZGVyJ3MgY29uZmlndXJlZCBwaGFzZSBpbnZlcnNpb24gc3RhdHVz
LgorICAqIEBzZWUgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVECisgICogQHBhcmFt
W291dF0geCA8dHQ+b3B1c19pbnQzMiAqPC90dD46IFJldHVybnMgb25lIG9mIHRoZSBmb2xsb3dp
bmcgdmFsdWVzOgorICAqIDxkbD4KKyAgKiA8ZHQ+MDwvZHQ+PGRkPlN0ZXJlbyBwaGFzZSBpbnZl
cnNpb24gZW5hYmxlZCAoZGVmYXVsdCkuPC9kZD4KKyAgKiA8ZHQ+MTwvZHQ+PGRkPlN0ZXJlbyBw
aGFzZSBpbnZlcnNpb24gZGlzYWJsZWQuPC9kZD4KKyAgKiA8L2RsPgorICAqIEBoaWRlaW5pdGlh
bGl6ZXIgKi8KKyNkZWZpbmUgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKHgpIE9Q
VVNfR0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNULCBfX29wdXNfY2hlY2tfaW50
X3B0cih4KQorCiAvKipAfSovCiAKIC8qKiBAZGVmZ3JvdXAgb3B1c19kZWNvZGVyY3RscyBEZWNv
ZGVyIHJlbGF0ZWQgQ1RMcwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfbXVsdGlzdHJlYW0uaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
aW5jbHVkZS9vcHVzX211bHRpc3RyZWFtLmgKaW5kZXggMzYyMmUwMDlmYjUzMDUyZGRiMTM3NWNm
MzcwZWI4NWViMDI5NzBlNy4uYmFiY2VlNjkwNWJmOWY3MGQ5MjJlYjkwM2QyOGE5MTUxZjA1MzUw
NSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfbXVsdGlzdHJlYW0uaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUvb3B1
c19tdWx0aXN0cmVhbS5oCkBAIC0yNzMsNyArMjczLDcgQEAgT1BVU19FWFBPUlQgT1BVU19XQVJO
X1VOVVNFRF9SRVNVTFQgT3B1c01TRW5jb2RlciAqb3B1c19tdWx0aXN0cmVhbV9zdXJyb3VuZF9l
bmMKICAgICAgIHVuc2lnbmVkIGNoYXIgKm1hcHBpbmcsCiAgICAgICBpbnQgYXBwbGljYXRpb24s
CiAgICAgICBpbnQgKmVycm9yCi0pIE9QVVNfQVJHX05PTk5VTEwoNSk7CispIE9QVVNfQVJHX05P
Tk5VTEwoNCkgT1BVU19BUkdfTk9OTlVMTCg1KSBPUFVTX0FSR19OT05OVUxMKDYpOwogCiAvKiog
SW5pdGlhbGl6ZSBhIHByZXZpb3VzbHkgYWxsb2NhdGVkIG11bHRpc3RyZWFtIGVuY29kZXIgc3Rh
dGUuCiAgICogVGhlIG1lbW9yeSBwb2ludGVkIHRvIGJ5IFxhIHN0IG11c3QgYmUgYXQgbGVhc3Qg
dGhlIHNpemUgcmV0dXJuZWQgYnkKQEAgLTM0Miw3ICszNDIsNyBAQCBPUFVTX0VYUE9SVCBpbnQg
b3B1c19tdWx0aXN0cmVhbV9zdXJyb3VuZF9lbmNvZGVyX2luaXQoCiAgICAgICBpbnQgKmNvdXBs
ZWRfc3RyZWFtcywKICAgICAgIHVuc2lnbmVkIGNoYXIgKm1hcHBpbmcsCiAgICAgICBpbnQgYXBw
bGljYXRpb24KLSkgT1BVU19BUkdfTk9OTlVMTCgxKSBPUFVTX0FSR19OT05OVUxMKDYpOworKSBP
UFVTX0FSR19OT05OVUxMKDEpIE9QVVNfQVJHX05PTk5VTEwoNSkgT1BVU19BUkdfTk9OTlVMTCg2
KSBPUFVTX0FSR19OT05OVUxMKDcpOwogCiAvKiogRW5jb2RlcyBhIG11bHRpc3RyZWFtIE9wdXMg
ZnJhbWUuCiAgICogQHBhcmFtIHN0IDx0dD5PcHVzTVNFbmNvZGVyKjwvdHQ+OiBNdWx0aXN0cmVh
bSBlbmNvZGVyIHN0YXRlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfdHlwZXMuaCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvaW5jbHVk
ZS9vcHVzX3R5cGVzLmgKaW5kZXggYjI4ZTAzYWVhMjAyZDk3ZmU3MWNmNThhZmM5MGRhYzIwODQx
NDRhOS4uN2NmNjc1NTgwZmZiMGFkOWJhN2IwNDBhNWMwM2ViMjgyODkxMDQ4NiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9pbmNsdWRlL29wdXNfdHlwZXMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUvb3B1c190eXBlcy5oCkBAIC0zMywx
NCArMzMsMjkgQEAKICNpZm5kZWYgT1BVU19UWVBFU19ICiAjZGVmaW5lIE9QVVNfVFlQRVNfSAog
CisjZGVmaW5lIG9wdXNfaW50ICAgICAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgLyogdXNl
ZCBmb3IgY291bnRlcnMgZXRjOyBhdCBsZWFzdCAxNiBiaXRzICovCisjZGVmaW5lIG9wdXNfaW50
NjQgICAgICAgbG9uZyBsb25nCisjZGVmaW5lIG9wdXNfaW50OCAgICAgICAgc2lnbmVkIGNoYXIK
KworI2RlZmluZSBvcHVzX3VpbnQgICAgICAgIHVuc2lnbmVkIGludCAgICAgICAgICAgIC8qIHVz
ZWQgZm9yIGNvdW50ZXJzIGV0YzsgYXQgbGVhc3QgMTYgYml0cyAqLworI2RlZmluZSBvcHVzX3Vp
bnQ2NCAgICAgIHVuc2lnbmVkIGxvbmcgbG9uZworI2RlZmluZSBvcHVzX3VpbnQ4ICAgICAgIHVu
c2lnbmVkIGNoYXIKKwogLyogVXNlIHRoZSByZWFsIHN0ZGludC5oIGlmIGl0J3MgdGhlcmUgKHRh
a2VuIGZyb20gUGF1bCBIc2llaCdzIHBzdGRpbnQuaCkgKi8KLSNpZiAoZGVmaW5lZChfX1NURENf
XykgJiYgX19TVERDX18gJiYgX19TVERDX1ZFUlNJT05fXyA+PSAxOTk5MDFMKSB8fCAoZGVmaW5l
ZChfX0dOVUNfXykgJiYgKGRlZmluZWQoX1NURElOVF9IKSB8fCBkZWZpbmVkKF9TVERJTlRfSF8p
KSB8fCBkZWZpbmVkIChIQVZFX1NURElOVF9IKSkKKyNpZiAoZGVmaW5lZChfX1NURENfXykgJiYg
X19TVERDX18gJiYgZGVmaW5lZChfX1NURENfVkVSU0lPTl9fKSAmJiBfX1NURENfVkVSU0lPTl9f
ID49IDE5OTkwMUwpIHx8IChkZWZpbmVkKF9fR05VQ19fKSAmJiAoZGVmaW5lZChfU1RESU5UX0gp
IHx8IGRlZmluZWQoX1NURElOVF9IXykpIHx8IGRlZmluZWQgKEhBVkVfU1RESU5UX0gpKQogI2lu
Y2x1ZGUgPHN0ZGludC5oPgotCisjICB1bmRlZiBvcHVzX2ludDY0CisjICB1bmRlZiBvcHVzX2lu
dDgKKyMgIHVuZGVmIG9wdXNfdWludDY0CisjICB1bmRlZiBvcHVzX3VpbnQ4CisgICB0eXBlZGVm
IGludDhfdCBvcHVzX2ludDg7CisgICB0eXBlZGVmIHVpbnQ4X3Qgb3B1c191aW50ODsKICAgIHR5
cGVkZWYgaW50MTZfdCBvcHVzX2ludDE2OwogICAgdHlwZWRlZiB1aW50MTZfdCBvcHVzX3VpbnQx
NjsKICAgIHR5cGVkZWYgaW50MzJfdCBvcHVzX2ludDMyOwogICAgdHlwZWRlZiB1aW50MzJfdCBv
cHVzX3VpbnQzMjsKKyAgIHR5cGVkZWYgaW50NjRfdCBvcHVzX2ludDY0OworICAgdHlwZWRlZiB1
aW50NjRfdCBvcHVzX3VpbnQ2NDsKICNlbGlmIGRlZmluZWQoX1dJTjMyKQogCiAjICBpZiBkZWZp
bmVkKF9fQ1lHV0lOX18pCkBAIC0xNDgsMTIgKzE2Myw0IEBACiAKICNlbmRpZgogCi0jZGVmaW5l
IG9wdXNfaW50ICAgICAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgLyogdXNlZCBmb3IgY291
bnRlcnMgZXRjOyBhdCBsZWFzdCAxNiBiaXRzICovCi0jZGVmaW5lIG9wdXNfaW50NjQgICAgICAg
bG9uZyBsb25nCi0jZGVmaW5lIG9wdXNfaW50OCAgICAgICAgc2lnbmVkIGNoYXIKLQotI2RlZmlu
ZSBvcHVzX3VpbnQgICAgICAgIHVuc2lnbmVkIGludCAgICAgICAgICAgIC8qIHVzZWQgZm9yIGNv
dW50ZXJzIGV0YzsgYXQgbGVhc3QgMTYgYml0cyAqLwotI2RlZmluZSBvcHVzX3VpbnQ2NCAgICAg
IHVuc2lnbmVkIGxvbmcgbG9uZwotI2RlZmluZSBvcHVzX3VpbnQ4ICAgICAgIHVuc2lnbmVkIGNo
YXIKLQogI2VuZGlmICAvKiBPUFVTX1RZUEVTX0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvcmVsZWFzZXMuc2hh
MiBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvcmVsZWFzZXMuc2hhMgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMWIzMmMwMDU1MThmZmQ0NGFkNTA1OTcyMjVm
NzhkMzliNTU2ZWI5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9yZWxlYXNlcy5zaGEyCkBAIC0wLDAgKzEs
NjMgQEAKK2IyZjc1YzRhYzVhYjgzNzg0NWViMDI4NDEzZmFlMmEyODc1NGJmYjBhNmQ3NjQxNmUy
YWYxNDQxZWY0NDc2NDkgIG9wdXMtMC45LjAudGFyLmd6Cis0ZTM3OWE5OGJhOTViYmJmZTkwODdl
ZjEwZmRkMDVjOGFjOTA2MGI2ZDY5NWY1ODdlYTgyYTdiNDNhMGRmNGZlICBvcHVzLTAuOS4xMC50
YXIuZ3oKK2IxY2FkNjg0NmE4ZjgxOWExNDEwMDlmZTNmOGYxMGM5NDZlOGVmZjdlOWMyMzM5Y2Q1
MTdiYjEzNmNjNTllYWUgIG9wdXMtMC45LjE0LnRhci5negorMjA2MjIxYWZjNDdiODc0OTY1ODgw
MTNiZDQ1MjNlMWU5ZjU1NjMzNmMwODEzZjQzNzI3NzNmYzUzNmRkNDI5MyAgb3B1cy0wLjkuMS50
YXIuZ3oKKzZlODVjMWI1N2UxZDdiN2RmZTI5MjhiZjkyNTg2Yjk2YjczYTkwNjdlMDU0ZWRlNDVi
ZDhlNmQyNGJkMzA1ODIgIG9wdXMtMC45LjIudGFyLmd6CitkOTE2ZTM0YzE4YTM5NmViN2RmZmM0
N2FmNzU0ZjQ0MWFmNTJhMjkwYjc2MWUyMGRiOWFlZGI2NTkyOGM2OTllICBvcHVzLTAuOS4zLnRh
ci5negorNTM4MDEwNjZmYTk3MzI5NzY4ZTdiODcxZmQxNDk1NzQwMjY5ZWM0NjgwMmUxYzkwNTFh
YTdlNzhjNmVkZWU1YiAgb3B1cy0wLjkuNS50YXIuZ3oKKzNiZmFlYjI1ZjRiNGE2MjVhMGJjOTk0
ZDZmYzZmNjc3NmEwNTE5M2Y2MDA5OWUwYTk5Zjc1MzBjNmIyNTYzMDkgIG9wdXMtMC45LjYudGFy
Lmd6CisxYjY5NzcyYzMxYzVjYmFhNDNkMWRmYTViMWM0OTVmYzI5NzEyZThlMGZmNjlkNmY4YWQ0
NjQ1OWU1YzY3MTVmICBvcHVzLTAuOS43LnRhci5negorNGFhMzBkMmUwNjUyZmZiNGE3YTIyY2M4
YTI5YzRjZTc4MjY3NjI2ZjU2MGEyZDkyMTNiMWQyZDRlNjE4Y2YzNiAgb3B1cy0wLjkuOC50YXIu
Z3oKKzJmNjIzNTlmMDkxNTFmYTNiMjQyMDQwZGM5YjRjNWI2YmRhMTU1NTdjNWRhZWE1OWM4NDIw
ZjFhMmZmMzI4YjcgIG9wdXMtMC45LjkudGFyLmd6Cis0M2JjZWE1MWFmYTUzMWYzMmE2YTVmZGQ5
Y2JhNGJkNDk2OTkzZTI2YTE0MTIxN2RiM2NjY2NlNmNhYTdjZDc0ICBvcHVzLTEuMC4wLXJjLnRh
ci5negorOTI1MGZjYzc0NDcyZDQ1YzFlMTQ3NDU1NDJlYzljOGQwOTk4MjUzOGFlZmVkNTY5NjI0
OTU2MTRiZTNlMGQyZCAgb3B1cy0xLjAuMC50YXIuZ3oKKzc2YmMwYTMxNTAyYTUxZGFlOWFiNzM3
YjRkYjA0M2I5ZWNmY2QwYjU4NjFmMGJmZGE0MWI2NjJiZDViOTIyMjcgIG9wdXMtMS4wLjEtcmMy
LnRhci5negorM2RlOGQ2ODA5ZGFjMzg5NzFlYmIzMDU1MzJkNGVhNTMyNTE5ZDNiZWQwODk4NWYy
NWQ2YzU1N2Y5Y2U1ZThmZiAgb3B1cy0xLjAuMS1yYzMudGFyLmd6Cis4MDQ0Mzk3YTYzNjVhMDcx
MTdiMDhjYmU4Zjk4MThiZjdjOTM3NDY5MDg4MDZiYTc0YTI5MTcxODdiYmRkYTVmICBvcHVzLTEu
MC4xLXJjLnRhci5negorODBmYTVjM2NhZjJhYzBmZDY4ZjhhMjJjY2UxNTY0ZmM0NmIzNjhjNzcz
YTE3NTU0ODg3ZDAwNjZmZTE4NDFlZiAgb3B1cy0xLjAuMS50YXIuZ3oKK2RhNjE1ZWRiZWU1ZDAx
OWMxODMzMDcxZDY5YTQ3ODJjMTlmMTc4Y2Y5Y2ExNDAxMzc1MDM2ZWNlZjI1Y2Q3OGEgIG9wdXMt
MS4wLjIudGFyLmd6CisxOTFhMDg5YzkyZGJjNDAzZGU2OTgwNDYzZGQzNjA0YjY1YmViMTJkMjgz
YzYwN2UyNDZjODA3NjM2M2NiNDljICBvcHVzLTEuMC4zLnRhci5negorYThkNDBlZmU4N2Y2YzNl
NzY3MjUzOTE0NTdkNDYyNzc4NzhjN2E4MTZhZTE2NDI4NDMyNjE0NjMxMzNmYTVjOCAgb3B1cy0x
LjEtYWxwaGEudGFyLmd6CitlYzE3ODQyODdmMzg1YWVmOTk0YjY0NzM0YWFlY2FlMDQ4NjBlNjFh
YTUwZmM2ZWVmNjY0M2ZhN2U0MGRkMTkzICBvcHVzLTEuMS1iZXRhLnRhci5negorOGFhMTYzNjBm
NTlhOTRkM2UzOGYzOGYyOGQyNDAzOWY3NjYzMTc5NjgyY2JhZTgyYWE0MmYxZGQ5ZTUyZTZlZCAg
b3B1cy0xLjEtcmMudGFyLmd6CitlYmM4N2EwODZkNGZlNjc3YzVlNDJkNTY4ODhiMWZkMjVhZjg1
OGU0MTc5ZWFlNGY4NjU2MjcwNDEwZGZmYWMzICBvcHVzLTEuMS1yYzIudGFyLmd6CitjYmZkMDlj
NThjYzEwYTRkM2ZjYjcyN2FkNWQ0NmQ3YmI1NDlmODE4NWFjOTIyZWUyOGI0NTgxYjUyYTdiZWU5
ICBvcHVzLTEuMS1yYzMudGFyLmd6CitiOTcyNzAxNWE1OGFmZmNmM2RiNTI3MzIyYmY4YzRkMmZj
ZjM5ZjVmNmI4ZjE1ZGJjZWNhMjAyMDZjYmUxZDk1ICBvcHVzLTEuMS50YXIuZ3oKKzBjNjY4NjM5
ZGNkMTZiMTQ3MDlmYzlkYzQ5ZTY2ODY2MDZmNWEyNTZmMmVhYTFlYmFhMmYzOWE2NmY4NjI2Y2Qg
IG9wdXMtMS4xLjEtYmV0YS50YXIuZ3oKKzY2ZjJhNTg3N2M4ODAzZGM5YTVhNDRiNGYzZDBiZGM4
ZjA2YmQwNjYzMjQyMjJkMTQ0ZWIyNTU2MTJiNjgxNTIgIG9wdXMtMS4xLjEtcmMudGFyLmd6Cis5
Yjg0ZmY1NmJkNzcyMGQ1NTU0MTAzYzU1NzY2NGVmYWMyYjhiMThhY2M0YmJjYzIzNGNiODgxYWI5
YTMzNzFlICBvcHVzLTEuMS4xLnRhci5negorMGUyOTAwNzhlMzEyMTFiYWE3YjU4ODZiY2M4YWI2
YmMwNDhiOWZjODM4ODI1MzJkYTRhMWE0NWU1OGU5MDdmZCAgb3B1cy0xLjEuMi50YXIuZ3oKKzU4
YjZmZTgwMmU3ZTMwMTgyZTk1ZDBjZGU4OTBjMGFjZTQwYjZmMTI1Y2ZmYzUwNjM1ZjBhZDJlZWY2
OWI2MzMgIG9wdXMtMS4xLjMudGFyLmd6Cis5MTIyYjZiMzgwMDgxZGQyNjY1MTg5Zjk3YmZkNzc3
ZjA0ZjkyZGMzYWI2Njk4ZWVhMWRiYjI3YWQ1OWQ4NjkyICBvcHVzLTEuMS40LnRhci5negorZWI4
NDk4MWNhMGY0MGEzZTVkNWU1OGQyZTg1ODJjYjJmZWUwNWEwMjI4MjVhNmRmZTE0ZDE0YjA0ZWI1
NjNlNCAgb3B1cy0xLjEuNS50YXIuZ3oKKzY1NGE5YmViYjczMjY2MjcxYTI4ZWRjZmZmNDMxZTRj
ZmQ5YmZjZGU3MWY0Mjg0OWEwY2RkNzNiZWNlODAzYTcgIG9wdXMtMS4yLWFscGhhLnRhci5negor
YzBlOTA1MDcyNTljZjIxY2U3YjJjODJmYjlhYzU1MzY3ZDg1NDNkYWU5MWNjM2Q0ZDJjNTlhZmQz
N2Y0NDAyMyAgb3B1cy0xLjItYWxwaGEyLnRhci5negorMjkxZTk3OWE4YTJmYjY3OWVkMzVhNWRm
ZjVkNzYxYTlkOWE1ZTIyNTg2ZmQwNzkzNGVkOTQ0NjFlMjYzNmM3YSAgb3B1cy0xLjItYmV0YS50
YXIuZ3oKKzg1MzQzZmRhZWQ5NjUyOWQ5NGMxZTFmM2EyMTBmYTUxMjQwZDA0Y2E2MmZhMDFlOTdl
ZjAyZjg4MDIwYzJjZTkgIG9wdXMtMS4yLXJjMS50YXIuZ3oKKzc3ZGI0NWE4N2I1MTU3OGZiYzQ5
NTU1ZWYxYjEwOTI2MTc5ODYxZDg1NGViMjYxMzIwN2RjNzlkOWVjMGE5YTkgIG9wdXMtMS4yLnRh
ci5negorY2ZhZmQzMzljY2Q5YzVlZjhkNmFiMTVkN2UxYTQxMmMwNTRiZjRjYjRlY2JiYmNjNzhj
MTJlZjJkZWY3MDczMiAgb3B1cy0xLjIuMS50YXIuZ3oKKzk0YWM3OGNhNGY3NGM0ZTQzYmM5ZmU0
ZWMxYWQwYWEzNmYzOGFiOTBmNDViMDcyN2M0MGRkMWU5NjA5NmU3NjcgIG9wdXNfdGVzdHZlY3Rv
cnMtZHJhZnQxMS50YXIuZ3oKKzk0YWM3OGNhNGY3NGM0ZTQzYmM5ZmU0ZWMxYWQwYWEzNmYzOGFi
OTBmNDViMDcyN2M0MGRkMWU5NjA5NmU3NjcgIG9wdXNfdGVzdHZlY3RvcnMudGFyLmd6Cis1ZDJi
OTk3NTdiY2I2MjhiYWIyNjExZjNlZDI3YWY2ZjM1Mjc2Y2UzYWJjOTZjMGVkNDM5OWQ2YzY0NjNk
ZGE1ICBvcHVzLXRvb2xzLTAuMS4yLnRhci5negorMDA4MzE3Mjk3ZDZjZTg0Zjg0OTkyYWJmOGNj
OTQ4YTA0OGE0ZmExMzVlMWQxY2FmNDI5ZmFmZGU4OTY1YTc5MiAgb3B1cy10b29scy0wLjEuMy50
YXIuZ3oKK2RlODA0ODVjNWFmYTFmZDgzYzBlMTZhMGRkNDg2MDQ3MGM4NzI5OTdhN2RkMGE1OGU5
OWIyZWU4YTkzZTUxNjggIG9wdXMtdG9vbHMtMC4xLjQudGFyLmd6Cis3NjY3OGQwZWI3YTliM2Q3
OTNiZDAyNDNmOWNlZDlhYjBlY2RhYjI2M2Y1MjMyZWQ5NDBjOGY1Nzk1ZmIwNDA1ICBvcHVzLXRv
b2xzLTAuMS41LnRhci5negorY2M4NmRiYzJhNGQ3NmRhN2UxZWQ5YWZlZTg1NDQ4YzhmNzk4YzQ2
NWE1NDEyMjMzZjE3ODc4MzIyMGYzYTJjMSAgb3B1cy10b29scy0wLjEuNi50YXIuZ3oKK2UwZjA4
ZDMwMTU1NWRmZmM0MTc2MDQyNjliNWE4NWQyYmQxOTdmMjU5YzdkNmM5NTdmMzcwZmZkMzNkNmQ5
Y2QgIG9wdXMtdG9vbHMtMC4xLjcudGFyLmd6CitlNGUxODg1NzllYTFjNGU0ZDUwNjY0NjBkNGE3
MjE0YTdlYWZlMzUzOWU5YTQ0NjZmZGM5OGFmNDFiYTRhMmY2ICBvcHVzLXRvb2xzLTAuMS44LnRh
ci5negorYjE4NzNkZDc4YzdmYmM5OGNmNjVkNmUxMGNmZGRiNWMyYzAzYjNhZjkzZjkyMjEzOWEy
MTA0YmFlZGI0NjQzYSAgb3B1cy10b29scy0wLjEuOS50YXIuZ3oKK2EyMzU3NTMyZDE5NDcxYjcw
NjY2ZTBlMGVjMTdkNTE0MjQ2ZDhiM2NiMmViMTY4ZjY4YmIwZjZmZDM3MmIyOGMgIG9wdXMtdG9v
bHMtMC4xLjEwLnRhci5negorYmQ2ZDE0ZTg4OTdhMmY4MDA2NWVmMzRhNTE2YzcwZTc0ZjhlMDAw
NjBhYmRiYzIzOGU3OWU1Zjk5YmNhM2U5NiAgbGlib3B1c2VuYy0wLjEudGFyLmd6Cis4MDcxYjk2
ODQ3NWMxYTE3ZjU0YjY4NDBkNmRlOWQ5ZWUyMGY5MzBlODI3YjA0MDFhYmUzYzRjZjRmM2JmMzBh
ICBvcHVzZmlsZS0wLjEudGFyLmd6CitiNGE2NzhiM2I2YzRhZGZiNmFmZjFmNjdlZjY1OGJlY2Zl
MTQ2ZWE3YzdmZjIyOGU5OTU0Mzc2MjE3MTU1N2Y5ICBvcHVzZmlsZS0wLjIudGFyLmd6Cis0MjQ4
OTI3ZjJjNGUzMTZlYTViODRmYjAyYmQxMDBiZmVjOGZhNDYyNGE2OTEwZDc3ZjBhZjdmMGM2Y2I4
YmFhICBvcHVzZmlsZS0wLjMudGFyLmd6Cis5ODM2ZWExMTcwNmM0NGYzNmRlOTJjNGM5YjEyNDhl
MDNhNGM1MjFlN2ZiMmNmZjE4YTBjYjRmOGIwZTc5MTQwICBvcHVzZmlsZS0wLjQudGFyLmd6Citm
MTg3OTA2YjFiMzVmN2YwZDdkZTZhNzU5YjRhYWI1MTJhOTI3OWQyM2FkYjM1ZDgwMDllN2UzM2Jk
NmE5MjJhICBvcHVzZmlsZS0wLjQuemlwCisyY2U1MmQwMDZhZWVlYzlmMTAyNjBkYmUzMDczYzQ2
MzY5NTRhMWFiMTljODJiOGJhYWZlZmUwMTgwYWE0YTM5ICBvcHVzZmlsZS0wLjUudGFyLmd6Citi
OTQwZDYyYmViMTViNTk3NDc2NDU3NGI5ZjI2NTQ4MWZlNWI2ZWUxNjkwMmZiNzA1NzI3NTQ2Y2Fm
OTU2MjYxICBvcHVzZmlsZS0wLjUuemlwCisyNDI4NzE3YjM1NmUxMzlmMThlZDJmZGI1YWQ5OTBi
NTY1NGEyMzg5MDdhMDA1ODIwMGIzOWM0NmE3ZDAzZWE2ICBvcHVzZmlsZS0wLjYudGFyLmd6Cis3
NTMzMzkyMjUxOTNkZjYwNTM3Mjk0NDg4OTAyM2I5YjNjNTM3OGQ2NzJlODc4NGQ2OWZhMjQxY2Q0
NjUyNzhjICBvcHVzZmlsZS0wLjYuemlwCis5ZTJiZWQxM2JjNzI5MDU4NTkxYTBmMWNhYjI1MDVl
OGNmZDhlN2FjNDYwYmYxMGE3OGJjYzNiMTI1ZTdjMzAxICBvcHVzZmlsZS0wLjcudGFyLmd6Cisz
NDY5NjdkNzk4OWJiODNiMDU5NDk0ODNiNzZiZDBmNjlhMTJjNTliZDhiNDQ1N2U4NjQ5MDJiNTJi
YjBhYzM0ICBvcHVzZmlsZS0wLjcuemlwCisyYzIzMWVkM2NmYWExYjMxNzNmNTJkNzQwZTViYmQ3
N2Q1MWI5ZGZlY2I4NzAxNGI0MDQ5MTdmYmE0Yjg1NWE0ICBvcHVzZmlsZS0wLjgudGFyLmd6Cis4
OWRmZjQzNDJjM2I3ODk1NzRjYmVhNWM1N2YxMWI5NmQ0ZWJlNGQyOGFiOTAyNDhjMTc4M2VhNTY5
YjFlOWUzICBvcHVzZmlsZS0wLjguemlwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvQTJOTFNGLmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
QTJOTFNGLmMKaW5kZXggYjZlOWU1ZmZjY2FhMDU5OTVkZmRiZmU2MDAxNjY4NjVkODk5MDEzZS4u
YjQ4NzY4NmZmOWM2ZDEyOWMwNjU2ZmIxMDk1ZGU4YTI4OWZjNGRiYSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L0EyTkxTRi5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9BMk5MU0YuYwpAQCAtNDAsNyArNDAsNyBAQCBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KIAogLyogTnVtYmVyIG9mIGJpbmFyeSBkaXZpc2lvbnMsIHdoZW4g
bm90IGluIGxvdyBjb21wbGV4aXR5IG1vZGUgKi8KICNkZWZpbmUgQklOX0RJVl9TVEVQU19BMk5M
U0ZfRklYICAgICAgMyAvKiBtdXN0IGJlIG5vIGhpZ2hlciB0aGFuIDE2IC0gbG9nMiggTFNGX0NP
U19UQUJfU1pfRklYICkgKi8KLSNkZWZpbmUgTUFYX0lURVJBVElPTlNfQTJOTFNGX0ZJWCAgICAz
MAorI2RlZmluZSBNQVhfSVRFUkFUSU9OU19BMk5MU0ZfRklYICAgIDE2CiAKIC8qIEhlbHBlciBm
dW5jdGlvbiBmb3IgQTJOTFNGKC4uKSAgICAgICAgICAgICAgICAgICAgKi8KIC8qIFRyYW5zZm9y
bXMgcG9seW5vbWlhbHMgZnJvbSBjb3MobipmKSB0byBjb3MoZilebiAgKi8KQEAgLTEzMCw3ICsx
MzAsNyBAQCB2b2lkIHNpbGtfQTJOTFNGKAogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBkICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRmlsdGVyIG9yZGVyIChtdXN0IGJlIGV2ZW4p
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKLSAgICBvcHVzX2ludCAg
ICAgIGksIGssIG0sIGRkLCByb290X2l4LCBmZnJhYzsKKyAgICBvcHVzX2ludCAgIGksIGssIG0s
IGRkLCByb290X2l4LCBmZnJhYzsKICAgICBvcHVzX2ludDMyIHhsbywgeGhpLCB4bWlkOwogICAg
IG9wdXNfaW50MzIgeWxvLCB5aGksIHltaWQsIHRocjsKICAgICBvcHVzX2ludDMyIG5vbSwgZGVu
OwpAQCAtMjM5LDEzICsyMzksMTMgQEAgdm9pZCBzaWxrX0EyTkxTRigKICAgICAgICAgICAgICAg
ICAgICAgLyogU2V0IE5MU0ZzIHRvIHdoaXRlIHNwZWN0cnVtIGFuZCBleGl0ICovCiAgICAgICAg
ICAgICAgICAgICAgIE5MU0ZbIDAgXSA9IChvcHVzX2ludDE2KXNpbGtfRElWMzJfMTYoIDEgPDwg
MTUsIGQgKyAxICk7CiAgICAgICAgICAgICAgICAgICAgIGZvciggayA9IDE7IGsgPCBkOyBrKysg
KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBOTFNGWyBrIF0gPSAob3B1c19pbnQxNilzaWxr
X1NNVUxCQiggayArIDEsIE5MU0ZbIDAgXSApOworICAgICAgICAgICAgICAgICAgICAgICAgTkxT
RlsgayBdID0gKG9wdXNfaW50MTYpc2lsa19BREQxNiggTkxTRlsgay0xIF0sIE5MU0ZbIDAgXSAp
OwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAg
ICAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgICAgICAvKiBFcnJvcjogQXBwbHkgcHJvZ3Jl
c3NpdmVseSBtb3JlIGJhbmR3aWR0aCBleHBhbnNpb24gYW5kIHJ1biBhZ2FpbiAqLwotICAgICAg
ICAgICAgICAgIHNpbGtfYndleHBhbmRlcl8zMiggYV9RMTYsIGQsIDY1NTM2IC0gc2lsa19TTVVM
QkIoIDEwICsgaSwgaSApICk7IC8qIDEwX1ExNiA9IDAuMDAwMTUqLworICAgICAgICAgICAgICAg
IHNpbGtfYndleHBhbmRlcl8zMiggYV9RMTYsIGQsIDY1NTM2IC0gc2lsa19MU0hJRlQoIDEsIGkg
KSApOwogCiAgICAgICAgICAgICAgICAgc2lsa19BMk5MU0ZfaW5pdCggYV9RMTYsIFAsIFEsIGRk
ICk7CiAgICAgICAgICAgICAgICAgcCA9IFA7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IFBvaW50ZXIgdG8gcG9seW5vbWlhbCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0FQSS5oIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0FQ
SS5oCmluZGV4IDAxMzFhY2JiMDhmYjA3YThkZDBkMTU1MDI3NThkZWQ1YTFiYzdmYTYuLjRkOTBm
ZjlhYTNlY2QyYjE2ZGY0MDIwYjUxMGM4OGE3MjViMTM2NDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9BUEku
aAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvQVBJLmgKQEAgLTgwLDcgKzgwLDggQEAgb3B1c19pbnQgc2lsa19FbmNvZGUo
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJldHVybnMgZXJyb3Ig
Y28KICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgIG5TYW1wbGVzSW4sICAgICAg
ICAgLyogSSAgICBOdW1iZXIgb2Ygc2FtcGxlcyBpbiBpbnB1dCB2ZWN0b3IgICAgICAgICAgICAg
ICAqLwogICAgIGVjX2VuYyAgICAgICAgICAgICAgICAgICAgICAgICAgKnBzUmFuZ2VFbmMsICAg
ICAgICAvKiBJL08gIENvbXByZXNzb3IgZGF0YSBzdHJ1Y3R1cmUgICAgICAgICAgICAgICAgICAg
ICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAqbkJ5dGVzT3V0LCAg
ICAgICAgIC8qIEkvTyAgTnVtYmVyIG9mIGJ5dGVzIGluIHBheWxvYWQgKGlucHV0OiBNYXggYnl0
ZXMpICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIHByZWZpbGxGbGFn
ICAgICAgICAgLyogSSAgICBGbGFnIHRvIGluZGljYXRlIHByZWZpbGxpbmcgYnVmZmVycyBubyBj
b2RpbmcgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgcHJlZmlsbEZs
YWcsICAgICAgICAvKiBJICAgIEZsYWcgdG8gaW5kaWNhdGUgcHJlZmlsbGluZyBidWZmZXJzIG5v
IGNvZGluZyAgICovCisgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpdml0
eSAgICAgICAgICAgIC8qIEkgICAgRGVjaXNpb24gb2YgT3B1cyB2b2ljZSBhY3Rpdml0eSBkZXRl
Y3RvciAgICAgICAgKi8KICk7CiAKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0NORy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0NORy5jCmluZGV4IDcwMWIzNmEz
OGEzMTA1ZGZhNDhkY2JjNTRlODgxZTQ5YmUxOTlmZjYuLmU2ZDliODYxZTk1ZTc0M2YxZDA4NTdj
ZTQ4YWVkZjNjZWJmYmYxZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9DTkcuYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvQ05HLmMK
QEAgLTEzOCwxMSArMTM4LDExIEBAIHZvaWQgc2lsa19DTkcoCiAgICAgICAgICAgICBnYWluX1Ex
NiA9IHNpbGtfTFNISUZUMzIoIHNpbGtfU1FSVF9BUFBST1goIGdhaW5fUTE2ICksIDggKTsKICAg
ICAgICAgfQogICAgICAgICBnYWluX1ExMCA9IHNpbGtfUlNISUZUKCBnYWluX1ExNiwgNiApOwot
ICAgICAgICAKKwogICAgICAgICBzaWxrX0NOR19leGMoIENOR19zaWdfUTE0ICsgTUFYX0xQQ19P
UkRFUiwgcHNDTkctPkNOR19leGNfYnVmX1ExNCwgbGVuZ3RoLCAmcHNDTkctPnJhbmRfc2VlZCAp
OwogCiAgICAgICAgIC8qIENvbnZlcnQgQ05HIE5MU0YgdG8gZmlsdGVyIHJlcHJlc2VudGF0aW9u
ICovCi0gICAgICAgIHNpbGtfTkxTRjJBKCBBX1ExMiwgcHNDTkctPkNOR19zbXRoX05MU0ZfUTE1
LCBwc0RlYy0+TFBDX29yZGVyICk7CisgICAgICAgIHNpbGtfTkxTRjJBKCBBX1ExMiwgcHNDTkct
PkNOR19zbXRoX05MU0ZfUTE1LCBwc0RlYy0+TFBDX29yZGVyLCBwc0RlYy0+YXJjaCApOwogCiAg
ICAgICAgIC8qIEdlbmVyYXRlIENORyBzaWduYWwsIGJ5IHN5bnRoZXNpcyBmaWx0ZXJpbmcgKi8K
ICAgICAgICAgc2lsa19tZW1jcHkoIENOR19zaWdfUTE0LCBwc0NORy0+Q05HX3N5bnRoX3N0YXRl
LCBNQVhfTFBDX09SREVSICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKQEAgLTE3MSwxMCArMTcx
LDEwIEBAIHZvaWQgc2lsa19DTkcoCiAKICAgICAgICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMgKi8K
ICAgICAgICAgICAgIENOR19zaWdfUTE0WyBNQVhfTFBDX09SREVSICsgaSBdID0gc2lsa19BRERf
U0FUMzIoIENOR19zaWdfUTE0WyBNQVhfTFBDX09SREVSICsgaSBdLCBzaWxrX0xTSElGVF9TQVQz
MiggTFBDX3ByZWRfUTEwLCA0ICkgKTsKLSAgICAgICAgICAgIAorCiAgICAgICAgICAgICAvKiBT
Y2FsZSB3aXRoIEdhaW4gYW5kIGFkZCB0byBpbnB1dCBzaWduYWwgKi8KICAgICAgICAgICAgIGZy
YW1lWyBpIF0gPSAob3B1c19pbnQxNilzaWxrX0FERF9TQVQxNiggZnJhbWVbIGkgXSwgc2lsa19T
QVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIHNpbGtfU01VTFdXKCBDTkdfc2lnX1ExNFsgTUFYX0xQ
Q19PUkRFUiArIGkgXSwgZ2Fpbl9RMTAgKSwgOCApICkgKTsKLSAgICAgICAgICAgIAorCiAgICAg
ICAgIH0KICAgICAgICAgc2lsa19tZW1jcHkoIHBzQ05HLT5DTkdfc3ludGhfc3RhdGUsICZDTkdf
c2lnX1ExNFsgbGVuZ3RoIF0sIE1BWF9MUENfT1JERVIgKiBzaXplb2YoIG9wdXNfaW50MzIgKSAp
OwogICAgIH0gZWxzZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBDX2FuYWx5c2lzX2ZpbHRlci5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL0xQQ19hbmFseXNpc19maWx0ZXIuYwppbmRleCAyMDkwNjY3M2ZmMTI0NjEwZGYyMDcxY2I3
NjVjYmY5YjA5YjMzZjA4Li43NzE1ZjcwZjhkNjc2Mzc1N2IwZWYxOTRiZTRjZDAxNGZmZDBjMjIz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvTFBDX2FuYWx5c2lzX2ZpbHRlci5jCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENfYW5h
bHlzaXNfZmlsdGVyLmMKQEAgLTM5LDYgKzM5LDEzIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgogLyogZmlyc3QgZCBvdXRwdXQgc2FtcGxlcyBhcmUgc2V0IHRvIHplcm8gICovCiAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIAorLyogT1BUOiBVc2lu
ZyBjZWx0X2ZpcigpIGZvciB0aGlzIGZ1bmN0aW9uIHNob3VsZCBiZSBmYXN0ZXIsIGJ1dCBpdCBt
YXkgY2F1c2UKKyAgIGludGVnZXIgb3ZlcmZsb3dzIGluIGludGVybWVkaWF0ZSB2YWx1ZXMgKG5v
dCBmaW5hbCByZXN1bHRzKSwgd2hpY2ggdGhlCisgICBjdXJyZW50IGltcGxlbWVudGF0aW9uIHNp
bGVuY2VzIGJ5IGNhc3RpbmcgdG8gdW5zaWduZWQuIEVuYWJsaW5nCisgICB0aGlzIHNob3VsZCBi
ZSBzYWZlIGluIHByZXR0eSBtdWNoIGFsbCBjYXNlcywgZXZlbiB0aG91Z2ggaXQgaXMgbm90IHRl
Y2huaWNhbGx5CisgICBDODktY29tcGxpYW50LiAqLworI2RlZmluZSBVU0VfQ0VMVF9GSVIgMAor
CiB2b2lkIHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlcigKICAgICBvcHVzX2ludDE2ICAgICAgICAg
ICAgICAgICAgKm91dCwgICAgICAgICAgICAgICAvKiBPICAgIE91dHB1dCBzaWduYWwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgICppbiwgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWdu
YWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAt
NDksOCArNTYsNyBAQCB2b2lkIHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlcigKICkKIHsKICAgICBv
cHVzX2ludCAgIGo7Ci0jaWZkZWYgRklYRURfUE9JTlQKLSAgICBvcHVzX2ludDE2IG1lbVtTSUxL
X01BWF9PUkRFUl9MUENdOworI2lmIGRlZmluZWQoRklYRURfUE9JTlQpICYmIFVTRV9DRUxUX0ZJ
UgogICAgIG9wdXNfaW50MTYgbnVtW1NJTEtfTUFYX09SREVSX0xQQ107CiAjZWxzZQogICAgIGlu
dCBpeDsKQEAgLTYyLDE1ICs2OCwxMiBAQCB2b2lkIHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlcigK
ICAgICBzaWxrX2Fzc2VydCggKGQgJiAxKSA9PSAwICk7CiAgICAgc2lsa19hc3NlcnQoIGQgPD0g
bGVuICk7CiAKLSNpZmRlZiBGSVhFRF9QT0lOVAorI2lmIGRlZmluZWQoRklYRURfUE9JTlQpICYm
IFVTRV9DRUxUX0ZJUgogICAgIHNpbGtfYXNzZXJ0KCBkIDw9IFNJTEtfTUFYX09SREVSX0xQQyAp
OwogICAgIGZvciAoIGogPSAwOyBqIDwgZDsgaisrICkgewogICAgICAgICBudW1bIGogXSA9IC1C
WyBqIF07CiAgICAgfQotICAgIGZvciAoaj0wO2o8ZDtqKyspIHsKLSAgICAgICAgbWVtWyBqIF0g
PSBpblsgZCAtIGogLSAxIF07Ci0gICAgfQotICAgIGNlbHRfZmlyKCBpbiArIGQsIG51bSwgb3V0
ICsgZCwgbGVuIC0gZCwgZCwgbWVtLCBhcmNoICk7CisgICAgY2VsdF9maXIoIGluICsgZCwgbnVt
LCBvdXQgKyBkLCBsZW4gLSBkLCBkLCBhcmNoICk7CiAgICAgZm9yICggaiA9IDA7IGogPCBkOyBq
KysgKSB7CiAgICAgICAgIG91dFsgaiBdID0gMDsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBD
X2ZpdC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL0xQQ19maXQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZGVhNGYzYWJjYWY3ZmNkMTQxYTRi
ODZlMmY5MjRiNjc5ZWZmZDk0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQQ19maXQuYwpAQCAt
MCwwICsxLDgxIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK0NvcHlyaWdodCAoYykgMjAxMywgS29lbiBW
b3MuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworYXJlIG1ldDoK
Ky0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKK25vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKK2RvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCistIE5l
aXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBu
b3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCitwZXJtaXNzaW9uLgorVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMg
SVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJF
CitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCitDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCitJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCitQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqLworCisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1
ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlICJTaWdQcm9jX0ZJWC5oIgorCisvKiBD
b252ZXJ0IGludDMyIGNvZWZmaWNpZW50cyB0byBpbnQxNiBjb2VmcyBhbmQgbWFrZSBzdXJlIHRo
ZXJlJ3Mgbm8gd3JhcC1hcm91bmQgKi8KK3ZvaWQgc2lsa19MUENfZml0KAorICAgIG9wdXNfaW50
MTYgICAgICAgICAgICAgICAgICAqYV9RT1VULCAgICAgICAgICAgIC8qIE8gICAgT3V0cHV0IHNp
Z25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAqYV9RSU4sICAgICAgICAgICAgIC8qIEkv
TyAgSW5wdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgUU9VVCwgICAgICAgICAg
ICAgICAvKiBJICAgIElucHV0IFEgZG9tYWluICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIFFJTiwg
ICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBRIGRvbWFpbiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICBkICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRmlsdGVyIG9yZGVyICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyAgICBvcHVzX2lu
dCAgICBpLCBrLCBpZHggPSAwOworICAgIG9wdXNfaW50MzIgICAgbWF4YWJzLCBhYnN2YWwsIGNo
aXJwX1ExNjsKKworICAgIC8qIExpbWl0IHRoZSBtYXhpbXVtIGFic29sdXRlIHZhbHVlIG9mIHRo
ZSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cywgc28gdGhhdCB0aGV5J2xsIGZpdCBpbiBpbnQxNiAq
LworICAgIGZvciggaSA9IDA7IGkgPCAxMDsgaSsrICkgeworICAgICAgICAvKiBGaW5kIG1heGlt
dW0gYWJzb2x1dGUgdmFsdWUgYW5kIGl0cyBpbmRleCAqLworICAgICAgICBtYXhhYnMgPSAwOwor
ICAgICAgICBmb3IoIGsgPSAwOyBrIDwgZDsgaysrICkgeworICAgICAgICAgICAgYWJzdmFsID0g
c2lsa19hYnMoIGFfUUlOW2tdICk7CisgICAgICAgICAgICBpZiggYWJzdmFsID4gbWF4YWJzICkg
eworICAgICAgICAgICAgICAgIG1heGFicyA9IGFic3ZhbDsKKyAgICAgICAgICAgICAgICBpZHgg
ICAgPSBrOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIG1heGFicyA9IHNpbGtf
UlNISUZUX1JPVU5EKCBtYXhhYnMsIFFJTiAtIFFPVVQgKTsKKworICAgICAgICBpZiggbWF4YWJz
ID4gc2lsa19pbnQxNl9NQVggKSB7CisgICAgICAgICAgICAvKiBSZWR1Y2UgbWFnbml0dWRlIG9m
IHByZWRpY3Rpb24gY29lZmZpY2llbnRzICovCisgICAgICAgICAgICBtYXhhYnMgPSBzaWxrX21p
biggbWF4YWJzLCAxNjM4MzggKTsgIC8qICggc2lsa19pbnQzMl9NQVggPj4gMTQgKSArIHNpbGtf
aW50MTZfTUFYID0gMTYzODM4ICovCisgICAgICAgICAgICBjaGlycF9RMTYgPSBTSUxLX0ZJWF9D
T05TVCggMC45OTksIDE2ICkgLSBzaWxrX0RJVjMyKCBzaWxrX0xTSElGVCggbWF4YWJzIC0gc2ls
a19pbnQxNl9NQVgsIDE0ICksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc2lsa19SU0hJRlQzMiggc2lsa19NVUwoIG1heGFicywgaWR4ICsgMSksIDIgKSApOworICAg
ICAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBhX1FJTiwgZCwgY2hpcnBfUTE2ICk7CisgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgIH0KKworICAg
IGlmKCBpID09IDEwICkgeworICAgICAgICAvKiBSZWFjaGVkIHRoZSBsYXN0IGl0ZXJhdGlvbiwg
Y2xpcCB0aGUgY29lZmZpY2llbnRzICovCisgICAgICAgIGZvciggayA9IDA7IGsgPCBkOyBrKysg
KSB7CisgICAgICAgICAgICBhX1FPVVRbIGsgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNp
bGtfUlNISUZUX1JPVU5EKCBhX1FJTlsgayBdLCBRSU4gLSBRT1VUICkgKTsKKyAgICAgICAgICAg
IGFfUUlOWyBrIF0gPSBzaWxrX0xTSElGVCggKG9wdXNfaW50MzIpYV9RT1VUWyBrIF0sIFFJTiAt
IFFPVVQgKTsKKyAgICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgIGZvciggayA9IDA7IGsg
PCBkOyBrKysgKSB7CisgICAgICAgICAgICBhX1FPVVRbIGsgXSA9IChvcHVzX2ludDE2KXNpbGtf
UlNISUZUX1JPVU5EKCBhX1FJTlsgayBdLCBRSU4gLSBRT1VUICk7CisgICAgICAgIH0KKyAgICB9
Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvTFBDX2ludl9wcmVkX2dhaW4uYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENfaW52X3By
ZWRfZ2Fpbi5jCmluZGV4IDRhZjg5YWE1ZmFkMzI0Nzk5NjIwZTY0YzNmYTIyZTNlYTZiZDk0MDAu
LmEzNzQ2YTZlZjlmMzE4NzQ2OGNjZDY5NDQ4MzdkOGMwMmJiYWRkMTggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9MUENfaW52X3ByZWRfZ2Fpbi5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENfaW52X3ByZWRfZ2Fpbi5jCkBAIC0z
MCw2ICszMCw3IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2VuZGlmCiAKICNpbmNs
dWRlICJTaWdQcm9jX0ZJWC5oIgorI2luY2x1ZGUgImRlZmluZS5oIgogCiAjZGVmaW5lIFFBICAg
ICAgICAgICAgICAgICAgICAgICAgICAyNAogI2RlZmluZSBBX0xJTUlUICAgICAgICAgICAgICAg
ICAgICAgU0lMS19GSVhfQ09OU1QoIDAuOTk5NzUsIFFBICkKQEAgLTM4LDExNyArMzksMTAzIEBA
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCiAvKiBDb21wdXRlIGludmVyc2Ugb2YgTFBD
IHByZWRpY3Rpb24gZ2FpbiwgYW5kICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogLyogdGVz
dCBpZiBMUEMgY29lZmZpY2llbnRzIGFyZSBzdGFibGUgKGFsbCBwb2xlcyB3aXRoaW4gdW5pdCBj
aXJjbGUpICAgKi8KLXN0YXRpYyBvcHVzX2ludDMyIExQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RQSgg
ICAgICAgICAgICAgICAgIC8qIE8gICBSZXR1cm5zIGludmVyc2UgcHJlZGljdGlvbiBnYWluIGlu
IGVuZXJneSBkb21haW4sIFEzMCAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgIEFfUUFb
IDIgXVsgU0lMS19NQVhfT1JERVJfTFBDIF0sICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2ll
bnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCitzdGF0aWMgb3B1c19pbnQz
MiBMUENfaW52ZXJzZV9wcmVkX2dhaW5fUUFfYyggICAgICAgICAgICAgICAvKiBPICAgUmV0dXJu
cyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgKi8KKyAg
ICBvcHVzX2ludDMyICAgICAgICAgICBBX1FBWyBTSUxLX01BWF9PUkRFUl9MUEMgXSwgICAgICAg
IC8qIEkgICBQcmVkaWN0aW9uIGNvZWZmaWNpZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgIG9yZGVyICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgIFByZWRpY3Rpb24gb3JkZXIgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7CiAgICAgb3B1c19pbnQgICBrLCBuLCBtdWx0
MlE7Ci0gICAgb3B1c19pbnQzMiBpbnZHYWluX1EzMCwgcmNfUTMxLCByY19tdWx0MV9RMzAsIHJj
X211bHQyLCB0bXBfUUE7Ci0gICAgb3B1c19pbnQzMiAqQW9sZF9RQSwgKkFuZXdfUUE7CisgICAg
b3B1c19pbnQzMiBpbnZHYWluX1EzMCwgcmNfUTMxLCByY19tdWx0MV9RMzAsIHJjX211bHQyLCB0
bXAxLCB0bXAyOwogCi0gICAgQW5ld19RQSA9IEFfUUFbIG9yZGVyICYgMSBdOwotCi0gICAgaW52
R2Fpbl9RMzAgPSAob3B1c19pbnQzMikxIDw8IDMwOworICAgIGludkdhaW5fUTMwID0gU0lMS19G
SVhfQ09OU1QoIDEsIDMwICk7CiAgICAgZm9yKCBrID0gb3JkZXIgLSAxOyBrID4gMDsgay0tICkg
ewogICAgICAgICAvKiBDaGVjayBmb3Igc3RhYmlsaXR5ICovCi0gICAgICAgIGlmKCAoIEFuZXdf
UUFbIGsgXSA+IEFfTElNSVQgKSB8fCAoIEFuZXdfUUFbIGsgXSA8IC1BX0xJTUlUICkgKSB7Cisg
ICAgICAgIGlmKCAoIEFfUUFbIGsgXSA+IEFfTElNSVQgKSB8fCAoIEFfUUFbIGsgXSA8IC1BX0xJ
TUlUICkgKSB7CiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgfQogCiAgICAgICAgIC8q
IFNldCBSQyBlcXVhbCB0byBuZWdhdGVkIEFSIGNvZWYgKi8KLSAgICAgICAgcmNfUTMxID0gLXNp
bGtfTFNISUZUKCBBbmV3X1FBWyBrIF0sIDMxIC0gUUEgKTsKKyAgICAgICAgcmNfUTMxID0gLXNp
bGtfTFNISUZUKCBBX1FBWyBrIF0sIDMxIC0gUUEgKTsKIAogICAgICAgICAvKiByY19tdWx0MV9R
MzAgcmFuZ2U6IFsgMSA6IDJeMzAgXSAqLwotICAgICAgICByY19tdWx0MV9RMzAgPSAoIChvcHVz
X2ludDMyKTEgPDwgMzAgKSAtIHNpbGtfU01NVUwoIHJjX1EzMSwgcmNfUTMxICk7CisgICAgICAg
IHJjX211bHQxX1EzMCA9IHNpbGtfU1VCMzIoIFNJTEtfRklYX0NPTlNUKCAxLCAzMCApLCBzaWxr
X1NNTVVMKCByY19RMzEsIHJjX1EzMSApICk7CiAgICAgICAgIHNpbGtfYXNzZXJ0KCByY19tdWx0
MV9RMzAgPiAoIDEgPDwgMTUgKSApOyAgICAgICAgICAgICAgICAgICAvKiByZWR1Y2UgQV9MSU1J
VCBpZiBmYWlscyAqLwogICAgICAgICBzaWxrX2Fzc2VydCggcmNfbXVsdDFfUTMwIDw9ICggMSA8
PCAzMCApICk7CiAKLSAgICAgICAgLyogcmNfbXVsdDIgcmFuZ2U6IFsgMl4zMCA6IHNpbGtfaW50
MzJfTUFYIF0gKi8KLSAgICAgICAgbXVsdDJRID0gMzIgLSBzaWxrX0NMWjMyKCBzaWxrX2Ficygg
cmNfbXVsdDFfUTMwICkgKTsKLSAgICAgICAgcmNfbXVsdDIgPSBzaWxrX0lOVkVSU0UzMl92YXJR
KCByY19tdWx0MV9RMzAsIG11bHQyUSArIDMwICk7Ci0KICAgICAgICAgLyogVXBkYXRlIGludmVy
c2UgZ2FpbiAqLwogICAgICAgICAvKiBpbnZHYWluX1EzMCByYW5nZTogWyAwIDogMl4zMCBdICov
CiAgICAgICAgIGludkdhaW5fUTMwID0gc2lsa19MU0hJRlQoIHNpbGtfU01NVUwoIGludkdhaW5f
UTMwLCByY19tdWx0MV9RMzAgKSwgMiApOwogICAgICAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9R
MzAgPj0gMCAgICAgICAgICAgKTsKICAgICAgICAgc2lsa19hc3NlcnQoIGludkdhaW5fUTMwIDw9
ICggMSA8PCAzMCApICk7CisgICAgICAgIGlmKCBpbnZHYWluX1EzMCA8IFNJTEtfRklYX0NPTlNU
KCAxLjBmIC8gTUFYX1BSRURJQ1RJT05fUE9XRVJfR0FJTiwgMzAgKSApIHsKKyAgICAgICAgICAg
IHJldHVybiAwOworICAgICAgICB9CiAKLSAgICAgICAgLyogU3dhcCBwb2ludGVycyAqLwotICAg
ICAgICBBb2xkX1FBID0gQW5ld19RQTsKLSAgICAgICAgQW5ld19RQSA9IEFfUUFbIGsgJiAxIF07
CisgICAgICAgIC8qIHJjX211bHQyIHJhbmdlOiBbIDJeMzAgOiBzaWxrX2ludDMyX01BWCBdICov
CisgICAgICAgIG11bHQyUSA9IDMyIC0gc2lsa19DTFozMiggc2lsa19hYnMoIHJjX211bHQxX1Ez
MCApICk7CisgICAgICAgIHJjX211bHQyID0gc2lsa19JTlZFUlNFMzJfdmFyUSggcmNfbXVsdDFf
UTMwLCBtdWx0MlEgKyAzMCApOwogCiAgICAgICAgIC8qIFVwZGF0ZSBBUiBjb2VmZmljaWVudCAq
LwotICAgICAgICBmb3IoIG4gPSAwOyBuIDwgazsgbisrICkgewotICAgICAgICAgICAgdG1wX1FB
ID0gQW9sZF9RQVsgbiBdIC0gTVVMMzJfRlJBQ19RKCBBb2xkX1FBWyBrIC0gbiAtIDEgXSwgcmNf
UTMxLCAzMSApOwotICAgICAgICAgICAgQW5ld19RQVsgbiBdID0gTVVMMzJfRlJBQ19RKCB0bXBf
UUEsIHJjX211bHQyICwgbXVsdDJRICk7CisgICAgICAgIGZvciggbiA9IDA7IG4gPCAoayArIDEp
ID4+IDE7IG4rKyApIHsKKyAgICAgICAgICAgIG9wdXNfaW50NjQgdG1wNjQ7CisgICAgICAgICAg
ICB0bXAxID0gQV9RQVsgbiBdOworICAgICAgICAgICAgdG1wMiA9IEFfUUFbIGsgLSBuIC0gMSBd
OworICAgICAgICAgICAgdG1wNjQgPSBzaWxrX1JTSElGVF9ST1VORDY0KCBzaWxrX1NNVUxMKCBz
aWxrX1NVQl9TQVQzMih0bXAxLAorICAgICAgICAgICAgICAgICAgTVVMMzJfRlJBQ19RKCB0bXAy
LCByY19RMzEsIDMxICkgKSwgcmNfbXVsdDIgKSwgbXVsdDJRKTsKKyAgICAgICAgICAgIGlmKCB0
bXA2NCA+IHNpbGtfaW50MzJfTUFYIHx8IHRtcDY0IDwgc2lsa19pbnQzMl9NSU4gKSB7CisgICAg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIEFfUUFbIG4g
XSA9ICggb3B1c19pbnQzMiApdG1wNjQ7CisgICAgICAgICAgICB0bXA2NCA9IHNpbGtfUlNISUZU
X1JPVU5ENjQoIHNpbGtfU01VTEwoIHNpbGtfU1VCX1NBVDMyKHRtcDIsCisgICAgICAgICAgICAg
ICAgICBNVUwzMl9GUkFDX1EoIHRtcDEsIHJjX1EzMSwgMzEgKSApLCByY19tdWx0MiksIG11bHQy
USk7CisgICAgICAgICAgICBpZiggdG1wNjQgPiBzaWxrX2ludDMyX01BWCB8fCB0bXA2NCA8IHNp
bGtfaW50MzJfTUlOICkgeworICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICB9
CisgICAgICAgICAgICBBX1FBWyBrIC0gbiAtIDEgXSA9ICggb3B1c19pbnQzMiApdG1wNjQ7CiAg
ICAgICAgIH0KICAgICB9CiAKICAgICAvKiBDaGVjayBmb3Igc3RhYmlsaXR5ICovCi0gICAgaWYo
ICggQW5ld19RQVsgMCBdID4gQV9MSU1JVCApIHx8ICggQW5ld19RQVsgMCBdIDwgLUFfTElNSVQg
KSApIHsKKyAgICBpZiggKCBBX1FBWyBrIF0gPiBBX0xJTUlUICkgfHwgKCBBX1FBWyBrIF0gPCAt
QV9MSU1JVCApICkgewogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKICAgICAvKiBTZXQgUkMg
ZXF1YWwgdG8gbmVnYXRlZCBBUiBjb2VmICovCi0gICAgcmNfUTMxID0gLXNpbGtfTFNISUZUKCBB
bmV3X1FBWyAwIF0sIDMxIC0gUUEgKTsKKyAgICByY19RMzEgPSAtc2lsa19MU0hJRlQoIEFfUUFb
IDAgXSwgMzEgLSBRQSApOwogCiAgICAgLyogUmFuZ2U6IFsgMSA6IDJeMzAgXSAqLwotICAgIHJj
X211bHQxX1EzMCA9ICggKG9wdXNfaW50MzIpMSA8PCAzMCApIC0gc2lsa19TTU1VTCggcmNfUTMx
LCByY19RMzEgKTsKKyAgICByY19tdWx0MV9RMzAgPSBzaWxrX1NVQjMyKCBTSUxLX0ZJWF9DT05T
VCggMSwgMzAgKSwgc2lsa19TTU1VTCggcmNfUTMxLCByY19RMzEgKSApOwogCiAgICAgLyogVXBk
YXRlIGludmVyc2UgZ2FpbiAqLwogICAgIC8qIFJhbmdlOiBbIDAgOiAyXjMwIF0gKi8KICAgICBp
bnZHYWluX1EzMCA9IHNpbGtfTFNISUZUKCBzaWxrX1NNTVVMKCBpbnZHYWluX1EzMCwgcmNfbXVs
dDFfUTMwICksIDIgKTsKLSAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPj0gMCAgICAgKTsK
LSAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPD0gMTw8MzAgKTsKKyAgICBzaWxrX2Fzc2Vy
dCggaW52R2Fpbl9RMzAgPj0gMCAgICAgICAgICAgKTsKKyAgICBzaWxrX2Fzc2VydCggaW52R2Fp
bl9RMzAgPD0gKCAxIDw8IDMwICkgKTsKKyAgICBpZiggaW52R2Fpbl9RMzAgPCBTSUxLX0ZJWF9D
T05TVCggMS4wZiAvIE1BWF9QUkVESUNUSU9OX1BPV0VSX0dBSU4sIDMwICkgKSB7CisgICAgICAg
IHJldHVybiAwOworICAgIH0KIAogICAgIHJldHVybiBpbnZHYWluX1EzMDsKIH0KIAogLyogRm9y
IGlucHV0IGluIFExMiBkb21haW4gKi8KLW9wdXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVk
X2dhaW4oICAgICAgICAgICAgICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2Fp
biBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgICAgICovCitvcHVzX2ludDMyIHNpbGtfTFBDX2lu
dmVyc2VfcHJlZF9nYWluX2MoICAgICAgICAgICAgLyogTyAgIFJldHVybnMgaW52ZXJzZSBwcmVk
aWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAgICAgICAqLwogICAgIGNvbnN0IG9w
dXNfaW50MTYgICAgICAgICAgICAqQV9RMTIsICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9u
IGNvZWZmaWNpZW50cywgUTEyIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAg
UHJlZGljdGlvbiBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiApCiB7CiAgICAgb3B1c19pbnQgICBrOwotICAgIG9wdXNfaW50MzIgQXRtcF9RQVsg
MiBdWyBTSUxLX01BWF9PUkRFUl9MUEMgXTsKLSAgICBvcHVzX2ludDMyICpBbmV3X1FBOworICAg
IG9wdXNfaW50MzIgQXRtcF9RQVsgU0lMS19NQVhfT1JERVJfTFBDIF07CiAgICAgb3B1c19pbnQz
MiBEQ19yZXNwID0gMDsKIAotICAgIEFuZXdfUUEgPSBBdG1wX1FBWyBvcmRlciAmIDEgXTsKLQog
ICAgIC8qIEluY3JlYXNlIFEgZG9tYWluIG9mIHRoZSBBUiBjb2VmZmljaWVudHMgKi8KICAgICBm
b3IoIGsgPSAwOyBrIDwgb3JkZXI7IGsrKyApIHsKICAgICAgICAgRENfcmVzcCArPSAob3B1c19p
bnQzMilBX1ExMlsgayBdOwotICAgICAgICBBbmV3X1FBWyBrIF0gPSBzaWxrX0xTSElGVDMyKCAo
b3B1c19pbnQzMilBX1ExMlsgayBdLCBRQSAtIDEyICk7CisgICAgICAgIEF0bXBfUUFbIGsgXSA9
IHNpbGtfTFNISUZUMzIoIChvcHVzX2ludDMyKUFfUTEyWyBrIF0sIFFBIC0gMTIgKTsKICAgICB9
CiAgICAgLyogSWYgdGhlIERDIGlzIHVuc3RhYmxlLCB3ZSBkb24ndCBldmVuIG5lZWQgdG8gZG8g
dGhlIGZ1bGwgY2FsY3VsYXRpb25zICovCiAgICAgaWYoIERDX3Jlc3AgPj0gNDA5NiApIHsKICAg
ICAgICAgcmV0dXJuIDA7CiAgICAgfQotICAgIHJldHVybiBMUENfaW52ZXJzZV9wcmVkX2dhaW5f
UUEoIEF0bXBfUUEsIG9yZGVyICk7CisgICAgcmV0dXJuIExQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9R
QV9jKCBBdG1wX1FBLCBvcmRlciApOwogfQotCi0jaWZkZWYgRklYRURfUE9JTlQKLQotLyogRm9y
IGlucHV0IGluIFEyNCBkb21haW4gKi8KLW9wdXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVk
X2dhaW5fUTI0KCAgICAgICAgICAvKiBPICAgIFJldHVybnMgaW52ZXJzZSBwcmVkaWN0aW9uIGdh
aW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgICAgICAgICpBX1EyNCwgICAgICAgICAgICAgLyogSSAgICBQcmVkaWN0aW9uIGNvZWZmaWNp
ZW50cyBbb3JkZXJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZGljdGlv
biBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSkK
LXsKLSAgICBvcHVzX2ludCAgIGs7Ci0gICAgb3B1c19pbnQzMiBBdG1wX1FBWyAyIF1bIFNJTEtf
TUFYX09SREVSX0xQQyBdOwotICAgIG9wdXNfaW50MzIgKkFuZXdfUUE7Ci0KLSAgICBBbmV3X1FB
ID0gQXRtcF9RQVsgb3JkZXIgJiAxIF07Ci0KLSAgICAvKiBJbmNyZWFzZSBRIGRvbWFpbiBvZiB0
aGUgQVIgY29lZmZpY2llbnRzICovCi0gICAgZm9yKCBrID0gMDsgayA8IG9yZGVyOyBrKysgKSB7
Ci0gICAgICAgIEFuZXdfUUFbIGsgXSA9IHNpbGtfUlNISUZUMzIoIEFfUTI0WyBrIF0sIDI0IC0g
UUEgKTsKLSAgICB9Ci0KLSAgICByZXR1cm4gTFBDX2ludmVyc2VfcHJlZF9nYWluX1FBKCBBdG1w
X1FBLCBvcmRlciApOwotfQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBfdmFyaWFibGVfY3V0
b2ZmLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvTFBfdmFyaWFibGVfY3V0b2ZmLmMKaW5kZXggZjYzOWUxZjg5OWE5YzIzZTdl
NTQyMDU1Mjg3YzkzZTk5ZjNiODc3NC4uNzkxMTJhZDM1NGExNTdhZTY4YmVkYTRkMzU1ZjBmMTE2
ZjJiNmY4YSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQX3ZhcmlhYmxlX2N1dG9mZi5jCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9M
UF92YXJpYWJsZV9jdXRvZmYuYwpAQCAtMTMwLDYgKzEzMCw2IEBAIHZvaWQgc2lsa19MUF92YXJp
YWJsZV9jdXRvZmYoCiAKICAgICAgICAgLyogQVJNQSBsb3ctcGFzcyBmaWx0ZXJpbmcgKi8KICAg
ICAgICAgc2lsa19hc3NlcnQoIFRSQU5TSVRJT05fTkIgPT0gMyAmJiBUUkFOU0lUSU9OX05BID09
IDIgKTsKLSAgICAgICAgc2lsa19iaXF1YWRfYWx0KCBmcmFtZSwgQl9RMjgsIEFfUTI4LCBwc0xQ
LT5Jbl9MUF9TdGF0ZSwgZnJhbWUsIGZyYW1lX2xlbmd0aCwgMSk7CisgICAgICAgIHNpbGtfYmlx
dWFkX2FsdF9zdHJpZGUxKCBmcmFtZSwgQl9RMjgsIEFfUTI4LCBwc0xQLT5Jbl9MUF9TdGF0ZSwg
ZnJhbWUsIGZyYW1lX2xlbmd0aCk7CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL01hY3JvQ291
bnQuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9NYWNyb0NvdW50LmgKaW5kZXggODM0ODE3ZDA1OGI5ZTllNGI4ZTdjMjQ0YTlj
ZTczNTI3OGNmMzU0NC4uNzgxMDBmZmVkZWIyOTA2MTgwOTMyNzMwOTU5OTg2M2E0ZGM0YWY0OCAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL01hY3JvQ291bnQuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTWFjcm9Db3VudC5oCkBAIC0z
MTksMTQgKzMxOSw2IEBAIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMyIHNpbGtfQUREX1BP
U19TQVQzMihvcHVzX2ludDY0IGEsIG9wdXNfaW50NjQgYil7CiAgICAgcmV0dXJuKHRtcCk7CiB9
CiAKLSN1bmRlZiBzaWxrX0FERF9QT1NfU0FUNjQKLXN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2lu
dDY0IHNpbGtfQUREX1BPU19TQVQ2NChvcHVzX2ludDY0IGEsIG9wdXNfaW50NjQgYil7Ci0gICAg
b3B1c19pbnQ2NCB0bXA7Ci0gICAgb3BzX2NvdW50ICs9IDE7Ci0gICAgdG1wID0gKCgoKGEpKyhi
KSkgJiAweDgwMDAwMDAwMDAwMDAwMDBMTCkgPyBzaWxrX2ludDY0X01BWCA6ICgoYSkrKGIpKSk7
Ci0gICAgcmV0dXJuKHRtcCk7Ci19Ci0KICN1bmRlZiAgICBzaWxrX0xTSElGVDgKIHN0YXRpYyBP
UFVTX0lOTElORSBvcHVzX2ludDggc2lsa19MU0hJRlQ4KG9wdXNfaW50OCBhLCBvcHVzX2ludDMy
IHNoaWZ0KXsKICAgICBvcHVzX2ludDggcmV0OwpAQCAtNjk5LDcgKzY5MSw3IEBAIHJldHVybihy
ZXQpOwogCiAKICN1bmRlZiBzaWxrX0xJTUlUXzMyCi1zdGF0aWMgT1BVU19JTkxJTkUgb3B1c19p
bnQgc2lsa19MSU1JVF8zMihvcHVzX2ludDMyIGEsIG9wdXNfaW50MzIgbGltaXQxLCBvcHVzX2lu
dDMyIGxpbWl0MikKK3N0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMyIHNpbGtfTElNSVRfMzIo
b3B1c19pbnQzMiBhLCBvcHVzX2ludDMyIGxpbWl0MSwgb3B1c19pbnQzMiBsaW1pdDIpCiB7CiAg
ICAgb3B1c19pbnQzMiByZXQ7CiAgICAgb3BzX2NvdW50ICs9IDY7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
TWFjcm9EZWJ1Zy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL01hY3JvRGVidWcuaAppbmRleCAzNWFlZGM1YzVmYTY0NjcyMmU2
ODc5ZWU1MWM3OGYzMjQ0OTFlZDg0Li44ZGQ0Y2UyZWUyNzVhNmE2NGY0YjFlZGU1MjZmYThiNDI4
ZjYxMjJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTWFjcm9EZWJ1Zy5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9NYWNyb0RlYnVn
LmgKQEAgLTUzOSw4ICs1MzksNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQzMiBzaWxr
X0RJVjMyXzE2XyhvcHVzX2ludDMyIGEzMiwgb3B1c19pbnQzMiBiMzIsIGNoYQogICAgbm8gY2hl
Y2tpbmcgbmVlZGVkIGZvciBzaWxrX1BPU19TQVQzMgogICAgbm8gY2hlY2tpbmcgbmVlZGVkIGZv
ciBzaWxrX0FERF9QT1NfU0FUOAogICAgbm8gY2hlY2tpbmcgbmVlZGVkIGZvciBzaWxrX0FERF9Q
T1NfU0FUMTYKLSAgIG5vIGNoZWNraW5nIG5lZWRlZCBmb3Igc2lsa19BRERfUE9TX1NBVDMyCi0g
ICBubyBjaGVja2luZyBuZWVkZWQgZm9yIHNpbGtfQUREX1BPU19TQVQ2NCAqLworICAgbm8gY2hl
Y2tpbmcgbmVlZGVkIGZvciBzaWxrX0FERF9QT1NfU0FUMzIgKi8KIAogI3VuZGVmIHNpbGtfTFNI
SUZUOAogI2RlZmluZSBzaWxrX0xTSElGVDgoYSxiKSBzaWxrX0xTSElGVDhfKChhKSwgKGIpLCBf
X0ZJTEVfXywgX19MSU5FX18pCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRjJBLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRjJB
LmMKaW5kZXggYjFjNTU5ZWE2ODIxM2UwNmQzOWRlNzljOTc3ZTg2ZjU3M2JkNTFjOC4uMTE2YjQ2
NWIxZGI4YzY3ODE3N2FkZWRiYzZkMjVmZjllZDM4NzUxMCAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0Yy
QS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9OTFNGMkEuYwpAQCAtNjYsNyArNjYsOCBAQCBzdGF0aWMgT1BVU19JTkxJ
TkUgdm9pZCBzaWxrX05MU0YyQV9maW5kX3BvbHkoCiB2b2lkIHNpbGtfTkxTRjJBKAogICAgIG9w
dXNfaW50MTYgICAgICAgICAgICAgICAgICAqYV9RMTIsICAgICAgICAgICAgIC8qIE8gICAgbW9u
aWMgd2hpdGVuaW5nIGZpbHRlciBjb2VmZmljaWVudHMgaW4gUTEyLCAgWyBkIF0gICAgICAgICAg
Ki8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKk5MU0YsICAgICAgICAgICAgICAv
KiBJICAgIG5vcm1hbGl6ZWQgbGluZSBzcGVjdHJhbCBmcmVxdWVuY2llcyBpbiBRMTUsIFsgZCBd
ICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGQgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBmaWx0ZXIgb3JkZXIgKHNob3VsZCBiZSBldmVuKSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBk
LCAgICAgICAgICAgICAgICAgIC8qIEkgICAgZmlsdGVyIG9yZGVyIChzaG91bGQgYmUgZXZlbikg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBpbnQgICAgICAgICAgICAgICAg
ICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVy
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7CiAgICAgLyog
VGhpcyBvcmRlcmluZyB3YXMgZm91bmQgdG8gbWF4aW1pemUgcXVhbGl0eS4gSXQgaW1wcm92ZXMg
bnVtZXJpY2FsIGFjY3VyYWN5IG9mCkBAIC04MywxNSArODQsMTQgQEAgdm9pZCBzaWxrX05MU0Yy
QSgKICAgICBvcHVzX2ludDMyIFBbIFNJTEtfTUFYX09SREVSX0xQQyAvIDIgKyAxIF0sIFFbIFNJ
TEtfTUFYX09SREVSX0xQQyAvIDIgKyAxIF07CiAgICAgb3B1c19pbnQzMiBQdG1wLCBRdG1wLCBm
X2ludCwgZl9mcmFjLCBjb3NfdmFsLCBkZWx0YTsKICAgICBvcHVzX2ludDMyIGEzMl9RQTFbIFNJ
TEtfTUFYX09SREVSX0xQQyBdOwotICAgIG9wdXNfaW50MzIgbWF4YWJzLCBhYnN2YWwsIGlkeD0w
LCBzY19RMTY7CiAKICAgICBzaWxrX2Fzc2VydCggTFNGX0NPU19UQUJfU1pfRklYID09IDEyOCAp
OwotICAgIHNpbGtfYXNzZXJ0KCBkPT0xMHx8ZD09MTYgKTsKKyAgICBzaWxrX2Fzc2VydCggZD09
MTAgfHwgZD09MTYgKTsKIAogICAgIC8qIGNvbnZlcnQgTFNGcyB0byAyKmNvcyhMU0YpLCB1c2lu
ZyBwaWVjZXdpc2UgbGluZWFyIGN1cnZlIGZyb20gdGFibGUgKi8KICAgICBvcmRlcmluZyA9IGQg
PT0gMTYgPyBvcmRlcmluZzE2IDogb3JkZXJpbmcxMDsKICAgICBmb3IoIGsgPSAwOyBrIDwgZDsg
aysrICkgewotICAgICAgICBzaWxrX2Fzc2VydChOTFNGW2tdID49IDAgKTsKKyAgICAgICAgc2ls
a19hc3NlcnQoIE5MU0Zba10gPj0gMCApOwogCiAgICAgICAgIC8qIGZfaW50IG9uIGEgc2NhbGUg
MC0xMjcgKHJvdW5kZWQgZG93bikgKi8KICAgICAgICAgZl9pbnQgPSBzaWxrX1JTSElGVCggTkxT
RltrXSwgMTUgLSA3ICk7CkBAIC0xMjYsNTIgKzEyNiwxNSBAQCB2b2lkIHNpbGtfTkxTRjJBKAog
ICAgICAgICBhMzJfUUExWyBkLWstMSBdID0gIFF0bXAgLSBQdG1wOyAgICAgICAgLyogUUErMSAq
LwogICAgIH0KIAotICAgIC8qIExpbWl0IHRoZSBtYXhpbXVtIGFic29sdXRlIHZhbHVlIG9mIHRo
ZSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cywgc28gdGhhdCB0aGV5J2xsIGZpdCBpbiBpbnQxNiAq
LwotICAgIGZvciggaSA9IDA7IGkgPCAxMDsgaSsrICkgewotICAgICAgICAvKiBGaW5kIG1heGlt
dW0gYWJzb2x1dGUgdmFsdWUgYW5kIGl0cyBpbmRleCAqLwotICAgICAgICBtYXhhYnMgPSAwOwot
ICAgICAgICBmb3IoIGsgPSAwOyBrIDwgZDsgaysrICkgewotICAgICAgICAgICAgYWJzdmFsID0g
c2lsa19hYnMoIGEzMl9RQTFba10gKTsKLSAgICAgICAgICAgIGlmKCBhYnN2YWwgPiBtYXhhYnMg
KSB7Ci0gICAgICAgICAgICAgICAgbWF4YWJzID0gYWJzdmFsOwotICAgICAgICAgICAgICAgIGlk
eCAgICA9IGs7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgbWF4YWJzID0gc2ls
a19SU0hJRlRfUk9VTkQoIG1heGFicywgUUEgKyAxIC0gMTIgKTsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBRQSsxIC0+IFExMiAqLwotCi0gICAgICAgIGlmKCBt
YXhhYnMgPiBzaWxrX2ludDE2X01BWCApIHsKLSAgICAgICAgICAgIC8qIFJlZHVjZSBtYWduaXR1
ZGUgb2YgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgKi8KLSAgICAgICAgICAgIG1heGFicyA9IHNp
bGtfbWluKCBtYXhhYnMsIDE2MzgzOCApOyAgLyogKCBzaWxrX2ludDMyX01BWCA+PiAxNCApICsg
c2lsa19pbnQxNl9NQVggPSAxNjM4MzggKi8KLSAgICAgICAgICAgIHNjX1ExNiA9IFNJTEtfRklY
X0NPTlNUKCAwLjk5OSwgMTYgKSAtIHNpbGtfRElWMzIoIHNpbGtfTFNISUZUKCBtYXhhYnMgLSBz
aWxrX2ludDE2X01BWCwgMTQgKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzaWxrX1JTSElGVDMyKCBzaWxrX01VTCggbWF4YWJzLCBpZHggKyAxKSwgMiApICk7Ci0g
ICAgICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfMzIoIGEzMl9RQTEsIGQsIHNjX1ExNiApOwotICAg
ICAgICB9IGVsc2UgewotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAgICB9CisgICAg
LyogQ29udmVydCBpbnQzMiBjb2VmZmljaWVudHMgdG8gUTEyIGludDE2IGNvZWZzICovCisgICAg
c2lsa19MUENfZml0KCBhX1ExMiwgYTMyX1FBMSwgMTIsIFFBICsgMSwgZCApOwogCi0gICAgaWYo
IGkgPT0gMTAgKSB7Ci0gICAgICAgIC8qIFJlYWNoZWQgdGhlIGxhc3QgaXRlcmF0aW9uLCBjbGlw
IHRoZSBjb2VmZmljaWVudHMgKi8KKyAgICBmb3IoIGkgPSAwOyBzaWxrX0xQQ19pbnZlcnNlX3By
ZWRfZ2FpbiggYV9RMTIsIGQsIGFyY2ggKSA9PSAwICYmIGkgPCBNQVhfTFBDX1NUQUJJTElaRV9J
VEVSQVRJT05TOyBpKysgKSB7CisgICAgICAgIC8qIFByZWRpY3Rpb24gY29lZmZpY2llbnRzIGFy
ZSAodG9vIGNsb3NlIHRvKSB1bnN0YWJsZTsgYXBwbHkgYmFuZHdpZHRoIGV4cGFuc2lvbiAgICov
CisgICAgICAgIC8qIG9uIHRoZSB1bnNjYWxlZCBjb2VmZmljaWVudHMsIGNvbnZlcnQgdG8gUTEy
IGFuZCBtZWFzdXJlIGFnYWluICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIHNpbGtfYndl
eHBhbmRlcl8zMiggYTMyX1FBMSwgZCwgNjU1MzYgLSBzaWxrX0xTSElGVCggMiwgaSApICk7CiAg
ICAgICAgIGZvciggayA9IDA7IGsgPCBkOyBrKysgKSB7Ci0gICAgICAgICAgICBhX1ExMlsgayBd
ID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIGEzMl9RQTFbIGsg
XSwgUUEgKyAxIC0gMTIgKSApOyAgLyogUUErMSAtPiBRMTIgKi8KLSAgICAgICAgICAgIGEzMl9R
QTFbIGsgXSA9IHNpbGtfTFNISUZUKCAob3B1c19pbnQzMilhX1ExMlsgayBdLCBRQSArIDEgLSAx
MiApOwotICAgICAgICB9Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgZm9yKCBrID0gMDsgayA8IGQ7
IGsrKyApIHsKLSAgICAgICAgICAgIGFfUTEyWyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1JTSElG
VF9ST1VORCggYTMyX1FBMVsgayBdLCBRQSArIDEgLSAxMiApOyAgICAgICAgICAgICAgICAvKiBR
QSsxIC0+IFExMiAqLwotICAgICAgICB9Ci0gICAgfQotCi0gICAgZm9yKCBpID0gMDsgaSA8IE1B
WF9MUENfU1RBQklMSVpFX0lURVJBVElPTlM7IGkrKyApIHsKLSAgICAgICAgaWYoIHNpbGtfTFBD
X2ludmVyc2VfcHJlZF9nYWluKCBhX1ExMiwgZCApIDwgU0lMS19GSVhfQ09OU1QoIDEuMCAvIE1B
WF9QUkVESUNUSU9OX1BPV0VSX0dBSU4sIDMwICkgKSB7Ci0gICAgICAgICAgICAvKiBQcmVkaWN0
aW9uIGNvZWZmaWNpZW50cyBhcmUgKHRvbyBjbG9zZSB0bykgdW5zdGFibGU7IGFwcGx5IGJhbmR3
aWR0aCBleHBhbnNpb24gICAqLwotICAgICAgICAgICAgLyogb24gdGhlIHVuc2NhbGVkIGNvZWZm
aWNpZW50cywgY29udmVydCB0byBRMTIgYW5kIG1lYXN1cmUgYWdhaW4gICAgICAgICAgICAgICAg
ICAgKi8KLSAgICAgICAgICAgIHNpbGtfYndleHBhbmRlcl8zMiggYTMyX1FBMSwgZCwgNjU1MzYg
LSBzaWxrX0xTSElGVCggMiwgaSApICk7Ci0gICAgICAgICAgICBmb3IoIGsgPSAwOyBrIDwgZDsg
aysrICkgewotICAgICAgICAgICAgICAgIGFfUTEyWyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1JT
SElGVF9ST1VORCggYTMyX1FBMVsgayBdLCBRQSArIDEgLSAxMiApOyAgICAgICAgICAgIC8qIFFB
KzEgLT4gUTEyICovCi0gICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgICAgIGFfUTEyWyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1JTSElG
VF9ST1VORCggYTMyX1FBMVsgayBdLCBRQSArIDEgLSAxMiApOyAgICAgICAgICAgIC8qIFFBKzEg
LT4gUTEyICovCiAgICAgICAgIH0KICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9WUS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL05MU0ZfVlEuYwppbmRleCA2OWI2ZTIyZTE4OTY1YTk4MDRiNTRhZWMxYjlmZjdjYjgy
NDUzNjUyLi40NTJmM2RjYjdkZGQ4YTc4OGEwMGYzYzI3YzEzOWU5NWVhMjBiYmZhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvTkxTRl9WUS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX1ZRLmMKQEAgLTMzLDM2ICszMyw0NCBA
QCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAogLyogQ29tcHV0ZSBxdWFudGl6YXRpb24g
ZXJyb3JzIGZvciBhbiBMUENfb3JkZXIgZWxlbWVudCBpbnB1dCB2ZWN0b3IgZm9yIGEgVlEgY29k
ZWJvb2sgKi8KIHZvaWQgc2lsa19OTFNGX1ZRKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAg
ICAgICBlcnJfUTI2W10sICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRpemF0aW9u
IGVycm9ycyBbS10gICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAg
ICAgICAgICAgICBlcnJfUTI0W10sICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRp
emF0aW9uIGVycm9ycyBbS10gICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50MTYgICAgICAgICAgICBpbl9RMTVbXSwgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
SW5wdXQgdmVjdG9ycyB0byBiZSBxdWFudGl6ZWQgW0xQQ19vcmRlcl0gICAqLwogICAgIGNvbnN0
IG9wdXNfdWludDggICAgICAgICAgICBwQ0JfUThbXSwgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgQ29kZWJvb2sgdmVjdG9ycyBbSypMUENfb3JkZXJdICAgICAgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBwV2dodF9ROVtdLCAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgQ29kZWJvb2sgd2VpZ2h0cyBbSypMUENfb3JkZXJdICAgICAgICAgICAgICAq
LwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBLLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIGNvZGVib29rIHZlY3RvcnMgICAgICAgICAgICAg
ICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBMUENfb3JkZXIgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIExQQ3MgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogKQogewotICAgIG9wdXNfaW50ICAgICAgICBpLCBtOwotICAgIG9wdXNf
aW50MzIgICAgICBkaWZmX1ExNSwgc3VtX2Vycm9yX1EzMCwgc3VtX2Vycm9yX1EyNjsKKyAgICBv
cHVzX2ludCAgICAgICAgIGksIG07CisgICAgb3B1c19pbnQzMiAgICAgICBkaWZmX1ExNSwgZGlm
ZndfUTI0LCBzdW1fZXJyb3JfUTI0LCBwcmVkX1EyNDsKKyAgICBjb25zdCBvcHVzX2ludDE2ICp3
X1E5X3B0cjsKKyAgICBjb25zdCBvcHVzX3VpbnQ4ICpjYl9ROF9wdHI7CiAKLSAgICBzaWxrX2Fz
c2VydCggTFBDX29yZGVyIDw9IDE2ICk7CiAgICAgc2lsa19hc3NlcnQoICggTFBDX29yZGVyICYg
MSApID09IDAgKTsKIAogICAgIC8qIExvb3Agb3ZlciBjb2RlYm9vayAqLworICAgIGNiX1E4X3B0
ciA9IHBDQl9RODsKKyAgICB3X1E5X3B0ciA9IHBXZ2h0X1E5OwogICAgIGZvciggaSA9IDA7IGkg
PCBLOyBpKysgKSB7Ci0gICAgICAgIHN1bV9lcnJvcl9RMjYgPSAwOwotICAgICAgICBmb3IoIG0g
PSAwOyBtIDwgTFBDX29yZGVyOyBtICs9IDIgKSB7Ci0gICAgICAgICAgICAvKiBDb21wdXRlIHdl
aWdodGVkIHNxdWFyZWQgcXVhbnRpemF0aW9uIGVycm9yIGZvciBpbmRleCBtICovCi0gICAgICAg
ICAgICBkaWZmX1ExNSA9IHNpbGtfU1VCX0xTSElGVDMyKCBpbl9RMTVbIG0gXSwgKG9wdXNfaW50
MzIpKnBDQl9ROCsrLCA3ICk7IC8qIHJhbmdlOiBbIC0zMjc2NyA6IDMyNzY3IF0qLwotICAgICAg
ICAgICAgc3VtX2Vycm9yX1EzMCA9IHNpbGtfU01VTEJCKCBkaWZmX1ExNSwgZGlmZl9RMTUgKTsK
KyAgICAgICAgc3VtX2Vycm9yX1EyNCA9IDA7CisgICAgICAgIHByZWRfUTI0ID0gMDsKKyAgICAg
ICAgZm9yKCBtID0gTFBDX29yZGVyLTI7IG0gPj0gMDsgbSAtPSAyICkgeworICAgICAgICAgICAg
LyogQ29tcHV0ZSB3ZWlnaHRlZCBhYnNvbHV0ZSBwcmVkaWN0aXZlIHF1YW50aXphdGlvbiBlcnJv
ciBmb3IgaW5kZXggbSArIDEgKi8KKyAgICAgICAgICAgIGRpZmZfUTE1ID0gc2lsa19TVUJfTFNI
SUZUMzIoIGluX1ExNVsgbSArIDEgXSwgKG9wdXNfaW50MzIpY2JfUThfcHRyWyBtICsgMSBdLCA3
ICk7IC8qIHJhbmdlOiBbIC0zMjc2NyA6IDMyNzY3IF0qLworICAgICAgICAgICAgZGlmZndfUTI0
ID0gc2lsa19TTVVMQkIoIGRpZmZfUTE1LCB3X1E5X3B0clsgbSArIDEgXSApOworICAgICAgICAg
ICAgc3VtX2Vycm9yX1EyNCA9IHNpbGtfQUREMzIoIHN1bV9lcnJvcl9RMjQsIHNpbGtfYWJzKCBz
aWxrX1NVQl9SU0hJRlQzMiggZGlmZndfUTI0LCBwcmVkX1EyNCwgMSApICkgKTsKKyAgICAgICAg
ICAgIHByZWRfUTI0ID0gZGlmZndfUTI0OwogCi0gICAgICAgICAgICAvKiBDb21wdXRlIHdlaWdo
dGVkIHNxdWFyZWQgcXVhbnRpemF0aW9uIGVycm9yIGZvciBpbmRleCBtICsgMSAqLwotICAgICAg
ICAgICAgZGlmZl9RMTUgPSBzaWxrX1NVQl9MU0hJRlQzMiggaW5fUTE1W20gKyAxXSwgKG9wdXNf
aW50MzIpKnBDQl9ROCsrLCA3ICk7IC8qIHJhbmdlOiBbIC0zMjc2NyA6IDMyNzY3IF0qLwotICAg
ICAgICAgICAgc3VtX2Vycm9yX1EzMCA9IHNpbGtfU01MQUJCKCBzdW1fZXJyb3JfUTMwLCBkaWZm
X1ExNSwgZGlmZl9RMTUgKTsKKyAgICAgICAgICAgIC8qIENvbXB1dGUgd2VpZ2h0ZWQgYWJzb2x1
dGUgcHJlZGljdGl2ZSBxdWFudGl6YXRpb24gZXJyb3IgZm9yIGluZGV4IG0gKi8KKyAgICAgICAg
ICAgIGRpZmZfUTE1ID0gc2lsa19TVUJfTFNISUZUMzIoIGluX1ExNVsgbSBdLCAob3B1c19pbnQz
MiljYl9ROF9wdHJbIG0gXSwgNyApOyAvKiByYW5nZTogWyAtMzI3NjcgOiAzMjc2NyBdKi8KKyAg
ICAgICAgICAgIGRpZmZ3X1EyNCA9IHNpbGtfU01VTEJCKCBkaWZmX1ExNSwgd19ROV9wdHJbIG0g
XSApOworICAgICAgICAgICAgc3VtX2Vycm9yX1EyNCA9IHNpbGtfQUREMzIoIHN1bV9lcnJvcl9R
MjQsIHNpbGtfYWJzKCBzaWxrX1NVQl9SU0hJRlQzMiggZGlmZndfUTI0LCBwcmVkX1EyNCwgMSAp
ICkgKTsKKyAgICAgICAgICAgIHByZWRfUTI0ID0gZGlmZndfUTI0OwogCi0gICAgICAgICAgICBz
dW1fZXJyb3JfUTI2ID0gc2lsa19BRERfUlNISUZUMzIoIHN1bV9lcnJvcl9RMjYsIHN1bV9lcnJv
cl9RMzAsIDQgKTsKLQotICAgICAgICAgICAgc2lsa19hc3NlcnQoIHN1bV9lcnJvcl9RMjYgPj0g
MCApOwotICAgICAgICAgICAgc2lsa19hc3NlcnQoIHN1bV9lcnJvcl9RMzAgPj0gMCApOworICAg
ICAgICAgICAgc2lsa19hc3NlcnQoIHN1bV9lcnJvcl9RMjQgPj0gMCApOwogICAgICAgICB9Ci0g
ICAgICAgIGVycl9RMjZbIGkgXSA9IHN1bV9lcnJvcl9RMjY7CisgICAgICAgIGVycl9RMjRbIGkg
XSA9IHN1bV9lcnJvcl9RMjQ7CisgICAgICAgIGNiX1E4X3B0ciArPSBMUENfb3JkZXI7CisgICAg
ICAgIHdfUTlfcHRyICs9IExQQ19vcmRlcjsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxT
Rl9kZWNvZGUuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9OTFNGX2RlY29kZS5jCmluZGV4IDlmNzE1MDYwYjhlZmIyYzNjNmQ4
NGMxMGVkYzY4MDM2ZjAyNTNmNDYuLmVlYjBiYThjOTJjOGI2MGY3ZGM2MTk1M2ZkODA1NGU4NzRi
YTA3ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX2RlY29kZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX2RlY29k
ZS5jCkBAIC0zMiw3ICszMiw3IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1
ZGUgIm1haW4uaCIKIAogLyogUHJlZGljdGl2ZSBkZXF1YW50aXplciBmb3IgTkxTRiByZXNpZHVh
bHMgKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTkxTRl9yZXNpZHVhbF9kZXF1YW50
KCAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBSRCB2YWx1ZSBpbiBRMzAgICAgICAgICAg
ICAgICAgICAgICAqLworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19OTFNGX3Jlc2lkdWFs
X2RlcXVhbnQoICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBSRCB2YWx1ZSBpbiBRMzAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgICAgICAgIG9wdXNfaW50MTYgICAgICAgICB4X1ExMFtdLCAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgT3V0cHV0IFsgb3JkZXIgXSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50OCAgICAgICAgICBpbmRpY2Vz
W10sICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUXVhbnRpemF0aW9uIGluZGljZXMgWyBv
cmRlciBdICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICBwcmVk
X2NvZWZfUThbXSwgICAgICAgICAgICAgICAgIC8qIEkgICAgQmFja3dhcmQgcHJlZGljdG9yIGNv
ZWZzIFsgb3JkZXIgXSAgICAgICAgICAqLwpAQCAtNzAsMTUgKzcwLDkgQEAgdm9pZCBzaWxrX05M
U0ZfZGVjb2RlKAogICAgIG9wdXNfdWludDggICAgICAgcHJlZF9ROFsgIE1BWF9MUENfT1JERVIg
XTsKICAgICBvcHVzX2ludDE2ICAgICAgIGVjX2l4WyAgICBNQVhfTFBDX09SREVSIF07CiAgICAg
b3B1c19pbnQxNiAgICAgICByZXNfUTEwWyAgTUFYX0xQQ19PUkRFUiBdOwotICAgIG9wdXNfaW50
MTYgICAgICAgV190bXBfUVdbIE1BWF9MUENfT1JERVIgXTsKLSAgICBvcHVzX2ludDMyICAgICAg
IFdfdG1wX1E5LCBOTFNGX1ExNV90bXA7CisgICAgb3B1c19pbnQzMiAgICAgICBOTFNGX1ExNV90
bXA7CiAgICAgY29uc3Qgb3B1c191aW50OCAqcENCX2VsZW1lbnQ7Ci0KLSAgICAvKiBEZWNvZGUg
Zmlyc3Qgc3RhZ2UgKi8KLSAgICBwQ0JfZWxlbWVudCA9ICZwc05MU0ZfQ0ItPkNCMV9OTFNGX1E4
WyBOTFNGSW5kaWNlc1sgMCBdICogcHNOTFNGX0NCLT5vcmRlciBdOwotICAgIGZvciggaSA9IDA7
IGkgPCBwc05MU0ZfQ0ItPm9yZGVyOyBpKysgKSB7Ci0gICAgICAgIHBOTFNGX1ExNVsgaSBdID0g
c2lsa19MU0hJRlQoIChvcHVzX2ludDE2KXBDQl9lbGVtZW50WyBpIF0sIDcgKTsKLSAgICB9Cisg
ICAgY29uc3Qgb3B1c19pbnQxNiAqcENCX1dnaHRfUTk7CiAKICAgICAvKiBVbnBhY2sgZW50cm9w
eSB0YWJsZSBpbmRpY2VzIGFuZCBwcmVkaWN0b3IgZm9yIGN1cnJlbnQgQ0IxIGluZGV4ICovCiAg
ICAgc2lsa19OTFNGX3VucGFjayggZWNfaXgsIHByZWRfUTgsIHBzTkxTRl9DQiwgTkxTRkluZGlj
ZXNbIDAgXSApOwpAQCAtODYsMTMgKzgwLDExIEBAIHZvaWQgc2lsa19OTFNGX2RlY29kZSgKICAg
ICAvKiBQcmVkaWN0aXZlIHJlc2lkdWFsIGRlcXVhbnRpemVyICovCiAgICAgc2lsa19OTFNGX3Jl
c2lkdWFsX2RlcXVhbnQoIHJlc19RMTAsICZOTFNGSW5kaWNlc1sgMSBdLCBwcmVkX1E4LCBwc05M
U0ZfQ0ItPnF1YW50U3RlcFNpemVfUTE2LCBwc05MU0ZfQ0ItPm9yZGVyICk7CiAKLSAgICAvKiBX
ZWlnaHRzIGZyb20gY29kZWJvb2sgdmVjdG9yICovCi0gICAgc2lsa19OTFNGX1ZRX3dlaWdodHNf
bGFyb2lhKCBXX3RtcF9RVywgcE5MU0ZfUTE1LCBwc05MU0ZfQ0ItPm9yZGVyICk7Ci0KLSAgICAv
KiBBcHBseSBpbnZlcnNlIHNxdWFyZS1yb290ZWQgd2VpZ2h0cyBhbmQgYWRkIHRvIG91dHB1dCAq
LworICAgIC8qIEFwcGx5IGludmVyc2Ugc3F1YXJlLXJvb3RlZCB3ZWlnaHRzIHRvIGZpcnN0IHN0
YWdlIGFuZCBhZGQgdG8gb3V0cHV0ICovCisgICAgcENCX2VsZW1lbnQgPSAmcHNOTFNGX0NCLT5D
QjFfTkxTRl9ROFsgTkxTRkluZGljZXNbIDAgXSAqIHBzTkxTRl9DQi0+b3JkZXIgXTsKKyAgICBw
Q0JfV2dodF9ROSA9ICZwc05MU0ZfQ0ItPkNCMV9XZ2h0X1E5WyBOTFNGSW5kaWNlc1sgMCBdICog
cHNOTFNGX0NCLT5vcmRlciBdOwogICAgIGZvciggaSA9IDA7IGkgPCBwc05MU0ZfQ0ItPm9yZGVy
OyBpKysgKSB7Ci0gICAgICAgIFdfdG1wX1E5ID0gc2lsa19TUVJUX0FQUFJPWCggc2lsa19MU0hJ
RlQoIChvcHVzX2ludDMyKVdfdG1wX1FXWyBpIF0sIDE4IC0gTkxTRl9XX1EgKSApOwotICAgICAg
ICBOTFNGX1ExNV90bXAgPSBzaWxrX0FERDMyKCBwTkxTRl9RMTVbIGkgXSwgc2lsa19ESVYzMl8x
Niggc2lsa19MU0hJRlQoIChvcHVzX2ludDMyKXJlc19RMTBbIGkgXSwgMTQgKSwgV190bXBfUTkg
KSApOworICAgICAgICBOTFNGX1ExNV90bXAgPSBzaWxrX0FERF9MU0hJRlQzMiggc2lsa19ESVYz
Ml8xNiggc2lsa19MU0hJRlQoIChvcHVzX2ludDMyKXJlc19RMTBbIGkgXSwgMTQgKSwgcENCX1dn
aHRfUTlbIGkgXSApLCAob3B1c19pbnQxNilwQ0JfZWxlbWVudFsgaSBdLCA3ICk7CiAgICAgICAg
IHBOTFNGX1ExNVsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19MSU1JVCggTkxTRl9RMTVfdG1wLCAw
LCAzMjc2NyApOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZGVsX2RlY19xdWFudC5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL05MU0ZfZGVsX2RlY19xdWFudC5jCmluZGV4IGRlODhmZWUwNjBlMzc3MmViNDNjNGQw
ZGY2ODEyYWExMDE1OTBkYmYuLjQ0YTE2YWNkMGJjMTFhYjczM2JiYjBiYmU0MmMzNzhiMjFkNGFm
MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX2RlbF9kZWNfcXVhbnQuYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9k
ZWxfZGVjX3F1YW50LmMKQEAgLTg0LDcgKzg0LDcgQEAgb3B1c19pbnQzMiBzaWxrX05MU0ZfZGVs
X2RlY19xdWFudCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucwog
ICAgIG5TdGF0ZXMgPSAxOwogICAgIFJEX1EyNVsgMCBdID0gMDsKICAgICBwcmV2X291dF9RMTBb
IDAgXSA9IDA7Ci0gICAgZm9yKCBpID0gb3JkZXIgLSAxOyA7IGktLSApIHsKKyAgICBmb3IoIGkg
PSBvcmRlciAtIDE7IGkgPj0gMDsgaS0tICkgewogICAgICAgICByYXRlc19RNSA9ICZlY19yYXRl
c19RNVsgZWNfaXhbIGkgXSBdOwogICAgICAgICBpbl9RMTAgPSB4X1ExMFsgaSBdOwogICAgICAg
ICBmb3IoIGogPSAwOyBqIDwgblN0YXRlczsgaisrICkgewpAQCAtMTMxLDcgKzEzMSw3IEBAIG9w
dXNfaW50MzIgc2lsa19OTFNGX2RlbF9kZWNfcXVhbnQoICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBPICAgIFJldHVybnMKICAgICAgICAgICAgIFJEX1EyNVsgaiArIG5TdGF0ZXMgXSA9
IHNpbGtfU01MQUJCKCBzaWxrX01MQSggUkRfdG1wX1EyNSwgc2lsa19TTVVMQkIoIGRpZmZfUTEw
LCBkaWZmX1ExMCApLCB3X1E1WyBpIF0gKSwgbXVfUTIwLCByYXRlMV9RNSApOwogICAgICAgICB9
CiAKLSAgICAgICAgaWYoIG5TdGF0ZXMgPD0gKCBOTFNGX1FVQU5UX0RFTF9ERUNfU1RBVEVTID4+
IDEgKSApIHsKKyAgICAgICAgaWYoIG5TdGF0ZXMgPD0gTkxTRl9RVUFOVF9ERUxfREVDX1NUQVRF
Uy8yICkgewogICAgICAgICAgICAgLyogZG91YmxlIG51bWJlciBvZiBzdGF0ZXMgYW5kIGNvcHkg
Ki8KICAgICAgICAgICAgIGZvciggaiA9IDA7IGogPCBuU3RhdGVzOyBqKysgKSB7CiAgICAgICAg
ICAgICAgICAgaW5kWyBqICsgblN0YXRlcyBdWyBpIF0gPSBpbmRbIGogXVsgaSBdICsgMTsKQEAg
LTE0MCw3ICsxNDAsNyBAQCBvcHVzX2ludDMyIHNpbGtfTkxTRl9kZWxfZGVjX3F1YW50KCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zCiAgICAgICAgICAgICBmb3Io
IGogPSBuU3RhdGVzOyBqIDwgTkxTRl9RVUFOVF9ERUxfREVDX1NUQVRFUzsgaisrICkgewogICAg
ICAgICAgICAgICAgIGluZFsgaiBdWyBpIF0gPSBpbmRbIGogLSBuU3RhdGVzIF1bIGkgXTsKICAg
ICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIGlmKCBpID4gMCApIHsKKyAgICAgICAgfSBlbHNl
IHsKICAgICAgICAgICAgIC8qIHNvcnQgbG93ZXIgYW5kIHVwcGVyIGhhbGYgb2YgUkRfUTI1LCBw
YWlyd2lzZSAqLwogICAgICAgICAgICAgZm9yKCBqID0gMDsgaiA8IE5MU0ZfUVVBTlRfREVMX0RF
Q19TVEFURVM7IGorKyApIHsKICAgICAgICAgICAgICAgICBpZiggUkRfUTI1WyBqIF0gPiBSRF9R
MjVbIGogKyBOTFNGX1FVQU5UX0RFTF9ERUNfU1RBVEVTIF0gKSB7CkBAIC0xOTEsOCArMTkxLDYg
QEAgb3B1c19pbnQzMiBzaWxrX05MU0ZfZGVsX2RlY19xdWFudCggICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIE8gICAgUmV0dXJucwogICAgICAgICAgICAgZm9yKCBqID0gMDsgaiA8IE5M
U0ZfUVVBTlRfREVMX0RFQ19TVEFURVM7IGorKyApIHsKICAgICAgICAgICAgICAgICBpbmRbIGog
XVsgaSBdICs9IHNpbGtfUlNISUZUKCBpbmRfc29ydFsgaiBdLCBOTFNGX1FVQU5UX0RFTF9ERUNf
U1RBVEVTX0xPRzIgKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIHsgIC8qIGkgPT0g
MCAqLwotICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9OTFNGX2VuY29kZS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZW5jb2RlLmMKaW5kZXggZjAzYzNmMWMzNTQ5
ZDlkY2NmNGY1MTE1MzdiNDAwMWM0MDlmN2U2Yi4uMjY4YjlhMTk1YjUwODU2NTM2NzgxMmJhMjc0
N2E3YmE2YTFmNGFhMCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZW5jb2RlLmMKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05M
U0ZfZW5jb2RlLmMKQEAgLTM3LDkgKzM3LDkgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAvKioqKioqKioqKioqKioqKioqKioqKiovCiBvcHVzX2ludDMyIHNpbGtfTkxTRl9lbmNvZGUo
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zIFJEIHZh
bHVlIGluIFEyNSAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgb3B1c19pbnQ4ICAg
ICAgICAgICAgICpOTFNGSW5kaWNlcywgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb2RlYm9v
ayBwYXRoIHZlY3RvciBbIExQQ19PUkRFUiArIDEgXSAgICAgICovCi0gICAgICAgICAgb3B1c19p
bnQxNiAgICAgICAgICAgICpwTkxTRl9RMTUsICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBR
dWFudGl6ZWQgTkxTRiB2ZWN0b3IgWyBMUENfT1JERVIgXSAgICAgICAgICovCisgICAgICAgICAg
b3B1c19pbnQxNiAgICAgICAgICAgICpwTkxTRl9RMTUsICAgICAgICAgICAgICAgICAgICAgLyog
SS9PICAoVW4pcXVhbnRpemVkIE5MU0YgdmVjdG9yIFsgTFBDX09SREVSIF0gICAgICovCiAgICAg
Y29uc3Qgc2lsa19OTFNGX0NCX3N0cnVjdCAgICpwc05MU0ZfQ0IsICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBDb2RlYm9vayBvYmplY3QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICpwV19RVywgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBOTFNGIHdlaWdodCB2ZWN0b3IgWyBMUENfT1JERVIgXSAgICAgICAg
ICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICpwV19RMiwgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBOTFNGIHdlaWdodCB2ZWN0b3IgWyBMUENfT1JERVIgXSAg
ICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIE5MU0ZfbXVfUTIw
LCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSYXRlIHdlaWdodCBmb3IgdGhlIFJEIG9wdGlt
aXphdGlvbiAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG5TdXJ2
aXZvcnMsICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBNYXggc3Vydml2b3JzIGFmdGVyIGZp
cnN0IHN0YWdlICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAg
IHNpZ25hbFR5cGUgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTaWduYWwgdHlwZTogMC8x
LzIgICAgICAgICAgICAgICAgICAgICAgICAgICovCkBAIC00NywyMSArNDcsMTkgQEAgb3B1c19p
bnQzMiBzaWxrX05MU0ZfZW5jb2RlKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIE8gICAgUmV0dXJucwogewogICAgIG9wdXNfaW50ICAgICAgICAgaSwgcywgaW5kMSwgYmVz
dEluZGV4LCBwcm9iX1E4LCBiaXRzX3E3OwogICAgIG9wdXNfaW50MzIgICAgICAgV190bXBfUTks
IHJldDsKLSAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBlcnJfUTI2ICk7CisgICAgVkFSREVDTCgg
b3B1c19pbnQzMiwgZXJyX1EyNCApOwogICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIFJEX1EyNSAp
OwogICAgIFZBUkRFQ0woIG9wdXNfaW50LCB0ZW1wSW5kaWNlczEgKTsKICAgICBWQVJERUNMKCBv
cHVzX2ludDgsIHRlbXBJbmRpY2VzMiApOwotICAgIG9wdXNfaW50MTYgICAgICAgcmVzX1ExNVsg
ICAgICBNQVhfTFBDX09SREVSIF07CiAgICAgb3B1c19pbnQxNiAgICAgICByZXNfUTEwWyAgICAg
IE1BWF9MUENfT1JERVIgXTsKICAgICBvcHVzX2ludDE2ICAgICAgIE5MU0ZfdG1wX1ExNVsgTUFY
X0xQQ19PUkRFUiBdOwotICAgIG9wdXNfaW50MTYgICAgICAgV190bXBfUVdbICAgICBNQVhfTFBD
X09SREVSIF07CiAgICAgb3B1c19pbnQxNiAgICAgICBXX2Fkal9RNVsgICAgIE1BWF9MUENfT1JE
RVIgXTsKICAgICBvcHVzX3VpbnQ4ICAgICAgIHByZWRfUThbICAgICAgTUFYX0xQQ19PUkRFUiBd
OwogICAgIG9wdXNfaW50MTYgICAgICAgZWNfaXhbICAgICAgICBNQVhfTFBDX09SREVSIF07CiAg
ICAgY29uc3Qgb3B1c191aW50OCAqcENCX2VsZW1lbnQsICppQ0RGX3B0cjsKKyAgICBjb25zdCBv
cHVzX2ludDE2ICpwQ0JfV2dodF9ROTsKICAgICBTQVZFX1NUQUNLOwogCi0gICAgc2lsa19hc3Nl
cnQoIG5TdXJ2aXZvcnMgPD0gTkxTRl9WUV9NQVhfU1VSVklWT1JTICk7CiAgICAgc2lsa19hc3Nl
cnQoIHNpZ25hbFR5cGUgPj0gMCAmJiBzaWduYWxUeXBlIDw9IDIgKTsKICAgICBzaWxrX2Fzc2Vy
dCggTkxTRl9tdV9RMjAgPD0gMzI3NjcgJiYgTkxTRl9tdV9RMjAgPj0gMCApOwogCkBAIC02OSwx
MiArNjcsMTIgQEAgb3B1c19pbnQzMiBzaWxrX05MU0ZfZW5jb2RlKCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucwogICAgIHNpbGtfTkxTRl9zdGFiaWxp
emUoIHBOTFNGX1ExNSwgcHNOTFNGX0NCLT5kZWx0YU1pbl9RMTUsIHBzTkxTRl9DQi0+b3JkZXIg
KTsKIAogICAgIC8qIEZpcnN0IHN0YWdlOiBWUSAqLwotICAgIEFMTE9DKCBlcnJfUTI2LCBwc05M
U0ZfQ0ItPm5WZWN0b3JzLCBvcHVzX2ludDMyICk7Ci0gICAgc2lsa19OTFNGX1ZRKCBlcnJfUTI2
LCBwTkxTRl9RMTUsIHBzTkxTRl9DQi0+Q0IxX05MU0ZfUTgsIHBzTkxTRl9DQi0+blZlY3RvcnMs
IHBzTkxTRl9DQi0+b3JkZXIgKTsKKyAgICBBTExPQyggZXJyX1EyNCwgcHNOTFNGX0NCLT5uVmVj
dG9ycywgb3B1c19pbnQzMiApOworICAgIHNpbGtfTkxTRl9WUSggZXJyX1EyNCwgcE5MU0ZfUTE1
LCBwc05MU0ZfQ0ItPkNCMV9OTFNGX1E4LCBwc05MU0ZfQ0ItPkNCMV9XZ2h0X1E5LCBwc05MU0Zf
Q0ItPm5WZWN0b3JzLCBwc05MU0ZfQ0ItPm9yZGVyICk7CiAKICAgICAvKiBTb3J0IHRoZSBxdWFu
dGl6YXRpb24gZXJyb3JzICovCiAgICAgQUxMT0MoIHRlbXBJbmRpY2VzMSwgblN1cnZpdm9ycywg
b3B1c19pbnQgKTsKLSAgICBzaWxrX2luc2VydGlvbl9zb3J0X2luY3JlYXNpbmcoIGVycl9RMjYs
IHRlbXBJbmRpY2VzMSwgcHNOTFNGX0NCLT5uVmVjdG9ycywgblN1cnZpdm9ycyApOworICAgIHNp
bGtfaW5zZXJ0aW9uX3NvcnRfaW5jcmVhc2luZyggZXJyX1EyNCwgdGVtcEluZGljZXMxLCBwc05M
U0ZfQ0ItPm5WZWN0b3JzLCBuU3Vydml2b3JzICk7CiAKICAgICBBTExPQyggUkRfUTI1LCBuU3Vy
dml2b3JzLCBvcHVzX2ludDMyICk7CiAgICAgQUxMT0MoIHRlbXBJbmRpY2VzMiwgblN1cnZpdm9y
cyAqIE1BWF9MUENfT1JERVIsIG9wdXNfaW50OCApOwpAQCAtODUsMjMgKzgzLDEyIEBAIG9wdXNf
aW50MzIgc2lsa19OTFNGX2VuY29kZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBPICAgIFJldHVybnMKIAogICAgICAgICAvKiBSZXNpZHVhbCBhZnRlciBmaXJzdCBzdGFn
ZSAqLwogICAgICAgICBwQ0JfZWxlbWVudCA9ICZwc05MU0ZfQ0ItPkNCMV9OTFNGX1E4WyBpbmQx
ICogcHNOTFNGX0NCLT5vcmRlciBdOworICAgICAgICBwQ0JfV2dodF9ROSA9ICZwc05MU0ZfQ0It
PkNCMV9XZ2h0X1E5WyBpbmQxICogcHNOTFNGX0NCLT5vcmRlciBdOwogICAgICAgICBmb3IoIGkg
PSAwOyBpIDwgcHNOTFNGX0NCLT5vcmRlcjsgaSsrICkgewogICAgICAgICAgICAgTkxTRl90bXBf
UTE1WyBpIF0gPSBzaWxrX0xTSElGVDE2KCAob3B1c19pbnQxNilwQ0JfZWxlbWVudFsgaSBdLCA3
ICk7Ci0gICAgICAgICAgICByZXNfUTE1WyBpIF0gPSBwTkxTRl9RMTVbIGkgXSAtIE5MU0ZfdG1w
X1ExNVsgaSBdOwotICAgICAgICB9Ci0KLSAgICAgICAgLyogV2VpZ2h0cyBmcm9tIGNvZGVib29r
IHZlY3RvciAqLwotICAgICAgICBzaWxrX05MU0ZfVlFfd2VpZ2h0c19sYXJvaWEoIFdfdG1wX1FX
LCBOTFNGX3RtcF9RMTUsIHBzTkxTRl9DQi0+b3JkZXIgKTsKLQotICAgICAgICAvKiBBcHBseSBz
cXVhcmUtcm9vdGVkIHdlaWdodHMgKi8KLSAgICAgICAgZm9yKCBpID0gMDsgaSA8IHBzTkxTRl9D
Qi0+b3JkZXI7IGkrKyApIHsKLSAgICAgICAgICAgIFdfdG1wX1E5ID0gc2lsa19TUVJUX0FQUFJP
WCggc2lsa19MU0hJRlQoIChvcHVzX2ludDMyKVdfdG1wX1FXWyBpIF0sIDE4IC0gTkxTRl9XX1Eg
KSApOwotICAgICAgICAgICAgcmVzX1ExMFsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19SU0hJRlQo
IHNpbGtfU01VTEJCKCByZXNfUTE1WyBpIF0sIFdfdG1wX1E5ICksIDE0ICk7Ci0gICAgICAgIH0K
LQotICAgICAgICAvKiBNb2RpZnkgaW5wdXQgd2VpZ2h0cyBhY2NvcmRpbmdseSAqLwotICAgICAg
ICBmb3IoIGkgPSAwOyBpIDwgcHNOTFNGX0NCLT5vcmRlcjsgaSsrICkgewotICAgICAgICAgICAg
V19hZGpfUTVbIGkgXSA9IHNpbGtfRElWMzJfMTYoIHNpbGtfTFNISUZUKCAob3B1c19pbnQzMilw
V19RV1sgaSBdLCA1ICksIFdfdG1wX1FXWyBpIF0gKTsKKyAgICAgICAgICAgIFdfdG1wX1E5ID0g
cENCX1dnaHRfUTlbIGkgXTsKKyAgICAgICAgICAgIHJlc19RMTBbIGkgXSA9IChvcHVzX2ludDE2
KXNpbGtfUlNISUZUKCBzaWxrX1NNVUxCQiggcE5MU0ZfUTE1WyBpIF0gLSBOTFNGX3RtcF9RMTVb
IGkgXSwgV190bXBfUTkgKSwgMTQgKTsKKyAgICAgICAgICAgIFdfYWRqX1E1WyBpIF0gPSBzaWxr
X0RJVjMyX3ZhclEoIChvcHVzX2ludDMyKXBXX1EyWyBpIF0sIHNpbGtfU01VTEJCKCBXX3RtcF9R
OSwgV190bXBfUTkgKSwgMjEgKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIFVucGFjayBlbnRy
b3B5IHRhYmxlIGluZGljZXMgYW5kIHByZWRpY3RvciBmb3IgY3VycmVudCBDQjEgaW5kZXggKi8K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9OU1EuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OU1EuYwppbmRleCA0M2UzZmVlN2UwYWQ5Mjkz
OTRlZjdjYmNmODE0YmFkZTI4NzE5YmVjLi42MTdhMTlmZWFkZWY4ZDU1N2IwODZjMzQ1NThkMzE3
NTAyNzZhMWM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTlNRLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05TUS5jCkBAIC0zNyw3
ICszNyw3IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogc3RhdGljIE9QVVNfSU5MSU5F
IHZvaWQgc2lsa19uc3Ffc2NhbGVfc3RhdGVzKAogICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0
ZSAqcHNFbmNDLCAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAg
ICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAv
KiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVz
X2ludDMyICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgIC8qIEkgICAgaW5wdXQgaW4gUTMgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgeDE2W10sICAgICAg
ICAgICAgICAgICAgLyogSSAgICBpbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgb3B1c19pbnQzMiAgICAgICAgICB4X3NjX1ExMFtdLCAgICAgICAgICAgICAvKiBPICAgIGlu
cHV0IHNjYWxlZCB3aXRoIDEvR2FpbiAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAg
IHNMVFBbXSwgICAgICAgICAgICAgICAgIC8qIEkgICAgcmUtd2hpdGVuZWQgTFRQIHN0YXRlIGlu
IFEwICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgc0xUUF9RMTVbXSwgICAgICAgICAg
ICAgLyogTyAgICBMVFAgc3RhdGUgbWF0Y2hpbmcgc2NhbGVkIGlucHV0ICovCkBAIC03NSwxNCAr
NzUsMTQgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6
ZXIoCiAKIHZvaWQgc2lsa19OU1FfYwogKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAg
ICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5j
b2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9z
dGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRl
ICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZv
SW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwotICAgIGNv
bnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLwor
ICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBRdWFudGl6ZWQgcHVsc2Ugc2lnbmFs
ICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIFByZWRDb2VmX1Ex
MlsgMiAqIE1BWF9MUENfT1JERVIgXSwgICAgICAgICAgLyogSSAgICBTaG9ydCB0ZXJtIHByZWRp
Y3Rpb24gY29lZnMgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIExUUENv
ZWZfUTE0WyBMVFBfT1JERVIgKiBNQVhfTkJfU1VCRlIgXSwgICAgLyogSSAgICBMb25nIHRlcm0g
cHJlZGljdGlvbiBjb2VmcyAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAg
IEFSMl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSBOb2lz
ZSBzaGFwaW5nIGNvZWZzICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgIEFSX1ExM1sgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAvKiBJ
IE5vaXNlIHNoYXBpbmcgY29lZnMgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQg
ICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5fUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAg
LyogSSAgICBMb25nIHRlcm0gc2hhcGluZyBjb2VmcyAgICAgICAgICovCiAgICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgIFRpbHRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBTcGVjdHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29u
c3Qgb3B1c19pbnQzMiAgICAgICAgICAgIExGX3NocF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAg
ICAgICAgICAgICAgLyogSSAgICBMb3cgZnJlcXVlbmN5IHNoYXBpbmcgY29lZnMgICAgICovCkBA
IC0xMTcsOCArMTE3LDcgQEAgdm9pZCBzaWxrX05TUV9jCiAgICAgICAgIExTRl9pbnRlcnBvbGF0
aW9uX2ZsYWcgPSAxOwogICAgIH0KIAotICAgIEFMTE9DKCBzTFRQX1ExNSwKLSAgICAgICAgICAg
cHNFbmNDLT5sdHBfbWVtX2xlbmd0aCArIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoLCBvcHVzX2ludDMy
ICk7CisgICAgQUxMT0MoIHNMVFBfUTE1LCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsgcHNFbmND
LT5mcmFtZV9sZW5ndGgsIG9wdXNfaW50MzIgKTsKICAgICBBTExPQyggc0xUUCwgcHNFbmNDLT5s
dHBfbWVtX2xlbmd0aCArIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoLCBvcHVzX2ludDE2ICk7CiAgICAg
QUxMT0MoIHhfc2NfUTEwLCBwc0VuY0MtPnN1YmZyX2xlbmd0aCwgb3B1c19pbnQzMiApOwogICAg
IC8qIFNldCB1cCBwb2ludGVycyB0byBzdGFydCBvZiBzdWIgZnJhbWUgKi8KQEAgLTEyOCw3ICsx
MjcsNyBAQCB2b2lkIHNpbGtfTlNRX2MKICAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmNDLT5uYl9z
dWJmcjsgaysrICkgewogICAgICAgICBBX1ExMiAgICAgID0gJlByZWRDb2VmX1ExMlsgKCggayA+
PiAxICkgfCAoIDEgLSBMU0ZfaW50ZXJwb2xhdGlvbl9mbGFnICkpICogTUFYX0xQQ19PUkRFUiBd
OwogICAgICAgICBCX1ExNCAgICAgID0gJkxUUENvZWZfUTE0WyBrICogTFRQX09SREVSIF07Ci0g
ICAgICAgIEFSX3NocF9RMTMgPSAmQVIyX1ExM1sgICAgIGsgKiBNQVhfU0hBUEVfTFBDX09SREVS
IF07CisgICAgICAgIEFSX3NocF9RMTMgPSAmQVJfUTEzWyBrICogTUFYX1NIQVBFX0xQQ19PUkRF
UiBdOwogCiAgICAgICAgIC8qIE5vaXNlIHNoYXBlIHBhcmFtZXRlcnMgKi8KICAgICAgICAgc2ls
a19hc3NlcnQoIEhhcm1TaGFwZUdhaW5fUTE0WyBrIF0gPj0gMCApOwpAQCAtMTU0LDEzICsxNTMs
MTMgQEAgdm9pZCBzaWxrX05TUV9jCiAgICAgICAgICAgICB9CiAgICAgICAgIH0KIAotICAgICAg
ICBzaWxrX25zcV9zY2FsZV9zdGF0ZXMoIHBzRW5jQywgTlNRLCB4X1EzLCB4X3NjX1ExMCwgc0xU
UCwgc0xUUF9RMTUsIGssIExUUF9zY2FsZV9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBwc0luZGlj
ZXMtPnNpZ25hbFR5cGUgKTsKKyAgICAgICAgc2lsa19uc3Ffc2NhbGVfc3RhdGVzKCBwc0VuY0Ms
IE5TUSwgeDE2LCB4X3NjX1ExMCwgc0xUUCwgc0xUUF9RMTUsIGssIExUUF9zY2FsZV9RMTQsIEdh
aW5zX1ExNiwgcGl0Y2hMLCBwc0luZGljZXMtPnNpZ25hbFR5cGUgKTsKIAogICAgICAgICBzaWxr
X25vaXNlX3NoYXBlX3F1YW50aXplciggTlNRLCBwc0luZGljZXMtPnNpZ25hbFR5cGUsIHhfc2Nf
UTEwLCBwdWxzZXMsIHB4cSwgc0xUUF9RMTUsIEFfUTEyLCBCX1ExNCwKICAgICAgICAgICAgIEFS
X3NocF9RMTMsIGxhZywgSGFybVNoYXBlRklSUGFja2VkX1ExNCwgVGlsdF9RMTRbIGsgXSwgTEZf
c2hwX1ExNFsgayBdLCBHYWluc19RMTZbIGsgXSwgTGFtYmRhX1ExMCwKICAgICAgICAgICAgIG9m
ZnNldF9RMTAsIHBzRW5jQy0+c3ViZnJfbGVuZ3RoLCBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciwg
cHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIsIHBzRW5jQy0+YXJjaCApOwogCi0gICAgICAgIHhfUTMg
ICArPSBwc0VuY0MtPnN1YmZyX2xlbmd0aDsKKyAgICAgICAgeDE2ICAgICs9IHBzRW5jQy0+c3Vi
ZnJfbGVuZ3RoOwogICAgICAgICBwdWxzZXMgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7CiAgICAg
ICAgIHB4cSAgICArPSBwc0VuY0MtPnN1YmZyX2xlbmd0aDsKICAgICB9CkBAIC0xNjksNyArMTY4
LDYgQEAgdm9pZCBzaWxrX05TUV9jCiAgICAgTlNRLT5sYWdQcmV2ID0gcGl0Y2hMWyBwc0VuY0Mt
Pm5iX3N1YmZyIC0gMSBdOwogCiAgICAgLyogU2F2ZSBxdWFudGl6ZWQgc3BlZWNoIGFuZCBub2lz
ZSBzaGFwaW5nIHNpZ25hbHMgKi8KLSAgICAvKiBERUJVR19TVE9SRV9EQVRBKCBlbmMucGNtLCAm
TlNRLT54cVsgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCBdLCBwc0VuY0MtPmZyYW1lX2xlbmd0aCAq
IHNpemVvZiggb3B1c19pbnQxNiApICkgKi8KICAgICBzaWxrX21lbW1vdmUoIE5TUS0+eHEsICAg
ICAgICAgICAmTlNRLT54cVsgICAgICAgICAgIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoIF0sIHBzRW5j
Qy0+bHRwX21lbV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOwogICAgIHNpbGtfbWVt
bW92ZSggTlNRLT5zTFRQX3NocF9RMTQsICZOU1EtPnNMVFBfc2hwX1ExNFsgcHNFbmNDLT5mcmFt
ZV9sZW5ndGggXSwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQzMiAp
ICk7CiAgICAgUkVTVE9SRV9TVEFDSzsKQEAgLTI1MCw3ICsyNDgsNyBAQCB2b2lkIHNpbGtfbm9p
c2Vfc2hhcGVfcXVhbnRpemVyKAogCiAgICAgICAgIC8qIE5vaXNlIHNoYXBlIGZlZWRiYWNrICov
CiAgICAgICAgIHNpbGtfYXNzZXJ0KCAoIHNoYXBpbmdMUENPcmRlciAmIDEgKSA9PSAwICk7ICAg
LyogY2hlY2sgdGhhdCBvcmRlciBpcyBldmVuICovCi0gICAgICAgIG5fQVJfUTEyID0gc2lsa19O
U1Ffbm9pc2Vfc2hhcGVfZmVlZGJhY2tfbG9vcChwc0xQQ19RMTQsIE5TUS0+c0FSMl9RMTQsIEFS
X3NocF9RMTMsIHNoYXBpbmdMUENPcmRlciwgYXJjaCk7CisgICAgICAgIG5fQVJfUTEyID0gc2ls
a19OU1Ffbm9pc2Vfc2hhcGVfZmVlZGJhY2tfbG9vcCgmTlNRLT5zRGlmZl9zaHBfUTE0LCBOU1Et
PnNBUjJfUTE0LCBBUl9zaHBfUTEzLCBzaGFwaW5nTFBDT3JkZXIsIGFyY2gpOwogCiAgICAgICAg
IG5fQVJfUTEyID0gc2lsa19TTUxBV0IoIG5fQVJfUTEyLCBOU1EtPnNMRl9BUl9zaHBfUTE0LCBU
aWx0X1ExNCApOwogCkBAIC0yNzksMTQgKzI3NywyNyBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVf
cXVhbnRpemVyKAogICAgICAgICByX1ExMCA9IHNpbGtfU1VCMzIoIHhfc2NfUTEwWyBpIF0sIHRt
cDEgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiByZXNpZHVhbCBlcnJvciBRMTAg
Ki8KIAogICAgICAgICAvKiBGbGlwIHNpZ24gZGVwZW5kaW5nIG9uIGRpdGhlciAqLwotICAgICAg
ICBpZiAoIE5TUS0+cmFuZF9zZWVkIDwgMCApIHsKLSAgICAgICAgICAgcl9RMTAgPSAtcl9RMTA7
CisgICAgICAgIGlmKCBOU1EtPnJhbmRfc2VlZCA8IDAgKSB7CisgICAgICAgICAgICByX1ExMCA9
IC1yX1ExMDsKICAgICAgICAgfQogICAgICAgICByX1ExMCA9IHNpbGtfTElNSVRfMzIoIHJfUTEw
LCAtKDMxIDw8IDEwKSwgMzAgPDwgMTAgKTsKIAogICAgICAgICAvKiBGaW5kIHR3byBxdWFudGl6
YXRpb24gbGV2ZWwgY2FuZGlkYXRlcyBhbmQgbWVhc3VyZSB0aGVpciByYXRlLWRpc3RvcnRpb24g
Ki8KICAgICAgICAgcTFfUTEwID0gc2lsa19TVUIzMiggcl9RMTAsIG9mZnNldF9RMTAgKTsKICAg
ICAgICAgcTFfUTAgPSBzaWxrX1JTSElGVCggcTFfUTEwLCAxMCApOworICAgICAgICBpZiAoTGFt
YmRhX1ExMCA+IDIwNDgpIHsKKyAgICAgICAgICAgIC8qIEZvciBhZ2dyZXNzaXZlIFJETywgdGhl
IGJpYXMgYmVjb21lcyBtb3JlIHRoYW4gb25lIHB1bHNlLiAqLworICAgICAgICAgICAgaW50IHJk
b19vZmZzZXQgPSBMYW1iZGFfUTEwLzIgLSA1MTI7CisgICAgICAgICAgICBpZiAocTFfUTEwID4g
cmRvX29mZnNldCkgeworICAgICAgICAgICAgICAgIHExX1EwID0gc2lsa19SU0hJRlQoIHExX1Ex
MCAtIHJkb19vZmZzZXQsIDEwICk7CisgICAgICAgICAgICB9IGVsc2UgaWYgKHExX1ExMCA8IC1y
ZG9fb2Zmc2V0KSB7CisgICAgICAgICAgICAgICAgcTFfUTAgPSBzaWxrX1JTSElGVCggcTFfUTEw
ICsgcmRvX29mZnNldCwgMTAgKTsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAocTFfUTEwIDwgMCkg
eworICAgICAgICAgICAgICAgIHExX1EwID0gLTE7CisgICAgICAgICAgICB9IGVsc2UgeworICAg
ICAgICAgICAgICAgIHExX1EwID0gMDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQogICAgICAg
ICBpZiggcTFfUTAgPiAwICkgewogICAgICAgICAgICAgcTFfUTEwICA9IHNpbGtfU1VCMzIoIHNp
bGtfTFNISUZUKCBxMV9RMCwgMTAgKSwgUVVBTlRfTEVWRUxfQURKVVNUX1ExMCApOwogICAgICAg
ICAgICAgcTFfUTEwICA9IHNpbGtfQUREMzIoIHExX1ExMCwgb2Zmc2V0X1ExMCApOwpAQCAtMzM3
LDcgKzM0OCw4IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXIoCiAgICAgICAgIC8q
IFVwZGF0ZSBzdGF0ZXMgKi8KICAgICAgICAgcHNMUENfUTE0Kys7CiAgICAgICAgICpwc0xQQ19R
MTQgPSB4cV9RMTQ7Ci0gICAgICAgIHNMRl9BUl9zaHBfUTE0ID0gc2lsa19TVUJfTFNISUZUMzIo
IHhxX1ExNCwgbl9BUl9RMTIsIDIgKTsKKyAgICAgICAgTlNRLT5zRGlmZl9zaHBfUTE0ID0gc2ls
a19TVUJfTFNISUZUMzIoIHhxX1ExNCwgeF9zY19RMTBbIGkgXSwgNCApOworICAgICAgICBzTEZf
QVJfc2hwX1ExNCA9IHNpbGtfU1VCX0xTSElGVDMyKCBOU1EtPnNEaWZmX3NocF9RMTQsIG5fQVJf
UTEyLCAyICk7CiAgICAgICAgIE5TUS0+c0xGX0FSX3NocF9RMTQgPSBzTEZfQVJfc2hwX1ExNDsK
IAogICAgICAgICBOU1EtPnNMVFBfc2hwX1ExNFsgTlNRLT5zTFRQX3NocF9idWZfaWR4IF0gPSBz
aWxrX1NVQl9MU0hJRlQzMiggc0xGX0FSX3NocF9RMTQsIG5fTEZfUTEyLCAyICk7CkBAIC0zNTYs
NyArMzY4LDcgQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcigKIHN0YXRpYyBPUFVT
X0lOTElORSB2b2lkIHNpbGtfbnNxX3NjYWxlX3N0YXRlcygKICAgICBjb25zdCBzaWxrX2VuY29k
ZXJfc3RhdGUgKnBzRW5jQywgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAg
ICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgKk5TUSwgICAgICAgICAgICAg
ICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgb3B1c19pbnQzMiAgICB4X1EzW10sICAgICAgICAgICAgICAgICAvKiBJICAgIGlucHV0IGlu
IFEzICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIHgxNltd
LCAgICAgICAgICAgICAgICAgIC8qIEkgICAgaW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgeF9zY19RMTBbXSwgICAgICAgICAgICAgLyog
TyAgICBpbnB1dCBzY2FsZWQgd2l0aCAxL0dhaW4gICAgICAgICovCiAgICAgY29uc3Qgb3B1c19p
bnQxNiAgICBzTFRQW10sICAgICAgICAgICAgICAgICAvKiBJICAgIHJlLXdoaXRlbmVkIExUUCBz
dGF0ZSBpbiBRMCAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgIHNMVFBfUTE1W10sICAg
ICAgICAgICAgIC8qIE8gICAgTFRQIHN0YXRlIG1hdGNoaW5nIHNjYWxlZCBpbnB1dCAqLwpAQCAt
MzY4LDI4ICszODAsMTggQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3Ffc2NhbGVf
c3RhdGVzKAogKQogewogICAgIG9wdXNfaW50ICAgaSwgbGFnOwotICAgIG9wdXNfaW50MzIgZ2Fp
bl9hZGpfUTE2LCBpbnZfZ2Fpbl9RMzEsIGludl9nYWluX1EyMzsKKyAgICBvcHVzX2ludDMyIGdh
aW5fYWRqX1ExNiwgaW52X2dhaW5fUTMxLCBpbnZfZ2Fpbl9RMjY7CiAKICAgICBsYWcgICAgICAg
ICAgPSBwaXRjaExbIHN1YmZyIF07CiAgICAgaW52X2dhaW5fUTMxID0gc2lsa19JTlZFUlNFMzJf
dmFyUSggc2lsa19tYXgoIEdhaW5zX1ExNlsgc3ViZnIgXSwgMSApLCA0NyApOwogICAgIHNpbGtf
YXNzZXJ0KCBpbnZfZ2Fpbl9RMzEgIT0gMCApOwogCi0gICAgLyogQ2FsY3VsYXRlIGdhaW4gYWRq
dXN0bWVudCBmYWN0b3IgKi8KLSAgICBpZiggR2FpbnNfUTE2WyBzdWJmciBdICE9IE5TUS0+cHJl
dl9nYWluX1ExNiApIHsKLSAgICAgICAgZ2Fpbl9hZGpfUTE2ID0gIHNpbGtfRElWMzJfdmFyUSgg
TlNRLT5wcmV2X2dhaW5fUTE2LCBHYWluc19RMTZbIHN1YmZyIF0sIDE2ICk7Ci0gICAgfSBlbHNl
IHsKLSAgICAgICAgZ2Fpbl9hZGpfUTE2ID0gKG9wdXNfaW50MzIpMSA8PCAxNjsKLSAgICB9Ci0K
ICAgICAvKiBTY2FsZSBpbnB1dCAqLwotICAgIGludl9nYWluX1EyMyA9IHNpbGtfUlNISUZUX1JP
VU5EKCBpbnZfZ2Fpbl9RMzEsIDggKTsKKyAgICBpbnZfZ2Fpbl9RMjYgPSBzaWxrX1JTSElGVF9S
T1VORCggaW52X2dhaW5fUTMxLCA1ICk7CiAgICAgZm9yKCBpID0gMDsgaSA8IHBzRW5jQy0+c3Vi
ZnJfbGVuZ3RoOyBpKysgKSB7Ci0gICAgICAgIHhfc2NfUTEwWyBpIF0gPSBzaWxrX1NNVUxXVygg
eF9RM1sgaSBdLCBpbnZfZ2Fpbl9RMjMgKTsKKyAgICAgICAgeF9zY19RMTBbIGkgXSA9IHNpbGtf
U01VTFdXKCB4MTZbIGkgXSwgaW52X2dhaW5fUTI2ICk7CiAgICAgfQogCi0gICAgLyogU2F2ZSBp
bnZlcnNlIGdhaW4gKi8KLSAgICBOU1EtPnByZXZfZ2Fpbl9RMTYgPSBHYWluc19RMTZbIHN1YmZy
IF07Ci0KICAgICAvKiBBZnRlciByZXdoaXRlbmluZyB0aGUgTFRQIHN0YXRlIGlzIHVuLXNjYWxl
ZCwgc28gc2NhbGUgd2l0aCBpbnZfZ2Fpbl9RMTYgKi8KICAgICBpZiggTlNRLT5yZXdoaXRlX2Zs
YWcgKSB7CiAgICAgICAgIGlmKCBzdWJmciA9PSAwICkgewpAQCAtNDAzLDcgKzQwNSw5IEBAIHN0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX3NjYWxlX3N0YXRlcygKICAgICB9CiAKICAg
ICAvKiBBZGp1c3QgZm9yIGNoYW5naW5nIGdhaW4gKi8KLSAgICBpZiggZ2Fpbl9hZGpfUTE2ICE9
IChvcHVzX2ludDMyKTEgPDwgMTYgKSB7CisgICAgaWYoIEdhaW5zX1ExNlsgc3ViZnIgXSAhPSBO
U1EtPnByZXZfZ2Fpbl9RMTYgKSB7CisgICAgICAgIGdhaW5fYWRqX1ExNiA9ICBzaWxrX0RJVjMy
X3ZhclEoIE5TUS0+cHJldl9nYWluX1ExNiwgR2FpbnNfUTE2WyBzdWJmciBdLCAxNiApOworCiAg
ICAgICAgIC8qIFNjYWxlIGxvbmctdGVybSBzaGFwaW5nIHN0YXRlICovCiAgICAgICAgIGZvcigg
aSA9IE5TUS0+c0xUUF9zaHBfYnVmX2lkeCAtIHBzRW5jQy0+bHRwX21lbV9sZW5ndGg7IGkgPCBO
U1EtPnNMVFBfc2hwX2J1Zl9pZHg7IGkrKyApIHsKICAgICAgICAgICAgIE5TUS0+c0xUUF9zaHBf
UTE0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9hZGpfUTE2LCBOU1EtPnNMVFBfc2hwX1ExNFsg
aSBdICk7CkBAIC00MTcsNiArNDIxLDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19u
c3Ffc2NhbGVfc3RhdGVzKAogICAgICAgICB9CiAKICAgICAgICAgTlNRLT5zTEZfQVJfc2hwX1Ex
NCA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIE5TUS0+c0xGX0FSX3NocF9RMTQgKTsKKyAg
ICAgICAgTlNRLT5zRGlmZl9zaHBfUTE0ID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgTlNR
LT5zRGlmZl9zaHBfUTE0ICk7CiAKICAgICAgICAgLyogU2NhbGUgc2hvcnQtdGVybSBwcmVkaWN0
aW9uIGFuZCBzaGFwaW5nIHN0YXRlcyAqLwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTlNRX0xQ
Q19CVUZfTEVOR1RIOyBpKysgKSB7CkBAIC00MjUsNSArNDMwLDggQEAgc3RhdGljIE9QVVNfSU5M
SU5FIHZvaWQgc2lsa19uc3Ffc2NhbGVfc3RhdGVzKAogICAgICAgICBmb3IoIGkgPSAwOyBpIDwg
TUFYX1NIQVBFX0xQQ19PUkRFUjsgaSsrICkgewogICAgICAgICAgICAgTlNRLT5zQVIyX1ExNFsg
aSBdID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgTlNRLT5zQVIyX1ExNFsgaSBdICk7CiAg
ICAgICAgIH0KKworICAgICAgICAvKiBTYXZlIGludmVyc2UgZ2FpbiAqLworICAgICAgICBOU1Et
PnByZXZfZ2Fpbl9RMTYgPSBHYWluc19RMTZbIHN1YmZyIF07CiAgICAgfQogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL05TUV9kZWxfZGVjLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTlNRX2RlbF9kZWMuYwppbmRleCBhYjZmZWVhYzk4
NzAyYWJhYTU2ZTEyMDQzYTU1ZTlhMjVmOTZkZmZjLi41OTllMjVmMWM4YmJmM2NiYTk4OGY2NjBh
NjEwNjRhODY2NWU2YjY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTlNRX2RlbF9kZWMuYworKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
TlNRX2RlbF9kZWMuYwpAQCAtNDMsNiArNDMsNyBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1
c19pbnQzMiBTaGFwZV9RMTRbIERFQ0lTSU9OX0RFTEFZIF07CiAgICAgb3B1c19pbnQzMiBzQVIy
X1ExNFsgTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfaW50MzIgTEZfQVJfUTE0Owor
ICAgIG9wdXNfaW50MzIgRGlmZl9RMTQ7CiAgICAgb3B1c19pbnQzMiBTZWVkOwogICAgIG9wdXNf
aW50MzIgU2VlZEluaXQ7CiAgICAgb3B1c19pbnQzMiBSRF9RMTA7CkBAIC01Myw2ICs1NCw3IEBA
IHR5cGVkZWYgc3RydWN0IHsKICAgICBvcHVzX2ludDMyIFJEX1ExMDsKICAgICBvcHVzX2ludDMy
IHhxX1ExNDsKICAgICBvcHVzX2ludDMyIExGX0FSX1ExNDsKKyAgICBvcHVzX2ludDMyIERpZmZf
UTE0OwogICAgIG9wdXNfaW50MzIgc0xUUF9zaHBfUTE0OwogICAgIG9wdXNfaW50MzIgTFBDX2V4
Y19RMTQ7CiB9IE5TUV9zYW1wbGVfc3RydWN0OwpAQCAtNjYsNyArNjgsNyBAQCBzdGF0aWMgT1BV
U19JTkxJTkUgdm9pZCBzaWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlcygKICAgICBjb25zdCBz
aWxrX2VuY29kZXJfc3RhdGUgKnBzRW5jQywgICAgICAgICAgICAgICAvKiBJICAgIEVuY29kZXIg
U3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAq
TlNRLCAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIE5TUV9kZWxfZGVjX3N0cnVjdCAgcHNEZWxEZWNbXSwgICAg
ICAgICAgICAgICAgIC8qIEkvTyAgRGVsYXllZCBkZWNpc2lvbiBzdGF0ZXMgICAgICAgICAgICAg
Ki8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIElucHV0IGluIFEzICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qg
b3B1c19pbnQxNiAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAg
eF9zY19RMTBbXSwgICAgICAgICAgICAgICAgIC8qIE8gICAgSW5wdXQgc2NhbGVkIHdpdGggMS9H
YWluIGluIFExMCAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgIHNMVFBbXSwgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIFJlLXdoaXRlbmVkIExUUCBzdGF0ZSBpbiBRMCAgICAgICAg
ICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICBzTFRQX1ExNVtdLCAgICAgICAgICAgICAgICAg
LyogTyAgICBMVFAgc3RhdGUgbWF0Y2hpbmcgc2NhbGVkIGlucHV0ICAgICAqLwpAQCAtMTA3LDIw
ICsxMDksMjAgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFu
dGl6ZXJfZGVsX2RlYygKICAgICBvcHVzX2ludCAgICAgICAgICAgIHByZWRpY3RMUENPcmRlciwg
ICAgICAgIC8qIEkgICAgUHJlZGljdGlvbiBmaWx0ZXIgb3JkZXIgICAgICAgICAgICAgKi8KICAg
ICBvcHVzX2ludCAgICAgICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAgICAgIC8qIEkgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAg
ICAgIG5TdGF0ZXNEZWxheWVkRGVjaXNpb24sIC8qIEkgICAgTnVtYmVyIG9mIHN0YXRlcyBpbiBk
ZWNpc2lvbiB0cmVlICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9pZHgs
ICAgICAgICAgIC8qIEkgICAgSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAgKi8K
KyAgICBvcHVzX2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkvTyAg
SW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAgKi8KICAgICBvcHVzX2ludCAgICAg
ICAgICAgIGRlY2lzaW9uRGVsYXksICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICBpbnQgICAgICAgICAgICAgICAgIGFyY2ggICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICk7CiAKIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rl
cl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtf
ZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtf
bnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAq
LwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAg
ICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICB4MTZbXSwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgIHB1bHNlc1td
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBRdWFudGl6ZWQgcHVs
c2Ugc2lnbmFsICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIFBy
ZWRDb2VmX1ExMlsgMiAqIE1BWF9MUENfT1JERVIgXSwgICAgICAgICAgLyogSSAgICBTaG9ydCB0
ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAg
ICAgIExUUENvZWZfUTE0WyBMVFBfT1JERVIgKiBNQVhfTkJfU1VCRlIgXSwgICAgLyogSSAgICBM
b25nIHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAg
ICAgICAgICAgIEFSMl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwg
LyogSSBOb2lzZSBzaGFwaW5nIGNvZWZzICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19p
bnQxNiAgICAgICAgICAgIEFSX1ExM1sgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRF
UiBdLCAvKiBJIE5vaXNlIHNoYXBpbmcgY29lZnMgICAgICAgICAgICAgICovCiAgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5fUTE0WyBNQVhfTkJfU1VCRlIgXSwg
ICAgICAgICAgLyogSSAgICBMb25nIHRlcm0gc2hhcGluZyBjb2VmcyAgICAgICAgICovCiAgICAg
Y29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIFRpbHRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBTcGVjdHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICov
CiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIExGX3NocF9RMTRbIE1BWF9OQl9TVUJG
UiBdLCAgICAgICAgICAgICAgICAgLyogSSAgICBMb3cgZnJlcXVlbmN5IHNoYXBpbmcgY29lZnMg
ICAgICovCkBAIC0xNTksNiArMTYxLDcgQEAgdm9pZCBzaWxrX05TUV9kZWxfZGVjX2MoCiAgICAg
ICAgIHBzREQtPlNlZWRJbml0ICAgICAgID0gcHNERC0+U2VlZDsKICAgICAgICAgcHNERC0+UkRf
UTEwICAgICAgICAgPSAwOwogICAgICAgICBwc0RELT5MRl9BUl9RMTQgICAgICA9IE5TUS0+c0xG
X0FSX3NocF9RMTQ7CisgICAgICAgIHBzREQtPkRpZmZfUTE0ICAgICAgID0gTlNRLT5zRGlmZl9z
aHBfUTE0OwogICAgICAgICBwc0RELT5TaGFwZV9RMTRbIDAgXSA9IE5TUS0+c0xUUF9zaHBfUTE0
WyBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoIC0gMSBdOwogICAgICAgICBzaWxrX21lbWNweSggcHNE
RC0+c0xQQ19RMTQsIE5TUS0+c0xQQ19RMTQsIE5TUV9MUENfQlVGX0xFTkdUSCAqIHNpemVvZigg
b3B1c19pbnQzMiApICk7CiAgICAgICAgIHNpbGtfbWVtY3B5KCBwc0RELT5zQVIyX1ExNCwgTlNR
LT5zQVIyX1ExNCwgc2l6ZW9mKCBOU1EtPnNBUjJfUTE0ICkgKTsKQEAgLTE4Niw4ICsxODksNyBA
QCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfYygKICAgICAgICAgTFNGX2ludGVycG9sYXRpb25fZmxh
ZyA9IDE7CiAgICAgfQogCi0gICAgQUxMT0MoIHNMVFBfUTE1LAotICAgICAgICAgICBwc0VuY0Mt
Pmx0cF9tZW1fbGVuZ3RoICsgcHNFbmNDLT5mcmFtZV9sZW5ndGgsIG9wdXNfaW50MzIgKTsKKyAg
ICBBTExPQyggc0xUUF9RMTUsIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKyBwc0VuY0MtPmZyYW1l
X2xlbmd0aCwgb3B1c19pbnQzMiApOwogICAgIEFMTE9DKCBzTFRQLCBwc0VuY0MtPmx0cF9tZW1f
bGVuZ3RoICsgcHNFbmNDLT5mcmFtZV9sZW5ndGgsIG9wdXNfaW50MTYgKTsKICAgICBBTExPQygg
eF9zY19RMTAsIHBzRW5jQy0+c3ViZnJfbGVuZ3RoLCBvcHVzX2ludDMyICk7CiAgICAgQUxMT0Mo
IGRlbGF5ZWRHYWluX1ExMCwgREVDSVNJT05fREVMQVksIG9wdXNfaW50MzIgKTsKQEAgLTE5OSw3
ICsyMDEsNyBAQCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfYygKICAgICBmb3IoIGsgPSAwOyBrIDwg
cHNFbmNDLT5uYl9zdWJmcjsgaysrICkgewogICAgICAgICBBX1ExMiAgICAgID0gJlByZWRDb2Vm
X1ExMlsgKCAoIGsgPj4gMSApIHwgKCAxIC0gTFNGX2ludGVycG9sYXRpb25fZmxhZyApICkgKiBN
QVhfTFBDX09SREVSIF07CiAgICAgICAgIEJfUTE0ICAgICAgPSAmTFRQQ29lZl9RMTRbIGsgKiBM
VFBfT1JERVIgICAgICAgICAgIF07Ci0gICAgICAgIEFSX3NocF9RMTMgPSAmQVIyX1ExM1sgICAg
IGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07CisgICAgICAgIEFSX3NocF9RMTMgPSAmQVJfUTEz
WyAgICAgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKIAogICAgICAgICAvKiBOb2lzZSBzaGFw
ZSBwYXJhbWV0ZXJzICovCiAgICAgICAgIHNpbGtfYXNzZXJ0KCBIYXJtU2hhcGVHYWluX1ExNFsg
ayBdID49IDAgKTsKQEAgLTIzNSw3ICsyMzcsOCBAQCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfYygK
ICAgICAgICAgICAgICAgICAgICAgcHNERCA9ICZwc0RlbERlY1sgV2lubmVyX2luZCBdOwogICAg
ICAgICAgICAgICAgICAgICBsYXN0X3NtcGxlX2lkeCA9IHNtcGxfYnVmX2lkeCArIGRlY2lzaW9u
RGVsYXk7CiAgICAgICAgICAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBkZWNpc2lvbkRlbGF5
OyBpKysgKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBsYXN0X3NtcGxlX2lkeCA9ICggbGFz
dF9zbXBsZV9pZHggLSAxICkgJiBERUNJU0lPTl9ERUxBWV9NQVNLOworICAgICAgICAgICAgICAg
ICAgICAgICAgbGFzdF9zbXBsZV9pZHggPSAoIGxhc3Rfc21wbGVfaWR4IC0gMSApICUgREVDSVNJ
T05fREVMQVk7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiggbGFzdF9zbXBsZV9pZHggPCAw
ICkgbGFzdF9zbXBsZV9pZHggKz0gREVDSVNJT05fREVMQVk7CiAgICAgICAgICAgICAgICAgICAg
ICAgICBwdWxzZXNbICAgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDgpc2lsa19SU0hJ
RlRfUk9VTkQoIHBzREQtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCBdLCAxMCApOwogICAgICAgICAg
ICAgICAgICAgICAgICAgcHhxWyBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50MTYpc2ls
a19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c2lsa19TTVVMV1coIHBzREQtPlhxX1ExNFsgbGFzdF9zbXBsZV9pZHggXSwgR2FpbnNfUTE2WyAx
IF0gKSwgMTQgKSApOwpAQCAtMjU3LDcgKzI2MCw3IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19j
KAogICAgICAgICAgICAgfQogICAgICAgICB9CiAKLSAgICAgICAgc2lsa19uc3FfZGVsX2RlY19z
Y2FsZV9zdGF0ZXMoIHBzRW5jQywgTlNRLCBwc0RlbERlYywgeF9RMywgeF9zY19RMTAsIHNMVFAs
IHNMVFBfUTE1LCBrLAorICAgICAgICBzaWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlcyggcHNF
bmNDLCBOU1EsIHBzRGVsRGVjLCB4MTYsIHhfc2NfUTEwLCBzTFRQLCBzTFRQX1ExNSwgaywKICAg
ICAgICAgICAgIHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbiwgTFRQX3NjYWxlX1ExNCwg
R2FpbnNfUTE2LCBwaXRjaEwsIHBzSW5kaWNlcy0+c2lnbmFsVHlwZSwgZGVjaXNpb25EZWxheSAp
OwogCiAgICAgICAgIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWMoIE5TUSwgcHNE
ZWxEZWMsIHBzSW5kaWNlcy0+c2lnbmFsVHlwZSwgeF9zY19RMTAsIHB1bHNlcywgcHhxLCBzTFRQ
X1ExNSwKQEAgLTI2NSw3ICsyNjgsNyBAQCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfYygKICAgICAg
ICAgICAgIEdhaW5zX1ExNlsgayBdLCBMYW1iZGFfUTEwLCBvZmZzZXRfUTEwLCBwc0VuY0MtPnN1
YmZyX2xlbmd0aCwgc3ViZnIrKywgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIsCiAgICAgICAgICAg
ICBwc0VuY0MtPnByZWRpY3RMUENPcmRlciwgcHNFbmNDLT53YXJwaW5nX1ExNiwgcHNFbmNDLT5u
U3RhdGVzRGVsYXllZERlY2lzaW9uLCAmc21wbF9idWZfaWR4LCBkZWNpc2lvbkRlbGF5LCBwc0Vu
Y0MtPmFyY2ggKTsKIAotICAgICAgICB4X1EzICAgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7Cisg
ICAgICAgIHgxNiAgICArPSBwc0VuY0MtPnN1YmZyX2xlbmd0aDsKICAgICAgICAgcHVsc2VzICs9
IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOwogICAgICAgICBweHEgICAgKz0gcHNFbmNDLT5zdWJmcl9s
ZW5ndGg7CiAgICAgfQpAQCAtMjg2LDcgKzI4OSw5IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19j
KAogICAgIGxhc3Rfc21wbGVfaWR4ID0gc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheTsKICAg
ICBHYWluX1ExMCA9IHNpbGtfUlNISUZUMzIoIEdhaW5zX1ExNlsgcHNFbmNDLT5uYl9zdWJmciAt
IDEgXSwgNiApOwogICAgIGZvciggaSA9IDA7IGkgPCBkZWNpc2lvbkRlbGF5OyBpKysgKSB7Ci0g
ICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAmIERFQ0lTSU9O
X0RFTEFZX01BU0s7CisgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAt
IDEgKSAlIERFQ0lTSU9OX0RFTEFZOworICAgICAgICBpZiggbGFzdF9zbXBsZV9pZHggPCAwICkg
bGFzdF9zbXBsZV9pZHggKz0gREVDSVNJT05fREVMQVk7CisKICAgICAgICAgcHVsc2VzWyAgIGkg
LSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQ4KXNpbGtfUlNISUZUX1JPVU5EKCBwc0RELT5R
X1ExMFsgbGFzdF9zbXBsZV9pZHggXSwgMTAgKTsKICAgICAgICAgcHhxWyBpIC0gZGVjaXNpb25E
ZWxheSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoCiAgICAg
ICAgICAgICBzaWxrX1NNVUxXVyggcHNERC0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCBdLCBHYWlu
X1ExMCApLCA4ICkgKTsKQEAgLTI5NywxMCArMzAyLDEwIEBAIHZvaWQgc2lsa19OU1FfZGVsX2Rl
Y19jKAogCiAgICAgLyogVXBkYXRlIHN0YXRlcyAqLwogICAgIE5TUS0+c0xGX0FSX3NocF9RMTQg
PSBwc0RELT5MRl9BUl9RMTQ7CisgICAgTlNRLT5zRGlmZl9zaHBfUTE0ICA9IHBzREQtPkRpZmZf
UTE0OwogICAgIE5TUS0+bGFnUHJldiAgICAgICAgPSBwaXRjaExbIHBzRW5jQy0+bmJfc3ViZnIg
LSAxIF07CiAKICAgICAvKiBTYXZlIHF1YW50aXplZCBzcGVlY2ggc2lnbmFsICovCi0gICAgLyog
REVCVUdfU1RPUkVfREFUQSggZW5jLnBjbSwgJk5TUS0+eHFbcHNFbmNDLT5sdHBfbWVtX2xlbmd0
aF0sIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKSAqLwogICAg
IHNpbGtfbWVtbW92ZSggTlNRLT54cSwgICAgICAgICAgICZOU1EtPnhxWyAgICAgICAgICAgcHNF
bmNDLT5mcmFtZV9sZW5ndGggXSwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAqIHNpemVvZiggb3B1
c19pbnQxNiApICk7CiAgICAgc2lsa19tZW1tb3ZlKCBOU1EtPnNMVFBfc2hwX1ExNCwgJk5TUS0+
c0xUUF9zaHBfUTE0WyBwc0VuY0MtPmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVu
Z3RoICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKICAgICBSRVNUT1JFX1NUQUNLOwpAQCAtMzM1
LDcgKzM0MCw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVh
bnRpemVyX2RlbF9kZWMoCiAgICAgb3B1c19pbnQgICAgICAgICAgICBwcmVkaWN0TFBDT3JkZXIs
ICAgICAgICAvKiBJICAgIFByZWRpY3Rpb24gZmlsdGVyIG9yZGVyICAgICAgICAgICAgICovCiAg
ICAgb3B1c19pbnQgICAgICAgICAgICB3YXJwaW5nX1ExNiwgICAgICAgICAgICAvKiBJICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAg
ICAgICBuU3RhdGVzRGVsYXllZERlY2lzaW9uLCAvKiBJICAgIE51bWJlciBvZiBzdGF0ZXMgaW4g
ZGVjaXNpb24gdHJlZSAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9idWZfaWR4
LCAgICAgICAgICAvKiBJICAgIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZlcnMgICov
CisgICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9idWZfaWR4LCAgICAgICAgICAvKiBJL08g
IEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZlcnMgICovCiAgICAgb3B1c19pbnQgICAg
ICAgICAgICBkZWNpc2lvbkRlbGF5LCAgICAgICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgaW50ICAgICAgICAgICAgICAgICBhcmNoICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiApCkBAIC0zODksNyArMzk0LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19u
b2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlYygKICAgICAgICAgLyogTG9uZy10ZXJtIHNoYXBp
bmcgKi8KICAgICAgICAgaWYoIGxhZyA+IDAgKSB7CiAgICAgICAgICAgICAvKiBTeW1tZXRyaWMs
IHBhY2tlZCBGSVIgY29lZmZpY2llbnRzICovCi0gICAgICAgICAgICBuX0xUUF9RMTQgPSBzaWxr
X1NNVUxXQiggc2lsa19BREQzMiggc2hwX2xhZ19wdHJbIDAgXSwgc2hwX2xhZ19wdHJbIC0yIF0g
KSwgSGFybVNoYXBlRklSUGFja2VkX1ExNCApOworICAgICAgICAgICAgbl9MVFBfUTE0ID0gc2ls
a19TTVVMV0IoIHNpbGtfQUREX1NBVDMyKCBzaHBfbGFnX3B0clsgMCBdLCBzaHBfbGFnX3B0clsg
LTIgXSApLCBIYXJtU2hhcGVGSVJQYWNrZWRfUTE0ICk7CiAgICAgICAgICAgICBuX0xUUF9RMTQg
PSBzaWxrX1NNTEFXVCggbl9MVFBfUTE0LCBzaHBfbGFnX3B0clsgLTEgXSwgICAgICAgICAgICAg
ICAgICAgICAgSGFybVNoYXBlRklSUGFja2VkX1ExNCApOwogICAgICAgICAgICAgbl9MVFBfUTE0
ID0gc2lsa19TVUJfTFNISUZUMzIoIExUUF9wcmVkX1ExNCwgbl9MVFBfUTE0LCAyICk7ICAgICAg
ICAgICAgLyogUTEyIC0+IFExNCAqLwogICAgICAgICAgICAgc2hwX2xhZ19wdHIrKzsKQEAgLTQx
Niw3ICs0MjEsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1
YW50aXplcl9kZWxfZGVjKAogICAgICAgICAgICAgLyogTm9pc2Ugc2hhcGUgZmVlZGJhY2sgKi8K
ICAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCAoIHNoYXBpbmdMUENPcmRlciAmIDEgKSA9PSAwICk7
ICAgLyogY2hlY2sgdGhhdCBvcmRlciBpcyBldmVuICovCiAgICAgICAgICAgICAvKiBPdXRwdXQg
b2YgbG93cGFzcyBzZWN0aW9uICovCi0gICAgICAgICAgICB0bXAyID0gc2lsa19TTUxBV0IoIHBz
TFBDX1ExNFsgMCBdLCBwc0RELT5zQVIyX1ExNFsgMCBdLCB3YXJwaW5nX1ExNiApOworICAgICAg
ICAgICAgdG1wMiA9IHNpbGtfU01MQVdCKCBwc0RELT5EaWZmX1ExNCwgcHNERC0+c0FSMl9RMTRb
IDAgXSwgd2FycGluZ19RMTYgKTsKICAgICAgICAgICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNl
Y3Rpb24gKi8KICAgICAgICAgICAgIHRtcDEgPSBzaWxrX1NNTEFXQiggcHNERC0+c0FSMl9RMTRb
IDAgXSwgcHNERC0+c0FSMl9RMTRbIDEgXSAtIHRtcDIsIHdhcnBpbmdfUTE2ICk7CiAgICAgICAg
ICAgICBwc0RELT5zQVIyX1ExNFsgMCBdID0gdG1wMjsKQEAgLTQ2Miw2ICs0NjcsMTkgQEAgc3Rh
dGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlYygK
ICAgICAgICAgICAgIC8qIEZpbmQgdHdvIHF1YW50aXphdGlvbiBsZXZlbCBjYW5kaWRhdGVzIGFu
ZCBtZWFzdXJlIHRoZWlyIHJhdGUtZGlzdG9ydGlvbiAqLwogICAgICAgICAgICAgcTFfUTEwID0g
c2lsa19TVUIzMiggcl9RMTAsIG9mZnNldF9RMTAgKTsKICAgICAgICAgICAgIHExX1EwID0gc2ls
a19SU0hJRlQoIHExX1ExMCwgMTAgKTsKKyAgICAgICAgICAgIGlmIChMYW1iZGFfUTEwID4gMjA0
OCkgeworICAgICAgICAgICAgICAgIC8qIEZvciBhZ2dyZXNzaXZlIFJETywgdGhlIGJpYXMgYmVj
b21lcyBtb3JlIHRoYW4gb25lIHB1bHNlLiAqLworICAgICAgICAgICAgICAgIGludCByZG9fb2Zm
c2V0ID0gTGFtYmRhX1ExMC8yIC0gNTEyOworICAgICAgICAgICAgICAgIGlmIChxMV9RMTAgPiBy
ZG9fb2Zmc2V0KSB7CisgICAgICAgICAgICAgICAgICAgIHExX1EwID0gc2lsa19SU0hJRlQoIHEx
X1ExMCAtIHJkb19vZmZzZXQsIDEwICk7CisgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChxMV9R
MTAgPCAtcmRvX29mZnNldCkgeworICAgICAgICAgICAgICAgICAgICBxMV9RMCA9IHNpbGtfUlNI
SUZUKCBxMV9RMTAgKyByZG9fb2Zmc2V0LCAxMCApOworICAgICAgICAgICAgICAgIH0gZWxzZSBp
ZiAocTFfUTEwIDwgMCkgeworICAgICAgICAgICAgICAgICAgICBxMV9RMCA9IC0xOworICAgICAg
ICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIHExX1EwID0gMDsKKyAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiggcTFfUTAgPiAwICkg
ewogICAgICAgICAgICAgICAgIHExX1ExMCAgPSBzaWxrX1NVQjMyKCBzaWxrX0xTSElGVCggcTFf
UTAsIDEwICksIFFVQU5UX0xFVkVMX0FESlVTVF9RMTAgKTsKICAgICAgICAgICAgICAgICBxMV9R
MTAgID0gc2lsa19BREQzMiggcTFfUTEwLCBvZmZzZXRfUTEwICk7CkBAIC01MTUsNyArNTMzLDgg
QEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVs
X2RlYygKICAgICAgICAgICAgIHhxX1ExNCAgICAgID0gc2lsa19BREQzMiggTFBDX2V4Y19RMTQs
IExQQ19wcmVkX1ExNCApOwogCiAgICAgICAgICAgICAvKiBVcGRhdGUgc3RhdGVzICovCi0gICAg
ICAgICAgICBzTEZfQVJfc2hwX1ExNCAgICAgICAgID0gc2lsa19TVUIzMiggeHFfUTE0LCBuX0FS
X1ExNCApOworICAgICAgICAgICAgcHNTU1sgMCBdLkRpZmZfUTE0ICAgICA9IHNpbGtfU1VCX0xT
SElGVDMyKCB4cV9RMTQsIHhfUTEwWyBpIF0sIDQgKTsKKyAgICAgICAgICAgIHNMRl9BUl9zaHBf
UTE0ICAgICAgICAgPSBzaWxrX1NVQjMyKCBwc1NTWyAwIF0uRGlmZl9RMTQsIG5fQVJfUTE0ICk7
CiAgICAgICAgICAgICBwc1NTWyAwIF0uc0xUUF9zaHBfUTE0ID0gc2lsa19TVUIzMiggc0xGX0FS
X3NocF9RMTQsIG5fTEZfUTE0ICk7CiAgICAgICAgICAgICBwc1NTWyAwIF0uTEZfQVJfUTE0ICAg
ID0gc0xGX0FSX3NocF9RMTQ7CiAgICAgICAgICAgICBwc1NTWyAwIF0uTFBDX2V4Y19RMTQgID0g
TFBDX2V4Y19RMTQ7CkBAIC01MjksMjEgKzU0OCwyMiBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9p
ZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgICAgICAgICAgICAgIGV4
Y19RMTQgPSAtZXhjX1ExNDsKICAgICAgICAgICAgIH0KIAotCiAgICAgICAgICAgICAvKiBBZGQg
cHJlZGljdGlvbnMgKi8KICAgICAgICAgICAgIExQQ19leGNfUTE0ID0gc2lsa19BREQzMiggZXhj
X1ExNCwgTFRQX3ByZWRfUTE0ICk7CiAgICAgICAgICAgICB4cV9RMTQgICAgICA9IHNpbGtfQURE
MzIoIExQQ19leGNfUTE0LCBMUENfcHJlZF9RMTQgKTsKIAogICAgICAgICAgICAgLyogVXBkYXRl
IHN0YXRlcyAqLwotICAgICAgICAgICAgc0xGX0FSX3NocF9RMTQgICAgICAgICA9IHNpbGtfU1VC
MzIoIHhxX1ExNCwgbl9BUl9RMTQgKTsKKyAgICAgICAgICAgIHBzU1NbIDEgXS5EaWZmX1ExNCAg
ICAgPSBzaWxrX1NVQl9MU0hJRlQzMiggeHFfUTE0LCB4X1ExMFsgaSBdLCA0ICk7CisgICAgICAg
ICAgICBzTEZfQVJfc2hwX1ExNCAgICAgICAgID0gc2lsa19TVUIzMiggcHNTU1sgMSBdLkRpZmZf
UTE0LCBuX0FSX1ExNCApOwogICAgICAgICAgICAgcHNTU1sgMSBdLnNMVFBfc2hwX1ExNCA9IHNp
bGtfU1VCMzIoIHNMRl9BUl9zaHBfUTE0LCBuX0xGX1ExNCApOwogICAgICAgICAgICAgcHNTU1sg
MSBdLkxGX0FSX1ExNCAgICA9IHNMRl9BUl9zaHBfUTE0OwogICAgICAgICAgICAgcHNTU1sgMSBd
LkxQQ19leGNfUTE0ICA9IExQQ19leGNfUTE0OwogICAgICAgICAgICAgcHNTU1sgMSBdLnhxX1Ex
NCAgICAgICA9IHhxX1ExNDsKICAgICAgICAgfQogCi0gICAgICAgICpzbXBsX2J1Zl9pZHggID0g
KCAqc21wbF9idWZfaWR4IC0gMSApICYgREVDSVNJT05fREVMQVlfTUFTSzsgICAgICAgICAgICAg
ICAgICAgLyogSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgICAgICAgICAgICAgICovCi0gICAgICAg
IGxhc3Rfc21wbGVfaWR4ID0gKCAqc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheSApICYgREVD
SVNJT05fREVMQVlfTUFTSzsgICAgICAgLyogSW5kZXggdG8gZGVjaXNpb25EZWxheSBvbGQgc2Ft
cGxlcyAgICovCisgICAgICAgICpzbXBsX2J1Zl9pZHggID0gKCAqc21wbF9idWZfaWR4IC0gMSAp
ICUgREVDSVNJT05fREVMQVk7CisgICAgICAgIGlmKCAqc21wbF9idWZfaWR4IDwgMCApICpzbXBs
X2J1Zl9pZHggKz0gREVDSVNJT05fREVMQVk7CisgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCAq
c21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheSApICUgREVDSVNJT05fREVMQVk7CiAKICAgICAg
ICAgLyogRmluZCB3aW5uZXIgKi8KICAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0ZVsg
MCBdWyAwIF0uUkRfUTEwOwpAQCAtNjA3LDYgKzYyNyw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2
b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWMoCiAgICAgICAgICAgICBwc0RE
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gJnBzRGVsRGVjWyBrIF07CiAg
ICAgICAgICAgICBwc1NTICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gJnBz
U2FtcGxlU3RhdGVbIGsgXVsgMCBdOwogICAgICAgICAgICAgcHNERC0+TEZfQVJfUTE0ICAgICAg
ICAgICAgICAgICAgICAgICAgICA9IHBzU1MtPkxGX0FSX1ExNDsKKyAgICAgICAgICAgIHBzREQt
PkRpZmZfUTE0ICAgICAgICAgICAgICAgICAgICAgICAgICAgPSBwc1NTLT5EaWZmX1ExNDsKICAg
ICAgICAgICAgIHBzREQtPnNMUENfUTE0WyBOU1FfTFBDX0JVRl9MRU5HVEggKyBpIF0gPSBwc1NT
LT54cV9RMTQ7CiAgICAgICAgICAgICBwc0RELT5YcV9RMTRbICAgICpzbXBsX2J1Zl9pZHggXSAg
ICAgICAgID0gcHNTUy0+eHFfUTE0OwogICAgICAgICAgICAgcHNERC0+UV9RMTBbICAgICAqc21w
bF9idWZfaWR4IF0gICAgICAgICA9IHBzU1MtPlFfUTEwOwpAQCAtNjMxLDcgKzY1Miw3IEBAIHN0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVfc3RhdGVzKAogICAg
IGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbmNDLCAgICAgICAgICAgICAgIC8qIEkgICAg
RW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX25zcV9zdGF0
ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0ZSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgTlNRX2RlbF9kZWNfc3RydWN0ICBwc0RlbERl
Y1tdLCAgICAgICAgICAgICAgICAgLyogSS9PICBEZWxheWVkIGRlY2lzaW9uIHN0YXRlcyAgICAg
ICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgeF9RM1tdLCAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgSW5wdXQgaW4gUTMgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludDE2ICAgIHgxNltdLCAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IElucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAg
ICAgICAgICB4X3NjX1ExMFtdLCAgICAgICAgICAgICAgICAgLyogTyAgICBJbnB1dCBzY2FsZWQg
d2l0aCAxL0dhaW4gaW4gUTEwICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgc0xUUFtd
LCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUmUtd2hpdGVuZWQgTFRQIHN0YXRlIGluIFEw
ICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgIHNMVFBfUTE1W10sICAgICAgICAg
ICAgICAgICAvKiBPICAgIExUUCBzdGF0ZSBtYXRjaGluZyBzY2FsZWQgaW5wdXQgICAgICovCkBA
IC02NDUsMjkgKzY2NiwxOSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9kZWxf
ZGVjX3NjYWxlX3N0YXRlcygKICkKIHsKICAgICBvcHVzX2ludCAgICAgICAgICAgIGksIGssIGxh
ZzsKLSAgICBvcHVzX2ludDMyICAgICAgICAgIGdhaW5fYWRqX1ExNiwgaW52X2dhaW5fUTMxLCBp
bnZfZ2Fpbl9RMjM7CisgICAgb3B1c19pbnQzMiAgICAgICAgICBnYWluX2Fkal9RMTYsIGludl9n
YWluX1EzMSwgaW52X2dhaW5fUTI2OwogICAgIE5TUV9kZWxfZGVjX3N0cnVjdCAgKnBzREQ7CiAK
ICAgICBsYWcgICAgICAgICAgPSBwaXRjaExbIHN1YmZyIF07CiAgICAgaW52X2dhaW5fUTMxID0g
c2lsa19JTlZFUlNFMzJfdmFyUSggc2lsa19tYXgoIEdhaW5zX1ExNlsgc3ViZnIgXSwgMSApLCA0
NyApOwogICAgIHNpbGtfYXNzZXJ0KCBpbnZfZ2Fpbl9RMzEgIT0gMCApOwogCi0gICAgLyogQ2Fs
Y3VsYXRlIGdhaW4gYWRqdXN0bWVudCBmYWN0b3IgKi8KLSAgICBpZiggR2FpbnNfUTE2WyBzdWJm
ciBdICE9IE5TUS0+cHJldl9nYWluX1ExNiApIHsKLSAgICAgICAgZ2Fpbl9hZGpfUTE2ID0gIHNp
bGtfRElWMzJfdmFyUSggTlNRLT5wcmV2X2dhaW5fUTE2LCBHYWluc19RMTZbIHN1YmZyIF0sIDE2
ICk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgZ2Fpbl9hZGpfUTE2ID0gKG9wdXNfaW50MzIpMSA8
PCAxNjsKLSAgICB9Ci0KICAgICAvKiBTY2FsZSBpbnB1dCAqLwotICAgIGludl9nYWluX1EyMyA9
IHNpbGtfUlNISUZUX1JPVU5EKCBpbnZfZ2Fpbl9RMzEsIDggKTsKKyAgICBpbnZfZ2Fpbl9RMjYg
PSBzaWxrX1JTSElGVF9ST1VORCggaW52X2dhaW5fUTMxLCA1ICk7CiAgICAgZm9yKCBpID0gMDsg
aSA8IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOyBpKysgKSB7Ci0gICAgICAgIHhfc2NfUTEwWyBpIF0g
PSBzaWxrX1NNVUxXVyggeF9RM1sgaSBdLCBpbnZfZ2Fpbl9RMjMgKTsKKyAgICAgICAgeF9zY19R
MTBbIGkgXSA9IHNpbGtfU01VTFdXKCB4MTZbIGkgXSwgaW52X2dhaW5fUTI2ICk7CiAgICAgfQog
Ci0gICAgLyogU2F2ZSBpbnZlcnNlIGdhaW4gKi8KLSAgICBOU1EtPnByZXZfZ2Fpbl9RMTYgPSBH
YWluc19RMTZbIHN1YmZyIF07Ci0KICAgICAvKiBBZnRlciByZXdoaXRlbmluZyB0aGUgTFRQIHN0
YXRlIGlzIHVuLXNjYWxlZCwgc28gc2NhbGUgd2l0aCBpbnZfZ2Fpbl9RMTYgKi8KICAgICBpZigg
TlNRLT5yZXdoaXRlX2ZsYWcgKSB7CiAgICAgICAgIGlmKCBzdWJmciA9PSAwICkgewpAQCAtNjgx
LDcgKzY5Miw5IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2Nh
bGVfc3RhdGVzKAogICAgIH0KIAogICAgIC8qIEFkanVzdCBmb3IgY2hhbmdpbmcgZ2FpbiAqLwot
ICAgIGlmKCBnYWluX2Fkal9RMTYgIT0gKG9wdXNfaW50MzIpMSA8PCAxNiApIHsKKyAgICBpZigg
R2FpbnNfUTE2WyBzdWJmciBdICE9IE5TUS0+cHJldl9nYWluX1ExNiApIHsKKyAgICAgICAgZ2Fp
bl9hZGpfUTE2ID0gIHNpbGtfRElWMzJfdmFyUSggTlNRLT5wcmV2X2dhaW5fUTE2LCBHYWluc19R
MTZbIHN1YmZyIF0sIDE2ICk7CisKICAgICAgICAgLyogU2NhbGUgbG9uZy10ZXJtIHNoYXBpbmcg
c3RhdGUgKi8KICAgICAgICAgZm9yKCBpID0gTlNRLT5zTFRQX3NocF9idWZfaWR4IC0gcHNFbmND
LT5sdHBfbWVtX2xlbmd0aDsgaSA8IE5TUS0+c0xUUF9zaHBfYnVmX2lkeDsgaSsrICkgewogICAg
ICAgICAgICAgTlNRLT5zTFRQX3NocF9RMTRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9R
MTYsIE5TUS0+c0xUUF9zaHBfUTE0WyBpIF0gKTsKQEAgLTY5OSw2ICs3MTIsNyBAQCBzdGF0aWMg
T1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlcygKIAogICAgICAg
ICAgICAgLyogU2NhbGUgc2NhbGFyIHN0YXRlcyAqLwogICAgICAgICAgICAgcHNERC0+TEZfQVJf
UTE0ID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgcHNERC0+TEZfQVJfUTE0ICk7CisgICAg
ICAgICAgICBwc0RELT5EaWZmX1ExNCA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIHBzREQt
PkRpZmZfUTE0ICk7CiAKICAgICAgICAgICAgIC8qIFNjYWxlIHNob3J0LXRlcm0gcHJlZGljdGlv
biBhbmQgc2hhcGluZyBzdGF0ZXMgKi8KICAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBOU1Ff
TFBDX0JVRl9MRU5HVEg7IGkrKyApIHsKQEAgLTcxMiw1ICs3MjYsOCBAQCBzdGF0aWMgT1BVU19J
TkxJTkUgdm9pZCBzaWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlcygKICAgICAgICAgICAgICAg
ICBwc0RELT5TaGFwZV9RMTRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIHBzREQt
PlNoYXBlX1ExNFsgaSBdICk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KKworICAgICAgICAv
KiBTYXZlIGludmVyc2UgZ2FpbiAqLworICAgICAgICBOU1EtPnByZXZfZ2Fpbl9RMTYgPSBHYWlu
c19RMTZbIHN1YmZyIF07CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1BMQy5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1BM
Qy5jCmluZGV4IGZiNmVhODg3YjdlZTI1NGIxYjg1OGE2YTUyYmM1ODQ1ZTBkNTczOGQuLmEzZTU1
ZWE3NjVlZjRmNGIwNzE5MDE1NTVkMzNkMDNjMDYzM2VhZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9QTEMu
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvUExDLmMKQEAgLTI3NSw3ICsyNzUsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUg
dm9pZCBzaWxrX1BMQ19jb25jZWFsKAogICAgICAgICAgICAgLyogUmVkdWNlIHJhbmRvbSBub2lz
ZSBmb3IgdW52b2ljZWQgZnJhbWVzIHdpdGggaGlnaCBMUEMgZ2FpbiAqLwogICAgICAgICAgICAg
b3B1c19pbnQzMiBpbnZHYWluX1EzMCwgZG93bl9zY2FsZV9RMzA7CiAKLSAgICAgICAgICAgIGlu
dkdhaW5fUTMwID0gc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4oIHBzUExDLT5wcmV2TFBDX1Ex
MiwgcHNEZWMtPkxQQ19vcmRlciApOworICAgICAgICAgICAgaW52R2Fpbl9RMzAgPSBzaWxrX0xQ
Q19pbnZlcnNlX3ByZWRfZ2FpbiggcHNQTEMtPnByZXZMUENfUTEyLCBwc0RlYy0+TFBDX29yZGVy
LCBhcmNoICk7CiAKICAgICAgICAgICAgIGRvd25fc2NhbGVfUTMwID0gc2lsa19taW5fMzIoIHNp
bGtfUlNISUZUKCAob3B1c19pbnQzMikxIDw8IDMwLCBMT0cyX0lOVl9MUENfR0FJTl9ISUdIX1RI
UkVTICksIGludkdhaW5fUTMwICk7CiAgICAgICAgICAgICBkb3duX3NjYWxlX1EzMCA9IHNpbGtf
bWF4XzMyKCBzaWxrX1JTSElGVCggKG9wdXNfaW50MzIpMSA8PCAzMCwgTE9HMl9JTlZfTFBDX0dB
SU5fTE9XX1RIUkVTICksIGRvd25fc2NhbGVfUTMwICk7CkBAIC0zMjgsOCArMzI4LDEwIEBAIHN0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfUExDX2NvbmNlYWwoCiAgICAgICAgIGZvciggaiA9
IDA7IGogPCBMVFBfT1JERVI7IGorKyApIHsKICAgICAgICAgICAgIEJfUTE0WyBqIF0gPSBzaWxr
X1JTSElGVCggc2lsa19TTVVMQkIoIGhhcm1fR2Fpbl9RMTUsIEJfUTE0WyBqIF0gKSwgMTUgKTsK
ICAgICAgICAgfQotICAgICAgICAvKiBHcmFkdWFsbHkgcmVkdWNlIGV4Y2l0YXRpb24gZ2FpbiAq
LwotICAgICAgICByYW5kX3NjYWxlX1ExNCA9IHNpbGtfUlNISUZUKCBzaWxrX1NNVUxCQiggcmFu
ZF9zY2FsZV9RMTQsIHJhbmRfR2Fpbl9RMTUgKSwgMTUgKTsKKyAgICAgICAgaWYgKCBwc0RlYy0+
aW5kaWNlcy5zaWduYWxUeXBlICE9IFRZUEVfTk9fVk9JQ0VfQUNUSVZJVFkgKSB7CisgICAgICAg
ICAgICAvKiBHcmFkdWFsbHkgcmVkdWNlIGV4Y2l0YXRpb24gZ2FpbiAqLworICAgICAgICAgICAg
cmFuZF9zY2FsZV9RMTQgPSBzaWxrX1JTSElGVCggc2lsa19TTVVMQkIoIHJhbmRfc2NhbGVfUTE0
LCByYW5kX0dhaW5fUTE1ICksIDE1ICk7CisgICAgICAgIH0KIAogICAgICAgICAvKiBTbG93bHkg
aW5jcmVhc2UgcGl0Y2ggbGFnICovCiAgICAgICAgIHBzUExDLT5waXRjaExfUTggPSBzaWxrX1NN
TEFXQiggcHNQTEMtPnBpdGNoTF9ROCwgcHNQTEMtPnBpdGNoTF9ROCwgUElUQ0hfRFJJRlRfRkFD
X1ExNiApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1NpZ1Byb2NfRklYLmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvU2lnUHJvY19GSVgu
aAppbmRleCBiNjMyOTk0NDFlOTMwYTM4NWU5N2VmOWMxM2Q1NzU1Y2MwZjljNDEzLi5mOWFlMzI2
MzI2ZDMxYTgxY2RmOWM0ZmYyYmI1YWE4MjdhNGViYWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvU2lnUHJv
Y19GSVguaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvU2lnUHJvY19GSVguaApAQCAtMzUsNyArMzUsNyBAQCBleHRlcm4g
IkMiCiAKIC8qI2RlZmluZSBzaWxrX01BQ1JPX0NPVU5UICovICAgICAgICAgIC8qIFVzZWQgdG8g
ZW5hYmxlIFdNT1BTIGNvdW50aW5nICovCiAKLSNkZWZpbmUgU0lMS19NQVhfT1JERVJfTFBDICAg
ICAgICAgICAgMTYgICAgICAgICAgICAvKiBtYXggb3JkZXIgb2YgdGhlIExQQyBhbmFseXNpcyBp
biBzY2h1cigpIGFuZCBrMmEoKSAqLworI2RlZmluZSBTSUxLX01BWF9PUkRFUl9MUEMgICAgICAg
ICAgICAyNCAgICAgICAgICAgIC8qIG1heCBvcmRlciBvZiB0aGUgTFBDIGFuYWx5c2lzIGluIHNj
aHVyKCkgYW5kIGsyYSgpICovCiAKICNpbmNsdWRlIDxzdHJpbmcuaD4gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBmb3IgbWVtc2V0KCksIG1lbWNweSgpLCBtZW1tb3ZlKCkgKi8K
ICNpbmNsdWRlICJ0eXBlZGVmLmgiCkBAIC00Nyw2ICs0NywxMSBAQCBleHRlcm4gIkMiCiAjaW5j
bHVkZSAieDg2L1NpZ1Byb2NfRklYX3NzZS5oIgogI2VuZGlmCiAKKyNpZiAoZGVmaW5lZChPUFVT
X0FSTV9BU00pIHx8IGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSkKKyNpbmNs
dWRlICJhcm0vYmlxdWFkX2FsdF9hcm0uaCIKKyNpbmNsdWRlICJhcm0vTFBDX2ludl9wcmVkX2dh
aW5fYXJtLmgiCisjZW5kaWYKKwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogLyogICAgICAgICAgICAgICAgICAg
IFNJR05BTCBQUk9DRVNTSU5HIEZVTkNUSU9OUyAgICAgICAgICAgICAgICAgICAqLwogLyoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwpAQCAtOTYsMTQgKzEwMSwyMiBAQCB2b2lkIHNpbGtfcmVzYW1wbGVyX2Rvd24yXzMo
CiAgKiBzbG93ZXIgdGhhbiBiaXF1YWQoKSBidXQgdXNlcyBtb3JlIHByZWNpc2UgY29lZmZpY2ll
bnRzCiAgKiBjYW4gaGFuZGxlIChzbG93bHkpIHZhcnlpbmcgY29lZmZpY2llbnRzCiAgKi8KLXZv
aWQgc2lsa19iaXF1YWRfYWx0KAordm9pZCBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMSgKICAgICBj
b25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmluLCAgICAgICAgICAgICAgICAvKiBJICAgICBp
bnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpCX1EyOCwgICAgICAgICAgICAg
LyogSSAgICAgTUEgY29lZmZpY2llbnRzIFszXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAg
ICAgICAgICAgIC8qIEkgICAgIEFSIGNvZWZmaWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAg
KlMsICAgICAgICAgICAgICAgICAvKiBJL08gICBTdGF0ZSB2ZWN0b3IgWzJdICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQxNiAgICAgICAg
ICAgICAgICAgICpvdXQsICAgICAgICAgICAgICAgLyogTyAgICAgb3V0cHV0IHNpZ25hbCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICBsZW4sICAgICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBs
ZW5ndGggKG11c3QgYmUgZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgc3RyaWRlICAgICAgICAgICAgICAvKiBJICAg
ICBPcGVyYXRlIG9uIGludGVybGVhdmVkIHNpZ25hbCBpZiA+IDEgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxlbiAgICAgICAgICAgICAg
ICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworKTsKKwordm9pZCBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9jKAor
ICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqaW4sICAgICAgICAgICAgICAgIC8qIEkg
ICAgIGlucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKkJfUTI4LCAgICAgICAg
ICAgICAvKiBJICAgICBNQSBjb2VmZmljaWVudHMgWzNdICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpBX1Ey
OCwgICAgICAgICAgICAgLyogSSAgICAgQVIgY29lZmZpY2llbnRzIFsyXSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAg
ICAgICAqUywgICAgICAgICAgICAgICAgIC8qIEkvTyAgIFN0YXRlIHZlY3RvciBbNF0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDE2ICAg
ICAgICAgICAgICAgICAgKm91dCwgICAgICAgICAgICAgICAvKiBPICAgICBvdXRwdXQgc2lnbmFs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29u
c3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxlbiAgICAgICAgICAgICAgICAgLyogSSAgICAgc2ln
bmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwogKTsKIAogLyogVmFyaWFibGUgb3JkZXIgTUEgcHJlZGljdGlvbiBlcnJvciBmaWx0ZXIuICov
CkBAIC0xMzIsMTcgKzE0NSwxMSBAQCB2b2lkIHNpbGtfYndleHBhbmRlcl8zMigKIAogLyogQ29t
cHV0ZSBpbnZlcnNlIG9mIExQQyBwcmVkaWN0aW9uIGdhaW4sIGFuZCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAvKiB0ZXN0IGlmIExQQyBjb2VmZmljaWVudHMgYXJlIHN0YWJsZSAoYWxs
IHBvbGVzIHdpdGhpbiB1bml0IGNpcmNsZSkgICAgKi8KLW9wdXNfaW50MzIgc2lsa19MUENfaW52
ZXJzZV9wcmVkX2dhaW4oICAgICAgICAgICAgICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRp
Y3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgICAgICovCitvcHVzX2ludDMyIHNp
bGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2MoICAgICAgICAgICAgLyogTyAgIFJldHVybnMgaW52
ZXJzZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAgICAgICAqLwogICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqQV9RMTIsICAgICAgICAgICAgIC8qIEkgICBQ
cmVkaWN0aW9uIGNvZWZmaWNpZW50cywgUTEyIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAg
ICAvKiBJICAgUHJlZGljdGlvbiBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCiApOwogCi0vKiBGb3IgaW5wdXQgaW4gUTI0IGRvbWFpbiAqLwotb3B1
c19pbnQzMiBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoICAgICAgICAgIC8qIE8gICAg
UmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAg
ICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKkFfUTI0LCAgICAgICAgICAg
ICAvKiBJICAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRzIFtvcmRlcl0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG9yZGVyICAg
ICAgICAgICAgICAgLyogSSAgICBQcmVkaWN0aW9uIG9yZGVyICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsKLQogLyogU3BsaXQgc2lnbmFsIGluIHR3byBk
ZWNpbWF0ZWQgYmFuZHMgdXNpbmcgZmlyc3Qtb3JkZXIgYWxscGFzcyBmaWx0ZXJzICovCiB2b2lk
IHNpbGtfYW5hX2ZpbHRfYmFua18xKAogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAq
aW4sICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgc2lnbmFsIFtOXSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KQEAgLTE1Miw2ICsxNTksMTQgQEAgdm9p
ZCBzaWxrX2FuYV9maWx0X2JhbmtfMSgKICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAg
TiAgICAgICAgICAgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBpbnB1dCBzYW1wbGVzICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCisjaWYgIWRlZmluZWQoT1ZF
UlJJREVfc2lsa19iaXF1YWRfYWx0X3N0cmlkZTIpCisjZGVmaW5lIHNpbGtfYmlxdWFkX2FsdF9z
dHJpZGUyKGluLCBCX1EyOCwgQV9RMjgsIFMsIG91dCwgbGVuLCBhcmNoKSAoKHZvaWQpKGFyY2gp
LCBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9jKGluLCBCX1EyOCwgQV9RMjgsIFMsIG91dCwgbGVu
KSkKKyNlbmRpZgorCisjaWYgIWRlZmluZWQoT1ZFUlJJREVfc2lsa19MUENfaW52ZXJzZV9wcmVk
X2dhaW4pCisjZGVmaW5lIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKEFfUTEyLCBvcmRlciwg
YXJjaCkgICAgICgodm9pZCkoYXJjaCksIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2MoQV9R
MTIsIG9yZGVyKSkKKyNlbmRpZgorCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAvKiAgICAgICAgICAgICAgICAg
ICAgICAgIFNDQUxBUiBGVU5DVElPTlMgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKiovCkBAIC0yNzEsNyArMjg2LDE3IEBAIHZvaWQgc2lsa19BMk5MU0YoCiB2b2lkIHNp
bGtfTkxTRjJBKAogICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqYV9RMTIsICAgICAg
ICAgICAgIC8qIE8gICAgbW9uaWMgd2hpdGVuaW5nIGZpbHRlciBjb2VmZmljaWVudHMgaW4gUTEy
LCAgWyBkIF0gICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKk5M
U0YsICAgICAgICAgICAgICAvKiBJICAgIG5vcm1hbGl6ZWQgbGluZSBzcGVjdHJhbCBmcmVxdWVu
Y2llcyBpbiBRMTUsIFsgZCBdICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAg
ICAgICAgIGQgICAgICAgICAgICAgICAgICAgLyogSSAgICBmaWx0ZXIgb3JkZXIgKHNob3VsZCBi
ZSBldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICBkLCAgICAgICAgICAgICAgICAgIC8qIEkgICAgZmlsdGVyIG9yZGVy
IChzaG91bGQgYmUgZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBp
bnQgICAgICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAvKiBJICAgIFJ1
bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCispOworCisvKiBDb252ZXJ0IGludDMyIGNvZWZmaWNpZW50cyB0byBpbnQxNiBjb2VmcyBh
bmQgbWFrZSBzdXJlIHRoZXJlJ3Mgbm8gd3JhcC1hcm91bmQgKi8KK3ZvaWQgc2lsa19MUENfZml0
KAorICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqYV9RT1VULCAgICAgICAgICAgIC8q
IE8gICAgT3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKmFfUUlOLCAgICAg
ICAgICAgICAvKiBJL08gIElucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIFFP
VVQsICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBRIGRvbWFpbiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICBRSU4sICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgUSBkb21haW4gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVz
X2ludCAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRl
ciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwog
CiB2b2lkIHNpbGtfaW5zZXJ0aW9uX3NvcnRfaW5jcmVhc2luZygKQEAgLTQ3MSw4ICs0OTYsNyBA
QCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX1JPUjMyKCBvcHVzX2ludDMyIGEz
Miwgb3B1c19pbnQgcm90ICkKIC8qIEFkZCB3aXRoIHNhdHVyYXRpb24gZm9yIHBvc2l0aXZlIGlu
cHV0IHZhbHVlcyAqLwogI2RlZmluZSBzaWxrX0FERF9QT1NfU0FUOChhLCBiKSAgICAgICAgICAg
ICAoKCgoYSkrKGIpKSAmIDB4ODApICAgICAgICAgICAgICAgICA/IHNpbGtfaW50OF9NQVggIDog
KChhKSsoYikpKQogI2RlZmluZSBzaWxrX0FERF9QT1NfU0FUMTYoYSwgYikgICAgICAgICAgICAo
KCgoYSkrKGIpKSAmIDB4ODAwMCkgICAgICAgICAgICAgICA/IHNpbGtfaW50MTZfTUFYIDogKChh
KSsoYikpKQotI2RlZmluZSBzaWxrX0FERF9QT1NfU0FUMzIoYSwgYikgICAgICAgICAgICAoKCgo
YSkrKGIpKSAmIDB4ODAwMDAwMDApICAgICAgICAgICA/IHNpbGtfaW50MzJfTUFYIDogKChhKSso
YikpKQotI2RlZmluZSBzaWxrX0FERF9QT1NfU0FUNjQoYSwgYikgICAgICAgICAgICAoKCgoYSkr
KGIpKSAmIDB4ODAwMDAwMDAwMDAwMDAwMExMKSA/IHNpbGtfaW50NjRfTUFYIDogKChhKSsoYikp
KQorI2RlZmluZSBzaWxrX0FERF9QT1NfU0FUMzIoYSwgYikgICAgICAgICAgICAoKCgob3B1c191
aW50MzIpKGEpKyhvcHVzX3VpbnQzMikoYikpICYgMHg4MDAwMDAwMCkgPyBzaWxrX2ludDMyX01B
WCA6ICgoYSkrKGIpKSkKIAogI2RlZmluZSBzaWxrX0xTSElGVDgoYSwgc2hpZnQpICAgICAgICAg
ICAgICAoKG9wdXNfaW50OCkoKG9wdXNfdWludDgpKGEpPDwoc2hpZnQpKSkgICAgICAgICAvKiBz
aGlmdCA+PSAwLCBzaGlmdCA8IDggICovCiAjZGVmaW5lIHNpbGtfTFNISUZUMTYoYSwgc2hpZnQp
ICAgICAgICAgICAgICgob3B1c19pbnQxNikoKG9wdXNfdWludDE2KShhKTw8KHNoaWZ0KSkpICAg
ICAgIC8qIHNoaWZ0ID49IDAsIHNoaWZ0IDwgMTYgKi8KQEAgLTU3Miw3ICs1OTYsOSBAQCBzdGF0
aWMgT1BVU19JTkxJTkUgb3B1c19pbnQ2NCBzaWxrX21heF82NChvcHVzX2ludDY0IGEsIG9wdXNf
aW50NjQgYikKIC8qIE1ha2Ugc3VyZSB0byBzdG9yZSB0aGUgcmVzdWx0IGFzIHRoZSBzZWVkIGZv
ciB0aGUgbmV4dCBjYWxsIChhbHNvIGluIGJldHdlZW4gICAgICovCiAvKiBmcmFtZXMpLCBvdGhl
cndpc2UgcmVzdWx0IHdvbid0IGJlIHJhbmRvbSBhdCBhbGwuIFdoZW4gb25seSB1c2luZyBzb21l
IG9mIHRoZSAgICAqLwogLyogYml0cywgdGFrZSB0aGUgbW9zdCBzaWduaWZpY2FudCBiaXRzIGJ5
IHJpZ2h0LXNoaWZ0aW5nLiAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSNkZWZpbmUgc2ls
a19SQU5EKHNlZWQpICAgICAgICAgICAgICAgICAgICAgKHNpbGtfTUxBX292Zmx3KDkwNzYzMzUx
NSwgKHNlZWQpLCAxOTYzMTQxNjUpKQorI2RlZmluZSBSQU5EX01VTFRJUExJRVIgICAgICAgICAg
ICAgICAgICAgICAxOTYzMTQxNjUKKyNkZWZpbmUgUkFORF9JTkNSRU1FTlQgICAgICAgICAgICAg
ICAgICAgICAgOTA3NjMzNTE1CisjZGVmaW5lIHNpbGtfUkFORChzZWVkKSAgICAgICAgICAgICAg
ICAgICAgIChzaWxrX01MQV9vdmZsdygoUkFORF9JTkNSRU1FTlQpLCAoc2VlZCksIChSQU5EX01V
TFRJUExJRVIpKSkKIAogLyogIEFkZCBzb21lIG11bHRpcGxpY2F0aW9uIGZ1bmN0aW9ucyB0aGF0
IGNhbiBiZSBlYXNpbHkgbWFwcGVkIHRvIEFSTS4gKi8KIApkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1ZRX1dN
YXRfRUMuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9WUV9XTWF0X0VDLmMKaW5kZXggNzk4M2YxZGI4MGNjY2VjYTU4YmQ3YTc2
MmVhOTA1NGNmYTU0YjZiOS4uMGYzZDU0NWM0ZWY4YzEzM2VlNTE1MzM2ZTE5YzE2ZmE2MjcyZGJl
MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL1ZRX1dNYXRfRUMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvVlFfV01hdF9FQy5jCkBA
IC0zNCw4NCArMzQsOTUgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAvKiBFbnRyb3B5
IGNvbnN0cmFpbmVkIG1hdHJpeC13ZWlnaHRlZCBWUSwgaGFyZC1jb2RlZCB0byA1LWVsZW1lbnQg
dmVjdG9ycywgZm9yIGEgc2luZ2xlIGlucHV0IGRhdGEgdmVjdG9yICovCiB2b2lkIHNpbGtfVlFf
V01hdF9FQ19jKAogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICAqaW5kLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgaW5kZXggb2YgYmVzdCBjb2RlYm9vayB2ZWN0b3Ig
ICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqcmF0ZV9k
aXN0X1ExNCwgICAgICAgICAgICAgICAgIC8qIE8gICAgYmVzdCB3ZWlnaHRlZCBxdWFudCBlcnJv
ciArIG11ICogcmF0ZSAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAq
cmVzX25yZ19RMTUsICAgICAgICAgICAgICAgICAgIC8qIE8gICAgYmVzdCByZXNpZHVhbCBlbmVy
Z3kgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAg
ICAgICAqcmF0ZV9kaXN0X1E4LCAgICAgICAgICAgICAgICAgIC8qIE8gICAgYmVzdCB0b3RhbCBi
aXRyYXRlICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgICAqZ2Fpbl9RNywgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgc3VtIG9m
IGFic29sdXRlIExUUCBjb2VmZmljaWVudHMgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNf
aW50MTYgICAgICAgICAgICAqaW5fUTE0LCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
aW5wdXQgdmVjdG9yIHRvIGJlIHF1YW50aXplZCAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0
IG9wdXNfaW50MzIgICAgICAgICAgICAqV19RMTgsICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgd2VpZ2h0aW5nIG1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqWFhfUTE3LCAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgY29ycmVsYXRpb24gbWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqeFhfUTE3LCAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgY29ycmVsYXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50OCAgICAgICAgICAgICAqY2JfUTcsICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgY29kZWJvb2sgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICAgICAqY2JfZ2Fpbl9R
NywgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgY29kZWJvb2sgZWZmZWN0aXZlIGdhaW4gICAg
ICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICAgICAqY2xf
UTUsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgY29kZSBsZW5ndGggZm9yIGVhY2gg
Y29kZWJvb2sgdmVjdG9yICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBtdV9ROSwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgdHJhZGVvZmYgYmV0dy4g
d2VpZ2h0ZWQgZXJyb3IgYW5kIHJhdGUgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICBzdWJmcl9sZW4sICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9m
IHNhbXBsZXMgcGVyIHN1YmZyYW1lICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50
MzIgICAgICAgICAgICBtYXhfZ2Fpbl9RNywgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbWF4
aW11bSBzdW0gb2YgYWJzb2x1dGUgTFRQIGNvZWZmaWNpZW50cyAgICAqLwotICAgIG9wdXNfaW50
ICAgICAgICAgICAgICAgICAgICBMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgbnVtYmVyIG9mIHZlY3RvcnMgaW4gY29kZWJvb2sgICAgICAgICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICBMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgbnVtYmVyIG9mIHZlY3RvcnMgaW4gY29kZWJvb2sgICAgICAgICAgICAgICAqLwog
KQogewogICAgIG9wdXNfaW50ICAgaywgZ2Fpbl90bXBfUTc7CiAgICAgY29uc3Qgb3B1c19pbnQ4
ICpjYl9yb3dfUTc7Ci0gICAgb3B1c19pbnQxNiBkaWZmX1ExNFsgNSBdOwotICAgIG9wdXNfaW50
MzIgc3VtMV9RMTQsIHN1bTJfUTE2OworICAgIG9wdXNfaW50MzIgbmVnX3hYX1EyNFsgNSBdOwor
ICAgIG9wdXNfaW50MzIgc3VtMV9RMTUsIHN1bTJfUTI0OworICAgIG9wdXNfaW50MzIgYml0c19y
ZXNfUTgsIGJpdHNfdG90X1E4OworCisgICAgLyogTmVnYXRlIGFuZCBjb252ZXJ0IHRvIG5ldyBR
IGRvbWFpbiAqLworICAgIG5lZ194WF9RMjRbIDAgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdb
IDAgXSwgNyApOworICAgIG5lZ194WF9RMjRbIDEgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdb
IDEgXSwgNyApOworICAgIG5lZ194WF9RMjRbIDIgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdb
IDIgXSwgNyApOworICAgIG5lZ194WF9RMjRbIDMgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdb
IDMgXSwgNyApOworICAgIG5lZ194WF9RMjRbIDQgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdb
IDQgXSwgNyApOwogCiAgICAgLyogTG9vcCBvdmVyIGNvZGVib29rICovCi0gICAgKnJhdGVfZGlz
dF9RMTQgPSBzaWxrX2ludDMyX01BWDsKKyAgICAqcmF0ZV9kaXN0X1E4ID0gc2lsa19pbnQzMl9N
QVg7CisgICAgKnJlc19ucmdfUTE1ID0gc2lsa19pbnQzMl9NQVg7CiAgICAgY2Jfcm93X1E3ID0g
Y2JfUTc7CisgICAgLyogSW4gdGhpbmdzIGdvIHJlYWxseSBiYWQsIGF0IGxlYXN0ICppbmQgaXMg
c2V0IHRvIHNvbWV0aGluZyBzYWZlLiAqLworICAgICppbmQgPSAwOwogICAgIGZvciggayA9IDA7
IGsgPCBMOyBrKysgKSB7CisgICAgICAgIG9wdXNfaW50MzIgcGVuYWx0eTsKICAgICAgICAgZ2Fp
bl90bXBfUTcgPSBjYl9nYWluX1E3W2tdOwotCi0gICAgICAgIGRpZmZfUTE0WyAwIF0gPSBpbl9R
MTRbIDAgXSAtIHNpbGtfTFNISUZUKCBjYl9yb3dfUTdbIDAgXSwgNyApOwotICAgICAgICBkaWZm
X1ExNFsgMSBdID0gaW5fUTE0WyAxIF0gLSBzaWxrX0xTSElGVCggY2Jfcm93X1E3WyAxIF0sIDcg
KTsKLSAgICAgICAgZGlmZl9RMTRbIDIgXSA9IGluX1ExNFsgMiBdIC0gc2lsa19MU0hJRlQoIGNi
X3Jvd19RN1sgMiBdLCA3ICk7Ci0gICAgICAgIGRpZmZfUTE0WyAzIF0gPSBpbl9RMTRbIDMgXSAt
IHNpbGtfTFNISUZUKCBjYl9yb3dfUTdbIDMgXSwgNyApOwotICAgICAgICBkaWZmX1ExNFsgNCBd
ID0gaW5fUTE0WyA0IF0gLSBzaWxrX0xTSElGVCggY2Jfcm93X1E3WyA0IF0sIDcgKTsKLQogICAg
ICAgICAvKiBXZWlnaHRlZCByYXRlICovCi0gICAgICAgIHN1bTFfUTE0ID0gc2lsa19TTVVMQkIo
IG11X1E5LCBjbF9RNVsgayBdICk7CisgICAgICAgIC8qIFF1YW50aXphdGlvbiBlcnJvcjogMSAt
IDIgKiB4WCAqIGNiICsgY2InICogWFggKiBjYiAqLworICAgICAgICBzdW0xX1ExNSA9IFNJTEtf
RklYX0NPTlNUKCAxLjAwMSwgMTUgKTsKIAogICAgICAgICAvKiBQZW5hbHR5IGZvciB0b28gbGFy
Z2UgZ2FpbiAqLwotICAgICAgICBzdW0xX1ExNCA9IHNpbGtfQUREX0xTSElGVDMyKCBzdW0xX1Ex
NCwgc2lsa19tYXgoIHNpbGtfU1VCMzIoIGdhaW5fdG1wX1E3LCBtYXhfZ2Fpbl9RNyApLCAwICks
IDEwICk7Ci0KLSAgICAgICAgc2lsa19hc3NlcnQoIHN1bTFfUTE0ID49IDAgKTsKLQotICAgICAg
ICAvKiBmaXJzdCByb3cgb2YgV19RMTggKi8KLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNVUxX
QiggICAgICAgICAgIFdfUTE4WyAgMSBdLCBkaWZmX1ExNFsgMSBdICk7Ci0gICAgICAgIHN1bTJf
UTE2ID0gc2lsa19TTUxBV0IoIHN1bTJfUTE2LCBXX1ExOFsgIDIgXSwgZGlmZl9RMTRbIDIgXSAp
OwotICAgICAgICBzdW0yX1ExNiA9IHNpbGtfU01MQVdCKCBzdW0yX1ExNiwgV19RMThbICAzIF0s
IGRpZmZfUTE0WyAzIF0gKTsKLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9R
MTYsIFdfUTE4WyAgNCBdLCBkaWZmX1ExNFsgNCBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2ls
a19MU0hJRlQoIHN1bTJfUTE2LCAxICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTUxBV0Io
IHN1bTJfUTE2LCBXX1ExOFsgIDAgXSwgZGlmZl9RMTRbIDAgXSApOwotICAgICAgICBzdW0xX1Ex
NCA9IHNpbGtfU01MQVdCKCBzdW0xX1ExNCwgc3VtMl9RMTYsICAgIGRpZmZfUTE0WyAwIF0gKTsK
LQotICAgICAgICAvKiBzZWNvbmQgcm93IG9mIFdfUTE4ICovCi0gICAgICAgIHN1bTJfUTE2ID0g
c2lsa19TTVVMV0IoICAgICAgICAgICBXX1ExOFsgIDcgXSwgZGlmZl9RMTRbIDIgXSApOwotICAg
ICAgICBzdW0yX1ExNiA9IHNpbGtfU01MQVdCKCBzdW0yX1ExNiwgV19RMThbICA4IF0sIGRpZmZf
UTE0WyAzIF0gKTsKLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdf
UTE4WyAgOSBdLCBkaWZmX1ExNFsgNCBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19MU0hJ
RlQoIHN1bTJfUTE2LCAxICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTUxBV0IoIHN1bTJf
UTE2LCBXX1ExOFsgIDYgXSwgZGlmZl9RMTRbIDEgXSApOwotICAgICAgICBzdW0xX1ExNCA9IHNp
bGtfU01MQVdCKCBzdW0xX1ExNCwgc3VtMl9RMTYsICAgIGRpZmZfUTE0WyAxIF0gKTsKLQotICAg
ICAgICAvKiB0aGlyZCByb3cgb2YgV19RMTggKi8KLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NN
VUxXQiggICAgICAgICAgIFdfUTE4WyAxMyBdLCBkaWZmX1ExNFsgMyBdICk7Ci0gICAgICAgIHN1
bTJfUTE2ID0gc2lsa19TTUxBV0IoIHN1bTJfUTE2LCBXX1ExOFsgMTQgXSwgZGlmZl9RMTRbIDQg
XSApOwotICAgICAgICBzdW0yX1ExNiA9IHNpbGtfTFNISUZUKCBzdW0yX1ExNiwgMSApOwotICAg
ICAgICBzdW0yX1ExNiA9IHNpbGtfU01MQVdCKCBzdW0yX1ExNiwgV19RMThbIDEyIF0sIGRpZmZf
UTE0WyAyIF0gKTsKLSAgICAgICAgc3VtMV9RMTQgPSBzaWxrX1NNTEFXQiggc3VtMV9RMTQsIHN1
bTJfUTE2LCAgICBkaWZmX1ExNFsgMiBdICk7Ci0KLSAgICAgICAgLyogZm91cnRoIHJvdyBvZiBX
X1ExOCAqLwotICAgICAgICBzdW0yX1ExNiA9IHNpbGtfU01VTFdCKCAgICAgICAgICAgV19RMThb
IDE5IF0sIGRpZmZfUTE0WyA0IF0gKTsKLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX0xTSElGVCgg
c3VtMl9RMTYsIDEgKTsKLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYs
IFdfUTE4WyAxOCBdLCBkaWZmX1ExNFsgMyBdICk7Ci0gICAgICAgIHN1bTFfUTE0ID0gc2lsa19T
TUxBV0IoIHN1bTFfUTE0LCBzdW0yX1ExNiwgICAgZGlmZl9RMTRbIDMgXSApOwotCi0gICAgICAg
IC8qIGxhc3Qgcm93IG9mIFdfUTE4ICovCi0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTVVMV0Io
ICAgICAgICAgICBXX1ExOFsgMjQgXSwgZGlmZl9RMTRbIDQgXSApOwotICAgICAgICBzdW0xX1Ex
NCA9IHNpbGtfU01MQVdCKCBzdW0xX1ExNCwgc3VtMl9RMTYsICAgIGRpZmZfUTE0WyA0IF0gKTsK
LQotICAgICAgICBzaWxrX2Fzc2VydCggc3VtMV9RMTQgPj0gMCApOworICAgICAgICBwZW5hbHR5
ID0gc2lsa19MU0hJRlQzMiggc2lsa19tYXgoIHNpbGtfU1VCMzIoIGdhaW5fdG1wX1E3LCBtYXhf
Z2Fpbl9RNyApLCAwICksIDExICk7CisKKyAgICAgICAgLyogZmlyc3Qgcm93IG9mIFhYX1ExNyAq
LworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBuZWdfeFhfUTI0WyAwIF0sIFhYX1ExN1sg
IDEgXSwgY2Jfcm93X1E3WyAxIF0gKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggc3Vt
Ml9RMjQsICAgICAgICBYWF9RMTdbICAyIF0sIGNiX3Jvd19RN1sgMiBdICk7CisgICAgICAgIHN1
bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJfUTI0LCAgICAgICAgWFhfUTE3WyAgMyBdLCBjYl9yb3df
UTdbIDMgXSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBzdW0yX1EyNCwgICAgICAg
IFhYX1ExN1sgIDQgXSwgY2Jfcm93X1E3WyA0IF0gKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxr
X0xTSElGVDMyKCBzdW0yX1EyNCwgMSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBz
dW0yX1EyNCwgICAgICAgIFhYX1ExN1sgIDAgXSwgY2Jfcm93X1E3WyAwIF0gKTsKKyAgICAgICAg
c3VtMV9RMTUgPSBzaWxrX1NNTEFXQiggc3VtMV9RMTUsICAgICAgICBzdW0yX1EyNCwgIGNiX3Jv
d19RN1sgMCBdICk7CisKKyAgICAgICAgLyogc2Vjb25kIHJvdyBvZiBYWF9RMTcgKi8KKyAgICAg
ICAgc3VtMl9RMjQgPSBzaWxrX01MQSggbmVnX3hYX1EyNFsgMSBdLCBYWF9RMTdbICA3IF0sIGNi
X3Jvd19RN1sgMiBdICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJfUTI0LCAg
ICAgICAgWFhfUTE3WyAgOCBdLCBjYl9yb3dfUTdbIDMgXSApOworICAgICAgICBzdW0yX1EyNCA9
IHNpbGtfTUxBKCBzdW0yX1EyNCwgICAgICAgIFhYX1ExN1sgIDkgXSwgY2Jfcm93X1E3WyA0IF0g
KTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX0xTSElGVDMyKCBzdW0yX1EyNCwgMSApOworICAg
ICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBzdW0yX1EyNCwgICAgICAgIFhYX1ExN1sgIDYgXSwg
Y2Jfcm93X1E3WyAxIF0gKTsKKyAgICAgICAgc3VtMV9RMTUgPSBzaWxrX1NNTEFXQiggc3VtMV9R
MTUsICAgICAgICBzdW0yX1EyNCwgIGNiX3Jvd19RN1sgMSBdICk7CisKKyAgICAgICAgLyogdGhp
cmQgcm93IG9mIFhYX1ExNyAqLworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBuZWdfeFhf
UTI0WyAyIF0sIFhYX1ExN1sgMTMgXSwgY2Jfcm93X1E3WyAzIF0gKTsKKyAgICAgICAgc3VtMl9R
MjQgPSBzaWxrX01MQSggc3VtMl9RMjQsICAgICAgICBYWF9RMTdbIDE0IF0sIGNiX3Jvd19RN1sg
NCBdICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19MU0hJRlQzMiggc3VtMl9RMjQsIDEgKTsK
KyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggc3VtMl9RMjQsICAgICAgICBYWF9RMTdbIDEy
IF0sIGNiX3Jvd19RN1sgMiBdICk7CisgICAgICAgIHN1bTFfUTE1ID0gc2lsa19TTUxBV0IoIHN1
bTFfUTE1LCAgICAgICAgc3VtMl9RMjQsICBjYl9yb3dfUTdbIDIgXSApOworCisgICAgICAgIC8q
IGZvdXJ0aCByb3cgb2YgWFhfUTE3ICovCisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIG5l
Z194WF9RMjRbIDMgXSwgWFhfUTE3WyAxOSBdLCBjYl9yb3dfUTdbIDQgXSApOworICAgICAgICBz
dW0yX1EyNCA9IHNpbGtfTFNISUZUMzIoIHN1bTJfUTI0LCAxICk7CisgICAgICAgIHN1bTJfUTI0
ID0gc2lsa19NTEEoIHN1bTJfUTI0LCAgICAgICAgWFhfUTE3WyAxOCBdLCBjYl9yb3dfUTdbIDMg
XSApOworICAgICAgICBzdW0xX1ExNSA9IHNpbGtfU01MQVdCKCBzdW0xX1ExNSwgICAgICAgIHN1
bTJfUTI0LCAgY2Jfcm93X1E3WyAzIF0gKTsKKworICAgICAgICAvKiBsYXN0IHJvdyBvZiBYWF9R
MTcgKi8KKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX0xTSElGVDMyKCBuZWdfeFhfUTI0WyA0IF0s
IDEgKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggc3VtMl9RMjQsICAgICAgICBYWF9R
MTdbIDI0IF0sIGNiX3Jvd19RN1sgNCBdICk7CisgICAgICAgIHN1bTFfUTE1ID0gc2lsa19TTUxB
V0IoIHN1bTFfUTE1LCAgICAgICAgc3VtMl9RMjQsICBjYl9yb3dfUTdbIDQgXSApOwogCiAgICAg
ICAgIC8qIGZpbmQgYmVzdCAqLwotICAgICAgICBpZiggc3VtMV9RMTQgPCAqcmF0ZV9kaXN0X1Ex
NCApIHsKLSAgICAgICAgICAgICpyYXRlX2Rpc3RfUTE0ID0gc3VtMV9RMTQ7Ci0gICAgICAgICAg
ICAqaW5kID0gKG9wdXNfaW50OClrOwotICAgICAgICAgICAgKmdhaW5fUTcgPSBnYWluX3RtcF9R
NzsKKyAgICAgICAgaWYoIHN1bTFfUTE1ID49IDAgKSB7CisgICAgICAgICAgICAvKiBUcmFuc2xh
dGUgcmVzaWR1YWwgZW5lcmd5IHRvIGJpdHMgdXNpbmcgaGlnaC1yYXRlIGFzc3VtcHRpb24gKDYg
ZEIgPT0+IDEgYml0L3NhbXBsZSkgKi8KKyAgICAgICAgICAgIGJpdHNfcmVzX1E4ID0gc2lsa19T
TVVMQkIoIHN1YmZyX2xlbiwgc2lsa19saW4ybG9nKCBzdW0xX1ExNSArIHBlbmFsdHkpIC0gKDE1
IDw8IDcpICk7CisgICAgICAgICAgICAvKiBJbiB0aGUgZm9sbG93aW5nIGxpbmUgd2UgcmVkdWNl
IHRoZSBjb2RlbGVuZ3RoIGNvbXBvbmVudCBieSBoYWxmICgiLTEiKTsgc2VlbXMgdG8gc2xnaHRs
eSBpbXByb3ZlIHF1YWxpdHkgKi8KKyAgICAgICAgICAgIGJpdHNfdG90X1E4ID0gc2lsa19BRERf
TFNISUZUMzIoIGJpdHNfcmVzX1E4LCBjbF9RNVsgayBdLCAzLTEgKTsKKyAgICAgICAgICAgIGlm
KCBiaXRzX3RvdF9ROCA8PSAqcmF0ZV9kaXN0X1E4ICkgeworICAgICAgICAgICAgICAgICpyYXRl
X2Rpc3RfUTggPSBiaXRzX3RvdF9RODsKKyAgICAgICAgICAgICAgICAqcmVzX25yZ19RMTUgPSBz
dW0xX1ExNSArIHBlbmFsdHk7CisgICAgICAgICAgICAgICAgKmluZCA9IChvcHVzX2ludDgpazsK
KyAgICAgICAgICAgICAgICAqZ2Fpbl9RNyA9IGdhaW5fdG1wX1E3OworICAgICAgICAgICAgfQog
ICAgICAgICB9CiAKICAgICAgICAgLyogR28gdG8gbmV4dCBjYmsgdmVjdG9yICovCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvYXJtL0xQQ19pbnZfcHJlZF9nYWluX2FybS5oIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9MUENfaW52X3By
ZWRfZ2Fpbl9hcm0uaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45ODk1YjU1NWM4ODcwNTIwZDAyOTA2ZmFhZGI1MmRj
ZmJiZmJjOTY0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9MUENfaW52X3ByZWRfZ2Fpbl9h
cm0uaApAQCAtMCwwICsxLDU3IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK0NvcHlyaWdodCAoYykgMjAx
NyBHb29nbGUgSW5jLgorUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5v
dGljZSwKK3RoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCistIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0Citub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBu
YW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFt
ZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHBy
b21vdGUKK3Byb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lm
aWMgcHJpb3Igd3JpdHRlbgorcGVybWlzc2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQorSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgorQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCitBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KKworI2lmbmRlZiBTSUxLX0xQQ19JTlZfUFJFRF9HQUlOX0FSTV9ICisj
IGRlZmluZSBTSUxLX0xQQ19JTlZfUFJFRF9HQUlOX0FSTV9ICisKKyMgaW5jbHVkZSAiY2VsdC9h
cm0vYXJtY3B1LmgiCisKKyMgaWYgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIp
CitvcHVzX2ludDMyIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX25lb24oICAgICAgICAgLyog
TyAgIFJldHVybnMgaW52ZXJzZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMw
ICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqQV9RMTIsICAgICAg
ICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIGNvZWZmaWNpZW50cywgUTEyIFtvcmRlcl0gICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3Jk
ZXIgICAgICAgICAgICAgICAvKiBJICAgUHJlZGljdGlvbiBvcmRlciAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCispOworCisjICBpZiAhZGVmaW5lZChPUFVT
X0hBVkVfUlRDRCkgJiYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT04pCisjICAgZGVmaW5l
IE9WRVJSSURFX3NpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluICAgICAgICAgICAgKDEpCisjICAg
ZGVmaW5lIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKEFfUTEyLCBvcmRlciwgYXJjaCkgKCh2
b2lkKShhcmNoKSwgUFJFU1VNRV9ORU9OKHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKShBX1Ex
Miwgb3JkZXIpKQorIyAgZW5kaWYKKyMgZW5kaWYKKworIyBpZiAhZGVmaW5lZChPVkVSUklERV9z
aWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbikKKy8qSXMgcnVuLXRpbWUgQ1BVIGRldGVjdGlvbiBl
bmFibGVkIG9uIHRoaXMgcGxhdGZvcm0/Ki8KKyMgIGlmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0Qp
ICYmIChkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikgJiYgIWRlZmluZWQoT1BV
U19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpKQorZXh0ZXJuIG9wdXNfaW50MzIgKCpjb25zdCBTSUxL
X0xQQ19JTlZFUlNFX1BSRURfR0FJTl9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNf
aW50MTYgKkFfUTEyLCBjb25zdCBvcHVzX2ludCBvcmRlcik7CisjICAgZGVmaW5lIE9WRVJSSURF
X3NpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluICAgICAgICAgICAgKDEpCisjICAgZGVmaW5lIHNp
bGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKEFfUTEyLCBvcmRlciwgYXJjaCkgKCgqU0lMS19MUENf
SU5WRVJTRV9QUkVEX0dBSU5fSU1QTFsoYXJjaCkmT1BVU19BUkNITUFTS10pKEFfUTEyLCBvcmRl
cikpCisjICBlbGlmIGRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpCisjICAgZGVm
aW5lIE9WRVJSSURFX3NpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluICAgICAgICAgICAgKDEpCisj
ICAgZGVmaW5lIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKEFfUTEyLCBvcmRlciwgYXJjaCkg
KCh2b2lkKShhcmNoKSwgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fbmVvbihBX1ExMiwgb3Jk
ZXIpKQorIyAgZW5kaWYKKyMgZW5kaWYKKworI2VuZGlmIC8qIGVuZCBTSUxLX0xQQ19JTlZfUFJF
RF9HQUlOX0FSTV9IICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL0xQQ19pbnZfcHJlZF9nYWluX25l
b25faW50ci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2FybS9MUENfaW52X3ByZWRfZ2Fpbl9uZW9uX2ludHIuYwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4yNzE0MmYzNGNlYmU2OTQ2NTA2Yzk4YzdjODBlZDcwNmU2MDczOGJlCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2FybS9MUENfaW52X3ByZWRfZ2Fpbl9uZW9uX2ludHIuYwpAQCAtMCwwICsx
LDI4MCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqCitDb3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4K
K1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCit0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLSBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKy0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5l
dCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKK25hbWVzIG9mIHNwZWNpZmlj
IGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCitwcm9kdWN0
cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4KK3Blcm1pc3Npb24uCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKK0FORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKK0lN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
CisKKyNpZmRlZiBIQVZFX0NPTkZJR19ICisjaW5jbHVkZSAiY29uZmlnLmgiCisjZW5kaWYKKwor
I2luY2x1ZGUgPGFybV9uZW9uLmg+CisjaW5jbHVkZSAiU2lnUHJvY19GSVguaCIKKyNpbmNsdWRl
ICJkZWZpbmUuaCIKKworI2RlZmluZSBRQSAgICAgICAgICAgICAgICAgICAgICAgICAgMjQKKyNk
ZWZpbmUgQV9MSU1JVCAgICAgICAgICAgICAgICAgICAgIFNJTEtfRklYX0NPTlNUKCAwLjk5OTc1
LCBRQSApCisKKyNkZWZpbmUgTVVMMzJfRlJBQ19RKGEzMiwgYjMyLCBRKSAgICgob3B1c19pbnQz
Mikoc2lsa19SU0hJRlRfUk9VTkQ2NChzaWxrX1NNVUxMKGEzMiwgYjMyKSwgUSkpKQorCisvKiBU
aGUgZGlmZmljdWx0eSBpcyBob3cgdG8ganVkZ2UgYSA2NC1iaXQgc2lnbmVkIGludGVnZXIgdG1w
NjQgaXMgMzItYml0IG92ZXJmbG93ZWQsCisgKiBzaW5jZSBORU9OIGhhcyBubyA2NC1iaXQgbWlu
LCBtYXggb3IgY29tcGFyaXNvbiBpbnN0cnVjdGlvbnMuCisgKiBBIGZhaWxlZCBpZGVhIGlzIHRv
IGNvbXBhcmUgdGhlIHJlc3VsdHMgb2Ygdm1vdm4odG1wNjQpIGFuZCB2cW1vdm4odG1wNjQpIHdo
ZXRoZXIgdGhleSBhcmUgZXF1YWwgb3Igbm90LgorICogSG93ZXZlciwgdGhpcyBpZGVhIGZhaWxz
IHdoZW4gdGhlIHRtcDY0IGlzIHNvbWV0aGluZyBsaWtlIDB4RkZGRkZGRjk4MDAwMDAwMC4KKyAq
IEhlcmUgd2Uga25vdyB0aGF0IG11bHQyUSA+PSAxLCBzbyB0aGUgaGlnaGVzdCBiaXQgKGJpdCA2
Mywgc2lnbiBiaXQpIG9mIHRtcDY0IG11c3QgZXF1YWwgdG8gYml0IDYyLgorICogdG1wNjQgd2Fz
IHNoaWZ0ZWQgbGVmdCBieSAxIGFuZCB3ZSBnb3QgdG1wNjQnLiBJZiBoaWdoX2hhbGYodG1wNjQn
KSAhPSAwIGFuZCBoaWdoX2hhbGYodG1wNjQnKSAhPSAtMSwKKyAqIHRoZW4gd2Uga25vdyB0aGF0
IGJpdCAzMSB0byBiaXQgNjMgb2YgdG1wNjQgY2FuIG5vdCBhbGwgYmUgdGhlIHNpZ24gYml0LCBh
bmQgdGhlcmVmb3JlIHRtcDY0IGlzIDMyLWJpdCBvdmVyZmxvd2VkLgorICogVGhhdCBpcywgd2Ug
anVkZ2UgaWYgdG1wNjQnID4gMHgwMDAwMDAwMEZGRkZGRkZGLCBvciB0bXA2NCcgPD0gMHhGRkZG
RkZGRjAwMDAwMDAwLgorICogV2UgdXNlIG5hcnJvd2luZyBzaGlmdCByaWdodCAzMSBiaXRzIHRv
IHRtcDMyJyB0byBzYXZlIGRhdGEgYmFuZHdpZHRoIGFuZCBpbnN0cnVjdGlvbnMuCisgKiBUaGF0
IGlzLCB3ZSBqdWRnZSBpZiB0bXAzMicgPiAweDAwMDAwMDAwLCBvciB0bXAzMicgPD0gMHhGRkZG
RkZGRi4KKyAqLworCisvKiBDb21wdXRlIGludmVyc2Ugb2YgTFBDIHByZWRpY3Rpb24gZ2Fpbiwg
YW5kICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogdGVzdCBpZiBMUEMgY29lZmZpY2ll
bnRzIGFyZSBzdGFibGUgKGFsbCBwb2xlcyB3aXRoaW4gdW5pdCBjaXJjbGUpICAgKi8KK3N0YXRp
YyBPUFVTX0lOTElORSBvcHVzX2ludDMyIExQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RQV9uZW9uKCAv
KiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBR
MzAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgICBBX1FBWyBTSUxLX01BWF9PUkRFUl9M
UEMgXSwgICAgICAgICAvKiBJICAgUHJlZGljdGlvbiBjb2VmZmljaWVudHMgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICBvcmRlciAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgUHJlZGljdGlvbiBvcmRlciAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyAgICBvcHVzX2lu
dCAgIGssIG4sIG11bHQyUTsKKyAgICBvcHVzX2ludDMyIGludkdhaW5fUTMwLCByY19RMzEsIHJj
X211bHQxX1EzMCwgcmNfbXVsdDIsIHRtcDEsIHRtcDI7CisgICAgb3B1c19pbnQzMiBtYXgsIG1p
bjsKKyAgICBpbnQzMng0X3QgIG1heF9zMzJ4NCwgbWluX3MzMng0OworICAgIGludDMyeDJfdCAg
bWF4X3MzMngyLCBtaW5fczMyeDI7CisKKyAgICBtYXhfczMyeDQgPSB2ZHVwcV9uX3MzMiggc2ls
a19pbnQzMl9NSU4gKTsKKyAgICBtaW5fczMyeDQgPSB2ZHVwcV9uX3MzMiggc2lsa19pbnQzMl9N
QVggKTsKKyAgICBpbnZHYWluX1EzMCA9IFNJTEtfRklYX0NPTlNUKCAxLCAzMCApOworICAgIGZv
ciggayA9IG9yZGVyIC0gMTsgayA+IDA7IGstLSApIHsKKyAgICAgICAgaW50MzJ4Ml90IHJjX1Ez
MV9zMzJ4MiwgcmNfbXVsdDJfczMyeDI7CisgICAgICAgIGludDY0eDJfdCBtdWx0MlFfczY0eDI7
CisKKyAgICAgICAgLyogQ2hlY2sgZm9yIHN0YWJpbGl0eSAqLworICAgICAgICBpZiggKCBBX1FB
WyBrIF0gPiBBX0xJTUlUICkgfHwgKCBBX1FBWyBrIF0gPCAtQV9MSU1JVCApICkgeworICAgICAg
ICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKworICAgICAgICAvKiBTZXQgUkMgZXF1YWwgdG8g
bmVnYXRlZCBBUiBjb2VmICovCisgICAgICAgIHJjX1EzMSA9IC1zaWxrX0xTSElGVCggQV9RQVsg
ayBdLCAzMSAtIFFBICk7CisKKyAgICAgICAgLyogcmNfbXVsdDFfUTMwIHJhbmdlOiBbIDEgOiAy
XjMwIF0gKi8KKyAgICAgICAgcmNfbXVsdDFfUTMwID0gc2lsa19TVUIzMiggU0lMS19GSVhfQ09O
U1QoIDEsIDMwICksIHNpbGtfU01NVUwoIHJjX1EzMSwgcmNfUTMxICkgKTsKKyAgICAgICAgc2ls
a19hc3NlcnQoIHJjX211bHQxX1EzMCA+ICggMSA8PCAxNSApICk7ICAgICAgICAgICAgICAgICAg
IC8qIHJlZHVjZSBBX0xJTUlUIGlmIGZhaWxzICovCisgICAgICAgIHNpbGtfYXNzZXJ0KCByY19t
dWx0MV9RMzAgPD0gKCAxIDw8IDMwICkgKTsKKworICAgICAgICAvKiBVcGRhdGUgaW52ZXJzZSBn
YWluICovCisgICAgICAgIC8qIGludkdhaW5fUTMwIHJhbmdlOiBbIDAgOiAyXjMwIF0gKi8KKyAg
ICAgICAgaW52R2Fpbl9RMzAgPSBzaWxrX0xTSElGVCggc2lsa19TTU1VTCggaW52R2Fpbl9RMzAs
IHJjX211bHQxX1EzMCApLCAyICk7CisgICAgICAgIHNpbGtfYXNzZXJ0KCBpbnZHYWluX1EzMCA+
PSAwICAgICAgICAgICApOworICAgICAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPD0gKCAx
IDw8IDMwICkgKTsKKyAgICAgICAgaWYoIGludkdhaW5fUTMwIDwgU0lMS19GSVhfQ09OU1QoIDEu
MGYgLyBNQVhfUFJFRElDVElPTl9QT1dFUl9HQUlOLCAzMCApICkgeworICAgICAgICAgICAgcmV0
dXJuIDA7CisgICAgICAgIH0KKworICAgICAgICAvKiByY19tdWx0MiByYW5nZTogWyAyXjMwIDog
c2lsa19pbnQzMl9NQVggXSAqLworICAgICAgICBtdWx0MlEgPSAzMiAtIHNpbGtfQ0xaMzIoIHNp
bGtfYWJzKCByY19tdWx0MV9RMzAgKSApOworICAgICAgICByY19tdWx0MiA9IHNpbGtfSU5WRVJT
RTMyX3ZhclEoIHJjX211bHQxX1EzMCwgbXVsdDJRICsgMzAgKTsKKworICAgICAgICAvKiBVcGRh
dGUgQVIgY29lZmZpY2llbnQgKi8KKyAgICAgICAgcmNfUTMxX3MzMngyICAgPSB2ZHVwX25fczMy
KCByY19RMzEgKTsKKyAgICAgICAgbXVsdDJRX3M2NHgyICAgPSB2ZHVwcV9uX3M2NCggLW11bHQy
USApOworICAgICAgICByY19tdWx0Ml9zMzJ4MiA9IHZkdXBfbl9zMzIoIHJjX211bHQyICk7CisK
KyAgICAgICAgZm9yKCBuID0gMDsgbiA8ICggKCBrICsgMSApID4+IDEgKSAtIDM7IG4gKz0gNCAp
IHsKKyAgICAgICAgICAgIC8qIFdlIGFsd2F5cyBjYWxjdWxhdGUgZXh0cmEgZWxlbWVudHMgb2Yg
QV9RQSBidWZmZXIgd2hlbiAoIGsgJSA0ICkgIT0gMCwgdG8gdGFrZSB0aGUgYWR2YW50YWdlIG9m
IFNJTUQgcGFyYWxsZWxpemF0aW9uLiAqLworICAgICAgICAgICAgaW50MzJ4NF90IHRtcDFfczMy
eDQsIHRtcDJfczMyeDQsIHQwX3MzMng0LCB0MV9zMzJ4NCwgczBfczMyeDQsIHMxX3MzMng0LCB0
X1FBMF9zMzJ4NCwgdF9RQTFfczMyeDQ7CisgICAgICAgICAgICBpbnQ2NHgyX3QgdDBfczY0eDIs
IHQxX3M2NHgyLCB0Ml9zNjR4MiwgdDNfczY0eDI7CisgICAgICAgICAgICB0bXAxX3MzMng0ICA9
IHZsZDFxX3MzMiggQV9RQSArIG4gKTsKKyAgICAgICAgICAgIHRtcDJfczMyeDQgID0gdmxkMXFf
czMyKCBBX1FBICsgayAtIG4gLSA0ICk7CisgICAgICAgICAgICB0bXAyX3MzMng0ICA9IHZyZXY2
NHFfczMyKCB0bXAyX3MzMng0ICk7CisgICAgICAgICAgICB0bXAyX3MzMng0ICA9IHZjb21iaW5l
X3MzMiggdmdldF9oaWdoX3MzMiggdG1wMl9zMzJ4NCApLCB2Z2V0X2xvd19zMzIoIHRtcDJfczMy
eDQgKSApOworICAgICAgICAgICAgdDBfczMyeDQgICAgPSB2cXJkbXVsaHFfbGFuZV9zMzIoIHRt
cDJfczMyeDQsIHJjX1EzMV9zMzJ4MiwgMCApOworICAgICAgICAgICAgdDFfczMyeDQgICAgPSB2
cXJkbXVsaHFfbGFuZV9zMzIoIHRtcDFfczMyeDQsIHJjX1EzMV9zMzJ4MiwgMCApOworICAgICAg
ICAgICAgdF9RQTBfczMyeDQgPSB2cXN1YnFfczMyKCB0bXAxX3MzMng0LCB0MF9zMzJ4NCApOwor
ICAgICAgICAgICAgdF9RQTFfczMyeDQgPSB2cXN1YnFfczMyKCB0bXAyX3MzMng0LCB0MV9zMzJ4
NCApOworICAgICAgICAgICAgdDBfczY0eDIgICAgPSB2bXVsbF9zMzIoIHZnZXRfbG93X3MzMiAo
IHRfUUEwX3MzMng0ICksIHJjX211bHQyX3MzMngyICk7CisgICAgICAgICAgICB0MV9zNjR4MiAg
ICA9IHZtdWxsX3MzMiggdmdldF9oaWdoX3MzMiggdF9RQTBfczMyeDQgKSwgcmNfbXVsdDJfczMy
eDIgKTsKKyAgICAgICAgICAgIHQyX3M2NHgyICAgID0gdm11bGxfczMyKCB2Z2V0X2xvd19zMzIg
KCB0X1FBMV9zMzJ4NCApLCByY19tdWx0Ml9zMzJ4MiApOworICAgICAgICAgICAgdDNfczY0eDIg
ICAgPSB2bXVsbF9zMzIoIHZnZXRfaGlnaF9zMzIoIHRfUUExX3MzMng0ICksIHJjX211bHQyX3Mz
MngyICk7CisgICAgICAgICAgICB0MF9zNjR4MiAgICA9IHZyc2hscV9zNjQoIHQwX3M2NHgyLCBt
dWx0MlFfczY0eDIgKTsKKyAgICAgICAgICAgIHQxX3M2NHgyICAgID0gdnJzaGxxX3M2NCggdDFf
czY0eDIsIG11bHQyUV9zNjR4MiApOworICAgICAgICAgICAgdDJfczY0eDIgICAgPSB2cnNobHFf
czY0KCB0Ml9zNjR4MiwgbXVsdDJRX3M2NHgyICk7CisgICAgICAgICAgICB0M19zNjR4MiAgICA9
IHZyc2hscV9zNjQoIHQzX3M2NHgyLCBtdWx0MlFfczY0eDIgKTsKKyAgICAgICAgICAgIHQwX3Mz
Mng0ICAgID0gdmNvbWJpbmVfczMyKCB2bW92bl9zNjQoIHQwX3M2NHgyICksIHZtb3ZuX3M2NCgg
dDFfczY0eDIgKSApOworICAgICAgICAgICAgdDFfczMyeDQgICAgPSB2Y29tYmluZV9zMzIoIHZt
b3ZuX3M2NCggdDJfczY0eDIgKSwgdm1vdm5fczY0KCB0M19zNjR4MiApICk7CisgICAgICAgICAg
ICBzMF9zMzJ4NCAgICA9IHZjb21iaW5lX3MzMiggdnNocm5fbl9zNjQoIHQwX3M2NHgyLCAzMSAp
LCB2c2hybl9uX3M2NCggdDFfczY0eDIsIDMxICkgKTsKKyAgICAgICAgICAgIHMxX3MzMng0ICAg
ID0gdmNvbWJpbmVfczMyKCB2c2hybl9uX3M2NCggdDJfczY0eDIsIDMxICksIHZzaHJuX25fczY0
KCB0M19zNjR4MiwgMzEgKSApOworICAgICAgICAgICAgbWF4X3MzMng0ICAgPSB2bWF4cV9zMzIo
IG1heF9zMzJ4NCwgczBfczMyeDQgKTsKKyAgICAgICAgICAgIG1pbl9zMzJ4NCAgID0gdm1pbnFf
czMyKCBtaW5fczMyeDQsIHMwX3MzMng0ICk7CisgICAgICAgICAgICBtYXhfczMyeDQgICA9IHZt
YXhxX3MzMiggbWF4X3MzMng0LCBzMV9zMzJ4NCApOworICAgICAgICAgICAgbWluX3MzMng0ICAg
PSB2bWlucV9zMzIoIG1pbl9zMzJ4NCwgczFfczMyeDQgKTsKKyAgICAgICAgICAgIHQxX3MzMng0
ICAgID0gdnJldjY0cV9zMzIoIHQxX3MzMng0ICk7CisgICAgICAgICAgICB0MV9zMzJ4NCAgICA9
IHZjb21iaW5lX3MzMiggdmdldF9oaWdoX3MzMiggdDFfczMyeDQgKSwgdmdldF9sb3dfczMyKCB0
MV9zMzJ4NCApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIEFfUUEgKyBuLCAgICAgICAgIHQw
X3MzMng0ICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIEFfUUEgKyBrIC0gbiAtIDQsIHQxX3Mz
Mng0ICk7CisgICAgICAgIH0KKyAgICAgICAgZm9yKCA7IG4gPCAoayArIDEpID4+IDE7IG4rKyAp
IHsKKyAgICAgICAgICAgIG9wdXNfaW50NjQgdG1wNjQ7CisgICAgICAgICAgICB0bXAxID0gQV9R
QVsgbiBdOworICAgICAgICAgICAgdG1wMiA9IEFfUUFbIGsgLSBuIC0gMSBdOworICAgICAgICAg
ICAgdG1wNjQgPSBzaWxrX1JTSElGVF9ST1VORDY0KCBzaWxrX1NNVUxMKCBzaWxrX1NVQl9TQVQz
Mih0bXAxLAorICAgICAgICAgICAgICAgICAgTVVMMzJfRlJBQ19RKCB0bXAyLCByY19RMzEsIDMx
ICkgKSwgcmNfbXVsdDIgKSwgbXVsdDJRKTsKKyAgICAgICAgICAgIGlmKCB0bXA2NCA+IHNpbGtf
aW50MzJfTUFYIHx8IHRtcDY0IDwgc2lsa19pbnQzMl9NSU4gKSB7CisgICAgICAgICAgICAgICBy
ZXR1cm4gMDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIEFfUUFbIG4gXSA9ICggb3B1c19p
bnQzMiApdG1wNjQ7CisgICAgICAgICAgICB0bXA2NCA9IHNpbGtfUlNISUZUX1JPVU5ENjQoIHNp
bGtfU01VTEwoIHNpbGtfU1VCX1NBVDMyKHRtcDIsCisgICAgICAgICAgICAgICAgICBNVUwzMl9G
UkFDX1EoIHRtcDEsIHJjX1EzMSwgMzEgKSApLCByY19tdWx0MiksIG11bHQyUSk7CisgICAgICAg
ICAgICBpZiggdG1wNjQgPiBzaWxrX2ludDMyX01BWCB8fCB0bXA2NCA8IHNpbGtfaW50MzJfTUlO
ICkgeworICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICBBX1FBWyBrIC0gbiAtIDEgXSA9ICggb3B1c19pbnQzMiApdG1wNjQ7CisgICAgICAgIH0KKyAg
ICB9CisKKyAgICAvKiBDaGVjayBmb3Igc3RhYmlsaXR5ICovCisgICAgaWYoICggQV9RQVsgayBd
ID4gQV9MSU1JVCApIHx8ICggQV9RQVsgayBdIDwgLUFfTElNSVQgKSApIHsKKyAgICAgICAgcmV0
dXJuIDA7CisgICAgfQorCisgICAgbWF4X3MzMngyID0gdm1heF9zMzIoIHZnZXRfbG93X3MzMigg
bWF4X3MzMng0ICksIHZnZXRfaGlnaF9zMzIoIG1heF9zMzJ4NCApICk7CisgICAgbWluX3MzMngy
ID0gdm1pbl9zMzIoIHZnZXRfbG93X3MzMiggbWluX3MzMng0ICksIHZnZXRfaGlnaF9zMzIoIG1p
bl9zMzJ4NCApICk7CisgICAgbWF4X3MzMngyID0gdm1heF9zMzIoIG1heF9zMzJ4MiwgdnJlaW50
ZXJwcmV0X3MzMl9zNjQoIHZzaHJfbl9zNjQoIHZyZWludGVycHJldF9zNjRfczMyKCBtYXhfczMy
eDIgKSwgMzIgKSApICk7CisgICAgbWluX3MzMngyID0gdm1pbl9zMzIoIG1pbl9zMzJ4MiwgdnJl
aW50ZXJwcmV0X3MzMl9zNjQoIHZzaHJfbl9zNjQoIHZyZWludGVycHJldF9zNjRfczMyKCBtaW5f
czMyeDIgKSwgMzIgKSApICk7CisgICAgbWF4ID0gdmdldF9sYW5lX3MzMiggbWF4X3MzMngyLCAw
ICk7CisgICAgbWluID0gdmdldF9sYW5lX3MzMiggbWluX3MzMngyLCAwICk7CisgICAgaWYoICgg
bWF4ID4gMCApIHx8ICggbWluIDwgLTEgKSApIHsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQor
CisgICAgLyogU2V0IFJDIGVxdWFsIHRvIG5lZ2F0ZWQgQVIgY29lZiAqLworICAgIHJjX1EzMSA9
IC1zaWxrX0xTSElGVCggQV9RQVsgMCBdLCAzMSAtIFFBICk7CisKKyAgICAvKiBSYW5nZTogWyAx
IDogMl4zMCBdICovCisgICAgcmNfbXVsdDFfUTMwID0gc2lsa19TVUIzMiggU0lMS19GSVhfQ09O
U1QoIDEsIDMwICksIHNpbGtfU01NVUwoIHJjX1EzMSwgcmNfUTMxICkgKTsKKworICAgIC8qIFVw
ZGF0ZSBpbnZlcnNlIGdhaW4gKi8KKyAgICAvKiBSYW5nZTogWyAwIDogMl4zMCBdICovCisgICAg
aW52R2Fpbl9RMzAgPSBzaWxrX0xTSElGVCggc2lsa19TTU1VTCggaW52R2Fpbl9RMzAsIHJjX211
bHQxX1EzMCApLCAyICk7CisgICAgc2lsa19hc3NlcnQoIGludkdhaW5fUTMwID49IDAgICAgICAg
ICAgICk7CisgICAgc2lsa19hc3NlcnQoIGludkdhaW5fUTMwIDw9ICggMSA8PCAzMCApICk7Cisg
ICAgaWYoIGludkdhaW5fUTMwIDwgU0lMS19GSVhfQ09OU1QoIDEuMGYgLyBNQVhfUFJFRElDVElP
Tl9QT1dFUl9HQUlOLCAzMCApICkgeworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBy
ZXR1cm4gaW52R2Fpbl9RMzA7Cit9CisKKy8qIEZvciBpbnB1dCBpbiBRMTIgZG9tYWluICovCitv
cHVzX2ludDMyIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX25lb24oICAgICAgICAgLyogTyAg
IFJldHVybnMgaW52ZXJzZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAg
ICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqQV9RMTIsICAgICAgICAg
ICAgIC8qIEkgICBQcmVkaWN0aW9uIGNvZWZmaWNpZW50cywgUTEyIFtvcmRlcl0gICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3JkZXIg
ICAgICAgICAgICAgICAvKiBJICAgUHJlZGljdGlvbiBvcmRlciAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCispCit7CisjaWZkZWYgT1BVU19DSEVDS19BU00K
KyAgICBjb25zdCBvcHVzX2ludDMyIGludkdhaW5fUTMwX2MgPSBzaWxrX0xQQ19pbnZlcnNlX3By
ZWRfZ2Fpbl9jKCBBX1ExMiwgb3JkZXIgKTsKKyNlbmRpZgorCisgICAgb3B1c19pbnQzMiBpbnZH
YWluX1EzMDsKKyAgICBpZiggKCBTSUxLX01BWF9PUkRFUl9MUEMgIT0gMjQgKSB8fCAoIG9yZGVy
ICYgMSApKSB7CisgICAgICAgIGludkdhaW5fUTMwID0gc2lsa19MUENfaW52ZXJzZV9wcmVkX2dh
aW5fYyggQV9RMTIsIG9yZGVyICk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBvcHVzX2lu
dDMyIEF0bXBfUUFbIFNJTEtfTUFYX09SREVSX0xQQyBdOworICAgICAgICBvcHVzX2ludDMyIERD
X3Jlc3A7CisgICAgICAgIGludDE2eDhfdCAgdDBfczE2eDgsIHQxX3MxNng4LCB0Ml9zMTZ4ODsK
KyAgICAgICAgaW50MzJ4NF90ICB0MF9zMzJ4NDsKKyAgICAgICAgY29uc3Qgb3B1c19pbnQgbGVm
dG92ZXIgPSBvcmRlciAmIDc7CisKKyAgICAgICAgLyogSW5jcmVhc2UgUSBkb21haW4gb2YgdGhl
IEFSIGNvZWZmaWNpZW50cyAqLworICAgICAgICB0MF9zMTZ4OCA9IHZsZDFxX3MxNiggQV9RMTIg
KyAgMCApOworICAgICAgICB0MV9zMTZ4OCA9IHZsZDFxX3MxNiggQV9RMTIgKyAgOCApOworICAg
ICAgICB0Ml9zMTZ4OCA9IHZsZDFxX3MxNiggQV9RMTIgKyAxNiApOworICAgICAgICB0MF9zMzJ4
NCA9IHZwYWRkbHFfczE2KCB0MF9zMTZ4OCApOworCisgICAgICAgIHN3aXRjaCggb3JkZXIgLSBs
ZWZ0b3ZlciApCisgICAgICAgIHsKKyAgICAgICAgY2FzZSAyNDoKKyAgICAgICAgICAgIHQwX3Mz
Mng0ID0gdnBhZGFscV9zMTYoIHQwX3MzMng0LCB0Ml9zMTZ4OCApOworICAgICAgICAgICAgLyog
SW50ZW5kIHRvIGZhbGwgdGhyb3VnaCAqLworCisgICAgICAgIGNhc2UgMTY6CisgICAgICAgICAg
ICB0MF9zMzJ4NCA9IHZwYWRhbHFfczE2KCB0MF9zMzJ4NCwgdDFfczE2eDggKTsKKyAgICAgICAg
ICAgIHZzdDFxX3MzMiggQXRtcF9RQSArIDE2LCB2c2hsbF9uX3MxNiggdmdldF9sb3dfczE2ICgg
dDJfczE2eDggKSwgUUEgLSAxMiApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIEF0bXBfUUEg
KyAyMCwgdnNobGxfbl9zMTYoIHZnZXRfaGlnaF9zMTYoIHQyX3MxNng4ICksIFFBIC0gMTIgKSAp
OworICAgICAgICAgICAgLyogSW50ZW5kIHRvIGZhbGwgdGhyb3VnaCAqLworCisgICAgICAgIGNh
c2UgODoKKyAgICAgICAgeworICAgICAgICAgICAgY29uc3QgaW50MzJ4Ml90IHRfczMyeDIgPSB2
cGFkZF9zMzIoIHZnZXRfbG93X3MzMiggdDBfczMyeDQgKSwgdmdldF9oaWdoX3MzMiggdDBfczMy
eDQgKSApOworICAgICAgICAgICAgY29uc3QgaW50NjR4MV90IHRfczY0eDEgPSB2cGFkZGxfczMy
KCB0X3MzMngyICk7CisgICAgICAgICAgICBEQ19yZXNwID0gdmdldF9sYW5lX3MzMiggdnJlaW50
ZXJwcmV0X3MzMl9zNjQoIHRfczY0eDEgKSwgMCApOworICAgICAgICAgICAgdnN0MXFfczMyKCBB
dG1wX1FBICsgIDgsIHZzaGxsX25fczE2KCB2Z2V0X2xvd19zMTYgKCB0MV9zMTZ4OCApLCBRQSAt
IDEyICkgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggQXRtcF9RQSArIDEyLCB2c2hsbF9uX3Mx
NiggdmdldF9oaWdoX3MxNiggdDFfczE2eDggKSwgUUEgLSAxMiApICk7CisgICAgICAgIH0KKyAg
ICAgICAgYnJlYWs7CisKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIERDX3Jlc3AgPSAw
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgQV9RMTIgKz0gb3JkZXIg
LSBsZWZ0b3ZlcjsKKworICAgICAgICBzd2l0Y2goIGxlZnRvdmVyICkKKyAgICAgICAgeworICAg
ICAgICBjYXNlIDY6CisgICAgICAgICAgICBEQ19yZXNwICs9IChvcHVzX2ludDMyKUFfUTEyWyA1
IF07CisgICAgICAgICAgICBEQ19yZXNwICs9IChvcHVzX2ludDMyKUFfUTEyWyA0IF07CisgICAg
ICAgICAgICAvKiBJbnRlbmQgdG8gZmFsbCB0aHJvdWdoICovCisKKyAgICAgICAgY2FzZSA0Ogor
ICAgICAgICAgICAgRENfcmVzcCArPSAob3B1c19pbnQzMilBX1ExMlsgMyBdOworICAgICAgICAg
ICAgRENfcmVzcCArPSAob3B1c19pbnQzMilBX1ExMlsgMiBdOworICAgICAgICAgICAgLyogSW50
ZW5kIHRvIGZhbGwgdGhyb3VnaCAqLworCisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIERD
X3Jlc3AgKz0gKG9wdXNfaW50MzIpQV9RMTJbIDEgXTsKKyAgICAgICAgICAgIERDX3Jlc3AgKz0g
KG9wdXNfaW50MzIpQV9RMTJbIDAgXTsKKyAgICAgICAgICAgIC8qIEludGVuZCB0byBmYWxsIHRo
cm91Z2ggKi8KKworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IH0KKworICAgICAgICAvKiBJZiB0aGUgREMgaXMgdW5zdGFibGUsIHdlIGRvbid0IGV2ZW4gbmVl
ZCB0byBkbyB0aGUgZnVsbCBjYWxjdWxhdGlvbnMgKi8KKyAgICAgICAgaWYoIERDX3Jlc3AgPj0g
NDA5NiApIHsKKyAgICAgICAgICAgIGludkdhaW5fUTMwID0gMDsKKyAgICAgICAgfSBlbHNlIHsK
KyAgICAgICAgICAgIHZzdDFxX3MzMiggQXRtcF9RQSArIDAsIHZzaGxsX25fczE2KCB2Z2V0X2xv
d19zMTYgKCB0MF9zMTZ4OCApLCBRQSAtIDEyICkgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMigg
QXRtcF9RQSArIDQsIHZzaGxsX25fczE2KCB2Z2V0X2hpZ2hfczE2KCB0MF9zMTZ4OCApLCBRQSAt
IDEyICkgKTsKKyAgICAgICAgICAgIGludkdhaW5fUTMwID0gTFBDX2ludmVyc2VfcHJlZF9nYWlu
X1FBX25lb24oIEF0bXBfUUEsIG9yZGVyICk7CisgICAgICAgIH0KKyAgICB9CisKKyNpZmRlZiBP
UFVTX0NIRUNLX0FTTQorICAgIHNpbGtfYXNzZXJ0KCBpbnZHYWluX1EzMF9jID09IGludkdhaW5f
UTMwICk7CisjZW5kaWYKKworICAgIHJldHVybiBpbnZHYWluX1EzMDsKK30KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9hcm0vTlNRX2RlbF9kZWNfYXJtLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL05TUV9kZWxfZGVjX2FybS5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjllNzZlMTY5Mjc5OWI0MmYzZWI0NDNhYmI0N2FkMzcyMmE1MWYyYzQKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvYXJtL05TUV9kZWxfZGVjX2FybS5oCkBAIC0wLDAgKzEsMTAwIEBA
CisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioKK0NvcHlyaWdodCAoYykgMjAxNyBHb29nbGUgSW5jLgorUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2ll
dHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJp
YnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2
ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVy
bWlzc2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
IE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2lm
bmRlZiBTSUxLX05TUV9ERUxfREVDX0FSTV9ICisjZGVmaW5lIFNJTEtfTlNRX0RFTF9ERUNfQVJN
X0gKKworI2luY2x1ZGUgImNlbHQvYXJtL2FybWNwdS5oIgorCisjaWYgZGVmaW5lZChPUFVTX0FS
TV9NQVlfSEFWRV9ORU9OX0lOVFIpCit2b2lkIHNpbGtfTlNRX2RlbF9kZWNfbmVvbigKKyAgICBj
b25zdCBzaWxrX2VuY29kZXJfc3RhdGUgKnBzRW5jQywgc2lsa19uc3Ffc3RhdGUgKk5TUSwKKyAg
ICBTaWRlSW5mb0luZGljZXMgKnBzSW5kaWNlcywgY29uc3Qgb3B1c19pbnQxNiB4MTZbXSwgb3B1
c19pbnQ4IHB1bHNlc1tdLAorICAgIGNvbnN0IG9wdXNfaW50MTYgUHJlZENvZWZfUTEyWzIgKiBN
QVhfTFBDX09SREVSXSwKKyAgICBjb25zdCBvcHVzX2ludDE2IExUUENvZWZfUTE0W0xUUF9PUkRF
UiAqIE1BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19pbnQxNiBBUl9RMTNbTUFYX05CX1NV
QkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUl0sCisgICAgY29uc3Qgb3B1c19pbnQgSGFybVNoYXBl
R2Fpbl9RMTRbTUFYX05CX1NVQkZSXSwKKyAgICBjb25zdCBvcHVzX2ludCBUaWx0X1ExNFtNQVhf
TkJfU1VCRlJdLAorICAgIGNvbnN0IG9wdXNfaW50MzIgTEZfc2hwX1ExNFtNQVhfTkJfU1VCRlJd
LAorICAgIGNvbnN0IG9wdXNfaW50MzIgR2FpbnNfUTE2W01BWF9OQl9TVUJGUl0sCisgICAgY29u
c3Qgb3B1c19pbnQgcGl0Y2hMW01BWF9OQl9TVUJGUl0sIGNvbnN0IG9wdXNfaW50IExhbWJkYV9R
MTAsCisgICAgY29uc3Qgb3B1c19pbnQgTFRQX3NjYWxlX1ExNCk7CisKKyNpZiAhZGVmaW5lZChP
UFVTX0hBVkVfUlRDRCkKKyNkZWZpbmUgT1ZFUlJJREVfc2lsa19OU1FfZGVsX2RlYyAoMSkKKyNk
ZWZpbmUgc2lsa19OU1FfZGVsX2RlYyhwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNl
cywgUHJlZENvZWZfUTEyLCAgXAorICAgICAgICAgICAgICAgICAgICAgICAgIExUUENvZWZfUTE0
LCBBUl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgICBcCisgICAgICAgICAgICAg
ICAgICAgICAgICAgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIExhbWJkYV9RMTAsICAg
ICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBMVFBfc2NhbGVfUTE0LCBhcmNoKSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgodm9pZCkoYXJjaCksICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgIFBSRVNVTUVfTkVPTihzaWxrX05TUV9kZWxfZGVjKSggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgIHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHgx
NiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0LCAgICAgXAorICAgICAgICAgQVJf
UTEzLCBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsIExGX3NocF9RMTQsIEdhaW5zX1ExNiwg
cGl0Y2hMLCBcCisgICAgICAgICBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0KSkKKyNlbmRpZgor
I2VuZGlmCisKKyNpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX05TUV9kZWxfZGVjKQorLypJcyBy
dW4tdGltZSBDUFUgZGV0ZWN0aW9uIGVuYWJsZWQgb24gdGhpcyBwbGF0Zm9ybT8qLworI2lmIGRl
ZmluZWQoT1BVU19IQVZFX1JUQ0QpICYmIChkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05f
SU5UUikgJiYgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhZGVmaW5lZChPUFVT
X0FSTV9QUkVTVU1FX05FT05fSU5UUikpCitleHRlcm4gdm9pZCAoKmNvbnN0IFNJTEtfTlNRX0RF
TF9ERUNfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKAorICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9z
dGF0ZSAqcHNFbmNDLCBzaWxrX25zcV9zdGF0ZSAqTlNRLAorICAgIFNpZGVJbmZvSW5kaWNlcyAq
cHNJbmRpY2VzLCBjb25zdCBvcHVzX2ludDE2IHgxNltdLCBvcHVzX2ludDggcHVsc2VzW10sCisg
ICAgY29uc3Qgb3B1c19pbnQxNiBQcmVkQ29lZl9RMTJbMiAqIE1BWF9MUENfT1JERVJdLAorICAg
IGNvbnN0IG9wdXNfaW50MTYgTFRQQ29lZl9RMTRbTFRQX09SREVSICogTUFYX05CX1NVQkZSXSwK
KyAgICBjb25zdCBvcHVzX2ludDE2IEFSX1ExM1tNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBD
X09SREVSXSwKKyAgICBjb25zdCBvcHVzX2ludCBIYXJtU2hhcGVHYWluX1ExNFtNQVhfTkJfU1VC
RlJdLAorICAgIGNvbnN0IG9wdXNfaW50IFRpbHRfUTE0W01BWF9OQl9TVUJGUl0sCisgICAgY29u
c3Qgb3B1c19pbnQzMiBMRl9zaHBfUTE0W01BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19p
bnQzMiBHYWluc19RMTZbTUFYX05CX1NVQkZSXSwKKyAgICBjb25zdCBvcHVzX2ludCBwaXRjaExb
TUFYX05CX1NVQkZSXSwgY29uc3Qgb3B1c19pbnQgTGFtYmRhX1ExMCwKKyAgICBjb25zdCBvcHVz
X2ludCBMVFBfc2NhbGVfUTE0KTsKKyNkZWZpbmUgT1ZFUlJJREVfc2lsa19OU1FfZGVsX2RlYyAo
MSkKKyNkZWZpbmUgc2lsa19OU1FfZGVsX2RlYyhwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYs
IHB1bHNlcywgUHJlZENvZWZfUTEyLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgTFRQQ29l
Zl9RMTQsIEFSX1ExMywgSGFybVNoYXBlR2Fpbl9RMTQsIFRpbHRfUTE0LCAgXAorICAgICAgICAg
ICAgICAgICAgICAgICAgIExGX3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEw
LCAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBMVFBfc2NhbGVfUTE0LCBhcmNo
KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgqU0lMS19OU1FfREVMX0RF
Q19JTVBMWyhhcmNoKSZPUFVTX0FSQ0hNQVNLXSkoICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgICAgICBwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEy
LCBMVFBDb2VmX1ExNCwgICAgIFwKKyAgICAgICAgQVJfUTEzLCBIYXJtU2hhcGVHYWluX1ExNCwg
VGlsdF9RMTQsIExGX3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBcCisgICAgICAgIExhbWJk
YV9RMTAsIExUUF9zY2FsZV9RMTQpKQorI2VsaWYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05F
T05fSU5UUikKKyNkZWZpbmUgT1ZFUlJJREVfc2lsa19OU1FfZGVsX2RlYyAoMSkKKyNkZWZpbmUg
c2lsa19OU1FfZGVsX2RlYyhwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJl
ZENvZWZfUTEyLCAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBMVFBDb2VmX1ExNCwgQVJf
UTEzLCBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsICAgIFwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBpdGNoTCwgTGFtYmRhX1ExMCwgICAgICAg
ICAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBMVFBfc2NhbGVfUTE0LCBhcmNoKSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKHZvaWQpKGFyY2gpLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
ICAgc2lsa19OU1FfZGVsX2RlY19uZW9uKHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVs
c2VzLCBQcmVkQ29lZl9RMTIsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIExUUENvZWZf
UTE0LCBBUl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgIFwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgIExGX3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEw
LCAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIExUUF9zY2FsZV9RMTQpKQor
I2VuZGlmCisjZW5kaWYKKworI2VuZGlmIC8qIGVuZCBTSUxLX05TUV9ERUxfREVDX0FSTV9IICov
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvYXJtL05TUV9kZWxfZGVjX25lb25faW50ci5jIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9O
U1FfZGVsX2RlY19uZW9uX2ludHIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMTI0MTBmMzYyOTI2MzFkMjJkZTVl
YWMyNzJkYTA2OGNmYjhjMTU5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfZGVsX2Rl
Y19uZW9uX2ludHIuYwpAQCAtMCwwICsxLDExMjQgQEAKKy8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorQ29weXJp
Z2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworYXJlIG1ldDoK
Ky0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKK25vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKK2RvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCistIE5l
aXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBu
b3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCitwZXJtaXNzaW9uLgorVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMg
SVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJF
CitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCitDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCitJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCitQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqLworCisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1
ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDxhcm1fbmVvbi5oPgorI2lmZGVmIE9Q
VVNfQ0hFQ0tfQVNNCisjIGluY2x1ZGUgPHN0cmluZy5oPgorI2VuZGlmCisjaW5jbHVkZSAibWFp
bi5oIgorI2luY2x1ZGUgInN0YWNrX2FsbG9jLmgiCisKKy8qIE5FT04gaW50cmluc2ljcyBvcHRp
bWl6YXRpb24gbm93IGNhbiBvbmx5IHBhcmFsbGVsaXplIHVwIHRvIDQgZGVsYXkgZGVjaXNpb24g
c3RhdGVzLiAgICAqLworLyogSWYgdGhlcmUgYXJlIG1vcmUgc3RhdGVzLCBDIGZ1bmN0aW9uIGlz
IGNhbGxlZCwgYW5kIHRoaXMgb3B0aW1pemF0aW9uIG11c3QgYmUgZXhwYW5kZWQuICovCisjZGVm
aW5lIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIDQKKwordHlwZWRlZiBzdHJ1Y3QgeworICAgIG9w
dXNfaW50MzIgc0xQQ19RMTRbIE1BWF9TVUJfRlJBTUVfTEVOR1RIICsgTlNRX0xQQ19CVUZfTEVO
R1RIIF1bIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBSYW5kU3Rh
dGVbIERFQ0lTSU9OX0RFTEFZIF1bICAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAg
IG9wdXNfaW50MzIgUV9RMTBbICAgICBERUNJU0lPTl9ERUxBWSBdWyAgICAgTkVPTl9NQVhfREVM
X0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2ludDMyIFhxX1ExNFsgICAgREVDSVNJT05fREVMQVkg
XVsgICAgIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBQcmVkX1Ex
NVsgIERFQ0lTSU9OX0RFTEFZIF1bICAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAg
IG9wdXNfaW50MzIgU2hhcGVfUTE0WyBERUNJU0lPTl9ERUxBWSBdWyAgICAgTkVPTl9NQVhfREVM
X0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2ludDMyIHNBUjJfUTE0WyBNQVhfU0hBUEVfTFBDX09S
REVSIF1bIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBMRl9BUl9R
MTRbIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBEaWZmX1ExNFsg
IE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBTZWVkWyAgICAgIE5F
T05fTUFYX0RFTF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBTZWVkSW5pdFsgIE5FT05f
TUFYX0RFTF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBSRF9RMTBbICAgIE5FT05fTUFY
X0RFTF9ERUNfU1RBVEVTIF07Cit9IE5TUV9kZWxfZGVjc19zdHJ1Y3Q7CisKK3R5cGVkZWYgc3Ry
dWN0IHsKKyAgICBvcHVzX2ludDMyIFFfUTEwWyAgICAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFU
RVMgXTsKKyAgICBvcHVzX2ludDMyIFJEX1ExMFsgICAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFU
RVMgXTsKKyAgICBvcHVzX2ludDMyIHhxX1ExNFsgICAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFU
RVMgXTsKKyAgICBvcHVzX2ludDMyIExGX0FSX1ExNFsgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFU
RVMgXTsKKyAgICBvcHVzX2ludDMyIERpZmZfUTE0WyAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFU
RVMgXTsKKyAgICBvcHVzX2ludDMyIHNMVFBfc2hwX1ExNFsgTkVPTl9NQVhfREVMX0RFQ19TVEFU
RVMgXTsKKyAgICBvcHVzX2ludDMyIExQQ19leGNfUTE0WyAgTkVPTl9NQVhfREVMX0RFQ19TVEFU
RVMgXTsKK30gTlNRX3NhbXBsZXNfc3RydWN0OworCitzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBz
aWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlc19uZW9uKAorICAgIGNvbnN0IHNpbGtfZW5jb2Rl
cl9zdGF0ZSAqcHNFbmNDLCAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBzaWxrX25zcV9zdGF0ZSAgICAgICpOU1EsICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgTlNRX2RlbF9kZWNzX3N0cnVjdCBwc0RlbERlY1tdLCAgICAgICAgICAgICAg
ICAgLyogSS9PICBEZWxheWVkIGRlY2lzaW9uIHN0YXRlcyAgICAgICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50MTYgICAgeDE2W10sICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5w
dXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAg
ICAgIHhfc2NfUTEwW10sICAgICAgICAgICAgICAgICAvKiBPICAgIElucHV0IHNjYWxlZCB3aXRo
IDEvR2FpbiBpbiBRMTAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICBzTFRQW10sICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBSZS13aGl0ZW5lZCBMVFAgc3RhdGUgaW4gUTAgICAg
ICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgc0xUUF9RMTVbXSwgICAgICAgICAgICAg
ICAgIC8qIE8gICAgTFRQIHN0YXRlIG1hdGNoaW5nIHNjYWxlZCBpbnB1dCAgICAgKi8KKyAgICBv
cHVzX2ludCAgICAgICAgICAgIHN1YmZyLCAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFN1
YmZyYW1lIG51bWJlciAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQg
ICAgICBMVFBfc2NhbGVfUTE0LCAgICAgICAgICAgICAgLyogSSAgICBMVFAgc3RhdGUgc2NhbGlu
ZyAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgR2FpbnNfUTE2
WyBNQVhfTkJfU1VCRlIgXSwgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgIHBpdGNoTFsgTUFYX05CX1NVQkZSIF0s
ICAgICAvKiBJICAgIFBpdGNoIGxhZyAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
Y29uc3Qgb3B1c19pbnQgICAgICBzaWduYWxfdHlwZSwgICAgICAgICAgICAgICAgLyogSSAgICBT
aWduYWwgdHlwZSAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgZGVjaXNpb25EZWxheSAgICAgICAgICAgICAgIC8qIEkgICAgRGVjaXNpb24gZGVsYXkg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyk7CisKKy8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCisvKiBOb2lzZSBzaGFwZSBxdWFudGl6ZXIgZm9yIG9uZSBzdWJm
cmFtZSAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3N0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWNf
bmVvbigKKyAgICBzaWxrX25zcV9zdGF0ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOU1FfZGVs
X2RlY3Nfc3RydWN0IHBzRGVsRGVjW10sICAgICAgICAgICAgIC8qIEkvTyAgRGVsYXllZCBkZWNp
c2lvbiBzdGF0ZXMgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHNpZ25h
bFR5cGUsICAgICAgICAgICAgIC8qIEkgICAgU2lnbmFsIHR5cGUgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgIHhfUTEwW10sICAgICAgICAgICAgICAg
IC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVz
X2ludDggICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAgICAgICAgIC8qIE8gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDE2ICAgICAgICAgIHhx
W10sICAgICAgICAgICAgICAgICAgIC8qIE8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIHNMVFBfUTE1W10sICAgICAgICAg
ICAgIC8qIEkvTyAgTFRQIGZpbHRlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBv
cHVzX2ludDMyICAgICAgICAgIGRlbGF5ZWRHYWluX1ExMFtdLCAgICAgIC8qIEkvTyAgR2FpbiBk
ZWxheSBidWZmZXIgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAg
IGFfUTEyW10sICAgICAgICAgICAgICAgIC8qIEkgICAgU2hvcnQgdGVybSBwcmVkaWN0aW9uIGNv
ZWZzICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIGJfUTE0W10sICAgICAgICAg
ICAgICAgIC8qIEkgICAgTG9uZyB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludDE2ICAgIEFSX3NocF9RMTNbXSwgICAgICAgICAgIC8qIEkgICAgTm9p
c2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAg
ICAgIGxhZywgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUGl0Y2ggbGFnICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIEhhcm1TaGFwZUZJUlBh
Y2tlZF9RMTQsIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBvcHVzX2ludCAgICAgICAgICAgIFRpbHRfUTE0LCAgICAgICAgICAgICAgIC8qIEkgICAg
U3BlY3RyYWwgdGlsdCAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAg
ICAgICAgIExGX3NocF9RMTQsICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIEdhaW5fUTE2LCAg
ICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIExhbWJkYV9RMTAsICAgICAgICAgICAgIC8qIEkg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAg
ICAgICAgICAgIG9mZnNldF9RMTAsICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIGxlbmd0aCwg
ICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgbGVuZ3RoICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHN1YmZyLCAgICAgICAgICAgICAgICAgIC8q
IEkgICAgU3ViZnJhbWUgbnVtYmVyICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2lu
dCAgICAgICAgICAgIHNoYXBpbmdMUENPcmRlciwgICAgICAgIC8qIEkgICAgU2hhcGluZyBMUEMg
ZmlsdGVyIG9yZGVyICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHByZWRp
Y3RMUENPcmRlciwgICAgICAgIC8qIEkgICAgUHJlZGljdGlvbiBmaWx0ZXIgb3JkZXIgICAgICAg
ICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAgICAg
IC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVz
X2ludCAgICAgICAgICAgIG5TdGF0ZXNEZWxheWVkRGVjaXNpb24sIC8qIEkgICAgTnVtYmVyIG9m
IHN0YXRlcyBpbiBkZWNpc2lvbiB0cmVlICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICpz
bXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkvTyAgSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4g
YnVmZmVycyAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIGRlY2lzaW9uRGVsYXkgICAgICAg
ICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyk7CisK
K3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIGNvcHlfd2lubmVyX3N0YXRlX2tlcm5lbCgKKyAgICBj
b25zdCBOU1FfZGVsX2RlY3Nfc3RydWN0ICpwc0RlbERlYywKKyAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgIG9mZnNldCwKKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgIGxhc3Rfc21w
bGVfaWR4LAorICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgV2lubmVyX2luZCwKKyAgICBj
b25zdCBpbnQzMngyX3QgICAgICAgICAgIGdhaW5fbG9fczMyeDIsCisgICAgY29uc3QgaW50MzJ4
Ml90ICAgICAgICAgICBnYWluX2hpX3MzMngyLAorICAgIGNvbnN0IGludDMyeDRfdCAgICAgICAg
ICAgc2hpZnRfczMyeDQsCisgICAgaW50MzJ4NF90ICAgICAgICAgICAgICAgICB0MF9zMzJ4NCwK
KyAgICBpbnQzMng0X3QgICAgICAgICAgICAgICAgIHQxX3MzMng0LAorICAgIG9wdXNfaW50OCAq
Y29uc3QgICAgICAgICAgcHVsc2VzLAorICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKnB4
cSwKKyAgICBzaWxrX25zcV9zdGF0ZSAgICAgICAgICAgICpOU1EKKykKK3sKKyAgICBpbnQxNng4
X3QgdF9zMTZ4ODsKKyAgICBpbnQzMng0X3QgbzBfczMyeDQsIG8xX3MzMng0OworCisgICAgdDBf
czMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5RX1ExMFsgbGFzdF9zbXBsZV9pZHgg
LSAwIF1bIFdpbm5lcl9pbmQgXSwgdDBfczMyeDQsIDAgKTsKKyAgICB0MF9zMzJ4NCA9IHZsZDFx
X2xhbmVfczMyKCAmcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCAtIDEgXVsgV2lubmVy
X2luZCBdLCB0MF9zMzJ4NCwgMSApOworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZw
c0RlbERlYy0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4IC0gMiBdWyBXaW5uZXJfaW5kIF0sIHQwX3Mz
Mng0LCAyICk7CisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5RX1Ex
MFsgbGFzdF9zbXBsZV9pZHggLSAzIF1bIFdpbm5lcl9pbmQgXSwgdDBfczMyeDQsIDMgKTsKKyAg
ICB0MV9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxl
X2lkeCAtIDQgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMCApOworICAgIHQxX3MzMng0ID0g
dmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4IC0gNSBdWyBX
aW5uZXJfaW5kIF0sIHQxX3MzMng0LCAxICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3Mz
MiggJnBzRGVsRGVjLT5RX1ExMFsgbGFzdF9zbXBsZV9pZHggLSA2IF1bIFdpbm5lcl9pbmQgXSwg
dDFfczMyeDQsIDIgKTsKKyAgICB0MV9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMt
PlFfUTEwWyBsYXN0X3NtcGxlX2lkeCAtIDcgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMyAp
OworICAgIHRfczE2eDggPSB2Y29tYmluZV9zMTYoIHZyc2hybl9uX3MzMiggdDBfczMyeDQsIDEw
ICksIHZyc2hybl9uX3MzMiggdDFfczMyeDQsIDEwICkgKTsKKyAgICB2c3QxX3M4KCAmcHVsc2Vz
WyBvZmZzZXQgXSwgdm1vdm5fczE2KCB0X3MxNng4ICkgKTsKKworICAgIHQwX3MzMng0ID0gdmxk
MXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDAgXVsgV2lu
bmVyX2luZCBdLCB0MF9zMzJ4NCwgMCApOworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIo
ICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDEgXVsgV2lubmVyX2luZCBdLCB0
MF9zMzJ4NCwgMSApOworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+
WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDIgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMiAp
OworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0
X3NtcGxlX2lkeCAtIDMgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMyApOworICAgIHQxX3Mz
Mng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAt
IDQgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMCApOworICAgIHQxX3MzMng0ID0gdmxkMXFf
bGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDUgXVsgV2lubmVy
X2luZCBdLCB0MV9zMzJ4NCwgMSApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZw
c0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDYgXVsgV2lubmVyX2luZCBdLCB0MV9z
MzJ4NCwgMiApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFf
UTE0WyBsYXN0X3NtcGxlX2lkeCAtIDcgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMyApOwor
ICAgIG8wX3MzMng0ID0gdnFkbXVsaHFfbGFuZV9zMzIoIHQwX3MzMng0LCBnYWluX2xvX3MzMngy
LCAwICk7CisgICAgbzFfczMyeDQgPSB2cWRtdWxocV9sYW5lX3MzMiggdDFfczMyeDQsIGdhaW5f
bG9fczMyeDIsIDAgKTsKKyAgICBvMF9zMzJ4NCA9IHZtbGFxX2xhbmVfczMyKCBvMF9zMzJ4NCwg
dDBfczMyeDQsIGdhaW5faGlfczMyeDIsIDAgKTsKKyAgICBvMV9zMzJ4NCA9IHZtbGFxX2xhbmVf
czMyKCBvMV9zMzJ4NCwgdDFfczMyeDQsIGdhaW5faGlfczMyeDIsIDAgKTsKKyAgICBvMF9zMzJ4
NCA9IHZyc2hscV9zMzIoIG8wX3MzMng0LCBzaGlmdF9zMzJ4NCApOworICAgIG8xX3MzMng0ID0g
dnJzaGxxX3MzMiggbzFfczMyeDQsIHNoaWZ0X3MzMng0ICk7CisgICAgdnN0MV9zMTYoICZweHFb
IG9mZnNldCArIDAgXSwgdnFtb3ZuX3MzMiggbzBfczMyeDQgKSApOworICAgIHZzdDFfczE2KCAm
cHhxWyBvZmZzZXQgKyA0IF0sIHZxbW92bl9zMzIoIG8xX3MzMng0ICkgKTsKKworICAgIHQwX3Mz
Mng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lk
eCAtIDAgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMCApOworICAgIHQwX3MzMng0ID0gdmxk
MXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDEgXVsg
V2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMSApOworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9z
MzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDIgXVsgV2lubmVyX2lu
ZCBdLCB0MF9zMzJ4NCwgMiApOworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0Rl
bERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDMgXVsgV2lubmVyX2luZCBdLCB0MF9z
MzJ4NCwgMyApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hh
cGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDQgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMCAp
OworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBs
YXN0X3NtcGxlX2lkeCAtIDUgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMSApOworICAgIHQx
X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxl
X2lkeCAtIDYgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMiApOworICAgIHQxX3MzMng0ID0g
dmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDcg
XVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMyApOworICAgIHZzdDFxX3MzMiggJk5TUS0+c0xU
UF9zaHBfUTE0WyBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggKyBvZmZzZXQgKyAwIF0sIHQwX3MzMng0
ICk7CisgICAgdnN0MXFfczMyKCAmTlNRLT5zTFRQX3NocF9RMTRbIE5TUS0+c0xUUF9zaHBfYnVm
X2lkeCArIG9mZnNldCArIDQgXSwgdDFfczMyeDQgKTsKK30KKworc3RhdGljIE9QVVNfSU5MSU5F
IHZvaWQgY29weV93aW5uZXJfc3RhdGUoCisgICAgY29uc3QgTlNRX2RlbF9kZWNzX3N0cnVjdCAq
cHNEZWxEZWMsCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICBkZWNpc2lvbkRlbGF5LAor
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgc21wbF9idWZfaWR4LAorICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgV2lubmVyX2luZCwKKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAg
ICAgIGdhaW4sCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICBzaGlmdCwKKyAgICBvcHVz
X2ludDggKmNvbnN0ICAgICAgICAgIHB1bHNlcywKKyAgICBvcHVzX2ludDE2ICAgICAgICAgICAg
ICAgICpweHEsCisgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAqTlNRCispCit7CisgICAg
b3B1c19pbnQgICAgICAgIGksIGxhc3Rfc21wbGVfaWR4OworICAgIGNvbnN0IGludDMyeDJfdCBn
YWluX2xvX3MzMngyID0gdmR1cF9uX3MzMiggc2lsa19MU0hJRlQzMiggZ2FpbiAmIDB4MDAwMEZG
RkYsIDE1ICkgKTsKKyAgICBjb25zdCBpbnQzMngyX3QgZ2Fpbl9oaV9zMzJ4MiA9IHZkdXBfbl9z
MzIoIGdhaW4gPj4gMTYgKTsKKyAgICBjb25zdCBpbnQzMng0X3Qgc2hpZnRfczMyeDQgPSB2ZHVw
cV9uX3MzMiggLXNoaWZ0ICk7CisgICAgaW50MzJ4NF90ICAgICAgIHQwX3MzMng0LCB0MV9zMzJ4
NDsKKworICAgIHQwX3MzMng0ID0gdDFfczMyeDQgPSB2ZHVwcV9uX3MzMiggMCApOyAvKiBpbml0
aWFsaXphdGlvbiAqLworICAgIGxhc3Rfc21wbGVfaWR4ID0gc21wbF9idWZfaWR4ICsgZGVjaXNp
b25EZWxheSAtIDEgKyBERUNJU0lPTl9ERUxBWTsKKyAgICBpZiggbGFzdF9zbXBsZV9pZHggPj0g
REVDSVNJT05fREVMQVkgKSBsYXN0X3NtcGxlX2lkeCAtPSBERUNJU0lPTl9ERUxBWTsKKyAgICBp
ZiggbGFzdF9zbXBsZV9pZHggPj0gREVDSVNJT05fREVMQVkgKSBsYXN0X3NtcGxlX2lkeCAtPSBE
RUNJU0lPTl9ERUxBWTsKKworICAgIGZvciggaSA9IDA7ICggaSA8ICggZGVjaXNpb25EZWxheSAt
IDcgKSApICYmICggbGFzdF9zbXBsZV9pZHggPj0gNyApOyBpICs9IDgsIGxhc3Rfc21wbGVfaWR4
IC09IDggKSB7CisgICAgICAgIGNvcHlfd2lubmVyX3N0YXRlX2tlcm5lbCggcHNEZWxEZWMsIGkg
LSBkZWNpc2lvbkRlbGF5LCBsYXN0X3NtcGxlX2lkeCwgV2lubmVyX2luZCwgZ2Fpbl9sb19zMzJ4
MiwgZ2Fpbl9oaV9zMzJ4Miwgc2hpZnRfczMyeDQsIHQwX3MzMng0LCB0MV9zMzJ4NCwgcHVsc2Vz
LCBweHEsIE5TUSApOworICAgIH0KKyAgICBmb3IoIDsgKCBpIDwgZGVjaXNpb25EZWxheSApICYm
ICggbGFzdF9zbXBsZV9pZHggPj0gMCApOyBpKyssIGxhc3Rfc21wbGVfaWR4LS0gKSB7CisgICAg
ICAgIHB1bHNlc1sgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDgpc2lsa19SU0hJRlRf
Uk9VTkQoIHBzRGVsRGVjLT5RX1ExMFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdLCAx
MCApOworICAgICAgICBweHFbIGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQxNilzaWxr
X1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCggc2lsa19TTVVMV1coIHBzRGVsRGVjLT5YcV9RMTRb
IGxhc3Rfc21wbGVfaWR4IF1bIFdpbm5lcl9pbmQgXSwgZ2FpbiApLCBzaGlmdCApICk7CisgICAg
ICAgIE5TUS0+c0xUUF9zaHBfUTE0WyBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggLSBkZWNpc2lvbkRl
bGF5ICsgaSBdID0gcHNEZWxEZWMtPlNoYXBlX1ExNFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVy
X2luZCBdOworICAgIH0KKworICAgIGxhc3Rfc21wbGVfaWR4ICs9IERFQ0lTSU9OX0RFTEFZOwor
ICAgIGZvciggOyBpIDwgKCBkZWNpc2lvbkRlbGF5IC0gNyApOyBpKyssIGxhc3Rfc21wbGVfaWR4
LS0gKSB7CisgICAgICAgIGNvcHlfd2lubmVyX3N0YXRlX2tlcm5lbCggcHNEZWxEZWMsIGkgLSBk
ZWNpc2lvbkRlbGF5LCBsYXN0X3NtcGxlX2lkeCwgV2lubmVyX2luZCwgZ2Fpbl9sb19zMzJ4Miwg
Z2Fpbl9oaV9zMzJ4Miwgc2hpZnRfczMyeDQsIHQwX3MzMng0LCB0MV9zMzJ4NCwgcHVsc2VzLCBw
eHEsIE5TUSApOworICAgIH0KKyAgICBmb3IoIDsgaSA8IGRlY2lzaW9uRGVsYXk7IGkrKywgbGFz
dF9zbXBsZV9pZHgtLSApIHsKKyAgICAgICAgcHVsc2VzWyBpIC0gZGVjaXNpb25EZWxheSBdID0g
KG9wdXNfaW50OClzaWxrX1JTSElGVF9ST1VORCggcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxl
X2lkeCBdWyBXaW5uZXJfaW5kIF0sIDEwICk7CisgICAgICAgIHB4cVsgaSAtIGRlY2lzaW9uRGVs
YXkgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX1NN
VUxXVyggcHNEZWxEZWMtPlhxX1ExNFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdLCBn
YWluICksIHNoaWZ0ICkgKTsKKyAgICAgICAgTlNRLT5zTFRQX3NocF9RMTRbIE5TUS0+c0xUUF9z
aHBfYnVmX2lkeCAtIGRlY2lzaW9uRGVsYXkgKyBpIF0gPSBwc0RlbERlYy0+U2hhcGVfUTE0WyBs
YXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5kIF07CisgICAgfQorfQorCit2b2lkIHNpbGtfTlNR
X2RlbF9kZWNfbmVvbigKKyAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgICAgKnBzRW5jQywg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEVuY29kZXIgU3RhdGUg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBzaWxrX25zcV9zdGF0ZSAgICAgICAgICAgICAgKk5T
USwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0
ZSAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBTaWRlSW5mb0luZGljZXMgICAgICAgICAg
ICAgKnBzSW5kaWNlcywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFF1
YW50aXphdGlvbiBJbmRpY2VzICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgeDE2W10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIElucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDggICAg
ICAgICAgICAgICAgICAgcHVsc2VzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBPICAgIFF1YW50aXplZCBwdWxzZSBzaWduYWwgICAgICAgICAgKi8KKyAgICBjb25zdCBv
cHVzX2ludDE2ICAgICAgICAgICAgUHJlZENvZWZfUTEyWyAyICogTUFYX0xQQ19PUkRFUiBdLCAg
ICAgICAgICAvKiBJICAgIFNob3J0IHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAgKi8KKyAgICBj
b25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgTFRQQ29lZl9RMTRbIExUUF9PUkRFUiAqIE1BWF9O
Ql9TVUJGUiBdLCAgICAvKiBJICAgIExvbmcgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgQVJfUTEzWyBNQVhfTkJfU1VCRlIgKiBN
QVhfU0hBUEVfTFBDX09SREVSIF0sIC8qIEkgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAg
ICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgSGFybVNoYXBlR2Fpbl9RMTRb
IE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAvKiBJICAgIExvbmcgdGVybSBzaGFwaW5nIGNvZWZz
ICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgVGlsdF9RMTRbIE1B
WF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNwZWN0cmFsIHRpbHQgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgTEZfc2hw
X1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAvKiBJICAgIExvdyBmcmVxdWVu
Y3kgc2hhcGluZyBjb2VmcyAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAg
R2FpbnNfUTE2WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAvKiBJICAgIFF1YW50
aXphdGlvbiBzdGVwIHNpemVzICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAg
ICAgICAgcGl0Y2hMWyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IFBpdGNoIGxhZ3MgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgTGFtYmRhX1ExMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIFJhdGUvZGlzdG9ydGlvbiB0cmFkZW9mZiAgICAgICAgKi8KKyAgICBjb25zdCBvcHVz
X2ludCAgICAgICAgICAgICAgTFRQX3NjYWxlX1ExNCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIExUUCBzdGF0ZSBzY2FsaW5nICAgICAgICAgICAgICAgKi8KKykKK3sKKyNp
ZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIHNpbGtfbnNxX3N0YXRlIE5TUV9jOworICAgIFNpZGVJ
bmZvSW5kaWNlcyBwc0luZGljZXNfYzsKKyAgICBvcHVzX2ludDggcHVsc2VzX2NbIE1BWF9GUkFN
RV9MRU5HVEggXTsKKyAgICBjb25zdCBvcHVzX2ludDggKmNvbnN0IHB1bHNlc19hID0gcHVsc2Vz
OworCisgICAgKCB2b2lkIClwdWxzZXNfYTsKKyAgICBzaWxrX21lbWNweSggJk5TUV9jLCBOU1Es
IHNpemVvZiggTlNRX2MgKSApOworICAgIHNpbGtfbWVtY3B5KCAmcHNJbmRpY2VzX2MsIHBzSW5k
aWNlcywgc2l6ZW9mKCBwc0luZGljZXNfYyApICk7CisgICAgc2lsa19tZW1jcHkoIHB1bHNlc19j
LCBwdWxzZXMsIHNpemVvZiggcHVsc2VzX2MgKSApOworICAgIHNpbGtfTlNRX2RlbF9kZWNfYygg
cHNFbmNDLCAmTlNRX2MsICZwc0luZGljZXNfYywgeDE2LCBwdWxzZXNfYywgUHJlZENvZWZfUTEy
LCBMVFBDb2VmX1ExNCwgQVJfUTEzLCBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsIExGX3No
cF9RMTQsIEdhaW5zX1ExNiwKKyAgICAgICAgICAgICAgICAgICAgICAgcGl0Y2hMLCBMYW1iZGFf
UTEwLCBMVFBfc2NhbGVfUTE0ICk7CisjZW5kaWYKKworICAgIC8qIFRoZSBvcHRpbWl6YXRpb24g
cGFyYWxsZWxpemVzIHRoZSBkaWZmZXJlbnQgZGVsYXkgZGVjaXNpb24gc3RhdGVzLiAqLworICAg
IGlmKCggcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lzaW9uID4gTkVPTl9NQVhfREVMX0RFQ19T
VEFURVMgKSB8fCAoIHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbiA8PSAyICkpIHsKKyAg
ICAgICAgLyogTkVPTiBpbnRyaW5zaWNzIG9wdGltaXphdGlvbiBub3cgY2FuIG9ubHkgcGFyYWxs
ZWxpemUgdXAgdG8gNCBkZWxheSBkZWNpc2lvbiBzdGF0ZXMuICAgICovCisgICAgICAgIC8qIElm
IHRoZXJlIGFyZSBtb3JlIHN0YXRlcywgQyBmdW5jdGlvbiBpcyBjYWxsZWQsIGFuZCB0aGlzIG9w
dGltaXphdGlvbiBtdXN0IGJlIGV4cGFuZGVkLiAqLworICAgICAgICAvKiBXaGVuIHRoZSBudW1i
ZXIgb2YgZGVsYXkgZGVjaXNpb24gc3RhdGVzIGlzIGxlc3MgdGhhbiAzLCB0aGVyZSBhcmUgcGVu
YWx0aWVzIHVzaW5nIHRoaXMgKi8KKyAgICAgICAgLyogb3B0aW1pemF0aW9uLCBhbmQgQyBmdW5j
dGlvbiBpcyBjYWxsZWQuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgICAgIC8qIFdoZW4gdGhlIG51bWJlciBvZiBkZWxheSBkZWNpc2lvbiBz
dGF0ZXMgaXMgMiwgaXQncyBiZXR0ZXIgdG8gc3BlY2lhbGl6ZSBhbm90aGVyICAgICAgICAqLwor
ICAgICAgICAvKiBzdHJ1Y3R1cmUgTlNRX2RlbF9kZWMyX3N0cnVjdCBhbmQgb3B0aW1pemUgd2l0
aCBzaG9ydGVyIE5FT04gcmVnaXN0ZXJzLiAoTG93IHByaW9yaXR5KSAgKi8KKyAgICAgICAgc2ls
a19OU1FfZGVsX2RlY19jKCBwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJl
ZENvZWZfUTEyLCBMVFBDb2VmX1ExNCwgQVJfUTEzLCBIYXJtU2hhcGVHYWluX1ExNCwKKyAgICAg
ICAgICAgIFRpbHRfUTE0LCBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBpdGNoTCwgTGFtYmRhX1Ex
MCwgTFRQX3NjYWxlX1ExNCApOworICAgIH0gZWxzZSB7CisgICAgICAgIG9wdXNfaW50ICAgICAg
ICAgICAgaSwgaywgbGFnLCBzdGFydF9pZHgsIExTRl9pbnRlcnBvbGF0aW9uX2ZsYWcsIFdpbm5l
cl9pbmQsIHN1YmZyOworICAgICAgICBvcHVzX2ludCAgICAgICAgICAgIHNtcGxfYnVmX2lkeCwg
ZGVjaXNpb25EZWxheTsKKyAgICAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAqQV9RMTIsICpCX1Ex
NCwgKkFSX3NocF9RMTM7CisgICAgICAgIG9wdXNfaW50MTYgICAgICAgICAgKnB4cTsKKyAgICAg
ICAgVkFSREVDTCggb3B1c19pbnQzMiwgc0xUUF9RMTUgKTsKKyAgICAgICAgVkFSREVDTCggb3B1
c19pbnQxNiwgc0xUUCApOworICAgICAgICBvcHVzX2ludDMyICAgICAgICAgIEhhcm1TaGFwZUZJ
UlBhY2tlZF9RMTQ7CisgICAgICAgIG9wdXNfaW50ICAgICAgICAgICAgb2Zmc2V0X1ExMDsKKyAg
ICAgICAgb3B1c19pbnQzMiAgICAgICAgICBSRG1pbl9RMTAsIEdhaW5fUTEwOworICAgICAgICBW
QVJERUNMKCBvcHVzX2ludDMyLCB4X3NjX1ExMCApOworICAgICAgICBWQVJERUNMKCBvcHVzX2lu
dDMyLCBkZWxheWVkR2Fpbl9RMTAgKTsKKyAgICAgICAgVkFSREVDTCggTlNRX2RlbF9kZWNzX3N0
cnVjdCwgcHNEZWxEZWMgKTsKKyAgICAgICAgaW50MzJ4NF90ICAgICAgICAgICB0X3MzMng0Owor
ICAgICAgICBTQVZFX1NUQUNLOworCisgICAgICAgIC8qIFNldCB1bnZvaWNlZCBsYWcgdG8gdGhl
IHByZXZpb3VzIG9uZSwgb3ZlcndyaXRlIGxhdGVyIGZvciB2b2ljZWQgKi8KKyAgICAgICAgbGFn
ID0gTlNRLT5sYWdQcmV2OworCisgICAgICAgIHNpbGtfYXNzZXJ0KCBOU1EtPnByZXZfZ2Fpbl9R
MTYgIT0gMCApOworCisgICAgICAgIC8qIEluaXRpYWxpemUgZGVsYXllZCBkZWNpc2lvbiBzdGF0
ZXMgKi8KKyAgICAgICAgQUxMT0MoIHBzRGVsRGVjLCAxLCBOU1FfZGVsX2RlY3Nfc3RydWN0ICk7
CisgICAgICAgIC8qIE9ubHkgUmFuZFN0YXRlIGFuZCBSRF9RMTAgbmVlZCB0byBiZSBpbml0aWFs
aXplZCB0byAwLiAqLworICAgICAgICBzaWxrX21lbXNldCggcHNEZWxEZWMtPlJhbmRTdGF0ZSwg
MCwgc2l6ZW9mKCBwc0RlbERlYy0+UmFuZFN0YXRlICkgKTsKKyAgICAgICAgdnN0MXFfczMyKCBw
c0RlbERlYy0+UkRfUTEwLCB2ZHVwcV9uX3MzMiggMCApICk7CisKKyAgICAgICAgZm9yKCBrID0g
MDsgayA8IHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbjsgaysrICkgeworICAgICAgICAg
ICAgcHNEZWxEZWMtPlNlZWRJbml0WyBrIF0gPSBwc0RlbERlYy0+U2VlZFsgayBdID0gKCBrICsg
cHNJbmRpY2VzLT5TZWVkICkgJiAzOworICAgICAgICB9CisgICAgICAgIHZzdDFxX3MzMiggcHNE
ZWxEZWMtPkxGX0FSX1ExNCwgdmxkMXFfZHVwX3MzMiggJk5TUS0+c0xGX0FSX3NocF9RMTQgKSAp
OworICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5EaWZmX1ExNCwgdmxkMXFfZHVwX3MzMigg
Jk5TUS0+c0RpZmZfc2hwX1ExNCApICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlNo
YXBlX1ExNFsgMCBdLCB2bGQxcV9kdXBfczMyKCAmTlNRLT5zTFRQX3NocF9RMTRbIHBzRW5jQy0+
bHRwX21lbV9sZW5ndGggLSAxIF0gKSApOworICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTlNRX0xQ
Q19CVUZfTEVOR1RIOyBpKysgKSB7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5z
TFBDX1ExNFsgaSBdLCB2bGQxcV9kdXBfczMyKCAmTlNRLT5zTFBDX1ExNFsgaSBdICkgKTsKKyAg
ICAgICAgfQorICAgICAgICBmb3IoIGkgPSAwOyBpIDwgKG9wdXNfaW50KSggc2l6ZW9mKCBOU1Et
PnNBUjJfUTE0ICkgLyBzaXplb2YoIE5TUS0+c0FSMl9RMTRbIDAgXSApICk7IGkrKyApIHsKKyAg
ICAgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyBpIF0sIHZsZDFxX2R1cF9z
MzIoICZOU1EtPnNBUjJfUTE0WyBpIF0gKSApOworICAgICAgICB9CisKKyAgICAgICAgb2Zmc2V0
X1ExMCAgID0gc2lsa19RdWFudGl6YXRpb25fT2Zmc2V0c19RMTBbIHBzSW5kaWNlcy0+c2lnbmFs
VHlwZSA+PiAxIF1bIHBzSW5kaWNlcy0+cXVhbnRPZmZzZXRUeXBlIF07CisgICAgICAgIHNtcGxf
YnVmX2lkeCA9IDA7IC8qIGluZGV4IG9mIG9sZGVzdCBzYW1wbGVzICovCisKKyAgICAgICAgZGVj
aXNpb25EZWxheSA9IHNpbGtfbWluX2ludCggREVDSVNJT05fREVMQVksIHBzRW5jQy0+c3ViZnJf
bGVuZ3RoICk7CisKKyAgICAgICAgLyogRm9yIHZvaWNlZCBmcmFtZXMgbGltaXQgdGhlIGRlY2lz
aW9uIGRlbGF5IHRvIGxvd2VyIHRoYW4gdGhlIHBpdGNoIGxhZyAqLworICAgICAgICBpZiggcHNJ
bmRpY2VzLT5zaWduYWxUeXBlID09IFRZUEVfVk9JQ0VEICkgeworICAgICAgICAgICAgb3B1c19p
bnQgcGl0Y2hfbWluID0gcGl0Y2hMWyAwIF07CisgICAgICAgICAgICBmb3IoIGsgPSAxOyBrIDwg
cHNFbmNDLT5uYl9zdWJmcjsgaysrICkgeworICAgICAgICAgICAgICAgIHBpdGNoX21pbiA9IHNp
bGtfbWluX2ludCggcGl0Y2hfbWluLCBwaXRjaExbIGsgXSApOworICAgICAgICAgICAgfQorICAg
ICAgICAgICAgZGVjaXNpb25EZWxheSA9IHNpbGtfbWluX2ludCggZGVjaXNpb25EZWxheSwgcGl0
Y2hfbWluIC0gTFRQX09SREVSIC8gMiAtIDEgKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgIGlmKCBsYWcgPiAwICkgeworICAgICAgICAgICAgICAgIGRlY2lzaW9uRGVsYXkgPSBzaWxr
X21pbl9pbnQoIGRlY2lzaW9uRGVsYXksIGxhZyAtIExUUF9PUkRFUiAvIDIgLSAxICk7CisgICAg
ICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBpZiggcHNJbmRpY2VzLT5OTFNGSW50ZXJw
Q29lZl9RMiA9PSA0ICkgeworICAgICAgICAgICAgTFNGX2ludGVycG9sYXRpb25fZmxhZyA9IDA7
CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBMU0ZfaW50ZXJwb2xhdGlvbl9mbGFnID0g
MTsKKyAgICAgICAgfQorCisgICAgICAgIEFMTE9DKCBzTFRQX1ExNSwgcHNFbmNDLT5sdHBfbWVt
X2xlbmd0aCArIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoLCBvcHVzX2ludDMyICk7CisgICAgICAgIEFM
TE9DKCBzTFRQLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsgcHNFbmNDLT5mcmFtZV9sZW5ndGgs
IG9wdXNfaW50MTYgKTsKKyAgICAgICAgQUxMT0MoIHhfc2NfUTEwLCBwc0VuY0MtPnN1YmZyX2xl
bmd0aCwgb3B1c19pbnQzMiApOworICAgICAgICBBTExPQyggZGVsYXllZEdhaW5fUTEwLCBERUNJ
U0lPTl9ERUxBWSwgb3B1c19pbnQzMiApOworICAgICAgICAvKiBTZXQgdXAgcG9pbnRlcnMgdG8g
c3RhcnQgb2Ygc3ViIGZyYW1lICovCisgICAgICAgIHB4cSAgICAgICAgICAgICAgICAgICA9ICZO
U1EtPnhxWyBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoIF07CisgICAgICAgIE5TUS0+c0xUUF9zaHBf
YnVmX2lkeCA9IHBzRW5jQy0+bHRwX21lbV9sZW5ndGg7CisgICAgICAgIE5TUS0+c0xUUF9idWZf
aWR4ICAgICA9IHBzRW5jQy0+bHRwX21lbV9sZW5ndGg7CisgICAgICAgIHN1YmZyID0gMDsKKyAg
ICAgICAgZm9yKCBrID0gMDsgayA8IHBzRW5jQy0+bmJfc3ViZnI7IGsrKyApIHsKKyAgICAgICAg
ICAgIEFfUTEyICAgICAgPSAmUHJlZENvZWZfUTEyWyAoICggayA+PiAxICkgfCAoIDEgLSBMU0Zf
aW50ZXJwb2xhdGlvbl9mbGFnICkgKSAqIE1BWF9MUENfT1JERVIgXTsKKyAgICAgICAgICAgIEJf
UTE0ICAgICAgPSAmTFRQQ29lZl9RMTRbIGsgKiBMVFBfT1JERVIgICAgICAgICAgIF07CisgICAg
ICAgICAgICBBUl9zaHBfUTEzID0gJkFSX1ExM1sgICAgIGsgKiBNQVhfU0hBUEVfTFBDX09SREVS
IF07CisKKyAgICAgICAgICAgIC8qIE5vaXNlIHNoYXBlIHBhcmFtZXRlcnMgKi8KKyAgICAgICAg
ICAgIHNpbGtfYXNzZXJ0KCBIYXJtU2hhcGVHYWluX1ExNFsgayBdID49IDAgKTsKKyAgICAgICAg
ICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQgID0gICAgICAgICAgICAgICAgICAgICAgICAgIHNp
bGtfUlNISUZUKCBIYXJtU2hhcGVHYWluX1ExNFsgayBdLCAyICk7CisgICAgICAgICAgICBIYXJt
U2hhcGVGSVJQYWNrZWRfUTE0IHw9IHNpbGtfTFNISUZUKCAob3B1c19pbnQzMilzaWxrX1JTSElG
VCggSGFybVNoYXBlR2Fpbl9RMTRbIGsgXSwgMSApLCAxNiApOworCisgICAgICAgICAgICBOU1Et
PnJld2hpdGVfZmxhZyA9IDA7CisgICAgICAgICAgICBpZiggcHNJbmRpY2VzLT5zaWduYWxUeXBl
ID09IFRZUEVfVk9JQ0VEICkgeworICAgICAgICAgICAgICAgIC8qIFZvaWNlZCAqLworICAgICAg
ICAgICAgICAgIGxhZyA9IHBpdGNoTFsgayBdOworCisgICAgICAgICAgICAgICAgLyogUmUtd2hp
dGVuaW5nICovCisgICAgICAgICAgICAgICAgaWYoICggayAmICggMyAtIHNpbGtfTFNISUZUKCBM
U0ZfaW50ZXJwb2xhdGlvbl9mbGFnLCAxICkgKSApID09IDAgKSB7CisgICAgICAgICAgICAgICAg
ICAgIGlmKCBrID09IDIgKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAvKiBSRVNFVCBERUxB
WUVEIERFQ0lTSU9OUyAqLworICAgICAgICAgICAgICAgICAgICAgICAgLyogRmluZCB3aW5uZXIg
Ki8KKyAgICAgICAgICAgICAgICAgICAgICAgIGludDMyeDRfdCBSRF9RMTBfczMyeDQ7CisgICAg
ICAgICAgICAgICAgICAgICAgICBSRG1pbl9RMTAgPSBwc0RlbERlYy0+UkRfUTEwWyAwIF07Cisg
ICAgICAgICAgICAgICAgICAgICAgICBXaW5uZXJfaW5kID0gMDsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGZvciggaSA9IDE7IGkgPCBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb247IGkr
KyApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiggcHNEZWxEZWMtPlJEX1ExMFsg
aSBdIDwgUkRtaW5fUTEwICkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSRG1p
bl9RMTAgPSBwc0RlbERlYy0+UkRfUTEwWyBpIF07CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFdpbm5lcl9pbmQgPSBpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgICAgIHBzRGVsRGVj
LT5SRF9RMTBbIFdpbm5lcl9pbmQgXSAtPSAoIHNpbGtfaW50MzJfTUFYID4+IDQgKTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIFJEX1ExMF9zMzJ4NCA9IHZsZDFxX3MzMiggcHNEZWxEZWMtPlJE
X1ExMCApOworICAgICAgICAgICAgICAgICAgICAgICAgUkRfUTEwX3MzMng0ID0gdmFkZHFfczMy
KCBSRF9RMTBfczMyeDQsIHZkdXBxX25fczMyKCBzaWxrX2ludDMyX01BWCA+PiA0ICkgKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlJEX1ExMCwgUkRfUTEw
X3MzMng0ICk7CisKKyAgICAgICAgICAgICAgICAgICAgICAgIC8qIENvcHkgZmluYWwgcGFydCBv
ZiBzaWduYWxzIGZyb20gd2lubmVyIHN0YXRlIHRvIG91dHB1dCBhbmQgbG9uZy10ZXJtIGZpbHRl
ciBzdGF0ZXMgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgIGNvcHlfd2lubmVyX3N0YXRlKCBw
c0RlbERlYywgZGVjaXNpb25EZWxheSwgc21wbF9idWZfaWR4LCBXaW5uZXJfaW5kLCBHYWluc19R
MTZbIDEgXSwgMTQsIHB1bHNlcywgcHhxLCBOU1EgKTsKKworICAgICAgICAgICAgICAgICAgICAg
ICAgc3ViZnIgPSAwOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAg
ICAgLyogUmV3aGl0ZW4gd2l0aCBuZXcgQSBjb2VmcyAqLworICAgICAgICAgICAgICAgICAgICBz
dGFydF9pZHggPSBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoIC0gbGFnIC0gcHNFbmNDLT5wcmVkaWN0
TFBDT3JkZXIgLSBMVFBfT1JERVIgLyAyOworICAgICAgICAgICAgICAgICAgICBzaWxrX2Fzc2Vy
dCggc3RhcnRfaWR4ID4gMCApOworCisgICAgICAgICAgICAgICAgICAgIHNpbGtfTFBDX2FuYWx5
c2lzX2ZpbHRlciggJnNMVFBbIHN0YXJ0X2lkeCBdLCAmTlNRLT54cVsgc3RhcnRfaWR4ICsgayAq
IHBzRW5jQy0+c3ViZnJfbGVuZ3RoIF0sCisgICAgICAgICAgICAgICAgICAgICAgICBBX1ExMiwg
cHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAtIHN0YXJ0X2lkeCwgcHNFbmNDLT5wcmVkaWN0TFBDT3Jk
ZXIsIHBzRW5jQy0+YXJjaCApOworCisgICAgICAgICAgICAgICAgICAgIE5TUS0+c0xUUF9idWZf
aWR4ID0gcHNFbmNDLT5sdHBfbWVtX2xlbmd0aDsKKyAgICAgICAgICAgICAgICAgICAgTlNRLT5y
ZXdoaXRlX2ZsYWcgPSAxOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgc2lsa19uc3FfZGVsX2RlY19zY2FsZV9zdGF0ZXNfbmVvbiggcHNFbmNDLCBOU1Es
IHBzRGVsRGVjLCB4MTYsIHhfc2NfUTEwLCBzTFRQLCBzTFRQX1ExNSwgaywKKyAgICAgICAgICAg
ICAgICBMVFBfc2NhbGVfUTE0LCBHYWluc19RMTYsIHBpdGNoTCwgcHNJbmRpY2VzLT5zaWduYWxU
eXBlLCBkZWNpc2lvbkRlbGF5ICk7CisKKyAgICAgICAgICAgIHNpbGtfbm9pc2Vfc2hhcGVfcXVh
bnRpemVyX2RlbF9kZWNfbmVvbiggTlNRLCBwc0RlbERlYywgcHNJbmRpY2VzLT5zaWduYWxUeXBl
LCB4X3NjX1ExMCwgcHVsc2VzLCBweHEsIHNMVFBfUTE1LAorICAgICAgICAgICAgICAgIGRlbGF5
ZWRHYWluX1ExMCwgQV9RMTIsIEJfUTE0LCBBUl9zaHBfUTEzLCBsYWcsIEhhcm1TaGFwZUZJUlBh
Y2tlZF9RMTQsIFRpbHRfUTE0WyBrIF0sIExGX3NocF9RMTRbIGsgXSwKKyAgICAgICAgICAgICAg
ICBHYWluc19RMTZbIGsgXSwgTGFtYmRhX1ExMCwgb2Zmc2V0X1ExMCwgcHNFbmNDLT5zdWJmcl9s
ZW5ndGgsIHN1YmZyKyssIHBzRW5jQy0+c2hhcGluZ0xQQ09yZGVyLAorICAgICAgICAgICAgICAg
IHBzRW5jQy0+cHJlZGljdExQQ09yZGVyLCBwc0VuY0MtPndhcnBpbmdfUTE2LCBwc0VuY0MtPm5T
dGF0ZXNEZWxheWVkRGVjaXNpb24sICZzbXBsX2J1Zl9pZHgsIGRlY2lzaW9uRGVsYXkgKTsKKwor
ICAgICAgICAgICAgeDE2ICAgICs9IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOworICAgICAgICAgICAg
cHVsc2VzICs9IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOworICAgICAgICAgICAgcHhxICAgICs9IHBz
RW5jQy0+c3ViZnJfbGVuZ3RoOworICAgICAgICB9CisKKyAgICAgICAgLyogRmluZCB3aW5uZXIg
Ki8KKyAgICAgICAgUkRtaW5fUTEwID0gcHNEZWxEZWMtPlJEX1ExMFsgMCBdOworICAgICAgICBX
aW5uZXJfaW5kID0gMDsKKyAgICAgICAgZm9yKCBrID0gMTsgayA8IHBzRW5jQy0+blN0YXRlc0Rl
bGF5ZWREZWNpc2lvbjsgaysrICkgeworICAgICAgICAgICAgaWYoIHBzRGVsRGVjLT5SRF9RMTBb
IGsgXSA8IFJEbWluX1ExMCApIHsKKyAgICAgICAgICAgICAgICBSRG1pbl9RMTAgPSBwc0RlbERl
Yy0+UkRfUTEwWyBrIF07CisgICAgICAgICAgICAgICAgV2lubmVyX2luZCA9IGs7CisgICAgICAg
ICAgICB9CisgICAgICAgIH0KKworICAgICAgICAvKiBDb3B5IGZpbmFsIHBhcnQgb2Ygc2lnbmFs
cyBmcm9tIHdpbm5lciBzdGF0ZSB0byBvdXRwdXQgYW5kIGxvbmctdGVybSBmaWx0ZXIgc3RhdGVz
ICovCisgICAgICAgIHBzSW5kaWNlcy0+U2VlZCA9IHBzRGVsRGVjLT5TZWVkSW5pdFsgV2lubmVy
X2luZCBdOworICAgICAgICBHYWluX1ExMCA9IHNpbGtfUlNISUZUMzIoIEdhaW5zX1ExNlsgcHNF
bmNDLT5uYl9zdWJmciAtIDEgXSwgNiApOworICAgICAgICBjb3B5X3dpbm5lcl9zdGF0ZSggcHNE
ZWxEZWMsIGRlY2lzaW9uRGVsYXksIHNtcGxfYnVmX2lkeCwgV2lubmVyX2luZCwgR2Fpbl9RMTAs
IDgsIHB1bHNlcywgcHhxLCBOU1EgKTsKKworICAgICAgICB0X3MzMng0ID0gdmR1cHFfbl9zMzIo
IDAgKTsgLyogaW5pdGlhbGl6YXRpb24gKi8KKyAgICAgICAgZm9yKCBpID0gMDsgaSA8ICggTlNR
X0xQQ19CVUZfTEVOR1RIIC0gMyApOyBpICs9IDQgKSB7CisgICAgICAgICAgICB0X3MzMng0ID0g
dmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+c0xQQ19RMTRbIGkgKyAwIF1bIFdpbm5lcl9pbmQg
XSwgdF9zMzJ4NCwgMCApOworICAgICAgICAgICAgdF9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAm
cHNEZWxEZWMtPnNMUENfUTE0WyBpICsgMSBdWyBXaW5uZXJfaW5kIF0sIHRfczMyeDQsIDEgKTsK
KyAgICAgICAgICAgIHRfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5zTFBDX1Ex
NFsgaSArIDIgXVsgV2lubmVyX2luZCBdLCB0X3MzMng0LCAyICk7CisgICAgICAgICAgICB0X3Mz
Mng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+c0xQQ19RMTRbIGkgKyAzIF1bIFdpbm5l
cl9pbmQgXSwgdF9zMzJ4NCwgMyApOworICAgICAgICAgICAgdnN0MXFfczMyKCAmTlNRLT5zTFBD
X1ExNFsgaSBdLCB0X3MzMng0ICk7CisgICAgICAgIH0KKworICAgICAgICBmb3IoIDsgaSA8IE5T
UV9MUENfQlVGX0xFTkdUSDsgaSsrICkgeworICAgICAgICAgIE5TUS0+c0xQQ19RMTRbIGkgXSA9
IHBzRGVsRGVjLT5zTFBDX1ExNFsgaSBdWyBXaW5uZXJfaW5kIF07CisgICAgICAgIH0KKworICAg
ICAgICBmb3IoIGkgPSAwOyBpIDwgKG9wdXNfaW50KSggc2l6ZW9mKCBOU1EtPnNBUjJfUTE0ICkg
LyBzaXplb2YoIE5TUS0+c0FSMl9RMTRbIDAgXSApIC0gMyApOyBpICs9IDQgKSB7CisgICAgICAg
ICAgICB0X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+c0FSMl9RMTRbIGkgKyAw
IF1bIFdpbm5lcl9pbmQgXSwgdF9zMzJ4NCwgMCApOworICAgICAgICAgICAgdF9zMzJ4NCA9IHZs
ZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPnNBUjJfUTE0WyBpICsgMSBdWyBXaW5uZXJfaW5kIF0s
IHRfczMyeDQsIDEgKTsKKyAgICAgICAgICAgIHRfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBz
RGVsRGVjLT5zQVIyX1ExNFsgaSArIDIgXVsgV2lubmVyX2luZCBdLCB0X3MzMng0LCAyICk7Cisg
ICAgICAgICAgICB0X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+c0FSMl9RMTRb
IGkgKyAzIF1bIFdpbm5lcl9pbmQgXSwgdF9zMzJ4NCwgMyApOworICAgICAgICAgICAgdnN0MXFf
czMyKCAmTlNRLT5zQVIyX1ExNFsgaSBdLCB0X3MzMng0ICk7CisgICAgICAgIH0KKworICAgICAg
ICBmb3IoIDsgaSA8IChvcHVzX2ludCkoIHNpemVvZiggTlNRLT5zQVIyX1ExNCApIC8gc2l6ZW9m
KCBOU1EtPnNBUjJfUTE0WyAwIF0gKSApOyBpKysgKSB7CisgICAgICAgICAgTlNRLT5zQVIyX1Ex
NFsgaSBdID0gcHNEZWxEZWMtPnNBUjJfUTE0WyBpIF1bIFdpbm5lcl9pbmQgXTsKKyAgICAgICAg
fQorCisgICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMgKi8KKyAgICAgICAgTlNRLT5zTEZfQVJfc2hw
X1ExNCA9IHBzRGVsRGVjLT5MRl9BUl9RMTRbIFdpbm5lcl9pbmQgXTsKKyAgICAgICAgTlNRLT5z
RGlmZl9zaHBfUTE0ICA9IHBzRGVsRGVjLT5EaWZmX1ExNFsgV2lubmVyX2luZCBdOworICAgICAg
ICBOU1EtPmxhZ1ByZXYgICAgICAgID0gcGl0Y2hMWyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBdOwor
CisgICAgICAgIC8qIFNhdmUgcXVhbnRpemVkIHNwZWVjaCBzaWduYWwgKi8KKyAgICAgICAgc2ls
a19tZW1tb3ZlKCBOU1EtPnhxLCAgICAgICAgICAgJk5TUS0+eHFbICAgICAgICAgICBwc0VuY0Mt
PmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICogc2l6ZW9mKCBvcHVzX2lu
dDE2ICkgKTsKKyAgICAgICAgc2lsa19tZW1tb3ZlKCBOU1EtPnNMVFBfc2hwX1ExNCwgJk5TUS0+
c0xUUF9zaHBfUTE0WyBwc0VuY0MtPmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVu
Z3RoICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKKyAgICAgICAgUkVTVE9SRV9TVEFDSzsKKyAg
ICB9CisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIHNpbGtfYXNzZXJ0KCAhbWVtY21wKCAm
TlNRX2MsIE5TUSwgc2l6ZW9mKCBOU1FfYyApICkgKTsKKyAgICBzaWxrX2Fzc2VydCggIW1lbWNt
cCggJnBzSW5kaWNlc19jLCBwc0luZGljZXMsIHNpemVvZiggcHNJbmRpY2VzX2MgKSApICk7Cisg
ICAgc2lsa19hc3NlcnQoICFtZW1jbXAoIHB1bHNlc19jLCBwdWxzZXNfYSwgc2l6ZW9mKCBwdWxz
ZXNfYyApICkgKTsKKyNlbmRpZgorfQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqLworLyogTm9pc2Ugc2hhcGUgcXVhbnRpemVyIGZvciBvbmUgc3ViZnJhbWUg
Ki8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiBOb3Rl
OiBGdW5jdGlvbiBzaWxrX3Nob3J0X3ByZWRpY3Rpb25fY3JlYXRlX2FyY2hfY29lZl9uZW9uKCkg
ZGVmaW5lZCBpbiBOU1FfbmVvbi5oIGlzIGFjdHVhbGx5IGEgaGFja2luZyBDIGZ1bmN0aW9uLiAq
LworLyogICAgICAgVGhlcmVmb3JlIGhlcmUgd2UgYXBwZW5kICJfbG9jYWwiIHRvIHRoZSBORU9O
IGZ1bmN0aW9uIG5hbWUgdG8gYXZvaWQgY29uZnVzaW9uLiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfc2hvcnRfcHJlZGljdGlv
bl9jcmVhdGVfYXJjaF9jb2VmX25lb25fbG9jYWwob3B1c19pbnQzMiAqb3V0LCBjb25zdCBvcHVz
X2ludDE2ICppbiwgb3B1c19pbnQgb3JkZXIpCit7CisgIGludDE2eDhfdCB0X3MxNng4OworICBp
bnQzMng0X3QgdDBfczMyeDQsIHQxX3MzMng0LCB0Ml9zMzJ4NCwgdDNfczMyeDQ7CisgIHNpbGtf
YXNzZXJ0KCBvcmRlciA9PSAxMCB8fCBvcmRlciA9PSAxNiApOworCisgIHRfczE2eDggPSB2bGQx
cV9zMTYoIGluICsgMCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIDcgNiA1IDQgIDMgMiAxIDAgICAgKi8KKyAgdF9zMTZ4OCA9IHZyZXY2NHFf
czE2KCB0X3MxNng4ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogNCA1IDYgNyAgMCAxIDIgMyAgICAqLworICB0Ml9zMzJ4NCA9IHZzaGxsX25fczE2
KCB2Z2V0X2hpZ2hfczE2KCB0X3MxNng4ICksIDE1ICk7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiA0IDUgNiA3ICAgICAgICAgICAgICovCisgIHQzX3MzMng0ID0gdnNobGxfbl9zMTYoIHZn
ZXRfbG93X3MxNiggIHRfczE2eDggKSwgMTUgKTsgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IDAgMSAyIDMgICAgICAgICAgICAgKi8KKworICBpZiggb3JkZXIgPT0gMTYgKSB7CisgICAgICB0
X3MxNng4ID0gdmxkMXFfczE2KCBpbiArIDggKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEYgRSBEIEMgIEIgQSA5IDggICAgKi8KKyAgICAgIHRfczE2
eDggPSB2cmV2NjRxX3MxNiggdF9zMTZ4OCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogQyBEIEUgRiAgOCA5IEEgQiAgICAqLworICAgICAgdDBfczMyeDQg
PSB2c2hsbF9uX3MxNiggdmdldF9oaWdoX3MxNiggdF9zMTZ4OCApLCAxNSApOyAgICAgICAgICAg
ICAgICAgICAgICAvKiBDIEQgRSBGICAgICAgICAgICAgICovCisgICAgICB0MV9zMzJ4NCA9IHZz
aGxsX25fczE2KCB2Z2V0X2xvd19zMTYoICB0X3MxNng4ICksIDE1ICk7ICAgICAgICAgICAgICAg
ICAgICAgIC8qIDggOSBBIEIgICAgICAgICAgICAgKi8KKyAgfSBlbHNlIHsKKyAgICAgIGludDE2
eDRfdCB0X3MxNng0OworCisgICAgICB0MF9zMzJ4NCA9IHZkdXBxX25fczMyKCAwICk7ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHplcm8gemVybyB6
ZXJvIHplcm8gKi8KKyAgICAgIHRfczE2eDQgPSB2bGQxX3MxNiggaW4gKyA2ICk7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogOSAgICA4ICAgIDcgICAg
NiAgICAqLworICAgICAgdF9zMTZ4NCA9IHZyZXY2NF9zMTYoIHRfczE2eDQgKTsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiA2ICAgIDcgICAgOCAgICA5ICAg
ICovCisgICAgICB0MV9zMzJ4NCA9IHZzaGxsX25fczE2KCB0X3MxNng0LCAxNSApOworICAgICAg
dDFfczMyeDQgPSB2Y29tYmluZV9zMzIoIHZnZXRfbG93X3MzMih0MF9zMzJ4NCksIHZnZXRfbG93
X3MzMiggdDFfczMyeDQgKSApOyAvKiA4ICAgIDkgICAgemVybyB6ZXJvICovCisgIH0KKyAgdnN0
MXFfczMyKCBvdXQgKyAgMCwgdDBfczMyeDQgKTsKKyAgdnN0MXFfczMyKCBvdXQgKyAgNCwgdDFf
czMyeDQgKTsKKyAgdnN0MXFfczMyKCBvdXQgKyAgOCwgdDJfczMyeDQgKTsKKyAgdnN0MXFfczMy
KCBvdXQgKyAxMiwgdDNfczMyeDQgKTsKK30KKworc3RhdGljIE9QVVNfSU5MSU5FIGludDMyeDRf
dCBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKAorICAgIGNvbnN0IGludDMyeDRfdCBvdXRfczMyeDQs
CisgICAgY29uc3QgaW50MzJ4NF90IGluX3MzMng0LAorICAgIGNvbnN0IGludDMyeDJfdCBjb2Vm
X3MzMngyCispCit7CisgICAgcmV0dXJuIHZhZGRxX3MzMiggb3V0X3MzMng0LCB2cWRtdWxocV9s
YW5lX3MzMiggaW5fczMyeDQsIGNvZWZfczMyeDIsIDAgKSApOworfQorCitzdGF0aWMgT1BVU19J
TkxJTkUgaW50MzJ4NF90IHNpbGtfU01MQVdCX2xhbmUxX25lb24oCisgICAgY29uc3QgaW50MzJ4
NF90IG91dF9zMzJ4NCwKKyAgICBjb25zdCBpbnQzMng0X3QgaW5fczMyeDQsCisgICAgY29uc3Qg
aW50MzJ4Ml90IGNvZWZfczMyeDIKKykKK3sKKyAgICByZXR1cm4gdmFkZHFfczMyKCBvdXRfczMy
eDQsIHZxZG11bGhxX2xhbmVfczMyKCBpbl9zMzJ4NCwgY29lZl9zMzJ4MiwgMSApICk7Cit9CisK
Ky8qIE5vdGU6IFRoaXMgZnVuY3Rpb24gaGFzIGRpZmZlcmVudCByZXR1cm4gdmFsdWUgdGhhbiBz
aWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9zaG9ydF9wcmVkaWN0aW9uX25lb24oKS4gKi8KKy8q
ICAgICAgIFRoZXJlZm9yZSBoZXJlIHdlIGFwcGVuZCAiX2xvY2FsIiB0byB0aGUgZnVuY3Rpb24g
bmFtZSB0byBhdm9pZCBjb25mdXNpb24uICAgICAgICAgICAgICAgICAgICAgICAgKi8KK3N0YXRp
YyBPUFVTX0lOTElORSBpbnQzMng0X3Qgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfc2hvcnRf
cHJlZGljdGlvbl9uZW9uX2xvY2FsKGNvbnN0IG9wdXNfaW50MzIgKmJ1ZjMyLCBjb25zdCBvcHVz
X2ludDMyICphX1ExMl9hcmNoLCBvcHVzX2ludCBvcmRlcikKK3sKKyAgICBjb25zdCBpbnQzMng0
X3QgYV9RMTJfYXJjaDBfczMyeDQgPSB2bGQxcV9zMzIoIGFfUTEyX2FyY2ggKyAwICk7CisgICAg
Y29uc3QgaW50MzJ4NF90IGFfUTEyX2FyY2gxX3MzMng0ID0gdmxkMXFfczMyKCBhX1ExMl9hcmNo
ICsgNCApOworICAgIGNvbnN0IGludDMyeDRfdCBhX1ExMl9hcmNoMl9zMzJ4NCA9IHZsZDFxX3Mz
MiggYV9RMTJfYXJjaCArIDggKTsKKyAgICBjb25zdCBpbnQzMng0X3QgYV9RMTJfYXJjaDNfczMy
eDQgPSB2bGQxcV9zMzIoIGFfUTEyX2FyY2ggKyAxMiApOworICAgIGludDMyeDRfdCBMUENfcHJl
ZF9RMTRfczMyeDQ7CisKKyAgICBzaWxrX2Fzc2VydCggb3JkZXIgPT0gMTAgfHwgb3JkZXIgPT0g
MTYgKTsKKyAgICAvKiBBdm9pZHMgaW50cm9kdWNpbmcgYSBiaWFzIGJlY2F1c2Ugc2lsa19TTUxB
V0IoKSBhbHdheXMgcm91bmRzIHRvIC1pbmYgKi8KKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSB2
ZHVwcV9uX3MzMiggc2lsa19SU0hJRlQoIG9yZGVyLCAxICkgKTsKKyAgICBMUENfcHJlZF9RMTRf
czMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFx
X3MzMiggYnVmMzIgKyAgMCAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3Mz
MiggIGFfUTEyX2FyY2gwX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxr
X1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIg
KyAgMSAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2Fy
Y2gwX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5l
MF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgMiAqIE5FT05f
TUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gwX3MzMng0ICkg
KTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENf
cHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgMyAqIE5FT05fTUFYX0RFTF9ERUNf
U1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gwX3MzMng0ICkgKTsKKyAgICBMUENf
cHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMy
eDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgNCAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZn
ZXRfbG93X3MzMiggIGFfUTEyX2FyY2gxX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMy
eDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3Mz
MiggYnVmMzIgKyAgNSAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMigg
IGFfUTEyX2FyY2gxX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NN
TEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAg
NiAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gx
X3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9u
ZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgNyAqIE5FT05fTUFY
X0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gxX3MzMng0ICkgKTsK
KyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJl
ZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgOCAqIE5FT05fTUFYX0RFTF9ERUNfU1RB
VEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2FyY2gyX3MzMng0ICkgKTsKKyAgICBMUENfcHJl
ZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQs
IHZsZDFxX3MzMiggYnVmMzIgKyAgOSAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRf
bG93X3MzMiggIGFfUTEyX2FyY2gyX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQg
PSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMigg
YnVmMzIgKyAxMCAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFf
UTEyX2FyY2gyX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFX
Ql9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAxMSAq
IE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gyX3Mz
Mng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9u
KCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAxMiAqIE5FT05fTUFYX0RF
TF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2FyY2gzX3MzMng0ICkgKTsKKyAg
ICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9R
MTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAxMyAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVT
ICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2FyY2gzX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9R
MTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZs
ZDFxX3MzMiggYnVmMzIgKyAxNCAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGln
aF9zMzIoIGFfUTEyX2FyY2gzX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBz
aWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVm
MzIgKyAxNSAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEy
X2FyY2gzX3MzMng0ICkgKTsKKworICAgIHJldHVybiBMUENfcHJlZF9RMTRfczMyeDQ7Cit9CisK
K3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9k
ZWNfbmVvbigKKyAgICBzaWxrX25zcV9zdGF0ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAg
IC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOU1Ff
ZGVsX2RlY3Nfc3RydWN0IHBzRGVsRGVjW10sICAgICAgICAgICAgIC8qIEkvTyAgRGVsYXllZCBk
ZWNpc2lvbiBzdGF0ZXMgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHNp
Z25hbFR5cGUsICAgICAgICAgICAgIC8qIEkgICAgU2lnbmFsIHR5cGUgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgIHhfUTEwW10sICAgICAgICAgICAg
ICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBv
cHVzX2ludDggICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAgICAgICAgIC8qIE8gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDE2ICAgICAgICAg
IHhxW10sICAgICAgICAgICAgICAgICAgIC8qIE8gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIHNMVFBfUTE1W10sICAgICAg
ICAgICAgIC8qIEkvTyAgTFRQIGZpbHRlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBvcHVzX2ludDMyICAgICAgICAgIGRlbGF5ZWRHYWluX1ExMFtdLCAgICAgIC8qIEkvTyAgR2Fp
biBkZWxheSBidWZmZXIgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2
ICAgIGFfUTEyW10sICAgICAgICAgICAgICAgIC8qIEkgICAgU2hvcnQgdGVybSBwcmVkaWN0aW9u
IGNvZWZzICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIGJfUTE0W10sICAgICAg
ICAgICAgICAgIC8qIEkgICAgTG9uZyB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludDE2ICAgIEFSX3NocF9RMTNbXSwgICAgICAgICAgIC8qIEkgICAg
Tm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAg
ICAgICAgIGxhZywgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUGl0Y2ggbGFnICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIEhhcm1TaGFwZUZJ
UlBhY2tlZF9RMTQsIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIFRpbHRfUTE0LCAgICAgICAgICAgICAgIC8qIEkg
ICAgU3BlY3RyYWwgdGlsdCAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMy
ICAgICAgICAgIExGX3NocF9RMTQsICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIEdhaW5fUTE2
LCAgICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIExhbWJkYV9RMTAsICAgICAgICAgICAgIC8q
IEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2lu
dCAgICAgICAgICAgIG9mZnNldF9RMTAsICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIGxlbmd0
aCwgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgbGVuZ3RoICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHN1YmZyLCAgICAgICAgICAgICAgICAg
IC8qIEkgICAgU3ViZnJhbWUgbnVtYmVyICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVz
X2ludCAgICAgICAgICAgIHNoYXBpbmdMUENPcmRlciwgICAgICAgIC8qIEkgICAgU2hhcGluZyBM
UEMgZmlsdGVyIG9yZGVyICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHBy
ZWRpY3RMUENPcmRlciwgICAgICAgIC8qIEkgICAgUHJlZGljdGlvbiBmaWx0ZXIgb3JkZXIgICAg
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAg
ICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBv
cHVzX2ludCAgICAgICAgICAgIG5TdGF0ZXNEZWxheWVkRGVjaXNpb24sIC8qIEkgICAgTnVtYmVy
IG9mIHN0YXRlcyBpbiBkZWNpc2lvbiB0cmVlICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAg
ICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkvTyAgSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMg
aW4gYnVmZmVycyAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIGRlY2lzaW9uRGVsYXkgICAg
ICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKykK
K3sKKyAgICBvcHVzX2ludCAgICAgaSwgaiwgaywgV2lubmVyX2luZCwgUkRtaW5faW5kLCBSRG1h
eF9pbmQsIGxhc3Rfc21wbGVfaWR4OworICAgIG9wdXNfaW50MzIgICBXaW5uZXJfcmFuZF9zdGF0
ZTsKKyAgICBvcHVzX2ludDMyICAgTFRQX3ByZWRfUTE0LCBuX0xUUF9RMTQ7CisgICAgb3B1c19p
bnQzMiAgIFJEbWluX1ExMCwgUkRtYXhfUTEwOworICAgIG9wdXNfaW50MzIgICBHYWluX1ExMDsK
KyAgICBvcHVzX2ludDMyICAgKnByZWRfbGFnX3B0ciwgKnNocF9sYWdfcHRyOworICAgIG9wdXNf
aW50MzIgICBhX1ExMl9hcmNoW01BWF9MUENfT1JERVJdOworICAgIGNvbnN0IGludDMyeDJfdCB3
YXJwaW5nX1ExNl9zMzJ4MiA9IHZkdXBfbl9zMzIoIHNpbGtfTFNISUZUMzIoIHdhcnBpbmdfUTE2
LCAxNiApID4+IDEgKTsKKyAgICBjb25zdCBvcHVzX2ludDMyIExGX3NocF9RMjkgPSBzaWxrX0xT
SElGVDMyKCBMRl9zaHBfUTE0LCAxNiApID4+IDE7CisgICAgb3B1c19pbnQzMiBBUl9zaHBfUTI4
WyBNQVhfU0hBUEVfTFBDX09SREVSIF07CisgICAgY29uc3QgdWludDMyeDRfdCByYW5kX211bHRp
cGxpZXJfdTMyeDQgPSB2ZHVwcV9uX3UzMiggUkFORF9NVUxUSVBMSUVSICk7CisgICAgY29uc3Qg
dWludDMyeDRfdCByYW5kX2luY3JlbWVudF91MzJ4NCA9IHZkdXBxX25fdTMyKCBSQU5EX0lOQ1JF
TUVOVCApOworCisgICAgVkFSREVDTCggTlNRX3NhbXBsZXNfc3RydWN0LCBwc1NhbXBsZVN0YXRl
ICk7CisgICAgU0FWRV9TVEFDSzsKKworICAgIHNpbGtfYXNzZXJ0KCBuU3RhdGVzRGVsYXllZERl
Y2lzaW9uID4gMCApOworICAgIHNpbGtfYXNzZXJ0KCAoIHNoYXBpbmdMUENPcmRlciAmIDEgKSA9
PSAwICk7ICAgLyogY2hlY2sgdGhhdCBvcmRlciBpcyBldmVuICovCisgICAgQUxMT0MoIHBzU2Ft
cGxlU3RhdGUsIDIsIE5TUV9zYW1wbGVzX3N0cnVjdCApOworCisgICAgc2hwX2xhZ19wdHIgID0g
Jk5TUS0+c0xUUF9zaHBfUTE0WyBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggLSBsYWcgKyBIQVJNX1NI
QVBFX0ZJUl9UQVBTIC8gMiBdOworICAgIHByZWRfbGFnX3B0ciA9ICZzTFRQX1ExNVsgTlNRLT5z
TFRQX2J1Zl9pZHggLSBsYWcgKyBMVFBfT1JERVIgLyAyIF07CisgICAgR2Fpbl9RMTAgICAgID0g
c2lsa19SU0hJRlQoIEdhaW5fUTE2LCA2ICk7CisKKyAgICBmb3IoIGkgPSAwOyBpIDwgKCBNQVhf
U0hBUEVfTFBDX09SREVSIC0gNyApOyBpICs9IDggKSB7CisgICAgICBjb25zdCBpbnQxNng4X3Qg
dF9zMTZ4OCA9IHZsZDFxX3MxNiggQVJfc2hwX1ExMyArICBpICk7CisgICAgICB2c3QxcV9zMzIo
IEFSX3NocF9RMjggKyBpICsgMCwgdnNobGxfbl9zMTYoIHZnZXRfbG93X3MxNiggIHRfczE2eDgg
KSwgMTUgKSApOworICAgICAgdnN0MXFfczMyKCBBUl9zaHBfUTI4ICsgaSArIDQsIHZzaGxsX25f
czE2KCB2Z2V0X2hpZ2hfczE2KCB0X3MxNng4ICksIDE1ICkgKTsKKyAgICB9CisKKyAgICBmb3Io
IDsgaSA8IE1BWF9TSEFQRV9MUENfT1JERVI7IGkrKyApIHsKKyAgICAgIEFSX3NocF9RMjhbaV0g
PSBzaWxrX0xTSElGVDMyKCBBUl9zaHBfUTEzW2ldLCAxNSApOworICAgIH0KKworICAgIHNpbGtf
c2hvcnRfcHJlZGljdGlvbl9jcmVhdGVfYXJjaF9jb2VmX25lb25fbG9jYWwoIGFfUTEyX2FyY2gs
IGFfUTEyLCBwcmVkaWN0TFBDT3JkZXIgKTsKKworICAgIGZvciggaSA9IDA7IGkgPCBsZW5ndGg7
IGkrKyApIHsKKyAgICAgICAgaW50MzJ4NF90IFNlZWRfczMyeDQsIExQQ19wcmVkX1ExNF9zMzJ4
NDsKKyAgICAgICAgaW50MzJ4NF90IHNpZ25fczMyeDQsIHRtcDFfczMyeDQsIHRtcDJfczMyeDQ7
CisgICAgICAgIGludDMyeDRfdCBuX0FSX1ExNF9zMzJ4NCwgbl9MRl9RMTRfczMyeDQ7CisgICAg
ICAgIGludDMyeDJfdCBBUl9zaHBfUTI4X3MzMngyOworICAgICAgICBpbnQxNng0X3Qgcl9RMTBf
czE2eDQsIHJyX1ExMF9zMTZ4NDsKKworICAgICAgICAvKiBQZXJmb3JtIGNvbW1vbiBjYWxjdWxh
dGlvbnMgdXNlZCBpbiBhbGwgc3RhdGVzICovCisKKyAgICAgICAgLyogTG9uZy10ZXJtIHByZWRp
Y3Rpb24gKi8KKyAgICAgICAgaWYoIHNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7CisgICAg
ICAgICAgICAvKiBVbnJvbGxlZCBsb29wICovCisgICAgICAgICAgICAvKiBBdm9pZHMgaW50cm9k
dWNpbmcgYSBiaWFzIGJlY2F1c2Ugc2lsa19TTUxBV0IoKSBhbHdheXMgcm91bmRzIHRvIC1pbmYg
Ki8KKyAgICAgICAgICAgIExUUF9wcmVkX1ExNCA9IDI7CisgICAgICAgICAgICBMVFBfcHJlZF9R
MTQgPSBzaWxrX1NNTEFXQiggTFRQX3ByZWRfUTE0LCBwcmVkX2xhZ19wdHJbICAwIF0sIGJfUTE0
WyAwIF0gKTsKKyAgICAgICAgICAgIExUUF9wcmVkX1ExNCA9IHNpbGtfU01MQVdCKCBMVFBfcHJl
ZF9RMTQsIHByZWRfbGFnX3B0clsgLTEgXSwgYl9RMTRbIDEgXSApOworICAgICAgICAgICAgTFRQ
X3ByZWRfUTE0ID0gc2lsa19TTUxBV0IoIExUUF9wcmVkX1ExNCwgcHJlZF9sYWdfcHRyWyAtMiBd
LCBiX1ExNFsgMiBdICk7CisgICAgICAgICAgICBMVFBfcHJlZF9RMTQgPSBzaWxrX1NNTEFXQigg
TFRQX3ByZWRfUTE0LCBwcmVkX2xhZ19wdHJbIC0zIF0sIGJfUTE0WyAzIF0gKTsKKyAgICAgICAg
ICAgIExUUF9wcmVkX1ExNCA9IHNpbGtfU01MQVdCKCBMVFBfcHJlZF9RMTQsIHByZWRfbGFnX3B0
clsgLTQgXSwgYl9RMTRbIDQgXSApOworICAgICAgICAgICAgTFRQX3ByZWRfUTE0ID0gc2lsa19M
U0hJRlQoIExUUF9wcmVkX1ExNCwgMSApOyAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUTEz
IC0+IFExNCAqLworICAgICAgICAgICAgcHJlZF9sYWdfcHRyKys7CisgICAgICAgIH0gZWxzZSB7
CisgICAgICAgICAgICBMVFBfcHJlZF9RMTQgPSAwOworICAgICAgICB9CisKKyAgICAgICAgLyog
TG9uZy10ZXJtIHNoYXBpbmcgKi8KKyAgICAgICAgaWYoIGxhZyA+IDAgKSB7CisgICAgICAgICAg
ICAvKiBTeW1tZXRyaWMsIHBhY2tlZCBGSVIgY29lZmZpY2llbnRzICovCisgICAgICAgICAgICBu
X0xUUF9RMTQgPSBzaWxrX1NNVUxXQiggc2lsa19BREQzMiggc2hwX2xhZ19wdHJbIDAgXSwgc2hw
X2xhZ19wdHJbIC0yIF0gKSwgSGFybVNoYXBlRklSUGFja2VkX1ExNCApOworICAgICAgICAgICAg
bl9MVFBfUTE0ID0gc2lsa19TTUxBV1QoIG5fTFRQX1ExNCwgc2hwX2xhZ19wdHJbIC0xIF0sICAg
ICAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQgKTsKKyAgICAgICAgICAg
IG5fTFRQX1ExNCA9IHNpbGtfU1VCX0xTSElGVDMyKCBMVFBfcHJlZF9RMTQsIG5fTFRQX1ExNCwg
MiApOyAgICAgICAgICAgIC8qIFExMiAtPiBRMTQgKi8KKyAgICAgICAgICAgIHNocF9sYWdfcHRy
Kys7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBuX0xUUF9RMTQgPSAwOworICAgICAg
ICB9CisKKyAgICAgICAgLyogR2VuZXJhdGUgZGl0aGVyICovCisgICAgICAgIFNlZWRfczMyeDQg
PSB2bGQxcV9zMzIoIHBzRGVsRGVjLT5TZWVkICk7CisgICAgICAgIFNlZWRfczMyeDQgPSB2cmVp
bnRlcnByZXRxX3MzMl91MzIoIHZtbGFxX3UzMiggcmFuZF9pbmNyZW1lbnRfdTMyeDQsIHZyZWlu
dGVycHJldHFfdTMyX3MzMiggU2VlZF9zMzJ4NCApLCByYW5kX211bHRpcGxpZXJfdTMyeDQgKSAp
OworICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5TZWVkLCBTZWVkX3MzMng0ICk7CisKKyAg
ICAgICAgLyogU2hvcnQtdGVybSBwcmVkaWN0aW9uICovCisgICAgICAgIExQQ19wcmVkX1ExNF9z
MzJ4NCA9IHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX3Nob3J0X3ByZWRpY3Rpb25fbmVvbl9s
b2NhbChwc0RlbERlYy0+c0xQQ19RMTRbIE5TUV9MUENfQlVGX0xFTkdUSCAtIDE2ICsgaSBdLCBh
X1ExMl9hcmNoLCBwcmVkaWN0TFBDT3JkZXIpOworICAgICAgICBMUENfcHJlZF9RMTRfczMyeDQg
PSB2c2hscV9uX3MzMiggTFBDX3ByZWRfUTE0X3MzMng0LCA0ICk7IC8qIFExMCAtPiBRMTQgKi8K
KworICAgICAgICAvKiBOb2lzZSBzaGFwZSBmZWVkYmFjayAqLworICAgICAgICAvKiBPdXRwdXQg
b2YgbG93cGFzcyBzZWN0aW9uICovCisgICAgICAgIHRtcDJfczMyeDQgPSBzaWxrX1NNTEFXQl9s
YW5lMF9uZW9uKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5EaWZmX1ExNCApLCB2bGQxcV9zMzIoIHBz
RGVsRGVjLT5zQVIyX1ExNFsgMCBdICksIHdhcnBpbmdfUTE2X3MzMngyICk7CisgICAgICAgIC8q
IE91dHB1dCBvZiBhbGxwYXNzIHNlY3Rpb24gKi8KKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZzdWJx
X3MzMiggdmxkMXFfczMyKCBwc0RlbERlYy0+c0FSMl9RMTRbIDEgXSApLCB0bXAyX3MzMng0ICk7
CisgICAgICAgIHRtcDFfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCB2bGQxcV9zMzIo
IHBzRGVsRGVjLT5zQVIyX1ExNFsgMCBdICksIHRtcDFfczMyeDQsIHdhcnBpbmdfUTE2X3MzMngy
ICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyAwIF0sIHRtcDJfczMy
eDQgKTsKKyAgICAgICAgQVJfc2hwX1EyOF9zMzJ4MiA9IHZsZDFfczMyKCBBUl9zaHBfUTI4ICk7
CisgICAgICAgIG5fQVJfUTE0X3MzMng0ID0gdmFkZHFfczMyKCB2ZHVwcV9uX3MzMiggc2lsa19S
U0hJRlQoIHNoYXBpbmdMUENPcmRlciwgMSApICksIHZxZG11bGhxX2xhbmVfczMyKCB0bXAyX3Mz
Mng0LCBBUl9zaHBfUTI4X3MzMngyLCAwICkgKTsKKworICAgICAgICAvKiBMb29wIG92ZXIgYWxs
cGFzcyBzZWN0aW9ucyAqLworICAgICAgICBmb3IoIGogPSAyOyBqIDwgc2hhcGluZ0xQQ09yZGVy
OyBqICs9IDIgKSB7CisgICAgICAgICAgICAvKiBPdXRwdXQgb2YgYWxscGFzcyBzZWN0aW9uICov
CisgICAgICAgICAgICB0bXAyX3MzMng0ID0gdnN1YnFfczMyKCB2bGQxcV9zMzIoIHBzRGVsRGVj
LT5zQVIyX1ExNFsgaiArIDAgXSApLCB0bXAxX3MzMng0ICk7CisgICAgICAgICAgICB0bXAyX3Mz
Mng0ID0gc2lsa19TTUxBV0JfbGFuZTBfbmVvbiggdmxkMXFfczMyKCBwc0RlbERlYy0+c0FSMl9R
MTRbIGogLSAxIF0gKSwgdG1wMl9zMzJ4NCwgd2FycGluZ19RMTZfczMyeDIgKTsKKyAgICAgICAg
ICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyBqIC0gMSBdLCB0bXAxX3MzMng0ICk7
CisgICAgICAgICAgICBuX0FSX1ExNF9zMzJ4NCA9IHZhZGRxX3MzMiggbl9BUl9RMTRfczMyeDQs
IHZxZG11bGhxX2xhbmVfczMyKCB0bXAxX3MzMng0LCBBUl9zaHBfUTI4X3MzMngyLCAxICkgKTsK
KyAgICAgICAgICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNlY3Rpb24gKi8KKyAgICAgICAgICAg
IHRtcDFfczMyeDQgPSB2c3VicV9zMzIoIHZsZDFxX3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyBq
ICsgMSBdICksIHRtcDJfczMyeDQgKTsKKyAgICAgICAgICAgIHRtcDFfczMyeDQgPSBzaWxrX1NN
TEFXQl9sYW5lMF9uZW9uKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5zQVIyX1ExNFsgaiArIDAgXSAp
LCB0bXAxX3MzMng0LCB3YXJwaW5nX1ExNl9zMzJ4MiApOworICAgICAgICAgICAgdnN0MXFfczMy
KCBwc0RlbERlYy0+c0FSMl9RMTRbIGogKyAwIF0sIHRtcDJfczMyeDQgKTsKKyAgICAgICAgICAg
IEFSX3NocF9RMjhfczMyeDIgPSB2bGQxX3MzMiggJkFSX3NocF9RMjhbIGogXSApOworICAgICAg
ICAgICAgbl9BUl9RMTRfczMyeDQgPSB2YWRkcV9zMzIoIG5fQVJfUTE0X3MzMng0LCB2cWRtdWxo
cV9sYW5lX3MzMiggdG1wMl9zMzJ4NCwgQVJfc2hwX1EyOF9zMzJ4MiwgMCApICk7CisgICAgICAg
IH0KKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+c0FSMl9RMTRbIHNoYXBpbmdMUENPcmRl
ciAtIDEgXSwgdG1wMV9zMzJ4NCApOworICAgICAgICBuX0FSX1ExNF9zMzJ4NCA9IHZhZGRxX3Mz
Miggbl9BUl9RMTRfczMyeDQsIHZxZG11bGhxX2xhbmVfczMyKCB0bXAxX3MzMng0LCBBUl9zaHBf
UTI4X3MzMngyLCAxICkgKTsKKyAgICAgICAgbl9BUl9RMTRfczMyeDQgPSB2c2hscV9uX3MzMigg
bl9BUl9RMTRfczMyeDQsIDEgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUTEx
IC0+IFExMiAqLworICAgICAgICBuX0FSX1ExNF9zMzJ4NCA9IHZhZGRxX3MzMiggbl9BUl9RMTRf
czMyeDQsIHZxZG11bGhxX25fczMyKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5MRl9BUl9RMTQgKSwg
c2lsa19MU0hJRlQzMiggVGlsdF9RMTQsIDE2ICkgPj4gMSApICk7ICAgICAvKiBRMTIgKi8KKyAg
ICAgICAgbl9BUl9RMTRfczMyeDQgPSB2c2hscV9uX3MzMiggbl9BUl9RMTRfczMyeDQsIDIgKTsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUTEyIC0+IFExNCAqLworICAgICAgICBu
X0xGX1ExNF9zMzJ4NCA9IHZxZG11bGhxX25fczMyKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5TaGFw
ZV9RMTRbICpzbXBsX2J1Zl9pZHggXSApLCBMRl9zaHBfUTI5ICk7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBRMTIgKi8KKyAgICAgICAgbl9MRl9RMTRfczMyeDQg
PSB2YWRkcV9zMzIoIG5fTEZfUTE0X3MzMng0LCB2cWRtdWxocV9uX3MzMiggdmxkMXFfczMyKCBw
c0RlbERlYy0+TEZfQVJfUTE0ICksIHNpbGtfTFNISUZUMzIoIExGX3NocF9RMTQgPj4gMTYgLCAx
NSApICkgKTsgLyogUTEyICovCisgICAgICAgIG5fTEZfUTE0X3MzMng0ID0gdnNobHFfbl9zMzIo
IG5fTEZfUTE0X3MzMng0LCAyICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFEx
MiAtPiBRMTQgKi8KKworICAgICAgICAvKiBJbnB1dCBtaW51cyBwcmVkaWN0aW9uIHBsdXMgbm9p
c2UgZmVlZGJhY2sgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIC8qIHIgPSB4WyBp
IF0gLSBMVFBfcHJlZCAtIExQQ19wcmVkICsgbl9BUiArIG5fVGlsdCArIG5fTEYgKyBuX0xUUCAg
Ki8KKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZhZGRxX3MzMiggbl9BUl9RMTRfczMyeDQsIG5fTEZf
UTE0X3MzMng0ICk7ICAgICAgICAgICAgICAgLyogUTE0ICovCisgICAgICAgIHRtcDJfczMyeDQg
PSB2YWRkcV9zMzIoIHZkdXBxX25fczMyKCBuX0xUUF9RMTQgKSwgTFBDX3ByZWRfUTE0X3MzMng0
ICk7IC8qIFExMyAqLworICAgICAgICB0bXAxX3MzMng0ID0gdnN1YnFfczMyKCB0bXAyX3MzMng0
LCB0bXAxX3MzMng0ICk7ICAgICAgICAgICAgICAgICAgICAgICAvKiBRMTMgKi8KKyAgICAgICAg
dG1wMV9zMzJ4NCA9IHZyc2hycV9uX3MzMiggdG1wMV9zMzJ4NCwgNCApOyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogUTEwICovCisgICAgICAgIHRtcDFfczMyeDQgPSB2c3VicV9zMzIo
IHZkdXBxX25fczMyKCB4X1ExMFsgaSBdICksIHRtcDFfczMyeDQgKTsgICAgICAgIC8qIHJlc2lk
dWFsIGVycm9yIFExMCAqLworCisgICAgICAgIC8qIEZsaXAgc2lnbiBkZXBlbmRpbmcgb24gZGl0
aGVyICovCisgICAgICAgIHNpZ25fczMyeDQgPSB2cmVpbnRlcnByZXRxX3MzMl91MzIoIHZjbHRx
X3MzMiggU2VlZF9zMzJ4NCwgdmR1cHFfbl9zMzIoIDAgKSApICk7CisgICAgICAgIHRtcDFfczMy
eDQgPSB2ZW9ycV9zMzIoIHRtcDFfczMyeDQsIHNpZ25fczMyeDQgKTsKKyAgICAgICAgdG1wMV9z
MzJ4NCA9IHZzdWJxX3MzMiggdG1wMV9zMzJ4NCwgc2lnbl9zMzJ4NCApOworICAgICAgICB0bXAx
X3MzMng0ID0gdm1heHFfczMyKCB0bXAxX3MzMng0LCB2ZHVwcV9uX3MzMiggLSggMzEgPDwgMTAg
KSApICk7CisgICAgICAgIHRtcDFfczMyeDQgPSB2bWlucV9zMzIoIHRtcDFfczMyeDQsIHZkdXBx
X25fczMyKCAzMCA8PCAxMCApICk7CisgICAgICAgIHJfUTEwX3MxNng0ID0gdm1vdm5fczMyKCB0
bXAxX3MzMng0ICk7CisKKyAgICAgICAgLyogRmluZCB0d28gcXVhbnRpemF0aW9uIGxldmVsIGNh
bmRpZGF0ZXMgYW5kIG1lYXN1cmUgdGhlaXIgcmF0ZS1kaXN0b3J0aW9uICovCisgICAgICAgIHsK
KyAgICAgICAgICAgIGludDE2eDRfdCBxMV9RMTBfczE2eDQgPSB2c3ViX3MxNiggcl9RMTBfczE2
eDQsIHZkdXBfbl9zMTYoIG9mZnNldF9RMTAgKSApOworICAgICAgICAgICAgaW50MTZ4NF90IHEx
X1EwX3MxNng0ID0gdnNocl9uX3MxNiggcTFfUTEwX3MxNng0LCAxMCApOworICAgICAgICAgICAg
aW50MTZ4NF90IHEyX1ExMF9zMTZ4NDsKKyAgICAgICAgICAgIGludDMyeDRfdCByZDFfUTEwX3Mz
Mng0LCByZDJfUTEwX3MzMng0OworICAgICAgICAgICAgdWludDMyeDRfdCB0X3UzMng0OworCisg
ICAgICAgICAgICBpZiggTGFtYmRhX1ExMCA+IDIwNDggKSB7CisgICAgICAgICAgICAgICAgLyog
Rm9yIGFnZ3Jlc3NpdmUgUkRPLCB0aGUgYmlhcyBiZWNvbWVzIG1vcmUgdGhhbiBvbmUgcHVsc2Uu
ICovCisgICAgICAgICAgICAgICAgY29uc3QgaW50IHJkb19vZmZzZXQgPSBMYW1iZGFfUTEwLzIg
LSA1MTI7CisgICAgICAgICAgICAgICAgY29uc3QgdWludDE2eDRfdCBncmVhdGVyVGhhblJkbyA9
IHZjZ3RfczE2KCBxMV9RMTBfczE2eDQsIHZkdXBfbl9zMTYoIHJkb19vZmZzZXQgKSApOworICAg
ICAgICAgICAgICAgIGNvbnN0IHVpbnQxNng0X3QgbGVzc1RoYW5NaW51c1JkbyA9IHZjbHRfczE2
KCBxMV9RMTBfczE2eDQsIHZkdXBfbl9zMTYoIC1yZG9fb2Zmc2V0ICkgKTsKKyAgICAgICAgICAg
ICAgICAvKiBJZiBMYW1iZGFfUTEwID4gMzI3NjcsIHRoZW4gcTFfUTAsIHExX1ExMCBhbmQgcTJf
UTEwIG11c3QgY2hhbmdlIHRvIDMyLWJpdC4gKi8KKyAgICAgICAgICAgICAgICBzaWxrX2Fzc2Vy
dCggTGFtYmRhX1ExMCA8PSAzMjc2NyApOworCisgICAgICAgICAgICAgICAgcTFfUTBfczE2eDQg
PSB2cmVpbnRlcnByZXRfczE2X3UxNiggdmNsdF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3Mx
NiggMCApICkgKTsKKyAgICAgICAgICAgICAgICBxMV9RMF9zMTZ4NCA9IHZic2xfczE2KCBncmVh
dGVyVGhhblJkbywgdnN1Yl9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNiggcmRvX29mZnNl
dCApICksIHExX1EwX3MxNng0ICk7CisgICAgICAgICAgICAgICAgcTFfUTBfczE2eDQgPSB2YnNs
X3MxNiggbGVzc1RoYW5NaW51c1JkbywgdmFkZF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3Mx
NiggcmRvX29mZnNldCApICksIHExX1EwX3MxNng0ICk7CisgICAgICAgICAgICAgICAgcTFfUTBf
czE2eDQgPSB2c2hyX25fczE2KCBxMV9RMF9zMTZ4NCwgMTAgKTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBjb25zdCB1aW50MTZ4NF90IGVxdWFsMF91MTZ4
NCA9IHZjZXFfczE2KCBxMV9RMF9zMTZ4NCwgdmR1cF9uX3MxNiggMCApICk7CisgICAgICAgICAg
ICAgICAgY29uc3QgdWludDE2eDRfdCBlcXVhbE1pbnVzMV91MTZ4NCA9IHZjZXFfczE2KCBxMV9R
MF9zMTZ4NCwgdmR1cF9uX3MxNiggLTEgKSApOworICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQx
Nng0X3QgbGVzc1RoYW5NaW51czFfdTE2eDQgPSB2Y2x0X3MxNiggcTFfUTBfczE2eDQsIHZkdXBf
bl9zMTYoIC0xICkgKTsKKyAgICAgICAgICAgICAgICBpbnQxNng0X3QgdG1wMV9zMTZ4NCwgdG1w
Ml9zMTZ4NDsKKworICAgICAgICAgICAgICAgIHExX1ExMF9zMTZ4NCA9IHZzaGxfbl9zMTYoIHEx
X1EwX3MxNng0LCAxMCApOworICAgICAgICAgICAgICAgIHRtcDFfczE2eDQgPSB2YWRkX3MxNigg
cTFfUTEwX3MxNng0LCB2ZHVwX25fczE2KCBvZmZzZXRfUTEwIC0gUVVBTlRfTEVWRUxfQURKVVNU
X1ExMCApICk7CisgICAgICAgICAgICAgICAgcTFfUTEwX3MxNng0ID0gdmFkZF9zMTYoIHExX1Ex
MF9zMTZ4NCwgdmR1cF9uX3MxNiggb2Zmc2V0X1ExMCArIFFVQU5UX0xFVkVMX0FESlVTVF9RMTAg
KSApOworICAgICAgICAgICAgICAgIHExX1ExMF9zMTZ4NCA9IHZic2xfczE2KCBsZXNzVGhhbk1p
bnVzMV91MTZ4NCwgcTFfUTEwX3MxNng0LCB0bXAxX3MxNng0ICk7CisgICAgICAgICAgICAgICAg
cTFfUTEwX3MxNng0ID0gdmJzbF9zMTYoIGVxdWFsMF91MTZ4NCwgdmR1cF9uX3MxNiggb2Zmc2V0
X1ExMCApLCBxMV9RMTBfczE2eDQgKTsKKyAgICAgICAgICAgICAgICBxMV9RMTBfczE2eDQgPSB2
YnNsX3MxNiggZXF1YWxNaW51czFfdTE2eDQsIHZkdXBfbl9zMTYoIG9mZnNldF9RMTAgLSAoIDEw
MjQgLSBRVUFOVF9MRVZFTF9BREpVU1RfUTEwICkgKSwgcTFfUTEwX3MxNng0ICk7CisgICAgICAg
ICAgICAgICAgcTJfUTEwX3MxNng0ID0gdmFkZF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3Mx
NiggMTAyNCApICk7CisgICAgICAgICAgICAgICAgcTJfUTEwX3MxNng0ID0gdmJzbF9zMTYoIGVx
dWFsMF91MTZ4NCwgdmR1cF9uX3MxNiggb2Zmc2V0X1ExMCArIDEwMjQgLSBRVUFOVF9MRVZFTF9B
REpVU1RfUTEwICksIHEyX1ExMF9zMTZ4NCApOworICAgICAgICAgICAgICAgIHEyX1ExMF9zMTZ4
NCA9IHZic2xfczE2KCBlcXVhbE1pbnVzMV91MTZ4NCwgdmR1cF9uX3MxNiggb2Zmc2V0X1ExMCAp
LCBxMl9RMTBfczE2eDQgKTsKKyAgICAgICAgICAgICAgICB0bXAxX3MxNng0ID0gcTFfUTEwX3Mx
Nng0OworICAgICAgICAgICAgICAgIHRtcDJfczE2eDQgPSBxMl9RMTBfczE2eDQ7CisgICAgICAg
ICAgICAgICAgdG1wMV9zMTZ4NCA9IHZic2xfczE2KCB2b3JyX3UxNiggZXF1YWxNaW51czFfdTE2
eDQsIGxlc3NUaGFuTWludXMxX3UxNng0ICksIHZuZWdfczE2KCB0bXAxX3MxNng0ICksIHRtcDFf
czE2eDQgKTsKKyAgICAgICAgICAgICAgICB0bXAyX3MxNng0ID0gdmJzbF9zMTYoIGxlc3NUaGFu
TWludXMxX3UxNng0LCB2bmVnX3MxNiggdG1wMl9zMTZ4NCApLCB0bXAyX3MxNng0ICk7CisgICAg
ICAgICAgICAgICAgcmQxX1ExMF9zMzJ4NCA9IHZtdWxsX3MxNiggdG1wMV9zMTZ4NCwgdmR1cF9u
X3MxNiggTGFtYmRhX1ExMCApICk7CisgICAgICAgICAgICAgICAgcmQyX1ExMF9zMzJ4NCA9IHZt
dWxsX3MxNiggdG1wMl9zMTZ4NCwgdmR1cF9uX3MxNiggTGFtYmRhX1ExMCApICk7CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIHJyX1ExMF9zMTZ4NCA9IHZzdWJfczE2KCByX1ExMF9zMTZ4
NCwgcTFfUTEwX3MxNng0ICk7CisgICAgICAgICAgICByZDFfUTEwX3MzMng0ID0gdm1sYWxfczE2
KCByZDFfUTEwX3MzMng0LCBycl9RMTBfczE2eDQsIHJyX1ExMF9zMTZ4NCApOworICAgICAgICAg
ICAgcmQxX1ExMF9zMzJ4NCA9IHZzaHJxX25fczMyKCByZDFfUTEwX3MzMng0LCAxMCApOworCisg
ICAgICAgICAgICBycl9RMTBfczE2eDQgPSB2c3ViX3MxNiggcl9RMTBfczE2eDQsIHEyX1ExMF9z
MTZ4NCApOworICAgICAgICAgICAgcmQyX1ExMF9zMzJ4NCA9IHZtbGFsX3MxNiggcmQyX1ExMF9z
MzJ4NCwgcnJfUTEwX3MxNng0LCBycl9RMTBfczE2eDQgKTsKKyAgICAgICAgICAgIHJkMl9RMTBf
czMyeDQgPSB2c2hycV9uX3MzMiggcmQyX1ExMF9zMzJ4NCwgMTAgKTsKKworICAgICAgICAgICAg
dG1wMl9zMzJ4NCA9IHZsZDFxX3MzMiggcHNEZWxEZWMtPlJEX1ExMCApOworICAgICAgICAgICAg
dG1wMV9zMzJ4NCA9IHZhZGRxX3MzMiggdG1wMl9zMzJ4NCwgdm1pbnFfczMyKCByZDFfUTEwX3Mz
Mng0LCByZDJfUTEwX3MzMng0ICkgKTsKKyAgICAgICAgICAgIHRtcDJfczMyeDQgPSB2YWRkcV9z
MzIoIHRtcDJfczMyeDQsIHZtYXhxX3MzMiggcmQxX1ExMF9zMzJ4NCwgcmQyX1ExMF9zMzJ4NCAp
ICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5SRF9RMTAsIHRt
cDFfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMSBdLlJE
X1ExMCwgdG1wMl9zMzJ4NCApOworICAgICAgICAgICAgdF91MzJ4NCA9IHZjbHRxX3MzMiggcmQx
X1ExMF9zMzJ4NCwgcmQyX1ExMF9zMzJ4NCApOworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHZi
c2xxX3MzMiggdF91MzJ4NCwgdm1vdmxfczE2KCBxMV9RMTBfczE2eDQgKSwgdm1vdmxfczE2KCBx
Ml9RMTBfczE2eDQgKSApOworICAgICAgICAgICAgdG1wMl9zMzJ4NCA9IHZic2xxX3MzMiggdF91
MzJ4NCwgdm1vdmxfczE2KCBxMl9RMTBfczE2eDQgKSwgdm1vdmxfczE2KCBxMV9RMTBfczE2eDQg
KSApOworICAgICAgICAgICAgdnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uUV9RMTAsIHRt
cDFfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMSBdLlFf
UTEwLCB0bXAyX3MzMng0ICk7CisgICAgICAgIH0KKworICAgICAgICB7CisgICAgICAgICAgICAv
KiBVcGRhdGUgc3RhdGVzIGZvciBiZXN0IHF1YW50aXphdGlvbiAqLworICAgICAgICAgICAgaW50
MzJ4NF90IGV4Y19RMTRfczMyeDQsIExQQ19leGNfUTE0X3MzMng0LCB4cV9RMTRfczMyeDQsIHNM
Rl9BUl9zaHBfUTE0X3MzMng0OworCisgICAgICAgICAgICAvKiBRdWFudGl6ZWQgZXhjaXRhdGlv
biAqLworICAgICAgICAgICAgZXhjX1ExNF9zMzJ4NCA9IHZzaGxxX25fczMyKCB0bXAxX3MzMng0
LCA0ICk7CisgICAgICAgICAgICBleGNfUTE0X3MzMng0ID0gdmVvcnFfczMyKCBleGNfUTE0X3Mz
Mng0LCBzaWduX3MzMng0ICk7CisgICAgICAgICAgICBleGNfUTE0X3MzMng0ID0gdnN1YnFfczMy
KCBleGNfUTE0X3MzMng0LCBzaWduX3MzMng0ICk7CisKKyAgICAgICAgICAgIC8qIEFkZCBwcmVk
aWN0aW9ucyAqLworICAgICAgICAgICAgTFBDX2V4Y19RMTRfczMyeDQgPSB2YWRkcV9zMzIoIGV4
Y19RMTRfczMyeDQsIHZkdXBxX25fczMyKCBMVFBfcHJlZF9RMTQgKSApOworICAgICAgICAgICAg
eHFfUTE0X3MzMng0ICAgICAgPSB2YWRkcV9zMzIoIExQQ19leGNfUTE0X3MzMng0LCBMUENfcHJl
ZF9RMTRfczMyeDQgKTsKKworICAgICAgICAgICAgLyogVXBkYXRlIHN0YXRlcyAqLworICAgICAg
ICAgICAgdG1wMV9zMzJ4NCA9IHZzdWJxX3MzMiggeHFfUTE0X3MzMng0LCB2c2hscV9uX3MzMigg
dmR1cHFfbl9zMzIoIHhfUTEwWyBpIF0gKSwgNCApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIo
IHBzU2FtcGxlU3RhdGVbIDAgXS5EaWZmX1ExNCwgdG1wMV9zMzJ4NCApOworICAgICAgICAgICAg
c0xGX0FSX3NocF9RMTRfczMyeDQgPSB2c3VicV9zMzIoIHRtcDFfczMyeDQsIG5fQVJfUTE0X3Mz
Mng0ICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5zTFRQX3No
cF9RMTQsIHZzdWJxX3MzMiggc0xGX0FSX3NocF9RMTRfczMyeDQsIG5fTEZfUTE0X3MzMng0ICkg
KTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLkxGX0FSX1ExNCwg
c0xGX0FSX3NocF9RMTRfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVT
dGF0ZVsgMCBdLkxQQ19leGNfUTE0LCBMUENfZXhjX1ExNF9zMzJ4NCApOworICAgICAgICAgICAg
dnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0ueHFfUTE0LCB4cV9RMTRfczMyeDQgKTsKKwor
ICAgICAgICAgICAgLyogUXVhbnRpemVkIGV4Y2l0YXRpb24gKi8KKyAgICAgICAgICAgIGV4Y19R
MTRfczMyeDQgPSB2c2hscV9uX3MzMiggdG1wMl9zMzJ4NCwgNCApOworICAgICAgICAgICAgZXhj
X1ExNF9zMzJ4NCA9IHZlb3JxX3MzMiggZXhjX1ExNF9zMzJ4NCwgc2lnbl9zMzJ4NCApOworICAg
ICAgICAgICAgZXhjX1ExNF9zMzJ4NCA9IHZzdWJxX3MzMiggZXhjX1ExNF9zMzJ4NCwgc2lnbl9z
MzJ4NCApOworCisgICAgICAgICAgICAvKiBBZGQgcHJlZGljdGlvbnMgKi8KKyAgICAgICAgICAg
IExQQ19leGNfUTE0X3MzMng0ID0gdmFkZHFfczMyKCBleGNfUTE0X3MzMng0LCB2ZHVwcV9uX3Mz
MiggTFRQX3ByZWRfUTE0ICkgKTsKKyAgICAgICAgICAgIHhxX1ExNF9zMzJ4NCAgICAgID0gdmFk
ZHFfczMyKCBMUENfZXhjX1ExNF9zMzJ4NCwgTFBDX3ByZWRfUTE0X3MzMng0ICk7CisKKyAgICAg
ICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMgKi8KKyAgICAgICAgICAgIHRtcDFfczMyeDQgPSB2c3Vi
cV9zMzIoIHhxX1ExNF9zMzJ4NCwgdnNobHFfbl9zMzIoIHZkdXBxX25fczMyKCB4X1ExMFsgaSBd
ICksIDQgKSApOworICAgICAgICAgICAgdnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAxIF0uRGlm
Zl9RMTQsIHRtcDFfczMyeDQgKTsKKyAgICAgICAgICAgIHNMRl9BUl9zaHBfUTE0X3MzMng0ID0g
dnN1YnFfczMyKCB0bXAxX3MzMng0LCBuX0FSX1ExNF9zMzJ4NCApOworICAgICAgICAgICAgdnN0
MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAxIF0uc0xUUF9zaHBfUTE0LCB2c3VicV9zMzIoIHNMRl9B
Ul9zaHBfUTE0X3MzMng0LCBuX0xGX1ExNF9zMzJ4NCApICk7CisgICAgICAgICAgICB2c3QxcV9z
MzIoIHBzU2FtcGxlU3RhdGVbIDEgXS5MRl9BUl9RMTQsIHNMRl9BUl9zaHBfUTE0X3MzMng0ICk7
CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDEgXS5MUENfZXhjX1ExNCwg
TFBDX2V4Y19RMTRfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0
ZVsgMSBdLnhxX1ExNCwgeHFfUTE0X3MzMng0ICk7CisgICAgICAgIH0KKworICAgICAgICAqc21w
bF9idWZfaWR4ID0gKnNtcGxfYnVmX2lkeCA/ICggKnNtcGxfYnVmX2lkeCAtIDEgKSA6ICggREVD
SVNJT05fREVMQVkgLSAxKTsKKyAgICAgICAgbGFzdF9zbXBsZV9pZHggPSAqc21wbF9idWZfaWR4
ICsgZGVjaXNpb25EZWxheSArIERFQ0lTSU9OX0RFTEFZOworICAgICAgICBpZiggbGFzdF9zbXBs
ZV9pZHggPj0gREVDSVNJT05fREVMQVkgKSBsYXN0X3NtcGxlX2lkeCAtPSBERUNJU0lPTl9ERUxB
WTsKKyAgICAgICAgaWYoIGxhc3Rfc21wbGVfaWR4ID49IERFQ0lTSU9OX0RFTEFZICkgbGFzdF9z
bXBsZV9pZHggLT0gREVDSVNJT05fREVMQVk7CisKKyAgICAgICAgLyogRmluZCB3aW5uZXIgKi8K
KyAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0ZVsgMCBdLlJEX1ExMFsgMCBdOworICAg
ICAgICBXaW5uZXJfaW5kID0gMDsKKyAgICAgICAgZm9yKCBrID0gMTsgayA8IG5TdGF0ZXNEZWxh
eWVkRGVjaXNpb247IGsrKyApIHsKKyAgICAgICAgICAgIGlmKCBwc1NhbXBsZVN0YXRlWyAwIF0u
UkRfUTEwWyBrIF0gPCBSRG1pbl9RMTAgKSB7CisgICAgICAgICAgICAgICAgUkRtaW5fUTEwID0g
cHNTYW1wbGVTdGF0ZVsgMCBdLlJEX1ExMFsgayBdOworICAgICAgICAgICAgICAgIFdpbm5lcl9p
bmQgPSBrOworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgLyogSW5jcmVhc2Ug
UkQgdmFsdWVzIG9mIGV4cGlyZWQgc3RhdGVzICovCisgICAgICAgIHsKKyAgICAgICAgICAgIHVp
bnQzMng0X3QgdF91MzJ4NDsKKyAgICAgICAgICAgIFdpbm5lcl9yYW5kX3N0YXRlID0gcHNEZWxE
ZWMtPlJhbmRTdGF0ZVsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdOworICAgICAgICAg
ICAgdF91MzJ4NCA9IHZjZXFxX3MzMiggdmxkMXFfczMyKCBwc0RlbERlYy0+UmFuZFN0YXRlWyBs
YXN0X3NtcGxlX2lkeCBdICksIHZkdXBxX25fczMyKCBXaW5uZXJfcmFuZF9zdGF0ZSApICk7Cisg
ICAgICAgICAgICB0X3UzMng0ID0gdm12bnFfdTMyKCB0X3UzMng0ICk7CisgICAgICAgICAgICB0
X3UzMng0ID0gdnNocnFfbl91MzIoIHRfdTMyeDQsIDUgKTsKKyAgICAgICAgICAgIHRtcDFfczMy
eDQgPSB2bGQxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5SRF9RMTAgKTsKKyAgICAgICAgICAg
IHRtcDJfczMyeDQgPSB2bGQxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDEgXS5SRF9RMTAgKTsKKyAg
ICAgICAgICAgIHRtcDFfczMyeDQgPSB2YWRkcV9zMzIoIHRtcDFfczMyeDQsIHZyZWludGVycHJl
dHFfczMyX3UzMiggdF91MzJ4NCApICk7CisgICAgICAgICAgICB0bXAyX3MzMng0ID0gdmFkZHFf
czMyKCB0bXAyX3MzMng0LCB2cmVpbnRlcnByZXRxX3MzMl91MzIoIHRfdTMyeDQgKSApOworICAg
ICAgICAgICAgdnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uUkRfUTEwLCB0bXAxX3MzMng0
ICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDEgXS5SRF9RMTAsIHRt
cDJfczMyeDQgKTsKKworICAgICAgICAgICAgLyogRmluZCB3b3JzdCBpbiBmaXJzdCBzZXQgYW5k
IGJlc3QgaW4gc2Vjb25kIHNldCAqLworICAgICAgICAgICAgUkRtYXhfUTEwID0gcHNTYW1wbGVT
dGF0ZVsgMCBdLlJEX1ExMFsgMCBdOworICAgICAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVT
dGF0ZVsgMSBdLlJEX1ExMFsgMCBdOworICAgICAgICAgICAgUkRtYXhfaW5kID0gMDsKKyAgICAg
ICAgICAgIFJEbWluX2luZCA9IDA7CisgICAgICAgICAgICBmb3IoIGsgPSAxOyBrIDwgblN0YXRl
c0RlbGF5ZWREZWNpc2lvbjsgaysrICkgeworICAgICAgICAgICAgICAgIC8qIGZpbmQgd29yc3Qg
aW4gZmlyc3Qgc2V0ICovCisgICAgICAgICAgICAgICAgaWYoIHBzU2FtcGxlU3RhdGVbIDAgXS5S
RF9RMTBbIGsgXSA+IFJEbWF4X1ExMCApIHsKKyAgICAgICAgICAgICAgICAgICAgUkRtYXhfUTEw
ID0gcHNTYW1wbGVTdGF0ZVsgMCBdLlJEX1ExMFsgayBdOworICAgICAgICAgICAgICAgICAgICBS
RG1heF9pbmQgPSBrOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAvKiBmaW5k
IGJlc3QgaW4gc2Vjb25kIHNldCAqLworICAgICAgICAgICAgICAgIGlmKCBwc1NhbXBsZVN0YXRl
WyAxIF0uUkRfUTEwWyBrIF0gPCBSRG1pbl9RMTAgKSB7CisgICAgICAgICAgICAgICAgICAgIFJE
bWluX1ExMCA9IHBzU2FtcGxlU3RhdGVbIDEgXS5SRF9RMTBbIGsgXTsKKyAgICAgICAgICAgICAg
ICAgICAgUkRtaW5faW5kID0gazsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9Cisg
ICAgICAgIH0KKworICAgICAgICAvKiBSZXBsYWNlIGEgc3RhdGUgaWYgYmVzdCBmcm9tIHNlY29u
ZCBzZXQgb3V0cGVyZm9ybXMgd29yc3QgaW4gZmlyc3Qgc2V0ICovCisgICAgICAgIGlmKCBSRG1p
bl9RMTAgPCBSRG1heF9RMTAgKSB7CisgICAgICAgICAgICBvcHVzX2ludDMyICgqcHRyKVtORU9O
X01BWF9ERUxfREVDX1NUQVRFU10gPSBwc0RlbERlYy0+UmFuZFN0YXRlOworICAgICAgICAgICAg
Y29uc3QgaW50IG51bU90aGVycyA9IChpbnQpKCAoIHNpemVvZiggTlNRX2RlbF9kZWNzX3N0cnVj
dCApIC0gc2l6ZW9mKCAoIChOU1FfZGVsX2RlY3Nfc3RydWN0ICopMCApLT5zTFBDX1ExNCApICkK
KyAgICAgICAgICAgICAgICAvICggTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKiBzaXplb2YoIG9w
dXNfaW50MzIgKSApICk7CisgICAgICAgICAgICAvKiBPbmx5ICggcHJlZGljdExQQ09yZGVyIC0g
MSApIG9mIHNMUENfUTE0IGJ1ZmZlciBuZWVkIHRvIGJlIHVwZGF0ZWQsIHRob3VnaCB0aGUgZmly
c3Qgc2V2ZXJhbCAgICAgKi8KKyAgICAgICAgICAgIC8qIHVzZWxlc3Mgc0xQQ19RMTRbXSB3aWxs
IGJlIGRpZmZlcmVudCBjb21wYXJpbmcgd2l0aCBDIHdoZW4gcHJlZGljdExQQ09yZGVyIDwgTlNR
X0xQQ19CVUZfTEVOR1RILiAqLworICAgICAgICAgICAgLyogSGVyZSBqdXN0IHVwZGF0ZSBjb25z
dGFudCAoIE5TUV9MUENfQlVGX0xFTkdUSCAtIDEgKSBmb3Igc2ltcGxpY2l0eS4gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgICAgICAgICBmb3IoIGogPSBpICsgMTsgaiA8IGkg
KyBOU1FfTFBDX0JVRl9MRU5HVEg7IGorKyApIHsKKyAgICAgICAgICAgICAgICBwc0RlbERlYy0+
c0xQQ19RMTRbIGogXVsgUkRtYXhfaW5kIF0gPSBwc0RlbERlYy0+c0xQQ19RMTRbIGogXVsgUkRt
aW5faW5kIF07CisgICAgICAgICAgICB9CisgICAgICAgICAgICBmb3IoIGogPSAwOyBqIDwgbnVt
T3RoZXJzOyBqKysgKSB7CisgICAgICAgICAgICAgICAgcHRyWyBqIF1bIFJEbWF4X2luZCBdID0g
cHRyWyBqIF1bIFJEbWluX2luZCBdOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBwc1Nh
bXBsZVN0YXRlWyAwIF0uUV9RMTBbIFJEbWF4X2luZCBdID0gcHNTYW1wbGVTdGF0ZVsgMSBdLlFf
UTEwWyBSRG1pbl9pbmQgXTsKKyAgICAgICAgICAgIHBzU2FtcGxlU3RhdGVbIDAgXS5SRF9RMTBb
IFJEbWF4X2luZCBdID0gcHNTYW1wbGVTdGF0ZVsgMSBdLlJEX1ExMFsgUkRtaW5faW5kIF07Cisg
ICAgICAgICAgICBwc1NhbXBsZVN0YXRlWyAwIF0ueHFfUTE0WyBSRG1heF9pbmQgXSA9IHBzU2Ft
cGxlU3RhdGVbIDEgXS54cV9RMTRbIFJEbWluX2luZCBdOworICAgICAgICAgICAgcHNTYW1wbGVT
dGF0ZVsgMCBdLkxGX0FSX1ExNFsgUkRtYXhfaW5kIF0gPSBwc1NhbXBsZVN0YXRlWyAxIF0uTEZf
QVJfUTE0WyBSRG1pbl9pbmQgXTsKKyAgICAgICAgICAgIHBzU2FtcGxlU3RhdGVbIDAgXS5EaWZm
X1ExNFsgUkRtYXhfaW5kIF0gPSBwc1NhbXBsZVN0YXRlWyAxIF0uRGlmZl9RMTRbIFJEbWluX2lu
ZCBdOworICAgICAgICAgICAgcHNTYW1wbGVTdGF0ZVsgMCBdLnNMVFBfc2hwX1ExNFsgUkRtYXhf
aW5kIF0gPSBwc1NhbXBsZVN0YXRlWyAxIF0uc0xUUF9zaHBfUTE0WyBSRG1pbl9pbmQgXTsKKyAg
ICAgICAgICAgIHBzU2FtcGxlU3RhdGVbIDAgXS5MUENfZXhjX1ExNFsgUkRtYXhfaW5kIF0gPSBw
c1NhbXBsZVN0YXRlWyAxIF0uTFBDX2V4Y19RMTRbIFJEbWluX2luZCBdOworICAgICAgICB9CisK
KyAgICAgICAgLyogV3JpdGUgc2FtcGxlcyBmcm9tIHdpbm5lciB0byBvdXRwdXQgYW5kIGxvbmct
dGVybSBmaWx0ZXIgc3RhdGVzICovCisgICAgICAgIGlmKCBzdWJmciA+IDAgfHwgaSA+PSBkZWNp
c2lvbkRlbGF5ICkgeworICAgICAgICAgICAgcHVsc2VzWyAgaSAtIGRlY2lzaW9uRGVsYXkgXSA9
IChvcHVzX2ludDgpc2lsa19SU0hJRlRfUk9VTkQoIHBzRGVsRGVjLT5RX1ExMFsgbGFzdF9zbXBs
ZV9pZHggXVsgV2lubmVyX2luZCBdLCAxMCApOworICAgICAgICAgICAgeHFbIGkgLSBkZWNpc2lv
bkRlbGF5IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCgKKyAg
ICAgICAgICAgICAgICBzaWxrX1NNVUxXVyggcHNEZWxEZWMtPlhxX1ExNFsgbGFzdF9zbXBsZV9p
ZHggXVsgV2lubmVyX2luZCBdLCBkZWxheWVkR2Fpbl9RMTBbIGxhc3Rfc21wbGVfaWR4IF0gKSwg
OCApICk7CisgICAgICAgICAgICBOU1EtPnNMVFBfc2hwX1ExNFsgTlNRLT5zTFRQX3NocF9idWZf
aWR4IC0gZGVjaXNpb25EZWxheSBdID0gcHNEZWxEZWMtPlNoYXBlX1ExNFsgbGFzdF9zbXBsZV9p
ZHggXVsgV2lubmVyX2luZCBdOworICAgICAgICAgICAgc0xUUF9RMTVbICAgICAgICAgIE5TUS0+
c0xUUF9idWZfaWR4ICAgICAtIGRlY2lzaW9uRGVsYXkgXSA9IHBzRGVsRGVjLT5QcmVkX1ExNVsg
IGxhc3Rfc21wbGVfaWR4IF1bIFdpbm5lcl9pbmQgXTsKKyAgICAgICAgfQorICAgICAgICBOU1Et
PnNMVFBfc2hwX2J1Zl9pZHgrKzsKKyAgICAgICAgTlNRLT5zTFRQX2J1Zl9pZHgrKzsKKworICAg
ICAgICAvKiBVcGRhdGUgc3RhdGVzICovCisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPkxG
X0FSX1ExNCwgdmxkMXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uTEZfQVJfUTE0ICkgKTsKKyAg
ICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+RGlmZl9RMTQsIHZsZDFxX3MzMiggcHNTYW1wbGVT
dGF0ZVsgMCBdLkRpZmZfUTE0ICkgKTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+c0xQ
Q19RMTRbIE5TUV9MUENfQlVGX0xFTkdUSCArIGkgXSwgdmxkMXFfczMyKCBwc1NhbXBsZVN0YXRl
WyAwIF0ueHFfUTE0ICkgKTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+WHFfUTE0WyAq
c21wbF9idWZfaWR4IF0sIHZsZDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLnhxX1ExNCApICk7
CisgICAgICAgIHRtcDFfczMyeDQgPSB2bGQxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5RX1Ex
MCApOworICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5RX1ExMFsgKnNtcGxfYnVmX2lkeCBd
LCB0bXAxX3MzMng0ICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlByZWRfUTE1WyAq
c21wbF9idWZfaWR4IF0sIHZzaGxxX25fczMyKCB2bGQxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAg
XS5MUENfZXhjX1ExNCApLCAxICkgKTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+U2hh
cGVfUTE0WyAqc21wbF9idWZfaWR4IF0sIHZsZDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLnNM
VFBfc2hwX1ExNCApICk7CisgICAgICAgIHRtcDFfczMyeDQgPSB2cnNocnFfbl9zMzIoIHRtcDFf
czMyeDQsIDEwICk7CisgICAgICAgIHRtcDFfczMyeDQgPSB2YWRkcV9zMzIoIHZsZDFxX3MzMigg
cHNEZWxEZWMtPlNlZWQgKSwgdG1wMV9zMzJ4NCApOworICAgICAgICB2c3QxcV9zMzIoIHBzRGVs
RGVjLT5TZWVkLCB0bXAxX3MzMng0ICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlJh
bmRTdGF0ZVsgKnNtcGxfYnVmX2lkeCBdLCB0bXAxX3MzMng0ICk7CisgICAgICAgIHZzdDFxX3Mz
MiggcHNEZWxEZWMtPlJEX1ExMCwgdmxkMXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uUkRfUTEw
ICkgKTsKKyAgICAgICAgZGVsYXllZEdhaW5fUTEwWyAqc21wbF9idWZfaWR4IF0gPSBHYWluX1Ex
MDsKKyAgICB9CisgICAgLyogVXBkYXRlIExQQyBzdGF0ZXMgKi8KKyAgICBzaWxrX21lbWNweSgg
cHNEZWxEZWMtPnNMUENfUTE0WyAwIF0sIHBzRGVsRGVjLT5zTFBDX1ExNFsgbGVuZ3RoIF0sIE5F
T05fTUFYX0RFTF9ERUNfU1RBVEVTICogTlNRX0xQQ19CVUZfTEVOR1RIICogc2l6ZW9mKCBvcHVz
X2ludDMyICkgKTsKKworICAgIFJFU1RPUkVfU1RBQ0s7Cit9CisKK3N0YXRpYyBPUFVTX0lOTElO
RSB2b2lkIHNpbGtfU01VTFdCXzhfbmVvbigKKyAgICBjb25zdCBvcHVzX2ludDE2ICphLAorICAg
IGNvbnN0IGludDMyeDJfdCAgYiwKKyAgICBvcHVzX2ludDMyICAgICAgICpvCispCit7CisgICAg
Y29uc3QgaW50MTZ4OF90IGFfczE2eDggPSB2bGQxcV9zMTYoIGEgKTsKKyAgICBpbnQzMng0X3Qg
bzBfczMyeDQsIG8xX3MzMng0OworCisgICAgbzBfczMyeDQgPSB2c2hsbF9uX3MxNiggdmdldF9s
b3dfczE2KCBhX3MxNng4ICksIDE1ICk7CisgICAgbzFfczMyeDQgPSB2c2hsbF9uX3MxNiggdmdl
dF9oaWdoX3MxNiggYV9zMTZ4OCApLCAxNSApOworICAgIG8wX3MzMng0ID0gdnFkbXVsaHFfbGFu
ZV9zMzIoIG8wX3MzMng0LCBiLCAwICk7CisgICAgbzFfczMyeDQgPSB2cWRtdWxocV9sYW5lX3Mz
MiggbzFfczMyeDQsIGIsIDAgKTsKKyAgICB2c3QxcV9zMzIoIG8sIG8wX3MzMng0ICk7CisgICAg
dnN0MXFfczMyKCBvICsgNCwgbzFfczMyeDQgKTsKK30KKworLyogT25seSB3b3JrcyB3aGVuICgg
YiA+PSAtNjU1MzYgKSAmJiAoIGIgPCA2NTUzNiApLiAqLworc3RhdGljIE9QVVNfSU5MSU5FIHZv
aWQgc2lsa19TTVVMV1dfc21hbGxfYl80X25lb24oCisgICAgb3B1c19pbnQzMiAgICAgICAqYSwK
KyAgICBjb25zdCBpbnQzMngyX3QgIGJfczMyeDIpCit7CisgICAgaW50MzJ4NF90IG9fczMyeDQ7
CisKKyAgICBvX3MzMng0ID0gdmxkMXFfczMyKCBhICk7CisgICAgb19zMzJ4NCA9IHZxZG11bGhx
X2xhbmVfczMyKCBvX3MzMng0LCBiX3MzMngyLCAwICk7CisgICAgdnN0MXFfczMyKCBhLCBvX3Mz
Mng0ICk7Cit9CisKKy8qIE9ubHkgd29ya3Mgd2hlbiAoIGIgPj0gLTY1NTM2ICkgJiYgKCBiIDwg
NjU1MzYgKS4gKi8KK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfU01VTFdXX3NtYWxsX2Jf
OF9uZW9uKAorICAgIG9wdXNfaW50MzIgICAgICAgKmEsCisgICAgY29uc3QgaW50MzJ4Ml90ICBi
X3MzMngyCispCit7CisgICAgaW50MzJ4NF90IG8wX3MzMng0LCBvMV9zMzJ4NDsKKworICAgIG8w
X3MzMng0ID0gdmxkMXFfczMyKCBhICk7CisgICAgbzFfczMyeDQgPSB2bGQxcV9zMzIoIGEgKyA0
ICk7CisgICAgbzBfczMyeDQgPSB2cWRtdWxocV9sYW5lX3MzMiggbzBfczMyeDQsIGJfczMyeDIs
IDAgKTsKKyAgICBvMV9zMzJ4NCA9IHZxZG11bGhxX2xhbmVfczMyKCBvMV9zMzJ4NCwgYl9zMzJ4
MiwgMCApOworICAgIHZzdDFxX3MzMiggYSwgbzBfczMyeDQgKTsKKyAgICB2c3QxcV9zMzIoIGEg
KyA0LCBvMV9zMzJ4NCApOworfQorCitzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX1NNVUxX
V180X25lb24oCisgICAgb3B1c19pbnQzMiAgICAgICAqYSwKKyAgICBjb25zdCBpbnQzMngyX3Qg
IGJfczMyeDIpCit7CisgICAgaW50MzJ4NF90IGFfczMyeDQsIG9fczMyeDQ7CisKKyAgICBhX3Mz
Mng0ID0gdmxkMXFfczMyKCBhICk7CisgICAgb19zMzJ4NCA9IHZxZG11bGhxX2xhbmVfczMyKCBh
X3MzMng0LCBiX3MzMngyLCAwICk7CisgICAgb19zMzJ4NCA9IHZtbGFxX2xhbmVfczMyKCBvX3Mz
Mng0LCBhX3MzMng0LCBiX3MzMngyLCAxICk7CisgICAgdnN0MXFfczMyKCBhLCBvX3MzMng0ICk7
Cit9CisKK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfU01VTFdXXzhfbmVvbigKKyAgICBv
cHVzX2ludDMyICAgICAgICphLAorICAgIGNvbnN0IGludDMyeDJfdCAgYl9zMzJ4MgorKQorewor
ICAgIGludDMyeDRfdCBhMF9zMzJ4NCwgYTFfczMyeDQsIG8wX3MzMng0LCBvMV9zMzJ4NDsKKwor
ICAgIGEwX3MzMng0ID0gdmxkMXFfczMyKCBhICk7CisgICAgYTFfczMyeDQgPSB2bGQxcV9zMzIo
IGEgKyA0ICk7CisgICAgbzBfczMyeDQgPSB2cWRtdWxocV9sYW5lX3MzMiggYTBfczMyeDQsIGJf
czMyeDIsIDAgKTsKKyAgICBvMV9zMzJ4NCA9IHZxZG11bGhxX2xhbmVfczMyKCBhMV9zMzJ4NCwg
Yl9zMzJ4MiwgMCApOworICAgIG8wX3MzMng0ID0gdm1sYXFfbGFuZV9zMzIoIG8wX3MzMng0LCBh
MF9zMzJ4NCwgYl9zMzJ4MiwgMSApOworICAgIG8xX3MzMng0ID0gdm1sYXFfbGFuZV9zMzIoIG8x
X3MzMng0LCBhMV9zMzJ4NCwgYl9zMzJ4MiwgMSApOworICAgIHZzdDFxX3MzMiggYSwgbzBfczMy
eDQgKTsKKyAgICB2c3QxcV9zMzIoIGEgKyA0LCBvMV9zMzJ4NCApOworfQorCitzdGF0aWMgT1BV
U19JTkxJTkUgdm9pZCBzaWxrX1NNVUxXV19sb29wX25lb24oCisgICAgY29uc3Qgb3B1c19pbnQx
NiAqYSwKKyAgICBjb25zdCBvcHVzX2ludDMyIGIsCisgICAgb3B1c19pbnQzMiAgICAgICAqbywK
KyAgICBjb25zdCBvcHVzX2ludCAgIGxvb3BfbnVtCispCit7CisgICAgb3B1c19pbnQgaTsKKyAg
ICBpbnQzMngyX3QgYl9zMzJ4MjsKKworICAgIGJfczMyeDIgPSB2ZHVwX25fczMyKCBiICk7Cisg
ICAgZm9yKCBpID0gMDsgaSA8IGxvb3BfbnVtIC0gNzsgaSArPSA4ICkgeworICAgICAgICBzaWxr
X1NNVUxXQl84X25lb24oIGEgKyBpLCBiX3MzMngyLCBvICsgaSApOworICAgIH0KKyAgICBmb3Io
IDsgaSA8IGxvb3BfbnVtOyBpKysgKSB7CisgICAgICAgIG9bIGkgXSA9IHNpbGtfU01VTFdXKCBh
WyBpIF0sIGIgKTsKKyAgICB9Cit9CisKK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNx
X2RlbF9kZWNfc2NhbGVfc3RhdGVzX25lb24oCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRl
ICpwc0VuY0MsICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIHNpbGtfbnNxX3N0YXRlICAgICAgKk5TUSwgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBOU1FfZGVsX2RlY3Nfc3RydWN0IHBzRGVsRGVjW10sICAgICAgICAgICAgICAgICAvKiBJ
L08gIERlbGF5ZWQgZGVjaXNpb24gc3RhdGVzICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQxNiAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgeF9z
Y19RMTBbXSwgICAgICAgICAgICAgICAgIC8qIE8gICAgSW5wdXQgc2NhbGVkIHdpdGggMS9HYWlu
IGluIFExMCAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIHNMVFBbXSwgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIFJlLXdoaXRlbmVkIExUUCBzdGF0ZSBpbiBRMCAgICAgICAgICov
CisgICAgb3B1c19pbnQzMiAgICAgICAgICBzTFRQX1ExNVtdLCAgICAgICAgICAgICAgICAgLyog
TyAgICBMVFAgc3RhdGUgbWF0Y2hpbmcgc2NhbGVkIGlucHV0ICAgICAqLworICAgIG9wdXNfaW50
ICAgICAgICAgICAgc3ViZnIsICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3ViZnJhbWUg
bnVtYmVyICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgIExU
UF9zY2FsZV9RMTQsICAgICAgICAgICAgICAvKiBJICAgIExUUCBzdGF0ZSBzY2FsaW5nICAgICAg
ICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICBHYWluc19RMTZbIE1BWF9O
Ql9TVUJGUiBdLCAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgcGl0Y2hMWyBNQVhfTkJfU1VCRlIgXSwgICAgIC8q
IEkgICAgUGl0Y2ggbGFnICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBv
cHVzX2ludCAgICAgIHNpZ25hbF90eXBlLCAgICAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0
eXBlICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICBk
ZWNpc2lvbkRlbGF5ICAgICAgICAgICAgICAgLyogSSAgICBEZWNpc2lvbiBkZWxheSAgICAgICAg
ICAgICAgICAgICAgICAqLworKQoreworICAgIG9wdXNfaW50ICAgICAgICAgICAgaSwgbGFnOwor
ICAgIG9wdXNfaW50MzIgICAgICAgICAgZ2Fpbl9hZGpfUTE2LCBpbnZfZ2Fpbl9RMzEsIGludl9n
YWluX1EyNjsKKworICAgIGxhZyAgICAgICAgICA9IHBpdGNoTFsgc3ViZnIgXTsKKyAgICBpbnZf
Z2Fpbl9RMzEgPSBzaWxrX0lOVkVSU0UzMl92YXJRKCBzaWxrX21heCggR2FpbnNfUTE2WyBzdWJm
ciBdLCAxICksIDQ3ICk7CisgICAgc2lsa19hc3NlcnQoIGludl9nYWluX1EzMSAhPSAwICk7CisK
KyAgICAvKiBTY2FsZSBpbnB1dCAqLworICAgIGludl9nYWluX1EyNiA9IHNpbGtfUlNISUZUX1JP
VU5EKCBpbnZfZ2Fpbl9RMzEsIDUgKTsKKyAgICBzaWxrX1NNVUxXV19sb29wX25lb24oIHgxNiwg
aW52X2dhaW5fUTI2LCB4X3NjX1ExMCwgcHNFbmNDLT5zdWJmcl9sZW5ndGggKTsKKworICAgIC8q
IEFmdGVyIHJld2hpdGVuaW5nIHRoZSBMVFAgc3RhdGUgaXMgdW4tc2NhbGVkLCBzbyBzY2FsZSB3
aXRoIGludl9nYWluX1ExNiAqLworICAgIGlmKCBOU1EtPnJld2hpdGVfZmxhZyApIHsKKyAgICAg
ICAgaWYoIHN1YmZyID09IDAgKSB7CisgICAgICAgICAgICAvKiBEbyBMVFAgZG93bnNjYWxpbmcg
Ki8KKyAgICAgICAgICAgIGludl9nYWluX1EzMSA9IHNpbGtfTFNISUZUKCBzaWxrX1NNVUxXQigg
aW52X2dhaW5fUTMxLCBMVFBfc2NhbGVfUTE0ICksIDIgKTsKKyAgICAgICAgfQorICAgICAgICBz
aWxrX1NNVUxXV19sb29wX25lb24oIHNMVFAgKyBOU1EtPnNMVFBfYnVmX2lkeCAtIGxhZyAtIExU
UF9PUkRFUiAvIDIsIGludl9nYWluX1EzMSwgc0xUUF9RMTUgKyBOU1EtPnNMVFBfYnVmX2lkeCAt
IGxhZyAtIExUUF9PUkRFUiAvIDIsIGxhZyArIExUUF9PUkRFUiAvIDIgKTsKKyAgICB9CisKKyAg
ICAvKiBBZGp1c3QgZm9yIGNoYW5naW5nIGdhaW4gKi8KKyAgICBpZiggR2FpbnNfUTE2WyBzdWJm
ciBdICE9IE5TUS0+cHJldl9nYWluX1ExNiApIHsKKyAgICAgICAgaW50MzJ4Ml90IGdhaW5fYWRq
X1ExNl9zMzJ4MjsKKyAgICAgICAgZ2Fpbl9hZGpfUTE2ID0gc2lsa19ESVYzMl92YXJRKCBOU1Et
PnByZXZfZ2Fpbl9RMTYsIEdhaW5zX1ExNlsgc3ViZnIgXSwgMTYgKTsKKworICAgICAgICAvKiBT
Y2FsZSBsb25nLXRlcm0gc2hhcGluZyBzdGF0ZSAqLworICAgICAgICBpZiggKCBnYWluX2Fkal9R
MTYgPj0gLTY1NTM2ICkgJiYgKCBnYWluX2Fkal9RMTYgPCA2NTUzNiApICkgeworICAgICAgICAg
ICAgZ2Fpbl9hZGpfUTE2X3MzMngyID0gdmR1cF9uX3MzMiggc2lsa19MU0hJRlQzMiggZ2Fpbl9h
ZGpfUTE2LCAxNSApICk7CisgICAgICAgICAgICBmb3IoIGkgPSBOU1EtPnNMVFBfc2hwX2J1Zl9p
ZHggLSBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoOyBpIDwgTlNRLT5zTFRQX3NocF9idWZfaWR4IC0g
NzsgaSArPSA4ICkgeworICAgICAgICAgICAgICAgIHNpbGtfU01VTFdXX3NtYWxsX2JfOF9uZW9u
KCBOU1EtPnNMVFBfc2hwX1ExNCArIGksIGdhaW5fYWRqX1ExNl9zMzJ4MiApOworICAgICAgICAg
ICAgfQorICAgICAgICAgICAgZm9yKCA7IGkgPCBOU1EtPnNMVFBfc2hwX2J1Zl9pZHg7IGkrKyAp
IHsKKyAgICAgICAgICAgICAgICBOU1EtPnNMVFBfc2hwX1ExNFsgaSBdID0gc2lsa19TTVVMV1co
IGdhaW5fYWRqX1ExNiwgTlNRLT5zTFRQX3NocF9RMTRbIGkgXSApOworICAgICAgICAgICAgfQor
CisgICAgICAgICAgICAvKiBTY2FsZSBsb25nLXRlcm0gcHJlZGljdGlvbiBzdGF0ZSAqLworICAg
ICAgICAgICAgaWYoIHNpZ25hbF90eXBlID09IFRZUEVfVk9JQ0VEICYmIE5TUS0+cmV3aGl0ZV9m
bGFnID09IDAgKSB7CisgICAgICAgICAgICAgICAgZm9yKCBpID0gTlNRLT5zTFRQX2J1Zl9pZHgg
LSBsYWcgLSBMVFBfT1JERVIgLyAyOyBpIDwgTlNRLT5zTFRQX2J1Zl9pZHggLSBkZWNpc2lvbkRl
bGF5IC0gNzsgaSArPSA4ICkgeworICAgICAgICAgICAgICAgICAgICBzaWxrX1NNVUxXV19zbWFs
bF9iXzhfbmVvbiggc0xUUF9RMTUgKyBpLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgZm9yKCA7IGkgPCBOU1EtPnNMVFBfYnVmX2lkeCAt
IGRlY2lzaW9uRGVsYXk7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAgc0xUUF9RMTVbIGkg
XSA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIHNMVFBfUTE1WyBpIF0gKTsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC8qIFNjYWxlIHNjYWxhciBz
dGF0ZXMgKi8KKyAgICAgICAgICAgIHNpbGtfU01VTFdXX3NtYWxsX2JfNF9uZW9uKCBwc0RlbERl
Yy0+TEZfQVJfUTE0LCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIHNpbGtfU01V
TFdXX3NtYWxsX2JfNF9uZW9uKCBwc0RlbERlYy0+RGlmZl9RMTQsICBnYWluX2Fkal9RMTZfczMy
eDIgKTsKKworICAgICAgICAgICAgLyogU2NhbGUgc2hvcnQtdGVybSBwcmVkaWN0aW9uIGFuZCBz
aGFwaW5nIHN0YXRlcyAqLworICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IE5TUV9MUENfQlVG
X0xFTkdUSDsgaSsrICkgeworICAgICAgICAgICAgICAgIHNpbGtfU01VTFdXX3NtYWxsX2JfNF9u
ZW9uKCBwc0RlbERlYy0+c0xQQ19RMTRbIGkgXSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAg
ICAgICAgICB9CisKKyAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBNQVhfU0hBUEVfTFBDX09S
REVSOyBpKysgKSB7CisgICAgICAgICAgICAgICAgc2lsa19TTVVMV1dfc21hbGxfYl80X25lb24o
IHBzRGVsRGVjLT5zQVIyX1ExNFsgaSBdLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IERFQ0lTSU9OX0RFTEFZOyBpKysg
KSB7CisgICAgICAgICAgICAgICAgc2lsa19TTVVMV1dfc21hbGxfYl80X25lb24oIHBzRGVsRGVj
LT5QcmVkX1ExNVsgIGkgXSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICAgICAg
c2lsa19TTVVMV1dfc21hbGxfYl80X25lb24oIHBzRGVsRGVjLT5TaGFwZV9RMTRbIGkgXSwgZ2Fp
bl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICBnYWluX2Fkal9RMTZfczMyeDIgPSB2ZHVwX25fczMyKCBzaWxrX0xTSElGVDMyKCBn
YWluX2Fkal9RMTYgJiAweDAwMDBGRkZGLCAxNSApICk7CisgICAgICAgICAgICBnYWluX2Fkal9R
MTZfczMyeDIgPSB2c2V0X2xhbmVfczMyKCBnYWluX2Fkal9RMTYgPj4gMTYsIGdhaW5fYWRqX1Ex
Nl9zMzJ4MiwgMSApOworICAgICAgICAgICAgZm9yKCBpID0gTlNRLT5zTFRQX3NocF9idWZfaWR4
IC0gcHNFbmNDLT5sdHBfbWVtX2xlbmd0aDsgaSA8IE5TUS0+c0xUUF9zaHBfYnVmX2lkeCAtIDc7
IGkgKz0gOCApIHsKKyAgICAgICAgICAgICAgICBzaWxrX1NNVUxXV184X25lb24oIE5TUS0+c0xU
UF9zaHBfUTE0ICsgaSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICB9CisgICAg
ICAgICAgICBmb3IoIDsgaSA8IE5TUS0+c0xUUF9zaHBfYnVmX2lkeDsgaSsrICkgeworICAgICAg
ICAgICAgICAgIE5TUS0+c0xUUF9zaHBfUTE0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9hZGpf
UTE2LCBOU1EtPnNMVFBfc2hwX1ExNFsgaSBdICk7CisgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgIC8qIFNjYWxlIGxvbmctdGVybSBwcmVkaWN0aW9uIHN0YXRlICovCisgICAgICAgICAgICBp
Ziggc2lnbmFsX3R5cGUgPT0gVFlQRV9WT0lDRUQgJiYgTlNRLT5yZXdoaXRlX2ZsYWcgPT0gMCAp
IHsKKyAgICAgICAgICAgICAgICBmb3IoIGkgPSBOU1EtPnNMVFBfYnVmX2lkeCAtIGxhZyAtIExU
UF9PUkRFUiAvIDI7IGkgPCBOU1EtPnNMVFBfYnVmX2lkeCAtIGRlY2lzaW9uRGVsYXkgLSA3OyBp
ICs9IDggKSB7CisgICAgICAgICAgICAgICAgICAgIHNpbGtfU01VTFdXXzhfbmVvbiggc0xUUF9R
MTUgKyBpLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgZm9yKCA7IGkgPCBOU1EtPnNMVFBfYnVmX2lkeCAtIGRlY2lzaW9uRGVsYXk7IGkr
KyApIHsKKyAgICAgICAgICAgICAgICAgICAgc0xUUF9RMTVbIGkgXSA9IHNpbGtfU01VTFdXKCBn
YWluX2Fkal9RMTYsIHNMVFBfUTE1WyBpIF0gKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIC8qIFNjYWxlIHNjYWxhciBzdGF0ZXMgKi8KKyAgICAgICAg
ICAgIHNpbGtfU01VTFdXXzRfbmVvbiggcHNEZWxEZWMtPkxGX0FSX1ExNCwgZ2Fpbl9hZGpfUTE2
X3MzMngyICk7CisgICAgICAgICAgICBzaWxrX1NNVUxXV180X25lb24oIHBzRGVsRGVjLT5EaWZm
X1ExNCwgIGdhaW5fYWRqX1ExNl9zMzJ4MiApOworCisgICAgICAgICAgICAvKiBTY2FsZSBzaG9y
dC10ZXJtIHByZWRpY3Rpb24gYW5kIHNoYXBpbmcgc3RhdGVzICovCisgICAgICAgICAgICBmb3Io
IGkgPSAwOyBpIDwgTlNRX0xQQ19CVUZfTEVOR1RIOyBpKysgKSB7CisgICAgICAgICAgICAgICAg
c2lsa19TTVVMV1dfNF9uZW9uKCBwc0RlbERlYy0+c0xQQ19RMTRbIGkgXSwgZ2Fpbl9hZGpfUTE2
X3MzMngyICk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBN
QVhfU0hBUEVfTFBDX09SREVSOyBpKysgKSB7CisgICAgICAgICAgICAgICAgc2lsa19TTVVMV1df
NF9uZW9uKCBwc0RlbERlYy0+c0FSMl9RMTRbIGkgXSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7Cisg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBERUNJU0lPTl9ERUxB
WTsgaSsrICkgeworICAgICAgICAgICAgICAgIHNpbGtfU01VTFdXXzRfbmVvbiggcHNEZWxEZWMt
PlByZWRfUTE1WyAgaSBdLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgICAgICBz
aWxrX1NNVUxXV180X25lb24oIHBzRGVsRGVjLT5TaGFwZV9RMTRbIGkgXSwgZ2Fpbl9hZGpfUTE2
X3MzMngyICk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICAvKiBTYXZlIGlu
dmVyc2UgZ2FpbiAqLworICAgICAgICBOU1EtPnByZXZfZ2Fpbl9RMTYgPSBHYWluc19RMTZbIHN1
YmZyIF07CisgICAgfQorfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfbmVvbi5oIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Fy
bS9OU1FfbmVvbi5oCmluZGV4IDc3Yzk0NmFmODU0NDc4NmUzMTEzNDU3MWE4ZTU1NzRmOWUwOThj
OGMuLmIzMWQ5NDQyZDY5OTFjNDlhZDUyMDJmMjlkOWQwMmI4ZDExMzk1MDYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9hcm0vTlNRX25lb24uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL05TUV9uZW9uLmgKQEAgLTI4LDMwICsy
OCwzMSBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICNkZWZpbmUgU0lMS19OU1FfTkVP
Tl9ICiAKICNpbmNsdWRlICJjcHVfc3VwcG9ydC5oIgorI2luY2x1ZGUgIlNpZ1Byb2NfRklYLmgi
CiAKICN1bmRlZiBzaWxrX3Nob3J0X3ByZWRpY3Rpb25fY3JlYXRlX2FyY2hfY29lZgogLyogRm9y
IHZlY3Rvcml6ZWQgY2FsYywgcmV2ZXJzZSBhX1ExMiBjb2VmcywgY29udmVydCB0byAzMi1iaXQs
IGFuZCBzaGlmdCBmb3IgdnFkbXVsaHFfczMyLiAqLwogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19zaG9ydF9wcmVkaWN0aW9uX2NyZWF0ZV9hcmNoX2NvZWZfbmVvbihvcHVzX2ludDMyICpv
dXQsIGNvbnN0IG9wdXNfaW50MTYgKmluLCBvcHVzX2ludCBvcmRlcikKIHsKLSAgICBvdXRbMTVd
ID0gaW5bMF0gPDwgMTU7Ci0gICAgb3V0WzE0XSA9IGluWzFdIDw8IDE1OwotICAgIG91dFsxM10g
PSBpblsyXSA8PCAxNTsKLSAgICBvdXRbMTJdID0gaW5bM10gPDwgMTU7Ci0gICAgb3V0WzExXSA9
IGluWzRdIDw8IDE1OwotICAgIG91dFsxMF0gPSBpbls1XSA8PCAxNTsKLSAgICBvdXRbOV0gID0g
aW5bNl0gPDwgMTU7Ci0gICAgb3V0WzhdICA9IGluWzddIDw8IDE1OwotICAgIG91dFs3XSAgPSBp
bls4XSA8PCAxNTsKLSAgICBvdXRbNl0gID0gaW5bOV0gPDwgMTU7CisgICAgb3V0WzE1XSA9IHNp
bGtfTFNISUZUMzIoaW5bMF0sIDE1KTsKKyAgICBvdXRbMTRdID0gc2lsa19MU0hJRlQzMihpblsx
XSwgMTUpOworICAgIG91dFsxM10gPSBzaWxrX0xTSElGVDMyKGluWzJdLCAxNSk7CisgICAgb3V0
WzEyXSA9IHNpbGtfTFNISUZUMzIoaW5bM10sIDE1KTsKKyAgICBvdXRbMTFdID0gc2lsa19MU0hJ
RlQzMihpbls0XSwgMTUpOworICAgIG91dFsxMF0gPSBzaWxrX0xTSElGVDMyKGluWzVdLCAxNSk7
CisgICAgb3V0WzldICA9IHNpbGtfTFNISUZUMzIoaW5bNl0sIDE1KTsKKyAgICBvdXRbOF0gID0g
c2lsa19MU0hJRlQzMihpbls3XSwgMTUpOworICAgIG91dFs3XSAgPSBzaWxrX0xTSElGVDMyKGlu
WzhdLCAxNSk7CisgICAgb3V0WzZdICA9IHNpbGtfTFNISUZUMzIoaW5bOV0sIDE1KTsKIAogICAg
IGlmIChvcmRlciA9PSAxNikKICAgICB7Ci0gICAgICAgIG91dFs1XSA9IGluWzEwXSA8PCAxNTsK
LSAgICAgICAgb3V0WzRdID0gaW5bMTFdIDw8IDE1OwotICAgICAgICBvdXRbM10gPSBpblsxMl0g
PDwgMTU7Ci0gICAgICAgIG91dFsyXSA9IGluWzEzXSA8PCAxNTsKLSAgICAgICAgb3V0WzFdID0g
aW5bMTRdIDw8IDE1OwotICAgICAgICBvdXRbMF0gPSBpblsxNV0gPDwgMTU7CisgICAgICAgIG91
dFs1XSA9IHNpbGtfTFNISUZUMzIoaW5bMTBdLCAxNSk7CisgICAgICAgIG91dFs0XSA9IHNpbGtf
TFNISUZUMzIoaW5bMTFdLCAxNSk7CisgICAgICAgIG91dFszXSA9IHNpbGtfTFNISUZUMzIoaW5b
MTJdLCAxNSk7CisgICAgICAgIG91dFsyXSA9IHNpbGtfTFNISUZUMzIoaW5bMTNdLCAxNSk7Cisg
ICAgICAgIG91dFsxXSA9IHNpbGtfTFNISUZUMzIoaW5bMTRdLCAxNSk7CisgICAgICAgIG91dFsw
XSA9IHNpbGtfTFNISUZUMzIoaW5bMTVdLCAxNSk7CiAgICAgfQogICAgIGVsc2UKICAgICB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvYXJtL2FybV9zaWxrX21hcC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9hcm1fc2lsa19tYXAu
YwppbmRleCA5YmQ4NmE3YjIxNTIyNDlmYTg1MGU5ZWVjMGNkNmE2Y2EyNmNlNzE1Li4wYjliZmVj
MmNhOTc0NzY4YzU5ZTA5ZjQ0OGFjYTgxY2ViMWQ4ZjYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL2Fy
bV9zaWxrX21hcC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vYXJtX3NpbGtfbWFwLmMKQEAgLTI4LDEzICsyOCw2
MiBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICMgaW5jbHVkZSAiY29uZmlnLmgiCiAj
ZW5kaWYKIAorI2luY2x1ZGUgIm1haW5fRklYLmgiCiAjaW5jbHVkZSAiTlNRLmgiCisjaW5jbHVk
ZSAiU2lnUHJvY19GSVguaCIKIAogI2lmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpCiAKICMgaWYg
KGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSAmJiBcCiAgIWRlZmluZWQoT1BV
U19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpKQogCit2b2lkICgqY29uc3QgU0lMS19CSVFVQURfQUxU
X1NUUklERTJfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKAorICAgICAgICBjb25zdCBvcHVzX2lu
dDE2ICAgICAgICAgICAgKmluLCAgICAgICAgICAgICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQl9RMjgsICAgICAgICAgICAgIC8qIEkgICAg
IE1BIGNvZWZmaWNpZW50cyBbM10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpBX1EyOCwgICAgICAg
ICAgICAgLyogSSAgICAgQVIgY29lZmZpY2llbnRzIFsyXSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAg
KlMsICAgICAgICAgICAgICAgICAvKiBJL08gICBTdGF0ZSB2ZWN0b3IgWzRdICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIG9wdXNfaW50MTYgICAg
ICAgICAgICAgICAgICAqb3V0LCAgICAgICAgICAgICAgIC8qIE8gICAgIG91dHB1dCBzaWduYWwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAg
Y29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxlbiAgICAgICAgICAgICAgICAgLyogSSAgICAg
c2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworKSA9IHsKKyAgICAgIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyX2MsICAgIC8qIEFSTXY0
ICovCisgICAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9jLCAgICAvKiBFRFNQICovCisgICAg
ICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9jLCAgICAvKiBNZWRpYSAqLworICAgICAgc2lsa19i
aXF1YWRfYWx0X3N0cmlkZTJfbmVvbiwgLyogTmVvbiAqLworfTsKKworb3B1c19pbnQzMiAoKmNv
bnN0IFNJTEtfTFBDX0lOVkVSU0VfUFJFRF9HQUlOX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgg
LyogTyAgIFJldHVybnMgaW52ZXJzZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwg
UTMwICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKkFfUTEy
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2ll
bnRzLCBRMTIgW29yZGVyXSAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgIFByZWRpY3Rpb24gb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworKSA9IHsKKyAgICAgIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWlu
X2MsICAgIC8qIEFSTXY0ICovCisgICAgICBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9jLCAg
ICAvKiBFRFNQICovCisgICAgICBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9jLCAgICAvKiBN
ZWRpYSAqLworICAgICAgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fbmVvbiwgLyogTmVvbiAq
LworfTsKKwordm9pZCAgKCpjb25zdCBTSUxLX05TUV9ERUxfREVDX0lNUExbT1BVU19BUkNITUFT
SyArIDFdKSgKKyAgICAgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAg
ICAgICAgICAgICAgICAgICovCisgICAgICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAq
TlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0
YXRlICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBTaWRlSW5mb0luZGljZXMgICAg
ICAgICAgICAgKnBzSW5kaWNlcywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
L08gIFF1YW50aXphdGlvbiBJbmRpY2VzICAgICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgIHgxNltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAg
IG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICBwdWxzZXNbXSwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRpemVkIHB1bHNlIHNpZ25hbCAgICAgICAgICAq
LworICAgICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgUHJlZENvZWZfUTEyWyAyICog
TUFYX0xQQ19PUkRFUiBdLCAgICAgICAgICAvKiBJICAgIFNob3J0IHRlcm0gcHJlZGljdGlvbiBj
b2VmcyAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIExUUENvZWZf
UTE0WyBMVFBfT1JERVIgKiBNQVhfTkJfU1VCRlIgXSwgICAgLyogSSAgICBMb25nIHRlcm0gcHJl
ZGljdGlvbiBjb2VmcyAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAg
ICBBUl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSBOb2lz
ZSBzaGFwaW5nIGNvZWZzICAgICAgICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgSGFybVNoYXBlR2Fpbl9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAv
KiBJICAgIExvbmcgdGVybSBzaGFwaW5nIGNvZWZzICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgIFRpbHRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBTcGVjdHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICovCisgICAg
ICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBMRl9zaHBfUTE0WyBNQVhfTkJfU1VCRlIg
XSwgICAgICAgICAgICAgICAgIC8qIEkgICAgTG93IGZyZXF1ZW5jeSBzaGFwaW5nIGNvZWZzICAg
ICAqLworICAgICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgR2FpbnNfUTE2WyBNQVhf
TkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAvKiBJICAgIFF1YW50aXphdGlvbiBzdGVwIHNp
emVzICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHBpdGNo
TFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQaXRjaCBsYWdz
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICBMYW1iZGFfUTEwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
UmF0ZS9kaXN0b3J0aW9uIHRyYWRlb2ZmICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgTFRQX3NjYWxlX1ExNCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIExUUCBzdGF0ZSBzY2FsaW5nICAgICAgICAgICAgICAgKi8KKykgPSB7CisgICAg
ICBzaWxrX05TUV9kZWxfZGVjX2MsICAgIC8qIEFSTXY0ICovCisgICAgICBzaWxrX05TUV9kZWxf
ZGVjX2MsICAgIC8qIEVEU1AgKi8KKyAgICAgIHNpbGtfTlNRX2RlbF9kZWNfYywgICAgLyogTWVk
aWEgKi8KKyAgICAgIHNpbGtfTlNRX2RlbF9kZWNfbmVvbiwgLyogTmVvbiAqLworfTsKKwogLypU
aGVyZSBpcyBubyB0YWJsZSBmb3Igc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfc2hvcnRfcHJl
ZGljdGlvbiBiZWNhdXNlIHRoZQogICAgTkVPTiB2ZXJzaW9uIHRha2VzIGRpZmZlcmVudCBwYXJh
bWV0ZXJzIHRoYW4gdGhlIEMgdmVyc2lvbi4KICAgSW5zdGVhZCBSVENEIGlzIGRvbmUgdmlhIGlm
IHN0YXRlbWVudHMgYXQgdGhlIGNhbGwgc2l0ZXMuCkBAIC01Miw0ICsxMDEsMjMgQEAgb3B1c19p
bnQzMgogCiAjIGVuZGlmCiAKKyMgaWYgZGVmaW5lZChGSVhFRF9QT0lOVCkgJiYgXAorIGRlZmlu
ZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVT
VU1FX05FT05fSU5UUikKKwordm9pZCAoKmNvbnN0IFNJTEtfV0FSUEVEX0FVVE9DT1JSRUxBVElP
Tl9GSVhfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKAorICAgICAgICAgIG9wdXNfaW50MzIgICAg
ICAgICAgICAgICAgKmNvcnIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8g
ICAgUmVzdWx0IFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgICAgb3B1c19pbnQgICAgICAgICAgICAg
ICAgICAqc2NhbGUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBTY2Fs
aW5nIG9mIHRoZSBjb3JyZWxhdGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICpp
bnB1dCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IGRhdGEg
dG8gY29ycmVsYXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgd2FycGluZ19R
MTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgV2FycGluZyBjb2VmZmljaWVu
dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBsZW5ndGgsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGggb2YgaW5wdXQgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIENvcnJlbGF0aW9uIG9yZGVyIChldmVuKSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworKSA9IHsKKyAg
ICAgIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYywgICAgLyogQVJNdjQgKi8KKyAg
ICAgIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYywgICAgLyogRURTUCAqLworICAg
ICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9jLCAgICAvKiBNZWRpYSAqLworICAg
ICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9uZW9uLCAvKiBOZW9uICovCit9Owor
CisjIGVuZGlmCisKICNlbmRpZiAvKiBPUFVTX0hBVkVfUlRDRCAqLwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2FybS9iaXF1YWRfYWx0X2FybS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9iaXF1YWRfYWx0X2FybS5oCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjY2ZWE5ZjQzZGQwYjM3YjJkNjMzMDg3ZjFhMjVlOTk4NmZjZTJkNmUKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvYXJtL2JpcXVhZF9hbHRfYXJtLmgKQEAgLTAsMCArMSw2OCBAQAorLyoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqCitDb3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4KK1JlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCithcmUgbWV0OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCit0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKy0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRG
IG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKK25hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywg
bWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCitwcm9kdWN0cyBkZXJpdmVkIGZyb20g
dGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KK3Blcm1pc3Npb24u
CitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTICJBUyBJUyIKK0FORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKK0lNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
CitBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBP
UiBDT05UUklCVVRPUlMgQkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCitTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKK0lOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKK1BP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpZm5kZWYgU0lM
S19CSVFVQURfQUxUX0FSTV9ICisjIGRlZmluZSBTSUxLX0JJUVVBRF9BTFRfQVJNX0gKKworIyBp
bmNsdWRlICJjZWx0L2FybS9hcm1jcHUuaCIKKworIyBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9I
QVZFX05FT05fSU5UUikKK3ZvaWQgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTJfbmVvbigKKyAgICBj
b25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmluLCAgICAgICAgICAgICAgICAvKiBJICAgICBp
bnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpCX1EyOCwgICAgICAgICAgICAg
LyogSSAgICAgTUEgY29lZmZpY2llbnRzIFszXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAg
ICAgICAgICAgIC8qIEkgICAgIEFSIGNvZWZmaWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAg
KlMsICAgICAgICAgICAgICAgICAvKiBJL08gICBTdGF0ZSB2ZWN0b3IgWzRdICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQxNiAgICAgICAg
ICAgICAgICAgICpvdXQsICAgICAgICAgICAgICAgLyogTyAgICAgb3V0cHV0IHNpZ25hbCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICBsZW4gICAgICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBs
ZW5ndGggKG11c3QgYmUgZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyk7
CisKKyMgIGlmICFkZWZpbmVkKE9QVVNfSEFWRV9SVENEKSAmJiBkZWZpbmVkKE9QVVNfQVJNX1BS
RVNVTUVfTkVPTikKKyMgICBkZWZpbmUgT1ZFUlJJREVfc2lsa19iaXF1YWRfYWx0X3N0cmlkZTIg
ICAgICAgICAgICAgICAgICAgKDEpCisjICAgZGVmaW5lIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUy
KGluLCBCX1EyOCwgQV9RMjgsIFMsIG91dCwgbGVuLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBQUkVT
VU1FX05FT04oc2lsa19iaXF1YWRfYWx0X3N0cmlkZTIpKGluLCBCX1EyOCwgQV9RMjgsIFMsIG91
dCwgbGVuKSkKKyMgIGVuZGlmCisjIGVuZGlmCisKKyMgaWYgIWRlZmluZWQoT1ZFUlJJREVfc2ls
a19iaXF1YWRfYWx0X3N0cmlkZTIpCisvKklzIHJ1bi10aW1lIENQVSBkZXRlY3Rpb24gZW5hYmxl
ZCBvbiB0aGlzIHBsYXRmb3JtPyovCisjICBpZiBkZWZpbmVkKE9QVVNfSEFWRV9SVENEKSAmJiAo
ZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpICYmICFkZWZpbmVkKE9QVVNfQVJN
X1BSRVNVTUVfTkVPTl9JTlRSKSkKK2V4dGVybiB2b2lkICgqY29uc3QgU0lMS19CSVFVQURfQUxU
X1NUUklERTJfSU1QTFtPUFVTX0FSQ0hNQVNLKzFdKSgKKyAgICAgICAgY29uc3Qgb3B1c19pbnQx
NiAgICAgICAgICAgICppbiwgICAgICAgICAgICAgICAgLyogSSAgICAgaW5wdXQgc2lnbmFsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBj
b25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKkJfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBN
QSBjb2VmZmljaWVudHMgWzNdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAgICAgICAg
ICAgIC8qIEkgICAgIEFSIGNvZWZmaWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpT
LCAgICAgICAgICAgICAgICAgLyogSS9PICAgU3RhdGUgdmVjdG9yIFs0XSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBvcHVzX2ludDE2ICAgICAg
ICAgICAgICAgICAgKm91dCwgICAgICAgICAgICAgICAvKiBPICAgICBvdXRwdXQgc2lnbmFsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIGNv
bnN0IG9wdXNfaW50MzIgICAgICAgICAgICBsZW4gICAgICAgICAgICAgICAgIC8qIEkgICAgIHNp
Z25hbCBsZW5ndGggKG11c3QgYmUgZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICApOworIyAgIGRlZmluZSBPVkVSUklERV9zaWxrX2JpcXVhZF9hbHRfc3RyaWRlMiAg
ICAgICAgICAgICAgICAgICgxKQorIyAgIGRlZmluZSBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMihp
biwgQl9RMjgsIEFfUTI4LCBTLCBvdXQsIGxlbiwgYXJjaCkgKCgqU0lMS19CSVFVQURfQUxUX1NU
UklERTJfSU1QTFsoYXJjaCkmT1BVU19BUkNITUFTS10pKGluLCBCX1EyOCwgQV9RMjgsIFMsIG91
dCwgbGVuKSkKKyMgIGVsaWYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikKKyMg
ICBkZWZpbmUgT1ZFUlJJREVfc2lsa19iaXF1YWRfYWx0X3N0cmlkZTIgICAgICAgICAgICAgICAg
ICAoMSkKKyMgICBkZWZpbmUgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTIoaW4sIEJfUTI4LCBBX1Ey
OCwgUywgb3V0LCBsZW4sIGFyY2gpICgodm9pZCkoYXJjaCksIHNpbGtfYmlxdWFkX2FsdF9zdHJp
ZGUyX25lb24oaW4sIEJfUTI4LCBBX1EyOCwgUywgb3V0LCBsZW4pKQorIyAgZW5kaWYKKyMgZW5k
aWYKKworI2VuZGlmIC8qIGVuZCBTSUxLX0JJUVVBRF9BTFRfQVJNX0ggKi8KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9hcm0vYmlxdWFkX2FsdF9uZW9uX2ludHIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vYmlxdWFkX2FsdF9uZW9u
X2ludHIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi45NzE1NzMzMTg1OGNhOGJmNjlhYzUyOTNjYjY4ZTIzY2Q2ZDRm
MzNiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9iaXF1YWRfYWx0X25lb25faW50ci5jCkBA
IC0wLDAgKzEsMTU2IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK0NvcHlyaWdodCAoYykgMjAxNyBHb29n
bGUgSW5jLgorUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwK
K3RoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCist
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0Citub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9m
IEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Yg
c3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUK
K3Byb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3Igd3JpdHRlbgorcGVybWlzc2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKK1NVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CitBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKi8KKworI2lmZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNl
bmRpZgorCisjaW5jbHVkZSA8YXJtX25lb24uaD4KKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorIyBp
bmNsdWRlIDxzdHJpbmcuaD4KKyMgaW5jbHVkZSAic3RhY2tfYWxsb2MuaCIKKyNlbmRpZgorI2lu
Y2x1ZGUgIlNpZ1Byb2NfRklYLmgiCisKK3N0YXRpYyBpbmxpbmUgdm9pZCBzaWxrX2JpcXVhZF9h
bHRfc3RyaWRlMl9rZXJuZWwoIGNvbnN0IGludDMyeDRfdCBBX0xfczMyeDQsIGNvbnN0IGludDMy
eDRfdCBBX1VfczMyeDQsIGNvbnN0IGludDMyeDRfdCBCX1EyOF9zMzJ4NCwgY29uc3QgaW50MzJ4
Ml90IHRfczMyeDIsIGNvbnN0IGludDMyeDRfdCBpbl9zMzJ4NCwgaW50MzJ4NF90ICpTX3MzMng0
LCBpbnQzMngyX3QgKm91dDMyX1ExNF9zMzJ4MiApCit7CisgICAgaW50MzJ4NF90IHRfczMyeDQs
IG91dDMyX1ExNF9zMzJ4NDsKKworICAgICpvdXQzMl9RMTRfczMyeDIgPSB2YWRkX3MzMiggdmdl
dF9sb3dfczMyKCAqU19zMzJ4NCApLCB0X3MzMngyICk7ICAgICAgICAgICAgICAvKiBzaWxrX1NN
TEFXQiggU3swLDF9LCBCX1EyOFsgMCBdLCBpbnswLDF9ICkgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgKlNfczMyeDQgICAgICAgICA9IHZjb21iaW5lX3MzMigg
dmdldF9oaWdoX3MzMiggKlNfczMyeDQgKSwgdmR1cF9uX3MzMiggMCApICk7IC8qIFN7MCwxfSA9
IFN7MiwzfTsgU3syLDN9ID0gMDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICAqb3V0MzJfUTE0X3MzMngyID0gdnNobF9uX3MzMiggKm91
dDMyX1ExNF9zMzJ4MiwgMiApOyAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb3V0MzJfUTE0
X3swLDF9ID0gc2lsa19MU0hJRlQoIHNpbGtfU01MQVdCKCBTezAsMX0sIEJfUTI4WyAwIF0sIGlu
ezAsMX0gKSwgMiApOyAqLworICAgIG91dDMyX1ExNF9zMzJ4NCAgPSB2Y29tYmluZV9zMzIoICpv
dXQzMl9RMTRfczMyeDIsICpvdXQzMl9RMTRfczMyeDIgKTsgICAgICAgICAvKiBvdXQzMl9RMTRf
ezAsMSwwLDF9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgdF9zMzJ4NCAgICAgICAgICA9IHZxZG11bGhxX3MzMiggb3V0
MzJfUTE0X3MzMng0LCBBX0xfczMyeDQgKTsgICAgICAgICAgICAgICAgIC8qIHNpbGtfU01VTFdC
KCBvdXQzMl9RMTRfezAsMSwwLDF9LCBBezAsMCwxLDF9X0xfUTI4ICkgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICAqU19zMzJ4NCAgICAgICAgID0gdnJzcmFxX25fczMyKCAqU19z
MzJ4NCwgdF9zMzJ4NCwgMTQgKTsgICAgICAgICAgICAgICAgICAgICAgLyogU3swLDF9ID0gU3sy
LDN9ICsgc2lsa19SU0hJRlRfUk9VTkQoKTsgIFN7MiwzfSA9IHNpbGtfUlNISUZUX1JPVU5EKCk7
ICAgICAgICAgICAqLworICAgIHRfczMyeDQgICAgICAgICAgPSB2cWRtdWxocV9zMzIoIG91dDMy
X1ExNF9zMzJ4NCwgQV9VX3MzMng0ICk7ICAgICAgICAgICAgICAgICAvKiBzaWxrX1NNVUxXQigg
b3V0MzJfUTE0X3swLDEsMCwxfSwgQXswLDAsMSwxfV9VX1EyOCApICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgKlNfczMyeDQgICAgICAgICA9IHZhZGRxX3MzMiggKlNfczMyeDQs
IHRfczMyeDQgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFMwID0gc2lsa19TTUxB
V0IoIFN7MCwxLDIsM30sIG91dDMyX1ExNF97MCwxLDAsMX0sIEF7MCwwLDEsMX1fVV9RMjggKTsg
ICAgICAgICAgKi8KKyAgICB0X3MzMng0ICAgICAgICAgID0gdnFkbXVsaHFfczMyKCBpbl9zMzJ4
NCwgQl9RMjhfczMyeDQgKTsgICAgICAgICAgICAgICAgICAgICAgLyogc2lsa19TTVVMV0IoIEJf
UTI4WyB7MSwxLDIsMn0gXSwgaW57MCwxLDAsMX0gKSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgICpTX3MzMng0ICAgICAgICAgPSB2YWRkcV9zMzIoICpTX3MzMng0LCB0
X3MzMng0ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTMCA9IHNpbGtfU01MQVdC
KCBTMCwgQl9RMjhbIHsxLDEsMiwyfSBdLCBpbnswLDEsMCwxfSApOyAgICAgICAgICAgICAgICAg
ICAgICAgICovCit9CisKK3ZvaWQgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTJfbmVvbigKKyAgICBj
b25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmluLCAgICAgICAgICAgICAgICAvKiBJICAgICBp
bnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpCX1EyOCwgICAgICAgICAgICAg
LyogSSAgICAgTUEgY29lZmZpY2llbnRzIFszXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAg
ICAgICAgICAgIC8qIEkgICAgIEFSIGNvZWZmaWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAg
KlMsICAgICAgICAgICAgICAgICAvKiBJL08gICBTdGF0ZSB2ZWN0b3IgWzRdICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQxNiAgICAgICAg
ICAgICAgICAgICpvdXQsICAgICAgICAgICAgICAgLyogTyAgICAgb3V0cHV0IHNpZ25hbCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICBsZW4gICAgICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBs
ZW5ndGggKG11c3QgYmUgZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKykK
K3sKKyAgICAvKiBESVJFQ1QgRk9STSBJSSBUUkFOU1BPU0VEICh1c2VzIDIgZWxlbWVudCBzdGF0
ZSB2ZWN0b3IpICovCisgICAgb3B1c19pbnQgICAgICAgIGsgICAgICAgICAgICA9IDA7CisgICAg
Y29uc3QgaW50MzJ4Ml90IG9mZnNldF9zMzJ4MiA9IHZkdXBfbl9zMzIoICgxPDwxNCkgLSAxICk7
CisgICAgY29uc3QgaW50MzJ4NF90IG9mZnNldF9zMzJ4NCA9IHZjb21iaW5lX3MzMiggb2Zmc2V0
X3MzMngyLCBvZmZzZXRfczMyeDIgKTsKKyAgICBpbnQxNng0X3QgICAgICAgaW5fczE2eDQgID0g
dmR1cF9uX3MxNiggMCApOworICAgIGludDE2eDRfdCAgICAgICBvdXRfczE2eDQ7CisgICAgaW50
MzJ4Ml90ICAgICAgIEFfUTI4X3MzMngyLCBBX0xfczMyeDIsIEFfVV9zMzJ4MiwgQl9RMjhfczMy
eDIsIHRfczMyeDI7CisgICAgaW50MzJ4NF90ICAgICAgIEFfTF9zMzJ4NCwgQV9VX3MzMng0LCBC
X1EyOF9zMzJ4NCwgU19zMzJ4NCwgb3V0MzJfUTE0X3MzMng0OworICAgIGludDMyeDJ4Ml90ICAg
ICB0MF9zMzJ4MngyLCB0MV9zMzJ4MngyLCB0Ml9zMzJ4MngyLCBTX3MzMngyeDI7CisKKyNpZmRl
ZiBPUFVTX0NIRUNLX0FTTQorICAgIG9wdXNfaW50MzIgU19jWyA0IF07CisgICAgVkFSREVDTCgg
b3B1c19pbnQxNiwgb3V0X2MgKTsKKyAgICBTQVZFX1NUQUNLOworICAgIEFMTE9DKCBvdXRfYywg
MiAqIGxlbiwgb3B1c19pbnQxNiApOworCisgICAgc2lsa19tZW1jcHkoICZTX2MsIFMsIHNpemVv
ZiggU19jICkgKTsKKyAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9jKCBpbiwgQl9RMjgsIEFf
UTI4LCBTX2MsIG91dF9jLCBsZW4gKTsKKyNlbmRpZgorCisgICAgLyogTmVnYXRlIEFfUTI4IHZh
bHVlcyBhbmQgc3BsaXQgaW4gdHdvIHBhcnRzICovCisgICAgQV9RMjhfczMyeDIgPSB2bGQxX3Mz
MiggQV9RMjggKTsKKyAgICBBX1EyOF9zMzJ4MiA9IHZuZWdfczMyKCBBX1EyOF9zMzJ4MiApOwor
ICAgIEFfTF9zMzJ4MiAgID0gdnNobF9uX3MzMiggQV9RMjhfczMyeDIsIDE4ICk7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAoIC1BX1Ey
OFtdICYgMHgwMDAwM0ZGRiApIDw8IDE4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIEFfTF9zMzJ4MiAgID0gdnJlaW50ZXJwcmV0X3Mz
Ml91MzIoIHZzaHJfbl91MzIoIHZyZWludGVycHJldF91MzJfczMyKCBBX0xfczMyeDIgKSwgMyAp
ICk7ICAgICAgICAgICAvKiAoIC1BX1EyOFtdICYgMHgwMDAwM0ZGRiApIDw8IDE1ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIEFfVV9z
MzJ4MiAgID0gdnNocl9uX3MzMiggQV9RMjhfczMyeDIsIDE0ICk7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzaWxrX1JTSElGVCggLUFf
UTI4W10sIDE0ICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIEFfVV9zMzJ4MiAgID0gdnNobF9uX3MzMiggQV9VX3MzMngyLCAx
NiApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBzaWxrX1JTSElGVCggLUFfUTI4W10sIDE0ICkgPDwgMTYgKENsaXAgdHdvIGxlYWRp
bmcgYml0cyB0byBjb25mb3JtIHRvIEMgZnVuY3Rpb24uKSAqLworICAgIEFfVV9zMzJ4MiAgID0g
dnNocl9uX3MzMiggQV9VX3MzMngyLCAxICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzaWxrX1JTSElGVCggLUFfUTI4W10sIDE0
ICkgPDwgMTUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworCisgICAgQl9RMjhfczMyeDIgID0gdmxkMV9zMzIoIEJfUTI4ICk7CisgICAgdF9zMzJ4
MiAgICAgID0gdmxkMV9zMzIoIEJfUTI4ICsgMSApOworICAgIHQwX3MzMngyeDIgICA9IHZ6aXBf
czMyKCBBX0xfczMyeDIsIEFfTF9zMzJ4MiApOworICAgIHQxX3MzMngyeDIgICA9IHZ6aXBfczMy
KCBBX1VfczMyeDIsIEFfVV9zMzJ4MiApOworICAgIHQyX3MzMngyeDIgICA9IHZ6aXBfczMyKCB0
X3MzMngyLCB0X3MzMngyICk7CisgICAgQV9MX3MzMng0ICAgID0gdmNvbWJpbmVfczMyKCB0MF9z
MzJ4MngyLnZhbFsgMCBdLCB0MF9zMzJ4MngyLnZhbFsgMSBdICk7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEF7MCwwLDEsMX1fTF9RMjggICAgICAgICAgKi8KKyAgICBBX1VfczMyeDQg
ICAgPSB2Y29tYmluZV9zMzIoIHQxX3MzMngyeDIudmFsWyAwIF0sIHQxX3MzMngyeDIudmFsWyAx
IF0gKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogQXswLDAsMSwxfV9VX1EyOCAgICAg
ICAgICAqLworICAgIEJfUTI4X3MzMng0ICA9IHZjb21iaW5lX3MzMiggdDJfczMyeDJ4Mi52YWxb
IDAgXSwgdDJfczMyeDJ4Mi52YWxbIDEgXSApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBCX1EyOFsgezEsMSwyLDJ9IF0gICAgICAgICovCisgICAgU19zMzJ4NCAgICAgID0gdmxkMXFf
czMyKCBTICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIFMwID0gU1sgMCBdOyBTMyA9IFNbIDMgXTsgKi8KKyAg
ICBTX3MzMngyeDIgICAgPSB2dHJuX3MzMiggdmdldF9sb3dfczMyKCBTX3MzMng0ICksIHZnZXRf
aGlnaF9zMzIoIFNfczMyeDQgKSApOyAgICAgICAgICAgICAgICAgICAgICAgLyogUzIgPSBTWyAx
IF07IFMxID0gU1sgMiBdOyAqLworICAgIFNfczMyeDQgICAgICA9IHZjb21iaW5lX3MzMiggU19z
MzJ4MngyLnZhbFsgMCBdLCBTX3MzMngyeDIudmFsWyAxIF0gKTsKKworICAgIGZvciggOyBrIDwg
bGVuIC0gMTsgayArPSAyICkgeworICAgICAgICBpbnQzMng0X3QgaW5fczMyeDRbIDIgXSwgdF9z
MzJ4NDsKKyAgICAgICAgaW50MzJ4Ml90IG91dDMyX1ExNF9zMzJ4MlsgMiBdOworCisgICAgICAg
IC8qIFNbIDIgKiBpICsgMCBdLCBTWyAyICogaSArIDEgXSwgU1sgMiAqIGkgKyAyIF0sIFNbIDIg
KiBpICsgMyBdOiBRMTIgKi8KKyAgICAgICAgaW5fczE2eDQgICAgICA9IHZsZDFfczE2KCAmaW5b
IDIgKiBrIF0gKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogaW57MCwxLDIsM30gPSBpblsgMiAqIGsgKyB7MCwxLDIsM30gXTsgKi8KKyAg
ICAgICAgaW5fczMyeDRbIDAgXSA9IHZzaGxsX25fczE2KCBpbl9zMTZ4NCwgMTUgKTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogaW57MCwxLDIs
M30gPDwgMTUgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgdF9zMzJ4NCAgICAgICA9
IHZxZG11bGhxX2xhbmVfczMyKCBpbl9zMzJ4NFsgMCBdLCBCX1EyOF9zMzJ4MiwgMCApOyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogc2lsa19TTVVMV0IoIEJfUTI4WyAwIF0sIGluezAs
MSwyLDN9ICkgKi8KKyAgICAgICAgaW5fczMyeDRbIDEgXSA9IHZjb21iaW5lX3MzMiggdmdldF9o
aWdoX3MzMiggaW5fczMyeDRbIDAgXSApLCB2Z2V0X2hpZ2hfczMyKCBpbl9zMzJ4NFsgMCBdICkg
KTsgLyogaW57MiwzLDIsM30gPDwgMTUgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAg
aW5fczMyeDRbIDAgXSA9IHZjb21iaW5lX3MzMiggdmdldF9sb3dfczMyICggaW5fczMyeDRbIDAg
XSApLCB2Z2V0X2xvd19zMzIgKCBpbl9zMzJ4NFsgMCBdICkgKTsgLyogaW57MCwxLDAsMX0gPDwg
MTUgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgc2lsa19iaXF1YWRfYWx0X3N0cmlk
ZTJfa2VybmVsKCBBX0xfczMyeDQsIEFfVV9zMzJ4NCwgQl9RMjhfczMyeDQsIHZnZXRfbG93X3Mz
MiAoIHRfczMyeDQgKSwgaW5fczMyeDRbIDAgXSwgJlNfczMyeDQsICZvdXQzMl9RMTRfczMyeDJb
IDAgXSApOworICAgICAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9rZXJuZWwoIEFfTF9zMzJ4
NCwgQV9VX3MzMng0LCBCX1EyOF9zMzJ4NCwgdmdldF9oaWdoX3MzMiggdF9zMzJ4NCApLCBpbl9z
MzJ4NFsgMSBdLCAmU19zMzJ4NCwgJm91dDMyX1ExNF9zMzJ4MlsgMSBdICk7CisKKyAgICAgICAg
LyogU2NhbGUgYmFjayB0byBRMCBhbmQgc2F0dXJhdGUgKi8KKyAgICAgICAgb3V0MzJfUTE0X3Mz
Mng0ID0gdmNvbWJpbmVfczMyKCBvdXQzMl9RMTRfczMyeDJbIDAgXSwgb3V0MzJfUTE0X3MzMngy
WyAxIF0gKTsgICAgICAgICAgICAgICAgICAgLyogb3V0MzJfUTE0X3swLDEsMiwzfSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBvdXQzMl9RMTRfczMyeDQgPSB2YWRk
cV9zMzIoIG91dDMyX1ExNF9zMzJ4NCwgb2Zmc2V0X3MzMng0ICk7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBvdXQzMl9RMTRfezAsMSwyLDN9ICsgKDE8PDE0KSAtIDEgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgICAgIG91dF9zMTZ4NCAgICAgICA9IHZxc2hybl9uX3MzMigg
b3V0MzJfUTE0X3MzMng0LCAxNCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUKCBvdXQzMl9RMTRf
ezAsMSwyLDN9ICsgKDE8PDE0KSAtIDEsIDE0ICkgKSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICAgICAgdnN0MV9zMTYoICZvdXRbIDIgKiBrIF0sIG91dF9zMTZ4NCApOyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
b3V0WyAyICogayArIHswLDEsMiwzfSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19S
U0hJRlQoIG91dDMyX1ExNF97MCwxLDIsM30gKyAoMTw8MTQpIC0gMSwgMTQgKSApOyAqLworICAg
IH0KKworICAgIC8qIFByb2Nlc3MgbGVmdG92ZXIuICovCisgICAgaWYoIGsgPCBsZW4gKSB7Cisg
ICAgICAgIGludDMyeDRfdCBpbl9zMzJ4NDsKKyAgICAgICAgaW50MzJ4Ml90IG91dDMyX1ExNF9z
MzJ4MjsKKworICAgICAgICAvKiBTWyAyICogaSArIDAgXSwgU1sgMiAqIGkgKyAxIF06IFExMiAq
LworICAgICAgICBpbl9zMTZ4NCAgICAgPSB2bGQxX2xhbmVfczE2KCAmaW5bIDIgKiBrICsgMCBd
LCBpbl9zMTZ4NCwgMCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBpbnsw
LDF9ID0gaW5bIDIgKiBrICsgezAsMX0gXTsgICAgICovCisgICAgICAgIGluX3MxNng0ICAgICA9
IHZsZDFfbGFuZV9zMTYoICZpblsgMiAqIGsgKyAxIF0sIGluX3MxNng0LCAxICk7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGluezAsMX0gPSBpblsgMiAqIGsgKyB7MCwxfSBd
OyAgICAgKi8KKyAgICAgICAgaW5fczMyeDQgICAgID0gdnNobGxfbl9zMTYoIGluX3MxNng0LCAx
NSApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogaW57MCwxfSA8PCAxNSAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICB0X3MzMngy
ICAgICAgPSB2cWRtdWxoX2xhbmVfczMyKCB2Z2V0X2xvd19zMzIoIGluX3MzMng0ICksIEJfUTI4
X3MzMngyLCAwICk7ICAgICAgICAgICAgICAgICAgICAvKiBzaWxrX1NNVUxXQiggQl9RMjhbIDAg
XSwgaW57MCwxfSApICovCisgICAgICAgIGluX3MzMng0ICAgICA9IHZjb21iaW5lX3MzMiggdmdl
dF9sb3dfczMyKCBpbl9zMzJ4NCApLCB2Z2V0X2xvd19zMzIoIGluX3MzMng0ICkgKTsgICAgICAg
ICAgICAgIC8qIGluezAsMSwwLDF9IDw8IDE1ICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAg
c2lsa19iaXF1YWRfYWx0X3N0cmlkZTJfa2VybmVsKCBBX0xfczMyeDQsIEFfVV9zMzJ4NCwgQl9R
MjhfczMyeDQsIHRfczMyeDIsIGluX3MzMng0LCAmU19zMzJ4NCwgJm91dDMyX1ExNF9zMzJ4MiAp
OworCisgICAgICAgIC8qIFNjYWxlIGJhY2sgdG8gUTAgYW5kIHNhdHVyYXRlICovCisgICAgICAg
IG91dDMyX1ExNF9zMzJ4MiA9IHZhZGRfczMyKCBvdXQzMl9RMTRfczMyeDIsIG9mZnNldF9zMzJ4
MiApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG91dDMyX1ExNF97MCwx
fSArICgxPDwxNCkgLSAxICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBvdXQzMl9RMTRfczMyeDQgPSB2Y29tYmlu
ZV9zMzIoIG91dDMyX1ExNF9zMzJ4Miwgb3V0MzJfUTE0X3MzMngyICk7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBvdXQzMl9RMTRfezAsMSwwLDF9ICsgKDE8PDE0KSAtIDEgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICAgICAgb3V0X3MxNng0ICAgICAgID0gdnFzaHJuX25fczMyKCBvdXQzMl9RMTRfczMyeDQsIDE0
ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogKG9wdXNfaW50
MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMyX1ExNF97MCwxLDAsMX0gKyAoMTw8MTQp
IC0gMSwgMTQgKSApICAgICAgICAgICAgICovCisgICAgICAgIHZzdDFfbGFuZV9zMTYoICZvdXRb
IDIgKiBrICsgMCBdLCBvdXRfczE2eDQsIDAgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIG91dFsgMiAqIGsgKyAwIF0gPSAob3B1c19pbnQxNilzaWxr
X1NBVDE2KCBzaWxrX1JTSElGVCggb3V0MzJfUTE0XzAgKyAoMTw8MTQpIC0gMSwgMTQgKSApOyAq
LworICAgICAgICB2c3QxX2xhbmVfczE2KCAmb3V0WyAyICogayArIDEgXSwgb3V0X3MxNng0LCAx
ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvdXRb
IDIgKiBrICsgMSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMy
X1ExNF8xICsgKDE8PDE0KSAtIDEsIDE0ICkgKTsgKi8KKyAgICB9CisKKyAgICB2c3QxcV9sYW5l
X3MzMiggJlNbIDAgXSwgU19zMzJ4NCwgMCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogU1sgMCBdID0gUzA7ICovCisgICAg
dnN0MXFfbGFuZV9zMzIoICZTWyAxIF0sIFNfczMyeDQsIDIgKTsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNbIDEgXSA9IFMy
OyAqLworICAgIHZzdDFxX2xhbmVfczMyKCAmU1sgMiBdLCBTX3MzMng0LCAxICk7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBT
WyAyIF0gPSBTMTsgKi8KKyAgICB2c3QxcV9sYW5lX3MzMiggJlNbIDMgXSwgU19zMzJ4NCwgMyAp
OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogU1sgMyBdID0gUzM7ICovCisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIHNp
bGtfYXNzZXJ0KCAhbWVtY21wKCBTX2MsIFMsIHNpemVvZiggU19jICkgKSApOworICAgIHNpbGtf
YXNzZXJ0KCAhbWVtY21wKCBvdXRfYywgb3V0LCAyICogbGVuICogc2l6ZW9mKCBvcHVzX2ludDE2
ICkgKSApOworICAgIFJFU1RPUkVfU1RBQ0s7CisjZW5kaWYKK30KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9h
cm0vbWFjcm9zX2FybXY0LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL21hY3Jvc19hcm12NC5oCmluZGV4IDNmMzBlOTcy
ODhmZDc3YjNhMjI5OGRmNjY4YTQxOTc3NzE2NGM2MjIuLjg3N2ViMThkZDU4MTI5Y2MxNTkxNTJk
ZDRiMDlkNjc1OWE4NGEyNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vbWFjcm9zX2FybXY0LmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2FybS9tYWNyb3NfYXJtdjQuaApAQCAtMjgsNiArMjgsMTEgQEAgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiAjaWZuZGVmIFNJTEtfTUFDUk9TX0FSTXY0X0gKICNkZWZpbmUgU0lM
S19NQUNST1NfQVJNdjRfSAogCisvKiBUaGlzIG1hY3JvIG9ubHkgYXZvaWRzIHRoZSB1bmRlZmlu
ZWQgYmVoYXZpb3VyIGZyb20gYSBsZWZ0IHNoaWZ0IG9mCisgICBhIG5lZ2F0aXZlIHZhbHVlLiBJ
dCBzaG91bGQgb25seSBiZSB1c2VkIGluIG1hY3JvcyB0aGF0IGNhbid0IGluY2x1ZGUKKyAgIFNp
Z1Byb2NfRklYLmguIEluIG90aGVyIGNhc2VzLCB1c2Ugc2lsa19MU0hJRlQzMigpLiAqLworI2Rl
ZmluZSBTQUZFX1NITChhLGIpICgob3B1c19pbnQzMikoKG9wdXNfdWludDMyKShhKSA8PCAoYikp
KQorCiAvKiAoYTMyICogKG9wdXNfaW50MzIpKChvcHVzX2ludDE2KShiMzIpKSkgPj4gMTYgb3V0
cHV0IGhhdmUgdG8gYmUgMzJiaXQgaW50ICovCiAjdW5kZWYgc2lsa19TTVVMV0IKIHN0YXRpYyBP
UFVTX0lOTElORSBvcHVzX2ludDMyIHNpbGtfU01VTFdCX2FybXY0KG9wdXNfaW50MzIgYSwgb3B1
c19pbnQxNiBiKQpAQCAtMzgsNyArNDMsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQz
MiBzaWxrX1NNVUxXQl9hcm12NChvcHVzX2ludDMyIGEsIG9wdXNfaW50MTYgYikKICAgICAgICIj
c2lsa19TTVVMV0Jcblx0IgogICAgICAgInNtdWxsICUwLCAlMSwgJTIsICUzXG5cdCIKICAgICAg
IDogIj0mciIocmRfbG8pLCAiPSZyIihyZF9oaSkKLSAgICAgIDogIiVyIihhKSwgInIiKGI8PDE2
KQorICAgICAgOiAiJXIiKGEpLCAiciIoU0FGRV9TSEwoYiwxNikpCiAgICk7CiAgIHJldHVybiBy
ZF9oaTsKIH0KQEAgLTgwLDcgKzg1LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIg
c2lsa19TTVVMV1dfYXJtdjQob3B1c19pbnQzMiBhLCBvcHVzX2ludDMyIGIpCiAgICAgOiAiPSZy
IihyZF9sbyksICI9JnIiKHJkX2hpKQogICAgIDogIiVyIihhKSwgInIiKGIpCiAgICk7Ci0gIHJl
dHVybiAocmRfaGk8PDE2KSsocmRfbG8+PjE2KTsKKyAgcmV0dXJuIFNBRkVfU0hMKHJkX2hpLDE2
KSsocmRfbG8+PjE2KTsKIH0KICNkZWZpbmUgc2lsa19TTVVMV1coYSwgYikgKHNpbGtfU01VTFdX
X2FybXY0KGEsIGIpKQogCkBAIC05Niw4ICsxMDEsMTAgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9w
dXNfaW50MzIgc2lsa19TTUxBV1dfYXJtdjQob3B1c19pbnQzMiBhLCBvcHVzX2ludDMyIGIsCiAg
ICAgOiAiPSZyIihyZF9sbyksICI9JnIiKHJkX2hpKQogICAgIDogIiVyIihiKSwgInIiKGMpCiAg
ICk7Ci0gIHJldHVybiBhKyhyZF9oaTw8MTYpKyhyZF9sbz4+MTYpOworICByZXR1cm4gYStTQUZF
X1NITChyZF9oaSwxNikrKHJkX2xvPj4xNik7CiB9CiAjZGVmaW5lIHNpbGtfU01MQVdXKGEsIGIs
IGMpIChzaWxrX1NNTEFXV19hcm12NChhLCBiLCBjKSkKIAorI3VuZGVmIFNBRkVfU0hMCisKICNl
bmRpZiAvKiBTSUxLX01BQ1JPU19BUk12NF9IICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL21hY3Jv
c19hcm12NWUuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9hcm0vbWFjcm9zX2FybXY1ZS5oCmluZGV4IGFhZDQxMTdlNDZhNWZh
ZmFhZWEzYjBlNWRjYzBiZTg1YjExYzZjZjkuLmIxNGVjNjVkZGIyOWEyMmIwOTM0NjBjMzhhZWI2
OGJhNWVkNTQwN2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vbWFjcm9zX2FybXY1ZS5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9hcm0vbWFjcm9zX2FybXY1ZS5oCkBAIC0yOSw2ICsyOSwxMSBAQCBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KICNpZm5kZWYgU0lMS19NQUNST1NfQVJNdjVFX0gKICNkZWZpbmUgU0lMS19N
QUNST1NfQVJNdjVFX0gKIAorLyogVGhpcyBtYWNybyBvbmx5IGF2b2lkcyB0aGUgdW5kZWZpbmVk
IGJlaGF2aW91ciBmcm9tIGEgbGVmdCBzaGlmdCBvZgorICAgYSBuZWdhdGl2ZSB2YWx1ZS4gSXQg
c2hvdWxkIG9ubHkgYmUgdXNlZCBpbiBtYWNyb3MgdGhhdCBjYW4ndCBpbmNsdWRlCisgICBTaWdQ
cm9jX0ZJWC5oLiBJbiBvdGhlciBjYXNlcywgdXNlIHNpbGtfTFNISUZUMzIoKS4gKi8KKyNkZWZp
bmUgU0FGRV9TSEwoYSxiKSAoKG9wdXNfaW50MzIpKChvcHVzX3VpbnQzMikoYSkgPDwgKGIpKSkK
KwogLyogKGEzMiAqIChvcHVzX2ludDMyKSgob3B1c19pbnQxNikoYjMyKSkpID4+IDE2IG91dHB1
dCBoYXZlIHRvIGJlIDMyYml0IGludCAqLwogI3VuZGVmIHNpbGtfU01VTFdCCiBzdGF0aWMgT1BV
U19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX1NNVUxXQl9hcm12NWUob3B1c19pbnQzMiBhLCBvcHVz
X2ludDE2IGIpCkBAIC0xOTAsNyArMTk1LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50
MzIgc2lsa19DTFoxNl9hcm12NShvcHVzX2ludDE2IGluMTYpCiAgICAgICAiI3NpbGtfQ0xaMTZc
blx0IgogICAgICAgImNseiAlMCwgJTE7XG4iCiAgICAgICA6ICI9ciIocmVzKQotICAgICAgOiAi
ciIoaW4xNjw8MTZ8MHg4MDAwKQorICAgICAgOiAiciIoU0FGRV9TSEwoaW4xNiwxNil8MHg4MDAw
KQogICApOwogICByZXR1cm4gcmVzOwogfQpAQCAtMjEwLDQgKzIxNSw2IEBAIHN0YXRpYyBPUFVT
X0lOTElORSBvcHVzX2ludDMyIHNpbGtfQ0xaMzJfYXJtdjUob3B1c19pbnQzMiBpbjMyKQogfQog
I2RlZmluZSBzaWxrX0NMWjMyKGluMzIpIChzaWxrX0NMWjMyX2FybXY1KGluMzIpKQogCisjdW5k
ZWYgU0FGRV9TSEwKKwogI2VuZGlmIC8qIFNJTEtfTUFDUk9TX0FSTXY1RV9IICovCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvYmlxdWFkX2FsdC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2JpcXVhZF9hbHQuYwppbmRleCBkNTVmNWVlOTJl
YzJkOWI0MjE3ODEwMzc3YTFjNGEzOTBmODEwNGY5Li41NDU2NmE0M2MwMDEzYzdiN2VkMzc4MDY5
YTQ0ODY3Y2NhOTMyMzFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYmlxdWFkX2FsdC5jCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9i
aXF1YWRfYWx0LmMKQEAgLTM5LDE0ICszOSwxMyBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICNpbmNsdWRlICJTaWdQcm9jX0ZJWC5oIgogCiAvKiBTZWNvbmQgb3JkZXIgQVJNQSBmaWx0
ZXIsIGFsdGVybmF0aXZlIGltcGxlbWVudGF0aW9uICovCi12b2lkIHNpbGtfYmlxdWFkX2FsdCgK
K3ZvaWQgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTEoCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgICppbiwgICAgICAgICAgICAgICAgLyogSSAgICAgaW5wdXQgc2lnbmFsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50MzIgICAgICAgICAgICAqQl9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIE1BIGNvZWZmaWNp
ZW50cyBbM10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBj
b25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKkFfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBB
UiBjb2VmZmljaWVudHMgWzJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpTLCAgICAgICAgICAgICAgICAg
LyogSS9PICAgU3RhdGUgdmVjdG9yIFsyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqb3V0LCAgICAg
ICAgICAgICAgIC8qIE8gICAgIG91dHB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAg
bGVuLCAgICAgICAgICAgICAgICAvKiBJICAgICBzaWduYWwgbGVuZ3RoIChtdXN0IGJlIGV2ZW4p
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAg
ICAgICAgICAgIHN0cmlkZSAgICAgICAgICAgICAgLyogSSAgICAgT3BlcmF0ZSBvbiBpbnRlcmxl
YXZlZCBzaWduYWwgaWYgPiAxICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICBsZW4gICAgICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBs
ZW5ndGggKG11c3QgYmUgZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkK
IHsKICAgICAvKiBESVJFQ1QgRk9STSBJSSBUUkFOU1BPU0VEICh1c2VzIDIgZWxlbWVudCBzdGF0
ZSB2ZWN0b3IpICovCkBAIC02MSw3ICs2MCw3IEBAIHZvaWQgc2lsa19iaXF1YWRfYWx0KAogCiAg
ICAgZm9yKCBrID0gMDsgayA8IGxlbjsgaysrICkgewogICAgICAgICAvKiBTWyAwIF0sIFNbIDEg
XTogUTEyICovCi0gICAgICAgIGludmFsID0gaW5bIGsgKiBzdHJpZGUgXTsKKyAgICAgICAgaW52
YWwgPSBpblsgayBdOwogICAgICAgICBvdXQzMl9RMTQgPSBzaWxrX0xTSElGVCggc2lsa19TTUxB
V0IoIFNbIDAgXSwgQl9RMjhbIDAgXSwgaW52YWwgKSwgMiApOwogCiAgICAgICAgIFNbIDAgXSA9
IFNbMV0gKyBzaWxrX1JTSElGVF9ST1VORCggc2lsa19TTVVMV0IoIG91dDMyX1ExNCwgQTBfTF9R
MjggKSwgMTQgKTsKQEAgLTczLDYgKzcyLDUwIEBAIHZvaWQgc2lsa19iaXF1YWRfYWx0KAogICAg
ICAgICBTWyAxIF0gPSBzaWxrX1NNTEFXQiggU1sgMSBdLCBCX1EyOFsgMiBdLCBpbnZhbCApOwog
CiAgICAgICAgIC8qIFNjYWxlIGJhY2sgdG8gUTAgYW5kIHNhdHVyYXRlICovCi0gICAgICAgIG91
dFsgayAqIHN0cmlkZSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91
dDMyX1ExNCArICgxPDwxNCkgLSAxLCAxNCApICk7CisgICAgICAgIG91dFsgayBdID0gKG9wdXNf
aW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMyX1ExNCArICgxPDwxNCkgLSAxLCAx
NCApICk7CisgICAgfQorfQorCit2b2lkIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyX2MoCisgICAg
Y29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICppbiwgICAgICAgICAgICAgICAgLyogSSAgICAg
aW5wdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQl9RMjgsICAgICAgICAgICAg
IC8qIEkgICAgIE1BIGNvZWZmaWNpZW50cyBbM10gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKkFfUTI4LCAg
ICAgICAgICAgICAvKiBJICAgICBBUiBjb2VmZmljaWVudHMgWzJdICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAg
ICpTLCAgICAgICAgICAgICAgICAgLyogSS9PICAgU3RhdGUgdmVjdG9yIFs0XSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MTYgICAgICAg
ICAgICAgICAgICAqb3V0LCAgICAgICAgICAgICAgIC8qIE8gICAgIG91dHB1dCBzaWduYWwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBv
cHVzX2ludDMyICAgICAgICAgICAgbGVuICAgICAgICAgICAgICAgICAvKiBJICAgICBzaWduYWwg
bGVuZ3RoIChtdXN0IGJlIGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisp
Cit7CisgICAgLyogRElSRUNUIEZPUk0gSUkgVFJBTlNQT1NFRCAodXNlcyAyIGVsZW1lbnQgc3Rh
dGUgdmVjdG9yKSAqLworICAgIG9wdXNfaW50ICAgazsKKyAgICBvcHVzX2ludDMyIEEwX1VfUTI4
LCBBMF9MX1EyOCwgQTFfVV9RMjgsIEExX0xfUTI4LCBvdXQzMl9RMTRbIDIgXTsKKworICAgIC8q
IE5lZ2F0ZSBBX1EyOCB2YWx1ZXMgYW5kIHNwbGl0IGluIHR3byBwYXJ0cyAqLworICAgIEEwX0xf
UTI4ID0gKCAtQV9RMjhbIDAgXSApICYgMHgwMDAwM0ZGRjsgICAgICAgIC8qIGxvd2VyIHBhcnQg
Ki8KKyAgICBBMF9VX1EyOCA9IHNpbGtfUlNISUZUKCAtQV9RMjhbIDAgXSwgMTQgKTsgICAgICAv
KiB1cHBlciBwYXJ0ICovCisgICAgQTFfTF9RMjggPSAoIC1BX1EyOFsgMSBdICkgJiAweDAwMDAz
RkZGOyAgICAgICAgLyogbG93ZXIgcGFydCAqLworICAgIEExX1VfUTI4ID0gc2lsa19SU0hJRlQo
IC1BX1EyOFsgMSBdLCAxNCApOyAgICAgIC8qIHVwcGVyIHBhcnQgKi8KKworICAgIGZvciggayA9
IDA7IGsgPCBsZW47IGsrKyApIHsKKyAgICAgICAgLyogU1sgMCBdLCBTWyAxIF0sIFNbIDIgXSwg
U1sgMyBdOiBRMTIgKi8KKyAgICAgICAgb3V0MzJfUTE0WyAwIF0gPSBzaWxrX0xTSElGVCggc2ls
a19TTUxBV0IoIFNbIDAgXSwgQl9RMjhbIDAgXSwgaW5bIDIgKiBrICsgMCBdICksIDIgKTsKKyAg
ICAgICAgb3V0MzJfUTE0WyAxIF0gPSBzaWxrX0xTSElGVCggc2lsa19TTUxBV0IoIFNbIDIgXSwg
Ql9RMjhbIDAgXSwgaW5bIDIgKiBrICsgMSBdICksIDIgKTsKKworICAgICAgICBTWyAwIF0gPSBT
WyAxIF0gKyBzaWxrX1JTSElGVF9ST1VORCggc2lsa19TTVVMV0IoIG91dDMyX1ExNFsgMCBdLCBB
MF9MX1EyOCApLCAxNCApOworICAgICAgICBTWyAyIF0gPSBTWyAzIF0gKyBzaWxrX1JTSElGVF9S
T1VORCggc2lsa19TTVVMV0IoIG91dDMyX1ExNFsgMSBdLCBBMF9MX1EyOCApLCAxNCApOworICAg
ICAgICBTWyAwIF0gPSBzaWxrX1NNTEFXQiggU1sgMCBdLCBvdXQzMl9RMTRbIDAgXSwgQTBfVV9R
MjggKTsKKyAgICAgICAgU1sgMiBdID0gc2lsa19TTUxBV0IoIFNbIDIgXSwgb3V0MzJfUTE0WyAx
IF0sIEEwX1VfUTI4ICk7CisgICAgICAgIFNbIDAgXSA9IHNpbGtfU01MQVdCKCBTWyAwIF0sIEJf
UTI4WyAxIF0sIGluWyAyICogayArIDAgXSApOworICAgICAgICBTWyAyIF0gPSBzaWxrX1NNTEFX
QiggU1sgMiBdLCBCX1EyOFsgMSBdLCBpblsgMiAqIGsgKyAxIF0gKTsKKworICAgICAgICBTWyAx
IF0gPSBzaWxrX1JTSElGVF9ST1VORCggc2lsa19TTVVMV0IoIG91dDMyX1ExNFsgMCBdLCBBMV9M
X1EyOCApLCAxNCApOworICAgICAgICBTWyAzIF0gPSBzaWxrX1JTSElGVF9ST1VORCggc2lsa19T
TVVMV0IoIG91dDMyX1ExNFsgMSBdLCBBMV9MX1EyOCApLCAxNCApOworICAgICAgICBTWyAxIF0g
PSBzaWxrX1NNTEFXQiggU1sgMSBdLCBvdXQzMl9RMTRbIDAgXSwgQTFfVV9RMjggKTsKKyAgICAg
ICAgU1sgMyBdID0gc2lsa19TTUxBV0IoIFNbIDMgXSwgb3V0MzJfUTE0WyAxIF0sIEExX1VfUTI4
ICk7CisgICAgICAgIFNbIDEgXSA9IHNpbGtfU01MQVdCKCBTWyAxIF0sIEJfUTI4WyAyIF0sIGlu
WyAyICogayArIDAgXSApOworICAgICAgICBTWyAzIF0gPSBzaWxrX1NNTEFXQiggU1sgMyBdLCBC
X1EyOFsgMiBdLCBpblsgMiAqIGsgKyAxIF0gKTsKKworICAgICAgICAvKiBTY2FsZSBiYWNrIHRv
IFEwIGFuZCBzYXR1cmF0ZSAqLworICAgICAgICBvdXRbIDIgKiBrICsgMCBdID0gKG9wdXNfaW50
MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMyX1ExNFsgMCBdICsgKDE8PDE0KSAtIDEs
IDE0ICkgKTsKKyAgICAgICAgb3V0WyAyICogayArIDEgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FU
MTYoIHNpbGtfUlNISUZUKCBvdXQzMl9RMTRbIDEgXSArICgxPDwxNCkgLSAxLCAxNCApICk7CiAg
ICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2J3ZXhwYW5kZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9id2V4cGFuZGVyLmMK
aW5kZXggMmViNDQ1NjY5NWU3OTE5MjAzNzU3YjhmZjhmNjA2NzM5MTNlZjExNi4uYWZhOTc5MDdl
YzgwMmM2M2M2NWQ1MjY3YzE0NThjMDdjODI1NzIwOCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2J3ZXhwYW5k
ZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvYndleHBhbmRlci5jCkBAIC00NSw3ICs0NSw3IEBAIHZvaWQgc2lsa19i
d2V4cGFuZGVyKAogICAgIC8qIEJpYXMgaW4gc2lsa19TTVVMV0IgY2FuIGxlYWQgdG8gdW5zdGFi
bGUgZmlsdGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBmb3IoIGkg
PSAwOyBpIDwgZCAtIDE7IGkrKyApIHsKICAgICAgICAgYXJbIGkgXSAgICA9IChvcHVzX2ludDE2
KXNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX01VTCggY2hpcnBfUTE2LCBhclsgaSBdICAgICAgICAg
ICAgICksIDE2ICk7Ci0gICAgICAgIGNoaXJwX1ExNiArPSAgICAgICAgICAgIHNpbGtfUlNISUZU
X1JPVU5EKCBzaWxrX01VTCggY2hpcnBfUTE2LCBjaGlycF9taW51c19vbmVfUTE2ICksIDE2ICk7
CisgICAgICAgIGNoaXJwX1ExNiArPSAgICAgICAgICAgICBzaWxrX1JTSElGVF9ST1VORCggc2ls
a19NVUwoIGNoaXJwX1ExNiwgY2hpcnBfbWludXNfb25lX1ExNiApLCAxNiApOwogICAgIH0KICAg
ICBhclsgZCAtIDEgXSA9IChvcHVzX2ludDE2KXNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX01VTCgg
Y2hpcnBfUTE2LCBhclsgZCAtIDEgXSApLCAxNiApOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRy
b2wuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9jb250cm9sLmgKaW5kZXggNzQ3ZTU0MjZhMGMzZmM3Y2I5YjViZGI3ODM0ZGRk
OThhMjNlOTc5MS4uYjc2ZWMzM2NkNmRkYjYzODZmNTY0ZTFkOTlkM2ZmNTdkN2U2OTNhZCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2NvbnRyb2wuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvY29udHJvbC5oCkBAIC03Nyw2ICs3Nyw5
IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICAvKiBJOiAgIEZsYWcgdG8gZW5hYmxlIGluLWJhbmQg
Rm9yd2FyZCBFcnJvciBDb3JyZWN0aW9uIChGRUMpOyAwLzEgICAgICAgICAgICAgICAgICAgICAg
Ki8KICAgICBvcHVzX2ludCB1c2VJbkJhbmRGRUM7CiAKKyAgICAvKiBJOiAgIEZsYWcgdG8gYWN0
dWFsbHkgY29kZSBpbi1iYW5kIEZvcndhcmQgRXJyb3IgQ29ycmVjdGlvbiAoRkVDKSBpbiB0aGUg
Y3VycmVudCBwYWNrZXQ7IDAvMSAqLworICAgIG9wdXNfaW50IExCUlJfY29kZWQ7CisKICAgICAv
KiBJOiAgIEZsYWcgdG8gZW5hYmxlIGRpc2NvbnRpbnVvdXMgdHJhbnNtaXNzaW9uIChEVFgpOyAw
LzEgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCB1c2VEVFg7CiAK
QEAgLTExMCw2ICsxMTMsMTEgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIC8qIE86ICAgVGVsbHMg
dGhlIE9wdXMgZW5jb2RlciB3ZSdyZSByZWFkeSB0byBzd2l0Y2ggICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50IHN3aXRjaFJlYWR5OwogCisgICAgLyog
TzogU0lMSyBTaWduYWwgdHlwZSAqLworICAgIG9wdXNfaW50IHNpZ25hbFR5cGU7CisKKyAgICAv
KiBPOiBTSUxLIG9mZnNldCAoZGl0aGVyaW5nKSAqLworICAgIG9wdXNfaW50IG9mZnNldDsKIH0g
c2lsa19FbmNDb250cm9sU3RydWN0OwogCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvY29udHJvbF9TTlIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9jb250cm9sX1NOUi5jCmluZGV4IGNlZTg3ZWIwZDhi
MzdjNTRlMDU3MDZmYjY4YThjZGMxOGM5YWFiNGMuLjQ2NGMxYWNmZTg4NDUxYWJmNmEzZWQ0NWRi
MjZiMjVjZDBjNjUzZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9jb250cm9sX1NOUi5jCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9j
b250cm9sX1NOUi5jCkBAIC02NCw4ICs2NCw3IEBAIG9wdXNfaW50IHNpbGtfY29udHJvbF9TTlIo
CiAgICAgICAgIC8qIEZpbmQgYml0cmF0ZSBpbnRlcnZhbCBpbiB0YWJsZSBhbmQgaW50ZXJwb2xh
dGUgKi8KICAgICAgICAgZm9yKCBrID0gMTsgayA8IFRBUkdFVF9SQVRFX1RBQl9TWjsgaysrICkg
ewogICAgICAgICAgICAgaWYoIFRhcmdldFJhdGVfYnBzIDw9IHJhdGVUYWJsZVsgayBdICkgewot
ICAgICAgICAgICAgICAgIGZyYWNfUTYgPSBzaWxrX0RJVjMyKCBzaWxrX0xTSElGVCggVGFyZ2V0
UmF0ZV9icHMgLSByYXRlVGFibGVbIGsgLSAxIF0sIDYgKSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXRlVGFibGVbIGsgXSAtIHJhdGVUYWJsZVsg
ayAtIDEgXSApOworICAgICAgICAgICAgICAgIGZyYWNfUTYgPSBzaWxrX0RJVjMyKCBzaWxrX0xT
SElGVCggVGFyZ2V0UmF0ZV9icHMgLSByYXRlVGFibGVbIGsgLSAxIF0sIDYgKSwgcmF0ZVRhYmxl
WyBrIF0gLSByYXRlVGFibGVbIGsgLSAxIF0gKTsKICAgICAgICAgICAgICAgICBwc0VuY0MtPlNO
Ul9kQl9RNyA9IHNpbGtfTFNISUZUKCBzaWxrX1NOUl90YWJsZV9RMVsgayAtIDEgXSwgNiApICsg
c2lsa19NVUwoIGZyYWNfUTYsIHNpbGtfU05SX3RhYmxlX1ExWyBrIF0gLSBzaWxrX1NOUl90YWJs
ZV9RMVsgayAtIDEgXSApOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2xfY29kZWMuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9jb250cm9sX2NvZGVjLmMKaW5k
ZXggMDQ0ZWVhM2YyYTg0ZTBhYTQ0M2YwNWNmYzVhZjJmNWM1ZTQ1NGNhZC4uOTM1MGZkNGIyYjRj
YzliNTg4OTFkODNiN2I3Yjc3NGYyNzRiMTgxZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2xfY29k
ZWMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvY29udHJvbF9jb2RlYy5jCkBAIC01Nyw3ICs1Nyw3IEBAIHN0YXRpYyBv
cHVzX2ludCBzaWxrX3NldHVwX2NvbXBsZXhpdHkoCiAKIHN0YXRpYyBPUFVTX0lOTElORSBvcHVz
X2ludCBzaWxrX3NldHVwX0xCUlIoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRlICAgICAgICAgICAg
ICAqcHNFbmNDLCAgICAgICAgICAgIC8qIEkvTyAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgVGFyZ2V0UmF0ZV9icHMgICAgICAvKiBJ
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX0VuY0NvbnRyb2xTdHJ1
Y3QgICAgICplbmNDb250cm9sICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICov
CiApOwogCiAKQEAgLTY1LDcgKzY1LDYgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50IHNp
bGtfc2V0dXBfTEJSUigKIG9wdXNfaW50IHNpbGtfY29udHJvbF9lbmNvZGVyKAogICAgIHNpbGtf
ZW5jb2Rlcl9zdGF0ZV9GeHggICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIGVuY29kZXIgc3RhdGUgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19FbmNDb250
cm9sU3RydWN0ICAgICAgICAgICAqZW5jQ29udHJvbCwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBDb250cm9sIHN0cnVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAg
ICAgICAgICAgICAgIFRhcmdldFJhdGVfYnBzLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIFRhcmdldCBtYXggYml0cmF0ZSAoYnBzKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgYWxsb3dfYndfc3dpdGNoLCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRmxh
ZyB0byBhbGxvdyBzd2l0Y2hpbmcgYXVkaW8gYmFuZHdpZHRoICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBj
aGFubmVsTmIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDaGFubmVsIG51
bWJlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGZvcmNlX2Zz
X2tIegpAQCAtMTI1LDcgKzEyNCw3IEBAIG9wdXNfaW50IHNpbGtfY29udHJvbF9lbmNvZGVyKAog
ICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAv
KiBTZXQgTEJSUiB1c2FnZSAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgLyoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgIHJldCArPSBzaWxr
X3NldHVwX0xCUlIoICZwc0VuYy0+c0NtbiwgVGFyZ2V0UmF0ZV9icHMgKTsKKyAgICByZXQgKz0g
c2lsa19zZXR1cF9MQlJSKCAmcHNFbmMtPnNDbW4sIGVuY0NvbnRyb2wgKTsKIAogICAgIHBzRW5j
LT5zQ21uLmNvbnRyb2xsZWRfc2luY2VfbGFzdF9wYXlsb2FkID0gMTsKIApAQCAtMjQ0LDcgKzI0
Myw2IEBAIHN0YXRpYyBvcHVzX2ludCBzaWxrX3NldHVwX2ZzKAogICAgIGlmKCBwc0VuYy0+c0Nt
bi5mc19rSHogIT0gZnNfa0h6ICkgewogICAgICAgICAvKiByZXNldCBwYXJ0IG9mIHRoZSBzdGF0
ZSAqLwogICAgICAgICBzaWxrX21lbXNldCggJnBzRW5jLT5zU2hhcGUsICAgICAgICAgICAgICAg
MCwgc2l6ZW9mKCBwc0VuYy0+c1NoYXBlICkgKTsKLSAgICAgICAgc2lsa19tZW1zZXQoICZwc0Vu
Yy0+c1ByZWZpbHQsICAgICAgICAgICAgIDAsIHNpemVvZiggcHNFbmMtPnNQcmVmaWx0ICkgKTsK
ICAgICAgICAgc2lsa19tZW1zZXQoICZwc0VuYy0+c0Ntbi5zTlNRLCAgICAgICAgICAgIDAsIHNp
emVvZiggcHNFbmMtPnNDbW4uc05TUSApICk7CiAgICAgICAgIHNpbGtfbWVtc2V0KCBwc0VuYy0+
c0Ntbi5wcmV2X05MU0ZxX1ExNSwgICAwLCBzaXplb2YoIHBzRW5jLT5zQ21uLnByZXZfTkxTRnFf
UTE1ICkgKTsKICAgICAgICAgc2lsa19tZW1zZXQoICZwc0VuYy0+c0Ntbi5zTFAuSW5fTFBfU3Rh
dGUsIDAsIHNpemVvZiggcHNFbmMtPnNDbW4uc0xQLkluX0xQX1N0YXRlICkgKTsKQEAgLTI1NSw3
ICsyNTMsNiBAQCBzdGF0aWMgb3B1c19pbnQgc2lsa19zZXR1cF9mcygKICAgICAgICAgLyogSW5p
dGlhbGl6ZSBub24temVybyBwYXJhbWV0ZXJzICovCiAgICAgICAgIHBzRW5jLT5zQ21uLnByZXZM
YWcgICAgICAgICAgICAgICAgICAgICA9IDEwMDsKICAgICAgICAgcHNFbmMtPnNDbW4uZmlyc3Rf
ZnJhbWVfYWZ0ZXJfcmVzZXQgICAgID0gMTsKLSAgICAgICAgcHNFbmMtPnNQcmVmaWx0LmxhZ1By
ZXYgICAgICAgICAgICAgICAgID0gMTAwOwogICAgICAgICBwc0VuYy0+c1NoYXBlLkxhc3RHYWlu
SW5kZXggICAgICAgICAgICAgPSAxMDsKICAgICAgICAgcHNFbmMtPnNDbW4uc05TUS5sYWdQcmV2
ICAgICAgICAgICAgICAgID0gMTAwOwogICAgICAgICBwc0VuYy0+c0Ntbi5zTlNRLnByZXZfZ2Fp
bl9RMTYgICAgICAgICAgPSA2NTUzNjsKQEAgLTI5MywxMyArMjkwLDEwIEBAIHN0YXRpYyBvcHVz
X2ludCBzaWxrX3NldHVwX2ZzKAogICAgICAgICAgICAgcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dp
bl9sZW5ndGggPSBzaWxrX1NNVUxCQiggRklORF9QSVRDSF9MUENfV0lOX01TXzJfU0YsIGZzX2tI
eiApOwogICAgICAgICB9CiAgICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5mc19rSHogPT0gMTYgKSB7
Ci0gICAgICAgICAgICBwc0VuYy0+c0Ntbi5tdV9MVFBfUTkgPSBTSUxLX0ZJWF9DT05TVCggTVVf
TFRQX1FVQU5UX1dCLCA5ICk7CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5waXRjaF9sYWdfbG93
X2JpdHNfaUNERiA9IHNpbGtfdW5pZm9ybThfaUNERjsKICAgICAgICAgfSBlbHNlIGlmKCBwc0Vu
Yy0+c0Ntbi5mc19rSHogPT0gMTIgKSB7Ci0gICAgICAgICAgICBwc0VuYy0+c0Ntbi5tdV9MVFBf
UTkgPSBTSUxLX0ZJWF9DT05TVCggTVVfTFRQX1FVQU5UX01CLCA5ICk7CiAgICAgICAgICAgICBw
c0VuYy0+c0Ntbi5waXRjaF9sYWdfbG93X2JpdHNfaUNERiA9IHNpbGtfdW5pZm9ybTZfaUNERjsK
ICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHBzRW5jLT5zQ21uLm11X0xUUF9ROSA9IFNJ
TEtfRklYX0NPTlNUKCBNVV9MVFBfUVVBTlRfTkIsIDkgKTsKICAgICAgICAgICAgIHBzRW5jLT5z
Q21uLnBpdGNoX2xhZ19sb3dfYml0c19pQ0RGID0gc2lsa191bmlmb3JtNF9pQ0RGOwogICAgICAg
ICB9CiAgICAgfQpAQCAtMzE5LDYwICszMTMsNzUgQEAgc3RhdGljIG9wdXNfaW50IHNpbGtfc2V0
dXBfY29tcGxleGl0eSgKIAogICAgIC8qIFNldCBlbmNvZGluZyBjb21wbGV4aXR5ICovCiAgICAg
c2lsa19hc3NlcnQoIENvbXBsZXhpdHkgPj0gMCAmJiBDb21wbGV4aXR5IDw9IDEwICk7Ci0gICAg
aWYoIENvbXBsZXhpdHkgPCAyICkgeworICAgIGlmKCBDb21wbGV4aXR5IDwgMSApIHsKICAgICAg
ICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25Db21wbGV4aXR5ICAgICAgID0gU0lMS19QRV9NSU5f
Q09NUExFWDsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25UaHJlc2hvbGRfUTE2ICAg
ID0gU0lMS19GSVhfQ09OU1QoIDAuOCwgMTYgKTsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGlt
YXRpb25MUENPcmRlciAgICAgICAgID0gNjsKLSAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3Jk
ZXIgICAgICAgICAgICAgICAgID0gODsKKyAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIg
ICAgICAgICAgICAgICAgID0gMTI7CiAgICAgICAgIHBzRW5jQy0+bGFfc2hhcGUgICAgICAgICAg
ICAgICAgICAgICAgICA9IDMgKiBwc0VuY0MtPmZzX2tIejsKICAgICAgICAgcHNFbmNDLT5uU3Rh
dGVzRGVsYXllZERlY2lzaW9uICAgICAgICAgID0gMTsKICAgICAgICAgcHNFbmNDLT51c2VJbnRl
cnBvbGF0ZWROTFNGcyAgICAgICAgICAgID0gMDsKLSAgICAgICAgcHNFbmNDLT5MVFBRdWFudExv
d0NvbXBsZXhpdHkgICAgICAgICAgID0gMTsKICAgICAgICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vy
dml2b3JzICAgICAgICAgICAgID0gMjsKICAgICAgICAgcHNFbmNDLT53YXJwaW5nX1ExNiAgICAg
ICAgICAgICAgICAgICAgID0gMDsKLSAgICB9IGVsc2UgaWYoIENvbXBsZXhpdHkgPCA0ICkgewor
ICAgIH0gZWxzZSBpZiggQ29tcGxleGl0eSA8IDIgKSB7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hF
c3RpbWF0aW9uQ29tcGxleGl0eSAgICAgICA9IFNJTEtfUEVfTUlEX0NPTVBMRVg7CiAgICAgICAg
IHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNiAgICA9IFNJTEtfRklYX0NPTlNU
KCAwLjc2LCAxNiApOwogICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyICAg
ICAgICAgPSA4OwotICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAg
ICAgPSAxMDsKKyAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIgICAgICAgICAgICAgICAg
ID0gMTQ7CiAgICAgICAgIHBzRW5jQy0+bGFfc2hhcGUgICAgICAgICAgICAgICAgICAgICAgICA9
IDUgKiBwc0VuY0MtPmZzX2tIejsKICAgICAgICAgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lz
aW9uICAgICAgICAgID0gMTsKICAgICAgICAgcHNFbmNDLT51c2VJbnRlcnBvbGF0ZWROTFNGcyAg
ICAgICAgICAgID0gMDsKLSAgICAgICAgcHNFbmNDLT5MVFBRdWFudExvd0NvbXBsZXhpdHkgICAg
ICAgICAgID0gMDsKKyAgICAgICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vydml2b3JzICAgICAgICAg
ICAgID0gMzsKKyAgICAgICAgcHNFbmNDLT53YXJwaW5nX1ExNiAgICAgICAgICAgICAgICAgICAg
ID0gMDsKKyAgICB9IGVsc2UgaWYoIENvbXBsZXhpdHkgPCAzICkgeworICAgICAgICBwc0VuY0Mt
PnBpdGNoRXN0aW1hdGlvbkNvbXBsZXhpdHkgICAgICAgPSBTSUxLX1BFX01JTl9DT01QTEVYOwor
ICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvblRocmVzaG9sZF9RMTYgICAgPSBTSUxLX0ZJ
WF9DT05TVCggMC44LCAxNiApOworICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09y
ZGVyICAgICAgICAgPSA2OworICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAg
ICAgICAgICAgPSAxMjsKKyAgICAgICAgcHNFbmNDLT5sYV9zaGFwZSAgICAgICAgICAgICAgICAg
ICAgICAgID0gMyAqIHBzRW5jQy0+ZnNfa0h6OworICAgICAgICBwc0VuY0MtPm5TdGF0ZXNEZWxh
eWVkRGVjaXNpb24gICAgICAgICAgPSAyOworICAgICAgICBwc0VuY0MtPnVzZUludGVycG9sYXRl
ZE5MU0ZzICAgICAgICAgICAgPSAwOworICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZv
cnMgICAgICAgICAgICAgPSAyOworICAgICAgICBwc0VuY0MtPndhcnBpbmdfUTE2ICAgICAgICAg
ICAgICAgICAgICAgPSAwOworICAgIH0gZWxzZSBpZiggQ29tcGxleGl0eSA8IDQgKSB7CisgICAg
ICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uQ29tcGxleGl0eSAgICAgICA9IFNJTEtfUEVfTUlE
X0NPTVBMRVg7CisgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNiAg
ICA9IFNJTEtfRklYX0NPTlNUKCAwLjc2LCAxNiApOworICAgICAgICBwc0VuY0MtPnBpdGNoRXN0
aW1hdGlvbkxQQ09yZGVyICAgICAgICAgPSA4OworICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENP
cmRlciAgICAgICAgICAgICAgICAgPSAxNDsKKyAgICAgICAgcHNFbmNDLT5sYV9zaGFwZSAgICAg
ICAgICAgICAgICAgICAgICAgID0gNSAqIHBzRW5jQy0+ZnNfa0h6OworICAgICAgICBwc0VuY0Mt
Pm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gICAgICAgICAgPSAyOworICAgICAgICBwc0VuY0MtPnVz
ZUludGVycG9sYXRlZE5MU0ZzICAgICAgICAgICAgPSAwOwogICAgICAgICBwc0VuY0MtPk5MU0Zf
TVNWUV9TdXJ2aXZvcnMgICAgICAgICAgICAgPSA0OwogICAgICAgICBwc0VuY0MtPndhcnBpbmdf
UTE2ICAgICAgICAgICAgICAgICAgICAgPSAwOwogICAgIH0gZWxzZSBpZiggQ29tcGxleGl0eSA8
IDYgKSB7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uQ29tcGxleGl0eSAgICAgICA9
IFNJTEtfUEVfTUlEX0NPTVBMRVg7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uVGhy
ZXNob2xkX1ExNiAgICA9IFNJTEtfRklYX0NPTlNUKCAwLjc0LCAxNiApOwogICAgICAgICBwc0Vu
Y0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyICAgICAgICAgPSAxMDsKLSAgICAgICAgcHNFbmND
LT5zaGFwaW5nTFBDT3JkZXIgICAgICAgICAgICAgICAgID0gMTI7CisgICAgICAgIHBzRW5jQy0+
c2hhcGluZ0xQQ09yZGVyICAgICAgICAgICAgICAgICA9IDE2OwogICAgICAgICBwc0VuY0MtPmxh
X3NoYXBlICAgICAgICAgICAgICAgICAgICAgICAgPSA1ICogcHNFbmNDLT5mc19rSHo7CiAgICAg
ICAgIHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbiAgICAgICAgICA9IDI7CiAgICAgICAg
IHBzRW5jQy0+dXNlSW50ZXJwb2xhdGVkTkxTRnMgICAgICAgICAgICA9IDE7Ci0gICAgICAgIHBz
RW5jQy0+TFRQUXVhbnRMb3dDb21wbGV4aXR5ICAgICAgICAgICA9IDA7Ci0gICAgICAgIHBzRW5j
Qy0+TkxTRl9NU1ZRX1N1cnZpdm9ycyAgICAgICAgICAgICA9IDg7CisgICAgICAgIHBzRW5jQy0+
TkxTRl9NU1ZRX1N1cnZpdm9ycyAgICAgICAgICAgICA9IDY7CiAgICAgICAgIHBzRW5jQy0+d2Fy
cGluZ19RMTYgICAgICAgICAgICAgICAgICAgICA9IHBzRW5jQy0+ZnNfa0h6ICogU0lMS19GSVhf
Q09OU1QoIFdBUlBJTkdfTVVMVElQTElFUiwgMTYgKTsKICAgICB9IGVsc2UgaWYoIENvbXBsZXhp
dHkgPCA4ICkgewogICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkNvbXBsZXhpdHkgICAg
ICAgPSBTSUxLX1BFX01JRF9DT01QTEVYOwogICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlv
blRocmVzaG9sZF9RMTYgICAgPSBTSUxLX0ZJWF9DT05TVCggMC43MiwgMTYgKTsKICAgICAgICAg
cHNFbmNDLT5waXRjaEVzdGltYXRpb25MUENPcmRlciAgICAgICAgID0gMTI7Ci0gICAgICAgIHBz
RW5jQy0+c2hhcGluZ0xQQ09yZGVyICAgICAgICAgICAgICAgICA9IDE0OworICAgICAgICBwc0Vu
Y0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAyMDsKICAgICAgICAgcHNFbmND
LT5sYV9zaGFwZSAgICAgICAgICAgICAgICAgICAgICAgID0gNSAqIHBzRW5jQy0+ZnNfa0h6Owog
ICAgICAgICBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gICAgICAgICAgPSAzOwogICAg
ICAgICBwc0VuY0MtPnVzZUludGVycG9sYXRlZE5MU0ZzICAgICAgICAgICAgPSAxOwotICAgICAg
ICBwc0VuY0MtPkxUUFF1YW50TG93Q29tcGxleGl0eSAgICAgICAgICAgPSAwOwotICAgICAgICBw
c0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMgICAgICAgICAgICAgPSAxNjsKKyAgICAgICAgcHNF
bmNDLT5OTFNGX01TVlFfU3Vydml2b3JzICAgICAgICAgICAgID0gODsKICAgICAgICAgcHNFbmND
LT53YXJwaW5nX1ExNiAgICAgICAgICAgICAgICAgICAgID0gcHNFbmNDLT5mc19rSHogKiBTSUxL
X0ZJWF9DT05TVCggV0FSUElOR19NVUxUSVBMSUVSLCAxNiApOwogICAgIH0gZWxzZSB7CiAgICAg
ICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uQ29tcGxleGl0eSAgICAgICA9IFNJTEtfUEVfTUFY
X0NPTVBMRVg7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNiAg
ICA9IFNJTEtfRklYX0NPTlNUKCAwLjcsIDE2ICk7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3Rp
bWF0aW9uTFBDT3JkZXIgICAgICAgICA9IDE2OwotICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENP
cmRlciAgICAgICAgICAgICAgICAgPSAxNjsKKyAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3Jk
ZXIgICAgICAgICAgICAgICAgID0gMjQ7CiAgICAgICAgIHBzRW5jQy0+bGFfc2hhcGUgICAgICAg
ICAgICAgICAgICAgICAgICA9IDUgKiBwc0VuY0MtPmZzX2tIejsKICAgICAgICAgcHNFbmNDLT5u
U3RhdGVzRGVsYXllZERlY2lzaW9uICAgICAgICAgID0gTUFYX0RFTF9ERUNfU1RBVEVTOwogICAg
ICAgICBwc0VuY0MtPnVzZUludGVycG9sYXRlZE5MU0ZzICAgICAgICAgICAgPSAxOwotICAgICAg
ICBwc0VuY0MtPkxUUFF1YW50TG93Q29tcGxleGl0eSAgICAgICAgICAgPSAwOwotICAgICAgICBw
c0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMgICAgICAgICAgICAgPSAzMjsKKyAgICAgICAgcHNF
bmNDLT5OTFNGX01TVlFfU3Vydml2b3JzICAgICAgICAgICAgID0gMTY7CiAgICAgICAgIHBzRW5j
Qy0+d2FycGluZ19RMTYgICAgICAgICAgICAgICAgICAgICA9IHBzRW5jQy0+ZnNfa0h6ICogU0lM
S19GSVhfQ09OU1QoIFdBUlBJTkdfTVVMVElQTElFUiwgMTYgKTsKICAgICB9CiAKQEAgLTM4Nyw0
MCArMzk2LDI2IEBAIHN0YXRpYyBvcHVzX2ludCBzaWxrX3NldHVwX2NvbXBsZXhpdHkoCiAgICAg
c2lsa19hc3NlcnQoIHBzRW5jQy0+d2FycGluZ19RMTYgICAgICAgICAgICAgPD0gMzI3NjcgICAg
ICAgICAgICAgICAgICAgICk7CiAgICAgc2lsa19hc3NlcnQoIHBzRW5jQy0+bGFfc2hhcGUgICAg
ICAgICAgICAgICAgPD0gTEFfU0hBUEVfTUFYICAgICAgICAgICAgICk7CiAgICAgc2lsa19hc3Nl
cnQoIHBzRW5jQy0+c2hhcGVXaW5MZW5ndGggICAgICAgICAgPD0gU0hBUEVfTFBDX1dJTl9NQVgg
ICAgICAgICk7Ci0gICAgc2lsa19hc3NlcnQoIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9ycyAg
ICAgPD0gTkxTRl9WUV9NQVhfU1VSVklWT1JTICAgICk7CiAKICAgICByZXR1cm4gcmV0OwogfQog
CiBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQgc2lsa19zZXR1cF9MQlJSKAogICAgIHNpbGtf
ZW5jb2Rlcl9zdGF0ZSAgICAgICAgICAqcHNFbmNDLCAgICAgICAgICAgIC8qIEkvTyAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBUYXJnZXRS
YXRlX2JwcyAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNp
bGtfRW5jQ29udHJvbFN0cnVjdCAqZW5jQ29udHJvbCAgICAgICAgIC8qIEkgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogKQogewogICAgIG9wdXNfaW50ICAgTEJSUl9pbl9wcmV2aW91c19wYWNr
ZXQsIHJldCA9IFNJTEtfTk9fRVJST1I7Ci0gICAgb3B1c19pbnQzMiBMQlJSX3JhdGVfdGhyZXNf
YnBzOwogCiAgICAgTEJSUl9pbl9wcmV2aW91c19wYWNrZXQgPSBwc0VuY0MtPkxCUlJfZW5hYmxl
ZDsKLSAgICBwc0VuY0MtPkxCUlJfZW5hYmxlZCA9IDA7Ci0gICAgaWYoIHBzRW5jQy0+dXNlSW5C
YW5kRkVDICYmIHBzRW5jQy0+UGFja2V0TG9zc19wZXJjID4gMCApIHsKLSAgICAgICAgaWYoIHBz
RW5jQy0+ZnNfa0h6ID09IDggKSB7Ci0gICAgICAgICAgICBMQlJSX3JhdGVfdGhyZXNfYnBzID0g
TEJSUl9OQl9NSU5fUkFURV9CUFM7Ci0gICAgICAgIH0gZWxzZSBpZiggcHNFbmNDLT5mc19rSHog
PT0gMTIgKSB7Ci0gICAgICAgICAgICBMQlJSX3JhdGVfdGhyZXNfYnBzID0gTEJSUl9NQl9NSU5f
UkFURV9CUFM7CisgICAgcHNFbmNDLT5MQlJSX2VuYWJsZWQgPSBlbmNDb250cm9sLT5MQlJSX2Nv
ZGVkOworICAgIGlmKCBwc0VuY0MtPkxCUlJfZW5hYmxlZCApIHsKKyAgICAgICAgLyogU2V0IGdh
aW4gaW5jcmVhc2UgZm9yIGNvZGluZyBMQlJSIGV4Y2l0YXRpb24gKi8KKyAgICAgICAgaWYoIExC
UlJfaW5fcHJldmlvdXNfcGFja2V0ID09IDAgKSB7CisgICAgICAgICAgICAvKiBQcmV2aW91cyBw
YWNrZXQgZGlkIG5vdCBoYXZlIExCUlIsIGFuZCB3YXMgdGhlcmVmb3JlIGNvZGVkIGF0IGEgaGln
aGVyIGJpdHJhdGUgKi8KKyAgICAgICAgICAgIHBzRW5jQy0+TEJSUl9HYWluSW5jcmVhc2VzID0g
NzsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIExCUlJfcmF0ZV90aHJlc19icHMgPSBM
QlJSX1dCX01JTl9SQVRFX0JQUzsKLSAgICAgICAgfQotICAgICAgICBMQlJSX3JhdGVfdGhyZXNf
YnBzID0gc2lsa19TTVVMV0IoIHNpbGtfTVVMKCBMQlJSX3JhdGVfdGhyZXNfYnBzLCAxMjUgLSBz
aWxrX21pbiggcHNFbmNDLT5QYWNrZXRMb3NzX3BlcmMsIDI1ICkgKSwgU0lMS19GSVhfQ09OU1Qo
IDAuMDEsIDE2ICkgKTsKLQotICAgICAgICBpZiggVGFyZ2V0UmF0ZV9icHMgPiBMQlJSX3JhdGVf
dGhyZXNfYnBzICkgewotICAgICAgICAgICAgLyogU2V0IGdhaW4gaW5jcmVhc2UgZm9yIGNvZGlu
ZyBMQlJSIGV4Y2l0YXRpb24gKi8KLSAgICAgICAgICAgIGlmKCBMQlJSX2luX3ByZXZpb3VzX3Bh
Y2tldCA9PSAwICkgewotICAgICAgICAgICAgICAgIC8qIFByZXZpb3VzIHBhY2tldCBkaWQgbm90
IGhhdmUgTEJSUiwgYW5kIHdhcyB0aGVyZWZvcmUgY29kZWQgYXQgYSBoaWdoZXIgYml0cmF0ZSAq
LwotICAgICAgICAgICAgICAgIHBzRW5jQy0+TEJSUl9HYWluSW5jcmVhc2VzID0gNzsKLSAgICAg
ICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgcHNFbmNDLT5MQlJSX0dhaW5JbmNyZWFz
ZXMgPSBzaWxrX21heF9pbnQoIDcgLSBzaWxrX1NNVUxXQiggKG9wdXNfaW50MzIpcHNFbmNDLT5Q
YWNrZXRMb3NzX3BlcmMsIFNJTEtfRklYX0NPTlNUKCAwLjQsIDE2ICkgKSwgMiApOwotICAgICAg
ICAgICAgfQotICAgICAgICAgICAgcHNFbmNDLT5MQlJSX2VuYWJsZWQgPSAxOworICAgICAgICAg
ICAgcHNFbmNDLT5MQlJSX0dhaW5JbmNyZWFzZXMgPSBzaWxrX21heF9pbnQoIDcgLSBzaWxrX1NN
VUxXQiggKG9wdXNfaW50MzIpcHNFbmNDLT5QYWNrZXRMb3NzX3BlcmMsIFNJTEtfRklYX0NPTlNU
KCAwLjQsIDE2ICkgKSwgMiApOwogICAgICAgICB9CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
ZGVidWcuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9kZWJ1Zy5oCmluZGV4IGVmYjZkM2U5OWU3ZjgzMTc1ZmUwMzQyZGUwMDRj
ODY3YzA4YWY4ZGIuLjZmNjhjMWNhMGYwMjI1NzczMzAzOGUwZjkxYzQxOGMzMTlhOTg2YjIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9kZWJ1Zy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWJ1Zy5oCkBAIC0zOSwyMyArMzksMTAg
QEAgZXh0ZXJuICJDIgogCiB1bnNpZ25lZCBsb25nIEdldEhpZ2hSZXNvbHV0aW9uVGltZSh2b2lk
KTsgLyogTyAgdGltZSBpbiB1c2VjKi8KIAotLyogbWFrZSBTSUxLX0RFQlVHIGRlcGVuZGVudCBv
biBjb21waWxlcidzIF9ERUJVRyAqLwotI2lmIGRlZmluZWQgX1dJTjMyCi0gICAgI2lmZGVmIF9E
RUJVRwotICAgICAgICAjZGVmaW5lIFNJTEtfREVCVUcgIDEKLSAgICAjZWxzZQotICAgICAgICAj
ZGVmaW5lIFNJTEtfREVCVUcgIDAKLSAgICAjZW5kaWYKLQotICAgIC8qIG92ZXJydWxlIHRoZSBh
Ym92ZSAqLwotICAgICNpZiAwCi0gICAgLyogICNkZWZpbmUgTk9fQVNTRVJUUyovCi0gICAgI3Vu
ZGVmICBTSUxLX0RFQlVHCi0gICAgI2RlZmluZSBTSUxLX0RFQlVHICAxCi0gICAgI2VuZGlmCi0j
ZWxzZQotICAgICNkZWZpbmUgU0lMS19ERUJVRyAgMAotI2VuZGlmCisvKiBTZXQgdG8gMSB0byBl
bmFibGUgREVCVUdfU1RPUkVfREFUQSgpIG1hY3JvcyBmb3IgZHVtcGluZworICogaW50ZXJtZWRp
YXRlIHNpZ25hbHMgZnJvbSB0aGUgY29kZWMuCisgKi8KKyNkZWZpbmUgU0lMS19ERUJVRyAwCiAK
IC8qIEZsYWcgZm9yIHVzaW5nIHRpbWVycyAqLwogI2RlZmluZSBTSUxLX1RJQ19UT0MgICAgMApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2RlY29kZV9jb3JlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX2NvcmUuYwppbmRleCBl
NTY5YzBlNzJiM2UxNzE4MjZkNzMwYTRiZTY0ODM2ZmIwZWMwZDlhLi5mZDRlODU3YWZhOGFjY2M2
ZDdmYWQyMDNiYjk2MDE4ODlhZDAxZDk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX2NvcmUuYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZGVjb2RlX2NvcmUuYwpAQCAtMjI1LDggKzIyNSw2IEBAIHZvaWQgc2lsa19kZWNv
ZGVfY29yZSgKICAgICAgICAgICAgIHB4cVsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNigg
c2lsa19SU0hJRlRfUk9VTkQoIHNpbGtfU01VTFdXKCBzTFBDX1ExNFsgTUFYX0xQQ19PUkRFUiAr
IGkgXSwgR2Fpbl9RMTAgKSwgOCApICk7CiAgICAgICAgIH0KIAotICAgICAgICAvKiBERUJVR19T
VE9SRV9EQVRBKCBkZWMucGNtLCBweHEsIHBzRGVjLT5zdWJmcl9sZW5ndGggKiBzaXplb2YoIG9w
dXNfaW50MTYgKSApICovCi0KICAgICAgICAgLyogVXBkYXRlIExQQyBmaWx0ZXIgc3RhdGUgKi8K
ICAgICAgICAgc2lsa19tZW1jcHkoIHNMUENfUTE0LCAmc0xQQ19RMTRbIHBzRGVjLT5zdWJmcl9s
ZW5ndGggXSwgTUFYX0xQQ19PUkRFUiAqIHNpemVvZiggb3B1c19pbnQzMiApICk7CiAgICAgICAg
IHBleGNfUTE0ICs9IHBzRGVjLT5zdWJmcl9sZW5ndGg7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2Rl
X2ZyYW1lLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZGVjb2RlX2ZyYW1lLmMKaW5kZXggYTYwNWQ5NWFjNmFiMTBhN2FjZWY3
YTVmYTU3ZTMzZTA0MGJiMGY4Ni4uZGZhNzNjNGEyOTY3MDYzNGFlYjcwMDYxMjUyYWRhNzEzNmVj
MmRjMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlY29kZV9mcmFtZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWNvZGVfZnJh
bWUuYwpAQCAtOTcsNiArOTcsNyBAQCBvcHVzX2ludCBzaWxrX2RlY29kZV9mcmFtZSgKICAgICAg
ICAgcHNEZWMtPmZpcnN0X2ZyYW1lX2FmdGVyX3Jlc2V0ID0gMDsKICAgICB9IGVsc2UgewogICAg
ICAgICAvKiBIYW5kbGUgcGFja2V0IGxvc3MgYnkgZXh0cmFwb2xhdGlvbiAqLworICAgICAgICBw
c0RlYy0+aW5kaWNlcy5zaWduYWxUeXBlID0gcHNEZWMtPnByZXZTaWduYWxUeXBlOwogICAgICAg
ICBzaWxrX1BMQyggcHNEZWMsIHBzRGVjQ3RybCwgcE91dCwgMSwgYXJjaCApOwogICAgIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2RlY29kZV9wYXJhbWV0ZXJzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX3BhcmFtZXRl
cnMuYwppbmRleCBlMzQ1YjFkY2VmYjk0NjA2Yjg5Y2E2YTFiYTA3MDAwYjRlZmI0NDJmLi5hNTZh
NDA5ODU4NzRmNTc5YjNkNDA5MjFmNTZkMGNlNDAxY2Q0ODFlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVj
b2RlX3BhcmFtZXRlcnMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX3BhcmFtZXRlcnMuYwpAQCAtNTIsNyAr
NTIsNyBAQCB2b2lkIHNpbGtfZGVjb2RlX3BhcmFtZXRlcnMoCiAgICAgc2lsa19OTFNGX2RlY29k
ZSggcE5MU0ZfUTE1LCBwc0RlYy0+aW5kaWNlcy5OTFNGSW5kaWNlcywgcHNEZWMtPnBzTkxTRl9D
QiApOwogCiAgICAgLyogQ29udmVydCBOTFNGIHBhcmFtZXRlcnMgdG8gQVIgcHJlZGljdGlvbiBm
aWx0ZXIgY29lZmZpY2llbnRzICovCi0gICAgc2lsa19OTFNGMkEoIHBzRGVjQ3RybC0+UHJlZENv
ZWZfUTEyWyAxIF0sIHBOTFNGX1ExNSwgcHNEZWMtPkxQQ19vcmRlciApOworICAgIHNpbGtfTkxT
RjJBKCBwc0RlY0N0cmwtPlByZWRDb2VmX1ExMlsgMSBdLCBwTkxTRl9RMTUsIHBzRGVjLT5MUENf
b3JkZXIsIHBzRGVjLT5hcmNoICk7CiAKICAgICAvKiBJZiBqdXN0IHJlc2V0LCBlLmcuLCBiZWNh
dXNlIGludGVybmFsIEZzIGNoYW5nZWQsIGRvIG5vdCBhbGxvdyBpbnRlcnBvbGF0aW9uICovCiAg
ICAgLyogaW1wcm92ZXMgdGhlIGNhc2Ugb2YgcGFja2V0IGxvc3MgaW4gdGhlIGZpcnN0IGZyYW1l
IGFmdGVyIGEgc3dpdGNoICAgICAgICAgICAqLwpAQCAtNjksNyArNjksNyBAQCB2b2lkIHNpbGtf
ZGVjb2RlX3BhcmFtZXRlcnMoCiAgICAgICAgIH0KIAogICAgICAgICAvKiBDb252ZXJ0IE5MU0Yg
cGFyYW1ldGVycyB0byBBUiBwcmVkaWN0aW9uIGZpbHRlciBjb2VmZmljaWVudHMgKi8KLSAgICAg
ICAgc2lsa19OTFNGMkEoIHBzRGVjQ3RybC0+UHJlZENvZWZfUTEyWyAwIF0sIHBOTFNGMF9RMTUs
IHBzRGVjLT5MUENfb3JkZXIgKTsKKyAgICAgICAgc2lsa19OTFNGMkEoIHBzRGVjQ3RybC0+UHJl
ZENvZWZfUTEyWyAwIF0sIHBOTFNGMF9RMTUsIHBzRGVjLT5MUENfb3JkZXIsIHBzRGVjLT5hcmNo
ICk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgLyogQ29weSBMUEMgY29lZmZpY2llbnRzIGZvciBm
aXJzdCBoYWxmIGZyb20gc2Vjb25kIGhhbGYgKi8KICAgICAgICAgc2lsa19tZW1jcHkoIHBzRGVj
Q3RybC0+UHJlZENvZWZfUTEyWyAwIF0sIHBzRGVjQ3RybC0+UHJlZENvZWZfUTEyWyAxIF0sIHBz
RGVjLT5MUENfb3JkZXIgKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2RlZmluZS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2RlZmluZS5oCmluZGV4IDE5YzliMDBlMjU5ZTc3MTZiY2IwMjM1NGUz
OTE0YjEzOTYwMmYzNTMuLjIyZmQ3MjBiOTc2YWYyMzNlYzJkYWZjODNkNmQ5NWJlMjc5M2VkNmIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9kZWZpbmUuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVmaW5lLmgKQEAgLTU2LDYgKzU2
LDEyIEBAIGV4dGVybiAiQyIKIC8qIERUWCBzZXR0aW5ncyAqLwogI2RlZmluZSBOQl9TUEVFQ0hf
RlJBTUVTX0JFRk9SRV9EVFggICAgICAgICAgICAgMTAgICAgICAvKiBlcSAyMDAgbXMgKi8KICNk
ZWZpbmUgTUFYX0NPTlNFQ1VUSVZFX0RUWCAgICAgICAgICAgICAgICAgICAgIDIwICAgICAgLyog
ZXEgNDAwIG1zICovCisjZGVmaW5lIERUWF9BQ1RJVklUWV9USFJFU0hPTEQgICAgICAgICAgICAg
ICAgICAwLjFmCisKKy8qIFZBRCBkZWNpc2lvbiAqLworI2RlZmluZSBWQURfTk9fREVDSVNJT04g
ICAgICAgICAgICAgICAgICAgICAgICAgLTEKKyNkZWZpbmUgVkFEX05PX0FDVElWSVRZICAgICAg
ICAgICAgICAgICAgICAgICAgIDAKKyNkZWZpbmUgVkFEX0FDVElWSVRZICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDEKIAogLyogTWF4aW11bSBzYW1wbGluZyBmcmVxdWVuY3kgKi8KICNkZWZp
bmUgTUFYX0ZTX0tIWiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE2CkBAIC0xNDcsNyAr
MTUzLDcgQEAgZXh0ZXJuICJDIgogI2RlZmluZSBVU0VfSEFSTV9TSEFQSU5HICAgICAgICAgICAg
ICAgICAgICAgICAgMQogCiAvKiBNYXggTFBDIG9yZGVyIG9mIG5vaXNlIHNoYXBpbmcgZmlsdGVy
cyAqLwotI2RlZmluZSBNQVhfU0hBUEVfTFBDX09SREVSICAgICAgICAgICAgICAgICAgICAgMTYK
KyNkZWZpbmUgTUFYX1NIQVBFX0xQQ19PUkRFUiAgICAgICAgICAgICAgICAgICAgIDI0CiAKICNk
ZWZpbmUgSEFSTV9TSEFQRV9GSVJfVEFQUyAgICAgICAgICAgICAgICAgICAgIDMKIApAQCAtMTU3
LDggKzE2Myw3IEBAIGV4dGVybiAiQyIKICNkZWZpbmUgTFRQX0JVRl9MRU5HVEggICAgICAgICAg
ICAgICAgICAgICAgICAgIDUxMgogI2RlZmluZSBMVFBfTUFTSyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKCBMVFBfQlVGX0xFTkdUSCAtIDEgKQogCi0jZGVmaW5lIERFQ0lTSU9OX0RF
TEFZICAgICAgICAgICAgICAgICAgICAgICAgICAzMgotI2RlZmluZSBERUNJU0lPTl9ERUxBWV9N
QVNLICAgICAgICAgICAgICAgICAgICAgKCBERUNJU0lPTl9ERUxBWSAtIDEgKQorI2RlZmluZSBE
RUNJU0lPTl9ERUxBWSAgICAgICAgICAgICAgICAgICAgICAgICAgNDAKIAogLyogTnVtYmVyIG9m
IHN1YmZyYW1lcyBmb3IgZXhjaXRhdGlvbiBlbnRyb3B5IGNvZGluZyAqLwogI2RlZmluZSBTSEVM
TF9DT0RFQ19GUkFNRV9MRU5HVEggICAgICAgICAgICAgICAgMTYKQEAgLTE3MywxMSArMTc4LDcg
QEAgZXh0ZXJuICJDIgogCiAjZGVmaW5lIE1BWF9NQVRSSVhfU0laRSAgICAgICAgICAgICAgICAg
ICAgICAgICBNQVhfTFBDX09SREVSIC8qIE1heCBvZiBMUEMgT3JkZXIgYW5kIExUUCBvcmRlciAq
LwogCi0jaWYoIE1BWF9MUENfT1JERVIgPiBERUNJU0lPTl9ERUxBWSApCiAjIGRlZmluZSBOU1Ff
TFBDX0JVRl9MRU5HVEggICAgICAgICAgICAgICAgICAgICBNQVhfTFBDX09SREVSCi0jZWxzZQot
IyBkZWZpbmUgTlNRX0xQQ19CVUZfTEVOR1RIICAgICAgICAgICAgICAgICAgICAgREVDSVNJT05f
REVMQVkKLSNlbmRpZgogCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogLyogVm9pY2Ug
YWN0aXZpdHkgZGV0ZWN0b3IgKi8KQEAgLTIwNSw3ICsyMDYsNiBAQCBleHRlcm4gIkMiCiAvKioq
KioqKioqKioqKioqKioqLwogI2RlZmluZSBOTFNGX1dfUSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgMgogI2RlZmluZSBOTFNGX1ZRX01BWF9WRUNUT1JTICAgICAgICAgICAgICAgICAg
ICAgMzIKLSNkZWZpbmUgTkxTRl9WUV9NQVhfU1VSVklWT1JTICAgICAgICAgICAgICAgICAgIDMy
CiAjZGVmaW5lIE5MU0ZfUVVBTlRfTUFYX0FNUExJVFVERSAgICAgICAgICAgICAgICA0CiAjZGVm
aW5lIE5MU0ZfUVVBTlRfTUFYX0FNUExJVFVERV9FWFQgICAgICAgICAgICAxMAogI2RlZmluZSBO
TFNGX1FVQU5UX0xFVkVMX0FESiAgICAgICAgICAgICAgICAgICAgMC4xCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZW5jX0FQSS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2VuY19BUEkuYwppbmRleCBmODA2MDI4NmRiYWZhOWExZmE3ODBm
NGViNzQ0NmFkZGRmMmVkMDhlLi4wYTYyYTNjMWQ3MmFmZDBhNjIxMjhlNDJkY2FhODAzYWQwZjQ0
MzE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvZW5jX0FQSS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9lbmNfQVBJLmMKQEAgLTE0
NCw3ICsxNDQsOCBAQCBvcHVzX2ludCBzaWxrX0VuY29kZSggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBlcnJvciBjbwogICAgIG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgICAgICAgblNhbXBsZXNJbiwgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBz
YW1wbGVzIGluIGlucHV0IHZlY3RvciAgICAgICAgICAgICAgICovCiAgICAgZWNfZW5jICAgICAg
ICAgICAgICAgICAgICAgICAgICAqcHNSYW5nZUVuYywgICAgICAgIC8qIEkvTyAgQ29tcHJlc3Nv
ciBkYXRhIHN0cnVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMy
ICAgICAgICAgICAgICAgICAgICAgICpuQnl0ZXNPdXQsICAgICAgICAgLyogSS9PICBOdW1iZXIg
b2YgYnl0ZXMgaW4gcGF5bG9hZCAoaW5wdXQ6IE1heCBieXRlcykgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgcHJlZmlsbEZsYWcgICAgICAgICAvKiBJICAgIEZsYWcg
dG8gaW5kaWNhdGUgcHJlZmlsbGluZyBidWZmZXJzIG5vIGNvZGluZyAgICovCisgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgICAgICBwcmVmaWxsRmxhZywgICAgICAgIC8qIEkgICAgRmxh
ZyB0byBpbmRpY2F0ZSBwcmVmaWxsaW5nIGJ1ZmZlcnMgbm8gY29kaW5nICAgKi8KKyAgICBvcHVz
X2ludCAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2aXR5ICAgICAgICAgICAgLyogSSAgICBE
ZWNpc2lvbiBvZiBPcHVzIHZvaWNlIGFjdGl2aXR5IGRldGVjdG9yICAgICAgICAqLwogKQogewog
ICAgIG9wdXNfaW50ICAgbiwgaSwgbkJpdHMsIGZsYWdzLCB0bXBfcGF5bG9hZFNpemVfbXMgPSAw
LCB0bXBfY29tcGxleGl0eSA9IDAsIHJldCA9IDA7CkBAIC0yMzMsMTEgKzIzNCwxMCBAQCBvcHVz
X2ludCBzaWxrX0VuY29kZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8g
ICAgUmV0dXJucyBlcnJvciBjbwogICAgICAgICB9CiAgICAgfQogCi0gICAgVGFyZ2V0UmF0ZV9i
cHMgPSBzaWxrX1JTSElGVDMyKCBlbmNDb250cm9sLT5iaXRSYXRlLCBlbmNDb250cm9sLT5uQ2hh
bm5lbHNJbnRlcm5hbCAtIDEgKTsKICAgICBmb3IoIG4gPSAwOyBuIDwgZW5jQ29udHJvbC0+bkNo
YW5uZWxzSW50ZXJuYWw7IG4rKyApIHsKICAgICAgICAgLyogRm9yY2UgdGhlIHNpZGUgY2hhbm5l
bCB0byB0aGUgc2FtZSByYXRlIGFzIHRoZSBtaWQgKi8KICAgICAgICAgb3B1c19pbnQgZm9yY2Vf
ZnNfa0h6ID0gKG49PTEpID8gcHNFbmMtPnN0YXRlX0Z4eFswXS5zQ21uLmZzX2tIeiA6IDA7Ci0g
ICAgICAgIGlmKCAoIHJldCA9IHNpbGtfY29udHJvbF9lbmNvZGVyKCAmcHNFbmMtPnN0YXRlX0Z4
eFsgbiBdLCBlbmNDb250cm9sLCBUYXJnZXRSYXRlX2JwcywgcHNFbmMtPmFsbG93QmFuZHdpZHRo
U3dpdGNoLCBuLCBmb3JjZV9mc19rSHogKSApICE9IDAgKSB7CisgICAgICAgIGlmKCAoIHJldCA9
IHNpbGtfY29udHJvbF9lbmNvZGVyKCAmcHNFbmMtPnN0YXRlX0Z4eFsgbiBdLCBlbmNDb250cm9s
LCBwc0VuYy0+YWxsb3dCYW5kd2lkdGhTd2l0Y2gsIG4sIGZvcmNlX2ZzX2tIeiApICkgIT0gMCAp
IHsKICAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCAwICk7CiAgICAgICAgICAgICBSRVNUT1JFX1NU
QUNLOwogICAgICAgICAgICAgcmV0dXJuIHJldDsKQEAgLTQxNiw3ICs0MTYsNiBAQCBvcHVzX2lu
dCBzaWxrX0VuY29kZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAg
UmV0dXJucyBlcnJvciBjbwogICAgICAgICAgICAgICAgICAgICAvKiBSZXNldCBzaWRlIGNoYW5u
ZWwgZW5jb2RlciBtZW1vcnkgZm9yIGZpcnN0IGZyYW1lIHdpdGggc2lkZSBjb2RpbmcgKi8KICAg
ICAgICAgICAgICAgICAgICAgaWYoIHBzRW5jLT5wcmV2X2RlY29kZV9vbmx5X21pZGRsZSA9PSAx
ICkgewogICAgICAgICAgICAgICAgICAgICAgICAgc2lsa19tZW1zZXQoICZwc0VuYy0+c3RhdGVf
Rnh4WyAxIF0uc1NoYXBlLCAgICAgICAgICAgICAgIDAsIHNpemVvZiggcHNFbmMtPnN0YXRlX0Z4
eFsgMSBdLnNTaGFwZSApICk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBzaWxrX21lbXNldCgg
JnBzRW5jLT5zdGF0ZV9GeHhbIDEgXS5zUHJlZmlsdCwgICAgICAgICAgICAgMCwgc2l6ZW9mKCBw
c0VuYy0+c3RhdGVfRnh4WyAxIF0uc1ByZWZpbHQgKSApOwogICAgICAgICAgICAgICAgICAgICAg
ICAgc2lsa19tZW1zZXQoICZwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5zTlNRLCAgICAgICAg
ICAgIDAsIHNpemVvZiggcHNFbmMtPnN0YXRlX0Z4eFsgMSBdLnNDbW4uc05TUSApICk7CiAgICAg
ICAgICAgICAgICAgICAgICAgICBzaWxrX21lbXNldCggcHNFbmMtPnN0YXRlX0Z4eFsgMSBdLnND
bW4ucHJldl9OTFNGcV9RMTUsICAgMCwgc2l6ZW9mKCBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Nt
bi5wcmV2X05MU0ZxX1ExNSApICk7CiAgICAgICAgICAgICAgICAgICAgICAgICBzaWxrX21lbXNl
dCggJnBzRW5jLT5zdGF0ZV9GeHhbIDEgXS5zQ21uLnNMUC5Jbl9MUF9TdGF0ZSwgMCwgc2l6ZW9m
KCBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5zTFAuSW5fTFBfU3RhdGUgKSApOwpAQCAtNDI3
LDcgKzQyNiw3IEBAIG9wdXNfaW50IHNpbGtfRW5jb2RlKCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zIGVycm9yIGNvCiAgICAgICAgICAgICAgICAgICAg
ICAgICBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5zTlNRLnByZXZfZ2Fpbl9RMTYgICAgICA9
IDY1NTM2OwogICAgICAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnN0YXRlX0Z4eFsgMSBdLnND
bW4uZmlyc3RfZnJhbWVfYWZ0ZXJfcmVzZXQgPSAxOwogICAgICAgICAgICAgICAgICAgICB9Ci0g
ICAgICAgICAgICAgICAgICAgIHNpbGtfZW5jb2RlX2RvX1ZBRF9GeHgoICZwc0VuYy0+c3RhdGVf
Rnh4WyAxIF0gKTsKKyAgICAgICAgICAgICAgICAgICAgc2lsa19lbmNvZGVfZG9fVkFEX0Z4eCgg
JnBzRW5jLT5zdGF0ZV9GeHhbIDEgXSwgYWN0aXZpdHkgKTsKICAgICAgICAgICAgICAgICB9IGVs
c2UgewogICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5WQURf
ZmxhZ3NbIHBzRW5jLT5zdGF0ZV9GeHhbIDAgXS5zQ21uLm5GcmFtZXNFbmNvZGVkIF0gPSAwOwog
ICAgICAgICAgICAgICAgIH0KQEAgLTQ0Miw3ICs0NDEsNyBAQCBvcHVzX2ludCBzaWxrX0VuY29k
ZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBlcnJv
ciBjbwogICAgICAgICAgICAgICAgIHNpbGtfbWVtY3B5KCBwc0VuYy0+c3RhdGVfRnh4WyAwIF0u
c0Ntbi5pbnB1dEJ1ZiwgcHNFbmMtPnNTdGVyZW8uc01pZCwgMiAqIHNpemVvZiggb3B1c19pbnQx
NiApICk7CiAgICAgICAgICAgICAgICAgc2lsa19tZW1jcHkoIHBzRW5jLT5zU3RlcmVvLnNNaWQs
ICZwc0VuYy0+c3RhdGVfRnh4WyAwIF0uc0Ntbi5pbnB1dEJ1ZlsgcHNFbmMtPnN0YXRlX0Z4eFsg
MCBdLnNDbW4uZnJhbWVfbGVuZ3RoIF0sIDIgKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOwogICAg
ICAgICAgICAgfQotICAgICAgICAgICAgc2lsa19lbmNvZGVfZG9fVkFEX0Z4eCggJnBzRW5jLT5z
dGF0ZV9GeHhbIDAgXSApOworICAgICAgICAgICAgc2lsa19lbmNvZGVfZG9fVkFEX0Z4eCggJnBz
RW5jLT5zdGF0ZV9GeHhbIDAgXSwgYWN0aXZpdHkgKTsKIAogICAgICAgICAgICAgLyogRW5jb2Rl
ICovCiAgICAgICAgICAgICBmb3IoIG4gPSAwOyBuIDwgZW5jQ29udHJvbC0+bkNoYW5uZWxzSW50
ZXJuYWw7IG4rKyApIHsKQEAgLTU1Nyw2ICs1NTYsMTAgQEAgb3B1c19pbnQgc2lsa19FbmNvZGUo
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJldHVybnMgZXJyb3Ig
Y28KICAgICAgICAgfQogICAgIH0KIAorICAgIGVuY0NvbnRyb2wtPnNpZ25hbFR5cGUgPSBwc0Vu
Yy0+c3RhdGVfRnh4WzBdLnNDbW4uaW5kaWNlcy5zaWduYWxUeXBlOworICAgIGVuY0NvbnRyb2wt
Pm9mZnNldCA9IHNpbGtfUXVhbnRpemF0aW9uX09mZnNldHNfUTEwCisgICAgICAgICAgICAgICAg
ICAgICAgICAgWyBwc0VuYy0+c3RhdGVfRnh4WzBdLnNDbW4uaW5kaWNlcy5zaWduYWxUeXBlID4+
IDEgXQorICAgICAgICAgICAgICAgICAgICAgICAgIFsgcHNFbmMtPnN0YXRlX0Z4eFswXS5zQ21u
LmluZGljZXMucXVhbnRPZmZzZXRUeXBlIF07CiAgICAgUkVTVE9SRV9TVEFDSzsKICAgICByZXR1
cm4gcmV0OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2FybS93YXJwZWRfYXV0b2NvcnJlbGF0
aW9uX0ZJWF9hcm0uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9hcm0vd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhf
YXJtLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMTk5MmU0MzI4ODUxOWY4YWRiNWZmNGQzYzM4MjQ4MDRjZGZhNDRj
NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9hcm0vd2FycGVkX2F1dG9jb3JyZWxhdGlv
bl9GSVhfYXJtLmgKQEAgLTAsMCArMSw2OCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitDb3B5cmlnaHQg
KGMpIDIwMTcgR29vZ2xlIEluYy4KK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0OgorLSBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodCBub3RpY2UsCit0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKy0gTmVpdGhl
ciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0
aGUKK25hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlCitwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0
IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KK3Blcm1pc3Npb24uCitUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIK
K0FORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUKK0lNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKK0xJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKK0NPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCitD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKiovCisKKyNpZm5kZWYgU0lMS19XQVJQRURfQVVUT0NPUlJFTEFU
SU9OX0ZJWF9BUk1fSAorIyBkZWZpbmUgU0lMS19XQVJQRURfQVVUT0NPUlJFTEFUSU9OX0ZJWF9B
Uk1fSAorCisjIGluY2x1ZGUgImNlbHQvYXJtL2FybWNwdS5oIgorCisjIGlmIGRlZmluZWQoRklY
RURfUE9JTlQpCisKKyMgIGlmIGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKQor
dm9pZCBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX25lb24oCisgICAgICAgICAgb3B1
c19pbnQzMiAgICAgICAgICAgICAgICAqY29yciwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogTyAgICBSZXN1bHQgW29yZGVyICsgMV0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgICpzY2FsZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBPICAgIFNjYWxpbmcgb2YgdGhlIGNvcnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICAgICAgKmlucHV0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
SW5wdXQgZGF0YSB0byBjb3JyZWxhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICB3YXJwaW5nX1ExNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBXYXJwaW5n
IGNvZWZmaWNpZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGxlbmd0
aCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1
dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgb3JkZXIgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29ycmVsYXRpb24gb3JkZXIgKGV2
ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CispOworCisjICBpZiAhZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgZGVmaW5lZChPUFVTX0FS
TV9QUkVTVU1FX05FT04pCisjICAgZGVmaW5lIE9WRVJSSURFX3NpbGtfd2FycGVkX2F1dG9jb3Jy
ZWxhdGlvbl9GSVggKDEpCisjICAgZGVmaW5lIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9G
SVgoY29yciwgc2NhbGUsIGlucHV0LCB3YXJwaW5nX1ExNiwgbGVuZ3RoLCBvcmRlciwgYXJjaCkg
XAorICAgICgodm9pZCkoYXJjaCksIFBSRVNVTUVfTkVPTihzaWxrX3dhcnBlZF9hdXRvY29ycmVs
YXRpb25fRklYKShjb3JyLCBzY2FsZSwgaW5wdXQsIHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVy
KSkKKyMgIGVuZGlmCisjICBlbmRpZgorCisjICBpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX3dh
cnBlZF9hdXRvY29ycmVsYXRpb25fRklYKQorLypJcyBydW4tdGltZSBDUFUgZGV0ZWN0aW9uIGVu
YWJsZWQgb24gdGhpcyBwbGF0Zm9ybT8qLworIyAgIGlmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0Qp
ICYmIChkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikgJiYgIWRlZmluZWQoT1BV
U19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpKQorZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxLX1dBUlBF
RF9BVVRPQ09SUkVMQVRJT05fRklYX0lNUExbT1BVU19BUkNITUFTSysxXSkob3B1c19pbnQzMios
IG9wdXNfaW50KiwgY29uc3Qgb3B1c19pbnQxNiosIGNvbnN0IG9wdXNfaW50LCBjb25zdCBvcHVz
X2ludCwgY29uc3Qgb3B1c19pbnQpOworIyAgICBkZWZpbmUgT1ZFUlJJREVfc2lsa193YXJwZWRf
YXV0b2NvcnJlbGF0aW9uX0ZJWCAoMSkKKyMgICAgZGVmaW5lIHNpbGtfd2FycGVkX2F1dG9jb3Jy
ZWxhdGlvbl9GSVgoY29yciwgc2NhbGUsIGlucHV0LCB3YXJwaW5nX1ExNiwgbGVuZ3RoLCBvcmRl
ciwgYXJjaCkgXAorICAgICgoKlNJTEtfV0FSUEVEX0FVVE9DT1JSRUxBVElPTl9GSVhfSU1QTFso
YXJjaCkmT1BVU19BUkNITUFTS10pKGNvcnIsIHNjYWxlLCBpbnB1dCwgd2FycGluZ19RMTYsIGxl
bmd0aCwgb3JkZXIpKQorIyAgIGVsaWYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5U
UikKKyMgICAgZGVmaW5lIE9WRVJSSURFX3NpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgg
KDEpCisjICAgIGRlZmluZSBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKGNvcnIsIHNj
YWxlLCBpbnB1dCwgd2FycGluZ19RMTYsIGxlbmd0aCwgb3JkZXIsIGFyY2gpIFwKKyAgICAoKHZv
aWQpKGFyY2gpLCBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX25lb24oY29yciwgc2Nh
bGUsIGlucHV0LCB3YXJwaW5nX1ExNiwgbGVuZ3RoLCBvcmRlcikpCisjICAgZW5kaWYKKyMgIGVu
ZGlmCisKKyMgZW5kaWYgLyogZW5kIEZJWEVEX1BPSU5UICovCisKKyNlbmRpZiAvKiBlbmQgU0lM
S19XQVJQRURfQVVUT0NPUlJFTEFUSU9OX0ZJWF9BUk1fSCAqLwpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zp
eGVkL2FybS93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9uZW9uX2ludHIuYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhl
ZC9hcm0vd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfbmVvbl9pbnRyLmMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MDBhNzBjYjUxZmZiZjM5YzM3ZWEwNDFiYTY2ZWQwNjRmMGQzMDg0ZgotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9maXhlZC9hcm0vd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfbmVvbl9pbnRyLmMK
QEAgLTAsMCArMSwyNjAgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorQ29weXJpZ2h0IChjKSAyMDE3IEdv
b2dsZSBJbmMuLCBKZWFuLU1hcmMgVmFsaW4KK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0
OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodCBub3RpY2UsCit0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKy0g
TmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3Qs
IG5vciB0aGUKK25hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlCitwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KK3Blcm1pc3Npb24uCitUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJB
UyBJUyIKK0FORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKK0lNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMg
QkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCitDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpZmRlZiBIQVZFX0NPTkZJR19ICisjaW5j
bHVkZSAiY29uZmlnLmgiCisjZW5kaWYKKworI2luY2x1ZGUgPGFybV9uZW9uLmg+CisjaWZkZWYg
T1BVU19DSEVDS19BU00KKyMgaW5jbHVkZSA8c3RyaW5nLmg+CisjZW5kaWYKKyNpbmNsdWRlICJz
dGFja19hbGxvYy5oIgorI2luY2x1ZGUgIm1haW5fRklYLmgiCisKK3N0YXRpYyBPUFVTX0lOTElO
RSB2b2lkIGNhbGNfY29yciggY29uc3Qgb3B1c19pbnQzMiAqY29uc3QgaW5wdXRfUVMsIG9wdXNf
aW50NjQgKmNvbnN0IGNvcnJfUUMsIGNvbnN0IG9wdXNfaW50IG9mZnNldCwgY29uc3QgaW50MzJ4
NF90IHN0YXRlX1FTX3MzMng0ICkKK3sKKyAgICBpbnQ2NHgyX3QgY29ycl9RQ19zNjR4MlsgMiBd
LCB0X3M2NHgyWyAyIF07CisgICAgY29uc3QgaW50MzJ4NF90IGlucHV0X1FTX3MzMng0ID0gdmxk
MXFfczMyKCBpbnB1dF9RUyArIG9mZnNldCApOworICAgIGNvcnJfUUNfczY0eDJbIDAgXSA9IHZs
ZDFxX3M2NCggY29ycl9RQyArIG9mZnNldCArIDAgKTsKKyAgICBjb3JyX1FDX3M2NHgyWyAxIF0g
PSB2bGQxcV9zNjQoIGNvcnJfUUMgKyBvZmZzZXQgKyAyICk7CisgICAgdF9zNjR4MlsgMCBdID0g
dm11bGxfczMyKCB2Z2V0X2xvd19zMzIoIHN0YXRlX1FTX3MzMng0ICksIHZnZXRfbG93X3MzMigg
aW5wdXRfUVNfczMyeDQgKSApOworICAgIHRfczY0eDJbIDEgXSA9IHZtdWxsX3MzMiggdmdldF9o
aWdoX3MzMiggc3RhdGVfUVNfczMyeDQgKSwgdmdldF9oaWdoX3MzMiggaW5wdXRfUVNfczMyeDQg
KSApOworICAgIGNvcnJfUUNfczY0eDJbIDAgXSA9IHZzcmFxX25fczY0KCBjb3JyX1FDX3M2NHgy
WyAwIF0sIHRfczY0eDJbIDAgXSwgMiAqIFFTIC0gUUMgKTsKKyAgICBjb3JyX1FDX3M2NHgyWyAx
IF0gPSB2c3JhcV9uX3M2NCggY29ycl9RQ19zNjR4MlsgMSBdLCB0X3M2NHgyWyAxIF0sIDIgKiBR
UyAtIFFDICk7CisgICAgdnN0MXFfczY0KCBjb3JyX1FDICsgb2Zmc2V0ICsgMCwgY29ycl9RQ19z
NjR4MlsgMCBdICk7CisgICAgdnN0MXFfczY0KCBjb3JyX1FDICsgb2Zmc2V0ICsgMiwgY29ycl9R
Q19zNjR4MlsgMSBdICk7Cit9CisKK3N0YXRpYyBPUFVTX0lOTElORSBpbnQzMng0X3QgY2FsY19z
dGF0ZSggY29uc3QgaW50MzJ4NF90IHN0YXRlX1FTMF9zMzJ4NCwgY29uc3QgaW50MzJ4NF90IHN0
YXRlX1FTMF8xX3MzMng0LCBjb25zdCBpbnQzMng0X3Qgc3RhdGVfUVMxXzFfczMyeDQsIGNvbnN0
IGludDMyeDRfdCB3YXJwaW5nX1ExNl9zMzJ4NCApCit7CisgICAgaW50MzJ4NF90IHRfczMyeDQg
PSB2c3VicV9zMzIoIHN0YXRlX1FTMF9zMzJ4NCwgc3RhdGVfUVMwXzFfczMyeDQgKTsKKyAgICB0
X3MzMng0ID0gdnFkbXVsaHFfczMyKCB0X3MzMng0LCB3YXJwaW5nX1ExNl9zMzJ4NCApOworICAg
IHJldHVybiB2YWRkcV9zMzIoIHN0YXRlX1FTMV8xX3MzMng0LCB0X3MzMng0ICk7Cit9CisKK3Zv
aWQgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9uZW9uKAorICAgICAgICAgIG9wdXNf
aW50MzIgICAgICAgICAgICAgICAgKmNvcnIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIE8gICAgUmVzdWx0IFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgICAgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICAqc2NhbGUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
TyAgICBTY2FsaW5nIG9mIHRoZSBjb3JyZWxhdGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAg
ICAgICAgICppbnB1dCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElu
cHV0IGRhdGEgdG8gY29ycmVsYXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
d2FycGluZ19RMTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgV2FycGluZyBj
b2VmZmljaWVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBsZW5ndGgs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGggb2YgaW5wdXQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG9yZGVyICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvcnJlbGF0aW9uIG9yZGVyIChldmVu
KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwor
KQoreworICAgIGlmKCAoIE1BWF9TSEFQRV9MUENfT1JERVIgPiAyNCApIHx8ICggb3JkZXIgPCA2
ICkgKSB7CisgICAgICAgIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYyggY29yciwg
c2NhbGUsIGlucHV0LCB3YXJwaW5nX1ExNiwgbGVuZ3RoLCBvcmRlciApOworICAgIH0gZWxzZSB7
CisgICAgICAgIG9wdXNfaW50ICAgICAgIG4sIGksIGxzaDsKKyAgICAgICAgb3B1c19pbnQ2NCAg
ICAgY29ycl9RQ1sgTUFYX1NIQVBFX0xQQ19PUkRFUiArIDEgXSA9IHsgMCB9OyAvKiBJbiByZXZl
cnNlIG9yZGVyICovCisgICAgICAgIG9wdXNfaW50NjQgICAgIGNvcnJfUUNfb3JkZXJUOworICAg
ICAgICBpbnQ2NHgyX3QgICAgICBsc2hfczY0eDI7CisgICAgICAgIGNvbnN0IG9wdXNfaW50IG9y
ZGVyVCA9ICggb3JkZXIgKyAzICkgJiB+MzsKKyAgICAgICAgb3B1c19pbnQ2NCAgICAgKmNvcnJf
UUNUOworICAgICAgICBvcHVzX2ludDMyICAgICAqaW5wdXRfUVM7CisgICAgICAgIFZBUkRFQ0wo
IG9wdXNfaW50MzIsIGlucHV0X1FTVCApOworICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBz
dGF0ZSApOworICAgICAgICBTQVZFX1NUQUNLOworCisgICAgICAgIC8qIE9yZGVyIG11c3QgYmUg
ZXZlbiAqLworICAgICAgICBzaWxrX2Fzc2VydCggKCBvcmRlciAmIDEgKSA9PSAwICk7CisgICAg
ICAgIHNpbGtfYXNzZXJ0KCAyICogUVMgLSBRQyA+PSAwICk7CisKKyAgICAgICAgQUxMT0MoIGlu
cHV0X1FTVCwgbGVuZ3RoICsgMiAqIE1BWF9TSEFQRV9MUENfT1JERVIsIG9wdXNfaW50MzIgKTsK
KworICAgICAgICBpbnB1dF9RUyA9IGlucHV0X1FTVDsKKyAgICAgICAgLyogaW5wdXRfUVMgaGFz
IHplcm8gcGFkZGluZ3MgaW4gdGhlIGJlZ2lubmluZyBhbmQgZW5kLiAqLworICAgICAgICB2c3Qx
cV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlucHV0X1FTICs9
IDQ7CisgICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMyKCAwICkgKTsKKyAg
ICAgICAgaW5wdXRfUVMgKz0gNDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUywgdmR1cHFf
bl9zMzIoIDAgKSApOworICAgICAgICBpbnB1dF9RUyArPSA0OworICAgICAgICB2c3QxcV9zMzIo
IGlucHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlucHV0X1FTICs9IDQ7Cisg
ICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMyKCAwICkgKTsKKyAgICAgICAg
aW5wdXRfUVMgKz0gNDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUywgdmR1cHFfbl9zMzIo
IDAgKSApOworICAgICAgICBpbnB1dF9RUyArPSA0OworCisgICAgICAgIC8qIExvb3Agb3ZlciBz
YW1wbGVzICovCisgICAgICAgIGZvciggbiA9IDA7IG4gPCBsZW5ndGggLSA3OyBuICs9IDgsIGlu
cHV0X1FTICs9IDggKSB7CisgICAgICAgICAgICBjb25zdCBpbnQxNng4X3QgdDBfczE2eDQgPSB2
bGQxcV9zMTYoIGlucHV0ICsgbiApOworICAgICAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUyAr
IDAsIHZzaGxsX25fczE2KCB2Z2V0X2xvd19zMTYoIHQwX3MxNng0ICksIFFTICkgKTsKKyAgICAg
ICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMgKyA0LCB2c2hsbF9uX3MxNiggdmdldF9oaWdoX3Mx
NiggdDBfczE2eDQgKSwgUVMgKSApOworICAgICAgICB9CisgICAgICAgIGZvciggOyBuIDwgbGVu
Z3RoOyBuKyssIGlucHV0X1FTKysgKSB7CisgICAgICAgICAgICBpbnB1dF9RU1sgMCBdID0gc2ls
a19MU0hJRlQzMiggKG9wdXNfaW50MzIpaW5wdXRbIG4gXSwgUVMgKTsKKyAgICAgICAgfQorICAg
ICAgICB2c3QxcV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlu
cHV0X1FTICs9IDQ7CisgICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMyKCAw
ICkgKTsKKyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9R
UywgdmR1cHFfbl9zMzIoIDAgKSApOworICAgICAgICBpbnB1dF9RUyArPSA0OworICAgICAgICB2
c3QxcV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlucHV0X1FT
ICs9IDQ7CisgICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMyKCAwICkgKTsK
KyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUywgdmR1
cHFfbl9zMzIoIDAgKSApOworICAgICAgICBpbnB1dF9RUyA9IGlucHV0X1FTVCArIE1BWF9TSEFQ
RV9MUENfT1JERVIgLSBvcmRlclQ7CisKKyAgICAgICAgLyogVGhlIGZvbGxvd2luZyBsb29wIHJ1
bnMgKCBsZW5ndGggKyBvcmRlciApIHRpbWVzLCB3aXRoICggb3JkZXIgKSBleHRyYSBlcGlsb2d1
ZXMuICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgLyogVGhlIHplcm8gcGFkZGluZ3MgaW4g
aW5wdXRfUVMgZ3VhcmFudGVlIGNvcnJfUUMncyBjb3JyZWN0bmVzcyBldmVuIHdpdGggdGhlIGV4
dHJhIGVwaWxvZ3Vlcy4gICAgICAgKi8KKyAgICAgICAgLyogVGhlIHZhbHVlcyBvZiBzdGF0ZV9R
UyB3aWxsIGJlIHBvbGx1dGVkIGJ5IHRoZSBleHRyYSBlcGlsb2d1ZXMsIGhvd2V2ZXIgdGhleSBh
cmUgdGVtcG9yYXJ5IHZhbHVlcy4gKi8KKworICAgICAgICAvKiBLZWVwIHRoZSBDIGNvZGUgaGVy
ZSB0byBoZWxwIHVuZGVyc3RhbmQgdGhlIGludHJpbnNpY3Mgb3B0aW1pemF0aW9uLiAqLworICAg
ICAgICAvKgorICAgICAgICB7CisgICAgICAgICAgICBvcHVzX2ludDMyIHN0YXRlX1FTWyAyIF1b
IE1BWF9TSEFQRV9MUENfT1JERVIgKyAxIF0gPSB7IDAgfTsKKyAgICAgICAgICAgIG9wdXNfaW50
MzIgKnN0YXRlX1FTVFsgMyBdOworICAgICAgICAgICAgc3RhdGVfUVNUWyAwIF0gPSBzdGF0ZV9R
U1sgMCBdOworICAgICAgICAgICAgc3RhdGVfUVNUWyAxIF0gPSBzdGF0ZV9RU1sgMSBdOworICAg
ICAgICAgICAgZm9yKCBuID0gMDsgbiA8IGxlbmd0aCArIG9yZGVyOyBuKyssIGlucHV0X1FTKysg
KSB7CisgICAgICAgICAgICAgICAgc3RhdGVfUVNUWyAwIF1bIG9yZGVyVCBdID0gaW5wdXRfUVNb
IG9yZGVyVCBdOworICAgICAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBvcmRlclQ7IGkrKyAp
IHsKKyAgICAgICAgICAgICAgICAgICAgY29ycl9RQ1sgaSBdICs9IHNpbGtfUlNISUZUNjQoIHNp
bGtfU01VTEwoIHN0YXRlX1FTVFsgMCBdWyBpIF0sIGlucHV0X1FTWyBpIF0gKSwgMiAqIFFTIC0g
UUMgKTsKKyAgICAgICAgICAgICAgICAgICAgc3RhdGVfUVNUWyAxIF1bIGkgXSA9IHNpbGtfU01M
QVdCKCBzdGF0ZV9RU1RbIDEgXVsgaSArIDEgXSwgc3RhdGVfUVNUWyAwIF1bIGkgXSAtIHN0YXRl
X1FTVFsgMCBdWyBpICsgMSBdLCB3YXJwaW5nX1ExNiApOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICBzdGF0ZV9RU1RbIDIgXSA9IHN0YXRlX1FTVFsgMCBdOworICAgICAgICAg
ICAgICAgIHN0YXRlX1FTVFsgMCBdID0gc3RhdGVfUVNUWyAxIF07CisgICAgICAgICAgICAgICAg
c3RhdGVfUVNUWyAxIF0gPSBzdGF0ZV9RU1RbIDIgXTsKKyAgICAgICAgICAgIH0KKyAgICAgICAg
fQorICAgICAgICAqLworCisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnN0IGludDMyeDRfdCB3
YXJwaW5nX1ExNl9zMzJ4NCA9IHZkdXBxX25fczMyKCB3YXJwaW5nX1ExNiA8PCAxNSApOworICAg
ICAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAqaW4gPSBpbnB1dF9RUyArIG9yZGVyVDsKKyAgICAg
ICAgICAgIG9wdXNfaW50IG8gPSBvcmRlclQ7CisgICAgICAgICAgICBpbnQzMng0X3Qgc3RhdGVf
UVNfczMyeDRbIDMgXVsgMiBdOworCisgICAgICAgICAgICBBTExPQyggc3RhdGUsIGxlbmd0aCAr
IG9yZGVyVCwgb3B1c19pbnQzMiApOworICAgICAgICAgICAgc3RhdGVfUVNfczMyeDRbIDIgXVsg
MSBdID0gdmR1cHFfbl9zMzIoIDAgKTsKKworICAgICAgICAgICAgLyogQ2FsY3VsYXRlIDggdGFw
cyBvZiBhbGwgaW5wdXRzIGluIGVhY2ggbG9vcC4gKi8KKyAgICAgICAgICAgIGRvIHsKKyAgICAg
ICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0gPSBzdGF0ZV9RU19zMzJ4NFsgMCBd
WyAxIF0gPQorICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAxIF1bIDAgXSA9IHN0YXRl
X1FTX3MzMng0WyAxIF1bIDEgXSA9IHZkdXBxX25fczMyKCAwICk7CisgICAgICAgICAgICAgICAg
biA9IDA7CisgICAgICAgICAgICAgICAgZG8geworICAgICAgICAgICAgICAgICAgICBjYWxjX2Nv
cnIoIGlucHV0X1FTICsgbiwgY29ycl9RQywgbyAtIDgsIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAg
XSApOworICAgICAgICAgICAgICAgICAgICBjYWxjX2NvcnIoIGlucHV0X1FTICsgbiwgY29ycl9R
QywgbyAtIDQsIHN0YXRlX1FTX3MzMng0WyAwIF1bIDEgXSApOworICAgICAgICAgICAgICAgICAg
ICBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAxIF0gPSB2bGQxcV9zMzIoIGluICsgbiApOworICAgICAg
ICAgICAgICAgICAgICB2c3QxcV9sYW5lX3MzMiggc3RhdGUgKyBuLCBzdGF0ZV9RU19zMzJ4NFsg
MCBdWyAwIF0sIDAgKTsKKyAgICAgICAgICAgICAgICAgICAgc3RhdGVfUVNfczMyeDRbIDIgXVsg
MCBdID0gdmV4dHFfczMyKCBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0sIHN0YXRlX1FTX3MzMng0
WyAwIF1bIDEgXSwgMSApOworICAgICAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMiBd
WyAxIF0gPSB2ZXh0cV9zMzIoIHN0YXRlX1FTX3MzMng0WyAwIF1bIDEgXSwgc3RhdGVfUVNfczMy
eDRbIDIgXVsgMSBdLCAxICk7CisgICAgICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAw
IF1bIDAgXSA9IGNhbGNfc3RhdGUoIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSwgc3RhdGVfUVNf
czMyeDRbIDIgXVsgMCBdLCBzdGF0ZV9RU19zMzJ4NFsgMSBdWyAwIF0sIHdhcnBpbmdfUTE2X3Mz
Mng0ICk7CisgICAgICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAwIF1bIDEgXSA9IGNh
bGNfc3RhdGUoIHN0YXRlX1FTX3MzMng0WyAwIF1bIDEgXSwgc3RhdGVfUVNfczMyeDRbIDIgXVsg
MSBdLCBzdGF0ZV9RU19zMzJ4NFsgMSBdWyAxIF0sIHdhcnBpbmdfUTE2X3MzMng0ICk7CisgICAg
ICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAxIF1bIDAgXSA9IHN0YXRlX1FTX3MzMng0
WyAyIF1bIDAgXTsKKyAgICAgICAgICAgICAgICAgICAgc3RhdGVfUVNfczMyeDRbIDEgXVsgMSBd
ID0gc3RhdGVfUVNfczMyeDRbIDIgXVsgMSBdOworICAgICAgICAgICAgICAgIH0gd2hpbGUoICsr
biA8ICggbGVuZ3RoICsgb3JkZXIgKSApOworICAgICAgICAgICAgICAgIGluID0gc3RhdGU7Cisg
ICAgICAgICAgICAgICAgbyAtPSA4OworICAgICAgICAgICAgfSB3aGlsZSggbyA+IDQgKTsKKwor
ICAgICAgICAgICAgaWYoIG8gKSB7CisgICAgICAgICAgICAgICAgLyogQ2FsY3VsYXRlIHRoZSBs
YXN0IDQgdGFwcyBvZiBhbGwgaW5wdXRzLiAqLworICAgICAgICAgICAgICAgIG9wdXNfaW50MzIg
KnN0YXRlVCA9IHN0YXRlOworICAgICAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBvID09IDQgKTsK
KyAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0gPSBzdGF0ZV9RU19zMzJ4
NFsgMSBdWyAwIF0gPSB2ZHVwcV9uX3MzMiggMCApOworICAgICAgICAgICAgICAgIG4gPSBsZW5n
dGggKyBvcmRlcjsKKyAgICAgICAgICAgICAgICBkbyB7CisgICAgICAgICAgICAgICAgICAgIGNh
bGNfY29yciggaW5wdXRfUVMsIGNvcnJfUUMsIDAsIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSAp
OworICAgICAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAwIF0gPSB2bGQxcV9z
MzIoIHN0YXRlVCApOworICAgICAgICAgICAgICAgICAgICB2c3QxcV9sYW5lX3MzMiggc3RhdGVU
LCBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0sIDAgKTsKKyAgICAgICAgICAgICAgICAgICAgc3Rh
dGVfUVNfczMyeDRbIDIgXVsgMCBdID0gdmV4dHFfczMyKCBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAw
IF0sIHN0YXRlX1FTX3MzMng0WyAyIF1bIDAgXSwgMSApOworICAgICAgICAgICAgICAgICAgICBz
dGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0gPSBjYWxjX3N0YXRlKCBzdGF0ZV9RU19zMzJ4NFsgMCBd
WyAwIF0sIHN0YXRlX1FTX3MzMng0WyAyIF1bIDAgXSwgc3RhdGVfUVNfczMyeDRbIDEgXVsgMCBd
LCB3YXJwaW5nX1ExNl9zMzJ4NCApOworICAgICAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4
NFsgMSBdWyAwIF0gPSBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAwIF07CisgICAgICAgICAgICAgICAg
ICAgIGlucHV0X1FTKys7CisgICAgICAgICAgICAgICAgICAgIHN0YXRlVCsrOworICAgICAgICAg
ICAgICAgIH0gd2hpbGUoIC0tbiApOworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAg
ICAgeworICAgICAgICAgICAgY29uc3Qgb3B1c19pbnQxNiAqaW5wdXRUID0gaW5wdXQ7CisgICAg
ICAgICAgICBpbnQzMng0X3QgdF9zMzJ4NDsKKyAgICAgICAgICAgIGludDY0eDFfdCB0X3M2NHgx
OworICAgICAgICAgICAgaW50NjR4Ml90IHRfczY0eDIgPSB2ZHVwcV9uX3M2NCggMCApOworICAg
ICAgICAgICAgZm9yKCBuID0gMDsgbiA8PSBsZW5ndGggLSA4OyBuICs9IDggKSB7CisgICAgICAg
ICAgICAgICAgaW50MTZ4OF90IGlucHV0X3MxNng4ID0gdmxkMXFfczE2KCBpbnB1dFQgKTsKKyAg
ICAgICAgICAgICAgICB0X3MzMng0ID0gdm11bGxfczE2KCB2Z2V0X2xvd19zMTYoIGlucHV0X3Mx
Nng4ICksIHZnZXRfbG93X3MxNiggaW5wdXRfczE2eDggKSApOworICAgICAgICAgICAgICAgIHRf
czMyeDQgPSB2bWxhbF9zMTYoIHRfczMyeDQsIHZnZXRfaGlnaF9zMTYoIGlucHV0X3MxNng4ICks
IHZnZXRfaGlnaF9zMTYoIGlucHV0X3MxNng4ICkgKTsKKyAgICAgICAgICAgICAgICB0X3M2NHgy
ID0gdmFkZHdfczMyKCB0X3M2NHgyLCB2Z2V0X2xvd19zMzIoIHRfczMyeDQgKSApOworICAgICAg
ICAgICAgICAgIHRfczY0eDIgPSB2YWRkd19zMzIoIHRfczY0eDIsIHZnZXRfaGlnaF9zMzIoIHRf
czMyeDQgKSApOworICAgICAgICAgICAgICAgIGlucHV0VCArPSA4OworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgdF9zNjR4MSA9IHZhZGRfczY0KCB2Z2V0X2xvd19zNjQoIHRfczY0eDIgKSwg
dmdldF9oaWdoX3M2NCggdF9zNjR4MiApICk7CisgICAgICAgICAgICBjb3JyX1FDX29yZGVyVCA9
IHZnZXRfbGFuZV9zNjQoIHRfczY0eDEsIDAgKTsKKyAgICAgICAgICAgIGZvciggOyBuIDwgbGVu
Z3RoOyBuKysgKSB7CisgICAgICAgICAgICAgICAgY29ycl9RQ19vcmRlclQgKz0gc2lsa19TTVVM
TCggaW5wdXRbIG4gXSwgaW5wdXRbIG4gXSApOworICAgICAgICAgICAgfQorICAgICAgICAgICAg
Y29ycl9RQ19vcmRlclQgPSBzaWxrX0xTSElGVDY0KCBjb3JyX1FDX29yZGVyVCwgUUMgKTsKKyAg
ICAgICAgICAgIGNvcnJfUUNbIG9yZGVyVCBdID0gY29ycl9RQ19vcmRlclQ7CisgICAgICAgIH0K
KworICAgICAgICBjb3JyX1FDVCA9IGNvcnJfUUMgKyBvcmRlclQgLSBvcmRlcjsKKyAgICAgICAg
bHNoID0gc2lsa19DTFo2NCggY29ycl9RQ19vcmRlclQgKSAtIDM1OworICAgICAgICBsc2ggPSBz
aWxrX0xJTUlUKCBsc2gsIC0xMiAtIFFDLCAzMCAtIFFDICk7CisgICAgICAgICpzY2FsZSA9IC0o
IFFDICsgbHNoICk7CisgICAgICAgIHNpbGtfYXNzZXJ0KCAqc2NhbGUgPj0gLTMwICYmICpzY2Fs
ZSA8PSAxMiApOworICAgICAgICBsc2hfczY0eDIgPSB2ZHVwcV9uX3M2NCggbHNoICk7CisgICAg
ICAgIGZvciggaSA9IDA7IGkgPD0gb3JkZXIgLSAzOyBpICs9IDQgKSB7CisgICAgICAgICAgICBp
bnQzMng0X3QgY29ycl9zMzJ4NDsKKyAgICAgICAgICAgIGludDY0eDJfdCBjb3JyX1FDMF9zNjR4
MiwgY29ycl9RQzFfczY0eDI7CisgICAgICAgICAgICBjb3JyX1FDMF9zNjR4MiA9IHZsZDFxX3M2
NCggY29ycl9RQ1QgKyBpICk7CisgICAgICAgICAgICBjb3JyX1FDMV9zNjR4MiA9IHZsZDFxX3M2
NCggY29ycl9RQ1QgKyBpICsgMiApOworICAgICAgICAgICAgY29ycl9RQzBfczY0eDIgPSB2c2hs
cV9zNjQoIGNvcnJfUUMwX3M2NHgyLCBsc2hfczY0eDIgKTsKKyAgICAgICAgICAgIGNvcnJfUUMx
X3M2NHgyID0gdnNobHFfczY0KCBjb3JyX1FDMV9zNjR4MiwgbHNoX3M2NHgyICk7CisgICAgICAg
ICAgICBjb3JyX3MzMng0ICAgICA9IHZjb21iaW5lX3MzMiggdm1vdm5fczY0KCBjb3JyX1FDMV9z
NjR4MiApLCB2bW92bl9zNjQoIGNvcnJfUUMwX3M2NHgyICkgKTsKKyAgICAgICAgICAgIGNvcnJf
czMyeDQgICAgID0gdnJldjY0cV9zMzIoIGNvcnJfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFx
X3MzMiggY29yciArIG9yZGVyIC0gaSAtIDMsIGNvcnJfczMyeDQgKTsKKyAgICAgICAgfQorICAg
ICAgICBpZiggbHNoID49IDAgKSB7CisgICAgICAgICAgICBmb3IoIDsgaSA8IG9yZGVyICsgMTsg
aSsrICkgeworICAgICAgICAgICAgICAgIGNvcnJbIG9yZGVyIC0gaSBdID0gKG9wdXNfaW50MzIp
c2lsa19DSEVDS19GSVQzMiggc2lsa19MU0hJRlQ2NCggY29ycl9RQ1RbIGkgXSwgbHNoICkgKTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGZvciggOyBpIDwg
b3JkZXIgKyAxOyBpKysgKSB7CisgICAgICAgICAgICAgICAgY29yclsgb3JkZXIgLSBpIF0gPSAo
b3B1c19pbnQzMilzaWxrX0NIRUNLX0ZJVDMyKCBzaWxrX1JTSElGVDY0KCBjb3JyX1FDVFsgaSBd
LCAtbHNoICkgKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBzaWxrX2Fzc2Vy
dCggY29ycl9RQ1RbIG9yZGVyIF0gPj0gMCApOyAvKiBJZiBicmVha2luZywgZGVjcmVhc2UgUUMq
LworICAgICAgICBSRVNUT1JFX1NUQUNLOworICAgIH0KKworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNN
CisgICAgeworICAgICAgICBvcHVzX2ludDMyIGNvcnJfY1sgTUFYX1NIQVBFX0xQQ19PUkRFUiAr
IDEgXTsKKyAgICAgICAgb3B1c19pbnQgICBzY2FsZV9jOworICAgICAgICBzaWxrX3dhcnBlZF9h
dXRvY29ycmVsYXRpb25fRklYX2MoIGNvcnJfYywgJnNjYWxlX2MsIGlucHV0LCB3YXJwaW5nX1Ex
NiwgbGVuZ3RoLCBvcmRlciApOworICAgICAgICBzaWxrX2Fzc2VydCggIW1lbWNtcCggY29ycl9j
LCBjb3JyLCBzaXplb2YoIGNvcnJfY1sgMCBdICkgKiAoIG9yZGVyICsgMSApICkgKTsKKyAgICAg
ICAgc2lsa19hc3NlcnQoIHNjYWxlX2MgPT0gKnNjYWxlICk7CisgICAgfQorI2VuZGlmCit9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZml4ZWQvYnVyZ19tb2RpZmllZF9GSVguYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9idXJn
X21vZGlmaWVkX0ZJWC5jCmluZGV4IDE3ZDBlMDk5M2NmNWJhMTg4ZGIxODI5YzEyZGVkNzRjYmUw
NzE5MTUuLjgwZWRiZGZhOGE2NTE0MDg0OGMyZTg5MDMxOTBiY2Q4NWE1ZjkwYjcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9maXhlZC9idXJnX21vZGlmaWVkX0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9idXJnX21v
ZGlmaWVkX0ZJWC5jCkBAIC0zNyw3ICszNyw3IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgogI2RlZmluZSBNQVhfRlJBTUVfU0laRSAgICAgICAgICAgICAgMzg0ICAgICAgICAgICAgIC8q
IHN1YmZyX2xlbmd0aCAqIG5iX3N1YmZyID0gKCAwLjAwNSAqIDE2MDAwICsgMTYgKSAqIDQgPSAz
ODQgKi8KIAogI2RlZmluZSBRQSAgICAgICAgICAgICAgICAgICAgICAgICAgMjUKLSNkZWZpbmUg
Tl9CSVRTX0hFQURfUk9PTSAgICAgICAgICAgIDIKKyNkZWZpbmUgTl9CSVRTX0hFQURfUk9PTSAg
ICAgICAgICAgIDMKICNkZWZpbmUgTUlOX1JTSElGVFMgICAgICAgICAgICAgICAgIC0xNgogI2Rl
ZmluZSBNQVhfUlNISUZUUyAgICAgICAgICAgICAgICAgKDMyIC0gUUEpCiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9maXhlZC9jb3JyTWF0cml4X0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2NvcnJNYXRyaXhfRklYLmMK
aW5kZXggYzFkNDM3Yzc4NTllM2EyMmMzYWUwZmJlMGQ2Mzc2YjcwODEyYTQzNy4uMWI0YTI5YzIz
MmJmZWVhZjhiNmI3YjUzMjU3N2UyMzRjOTgyZjQyZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2Nv
cnJNYXRyaXhfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2NvcnJNYXRyaXhfRklYLmMKQEAgLTU4LDcg
KzU4LDcgQEAgdm9pZCBzaWxrX2NvcnJWZWN0b3JfRklYKAogICAgICAgICBmb3IoIGxhZyA9IDA7
IGxhZyA8IG9yZGVyOyBsYWcrKyApIHsKICAgICAgICAgICAgIGlubmVyX3Byb2QgPSAwOwogICAg
ICAgICAgICAgZm9yKCBpID0gMDsgaSA8IEw7IGkrKyApIHsKLSAgICAgICAgICAgICAgICBpbm5l
cl9wcm9kICs9IHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyBpIF0sIHB0cjJbaV0g
KSwgcnNoaWZ0cyApOworICAgICAgICAgICAgICAgIGlubmVyX3Byb2QgPSBzaWxrX0FERF9SU0hJ
RlQzMiggaW5uZXJfcHJvZCwgc2lsa19TTVVMQkIoIHB0cjFbIGkgXSwgcHRyMltpXSApLCByc2hp
ZnRzICk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBYdFsgbGFnIF0gPSBpbm5lcl9wcm9k
OyAvKiBYWzosbGFnXScqdCAqLwogICAgICAgICAgICAgcHRyMS0tOyAvKiBHbyB0byBuZXh0IGNv
bHVtbiBvZiBYICovCkBAIC03Nyw2MSArNzcsNTQgQEAgdm9pZCBzaWxrX2NvcnJNYXRyaXhfRklY
KAogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKngsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgeCB2ZWN0b3IgW0wgKyBvcmRlciAtIDFdIHVz
ZWQgdG8gZm9ybSBkYXRhIG1hdHJpeCBYICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAg
Y29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBMLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGggb2YgdmVjdG9ycyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgICAgIG9yZGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIE1heCBsYWcgZm9yIGNvcnJlbGF0aW9uICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgICAgICAgaGVhZF9yb29tLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgRGVzaXJlZCBoZWFkcm9vbSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAg
ICAgICAgICAgICAqWFgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAg
ICBQb2ludGVyIHRvIFgnKlggY29ycmVsYXRpb24gbWF0cml4IFsgb3JkZXIgeCBvcmRlciBdICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAg
ICAgICpyc2hpZnRzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFJpZ2h0
IHNoaWZ0cyBvZiBjb3JyZWxhdGlvbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgKm5y
ZywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIEVuZXJneSBvZiB4
IHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICAqcnNoaWZ0
cywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSaWdodCBzaGlmdHMgb2Yg
Y29ycmVsYXRpb25zIGFuZCBlbmVyZ3kgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2ggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
KQogewotICAgIG9wdXNfaW50ICAgICAgICAgaSwgaiwgbGFnLCByc2hpZnRzX2xvY2FsLCBoZWFk
X3Jvb21fcnNoaWZ0czsKKyAgICBvcHVzX2ludCAgICAgICAgIGksIGosIGxhZzsKICAgICBvcHVz
X2ludDMyICAgICAgIGVuZXJneTsKICAgICBjb25zdCBvcHVzX2ludDE2ICpwdHIxLCAqcHRyMjsK
IAogICAgIC8qIENhbGN1bGF0ZSBlbmVyZ3kgdG8gZmluZCBzaGlmdCB1c2VkIHRvIGZpdCBpbiAz
MiBiaXRzICovCi0gICAgc2lsa19zdW1fc3FyX3NoaWZ0KCAmZW5lcmd5LCAmcnNoaWZ0c19sb2Nh
bCwgeCwgTCArIG9yZGVyIC0gMSApOwotICAgIC8qIEFkZCBzaGlmdHMgdG8gZ2V0IHRoZSBkZXNp
cmVkIGhlYWQgcm9vbSAqLwotICAgIGhlYWRfcm9vbV9yc2hpZnRzID0gc2lsa19tYXgoIGhlYWRf
cm9vbSAtIHNpbGtfQ0xaMzIoIGVuZXJneSApLCAwICk7Ci0KLSAgICBlbmVyZ3kgPSBzaWxrX1JT
SElGVDMyKCBlbmVyZ3ksIGhlYWRfcm9vbV9yc2hpZnRzICk7Ci0gICAgcnNoaWZ0c19sb2NhbCAr
PSBoZWFkX3Jvb21fcnNoaWZ0czsKKyAgICBzaWxrX3N1bV9zcXJfc2hpZnQoIG5yZywgcnNoaWZ0
cywgeCwgTCArIG9yZGVyIC0gMSApOworICAgIGVuZXJneSA9ICpucmc7CiAKICAgICAvKiBDYWxj
dWxhdGUgZW5lcmd5IG9mIGZpcnN0IGNvbHVtbiAoMCkgb2YgWDogWFs6LDBdJypYWzosMF0gKi8K
ICAgICAvKiBSZW1vdmUgY29udHJpYnV0aW9uIG9mIGZpcnN0IG9yZGVyIC0gMSBzYW1wbGVzICov
CiAgICAgZm9yKCBpID0gMDsgaSA8IG9yZGVyIC0gMTsgaSsrICkgewotICAgICAgICBlbmVyZ3kg
LT0gc2lsa19SU0hJRlQzMiggc2lsa19TTVVMQkIoIHhbIGkgXSwgeFsgaSBdICksIHJzaGlmdHNf
bG9jYWwgKTsKLSAgICB9Ci0gICAgaWYoIHJzaGlmdHNfbG9jYWwgPCAqcnNoaWZ0cyApIHsKLSAg
ICAgICAgLyogQWRqdXN0IGVuZXJneSAqLwotICAgICAgICBlbmVyZ3kgPSBzaWxrX1JTSElGVDMy
KCBlbmVyZ3ksICpyc2hpZnRzIC0gcnNoaWZ0c19sb2NhbCApOwotICAgICAgICByc2hpZnRzX2xv
Y2FsID0gKnJzaGlmdHM7CisgICAgICAgIGVuZXJneSAtPSBzaWxrX1JTSElGVDMyKCBzaWxrX1NN
VUxCQiggeFsgaSBdLCB4WyBpIF0gKSwgKnJzaGlmdHMgKTsKICAgICB9CiAKICAgICAvKiBDYWxj
dWxhdGUgZW5lcmd5IG9mIHJlbWFpbmluZyBjb2x1bW5zIG9mIFg6IFhbOixqXScqWFs6LGpdICov
CiAgICAgLyogRmlsbCBvdXQgdGhlIGRpYWdvbmFsIG9mIHRoZSBjb3JyZWxhdGlvbiBtYXRyaXgg
Ki8KICAgICBtYXRyaXhfcHRyKCBYWCwgMCwgMCwgb3JkZXIgKSA9IGVuZXJneTsKKyAgICBzaWxr
X2Fzc2VydCggZW5lcmd5ID49IDAgKTsKICAgICBwdHIxID0gJnhbIG9yZGVyIC0gMSBdOyAvKiBG
aXJzdCBzYW1wbGUgb2YgY29sdW1uIDAgb2YgWCAqLwogICAgIGZvciggaiA9IDE7IGogPCBvcmRl
cjsgaisrICkgewotICAgICAgICBlbmVyZ3kgPSBzaWxrX1NVQjMyKCBlbmVyZ3ksIHNpbGtfUlNI
SUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyBMIC0gaiBdLCBwdHIxWyBMIC0gaiBdICksIHJzaGlm
dHNfbG9jYWwgKSApOwotICAgICAgICBlbmVyZ3kgPSBzaWxrX0FERDMyKCBlbmVyZ3ksIHNpbGtf
UlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyAtaiBdLCBwdHIxWyAtaiBdICksIHJzaGlmdHNf
bG9jYWwgKSApOworICAgICAgICBlbmVyZ3kgPSBzaWxrX1NVQjMyKCBlbmVyZ3ksIHNpbGtfUlNI
SUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyBMIC0gaiBdLCBwdHIxWyBMIC0gaiBdICksICpyc2hp
ZnRzICkgKTsKKyAgICAgICAgZW5lcmd5ID0gc2lsa19BREQzMiggZW5lcmd5LCBzaWxrX1JTSElG
VDMyKCBzaWxrX1NNVUxCQiggcHRyMVsgLWogXSwgcHRyMVsgLWogXSApLCAqcnNoaWZ0cyApICk7
CiAgICAgICAgIG1hdHJpeF9wdHIoIFhYLCBqLCBqLCBvcmRlciApID0gZW5lcmd5OworICAgICAg
ICBzaWxrX2Fzc2VydCggZW5lcmd5ID49IDAgKTsKICAgICB9CiAKICAgICBwdHIyID0gJnhbIG9y
ZGVyIC0gMiBdOyAvKiBGaXJzdCBzYW1wbGUgb2YgY29sdW1uIDEgb2YgWCAqLwogICAgIC8qIENh
bGN1bGF0ZSB0aGUgcmVtYWluaW5nIGVsZW1lbnRzIG9mIHRoZSBjb3JyZWxhdGlvbiBtYXRyaXgg
Ki8KLSAgICBpZiggcnNoaWZ0c19sb2NhbCA+IDAgKSB7CisgICAgaWYoICpyc2hpZnRzID4gMCAp
IHsKICAgICAgICAgLyogUmlnaHQgc2hpZnRpbmcgdXNlZCAqLwogICAgICAgICBmb3IoIGxhZyA9
IDE7IGxhZyA8IG9yZGVyOyBsYWcrKyApIHsKICAgICAgICAgICAgIC8qIElubmVyIHByb2R1Y3Qg
b2YgY29sdW1uIDAgYW5kIGNvbHVtbiBsYWc6IFhbOiwwXScqWFs6LGxhZ10gKi8KICAgICAgICAg
ICAgIGVuZXJneSA9IDA7CiAgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTDsgaSsrICkgewot
ICAgICAgICAgICAgICAgIGVuZXJneSArPSBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggcHRy
MVsgaSBdLCBwdHIyW2ldICksIHJzaGlmdHNfbG9jYWwgKTsKKyAgICAgICAgICAgICAgICBlbmVy
Z3kgKz0gc2lsa19SU0hJRlQzMiggc2lsa19TTVVMQkIoIHB0cjFbIGkgXSwgcHRyMltpXSApLCAq
cnNoaWZ0cyApOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgLyogQ2FsY3VsYXRlIHJlbWFp
bmluZyBvZmYgZGlhZ29uYWw6IFhbOixqXScqWFs6LGogKyBsYWddICovCiAgICAgICAgICAgICBt
YXRyaXhfcHRyKCBYWCwgbGFnLCAwLCBvcmRlciApID0gZW5lcmd5OwogICAgICAgICAgICAgbWF0
cml4X3B0ciggWFgsIDAsIGxhZywgb3JkZXIgKSA9IGVuZXJneTsKICAgICAgICAgICAgIGZvcigg
aiA9IDE7IGogPCAoIG9yZGVyIC0gbGFnICk7IGorKyApIHsKLSAgICAgICAgICAgICAgICBlbmVy
Z3kgPSBzaWxrX1NVQjMyKCBlbmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIx
WyBMIC0gaiBdLCBwdHIyWyBMIC0gaiBdICksIHJzaGlmdHNfbG9jYWwgKSApOwotICAgICAgICAg
ICAgICAgIGVuZXJneSA9IHNpbGtfQUREMzIoIGVuZXJneSwgc2lsa19SU0hJRlQzMiggc2lsa19T
TVVMQkIoIHB0cjFbIC1qIF0sIHB0cjJbIC1qIF0gKSwgcnNoaWZ0c19sb2NhbCApICk7CisgICAg
ICAgICAgICAgICAgZW5lcmd5ID0gc2lsa19TVUIzMiggZW5lcmd5LCBzaWxrX1JTSElGVDMyKCBz
aWxrX1NNVUxCQiggcHRyMVsgTCAtIGogXSwgcHRyMlsgTCAtIGogXSApLCAqcnNoaWZ0cyApICk7
CisgICAgICAgICAgICAgICAgZW5lcmd5ID0gc2lsa19BREQzMiggZW5lcmd5LCBzaWxrX1JTSElG
VDMyKCBzaWxrX1NNVUxCQiggcHRyMVsgLWogXSwgcHRyMlsgLWogXSApLCAqcnNoaWZ0cyApICk7
CiAgICAgICAgICAgICAgICAgbWF0cml4X3B0ciggWFgsIGxhZyArIGosIGosIG9yZGVyICkgPSBl
bmVyZ3k7CiAgICAgICAgICAgICAgICAgbWF0cml4X3B0ciggWFgsIGosIGxhZyArIGosIG9yZGVy
ICkgPSBlbmVyZ3k7CiAgICAgICAgICAgICB9CkBAIC0xNTMsNiArMTQ2LDUgQEAgdm9pZCBzaWxr
X2NvcnJNYXRyaXhfRklYKAogICAgICAgICAgICAgcHRyMi0tOy8qIFVwZGF0ZSBwb2ludGVyIHRv
IGZpcnN0IHNhbXBsZSBvZiBuZXh0IGNvbHVtbiAobGFnKSBpbiBYICovCiAgICAgICAgIH0KICAg
ICB9Ci0gICAgKnJzaGlmdHMgPSByc2hpZnRzX2xvY2FsOwogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
Zml4ZWQvZW5jb2RlX2ZyYW1lX0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2VuY29kZV9mcmFtZV9GSVguYwpp
bmRleCA1ZWY0NGIwM2ZjNGM1ODU5OTliY2VjMjgyMzVlMGVkNGE1NTQ4NmIxLi5mNmVlODEzYjk3
ZmE1NjRkMzNmOTY0OGUwODBmOTg0MTU5Yzk0NGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZW5j
b2RlX2ZyYW1lX0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9lbmNvZGVfZnJhbWVfRklYLmMKQEAgLTI5
LDYgKzI5LDcgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjZW5kaWYKIAorI2luY2x1ZGUgPHN0ZGxpYi5oPgogI2luY2x1ZGUgIm1haW5fRklYLmgi
CiAjaW5jbHVkZSAic3RhY2tfYWxsb2MuaCIKICNpbmNsdWRlICJ0dW5pbmdfcGFyYW1ldGVycy5o
IgpAQCAtMzcsMjYgKzM4LDMzIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogc3RhdGlj
IE9QVVNfSU5MSU5FIHZvaWQgc2lsa19MQlJSX2VuY29kZV9GSVgoCiAgICAgc2lsa19lbmNvZGVy
X3N0YXRlX0ZJWCAgICAgICAgICAqcHNFbmMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSS9PICBQb2ludGVyIHRvIFNpbGsgRklYIGVuY29kZXIgc3RhdGUgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX2VuY29kZXJfY29udHJv
bF9GSVggICAgICAgICpwc0VuY0N0cmwsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
L08gIFBvaW50ZXIgdG8gU2lsayBGSVggZW5jb2RlciBjb250cm9sIHN0cnVjdCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAg
ICAgICAgeGZ3X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5w
dXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICB4
MTZbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWdu
YWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgIGNvbmRDb2Rp
bmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFRoZSB0eXBlIG9mIGNvbmRp
dGlvbmFsIGNvZGluZyB1c2VkIHNvIGZhciBmb3IgdGhpcyBmcmFtZSAgICAgICAgICAgICAgICAg
ICAqLwogKTsKIAogdm9pZCBzaWxrX2VuY29kZV9kb19WQURfRklYKAotICAgIHNpbGtfZW5jb2Rl
cl9zdGF0ZV9GSVggICAgICAgICAgKnBzRW5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIEZJWCBlbmNvZGVyIHN0YXRlICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgc2lsa19lbmNvZGVyX3N0YXRl
X0ZJWCAgICAgICAgICAqcHNFbmMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SS9PICBQb2ludGVyIHRvIFNpbGsgRklYIGVuY29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAg
ICAgICAgIGFjdGl2aXR5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIERl
Y2lzaW9uIG9mIE9wdXMgdm9pY2UgYWN0aXZpdHkgZGV0ZWN0b3IgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwogKQogeworICAgIGNvbnN0IG9wdXNfaW50IGFjdGl2aXR5X3Ro
cmVzaG9sZCA9IFNJTEtfRklYX0NPTlNUKCBTUEVFQ0hfQUNUSVZJVFlfRFRYX1RIUkVTLCA4ICk7
CisKICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBWb2ljZSBBY3Rp
dml0eSBEZXRlY3Rpb24gKi8KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAg
ICBzaWxrX1ZBRF9HZXRTQV9ROCggJnBzRW5jLT5zQ21uLCBwc0VuYy0+c0Ntbi5pbnB1dEJ1ZiAr
IDEsIHBzRW5jLT5zQ21uLmFyY2ggKTsKKyAgICAvKiBJZiBPcHVzIFZBRCBpcyBpbmFjdGl2ZSBh
bmQgU2lsayBWQUQgaXMgYWN0aXZlOiBsb3dlciBTaWxrIFZBRCB0byBqdXN0IHVuZGVyIHRoZSB0
aHJlc2hvbGQgKi8KKyAgICBpZiggYWN0aXZpdHkgPT0gVkFEX05PX0FDVElWSVRZICYmIHBzRW5j
LT5zQ21uLnNwZWVjaF9hY3Rpdml0eV9ROCA+PSBhY3Rpdml0eV90aHJlc2hvbGQgKSB7CisgICAg
ICAgIHBzRW5jLT5zQ21uLnNwZWVjaF9hY3Rpdml0eV9ROCA9IGFjdGl2aXR5X3RocmVzaG9sZCAt
IDE7CisgICAgfQogCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqLwogICAgIC8qIENvbnZlcnQgc3BlZWNoIGFjdGl2aXR5IGludG8gVkFEIGFu
ZCBEVFggZmxhZ3MgKi8KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKiovCi0gICAgaWYoIHBzRW5jLT5zQ21uLnNwZWVjaF9hY3Rpdml0eV9ROCA8
IFNJTEtfRklYX0NPTlNUKCBTUEVFQ0hfQUNUSVZJVFlfRFRYX1RIUkVTLCA4ICkgKSB7CisgICAg
aWYoIHBzRW5jLT5zQ21uLnNwZWVjaF9hY3Rpdml0eV9ROCA8IGFjdGl2aXR5X3RocmVzaG9sZCAp
IHsKICAgICAgICAgcHNFbmMtPnNDbW4uaW5kaWNlcy5zaWduYWxUeXBlID0gVFlQRV9OT19WT0lD
RV9BQ1RJVklUWTsKICAgICAgICAgcHNFbmMtPnNDbW4ubm9TcGVlY2hDb3VudGVyKys7Ci0gICAg
ICAgIGlmKCBwc0VuYy0+c0Ntbi5ub1NwZWVjaENvdW50ZXIgPCBOQl9TUEVFQ0hfRlJBTUVTX0JF
Rk9SRV9EVFggKSB7CisgICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5ub1NwZWVjaENvdW50ZXIgPD0g
TkJfU1BFRUNIX0ZSQU1FU19CRUZPUkVfRFRYICkgewogICAgICAgICAgICAgcHNFbmMtPnNDbW4u
aW5EVFggPSAwOwogICAgICAgICB9IGVsc2UgaWYoIHBzRW5jLT5zQ21uLm5vU3BlZWNoQ291bnRl
ciA+IE1BWF9DT05TRUNVVElWRV9EVFggKyBOQl9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFggKSB7
CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5ub1NwZWVjaENvdW50ZXIgPSBOQl9TUEVFQ0hfRlJB
TUVTX0JFRk9SRV9EVFg7CkBAIC05NCw2ICsxMDIsOSBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9m
cmFtZV9GSVgoCiAgICAgb3B1c19pbnQxNiAgIGVjX3ByZXZMYWdJbmRleF9jb3B5OwogICAgIG9w
dXNfaW50ICAgICBlY19wcmV2U2lnbmFsVHlwZV9jb3B5OwogICAgIG9wdXNfaW50OCAgICBMYXN0
R2FpbkluZGV4X2NvcHkyOworICAgIG9wdXNfaW50ICAgICBnYWluX2xvY2tbIE1BWF9OQl9TVUJG
UiBdID0gezB9OworICAgIG9wdXNfaW50MTYgICBiZXN0X2dhaW5fbXVsdFsgTUFYX05CX1NVQkZS
IF07CisgICAgb3B1c19pbnQgICAgIGJlc3Rfc3VtWyBNQVhfTkJfU1VCRlIgXTsKICAgICBTQVZF
X1NUQUNLOwogCiAgICAgLyogVGhpcyBpcyB0b3RhbGx5IHVubmVjZXNzYXJ5IGJ1dCBtYW55IGNv
bXBpbGVycyAoaW5jbHVkaW5nIGdjYykgYXJlIHRvbyBkdW1iIHRvIHJlYWxpc2UgaXQgKi8KQEAg
LTExOCw3ICsxMjksNiBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GSVgoCiAgICAgc2ls
a19tZW1jcHkoIHhfZnJhbWUgKyBMQV9TSEFQRV9NUyAqIHBzRW5jLT5zQ21uLmZzX2tIeiwgcHNF
bmMtPnNDbW4uaW5wdXRCdWYgKyAxLCBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGggKiBzaXplb2Yo
IG9wdXNfaW50MTYgKSApOwogCiAgICAgaWYoICFwc0VuYy0+c0Ntbi5wcmVmaWxsRmxhZyApIHsK
LSAgICAgICAgVkFSREVDTCggb3B1c19pbnQzMiwgeGZ3X1EzICk7CiAgICAgICAgIFZBUkRFQ0wo
IG9wdXNfaW50MTYsIHJlc19waXRjaCApOwogICAgICAgICBWQVJERUNMKCBvcHVzX3VpbnQ4LCBl
Y19idWZfY29weSApOwogICAgICAgICBvcHVzX2ludDE2ICpyZXNfcGl0Y2hfZnJhbWU7CkBAIC0x
MzIsNyArMTQyLDcgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRklYKAogICAgICAgICAv
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgICAgIC8qIEZp
bmQgcGl0Y2ggbGFncywgaW5pdGlhbCBMUEMgYW5hbHlzaXMgKi8KICAgICAgICAgLyoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICBzaWxrX2ZpbmRfcGl0
Y2hfbGFnc19GSVgoIHBzRW5jLCAmc0VuY0N0cmwsIHJlc19waXRjaCwgeF9mcmFtZSwgcHNFbmMt
PnNDbW4uYXJjaCApOworICAgICAgICBzaWxrX2ZpbmRfcGl0Y2hfbGFnc19GSVgoIHBzRW5jLCAm
c0VuY0N0cmwsIHJlc19waXRjaCwgeF9mcmFtZSAtIHBzRW5jLT5zQ21uLmx0cF9tZW1fbGVuZ3Ro
LCBwc0VuYy0+c0Ntbi5hcmNoICk7CiAKICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioq
Ki8KICAgICAgICAgLyogTm9pc2Ugc2hhcGUgYW5hbHlzaXMgKi8KQEAgLTE0MiwyMyArMTUyLDE3
IEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZJWCgKICAgICAgICAgLyoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogRmlu
ZCBsaW5lYXIgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgKExQQyArIExUUCkgKi8KICAgICAgICAg
LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAg
ICAgICAgc2lsa19maW5kX3ByZWRfY29lZnNfRklYKCBwc0VuYywgJnNFbmNDdHJsLCByZXNfcGl0
Y2gsIHhfZnJhbWUsIGNvbmRDb2RpbmcgKTsKKyAgICAgICAgc2lsa19maW5kX3ByZWRfY29lZnNf
RklYKCBwc0VuYywgJnNFbmNDdHJsLCByZXNfcGl0Y2hfZnJhbWUsIHhfZnJhbWUsIGNvbmRDb2Rp
bmcgKTsKIAogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
Ki8KICAgICAgICAgLyogUHJvY2VzcyBnYWlucyAgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgICAg
ICBzaWxrX3Byb2Nlc3NfZ2FpbnNfRklYKCBwc0VuYywgJnNFbmNDdHJsLCBjb25kQ29kaW5nICk7
CiAKLSAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwot
ICAgICAgICAvKiBQcmVmaWx0ZXJpbmcgZm9yIG5vaXNlIHNoYXBlciAgICAgICAgICovCi0gICAg
ICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAg
QUxMT0MoIHhmd19RMywgcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoLCBvcHVzX2ludDMyICk7Ci0g
ICAgICAgIHNpbGtfcHJlZmlsdGVyX0ZJWCggcHNFbmMsICZzRW5jQ3RybCwgeGZ3X1EzLCB4X2Zy
YW1lICk7Ci0KICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KiovCiAgICAgICAgIC8qIExvdyBCaXRyYXRlIFJlZHVuZGFudCBFbmNvZGluZyAgICAgICAqLwog
ICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAg
ICAgc2lsa19MQlJSX2VuY29kZV9GSVgoIHBzRW5jLCAmc0VuY0N0cmwsIHhmd19RMywgY29uZENv
ZGluZyApOworICAgICAgICBzaWxrX0xCUlJfZW5jb2RlX0ZJWCggcHNFbmMsICZzRW5jQ3RybCwg
eF9mcmFtZSwgY29uZENvZGluZyApOwogCiAgICAgICAgIC8qIExvb3Agb3ZlciBxdWFudGl6ZXIg
YW5kIGVudHJvcHkgY29kaW5nIHRvIGNvbnRyb2wgYml0cmF0ZSAqLwogICAgICAgICBtYXhJdGVy
ID0gNjsKQEAgLTE5NCwxNyArMTk4LDIxIEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZJ
WCgKICAgICAgICAgICAgICAgICAvKiBOb2lzZSBzaGFwaW5nIHF1YW50aXphdGlvbiAgICAgICAg
ICAgICovCiAgICAgICAgICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqLwogICAgICAgICAgICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5uU3RhdGVzRGVsYXll
ZERlY2lzaW9uID4gMSB8fCBwc0VuYy0+c0Ntbi53YXJwaW5nX1ExNiA+IDAgKSB7Ci0gICAgICAg
ICAgICAgICAgICAgIHNpbGtfTlNRX2RlbF9kZWMoICZwc0VuYy0+c0NtbiwgJnBzRW5jLT5zQ21u
LnNOU1EsICZwc0VuYy0+c0Ntbi5pbmRpY2VzLCB4ZndfUTMsIHBzRW5jLT5zQ21uLnB1bHNlcywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgIHNFbmNDdHJsLlByZWRDb2VmX1ExMlsgMCBdLCBz
RW5jQ3RybC5MVFBDb2VmX1ExNCwgc0VuY0N0cmwuQVIyX1ExMywgc0VuY0N0cmwuSGFybVNoYXBl
R2Fpbl9RMTQsCisgICAgICAgICAgICAgICAgICAgIHNpbGtfTlNRX2RlbF9kZWMoICZwc0VuYy0+
c0NtbiwgJnBzRW5jLT5zQ21uLnNOU1EsICZwc0VuYy0+c0Ntbi5pbmRpY2VzLCB4X2ZyYW1lLCBw
c0VuYy0+c0Ntbi5wdWxzZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBzRW5jQ3RybC5Q
cmVkQ29lZl9RMTJbIDAgXSwgc0VuY0N0cmwuTFRQQ29lZl9RMTQsIHNFbmNDdHJsLkFSX1ExMywg
c0VuY0N0cmwuSGFybVNoYXBlR2Fpbl9RMTQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
RW5jQ3RybC5UaWx0X1ExNCwgc0VuY0N0cmwuTEZfc2hwX1ExNCwgc0VuY0N0cmwuR2FpbnNfUTE2
LCBzRW5jQ3RybC5waXRjaEwsIHNFbmNDdHJsLkxhbWJkYV9RMTAsIHNFbmNDdHJsLkxUUF9zY2Fs
ZV9RMTQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5hcmNoICk7CiAg
ICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgc2lsa19OU1EoICZw
c0VuYy0+c0NtbiwgJnBzRW5jLT5zQ21uLnNOU1EsICZwc0VuYy0+c0Ntbi5pbmRpY2VzLCB4Zndf
UTMsIHBzRW5jLT5zQ21uLnB1bHNlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzRW5j
Q3RybC5QcmVkQ29lZl9RMTJbIDAgXSwgc0VuY0N0cmwuTFRQQ29lZl9RMTQsIHNFbmNDdHJsLkFS
Ml9RMTMsIHNFbmNDdHJsLkhhcm1TaGFwZUdhaW5fUTE0LAorICAgICAgICAgICAgICAgICAgICBz
aWxrX05TUSggJnBzRW5jLT5zQ21uLCAmcHNFbmMtPnNDbW4uc05TUSwgJnBzRW5jLT5zQ21uLmlu
ZGljZXMsIHhfZnJhbWUsIHBzRW5jLT5zQ21uLnB1bHNlcywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzRW5jQ3RybC5QcmVkQ29lZl9RMTJbIDAgXSwgc0VuY0N0cmwuTFRQQ29lZl9RMTQs
IHNFbmNDdHJsLkFSX1ExMywgc0VuY0N0cmwuSGFybVNoYXBlR2Fpbl9RMTQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc0VuY0N0cmwuVGlsdF9RMTQsIHNFbmNDdHJsLkxGX3NocF9RMTQs
IHNFbmNDdHJsLkdhaW5zX1ExNiwgc0VuY0N0cmwucGl0Y2hMLCBzRW5jQ3RybC5MYW1iZGFfUTEw
LCBzRW5jQ3RybC5MVFBfc2NhbGVfUTE0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBz
RW5jLT5zQ21uLmFyY2gpOwogICAgICAgICAgICAgICAgIH0KIAorICAgICAgICAgICAgICAgIGlm
ICggaXRlciA9PSBtYXhJdGVyICYmICFmb3VuZF9sb3dlciApIHsKKyAgICAgICAgICAgICAgICAg
ICAgc2lsa19tZW1jcHkoICZzUmFuZ2VFbmNfY29weTIsIHBzUmFuZ2VFbmMsIHNpemVvZiggZWNf
ZW5jICkgKTsKKyAgICAgICAgICAgICAgICB9CisKICAgICAgICAgICAgICAgICAvKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgICAgICAgICAvKiBFbmNv
ZGUgUGFyYW1ldGVycyAgICAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KQEAgLTIxOCw2ICsyMjYsMzMg
QEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRklYKAogCiAgICAgICAgICAgICAgICAgbkJp
dHMgPSBlY190ZWxsKCBwc1JhbmdlRW5jICk7CiAKKyAgICAgICAgICAgICAgICAvKiBJZiB3ZSBz
dGlsbCBidXN0IGFmdGVyIHRoZSBsYXN0IGl0ZXJhdGlvbiwgZG8gc29tZSBkYW1hZ2UgY29udHJv
bC4gKi8KKyAgICAgICAgICAgICAgICBpZiAoIGl0ZXIgPT0gbWF4SXRlciAmJiAhZm91bmRfbG93
ZXIgJiYgbkJpdHMgPiBtYXhCaXRzICkgeworICAgICAgICAgICAgICAgICAgICBzaWxrX21lbWNw
eSggcHNSYW5nZUVuYywgJnNSYW5nZUVuY19jb3B5Miwgc2l6ZW9mKCBlY19lbmMgKSApOworCisg
ICAgICAgICAgICAgICAgICAgIC8qIEtlZXAgZ2FpbnMgdGhlIHNhbWUgYXMgdGhlIGxhc3QgZnJh
bWUuICovCisgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zU2hhcGUuTGFzdEdhaW5JbmRleCA9
IHNFbmNDdHJsLmxhc3RHYWluSW5kZXhQcmV2OworICAgICAgICAgICAgICAgICAgICBmb3IgKCBp
ID0gMDsgaSA8IHBzRW5jLT5zQ21uLm5iX3N1YmZyOyBpKysgKSB7CisgICAgICAgICAgICAgICAg
ICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2VzLkdhaW5zSW5kaWNlc1sgaSBdID0gNDsKKyAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBpZiAoY29uZENvZGluZyAhPSBD
T0RFX0NPTkRJVElPTkFMTFkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4u
aW5kaWNlcy5HYWluc0luZGljZXNbIDAgXSA9IHNFbmNDdHJsLmxhc3RHYWluSW5kZXhQcmV2Owor
ICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmVj
X3ByZXZMYWdJbmRleCA9IGVjX3ByZXZMYWdJbmRleF9jb3B5OworICAgICAgICAgICAgICAgICAg
ICBwc0VuYy0+c0Ntbi5lY19wcmV2U2lnbmFsVHlwZSA9IGVjX3ByZXZTaWduYWxUeXBlX2NvcHk7
CisgICAgICAgICAgICAgICAgICAgIC8qIENsZWFyIGFsbCBwdWxzZXMuICovCisgICAgICAgICAg
ICAgICAgICAgIGZvciAoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoOyBpKysg
KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5wdWxzZXNbIGkgXSA9IDA7
CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgICAgICBzaWxrX2VuY29k
ZV9pbmRpY2VzKCAmcHNFbmMtPnNDbW4sIHBzUmFuZ2VFbmMsIHBzRW5jLT5zQ21uLm5GcmFtZXNF
bmNvZGVkLCAwLCBjb25kQ29kaW5nICk7CisKKyAgICAgICAgICAgICAgICAgICAgc2lsa19lbmNv
ZGVfcHVsc2VzKCBwc1JhbmdlRW5jLCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUsIHBz
RW5jLT5zQ21uLmluZGljZXMucXVhbnRPZmZzZXRUeXBlLAorICAgICAgICAgICAgICAgICAgICAg
ICAgcHNFbmMtPnNDbW4ucHVsc2VzLCBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGggKTsKKworICAg
ICAgICAgICAgICAgICAgICBuQml0cyA9IGVjX3RlbGwoIHBzUmFuZ2VFbmMgKTsKKyAgICAgICAg
ICAgICAgICB9CisKICAgICAgICAgICAgICAgICBpZiggdXNlQ0JSID09IDAgJiYgaXRlciA9PSAw
ICYmIG5CaXRzIDw9IG1heEJpdHMgKSB7CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICAgICAgICAgIH0KQEAgLTI2NSwxNSArMzAwLDM1IEBAIG9wdXNfaW50IHNpbGtfZW5jb2Rl
X2ZyYW1lX0ZJWCgKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KIAorICAg
ICAgICAgICAgaWYgKCAhZm91bmRfbG93ZXIgJiYgbkJpdHMgPiBtYXhCaXRzICkgeworICAgICAg
ICAgICAgICAgIGludCBqOworICAgICAgICAgICAgICAgIGZvciAoIGkgPSAwOyBpIDwgcHNFbmMt
PnNDbW4ubmJfc3ViZnI7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAgaW50IHN1bT0wOwor
ICAgICAgICAgICAgICAgICAgICBmb3IgKCBqID0gaSpwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7
IGogPCAoaSsxKSpwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7IGorKyApIHsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHN1bSArPSBhYnMoIHBzRW5jLT5zQ21uLnB1bHNlc1tqXSApOworICAgICAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGlmICggaXRlciA9PSAwIHx8IChz
dW0gPCBiZXN0X3N1bVtpXSAmJiAhZ2Fpbl9sb2NrW2ldKSApIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGJlc3Rfc3VtW2ldID0gc3VtOworICAgICAgICAgICAgICAgICAgICAgICAgYmVzdF9n
YWluX211bHRbaV0gPSBnYWluTXVsdF9RODsKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgIGdhaW5fbG9ja1tpXSA9IDE7CisgICAgICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBp
ZiggKCBmb3VuZF9sb3dlciAmIGZvdW5kX3VwcGVyICkgPT0gMCApIHsKICAgICAgICAgICAgICAg
ICAvKiBBZGp1c3QgZ2FpbiBhY2NvcmRpbmcgdG8gaGlnaC1yYXRlIHJhdGUvZGlzdG9ydGlvbiBj
dXJ2ZSAqLwotICAgICAgICAgICAgICAgIG9wdXNfaW50MzIgZ2Fpbl9mYWN0b3JfUTE2OwotICAg
ICAgICAgICAgICAgIGdhaW5fZmFjdG9yX1ExNiA9IHNpbGtfbG9nMmxpbiggc2lsa19MU0hJRlQo
IG5CaXRzIC0gbWF4Qml0cywgNyApIC8gcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoICsgU0lMS19G
SVhfQ09OU1QoIDE2LCA3ICkgKTsKLSAgICAgICAgICAgICAgICBnYWluX2ZhY3Rvcl9RMTYgPSBz
aWxrX21pbl8zMiggZ2Fpbl9mYWN0b3JfUTE2LCBTSUxLX0ZJWF9DT05TVCggMiwgMTYgKSApOwog
ICAgICAgICAgICAgICAgIGlmKCBuQml0cyA+IG1heEJpdHMgKSB7Ci0gICAgICAgICAgICAgICAg
ICAgIGdhaW5fZmFjdG9yX1ExNiA9IHNpbGtfbWF4XzMyKCBnYWluX2ZhY3Rvcl9RMTYsIFNJTEtf
RklYX0NPTlNUKCAxLjMsIDE2ICkgKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGdhaW5NdWx0
X1E4IDwgMTYzODQpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGdhaW5NdWx0X1E4ICo9IDI7
CisgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBn
YWluTXVsdF9ROCA9IDMyNzY3OworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgb3B1c19pbnQzMiBnYWluX2ZhY3Rvcl9R
MTY7CisgICAgICAgICAgICAgICAgICAgIGdhaW5fZmFjdG9yX1ExNiA9IHNpbGtfbG9nMmxpbigg
c2lsa19MU0hJRlQoIG5CaXRzIC0gbWF4Qml0cywgNyApIC8gcHNFbmMtPnNDbW4uZnJhbWVfbGVu
Z3RoICsgU0lMS19GSVhfQ09OU1QoIDE2LCA3ICkgKTsKKyAgICAgICAgICAgICAgICAgICAgZ2Fp
bk11bHRfUTggPSBzaWxrX1NNVUxXQiggZ2Fpbl9mYWN0b3JfUTE2LCBnYWluTXVsdF9ROCApOwog
ICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBnYWluTXVsdF9ROCA9IHNpbGtfU01V
TFdCKCBnYWluX2ZhY3Rvcl9RMTYsIGdhaW5NdWx0X1E4ICk7CisKICAgICAgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgICAgICAgLyogQWRqdXN0IGdhaW4gYnkgaW50ZXJwb2xhdGluZyAqLwog
ICAgICAgICAgICAgICAgIGdhaW5NdWx0X1E4ID0gZ2Fpbk11bHRfbG93ZXIgKyBzaWxrX0RJVjMy
XzE2KCBzaWxrX01VTCggZ2Fpbk11bHRfdXBwZXIgLSBnYWluTXVsdF9sb3dlciwgbWF4Qml0cyAt
IG5CaXRzX2xvd2VyICksIG5CaXRzX3VwcGVyIC0gbkJpdHNfbG93ZXIgKTsKQEAgLTI4Nyw3ICsz
NDIsMTMgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRklYKAogICAgICAgICAgICAgfQog
CiAgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGkrKyAp
IHsKLSAgICAgICAgICAgICAgICBzRW5jQ3RybC5HYWluc19RMTZbIGkgXSA9IHNpbGtfTFNISUZU
X1NBVDMyKCBzaWxrX1NNVUxXQiggc0VuY0N0cmwuR2FpbnNVbnFfUTE2WyBpIF0sIGdhaW5NdWx0
X1E4ICksIDggKTsKKyAgICAgICAgICAgICAgICBvcHVzX2ludDE2IHRtcDsKKyAgICAgICAgICAg
ICAgICBpZiAoIGdhaW5fbG9ja1tpXSApIHsKKyAgICAgICAgICAgICAgICAgICAgdG1wID0gYmVz
dF9nYWluX211bHRbaV07CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAg
ICAgICAgdG1wID0gZ2Fpbk11bHRfUTg7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgIHNFbmNDdHJsLkdhaW5zX1ExNlsgaSBdID0gc2lsa19MU0hJRlRfU0FUMzIoIHNpbGtfU01V
TFdCKCBzRW5jQ3RybC5HYWluc1VucV9RMTZbIGkgXSwgdG1wICksIDggKTsKICAgICAgICAgICAg
IH0KIAogICAgICAgICAgICAgLyogUXVhbnRpemUgZ2FpbnMgKi8KQEAgLTMzMSw3ICszOTIsNyBA
QCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GSVgoCiBzdGF0aWMgT1BVU19JTkxJTkUgdm9p
ZCBzaWxrX0xCUlJfZW5jb2RlX0ZJWCgKICAgICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAg
ICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50
ZXIgdG8gU2lsayBGSVggZW5jb2RlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZJWCAgICAgICAgKnBz
RW5jQ3RybCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBT
aWxrIEZJWCBlbmNvZGVyIGNvbnRyb2wgc3RydWN0ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICAgICB4ZndfUTNbXSwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgIHgxNltdLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IHNpZ25hbCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgY29uZENvZGluZyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgVGhlIHR5cGUgb2YgY29uZGl0aW9uYWwgY29kaW5nIHVz
ZWQgc28gZmFyIGZvciB0aGlzIGZyYW1lICAgICAgICAgICAgICAgICAgICovCiApCiB7CkBAIC0z
NzAsMTQgKzQzMSwxNCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xCUlJfZW5jb2Rl
X0ZJWCgKICAgICAgICAgLyogTm9pc2Ugc2hhcGluZyBxdWFudGl6YXRpb24gICAgICAgICAgICAq
LwogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAg
ICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5uU3RhdGVzRGVsYXllZERlY2lzaW9uID4gMSB8fCBwc0Vu
Yy0+c0Ntbi53YXJwaW5nX1ExNiA+IDAgKSB7Ci0gICAgICAgICAgICBzaWxrX05TUV9kZWxfZGVj
KCAmcHNFbmMtPnNDbW4sICZzTlNRX0xCUlIsIHBzSW5kaWNlc19MQlJSLCB4ZndfUTMsCisgICAg
ICAgICAgICBzaWxrX05TUV9kZWxfZGVjKCAmcHNFbmMtPnNDbW4sICZzTlNRX0xCUlIsIHBzSW5k
aWNlc19MQlJSLCB4MTYsCiAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4ucHVsc2VzX0xCUlJb
IHBzRW5jLT5zQ21uLm5GcmFtZXNFbmNvZGVkIF0sIHBzRW5jQ3RybC0+UHJlZENvZWZfUTEyWyAw
IF0sIHBzRW5jQ3RybC0+TFRQQ29lZl9RMTQsCi0gICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5B
UjJfUTEzLCBwc0VuY0N0cmwtPkhhcm1TaGFwZUdhaW5fUTE0LCBwc0VuY0N0cmwtPlRpbHRfUTE0
LCBwc0VuY0N0cmwtPkxGX3NocF9RMTQsCisgICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5BUl9R
MTMsIHBzRW5jQ3RybC0+SGFybVNoYXBlR2Fpbl9RMTQsIHBzRW5jQ3RybC0+VGlsdF9RMTQsIHBz
RW5jQ3RybC0+TEZfc2hwX1ExNCwKICAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1Ex
NiwgcHNFbmNDdHJsLT5waXRjaEwsIHBzRW5jQ3RybC0+TGFtYmRhX1ExMCwgcHNFbmNDdHJsLT5M
VFBfc2NhbGVfUTE0LCBwc0VuYy0+c0Ntbi5hcmNoICk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAg
ICAgICAgICBzaWxrX05TUSggJnBzRW5jLT5zQ21uLCAmc05TUV9MQlJSLCBwc0luZGljZXNfTEJS
UiwgeGZ3X1EzLAorICAgICAgICAgICAgc2lsa19OU1EoICZwc0VuYy0+c0NtbiwgJnNOU1FfTEJS
UiwgcHNJbmRpY2VzX0xCUlIsIHgxNiwKICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5wdWxz
ZXNfTEJSUlsgcHNFbmMtPnNDbW4ubkZyYW1lc0VuY29kZWQgXSwgcHNFbmNDdHJsLT5QcmVkQ29l
Zl9RMTJbIDAgXSwgcHNFbmNDdHJsLT5MVFBDb2VmX1ExNCwKLSAgICAgICAgICAgICAgICBwc0Vu
Y0N0cmwtPkFSMl9RMTMsIHBzRW5jQ3RybC0+SGFybVNoYXBlR2Fpbl9RMTQsIHBzRW5jQ3RybC0+
VGlsdF9RMTQsIHBzRW5jQ3RybC0+TEZfc2hwX1ExNCwKKyAgICAgICAgICAgICAgICBwc0VuY0N0
cmwtPkFSX1ExMywgcHNFbmNDdHJsLT5IYXJtU2hhcGVHYWluX1ExNCwgcHNFbmNDdHJsLT5UaWx0
X1ExNCwgcHNFbmNDdHJsLT5MRl9zaHBfUTE0LAogICAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+
R2FpbnNfUTE2LCBwc0VuY0N0cmwtPnBpdGNoTCwgcHNFbmNDdHJsLT5MYW1iZGFfUTEwLCBwc0Vu
Y0N0cmwtPkxUUF9zY2FsZV9RMTQsIHBzRW5jLT5zQ21uLmFyY2ggKTsKICAgICAgICAgfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9MUENfRklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9MUENf
RklYLmMKaW5kZXggZTExY2RjODZlNjdkMGY4MzZjNzVlNDAzM2I5ZWUyYjI5MTUzOTRhOC4uZTU1
YjYzYWMzMjlhMjE0ZGM1YWM5ZmY0MDg5Mzk0M2UzM2FkMDgzZCAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zp
eGVkL2ZpbmRfTFBDX0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX0xQQ19GSVguYwpAQCAtOTIs
NyArOTIsNyBAQCB2b2lkIHNpbGtfZmluZF9MUENfRklYKAogICAgICAgICAgICAgc2lsa19pbnRl
cnBvbGF0ZSggTkxTRjBfUTE1LCBwc0VuY0MtPnByZXZfTkxTRnFfUTE1LCBOTFNGX1ExNSwgaywg
cHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIgKTsKIAogICAgICAgICAgICAgLyogQ29udmVydCB0byBM
UEMgZm9yIHJlc2lkdWFsIGVuZXJneSBldmFsdWF0aW9uICovCi0gICAgICAgICAgICBzaWxrX05M
U0YyQSggYV90bXBfUTEyLCBOTFNGMF9RMTUsIHBzRW5jQy0+cHJlZGljdExQQ09yZGVyICk7Cisg
ICAgICAgICAgICBzaWxrX05MU0YyQSggYV90bXBfUTEyLCBOTFNGMF9RMTUsIHBzRW5jQy0+cHJl
ZGljdExQQ09yZGVyLCBwc0VuY0MtPmFyY2ggKTsKIAogICAgICAgICAgICAgLyogQ2FsY3VsYXRl
IHJlc2lkdWFsIGVuZXJneSB3aXRoIE5MU0YgaW50ZXJwb2xhdGlvbiAqLwogICAgICAgICAgICAg
c2lsa19MUENfYW5hbHlzaXNfZmlsdGVyKCBMUENfcmVzLCB4LCBhX3RtcF9RMTIsIDIgKiBzdWJm
cl9sZW5ndGgsIHBzRW5jQy0+cHJlZGljdExQQ09yZGVyLCBwc0VuY0MtPmFyY2ggKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9maXhlZC9maW5kX0xUUF9GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX0xUUF9GSVgu
YwppbmRleCAxMzE0YTI4MTM3NWJkNjljNzI3MGNhMjVmZGQ5MWU4OGUzOGMwYzc2Li42MmQ0YWZi
MjUwNzQwNzI2NzExMmVjNDM5NDZhY2VlZWVkYjI1YzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQv
ZmluZF9MVFBfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfTFRQX0ZJWC5jCkBAIC0zMiwyMTQg
KzMyLDY4IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgIm1haW5fRklY
LmgiCiAjaW5jbHVkZSAidHVuaW5nX3BhcmFtZXRlcnMuaCIKIAotLyogSGVhZCByb29tIGZvciBj
b3JyZWxhdGlvbnMgKi8KLSNkZWZpbmUgTFRQX0NPUlJTX0hFQURfUk9PTSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgMgotCi12b2lkIHNpbGtfZml0X0xUUCgKLSAgICBvcHVzX2ludDMyIExU
UF9jb2Vmc19RMTZbIExUUF9PUkRFUiBdLAotICAgIG9wdXNfaW50MTYgTFRQX2NvZWZzX1ExNFsg
TFRQX09SREVSIF0KLSk7Ci0KIHZvaWQgc2lsa19maW5kX0xUUF9GSVgoCi0gICAgb3B1c19pbnQx
NiAgICAgICAgICAgICAgICAgICAgICBiX1ExNFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0s
ICAgICAgLyogTyAgICBMVFAgY29lZnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAg
ICAgICAgICAgICAgICAgIFdMVFBbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRF
UiBdLCAvKiBPICAgIFdlaWdodCBmb3IgTFRQIHF1YW50aXphdGlvbiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgICAgICAgKkxUUHJlZENvZEdhaW5fUTcsICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAg
TFRQIGNvZGluZyBnYWluICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAg
ICByX2xwY1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICByZXNpZHVh
bCBzaWduYWwgYWZ0ZXIgTFBDIHNpZ25hbCArIHN0YXRlIGZvciBmaXJzdCAxMCBtcyAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgIFhYTFRQ
X1ExN1sgTUFYX05CX1NVQkZSICogTFRQX09SREVSICogTFRQX09SREVSIF0sIC8qIE8gICAgQ29y
cmVsYXRpb24gbWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgeFhMVFBfUTE3WyBN
QVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgIC8qIE8gICAgQ29ycmVsYXRpb24gdmVjdG9yICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICByX3B0cltdLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSZXNpZHVhbCBzaWduYWwgYWZ0ZXIgTFBDICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGxhZ1sgTUFYX05CX1NVQkZSIF0sICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIExUUCBsYWdzICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICAgICAgV2dodF9RMTVbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAg
ICAgICAgIC8qIEkgICAgd2VpZ2h0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQg
ICAgICAgICAgICAgICAgICBzdWJmcl9sZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBzdWJmcmFtZSBsZW5ndGggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAg
ICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgbWVtX29mZnNldCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVy
IG9mIHNhbXBsZXMgaW4gTFRQIG1lbW9yeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBjb3Jy
X3JzaGlmdHNbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgLyogTyAgICByaWdodCBzaGlmdHMg
YXBwbGllZCB0byBjb3JyZWxhdGlvbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIHN1YmZyX2xlbmd0
aCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFN1YmZyYW1lIGxlbmd0aCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbmJfc3ViZnIsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAg
aW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKLSAgICBv
cHVzX2ludCAgIGksIGssIGxzaGlmdDsKLSAgICBjb25zdCBvcHVzX2ludDE2ICpyX3B0ciwgKmxh
Z19wdHI7Ci0gICAgb3B1c19pbnQxNiAqYl9RMTRfcHRyOwotCi0gICAgb3B1c19pbnQzMiByZWd1
OwotICAgIG9wdXNfaW50MzIgKldMVFBfcHRyOwotICAgIG9wdXNfaW50MzIgYl9RMTZbIExUUF9P
UkRFUiBdLCBkZWx0YV9iX1ExNFsgTFRQX09SREVSIF0sIGRfUTE0WyBNQVhfTkJfU1VCRlIgXSwg
bnJnWyBNQVhfTkJfU1VCRlIgXSwgZ19RMjY7Ci0gICAgb3B1c19pbnQzMiB3WyBNQVhfTkJfU1VC
RlIgXSwgV0xUUF9tYXgsIG1heF9hYnNfZF9RMTQsIG1heF93X2JpdHM7Ci0KLSAgICBvcHVzX2lu
dDMyIHRlbXAzMiwgZGVub20zMjsKLSAgICBvcHVzX2ludCAgIGV4dHJhX3NoaWZ0czsKLSAgICBv
cHVzX2ludCAgIHJyX3NoaWZ0cywgbWF4UnNoaWZ0cywgbWF4UnNoaWZ0c193eHRyYSwgTFpzOwot
ICAgIG9wdXNfaW50MzIgTFBDX3Jlc19ucmcsIExQQ19MVFBfcmVzX25yZywgZGl2X1ExNjsKLSAg
ICBvcHVzX2ludDMyIFJyWyBMVFBfT1JERVIgXSwgcnJbIE1BWF9OQl9TVUJGUiBdOwotICAgIG9w
dXNfaW50MzIgd2QsIG1fUTEyOwotCi0gICAgYl9RMTRfcHRyID0gYl9RMTQ7Ci0gICAgV0xUUF9w
dHIgID0gV0xUUDsKLSAgICByX3B0ciAgICAgPSAmcl9scGNbIG1lbV9vZmZzZXQgXTsKKyAgICBv
cHVzX2ludCAgIGksIGssIGV4dHJhX3NoaWZ0czsKKyAgICBvcHVzX2ludCAgIHh4X3NoaWZ0cywg
eFhfc2hpZnRzLCBYWF9zaGlmdHM7CisgICAgY29uc3Qgb3B1c19pbnQxNiAqbGFnX3B0cjsKKyAg
ICBvcHVzX2ludDMyICpYWExUUF9RMTdfcHRyLCAqeFhMVFBfUTE3X3B0cjsKKyAgICBvcHVzX2lu
dDMyIHh4LCBucmcsIHRlbXA7CisKKyAgICB4WExUUF9RMTdfcHRyID0geFhMVFBfUTE3OworICAg
IFhYTFRQX1ExN19wdHIgPSBYWExUUF9RMTc7CiAgICAgZm9yKCBrID0gMDsgayA8IG5iX3N1YmZy
OyBrKysgKSB7CiAgICAgICAgIGxhZ19wdHIgPSByX3B0ciAtICggbGFnWyBrIF0gKyBMVFBfT1JE
RVIgLyAyICk7CiAKLSAgICAgICAgc2lsa19zdW1fc3FyX3NoaWZ0KCAmcnJbIGsgXSwgJnJyX3No
aWZ0cywgcl9wdHIsIHN1YmZyX2xlbmd0aCApOyAvKiByclsgayBdIGluIFEoIC1ycl9zaGlmdHMg
KSAqLwotCi0gICAgICAgIC8qIEFzc3VyZSBoZWFkcm9vbSAqLwotICAgICAgICBMWnMgPSBzaWxr
X0NMWjMyKCBycltrXSApOwotICAgICAgICBpZiggTFpzIDwgTFRQX0NPUlJTX0hFQURfUk9PTSAp
IHsKLSAgICAgICAgICAgIHJyWyBrIF0gPSBzaWxrX1JTSElGVF9ST1VORCggcnJbIGsgXSwgTFRQ
X0NPUlJTX0hFQURfUk9PTSAtIExacyApOwotICAgICAgICAgICAgcnJfc2hpZnRzICs9ICggTFRQ
X0NPUlJTX0hFQURfUk9PTSAtIExacyApOwotICAgICAgICB9Ci0gICAgICAgIGNvcnJfcnNoaWZ0
c1sgayBdID0gcnJfc2hpZnRzOwotICAgICAgICBzaWxrX2NvcnJNYXRyaXhfRklYKCBsYWdfcHRy
LCBzdWJmcl9sZW5ndGgsIExUUF9PUkRFUiwgTFRQX0NPUlJTX0hFQURfUk9PTSwgV0xUUF9wdHIs
ICZjb3JyX3JzaGlmdHNbIGsgXSwgYXJjaCApOyAgLyogV0xUUF9maXhfcHRyIGluIFEoIC1jb3Jy
X3JzaGlmdHNbIGsgXSApICovCi0KLSAgICAgICAgLyogVGhlIGNvcnJlbGF0aW9uIHZlY3RvciBh
bHdheXMgaGFzIGxvd2VyIG1heCBhYnMgdmFsdWUgdGhhbiByciBhbmQvb3IgUlIgc28gaGVhZCBy
b29tIGlzIGFzc3VyZWQgKi8KLSAgICAgICAgc2lsa19jb3JyVmVjdG9yX0ZJWCggbGFnX3B0ciwg
cl9wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09SREVSLCBSciwgY29ycl9yc2hpZnRzWyBrIF0sIGFy
Y2ggKTsgIC8qIFJyX2ZpeF9wdHIgICBpbiBRKCAtY29ycl9yc2hpZnRzWyBrIF0gKSAqLwotICAg
ICAgICBpZiggY29ycl9yc2hpZnRzWyBrIF0gPiBycl9zaGlmdHMgKSB7Ci0gICAgICAgICAgICBy
clsgayBdID0gc2lsa19SU0hJRlQoIHJyWyBrIF0sIGNvcnJfcnNoaWZ0c1sgayBdIC0gcnJfc2hp
ZnRzICk7IC8qIHJyWyBrIF0gaW4gUSggLWNvcnJfcnNoaWZ0c1sgayBdICkgKi8KKyAgICAgICAg
c2lsa19zdW1fc3FyX3NoaWZ0KCAmeHgsICZ4eF9zaGlmdHMsIHJfcHRyLCBzdWJmcl9sZW5ndGgg
KyBMVFBfT1JERVIgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogeHggaW4gUSggLXh4
X3NoaWZ0cyApICovCisgICAgICAgIHNpbGtfY29yck1hdHJpeF9GSVgoIGxhZ19wdHIsIHN1YmZy
X2xlbmd0aCwgTFRQX09SREVSLCBYWExUUF9RMTdfcHRyLCAmbnJnLCAmWFhfc2hpZnRzLCBhcmNo
ICk7ICAgIC8qIFhYTFRQX1ExN19wdHIgYW5kIG5yZyBpbiBRKCAtWFhfc2hpZnRzICkgKi8KKyAg
ICAgICAgZXh0cmFfc2hpZnRzID0geHhfc2hpZnRzIC0gWFhfc2hpZnRzOworICAgICAgICBpZigg
ZXh0cmFfc2hpZnRzID4gMCApIHsKKyAgICAgICAgICAgIC8qIFNoaWZ0IFhYICovCisgICAgICAg
ICAgICB4WF9zaGlmdHMgPSB4eF9zaGlmdHM7CisgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwg
TFRQX09SREVSICogTFRQX09SREVSOyBpKysgKSB7CisgICAgICAgICAgICAgICAgWFhMVFBfUTE3
X3B0clsgaSBdID0gc2lsa19SU0hJRlQzMiggWFhMVFBfUTE3X3B0clsgaSBdLCBleHRyYV9zaGlm
dHMgKTsgICAgICAgICAgICAgIC8qIFEoIC14WF9zaGlmdHMgKSAqLworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgbnJnID0gc2lsa19SU0hJRlQzMiggbnJnLCBleHRyYV9zaGlmdHMgKTsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBRKCAteFhfc2hp
ZnRzICkgKi8KKyAgICAgICAgfSBlbHNlIGlmKCBleHRyYV9zaGlmdHMgPCAwICkgeworICAgICAg
ICAgICAgLyogU2hpZnQgeHggKi8KKyAgICAgICAgICAgIHhYX3NoaWZ0cyA9IFhYX3NoaWZ0czsK
KyAgICAgICAgICAgIHh4ID0gc2lsa19SU0hJRlQzMiggeHgsIC1leHRyYV9zaGlmdHMgKTsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUSggLXhYX3No
aWZ0cyApICovCisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICB4WF9zaGlmdHMgPSB4eF9z
aGlmdHM7CiAgICAgICAgIH0KLSAgICAgICAgc2lsa19hc3NlcnQoIHJyWyBrIF0gPj0gMCApOwot
Ci0gICAgICAgIHJlZ3UgPSAxOwotICAgICAgICByZWd1ID0gc2lsa19TTUxBV0IoIHJlZ3UsIHJy
WyBrIF0sIFNJTEtfRklYX0NPTlNUKCBMVFBfREFNUElORy8zLCAxNiApICk7Ci0gICAgICAgIHJl
Z3UgPSBzaWxrX1NNTEFXQiggcmVndSwgbWF0cml4X3B0ciggV0xUUF9wdHIsIDAsIDAsIExUUF9P
UkRFUiApLCBTSUxLX0ZJWF9DT05TVCggTFRQX0RBTVBJTkcvMywgMTYgKSApOwotICAgICAgICBy
ZWd1ID0gc2lsa19TTUxBV0IoIHJlZ3UsIG1hdHJpeF9wdHIoIFdMVFBfcHRyLCBMVFBfT1JERVIt
MSwgTFRQX09SREVSLTEsIExUUF9PUkRFUiApLCBTSUxLX0ZJWF9DT05TVCggTFRQX0RBTVBJTkcv
MywgMTYgKSApOwotICAgICAgICBzaWxrX3JlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZJWCggV0xU
UF9wdHIsICZycltrXSwgcmVndSwgTFRQX09SREVSICk7Ci0KLSAgICAgICAgc2lsa19zb2x2ZV9M
RExfRklYKCBXTFRQX3B0ciwgTFRQX09SREVSLCBSciwgYl9RMTYgKTsgLyogV0xUUF9maXhfcHRy
IGFuZCBScl9maXhfcHRyIGJvdGggaW4gUSgtY29ycl9yc2hpZnRzW2tdKSAqLwotCi0gICAgICAg
IC8qIExpbWl0IGFuZCBzdG9yZSBpbiBRMTQgKi8KLSAgICAgICAgc2lsa19maXRfTFRQKCBiX1Ex
NiwgYl9RMTRfcHRyICk7Ci0KLSAgICAgICAgLyogQ2FsY3VsYXRlIHJlc2lkdWFsIGVuZXJneSAq
LwotICAgICAgICBucmdbIGsgXSA9IHNpbGtfcmVzaWR1YWxfZW5lcmd5MTZfY292YXJfRklYKCBi
X1ExNF9wdHIsIFdMVFBfcHRyLCBSciwgcnJbIGsgXSwgTFRQX09SREVSLCAxNCApOyAvKiBucmdf
Zml4IGluIFEoIC1jb3JyX3JzaGlmdHNbIGsgXSApICovCi0KLSAgICAgICAgLyogdGVtcCA9IFdn
aHRbIGsgXSAvICggbnJnWyBrIF0gKiBXZ2h0WyBrIF0gKyAwLjAxZiAqIHN1YmZyX2xlbmd0aCAp
OyAqLwotICAgICAgICBleHRyYV9zaGlmdHMgPSBzaWxrX21pbl9pbnQoIGNvcnJfcnNoaWZ0c1sg
ayBdLCBMVFBfQ09SUlNfSEVBRF9ST09NICk7Ci0gICAgICAgIGRlbm9tMzIgPSBzaWxrX0xTSElG
VF9TQVQzMiggc2lsa19TTVVMV0IoIG5yZ1sgayBdLCBXZ2h0X1ExNVsgayBdICksIDEgKyBleHRy
YV9zaGlmdHMgKSArIC8qIFEoIC1jb3JyX3JzaGlmdHNbIGsgXSArIGV4dHJhX3NoaWZ0cyApICov
Ci0gICAgICAgICAgICBzaWxrX1JTSElGVCggc2lsa19TTVVMV0IoIChvcHVzX2ludDMyKXN1YmZy
X2xlbmd0aCwgNjU1ICksIGNvcnJfcnNoaWZ0c1sgayBdIC0gZXh0cmFfc2hpZnRzICk7ICAgIC8q
IFEoIC1jb3JyX3JzaGlmdHNbIGsgXSArIGV4dHJhX3NoaWZ0cyApICovCi0gICAgICAgIGRlbm9t
MzIgPSBzaWxrX21heCggZGVub20zMiwgMSApOwotICAgICAgICBzaWxrX2Fzc2VydCggKChvcHVz
X2ludDY0KVdnaHRfUTE1WyBrIF0gPDwgMTYgKSA8IHNpbGtfaW50MzJfTUFYICk7ICAgICAgICAg
ICAgICAgICAgICAgICAvKiBXZ2h0IGFsd2F5cyA8IDAuNSBpbiBRMCAqLwotICAgICAgICB0ZW1w
MzIgPSBzaWxrX0RJVjMyKCBzaWxrX0xTSElGVCggKG9wdXNfaW50MzIpV2dodF9RMTVbIGsgXSwg
MTYgKSwgZGVub20zMiApOyAgICAgICAgICAgICAvKiBRKCAxNSArIDE2ICsgY29ycl9yc2hpZnRz
W2tdIC0gZXh0cmFfc2hpZnRzICkgKi8KLSAgICAgICAgdGVtcDMyID0gc2lsa19SU0hJRlQoIHRl
bXAzMiwgMzEgKyBjb3JyX3JzaGlmdHNbIGsgXSAtIGV4dHJhX3NoaWZ0cyAtIDI2ICk7ICAgICAg
ICAgICAgICAgLyogUTI2ICovCisgICAgICAgIHNpbGtfY29yclZlY3Rvcl9GSVgoIGxhZ19wdHIs
IHJfcHRyLCBzdWJmcl9sZW5ndGgsIExUUF9PUkRFUiwgeFhMVFBfUTE3X3B0ciwgeFhfc2hpZnRz
LCBhcmNoICk7ICAgIC8qIHhYTFRQX1ExN19wdHIgaW4gUSggLXhYX3NoaWZ0cyApICovCiAKLSAg
ICAgICAgLyogTGltaXQgdGVtcCBzdWNoIHRoYXQgdGhlIGJlbG93IHNjYWxpbmcgbmV2ZXIgd3Jh
cHMgYXJvdW5kICovCi0gICAgICAgIFdMVFBfbWF4ID0gMDsKKyAgICAgICAgLyogQXQgdGhpcyBw
b2ludCBhbGwgY29ycmVsYXRpb25zIGFyZSBpbiBRKC14WF9zaGlmdHMpICovCisgICAgICAgIHRl
bXAgPSBzaWxrX1NNTEFXQiggMSwgbnJnLCBTSUxLX0ZJWF9DT05TVCggTFRQX0NPUlJfSU5WX01B
WCwgMTYgKSApOworICAgICAgICB0ZW1wID0gc2lsa19tYXgoIHRlbXAsIHh4ICk7CitUSUMoZGl2
KQorI2lmIDAKICAgICAgICAgZm9yKCBpID0gMDsgaSA8IExUUF9PUkRFUiAqIExUUF9PUkRFUjsg
aSsrICkgewotICAgICAgICAgICAgV0xUUF9tYXggPSBzaWxrX21heCggV0xUUF9wdHJbIGkgXSwg
V0xUUF9tYXggKTsKKyAgICAgICAgICAgIFhYTFRQX1ExN19wdHJbIGkgXSA9IHNpbGtfRElWMzJf
dmFyUSggWFhMVFBfUTE3X3B0clsgaSBdLCB0ZW1wLCAxNyApOwogICAgICAgICB9Ci0gICAgICAg
IGxzaGlmdCA9IHNpbGtfQ0xaMzIoIFdMVFBfbWF4ICkgLSAxIC0gMzsgLyoga2VlcCAzIGJpdHMg
ZnJlZSBmb3IgdnFfbmVhcmVzdF9uZWlnaGJvcl9maXggKi8KLSAgICAgICAgc2lsa19hc3NlcnQo
IDI2IC0gMTggKyBsc2hpZnQgPj0gMCApOwotICAgICAgICBpZiggMjYgLSAxOCArIGxzaGlmdCA8
IDMxICkgewotICAgICAgICAgICAgdGVtcDMyID0gc2lsa19taW5fMzIoIHRlbXAzMiwgc2lsa19M
U0hJRlQoIChvcHVzX2ludDMyKTEsIDI2IC0gMTggKyBsc2hpZnQgKSApOwotICAgICAgICB9Ci0K
LSAgICAgICAgc2lsa19zY2FsZV92ZWN0b3IzMl9RMjZfbHNoaWZ0XzE4KCBXTFRQX3B0ciwgdGVt
cDMyLCBMVFBfT1JERVIgKiBMVFBfT1JERVIgKTsgLyogV0xUUF9wdHIgaW4gUSggMTggLSBjb3Jy
X3JzaGlmdHNbIGsgXSApICovCi0KLSAgICAgICAgd1sgayBdID0gbWF0cml4X3B0ciggV0xUUF9w
dHIsIExUUF9PUkRFUi8yLCBMVFBfT1JERVIvMiwgTFRQX09SREVSICk7IC8qIHcgaW4gUSggMTgg
LSBjb3JyX3JzaGlmdHNbIGsgXSApICovCi0gICAgICAgIHNpbGtfYXNzZXJ0KCB3W2tdID49IDAg
KTsKLQotICAgICAgICByX3B0ciAgICAgKz0gc3ViZnJfbGVuZ3RoOwotICAgICAgICBiX1ExNF9w
dHIgKz0gTFRQX09SREVSOwotICAgICAgICBXTFRQX3B0ciAgKz0gTFRQX09SREVSICogTFRQX09S
REVSOwotICAgIH0KLQotICAgIG1heFJzaGlmdHMgPSAwOwotICAgIGZvciggayA9IDA7IGsgPCBu
Yl9zdWJmcjsgaysrICkgewotICAgICAgICBtYXhSc2hpZnRzID0gc2lsa19tYXhfaW50KCBjb3Jy
X3JzaGlmdHNbIGsgXSwgbWF4UnNoaWZ0cyApOwotICAgIH0KLQotICAgIC8qIENvbXB1dGUgTFRQ
IGNvZGluZyBnYWluICovCi0gICAgaWYoIExUUHJlZENvZEdhaW5fUTcgIT0gTlVMTCApIHsKLSAg
ICAgICAgTFBDX0xUUF9yZXNfbnJnID0gMDsKLSAgICAgICAgTFBDX3Jlc19ucmcgICAgID0gMDsK
LSAgICAgICAgc2lsa19hc3NlcnQoIExUUF9DT1JSU19IRUFEX1JPT00gPj0gMiApOyAvKiBDaGVj
ayB0aGF0IG5vIG92ZXJmbG93IHdpbGwgaGFwcGVuIHdoZW4gYWRkaW5nICovCi0gICAgICAgIGZv
ciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysrICkgewotICAgICAgICAgICAgTFBDX3Jlc19ucmcg
ICAgID0gc2lsa19BREQzMiggTFBDX3Jlc19ucmcsICAgICBzaWxrX1JTSElGVCggc2lsa19BREQz
Miggc2lsa19TTVVMV0IoICByclsgayBdLCBXZ2h0X1ExNVsgayBdICksIDEgKSwgMSArICggbWF4
UnNoaWZ0cyAtIGNvcnJfcnNoaWZ0c1sgayBdICkgKSApOyAvKiBRKCAtbWF4UnNoaWZ0cyApICov
Ci0gICAgICAgICAgICBMUENfTFRQX3Jlc19ucmcgPSBzaWxrX0FERDMyKCBMUENfTFRQX3Jlc19u
cmcsIHNpbGtfUlNISUZUKCBzaWxrX0FERDMyKCBzaWxrX1NNVUxXQiggbnJnWyBrIF0sIFdnaHRf
UTE1WyBrIF0gKSwgMSApLCAxICsgKCBtYXhSc2hpZnRzIC0gY29ycl9yc2hpZnRzWyBrIF0gKSAp
ICk7IC8qIFEoIC1tYXhSc2hpZnRzICkgKi8KLSAgICAgICAgfQotICAgICAgICBMUENfTFRQX3Jl
c19ucmcgPSBzaWxrX21heCggTFBDX0xUUF9yZXNfbnJnLCAxICk7IC8qIGF2b2lkIGRpdmlzaW9u
IGJ5IHplcm8gKi8KLQotICAgICAgICBkaXZfUTE2ID0gc2lsa19ESVYzMl92YXJRKCBMUENfcmVz
X25yZywgTFBDX0xUUF9yZXNfbnJnLCAxNiApOwotICAgICAgICAqTFRQcmVkQ29kR2Fpbl9RNyA9
ICggb3B1c19pbnQgKXNpbGtfU01VTEJCKCAzLCBzaWxrX2xpbjJsb2coIGRpdl9RMTYgKSAtICgg
MTYgPDwgNyApICk7Ci0KLSAgICAgICAgc2lsa19hc3NlcnQoICpMVFByZWRDb2RHYWluX1E3ID09
ICggb3B1c19pbnQgKXNpbGtfU0FUMTYoIHNpbGtfTVVMKCAzLCBzaWxrX2xpbjJsb2coIGRpdl9R
MTYgKSAtICggMTYgPDwgNyApICkgKSApOwotICAgIH0KLQotICAgIC8qIHNtb290aGluZyAqLwot
ICAgIC8qIGQgPSBzdW0oIEIsIDEgKTsgKi8KLSAgICBiX1ExNF9wdHIgPSBiX1ExNDsKLSAgICBm
b3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgZF9RMTRbIGsgXSA9IDA7
CiAgICAgICAgIGZvciggaSA9IDA7IGkgPCBMVFBfT1JERVI7IGkrKyApIHsKLSAgICAgICAgICAg
IGRfUTE0WyBrIF0gKz0gYl9RMTRfcHRyWyBpIF07Ci0gICAgICAgIH0KLSAgICAgICAgYl9RMTRf
cHRyICs9IExUUF9PUkRFUjsKLSAgICB9Ci0KLSAgICAvKiBtID0gKCB3ICogZCcgKSAvICggc3Vt
KCB3ICkgKyAxZS0zICk7ICovCi0KLSAgICAvKiBGaW5kIG1heGltdW0gYWJzb2x1dGUgdmFsdWUg
b2YgZF9RMTQgYW5kIHRoZSBiaXRzIHVzZWQgYnkgdyBpbiBRMCAqLwotICAgIG1heF9hYnNfZF9R
MTQgPSAwOwotICAgIG1heF93X2JpdHMgICAgPSAwOwotICAgIGZvciggayA9IDA7IGsgPCBuYl9z
dWJmcjsgaysrICkgewotICAgICAgICBtYXhfYWJzX2RfUTE0ID0gc2lsa19tYXhfMzIoIG1heF9h
YnNfZF9RMTQsIHNpbGtfYWJzKCBkX1ExNFsgayBdICkgKTsKLSAgICAgICAgLyogd1sgayBdIGlz
IGluIFEoIDE4IC0gY29ycl9yc2hpZnRzWyBrIF0gKSAqLwotICAgICAgICAvKiBGaW5kIGJpdHMg
bmVlZGVkIGluIFEoIDE4IC0gbWF4UnNoaWZ0cyApICovCi0gICAgICAgIG1heF93X2JpdHMgPSBz
aWxrX21heF8zMiggbWF4X3dfYml0cywgMzIgLSBzaWxrX0NMWjMyKCB3WyBrIF0gKSArIGNvcnJf
cnNoaWZ0c1sgayBdIC0gbWF4UnNoaWZ0cyApOwotICAgIH0KLQotICAgIC8qIG1heF9hYnNfZF9R
MTQgPSAoNSA8PCAxNSk7IHdvcnN0IGNhc2UsIGkuZS4gTFRQX09SREVSICogLXNpbGtfaW50MTZf
TUlOICovCi0gICAgc2lsa19hc3NlcnQoIG1heF9hYnNfZF9RMTQgPD0gKCA1IDw8IDE1ICkgKTsK
LQotICAgIC8qIEhvdyBtYW55IGJpdHMgaXMgbmVlZGVkIGZvciB3KmQnIGluIFEoIDE4IC0gbWF4
UnNoaWZ0cyApIGluIHRoZSB3b3JzdCBjYXNlLCBvZiBhbGwgZF9RMTQncyBiZWluZyBlcXVhbCB0
byBtYXhfYWJzX2RfUTE0ICovCi0gICAgZXh0cmFfc2hpZnRzID0gbWF4X3dfYml0cyArIDMyIC0g
c2lsa19DTFozMiggbWF4X2Fic19kX1ExNCApIC0gMTQ7Ci0KLSAgICAvKiBTdWJ0cmFjdCB3aGF0
IHdlIGdvdCBhdmFpbGFibGU7IGJpdHMgaW4gb3V0cHV0IHZhciBwbHVzIG1heFJzaGlmdHMgKi8K
LSAgICBleHRyYV9zaGlmdHMgLT0gKCAzMiAtIDEgLSAyICsgbWF4UnNoaWZ0cyApOyAvKiBLZWVw
IHNpZ24gYml0IGZyZWUgYXMgd2VsbCBhcyAyIGJpdHMgZm9yIGFjY3VtdWxhdGlvbiAqLwotICAg
IGV4dHJhX3NoaWZ0cyA9IHNpbGtfbWF4X2ludCggZXh0cmFfc2hpZnRzLCAwICk7Ci0KLSAgICBt
YXhSc2hpZnRzX3d4dHJhID0gbWF4UnNoaWZ0cyArIGV4dHJhX3NoaWZ0czsKLQotICAgIHRlbXAz
MiA9IHNpbGtfUlNISUZUKCAyNjIsIG1heFJzaGlmdHMgKyBleHRyYV9zaGlmdHMgKSArIDE7IC8q
IDFlLTNmIGluIFEoIDE4IC0gKG1heFJzaGlmdHMgKyBleHRyYV9zaGlmdHMpICkgKi8KLSAgICB3
ZCA9IDA7Ci0gICAgZm9yKCBrID0gMDsgayA8IG5iX3N1YmZyOyBrKysgKSB7Ci0gICAgICAgIC8q
IHcgaGFzIGF0IGxlYXN0IDIgYml0cyBvZiBoZWFkcm9vbSBzbyBubyBvdmVyZmxvdyBzaG91bGQg
aGFwcGVuICovCi0gICAgICAgIHRlbXAzMiA9IHNpbGtfQUREMzIoIHRlbXAzMiwgICAgICAgICAg
ICAgICAgICAgICBzaWxrX1JTSElGVCggd1sgayBdLCBtYXhSc2hpZnRzX3d4dHJhIC0gY29ycl9y
c2hpZnRzWyBrIF0gKSApOyAgICAgICAgICAgICAgICAgICAgICAvKiBRKCAxOCAtIG1heFJzaGlm
dHNfd3h0cmEgKSAqLwotICAgICAgICB3ZCAgICAgPSBzaWxrX0FERDMyKCB3ZCwgc2lsa19MU0hJ
RlQoIHNpbGtfU01VTFdXKCBzaWxrX1JTSElGVCggd1sgayBdLCBtYXhSc2hpZnRzX3d4dHJhIC0g
Y29ycl9yc2hpZnRzWyBrIF0gKSwgZF9RMTRbIGsgXSApLCAyICkgKTsgLyogUSggMTggLSBtYXhS
c2hpZnRzX3d4dHJhICkgKi8KLSAgICB9Ci0gICAgbV9RMTIgPSBzaWxrX0RJVjMyX3ZhclEoIHdk
LCB0ZW1wMzIsIDEyICk7Ci0KLSAgICBiX1ExNF9wdHIgPSBiX1ExNDsKLSAgICBmb3IoIGsgPSAw
OyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgLyogd19maXhbIGsgXSBmcm9tIFEoIDE4
IC0gY29ycl9yc2hpZnRzWyBrIF0gKSB0byBRKCAxNiApICovCi0gICAgICAgIGlmKCAyIC0gY29y
cl9yc2hpZnRzW2tdID4gMCApIHsKLSAgICAgICAgICAgIHRlbXAzMiA9IHNpbGtfUlNISUZUKCB3
WyBrIF0sIDIgLSBjb3JyX3JzaGlmdHNbIGsgXSApOwotICAgICAgICB9IGVsc2UgewotICAgICAg
ICAgICAgdGVtcDMyID0gc2lsa19MU0hJRlRfU0FUMzIoIHdbIGsgXSwgY29ycl9yc2hpZnRzWyBr
IF0gLSAyICk7CisgICAgICAgICAgICB4WExUUF9RMTdfcHRyWyBpIF0gPSBzaWxrX0RJVjMyX3Zh
clEoIHhYTFRQX1ExN19wdHJbIGkgXSwgdGVtcCwgMTcgKTsKICAgICAgICAgfQotCi0gICAgICAg
IGdfUTI2ID0gc2lsa19NVUwoCi0gICAgICAgICAgICBzaWxrX0RJVjMyKAotICAgICAgICAgICAg
ICAgIFNJTEtfRklYX0NPTlNUKCBMVFBfU01PT1RISU5HLCAyNiApLAotICAgICAgICAgICAgICAg
IHNpbGtfUlNISUZUKCBTSUxLX0ZJWF9DT05TVCggTFRQX1NNT09USElORywgMjYgKSwgMTAgKSAr
IHRlbXAzMiApLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUTEwICovCi0gICAgICAgICAg
ICBzaWxrX0xTSElGVF9TQVQzMiggc2lsa19TVUJfU0FUMzIoIChvcHVzX2ludDMyKW1fUTEyLCBz
aWxrX1JTSElGVCggZF9RMTRbIGsgXSwgMiApICksIDQgKSApOyAgICAvKiBRMTYgKi8KLQotICAg
ICAgICB0ZW1wMzIgPSAwOwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSOyBpKysg
KSB7Ci0gICAgICAgICAgICBkZWx0YV9iX1ExNFsgaSBdID0gc2lsa19tYXhfMTYoIGJfUTE0X3B0
clsgaSBdLCAxNjM4ICk7ICAgICAvKiAxNjM4X1ExNCA9IDAuMV9RMCAqLwotICAgICAgICAgICAg
dGVtcDMyICs9IGRlbHRhX2JfUTE0WyBpIF07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogUTE0ICovCisjZWxzZQorICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSICog
TFRQX09SREVSOyBpKysgKSB7CisgICAgICAgICAgICBYWExUUF9RMTdfcHRyWyBpIF0gPSAob3B1
c19pbnQzMikoIHNpbGtfTFNISUZUNjQoIChvcHVzX2ludDY0KVhYTFRQX1ExN19wdHJbIGkgXSwg
MTcgKSAvIHRlbXAgKTsKICAgICAgICAgfQotICAgICAgICB0ZW1wMzIgPSBzaWxrX0RJVjMyKCBn
X1EyNiwgdGVtcDMyICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUTE0IC0+IFExMiAq
LwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSOyBpKysgKSB7Ci0gICAgICAgICAg
ICBiX1ExNF9wdHJbIGkgXSA9IHNpbGtfTElNSVRfMzIoIChvcHVzX2ludDMyKWJfUTE0X3B0clsg
aSBdICsgc2lsa19TTVVMV0IoIHNpbGtfTFNISUZUX1NBVDMyKCB0ZW1wMzIsIDQgKSwgZGVsdGFf
Yl9RMTRbIGkgXSApLCAtMTYwMDAsIDI4MDAwICk7CisgICAgICAgICAgICB4WExUUF9RMTdfcHRy
WyBpIF0gPSAob3B1c19pbnQzMikoIHNpbGtfTFNISUZUNjQoIChvcHVzX2ludDY0KXhYTFRQX1Ex
N19wdHJbIGkgXSwgMTcgKSAvIHRlbXAgKTsKICAgICAgICAgfQotICAgICAgICBiX1ExNF9wdHIg
Kz0gTFRQX09SREVSOwotICAgIH0KLX0KLQotdm9pZCBzaWxrX2ZpdF9MVFAoCi0gICAgb3B1c19p
bnQzMiBMVFBfY29lZnNfUTE2WyBMVFBfT1JERVIgXSwKLSAgICBvcHVzX2ludDE2IExUUF9jb2Vm
c19RMTRbIExUUF9PUkRFUiBdCi0pCi17Ci0gICAgb3B1c19pbnQgaTsKLQotICAgIGZvciggaSA9
IDA7IGkgPCBMVFBfT1JERVI7IGkrKyApIHsKLSAgICAgICAgTFRQX2NvZWZzX1ExNFsgaSBdID0g
KG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIExUUF9jb2Vmc19RMTZb
IGkgXSwgMiApICk7CisjZW5kaWYKK1RPQyhkaXYpCisgICAgICAgIHJfcHRyICAgICAgICAgKz0g
c3ViZnJfbGVuZ3RoOworICAgICAgICBYWExUUF9RMTdfcHRyICs9IExUUF9PUkRFUiAqIExUUF9P
UkRFUjsKKyAgICAgICAgeFhMVFBfUTE3X3B0ciArPSBMVFBfT1JERVI7CiAgICAgfQogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfcGl0Y2hfbGFnc19GSVguYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5k
X3BpdGNoX2xhZ3NfRklYLmMKaW5kZXggYjg0NDBhODI0N2EzMWNlNGNmNzY4ZjZmMTQ4ZGQ0YTll
NzVmMzUzMy4uOTMwM2U5ZGIxZjMzOGNjYzE3NzFlOTBjYjZiNTNjMDVlNjA1NDdkYiAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2ZpeGVkL2ZpbmRfcGl0Y2hfbGFnc19GSVguYworKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmlu
ZF9waXRjaF9sYWdzX0ZJWC5jCkBAIC00NCw3ICs0NCw3IEBAIHZvaWQgc2lsa19maW5kX3BpdGNo
X2xhZ3NfRklYKAogewogICAgIG9wdXNfaW50ICAgYnVmX2xlbiwgaSwgc2NhbGU7CiAgICAgb3B1
c19pbnQzMiB0aHJobGRfUTEzLCByZXNfbnJnOwotICAgIGNvbnN0IG9wdXNfaW50MTYgKnhfYnVm
LCAqeF9idWZfcHRyOworICAgIGNvbnN0IG9wdXNfaW50MTYgKnhfcHRyOwogICAgIFZBUkRFQ0wo
IG9wdXNfaW50MTYsIFdzaWcgKTsKICAgICBvcHVzX2ludDE2ICpXc2lnX3B0cjsKICAgICBvcHVz
X2ludDMyIGF1dG9fY29yclsgTUFYX0ZJTkRfUElUQ0hfTFBDX09SREVSICsgMSBdOwpAQCAtNjEs
OCArNjEsNiBAQCB2b2lkIHNpbGtfZmluZF9waXRjaF9sYWdzX0ZJWCgKICAgICAvKiBTYWZldHkg
Y2hlY2sgKi8KICAgICBzaWxrX2Fzc2VydCggYnVmX2xlbiA+PSBwc0VuYy0+c0Ntbi5waXRjaF9M
UENfd2luX2xlbmd0aCApOwogCi0gICAgeF9idWYgPSB4IC0gcHNFbmMtPnNDbW4ubHRwX21lbV9s
ZW5ndGg7Ci0KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAg
ICAvKiBFc3RpbWF0ZSBMUEMgQVIgY29lZmZpY2llbnRzICAgICAgKi8KICAgICAvKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KQEAgLTcyLDE5ICs3MCwxOSBAQCB2b2lkIHNp
bGtfZmluZF9waXRjaF9sYWdzX0ZJWCgKICAgICBBTExPQyggV3NpZywgcHNFbmMtPnNDbW4ucGl0
Y2hfTFBDX3dpbl9sZW5ndGgsIG9wdXNfaW50MTYgKTsKIAogICAgIC8qIEZpcnN0IExBX0xUUCBz
YW1wbGVzICovCi0gICAgeF9idWZfcHRyID0geF9idWYgKyBidWZfbGVuIC0gcHNFbmMtPnNDbW4u
cGl0Y2hfTFBDX3dpbl9sZW5ndGg7CisgICAgeF9wdHIgPSB4ICsgYnVmX2xlbiAtIHBzRW5jLT5z
Q21uLnBpdGNoX0xQQ193aW5fbGVuZ3RoOwogICAgIFdzaWdfcHRyICA9IFdzaWc7Ci0gICAgc2ls
a19hcHBseV9zaW5lX3dpbmRvdyggV3NpZ19wdHIsIHhfYnVmX3B0ciwgMSwgcHNFbmMtPnNDbW4u
bGFfcGl0Y2ggKTsKKyAgICBzaWxrX2FwcGx5X3NpbmVfd2luZG93KCBXc2lnX3B0ciwgeF9wdHIs
IDEsIHBzRW5jLT5zQ21uLmxhX3BpdGNoICk7CiAKICAgICAvKiBNaWRkbGUgdW4gLSB3aW5kb3dl
ZCBzYW1wbGVzICovCiAgICAgV3NpZ19wdHIgICs9IHBzRW5jLT5zQ21uLmxhX3BpdGNoOwotICAg
IHhfYnVmX3B0ciArPSBwc0VuYy0+c0Ntbi5sYV9waXRjaDsKLSAgICBzaWxrX21lbWNweSggV3Np
Z19wdHIsIHhfYnVmX3B0ciwgKCBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCAtIHNp
bGtfTFNISUZUKCBwc0VuYy0+c0Ntbi5sYV9waXRjaCwgMSApICkgKiBzaXplb2YoIG9wdXNfaW50
MTYgKSApOworICAgIHhfcHRyICs9IHBzRW5jLT5zQ21uLmxhX3BpdGNoOworICAgIHNpbGtfbWVt
Y3B5KCBXc2lnX3B0ciwgeF9wdHIsICggcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGgg
LSBzaWxrX0xTSElGVCggcHNFbmMtPnNDbW4ubGFfcGl0Y2gsIDEgKSApICogc2l6ZW9mKCBvcHVz
X2ludDE2ICkgKTsKIAogICAgIC8qIExhc3QgTEFfTFRQIHNhbXBsZXMgKi8KICAgICBXc2lnX3B0
ciAgKz0gcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGggLSBzaWxrX0xTSElGVCggcHNF
bmMtPnNDbW4ubGFfcGl0Y2gsIDEgKTsKLSAgICB4X2J1Zl9wdHIgKz0gcHNFbmMtPnNDbW4ucGl0
Y2hfTFBDX3dpbl9sZW5ndGggLSBzaWxrX0xTSElGVCggcHNFbmMtPnNDbW4ubGFfcGl0Y2gsIDEg
KTsKLSAgICBzaWxrX2FwcGx5X3NpbmVfd2luZG93KCBXc2lnX3B0ciwgeF9idWZfcHRyLCAyLCBw
c0VuYy0+c0Ntbi5sYV9waXRjaCApOworICAgIHhfcHRyICs9IHBzRW5jLT5zQ21uLnBpdGNoX0xQ
Q193aW5fbGVuZ3RoIC0gc2lsa19MU0hJRlQoIHBzRW5jLT5zQ21uLmxhX3BpdGNoLCAxICk7Cisg
ICAgc2lsa19hcHBseV9zaW5lX3dpbmRvdyggV3NpZ19wdHIsIHhfcHRyLCAyLCBwc0VuYy0+c0Nt
bi5sYV9waXRjaCApOwogCiAgICAgLyogQ2FsY3VsYXRlIGF1dG9jb3JyZWxhdGlvbiBzZXF1ZW5j
ZSAqLwogICAgIHNpbGtfYXV0b2NvcnIoIGF1dG9fY29yciwgJnNjYWxlLCBXc2lnLCBwc0VuYy0+
c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCwgcHNFbmMtPnNDbW4ucGl0Y2hFc3RpbWF0aW9uTFBD
T3JkZXIgKyAxLCBhcmNoICk7CkBAIC0xMTIsNyArMTEwLDcgQEAgdm9pZCBzaWxrX2ZpbmRfcGl0
Y2hfbGFnc19GSVgoCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqLwogICAgIC8qIExQQyBhbmFseXNpcyBmaWx0ZXJpbmcgICAgICAgICAgICAgICAgKi8KICAg
ICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgc2lsa19M
UENfYW5hbHlzaXNfZmlsdGVyKCByZXMsIHhfYnVmLCBBX1ExMiwgYnVmX2xlbiwgcHNFbmMtPnND
bW4ucGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIsIHBzRW5jLT5zQ21uLmFyY2ggKTsKKyAgICBzaWxr
X0xQQ19hbmFseXNpc19maWx0ZXIoIHJlcywgeCwgQV9RMTIsIGJ1Zl9sZW4sIHBzRW5jLT5zQ21u
LnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyLCBwc0VuYy0+c0Ntbi5hcmNoICk7CiAKICAgICBpZigg
cHNFbmMtPnNDbW4uaW5kaWNlcy5zaWduYWxUeXBlICE9IFRZUEVfTk9fVk9JQ0VfQUNUSVZJVFkg
JiYgcHNFbmMtPnNDbW4uZmlyc3RfZnJhbWVfYWZ0ZXJfcmVzZXQgPT0gMCApIHsKICAgICAgICAg
LyogVGhyZXNob2xkIGZvciBwaXRjaCBlc3RpbWF0b3IgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhl
ZC9maW5kX3ByZWRfY29lZnNfRklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9wcmVkX2NvZWZzX0ZJWC5j
CmluZGV4IGQzMDhlOWNmNWZlNjA5ZTE3YjA2YjRkMTMzOTE5MzEzNGNjY2YzZjguLjI0YzZhYWIz
YTc3Yzk1ZTFjOTA0NjZlM2NmYjEzMWU1MmI4MWUxMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9m
aW5kX3ByZWRfY29lZnNfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfcHJlZF9jb2Vmc19GSVgu
YwpAQCAtNDEsMTMgKzQxLDEyIEBAIHZvaWQgc2lsa19maW5kX3ByZWRfY29lZnNfRklYKAogKQog
ewogICAgIG9wdXNfaW50ICAgICAgICAgaTsKLSAgICBvcHVzX2ludDMyICAgICAgIGludkdhaW5z
X1ExNlsgTUFYX05CX1NVQkZSIF0sIGxvY2FsX2dhaW5zWyBNQVhfTkJfU1VCRlIgXSwgV2dodF9R
MTVbIE1BWF9OQl9TVUJGUiBdOworICAgIG9wdXNfaW50MzIgICAgICAgaW52R2FpbnNfUTE2WyBN
QVhfTkJfU1VCRlIgXSwgbG9jYWxfZ2FpbnNbIE1BWF9OQl9TVUJGUiBdOwogICAgIG9wdXNfaW50
MTYgICAgICAgTkxTRl9RMTVbIE1BWF9MUENfT1JERVIgXTsKICAgICBjb25zdCBvcHVzX2ludDE2
ICp4X3B0cjsKICAgICBvcHVzX2ludDE2ICAgICAgICp4X3ByZV9wdHI7CiAgICAgVkFSREVDTCgg
b3B1c19pbnQxNiwgTFBDX2luX3ByZSApOwotICAgIG9wdXNfaW50MzIgICAgICAgdG1wLCBtaW5f
Z2Fpbl9RMTYsIG1pbkludkdhaW5fUTMwOwotICAgIG9wdXNfaW50ICAgICAgICAgTFRQX2NvcnJz
X3JzaGlmdFsgTUFYX05CX1NVQkZSIF07CisgICAgb3B1c19pbnQzMiAgICAgICBtaW5fZ2Fpbl9R
MTYsIG1pbkludkdhaW5fUTMwOwogICAgIFNBVkVfU1RBQ0s7CiAKICAgICAvKiB3ZWlnaHRpbmcg
Zm9yIHdlaWdodGVkIGxlYXN0IHNxdWFyZXMgKi8KQEAgLTYxLDEzICs2MCwxMSBAQCB2b2lkIHNp
bGtfZmluZF9wcmVkX2NvZWZzX0ZJWCgKICAgICAgICAgLyogSW52ZXJ0IGFuZCBub3JtYWxpemUg
Z2FpbnMsIGFuZCBlbnN1cmUgdGhhdCBtYXhpbXVtIGludkdhaW5zX1ExNiBpcyB3aXRoaW4gcmFu
Z2Ugb2YgYSAxNiBiaXQgaW50ICovCiAgICAgICAgIGludkdhaW5zX1ExNlsgaSBdID0gc2lsa19E
SVYzMl92YXJRKCBtaW5fZ2Fpbl9RMTYsIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBpIF0sIDE2IC0g
MiApOwogCi0gICAgICAgIC8qIEVuc3VyZSBXZ2h0X1ExNSBhIG1pbmltdW0gdmFsdWUgMSAqLwot
ICAgICAgICBpbnZHYWluc19RMTZbIGkgXSA9IHNpbGtfbWF4KCBpbnZHYWluc19RMTZbIGkgXSwg
MzYzICk7CisgICAgICAgIC8qIExpbWl0IGludmVyc2UgKi8KKyAgICAgICAgaW52R2FpbnNfUTE2
WyBpIF0gPSBzaWxrX21heCggaW52R2FpbnNfUTE2WyBpIF0sIDEwMCApOwogCiAgICAgICAgIC8q
IFNxdWFyZSB0aGUgaW52ZXJ0ZWQgZ2FpbnMgKi8KICAgICAgICAgc2lsa19hc3NlcnQoIGludkdh
aW5zX1ExNlsgaSBdID09IHNpbGtfU0FUMTYoIGludkdhaW5zX1ExNlsgaSBdICkgKTsKLSAgICAg
ICAgdG1wID0gc2lsa19TTVVMV0IoIGludkdhaW5zX1ExNlsgaSBdLCBpbnZHYWluc19RMTZbIGkg
XSApOwotICAgICAgICBXZ2h0X1ExNVsgaSBdID0gc2lsa19SU0hJRlQoIHRtcCwgMSApOwogCiAg
ICAgICAgIC8qIEludmVydCB0aGUgaW52ZXJ0ZWQgYW5kIG5vcm1hbGl6ZWQgZ2FpbnMgKi8KICAg
ICAgICAgbG9jYWxfZ2FpbnNbIGkgXSA9IHNpbGtfRElWMzIoICggKG9wdXNfaW50MzIpMSA8PCAx
NiApLCBpbnZHYWluc19RMTZbIGkgXSApOwpAQCAtNzcsMjQgKzc0LDI0IEBAIHZvaWQgc2lsa19m
aW5kX3ByZWRfY29lZnNfRklYKAogICAgICAgICAgICBwc0VuYy0+c0Ntbi5uYl9zdWJmciAqIHBz
RW5jLT5zQ21uLnByZWRpY3RMUENPcmRlcgogICAgICAgICAgICAgICAgKyBwc0VuYy0+c0Ntbi5m
cmFtZV9sZW5ndGgsIG9wdXNfaW50MTYgKTsKICAgICBpZiggcHNFbmMtPnNDbW4uaW5kaWNlcy5z
aWduYWxUeXBlID09IFRZUEVfVk9JQ0VEICkgewotICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMy
LCBXTFRQICk7CisgICAgICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIHhYTFRQX1ExNyApOworICAg
ICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBYWExUUF9RMTcgKTsKIAogICAgICAgICAvKioqKioq
KioqKi8KICAgICAgICAgLyogVk9JQ0VEICovCiAgICAgICAgIC8qKioqKioqKioqLwogICAgICAg
ICBzaWxrX2Fzc2VydCggcHNFbmMtPnNDbW4ubHRwX21lbV9sZW5ndGggLSBwc0VuYy0+c0Ntbi5w
cmVkaWN0TFBDT3JkZXIgPj0gcHNFbmNDdHJsLT5waXRjaExbIDAgXSArIExUUF9PUkRFUiAvIDIg
KTsKIAotICAgICAgICBBTExPQyggV0xUUCwgcHNFbmMtPnNDbW4ubmJfc3ViZnIgKiBMVFBfT1JE
RVIgKiBMVFBfT1JERVIsIG9wdXNfaW50MzIgKTsKKyAgICAgICAgQUxMT0MoIHhYTFRQX1ExNywg
cHNFbmMtPnNDbW4ubmJfc3ViZnIgKiBMVFBfT1JERVIsIG9wdXNfaW50MzIgKTsKKyAgICAgICAg
QUxMT0MoIFhYTFRQX1ExNywgcHNFbmMtPnNDbW4ubmJfc3ViZnIgKiBMVFBfT1JERVIgKiBMVFBf
T1JERVIsIG9wdXNfaW50MzIgKTsKIAogICAgICAgICAvKiBMVFAgYW5hbHlzaXMgKi8KLSAgICAg
ICAgc2lsa19maW5kX0xUUF9GSVgoIHBzRW5jQ3RybC0+TFRQQ29lZl9RMTQsIFdMVFAsICZwc0Vu
Y0N0cmwtPkxUUHJlZENvZEdhaW5fUTcsCi0gICAgICAgICAgICByZXNfcGl0Y2gsIHBzRW5jQ3Ry
bC0+cGl0Y2hMLCBXZ2h0X1ExNSwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoLAotICAgICAgICAg
ICAgcHNFbmMtPnNDbW4ubmJfc3ViZnIsIHBzRW5jLT5zQ21uLmx0cF9tZW1fbGVuZ3RoLCBMVFBf
Y29ycnNfcnNoaWZ0LCBwc0VuYy0+c0Ntbi5hcmNoICk7CisgICAgICAgIHNpbGtfZmluZF9MVFBf
RklYKCBYWExUUF9RMTcsIHhYTFRQX1ExNywgcmVzX3BpdGNoLAorICAgICAgICAgICAgcHNFbmND
dHJsLT5waXRjaEwsIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCwgcHNFbmMtPnNDbW4ubmJfc3Vi
ZnIsIHBzRW5jLT5zQ21uLmFyY2ggKTsKIAogICAgICAgICAvKiBRdWFudGl6ZSBMVFAgZ2FpbiBw
YXJhbWV0ZXJzICovCiAgICAgICAgIHNpbGtfcXVhbnRfTFRQX2dhaW5zKCBwc0VuY0N0cmwtPkxU
UENvZWZfUTE0LCBwc0VuYy0+c0Ntbi5pbmRpY2VzLkxUUEluZGV4LCAmcHNFbmMtPnNDbW4uaW5k
aWNlcy5QRVJJbmRleCwKLSAgICAgICAgICAgICZwc0VuYy0+c0Ntbi5zdW1fbG9nX2dhaW5fUTcs
IFdMVFAsIHBzRW5jLT5zQ21uLm11X0xUUF9ROSwgcHNFbmMtPnNDbW4uTFRQUXVhbnRMb3dDb21w
bGV4aXR5LCBwc0VuYy0+c0Ntbi5uYl9zdWJmciwKLSAgICAgICAgICAgIHBzRW5jLT5zQ21uLmFy
Y2gpOworICAgICAgICAgICAgJnBzRW5jLT5zQ21uLnN1bV9sb2dfZ2Fpbl9RNywgJnBzRW5jQ3Ry
bC0+TFRQcmVkQ29kR2Fpbl9RNywgWFhMVFBfUTE3LCB4WExUUF9RMTcsIHBzRW5jLT5zQ21uLnN1
YmZyX2xlbmd0aCwgcHNFbmMtPnNDbW4ubmJfc3ViZnIsIHBzRW5jLT5zQ21uLmFyY2ggKTsKIAog
ICAgICAgICAvKiBDb250cm9sIExUUCBzY2FsaW5nICovCiAgICAgICAgIHNpbGtfTFRQX3NjYWxl
X2N0cmxfRklYKCBwc0VuYywgcHNFbmNDdHJsLCBjb25kQ29kaW5nICk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZml4ZWQvazJhX0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2syYV9GSVguYwppbmRleCA1ZmVlNTk5YmNi
NzQzMDVhMWQ0NWM0MWU4Nzk1YTBlZTNmOWNiNWQ5Li41NDlmNmVhZGFhMjlkZTg1YmZkNGMyNjdj
NzkyNTljNmMxMTRhOWQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvazJhX0ZJWC5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9maXhlZC9rMmFfRklYLmMKQEAgLTM5LDE0ICszOSwxNSBAQCB2b2lkIHNpbGtfazJhKAogKQog
ewogICAgIG9wdXNfaW50ICAgaywgbjsKLSAgICBvcHVzX2ludDMyIEF0bXBbIFNJTEtfTUFYX09S
REVSX0xQQyBdOworICAgIG9wdXNfaW50MzIgcmMsIHRtcDEsIHRtcDI7CiAKICAgICBmb3IoIGsg
PSAwOyBrIDwgb3JkZXI7IGsrKyApIHsKLSAgICAgICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyAp
IHsKLSAgICAgICAgICAgIEF0bXBbIG4gXSA9IEFfUTI0WyBuIF07Ci0gICAgICAgIH0KLSAgICAg
ICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyApIHsKLSAgICAgICAgICAgIEFfUTI0WyBuIF0gPSBz
aWxrX1NNTEFXQiggQV9RMjRbIG4gXSwgc2lsa19MU0hJRlQoIEF0bXBbIGsgLSBuIC0gMSBdLCAx
ICksIHJjX1ExNVsgayBdICk7CisgICAgICAgIHJjID0gcmNfUTE1WyBrIF07CisgICAgICAgIGZv
ciggbiA9IDA7IG4gPCAoayArIDEpID4+IDE7IG4rKyApIHsKKyAgICAgICAgICAgIHRtcDEgPSBB
X1EyNFsgbiBdOworICAgICAgICAgICAgdG1wMiA9IEFfUTI0WyBrIC0gbiAtIDEgXTsKKyAgICAg
ICAgICAgIEFfUTI0WyBuIF0gICAgICAgICA9IHNpbGtfU01MQVdCKCB0bXAxLCBzaWxrX0xTSElG
VCggdG1wMiwgMSApLCByYyApOworICAgICAgICAgICAgQV9RMjRbIGsgLSBuIC0gMSBdID0gc2ls
a19TTUxBV0IoIHRtcDIsIHNpbGtfTFNISUZUKCB0bXAxLCAxICksIHJjICk7CiAgICAgICAgIH0K
ICAgICAgICAgQV9RMjRbIGsgXSA9IC1zaWxrX0xTSElGVCggKG9wdXNfaW50MzIpcmNfUTE1WyBr
IF0sIDkgKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvazJhX1ExNl9GSVguYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9maXhlZC9rMmFfUTE2X0ZJWC5jCmluZGV4IDNiMDM5ODc1NDQ2YTEzODg2YTliMjJlYTFlMmIw
ZjU0YzIwNjJhMDUuLjE1OTVhYTYyMTI2NjI1NzUwNzA1YjVkNDdiNDJiZGM1ODZmMDU5NDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9maXhlZC9rMmFfUTE2X0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9rMmFfUTE2
X0ZJWC5jCkBAIC0zOSwxNSArMzksMTYgQEAgdm9pZCBzaWxrX2syYV9RMTYoCiApCiB7CiAgICAg
b3B1c19pbnQgICBrLCBuOwotICAgIG9wdXNfaW50MzIgQXRtcFsgU0lMS19NQVhfT1JERVJfTFBD
IF07CisgICAgb3B1c19pbnQzMiByYywgdG1wMSwgdG1wMjsKIAogICAgIGZvciggayA9IDA7IGsg
PCBvcmRlcjsgaysrICkgewotICAgICAgICBmb3IoIG4gPSAwOyBuIDwgazsgbisrICkgewotICAg
ICAgICAgICAgQXRtcFsgbiBdID0gQV9RMjRbIG4gXTsKKyAgICAgICAgcmMgPSByY19RMTZbIGsg
XTsKKyAgICAgICAgZm9yKCBuID0gMDsgbiA8IChrICsgMSkgPj4gMTsgbisrICkgeworICAgICAg
ICAgICAgdG1wMSA9IEFfUTI0WyBuIF07CisgICAgICAgICAgICB0bXAyID0gQV9RMjRbIGsgLSBu
IC0gMSBdOworICAgICAgICAgICAgQV9RMjRbIG4gXSAgICAgICAgID0gc2lsa19TTUxBV1coIHRt
cDEsIHRtcDIsIHJjICk7CisgICAgICAgICAgICBBX1EyNFsgayAtIG4gLSAxIF0gPSBzaWxrX1NN
TEFXVyggdG1wMiwgdG1wMSwgcmMgKTsKICAgICAgICAgfQotICAgICAgICBmb3IoIG4gPSAwOyBu
IDwgazsgbisrICkgewotICAgICAgICAgICAgQV9RMjRbIG4gXSA9IHNpbGtfU01MQVdXKCBBX1Ey
NFsgbiBdLCBBdG1wWyBrIC0gbiAtIDEgXSwgcmNfUTE2WyBrIF0gKTsKLSAgICAgICAgfQotICAg
ICAgICBBX1EyNFsgayBdID0gLXNpbGtfTFNISUZUKCByY19RMTZbIGsgXSwgOCApOworICAgICAg
ICBBX1EyNFsgayBdID0gLXNpbGtfTFNISUZUKCByYywgOCApOwogICAgIH0KIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9maXhlZC9tYWluX0ZJWC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21haW5fRklYLmgKaW5kZXggMzc1
YjVlYjMyZWU2YzZhZWM2MjQ3YmY2ODBiNGU5MzMyYzgyZDM0Yi4uNmQyMTEyZTUxMWQwYWVmNDQ1
ODJkNTJkNjUwMmRjYjVjOTRlZDA2OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21haW5fRklYLmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2ZpeGVkL21haW5fRklYLmgKQEAgLTM2LDYgKzM2LDExIEBAIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgImRlYnVnLmgiCiAjaW5jbHVkZSAiZW50ZW5jLmgi
CiAKKyNpZiAoKGRlZmluZWQoT1BVU19BUk1fQVNNKSAmJiBkZWZpbmVkKEZJWEVEX1BPSU5UKSkg
XAorICAgfHwgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpKQorI2luY2x1ZGUg
ImZpeGVkL2FybS93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9hcm0uaCIKKyNlbmRpZgorCiAj
aWZuZGVmIEZPUkNFX0NQUF9CVUlMRAogI2lmZGVmIF9fY3BsdXNwbHVzCiBleHRlcm4gIkMiCkBA
IC00Nyw2ICs1Miw5IEBAIGV4dGVybiAiQyIKICNkZWZpbmUgc2lsa19lbmNvZGVfZG9fVkFEX0Z4
eCAgICAgIHNpbGtfZW5jb2RlX2RvX1ZBRF9GSVgKICNkZWZpbmUgc2lsa19lbmNvZGVfZnJhbWVf
Rnh4ICAgICAgIHNpbGtfZW5jb2RlX2ZyYW1lX0ZJWAogCisjZGVmaW5lIFFDICAxMAorI2RlZmlu
ZSBRUyAgMTMKKwogLyoqKioqKioqKioqKioqKioqKioqKi8KIC8qIEVuY29kZXIgRnVuY3Rpb25z
ICovCiAvKioqKioqKioqKioqKioqKioqKioqLwpAQCAtNTgsNyArNjYsOCBAQCB2b2lkIHNpbGtf
SFBfdmFyaWFibGVfY3V0b2ZmKAogCiAvKiBFbmNvZGVyIG1haW4gZnVuY3Rpb24gKi8KIHZvaWQg
c2lsa19lbmNvZGVfZG9fVkFEX0ZJWCgKLSAgICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAg
ICAgICpwc0VuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50
ZXIgdG8gU2lsayBGSVggZW5jb2RlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GSVggICAgICAgICAgKnBz
RW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBT
aWxrIEZJWCBlbmNvZGVyIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpdml0eSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBEZWNpc2lvbiBvZiBPcHVzIHZv
aWNlIGFjdGl2aXR5IGRldGVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICk7CiAKIC8qIEVuY29kZXIgbWFpbiBmdW5jdGlvbiAqLwpAQCAtODEsMzMgKzkwLDExIEBA
IG9wdXNfaW50IHNpbGtfaW5pdF9lbmNvZGVyKAogb3B1c19pbnQgc2lsa19jb250cm9sX2VuY29k
ZXIoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRlX0Z4eCAgICAgICAgICAqcHNFbmMsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBQb2ludGVyIHRvIFNpbGsgZW5jb2RlciBz
dGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAg
ICBzaWxrX0VuY0NvbnRyb2xTdHJ1Y3QgICAgICAgICAgICplbmNDb250cm9sLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIENvbnRyb2wgc3RydWN0dXJlICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0
IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgVGFyZ2V0UmF0ZV9icHMsICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgVGFyZ2V0IG1heCBiaXRyYXRlIChicHMpICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19p
bnQgICAgICAgICAgICAgICAgICBhbGxvd19id19zd2l0Y2gsICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBGbGFnIHRvIGFsbG93IHN3aXRjaGluZyBhdWRpbyBiYW5kd2lkdGggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAg
ICAgICAgICAgICAgIGNoYW5uZWxOYiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIENoYW5uZWwgbnVtYmVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgZm9yY2VfZnNfa0h6CiApOwogCi0vKioqKioqKioqKioqKioqKi8KLS8qIFByZWZpbHRl
cmluZyAqLwotLyoqKioqKioqKioqKioqKiovCi12b2lkIHNpbGtfcHJlZmlsdGVyX0ZJWCgKLSAg
ICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIEVuY29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0
IHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZJWCAgKnBzRW5jQ3RybCwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBjb250cm9sICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAg
ICAgICAgICAgICAgICAgICAgICB4d19RMTBbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogTyAgICBXZWlnaHRlZCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgICAgIHhbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIFNwZWVjaCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsKLQotdm9pZCBzaWxrX3dhcnBlZF9MUENfYW5h
bHlzaXNfZmlsdGVyX0ZJWF9jKAotICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICBzdGF0
ZVtdLCAgICAgICAgICAgICAgICAgICAgLyogSS9PICBTdGF0ZSBbb3JkZXIgKyAxXSAgICAgICAg
ICAgICAgICAgICAqLwotICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICByZXNfUTJbXSwg
ICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXNpZHVhbCBzaWduYWwgW2xlbmd0aF0gICAgICAg
ICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBjb2VmX1ExM1tdLCAgICAg
ICAgICAgICAgICAgLyogSSAgICBDb2VmZmljaWVudHMgW29yZGVyXSAgICAgICAgICAgICAgICAq
LwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBpbnB1dFtdLCAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwgW2xlbmd0aF0gICAgICAgICAgICAgICAqLwotICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBsYW1iZGFfUTE2LCAgICAgICAgICAgICAgICAg
LyogSSAgICBXYXJwaW5nIGZhY3RvciAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0
IG9wdXNfaW50ICAgICAgICAgICAgICBsZW5ndGgsICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBMZW5ndGggb2YgaW5wdXQgc2lnbmFsICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBGaWx0
ZXIgb3JkZXIgKGV2ZW4pICAgICAgICAgICAgICAgICAqLwotKTsKLQotCiAvKioqKioqKioqKioq
KioqKioqKioqKioqKiovCiAvKiBOb2lzZSBzaGFwaW5nIGFuYWx5c2lzICovCiAvKioqKioqKioq
KioqKioqKioqKioqKioqKiovCkBAIC0xMjEsNyArMTA4LDcgQEAgdm9pZCBzaWxrX25vaXNlX3No
YXBlX2FuYWx5c2lzX0ZJWCgKICk7CiAKIC8qIEF1dG9jb3JyZWxhdGlvbnMgZm9yIGEgd2FycGVk
IGZyZXF1ZW5jeSBheGlzICovCi12b2lkIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgo
Cit2b2lkIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYygKICAgICAgICAgICBvcHVz
X2ludDMyICAgICAgICAgICAgICAgICpjb3JyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBPICAgIFJlc3VsdCBbb3JkZXIgKyAxXSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgICAgICAgIG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgKnNjYWxlLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IE8gICAgU2NhbGluZyBvZiB0aGUgY29ycmVsYXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAg
ICAgICAgICAqaW5wdXQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJ
bnB1dCBkYXRhIHRvIGNvcnJlbGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KQEAgLTEzMCw2ICsxMTcsMTEgQEAgdm9pZCBzaWxrX3dhcnBl
ZF9hdXRvY29ycmVsYXRpb25fRklYKAogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29ycmVs
YXRpb24gb3JkZXIgKGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCiApOwogCisjaWYgIWRlZmluZWQoT1ZFUlJJREVfc2lsa193YXJwZWRf
YXV0b2NvcnJlbGF0aW9uX0ZJWCkKKyNkZWZpbmUgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9u
X0ZJWChjb3JyLCBzY2FsZSwgaW5wdXQsIHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVyLCBhcmNo
KSBcCisgICAgICAgICgodm9pZCkoYXJjaCksIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9G
SVhfYyhjb3JyLCBzY2FsZSwgaW5wdXQsIHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVyKSkKKyNl
bmRpZgorCiAvKiBDYWxjdWxhdGlvbiBvZiBMVFAgc3RhdGUgc2NhbGluZyAqLwogdm9pZCBzaWxr
X0xUUF9zY2FsZV9jdHJsX0ZJWCgKICAgICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAg
ICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIGVuY29kZXIg
c3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwpAQCAtMTY4LDE2ICsxNjAsMTIgQEAgdm9pZCBzaWxrX2ZpbmRfTFBDX0ZJ
WCgKIAogLyogTFRQIGFuYWx5c2lzICovCiB2b2lkIHNpbGtfZmluZF9MVFBfRklYKAotICAgIG9w
dXNfaW50MTYgICAgICAgICAgICAgICAgICAgICAgYl9RMTRbIE1BWF9OQl9TVUJGUiAqIExUUF9P
UkRFUiBdLCAgICAgIC8qIE8gICAgTFRQIGNvZWZzICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQz
MiAgICAgICAgICAgICAgICAgICAgICBXTFRQWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBM
VFBfT1JERVIgXSwgLyogTyAgICBXZWlnaHQgZm9yIExUUCBxdWFudGl6YXRpb24gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAg
ICAgICAgICAgICAgICAgICpMVFByZWRDb2RHYWluX1E3LCAgICAgICAgICAgICAgICAgICAgICAv
KiBPICAgIExUUCBjb2RpbmcgZ2FpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICAgICAgcl9scGNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
cmVzaWR1YWwgc2lnbmFsIGFmdGVyIExQQyBzaWduYWwgKyBzdGF0ZSBmb3IgZmlyc3QgMTAgbXMg
ICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAg
ICBYWExUUF9RMTdbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBP
ICAgIENvcnJlbGF0aW9uIG1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgIHhYTFRQ
X1ExN1sgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAvKiBPICAgIENvcnJlbGF0aW9uIHZl
Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgcl9scGNbXSwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUmVzaWR1YWwgc2lnbmFsIGFmdGVy
IExQQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBsYWdbIE1BWF9OQl9TVUJGUiBd
LCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMVFAgbGFncyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBj
b25zdCBvcHVzX2ludDMyICAgICAgICAgICAgICAgIFdnaHRfUTE1WyBNQVhfTkJfU1VCRlIgXSwg
ICAgICAgICAgICAgICAvKiBJICAgIHdlaWdodHMgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgc3ViZnJfbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgc3ViZnJhbWUgbGVuZ3RoICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQg
ICAgICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBudW1iZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAg
ICAgICAgICAgIG1lbV9vZmZzZXQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IG51bWJlciBvZiBzYW1wbGVzIGluIExUUCBtZW1vcnkgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAg
ICAgY29ycl9yc2hpZnRzWyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgIC8qIE8gICAgcmlnaHQg
c2hpZnRzIGFwcGxpZWQgdG8gY29ycmVsYXRpb25zICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBzdWJm
cl9sZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTdWJmcmFtZSBsZW5n
dGggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBzdWJmcmFtZXMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwogICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwog
CkBAIC0yMzEsOSArMjE5LDkgQEAgdm9pZCBzaWxrX2NvcnJNYXRyaXhfRklYKAogICAgIGNvbnN0
IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKngsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgeCB2ZWN0b3IgW0wgKyBvcmRlciAtIDFdIHVzZWQgdG8gZm9ybSBk
YXRhIG1hdHJpeCBYICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19p
bnQgICAgICAgICAgICAgICAgICBMLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBMZW5ndGggb2YgdmVjdG9ycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAg
ICAgICAgICAgICAgIG9yZGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIE1heCBsYWcgZm9yIGNvcnJlbGF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgaGVhZF9yb29tLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRGVz
aXJlZCBoZWFkcm9vbSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAq
WFgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBQb2ludGVyIHRv
IFgnKlggY29ycmVsYXRpb24gbWF0cml4IFsgb3JkZXIgeCBvcmRlciBdICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgICpyc2hpZnRz
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFJpZ2h0IHNoaWZ0cyBvZiBj
b3JyZWxhdGlvbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgKm5yZywgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgRW5lcmd5IG9mIHggdmVjdG9yICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICAqcnNoaWZ0cywgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogTyAgICBSaWdodCBzaGlmdHMgb2YgY29ycmVsYXRpb25zICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBpbnQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKTsKIApAQCAtMjQ4LDIy
ICsyMzYsNiBAQCB2b2lkIHNpbGtfY29yclZlY3Rvcl9GSVgoCiAgICAgaW50ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKLS8qIEFkZCBub2lzZSB0byBtYXRy
aXggZGlhZ29uYWwgKi8KLXZvaWQgc2lsa19yZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GSVgoCi0g
ICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAqWFgsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSS9PICBDb3JyZWxhdGlvbiBtYXRyaWNlcyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVz
X2ludDMyICAgICAgICAgICAgICAgICAgICAgICp4eCwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJL08gIENvcnJlbGF0aW9uIHZhbHVlcyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIg
ICAgICAgICAgICAgICAgICAgICAgbm9pc2UsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgTm9pc2UgdG8gYWRkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAg
ICAgICAgICAgICAgICBEICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBEaW1lbnNpb24gb2YgWFggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSk7Ci0KLS8qIFNvbHZlcyBBeCA9IGIsIGFzc3Vt
aW5nIEEgaXMgc3ltbWV0cmljICovCi12b2lkIHNpbGtfc29sdmVfTERMX0ZJWCgKLSAgICBvcHVz
X2ludDMyICAgICAgICAgICAgICAgICAgICAgICpBLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIFBvaW50ZXIgdG8gc3ltZXRyaWMgc3F1YXJlIG1hdHJpeCBBICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgICAgICAgTSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgU2l6ZSBvZiBtYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgICAgICAgICAgICAqYiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBQb2ludGVyIHRvIGIgdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAg
ICAgICAgICp4X1ExNiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFBv
aW50ZXIgdG8geCBzb2x1dGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotKTsKLQogI2lmbmRlZiBGT1JDRV9DUFBfQlVJTEQKICNpZmRl
ZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21pcHMvbm9pc2Vfc2hhcGVf
YW5hbHlzaXNfRklYX21pcHNyMS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21pcHMvbm9pc2Vfc2hhcGVfYW5hbHlz
aXNfRklYX21pcHNyMS5oCmluZGV4IGMzMDQ4MWU0Mzc1MWRjMDBmZWEwMjU5M2NmMzQzMDJlZDYz
OTc3OWYuLjM5OTliNWJkMDlkZDhhOTQ2NGVkMjI3ODBkNTQ1NzhmM2RiY2RlZjggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9maXhlZC9taXBzL25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWF9taXBzcjEuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZml4ZWQvbWlwcy9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVhfbWlwc3IxLmgKQEAgLTE2
OSw3ICsxNjksNyBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogCiAgICAg
ICAgIGlmKCBwc0VuYy0+c0Ntbi53YXJwaW5nX1ExNiA+IDAgKSB7CiAgICAgICAgICAgICAvKiBD
YWxjdWxhdGUgd2FycGVkIGF1dG8gY29ycmVsYXRpb24gKi8KLSAgICAgICAgICAgIHNpbGtfd2Fy
cGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoIGF1dG9fY29yciwgJnNjYWxlLCB4X3dpbmRvd2VkLCB3
YXJwaW5nX1ExNiwgcHNFbmMtPnNDbW4uc2hhcGVXaW5MZW5ndGgsIHBzRW5jLT5zQ21uLnNoYXBp
bmdMUENPcmRlciApOworICAgICAgICAgICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJ
WCggYXV0b19jb3JyLCAmc2NhbGUsIHhfd2luZG93ZWQsIHdhcnBpbmdfUTE2LCBwc0VuYy0+c0Nt
bi5zaGFwZVdpbkxlbmd0aCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBhcmNoICk7CiAg
ICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvKiBDYWxjdWxhdGUgcmVndWxhciBhdXRvIGNv
cnJlbGF0aW9uICovCiAgICAgICAgICAgICBzaWxrX2F1dG9jb3JyKCBhdXRvX2NvcnIsICZzY2Fs
ZSwgeF93aW5kb3dlZCwgcHNFbmMtPnNDbW4uc2hhcGVXaW5MZW5ndGgsIHBzRW5jLT5zQ21uLnNo
YXBpbmdMUENPcmRlciArIDEsIGFyY2ggKTsKQEAgLTIyNCw4ICsyMjQsOCBAQCB2b2lkIHNpbGtf
bm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfMzIoIEFS
MV9RMjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciwgQldFeHAxX1ExNiApOwogCiAgICAg
ICAgIC8qIFJhdGlvIG9mIHByZWRpY3Rpb24gZ2FpbnMsIGluIGVuZXJneSBkb21haW4gKi8KLSAg
ICAgICAgcHJlX25yZ19RMzAgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoIEFSMl9R
MjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwotICAgICAgICBucmcgICAgICAgICA9
IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX1EyNCggQVIxX1EyNCwgcHNFbmMtPnNDbW4uc2hh
cGluZ0xQQ09yZGVyICk7CisgICAgICAgIHByZV9ucmdfUTMwID0gc2lsa19MUENfaW52ZXJzZV9w
cmVkX2dhaW5fUTI0KCBBUjJfUTI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIGFyY2gg
KTsKKyAgICAgICAgbnJnICAgICAgICAgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQo
IEFSMV9RMjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciwgYXJjaCApOwogCiAgICAgICAg
IC8qcHNFbmNDdHJsLT5HYWluc1ByZVsgayBdID0gMS4wZiAtIDAuN2YgKiAoIDEuMGYgLSBwcmVf
bnJnIC8gbnJnICkgPSAwLjNmICsgMC43ZiAqIHByZV9ucmcgLyBucmc7Ki8KICAgICAgICAgcHJl
X25yZ19RMzAgPSBzaWxrX0xTSElGVDMyKCBzaWxrX1NNVUxXQiggcHJlX25yZ19RMzAsIFNJTEtf
RklYX0NPTlNUKCAwLjcsIDE1ICkgKSwgMSApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21pcHMv
d2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfbWlwc3IxLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbWlwcy93YXJw
ZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9taXBzcjEuaAppbmRleCBlODAzZWYwZmNlYjA0YjNjYTE1
MjY0Y2IzYTVlZGQ4ZTk3MTg4N2I5Li5mY2JkOTZjODhkOThhYWEwNWIzZTRhNWM5NTZlMmVhYjA5
YjZiYzQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbWlwcy93YXJwZWRfYXV0b2NvcnJlbGF0aW9u
X0ZJWF9taXBzcjEuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbWlwcy93YXJwZWRfYXV0b2NvcnJlbGF0aW9u
X0ZJWF9taXBzcjEuaApAQCAtNDgsNyArNDgsOCBAQCB2b2lkIHNpbGtfd2FycGVkX2F1dG9jb3Jy
ZWxhdGlvbl9GSVgoCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAqaW5wdXQs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBkYXRhIHRvIGNv
cnJlbGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIHdhcnBpbmdfUTE2LCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFdhcnBpbmcgY29lZmZpY2llbnQgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTGVuZ3RoIG9mIGlucHV0ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBDb3JyZWxhdGlvbiBvcmRlciAoZXZlbikgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVz
X2ludCAgICAgICAgICAgICAgICAgIG9yZGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIENvcnJlbGF0aW9uIG9yZGVyIChldmVuKSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGludCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7CiAgICAgb3B1c19pbnQgICBuLCBpLCBs
c2g7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYLmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZml4ZWQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYLmMKaW5kZXggMjJhODlmNzVhZWMwZmM4
ZDYyNDQwOWRmODYxY2JiNmMyY2EzODU5NS4uODVmZWEwYmYwOTYwMDU5NDYyODAwMWQ3NDEwNzEy
YzRlZThjMjYxMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJ
WC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9maXhlZC9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVguYwpAQCAtNTcsODgg
KzU3LDc5IEBAIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMyIHdhcnBlZF9nYWluKCAvKiBn
YWluIGluIFExNiovCiAvKiBDb252ZXJ0IHdhcnBlZCBmaWx0ZXIgY29lZmZpY2llbnRzIHRvIG1v
bmljIHBzZXVkby13YXJwZWQgY29lZmZpY2llbnRzIGFuZCBsaW1pdCBtYXhpbXVtICAgICAqLwog
LyogYW1wbGl0dWRlIG9mIG1vbmljIHdhcnBlZCBjb2VmZmljaWVudHMgYnkgdXNpbmcgYmFuZHdp
ZHRoIGV4cGFuc2lvbiBvbiB0aGUgdHJ1ZSBjb2VmZmljaWVudHMgKi8KIHN0YXRpYyBPUFVTX0lO
TElORSB2b2lkIGxpbWl0X3dhcnBlZF9jb2VmcygKLSAgICBvcHVzX2ludDMyICAgICAgICAgICAq
Y29lZnNfc3luX1EyNCwKLSAgICBvcHVzX2ludDMyICAgICAgICAgICAqY29lZnNfYW5hX1EyNCwK
KyAgICBvcHVzX2ludDMyICAgICAgICAgICAqY29lZnNfUTI0LAogICAgIG9wdXNfaW50ICAgICAg
ICAgICAgIGxhbWJkYV9RMTYsCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgbGltaXRfUTI0LAog
ICAgIG9wdXNfaW50ICAgICAgICAgICAgIG9yZGVyCiApIHsKICAgICBvcHVzX2ludCAgIGksIGl0
ZXIsIGluZCA9IDA7Ci0gICAgb3B1c19pbnQzMiB0bXAsIG1heGFic19RMjQsIGNoaXJwX1ExNiwg
Z2Fpbl9zeW5fUTE2LCBnYWluX2FuYV9RMTY7CisgICAgb3B1c19pbnQzMiB0bXAsIG1heGFic19R
MjQsIGNoaXJwX1ExNiwgZ2Fpbl9RMTY7CiAgICAgb3B1c19pbnQzMiBub21fUTE2LCBkZW5fUTI0
OworICAgIG9wdXNfaW50MzIgbGltaXRfUTIwLCBtYXhhYnNfUTIwOwogCiAgICAgLyogQ29udmVy
dCB0byBtb25pYyBjb2VmZmljaWVudHMgKi8KICAgICBsYW1iZGFfUTE2ID0gLWxhbWJkYV9RMTY7
CiAgICAgZm9yKCBpID0gb3JkZXIgLSAxOyBpID4gMDsgaS0tICkgewotICAgICAgICBjb2Vmc19z
eW5fUTI0WyBpIC0gMSBdID0gc2lsa19TTUxBV0IoIGNvZWZzX3N5bl9RMjRbIGkgLSAxIF0sIGNv
ZWZzX3N5bl9RMjRbIGkgXSwgbGFtYmRhX1ExNiApOwotICAgICAgICBjb2Vmc19hbmFfUTI0WyBp
IC0gMSBdID0gc2lsa19TTUxBV0IoIGNvZWZzX2FuYV9RMjRbIGkgLSAxIF0sIGNvZWZzX2FuYV9R
MjRbIGkgXSwgbGFtYmRhX1ExNiApOworICAgICAgICBjb2Vmc19RMjRbIGkgLSAxIF0gPSBzaWxr
X1NNTEFXQiggY29lZnNfUTI0WyBpIC0gMSBdLCBjb2Vmc19RMjRbIGkgXSwgbGFtYmRhX1ExNiAp
OwogICAgIH0KICAgICBsYW1iZGFfUTE2ID0gLWxhbWJkYV9RMTY7Ci0gICAgbm9tX1ExNiAgPSBz
aWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1QoIDEuMCwgMTYgKSwgLShvcHVzX2ludDMyKWxhbWJk
YV9RMTYsICAgICAgICBsYW1iZGFfUTE2ICk7Ci0gICAgZGVuX1EyNCAgPSBzaWxrX1NNTEFXQigg
U0lMS19GSVhfQ09OU1QoIDEuMCwgMjQgKSwgY29lZnNfc3luX1EyNFsgMCBdLCBsYW1iZGFfUTE2
ICk7Ci0gICAgZ2Fpbl9zeW5fUTE2ID0gc2lsa19ESVYzMl92YXJRKCBub21fUTE2LCBkZW5fUTI0
LCAyNCApOwotICAgIGRlbl9RMjQgID0gc2lsa19TTUxBV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAs
IDI0ICksIGNvZWZzX2FuYV9RMjRbIDAgXSwgbGFtYmRhX1ExNiApOwotICAgIGdhaW5fYW5hX1Ex
NiA9IHNpbGtfRElWMzJfdmFyUSggbm9tX1ExNiwgZGVuX1EyNCwgMjQgKTsKKyAgICBub21fUTE2
ICA9IHNpbGtfU01MQVdCKCBTSUxLX0ZJWF9DT05TVCggMS4wLCAxNiApLCAtKG9wdXNfaW50MzIp
bGFtYmRhX1ExNiwgbGFtYmRhX1ExNiApOworICAgIGRlbl9RMjQgID0gc2lsa19TTUxBV0IoIFNJ
TEtfRklYX0NPTlNUKCAxLjAsIDI0ICksIGNvZWZzX1EyNFsgMCBdLCBsYW1iZGFfUTE2ICk7Cisg
ICAgZ2Fpbl9RMTYgPSBzaWxrX0RJVjMyX3ZhclEoIG5vbV9RMTYsIGRlbl9RMjQsIDI0ICk7CiAg
ICAgZm9yKCBpID0gMDsgaSA8IG9yZGVyOyBpKysgKSB7Ci0gICAgICAgIGNvZWZzX3N5bl9RMjRb
IGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX3N5bl9RMTYsIGNvZWZzX3N5bl9RMjRbIGkgXSApOwot
ICAgICAgICBjb2Vmc19hbmFfUTI0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9hbmFfUTE2LCBj
b2Vmc19hbmFfUTI0WyBpIF0gKTsKKyAgICAgICAgY29lZnNfUTI0WyBpIF0gPSBzaWxrX1NNVUxX
VyggZ2Fpbl9RMTYsIGNvZWZzX1EyNFsgaSBdICk7CiAgICAgfQotCisgICAgbGltaXRfUTIwID0g
c2lsa19SU0hJRlQobGltaXRfUTI0LCA0KTsKICAgICBmb3IoIGl0ZXIgPSAwOyBpdGVyIDwgMTA7
IGl0ZXIrKyApIHsKICAgICAgICAgLyogRmluZCBtYXhpbXVtIGFic29sdXRlIHZhbHVlICovCiAg
ICAgICAgIG1heGFic19RMjQgPSAtMTsKICAgICAgICAgZm9yKCBpID0gMDsgaSA8IG9yZGVyOyBp
KysgKSB7Ci0gICAgICAgICAgICB0bXAgPSBzaWxrX21heCggc2lsa19hYnNfaW50MzIoIGNvZWZz
X3N5bl9RMjRbIGkgXSApLCBzaWxrX2Fic19pbnQzMiggY29lZnNfYW5hX1EyNFsgaSBdICkgKTsK
KyAgICAgICAgICAgIHRtcCA9IHNpbGtfYWJzX2ludDMyKCBjb2Vmc19RMjRbIGkgXSApOwogICAg
ICAgICAgICAgaWYoIHRtcCA+IG1heGFic19RMjQgKSB7CiAgICAgICAgICAgICAgICAgbWF4YWJz
X1EyNCA9IHRtcDsKICAgICAgICAgICAgICAgICBpbmQgPSBpOwogICAgICAgICAgICAgfQogICAg
ICAgICB9Ci0gICAgICAgIGlmKCBtYXhhYnNfUTI0IDw9IGxpbWl0X1EyNCApIHsKKyAgICAgICAg
LyogVXNlIFEyMCB0byBhdm9pZCBhbnkgb3ZlcmZsb3cgd2hlbiBtdWx0aXBseWluZyBieSAoaW5k
ICsgMSkgbGF0ZXIuICovCisgICAgICAgIG1heGFic19RMjAgPSBzaWxrX1JTSElGVChtYXhhYnNf
UTI0LCA0KTsKKyAgICAgICAgaWYoIG1heGFic19RMjAgPD0gbGltaXRfUTIwICkgewogICAgICAg
ICAgICAgLyogQ29lZmZpY2llbnRzIGFyZSB3aXRoaW4gcmFuZ2UgLSBkb25lICovCiAgICAgICAg
ICAgICByZXR1cm47CiAgICAgICAgIH0KIAogICAgICAgICAvKiBDb252ZXJ0IGJhY2sgdG8gdHJ1
ZSB3YXJwZWQgY29lZmZpY2llbnRzICovCiAgICAgICAgIGZvciggaSA9IDE7IGkgPCBvcmRlcjsg
aSsrICkgewotICAgICAgICAgICAgY29lZnNfc3luX1EyNFsgaSAtIDEgXSA9IHNpbGtfU01MQVdC
KCBjb2Vmc19zeW5fUTI0WyBpIC0gMSBdLCBjb2Vmc19zeW5fUTI0WyBpIF0sIGxhbWJkYV9RMTYg
KTsKLSAgICAgICAgICAgIGNvZWZzX2FuYV9RMjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQiggY29l
ZnNfYW5hX1EyNFsgaSAtIDEgXSwgY29lZnNfYW5hX1EyNFsgaSBdLCBsYW1iZGFfUTE2ICk7Cisg
ICAgICAgICAgICBjb2Vmc19RMjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNfUTI0WyBp
IC0gMSBdLCBjb2Vmc19RMjRbIGkgXSwgbGFtYmRhX1ExNiApOwogICAgICAgICB9Ci0gICAgICAg
IGdhaW5fc3luX1ExNiA9IHNpbGtfSU5WRVJTRTMyX3ZhclEoIGdhaW5fc3luX1ExNiwgMzIgKTsK
LSAgICAgICAgZ2Fpbl9hbmFfUTE2ID0gc2lsa19JTlZFUlNFMzJfdmFyUSggZ2Fpbl9hbmFfUTE2
LCAzMiApOworICAgICAgICBnYWluX1ExNiA9IHNpbGtfSU5WRVJTRTMyX3ZhclEoIGdhaW5fUTE2
LCAzMiApOwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAg
ICAgIGNvZWZzX3N5bl9RMjRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX3N5bl9RMTYsIGNvZWZz
X3N5bl9RMjRbIGkgXSApOwotICAgICAgICAgICAgY29lZnNfYW5hX1EyNFsgaSBdID0gc2lsa19T
TVVMV1coIGdhaW5fYW5hX1ExNiwgY29lZnNfYW5hX1EyNFsgaSBdICk7CisgICAgICAgICAgICBj
b2Vmc19RMjRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX1ExNiwgY29lZnNfUTI0WyBpIF0gKTsK
ICAgICAgICAgfQogCiAgICAgICAgIC8qIEFwcGx5IGJhbmR3aWR0aCBleHBhbnNpb24gKi8KICAg
ICAgICAgY2hpcnBfUTE2ID0gU0lMS19GSVhfQ09OU1QoIDAuOTksIDE2ICkgLSBzaWxrX0RJVjMy
X3ZhclEoCi0gICAgICAgICAgICBzaWxrX1NNVUxXQiggbWF4YWJzX1EyNCAtIGxpbWl0X1EyNCwg
c2lsa19TTUxBQkIoIFNJTEtfRklYX0NPTlNUKCAwLjgsIDEwICksIFNJTEtfRklYX0NPTlNUKCAw
LjEsIDEwICksIGl0ZXIgKSApLAotICAgICAgICAgICAgc2lsa19NVUwoIG1heGFic19RMjQsIGlu
ZCArIDEgKSwgMjIgKTsKLSAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBjb2Vmc19zeW5fUTI0
LCBvcmRlciwgY2hpcnBfUTE2ICk7Ci0gICAgICAgIHNpbGtfYndleHBhbmRlcl8zMiggY29lZnNf
YW5hX1EyNCwgb3JkZXIsIGNoaXJwX1ExNiApOworICAgICAgICAgICAgc2lsa19TTVVMV0IoIG1h
eGFic19RMjAgLSBsaW1pdF9RMjAsIHNpbGtfU01MQUJCKCBTSUxLX0ZJWF9DT05TVCggMC44LCAx
MCApLCBTSUxLX0ZJWF9DT05TVCggMC4xLCAxMCApLCBpdGVyICkgKSwKKyAgICAgICAgICAgIHNp
bGtfTVVMKCBtYXhhYnNfUTIwLCBpbmQgKyAxICksIDIyICk7CisgICAgICAgIHNpbGtfYndleHBh
bmRlcl8zMiggY29lZnNfUTI0LCBvcmRlciwgY2hpcnBfUTE2ICk7CiAKICAgICAgICAgLyogQ29u
dmVydCB0byBtb25pYyB3YXJwZWQgY29lZmZpY2llbnRzICovCiAgICAgICAgIGxhbWJkYV9RMTYg
PSAtbGFtYmRhX1ExNjsKICAgICAgICAgZm9yKCBpID0gb3JkZXIgLSAxOyBpID4gMDsgaS0tICkg
ewotICAgICAgICAgICAgY29lZnNfc3luX1EyNFsgaSAtIDEgXSA9IHNpbGtfU01MQVdCKCBjb2Vm
c19zeW5fUTI0WyBpIC0gMSBdLCBjb2Vmc19zeW5fUTI0WyBpIF0sIGxhbWJkYV9RMTYgKTsKLSAg
ICAgICAgICAgIGNvZWZzX2FuYV9RMjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNfYW5h
X1EyNFsgaSAtIDEgXSwgY29lZnNfYW5hX1EyNFsgaSBdLCBsYW1iZGFfUTE2ICk7CisgICAgICAg
ICAgICBjb2Vmc19RMjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNfUTI0WyBpIC0gMSBd
LCBjb2Vmc19RMjRbIGkgXSwgbGFtYmRhX1ExNiApOwogICAgICAgICB9CiAgICAgICAgIGxhbWJk
YV9RMTYgPSAtbGFtYmRhX1ExNjsKICAgICAgICAgbm9tX1ExNiAgPSBzaWxrX1NNTEFXQiggU0lM
S19GSVhfQ09OU1QoIDEuMCwgMTYgKSwgLShvcHVzX2ludDMyKWxhbWJkYV9RMTYsICAgICAgICBs
YW1iZGFfUTE2ICk7Ci0gICAgICAgIGRlbl9RMjQgID0gc2lsa19TTUxBV0IoIFNJTEtfRklYX0NP
TlNUKCAxLjAsIDI0ICksIGNvZWZzX3N5bl9RMjRbIDAgXSwgbGFtYmRhX1ExNiApOwotICAgICAg
ICBnYWluX3N5bl9RMTYgPSBzaWxrX0RJVjMyX3ZhclEoIG5vbV9RMTYsIGRlbl9RMjQsIDI0ICk7
Ci0gICAgICAgIGRlbl9RMjQgID0gc2lsa19TTUxBV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDI0
ICksIGNvZWZzX2FuYV9RMjRbIDAgXSwgbGFtYmRhX1ExNiApOwotICAgICAgICBnYWluX2FuYV9R
MTYgPSBzaWxrX0RJVjMyX3ZhclEoIG5vbV9RMTYsIGRlbl9RMjQsIDI0ICk7CisgICAgICAgIGRl
bl9RMjQgID0gc2lsa19TTUxBV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDI0ICksIGNvZWZzX1Ey
NFsgMCBdLCBsYW1iZGFfUTE2ICk7CisgICAgICAgIGdhaW5fUTE2ID0gc2lsa19ESVYzMl92YXJR
KCBub21fUTE2LCBkZW5fUTI0LCAyNCApOwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgb3JkZXI7
IGkrKyApIHsKLSAgICAgICAgICAgIGNvZWZzX3N5bl9RMjRbIGkgXSA9IHNpbGtfU01VTFdXKCBn
YWluX3N5bl9RMTYsIGNvZWZzX3N5bl9RMjRbIGkgXSApOwotICAgICAgICAgICAgY29lZnNfYW5h
X1EyNFsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fYW5hX1ExNiwgY29lZnNfYW5hX1EyNFsgaSBd
ICk7CisgICAgICAgICAgICBjb2Vmc19RMjRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX1ExNiwg
Y29lZnNfUTI0WyBpIF0gKTsKICAgICAgICAgfQogICAgIH0KICAgICBzaWxrX2Fzc2VydCggMCAp
OwogfQogCi0jaWYgZGVmaW5lZChNSVBTcjFfQVNNKQorLyogRGlzYWJsZSBNSVBTIHZlcnNpb24g
dW50aWwgaXQncyB1cGRhdGVkLiAqLworI2lmIDAgJiYgZGVmaW5lZChNSVBTcjFfQVNNKQogI2lu
Y2x1ZGUgIm1pcHMvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYX21pcHNyMS5oIgogI2VuZGlmCiAK
QEAgLTE1NSwxNCArMTQ2LDEzIEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgo
CiApCiB7CiAgICAgc2lsa19zaGFwZV9zdGF0ZV9GSVggKnBzU2hhcGVTdCA9ICZwc0VuYy0+c1No
YXBlOwotICAgIG9wdXNfaW50ICAgICBrLCBpLCBuU2FtcGxlcywgUW5yZywgYl9RMTQsIHdhcnBp
bmdfUTE2LCBzY2FsZSA9IDA7Ci0gICAgb3B1c19pbnQzMiAgIFNOUl9hZGpfZEJfUTcsIEhhcm1C
b29zdF9RMTYsIEhhcm1TaGFwZUdhaW5fUTE2LCBUaWx0X1ExNiwgdG1wMzI7Ci0gICAgb3B1c19p
bnQzMiAgIG5yZywgcHJlX25yZ19RMzAsIGxvZ19lbmVyZ3lfUTcsIGxvZ19lbmVyZ3lfcHJldl9R
NywgZW5lcmd5X3ZhcmlhdGlvbl9RNzsKLSAgICBvcHVzX2ludDMyICAgZGVsdGFfUTE2LCBCV0V4
cDFfUTE2LCBCV0V4cDJfUTE2LCBnYWluX211bHRfUTE2LCBnYWluX2FkZF9RMTYsIHN0cmVuZ3Ro
X1ExNiwgYl9RODsKKyAgICBvcHVzX2ludCAgICAgaywgaSwgblNhbXBsZXMsIG5TZWdzLCBRbnJn
LCBiX1ExNCwgd2FycGluZ19RMTYsIHNjYWxlID0gMDsKKyAgICBvcHVzX2ludDMyICAgU05SX2Fk
al9kQl9RNywgSGFybVNoYXBlR2Fpbl9RMTYsIFRpbHRfUTE2LCB0bXAzMjsKKyAgICBvcHVzX2lu
dDMyICAgbnJnLCBsb2dfZW5lcmd5X1E3LCBsb2dfZW5lcmd5X3ByZXZfUTcsIGVuZXJneV92YXJp
YXRpb25fUTc7CisgICAgb3B1c19pbnQzMiAgIEJXRXhwX1ExNiwgZ2Fpbl9tdWx0X1ExNiwgZ2Fp
bl9hZGRfUTE2LCBzdHJlbmd0aF9RMTYsIGJfUTg7CiAgICAgb3B1c19pbnQzMiAgIGF1dG9fY29y
clsgICAgIE1BWF9TSEFQRV9MUENfT1JERVIgKyAxIF07CiAgICAgb3B1c19pbnQzMiAgIHJlZmxf
Y29lZl9RMTZbIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKLSAgICBvcHVzX2ludDMyICAgQVIxX1Ey
NFsgICAgICAgTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwotICAgIG9wdXNfaW50MzIgICBBUjJfUTI0
WyAgICAgICBNQVhfU0hBUEVfTFBDX09SREVSIF07CisgICAgb3B1c19pbnQzMiAgIEFSX1EyNFsg
ICAgICAgTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwogICAgIFZBUkRFQ0woIG9wdXNfaW50MTYsIHhf
d2luZG93ZWQgKTsKICAgICBjb25zdCBvcHVzX2ludDE2ICp4X3B0ciwgKnBpdGNoX3Jlc19wdHI7
CiAgICAgU0FWRV9TVEFDSzsKQEAgLTIwOSwxNCArMTk5LDE0IEBAIHZvaWQgc2lsa19ub2lzZV9z
aGFwZV9hbmFseXNpc19GSVgoCiAgICAgaWYoIHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlw
ZSA9PSBUWVBFX1ZPSUNFRCApIHsKICAgICAgICAgLyogSW5pdGlhbGx5IHNldCB0byAwOyBtYXkg
YmUgb3ZlcnJ1bGVkIGluIHByb2Nlc3NfZ2FpbnMoLi4pICovCiAgICAgICAgIHBzRW5jLT5zQ21u
LmluZGljZXMucXVhbnRPZmZzZXRUeXBlID0gMDsKLSAgICAgICAgcHNFbmNDdHJsLT5zcGFyc2Vu
ZXNzX1E4ID0gMDsKICAgICB9IGVsc2UgewogICAgICAgICAvKiBTcGFyc2VuZXNzIG1lYXN1cmUs
IGJhc2VkIG9uIHJlbGF0aXZlIGZsdWN0dWF0aW9ucyBvZiBlbmVyZ3kgcGVyIDIgbWlsbGlzZWNv
bmRzICovCiAgICAgICAgIG5TYW1wbGVzID0gc2lsa19MU0hJRlQoIHBzRW5jLT5zQ21uLmZzX2tI
eiwgMSApOwogICAgICAgICBlbmVyZ3lfdmFyaWF0aW9uX1E3ID0gMDsKICAgICAgICAgbG9nX2Vu
ZXJneV9wcmV2X1E3ICA9IDA7CiAgICAgICAgIHBpdGNoX3Jlc19wdHIgPSBwaXRjaF9yZXM7Ci0g
ICAgICAgIGZvciggayA9IDA7IGsgPCBzaWxrX1NNVUxCQiggU1VCX0ZSQU1FX0xFTkdUSF9NUywg
cHNFbmMtPnNDbW4ubmJfc3ViZnIgKSAvIDI7IGsrKyApIHsKKyAgICAgICAgblNlZ3MgPSBzaWxr
X1NNVUxCQiggU1VCX0ZSQU1FX0xFTkdUSF9NUywgcHNFbmMtPnNDbW4ubmJfc3ViZnIgKSAvIDI7
CisgICAgICAgIGZvciggayA9IDA7IGsgPCBuU2VnczsgaysrICkgewogICAgICAgICAgICAgc2ls
a19zdW1fc3FyX3NoaWZ0KCAmbnJnLCAmc2NhbGUsIHBpdGNoX3Jlc19wdHIsIG5TYW1wbGVzICk7
CiAgICAgICAgICAgICBucmcgKz0gc2lsa19SU0hJRlQoIG5TYW1wbGVzLCBzY2FsZSApOyAgICAg
ICAgICAgLyogUSgtc2NhbGUpKi8KIApAQCAtMjI4LDE4ICsyMTgsMTIgQEAgdm9pZCBzaWxrX25v
aXNlX3NoYXBlX2FuYWx5c2lzX0ZJWCgKICAgICAgICAgICAgIHBpdGNoX3Jlc19wdHIgKz0gblNh
bXBsZXM7CiAgICAgICAgIH0KIAotICAgICAgICBwc0VuY0N0cmwtPnNwYXJzZW5lc3NfUTggPSBz
aWxrX1JTSElGVCggc2lsa19zaWdtX1ExNSggc2lsa19TTVVMV0IoIGVuZXJneV92YXJpYXRpb25f
UTcgLQotICAgICAgICAgICAgU0lMS19GSVhfQ09OU1QoIDUuMCwgNyApLCBTSUxLX0ZJWF9DT05T
VCggMC4xLCAxNiApICkgKSwgNyApOwotCiAgICAgICAgIC8qIFNldCBxdWFudGl6YXRpb24gb2Zm
c2V0IGRlcGVuZGluZyBvbiBzcGFyc2VuZXNzIG1lYXN1cmUgKi8KLSAgICAgICAgaWYoIHBzRW5j
Q3RybC0+c3BhcnNlbmVzc19ROCA+IFNJTEtfRklYX0NPTlNUKCBTUEFSU0VORVNTX1RIUkVTSE9M
RF9RTlRfT0ZGU0VULCA4ICkgKSB7CisgICAgICAgIGlmKCBlbmVyZ3lfdmFyaWF0aW9uX1E3ID4g
U0lMS19GSVhfQ09OU1QoIEVORVJHWV9WQVJJQVRJT05fVEhSRVNIT0xEX1FOVF9PRkZTRVQsIDcg
KSAqIChuU2Vncy0xKSApIHsKICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMucXVhbnRP
ZmZzZXRUeXBlID0gMDsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIHBzRW5jLT5zQ21u
LmluZGljZXMucXVhbnRPZmZzZXRUeXBlID0gMTsKICAgICAgICAgfQotCi0gICAgICAgIC8qIElu
Y3JlYXNlIGNvZGluZyBTTlIgZm9yIHNwYXJzZSBzaWduYWxzICovCi0gICAgICAgIFNOUl9hZGpf
ZEJfUTcgPSBzaWxrX1NNTEFXQiggU05SX2Fkal9kQl9RNywgU0lMS19GSVhfQ09OU1QoIFNQQVJT
RV9TTlJfSU5DUl9kQiwgMTUgKSwgcHNFbmNDdHJsLT5zcGFyc2VuZXNzX1E4IC0gU0lMS19GSVhf
Q09OU1QoIDAuNSwgOCApICk7CiAgICAgfQogCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKiovCkBAIC0yNDcsMTQgKzIzMSw4IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFs
eXNpc19GSVgoCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgLyog
TW9yZSBCV0UgZm9yIHNpZ25hbHMgd2l0aCBoaWdoIHByZWRpY3Rpb24gZ2FpbiAqLwogICAgIHN0
cmVuZ3RoX1ExNiA9IHNpbGtfU01VTFdCKCBwc0VuY0N0cmwtPnByZWRHYWluX1ExNiwgU0lMS19G
SVhfQ09OU1QoIEZJTkRfUElUQ0hfV0hJVEVfTk9JU0VfRlJBQ1RJT04sIDE2ICkgKTsKLSAgICBC
V0V4cDFfUTE2ID0gQldFeHAyX1ExNiA9IHNpbGtfRElWMzJfdmFyUSggU0lMS19GSVhfQ09OU1Qo
IEJBTkRXSURUSF9FWFBBTlNJT04sIDE2ICksCisgICAgQldFeHBfUTE2ID0gc2lsa19ESVYzMl92
YXJRKCBTSUxLX0ZJWF9DT05TVCggQkFORFdJRFRIX0VYUEFOU0lPTiwgMTYgKSwKICAgICAgICAg
c2lsa19TTUxBV1coIFNJTEtfRklYX0NPTlNUKCAxLjAsIDE2ICksIHN0cmVuZ3RoX1ExNiwgc3Ry
ZW5ndGhfUTE2ICksIDE2ICk7Ci0gICAgZGVsdGFfUTE2ICA9IHNpbGtfU01VTFdCKCBTSUxLX0ZJ
WF9DT05TVCggMS4wLCAxNiApIC0gc2lsa19TTVVMQkIoIDMsIHBzRW5jQ3RybC0+Y29kaW5nX3F1
YWxpdHlfUTE0ICksCi0gICAgICAgIFNJTEtfRklYX0NPTlNUKCBMT1dfUkFURV9CQU5EV0lEVEhf
RVhQQU5TSU9OX0RFTFRBLCAxNiApICk7Ci0gICAgQldFeHAxX1ExNiA9IHNpbGtfU1VCMzIoIEJX
RXhwMV9RMTYsIGRlbHRhX1ExNiApOwotICAgIEJXRXhwMl9RMTYgPSBzaWxrX0FERDMyKCBCV0V4
cDJfUTE2LCBkZWx0YV9RMTYgKTsKLSAgICAvKiBCV0V4cDEgd2lsbCBiZSBhcHBsaWVkIGFmdGVy
IEJXRXhwMiwgc28gbWFrZSBpdCByZWxhdGl2ZSAqLwotICAgIEJXRXhwMV9RMTYgPSBzaWxrX0RJ
VjMyXzE2KCBzaWxrX0xTSElGVCggQldFeHAxX1ExNiwgMTQgKSwgc2lsa19SU0hJRlQoIEJXRXhw
Ml9RMTYsIDIgKSApOwogCiAgICAgaWYoIHBzRW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsK
ICAgICAgICAgLyogU2xpZ2h0bHkgbW9yZSB3YXJwaW5nIGluIGFuYWx5c2lzIHdpbGwgbW92ZSBx
dWFudGl6YXRpb24gbm9pc2UgdXAgaW4gZnJlcXVlbmN5LCB3aGVyZSBpdCdzIGJldHRlciBtYXNr
ZWQgKi8KQEAgLTI4NCw3ICsyNjIsNyBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNf
RklYKAogCiAgICAgICAgIGlmKCBwc0VuYy0+c0Ntbi53YXJwaW5nX1ExNiA+IDAgKSB7CiAgICAg
ICAgICAgICAvKiBDYWxjdWxhdGUgd2FycGVkIGF1dG8gY29ycmVsYXRpb24gKi8KLSAgICAgICAg
ICAgIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoIGF1dG9fY29yciwgJnNjYWxlLCB4
X3dpbmRvd2VkLCB3YXJwaW5nX1ExNiwgcHNFbmMtPnNDbW4uc2hhcGVXaW5MZW5ndGgsIHBzRW5j
LT5zQ21uLnNoYXBpbmdMUENPcmRlciApOworICAgICAgICAgICAgc2lsa193YXJwZWRfYXV0b2Nv
cnJlbGF0aW9uX0ZJWCggYXV0b19jb3JyLCAmc2NhbGUsIHhfd2luZG93ZWQsIHdhcnBpbmdfUTE2
LCBwc0VuYy0+c0Ntbi5zaGFwZVdpbkxlbmd0aCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVy
LCBhcmNoICk7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvKiBDYWxjdWxhdGUgcmVn
dWxhciBhdXRvIGNvcnJlbGF0aW9uICovCiAgICAgICAgICAgICBzaWxrX2F1dG9jb3JyKCBhdXRv
X2NvcnIsICZzY2FsZSwgeF93aW5kb3dlZCwgcHNFbmMtPnNDbW4uc2hhcGVXaW5MZW5ndGgsIHBz
RW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciArIDEsIGFyY2ggKTsKQEAgLTI5OSw3ICsyNzcsNyBA
QCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogICAgICAgICBzaWxrX2Fzc2Vy
dCggbnJnID49IDAgKTsKIAogICAgICAgICAvKiBDb252ZXJ0IHJlZmxlY3Rpb24gY29lZmZpY2ll
bnRzIHRvIHByZWRpY3Rpb24gY29lZmZpY2llbnRzICovCi0gICAgICAgIHNpbGtfazJhX1ExNigg
QVIyX1EyNCwgcmVmbF9jb2VmX1ExNiwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7Cisg
ICAgICAgIHNpbGtfazJhX1ExNiggQVJfUTI0LCByZWZsX2NvZWZfUTE2LCBwc0VuYy0+c0Ntbi5z
aGFwaW5nTFBDT3JkZXIgKTsKIAogICAgICAgICBRbnJnID0gLXNjYWxlOyAgICAgICAgICAvKiBy
YW5nZTogLTEyLi4uMzAqLwogICAgICAgICBzaWxrX2Fzc2VydCggUW5yZyA+PSAtMTIgKTsKQEAg
LTMxOCw0MCArMjk2LDM0IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAK
ICAgICAgICAgaWYoIHBzRW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKICAgICAgICAgICAg
IC8qIEFkanVzdCBnYWluIGZvciB3YXJwaW5nICovCi0gICAgICAgICAgICBnYWluX211bHRfUTE2
ID0gd2FycGVkX2dhaW4oIEFSMl9RMjQsIHdhcnBpbmdfUTE2LCBwc0VuYy0+c0Ntbi5zaGFwaW5n
TFBDT3JkZXIgKTsKLSAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBwc0VuY0N0cmwtPkdhaW5zX1Ex
NlsgayBdID49IDAgKTsKLSAgICAgICAgICAgIGlmICggc2lsa19TTVVMV1coIHNpbGtfUlNISUZU
X1JPVU5EKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdLCAxICksIGdhaW5fbXVsdF9RMTYgKSA+
PSAoIHNpbGtfaW50MzJfTUFYID4+IDEgKSApIHsKLSAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+
R2FpbnNfUTE2WyBrIF0gPSBzaWxrX2ludDMyX01BWDsKKyAgICAgICAgICAgIGdhaW5fbXVsdF9R
MTYgPSB3YXJwZWRfZ2FpbiggQVJfUTI0LCB3YXJwaW5nX1ExNiwgcHNFbmMtPnNDbW4uc2hhcGlu
Z0xQQ09yZGVyICk7CisgICAgICAgICAgICBzaWxrX2Fzc2VydCggcHNFbmNDdHJsLT5HYWluc19R
MTZbIGsgXSA+IDAgKTsKKyAgICAgICAgICAgIGlmKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBd
IDwgU0lMS19GSVhfQ09OU1QoIDAuMjUsIDE2ICkgKSB7CisgICAgICAgICAgICAgICAgcHNFbmND
dHJsLT5HYWluc19RMTZbIGsgXSA9IHNpbGtfU01VTFdXKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsg
ayBdLCBnYWluX211bHRfUTE2ICk7CiAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
ICAgcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSA9IHNpbGtfU01VTFdXKCBwc0VuY0N0cmwtPkdh
aW5zX1ExNlsgayBdLCBnYWluX211bHRfUTE2ICk7CisgICAgICAgICAgICAgICAgcHNFbmNDdHJs
LT5HYWluc19RMTZbIGsgXSA9IHNpbGtfU01VTFdXKCBzaWxrX1JTSElGVF9ST1VORCggcHNFbmND
dHJsLT5HYWluc19RMTZbIGsgXSwgMSApLCBnYWluX211bHRfUTE2ICk7CisgICAgICAgICAgICAg
ICAgaWYgKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID49ICggc2lsa19pbnQzMl9NQVggPj4g
MSApICkgeworICAgICAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID0g
c2lsa19pbnQzMl9NQVg7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAg
ICAgICAgcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSA9IHNpbGtfTFNISUZUMzIoIHBzRW5jQ3Ry
bC0+R2FpbnNfUTE2WyBrIF0sIDEgKTsKKyAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9
CisgICAgICAgICAgICBzaWxrX2Fzc2VydCggcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSA+IDAg
KTsKICAgICAgICAgfQogCi0gICAgICAgIC8qIEJhbmR3aWR0aCBleHBhbnNpb24gZm9yIHN5bnRo
ZXNpcyBmaWx0ZXIgc2hhcGluZyAqLwotICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfMzIoIEFSMl9R
MjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciwgQldFeHAyX1ExNiApOwotCi0gICAgICAg
IC8qIENvbXB1dGUgbm9pc2Ugc2hhcGluZyBmaWx0ZXIgY29lZmZpY2llbnRzICovCi0gICAgICAg
IHNpbGtfbWVtY3B5KCBBUjFfUTI0LCBBUjJfUTI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3Jk
ZXIgKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOwotCi0gICAgICAgIC8qIEJhbmR3aWR0aCBleHBh
bnNpb24gZm9yIGFuYWx5c2lzIGZpbHRlciBzaGFwaW5nICovCi0gICAgICAgIHNpbGtfYXNzZXJ0
KCBCV0V4cDFfUTE2IDw9IFNJTEtfRklYX0NPTlNUKCAxLjAsIDE2ICkgKTsKLSAgICAgICAgc2ls
a19id2V4cGFuZGVyXzMyKCBBUjFfUTI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIEJX
RXhwMV9RMTYgKTsKLQotICAgICAgICAvKiBSYXRpbyBvZiBwcmVkaWN0aW9uIGdhaW5zLCBpbiBl
bmVyZ3kgZG9tYWluICovCi0gICAgICAgIHByZV9ucmdfUTMwID0gc2lsa19MUENfaW52ZXJzZV9w
cmVkX2dhaW5fUTI0KCBBUjJfUTI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKLSAg
ICAgICAgbnJnICAgICAgICAgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoIEFSMV9R
MjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwotCi0gICAgICAgIC8qcHNFbmNDdHJs
LT5HYWluc1ByZVsgayBdID0gMS4wZiAtIDAuN2YgKiAoIDEuMGYgLSBwcmVfbnJnIC8gbnJnICkg
PSAwLjNmICsgMC43ZiAqIHByZV9ucmcgLyBucmc7Ki8KLSAgICAgICAgcHJlX25yZ19RMzAgPSBz
aWxrX0xTSElGVDMyKCBzaWxrX1NNVUxXQiggcHJlX25yZ19RMzAsIFNJTEtfRklYX0NPTlNUKCAw
LjcsIDE1ICkgKSwgMSApOwotICAgICAgICBwc0VuY0N0cmwtPkdhaW5zUHJlX1ExNFsgayBdID0g
KCBvcHVzX2ludCApIFNJTEtfRklYX0NPTlNUKCAwLjMsIDE0ICkgKyBzaWxrX0RJVjMyX3ZhclEo
IHByZV9ucmdfUTMwLCBucmcsIDE0ICk7CisgICAgICAgIC8qIEJhbmR3aWR0aCBleHBhbnNpb24g
Ki8KKyAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBBUl9RMjQsIHBzRW5jLT5zQ21uLnNoYXBp
bmdMUENPcmRlciwgQldFeHBfUTE2ICk7CiAKLSAgICAgICAgLyogQ29udmVydCB0byBtb25pYyB3
YXJwZWQgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgYW5kIGxpbWl0IGFic29sdXRlIHZhbHVlcyAq
LwotICAgICAgICBsaW1pdF93YXJwZWRfY29lZnMoIEFSMl9RMjQsIEFSMV9RMjQsIHdhcnBpbmdf
UTE2LCBTSUxLX0ZJWF9DT05TVCggMy45OTksIDI0ICksIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENP
cmRlciApOworICAgICAgICBpZiggcHNFbmMtPnNDbW4ud2FycGluZ19RMTYgPiAwICkgeworICAg
ICAgICAgICAgLyogQ29udmVydCB0byBtb25pYyB3YXJwZWQgcHJlZGljdGlvbiBjb2VmZmljaWVu
dHMgYW5kIGxpbWl0IGFic29sdXRlIHZhbHVlcyAqLworICAgICAgICAgICAgbGltaXRfd2FycGVk
X2NvZWZzKCBBUl9RMjQsIHdhcnBpbmdfUTE2LCBTSUxLX0ZJWF9DT05TVCggMy45OTksIDI0ICks
IHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwogCi0gICAgICAgIC8qIENvbnZlcnQgZnJv
bSBRMjQgdG8gUTEzIGFuZCBzdG9yZSBpbiBpbnQxNiAqLwotICAgICAgICBmb3IoIGkgPSAwOyBp
IDwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyOyBpKysgKSB7Ci0gICAgICAgICAgICBwc0Vu
Y0N0cmwtPkFSMV9RMTNbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSICsgaSBdID0gKG9wdXNfaW50
MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIEFSMV9RMjRbIGkgXSwgMTEgKSApOwot
ICAgICAgICAgICAgcHNFbmNDdHJsLT5BUjJfUTEzWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiAr
IGkgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKCBBUjJfUTI0
WyBpIF0sIDExICkgKTsKKyAgICAgICAgICAgIC8qIENvbnZlcnQgZnJvbSBRMjQgdG8gUTEzIGFu
ZCBzdG9yZSBpbiBpbnQxNiAqLworICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IHBzRW5jLT5z
Q21uLnNoYXBpbmdMUENPcmRlcjsgaSsrICkgeworICAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+
QVJfUTEzWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiArIGkgXSA9IChvcHVzX2ludDE2KXNpbGtf
U0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKCBBUl9RMjRbIGkgXSwgMTEgKSApOworICAgICAgICAg
ICAgfQorICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgc2lsa19MUENfZml0KCAmcHNFbmND
dHJsLT5BUl9RMTNbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sIEFSX1EyNCwgMTMsIDI0LCBw
c0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKICAgICAgICAgfQogICAgIH0KIApAQCAtMzY4
LDExICszNDAsNiBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogICAgICAg
ICBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID0gc2lsa19BRERfUE9TX1NBVDMyKCBwc0VuY0N0
cmwtPkdhaW5zX1ExNlsgayBdLCBnYWluX2FkZF9RMTYgKTsKICAgICB9CiAKLSAgICBnYWluX211
bHRfUTE2ID0gU0lMS19GSVhfQ09OU1QoIDEuMCwgMTYgKSArIHNpbGtfUlNISUZUX1JPVU5EKCBz
aWxrX01MQSggU0lMS19GSVhfQ09OU1QoIElOUFVUX1RJTFQsIDI2ICksCi0gICAgICAgIHBzRW5j
Q3RybC0+Y29kaW5nX3F1YWxpdHlfUTE0LCBTSUxLX0ZJWF9DT05TVCggSElHSF9SQVRFX0lOUFVU
X1RJTFQsIDEyICkgKSwgMTAgKTsKLSAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmMtPnNDbW4ubmJf
c3ViZnI7IGsrKyApIHsKLSAgICAgICAgcHNFbmNDdHJsLT5HYWluc1ByZV9RMTRbIGsgXSA9IHNp
bGtfU01VTFdCKCBnYWluX211bHRfUTE2LCBwc0VuY0N0cmwtPkdhaW5zUHJlX1ExNFsgayBdICk7
Ci0gICAgfQogCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKi8KICAgICAvKiBDb250cm9sIGxvdy1mcmVxdWVuY3kgc2hhcGluZyBhbmQgbm9pc2Ug
dGlsdCAqLwpAQCAtNDEwLDE0ICszNzcsNiBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlz
aXNfRklYKAogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIEhBUk1P
TklDIFNIQVBJTkcgQ09OVFJPTCAqLwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioq
LwotICAgIC8qIENvbnRyb2wgYm9vc3Rpbmcgb2YgaGFybW9uaWMgZnJlcXVlbmNpZXMgKi8KLSAg
ICBIYXJtQm9vc3RfUTE2ID0gc2lsa19TTVVMV0IoIHNpbGtfU01VTFdCKCBTSUxLX0ZJWF9DT05T
VCggMS4wLCAxNyApIC0gc2lsa19MU0hJRlQoIHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxpdHlfUTE0
LCAzICksCi0gICAgICAgIHBzRW5jLT5MVFBDb3JyX1ExNSApLCBTSUxLX0ZJWF9DT05TVCggTE9X
X1JBVEVfSEFSTU9OSUNfQk9PU1QsIDE2ICkgKTsKLQotICAgIC8qIE1vcmUgaGFybW9uaWMgYm9v
c3QgZm9yIG5vaXN5IGlucHV0IHNpZ25hbHMgKi8KLSAgICBIYXJtQm9vc3RfUTE2ID0gc2lsa19T
TUxBV0IoIEhhcm1Cb29zdF9RMTYsCi0gICAgICAgIFNJTEtfRklYX0NPTlNUKCAxLjAsIDE2ICkg
LSBzaWxrX0xTSElGVCggcHNFbmNDdHJsLT5pbnB1dF9xdWFsaXR5X1ExNCwgMiApLCBTSUxLX0ZJ
WF9DT05TVCggTE9XX0lOUFVUX1FVQUxJVFlfSEFSTU9OSUNfQk9PU1QsIDE2ICkgKTsKLQogICAg
IGlmKCBVU0VfSEFSTV9TSEFQSU5HICYmIHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9
PSBUWVBFX1ZPSUNFRCApIHsKICAgICAgICAgLyogTW9yZSBoYXJtb25pYyBub2lzZSBzaGFwaW5n
IGZvciBoaWdoIGJpdHJhdGVzIG9yIG5vaXN5IGlucHV0ICovCiAgICAgICAgIEhhcm1TaGFwZUdh
aW5fUTE2ID0gc2lsa19TTUxBV0IoIFNJTEtfRklYX0NPTlNUKCBIQVJNT05JQ19TSEFQSU5HLCAx
NiApLApAQCAtNDM1LDE0ICszOTQsMTEgQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lz
X0ZJWCgKICAgICAvKiBTbW9vdGggb3ZlciBzdWJmcmFtZXMgKi8KICAgICAvKioqKioqKioqKioq
KioqKioqKioqKioqKi8KICAgICBmb3IoIGsgPSAwOyBrIDwgTUFYX05CX1NVQkZSOyBrKysgKSB7
Ci0gICAgICAgIHBzU2hhcGVTdC0+SGFybUJvb3N0X3NtdGhfUTE2ID0KLSAgICAgICAgICAgIHNp
bGtfU01MQVdCKCBwc1NoYXBlU3QtPkhhcm1Cb29zdF9zbXRoX1ExNiwgICAgIEhhcm1Cb29zdF9R
MTYgICAgIC0gcHNTaGFwZVN0LT5IYXJtQm9vc3Rfc210aF9RMTYsICAgICBTSUxLX0ZJWF9DT05T
VCggU1VCRlJfU01USF9DT0VGLCAxNiApICk7CiAgICAgICAgIHBzU2hhcGVTdC0+SGFybVNoYXBl
R2Fpbl9zbXRoX1ExNiA9CiAgICAgICAgICAgICBzaWxrX1NNTEFXQiggcHNTaGFwZVN0LT5IYXJt
U2hhcGVHYWluX3NtdGhfUTE2LCBIYXJtU2hhcGVHYWluX1ExNiAtIHBzU2hhcGVTdC0+SGFybVNo
YXBlR2Fpbl9zbXRoX1ExNiwgU0lMS19GSVhfQ09OU1QoIFNVQkZSX1NNVEhfQ09FRiwgMTYgKSAp
OwogICAgICAgICBwc1NoYXBlU3QtPlRpbHRfc210aF9RMTYgPQogICAgICAgICAgICAgc2lsa19T
TUxBV0IoIHBzU2hhcGVTdC0+VGlsdF9zbXRoX1ExNiwgICAgICAgICAgVGlsdF9RMTYgICAgICAg
ICAgLSBwc1NoYXBlU3QtPlRpbHRfc210aF9RMTYsICAgICAgICAgIFNJTEtfRklYX0NPTlNUKCBT
VUJGUl9TTVRIX0NPRUYsIDE2ICkgKTsKIAotICAgICAgICBwc0VuY0N0cmwtPkhhcm1Cb29zdF9R
MTRbIGsgXSAgICAgPSAoIG9wdXNfaW50IClzaWxrX1JTSElGVF9ST1VORCggcHNTaGFwZVN0LT5I
YXJtQm9vc3Rfc210aF9RMTYsICAgICAyICk7CiAgICAgICAgIHBzRW5jQ3RybC0+SGFybVNoYXBl
R2Fpbl9RMTRbIGsgXSA9ICggb3B1c19pbnQgKXNpbGtfUlNISUZUX1JPVU5EKCBwc1NoYXBlU3Qt
Pkhhcm1TaGFwZUdhaW5fc210aF9RMTYsIDIgKTsKICAgICAgICAgcHNFbmNDdHJsLT5UaWx0X1Ex
NFsgayBdICAgICAgICAgID0gKCBvcHVzX2ludCApc2lsa19SU0hJRlRfUk9VTkQoIHBzU2hhcGVT
dC0+VGlsdF9zbXRoX1ExNiwgICAgICAgICAgMiApOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9m
aXhlZC9waXRjaF9hbmFseXNpc19jb3JlX0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3BpdGNoX2FuYWx5c2lz
X2NvcmVfRklYLmMKaW5kZXggMDFiYjlmYzBhODM3YjZjMzQ5MzNmY2IwNjZhNzkxODczNTQwZGVh
My4uOGRmMTA5ZTZjZjUxMTA3ZTQ3NzZjNzAzZTJhNTYyZDg5YjgyNmZlZiAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2ZpeGVkL3BpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3BpdGNo
X2FuYWx5c2lzX2NvcmVfRklYLmMKQEAgLTgwLDcgKzgwLDcgQEAgc3RhdGljIHZvaWQgc2lsa19Q
X0FuYV9jYWxjX2VuZXJneV9zdDMoCiAvKiAgICAgIEZJWEVEIFBPSU5UIENPUkUgUElUQ0ggQU5B
TFlTSVMgRlVOQ1RJT04gICAgICAgICAgICAgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogb3B1c19pbnQgc2lsa19waXRj
aF9hbmFseXNpc19jb3JlKCAgICAgICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0
ZTogMCB2b2ljZWQsIDEgdW52b2ljZWQgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25z
dCBvcHVzX2ludDE2ICAgICAgICAgICAgKmZyYW1lLCAgICAgICAgICAgICAvKiBJICAgIFNpZ25h
bCBvZiBsZW5ndGggUEVfRlJBTUVfTEVOR1RIX01TKkZzX2tIeiAgICAgICAgICAgICAgICAgICov
CisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICpmcmFtZV91bnNjYWxlZCwgICAgLyog
SSAgICBTaWduYWwgb2YgbGVuZ3RoIFBFX0ZSQU1FX0xFTkdUSF9NUypGc19rSHogICAgICAgICAg
ICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAqcGl0Y2hfb3V0LCAg
ICAgICAgIC8qIE8gICAgNCBwaXRjaCBsYWcgdmFsdWVzICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKmxh
Z0luZGV4LCAgICAgICAgICAvKiBPICAgIExhZyBJbmRleCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAg
ICAgICAgICpjb250b3VySW5kZXgsICAgICAgLyogTyAgICBQaXRjaCBjb250b3VyIEluZGV4ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtOTQsMTYgKzk0LDE3
IEBAIG9wdXNfaW50IHNpbGtfcGl0Y2hfYW5hbHlzaXNfY29yZSggICAgICAgICAgICAgICAgICAv
KiBPICAgIFZvaWNpbmcgZXN0aW1hdGU6IDAKICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAg
ICAgYXJjaCAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7Ci0gICAgVkFSREVDTCgg
b3B1c19pbnQxNiwgZnJhbWVfOGtIeiApOworICAgIFZBUkRFQ0woIG9wdXNfaW50MTYsIGZyYW1l
XzhrSHpfYnVmICk7CiAgICAgVkFSREVDTCggb3B1c19pbnQxNiwgZnJhbWVfNGtIeiApOworICAg
IFZBUkRFQ0woIG9wdXNfaW50MTYsIGZyYW1lX3NjYWxlZCApOwogICAgIG9wdXNfaW50MzIgZmls
dF9zdGF0ZVsgNiBdOwotICAgIGNvbnN0IG9wdXNfaW50MTYgKmlucHV0X2ZyYW1lX3B0cjsKKyAg
ICBjb25zdCBvcHVzX2ludDE2ICpmcmFtZSwgKmZyYW1lXzhrSHo7CiAgICAgb3B1c19pbnQgICBp
LCBrLCBkLCBqOwogICAgIFZBUkRFQ0woIG9wdXNfaW50MTYsIEMgKTsKICAgICBWQVJERUNMKCBv
cHVzX2ludDMyLCB4Y29ycjMyICk7CiAgICAgY29uc3Qgb3B1c19pbnQxNiAqdGFyZ2V0X3B0ciwg
KmJhc2lzX3B0cjsKLSAgICBvcHVzX2ludDMyIGNyb3NzX2NvcnIsIG5vcm1hbGl6ZXIsIGVuZXJn
eSwgc2hpZnQsIGVuZXJneV9iYXNpcywgZW5lcmd5X3RhcmdldDsKLSAgICBvcHVzX2ludCAgIGRf
c3JjaFsgUEVfRF9TUkNIX0xFTkdUSCBdLCBDbWF4LCBsZW5ndGhfZF9zcmNoLCBsZW5ndGhfZF9j
b21wOworICAgIG9wdXNfaW50MzIgY3Jvc3NfY29yciwgbm9ybWFsaXplciwgZW5lcmd5LCBlbmVy
Z3lfYmFzaXMsIGVuZXJneV90YXJnZXQ7CisgICAgb3B1c19pbnQgICBkX3NyY2hbIFBFX0RfU1JD
SF9MRU5HVEggXSwgQ21heCwgbGVuZ3RoX2Rfc3JjaCwgbGVuZ3RoX2RfY29tcCwgc2hpZnQ7CiAg
ICAgVkFSREVDTCggb3B1c19pbnQxNiwgZF9jb21wICk7CiAgICAgb3B1c19pbnQzMiBzdW0sIHRo
cmVzaG9sZCwgbGFnX2NvdW50ZXI7CiAgICAgb3B1c19pbnQgICBDQmltYXgsIENCaW1heF9uZXcs
IENCaW1heF9vbGQsIGxhZywgc3RhcnRfbGFnLCBlbmRfbGFnLCBsYWdfbmV3OwpAQCAtMTE5LDYg
KzEyMCw3IEBAIG9wdXNfaW50IHNpbGtfcGl0Y2hfYW5hbHlzaXNfY29yZSggICAgICAgICAgICAg
ICAgICAvKiBPICAgIFZvaWNpbmcgZXN0aW1hdGU6IDAKICAgICBvcHVzX2ludDMyIGRlbHRhX2xh
Z19sb2cyX3Nxcl9RNywgbGFnX2xvZzJfUTcsIHByZXZMYWdfbG9nMl9RNywgcHJldl9sYWdfYmlh
c19RMTM7CiAgICAgY29uc3Qgb3B1c19pbnQ4ICpMYWdfQ0JfcHRyOwogICAgIFNBVkVfU1RBQ0s7
CisKICAgICAvKiBDaGVjayBmb3IgdmFsaWQgc2FtcGxpbmcgZnJlcXVlbmN5ICovCiAgICAgc2ls
a19hc3NlcnQoIEZzX2tIeiA9PSA4IHx8IEZzX2tIeiA9PSAxMiB8fCBGc19rSHogPT0gMTYgKTsK
IApAQCAtMTM3LDE3ICsxMzksMzMgQEAgb3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19jb3Jl
KCAgICAgICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMAogICAgIG1pbl9s
YWcgICAgICAgICAgID0gUEVfTUlOX0xBR19NUyAqIEZzX2tIejsKICAgICBtYXhfbGFnICAgICAg
ICAgICA9IFBFX01BWF9MQUdfTVMgKiBGc19rSHogLSAxOwogCisgICAgLyogRG93bnNjYWxlIGlu
cHV0IGlmIG5lY2Vzc2FyeSAqLworICAgIHNpbGtfc3VtX3Nxcl9zaGlmdCggJmVuZXJneSwgJnNo
aWZ0LCBmcmFtZV91bnNjYWxlZCwgZnJhbWVfbGVuZ3RoICk7CisgICAgc2hpZnQgKz0gMyAtIHNp
bGtfQ0xaMzIoIGVuZXJneSApOyAgICAgICAgLyogYXQgbGVhc3QgdHdvIGJpdHMgaGVhZHJvb20g
Ki8KKyAgICBBTExPQyggZnJhbWVfc2NhbGVkLCBmcmFtZV9sZW5ndGgsIG9wdXNfaW50MTYgKTsK
KyAgICBpZiggc2hpZnQgPiAwICkgeworICAgICAgICBzaGlmdCA9IHNpbGtfUlNISUZUKCBzaGlm
dCArIDEsIDEgKTsKKyAgICAgICAgZm9yKCBpID0gMDsgaSA8IGZyYW1lX2xlbmd0aDsgaSsrICkg
eworICAgICAgICAgICAgZnJhbWVfc2NhbGVkWyBpIF0gPSBzaWxrX1JTSElGVCggZnJhbWVfdW5z
Y2FsZWRbIGkgXSwgc2hpZnQgKTsKKyAgICAgICAgfQorICAgICAgICBmcmFtZSA9IGZyYW1lX3Nj
YWxlZDsKKyAgICB9IGVsc2UgeworICAgICAgICBmcmFtZSA9IGZyYW1lX3Vuc2NhbGVkOworICAg
IH0KKworICAgIEFMTE9DKCBmcmFtZV84a0h6X2J1ZiwgKCBGc19rSHogPT0gOCApID8gMSA6IGZy
YW1lX2xlbmd0aF84a0h6LCBvcHVzX2ludDE2ICk7CiAgICAgLyogUmVzYW1wbGUgZnJvbSBpbnB1
dCBzYW1wbGVkIGF0IEZzX2tIeiB0byA4IGtIeiAqLwotICAgIEFMTE9DKCBmcmFtZV84a0h6LCBm
cmFtZV9sZW5ndGhfOGtIeiwgb3B1c19pbnQxNiApOwogICAgIGlmKCBGc19rSHogPT0gMTYgKSB7
CiAgICAgICAgIHNpbGtfbWVtc2V0KCBmaWx0X3N0YXRlLCAwLCAyICogc2l6ZW9mKCBvcHVzX2lu
dDMyICkgKTsKLSAgICAgICAgc2lsa19yZXNhbXBsZXJfZG93bjIoIGZpbHRfc3RhdGUsIGZyYW1l
XzhrSHosIGZyYW1lLCBmcmFtZV9sZW5ndGggKTsKKyAgICAgICAgc2lsa19yZXNhbXBsZXJfZG93
bjIoIGZpbHRfc3RhdGUsIGZyYW1lXzhrSHpfYnVmLCBmcmFtZSwgZnJhbWVfbGVuZ3RoICk7Cisg
ICAgICAgIGZyYW1lXzhrSHogPSBmcmFtZV84a0h6X2J1ZjsKICAgICB9IGVsc2UgaWYoIEZzX2tI
eiA9PSAxMiApIHsKICAgICAgICAgc2lsa19tZW1zZXQoIGZpbHRfc3RhdGUsIDAsIDYgKiBzaXpl
b2YoIG9wdXNfaW50MzIgKSApOwotICAgICAgICBzaWxrX3Jlc2FtcGxlcl9kb3duMl8zKCBmaWx0
X3N0YXRlLCBmcmFtZV84a0h6LCBmcmFtZSwgZnJhbWVfbGVuZ3RoICk7CisgICAgICAgIHNpbGtf
cmVzYW1wbGVyX2Rvd24yXzMoIGZpbHRfc3RhdGUsIGZyYW1lXzhrSHpfYnVmLCBmcmFtZSwgZnJh
bWVfbGVuZ3RoICk7CisgICAgICAgIGZyYW1lXzhrSHogPSBmcmFtZV84a0h6X2J1ZjsKICAgICB9
IGVsc2UgewogICAgICAgICBzaWxrX2Fzc2VydCggRnNfa0h6ID09IDggKTsKLSAgICAgICAgc2ls
a19tZW1jcHkoIGZyYW1lXzhrSHosIGZyYW1lLCBmcmFtZV9sZW5ndGhfOGtIeiAqIHNpemVvZihv
cHVzX2ludDE2KSApOworICAgICAgICBmcmFtZV84a0h6ID0gZnJhbWU7CiAgICAgfQogCiAgICAg
LyogRGVjaW1hdGUgYWdhaW4gdG8gNCBrSHogKi8KQEAgLTE2MCwxOSArMTc4LDYgQEAgb3B1c19p
bnQgc2lsa19waXRjaF9hbmFseXNpc19jb3JlKCAgICAgICAgICAgICAgICAgIC8qIE8gICAgVm9p
Y2luZyBlc3RpbWF0ZTogMAogICAgICAgICBmcmFtZV80a0h6WyBpIF0gPSBzaWxrX0FERF9TQVQx
NiggZnJhbWVfNGtIelsgaSBdLCBmcmFtZV80a0h6WyBpIC0gMSBdICk7CiAgICAgfQogCi0gICAg
LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioKLSAgICAqKiBTY2FsZSA0IGtIeiBzaWduYWwgZG93biB0
byBwcmV2ZW50IGNvcnJlbGF0aW9ucyBtZWFzdXJlcyBmcm9tIG92ZXJmbG93aW5nCi0gICAgKiog
ZmluZCBzY2FsaW5nIGFzIG1heCBzY2FsaW5nIGZvciBlYWNoIDhrSHooPykgc3ViZnJhbWUKLSAg
ICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqLwotCi0gICAgLyogSW5uZXIgcHJvZHVjdCBpcyBjYWxj
dWxhdGVkIHdpdGggZGlmZmVyZW50IGxlbmd0aHMsIHNvIHNjYWxlIGZvciB0aGUgd29yc3QgY2Fz
ZSAqLwotICAgIHNpbGtfc3VtX3Nxcl9zaGlmdCggJmVuZXJneSwgJnNoaWZ0LCBmcmFtZV80a0h6
LCBmcmFtZV9sZW5ndGhfNGtIeiApOwotICAgIGlmKCBzaGlmdCA+IDAgKSB7Ci0gICAgICAgIHNo
aWZ0ID0gc2lsa19SU0hJRlQoIHNoaWZ0LCAxICk7Ci0gICAgICAgIGZvciggaSA9IDA7IGkgPCBm
cmFtZV9sZW5ndGhfNGtIejsgaSsrICkgewotICAgICAgICAgICAgZnJhbWVfNGtIelsgaSBdID0g
c2lsa19SU0hJRlQoIGZyYW1lXzRrSHpbIGkgXSwgc2hpZnQgKTsKLSAgICAgICAgfQotICAgIH0K
IAogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAgICAqIEZJUlNUIFNUQUdFLCBvcGVyYXRp
bmcgaW4gNCBraHoKQEAgLTMxMSwxOCArMzE2LDYgQEAgb3B1c19pbnQgc2lsa19waXRjaF9hbmFs
eXNpc19jb3JlKCAgICAgICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMAog
ICAgICoqIFNFQ09ORCBTVEFHRSwgb3BlcmF0aW5nIGF0IDgga0h6LCBvbiBsYWcgc2VjdGlvbnMg
d2l0aCBoaWdoIGNvcnJlbGF0aW9uCiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8K
IAotICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAgICAqKiBTY2FsZSBzaWduYWwgZG93biB0
byBhdm9pZCBjb3JyZWxhdGlvbnMgbWVhc3VyZXMgZnJvbSBvdmVyZmxvd2luZwotICAgICoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCi0gICAgLyogZmluZCBzY2FsaW5nIGFzIG1heCBzY2FsaW5nIGZv
ciBlYWNoIHN1YmZyYW1lICovCi0gICAgc2lsa19zdW1fc3FyX3NoaWZ0KCAmZW5lcmd5LCAmc2hp
ZnQsIGZyYW1lXzhrSHosIGZyYW1lX2xlbmd0aF84a0h6ICk7Ci0gICAgaWYoIHNoaWZ0ID4gMCAp
IHsKLSAgICAgICAgc2hpZnQgPSBzaWxrX1JTSElGVCggc2hpZnQsIDEgKTsKLSAgICAgICAgZm9y
KCBpID0gMDsgaSA8IGZyYW1lX2xlbmd0aF84a0h6OyBpKysgKSB7Ci0gICAgICAgICAgICBmcmFt
ZV84a0h6WyBpIF0gPSBzaWxrX1JTSElGVCggZnJhbWVfOGtIelsgaSBdLCBzaGlmdCApOwotICAg
ICAgICB9Ci0gICAgfQotCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAgICogRmlu
ZCBlbmVyZ3kgb2YgZWFjaCBzdWJmcmFtZSBwcm9qZWN0ZWQgb250byBpdHMgaGlzdG9yeSwgZm9y
IGEgcmFuZ2Ugb2YgZGVsYXlzCiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtNDYy
LDI0ICs0NTUsNiBAQCBvcHVzX2ludCBzaWxrX3BpdGNoX2FuYWx5c2lzX2NvcmUoICAgICAgICAg
ICAgICAgICAgLyogTyAgICBWb2ljaW5nIGVzdGltYXRlOiAwCiAgICAgc2lsa19hc3NlcnQoICpM
VFBDb3JyX1ExNSA+PSAwICk7CiAKICAgICBpZiggRnNfa0h6ID4gOCApIHsKLSAgICAgICAgVkFS
REVDTCggb3B1c19pbnQxNiwgc2NyYXRjaF9tZW0gKTsKLSAgICAgICAgLyoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KLSAgICAgICAgLyogU2NhbGUgaW5wdXQgc2lnbmFsIGRvd24gdG8gYXZvaWQgY29ycmVs
YXRpb25zIG1lYXN1cmVzIGZyb20gb3ZlcmZsb3dpbmcgKi8KLSAgICAgICAgLyoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKi8KLSAgICAgICAgLyogZmluZCBzY2FsaW5nIGFzIG1heCBzY2FsaW5nIGZvciBlYWNo
IHN1YmZyYW1lICovCi0gICAgICAgIHNpbGtfc3VtX3Nxcl9zaGlmdCggJmVuZXJneSwgJnNoaWZ0
LCBmcmFtZSwgZnJhbWVfbGVuZ3RoICk7Ci0gICAgICAgIEFMTE9DKCBzY3JhdGNoX21lbSwgc2hp
ZnQgPiAwID8gZnJhbWVfbGVuZ3RoIDogQUxMT0NfTk9ORSwgb3B1c19pbnQxNiApOwotICAgICAg
ICBpZiggc2hpZnQgPiAwICkgewotICAgICAgICAgICAgLyogTW92ZSBzaWduYWwgdG8gc2NyYXRj
aCBtZW0gYmVjYXVzZSB0aGUgaW5wdXQgc2lnbmFsIHNob3VsZCBiZSB1bmNoYW5nZWQgKi8KLSAg
ICAgICAgICAgIHNoaWZ0ID0gc2lsa19SU0hJRlQoIHNoaWZ0LCAxICk7Ci0gICAgICAgICAgICBm
b3IoIGkgPSAwOyBpIDwgZnJhbWVfbGVuZ3RoOyBpKysgKSB7Ci0gICAgICAgICAgICAgICAgc2Ny
YXRjaF9tZW1bIGkgXSA9IHNpbGtfUlNISUZUKCBmcmFtZVsgaSBdLCBzaGlmdCApOwotICAgICAg
ICAgICAgfQotICAgICAgICAgICAgaW5wdXRfZnJhbWVfcHRyID0gc2NyYXRjaF9tZW07Ci0gICAg
ICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBpbnB1dF9mcmFtZV9wdHIgPSBmcmFtZTsKLSAgICAg
ICAgfQotCiAgICAgICAgIC8qIFNlYXJjaCBpbiBvcmlnaW5hbCBzaWduYWwgKi8KIAogICAgICAg
ICBDQmltYXhfb2xkID0gQ0JpbWF4OwpAQCAtNTE5LDE0ICs0OTQsMTQgQEAgb3B1c19pbnQgc2ls
a19waXRjaF9hbmFseXNpc19jb3JlKCAgICAgICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBl
c3RpbWF0ZTogMAogICAgICAgICAvKiBDYWxjdWxhdGUgdGhlIGNvcnJlbGF0aW9ucyBhbmQgZW5l
cmdpZXMgbmVlZGVkIGluIHN0YWdlIDMgKi8KICAgICAgICAgQUxMT0MoIGVuZXJnaWVzX3N0Mywg
bmJfc3ViZnIgKiBuYl9jYmtfc2VhcmNoLCBzaWxrX3BlX3N0YWdlM192YWxzICk7CiAgICAgICAg
IEFMTE9DKCBjcm9zc19jb3JyX3N0MywgbmJfc3ViZnIgKiBuYl9jYmtfc2VhcmNoLCBzaWxrX3Bl
X3N0YWdlM192YWxzICk7Ci0gICAgICAgIHNpbGtfUF9BbmFfY2FsY19jb3JyX3N0MyggIGNyb3Nz
X2NvcnJfc3QzLCBpbnB1dF9mcmFtZV9wdHIsIHN0YXJ0X2xhZywgc2ZfbGVuZ3RoLCBuYl9zdWJm
ciwgY29tcGxleGl0eSwgYXJjaCApOwotICAgICAgICBzaWxrX1BfQW5hX2NhbGNfZW5lcmd5X3N0
MyggZW5lcmdpZXNfc3QzLCBpbnB1dF9mcmFtZV9wdHIsIHN0YXJ0X2xhZywgc2ZfbGVuZ3RoLCBu
Yl9zdWJmciwgY29tcGxleGl0eSwgYXJjaCApOworICAgICAgICBzaWxrX1BfQW5hX2NhbGNfY29y
cl9zdDMoICBjcm9zc19jb3JyX3N0MywgZnJhbWUsIHN0YXJ0X2xhZywgc2ZfbGVuZ3RoLCBuYl9z
dWJmciwgY29tcGxleGl0eSwgYXJjaCApOworICAgICAgICBzaWxrX1BfQW5hX2NhbGNfZW5lcmd5
X3N0MyggZW5lcmdpZXNfc3QzLCBmcmFtZSwgc3RhcnRfbGFnLCBzZl9sZW5ndGgsIG5iX3N1YmZy
LCBjb21wbGV4aXR5LCBhcmNoICk7CiAKICAgICAgICAgbGFnX2NvdW50ZXIgPSAwOwogICAgICAg
ICBzaWxrX2Fzc2VydCggbGFnID09IHNpbGtfU0FUMTYoIGxhZyApICk7CiAgICAgICAgIGNvbnRv
dXJfYmlhc19RMTUgPSBzaWxrX0RJVjMyXzE2KCBTSUxLX0ZJWF9DT05TVCggUEVfRkxBVENPTlRP
VVJfQklBUywgMTUgKSwgbGFnICk7CiAKLSAgICAgICAgdGFyZ2V0X3B0ciA9ICZpbnB1dF9mcmFt
ZV9wdHJbIFBFX0xUUF9NRU1fTEVOR1RIX01TICogRnNfa0h6IF07CisgICAgICAgIHRhcmdldF9w
dHIgPSAmZnJhbWVbIFBFX0xUUF9NRU1fTEVOR1RIX01TICogRnNfa0h6IF07CiAgICAgICAgIGVu
ZXJneV90YXJnZXQgPSBzaWxrX0FERDMyKCBzaWxrX2lubmVyX3Byb2RfYWxpZ25lZCggdGFyZ2V0
X3B0ciwgdGFyZ2V0X3B0ciwgbmJfc3ViZnIgKiBzZl9sZW5ndGgsIGFyY2ggKSwgMSApOwogICAg
ICAgICBmb3IoIGQgPSBzdGFydF9sYWc7IGQgPD0gZW5kX2xhZzsgZCsrICkgewogICAgICAgICAg
ICAgZm9yKCBqID0gMDsgaiA8IG5iX2Nia19zZWFyY2g7IGorKyApIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9maXhlZC9wcmVmaWx0ZXJfRklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvcHJlZmlsdGVyX0ZJWC5jCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2YThlMzUxNTJlZmJkNmQwYjE3MjI3YWE3NTI1YTNh
MjNkZWU5MjU0Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9maXhlZC9wcmVmaWx0ZXJfRklYLmMKKysrIC9kZXYvbnVsbApAQCAtMSwyMjEgKzAsMCBA
QAotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqCi1Db3B5cmlnaHQgKGMpIDIwMDYtMjAxMSwgU2t5cGUgTGltaXRl
ZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLVJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi1hcmUgbWV0Ogot
LSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodCBub3RpY2UsCi10aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLS0gTmVp
dGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5v
ciB0aGUKLW5hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlCi1wcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KLXBlcm1pc3Npb24uCi1USElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJ
UyIKLUFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKLUlNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi1BUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUK
LUxJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKLUNPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi1TVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLUlOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
Ci1DT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQotQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKLVBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgotKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKiovCi0KLSNpZmRlZiBIQVZFX0NPTkZJR19ICi0jaW5jbHVk
ZSAiY29uZmlnLmgiCi0jZW5kaWYKLQotI2luY2x1ZGUgIm1haW5fRklYLmgiCi0jaW5jbHVkZSAi
c3RhY2tfYWxsb2MuaCIKLSNpbmNsdWRlICJ0dW5pbmdfcGFyYW1ldGVycy5oIgotCi0jaWYgZGVm
aW5lZChNSVBTcjFfQVNNKQotI2luY2x1ZGUgIm1pcHMvcHJlZmlsdGVyX0ZJWF9taXBzcjEuaCIK
LSNlbmRpZgotCi0KLSNpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX3dhcnBlZF9MUENfYW5hbHlz
aXNfZmlsdGVyX0ZJWCkKLSNkZWZpbmUgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9G
SVgoc3RhdGUsIHJlc19RMiwgY29lZl9RMTMsIGlucHV0LCBsYW1iZGFfUTE2LCBsZW5ndGgsIG9y
ZGVyLCBhcmNoKSBcCi0gICAgKCh2b2lkKShhcmNoKSxzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNf
ZmlsdGVyX0ZJWF9jKHN0YXRlLCByZXNfUTIsIGNvZWZfUTEzLCBpbnB1dCwgbGFtYmRhX1ExNiwg
bGVuZ3RoLCBvcmRlcikpCi0jZW5kaWYKLQotLyogUHJlZmlsdGVyIGZvciBmaW5kaW5nIFF1YW50
aXplciBpbnB1dCBzaWduYWwgKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfcHJlZmls
dF9GSVgoCi0gICAgc2lsa19wcmVmaWx0ZXJfc3RhdGVfRklYICAgICpQLCAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJL08gIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHN0X3Jlc19RMTJbXSwgICAgICAgICAg
ICAgICAvKiBJICAgIHNob3J0IHRlcm0gcmVzaWR1YWwgc2lnbmFsICAgICAgICAgICovCi0gICAg
b3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHh3X1EzW10sICAgICAgICAgICAgICAgICAgICAv
KiBPICAgIHByZWZpbHRlcmVkIHNpZ25hbCAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19p
bnQzMiAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTIsICAgICAvKiBJICAg
IEhhcm1vbmljIHNoYXBpbmcgY29lZmljaWVudHMgICAgICAgICovCi0gICAgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICAgIFRpbHRfUTE0LCAgICAgICAgICAgICAgICAgICAvKiBJICAgIFRpbHQg
c2hhcGluZyBjb2VmaWNpZW50ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAg
ICAgICAgICAgIExGX3NocF9RMTQsICAgICAgICAgICAgICAgICAvKiBJICAgIExvdy1mcmVxdWFu
Y3kgc2hhcGluZyBjb2VmaWNpZW50cyAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICAgIGxhZywgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExhZyBmb3IgaGFybW9uaWMg
c2hhcGluZyAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxl
bmd0aCAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBzaWduYWxzICAgICAg
ICAgICAgICAgICAgICovCi0pOwotCi12b2lkIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0
ZXJfRklYX2MoCi0gICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgIHN0YXRlW10sICAgICAg
ICAgICAgICAgICAgICAvKiBJL08gIFN0YXRlIFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAg
ICovCi0gICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgIHJlc19RMltdLCAgICAgICAgICAg
ICAgICAgICAvKiBPICAgIFJlc2lkdWFsIHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICovCi0g
ICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGNvZWZfUTEzW10sICAgICAgICAgICAgICAg
ICAvKiBJICAgIENvZWZmaWNpZW50cyBbb3JkZXJdICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGlucHV0W10sICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIElucHV0IHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgIGxhbWJkYV9RMTYsICAgICAgICAgICAgICAgICAvKiBJICAgIFdh
cnBpbmcgZmFjdG9yICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQg
ICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBv
ZiBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAg
ICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAo
ZXZlbikgICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICAgIG4sIGk7Ci0g
ICAgb3B1c19pbnQzMiAgIGFjY19RMTEsIHRtcDEsIHRtcDI7Ci0KLSAgICAvKiBPcmRlciBtdXN0
IGJlIGV2ZW4gKi8KLSAgICBzaWxrX2Fzc2VydCggKCBvcmRlciAmIDEgKSA9PSAwICk7Ci0KLSAg
ICBmb3IoIG4gPSAwOyBuIDwgbGVuZ3RoOyBuKysgKSB7Ci0gICAgICAgIC8qIE91dHB1dCBvZiBs
b3dwYXNzIHNlY3Rpb24gKi8KLSAgICAgICAgdG1wMiA9IHNpbGtfU01MQVdCKCBzdGF0ZVsgMCBd
LCBzdGF0ZVsgMSBdLCBsYW1iZGFfUTE2ICk7Ci0gICAgICAgIHN0YXRlWyAwIF0gPSBzaWxrX0xT
SElGVCggaW5wdXRbIG4gXSwgMTQgKTsKLSAgICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2Vj
dGlvbiAqLwotICAgICAgICB0bXAxID0gc2lsa19TTUxBV0IoIHN0YXRlWyAxIF0sIHN0YXRlWyAy
IF0gLSB0bXAyLCBsYW1iZGFfUTE2ICk7Ci0gICAgICAgIHN0YXRlWyAxIF0gPSB0bXAyOwotICAg
ICAgICBhY2NfUTExID0gc2lsa19SU0hJRlQoIG9yZGVyLCAxICk7Ci0gICAgICAgIGFjY19RMTEg
PSBzaWxrX1NNTEFXQiggYWNjX1ExMSwgdG1wMiwgY29lZl9RMTNbIDAgXSApOwotICAgICAgICAv
KiBMb29wIG92ZXIgYWxscGFzcyBzZWN0aW9ucyAqLwotICAgICAgICBmb3IoIGkgPSAyOyBpIDwg
b3JkZXI7IGkgKz0gMiApIHsKLSAgICAgICAgICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNlY3Rp
b24gKi8KLSAgICAgICAgICAgIHRtcDIgPSBzaWxrX1NNTEFXQiggc3RhdGVbIGkgXSwgc3RhdGVb
IGkgKyAxIF0gLSB0bXAxLCBsYW1iZGFfUTE2ICk7Ci0gICAgICAgICAgICBzdGF0ZVsgaSBdID0g
dG1wMTsKLSAgICAgICAgICAgIGFjY19RMTEgPSBzaWxrX1NNTEFXQiggYWNjX1ExMSwgdG1wMSwg
Y29lZl9RMTNbIGkgLSAxIF0gKTsKLSAgICAgICAgICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNl
Y3Rpb24gKi8KLSAgICAgICAgICAgIHRtcDEgPSBzaWxrX1NNTEFXQiggc3RhdGVbIGkgKyAxIF0s
IHN0YXRlWyBpICsgMiBdIC0gdG1wMiwgbGFtYmRhX1ExNiApOwotICAgICAgICAgICAgc3RhdGVb
IGkgKyAxIF0gPSB0bXAyOwotICAgICAgICAgICAgYWNjX1ExMSA9IHNpbGtfU01MQVdCKCBhY2Nf
UTExLCB0bXAyLCBjb2VmX1ExM1sgaSBdICk7Ci0gICAgICAgIH0KLSAgICAgICAgc3RhdGVbIG9y
ZGVyIF0gPSB0bXAxOwotICAgICAgICBhY2NfUTExID0gc2lsa19TTUxBV0IoIGFjY19RMTEsIHRt
cDEsIGNvZWZfUTEzWyBvcmRlciAtIDEgXSApOwotICAgICAgICByZXNfUTJbIG4gXSA9IHNpbGtf
TFNISUZUKCAob3B1c19pbnQzMilpbnB1dFsgbiBdLCAyICkgLSBzaWxrX1JTSElGVF9ST1VORCgg
YWNjX1ExMSwgOSApOwotICAgIH0KLX0KLQotdm9pZCBzaWxrX3ByZWZpbHRlcl9GSVgoCi0gICAg
c2lsa19lbmNvZGVyX3N0YXRlX0ZJWCAgICAgICAgICAqcHNFbmMsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIHN0YXRlICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBz
aWxrX2VuY29kZXJfY29udHJvbF9GSVggICpwc0VuY0N0cmwsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIEVuY29kZXIgY29udHJvbCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAg
ICAgICAgICAgICAgICAgICAgeHdfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIE8gICAgV2VpZ2h0ZWQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgICAgICB4W10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBTcGVlY2ggc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KLSkKLXsKLSAgICBzaWxrX3ByZWZpbHRlcl9zdGF0ZV9G
SVggKlAgPSAmcHNFbmMtPnNQcmVmaWx0OwotICAgIG9wdXNfaW50ICAgaiwgaywgbGFnOwotICAg
IG9wdXNfaW50MzIgdG1wXzMyOwotICAgIGNvbnN0IG9wdXNfaW50MTYgKkFSMV9zaHBfUTEzOwot
ICAgIGNvbnN0IG9wdXNfaW50MTYgKnB4OwotICAgIG9wdXNfaW50MzIgKnB4d19RMzsKLSAgICBv
cHVzX2ludCAgIEhhcm1TaGFwZUdhaW5fUTEyLCBUaWx0X1ExNDsKLSAgICBvcHVzX2ludDMyIEhh
cm1TaGFwZUZJUlBhY2tlZF9RMTIsIExGX3NocF9RMTQ7Ci0gICAgVkFSREVDTCggb3B1c19pbnQz
MiwgeF9maWx0X1ExMiApOwotICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIHN0X3Jlc19RMiApOwot
ICAgIG9wdXNfaW50MTYgQl9RMTBbIDIgXTsKLSAgICBTQVZFX1NUQUNLOwotCi0gICAgLyogU2V0
IHVwIHBvaW50ZXJzICovCi0gICAgcHggID0geDsKLSAgICBweHdfUTMgPSB4d19RMzsKLSAgICBs
YWcgPSBQLT5sYWdQcmV2OwotICAgIEFMTE9DKCB4X2ZpbHRfUTEyLCBwc0VuYy0+c0Ntbi5zdWJm
cl9sZW5ndGgsIG9wdXNfaW50MzIgKTsKLSAgICBBTExPQyggc3RfcmVzX1EyLCBwc0VuYy0+c0Nt
bi5zdWJmcl9sZW5ndGgsIG9wdXNfaW50MzIgKTsKLSAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmMt
PnNDbW4ubmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgLyogVXBkYXRlIFZhcmlhYmxlcyB0aGF0
IGNoYW5nZSBwZXIgc3ViIGZyYW1lICovCi0gICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2Vz
LnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7Ci0gICAgICAgICAgICBsYWcgPSBwc0VuY0N0
cmwtPnBpdGNoTFsgayBdOwotICAgICAgICB9Ci0KLSAgICAgICAgLyogTm9pc2Ugc2hhcGUgcGFy
YW1ldGVycyAqLwotICAgICAgICBIYXJtU2hhcGVHYWluX1ExMiA9IHNpbGtfU01VTFdCKCAob3B1
c19pbnQzMilwc0VuY0N0cmwtPkhhcm1TaGFwZUdhaW5fUTE0WyBrIF0sIDE2Mzg0IC0gcHNFbmND
dHJsLT5IYXJtQm9vc3RfUTE0WyBrIF0gKTsKLSAgICAgICAgc2lsa19hc3NlcnQoIEhhcm1TaGFw
ZUdhaW5fUTEyID49IDAgKTsKLSAgICAgICAgSGFybVNoYXBlRklSUGFja2VkX1ExMiAgPSAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2lsa19SU0hJRlQoIEhhcm1TaGFwZUdhaW5fUTEyLCAyICk7
Ci0gICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTIgfD0gc2lsa19MU0hJRlQoIChvcHVzX2lu
dDMyKXNpbGtfUlNISUZUKCBIYXJtU2hhcGVHYWluX1ExMiwgMSApLCAxNiApOwotICAgICAgICBU
aWx0X1ExNCAgICA9IHBzRW5jQ3RybC0+VGlsdF9RMTRbICAgayBdOwotICAgICAgICBMRl9zaHBf
UTE0ICA9IHBzRW5jQ3RybC0+TEZfc2hwX1ExNFsgayBdOwotICAgICAgICBBUjFfc2hwX1ExMyA9
ICZwc0VuY0N0cmwtPkFSMV9RMTNbICAgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKLQotICAg
ICAgICAvKiBTaG9ydCB0ZXJtIEZJUiBmaWx0ZXJpbmcqLwotICAgICAgICBzaWxrX3dhcnBlZF9M
UENfYW5hbHlzaXNfZmlsdGVyX0ZJWCggUC0+c0FSX3NocCwgc3RfcmVzX1EyLCBBUjFfc2hwX1Ex
MywgcHgsCi0gICAgICAgICAgICBwc0VuYy0+c0Ntbi53YXJwaW5nX1ExNiwgcHNFbmMtPnNDbW4u
c3ViZnJfbGVuZ3RoLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIHBzRW5jLT5zQ21uLmFy
Y2ggKTsKLQotICAgICAgICAvKiBSZWR1Y2UgKG1haW5seSkgbG93IGZyZXF1ZW5jaWVzIGR1cmlu
ZyBoYXJtb25pYyBlbXBoYXNpcyAqLwotICAgICAgICBCX1ExMFsgMCBdID0gc2lsa19SU0hJRlRf
Uk9VTkQoIHBzRW5jQ3RybC0+R2FpbnNQcmVfUTE0WyBrIF0sIDQgKTsKLSAgICAgICAgdG1wXzMy
ID0gc2lsa19TTUxBQkIoIFNJTEtfRklYX0NPTlNUKCBJTlBVVF9USUxULCAyNiApLCBwc0VuY0N0
cmwtPkhhcm1Cb29zdF9RMTRbIGsgXSwgSGFybVNoYXBlR2Fpbl9RMTIgKTsgICAvKiBRMjYgKi8K
LSAgICAgICAgdG1wXzMyID0gc2lsa19TTUxBQkIoIHRtcF8zMiwgcHNFbmNDdHJsLT5jb2Rpbmdf
cXVhbGl0eV9RMTQsIFNJTEtfRklYX0NPTlNUKCBISUdIX1JBVEVfSU5QVVRfVElMVCwgMTIgKSAp
OyAgICAvKiBRMjYgKi8KLSAgICAgICAgdG1wXzMyID0gc2lsa19TTVVMV0IoIHRtcF8zMiwgLXBz
RW5jQ3RybC0+R2FpbnNQcmVfUTE0WyBrIF0gKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBRMjQgKi8KLSAgICAgICAgdG1wXzMyID0gc2lsa19SU0hJ
RlRfUk9VTkQoIHRtcF8zMiwgMTQgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBRMTAgKi8KLSAgICAgICAgQl9R
MTBbIDEgXT0gc2lsa19TQVQxNiggdG1wXzMyICk7Ci0gICAgICAgIHhfZmlsdF9RMTJbIDAgXSA9
IHNpbGtfTUxBKCBzaWxrX01VTCggc3RfcmVzX1EyWyAwIF0sIEJfUTEwWyAwIF0gKSwgUC0+c0hh
cm1IUF9RMiwgQl9RMTBbIDEgXSApOwotICAgICAgICBmb3IoIGogPSAxOyBqIDwgcHNFbmMtPnND
bW4uc3ViZnJfbGVuZ3RoOyBqKysgKSB7Ci0gICAgICAgICAgICB4X2ZpbHRfUTEyWyBqIF0gPSBz
aWxrX01MQSggc2lsa19NVUwoIHN0X3Jlc19RMlsgaiBdLCBCX1ExMFsgMCBdICksIHN0X3Jlc19R
MlsgaiAtIDEgXSwgQl9RMTBbIDEgXSApOwotICAgICAgICB9Ci0gICAgICAgIFAtPnNIYXJtSFBf
UTIgPSBzdF9yZXNfUTJbIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCAtIDEgXTsKLQotICAgICAg
ICBzaWxrX3ByZWZpbHRfRklYKCBQLCB4X2ZpbHRfUTEyLCBweHdfUTMsIEhhcm1TaGFwZUZJUlBh
Y2tlZF9RMTIsIFRpbHRfUTE0LCBMRl9zaHBfUTE0LCBsYWcsIHBzRW5jLT5zQ21uLnN1YmZyX2xl
bmd0aCApOwotCi0gICAgICAgIHB4ICArPSBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7Ci0gICAg
ICAgIHB4d19RMyArPSBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7Ci0gICAgfQotCi0gICAgUC0+
bGFnUHJldiA9IHBzRW5jQ3RybC0+cGl0Y2hMWyBwc0VuYy0+c0Ntbi5uYl9zdWJmciAtIDEgXTsK
LSAgICBSRVNUT1JFX1NUQUNLOwotfQotCi0jaWZuZGVmIE9WRVJSSURFX3NpbGtfcHJlZmlsdF9G
SVgKLS8qIFByZWZpbHRlciBmb3IgZmluZGluZyBRdWFudGl6ZXIgaW5wdXQgc2lnbmFsICovCi1z
dGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX3ByZWZpbHRfRklYKAotICAgIHNpbGtfcHJlZmls
dGVyX3N0YXRlX0ZJWCAgICAqUCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBzdGF0
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAg
ICAgICAgICAgICBzdF9yZXNfUTEyW10sICAgICAgICAgICAgICAgLyogSSAgICBzaG9ydCB0ZXJt
IHJlc2lkdWFsIHNpZ25hbCAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAg
ICAgICB4d19RM1tdLCAgICAgICAgICAgICAgICAgICAgLyogTyAgICBwcmVmaWx0ZXJlZCBzaWdu
YWwgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBI
YXJtU2hhcGVGSVJQYWNrZWRfUTEyLCAgICAgLyogSSAgICBIYXJtb25pYyBzaGFwaW5nIGNvZWZp
Y2llbnRzICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBUaWx0X1Ex
NCwgICAgICAgICAgICAgICAgICAgLyogSSAgICBUaWx0IHNoYXBpbmcgY29lZmljaWVudCAgICAg
ICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBMRl9zaHBfUTE0LCAg
ICAgICAgICAgICAgICAgLyogSSAgICBMb3ctZnJlcXVhbmN5IHNoYXBpbmcgY29lZmljaWVudHMg
ICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsYWcsICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBMYWcgZm9yIGhhcm1vbmljIHNoYXBpbmcgICAgICAgICAgICAqLwot
ICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsZW5ndGggICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBMZW5ndGggb2Ygc2lnbmFscyAgICAgICAgICAgICAgICAgICAqLwotKQotewot
ICAgIG9wdXNfaW50ICAgaSwgaWR4LCBMVFBfc2hwX2J1Zl9pZHg7Ci0gICAgb3B1c19pbnQzMiBu
X0xUUF9RMTIsIG5fVGlsdF9RMTAsIG5fTEZfUTEwOwotICAgIG9wdXNfaW50MzIgc0xGX01BX3No
cF9RMTIsIHNMRl9BUl9zaHBfUTEyOwotICAgIG9wdXNfaW50MTYgKkxUUF9zaHBfYnVmOwotCi0g
ICAgLyogVG8gc3BlZWQgdXAgdXNlIHRlbXAgdmFyaWFibGVzIGluc3RlYWQgb2YgdXNpbmcgdGhl
IHN0cnVjdCAqLwotICAgIExUUF9zaHBfYnVmICAgICA9IFAtPnNMVFBfc2hwOwotICAgIExUUF9z
aHBfYnVmX2lkeCA9IFAtPnNMVFBfc2hwX2J1Zl9pZHg7Ci0gICAgc0xGX0FSX3NocF9RMTIgID0g
UC0+c0xGX0FSX3NocF9RMTI7Ci0gICAgc0xGX01BX3NocF9RMTIgID0gUC0+c0xGX01BX3NocF9R
MTI7Ci0KLSAgICBmb3IoIGkgPSAwOyBpIDwgbGVuZ3RoOyBpKysgKSB7Ci0gICAgICAgIGlmKCBs
YWcgPiAwICkgewotICAgICAgICAgICAgLyogdW5yb2xsZWQgbG9vcCAqLwotICAgICAgICAgICAg
c2lsa19hc3NlcnQoIEhBUk1fU0hBUEVfRklSX1RBUFMgPT0gMyApOwotICAgICAgICAgICAgaWR4
ID0gbGFnICsgTFRQX3NocF9idWZfaWR4OwotICAgICAgICAgICAgbl9MVFBfUTEyID0gc2lsa19T
TVVMQkIoICAgICAgICAgICAgTFRQX3NocF9idWZbICggaWR4IC0gSEFSTV9TSEFQRV9GSVJfVEFQ
UyAvIDIgLSAxKSAmIExUUF9NQVNLIF0sIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTIgKTsKLSAgICAg
ICAgICAgIG5fTFRQX1ExMiA9IHNpbGtfU01MQUJUKCBuX0xUUF9RMTIsIExUUF9zaHBfYnVmWyAo
IGlkeCAtIEhBUk1fU0hBUEVfRklSX1RBUFMgLyAyICAgICkgJiBMVFBfTUFTSyBdLCBIYXJtU2hh
cGVGSVJQYWNrZWRfUTEyICk7Ci0gICAgICAgICAgICBuX0xUUF9RMTIgPSBzaWxrX1NNTEFCQigg
bl9MVFBfUTEyLCBMVFBfc2hwX2J1ZlsgKCBpZHggLSBIQVJNX1NIQVBFX0ZJUl9UQVBTIC8gMiAr
IDEpICYgTFRQX01BU0sgXSwgSGFybVNoYXBlRklSUGFja2VkX1ExMiApOwotICAgICAgICB9IGVs
c2UgewotICAgICAgICAgICAgbl9MVFBfUTEyID0gMDsKLSAgICAgICAgfQotCi0gICAgICAgIG5f
VGlsdF9RMTAgPSBzaWxrX1NNVUxXQiggc0xGX0FSX3NocF9RMTIsIFRpbHRfUTE0ICk7Ci0gICAg
ICAgIG5fTEZfUTEwICAgPSBzaWxrX1NNTEFXQiggc2lsa19TTVVMV1QoIHNMRl9BUl9zaHBfUTEy
LCBMRl9zaHBfUTE0ICksIHNMRl9NQV9zaHBfUTEyLCBMRl9zaHBfUTE0ICk7Ci0KLSAgICAgICAg
c0xGX0FSX3NocF9RMTIgPSBzaWxrX1NVQjMyKCBzdF9yZXNfUTEyWyBpIF0sIHNpbGtfTFNISUZU
KCBuX1RpbHRfUTEwLCAyICkgKTsKLSAgICAgICAgc0xGX01BX3NocF9RMTIgPSBzaWxrX1NVQjMy
KCBzTEZfQVJfc2hwX1ExMiwgIHNpbGtfTFNISUZUKCBuX0xGX1ExMCwgICAyICkgKTsKLQotICAg
ICAgICBMVFBfc2hwX2J1Zl9pZHggPSAoIExUUF9zaHBfYnVmX2lkeCAtIDEgKSAmIExUUF9NQVNL
OwotICAgICAgICBMVFBfc2hwX2J1ZlsgTFRQX3NocF9idWZfaWR4IF0gPSAob3B1c19pbnQxNilz
aWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCggc0xGX01BX3NocF9RMTIsIDEyICkgKTsKLQot
ICAgICAgICB4d19RM1tpXSA9IHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX1NVQjMyKCBzTEZfTUFf
c2hwX1ExMiwgbl9MVFBfUTEyICksIDkgKTsKLSAgICB9Ci0KLSAgICAvKiBDb3B5IHRlbXAgdmFy
aWFibGUgYmFjayB0byBzdGF0ZSAqLwotICAgIFAtPnNMRl9BUl9zaHBfUTEyICAgPSBzTEZfQVJf
c2hwX1ExMjsKLSAgICBQLT5zTEZfTUFfc2hwX1ExMiAgID0gc0xGX01BX3NocF9RMTI7Ci0gICAg
UC0+c0xUUF9zaHBfYnVmX2lkeCA9IExUUF9zaHBfYnVmX2lkeDsKLX0KLSNlbmRpZiAvKiBPVkVS
UklERV9zaWxrX3ByZWZpbHRfRklYICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvc2NodXI2NF9G
SVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9maXhlZC9zY2h1cjY0X0ZJWC5jCmluZGV4IDc2NGExMGVmM2VhNWQyYTJmNjg1
NGYzYWU1MzQxNTFhNTFhMDE4YmMuLmIyY2IxMmQ5YjE2MGEwNzE1Zjg4ZTcyNDM5ZTVhMDM2Yjg2
MjhhYzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zY2h1cjY0X0ZJWC5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhl
ZC9zY2h1cjY0X0ZJWC5jCkBAIC00Myw3ICs0Myw3IEBAIG9wdXNfaW50MzIgc2lsa19zY2h1cjY0
KCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIHJldHVybnMgcmVzaWR1YWwgZW5l
CiAgICAgb3B1c19pbnQzMiBDWyBTSUxLX01BWF9PUkRFUl9MUEMgKyAxIF1bIDIgXTsKICAgICBv
cHVzX2ludDMyIEN0bXAxX1EzMCwgQ3RtcDJfUTMwLCByY190bXBfUTMxOwogCi0gICAgc2lsa19h
c3NlcnQoIG9yZGVyPT02fHxvcmRlcj09OHx8b3JkZXI9PTEwfHxvcmRlcj09MTJ8fG9yZGVyPT0x
NHx8b3JkZXI9PTE2ICk7CisgICAgc2lsa19hc3NlcnQoIG9yZGVyID49IDAgJiYgb3JkZXIgPD0g
U0lMS19NQVhfT1JERVJfTFBDICk7CiAKICAgICAvKiBDaGVjayBmb3IgaW52YWxpZCBpbnB1dCAq
LwogICAgIGlmKCBjWyAwIF0gPD0gMCApIHsKQEAgLTUxLDkgKzUxLDEwIEBAIG9wdXNfaW50MzIg
c2lsa19zY2h1cjY0KCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIHJldHVybnMg
cmVzaWR1YWwgZW5lCiAgICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIGZvciggayA9IDA7
IGsgPCBvcmRlciArIDE7IGsrKyApIHsKKyAgICBrID0gMDsKKyAgICBkbyB7CiAgICAgICAgIENb
IGsgXVsgMCBdID0gQ1sgayBdWyAxIF0gPSBjWyBrIF07Ci0gICAgfQorICAgIH0gd2hpbGUoICsr
ayA8PSBvcmRlciApOwogCiAgICAgZm9yKCBrID0gMDsgayA8IG9yZGVyOyBrKysgKSB7CiAgICAg
ICAgIC8qIENoZWNrIHRoYXQgd2Ugd29uJ3QgYmUgZ2V0dGluZyBhbiB1bnN0YWJsZSByYywgb3Ro
ZXJ3aXNlIHN0b3AgaGVyZS4gKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zY2h1cl9GSVguYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9maXhlZC9zY2h1cl9GSVguYwppbmRleCBjNGMwZWYyM2I0NzgwNGU1ZjU2YzdjNWQ1OGM2
NjU1NmVlZjVhMDFlLi41OWQ0NGE2ZjdmZTg1OGMyMWVlYmNhMzFiNmJlNDQzMGFjZDQ4MzE5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZml4ZWQvc2NodXJfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NjaHVyX0ZJ
WC5jCkBAIC00MywyOCArNDMsMjkgQEAgb3B1c19pbnQzMiBzaWxrX3NjaHVyKCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucyByZXNpZHVhbCBlbmUKICAgICBvcHVz
X2ludDMyICAgIENbIFNJTEtfTUFYX09SREVSX0xQQyArIDEgXVsgMiBdOwogICAgIG9wdXNfaW50
MzIgICAgQ3RtcDEsIEN0bXAyLCByY190bXBfUTE1OwogCi0gICAgc2lsa19hc3NlcnQoIG9yZGVy
PT02fHxvcmRlcj09OHx8b3JkZXI9PTEwfHxvcmRlcj09MTJ8fG9yZGVyPT0xNHx8b3JkZXI9PTE2
ICk7CisgICAgc2lsa19hc3NlcnQoIG9yZGVyID49IDAgJiYgb3JkZXIgPD0gU0lMS19NQVhfT1JE
RVJfTFBDICk7CiAKICAgICAvKiBHZXQgbnVtYmVyIG9mIGxlYWRpbmcgemVyb3MgKi8KICAgICBs
eiA9IHNpbGtfQ0xaMzIoIGNbIDAgXSApOwogCiAgICAgLyogQ29weSBjb3JyZWxhdGlvbnMgYW5k
IGFkanVzdCBsZXZlbCB0byBRMzAgKi8KKyAgICBrID0gMDsKICAgICBpZiggbHogPCAyICkgewog
ICAgICAgICAvKiBseiBtdXN0IGJlIDEsIHNvIHNoaWZ0IG9uZSB0byB0aGUgcmlnaHQgKi8KLSAg
ICAgICAgZm9yKCBrID0gMDsgayA8IG9yZGVyICsgMTsgaysrICkgeworICAgICAgICBkbyB7CiAg
ICAgICAgICAgICBDWyBrIF1bIDAgXSA9IENbIGsgXVsgMSBdID0gc2lsa19SU0hJRlQoIGNbIGsg
XSwgMSApOwotICAgICAgICB9CisgICAgICAgIH0gd2hpbGUoICsrayA8PSBvcmRlciApOwogICAg
IH0gZWxzZSBpZiggbHogPiAyICkgewogICAgICAgICAvKiBTaGlmdCB0byB0aGUgbGVmdCAqLwog
ICAgICAgICBseiAtPSAyOwotICAgICAgICBmb3IoIGsgPSAwOyBrIDwgb3JkZXIgKyAxOyBrKysg
KSB7CisgICAgICAgIGRvIHsKICAgICAgICAgICAgIENbIGsgXVsgMCBdID0gQ1sgayBdWyAxIF0g
PSBzaWxrX0xTSElGVCggY1sgayBdLCBseiApOwotICAgICAgICB9CisgICAgICAgIH0gd2hpbGUo
ICsrayA8PSBvcmRlciApOwogICAgIH0gZWxzZSB7CiAgICAgICAgIC8qIE5vIG5lZWQgdG8gc2hp
ZnQgKi8KLSAgICAgICAgZm9yKCBrID0gMDsgayA8IG9yZGVyICsgMTsgaysrICkgeworICAgICAg
ICBkbyB7CiAgICAgICAgICAgICBDWyBrIF1bIDAgXSA9IENbIGsgXVsgMSBdID0gY1sgayBdOwot
ICAgICAgICB9CisgICAgICAgIH0gd2hpbGUoICsrayA8PSBvcmRlciApOwogICAgIH0KIAogICAg
IGZvciggayA9IDA7IGsgPCBvcmRlcjsgaysrICkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3Nv
bHZlX0xTX0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NvbHZlX0xTX0ZJWC5jCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA1MWQ3ZDQ5ZDAyYTVlN2NiYTkyNDUyOTVlYmE2YWEyNmJjMmJlZTdlLi4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9z
b2x2ZV9MU19GSVguYworKysgL2Rldi9udWxsCkBAIC0xLDI0OSArMCwwIEBACi0vKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioKLUNvcHlyaWdodCAoYykgMjAwNi0yMDExLCBTa3lwZSBMaW1pdGVkLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0tIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwKLXRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
Ci0tIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci1ub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi1kb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotLSBOZWl0aGVyIHRoZSBuYW1l
IG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQotbmFtZXMg
b2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21v
dGUKLXByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3Igd3JpdHRlbgotcGVybWlzc2lvbi4KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgotQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQotSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLUFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQotTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgot
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKLVNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLUNPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCi1BUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRQotUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0qKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KLQotI2lmZGVmIEhBVkVfQ09ORklHX0gKLSNpbmNsdWRlICJjb25maWcuaCIK
LSNlbmRpZgotCi0jaW5jbHVkZSAibWFpbl9GSVguaCIKLSNpbmNsdWRlICJzdGFja19hbGxvYy5o
IgotI2luY2x1ZGUgInR1bmluZ19wYXJhbWV0ZXJzLmgiCi0KLS8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KLS8qIEludGVybmFsIGZ1bmN0aW9uIGhlYWRlcnMgKi8KLS8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KLQotdHlwZWRlZiBzdHJ1Y3QgewotICAgIG9wdXNfaW50MzIg
UTM2X3BhcnQ7Ci0gICAgb3B1c19pbnQzMiBRNDhfcGFydDsKLX0gaW52X0RfdDsKLQotLyogRmFj
dG9yaXplIHNxdWFyZSBtYXRyaXggQSBpbnRvIExETCBmb3JtICovCi1zdGF0aWMgT1BVU19JTkxJ
TkUgdm9pZCBzaWxrX0xETF9mYWN0b3JpemVfRklYKAotICAgIG9wdXNfaW50MzIgICAgICAgICAg
KkEsICAgICAgICAgLyogSS9PIFBvaW50ZXIgdG8gU3ltZXRyaWMgU3F1YXJlIE1hdHJpeCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgTSwgICAg
ICAgICAgLyogSSAgIFNpemUgb2YgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgKkxfUTE2LCAgICAg
LyogSS9PIFBvaW50ZXIgdG8gU3F1YXJlIFVwcGVyIHRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIGludl9EX3QgICAgICAgICAgICAgKmludl9EICAgICAgLyogSS9P
IFBvaW50ZXIgdG8gdmVjdG9yIGhvbGRpbmcgaW52ZXJ0ZWQgZGlhZ29uYWwgZWxlbWVudHMgb2Yg
RCAgICAqLwotKTsKLQotLyogU29sdmUgTHggPSBiLCB3aGVuIEwgaXMgbG93ZXIgdHJpYW5ndWxh
ciBhbmQgaGFzIG9uZXMgb24gdGhlIGRpYWdvbmFsICovCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9p
ZCBzaWxrX0xTX1NvbHZlRmlyc3RfRklYKAotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgKkxfUTE2
LCAgICAgLyogSSAgICBQb2ludGVyIHRvIExvd2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgTSwgICAgICAgICAg
LyogSSAgICBEaW0gb2YgTWF0cml4IGVxdWF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgKmIsICAgICAgICAgLyogSSAg
ICBiIFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgKnhfUTE2ICAgICAgLyogTyAgICB4IFZl
Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotKTsKLQotLyogU29sdmUgTF50KnggPSBiLCB3aGVyZSBMIGlzIGxvd2VyIHRyaWFuZ3VsYXIg
d2l0aCBvbmVzIG9uIHRoZSBkaWFnb25hbCAqLwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2ls
a19MU19Tb2x2ZUxhc3RfRklYKAotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgKkxfUTE2LCAgICAg
LyogSSAgICBQb2ludGVyIHRvIExvd2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgTSwgICAgICAgICAgLyogSSAg
ICBEaW0gb2YgTWF0cml4IGVxdWF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgKmIsICAgICAgICAgLyogSSAgICBiIFZl
Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIG9wdXNfaW50MzIgICAgICAgICAgKnhfUTE2ICAgICAgLyogTyAgICB4IFZlY3RvciAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsK
LQotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19MU19kaXZpZGVfUTE2X0ZJWCgKLSAgICBv
cHVzX2ludDMyICAgICAgICAgIFRbXSwgICAgICAgIC8qIEkvTyAgTnVtZW5hdG9yIHZlY3RvciAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBpbnZfRF90
ICAgICAgICAgICAgICppbnZfRCwgICAgIC8qIEkgICAgMSAvIEQgdmVjdG9yICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAg
ICAgICAgIE0gICAgICAgICAgIC8qIEkgICAgZGltZW5zaW9uICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSk7Ci0KLS8qIFNvbHZlcyBBeCA9IGIs
IGFzc3VtaW5nIEEgaXMgc3ltbWV0cmljICovCi12b2lkIHNpbGtfc29sdmVfTERMX0ZJWCgKLSAg
ICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgICpBLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIFBvaW50ZXIgdG8gc3ltZXRyaWMgc3F1YXJlIG1hdHJp
eCBBICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgICAgICAgTSwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgU2l6ZSBvZiBtYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19p
bnQzMiAgICAgICAgICAgICAgICAqYiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBQb2ludGVyIHRvIGIgdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAg
ICAgICAgICAgICAgICp4X1ExNiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBP
ICAgIFBvaW50ZXIgdG8geCBzb2x1dGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIFZBUkRFQ0woIG9wdXNfaW50MzIs
IExfUTE2ICk7Ci0gICAgb3B1c19pbnQzMiBZWyAgICAgIE1BWF9NQVRSSVhfU0laRSBdOwotICAg
IGludl9EX3QgICBpbnZfRFsgIE1BWF9NQVRSSVhfU0laRSBdOwotICAgIFNBVkVfU1RBQ0s7Ci0K
LSAgICBzaWxrX2Fzc2VydCggTSA8PSBNQVhfTUFUUklYX1NJWkUgKTsKLSAgICBBTExPQyggTF9R
MTYsIE0gKiBNLCBvcHVzX2ludDMyICk7Ci0KLSAgICAvKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gICAgRmFjdG9yaXplIEEgYnkgTERMIHN1Y2gg
dGhhdCBBID0gTCpEKkwnLAotICAgIHdoZXJlIEwgaXMgbG93ZXIgdHJpYW5ndWxhciB3aXRoIG9u
ZXMgb24gZGlhZ29uYWwKLSAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwotICAgIHNpbGtfTERMX2ZhY3Rvcml6ZV9GSVgoIEEsIE0sIExfUTE2
LCBpbnZfRCApOwotCi0gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioKLSAgICAqIHN1YnN0aXR1dGUgRCpMJyp4ID0gWS4gaWU6Ci0gICAgTCpE
KkwnKnggPSBiID0+IEwqWSA9IGIgPD0+IFkgPSBpbnYoTCkqYgotICAgICoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICBzaWxrX0xTX1Nv
bHZlRmlyc3RfRklYKCBMX1ExNiwgTSwgYiwgWSApOwotCi0gICAgLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAgICBEKkwnKnggPSBZIDw9PiBM
Jyp4ID0gaW52KEQpKlksIGJlY2F1c2UgRCBpcwotICAgIGRpYWdvbmFsIGp1c3QgbXVsdGlwbHkg
d2l0aCAxL2RfaQotICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKiovCi0gICAgc2lsa19MU19kaXZpZGVfUTE2X0ZJWCggWSwgaW52X0QsIE0gKTsK
LQotICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqCi0gICAgeCA9IGludihMJykgKiBpbnYoRCkgKiBZCi0gICAgKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgc2lsa19MU19Tb2x2ZUxh
c3RfRklYKCBMX1ExNiwgTSwgWSwgeF9RMTYgKTsKLSAgICBSRVNUT1JFX1NUQUNLOwotfQotCi1z
dGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xETF9mYWN0b3JpemVfRklYKAotICAgIG9wdXNf
aW50MzIgICAgICAgICAgKkEsICAgICAgICAgLyogSS9PIFBvaW50ZXIgdG8gU3ltZXRyaWMgU3F1
YXJlIE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAg
ICAgICAgICAgTSwgICAgICAgICAgLyogSSAgIFNpemUgb2YgTWF0cml4ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAg
ICAgKkxfUTE2LCAgICAgLyogSS9PIFBvaW50ZXIgdG8gU3F1YXJlIFVwcGVyIHRyaWFuZ3VsYXIg
TWF0cml4ICAgICAgICAgICAgICAgICAgICAqLwotICAgIGludl9EX3QgICAgICAgICAgICAgKmlu
dl9EICAgICAgLyogSS9PIFBvaW50ZXIgdG8gdmVjdG9yIGhvbGRpbmcgaW52ZXJ0ZWQgZGlhZ29u
YWwgZWxlbWVudHMgb2YgRCAgICAqLwotKQotewotICAgIG9wdXNfaW50ICAgaSwgaiwgaywgc3Rh
dHVzLCBsb29wX2NvdW50OwotICAgIGNvbnN0IG9wdXNfaW50MzIgKnB0cjEsICpwdHIyOwotICAg
IG9wdXNfaW50MzIgZGlhZ19taW5fdmFsdWUsIHRtcF8zMiwgZXJyOwotICAgIG9wdXNfaW50MzIg
dl9RMFsgTUFYX01BVFJJWF9TSVpFIF0sIERfUTBbIE1BWF9NQVRSSVhfU0laRSBdOwotICAgIG9w
dXNfaW50MzIgb25lX2Rpdl9kaWFnX1EzNiwgb25lX2Rpdl9kaWFnX1E0MCwgb25lX2Rpdl9kaWFn
X1E0ODsKLQotICAgIHNpbGtfYXNzZXJ0KCBNIDw9IE1BWF9NQVRSSVhfU0laRSApOwotCi0gICAg
c3RhdHVzID0gMTsKLSAgICBkaWFnX21pbl92YWx1ZSA9IHNpbGtfbWF4XzMyKCBzaWxrX1NNTVVM
KCBzaWxrX0FERF9TQVQzMiggQVsgMCBdLCBBWyBzaWxrX1NNVUxCQiggTSwgTSApIC0gMSBdICks
IFNJTEtfRklYX0NPTlNUKCBGSU5EX0xUUF9DT05EX0ZBQywgMzEgKSApLCAxIDw8IDkgKTsKLSAg
ICBmb3IoIGxvb3BfY291bnQgPSAwOyBsb29wX2NvdW50IDwgTSAmJiBzdGF0dXMgPT0gMTsgbG9v
cF9jb3VudCsrICkgewotICAgICAgICBzdGF0dXMgPSAwOwotICAgICAgICBmb3IoIGogPSAwOyBq
IDwgTTsgaisrICkgewotICAgICAgICAgICAgcHRyMSA9IG1hdHJpeF9hZHIoIExfUTE2LCBqLCAw
LCBNICk7Ci0gICAgICAgICAgICB0bXBfMzIgPSAwOwotICAgICAgICAgICAgZm9yKCBpID0gMDsg
aSA8IGo7IGkrKyApIHsKLSAgICAgICAgICAgICAgICB2X1EwWyBpIF0gPSBzaWxrX1NNVUxXVygg
ICAgICAgICBEX1EwWyBpIF0sIHB0cjFbIGkgXSApOyAvKiBRMCAqLwotICAgICAgICAgICAgICAg
IHRtcF8zMiAgICA9IHNpbGtfU01MQVdXKCB0bXBfMzIsIHZfUTBbIGkgXSwgcHRyMVsgaSBdICk7
IC8qIFEwICovCi0gICAgICAgICAgICB9Ci0gICAgICAgICAgICB0bXBfMzIgPSBzaWxrX1NVQjMy
KCBtYXRyaXhfcHRyKCBBLCBqLCBqLCBNICksIHRtcF8zMiApOwotCi0gICAgICAgICAgICBpZigg
dG1wXzMyIDwgZGlhZ19taW5fdmFsdWUgKSB7Ci0gICAgICAgICAgICAgICAgdG1wXzMyID0gc2ls
a19TVUIzMiggc2lsa19TTVVMQkIoIGxvb3BfY291bnQgKyAxLCBkaWFnX21pbl92YWx1ZSApLCB0
bXBfMzIgKTsKLSAgICAgICAgICAgICAgICAvKiBNYXRyaXggbm90IHBvc2l0aXZlIHNlbWktZGVm
aW5pdGUsIG9yIGlsbCBjb25kaXRpb25lZCAqLwotICAgICAgICAgICAgICAgIGZvciggaSA9IDA7
IGkgPCBNOyBpKysgKSB7Ci0gICAgICAgICAgICAgICAgICAgIG1hdHJpeF9wdHIoIEEsIGksIGks
IE0gKSA9IHNpbGtfQUREMzIoIG1hdHJpeF9wdHIoIEEsIGksIGksIE0gKSwgdG1wXzMyICk7Ci0g
ICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIHN0YXR1cyA9IDE7Ci0gICAgICAgICAg
ICAgICAgYnJlYWs7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBEX1EwWyBqIF0gPSB0bXBf
MzI7ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGFsd2F5cyA8IG1heChDb3JyZWxhdGlvbikg
Ki8KLQotICAgICAgICAgICAgLyogdHdvLXN0ZXAgZGl2aXNpb24gKi8KLSAgICAgICAgICAgIG9u
ZV9kaXZfZGlhZ19RMzYgPSBzaWxrX0lOVkVSU0UzMl92YXJRKCB0bXBfMzIsIDM2ICk7ICAgICAg
ICAgICAgICAgICAgICAvKiBRMzYgKi8KLSAgICAgICAgICAgIG9uZV9kaXZfZGlhZ19RNDAgPSBz
aWxrX0xTSElGVCggb25lX2Rpdl9kaWFnX1EzNiwgNCApOyAgICAgICAgICAgICAgICAgICAvKiBR
NDAgKi8KLSAgICAgICAgICAgIGVyciA9IHNpbGtfU1VCMzIoIChvcHVzX2ludDMyKTEgPDwgMjQs
IHNpbGtfU01VTFdXKCB0bXBfMzIsIG9uZV9kaXZfZGlhZ19RNDAgKSApOyAgICAgLyogUTI0ICov
Ci0gICAgICAgICAgICBvbmVfZGl2X2RpYWdfUTQ4ID0gc2lsa19TTVVMV1coIGVyciwgb25lX2Rp
dl9kaWFnX1E0MCApOyAgICAgICAgICAgICAgICAgLyogUTQ4ICovCi0KLSAgICAgICAgICAgIC8q
IFNhdmUgMS9EcyAqLwotICAgICAgICAgICAgaW52X0RbIGogXS5RMzZfcGFydCA9IG9uZV9kaXZf
ZGlhZ19RMzY7Ci0gICAgICAgICAgICBpbnZfRFsgaiBdLlE0OF9wYXJ0ID0gb25lX2Rpdl9kaWFn
X1E0ODsKLQotICAgICAgICAgICAgbWF0cml4X3B0ciggTF9RMTYsIGosIGosIE0gKSA9IDY1NTM2
OyAvKiAxLjAgaW4gUTE2ICovCi0gICAgICAgICAgICBwdHIxID0gbWF0cml4X2FkciggQSwgaiwg
MCwgTSApOwotICAgICAgICAgICAgcHRyMiA9IG1hdHJpeF9hZHIoIExfUTE2LCBqICsgMSwgMCwg
TSApOwotICAgICAgICAgICAgZm9yKCBpID0gaiArIDE7IGkgPCBNOyBpKysgKSB7Ci0gICAgICAg
ICAgICAgICAgdG1wXzMyID0gMDsKLSAgICAgICAgICAgICAgICBmb3IoIGsgPSAwOyBrIDwgajsg
aysrICkgewotICAgICAgICAgICAgICAgICAgICB0bXBfMzIgPSBzaWxrX1NNTEFXVyggdG1wXzMy
LCB2X1EwWyBrIF0sIHB0cjJbIGsgXSApOyAvKiBRMCAqLwotICAgICAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgICAgICB0bXBfMzIgPSBzaWxrX1NVQjMyKCBwdHIxWyBpIF0sIHRtcF8zMiApOyAv
KiBhbHdheXMgPCBtYXgoQ29ycmVsYXRpb24pICovCi0KLSAgICAgICAgICAgICAgICAvKiB0bXBf
MzIgLyBEX1EwW2pdIDogRGl2aWRlIHRvIFExNiAqLwotICAgICAgICAgICAgICAgIG1hdHJpeF9w
dHIoIExfUTE2LCBpLCBqLCBNICkgPSBzaWxrX0FERDMyKCBzaWxrX1NNTVVMKCB0bXBfMzIsIG9u
ZV9kaXZfZGlhZ19RNDggKSwKLSAgICAgICAgICAgICAgICAgICAgc2lsa19SU0hJRlQoIHNpbGtf
U01VTFdXKCB0bXBfMzIsIG9uZV9kaXZfZGlhZ19RMzYgKSwgNCApICk7Ci0KLSAgICAgICAgICAg
ICAgICAvKiBnbyB0byBuZXh0IGNvbHVtbiAqLwotICAgICAgICAgICAgICAgIHB0cjIgKz0gTTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgIH0KLQotICAgIHNpbGtfYXNzZXJ0KCBzdGF0
dXMgPT0gMCApOwotfQotCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xTX2RpdmlkZV9R
MTZfRklYKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgVFtdLCAgICAgICAgLyogSS9PICBOdW1l
bmF0b3IgdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIGludl9EX3QgICAgICAgICAgICAgKmludl9ELCAgICAgLyogSSAgICAxIC8gRCB2ZWN0
b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IG9wdXNfaW50ICAgICAgICAgICAgTSAgICAgICAgICAgLyogSSAgICBkaW1lbnNpb24gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAg
IG9wdXNfaW50ICAgaTsKLSAgICBvcHVzX2ludDMyIHRtcF8zMjsKLSAgICBvcHVzX2ludDMyIG9u
ZV9kaXZfZGlhZ19RMzYsIG9uZV9kaXZfZGlhZ19RNDg7Ci0KLSAgICBmb3IoIGkgPSAwOyBpIDwg
TTsgaSsrICkgewotICAgICAgICBvbmVfZGl2X2RpYWdfUTM2ID0gaW52X0RbIGkgXS5RMzZfcGFy
dDsKLSAgICAgICAgb25lX2Rpdl9kaWFnX1E0OCA9IGludl9EWyBpIF0uUTQ4X3BhcnQ7Ci0KLSAg
ICAgICAgdG1wXzMyID0gVFsgaSBdOwotICAgICAgICBUWyBpIF0gPSBzaWxrX0FERDMyKCBzaWxr
X1NNTVVMKCB0bXBfMzIsIG9uZV9kaXZfZGlhZ19RNDggKSwgc2lsa19SU0hJRlQoIHNpbGtfU01V
TFdXKCB0bXBfMzIsIG9uZV9kaXZfZGlhZ19RMzYgKSwgNCApICk7Ci0gICAgfQotfQotCi0vKiBT
b2x2ZSBMeCA9IGIsIHdoZW4gTCBpcyBsb3dlciB0cmlhbmd1bGFyIGFuZCBoYXMgb25lcyBvbiB0
aGUgZGlhZ29uYWwgKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTFNfU29sdmVGaXJz
dF9GSVgoCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAqTF9RMTYsICAgICAvKiBJICAgIFBvaW50
ZXIgdG8gTG93ZXIgVHJpYW5ndWxhciBNYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgb3B1c19pbnQgICAgICAgICAgICBNLCAgICAgICAgICAvKiBJICAgIERpbSBvZiBNYXRy
aXggZXF1YXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAg
Y29uc3Qgb3B1c19pbnQzMiAgICAqYiwgICAgICAgICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19p
bnQzMiAgICAgICAgICAqeF9RMTYgICAgICAvKiBPICAgIHggVmVjdG9yICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19p
bnQgaSwgajsKLSAgICBjb25zdCBvcHVzX2ludDMyICpwdHIzMjsKLSAgICBvcHVzX2ludDMyIHRt
cF8zMjsKLQotICAgIGZvciggaSA9IDA7IGkgPCBNOyBpKysgKSB7Ci0gICAgICAgIHB0cjMyID0g
bWF0cml4X2FkciggTF9RMTYsIGksIDAsIE0gKTsKLSAgICAgICAgdG1wXzMyID0gMDsKLSAgICAg
ICAgZm9yKCBqID0gMDsgaiA8IGk7IGorKyApIHsKLSAgICAgICAgICAgIHRtcF8zMiA9IHNpbGtf
U01MQVdXKCB0bXBfMzIsIHB0cjMyWyBqIF0sIHhfUTE2WyBqIF0gKTsKLSAgICAgICAgfQotICAg
ICAgICB4X1ExNlsgaSBdID0gc2lsa19TVUIzMiggYlsgaSBdLCB0bXBfMzIgKTsKLSAgICB9Ci19
Ci0KLS8qIFNvbHZlIExedCp4ID0gYiwgd2hlcmUgTCBpcyBsb3dlciB0cmlhbmd1bGFyIHdpdGgg
b25lcyBvbiB0aGUgZGlhZ29uYWwgKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTFNf
U29sdmVMYXN0X0ZJWCgKLSAgICBjb25zdCBvcHVzX2ludDMyICAgICpMX1ExNiwgICAgIC8qIEkg
ICAgUG9pbnRlciB0byBMb3dlciBUcmlhbmd1bGFyIE1hdHJpeCAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgIE0sICAgICAgICAgIC8qIEkgICAgRGlt
IG9mIE1hdHJpeCBlcXVhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICpiLCAgICAgICAgIC8qIEkgICAgYiBWZWN0b3Ig
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBvcHVzX2ludDMyICAgICAgICAgICp4X1ExNiAgICAgIC8qIE8gICAgeCBWZWN0b3IgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSkKLXsKLSAg
ICBvcHVzX2ludCBpLCBqOwotICAgIGNvbnN0IG9wdXNfaW50MzIgKnB0cjMyOwotICAgIG9wdXNf
aW50MzIgdG1wXzMyOwotCi0gICAgZm9yKCBpID0gTSAtIDE7IGkgPj0gMDsgaS0tICkgewotICAg
ICAgICBwdHIzMiA9IG1hdHJpeF9hZHIoIExfUTE2LCAwLCBpLCBNICk7Ci0gICAgICAgIHRtcF8z
MiA9IDA7Ci0gICAgICAgIGZvciggaiA9IE0gLSAxOyBqID4gaTsgai0tICkgewotICAgICAgICAg
ICAgdG1wXzMyID0gc2lsa19TTUxBV1coIHRtcF8zMiwgcHRyMzJbIHNpbGtfU01VTEJCKCBqLCBN
ICkgXSwgeF9RMTZbIGogXSApOwotICAgICAgICB9Ci0gICAgICAgIHhfUTE2WyBpIF0gPSBzaWxr
X1NVQjMyKCBiWyBpIF0sIHRtcF8zMiApOwotICAgIH0KLX0KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhl
ZC9zdHJ1Y3RzX0ZJWC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3N0cnVjdHNfRklYLmgKaW5kZXggMzI5NGIyNTEy
ODFlZDgyNjVkNDIzYzU0ZTBkMDIyNzNmN2Y5OTQ1Mi4uMjc3NGE5N2IyNGZlNjc3YjdkMTgyYTlh
MTIwMjhhN2MxZDg3ZmE4OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3N0cnVjdHNfRklYLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2ZpeGVkL3N0cnVjdHNfRklYLmgKQEAgLTQ3LDMxICs0NywxNyBAQCB0eXBlZGVmIHN0
cnVjdCB7CiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIFRpbHRfc210aF9RMTY7CiB9
IHNpbGtfc2hhcGVfc3RhdGVfRklYOwogCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KiovCi0vKiBQcmVmaWx0ZXIgc3RhdGUgICAgICAgICAgICAgICovCi0vKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCi10eXBlZGVmIHN0cnVjdCB7Ci0gICAgb3B1c19pbnQxNiAgICAg
ICAgICAgICAgICAgIHNMVFBfc2hwWyBMVFBfQlVGX0xFTkdUSCBdOwotICAgIG9wdXNfaW50MzIg
ICAgICAgICAgICAgICAgICBzQVJfc2hwWyBNQVhfU0hBUEVfTFBDX09SREVSICsgMSBdOwotICAg
IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBzTFRQX3NocF9idWZfaWR4OwotICAgIG9wdXNf
aW50MzIgICAgICAgICAgICAgICAgICBzTEZfQVJfc2hwX1ExMjsKLSAgICBvcHVzX2ludDMyICAg
ICAgICAgICAgICAgICAgc0xGX01BX3NocF9RMTI7Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAg
ICAgICAgIHNIYXJtSFBfUTI7Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHJhbmRf
c2VlZDsKLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbGFnUHJldjsKLX0gc2lsa19w
cmVmaWx0ZXJfc3RhdGVfRklYOwotCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
CiAvKiBFbmNvZGVyIHN0YXRlIEZJWCAgICAgICAgICAgICovCiAvKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKiovCiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgc2lsa19lbmNvZGVyX3N0YXRl
ICAgICAgICAgIHNDbW47ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBDb21t
b24gc3RydWN0LCBzaGFyZWQgd2l0aCBmbG9hdGluZy1wb2ludCBjb2RlICAgICAgICovCiAgICAg
c2lsa19zaGFwZV9zdGF0ZV9GSVggICAgICAgIHNTaGFwZTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBTaGFwZSBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCi0gICAgc2lsa19wcmVmaWx0ZXJfc3RhdGVfRklYICAgIHNQcmVmaWx0OyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBQcmVmaWx0ZXIgU3RhdGUgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAKICAgICAvKiBCdWZmZXIgZm9yIGZpbmQg
cGl0Y2ggYW5kIG5vaXNlIHNoYXBlIGFuYWx5c2lzICovCiAgICAgc2lsa19EV09SRF9BTElHTiBv
cHVzX2ludDE2IHhfYnVmWyAyICogTUFYX0ZSQU1FX0xFTkdUSCArIExBX1NIQVBFX01BWCBdOy8q
IEJ1ZmZlciBmb3IgZmluZCBwaXRjaCBhbmQgbm9pc2Ugc2hhcGUgYW5hbHlzaXMgICovCiAgICAg
b3B1c19pbnQgICAgICAgICAgICAgICAgICAgIExUUENvcnJfUTE1OyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBOb3JtYWxpemVkIGNvcnJlbGF0aW9uIGZyb20gcGl0Y2ggbGFnIGVzdGlt
YXRvciAgICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgcmVzTnJnU210
aDsKIH0gc2lsa19lbmNvZGVyX3N0YXRlX0ZJWDsKIAogLyoqKioqKioqKioqKioqKioqKioqKioq
Ki8KQEAgLTg3LDExICs3Myw4IEBAIHR5cGVkZWYgc3RydWN0IHsKIAogICAgIC8qIE5vaXNlIHNo
YXBpbmcgcGFyYW1ldGVycyAqLwogICAgIC8qIFRlc3RpbmcgKi8KLSAgICBzaWxrX0RXT1JEX0FM
SUdOIG9wdXNfaW50MTYgQVIxX1ExM1sgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRF
UiBdOwotICAgIHNpbGtfRFdPUkRfQUxJR04gb3B1c19pbnQxNiBBUjJfUTEzWyBNQVhfTkJfU1VC
RlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07CisgICAgc2lsa19EV09SRF9BTElHTiBvcHVzX2lu
dDE2IEFSX1ExM1sgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwogICAgIG9w
dXNfaW50MzIgICAgICAgICAgICAgICAgICBMRl9zaHBfUTE0WyAgICAgICAgTUFYX05CX1NVQkZS
IF07ICAgICAgLyogUGFja3MgdHdvIGludDE2IGNvZWZmaWNpZW50cyBwZXIgaW50MzIgdmFsdWUg
ICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBHYWluc1ByZV9RMTRb
ICAgICAgTUFYX05CX1NVQkZSIF07Ci0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIEhh
cm1Cb29zdF9RMTRbICAgICBNQVhfTkJfU1VCRlIgXTsKICAgICBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgICAgVGlsdF9RMTRbICAgICAgICAgIE1BWF9OQl9TVUJGUiBdOwogICAgIG9wdXNfaW50
ICAgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1ExNFsgTUFYX05CX1NVQkZSIF07CiAg
ICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIExhbWJkYV9RMTA7CkBAIC05OSw3ICs4Miw2
IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgY29k
aW5nX3F1YWxpdHlfUTE0OwogCiAgICAgLyogbWVhc3VyZXMgKi8KLSAgICBvcHVzX2ludCAgICAg
ICAgICAgICAgICAgICAgc3BhcnNlbmVzc19RODsKICAgICBvcHVzX2ludDMyICAgICAgICAgICAg
ICAgICAgcHJlZEdhaW5fUTE2OwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBMVFBy
ZWRDb2RHYWluX1E3OwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBSZXNOcmdbIE1B
WF9OQl9TVUJGUiBdOyAgICAgICAgICAgICAgICAgLyogUmVzaWR1YWwgZW5lcmd5IHBlciBzdWJm
cmFtZSAgICAgICAgICAgICAgICAgICAgICAgICAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3dh
cnBlZF9hdXRvY29ycmVsYXRpb25fRklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvd2FycGVkX2F1dG9jb3JyZWxh
dGlvbl9GSVguYwppbmRleCA2Y2E2YzExODRkODY1ZjdmYmJjMTViY2M2Y2JiMzI5YjI2Yjg2YTAy
Li45OTRjMjk5YWJkMTI0MGNkYjM3NTk3ZTNhOGFjYTgyMDdlODlhOTc2IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZml4ZWQvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYworKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvd2Fy
cGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYwpAQCAtMzEsMTcgKzMxLDEzIEBAIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogCiAjaW5jbHVkZSAibWFpbl9GSVguaCIKIAotI2RlZmluZSBRQyAg
MTAKLSNkZWZpbmUgUVMgIDE0Ci0KICNpZiBkZWZpbmVkKE1JUFNyMV9BU00pCiAjaW5jbHVkZSAi
bWlwcy93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9taXBzcjEuaCIKICNlbmRpZgogCiAKLSNp
Zm5kZWYgT1ZFUlJJREVfc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWAogLyogQXV0b2Nv
cnJlbGF0aW9ucyBmb3IgYSB3YXJwZWQgZnJlcXVlbmN5IGF4aXMgKi8KLXZvaWQgc2lsa193YXJw
ZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCgKK3ZvaWQgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9u
X0ZJWF9jKAogICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgKmNvcnIsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmVzdWx0IFtvcmRlciArIDFdICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgICAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAqc2NhbGUsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBTY2FsaW5nIG9mIHRoZSBjb3JyZWxhdGlvbiB2
ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBj
b25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICppbnB1dCwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIElucHV0IGRhdGEgdG8gY29ycmVsYXRlICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtOTIsNCArODgs
MyBAQCB2b2lkIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoCiAgICAgfQogICAgIHNp
bGtfYXNzZXJ0KCBjb3JyX1FDWyAwIF0gPj0gMCApOyAvKiBJZiBicmVha2luZywgZGVjcmVhc2Ug
UUMqLwogfQotI2VuZGlmIC8qIE9WRVJSSURFX3NpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9G
SVggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC94ODYvcHJlZmlsdGVyX0ZJWF9zc2UuYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9maXhlZC94ODYvcHJlZmlsdGVyX0ZJWF9zc2UuYwppbmRleCA0ODhhNjAzZjVkZDAxOTliNzEy
ZmU0MTYwMWVkZjNhMzhiMDBhZTEwLi5kOGM5YzJmNTVmMDY2NDUwODI5MzA5ODAyYjgxNTkzYmY1
NThhNGVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQveDg2L3ByZWZpbHRlcl9GSVhfc3NlLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2ZpeGVkL3g4Ni9wcmVmaWx0ZXJfRklYX3NzZS5jCkBAIC0xMDcsOCArMTA3LDggQEAg
dm9pZCBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWF9zc2U0XzEoCiAgICAgICAg
ICAgICAgICAgeG1tX3RlbXBiID0gX21tX2FkZF9lcGkzMiggeG1tX3RlbXBiLCB4bW1fcHJvZHVj
dDIgKTsKICAgICAgICAgICAgICAgICB4bW1fdGVtcGEgPSBfbW1fYWRkX2VwaTMyKCB4bW1fdGVt
cGEsIHhtbV90ZW1wYiApOwogCi0gICAgICAgICAgICAgICAgc3VtICA9IChjb2VmX1ExM184ICog
c3RhdGVfOCkgPj4gMTY7Ci0gICAgICAgICAgICAgICAgc3VtICs9IChjb2VmX1ExM185ICogc3Rh
dGVfOSkgPj4gMTY7CisgICAgICAgICAgICAgICAgc3VtICA9IChvcHVzX2ludDMyKSgoY29lZl9R
MTNfOCAqIHN0YXRlXzgpID4+IDE2KTsKKyAgICAgICAgICAgICAgICBzdW0gKz0gKG9wdXNfaW50
MzIpKChjb2VmX1ExM185ICogc3RhdGVfOSkgPj4gMTYpOwogCiAgICAgICAgICAgICAgICAgeG1t
X3RlbXBhID0gX21tX2FkZF9lcGkzMiggeG1tX3RlbXBhLCBfbW1fc2h1ZmZsZV9lcGkzMiggeG1t
X3RlbXBhLCBfTU1fU0hVRkZMRSggMCwgMCwgMCwgMiApICkgKTsKICAgICAgICAgICAgICAgICBz
dW0gKz0gX21tX2N2dHNpMTI4X3NpMzIoIHhtbV90ZW1wYSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxv
YXQvTFBDX2ludl9wcmVkX2dhaW5fRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvTFBDX2ludl9wcmVkX2dhaW5f
RkxQLmMKaW5kZXggMjUxNzhiYWNkZGU0NjEwYmUwOWEzMWI1OWZmZjc5YjM1ZjcxZTAzMy4uMmJl
MjEyMmQ2MTQwOGFmZmZiMWRiZmQ4Y2QwNjcyM2ZiMjgyMjliOSAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zs
b2F0L0xQQ19pbnZfcHJlZF9nYWluX0ZMUC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9MUENfaW52X3ByZWRf
Z2Fpbl9GTFAuYwpAQCAtMzEsOCArMzEsNyBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
IAogI2luY2x1ZGUgIlNpZ1Byb2NfRklYLmgiCiAjaW5jbHVkZSAiU2lnUHJvY19GTFAuaCIKLQot
I2RlZmluZSBSQ19USFJFU0hPTEQgICAgICAgIDAuOTk5OWYKKyNpbmNsdWRlICJkZWZpbmUuaCIK
IAogLyogY29tcHV0ZSBpbnZlcnNlIG9mIExQQyBwcmVkaWN0aW9uIGdhaW4sIGFuZCAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KIC8qIHRlc3QgaWYgTFBDIGNvZWZmaWNpZW50cyBhcmUgc3Rh
YmxlIChhbGwgcG9sZXMgd2l0aGluIHVuaXQgY2lyY2xlKSAgICovCkBAIC00MywzNCArNDIsMzIg
QEAgc2lsa19mbG9hdCBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9GTFAoICAvKiBPICAgIHJl
dHVybiBpbnZlcnNlIHByZWRpY3Rpb24gZ2EKICkKIHsKICAgICBvcHVzX2ludCAgIGssIG47Ci0g
ICAgZG91YmxlICAgICBpbnZHYWluLCByYywgcmNfbXVsdDEsIHJjX211bHQyOwotICAgIHNpbGtf
ZmxvYXQgQXRtcFsgMiBdWyBTSUxLX01BWF9PUkRFUl9MUEMgXTsKLSAgICBzaWxrX2Zsb2F0ICpB
b2xkLCAqQW5ldzsKKyAgICBkb3VibGUgICAgIGludkdhaW4sIHJjLCByY19tdWx0MSwgcmNfbXVs
dDIsIHRtcDEsIHRtcDI7CisgICAgc2lsa19mbG9hdCBBdG1wWyBTSUxLX01BWF9PUkRFUl9MUEMg
XTsKIAotICAgIEFuZXcgPSBBdG1wWyBvcmRlciAmIDEgXTsKLSAgICBzaWxrX21lbWNweSggQW5l
dywgQSwgb3JkZXIgKiBzaXplb2Yoc2lsa19mbG9hdCkgKTsKKyAgICBzaWxrX21lbWNweSggQXRt
cCwgQSwgb3JkZXIgKiBzaXplb2Yoc2lsa19mbG9hdCkgKTsKIAogICAgIGludkdhaW4gPSAxLjA7
CiAgICAgZm9yKCBrID0gb3JkZXIgLSAxOyBrID4gMDsgay0tICkgewotICAgICAgICByYyA9IC1B
bmV3WyBrIF07Ci0gICAgICAgIGlmKCByYyA+IFJDX1RIUkVTSE9MRCB8fCByYyA8IC1SQ19USFJF
U0hPTEQgKSB7CisgICAgICAgIHJjID0gLUF0bXBbIGsgXTsKKyAgICAgICAgcmNfbXVsdDEgPSAx
LjBmIC0gcmMgKiByYzsKKyAgICAgICAgaW52R2FpbiAqPSByY19tdWx0MTsKKyAgICAgICAgaWYo
IGludkdhaW4gKiBNQVhfUFJFRElDVElPTl9QT1dFUl9HQUlOIDwgMS4wZiApIHsKICAgICAgICAg
ICAgIHJldHVybiAwLjBmOwogICAgICAgICB9Ci0gICAgICAgIHJjX211bHQxID0gMS4wZiAtIHJj
ICogcmM7CiAgICAgICAgIHJjX211bHQyID0gMS4wZiAvIHJjX211bHQxOwotICAgICAgICBpbnZH
YWluICo9IHJjX211bHQxOwotICAgICAgICAvKiBzd2FwIHBvaW50ZXJzICovCi0gICAgICAgIEFv
bGQgPSBBbmV3OwotICAgICAgICBBbmV3ID0gQXRtcFsgayAmIDEgXTsKLSAgICAgICAgZm9yKCBu
ID0gMDsgbiA8IGs7IG4rKyApIHsKLSAgICAgICAgICAgIEFuZXdbIG4gXSA9IChzaWxrX2Zsb2F0
KSggKCBBb2xkWyBuIF0gLSBBb2xkWyBrIC0gbiAtIDEgXSAqIHJjICkgKiByY19tdWx0MiApOwor
ICAgICAgICBmb3IoIG4gPSAwOyBuIDwgKGsgKyAxKSA+PiAxOyBuKysgKSB7CisgICAgICAgICAg
ICB0bXAxID0gQXRtcFsgbiBdOworICAgICAgICAgICAgdG1wMiA9IEF0bXBbIGsgLSBuIC0gMSBd
OworICAgICAgICAgICAgQXRtcFsgbiBdICAgICAgICAgPSAoc2lsa19mbG9hdCkoICggdG1wMSAt
IHRtcDIgKiByYyApICogcmNfbXVsdDIgKTsKKyAgICAgICAgICAgIEF0bXBbIGsgLSBuIC0gMSBd
ID0gKHNpbGtfZmxvYXQpKCAoIHRtcDIgLSB0bXAxICogcmMgKSAqIHJjX211bHQyICk7CiAgICAg
ICAgIH0KICAgICB9Ci0gICAgcmMgPSAtQW5ld1sgMCBdOwotICAgIGlmKCByYyA+IFJDX1RIUkVT
SE9MRCB8fCByYyA8IC1SQ19USFJFU0hPTEQgKSB7Ci0gICAgICAgIHJldHVybiAwLjBmOwotICAg
IH0KKyAgICByYyA9IC1BdG1wWyAwIF07CiAgICAgcmNfbXVsdDEgPSAxLjBmIC0gcmMgKiByYzsK
ICAgICBpbnZHYWluICo9IHJjX211bHQxOworICAgIGlmKCBpbnZHYWluICogTUFYX1BSRURJQ1RJ
T05fUE9XRVJfR0FJTiA8IDEuMGYgKSB7CisgICAgICAgIHJldHVybiAwLjBmOworICAgIH0KICAg
ICByZXR1cm4gKHNpbGtfZmxvYXQpaW52R2FpbjsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9T
aWdQcm9jX0ZMUC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L1NpZ1Byb2NfRkxQLmgKaW5kZXggZjBjYjM3MzNiZTZj
Nzg2NWE4ODMxYjY1MjdiMWIwMTZmZDBiNTY3Mi4uOTUzZGU4YjA5ZTM3YmQ2OTI0ZDM2NTU0MTAy
ZTViOWFhNjVhNjZkZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L1NpZ1Byb2NfRkxQLmgKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2Zsb2F0L1NpZ1Byb2NfRkxQLmgKQEAgLTY4LDEzICs2OCw2IEBAIHZvaWQgc2lsa19rMmFf
RkxQKAogICAgIG9wdXNfaW50MzIgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAg
ICBwcmVkaWN0aW9uIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiApOwogCi0vKiBTb2x2ZSB0aGUgbm9ybWFsIGVxdWF0aW9ucyB1c2luZyB0aGUgTGV2
aW5zb24tRHVyYmluIHJlY3Vyc2lvbiAqLwotc2lsa19mbG9hdCBzaWxrX2xldmluc29uZHVyYmlu
X0ZMUCggICAgICAgICAvKiBPICAgIHByZWRpY3Rpb24gZXJyb3IgZW5lcmd5ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICBBW10s
ICAgICAgICAgICAgICAgIC8qIE8gICAgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgW29yZGVyXSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgIGNv
cnJbXSwgICAgICAgICAgICAgLyogSSAgICBpbnB1dCBhdXRvLWNvcnJlbGF0aW9ucyBbb3JkZXIg
KyAxXSAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
b3JkZXIgICAgICAgICAgICAgICAvKiBJICAgIHByZWRpY3Rpb24gb3JkZXIgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pOwotCiAvKiBjb21wdXRlIGF1dG9j
b3JyZWxhdGlvbiAqLwogdm9pZCBzaWxrX2F1dG9jb3JyZWxhdGlvbl9GTFAoCiAgICAgc2lsa19m
bG9hdCAgICAgICAgICAqcmVzdWx0cywgICAgICAgICAgIC8qIE8gICAgcmVzdWx0IChsZW5ndGgg
Y29ycmVsYXRpb25Db3VudCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9mbG9hdC9lbmNvZGVfZnJhbWVfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZW5jb2RlX2ZyYW1l
X0ZMUC5jCmluZGV4IDIwOTJhNGQ5ZTI0ODI5OTYzZTQ3OWJjMDNlY2Y3YWZhOGZkMTNhZDkuLjQ5
OTU2YTJkNzUyYzY5MzhiMzAzMzE3OTJiYjUyZDcyNGE4OWVjZTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9m
bG9hdC9lbmNvZGVfZnJhbWVfRkxQLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2VuY29kZV9mcmFtZV9GTFAu
YwpAQCAtMjksNiArMjksNyBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICNpbmNsdWRl
ICJjb25maWcuaCIKICNlbmRpZgogCisjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSAibWFp
bl9GTFAuaCIKICNpbmNsdWRlICJ0dW5pbmdfcGFyYW1ldGVycy5oIgogCkBAIC00MSwyMSArNDIs
MjggQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19MQlJSX2VuY29kZV9GTFAoCiApOwog
CiB2b2lkIHNpbGtfZW5jb2RlX2RvX1ZBRF9GTFAoCi0gICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZM
UCAgICAgICAgICAqcHNFbmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIEVu
Y29kZXIgc3RhdGUgRkxQICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBzaWxrX2Vu
Y29kZXJfc3RhdGVfRkxQICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0ZSBGTFAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgYWN0aXZpdHkgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBEZWNpc2lvbiBvZiBPcHVzIHZvaWNlIGFjdGl2aXR5
IGRldGVjdG9yICAgICovCiApCiB7CisgICAgY29uc3Qgb3B1c19pbnQgYWN0aXZpdHlfdGhyZXNo
b2xkID0gU0lMS19GSVhfQ09OU1QoIFNQRUVDSF9BQ1RJVklUWV9EVFhfVEhSRVMsIDggKTsKKwog
ICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIFZvaWNlIEFjdGl2aXR5
IERldGVjdGlvbiAqLwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIHNp
bGtfVkFEX0dldFNBX1E4KCAmcHNFbmMtPnNDbW4sIHBzRW5jLT5zQ21uLmlucHV0QnVmICsgMSwg
cHNFbmMtPnNDbW4uYXJjaCApOworICAgIC8qIElmIE9wdXMgVkFEIGlzIGluYWN0aXZlIGFuZCBT
aWxrIFZBRCBpcyBhY3RpdmU6IGxvd2VyIFNpbGsgVkFEIHRvIGp1c3QgdW5kZXIgdGhlIHRocmVz
aG9sZCAqLworICAgIGlmKCBhY3Rpdml0eSA9PSBWQURfTk9fQUNUSVZJVFkgJiYgcHNFbmMtPnND
bW4uc3BlZWNoX2FjdGl2aXR5X1E4ID49IGFjdGl2aXR5X3RocmVzaG9sZCApIHsKKyAgICAgICAg
cHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5X1E4ID0gYWN0aXZpdHlfdGhyZXNob2xkIC0gMTsK
KyAgICB9CiAKICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKiovCiAgICAgLyogQ29udmVydCBzcGVlY2ggYWN0aXZpdHkgaW50byBWQUQgYW5kIERU
WCBmbGFncyAqLwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KLSAgICBpZiggcHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5X1E4IDwgU0lM
S19GSVhfQ09OU1QoIFNQRUVDSF9BQ1RJVklUWV9EVFhfVEhSRVMsIDggKSApIHsKKyAgICBpZigg
cHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5X1E4IDwgYWN0aXZpdHlfdGhyZXNob2xkICkgewog
ICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPSBUWVBFX05PX1ZPSUNFX0FD
VElWSVRZOwogICAgICAgICBwc0VuYy0+c0Ntbi5ub1NwZWVjaENvdW50ZXIrKzsKLSAgICAgICAg
aWYoIHBzRW5jLT5zQ21uLm5vU3BlZWNoQ291bnRlciA8IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JF
X0RUWCApIHsKKyAgICAgICAgaWYoIHBzRW5jLT5zQ21uLm5vU3BlZWNoQ291bnRlciA8PSBOQl9T
UEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFggKSB7CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5pbkRU
WCA9IDA7CiAgICAgICAgIH0gZWxzZSBpZiggcHNFbmMtPnNDbW4ubm9TcGVlY2hDb3VudGVyID4g
TUFYX0NPTlNFQ1VUSVZFX0RUWCArIE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCApIHsKICAg
ICAgICAgICAgIHBzRW5jLT5zQ21uLm5vU3BlZWNoQ291bnRlciA9IE5CX1NQRUVDSF9GUkFNRVNf
QkVGT1JFX0RUWDsKQEAgLTg1LDcgKzkzLDYgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVf
RkxQKAogICAgIHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZMUCBzRW5jQ3RybDsKICAgICBvcHVzX2lu
dCAgICAgaSwgaXRlciwgbWF4SXRlciwgZm91bmRfdXBwZXIsIGZvdW5kX2xvd2VyLCByZXQgPSAw
OwogICAgIHNpbGtfZmxvYXQgICAqeF9mcmFtZSwgKnJlc19waXRjaF9mcmFtZTsKLSAgICBzaWxr
X2Zsb2F0ICAgeGZ3WyBNQVhfRlJBTUVfTEVOR1RIIF07CiAgICAgc2lsa19mbG9hdCAgIHJlc19w
aXRjaFsgMiAqIE1BWF9GUkFNRV9MRU5HVEggKyBMQV9QSVRDSF9NQVggXTsKICAgICBlY19lbmMg
ICAgICAgc1JhbmdlRW5jX2NvcHksIHNSYW5nZUVuY19jb3B5MjsKICAgICBzaWxrX25zcV9zdGF0
ZSBzTlNRX2NvcHksIHNOU1FfY29weTI7CkBAIC05Nyw2ICsxMDQsOSBAQCBvcHVzX2ludCBzaWxr
X2VuY29kZV9mcmFtZV9GTFAoCiAgICAgb3B1c19pbnQ4ICAgIExhc3RHYWluSW5kZXhfY29weTI7
CiAgICAgb3B1c19pbnQzMiAgIHBHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdOwogICAgIG9wdXNf
dWludDggICBlY19idWZfY29weVsgMTI3NSBdOworICAgIG9wdXNfaW50ICAgICBnYWluX2xvY2tb
IE1BWF9OQl9TVUJGUiBdID0gezB9OworICAgIG9wdXNfaW50MTYgICBiZXN0X2dhaW5fbXVsdFsg
TUFYX05CX1NVQkZSIF07CisgICAgb3B1c19pbnQgICAgIGJlc3Rfc3VtWyBNQVhfTkJfU1VCRlIg
XTsKIAogICAgIC8qIFRoaXMgaXMgdG90YWxseSB1bm5lY2Vzc2FyeSBidXQgbWFueSBjb21waWxl
cnMgKGluY2x1ZGluZyBnY2MpIGFyZSB0b28gZHVtYiB0byByZWFsaXNlIGl0ICovCiAgICAgTGFz
dEdhaW5JbmRleF9jb3B5MiA9IG5CaXRzX2xvd2VyID0gbkJpdHNfdXBwZXIgPSBnYWluTXVsdF9s
b3dlciA9IGdhaW5NdWx0X3VwcGVyID0gMDsKQEAgLTEzOSwyMiArMTQ5LDE3IEBAIG9wdXNfaW50
IHNpbGtfZW5jb2RlX2ZyYW1lX0ZMUCgKICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogRmluZCBsaW5lYXIgcHJl
ZGljdGlvbiBjb2VmZmljaWVudHMgKExQQyArIExUUCkgKi8KICAgICAgICAgLyoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgc2lsa19m
aW5kX3ByZWRfY29lZnNfRkxQKCBwc0VuYywgJnNFbmNDdHJsLCByZXNfcGl0Y2gsIHhfZnJhbWUs
IGNvbmRDb2RpbmcgKTsKKyAgICAgICAgc2lsa19maW5kX3ByZWRfY29lZnNfRkxQKCBwc0VuYywg
JnNFbmNDdHJsLCByZXNfcGl0Y2hfZnJhbWUsIHhfZnJhbWUsIGNvbmRDb2RpbmcgKTsKIAogICAg
ICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAg
LyogUHJvY2VzcyBnYWlucyAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgIC8qKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgICAgICBzaWxrX3Byb2Nl
c3NfZ2FpbnNfRkxQKCBwc0VuYywgJnNFbmNDdHJsLCBjb25kQ29kaW5nICk7CiAKLSAgICAgICAg
LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICAvKiBQ
cmVmaWx0ZXJpbmcgZm9yIG5vaXNlIHNoYXBlciAgICAgICAgICovCi0gICAgICAgIC8qKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgc2lsa19wcmVmaWx0
ZXJfRkxQKCBwc0VuYywgJnNFbmNDdHJsLCB4ZncsIHhfZnJhbWUgKTsKLQogICAgICAgICAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogTG93IEJp
dHJhdGUgUmVkdW5kYW50IEVuY29kaW5nICAgICAgICovCiAgICAgICAgIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICBzaWxrX0xCUlJfZW5jb2RlX0ZM
UCggcHNFbmMsICZzRW5jQ3RybCwgeGZ3LCBjb25kQ29kaW5nICk7CisgICAgICAgIHNpbGtfTEJS
Ul9lbmNvZGVfRkxQKCBwc0VuYywgJnNFbmNDdHJsLCB4X2ZyYW1lLCBjb25kQ29kaW5nICk7CiAK
ICAgICAgICAgLyogTG9vcCBvdmVyIHF1YW50aXplciBhbmQgZW50cm95IGNvZGluZyB0byBjb250
cm9sIGJpdHJhdGUgKi8KICAgICAgICAgbWF4SXRlciA9IDY7CkBAIC0xODgsNyArMTkzLDExIEBA
IG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZMUCgKICAgICAgICAgICAgICAgICAvKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgICAgICAgICAgICAgLyog
Tm9pc2Ugc2hhcGluZyBxdWFudGl6YXRpb24gICAgICAgICAgICAqLwogICAgICAgICAgICAgICAg
IC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgICAg
ICAgICBzaWxrX05TUV93cmFwcGVyX0ZMUCggcHNFbmMsICZzRW5jQ3RybCwgJnBzRW5jLT5zQ21u
LmluZGljZXMsICZwc0VuYy0+c0Ntbi5zTlNRLCBwc0VuYy0+c0Ntbi5wdWxzZXMsIHhmdyApOwor
ICAgICAgICAgICAgICAgIHNpbGtfTlNRX3dyYXBwZXJfRkxQKCBwc0VuYywgJnNFbmNDdHJsLCAm
cHNFbmMtPnNDbW4uaW5kaWNlcywgJnBzRW5jLT5zQ21uLnNOU1EsIHBzRW5jLT5zQ21uLnB1bHNl
cywgeF9mcmFtZSApOworCisgICAgICAgICAgICAgICAgaWYgKCBpdGVyID09IG1heEl0ZXIgJiYg
IWZvdW5kX2xvd2VyICkgeworICAgICAgICAgICAgICAgICAgICBzaWxrX21lbWNweSggJnNSYW5n
ZUVuY19jb3B5MiwgcHNSYW5nZUVuYywgc2l6ZW9mKCBlY19lbmMgKSApOworICAgICAgICAgICAg
ICAgIH0KIAogICAgICAgICAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqLwogICAgICAgICAgICAgICAgIC8qIEVuY29kZSBQYXJhbWV0ZXJzICAgICAgICAg
ICAgICAgICAgICAqLwpAQCAtMjAzLDYgKzIxMiwzMyBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9m
cmFtZV9GTFAoCiAKICAgICAgICAgICAgICAgICBuQml0cyA9IGVjX3RlbGwoIHBzUmFuZ2VFbmMg
KTsKIAorICAgICAgICAgICAgICAgIC8qIElmIHdlIHN0aWxsIGJ1c3QgYWZ0ZXIgdGhlIGxhc3Qg
aXRlcmF0aW9uLCBkbyBzb21lIGRhbWFnZSBjb250cm9sLiAqLworICAgICAgICAgICAgICAgIGlm
ICggaXRlciA9PSBtYXhJdGVyICYmICFmb3VuZF9sb3dlciAmJiBuQml0cyA+IG1heEJpdHMgKSB7
CisgICAgICAgICAgICAgICAgICAgIHNpbGtfbWVtY3B5KCBwc1JhbmdlRW5jLCAmc1JhbmdlRW5j
X2NvcHkyLCBzaXplb2YoIGVjX2VuYyApICk7CisKKyAgICAgICAgICAgICAgICAgICAgLyogS2Vl
cCBnYWlucyB0aGUgc2FtZSBhcyB0aGUgbGFzdCBmcmFtZS4gKi8KKyAgICAgICAgICAgICAgICAg
ICAgcHNFbmMtPnNTaGFwZS5MYXN0R2FpbkluZGV4ID0gc0VuY0N0cmwubGFzdEdhaW5JbmRleFBy
ZXY7CisgICAgICAgICAgICAgICAgICAgIGZvciAoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4ubmJf
c3ViZnI7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmluZGlj
ZXMuR2FpbnNJbmRpY2VzWyBpIF0gPSA0OworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgICAgIGlmIChjb25kQ29kaW5nICE9IENPREVfQ09ORElUSU9OQUxMWSkgeworICAg
ICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2VzLkdhaW5zSW5kaWNlc1sgMCBd
ID0gc0VuY0N0cmwubGFzdEdhaW5JbmRleFByZXY7CisgICAgICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4uZWNfcHJldkxhZ0luZGV4ID0gZWNfcHJldkxh
Z0luZGV4X2NvcHk7CisgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmVjX3ByZXZTaWdu
YWxUeXBlID0gZWNfcHJldlNpZ25hbFR5cGVfY29weTsKKyAgICAgICAgICAgICAgICAgICAgLyog
Q2xlYXIgYWxsIHB1bHNlcy4gKi8KKyAgICAgICAgICAgICAgICAgICAgZm9yICggaSA9IDA7IGkg
PCBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGg7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIHBzRW5jLT5zQ21uLnB1bHNlc1sgaSBdID0gMDsKKyAgICAgICAgICAgICAgICAgICAgfQor
CisgICAgICAgICAgICAgICAgICAgIHNpbGtfZW5jb2RlX2luZGljZXMoICZwc0VuYy0+c0Ntbiwg
cHNSYW5nZUVuYywgcHNFbmMtPnNDbW4ubkZyYW1lc0VuY29kZWQsIDAsIGNvbmRDb2RpbmcgKTsK
KworICAgICAgICAgICAgICAgICAgICBzaWxrX2VuY29kZV9wdWxzZXMoIHBzUmFuZ2VFbmMsIHBz
RW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSwgcHNFbmMtPnNDbW4uaW5kaWNlcy5xdWFudE9m
ZnNldFR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5wdWxzZXMsIHBz
RW5jLT5zQ21uLmZyYW1lX2xlbmd0aCApOworCisgICAgICAgICAgICAgICAgICAgIG5CaXRzID0g
ZWNfdGVsbCggcHNSYW5nZUVuYyApOworICAgICAgICAgICAgICAgIH0KKwogICAgICAgICAgICAg
ICAgIGlmKCB1c2VDQlIgPT0gMCAmJiBpdGVyID09IDAgJiYgbkJpdHMgPD0gbWF4Qml0cyApIHsK
ICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQpAQCAtMjIzLDcg
KzI1OSw5IEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZMUCgKICAgICAgICAgICAgIGlm
KCBuQml0cyA+IG1heEJpdHMgKSB7CiAgICAgICAgICAgICAgICAgaWYoIGZvdW5kX2xvd2VyID09
IDAgJiYgaXRlciA+PSAyICkgewogICAgICAgICAgICAgICAgICAgICAvKiBBZGp1c3QgdGhlIHF1
YW50aXplcidzIHJhdGUvZGlzdG9ydGlvbiB0cmFkZW9mZiBhbmQgZGlzY2FyZCBwcmV2aW91cyAi
dXBwZXIiIHJlc3VsdHMgKi8KLSAgICAgICAgICAgICAgICAgICAgc0VuY0N0cmwuTGFtYmRhICo9
IDEuNWY7CisgICAgICAgICAgICAgICAgICAgIHNFbmNDdHJsLkxhbWJkYSA9IHNpbGtfbWF4X2Zs
b2F0KHNFbmNDdHJsLkxhbWJkYSoxLjVmLCAxLjVmKTsKKyAgICAgICAgICAgICAgICAgICAgLyog
UmVkdWNpbmcgZGl0aGVyaW5nIGNhbiBoZWxwIHVzIGhpdCB0aGUgdGFyZ2V0LiAqLworICAgICAg
ICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2VzLnF1YW50T2Zmc2V0VHlwZSA9IDA7CiAg
ICAgICAgICAgICAgICAgICAgIGZvdW5kX3VwcGVyID0gMDsKICAgICAgICAgICAgICAgICAgICAg
Z2FpbnNJRF91cHBlciA9IC0xOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CkBAIC0yNTAsMTUg
KzI4OCwzNCBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GTFAoCiAgICAgICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgICAgICB9CiAKKyAgICAgICAgICAgIGlmICggIWZvdW5kX2xvd2Vy
ICYmIG5CaXRzID4gbWF4Qml0cyApIHsKKyAgICAgICAgICAgICAgICBpbnQgajsKKyAgICAgICAg
ICAgICAgICBmb3IgKCBpID0gMDsgaSA8IHBzRW5jLT5zQ21uLm5iX3N1YmZyOyBpKysgKSB7Cisg
ICAgICAgICAgICAgICAgICAgIGludCBzdW09MDsKKyAgICAgICAgICAgICAgICAgICAgZm9yICgg
aiA9IGkqcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoOyBqIDwgKGkrMSkqcHNFbmMtPnNDbW4uc3Vi
ZnJfbGVuZ3RoOyBqKysgKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBzdW0gKz0gYWJzKCBw
c0VuYy0+c0Ntbi5wdWxzZXNbal0gKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgICAgICBpZiAoIGl0ZXIgPT0gMCB8fCAoc3VtIDwgYmVzdF9zdW1baV0gJiYgIWdhaW5f
bG9ja1tpXSkgKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBiZXN0X3N1bVtpXSA9IHN1bTsK
KyAgICAgICAgICAgICAgICAgICAgICAgIGJlc3RfZ2Fpbl9tdWx0W2ldID0gZ2Fpbk11bHRfUTg7
CisgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBn
YWluX2xvY2tbaV0gPSAxOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYoICggZm91bmRfbG93ZXIgJiBmb3VuZF91
cHBlciApID09IDAgKSB7CiAgICAgICAgICAgICAgICAgLyogQWRqdXN0IGdhaW4gYWNjb3JkaW5n
IHRvIGhpZ2gtcmF0ZSByYXRlL2Rpc3RvcnRpb24gY3VydmUgKi8KLSAgICAgICAgICAgICAgICBv
cHVzX2ludDMyIGdhaW5fZmFjdG9yX1ExNjsKLSAgICAgICAgICAgICAgICBnYWluX2ZhY3Rvcl9R
MTYgPSBzaWxrX2xvZzJsaW4oIHNpbGtfTFNISUZUKCBuQml0cyAtIG1heEJpdHMsIDcgKSAvIHBz
RW5jLT5zQ21uLmZyYW1lX2xlbmd0aCArIFNJTEtfRklYX0NPTlNUKCAxNiwgNyApICk7Ci0gICAg
ICAgICAgICAgICAgZ2Fpbl9mYWN0b3JfUTE2ID0gc2lsa19taW5fMzIoIGdhaW5fZmFjdG9yX1Ex
NiwgU0lMS19GSVhfQ09OU1QoIDIsIDE2ICkgKTsKICAgICAgICAgICAgICAgICBpZiggbkJpdHMg
PiBtYXhCaXRzICkgewotICAgICAgICAgICAgICAgICAgICBnYWluX2ZhY3Rvcl9RMTYgPSBzaWxr
X21heF8zMiggZ2Fpbl9mYWN0b3JfUTE2LCBTSUxLX0ZJWF9DT05TVCggMS4zLCAxNiApICk7Cisg
ICAgICAgICAgICAgICAgICAgIGlmIChnYWluTXVsdF9ROCA8IDE2Mzg0KSB7CisgICAgICAgICAg
ICAgICAgICAgICAgICBnYWluTXVsdF9ROCAqPSAyOworICAgICAgICAgICAgICAgICAgICB9IGVs
c2UgeworICAgICAgICAgICAgICAgICAgICAgICAgZ2Fpbk11bHRfUTggPSAzMjc2NzsKKyAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAg
ICAgICAgIG9wdXNfaW50MzIgZ2Fpbl9mYWN0b3JfUTE2OworICAgICAgICAgICAgICAgICAgICBn
YWluX2ZhY3Rvcl9RMTYgPSBzaWxrX2xvZzJsaW4oIHNpbGtfTFNISUZUKCBuQml0cyAtIG1heEJp
dHMsIDcgKSAvIHBzRW5jLT5zQ21uLmZyYW1lX2xlbmd0aCArIFNJTEtfRklYX0NPTlNUKCAxNiwg
NyApICk7CisgICAgICAgICAgICAgICAgICAgIGdhaW5NdWx0X1E4ID0gc2lsa19TTVVMV0IoIGdh
aW5fZmFjdG9yX1ExNiwgZ2Fpbk11bHRfUTggKTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAg
ICAgICAgICAgZ2Fpbk11bHRfUTggPSBzaWxrX1NNVUxXQiggZ2Fpbl9mYWN0b3JfUTE2LCBnYWlu
TXVsdF9ROCApOwogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAvKiBBZGp1
c3QgZ2FpbiBieSBpbnRlcnBvbGF0aW5nICovCiAgICAgICAgICAgICAgICAgZ2Fpbk11bHRfUTgg
PSBnYWluTXVsdF9sb3dlciArICggKCBnYWluTXVsdF91cHBlciAtIGdhaW5NdWx0X2xvd2VyICkg
KiAoIG1heEJpdHMgLSBuQml0c19sb3dlciApICkgLyAoIG5CaXRzX3VwcGVyIC0gbkJpdHNfbG93
ZXIgKTsKQEAgLTI3Miw3ICszMjksMTMgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRkxQ
KAogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgcHNFbmMtPnND
bW4ubmJfc3ViZnI7IGkrKyApIHsKLSAgICAgICAgICAgICAgICBwR2FpbnNfUTE2WyBpIF0gPSBz
aWxrX0xTSElGVF9TQVQzMiggc2lsa19TTVVMV0IoIHNFbmNDdHJsLkdhaW5zVW5xX1ExNlsgaSBd
LCBnYWluTXVsdF9ROCApLCA4ICk7CisgICAgICAgICAgICAgICAgb3B1c19pbnQxNiB0bXA7Cisg
ICAgICAgICAgICAgICAgaWYgKCBnYWluX2xvY2tbaV0gKSB7CisgICAgICAgICAgICAgICAgICAg
IHRtcCA9IGJlc3RfZ2Fpbl9tdWx0W2ldOworICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICAgICAgICAgIHRtcCA9IGdhaW5NdWx0X1E4OworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICBwR2FpbnNfUTE2WyBpIF0gPSBzaWxrX0xTSElGVF9TQVQzMiggc2lsa19T
TVVMV0IoIHNFbmNDdHJsLkdhaW5zVW5xX1ExNlsgaSBdLCB0bXAgKSwgOCApOwogICAgICAgICAg
ICAgfQogCiAgICAgICAgICAgICAvKiBRdWFudGl6ZSBnYWlucyAqLwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2Zsb2F0L2VuZXJneV9GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9lbmVyZ3lfRkxQLmMKaW5kZXggMjRiODE3
OWY5ZTNiNGYzYzg4ZTk5MmNmOWZkODFhNGQ5MDI5NGM3Ni4uN2JjNzE3M2M5Y2YzZjQ2Njk5ZTg5
Y2QxM2RiM2IyNzdhZGU2NjA2YSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2VuZXJneV9GTFAuYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZmxvYXQvZW5lcmd5X0ZMUC5jCkBAIC0zNywxMyArMzcsMTIgQEAgZG91YmxlIHNp
bGtfZW5lcmd5X0ZMUCgKICAgICBvcHVzX2ludCAgICAgICAgICAgIGRhdGFTaXplCiApCiB7Ci0g
ICAgb3B1c19pbnQgIGksIGRhdGFTaXplNDsKKyAgICBvcHVzX2ludCBpOwogICAgIGRvdWJsZSAg
IHJlc3VsdDsKIAogICAgIC8qIDR4IHVucm9sbGVkIGxvb3AgKi8KICAgICByZXN1bHQgPSAwLjA7
Ci0gICAgZGF0YVNpemU0ID0gZGF0YVNpemUgJiAweEZGRkM7Ci0gICAgZm9yKCBpID0gMDsgaSA8
IGRhdGFTaXplNDsgaSArPSA0ICkgeworICAgIGZvciggaSA9IDA7IGkgPCBkYXRhU2l6ZSAtIDM7
IGkgKz0gNCApIHsKICAgICAgICAgcmVzdWx0ICs9IGRhdGFbIGkgKyAwIF0gKiAoZG91YmxlKWRh
dGFbIGkgKyAwIF0gKwogICAgICAgICAgICAgICAgICAgZGF0YVsgaSArIDEgXSAqIChkb3VibGUp
ZGF0YVsgaSArIDEgXSArCiAgICAgICAgICAgICAgICAgICBkYXRhWyBpICsgMiBdICogKGRvdWJs
ZSlkYXRhWyBpICsgMiBdICsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9maW5kX0xQQ19GTFAuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9mbG9hdC9maW5kX0xQQ19GTFAuYwppbmRleCBmY2ZlMWMzNjgxZWI2MWY0MjczNjM4Y2M0
MmUxZTE3MDAwNDkxZWRlLi40ZDYzOTY0ZmViYjhiMjkzMmVmOWNmOThmZmU5NmIzOTZhMzdiODI2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZmluZF9MUENfRkxQLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2Zp
bmRfTFBDX0ZMUC5jCkBAIC03Myw3ICs3Myw3IEBAIHZvaWQgc2lsa19maW5kX0xQQ19GTFAoCiAg
ICAgICAgICAgICBzaWxrX2ludGVycG9sYXRlKCBOTFNGMF9RMTUsIHBzRW5jQy0+cHJldl9OTFNG
cV9RMTUsIE5MU0ZfUTE1LCBrLCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciApOwogCiAgICAgICAg
ICAgICAvKiBDb252ZXJ0IHRvIExQQyBmb3IgcmVzaWR1YWwgZW5lcmd5IGV2YWx1YXRpb24gKi8K
LSAgICAgICAgICAgIHNpbGtfTkxTRjJBX0ZMUCggYV90bXAsIE5MU0YwX1ExNSwgcHNFbmNDLT5w
cmVkaWN0TFBDT3JkZXIgKTsKKyAgICAgICAgICAgIHNpbGtfTkxTRjJBX0ZMUCggYV90bXAsIE5M
U0YwX1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIsIHBzRW5jQy0+YXJjaCApOwogCiAgICAg
ICAgICAgICAvKiBDYWxjdWxhdGUgcmVzaWR1YWwgZW5lcmd5IHdpdGggTFNGIGludGVycG9sYXRp
b24gKi8KICAgICAgICAgICAgIHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GTFAoIExQQ19yZXMs
IGFfdG1wLCB4LCAyICogc3ViZnJfbGVuZ3RoLCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciApOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfTFRQX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfTFRQ
X0ZMUC5jCmluZGV4IDcyMjk5OTYwMTQwOWQzZDk0NjM5MjI2YzBhMWYyM2YxOWE3ZTRkNzUuLmY5
NzA2NDkzMGU4NDE2Y2ZkZmU5NTJlYWRiYjhiYTc0YjA5YzhmNDMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9m
bG9hdC9maW5kX0xUUF9GTFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZmluZF9MVFBfRkxQLmMKQEAgLTMz
LDEwMCArMzMsMzIgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaW5jbHVkZSAidHVu
aW5nX3BhcmFtZXRlcnMuaCIKIAogdm9pZCBzaWxrX2ZpbmRfTFRQX0ZMUCgKLSAgICBzaWxrX2Zs
b2F0ICAgICAgICAgICAgICAgICAgICAgIGJbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdLCAg
ICAgIC8qIE8gICAgTFRQIGNvZWZzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgV0xUUFsgTUFYX05CX1NVQkZS
ICogTFRQX09SREVSICogTFRQX09SREVSIF0sIC8qIE8gICAgV2VpZ2h0IGZvciBMVFAgcXVhbnRp
emF0aW9uICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICAqTFRQ
cmVkQ29kR2FpbiwgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIExUUCBjb2RpbmcgZ2FpbiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAg
ICAgICAgICAgIHJfbHBjW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFBD
IHJlc2lkdWFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgbGFnWyAgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAg
ICAgLyogSSAgICBMVFAgbGFncyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICBXZ2h0WyBNQVhfTkJfU1VCRlIg
XSwgICAgICAgICAgICAgICAvKiBJICAgIFdlaWdodHMgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIFhYWyBN
QVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyogTyAgICBXZWlnaHQgZm9y
IExUUCBxdWFudGl6YXRpb24gICAgICAgICAqLworICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAg
ICAgICAgICAgeFhbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdLCAgICAgLyogTyAgICBXZWln
aHQgZm9yIExUUCBxdWFudGl6YXRpb24gICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2ls
a19mbG9hdCAgICAgICAgICAgICAgICByX3B0cltdLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIExQQyByZXNpZHVhbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGxhZ1sgTUFYX05CX1NVQkZSIF0s
ICAgICAgICAgICAgICAgIC8qIEkgICAgTFRQIGxhZ3MgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgc3ViZnJf
bGVuZ3RoLCAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTdWJmcmFtZSBsZW5ndGggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJl
ciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVz
X2ludCAgICAgICAgICAgICAgICAgIG1lbV9vZmZzZXQgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMgaW4gTFRQIG1lbW9yeSAgICAgICAgICAgICAqLwor
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbmJfc3ViZnIgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiApCiB7Ci0gICAgb3B1c19pbnQgICBpLCBrOwotICAgIHNpbGtfZmxvYXQg
KmJfcHRyLCB0ZW1wLCAqV0xUUF9wdHI7Ci0gICAgc2lsa19mbG9hdCBMUENfcmVzX25yZywgTFBD
X0xUUF9yZXNfbnJnOwotICAgIHNpbGtfZmxvYXQgZFsgTUFYX05CX1NVQkZSIF0sIG0sIGcsIGRl
bHRhX2JbIExUUF9PUkRFUiBdOwotICAgIHNpbGtfZmxvYXQgd1sgTUFYX05CX1NVQkZSIF0sIG5y
Z1sgTUFYX05CX1NVQkZSIF0sIHJlZ3U7Ci0gICAgc2lsa19mbG9hdCBSclsgTFRQX09SREVSIF0s
IHJyWyBNQVhfTkJfU1VCRlIgXTsKLSAgICBjb25zdCBzaWxrX2Zsb2F0ICpyX3B0ciwgKmxhZ19w
dHI7CisgICAgb3B1c19pbnQgICBrOworICAgIHNpbGtfZmxvYXQgKnhYX3B0ciwgKlhYX3B0cjsK
KyAgICBjb25zdCBzaWxrX2Zsb2F0ICpsYWdfcHRyOworICAgIHNpbGtfZmxvYXQgeHgsIHRlbXA7
CiAKLSAgICBiX3B0ciAgICA9IGI7Ci0gICAgV0xUUF9wdHIgPSBXTFRQOwotICAgIHJfcHRyICAg
ID0gJnJfbHBjWyBtZW1fb2Zmc2V0IF07CisgICAgeFhfcHRyID0geFg7CisgICAgWFhfcHRyID0g
WFg7CiAgICAgZm9yKCBrID0gMDsgayA8IG5iX3N1YmZyOyBrKysgKSB7CiAgICAgICAgIGxhZ19w
dHIgPSByX3B0ciAtICggbGFnWyBrIF0gKyBMVFBfT1JERVIgLyAyICk7CisgICAgICAgIHNpbGtf
Y29yck1hdHJpeF9GTFAoIGxhZ19wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09SREVSLCBYWF9wdHIg
KTsKKyAgICAgICAgc2lsa19jb3JyVmVjdG9yX0ZMUCggbGFnX3B0ciwgcl9wdHIsIHN1YmZyX2xl
bmd0aCwgTFRQX09SREVSLCB4WF9wdHIgKTsKKyAgICAgICAgeHggPSAoIHNpbGtfZmxvYXQgKXNp
bGtfZW5lcmd5X0ZMUCggcl9wdHIsIHN1YmZyX2xlbmd0aCArIExUUF9PUkRFUiApOworICAgICAg
ICB0ZW1wID0gMS4wZiAvIHNpbGtfbWF4KCB4eCwgTFRQX0NPUlJfSU5WX01BWCAqIDAuNWYgKiAo
IFhYX3B0clsgMCBdICsgWFhfcHRyWyAyNCBdICkgKyAxLjBmICk7CisgICAgICAgIHNpbGtfc2Nh
bGVfdmVjdG9yX0ZMUCggWFhfcHRyLCB0ZW1wLCBMVFBfT1JERVIgKiBMVFBfT1JERVIgKTsKKyAg
ICAgICAgc2lsa19zY2FsZV92ZWN0b3JfRkxQKCB4WF9wdHIsIHRlbXAsIExUUF9PUkRFUiApOwog
Ci0gICAgICAgIHNpbGtfY29yck1hdHJpeF9GTFAoIGxhZ19wdHIsIHN1YmZyX2xlbmd0aCwgTFRQ
X09SREVSLCBXTFRQX3B0ciApOwotICAgICAgICBzaWxrX2NvcnJWZWN0b3JfRkxQKCBsYWdfcHRy
LCByX3B0ciwgc3ViZnJfbGVuZ3RoLCBMVFBfT1JERVIsIFJyICk7Ci0KLSAgICAgICAgcnJbIGsg
XSA9ICggc2lsa19mbG9hdCApc2lsa19lbmVyZ3lfRkxQKCByX3B0ciwgc3ViZnJfbGVuZ3RoICk7
Ci0gICAgICAgIHJlZ3UgPSAxLjBmICsgcnJbIGsgXSArCi0gICAgICAgICAgICBtYXRyaXhfcHRy
KCBXTFRQX3B0ciwgMCwgMCwgTFRQX09SREVSICkgKwotICAgICAgICAgICAgbWF0cml4X3B0cigg
V0xUUF9wdHIsIExUUF9PUkRFUi0xLCBMVFBfT1JERVItMSwgTFRQX09SREVSICk7Ci0gICAgICAg
IHJlZ3UgKj0gTFRQX0RBTVBJTkcgLyAzOwotICAgICAgICBzaWxrX3JlZ3VsYXJpemVfY29ycmVs
YXRpb25zX0ZMUCggV0xUUF9wdHIsICZyclsgayBdLCByZWd1LCBMVFBfT1JERVIgKTsKLSAgICAg
ICAgc2lsa19zb2x2ZV9MRExfRkxQKCBXTFRQX3B0ciwgTFRQX09SREVSLCBSciwgYl9wdHIgKTsK
LQotICAgICAgICAvKiBDYWxjdWxhdGUgcmVzaWR1YWwgZW5lcmd5ICovCi0gICAgICAgIG5yZ1sg
ayBdID0gc2lsa19yZXNpZHVhbF9lbmVyZ3lfY292YXJfRkxQKCBiX3B0ciwgV0xUUF9wdHIsIFJy
LCByclsgayBdLCBMVFBfT1JERVIgKTsKLQotICAgICAgICB0ZW1wID0gV2dodFsgayBdIC8gKCBu
cmdbIGsgXSAqIFdnaHRbIGsgXSArIDAuMDFmICogc3ViZnJfbGVuZ3RoICk7Ci0gICAgICAgIHNp
bGtfc2NhbGVfdmVjdG9yX0ZMUCggV0xUUF9wdHIsIHRlbXAsIExUUF9PUkRFUiAqIExUUF9PUkRF
UiApOwotICAgICAgICB3WyBrIF0gPSBtYXRyaXhfcHRyKCBXTFRQX3B0ciwgTFRQX09SREVSIC8g
MiwgTFRQX09SREVSIC8gMiwgTFRQX09SREVSICk7Ci0KLSAgICAgICAgcl9wdHIgICAgKz0gc3Vi
ZnJfbGVuZ3RoOwotICAgICAgICBiX3B0ciAgICArPSBMVFBfT1JERVI7Ci0gICAgICAgIFdMVFBf
cHRyICs9IExUUF9PUkRFUiAqIExUUF9PUkRFUjsKLSAgICB9Ci0KLSAgICAvKiBDb21wdXRlIExU
UCBjb2RpbmcgZ2FpbiAqLwotICAgIGlmKCBMVFByZWRDb2RHYWluICE9IE5VTEwgKSB7Ci0gICAg
ICAgIExQQ19MVFBfcmVzX25yZyA9IDFlLTZmOwotICAgICAgICBMUENfcmVzX25yZyAgICAgPSAw
LjBmOwotICAgICAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAg
ICAgIExQQ19yZXNfbnJnICAgICArPSByclsgIGsgXSAqIFdnaHRbIGsgXTsKLSAgICAgICAgICAg
IExQQ19MVFBfcmVzX25yZyArPSBucmdbIGsgXSAqIFdnaHRbIGsgXTsKLSAgICAgICAgfQotCi0g
ICAgICAgIHNpbGtfYXNzZXJ0KCBMUENfTFRQX3Jlc19ucmcgPiAwICk7Ci0gICAgICAgICpMVFBy
ZWRDb2RHYWluID0gMy4wZiAqIHNpbGtfbG9nMiggTFBDX3Jlc19ucmcgLyBMUENfTFRQX3Jlc19u
cmcgKTsKLSAgICB9Ci0KLSAgICAvKiBTbW9vdGhpbmcgKi8KLSAgICAvKiBkID0gc3VtKCBCLCAx
ICk7ICovCi0gICAgYl9wdHIgPSBiOwotICAgIGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysr
ICkgewotICAgICAgICBkWyBrIF0gPSAwOwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09S
REVSOyBpKysgKSB7Ci0gICAgICAgICAgICBkWyBrIF0gKz0gYl9wdHJbIGkgXTsKLSAgICAgICAg
fQotICAgICAgICBiX3B0ciArPSBMVFBfT1JERVI7Ci0gICAgfQotICAgIC8qIG0gPSAoIHcgKiBk
JyApIC8gKCBzdW0oIHcgKSArIDFlLTMgKTsgKi8KLSAgICB0ZW1wID0gMWUtM2Y7Ci0gICAgZm9y
KCBrID0gMDsgayA8IG5iX3N1YmZyOyBrKysgKSB7Ci0gICAgICAgIHRlbXAgKz0gd1sgayBdOwot
ICAgIH0KLSAgICBtID0gMDsKLSAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsK
LSAgICAgICAgbSArPSBkWyBrIF0gKiB3WyBrIF07Ci0gICAgfQotICAgIG0gPSBtIC8gdGVtcDsK
LQotICAgIGJfcHRyID0gYjsKLSAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsK
LSAgICAgICAgZyA9IExUUF9TTU9PVEhJTkcgLyAoIExUUF9TTU9PVEhJTkcgKyB3WyBrIF0gKSAq
ICggbSAtIGRbIGsgXSApOwotICAgICAgICB0ZW1wID0gMDsKLSAgICAgICAgZm9yKCBpID0gMDsg
aSA8IExUUF9PUkRFUjsgaSsrICkgewotICAgICAgICAgICAgZGVsdGFfYlsgaSBdID0gc2lsa19t
YXhfZmxvYXQoIGJfcHRyWyBpIF0sIDAuMWYgKTsKLSAgICAgICAgICAgIHRlbXAgKz0gZGVsdGFf
YlsgaSBdOwotICAgICAgICB9Ci0gICAgICAgIHRlbXAgPSBnIC8gdGVtcDsKLSAgICAgICAgZm9y
KCBpID0gMDsgaSA8IExUUF9PUkRFUjsgaSsrICkgewotICAgICAgICAgICAgYl9wdHJbIGkgXSA9
IGJfcHRyWyBpIF0gKyBkZWx0YV9iWyBpIF0gKiB0ZW1wOwotICAgICAgICB9Ci0gICAgICAgIGJf
cHRyICs9IExUUF9PUkRFUjsKKyAgICAgICAgcl9wdHIgICs9IHN1YmZyX2xlbmd0aDsKKyAgICAg
ICAgWFhfcHRyICs9IExUUF9PUkRFUiAqIExUUF9PUkRFUjsKKyAgICAgICAgeFhfcHRyICs9IExU
UF9PUkRFUjsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZmluZF9wcmVkX2NvZWZz
X0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfcHJlZF9jb2Vmc19GTFAuYwppbmRleCAxYWY0ZmU1ZjFi
MmQxNjc2Y2EyNjgyYzAyNmQ5OGMyZTc4MWFlNTBjLi5jYjJlNzYzYjFkYjAyYmIzZmQwYzE2NmY2
YTkwMGQ1N2ZjMjNiODI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZmluZF9wcmVkX2NvZWZzX0ZM
UC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9mbG9hdC9maW5kX3ByZWRfY29lZnNfRkxQLmMKQEAgLTQxLDggKzQxLDkg
QEAgdm9pZCBzaWxrX2ZpbmRfcHJlZF9jb2Vmc19GTFAoCiApCiB7CiAgICAgb3B1c19pbnQgICAg
ICAgICBpOwotICAgIHNpbGtfZmxvYXQgICAgICAgV0xUUFsgTUFYX05CX1NVQkZSICogTFRQX09S
REVSICogTFRQX09SREVSIF07Ci0gICAgc2lsa19mbG9hdCAgICAgICBpbnZHYWluc1sgTUFYX05C
X1NVQkZSIF0sIFdnaHRbIE1BWF9OQl9TVUJGUiBdOworICAgIHNpbGtfZmxvYXQgICAgICAgWFhM
VFBbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdOworICAgIHNpbGtfZmxv
YXQgICAgICAgeFhMVFBbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdOworICAgIHNpbGtfZmxv
YXQgICAgICAgaW52R2FpbnNbIE1BWF9OQl9TVUJGUiBdOwogICAgIG9wdXNfaW50MTYgICAgICAg
TkxTRl9RMTVbIE1BWF9MUENfT1JERVIgXTsKICAgICBjb25zdCBzaWxrX2Zsb2F0ICp4X3B0cjsK
ICAgICBzaWxrX2Zsb2F0ICAgICAgICp4X3ByZV9wdHIsIExQQ19pbl9wcmVbIE1BWF9OQl9TVUJG
UiAqIE1BWF9MUENfT1JERVIgKyBNQVhfRlJBTUVfTEVOR1RIIF07CkBAIC01Miw3ICs1Myw2IEBA
IHZvaWQgc2lsa19maW5kX3ByZWRfY29lZnNfRkxQKAogICAgIGZvciggaSA9IDA7IGkgPCBwc0Vu
Yy0+c0Ntbi5uYl9zdWJmcjsgaSsrICkgewogICAgICAgICBzaWxrX2Fzc2VydCggcHNFbmNDdHJs
LT5HYWluc1sgaSBdID4gMC4wZiApOwogICAgICAgICBpbnZHYWluc1sgaSBdID0gMS4wZiAvIHBz
RW5jQ3RybC0+R2FpbnNbIGkgXTsKLSAgICAgICAgV2dodFsgaSBdICAgICA9IGludkdhaW5zWyBp
IF0gKiBpbnZHYWluc1sgaSBdOwogICAgIH0KIAogICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2Vz
LnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7CkBAIC02MiwxMyArNjIsMTEgQEAgdm9pZCBz
aWxrX2ZpbmRfcHJlZF9jb2Vmc19GTFAoCiAgICAgICAgIHNpbGtfYXNzZXJ0KCBwc0VuYy0+c0Nt
bi5sdHBfbWVtX2xlbmd0aCAtIHBzRW5jLT5zQ21uLnByZWRpY3RMUENPcmRlciA+PSBwc0VuY0N0
cmwtPnBpdGNoTFsgMCBdICsgTFRQX09SREVSIC8gMiApOwogCiAgICAgICAgIC8qIExUUCBhbmFs
eXNpcyAqLwotICAgICAgICBzaWxrX2ZpbmRfTFRQX0ZMUCggcHNFbmNDdHJsLT5MVFBDb2VmLCBX
TFRQLCAmcHNFbmNDdHJsLT5MVFByZWRDb2RHYWluLCByZXNfcGl0Y2gsCi0gICAgICAgICAgICBw
c0VuY0N0cmwtPnBpdGNoTCwgV2dodCwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoLCBwc0VuYy0+
c0Ntbi5uYl9zdWJmciwgcHNFbmMtPnNDbW4ubHRwX21lbV9sZW5ndGggKTsKKyAgICAgICAgc2ls
a19maW5kX0xUUF9GTFAoIFhYTFRQLCB4WExUUCwgcmVzX3BpdGNoLCBwc0VuY0N0cmwtPnBpdGNo
TCwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciApOwogCiAg
ICAgICAgIC8qIFF1YW50aXplIExUUCBnYWluIHBhcmFtZXRlcnMgKi8KICAgICAgICAgc2lsa19x
dWFudF9MVFBfZ2FpbnNfRkxQKCBwc0VuY0N0cmwtPkxUUENvZWYsIHBzRW5jLT5zQ21uLmluZGlj
ZXMuTFRQSW5kZXgsICZwc0VuYy0+c0Ntbi5pbmRpY2VzLlBFUkluZGV4LAotICAgICAgICAgICAg
JnBzRW5jLT5zQ21uLnN1bV9sb2dfZ2Fpbl9RNywgV0xUUCwgcHNFbmMtPnNDbW4ubXVfTFRQX1E5
LCBwc0VuYy0+c0Ntbi5MVFBRdWFudExvd0NvbXBsZXhpdHksIHBzRW5jLT5zQ21uLm5iX3N1YmZy
LAotICAgICAgICAgICAgcHNFbmMtPnNDbW4uYXJjaCApOworICAgICAgICAgICAgJnBzRW5jLT5z
Q21uLnN1bV9sb2dfZ2Fpbl9RNywgJnBzRW5jQ3RybC0+TFRQcmVkQ29kR2FpbiwgWFhMVFAsIHhY
TFRQLCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGgsIHBzRW5jLT5zQ21uLm5iX3N1YmZyLCBwc0Vu
Yy0+c0Ntbi5hcmNoICk7CiAKICAgICAgICAgLyogQ29udHJvbCBMVFAgc2NhbGluZyAqLwogICAg
ICAgICBzaWxrX0xUUF9zY2FsZV9jdHJsX0ZMUCggcHNFbmMsIHBzRW5jQ3RybCwgY29uZENvZGlu
ZyApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2lubmVyX3Byb2R1Y3RfRkxQLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxv
YXQvaW5uZXJfcHJvZHVjdF9GTFAuYwppbmRleCAwMjljMDEyOTExZGFkZDY3MzJmZjEzNzNmYmEw
NGIyOTZlM2FjNjllLi5jZGQzOWQyNGNlOTQxODkxNmRiMzQ2YmE5M2FkNThjZjBkOWZjMTQ2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZmxvYXQvaW5uZXJfcHJvZHVjdF9GTFAuYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQv
aW5uZXJfcHJvZHVjdF9GTFAuYwpAQCAtMzgsMTMgKzM4LDEyIEBAIGRvdWJsZSBzaWxrX2lubmVy
X3Byb2R1Y3RfRkxQKAogICAgIG9wdXNfaW50ICAgICAgICAgICAgZGF0YVNpemUKICkKIHsKLSAg
ICBvcHVzX2ludCAgaSwgZGF0YVNpemU0OworICAgIG9wdXNfaW50IGk7CiAgICAgZG91YmxlICAg
cmVzdWx0OwogCiAgICAgLyogNHggdW5yb2xsZWQgbG9vcCAqLwogICAgIHJlc3VsdCA9IDAuMDsK
LSAgICBkYXRhU2l6ZTQgPSBkYXRhU2l6ZSAmIDB4RkZGQzsKLSAgICBmb3IoIGkgPSAwOyBpIDwg
ZGF0YVNpemU0OyBpICs9IDQgKSB7CisgICAgZm9yKCBpID0gMDsgaSA8IGRhdGFTaXplIC0gMzsg
aSArPSA0ICkgewogICAgICAgICByZXN1bHQgKz0gZGF0YTFbIGkgKyAwIF0gKiAoZG91YmxlKWRh
dGEyWyBpICsgMCBdICsKICAgICAgICAgICAgICAgICAgIGRhdGExWyBpICsgMSBdICogKGRvdWJs
ZSlkYXRhMlsgaSArIDEgXSArCiAgICAgICAgICAgICAgICAgICBkYXRhMVsgaSArIDIgXSAqIChk
b3VibGUpZGF0YTJbIGkgKyAyIF0gKwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2syYV9GTFAuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9mbG9hdC9rMmFfRkxQLmMKaW5kZXggMTJhZjRlNzY2OTdhODY5ODMxYjczZGU1MzNlMzE2
YTg4NTliODE2My4uMTQ0ODAwOGRiYmVkMTM5NzkxMDg5MTMyYjBlMzkxYjJlN2UwN2Y2YiAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2Zsb2F0L2syYV9GTFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvazJhX0ZMUC5jCkBA
IC0zOSwxNSArMzksMTYgQEAgdm9pZCBzaWxrX2syYV9GTFAoCiApCiB7CiAgICAgb3B1c19pbnQg
ICBrLCBuOwotICAgIHNpbGtfZmxvYXQgQXRtcFsgU0lMS19NQVhfT1JERVJfTFBDIF07CisgICAg
c2lsa19mbG9hdCByY2ssIHRtcDEsIHRtcDI7CiAKICAgICBmb3IoIGsgPSAwOyBrIDwgb3JkZXI7
IGsrKyApIHsKLSAgICAgICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyApIHsKLSAgICAgICAgICAg
IEF0bXBbIG4gXSA9IEFbIG4gXTsKKyAgICAgICAgcmNrID0gcmNbIGsgXTsKKyAgICAgICAgZm9y
KCBuID0gMDsgbiA8IChrICsgMSkgPj4gMTsgbisrICkgeworICAgICAgICAgICAgdG1wMSA9IEFb
IG4gXTsKKyAgICAgICAgICAgIHRtcDIgPSBBWyBrIC0gbiAtIDEgXTsKKyAgICAgICAgICAgIEFb
IG4gXSAgICAgICAgID0gdG1wMSArIHRtcDIgKiByY2s7CisgICAgICAgICAgICBBWyBrIC0gbiAt
IDEgXSA9IHRtcDIgKyB0bXAxICogcmNrOwogICAgICAgICB9Ci0gICAgICAgIGZvciggbiA9IDA7
IG4gPCBrOyBuKysgKSB7Ci0gICAgICAgICAgICBBWyBuIF0gKz0gQXRtcFsgayAtIG4gLSAxIF0g
KiByY1sgayBdOwotICAgICAgICB9Ci0gICAgICAgIEFbIGsgXSA9IC1yY1sgayBdOworICAgICAg
ICBBWyBrIF0gPSAtcmNrOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9sZXZpbnNv
bmR1cmJpbl9GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9sZXZpbnNvbmR1cmJpbl9GTFAuYwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggZjBiYTYwNjk4MTJmZDMyYjkyY2JlYTY0OWQ5YmI3ZTBiNTVh
NGYwMi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
ZmxvYXQvbGV2aW5zb25kdXJiaW5fRkxQLmMKKysrIC9kZXYvbnVsbApAQCAtMSw4MSArMCwwIEBA
Ci0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioKLUNvcHlyaWdodCAoYykgMjAwNi0yMDExLCBTa3lwZSBMaW1pdGVk
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0t
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0IG5vdGljZSwKLXRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCi0tIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci1ub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi1kb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotLSBOZWl0
aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9y
IHRoZQotbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUKLXByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgotcGVybWlzc2lvbi4KLVRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElT
IgotQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQotSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLUFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQot
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgotQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLVNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
LUNPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpCi1BUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQotUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCi0qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KLQotI2lmZGVmIEhBVkVfQ09ORklHX0gKLSNpbmNsdWRl
ICJjb25maWcuaCIKLSNlbmRpZgotCi0jaW5jbHVkZSAiU2lnUHJvY19GTFAuaCIKLQotLyogU29s
dmUgdGhlIG5vcm1hbCBlcXVhdGlvbnMgdXNpbmcgdGhlIExldmluc29uLUR1cmJpbiByZWN1cnNp
b24gKi8KLXNpbGtfZmxvYXQgc2lsa19sZXZpbnNvbmR1cmJpbl9GTFAoICAgICAgICAgLyogTyAg
ICBwcmVkaWN0aW9uIGVycm9yIGVuZXJneSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgQVtdLCAgICAgICAgICAgICAgICAvKiBP
ICAgIHByZWRpY3Rpb24gY29lZmZpY2llbnRzICAgIFtvcmRlcl0gICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICBjb3JyW10sICAgICAgICAgICAgIC8q
IEkgICAgaW5wdXQgYXV0by1jb3JyZWxhdGlvbnMgW29yZGVyICsgMV0gICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgIG9yZGVyICAgICAgICAgICAgICAg
LyogSSAgICBwcmVkaWN0aW9uIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50ICAgaSwgbUhhbGYsIG07Ci0gICAgc2ls
a19mbG9hdCBtaW5fbnJnLCBucmcsIHQsIGttLCBBdG1wMSwgQXRtcDI7Ci0KLSAgICBtaW5fbnJn
ID0gMWUtMTJmICogY29yclsgMCBdICsgMWUtOWY7Ci0gICAgbnJnID0gY29yclsgMCBdOwotICAg
IG5yZyA9IHNpbGtfbWF4X2Zsb2F0KG1pbl9ucmcsIG5yZyk7Ci0gICAgQVsgMCBdID0gY29yclsg
MSBdIC8gbnJnOwotICAgIG5yZyAtPSBBWyAwIF0gKiBjb3JyWyAxIF07Ci0gICAgbnJnID0gc2ls
a19tYXhfZmxvYXQobWluX25yZywgbnJnKTsKLQotICAgIGZvciggbSA9IDE7IG0gPCBvcmRlcjsg
bSsrICkKLSAgICB7Ci0gICAgICAgIHQgPSBjb3JyWyBtICsgMSBdOwotICAgICAgICBmb3IoIGkg
PSAwOyBpIDwgbTsgaSsrICkgewotICAgICAgICAgICAgdCAtPSBBWyBpIF0gKiBjb3JyWyBtIC0g
aSBdOwotICAgICAgICB9Ci0KLSAgICAgICAgLyogcmVmbGVjdGlvbiBjb2VmZmljaWVudCAqLwot
ICAgICAgICBrbSA9IHQgLyBucmc7Ci0KLSAgICAgICAgLyogcmVzaWR1YWwgZW5lcmd5ICovCi0g
ICAgICAgIG5yZyAtPSBrbSAqIHQ7Ci0gICAgICAgIG5yZyA9IHNpbGtfbWF4X2Zsb2F0KG1pbl9u
cmcsIG5yZyk7Ci0KLSAgICAgICAgbUhhbGYgPSBtID4+IDE7Ci0gICAgICAgIGZvciggaSA9IDA7
IGkgPCBtSGFsZjsgaSsrICkgewotICAgICAgICAgICAgQXRtcDEgPSBBWyBpIF07Ci0gICAgICAg
ICAgICBBdG1wMiA9IEFbIG0gLSBpIC0gMSBdOwotICAgICAgICAgICAgQVsgbSAtIGkgLSAxIF0g
LT0ga20gKiBBdG1wMTsKLSAgICAgICAgICAgIEFbIGkgXSAgICAgICAgIC09IGttICogQXRtcDI7
Ci0gICAgICAgIH0KLSAgICAgICAgaWYoIG0gJiAxICkgewotICAgICAgICAgICAgQVsgbUhhbGYg
XSAgICAgLT0ga20gKiBBWyBtSGFsZiBdOwotICAgICAgICB9Ci0gICAgICAgIEFbIG0gXSA9IGtt
OwotICAgIH0KLQotICAgIC8qIHJldHVybiB0aGUgcmVzaWR1YWwgZW5lcmd5ICovCi0gICAgcmV0
dXJuIG5yZzsKLX0KLQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L21haW5fRkxQLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxv
YXQvbWFpbl9GTFAuaAppbmRleCBlNWE3NTk3MmU1ZjhjMDMwYTEwNzZjNjVkMzM2YTdkMDI4NzYz
YzU0Li41ZGMwY2NmNGE0MTNiM2EyZDNlYzc5MTE0ZmFhMzM0YzQyYjc2NTNiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZmxvYXQvbWFpbl9GTFAuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvbWFpbl9GTFAuaApAQCAtNTYs
NyArNTYsOCBAQCB2b2lkIHNpbGtfSFBfdmFyaWFibGVfY3V0b2ZmKAogCiAvKiBFbmNvZGVyIG1h
aW4gZnVuY3Rpb24gKi8KIHZvaWQgc2lsa19lbmNvZGVfZG9fVkFEX0ZMUCgKLSAgICBzaWxrX2Vu
Y29kZXJfc3RhdGVfRkxQICAgICAgICAgICpwc0VuYyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0ZSBGTFAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GTFAgICAgICAgICAgKnBzRW5jLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIHN0YXRlIEZMUCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBhY3Rp
dml0eSAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIERlY2lzaW9uIG9mIE9wdXMg
dm9pY2UgYWN0aXZpdHkgZGV0ZWN0b3IgICAgKi8KICk7CiAKIC8qIEVuY29kZXIgbWFpbiBmdW5j
dGlvbiAqLwpAQCAtNzksMjIgKzgwLDExIEBAIG9wdXNfaW50IHNpbGtfaW5pdF9lbmNvZGVyKAog
b3B1c19pbnQgc2lsa19jb250cm9sX2VuY29kZXIoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZM
UCAgICAgICAgICAqcHNFbmMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBv
aW50ZXIgdG8gU2lsayBlbmNvZGVyIHN0YXRlIEZMUCAgICAgICAgICAgKi8KICAgICBzaWxrX0Vu
Y0NvbnRyb2xTdHJ1Y3QgICAgICAgICAgICplbmNDb250cm9sLCAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgQ29udHJvbCBzdHJ1Y3R1cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgVGFyZ2V0UmF0ZV9icHMsICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBUYXJnZXQgbWF4IGJpdHJhdGUgKGJwcykgICAgICAg
ICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBhbGxv
d19id19zd2l0Y2gsICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZsYWcgdG8gYWxsb3cgc3dp
dGNoaW5nIGF1ZGlvIGJhbmR3aWR0aCAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAg
ICAgICAgICAgIGNoYW5uZWxOYiwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ2hh
bm5lbCBudW1iZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgZm9yY2VfZnNfa0h6CiApOwogCi0vKioqKioqKioqKioq
KioqKi8KLS8qIFByZWZpbHRlcmluZyAqLwotLyoqKioqKioqKioqKioqKiovCi12b2lkIHNpbGtf
cHJlZmlsdGVyX0ZMUCgKLSAgICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQICAgICAgICAgICpwc0Vu
YywgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0ZSBGTFAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9jb250
cm9sX0ZMUCAgKnBzRW5jQ3RybCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNv
ZGVyIGNvbnRyb2wgRkxQICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9h
dCAgICAgICAgICAgICAgICAgICAgICB4d1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBPICAgIFdlaWdodGVkIHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
LSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIHhbXSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgU3BlZWNoIHNpZ25hbCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotKTsKLQogLyoqKioqKioqKioqKioqKioqKioqKioqKioqLwogLyogTm9p
c2Ugc2hhcGluZyBhbmFseXNpcyAqLwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAt
MTUzLDE1ICsxNDMsMTIgQEAgdm9pZCBzaWxrX2ZpbmRfTFBDX0ZMUCgKIAogLyogTFRQIGFuYWx5
c2lzICovCiB2b2lkIHNpbGtfZmluZF9MVFBfRkxQKAotICAgIHNpbGtfZmxvYXQgICAgICAgICAg
ICAgICAgICAgICAgYlsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgLyogTyAgICBM
VFAgY29lZnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19m
bG9hdCAgICAgICAgICAgICAgICAgICAgICBXTFRQWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIg
KiBMVFBfT1JERVIgXSwgLyogTyAgICBXZWlnaHQgZm9yIExUUCBxdWFudGl6YXRpb24gICAgICAg
Ki8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgICpMVFByZWRDb2RHYWluLCAg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIGNvZGluZyBnYWluICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgcl9s
cGNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMUEMgcmVzaWR1YWwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgc2lsa19mbG9hdCAgICAgICAgICAg
ICAgICAgICAgICBYWFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSICogTFRQX09SREVSIF0sIC8q
IE8gICAgV2VpZ2h0IGZvciBMVFAgcXVhbnRpemF0aW9uICAgICAgICAgKi8KKyAgICBzaWxrX2Zs
b2F0ICAgICAgICAgICAgICAgICAgICAgIHhYWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwg
ICAgIC8qIE8gICAgV2VpZ2h0IGZvciBMVFAgcXVhbnRpemF0aW9uICAgICAgICAgICAgICAgICAq
LworICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgcl9wdHJbXSwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBMUEMgcmVzaWR1YWwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBsYWdb
ICBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAvKiBJICAgIExUUCBsYWdzICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAg
ICAgICAgICAgIFdnaHRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgIC8qIEkgICAgV2Vp
Z2h0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgc3ViZnJfbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBTdWJmcmFtZSBsZW5ndGggICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG1lbV9v
ZmZzZXQgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMg
aW4gTFRQIG1lbW9yeSAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgbmJfc3ViZnIgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1i
ZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCiB2b2lkIHNp
bGtfTFRQX2FuYWx5c2lzX2ZpbHRlcl9GTFAoCkBAIC0xOTgsMTQgKzE4NSwxNSBAQCB2b2lkIHNp
bGtfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GTFAoCiAKIC8qIExUUCB0YXAgcXVhbnRpemVyICovCiB2
b2lkIHNpbGtfcXVhbnRfTFRQX2dhaW5zX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAg
ICAgICAgICAgIEJbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdLCAgICAgIC8qIEkvTyAgKFVu
LSlxdWFudGl6ZWQgTFRQIGdhaW5zICAgICAgICAgICAgICAgICAgICAqLworICAgIHNpbGtfZmxv
YXQgICAgICAgICAgICAgICAgICAgICAgQlsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAg
ICAgLyogTyAgICBRdWFudGl6ZWQgTFRQIGdhaW5zICAgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgICAgICBjYmtfaW5kZXhbIE1BWF9OQl9T
VUJGUiBdLCAgICAgICAgICAvKiBPICAgIENvZGVib29rIGluZGV4ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgICAgICpwZXJp
b2RpY2l0eV9pbmRleCwgICAgICAgICAgICAgICAgIC8qIE8gICAgUGVyaW9kaWNpdHkgaW5kZXgg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAg
ICAgICAgICAgKnN1bV9sb2dfZ2Fpbl9RNywgICAgICAgICAgICAgICAgICAgLyogSS9PICBDdW11
bGF0aXZlIG1heCBwcmVkaWN0aW9uIGdhaW4gICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAg
ICAgICAgICAgICBXWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyog
SSAgICBFcnJvciB3ZWlnaHRzICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgICAgIG11X1ExMCwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgTXUgdmFsdWUgKFIvRCB0cmFkZW9mZikgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbG93Q29tcGxleGl0eSwgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBGbGFnIGZvciBsb3cgY29tcGxleGl0eSAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBuYl9z
dWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFt
ZXMgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAg
ICAgICAgICAgICpwcmVkX2dhaW5fZEIsICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQ
IHByZWRpY3Rpb24gZ2FpbiAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNp
bGtfZmxvYXQgICAgICAgICAgICAgICAgWFhbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExU
UF9PUkRFUiBdLCAvKiBJICAgIENvcnJlbGF0aW9uIG1hdHJpeCAgICAgICAgICAgICAgICAgICov
CisgICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICB4WFsgTUFYX05CX1NVQkZSICog
TFRQX09SREVSIF0sICAgICAvKiBJICAgIENvcnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIHN1YmZy
X2xlbiwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMg
cGVyIHN1YmZyYW1lICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgbmJfc3ViZnIsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1i
ZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgaW50ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgKi8K
ICk7CiAKQEAgLTI0NSwyMiArMjMzLDYgQEAgdm9pZCBzaWxrX2NvcnJWZWN0b3JfRkxQKAogICAg
IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgKlh0ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogTyAgICBYJyp0IGNvcnJlbGF0aW9uIHZlY3RvciBbb3JkZXJdICAgICAg
ICAgICAgICovCiApOwogCi0vKiBBZGQgbm9pc2UgdG8gbWF0cml4IGRpYWdvbmFsICovCi12b2lk
IHNpbGtfcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRkxQKAotICAgIHNpbGtfZmxvYXQgICAgICAg
ICAgICAgICAgICAgICAgKlhYLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9P
ICBDb3JyZWxhdGlvbiBtYXRyaWNlcyAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2ls
a19mbG9hdCAgICAgICAgICAgICAgICAgICAgICAqeHgsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJL08gIENvcnJlbGF0aW9uIHZhbHVlcyAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIG5vaXNlLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTm9pc2UgZW5lcmd5IHRvIGFkZCAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
RCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBEaW1lbnNpb24gb2Yg
WFggICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pOwotCi0vKiBGdW5jdGlvbiB0byBz
b2x2ZSBsaW5lYXIgZXF1YXRpb24gQXggPSBiLCB3aGVyZSBBIGlzIGFuIE14TSBzeW1tZXRyaWMg
bWF0cml4ICovCi12b2lkIHNpbGtfc29sdmVfTERMX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAg
ICAgICAgICAgICAgICAgICpBLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkv
TyAgU3ltbWV0cmljIHNxdWFyZSBtYXRyaXgsIG91dDogcmVnLiAgICAgICAgICAqLwotICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgTSwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBTaXplIG9mIG1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAqYiwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFBvaW50ZXIgdG8gYiB2ZWN0b3IgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAg
ICp4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUG9pbnRlciB0byB4
IHNvbHV0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAqLwotKTsKLQogLyogQXBwbHkgc2luZSB3
aW5kb3cgdG8gc2lnbmFsIHZlY3Rvci4gICovCiAvKiBXaW5kb3cgdHlwZXM6ICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KIC8qICAxIC0+IHNpbmUgd2luZG93IGZyb20gMCB0byBwaS8yICAgICAq
LwpAQCAtMjg1LDcgKzI1Nyw4IEBAIHZvaWQgc2lsa19BMk5MU0ZfRkxQKAogdm9pZCBzaWxrX05M
U0YyQV9GTFAoCiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICAqcEFSLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIExQQyBjb2VmZmljaWVudHMgWyBMUENf
b3JkZXIgXSAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAg
ICAgICpOTFNGX1ExNSwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTkxTRiB2ZWN0
b3IgICAgICBbIExQQ19vcmRlciBdICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgICAgICAgTFBDX29yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBMUEMgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
Y29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBMUENfb3JkZXIsICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIExQQyBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2ggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAg
ICAgICAgICAgICAgICAgICAgICAqLwogKTsKIAogLyogTGltaXQsIHN0YWJpbGl6ZSwgYW5kIHF1
YW50aXplIE5MU0ZzICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvbm9pc2Vfc2hhcGVfYW5hbHlz
aXNfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZmxvYXQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQLmMKaW5kZXggNjVm
NmVhNTg3MDUzODE5Y2RiMTQxYzA0ZWI3ZGNmOTBlOGRlZDc1NC4uY2IzZDhhNTBiN2NiNzcwOTVi
ZmMyYmY4NzM1OWE1YjcxY2ZkM2RjNSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L25vaXNlX3NoYXBl
X2FuYWx5c2lzX0ZMUC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAu
YwpAQCAtNTUsMjUgKzU1LDIxIEBAIHN0YXRpYyBPUFVTX0lOTElORSBzaWxrX2Zsb2F0IHdhcnBl
ZF9nYWluKAogLyogQ29udmVydCB3YXJwZWQgZmlsdGVyIGNvZWZmaWNpZW50cyB0byBtb25pYyBw
c2V1ZG8td2FycGVkIGNvZWZmaWNpZW50cyBhbmQgbGltaXQgbWF4aW11bSAgICAgKi8KIC8qIGFt
cGxpdHVkZSBvZiBtb25pYyB3YXJwZWQgY29lZmZpY2llbnRzIGJ5IHVzaW5nIGJhbmR3aWR0aCBl
eHBhbnNpb24gb24gdGhlIHRydWUgY29lZmZpY2llbnRzICovCiBzdGF0aWMgT1BVU19JTkxJTkUg
dm9pZCB3YXJwZWRfdHJ1ZTJtb25pY19jb2VmcygKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAq
Y29lZnNfc3luLAotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICpjb2Vmc19hbmEsCisgICAgc2ls
a19mbG9hdCAgICAgICAgICAgKmNvZWZzLAogICAgIHNpbGtfZmxvYXQgICAgICAgICAgIGxhbWJk
YSwKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICBsaW1pdCwKICAgICBvcHVzX2ludCAgICAgICAg
ICAgICBvcmRlcgogKSB7CiAgICAgb3B1c19pbnQgICBpLCBpdGVyLCBpbmQgPSAwOwotICAgIHNp
bGtfZmxvYXQgdG1wLCBtYXhhYnMsIGNoaXJwLCBnYWluX3N5biwgZ2Fpbl9hbmE7CisgICAgc2ls
a19mbG9hdCB0bXAsIG1heGFicywgY2hpcnAsIGdhaW47CiAKICAgICAvKiBDb252ZXJ0IHRvIG1v
bmljIGNvZWZmaWNpZW50cyAqLwogICAgIGZvciggaSA9IG9yZGVyIC0gMTsgaSA+IDA7IGktLSAp
IHsKLSAgICAgICAgY29lZnNfc3luWyBpIC0gMSBdIC09IGxhbWJkYSAqIGNvZWZzX3N5blsgaSBd
OwotICAgICAgICBjb2Vmc19hbmFbIGkgLSAxIF0gLT0gbGFtYmRhICogY29lZnNfYW5hWyBpIF07
CisgICAgICAgIGNvZWZzWyBpIC0gMSBdIC09IGxhbWJkYSAqIGNvZWZzWyBpIF07CiAgICAgfQot
ICAgIGdhaW5fc3luID0gKCAxLjBmIC0gbGFtYmRhICogbGFtYmRhICkgLyAoIDEuMGYgKyBsYW1i
ZGEgKiBjb2Vmc19zeW5bIDAgXSApOwotICAgIGdhaW5fYW5hID0gKCAxLjBmIC0gbGFtYmRhICog
bGFtYmRhICkgLyAoIDEuMGYgKyBsYW1iZGEgKiBjb2Vmc19hbmFbIDAgXSApOworICAgIGdhaW4g
PSAoIDEuMGYgLSBsYW1iZGEgKiBsYW1iZGEgKSAvICggMS4wZiArIGxhbWJkYSAqIGNvZWZzWyAw
IF0gKTsKICAgICBmb3IoIGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAgY29lZnNf
c3luWyBpIF0gKj0gZ2Fpbl9zeW47Ci0gICAgICAgIGNvZWZzX2FuYVsgaSBdICo9IGdhaW5fYW5h
OworICAgICAgICBjb2Vmc1sgaSBdICo9IGdhaW47CiAgICAgfQogCiAgICAgLyogTGltaXQgKi8K
QEAgLTgxLDcgKzc3LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgd2FycGVkX3RydWUybW9u
aWNfY29lZnMoCiAgICAgICAgIC8qIEZpbmQgbWF4aW11bSBhYnNvbHV0ZSB2YWx1ZSAqLwogICAg
ICAgICBtYXhhYnMgPSAtMS4wZjsKICAgICAgICAgZm9yKCBpID0gMDsgaSA8IG9yZGVyOyBpKysg
KSB7Ci0gICAgICAgICAgICB0bXAgPSBzaWxrX21heCggc2lsa19hYnNfZmxvYXQoIGNvZWZzX3N5
blsgaSBdICksIHNpbGtfYWJzX2Zsb2F0KCBjb2Vmc19hbmFbIGkgXSApICk7CisgICAgICAgICAg
ICB0bXAgPSBzaWxrX2Fic19mbG9hdCggY29lZnNbIGkgXSApOwogICAgICAgICAgICAgaWYoIHRt
cCA+IG1heGFicyApIHsKICAgICAgICAgICAgICAgICBtYXhhYnMgPSB0bXA7CiAgICAgICAgICAg
ICAgICAgaW5kID0gaTsKQEAgLTk0LDM2ICs5MCw1OSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9p
ZCB3YXJwZWRfdHJ1ZTJtb25pY19jb2VmcygKIAogICAgICAgICAvKiBDb252ZXJ0IGJhY2sgdG8g
dHJ1ZSB3YXJwZWQgY29lZmZpY2llbnRzICovCiAgICAgICAgIGZvciggaSA9IDE7IGkgPCBvcmRl
cjsgaSsrICkgewotICAgICAgICAgICAgY29lZnNfc3luWyBpIC0gMSBdICs9IGxhbWJkYSAqIGNv
ZWZzX3N5blsgaSBdOwotICAgICAgICAgICAgY29lZnNfYW5hWyBpIC0gMSBdICs9IGxhbWJkYSAq
IGNvZWZzX2FuYVsgaSBdOworICAgICAgICAgICAgY29lZnNbIGkgLSAxIF0gKz0gbGFtYmRhICog
Y29lZnNbIGkgXTsKICAgICAgICAgfQotICAgICAgICBnYWluX3N5biA9IDEuMGYgLyBnYWluX3N5
bjsKLSAgICAgICAgZ2Fpbl9hbmEgPSAxLjBmIC8gZ2Fpbl9hbmE7CisgICAgICAgIGdhaW4gPSAx
LjBmIC8gZ2FpbjsKICAgICAgICAgZm9yKCBpID0gMDsgaSA8IG9yZGVyOyBpKysgKSB7Ci0gICAg
ICAgICAgICBjb2Vmc19zeW5bIGkgXSAqPSBnYWluX3N5bjsKLSAgICAgICAgICAgIGNvZWZzX2Fu
YVsgaSBdICo9IGdhaW5fYW5hOworICAgICAgICAgICAgY29lZnNbIGkgXSAqPSBnYWluOwogICAg
ICAgICB9CiAKICAgICAgICAgLyogQXBwbHkgYmFuZHdpZHRoIGV4cGFuc2lvbiAqLwogICAgICAg
ICBjaGlycCA9IDAuOTlmIC0gKCAwLjhmICsgMC4xZiAqIGl0ZXIgKSAqICggbWF4YWJzIC0gbGlt
aXQgKSAvICggbWF4YWJzICogKCBpbmQgKyAxICkgKTsKLSAgICAgICAgc2lsa19id2V4cGFuZGVy
X0ZMUCggY29lZnNfc3luLCBvcmRlciwgY2hpcnAgKTsKLSAgICAgICAgc2lsa19id2V4cGFuZGVy
X0ZMUCggY29lZnNfYW5hLCBvcmRlciwgY2hpcnAgKTsKKyAgICAgICAgc2lsa19id2V4cGFuZGVy
X0ZMUCggY29lZnMsIG9yZGVyLCBjaGlycCApOwogCiAgICAgICAgIC8qIENvbnZlcnQgdG8gbW9u
aWMgd2FycGVkIGNvZWZmaWNpZW50cyAqLwogICAgICAgICBmb3IoIGkgPSBvcmRlciAtIDE7IGkg
PiAwOyBpLS0gKSB7Ci0gICAgICAgICAgICBjb2Vmc19zeW5bIGkgLSAxIF0gLT0gbGFtYmRhICog
Y29lZnNfc3luWyBpIF07Ci0gICAgICAgICAgICBjb2Vmc19hbmFbIGkgLSAxIF0gLT0gbGFtYmRh
ICogY29lZnNfYW5hWyBpIF07CisgICAgICAgICAgICBjb2Vmc1sgaSAtIDEgXSAtPSBsYW1iZGEg
KiBjb2Vmc1sgaSBdOwogICAgICAgICB9Ci0gICAgICAgIGdhaW5fc3luID0gKCAxLjBmIC0gbGFt
YmRhICogbGFtYmRhICkgLyAoIDEuMGYgKyBsYW1iZGEgKiBjb2Vmc19zeW5bIDAgXSApOwotICAg
ICAgICBnYWluX2FuYSA9ICggMS4wZiAtIGxhbWJkYSAqIGxhbWJkYSApIC8gKCAxLjBmICsgbGFt
YmRhICogY29lZnNfYW5hWyAwIF0gKTsKKyAgICAgICAgZ2FpbiA9ICggMS4wZiAtIGxhbWJkYSAq
IGxhbWJkYSApIC8gKCAxLjBmICsgbGFtYmRhICogY29lZnNbIDAgXSApOwogICAgICAgICBmb3Io
IGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAgICAgIGNvZWZzX3N5blsgaSBdICo9
IGdhaW5fc3luOwotICAgICAgICAgICAgY29lZnNfYW5hWyBpIF0gKj0gZ2Fpbl9hbmE7CisgICAg
ICAgICAgICBjb2Vmc1sgaSBdICo9IGdhaW47CiAgICAgICAgIH0KICAgICB9CiAgICAgc2lsa19h
c3NlcnQoIDAgKTsKIH0KIAorc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgbGltaXRfY29lZnMoCisg
ICAgc2lsa19mbG9hdCAgICAgICAgICAgKmNvZWZzLAorICAgIHNpbGtfZmxvYXQgICAgICAgICAg
IGxpbWl0LAorICAgIG9wdXNfaW50ICAgICAgICAgICAgIG9yZGVyCispIHsKKyAgICBvcHVzX2lu
dCAgIGksIGl0ZXIsIGluZCA9IDA7CisgICAgc2lsa19mbG9hdCB0bXAsIG1heGFicywgY2hpcnA7
CisKKyAgICBmb3IoIGl0ZXIgPSAwOyBpdGVyIDwgMTA7IGl0ZXIrKyApIHsKKyAgICAgICAgLyog
RmluZCBtYXhpbXVtIGFic29sdXRlIHZhbHVlICovCisgICAgICAgIG1heGFicyA9IC0xLjBmOwor
ICAgICAgICBmb3IoIGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKKyAgICAgICAgICAgIHRtcCA9
IHNpbGtfYWJzX2Zsb2F0KCBjb2Vmc1sgaSBdICk7CisgICAgICAgICAgICBpZiggdG1wID4gbWF4
YWJzICkgeworICAgICAgICAgICAgICAgIG1heGFicyA9IHRtcDsKKyAgICAgICAgICAgICAgICBp
bmQgPSBpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmKCBtYXhhYnMgPD0g
bGltaXQgKSB7CisgICAgICAgICAgICAvKiBDb2VmZmljaWVudHMgYXJlIHdpdGhpbiByYW5nZSAt
IGRvbmUgKi8KKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIC8qIEFw
cGx5IGJhbmR3aWR0aCBleHBhbnNpb24gKi8KKyAgICAgICAgY2hpcnAgPSAwLjk5ZiAtICggMC44
ZiArIDAuMWYgKiBpdGVyICkgKiAoIG1heGFicyAtIGxpbWl0ICkgLyAoIG1heGFicyAqICggaW5k
ICsgMSApICk7CisgICAgICAgIHNpbGtfYndleHBhbmRlcl9GTFAoIGNvZWZzLCBvcmRlciwgY2hp
cnAgKTsKKyAgICB9CisgICAgc2lsa19hc3NlcnQoIDAgKTsKK30KKwogLyogQ29tcHV0ZSBub2lz
ZSBzaGFwaW5nIGNvZWZmaWNpZW50cyBhbmQgaW5pdGlhbCBnYWluIHZhbHVlcyAqLwogdm9pZCBz
aWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUCgKICAgICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQ
ICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5j
b2RlciBzdGF0ZSBGTFAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtMTMzLDEyICsx
NTIsMTMgQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUCgKICkKIHsKICAgICBz
aWxrX3NoYXBlX3N0YXRlX0ZMUCAqcHNTaGFwZVN0ID0gJnBzRW5jLT5zU2hhcGU7Ci0gICAgb3B1
c19pbnQgICAgIGssIG5TYW1wbGVzOwotICAgIHNpbGtfZmxvYXQgICBTTlJfYWRqX2RCLCBIYXJt
Qm9vc3QsIEhhcm1TaGFwZUdhaW4sIFRpbHQ7Ci0gICAgc2lsa19mbG9hdCAgIG5yZywgcHJlX25y
ZywgbG9nX2VuZXJneSwgbG9nX2VuZXJneV9wcmV2LCBlbmVyZ3lfdmFyaWF0aW9uOwotICAgIHNp
bGtfZmxvYXQgICBkZWx0YSwgQldFeHAxLCBCV0V4cDIsIGdhaW5fbXVsdCwgZ2Fpbl9hZGQsIHN0
cmVuZ3RoLCBiLCB3YXJwaW5nOworICAgIG9wdXNfaW50ICAgICBrLCBuU2FtcGxlcywgblNlZ3M7
CisgICAgc2lsa19mbG9hdCAgIFNOUl9hZGpfZEIsIEhhcm1TaGFwZUdhaW4sIFRpbHQ7CisgICAg
c2lsa19mbG9hdCAgIG5yZywgbG9nX2VuZXJneSwgbG9nX2VuZXJneV9wcmV2LCBlbmVyZ3lfdmFy
aWF0aW9uOworICAgIHNpbGtfZmxvYXQgICBCV0V4cCwgZ2Fpbl9tdWx0LCBnYWluX2FkZCwgc3Ry
ZW5ndGgsIGIsIHdhcnBpbmc7CiAgICAgc2lsa19mbG9hdCAgIHhfd2luZG93ZWRbIFNIQVBFX0xQ
Q19XSU5fTUFYIF07CiAgICAgc2lsa19mbG9hdCAgIGF1dG9fY29yclsgTUFYX1NIQVBFX0xQQ19P
UkRFUiArIDEgXTsKKyAgICBzaWxrX2Zsb2F0ICAgcmNbIE1BWF9TSEFQRV9MUENfT1JERVIgKyAx
IF07CiAgICAgY29uc3Qgc2lsa19mbG9hdCAqeF9wdHIsICpwaXRjaF9yZXNfcHRyOwogCiAgICAg
LyogUG9pbnQgdG8gc3RhcnQgb2YgZmlyc3QgTFBDIGFuYWx5c2lzIGJsb2NrICovCkBAIC0xNzYs
MTQgKzE5NiwxNCBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQKAogICAgIGlm
KCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7CiAgICAg
ICAgIC8qIEluaXRpYWxseSBzZXQgdG8gMDsgbWF5IGJlIG92ZXJydWxlZCBpbiBwcm9jZXNzX2dh
aW5zKC4uKSAqLwogICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2VzLnF1YW50T2Zmc2V0VHlwZSA9
IDA7Ci0gICAgICAgIHBzRW5jQ3RybC0+c3BhcnNlbmVzcyA9IDAuMGY7CiAgICAgfSBlbHNlIHsK
ICAgICAgICAgLyogU3BhcnNlbmVzcyBtZWFzdXJlLCBiYXNlZCBvbiByZWxhdGl2ZSBmbHVjdHVh
dGlvbnMgb2YgZW5lcmd5IHBlciAyIG1pbGxpc2Vjb25kcyAqLwogICAgICAgICBuU2FtcGxlcyA9
IDIgKiBwc0VuYy0+c0Ntbi5mc19rSHo7CiAgICAgICAgIGVuZXJneV92YXJpYXRpb24gPSAwLjBm
OwogICAgICAgICBsb2dfZW5lcmd5X3ByZXYgID0gMC4wZjsKICAgICAgICAgcGl0Y2hfcmVzX3B0
ciA9IHBpdGNoX3JlczsKLSAgICAgICAgZm9yKCBrID0gMDsgayA8IHNpbGtfU01VTEJCKCBTVUJf
RlJBTUVfTEVOR1RIX01TLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciApIC8gMjsgaysrICkgeworICAg
ICAgICBuU2VncyA9IHNpbGtfU01VTEJCKCBTVUJfRlJBTUVfTEVOR1RIX01TLCBwc0VuYy0+c0Nt
bi5uYl9zdWJmciApIC8gMjsKKyAgICAgICAgZm9yKCBrID0gMDsgayA8IG5TZWdzOyBrKysgKSB7
CiAgICAgICAgICAgICBucmcgPSAoIHNpbGtfZmxvYXQgKW5TYW1wbGVzICsgKCBzaWxrX2Zsb2F0
IClzaWxrX2VuZXJneV9GTFAoIHBpdGNoX3Jlc19wdHIsIG5TYW1wbGVzICk7CiAgICAgICAgICAg
ICBsb2dfZW5lcmd5ID0gc2lsa19sb2cyKCBucmcgKTsKICAgICAgICAgICAgIGlmKCBrID4gMCAp
IHsKQEAgLTE5MiwxNyArMjEyLDEzIEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19G
TFAoCiAgICAgICAgICAgICBsb2dfZW5lcmd5X3ByZXYgPSBsb2dfZW5lcmd5OwogICAgICAgICAg
ICAgcGl0Y2hfcmVzX3B0ciArPSBuU2FtcGxlczsKICAgICAgICAgfQotICAgICAgICBwc0VuY0N0
cmwtPnNwYXJzZW5lc3MgPSBzaWxrX3NpZ21vaWQoIDAuNGYgKiAoIGVuZXJneV92YXJpYXRpb24g
LSA1LjBmICkgKTsKIAogICAgICAgICAvKiBTZXQgcXVhbnRpemF0aW9uIG9mZnNldCBkZXBlbmRp
bmcgb24gc3BhcnNlbmVzcyBtZWFzdXJlICovCi0gICAgICAgIGlmKCBwc0VuY0N0cmwtPnNwYXJz
ZW5lc3MgPiBTUEFSU0VORVNTX1RIUkVTSE9MRF9RTlRfT0ZGU0VUICkgeworICAgICAgICBpZigg
ZW5lcmd5X3ZhcmlhdGlvbiA+IEVORVJHWV9WQVJJQVRJT05fVEhSRVNIT0xEX1FOVF9PRkZTRVQg
KiAoblNlZ3MtMSkgKSB7CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2VzLnF1YW50T2Zm
c2V0VHlwZSA9IDA7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5p
bmRpY2VzLnF1YW50T2Zmc2V0VHlwZSA9IDE7CiAgICAgICAgIH0KLQotICAgICAgICAvKiBJbmNy
ZWFzZSBjb2RpbmcgU05SIGZvciBzcGFyc2Ugc2lnbmFscyAqLwotICAgICAgICBTTlJfYWRqX2RC
ICs9IFNQQVJTRV9TTlJfSU5DUl9kQiAqICggcHNFbmNDdHJsLT5zcGFyc2VuZXNzIC0gMC41ZiAp
OwogICAgIH0KIAogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtMjEw
LDE5ICsyMjYsMTAgQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUCgKICAgICAv
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBNb3JlIEJXRSBmb3Igc2ln
bmFscyB3aXRoIGhpZ2ggcHJlZGljdGlvbiBnYWluICovCiAgICAgc3RyZW5ndGggPSBGSU5EX1BJ
VENIX1dISVRFX05PSVNFX0ZSQUNUSU9OICogcHNFbmNDdHJsLT5wcmVkR2FpbjsgICAgICAgICAg
IC8qIGJldHdlZW4gMC4wIGFuZCAxLjAgKi8KLSAgICBCV0V4cDEgPSBCV0V4cDIgPSBCQU5EV0lE
VEhfRVhQQU5TSU9OIC8gKCAxLjBmICsgc3RyZW5ndGggKiBzdHJlbmd0aCApOwotICAgIGRlbHRh
ICA9IExPV19SQVRFX0JBTkRXSURUSF9FWFBBTlNJT05fREVMVEEgKiAoIDEuMGYgLSAwLjc1ZiAq
IHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxpdHkgKTsKLSAgICBCV0V4cDEgLT0gZGVsdGE7Ci0gICAg
QldFeHAyICs9IGRlbHRhOwotICAgIC8qIEJXRXhwMSB3aWxsIGJlIGFwcGxpZWQgYWZ0ZXIgQldF
eHAyLCBzbyBtYWtlIGl0IHJlbGF0aXZlICovCi0gICAgQldFeHAxIC89IEJXRXhwMjsKLQotICAg
IGlmKCBwc0VuYy0+c0Ntbi53YXJwaW5nX1ExNiA+IDAgKSB7Ci0gICAgICAgIC8qIFNsaWdodGx5
IG1vcmUgd2FycGluZyBpbiBhbmFseXNpcyB3aWxsIG1vdmUgcXVhbnRpemF0aW9uIG5vaXNlIHVw
IGluIGZyZXF1ZW5jeSwgd2hlcmUgaXQncyBiZXR0ZXIgbWFza2VkICovCi0gICAgICAgIHdhcnBp
bmcgPSAoc2lsa19mbG9hdClwc0VuYy0+c0Ntbi53YXJwaW5nX1ExNiAvIDY1NTM2LjBmICsgMC4w
MWYgKiBwc0VuY0N0cmwtPmNvZGluZ19xdWFsaXR5OwotICAgIH0gZWxzZSB7Ci0gICAgICAgIHdh
cnBpbmcgPSAwLjBmOwotICAgIH0KKyAgICBCV0V4cCA9IEJBTkRXSURUSF9FWFBBTlNJT04gLyAo
IDEuMGYgKyBzdHJlbmd0aCAqIHN0cmVuZ3RoICk7CisKKyAgICAvKiBTbGlnaHRseSBtb3JlIHdh
cnBpbmcgaW4gYW5hbHlzaXMgd2lsbCBtb3ZlIHF1YW50aXphdGlvbiBub2lzZSB1cCBpbiBmcmVx
dWVuY3ksIHdoZXJlIGl0J3MgYmV0dGVyIG1hc2tlZCAqLworICAgIHdhcnBpbmcgPSAoc2lsa19m
bG9hdClwc0VuYy0+c0Ntbi53YXJwaW5nX1ExNiAvIDY1NTM2LjBmICsgMC4wMWYgKiBwc0VuY0N0
cmwtPmNvZGluZ19xdWFsaXR5OwogCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwogICAgIC8qIENvbXB1dGUgbm9pc2Ugc2hhcGluZyBBUiBjb2VmcyBh
bmQgZ2FpbnMgKi8KQEAgLTI1MiwzNyArMjU5LDI4IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9h
bmFseXNpc19GTFAoCiAgICAgICAgIH0KIAogICAgICAgICAvKiBBZGQgd2hpdGUgbm9pc2UsIGFz
IGEgZnJhY3Rpb24gb2YgZW5lcmd5ICovCi0gICAgICAgIGF1dG9fY29yclsgMCBdICs9IGF1dG9f
Y29yclsgMCBdICogU0hBUEVfV0hJVEVfTk9JU0VfRlJBQ1RJT047CisgICAgICAgIGF1dG9fY29y
clsgMCBdICs9IGF1dG9fY29yclsgMCBdICogU0hBUEVfV0hJVEVfTk9JU0VfRlJBQ1RJT04gKyAx
LjBmOwogCiAgICAgICAgIC8qIENvbnZlcnQgY29ycmVsYXRpb25zIHRvIHByZWRpY3Rpb24gY29l
ZmZpY2llbnRzLCBhbmQgY29tcHV0ZSByZXNpZHVhbCBlbmVyZ3kgKi8KLSAgICAgICAgbnJnID0g
c2lsa19sZXZpbnNvbmR1cmJpbl9GTFAoICZwc0VuY0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9M
UENfT1JERVIgXSwgYXV0b19jb3JyLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAg
ICAgICAgbnJnID0gc2lsa19zY2h1cl9GTFAoIHJjLCBhdXRvX2NvcnIsIHBzRW5jLT5zQ21uLnNo
YXBpbmdMUENPcmRlciApOworICAgICAgICBzaWxrX2syYV9GTFAoICZwc0VuY0N0cmwtPkFSWyBr
ICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCByYywgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVy
ICk7CiAgICAgICAgIHBzRW5jQ3RybC0+R2FpbnNbIGsgXSA9ICggc2lsa19mbG9hdCApc3FydCgg
bnJnICk7CiAKICAgICAgICAgaWYoIHBzRW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKICAg
ICAgICAgICAgIC8qIEFkanVzdCBnYWluIGZvciB3YXJwaW5nICovCi0gICAgICAgICAgICBwc0Vu
Y0N0cmwtPkdhaW5zWyBrIF0gKj0gd2FycGVkX2dhaW4oICZwc0VuY0N0cmwtPkFSMlsgayAqIE1B
WF9TSEFQRV9MUENfT1JERVIgXSwgd2FycGluZywgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVy
ICk7CisgICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zWyBrIF0gKj0gd2FycGVkX2dhaW4oICZw
c0VuY0N0cmwtPkFSWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCB3YXJwaW5nLCBwc0VuYy0+
c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIEJhbmR3aWR0
aCBleHBhbnNpb24gZm9yIHN5bnRoZXNpcyBmaWx0ZXIgc2hhcGluZyAqLwotICAgICAgICBzaWxr
X2J3ZXhwYW5kZXJfRkxQKCAmcHNFbmNDdHJsLT5BUjJbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVS
IF0sIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciwgQldFeHAyICk7Ci0KLSAgICAgICAgLyog
Q29tcHV0ZSBub2lzZSBzaGFwaW5nIGZpbHRlciBjb2VmZmljaWVudHMgKi8KLSAgICAgICAgc2ls
a19tZW1jcHkoCi0gICAgICAgICAgICAmcHNFbmNDdHJsLT5BUjFbIGsgKiBNQVhfU0hBUEVfTFBD
X09SREVSIF0sCi0gICAgICAgICAgICAmcHNFbmNDdHJsLT5BUjJbIGsgKiBNQVhfU0hBUEVfTFBD
X09SREVSIF0sCi0gICAgICAgICAgICBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKiBzaXpl
b2YoIHNpbGtfZmxvYXQgKSApOworICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfRkxQKCAmcHNFbmND
dHJsLT5BUlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQ
Q09yZGVyLCBCV0V4cCApOwogCi0gICAgICAgIC8qIEJhbmR3aWR0aCBleHBhbnNpb24gZm9yIGFu
YWx5c2lzIGZpbHRlciBzaGFwaW5nICovCi0gICAgICAgIHNpbGtfYndleHBhbmRlcl9GTFAoICZw
c0VuY0N0cmwtPkFSMVsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgcHNFbmMtPnNDbW4uc2hh
cGluZ0xQQ09yZGVyLCBCV0V4cDEgKTsKLQotICAgICAgICAvKiBSYXRpbyBvZiBwcmVkaWN0aW9u
IGdhaW5zLCBpbiBlbmVyZ3kgZG9tYWluICovCi0gICAgICAgIHByZV9ucmcgPSBzaWxrX0xQQ19p
bnZlcnNlX3ByZWRfZ2Fpbl9GTFAoICZwc0VuY0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9MUENf
T1JERVIgXSwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7Ci0gICAgICAgIG5yZyAgICAg
PSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9GTFAoICZwc0VuY0N0cmwtPkFSMVsgayAqIE1B
WF9TSEFQRV9MUENfT1JERVIgXSwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7Ci0gICAg
ICAgIHBzRW5jQ3RybC0+R2FpbnNQcmVbIGsgXSA9IDEuMGYgLSAwLjdmICogKCAxLjBmIC0gcHJl
X25yZyAvIG5yZyApOwotCi0gICAgICAgIC8qIENvbnZlcnQgdG8gbW9uaWMgd2FycGVkIHByZWRp
Y3Rpb24gY29lZmZpY2llbnRzIGFuZCBsaW1pdCBhYnNvbHV0ZSB2YWx1ZXMgKi8KLSAgICAgICAg
d2FycGVkX3RydWUybW9uaWNfY29lZnMoICZwc0VuY0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9M
UENfT1JERVIgXSwgJnBzRW5jQ3RybC0+QVIxWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLAot
ICAgICAgICAgICAgd2FycGluZywgMy45OTlmLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIg
KTsKKyAgICAgICAgaWYoIHBzRW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKKyAgICAgICAg
ICAgIC8qIENvbnZlcnQgdG8gbW9uaWMgd2FycGVkIHByZWRpY3Rpb24gY29lZmZpY2llbnRzIGFu
ZCBsaW1pdCBhYnNvbHV0ZSB2YWx1ZXMgKi8KKyAgICAgICAgICAgIHdhcnBlZF90cnVlMm1vbmlj
X2NvZWZzKCAmcHNFbmNDdHJsLT5BUlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgd2FycGlu
ZywgMy45OTlmLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAgfSBlbHNl
IHsKKyAgICAgICAgICAgIC8qIExpbWl0IGFic29sdXRlIHZhbHVlcyAqLworICAgICAgICAgICAg
bGltaXRfY29lZnMoICZwc0VuY0N0cmwtPkFSWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAz
Ljk5OWYsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOworICAgICAgICB9CiAgICAgfQog
CiAgICAgLyoqKioqKioqKioqKioqKioqLwpAQCAtMjk2LDExICsyOTQsNiBAQCB2b2lkIHNpbGtf
bm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQKAogICAgICAgICBwc0VuY0N0cmwtPkdhaW5zWyBrIF0g
Kz0gZ2Fpbl9hZGQ7CiAgICAgfQogCi0gICAgZ2Fpbl9tdWx0ID0gMS4wZiArIElOUFVUX1RJTFQg
KyBwc0VuY0N0cmwtPmNvZGluZ19xdWFsaXR5ICogSElHSF9SQVRFX0lOUFVUX1RJTFQ7Ci0gICAg
Zm9yKCBrID0gMDsgayA8IHBzRW5jLT5zQ21uLm5iX3N1YmZyOyBrKysgKSB7Ci0gICAgICAgIHBz
RW5jQ3RybC0+R2FpbnNQcmVbIGsgXSAqPSBnYWluX211bHQ7Ci0gICAgfQotCiAgICAgLyoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBDb250
cm9sIGxvdy1mcmVxdWVuY3kgc2hhcGluZyBhbmQgbm9pc2UgdGlsdCAqLwogICAgIC8qKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0zMzEsMTIgKzMy
NCw2IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAoCiAgICAgLyoqKioqKioq
KioqKioqKioqKioqKioqKioqKiovCiAgICAgLyogSEFSTU9OSUMgU0hBUElORyBDT05UUk9MICov
CiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgLyogQ29udHJvbCBib29z
dGluZyBvZiBoYXJtb25pYyBmcmVxdWVuY2llcyAqLwotICAgIEhhcm1Cb29zdCA9IExPV19SQVRF
X0hBUk1PTklDX0JPT1NUICogKCAxLjBmIC0gcHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eSApICog
cHNFbmMtPkxUUENvcnI7Ci0KLSAgICAvKiBNb3JlIGhhcm1vbmljIGJvb3N0IGZvciBub2lzeSBp
bnB1dCBzaWduYWxzICovCi0gICAgSGFybUJvb3N0ICs9IExPV19JTlBVVF9RVUFMSVRZX0hBUk1P
TklDX0JPT1NUICogKCAxLjBmIC0gcHNFbmNDdHJsLT5pbnB1dF9xdWFsaXR5ICk7Ci0KICAgICBp
ZiggVVNFX0hBUk1fU0hBUElORyAmJiBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPT0g
VFlQRV9WT0lDRUQgKSB7CiAgICAgICAgIC8qIEhhcm1vbmljIG5vaXNlIHNoYXBpbmcgKi8KICAg
ICAgICAgSGFybVNoYXBlR2FpbiA9IEhBUk1PTklDX1NIQVBJTkc7CkBAIC0zNTUsOCArMzQyLDYg
QEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUCgKICAgICAvKiBTbW9vdGggb3Zl
ciBzdWJmcmFtZXMgKi8KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICBmb3Io
IGsgPSAwOyBrIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgcHNTaGFw
ZVN0LT5IYXJtQm9vc3Rfc210aCAgICAgKz0gU1VCRlJfU01USF9DT0VGICogKCBIYXJtQm9vc3Qg
LSBwc1NoYXBlU3QtPkhhcm1Cb29zdF9zbXRoICk7Ci0gICAgICAgIHBzRW5jQ3RybC0+SGFybUJv
b3N0WyBrIF0gICAgICA9IHBzU2hhcGVTdC0+SGFybUJvb3N0X3NtdGg7CiAgICAgICAgIHBzU2hh
cGVTdC0+SGFybVNoYXBlR2Fpbl9zbXRoICs9IFNVQkZSX1NNVEhfQ09FRiAqICggSGFybVNoYXBl
R2FpbiAtIHBzU2hhcGVTdC0+SGFybVNoYXBlR2Fpbl9zbXRoICk7CiAgICAgICAgIHBzRW5jQ3Ry
bC0+SGFybVNoYXBlR2FpblsgayBdICA9IHBzU2hhcGVTdC0+SGFybVNoYXBlR2Fpbl9zbXRoOwog
ICAgICAgICBwc1NoYXBlU3QtPlRpbHRfc210aCAgICAgICAgICArPSBTVUJGUl9TTVRIX0NPRUYg
KiAoIFRpbHQgLSBwc1NoYXBlU3QtPlRpbHRfc210aCApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0
L3BpdGNoX2FuYWx5c2lzX2NvcmVfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcGl0Y2hfYW5hbHlzaXNfY29y
ZV9GTFAuYwppbmRleCBkMGU2MzdhMjlkYzk1ZDVlNjNhZGUxNGQ5OGY5ZTNmNGNlN2UwYmQ4Li5i
MzcxNjkzNzhiMWY1MjU2NjBmY2NlZjY1ZjhhMmZiNDMxZWNjODA5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
ZmxvYXQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcGl0Y2hfYW5h
bHlzaXNfY29yZV9GTFAuYwpAQCAtMTU5LDcgKzE1OSw3IEBAIG9wdXNfaW50IHNpbGtfcGl0Y2hf
YW5hbHlzaXNfY29yZV9GTFAoICAgICAgLyogTyAgICBWb2ljaW5nIGVzdGltYXRlOiAwIHZvaWNl
ZCwKIAogICAgIC8qIExvdy1wYXNzIGZpbHRlciAqLwogICAgIGZvciggaSA9IGZyYW1lX2xlbmd0
aF80a0h6IC0gMTsgaSA+IDA7IGktLSApIHsKLSAgICAgICAgZnJhbWVfNGtIelsgaSBdICs9IGZy
YW1lXzRrSHpbIGkgLSAxIF07CisgICAgICAgIGZyYW1lXzRrSHpbIGkgXSA9IHNpbGtfQUREX1NB
VDE2KCBmcmFtZV80a0h6WyBpIF0sIGZyYW1lXzRrSHpbIGkgLSAxIF0gKTsKICAgICB9CiAKICAg
ICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcHJlZmlsdGVy
X0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2Zsb2F0L3ByZWZpbHRlcl9GTFAuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggOGJjMzJmYjQxMDQwZWY3YjRmMGYxMjI0Njg5YmIwYjA0NDhlYzA1MC4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcHJlZmls
dGVyX0ZMUC5jCisrKyAvZGV2L251bGwKQEAgLTEsMjA2ICswLDAgQEAKLS8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KgotQ29weXJpZ2h0IChjKSAyMDA2LTIwMTEsIFNreXBlIExpbWl0ZWQuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCi1SZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLW1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotYXJlIG1ldDoKLS0gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAot
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLS0g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLW5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKLWRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0tIE5laXRoZXIgdGhlIG5hbWUgb2Yg
SW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCi1uYW1lcyBvZiBz
cGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQot
cHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
ciB3cml0dGVuCi1wZXJtaXNzaW9uLgotVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCi1BTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCi1JTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFCi1MSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi1DT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgotU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi1JTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
LUFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFCi1QT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwotCi0jaWZkZWYgSEFWRV9DT05GSUdfSAotI2luY2x1ZGUgImNvbmZpZy5oIgotI2Vu
ZGlmCi0KLSNpbmNsdWRlICJtYWluX0ZMUC5oIgotI2luY2x1ZGUgInR1bmluZ19wYXJhbWV0ZXJz
LmgiCi0KLS8qCi0qIFByZWZpbHRlciBmb3IgZmluZGluZyBRdWFudGl6ZXIgaW5wdXQgc2lnbmFs
Ci0qLwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19wcmVmaWx0X0ZMUCgKLSAgICBzaWxr
X3ByZWZpbHRlcl9zdGF0ZV9GTFAgICAgKlAsICAgICAgICAgICAgICAgICAvKiBJL08gc3RhdGUg
Ki8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgc3RfcmVzW10sICAgICAgICAgICAv
KiBJICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIHh3W10sICAgICAgICAgICAg
ICAgLyogTyAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAqSGFybVNoYXBlRklS
LCAgICAgIC8qIEkgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgVGlsdCwgICAg
ICAgICAgICAgICAvKiBJICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIExGX01B
X3NocCwgICAgICAgICAgLyogSSAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBM
Rl9BUl9zaHAsICAgICAgICAgIC8qIEkgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAg
ICAgbGFnLCAgICAgICAgICAgICAgICAvKiBJICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAg
ICAgICAgIGxlbmd0aCAgICAgICAgICAgICAgLyogSSAqLwotKTsKLQotc3RhdGljIHZvaWQgc2ls
a193YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GTFAoCi0gICAgICAgICAgc2lsa19mbG9hdCAg
ICAgICAgICAgICAgICAgc3RhdGVbXSwgICAgICAgICAgICAvKiBJL08gIFN0YXRlIFtvcmRlciAr
IDFdICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgICAgICAgIHNpbGtfZmxvYXQgICAgICAg
ICAgICAgICAgIHJlc1tdLCAgICAgICAgICAgICAgLyogTyAgICBSZXNpZHVhbCBzaWduYWwgW2xl
bmd0aF0gICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAg
ICAgICBjb2VmW10sICAgICAgICAgICAgIC8qIEkgICAgQ29lZmZpY2llbnRzIFtvcmRlcl0gICAg
ICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAg
aW5wdXRbXSwgICAgICAgICAgICAvKiBJICAgIElucHV0IHNpZ25hbCBbbGVuZ3RoXSAgICAgICAg
ICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgIGxhbWJk
YSwgICAgICAgICAgICAgLyogSSAgICBXYXJwaW5nIGZhY3RvciAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgICBsZW5ndGgsICAg
ICAgICAgICAgIC8qIEkgICAgTGVuZ3RoIG9mIGlucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAg
ICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICAgICAqLwot
KQotewotICAgIG9wdXNfaW50ICAgICBuLCBpOwotICAgIHNpbGtfZmxvYXQgICBhY2MsIHRtcDEs
IHRtcDI7Ci0KLSAgICAvKiBPcmRlciBtdXN0IGJlIGV2ZW4gKi8KLSAgICBzaWxrX2Fzc2VydCgg
KCBvcmRlciAmIDEgKSA9PSAwICk7Ci0KLSAgICBmb3IoIG4gPSAwOyBuIDwgbGVuZ3RoOyBuKysg
KSB7Ci0gICAgICAgIC8qIE91dHB1dCBvZiBsb3dwYXNzIHNlY3Rpb24gKi8KLSAgICAgICAgdG1w
MiA9IHN0YXRlWyAwIF0gKyBsYW1iZGEgKiBzdGF0ZVsgMSBdOwotICAgICAgICBzdGF0ZVsgMCBd
ID0gaW5wdXRbIG4gXTsKLSAgICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwot
ICAgICAgICB0bXAxID0gc3RhdGVbIDEgXSArIGxhbWJkYSAqICggc3RhdGVbIDIgXSAtIHRtcDIg
KTsKLSAgICAgICAgc3RhdGVbIDEgXSA9IHRtcDI7Ci0gICAgICAgIGFjYyA9IGNvZWZbIDAgXSAq
IHRtcDI7Ci0gICAgICAgIC8qIExvb3Agb3ZlciBhbGxwYXNzIHNlY3Rpb25zICovCi0gICAgICAg
IGZvciggaSA9IDI7IGkgPCBvcmRlcjsgaSArPSAyICkgewotICAgICAgICAgICAgLyogT3V0cHV0
IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwotICAgICAgICAgICAgdG1wMiA9IHN0YXRlWyBpIF0gKyBs
YW1iZGEgKiAoIHN0YXRlWyBpICsgMSBdIC0gdG1wMSApOwotICAgICAgICAgICAgc3RhdGVbIGkg
XSA9IHRtcDE7Ci0gICAgICAgICAgICBhY2MgKz0gY29lZlsgaSAtIDEgXSAqIHRtcDE7Ci0gICAg
ICAgICAgICAvKiBPdXRwdXQgb2YgYWxscGFzcyBzZWN0aW9uICovCi0gICAgICAgICAgICB0bXAx
ID0gc3RhdGVbIGkgKyAxIF0gKyBsYW1iZGEgKiAoIHN0YXRlWyBpICsgMiBdIC0gdG1wMiApOwot
ICAgICAgICAgICAgc3RhdGVbIGkgKyAxIF0gPSB0bXAyOwotICAgICAgICAgICAgYWNjICs9IGNv
ZWZbIGkgXSAqIHRtcDI7Ci0gICAgICAgIH0KLSAgICAgICAgc3RhdGVbIG9yZGVyIF0gPSB0bXAx
OwotICAgICAgICBhY2MgKz0gY29lZlsgb3JkZXIgLSAxIF0gKiB0bXAxOwotICAgICAgICByZXNb
IG4gXSA9IGlucHV0WyBuIF0gLSBhY2M7Ci0gICAgfQotfQotCi0vKgotKiBzaWxrX3ByZWZpbHRl
ci4gTWFpbiBwcmVmaWx0ZXIgZnVuY3Rpb24KLSovCi12b2lkIHNpbGtfcHJlZmlsdGVyX0ZMUCgK
LSAgICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0ZSBGTFAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZMUCAgKnBzRW5j
Q3RybCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIGNvbnRyb2wgRkxQ
ICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAg
ICAgICAgICB4d1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFdlaWdo
dGVkIHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxr
X2Zsb2F0ICAgICAgICAgICAgICAgIHhbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgU3BlZWNoIHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
KQotewotICAgIHNpbGtfcHJlZmlsdGVyX3N0YXRlX0ZMUCAqUCA9ICZwc0VuYy0+c1ByZWZpbHQ7
Ci0gICAgb3B1c19pbnQgICBqLCBrLCBsYWc7Ci0gICAgc2lsa19mbG9hdCBIYXJtU2hhcGVHYWlu
LCBUaWx0LCBMRl9NQV9zaHAsIExGX0FSX3NocDsKLSAgICBzaWxrX2Zsb2F0IEJbIDIgXTsKLSAg
ICBjb25zdCBzaWxrX2Zsb2F0ICpBUjFfc2hwOwotICAgIGNvbnN0IHNpbGtfZmxvYXQgKnB4Owot
ICAgIHNpbGtfZmxvYXQgKnB4dzsKLSAgICBzaWxrX2Zsb2F0IEhhcm1TaGFwZUZJUlsgMyBdOwot
ICAgIHNpbGtfZmxvYXQgc3RfcmVzWyBNQVhfU1VCX0ZSQU1FX0xFTkdUSCArIE1BWF9MUENfT1JE
RVIgXTsKLQotICAgIC8qIFNldCB1cCBwb2ludGVycyAqLwotICAgIHB4ICA9IHg7Ci0gICAgcHh3
ID0geHc7Ci0gICAgbGFnID0gUC0+bGFnUHJldjsKLSAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmMt
PnNDbW4ubmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgLyogVXBkYXRlIFZhcmlhYmxlcyB0aGF0
IGNoYW5nZSBwZXIgc3ViIGZyYW1lICovCi0gICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2Vz
LnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7Ci0gICAgICAgICAgICBsYWcgPSBwc0VuY0N0
cmwtPnBpdGNoTFsgayBdOwotICAgICAgICB9Ci0KLSAgICAgICAgLyogTm9pc2Ugc2hhcGUgcGFy
YW1ldGVycyAqLwotICAgICAgICBIYXJtU2hhcGVHYWluID0gcHNFbmNDdHJsLT5IYXJtU2hhcGVH
YWluWyBrIF0gKiAoIDEuMGYgLSBwc0VuY0N0cmwtPkhhcm1Cb29zdFsgayBdICk7Ci0gICAgICAg
IEhhcm1TaGFwZUZJUlsgMCBdID0gMC4yNWYgICAgICAgICAgICAgICAqIEhhcm1TaGFwZUdhaW47
Ci0gICAgICAgIEhhcm1TaGFwZUZJUlsgMSBdID0gMzI3NjcuMGYgLyA2NTUzNi4wZiAqIEhhcm1T
aGFwZUdhaW47Ci0gICAgICAgIEhhcm1TaGFwZUZJUlsgMiBdID0gMC4yNWYgICAgICAgICAgICAg
ICAqIEhhcm1TaGFwZUdhaW47Ci0gICAgICAgIFRpbHQgICAgICA9ICBwc0VuY0N0cmwtPlRpbHRb
IGsgXTsKLSAgICAgICAgTEZfTUFfc2hwID0gIHBzRW5jQ3RybC0+TEZfTUFfc2hwWyBrIF07Ci0g
ICAgICAgIExGX0FSX3NocCA9ICBwc0VuY0N0cmwtPkxGX0FSX3NocFsgayBdOwotICAgICAgICBB
UjFfc2hwICAgPSAmcHNFbmNDdHJsLT5BUjFbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07Ci0K
LSAgICAgICAgLyogU2hvcnQgdGVybSBGSVIgZmlsdGVyaW5nICovCi0gICAgICAgIHNpbGtfd2Fy
cGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRkxQKCBQLT5zQVJfc2hwLCBzdF9yZXMsIEFSMV9zaHAs
IHB4LAotICAgICAgICAgICAgKHNpbGtfZmxvYXQpcHNFbmMtPnNDbW4ud2FycGluZ19RMTYgLyA2
NTUzNi4wZiwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBD
T3JkZXIgKTsKLQotICAgICAgICAvKiBSZWR1Y2UgKG1haW5seSkgbG93IGZyZXF1ZW5jaWVzIGR1
cmluZyBoYXJtb25pYyBlbXBoYXNpcyAqLwotICAgICAgICBCWyAwIF0gPSAgcHNFbmNDdHJsLT5H
YWluc1ByZVsgayBdOwotICAgICAgICBCWyAxIF0gPSAtcHNFbmNDdHJsLT5HYWluc1ByZVsgayBd
ICoKLSAgICAgICAgICAgICggcHNFbmNDdHJsLT5IYXJtQm9vc3RbIGsgXSAqIEhhcm1TaGFwZUdh
aW4gKyBJTlBVVF9USUxUICsgcHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eSAqIEhJR0hfUkFURV9J
TlBVVF9USUxUICk7Ci0gICAgICAgIHB4d1sgMCBdID0gQlsgMCBdICogc3RfcmVzWyAwIF0gKyBC
WyAxIF0gKiBQLT5zSGFybUhQOwotICAgICAgICBmb3IoIGogPSAxOyBqIDwgcHNFbmMtPnNDbW4u
c3ViZnJfbGVuZ3RoOyBqKysgKSB7Ci0gICAgICAgICAgICBweHdbIGogXSA9IEJbIDAgXSAqIHN0
X3Jlc1sgaiBdICsgQlsgMSBdICogc3RfcmVzWyBqIC0gMSBdOwotICAgICAgICB9Ci0gICAgICAg
IFAtPnNIYXJtSFAgPSBzdF9yZXNbIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCAtIDEgXTsKLQot
ICAgICAgICBzaWxrX3ByZWZpbHRfRkxQKCBQLCBweHcsIHB4dywgSGFybVNoYXBlRklSLCBUaWx0
LCBMRl9NQV9zaHAsIExGX0FSX3NocCwgbGFnLCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGggKTsK
LQotICAgICAgICBweCAgKz0gcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoOwotICAgICAgICBweHcg
Kz0gcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoOwotICAgIH0KLSAgICBQLT5sYWdQcmV2ID0gcHNF
bmNDdHJsLT5waXRjaExbIHBzRW5jLT5zQ21uLm5iX3N1YmZyIC0gMSBdOwotfQotCi0vKgotKiBQ
cmVmaWx0ZXIgZm9yIGZpbmRpbmcgUXVhbnRpemVyIGlucHV0IHNpZ25hbAotKi8KLXN0YXRpYyBP
UFVTX0lOTElORSB2b2lkIHNpbGtfcHJlZmlsdF9GTFAoCi0gICAgc2lsa19wcmVmaWx0ZXJfc3Rh
dGVfRkxQICAgICpQLCAgICAgICAgICAgICAgICAgLyogSS9PIHN0YXRlICovCi0gICAgc2lsa19m
bG9hdCAgICAgICAgICAgICAgICAgIHN0X3Jlc1tdLCAgICAgICAgICAgLyogSSAqLwotICAgIHNp
bGtfZmxvYXQgICAgICAgICAgICAgICAgICB4d1tdLCAgICAgICAgICAgICAgIC8qIE8gKi8KLSAg
ICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgKkhhcm1TaGFwZUZJUiwgICAgICAvKiBJICov
Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIFRpbHQsICAgICAgICAgICAgICAgLyog
SSAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBMRl9NQV9zaHAsICAgICAgICAg
IC8qIEkgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgTEZfQVJfc2hwLCAgICAg
ICAgICAvKiBJICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxhZywgICAgICAg
ICAgICAgICAgLyogSSAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsZW5ndGgg
ICAgICAgICAgICAgIC8qIEkgKi8KLSkKLXsKLSAgICBvcHVzX2ludCAgIGk7Ci0gICAgb3B1c19p
bnQgICBpZHgsIExUUF9zaHBfYnVmX2lkeDsKLSAgICBzaWxrX2Zsb2F0IG5fVGlsdCwgbl9MRiwg
bl9MVFA7Ci0gICAgc2lsa19mbG9hdCBzTEZfQVJfc2hwLCBzTEZfTUFfc2hwOwotICAgIHNpbGtf
ZmxvYXQgKkxUUF9zaHBfYnVmOwotCi0gICAgLyogVG8gc3BlZWQgdXAgdXNlIHRlbXAgdmFyaWFi
bGVzIGluc3RlYWQgb2YgdXNpbmcgdGhlIHN0cnVjdCAqLwotICAgIExUUF9zaHBfYnVmICAgICA9
IFAtPnNMVFBfc2hwOwotICAgIExUUF9zaHBfYnVmX2lkeCA9IFAtPnNMVFBfc2hwX2J1Zl9pZHg7
Ci0gICAgc0xGX0FSX3NocCAgICAgID0gUC0+c0xGX0FSX3NocDsKLSAgICBzTEZfTUFfc2hwICAg
ICAgPSBQLT5zTEZfTUFfc2hwOwotCi0gICAgZm9yKCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrICkg
ewotICAgICAgICBpZiggbGFnID4gMCApIHsKLSAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBIQVJN
X1NIQVBFX0ZJUl9UQVBTID09IDMgKTsKLSAgICAgICAgICAgIGlkeCA9IGxhZyArIExUUF9zaHBf
YnVmX2lkeDsKLSAgICAgICAgICAgIG5fTFRQICA9IExUUF9zaHBfYnVmWyAoIGlkeCAtIEhBUk1f
U0hBUEVfRklSX1RBUFMgLyAyIC0gMSkgJiBMVFBfTUFTSyBdICogSGFybVNoYXBlRklSWyAwIF07
Ci0gICAgICAgICAgICBuX0xUUCArPSBMVFBfc2hwX2J1ZlsgKCBpZHggLSBIQVJNX1NIQVBFX0ZJ
Ul9UQVBTIC8gMiAgICApICYgTFRQX01BU0sgXSAqIEhhcm1TaGFwZUZJUlsgMSBdOwotICAgICAg
ICAgICAgbl9MVFAgKz0gTFRQX3NocF9idWZbICggaWR4IC0gSEFSTV9TSEFQRV9GSVJfVEFQUyAv
IDIgKyAxKSAmIExUUF9NQVNLIF0gKiBIYXJtU2hhcGVGSVJbIDIgXTsKLSAgICAgICAgfSBlbHNl
IHsKLSAgICAgICAgICAgIG5fTFRQID0gMDsKLSAgICAgICAgfQotCi0gICAgICAgIG5fVGlsdCA9
IHNMRl9BUl9zaHAgKiBUaWx0OwotICAgICAgICBuX0xGICAgPSBzTEZfQVJfc2hwICogTEZfQVJf
c2hwICsgc0xGX01BX3NocCAqIExGX01BX3NocDsKLQotICAgICAgICBzTEZfQVJfc2hwID0gc3Rf
cmVzWyBpIF0gLSBuX1RpbHQ7Ci0gICAgICAgIHNMRl9NQV9zaHAgPSBzTEZfQVJfc2hwIC0gbl9M
RjsKLQotICAgICAgICBMVFBfc2hwX2J1Zl9pZHggPSAoIExUUF9zaHBfYnVmX2lkeCAtIDEgKSAm
IExUUF9NQVNLOwotICAgICAgICBMVFBfc2hwX2J1ZlsgTFRQX3NocF9idWZfaWR4IF0gPSBzTEZf
TUFfc2hwOwotCi0gICAgICAgIHh3WyBpIF0gPSBzTEZfTUFfc2hwIC0gbl9MVFA7Ci0gICAgfQot
ICAgIC8qIENvcHkgdGVtcCB2YXJpYWJsZSBiYWNrIHRvIHN0YXRlICovCi0gICAgUC0+c0xGX0FS
X3NocCAgICAgICA9IHNMRl9BUl9zaHA7Ci0gICAgUC0+c0xGX01BX3NocCAgICAgICA9IHNMRl9N
QV9zaHA7Ci0gICAgUC0+c0xUUF9zaHBfYnVmX2lkeCA9IExUUF9zaHBfYnVmX2lkeDsKLX0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9mbG9hdC9zY2h1cl9GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9zY2h1cl9GTFAuYwpp
bmRleCBlZTQzNmY4MzUxYzhhZGYxZWUzNmZhNTA1MjYxMmNjZjQ2MmE1NWFlLi5jMWUwYmJiNTQx
MWM5OTU5Y2EzZjdmNmMyOTU3NzEzNjE3MDQ4MWRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvc2No
dXJfRkxQLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3NjaHVyX0ZMUC5jCkBAIC0zOCwyMiArMzgsMjMgQEAg
c2lsa19mbG9hdCBzaWxrX3NjaHVyX0ZMUCggICAgICAgICAgICAgICAgICAvKiBPICAgIHJldHVy
bnMgcmVzaWR1YWwgZW5lcmd5CiApCiB7CiAgICAgb3B1c19pbnQgICBrLCBuOwotICAgIHNpbGtf
ZmxvYXQgQ1sgU0lMS19NQVhfT1JERVJfTFBDICsgMSBdWyAyIF07Ci0gICAgc2lsa19mbG9hdCBD
dG1wMSwgQ3RtcDIsIHJjX3RtcDsKKyAgICBkb3VibGUgQ1sgU0lMS19NQVhfT1JERVJfTFBDICsg
MSBdWyAyIF07CisgICAgZG91YmxlIEN0bXAxLCBDdG1wMiwgcmNfdG1wOwogCi0gICAgc2lsa19h
c3NlcnQoIG9yZGVyPT02fHxvcmRlcj09OHx8b3JkZXI9PTEwfHxvcmRlcj09MTJ8fG9yZGVyPT0x
NHx8b3JkZXI9PTE2ICk7CisgICAgc2lsa19hc3NlcnQoIG9yZGVyID49IDAgJiYgb3JkZXIgPD0g
U0lMS19NQVhfT1JERVJfTFBDICk7CiAKICAgICAvKiBDb3B5IGNvcnJlbGF0aW9ucyAqLwotICAg
IGZvciggayA9IDA7IGsgPCBvcmRlcisxOyBrKysgKSB7CisgICAgayA9IDA7CisgICAgZG8gewog
ICAgICAgICBDWyBrIF1bIDAgXSA9IENbIGsgXVsgMSBdID0gYXV0b19jb3JyWyBrIF07Ci0gICAg
fQorICAgIH0gd2hpbGUoICsrayA8PSBvcmRlciApOwogCiAgICAgZm9yKCBrID0gMDsgayA8IG9y
ZGVyOyBrKysgKSB7CiAgICAgICAgIC8qIEdldCByZWZsZWN0aW9uIGNvZWZmaWNpZW50ICovCiAg
ICAgICAgIHJjX3RtcCA9IC1DWyBrICsgMSBdWyAwIF0gLyBzaWxrX21heF9mbG9hdCggQ1sgMCBd
WyAxIF0sIDFlLTlmICk7CiAKICAgICAgICAgLyogU2F2ZSB0aGUgb3V0cHV0ICovCi0gICAgICAg
IHJlZmxfY29lZlsgayBdID0gcmNfdG1wOworICAgICAgICByZWZsX2NvZWZbIGsgXSA9IChzaWxr
X2Zsb2F0KXJjX3RtcDsKIAogICAgICAgICAvKiBVcGRhdGUgY29ycmVsYXRpb25zICovCiAgICAg
ICAgIGZvciggbiA9IDA7IG4gPCBvcmRlciAtIGs7IG4rKyApIHsKQEAgLTY1LDYgKzY2LDUgQEAg
c2lsa19mbG9hdCBzaWxrX3NjaHVyX0ZMUCggICAgICAgICAgICAgICAgICAvKiBPICAgIHJldHVy
bnMgcmVzaWR1YWwgZW5lcmd5CiAgICAgfQogCiAgICAgLyogUmV0dXJuIHJlc2lkdWFsIGVuZXJn
eSAqLwotICAgIHJldHVybiBDWyAwIF1bIDEgXTsKKyAgICByZXR1cm4gKHNpbGtfZmxvYXQpQ1sg
MCBdWyAxIF07CiB9Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9zb2x2ZV9MU19GTFAuYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9mbG9hdC9zb2x2ZV9MU19GTFAuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggN2M5
MGQ2NjVhMGYwZDE4YjU3M2I2MzJhOTMyODU2MDUxMWJmMmE4MS4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvc29sdmVfTFNfRkxQLmMKKysr
IC9kZXYvbnVsbApAQCAtMSwyMDcgKzAsMCBAQAotLyoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi1Db3B5cmlnaHQg
KGMpIDIwMDYtMjAxMSwgU2t5cGUgTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLVJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi1hcmUgbWV0OgotLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCi10aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotLSBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQotZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLS0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2Np
ZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKLW5hbWVzIG9mIHNwZWNpZmljIGNvbnRy
aWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCi1wcm9kdWN0cyBkZXJp
dmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KLXBl
cm1pc3Npb24uCi1USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKLUFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLUlNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFCi1BUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKLUxJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLUNPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi1TVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKLUlOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi1DT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUKLVBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0KLSNp
ZmRlZiBIQVZFX0NPTkZJR19ICi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jZW5kaWYKLQotI2luY2x1
ZGUgIm1haW5fRkxQLmgiCi0jaW5jbHVkZSAidHVuaW5nX3BhcmFtZXRlcnMuaCIKLQotLyoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioKLSAqIExETCBGYWN0b3Jpc2F0aW9uLiBGaW5kcyB0aGUgdXBwZXIgdHJpYW5ndWxh
ciBtYXRyaXggTCBhbmQgdGhlIGRpYWdvbmFsCi0gKiBNYXRyaXggRCAob25seSB0aGUgZGlhZ29u
YWwgZWxlbWVudHMgcmV0dXJuZWQgaW4gYSB2ZWN0b3Ipc3VjaCB0aGF0Ci0gKiB0aGUgc3ltbWV0
cmljIG1hdHJpYyBBIGlzIGdpdmVuIGJ5IEEgPSBMKkQqTCcuCi0gKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLXN0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTERMX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAg
ICAgICpBLCAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTeW1ldHJpYyBTcXVhcmUgTWF0cml4
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAg
ICBNLCAgICAgICAgICAvKiBJICAgIFNpemUgb2YgTWF0cml4ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAg
KkwsICAgICAgICAgLyogSS9PICBQb2ludGVyIHRvIFNxdWFyZSBVcHBlciB0cmlhbmd1bGFyIE1h
dHJpeCAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICpE
aW52ICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byB2ZWN0b3IgaG9sZGluZyB0aGUgaW52ZXJzZSBk
aWFnb25hbCBlbGVtZW50cyBvZiBEICAgICovCi0pOwotCi0vKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICogRnVu
Y3Rpb24gdG8gc29sdmUgbGluZWFyIGVxdWF0aW9uIEF4ID0gYiwgd2hlbiBBIGlzIGEgTXhNIGxv
d2VyCi0gKiB0cmlhbmd1bGFyIG1hdHJpeCwgd2l0aCBvbmVzIG9uIHRoZSBkaWFnb25hbC4KLSAq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqLwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19Tb2x2ZVdpdGhMb3dl
clRyaWFuZ3VsYXJXZGlhZ09uZXNfRkxQKAotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKkwsICAg
ICAgICAgLyogSSAgICBQb2ludGVyIHRvIExvd2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgIE0sICAgICAg
ICAgIC8qIEkgICAgRGltIG9mIE1hdHJpeCBlcXVhdGlvbiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAqYiwgICAgICAg
ICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgKnggICAgICAgICAg
LyogTyAgICB4IFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSk7Ci0KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gKiBGdW5jdGlvbiB0byBz
b2x2ZSBsaW5lYXIgZXF1YXRpb24gKEFeVCl4ID0gYiwgd2hlbiBBIGlzIGEgTXhNIGxvd2VyCi0g
KiB0cmlhbmd1bGFyLCB3aXRoIG9uZXMgb24gdGhlIGRpYWdvbmFsLiAoaWUgdGhlbiBBXlQgaXMg
dXBwZXIgdHJpYW5ndWxhcikKLSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotc3RhdGljIE9QVVNfSU5MSU5FIHZv
aWQgc2lsa19Tb2x2ZVdpdGhVcHBlclRyaWFuZ3VsYXJGcm9tTG93ZXJXZGlhZ09uZXNfRkxQKAot
ICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKkwsICAgICAgICAgLyogSSAgICBQb2ludGVyIHRvIExv
d2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBvcHVzX2ludCAgICAgICAgICAgIE0sICAgICAgICAgIC8qIEkgICAgRGltIG9mIE1hdHJpeCBl
cXVhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAg
Y29uc3Qgc2lsa19mbG9hdCAgICAqYiwgICAgICAgICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNp
bGtfZmxvYXQgICAgICAgICAgKnggICAgICAgICAgLyogTyAgICB4IFZlY3RvciAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSk7Ci0KLS8q
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqCi0gKiBGdW5jdGlvbiB0byBzb2x2ZSBsaW5lYXIgZXF1YXRpb24gQXggPSBi
LCB3aGVuIEEgaXMgYSBNeE0KLSAqIHN5bW1ldHJpYyBzcXVhcmUgbWF0cml4IC0gdXNpbmcgTERM
IGZhY3RvcmlzYXRpb24KLSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotdm9pZCBzaWxrX3NvbHZlX0xETF9GTFAo
Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICAqQSwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIFN5bW1ldHJpYyBzcXVhcmUgbWF0cml4LCBvdXQ6IHJl
Zy4gICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIE0sICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU2l6ZSBvZiBtYXRyaXggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAg
ICAgICAgICAgKmIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQb2lu
dGVyIHRvIGIgdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9h
dCAgICAgICAgICAgICAgICAgICAgICAqeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBPICAgIFBvaW50ZXIgdG8geCBzb2x1dGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgKi8K
LSkKLXsKLSAgICBvcHVzX2ludCAgIGk7Ci0gICAgc2lsa19mbG9hdCBMWyAgICBNQVhfTUFUUklY
X1NJWkUgXVsgTUFYX01BVFJJWF9TSVpFIF07Ci0gICAgc2lsa19mbG9hdCBUWyAgICBNQVhfTUFU
UklYX1NJWkUgXTsKLSAgICBzaWxrX2Zsb2F0IERpbnZbIE1BWF9NQVRSSVhfU0laRSBdOyAvKiBp
bnZlcnNlIGRpYWdvbmFsIGVsZW1lbnRzIG9mIEQqLwotCi0gICAgc2lsa19hc3NlcnQoIE0gPD0g
TUFYX01BVFJJWF9TSVpFICk7Ci0KLSAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqCi0gICAgRmFjdG9yaXplIEEgYnkgTERMIHN1Y2ggdGhhdCBB
ID0gTCpEKihMXlQpLAotICAgIHdoZXJlIEwgaXMgbG93ZXIgdHJpYW5ndWxhciB3aXRoIG9uZXMg
b24gZGlhZ29uYWwKLSAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqLwotICAgIHNpbGtfTERMX0ZMUCggQSwgTSwgJkxbIDAgXVsgMCBdLCBEaW52
ICk7Ci0KLSAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKgotICAgICogc3Vic3RpdHV0ZSBEKihMXlQpID0gVC4gaWU6Ci0gICAgTCpEKihMXlQp
KnggPSBiID0+IEwqVCA9IGIgPD0+IFQgPSBpbnYoTCkqYgotICAgICoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICBzaWxrX1NvbHZlV2l0
aExvd2VyVHJpYW5ndWxhcldkaWFnT25lc19GTFAoICZMWyAwIF1bIDAgXSwgTSwgYiwgVCApOwot
Ci0gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioKLSAgICBEKihMXlQpKnggPSBUIDw9PiAoTF5UKSp4ID0gaW52KEQpKlQsIGJlY2F1c2UgRCBp
cwotICAgIGRpYWdvbmFsIGp1c3QgbXVsdGlwbHkgd2l0aCAxL2RfaQotICAgICoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgZm9yKCBpID0g
MDsgaSA8IE07IGkrKyApIHsKLSAgICAgICAgVFsgaSBdID0gVFsgaSBdICogRGludlsgaSBdOwot
ICAgIH0KLSAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKgotICAgIHggPSBpbnYoTCcpICogaW52KEQpICogVAotICAgICoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgIHNpbGtfU29sdmVX
aXRoVXBwZXJUcmlhbmd1bGFyRnJvbUxvd2VyV2RpYWdPbmVzX0ZMUCggJkxbIDAgXVsgMCBdLCBN
LCBULCB4ICk7Ci19Ci0KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfU29sdmVXaXRoVXBw
ZXJUcmlhbmd1bGFyRnJvbUxvd2VyV2RpYWdPbmVzX0ZMUCgKLSAgICBjb25zdCBzaWxrX2Zsb2F0
ICAgICpMLCAgICAgICAgIC8qIEkgICAgUG9pbnRlciB0byBMb3dlciBUcmlhbmd1bGFyIE1hdHJp
eCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAg
ICBNLCAgICAgICAgICAvKiBJICAgIERpbSBvZiBNYXRyaXggZXF1YXRpb24gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAg
KmIsICAgICAgICAgLyogSSAgICBiIFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICp4
ICAgICAgICAgIC8qIE8gICAgeCBWZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICBpLCBqOwot
ICAgIHNpbGtfZmxvYXQgdGVtcDsKLSAgICBjb25zdCBzaWxrX2Zsb2F0ICpwdHIxOwotCi0gICAg
Zm9yKCBpID0gTSAtIDE7IGkgPj0gMDsgaS0tICkgewotICAgICAgICBwdHIxID0gIG1hdHJpeF9h
ZHIoIEwsIDAsIGksIE0gKTsKLSAgICAgICAgdGVtcCA9IDA7Ci0gICAgICAgIGZvciggaiA9IE0g
LSAxOyBqID4gaSA7IGotLSApIHsKLSAgICAgICAgICAgIHRlbXAgKz0gcHRyMVsgaiAqIE0gXSAq
IHhbIGogXTsKLSAgICAgICAgfQotICAgICAgICB0ZW1wID0gYlsgaSBdIC0gdGVtcDsKLSAgICAg
ICAgeFsgaSBdID0gdGVtcDsKLSAgICB9Ci19Ci0KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNp
bGtfU29sdmVXaXRoTG93ZXJUcmlhbmd1bGFyV2RpYWdPbmVzX0ZMUCgKLSAgICBjb25zdCBzaWxr
X2Zsb2F0ICAgICpMLCAgICAgICAgIC8qIEkgICAgUG9pbnRlciB0byBMb3dlciBUcmlhbmd1bGFy
IE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAg
ICAgICAgICBNLCAgICAgICAgICAvKiBJICAgIERpbSBvZiBNYXRyaXggZXF1YXRpb24gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxv
YXQgICAgKmIsICAgICAgICAgLyogSSAgICBiIFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAg
ICAgICp4ICAgICAgICAgIC8qIE8gICAgeCBWZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICBp
LCBqOwotICAgIHNpbGtfZmxvYXQgdGVtcDsKLSAgICBjb25zdCBzaWxrX2Zsb2F0ICpwdHIxOwot
Ci0gICAgZm9yKCBpID0gMDsgaSA8IE07IGkrKyApIHsKLSAgICAgICAgcHRyMSA9ICBtYXRyaXhf
YWRyKCBMLCBpLCAwLCBNICk7Ci0gICAgICAgIHRlbXAgPSAwOwotICAgICAgICBmb3IoIGogPSAw
OyBqIDwgaTsgaisrICkgewotICAgICAgICAgICAgdGVtcCArPSBwdHIxWyBqIF0gKiB4WyBqIF07
Ci0gICAgICAgIH0KLSAgICAgICAgdGVtcCA9IGJbIGkgXSAtIHRlbXA7Ci0gICAgICAgIHhbIGkg
XSA9IHRlbXA7Ci0gICAgfQotfQotCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xETF9G
TFAoCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAqQSwgICAgICAgICAvKiBJL08gIFBvaW50ZXIg
dG8gU3ltZXRyaWMgU3F1YXJlIE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIG9wdXNfaW50ICAgICAgICAgICAgTSwgICAgICAgICAgLyogSSAgICBTaXplIG9mIE1h
dHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
LSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICpMLCAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBT
cXVhcmUgVXBwZXIgdHJpYW5ndWxhciBNYXRyaXggICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgc2lsa19mbG9hdCAgICAgICAgICAqRGludiAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gdmVj
dG9yIGhvbGRpbmcgdGhlIGludmVyc2UgZGlhZ29uYWwgZWxlbWVudHMgb2YgRCAgICAqLwotKQot
ewotICAgIG9wdXNfaW50IGksIGosIGssIGxvb3BfY291bnQsIGVyciA9IDE7Ci0gICAgc2lsa19m
bG9hdCAqcHRyMSwgKnB0cjI7Ci0gICAgZG91YmxlIHRlbXAsIGRpYWdfbWluX3ZhbHVlOwotICAg
IHNpbGtfZmxvYXQgdlsgTUFYX01BVFJJWF9TSVpFIF0sIERbIE1BWF9NQVRSSVhfU0laRSBdOyAv
KiB0ZW1wIGFycmF5cyovCi0KLSAgICBzaWxrX2Fzc2VydCggTSA8PSBNQVhfTUFUUklYX1NJWkUg
KTsKLQotICAgIGRpYWdfbWluX3ZhbHVlID0gRklORF9MVFBfQ09ORF9GQUMgKiAwLjVmICogKCBB
WyAwIF0gKyBBWyBNICogTSAtIDEgXSApOwotICAgIGZvciggbG9vcF9jb3VudCA9IDA7IGxvb3Bf
Y291bnQgPCBNICYmIGVyciA9PSAxOyBsb29wX2NvdW50KysgKSB7Ci0gICAgICAgIGVyciA9IDA7
Ci0gICAgICAgIGZvciggaiA9IDA7IGogPCBNOyBqKysgKSB7Ci0gICAgICAgICAgICBwdHIxID0g
bWF0cml4X2FkciggTCwgaiwgMCwgTSApOwotICAgICAgICAgICAgdGVtcCA9IG1hdHJpeF9wdHIo
IEEsIGosIGosIE0gKTsgLyogZWxlbWVudCBpbiByb3cgaiBjb2x1bW4gaiovCi0gICAgICAgICAg
ICBmb3IoIGkgPSAwOyBpIDwgajsgaSsrICkgewotICAgICAgICAgICAgICAgIHZbIGkgXSA9IHB0
cjFbIGkgXSAqIERbIGkgXTsKLSAgICAgICAgICAgICAgICB0ZW1wICAtPSBwdHIxWyBpIF0gKiB2
WyBpIF07Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiggdGVtcCA8IGRpYWdfbWluX3Zh
bHVlICkgewotICAgICAgICAgICAgICAgIC8qIEJhZGx5IGNvbmRpdGlvbmVkIG1hdHJpeDogYWRk
IHdoaXRlIG5vaXNlIGFuZCBydW4gYWdhaW4gKi8KLSAgICAgICAgICAgICAgICB0ZW1wID0gKCBs
b29wX2NvdW50ICsgMSApICogZGlhZ19taW5fdmFsdWUgLSB0ZW1wOwotICAgICAgICAgICAgICAg
IGZvciggaSA9IDA7IGkgPCBNOyBpKysgKSB7Ci0gICAgICAgICAgICAgICAgICAgIG1hdHJpeF9w
dHIoIEEsIGksIGksIE0gKSArPSAoIHNpbGtfZmxvYXQgKXRlbXA7Ci0gICAgICAgICAgICAgICAg
fQotICAgICAgICAgICAgICAgIGVyciA9IDE7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgICAgICBEWyBqIF0gICAgPSAoIHNpbGtfZmxvYXQgKXRlbXA7Ci0g
ICAgICAgICAgICBEaW52WyBqIF0gPSAoIHNpbGtfZmxvYXQgKSggMS4wZiAvIHRlbXAgKTsKLSAg
ICAgICAgICAgIG1hdHJpeF9wdHIoIEwsIGosIGosIE0gKSA9IDEuMGY7Ci0KLSAgICAgICAgICAg
IHB0cjEgPSBtYXRyaXhfYWRyKCBBLCBqLCAwLCBNICk7Ci0gICAgICAgICAgICBwdHIyID0gbWF0
cml4X2FkciggTCwgaiArIDEsIDAsIE0pOwotICAgICAgICAgICAgZm9yKCBpID0gaiArIDE7IGkg
PCBNOyBpKysgKSB7Ci0gICAgICAgICAgICAgICAgdGVtcCA9IDAuMDsKLSAgICAgICAgICAgICAg
ICBmb3IoIGsgPSAwOyBrIDwgajsgaysrICkgewotICAgICAgICAgICAgICAgICAgICB0ZW1wICs9
IHB0cjJbIGsgXSAqIHZbIGsgXTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAg
bWF0cml4X3B0ciggTCwgaSwgaiwgTSApID0gKCBzaWxrX2Zsb2F0ICkoICggcHRyMVsgaSBdIC0g
dGVtcCApICogRGludlsgaiBdICk7Ci0gICAgICAgICAgICAgICAgcHRyMiArPSBNOyAvKiBnbyB0
byBuZXh0IGNvbHVtbiovCi0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgc2ls
a19hc3NlcnQoIGVyciA9PSAwICk7Ci19Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9zdHJ1Y3Rz
X0ZMUC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2Zsb2F0L3N0cnVjdHNfRkxQLmgKaW5kZXggMTRkNjQ3Y2VkMjdlNmI2YTZk
ZTU2N2ZhZDM5ODIyZDY3YTNjZDRjOC4uMzE1MGIzODZlNDc4NTA2ZGM4ODg0YWU2OTE5NzEyOWVm
MWM0MTYzMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3N0cnVjdHNfRkxQLmgKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zs
b2F0L3N0cnVjdHNfRkxQLmgKQEAgLTQyLDMyICs0MiwxNiBAQCBleHRlcm4gIkMiCiAvKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1c19p
bnQ4ICAgICAgICAgICAgICAgICAgIExhc3RHYWluSW5kZXg7Ci0gICAgc2lsa19mbG9hdCAgICAg
ICAgICAgICAgICAgIEhhcm1Cb29zdF9zbXRoOwogICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAg
ICAgICBIYXJtU2hhcGVHYWluX3NtdGg7CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAg
IFRpbHRfc210aDsKIH0gc2lsa19zaGFwZV9zdGF0ZV9GTFA7CiAKLS8qKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKi8KLS8qIFByZWZpbHRlciBzdGF0ZSAgICAgICAgICAgICAgKi8KLS8q
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLXR5cGVkZWYgc3RydWN0IHsKLSAgICBz
aWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgc0xUUF9zaHBbIExUUF9CVUZfTEVOR1RIIF07Ci0g
ICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIHNBUl9zaHBbIE1BWF9TSEFQRV9MUENfT1JE
RVIgKyAxIF07Ci0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIHNMVFBfc2hwX2J1Zl9p
ZHg7Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIHNMRl9BUl9zaHA7Ci0gICAgc2ls
a19mbG9hdCAgICAgICAgICAgICAgICAgIHNMRl9NQV9zaHA7Ci0gICAgc2lsa19mbG9hdCAgICAg
ICAgICAgICAgICAgIHNIYXJtSFA7Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHJh
bmRfc2VlZDsKLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbGFnUHJldjsKLX0gc2ls
a19wcmVmaWx0ZXJfc3RhdGVfRkxQOwotCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KiovCiAvKiBFbmNvZGVyIHN0YXRlIEZMUCAgICAgICAgICAgICovCiAvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgc2lsa19lbmNvZGVyX3N0
YXRlICAgICAgICAgIHNDbW47ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIENvbW1v
biBzdHJ1Y3QsIHNoYXJlZCB3aXRoIGZpeGVkLXBvaW50IGNvZGUgKi8KICAgICBzaWxrX3NoYXBl
X3N0YXRlX0ZMUCAgICAgICAgc1NoYXBlOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
Tm9pc2Ugc2hhcGluZyBzdGF0ZSAqLwotICAgIHNpbGtfcHJlZmlsdGVyX3N0YXRlX0ZMUCAgICBz
UHJlZmlsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBQcmVmaWx0ZXIgU3RhdGUgKi8K
IAogICAgIC8qIEJ1ZmZlciBmb3IgZmluZCBwaXRjaCBhbmQgbm9pc2Ugc2hhcGUgYW5hbHlzaXMg
Ki8KICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgeF9idWZbIDIgKiBNQVhfRlJBTUVf
TEVOR1RIICsgTEFfU0hBUEVfTUFYIF07LyogQnVmZmVyIGZvciBmaW5kIHBpdGNoIGFuZCBub2lz
ZSBzaGFwZSBhbmFseXNpcyAqLwpAQCAtODYsMTIgKzcwLDkgQEAgdHlwZWRlZiBzdHJ1Y3Qgewog
ICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBwaXRjaExbIE1BWF9OQl9TVUJGUiBdOwog
CiAgICAgLyogTm9pc2Ugc2hhcGluZyBwYXJhbWV0ZXJzICovCi0gICAgc2lsa19mbG9hdCAgICAg
ICAgICAgICAgICAgIEFSMVsgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwot
ICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBBUjJbIE1BWF9OQl9TVUJGUiAqIE1BWF9T
SEFQRV9MUENfT1JERVIgXTsKKyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgQVJbIE1B
WF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKICAgICBzaWxrX2Zsb2F0ICAgICAg
ICAgICAgICAgICAgTEZfTUFfc2hwWyAgICAgTUFYX05CX1NVQkZSIF07CiAgICAgc2lsa19mbG9h
dCAgICAgICAgICAgICAgICAgIExGX0FSX3NocFsgICAgIE1BWF9OQl9TVUJGUiBdOwotICAgIHNp
bGtfZmxvYXQgICAgICAgICAgICAgICAgICBHYWluc1ByZVsgICAgICBNQVhfTkJfU1VCRlIgXTsK
LSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgSGFybUJvb3N0WyAgICAgTUFYX05CX1NV
QkZSIF07CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIFRpbHRbICAgICAgICAgIE1B
WF9OQl9TVUJGUiBdOwogICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVH
YWluWyBNQVhfTkJfU1VCRlIgXTsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgTGFt
YmRhOwpAQCAtOTksNyArODAsNiBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICAgc2lsa19mbG9hdCAg
ICAgICAgICAgICAgICAgIGNvZGluZ19xdWFsaXR5OwogCiAgICAgLyogTWVhc3VyZXMgKi8KLSAg
ICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgc3BhcnNlbmVzczsKICAgICBzaWxrX2Zsb2F0
ICAgICAgICAgICAgICAgICAgcHJlZEdhaW47CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAg
ICAgIExUUHJlZENvZEdhaW47CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIFJlc05y
Z1sgTUFYX05CX1NVQkZSIF07ICAgICAgICAgICAgIC8qIFJlc2lkdWFsIGVuZXJneSBwZXIgc3Vi
ZnJhbWUgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC93cmFwcGVyc19GTFAuYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9h
dC93cmFwcGVyc19GTFAuYwppbmRleCA2NjY2YjhlZmFhZGUyZjBjZTllZWYzNzE4MWMwNzY4M2Q1
NDMzZWMyLi5hZDkwYjg3NGE0ZDgxNGE2MTVjOTE0MTc0MjA1ZmRmYjEwZGYwOTc0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZmxvYXQvd3JhcHBlcnNfRkxQLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3dyYXBwZXJzX0ZM
UC5jCkBAIC01NCwxMyArNTQsMTQgQEAgdm9pZCBzaWxrX0EyTkxTRl9GTFAoCiB2b2lkIHNpbGtf
TkxTRjJBX0ZMUCgKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgICpwQVIsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgTFBDIGNvZWZmaWNpZW50cyBbIExQ
Q19vcmRlciBdICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAg
ICAgICAgKk5MU0ZfUTE1LCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOTFNGIHZl
Y3RvciAgICAgIFsgTFBDX29yZGVyIF0gICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19p
bnQgICAgICAgICAgICAgICAgICBMUENfb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIExQQyBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIExQQ19vcmRlciwgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgTFBDIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUg
ICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7CiAgICAgb3B1c19pbnQgICBpOwogICAgIG9w
dXNfaW50MTYgYV9maXhfUTEyWyBNQVhfTFBDX09SREVSIF07CiAKLSAgICBzaWxrX05MU0YyQSgg
YV9maXhfUTEyLCBOTFNGX1ExNSwgTFBDX29yZGVyICk7CisgICAgc2lsa19OTFNGMkEoIGFfZml4
X1ExMiwgTkxTRl9RMTUsIExQQ19vcmRlciwgYXJjaCApOwogCiAgICAgZm9yKCBpID0gMDsgaSA8
IExQQ19vcmRlcjsgaSsrICkgewogICAgICAgICBwQVJbIGkgXSA9ICggc2lsa19mbG9hdCApYV9m
aXhfUTEyWyBpIF0gKiAoIDEuMGYgLyA0MDk2LjBmICk7CkBAIC0xMDIsMTQgKzEwMywxNCBAQCB2
b2lkIHNpbGtfTlNRX3dyYXBwZXJfRkxQKAogKQogewogICAgIG9wdXNfaW50ICAgICBpLCBqOwot
ICAgIG9wdXNfaW50MzIgICB4X1EzWyBNQVhfRlJBTUVfTEVOR1RIIF07CisgICAgb3B1c19pbnQx
NiAgIHgxNlsgTUFYX0ZSQU1FX0xFTkdUSCBdOwogICAgIG9wdXNfaW50MzIgICBHYWluc19RMTZb
IE1BWF9OQl9TVUJGUiBdOwogICAgIHNpbGtfRFdPUkRfQUxJR04gb3B1c19pbnQxNiBQcmVkQ29l
Zl9RMTJbIDIgXVsgTUFYX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfaW50MTYgICBMVFBDb2VmX1Ex
NFsgTFRQX09SREVSICogTUFYX05CX1NVQkZSIF07CiAgICAgb3B1c19pbnQgICAgIExUUF9zY2Fs
ZV9RMTQ7CiAKICAgICAvKiBOb2lzZSBzaGFwaW5nIHBhcmFtZXRlcnMgKi8KLSAgICBvcHVzX2lu
dDE2ICAgQVIyX1ExM1sgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOworICAg
IG9wdXNfaW50MTYgICBBUl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIg
XTsKICAgICBvcHVzX2ludDMyICAgTEZfc2hwX1ExNFsgTUFYX05CX1NVQkZSIF07ICAgICAgICAg
LyogUGFja3MgdHdvIGludDE2IGNvZWZmaWNpZW50cyBwZXIgaW50MzIgdmFsdWUgICAgICAgICAg
ICAgKi8KICAgICBvcHVzX2ludCAgICAgTGFtYmRhX1ExMDsKICAgICBvcHVzX2ludCAgICAgVGls
dF9RMTRbIE1BWF9OQl9TVUJGUiBdOwpAQCAtMTE5LDcgKzEyMCw3IEBAIHZvaWQgc2lsa19OU1Ff
d3JhcHBlcl9GTFAoCiAgICAgLyogTm9pc2Ugc2hhcGUgcGFyYW1ldGVycyAqLwogICAgIGZvcigg
aSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaSsrICkgewogICAgICAgICBmb3IoIGog
PSAwOyBqIDwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyOyBqKysgKSB7Ci0gICAgICAgICAg
ICBBUjJfUTEzWyBpICogTUFYX1NIQVBFX0xQQ19PUkRFUiArIGogXSA9IHNpbGtfZmxvYXQyaW50
KCBwc0VuY0N0cmwtPkFSMlsgaSAqIE1BWF9TSEFQRV9MUENfT1JERVIgKyBqIF0gKiA4MTkyLjBm
ICk7CisgICAgICAgICAgICBBUl9RMTNbIGkgKiBNQVhfU0hBUEVfTFBDX09SREVSICsgaiBdID0g
c2lsa19mbG9hdDJpbnQoIHBzRW5jQ3RybC0+QVJbIGkgKiBNQVhfU0hBUEVfTFBDX09SREVSICsg
aiBdICogODE5Mi4wZiApOwogICAgICAgICB9CiAgICAgfQogCkBAIC0xNTUsMTYgKzE1NiwxNiBA
QCB2b2lkIHNpbGtfTlNRX3dyYXBwZXJfRkxQKAogCiAgICAgLyogQ29udmVydCBpbnB1dCB0byBm
aXggKi8KICAgICBmb3IoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoOyBpKysg
KSB7Ci0gICAgICAgIHhfUTNbIGkgXSA9IHNpbGtfZmxvYXQyaW50KCA4LjBmICogeFsgaSBdICk7
CisgICAgICAgIHgxNlsgaSBdID0gc2lsa19mbG9hdDJpbnQoIHhbIGkgXSApOwogICAgIH0KIAog
ICAgIC8qIENhbGwgTlNRICovCiAgICAgaWYoIHBzRW5jLT5zQ21uLm5TdGF0ZXNEZWxheWVkRGVj
aXNpb24gPiAxIHx8IHBzRW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKLSAgICAgICAgc2ls
a19OU1FfZGVsX2RlYyggJnBzRW5jLT5zQ21uLCBwc05TUSwgcHNJbmRpY2VzLCB4X1EzLCBwdWxz
ZXMsIFByZWRDb2VmX1ExMlsgMCBdLCBMVFBDb2VmX1ExNCwKLSAgICAgICAgICAgIEFSMl9RMTMs
IEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwc0Vu
Y0N0cmwtPnBpdGNoTCwgTGFtYmRhX1ExMCwgTFRQX3NjYWxlX1ExNCwgcHNFbmMtPnNDbW4uYXJj
aCApOworICAgICAgICBzaWxrX05TUV9kZWxfZGVjKCAmcHNFbmMtPnNDbW4sIHBzTlNRLCBwc0lu
ZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTJbIDAgXSwgTFRQQ29lZl9RMTQsCisgICAg
ICAgICAgICBBUl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwg
R2FpbnNfUTE2LCBwc0VuY0N0cmwtPnBpdGNoTCwgTGFtYmRhX1ExMCwgTFRQX3NjYWxlX1ExNCwg
cHNFbmMtPnNDbW4uYXJjaCApOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIHNpbGtfTlNRKCAmcHNF
bmMtPnNDbW4sIHBzTlNRLCBwc0luZGljZXMsIHhfUTMsIHB1bHNlcywgUHJlZENvZWZfUTEyWyAw
IF0sIExUUENvZWZfUTE0LAotICAgICAgICAgICAgQVIyX1ExMywgSGFybVNoYXBlR2Fpbl9RMTQs
IFRpbHRfUTE0LCBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBzRW5jQ3RybC0+cGl0Y2hMLCBMYW1i
ZGFfUTEwLCBMVFBfc2NhbGVfUTE0LCBwc0VuYy0+c0Ntbi5hcmNoICk7CisgICAgICAgIHNpbGtf
TlNRKCAmcHNFbmMtPnNDbW4sIHBzTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29l
Zl9RMTJbIDAgXSwgTFRQQ29lZl9RMTQsCisgICAgICAgICAgICBBUl9RMTMsIEhhcm1TaGFwZUdh
aW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwc0VuY0N0cmwtPnBpdGNo
TCwgTGFtYmRhX1ExMCwgTFRQX3NjYWxlX1ExNCwgcHNFbmMtPnNDbW4uYXJjaCApOwogICAgIH0K
IH0KIApAQCAtMTcyLDMxICsxNzMsMzUgQEAgdm9pZCBzaWxrX05TUV93cmFwcGVyX0ZMUCgKIC8q
IEZsb2F0aW5nLXBvaW50IFNpbGsgTFRQIHF1YW50aWF0aW9uIHdyYXBwZXIgKi8KIC8qKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIHZvaWQgc2lsa19xdWFu
dF9MVFBfZ2FpbnNfRkxQKAotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgQlsg
TUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgLyogSS9PICAoVW4tKXF1YW50aXplZCBM
VFAgZ2FpbnMgICAgICAgICAgICAgICAgICAgICovCisgICAgc2lsa19mbG9hdCAgICAgICAgICAg
ICAgICAgICAgICBCWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgICAvKiBPICAgIFF1
YW50aXplZCBMVFAgZ2FpbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVz
X2ludDggICAgICAgICAgICAgICAgICAgICAgIGNia19pbmRleFsgTUFYX05CX1NVQkZSIF0sICAg
ICAgICAgIC8qIE8gICAgQ29kZWJvb2sgaW5kZXggICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICAgICAgKnBlcmlvZGljaXR5X2lu
ZGV4LCAgICAgICAgICAgICAgICAgLyogTyAgICBQZXJpb2RpY2l0eSBpbmRleCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAq
c3VtX2xvZ19nYWluX1E3LCAgICAgICAgICAgICAgICAgICAvKiBJL08gIEN1bXVsYXRpdmUgbWF4
IHByZWRpY3Rpb24gZ2FpbiAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
IFdbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBJICAgIEVycm9y
IHdlaWdodHMgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgbXVfUTEwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBNdSB2YWx1ZSAoUi9EIHRyYWRlb2ZmKSAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBsb3dDb21wbGV4aXR5LCAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIEZsYWcgZm9yIGxvdyBjb21wbGV4aXR5ICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAg
KnByZWRfZ2Fpbl9kQiwgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIExUUCBwcmVkaWN0
aW9uIGdhaW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2Zs
b2F0ICAgICAgICAgICAgICAgIFhYWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JE
RVIgXSwgLyogSSAgICBDb3JyZWxhdGlvbiBtYXRyaXggICAgICAgICAgICAgICAgICAgICovCisg
ICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICB4WFsgTUFYX05CX1NVQkZSICogTFRQ
X09SREVSIF0sICAgICAgICAvKiBJICAgIENvcnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBz
dWJmcl9sZW4sICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNh
bXBsZXMgcGVyIHN1YmZyYW1lICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQg
ICAgICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgTnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAg
ICAgICAgICAgICovCiApCiB7Ci0gICAgb3B1c19pbnQgICBpOworICAgIG9wdXNfaW50ICAgaSwg
cHJlZF9nYWluX2RCX1E3OwogICAgIG9wdXNfaW50MTYgQl9RMTRbIE1BWF9OQl9TVUJGUiAqIExU
UF9PUkRFUiBdOwotICAgIG9wdXNfaW50MzIgV19RMThbIE1BWF9OQl9TVUJGUipMVFBfT1JERVIq
TFRQX09SREVSIF07CisgICAgb3B1c19pbnQzMiBYWF9RMTdbIE1BWF9OQl9TVUJGUiAqIExUUF9P
UkRFUiAqIExUUF9PUkRFUiBdOworICAgIG9wdXNfaW50MzIgeFhfUTE3WyBNQVhfTkJfU1VCRlIg
KiBMVFBfT1JERVIgXTsKIAotICAgIGZvciggaSA9IDA7IGkgPCBuYl9zdWJmciAqIExUUF9PUkRF
UjsgaSsrICkgewotICAgICAgICBCX1ExNFsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19mbG9hdDJp
bnQoIEJbIGkgXSAqIDE2Mzg0LjBmICk7Ci0gICAgfQogICAgIGZvciggaSA9IDA7IGkgPCBuYl9z
dWJmciAqIExUUF9PUkRFUiAqIExUUF9PUkRFUjsgaSsrICkgewotICAgICAgICBXX1ExOFsgaSBd
ID0gKG9wdXNfaW50MzIpc2lsa19mbG9hdDJpbnQoIFdbIGkgXSAqIDI2MjE0NC4wZiApOworICAg
ICAgICBYWF9RMTdbIGkgXSA9IChvcHVzX2ludDMyKXNpbGtfZmxvYXQyaW50KCBYWFsgaSBdICog
MTMxMDcyLjBmICk7CisgICAgfQorICAgIGZvciggaSA9IDA7IGkgPCBuYl9zdWJmciAqIExUUF9P
UkRFUjsgaSsrICkgeworICAgICAgICB4WF9RMTdbIGkgXSA9IChvcHVzX2ludDMyKXNpbGtfZmxv
YXQyaW50KCB4WFsgaSBdICogMTMxMDcyLjBmICk7CiAgICAgfQogCi0gICAgc2lsa19xdWFudF9M
VFBfZ2FpbnMoIEJfUTE0LCBjYmtfaW5kZXgsIHBlcmlvZGljaXR5X2luZGV4LCBzdW1fbG9nX2dh
aW5fUTcsIFdfUTE4LCBtdV9RMTAsIGxvd0NvbXBsZXhpdHksIG5iX3N1YmZyLCBhcmNoICk7Cisg
ICAgc2lsa19xdWFudF9MVFBfZ2FpbnMoIEJfUTE0LCBjYmtfaW5kZXgsIHBlcmlvZGljaXR5X2lu
ZGV4LCBzdW1fbG9nX2dhaW5fUTcsICZwcmVkX2dhaW5fZEJfUTcsIFhYX1ExNywgeFhfUTE3LCBz
dWJmcl9sZW4sIG5iX3N1YmZyLCBhcmNoICk7CiAKICAgICBmb3IoIGkgPSAwOyBpIDwgbmJfc3Vi
ZnIgKiBMVFBfT1JERVI7IGkrKyApIHsKICAgICAgICAgQlsgaSBdID0gKHNpbGtfZmxvYXQpQl9R
MTRbIGkgXSAqICggMS4wZiAvIDE2Mzg0LjBmICk7CiAgICAgfQorCisgICAgKnByZWRfZ2Fpbl9k
QiA9IChzaWxrX2Zsb2F0KXByZWRfZ2Fpbl9kQl9RNyAqICggMS4wZiAvIDEyOC4wZiApOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2dhaW5fcXVhbnQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9nYWluX3F1YW50LmMKaW5kZXggNjRj
Y2QwNjExYmZmMzY4Y2Y3OWY5NTBkZjVhMTY3YmFhOGQ0MTBiZC4uZWU2NTI0NWFhMzY3MTA1ZWUx
ZTBkZmE4YjVmMjYxOWQ4YzIyMzgyMCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2dhaW5fcXVhbnQuYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZ2Fpbl9xdWFudC5jCkBAIC03Niw2ICs3Niw3IEBAIHZvaWQgc2lsa19nYWluc19xdWFu
dCgKICAgICAgICAgICAgIC8qIEFjY3VtdWxhdGUgZGVsdGFzICovCiAgICAgICAgICAgICBpZigg
aW5kWyBrIF0gPiBkb3VibGVfc3RlcF9zaXplX3RocmVzaG9sZCApIHsKICAgICAgICAgICAgICAg
ICAqcHJldl9pbmQgKz0gc2lsa19MU0hJRlQoIGluZFsgayBdLCAxICkgLSBkb3VibGVfc3RlcF9z
aXplX3RocmVzaG9sZDsKKyAgICAgICAgICAgICAgICAqcHJldl9pbmQgPSBzaWxrX21pbl9pbnQo
ICpwcmV2X2luZCwgTl9MRVZFTFNfUUdBSU4gLSAxICk7CiAgICAgICAgICAgICB9IGVsc2Ugewog
ICAgICAgICAgICAgICAgICpwcmV2X2luZCArPSBpbmRbIGsgXTsKICAgICAgICAgICAgIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9pbml0X2RlY29kZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9pbml0X2RlY29kZXIuYwppbmRleCBm
ODg3YzY3ODg2ZmI1N2FjZDU0YjAzYTNkYzUyMTBjM2IwOWJiNGIyLi4xNmMwM2RjZDFjYTFiMzNi
NDg0MDk5OWQ4ZGI2YzdmNWIyYjE1ZWJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvaW5pdF9kZWNvZGVyLmMK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2luaXRfZGVjb2Rlci5jCkBAIC00NCw2ICs0NCw3IEBAIG9wdXNfaW50IHNpbGtf
aW5pdF9kZWNvZGVyKAogICAgIC8qIFVzZWQgdG8gZGVhY3RpdmF0ZSBMU0YgaW50ZXJwb2xhdGlv
biAqLwogICAgIHBzRGVjLT5maXJzdF9mcmFtZV9hZnRlcl9yZXNldCA9IDE7CiAgICAgcHNEZWMt
PnByZXZfZ2Fpbl9RMTYgPSA2NTUzNjsKKyAgICBwc0RlYy0+YXJjaCA9IG9wdXNfc2VsZWN0X2Fy
Y2goKTsKIAogICAgIC8qIFJlc2V0IENORyBzdGF0ZSAqLwogICAgIHNpbGtfQ05HX1Jlc2V0KCBw
c0RlYyApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2xpbjJsb2cuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9saW4ybG9nLmMKaW5kZXgg
ZDRmZTUxNTMyMWYwZDViNzZkNmQzMTRjY2ZmNGQxNmY5M2Y5MTgzOC4uMGQ1MTU1YWE4NmU0ZDY3
NjMwYzU0MWQ2OGZhN2E1ZTFiZjQwMGJjZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2xpbjJsb2cuYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvbGluMmxvZy5jCkBAIC00MSw2ICs0MSw2IEBAIG9wdXNfaW50MzIgc2lsa19saW4ybG9n
KAogICAgIHNpbGtfQ0xaX0ZSQUMoIGluTGluLCAmbHosICZmcmFjX1E3ICk7CiAKICAgICAvKiBQ
aWVjZS13aXNlIHBhcmFib2xpYyBhcHByb3hpbWF0aW9uICovCi0gICAgcmV0dXJuIHNpbGtfTFNI
SUZUKCAzMSAtIGx6LCA3ICkgKyBzaWxrX1NNTEFXQiggZnJhY19RNywgc2lsa19NVUwoIGZyYWNf
UTcsIDEyOCAtIGZyYWNfUTcgKSwgMTc5ICk7CisgICAgcmV0dXJuIHNpbGtfQUREX0xTSElGVDMy
KCBzaWxrX1NNTEFXQiggZnJhY19RNywgc2lsa19NVUwoIGZyYWNfUTcsIDEyOCAtIGZyYWNfUTcg
KSwgMTc5ICksIDMxIC0gbHosIDcgKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21hY3Jvcy5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL21hY3Jvcy5oCmluZGV4IGQzY2EzNDc1MjAwNDUwNmI2ZmQ2YWU0YmRkODhiNzg2NGFmNjgw
NzIuLjNjNjdiNmU1ZDk3YzM2NmY5ODQxZTJiYTliZGVlZmJmYmZlYjIwZWMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9tYWNyb3MuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWFjcm9zLmgKQEAgLTM2LDE0ICszNiw2IEBAIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgIm9wdXNfZGVmaW5lcy5oIgogI2luY2x1
ZGUgImFyY2guaCIKIAotI2lmIE9QVVNfR05VQ19QUkVSRVEoMywgMCkKLSNkZWZpbmUgb3B1c19s
aWtlbHkoeCkgICAgICAgKF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDEpKQotI2RlZmluZSBvcHVz
X3VubGlrZWx5KHgpICAgICAoX19idWlsdGluX2V4cGVjdCghISh4KSwgMCkpCi0jZWxzZQotI2Rl
ZmluZSBvcHVzX2xpa2VseSh4KSAgICAgICAoISEoeCkpCi0jZGVmaW5lIG9wdXNfdW5saWtlbHko
eCkgICAgICghISh4KSkKLSNlbmRpZgotCiAvKiBUaGlzIGlzIGFuIE9QVVNfSU5MSU5FIGhlYWRl
ciBmaWxlIGZvciBnZW5lcmFsIHBsYXRmb3JtLiAqLwogCiAvKiAoYTMyICogKG9wdXNfaW50MzIp
KChvcHVzX2ludDE2KShiMzIpKSkgPj4gMTYgb3V0cHV0IGhhdmUgdG8gYmUgMzJiaXQgaW50ICov
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvbWFpbi5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21haW4uaAppbmRleCAyZjkwZDY4ZjdkYTBj
N2Q0YjA5YjcwNmFmNzAxYTY0ZTI3MmFmNTA3Li4xYTMzZWVkNTQ5YjZhMjA4NWQ2MTIwZDUyMTBh
ZTFjMmJkNGIyOGI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWFpbi5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9tYWluLmgKQEAg
LTQyLDYgKzQyLDEwIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgIng4
Ni9tYWluX3NzZS5oIgogI2VuZGlmCiAKKyNpZiAoZGVmaW5lZChPUFVTX0FSTV9BU00pIHx8IGRl
ZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSkKKyNpbmNsdWRlICJhcm0vTlNRX2Rl
bF9kZWNfYXJtLmgiCisjZW5kaWYKKwogLyogQ29udmVydCBMZWZ0L1JpZ2h0IHN0ZXJlbyBzaWdu
YWwgdG8gYWRhcHRpdmUgTWlkL1NpZGUgcmVwcmVzZW50YXRpb24gKi8KIHZvaWQgc2lsa19zdGVy
ZW9fTFJfdG9fTVMoCiAgICAgc3RlcmVvX2VuY19zdGF0ZSAgICAgICAgICAgICpzdGF0ZSwgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBTdGF0ZSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCkBAIC0xMDksMjIgKzExMywyMiBAQCB2b2lkIHNpbGtfc3RlcmVv
X2RlY29kZV9taWRfb25seSgKIAogLyogRW5jb2RlcyBzaWducyBvZiBleGNpdGF0aW9uICovCiB2
b2lkIHNpbGtfZW5jb2RlX3NpZ25zKAotICAgIGVjX2VuYyAgICAgICAgICAgICAgICAgICAgICAq
cHNSYW5nZUVuYywgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIENvbXByZXNzb3IgZGF0
YSBzdHJ1Y3R1cmUgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDggICAg
ICAgICAgICAgcHVsc2VzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBwdWxz
ZSBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQg
ICAgICAgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgbGVuZ3RoIG9mIGlucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzaWduYWxUeXBlLCAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgcXVhbnRPZmZzZXRUeXBlLCAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBRdWFudGl6YXRpb24gb2Zmc2V0IHR5cGUgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHN1bV9wdWxz
ZXNbIE1BWF9OQl9TSEVMTF9CTE9DS1MgXSAgIC8qIEkgICAgU3VtIG9mIGFic29sdXRlIHB1bHNl
cyBwZXIgYmxvY2sgICAgICAgICAgICAqLworICAgIGVjX2VuYyAgICAgICAgICAgICAgICAgICAg
ICAqcHNSYW5nZUVuYywgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIENvbXByZXNzb3Ig
ZGF0YSBzdHJ1Y3R1cmUgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50OCAgICAg
ICAgICAgICBwdWxzZXNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIHB1bHNl
IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgICBsZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IGxlbmd0aCBvZiBpbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICBzaWduYWxUeXBlLCAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIFNpZ25hbCB0eXBlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICBxdWFudE9mZnNldFR5cGUsICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIFF1YW50aXphdGlvbiBvZmZzZXQgdHlwZSAgICAgICAgICAgICAgICAqLwor
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzdW1fcHVsc2VzWyBNQVhfTkJfU0hFTExf
QkxPQ0tTIF0gICAvKiBJICAgIFN1bSBvZiBhYnNvbHV0ZSBwdWxzZXMgcGVyIGJsb2NrICAgICAg
ICAqLwogKTsKIAogLyogRGVjb2RlcyBzaWducyBvZiBleGNpdGF0aW9uICovCiB2b2lkIHNpbGtf
ZGVjb2RlX3NpZ25zKAotICAgIGVjX2RlYyAgICAgICAgICAgICAgICAgICAgICAqcHNSYW5nZURl
YywgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIENvbXByZXNzb3IgZGF0YSBzdHJ1Y3R1
cmUgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAg
cHVsc2VzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBwdWxzZSBzaWduYWwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAg
ICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbGVu
Z3RoIG9mIGlucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICBzaWduYWxUeXBlLCAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIFNpZ25hbCB0eXBlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgcXVhbnRPZmZzZXRUeXBlLCAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBRdWFudGl6YXRpb24gb2Zmc2V0IHR5cGUgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHN1bV9wdWxzZXNbIE1BWF9O
Ql9TSEVMTF9CTE9DS1MgXSAgIC8qIEkgICAgU3VtIG9mIGFic29sdXRlIHB1bHNlcyBwZXIgYmxv
Y2sgICAgICAgICAgICAqLworICAgIGVjX2RlYyAgICAgICAgICAgICAgICAgICAgICAqcHNSYW5n
ZURlYywgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIENvbXByZXNzb3IgZGF0YSBzdHJ1
Y3R1cmUgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICBw
dWxzZXNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIHB1bHNlIHNpZ25hbCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgICBsZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIGxlbmd0aCBv
ZiBpbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAg
ICAgICAgICAgICBzaWduYWxUeXBlLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNp
Z25hbCB0eXBlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICBxdWFudE9mZnNldFR5cGUsICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIFF1YW50aXphdGlvbiBvZmZzZXQgdHlwZSAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0
IG9wdXNfaW50ICAgICAgICAgICAgICBzdW1fcHVsc2VzWyBNQVhfTkJfU0hFTExfQkxPQ0tTIF0g
ICAvKiBJICAgIFN1bSBvZiBhYnNvbHV0ZSBwdWxzZXMgcGVyIGJsb2NrICAgICAgICAqLwogKTsK
IAogLyogQ2hlY2sgZW5jb2RlciBjb250cm9sIHN0cnVjdCAqLwpAQCAtMjA1LDM3ICsyMDksMzcg
QEAgdm9pZCBzaWxrX2ludGVycG9sYXRlKAogCiAvKiBMVFAgdGFwIHF1YW50aXplciAqLwogdm9p
ZCBzaWxrX3F1YW50X0xUUF9nYWlucygKLSAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAg
Ql9RMTRbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdLCAgICAgICAgICAvKiBJL08gICh1bilx
dWFudGl6ZWQgTFRQIGdhaW5zICAgICAgICAgKi8KKyAgICBvcHVzX2ludDE2ICAgICAgICAgICAg
ICAgICAgQl9RMTRbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdLCAgICAgICAgICAvKiBPICAg
IFF1YW50aXplZCBMVFAgZ2FpbnMgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAg
ICAgICAgICAgICAgY2JrX2luZGV4WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAv
KiBPICAgIENvZGVib29rIEluZGV4ICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDgg
ICAgICAgICAgICAgICAgICAgKnBlcmlvZGljaXR5X2luZGV4LCAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBPICAgIFBlcmlvZGljaXR5IEluZGV4ICAgICAgICAgICAgICAgKi8KICAgICBvcHVz
X2ludDMyICAgICAgICAgICAgICAgICAgKnN1bV9nYWluX2RCX1E3LCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJL08gIEN1bXVsYXRpdmUgbWF4IHByZWRpY3Rpb24gZ2FpbiAgKi8KLSAg
ICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgV19RMThbIE1BWF9OQl9TVUJGUipMVFBfT1JE
RVIqTFRQX09SREVSIF0sICAvKiBJICAgIEVycm9yIFdlaWdodHMgaW4gUTE4ICAgICAgICAgICAg
Ki8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbXVfUTksICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE11IHZhbHVlIChSL0QgdHJhZGVvZmYpICAg
ICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbG93Q29tcGxleGl0eSwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZsYWcgZm9yIGxvdyBjb21wbGV4
aXR5ICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgbmJfc3ViZnIs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJm
cmFtZXMgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgKnBy
ZWRfZ2Fpbl9kQl9RNywgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIExUUCBwcmVk
aWN0aW9uIGdhaW4gICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAg
ICAgWFhfUTE3WyBNQVhfTkJfU1VCRlIqTFRQX09SREVSKkxUUF9PUkRFUiBdLCAvKiBJICAgIENv
cnJlbGF0aW9uIG1hdHJpeCBpbiBRMTggICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAg
ICAgICAgICAgeFhfUTE3WyBNQVhfTkJfU1VCRlIqTFRQX09SREVSIF0sICAgICAgICAgICAvKiBJ
ICAgIENvcnJlbGF0aW9uIHZlY3RvciBpbiBRMTggICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgc3ViZnJfbGVuLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIE51bWJlciBvZiBzYW1wbGVzIHBlciBzdWJmcmFtZSAgKi8KKyAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgbmJfc3ViZnIsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIE51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgKi8KICAgICBp
bnQgICAgICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgKi8K
ICk7CiAKIC8qIEVudHJvcHkgY29uc3RyYWluZWQgbWF0cml4LXdlaWdodGVkIFZRLCBmb3IgYSBz
aW5nbGUgaW5wdXQgZGF0YSB2ZWN0b3IgKi8KIHZvaWQgc2lsa19WUV9XTWF0X0VDX2MoCiAgICAg
b3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgICppbmQsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogTyAgICBpbmRleCBvZiBiZXN0IGNvZGVib29rIHZlY3RvciAgICAgICAgICAgICAgICov
Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpyYXRlX2Rpc3RfUTE0LCAgICAgICAg
ICAgICAgICAgLyogTyAgICBiZXN0IHdlaWdodGVkIHF1YW50IGVycm9yICsgbXUgKiByYXRlICAg
ICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpyZXNfbnJnX1ExNSwgICAg
ICAgICAgICAgICAgICAgLyogTyAgICBiZXN0IHJlc2lkdWFsIGVuZXJneSAgICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpyYXRlX2Rpc3Rf
UTgsICAgICAgICAgICAgICAgICAgLyogTyAgICBiZXN0IHRvdGFsIGJpdHJhdGUgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICpnYWlu
X1E3LCAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBzdW0gb2YgYWJzb2x1dGUgTFRQIGNv
ZWZmaWNpZW50cyAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAg
ICppbl9RMTQsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBpbnB1dCB2ZWN0b3IgdG8g
YmUgcXVhbnRpemVkICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAg
ICAgICAgICpXX1ExOCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICB3ZWlnaHRpbmcg
bWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQz
MiAgICAgICAgICAgICpYWF9RMTcsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb3Jy
ZWxhdGlvbiBtYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQzMiAgICAgICAgICAgICp4WF9RMTcsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBjb3JyZWxhdGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29u
c3Qgb3B1c19pbnQ4ICAgICAgICAgICAgICpjYl9RNywgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBjb2RlYm9vayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgY29uc3Qgb3B1c191aW50OCAgICAgICAgICAgICpjYl9nYWluX1E3LCAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBjb2RlYm9vayBlZmZlY3RpdmUgZ2FpbiAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgY29uc3Qgb3B1c191aW50OCAgICAgICAgICAgICpjbF9RNSwgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBjb2RlIGxlbmd0aCBmb3IgZWFjaCBjb2RlYm9vayB2ZWN0b3Ig
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG11X1E5LCAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICB0cmFkZW9mZiBiZXR3LiB3ZWlnaHRlZCBlcnJvciBh
bmQgcmF0ZSAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHN1YmZyX2xl
biwgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3Vi
ZnJhbWUgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIG1h
eF9nYWluX1E3LCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBtYXhpbXVtIHN1bSBvZiBhYnNv
bHV0ZSBMVFAgY29lZmZpY2llbnRzICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICAgIEwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2YgdmVj
dG9ycyBpbiBjb2RlYm9vayAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICAgIEwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIg
b2YgdmVjdG9ycyBpbiBjb2RlYm9vayAgICAgICAgICAgICAgICovCiApOwogCiAjaWYgIWRlZmlu
ZWQoT1ZFUlJJREVfc2lsa19WUV9XTWF0X0VDKQotI2RlZmluZSBzaWxrX1ZRX1dNYXRfRUMoaW5k
LCByYXRlX2Rpc3RfUTE0LCBnYWluX1E3LCBpbl9RMTQsIFdfUTE4LCBjYl9RNywgY2JfZ2Fpbl9R
NywgY2xfUTUsIFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgbXVfUTksIG1heF9nYWluX1E3
LCBMLCBhcmNoKSBcCi0gICAgKCh2b2lkKShhcmNoKSxzaWxrX1ZRX1dNYXRfRUNfYyhpbmQsIHJh
dGVfZGlzdF9RMTQsIGdhaW5fUTcsIGluX1ExNCwgV19RMTgsIGNiX1E3LCBjYl9nYWluX1E3LCBj
bF9RNSwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICBtdV9ROSwgbWF4X2dhaW5fUTcsIEwp
KQorI2RlZmluZSBzaWxrX1ZRX1dNYXRfRUMoaW5kLCByZXNfbnJnX1ExNSwgcmF0ZV9kaXN0X1E4
LCBnYWluX1E3LCBYWF9RMTcsIHhYX1ExNywgY2JfUTcsIGNiX2dhaW5fUTcsIGNsX1E1LCBzdWJm
cl9sZW4sIG1heF9nYWluX1E3LCBMLCBhcmNoKSBcCisgICAgKCh2b2lkKShhcmNoKSxzaWxrX1ZR
X1dNYXRfRUNfYyhpbmQsIHJlc19ucmdfUTE1LCByYXRlX2Rpc3RfUTgsIGdhaW5fUTcsIFhYX1Ex
NywgeFhfUTE3LCBjYl9RNywgY2JfZ2Fpbl9RNywgY2xfUTUsIHN1YmZyX2xlbiwgbWF4X2dhaW5f
UTcsIEwpKQogI2VuZGlmCiAKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
CkBAIC0yNDMsMTQgKzI0NywxNCBAQCB2b2lkIHNpbGtfVlFfV01hdF9FQ19jKAogLyoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIAogdm9pZCBzaWxrX05TUV9jKAotICAgIGNv
bnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwor
ICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAg
ICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAg
ICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGlj
ZXMgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10s
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQg
aW5wdXQgc2lnbmFsICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICB4
MTZbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAg
ICAgICBwdWxzZXNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAg
UXVhbnRpemVkIHB1bHNlIHNpZ25hbCAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYg
ICAgICAgICAgICBQcmVkQ29lZl9RMTJbIDIgKiBNQVhfTFBDX09SREVSIF0sICAgICAgICAgIC8q
IEkgICAgU2hvcnQgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50MTYgICAgICAgICAgICBMVFBDb2VmX1ExNFsgTFRQX09SREVSICogTUFYX05CX1NVQkZSIF0s
ICAgIC8qIEkgICAgTG9uZyB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAqLwotICAgIGNvbnN0
IG9wdXNfaW50MTYgICAgICAgICAgICBBUjJfUTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVf
TFBDX09SREVSIF0sIC8qIEkgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBBUl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9T
SEFQRV9MUENfT1JERVIgXSwgLyogSSAgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAq
LwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1ExNFsgTUFY
X05CX1NVQkZSIF0sICAgICAgICAgIC8qIEkgICAgTG9uZyB0ZXJtIHNoYXBpbmcgY29lZnMgICAg
ICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBUaWx0X1ExNFsgTUFYX05C
X1NVQkZSIF0sICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3BlY3RyYWwgdGlsdCAgICAgICAg
ICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBMRl9zaHBfUTE0
WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgIC8qIEkgICAgTG93IGZyZXF1ZW5jeSBz
aGFwaW5nIGNvZWZzICAgICAqLwpAQCAtMjYxLDIyICsyNjUsMjIgQEAgdm9pZCBzaWxrX05TUV9j
KAogKTsKIAogI2lmICFkZWZpbmVkKE9WRVJSSURFX3NpbGtfTlNRKQotI2RlZmluZSBzaWxrX05T
UShwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4X1EzLCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQ
Q29lZl9RMTQsIEFSMl9RMTMsIFwKKyNkZWZpbmUgc2lsa19OU1EocHNFbmNDLCBOU1EsIHBzSW5k
aWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQQ29lZl9RMTQsIEFSX1ExMywgXAog
ICAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1Ex
NCwgR2FpbnNfUTE2LCBwaXRjaEwsIExhbWJkYV9RMTAsIExUUF9zY2FsZV9RMTQsIGFyY2gpIFwK
LSAgICAoKHZvaWQpKGFyY2gpLHNpbGtfTlNRX2MocHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeF9R
MywgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0LCBBUjJfUTEzLCBcCisgICAgKCh2
b2lkKShhcmNoKSxzaWxrX05TUV9jKHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2Vz
LCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0LCBBUl9RMTMsIFwKICAgICAgICAgICAgICAgICAg
ICBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsIExGX3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0
Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0KSkKICNlbmRpZgogCiAvKiBOb2lzZSBzaGFw
aW5nIHVzaW5nIGRlbGF5ZWQgZGVjaXNpb24gKi8KIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAot
ICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAg
ICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRp
Y2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9u
IEluZGljZXMgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4
X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmls
dGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
SW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAg
ICAgICAgICAgICBwdWxzZXNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IE8gICAgUXVhbnRpemVkIHB1bHNlIHNpZ25hbCAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50MTYgICAgICAgICAgICBQcmVkQ29lZl9RMTJbIDIgKiBNQVhfTFBDX09SREVSIF0sICAgICAg
ICAgIC8qIEkgICAgU2hvcnQgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAqLwogICAgIGNvbnN0
IG9wdXNfaW50MTYgICAgICAgICAgICBMVFBDb2VmX1ExNFsgTFRQX09SREVSICogTUFYX05CX1NV
QkZSIF0sICAgIC8qIEkgICAgTG9uZyB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAqLwotICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBBUjJfUTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhf
U0hBUEVfTFBDX09SREVSIF0sIC8qIEkgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBBUl9RMTNbIE1BWF9OQl9TVUJGUiAq
IE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSAgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAg
ICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1Ex
NFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgIC8qIEkgICAgTG9uZyB0ZXJtIHNoYXBpbmcgY29l
ZnMgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBUaWx0X1ExNFsg
TUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3BlY3RyYWwgdGlsdCAg
ICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBMRl9z
aHBfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgIC8qIEkgICAgTG93IGZyZXF1
ZW5jeSBzaGFwaW5nIGNvZWZzICAgICAqLwpAQCAtMjg3LDkgKzI5MSw5IEBAIHZvaWQgc2lsa19O
U1FfZGVsX2RlY19jKAogKTsKIAogI2lmICFkZWZpbmVkKE9WRVJSSURFX3NpbGtfTlNRX2RlbF9k
ZWMpCi0jZGVmaW5lIHNpbGtfTlNRX2RlbF9kZWMocHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeF9R
MywgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0LCBBUjJfUTEzLCBcCisjZGVmaW5l
IHNpbGtfTlNRX2RlbF9kZWMocHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFBy
ZWRDb2VmX1ExMiwgTFRQQ29lZl9RMTQsIEFSX1ExMywgXAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgSGFybVNoYXBlR2Fpbl9RMTQsIFRpbHRfUTE0LCBMRl9zaHBfUTE0LCBHYWluc19RMTYs
IHBpdGNoTCwgTGFtYmRhX1ExMCwgTFRQX3NjYWxlX1ExNCwgYXJjaCkgXAotICAgICgodm9pZCko
YXJjaCksc2lsa19OU1FfZGVsX2RlY19jKHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHhfUTMsIHB1
bHNlcywgUHJlZENvZWZfUTEyLCBMVFBDb2VmX1ExNCwgQVIyX1ExMywgXAorICAgICgodm9pZCko
YXJjaCksc2lsa19OU1FfZGVsX2RlY19jKHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVs
c2VzLCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0LCBBUl9RMTMsIFwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2Fp
bnNfUTE2LCBwaXRjaEwsIExhbWJkYV9RMTAsIExUUF9zY2FsZV9RMTQpKQogI2VuZGlmCiAKQEAg
LTM0Niw2ICszNTAsNyBAQCB2b2lkIHNpbGtfTkxTRl9WUSgKICAgICBvcHVzX2ludDMyICAgICAg
ICAgICAgICAgICAgZXJyX1EyNltdLCAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFF1YW50
aXphdGlvbiBlcnJvcnMgW0tdICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVz
X2ludDE2ICAgICAgICAgICAgaW5fUTE1W10sICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IElucHV0IHZlY3RvcnMgdG8gYmUgcXVhbnRpemVkIFtMUENfb3JkZXJdICAgKi8KICAgICBjb25z
dCBvcHVzX3VpbnQ4ICAgICAgICAgICAgcENCX1E4W10sICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIENvZGVib29rIHZlY3RvcnMgW0sqTFBDX29yZGVyXSAgICAgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgcFdnaHRfUTlbXSwgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIENvZGVib29rIHdlaWdodHMgW0sqTFBDX29yZGVyXSAgICAgICAgICAgICAg
Ki8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgSywgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBjb2RlYm9vayB2ZWN0b3JzICAgICAgICAgICAg
ICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgTFBDX29yZGVyICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBMUENzICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWlwcy9OU1FfZGVsX2RlY19taXBz
cjEuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9taXBzL05TUV9kZWxfZGVjX21pcHNyMS5oCmluZGV4IGFkMWNmZTJhOWIwODQx
MDEyNzAxYjFmZTc3ZDdkYTJmMDQ0ZDBiMjYuLmNkNzA3MTNhOGY1ZDk0NTNlYzYyZDc3ODZiYzMw
YTkwYWJkZGM0MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9taXBzL05TUV9kZWxfZGVjX21pcHNyMS5oCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9taXBzL05TUV9kZWxfZGVjX21pcHNyMS5oCkBAIC02MSw3ICs2MSw3IEBAIHN0YXRp
YyBpbmxpbmUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgIG9w
dXNfaW50ICAgICAgICAgICAgcHJlZGljdExQQ09yZGVyLCAgICAgICAgLyogSSAgICBQcmVkaWN0
aW9uIGZpbHRlciBvcmRlciAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAg
d2FycGluZ19RMTYsICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgblN0YXRlc0RlbGF5ZWREZWNp
c2lvbiwgLyogSSAgICBOdW1iZXIgb2Ygc3RhdGVzIGluIGRlY2lzaW9uIHRyZWUgICAqLwotICAg
IG9wdXNfaW50ICAgICAgICAgICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAgLyogSSAgICBJbmRl
eCB0byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZmZXJzICAqLworICAgIG9wdXNfaW50ICAgICAgICAg
ICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAgLyogSS9PICBJbmRleCB0byBuZXdlc3Qgc2FtcGxl
cyBpbiBidWZmZXJzICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgZGVjaXNpb25EZWxheSwg
ICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIGludCAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgLyogSSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKQpAQCAtMzIzLDggKzMyMyw5
IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVj
KAogICAgICAgICAgICAgcHNTU1sgMSBdLnhxX1ExNCAgICAgICA9IHhxX1ExNDsKICAgICAgICAg
fQogCi0gICAgICAgICpzbXBsX2J1Zl9pZHggID0gKCAqc21wbF9idWZfaWR4IC0gMSApICYgREVD
SVNJT05fREVMQVlfTUFTSzsgICAgICAgICAgICAgICAgICAgLyogSW5kZXggdG8gbmV3ZXN0IHNh
bXBsZXMgICAgICAgICAgICAgICovCi0gICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCAqc21wbF9i
dWZfaWR4ICsgZGVjaXNpb25EZWxheSApICYgREVDSVNJT05fREVMQVlfTUFTSzsgICAgICAgLyog
SW5kZXggdG8gZGVjaXNpb25EZWxheSBvbGQgc2FtcGxlcyAgICovCisgICAgICAgICpzbXBsX2J1
Zl9pZHggID0gKCAqc21wbF9idWZfaWR4IC0gMSApICUgREVDSVNJT05fREVMQVk7CisgICAgICAg
IGlmKCAqc21wbF9idWZfaWR4IDwgMCApICpzbXBsX2J1Zl9pZHggKz0gREVDSVNJT05fREVMQVk7
CisgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCAqc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxh
eSApICUgREVDSVNJT05fREVMQVk7CiAKICAgICAgICAgLyogRmluZCB3aW5uZXIgKi8KICAgICAg
ICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0ZVsgMCBdWyAwIF0uUkRfUTEwOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL21pcHMvc2lncHJvY19maXhfbWlwc3IxLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWlwcy9zaWdwcm9jX2ZpeF9t
aXBzcjEuaAppbmRleCAzYjBhNjk1MzY1NmQ5NzMxOGYzYWE4M2ViYmE5ZjIwOGJlMWJkODhiLi41
MTUyMGMwYTZmZDU1MGNiODcyOTA2MjQ0ZTZhZmMxYzBjYzEzOGFhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
bWlwcy9zaWdwcm9jX2ZpeF9taXBzcjEuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWlwcy9zaWdwcm9jX2ZpeF9taXBz
cjEuaApAQCAtMjgsMTEgKzI4LDYgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaWZu
ZGVmIFNJTEtfU0lHUFJPQ19GSVhfTUlQU1IxX0gKICNkZWZpbmUgU0lMS19TSUdQUk9DX0ZJWF9N
SVBTUjFfSAogCi0jaWZkZWYgIF9fY3BsdXNwbHVzCi1leHRlcm4gIkMiCi17Ci0jZW5kaWYKLQog
I3VuZGVmIHNpbGtfU0FUMTYKIHN0YXRpYyBpbmxpbmUgc2hvcnQgaW50IHNpbGtfU0FUMTYoaW50
IGEpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvcHJvY2Vzc19OTFNGcy5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3Byb2Nlc3NfTkxT
RnMuYwppbmRleCAwYWI3MWYwMTYzNDA3Zjg1NGJjNDJmMDZhNTkwMGU2YjFhYmUyOTM3Li4yZjEw
ZjhkZjViM2Q3MGU1ODIzZmUyZGI1NWI1YjExNzRiMjZhZmJiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvcHJv
Y2Vzc19OTFNGcy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9wcm9jZXNzX05MU0ZzLmMKQEAgLTg5LDcgKzg5LDcgQEAg
dm9pZCBzaWxrX3Byb2Nlc3NfTkxTRnMoCiAgICAgICAgIE5MU0ZfbXVfUTIwLCBwc0VuY0MtPk5M
U0ZfTVNWUV9TdXJ2aXZvcnMsIHBzRW5jQy0+aW5kaWNlcy5zaWduYWxUeXBlICk7CiAKICAgICAv
KiBDb252ZXJ0IHF1YW50aXplZCBOTFNGcyBiYWNrIHRvIExQQyBjb2VmZmljaWVudHMgKi8KLSAg
ICBzaWxrX05MU0YyQSggUHJlZENvZWZfUTEyWyAxIF0sIHBOTFNGX1ExNSwgcHNFbmNDLT5wcmVk
aWN0TFBDT3JkZXIgKTsKKyAgICBzaWxrX05MU0YyQSggUHJlZENvZWZfUTEyWyAxIF0sIHBOTFNG
X1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIsIHBzRW5jQy0+YXJjaCApOwogCiAgICAgaWYo
IGRvSW50ZXJwb2xhdGUgKSB7CiAgICAgICAgIC8qIENhbGN1bGF0ZSB0aGUgaW50ZXJwb2xhdGVk
LCBxdWFudGl6ZWQgTFNGIHZlY3RvciBmb3IgdGhlIGZpcnN0IGhhbGYgKi8KQEAgLTk3LDcgKzk3
LDcgQEAgdm9pZCBzaWxrX3Byb2Nlc3NfTkxTRnMoCiAgICAgICAgICAgICBwc0VuY0MtPmluZGlj
ZXMuTkxTRkludGVycENvZWZfUTIsIHBzRW5jQy0+cHJlZGljdExQQ09yZGVyICk7CiAKICAgICAg
ICAgLyogQ29udmVydCBiYWNrIHRvIExQQyBjb2VmZmljaWVudHMgKi8KLSAgICAgICAgc2lsa19O
TFNGMkEoIFByZWRDb2VmX1ExMlsgMCBdLCBwTkxTRjBfdGVtcF9RMTUsIHBzRW5jQy0+cHJlZGlj
dExQQ09yZGVyICk7CisgICAgICAgIHNpbGtfTkxTRjJBKCBQcmVkQ29lZl9RMTJbIDAgXSwgcE5M
U0YwX3RlbXBfUTE1LCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciwgcHNFbmNDLT5hcmNoICk7CiAK
ICAgICB9IGVsc2UgewogICAgICAgICAvKiBDb3B5IExQQyBjb2VmZmljaWVudHMgZm9yIGZpcnN0
IGhhbGYgZnJvbSBzZWNvbmQgaGFsZiAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3F1YW50X0xUUF9nYWlu
cy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL3F1YW50X0xUUF9nYWlucy5jCmluZGV4IDUxM2E4YzQ0NjhmZmM0Yzg3YTc0MTQ2
MDA2NWY2M2ViZTY3NzUyYTYuLmQ2YjhlZmY4ZDE4NjRjY2ZhMjFhMjZhNmJjNTk3ZWJjMmRiY2Vk
YjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9xdWFudF9MVFBfZ2FpbnMuYworKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvcXVhbnRfTFRQ
X2dhaW5zLmMKQEAgLTMzLDE0ICszMywxNSBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICNpbmNsdWRlICJ0dW5pbmdfcGFyYW1ldGVycy5oIgogCiB2b2lkIHNpbGtfcXVhbnRfTFRQX2dh
aW5zKAotICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICBCX1ExNFsgTUFYX05CX1NVQkZS
ICogTFRQX09SREVSIF0sICAgICAgICAgIC8qIEkvTyAgKHVuKXF1YW50aXplZCBMVFAgZ2FpbnMg
ICAgICAgICAqLworICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICBCX1ExNFsgTUFYX05C
X1NVQkZSICogTFRQX09SREVSIF0sICAgICAgICAgIC8qIE8gICAgUXVhbnRpemVkIExUUCBnYWlu
cyAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICBjYmtfaW5k
ZXhbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgIC8qIE8gICAgQ29kZWJvb2sgSW5k
ZXggICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICAq
cGVyaW9kaWNpdHlfaW5kZXgsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUGVyaW9k
aWNpdHkgSW5kZXggICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAg
ICAgICAqc3VtX2xvZ19nYWluX1E3LCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAg
Q3VtdWxhdGl2ZSBtYXggcHJlZGljdGlvbiBnYWluICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIg
ICAgICAgICAgICBXX1ExOFsgTUFYX05CX1NVQkZSKkxUUF9PUkRFUipMVFBfT1JERVIgXSwgIC8q
IEkgICAgRXJyb3IgV2VpZ2h0cyBpbiBRMTggICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgICBtdV9ROSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgTXUgdmFsdWUgKFIvRCB0cmFkZW9mZikgICAgICAgICAqLwotICAgIG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgICBsb3dDb21wbGV4aXR5LCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgRmxhZyBmb3IgbG93IGNvbXBsZXhpdHkgICAgICAgICAqLwotICAg
IGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAqcHJlZF9nYWluX2RCX1E3LCAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIHByZWRpY3Rpb24gZ2FpbiAgICAgICAg
ICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBYWF9RMTdbIE1BWF9OQl9T
VUJGUipMVFBfT1JERVIqTFRQX09SREVSIF0sIC8qIEkgICAgQ29ycmVsYXRpb24gbWF0cml4IGlu
IFExOCAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4WF9RMTdbIE1B
WF9OQl9TVUJGUipMVFBfT1JERVIgXSwgICAgICAgICAgIC8qIEkgICAgQ29ycmVsYXRpb24gdmVj
dG9yIGluIFExOCAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzdWJm
cl9sZW4sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9m
IHNhbXBsZXMgcGVyIHN1YmZyYW1lICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVt
YmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAqLwogICAgIGludCAgICAgICAgICAgICAgICAg
ICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAqLwogKQogewpAQCAtNDksMTYgKzUw
LDE2IEBAIHZvaWQgc2lsa19xdWFudF9MVFBfZ2FpbnMoCiAgICAgY29uc3Qgb3B1c191aW50OCAg
ICAgKmNsX3B0cl9RNTsKICAgICBjb25zdCBvcHVzX2ludDggICAgICAqY2JrX3B0cl9RNzsKICAg
ICBjb25zdCBvcHVzX3VpbnQ4ICAgICAqY2JrX2dhaW5fcHRyX1E3OwotICAgIGNvbnN0IG9wdXNf
aW50MTYgICAgICpiX1ExNF9wdHI7Ci0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgKldfUTE4X3B0
cjsKLSAgICBvcHVzX2ludDMyICAgICAgICAgICByYXRlX2Rpc3RfUTE0X3N1YmZyLCByYXRlX2Rp
c3RfUTE0LCBtaW5fcmF0ZV9kaXN0X1ExNDsKLSAgICBvcHVzX2ludDMyICAgICAgICAgICBzdW1f
bG9nX2dhaW5fdG1wX1E3LCBiZXN0X3N1bV9sb2dfZ2Fpbl9RNywgbWF4X2dhaW5fUTcsIGdhaW5f
UTc7CisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgKlhYX1ExN19wdHIsICp4WF9RMTdfcHRyOwor
ICAgIG9wdXNfaW50MzIgICAgICAgICAgIHJlc19ucmdfUTE1X3N1YmZyLCByZXNfbnJnX1ExNSwg
cmF0ZV9kaXN0X1E3X3N1YmZyLCByYXRlX2Rpc3RfUTcsIG1pbl9yYXRlX2Rpc3RfUTc7CisgICAg
b3B1c19pbnQzMiAgICAgICAgICAgc3VtX2xvZ19nYWluX3RtcF9RNywgYmVzdF9zdW1fbG9nX2dh
aW5fUTcsIG1heF9nYWluX1E3OworICAgIG9wdXNfaW50ICAgICAgICAgICAgIGdhaW5fUTc7CiAK
ICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
LwogICAgIC8qIGl0ZXJhdGUgb3ZlciBkaWZmZXJlbnQgY29kZWJvb2tzIHdpdGggZGlmZmVyZW50
ICovCiAgICAgLyogcmF0ZXMvZGlzdG9ydGlvbnMsIGFuZCBjaG9vc2UgYmVzdCAqLwogICAgIC8q
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAg
bWluX3JhdGVfZGlzdF9RMTQgPSBzaWxrX2ludDMyX01BWDsKKyAgICBtaW5fcmF0ZV9kaXN0X1E3
ID0gc2lsa19pbnQzMl9NQVg7CiAgICAgYmVzdF9zdW1fbG9nX2dhaW5fUTcgPSAwOwogICAgIGZv
ciggayA9IDA7IGsgPCAzOyBrKysgKSB7CiAgICAgICAgIC8qIFNhZmV0eSBtYXJnaW4gZm9yIHBp
dGNoIGdhaW4gY29udHJvbCwgdG8gdGFrZSBpbnRvIGFjY291bnQgZmFjdG9ycwpAQCAtNzAsNTMg
KzcxLDQ3IEBAIHZvaWQgc2lsa19xdWFudF9MVFBfZ2FpbnMoCiAgICAgICAgIGNia19nYWluX3B0
cl9RNyA9IHNpbGtfTFRQX3ZxX2dhaW5fcHRyc19RN1sgayBdOwogICAgICAgICBjYmtfc2l6ZSAg
ID0gc2lsa19MVFBfdnFfc2l6ZXNbICAgICAgICAgIGsgXTsKIAotICAgICAgICAvKiBTZXQgdXAg
cG9pbnRlciB0byBmaXJzdCBzdWJmcmFtZSAqLwotICAgICAgICBXX1ExOF9wdHIgPSBXX1ExODsK
LSAgICAgICAgYl9RMTRfcHRyID0gQl9RMTQ7CisgICAgICAgIC8qIFNldCB1cCBwb2ludGVycyB0
byBmaXJzdCBzdWJmcmFtZSAqLworICAgICAgICBYWF9RMTdfcHRyID0gWFhfUTE3OworICAgICAg
ICB4WF9RMTdfcHRyID0geFhfUTE3OwogCi0gICAgICAgIHJhdGVfZGlzdF9RMTQgPSAwOworICAg
ICAgICByZXNfbnJnX1ExNSA9IDA7CisgICAgICAgIHJhdGVfZGlzdF9RNyA9IDA7CiAgICAgICAg
IHN1bV9sb2dfZ2Fpbl90bXBfUTcgPSAqc3VtX2xvZ19nYWluX1E3OwogICAgICAgICBmb3IoIGog
PSAwOyBqIDwgbmJfc3ViZnI7IGorKyApIHsKICAgICAgICAgICAgIG1heF9nYWluX1E3ID0gc2ls
a19sb2cybGluKCAoIFNJTEtfRklYX0NPTlNUKCBNQVhfU1VNX0xPR19HQUlOX0RCIC8gNi4wLCA3
ICkgLSBzdW1fbG9nX2dhaW5fdG1wX1E3ICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICArIFNJTEtfRklYX0NPTlNUKCA3LCA3ICkgKSAtIGdhaW5fc2FmZXR5OwotCiAg
ICAgICAgICAgICBzaWxrX1ZRX1dNYXRfRUMoCiAgICAgICAgICAgICAgICAgJnRlbXBfaWR4WyBq
IF0sICAgICAgICAgLyogTyAgICBpbmRleCBvZiBiZXN0IGNvZGVib29rIHZlY3RvciAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgJnJhdGVfZGlzdF9RMTRfc3Vi
ZnIsICAgLyogTyAgICBiZXN0IHdlaWdodGVkIHF1YW50aXphdGlvbiBlcnJvciArIG11ICogcmF0
ZSAgICAgICAgICAgICovCisgICAgICAgICAgICAgICAgJnJlc19ucmdfUTE1X3N1YmZyLCAgICAg
LyogTyAgICByZXNpZHVhbCBlbmVyZ3kgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgICAgICAgICAgICAgJnJhdGVfZGlzdF9RN19zdWJmciwgICAgLyogTyAg
ICBiZXN0IHdlaWdodGVkIHF1YW50aXphdGlvbiBlcnJvciArIG11ICogcmF0ZSAgICAgICAgICAg
ICovCiAgICAgICAgICAgICAgICAgJmdhaW5fUTcsICAgICAgICAgICAgICAgLyogTyAgICBzdW0g
b2YgYWJzb2x1dGUgTFRQIGNvZWZmaWNpZW50cyAgICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgICAgICAgICAgICAgYl9RMTRfcHRyLCAgICAgICAgICAgICAgLyogSSAgICBpbnB1dCB2ZWN0
b3IgdG8gYmUgcXVhbnRpemVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgICAg
ICAgICAgICAgV19RMThfcHRyLCAgICAgICAgICAgICAgLyogSSAgICB3ZWlnaHRpbmcgbWF0cml4
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgICAgICAg
ICAgWFhfUTE3X3B0ciwgICAgICAgICAgICAgLyogSSAgICBjb3JyZWxhdGlvbiBtYXRyaXggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgICAgICAgICAgeFhf
UTE3X3B0ciwgICAgICAgICAgICAgLyogSSAgICBjb3JyZWxhdGlvbiB2ZWN0b3IgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgY2JrX3B0cl9R
NywgICAgICAgICAgICAgLyogSSAgICBjb2RlYm9vayAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgY2JrX2dhaW5fcHRyX1E3
LCAgICAgICAgLyogSSAgICBjb2RlYm9vayBlZmZlY3RpdmUgZ2FpbnMgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgY2xfcHRyX1E1LCAgICAgICAgICAg
ICAgLyogSSAgICBjb2RlIGxlbmd0aCBmb3IgZWFjaCBjb2RlYm9vayB2ZWN0b3IgICAgICAgICAg
ICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgbXVfUTksICAgICAgICAgICAgICAgICAgLyog
SSAgICB0cmFkZW9mZiBiZXR3ZWVuIHdlaWdodGVkIGVycm9yIGFuZCByYXRlICAgICAgICAgICAg
ICAgICovCisgICAgICAgICAgICAgICAgc3ViZnJfbGVuLCAgICAgICAgICAgICAgLyogSSAgICBu
dW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3ViZnJhbWUgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgICAgICAgICAgICAgbWF4X2dhaW5fUTcsICAgICAgICAgICAgLyogSSAgICBtYXhpbXVt
IHN1bSBvZiBhYnNvbHV0ZSBMVFAgY29lZmZpY2llbnRzICAgICAgICAgICAgICAgICovCiAgICAg
ICAgICAgICAgICAgY2JrX3NpemUsICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2YgdmVj
dG9ycyBpbiBjb2RlYm9vayAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAg
ICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1
cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICApOwog
Ci0gICAgICAgICAgICByYXRlX2Rpc3RfUTE0ID0gc2lsa19BRERfUE9TX1NBVDMyKCByYXRlX2Rp
c3RfUTE0LCByYXRlX2Rpc3RfUTE0X3N1YmZyICk7CisgICAgICAgICAgICByZXNfbnJnX1ExNSAg
PSBzaWxrX0FERF9QT1NfU0FUMzIoIHJlc19ucmdfUTE1LCByZXNfbnJnX1ExNV9zdWJmciApOwor
ICAgICAgICAgICAgcmF0ZV9kaXN0X1E3ID0gc2lsa19BRERfUE9TX1NBVDMyKCByYXRlX2Rpc3Rf
UTcsIHJhdGVfZGlzdF9RN19zdWJmciApOwogICAgICAgICAgICAgc3VtX2xvZ19nYWluX3RtcF9R
NyA9IHNpbGtfbWF4KDAsIHN1bV9sb2dfZ2Fpbl90bXBfUTcKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKyBzaWxrX2xpbjJsb2coIGdhaW5fc2FmZXR5ICsgZ2Fpbl9RNyApIC0gU0lM
S19GSVhfQ09OU1QoIDcsIDcgKSk7CiAKLSAgICAgICAgICAgIGJfUTE0X3B0ciArPSBMVFBfT1JE
RVI7Ci0gICAgICAgICAgICBXX1ExOF9wdHIgKz0gTFRQX09SREVSICogTFRQX09SREVSOworICAg
ICAgICAgICAgWFhfUTE3X3B0ciArPSBMVFBfT1JERVIgKiBMVFBfT1JERVI7CisgICAgICAgICAg
ICB4WF9RMTdfcHRyICs9IExUUF9PUkRFUjsKICAgICAgICAgfQogCi0gICAgICAgIC8qIEF2b2lk
IG5ldmVyIGZpbmRpbmcgYSBjb2RlYm9vayAqLwotICAgICAgICByYXRlX2Rpc3RfUTE0ID0gc2ls
a19taW4oIHNpbGtfaW50MzJfTUFYIC0gMSwgcmF0ZV9kaXN0X1ExNCApOwotCi0gICAgICAgIGlm
KCByYXRlX2Rpc3RfUTE0IDwgbWluX3JhdGVfZGlzdF9RMTQgKSB7Ci0gICAgICAgICAgICBtaW5f
cmF0ZV9kaXN0X1ExNCA9IHJhdGVfZGlzdF9RMTQ7CisgICAgICAgIGlmKCByYXRlX2Rpc3RfUTcg
PD0gbWluX3JhdGVfZGlzdF9RNyApIHsKKyAgICAgICAgICAgIG1pbl9yYXRlX2Rpc3RfUTcgPSBy
YXRlX2Rpc3RfUTc7CiAgICAgICAgICAgICAqcGVyaW9kaWNpdHlfaW5kZXggPSAob3B1c19pbnQ4
KWs7CiAgICAgICAgICAgICBzaWxrX21lbWNweSggY2JrX2luZGV4LCB0ZW1wX2lkeCwgbmJfc3Vi
ZnIgKiBzaXplb2YoIG9wdXNfaW50OCApICk7CiAgICAgICAgICAgICBiZXN0X3N1bV9sb2dfZ2Fp
bl9RNyA9IHN1bV9sb2dfZ2Fpbl90bXBfUTc7CiAgICAgICAgIH0KLQotICAgICAgICAvKiBCcmVh
ayBlYXJseSBpbiBsb3ctY29tcGxleGl0eSBtb2RlIGlmIHJhdGUgZGlzdG9ydGlvbiBpcyBiZWxv
dyB0aHJlc2hvbGQgKi8KLSAgICAgICAgaWYoIGxvd0NvbXBsZXhpdHkgJiYgKCByYXRlX2Rpc3Rf
UTE0IDwgc2lsa19MVFBfZ2Fpbl9taWRkbGVfYXZnX1JEX1ExNCApICkgewotICAgICAgICAgICAg
YnJlYWs7Ci0gICAgICAgIH0KICAgICB9CiAKICAgICBjYmtfcHRyX1E3ID0gc2lsa19MVFBfdnFf
cHRyc19RN1sgKnBlcmlvZGljaXR5X2luZGV4IF07CkBAIC0xMjUsNSArMTIwLDEzIEBAIHZvaWQg
c2lsa19xdWFudF9MVFBfZ2FpbnMoCiAgICAgICAgICAgICBCX1ExNFsgaiAqIExUUF9PUkRFUiAr
IGsgXSA9IHNpbGtfTFNISUZUKCBjYmtfcHRyX1E3WyBjYmtfaW5kZXhbIGogXSAqIExUUF9PUkRF
UiArIGsgXSwgNyApOwogICAgICAgICB9CiAgICAgfQorCisgICAgaWYoIG5iX3N1YmZyID09IDIg
KSB7CisgICAgICAgIHJlc19ucmdfUTE1ID0gc2lsa19SU0hJRlQzMiggcmVzX25yZ19RMTUsIDEg
KTsKKyAgICB9IGVsc2UgeworICAgICAgICByZXNfbnJnX1ExNSA9IHNpbGtfUlNISUZUMzIoIHJl
c19ucmdfUTE1LCAyICk7CisgICAgfQorCiAgICAgKnN1bV9sb2dfZ2Fpbl9RNyA9IGJlc3Rfc3Vt
X2xvZ19nYWluX1E3OworICAgICpwcmVkX2dhaW5fZEJfUTcgPSAob3B1c19pbnQpc2lsa19TTVVM
QkIoIC0zLCBzaWxrX2xpbjJsb2coIHJlc19ucmdfUTE1ICkgLSAoIDE1IDw8IDcgKSApOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL3N0cnVjdHMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9zdHJ1Y3RzLmgKaW5kZXggODI3ODI5ZGM2
ZjMyY2UxMzQ4NWJlMTdhNzFlZmMzOTYzZDdjNDIyNC4uNGZmNTkwYjA0Y2FiYTUwODM1ZmNkMTgw
MDk0MzdiYzc5MGFhYWFhZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3N0cnVjdHMuaAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvc3Ry
dWN0cy5oCkBAIC00OCw2ICs0OCw3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBvcHVzX2ludDMy
ICAgICAgICAgICAgICAgICAgc0xQQ19RMTRbIE1BWF9TVUJfRlJBTUVfTEVOR1RIICsgTlNRX0xQ
Q19CVUZfTEVOR1RIIF07CiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHNBUjJfUTE0
WyBNQVhfU0hBUEVfTFBDX09SREVSIF07CiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAg
IHNMRl9BUl9zaHBfUTE0OworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBzRGlmZl9z
aHBfUTE0OwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsYWdQcmV2OwogICAgIG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgICBzTFRQX2J1Zl9pZHg7CiAgICAgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICAgIHNMVFBfc2hwX2J1Zl9pZHg7CkBAIC04Niw2ICs4Nyw3IEBAIHR5cGVk
ZWYgc3RydWN0IHsKICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgIHF1YW50U3RlcFNp
emVfUTE2OwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgaW52UXVhbnRTdGVwU2l6
ZV9RNjsKICAgICBjb25zdCBvcHVzX3VpbnQ4ICAgICAgICAgICAgICpDQjFfTkxTRl9RODsKKyAg
ICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICpDQjFfV2dodF9ROTsKICAgICBjb25zdCBv
cHVzX3VpbnQ4ICAgICAgICAgICAgICpDQjFfaUNERjsKICAgICBjb25zdCBvcHVzX3VpbnQ4ICAg
ICAgICAgICAgICpwcmVkX1E4OwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICAgICAgKmVj
X3NlbDsKQEAgLTE2OSw4ICsxNzEsNiBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1c19pbnQg
ICAgICAgICAgICAgICAgICAgICBwaXRjaEVzdGltYXRpb25Db21wbGV4aXR5OyAgICAgICAgIC8q
IENvbXBsZXhpdHkgbGV2ZWwgZm9yIHBpdGNoIGVzdGltYXRvciAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgIHBpdGNoRXN0aW1h
dGlvbkxQQ09yZGVyOyAgICAgICAgICAgLyogV2hpdGVuaW5nIGZpbHRlciBvcmRlciBmb3IgcGl0
Y2ggZXN0aW1hdG9yICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAg
ICAgICAgICAgICAgICAgcGl0Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNjsgICAgICAvKiBUaHJl
c2hvbGQgZm9yIHBpdGNoIGVzdGltYXRvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICBMVFBRdWFudExvd0NvbXBs
ZXhpdHk7ICAgICAgICAgICAgIC8qIEZsYWcgZm9yIGxvdyBjb21wbGV4aXR5IExUUCBxdWFudGl6
YXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgICAgIG11X0xUUF9ROTsgICAgICAgICAgICAgICAgICAgICAgICAgLyogUmF0ZS1kaXN0
b3J0aW9uIHRyYWRlb2ZmIGluIExUUCBxdWFudGl6YXRpb24gICAgICAgICAgICAgICAgICAgICAq
LwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgc3VtX2xvZ19nYWluX1E3OyAgICAg
ICAgICAgICAgICAgICAvKiBDdW11bGF0aXZlIG1heCBwcmVkaWN0aW9uIGdhaW4gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICAgICBOTFNGX01TVlFfU3Vydml2b3JzOyAgICAgICAgICAgICAgIC8qIE51bWJlciBvZiBzdXJ2
aXZvcnMgaW4gTkxTRiBNU1ZRICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAg
ICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgIGZpcnN0X2ZyYW1lX2FmdGVyX3Jlc2V0OyAg
ICAgICAgICAgLyogRmxhZyBmb3IgZGVhY3RpdmF0aW5nIE5MU0YgaW50ZXJwb2xhdGlvbiwgcGl0
Y2ggcHJlZGljdGlvbiAgICAgICAqLwpAQCAtMzAxLDYgKzMwMSw3IEBAIHR5cGVkZWYgc3RydWN0
IHsKICAgICAvKiBTdHVmZiB1c2VkIGZvciBQTEMgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgICAgbG9zc0NudDsKICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgcHJldlNp
Z25hbFR5cGU7CisgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2g7CiAKICAgICBz
aWxrX1BMQ19zdHJ1Y3Qgc1BMQzsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3N1bV9zcXJfc2hpZnQuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9zdW1fc3FyX3NoaWZ0LmMKaW5kZXggMTI5ZGYxOTFkOGRlZDRkODRlMDAzYWVhMzZkOThh
NTlhMzQ5ZGQ0Ny4uNGZkMGMzZDdkNTM2YzNiNWUzYmE1NDlkMTkwNDg4MzNkMDBiNGU2OSAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL3N1bV9zcXJfc2hpZnQuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvc3VtX3Nxcl9zaGlmdC5jCkBA
IC00MSw0MyArNDEsNDAgQEAgdm9pZCBzaWxrX3N1bV9zcXJfc2hpZnQoCiApCiB7CiAgICAgb3B1
c19pbnQgICBpLCBzaGZ0OwotICAgIG9wdXNfaW50MzIgbnJnX3RtcCwgbnJnOworICAgIG9wdXNf
dWludDMyIG5yZ190bXA7CisgICAgb3B1c19pbnQzMiBucmc7CiAKLSAgICBucmcgID0gMDsKLSAg
ICBzaGZ0ID0gMDsKLSAgICBsZW4tLTsKLSAgICBmb3IoIGkgPSAwOyBpIDwgbGVuOyBpICs9IDIg
KSB7Ci0gICAgICAgIG5yZyA9IHNpbGtfU01MQUJCX292Zmx3KCBucmcsIHhbIGkgXSwgeFsgaSBd
ICk7Ci0gICAgICAgIG5yZyA9IHNpbGtfU01MQUJCX292Zmx3KCBucmcsIHhbIGkgKyAxIF0sIHhb
IGkgKyAxIF0gKTsKLSAgICAgICAgaWYoIG5yZyA8IDAgKSB7Ci0gICAgICAgICAgICAvKiBTY2Fs
ZSBkb3duICovCi0gICAgICAgICAgICBucmcgPSAob3B1c19pbnQzMilzaWxrX1JTSElGVF91aW50
KCAob3B1c191aW50MzIpbnJnLCAyICk7Ci0gICAgICAgICAgICBzaGZ0ID0gMjsKLSAgICAgICAg
ICAgIGkrPTI7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQorICAgIC8qIERvIGEgZmly
c3QgcnVuIHdpdGggdGhlIG1heGltdW0gc2hpZnQgd2UgY291bGQgaGF2ZS4gKi8KKyAgICBzaGZ0
ID0gMzEtc2lsa19DTFozMihsZW4pOworICAgIC8qIExldCdzIGJlIGNvbnNlcnZhdGl2ZSB3aXRo
IHJvdW5kaW5nIGFuZCBzdGFydCB3aXRoIG5yZz1sZW4uICovCisgICAgbnJnICA9IGxlbjsKKyAg
ICBmb3IoIGkgPSAwOyBpIDwgbGVuIC0gMTsgaSArPSAyICkgeworICAgICAgICBucmdfdG1wID0g
c2lsa19TTVVMQkIoIHhbIGkgXSwgeFsgaSBdICk7CisgICAgICAgIG5yZ190bXAgPSBzaWxrX1NN
TEFCQl9vdmZsdyggbnJnX3RtcCwgeFsgaSArIDEgXSwgeFsgaSArIDEgXSApOworICAgICAgICBu
cmcgPSAob3B1c19pbnQzMilzaWxrX0FERF9SU0hJRlRfdWludCggbnJnLCBucmdfdG1wLCBzaGZ0
ICk7CiAgICAgfQotICAgIGZvciggOyBpIDwgbGVuOyBpICs9IDIgKSB7CisgICAgaWYoIGkgPCBs
ZW4gKSB7CisgICAgICAgIC8qIE9uZSBzYW1wbGUgbGVmdCB0byBwcm9jZXNzICovCisgICAgICAg
IG5yZ190bXAgPSBzaWxrX1NNVUxCQiggeFsgaSBdLCB4WyBpIF0gKTsKKyAgICAgICAgbnJnID0g
KG9wdXNfaW50MzIpc2lsa19BRERfUlNISUZUX3VpbnQoIG5yZywgbnJnX3RtcCwgc2hmdCApOwor
ICAgIH0KKyAgICBzaWxrX2Fzc2VydCggbnJnID49IDAgKTsKKyAgICAvKiBNYWtlIHN1cmUgdGhl
IHJlc3VsdCB3aWxsIGZpdCBpbiBhIDMyLWJpdCBzaWduZWQgaW50ZWdlciB3aXRoIHR3byBiaXRz
CisgICAgICAgb2YgaGVhZHJvb20uICovCisgICAgc2hmdCA9IHNpbGtfbWF4XzMyKDAsIHNoZnQr
MyAtIHNpbGtfQ0xaMzIobnJnKSk7CisgICAgbnJnID0gMDsKKyAgICBmb3IoIGkgPSAwIDsgaSA8
IGxlbiAtIDE7IGkgKz0gMiApIHsKICAgICAgICAgbnJnX3RtcCA9IHNpbGtfU01VTEJCKCB4WyBp
IF0sIHhbIGkgXSApOwogICAgICAgICBucmdfdG1wID0gc2lsa19TTUxBQkJfb3ZmbHcoIG5yZ190
bXAsIHhbIGkgKyAxIF0sIHhbIGkgKyAxIF0gKTsKLSAgICAgICAgbnJnID0gKG9wdXNfaW50MzIp
c2lsa19BRERfUlNISUZUX3VpbnQoIG5yZywgKG9wdXNfdWludDMyKW5yZ190bXAsIHNoZnQgKTsK
LSAgICAgICAgaWYoIG5yZyA8IDAgKSB7Ci0gICAgICAgICAgICAvKiBTY2FsZSBkb3duICovCi0g
ICAgICAgICAgICBucmcgPSAob3B1c19pbnQzMilzaWxrX1JTSElGVF91aW50KCAob3B1c191aW50
MzIpbnJnLCAyICk7Ci0gICAgICAgICAgICBzaGZ0ICs9IDI7Ci0gICAgICAgIH0KKyAgICAgICAg
bnJnID0gKG9wdXNfaW50MzIpc2lsa19BRERfUlNISUZUX3VpbnQoIG5yZywgbnJnX3RtcCwgc2hm
dCApOwogICAgIH0KLSAgICBpZiggaSA9PSBsZW4gKSB7CisgICAgaWYoIGkgPCBsZW4gKSB7CiAg
ICAgICAgIC8qIE9uZSBzYW1wbGUgbGVmdCB0byBwcm9jZXNzICovCiAgICAgICAgIG5yZ190bXAg
PSBzaWxrX1NNVUxCQiggeFsgaSBdLCB4WyBpIF0gKTsKICAgICAgICAgbnJnID0gKG9wdXNfaW50
MzIpc2lsa19BRERfUlNISUZUX3VpbnQoIG5yZywgbnJnX3RtcCwgc2hmdCApOwogICAgIH0KIAot
ICAgIC8qIE1ha2Ugc3VyZSB0byBoYXZlIGF0IGxlYXN0IG9uZSBleHRyYSBsZWFkaW5nIHplcm8g
KHR3byBsZWFkaW5nIHplcm9zIGluIHRvdGFsKSAqLwotICAgIGlmKCBucmcgJiAweEMwMDAwMDAw
ICkgewotICAgICAgICBucmcgPSBzaWxrX1JTSElGVF91aW50KCAob3B1c191aW50MzIpbnJnLCAy
ICk7Ci0gICAgICAgIHNoZnQgKz0gMjsKLSAgICB9CisgICAgc2lsa19hc3NlcnQoIG5yZyA+PSAw
ICk7CiAKICAgICAvKiBPdXRwdXQgYXJndW1lbnRzICovCiAgICAgKnNoaWZ0ICA9IHNoZnQ7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvdGFibGVzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzLmgKaW5kZXggN2ZlYTZmZGEzOWRh
NDYzMzg0YzMxNWQ1YjY1MmMzMzUyZjY5NjE4Mi4uOGIwMzgwZWViMDk4NGMxN2IzODI1NjcyOTc4
NTFjMmQ1YTI3MGFhZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxlcy5oCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXMu
aApAQCAtNzYsMTAgKzc2LDggQEAgZXh0ZXJuIGNvbnN0IG9wdXNfdWludDggIHNpbGtfTkxTRl9F
WFRfaUNERlsgNyBdOwogZXh0ZXJuIGNvbnN0IG9wdXNfdWludDggIHNpbGtfTFRQX3Blcl9pbmRl
eF9pQ0RGWyAzIF07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qICAgMyAqLwogZXh0ZXJuIGNvbnN0IG9wdXNfdWludDggICogY29uc3Qgc2lsa19MVFBfZ2Fp
bl9pQ0RGX3B0cnNbIE5CX0xUUF9DQktTIF07ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
ICAgMyAqLwogZXh0ZXJuIGNvbnN0IG9wdXNfdWludDggICogY29uc3Qgc2lsa19MVFBfZ2Fpbl9C
SVRTX1E1X3B0cnNbIE5CX0xUUF9DQktTIF07ICAgICAgICAgICAgICAgICAgICAgICAgIC8qICAg
MyAqLwotZXh0ZXJuIGNvbnN0IG9wdXNfaW50MTYgIHNpbGtfTFRQX2dhaW5fbWlkZGxlX2F2Z19S
RF9RMTQ7CiBleHRlcm4gY29uc3Qgb3B1c19pbnQ4ICAgKiBjb25zdCBzaWxrX0xUUF92cV9wdHJz
X1E3WyBOQl9MVFBfQ0JLUyBdOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogMTY4
ICovCiBleHRlcm4gY29uc3Qgb3B1c191aW50OCAgKiBjb25zdCBzaWxrX0xUUF92cV9nYWluX3B0
cnNfUTdbTkJfTFRQX0NCS1NdOwotCiBleHRlcm4gY29uc3Qgb3B1c19pbnQ4ICAgc2lsa19MVFBf
dnFfc2l6ZXNbIE5CX0xUUF9DQktTIF07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogICAzICovCiAKIGV4dGVybiBjb25zdCBvcHVzX3VpbnQ4ICBzaWxrX0xUUHNj
YWxlX2lDREZbIDMgXTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiAgIDQgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXNfTFRQLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFi
bGVzX0xUUC5jCmluZGV4IDBlNmEwMjU0ZDVkYjU1MjYyY2VjZTAyNjk4ZDUzZWI0YjEzMjdkNmIu
LjVlMTJjODY0M2U1YjBmMTVjMWM5NDg2YTg4NDVjODMzZjFkZGYzNDEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay90YWJsZXNfTFRQLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxlc19MVFAuYwpAQCAtNTEsOCArNTEsNiBAQCBz
dGF0aWMgY29uc3Qgb3B1c191aW50OCBzaWxrX0xUUF9nYWluX2lDREZfMlszMl0gPSB7CiAgICAg
ICAgIDI0LCAgICAgMjAsICAgICAxNiwgICAgIDEyLCAgICAgIDksICAgICAgNSwgICAgICAyLCAg
ICAgIDAKIH07CiAKLWNvbnN0IG9wdXNfaW50MTYgc2lsa19MVFBfZ2Fpbl9taWRkbGVfYXZnX1JE
X1ExNCA9IDEyMzA0OwotCiBzdGF0aWMgY29uc3Qgb3B1c191aW50OCBzaWxrX0xUUF9nYWluX0JJ
VFNfUTVfMFs4XSA9IHsKICAgICAgICAgMTUsICAgIDEzMSwgICAgMTM4LCAgICAxMzgsICAgIDE1
NSwgICAgMTU1LCAgICAxNzMsICAgIDE3MwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXNfTkxT
Rl9DQl9OQl9NQi5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxlc19OTFNGX0NCX05CX01CLmMKaW5kZXggOGM1OWQyMDdh
YTAwODA4NjU3YzY2MmI2NTg4ZDFmY2ZjM2FjNzk1Yi4uMTk1ZDViOTViZDE1NGNjNGE5NGYyZWU2
M2I3Njg4YTVlYzA2NzFmNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxlc19OTFNGX0NCX05CX01CLmMK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL3RhYmxlc19OTFNGX0NCX05CX01CLmMKQEAgLTc0LDYgKzc0LDQxIEBAIHN0YXRp
YyBjb25zdCBvcHVzX3VpbnQ4IHNpbGtfTkxTRl9DQjFfTkJfTUJfUThbIDMyMCBdID0gewogICAg
ICAgICA2NCwgICAgIDg0LCAgICAxMDQsICAgIDExOCwgICAgMTU2LCAgICAxNzcsICAgIDIwMSwg
ICAgMjMwCiB9OwogCitzdGF0aWMgY29uc3Qgb3B1c19pbnQxNiBzaWxrX05MU0ZfQ0IxX1dnaHRf
UTlbIDMyMCBdID0geworICAgICAyODk3LCAyMzE0LCAyMzE0LCAyMzE0LCAyMjg3LCAyMjg3LCAy
MzE0LCAyMzAwLCAyMzI3LCAyMjg3LAorICAgICAyODg4LCAyNTgwLCAyMzk0LCAyMzY3LCAyMzE0
LCAyMjc0LCAyMjc0LCAyMjc0LCAyMjc0LCAyMTk0LAorICAgICAyNDg3LCAyMzQwLCAyMzQwLCAy
MzE0LCAyMzE0LCAyMzE0LCAyMzQwLCAyMzQwLCAyMzY3LCAyMzU0LAorICAgICAzMjE2LCAyNzY2
LCAyMzQwLCAyMzQwLCAyMzE0LCAyMjc0LCAyMjIxLCAyMjA3LCAyMjYxLCAyMTk0LAorICAgICAy
NDYwLCAyNDc0LCAyMzY3LCAyMzk0LCAyMzk0LCAyMzk0LCAyMzk0LCAyMzY3LCAyNDA3LCAyMzE0
LAorICAgICAzNDc5LCAzMDU2LCAyMTI3LCAyMjA3LCAyMjc0LCAyMjc0LCAyMjc0LCAyMjg3LCAy
MzE0LCAyMjYxLAorICAgICAzMjgyLCAzMTQxLCAyNTgwLCAyMzk0LCAyMjQ3LCAyMjIxLCAyMjA3
LCAyMTk0LCAyMTk0LCAyMTE0LAorICAgICA0MDk2LCAzODQ1LCAyMjIxLCAyNjIwLCAyNjIwLCAy
NDA3LCAyMzE0LCAyMzk0LCAyMzY3LCAyMDc0LAorICAgICAzMTc4LCAzMjQ0LCAyMzY3LCAyMjIx
LCAyNTUzLCAyNDM0LCAyMzQwLCAyMzE0LCAyMTY3LCAyMjIxLAorICAgICAzMzM4LCAzNDg4LCAy
NzI2LCAyMTk0LCAyMjYxLCAyNDYwLCAyMzU0LCAyMzY3LCAyMjA3LCAyMTAxLAorICAgICAyMzU0
LCAyNDIwLCAyMzI3LCAyMzY3LCAyMzk0LCAyNDIwLCAyNDIwLCAyNDIwLCAyNDYwLCAyMzY3LAor
ICAgICAzNzc5LCAzNjI5LCAyNDM0LCAyNTI3LCAyMzY3LCAyMjc0LCAyMjc0LCAyMzAwLCAyMjA3
LCAyMDQ4LAorICAgICAzMjU0LCAzMjI1LCAyNzEzLCAyODQ2LCAyNDQ3LCAyMzI3LCAyMzAwLCAy
MzAwLCAyMjc0LCAyMTI3LAorICAgICAzMjYzLCAzMzAwLCAyNzUzLCAyODA2LCAyNDQ3LCAyMjYx
LCAyMjYxLCAyMjQ3LCAyMTI3LCAyMTAxLAorICAgICAyODczLCAyOTgxLCAyNjMzLCAyMzY3LCAy
NDA3LCAyMzU0LCAyMTk0LCAyMjQ3LCAyMjQ3LCAyMTE0LAorICAgICAzMjI1LCAzMTk3LCAyNjMz
LCAyNTgwLCAyMjc0LCAyMTgxLCAyMjQ3LCAyMjIxLCAyMjIxLCAyMTQxLAorICAgICAzMTc4LCAz
MzEwLCAyNzQwLCAyNDA3LCAyMjc0LCAyMjc0LCAyMjc0LCAyMjg3LCAyMTk0LCAyMTE0LAorICAg
ICAzMTQxLCAzMjcyLCAyNDYwLCAyMDYxLCAyMjg3LCAyNTAwLCAyMzY3LCAyNDg3LCAyNDM0LCAy
MTgxLAorICAgICAzNTA3LCAzMjgyLCAyMzE0LCAyNzAwLCAyNjQ3LCAyNDc0LCAyMzY3LCAyMzk0
LCAyMzQwLCAyMTI3LAorICAgICAzNDIzLCAzNTM1LCAzMDM4LCAzMDU2LCAyMzAwLCAxOTUwLCAy
MjIxLCAyMjc0LCAyMjc0LCAyMjc0LAorICAgICAzNDA0LCAzMzY2LCAyMDg3LCAyNjg3LCAyODcz
LCAyMzU0LCAyNDIwLCAyMjc0LCAyNDc0LCAyNTQwLAorICAgICAzNzYwLCAzNDg4LCAxOTUwLCAy
NjYwLCAyODk3LCAyNTI3LCAyMzk0LCAyMzY3LCAyNDYwLCAyMjYxLAorICAgICAzMDI4LCAzMjcy
LCAyNzQwLCAyODg4LCAyNzQwLCAyMTU0LCAyMTI3LCAyMjg3LCAyMjM0LCAyMjQ3LAorICAgICAz
Njk1LCAzNjU3LCAyMDI1LCAxOTY5LCAyNjYwLCAyNzAwLCAyNTgwLCAyNTAwLCAyMzI3LCAyMzY3
LAorICAgICAzMjA3LCAzNDEzLCAyMzU0LCAyMDc0LCAyODg4LCAyODg4LCAyMzQwLCAyNDg3LCAy
MjQ3LCAyMTY3LAorICAgICAzMzM4LCAzMzY2LCAyODQ2LCAyNzgwLCAyMzI3LCAyMTU0LCAyMjc0
LCAyMjg3LCAyMTE0LCAyMDYxLAorICAgICAyMzI3LCAyMzAwLCAyMTgxLCAyMTY3LCAyMTgxLCAy
MzY3LCAyNjMzLCAyNzAwLCAyNzAwLCAyNTUzLAorICAgICAyNDA3LCAyNDM0LCAyMjIxLCAyMjYx
LCAyMjIxLCAyMjIxLCAyMzQwLCAyNDIwLCAyNjA3LCAyNzAwLAorICAgICAzMDM4LCAzMjQ0LCAy
ODA2LCAyODg4LCAyNDc0LCAyMDc0LCAyMzAwLCAyMzE0LCAyMzU0LCAyMzgwLAorICAgICAyMjIx
LCAyMTU0LCAyMTI3LCAyMjg3LCAyNTAwLCAyNzkzLCAyNzkzLCAyNjIwLCAyNTgwLCAyMzY3LAor
ICAgICAzNjc2LCAzNzEzLCAyMjM0LCAxODM4LCAyMTgxLCAyNzUzLCAyNzI2LCAyNjczLCAyNTEz
LCAyMjA3LAorICAgICAyNzkzLCAzMTYwLCAyNzI2LCAyNTUzLCAyODQ2LCAyNTEzLCAyMTgxLCAy
Mzk0LCAyMjIxLCAyMTgxCit9OworCiBzdGF0aWMgY29uc3Qgb3B1c191aW50OCBzaWxrX05MU0Zf
Q0IxX2lDREZfTkJfTUJbIDY0IF0gPSB7CiAgICAgICAgMjEyLCAgICAxNzgsICAgIDE0OCwgICAg
MTI5LCAgICAxMDgsICAgICA5NiwgICAgIDg1LCAgICAgODIsCiAgICAgICAgIDc5LCAgICAgNzcs
ICAgICA2MSwgICAgIDU5LCAgICAgNTcsICAgICA1NiwgICAgIDUxLCAgICAgNDksCkBAIC0xNTAs
NiArMTg1LDcgQEAgY29uc3Qgc2lsa19OTFNGX0NCX3N0cnVjdCBzaWxrX05MU0ZfQ0JfTkJfTUIg
PQogICAgIFNJTEtfRklYX0NPTlNUKCAwLjE4LCAxNiApLAogICAgIFNJTEtfRklYX0NPTlNUKCAx
LjAgLyAwLjE4LCA2ICksCiAgICAgc2lsa19OTFNGX0NCMV9OQl9NQl9ROCwKKyAgICBzaWxrX05M
U0ZfQ0IxX1dnaHRfUTksCiAgICAgc2lsa19OTFNGX0NCMV9pQ0RGX05CX01CLAogICAgIHNpbGtf
TkxTRl9QUkVEX05CX01CX1E4LAogICAgIHNpbGtfTkxTRl9DQjJfU0VMRUNUX05CX01CLApkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL3RhYmxlc19OTFNGX0NCX1dCLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX05MU0ZfQ0JfV0Iu
YwppbmRleCA1MGFmODdlYjJlMWMxZDc0Mjg2MjY5MDc0YjVkOGEwOTI2MjAyN2MzLi41Y2M5ZjU3
YmZmY2E3Nzg4NmRlODc2NGQzMmQ2MjIxM2RhNWRhZmQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVz
X05MU0ZfQ0JfV0IuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX05MU0ZfQ0JfV0IuYwpAQCAtOTgsNiArOTgs
NDEgQEAgc3RhdGljIGNvbnN0IG9wdXNfdWludDggc2lsa19OTFNGX0NCMV9XQl9ROFsgNTEyIF0g
PSB7CiAgICAgICAgMTEwLCAgICAxMTksICAgIDEyOSwgICAgMTQxLCAgICAxNzUsICAgIDE5OCwg
ICAgMjE4LCAgICAyMzcKIH07CiAKK3N0YXRpYyBjb25zdCBvcHVzX2ludDE2IHNpbGtfTkxTRl9D
QjFfV0JfV2dodF9ROVsgNTEyIF0gPSB7CisgICAgIDM2NTcsIDI5MjUsIDI5MjUsIDI5MjUsIDI5
MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5NjMsIDI5NjMs
IDI5MjUsIDI4NDYsCisgICAgIDMyMTYsIDMwODUsIDI5NzIsIDMwNTYsIDMwNTYsIDMwMTAsIDMw
MTAsIDMwMTAsIDI5NjMsIDI5NjMsIDMwMTAsIDI5NzIsIDI4ODgsIDI4NDYsIDI4NDYsIDI3MjYs
CisgICAgIDM5MjAsIDQwMTQsIDI5ODEsIDMyMDcsIDMyMDcsIDI5MzQsIDMwNTYsIDI4NDYsIDMx
MjIsIDMyNDQsIDI5MjUsIDI4NDYsIDI2MjAsIDI1NTMsIDI3ODAsIDI5MjUsCisgICAgIDM1MTYs
IDMxOTcsIDMwMTAsIDMxMDMsIDMwMTksIDI4ODgsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI4
ODgsIDI4ODgsIDI4ODgsIDI4ODgsIDI4ODgsIDI3NTMsCisgICAgIDUwNTQsIDUwNTQsIDI5MzQs
IDM1NzMsIDMzODUsIDMwNTYsIDMwODUsIDI3OTMsIDMxNjAsIDMxNjAsIDI5NzIsIDI4NDYsIDI1
MTMsIDI1NDAsIDI3NTMsIDI4ODgsCisgICAgIDQ0MjgsIDQxNDksIDI3MDAsIDI3NTMsIDI5NzIs
IDMwMTAsIDI5MjUsIDI4NDYsIDI5ODEsIDMwMTksIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI4
ODgsIDI3MjYsCisgICAgIDM2MjAsIDMwMTksIDI5NzIsIDMwNTYsIDMwNTYsIDI4NzMsIDI4MDYs
IDMwNTYsIDMyMTYsIDMwNDcsIDI5ODEsIDMyOTEsIDMyOTEsIDI5ODEsIDMzMTAsIDI5OTEsCisg
ICAgIDUyMjcsIDUwMTQsIDI1NDAsIDMzMzgsIDM1MjYsIDMzODUsIDMxOTcsIDMwOTQsIDMzNzYs
IDI5ODEsIDI3MDAsIDI2NDcsIDI2ODcsIDI3OTMsIDI4NDYsIDI2NzMsCisgICAgIDUwODEsIDUx
NzQsIDQ2MTUsIDQ0MjgsIDI0NjAsIDI4OTcsIDMwNDcsIDMyMDcsIDMxNjksIDI2ODcsIDI3NDAs
IDI4ODgsIDI4NDYsIDI3OTMsIDI4NDYsIDI3MDAsCisgICAgIDMxMjIsIDI4ODgsIDI5NjMsIDI5
MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5NjMsIDI5NjMsIDI5NjMsIDI5NjMsIDI5MjUsIDI5MjUs
IDI5NjMsIDI5NjMsIDI5NjMsCisgICAgIDQyMDIsIDMyMDcsIDI5ODEsIDMxMDMsIDMwMTAsIDI4
ODgsIDI4ODgsIDI5MjUsIDI5NzIsIDI4NzMsIDI5MTYsIDMwMTksIDI5NzIsIDMwMTAsIDMxOTcs
IDI4NzMsCisgICAgIDM3NjAsIDM3NjAsIDMyNDQsIDMxMDMsIDI5ODEsIDI4ODgsIDI5MjUsIDI4
ODgsIDI5NzIsIDI5MzQsIDI3OTMsIDI3OTMsIDI4NDYsIDI4ODgsIDI4ODgsIDI2NjAsCisgICAg
IDM4NTQsIDQwMTQsIDMyMDcsIDMxMjIsIDMyNDQsIDI5MzQsIDMwNDcsIDI5NjMsIDI5NjMsIDMw
ODUsIDI4NDYsIDI3OTMsIDI3OTMsIDI3OTMsIDI3OTMsIDI1ODAsCisgICAgIDM4NDUsIDQwODAs
IDMzNTcsIDM1MTYsIDMwOTQsIDI3NDAsIDMwMTAsIDI5MzQsIDMxMjIsIDMwODUsIDI4NDYsIDI4
NDYsIDI2NDcsIDI2NDcsIDI4NDYsIDI4MDYsCisgICAgIDUxNDcsIDQ4OTQsIDMyMjUsIDM4NDUs
IDM0NDEsIDMxNjksIDI4OTcsIDM0MTMsIDM0NTEsIDI3MDAsIDI1ODAsIDI2NzMsIDI3NDAsIDI4
NDYsIDI4MDYsIDI3NTMsCisgICAgIDQxMDksIDM3ODksIDMyOTEsIDMxNjAsIDI5MjUsIDI4ODgs
IDI4ODgsIDI5MjUsIDI3OTMsIDI3NDAsIDI3OTMsIDI3NDAsIDI3OTMsIDI4NDYsIDI4ODgsIDI4
MDYsCisgICAgIDUwODEsIDUwNTQsIDMwNDcsIDM1NDUsIDMyNDQsIDMwNTYsIDMwODUsIDI5NDQs
IDMxMDMsIDI4OTcsIDI3NDAsIDI3NDAsIDI3NDAsIDI4NDYsIDI3OTMsIDI2MjAsCisgICAgIDQz
MDksIDQzMDksIDI4NjAsIDI1MjcsIDMyMDcsIDMzNzYsIDMzNzYsIDMwNzUsIDMwNzUsIDMzNzYs
IDMwNTYsIDI4NDYsIDI2NDcsIDI1ODAsIDI3MjYsIDI3NTMsCisgICAgIDMwNTYsIDI5MTYsIDI4
MDYsIDI4ODgsIDI3NDAsIDI2ODcsIDI4OTcsIDMxMDMsIDMxNTAsIDMxNTAsIDMyMTYsIDMxNjks
IDMwNTYsIDMwMTAsIDI5NjMsIDI4NDYsCisgICAgIDQzNzUsIDM4ODIsIDI5MjUsIDI4ODgsIDI4
NDYsIDI4ODgsIDI4NDYsIDI4NDYsIDI4ODgsIDI4ODgsIDI4ODgsIDI4NDYsIDI4ODgsIDI5MjUs
IDI4ODgsIDI4NDYsCisgICAgIDI5ODEsIDI5MTYsIDI5MTYsIDI5ODEsIDI5ODEsIDMwNTYsIDMx
MjIsIDMyMTYsIDMxNTAsIDMwNTYsIDMwMTAsIDI5NzIsIDI5NzIsIDI5NzIsIDI5MjUsIDI3NDAs
CisgICAgIDQyMjksIDQxNDksIDMzMTAsIDMzNDcsIDI5MjUsIDI5NjMsIDI4ODgsIDI5ODEsIDI5
ODEsIDI4NDYsIDI3OTMsIDI3NDAsIDI4NDYsIDI4NDYsIDI4NDYsIDI3OTMsCisgICAgIDQwODAs
IDQwMTQsIDMxMDMsIDMwMTAsIDI5MjUsIDI5MjUsIDI5MjUsIDI4ODgsIDI5MjUsIDI5MjUsIDI4
NDYsIDI4NDYsIDI4NDYsIDI3OTMsIDI4ODgsIDI3ODAsCisgICAgIDQ2MTUsIDQ1NzUsIDMxNjks
IDM0NDEsIDMyMDcsIDI5ODEsIDI4OTcsIDMwMzgsIDMxMjIsIDI3NDAsIDI2ODcsIDI2ODcsIDI2
ODcsIDI3NDAsIDI3OTMsIDI3MDAsCisgICAgIDQxNDksIDQyNjksIDM3ODksIDM2NTcsIDI3MjYs
IDI3ODAsIDI4ODgsIDI4ODgsIDMwMTAsIDI5NzIsIDI5MjUsIDI4NDYsIDI2ODcsIDI2ODcsIDI3
OTMsIDI4ODgsCisgICAgIDQyMTUsIDM1NTQsIDI3NTMsIDI4NDYsIDI4NDYsIDI4ODgsIDI4ODgs
IDI4ODgsIDI5MjUsIDI5MjUsIDI4ODgsIDI5MjUsIDI5MjUsIDI5MjUsIDI5NjMsIDI4ODgsCisg
ICAgIDUxNzQsIDQ5MjEsIDIyNjEsIDM0MzIsIDM3ODksIDM0NzksIDMzNDcsIDI4NDYsIDMzMTAs
IDM0NzksIDMxNTAsIDI4OTcsIDI0NjAsIDI0ODcsIDI3NTMsIDI5MjUsCisgICAgIDM0NTEsIDM2
ODUsIDMxMjIsIDMxOTcsIDMzNTcsIDMwNDcsIDMyMDcsIDMyMDcsIDI5ODEsIDMyMTYsIDMwODUs
IDI5MjUsIDI5MjUsIDI2ODcsIDI1NDAsIDI0MzQsCisgICAgIDI5ODEsIDMwMTAsIDI3OTMsIDI3
OTMsIDI3NDAsIDI3OTMsIDI4NDYsIDI5NzIsIDMwNTYsIDMxMDMsIDMxNTAsIDMxNTAsIDMxNTAs
IDMxMDMsIDMwMTAsIDMwMTAsCisgICAgIDI5NDQsIDI4NzMsIDI2ODcsIDI3MjYsIDI3ODAsIDMw
MTAsIDM0MzIsIDM1NDUsIDMzNTcsIDMyNDQsIDMwNTYsIDMwMTAsIDI5NjMsIDI5MjUsIDI4ODgs
IDI4NDYsCisgICAgIDMwMTksIDI5NDQsIDI4OTcsIDMwMTAsIDMwMTAsIDI5NzIsIDMwMTksIDMx
MDMsIDMwNTYsIDMwNTYsIDMwMTAsIDI4ODgsIDI4NDYsIDI5MjUsIDI5MjUsIDI4ODgsCisgICAg
IDM5MjAsIDM5NjcsIDMwMTAsIDMxOTcsIDMzNTcsIDMyMTYsIDMyOTEsIDMyOTEsIDM0NzksIDM3
MDQsIDM0NDEsIDI3MjYsIDIxODEsIDI0NjAsIDI1ODAsIDI2MDcKK307CisKIHN0YXRpYyBjb25z
dCBvcHVzX3VpbnQ4IHNpbGtfTkxTRl9DQjFfaUNERl9XQlsgNjQgXSA9IHsKICAgICAgICAyMjUs
ICAgIDIwNCwgICAgMjAxLCAgICAxODQsICAgIDE4MywgICAgMTc1LCAgICAxNTgsICAgIDE1NCwK
ICAgICAgICAxNTMsICAgIDEzNSwgICAgMTE5LCAgICAxMTUsICAgIDExMywgICAgMTEwLCAgICAx
MDksICAgICA5OSwKQEAgLTE4OCw2ICsyMjMsNyBAQCBjb25zdCBzaWxrX05MU0ZfQ0Jfc3RydWN0
IHNpbGtfTkxTRl9DQl9XQiA9CiAgICAgU0lMS19GSVhfQ09OU1QoIDAuMTUsIDE2ICksCiAgICAg
U0lMS19GSVhfQ09OU1QoIDEuMCAvIDAuMTUsIDYgKSwKICAgICBzaWxrX05MU0ZfQ0IxX1dCX1E4
LAorICAgIHNpbGtfTkxTRl9DQjFfV0JfV2dodF9ROSwKICAgICBzaWxrX05MU0ZfQ0IxX2lDREZf
V0IsCiAgICAgc2lsa19OTFNGX1BSRURfV0JfUTgsCiAgICAgc2lsa19OTFNGX0NCMl9TRUxFQ1Rf
V0IsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvdGVzdHMvdGVzdF91bml0X0xQQ19pbnZfcHJlZF9nYWluLmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvdGVzdHMvdGVzdF91bml0X0xQQ19pbnZfcHJlZF9nYWluLmMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjcw
NjdjZWFkNzAyOTdmZTc3MzYxYWU1NTVhYTliYzMwNGI4N2ZmNgotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay90ZXN0cy90ZXN0X3VuaXRfTFBDX2ludl9wcmVkX2dhaW4uYwpAQCAtMCwwICsxLDEyOSBA
QAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqCitDb3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4sIEplYW4t
TWFyYyBWYWxpbgorUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwKK3RoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CistIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Citub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1l
IG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMg
b2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21v
dGUKK3Byb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3Igd3JpdHRlbgorcGVybWlzc2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQorSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgor
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCitBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KKworI2lmZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIK
KyNlbmRpZgorCisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNs
dWRlICJjZWx0L3N0YWNrX2FsbG9jLmgiCisjaW5jbHVkZSAiY3B1X3N1cHBvcnQuaCIKKyNpbmNs
dWRlICJTaWdQcm9jX0ZJWC5oIgorCisvKiBDb21wdXRlcyB0aGUgaW1wdWxzZSByZXNwb25zZSBv
ZiB0aGUgZmlsdGVyIHNvIHdlCisgICBjYW4gY2F0Y2ggZmlsdGVycyB0aGF0IGFyZSBkZWZpbml0
ZWx5IHVuc3RhYmxlLiBTb21lCisgICB1bnN0YWJsZSBmaWx0ZXJzIG1heSBiZSBjbGFzc2lmaWVk
IGFzIHN0YWJsZSwgYnV0IG5vdAorICAgdGhlIG90aGVyIHdheSBhcm91bmQuICovCitpbnQgY2hl
Y2tfc3RhYmlsaXR5KG9wdXNfaW50MTYgKkFfUTEyLCBpbnQgb3JkZXIpIHsKKyAgICBpbnQgaTsK
KyAgICBpbnQgajsKKyAgICBpbnQgc3VtX2EsIHN1bV9hYnNfYTsKKyAgICBzdW1fYSA9IHN1bV9h
YnNfYSA9IDA7CisgICAgZm9yKCBqID0gMDsgaiA8IG9yZGVyOyBqKysgKSB7CisgICAgICAgIHN1
bV9hICs9IEFfUTEyWyBqIF07CisgICAgICAgIHN1bV9hYnNfYSArPSBzaWxrX2FicyggQV9RMTJb
IGogXSApOworICAgIH0KKyAgICAvKiBDaGVjayBEQyBzdGFiaWxpdHkuICovCisgICAgaWYoIHN1
bV9hID49IDQwOTYgKSB7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICAvKiBJZiB0aGUg
c3VtIG9mIGFic29sdXRlIHZhbHVlcyBpcyBsZXNzIHRoYW4gMSwgdGhlIGZpbHRlcgorICAgICAg
IGhhcyB0byBiZSBzdGFibGUuICovCisgICAgaWYoIHN1bV9hYnNfYSA8IDQwOTYgKSB7CisgICAg
ICAgIHJldHVybiAxOworICAgIH0KKyAgICBkb3VibGUgeVtTSUxLX01BWF9PUkRFUl9MUENdID0g
ezB9OworICAgIHlbMF0gPSAxOworICAgIGZvciggaSA9IDA7IGkgPCAxMDAwMDsgaSsrICkgewor
ICAgICAgICBkb3VibGUgc3VtID0gMDsKKyAgICAgICAgZm9yKCBqID0gMDsgaiA8IG9yZGVyOyBq
KysgKSB7CisgICAgICAgICAgICBzdW0gKz0geVsgaiBdKkFfUTEyWyBqIF07CisgICAgICAgIH0K
KyAgICAgICAgZm9yKCBqID0gb3JkZXIgLSAxOyBqID4gMDsgai0tICkgeworICAgICAgICAgICAg
eVsgaiBdID0geVsgaiAtIDEgXTsKKyAgICAgICAgfQorICAgICAgICB5WyAwIF0gPSBzdW0qKDEu
LzQwOTYpOworICAgICAgICAvKiBJZiBpbXB1bHNlIHJlc3BvbnNlIHJlYWNoZXMgKy8tIDEwMDAw
LCB0aGUgZmlsdGVyCisgICAgICAgICAgIGlzIGRlZmluaXRlbHkgdW5zdGFibGUuICovCisgICAg
ICAgIGlmKCAhKHlbIDAgXSA8IDEwMDAwICYmIHlbIDAgXSA+IC0xMDAwMCkgKSB7CisgICAgICAg
ICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICAvKiBUZXN0IGV2ZXJ5IDggc2FtcGxl
IGZvciBsb3cgYW1wbGl0dWRlLiAqLworICAgICAgICBpZiggKCBpICYgMHg3ICkgPT0gMCApIHsK
KyAgICAgICAgICAgIGRvdWJsZSBhbXAgPSAwOworICAgICAgICAgICAgZm9yKCBqID0gMDsgaiA8
IG9yZGVyOyBqKysgKSB7CisgICAgICAgICAgICAgICAgYW1wICs9IGZhYnMoeVtqXSk7CisgICAg
ICAgICAgICB9CisgICAgICAgICAgICBpZiggYW1wIDwgMC4wMDAwMSApIHsKKyAgICAgICAgICAg
ICAgICByZXR1cm4gMTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1
cm4gMTsKK30KKworaW50IG1haW4odm9pZCkgeworICAgIGNvbnN0IGludCBhcmNoID0gb3B1c19z
ZWxlY3RfYXJjaCgpOworICAgIC8qIFNldCB0byAxMDAwMCBzbyBhbGwgYnJhbmNoZXMgaW4gQyBm
dW5jdGlvbiBhcmUgdHJpZ2dlcmVkICovCisgICAgY29uc3QgaW50IGxvb3BfbnVtID0gMTAwMDA7
CisgICAgaW50IGNvdW50ID0gMDsKKyAgICBBTExPQ19TVEFDSzsKKworICAgIC8qIEZJWE1FOiBN
YWtlIHRoZSBzZWVkIHJhbmRvbSAod2l0aCBvcHRpb24gdG8gc2V0IGl0IGV4cGxpY2l0bHkpCisg
ICAgICAgc28gd2UgZ2V0IHdpZGVyIGNvdmVyYWdlLiAqLworICAgIHNyYW5kKDApOworCisgICAg
cHJpbnRmKCJUZXN0aW5nIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKCkgb3B0aW1pemF0aW9u
IC4uLlxuIik7CisgICAgZm9yKCBjb3VudCA9IDA7IGNvdW50IDwgbG9vcF9udW07IGNvdW50Kysg
KSB7CisgICAgICAgIHVuc2lnbmVkIGludCBpOworICAgICAgICBvcHVzX2ludCAgICAgb3JkZXI7
CisgICAgICAgIHVuc2lnbmVkIGludCBzaGlmdDsKKyAgICAgICAgb3B1c19pbnQxNiAgIEFfUTEy
WyBTSUxLX01BWF9PUkRFUl9MUEMgXTsKKyAgICAgICAgb3B1c19pbnQzMiBnYWluOworCisgICAg
ICAgIGZvciggb3JkZXIgPSAyOyBvcmRlciA8PSBTSUxLX01BWF9PUkRFUl9MUEM7IG9yZGVyICs9
IDIgKSB7IC8qIG9yZGVyIG11c3QgYmUgZXZlbi4gKi8KKyAgICAgICAgICAgIGZvciggc2hpZnQg
PSAwOyBzaGlmdCA8IDE2OyBzaGlmdCsrICkgeyAvKiBEaWZmZXJlbnQgZHluYW1pYyByYW5nZS4g
Ki8KKyAgICAgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgU0lMS19NQVhfT1JERVJfTFBDOyBp
KysgKSB7CisgICAgICAgICAgICAgICAgICAgIEFfUTEyW2ldID0gKChvcHVzX2ludDE2KXJhbmQo
KSkgPj4gc2hpZnQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGdhaW4gPSBz
aWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbihBX1ExMiwgb3JkZXIsIGFyY2gpOworICAgICAgICAg
ICAgICAgIC8qIExvb2sgZm9yIGZpbHRlcnMgdGhhdCBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fp
bigpIHRoaW5rcyBhcmUKKyAgICAgICAgICAgICAgICAgICBzdGFibGUgYnV0IGRlZmluaXRlbHkg
YXJlbid0LiAqLworICAgICAgICAgICAgICAgIGlmKCBnYWluICE9IDAgJiYgIWNoZWNrX3N0YWJp
bGl0eShBX1ExMiwgb3JkZXIpICkgeworICAgICAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVy
ciwgIioqTG9vcCAlNGQgZmFpbGVkISoqXG4iLCBjb3VudCk7CisgICAgICAgICAgICAgICAgICAg
IHJldHVybiAxOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQor
ICAgICAgICBpZiggIShjb3VudCAlIDUwMCkgKSB7CisgICAgICAgICAgICBwcmludGYoIkxvb3Ag
JTRkIHBhc3NlZFxuIiwgY291bnQpOworICAgICAgICB9CisgICAgfQorICAgIHByaW50Zigic2ls
a19MUENfaW52ZXJzZV9wcmVkX2dhaW4oKSBvcHRpbWl6YXRpb24gcGFzc2VkXG4iKTsKKyAgICBy
ZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90dW5pbmdfcGFyYW1ldGVycy5oIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3R1
bmluZ19wYXJhbWV0ZXJzLmgKaW5kZXggNWI4ZjQwNDIzNWY0OTFkOWI0YmVkYWE0OGYzOTQyMzA3
ZTdkMTJhMS4uZDcwMjc1ZmQ4ZjVkZDE1ZTNjNjhiZDI4ZDMyMTViNDBjNDliYmU1NCAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL3R1bmluZ19wYXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3R1bmluZ19wYXJhbWV0ZXJz
LmgKQEAgLTUzLDE5ICs1MywxMiBAQCBleHRlcm4gIkMiCiAvKiBMUEMgYW5hbHlzaXMgcmVndWxh
cml6YXRpb24gKi8KICNkZWZpbmUgRklORF9MUENfQ09ORF9GQUMgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgMWUtNWYKIAotLyogTFRQIGFuYWx5c2lzIGRlZmluZXMgKi8KLSNkZWZpbmUg
RklORF9MVFBfQ09ORF9GQUMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMWUtNWYKLSNk
ZWZpbmUgTFRQX0RBTVBJTkcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4w
NWYKLSNkZWZpbmUgTFRQX1NNT09USElORyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgMC4xZgotCi0vKiBMVFAgcXVhbnRpemF0aW9uIHNldHRpbmdzICovCi0jZGVmaW5lIE1VX0xU
UF9RVUFOVF9OQiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMDNmCi0jZGVmaW5l
IE1VX0xUUF9RVUFOVF9NQiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMDI1Zgot
I2RlZmluZSBNVV9MVFBfUVVBTlRfV0IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAw
LjAyZgotCiAvKiBNYXggY3VtdWxhdGl2ZSBMVFAgZ2FpbiAqLwogI2RlZmluZSBNQVhfU1VNX0xP
R19HQUlOX0RCICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyNTAuMGYKIAorLyogTFRQIGFu
YWx5c2lzIGRlZmluZXMgKi8KKyNkZWZpbmUgTFRQX0NPUlJfSU5WX01BWCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgMC4wM2YKKwogLyoqKioqKioqKioqKioqKioqKioqKioqLwogLyog
SGlnaCBwYXNzIGZpbHRlcmluZyAqLwogLyoqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtMTAz
LDI1ICs5NiwxNiBAQCBleHRlcm4gIkMiCiAjZGVmaW5lIFNQQVJTRV9TTlJfSU5DUl9kQiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDIuMGYKIAogLyogdGhyZXNob2xkIGZvciBzcGFyc2Vu
ZXNzIG1lYXN1cmUgYWJvdmUgd2hpY2ggdG8gdXNlIGxvd2VyIHF1YW50aXphdGlvbiBvZmZzZXQg
ZHVyaW5nIHVudm9pY2VkICovCi0jZGVmaW5lIFNQQVJTRU5FU1NfVEhSRVNIT0xEX1FOVF9PRkZT
RVQgICAgICAgICAgICAgICAgIDAuNzVmCisjZGVmaW5lIEVORVJHWV9WQVJJQVRJT05fVEhSRVNI
T0xEX1FOVF9PRkZTRVQgICAgICAgICAgIDAuNmYKIAogLyogd2FycGluZyBjb250cm9sICovCiAj
ZGVmaW5lIFdBUlBJTkdfTVVMVElQTElFUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAu
MDE1ZgogCiAvKiBmcmFjdGlvbiBhZGRlZCB0byBmaXJzdCBhdXRvY29ycmVsYXRpb24gdmFsdWUg
Ki8KLSNkZWZpbmUgU0hBUEVfV0hJVEVfTk9JU0VfRlJBQ1RJT04gICAgICAgICAgICAgICAgICAg
ICAgNWUtNWYKKyNkZWZpbmUgU0hBUEVfV0hJVEVfTk9JU0VfRlJBQ1RJT04gICAgICAgICAgICAg
ICAgICAgICAgM2UtNWYKIAogLyogbm9pc2Ugc2hhcGluZyBmaWx0ZXIgY2hpcnAgZmFjdG9yICov
Ci0jZGVmaW5lIEJBTkRXSURUSF9FWFBBTlNJT04gICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDAuOTVmCi0KLS8qIGRpZmZlcmVuY2UgYmV0d2VlbiBjaGlycCBmYWN0b3JzIGZvciBhbmFseXNp
cyBhbmQgc3ludGhlc2lzIG5vaXNlIHNoYXBpbmcgZmlsdGVycyBhdCBsb3cgYml0cmF0ZXMgKi8K
LSNkZWZpbmUgTE9XX1JBVEVfQkFORFdJRFRIX0VYUEFOU0lPTl9ERUxUQSAgICAgICAgICAgICAg
MC4wMWYKLQotLyogZXh0cmEgaGFybW9uaWMgYm9vc3RpbmcgKHNpZ25hbCBzaGFwaW5nKSBhdCBs
b3cgYml0cmF0ZXMgKi8KLSNkZWZpbmUgTE9XX1JBVEVfSEFSTU9OSUNfQk9PU1QgICAgICAgICAg
ICAgICAgICAgICAgICAgMC4xZgotCi0vKiBleHRyYSBoYXJtb25pYyBib29zdGluZyAoc2lnbmFs
IHNoYXBpbmcpIGZvciBub2lzeSBpbnB1dCBzaWduYWxzICovCi0jZGVmaW5lIExPV19JTlBVVF9R
VUFMSVRZX0hBUk1PTklDX0JPT1NUICAgICAgICAgICAgICAgIDAuMWYKKyNkZWZpbmUgQkFORFdJ
RFRIX0VYUEFOU0lPTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC45NGYKIAogLyogaGFy
bW9uaWMgbm9pc2Ugc2hhcGluZyAqLwogI2RlZmluZSBIQVJNT05JQ19TSEFQSU5HICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAwLjNmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L05TUV9kZWxf
ZGVjX3NzZS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL3g4Ni9OU1FfZGVsX2RlY19zc2UuYwppbmRleCAyMWQ0YThiYzFlOTYw
YWY5YTk1YWIyMDJjYzk1MWQxNGMwNDYwMWIzLi5jNTIxMmJlZThkM2ExYjFjMjE2MmNlODMyNjgx
MTQ1YmI3NDdjNzZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L05TUV9kZWxfZGVjX3NzZS5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay94ODYvTlNRX2RlbF9kZWNfc3NlLmMKQEAgLTEwNywxMiArMTA3LDEyIEBAIHN0YXRpYyBP
UFVTX0lOTElORSB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWNfc3NlNF8x
KAogICAgIG9wdXNfaW50ICAgICAgICAgICAgcHJlZGljdExQQ09yZGVyLCAgICAgICAgLyogSSAg
ICBQcmVkaWN0aW9uIGZpbHRlciBvcmRlciAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAg
ICAgICAgICAgd2FycGluZ19RMTYsICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgblN0YXRlc0Rl
bGF5ZWREZWNpc2lvbiwgLyogSSAgICBOdW1iZXIgb2Ygc3RhdGVzIGluIGRlY2lzaW9uIHRyZWUg
ICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAgLyog
SSAgICBJbmRleCB0byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZmZXJzICAqLworICAgIG9wdXNfaW50
ICAgICAgICAgICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAgLyogSS9PICBJbmRleCB0byBuZXdl
c3Qgc2FtcGxlcyBpbiBidWZmZXJzICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgZGVjaXNp
b25EZWxheSAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwogKTsKIAogdm9pZCBzaWxrX05TUV9kZWxfZGVjX3NzZTRfMSgKLSAgICBjb25zdCBz
aWxrX2VuY29kZXJfc3RhdGUgICAgKnBzRW5jQywgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJL08gIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgKi8KKyAgICBj
b25zdCBzaWxrX2VuY29kZXJfc3RhdGUgICAgKnBzRW5jQywgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgKi8K
ICAgICBzaWxrX25zcV9zdGF0ZSAgICAgICAgICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBTaWRlSW5mb0luZGljZXMgICAgICAgICAgICAgKnBzSW5kaWNlcywgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFF1YW50aXphdGlvbiBJbmRpY2VzICAg
ICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgeF9RM1tdLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFByZWZpbHRlcmVkIGlucHV0
IHNpZ25hbCAgICAgICAgKi8KQEAgLTIzNCw3ICsyMzQsOCBAQCB2b2lkIHNpbGtfTlNRX2RlbF9k
ZWNfc3NlNF8xKAogICAgICAgICAgICAgICAgICAgICBwc0REID0gJnBzRGVsRGVjWyBXaW5uZXJf
aW5kIF07CiAgICAgICAgICAgICAgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gc21wbF9idWZfaWR4
ICsgZGVjaXNpb25EZWxheTsKICAgICAgICAgICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IGRl
Y2lzaW9uRGVsYXk7IGkrKyApIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGxhc3Rfc21wbGVf
aWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAmIERFQ0lTSU9OX0RFTEFZX01BU0s7CisgICAg
ICAgICAgICAgICAgICAgICAgICBsYXN0X3NtcGxlX2lkeCA9ICggbGFzdF9zbXBsZV9pZHggLSAx
ICkgJSBERUNJU0lPTl9ERUxBWTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmKCBsYXN0X3Nt
cGxlX2lkeCA8IDAgKSBsYXN0X3NtcGxlX2lkeCArPSBERUNJU0lPTl9ERUxBWTsKICAgICAgICAg
ICAgICAgICAgICAgICAgIHB1bHNlc1sgICBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50
OClzaWxrX1JTSElGVF9ST1VORCggcHNERC0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4IF0sIDEwICk7
CiAgICAgICAgICAgICAgICAgICAgICAgICBweHFbIGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1
c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCgKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzaWxrX1NNVUxXVyggcHNERC0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCBdLCBH
YWluc19RMTZbIDEgXSApLCAxNCApICk7CkBAIC0yODUsNyArMjg2LDggQEAgdm9pZCBzaWxrX05T
UV9kZWxfZGVjX3NzZTRfMSgKICAgICBsYXN0X3NtcGxlX2lkeCA9IHNtcGxfYnVmX2lkeCArIGRl
Y2lzaW9uRGVsYXk7CiAgICAgR2Fpbl9RMTAgPSBzaWxrX1JTSElGVDMyKCBHYWluc19RMTZbIHBz
RW5jQy0+bmJfc3ViZnIgLSAxIF0sIDYgKTsKICAgICBmb3IoIGkgPSAwOyBpIDwgZGVjaXNpb25E
ZWxheTsgaSsrICkgewotICAgICAgICBsYXN0X3NtcGxlX2lkeCA9ICggbGFzdF9zbXBsZV9pZHgg
LSAxICkgJiBERUNJU0lPTl9ERUxBWV9NQVNLOworICAgICAgICBsYXN0X3NtcGxlX2lkeCA9ICgg
bGFzdF9zbXBsZV9pZHggLSAxICkgJSBERUNJU0lPTl9ERUxBWTsKKyAgICAgICAgaWYoIGxhc3Rf
c21wbGVfaWR4IDwgMCApIGxhc3Rfc21wbGVfaWR4ICs9IERFQ0lTSU9OX0RFTEFZOwogICAgICAg
ICBwdWxzZXNbICAgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDgpc2lsa19SU0hJRlRf
Uk9VTkQoIHBzREQtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCBdLCAxMCApOwogICAgICAgICBweHFb
IGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElG
VF9ST1VORCgKICAgICAgICAgICAgIHNpbGtfU01VTFdXKCBwc0RELT5YcV9RMTRbIGxhc3Rfc21w
bGVfaWR4IF0sIEdhaW5fUTEwICksIDggKSApOwpAQCAtMjk5LDcgKzMwMSw2IEBAIHZvaWQgc2ls
a19OU1FfZGVsX2RlY19zc2U0XzEoCiAgICAgTlNRLT5sYWdQcmV2ICAgICAgICA9IHBpdGNoTFsg
cHNFbmNDLT5uYl9zdWJmciAtIDEgXTsKIAogICAgIC8qIFNhdmUgcXVhbnRpemVkIHNwZWVjaCBz
aWduYWwgKi8KLSAgICAvKiBERUJVR19TVE9SRV9EQVRBKCBlbmMucGNtLCAmTlNRLT54cVtwc0Vu
Y0MtPmx0cF9tZW1fbGVuZ3RoXSwgcHNFbmNDLT5mcmFtZV9sZW5ndGggKiBzaXplb2YoIG9wdXNf
aW50MTYgKSApICovCiAgICAgc2lsa19tZW1tb3ZlKCBOU1EtPnhxLCAgICAgICAgICAgJk5TUS0+
eHFbICAgICAgICAgICBwc0VuY0MtPmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVu
Z3RoICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKICAgICBzaWxrX21lbW1vdmUoIE5TUS0+c0xU
UF9zaHBfUTE0LCAmTlNRLT5zTFRQX3NocF9RMTRbIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoIF0sIHBz
RW5jQy0+bHRwX21lbV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOwogICAgIFJFU1RP
UkVfU1RBQ0s7CkBAIC0zMzMsNyArMzM0LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2ls
a19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlY19zc2U0XzEoCiAgICAgb3B1c19pbnQgICAg
ICAgICAgICBwcmVkaWN0TFBDT3JkZXIsICAgICAgICAvKiBJICAgIFByZWRpY3Rpb24gZmlsdGVy
IG9yZGVyICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICB3YXJwaW5nX1Ex
NiwgICAgICAgICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICBuU3RhdGVzRGVsYXllZERlY2lzaW9uLCAvKiBJ
ICAgIE51bWJlciBvZiBzdGF0ZXMgaW4gZGVjaXNpb24gdHJlZSAgICovCi0gICAgb3B1c19pbnQg
ICAgICAgICAgICAqc21wbF9idWZfaWR4LCAgICAgICAgICAvKiBJICAgIEluZGV4IHRvIG5ld2Vz
dCBzYW1wbGVzIGluIGJ1ZmZlcnMgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9i
dWZfaWR4LCAgICAgICAgICAvKiBJL08gIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZl
cnMgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICBkZWNpc2lvbkRlbGF5ICAgICAgICAgICAv
KiBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7CkBAIC02
MzgsOCArNjM5LDkgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9x
dWFudGl6ZXJfZGVsX2RlY19zc2U0XzEoCiAgICAgICAgICAgICAgICAgcHNTU1sgMSBdLnhxX1Ex
NCAgICAgICA9IHhxX1ExNDsKICAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAgICAqc21w
bF9idWZfaWR4ICA9ICggKnNtcGxfYnVmX2lkeCAtIDEgKSAmIERFQ0lTSU9OX0RFTEFZX01BU0s7
ICAgICAgICAgICAgICAgICAgIC8qIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzICAgICAgICAgICAg
ICAqLwotICAgICAgICBsYXN0X3NtcGxlX2lkeCA9ICggKnNtcGxfYnVmX2lkeCArIGRlY2lzaW9u
RGVsYXkgKSAmIERFQ0lTSU9OX0RFTEFZX01BU0s7ICAgICAgIC8qIEluZGV4IHRvIGRlY2lzaW9u
RGVsYXkgb2xkIHNhbXBsZXMgICAqLworICAgICAgICAqc21wbF9idWZfaWR4ICA9ICggKnNtcGxf
YnVmX2lkeCAtIDEgKSAlIERFQ0lTSU9OX0RFTEFZOworICAgICAgICBpZiggKnNtcGxfYnVmX2lk
eCA8IDAgKSAqc21wbF9idWZfaWR4ICs9IERFQ0lTSU9OX0RFTEFZOworICAgICAgICBsYXN0X3Nt
cGxlX2lkeCA9ICggKnNtcGxfYnVmX2lkeCArIGRlY2lzaW9uRGVsYXkgKSAlIERFQ0lTSU9OX0RF
TEFZOwogCiAgICAgICAgIC8qIEZpbmQgd2lubmVyICovCiAgICAgICAgIFJEbWluX1ExMCA9IHBz
U2FtcGxlU3RhdGVbIDAgXVsgMCBdLlJEX1ExMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYvTlNRX3Nz
ZS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL3g4Ni9OU1Ffc3NlLmMKaW5kZXggYmIzYzVmMTk1NTcwZWJjZDg3ZGRjNmIwZjZm
NDAwYmNjZTNiMjEyNy4uNmE5ZTZlOTZjZmFiODVjNDdhZWRkNTJhZGNhNWVjNGI0NjJhYjgxNSAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL3g4Ni9OU1Ffc3NlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni9OU1Ffc3NlLmMKQEAg
LTcxLDcgKzcxLDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9x
dWFudGl6ZXJfMTBfMTZfc3NlNF8xKAogKTsKIAogdm9pZCBzaWxrX05TUV9zc2U0XzEoCi0gICAg
Y29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICov
CisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAg
ICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGljZXMs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5k
aWNlcyAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNb
XSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJl
ZCBpbnB1dCBzaWduYWwgICAgICAgICovCkBAIC0yMzMsNyArMjMzLDYgQEAgdm9pZCBzaWxrX05T
UV9zc2U0XzEoCiAgICAgTlNRLT5sYWdQcmV2ID0gcGl0Y2hMWyBwc0VuY0MtPm5iX3N1YmZyIC0g
MSBdOwogCiAgICAgLyogU2F2ZSBxdWFudGl6ZWQgc3BlZWNoIGFuZCBub2lzZSBzaGFwaW5nIHNp
Z25hbHMgKi8KLSAgICAvKiBERUJVR19TVE9SRV9EQVRBKCBlbmMucGNtLCAmTlNRLT54cVsgcHNF
bmNDLT5sdHBfbWVtX2xlbmd0aCBdLCBwc0VuY0MtPmZyYW1lX2xlbmd0aCAqIHNpemVvZiggb3B1
c19pbnQxNiApICkgKi8KICAgICBzaWxrX21lbW1vdmUoIE5TUS0+eHEsICAgICAgICAgICAmTlNR
LT54cVsgICAgICAgICAgIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoIF0sIHBzRW5jQy0+bHRwX21lbV9s
ZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOwogICAgIHNpbGtfbWVtbW92ZSggTlNRLT5z
TFRQX3NocF9RMTQsICZOU1EtPnNMVFBfc2hwX1ExNFsgcHNFbmNDLT5mcmFtZV9sZW5ndGggXSwg
cHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQzMiApICk7CiAgICAgUkVT
VE9SRV9TVEFDSzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYvbWFpbl9zc2UuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYvbWFp
bl9zc2UuaAppbmRleCBkOGQ2MTMxMGVkY2Y5NmUwMWVhZWQ0MjQ2OGUzMjdiOWRlMmQ0YTM4Li4y
ZjE1ZDQ0ODY5NzgxYzQzNTAxNGRkMWRkYjJjMDI0MjNiMTZlM2MxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
eDg2L21haW5fc3NlLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni9tYWluX3NzZS5oCkBAIC0zNCw2ICszNCw3IEBA
CiAKICMgaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0U0XzEpCiAKKyNpZiAwIC8qIEZJ
WE1FOiBTU0UgZGlzYWJsZWQgdW50aWwgc2lsa19WUV9XTWF0X0VDX3NzZTRfMSgpIGdldHMgdXBk
YXRlZC4gKi8KICMgIGRlZmluZSBPVkVSUklERV9zaWxrX1ZRX1dNYXRfRUMKIAogdm9pZCBzaWxr
X1ZRX1dNYXRfRUNfc3NlNF8xKApAQCAtNzksMTEgKzgwLDEzIEBAIGV4dGVybiB2b2lkICgqY29u
c3QgU0lMS19WUV9XTUFUX0VDX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbXVfUTksIG1heF9nYWluX1E3LCBMKSkKIAogI2VuZGlmCisjZW5kaWYK
IAorI2lmIDAgLyogRklYTUU6IFNTRSBkaXNhYmxlZCB1bnRpbCB0aGUgTlNRIGNvZGUgZ2V0cyB1
cGRhdGVkLiAqLwogIyAgZGVmaW5lIE9WRVJSSURFX3NpbGtfTlNRCiAKIHZvaWQgc2lsa19OU1Ff
c3NlNF8xKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAg
ICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNR
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRl
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAg
ICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVh
bnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAg
ICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLwpAQCAtMTEwLDcgKzExMyw3IEBA
IHZvaWQgc2lsa19OU1Ffc3NlNF8xKAogI2Vsc2UKIAogZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxL
X05TUV9JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0
YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9P
ICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNv
ZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ff
c3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lk
ZUluZm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCiAg
ICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAg
ICovCkBAIC0xMzcsNyArMTQwLDcgQEAgZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxLX05TUV9JTVBM
W09QVVNfQVJDSE1BU0sgKyAxXSkoCiAjICBkZWZpbmUgT1ZFUlJJREVfc2lsa19OU1FfZGVsX2Rl
YwogCiB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfc3NlNF8xKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rl
cl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtf
ZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtf
bnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAq
LwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAg
ICAgICAqLwpAQCAtMTY0LDcgKzE2Nyw3IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19zc2U0XzEo
CiAjZWxzZQogCiBleHRlcm4gdm9pZCAoKmNvbnN0IFNJTEtfTlNRX0RFTF9ERUNfSU1QTFtPUFVT
X0FSQ0hNQVNLICsgMV0pKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmND
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0
ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAq
cHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2Rl
ciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAg
ICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAg
TlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAg
ICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLwpAQCAtMTg3LDYg
KzE5MCw3IEBAIGV4dGVybiB2b2lkICgqY29uc3QgU0lMS19OU1FfREVMX0RFQ19JTVBMW09QVVNf
QVJDSE1BU0sgKyAxXSkoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVHYWlu
X1ExNCwgVGlsdF9RMTQsIExGX3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEw
LCBMVFBfc2NhbGVfUTE0KSkKIAogI2VuZGlmCisjZW5kaWYKIAogdm9pZCBzaWxrX25vaXNlX3No
YXBlX3F1YW50aXplcigKICAgICBzaWxrX25zcV9zdGF0ZSAgICAgICpOU1EsICAgICAgICAgICAg
ICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtMjM4
LDM5ICsyNDIsNiBAQCBleHRlcm4gb3B1c19pbnQgKCpjb25zdCBTSUxLX1ZBRF9HRVRTQV9ROF9J
TVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCiAgICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbkMs
CiAgICAgIGNvbnN0IG9wdXNfaW50MTYgICBwSW5bXSk7CiAKLSMgIGRlZmluZSBPVkVSUklERV9z
aWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWAotCi0jZW5kaWYKLQotdm9pZCBzaWxr
X3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWF9zc2U0XzEoCi0gICAgICAgICAgb3B1c19p
bnQzMiAgICAgICAgICAgIHN0YXRlW10sICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFN0YXRl
IFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgb3B1c19pbnQzMiAg
ICAgICAgICAgIHJlc19RMltdLCAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJlc2lkdWFsIHNp
Z25hbCBbbGVuZ3RoXSAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAg
ICAgIGNvZWZfUTEzW10sICAgICAgICAgICAgICAgICAvKiBJICAgIENvZWZmaWNpZW50cyBbb3Jk
ZXJdICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGlu
cHV0W10sICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IHNpZ25hbCBbbGVuZ3RoXSAg
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGxhbWJkYV9R
MTYsICAgICAgICAgICAgICAgICAvKiBJICAgIFdhcnBpbmcgZmFjdG9yICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1dCBzaWduYWwgICAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICovCi0p
OwotCi0jaWYgZGVmaW5lZChPUFVTX1g4Nl9QUkVTVU1FX1NTRTRfMSkKLSNkZWZpbmUgc2lsa193
YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GSVgoc3RhdGUsIHJlc19RMiwgY29lZl9RMTMsIGlu
cHV0LCBsYW1iZGFfUTE2LCBsZW5ndGgsIG9yZGVyLCBhcmNoKSBcCi0gICAgKCh2b2lkKShhcmNo
KSxzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWF9jKHN0YXRlLCByZXNfUTIsIGNv
ZWZfUTEzLCBpbnB1dCwgbGFtYmRhX1ExNiwgbGVuZ3RoLCBvcmRlcikpCi0KLSNlbHNlCi0KLWV4
dGVybiB2b2lkICgqY29uc3QgU0lMS19XQVJQRURfTFBDX0FOQUxZU0lTX0ZJTFRFUl9GSVhfSU1Q
TFtPUFVTX0FSQ0hNQVNLICsgMV0pKAotICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICBz
dGF0ZVtdLCAgICAgICAgICAgICAgICAgICAgLyogSS9PICBTdGF0ZSBbb3JkZXIgKyAxXSAgICAg
ICAgICAgICAgICAgICAqLwotICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICByZXNfUTJb
XSwgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXNpZHVhbCBzaWduYWwgW2xlbmd0aF0gICAg
ICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBjb2VmX1ExM1tdLCAg
ICAgICAgICAgICAgICAgLyogSSAgICBDb2VmZmljaWVudHMgW29yZGVyXSAgICAgICAgICAgICAg
ICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBpbnB1dFtdLCAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwgW2xlbmd0aF0gICAgICAgICAgICAgICAqLwot
ICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBsYW1iZGFfUTE2LCAgICAgICAgICAgICAg
ICAgLyogSSAgICBXYXJwaW5nIGZhY3RvciAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICBsZW5ndGgsICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBMZW5ndGggb2YgaW5wdXQgc2lnbmFsICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBG
aWx0ZXIgb3JkZXIgKGV2ZW4pICAgICAgICAgICAgICAgICAqLwotKTsKLQotIyAgZGVmaW5lIHNp
bGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYKHN0YXRlLCByZXNfUTIsIGNvZWZfUTEz
LCBpbnB1dCwgbGFtYmRhX1ExNiwgbGVuZ3RoLCBvcmRlciwgYXJjaCkgXAotICAgICgoKlNJTEtf
V0FSUEVEX0xQQ19BTkFMWVNJU19GSUxURVJfRklYX0lNUExbKGFyY2gpICYgT1BVU19BUkNITUFT
S10pKHN0YXRlLCByZXNfUTIsIGNvZWZfUTEzLCBpbnB1dCwgbGFtYmRhX1ExNiwgbGVuZ3RoLCBv
cmRlcikpCi0KICNlbmRpZgogCiAjIGVuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L3g4Nl9zaWxr
X21hcC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL3g4Ni94ODZfc2lsa19tYXAuYwppbmRleCA4MTg4NDFmMmMxOTA3OTlmMzNh
M2ZhZDg5ZWRlZjYxYWNlMWFjNzE2Li4zMmRjYzNjYWI3YTkzYmQ2YzM1MDlhODlkNGI4MDc3MWFh
ZDJkZGY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L3g4Nl9zaWxrX21hcC5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYv
eDg2X3NpbGtfbWFwLmMKQEAgLTY2LDggKzY2LDkgQEAgb3B1c19pbnQgKCpjb25zdCBTSUxLX1ZB
RF9HRVRTQV9ROF9JTVBMWyBPUFVTX0FSQ0hNQVNLICsgMSBdICkoCiAgIE1BWV9IQVZFX1NTRTRf
MSggc2lsa19WQURfR2V0U0FfUTggKSAgLyogYXZ4ICovCiB9OwogCisjaWYgMCAvKiBGSVhNRTog
U1NFIGRpc2FibGVkIHVudGlsIHRoZSBOU1EgY29kZSBnZXRzIHVwZGF0ZWQuICovCiB2b2lkICgq
Y29uc3QgU0lMS19OU1FfSU1QTFsgT1BVU19BUkNITUFTSyArIDEgXSApKAotICAgIGNvbnN0IHNp
bGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNv
bnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwog
ICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAg
ICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAg
ICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQg
c2lnbmFsICAgICAgICAqLwpAQCAtODksNyArOTAsOSBAQCB2b2lkICgqY29uc3QgU0lMS19OU1Ff
SU1QTFsgT1BVU19BUkNITUFTSyArIDEgXSApKAogICBNQVlfSEFWRV9TU0U0XzEoIHNpbGtfTlNR
ICksIC8qIHNzZTQuMSAqLwogICBNQVlfSEFWRV9TU0U0XzEoIHNpbGtfTlNRICkgIC8qIGF2eCAq
LwogfTsKKyNlbmRpZgogCisjaWYgMCAvKiBGSVhNRTogU1NFIGRpc2FibGVkIHVudGlsIHNpbGtf
VlFfV01hdF9FQ19zc2U0XzEoKSBnZXRzIHVwZGF0ZWQuICovCiB2b2lkICgqY29uc3QgU0lMS19W
UV9XTUFUX0VDX0lNUExbIE9QVVNfQVJDSE1BU0sgKyAxIF0gKSgKICAgICBvcHVzX2ludDggICAg
ICAgICAgICAgICAgICAgKmluZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIGlu
ZGV4IG9mIGJlc3QgY29kZWJvb2sgdmVjdG9yICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2lu
dDMyICAgICAgICAgICAgICAgICAgKnJhdGVfZGlzdF9RMTQsICAgICAgICAgICAgICAgICAvKiBP
ICAgIGJlc3Qgd2VpZ2h0ZWQgcXVhbnQgZXJyb3IgKyBtdSAqIHJhdGUgICAgICAgKi8KQEAgLTEw
OSw5ICsxMTIsMTEgQEAgdm9pZCAoKmNvbnN0IFNJTEtfVlFfV01BVF9FQ19JTVBMWyBPUFVTX0FS
Q0hNQVNLICsgMSBdICkoCiAgIE1BWV9IQVZFX1NTRTRfMSggc2lsa19WUV9XTWF0X0VDICksIC8q
IHNzZTQuMSAqLwogICBNQVlfSEFWRV9TU0U0XzEoIHNpbGtfVlFfV01hdF9FQyApICAvKiBhdngg
Ki8KIH07CisjZW5kaWYKIAorI2lmIDAgLyogRklYTUU6IFNTRSBkaXNhYmxlZCB1bnRpbCB0aGUg
TlNRIGNvZGUgZ2V0cyB1cGRhdGVkLiAqLwogdm9pZCAoKmNvbnN0IFNJTEtfTlNRX0RFTF9ERUNf
SU1QTFsgT1BVU19BUkNITUFTSyArIDEgXSApKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0
ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAg
RW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rl
cl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0
YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJ
bmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwogICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAq
LwpAQCAtMTMzLDI1ICsxMzgsMTAgQEAgdm9pZCAoKmNvbnN0IFNJTEtfTlNRX0RFTF9ERUNfSU1Q
TFsgT1BVU19BUkNITUFTSyArIDEgXSApKAogICBNQVlfSEFWRV9TU0U0XzEoIHNpbGtfTlNRX2Rl
bF9kZWMgKSwgLyogc3NlNC4xICovCiAgIE1BWV9IQVZFX1NTRTRfMSggc2lsa19OU1FfZGVsX2Rl
YyApICAvKiBhdnggKi8KIH07CisjZW5kaWYKIAogI2lmIGRlZmluZWQoRklYRURfUE9JTlQpCiAK
LXZvaWQgKCpjb25zdCBTSUxLX1dBUlBFRF9MUENfQU5BTFlTSVNfRklMVEVSX0ZJWF9JTVBMWyBP
UFVTX0FSQ0hNQVNLICsgMSBdICkoCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHN0
YXRlW10sICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFN0YXRlIFtvcmRlciArIDFdICAgICAg
ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHJlc19RMltd
LCAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJlc2lkdWFsIHNpZ25hbCBbbGVuZ3RoXSAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGNvZWZfUTEzW10sICAg
ICAgICAgICAgICAgICAvKiBJICAgIENvZWZmaWNpZW50cyBbb3JkZXJdICAgICAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGlucHV0W10sICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIElucHV0IHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICAgICovCi0g
ICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGxhbWJkYV9RMTYsICAgICAgICAgICAgICAg
ICAvKiBJICAgIFdhcnBpbmcgZmFjdG9yICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIExlbmd0aCBvZiBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZp
bHRlciBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICovCi0pID0gewotICBzaWxrX3dhcnBl
ZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWF9jLCAgICAgICAgICAgICAgICAgIC8qIG5vbi1zc2Ug
Ki8KLSAgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GSVhfYywKLSAgc2lsa193YXJw
ZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GSVhfYywKLSAgTUFZX0hBVkVfU1NFNF8xKCBzaWxrX3dh
cnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWCApLCAvKiBzc2U0LjEgKi8KLSAgTUFZX0hBVkVf
U1NFNF8xKCBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWCApICAvKiBhdnggKi8K
LX07Ci0KIHZvaWQgKCpjb25zdCBTSUxLX0JVUkdfTU9ESUZJRURfSU1QTFsgT1BVU19BUkNITUFT
SyArIDEgXSApKAogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqcmVzX25yZywgICAg
ICAgICAgIC8qIE8gICAgUmVzaWR1YWwgZW5lcmd5ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgKnJl
c19ucmdfUSwgICAgICAgICAvKiBPICAgIFJlc2lkdWFsIGVuZXJneSBRIHZhbHVlICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zcmMvYW5hbHlzaXMuYwppbmRleCA2NjM0MzFhNDM2YTFjODFhOWJhNzNmZjJhNmYyZDdmZmZh
ZWJiMTU4Li5mNDE2MGU0YjRlZDVjMTE0Y2Y3ZDYxMGRiZDk3YTE1NjkwNjBhMDc3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NyYy9hbmFseXNpcy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL2FuYWx5c2lzLmMKQEAgLTI5LDIwICsyOSwyNyBA
QAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2VuZGlmCiAKKyNkZWZpbmUgQU5BTFlTSVNfQworCisj
aW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1ZGUgIm1hdGhvcHMuaCIKICNpbmNsdWRlICJraXNz
X2ZmdC5oIgogI2luY2x1ZGUgImNlbHQuaCIKICNpbmNsdWRlICJtb2Rlcy5oIgogI2luY2x1ZGUg
ImFyY2guaCIKICNpbmNsdWRlICJxdWFudF9iYW5kcy5oIgotI2luY2x1ZGUgPHN0ZGlvLmg+CiAj
aW5jbHVkZSAiYW5hbHlzaXMuaCIKICNpbmNsdWRlICJtbHAuaCIKICNpbmNsdWRlICJzdGFja19h
bGxvYy5oIgorI2luY2x1ZGUgImZsb2F0X2Nhc3QuaCIKIAogI2lmbmRlZiBNX1BJCiAjZGVmaW5l
IE1fUEkgMy4xNDE1OTI2NTMKICNlbmRpZgogCisjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCisK
IHN0YXRpYyBjb25zdCBmbG9hdCBkY3RfdGFibGVbMTI4XSA9IHsKICAgICAgICAgMC4yNTAwMDBm
LCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwg
MC4yNTAwMDBmLCAwLjI1MDAwMGYsCiAgICAgICAgIDAuMjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1
MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAw
MDBmLApAQCAtOTYsNTIgKzEwMywxMTggQEAgc3RhdGljIGNvbnN0IGZsb2F0IGFuYWx5c2lzX3dp
bmRvd1syNDBdID0gewogfTsKIAogc3RhdGljIGNvbnN0IGludCB0YmFuZHNbTkJfVEJBTkRTKzFd
ID0gewotICAgICAgIDIsICA0LCAgNiwgIDgsIDEwLCAxMiwgMTQsIDE2LCAyMCwgMjQsIDI4LCAz
MiwgNDAsIDQ4LCA1NiwgNjgsIDgwLCA5NiwgMTIwCisgICAgICA0LCA4LCAxMiwgMTYsIDIwLCAy
NCwgMjgsIDMyLCA0MCwgNDgsIDU2LCA2NCwgODAsIDk2LCAxMTIsIDEzNiwgMTYwLCAxOTIsIDI0
MAogfTsKIAotc3RhdGljIGNvbnN0IGludCBleHRyYV9iYW5kc1tOQl9UT1RfQkFORFMrMV0gPSB7
Ci0gICAgICAxLCAyLCAgNCwgIDYsICA4LCAxMCwgMTIsIDE0LCAxNiwgMjAsIDI0LCAyOCwgMzIs
IDQwLCA0OCwgNTYsIDY4LCA4MCwgOTYsIDEyMCwgMTYwLCAyMDAKLX07Ci0KLS8qc3RhdGljIGNv
bnN0IGZsb2F0IHR3ZWlnaHRbTkJfVEJBTkRTKzFdID0gewotICAgICAgLjMsIC40LCAuNSwgLjYs
IC43LCAuOCwgLjksIDEuLCAxLiwgMS4sIDEuLCAxLiwgMS4sIDEuLCAuOCwgLjcsIC42LCAuNQot
fTsqLwotCiAjZGVmaW5lIE5CX1RPTkFMX1NLSVBfQkFORFMgOQogCi0jZGVmaW5lIGNBIDAuNDMx
NTc5NzRmCi0jZGVmaW5lIGNCIDAuNjc4NDg0MDNmCi0jZGVmaW5lIGNDIDAuMDg1OTU1NDJmCi0j
ZGVmaW5lIGNFICgoZmxvYXQpTV9QSS8yKQotc3RhdGljIE9QVVNfSU5MSU5FIGZsb2F0IGZhc3Rf
YXRhbjJmKGZsb2F0IHksIGZsb2F0IHgpIHsKLSAgIGZsb2F0IHgyLCB5MjsKLSAgIC8qIFNob3Vs
ZCBhdm9pZCB1bmRlcmZsb3cgb24gdGhlIHZhbHVlcyB3ZSdsbCBnZXQgKi8KLSAgIGlmIChBQlMx
Nih4KStBQlMxNih5KTwxZS05ZikKK3N0YXRpYyBvcHVzX3ZhbDMyIHNpbGtfcmVzYW1wbGVyX2Rv
d24yX2hwKAorICAgIG9wdXNfdmFsMzIgICAgICAgICAgICAgICAgICAqUywgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgU3RhdGUgdmVjdG9yIFsgMiBdICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX3ZhbDMyICAgICAgICAgICAgICAgICAgKm91dCwg
ICAgICAgICAgICAgICAvKiBPICAgIE91dHB1dCBzaWduYWwgWyBmbG9vcihsZW4vMikgXSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c192YWwzMiAgICAgICAg
ICAgICppbiwgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwgWyBsZW4gXSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGludCAgICAgICAgICAg
ICAgICAgICAgICAgICBpbkxlbiAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIGlucHV0
IHNhbXBsZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyAg
ICBpbnQgaywgbGVuMiA9IGluTGVuLzI7CisgICAgb3B1c192YWwzMiBpbjMyLCBvdXQzMiwgb3V0
MzJfaHAsIFksIFg7CisgICAgb3B1c192YWw2NCBocF9lbmVyID0gMDsKKyAgICAvKiBJbnRlcm5h
bCB2YXJpYWJsZXMgYW5kIHN0YXRlIGFyZSBpbiBRMTAgZm9ybWF0ICovCisgICAgZm9yKCBrID0g
MDsgayA8IGxlbjI7IGsrKyApIHsKKyAgICAgICAgLyogQ29udmVydCB0byBRMTAgKi8KKyAgICAg
ICAgaW4zMiA9IGluWyAyICogayBdOworCisgICAgICAgIC8qIEFsbC1wYXNzIHNlY3Rpb24gZm9y
IGV2ZW4gaW5wdXQgc2FtcGxlICovCisgICAgICAgIFkgICAgICA9IFNVQjMyKCBpbjMyLCBTWyAw
IF0gKTsKKyAgICAgICAgWCAgICAgID0gTVVMVDE2XzMyX1ExNShRQ09OU1QxNigwLjYwNzQzNzFm
LCAxNSksIFkpOworICAgICAgICBvdXQzMiAgPSBBREQzMiggU1sgMCBdLCBYICk7CisgICAgICAg
IFNbIDAgXSA9IEFERDMyKCBpbjMyLCBYICk7CisgICAgICAgIG91dDMyX2hwID0gb3V0MzI7Cisg
ICAgICAgIC8qIENvbnZlcnQgdG8gUTEwICovCisgICAgICAgIGluMzIgPSBpblsgMiAqIGsgKyAx
IF07CisKKyAgICAgICAgLyogQWxsLXBhc3Mgc2VjdGlvbiBmb3Igb2RkIGlucHV0IHNhbXBsZSwg
YW5kIGFkZCB0byBvdXRwdXQgb2YgcHJldmlvdXMgc2VjdGlvbiAqLworICAgICAgICBZICAgICAg
PSBTVUIzMiggaW4zMiwgU1sgMSBdICk7CisgICAgICAgIFggICAgICA9IE1VTFQxNl8zMl9RMTUo
UUNPTlNUMTYoMC4xNTA2M2YsIDE1KSwgWSk7CisgICAgICAgIG91dDMyICA9IEFERDMyKCBvdXQz
MiwgU1sgMSBdICk7CisgICAgICAgIG91dDMyICA9IEFERDMyKCBvdXQzMiwgWCApOworICAgICAg
ICBTWyAxIF0gPSBBREQzMiggaW4zMiwgWCApOworCisgICAgICAgIFkgICAgICA9IFNVQjMyKCAt
aW4zMiwgU1sgMiBdICk7CisgICAgICAgIFggICAgICA9IE1VTFQxNl8zMl9RMTUoUUNPTlNUMTYo
MC4xNTA2M2YsIDE1KSwgWSk7CisgICAgICAgIG91dDMyX2hwICA9IEFERDMyKCBvdXQzMl9ocCwg
U1sgMiBdICk7CisgICAgICAgIG91dDMyX2hwICA9IEFERDMyKCBvdXQzMl9ocCwgWCApOworICAg
ICAgICBTWyAyIF0gPSBBREQzMiggLWluMzIsIFggKTsKKworICAgICAgICBocF9lbmVyICs9IG91
dDMyX2hwKihvcHVzX3ZhbDY0KW91dDMyX2hwOworICAgICAgICAvKiBBZGQsIGNvbnZlcnQgYmFj
ayB0byBpbnQxNiBhbmQgc3RvcmUgdG8gb3V0cHV0ICovCisgICAgICAgIG91dFsgayBdID0gSEFM
RjMyKG91dDMyKTsKKyAgICB9CisjaWZkZWYgRklYRURfUE9JTlQKKyAgICAvKiBsZW4yIGNhbiBi
ZSB1cCB0byA0ODAsIHNvIHdlIHNoaWZ0IGJ5IDggbW9yZSB0byBtYWtlIGl0IGZpdC4gKi8KKyAg
ICBocF9lbmVyID0gaHBfZW5lciA+PiAoMipTSUdfU0hJRlQgKyA4KTsKKyNlbmRpZgorICAgIHJl
dHVybiAob3B1c192YWwzMilocF9lbmVyOworfQorCitzdGF0aWMgb3B1c192YWwzMiBkb3dubWl4
X2FuZF9yZXNhbXBsZShkb3dubWl4X2Z1bmMgZG93bm1peCwgY29uc3Qgdm9pZCAqX3gsIG9wdXNf
dmFsMzIgKnksIG9wdXNfdmFsMzIgU1szXSwgaW50IHN1YmZyYW1lLCBpbnQgb2Zmc2V0LCBpbnQg
YzEsIGludCBjMiwgaW50IEMsIGludCBGcykKK3sKKyAgIFZBUkRFQ0wob3B1c192YWwzMiwgdG1w
KTsKKyAgIG9wdXNfdmFsMzIgc2NhbGU7CisgICBpbnQgajsKKyAgIG9wdXNfdmFsMzIgcmV0ID0g
MDsKKyAgIFNBVkVfU1RBQ0s7CisKKyAgIGlmIChzdWJmcmFtZT09MCkgcmV0dXJuIDA7CisgICBp
ZiAoRnMgPT0gNDgwMDApCiAgICB7Ci0gICAgICB4Kj0xZTEyZjsKLSAgICAgIHkqPTFlMTJmOwor
ICAgICAgc3ViZnJhbWUgKj0gMjsKKyAgICAgIG9mZnNldCAqPSAyOworICAgfSBlbHNlIGlmIChG
cyA9PSAxNjAwMCkgeworICAgICAgc3ViZnJhbWUgPSBzdWJmcmFtZSoyLzM7CisgICAgICBvZmZz
ZXQgPSBvZmZzZXQqMi8zOwogICAgfQotICAgeDIgPSB4Kng7Ci0gICB5MiA9IHkqeTsKLSAgIGlm
KHgyPHkyKXsKLSAgICAgIGZsb2F0IGRlbiA9ICh5MiArIGNCKngyKSAqICh5MiArIGNDKngyKTsK
LSAgICAgIGlmIChkZW4hPTApCi0gICAgICAgICByZXR1cm4gLXgqeSooeTIgKyBjQSp4MikgLyBk
ZW4gKyAoeTwwID8gLWNFIDogY0UpOwotICAgICAgZWxzZQotICAgICAgICAgcmV0dXJuICh5PDAg
PyAtY0UgOiBjRSk7Ci0gICB9ZWxzZXsKLSAgICAgIGZsb2F0IGRlbiA9ICh4MiArIGNCKnkyKSAq
ICh4MiArIGNDKnkyKTsKLSAgICAgIGlmIChkZW4hPTApCi0gICAgICAgICByZXR1cm4gIHgqeSoo
eDIgKyBjQSp5MikgLyBkZW4gKyAoeTwwID8gLWNFIDogY0UpIC0gKHgqeTwwID8gLWNFIDogY0Up
OwotICAgICAgZWxzZQotICAgICAgICAgcmV0dXJuICh5PDAgPyAtY0UgOiBjRSkgLSAoeCp5PDAg
PyAtY0UgOiBjRSk7CisgICBBTExPQyh0bXAsIHN1YmZyYW1lLCBvcHVzX3ZhbDMyKTsKKworICAg
ZG93bm1peChfeCwgdG1wLCBzdWJmcmFtZSwgb2Zmc2V0LCBjMSwgYzIsIEMpOworI2lmZGVmIEZJ
WEVEX1BPSU5UCisgICBzY2FsZSA9ICgxPDxTSUdfU0hJRlQpOworI2Vsc2UKKyAgIHNjYWxlID0g
MS5mLzMyNzY4OworI2VuZGlmCisgICBpZiAoYzI9PS0yKQorICAgICAgc2NhbGUgLz0gQzsKKyAg
IGVsc2UgaWYgKGMyPi0xKQorICAgICAgc2NhbGUgLz0gMjsKKyAgIGZvciAoaj0wO2o8c3ViZnJh
bWU7aisrKQorICAgICAgdG1wW2pdICo9IHNjYWxlOworICAgaWYgKEZzID09IDQ4MDAwKQorICAg
eworICAgICAgcmV0ID0gc2lsa19yZXNhbXBsZXJfZG93bjJfaHAoUywgeSwgdG1wLCBzdWJmcmFt
ZSk7CisgICB9IGVsc2UgaWYgKEZzID09IDI0MDAwKSB7CisgICAgICBPUFVTX0NPUFkoeSwgdG1w
LCBzdWJmcmFtZSk7CisgICB9IGVsc2UgaWYgKEZzID09IDE2MDAwKSB7CisgICAgICBWQVJERUNM
KG9wdXNfdmFsMzIsIHRtcDN4KTsKKyAgICAgIEFMTE9DKHRtcDN4LCAzKnN1YmZyYW1lLCBvcHVz
X3ZhbDMyKTsKKyAgICAgIC8qIERvbid0IGRvIHRoaXMgYXQgaG9tZSEgVGhpcyByZXNhbXBsZXIg
aXMgaG9ycmlibGUgYW5kIGl0J3Mgb25seSAoYmFyZWx5KQorICAgICAgICAgdXNhYmxlIGZvciB0
aGUgcHVycG9zZSBvZiB0aGUgYW5hbHlzaXMgYmVjYXVzZSB3ZSBkb24ndCBjYXJlIGFib3V0IGFs
bAorICAgICAgICAgdGhlIGFsaWFzaW5nIGJldHdlZW4gOCBrSHogYW5kIDEyIGtIei4gKi8KKyAg
ICAgIGZvciAoaj0wO2o8c3ViZnJhbWU7aisrKQorICAgICAgeworICAgICAgICAgdG1wM3hbMypq
XSA9IHRtcFtqXTsKKyAgICAgICAgIHRtcDN4WzMqaisxXSA9IHRtcFtqXTsKKyAgICAgICAgIHRt
cDN4WzMqaisyXSA9IHRtcFtqXTsKKyAgICAgIH0KKyAgICAgIHNpbGtfcmVzYW1wbGVyX2Rvd24y
X2hwKFMsIHksIHRtcDN4LCAzKnN1YmZyYW1lKTsKICAgIH0KKyAgIFJFU1RPUkVfU1RBQ0s7Cisg
ICByZXR1cm4gcmV0OwogfQogCi12b2lkIHRvbmFsaXR5X2FuYWx5c2lzX2luaXQoVG9uYWxpdHlB
bmFseXNpc1N0YXRlICp0b25hbCkKK3ZvaWQgdG9uYWxpdHlfYW5hbHlzaXNfaW5pdChUb25hbGl0
eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBvcHVzX2ludDMyIEZzKQogewogICAvKiBJbml0aWFsaXpl
IHJldXNhYmxlIGZpZWxkcy4gKi8KICAgdG9uYWwtPmFyY2ggPSBvcHVzX3NlbGVjdF9hcmNoKCk7
CisgIHRvbmFsLT5GcyA9IEZzOwogICAvKiBDbGVhciByZW1haW5pbmcgZmllbGRzLiAqLwogICB0
b25hbGl0eV9hbmFseXNpc19yZXNldCh0b25hbCk7CiB9CkBAIC0xNTEsNiArMjI0LDggQEAgdm9p
ZCB0b25hbGl0eV9hbmFseXNpc19yZXNldChUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsKQog
ICAvKiBDbGVhciBub24tcmV1c2FibGUgZmllbGRzLiAqLwogICBjaGFyICpzdGFydCA9IChjaGFy
KikmdG9uYWwtPlRPTkFMSVRZX0FOQUxZU0lTX1JFU0VUX1NUQVJUOwogICBPUFVTX0NMRUFSKHN0
YXJ0LCBzaXplb2YoVG9uYWxpdHlBbmFseXNpc1N0YXRlKSAtIChzdGFydCAtIChjaGFyKil0b25h
bCkpOworICB0b25hbC0+bXVzaWNfY29uZmlkZW5jZSA9IC45ZjsKKyAgdG9uYWwtPnNwZWVjaF9j
b25maWRlbmNlID0gLjFmOwogfQogCiB2b2lkIHRvbmFsaXR5X2dldF9pbmZvKFRvbmFsaXR5QW5h
bHlzaXNTdGF0ZSAqdG9uYWwsIEFuYWx5c2lzSW5mbyAqaW5mb19vdXQsIGludCBsZW4pCkBAIC0x
NTgsNiArMjMzLDkgQEAgdm9pZCB0b25hbGl0eV9nZXRfaW5mbyhUb25hbGl0eUFuYWx5c2lzU3Rh
dGUgKnRvbmFsLCBBbmFseXNpc0luZm8gKmluZm9fb3V0LCBpbnQKICAgIGludCBwb3M7CiAgICBp
bnQgY3Vycl9sb29rYWhlYWQ7CiAgICBmbG9hdCBwc3VtOworICAgZmxvYXQgdG9uYWxpdHlfbWF4
OworICAgZmxvYXQgdG9uYWxpdHlfYXZnOworICAgaW50IHRvbmFsaXR5X2NvdW50OwogICAgaW50
IGk7CiAKICAgIHBvcyA9IHRvbmFsLT5yZWFkX3BvczsKQEAgLTE2NSw3ICsyNDMsOCBAQCB2b2lk
IHRvbmFsaXR5X2dldF9pbmZvKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIEFuYWx5c2lz
SW5mbyAqaW5mb19vdXQsIGludAogICAgaWYgKGN1cnJfbG9va2FoZWFkPDApCiAgICAgICBjdXJy
X2xvb2thaGVhZCArPSBERVRFQ1RfU0laRTsKIAotICAgaWYgKGxlbiA+IDQ4MCAmJiBwb3MgIT0g
dG9uYWwtPndyaXRlX3BvcykKKyAgIC8qIE9uIGxvbmcgZnJhbWVzLCBsb29rIGF0IHRoZSBzZWNv
bmQgYW5hbHlzaXMgd2luZG93IHJhdGhlciB0aGFuIHRoZSBmaXJzdC4gKi8KKyAgIGlmIChsZW4g
PiB0b25hbC0+RnMvNTAgJiYgcG9zICE9IHRvbmFsLT53cml0ZV9wb3MpCiAgICB7CiAgICAgICBw
b3MrKzsKICAgICAgIGlmIChwb3M9PURFVEVDVF9TSVpFKQpAQCAtMTc2LDE4ICsyNTUsMzIgQEAg
dm9pZCB0b25hbGl0eV9nZXRfaW5mbyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBBbmFs
eXNpc0luZm8gKmluZm9fb3V0LCBpbnQKICAgIGlmIChwb3M8MCkKICAgICAgIHBvcyA9IERFVEVD
VF9TSVpFLTE7CiAgICBPUFVTX0NPUFkoaW5mb19vdXQsICZ0b25hbC0+aW5mb1twb3NdLCAxKTsK
LSAgIHRvbmFsLT5yZWFkX3N1YmZyYW1lICs9IGxlbi8xMjA7Ci0gICB3aGlsZSAodG9uYWwtPnJl
YWRfc3ViZnJhbWU+PTQpCisgICB0b25hbGl0eV9tYXggPSB0b25hbGl0eV9hdmcgPSBpbmZvX291
dC0+dG9uYWxpdHk7CisgICB0b25hbGl0eV9jb3VudCA9IDE7CisgICAvKiBJZiBwb3NzaWJsZSwg
bG9vayBhaGVhZCBmb3IgYSB0b25lIHRvIGNvbXBlbnNhdGUgZm9yIHRoZSBkZWxheSBpbiB0aGUg
dG9uZSBkZXRlY3Rvci4gKi8KKyAgIGZvciAoaT0wO2k8MztpKyspCiAgICB7Ci0gICAgICB0b25h
bC0+cmVhZF9zdWJmcmFtZSAtPSA0OworICAgICAgcG9zKys7CisgICAgICBpZiAocG9zPT1ERVRF
Q1RfU0laRSkKKyAgICAgICAgIHBvcyA9IDA7CisgICAgICBpZiAocG9zID09IHRvbmFsLT53cml0
ZV9wb3MpCisgICAgICAgICBicmVhazsKKyAgICAgIHRvbmFsaXR5X21heCA9IE1BWDMyKHRvbmFs
aXR5X21heCwgdG9uYWwtPmluZm9bcG9zXS50b25hbGl0eSk7CisgICAgICB0b25hbGl0eV9hdmcg
Kz0gdG9uYWwtPmluZm9bcG9zXS50b25hbGl0eTsKKyAgICAgIHRvbmFsaXR5X2NvdW50Kys7Cisg
ICB9CisgICBpbmZvX291dC0+dG9uYWxpdHkgPSBNQVgzMih0b25hbGl0eV9hdmcvdG9uYWxpdHlf
Y291bnQsIHRvbmFsaXR5X21heC0uMmYpOworICAgdG9uYWwtPnJlYWRfc3ViZnJhbWUgKz0gbGVu
Lyh0b25hbC0+RnMvNDAwKTsKKyAgIHdoaWxlICh0b25hbC0+cmVhZF9zdWJmcmFtZT49OCkKKyAg
IHsKKyAgICAgIHRvbmFsLT5yZWFkX3N1YmZyYW1lIC09IDg7CiAgICAgICB0b25hbC0+cmVhZF9w
b3MrKzsKICAgIH0KICAgIGlmICh0b25hbC0+cmVhZF9wb3M+PURFVEVDVF9TSVpFKQogICAgICAg
dG9uYWwtPnJlYWRfcG9zLT1ERVRFQ1RfU0laRTsKIAotICAgLyogQ29tcGVuc2F0ZSBmb3IgdGhl
IGRlbGF5IGluIHRoZSBmZWF0dXJlcyB0aGVtc2VsdmVzLgotICAgICAgRklYTUU6IE5lZWQgYSBi
ZXR0ZXIgZXN0aW1hdGUgdGhlIDEwIEkganVzdCBtYWRlIHVwICovCi0gICBjdXJyX2xvb2thaGVh
ZCA9IElNQVgoY3Vycl9sb29rYWhlYWQtMTAsIDApOworICAgLyogVGhlIC0xIGlzIHRvIGNvbXBl
bnNhdGUgZm9yIHRoZSBkZWxheSBpbiB0aGUgZmVhdHVyZXMgdGhlbXNlbHZlcy4gKi8KKyAgIGN1
cnJfbG9va2FoZWFkID0gSU1BWChjdXJyX2xvb2thaGVhZC0xLCAwKTsKIAogICAgcHN1bT0wOwog
ICAgLyogU3VtbWluZyB0aGUgcHJvYmFiaWxpdHkgb2YgdHJhbnNpdGlvbiBwYXR0ZXJucyB0aGF0
IGludm9sdmUgbXVzaWMgYXQKQEAgLTE5NywxMSArMjkwLDI4IEBAIHZvaWQgdG9uYWxpdHlfZ2V0
X2luZm8oVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgQW5hbHlzaXNJbmZvICppbmZvX291
dCwgaW50CiAgICBmb3IgKDtpPERFVEVDVF9TSVpFO2krKykKICAgICAgIHBzdW0gKz0gdG9uYWwt
PnBzcGVlY2hbaV07CiAgICBwc3VtID0gcHN1bSp0b25hbC0+bXVzaWNfY29uZmlkZW5jZSArICgx
LXBzdW0pKnRvbmFsLT5zcGVlY2hfY29uZmlkZW5jZTsKLSAgIC8qcHJpbnRmKCIlZiAlZiAlZlxu
IiwgcHN1bSwgaW5mb19vdXQtPm11c2ljX3Byb2IsIGluZm9fb3V0LT50b25hbGl0eSk7Ki8KKyAg
IC8qcHJpbnRmKCIlZiAlZiAlZiAlZiAlZlxuIiwgcHN1bSwgaW5mb19vdXQtPm11c2ljX3Byb2Is
IGluZm9fb3V0LT52YWRfcHJvYiwgaW5mb19vdXQtPmFjdGl2aXR5X3Byb2JhYmlsaXR5LCBpbmZv
X291dC0+dG9uYWxpdHkpOyovCiAKICAgIGluZm9fb3V0LT5tdXNpY19wcm9iID0gcHN1bTsKIH0K
IAorc3RhdGljIGNvbnN0IGZsb2F0IHN0ZF9mZWF0dXJlX2JpYXNbOV0gPSB7CisgICAgICA1LjY4
NDk0N2YsIDMuNDc1Mjg4ZiwgMS43NzA2MzRmLCAxLjU5OTc4NGYsIDMuNzczMjE1ZiwKKyAgICAg
IDIuMTYzMzEzZiwgMS4yNjA3NTZmLCAxLjExNjg2OGYsIDEuOTE4Nzk1ZgorfTsKKworI2RlZmlu
ZSBMRUFLQUdFX09GRlNFVCAyLjVmCisjZGVmaW5lIExFQUtBR0VfU0xPUEUgMi5mCisKKyNpZmRl
ZiBGSVhFRF9QT0lOVAorLyogRm9yIGZpeGVkLXBvaW50LCB0aGUgaW5wdXQgaXMgKy8tMl4xNSBz
aGlmdGVkIHVwIGJ5IFNJR19TSElGVCwgc28gd2UgbmVlZCB0bworICAgY29tcGVuc2F0ZSBmb3Ig
dGhhdCBpbiB0aGUgZW5lcmd5LiAqLworI2RlZmluZSBTQ0FMRV9DT01QRU5TICgxLmYvKChvcHVz
X2ludDMyKTE8PCgxNStTSUdfU0hJRlQpKSkKKyNkZWZpbmUgU0NBTEVfRU5FUihlKSAoKFNDQUxF
X0NPTVBFTlMqU0NBTEVfQ09NUEVOUykqKGUpKQorI2Vsc2UKKyNkZWZpbmUgU0NBTEVfRU5FUihl
KSAoZSkKKyNlbmRpZgorCiBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFu
YWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdF9tb2RlLCBjb25zdCB2b2lk
ICp4LCBpbnQgbGVuLCBpbnQgb2Zmc2V0LCBpbnQgYzEsIGludCBjMiwgaW50IEMsIGludCBsc2Jf
ZGVwdGgsIGRvd25taXhfZnVuYyBkb3dubWl4KQogewogICAgIGludCBpLCBiOwpAQCAtMjM1LDE5
ICszNDUsNDEgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNp
c1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICBmbG9hdCBub2lzZV9mbG9v
cjsKICAgICBpbnQgcmVtYWluaW5nOwogICAgIEFuYWx5c2lzSW5mbyAqaW5mbzsKKyAgICBmbG9h
dCBocF9lbmVyOworICAgIGZsb2F0IHRvbmFsaXR5MlsyNDBdOworICAgIGZsb2F0IG1pZEVbOF07
CisgICAgZmxvYXQgc3BlY192YXJpYWJpbGl0eT0wOworICAgIGZsb2F0IGJhbmRfbG9nMltOQl9U
QkFORFMrMV07CisgICAgZmxvYXQgbGVha2FnZV9mcm9tW05CX1RCQU5EUysxXTsKKyAgICBmbG9h
dCBsZWFrYWdlX3RvW05CX1RCQU5EUysxXTsKICAgICBTQVZFX1NUQUNLOwogCi0gICAgdG9uYWwt
Pmxhc3RfdHJhbnNpdGlvbisrOwotICAgIGFscGhhID0gMS5mL0lNSU4oMjAsIDErdG9uYWwtPmNv
dW50KTsKLSAgICBhbHBoYUUgPSAxLmYvSU1JTig1MCwgMSt0b25hbC0+Y291bnQpOwotICAgIGFs
cGhhRTIgPSAxLmYvSU1JTigxMDAwLCAxK3RvbmFsLT5jb3VudCk7CisgICAgYWxwaGEgPSAxLmYv
SU1JTigxMCwgMSt0b25hbC0+Y291bnQpOworICAgIGFscGhhRSA9IDEuZi9JTUlOKDI1LCAxK3Rv
bmFsLT5jb3VudCk7CisgICAgYWxwaGFFMiA9IDEuZi9JTUlOKDUwMCwgMSt0b25hbC0+Y291bnQp
OworCisgICAgaWYgKHRvbmFsLT5GcyA9PSA0ODAwMCkKKyAgICB7CisgICAgICAgLyogbGVuIGFu
ZCBvZmZzZXQgYXJlIG5vdyBhdCAyNCBrSHouICovCisgICAgICAgbGVuLz0gMjsKKyAgICAgICBv
ZmZzZXQgLz0gMjsKKyAgICB9IGVsc2UgaWYgKHRvbmFsLT5GcyA9PSAxNjAwMCkgeworICAgICAg
IGxlbiA9IDMqbGVuLzI7CisgICAgICAgb2Zmc2V0ID0gMypvZmZzZXQvMjsKKyAgICB9CiAKLSAg
ICBpZiAodG9uYWwtPmNvdW50PDQpCi0gICAgICAgdG9uYWwtPm11c2ljX3Byb2IgPSAuNTsKKyAg
ICBpZiAodG9uYWwtPmNvdW50PDQpIHsKKyAgICAgICBpZiAodG9uYWwtPmFwcGxpY2F0aW9uID09
IE9QVVNfQVBQTElDQVRJT05fVk9JUCkKKyAgICAgICAgICB0b25hbC0+bXVzaWNfcHJvYiA9IC4x
ZjsKKyAgICAgICBlbHNlCisgICAgICAgICAgdG9uYWwtPm11c2ljX3Byb2IgPSAuNjI1ZjsKKyAg
ICB9CiAgICAga2ZmdCA9IGNlbHRfbW9kZS0+bWRjdC5rZmZ0WzBdOwogICAgIGlmICh0b25hbC0+
Y291bnQ9PTApCiAgICAgICAgdG9uYWwtPm1lbV9maWxsID0gMjQwOwotICAgIGRvd25taXgoeCwg
JnRvbmFsLT5pbm1lbVt0b25hbC0+bWVtX2ZpbGxdLCBJTUlOKGxlbiwgQU5BTFlTSVNfQlVGX1NJ
WkUtdG9uYWwtPm1lbV9maWxsKSwgb2Zmc2V0LCBjMSwgYzIsIEMpOworICAgIHRvbmFsLT5ocF9l
bmVyX2FjY3VtICs9IChmbG9hdClkb3dubWl4X2FuZF9yZXNhbXBsZShkb3dubWl4LCB4LAorICAg
ICAgICAgICZ0b25hbC0+aW5tZW1bdG9uYWwtPm1lbV9maWxsXSwgdG9uYWwtPmRvd25taXhfc3Rh
dGUsCisgICAgICAgICAgSU1JTihsZW4sIEFOQUxZU0lTX0JVRl9TSVpFLXRvbmFsLT5tZW1fZmls
bCksIG9mZnNldCwgYzEsIGMyLCBDLCB0b25hbC0+RnMpOwogICAgIGlmICh0b25hbC0+bWVtX2Zp
bGwrbGVuIDwgQU5BTFlTSVNfQlVGX1NJWkUpCiAgICAgewogICAgICAgIHRvbmFsLT5tZW1fZmls
bCArPSBsZW47CkBAIC0yNTUsNiArMzg3LDcgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlz
aXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAg
ICAgICBSRVNUT1JFX1NUQUNLOwogICAgICAgIHJldHVybjsKICAgICB9CisgICAgaHBfZW5lciA9
IHRvbmFsLT5ocF9lbmVyX2FjY3VtOwogICAgIGluZm8gPSAmdG9uYWwtPmluZm9bdG9uYWwtPndy
aXRlX3BvcysrXTsKICAgICBpZiAodG9uYWwtPndyaXRlX3Bvcz49REVURUNUX1NJWkUpCiAgICAg
ICAgdG9uYWwtPndyaXRlX3Bvcy09REVURUNUX1NJWkU7CkBAIC0yNzMsNyArNDA2LDkgQEAgc3Rh
dGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwg
Y29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICB9CiAgICAgT1BVU19NT1ZFKHRvbmFsLT5pbm1lbSwg
dG9uYWwtPmlubWVtK0FOQUxZU0lTX0JVRl9TSVpFLTI0MCwgMjQwKTsKICAgICByZW1haW5pbmcg
PSBsZW4gLSAoQU5BTFlTSVNfQlVGX1NJWkUtdG9uYWwtPm1lbV9maWxsKTsKLSAgICBkb3dubWl4
KHgsICZ0b25hbC0+aW5tZW1bMjQwXSwgcmVtYWluaW5nLCBvZmZzZXQrQU5BTFlTSVNfQlVGX1NJ
WkUtdG9uYWwtPm1lbV9maWxsLCBjMSwgYzIsIEMpOworICAgIHRvbmFsLT5ocF9lbmVyX2FjY3Vt
ID0gKGZsb2F0KWRvd25taXhfYW5kX3Jlc2FtcGxlKGRvd25taXgsIHgsCisgICAgICAgICAgJnRv
bmFsLT5pbm1lbVsyNDBdLCB0b25hbC0+ZG93bm1peF9zdGF0ZSwgcmVtYWluaW5nLAorICAgICAg
ICAgIG9mZnNldCtBTkFMWVNJU19CVUZfU0laRS10b25hbC0+bWVtX2ZpbGwsIGMxLCBjMiwgQywg
dG9uYWwtPkZzKTsKICAgICB0b25hbC0+bWVtX2ZpbGwgPSAyNDAgKyByZW1haW5pbmc7CiAgICAg
b3B1c19mZnQoa2ZmdCwgaW4sIG91dCwgdG9uYWwtPmFyY2gpOwogI2lmbmRlZiBGSVhFRF9QT0lO
VApAQCAtMzA1LDI0ICs0NDAsMzEgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9u
YWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICBk
X2FuZ2xlMiA9IGFuZ2xlMiAtIGFuZ2xlOwogICAgICAgIGQyX2FuZ2xlMiA9IGRfYW5nbGUyIC0g
ZF9hbmdsZTsKIAotICAgICAgIG1vZDEgPSBkMl9hbmdsZSAtIChmbG9hdClmbG9vciguNStkMl9h
bmdsZSk7CisgICAgICAgbW9kMSA9IGQyX2FuZ2xlIC0gKGZsb2F0KWZsb2F0MmludChkMl9hbmds
ZSk7CiAgICAgICAgbm9pc2luZXNzW2ldID0gQUJTMTYobW9kMSk7CiAgICAgICAgbW9kMSAqPSBt
b2QxOwogICAgICAgIG1vZDEgKj0gbW9kMTsKIAotICAgICAgIG1vZDIgPSBkMl9hbmdsZTIgLSAo
ZmxvYXQpZmxvb3IoLjUrZDJfYW5nbGUyKTsKKyAgICAgICBtb2QyID0gZDJfYW5nbGUyIC0gKGZs
b2F0KWZsb2F0MmludChkMl9hbmdsZTIpOwogICAgICAgIG5vaXNpbmVzc1tpXSArPSBBQlMxNiht
b2QyKTsKICAgICAgICBtb2QyICo9IG1vZDI7CiAgICAgICAgbW9kMiAqPSBtb2QyOwogCi0gICAg
ICAgYXZnX21vZCA9IC4yNWYqKGQyQVtpXSsyLmYqbW9kMSttb2QyKTsKKyAgICAgICBhdmdfbW9k
ID0gLjI1ZiooZDJBW2ldK21vZDErMiptb2QyKTsKKyAgICAgICAvKiBUaGlzIGludHJvZHVjZXMg
YW4gZXh0cmEgZGVsYXkgb2YgMiBmcmFtZXMgaW4gdGhlIGRldGVjdGlvbi4gKi8KICAgICAgICB0
b25hbGl0eVtpXSA9IDEuZi8oMS5mKzQwLmYqMTYuZipwaTQqYXZnX21vZCktLjAxNWY7CisgICAg
ICAgLyogTm8gZGVsYXkgb24gdGhpcyBkZXRlY3Rpb24sIGJ1dCBpdCdzIGxlc3MgcmVsaWFibGUu
ICovCisgICAgICAgdG9uYWxpdHkyW2ldID0gMS5mLygxLmYrNDAuZioxNi5mKnBpNCptb2QyKS0u
MDE1ZjsKIAogICAgICAgIEFbaV0gPSBhbmdsZTI7CiAgICAgICAgZEFbaV0gPSBkX2FuZ2xlMjsK
ICAgICAgICBkMkFbaV0gPSBtb2QyOwogICAgIH0KLQorICAgIGZvciAoaT0yO2k8TjItMTtpKysp
CisgICAgeworICAgICAgIGZsb2F0IHR0ID0gTUlOMzIodG9uYWxpdHkyW2ldLCBNQVgzMih0b25h
bGl0eTJbaS0xXSwgdG9uYWxpdHkyW2krMV0pKTsKKyAgICAgICB0b25hbGl0eVtpXSA9IC45ZipN
QVgzMih0b25hbGl0eVtpXSwgdHQtLjFmKTsKKyAgICB9CiAgICAgZnJhbWVfdG9uYWxpdHkgPSAw
OwogICAgIG1heF9mcmFtZV90b25hbGl0eSA9IDA7CiAgICAgLyp0d19zdW0gPSAwOyovCkBAIC0z
MzksNiArNDgxLDIyIEBAIHN0YXRpYyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5h
bHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2RlICpjZWx0CiAgICAgfQogICAgIHJlbGF0
aXZlRSA9IDA7CiAgICAgZnJhbWVfbG91ZG5lc3MgPSAwOworICAgIC8qIFRoZSBlbmVyZ3kgb2Yg
dGhlIHZlcnkgZmlyc3QgYmFuZCBpcyBzcGVjaWFsIGJlY2F1c2Ugb2YgREMuICovCisgICAgewor
ICAgICAgIGZsb2F0IEUgPSAwOworICAgICAgIGZsb2F0IFgxciwgWDJyOworICAgICAgIFgxciA9
IDIqKGZsb2F0KW91dFswXS5yOworICAgICAgIFgyciA9IDIqKGZsb2F0KW91dFswXS5pOworICAg
ICAgIEUgPSBYMXIqWDFyICsgWDJyKlgycjsKKyAgICAgICBmb3IgKGk9MTtpPDQ7aSsrKQorICAg
ICAgIHsKKyAgICAgICAgICBmbG9hdCBiaW5FID0gb3V0W2ldLnIqKGZsb2F0KW91dFtpXS5yICsg
b3V0W04taV0uciooZmxvYXQpb3V0W04taV0ucgorICAgICAgICAgICAgICAgICAgICAgKyBvdXRb
aV0uaSooZmxvYXQpb3V0W2ldLmkgKyBvdXRbTi1pXS5pKihmbG9hdClvdXRbTi1pXS5pOworICAg
ICAgICAgIEUgKz0gYmluRTsKKyAgICAgICB9CisgICAgICAgRSA9IFNDQUxFX0VORVIoRSk7Cisg
ICAgICAgYmFuZF9sb2cyWzBdID0gLjVmKjEuNDQyNjk1ZiooZmxvYXQpbG9nKEUrMWUtMTBmKTsK
KyAgICB9CiAgICAgZm9yIChiPTA7YjxOQl9UQkFORFM7YisrKQogICAgIHsKICAgICAgICBmbG9h
dCBFPTAsIHRFPTAsIG5FPTA7CkBAIC0zNDgsMTIgKzUwNiw5IEBAIHN0YXRpYyB2b2lkIHRvbmFs
aXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2Rl
ICpjZWx0CiAgICAgICAgewogICAgICAgICAgIGZsb2F0IGJpbkUgPSBvdXRbaV0uciooZmxvYXQp
b3V0W2ldLnIgKyBvdXRbTi1pXS5yKihmbG9hdClvdXRbTi1pXS5yCiAgICAgICAgICAgICAgICAg
ICAgICArIG91dFtpXS5pKihmbG9hdClvdXRbaV0uaSArIG91dFtOLWldLmkqKGZsb2F0KW91dFtO
LWldLmk7Ci0jaWZkZWYgRklYRURfUE9JTlQKLSAgICAgICAgICAvKiBGSVhNRTogSXQncyBwcm9i
YWJseSBiZXN0IHRvIGNoYW5nZSB0aGUgQkZDQyBmaWx0ZXIgaW5pdGlhbCBzdGF0ZSBpbnN0ZWFk
ICovCi0gICAgICAgICAgYmluRSAqPSA1LjU1ZS0xN2Y7Ci0jZW5kaWYKKyAgICAgICAgICBiaW5F
ID0gU0NBTEVfRU5FUihiaW5FKTsKICAgICAgICAgICBFICs9IGJpbkU7Ci0gICAgICAgICAgdEUg
Kz0gYmluRSp0b25hbGl0eVtpXTsKKyAgICAgICAgICB0RSArPSBiaW5FKk1BWDMyKDAsIHRvbmFs
aXR5W2ldKTsKICAgICAgICAgICBuRSArPSBiaW5FKjIuZiooLjVmLW5vaXNpbmVzc1tpXSk7CiAg
ICAgICAgfQogI2lmbmRlZiBGSVhFRF9QT0lOVApAQCAtMzcxLDE0ICs1MjYsMjcgQEAgc3RhdGlj
IHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29u
c3QgQ0VMVE1vZGUgKmNlbHQKIAogICAgICAgIGZyYW1lX2xvdWRuZXNzICs9IChmbG9hdClzcXJ0
KEUrMWUtMTBmKTsKICAgICAgICBsb2dFW2JdID0gKGZsb2F0KWxvZyhFKzFlLTEwZik7Ci0gICAg
ICAgdG9uYWwtPmxvd0VbYl0gPSBNSU4zMihsb2dFW2JdLCB0b25hbC0+bG93RVtiXSsuMDFmKTsK
LSAgICAgICB0b25hbC0+aGlnaEVbYl0gPSBNQVgzMihsb2dFW2JdLCB0b25hbC0+aGlnaEVbYl0t
LjFmKTsKLSAgICAgICBpZiAodG9uYWwtPmhpZ2hFW2JdIDwgdG9uYWwtPmxvd0VbYl0rMS5mKQor
ICAgICAgIGJhbmRfbG9nMltiKzFdID0gLjVmKjEuNDQyNjk1ZiooZmxvYXQpbG9nKEUrMWUtMTBm
KTsKKyAgICAgICB0b25hbC0+bG9nRVt0b25hbC0+RV9jb3VudF1bYl0gPSBsb2dFW2JdOworICAg
ICAgIGlmICh0b25hbC0+Y291bnQ9PTApCisgICAgICAgICAgdG9uYWwtPmhpZ2hFW2JdID0gdG9u
YWwtPmxvd0VbYl0gPSBsb2dFW2JdOworICAgICAgIGlmICh0b25hbC0+aGlnaEVbYl0gPiB0b25h
bC0+bG93RVtiXSArIDcuNSkKKyAgICAgICB7CisgICAgICAgICAgaWYgKHRvbmFsLT5oaWdoRVti
XSAtIGxvZ0VbYl0gPiBsb2dFW2JdIC0gdG9uYWwtPmxvd0VbYl0pCisgICAgICAgICAgICAgdG9u
YWwtPmhpZ2hFW2JdIC09IC4wMWY7CisgICAgICAgICAgZWxzZQorICAgICAgICAgICAgIHRvbmFs
LT5sb3dFW2JdICs9IC4wMWY7CisgICAgICAgfQorICAgICAgIGlmIChsb2dFW2JdID4gdG9uYWwt
PmhpZ2hFW2JdKQogICAgICAgIHsKLSAgICAgICAgICB0b25hbC0+aGlnaEVbYl0rPS41ZjsKLSAg
ICAgICAgICB0b25hbC0+bG93RVtiXS09LjVmOworICAgICAgICAgIHRvbmFsLT5oaWdoRVtiXSA9
IGxvZ0VbYl07CisgICAgICAgICAgdG9uYWwtPmxvd0VbYl0gPSBNQVgzMih0b25hbC0+aGlnaEVb
Yl0tMTUsIHRvbmFsLT5sb3dFW2JdKTsKKyAgICAgICB9IGVsc2UgaWYgKGxvZ0VbYl0gPCB0b25h
bC0+bG93RVtiXSkKKyAgICAgICB7CisgICAgICAgICAgdG9uYWwtPmxvd0VbYl0gPSBsb2dFW2Jd
OworICAgICAgICAgIHRvbmFsLT5oaWdoRVtiXSA9IE1JTjMyKHRvbmFsLT5sb3dFW2JdKzE1LCB0
b25hbC0+aGlnaEVbYl0pOwogICAgICAgIH0KLSAgICAgICByZWxhdGl2ZUUgKz0gKGxvZ0VbYl0t
dG9uYWwtPmxvd0VbYl0pLygxZS0xNWYrdG9uYWwtPmhpZ2hFW2JdLXRvbmFsLT5sb3dFW2JdKTsK
KyAgICAgICByZWxhdGl2ZUUgKz0gKGxvZ0VbYl0tdG9uYWwtPmxvd0VbYl0pLygxZS0xNWYgKyAo
dG9uYWwtPmhpZ2hFW2JdLXRvbmFsLT5sb3dFW2JdKSk7CiAKICAgICAgICBMMT1MMj0wOwogICAg
ICAgIGZvciAoaT0wO2k8TkJfRlJBTUVTO2krKykKQEAgLTQxMCwyNyArNTc4LDc0IEBAIHN0YXRp
YyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNv
bnN0IENFTFRNb2RlICpjZWx0CiAgICAgICAgdG9uYWwtPnByZXZfYmFuZF90b25hbGl0eVtiXSA9
IGJhbmRfdG9uYWxpdHlbYl07CiAgICAgfQogCisgICAgbGVha2FnZV9mcm9tWzBdID0gYmFuZF9s
b2cyWzBdOworICAgIGxlYWthZ2VfdG9bMF0gPSBiYW5kX2xvZzJbMF0gLSBMRUFLQUdFX09GRlNF
VDsKKyAgICBmb3IgKGI9MTtiPE5CX1RCQU5EUysxO2IrKykKKyAgICB7CisgICAgICAgZmxvYXQg
bGVha19zbG9wZSA9IExFQUtBR0VfU0xPUEUqKHRiYW5kc1tiXS10YmFuZHNbYi0xXSkvNDsKKyAg
ICAgICBsZWFrYWdlX2Zyb21bYl0gPSBNSU4xNihsZWFrYWdlX2Zyb21bYi0xXStsZWFrX3Nsb3Bl
LCBiYW5kX2xvZzJbYl0pOworICAgICAgIGxlYWthZ2VfdG9bYl0gPSBNQVgxNihsZWFrYWdlX3Rv
W2ItMV0tbGVha19zbG9wZSwgYmFuZF9sb2cyW2JdLUxFQUtBR0VfT0ZGU0VUKTsKKyAgICB9Cisg
ICAgZm9yIChiPU5CX1RCQU5EUy0yO2I+PTA7Yi0tKQorICAgIHsKKyAgICAgICBmbG9hdCBsZWFr
X3Nsb3BlID0gTEVBS0FHRV9TTE9QRSoodGJhbmRzW2IrMV0tdGJhbmRzW2JdKS80OworICAgICAg
IGxlYWthZ2VfZnJvbVtiXSA9IE1JTjE2KGxlYWthZ2VfZnJvbVtiKzFdK2xlYWtfc2xvcGUsIGxl
YWthZ2VfZnJvbVtiXSk7CisgICAgICAgbGVha2FnZV90b1tiXSA9IE1BWDE2KGxlYWthZ2VfdG9b
YisxXS1sZWFrX3Nsb3BlLCBsZWFrYWdlX3RvW2JdKTsKKyAgICB9CisgICAgY2VsdF9hc3NlcnQo
TkJfVEJBTkRTKzEgPD0gTEVBS19CQU5EUyk7CisgICAgZm9yIChiPTA7YjxOQl9UQkFORFMrMTti
KyspCisgICAgeworICAgICAgIC8qIGxlYWtfYm9vc3RbXSBpcyBtYWRlIHVwIG9mIHR3byB0ZXJt
cy4gVGhlIGZpcnN0LCBiYXNlZCBvbiBsZWFrYWdlX3RvW10sCisgICAgICAgICAgcmVwcmVzZW50
cyB0aGUgYm9vc3QgbmVlZGVkIHRvIG92ZXJjb21lIHRoZSBhbW91bnQgb2YgYW5hbHlzaXMgbGVh
a2FnZQorICAgICAgICAgIGNhdXNlIGluIGEgd2Vha2VyIGJhbmQgYiBieSBsb3VkZXIgbmVpZ2hi
b3VyaW5nIGJhbmRzLgorICAgICAgICAgIFRoZSBzZWNvbmQsIGJhc2VkIG9uIGxlYWthZ2VfZnJv
bVtdLCBhcHBsaWVzIHRvIGEgbG91ZCBiYW5kIGIgZm9yCisgICAgICAgICAgd2hpY2ggdGhlIHF1
YW50aXphdGlvbiBub2lzZSBjYXVzZXMgc3ludGhlc2lzIGxlYWthZ2UgdG8gdGhlIHdlYWtlcgor
ICAgICAgICAgIG5laWdoYm91cmluZyBiYW5kcy4gKi8KKyAgICAgICBmbG9hdCBib29zdCA9IE1B
WDE2KDAsIGxlYWthZ2VfdG9bYl0gLSBiYW5kX2xvZzJbYl0pICsKKyAgICAgICAgICAgICBNQVgx
NigwLCBiYW5kX2xvZzJbYl0gLSAobGVha2FnZV9mcm9tW2JdK0xFQUtBR0VfT0ZGU0VUKSk7Cisg
ICAgICAgaW5mby0+bGVha19ib29zdFtiXSA9IElNSU4oMjU1LCAoaW50KWZsb29yKC41ICsgNjQu
Zipib29zdCkpOworICAgIH0KKyAgICBmb3IgKDtiPExFQUtfQkFORFM7YisrKSBpbmZvLT5sZWFr
X2Jvb3N0W2JdID0gMDsKKworICAgIGZvciAoaT0wO2k8TkJfRlJBTUVTO2krKykKKyAgICB7Cisg
ICAgICAgaW50IGo7CisgICAgICAgZmxvYXQgbWluZGlzdCA9IDFlMTVmOworICAgICAgIGZvciAo
aj0wO2o8TkJfRlJBTUVTO2orKykKKyAgICAgICB7CisgICAgICAgICAgaW50IGs7CisgICAgICAg
ICAgZmxvYXQgZGlzdD0wOworICAgICAgICAgIGZvciAoaz0wO2s8TkJfVEJBTkRTO2srKykKKyAg
ICAgICAgICB7CisgICAgICAgICAgICAgZmxvYXQgdG1wOworICAgICAgICAgICAgIHRtcCA9IHRv
bmFsLT5sb2dFW2ldW2tdIC0gdG9uYWwtPmxvZ0Vbal1ba107CisgICAgICAgICAgICAgZGlzdCAr
PSB0bXAqdG1wOworICAgICAgICAgIH0KKyAgICAgICAgICBpZiAoaiE9aSkKKyAgICAgICAgICAg
ICBtaW5kaXN0ID0gTUlOMzIobWluZGlzdCwgZGlzdCk7CisgICAgICAgfQorICAgICAgIHNwZWNf
dmFyaWFiaWxpdHkgKz0gbWluZGlzdDsKKyAgICB9CisgICAgc3BlY192YXJpYWJpbGl0eSA9IChm
bG9hdClzcXJ0KHNwZWNfdmFyaWFiaWxpdHkvTkJfRlJBTUVTL05CX1RCQU5EUyk7CiAgICAgYmFu
ZHdpZHRoX21hc2sgPSAwOwogICAgIGJhbmR3aWR0aCA9IDA7CiAgICAgbWF4RSA9IDA7CiAgICAg
bm9pc2VfZmxvb3IgPSA1LjdlLTRmLygxPDwoSU1BWCgwLGxzYl9kZXB0aC04KSkpOwotI2lmZGVm
IEZJWEVEX1BPSU5UCi0gICAgbm9pc2VfZmxvb3IgKj0gMTw8KDE1K1NJR19TSElGVCk7Ci0jZW5k
aWYKICAgICBub2lzZV9mbG9vciAqPSBub2lzZV9mbG9vcjsKLSAgICBmb3IgKGI9MDtiPE5CX1RP
VF9CQU5EUztiKyspCisgICAgZm9yIChiPTA7YjxOQl9UQkFORFM7YisrKQogICAgIHsKICAgICAg
ICBmbG9hdCBFPTA7CiAgICAgICAgaW50IGJhbmRfc3RhcnQsIGJhbmRfZW5kOwogICAgICAgIC8q
IEtlZXAgYSBtYXJnaW4gb2YgMzAwIEh6IGZvciBhbGlhc2luZyAqLwotICAgICAgIGJhbmRfc3Rh
cnQgPSBleHRyYV9iYW5kc1tiXTsKLSAgICAgICBiYW5kX2VuZCA9IGV4dHJhX2JhbmRzW2IrMV07
CisgICAgICAgYmFuZF9zdGFydCA9IHRiYW5kc1tiXTsKKyAgICAgICBiYW5kX2VuZCA9IHRiYW5k
c1tiKzFdOwogICAgICAgIGZvciAoaT1iYW5kX3N0YXJ0O2k8YmFuZF9lbmQ7aSsrKQogICAgICAg
IHsKICAgICAgICAgICBmbG9hdCBiaW5FID0gb3V0W2ldLnIqKGZsb2F0KW91dFtpXS5yICsgb3V0
W04taV0uciooZmxvYXQpb3V0W04taV0ucgogICAgICAgICAgICAgICAgICAgICAgKyBvdXRbaV0u
aSooZmxvYXQpb3V0W2ldLmkgKyBvdXRbTi1pXS5pKihmbG9hdClvdXRbTi1pXS5pOwogICAgICAg
ICAgIEUgKz0gYmluRTsKICAgICAgICB9CisgICAgICAgRSA9IFNDQUxFX0VORVIoRSk7CiAgICAg
ICAgbWF4RSA9IE1BWDMyKG1heEUsIEUpOwogICAgICAgIHRvbmFsLT5tZWFuRVtiXSA9IE1BWDMy
KCgxLWFscGhhRTIpKnRvbmFsLT5tZWFuRVtiXSwgRSk7CiAgICAgICAgRSA9IE1BWDMyKEUsIHRv
bmFsLT5tZWFuRVtiXSk7CkBAIC00NDEsMTQgKzY1NiwzNiBAQCBzdGF0aWMgdm9pZCB0b25hbGl0
eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAq
Y2VsdAogICAgICAgICAgIDIpIGxlc3MgdGhhbiA5MCBkQiBiZWxvdyB0aGUgcGVhayBiYW5kICht
YXhpbWFsIG1hc2tpbmcgcG9zc2libGUgY29uc2lkZXJpbmcKICAgICAgICAgICAgICBib3RoIHRo
ZSBBVEggYW5kIHRoZSBsb3VkbmVzcy1kZXBlbmRlbnQgc2xvcGUgb2YgdGhlIHNwcmVhZGluZyBm
dW5jdGlvbikKICAgICAgICAgICAzKSBhYm92ZSB0aGUgUENNIHF1YW50aXphdGlvbiBub2lzZSBm
bG9vcgorICAgICAgICAgIFdlIHVzZSBiKzEgYmVjYXVzZSB0aGUgZmlyc3QgQ0VMVCBiYW5kIGlz
bid0IGluY2x1ZGVkIGluIHRiYW5kc1tdCiAgICAgICAgKi8KICAgICAgICBpZiAoRT4uMSpiYW5k
d2lkdGhfbWFzayAmJiBFKjFlOWYgPiBtYXhFICYmIEUgPiBub2lzZV9mbG9vciooYmFuZF9lbmQt
YmFuZF9zdGFydCkpCi0gICAgICAgICAgYmFuZHdpZHRoID0gYjsKKyAgICAgICAgICBiYW5kd2lk
dGggPSBiKzE7CisgICAgfQorICAgIC8qIFNwZWNpYWwgY2FzZSBmb3IgdGhlIGxhc3QgdHdvIGJh
bmRzLCBmb3Igd2hpY2ggd2UgZG9uJ3QgaGF2ZSBzcGVjdHJ1bSBidXQgb25seQorICAgICAgIHRo
ZSBlbmVyZ3kgYWJvdmUgMTIga0h6LiAqLworICAgIGlmICh0b25hbC0+RnMgPT0gNDgwMDApIHsK
KyAgICAgICBmbG9hdCByYXRpbzsKKyAgICAgICBmbG9hdCBFID0gaHBfZW5lciooMS5mLygyNDAq
MjQwKSk7CisgICAgICAgcmF0aW8gPSB0b25hbC0+cHJldl9iYW5kd2lkdGg9PTIwID8gMC4wM2Yg
OiAwLjA3ZjsKKyNpZmRlZiBGSVhFRF9QT0lOVAorICAgICAgIC8qIHNpbGtfcmVzYW1wbGVyX2Rv
d24yX2hwKCkgc2hpZnRlZCByaWdodCBieSBhbiBleHRyYSA4IGJpdHMuICovCisgICAgICAgRSAq
PSAyNTYuZiooMS5mL1ExNU9ORSkqKDEuZi9RMTVPTkUpOworI2VuZGlmCisgICAgICAgbWF4RSA9
IE1BWDMyKG1heEUsIEUpOworICAgICAgIHRvbmFsLT5tZWFuRVtiXSA9IE1BWDMyKCgxLWFscGhh
RTIpKnRvbmFsLT5tZWFuRVtiXSwgRSk7CisgICAgICAgRSA9IE1BWDMyKEUsIHRvbmFsLT5tZWFu
RVtiXSk7CisgICAgICAgLyogVXNlIGEgc2ltcGxlIGZvbGxvd2VyIHdpdGggMTMgZEIvQmFyayBz
bG9wZSBmb3Igc3ByZWFkaW5nIGZ1bmN0aW9uICovCisgICAgICAgYmFuZHdpZHRoX21hc2sgPSBN
QVgzMiguMDVmKmJhbmR3aWR0aF9tYXNrLCBFKTsKKyAgICAgICBpZiAoRT5yYXRpbypiYW5kd2lk
dGhfbWFzayAmJiBFKjFlOWYgPiBtYXhFICYmIEUgPiBub2lzZV9mbG9vcioxNjApCisgICAgICAg
ICAgYmFuZHdpZHRoID0gMjA7CisgICAgICAgLyogVGhpcyBkZXRlY3RvciBpcyB1bnJlbGlhYmxl
LCBzbyBpZiB0aGUgYmFuZHdpZHRoIGlzIGNsb3NlIHRvIFNXQiwgYXNzdW1lIGl0J3MgRkIuICov
CisgICAgICAgaWYgKGJhbmR3aWR0aCA+PSAxNykKKyAgICAgICAgICBiYW5kd2lkdGggPSAyMDsK
ICAgICB9CiAgICAgaWYgKHRvbmFsLT5jb3VudDw9MikKICAgICAgICBiYW5kd2lkdGggPSAyMDsK
ICAgICBmcmFtZV9sb3VkbmVzcyA9IDIwKihmbG9hdClsb2cxMChmcmFtZV9sb3VkbmVzcyk7Ci0g
ICAgdG9uYWwtPkV0cmFja2VyID0gTUFYMzIodG9uYWwtPkV0cmFja2VyLS4wM2YsIGZyYW1lX2xv
dWRuZXNzKTsKKyAgICB0b25hbC0+RXRyYWNrZXIgPSBNQVgzMih0b25hbC0+RXRyYWNrZXItLjAw
M2YsIGZyYW1lX2xvdWRuZXNzKTsKICAgICB0b25hbC0+bG93RUNvdW50ICo9ICgxLWFscGhhRSk7
CiAgICAgaWYgKGZyYW1lX2xvdWRuZXNzIDwgdG9uYWwtPkV0cmFja2VyLTMwKQogICAgICAgIHRv
bmFsLT5sb3dFQ291bnQgKz0gYWxwaGFFOwpAQCAtNDYwLDExICs2OTcsMTggQEAgc3RhdGljIHZv
aWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3Qg
Q0VMVE1vZGUgKmNlbHQKICAgICAgICAgICBzdW0gKz0gZGN0X3RhYmxlW2kqMTYrYl0qbG9nRVti
XTsKICAgICAgICBCRkNDW2ldID0gc3VtOwogICAgIH0KKyAgICBmb3IgKGk9MDtpPDg7aSsrKQor
ICAgIHsKKyAgICAgICBmbG9hdCBzdW09MDsKKyAgICAgICBmb3IgKGI9MDtiPDE2O2IrKykKKyAg
ICAgICAgICBzdW0gKz0gZGN0X3RhYmxlW2kqMTYrYl0qLjVmKih0b25hbC0+aGlnaEVbYl0rdG9u
YWwtPmxvd0VbYl0pOworICAgICAgIG1pZEVbaV0gPSBzdW07CisgICAgfQogCiAgICAgZnJhbWVf
c3RhdGlvbmFyaXR5IC89IE5CX1RCQU5EUzsKICAgICByZWxhdGl2ZUUgLz0gTkJfVEJBTkRTOwog
ICAgIGlmICh0b25hbC0+Y291bnQ8MTApCi0gICAgICAgcmVsYXRpdmVFID0gLjU7CisgICAgICAg
cmVsYXRpdmVFID0gLjVmOwogICAgIGZyYW1lX25vaXNpbmVzcyAvPSBOQl9UQkFORFM7CiAjaWYg
MQogICAgIGluZm8tPmFjdGl2aXR5ID0gZnJhbWVfbm9pc2luZXNzICsgKDEtZnJhbWVfbm9pc2lu
ZXNzKSpyZWxhdGl2ZUU7CkBAIC00NzksNyArNzIzLDcgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlf
YW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNl
bHQKICAgICBpbmZvLT50b25hbGl0eV9zbG9wZSA9IHNsb3BlOwogCiAgICAgdG9uYWwtPkVfY291
bnQgPSAodG9uYWwtPkVfY291bnQrMSklTkJfRlJBTUVTOwotICAgIHRvbmFsLT5jb3VudCsrOwor
ICAgIHRvbmFsLT5jb3VudCA9IElNSU4odG9uYWwtPmNvdW50KzEsIEFOQUxZU0lTX0NPVU5UX01B
WCk7CiAgICAgaW5mby0+dG9uYWxpdHkgPSBmcmFtZV90b25hbGl0eTsKIAogICAgIGZvciAoaT0w
O2k8NDtpKyspCkBAIC00OTgsNiArNzQyLDggQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlz
aXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAg
ICAgICBmb3IgKGk9MDtpPDk7aSsrKQogICAgICAgICAgIHRvbmFsLT5zdGRbaV0gPSAoMS1hbHBo
YSkqdG9uYWwtPnN0ZFtpXSArIGFscGhhKmZlYXR1cmVzW2ldKmZlYXR1cmVzW2ldOwogICAgIH0K
KyAgICBmb3IgKGk9MDtpPDQ7aSsrKQorICAgICAgIGZlYXR1cmVzW2ldID0gQkZDQ1tpXS1taWRF
W2ldOwogCiAgICAgZm9yIChpPTA7aTw4O2krKykKICAgICB7CkBAIC01MDcsMjQgKzc1MywyNiBA
QCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRv
bmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgICAgIHRvbmFsLT5tZW1baV0gPSBCRkNDW2ld
OwogICAgIH0KICAgICBmb3IgKGk9MDtpPDk7aSsrKQotICAgICAgIGZlYXR1cmVzWzExK2ldID0g
KGZsb2F0KXNxcnQodG9uYWwtPnN0ZFtpXSk7Ci0gICAgZmVhdHVyZXNbMjBdID0gaW5mby0+dG9u
YWxpdHk7Ci0gICAgZmVhdHVyZXNbMjFdID0gaW5mby0+YWN0aXZpdHk7Ci0gICAgZmVhdHVyZXNb
MjJdID0gZnJhbWVfc3RhdGlvbmFyaXR5OwotICAgIGZlYXR1cmVzWzIzXSA9IGluZm8tPnRvbmFs
aXR5X3Nsb3BlOwotICAgIGZlYXR1cmVzWzI0XSA9IHRvbmFsLT5sb3dFQ291bnQ7CisgICAgICAg
ZmVhdHVyZXNbMTEraV0gPSAoZmxvYXQpc3FydCh0b25hbC0+c3RkW2ldKSAtIHN0ZF9mZWF0dXJl
X2JpYXNbaV07CisgICAgZmVhdHVyZXNbMThdID0gc3BlY192YXJpYWJpbGl0eSAtIDAuNzhmOwor
ICAgIGZlYXR1cmVzWzIwXSA9IGluZm8tPnRvbmFsaXR5IC0gMC4xNTQ3MjNmOworICAgIGZlYXR1
cmVzWzIxXSA9IGluZm8tPmFjdGl2aXR5IC0gMC43MjQ2NDNmOworICAgIGZlYXR1cmVzWzIyXSA9
IGZyYW1lX3N0YXRpb25hcml0eSAtIDAuNzQzNzE3ZjsKKyAgICBmZWF0dXJlc1syM10gPSBpbmZv
LT50b25hbGl0eV9zbG9wZSArIDAuMDY5MjE2ZjsKKyAgICBmZWF0dXJlc1syNF0gPSB0b25hbC0+
bG93RUNvdW50IC0gMC4wNjc5MzBmOwogCi0jaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCiAgICAg
bWxwX3Byb2Nlc3MoJm5ldCwgZmVhdHVyZXMsIGZyYW1lX3Byb2JzKTsKICAgICBmcmFtZV9wcm9i
c1swXSA9IC41ZiooZnJhbWVfcHJvYnNbMF0rMSk7CiAgICAgLyogQ3VydmUgZml0dGluZyBiZXR3
ZWVuIHRoZSBNTFAgcHJvYmFiaWxpdHkgYW5kIHRoZSBhY3R1YWwgcHJvYmFiaWxpdHkgKi8KLSAg
ICBmcmFtZV9wcm9ic1swXSA9IC4wMWYgKyAxLjIxZipmcmFtZV9wcm9ic1swXSpmcmFtZV9wcm9i
c1swXSAtIC4yM2YqKGZsb2F0KXBvdyhmcmFtZV9wcm9ic1swXSwgMTApOworICAgIC8qZnJhbWVf
cHJvYnNbMF0gPSAuMDFmICsgMS4yMWYqZnJhbWVfcHJvYnNbMF0qZnJhbWVfcHJvYnNbMF0gLSAu
MjNmKihmbG9hdClwb3coZnJhbWVfcHJvYnNbMF0sIDEwKTsqLwogICAgIC8qIFByb2JhYmlsaXR5
IG9mIGFjdGl2ZSBhdWRpbyAoYXMgb3Bwb3NlZCB0byBzaWxlbmNlKSAqLwogICAgIGZyYW1lX3By
b2JzWzFdID0gLjVmKmZyYW1lX3Byb2JzWzFdKy41ZjsKLSAgICAvKiBDb25zaWRlciB0aGF0IHNp
bGVuY2UgaGFzIGEgNTAtNTAgcHJvYmFiaWxpdHkuICovCi0gICAgZnJhbWVfcHJvYnNbMF0gPSBm
cmFtZV9wcm9ic1sxXSpmcmFtZV9wcm9ic1swXSArICgxLWZyYW1lX3Byb2JzWzFdKSouNWY7Cisg
ICAgZnJhbWVfcHJvYnNbMV0gKj0gZnJhbWVfcHJvYnNbMV07CisKKyAgICAvKiBQcm9iYWJpbGl0
eSBvZiBzcGVlY2ggb3IgbXVzaWMgdnMgbm9pc2UgKi8KKyAgICBpbmZvLT5hY3Rpdml0eV9wcm9i
YWJpbGl0eSA9IGZyYW1lX3Byb2JzWzFdOwogCi0gICAgLypwcmludGYoIiVmICVmICIsIGZyYW1l
X3Byb2JzWzBdLCBmcmFtZV9wcm9ic1sxXSk7Ki8KKyAgICAvKnByaW50ZigiJWYgJWZcbiIsIGZy
YW1lX3Byb2JzWzBdLCBmcmFtZV9wcm9ic1sxXSk7Ki8KICAgICB7CiAgICAgICAgLyogUHJvYmFi
aWxpdHkgb2Ygc3RhdGUgdHJhbnNpdGlvbiAqLwogICAgICAgIGZsb2F0IHRhdTsKQEAgLTU0Miwx
MiArNzkwLDMyIEBAIHN0YXRpYyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlz
aXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2RlICpjZWx0CiAgICAgICAgZmxvYXQgbXVzaWMw
OwogICAgICAgIGZsb2F0IHAsIHE7CiAKKyAgICAgICAvKiBNb3JlIHNpbGVuY2UgdHJhbnNpdGlv
bnMgZm9yIHNwZWVjaCB0aGFuIGZvciBtdXNpYy4gKi8KKyAgICAgICB0YXUgPSAuMDAxZip0b25h
bC0+bXVzaWNfcHJvYiArIC4wMWYqKDEtdG9uYWwtPm11c2ljX3Byb2IpOworICAgICAgIHAgPSBN
QVgxNiguMDVmLE1JTjE2KC45NWYsZnJhbWVfcHJvYnNbMV0pKTsKKyAgICAgICBxID0gTUFYMTYo
LjA1ZixNSU4xNiguOTVmLHRvbmFsLT52YWRfcHJvYikpOworICAgICAgIGJldGEgPSAuMDJmKy4w
NWYqQUJTMTYocC1xKS8ocCooMS1xKStxKigxLXApKTsKKyAgICAgICAvKiBwMCBhbmQgcDEgYXJl
IHRoZSBwcm9iYWJpbGl0aWVzIG9mIHNwZWVjaCBhbmQgbXVzaWMgYXQgdGhpcyBmcmFtZQorICAg
ICAgICAgIHVzaW5nIG9ubHkgaW5mb3JtYXRpb24gZnJvbSBwcmV2aW91cyBmcmFtZSBhbmQgYXBw
bHlpbmcgdGhlCisgICAgICAgICAgc3RhdGUgdHJhbnNpdGlvbiBtb2RlbCAqLworICAgICAgIHAw
ID0gKDEtdG9uYWwtPnZhZF9wcm9iKSooMS10YXUpICsgICAgdG9uYWwtPnZhZF9wcm9iICp0YXU7
CisgICAgICAgcDEgPSAgICB0b25hbC0+dmFkX3Byb2IgKigxLXRhdSkgKyAoMS10b25hbC0+dmFk
X3Byb2IpKnRhdTsKKyAgICAgICAvKiBXZSBhcHBseSB0aGUgY3VycmVudCBwcm9iYWJpbGl0eSB3
aXRoIGV4cG9uZW50IGJldGEgdG8gd29yayBhcm91bmQKKyAgICAgICAgICB0aGUgZmFjdCB0aGF0
IHRoZSBwcm9iYWJpbGl0eSBlc3RpbWF0ZXMgYXJlbid0IGluZGVwZW5kZW50LiAqLworICAgICAg
IHAwICo9IChmbG9hdClwb3coMS1mcmFtZV9wcm9ic1sxXSwgYmV0YSk7CisgICAgICAgcDEgKj0g
KGZsb2F0KXBvdyhmcmFtZV9wcm9ic1sxXSwgYmV0YSk7CisgICAgICAgLyogTm9ybWFsaXNlIHRo
ZSBwcm9iYWJpbGl0aWVzIHRvIGdldCB0aGUgTWFyb2t2IHByb2JhYmlsaXR5IG9mIG11c2ljLiAq
LworICAgICAgIHRvbmFsLT52YWRfcHJvYiA9IHAxLyhwMCtwMSk7CisgICAgICAgaW5mby0+dmFk
X3Byb2IgPSB0b25hbC0+dmFkX3Byb2I7CisgICAgICAgLyogQ29uc2lkZXIgdGhhdCBzaWxlbmNl
IGhhcyBhIDUwLTUwIHByb2JhYmlsaXR5IG9mIGJlaW5nIHNwZWVjaCBvciBtdXNpYy4gKi8KKyAg
ICAgICBmcmFtZV9wcm9ic1swXSA9IHRvbmFsLT52YWRfcHJvYipmcmFtZV9wcm9ic1swXSArICgx
LXRvbmFsLT52YWRfcHJvYikqLjVmOworCiAgICAgICAgLyogT25lIHRyYW5zaXRpb24gZXZlcnkg
MyBtaW51dGVzIG9mIGFjdGl2ZSBhdWRpbyAqLwotICAgICAgIHRhdSA9IC4wMDAwNWYqZnJhbWVf
cHJvYnNbMV07CisgICAgICAgdGF1ID0gLjAwMDFmOwogICAgICAgIC8qIEFkYXB0IGJldGEgYmFz
ZWQgb24gaG93ICJ1bmV4cGVjdGVkIiB0aGUgbmV3IHByb2IgaXMgKi8KICAgICAgICBwID0gTUFY
MTYoLjA1ZixNSU4xNiguOTVmLGZyYW1lX3Byb2JzWzBdKSk7CiAgICAgICAgcSA9IE1BWDE2KC4w
NWYsTUlOMTYoLjk1Zix0b25hbC0+bXVzaWNfcHJvYikpOwotICAgICAgIGJldGEgPSAuMDFmKy4w
NWYqQUJTMTYocC1xKS8ocCooMS1xKStxKigxLXApKTsKKyAgICAgICBiZXRhID0gLjAyZisuMDVm
KkFCUzE2KHAtcSkvKHAqKDEtcSkrcSooMS1wKSk7CiAgICAgICAgLyogcDAgYW5kIHAxIGFyZSB0
aGUgcHJvYmFiaWxpdGllcyBvZiBzcGVlY2ggYW5kIG11c2ljIGF0IHRoaXMgZnJhbWUKICAgICAg
ICAgICB1c2luZyBvbmx5IGluZm9ybWF0aW9uIGZyb20gcHJldmlvdXMgZnJhbWUgYW5kIGFwcGx5
aW5nIHRoZQogICAgICAgICAgIHN0YXRlIHRyYW5zaXRpb24gbW9kZWwgKi8KQEAgLTU2MSw2ICs4
MjksNyBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3Rh
dGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgICAgIHRvbmFsLT5tdXNpY19wcm9i
ID0gcDEvKHAwK3AxKTsKICAgICAgICBpbmZvLT5tdXNpY19wcm9iID0gdG9uYWwtPm11c2ljX3By
b2I7CiAKKyAgICAgICAvKnByaW50ZigiJWYgJWYgJWYgJWZcbiIsIGZyYW1lX3Byb2JzWzBdLCBm
cmFtZV9wcm9ic1sxXSwgdG9uYWwtPm11c2ljX3Byb2IsIHRvbmFsLT52YWRfcHJvYik7Ki8KICAg
ICAgICAvKiBUaGlzIGNodW5rIG9mIGNvZGUgZGVhbHMgd2l0aCBkZWxheWVkIGRlY2lzaW9uLiAq
LwogICAgICAgIHBzdW09MWUtMjBmOwogICAgICAgIC8qIEluc3RhbnRhbmVvdXMgcHJvYmFiaWxp
dHkgb2Ygc3BlZWNoIGFuZCBtdXNpYywgd2l0aCBiZXRhIHByZS1hcHBsaWVkLiAqLwpAQCAtNTY4
LDggKzgzNywxMSBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5
c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgICAgIG11c2ljMCAgPSAo
ZmxvYXQpcG93KGZyYW1lX3Byb2JzWzBdLCBiZXRhKTsKICAgICAgICBpZiAodG9uYWwtPmNvdW50
PT0xKQogICAgICAgIHsKLSAgICAgICAgICB0b25hbC0+cHNwZWVjaFswXT0uNTsKLSAgICAgICAg
ICB0b25hbC0+cG11c2ljIFswXT0uNTsKKyAgICAgICAgICBpZiAodG9uYWwtPmFwcGxpY2F0aW9u
ID09IE9QVVNfQVBQTElDQVRJT05fVk9JUCkKKyAgICAgICAgICAgICB0b25hbC0+cG11c2ljWzBd
ID0gLjFmOworICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICB0b25hbC0+cG11c2ljWzBdID0g
LjYyNWY7CisgICAgICAgICAgdG9uYWwtPnBzcGVlY2hbMF0gPSAxLXRvbmFsLT5wbXVzaWNbMF07
CiAgICAgICAgfQogICAgICAgIC8qIFVwZGF0ZWQgcHJvYmFiaWxpdHkgb2YgaGF2aW5nIG9ubHkg
c3BlZWNoIChzMCkgb3Igb25seSBtdXNpYyAobTApLAogICAgICAgICAgIGJlZm9yZSBjb25zaWRl
cmluZyB0aGUgbmV3IG9ic2VydmF0aW9uLiAqLwpAQCAtNjE5LDI0ICs4OTEsMTcgQEAgc3RhdGlj
IHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29u
c3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICAgICAgICB0b25hbC0+c3BlZWNoX2NvbmZpZGVuY2Vf
Y291bnQgPSBJTUlOKHRvbmFsLT5zcGVlY2hfY29uZmlkZW5jZV9jb3VudCwgNTAwKTsKICAgICAg
ICAgICAgICB0b25hbC0+c3BlZWNoX2NvbmZpZGVuY2UgKz0gYWRhcHQqTUlOMTYoLjJmLGZyYW1l
X3Byb2JzWzBdLXRvbmFsLT5zcGVlY2hfY29uZmlkZW5jZSk7CiAgICAgICAgICAgfQotICAgICAg
IH0gZWxzZSB7Ci0gICAgICAgICAgaWYgKHRvbmFsLT5tdXNpY19jb25maWRlbmNlX2NvdW50PT0w
KQotICAgICAgICAgICAgIHRvbmFsLT5tdXNpY19jb25maWRlbmNlID0gLjlmOwotICAgICAgICAg
IGlmICh0b25hbC0+c3BlZWNoX2NvbmZpZGVuY2VfY291bnQ9PTApCi0gICAgICAgICAgICAgdG9u
YWwtPnNwZWVjaF9jb25maWRlbmNlID0gLjFmOwogICAgICAgIH0KICAgICB9Ci0gICAgaWYgKHRv
bmFsLT5sYXN0X211c2ljICE9ICh0b25hbC0+bXVzaWNfcHJvYj4uNWYpKQotICAgICAgIHRvbmFs
LT5sYXN0X3RyYW5zaXRpb249MDsKICAgICB0b25hbC0+bGFzdF9tdXNpYyA9IHRvbmFsLT5tdXNp
Y19wcm9iPi41ZjsKLSNlbHNlCi0gICAgaW5mby0+bXVzaWNfcHJvYiA9IDA7Ci0jZW5kaWYKLSAg
ICAvKmZvciAoaT0wO2k8MjU7aSsrKQorI2lmZGVmIE1MUF9UUkFJTklORworICAgIGZvciAoaT0w
O2k8MjU7aSsrKQogICAgICAgIHByaW50ZigiJWYgIiwgZmVhdHVyZXNbaV0pOwotICAgIHByaW50
ZigiXG4iKTsqLworICAgIHByaW50ZigiXG4iKTsKKyNlbmRpZgogCiAgICAgaW5mby0+YmFuZHdp
ZHRoID0gYmFuZHdpZHRoOworICAgIHRvbmFsLT5wcmV2X2JhbmR3aWR0aCA9IGJhbmR3aWR0aDsK
ICAgICAvKnByaW50ZigiJWQgJWRcbiIsIGluZm8tPmJhbmR3aWR0aCwgaW5mby0+b3B1c19iYW5k
d2lkdGgpOyovCiAgICAgaW5mby0+bm9pc2luZXNzID0gZnJhbWVfbm9pc2luZXNzOwogICAgIGlu
Zm8tPnZhbGlkID0gMTsKQEAgLTY1MCwxOCArOTE1LDE5IEBAIHZvaWQgcnVuX2FuYWx5c2lzKFRv
bmFsaXR5QW5hbHlzaXNTdGF0ZSAqYW5hbHlzaXMsIGNvbnN0IENFTFRNb2RlICpjZWx0X21vZGUs
IGNvCiAgICBpbnQgb2Zmc2V0OwogICAgaW50IHBjbV9sZW47CiAKKyAgIGFuYWx5c2lzX2ZyYW1l
X3NpemUgLT0gYW5hbHlzaXNfZnJhbWVfc2l6ZSYxOwogICAgaWYgKGFuYWx5c2lzX3BjbSAhPSBO
VUxMKQogICAgewogICAgICAgLyogQXZvaWQgb3ZlcmZsb3cvd3JhcC1hcm91bmQgb2YgdGhlIGFu
YWx5c2lzIGJ1ZmZlciAqLwotICAgICAgYW5hbHlzaXNfZnJhbWVfc2l6ZSA9IElNSU4oKERFVEVD
VF9TSVpFLTUpKkZzLzEwMCwgYW5hbHlzaXNfZnJhbWVfc2l6ZSk7CisgICAgICBhbmFseXNpc19m
cmFtZV9zaXplID0gSU1JTigoREVURUNUX1NJWkUtNSkqRnMvNTAsIGFuYWx5c2lzX2ZyYW1lX3Np
emUpOwogCiAgICAgICBwY21fbGVuID0gYW5hbHlzaXNfZnJhbWVfc2l6ZSAtIGFuYWx5c2lzLT5h
bmFseXNpc19vZmZzZXQ7CiAgICAgICBvZmZzZXQgPSBhbmFseXNpcy0+YW5hbHlzaXNfb2Zmc2V0
OwotICAgICAgZG8gewotICAgICAgICAgdG9uYWxpdHlfYW5hbHlzaXMoYW5hbHlzaXMsIGNlbHRf
bW9kZSwgYW5hbHlzaXNfcGNtLCBJTUlOKDQ4MCwgcGNtX2xlbiksIG9mZnNldCwgYzEsIGMyLCBD
LCBsc2JfZGVwdGgsIGRvd25taXgpOwotICAgICAgICAgb2Zmc2V0ICs9IDQ4MDsKLSAgICAgICAg
IHBjbV9sZW4gLT0gNDgwOwotICAgICAgfSB3aGlsZSAocGNtX2xlbj4wKTsKKyAgICAgIHdoaWxl
IChwY21fbGVuPjApIHsKKyAgICAgICAgIHRvbmFsaXR5X2FuYWx5c2lzKGFuYWx5c2lzLCBjZWx0
X21vZGUsIGFuYWx5c2lzX3BjbSwgSU1JTihGcy81MCwgcGNtX2xlbiksIG9mZnNldCwgYzEsIGMy
LCBDLCBsc2JfZGVwdGgsIGRvd25taXgpOworICAgICAgICAgb2Zmc2V0ICs9IEZzLzUwOworICAg
ICAgICAgcGNtX2xlbiAtPSBGcy81MDsKKyAgICAgIH0KICAgICAgIGFuYWx5c2lzLT5hbmFseXNp
c19vZmZzZXQgPSBhbmFseXNpc19mcmFtZV9zaXplOwogCiAgICAgICBhbmFseXNpcy0+YW5hbHlz
aXNfb2Zmc2V0IC09IGZyYW1lX3NpemU7CkBAIC02NzAsMyArOTM2LDUgQEAgdm9pZCBydW5fYW5h
bHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICphbmFseXNpcywgY29uc3QgQ0VMVE1vZGUgKmNl
bHRfbW9kZSwgY28KICAgIGFuYWx5c2lzX2luZm8tPnZhbGlkID0gMDsKICAgIHRvbmFsaXR5X2dl
dF9pbmZvKGFuYWx5c2lzLCBhbmFseXNpc19pbmZvLCBmcmFtZV9zaXplKTsKIH0KKworI2VuZGlm
IC8qIERJU0FCTEVfRkxPQVRfQVBJICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5oIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMv
YW5hbHlzaXMuaAppbmRleCA5ZWFlNTZhNTI1Mzc4YTM2MDI0NDRjZTk2MDk1N2Q0NGJmOTFmYTYx
Li5jYWM1MWRmYTRlYjU1ZDhkMWFiYmIwZGVlOWYwNzA0NjM1NDJkZjFkIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Ny
Yy9hbmFseXNpcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc3JjL2FuYWx5c2lzLmgKQEAgLTMzLDEzICszMywyMCBAQAogCiAj
ZGVmaW5lIE5CX0ZSQU1FUyA4CiAjZGVmaW5lIE5CX1RCQU5EUyAxOAotI2RlZmluZSBOQl9UT1Rf
QkFORFMgMjEKLSNkZWZpbmUgQU5BTFlTSVNfQlVGX1NJWkUgNzIwIC8qIDE1IG1zIGF0IDQ4IGtI
eiAqLworI2RlZmluZSBBTkFMWVNJU19CVUZfU0laRSA3MjAgLyogMzAgbXMgYXQgMjQga0h6ICov
CiAKLSNkZWZpbmUgREVURUNUX1NJWkUgMjAwCisvKiBBdCB0aGF0IHBvaW50IHdlIGNhbiBzdG9w
IGNvdW50aW5nIGZyYW1lcyBiZWNhdXNlIGl0IG5vIGxvbmdlciBtYXR0ZXJzLiAqLworI2RlZmlu
ZSBBTkFMWVNJU19DT1VOVF9NQVggMTAwMDAKKworI2RlZmluZSBERVRFQ1RfU0laRSAxMDAKKwor
LyogVW5jb21tZW50IHRoaXMgdG8gcHJpbnQgdGhlIE1MUCBmZWF0dXJlcyBvbiBzdGRvdXQuICov
CisvKiNkZWZpbmUgTUxQX1RSQUlOSU5HKi8KIAogdHlwZWRlZiBzdHJ1Y3QgewogICAgaW50IGFy
Y2g7CisgICBpbnQgYXBwbGljYXRpb247CisgICBvcHVzX2ludDMyIEZzOwogI2RlZmluZSBUT05B
TElUWV9BTkFMWVNJU19SRVNFVF9TVEFSVCBhbmdsZQogICAgZmxvYXQgYW5nbGVbMjQwXTsKICAg
IGZsb2F0IGRfYW5nbGVbMjQwXTsKQEAgLTQ4LDIxICs1NSwyMiBAQCB0eXBlZGVmIHN0cnVjdCB7
CiAgICBpbnQgICBtZW1fZmlsbDsgICAgICAgICAgICAgICAgICAgICAgLyogbnVtYmVyIG9mIHVz
YWJsZSBzYW1wbGVzIGluIHRoZSBidWZmZXIgKi8KICAgIGZsb2F0IHByZXZfYmFuZF90b25hbGl0
eVtOQl9UQkFORFNdOwogICAgZmxvYXQgcHJldl90b25hbGl0eTsKKyAgIGludCBwcmV2X2JhbmR3
aWR0aDsKICAgIGZsb2F0IEVbTkJfRlJBTUVTXVtOQl9UQkFORFNdOworICAgZmxvYXQgbG9nRVtO
Ql9GUkFNRVNdW05CX1RCQU5EU107CiAgICBmbG9hdCBsb3dFW05CX1RCQU5EU107CiAgICBmbG9h
dCBoaWdoRVtOQl9UQkFORFNdOwotICAgZmxvYXQgbWVhbkVbTkJfVE9UX0JBTkRTXTsKKyAgIGZs
b2F0IG1lYW5FW05CX1RCQU5EUysxXTsKICAgIGZsb2F0IG1lbVszMl07CiAgICBmbG9hdCBjbWVh
bls4XTsKICAgIGZsb2F0IHN0ZFs5XTsKICAgIGZsb2F0IG11c2ljX3Byb2I7CisgICBmbG9hdCB2
YWRfcHJvYjsKICAgIGZsb2F0IEV0cmFja2VyOwogICAgZmxvYXQgbG93RUNvdW50OwogICAgaW50
IEVfY291bnQ7CiAgICBpbnQgbGFzdF9tdXNpYzsKLSAgIGludCBsYXN0X3RyYW5zaXRpb247CiAg
ICBpbnQgY291bnQ7Ci0gICBmbG9hdCBzdWJmcmFtZV9tZW1bM107CiAgICBpbnQgYW5hbHlzaXNf
b2Zmc2V0OwogICAgLyoqIFByb2JhYmlsaXR5IG9mIGhhdmluZyBzcGVlY2ggZm9yIHRpbWUgaSB0
byBERVRFQ1RfU0laRS0xIChhbmQgbXVzaWMgYmVmb3JlKS4KICAgICAgICBwc3BlZWNoWzBdIGlz
IHRoZSBwcm9iYWJpbGl0eSB0aGF0IGFsbCBmcmFtZXMgaW4gdGhlIHdpbmRvdyBhcmUgc3BlZWNo
LiAqLwpAQCAtNzcsNiArODUsOCBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICBpbnQgd3JpdGVfcG9z
OwogICAgaW50IHJlYWRfcG9zOwogICAgaW50IHJlYWRfc3ViZnJhbWU7CisgICBmbG9hdCBocF9l
bmVyX2FjY3VtOworICAgb3B1c192YWwzMiBkb3dubWl4X3N0YXRlWzNdOwogICAgQW5hbHlzaXNJ
bmZvIGluZm9bREVURUNUX1NJWkVdOwogfSBUb25hbGl0eUFuYWx5c2lzU3RhdGU7CiAKQEAgLTg2
LDcgKzk2LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICogbm90IGJlIHJlcGVhdGVkIGV2ZXJ5IGFu
YWx5c2lzIHN0ZXAuIE5vIGFsbG9jYXRlZCBtZW1vcnkgaXMgcmV0YWluZWQKICAqIGJ5IHRoZSBz
dGF0ZSBzdHJ1Y3QsIHNvIG5vIGNsZWFudXAgY2FsbCBpcyByZXF1aXJlZC4KICAqLwotdm9pZCB0
b25hbGl0eV9hbmFseXNpc19pbml0KFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqYW5hbHlzaXMpOwor
dm9pZCB0b25hbGl0eV9hbmFseXNpc19pbml0KFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqYW5hbHlz
aXMsIG9wdXNfaW50MzIgRnMpOwogCiAvKiogUmVzZXQgYSBUb25hbGl0eUFuYWx5c2lzU3RhdGUg
c3R1Y3QuCiAgKgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvbWxwX2RhdGEuYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL21scF9kYXRhLmMKaW5k
ZXggYzJmZGE0ZTJlNTkzZmQzNzI4NjNkNDMzNzU5NDc4NjJiMjc3ZTQ4OC4uYTgxOTg4MGJmZjVh
ODk5NWQyMTFiN2JiMzQzYTcwMzNjOWM3MTY5MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvbWxwX2RhdGEuYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NyYy9tbHBfZGF0YS5jCkBAIC0xLDEwNiArMSwxMDkgQEAKLS8qIFRoZSBjb250ZW50cyBv
ZiB0aGlzIGZpbGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IG1scF90cmFpbi5jCi0g
ICBJdCBjb250YWlucyBtdWx0aS1sYXllciBwZXJjZXB0cm9uIChNTFApIHdlaWdodHMuICovCi0K
ICNpZmRlZiBIQVZFX0NPTkZJR19ICiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjZW5kaWYKIAogI2lu
Y2x1ZGUgIm1scC5oIgogCi0vKiBSTVMgZXJyb3Igd2FzIDAuMTM4MzIwLCBzZWVkIHdhcyAxMzYx
NTM1NjYzICovCisvKiBSTVMgZXJyb3Igd2FzIDAuMjgwNDkyLCBzZWVkIHdhcyAxNDgwNDc4MTcz
ICovCisvKiAwLjAwNTk3NiAwLjAzMTgyMSAoMC4yODA0OTQgMC4yODA0OTIpIGRvbmUgKi8KIAot
c3RhdGljIGNvbnN0IGZsb2F0IHdlaWdodHNbNDIyXSA9IHsKK3N0YXRpYyBjb25zdCBmbG9hdCB3
ZWlnaHRzWzQ1MF0gPSB7CiAKIC8qIGhpZGRlbiBsYXllciAqLwotLTAuMDk0MTEyNWYsIC0wLjMw
Mjk3NmYsIC0wLjYwMzU1NWYsIC0wLjE5MzkzZiwgLTAuMTg1OTgzZiwKLS0wLjYwMTYxN2YsIC0w
LjA0NjUzMTdmLCAtMC4xMTQ1NjNmLCAtMC4xMDM1OTlmLCAtMC42MTg5MzhmLAotLTAuMzE3ODU5
ZiwgLTAuMTY5OTQ5ZiwgLTAuMDcwMjg4NWYsIDAuMTQ4MDY1ZiwgMC40MDk1MjRmLAotMC41NDg0
MzJmLCAwLjM2NzY0OWYsIC0wLjQ5NDM5M2YsIDAuNzY0MzA2ZiwgLTEuODM5NTdmLAotMC4xNzA4
NDlmLCAxMi43ODZmLCAtMS4wODg0OGYsIC0xLjI3Mjg0ZiwgLTE2LjI2MDZmLAotMjQuMTc3M2Ys
IC01LjU3NDU0ZiwgLTAuMTcyNzZmLCAtMC4xNjMzODhmLCAtMC4yMjQ0MjFmLAotLTAuMDk0ODk0
NGYsIC0wLjA3Mjg2OTVmLCAtMC4yNjU1N2YsIC0wLjEwMDI4M2YsIC0wLjA1MTU0NTlmLAotLTAu
MTQ2MTQyZiwgLTAuMTIwNjc0ZiwgLTAuMTgwNjU1ZiwgMC4xMjg1N2YsIDAuNDQyMTM4ZiwKLS0w
LjQ5MzczNWYsIDAuMTY3NzY3ZiwgMC4yMDY2OTlmLCAtMC4xOTc1NjdmLCAwLjQxNzk5OWYsCi0x
LjUwMzY0ZiwgLTAuNzczMzQxZiwgLTEwLjA0MDFmLCAwLjQwMTg3MmYsIDIuOTc5NjZmLAotMTUu
MjE2NWYsIC0xLjg4OTA1ZiwgLTEuMTkyNTRmLCAwLjAyODUzOTdmLCAtMC4wMDQwNTEzOWYsCi0w
LjA3MDc1NjVmLCAwLjAwODI1Njk5ZiwgLTAuMDkyNzI2OWYsIC0wLjAxMDM5M2YsIC0wLjAwNDI4
ODgyZiwKLS0wLjAwNDg5NzQzZiwgLTAuMDcwOTczMWYsIC0wLjAwMjU1OTkyZiwgMC4wMzk1NjE5
ZiwgMC4yMjY0MjRmLAotMC4wMzI1MjMxZiwgMC4xNjIxNzVmLCAtMC4xMDAxMThmLCAwLjQ4NTc4
OWYsIDAuMTI2OTdmLAotMC4yODU5MzdmLCAwLjAxNTU2MzdmLCAwLjEwNTQ2ZiwgMy4wNTU1OGYs
IDEuMTUwNTlmLAotLTEuMDA5MDRmLCAtMS44MzA4OGYsIDMuMzE3NjZmLCAtMy40MjUxNmYsIC0w
LjExOTEzNWYsCi0tMC4wNDA1NjU0ZiwgMC4wMDY5MDA2OGYsIDAuMDE3OTg3N2YsIC0wLjAzODI0
ODdmLCAwLjAwNTk3OTQxZiwKLS0wLjAxODM2MTFmLCAwLjAwMTkwMzk1ZiwgLTAuMTQ0MzIyZiwg
LTAuMDQzNTY3MWYsIDAuMDAwOTkwNTk0ZiwKLTAuMjIxMDg3ZiwgMC4xNDI0MDVmLCAwLjQ4NDA2
NmYsIDAuNDA0Mzk1ZiwgMC41MTE5NTVmLAotLTAuMjM3MjU1ZiwgMC4yNDE3NDJmLCAwLjM1MDQ1
ZiwgLTAuNjk5NDI4ZiwgMTAuMzk5M2YsCi0yLjY1MDdmLCAtMi40MzQ1OWYsIC00LjE4ODM4Ziwg
MS4wNTkyOGYsIDEuNzEwNjdmLAotMC4wMDY2NzgxMWYsIC0wLjA3MjEzMzVmLCAtMC4wMzk3MzQ2
ZiwgMC4wMzYyNzA0ZiwgLTAuMTE0OTZmLAotLTAuMDIzNTc3NmYsIDAuMDA4MjE2MWYsIC0wLjAx
NDE3NDFmLCAtMC4wMzI5Njk5ZiwgLTAuMDM1NDI1M2YsCi0wLjAwMjc3NDA0ZiwgLTAuMjkwNjU0
ZiwgLTEuMTQ3NjdmLCAtMC4zMTkxNTdmLCAtMC42ODY1NDRmLAotMC4zNjg5N2YsIDAuNDc4ODk5
ZiwgMC4xODI1NzlmLCAtMC40MTEwNjlmLCAwLjg4MTEwNGYsCi0tNC42MDY4M2YsIDEuNDY5N2Ys
IDAuMzM1ODQ1ZiwgLTEuODE5MDVmLCAtMzAuMTY5OWYsCi01LjU1MjI1ZiwgMC4wMDE5NTA4Ziwg
LTAuMTIzNTc2ZiwgLTAuMDcyNzMzMmYsIC0wLjA2NDE1OTdmLAotLTAuMDUzNDQ1OGYsIC0wLjEw
ODE2NmYsIC0wLjA5MzczNjhmLCAtMC4wNjk3ODgzZiwgLTAuMDI3NTQ3NWYsCi0tMC4xOTIzMDlm
LCAtMC4xMTAwNzRmLCAwLjI4NTM3NWYsIC0wLjQwNTU5N2YsIDAuMDkyNjcyNGYsCi0tMC4yODc4
ODFmLCAtMC44NTExOTNmLCAtMC4wOTk0OTNmLCAtMC4yMzM3NjRmLCAtMS4yODUyZiwKLTEuMTM2
MTFmLCAzLjEyMTY4ZiwgLTAuMDY5OWYsIC0xLjg2MjE2ZiwgMi42NTI5MmYsCi0tNy4zMTAzNmYs
IDIuNDQ3NzZmLCAtMC4wMDExMTgwMmYsIC0wLjA2MzI3ODZmLCAtMC4wMzc2Mjk2ZiwKLS0wLjE0
OTg1MWYsIDAuMTQyOTYzZiwgMC4xODQzNjhmLCAwLjEyMzQzM2YsIDAuMDc1NjE1OGYsCi0wLjEx
NzMxMmYsIDAuMDkzMzM5NWYsIDAuMDY5MjE2M2YsIDAuMDg0MjU5MmYsIDAuMDcwNDY4M2YsCi0w
LjA1ODk5NjNmLCAwLjA5NDIyMDVmLCAtMC40NDg4NjJmLCAwLjAyNjI2NzdmLCAwLjI3MDM1MmYs
Ci0tMC4yNjIzMTdmLCAwLjE3MjU4NmYsIDIuMDAyMjdmLCAtMC4xNTkyMTZmLCAwLjAzODQyMmYs
Ci0xMC4yMDczZiwgNC4xNTUzNmYsIC0yLjM0MDdmLCAtMC4wNTUwMjY1ZiwgMC4wMDk2NDc5MmYs
Ci0tMC4xNDEzMzZmLCAwLjAyNzQ1MDFmLCAwLjAzNDM5MjFmLCAtMC4wNDg3NDI4ZiwgMC4wOTUw
MTcyZiwKLS0wLjAwNzc1MDE3ZiwgLTAuMDM3MjQ5MmYsIC0wLjAwNTQ4MTIxZiwgLTAuMDY2MzY5
NWYsIDAuMDk2MDUwNmYsCi0tMC4yMDAwMDhmLCAtMC4wNDEyODI3ZiwgMC41ODcyOGYsIDAuMDUx
NTc4N2YsIDAuMzM3MjU0ZiwKLTAuODU1MDI0ZiwgMC42NjgzNzFmLCAtMC4xMTQ5MDRmLCAtMy42
Mjk2MmYsIC0wLjQ2NzQ3N2YsCi0tMC4yMTU0NzJmLCAyLjYxNTM3ZiwgMC40MDYxMTdmLCAtMS4z
NjM3M2YsIDAuMDQyNTM5NGYsCi0wLjEyMjA4ZiwgMC4wOTM0NTAyZiwgMC4xMjMwNTVmLCAwLjAz
NDA5MzVmLCAtMC4xNDI0NjZmLAotMC4wMzUwMzdmLCAtMC4wNDkwNjY2ZiwgMC4wNzMzMjA4Ziwg
MC4wNTc2NjcyZiwgMC4xMjM5ODRmLAotLTAuMDUxNzE5NGYsIC0wLjI1MzAxOGYsIDAuNTkwNTY1
ZiwgMC4xNDU4NDlmLCAwLjMxNTE4NWYsCi0wLjIyMTUzNGYsIC0wLjE0OTA4MWYsIDAuMjE2MTYx
ZiwgLTAuMzQ5NTc1ZiwgMjQuNTY2NGYsCi0tMC45OTQxOTZmLCAwLjYxNDI4OWYsIC0xOC43OTA1
ZiwgLTIuODMyNzdmLCAtMC43MTY4MDFmLAotLTAuMzQ3MjAxZiwgMC40Nzk1MTVmLCAtMC4yNDYw
MjdmLCAwLjA3NTg2ODNmLCAwLjEzNzI5M2YsCi0tMC4xNzc4MWYsIDAuMTE4NzUxZiwgLTAuMDAx
MDgzMjlmLCAtMC4yMzczMzRmLCAwLjM1NTczMmYsCi0tMC4xMjk5MWYsIC0wLjA1NDc2MjdmLCAt
MC4zMTg1NzZmLCAtMC4zMjU1MjRmLCAwLjE4MDQ5NGYsCi0tMC4wNjI1NjA0ZiwgMC4xNDEyMTlm
LCAwLjM0NDA2NGYsIDAuMzc2NThmLCAtMC41OTE3NzJmLAotNS44NDI3ZiwgLTAuMzgwNzVmLCAw
LjIyMTg5NGYsIC0xLjQxOTM0ZiwgLTEuODc5NDNlKzA2ZiwKLTEuMzQxMTRmLCAwLjAyODMzNTVm
LCAtMC4wNDQ3ODU2ZiwgLTAuMDIxMTQ2NmYsIC0wLjAyNTY5MjdmLAotMC4wMTM5NjE4ZiwgMC4w
MjA3OTM0ZiwgLTAuMDEwNzY2NmYsIDAuMDExMDk2OWYsIDAuMDU4NjA2OWYsCi0tMC4wMjUzNTQ1
ZiwgLTAuMDMyODQzM2YsIDAuMTE4NzJmLCAtMC4yMTY5NDNmLCAwLjE0NTc0OGYsCi0wLjExOTgw
OGYsIC0wLjA5MTUyMTFmLCAtMC4xMjA2NDdmLCAtMC4wNzg3NzE5ZiwgLTAuMTQzNjQ0ZiwKLS0w
LjU5NTExNmYsIC0xLjE1MmYsIC0xLjI1MzM1ZiwgLTEuMTcwOTJmLCA0LjM0MDIzZiwKLS05NzUy
NjguZiwgLTEuMzcwMzNmLCAtMC4wNDAxMTIzZiwgMC4yMTA2MDJmLCAtMC4xMzY2NTZmLAotMC4x
MzU5NjJmLCAtMC4wNTIzMjkzZiwgMC4wNDQ0NjA0ZiwgMC4wMTQzOTI4ZiwgMC4wMDQxMjY2NmYs
Ci0tMC4wMTkzMDAzZiwgMC4yMTg0NTJmLCAtMC4xMTAyMDRmLCAtMi4wMjU2M2YsIDAuOTE4MjM4
ZiwKLS0yLjQ1MzYyZiwgMS4xOTU0MmYsIC0wLjA2MTM2MmYsIC0xLjkyMjQzZiwgMC4zMDgxMTFm
LAotMC40OTc2NGYsIDAuOTEyMzU2ZiwgMC4yMDkyNzJmLCAtMi4zNDUyNWYsIDIuMTkzMjZmLAot
LTYuNDcxMjFmLCAxLjY5NzcxZiwgLTAuNzI1MTIzZiwgMC4wMTE4OTI5ZiwgMC4wMzc3OTQ0ZiwK
LTAuMDU1NDAwM2YsIDAuMDIyNjQ1MmYsIC0wLjA3MDQ0MjFmLCAtMC4wMzAwMzA5ZiwgMC4wMTIy
OTc4ZiwKLS0wLjAwNDE3ODJmLCAtMC4wNjg2NjEyZiwgMC4wMzEzMTE1ZiwgMC4wMzkxMTFmLCAw
LjM2NDExMWYsCi0tMC4wOTQ1NTQ4ZiwgMC4wMjI5ODc2ZiwgLTAuMTc0MTRmLCAwLjMyOTc5NWYs
IDAuMTE0NzE0ZiwKLTAuMzAwMjJmLCAwLjEwNjk5N2YsIDAuMTMyMzU1ZiwgNS43OTkzMmYsIDAu
OTA4MDU4ZiwKLS0wLjkwNTMyNGYsIC0zLjM1NjFmLCAwLjE5MDY0N2YsIDAuMTg0MjExZiwgLTAu
NjczNjQ4ZiwKLTAuMjMxODA3ZiwgLTAuMDU4NjIyMmYsIDAuMjMwNzUyZiwgLTAuNDM4Mjc3Ziwg
MC4yNDU4NTdmLAotLTAuMTcyMTVmLCAwLjA4NzYzODNmLCAtMC43MjA1MTJmLCAwLjE2MjUxNWYs
IDAuMDE3MDU3MWYsCi0wLjEwMTc4MWYsIDAuMzg4NDc3ZiwgMS4zMjkzMWYsIDEuMDg1NDhmLCAt
MC45MzYzMDFmLAotLTIuMzY5NThmLCAtNi43MTk4OGYsIC0zLjQ0Mzc2ZiwgMi4xMzgxOGYsIDE0
LjIzMThmLAotNC45MTQ1OWYsIC0zLjA5MDUyZiwgLTkuNjkxOTFmLCAtMC43NjgyMzRmLCAxLjc5
NjA0ZiwKLTAuMDU0OTY1M2YsIDAuMTYzMzk5ZiwgMC4wNzk3MDI1ZiwgMC4wMzQzOTMzZiwgLTAu
MDU1NTg3NmYsCi0tMC4wMDUwNTY3M2YsIDAuMDE4NzI1OGYsIDAuMDMyNjYyOGYsIDAuMDIzMTQ4
NmYsIDAuMTU1NzNmLAotMC4wNDc2MjIzZiwgLTAuMjU0ODI0ZiwgMS42MDE1NWYsIC0wLjgwMTIy
MWYsIDIuNTU0OTZmLAotMC43Mzc2MjlmLCAtMS4zNjI0OWYsIC0wLjY5NTQ2M2YsIC0yLjQ0MzAx
ZiwgLTEuNzMxODhmLAotMy45NTI3OWYsIDEuODkwNjhmLCAwLjQ4NjA4N2YsIC0xMS4zMzQzZiwg
My45NDE2ZSswNmYsCi0KKy0wLjUxNDYyNGYsIDAuMDIzNDIyN2YsIC0wLjE0MzI5ZiwgLTAuMDg3
ODIxNmYsIC0wLjAwMTg3ODI3ZiwKKy0wLjAyNTc0NDNmLCAwLjEwODUyNGYsIDAuMDAzMzM4ODFm
LCAwLjAwNTg1MDE3ZiwgLTAuMDI0NjEzMmYsCiswLjE0MjcyM2YsIC0wLjAwNDM2NDk0ZiwgMC4w
MTAxMzU0ZiwgLTAuMTExMjRmLCAtMC4wODA5MzY3ZiwKKy0wLjA3NTA3NzJmLCAwLjAyOTU1MjRm
LCAwLjAwODIzOTQ0ZiwgMC4xNTAzOTJmLCAwLjAzMjA4NzZmLAorLTAuMDcxMDU2NGYsIC0xLjQz
ODE4ZiwgMC42NTIwNzZmLCAwLjA2NTA3NDRmLCAtMS41NDgyMWYsCiswLjE2ODk0OWYsIC0xLjky
NzI0ZiwgMC4wNTE3OTc2ZiwgLTAuMDY3MDczN2YsIC0wLjA2OTAxMjFmLAorMC4wMDI0NzUyOGYs
IC0wLjA1MjIwMjRmLCAwLjA2MzEzNjhmLCAwLjA1MzI3NzZmLCAwLjA0Nzc1MWYsCistMC4wMTE3
MTVmLCAwLjE0MjM3NGYsIC0wLjAyOTA4ODVmLCAtMC4yNzkyNjNmLCAtMC40MzM0OTlmLAorLTAu
MDc5NTE3NGYsIC0wLjM4MDQ1OGYsIC0wLjA1MTI2M2YsIDAuMjE4NTM3ZiwgLTAuMzIyNDc4ZiwK
KzEuMDY2NjdmLCAtMC4xMDQ2MDdmLCAtNC43MDEwOGYsIDAuMzEyMDM3ZiwgMC4yNzczOTdmLAor
LTIuNzE4NTlmLCAxLjcwMDM3ZiwgLTAuMTQxODQ1ZiwgMC4wMTE1NjE4ZiwgMC4wNjI5ODgzZiwK
KzAuMDQwMzg3MWYsIDAuMDEzOTQyOGYsIC0wLjAwNDMwNzMzZiwgLTAuMDQyOTAzOGYsIC0wLjA1
OTAzMThmLAorLTAuMDUwMTUyNmYsIC0wLjAyODQ4MDJmLCAtMC4wNDE1Njg2ZiwgLTAuMDQzODk5
OWYsIDAuMDgyMjY2NmYsCiswLjE5NzE5NGYsIDAuMDM2MzI3NWYsIC0wLjA1ODQzMDdmLCAwLjA3
NTIzNjRmLCAtMC4wNzk5Nzk2ZiwKKy0wLjE0NjI3NWYsIDAuMTYxNjYxZiwgLTAuMTg0NTg1Ziwg
MC4xNDU1NjhmLCAwLjQ0MjgyM2YsCisxLjYxMjIxZiwgMS4xMTE2MmYsIDIuNjIxNzdmLCAtMi40
ODJmLCAtMC4xMTI1OTlmLAorLTAuMTEwMzY2ZiwgLTAuMTQwNzk0ZiwgLTAuMTgxNjk0ZiwgMC4w
NjQ4Njc0ZiwgMC4wODQyMjQ4ZiwKKzAuMDkzMzk5M2YsIDAuMTUwMTIyZiwgMC4xMjkxNzFmLCAw
LjE3Njg0OGYsIDAuMTQxNzU4ZiwKKy0wLjI3MTgyMmYsIDAuMjM1MTEzZiwgMC4wNjY4NTc5Ziwg
LTAuNDMzOTU3ZiwgMC4xMTM2MzNmLAorLTAuMTY5MzQ4ZiwgLTEuNDAwOTFmLCAwLjYyODYxZiwg
LTAuMTM0MjM2ZiwgMC40MDIxNzNmLAorMS44NjM3M2YsIDEuNTM5OThmLCAtNC4zMjA4NGYsIDAu
NzM1MzQzZiwgMC44MDAyMTRmLAorLTAuMDA5Njg0MTVmLCAwLjA0MjU5MDRmLCAwLjAxOTY4MTFm
LCAtMC4wMTg0MjZmLCAtMC4wMDAzNDM5NTNmLAorLTAuMDA0MTYzODlmLCAwLjAwMTExNTU4Ziwg
MC4wMTczMDY5ZiwgLTAuMDA5OTg1OTZmLCAtMC4wMjU4OThmLAorMC4wMDEyMzc2NGYsIC0wLjAw
NTIwMzczZiwgLTAuMDU2NTAzM2YsIDAuMDYzNzM5NGYsIDAuMDA1MTIxM2YsCiswLjAyMjEzNjFm
LCAwLjAwODE5OTYyZiwgLTAuMDQ2NzA2MWYsIC0wLjA1NDgyNThmLCAtMC4wMDMxNDA2M2YsCist
MS4xODMzMmYsIDEuODgwOTFmLCAtMC40MTE0OGYsIC0yLjk1NzI3ZiwgLTAuNTIxNDQ5ZiwKKy0w
LjI3MTY0MWYsIDAuMTI0OTQ2ZiwgLTAuMDUzMjkzNmYsIDAuMTAxNTE1ZiwgMC4wMDAyMDg1NjRm
LAorLTAuMDQ4ODc0OGYsIDAuMDY0MjM4OGYsIC0wLjAzODM4NDhmLCAwLjAxMzUwNDZmLCAtMC4w
NDEzNTkyZiwKKy0wLjAzMjY0MDJmLCAtMC4wMTM3NDIxZiwgLTAuMDIyNTIxOWYsIC0wLjA5MTcy
OTRmLCAtMC4yNzc3NTlmLAorLTAuMTg1NDE4ZiwgMC4wNDcxMTI4ZiwgLTAuMTI1ODc5ZiwgMC4y
NjI0NjdmLCAtMC4yMTI3OTRmLAorLTAuMTEyOTMxZiwgLTEuOTk4ODVmLCAtMC40MDQ3ODdmLCAw
LjIyNDQwMmYsIDAuNjM3OTYyZiwKKy0wLjI3ODA4ZiwgLTAuMDcyMzk1M2YsIC0wLjA1Mzc2NTVm
LCAtMC4wMzM2MzU5ZiwgLTAuMDkwNjYwMWYsCistMC4wNjQxMzA5ZiwgLTAuMDcxMzU0MmYsIDAu
MDUyNDMxN2YsIDAuMDA2MDg4MTlmLCAwLjA3NTQxMDFmLAorLTAuMDQ4ODQwMWYsIC0wLjAwNjcx
ODY1ZiwgMC4wNDE4MjM5ZiwgMC4wNTM2Mjg0ZiwgLTAuMTMyNjM5ZiwKKzAuMDI2NzY0OGYsIC0w
LjI0ODQzMmYsIC0wLjAxMDQxNTNmLCAwLjAzNTU0NGYsIC0wLjIxMjc1M2YsCistMC4zMDI4OTVm
LCAtMC4wMzU3ODU0ZiwgMC4zNzY4MzhmLCAwLjU5NzAyNWYsIC0wLjY2NDY0N2YsCiswLjI2ODQy
MmYsIC0wLjM3Njc3MmYsIC0xLjA1NDcyZiwgMC4wMTQ0MTc4ZiwgMC4xNzkxMjJmLAorMC4wMzYw
MTU1ZiwgMC4yMjAyNjJmLCAtMC4wMDU2MzgxZiwgMC4wMzE3MTk3ZiwgMC4wNjIxMDY2ZiwKKy0w
LjAwNzc5Mjk4ZiwgMC4wMDc4OTM3OGYsIDAuMDAzNTA2MDVmLCAwLjAxMDQ4MDlmLCAwLjAzNjI4
NzFmLAorLTAuMTU3NzA4ZiwgLTAuMDY1OTc3OWYsIC0wLjA5MjYyNzhmLCAwLjAwNzcwNzkxZiwg
MC4wNjMxNjIxZiwKKzAuMDgxNzM0M2YsIC0wLjQyNDI5NWYsIC0wLjA0Mzc3MjdmLCAtMC4yNDI1
MWYsIDAuNzExMjE3ZiwKKy0wLjczNjQ1NWYsIC0yLjE5NGYsIC0wLjEwNzYxMmYsIC0wLjE3NTE1
NmYsIC0wLjAzNjY1NzNmLAorLTAuMDEyMzE1NmYsIC0wLjA2Mjg1MTZmLCAtMC4wMjE4OTc3Ziwg
LTAuMDA2OTM2OTlmLCAwLjAwNjk1MTg1ZiwKKzAuMDA1MDczNjJmLCAwLjAwMzU5MzM0ZiwgMC4w
MDUyNjYxZiwgMC4wMzU1NjFmLCAwLjAzODI3MDFmLAorMC4wMzQyMTc5ZiwgLTAuMDA3OTAyNzFm
LCAtMC4wMTcwOTI1ZiwgMC4wNDcwMjlmLCAwLjAxOTczNjJmLAorLTAuMDE1MzQzNWYsIDAuMDY0
NDE1MmYsIC0wLjM2ODYyZiwgLTAuMDY3NDg3NmYsIC0yLjgyNjcyZiwKKzEuMzQxMjJmLCAtMC4w
Nzg4MDI5ZiwgLTMuNDc3OTJmLCAwLjUwNzI0NmYsIC0wLjgxNjM3OGYsCistMC4wMTQyMzgzZiwg
LTAuMTI3MzQ5ZiwgLTAuMTA2OTI2ZiwgLTAuMDM1OTUyNGYsIDAuMTA1MDQ1ZiwKKzAuMjkxNTU0
ZiwgMC4xOTU0MTNmLCAwLjA4NjYyMTRmLCAtMC4wNjY1NzdmLCAtMC4xMDIxODhmLAorMC4wOTc5
NDY2ZiwgLTAuMTI5ODJmLCAwLjQwMDE4MWYsIC0wLjQwOTMzNmYsIC0wLjA1OTMzMjZmLAorLTAu
MDY1NjIwM2YsIC0wLjIwNDQ3NGYsIDAuMTc5ODAyZiwgMC4wMDA1MDkwODRmLCAwLjA5OTU5NTRm
LAorLTIuMzc3ZiwgLTAuNjg2MzU5ZiwgMC45MzQ4NjFmLCAxLjEwMjYxZiwgMS4zOTAxZiwKKy00
LjMzNjE2ZiwgLTAuMDAyNjQwMTdmLCAwLjAwNzEzMDQ1ZiwgMC4xMDYyNjRmLCAwLjE0MzcyNmYs
CistMC4wNjg1MzA1ZiwgLTAuMDU0NjU2ZiwgLTAuMDE3NjcyNWYsIC0wLjA3NzI2NjlmLCAtMC4w
MjY0NTI2ZiwKKy0wLjAxMDM4MjRmLCAtMC4wMjY5ODcyZiwgLTAuMDA2ODdmLCAwLjIyNTgwNGYs
IDAuNDA3NzUxZiwKKy0wLjA2MTI2MTFmLCAtMC4wNTc2ODYzZiwgLTAuMTgwMTMxZiwgLTAuMjIy
NzcyZiwgLTAuNDYxNzQyZiwKKzAuMzM1MjM2ZiwgMS4wMzM5OWYsIDQuMjQxMTJmLCAtMC4zNDU3
OTZmLCAtMC41OTQ1NDlmLAorLTc2LjE0MDdmLCAtMC4yNjUyNzZmLCAwLjA1MDc3MTlmLCAwLjA2
NDMwNDRmLCAwLjAzODQ4MzJmLAorMC4wNDI0NDU5ZiwgLTAuMDM4NzgxN2YsIC0wLjAyMzU5OTZm
LCAtMC4wNzQwNTU2ZiwgLTAuMDI3MDAyOWYsCiswLjAwODgyMTc3ZiwgLTAuMDU1MjM3MWYsIC0w
LjAwNDg1ODUxZiwgMC4zMTQyOTVmLCAwLjM2MDQzMWYsCistMC4wNzg3MDg1ZiwgMC4xMTAzNTVm
LCAtMC40MTU5NThmLCAtMC4zODUwODhmLCAtMC4yNzIyMjRmLAorLTEuNTUxMDhmLCAtMC4xNDE4
NDhmLCAwLjQ0ODg3N2YsIC0wLjU2MzQ0N2YsIC0yLjMxNDAzZiwKKy0wLjEyMDA3N2YsIC0xLjQ5
OTE4ZiwgLTAuODE3NzI2ZiwgLTAuMDQ5NTg1NGYsIC0wLjAyMzA3ODJmLAorLTAuMDIyNDAxNGYs
IDAuMTE3MDc2ZiwgMC4wMzkzMjE2ZiwgMC4wNTE5OTdmLCAwLjAzMzA3NjNmLAorLTAuMTEwNzk2
ZiwgMC4wMjExMTE3ZiwgLTAuMDE5NzI1OGYsIDAuMDE4NzQ2MWYsIDAuMDEyNTE4M2YsCiswLjE0
ODc2ZiwgMC4wOTIwNTY1ZiwgLTAuMzQyNDc1ZiwgMC4xMzUyNzJmLCAtMC4xNjgxNTVmLAorLTAu
MDMzNDIzZiwgLTAuMDYwNDYxMWYsIC0wLjEyODgzNWYsIDAuNjY0OTQ3ZiwgLTAuMTQ0OTk3ZiwK
KzIuMjc2NDlmLCAxLjI4NjYzZiwgMC44NDEyMTdmLCAtMi40MjgwN2YsIDAuMDIzMDQ3MWYsCisw
LjIyNjcwOWYsIC0wLjAzNzQ4MDNmLCAwLjE1NTQzNmYsIDAuMDQwMDM0MmYsIC0wLjE4NDY4NmYs
CiswLjEyODQ4OGYsIC0wLjA5Mzk1MThmLCAtMC4wNTc4NTU5ZiwgMC4wMjY1OTY3ZiwgLTAuMDk5
OTMyMmYsCistMC4wMzIyNzY4ZiwgLTAuMzIyOTk0ZiwgLTAuMTg5MzcxZiwgLTAuNzM4MDY5Ziwg
LTAuMDc1NDkxNGYsCiswLjIxNDcxN2YsIC0wLjA5MzcyOGYsIC0wLjY5NTc0MWYsIDAuMDg5OTI5
OGYsIC0yLjA2MTg4ZiwKKy0wLjI3MzcxOWYsIC0wLjg5Njk3N2YsIDAuMTMwNTUzZiwgMC4xMzQ2
MzhmLCAxLjI5MzU1ZiwKKzAuMDA1MjA3NDlmLCAtMC4wMzI0MjI0ZiwgMC4wMDUzMDQ1MWYsIDAu
MDE5MjM4NWYsIDAuMDAzMjg3MDhmLAorMC4wMjUwODM4ZiwgMC4wMDUzMzY1ZiwgLTAuMDE3NzMy
MWYsIDAuMDA2MTg3ODlmLCAwLjAwNTI1MzY0ZiwKKzAuMDAxMDQ1OTZmLCAtMC4wMzYwNDU5Ziwg
MC4wNDAyNDAzZiwgLTAuMDQwNjM1MWYsIDAuMDEzNjg4M2YsCiswLjA4ODA3MjJmLCAtMC4wMTk3
NDQ5ZiwgMC4wODk5MzhmLCAwLjAxMDA0NTZmLCAtMC4wNDc1NjM4ZiwKKy0wLjczMjY3ZiwgMC4w
Mzc0MzNmLCAtMC4xNDY1NTFmLCAtMC4yMzAyMjFmLCAtMy4wNjQ4OWYsCistMS40MDE5NGYsIDAu
MDE5ODQ4M2YsIDAuMDM5Nzk1M2YsIC0wLjAxOTAyMzlmLCAwLjA0NzA3MTVmLAorLTAuMTMxMzYz
ZiwgLTAuMTkxNzIxZiwgLTAuMDE3NjIyNGYsIC0wLjA0ODAzNTJmLCAtMC4yMjE3OTlmLAorLTAu
MjY3OTRmLCAtMC4wMjkyNjE1ZiwgMC4wNjEyMTI3ZiwgLTAuMTI5ODc3ZiwgMC4wMDYyODMzMmYs
CistMC4wODU5MThmLCAwLjAxNzUzNzlmLCAwLjA1NDEwMTFmLCAtMC4wODEwODc0ZiwgLTAuMzgw
ODA5ZiwKKy0wLjIyMjA1NmYsIC0wLjUwODg1OWYsIC0wLjQ3MzM2OWYsIDAuNDg0OTU4ZiwgLTIu
Mjg0MTFmLAorMC4wMTM5NTE2ZiwKIC8qIG91dHB1dCBsYXllciAqLwotLTAuMzgxNDM5ZiwgMC4x
MjExNWYsIC0wLjkwNjkyN2YsIDIuOTM4NzhmLCAxLjYzODhmLAotMC44ODI4MTFmLCAwLjg3NDM0
NGYsIDEuMjE3MjZmLCAtMC44NzQ1NDVmLCAwLjMyMTcwNmYsCi0wLjc4NTA1NWYsIDAuOTQ2NTU4
ZiwgLTAuNTc1MDY2ZiwgLTMuNDY1NTNmLCAwLjg4NDkwNWYsCi0wLjA5MjQwNDdmLCAtOS45MDcx
MmYsIDAuMzkxMzM4ZiwgMC4xNjAxMDNmLCAtMi4wNDk1NGYsCi00LjE0NTVmLCAwLjA2ODQwMjlm
LCAtMC4xNDQ3NjFmLCAtMC4yODUyODJmLCAwLjM3OTI0NGYsCi0tMS4xNTg0ZiwgLTAuMDI3NzI0
MWYsIC05Ljg1ZiwgLTQuODIzODZmLCAzLjcxMzMzZiwKLTMuODczMDhmLCAzLjUyNTU4Zn07Cisz
LjkwMDE3ZiwgMS43MTc4OWYsIC0xLjQzMzcyZiwgLTIuNzA4MzlmLCAxLjc3MTA3ZiwKKzUuNDgw
MDZmLCAxLjQ0NjYxZiwgMi4wMTEzNGYsIC0xLjg4MzgzZiwgLTMuNjQ5NThmLAorLTEuMjYzNTFm
LCAwLjc3OTQyMWYsIDIuMTEzNTdmLCAzLjEwNDA5ZiwgMS42ODg0NmYsCistNC40NjE5N2YsIC0x
LjYxNDU1ZiwgMy41OTgzMmYsIDIuNDM1MzFmLCAtMS4yNjQ1OGYsCiswLjQxNzk0MWYsIDEuNDc0
MzdmLCAyLjE2NjM1ZiwgLTEuOTA5ZiwgLTAuODI4ODY5ZiwKKzEuMzg4MDVmLCAtMi42Nzk3NWYs
IC0wLjExMDA0NGYsIDEuOTU1OTZmLCAwLjY5NzkzMWYsCistMC4zMTMyMjZmLCAtMC44ODkzMTVm
LCAwLjI4MzIzNmYsIDAuOTQ2MTAyZiwgfTsKIAotc3RhdGljIGNvbnN0IGludCB0b3BvWzNdID0g
ezI1LCAxNSwgMn07CitzdGF0aWMgY29uc3QgaW50IHRvcG9bM10gPSB7MjUsIDE2LCAyfTsKIAog
Y29uc3QgTUxQIG5ldCA9IHsKICAgICAzLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvbWxwX3RyYWluLmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Ny
Yy9tbHBfdHJhaW4uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44ZDlkMTI3YTZkYmJiNGU1OTZlOWZkMjhiNWMxYWIx
YWM1MzA3ZjE5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvbWxwX3RyYWluLmMKQEAgLTAsMCArMSw1
MDEgQEAKKy8qIENvcHlyaWdodCAoYykgMjAwOC0yMDExIE9jdGFzaWMgSW5jLgorICAgV3JpdHRl
biBieSBKZWFuLU1hcmMgVmFsaW4gKi8KKy8qCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICAgYXJlIG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
CisgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEZPVU5EQVRJT04gT1IKKyAgIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAor
ICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORworICAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKworI2luY2x1ZGUgIm1scF90cmFpbi5o
IgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3Ry
aW5nLmg+CisjaW5jbHVkZSA8c2VtYXBob3JlLmg+CisjaW5jbHVkZSA8cHRocmVhZC5oPgorI2lu
Y2x1ZGUgPHRpbWUuaD4KKyNpbmNsdWRlIDxzaWduYWwuaD4KKworaW50IHN0b3BwZWQgPSAwOwor
Cit2b2lkIGhhbmRsZXIoaW50IHNpZykKK3sKKyAgICBzdG9wcGVkID0gMTsKKyAgICBzaWduYWwo
c2lnLCBoYW5kbGVyKTsKK30KKworTUxQVHJhaW4gKiBtbHBfaW5pdChpbnQgKnRvcG8sIGludCBu
YkxheWVycywgZmxvYXQgKmlucHV0cywgZmxvYXQgKm91dHB1dHMsIGludCBuYlNhbXBsZXMpCit7
CisgICAgaW50IGksIGosIGs7CisgICAgTUxQVHJhaW4gKm5ldDsKKyAgICBpbnQgaW5EaW0sIG91
dERpbTsKKyAgICBuZXQgPSBtYWxsb2Moc2l6ZW9mKCpuZXQpKTsKKyAgICBuZXQtPnRvcG8gPSBt
YWxsb2MobmJMYXllcnMqc2l6ZW9mKG5ldC0+dG9wb1swXSkpOworICAgIGZvciAoaT0wO2k8bmJM
YXllcnM7aSsrKQorICAgICAgICBuZXQtPnRvcG9baV0gPSB0b3BvW2ldOworICAgIGluRGltID0g
dG9wb1swXTsKKyAgICBvdXREaW0gPSB0b3BvW25iTGF5ZXJzLTFdOworICAgIG5ldC0+aW5fcmF0
ZSA9IG1hbGxvYygoaW5EaW0rMSkqc2l6ZW9mKG5ldC0+aW5fcmF0ZVswXSkpOworICAgIG5ldC0+
d2VpZ2h0cyA9IG1hbGxvYygobmJMYXllcnMtMSkqc2l6ZW9mKG5ldC0+d2VpZ2h0cykpOworICAg
IG5ldC0+YmVzdF93ZWlnaHRzID0gbWFsbG9jKChuYkxheWVycy0xKSpzaXplb2YobmV0LT53ZWln
aHRzKSk7CisgICAgZm9yIChpPTA7aTxuYkxheWVycy0xO2krKykKKyAgICB7CisgICAgICAgIG5l
dC0+d2VpZ2h0c1tpXSA9IG1hbGxvYygodG9wb1tpXSsxKSp0b3BvW2krMV0qc2l6ZW9mKG5ldC0+
d2VpZ2h0c1swXVswXSkpOworICAgICAgICBuZXQtPmJlc3Rfd2VpZ2h0c1tpXSA9IG1hbGxvYygo
dG9wb1tpXSsxKSp0b3BvW2krMV0qc2l6ZW9mKG5ldC0+d2VpZ2h0c1swXVswXSkpOworICAgIH0K
KyAgICBkb3VibGUgaW5NZWFuW2luRGltXTsKKyAgICBmb3IgKGo9MDtqPGluRGltO2orKykKKyAg
ICB7CisgICAgICAgIGRvdWJsZSBzdGQ9MDsKKyAgICAgICAgaW5NZWFuW2pdID0gMDsKKyAgICAg
ICAgZm9yIChpPTA7aTxuYlNhbXBsZXM7aSsrKQorICAgICAgICB7CisgICAgICAgICAgICBpbk1l
YW5bal0gKz0gaW5wdXRzW2kqaW5EaW0ral07CisgICAgICAgICAgICBzdGQgKz0gaW5wdXRzW2kq
aW5EaW0ral0qaW5wdXRzW2kqaW5EaW0ral07CisgICAgICAgIH0KKyAgICAgICAgaW5NZWFuW2pd
IC89IG5iU2FtcGxlczsKKyAgICAgICAgc3RkIC89IG5iU2FtcGxlczsKKyAgICAgICAgbmV0LT5p
bl9yYXRlWzEral0gPSAuNS8oLjAwMDErc3RkKTsKKyAgICAgICAgc3RkID0gc3RkLWluTWVhbltq
XSppbk1lYW5bal07CisgICAgICAgIGlmIChzdGQ8LjAwMSkKKyAgICAgICAgICAgIHN0ZCA9IC4w
MDE7CisgICAgICAgIHN0ZCA9IDEvc3FydChpbkRpbSpzdGQpOworICAgICAgICBmb3IgKGs9MDtr
PHRvcG9bMV07aysrKQorICAgICAgICAgICAgbmV0LT53ZWlnaHRzWzBdW2sqKHRvcG9bMF0rMSkr
aisxXSA9IHJhbmRuKHN0ZCk7CisgICAgfQorICAgIG5ldC0+aW5fcmF0ZVswXSA9IDE7CisgICAg
Zm9yIChqPTA7ajx0b3BvWzFdO2orKykKKyAgICB7CisgICAgICAgIGRvdWJsZSBzdW0gPSAwOwor
ICAgICAgICBmb3IgKGs9MDtrPGluRGltO2srKykKKyAgICAgICAgICAgIHN1bSArPSBpbk1lYW5b
a10qbmV0LT53ZWlnaHRzWzBdW2oqKHRvcG9bMF0rMSkraysxXTsKKyAgICAgICAgbmV0LT53ZWln
aHRzWzBdW2oqKHRvcG9bMF0rMSldID0gLXN1bTsKKyAgICB9CisgICAgZm9yIChqPTA7ajxvdXRE
aW07aisrKQorICAgIHsKKyAgICAgICAgZG91YmxlIG1lYW4gPSAwOworICAgICAgICBkb3VibGUg
c3RkOworICAgICAgICBmb3IgKGk9MDtpPG5iU2FtcGxlcztpKyspCisgICAgICAgICAgICBtZWFu
ICs9IG91dHB1dHNbaSpvdXREaW0ral07CisgICAgICAgIG1lYW4gLz0gbmJTYW1wbGVzOworICAg
ICAgICBzdGQgPSAxL3NxcnQodG9wb1tuYkxheWVycy0yXSk7CisgICAgICAgIG5ldC0+d2VpZ2h0
c1tuYkxheWVycy0yXVtqKih0b3BvW25iTGF5ZXJzLTJdKzEpXSA9IG1lYW47CisgICAgICAgIGZv
ciAoaz0wO2s8dG9wb1tuYkxheWVycy0yXTtrKyspCisgICAgICAgICAgICBuZXQtPndlaWdodHNb
bmJMYXllcnMtMl1baioodG9wb1tuYkxheWVycy0yXSsxKStrKzFdID0gcmFuZG4oc3RkKTsKKyAg
ICB9CisgICAgcmV0dXJuIG5ldDsKK30KKworI2RlZmluZSBNQVhfTkVVUk9OUyAxMDAKKyNkZWZp
bmUgTUFYX09VVCAxMAorCitkb3VibGUgY29tcHV0ZV9ncmFkaWVudChNTFBUcmFpbiAqbmV0LCBm
bG9hdCAqaW5wdXRzLCBmbG9hdCAqb3V0cHV0cywgaW50IG5iU2FtcGxlcywgZG91YmxlICpXMF9n
cmFkLCBkb3VibGUgKlcxX2dyYWQsIGRvdWJsZSAqZXJyb3JfcmF0ZSkKK3sKKyAgICBpbnQgaSxq
OworICAgIGludCBzOworICAgIGludCBpbkRpbSwgb3V0RGltLCBoaWRkZW5EaW07CisgICAgaW50
ICp0b3BvOworICAgIGRvdWJsZSAqVzAsICpXMTsKKyAgICBkb3VibGUgcm1zPTA7CisgICAgaW50
IFcwX3NpemUsIFcxX3NpemU7CisgICAgZG91YmxlIGhpZGRlbltNQVhfTkVVUk9OU107CisgICAg
ZG91YmxlIG5ldE91dFtNQVhfTkVVUk9OU107CisgICAgZG91YmxlIGVycm9yW01BWF9ORVVST05T
XTsKKworICAgIHRvcG8gPSBuZXQtPnRvcG87CisgICAgaW5EaW0gPSBuZXQtPnRvcG9bMF07Cisg
ICAgaGlkZGVuRGltID0gbmV0LT50b3BvWzFdOworICAgIG91dERpbSA9IG5ldC0+dG9wb1syXTsK
KyAgICBXMF9zaXplID0gKHRvcG9bMF0rMSkqdG9wb1sxXTsKKyAgICBXMV9zaXplID0gKHRvcG9b
MV0rMSkqdG9wb1syXTsKKyAgICBXMCA9IG5ldC0+d2VpZ2h0c1swXTsKKyAgICBXMSA9IG5ldC0+
d2VpZ2h0c1sxXTsKKyAgICBtZW1zZXQoVzBfZ3JhZCwgMCwgVzBfc2l6ZSpzaXplb2YoZG91Ymxl
KSk7CisgICAgbWVtc2V0KFcxX2dyYWQsIDAsIFcxX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAg
IGZvciAoaT0wO2k8b3V0RGltO2krKykKKyAgICAgICAgbmV0T3V0W2ldID0gb3V0cHV0c1tpXTsK
KyAgICBmb3IgKGk9MDtpPG91dERpbTtpKyspCisgICAgICAgIGVycm9yX3JhdGVbaV0gPSAwOwor
ICAgIGZvciAocz0wO3M8bmJTYW1wbGVzO3MrKykKKyAgICB7CisgICAgICAgIGZsb2F0ICppbiwg
Km91dDsKKyAgICAgICAgZmxvYXQgaW5wW2luRGltXTsKKyAgICAgICAgaW4gPSBpbnB1dHMrcypp
bkRpbTsKKyAgICAgICAgb3V0ID0gb3V0cHV0cyArIHMqb3V0RGltOworICAgICAgICBmb3IgKGo9
MDtqPGluRGltO2orKykKKyAgICAgICAgICAgaW5wW2pdID0gaW5bal07CisgICAgICAgIGZvciAo
aT0wO2k8aGlkZGVuRGltO2krKykKKyAgICAgICAgeworICAgICAgICAgICAgZG91YmxlIHN1bSA9
IFcwW2kqKGluRGltKzEpXTsKKyAgICAgICAgICAgIGZvciAoaj0wO2o8aW5EaW07aisrKQorICAg
ICAgICAgICAgICAgIHN1bSArPSBXMFtpKihpbkRpbSsxKStqKzFdKmlucFtqXTsKKyAgICAgICAg
ICAgIGhpZGRlbltpXSA9IHRhbnNpZ19hcHByb3goc3VtKTsKKyAgICAgICAgfQorICAgICAgICBm
b3IgKGk9MDtpPG91dERpbTtpKyspCisgICAgICAgIHsKKyAgICAgICAgICAgIGRvdWJsZSBzdW0g
PSBXMVtpKihoaWRkZW5EaW0rMSldOworICAgICAgICAgICAgZm9yIChqPTA7ajxoaWRkZW5EaW07
aisrKQorICAgICAgICAgICAgICAgIHN1bSArPSBXMVtpKihoaWRkZW5EaW0rMSkraisxXSpoaWRk
ZW5bal07CisgICAgICAgICAgICBuZXRPdXRbaV0gPSB0YW5zaWdfYXBwcm94KHN1bSk7CisgICAg
ICAgICAgICBlcnJvcltpXSA9IG91dFtpXSAtIG5ldE91dFtpXTsKKyAgICAgICAgICAgIGlmIChv
dXRbaV0gPT0gMCkgZXJyb3JbaV0gKj0gLjA7CisgICAgICAgICAgICBlcnJvcl9yYXRlW2ldICs9
IGZhYnMoZXJyb3JbaV0pPjE7CisgICAgICAgICAgICBpZiAoaT09MCkgZXJyb3JbaV0gKj0gNTsK
KyAgICAgICAgICAgIHJtcyArPSBlcnJvcltpXSplcnJvcltpXTsKKyAgICAgICAgICAgIC8qZXJy
b3JbaV0gPSBlcnJvcltpXS8oMStmYWJzKGVycm9yW2ldKSk7Ki8KKyAgICAgICAgfQorICAgICAg
ICAvKiBCYWNrLXByb3BhZ2F0ZSBlcnJvciAqLworICAgICAgICBmb3IgKGk9MDtpPG91dERpbTtp
KyspCisgICAgICAgIHsKKyAgICAgICAgICAgIGRvdWJsZSBncmFkID0gMS1uZXRPdXRbaV0qbmV0
T3V0W2ldOworICAgICAgICAgICAgVzFfZ3JhZFtpKihoaWRkZW5EaW0rMSldICs9IGVycm9yW2ld
KmdyYWQ7CisgICAgICAgICAgICBmb3IgKGo9MDtqPGhpZGRlbkRpbTtqKyspCisgICAgICAgICAg
ICAgICAgVzFfZ3JhZFtpKihoaWRkZW5EaW0rMSkraisxXSArPSBncmFkKmVycm9yW2ldKmhpZGRl
bltqXTsKKyAgICAgICAgfQorICAgICAgICBmb3IgKGk9MDtpPGhpZGRlbkRpbTtpKyspCisgICAg
ICAgIHsKKyAgICAgICAgICAgIGRvdWJsZSBncmFkOworICAgICAgICAgICAgZ3JhZCA9IDA7Cisg
ICAgICAgICAgICBmb3IgKGo9MDtqPG91dERpbTtqKyspCisgICAgICAgICAgICAgICAgZ3JhZCAr
PSBlcnJvcltqXSpXMVtqKihoaWRkZW5EaW0rMSkraSsxXTsKKyAgICAgICAgICAgIGdyYWQgKj0g
MS1oaWRkZW5baV0qaGlkZGVuW2ldOworICAgICAgICAgICAgVzBfZ3JhZFtpKihpbkRpbSsxKV0g
Kz0gZ3JhZDsKKyAgICAgICAgICAgIGZvciAoaj0wO2o8aW5EaW07aisrKQorICAgICAgICAgICAg
ICAgIFcwX2dyYWRbaSooaW5EaW0rMSkraisxXSArPSBncmFkKmlucFtqXTsKKyAgICAgICAgfQor
ICAgIH0KKyAgICByZXR1cm4gcm1zOworfQorCisjZGVmaW5lIE5CX1RIUkVBRFMgOAorCitzZW1f
dCBzZW1fYmVnaW5bTkJfVEhSRUFEU107CitzZW1fdCBzZW1fZW5kW05CX1RIUkVBRFNdOworCitz
dHJ1Y3QgR3JhZGllbnRBcmcgeworICAgIGludCBpZDsKKyAgICBpbnQgZG9uZTsKKyAgICBNTFBU
cmFpbiAqbmV0OworICAgIGZsb2F0ICppbnB1dHM7CisgICAgZmxvYXQgKm91dHB1dHM7CisgICAg
aW50IG5iU2FtcGxlczsKKyAgICBkb3VibGUgKlcwX2dyYWQ7CisgICAgZG91YmxlICpXMV9ncmFk
OworICAgIGRvdWJsZSBybXM7CisgICAgZG91YmxlIGVycm9yX3JhdGVbTUFYX09VVF07Cit9Owor
Cit2b2lkICpncmFkaWVudF90aHJlYWRfcHJvY2Vzcyh2b2lkICpfYXJnKQoreworICAgIGludCBX
MF9zaXplLCBXMV9zaXplOworICAgIHN0cnVjdCBHcmFkaWVudEFyZyAqYXJnID0gX2FyZzsKKyAg
ICBpbnQgKnRvcG8gPSBhcmctPm5ldC0+dG9wbzsKKyAgICBXMF9zaXplID0gKHRvcG9bMF0rMSkq
dG9wb1sxXTsKKyAgICBXMV9zaXplID0gKHRvcG9bMV0rMSkqdG9wb1syXTsKKyAgICBkb3VibGUg
VzBfZ3JhZFtXMF9zaXplXTsKKyAgICBkb3VibGUgVzFfZ3JhZFtXMV9zaXplXTsKKyAgICBhcmct
PlcwX2dyYWQgPSBXMF9ncmFkOworICAgIGFyZy0+VzFfZ3JhZCA9IFcxX2dyYWQ7CisgICAgd2hp
bGUgKDEpCisgICAgeworICAgICAgICBzZW1fd2FpdCgmc2VtX2JlZ2luW2FyZy0+aWRdKTsKKyAg
ICAgICAgaWYgKGFyZy0+ZG9uZSkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBhcmctPnJt
cyA9IGNvbXB1dGVfZ3JhZGllbnQoYXJnLT5uZXQsIGFyZy0+aW5wdXRzLCBhcmctPm91dHB1dHMs
IGFyZy0+bmJTYW1wbGVzLCBhcmctPlcwX2dyYWQsIGFyZy0+VzFfZ3JhZCwgYXJnLT5lcnJvcl9y
YXRlKTsKKyAgICAgICAgc2VtX3Bvc3QoJnNlbV9lbmRbYXJnLT5pZF0pOworICAgIH0KKyAgICBm
cHJpbnRmKHN0ZGVyciwgImRvbmVcbiIpOworICAgIHJldHVybiBOVUxMOworfQorCitmbG9hdCBt
bHBfdHJhaW5fYmFja3Byb3AoTUxQVHJhaW4gKm5ldCwgZmxvYXQgKmlucHV0cywgZmxvYXQgKm91
dHB1dHMsIGludCBuYlNhbXBsZXMsIGludCBuYkVwb2NoLCBmbG9hdCByYXRlKQoreworICAgIGlu
dCBpLCBqOworICAgIGludCBlOworICAgIGZsb2F0IGJlc3Rfcm1zID0gMWUxMDsKKyAgICBpbnQg
aW5EaW0sIG91dERpbSwgaGlkZGVuRGltOworICAgIGludCAqdG9wbzsKKyAgICBkb3VibGUgKlcw
LCAqVzEsICpiZXN0X1cwLCAqYmVzdF9XMTsKKyAgICBkb3VibGUgKlcwX2dyYWQsICpXMV9ncmFk
OworICAgIGRvdWJsZSAqVzBfb2xkZ3JhZCwgKlcxX29sZGdyYWQ7CisgICAgZG91YmxlICpXMF9y
YXRlLCAqVzFfcmF0ZTsKKyAgICBkb3VibGUgKmJlc3RfVzBfcmF0ZSwgKmJlc3RfVzFfcmF0ZTsK
KyAgICBpbnQgVzBfc2l6ZSwgVzFfc2l6ZTsKKyAgICB0b3BvID0gbmV0LT50b3BvOworICAgIFcw
X3NpemUgPSAodG9wb1swXSsxKSp0b3BvWzFdOworICAgIFcxX3NpemUgPSAodG9wb1sxXSsxKSp0
b3BvWzJdOworICAgIHN0cnVjdCBHcmFkaWVudEFyZyBhcmdzW05CX1RIUkVBRFNdOworICAgIHB0
aHJlYWRfdCB0aHJlYWRbTkJfVEhSRUFEU107CisgICAgaW50IHNhbXBsZVBlclBhcnQgPSBuYlNh
bXBsZXMvTkJfVEhSRUFEUzsKKyAgICBpbnQgY291bnRfd29yc2U9MDsKKyAgICBpbnQgY291bnRf
cmV0cmllcz0wOworCisgICAgdG9wbyA9IG5ldC0+dG9wbzsKKyAgICBpbkRpbSA9IG5ldC0+dG9w
b1swXTsKKyAgICBoaWRkZW5EaW0gPSBuZXQtPnRvcG9bMV07CisgICAgb3V0RGltID0gbmV0LT50
b3BvWzJdOworICAgIFcwID0gbmV0LT53ZWlnaHRzWzBdOworICAgIFcxID0gbmV0LT53ZWlnaHRz
WzFdOworICAgIGJlc3RfVzAgPSBuZXQtPmJlc3Rfd2VpZ2h0c1swXTsKKyAgICBiZXN0X1cxID0g
bmV0LT5iZXN0X3dlaWdodHNbMV07CisgICAgVzBfZ3JhZCA9IG1hbGxvYyhXMF9zaXplKnNpemVv
Zihkb3VibGUpKTsKKyAgICBXMV9ncmFkID0gbWFsbG9jKFcxX3NpemUqc2l6ZW9mKGRvdWJsZSkp
OworICAgIFcwX29sZGdyYWQgPSBtYWxsb2MoVzBfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAg
VzFfb2xkZ3JhZCA9IG1hbGxvYyhXMV9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBXMF9yYXRl
ID0gbWFsbG9jKFcwX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIFcxX3JhdGUgPSBtYWxsb2Mo
VzFfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgYmVzdF9XMF9yYXRlID0gbWFsbG9jKFcwX3Np
emUqc2l6ZW9mKGRvdWJsZSkpOworICAgIGJlc3RfVzFfcmF0ZSA9IG1hbGxvYyhXMV9zaXplKnNp
emVvZihkb3VibGUpKTsKKyAgICBtZW1zZXQoVzBfZ3JhZCwgMCwgVzBfc2l6ZSpzaXplb2YoZG91
YmxlKSk7CisgICAgbWVtc2V0KFcwX29sZGdyYWQsIDAsIFcwX3NpemUqc2l6ZW9mKGRvdWJsZSkp
OworICAgIG1lbXNldChXMV9ncmFkLCAwLCBXMV9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBt
ZW1zZXQoVzFfb2xkZ3JhZCwgMCwgVzFfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisKKyAgICByYXRl
IC89IG5iU2FtcGxlczsKKyAgICBmb3IgKGk9MDtpPGhpZGRlbkRpbTtpKyspCisgICAgICAgIGZv
ciAoaj0wO2o8aW5EaW0rMTtqKyspCisgICAgICAgICAgICBXMF9yYXRlW2kqKGluRGltKzEpK2pd
ID0gcmF0ZSpuZXQtPmluX3JhdGVbal07CisgICAgZm9yIChpPTA7aTxXMV9zaXplO2krKykKKyAg
ICAgICAgVzFfcmF0ZVtpXSA9IHJhdGU7CisKKyAgICBmb3IgKGk9MDtpPE5CX1RIUkVBRFM7aSsr
KQorICAgIHsKKyAgICAgICAgYXJnc1tpXS5uZXQgPSBuZXQ7CisgICAgICAgIGFyZ3NbaV0uaW5w
dXRzID0gaW5wdXRzK2kqc2FtcGxlUGVyUGFydCppbkRpbTsKKyAgICAgICAgYXJnc1tpXS5vdXRw
dXRzID0gb3V0cHV0cytpKnNhbXBsZVBlclBhcnQqb3V0RGltOworICAgICAgICBhcmdzW2ldLm5i
U2FtcGxlcyA9IHNhbXBsZVBlclBhcnQ7CisgICAgICAgIGFyZ3NbaV0uaWQgPSBpOworICAgICAg
ICBhcmdzW2ldLmRvbmUgPSAwOworICAgICAgICBzZW1faW5pdCgmc2VtX2JlZ2luW2ldLCAwLCAw
KTsKKyAgICAgICAgc2VtX2luaXQoJnNlbV9lbmRbaV0sIDAsIDApOworICAgICAgICBwdGhyZWFk
X2NyZWF0ZSgmdGhyZWFkW2ldLCBOVUxMLCBncmFkaWVudF90aHJlYWRfcHJvY2VzcywgJmFyZ3Nb
aV0pOworICAgIH0KKyAgICBmb3IgKGU9MDtlPG5iRXBvY2g7ZSsrKQorICAgIHsKKyAgICAgICAg
ZG91YmxlIHJtcz0wOworICAgICAgICBkb3VibGUgZXJyb3JfcmF0ZVsyXSA9IHswLDB9OworICAg
ICAgICBmb3IgKGk9MDtpPE5CX1RIUkVBRFM7aSsrKQorICAgICAgICB7CisgICAgICAgICAgICBz
ZW1fcG9zdCgmc2VtX2JlZ2luW2ldKTsKKyAgICAgICAgfQorICAgICAgICBtZW1zZXQoVzBfZ3Jh
ZCwgMCwgVzBfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgICAgIG1lbXNldChXMV9ncmFkLCAw
LCBXMV9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICAgICAgZm9yIChpPTA7aTxOQl9USFJFQURT
O2krKykKKyAgICAgICAgeworICAgICAgICAgICAgc2VtX3dhaXQoJnNlbV9lbmRbaV0pOworICAg
ICAgICAgICAgcm1zICs9IGFyZ3NbaV0ucm1zOworICAgICAgICAgICAgZXJyb3JfcmF0ZVswXSAr
PSBhcmdzW2ldLmVycm9yX3JhdGVbMF07CisgICAgICAgICAgICBlcnJvcl9yYXRlWzFdICs9IGFy
Z3NbaV0uZXJyb3JfcmF0ZVsxXTsKKyAgICAgICAgICAgIGZvciAoaj0wO2o8VzBfc2l6ZTtqKysp
CisgICAgICAgICAgICAgICAgVzBfZ3JhZFtqXSArPSBhcmdzW2ldLlcwX2dyYWRbal07CisgICAg
ICAgICAgICBmb3IgKGo9MDtqPFcxX3NpemU7aisrKQorICAgICAgICAgICAgICAgIFcxX2dyYWRb
al0gKz0gYXJnc1tpXS5XMV9ncmFkW2pdOworICAgICAgICB9CisKKyAgICAgICAgZmxvYXQgbWVh
bl9yYXRlID0gMCwgbWluX3JhdGUgPSAxZTEwOworICAgICAgICBybXMgPSAocm1zLyhvdXREaW0q
bmJTYW1wbGVzKSk7CisgICAgICAgIGVycm9yX3JhdGVbMF0gPSAoZXJyb3JfcmF0ZVswXS8obmJT
YW1wbGVzKSk7CisgICAgICAgIGVycm9yX3JhdGVbMV0gPSAoZXJyb3JfcmF0ZVsxXS8obmJTYW1w
bGVzKSk7CisgICAgICAgIGZwcmludGYgKHN0ZGVyciwgIiVmICVmICglZiAlZikgIiwgZXJyb3Jf
cmF0ZVswXSwgZXJyb3JfcmF0ZVsxXSwgcm1zLCBiZXN0X3Jtcyk7CisgICAgICAgIGlmIChybXMg
PCBiZXN0X3JtcykKKyAgICAgICAgeworICAgICAgICAgICAgYmVzdF9ybXMgPSBybXM7CisgICAg
ICAgICAgICBmb3IgKGk9MDtpPFcwX3NpemU7aSsrKQorICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgIGJlc3RfVzBbaV0gPSBXMFtpXTsKKyAgICAgICAgICAgICAgICBiZXN0X1cwX3JhdGVb
aV0gPSBXMF9yYXRlW2ldOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZm9yIChpPTA7aTxX
MV9zaXplO2krKykKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBiZXN0X1cxW2ldID0g
VzFbaV07CisgICAgICAgICAgICAgICAgYmVzdF9XMV9yYXRlW2ldID0gVzFfcmF0ZVtpXTsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIGNvdW50X3dvcnNlPTA7CisgICAgICAgICAgICBjb3Vu
dF9yZXRyaWVzPTA7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBjb3VudF93b3JzZSsr
OworICAgICAgICAgICAgaWYgKGNvdW50X3dvcnNlPjMwKQorICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgIGNvdW50X3JldHJpZXMrKzsKKyAgICAgICAgICAgICAgICBjb3VudF93b3JzZT0w
OworICAgICAgICAgICAgICAgIGZvciAoaT0wO2k8VzBfc2l6ZTtpKyspCisgICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgICBXMFtpXSA9IGJlc3RfVzBbaV07CisgICAgICAgICAg
ICAgICAgICAgIGJlc3RfVzBfcmF0ZVtpXSAqPSAuNzsKKyAgICAgICAgICAgICAgICAgICAgaWYg
KGJlc3RfVzBfcmF0ZVtpXTwxZS0xNSkgYmVzdF9XMF9yYXRlW2ldPTFlLTE1OworICAgICAgICAg
ICAgICAgICAgICBXMF9yYXRlW2ldID0gYmVzdF9XMF9yYXRlW2ldOworICAgICAgICAgICAgICAg
ICAgICBXMF9ncmFkW2ldID0gMDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
Zm9yIChpPTA7aTxXMV9zaXplO2krKykKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgIFcxW2ldID0gYmVzdF9XMVtpXTsKKyAgICAgICAgICAgICAgICAgICAgYmVzdF9XMV9y
YXRlW2ldICo9IC44OworICAgICAgICAgICAgICAgICAgICBpZiAoYmVzdF9XMV9yYXRlW2ldPDFl
LTE1KSBiZXN0X1cxX3JhdGVbaV09MWUtMTU7CisgICAgICAgICAgICAgICAgICAgIFcxX3JhdGVb
aV0gPSBiZXN0X1cxX3JhdGVbaV07CisgICAgICAgICAgICAgICAgICAgIFcxX2dyYWRbaV0gPSAw
OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBp
ZiAoY291bnRfcmV0cmllcz4xMCkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBmb3IgKGk9
MDtpPFcwX3NpemU7aSsrKQorICAgICAgICB7CisgICAgICAgICAgICBpZiAoVzBfb2xkZ3JhZFtp
XSpXMF9ncmFkW2ldID4gMCkKKyAgICAgICAgICAgICAgICBXMF9yYXRlW2ldICo9IDEuMDE7Cisg
ICAgICAgICAgICBlbHNlIGlmIChXMF9vbGRncmFkW2ldKlcwX2dyYWRbaV0gPCAwKQorICAgICAg
ICAgICAgICAgIFcwX3JhdGVbaV0gKj0gLjk7CisgICAgICAgICAgICBtZWFuX3JhdGUgKz0gVzBf
cmF0ZVtpXTsKKyAgICAgICAgICAgIGlmIChXMF9yYXRlW2ldIDwgbWluX3JhdGUpCisgICAgICAg
ICAgICAgICAgbWluX3JhdGUgPSBXMF9yYXRlW2ldOworICAgICAgICAgICAgaWYgKFcwX3JhdGVb
aV0gPCAxZS0xNSkKKyAgICAgICAgICAgICAgICBXMF9yYXRlW2ldID0gMWUtMTU7CisgICAgICAg
ICAgICAvKmlmIChXMF9yYXRlW2ldID4gLjAxKQorICAgICAgICAgICAgICAgIFcwX3JhdGVbaV0g
PSAuMDE7Ki8KKyAgICAgICAgICAgIFcwX29sZGdyYWRbaV0gPSBXMF9ncmFkW2ldOworICAgICAg
ICAgICAgVzBbaV0gKz0gVzBfZ3JhZFtpXSpXMF9yYXRlW2ldOworICAgICAgICB9CisgICAgICAg
IGZvciAoaT0wO2k8VzFfc2l6ZTtpKyspCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmIChXMV9v
bGRncmFkW2ldKlcxX2dyYWRbaV0gPiAwKQorICAgICAgICAgICAgICAgIFcxX3JhdGVbaV0gKj0g
MS4wMTsKKyAgICAgICAgICAgIGVsc2UgaWYgKFcxX29sZGdyYWRbaV0qVzFfZ3JhZFtpXSA8IDAp
CisgICAgICAgICAgICAgICAgVzFfcmF0ZVtpXSAqPSAuOTsKKyAgICAgICAgICAgIG1lYW5fcmF0
ZSArPSBXMV9yYXRlW2ldOworICAgICAgICAgICAgaWYgKFcxX3JhdGVbaV0gPCBtaW5fcmF0ZSkK
KyAgICAgICAgICAgICAgICBtaW5fcmF0ZSA9IFcxX3JhdGVbaV07CisgICAgICAgICAgICBpZiAo
VzFfcmF0ZVtpXSA8IDFlLTE1KQorICAgICAgICAgICAgICAgIFcxX3JhdGVbaV0gPSAxZS0xNTsK
KyAgICAgICAgICAgIFcxX29sZGdyYWRbaV0gPSBXMV9ncmFkW2ldOworICAgICAgICAgICAgVzFb
aV0gKz0gVzFfZ3JhZFtpXSpXMV9yYXRlW2ldOworICAgICAgICB9CisgICAgICAgIG1lYW5fcmF0
ZSAvPSAodG9wb1swXSsxKSp0b3BvWzFdICsgKHRvcG9bMV0rMSkqdG9wb1syXTsKKyAgICAgICAg
ZnByaW50ZiAoc3RkZXJyLCAiJWcgJWQiLCBtZWFuX3JhdGUsIGUpOworICAgICAgICBpZiAoY291
bnRfcmV0cmllcykKKyAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiICVkIiwgY291bnRfcmV0
cmllcyk7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiXG4iKTsKKyAgICAgICAgaWYgKHN0b3Bw
ZWQpCisgICAgICAgICAgICBicmVhazsKKyAgICB9CisgICAgZm9yIChpPTA7aTxOQl9USFJFQURT
O2krKykKKyAgICB7CisgICAgICAgIGFyZ3NbaV0uZG9uZSA9IDE7CisgICAgICAgIHNlbV9wb3N0
KCZzZW1fYmVnaW5baV0pOworICAgICAgICBwdGhyZWFkX2pvaW4odGhyZWFkW2ldLCBOVUxMKTsK
KyAgICAgICAgZnByaW50ZiAoc3RkZXJyLCAiam9pbmVkICVkXG4iLCBpKTsKKyAgICB9CisgICAg
ZnJlZShXMF9ncmFkKTsKKyAgICBmcmVlKFcwX29sZGdyYWQpOworICAgIGZyZWUoVzFfZ3JhZCk7
CisgICAgZnJlZShXMV9vbGRncmFkKTsKKyAgICBmcmVlKFcwX3JhdGUpOworICAgIGZyZWUoYmVz
dF9XMF9yYXRlKTsKKyAgICBmcmVlKFcxX3JhdGUpOworICAgIGZyZWUoYmVzdF9XMV9yYXRlKTsK
KyAgICByZXR1cm4gYmVzdF9ybXM7Cit9CisKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJn
dikKK3sKKyAgICBpbnQgaSwgajsKKyAgICBpbnQgbmJJbnB1dHM7CisgICAgaW50IG5iT3V0cHV0
czsKKyAgICBpbnQgbmJIaWRkZW47CisgICAgaW50IG5iU2FtcGxlczsKKyAgICBpbnQgbmJFcG9j
aDsKKyAgICBpbnQgbmJSZWFsSW5wdXRzOworICAgIHVuc2lnbmVkIGludCBzZWVkOworICAgIGlu
dCByZXQ7CisgICAgZmxvYXQgcm1zOworICAgIGZsb2F0ICppbnB1dHM7CisgICAgZmxvYXQgKm91
dHB1dHM7CisgICAgaWYgKGFyZ2MhPTYpCisgICAgeworICAgICAgICBmcHJpbnRmIChzdGRlcnIs
ICJ1c2FnZTogbWxwX3RyYWluIDxpbnB1dHM+IDxoaWRkZW4+IDxvdXRwdXRzPiA8bmIgc2FtcGxl
cz4gPG5iIGVwb2NoPlxuIik7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgICBuYklucHV0
cyA9IGF0b2koYXJndlsxXSk7CisgICAgbmJIaWRkZW4gPSBhdG9pKGFyZ3ZbMl0pOworICAgIG5i
T3V0cHV0cyA9IGF0b2koYXJndlszXSk7CisgICAgbmJTYW1wbGVzID0gYXRvaShhcmd2WzRdKTsK
KyAgICBuYkVwb2NoID0gYXRvaShhcmd2WzVdKTsKKyAgICBuYlJlYWxJbnB1dHMgPSBuYklucHV0
czsKKyAgICBpbnB1dHMgPSBtYWxsb2MobmJJbnB1dHMqbmJTYW1wbGVzKnNpemVvZigqaW5wdXRz
KSk7CisgICAgb3V0cHV0cyA9IG1hbGxvYyhuYk91dHB1dHMqbmJTYW1wbGVzKnNpemVvZigqb3V0
cHV0cykpOworCisgICAgc2VlZCA9IHRpbWUoTlVMTCk7CisgICAgLypzZWVkID0gMTQ1MjIwOTA0
MDsqLworICAgIGZwcmludGYgKHN0ZGVyciwgIlNlZWQgaXMgJXVcbiIsIHNlZWQpOworICAgIHNy
YW5kKHNlZWQpOworICAgIGJ1aWxkX3RhbnNpZ190YWJsZSgpOworICAgIHNpZ25hbChTSUdURVJN
LCBoYW5kbGVyKTsKKyAgICBzaWduYWwoU0lHSU5ULCBoYW5kbGVyKTsKKyAgICBzaWduYWwoU0lH
SFVQLCBoYW5kbGVyKTsKKyAgICBmb3IgKGk9MDtpPG5iU2FtcGxlcztpKyspCisgICAgeworICAg
ICAgICBmb3IgKGo9MDtqPG5iUmVhbElucHV0cztqKyspCisgICAgICAgICAgICByZXQgPSBzY2Fu
ZigiICVmIiwgJmlucHV0c1tpKm5iSW5wdXRzK2pdKTsKKyAgICAgICAgZm9yIChqPTA7ajxuYk91
dHB1dHM7aisrKQorICAgICAgICAgICAgcmV0ID0gc2NhbmYoIiAlZiIsICZvdXRwdXRzW2kqbmJP
dXRwdXRzK2pdKTsKKyAgICAgICAgaWYgKGZlb2Yoc3RkaW4pKQorICAgICAgICB7CisgICAgICAg
ICAgICBuYlNhbXBsZXMgPSBpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9
CisgICAgaW50IHRvcG9bM10gPSB7bmJJbnB1dHMsIG5iSGlkZGVuLCBuYk91dHB1dHN9OworICAg
IE1MUFRyYWluICpuZXQ7CisKKyAgICBmcHJpbnRmIChzdGRlcnIsICJHb3QgJWQgc2FtcGxlc1xu
IiwgbmJTYW1wbGVzKTsKKyAgICBuZXQgPSBtbHBfaW5pdCh0b3BvLCAzLCBpbnB1dHMsIG91dHB1
dHMsIG5iU2FtcGxlcyk7CisgICAgcm1zID0gbWxwX3RyYWluX2JhY2twcm9wKG5ldCwgaW5wdXRz
LCBvdXRwdXRzLCBuYlNhbXBsZXMsIG5iRXBvY2gsIDEpOworICAgIHByaW50ZiAoIiNpZmRlZiBI
QVZFX0NPTkZJR19IXG4iKTsKKyAgICBwcmludGYgKCIjaW5jbHVkZSBcImNvbmZpZy5oXCJcbiIp
OworICAgIHByaW50ZiAoIiNlbmRpZlxuXG4iKTsKKyAgICBwcmludGYgKCIjaW5jbHVkZSBcIm1s
cC5oXCJcblxuIik7CisgICAgcHJpbnRmICgiLyogUk1TIGVycm9yIHdhcyAlZiwgc2VlZCB3YXMg
JXUgKi9cblxuIiwgcm1zLCBzZWVkKTsKKyAgICBwcmludGYgKCJzdGF0aWMgY29uc3QgZmxvYXQg
d2VpZ2h0c1slZF0gPSB7XG4iLCAodG9wb1swXSsxKSp0b3BvWzFdICsgKHRvcG9bMV0rMSkqdG9w
b1syXSk7CisgICAgcHJpbnRmICgiXG4vKiBoaWRkZW4gbGF5ZXIgKi9cbiIpOworICAgIGZvciAo
aT0wO2k8KHRvcG9bMF0rMSkqdG9wb1sxXTtpKyspCisgICAgeworICAgICAgICBwcmludGYgKCIl
Z2YsIiwgbmV0LT53ZWlnaHRzWzBdW2ldKTsKKyAgICAgICAgaWYgKGklNT09NCkKKyAgICAgICAg
ICAgIHByaW50ZigiXG4iKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcHJpbnRmKCIgIik7
CisgICAgfQorICAgIHByaW50ZiAoIlxuLyogb3V0cHV0IGxheWVyICovXG4iKTsKKyAgICBmb3Ig
KGk9MDtpPCh0b3BvWzFdKzEpKnRvcG9bMl07aSsrKQorICAgIHsKKyAgICAgICAgcHJpbnRmICgi
JWdmLCIsIG5ldC0+d2VpZ2h0c1sxXVtpXSk7CisgICAgICAgIGlmIChpJTU9PTQpCisgICAgICAg
ICAgICBwcmludGYoIlxuIik7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHByaW50ZigiICIp
OworICAgIH0KKyAgICBwcmludGYgKCJ9O1xuXG4iKTsKKyAgICBwcmludGYgKCJzdGF0aWMgY29u
c3QgaW50IHRvcG9bM10gPSB7JWQsICVkLCAlZH07XG5cbiIsIHRvcG9bMF0sIHRvcG9bMV0sIHRv
cG9bMl0pOworICAgIHByaW50ZiAoImNvbnN0IE1MUCBuZXQgPSB7XG4iKTsKKyAgICBwcmludGYg
KCIgICAgMyxcbiIpOworICAgIHByaW50ZiAoIiAgICB0b3BvLFxuIik7CisgICAgcHJpbnRmICgi
ICAgIHdlaWdodHNcbn07XG4iKTsKKyAgICByZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL21s
cF90cmFpbi5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zcmMvbWxwX3RyYWluLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDk0MDQxNTg1YTNmOWNiNjQz
MzQ4YTk5MjE0NWFiY2UwNmZlN2ViZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL21scF90cmFpbi5o
CkBAIC0wLDAgKzEsODYgQEAKKy8qIENvcHlyaWdodCAoYykgMjAwOC0yMDExIE9jdGFzaWMgSW5j
LgorICAgV3JpdHRlbiBieSBKZWFuLU1hcmMgVmFsaW4gKi8KKy8qCisgICBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAg
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICAgYXJlIG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisg
ICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEZPVU5EQVRJT04gT1IKKyAgIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgICBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
CisgICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORworICAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpZm5kZWYgX01M
UF9UUkFJTl9IXworI2RlZmluZSBfTUxQX1RSQUlOX0hfCisKKyNpbmNsdWRlIDxtYXRoLmg+Cisj
aW5jbHVkZSA8c3RkbGliLmg+CisKK2RvdWJsZSB0YW5zaWdfdGFibGVbNTAxXTsKK3N0YXRpYyBp
bmxpbmUgZG91YmxlIHRhbnNpZ19kb3VibGUoZG91YmxlIHgpCit7CisgICAgcmV0dXJuIDIuLygx
LitleHAoLTIuKngpKSAtIDEuOworfQorc3RhdGljIGlubGluZSB2b2lkIGJ1aWxkX3RhbnNpZ190
YWJsZSh2b2lkKQoreworICAgIGludCBpOworICAgIGZvciAoaT0wO2k8NTAxO2krKykKKyAgICAg
ICAgdGFuc2lnX3RhYmxlW2ldID0gdGFuc2lnX2RvdWJsZSguMDQqKGktMjUwKSk7Cit9CisKK3N0
YXRpYyBpbmxpbmUgZG91YmxlIHRhbnNpZ19hcHByb3goZG91YmxlIHgpCit7CisgICAgaW50IGk7
CisgICAgZG91YmxlIHksIGR5OworICAgIGlmICh4Pj0xMCkKKyAgICAgICAgcmV0dXJuIDE7Cisg
ICAgaWYgKHg8PS0xMCkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGkgPSBscmludCgyNSp4KTsK
KyAgICB4IC09IC4wNCppOworICAgIHkgPSB0YW5zaWdfdGFibGVbMjUwK2ldOworICAgIGR5ID0g
MS15Knk7CisgICAgeSA9IHkgKyB4KmR5KigxIC0geSp4KTsKKyAgICByZXR1cm4geTsKK30KKwor
c3RhdGljIGlubGluZSBmbG9hdCByYW5kbihmbG9hdCBzZCkKK3sKKyAgIGZsb2F0IFUxLCBVMiwg
UywgeDsKKyAgIGRvIHsKKyAgICAgIFUxID0gKChmbG9hdClyYW5kKCkpL1JBTkRfTUFYOworICAg
ICAgVTIgPSAoKGZsb2F0KXJhbmQoKSkvUkFORF9NQVg7CisgICAgICBVMSA9IDIqVTEtMTsKKyAg
ICAgIFUyID0gMipVMi0xOworICAgICAgUyA9IFUxKlUxICsgVTIqVTI7CisgICB9IHdoaWxlIChT
ID49IDEgfHwgUyA9PSAwLjBmKTsKKyAgIHggPSBzZCpzcXJ0KC0yICogbG9nKFMpIC8gUykgKiBV
MTsKKyAgIHJldHVybiB4OworfQorCisKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBpbnQgbGF5ZXJz
OworICAgIGludCAqdG9wbzsKKyAgICBkb3VibGUgKip3ZWlnaHRzOworICAgIGRvdWJsZSAqKmJl
c3Rfd2VpZ2h0czsKKyAgICBkb3VibGUgKmluX3JhdGU7Cit9IE1MUFRyYWluOworCisKKyNlbmRp
ZiAvKiBfTUxQX1RSQUlOX0hfICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzLmMK
aW5kZXggZjc2ZjEyNWNmYTMwMDQyNjc5OGVjMmMyYTFhOGM0YTkzNDIwNGQ1OC4uY2RiZDEzYTEx
Y2Q3OGQ0NzBhOTgxNTRmYzFlYTFlOGE2YzNkY2VmMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1cy5jCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc3JjL29wdXMuYwpAQCAtMTA3LDcgKzEwNyw3IEBAIE9QVVNfRVhQT1JUIHZvaWQgb3B1c19w
Y21fc29mdF9jbGlwKGZsb2F0ICpfeCwgaW50IE4sIGludCBDLCBmbG9hdCAqZGVjbGlwX21lbSkK
ICAgICAgICAgIC8qIFNsaWdodGx5IGJvb3N0ICJhIiBieSAyXi0yMi4gVGhpcyBpcyBqdXN0IGVu
b3VnaCB0byBlbnN1cmUgLWZmYXN0LW1hdGgKICAgICAgICAgICAgIGRvZXMgbm90IGNhdXNlIG91
dHB1dCB2YWx1ZXMgbGFyZ2VyIHRoYW4gKy8tMSwgYnV0IHNtYWxsIGVub3VnaCBub3QKICAgICAg
ICAgICAgIHRvIG1hdHRlciBldmVuIGZvciAyNC1iaXQgb3V0cHV0LiAgKi8KLSAgICAgICAgIGEg
Kz0gYSoyLjRlLTc7CisgICAgICAgICBhICs9IGEqMi40ZS03ZjsKICAgICAgICAgIGlmICh4W2kq
Q10+MCkKICAgICAgICAgICAgIGEgPSAtYTsKICAgICAgICAgIC8qIEFwcGx5IHNvZnQgY2xpcHBp
bmcgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfY29tcGFyZS5jIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19jb21wYXJlLmMK
aW5kZXggNjY4MjhmZDhjYWVmNmM4ZjdjYzkwZjg3ZTM3OWUyY2ZiMDdkMGNlOC4uMTk1NmUwOGZh
NWNlZTBlOWI4N2U1ZjJhYjUyMTdlMjRlYWM5OGQ1MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19jb21w
YXJlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zcmMvb3B1c19jb21wYXJlLmMKQEAgLTIzOCwxNSArMjM4LDExIEBAIGludCBt
YWluKGludCBfYXJnYyxjb25zdCBjaGFyICoqX2FyZ3YpewogICBpZih4bGVuZ3RoIT15bGVuZ3Ro
KmRvd25zYW1wbGUpewogICAgIGZwcmludGYoc3RkZXJyLCJTYW1wbGUgY291bnRzIGRvIG5vdCBt
YXRjaCAoJWx1IT0lbHUpLlxuIiwKICAgICAgKHVuc2lnbmVkIGxvbmcpeGxlbmd0aCwodW5zaWdu
ZWQgbG9uZyl5bGVuZ3RoKmRvd25zYW1wbGUpOwotICAgIGZyZWUoeCk7Ci0gICAgZnJlZSh5KTsK
ICAgICByZXR1cm4gRVhJVF9GQUlMVVJFOwogICB9CiAgIGlmKHhsZW5ndGg8VEVTVF9XSU5fU0la
RSl7CiAgICAgZnByaW50ZihzdGRlcnIsIkluc3VmZmljaWVudCBzYW1wbGUgZGF0YSAoJWx1PCVp
KS5cbiIsCiAgICAgICh1bnNpZ25lZCBsb25nKXhsZW5ndGgsVEVTVF9XSU5fU0laRSk7Ci0gICAg
ZnJlZSh4KTsKLSAgICBmcmVlKHkpOwogICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAgIH0KICAg
bmZyYW1lcz0oeGxlbmd0aC1URVNUX1dJTl9TSVpFK1RFU1RfV0lOX1NURVApL1RFU1RfV0lOX1NU
RVA7CkBAIC0zNjcsNiArMzYzLDkgQEAgaW50IG1haW4oaW50IF9hcmdjLGNvbnN0IGNoYXIgKipf
YXJndil7CiAgICAgRWYqPUVmOwogICAgIGVycis9RWYqRWY7CiAgIH0KKyAgZnJlZSh4Yik7Cisg
IGZyZWUoWCk7CisgIGZyZWUoWSk7CiAgIGVycj1wb3coZXJyL25mcmFtZXMsMS4wLzE2KTsKICAg
UT0xMDAqKDEtMC41KmxvZygxK2VycikvbG9nKDEuMTMpKTsKICAgaWYoUTwwKXsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc3JjL29wdXNfZGVjb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19kZWNvZGVyLmMKaW5kZXggOWEwODk2YjU1
MGQzNDY1MTgxNGU0YmRlMmZkMzQ3OTIxYTU4YzE2Zi4uMTQ5YWU3ZjIxZDhiYjQxNjdmY2M5MjYy
ZDMyZDQzOTNiMzE5ZjQ2MCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19kZWNvZGVyLmMKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMv
b3B1c19kZWNvZGVyLmMKQEAgLTMzLDcgKzMzLDcgQEAKICMgZXJyb3IgIk9QVVNfQlVJTEQgX01V
U1RfIGJlIGRlZmluZWQgdG8gYnVpbGQgT3B1cy4gVGhpcyBwcm9iYWJseSBtZWFucyB5b3UgbmVl
ZCBvdGhlciBkZWZpbmVzIGFzIHdlbGwsIGFzIGluIGEgY29uZmlnLmguIFNlZSB0aGUgaW5jbHVk
ZWQgYnVpbGQgZmlsZXMgZm9yIGRldGFpbHMuIgogI2VuZGlmCiAKLSNpZiBkZWZpbmVkKF9fR05V
Q19fKSAmJiAoX19HTlVDX18gPj0gMikgJiYgIWRlZmluZWQoX19PUFRJTUlaRV9fKSAmJiAhZGVm
aW5lZChPUFVTX1dJTExfQkVfU0xPVykgJiYgZGVmaW5lZChOREVCVUcpCisjaWYgZGVmaW5lZChf
X0dOVUNfXykgJiYgKF9fR05VQ19fID49IDIpICYmICFkZWZpbmVkKF9fT1BUSU1JWkVfXykgJiYg
IWRlZmluZWQoT1BVU19XSUxMX0JFX1NMT1cpCiAjIHByYWdtYSBtZXNzYWdlICJZb3UgYXBwZWFy
IHRvIGJlIGNvbXBpbGluZyB3aXRob3V0IG9wdGltaXphdGlvbiwgaWYgc28gb3B1cyB3aWxsIGJl
IHZlcnkgc2xvdy4iCiAjZW5kaWYKIApAQCAtODkxLDcgKzg5MSw3IEBAIGludCBvcHVzX2RlY29k
ZXJfY3RsKE9wdXNEZWNvZGVyICpzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgIGJyZWFrOwogICAg
Y2FzZSBPUFVTX0dFVF9MQVNUX1BBQ0tFVF9EVVJBVElPTl9SRVFVRVNUOgogICAgewotICAgICAg
b3B1c191aW50MzIgKnZhbHVlID0gdmFfYXJnKGFwLCBvcHVzX3VpbnQzMiopOworICAgICAgb3B1
c19pbnQzMiAqdmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50MzIqKTsKICAgICAgIGlmICghdmFs
dWUpCiAgICAgICB7CiAgICAgICAgICBnb3RvIGJhZF9hcmc7CkBAIC04OTksNiArODk5LDI2IEBA
IGludCBvcHVzX2RlY29kZXJfY3RsKE9wdXNEZWNvZGVyICpzdCwgaW50IHJlcXVlc3QsIC4uLikK
ICAgICAgICp2YWx1ZSA9IHN0LT5sYXN0X3BhY2tldF9kdXJhdGlvbjsKICAgIH0KICAgIGJyZWFr
OworICAgY2FzZSBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKKyAg
IHsKKyAgICAgICBvcHVzX2ludDMyIHZhbHVlID0gdmFfYXJnKGFwLCBvcHVzX2ludDMyKTsKKyAg
ICAgICBpZih2YWx1ZTwwIHx8IHZhbHVlPjEpCisgICAgICAgeworICAgICAgICAgIGdvdG8gYmFk
X2FyZzsKKyAgICAgICB9CisgICAgICAgY2VsdF9kZWNvZGVyX2N0bChjZWx0X2RlYywgT1BVU19T
RVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKHZhbHVlKSk7CisgICB9CisgICBicmVhazsKKyAg
IGNhc2UgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1Q6CisgICB7Cisg
ICAgICAgb3B1c19pbnQzMiAqdmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50MzIqKTsKKyAgICAg
ICBpZiAoIXZhbHVlKQorICAgICAgIHsKKyAgICAgICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAg
fQorICAgICAgIGNlbHRfZGVjb2Rlcl9jdGwoY2VsdF9kZWMsIE9QVVNfR0VUX1BIQVNFX0lOVkVS
U0lPTl9ESVNBQkxFRCh2YWx1ZSkpOworICAgfQorICAgYnJlYWs7CiAgICBkZWZhdWx0OgogICAg
ICAgLypmcHJpbnRmKHN0ZGVyciwgInVua25vd24gb3B1c19kZWNvZGVyX2N0bCgpIHJlcXVlc3Q6
ICVkIiwgcmVxdWVzdCk7Ki8KICAgICAgIHJldCA9IE9QVVNfVU5JTVBMRU1FTlRFRDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc3JjL29wdXNfZGVtby5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19kZW1vLmMKaW5kZXggNjk4OGE4Y2IxNWQ2
ZTYwOGY1ODY1Mjc3MTc4ZTFjMDRjNjk2MWQ0Yi4uNTA5ODdjOTZmMjY1ZjYwNjA3NjJmOWMwNGU2
Mjg3Y2I5YjVhYWI2YiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19kZW1vLmMKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19k
ZW1vLmMKQEAgLTU0LDkgKzU0LDkgQEAgdm9pZCBwcmludF91c2FnZSggY2hhciogYXJndltdICkK
ICAgICBmcHJpbnRmKHN0ZGVyciwgIi1kICAgICAgICAgICAgICAgICAgIDogb25seSBydW5zIHRo
ZSBkZWNvZGVyIChyZWFkcyB0aGUgYml0LXN0cmVhbSBhcyBpbnB1dClcbiIgKTsKICAgICBmcHJp
bnRmKHN0ZGVyciwgIi1jYnIgICAgICAgICAgICAgICAgIDogZW5hYmxlIGNvbnN0YW50IGJpdHJh
dGU7IGRlZmF1bHQ6IHZhcmlhYmxlIGJpdHJhdGVcbiIgKTsKICAgICBmcHJpbnRmKHN0ZGVyciwg
Ii1jdmJyICAgICAgICAgICAgICAgIDogZW5hYmxlIGNvbnN0cmFpbmVkIHZhcmlhYmxlIGJpdHJh
dGU7IGRlZmF1bHQ6IHVuY29uc3RyYWluZWRcbiIgKTsKLSAgICBmcHJpbnRmKHN0ZGVyciwgIi12
YXJpYWJsZS1kdXJhdGlvbiAgIDogZW5hYmxlIGZyYW1lcyBvZiB2YXJpYWJsZSBkdXJhdGlvbiAo
ZXhwZXJ0cyBvbmx5KTsgZGVmYXVsdDogZGlzYWJsZWRcbiIgKTsKKyAgICBmcHJpbnRmKHN0ZGVy
ciwgIi1kZWxheWVkLWRlY2lzaW9uICAgIDogdXNlIGxvb2stYWhlYWQgZm9yIHNwZWVjaC9tdXNp
YyBkZXRlY3Rpb24gKGV4cGVydHMgb25seSk7IGRlZmF1bHQ6IGRpc2FibGVkXG4iICk7CiAgICAg
ZnByaW50ZihzdGRlcnIsICItYmFuZHdpZHRoIDxOQnxNQnxXQnxTV0J8RkI+IDogYXVkaW8gYmFu
ZHdpZHRoIChmcm9tIG5hcnJvd2JhbmQgdG8gZnVsbGJhbmQpOyBkZWZhdWx0OiBzYW1wbGluZyBy
YXRlXG4iICk7Ci0gICAgZnByaW50ZihzdGRlcnIsICItZnJhbWVzaXplIDwyLjV8NXwxMHwyMHw0
MHw2MD4gOiBmcmFtZSBzaXplIGluIG1zOyBkZWZhdWx0OiAyMCBcbiIgKTsKKyAgICBmcHJpbnRm
KHN0ZGVyciwgIi1mcmFtZXNpemUgPDIuNXw1fDEwfDIwfDQwfDYwfDgwfDEwMHwxMjA+IDogZnJh
bWUgc2l6ZSBpbiBtczsgZGVmYXVsdDogMjAgXG4iICk7CiAgICAgZnByaW50ZihzdGRlcnIsICIt
bWF4X3BheWxvYWQgPGJ5dGVzPiA6IG1heGltdW0gcGF5bG9hZCBzaXplIGluIGJ5dGVzLCBkZWZh
dWx0OiAxMDI0XG4iICk7CiAgICAgZnByaW50ZihzdGRlcnIsICItY29tcGxleGl0eSA8Y29tcD4g
ICA6IGNvbXBsZXhpdHksIDAgKGxvd2VzdCkgLi4uIDEwIChoaWdoZXN0KTsgZGVmYXVsdDogMTBc
biIgKTsKICAgICBmcHJpbnRmKHN0ZGVyciwgIi1pbmJhbmRmZWMgICAgICAgICAgIDogZW5hYmxl
IFNJTEsgaW5iYW5kIEZFQ1xuIiApOwpAQCAtMjUzLDYgKzI1Myw3IEBAIGludCBtYWluKGludCBh
cmdjLCBjaGFyICphcmd2W10pCiAgICAgb3B1c191aW50MzIgZGVjX2ZpbmFsX3JhbmdlOwogICAg
IGludCBlbmNvZGVfb25seT0wLCBkZWNvZGVfb25seT0wOwogICAgIGludCBtYXhfZnJhbWVfc2l6
ZSA9IDQ4MDAwKjI7CisgICAgc2l6ZV90IG51bV9yZWFkOwogICAgIGludCBjdXJyX3JlYWQ9MDsK
ICAgICBpbnQgc3dlZXBfYnBzID0gMDsKICAgICBpbnQgcmFuZG9tX2ZyYW1lc2l6ZT0wLCBuZXdz
aXplPTAsIGRlbGF5ZWRfY2VsdD0wOwpAQCAtMzgyLDkgKzM4MywxNSBAQCBpbnQgbWFpbihpbnQg
YXJnYywgY2hhciAqYXJndltdKQogICAgICAgICAgICAgICAgIGZyYW1lX3NpemUgPSBzYW1wbGlu
Z19yYXRlLzI1OwogICAgICAgICAgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbIGFyZ3MgKyAxIF0s
ICI2MCIpPT0wKQogICAgICAgICAgICAgICAgIGZyYW1lX3NpemUgPSAzKnNhbXBsaW5nX3JhdGUv
NTA7CisgICAgICAgICAgICBlbHNlIGlmIChzdHJjbXAoYXJndlsgYXJncyArIDEgXSwgIjgwIik9
PTApCisgICAgICAgICAgICAgICAgZnJhbWVfc2l6ZSA9IDQqc2FtcGxpbmdfcmF0ZS81MDsKKyAg
ICAgICAgICAgIGVsc2UgaWYgKHN0cmNtcChhcmd2WyBhcmdzICsgMSBdLCAiMTAwIik9PTApCisg
ICAgICAgICAgICAgICAgZnJhbWVfc2l6ZSA9IDUqc2FtcGxpbmdfcmF0ZS81MDsKKyAgICAgICAg
ICAgIGVsc2UgaWYgKHN0cmNtcChhcmd2WyBhcmdzICsgMSBdLCAiMTIwIik9PTApCisgICAgICAg
ICAgICAgICAgZnJhbWVfc2l6ZSA9IDYqc2FtcGxpbmdfcmF0ZS81MDsKICAgICAgICAgICAgIGVs
c2UgewogICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiVW5zdXBwb3J0ZWQgZnJhbWUg
c2l6ZTogJXMgbXMuICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlN1cHBvcnRl
ZCBhcmUgMi41LCA1LCAxMCwgMjAsIDQwLCA2MC5cbiIsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICJTdXBwb3J0ZWQgYXJlIDIuNSwgNSwgMTAsIDIwLCA0MCwgNjAsIDgwLCAxMDAs
IDEyMC5cbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3ZbIGFyZ3MgKyAx
IF0pOwogICAgICAgICAgICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAgICAgICAgICAgICB9
CkBAIC00MDgsMTAgKzQxNSw2IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAg
ICAgICAgICAgICBjaGVja19lbmNvZGVyX29wdGlvbihkZWNvZGVfb25seSwgIi1jdmJyIik7CiAg
ICAgICAgICAgICBjdmJyID0gMTsKICAgICAgICAgICAgIGFyZ3MrKzsKLSAgICAgICAgfSBlbHNl
IGlmKCBzdHJjbXAoIGFyZ3ZbIGFyZ3MgXSwgIi12YXJpYWJsZS1kdXJhdGlvbiIgKSA9PSAwICkg
ewotICAgICAgICAgICAgY2hlY2tfZW5jb2Rlcl9vcHRpb24oZGVjb2RlX29ubHksICItdmFyaWFi
bGUtZHVyYXRpb24iKTsKLSAgICAgICAgICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFN
RVNJWkVfVkFSSUFCTEU7Ci0gICAgICAgICAgICBhcmdzKys7CiAgICAgICAgIH0gZWxzZSBpZigg
c3RyY21wKCBhcmd2WyBhcmdzIF0sICItZGVsYXllZC1kZWNpc2lvbiIgKSA9PSAwICkgewogICAg
ICAgICAgICAgY2hlY2tfZW5jb2Rlcl9vcHRpb24oZGVjb2RlX29ubHksICItZGVsYXllZC1kZWNp
c2lvbiIpOwogICAgICAgICAgICAgZGVsYXllZF9kZWNpc2lvbiA9IDE7CkBAIC01OTksMjIgKzYw
MiwyNSBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgIH0KICAgICBpZihk
ZWxheWVkX2RlY2lzaW9uKQogICAgIHsKLSAgICAgICBpZiAodmFyaWFibGVfZHVyYXRpb24hPU9Q
VVNfRlJBTUVTSVpFX1ZBUklBQkxFKQotICAgICAgIHsKLSAgICAgICAgICBpZiAoZnJhbWVfc2l6
ZT09c2FtcGxpbmdfcmF0ZS80MDApCi0gICAgICAgICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBP
UFVTX0ZSQU1FU0laRV8yXzVfTVM7Ci0gICAgICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09c2Ft
cGxpbmdfcmF0ZS8yMDApCi0gICAgICAgICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZS
QU1FU0laRV81X01TOwotICAgICAgICAgIGVsc2UgaWYgKGZyYW1lX3NpemU9PXNhbXBsaW5nX3Jh
dGUvMTAwKQotICAgICAgICAgICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVf
MTBfTVM7Ci0gICAgICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS81MCkK
LSAgICAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzIwX01TOwot
ICAgICAgICAgIGVsc2UgaWYgKGZyYW1lX3NpemU9PXNhbXBsaW5nX3JhdGUvMjUpCi0gICAgICAg
ICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV80MF9NUzsKLSAgICAgICAg
ICBlbHNlCi0gICAgICAgICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV82
MF9NUzsKLSAgICAgICAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRVhQRVJUX0ZS
QU1FX0RVUkFUSU9OKHZhcmlhYmxlX2R1cmF0aW9uKSk7Ci0gICAgICAgfQorICAgICAgIGlmIChm
cmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzQwMCkKKyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlv
biA9IE9QVVNfRlJBTUVTSVpFXzJfNV9NUzsKKyAgICAgICBlbHNlIGlmIChmcmFtZV9zaXplPT1z
YW1wbGluZ19yYXRlLzIwMCkKKyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJB
TUVTSVpFXzVfTVM7CisgICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS8x
MDApCisgICAgICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV8xMF9NUzsK
KyAgICAgICBlbHNlIGlmIChmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzUwKQorICAgICAgICAg
IHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfMjBfTVM7CisgICAgICAgZWxzZSBp
ZiAoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS8yNSkKKyAgICAgICAgICB2YXJpYWJsZV9kdXJh
dGlvbiA9IE9QVVNfRlJBTUVTSVpFXzQwX01TOworICAgICAgIGVsc2UgaWYgKGZyYW1lX3NpemU9
PTMqc2FtcGxpbmdfcmF0ZS81MCkKKyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNf
RlJBTUVTSVpFXzYwX01TOworICAgICAgIGVsc2UgaWYgKGZyYW1lX3NpemU9PTQqc2FtcGxpbmdf
cmF0ZS81MCkKKyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzgw
X01TOworICAgICAgIGVsc2UgaWYgKGZyYW1lX3NpemU9PTUqc2FtcGxpbmdfcmF0ZS81MCkKKyAg
ICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzEwMF9NUzsKKyAgICAg
ICBlbHNlCisgICAgICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV8xMjBf
TVM7CisgICAgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9E
VVJBVElPTih2YXJpYWJsZV9kdXJhdGlvbikpOwogICAgICAgIGZyYW1lX3NpemUgPSAyKjQ4MDAw
OwogICAgIH0KICAgICB3aGlsZSAoIXN0b3ApCkBAIC02NTIsOCArNjU4LDggQEAgaW50IG1haW4o
aW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgaWYgKGRlY29kZV9vbmx5KQogICAgICAg
ICB7CiAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyIGNoWzRdOwotICAgICAgICAgICAgZXJyID0g
ZnJlYWQoY2gsIDEsIDQsIGZpbik7Ci0gICAgICAgICAgICBpZiAoZmVvZihmaW4pKQorICAgICAg
ICAgICAgbnVtX3JlYWQgPSBmcmVhZChjaCwgMSwgNCwgZmluKTsKKyAgICAgICAgICAgIGlmIChu
dW1fcmVhZCE9NCkKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGxlblt0b2dn
bGVdID0gY2hhcl90b19pbnQoY2gpOwogICAgICAgICAgICAgaWYgKGxlblt0b2dnbGVdPm1heF9w
YXlsb2FkX2J5dGVzIHx8IGxlblt0b2dnbGVdPDApCkBAIC02NjEsMTQgKzY2NywxNiBAQCBpbnQg
bWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICAgICAgICAgIGZwcmludGYoc3Rk
ZXJyLCAiSW52YWxpZCBwYXlsb2FkIGxlbmd0aDogJWRcbiIsbGVuW3RvZ2dsZV0pOwogICAgICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgZXJyID0gZnJlYWQo
Y2gsIDEsIDQsIGZpbik7CisgICAgICAgICAgICBudW1fcmVhZCA9IGZyZWFkKGNoLCAxLCA0LCBm
aW4pOworICAgICAgICAgICAgaWYgKG51bV9yZWFkIT00KQorICAgICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICAgICAgZW5jX2ZpbmFsX3JhbmdlW3RvZ2dsZV0gPSBjaGFyX3RvX2ludChjaCk7
Ci0gICAgICAgICAgICBlcnIgPSBmcmVhZChkYXRhW3RvZ2dsZV0sIDEsIGxlblt0b2dnbGVdLCBm
aW4pOwotICAgICAgICAgICAgaWYgKGVycjxsZW5bdG9nZ2xlXSkKKyAgICAgICAgICAgIG51bV9y
ZWFkID0gZnJlYWQoZGF0YVt0b2dnbGVdLCAxLCBsZW5bdG9nZ2xlXSwgZmluKTsKKyAgICAgICAg
ICAgIGlmIChudW1fcmVhZCE9KHNpemVfdClsZW5bdG9nZ2xlXSkKICAgICAgICAgICAgIHsKICAg
ICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIlJhbiBvdXQgb2YgaW5wdXQsICIKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4cGVjdGluZyAlZCBieXRlcyBnb3QgJWRcbiIs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlblt0b2dnbGVdLGVycik7CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlblt0b2dnbGVdLChpbnQpbnVtX3JlYWQpOwog
ICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UgewpA
QCAtNjgwLDggKzY4OCw4IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAg
ICAgICAgICAgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0ZPUkNFX0NIQU5ORUxT
KG1vZGVfbGlzdFtjdXJyX21vZGVdWzNdKSk7CiAgICAgICAgICAgICAgICAgZnJhbWVfc2l6ZSA9
IG1vZGVfbGlzdFtjdXJyX21vZGVdWzJdOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgZXJy
ID0gZnJlYWQoZmJ5dGVzLCBzaXplb2Yoc2hvcnQpKmNoYW5uZWxzLCBmcmFtZV9zaXplLXJlbWFp
bmluZywgZmluKTsKLSAgICAgICAgICAgIGN1cnJfcmVhZCA9IGVycjsKKyAgICAgICAgICAgIG51
bV9yZWFkID0gZnJlYWQoZmJ5dGVzLCBzaXplb2Yoc2hvcnQpKmNoYW5uZWxzLCBmcmFtZV9zaXpl
LXJlbWFpbmluZywgZmluKTsKKyAgICAgICAgICAgIGN1cnJfcmVhZCA9IChpbnQpbnVtX3JlYWQ7
CiAgICAgICAgICAgICB0b3RfaW4gKz0gY3Vycl9yZWFkOwogICAgICAgICAgICAgZm9yKGk9MDtp
PGN1cnJfcmVhZCpjaGFubmVscztpKyspCiAgICAgICAgICAgICB7CkBAIC03MjEsMTQgKzcyOSw4
IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICBpZiAobGVu
W3RvZ2dsZV0gPCAwKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIGZwcmludGYgKHN0
ZGVyciwgIm9wdXNfZW5jb2RlKCkgcmV0dXJuZWQgJWRcbiIsIGxlblt0b2dnbGVdKTsKLSAgICAg
ICAgICAgICAgICBmcmVlKGRhdGFbMF0pOwotICAgICAgICAgICAgICAgIGlmICh1c2VfaW5iYW5k
ZmVjKQotICAgICAgICAgICAgICAgICAgICBmcmVlKGRhdGFbMV0pOwogICAgICAgICAgICAgICAg
IGZjbG9zZShmaW4pOwogICAgICAgICAgICAgICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAgICAg
ICAgICBmcmVlKGluKTsKLSAgICAgICAgICAgICAgICBmcmVlKG91dCk7Ci0gICAgICAgICAgICAg
ICAgZnJlZShmYnl0ZXMpOwogICAgICAgICAgICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICBjdXJyX21vZGVfY291bnQgKz0gZnJhbWVfc2l6ZTsK
QEAgLTc0NiwxNCArNzQ4LDYgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAg
ICAgICAgICAgaWYgKChlcnIgPSBvcHVzX3BhY2tldF9wYWQoZGF0YVt0b2dnbGVdLCBsZW5bdG9n
Z2xlXSwgbmV3X2xlbikpICE9IE9QVVNfT0spCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
ZnByaW50ZihzdGRlcnIsICJwYWRkaW5nIGZhaWxlZDogJXNcbiIsIG9wdXNfc3RyZXJyb3IoZXJy
KSk7Ci0gICAgICAgICAgICAgIGZyZWUoZGF0YVswXSk7Ci0gICAgICAgICAgICAgIGlmICh1c2Vf
aW5iYW5kZmVjKQotICAgICAgICAgICAgICAgICAgZnJlZShkYXRhWzFdKTsKLSAgICAgICAgICAg
ICAgZmNsb3NlKGZpbik7Ci0gICAgICAgICAgICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAgICAg
ICAgZnJlZShpbik7Ci0gICAgICAgICAgICAgIGZyZWUob3V0KTsKLSAgICAgICAgICAgICAgZnJl
ZShmYnl0ZXMpOwogICAgICAgICAgICAgICByZXR1cm4gRVhJVF9GQUlMVVJFOwogICAgICAgICAg
ICB9CiAgICAgICAgICAgIGxlblt0b2dnbGVdID0gbmV3X2xlbjsKQEAgLTc2NSw0NCArNzU5LDIw
IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICBpbnRfdG9f
Y2hhcihsZW5bdG9nZ2xlXSwgaW50X2ZpZWxkKTsKICAgICAgICAgICAgIGlmIChmd3JpdGUoaW50
X2ZpZWxkLCAxLCA0LCBmb3V0KSAhPSA0KSB7CiAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVy
ciwgIkVycm9yIHdyaXRpbmcuXG4iKTsKLSAgICAgICAgICAgICAgIGZyZWUoZGF0YVswXSk7Ci0g
ICAgICAgICAgICAgICBpZiAodXNlX2luYmFuZGZlYykKLSAgICAgICAgICAgICAgICAgICBmcmVl
KGRhdGFbMV0pOwotICAgICAgICAgICAgICAgZmNsb3NlKGZpbik7Ci0gICAgICAgICAgICAgICBm
Y2xvc2UoZm91dCk7Ci0gICAgICAgICAgICAgICBmcmVlKGluKTsKLSAgICAgICAgICAgICAgIGZy
ZWUob3V0KTsKLSAgICAgICAgICAgICAgIGZyZWUoZmJ5dGVzKTsKICAgICAgICAgICAgICAgIHJl
dHVybiBFWElUX0ZBSUxVUkU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpbnRfdG9fY2hh
cihlbmNfZmluYWxfcmFuZ2VbdG9nZ2xlXSwgaW50X2ZpZWxkKTsKICAgICAgICAgICAgIGlmIChm
d3JpdGUoaW50X2ZpZWxkLCAxLCA0LCBmb3V0KSAhPSA0KSB7CiAgICAgICAgICAgICAgICBmcHJp
bnRmKHN0ZGVyciwgIkVycm9yIHdyaXRpbmcuXG4iKTsKLSAgICAgICAgICAgICAgIGZyZWUoZGF0
YVswXSk7Ci0gICAgICAgICAgICAgICBpZiAodXNlX2luYmFuZGZlYykKLSAgICAgICAgICAgICAg
ICAgICBmcmVlKGRhdGFbMV0pOwotICAgICAgICAgICAgICAgZmNsb3NlKGZpbik7Ci0gICAgICAg
ICAgICAgICBmY2xvc2UoZm91dCk7Ci0gICAgICAgICAgICAgICBmcmVlKGluKTsKLSAgICAgICAg
ICAgICAgIGZyZWUob3V0KTsKLSAgICAgICAgICAgICAgIGZyZWUoZmJ5dGVzKTsKICAgICAgICAg
ICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBp
ZiAoZndyaXRlKGRhdGFbdG9nZ2xlXSwgMSwgbGVuW3RvZ2dsZV0sIGZvdXQpICE9ICh1bnNpZ25l
ZClsZW5bdG9nZ2xlXSkgewogICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJFcnJvciB3
cml0aW5nLlxuIik7Ci0gICAgICAgICAgICAgICBmcmVlKGRhdGFbMF0pOwotICAgICAgICAgICAg
ICAgaWYgKHVzZV9pbmJhbmRmZWMpCi0gICAgICAgICAgICAgICAgICAgZnJlZShkYXRhWzFdKTsK
LSAgICAgICAgICAgICAgIGZjbG9zZShmaW4pOwotICAgICAgICAgICAgICAgZmNsb3NlKGZvdXQp
OwotICAgICAgICAgICAgICAgZnJlZShpbik7Ci0gICAgICAgICAgICAgICBmcmVlKG91dCk7Ci0g
ICAgICAgICAgICAgICBmcmVlKGZieXRlcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gRVhJVF9G
QUlMVVJFOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgdG90X3NhbXBsZXMgKz0gbmJfZW5j
b2RlZDsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGludCBvdXRwdXRfc2FtcGxlczsK
KyAgICAgICAgICAgIG9wdXNfaW50MzIgb3V0cHV0X3NhbXBsZXM7CiAgICAgICAgICAgICBsb3N0
ID0gbGVuW3RvZ2dsZV09PTAgfHwgKHBhY2tldF9sb3NzX3BlcmM+MCAmJiByYW5kKCklMTAwIDwg
cGFja2V0X2xvc3NfcGVyYyk7CiAgICAgICAgICAgICBpZiAobG9zdCkKICAgICAgICAgICAgICAg
IG9wdXNfZGVjb2Rlcl9jdGwoZGVjLCBPUFVTX0dFVF9MQVNUX1BBQ0tFVF9EVVJBVElPTigmb3V0
cHV0X3NhbXBsZXMpKTsKQEAgLTgyOCw3ICs3OTgsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hh
ciAqYXJndltdKQogICAgICAgICAgICAgICAgICAgICBpZiAoIWRlY29kZV9vbmx5ICYmIHRvdF9v
dXQgKyBvdXRwdXRfc2FtcGxlcyA+IHRvdF9pbikKICAgICAgICAgICAgICAgICAgICAgewogICAg
ICAgICAgICAgICAgICAgICAgICBzdG9wPTE7Ci0gICAgICAgICAgICAgICAgICAgICAgIG91dHB1
dF9zYW1wbGVzICA9IHRvdF9pbi10b3Rfb3V0OworICAgICAgICAgICAgICAgICAgICAgICBvdXRw
dXRfc2FtcGxlcyA9IChvcHVzX2ludDMyKSh0b3RfaW4gLSB0b3Rfb3V0KTsKICAgICAgICAgICAg
ICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICBpZiAob3V0cHV0X3NhbXBsZXM+c2tpcCkg
ewogICAgICAgICAgICAgICAgICAgICAgICBpbnQgaTsKQEAgLTg0MSwxNCArODExLDYgQEAgaW50
IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgICAgICAgICAgICAgfQog
ICAgICAgICAgICAgICAgICAgICAgICBpZiAoZndyaXRlKGZieXRlcywgc2l6ZW9mKHNob3J0KSpj
aGFubmVscywgb3V0cHV0X3NhbXBsZXMtc2tpcCwgZm91dCkgIT0gKHVuc2lnbmVkKShvdXRwdXRf
c2FtcGxlcy1za2lwKSl7CiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJy
LCAiRXJyb3Igd3JpdGluZy5cbiIpOwotICAgICAgICAgICAgICAgICAgICAgICAgICBmcmVlKGRh
dGFbMF0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodXNlX2luYmFuZGZlYykKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyZWUoZGF0YVsxXSk7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgIGZjbG9zZShmaW4pOwotICAgICAgICAgICAgICAgICAgICAgICAgICBmY2xv
c2UoZm91dCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGZyZWUoaW4pOwotICAgICAgICAg
ICAgICAgICAgICAgICAgICBmcmVlKG91dCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGZy
ZWUoZmJ5dGVzKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVS
RTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB0b3Rf
b3V0ICs9IG91dHB1dF9zYW1wbGVzLXNraXA7CkBAIC04NzUsMTQgKzgzNyw4IEBAIGludCBtYWlu
KGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICAgICAgICAgICAgICAgKGxvbmcp
Y291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGxvbmcpZW5jX2ZpbmFs
X3JhbmdlW3RvZ2dsZV51c2VfaW5iYW5kZmVjXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAo
dW5zaWduZWQgbG9uZylkZWNfZmluYWxfcmFuZ2UpOwotICAgICAgICAgICAgZnJlZShkYXRhWzBd
KTsKLSAgICAgICAgICAgIGlmICh1c2VfaW5iYW5kZmVjKQotICAgICAgICAgICAgICAgIGZyZWUo
ZGF0YVsxXSk7CiAgICAgICAgICAgICBmY2xvc2UoZmluKTsKICAgICAgICAgICAgIGZjbG9zZShm
b3V0KTsKLSAgICAgICAgICAgIGZyZWUoaW4pOwotICAgICAgICAgICAgZnJlZShvdXQpOwotICAg
ICAgICAgICAgZnJlZShmYnl0ZXMpOwogICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsK
ICAgICAgICAgfQogCkBAIC05MjIsOCArODc4LDYgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIg
KmFyZ3ZbXSkKICAgICAgICAgICAgICAgIDFlLTMqYml0c19hY3Qqc2FtcGxpbmdfcmF0ZS8oMWUt
MTUrZnJhbWVfc2l6ZSooZG91YmxlKWNvdW50X2FjdCkpOwogICAgIGZwcmludGYgKHN0ZGVyciwg
ImJpdHJhdGUgc3RhbmRhcmQgZGV2aWF0aW9uOiAgJTcuM2Yga2Ivc1xuIiwKICAgICAgICAgICAg
IDFlLTMqc3FydChiaXRzMi9jb3VudCAtIGJpdHMqYml0cy8oY291bnQqKGRvdWJsZSljb3VudCkp
KnNhbXBsaW5nX3JhdGUvZnJhbWVfc2l6ZSk7Ci0gICAgLyogQ2xvc2UgYW55IGZpbGVzIHRvIHdo
aWNoIGludGVybWVkaWF0ZSByZXN1bHRzIHdlcmUgc3RvcmVkICovCi0gICAgU0lMS19ERUJVR19T
VE9SRV9DTE9TRV9GSUxFUwogICAgIHNpbGtfVGltZXJTYXZlKCJvcHVzX3RpbWluZy50eHQiKTsK
ICAgICBvcHVzX2VuY29kZXJfZGVzdHJveShlbmMpOwogICAgIG9wdXNfZGVjb2Rlcl9kZXN0cm95
KGRlYyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX2VuY29kZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfZW5jb2Rlci5j
CmluZGV4IDlhNTE2YTg4NGFhNzc3OGU4NTc3YTU1OTgxOTE1MzBiYzY5MDY3YjIuLjIxNDljMjBi
NDE5MGEwNDdjYjQ0ZmY2M2UyZGFhYzFjNzkzOTU2ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfZW5j
b2Rlci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc3JjL29wdXNfZW5jb2Rlci5jCkBAIC01Myw2ICs1MywxMCBAQAogCiAjZGVm
aW5lIE1BWF9FTkNPREVSX0JVRkZFUiA0ODAKIAorI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQor
I2RlZmluZSBQU0VVRE9fU05SX1RIUkVTSE9MRCAzMTYuMjNmICAgIC8qIDEwXigyNS8xMCkgKi8K
KyNlbmRpZgorCiB0eXBlZGVmIHN0cnVjdCB7CiAgICBvcHVzX3ZhbDMyIFhYLCBYWSwgWVk7CiAg
ICBvcHVzX3ZhbDE2IHNtb290aGVkX3dpZHRoOwpAQCAtODIsNiArODYsNyBAQCBzdHJ1Y3QgT3B1
c0VuY29kZXIgewogICAgIGludCAgICAgICAgICBlbmNvZGVyX2J1ZmZlcjsKICAgICBpbnQgICAg
ICAgICAgbGZlOwogICAgIGludCAgICAgICAgICBhcmNoOworICAgIGludCAgICAgICAgICB1c2Vf
ZHR4OyAgICAgICAgICAgICAgICAgLyogZ2VuZXJhbCBEVFggZm9yIGJvdGggU0lMSyBhbmQgQ0VM
VCAqLwogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQogICAgIFRvbmFsaXR5QW5hbHlzaXNTdGF0
ZSBhbmFseXNpczsKICNlbmRpZgpAQCAtOTcsNiArMTAyLDggQEAgc3RydWN0IE9wdXNFbmNvZGVy
IHsKICAgICBpbnQgICAgICAgICAgcHJldl9jaGFubmVsczsKICAgICBpbnQgICAgICAgICAgcHJl
dl9mcmFtZXNpemU7CiAgICAgaW50ICAgICAgICAgIGJhbmR3aWR0aDsKKyAgICAvKiBCYW5kd2lk
dGggZGV0ZXJtaW5lZCBhdXRvbWF0aWNhbGx5IGZyb20gdGhlIHJhdGUgKGJlZm9yZSBhbnkgb3Ro
ZXIgYWRqdXN0bWVudCkgKi8KKyAgICBpbnQgICAgICAgICAgYXV0b19iYW5kd2lkdGg7CiAgICAg
aW50ICAgICAgICAgIHNpbGtfYndfc3dpdGNoOwogICAgIC8qIFNhbXBsaW5nIHJhdGUgKGF0IHRo
ZSBBUEkgbGV2ZWwpICovCiAgICAgaW50ICAgICAgICAgIGZpcnN0OwpAQCAtMTA1LDcgKzExMiwx
MCBAQCBzdHJ1Y3QgT3B1c0VuY29kZXIgewogICAgIG9wdXNfdmFsMTYgICBkZWxheV9idWZmZXJb
TUFYX0VOQ09ERVJfQlVGRkVSKjJdOwogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQogICAgIGlu
dCAgICAgICAgICBkZXRlY3RlZF9iYW5kd2lkdGg7CisgICAgaW50ICAgICAgICAgIG5iX25vX2Fj
dGl2aXR5X2ZyYW1lczsKKyAgICBvcHVzX3ZhbDMyICAgcGVha19zaWduYWxfZW5lcmd5OwogI2Vu
ZGlmCisgICAgaW50ICAgICAgICAgIG5vbmZpbmFsX2ZyYW1lOyAvKiBjdXJyZW50IGZyYW1lIGlz
IG5vdCB0aGUgZmluYWwgaW4gYSBwYWNrZXQgKi8KICAgICBvcHVzX3VpbnQzMiAgcmFuZ2VGaW5h
bDsKIH07CiAKQEAgLTExMywzMiArMTIzLDMyIEBAIHN0cnVjdCBPcHVzRW5jb2RlciB7CiAgICBt
aWRkbGUgKG1lbW9yaWxlc3MpIHRocmVzaG9sZC4gVGhlIHNlY29uZCBjb2x1bW4gaXMgdGhlIGh5
c3RlcmVzaXMKICAgIChkaWZmZXJlbmNlIHdpdGggdGhlIG1pZGRsZSkgKi8KIHN0YXRpYyBjb25z
dCBvcHVzX2ludDMyIG1vbm9fdm9pY2VfYmFuZHdpZHRoX3RocmVzaG9sZHNbOF0gPSB7Ci0gICAg
ICAgIDExMDAwLCAxMDAwLCAvKiBOQjwtPk1CICovCi0gICAgICAgIDE0MDAwLCAxMDAwLCAvKiBN
QjwtPldCICovCi0gICAgICAgIDE3MDAwLCAxMDAwLCAvKiBXQjwtPlNXQiAqLwotICAgICAgICAy
MTAwMCwgMjAwMCwgLyogU1dCPC0+RkIgKi8KKyAgICAgICAgMTAwMDAsIDEwMDAsIC8qIE5CPC0+
TUIgKi8KKyAgICAgICAgMTEwMDAsIDEwMDAsIC8qIE1CPC0+V0IgKi8KKyAgICAgICAgMTM1MDAs
IDEwMDAsIC8qIFdCPC0+U1dCICovCisgICAgICAgIDE0MDAwLCAyMDAwLCAvKiBTV0I8LT5GQiAq
LwogfTsKIHN0YXRpYyBjb25zdCBvcHVzX2ludDMyIG1vbm9fbXVzaWNfYmFuZHdpZHRoX3RocmVz
aG9sZHNbOF0gPSB7Ci0gICAgICAgIDEyMDAwLCAxMDAwLCAvKiBOQjwtPk1CICovCi0gICAgICAg
IDE1MDAwLCAxMDAwLCAvKiBNQjwtPldCICovCi0gICAgICAgIDE4MDAwLCAyMDAwLCAvKiBXQjwt
PlNXQiAqLwotICAgICAgICAyMjAwMCwgMjAwMCwgLyogU1dCPC0+RkIgKi8KKyAgICAgICAgMTAw
MDAsIDEwMDAsIC8qIE5CPC0+TUIgKi8KKyAgICAgICAgMTEwMDAsIDEwMDAsIC8qIE1CPC0+V0Ig
Ki8KKyAgICAgICAgMTM1MDAsIDEwMDAsIC8qIFdCPC0+U1dCICovCisgICAgICAgIDE0MDAwLCAy
MDAwLCAvKiBTV0I8LT5GQiAqLwogfTsKIHN0YXRpYyBjb25zdCBvcHVzX2ludDMyIHN0ZXJlb192
b2ljZV9iYW5kd2lkdGhfdGhyZXNob2xkc1s4XSA9IHsKLSAgICAgICAgMTEwMDAsIDEwMDAsIC8q
IE5CPC0+TUIgKi8KLSAgICAgICAgMTQwMDAsIDEwMDAsIC8qIE1CPC0+V0IgKi8KLSAgICAgICAg
MjEwMDAsIDIwMDAsIC8qIFdCPC0+U1dCICovCi0gICAgICAgIDI4MDAwLCAyMDAwLCAvKiBTV0I8
LT5GQiAqLworICAgICAgICAxMDAwMCwgMTAwMCwgLyogTkI8LT5NQiAqLworICAgICAgICAxMTAw
MCwgMTAwMCwgLyogTUI8LT5XQiAqLworICAgICAgICAxMzUwMCwgMTAwMCwgLyogV0I8LT5TV0Ig
Ki8KKyAgICAgICAgMTQwMDAsIDIwMDAsIC8qIFNXQjwtPkZCICovCiB9Owogc3RhdGljIGNvbnN0
IG9wdXNfaW50MzIgc3RlcmVvX211c2ljX2JhbmR3aWR0aF90aHJlc2hvbGRzWzhdID0gewotICAg
ICAgICAxMjAwMCwgMTAwMCwgLyogTkI8LT5NQiAqLwotICAgICAgICAxODAwMCwgMjAwMCwgLyog
TUI8LT5XQiAqLwotICAgICAgICAyMTAwMCwgMjAwMCwgLyogV0I8LT5TV0IgKi8KLSAgICAgICAg
MzAwMDAsIDIwMDAsIC8qIFNXQjwtPkZCICovCisgICAgICAgIDEwMDAwLCAxMDAwLCAvKiBOQjwt
Pk1CICovCisgICAgICAgIDExMDAwLCAxMDAwLCAvKiBNQjwtPldCICovCisgICAgICAgIDEzNTAw
LCAxMDAwLCAvKiBXQjwtPlNXQiAqLworICAgICAgICAxNDAwMCwgMjAwMCwgLyogU1dCPC0+RkIg
Ki8KIH07CiAvKiBUaHJlc2hvbGQgYml0LXJhdGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBtb25v
IGFuZCBzdGVyZW8gKi8KLXN0YXRpYyBjb25zdCBvcHVzX2ludDMyIHN0ZXJlb192b2ljZV90aHJl
c2hvbGQgPSAzMDAwMDsKLXN0YXRpYyBjb25zdCBvcHVzX2ludDMyIHN0ZXJlb19tdXNpY190aHJl
c2hvbGQgPSAzMDAwMDsKK3N0YXRpYyBjb25zdCBvcHVzX2ludDMyIHN0ZXJlb192b2ljZV90aHJl
c2hvbGQgPSAyNDAwMDsKK3N0YXRpYyBjb25zdCBvcHVzX2ludDMyIHN0ZXJlb19tdXNpY190aHJl
c2hvbGQgPSAyNDAwMDsKIAogLyogVGhyZXNob2xkIGJpdC1yYXRlIGZvciBzd2l0Y2hpbmcgYmV0
d2VlbiBTSUxLL2h5YnJpZCBhbmQgQ0VMVC1vbmx5ICovCiBzdGF0aWMgY29uc3Qgb3B1c19pbnQz
MiBtb2RlX3RocmVzaG9sZHNbMl1bMl0gPSB7CkBAIC0xNDcsNiArMTU3LDE0IEBAIHN0YXRpYyBj
b25zdCBvcHVzX2ludDMyIG1vZGVfdGhyZXNob2xkc1syXVsyXSA9IHsKICAgICAgIHsgIDM2MDAw
LCAgICAgIDE2MDAwfSwgLyogc3RlcmVvICovCiB9OwogCitzdGF0aWMgY29uc3Qgb3B1c19pbnQz
MiBmZWNfdGhyZXNob2xkc1tdID0geworICAgICAgICAxMjAwMCwgMTAwMCwgLyogTkIgKi8KKyAg
ICAgICAgMTQwMDAsIDEwMDAsIC8qIE1CICovCisgICAgICAgIDE2MDAwLCAxMDAwLCAvKiBXQiAq
LworICAgICAgICAyMDAwMCwgMTAwMCwgLyogU1dCICovCisgICAgICAgIDIyMDAwLCAxMDAwLCAv
KiBGQiAqLworfTsKKwogaW50IG9wdXNfZW5jb2Rlcl9nZXRfc2l6ZShpbnQgY2hhbm5lbHMpCiB7
CiAgICAgaW50IHNpbGtFbmNTaXplQnl0ZXMsIGNlbHRFbmNTaXplQnl0ZXM7CkBAIC0yNDUsNyAr
MjYzLDggQEAgaW50IG9wdXNfZW5jb2Rlcl9pbml0KE9wdXNFbmNvZGVyKiBzdCwgb3B1c19pbnQz
MiBGcywgaW50IGNoYW5uZWxzLCBpbnQgYXBwbGljYXQKICAgICBzdC0+YmFuZHdpZHRoID0gT1BV
U19CQU5EV0lEVEhfRlVMTEJBTkQ7CiAKICNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKLSAgICB0
b25hbGl0eV9hbmFseXNpc19pbml0KCZzdC0+YW5hbHlzaXMpOworICAgIHRvbmFsaXR5X2FuYWx5
c2lzX2luaXQoJnN0LT5hbmFseXNpcywgc3QtPkZzKTsKKyAgICBzdC0+YW5hbHlzaXMuYXBwbGlj
YXRpb24gPSBzdC0+YXBwbGljYXRpb247CiAjZW5kaWYKIAogICAgIHJldHVybiBPUFVTX09LOwpA
QCAtMzIzLDEwICszNDIsMTEgQEAgc3RhdGljIHZvaWQgc2lsa19iaXF1YWRfZmxvYXQoCiB9CiAj
ZW5kaWYKIAotc3RhdGljIHZvaWQgaHBfY3V0b2ZmKGNvbnN0IG9wdXNfdmFsMTYgKmluLCBvcHVz
X2ludDMyIGN1dG9mZl9Ieiwgb3B1c192YWwxNiAqb3V0LCBvcHVzX3ZhbDMyICpocF9tZW0sIGlu
dCBsZW4sIGludCBjaGFubmVscywgb3B1c19pbnQzMiBGcykKK3N0YXRpYyB2b2lkIGhwX2N1dG9m
Zihjb25zdCBvcHVzX3ZhbDE2ICppbiwgb3B1c19pbnQzMiBjdXRvZmZfSHosIG9wdXNfdmFsMTYg
Km91dCwgb3B1c192YWwzMiAqaHBfbWVtLCBpbnQgbGVuLCBpbnQgY2hhbm5lbHMsIG9wdXNfaW50
MzIgRnMsIGludCBhcmNoKQogewogICAgb3B1c19pbnQzMiBCX1EyOFsgMyBdLCBBX1EyOFsgMiBd
OwogICAgb3B1c19pbnQzMiBGY19RMTksIHJfUTI4LCByX1EyMjsKKyAgICh2b2lkKWFyY2g7CiAK
ICAgIHNpbGtfYXNzZXJ0KCBjdXRvZmZfSHogPD0gc2lsa19pbnQzMl9NQVggLyBTSUxLX0ZJWF9D
T05TVCggMS41ICogMy4xNDE1OSAvIDEwMDAsIDE5ICkgKTsKICAgIEZjX1ExOSA9IHNpbGtfRElW
MzJfMTYoIHNpbGtfU01VTEJCKCBTSUxLX0ZJWF9DT05TVCggMS41ICogMy4xNDE1OSAvIDEwMDAs
IDE5ICksIGN1dG9mZl9IeiApLCBGcy8xMDAwICk7CkBAIC0zNDYsOSArMzY2LDEwIEBAIHN0YXRp
YyB2b2lkIGhwX2N1dG9mZihjb25zdCBvcHVzX3ZhbDE2ICppbiwgb3B1c19pbnQzMiBjdXRvZmZf
SHosIG9wdXNfdmFsMTYgKm91CiAgICBBX1EyOFsgMSBdID0gc2lsa19TTVVMV1coIHJfUTIyLCBy
X1EyMiApOwogCiAjaWZkZWYgRklYRURfUE9JTlQKLSAgIHNpbGtfYmlxdWFkX2FsdCggaW4sIEJf
UTI4LCBBX1EyOCwgaHBfbWVtLCBvdXQsIGxlbiwgY2hhbm5lbHMgKTsKLSAgIGlmKCBjaGFubmVs
cyA9PSAyICkgewotICAgICAgIHNpbGtfYmlxdWFkX2FsdCggaW4rMSwgQl9RMjgsIEFfUTI4LCBo
cF9tZW0rMiwgb3V0KzEsIGxlbiwgY2hhbm5lbHMgKTsKKyAgIGlmKCBjaGFubmVscyA9PSAxICkg
eworICAgICAgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTEoIGluLCBCX1EyOCwgQV9RMjgsIGhwX21l
bSwgb3V0LCBsZW4gKTsKKyAgIH0gZWxzZSB7CisgICAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRl
MiggaW4sIEJfUTI4LCBBX1EyOCwgaHBfbWVtLCBvdXQsIGxlbiwgYXJjaCApOwogICAgfQogI2Vs
c2UKICAgIHNpbGtfYmlxdWFkX2Zsb2F0KCBpbiwgQl9RMjgsIEFfUTI4LCBocF9tZW0sIG91dCwg
bGVuLCBjaGFubmVscyApOwpAQCAtMzcxLDE0ICszOTIsMTQgQEAgc3RhdGljIHZvaWQgZGNfcmVq
ZWN0KGNvbnN0IG9wdXNfdmFsMTYgKmluLCBvcHVzX2ludDMyIGN1dG9mZl9Ieiwgb3B1c192YWwx
NiAqb3UKICAgICAgIGZvciAoaT0wO2k8bGVuO2krKykKICAgICAgIHsKICAgICAgICAgIG9wdXNf
dmFsMzIgeCwgdG1wLCB5OwotICAgICAgICAgeCA9IFNITDMyKEVYVEVORDMyKGluW2NoYW5uZWxz
KmkrY10pLCAxNSk7CisgICAgICAgICB4ID0gU0hMMzIoRVhURU5EMzIoaW5bY2hhbm5lbHMqaStj
XSksIDE0KTsKICAgICAgICAgIC8qIEZpcnN0IHN0YWdlICovCiAgICAgICAgICB0bXAgPSB4LWhw
X21lbVsyKmNdOwogICAgICAgICAgaHBfbWVtWzIqY10gPSBocF9tZW1bMipjXSArIFBTSFIzMih4
IC0gaHBfbWVtWzIqY10sIHNoaWZ0KTsKICAgICAgICAgIC8qIFNlY29uZCBzdGFnZSAqLwogICAg
ICAgICAgeSA9IHRtcCAtIGhwX21lbVsyKmMrMV07CiAgICAgICAgICBocF9tZW1bMipjKzFdID0g
aHBfbWVtWzIqYysxXSArIFBTSFIzMih0bXAgLSBocF9tZW1bMipjKzFdLCBzaGlmdCk7Ci0gICAg
ICAgICBvdXRbY2hhbm5lbHMqaStjXSA9IEVYVFJBQ1QxNihTQVRVUkFURShQU0hSMzIoeSwgMTUp
LCAzMjc2NykpOworICAgICAgICAgb3V0W2NoYW5uZWxzKmkrY10gPSBFWFRSQUNUMTYoU0FUVVJB
VEUoUFNIUjMyKHksIDE0KSwgMzI3NjcpKTsKICAgICAgIH0KICAgIH0KIH0KQEAgLTM4NiwyNCAr
NDA3LDU3IEBAIHN0YXRpYyB2b2lkIGRjX3JlamVjdChjb25zdCBvcHVzX3ZhbDE2ICppbiwgb3B1
c19pbnQzMiBjdXRvZmZfSHosIG9wdXNfdmFsMTYgKm91CiAjZWxzZQogc3RhdGljIHZvaWQgZGNf
cmVqZWN0KGNvbnN0IG9wdXNfdmFsMTYgKmluLCBvcHVzX2ludDMyIGN1dG9mZl9Ieiwgb3B1c192
YWwxNiAqb3V0LCBvcHVzX3ZhbDMyICpocF9tZW0sIGludCBsZW4sIGludCBjaGFubmVscywgb3B1
c19pbnQzMiBGcykKIHsKLSAgIGludCBjLCBpOwotICAgZmxvYXQgY29lZjsKLQorICAgaW50IGk7
CisgICBmbG9hdCBjb2VmLCBjb2VmMjsKICAgIGNvZWYgPSA0LjBmKmN1dG9mZl9Iei9GczsKLSAg
IGZvciAoYz0wO2M8Y2hhbm5lbHM7YysrKQorICAgY29lZjIgPSAxLWNvZWY7CisgICBpZiAoY2hh
bm5lbHM9PTIpCiAgICB7CisgICAgICBmbG9hdCBtMCwgbTEsIG0yLCBtMzsKKyAgICAgIG0wID0g
aHBfbWVtWzBdOworICAgICAgbTEgPSBocF9tZW1bMV07CisgICAgICBtMiA9IGhwX21lbVsyXTsK
KyAgICAgIG0zID0gaHBfbWVtWzNdOworICAgICAgZm9yIChpPTA7aTxsZW47aSsrKQorICAgICAg
eworICAgICAgICAgb3B1c192YWwzMiB4MCwgeDEsIHRtcDAsIHRtcDEsIG91dDAsIG91dDE7Cisg
ICAgICAgICB4MCA9IGluWzIqaSswXTsKKyAgICAgICAgIHgxID0gaW5bMippKzFdOworICAgICAg
ICAgLyogRmlyc3Qgc3RhZ2UgKi8KKyAgICAgICAgIHRtcDAgPSB4MC1tMDsKKyAgICAgICAgIHRt
cDEgPSB4MS1tMjsKKyAgICAgICAgIG0wID0gY29lZip4MCArIFZFUllfU01BTEwgKyBjb2VmMipt
MDsKKyAgICAgICAgIG0yID0gY29lZip4MSArIFZFUllfU01BTEwgKyBjb2VmMiptMjsKKyAgICAg
ICAgIC8qIFNlY29uZCBzdGFnZSAqLworICAgICAgICAgb3V0MCA9IHRtcDAgLSBtMTsKKyAgICAg
ICAgIG91dDEgPSB0bXAxIC0gbTM7CisgICAgICAgICBtMSA9IGNvZWYqdG1wMCArIFZFUllfU01B
TEwgKyBjb2VmMiptMTsKKyAgICAgICAgIG0zID0gY29lZip0bXAxICsgVkVSWV9TTUFMTCArIGNv
ZWYyKm0zOworICAgICAgICAgb3V0WzIqaSswXSA9IG91dDA7CisgICAgICAgICBvdXRbMippKzFd
ID0gb3V0MTsKKyAgICAgIH0KKyAgICAgIGhwX21lbVswXSA9IG0wOworICAgICAgaHBfbWVtWzFd
ID0gbTE7CisgICAgICBocF9tZW1bMl0gPSBtMjsKKyAgICAgIGhwX21lbVszXSA9IG0zOworICAg
fSBlbHNlIHsKKyAgICAgIGZsb2F0IG0wLCBtMTsKKyAgICAgIG0wID0gaHBfbWVtWzBdOworICAg
ICAgbTEgPSBocF9tZW1bMV07CiAgICAgICBmb3IgKGk9MDtpPGxlbjtpKyspCiAgICAgICB7CiAg
ICAgICAgICBvcHVzX3ZhbDMyIHgsIHRtcCwgeTsKLSAgICAgICAgIHggPSBpbltjaGFubmVscypp
K2NdOworICAgICAgICAgeCA9IGluW2ldOwogICAgICAgICAgLyogRmlyc3Qgc3RhZ2UgKi8KLSAg
ICAgICAgIHRtcCA9IHgtaHBfbWVtWzIqY107Ci0gICAgICAgICBocF9tZW1bMipjXSA9IGhwX21l
bVsyKmNdICsgY29lZiooeCAtIGhwX21lbVsyKmNdKSArIFZFUllfU01BTEw7CisgICAgICAgICB0
bXAgPSB4LW0wOworICAgICAgICAgbTAgPSBjb2VmKnggKyBWRVJZX1NNQUxMICsgY29lZjIqbTA7
CiAgICAgICAgICAvKiBTZWNvbmQgc3RhZ2UgKi8KLSAgICAgICAgIHkgPSB0bXAgLSBocF9tZW1b
MipjKzFdOwotICAgICAgICAgaHBfbWVtWzIqYysxXSA9IGhwX21lbVsyKmMrMV0gKyBjb2VmKih0
bXAgLSBocF9tZW1bMipjKzFdKSArIFZFUllfU01BTEw7Ci0gICAgICAgICBvdXRbY2hhbm5lbHMq
aStjXSA9IHk7CisgICAgICAgICB5ID0gdG1wIC0gbTE7CisgICAgICAgICBtMSA9IGNvZWYqdG1w
ICsgVkVSWV9TTUFMTCArIGNvZWYyKm0xOworICAgICAgICAgb3V0W2ldID0geTsKICAgICAgIH0K
KyAgICAgIGhwX21lbVswXSA9IG0wOworICAgICAgaHBfbWVtWzFdID0gbTE7CiAgICB9CiB9CiAj
ZW5kaWYKQEAgLTUyMCwyODggKzU3NCw1OCBAQCBzdGF0aWMgb3B1c19pbnQzMiB1c2VyX2JpdHJh
dGVfdG9fYml0cmF0ZShPcHVzRW5jb2RlciAqc3QsIGludCBmcmFtZV9zaXplLCBpbnQgbQogICAg
IHJldHVybiBzdC0+dXNlcl9iaXRyYXRlX2JwczsKIH0KIAotI2lmbmRlZiBESVNBQkxFX0ZMT0FU
X0FQSQotLyogRG9uJ3QgdXNlIG1vcmUgdGhhbiA2MCBtcyBmb3IgdGhlIGZyYW1lIHNpemUgYW5h
bHlzaXMgKi8KLSNkZWZpbmUgTUFYX0RZTkFNSUNfRlJBTUVTSVpFIDI0Ci0vKiBFc3RpbWF0ZXMg
aG93IG11Y2ggdGhlIGJpdHJhdGUgd2lsbCBiZSBib29zdGVkIGJhc2VkIG9uIHRoZSBzdWItZnJh
bWUgZW5lcmd5ICovCi1zdGF0aWMgZmxvYXQgdHJhbnNpZW50X2Jvb3N0KGNvbnN0IGZsb2F0ICpF
LCBjb25zdCBmbG9hdCAqRV8xLCBpbnQgTE0sIGludCBtYXhNKQotewotICAgaW50IGk7Ci0gICBp
bnQgTTsKLSAgIGZsb2F0IHN1bUU9MCwgc3VtRV8xPTA7Ci0gICBmbG9hdCBtZXRyaWM7Ci0KLSAg
IE0gPSBJTUlOKG1heE0sICgxPDxMTSkrMSk7Ci0gICBmb3IgKGk9MDtpPE07aSsrKQotICAgewot
ICAgICAgc3VtRSArPSBFW2ldOwotICAgICAgc3VtRV8xICs9IEVfMVtpXTsKLSAgIH0KLSAgIG1l
dHJpYyA9IHN1bUUqc3VtRV8xLyhNKk0pOwotICAgLyppZiAoTE09PTMpCi0gICAgICBwcmludGYo
IiVmXG4iLCBtZXRyaWMpOyovCi0gICAvKnJldHVybiBtZXRyaWM+MTAgPyAxIDogMDsqLwotICAg
LypyZXR1cm4gTUFYMTYoMCwxLWV4cCgtLjI1KihtZXRyaWMtMi4pKSk7Ki8KLSAgIHJldHVybiBN
SU4xNigxLChmbG9hdClzcXJ0KE1BWDE2KDAsLjA1ZioobWV0cmljLTIpKSkpOwotfQotCi0vKiBW
aXRlcmJpIGRlY29kaW5nIHRyeWluZyB0byBmaW5kIHRoZSBiZXN0IGZyYW1lIHNpemUgY29tYmlu
YXRpb24gdXNpbmcgbG9vay1haGVhZAotCi0gICBTdGF0ZSBudW1iZXJpbmc6Ci0gICAgMDogdW51
c2VkCi0gICAgMTogIDIuNSBtcwotICAgIDI6ICA1IG1zICgjMSkKLSAgICAzOiAgNSBtcyAoIzIp
Ci0gICAgNDogMTAgbXMgKCMxKQotICAgIDU6IDEwIG1zICgjMikKLSAgICA2OiAxMCBtcyAoIzMp
Ci0gICAgNzogMTAgbXMgKCM0KQotICAgIDg6IDIwIG1zICgjMSkKLSAgICA5OiAyMCBtcyAoIzIp
Ci0gICAxMDogMjAgbXMgKCMzKQotICAgMTE6IDIwIG1zICgjNCkKLSAgIDEyOiAyMCBtcyAoIzUp
Ci0gICAxMzogMjAgbXMgKCM2KQotICAgMTQ6IDIwIG1zICgjNykKLSAgIDE1OiAyMCBtcyAoIzgp
Ci0qLwotc3RhdGljIGludCB0cmFuc2llbnRfdml0ZXJiaShjb25zdCBmbG9hdCAqRSwgY29uc3Qg
ZmxvYXQgKkVfMSwgaW50IE4sIGludCBmcmFtZV9jb3N0LCBpbnQgcmF0ZSkKLXsKLSAgIGludCBp
OwotICAgZmxvYXQgY29zdFtNQVhfRFlOQU1JQ19GUkFNRVNJWkVdWzE2XTsKLSAgIGludCBzdGF0
ZXNbTUFYX0RZTkFNSUNfRlJBTUVTSVpFXVsxNl07Ci0gICBmbG9hdCBiZXN0X2Nvc3Q7Ci0gICBp
bnQgYmVzdF9zdGF0ZTsKLSAgIGZsb2F0IGZhY3RvcjsKLSAgIC8qIFRha2UgaW50byBhY2NvdW50
IHRoYXQgd2UgZGFtcCBWQlIgaW4gdGhlIDMyIGtiL3MgdG8gNjQga2IvcyByYW5nZS4gKi8KLSAg
IGlmIChyYXRlPDgwKQotICAgICAgZmFjdG9yPTA7Ci0gICBlbHNlIGlmIChyYXRlPjE2MCkKLSAg
ICAgIGZhY3Rvcj0xOwotICAgZWxzZQotICAgICAgZmFjdG9yID0gKHJhdGUtODAuZikvODAuZjsK
LSAgIC8qIE1ha2VzIHZhcmlhYmxlIGZyYW1lc2l6ZSBsZXNzIGFnZ3Jlc3NpdmUgYXQgbG93ZXIg
Yml0cmF0ZXMsIGJ1dCBJIGNhbid0Ci0gICAgICBmaW5kIGFueSB2YWxpZCB0aGVvcmV0aWNhbCBq
dXN0aWZpY2F0aW9uIGZvciB0aGlzIChvdGhlciB0aGFuIGl0IHNlZW1zCi0gICAgICB0byBoZWxw
KSAqLwotICAgZm9yIChpPTA7aTwxNjtpKyspCi0gICB7Ci0gICAgICAvKiBJbXBvc3NpYmxlIHN0
YXRlICovCi0gICAgICBzdGF0ZXNbMF1baV0gPSAtMTsKLSAgICAgIGNvc3RbMF1baV0gPSAxZTEw
OwotICAgfQotICAgZm9yIChpPTA7aTw0O2krKykKLSAgIHsKLSAgICAgIGNvc3RbMF1bMTw8aV0g
PSAoZnJhbWVfY29zdCArIHJhdGUqKDE8PGkpKSooMStmYWN0b3IqdHJhbnNpZW50X2Jvb3N0KEUs
IEVfMSwgaSwgTisxKSk7Ci0gICAgICBzdGF0ZXNbMF1bMTw8aV0gPSBpOwotICAgfQotICAgZm9y
IChpPTE7aTxOO2krKykKLSAgIHsKLSAgICAgIGludCBqOwotCi0gICAgICAvKiBGb2xsb3cgY29u
dGludWF0aW9ucyAqLwotICAgICAgZm9yIChqPTI7ajwxNjtqKyspCi0gICAgICB7Ci0gICAgICAg
ICBjb3N0W2ldW2pdID0gY29zdFtpLTFdW2otMV07Ci0gICAgICAgICBzdGF0ZXNbaV1bal0gPSBq
LTE7Ci0gICAgICB9Ci0KLSAgICAgIC8qIE5ldyBmcmFtZXMgKi8KLSAgICAgIGZvcihqPTA7ajw0
O2orKykKLSAgICAgIHsKLSAgICAgICAgIGludCBrOwotICAgICAgICAgZmxvYXQgbWluX2Nvc3Q7
Ci0gICAgICAgICBmbG9hdCBjdXJyX2Nvc3Q7Ci0gICAgICAgICBzdGF0ZXNbaV1bMTw8al0gPSAx
OwotICAgICAgICAgbWluX2Nvc3QgPSBjb3N0W2ktMV1bMV07Ci0gICAgICAgICBmb3Ioaz0xO2s8
NDtrKyspCi0gICAgICAgICB7Ci0gICAgICAgICAgICBmbG9hdCB0bXAgPSBjb3N0W2ktMV1bKDE8
PChrKzEpKS0xXTsKLSAgICAgICAgICAgIGlmICh0bXAgPCBtaW5fY29zdCkKLSAgICAgICAgICAg
IHsKLSAgICAgICAgICAgICAgIHN0YXRlc1tpXVsxPDxqXSA9ICgxPDwoaysxKSktMTsKLSAgICAg
ICAgICAgICAgIG1pbl9jb3N0ID0gdG1wOwotICAgICAgICAgICAgfQotICAgICAgICAgfQotICAg
ICAgICAgY3Vycl9jb3N0ID0gKGZyYW1lX2Nvc3QgKyByYXRlKigxPDxqKSkqKDErZmFjdG9yKnRy
YW5zaWVudF9ib29zdChFK2ksIEVfMStpLCBqLCBOLWkrMSkpOwotICAgICAgICAgY29zdFtpXVsx
PDxqXSA9IG1pbl9jb3N0OwotICAgICAgICAgLyogSWYgcGFydCBvZiB0aGUgZnJhbWUgaXMgb3V0
c2lkZSB0aGUgYW5hbHlzaXMgd2luZG93LCBvbmx5IGNvdW50IHBhcnQgb2YgdGhlIGNvc3QgKi8K
LSAgICAgICAgIGlmIChOLWkgPCAoMTw8aikpCi0gICAgICAgICAgICBjb3N0W2ldWzE8PGpdICs9
IGN1cnJfY29zdCooZmxvYXQpKE4taSkvKDE8PGopOwotICAgICAgICAgZWxzZQotICAgICAgICAg
ICAgY29zdFtpXVsxPDxqXSArPSBjdXJyX2Nvc3Q7Ci0gICAgICB9Ci0gICB9Ci0KLSAgIGJlc3Rf
c3RhdGU9MTsKLSAgIGJlc3RfY29zdCA9IGNvc3RbTi0xXVsxXTsKLSAgIC8qIEZpbmQgYmVzdCBl
bmQgc3RhdGUgKGRvZXNuJ3QgZm9yY2UgYSBmcmFtZSB0byBlbmQgYXQgTi0xKSAqLwotICAgZm9y
IChpPTI7aTwxNjtpKyspCi0gICB7Ci0gICAgICBpZiAoY29zdFtOLTFdW2ldPGJlc3RfY29zdCkK
LSAgICAgIHsKLSAgICAgICAgIGJlc3RfY29zdCA9IGNvc3RbTi0xXVtpXTsKLSAgICAgICAgIGJl
c3Rfc3RhdGUgPSBpOwotICAgICAgfQotICAgfQotCi0gICAvKiBGb2xsb3cgdHJhbnNpdGlvbnMg
YmFjayAqLwotICAgZm9yIChpPU4tMTtpPj0wO2ktLSkKLSAgIHsKLSAgICAgIC8qcHJpbnRmKCIl
ZCAiLCBiZXN0X3N0YXRlKTsqLwotICAgICAgYmVzdF9zdGF0ZSA9IHN0YXRlc1tpXVtiZXN0X3N0
YXRlXTsKLSAgIH0KLSAgIC8qcHJpbnRmKCIlZFxuIiwgYmVzdF9zdGF0ZSk7Ki8KLSAgIHJldHVy
biBiZXN0X3N0YXRlOwotfQotCi1zdGF0aWMgaW50IG9wdGltaXplX2ZyYW1lc2l6ZShjb25zdCB2
b2lkICp4LCBpbnQgbGVuLCBpbnQgQywgb3B1c19pbnQzMiBGcywKLSAgICAgICAgICAgICAgICBp
bnQgYml0cmF0ZSwgb3B1c192YWwxNiB0b25hbGl0eSwgZmxvYXQgKm1lbSwgaW50IGJ1ZmZlcmlu
ZywKLSAgICAgICAgICAgICAgICBkb3dubWl4X2Z1bmMgZG93bm1peCkKLXsKLSAgIGludCBOOwot
ICAgaW50IGk7Ci0gICBmbG9hdCBlW01BWF9EWU5BTUlDX0ZSQU1FU0laRSs0XTsKLSAgIGZsb2F0
IGVfMVtNQVhfRFlOQU1JQ19GUkFNRVNJWkUrM107Ci0gICBvcHVzX3ZhbDMyIG1lbXg7Ci0gICBp
bnQgYmVzdExNPTA7Ci0gICBpbnQgc3ViZnJhbWU7Ci0gICBpbnQgcG9zOwotICAgaW50IG9mZnNl
dDsKLSAgIFZBUkRFQ0wob3B1c192YWwzMiwgc3ViKTsKLQotICAgc3ViZnJhbWUgPSBGcy80MDA7
Ci0gICBBTExPQyhzdWIsIHN1YmZyYW1lLCBvcHVzX3ZhbDMyKTsKLSAgIGVbMF09bWVtWzBdOwot
ICAgZV8xWzBdPTEuZi8oRVBTSUxPTittZW1bMF0pOwotICAgaWYgKGJ1ZmZlcmluZykKLSAgIHsK
LSAgICAgIC8qIENvbnNpZGVyIHRoZSBDRUxUIGRlbGF5IHdoZW4gbm90IGluIHJlc3RyaWN0ZWQt
bG93ZGVsYXkgKi8KLSAgICAgIC8qIFdlIGFzc3VtZSB0aGUgYnVmZmVyaW5nIGlzIGJldHdlZW4g
Mi41IGFuZCA1IG1zICovCi0gICAgICBvZmZzZXQgPSAyKnN1YmZyYW1lIC0gYnVmZmVyaW5nOwot
ICAgICAgY2VsdF9hc3NlcnQob2Zmc2V0Pj0wICYmIG9mZnNldCA8PSBzdWJmcmFtZSk7Ci0gICAg
ICBsZW4gLT0gb2Zmc2V0OwotICAgICAgZVsxXT1tZW1bMV07Ci0gICAgICBlXzFbMV09MS5mLyhF
UFNJTE9OK21lbVsxXSk7Ci0gICAgICBlWzJdPW1lbVsyXTsKLSAgICAgIGVfMVsyXT0xLmYvKEVQ
U0lMT04rbWVtWzJdKTsKLSAgICAgIHBvcyA9IDM7Ci0gICB9IGVsc2UgewotICAgICAgcG9zPTE7
Ci0gICAgICBvZmZzZXQ9MDsKLSAgIH0KLSAgIE49SU1JTihsZW4vc3ViZnJhbWUsIE1BWF9EWU5B
TUlDX0ZSQU1FU0laRSk7Ci0gICAvKiBKdXN0IHNpbGVuY2luZyBhIHdhcm5pbmcsIGl0J3MgcmVh
bGx5IGluaXRpYWxpemVkIGxhdGVyICovCi0gICBtZW14ID0gMDsKLSAgIGZvciAoaT0wO2k8Tjtp
KyspCi0gICB7Ci0gICAgICBmbG9hdCB0bXA7Ci0gICAgICBvcHVzX3ZhbDMyIHRtcHg7Ci0gICAg
ICBpbnQgajsKLSAgICAgIHRtcD1FUFNJTE9OOwotCi0gICAgICBkb3dubWl4KHgsIHN1Yiwgc3Vi
ZnJhbWUsIGkqc3ViZnJhbWUrb2Zmc2V0LCAwLCAtMiwgQyk7Ci0gICAgICBpZiAoaT09MCkKLSAg
ICAgICAgIG1lbXggPSBzdWJbMF07Ci0gICAgICBmb3IgKGo9MDtqPHN1YmZyYW1lO2orKykKLSAg
ICAgIHsKLSAgICAgICAgIHRtcHggPSBzdWJbal07Ci0gICAgICAgICB0bXAgKz0gKHRtcHgtbWVt
eCkqKGZsb2F0KSh0bXB4LW1lbXgpOwotICAgICAgICAgbWVteCA9IHRtcHg7Ci0gICAgICB9Ci0g
ICAgICBlW2krcG9zXSA9IHRtcDsKLSAgICAgIGVfMVtpK3Bvc10gPSAxLmYvdG1wOwotICAgfQot
ICAgLyogSGFjayB0byBnZXQgMjAgbXMgd29ya2luZyB3aXRoIEFQUExJQ0FUSU9OX0FVRElPCi0g
ICAgICBUaGUgcmVhbCBwcm9ibGVtIGlzIHRoYXQgdGhlIGNvcnJlc3BvbmRpbmcgbWVtb3J5IG5l
ZWRzIHRvIHVzZSAxLjUgbXMKLSAgICAgIGZyb20gdGhpcyBmcmFtZSBhbmQgMSBtcyBmcm9tIHRo
ZSBuZXh0IGZyYW1lICovCi0gICBlW2krcG9zXSA9IGVbaStwb3MtMV07Ci0gICBpZiAoYnVmZmVy
aW5nKQotICAgICAgTj1JTUlOKE1BWF9EWU5BTUlDX0ZSQU1FU0laRSwgTisyKTsKLSAgIGJlc3RM
TSA9IHRyYW5zaWVudF92aXRlcmJpKGUsIGVfMSwgTiwgKGludCkoKDEuZisuNWYqdG9uYWxpdHkp
Kig2MCpDKzQwKSksIGJpdHJhdGUvNDAwKTsKLSAgIG1lbVswXSA9IGVbMTw8YmVzdExNXTsKLSAg
IGlmIChidWZmZXJpbmcpCi0gICB7Ci0gICAgICBtZW1bMV0gPSBlWygxPDxiZXN0TE0pKzFdOwot
ICAgICAgbWVtWzJdID0gZVsoMTw8YmVzdExNKSsyXTsKLSAgIH0KLSAgIHJldHVybiBiZXN0TE07
Ci19Ci0KLSNlbmRpZgotCiAjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCiAjaWZkZWYgRklYRURf
UE9JTlQKICNkZWZpbmUgUENNMlZBTCh4KSBGTE9BVDJJTlQxNih4KQogI2Vsc2UKICNkZWZpbmUg
UENNMlZBTCh4KSBTQ0FMRUlOKHgpCiAjZW5kaWYKLXZvaWQgZG93bm1peF9mbG9hdChjb25zdCB2
b2lkICpfeCwgb3B1c192YWwzMiAqc3ViLCBpbnQgc3ViZnJhbWUsIGludCBvZmZzZXQsIGludCBj
MSwgaW50IGMyLCBpbnQgQykKKwordm9pZCBkb3dubWl4X2Zsb2F0KGNvbnN0IHZvaWQgKl94LCBv
cHVzX3ZhbDMyICp5LCBpbnQgc3ViZnJhbWUsIGludCBvZmZzZXQsIGludCBjMSwgaW50IGMyLCBp
bnQgQykKIHsKICAgIGNvbnN0IGZsb2F0ICp4OwotICAgb3B1c192YWwzMiBzY2FsZTsKICAgIGlu
dCBqOworCiAgICB4ID0gKGNvbnN0IGZsb2F0ICopX3g7CiAgICBmb3IgKGo9MDtqPHN1YmZyYW1l
O2orKykKLSAgICAgIHN1YltqXSA9IFBDTTJWQUwoeFsoaitvZmZzZXQpKkMrYzFdKTsKKyAgICAg
IHlbal0gPSBQQ00yVkFMKHhbKGorb2Zmc2V0KSpDK2MxXSk7CiAgICBpZiAoYzI+LTEpCiAgICB7
CiAgICAgICBmb3IgKGo9MDtqPHN1YmZyYW1lO2orKykKLSAgICAgICAgIHN1YltqXSArPSBQQ00y
VkFMKHhbKGorb2Zmc2V0KSpDK2MyXSk7CisgICAgICAgICB5W2pdICs9IFBDTTJWQUwoeFsoaitv
ZmZzZXQpKkMrYzJdKTsKICAgIH0gZWxzZSBpZiAoYzI9PS0yKQogICAgewogICAgICAgaW50IGM7
CiAgICAgICBmb3IgKGM9MTtjPEM7YysrKQogICAgICAgewogICAgICAgICAgZm9yIChqPTA7ajxz
dWJmcmFtZTtqKyspCi0gICAgICAgICAgICBzdWJbal0gKz0gUENNMlZBTCh4WyhqK29mZnNldCkq
QytjXSk7CisgICAgICAgICAgICB5W2pdICs9IFBDTTJWQUwoeFsoaitvZmZzZXQpKkMrY10pOwog
ICAgICAgfQogICAgfQotI2lmZGVmIEZJWEVEX1BPSU5UCi0gICBzY2FsZSA9ICgxPDxTSUdfU0hJ
RlQpOwotI2Vsc2UKLSAgIHNjYWxlID0gMS5mOwotI2VuZGlmCi0gICBpZiAoQz09LTIpCi0gICAg
ICBzY2FsZSAvPSBDOwotICAgZWxzZQotICAgICAgc2NhbGUgLz0gMjsKLSAgIGZvciAoaj0wO2o8
c3ViZnJhbWU7aisrKQotICAgICAgc3ViW2pdICo9IHNjYWxlOwogfQogI2VuZGlmCiAKLXZvaWQg
ZG93bm1peF9pbnQoY29uc3Qgdm9pZCAqX3gsIG9wdXNfdmFsMzIgKnN1YiwgaW50IHN1YmZyYW1l
LCBpbnQgb2Zmc2V0LCBpbnQgYzEsIGludCBjMiwgaW50IEMpCit2b2lkIGRvd25taXhfaW50KGNv
bnN0IHZvaWQgKl94LCBvcHVzX3ZhbDMyICp5LCBpbnQgc3ViZnJhbWUsIGludCBvZmZzZXQsIGlu
dCBjMSwgaW50IGMyLCBpbnQgQykKIHsKICAgIGNvbnN0IG9wdXNfaW50MTYgKng7Ci0gICBvcHVz
X3ZhbDMyIHNjYWxlOwogICAgaW50IGo7CisKICAgIHggPSAoY29uc3Qgb3B1c19pbnQxNiAqKV94
OwogICAgZm9yIChqPTA7ajxzdWJmcmFtZTtqKyspCi0gICAgICBzdWJbal0gPSB4WyhqK29mZnNl
dCkqQytjMV07CisgICAgICB5W2pdID0geFsoaitvZmZzZXQpKkMrYzFdOwogICAgaWYgKGMyPi0x
KQogICAgewogICAgICAgZm9yIChqPTA7ajxzdWJmcmFtZTtqKyspCi0gICAgICAgICBzdWJbal0g
Kz0geFsoaitvZmZzZXQpKkMrYzJdOworICAgICAgICAgeVtqXSArPSB4WyhqK29mZnNldCkqQytj
Ml07CiAgICB9IGVsc2UgaWYgKGMyPT0tMikKICAgIHsKICAgICAgIGludCBjOwogICAgICAgZm9y
IChjPTE7YzxDO2MrKykKICAgICAgIHsKICAgICAgICAgIGZvciAoaj0wO2o8c3ViZnJhbWU7aisr
KQotICAgICAgICAgICAgc3ViW2pdICs9IHhbKGorb2Zmc2V0KSpDK2NdOworICAgICAgICAgICAg
eVtqXSArPSB4WyhqK29mZnNldCkqQytjXTsKICAgICAgIH0KICAgIH0KLSNpZmRlZiBGSVhFRF9Q
T0lOVAotICAgc2NhbGUgPSAoMTw8U0lHX1NISUZUKTsKLSNlbHNlCi0gICBzY2FsZSA9IDEuZi8z
Mjc2ODsKLSNlbmRpZgotICAgaWYgKEM9PS0yKQotICAgICAgc2NhbGUgLz0gQzsKLSAgIGVsc2UK
LSAgICAgIHNjYWxlIC89IDI7Ci0gICBmb3IgKGo9MDtqPHN1YmZyYW1lO2orKykKLSAgICAgIHN1
YltqXSAqPSBzY2FsZTsKIH0KIAogb3B1c19pbnQzMiBmcmFtZV9zaXplX3NlbGVjdChvcHVzX2lu
dDMyIGZyYW1lX3NpemUsIGludCB2YXJpYWJsZV9kdXJhdGlvbiwgb3B1c19pbnQzMiBGcykKQEAg
LTgxMSw1MyArNjM1LDI0IEBAIG9wdXNfaW50MzIgZnJhbWVfc2l6ZV9zZWxlY3Qob3B1c19pbnQz
MiBmcmFtZV9zaXplLCBpbnQgdmFyaWFibGVfZHVyYXRpb24sIG9wdXNfCiAgICAgICByZXR1cm4g
LTE7CiAgICBpZiAodmFyaWFibGVfZHVyYXRpb24gPT0gT1BVU19GUkFNRVNJWkVfQVJHKQogICAg
ICAgbmV3X3NpemUgPSBmcmFtZV9zaXplOwotICAgZWxzZSBpZiAodmFyaWFibGVfZHVyYXRpb24g
PT0gT1BVU19GUkFNRVNJWkVfVkFSSUFCTEUpCi0gICAgICBuZXdfc2l6ZSA9IEZzLzUwOwotICAg
ZWxzZSBpZiAodmFyaWFibGVfZHVyYXRpb24gPj0gT1BVU19GUkFNRVNJWkVfMl81X01TICYmIHZh
cmlhYmxlX2R1cmF0aW9uIDw9IE9QVVNfRlJBTUVTSVpFXzYwX01TKQotICAgICAgbmV3X3NpemUg
PSBJTUlOKDMqRnMvNTAsIChGcy80MDApPDwodmFyaWFibGVfZHVyYXRpb24tT1BVU19GUkFNRVNJ
WkVfMl81X01TKSk7CisgICBlbHNlIGlmICh2YXJpYWJsZV9kdXJhdGlvbiA+PSBPUFVTX0ZSQU1F
U0laRV8yXzVfTVMgJiYgdmFyaWFibGVfZHVyYXRpb24gPD0gT1BVU19GUkFNRVNJWkVfMTIwX01T
KQorICAgeworICAgICAgaWYgKHZhcmlhYmxlX2R1cmF0aW9uIDw9IE9QVVNfRlJBTUVTSVpFXzQw
X01TKQorICAgICAgICAgbmV3X3NpemUgPSAoRnMvNDAwKTw8KHZhcmlhYmxlX2R1cmF0aW9uLU9Q
VVNfRlJBTUVTSVpFXzJfNV9NUyk7CisgICAgICBlbHNlCisgICAgICAgICBuZXdfc2l6ZSA9ICh2
YXJpYWJsZV9kdXJhdGlvbi1PUFVTX0ZSQU1FU0laRV8yXzVfTVMtMikqRnMvNTA7CisgICB9CiAg
ICBlbHNlCiAgICAgICByZXR1cm4gLTE7CiAgICBpZiAobmV3X3NpemU+ZnJhbWVfc2l6ZSkKICAg
ICAgIHJldHVybiAtMTsKLSAgIGlmICg0MDAqbmV3X3NpemUhPUZzICYmIDIwMCpuZXdfc2l6ZSE9
RnMgJiYgMTAwKm5ld19zaXplIT1GcyAmJgotICAgICAgICAgICAgNTAqbmV3X3NpemUhPUZzICYm
IDI1Km5ld19zaXplIT1GcyAmJiA1MCpuZXdfc2l6ZSE9MypGcykKKyAgIGlmICg0MDAqbmV3X3Np
emUhPUZzICAgJiYgMjAwKm5ld19zaXplIT1GcyAgICYmIDEwMCpuZXdfc2l6ZSE9RnMgICAmJgor
ICAgICAgICA1MCpuZXdfc2l6ZSE9RnMgICAmJiAgMjUqbmV3X3NpemUhPUZzICAgJiYgIDUwKm5l
d19zaXplIT0zKkZzICYmCisgICAgICAgIDUwKm5ld19zaXplIT00KkZzICYmICA1MCpuZXdfc2l6
ZSE9NSpGcyAmJiAgNTAqbmV3X3NpemUhPTYqRnMpCiAgICAgICByZXR1cm4gLTE7CiAgICByZXR1
cm4gbmV3X3NpemU7CiB9CiAKLW9wdXNfaW50MzIgY29tcHV0ZV9mcmFtZV9zaXplKGNvbnN0IHZv
aWQgKmFuYWx5c2lzX3BjbSwgaW50IGZyYW1lX3NpemUsCi0gICAgICBpbnQgdmFyaWFibGVfZHVy
YXRpb24sIGludCBDLCBvcHVzX2ludDMyIEZzLCBpbnQgYml0cmF0ZV9icHMsCi0gICAgICBpbnQg
ZGVsYXlfY29tcGVuc2F0aW9uLCBkb3dubWl4X2Z1bmMgZG93bm1peAotI2lmbmRlZiBESVNBQkxF
X0ZMT0FUX0FQSQotICAgICAgLCBmbG9hdCAqc3ViZnJhbWVfbWVtCi0jZW5kaWYKLSAgICAgICkK
LXsKLSNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKLSAgIGlmICh2YXJpYWJsZV9kdXJhdGlvbiA9
PSBPUFVTX0ZSQU1FU0laRV9WQVJJQUJMRSAmJiBmcmFtZV9zaXplID49IEZzLzIwMCkKLSAgIHsK
LSAgICAgIGludCBMTSA9IDM7Ci0gICAgICBMTSA9IG9wdGltaXplX2ZyYW1lc2l6ZShhbmFseXNp
c19wY20sIGZyYW1lX3NpemUsIEMsIEZzLCBiaXRyYXRlX2JwcywKLSAgICAgICAgICAgIDAsIHN1
YmZyYW1lX21lbSwgZGVsYXlfY29tcGVuc2F0aW9uLCBkb3dubWl4KTsKLSAgICAgIHdoaWxlICgo
RnMvNDAwPDxMTSk+ZnJhbWVfc2l6ZSkKLSAgICAgICAgIExNLS07Ci0gICAgICBmcmFtZV9zaXpl
ID0gKEZzLzQwMDw8TE0pOwotICAgfSBlbHNlCi0jZWxzZQotICAgKHZvaWQpYW5hbHlzaXNfcGNt
OwotICAgKHZvaWQpQzsKLSAgICh2b2lkKWJpdHJhdGVfYnBzOwotICAgKHZvaWQpZGVsYXlfY29t
cGVuc2F0aW9uOwotICAgKHZvaWQpZG93bm1peDsKLSNlbmRpZgotICAgewotICAgICAgZnJhbWVf
c2l6ZSA9IGZyYW1lX3NpemVfc2VsZWN0KGZyYW1lX3NpemUsIHZhcmlhYmxlX2R1cmF0aW9uLCBG
cyk7Ci0gICB9Ci0gICBpZiAoZnJhbWVfc2l6ZTwwKQotICAgICAgcmV0dXJuIC0xOwotICAgcmV0
dXJuIGZyYW1lX3NpemU7Ci19Ci0KIG9wdXNfdmFsMTYgY29tcHV0ZV9zdGVyZW9fd2lkdGgoY29u
c3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfc2l6ZSwgb3B1c19pbnQzMiBGcywgU3RlcmVv
V2lkdGhTdGF0ZSAqbWVtKQogewogICAgb3B1c192YWwzMiB4eCwgeHksIHl5OwpAQCAtOTM0LDYg
KzcyOSwzNDcgQEAgb3B1c192YWwxNiBjb21wdXRlX3N0ZXJlb193aWR0aChjb25zdCBvcHVzX3Zh
bDE2ICpwY20sIGludCBmcmFtZV9zaXplLCBvcHVzX2ludDMKICAgIHJldHVybiBFWFRSQUNUMTYo
TUlOMzIoUTE1T05FLCBNVUxUMTZfMTYoMjAsIG1lbS0+bWF4X2ZvbGxvd2VyKSkpOwogfQogCitz
dGF0aWMgaW50IGRlY2lkZV9mZWMoaW50IHVzZUluQmFuZEZFQywgaW50IFBhY2tldExvc3NfcGVy
YywgaW50IGxhc3RfZmVjLCBpbnQgbW9kZSwgaW50ICpiYW5kd2lkdGgsIG9wdXNfaW50MzIgcmF0
ZSkKK3sKKyAgIGludCBvcmlnX2JhbmR3aWR0aDsKKyAgIGlmICghdXNlSW5CYW5kRkVDIHx8IFBh
Y2tldExvc3NfcGVyYyA9PSAwIHx8IG1vZGUgPT0gTU9ERV9DRUxUX09OTFkpCisgICAgICByZXR1
cm4gMDsKKyAgIG9yaWdfYmFuZHdpZHRoID0gKmJhbmR3aWR0aDsKKyAgIGZvciAoOzspCisgICB7
CisgICAgICBvcHVzX2ludDMyIGh5c3RlcmVzaXM7CisgICAgICBvcHVzX2ludDMyIExCUlJfcmF0
ZV90aHJlc19icHM7CisgICAgICAvKiBDb21wdXRlIHRocmVzaG9sZCBmb3IgdXNpbmcgRkVDIGF0
IHRoZSBjdXJyZW50IGJhbmR3aWR0aCBzZXR0aW5nICovCisgICAgICBMQlJSX3JhdGVfdGhyZXNf
YnBzID0gZmVjX3RocmVzaG9sZHNbMiooKmJhbmR3aWR0aCAtIE9QVVNfQkFORFdJRFRIX05BUlJP
V0JBTkQpXTsKKyAgICAgIGh5c3RlcmVzaXMgPSBmZWNfdGhyZXNob2xkc1syKigqYmFuZHdpZHRo
IC0gT1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORCkgKyAxXTsKKyAgICAgIGlmIChsYXN0X2ZlYyA9
PSAxKSBMQlJSX3JhdGVfdGhyZXNfYnBzIC09IGh5c3RlcmVzaXM7CisgICAgICBpZiAobGFzdF9m
ZWMgPT0gMCkgTEJSUl9yYXRlX3RocmVzX2JwcyArPSBoeXN0ZXJlc2lzOworICAgICAgTEJSUl9y
YXRlX3RocmVzX2JwcyA9IHNpbGtfU01VTFdCKCBzaWxrX01VTCggTEJSUl9yYXRlX3RocmVzX2Jw
cywKKyAgICAgICAgICAgIDEyNSAtIHNpbGtfbWluKCBQYWNrZXRMb3NzX3BlcmMsIDI1ICkgKSwg
U0lMS19GSVhfQ09OU1QoIDAuMDEsIDE2ICkgKTsKKyAgICAgIC8qIElmIGxvc3MgPD0gNSUsIHdl
IGxvb2sgYXQgd2hldGhlciB3ZSBoYXZlIGVub3VnaCByYXRlIHRvIGVuYWJsZSBGRUMuCisgICAg
ICAgICBJZiBsb3NzID4gNSUsIHdlIGRlY3JlYXNlIHRoZSBiYW5kd2lkdGggdW50aWwgd2UgY2Fu
IGVuYWJsZSBGRUMuICovCisgICAgICBpZiAocmF0ZSA+IExCUlJfcmF0ZV90aHJlc19icHMpCisg
ICAgICAgICByZXR1cm4gMTsKKyAgICAgIGVsc2UgaWYgKFBhY2tldExvc3NfcGVyYyA8PSA1KQor
ICAgICAgICAgcmV0dXJuIDA7CisgICAgICBlbHNlIGlmICgqYmFuZHdpZHRoID4gT1BVU19CQU5E
V0lEVEhfTkFSUk9XQkFORCkKKyAgICAgICAgICgqYmFuZHdpZHRoKS0tOworICAgICAgZWxzZQor
ICAgICAgICAgYnJlYWs7CisgICB9CisgICAvKiBDb3VsZG4ndCBmaW5kIGFueSBiYW5kd2lkdGgg
dG8gZW5hYmxlIEZFQywga2VlcCBvcmlnaW5hbCBiYW5kd2lkdGguICovCisgICAqYmFuZHdpZHRo
ID0gb3JpZ19iYW5kd2lkdGg7CisgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludCBjb21wdXRl
X3NpbGtfcmF0ZV9mb3JfaHlicmlkKGludCByYXRlLCBpbnQgYmFuZHdpZHRoLCBpbnQgZnJhbWUy
MG1zLCBpbnQgdmJyLCBpbnQgZmVjKSB7CisgICBpbnQgZW50cnk7CisgICBpbnQgaTsKKyAgIGlu
dCBOOworICAgaW50IHNpbGtfcmF0ZTsKKyAgIHN0YXRpYyBpbnQgcmF0ZV90YWJsZVtdWzVdID0g
eworICAvKiAgfHRvdGFsfCB8LS0tLS0tLS0gU0lMSy0tLS0tLS0tLS0tLXwKKyAgICAgICAgICAg
ICAgfC0tIE5vIEZFQyAtfCB8LS0tIEZFQyAtLS18CisgICAgICAgICAgICAgICAxMG1zICAgMjBt
cyAgIDEwbXMgICAyMG1zICovCisgICAgICB7ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwfSwKKyAgICAgIHsxMjAwMCwgMTAwMDAsIDEwMDAwLCAxMTAwMCwgMTEwMDB9LAorICAgICAg
ezE2MDAwLCAxMzUwMCwgMTM1MDAsIDE1MDAwLCAxNTAwMH0sCisgICAgICB7MjAwMDAsIDE2MDAw
LCAxNjAwMCwgMTgwMDAsIDE4MDAwfSwKKyAgICAgIHsyNDAwMCwgMTgwMDAsIDE4MDAwLCAyMTAw
MCwgMjEwMDB9LAorICAgICAgezMyMDAwLCAyMjAwMCwgMjIwMDAsIDI4MDAwLCAyODAwMH0sCisg
ICAgICB7NjQwMDAsIDM4MDAwLCAzODAwMCwgNTAwMDAsIDUwMDAwfQorICAgfTsKKyAgIGVudHJ5
ID0gMSArIGZyYW1lMjBtcyArIDIqZmVjOworICAgTiA9IHNpemVvZihyYXRlX3RhYmxlKS9zaXpl
b2YocmF0ZV90YWJsZVswXSk7CisgICBmb3IgKGk9MTtpPE47aSsrKQorICAgeworICAgICAgaWYg
KHJhdGVfdGFibGVbaV1bMF0gPiByYXRlKSBicmVhazsKKyAgIH0KKyAgIGlmIChpID09IE4pCisg
ICB7CisgICAgICBzaWxrX3JhdGUgPSByYXRlX3RhYmxlW2ktMV1bZW50cnldOworICAgICAgLyog
Rm9yIG5vdywganVzdCBnaXZlIDUwJSBvZiB0aGUgZXh0cmEgYml0cyB0byBTSUxLLiAqLworICAg
ICAgc2lsa19yYXRlICs9IChyYXRlLXJhdGVfdGFibGVbaS0xXVswXSkvMjsKKyAgIH0gZWxzZSB7
CisgICAgICBvcHVzX2ludDMyIGxvLCBoaSwgeDAsIHgxOworICAgICAgbG8gPSByYXRlX3RhYmxl
W2ktMV1bZW50cnldOworICAgICAgaGkgPSByYXRlX3RhYmxlW2ldW2VudHJ5XTsKKyAgICAgIHgw
ID0gcmF0ZV90YWJsZVtpLTFdWzBdOworICAgICAgeDEgPSByYXRlX3RhYmxlW2ldWzBdOworICAg
ICAgc2lsa19yYXRlID0gKGxvKih4MS1yYXRlKSArIGhpKihyYXRlLXgwKSkvKHgxLXgwKTsKKyAg
IH0KKyAgIGlmICghdmJyKQorICAgeworICAgICAgLyogVGlueSBib29zdCB0byBTSUxLIGZvciBD
QlIuIFdlIHNob3VsZCBwcm9iYWJseSB0dW5lIHRoaXMgYmV0dGVyLiAqLworICAgICAgc2lsa19y
YXRlICs9IDEwMDsKKyAgIH0KKyAgIGlmIChiYW5kd2lkdGg9PU9QVVNfQkFORFdJRFRIX1NVUEVS
V0lERUJBTkQpCisgICAgICBzaWxrX3JhdGUgKz0gMzAwOworICAgcmV0dXJuIHNpbGtfcmF0ZTsK
K30KKworLyogUmV0dXJucyB0aGUgZXF1aXZhbGVudCBiaXRyYXRlIGNvcnJlc3BvbmRpbmcgdG8g
MjAgbXMgZnJhbWVzLAorICAgY29tcGxleGl0eSAxMCBWQlIgb3BlcmF0aW9uLiAqLworc3RhdGlj
IG9wdXNfaW50MzIgY29tcHV0ZV9lcXVpdl9yYXRlKG9wdXNfaW50MzIgYml0cmF0ZSwgaW50IGNo
YW5uZWxzLAorICAgICAgaW50IGZyYW1lX3JhdGUsIGludCB2YnIsIGludCBtb2RlLCBpbnQgY29t
cGxleGl0eSwgaW50IGxvc3MpCit7CisgICBvcHVzX2ludDMyIGVxdWl2OworICAgZXF1aXYgPSBi
aXRyYXRlOworICAgLyogVGFrZSBpbnRvIGFjY291bnQgb3ZlcmhlYWQgZnJvbSBzbWFsbGVyIGZy
YW1lcy4gKi8KKyAgIGVxdWl2IC09ICg0MCpjaGFubmVscysyMCkqKGZyYW1lX3JhdGUgLSA1MCk7
CisgICAvKiBDQlIgaXMgYWJvdXQgYSA4JSBwZW5hbHR5IGZvciBib3RoIFNJTEsgYW5kIENFTFQu
ICovCisgICBpZiAoIXZicikKKyAgICAgIGVxdWl2IC09IGVxdWl2LzEyOworICAgLyogQ29tcGxl
eGl0eSBtYWtlcyBhYm91dCAxMCUgZGlmZmVyZW5jZSAoZnJvbSAwIHRvIDEwKSBpbiBnZW5lcmFs
LiAqLworICAgZXF1aXYgPSBlcXVpdiAqICg5MCtjb21wbGV4aXR5KS8xMDA7CisgICBpZiAobW9k
ZSA9PSBNT0RFX1NJTEtfT05MWSB8fCBtb2RlID09IE1PREVfSFlCUklEKQorICAgeworICAgICAg
LyogU0lMSyBjb21wbGV4aXR5IDAtMSB1c2VzIHRoZSBub24tZGVsYXllZC1kZWNpc2lvbiBOU1Es
IHdoaWNoCisgICAgICAgICBjb3N0cyBhYm91dCAyMCUuICovCisgICAgICBpZiAoY29tcGxleGl0
eTwyKQorICAgICAgICAgZXF1aXYgPSBlcXVpdio0LzU7CisgICAgICBlcXVpdiAtPSBlcXVpdips
b3NzLyg2Kmxvc3MgKyAxMCk7CisgICB9IGVsc2UgaWYgKG1vZGUgPT0gTU9ERV9DRUxUX09OTFkp
IHsKKyAgICAgIC8qIENFTFQgY29tcGxleGl0eSAwLTQgZG9lc24ndCBoYXZlIHRoZSBwaXRjaCBm
aWx0ZXIsIHdoaWNoIGNvc3RzCisgICAgICAgICBhYm91dCAxMCUuICovCisgICAgICBpZiAoY29t
cGxleGl0eTw1KQorICAgICAgICAgZXF1aXYgPSBlcXVpdio5LzEwOworICAgfSBlbHNlIHsKKyAg
ICAgIC8qIE1vZGUgbm90IGtub3duIHlldCAqLworICAgICAgLyogSGFsZiB0aGUgU0lMSyBsb3Nz
Ki8KKyAgICAgIGVxdWl2IC09IGVxdWl2Kmxvc3MvKDEyKmxvc3MgKyAyMCk7CisgICB9CisgICBy
ZXR1cm4gZXF1aXY7Cit9CisKKyNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKKworc3RhdGljIGlu
dCBpc19kaWdpdGFsX3NpbGVuY2UoY29uc3Qgb3B1c192YWwxNiogcGNtLCBpbnQgZnJhbWVfc2l6
ZSwgaW50IGNoYW5uZWxzLCBpbnQgbHNiX2RlcHRoKQoreworICAgaW50IHNpbGVuY2UgPSAwOwor
ICAgb3B1c192YWwzMiBzYW1wbGVfbWF4ID0gMDsKKyNpZmRlZiBNTFBfVFJBSU5JTkcKKyAgIHJl
dHVybiAwOworI2VuZGlmCisgICBzYW1wbGVfbWF4ID0gY2VsdF9tYXhhYnMxNihwY20sIGZyYW1l
X3NpemUqY2hhbm5lbHMpOworCisjaWZkZWYgRklYRURfUE9JTlQKKyAgIHNpbGVuY2UgPSAoc2Ft
cGxlX21heCA9PSAwKTsKKyAgICh2b2lkKWxzYl9kZXB0aDsKKyNlbHNlCisgICBzaWxlbmNlID0g
KHNhbXBsZV9tYXggPD0gKG9wdXNfdmFsMTYpIDEgLyAoMSA8PCBsc2JfZGVwdGgpKTsKKyNlbmRp
ZgorCisgICByZXR1cm4gc2lsZW5jZTsKK30KKworI2lmZGVmIEZJWEVEX1BPSU5UCitzdGF0aWMg
b3B1c192YWwzMiBjb21wdXRlX2ZyYW1lX2VuZXJneShjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGlu
dCBmcmFtZV9zaXplLCBpbnQgY2hhbm5lbHMsIGludCBhcmNoKQoreworICAgaW50IGk7CisgICBv
cHVzX3ZhbDMyIHNhbXBsZV9tYXg7CisgICBpbnQgbWF4X3NoaWZ0OworICAgaW50IHNoaWZ0Owor
ICAgb3B1c192YWwzMiBlbmVyZ3kgPSAwOworICAgaW50IGxlbiA9IGZyYW1lX3NpemUqY2hhbm5l
bHM7CisgICAodm9pZClhcmNoOworICAgLyogTWF4IGFtcGxpdHVkZSBpbiB0aGUgc2lnbmFsICov
CisgICBzYW1wbGVfbWF4ID0gY2VsdF9tYXhhYnMxNihwY20sIGxlbik7CisKKyAgIC8qIENvbXB1
dGUgdGhlIHJpZ2h0IHNoaWZ0IHJlcXVpcmVkIGluIHRoZSBNQUMgdG8gYXZvaWQgYW4gb3ZlcmZs
b3cgKi8KKyAgIG1heF9zaGlmdCA9IGNlbHRfaWxvZzIobGVuKTsKKyAgIHNoaWZ0ID0gSU1BWCgw
LCAoY2VsdF9pbG9nMihzYW1wbGVfbWF4KSA8PCAxKSArIG1heF9zaGlmdCAtIDI4KTsKKworICAg
LyogQ29tcHV0ZSB0aGUgZW5lcmd5ICovCisgICBmb3IgKGk9MDsgaTxsZW47IGkrKykKKyAgICAg
IGVuZXJneSArPSBTSFIzMihNVUxUMTZfMTYocGNtW2ldLCBwY21baV0pLCBzaGlmdCk7CisKKyAg
IC8qIE5vcm1hbGl6ZSBlbmVyZ3kgYnkgdGhlIGZyYW1lIHNpemUgYW5kIGxlZnQtc2hpZnQgYmFj
ayB0byB0aGUgb3JpZ2luYWwgcG9zaXRpb24gKi8KKyAgIGVuZXJneSAvPSBsZW47CisgICBlbmVy
Z3kgPSBTSEwzMihlbmVyZ3ksIHNoaWZ0KTsKKworICAgcmV0dXJuIGVuZXJneTsKK30KKyNlbHNl
CitzdGF0aWMgb3B1c192YWwzMiBjb21wdXRlX2ZyYW1lX2VuZXJneShjb25zdCBvcHVzX3ZhbDE2
ICpwY20sIGludCBmcmFtZV9zaXplLCBpbnQgY2hhbm5lbHMsIGludCBhcmNoKQoreworICAgaW50
IGxlbiA9IGZyYW1lX3NpemUqY2hhbm5lbHM7CisgICByZXR1cm4gY2VsdF9pbm5lcl9wcm9kKHBj
bSwgcGNtLCBsZW4sIGFyY2gpL2xlbjsKK30KKyNlbmRpZgorCisvKiBEZWNpZGVzIGlmIERUWCBz
aG91bGQgYmUgdHVybmVkIG9uICg9MSkgb3Igb2ZmICg9MCkgKi8KK3N0YXRpYyBpbnQgZGVjaWRl
X2R0eF9tb2RlKGZsb2F0IGFjdGl2aXR5X3Byb2JhYmlsaXR5LCAgICAvKiBwcm9iYWJpbGl0eSB0
aGF0IGN1cnJlbnQgZnJhbWUgY29udGFpbnMgc3BlZWNoL211c2ljICovCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbnQgKm5iX25vX2FjdGl2aXR5X2ZyYW1lcywgICAgLyogbnVtYmVyIG9m
IGNvbnNlY3V0aXZlIGZyYW1lcyB3aXRoIG5vIGFjdGl2aXR5ICovCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICBvcHVzX3ZhbDMyIHBlYWtfc2lnbmFsX2VuZXJneSwgLyogcGVhayBlbmVyZ3kg
b2YgZGVzaXJlZCBzaWduYWwgZGV0ZWN0ZWQgc28gZmFyICovCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBvcHVzX3ZhbDE2ICpwY20sICAgICAgICAgLyogaW5wdXQgcGNtIHNpZ25h
bCAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGZyYW1lX3NpemUsICAgICAgICAg
ICAgICAgIC8qIGZyYW1lIHNpemUgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBj
aGFubmVscywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBpc19zaWxlbmNlLCAgICAg
ICAgICAgICAgICAgLyogb25seSBkaWdpdGFsIHNpbGVuY2UgZGV0ZWN0ZWQgaW4gdGhpcyBmcmFt
ZSAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGFyY2gKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgKQoreworICAgb3B1c192YWwzMiBub2lzZV9lbmVyZ3k7CisKKyAgIGlmICgh
aXNfc2lsZW5jZSkKKyAgIHsKKyAgICAgIGlmIChhY3Rpdml0eV9wcm9iYWJpbGl0eSA8IERUWF9B
Q1RJVklUWV9USFJFU0hPTEQpICAvKiBpcyBub2lzZSAqLworICAgICAgeworICAgICAgICAgbm9p
c2VfZW5lcmd5ID0gY29tcHV0ZV9mcmFtZV9lbmVyZ3kocGNtLCBmcmFtZV9zaXplLCBjaGFubmVs
cywgYXJjaCk7CisKKyAgICAgICAgIC8qIGJ1dCBpcyBzdWZmaWNpZW50bHkgcXVpZXQgKi8KKyAg
ICAgICAgIGlzX3NpbGVuY2UgPSBwZWFrX3NpZ25hbF9lbmVyZ3kgPj0gKFBTRVVET19TTlJfVEhS
RVNIT0xEICogbm9pc2VfZW5lcmd5KTsKKyAgICAgIH0KKyAgIH0KKworICAgaWYgKGlzX3NpbGVu
Y2UpCisgICB7CisgICAgICAvKiBUaGUgbnVtYmVyIG9mIGNvbnNlY3V0aXZlIERUWCBmcmFtZXMg
c2hvdWxkIGJlIHdpdGhpbiB0aGUgYWxsb3dlZCBib3VuZHMgKi8KKyAgICAgICgqbmJfbm9fYWN0
aXZpdHlfZnJhbWVzKSsrOworCisgICAgICBpZiAoKm5iX25vX2FjdGl2aXR5X2ZyYW1lcyA+IE5C
X1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCkKKyAgICAgIHsKKyAgICAgICAgIGlmICgqbmJfbm9f
YWN0aXZpdHlfZnJhbWVzIDw9IChOQl9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFggKyBNQVhfQ09O
U0VDVVRJVkVfRFRYKSkKKyAgICAgICAgICAgIC8qIFZhbGlkIGZyYW1lIGZvciBEVFghICovCisg
ICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICgqbmJfbm9f
YWN0aXZpdHlfZnJhbWVzKSA9IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWDsKKyAgICAgIH0K
KyAgIH0gZWxzZQorICAgICAgKCpuYl9ub19hY3Rpdml0eV9mcmFtZXMpID0gMDsKKworICAgcmV0
dXJuIDA7Cit9CisKKyNlbmRpZgorCitzdGF0aWMgb3B1c19pbnQzMiBlbmNvZGVfbXVsdGlmcmFt
ZV9wYWNrZXQoT3B1c0VuY29kZXIgKnN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQgbmJfZnJhbWVzLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGludCBmcmFtZV9zaXplLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKmRhdGEsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B1c19pbnQzMiBvdXRfZGF0YV9i
eXRlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdG9f
Y2VsdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbHNi
X2RlcHRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBm
bG9hdF9hcGkpCit7CisgICBpbnQgaTsKKyAgIGludCByZXQgPSAwOworICAgVkFSREVDTCh1bnNp
Z25lZCBjaGFyLCB0bXBfZGF0YSk7CisgICBpbnQgYmFrX21vZGUsIGJha19iYW5kd2lkdGgsIGJh
a19jaGFubmVscywgYmFrX3RvX21vbm87CisgICBWQVJERUNMKE9wdXNSZXBhY2tldGl6ZXIsIHJw
KTsKKyAgIGludCBtYXhfaGVhZGVyX2J5dGVzOworICAgb3B1c19pbnQzMiBieXRlc19wZXJfZnJh
bWU7CisgICBvcHVzX2ludDMyIGNicl9ieXRlczsKKyAgIG9wdXNfaW50MzIgcmVwYWNrZXRpemVf
bGVuOworICAgaW50IHRtcF9sZW47CisgICBBTExPQ19TVEFDSzsKKworICAgLyogV29yc3QgY2Fz
ZXM6CisgICAgKiAyIGZyYW1lczogQ29kZSAyIHdpdGggZGlmZmVyZW50IGNvbXByZXNzZWQgc2l6
ZXMKKyAgICAqID4yIGZyYW1lczogQ29kZSAzIFZCUiAqLworICAgbWF4X2hlYWRlcl9ieXRlcyA9
IG5iX2ZyYW1lcyA9PSAyID8gMyA6ICgyKyhuYl9mcmFtZXMtMSkqMik7CisKKyAgIGlmIChzdC0+
dXNlX3ZiciB8fCBzdC0+dXNlcl9iaXRyYXRlX2Jwcz09T1BVU19CSVRSQVRFX01BWCkKKyAgICAg
IHJlcGFja2V0aXplX2xlbiA9IG91dF9kYXRhX2J5dGVzOworICAgZWxzZSB7CisgICAgICBjYnJf
Ynl0ZXMgPSAzKnN0LT5iaXRyYXRlX2Jwcy8oMyo4KnN0LT5Gcy8oZnJhbWVfc2l6ZSpuYl9mcmFt
ZXMpKTsKKyAgICAgIHJlcGFja2V0aXplX2xlbiA9IElNSU4oY2JyX2J5dGVzLCBvdXRfZGF0YV9i
eXRlcyk7CisgICB9CisgICBieXRlc19wZXJfZnJhbWUgPSBJTUlOKDEyNzYsIDErKHJlcGFja2V0
aXplX2xlbi1tYXhfaGVhZGVyX2J5dGVzKS9uYl9mcmFtZXMpOworCisgICBBTExPQyh0bXBfZGF0
YSwgbmJfZnJhbWVzKmJ5dGVzX3Blcl9mcmFtZSwgdW5zaWduZWQgY2hhcik7CisgICBBTExPQyhy
cCwgMSwgT3B1c1JlcGFja2V0aXplcik7CisgICBvcHVzX3JlcGFja2V0aXplcl9pbml0KHJwKTsK
KworICAgYmFrX21vZGUgPSBzdC0+dXNlcl9mb3JjZWRfbW9kZTsKKyAgIGJha19iYW5kd2lkdGgg
PSBzdC0+dXNlcl9iYW5kd2lkdGg7CisgICBiYWtfY2hhbm5lbHMgPSBzdC0+Zm9yY2VfY2hhbm5l
bHM7CisKKyAgIHN0LT51c2VyX2ZvcmNlZF9tb2RlID0gc3QtPm1vZGU7CisgICBzdC0+dXNlcl9i
YW5kd2lkdGggPSBzdC0+YmFuZHdpZHRoOworICAgc3QtPmZvcmNlX2NoYW5uZWxzID0gc3QtPnN0
cmVhbV9jaGFubmVsczsKKworICAgYmFrX3RvX21vbm8gPSBzdC0+c2lsa19tb2RlLnRvTW9ubzsK
KyAgIGlmIChiYWtfdG9fbW9ubykKKyAgICAgIHN0LT5mb3JjZV9jaGFubmVscyA9IDE7CisgICBl
bHNlCisgICAgICBzdC0+cHJldl9jaGFubmVscyA9IHN0LT5zdHJlYW1fY2hhbm5lbHM7CisKKyAg
IGZvciAoaT0wO2k8bmJfZnJhbWVzO2krKykKKyAgIHsKKyAgICAgIHN0LT5zaWxrX21vZGUudG9N
b25vID0gMDsKKyAgICAgIHN0LT5ub25maW5hbF9mcmFtZSA9IGk8KG5iX2ZyYW1lcy0xKTsKKwor
ICAgICAgLyogV2hlbiBzd2l0Y2hpbmcgZnJvbSBTSUxLL0h5YnJpZCB0byBDRUxULCBvbmx5IGFz
ayBmb3IgYSBzd2l0Y2ggYXQgdGhlIGxhc3QgZnJhbWUgKi8KKyAgICAgIGlmICh0b19jZWx0ICYm
IGk9PW5iX2ZyYW1lcy0xKQorICAgICAgICAgc3QtPnVzZXJfZm9yY2VkX21vZGUgPSBNT0RFX0NF
TFRfT05MWTsKKworICAgICAgdG1wX2xlbiA9IG9wdXNfZW5jb2RlX25hdGl2ZShzdCwgcGNtK2kq
KHN0LT5jaGFubmVscypmcmFtZV9zaXplKSwgZnJhbWVfc2l6ZSwKKyAgICAgICAgIHRtcF9kYXRh
K2kqYnl0ZXNfcGVyX2ZyYW1lLCBieXRlc19wZXJfZnJhbWUsIGxzYl9kZXB0aCwgTlVMTCwgMCwg
MCwgMCwgMCwKKyAgICAgICAgIE5VTEwsIGZsb2F0X2FwaSk7CisKKyAgICAgIGlmICh0bXBfbGVu
PDApCisgICAgICB7CisgICAgICAgICBSRVNUT1JFX1NUQUNLOworICAgICAgICAgcmV0dXJuIE9Q
VVNfSU5URVJOQUxfRVJST1I7CisgICAgICB9CisKKyAgICAgIHJldCA9IG9wdXNfcmVwYWNrZXRp
emVyX2NhdChycCwgdG1wX2RhdGEraSpieXRlc19wZXJfZnJhbWUsIHRtcF9sZW4pOworCisgICAg
ICBpZiAocmV0PDApCisgICAgICB7CisgICAgICAgICBSRVNUT1JFX1NUQUNLOworICAgICAgICAg
cmV0dXJuIE9QVVNfSU5URVJOQUxfRVJST1I7CisgICAgICB9CisgICB9CisKKyAgIHJldCA9IG9w
dXNfcmVwYWNrZXRpemVyX291dF9yYW5nZV9pbXBsKHJwLCAwLCBuYl9mcmFtZXMsIGRhdGEsIHJl
cGFja2V0aXplX2xlbiwgMCwgIXN0LT51c2VfdmJyKTsKKworICAgaWYgKHJldDwwKQorICAgewor
ICAgICAgUkVTVE9SRV9TVEFDSzsKKyAgICAgIHJldHVybiBPUFVTX0lOVEVSTkFMX0VSUk9SOwor
ICAgfQorCisgICAvKiBEaXNjYXJkIGNvbmZpZ3MgdGhhdCB3ZXJlIGZvcmNlZCBsb2NhbGx5IGZv
ciB0aGUgcHVycG9zZSBvZiByZXBhY2tldGl6YXRpb24gKi8KKyAgIHN0LT51c2VyX2ZvcmNlZF9t
b2RlID0gYmFrX21vZGU7CisgICBzdC0+dXNlcl9iYW5kd2lkdGggPSBiYWtfYmFuZHdpZHRoOwor
ICAgc3QtPmZvcmNlX2NoYW5uZWxzID0gYmFrX2NoYW5uZWxzOworICAgc3QtPnNpbGtfbW9kZS50
b01vbm8gPSBiYWtfdG9fbW9ubzsKKworICAgUkVTVE9SRV9TVEFDSzsKKyAgIHJldHVybiByZXQ7
Cit9CisKK3N0YXRpYyBpbnQgY29tcHV0ZV9yZWR1bmRhbmN5X2J5dGVzKG9wdXNfaW50MzIgbWF4
X2RhdGFfYnl0ZXMsIG9wdXNfaW50MzIgYml0cmF0ZV9icHMsIGludCBmcmFtZV9yYXRlLCBpbnQg
Y2hhbm5lbHMpCit7CisgICBpbnQgcmVkdW5kYW5jeV9ieXRlc19jYXA7CisgICBpbnQgcmVkdW5k
YW5jeV9ieXRlczsKKyAgIG9wdXNfaW50MzIgcmVkdW5kYW5jeV9yYXRlOworICAgaW50IGJhc2Vf
Yml0czsKKyAgIG9wdXNfaW50MzIgYXZhaWxhYmxlX2JpdHM7CisgICBiYXNlX2JpdHMgPSAoNDAq
Y2hhbm5lbHMrMjApOworCisgICAvKiBFcXVpdmFsZW50IHJhdGUgZm9yIDUgbXMgZnJhbWVzLiAq
LworICAgcmVkdW5kYW5jeV9yYXRlID0gYml0cmF0ZV9icHMgKyBiYXNlX2JpdHMqKDIwMCAtIGZy
YW1lX3JhdGUpOworICAgLyogRm9yIFZCUiwgZnVydGhlciBpbmNyZWFzZSB0aGUgYml0cmF0ZSBp
ZiB3ZSBjYW4gYWZmb3JkIGl0LiBJdCdzIHByZXR0eSBzaG9ydAorICAgICAgYW5kIHdlJ2xsIGF2
b2lkIGFydGVmYWN0cy4gKi8KKyAgIHJlZHVuZGFuY3lfcmF0ZSA9IDMqcmVkdW5kYW5jeV9yYXRl
LzI7CisgICByZWR1bmRhbmN5X2J5dGVzID0gcmVkdW5kYW5jeV9yYXRlLzE2MDA7CisKKyAgIC8q
IENvbXB1dGUgdGhlIG1heCByYXRlIHdlIGNhbiB1c2UgZ2l2ZW4gQ0JSIG9yIFZCUiB3aXRoIGNh
cC4gKi8KKyAgIGF2YWlsYWJsZV9iaXRzID0gbWF4X2RhdGFfYnl0ZXMqOCAtIDIqYmFzZV9iaXRz
OworICAgcmVkdW5kYW5jeV9ieXRlc19jYXAgPSAoYXZhaWxhYmxlX2JpdHMqMjQwLygyNDArNDgw
MDAvZnJhbWVfcmF0ZSkgKyBiYXNlX2JpdHMpLzg7CisgICByZWR1bmRhbmN5X2J5dGVzID0gSU1J
TihyZWR1bmRhbmN5X2J5dGVzLCByZWR1bmRhbmN5X2J5dGVzX2NhcCk7CisgICAvKiBJdCB3ZSBj
YW4ndCBnZXQgZW5vdWdoIGJpdHMgZm9yIHJlZHVuZGFuY3kgdG8gYmUgd29ydGggaXQsIHJlbHkg
b24gdGhlIGRlY29kZXIgUExDLiAqLworICAgaWYgKHJlZHVuZGFuY3lfYnl0ZXMgPiA0ICsgOCpj
aGFubmVscykKKyAgICAgIHJlZHVuZGFuY3lfYnl0ZXMgPSBJTUlOKDI1NywgcmVkdW5kYW5jeV9i
eXRlcyk7CisgICBlbHNlCisgICAgICByZWR1bmRhbmN5X2J5dGVzID0gMDsKKyAgIHJldHVybiBy
ZWR1bmRhbmN5X2J5dGVzOworfQorCiBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVz
RW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lX3NpemUsCiAgICAg
ICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqZGF0YSwgb3B1c19pbnQzMiBvdXRfZGF0YV9ieXRl
cywgaW50IGxzYl9kZXB0aCwKICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICphbmFseXNpc19w
Y20sIG9wdXNfaW50MzIgYW5hbHlzaXNfc2l6ZSwgaW50IGMxLCBpbnQgYzIsCkBAIC05NzEsNiAr
MTEwNyw3IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwg
Y29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgQW5hbHlzaXNJbmZvIGFuYWx5
c2lzX2luZm87CiAgICAgaW50IGFuYWx5c2lzX3JlYWRfcG9zX2Jhaz0tMTsKICAgICBpbnQgYW5h
bHlzaXNfcmVhZF9zdWJmcmFtZV9iYWs9LTE7CisgICAgaW50IGlzX3NpbGVuY2UgPSAwOwogI2Vu
ZGlmCiAgICAgVkFSREVDTChvcHVzX3ZhbDE2LCB0bXBfcHJlZmlsbCk7CiAKQEAgLTk3OSwxNSAr
MTExNiwxOSBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3Qs
IGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgIG1heF9kYXRhX2J5dGVzID0g
SU1JTigxMjc2LCBvdXRfZGF0YV9ieXRlcyk7CiAKICAgICBzdC0+cmFuZ2VGaW5hbCA9IDA7Ci0g
ICAgaWYgKCghc3QtPnZhcmlhYmxlX2R1cmF0aW9uICYmIDQwMCpmcmFtZV9zaXplICE9IHN0LT5G
cyAmJiAyMDAqZnJhbWVfc2l6ZSAhPSBzdC0+RnMgJiYgMTAwKmZyYW1lX3NpemUgIT0gc3QtPkZz
ICYmCi0gICAgICAgICA1MCpmcmFtZV9zaXplICE9IHN0LT5GcyAmJiAgMjUqZnJhbWVfc2l6ZSAh
PSBzdC0+RnMgJiYgIDUwKmZyYW1lX3NpemUgIT0gMypzdC0+RnMpCi0gICAgICAgICB8fCAoNDAw
KmZyYW1lX3NpemUgPCBzdC0+RnMpCi0gICAgICAgICB8fCBtYXhfZGF0YV9ieXRlczw9MAotICAg
ICAgICAgKQorICAgIGlmIChmcmFtZV9zaXplIDw9IDAgfHwgbWF4X2RhdGFfYnl0ZXMgPD0gMCkK
ICAgICB7CiAgICAgICAgUkVTVE9SRV9TVEFDSzsKICAgICAgICByZXR1cm4gT1BVU19CQURfQVJH
OwogICAgIH0KKworICAgIC8qIENhbm5vdCBlbmNvZGUgMTAwIG1zIGluIDEgYnl0ZSAqLworICAg
IGlmIChtYXhfZGF0YV9ieXRlcz09MSAmJiBzdC0+RnM9PShmcmFtZV9zaXplKjEwKSkKKyAgICB7
CisgICAgICBSRVNUT1JFX1NUQUNLOworICAgICAgcmV0dXJuIE9QVVNfQlVGRkVSX1RPT19TTUFM
TDsKKyAgICB9CisKICAgICBzaWxrX2VuYyA9IChjaGFyKilzdCtzdC0+c2lsa19lbmNfb2Zmc2V0
OwogICAgIGNlbHRfZW5jID0gKENFTFRFbmNvZGVyKikoKGNoYXIqKXN0K3N0LT5jZWx0X2VuY19v
ZmZzZXQpOwogICAgIGlmIChzdC0+YXBwbGljYXRpb24gPT0gT1BVU19BUFBMSUNBVElPTl9SRVNU
UklDVEVEX0xPV0RFTEFZKQpAQCAtMTAwMSwyNSArMTE0Miw0MiBAQCBvcHVzX2ludDMyIG9wdXNf
ZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50
IGZyYW1lXwogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQogICAgIGFuYWx5c2lzX2luZm8udmFs
aWQgPSAwOwogI2lmZGVmIEZJWEVEX1BPSU5UCi0gICAgaWYgKHN0LT5zaWxrX21vZGUuY29tcGxl
eGl0eSA+PSAxMCAmJiBzdC0+RnM9PTQ4MDAwKQorICAgIGlmIChzdC0+c2lsa19tb2RlLmNvbXBs
ZXhpdHkgPj0gMTAgJiYgc3QtPkZzPj0xNjAwMCkKICNlbHNlCi0gICAgaWYgKHN0LT5zaWxrX21v
ZGUuY29tcGxleGl0eSA+PSA3ICYmIHN0LT5Gcz09NDgwMDApCisgICAgaWYgKHN0LT5zaWxrX21v
ZGUuY29tcGxleGl0eSA+PSA3ICYmIHN0LT5Gcz49MTYwMDApCiAjZW5kaWYKICAgICB7Ci0gICAg
ICAgYW5hbHlzaXNfcmVhZF9wb3NfYmFrID0gc3QtPmFuYWx5c2lzLnJlYWRfcG9zOwotICAgICAg
IGFuYWx5c2lzX3JlYWRfc3ViZnJhbWVfYmFrID0gc3QtPmFuYWx5c2lzLnJlYWRfc3ViZnJhbWU7
Ci0gICAgICAgcnVuX2FuYWx5c2lzKCZzdC0+YW5hbHlzaXMsIGNlbHRfbW9kZSwgYW5hbHlzaXNf
cGNtLCBhbmFseXNpc19zaXplLCBmcmFtZV9zaXplLAotICAgICAgICAgICAgIGMxLCBjMiwgYW5h
bHlzaXNfY2hhbm5lbHMsIHN0LT5GcywKLSAgICAgICAgICAgICBsc2JfZGVwdGgsIGRvd25taXgs
ICZhbmFseXNpc19pbmZvKTsKKyAgICAgICBpZiAoaXNfZGlnaXRhbF9zaWxlbmNlKHBjbSwgZnJh
bWVfc2l6ZSwgc3QtPmNoYW5uZWxzLCBsc2JfZGVwdGgpKQorICAgICAgIHsKKyAgICAgICAgICBp
c19zaWxlbmNlID0gMTsKKyAgICAgICB9IGVsc2UgeworICAgICAgICAgIGFuYWx5c2lzX3JlYWRf
cG9zX2JhayA9IHN0LT5hbmFseXNpcy5yZWFkX3BvczsKKyAgICAgICAgICBhbmFseXNpc19yZWFk
X3N1YmZyYW1lX2JhayA9IHN0LT5hbmFseXNpcy5yZWFkX3N1YmZyYW1lOworICAgICAgICAgIHJ1
bl9hbmFseXNpcygmc3QtPmFuYWx5c2lzLCBjZWx0X21vZGUsIGFuYWx5c2lzX3BjbSwgYW5hbHlz
aXNfc2l6ZSwgZnJhbWVfc2l6ZSwKKyAgICAgICAgICAgICAgICBjMSwgYzIsIGFuYWx5c2lzX2No
YW5uZWxzLCBzdC0+RnMsCisgICAgICAgICAgICAgICAgbHNiX2RlcHRoLCBkb3dubWl4LCAmYW5h
bHlzaXNfaW5mbyk7CisgICAgICAgfQorCisgICAgICAgLyogVHJhY2sgdGhlIHBlYWsgc2lnbmFs
IGVuZXJneSAqLworICAgICAgIGlmICghaXNfc2lsZW5jZSAmJiBhbmFseXNpc19pbmZvLmFjdGl2
aXR5X3Byb2JhYmlsaXR5ID4gRFRYX0FDVElWSVRZX1RIUkVTSE9MRCkKKyAgICAgICAgICBzdC0+
cGVha19zaWduYWxfZW5lcmd5ID0gTUFYMzIoTVVMVDE2XzMyX1ExNShRQ09OU1QxNigwLjk5OWYs
IDE1KSwgc3QtPnBlYWtfc2lnbmFsX2VuZXJneSksCisgICAgICAgICAgICAgICAgY29tcHV0ZV9m
cmFtZV9lbmVyZ3kocGNtLCBmcmFtZV9zaXplLCBzdC0+Y2hhbm5lbHMsIHN0LT5hcmNoKSk7CiAg
ICAgfQogI2Vsc2UKICAgICAodm9pZClhbmFseXNpc19wY207CiAgICAgKHZvaWQpYW5hbHlzaXNf
c2l6ZTsKKyAgICAodm9pZCljMTsKKyAgICAodm9pZCljMjsKKyAgICAodm9pZClhbmFseXNpc19j
aGFubmVsczsKKyAgICAodm9pZClkb3dubWl4OwogI2VuZGlmCiAKLSAgICBzdC0+dm9pY2VfcmF0
aW8gPSAtMTsKLQogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQorICAgIC8qIFJlc2V0IHZvaWNl
X3JhdGlvIGlmIHRoaXMgZnJhbWUgaXMgbm90IHNpbGVudCBvciBpZiBhbmFseXNpcyBpcyBkaXNh
YmxlZC4KKyAgICAgKiBPdGhlcndpc2UsIHByZXNlcnZlIHZvaWNlX3JhdGlvIGZyb20gdGhlIGxh
c3Qgbm9uLXNpbGVudCBmcmFtZSAqLworICAgIGlmICghaXNfc2lsZW5jZSkKKyAgICAgIHN0LT52
b2ljZV9yYXRpbyA9IC0xOworCiAgICAgc3QtPmRldGVjdGVkX2JhbmR3aWR0aCA9IDA7CiAgICAg
aWYgKGFuYWx5c2lzX2luZm8udmFsaWQpCiAgICAgewpAQCAtMTAzOSw2ICsxMTk3LDggQEAgb3B1
c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3Zh
bDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICBlbHNlCiAgICAgICAgICAgc3QtPmRldGVjdGVk
X2JhbmR3aWR0aCA9IE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EOwogICAgIH0KKyNlbHNlCisgICAg
c3QtPnZvaWNlX3JhdGlvID0gLTE7CiAjZW5kaWYKIAogICAgIGlmIChzdC0+Y2hhbm5lbHM9PTIg
JiYgc3QtPmZvcmNlX2NoYW5uZWxzIT0xKQpAQCAtMTA1MiwxMiArMTIxMiwxMyBAQCBvcHVzX2lu
dDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYg
KnBjbSwgaW50IGZyYW1lXwogICAgIGlmICghc3QtPnVzZV92YnIpCiAgICAgewogICAgICAgIGlu
dCBjYnJCeXRlczsKLSAgICAgICAvKiBNdWx0aXBseSBieSAzIHRvIG1ha2Ugc3VyZSB0aGUgZGl2
aXNpb24gaXMgZXhhY3QuICovCi0gICAgICAgaW50IGZyYW1lX3JhdGUzID0gMypzdC0+RnMvZnJh
bWVfc2l6ZTsKKyAgICAgICAvKiBNdWx0aXBseSBieSAxMiB0byBtYWtlIHN1cmUgdGhlIGRpdmlz
aW9uIGlzIGV4YWN0LiAqLworICAgICAgIGludCBmcmFtZV9yYXRlMTIgPSAxMipzdC0+RnMvZnJh
bWVfc2l6ZTsKICAgICAgICAvKiBXZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0ICJpbnQiIHZhbHVl
cyBhbHdheXMgZml0IGluIDE2IGJpdHMuICovCi0gICAgICAgY2JyQnl0ZXMgPSBJTUlOKCAoMypz
dC0+Yml0cmF0ZV9icHMvOCArIGZyYW1lX3JhdGUzLzIpL2ZyYW1lX3JhdGUzLCBtYXhfZGF0YV9i
eXRlcyk7Ci0gICAgICAgc3QtPmJpdHJhdGVfYnBzID0gY2JyQnl0ZXMqKG9wdXNfaW50MzIpZnJh
bWVfcmF0ZTMqOC8zOwotICAgICAgIG1heF9kYXRhX2J5dGVzID0gY2JyQnl0ZXM7CisgICAgICAg
Y2JyQnl0ZXMgPSBJTUlOKCAoMTIqc3QtPmJpdHJhdGVfYnBzLzggKyBmcmFtZV9yYXRlMTIvMikv
ZnJhbWVfcmF0ZTEyLCBtYXhfZGF0YV9ieXRlcyk7CisgICAgICAgc3QtPmJpdHJhdGVfYnBzID0g
Y2JyQnl0ZXMqKG9wdXNfaW50MzIpZnJhbWVfcmF0ZTEyKjgvMTI7CisgICAgICAgLyogTWFrZSBz
dXJlIHdlIHByb3ZpZGUgYXQgbGVhc3Qgb25lIGJ5dGUgdG8gYXZvaWQgZmFpbGluZy4gKi8KKyAg
ICAgICBtYXhfZGF0YV9ieXRlcyA9IElNQVgoMSwgY2JyQnl0ZXMpOwogICAgIH0KICAgICBpZiAo
bWF4X2RhdGFfYnl0ZXM8MyB8fCBzdC0+Yml0cmF0ZV9icHMgPCAzKmZyYW1lX3JhdGUqOAogICAg
ICAgIHx8IChmcmFtZV9yYXRlPDUwICYmIChtYXhfZGF0YV9ieXRlcypmcmFtZV9yYXRlPDMwMCB8
fCBzdC0+Yml0cmF0ZV9icHMgPCAyNDAwKSkpCkBAIC0xMDY1LDI1ICsxMjI2LDYzIEBAIG9wdXNf
aW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwx
NiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAgLypJZiB0aGUgc3BhY2UgaXMgdG9vIGxvdyB0byBk
byBzb21ldGhpbmcgdXNlZnVsLCBlbWl0ICdQTEMnIGZyYW1lcy4qLwogICAgICAgIGludCB0b2Nt
b2RlID0gc3QtPm1vZGU7CiAgICAgICAgaW50IGJ3ID0gc3QtPmJhbmR3aWR0aCA9PSAwID8gT1BV
U19CQU5EV0lEVEhfTkFSUk9XQkFORCA6IHN0LT5iYW5kd2lkdGg7CisgICAgICAgaW50IHBhY2tl
dF9jb2RlID0gMDsKKyAgICAgICBpbnQgbnVtX211bHRpZnJhbWVzID0gMDsKKwogICAgICAgIGlm
ICh0b2Ntb2RlPT0wKQogICAgICAgICAgIHRvY21vZGUgPSBNT0RFX1NJTEtfT05MWTsKICAgICAg
ICBpZiAoZnJhbWVfcmF0ZT4xMDApCiAgICAgICAgICAgdG9jbW9kZSA9IE1PREVfQ0VMVF9PTkxZ
OwotICAgICAgIGlmIChmcmFtZV9yYXRlIDwgNTApCi0gICAgICAgICAgdG9jbW9kZSA9IE1PREVf
U0lMS19PTkxZOworICAgICAgIC8qIDQwIG1zIC0+IDIgeCAyMCBtcyBpZiBpbiBDRUxUX09OTFkg
b3IgSFlCUklEIG1vZGUgKi8KKyAgICAgICBpZiAoZnJhbWVfcmF0ZT09MjUgJiYgdG9jbW9kZSE9
TU9ERV9TSUxLX09OTFkpCisgICAgICAgeworICAgICAgICAgIGZyYW1lX3JhdGUgPSA1MDsKKyAg
ICAgICAgICBwYWNrZXRfY29kZSA9IDE7CisgICAgICAgfQorCisgICAgICAgLyogPj0gNjAgbXMg
ZnJhbWVzICovCisgICAgICAgaWYgKGZyYW1lX3JhdGU8PTE2KQorICAgICAgIHsKKyAgICAgICAg
ICAvKiAxIHggNjAgbXMsIDIgeCA0MCBtcywgMiB4IDYwIG1zICovCisgICAgICAgICAgaWYgKG91
dF9kYXRhX2J5dGVzPT0xIHx8ICh0b2Ntb2RlPT1NT0RFX1NJTEtfT05MWSAmJiBmcmFtZV9yYXRl
IT0xMCkpCisgICAgICAgICAgeworICAgICAgICAgICAgIHRvY21vZGUgPSBNT0RFX1NJTEtfT05M
WTsKKworICAgICAgICAgICAgIHBhY2tldF9jb2RlID0gZnJhbWVfcmF0ZSA8PSAxMjsKKyAgICAg
ICAgICAgICBmcmFtZV9yYXRlID0gZnJhbWVfcmF0ZSA9PSAxMiA/IDI1IDogMTY7CisgICAgICAg
ICAgfQorICAgICAgICAgIGVsc2UKKyAgICAgICAgICB7CisgICAgICAgICAgICAgbnVtX211bHRp
ZnJhbWVzID0gNTAvZnJhbWVfcmF0ZTsKKyAgICAgICAgICAgICBmcmFtZV9yYXRlID0gNTA7Cisg
ICAgICAgICAgICAgcGFja2V0X2NvZGUgPSAzOworICAgICAgICAgIH0KKyAgICAgICB9CisKICAg
ICAgICBpZih0b2Ntb2RlPT1NT0RFX1NJTEtfT05MWSYmYnc+T1BVU19CQU5EV0lEVEhfV0lERUJB
TkQpCiAgICAgICAgICAgYnc9T1BVU19CQU5EV0lEVEhfV0lERUJBTkQ7CiAgICAgICAgZWxzZSBp
ZiAodG9jbW9kZT09TU9ERV9DRUxUX09OTFkmJmJ3PT1PUFVTX0JBTkRXSURUSF9NRURJVU1CQU5E
KQogICAgICAgICAgIGJ3PU9QVVNfQkFORFdJRFRIX05BUlJPV0JBTkQ7CiAgICAgICAgZWxzZSBp
ZiAodG9jbW9kZT09TU9ERV9IWUJSSUQmJmJ3PD1PUFVTX0JBTkRXSURUSF9TVVBFUldJREVCQU5E
KQogICAgICAgICAgIGJ3PU9QVVNfQkFORFdJRFRIX1NVUEVSV0lERUJBTkQ7CisKICAgICAgICBk
YXRhWzBdID0gZ2VuX3RvYyh0b2Ntb2RlLCBmcmFtZV9yYXRlLCBidywgc3QtPnN0cmVhbV9jaGFu
bmVscyk7Ci0gICAgICAgcmV0ID0gMTsKKyAgICAgICBkYXRhWzBdIHw9IHBhY2tldF9jb2RlOwor
CisgICAgICAgcmV0ID0gcGFja2V0X2NvZGUgPD0gMSA/IDEgOiAyOworCisgICAgICAgbWF4X2Rh
dGFfYnl0ZXMgPSBJTUFYKG1heF9kYXRhX2J5dGVzLCByZXQpOworCisgICAgICAgaWYgKHBhY2tl
dF9jb2RlPT0zKQorICAgICAgICAgIGRhdGFbMV0gPSBudW1fbXVsdGlmcmFtZXM7CisKICAgICAg
ICBpZiAoIXN0LT51c2VfdmJyKQogICAgICAgIHsKICAgICAgICAgICByZXQgPSBvcHVzX3BhY2tl
dF9wYWQoZGF0YSwgcmV0LCBtYXhfZGF0YV9ieXRlcyk7CiAgICAgICAgICAgaWYgKHJldCA9PSBP
UFVTX09LKQogICAgICAgICAgICAgIHJldCA9IG1heF9kYXRhX2J5dGVzOworICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICByZXQgPSBPUFVTX0lOVEVSTkFMX0VSUk9SOwogICAgICAgIH0KICAg
ICAgICBSRVNUT1JFX1NUQUNLOwogICAgICAgIHJldHVybiByZXQ7CkBAIC0xMDkxLDcgKzEyOTAs
OCBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0
IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgIG1heF9yYXRlID0gZnJhbWVfcmF0ZSpt
YXhfZGF0YV9ieXRlcyo4OwogCiAgICAgLyogRXF1aXZhbGVudCAyMC1tcyByYXRlIGZvciBtb2Rl
L2NoYW5uZWwvYmFuZHdpZHRoIGRlY2lzaW9ucyAqLwotICAgIGVxdWl2X3JhdGUgPSBzdC0+Yml0
cmF0ZV9icHMgLSAoNDAqc3QtPmNoYW5uZWxzKzIwKSooc3QtPkZzL2ZyYW1lX3NpemUgLSA1MCk7
CisgICAgZXF1aXZfcmF0ZSA9IGNvbXB1dGVfZXF1aXZfcmF0ZShzdC0+Yml0cmF0ZV9icHMsIHN0
LT5jaGFubmVscywgc3QtPkZzL2ZyYW1lX3NpemUsCisgICAgICAgICAgc3QtPnVzZV92YnIsIDAs
IHN0LT5zaWxrX21vZGUuY29tcGxleGl0eSwgc3QtPnNpbGtfbW9kZS5wYWNrZXRMb3NzUGVyY2Vu
dGFnZSk7CiAKICAgICBpZiAoc3QtPnNpZ25hbF90eXBlID09IE9QVVNfU0lHTkFMX1ZPSUNFKQog
ICAgICAgIHZvaWNlX2VzdCA9IDEyNzsKQEAgLTExMzIsNyArMTMzMiw5IEBAIG9wdXNfaW50MzIg
b3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNt
LCBpbnQgZnJhbWVfCiAgICAgICAgfQogI2VuZGlmCiAgICAgfQotICAgIGVxdWl2X3JhdGUgPSBz
dC0+Yml0cmF0ZV9icHMgLSAoNDAqc3QtPnN0cmVhbV9jaGFubmVscysyMCkqKHN0LT5Gcy9mcmFt
ZV9zaXplIC0gNTApOworICAgIC8qIFVwZGF0ZSBlcXVpdmFsZW50IHJhdGUgZm9yIGNoYW5uZWxz
IGRlY2lzaW9uLiAqLworICAgIGVxdWl2X3JhdGUgPSBjb21wdXRlX2VxdWl2X3JhdGUoc3QtPmJp
dHJhdGVfYnBzLCBzdC0+c3RyZWFtX2NoYW5uZWxzLCBzdC0+RnMvZnJhbWVfc2l6ZSwKKyAgICAg
ICAgICBzdC0+dXNlX3ZiciwgMCwgc3QtPnNpbGtfbW9kZS5jb21wbGV4aXR5LCBzdC0+c2lsa19t
b2RlLnBhY2tldExvc3NQZXJjZW50YWdlKTsKIAogICAgIC8qIE1vZGUgc2VsZWN0aW9uIGRlcGVu
ZGluZyBvbiBhcHBsaWNhdGlvbiBhbmQgc2lnbmFsIHR5cGUgKi8KICAgICBpZiAoc3QtPmFwcGxp
Y2F0aW9uID09IE9QVVNfQVBQTElDQVRJT05fUkVTVFJJQ1RFRF9MT1dERUxBWSkKQEAgLTExODEs
MTAgKzEzODMsMjEgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIg
KnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAvKiBXaGVuIEZF
QyBpcyBlbmFibGVkIGFuZCB0aGVyZSdzIGVub3VnaCBwYWNrZXQgbG9zcywgdXNlIFNJTEsgKi8K
ICAgICAgICBpZiAoc3QtPnNpbGtfbW9kZS51c2VJbkJhbmRGRUMgJiYgc3QtPnNpbGtfbW9kZS5w
YWNrZXRMb3NzUGVyY2VudGFnZSA+ICgxMjgtdm9pY2VfZXN0KT4+NCkKICAgICAgICAgICBzdC0+
bW9kZSA9IE1PREVfU0lMS19PTkxZOwotICAgICAgIC8qIFdoZW4gZW5jb2Rpbmcgdm9pY2UgYW5k
IERUWCBpcyBlbmFibGVkLCBzZXQgdGhlIGVuY29kZXIgdG8gU0lMSyBtb2RlIChhdCBsZWFzdCBm
b3Igbm93KSAqLworICAgICAgIC8qIFdoZW4gZW5jb2Rpbmcgdm9pY2UgYW5kIERUWCBpcyBlbmFi
bGVkIGJ1dCB0aGUgZ2VuZXJhbGl6ZWQgRFRYIGNhbm5vdCBiZSB1c2VkLAorICAgICAgICAgIGJl
Y2F1c2Ugb2YgY29tcGxleGl0eSBhbmQgc2FtcGxpbmcgZnJlcXVlbmN5IHNldHRpbmdzLCBzd2l0
Y2ggdG8gU0lMSyBEVFggYW5kCisgICAgICAgICAgc2V0IHRoZSBlbmNvZGVyIHRvIFNJTEsgbW9k
ZSAqLworI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQorICAgICAgIHN0LT5zaWxrX21vZGUudXNl
RFRYID0gc3QtPnVzZV9kdHggJiYgIShhbmFseXNpc19pbmZvLnZhbGlkIHx8IGlzX3NpbGVuY2Up
OworI2Vsc2UKKyAgICAgICBzdC0+c2lsa19tb2RlLnVzZURUWCA9IHN0LT51c2VfZHR4OworI2Vu
ZGlmCiAgICAgICAgaWYgKHN0LT5zaWxrX21vZGUudXNlRFRYICYmIHZvaWNlX2VzdCA+IDEwMCkK
ICAgICAgICAgICBzdC0+bW9kZSA9IE1PREVfU0lMS19PTkxZOwogI2VuZGlmCisKKyAgICAgICAv
KiBJZiBtYXhfZGF0YV9ieXRlcyByZXByZXNlbnRzIGxlc3MgdGhhbiA2IGtiL3MsIHN3aXRjaCB0
byBDRUxULW9ubHkgbW9kZSAqLworICAgICAgIGlmIChtYXhfZGF0YV9ieXRlcyA8IChmcmFtZV9y
YXRlID4gNTAgPyA5MDAwIDogNjAwMCkqZnJhbWVfc2l6ZSAvIChzdC0+RnMgKiA4KSkKKyAgICAg
ICAgICBzdC0+bW9kZSA9IE1PREVfQ0VMVF9PTkxZOwogICAgIH0gZWxzZSB7CiAgICAgICAgc3Qt
Pm1vZGUgPSBzdC0+dXNlcl9mb3JjZWRfbW9kZTsKICAgICB9CkBAIC0xMTk0LDE5ICsxNDA3LDYg
QEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBv
cHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICBzdC0+bW9kZSA9IE1PREVfQ0VMVF9P
TkxZOwogICAgIGlmIChzdC0+bGZlKQogICAgICAgIHN0LT5tb2RlID0gTU9ERV9DRUxUX09OTFk7
Ci0gICAgLyogSWYgbWF4X2RhdGFfYnl0ZXMgcmVwcmVzZW50cyBsZXNzIHRoYW4gOCBrYi9zLCBz
d2l0Y2ggdG8gQ0VMVC1vbmx5IG1vZGUgKi8KLSAgICBpZiAobWF4X2RhdGFfYnl0ZXMgPCAoZnJh
bWVfcmF0ZSA+IDUwID8gMTIwMDAgOiA4MDAwKSpmcmFtZV9zaXplIC8gKHN0LT5GcyAqIDgpKQot
ICAgICAgIHN0LT5tb2RlID0gTU9ERV9DRUxUX09OTFk7Ci0KLSAgICBpZiAoc3QtPnN0cmVhbV9j
aGFubmVscyA9PSAxICYmIHN0LT5wcmV2X2NoYW5uZWxzID09MiAmJiBzdC0+c2lsa19tb2RlLnRv
TW9ubz09MAotICAgICAgICAgICYmIHN0LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZICYmIHN0LT5w
cmV2X21vZGUgIT0gTU9ERV9DRUxUX09OTFkpCi0gICAgewotICAgICAgIC8qIERlbGF5IHN0ZXJl
by0+bW9ubyB0cmFuc2l0aW9uIGJ5IHR3byBmcmFtZXMgc28gdGhhdCBTSUxLIGNhbiBkbyBhIHNt
b290aCBkb3dubWl4ICovCi0gICAgICAgc3QtPnNpbGtfbW9kZS50b01vbm8gPSAxOwotICAgICAg
IHN0LT5zdHJlYW1fY2hhbm5lbHMgPSAyOwotICAgIH0gZWxzZSB7Ci0gICAgICAgc3QtPnNpbGtf
bW9kZS50b01vbm8gPSAwOwotICAgIH0KIAogICAgIGlmIChzdC0+cHJldl9tb2RlID4gMCAmJgog
ICAgICAgICAoKHN0LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZICYmIHN0LT5wcmV2X21vZGUgPT0g
TU9ERV9DRUxUX09OTFkpIHx8CkBAIC0xMjI2LDI0ICsxNDI2LDIzIEBAIG9wdXNfaW50MzIgb3B1
c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBp
bnQgZnJhbWVfCiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9Ci0gICAgLyogRm9yIHRo
ZSBmaXJzdCBmcmFtZSBhdCBhIG5ldyBTSUxLIGJhbmR3aWR0aCAqLwotICAgIGlmIChzdC0+c2ls
a19id19zd2l0Y2gpCi0gICAgewotICAgICAgIHJlZHVuZGFuY3kgPSAxOwotICAgICAgIGNlbHRf
dG9fc2lsayA9IDE7Ci0gICAgICAgc3QtPnNpbGtfYndfc3dpdGNoID0gMDsKLSAgICAgICBwcmVm
aWxsPTE7Ci0gICAgfQogCi0gICAgaWYgKHJlZHVuZGFuY3kpCisgICAgLyogV2hlbiBlbmNvZGlu
ZyBtdWx0aWZyYW1lcywgd2UgY2FuIGFzayBmb3IgYSBzd2l0Y2ggdG8gQ0VMVCBvbmx5IGluIHRo
ZSBsYXN0IGZyYW1lLiBUaGlzIHN3aXRjaAorICAgICAqIGlzIHByb2Nlc3NlZCBhYm92ZSBhcyB0
aGUgcmVxdWVzdGVkIG1vZGUgc2hvdWxkbid0IGludGVycnVwdCBzdGVyZW8tPm1vbm8gdHJhbnNp
dGlvbi4gKi8KKyAgICBpZiAoc3QtPnN0cmVhbV9jaGFubmVscyA9PSAxICYmIHN0LT5wcmV2X2No
YW5uZWxzID09MiAmJiBzdC0+c2lsa19tb2RlLnRvTW9ubz09MAorICAgICAgICAgICYmIHN0LT5t
b2RlICE9IE1PREVfQ0VMVF9PTkxZICYmIHN0LT5wcmV2X21vZGUgIT0gTU9ERV9DRUxUX09OTFkp
CiAgICAgewotICAgICAgIC8qIEZhaXIgc2hhcmUgb2YgdGhlIG1heCBzaXplIGFsbG93ZWQgKi8K
LSAgICAgICByZWR1bmRhbmN5X2J5dGVzID0gSU1JTigyNTcsIG1heF9kYXRhX2J5dGVzKihvcHVz
X2ludDMyKShzdC0+RnMvMjAwKS8oZnJhbWVfc2l6ZStzdC0+RnMvMjAwKSk7Ci0gICAgICAgLyog
Rm9yIFZCUiwgdGFyZ2V0IHRoZSBhY3R1YWwgYml0cmF0ZSAoc3ViamVjdCB0byB0aGUgbGltaXQg
YWJvdmUpICovCi0gICAgICAgaWYgKHN0LT51c2VfdmJyKQotICAgICAgICAgIHJlZHVuZGFuY3lf
Ynl0ZXMgPSBJTUlOKHJlZHVuZGFuY3lfYnl0ZXMsIHN0LT5iaXRyYXRlX2Jwcy8xNjAwKTsKKyAg
ICAgICAvKiBEZWxheSBzdGVyZW8tPm1vbm8gdHJhbnNpdGlvbiBieSB0d28gZnJhbWVzIHNvIHRo
YXQgU0lMSyBjYW4gZG8gYSBzbW9vdGggZG93bm1peCAqLworICAgICAgIHN0LT5zaWxrX21vZGUu
dG9Nb25vID0gMTsKKyAgICAgICBzdC0+c3RyZWFtX2NoYW5uZWxzID0gMjsKKyAgICB9IGVsc2Ug
eworICAgICAgIHN0LT5zaWxrX21vZGUudG9Nb25vID0gMDsKICAgICB9CiAKKyAgICAvKiBVcGRh
dGUgZXF1aXZhbGVudCByYXRlIHdpdGggbW9kZSBkZWNpc2lvbi4gKi8KKyAgICBlcXVpdl9yYXRl
ID0gY29tcHV0ZV9lcXVpdl9yYXRlKHN0LT5iaXRyYXRlX2Jwcywgc3QtPnN0cmVhbV9jaGFubmVs
cywgc3QtPkZzL2ZyYW1lX3NpemUsCisgICAgICAgICAgc3QtPnVzZV92YnIsIHN0LT5tb2RlLCBz
dC0+c2lsa19tb2RlLmNvbXBsZXhpdHksIHN0LT5zaWxrX21vZGUucGFja2V0TG9zc1BlcmNlbnRh
Z2UpOworCiAgICAgaWYgKHN0LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZICYmIHN0LT5wcmV2X21v
ZGUgPT0gTU9ERV9DRUxUX09OTFkpCiAgICAgewogICAgICAgICBzaWxrX0VuY0NvbnRyb2xTdHJ1
Y3QgZHVtbXk7CkBAIC0xMjU3LDE3ICsxNDU2LDcgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9u
YXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8K
ICAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAqdm9pY2VfYmFuZHdpZHRoX3RocmVzaG9sZHMsICpt
dXNpY19iYW5kd2lkdGhfdGhyZXNob2xkczsKICAgICAgICAgb3B1c19pbnQzMiBiYW5kd2lkdGhf
dGhyZXNob2xkc1s4XTsKICAgICAgICAgaW50IGJhbmR3aWR0aCA9IE9QVVNfQkFORFdJRFRIX0ZV
TExCQU5EOwotICAgICAgICBvcHVzX2ludDMyIGVxdWl2X3JhdGUyOwogCi0gICAgICAgIGVxdWl2
X3JhdGUyID0gZXF1aXZfcmF0ZTsKLSAgICAgICAgaWYgKHN0LT5tb2RlICE9IE1PREVfQ0VMVF9P
TkxZKQotICAgICAgICB7Ci0gICAgICAgICAgIC8qIEFkanVzdCB0aGUgdGhyZXNob2xkICsvLSAx
MCUgZGVwZW5kaW5nIG9uIGNvbXBsZXhpdHkgKi8KLSAgICAgICAgICAgZXF1aXZfcmF0ZTIgPSBl
cXVpdl9yYXRlMiAqICg0NStzdC0+c2lsa19tb2RlLmNvbXBsZXhpdHkpLzUwOwotICAgICAgICAg
ICAvKiBDQlIgaXMgbGVzcyBlZmZpY2llbnQgYnkgfjEga2IvcyAqLwotICAgICAgICAgICBpZiAo
IXN0LT51c2VfdmJyKQotICAgICAgICAgICAgICBlcXVpdl9yYXRlMiAtPSAxMDAwOwotICAgICAg
ICB9CiAgICAgICAgIGlmIChzdC0+Y2hhbm5lbHM9PTIgJiYgc3QtPmZvcmNlX2NoYW5uZWxzIT0x
KQogICAgICAgICB7CiAgICAgICAgICAgIHZvaWNlX2JhbmR3aWR0aF90aHJlc2hvbGRzID0gc3Rl
cmVvX3ZvaWNlX2JhbmR3aWR0aF90aHJlc2hvbGRzOwpAQCAtMTI4OCwxNSArMTQ3NywxNSBAQCBv
cHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNf
dmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAgICAgICAgaHlzdGVyZXNpcyA9IGJhbmR3aWR0
aF90aHJlc2hvbGRzWzIqKGJhbmR3aWR0aC1PUFVTX0JBTkRXSURUSF9NRURJVU1CQU5EKSsxXTsK
ICAgICAgICAgICAgIGlmICghc3QtPmZpcnN0KQogICAgICAgICAgICAgewotICAgICAgICAgICAg
ICAgIGlmIChzdC0+YmFuZHdpZHRoID49IGJhbmR3aWR0aCkKKyAgICAgICAgICAgICAgICBpZiAo
c3QtPmF1dG9fYmFuZHdpZHRoID49IGJhbmR3aWR0aCkKICAgICAgICAgICAgICAgICAgICAgdGhy
ZXNob2xkIC09IGh5c3RlcmVzaXM7CiAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAg
ICAgICAgICB0aHJlc2hvbGQgKz0gaHlzdGVyZXNpczsKICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIGlmIChlcXVpdl9yYXRlMiA+PSB0aHJlc2hvbGQpCisgICAgICAgICAgICBpZiAoZXF1aXZf
cmF0ZSA+PSB0aHJlc2hvbGQpCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0gd2hp
bGUgKC0tYmFuZHdpZHRoPk9QVVNfQkFORFdJRFRIX05BUlJPV0JBTkQpOwotICAgICAgICBzdC0+
YmFuZHdpZHRoID0gYmFuZHdpZHRoOworICAgICAgICBzdC0+YmFuZHdpZHRoID0gc3QtPmF1dG9f
YmFuZHdpZHRoID0gYmFuZHdpZHRoOwogICAgICAgICAvKiBQcmV2ZW50cyBhbnkgdHJhbnNpdGlv
biB0byBTV0IvRkIgdW50aWwgdGhlIFNJTEsgbGF5ZXIgaGFzIGZ1bGx5CiAgICAgICAgICAgIHN3
aXRjaGVkIHRvIFdCIG1vZGUgYW5kIHR1cm5lZCB0aGUgdmFyaWFibGUgTFAgZmlsdGVyIG9mZiAq
LwogICAgICAgICBpZiAoIXN0LT5maXJzdCAmJiBzdC0+bW9kZSAhPSBNT0RFX0NFTFRfT05MWSAm
JiAhc3QtPnNpbGtfbW9kZS5pbldCbW9kZVdpdGhvdXRWYXJpYWJsZUxQICYmIHN0LT5iYW5kd2lk
dGggPiBPUFVTX0JBTkRXSURUSF9XSURFQkFORCkKQEAgLTEzNDksNiArMTUzOCw4IEBAIG9wdXNf
aW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwx
NiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAgc3QtPmJhbmR3aWR0aCA9IElNSU4oc3QtPmJhbmR3
aWR0aCwgc3QtPmRldGVjdGVkX2JhbmR3aWR0aCk7CiAgICAgfQogI2VuZGlmCisgICAgc3QtPnNp
bGtfbW9kZS5MQlJSX2NvZGVkID0gZGVjaWRlX2ZlYyhzdC0+c2lsa19tb2RlLnVzZUluQmFuZEZF
Qywgc3QtPnNpbGtfbW9kZS5wYWNrZXRMb3NzUGVyY2VudGFnZSwKKyAgICAgICAgICBzdC0+c2ls
a19tb2RlLkxCUlJfY29kZWQsIHN0LT5tb2RlLCAmc3QtPmJhbmR3aWR0aCwgZXF1aXZfcmF0ZSk7
CiAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfTFNCX0RFUFRIKGxzYl9k
ZXB0aCkpOwogCiAgICAgLyogQ0VMVCBtb2RlIGRvZXNuJ3Qgc3VwcG9ydCBtZWRpdW1iYW5kLCB1
c2Ugd2lkZWJhbmQgaW5zdGVhZCAqLwpAQCAtMTM1NywxNSArMTU0OCwzNCBAQCBvcHVzX2ludDMy
IG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBj
bSwgaW50IGZyYW1lXwogICAgIGlmIChzdC0+bGZlKQogICAgICAgIHN0LT5iYW5kd2lkdGggPSBP
UFVTX0JBTkRXSURUSF9OQVJST1dCQU5EOwogCi0gICAgLyogQ2FuJ3Qgc3VwcG9ydCBoaWdoZXIg
dGhhbiB3aWRlYmFuZCBmb3IgPjIwIG1zIGZyYW1lcyAqLwotICAgIGlmIChmcmFtZV9zaXplID4g
c3QtPkZzLzUwICYmIChzdC0+bW9kZSA9PSBNT0RFX0NFTFRfT05MWSB8fCBzdC0+YmFuZHdpZHRo
ID4gT1BVU19CQU5EV0lEVEhfV0lERUJBTkQpKQorICAgIGN1cnJfYmFuZHdpZHRoID0gc3QtPmJh
bmR3aWR0aDsKKworICAgIC8qIENob29zZXMgdGhlIGFwcHJvcHJpYXRlIG1vZGUgZm9yIHNwZWVj
aAorICAgICAgICpORVZFUiogc3dpdGNoIHRvL2Zyb20gQ0VMVC1vbmx5IG1vZGUgaGVyZSBhcyB0
aGlzIHdpbGwgaW52YWxpZGF0ZSBzb21lIGFzc3VtcHRpb25zICovCisgICAgaWYgKHN0LT5tb2Rl
ID09IE1PREVfU0lMS19PTkxZICYmIGN1cnJfYmFuZHdpZHRoID4gT1BVU19CQU5EV0lEVEhfV0lE
RUJBTkQpCisgICAgICAgIHN0LT5tb2RlID0gTU9ERV9IWUJSSUQ7CisgICAgaWYgKHN0LT5tb2Rl
ID09IE1PREVfSFlCUklEICYmIGN1cnJfYmFuZHdpZHRoIDw9IE9QVVNfQkFORFdJRFRIX1dJREVC
QU5EKQorICAgICAgICBzdC0+bW9kZSA9IE1PREVfU0lMS19PTkxZOworCisgICAgLyogQ2FuJ3Qg
c3VwcG9ydCBoaWdoZXIgdGhhbiA+NjAgbXMgZnJhbWVzLCBhbmQgPjIwIG1zIHdoZW4gaW4gSHli
cmlkIG9yIENFTFQtb25seSBtb2RlcyAqLworICAgIGlmICgoZnJhbWVfc2l6ZSA+IHN0LT5Gcy81
MCAmJiAoc3QtPm1vZGUgIT0gTU9ERV9TSUxLX09OTFkpKSB8fCBmcmFtZV9zaXplID4gMypzdC0+
RnMvNTApCiAgICAgewotICAgICAgIFZBUkRFQ0wodW5zaWduZWQgY2hhciwgdG1wX2RhdGEpOwor
ICAgICAgIGludCBlbmNfZnJhbWVfc2l6ZTsKICAgICAgICBpbnQgbmJfZnJhbWVzOwotICAgICAg
IGludCBiYWtfbW9kZSwgYmFrX2JhbmR3aWR0aCwgYmFrX2NoYW5uZWxzLCBiYWtfdG9fbW9ubzsK
LSAgICAgICBWQVJERUNMKE9wdXNSZXBhY2tldGl6ZXIsIHJwKTsKLSAgICAgICBvcHVzX2ludDMy
IGJ5dGVzX3Blcl9mcmFtZTsKLSAgICAgICBvcHVzX2ludDMyIHJlcGFja2V0aXplX2xlbjsKKwor
ICAgICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX1NJTEtfT05MWSkKKyAgICAgICB7CisgICAgICAg
ICBpZiAoZnJhbWVfc2l6ZSA9PSAyKnN0LT5Gcy8yNSkgIC8qIDgwIG1zIC0+IDJ4IDQwIG1zICov
CisgICAgICAgICAgIGVuY19mcmFtZV9zaXplID0gc3QtPkZzLzI1OworICAgICAgICAgZWxzZSBp
ZiAoZnJhbWVfc2l6ZSA9PSAzKnN0LT5Gcy8yNSkgIC8qIDEyMCBtcyAtPiAyeCA2MCBtcyAqLwor
ICAgICAgICAgICBlbmNfZnJhbWVfc2l6ZSA9IDMqc3QtPkZzLzUwOworICAgICAgICAgZWxzZSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAxMDAgbXMgLT4gNXggMjAgbXMgKi8KKyAgICAg
ICAgICAgZW5jX2ZyYW1lX3NpemUgPSBzdC0+RnMvNTA7CisgICAgICAgfQorICAgICAgIGVsc2UK
KyAgICAgICAgIGVuY19mcmFtZV9zaXplID0gc3QtPkZzLzUwOworCisgICAgICAgbmJfZnJhbWVz
ID0gZnJhbWVfc2l6ZS9lbmNfZnJhbWVfc2l6ZTsKIAogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQ
SQogICAgICAgIGlmIChhbmFseXNpc19yZWFkX3Bvc19iYWshPSAtMSkKQEAgLTEzNzUsNzQgKzE1
ODUsMzMgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBj
b25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICB9CiAjZW5kaWYKIAotICAg
ICAgIG5iX2ZyYW1lcyA9IGZyYW1lX3NpemUgPiBzdC0+RnMvMjUgPyAzIDogMjsKLSAgICAgICBi
eXRlc19wZXJfZnJhbWUgPSBJTUlOKDEyNzYsKG91dF9kYXRhX2J5dGVzLTMpL25iX2ZyYW1lcyk7
Ci0KLSAgICAgICBBTExPQyh0bXBfZGF0YSwgbmJfZnJhbWVzKmJ5dGVzX3Blcl9mcmFtZSwgdW5z
aWduZWQgY2hhcik7Ci0KLSAgICAgICBBTExPQyhycCwgMSwgT3B1c1JlcGFja2V0aXplcik7Ci0g
ICAgICAgb3B1c19yZXBhY2tldGl6ZXJfaW5pdChycCk7Ci0KLSAgICAgICBiYWtfbW9kZSA9IHN0
LT51c2VyX2ZvcmNlZF9tb2RlOwotICAgICAgIGJha19iYW5kd2lkdGggPSBzdC0+dXNlcl9iYW5k
d2lkdGg7Ci0gICAgICAgYmFrX2NoYW5uZWxzID0gc3QtPmZvcmNlX2NoYW5uZWxzOworICAgICAg
IHJldCA9IGVuY29kZV9tdWx0aWZyYW1lX3BhY2tldChzdCwgcGNtLCBuYl9mcmFtZXMsIGVuY19m
cmFtZV9zaXplLCBkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBv
dXRfZGF0YV9ieXRlcywgdG9fY2VsdCwgbHNiX2RlcHRoLCBmbG9hdF9hcGkpOwogCi0gICAgICAg
c3QtPnVzZXJfZm9yY2VkX21vZGUgPSBzdC0+bW9kZTsKLSAgICAgICBzdC0+dXNlcl9iYW5kd2lk
dGggPSBzdC0+YmFuZHdpZHRoOwotICAgICAgIHN0LT5mb3JjZV9jaGFubmVscyA9IHN0LT5zdHJl
YW1fY2hhbm5lbHM7Ci0gICAgICAgYmFrX3RvX21vbm8gPSBzdC0+c2lsa19tb2RlLnRvTW9ubzsK
LQotICAgICAgIGlmIChiYWtfdG9fbW9ubykKLSAgICAgICAgICBzdC0+Zm9yY2VfY2hhbm5lbHMg
PSAxOwotICAgICAgIGVsc2UKLSAgICAgICAgICBzdC0+cHJldl9jaGFubmVscyA9IHN0LT5zdHJl
YW1fY2hhbm5lbHM7Ci0gICAgICAgZm9yIChpPTA7aTxuYl9mcmFtZXM7aSsrKQotICAgICAgIHsK
LSAgICAgICAgICBpbnQgdG1wX2xlbjsKLSAgICAgICAgICBzdC0+c2lsa19tb2RlLnRvTW9ubyA9
IDA7Ci0gICAgICAgICAgLyogV2hlbiBzd2l0Y2hpbmcgZnJvbSBTSUxLL0h5YnJpZCB0byBDRUxU
LCBvbmx5IGFzayBmb3IgYSBzd2l0Y2ggYXQgdGhlIGxhc3QgZnJhbWUgKi8KLSAgICAgICAgICBp
ZiAodG9fY2VsdCAmJiBpPT1uYl9mcmFtZXMtMSkKLSAgICAgICAgICAgICBzdC0+dXNlcl9mb3Jj
ZWRfbW9kZSA9IE1PREVfQ0VMVF9PTkxZOwotICAgICAgICAgIHRtcF9sZW4gPSBvcHVzX2VuY29k
ZV9uYXRpdmUoc3QsIHBjbStpKihzdC0+Y2hhbm5lbHMqc3QtPkZzLzUwKSwgc3QtPkZzLzUwLAot
ICAgICAgICAgICAgICAgIHRtcF9kYXRhK2kqYnl0ZXNfcGVyX2ZyYW1lLCBieXRlc19wZXJfZnJh
bWUsIGxzYl9kZXB0aCwKLSAgICAgICAgICAgICAgICBOVUxMLCAwLCBjMSwgYzIsIGFuYWx5c2lz
X2NoYW5uZWxzLCBkb3dubWl4LCBmbG9hdF9hcGkpOwotICAgICAgICAgIGlmICh0bXBfbGVuPDAp
Ci0gICAgICAgICAgewotICAgICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7Ci0gICAgICAgICAgICAg
cmV0dXJuIE9QVVNfSU5URVJOQUxfRVJST1I7Ci0gICAgICAgICAgfQotICAgICAgICAgIHJldCA9
IG9wdXNfcmVwYWNrZXRpemVyX2NhdChycCwgdG1wX2RhdGEraSpieXRlc19wZXJfZnJhbWUsIHRt
cF9sZW4pOwotICAgICAgICAgIGlmIChyZXQ8MCkKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAg
UkVTVE9SRV9TVEFDSzsKLSAgICAgICAgICAgICByZXR1cm4gT1BVU19JTlRFUk5BTF9FUlJPUjsK
LSAgICAgICAgICB9Ci0gICAgICAgfQotICAgICAgIGlmIChzdC0+dXNlX3ZicikKLSAgICAgICAg
ICByZXBhY2tldGl6ZV9sZW4gPSBvdXRfZGF0YV9ieXRlczsKLSAgICAgICBlbHNlCi0gICAgICAg
ICAgcmVwYWNrZXRpemVfbGVuID0gSU1JTigzKnN0LT5iaXRyYXRlX2Jwcy8oMyo4KjUwL25iX2Zy
YW1lcyksIG91dF9kYXRhX2J5dGVzKTsKLSAgICAgICByZXQgPSBvcHVzX3JlcGFja2V0aXplcl9v
dXRfcmFuZ2VfaW1wbChycCwgMCwgbmJfZnJhbWVzLCBkYXRhLCByZXBhY2tldGl6ZV9sZW4sIDAs
ICFzdC0+dXNlX3Zicik7Ci0gICAgICAgaWYgKHJldDwwKQotICAgICAgIHsKLSAgICAgICAgICBS
RVNUT1JFX1NUQUNLOwotICAgICAgICAgIHJldHVybiBPUFVTX0lOVEVSTkFMX0VSUk9SOwotICAg
ICAgIH0KLSAgICAgICBzdC0+dXNlcl9mb3JjZWRfbW9kZSA9IGJha19tb2RlOwotICAgICAgIHN0
LT51c2VyX2JhbmR3aWR0aCA9IGJha19iYW5kd2lkdGg7Ci0gICAgICAgc3QtPmZvcmNlX2NoYW5u
ZWxzID0gYmFrX2NoYW5uZWxzOwotICAgICAgIHN0LT5zaWxrX21vZGUudG9Nb25vID0gYmFrX3Rv
X21vbm87CiAgICAgICAgUkVTVE9SRV9TVEFDSzsKICAgICAgICByZXR1cm4gcmV0OwogICAgIH0K
LSAgICBjdXJyX2JhbmR3aWR0aCA9IHN0LT5iYW5kd2lkdGg7CiAKLSAgICAvKiBDaG9vc2VzIHRo
ZSBhcHByb3ByaWF0ZSBtb2RlIGZvciBzcGVlY2gKLSAgICAgICAqTkVWRVIqIHN3aXRjaCB0by9m
cm9tIENFTFQtb25seSBtb2RlIGhlcmUgYXMgdGhpcyB3aWxsIGludmFsaWRhdGUgc29tZSBhc3N1
bXB0aW9ucyAqLwotICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX1NJTEtfT05MWSAmJiBjdXJyX2Jh
bmR3aWR0aCA+IE9QVVNfQkFORFdJRFRIX1dJREVCQU5EKQotICAgICAgICBzdC0+bW9kZSA9IE1P
REVfSFlCUklEOwotICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCAmJiBjdXJyX2JhbmR3
aWR0aCA8PSBPUFVTX0JBTkRXSURUSF9XSURFQkFORCkKLSAgICAgICAgc3QtPm1vZGUgPSBNT0RF
X1NJTEtfT05MWTsKKyAgICAvKiBGb3IgdGhlIGZpcnN0IGZyYW1lIGF0IGEgbmV3IFNJTEsgYmFu
ZHdpZHRoICovCisgICAgaWYgKHN0LT5zaWxrX2J3X3N3aXRjaCkKKyAgICB7CisgICAgICAgcmVk
dW5kYW5jeSA9IDE7CisgICAgICAgY2VsdF90b19zaWxrID0gMTsKKyAgICAgICBzdC0+c2lsa19i
d19zd2l0Y2ggPSAwOworICAgICAgIHByZWZpbGw9MTsKKyAgICB9CisKKyAgICAvKiBJZiB3ZSBk
ZWNpZGVkIHRvIGdvIHdpdGggQ0VMVCwgbWFrZSBzdXJlIHJlZHVuZGFuY3kgaXMgb2ZmLCBubyBt
YXR0ZXIgd2hhdAorICAgICAgIHdlIGRlY2lkZWQgZWFybGllci4gKi8KKyAgICBpZiAoc3QtPm1v
ZGUgPT0gTU9ERV9DRUxUX09OTFkpCisgICAgICAgIHJlZHVuZGFuY3kgPSAwOworCisgICAgaWYg
KHJlZHVuZGFuY3kpCisgICAgeworICAgICAgIHJlZHVuZGFuY3lfYnl0ZXMgPSBjb21wdXRlX3Jl
ZHVuZGFuY3lfYnl0ZXMobWF4X2RhdGFfYnl0ZXMsIHN0LT5iaXRyYXRlX2JwcywgZnJhbWVfcmF0
ZSwgc3QtPnN0cmVhbV9jaGFubmVscyk7CisgICAgICAgaWYgKHJlZHVuZGFuY3lfYnl0ZXMgPT0g
MCkKKyAgICAgICAgICByZWR1bmRhbmN5ID0gMDsKKyAgICB9CiAKICAgICAvKiBwcmludGYoIiVk
ICVkICVkICVkXG4iLCBzdC0+Yml0cmF0ZV9icHMsIHN0LT5zdHJlYW1fY2hhbm5lbHMsIHN0LT5t
b2RlLCBjdXJyX2JhbmR3aWR0aCk7ICovCiAgICAgYnl0ZXNfdGFyZ2V0ID0gSU1JTihtYXhfZGF0
YV9ieXRlcy1yZWR1bmRhbmN5X2J5dGVzLCBzdC0+Yml0cmF0ZV9icHMgKiBmcmFtZV9zaXplIC8g
KHN0LT5GcyAqIDgpKSAtIDE7CkBAIC0xNDY3LDcgKzE2MzYsNyBAQCBvcHVzX2ludDMyIG9wdXNf
ZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50
IGZyYW1lXwogCiAgICAgaWYgKHN0LT5hcHBsaWNhdGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9OX1ZP
SVApCiAgICAgewotICAgICAgIGhwX2N1dG9mZihwY20sIGN1dG9mZl9IeiwgJnBjbV9idWZbdG90
YWxfYnVmZmVyKnN0LT5jaGFubmVsc10sIHN0LT5ocF9tZW0sIGZyYW1lX3NpemUsIHN0LT5jaGFu
bmVscywgc3QtPkZzKTsKKyAgICAgICBocF9jdXRvZmYocGNtLCBjdXRvZmZfSHosICZwY21fYnVm
W3RvdGFsX2J1ZmZlcipzdC0+Y2hhbm5lbHNdLCBzdC0+aHBfbWVtLCBmcmFtZV9zaXplLCBzdC0+
Y2hhbm5lbHMsIHN0LT5Gcywgc3QtPmFyY2gpOwogICAgIH0gZWxzZSB7CiAgICAgICAgZGNfcmVq
ZWN0KHBjbSwgMywgJnBjbV9idWZbdG90YWxfYnVmZmVyKnN0LT5jaGFubmVsc10sIHN0LT5ocF9t
ZW0sIGZyYW1lX3NpemUsIHN0LT5jaGFubmVscywgc3QtPkZzKTsKICAgICB9CkBAIC0xNDkyLDYg
KzE2NjEsNyBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3Qs
IGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgIGlmIChzdC0+bW9kZSAhPSBN
T0RFX0NFTFRfT05MWSkKICAgICB7CiAgICAgICAgIG9wdXNfaW50MzIgdG90YWxfYml0UmF0ZSwg
Y2VsdF9yYXRlOworICAgICAgICBvcHVzX2ludCBhY3Rpdml0eTsKICNpZmRlZiBGSVhFRF9QT0lO
VAogICAgICAgIGNvbnN0IG9wdXNfaW50MTYgKnBjbV9zaWxrOwogI2Vsc2UKQEAgLTE0OTksMzAg
KzE2NjksMzEgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0
LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICBBTExPQyhwY21fc2ls
aywgc3QtPmNoYW5uZWxzKmZyYW1lX3NpemUsIG9wdXNfaW50MTYpOwogI2VuZGlmCiAKKyAgICAg
ICAgYWN0aXZpdHkgPSBWQURfTk9fREVDSVNJT047CisjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJ
CisgICAgICAgIGlmKCBhbmFseXNpc19pbmZvLnZhbGlkICkgeworICAgICAgICAgICAgLyogSW5m
b3JtIFNJTEsgYWJvdXQgdGhlIE9wdXMgVkFEIGRlY2lzaW9uICovCisgICAgICAgICAgICBhY3Rp
dml0eSA9ICggYW5hbHlzaXNfaW5mby5hY3Rpdml0eV9wcm9iYWJpbGl0eSA+PSBEVFhfQUNUSVZJ
VFlfVEhSRVNIT0xEICk7CisgICAgICAgIH0KKyNlbmRpZgorCiAgICAgICAgIC8qIERpc3RyaWJ1
dGUgYml0cyBiZXR3ZWVuIFNJTEsgYW5kIENFTFQgKi8KICAgICAgICAgdG90YWxfYml0UmF0ZSA9
IDggKiBieXRlc190YXJnZXQgKiBmcmFtZV9yYXRlOwogICAgICAgICBpZiggc3QtPm1vZGUgPT0g
TU9ERV9IWUJSSUQgKSB7Ci0gICAgICAgICAgICBpbnQgSEJfZ2Fpbl9yZWY7CiAgICAgICAgICAg
ICAvKiBCYXNlIHJhdGUgZm9yIFNJTEsgKi8KLSAgICAgICAgICAgIHN0LT5zaWxrX21vZGUuYml0
UmF0ZSA9IHN0LT5zdHJlYW1fY2hhbm5lbHMgKiAoIDUwMDAgKyAxMDAwICogKCBzdC0+RnMgPT0g
MTAwICogZnJhbWVfc2l6ZSApICk7Ci0gICAgICAgICAgICBpZiggY3Vycl9iYW5kd2lkdGggPT0g
T1BVU19CQU5EV0lEVEhfU1VQRVJXSURFQkFORCApIHsKLSAgICAgICAgICAgICAgICAvKiBTSUxL
IGdldHMgMi8zIG9mIHRoZSByZW1haW5pbmcgYml0cyAqLwotICAgICAgICAgICAgICAgIHN0LT5z
aWxrX21vZGUuYml0UmF0ZSArPSAoIHRvdGFsX2JpdFJhdGUgLSBzdC0+c2lsa19tb2RlLmJpdFJh
dGUgKSAqIDIgLyAzOwotICAgICAgICAgICAgfSBlbHNlIHsgLyogRlVMTEJBTkQgKi8KLSAgICAg
ICAgICAgICAgICAvKiBTSUxLIGdldHMgMy81IG9mIHRoZSByZW1haW5pbmcgYml0cyAqLwotICAg
ICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUuYml0UmF0ZSArPSAoIHRvdGFsX2JpdFJhdGUgLSBz
dC0+c2lsa19tb2RlLmJpdFJhdGUgKSAqIDMgLyA1OwotICAgICAgICAgICAgfQotICAgICAgICAg
ICAgLyogRG9uJ3QgbGV0IFNJTEsgdXNlIG1vcmUgdGhhbiA4MCUgKi8KLSAgICAgICAgICAgIGlm
KCBzdC0+c2lsa19tb2RlLmJpdFJhdGUgPiB0b3RhbF9iaXRSYXRlICogNC81ICkgewotICAgICAg
ICAgICAgICAgIHN0LT5zaWxrX21vZGUuYml0UmF0ZSA9IHRvdGFsX2JpdFJhdGUgKiA0LzU7Ci0g
ICAgICAgICAgICB9CisgICAgICAgICAgICBzdC0+c2lsa19tb2RlLmJpdFJhdGUgPSBjb21wdXRl
X3NpbGtfcmF0ZV9mb3JfaHlicmlkKHRvdGFsX2JpdFJhdGUsCisgICAgICAgICAgICAgICAgICBj
dXJyX2JhbmR3aWR0aCwgc3QtPkZzID09IDUwICogZnJhbWVfc2l6ZSwgc3QtPnVzZV92YnIsIHN0
LT5zaWxrX21vZGUuTEJSUl9jb2RlZCk7CiAgICAgICAgICAgICBpZiAoIXN0LT5lbmVyZ3lfbWFz
a2luZykKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIC8qIEluY3JlYXNpbmdseSBhdHRl
bnVhdGUgaGlnaCBiYW5kIHdoZW4gaXQgZ2V0cyBhbGxvY2F0ZWQgZmV3ZXIgYml0cyAqLwogICAg
ICAgICAgICAgICAgY2VsdF9yYXRlID0gdG90YWxfYml0UmF0ZSAtIHN0LT5zaWxrX21vZGUuYml0
UmF0ZTsKLSAgICAgICAgICAgICAgIEhCX2dhaW5fcmVmID0gKGN1cnJfYmFuZHdpZHRoID09IE9Q
VVNfQkFORFdJRFRIX1NVUEVSV0lERUJBTkQpID8gMzAwMCA6IDM2MDA7Ci0gICAgICAgICAgICAg
ICBIQl9nYWluID0gU0hMMzIoKG9wdXNfdmFsMzIpY2VsdF9yYXRlLCA5KSAvIFNIUjMyKChvcHVz
X3ZhbDMyKWNlbHRfcmF0ZSArIHN0LT5zdHJlYW1fY2hhbm5lbHMgKiBIQl9nYWluX3JlZiwgNik7
Ci0gICAgICAgICAgICAgICBIQl9nYWluID0gSEJfZ2FpbiA8IChvcHVzX3ZhbDMyKVExNU9ORSo2
LzcgPyBIQl9nYWluICsgUTE1T05FLzcgOiBRMTVPTkU7CisgICAgICAgICAgICAgICBIQl9nYWlu
ID0gUTE1T05FIC0gU0hSMzIoY2VsdF9leHAyKC1jZWx0X3JhdGUgKiBRQ09OU1QxNigxLmYvMTAy
NCwgMTApKSwgMSk7CisjaWZuZGVmIEZJWEVEX1BPSU5UCisgICAgICAgICAgICAgICAvKiBTYW5p
dHkgY2hlY2sgb2YgaGlnaCBiYW5kIGdhaW4gKi8KKyAgICAgICAgICAgICAgIGlmIChjZWx0X2lz
bmFuKEhCX2dhaW4pKSB7CisgICAgICAgICAgICAgICAgICAgSEJfZ2FpbiA9IFExNU9ORTsKKyAg
ICAgICAgICAgICAgIH0KKyNlbmRpZgogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2Ugewog
ICAgICAgICAgICAgLyogU0lMSyBnZXRzIGFsbCBiaXRzICovCkBAIC0xNTY5LDcgKzE3NDAsNiBA
QCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9w
dXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAgICAgICAgICBzdC0+c2lsa19tb2RlLmJp
dFJhdGUgKz0gMypyYXRlX29mZnNldC81OwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAg
IHN0LT5zaWxrX21vZGUuYml0UmF0ZSArPSByYXRlX29mZnNldDsKLSAgICAgICAgICAgYnl0ZXNf
dGFyZ2V0ICs9IHJhdGVfb2Zmc2V0ICogZnJhbWVfc2l6ZSAvICg4ICogc3QtPkZzKTsKICAgICAg
ICAgfQogCiAgICAgICAgIHN0LT5zaWxrX21vZGUucGF5bG9hZFNpemVfbXMgPSAxMDAwICogZnJh
bWVfc2l6ZSAvIHN0LT5GczsKQEAgLTE1OTAsNDAgKzE3NjAsNTIgQEAgb3B1c19pbnQzMiBvcHVz
X2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGlu
dCBmcmFtZV8KICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUubWluSW50ZXJuYWxTYW1wbGVSYXRl
ID0gODAwMDsKICAgICAgICAgfQogCisgICAgICAgIHN0LT5zaWxrX21vZGUubWF4SW50ZXJuYWxT
YW1wbGVSYXRlID0gMTYwMDA7CiAgICAgICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX1NJTEtfT05M
WSkKICAgICAgICAgewogICAgICAgICAgICBvcHVzX2ludDMyIGVmZmVjdGl2ZV9tYXhfcmF0ZSA9
IG1heF9yYXRlOwotICAgICAgICAgICBzdC0+c2lsa19tb2RlLm1heEludGVybmFsU2FtcGxlUmF0
ZSA9IDE2MDAwOwogICAgICAgICAgICBpZiAoZnJhbWVfcmF0ZSA+IDUwKQogICAgICAgICAgICAg
ICBlZmZlY3RpdmVfbWF4X3JhdGUgPSBlZmZlY3RpdmVfbWF4X3JhdGUqMi8zOwotICAgICAgICAg
ICBpZiAoZWZmZWN0aXZlX21heF9yYXRlIDwgMTMwMDApCisgICAgICAgICAgIGlmIChlZmZlY3Rp
dmVfbWF4X3JhdGUgPCA4MDAwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIHN0LT5zaWxr
X21vZGUubWF4SW50ZXJuYWxTYW1wbGVSYXRlID0gMTIwMDA7CiAgICAgICAgICAgICAgIHN0LT5z
aWxrX21vZGUuZGVzaXJlZEludGVybmFsU2FtcGxlUmF0ZSA9IElNSU4oMTIwMDAsIHN0LT5zaWxr
X21vZGUuZGVzaXJlZEludGVybmFsU2FtcGxlUmF0ZSk7CiAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgaWYgKGVmZmVjdGl2ZV9tYXhfcmF0ZSA8IDk2MDApCisgICAgICAgICAgIGlmIChlZmZlY3Rp
dmVfbWF4X3JhdGUgPCA3MDAwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIHN0LT5zaWxr
X21vZGUubWF4SW50ZXJuYWxTYW1wbGVSYXRlID0gODAwMDsKICAgICAgICAgICAgICAgc3QtPnNp
bGtfbW9kZS5kZXNpcmVkSW50ZXJuYWxTYW1wbGVSYXRlID0gSU1JTig4MDAwLCBzdC0+c2lsa19t
b2RlLmRlc2lyZWRJbnRlcm5hbFNhbXBsZVJhdGUpOwogICAgICAgICAgICB9Ci0gICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4SW50ZXJuYWxTYW1wbGVSYXRlID0g
MTYwMDA7CiAgICAgICAgIH0KIAogICAgICAgICBzdC0+c2lsa19tb2RlLnVzZUNCUiA9ICFzdC0+
dXNlX3ZicjsKIAogICAgICAgICAvKiBDYWxsIFNJTEsgZW5jb2RlciBmb3IgdGhlIGxvdyBiYW5k
ICovCi0gICAgICAgIG5CeXRlcyA9IElNSU4oMTI3NSwgbWF4X2RhdGFfYnl0ZXMtMS1yZWR1bmRh
bmN5X2J5dGVzKTsKIAotICAgICAgICBzdC0+c2lsa19tb2RlLm1heEJpdHMgPSBuQnl0ZXMqODsK
LSAgICAgICAgLyogT25seSBhbGxvdyB1cCB0byA5MCUgb2YgdGhlIGJpdHMgZm9yIGh5YnJpZCBt
b2RlKi8KLSAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQotICAgICAgICAgICBz
dC0+c2lsa19tb2RlLm1heEJpdHMgPSAob3B1c19pbnQzMilzdC0+c2lsa19tb2RlLm1heEJpdHMq
OS8xMDsKKyAgICAgICAgLyogTWF4IGJpdHMgZm9yIFNJTEssIGNvdW50aW5nIFRvQywgcmVkdW5k
YW5jeSBieXRlcywgYW5kIG9wdGlvbmFsbHkgcmVkdW5kYW5jeS4gKi8KKyAgICAgICAgc3QtPnNp
bGtfbW9kZS5tYXhCaXRzID0gKG1heF9kYXRhX2J5dGVzLTEpKjg7CisgICAgICAgIGlmIChyZWR1
bmRhbmN5ICYmIHJlZHVuZGFuY3lfYnl0ZXMgPj0gMikKKyAgICAgICAgeworICAgICAgICAgICAv
KiBDb3VudGluZyAxIGJpdCBmb3IgcmVkdW5kYW5jeSBwb3NpdGlvbiBhbmQgMjAgYml0cyBmb3Ig
ZmxhZytzaXplIChvbmx5IGZvciBoeWJyaWQpLiAqLworICAgICAgICAgICBzdC0+c2lsa19tb2Rl
Lm1heEJpdHMgLT0gcmVkdW5kYW5jeV9ieXRlcyo4ICsgMTsKKyAgICAgICAgICAgaWYgKHN0LT5t
b2RlID09IE1PREVfSFlCUklEKQorICAgICAgICAgICAgICBzdC0+c2lsa19tb2RlLm1heEJpdHMg
LT0gMjA7CisgICAgICAgIH0KICAgICAgICAgaWYgKHN0LT5zaWxrX21vZGUudXNlQ0JSKQogICAg
ICAgICB7Ci0gICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4Qml0cyA9IChzdC0+c2lsa19tb2Rl
LmJpdFJhdGUgKiBmcmFtZV9zaXplIC8gKHN0LT5GcyAqIDgpKSo4OwotICAgICAgICAgICAvKiBS
ZWR1Y2UgdGhlIGluaXRpYWwgdGFyZ2V0IHRvIG1ha2UgaXQgZWFzaWVyIHRvIHJlYWNoIHRoZSBD
QlIgcmF0ZSAqLwotICAgICAgICAgICBzdC0+c2lsa19tb2RlLmJpdFJhdGUgPSBJTUFYKDEsIHN0
LT5zaWxrX21vZGUuYml0UmF0ZS0yMDAwKTsKKyAgICAgICAgICAgaWYgKHN0LT5tb2RlID09IE1P
REVfSFlCUklEKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4
Qml0cyA9IElNSU4oc3QtPnNpbGtfbW9kZS5tYXhCaXRzLCBzdC0+c2lsa19tb2RlLmJpdFJhdGUg
KiBmcmFtZV9zaXplIC8gc3QtPkZzKTsKKyAgICAgICAgICAgfQorICAgICAgICB9IGVsc2Ugewor
ICAgICAgICAgICAvKiBDb25zdHJhaW5lZCBWQlIuICovCisgICAgICAgICAgIGlmIChzdC0+bW9k
ZSA9PSBNT0RFX0hZQlJJRCkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAvKiBDb21wdXRl
IFNJTEsgYml0cmF0ZSBjb3JyZXNwb25kaW5nIHRvIHRoZSBtYXggdG90YWwgYml0cyBhdmFpbGFi
bGUgKi8KKyAgICAgICAgICAgICAgb3B1c19pbnQzMiBtYXhCaXRSYXRlID0gY29tcHV0ZV9zaWxr
X3JhdGVfZm9yX2h5YnJpZChzdC0+c2lsa19tb2RlLm1heEJpdHMqc3QtPkZzIC8gZnJhbWVfc2l6
ZSwKKyAgICAgICAgICAgICAgICAgICAgY3Vycl9iYW5kd2lkdGgsIHN0LT5GcyA9PSA1MCAqIGZy
YW1lX3NpemUsIHN0LT51c2VfdmJyLCBzdC0+c2lsa19tb2RlLkxCUlJfY29kZWQpOworICAgICAg
ICAgICAgICBzdC0+c2lsa19tb2RlLm1heEJpdHMgPSBtYXhCaXRSYXRlICogZnJhbWVfc2l6ZSAv
IHN0LT5GczsKKyAgICAgICAgICAgfQogICAgICAgICB9CiAKICAgICAgICAgaWYgKHByZWZpbGwp
CkBAIC0xNjQ2LDcgKzE4MjgsNyBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVz
RW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAgICAg
ICAgZm9yIChpPTA7aTxzdC0+ZW5jb2Rlcl9idWZmZXIqc3QtPmNoYW5uZWxzO2krKykKICAgICAg
ICAgICAgICAgICBwY21fc2lsa1tpXSA9IEZMT0FUMklOVDE2KHN0LT5kZWxheV9idWZmZXJbaV0p
OwogI2VuZGlmCi0gICAgICAgICAgICBzaWxrX0VuY29kZSggc2lsa19lbmMsICZzdC0+c2lsa19t
b2RlLCBwY21fc2lsaywgc3QtPmVuY29kZXJfYnVmZmVyLCBOVUxMLCAmemVybywgMSApOworICAg
ICAgICAgICAgc2lsa19FbmNvZGUoIHNpbGtfZW5jLCAmc3QtPnNpbGtfbW9kZSwgcGNtX3NpbGss
IHN0LT5lbmNvZGVyX2J1ZmZlciwgTlVMTCwgJnplcm8sIDEsIGFjdGl2aXR5ICk7CiAgICAgICAg
IH0KIAogI2lmZGVmIEZJWEVEX1BPSU5UCkBAIC0xNjU1LDIwICsxODM3LDE0IEBAIG9wdXNfaW50
MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAq
cGNtLCBpbnQgZnJhbWVfCiAgICAgICAgIGZvciAoaT0wO2k8ZnJhbWVfc2l6ZSpzdC0+Y2hhbm5l
bHM7aSsrKQogICAgICAgICAgICAgcGNtX3NpbGtbaV0gPSBGTE9BVDJJTlQxNihwY21fYnVmW3Rv
dGFsX2J1ZmZlcipzdC0+Y2hhbm5lbHMgKyBpXSk7CiAjZW5kaWYKLSAgICAgICAgcmV0ID0gc2ls
a19FbmNvZGUoIHNpbGtfZW5jLCAmc3QtPnNpbGtfbW9kZSwgcGNtX3NpbGssIGZyYW1lX3NpemUs
ICZlbmMsICZuQnl0ZXMsIDAgKTsKKyAgICAgICAgcmV0ID0gc2lsa19FbmNvZGUoIHNpbGtfZW5j
LCAmc3QtPnNpbGtfbW9kZSwgcGNtX3NpbGssIGZyYW1lX3NpemUsICZlbmMsICZuQnl0ZXMsIDAs
IGFjdGl2aXR5ICk7CiAgICAgICAgIGlmKCByZXQgKSB7CiAgICAgICAgICAgICAvKmZwcmludGYg
KHN0ZGVyciwgIlNJTEsgZW5jb2RlIGVycm9yOiAlZFxuIiwgcmV0KTsqLwogICAgICAgICAgICAg
LyogSGFuZGxlIGVycm9yICovCiAgICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7CiAgICAgICAgICAg
IHJldHVybiBPUFVTX0lOVEVSTkFMX0VSUk9SOwogICAgICAgICB9Ci0gICAgICAgIGlmIChuQnl0
ZXM9PTApCi0gICAgICAgIHsKLSAgICAgICAgICAgc3QtPnJhbmdlRmluYWwgPSAwOwotICAgICAg
ICAgICBkYXRhWy0xXSA9IGdlbl90b2Moc3QtPm1vZGUsIHN0LT5Gcy9mcmFtZV9zaXplLCBjdXJy
X2JhbmR3aWR0aCwgc3QtPnN0cmVhbV9jaGFubmVscyk7Ci0gICAgICAgICAgIFJFU1RPUkVfU1RB
Q0s7Ci0gICAgICAgICAgIHJldHVybiAxOwotICAgICAgICB9CisKICAgICAgICAgLyogRXh0cmFj
dCBTSUxLIGludGVybmFsIGJhbmR3aWR0aCBmb3Igc2lnbmFsaW5nIGluIGZpcnN0IGJ5dGUgKi8K
ICAgICAgICAgaWYoIHN0LT5tb2RlID09IE1PREVfU0lMS19PTkxZICkgewogICAgICAgICAgICAg
aWYoIHN0LT5zaWxrX21vZGUuaW50ZXJuYWxTYW1wbGVSYXRlID09IDgwMDAgKSB7CkBAIC0xNjgy
LDExICsxODU4LDIxIEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVy
ICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAgICAgICBzaWxr
X2Fzc2VydCggc3QtPnNpbGtfbW9kZS5pbnRlcm5hbFNhbXBsZVJhdGUgPT0gMTYwMDAgKTsKICAg
ICAgICAgfQogCi0gICAgICAgIHN0LT5zaWxrX21vZGUub3B1c0NhblN3aXRjaCA9IHN0LT5zaWxr
X21vZGUuc3dpdGNoUmVhZHk7CisgICAgICAgIHN0LT5zaWxrX21vZGUub3B1c0NhblN3aXRjaCA9
IHN0LT5zaWxrX21vZGUuc3dpdGNoUmVhZHkgJiYgIXN0LT5ub25maW5hbF9mcmFtZTsKKworICAg
ICAgICBpZiAobkJ5dGVzPT0wKQorICAgICAgICB7CisgICAgICAgICAgIHN0LT5yYW5nZUZpbmFs
ID0gMDsKKyAgICAgICAgICAgZGF0YVstMV0gPSBnZW5fdG9jKHN0LT5tb2RlLCBzdC0+RnMvZnJh
bWVfc2l6ZSwgY3Vycl9iYW5kd2lkdGgsIHN0LT5zdHJlYW1fY2hhbm5lbHMpOworICAgICAgICAg
ICBSRVNUT1JFX1NUQUNLOworICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgfQorCiAgICAg
ICAgIC8qIEZJWE1FOiBIb3cgZG8gd2UgYWxsb2NhdGUgdGhlIHJlZHVuZGFuY3kgZm9yIENCUj8g
Ki8KICAgICAgICAgaWYgKHN0LT5zaWxrX21vZGUub3B1c0NhblN3aXRjaCkKICAgICAgICAgewot
ICAgICAgICAgICByZWR1bmRhbmN5ID0gMTsKKyAgICAgICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9
IGNvbXB1dGVfcmVkdW5kYW5jeV9ieXRlcyhtYXhfZGF0YV9ieXRlcywgc3QtPmJpdHJhdGVfYnBz
LCBmcmFtZV9yYXRlLCBzdC0+c3RyZWFtX2NoYW5uZWxzKTsKKyAgICAgICAgICAgcmVkdW5kYW5j
eSA9IChyZWR1bmRhbmN5X2J5dGVzICE9IDApOwogICAgICAgICAgICBjZWx0X3RvX3NpbGsgPSAw
OwogICAgICAgICAgICBzdC0+c2lsa19id19zd2l0Y2ggPSAxOwogICAgICAgICB9CkBAIC0xNzI3
LDQwICsxOTEzLDE4IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVy
ICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAKICAgICAgICAgaWYgKHN0
LT5tb2RlID09IE1PREVfSFlCUklEKQogICAgICAgICB7Ci0gICAgICAgICAgICBpbnQgbGVuOwot
Ci0gICAgICAgICAgICBsZW4gPSAoZWNfdGVsbCgmZW5jKSs3KT4+MzsKLSAgICAgICAgICAgIGlm
IChyZWR1bmRhbmN5KQotICAgICAgICAgICAgICAgbGVuICs9IHN0LT5tb2RlID09IE1PREVfSFlC
UklEID8gMyA6IDE7CiAgICAgICAgICAgICBpZiggc3QtPnVzZV92YnIgKSB7Ci0gICAgICAgICAg
ICAgICAgbmJfY29tcHJfYnl0ZXMgPSBsZW4gKyBieXRlc190YXJnZXQgLSAoc3QtPnNpbGtfbW9k
ZS5iaXRSYXRlICogZnJhbWVfc2l6ZSkgLyAoOCAqIHN0LT5Gcyk7Ci0gICAgICAgICAgICB9IGVs
c2UgewotICAgICAgICAgICAgICAgIC8qIGNoZWNrIGlmIFNJTEsgdXNlZCB1cCB0b28gbXVjaCAq
LwotICAgICAgICAgICAgICAgIG5iX2NvbXByX2J5dGVzID0gbGVuID4gYnl0ZXNfdGFyZ2V0ID8g
bGVuIDogYnl0ZXNfdGFyZ2V0OworICAgICAgICAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2Vs
dF9lbmMsIE9QVVNfU0VUX0JJVFJBVEUoc3QtPmJpdHJhdGVfYnBzLXN0LT5zaWxrX21vZGUuYml0
UmF0ZSkpOworICAgICAgICAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNf
U0VUX1ZCUl9DT05TVFJBSU5UKDApKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlIHsK
ICAgICAgICAgICAgIGlmIChzdC0+dXNlX3ZicikKICAgICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgICBvcHVzX2ludDMyIGJvbnVzPTA7Ci0jaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCi0gICAg
ICAgICAgICAgICAgaWYgKHN0LT52YXJpYWJsZV9kdXJhdGlvbj09T1BVU19GUkFNRVNJWkVfVkFS
SUFCTEUgJiYgZnJhbWVfc2l6ZSAhPSBzdC0+RnMvNTApCi0gICAgICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgICAgIGJvbnVzID0gKDYwKnN0LT5zdHJlYW1fY2hhbm5lbHMrNDApKihzdC0+
RnMvZnJhbWVfc2l6ZS01MCk7Ci0gICAgICAgICAgICAgICAgICAgaWYgKGFuYWx5c2lzX2luZm8u
dmFsaWQpCi0gICAgICAgICAgICAgICAgICAgICAgYm9udXMgPSAob3B1c19pbnQzMikoYm9udXMq
KDEuZisuNWYqYW5hbHlzaXNfaW5mby50b25hbGl0eSkpOwotICAgICAgICAgICAgICAgIH0KLSNl
bmRpZgogICAgICAgICAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VU
X1ZCUigxKSk7CiAgICAgICAgICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BV
U19TRVRfVkJSX0NPTlNUUkFJTlQoc3QtPnZicl9jb25zdHJhaW50KSk7Ci0gICAgICAgICAgICAg
ICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfQklUUkFURShzdC0+Yml0cmF0
ZV9icHMrYm9udXMpKTsKLSAgICAgICAgICAgICAgICBuYl9jb21wcl9ieXRlcyA9IG1heF9kYXRh
X2J5dGVzLTEtcmVkdW5kYW5jeV9ieXRlczsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAg
ICAgICAgICAgbmJfY29tcHJfYnl0ZXMgPSBieXRlc190YXJnZXQ7CisgICAgICAgICAgICAgICAg
Y2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfQklUUkFURShzdC0+Yml0cmF0ZV9i
cHMpKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQotCi0gICAgfSBlbHNlIHsKLSAgICAgICAg
bmJfY29tcHJfYnl0ZXMgPSAwOwogICAgIH0KIAogICAgIEFMTE9DKHRtcF9wcmVmaWxsLCBzdC0+
Y2hhbm5lbHMqc3QtPkZzLzQwMCwgb3B1c192YWwxNik7CkBAIC0xNzg2LDcgKzE5NTAsNyBAQCBv
cHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNf
dmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgIH0KICAgICBzdC0+cHJldl9IQl9nYWluID0gSEJf
Z2FpbjsKICAgICBpZiAoc3QtPm1vZGUgIT0gTU9ERV9IWUJSSUQgfHwgc3QtPnN0cmVhbV9jaGFu
bmVscz09MSkKLSAgICAgICBzdC0+c2lsa19tb2RlLnN0ZXJlb1dpZHRoX1ExNCA9IElNSU4oKDE8
PDE0KSwyKklNQVgoMCxlcXVpdl9yYXRlLTMwMDAwKSk7CisgICAgICAgc3QtPnNpbGtfbW9kZS5z
dGVyZW9XaWR0aF9RMTQgPSBJTUlOKCgxPDwxNCksMipJTUFYKDAsZXF1aXZfcmF0ZS0yNDAwMCkp
OwogICAgIGlmKCAhc3QtPmVuZXJneV9tYXNraW5nICYmIHN0LT5jaGFubmVscyA9PSAyICkgewog
ICAgICAgICAvKiBBcHBseSBzdGVyZW8gd2lkdGggcmVkdWN0aW9uIChhdCBsb3cgYml0cmF0ZXMp
ICovCiAgICAgICAgIGlmKCBzdC0+aHlicmlkX3N0ZXJlb193aWR0aF9RMTQgPCAoMSA8PCAxNCkg
fHwgc3QtPnNpbGtfbW9kZS5zdGVyZW9XaWR0aF9RMTQgPCAoMSA8PCAxNCkgKSB7CkBAIC0xODA5
LDE5ICsxOTczLDIzIEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVy
ICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgaWYgKCBzdC0+bW9k
ZSAhPSBNT0RFX0NFTFRfT05MWSAmJiBlY190ZWxsKCZlbmMpKzE3KzIwKihzdC0+bW9kZSA9PSBN
T0RFX0hZQlJJRCkgPD0gOCoobWF4X2RhdGFfYnl0ZXMtMSkpCiAgICAgewogICAgICAgICAvKiBG
b3IgU0lMSyBtb2RlLCB0aGUgcmVkdW5kYW5jeSBpcyBpbmZlcnJlZCBmcm9tIHRoZSBsZW5ndGgg
Ki8KLSAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEICYmIChyZWR1bmRhbmN5IHx8
IGVjX3RlbGwoJmVuYykrMzcgPD0gOCpuYl9jb21wcl9ieXRlcykpCisgICAgICAgIGlmIChzdC0+
bW9kZSA9PSBNT0RFX0hZQlJJRCkKICAgICAgICAgICAgZWNfZW5jX2JpdF9sb2dwKCZlbmMsIHJl
ZHVuZGFuY3ksIDEyKTsKICAgICAgICAgaWYgKHJlZHVuZGFuY3kpCiAgICAgICAgIHsKICAgICAg
ICAgICAgIGludCBtYXhfcmVkdW5kYW5jeTsKICAgICAgICAgICAgIGVjX2VuY19iaXRfbG9ncCgm
ZW5jLCBjZWx0X3RvX3NpbGssIDEpOwogICAgICAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVf
SFlCUklEKQotICAgICAgICAgICAgICAgbWF4X3JlZHVuZGFuY3kgPSAobWF4X2RhdGFfYnl0ZXMt
MSktbmJfY29tcHJfYnl0ZXM7CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAvKiBSZXNl
cnZlIHRoZSA4IGJpdHMgbmVlZGVkIGZvciB0aGUgcmVkdW5kYW5jeSBsZW5ndGgsCisgICAgICAg
ICAgICAgICAgICBhbmQgYXQgbGVhc3QgYSBmZXcgYml0cyBmb3IgQ0VMVCBpZiBwb3NzaWJsZSAq
LworICAgICAgICAgICAgICAgbWF4X3JlZHVuZGFuY3kgPSAobWF4X2RhdGFfYnl0ZXMtMSktKChl
Y190ZWxsKCZlbmMpKzgrMys3KT4+Myk7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNl
CiAgICAgICAgICAgICAgICBtYXhfcmVkdW5kYW5jeSA9IChtYXhfZGF0YV9ieXRlcy0xKS0oKGVj
X3RlbGwoJmVuYykrNyk+PjMpOwogICAgICAgICAgICAgLyogVGFyZ2V0IHRoZSBzYW1lIGJpdC1y
YXRlIGZvciByZWR1bmRhbmN5IGFzIGZvciB0aGUgcmVzdCwKICAgICAgICAgICAgICAgIHVwIHRv
IGEgbWF4IG9mIDI1NyBieXRlcyAqLwotICAgICAgICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9IElN
SU4obWF4X3JlZHVuZGFuY3ksIHN0LT5iaXRyYXRlX2Jwcy8xNjAwKTsKKyAgICAgICAgICAgIHJl
ZHVuZGFuY3lfYnl0ZXMgPSBJTUlOKG1heF9yZWR1bmRhbmN5LCByZWR1bmRhbmN5X2J5dGVzKTsK
ICAgICAgICAgICAgIHJlZHVuZGFuY3lfYnl0ZXMgPSBJTUlOKDI1NywgSU1BWCgyLCByZWR1bmRh
bmN5X2J5dGVzKSk7CiAgICAgICAgICAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQpCiAg
ICAgICAgICAgICAgICAgZWNfZW5jX3VpbnQoJmVuYywgcmVkdW5kYW5jeV9ieXRlcy0yLCAyNTYp
OwpAQCAtMTg0Myw3ICsyMDExLDcgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1
c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAg
ZWNfZW5jX2RvbmUoJmVuYyk7CiAgICAgICAgIG5iX2NvbXByX2J5dGVzID0gcmV0OwogICAgIH0g
ZWxzZSB7Ci0gICAgICAgbmJfY29tcHJfYnl0ZXMgPSBJTUlOKChtYXhfZGF0YV9ieXRlcy0xKS1y
ZWR1bmRhbmN5X2J5dGVzLCBuYl9jb21wcl9ieXRlcyk7CisgICAgICAgbmJfY29tcHJfYnl0ZXMg
PSAobWF4X2RhdGFfYnl0ZXMtMSktcmVkdW5kYW5jeV9ieXRlczsKICAgICAgICBlY19lbmNfc2hy
aW5rKCZlbmMsIG5iX2NvbXByX2J5dGVzKTsKICAgICB9CiAKQEAgLTE4NTEsNiArMjAxOSwxNCBA
QCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9w
dXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgIGlmIChyZWR1bmRhbmN5IHx8IHN0LT5tb2Rl
ICE9IE1PREVfU0lMS19PTkxZKQogICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIENF
TFRfU0VUX0FOQUxZU0lTKCZhbmFseXNpc19pbmZvKSk7CiAjZW5kaWYKKyAgICBpZiAoc3QtPm1v
ZGUgPT0gTU9ERV9IWUJSSUQpIHsKKyAgICAgICBTSUxLSW5mbyBpbmZvOworICAgICAgIGluZm8u
c2lnbmFsVHlwZSA9IHN0LT5zaWxrX21vZGUuc2lnbmFsVHlwZTsKKyAgICAgICBpbmZvLm9mZnNl
dCA9IHN0LT5zaWxrX21vZGUub2Zmc2V0OworICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9l
bmMsIENFTFRfU0VUX1NJTEtfSU5GTygmaW5mbykpOworICAgIH0gZWxzZSB7CisgICAgICAgY2Vs
dF9lbmNvZGVyX2N0bChjZWx0X2VuYywgQ0VMVF9TRVRfU0lMS19JTkZPKChTSUxLSW5mbyopTlVM
TCkpOworICAgIH0KIAogICAgIC8qIDUgbXMgcmVkdW5kYW50IGZyYW1lIGZvciBDRUxULT5TSUxL
ICovCiAgICAgaWYgKHJlZHVuZGFuY3kgJiYgY2VsdF90b19zaWxrKQpAQCAtMTg1OCw2ICsyMDM0
LDcgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25z
dCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAgaW50IGVycjsKICAgICAgICAg
Y2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgQ0VMVF9TRVRfU1RBUlRfQkFORCgwKSk7CiAgICAg
ICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX1ZCUigwKSk7CisgICAgICAg
IGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX0JJVFJBVEUoT1BVU19CSVRSQVRF
X01BWCkpOwogICAgICAgICBlcnIgPSBjZWx0X2VuY29kZV93aXRoX2VjKGNlbHRfZW5jLCBwY21f
YnVmLCBzdC0+RnMvMjAwLCBkYXRhK25iX2NvbXByX2J5dGVzLCByZWR1bmRhbmN5X2J5dGVzLCBO
VUxMKTsKICAgICAgICAgaWYgKGVyciA8IDApCiAgICAgICAgIHsKQEAgLTE4ODEsMTUgKzIwNTgs
MjUgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25z
dCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAgICAgY2VsdF9lbmNvZGVfd2l0
aF9lYyhjZWx0X2VuYywgdG1wX3ByZWZpbGwsIHN0LT5Gcy80MDAsIGR1bW15LCAyLCBOVUxMKTsK
ICAgICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgQ0VMVF9TRVRfUFJFRElDVElP
TigwKSk7CiAgICAgICAgIH0KLSAgICAgICAgLyogSWYgZmFsc2UsIHdlIGFscmVhZHkgYnVzdGVk
IHRoZSBidWRnZXQgYW5kIHdlJ2xsIGVuZCB1cCB3aXRoIGEgIlBMQyBwYWNrZXQiICovCisgICAg
ICAgIC8qIElmIGZhbHNlLCB3ZSBhbHJlYWR5IGJ1c3RlZCB0aGUgYnVkZ2V0IGFuZCB3ZSdsbCBl
bmQgdXAgd2l0aCBhICJQTEMgZnJhbWUiICovCiAgICAgICAgIGlmIChlY190ZWxsKCZlbmMpIDw9
IDgqbmJfY29tcHJfYnl0ZXMpCiAgICAgICAgIHsKKyAgICAgICAgICAgLyogU2V0IHRoZSBiaXRy
YXRlIGFnYWluIGlmIGl0IHdhcyBvdmVycmlkZGVuIGluIHRoZSByZWR1bmRhbmN5IGNvZGUgYWJv
dmUqLworICAgICAgICAgICBpZiAocmVkdW5kYW5jeSAmJiBjZWx0X3RvX3NpbGsgJiYgc3QtPm1v
ZGU9PU1PREVfSFlCUklEICYmIHN0LT51c2VfdmJyKQorICAgICAgICAgICAgICBjZWx0X2VuY29k
ZXJfY3RsKGNlbHRfZW5jLCBPUFVTX1NFVF9CSVRSQVRFKHN0LT5iaXRyYXRlX2Jwcy1zdC0+c2ls
a19tb2RlLmJpdFJhdGUpKTsKKyAgICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywg
T1BVU19TRVRfVkJSKHN0LT51c2VfdmJyKSk7CiAgICAgICAgICAgIHJldCA9IGNlbHRfZW5jb2Rl
X3dpdGhfZWMoY2VsdF9lbmMsIHBjbV9idWYsIGZyYW1lX3NpemUsIE5VTEwsIG5iX2NvbXByX2J5
dGVzLCAmZW5jKTsKICAgICAgICAgICAgaWYgKHJldCA8IDApCiAgICAgICAgICAgIHsKICAgICAg
ICAgICAgICAgUkVTVE9SRV9TVEFDSzsKICAgICAgICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJO
QUxfRVJST1I7CiAgICAgICAgICAgIH0KKyAgICAgICAgICAgLyogUHV0IENFTFQtPlNJTEsgcmVk
dW5kYW5jeSBkYXRhIGluIHRoZSByaWdodCBwbGFjZS4gKi8KKyAgICAgICAgICAgaWYgKHJlZHVu
ZGFuY3kgJiYgY2VsdF90b19zaWxrICYmIHN0LT5tb2RlPT1NT0RFX0hZQlJJRCAmJiBzdC0+dXNl
X3ZicikKKyAgICAgICAgICAgeworICAgICAgICAgICAgICBPUFVTX01PVkUoZGF0YStyZXQsIGRh
dGErbmJfY29tcHJfYnl0ZXMsIHJlZHVuZGFuY3lfYnl0ZXMpOworICAgICAgICAgICAgICBuYl9j
b21wcl9ieXRlcyA9IG5iX2NvbXByX2J5dGVzK3JlZHVuZGFuY3lfYnl0ZXM7CisgICAgICAgICAg
IH0KICAgICAgICAgfQogICAgIH0KIApAQCAtMTkwNSw3ICsyMDkyLDE1IEBAIG9wdXNfaW50MzIg
b3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNt
LCBpbnQgZnJhbWVfCiAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfUkVT
RVRfU1RBVEUpOwogICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBDRUxUX1NFVF9T
VEFSVF9CQU5EKDApKTsKICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgQ0VMVF9T
RVRfUFJFRElDVElPTigwKSk7CisgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9Q
VVNfU0VUX1ZCUigwKSk7CisgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNf
U0VUX0JJVFJBVEUoT1BVU19CSVRSQVRFX01BWCkpOwogCisgICAgICAgIGlmIChzdC0+bW9kZSA9
PSBNT0RFX0hZQlJJRCkKKyAgICAgICAgeworICAgICAgICAgICAvKiBTaHJpbmsgcGFja2V0IHRv
IHdoYXQgdGhlIGVuY29kZXIgYWN0dWFsbHkgdXNlZC4gKi8KKyAgICAgICAgICAgbmJfY29tcHJf
Ynl0ZXMgPSByZXQ7CisgICAgICAgICAgIGVjX2VuY19zaHJpbmsoJmVuYywgbmJfY29tcHJfYnl0
ZXMpOworICAgICAgICB9CiAgICAgICAgIC8qIE5PVEU6IFdlIGNvdWxkIHNwZWVkIHRoaXMgdXAg
c2xpZ2h0bHkgKGF0IHRoZSBleHBlbnNlIG9mIGNvZGUgc2l6ZSkgYnkganVzdCBhZGRpbmcgYSBm
dW5jdGlvbiB0aGF0IHByZWZpbGxzIHRoZSBidWZmZXIgKi8KICAgICAgICAgY2VsdF9lbmNvZGVf
d2l0aF9lYyhjZWx0X2VuYywgcGNtX2J1ZitzdC0+Y2hhbm5lbHMqKGZyYW1lX3NpemUtTjItTjQp
LCBONCwgZHVtbXksIDIsIE5VTEwpOwogCkBAIC0xOTM1LDYgKzIxMzAsMjEgQEAgb3B1c19pbnQz
MiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpw
Y20sIGludCBmcmFtZV8KIAogICAgIHN0LT5maXJzdCA9IDA7CiAKKyAgICAvKiBEVFggZGVjaXNp
b24gKi8KKyNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKKyAgICBpZiAoc3QtPnVzZV9kdHggJiYg
KGFuYWx5c2lzX2luZm8udmFsaWQgfHwgaXNfc2lsZW5jZSkpCisgICAgeworICAgICAgIGlmIChk
ZWNpZGVfZHR4X21vZGUoYW5hbHlzaXNfaW5mby5hY3Rpdml0eV9wcm9iYWJpbGl0eSwgJnN0LT5u
Yl9ub19hY3Rpdml0eV9mcmFtZXMsCisgICAgICAgICAgICAgc3QtPnBlYWtfc2lnbmFsX2VuZXJn
eSwgcGNtLCBmcmFtZV9zaXplLCBzdC0+Y2hhbm5lbHMsIGlzX3NpbGVuY2UsIHN0LT5hcmNoKSkK
KyAgICAgICB7CisgICAgICAgICAgc3QtPnJhbmdlRmluYWwgPSAwOworICAgICAgICAgIGRhdGFb
MF0gPSBnZW5fdG9jKHN0LT5tb2RlLCBzdC0+RnMvZnJhbWVfc2l6ZSwgY3Vycl9iYW5kd2lkdGgs
IHN0LT5zdHJlYW1fY2hhbm5lbHMpOworICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7CisgICAgICAg
ICAgcmV0dXJuIDE7CisgICAgICAgfQorICAgIH0KKyNlbmRpZgorCiAgICAgLyogSW4gdGhlIHVu
bGlrZWx5IGNhc2UgdGhhdCB0aGUgU0lMSyBlbmNvZGVyIGJ1c3RlZCBpdHMgdGFyZ2V0LCB0ZWxs
CiAgICAgICAgdGhlIGRlY29kZXIgdG8gY2FsbCB0aGUgUExDICovCiAgICAgaWYgKGVjX3RlbGwo
JmVuYykgPiAobWF4X2RhdGFfYnl0ZXMtMSkqOCkKQEAgLTE5NjIsNyArMjE3Miw2IEBAIG9wdXNf
aW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwx
NiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgaWYgKCFzdC0+dXNlX3ZicikKICAgICB7CiAgICAgICAg
aWYgKG9wdXNfcGFja2V0X3BhZChkYXRhLCByZXQsIG1heF9kYXRhX2J5dGVzKSAhPSBPUFVTX09L
KQotCiAgICAgICAgewogICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7CiAgICAgICAgICAgcmV0dXJu
IE9QVVNfSU5URVJOQUxfRVJST1I7CkBAIC0xOTgxLDE4ICsyMTkwLDE1IEBAIG9wdXNfaW50MzIg
b3B1c19lbmNvZGVfZmxvYXQoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBmbG9hdCAqcGNtLCBpbnQg
YW5hbHlzaXNfZnJhCiB7CiAgICBpbnQgaSwgcmV0OwogICAgaW50IGZyYW1lX3NpemU7Ci0gICBp
bnQgZGVsYXlfY29tcGVuc2F0aW9uOwogICAgVkFSREVDTChvcHVzX2ludDE2LCBpbik7CiAgICBB
TExPQ19TVEFDSzsKIAotICAgaWYgKHN0LT5hcHBsaWNhdGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9O
X1JFU1RSSUNURURfTE9XREVMQVkpCi0gICAgICBkZWxheV9jb21wZW5zYXRpb24gPSAwOwotICAg
ZWxzZQotICAgICAgZGVsYXlfY29tcGVuc2F0aW9uID0gc3QtPmRlbGF5X2NvbXBlbnNhdGlvbjsK
LSAgIGZyYW1lX3NpemUgPSBjb21wdXRlX2ZyYW1lX3NpemUocGNtLCBhbmFseXNpc19mcmFtZV9z
aXplLAotICAgICAgICAgc3QtPnZhcmlhYmxlX2R1cmF0aW9uLCBzdC0+Y2hhbm5lbHMsIHN0LT5G
cywgc3QtPmJpdHJhdGVfYnBzLAotICAgICAgICAgZGVsYXlfY29tcGVuc2F0aW9uLCBkb3dubWl4
X2Zsb2F0LCBzdC0+YW5hbHlzaXMuc3ViZnJhbWVfbWVtKTsKLQorICAgZnJhbWVfc2l6ZSA9IGZy
YW1lX3NpemVfc2VsZWN0KGFuYWx5c2lzX2ZyYW1lX3NpemUsIHN0LT52YXJpYWJsZV9kdXJhdGlv
biwgc3QtPkZzKTsKKyAgIGlmIChmcmFtZV9zaXplIDw9IDApCisgICB7CisgICAgICBSRVNUT1JF
X1NUQUNLOworICAgICAgcmV0dXJuIE9QVVNfQkFEX0FSRzsKKyAgIH0KICAgIEFMTE9DKGluLCBm
cmFtZV9zaXplKnN0LT5jaGFubmVscywgb3B1c19pbnQxNik7CiAKICAgIGZvciAoaT0wO2k8ZnJh
bWVfc2l6ZSpzdC0+Y2hhbm5lbHM7aSsrKQpAQCAtMjAwOCwxOCArMjIxNCw3IEBAIG9wdXNfaW50
MzIgb3B1c19lbmNvZGUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX2ludDE2ICpwY20sIGlu
dCBhbmFseXNpc19mcmFtCiAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqZGF0YSwgb3B1
c19pbnQzMiBvdXRfZGF0YV9ieXRlcykKIHsKICAgIGludCBmcmFtZV9zaXplOwotICAgaW50IGRl
bGF5X2NvbXBlbnNhdGlvbjsKLSAgIGlmIChzdC0+YXBwbGljYXRpb24gPT0gT1BVU19BUFBMSUNB
VElPTl9SRVNUUklDVEVEX0xPV0RFTEFZKQotICAgICAgZGVsYXlfY29tcGVuc2F0aW9uID0gMDsK
LSAgIGVsc2UKLSAgICAgIGRlbGF5X2NvbXBlbnNhdGlvbiA9IHN0LT5kZWxheV9jb21wZW5zYXRp
b247Ci0gICBmcmFtZV9zaXplID0gY29tcHV0ZV9mcmFtZV9zaXplKHBjbSwgYW5hbHlzaXNfZnJh
bWVfc2l6ZSwKLSAgICAgICAgIHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgc3QtPmNoYW5uZWxzLCBz
dC0+RnMsIHN0LT5iaXRyYXRlX2JwcywKLSAgICAgICAgIGRlbGF5X2NvbXBlbnNhdGlvbiwgZG93
bm1peF9pbnQKLSNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKLSAgICAgICAgICwgc3QtPmFuYWx5
c2lzLnN1YmZyYW1lX21lbQotI2VuZGlmCi0gICAgICAgICApOworICAgZnJhbWVfc2l6ZSA9IGZy
YW1lX3NpemVfc2VsZWN0KGFuYWx5c2lzX2ZyYW1lX3NpemUsIHN0LT52YXJpYWJsZV9kdXJhdGlv
biwgc3QtPkZzKTsKICAgIHJldHVybiBvcHVzX2VuY29kZV9uYXRpdmUoc3QsIHBjbSwgZnJhbWVf
c2l6ZSwgZGF0YSwgb3V0X2RhdGFfYnl0ZXMsIDE2LAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBwY20sIGFuYWx5c2lzX2ZyYW1lX3NpemUsIDAsIC0yLCBzdC0+Y2hhbm5lbHMsIGRvd25t
aXhfaW50LCAwKTsKIH0KQEAgLTIwMzAsMTggKzIyMjUsMTUgQEAgb3B1c19pbnQzMiBvcHVzX2Vu
Y29kZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfaW50MTYgKnBjbSwgaW50IGFuYWx5c2lz
X2ZyYW0KIHsKICAgIGludCBpLCByZXQ7CiAgICBpbnQgZnJhbWVfc2l6ZTsKLSAgIGludCBkZWxh
eV9jb21wZW5zYXRpb247CiAgICBWQVJERUNMKGZsb2F0LCBpbik7CiAgICBBTExPQ19TVEFDSzsK
IAotICAgaWYgKHN0LT5hcHBsaWNhdGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURf
TE9XREVMQVkpCi0gICAgICBkZWxheV9jb21wZW5zYXRpb24gPSAwOwotICAgZWxzZQotICAgICAg
ZGVsYXlfY29tcGVuc2F0aW9uID0gc3QtPmRlbGF5X2NvbXBlbnNhdGlvbjsKLSAgIGZyYW1lX3Np
emUgPSBjb21wdXRlX2ZyYW1lX3NpemUocGNtLCBhbmFseXNpc19mcmFtZV9zaXplLAotICAgICAg
ICAgc3QtPnZhcmlhYmxlX2R1cmF0aW9uLCBzdC0+Y2hhbm5lbHMsIHN0LT5Gcywgc3QtPmJpdHJh
dGVfYnBzLAotICAgICAgICAgZGVsYXlfY29tcGVuc2F0aW9uLCBkb3dubWl4X2ludCwgc3QtPmFu
YWx5c2lzLnN1YmZyYW1lX21lbSk7Ci0KKyAgIGZyYW1lX3NpemUgPSBmcmFtZV9zaXplX3NlbGVj
dChhbmFseXNpc19mcmFtZV9zaXplLCBzdC0+dmFyaWFibGVfZHVyYXRpb24sIHN0LT5Gcyk7Cisg
ICBpZiAoZnJhbWVfc2l6ZSA8PSAwKQorICAgeworICAgICAgUkVTVE9SRV9TVEFDSzsKKyAgICAg
IHJldHVybiBPUFVTX0JBRF9BUkc7CisgICB9CiAgICBBTExPQyhpbiwgZnJhbWVfc2l6ZSpzdC0+
Y2hhbm5lbHMsIGZsb2F0KTsKIAogICAgZm9yIChpPTA7aTxmcmFtZV9zaXplKnN0LT5jaGFubmVs
cztpKyspCkBAIC0yMDU1LDE0ICsyMjQ3LDcgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9mbG9h
dChPcHVzRW5jb2RlciAqc3QsIGNvbnN0IGZsb2F0ICpwY20sIGludCBhbmFseXNpc19mcmEKICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpkYXRhLCBvcHVzX2ludDMyIG91dF9k
YXRhX2J5dGVzKQogewogICAgaW50IGZyYW1lX3NpemU7Ci0gICBpbnQgZGVsYXlfY29tcGVuc2F0
aW9uOwotICAgaWYgKHN0LT5hcHBsaWNhdGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNU
RURfTE9XREVMQVkpCi0gICAgICBkZWxheV9jb21wZW5zYXRpb24gPSAwOwotICAgZWxzZQotICAg
ICAgZGVsYXlfY29tcGVuc2F0aW9uID0gc3QtPmRlbGF5X2NvbXBlbnNhdGlvbjsKLSAgIGZyYW1l
X3NpemUgPSBjb21wdXRlX2ZyYW1lX3NpemUocGNtLCBhbmFseXNpc19mcmFtZV9zaXplLAotICAg
ICAgICAgc3QtPnZhcmlhYmxlX2R1cmF0aW9uLCBzdC0+Y2hhbm5lbHMsIHN0LT5Gcywgc3QtPmJp
dHJhdGVfYnBzLAotICAgICAgICAgZGVsYXlfY29tcGVuc2F0aW9uLCBkb3dubWl4X2Zsb2F0LCBz
dC0+YW5hbHlzaXMuc3ViZnJhbWVfbWVtKTsKKyAgIGZyYW1lX3NpemUgPSBmcmFtZV9zaXplX3Nl
bGVjdChhbmFseXNpc19mcmFtZV9zaXplLCBzdC0+dmFyaWFibGVfZHVyYXRpb24sIHN0LT5Gcyk7
CiAgICByZXR1cm4gb3B1c19lbmNvZGVfbmF0aXZlKHN0LCBwY20sIGZyYW1lX3NpemUsIGRhdGEs
IG91dF9kYXRhX2J5dGVzLCAyNCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGNtLCBh
bmFseXNpc19mcmFtZV9zaXplLCAwLCAtMiwgc3QtPmNoYW5uZWxzLCBkb3dubWl4X2Zsb2F0LCAx
KTsKIH0KQEAgLTIwOTMsNiArMjI3OCw5IEBAIGludCBvcHVzX2VuY29kZXJfY3RsKE9wdXNFbmNv
ZGVyICpzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAg
ICAgICAgfQogICAgICAgICAgICAgc3QtPmFwcGxpY2F0aW9uID0gdmFsdWU7CisjaWZuZGVmIERJ
U0FCTEVfRkxPQVRfQVBJCisgICAgICAgICAgICBzdC0+YW5hbHlzaXMuYXBwbGljYXRpb24gPSB2
YWx1ZTsKKyNlbmRpZgogICAgICAgICB9CiAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIE9Q
VVNfR0VUX0FQUExJQ0FUSU9OX1JFUVVFU1Q6CkBAIC0yMjExLDcgKzIzOTksNyBAQCBpbnQgb3B1
c19lbmNvZGVyX2N0bChPcHVzRW5jb2RlciAqc3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICAgICAg
ICAgICB7CiAgICAgICAgICAgICAgICBnb3RvIGJhZF9hcmc7CiAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICBzdC0+c2lsa19tb2RlLnVzZURUWCA9IHZhbHVlOworICAgICAgICAgICAgc3QtPnVz
ZV9kdHggPSB2YWx1ZTsKICAgICAgICAgfQogICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBP
UFVTX0dFVF9EVFhfUkVRVUVTVDoKQEAgLTIyMjEsNyArMjQwOSw3IEBAIGludCBvcHVzX2VuY29k
ZXJfY3RsKE9wdXNFbmNvZGVyICpzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICAgICAgIHsK
ICAgICAgICAgICAgICAgIGdvdG8gYmFkX2FyZzsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
ICp2YWx1ZSA9IHN0LT5zaWxrX21vZGUudXNlRFRYOworICAgICAgICAgICAgKnZhbHVlID0gc3Qt
PnVzZV9kdHg7CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgT1BVU19T
RVRfQ09NUExFWElUWV9SRVFVRVNUOgpAQCAtMjQyMiwxMCArMjYxMCwxMSBAQCBpbnQgb3B1c19l
bmNvZGVyX2N0bChPcHVzRW5jb2RlciAqc3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICAgICAgIGNh
c2UgT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OX1JFUVVFU1Q6CiAgICAgICAgIHsKICAg
ICAgICAgICAgIG9wdXNfaW50MzIgdmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50MzIpOwotICAg
ICAgICAgICAgaWYgKHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFX0FSRyAgICYmIHZhbHVlICE9IE9Q
VVNfRlJBTUVTSVpFXzJfNV9NUyAmJgotICAgICAgICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJB
TUVTSVpFXzVfTVMgICYmIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzEwX01TICAmJgotICAgICAg
ICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzIwX01TICYmIHZhbHVlICE9IE9QVVNf
RlJBTUVTSVpFXzQwX01TICAmJgotICAgICAgICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJBTUVT
SVpFXzYwX01TICYmIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFX1ZBUklBQkxFKQorICAgICAgICAg
ICAgaWYgKHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFX0FSRyAgICAmJiB2YWx1ZSAhPSBPUFVTX0ZS
QU1FU0laRV8yXzVfTVMgJiYKKyAgICAgICAgICAgICAgICB2YWx1ZSAhPSBPUFVTX0ZSQU1FU0la
RV81X01TICAgJiYgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfMTBfTVMgICYmCisgICAgICAgICAg
ICAgICAgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfMjBfTVMgICYmIHZhbHVlICE9IE9QVVNfRlJB
TUVTSVpFXzQwX01TICAmJgorICAgICAgICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpF
XzYwX01TICAmJiB2YWx1ZSAhPSBPUFVTX0ZSQU1FU0laRV84MF9NUyAgJiYKKyAgICAgICAgICAg
ICAgICB2YWx1ZSAhPSBPUFVTX0ZSQU1FU0laRV8xMDBfTVMgJiYgdmFsdWUgIT0gT1BVU19GUkFN
RVNJWkVfMTIwX01TKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgZ290byBiYWRfYXJn
OwogICAgICAgICAgICAgfQpAQCAtMjQ1OSw2ICsyNjQ4LDI2IEBAIGludCBvcHVzX2VuY29kZXJf
Y3RsKE9wdXNFbmNvZGVyICpzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICAgICAgKnZhbHVl
ID0gc3QtPnNpbGtfbW9kZS5yZWR1Y2VkRGVwZW5kZW5jeTsKICAgICAgICAgfQogICAgICAgICBi
cmVhazsKKyAgICAgICAgY2FzZSBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVR
VUVTVDoKKyAgICAgICAgeworICAgICAgICAgICAgb3B1c19pbnQzMiB2YWx1ZSA9IHZhX2FyZyhh
cCwgb3B1c19pbnQzMik7CisgICAgICAgICAgICBpZih2YWx1ZTwwIHx8IHZhbHVlPjEpCisgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZF
UlNJT05fRElTQUJMRUQodmFsdWUpKTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICAg
ICAgY2FzZSBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgICAg
ICAgeworICAgICAgICAgICAgb3B1c19pbnQzMiAqdmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50
MzIqKTsKKyAgICAgICAgICAgIGlmICghdmFsdWUpCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBjZWx0X2VuY29k
ZXJfY3RsKGNlbHRfZW5jLCBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQodmFsdWUp
KTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBPUFVTX1JFU0VUX1NU
QVRFOgogICAgICAgICB7CiAgICAgICAgICAgIHZvaWQgKnNpbGtfZW5jOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
cmMvb3B1c19tdWx0aXN0cmVhbV9kZWNvZGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX211bHRpc3RyZWFtX2RlY29k
ZXIuYwppbmRleCBiOTVlYWE2ZWFjMTJmMDM2YWI5ZjBhNGRlNjU2MjFiZjU3ZTViOGMwLi5lNDIx
NzI2ZjJiNDI3ZGQyZGRkNGQyMGYxZGZiOTljMmFmYjcwMDhiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVz
X211bHRpc3RyZWFtX2RlY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX211bHRpc3RyZWFtX2RlY29kZXIu
YwpAQCAtMjM3LDcgKzIzNyw4IEBAIHN0YXRpYyBpbnQgb3B1c19tdWx0aXN0cmVhbV9kZWNvZGVf
bmF0aXZlKAogICAgZm9yIChzPTA7czxzdC0+bGF5b3V0Lm5iX3N0cmVhbXM7cysrKQogICAgewog
ICAgICAgT3B1c0RlY29kZXIgKmRlYzsKLSAgICAgIGludCBwYWNrZXRfb2Zmc2V0LCByZXQ7Cisg
ICAgICBvcHVzX2ludDMyIHBhY2tldF9vZmZzZXQ7CisgICAgICBpbnQgcmV0OwogCiAgICAgICBk
ZWMgPSAoT3B1c0RlY29kZXIqKXB0cjsKICAgICAgIHB0ciArPSAocyA8IHN0LT5sYXlvdXQubmJf
Y291cGxlZF9zdHJlYW1zKSA/IGFsaWduKGNvdXBsZWRfc2l6ZSkgOiBhbGlnbihtb25vX3NpemUp
OwpAQCAtNDI1LDYgKzQyNiw3IEBAIGludCBvcHVzX211bHRpc3RyZWFtX2RlY29kZXJfY3RsKE9w
dXNNU0RlY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgICAgIGNhc2UgT1BVU19HRVRf
U0FNUExFX1JBVEVfUkVRVUVTVDoKICAgICAgICBjYXNlIE9QVVNfR0VUX0dBSU5fUkVRVUVTVDoK
ICAgICAgICBjYXNlIE9QVVNfR0VUX0xBU1RfUEFDS0VUX0RVUkFUSU9OX1JFUVVFU1Q6CisgICAg
ICAgY2FzZSBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKICAgICAg
ICB7CiAgICAgICAgICAgT3B1c0RlY29kZXIgKmRlYzsKICAgICAgICAgICAvKiBGb3IgaW50MzIq
IEdFVCBwYXJhbXMsIGp1c3QgcXVlcnkgdGhlIGZpcnN0IHN0cmVhbSAqLwpAQCAtNDk5LDYgKzUw
MSw3IEBAIGludCBvcHVzX211bHRpc3RyZWFtX2RlY29kZXJfY3RsKE9wdXNNU0RlY29kZXIgKnN0
LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgICAgIH0KICAgICAgICBicmVhazsKICAgICAgICBjYXNl
IE9QVVNfU0VUX0dBSU5fUkVRVUVTVDoKKyAgICAgICBjYXNlIE9QVVNfU0VUX1BIQVNFX0lOVkVS
U0lPTl9ESVNBQkxFRF9SRVFVRVNUOgogICAgICAgIHsKICAgICAgICAgICBpbnQgczsKICAgICAg
ICAgICAvKiBUaGlzIHdvcmtzIGZvciBpbnQzMiBwYXJhbXMgKi8KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29w
dXNfbXVsdGlzdHJlYW1fZW5jb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyLmMK
aW5kZXggZTcyMmUzMWFiOGVlOWYxMDI0Mjk0NDk1NGVhNmY1YWMyMDE4YTEzYi4uMDMyZmMwMDM5
YjkxMzEyZTc1NmJmODljNmJmMGRlMDUyZjY4YWNmMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyLmMKQEAg
LTg3LDcgKzg3LDYgQEAgc3RydWN0IE9wdXNNU0VuY29kZXIgewogICAgaW50IHZhcmlhYmxlX2R1
cmF0aW9uOwogICAgTWFwcGluZ1R5cGUgbWFwcGluZ190eXBlOwogICAgb3B1c19pbnQzMiBiaXRy
YXRlX2JwczsKLSAgIGZsb2F0IHN1YmZyYW1lX21lbVszXTsKICAgIC8qIEVuY29kZXIgc3RhdGVz
IGdvIGhlcmUgKi8KICAgIC8qIHRoZW4gb3B1c192YWwzMiB3aW5kb3dfbWVtW2NoYW5uZWxzKjEy
MF07ICovCiAgICAvKiB0aGVuIG9wdXNfdmFsMzIgcHJlZW1waF9tZW1bY2hhbm5lbHNdOyAqLwpA
QCAtMTMzLDYgKzEzMiwyOSBAQCBzdGF0aWMgb3B1c192YWwzMiAqbXNfZ2V0X3dpbmRvd19tZW0o
T3B1c01TRW5jb2RlciAqc3QpCiAgICByZXR1cm4gKG9wdXNfdmFsMzIqKSh2b2lkKilwdHI7CiB9
CiAKKyNpZmRlZiBFTkFCTEVfRVhQRVJJTUVOVEFMX0FNQklTT05JQ1MKK3N0YXRpYyBpbnQgdmFs
aWRhdGVfYW1iaXNvbmljcyhpbnQgbmJfY2hhbm5lbHMsIGludCAqbmJfc3RyZWFtcywgaW50ICpu
Yl9jb3VwbGVkX3N0cmVhbXMpCit7CisgICBpbnQgb3JkZXJfcGx1c19vbmU7CisgICBpbnQgYWNu
X2NoYW5uZWxzOworICAgaW50IG5vbmRpZWdldGljX2NoYW5uZWxzOworCisgICBvcmRlcl9wbHVz
X29uZSA9IGlzcXJ0MzIobmJfY2hhbm5lbHMpOworICAgYWNuX2NoYW5uZWxzID0gb3JkZXJfcGx1
c19vbmUgKiBvcmRlcl9wbHVzX29uZTsKKyAgIG5vbmRpZWdldGljX2NoYW5uZWxzID0gbmJfY2hh
bm5lbHMgLSBhY25fY2hhbm5lbHM7CisKKyAgIGlmIChvcmRlcl9wbHVzX29uZSA8IDEgfHwgb3Jk
ZXJfcGx1c19vbmUgPiAxNSB8fAorICAgICAgIChub25kaWVnZXRpY19jaGFubmVscyAhPSAwICYm
IG5vbmRpZWdldGljX2NoYW5uZWxzICE9IDIpKQorICAgICAgcmV0dXJuIDA7CisKKyAgIGlmIChu
Yl9zdHJlYW1zKQorICAgICAgKm5iX3N0cmVhbXMgPSBhY25fY2hhbm5lbHMgKyAobm9uZGllZ2V0
aWNfY2hhbm5lbHMgIT0gMCk7CisgICBpZiAobmJfY291cGxlZF9zdHJlYW1zKQorICAgICAgKm5i
X2NvdXBsZWRfc3RyZWFtcyA9IG5vbmRpZWdldGljX2NoYW5uZWxzICE9IDA7CisgICByZXR1cm4g
MTsKK30KKyNlbmRpZgorCiBzdGF0aWMgaW50IHZhbGlkYXRlX2VuY29kZXJfbGF5b3V0KGNvbnN0
IENoYW5uZWxMYXlvdXQgKmxheW91dCkKIHsKICAgIGludCBzOwpAQCAtMjQwLDYgKzI2Miw3IEBA
IHZvaWQgc3Vycm91bmRfYW5hbHlzaXMoY29uc3QgQ0VMVE1vZGUgKmNlbHRfbW9kZSwgY29uc3Qg
dm9pZCAqcGNtLCBvcHVzX3ZhbDE2ICpiCiAgICBpbnQgcG9zWzhdID0gezB9OwogICAgaW50IHVw
c2FtcGxlOwogICAgaW50IGZyYW1lX3NpemU7CisgICBpbnQgZnJlcV9zaXplOwogICAgb3B1c192
YWwxNiBjaGFubmVsX29mZnNldDsKICAgIG9wdXNfdmFsMzIgYmFuZEVbMjFdOwogICAgb3B1c192
YWwxNiBtYXNrTG9nRVszXVsyMV07CkBAIC0yNTAsNiArMjczLDcgQEAgdm9pZCBzdXJyb3VuZF9h
bmFseXNpcyhjb25zdCBDRUxUTW9kZSAqY2VsdF9tb2RlLCBjb25zdCB2b2lkICpwY20sIG9wdXNf
dmFsMTYgKmIKIAogICAgdXBzYW1wbGUgPSByZXNhbXBsaW5nX2ZhY3RvcihyYXRlKTsKICAgIGZy
YW1lX3NpemUgPSBsZW4qdXBzYW1wbGU7CisgICBmcmVxX3NpemUgPSBJTUlOKDk2MCwgZnJhbWVf
c2l6ZSk7CiAKICAgIC8qIExNID0gbG9nMihmcmFtZV9zaXplIC8gMTIwKSAqLwogICAgZm9yIChM
TT0wO0xNPGNlbHRfbW9kZS0+bWF4TE07TE0rKykKQEAgLTI1OCw3ICsyODIsNyBAQCB2b2lkIHN1
cnJvdW5kX2FuYWx5c2lzKGNvbnN0IENFTFRNb2RlICpjZWx0X21vZGUsIGNvbnN0IHZvaWQgKnBj
bSwgb3B1c192YWwxNiAqYgogCiAgICBBTExPQyhpbiwgZnJhbWVfc2l6ZStvdmVybGFwLCBvcHVz
X3ZhbDMyKTsKICAgIEFMTE9DKHgsIGxlbiwgb3B1c192YWwxNik7Ci0gICBBTExPQyhmcmVxLCBm
cmFtZV9zaXplLCBvcHVzX3ZhbDMyKTsKKyAgIEFMTE9DKGZyZXEsIGZyZXFfc2l6ZSwgb3B1c192
YWwzMik7CiAKICAgIGNoYW5uZWxfcG9zKGNoYW5uZWxzLCBwb3MpOwogCkBAIC0yNjgsNiArMjky
LDkgQEAgdm9pZCBzdXJyb3VuZF9hbmFseXNpcyhjb25zdCBDRUxUTW9kZSAqY2VsdF9tb2RlLCBj
b25zdCB2b2lkICpwY20sIG9wdXNfdmFsMTYgKmIKIAogICAgZm9yIChjPTA7YzxjaGFubmVscztj
KyspCiAgICB7CisgICAgICBpbnQgZnJhbWU7CisgICAgICBpbnQgbmJfZnJhbWVzID0gZnJhbWVf
c2l6ZS9mcmVxX3NpemU7CisgICAgICBjZWx0X2Fzc2VydChuYl9mcmFtZXMqZnJlcV9zaXplID09
IGZyYW1lX3NpemUpOwogICAgICAgT1BVU19DT1BZKGluLCBtZW0rYypvdmVybGFwLCBvdmVybGFw
KTsKICAgICAgICgqY29weV9jaGFubmVsX2luKSh4LCAxLCBwY20sIGNoYW5uZWxzLCBjLCBsZW4p
OwogICAgICAgY2VsdF9wcmVlbXBoYXNpcyh4LCBpbitvdmVybGFwLCBmcmFtZV9zaXplLCAxLCB1
cHNhbXBsZSwgY2VsdF9tb2RlLT5wcmVlbXBoLCBwcmVlbXBoX21lbStjLCAwKTsKQEAgLTI3Nywy
NSArMzA0LDMzIEBAIHZvaWQgc3Vycm91bmRfYW5hbHlzaXMoY29uc3QgQ0VMVE1vZGUgKmNlbHRf
bW9kZSwgY29uc3Qgdm9pZCAqcGNtLCBvcHVzX3ZhbDE2ICpiCiAgICAgICAgICBzdW0gPSBjZWx0
X2lubmVyX3Byb2QoaW4sIGluLCBmcmFtZV9zaXplK292ZXJsYXAsIDApOwogICAgICAgICAgLyog
VGhpcyBzaG91bGQgZmlsdGVyIG91dCBib3RoIE5hTnMgYW5kIHJpZGljdWxvdXMgc2lnbmFscyB0
aGF0IGNvdWxkCiAgICAgICAgICAgICBjYXVzZSBOYU5zIGZ1cnRoZXIgZG93bi4gKi8KLSAgICAg
ICAgIGlmICghKHN1bSA8IDFlOWYpIHx8IGNlbHRfaXNuYW4oc3VtKSkKKyAgICAgICAgIGlmICgh
KHN1bSA8IDFlMThmKSB8fCBjZWx0X2lzbmFuKHN1bSkpCiAgICAgICAgICB7CiAgICAgICAgICAg
ICBPUFVTX0NMRUFSKGluLCBmcmFtZV9zaXplK292ZXJsYXApOwogICAgICAgICAgICAgcHJlZW1w
aF9tZW1bY10gPSAwOwogICAgICAgICAgfQogICAgICAgfQogI2VuZGlmCi0gICAgICBjbHRfbWRj
dF9mb3J3YXJkKCZjZWx0X21vZGUtPm1kY3QsIGluLCBmcmVxLCBjZWx0X21vZGUtPndpbmRvdywK
LSAgICAgICAgICAgIG92ZXJsYXAsIGNlbHRfbW9kZS0+bWF4TE0tTE0sIDEsIGFyY2gpOwotICAg
ICAgaWYgKHVwc2FtcGxlICE9IDEpCisgICAgICBPUFVTX0NMRUFSKGJhbmRFLCAyMSk7CisgICAg
ICBmb3IgKGZyYW1lPTA7ZnJhbWU8bmJfZnJhbWVzO2ZyYW1lKyspCiAgICAgICB7Ci0gICAgICAg
ICBpbnQgYm91bmQgPSBsZW47Ci0gICAgICAgICBmb3IgKGk9MDtpPGJvdW5kO2krKykKLSAgICAg
ICAgICAgIGZyZXFbaV0gKj0gdXBzYW1wbGU7Ci0gICAgICAgICBmb3IgKDtpPGZyYW1lX3NpemU7
aSsrKQotICAgICAgICAgICAgZnJlcVtpXSA9IDA7Ci0gICAgICB9CisgICAgICAgICBvcHVzX3Zh
bDMyIHRtcEVbMjFdOworICAgICAgICAgY2x0X21kY3RfZm9yd2FyZCgmY2VsdF9tb2RlLT5tZGN0
LCBpbis5NjAqZnJhbWUsIGZyZXEsIGNlbHRfbW9kZS0+d2luZG93LAorICAgICAgICAgICAgICAg
b3ZlcmxhcCwgY2VsdF9tb2RlLT5tYXhMTS1MTSwgMSwgYXJjaCk7CisgICAgICAgICBpZiAodXBz
YW1wbGUgIT0gMSkKKyAgICAgICAgIHsKKyAgICAgICAgICAgIGludCBib3VuZCA9IGZyZXFfc2l6
ZS91cHNhbXBsZTsKKyAgICAgICAgICAgIGZvciAoaT0wO2k8Ym91bmQ7aSsrKQorICAgICAgICAg
ICAgICAgZnJlcVtpXSAqPSB1cHNhbXBsZTsKKyAgICAgICAgICAgIGZvciAoO2k8ZnJlcV9zaXpl
O2krKykKKyAgICAgICAgICAgICAgIGZyZXFbaV0gPSAwOworICAgICAgICAgfQogCi0gICAgICBj
b21wdXRlX2JhbmRfZW5lcmdpZXMoY2VsdF9tb2RlLCBmcmVxLCBiYW5kRSwgMjEsIDEsIExNKTsK
KyAgICAgICAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhjZWx0X21vZGUsIGZyZXEsIHRtcEUsIDIx
LCAxLCBMTSwgYXJjaCk7CisgICAgICAgICAvKiBJZiB3ZSBoYXZlIG11bHRpcGxlIGZyYW1lcywg
dGFrZSB0aGUgbWF4IGVuZXJneS4gKi8KKyAgICAgICAgIGZvciAoaT0wO2k8MjE7aSsrKQorICAg
ICAgICAgICAgYmFuZEVbaV0gPSBNQVgzMihiYW5kRVtpXSwgdG1wRVtpXSk7CisgICAgICB9CiAg
ICAgICBhbXAyTG9nMihjZWx0X21vZGUsIDIxLCAyMSwgYmFuZEUsIGJhbmRMb2dFKzIxKmMsIDEp
OwogICAgICAgLyogQXBwbHkgc3ByZWFkaW5nIGZ1bmN0aW9uIHdpdGggLTYgZEIvYmFuZCBnb2lu
ZyB1cCBhbmQgLTEyIGRCL2JhbmQgZ29pbmcgZG93bi4gKi8KICAgICAgIGZvciAoaT0xO2k8MjE7
aSsrKQpAQCAtNDExLDggKzQ0Niw4IEBAIG9wdXNfaW50MzIgb3B1c19tdWx0aXN0cmVhbV9zdXJy
b3VuZF9lbmNvZGVyX2dldF9zaXplKGludCBjaGFubmVscywgaW50IG1hcHBpbmdfCiAjaWZkZWYg
RU5BQkxFX0VYUEVSSU1FTlRBTF9BTUJJU09OSUNTCiAgICB9IGVsc2UgaWYgKG1hcHBpbmdfZmFt
aWx5PT0yNTQpCiAgICB7Ci0gICAgICBuYl9zdHJlYW1zPWNoYW5uZWxzOwotICAgICAgbmJfY291
cGxlZF9zdHJlYW1zPTA7CisgICAgICBpZiAoIXZhbGlkYXRlX2FtYmlzb25pY3MoY2hhbm5lbHMs
ICZuYl9zdHJlYW1zLCAmbmJfY291cGxlZF9zdHJlYW1zKSkKKyAgICAgICAgIHJldHVybiAwOwog
I2VuZGlmCiAgICB9IGVsc2UKICAgICAgIHJldHVybiAwOwpAQCAtNDQ4LDcgKzQ4Myw2IEBAIHN0
YXRpYyBpbnQgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2luaXRfaW1wbCgKICAgIHN0LT5sYXlv
dXQubmJfY2hhbm5lbHMgPSBjaGFubmVsczsKICAgIHN0LT5sYXlvdXQubmJfc3RyZWFtcyA9IHN0
cmVhbXM7CiAgICBzdC0+bGF5b3V0Lm5iX2NvdXBsZWRfc3RyZWFtcyA9IGNvdXBsZWRfc3RyZWFt
czsKLSAgIHN0LT5zdWJmcmFtZV9tZW1bMF09c3QtPnN1YmZyYW1lX21lbVsxXT1zdC0+c3ViZnJh
bWVfbWVtWzJdPTA7CiAgICBpZiAobWFwcGluZ190eXBlICE9IE1BUFBJTkdfVFlQRV9TVVJST1VO
RCkKICAgICAgIHN0LT5sZmVfc3RyZWFtID0gLTE7CiAgICBzdC0+Yml0cmF0ZV9icHMgPSBPUFVT
X0FVVE87CkBAIC00NTYsOCArNDkwLDE2IEBAIHN0YXRpYyBpbnQgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2luaXRfaW1wbCgKICAgIHN0LT52YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVT
SVpFX0FSRzsKICAgIGZvciAoaT0wO2k8c3QtPmxheW91dC5uYl9jaGFubmVscztpKyspCiAgICAg
ICBzdC0+bGF5b3V0Lm1hcHBpbmdbaV0gPSBtYXBwaW5nW2ldOwotICAgaWYgKCF2YWxpZGF0ZV9s
YXlvdXQoJnN0LT5sYXlvdXQpIHx8ICF2YWxpZGF0ZV9lbmNvZGVyX2xheW91dCgmc3QtPmxheW91
dCkpCisgICBpZiAoIXZhbGlkYXRlX2xheW91dCgmc3QtPmxheW91dCkpCiAgICAgICByZXR1cm4g
T1BVU19CQURfQVJHOworICAgaWYgKG1hcHBpbmdfdHlwZSA9PSBNQVBQSU5HX1RZUEVfU1VSUk9V
TkQgJiYKKyAgICAgICAhdmFsaWRhdGVfZW5jb2Rlcl9sYXlvdXQoJnN0LT5sYXlvdXQpKQorICAg
ICAgcmV0dXJuIE9QVVNfQkFEX0FSRzsKKyNpZmRlZiBFTkFCTEVfRVhQRVJJTUVOVEFMX0FNQklT
T05JQ1MKKyAgIGlmIChtYXBwaW5nX3R5cGUgPT0gTUFQUElOR19UWVBFX0FNQklTT05JQ1MgJiYK
KyAgICAgICAhdmFsaWRhdGVfYW1iaXNvbmljcyhzdC0+bGF5b3V0Lm5iX2NoYW5uZWxzLCBOVUxM
LCBOVUxMKSkKKyAgICAgIHJldHVybiBPUFVTX0JBRF9BUkc7CisjZW5kaWYKICAgIHB0ciA9IChj
aGFyKilzdCArIGFsaWduKHNpemVvZihPcHVzTVNFbmNvZGVyKSk7CiAgICBjb3VwbGVkX3NpemUg
PSBvcHVzX2VuY29kZXJfZ2V0X3NpemUoMik7CiAgICBtb25vX3NpemUgPSBvcHVzX2VuY29kZXJf
Z2V0X3NpemUoMSk7CkBAIC01NTMsMTAgKzU5NSwxMiBAQCBpbnQgb3B1c19tdWx0aXN0cmVhbV9z
dXJyb3VuZF9lbmNvZGVyX2luaXQoCiAgICB9IGVsc2UgaWYgKG1hcHBpbmdfZmFtaWx5PT0yNTQp
CiAgICB7CiAgICAgICBpbnQgaTsKLSAgICAgICpzdHJlYW1zPWNoYW5uZWxzOwotICAgICAgKmNv
dXBsZWRfc3RyZWFtcz0wOwotICAgICAgZm9yKGk9MDtpPGNoYW5uZWxzO2krKykKLSAgICAgICAg
IG1hcHBpbmdbaV0gPSBpOworICAgICAgaWYgKCF2YWxpZGF0ZV9hbWJpc29uaWNzKGNoYW5uZWxz
LCBzdHJlYW1zLCBjb3VwbGVkX3N0cmVhbXMpKQorICAgICAgICAgcmV0dXJuIE9QVVNfQkFEX0FS
RzsKKyAgICAgIGZvcihpID0gMDsgaSA8ICgqc3RyZWFtcyAtICpjb3VwbGVkX3N0cmVhbXMpOyBp
KyspCisgICAgICAgICBtYXBwaW5nW2ldID0gaSArICgqY291cGxlZF9zdHJlYW1zICogMik7Cisg
ICAgICBmb3IoaSA9IDA7IGkgPCAqY291cGxlZF9zdHJlYW1zICogMjsgaSsrKQorICAgICAgICAg
bWFwcGluZ1tpICsgKCpzdHJlYW1zIC0gKmNvdXBsZWRfc3RyZWFtcyldID0gaTsKICNlbmRpZgog
ICAgfSBlbHNlCiAgICAgICByZXR1cm4gT1BVU19VTklNUExFTUVOVEVEOwpAQCAtNjcyLDU4ICs3
MTYsNTkgQEAgc3RhdGljIHZvaWQgc3Vycm91bmRfcmF0ZV9hbGxvY2F0aW9uKAogICAgaW50IGxm
ZV9vZmZzZXQ7CiAgICBpbnQgY291cGxlZF9yYXRpbzsgLyogUTggKi8KICAgIGludCBsZmVfcmF0
aW87ICAgICAvKiBROCAqLworICAgaW50IG5iX2xmZTsKKyAgIGludCBuYl91bmNvdXBsZWQ7Cisg
ICBpbnQgbmJfY291cGxlZDsKKyAgIGludCBuYl9ub3JtYWw7CisgICBvcHVzX2ludDMyIGNoYW5u
ZWxfb2Zmc2V0OworICAgb3B1c19pbnQzMiBiaXRyYXRlOworICAgaW50IHRvdGFsOworCisgICBu
Yl9sZmUgPSAoc3QtPmxmZV9zdHJlYW0hPS0xKTsKKyAgIG5iX2NvdXBsZWQgPSBzdC0+bGF5b3V0
Lm5iX2NvdXBsZWRfc3RyZWFtczsKKyAgIG5iX3VuY291cGxlZCA9IHN0LT5sYXlvdXQubmJfc3Ry
ZWFtcy1uYl9jb3VwbGVkLW5iX2xmZTsKKyAgIG5iX25vcm1hbCA9IDIqbmJfY291cGxlZCArIG5i
X3VuY291cGxlZDsKKworICAgLyogR2l2ZSBlYWNoIG5vbi1MRkUgY2hhbm5lbCBlbm91Z2ggYml0
cyBwZXIgY2hhbm5lbCBmb3IgY29kaW5nIGJhbmQgZW5lcmd5LiAqLworICAgY2hhbm5lbF9vZmZz
ZXQgPSA0MCpJTUFYKDUwLCBGcy9mcmFtZV9zaXplKTsKIAotICAgaWYgKHN0LT5iaXRyYXRlX2Jw
cyA+IHN0LT5sYXlvdXQubmJfY2hhbm5lbHMqNDAwMDApCi0gICAgICBzdHJlYW1fb2Zmc2V0ID0g
MjAwMDA7Ci0gICBlbHNlCi0gICAgICBzdHJlYW1fb2Zmc2V0ID0gc3QtPmJpdHJhdGVfYnBzL3N0
LT5sYXlvdXQubmJfY2hhbm5lbHMvMjsKLSAgIHN0cmVhbV9vZmZzZXQgKz0gNjAqKEZzL2ZyYW1l
X3NpemUtNTApOwotICAgLyogV2Ugc3RhcnQgYnkgZ2l2aW5nIGVhY2ggc3RyZWFtIChjb3VwbGVk
IG9yIHVuY291cGxlZCkgdGhlIHNhbWUgYml0cmF0ZS4KLSAgICAgIFRoaXMgbW9kZWxzIHRoZSBt
YWluIHNhdmluZyBvZiBjb3VwbGVkIGNoYW5uZWxzIG92ZXIgdW5jb3VwbGVkLiAqLwotICAgLyog
VGhlIExGRSBzdHJlYW0gaXMgYW4gZXhjZXB0aW9uIHRvIHRoZSBhYm92ZSBhbmQgZ2V0cyBmZXdl
ciBiaXRzLiAqLwotICAgbGZlX29mZnNldCA9IDM1MDAgKyA2MCooRnMvZnJhbWVfc2l6ZS01MCk7
Ci0gICAvKiBDb3VwbGVkIHN0cmVhbXMgZ2V0IHR3aWNlIHRoZSBtb25vIHJhdGUgYWZ0ZXIgdGhl
IGZpcnN0IDIwIGtiL3MuICovCi0gICBjb3VwbGVkX3JhdGlvID0gNTEyOwotICAgLyogU2hvdWxk
IGRlcGVuZCBvbiB0aGUgYml0cmF0ZSwgZm9yIG5vdyB3ZSBhc3N1bWUgTEZFIGdldHMgMS84IHRo
ZSBiaXRzIG9mIG1vbm8gKi8KLSAgIGxmZV9yYXRpbyA9IDMyOwotCi0gICAvKiBDb21wdXRlIGJp
dHJhdGUgYWxsb2NhdGlvbiBiZXR3ZWVuIHN0cmVhbXMgKi8KICAgIGlmIChzdC0+Yml0cmF0ZV9i
cHM9PU9QVVNfQVVUTykKICAgIHsKLSAgICAgIGNoYW5uZWxfcmF0ZSA9IEZzKzYwKkZzL2ZyYW1l
X3NpemU7CisgICAgICBiaXRyYXRlID0gbmJfbm9ybWFsKihjaGFubmVsX29mZnNldCArIEZzICsg
MTAwMDApICsgODAwMCpuYl9sZmU7CiAgICB9IGVsc2UgaWYgKHN0LT5iaXRyYXRlX2Jwcz09T1BV
U19CSVRSQVRFX01BWCkKICAgIHsKLSAgICAgIGNoYW5uZWxfcmF0ZSA9IDMwMDAwMDsKKyAgICAg
IGJpdHJhdGUgPSBuYl9ub3JtYWwqMzAwMDAwICsgbmJfbGZlKjEyODAwMDsKICAgIH0gZWxzZSB7
Ci0gICAgICBpbnQgbmJfbGZlOwotICAgICAgaW50IG5iX3VuY291cGxlZDsKLSAgICAgIGludCBu
Yl9jb3VwbGVkOwotICAgICAgaW50IHRvdGFsOwotICAgICAgbmJfbGZlID0gKHN0LT5sZmVfc3Ry
ZWFtIT0tMSk7Ci0gICAgICBuYl9jb3VwbGVkID0gc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVh
bXM7Ci0gICAgICBuYl91bmNvdXBsZWQgPSBzdC0+bGF5b3V0Lm5iX3N0cmVhbXMtbmJfY291cGxl
ZC1uYl9sZmU7Ci0gICAgICB0b3RhbCA9IChuYl91bmNvdXBsZWQ8PDgpICAgICAgICAgLyogbW9u
byAqLwotICAgICAgICAgICAgKyBjb3VwbGVkX3JhdGlvKm5iX2NvdXBsZWQgLyogc3RlcmVvICov
Ci0gICAgICAgICAgICArIG5iX2xmZSpsZmVfcmF0aW87Ci0gICAgICBjaGFubmVsX3JhdGUgPSAy
NTYqKHN0LT5iaXRyYXRlX2Jwcy1sZmVfb2Zmc2V0Km5iX2xmZS1zdHJlYW1fb2Zmc2V0KihuYl9j
b3VwbGVkK25iX3VuY291cGxlZCkpL3RvdGFsOworICAgICAgYml0cmF0ZSA9IHN0LT5iaXRyYXRl
X2JwczsKICAgIH0KLSNpZm5kZWYgRklYRURfUE9JTlQKLSAgIGlmIChzdC0+dmFyaWFibGVfZHVy
YXRpb249PU9QVVNfRlJBTUVTSVpFX1ZBUklBQkxFICYmIGZyYW1lX3NpemUgIT0gRnMvNTApCi0g
ICB7Ci0gICAgICBvcHVzX2ludDMyIGJvbnVzOwotICAgICAgYm9udXMgPSA2MCooRnMvZnJhbWVf
c2l6ZS01MCk7Ci0gICAgICBjaGFubmVsX3JhdGUgKz0gYm9udXM7Ci0gICB9Ci0jZW5kaWYKKwor
ICAgLyogR2l2ZSBMRkUgc29tZSBiYXNpYyBzdHJlYW1fY2hhbm5lbCBhbGxvY2F0aW9uIGJ1dCBu
ZXZlciBleGNlZWQgMS8yMCBvZiB0aGUKKyAgICAgIHRvdGFsIHJhdGUgZm9yIHRoZSBub24tZW5l
cmd5IHBhcnQgdG8gYXZvaWQgcHJvYmxlbXMgYXQgcmVhbGx5IGxvdyByYXRlLiAqLworICAgbGZl
X29mZnNldCA9IElNSU4oYml0cmF0ZS8yMCwgMzAwMCkgKyAxNSpJTUFYKDUwLCBGcy9mcmFtZV9z
aXplKTsKKworICAgLyogV2UgZ2l2ZSBlYWNoIHN0cmVhbSAoY291cGxlZCBvciB1bmNvdXBsZWQp
IGEgc3RhcnRpbmcgYml0cmF0ZS4KKyAgICAgIFRoaXMgbW9kZWxzIHRoZSBtYWluIHNhdmluZyBv
ZiBjb3VwbGVkIGNoYW5uZWxzIG92ZXIgdW5jb3VwbGVkLiAqLworICAgc3RyZWFtX29mZnNldCA9
IChiaXRyYXRlIC0gY2hhbm5lbF9vZmZzZXQqbmJfbm9ybWFsIC0gbGZlX29mZnNldCpuYl9sZmUp
L25iX25vcm1hbC8yOworICAgc3RyZWFtX29mZnNldCA9IElNQVgoMCwgSU1JTigyMDAwMCwgc3Ry
ZWFtX29mZnNldCkpOworCisgICAvKiBDb3VwbGVkIHN0cmVhbXMgZ2V0IHR3aWNlIHRoZSBtb25v
IHJhdGUgYWZ0ZXIgdGhlIG9mZnNldCBpcyBhbGxvY2F0ZWQuICovCisgICBjb3VwbGVkX3JhdGlv
ID0gNTEyOworICAgLyogU2hvdWxkIGRlcGVuZCBvbiB0aGUgYml0cmF0ZSwgZm9yIG5vdyB3ZSBh
c3N1bWUgTEZFIGdldHMgMS84IHRoZSBiaXRzIG9mIG1vbm8gKi8KKyAgIGxmZV9yYXRpbyA9IDMy
OworCisgICB0b3RhbCA9IChuYl91bmNvdXBsZWQ8PDgpICAgICAgICAgLyogbW9ubyAqLworICAg
ICAgICAgKyBjb3VwbGVkX3JhdGlvKm5iX2NvdXBsZWQgLyogc3RlcmVvICovCisgICAgICAgICAr
IG5iX2xmZSpsZmVfcmF0aW87CisgICBjaGFubmVsX3JhdGUgPSAyNTYqKG9wdXNfaW50NjQpKGJp
dHJhdGUgLSBsZmVfb2Zmc2V0Km5iX2xmZSAtIHN0cmVhbV9vZmZzZXQqKG5iX2NvdXBsZWQrbmJf
dW5jb3VwbGVkKSAtIGNoYW5uZWxfb2Zmc2V0Km5iX25vcm1hbCkvdG90YWw7CiAKICAgIGZvciAo
aT0wO2k8c3QtPmxheW91dC5uYl9zdHJlYW1zO2krKykKICAgIHsKICAgICAgIGlmIChpPHN0LT5s
YXlvdXQubmJfY291cGxlZF9zdHJlYW1zKQotICAgICAgICAgcmF0ZVtpXSA9IHN0cmVhbV9vZmZz
ZXQrKGNoYW5uZWxfcmF0ZSpjb3VwbGVkX3JhdGlvPj44KTsKKyAgICAgICAgIHJhdGVbaV0gPSAy
KmNoYW5uZWxfb2Zmc2V0ICsgSU1BWCgwLCBzdHJlYW1fb2Zmc2V0KyhjaGFubmVsX3JhdGUqY291
cGxlZF9yYXRpbz4+OCkpOwogICAgICAgZWxzZSBpZiAoaSE9c3QtPmxmZV9zdHJlYW0pCi0gICAg
ICAgICByYXRlW2ldID0gc3RyZWFtX29mZnNldCtjaGFubmVsX3JhdGU7CisgICAgICAgICByYXRl
W2ldID0gY2hhbm5lbF9vZmZzZXQgKyBJTUFYKDAsIHN0cmVhbV9vZmZzZXQgKyBjaGFubmVsX3Jh
dGUpOwogICAgICAgZWxzZQotICAgICAgICAgcmF0ZVtpXSA9IGxmZV9vZmZzZXQrKGNoYW5uZWxf
cmF0ZSpsZmVfcmF0aW8+PjgpOworICAgICAgICAgcmF0ZVtpXSA9IElNQVgoMCwgbGZlX29mZnNl
dCsoY2hhbm5lbF9yYXRlKmxmZV9yYXRpbz4+OCkpOwogICAgfQogfQogCkBAIC03MzYsNDcgKzc4
MSw3MiBAQCBzdGF0aWMgdm9pZCBhbWJpc29uaWNzX3JhdGVfYWxsb2NhdGlvbigKICAgICAgICkK
IHsKICAgIGludCBpOwotICAgaW50IG5vbl9tb25vX3JhdGU7CiAgICBpbnQgdG90YWxfcmF0ZTsK
KyAgIGludCBkaXJlY3Rpb25hbF9yYXRlOworICAgaW50IG5vbmRpcmVjdGlvbmFsX3JhdGU7Cisg
ICBpbnQgbGVmdG92ZXJfYml0czsKIAotICAgLyogVGhlIG1vbm8gY2hhbm5lbCBnZXRzIChyYXRl
X3JhdGlvX251bSAvIHJhdGVfcmF0aW9fZGVuKSB0aW1lcyBhcyBtYW55IGJpdHMKLSAgICAqIGFz
IGFsbCBvdGhlciBjaGFubmVscyAqLworICAgLyogRWFjaCBub25kaXJlY3Rpb25hbCBjaGFubmVs
IGdldHMgKHJhdGVfcmF0aW9fbnVtIC8gcmF0ZV9yYXRpb19kZW4pIHRpbWVzCisgICAgKiBhcyBt
YW55IGJpdHMgYXMgYWxsIG90aGVyIGFtYmlzb25pY3MgY2hhbm5lbHMuCisgICAgKi8KICAgIGNv
bnN0IGludCByYXRlX3JhdGlvX251bSA9IDQ7CiAgICBjb25zdCBpbnQgcmF0ZV9yYXRpb19kZW4g
PSAzOwotICAgY29uc3QgaW50IG51bV9jaGFubmVscyA9IHN0LT5sYXlvdXQubmJfc3RyZWFtczsK
KyAgIGNvbnN0IGludCBuYl9jaGFubmVscyA9IHN0LT5sYXlvdXQubmJfc3RyZWFtcyArIHN0LT5s
YXlvdXQubmJfY291cGxlZF9zdHJlYW1zOworICAgY29uc3QgaW50IG5iX25vbmRpcmVjdGlvbmFs
X2NoYW5uZWxzID0gc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXMgKiAyICsgMTsKKyAgIGNv
bnN0IGludCBuYl9kaXJlY3Rpb25hbF9jaGFubmVscyA9IHN0LT5sYXlvdXQubmJfc3RyZWFtcyAt
IDE7CiAKICAgIGlmIChzdC0+Yml0cmF0ZV9icHM9PU9QVVNfQVVUTykKICAgIHsKLSAgICAgIHRv
dGFsX3JhdGUgPSBudW1fY2hhbm5lbHMgKiAoMjAwMDAgKyBzdC0+bGF5b3V0Lm5iX3N0cmVhbXMq
KEZzKzYwKkZzL2ZyYW1lX3NpemUpKTsKKyAgICAgIHRvdGFsX3JhdGUgPSAoc3QtPmxheW91dC5u
Yl9jb3VwbGVkX3N0cmVhbXMgKyBzdC0+bGF5b3V0Lm5iX3N0cmVhbXMpICoKKyAgICAgICAgIChG
cys2MCpGcy9mcmFtZV9zaXplKSArIHN0LT5sYXlvdXQubmJfc3RyZWFtcyAqIDE1MDAwOwogICAg
fSBlbHNlIGlmIChzdC0+Yml0cmF0ZV9icHM9PU9QVVNfQklUUkFURV9NQVgpCiAgICB7Ci0gICAg
ICB0b3RhbF9yYXRlID0gbnVtX2NoYW5uZWxzICogMzIwMDAwOwotICAgfSBlbHNlIHsKKyAgICAg
IHRvdGFsX3JhdGUgPSBuYl9jaGFubmVscyAqIDMyMDAwMDsKKyAgIH0gZWxzZQorICAgewogICAg
ICAgdG90YWxfcmF0ZSA9IHN0LT5iaXRyYXRlX2JwczsKICAgIH0KIAotICAgLyogTGV0IHkgYmUg
dGhlIG5vbi1tb25vIHJhdGUgYW5kIGxldCBwLCBxIGJlIGludGVnZXJzIHN1Y2ggdGhhdCB0aGUg
bW9ubwotICAgICogY2hhbm5lbCByYXRlIGlzIChwL3EpICogeS4KKyAgIC8qIExldCB5IGJlIHRo
ZSBkaXJlY3Rpb25hbCByYXRlLCBtIGJlIHRoZSBudW0gb2Ygbm9uZGlyZWN0aW9uYWwgY2hhbm5l
bHMKKyAgICAqICAgbSA9IChzICsgMSkKKyAgICAqIGFuZCBsZXQgcCwgcSBiZSBpbnRlZ2VycyBz
dWNoIHRoYXQgdGhlIG5vbmRpcmVjdGlvbmFsIHJhdGUgaXMKKyAgICAqICAgbV9yYXRlID0gKHAg
LyBxKSAqIHkKICAgICAqIEFsc28gbGV0IFQgYmUgdGhlIHRvdGFsIGJpdHJhdGUgdG8gYWxsb2Nh
dGUuIFRoZW4KLSAgICAqICAgKG4gLSAxKSB5ICsgKHAvcSkgeSA9IFQKLSAgICAqICAgeSA9IChU
IHEpIC8gKHFuIC0gcSArIHApCisgICAgKiAgIFQgPSAobiAtIG0pICogeSArIG0gKiBtX3JhdGUK
KyAgICAqIFNvbHZpbmcgZm9yIHksCisgICAgKiAgIHkgPSAocSAqIFQpIC8gKG0gKiAocCAtIHEp
ICsgbiAqIHEpCiAgICAgKi8KLSAgIG5vbl9tb25vX3JhdGUgPQotICAgICAgICAgdG90YWxfcmF0
ZSAqIHJhdGVfcmF0aW9fZGVuCi0gICAgICAgICAvIChyYXRlX3JhdGlvX2RlbipudW1fY2hhbm5l
bHMgKyByYXRlX3JhdGlvX251bSAtIHJhdGVfcmF0aW9fZGVuKTsKKyAgIGRpcmVjdGlvbmFsX3Jh
dGUgPQorICAgICAgdG90YWxfcmF0ZSAqIHJhdGVfcmF0aW9fZGVuCisgICAgICAvIChuYl9ub25k
aXJlY3Rpb25hbF9jaGFubmVscyAqIChyYXRlX3JhdGlvX251bSAtIHJhdGVfcmF0aW9fZGVuKQor
ICAgICAgICsgbmJfY2hhbm5lbHMgKiByYXRlX3JhdGlvX2Rlbik7CiAKLSNpZm5kZWYgRklYRURf
UE9JTlQKLSAgIGlmIChzdC0+dmFyaWFibGVfZHVyYXRpb249PU9QVVNfRlJBTUVTSVpFX1ZBUklB
QkxFICYmIGZyYW1lX3NpemUgIT0gRnMvNTApCi0gICB7Ci0gICAgICBvcHVzX2ludDMyIGJvbnVz
ID0gNjAqKEZzL2ZyYW1lX3NpemUtNTApOwotICAgICAgbm9uX21vbm9fcmF0ZSArPSBib251czsK
LSAgIH0KLSNlbmRpZgorICAgLyogQ2FsY3VsYXRlIHRoZSBub25kaXJlY3Rpb25hbCByYXRlLgor
ICAgICogICBtX3JhdGUgPSB5ICogKHAgLyBxKQorICAgICovCisgICBub25kaXJlY3Rpb25hbF9y
YXRlID0gZGlyZWN0aW9uYWxfcmF0ZSAqIHJhdGVfcmF0aW9fbnVtIC8gcmF0ZV9yYXRpb19kZW47
CiAKLSAgIHJhdGVbMF0gPSB0b3RhbF9yYXRlIC0gKG51bV9jaGFubmVscyAtIDEpICogbm9uX21v
bm9fcmF0ZTsKLSAgIGZvciAoaT0xO2k8c3QtPmxheW91dC5uYl9zdHJlYW1zO2krKykKKyAgIC8q
IENhbGN1bGF0ZSB0aGUgbGVmdG92ZXIgZnJvbSB0cnVuY2F0aW9uIGVycm9yLgorICAgICogICBs
ZWZ0b3ZlciA9IFQgLSB5ICogKG4gLSBtKSAtIG1fcmF0ZSAqIG0KKyAgICAqIFBsYWNlIGxlZnRv
dmVyIGJpdHMgaW4gb21uaWRpcmVjdGlvbmFsIGNoYW5uZWwuCisgICAgKi8KKyAgIGxlZnRvdmVy
X2JpdHMgPSB0b3RhbF9yYXRlCisgICAgICAtIGRpcmVjdGlvbmFsX3JhdGUgKiBuYl9kaXJlY3Rp
b25hbF9jaGFubmVscworICAgICAgLSBub25kaXJlY3Rpb25hbF9yYXRlICogbmJfbm9uZGlyZWN0
aW9uYWxfY2hhbm5lbHM7CisKKyAgIC8qIENhbGN1bGF0ZSByYXRlcyBmb3IgZWFjaCBjaGFubmVs
ICovCisgICBmb3IgKGkgPSAwOyBpIDwgc3QtPmxheW91dC5uYl9zdHJlYW1zOyBpKyspCiAgICB7
Ci0gICAgICByYXRlW2ldID0gbm9uX21vbm9fcmF0ZTsKKyAgICAgIGlmIChpIDwgc3QtPmxheW91
dC5uYl9jb3VwbGVkX3N0cmVhbXMpCisgICAgICB7CisgICAgICAgICByYXRlW2ldID0gbm9uZGly
ZWN0aW9uYWxfcmF0ZSAqIDI7CisgICAgICB9IGVsc2UgaWYgKGkgPT0gc3QtPmxheW91dC5uYl9j
b3VwbGVkX3N0cmVhbXMpCisgICAgICB7CisgICAgICAgICByYXRlW2ldID0gbm9uZGlyZWN0aW9u
YWxfcmF0ZSArIGxlZnRvdmVyX2JpdHM7CisgICAgICB9IGVsc2UKKyAgICAgIHsKKyAgICAgICAg
IHJhdGVbaV0gPSBkaXJlY3Rpb25hbF9yYXRlOworICAgICAgfQogICAgfQogfQogI2VuZGlmIC8q
IEVOQUJMRV9FWFBFUklNRU5UQUxfQU1CSVNPTklDUyAqLwpAQCAtODEyLDggKzg4Miw4IEBAIHN0
YXRpYyBvcHVzX2ludDMyIHJhdGVfYWxsb2NhdGlvbigKICAgIHJldHVybiByYXRlX3N1bTsKIH0K
IAotLyogTWF4IHNpemUgaW4gY2FzZSB0aGUgZW5jb2RlciBkZWNpZGVzIHRvIHJldHVybiB0aHJl
ZSBmcmFtZXMgKi8KLSNkZWZpbmUgTVNfRlJBTUVfVE1QICgzKjEyNzUrNykKKy8qIE1heCBzaXpl
IGluIGNhc2UgdGhlIGVuY29kZXIgZGVjaWRlcyB0byByZXR1cm4gc2l4IGZyYW1lcyAoNiB4IDIw
IG1zID0gMTIwIG1zKSAqLworI2RlZmluZSBNU19GUkFNRV9UTVAgKDYqMTI3NSsxMikKIHN0YXRp
YyBpbnQgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVfbmF0aXZlCiAoCiAgICAgT3B1c01TRW5jb2Rl
ciAqc3QsCkBAIC04NTksMzIgKzkyOSw4IEBAIHN0YXRpYyBpbnQgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVfbmF0aXZlCiAgICBvcHVzX2VuY29kZXJfY3RsKChPcHVzRW5jb2RlciopcHRyLCBPUFVT
X0dFVF9WQlIoJnZicikpOwogICAgb3B1c19lbmNvZGVyX2N0bCgoT3B1c0VuY29kZXIqKXB0ciwg
Q0VMVF9HRVRfTU9ERSgmY2VsdF9tb2RlKSk7CiAKLSAgIHsKLSAgICAgIG9wdXNfaW50MzIgZGVs
YXlfY29tcGVuc2F0aW9uOwotICAgICAgaW50IGNoYW5uZWxzOwotCi0gICAgICBjaGFubmVscyA9
IHN0LT5sYXlvdXQubmJfc3RyZWFtcyArIHN0LT5sYXlvdXQubmJfY291cGxlZF9zdHJlYW1zOwot
ICAgICAgb3B1c19lbmNvZGVyX2N0bCgoT3B1c0VuY29kZXIqKXB0ciwgT1BVU19HRVRfTE9PS0FI
RUFEKCZkZWxheV9jb21wZW5zYXRpb24pKTsKLSAgICAgIGRlbGF5X2NvbXBlbnNhdGlvbiAtPSBG
cy80MDA7Ci0gICAgICBmcmFtZV9zaXplID0gY29tcHV0ZV9mcmFtZV9zaXplKHBjbSwgYW5hbHlz
aXNfZnJhbWVfc2l6ZSwKLSAgICAgICAgICAgIHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgY2hhbm5l
bHMsIEZzLCBzdC0+Yml0cmF0ZV9icHMsCi0gICAgICAgICAgICBkZWxheV9jb21wZW5zYXRpb24s
IGRvd25taXgKLSNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKLSAgICAgICAgICAgICwgc3QtPnN1
YmZyYW1lX21lbQotI2VuZGlmCi0gICAgICAgICAgICApOwotICAgfQotCi0gICBpZiAoNDAwKmZy
YW1lX3NpemUgPCBGcykKLSAgIHsKLSAgICAgIFJFU1RPUkVfU1RBQ0s7Ci0gICAgICByZXR1cm4g
T1BVU19CQURfQVJHOwotICAgfQotICAgLyogVmFsaWRhdGUgZnJhbWVfc2l6ZSBiZWZvcmUgdXNp
bmcgaXQgdG8gYWxsb2NhdGUgc3RhY2sgc3BhY2UuCi0gICAgICBUaGlzIG1pcnJvcnMgdGhlIGNo
ZWNrcyBpbiBvcHVzX2VuY29kZVtfZmxvYXRdKCkuICovCi0gICBpZiAoNDAwKmZyYW1lX3NpemUg
IT0gRnMgJiYgMjAwKmZyYW1lX3NpemUgIT0gRnMgJiYKLSAgICAgICAxMDAqZnJhbWVfc2l6ZSAh
PSBGcyAmJiAgNTAqZnJhbWVfc2l6ZSAhPSBGcyAmJgotICAgICAgICAyNSpmcmFtZV9zaXplICE9
IEZzICYmICA1MCpmcmFtZV9zaXplICE9IDMqRnMpCisgICBmcmFtZV9zaXplID0gZnJhbWVfc2l6
ZV9zZWxlY3QoYW5hbHlzaXNfZnJhbWVfc2l6ZSwgc3QtPnZhcmlhYmxlX2R1cmF0aW9uLCBGcyk7
CisgICBpZiAoZnJhbWVfc2l6ZSA8PSAwKQogICAgewogICAgICAgUkVTVE9SRV9TVEFDSzsKICAg
ICAgIHJldHVybiBPUFVTX0JBRF9BUkc7CkBAIC04OTIsNiArOTM4LDkgQEAgc3RhdGljIGludCBv
cHVzX211bHRpc3RyZWFtX2VuY29kZV9uYXRpdmUKIAogICAgLyogU21hbGxlc3QgcGFja2V0IHRo
ZSBlbmNvZGVyIGNhbiBwcm9kdWNlLiAqLwogICAgc21hbGxlc3RfcGFja2V0ID0gc3QtPmxheW91
dC5uYl9zdHJlYW1zKjItMTsKKyAgIC8qIDEwMCBtcyBuZWVkcyBhbiBleHRyYSBieXRlIHBlciBz
dHJlYW0gZm9yIHRoZSBUb0MuICovCisgICBpZiAoRnMvZnJhbWVfc2l6ZSA9PSAxMCkKKyAgICAg
c21hbGxlc3RfcGFja2V0ICs9IHN0LT5sYXlvdXQubmJfc3RyZWFtczsKICAgIGlmIChtYXhfZGF0
YV9ieXRlcyA8IHNtYWxsZXN0X3BhY2tldCkKICAgIHsKICAgICAgIFJFU1RPUkVfU1RBQ0s7CkBA
IC0xMDEzLDYgKzEwNjIsOSBAQCBzdGF0aWMgaW50IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlX25h
dGl2ZQogICAgICAgY3Vycl9tYXggPSBtYXhfZGF0YV9ieXRlcyAtIHRvdF9zaXplOwogICAgICAg
LyogUmVzZXJ2ZSBvbmUgYnl0ZSBmb3IgdGhlIGxhc3Qgc3RyZWFtIGFuZCB0d28gZm9yIHRoZSBv
dGhlcnMgKi8KICAgICAgIGN1cnJfbWF4IC09IElNQVgoMCwyKihzdC0+bGF5b3V0Lm5iX3N0cmVh
bXMtcy0xKS0xKTsKKyAgICAgIC8qIEZvciAxMDAgbXMsIHJlc2VydmUgYW4gZXh0cmEgYnl0ZSBw
ZXIgc3RyZWFtIGZvciB0aGUgVG9DICovCisgICAgICBpZiAoRnMvZnJhbWVfc2l6ZSA9PSAxMCkK
KyAgICAgICAgY3Vycl9tYXggLT0gc3QtPmxheW91dC5uYl9zdHJlYW1zLXMtMTsKICAgICAgIGN1
cnJfbWF4ID0gSU1JTihjdXJyX21heCxNU19GUkFNRV9UTVApOwogICAgICAgLyogUmVwYWNrZXRp
emVyIHdpbGwgYWRkIG9uZSBvciB0d28gYnl0ZXMgZm9yIHNlbGYtZGVsaW1pdGVkIGZyYW1lcyAq
LwogICAgICAgaWYgKHMgIT0gc3QtPmxheW91dC5uYl9zdHJlYW1zLTEpIGN1cnJfbWF4IC09ICBj
dXJyX21heD4yNTMgPyAyIDogMTsKQEAgLTExNjEsOSArMTIxMywxMSBAQCBpbnQgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChPcHVzTVNFbmNvZGVyICpzdCwgaW50IHJlcXVlc3QsIC4uLikK
ICAgIGNhc2UgT1BVU19TRVRfQklUUkFURV9SRVFVRVNUOgogICAgewogICAgICAgb3B1c19pbnQz
MiB2YWx1ZSA9IHZhX2FyZyhhcCwgb3B1c19pbnQzMik7Ci0gICAgICBpZiAodmFsdWU8MCAmJiB2
YWx1ZSE9T1BVU19BVVRPICYmIHZhbHVlIT1PUFVTX0JJVFJBVEVfTUFYKQorICAgICAgaWYgKHZh
bHVlICE9IE9QVVNfQVVUTyAmJiB2YWx1ZSAhPSBPUFVTX0JJVFJBVEVfTUFYKQogICAgICAgewot
ICAgICAgICAgZ290byBiYWRfYXJnOworICAgICAgICAgaWYgKHZhbHVlIDw9IDApCisgICAgICAg
ICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAgICB2YWx1ZSA9IElNSU4oMzAwMDAwKnN0LT5sYXlv
dXQubmJfY2hhbm5lbHMsIElNQVgoNTAwKnN0LT5sYXlvdXQubmJfY2hhbm5lbHMsIHZhbHVlKSk7
CiAgICAgICB9CiAgICAgICBzdC0+Yml0cmF0ZV9icHMgPSB2YWx1ZTsKICAgIH0KQEAgLTEyMDYs
NiArMTI2MCw3IEBAIGludCBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKE9wdXNNU0VuY29k
ZXIgKnN0LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgY2FzZSBPUFVTX0dFVF9JTkJBTkRfRkVDX1JF
UVVFU1Q6CiAgICBjYXNlIE9QVVNfR0VUX0ZPUkNFX0NIQU5ORUxTX1JFUVVFU1Q6CiAgICBjYXNl
IE9QVVNfR0VUX1BSRURJQ1RJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgIGNhc2UgT1BVU19HRVRf
UEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1Q6CiAgICB7CiAgICAgICBPcHVzRW5jb2Rl
ciAqZW5jOwogICAgICAgLyogRm9yIGludDMyKiBHRVQgcGFyYW1zLCBqdXN0IHF1ZXJ5IHRoZSBm
aXJzdCBzdHJlYW0gKi8KQEAgLTEyNTIsNiArMTMwNyw3IEBAIGludCBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKE9wdXNNU0VuY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgY2Fz
ZSBPUFVTX1NFVF9GT1JDRV9NT0RFX1JFUVVFU1Q6CiAgICBjYXNlIE9QVVNfU0VUX0ZPUkNFX0NI
QU5ORUxTX1JFUVVFU1Q6CiAgICBjYXNlIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRURfUkVR
VUVTVDoKKyAgIGNhc2UgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1Q6
CiAgICB7CiAgICAgICBpbnQgczsKICAgICAgIC8qIFRoaXMgd29ya3MgZm9yIGludDMyIHBhcmFt
cyAqLwpAQCAtMTMxMyw3ICsxMzY5LDYgQEAgaW50IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoT3B1c01TRW5jb2RlciAqc3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICBjYXNlIE9QVVNfUkVT
RVRfU1RBVEU6CiAgICB7CiAgICAgICBpbnQgczsKLSAgICAgIHN0LT5zdWJmcmFtZV9tZW1bMF0g
PSBzdC0+c3ViZnJhbWVfbWVtWzFdID0gc3QtPnN1YmZyYW1lX21lbVsyXSA9IDA7CiAgICAgICBp
ZiAoc3QtPm1hcHBpbmdfdHlwZSA9PSBNQVBQSU5HX1RZUEVfU1VSUk9VTkQpCiAgICAgICB7CiAg
ICAgICAgICBPUFVTX0NMRUFSKG1zX2dldF9wcmVlbXBoX21lbShzdCksIHN0LT5sYXlvdXQubmJf
Y2hhbm5lbHMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19wcml2YXRlLmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX3ByaXZh
dGUuaAppbmRleCAzYjYyZWVkMDk2NGYwNTM1ZWYxMjAxN2MzODlhYmI2MjdlM2M0ZDBhLi5hNzMx
Y2M1NTBlYTQzNzI0ZDUyYmViNjUwYzQ5NzBkYTlhZGJkYTAxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVz
X3ByaXZhdGUuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX3ByaXZhdGUuaApAQCAtOTIsMTQgKzkyLDYgQEAgaW50
IGVuY29kZV9zaXplKGludCBzaXplLCB1bnNpZ25lZCBjaGFyICpkYXRhKTsKIAogb3B1c19pbnQz
MiBmcmFtZV9zaXplX3NlbGVjdChvcHVzX2ludDMyIGZyYW1lX3NpemUsIGludCB2YXJpYWJsZV9k
dXJhdGlvbiwgb3B1c19pbnQzMiBGcyk7CiAKLW9wdXNfaW50MzIgY29tcHV0ZV9mcmFtZV9zaXpl
KGNvbnN0IHZvaWQgKmFuYWx5c2lzX3BjbSwgaW50IGZyYW1lX3NpemUsCi0gICAgICBpbnQgdmFy
aWFibGVfZHVyYXRpb24sIGludCBDLCBvcHVzX2ludDMyIEZzLCBpbnQgYml0cmF0ZV9icHMsCi0g
ICAgICBpbnQgZGVsYXlfY29tcGVuc2F0aW9uLCBkb3dubWl4X2Z1bmMgZG93bm1peAotI2lmbmRl
ZiBESVNBQkxFX0ZMT0FUX0FQSQotICAgICAgLCBmbG9hdCAqc3ViZnJhbWVfbWVtCi0jZW5kaWYK
LSAgICAgICk7Ci0KIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpz
dCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfc2l6ZSwKICAgICAgIHVuc2lnbmVk
IGNoYXIgKmRhdGEsIG9wdXNfaW50MzIgb3V0X2RhdGFfYnl0ZXMsIGludCBsc2JfZGVwdGgsCiAg
ICAgICBjb25zdCB2b2lkICphbmFseXNpc19wY20sIG9wdXNfaW50MzIgYW5hbHlzaXNfc2l6ZSwg
aW50IGMxLCBpbnQgYzIsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNfZGVjb2RlX2Z1enplci5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90
ZXN0cy9vcHVzX2RlY29kZV9mdXp6ZXIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MDAyNjIyMWNlYWYyOTliM2Yw
NDE0NWZkNDk3MTZmYjViMTQ2ZDIyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9vcHVzX2RlY29k
ZV9mdXp6ZXIuYwpAQCAtMCwwICsxLDEyNiBAQAorLyogQ29weXJpZ2h0IChjKSAyMDE3IEdvb2ds
ZSBJbmMuICovCisvKgorICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6CisK
KyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJ
R0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICAgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lmZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJj
b25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVkZSA8c3RkaW50Lmg+CisjaW5jbHVkZSA8c3RkbGli
Lmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSAib3B1cy5oIgorI2luY2x1ZGUgIm9w
dXNfdHlwZXMuaCIKKworI2RlZmluZSBNQVhfRlJBTUVfU0FNUCA1NzYwCisjZGVmaW5lIE1BWF9Q
QUNLRVQgMTUwMAorCisvKiA0IGJ5dGVzOiBwYWNrZXQgbGVuZ3RoLCA0IGJ5dGVzOiBlbmNvZGVy
IGZpbmFsIHJhbmdlICovCisjZGVmaW5lIFNFVFVQX0JZVEVfQ09VTlQgOAorCit0eXBlZGVmIHN0
cnVjdCB7CisgICAgaW50IGZzOworICAgIGludCBjaGFubmVsczsKK30gVG9jSW5mbzsKKworc3Rh
dGljIHZvaWQgUGFyc2VUb2MoY29uc3QgdWludDhfdCAqdG9jLCBUb2NJbmZvICpjb25zdCBpbmZv
KSB7CisgICAgY29uc3QgaW50IHNhbXBfZnJlcXNbNV0gPSB7ODAwMCwgMTIwMDAsIDE2MDAwLCAy
NDAwMCwgNDgwMDB9OworICAgIGNvbnN0IGludCBiYW5kd2lkdGggPSBvcHVzX3BhY2tldF9nZXRf
YmFuZHdpZHRoKHRvYyk7CisKKyAgICBpbmZvLT5mcyA9IHNhbXBfZnJlcXNbYmFuZHdpZHRoIC0g
T1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORF07CisgICAgaW5mby0+Y2hhbm5lbHMgPSBvcHVzX3Bh
Y2tldF9nZXRfbmJfY2hhbm5lbHModG9jKTsKK30KKworLyogVHJlYXRzIHRoZSBpbnB1dCBkYXRh
IGFzIGNvbmNhdGVuYXRlZCBwYWNrZXRzIGVuY29kZWQgYnkgb3B1c19kZW1vLAorICogc3RydWN0
dXJlZCBhcworICogICAgYnl0ZXMgMC4uMzogcGFja2V0IGxlbmd0aAorICogICAgYnl0ZXMgNC4u
NzogZW5jb2RlciBmaW5hbCByYW5nZQorICogICAgYnl0ZXMgOCsgIDogT3B1cyBwYWNrZXQsIGlu
Y2x1ZGluZyBUb0MKKyAqLworaW50IExMVk1GdXp6ZXJUZXN0T25lSW5wdXQoY29uc3QgdWludDhf
dCAqZGF0YSwgc2l6ZV90IHNpemUpIHsKKyAgICBPcHVzRGVjb2RlciAqZGVjOworICAgIG9wdXNf
aW50MTYgKnBjbTsKKyAgICB1aW50OF90ICpwYWNrZXQ7CisgICAgVG9jSW5mbyB0b2M7CisgICAg
aW50IGksIGVycjsKKworICAgIC8qIE5vdCBlbm91Z2ggZGF0YSB0byBzZXR1cCB0aGUgZGVjb2Rl
ciAoKzEgZm9yIHRoZSBUb0MpICovCisgICAgaWYgKHNpemUgPCBTRVRVUF9CWVRFX0NPVU5UICsg
MSkgeworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICAvKiBDcmVhdGUgZGVjb2RlciBi
YXNlZCBvbiBpbmZvIGZyb20gdGhlIGZpcnN0IFRvQyBhdmFpbGFibGUgKi8KKyAgICBQYXJzZVRv
YygmZGF0YVtTRVRVUF9CWVRFX0NPVU5UXSwgJnRvYyk7CisKKyAgICBkZWMgPSBvcHVzX2RlY29k
ZXJfY3JlYXRlKHRvYy5mcywgdG9jLmNoYW5uZWxzLCAmZXJyKTsKKyAgICBpZiAoZXJyICE9IE9Q
VVNfT0sgfCBkZWMgPT0gTlVMTCkgeworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBw
Y20gPSAob3B1c19pbnQxNiopIG1hbGxvYyhzaXplb2YoKnBjbSkgKiBNQVhfRlJBTUVfU0FNUCAq
IHRvYy5jaGFubmVscyk7CisgICAgcGFja2V0ID0gKHVpbnQ4X3QqKSBjYWxsb2MoTUFYX1BBQ0tF
VCwgc2l6ZW9mKCpwYWNrZXQpKTsKKworICAgIGkgPSAwOworICAgIHdoaWxlICgxKSB7CisgICAg
ICAgIGludCBsZW4sIGZlYzsKKworICAgICAgICBpZiAoaSArIFNFVFVQX0JZVEVfQ09VTlQgPj0g
c2l6ZSkgeworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKworICAgICAgICBsZW4gPSAo
b3B1c191aW50MzIpIGRhdGFbaSAgICBdIDw8IDI0IHwKKyAgICAgICAgICAgICAgKG9wdXNfdWlu
dDMyKSBkYXRhW2kgKyAxXSA8PCAxNiB8CisgICAgICAgICAgICAgIChvcHVzX3VpbnQzMikgZGF0
YVtpICsgMl0gPDwgIDggfAorICAgICAgICAgICAgICAob3B1c191aW50MzIpIGRhdGFbaSArIDNd
OworICAgICAgICBpZiAobGVuID4gTUFYX1BBQ0tFVCB8fCBsZW4gPCAwKSB7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgfQorCisgICAgICAgIC8qIEJ5dGVzIDQuLjcgcmVwcmVzZW50IGVu
Y29kZXIgZmluYWwgcmFuZ2UsIGJ1dCBhcmUgdW51c2VkIGhlcmUuCisgICAgICAgICAqIEluc3Rl
YWQsIGJ5dGUgNCBpcyByZXB1cnBvc2VkIHRvIGRldGVybWluZSBpZiBGRUMgaXMgdXNlZC4gKi8K
KyAgICAgICAgZmVjID0gZGF0YVtpICsgNF0gJiAxOworCisgICAgICAgIC8qIExvc3QgcGFja2V0
ICovCisgICAgICAgIGlmIChsZW4gPT0gMCkgeworICAgICAgICAgICAgaW50IGZyYW1lX3NpemU7
CisgICAgICAgICAgICBvcHVzX2RlY29kZXJfY3RsKGRlYywgT1BVU19HRVRfTEFTVF9QQUNLRVRf
RFVSQVRJT04oJmZyYW1lX3NpemUpKTsKKyAgICAgICAgICAgICh2b2lkKSBvcHVzX2RlY29kZShk
ZWMsIE5VTEwsIHNpemUsIHBjbSwgZnJhbWVfc2l6ZSwgZmVjKTsKKyAgICAgICAgfSBlbHNlIHsK
KyAgICAgICAgICAgIGlmIChpICsgU0VUVVBfQllURV9DT1VOVCArIGxlbiA+IHNpemUpIHsKKyAg
ICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIG1lbWNweShw
Y20sICZkYXRhW2kgKyBTRVRVUF9CWVRFX0NPVU5UXSwgbGVuKTsKKyAgICAgICAgICAgICh2b2lk
KSBvcHVzX2RlY29kZShkZWMsIGRhdGEsIHNpemUsIHBjbSwgTUFYX0ZSQU1FX1NBTVAsIGZlYyk7
CisgICAgICAgIH0KKworICAgICAgICBpICs9IFNFVFVQX0JZVEVfQ09VTlQgKyBsZW47CisgICAg
fQorCisgICAgb3B1c19kZWNvZGVyX2Rlc3Ryb3koZGVjKTsKKyAgICBmcmVlKHBjbSk7CisgICAg
ZnJlZShwYWNrZXQpOworCisgICAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNf
ZGVjb2RlX2Z1enplci5vcHRpb25zIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9vcHVzX2RlY29kZV9mdXp6ZXIub3B0aW9ucwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5lNWFlNzFiOTM3YTRlMzU1N2YwNDc1NDUwODBmMmU1Mzg3MzZkNzBmCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy90ZXN0cy9vcHVzX2RlY29kZV9mdXp6ZXIub3B0aW9ucwpAQCAtMCwwICsx
LDIgQEAKK1tsaWJmdXp6ZXJdCittYXhfbGVuID0gMTAwMDAwMApkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9v
cHVzX2VuY29kZV9yZWdyZXNzaW9ucy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9vcHVzX2VuY29kZV9yZWdyZXNzaW9ucy5j
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjI5MjM0NzMwMTQ0Mzk5MzQxYjUwYThiMzI4MmM2MjkxMjIzYjY2OTEKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNfZW5jb2RlX3JlZ3Jlc3Npb25zLmMKQEAgLTAsMCAr
MSwxMDM1IEBACisvKiBDb3B5cmlnaHQgKGMpIDIwMTYgTWFyayBIYXJyaXMsIEplYW4tTWFyYyBW
YWxpbiAqLworLyoKKyAgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgICBhcmUgbWV0OgorCisg
ICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisKKyAgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisKKyAgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAgIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UgorICAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyAgIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICAgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAorICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SCisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworICAgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTCisgICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyovCisKKworI2lmZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJj
b25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIu
aD4KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxt
YXRoLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVk
ZSAib3B1c19tdWx0aXN0cmVhbS5oIgorI2luY2x1ZGUgIm9wdXMuaCIKKyNpbmNsdWRlICJ0ZXN0
X29wdXNfY29tbW9uLmgiCisKKworc3RhdGljIGludCBjZWx0X2VjX2ludGVybmFsX2Vycm9yKHZv
aWQpCit7CisgICAgT3B1c01TRW5jb2RlciAqZW5jOworICAgIGludCBlcnI7CisgICAgdW5zaWdu
ZWQgY2hhciBkYXRhWzI0NjBdOworICAgIGludCBzdHJlYW1zOworICAgIGludCBjb3VwbGVkX3N0
cmVhbXM7CisgICAgdW5zaWduZWQgY2hhciBtYXBwaW5nWzFdOworCisgICAgZW5jID0gb3B1c19t
dWx0aXN0cmVhbV9zdXJyb3VuZF9lbmNvZGVyX2NyZWF0ZSgxNjAwMCwgMSwgMSwgJnN0cmVhbXMs
CisgICAgICAgICZjb3VwbGVkX3N0cmVhbXMsIG1hcHBpbmcsIE9QVVNfQVBQTElDQVRJT05fVk9J
UCwgJmVycik7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VU
X1NJR05BTChPUFVTX1NJR05BTF9NVVNJQykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVCgwKSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOwor
ICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZF
UlNJT05fRElTQUJMRUQoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9EVFgoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9DT01QTEVYSVRZKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5E
KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRX
SURUSChPUFVTX0FVVE8pKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfTFNCX0RFUFRIKDgpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3Rs
KGVuYywgT1BVU19TRVRfSU5CQU5EX0ZFQygwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BBQ0tFVF9MT1NTX1BFUkMoMCkpOworICAgIG9wdXNfbXVs
dGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKE9QVVNfQVVUTykpOwor
ICAgIHsKKyAgICAgICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbVszMjBdID0KKyAgICAgICAgewor
ICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwgIDE3OTIsICAxNzk5LCAgMTc5OSwKKyAgICAgICAgICAgICAgMTc5
OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5
LAorICAgICAgICAgICAgICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgICAgIDAs
IDI1NjAwLCAgMTc5OSwgIDE3OTksCisgICAgICAgICAgICAgIDE3OTksICAxNzk5LCAgMTc5OSwg
IDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwKKyAgICAgICAgICAgICAg
MTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgICAgIDcsICAgICAwLCAgIDI1NSwgICAgIDAsICAg
ICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLCAzMjc2NywgICAgLTEsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAg
MCwgICAxMDAsICAgICAwLCAxNjM4NCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAg
ICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgNCwgICAgIDAsICAgICAwLCAgLTI1NiwgICAyNTUs
ICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAg
ICAgICAgICAgMCwgICAgIDAsLTMyNzY4LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAg
ICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAxMjgsICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
LTI1NiwgICAgIDAsICAgICAwLCAgICAzMiwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgIDQzNTIsICAgICA0LCAgIDIyOCwKKyAg
ICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICA1NjMyLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAs
ICAgICAwLC0zMjc2OCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwK
KyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAg
IDAsICAgICAwLCAgICAgMCwgICAyNTYsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgIC0zOTQ0LCAxMDUwMCwgIDQyODUs
IDEwNDU5LCAtNjQ3NCwgMTAyMDQsIC02NTM5LCAxMTYwMSwgLTY4MjQsCisgICAgICAgICAgICAg
MTMzODUsIC03MTQyLCAxMzg3MiwtMTE1NTMsIDEzNjcwLCAtNzcyNSwgMTM0NjMsIC02ODg3LCAg
Nzg3NCwKKyAgICAgICAgICAgICAtNTU4MCwgMTI2MDAsIC00OTY0LCAxMjQ4MCwgIDMyNTQsIDEx
NzQxLCAtNDIxMCwgIDk3NDEsIC0zMTU1LAorICAgICAgICAgICAgICA3NTU4LCAtNTQ2OCwgIDU0
MzEsIC0xMDczLCAgMzY0MSwgLTEzMDQsICAgICAwLCAgICAtMSwgICAzNDMsCisgICAgICAgICAg
ICAgICAgMjYsICAgICAwLCAgICAgMCwgICAxNTAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAg
ICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAg
MCwgICAgIDAsICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgLTI1NTMsCisgICAg
ICAgICAgICAgICAgIDcsICAxNzkyLCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTks
ICAxNzk5LCAgMTc5OSwKKyAgICAgICAgICAgICAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwg
LTk3MjEKKyAgICAgICAgfTsKKyAgICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNvZGUo
ZW5jLCBwY20sIDMyMCwgZGF0YSwgMjQ2MCk7CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAg
ICB9CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05B
TChPUFVTX1NJR05BTF9NVVNJQykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9WQlIoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOworICAgIG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05f
RElTQUJMRUQoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVT
X1NFVF9EVFgoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVT
X1NFVF9DT01QTEVYSVRZKDEwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX01BWF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQpKTsKKyAg
ICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9Q
VVNfQkFORFdJRFRIX0ZVTExCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSCgxOCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9JTkJBTkRfRkVDKDEpKTsKKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEFDS0VUX0xPU1NfUEVSQyg5MCkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDI4MDEz
MCkpOworICAgIHsKKyAgICAgICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbVsxNjBdID0KKyAgICAg
ICAgeworICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MjYsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAg
ICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAg
ICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAg
ICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIDI1NjAwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAg
ICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwK
KyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMAorICAgICAgICB9OworICAgICAgICBlcnIgPSBvcHVzX211bHRpc3RyZWFtX2VuY29k
ZShlbmMsIHBjbSwgMTYwLCBkYXRhLCAyNDYwKTsKKyAgICAgICAgYXNzZXJ0KGVyciA+IDApOwor
ICAgIH0KKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lH
TkFMKE9QVVNfU0lHTkFMX01VU0lDKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX1ZCUigwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX1ZCUl9DT05TVFJBSU5UKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUFJFRElDVElPTl9ESVNBQkxFRCgxKSk7CisgICAg
b3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lP
Tl9ESVNBQkxFRCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX0RUWCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX0NPTVBMRVhJVFkoMTApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3Rs
KGVuYywgT1BVU19TRVRfTUFYX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9GVUxMQkFORCkpOwor
ICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgo
T1BVU19CQU5EV0lEVEhfRlVMTEJBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfTFNCX0RFUFRIKDE4KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0lOQkFORF9GRUMoMSkpOworICAgIG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDkwKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMjgw
MTMwKSk7CisgICAgeworICAgICAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtWzE2MF0gPQorICAg
ICAgICB7CisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAg
ICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAg
ICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAg
ICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NDk0LCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAor
ICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwCisgICAgICAgIH07CisgICAgICAgIGVyciA9IG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2RlKGVuYywgcGNtLCAxNjAsIGRhdGEsIDI0NjApOworICAgICAgICBhc3NlcnQoZXJyID4gMCk7
CisgICAgfQorICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9T
SUdOQUwoT1BVU19TSUdOQUxfTVVTSUMpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfVkJSKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKDEpKTsKKyAg
ICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEhBU0VfSU5WRVJT
SU9OX0RJU0FCTEVEKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfRFRYKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfQ09NUExFWElUWSgxMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURU
SChPUFVTX0JBTkRXSURUSF9GVUxMQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9MU0JfREVQVEgoMTgpKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfSU5CQU5EX0ZFQygxKSk7CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BBQ0tFVF9MT1NTX1BFUkMoOTApKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURSgy
ODAxMzApKTsKKyAgICB7CisgICAgICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY21bMTYwXSA9Cisg
ICAgICAgIHsKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAg
ICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAg
ICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisg
ICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
CisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NDc5LCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAg
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAKKyAgICAgICAgfTsKKyAgICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGUoZW5jLCBwY20sIDE2MCwgZGF0YSwgMjQ2MCk7CisgICAgICAgIGFzc2VydChlcnIgPiAw
KTsKKyAgICB9CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VU
X1NJR05BTChPUFVTX1NJR05BTF9NVVNJQykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVCgxKSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOwor
ICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZF
UlNJT05fRElTQUJMRUQoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9EVFgoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9DT01QTEVYSVRZKDEwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVy
X2N0bChlbmMsIE9QVVNfU0VUX01BWF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQp
KTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJ
RFRIKE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSCgxOCkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9JTkJBTkRfRkVDKDEpKTsKKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEFDS0VUX0xPU1NfUEVSQyg5MCkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRF
KDI4MDEzMCkpOworICAgIHsKKyAgICAgICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbVsxNjBdID0K
KyAgICAgICAgeworICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgIDE3OTksICAxNzk5LCAgMTc5
OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksCisgICAgICAgICAgICAgIDE3OTksICAxNzk5
LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgICAgMCwKKyAgICAg
ICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAg
ICAgICAgICAgICAgLTI1NiwgICAyNTUsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwK
KyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgMTI4LCAgICAg
MCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAzMiwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAg
IDQzNTIsICAgICA0LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAxNDgsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICA1NjMyCisgICAgICAgIH07
CisgICAgICAgIGVyciA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlKGVuYywgcGNtLCAxNjAsIGRh
dGEsIDI0NjApOworICAgICAgICBhc3NlcnQoZXJyID4gMCk7CisgICAgfQorICAgIG9wdXNfbXVs
dGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfVk9J
Q0UpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJS
KDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJS
X0NPTlNUUkFJTlQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2Vu
Y29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKDEpKTsKKyAg
ICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRFRYKDEpKTsKKyAg
ICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElUWSgw
KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9C
QU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19BVVRPKSk7CisgICAg
b3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSCgxMikp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9JTkJBTkRf
RkVDKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
UEFDS0VUX0xPU1NfUEVSQyg0MSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDIxNDI1KSk7CisgICAgeworICAgICAgICBzdGF0aWMgY29u
c3Qgc2hvcnQgcGNtWzQwXSA9CisgICAgICAgIHsKKyAgICAgICAgICAgICAxMDQ1OSwgLTY0NzQs
IDEwMjA0LCAtNjUzOSwgMTE2MDEsIC02ODI0LCAxMzM4NSwgLTcxNDIsIDEzODcyLAorICAgICAg
ICAgICAgLTExNTUzLCAxMzY3MCwgLTc3MjUsIDEzNDYzLCAtNjg4NywgMTI0ODIsIC01NTgwLCAx
MjYwMCwgLTQ5NjQsCisgICAgICAgICAgICAgMTI0ODAsICAzMjU0LCAxMTc0MSwgLTQyMTAsICA5
NzQxLCAtMzE1NSwgIDc1NTgsIC01NDY4LCAgNTQzMSwKKyAgICAgICAgICAgICAtMTA3MywgIDM2
NDEsIC0xMzA0LCAgICAgMCwgICAgLTEsICAgMzQzLCAgICAyNiwgICAgIDAsICAgICAwLAorICAg
ICAgICAgICAgICAgICAwLCAgICAgMCwgIC0yNTYsICAgMjI2CisgICAgICAgIH07CisgICAgICAg
IGVyciA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlKGVuYywgcGNtLCA0MCwgZGF0YSwgMjQ2MCk7
CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICAgICAgLyogcmV0dXJucyAtMyAqLworICAg
IH0KKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfZGVzdHJveShlbmMpOworICAgIHJldHVy
biAwOworfQorCitzdGF0aWMgaW50IG1zY2JyX2VuY29kZV9mYWlsMTAodm9pZCkKK3sKKyAgICBP
cHVzTVNFbmNvZGVyICplbmM7CisgICAgaW50IGVycjsKKyAgICB1bnNpZ25lZCBjaGFyIGRhdGFb
NjI3MzAwXTsKKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBtYXBwaW5nWzI1NV0gPQor
ICAgIHsKKyAgICAgICAgICAwLCAgMSwgIDIsICAzLCAgNCwgIDUsICA2LCAgNywgIDgsICA5LCAx
MCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwKKyAgICAgICAgIDE3LCAxOCwgMTksIDIwLCAyMSwg
MjIsIDIzLCAyNCwgMjUsIDI2LCAyNywgMjgsIDI5LCAzMCwgMzEsIDMyLCAzMywKKyAgICAgICAg
IDM0LCAzNSwgMzYsIDM3LCAzOCwgMzksIDQwLCA0MSwgNDIsIDQzLCA0NCwgNDUsIDQ2LCA0Nywg
NDgsIDQ5LCA1MCwKKyAgICAgICAgIDUxLCA1MiwgNTMsIDU0LCA1NSwgNTYsIDU3LCA1OCwgNTks
IDYwLCA2MSwgNjIsIDYzLCA2NCwgNjUsIDY2LCA2NywKKyAgICAgICAgIDY4LCA2OSwgNzAsIDcx
LCA3MiwgNzMsIDc0LCA3NSwgNzYsIDc3LCA3OCwgNzksIDgwLCA4MSwgODIsIDgzLCA4NCwKKyAg
ICAgICAgIDg1LCA4NiwgODcsIDg4LCA4OSwgOTAsIDkxLCA5MiwgOTMsIDk0LCA5NSwgOTYsIDk3
LCA5OCwgOTksMTAwLDEwMSwKKyAgICAgICAgMTAyLDEwMywxMDQsMTA1LDEwNiwxMDcsMTA4LDEw
OSwxMTAsMTExLDExMiwxMTMsMTE0LDExNSwxMTYsMTE3LDExOCwKKyAgICAgICAgMTE5LDEyMCwx
MjEsMTIyLDEyMywxMjQsMTI1LDEyNiwxMjcsMTI4LDEyOSwxMzAsMTMxLDEzMiwxMzMsMTM0LDEz
NSwKKyAgICAgICAgMTM2LDEzNywxMzgsMTM5LDE0MCwxNDEsMTQyLDE0MywxNDQsMTQ1LDE0Niwx
NDcsMTQ4LDE0OSwxNTAsMTUxLDE1MiwKKyAgICAgICAgMTUzLDE1NCwxNTUsMTU2LDE1NywxNTgs
MTU5LDE2MCwxNjEsMTYyLDE2MywxNjQsMTY1LDE2NiwxNjcsMTY4LDE2OSwKKyAgICAgICAgMTcw
LDE3MSwxNzIsMTczLDE3NCwxNzUsMTc2LDE3NywxNzgsMTc5LDE4MCwxODEsMTgyLDE4MywxODQs
MTg1LDE4NiwKKyAgICAgICAgMTg3LDE4OCwxODksMTkwLDE5MSwxOTIsMTkzLDE5NCwxOTUsMTk2
LDE5NywxOTgsMTk5LDIwMCwyMDEsMjAyLDIwMywKKyAgICAgICAgMjA0LDIwNSwyMDYsMjA3LDIw
OCwyMDksMjEwLDIxMSwyMTIsMjEzLDIxNCwyMTUsMjE2LDIxNywyMTgsMjE5LDIyMCwKKyAgICAg
ICAgMjIxLDIyMiwyMjMsMjI0LDIyNSwyMjYsMjI3LDIyOCwyMjksMjMwLDIzMSwyMzIsMjMzLDIz
NCwyMzUsMjM2LDIzNywKKyAgICAgICAgMjM4LDIzOSwyNDAsMjQxLDI0MiwyNDMsMjQ0LDI0NSwy
NDYsMjQ3LDI0OCwyNDksMjUwLDI1MSwyNTIsMjUzLDI1NAorICAgIH07CisKKyAgICBlbmMgPSBv
cHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3JlYXRlKDgwMDAsIDI1NSwgMjU0LCAxLCBtYXBwaW5n
LAorICAgICAgICBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVMQVksICZlcnIpOwor
ICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BV
U19TSUdOQUxfVk9JQ0UpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfVkJSKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKDApKTsKKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRk9SQ0VfQ0hBTk5FTFMoMikpOwor
ICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZF
UlNJT05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9EVFgoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9DT01QTEVYSVRZKDIpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5E
KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRX
SURUSChPUFVTX0FVVE8pKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfTFNCX0RFUFRIKDE0KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX0lOQkFORF9GRUMoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDU3KSk7CisgICAgb3B1c19t
dWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMzY0MjY3NSkpOwor
ICAgIHsKKyAgICAgICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbVsyMCoyNTVdID0KKyAgICAgICAg
eworICAgICAgICAgICAgICAgICAwCisgICAgICAgIH07CisgICAgICAgIGVyciA9IG9wdXNfbXVs
dGlzdHJlYW1fZW5jb2RlKGVuYywgcGNtLCAyMCwgZGF0YSwgNjI3MzAwKTsKKyAgICAgICAgYXNz
ZXJ0KGVyciA+IDApOworICAgICAgICAvKiByZXR1cm5zIC0xICovCisgICAgfQorICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9kZXN0cm95KGVuYyk7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0
YXRpYyBpbnQgbXNjYnJfZW5jb2RlX2ZhaWwodm9pZCkKK3sKKyAgICBPcHVzTVNFbmNvZGVyICpl
bmM7CisgICAgaW50IGVycjsKKyAgICB1bnNpZ25lZCBjaGFyIGRhdGFbNDcyMzIwXTsKKyAgICBz
dGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBtYXBwaW5nWzE5Ml0gPQorICAgIHsKKyAgICAgICAg
ICAwLCAgMSwgIDIsICAzLCAgNCwgIDUsICA2LCAgNywgIDgsICA5LCAxMCwgMTEsIDEyLCAxMywg
MTQsIDE1LCAxNiwKKyAgICAgICAgIDE3LCAxOCwgMTksIDIwLCAyMSwgMjIsIDIzLCAyNCwgMjUs
IDI2LCAyNywgMjgsIDI5LCAzMCwgMzEsIDMyLCAzMywKKyAgICAgICAgIDM0LCAzNSwgMzYsIDM3
LCAzOCwgMzksIDQwLCA0MSwgNDIsIDQzLCA0NCwgNDUsIDQ2LCA0NywgNDgsIDQ5LCA1MCwKKyAg
ICAgICAgIDUxLCA1MiwgNTMsIDU0LCA1NSwgNTYsIDU3LCA1OCwgNTksIDYwLCA2MSwgNjIsIDYz
LCA2NCwgNjUsIDY2LCA2NywKKyAgICAgICAgIDY4LCA2OSwgNzAsIDcxLCA3MiwgNzMsIDc0LCA3
NSwgNzYsIDc3LCA3OCwgNzksIDgwLCA4MSwgODIsIDgzLCA4NCwKKyAgICAgICAgIDg1LCA4Niwg
ODcsIDg4LCA4OSwgOTAsIDkxLCA5MiwgOTMsIDk0LCA5NSwgOTYsIDk3LCA5OCwgOTksMTAwLDEw
MSwKKyAgICAgICAgMTAyLDEwMywxMDQsMTA1LDEwNiwxMDcsMTA4LDEwOSwxMTAsMTExLDExMiwx
MTMsMTE0LDExNSwxMTYsMTE3LDExOCwKKyAgICAgICAgMTE5LDEyMCwxMjEsMTIyLDEyMywxMjQs
MTI1LDEyNiwxMjcsMTI4LDEyOSwxMzAsMTMxLDEzMiwxMzMsMTM0LDEzNSwKKyAgICAgICAgMTM2
LDEzNywxMzgsMTM5LDE0MCwxNDEsMTQyLDE0MywxNDQsMTQ1LDE0NiwxNDcsMTQ4LDE0OSwxNTAs
MTUxLDE1MiwKKyAgICAgICAgMTUzLDE1NCwxNTUsMTU2LDE1NywxNTgsMTU5LDE2MCwxNjEsMTYy
LDE2MywxNjQsMTY1LDE2NiwxNjcsMTY4LDE2OSwKKyAgICAgICAgMTcwLDE3MSwxNzIsMTczLDE3
NCwxNzUsMTc2LDE3NywxNzgsMTc5LDE4MCwxODEsMTgyLDE4MywxODQsMTg1LDE4NiwKKyAgICAg
ICAgMTg3LDE4OCwxODksMTkwLDE5MQorICAgIH07CisKKyAgICBlbmMgPSBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfY3JlYXRlKDgwMDAsIDE5MiwgMTg5LCAzLCBtYXBwaW5nLAorICAgICAgICBP
UFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVMQVksICZlcnIpOworICAgIG9wdXNfbXVs
dGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfTVVT
SUMpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJS
KDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJS
X0NPTlNUUkFJTlQoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2Vu
Y29kZXJfY3RsKGVuYywgT1BVU19TRVRfRk9SQ0VfQ0hBTk5FTFMoT1BVU19BVVRPKSk7CisgICAg
b3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lP
Tl9ESVNBQkxFRCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX0RUWCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX0NPTVBMRVhJVFkoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX01FRElVTUJBTkQpKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRI
KE9QVVNfQVVUTykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVT
X1NFVF9MU0JfREVQVEgoOCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9JTkJBTkRfRkVDKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfUEFDS0VUX0xPU1NfUEVSQygwKSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMTUzNjApKTsKKyAgICB7Cisg
ICAgICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY21bMjAqMTkyXSA9CisgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgMAorICAgICAgICB9OworICAgICAgICBlcnIgPSBvcHVzX211bHRpc3RyZWFt
X2VuY29kZShlbmMsIHBjbSwgMjAsIGRhdGEsIDQ3MjMyMCk7CisgICAgICAgIGFzc2VydChlcnIg
PiAwKTsKKyAgICAgICAgLyogcmV0dXJucyAtMSAqLworICAgIH0KKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfZGVzdHJveShlbmMpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50
IHN1cnJvdW5kX2FuYWx5c2lzX3VuaW5pdCh2b2lkKQoreworICAgIE9wdXNNU0VuY29kZXIgKmVu
YzsKKyAgICBpbnQgZXJyOworICAgIHVuc2lnbmVkIGNoYXIgZGF0YVs3MzgwXTsKKyAgICBpbnQg
c3RyZWFtczsKKyAgICBpbnQgY291cGxlZF9zdHJlYW1zOworICAgIHVuc2lnbmVkIGNoYXIgbWFw
cGluZ1szXTsKKworICAgIGVuYyA9IG9wdXNfbXVsdGlzdHJlYW1fc3Vycm91bmRfZW5jb2Rlcl9j
cmVhdGUoMjQwMDAsIDMsIDEsICZzdHJlYW1zLAorICAgICAgICAmY291cGxlZF9zdHJlYW1zLCBt
YXBwaW5nLCBPUFVTX0FQUExJQ0FUSU9OX0FVRElPLCAmZXJyKTsKKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX1ZPSUNFKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUigxKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUl9DT05T
VFJBSU5UKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19T
RVRfUFJFRElDVElPTl9ESVNBQkxFRCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVy
X2N0bChlbmMsIE9QVVNfU0VUX0ZPUkNFX0NIQU5ORUxTKE9QVVNfQVVUTykpOworICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElT
QUJMRUQoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9EVFgoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9DT01QTEVYSVRZKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfTUFYX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSk7CisgICAg
b3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVT
X0JBTkRXSURUSF9OQVJST1dCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSCg4KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX0lOQkFORF9GRUMoMSkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDg0MzE1KSk7CisgICAgeworICAg
ICAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtWzk2MCozXSA9CisgICAgICAgIHsKKyAgICAgICAg
ICAgICAtNjg5NiwgIDQ5MDEsIC02MTU4LCAgNDEyMCwgLTUxNjQsICAzNjMxLCAtNDQ0MiwgIDMx
NTMsIC00MDcwLAorICAgICAgICAgICAgICAzMzQ5LCAtNDU3NywgIDQ0NzQsIC01NTQxLCAgNTA1
OCwgLTY3MDEsICAzODgxLCAtNzkzMywgIDE4NjMsCisgICAgICAgICAgICAgLTgwNDEsICAgNjk3
LCAtNjczOCwtMzE0NjQsIDE0MzMwLC0xMjUyMywgIDQwOTYsIC02MTMwLCAyOTE3OCwKKyAgICAg
ICAgICAgICAgLTI1MCwtMjEyNTIsIDEwNDY3LCAxNjkwNywgLTMzNTksIC02NjQ0LCAzMTk2NSwg
MTQ2MDcsLTIxNTQ0LAorICAgICAgICAgICAgLTMyNDk3LCAyNDAyMCwgMTI1NTcsLTI2OTI2LC0x
ODQyMSwgLTE4NDIsIDI0NTg3LCAxOTY1OSwgIDQ4NzgsCisgICAgICAgICAgICAgMTA5NTQsIDIz
MDYwLCAgODkwNywtMTAyMTUsLTE2MTc5LCAzMTc3MiwtMTE4MjUsLTE1NTkwLC0yMzA4OSwKKyAg
ICAgICAgICAgICAxNzE3MywtMjU5MDMsLTE3Mzg3LCAxMTczMywgIDQ4ODQsIDEwMjA0LC0xNjQ3
NiwtMTQzNjcsICAgNTE2LAorICAgICAgICAgICAgIDIwNDUzLC0xNjg5OCwgMjA5NjcsLTIzODEz
LCAgIC0yMCwgMjIwMTEsLTE3MTY3LCAgOTQ1OSwgMzI0OTksCisgICAgICAgICAgICAtMjU4NTUs
ICAtNTIzLCAtMzg4MywgIC0zOTAsIC00MjA2LCAgIDYzNCwgLTM3NjcsICAyMzI1LCAtMjc1MSwK
KyAgICAgICAgICAgICAgMzExNSwgLTIzOTIsICAyNzQ2LCAtMjE3MywgIDIzMTcsIC0xMTQ3LCAg
MjMyNiwgMjMxNDIsIDExMzE0LAorICAgICAgICAgICAgLTE1MzUwLC0yNDUyOSwgIDMwMjYsICA2
MTQ2LCAgMjE1MCwgIDI0NzYsICAxMTA1LCAgLTgzMCwgIDE3NzUsCisgICAgICAgICAgICAgLTM0
MjUsICAzNjc0LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywKKyAgICAgICAgICAgICAgNDI5MywtMTQwMjMsICAzODc5LC0xNTU1MywgIDMxNTgsLTE2MTYx
LCAgMjYyOSwgMTg0MzMsLTEyNTM1LAorICAgICAgICAgICAgIC02NjQ1LC0yMDczNSwtMzI3NjMs
LTEzODI0LC0yMDk5MiwgMjU4NTksIDEzMDUyLCAtODczMSwgIDIyOTIsCisgICAgICAgICAgICAg
LTM4NjAsIDI0MDQ5LCAxMDIyNSwtMTkyMjAsIDEwNDc4LC0yMjI5NCwgMjI3NzMsIDI4MTM3LCAx
MzgxNiwKKyAgICAgICAgICAgICAzMDk1MywtMjU4NjMsLTI0NTk4LCAxNjg4OCwtMTQ2MTIsLTI4
OTQyLCAyMDk3NCwtMjczOTcsLTE4OTQ0LAorICAgICAgICAgICAgLTE4NjkwLCAyMDk5MSwtMTY2
MzgsICA1NjMyLC0xNDMzMCwgMjg5MTEsLTI1NTk0LCAxNzQwOCwgMjk5NTgsCisgICAgICAgICAg
ICAgIC01MTcsLTIwOTg0LCAtMTgwMCwgMTEyODEsICA5OTc3LC0yMTIyMSwtMTQ4NTQsIDIzODQw
LCAtOTQ3NywKKyAgICAgICAgICAgICAgMzM2MiwtMTI4MDUsLTIyNDkzLCAzMjUwNywgICAxNTYs
IDE2Mzg0LCAtMTE2MywgIDIzMDEsIC0xODc0LAorICAgICAgICAgICAgICA0NjAwLCAtMTc0OCwg
IDY5NTAsIDE2NTU3LCAgODE5MiwgLTczNzIsIC0xMDMzLCAtMzI3OCwgIDI4MDYsCisgICAgICAg
ICAgICAgMjAyNzUsICAzMzE3LCAgLTcxNywgIDk3OTIsICAtNzY3LCAgOTA5OSwgIC02MTMsICA4
MzYyLCAgNTAyNywKKyAgICAgICAgICAgICAgNzc3NCwgIDI1OTcsICA4NTQ5LCAgNTI3OCwgIDg3
NDMsICA5MzQzLCAgNjk0MCwgMTMwMzgsICA0ODI2LAorICAgICAgICAgICAgIDE0MDg2LCAgMjk2
NCwgMTMyMTUsICAxMzU1LCAxMTU5NiwgICA0NTUsICA5ODUwLCAgLTUxOSwgMTA2ODAsCisgICAg
ICAgICAgICAgLTIyODcsIDEyNTUxLCAtMzczNiwgMTM2MzksIC00MjkxLCAxMzc5MCwgLTI3MjIs
IDE0NTQ0LCAgLTg2NiwKKyAgICAgICAgICAgICAxNTA1MCwgIC0zMDQsIDIyODMzLCAtMTE5Niwg
MTM1MjAsIC0yMDYzLCAxMzA1MSwgLTIzMTcsIDEzMDY2LAorICAgICAgICAgICAgIC0yNzM3LCAx
Mzc3MywgLTI2NjQsIDE0MTA1LCAtMzQ0NywgMTM4NTQsIDI0NTg5LCAyNDY3MiwgLTUyODAsCisg
ICAgICAgICAgICAgMTAzODgsIC00OTMzLCAgNzU0MywgLTQxNDksICAzNjU0LCAtMTU1MiwgIDE3
MjYsICAgNjYxLCAgICA1NywKKyAgICAgICAgICAgICAgMjkyMiwgIC03NTEsICAzOTE3LCAgODQx
OSwgIDM4NDAsIC01MjE4LCAgMzQzNSwgIDU1NDAsIC0xMDczLAorICAgICAgICAgICAgICA0MTUz
LCAtNjY1NiwgIDE2NDksICAtNzY5LCAtNzI3NiwtMTMwNzIsICA2MzgwLCAtNzk0OCwgMjA3MTcs
CisgICAgICAgICAgICAgMTg0MjUsIDE3MzkyLCAxNDMzNSwtMTgxOTAsIC0xODQyLCAyNDU4Nywg
MTk2NTksIDExNzkwLCAxMDk1NCwKKyAgICAgICAgICAgICAyMzA2MCwgIDg5MDcsLTEwMjE1LC0x
NjE3OSwgMzE3NzIsLTExODI1LC0xNTU5MCwtMjMxMDEsIDE3MTczLAorICAgICAgICAgICAgLTI1
OTAzLC0xNzM4NywgMTE3MzMsICA0ODg0LCAxMDE5MiwtMTY2MjcsLTE0MzY3LCAgIDUxNiwgMjA0
NTMsCisgICAgICAgICAgICAtMTY4OTgsIDIwOTY3LC0yMzgxMywgICAtMjAsIDIyMDExLC0xNzE2
NywgIDk0NjgsIDMyNDk5LC0yNTYwNywKKyAgICAgICAgICAgICAgLTUyMywgLTM4ODMsICAtMzkw
LCAtNDIwNiwgICA2MzQsIC0zNzY3LCAgMjMyNSwgLTI3NTEsICAzMTE1LAorICAgICAgICAgICAg
IC0yMzkyLCAgMjc0NiwgLTIxNjEsICAyMzE3LCAtMTE0NywgIDIzMjYsIDIzMTQyLCAxMTMxNCwt
MTUzNTAsCisgICAgICAgICAgICAtMjkxMzcsICAzMDI2LC0xNTA1NiwgIC00OTEsLTE1MTcwLCAg
LTM4NiwtMTYwMTUsICAtNjQxLC0xNjUwNSwKKyAgICAgICAgICAgICAgLTkzMCwtMTYyMDYsICAt
NzE3LC0xNjE3NSwgLTI4MzksLTE2Mzc0LCAtNDU1OCwtMTYyMzcsIC01MjA3LAorICAgICAgICAg
ICAgLTE1OTAzLCAtNjQyMSwgIDYzNzMsIC0xNDAzLCAgNTQzMSwgLTEwNzMsICAzNjQxLCAtMTMw
NCwgLTQ0OTUsCisgICAgICAgICAgICAgIC03NjksIC03Mjc2LCAgMjg1NiwgLTc4NzAsICAzMzE0
LCAtODczMCwgIDM5NjQsLTEwMTgzLCAgNDAxMSwKKyAgICAgICAgICAgIC0xMTEzNSwgIDM0MjEs
LTExNzI3LCAgMjk2NiwtMTIzNjAsICAyODE4LC0xMzQ3MiwgIDM2NjAsLTEzODA1LAorICAgICAg
ICAgICAgICA1MTYyLC0xMzQ3OCwgIDY0MzQsLTEyODQwLCAgNzMzNSwtMTI0MjAsICA2ODY1LC0x
MjM0OSwgIDU1NDEsCisgICAgICAgICAgICAtMTE5NjUsICA1NTMwLC0xMDgyMCwgIDUxMzIsIC05
MTk3LCAgMzM2NywgLTc3NDUsICAxMjIzLCAtNjkxMCwKKyAgICAgICAgICAgICAgLTQzMywgLTYy
MTEsIC0xNzExLCAtNDk1OCwgLTEwMjUsIC0zNzU1LCAgLTgzNiwgLTMyOTIsIC0xNjY2LAorICAg
ICAgICAgICAgIC0yNjYxLC0xMDc1NSwgMzE0NzIsLTI3OTA2LCAzMTQ3MSwgMTg2OTAsICA1NjE3
LCAxNjY0OSwgMTEyNTMsCisgICAgICAgICAgICAtMjI1MTYsLTE3Njc0LC0zMTk5MCwgIDM1NzUs
LTMxNDc5LCAgNTg4MywgMjYxMjEsIDEyODkwLCAtNjYxMiwKKyAgICAgICAgICAgICAxMjIyOCwt
MTE2MzQsICAgNTIzLCAyNjEzNiwtMjE0OTYsIDIwNzQ1LC0xNTg2OCwgLTQxMDAsLTI0ODI2LAor
ICAgICAgICAgICAgIDIzMjgyLCAyMjc5OCwgICA0OTEsIC0xNzc0LCAxNTA3NSwtMjczNzMsLTEz
MDk0LCAgNjQxNywtMjk0ODcsCisgICAgICAgICAgICAgMTQ2MDgsIDEwMTg1LCAxNjE0MywgMjIy
MTEsIC04NDM2LCAgNDI4OCwgLTg2OTQsICAyMzc1LCAgMzAyMywKKyAgICAgICAgICAgICAgIDQ4
NiwgIDE0NTUsICAgMTI4LCAgIDIwMiwgICA5NDIsICAtOTIzLCAgMjA2OCwgLTEyMzMsICAtNzE3
LAorICAgICAgICAgICAgIC0xMDQyLCAtMjE2NywgMzIyNTUsIC00NjMyLCAgIDMxMCwgLTQ0NTgs
IC0zNjM5LCAtNTI1OCwgIDIxMDYsCisgICAgICAgICAgICAgLTY4NTcsICAyNjgxLCAtNzQ5Nywg
IDI3NjUsIC02NjAxLCAgMTk0NSwgLTUyMTksIDE5MTU0LCAtNDg3NywKKyAgICAgICAgICAgICAg
IDYxOSwgLTU3MTksIC0xOTI4LCAtNjIwOCwgIC0xMjEsICAgNTkzLCAgIDE4OCwgIDE1NTgsIC00
MTUyLAorICAgICAgICAgICAgICAxNjQ4LCAgIDE1NiwgIDE2MDQsIC0zNjY0LCAtNjg2MiwgLTI4
NTEsIC01MTEyLCAtMzYwMCwgLTM3NDcsCisgICAgICAgICAgICAgLTUwODEsIC00NDI4LCAtNTU5
MiwgMjA5NzQsLTI3Mzk3LC0xODk0NCwtMTg2OTAsIDIwOTkxLC0xNzQwNiwKKyAgICAgICAgICAg
ICAgNTYzMiwtMTQzMzAsIDI4OTExLCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQs
IDE1OTM0LAorICAgICAgICAgICAgIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwg
MTU5MzQsLTI1NTk0LCAxNzQwOCwgMjk5NTgsCisgICAgICAgICAgICAgLTcxNzMsLTE2ODg4LCAg
OTA5OCwgIC02MTMsICA4MzYyLCAgIDY3NSwgIDc3NzQsICAyNTk3LCAgODU0OSwKKyAgICAgICAg
ICAgICAgNTI3OCwgIDg3NDMsICA5Mzc1LCAgNjk0MCwgMTMwMzgsICA0ODI2LCAxNDU5OCwgIDc3
MjEsLTI0MzA4LAorICAgICAgICAgICAgLTI5OTA1LC0xOTcwMywtMTcxMDYsLTE2MTI0LCAtMzI4
NywtMjYxMTgsLTE5NzA5LC0xMDc2OSwgMjQzNTMsCisgICAgICAgICAgICAgMjg2NDgsICA2OTQ2
LCAtMTM2MywgMTI0ODUsIC0xMTg3LCAyNjA3NCwtMjUwNTUsIDEwMDA0LC0yNDc5OCwKKyAgICAg
ICAgICAgICAgNzIwNCwgLTQ1ODEsIC05Njc4LCAgMTU1NCwgMTA1NTMsICAzMTAyLCAxMjE5Mywg
IDI0NDMsIDExOTU1LAorICAgICAgICAgICAgICAxMjEzLCAxMDY4OSwgLTEyOTMsICAgOTIxLCAt
NDE3MywgMTA3MDksIC02MDQ5LCAgODgxNSwgLTcxMjgsCisgICAgICAgICAgICAgIDgxNDcsIC04
MzA4LCAgNjg0NywgLTI5NzcsICA0OTIwLC0xMTQ0NywtMjI0MjYsLTExNzk0LCAgMzUxNCwKKyAg
ICAgICAgICAgIC0xMDIyMCwgIDM0MzAsIC03OTkzLCAgMTkyNiwgLTcwNzIsICAgMzI3LCAtNzU2
OSwgIC02MDgsIC03NjA1LAorICAgICAgICAgICAgICAzNjk1LCAtNjI3MSwgLTE1NzksIC00ODc3
LCAtMTQxOSwgLTMxMDMsIC0yMTk3LCAgIDEyOCwgLTM5MDQsCisgICAgICAgICAgICAgIDM3NjAs
IC01NDAxLCAgNDkwNiwgLTYwNTEsICA0MjUwLCAtNjI3MiwgIDM0OTIsIC02MzQzLCAgMzE5NywK
KyAgICAgICAgICAgICAtNjM5NywgIDQwNDEsIC02MzQxLCAgNjI1NSwgLTYzODEsICA3OTA1LCAx
NjUwNCwgICAgIDAsIC02MTQ0LAorICAgICAgICAgICAgICA4MDYyLCAtNTYwNiwgIDg2MjIsIC01
NTU1LCAgICAtOSwgICAgLTEsICA3NDIzLCAgICAgMCwgICAgIDEsCisgICAgICAgICAgICAgICAy
MzgsICA1MTQ4LCAgMTMwOSwgIDQ3MDAsICAyMjE4LCAgNDQwMywgIDI1NzMsICAzNTY4LCAyODMw
MywKKyAgICAgICAgICAgICAgMTc1OCwgIDM0NTQsIC0xMjQ3LCAgMzQzNCwgLTQ5MTIsICAyODYy
LCAtNzg0NCwgIDE3MTgsLTEwMDk1LAorICAgICAgICAgICAgICAgMzY5LC0xMjYzMSwgICAxMjgs
IC0zOTA0LCAgMzYzMiwgLTU0MDEsICA0OTA2LCAtNjA1MSwgIDQyNTAsCisgICAgICAgICAgICAg
LTYyNzIsICAzNDkyLCAtNjM0MywgIDMxOTcsIC02Mzk3LCAgNDA0MSwgLTYzNDEsICA2MjU1LCAt
NjM4MSwKKyAgICAgICAgICAgICAgNzkwNSwgMTY1MDQsICAgICAwLCAtNjE0NCwgIDgwNjIsIC01
NjA2LCAgODYyMiwgLTU1NTUsICA4NDM5LAorICAgICAgICAgICAgIC0zMzgyLCAgNzM5OCwgLTEx
NzAsICA2MTMyLCAgIDIzOCwgIDUxNDgsICAxMzA5LCAgNDcwMCwgIDIyMTgsCisgICAgICAgICAg
ICAgIDQ0MDMsICAyNTczLCAgMzU2OCwgIDI3MDMsICAxNzU4LCAgMzQ1NCwgLTEyNDcsICAzNDM0
LCAtNDkxMiwKKyAgICAgICAgICAgICAgMjg2MiwgLTc4NDQsICAxNzE4LC0xMDA5NSwgICAzNjks
LTEyNjMxLCAgLTI1OSwtMTQ2MzIsICAgMjM0LAorICAgICAgICAgICAgLTE1MDU2LCAgLTUyMSwt
MTUxNzAsICAtMzg2LC0xNjAxNSwgIC02NDEsLTE2NTA1LCAgLTkzMCwtMTYyMDYsCisgICAgICAg
ICAgICAgLTEyMDksLTE2MTQ2LCAtMjgzOSwtMTYzNzQsIC00NTU4LC0xNjIxOCwgLTUyMDcsLTE1
OTAzLCAtNjQyMSwKKyAgICAgICAgICAgIC0xNTYxNSwgLTY5MjUsLTE0ODcxLCAtNjE0OSwtMTM3
NTksIC01MjMzLC0xMjg0NCwgMTgzMTMsIC00MzU3LAorICAgICAgICAgICAgIC01Njk2LCAgMjgw
NCwgMTI5OTIsLTIyODAyLCAtNjcyMCwgLTk3NzAsIC03MDg4LCAtODk5OCwgMTQzMzAsCisgICAg
ICAgICAgICAtMTI1MjMsIDE0ODQzLCAtNjEzMCwgMjkxNzgsICAtMjUwLC0yNzM5NiwgMTA0Njcs
IDE2OTA3LCAtMzM1OSwKKyAgICAgICAgICAgICAtNjY0NCwgMzE5NjUsIDE0NjA3LC0yMTU0NCwt
MzI0OTcsIDI0MDIwLCAxMjU1NywtMjY5MjYsICAtMTczLAorICAgICAgICAgICAgICAtMTI5LCAt
NjQwMSwgIC0xMzAsLTI1MDg5LCAtMzg0MSwgLTQ5MTYsIC0zMDQ4LCAgIDIyNCwgIC0yMzcsCisg
ICAgICAgICAgICAgLTM5NjksICAtMTg5LCAtMzUyOSwgIC01MzUsIC0zNDY0LC0xNDg2MywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3
LC0xNDM5NSwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsICAgICAw
LCAzMjUxMiwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAg
ICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LCAgOTkyNSwgIC03MTgsICA5NzUzLCAgLTc2NywKKyAgICAgICAgICAgICAgOTA5OSwgIC02MTMs
ICA4MzYyLCAgIDY3NSwgIDc3NzQsICAyNTk3LCAgODU0OSwgIDUyNzgsICA4NzQzLAorICAgICAg
ICAgICAgICA5Mzc1LCAgNjk0MCwgMTMwMzgsICA0ODI2LCAxNDU5OCwgIDc3MjEsLTI0MzA4LC0y
OTkwNSwtMTk3MDMsCisgICAgICAgICAgICAtMTcxMDYsLTE2MTI0LCAtMzI4NywtMjYxMTgsLTE5
NzA5LCAgICAgMCwgMjQzNTMsIDI4NjQ4LCAxMDI3NCwKKyAgICAgICAgICAgIC0xMTI5MiwtMjk2
NjUsLTE2NDE3LCAyNDM0NiwgMTQ1NTMsIDE4NzA3LCAyNjMyMywgLTQ1OTYsLTE3NzExLAorICAg
ICAgICAgICAgICA1MTMzLCAyNjMyOCwgICAgMTMsLTMxMTY4LCAyNDU4MywgMTg0MDQsLTI4OTI3
LC0yNDM1MCwgMTk0NTMsCisgICAgICAgICAgICAgMjg2NDIsICAxMDE5LC0xMDc3NywgLTMwNzks
IDMwMTg4LCAtNzY4NiwgMjc2MzUsLTMyNTIxLC0xNjM4NCwKKyAgICAgICAgICAgICAxMjUyOCwg
LTYzODYsIDEwOTg2LCAyMzgyNywtMjU4ODAsLTMyNzUyLC0yMzMyMSwgMTQ2MDUsIDMyMjMxLAor
ICAgICAgICAgICAgICAgNzgwLC0xMzg0OSwgMTUxMTksIDI4NjQ3LCAgNDg4OCwgLTc3MDUsIDMw
NzUwLCAgICA2NCwgICAgIDAsCisgICAgICAgICAgICAgMzI0ODgsICA2Njg3LC0yMDc1OCwgMTk3
NDUsIC0yMDcwLC0xMzc5MiwgLTY0MTQsIDI4MTg4LCAtMjgyMSwKKyAgICAgICAgICAgICAtNDU4
NSwgIDcxNjgsICA3NDQ0LCAyMzU1NywtMjE5OTgsIDEzMDY0LCAgMzM0NSwgLTQwODYsLTI4OTE1
LAorICAgICAgICAgICAgIC04Njk0LCAzMjI2MiwgIDg0NjEsIDI3Mzg3LC0xMjI3NSwgMTIwMTIs
IDIzNTYzLC0xODcxOSwtMjg0MTAsCisgICAgICAgICAgICAgMjkxNDQsLTIyMjcxLCAgLTU2Miwg
LTk5ODYsIC01NDM0LCAxMjI4OCwgIDU1NzMsLTE2NjQyLCAzMjQ0OCwKKyAgICAgICAgICAgICAy
OTE4MiwgMzI3MDUsLTMwNzIzLCAyNDI1NSwtMTk3MTYsIDE4MzY4LCAtNDM1NywgLTU2OTYsICAy
ODA0LAorICAgICAgICAgICAgIDEyOTkyLC0yMjgwMiwtMjIwODAsIC03NzAxLCAtNTE4MywgICA0
ODYsIC0zMTMzLCAtNTY2MCwgLTEwODMsCisgICAgICAgICAgICAgMTY4NzEsLTI4NzI2LC0xMTAy
OSwtMzAyNTksIC0xMjA5LC0xNjE0NiwgLTI4MzksLTE2Mzc0LCAtNDU1OCwKKyAgICAgICAgICAg
IC0xNjIxOCwtMTA1MjMsIDIwNjk3LCAtOTUwMCwgLTEzMTYsICA1NDMxLCAtMTA3MywgIDM2NDEs
IC0xMzA0LAorICAgICAgICAgICAgICAxNjQ5LCAgLTc2OSwgLTcyNzYsICAyODU2LCAtNzg3MCwg
IDMzMTQsIC04NzMwLCAgMzk2NCwtMTAxODMsCisgICAgICAgICAgICAgIDQwMTEsLTExMTM1LCAg
MzQyMSwtMTE3MjcsIDIxMzk4LCAzMjc2NywgICAgLTEsIDMyNDg2LCAgICAtMSwKKyAgICAgICAg
ICAgICAgNjMwMSwtMTMwNzEsICA2MzgwLCAtNzk0OCwgICAgLTEsIDMyNzY3LCAgIDI0MCwgMTQw
ODEsIC01NjQ2LAorICAgICAgICAgICAgIDMwOTczLCAtMzU5OCwtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAg
ICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAz
Mjc2NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAg
ICAgICAgICAgIC0xNDkwNywgIDg5MDEsICA5Mzc1LCAgNjk0MCwgMTMwMzgsICA0ODI2LCAxNDU5
OCwgIDc3MjEsLTI0MzA4LAorICAgICAgICAgICAgLTI5OTA1LC0xOTcwMywtMTcxMDYsLTE2MTI0
LCAtMzI4NywtMjYxMTgsLTE5NzA5LC0xMDc2OSwgMjQzNjEsCisgICAgICAgICAgICAgMjg2NDgs
IDEwMjc0LC0xMTI5MiwtMjk2NjUsLTE2NDE3LCAyNDM0NiwgMTQ1ODAsIDE4NzA3LCAyNjMyMywK
KyAgICAgICAgICAgICAtNDQ0MCwtMTc3MTEsICA1MTMzLCAyNjMyOCwtMTQ1NzksLTMxMDA4LCAy
NDU4MywgMTg0MDQsIDI4NDE3LAorICAgICAgICAgICAgLTI0MzUwLCAxOTQ1MywgMjg2NDIsLTMy
NTEzLC0xMDc3NywgLTMwNzksIDMwMTg4LCAtNzY4NiwgMjc2MzUsCisgICAgICAgICAgICAtMzI1
MjEsLTE2Mzg0LC0yMDI0MCwgLTYzODYsIDEwOTg2LCAyMzgyNywtMjU4ODAsLTMyNzUyLC0yMzMy
MSwKKyAgICAgICAgICAgICAxNDYwNSwgMzIyMzEsICAgNzgwLC0xMzg0OSwgMTUxMTksIDI4NjQ3
LCAgNDg4OCwgLTc3MDUsLTE1MDc0LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAgODE5MiwtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAg
ICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0ODk3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE1OTMxLC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAg
ICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisg
ICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywg
MjYxMjEsIDEyODkwLCAgMjYwNCwKKyAgICAgICAgICAgICAxMjIyOCwtMTE2MzQsIDEyMjk5LCAg
NTU3MywtMTY2NDIsIDMyNDUyLCAyOTE4MiwgMzI3MDUsLTMwNzIzLAorICAgICAgICAgICAgIDI0
MjU1LC0xOTcxNiwgMTMyNDgsLTExNzc5LCAtNTY5NiwgIDI4MDQsIDEyOTkyLC0yNzY2NiwtMjIw
ODAsCisgICAgICAgICAgICAgLTc3MDEsIC01MTgzLCAtNjY4MiwtMzE0NjQsIDE0MzMwLC0xMjUy
MywgMTQ4NDMsIC02MTMwLCAyOTE3OCwKKyAgICAgICAgICAgICAgIC0xOCwtMjczOTYsIDEwNDY3
LCAxNjkwNywgLTMzNTksIC02NjQ0LCAzMTk2NSwgMTQ2MDcsLTIxNTQ0LAorICAgICAgICAgICAg
LTMyNDk3LCAyNDAyMCwgMTI1NTcsLTI2OTI2LC0xODQyMSwgICA3MDYsIDI0NTg3LCAxOTY1OSwg
IDQ4NzgsCisgICAgICAgICAgICAgMTA5NTQsIDIzMDYwLCAgODkwNywtMTAyMTUsLTIyNTc5LCAz
MTc3MiwtMTE4MjUsLTE1NTkwLC0yMzA4OSwKKyAgICAgICAgICAgICAxNzE3MywtMjU5MDMsLTE3
Mzg3LCAgMzI4NSwgIDQ4ODQsIDEwMjA0LC0xNjYyNywtMTQzNjcsICAgNTE2LAorICAgICAgICAg
ICAgIDIwNDUzLC0xNjg5OCwgMjA5NjcsLTIzODE1LCAgIC0yMCwgMjIwMTEsLTE3MTY3LCAgOTQ2
OCwgMzI0OTksCisgICAgICAgICAgICAtMjU2MDcsICAtNTIzLCAtMzg4MywgIC0zOTAsIC00MjA2
LCAgIDYzNCwgLTM3NjcsICAyMzI1LCAtMjc1MSwKKyAgICAgICAgICAgICAgMzExNSwgLTIzOTIs
ICAyNzQ2LCAtMjE3MywgIDIzMTcsIC0xMTQ3LCAgMjMyNiwgMjMxNDIsIDExMzE0LAorICAgICAg
ICAgICAgLTE1MTMwLC0yOTEzNywgIDMwMjYsICA2MTQ2LCAgMjE1MCwgIDI0NzYsICAxMTA1LCAg
LTgzMCwgIDE3NzUsCisgICAgICAgICAgICAgLTM0MjUsICAzNjc0LCAtNTI4NywgIDQ2MDksIC03
MTc1LCAgNDkyMiwgLTk1NzksICA0NTU2LC0xMjAwNywKKyAgICAgICAgICAgICAgNDIzNiwtMTQw
MjMsICAzODc5LC0xNTU1MywgIDMxNTgsLTE2MTYxLCAgMjU3NiwgMTgzOTgsLTEyNTM1LAorICAg
ICAgICAgICAgIC02NjQ1LC0yMDczNSwtMzI3NjMsLTEzODI0LC0yMDk5MiwgMjU4NTksICA1Mzcy
LCAxMjA0MCwgMTMzMDcsCisgICAgICAgICAgICAgLTQzNTUsLTMwMjEzLCAgICAtOSwgLTYwMTks
IDE0MDYxLC0zMTQ4NywtMTM4NDIsIDMwNDQ5LCAxNTA4MywKKyAgICAgICAgICAgICAxNDA4OCwg
MzEyMDUsLTE4Njc4LC0xMjgzMCwgMTQwOTAsLTI2MTM4LC0yNTMzNywtMTE1NDEsIC0zMjU0LAor
ICAgICAgICAgICAgIDI3NjI4LC0yMjI3MCwgMzA5NTMsLTE2MTM2LC0zMDc0NSwgMjA5OTEsLTE3
NDA2LCAgNTYzMiwtMTQzMzAsCisgICAgICAgICAgICAgMjg5MTEsLTI1NTk0LCAxNzQwOCwtMjA0
NzQsIDEzMDQxLCAtODczMSwgIDIyOTIsIC0zODYwLCAyNDA0OSwKKyAgICAgICAgICAgICAxMDIy
NSwtMTkyMjAsIDEwNDc4LCAtNDM3NCwgLTExOTksICAgMTQ4LCAgLTMzMCwgICAtNzQsICAgNTkz
LAorICAgICAgICAgICAgICAgMTg4LCAgMTU1OCwgLTQxNTIsIDE1OTg0LCAxNTkzNCwgMTU5MzQs
IDE1OTM0LCAxNTkzNCwgMTU5MzQsCisgICAgICAgICAgICAgMTU5MzQsIDE1OTM0LCAxNTkzNCwg
MTU5MzQsIDE1OTM0LCAxNTkzNCwgIDE1OTgsICAgMTU2LCAgMTYwNCwKKyAgICAgICAgICAgICAt
MTE2MywgIDIyNzgsLTMwMDE4LC0yNTgyMSwtMjE3NjMsLTIzNzc2LCAyNDA2NiwgIDk1MDIsIDI1
ODY2LAorICAgICAgICAgICAgLTI1MDU1LCAxMDAwNCwtMjQ3OTgsICA3MjA0LCAtNDU4MSwgLTk2
NzgsICAxNTU0LCAxMDU1MywgIDMxMDIsCisgICAgICAgICAgICAgMTIxOTMsICAyNDQzLCAxMTk1
NSwgIDEyMTMsIDEwNjg5LCAtMTI5MywgICA5MjEsIC00MTczLCAgODY2MSwKKyAgICAgICAgICAg
ICAtNjA0OSwgIDg4MTUsLTIxMjIxLC0xNDg1NCwgMjM4NDAsIC05NDc3LCAgODU0OSwgIDUyNzgs
ICA4NzQzLAorICAgICAgICAgICAgICA5Mzc1LCAgNjk0MCwgMTMwMzgsICA0ODI2LCAxNDU5OCwg
IDc3MjEsLTI0MzA4LC0yOTkwNSwtMTk3MDMsCisgICAgICAgICAgICAtMTcxMDYsLTE2MTI0LCAt
MzI4NywtMjYxMTgsLTE5NzA5LC0xMDc2OSwgMjQzNjEsIDI4NjQ4LCAxMDI3NCwKKyAgICAgICAg
ICAgIC0xMTI5MiwtMjk2NjUsLTE2NDE3LCAyNDM0NiwgMTQ1ODAsIDE4NzA3LCAyNjMyMywgLTQ0
MTAsLTE3NzExLAorICAgICAgICAgICAgICA1MTMzLCAyNjMyOCwtMTQ1NzksLTMxMDA4LCAyNDU4
MywgMTg0MDQsIDI4NDE3LC0yNDM1MCwgMTk0NTMsCisgICAgICAgICAgICAgMjg2NDIsLTMyNTEz
LC0xMDc3NywgLTMwNzksIDMwMTg4LCAtNzY4NiwgMjc2MzUsLTMyNTIxLC0xNjM4NCwKKyAgICAg
ICAgICAgIC0yMDI0MCwgLTYzODYsIDEwOTg2LCAyMzgyNywtMjU4ODAsLTMyNzUyLC0yMzMyMSwg
MTQ2MDUsIDMyMjMxLAorICAgICAgICAgICAgICAgNzgwLC0xMzg0OSwgMTUxMTksIDI4NjQ3LCAg
NDg4OCwgLTc3MDUsIDMwNzUwLCAgICA2NCwgICAgIDAsCisgICAgICAgICAgICAgMzI0ODgsICA2
Njg3LC0yMDc1OCwgMTk3NDUsIC0yMDcwLCAgICAtMSwgICAgLTEsICAgIDI4LCAgIDI1NiwKKyAg
ICAgICAgICAgICAtNDYwOCwgIDcxNjgsICA3NDQ0LCAyMzU1NywtMjE5OTgsIDEzMDY0LCAgMzM0
NSwgLTQwODYsLTI4OTE1LAorICAgICAgICAgICAgIC04NTk0LCAzMjI2MiwgIDg0NjEsIDI3Mzg3
LC0xMjI3NSwgMTIwMTIsIDIzNTYzLC0xODcxOSwtMjg0MTAsCisgICAgICAgICAgICAgMjkxNDQs
LTIyMjcxLC0zMjU2MiwtMTYzODQsIDEyNTI4LCAtNjM4NiwgMTA5ODYsIDIzODI3LC0yNTg4MCwK
KyAgICAgICAgICAgIC0zMjc1MiwtMjMzMjEsIDE0NjA1LCAzMjIzMSwgICA3ODAsLTEzODQ5LCAx
NTExOSwgMjg2NDcsICA0ODg4LAorICAgICAgICAgICAgIC03NzA1LCAzMDc1MCwgICAgNjQsICAg
ICAwLCAzMjQ4OCwgIDY2ODcsLTIwNzU4LCAxOTc0NSwgLTIwNzAsCisgICAgICAgICAgICAtMTM3
OTIsIC02NDE0LCAyODE4OCwgLTI4MjEsIC00NTg1LCAgNzE2OCwgIDc0NDQsIDIzNTU3LC0yMTk5
OCwKKyAgICAgICAgICAgICAxMzA2NCwgIDMzNDUsIC00MDg2LC0yODkxNSwgLTg2OTQsIDMyMjYy
LCAgODQ2MSwgMjczODcsLTEyMjc1LAorICAgICAgICAgICAgIDEyMDEyLCAyMzU2MywtMTg3MTks
LTI4NDEwLCAyOTE0NCwtMjIyNzEsICAtNTYyLCAtOTk4NiwgLTU0MzQsCisgICAgICAgICAgICAg
MTIyODgsIC0yMTA3LC0xNjY0MywgMzI0NTIsIDI5MTgyLCAzMjcwNSwtMzA3MjMsIDI0MjU1LC0x
OTcxNiwKKyAgICAgICAgICAgICAxODM2OCwgLTQzNTcsIC01Njk2LCAgMjgwNCwgMTI5OTIsLTIy
ODAyLC0yMjA4MCwgLTc3MDEsIC01MTgzLAorICAgICAgICAgICAgICAgNDg2LCAtMzEzMywgLTU2
NjAsIC0xMDgzLCAxNjg3MSwtMjg3MjYsLTExMDI5LC0zMDI1OSwgLTEyMDksCisgICAgICAgICAg
ICAtMTYxNDYsIC0yODM5LC0xNjM3NCwgLTQ1NTgsLTE2MjE4LC0xMDUyMywgMjA2OTcsIC05NTAw
LCAtMTMxNiwKKyAgICAgICAgICAgICAgNTQzMSwgLTEwNzMsICAzNjQxLCAtMTMwNCwgIDE2NDks
ICAtNzY5LCAtNzI3NiwgIDI4NTYsIC03ODcwLAorICAgICAgICAgICAgICAzMzE0LCAtODczMCwg
IDM5NjQsLTEwMTgzLCAgNDAxMSwtMTExMzUsICAzNDIxLC0xMTcyNywgMjEzOTgsCisgICAgICAg
ICAgICAgMzI3NjcsICAgIC0xLCAzMjQ4NiwgICAgLTEsICAgLTk5LC0xMzA3MiwgIDYzODAsIC03
OTQ4LCAgNDg2NCwKKyAgICAgICAgICAgICAzMjc2NywgMTczOTIsIDE0MzM1LCAtNTY0NiwgMzA5
NzMsIC0zNTk4LC0xMDI5OSwtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAg
ICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNSwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisg
ICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xOTc3MSwtMTQ5
MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE2NDQzLC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAg
ICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAg
ICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTU5MzEsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAor
ICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
ICAgIC0xLC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LCAgNzg3
NywgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAg
ICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAg
ICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAg
ICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAg
ICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICAtOTk0LCAtNzI3
NiwgIDI4NTYsIC03ODcwLAorICAgICAgICAgICAgICAzMzE0LCAtODczMCwgIDM5NjQsLTEwMTgz
LCAgNDAxMSwtMTExMzUsICAzNDIxLC0xMTcyNywgMjEzOTgsCisgICAgICAgICAgICAgMzI3Njcs
ICAgIC0xLCAzMjQ4NiwgICAgLTEsICAgLTk5LC0xMzA3MiwgIDYzODAsIC03OTQ4LCAgNDg2NCwK
KyAgICAgICAgICAgICAzMjc2NywgMTczOTIsIDE0MzM1LCAtNTY0NiwgMzA5NzMsIC0zNTk4LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNSwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywgICAx
OTcsICAgICAwLC0xNDk3NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAg
ICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LCAxMjgzOCwgIDY2NTMsICAgMjk0LAorICAgICAgICAgICAgLTI5Njk5LC0yNTgy
MSwtMjE3NjMsLTIzNzc2LCAyNDA2NiwgIDk1MDIsIDI1ODY2LC0yNTA1NSwgMTAwMDQsCisgICAg
ICAgICAgICAtMjQ3OTgsICA3MjA0LCAtNDU4MSwgLTk2NzgsICAxNTU0LCAxMDU1MywgIDMxMDIs
IDEyMTkzLCAgMjQ0MywKKyAgICAgICAgICAgICAxMTk1NSwgIDEyMTMsIDEwNjg5LCAtMTI5Mywg
ICA5MjEsICAgMTc5LCAgODQ0OCwgLTYwNDksICA4ODE1LAorICAgICAgICAgICAgIC03MTI4LCAg
ODE0NywgLTgzMDgsICA2ODQ3LCAtOTg4OSwgIDQ5MjAsLTExNDQ3LCAgMzE3NCwtMTE3OTQsCisg
ICAgICAgICAgICAgIDM1MTQsLTEwMjIwLCAgMzQzMCwgMTYzODQsICAxOTI2LCAtNzA3MiwgICAz
MjcsIC03NTM3LCAgLTYwOCwKKyAgICAgICAgICAgICAtNzYwNSwgLTExNjksIC02Mzk3LCAtMTU3
OSwgLTQ4NzcsIC0xNDE5LCAtMzEwMywgLTIxOTcsICAgMTI4LAorICAgICAgICAgICAgIC0zOTA0
LCAgMzYzMiwgLTU0MDEsICA0OTA2LCAtNjA1MSwgIDQyNTAsIC02MjcyLCAgMzQ5MiwgLTYzNDMs
CisgICAgICAgICAgICAgIDMxOTcsIC02Mzk3LCAgNDA0MSwgLTYzNDEsICA2MjU1LCAtNjM4MSwg
IDc5MDUsIDE2NTA0LCAgICAgMCwKKyAgICAgICAgICAgICAtNjE0NCwgIDgwNjIsIC01NjA2LCAg
ODYyMiwgLTU1NTUsICA4NDM5LCAtMzM4MiwgIDczOTgsIC0xMTcwLAorICAgICAgICAgICAgICA2
MTMyLCAgIDIzOCwgIDUxNDgsICAxMzA5LCAgNDcwMCwgIDIyMTgsICA0NDAzLCAgMjU3MywgIDM1
NjgsCisgICAgICAgICAgICAgIDI3MDMsICAxNzU4LCAgMzQ1NCwgLTEyNDcsICAzNDM0LCAtNDkx
MiwgIDI4NjIsIC03ODQ0LCAgMTcxOCwKKyAgICAgICAgICAgIC0xMDA5NSwgICAzNjksLTEyNjMx
LCAgLTI1OSwtMTQ2MzIsICAgMjM0LC0xNTA1NiwgIC00OTEsLTE2MTk0LAorICAgICAgICAgICAg
ICAtMzg2LC0xNjAxNSwgIC02NDEsLTE2NTA1LCAgLTkzMCwtMTYyMDYsIC0xMjA5LC0xNjE0Niwg
LTI4MzksCisgICAgICAgICAgICAtMTYzNzQsIC00NTU4LC0xNjIxOCwgLTUyMDcsLTE1OTAzLCAt
NjQyMSwtMTU2MTUsIC02OTI1LC0xNDg3MSwKKyAgICAgICAgICAgICAtNjE0OSwtMTM3NTksIC01
MjMzLC0xMjg0NCwgMTgzMTMsIC00MzU3LCAtNTY5NiwgIDI4MDQsIDEyOTkyLAorICAgICAgICAg
ICAgLTIyODAyLCAtNjcyMCwgLTk3NzAsIC03MDg4LCAtODk5OCwgMTQzMzAsLTEyNTIzLCAxNDg0
MywgLTYxMzAsCisgICAgICAgICAgICAgMjkxNzgsICAtMjUwLC0yNzM5NiwgMTA0NjcsIDE2OTA3
LCAtMzM1OSwgLTY2NDQsIDMxOTY1LCAxNDYwNywKKyAgICAgICAgICAgIC0yMTU0NCwtMzI0OTcs
IDI0MDIwLCAxMjU1NywtMjY5MjYsICAtMTczLCAgLTEyOSwgLTY0MDEsICAtMTMwLAorICAgICAg
ICAgICAgLTI1MDg5LCAtMzgxNiwgLTQ5MTYsIC0zMDQ4LCAgIC0zMiwgICAgLTEsIC0zOTY5LCAg
IDI1NiwgLTM1MjksCisgICAgICAgICAgICAgIC01MzUsIC0zNDY0LC0xNDg2MywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAgLTEyMDksLTE2MTQ2LCAtMjgzOSwtMTYzNzQs
IC00NTU4LC0xNjIxOCwtMTA1MjMsIDIwNjk3LCAtOTUwMCwKKyAgICAgICAgICAgICAtMTMxNiwg
IDU0MzEsIC0xMDczLCAgMzY0MSwgLTEzMDQsICAxNjQ5LCAgLTc2OSwgLTcyNzYsICAyODU2LAor
ICAgICAgICAgICAgIC03ODcwLCAgMzMxNCwgLTg3MzAsICAzOTY0LC0xMDE4MywgIDQwMTEsLTEx
MTM1LCAgMzQyMSwtMTE3MjcsCisgICAgICAgICAgICAgMjEzOTgsIDMyNzY3LCAgICAtMSwgMzI0
ODYsICAgIC0xLCAgNjMwMSwtMTMwNzEsICA2MzgwLCAtNzk0OCwKKyAgICAgICAgICAgICAgICAt
MSwgMzI3NjcsICAgMjQwLCAxNDA4MSwgLTU2NDYsIDMwOTczLCAtMzU5OCwtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgIDMyNzY3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywgIDg5MDEsICA5Mzc1LCAgNjk0MCwKKyAgICAgICAgICAg
ICAxMzAzOCwgIDQ4MjYsIDE0NTk4LCAgNzcyMSwtMjQzMDgsLTI5OTA1LC0xOTcwMywtMTcxMDYs
LTE2MTI0LAorICAgICAgICAgICAgIC0zMjg3LC0yNjExOCwtMTk3MDksLTEwNzY5LCAyNDM2MSwg
Mjg2NDgsIDEwMjc0LC0xMTI5MiwtMjk2NjUsCisgICAgICAgICAgICAtMTY0MTcsIDI0MzQ2LCAx
NDU4MCwgMTg3MDcsIDI2MzIzLCAtNDQ0MCwtMTc3MTEsICA1MTMzLCAyNjMyOCwKKyAgICAgICAg
ICAgIC0xNDU3OSwtMzEwMDgsIDI0NTgzLCAxODQwNCwgMjg0MTcsLTI0MzUwLCAxOTQ1MywgMjg2
NDIsLTMyNTEzLAorICAgICAgICAgICAgLTEwNzc3LCAtMzA3OSwgMzAxODgsIC03Njg2LCAyNzYz
NSwtMzI1MjEsLTE2Mzg0LC0yMDI0MCwgLTYzODYsCisgICAgICAgICAgICAgMTA5ODYsIDIzODI3
LC0yNTg4MCwtMzI3NTIsLTIzMzIxLCAxNDYwNSwgMzIyMzEsICAgNzgwLC0xMzg0OSwKKyAgICAg
ICAgICAgICAxNTExOSwgMjg2NDcsICA0ODg4LCAtNzcwNSwtMTUwNzQsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAgODE5MiwKKyAg
ICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywK
KyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0ODk3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE1OTMx
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAg
ICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LCAyNjEyMSwgMTI4OTAsICAyNjA0LCAxMjIyOCwtMTE2MzQsIDEy
Mjk5LCAgNTU3MywKKyAgICAgICAgICAgIC0xNjY0MiwgMzI0NTIsIDI5MTgyLCAzMjcwNSwtMzA3
MjMsIDI0MjU1LC0xOTcxNiwgMTMyNDgsLTExNzc5LAorICAgICAgICAgICAgIC01Njk2LCAgMjgw
NCwgMTI5OTIsLTI3NjY2LC0yMjA4MCwgLTc3MDEsIC01MTgzLCAtNjY4MiwtMzE0NjQsCisgICAg
ICAgICAgICAgMTQzMzAsLTEyNTIzLCAxNDg0MywgLTYxMzAsIDI5MTc4LCAgIC0xOCwtMjczOTYs
IDEwNDY3LCAxNjkwNywKKyAgICAgICAgICAgICAtMzM1OSwgLTY2NDQsIDMxOTY1LCAxNDYwNywt
MjE1NDQsLTMyNDk3LCAyNDAyMCwgMTI1NTcsLTI2OTI2LAorICAgICAgICAgICAgLTE4NDIxLCAg
IDcwNiwgMjQ1ODcsIDE5NjU5LCAgNDg3OCwgMTA5NTQsIDIzMDYwLCAgODkwNywtMTAyMTUsCisg
ICAgICAgICAgICAtMjI1NzksIDMxNzcyLC0xMTgyNSwtMTU1OTAsLTIzMDg5LCAxNzE3MywtMjU5
MDMsLTE3Mzg3LCAgMzI4NSwKKyAgICAgICAgICAgICAgNDg4NCwgMTAyMDQsLTE2NjI3LC0xNDM2
NywgICA1MTYsIDIwNDUzLC0xNjg5OCwgMjA5NjcsLTIzODE1LAorICAgICAgICAgICAgICAgLTIw
LCAyMjAxMSwtMTcxNjcsICA5NDY4LCAzMjQ5OSwtMjU2MDcsICAtNTIzLCAtMzg4MywgIC0zOTAs
CisgICAgICAgICAgICAgLTQyMDYsICAgNjM0LCAtMzc2NywgIDIzMjUsIC0yNzUxLCAgMzExNSwg
LTIzOTIsICAyNzQ2LCAtMjE3MywKKyAgICAgICAgICAgICAgMjMxNywgLTExNDcsICAyMzI2LCAy
MzE0MiwgMTEzMTQsLTE1MTMwLC0yOTEzNywgIDMwMjYsICA2MTQ2LAorICAgICAgICAgICAgICAy
MTUwLCAgMjQ3NiwgIDExMDUsICAtODMwLCAgMTc3NSwgLTM0MjUsICAzNjc0LCAtNTI4NywgIDQ2
MDksCisgICAgICAgICAgICAgLTcxNzUsICA0OTIyLCAtOTU3OSwgIDQ1NTYsLTEyMDA3LCAgNDIz
NiwtMTQwMjMsICAzODc5LC0xNTU1MywKKyAgICAgICAgICAgICAgMzE1OCwtMTYxNjEsICAyNTc2
LCAxODM5OCwtMTI1MzUsIC02NjQ1LC0yMDczNSwtMzI3NjMsLTEzODI0LAorICAgICAgICAgICAg
LTIwOTkyLCAyNTg1OSwgIDUzNzIsIDEyMDQwLCAxMzMwNywgLTQzNTUsLTMwMjEzLCAgICAtOSwg
LTYwMTkKKyAgICAgICAgfTsKKyAgICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNvZGUo
ZW5jLCBwY20sIDk2MCwgZGF0YSwgNzM4MCk7CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAg
ICB9CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05B
TChPUFVTX1NJR05BTF9NVVNJQykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9WQlIoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOworICAgIG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9GT1JDRV9DSEFOTkVMUyhP
UFVTX0FVVE8pKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19T
RVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2Vu
Y29kZXJfY3RsKGVuYywgT1BVU19TRVRfRFRYKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2Vu
Y29kZXJfY3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElUWSg2KSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9CQU5EV0lEVEgoT1BVU19CQU5EV0lE
VEhfTkFSUk9XQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9CQU5EV0lEVEgoT1BVU19BVVRPKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSCg5KSk7CisgICAgb3B1c19tdWx0aXN0cmVh
bV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0lOQkFORF9GRUMoMSkpOworICAgIG9wdXNfbXVs
dGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDUpKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURSg3
NzU0MTApKTsKKyAgICB7CisgICAgICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY21bMTQ0MCozXSA9
CisgICAgICAgIHsKKyAgICAgICAgICAgICAzMDQ0OSwgMTUwODMsIDE0MDg4LCAzMTIwNSwtMTg2
NzgsLTEyODMwLCAxNDA5MCwtMjYxMzgsLTI1MzM3LAorICAgICAgICAgICAgLTExNTQxLCAtMzI1
NCwgMjc2MjgsLTIyMjcwLCAzMDk1MywtMTYxMzYsLTMwNzQ1LCAyMDk5MSwtMTc0MDYsCisgICAg
ICAgICAgICAgIDU2MzIsLTE0MzMwLCAyODkxMSwtMjU1OTQsIDE3NDA4LC0yMDQ3NCwgMTMwNDEs
IC04NzMxLCAgMjI5MiwKKyAgICAgICAgICAgICAtMzg2MCwgMjQwNDksIDEwMjI1LC0xOTIyMCwg
MTA0NzgsIC00Mzc0LCAtMTE5OSwgICAxNDgsICAtMzMwLAorICAgICAgICAgICAgICAgLTc0LCAg
IDU5MywgICAxODgsICAxNTU4LCAtNDE1MiwgMTU5ODQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsCisg
ICAgICAgICAgICAgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5
MzQsIDE1OTM0LCAgMTU5OCwKKyAgICAgICAgICAgICAgIDE1NiwgIDE2MDQsIC0xMTYzLCAgMjI3
OCwtMzAwMTgsLTI1ODIxLC0yMTc2MywtMjM3NzYsIDI0MDY2LAorICAgICAgICAgICAgICA5NTAy
LCAyNTg2NiwtMjUwNTUsIDEwMDA0LC0yNDc5OCwgIDcyMDQsIC00NTgxLCAtOTY3OCwgIDE1NTQs
CisgICAgICAgICAgICAgMTA1NTMsICAzMTAyLCAxMjE5MywgIDI0NDMsIDExOTU1LCAgMTIxMywg
MTA2ODksIC0xMjkzLCAgIDkyMSwKKyAgICAgICAgICAgICAtNDE3MywgIDg2NjEsIC02MDQ5LCAg
ODgxNSwtMjEyMjEsLTE0ODU0LCAyMzg0MCwgLTk0NzcsICA4NTQ5LAorICAgICAgICAgICAgICA1
Mjc4LCAgODc0MywgIDkzNzUsICA2OTQwLCAxMzAzOCwgIDQ4MjYsIDE0NTk4LCAgNzcyMSwtMjQz
MDgsCisgICAgICAgICAgICAtMjk5MDUsLTE5NzAzLC0xNzEwNiwtMTYxMjQsIC0zMjg3LC0yNjEx
OCwtMTk3MDksLTEwNzY5LCAyNDM2MSwKKyAgICAgICAgICAgICAyODY0OCwgMTAyNzQsLTExMjky
LC0yOTY2NSwtMTY0MTcsIDI0MzQ2LCAxNDU4MCwgMTg3MDcsIDI2MzIzLAorICAgICAgICAgICAg
IC00NDEwLC0xNzcxMSwgIDUxMzMsIDI2MzI4LC0xNDU3OSwtMzEwMDgsIDI0NTgzLCAxODQwNCwg
Mjg0MTcsCisgICAgICAgICAgICAtMjQzNTAsIDE5NDUzLCAyODY0MiwtMzI1MTMsLTEwNzc3LCAt
MzA3OSwgMzAxODgsIC03Njg2LCAyNzYzNSwKKyAgICAgICAgICAgIC0zMjUyMSwtMTYzODQsLTIw
MjQwLCAtNjM4NiwgMTA5ODYsIDIzODI3LC0yNTg4MCwtMzI3NTIsLTIzMzIxLAorICAgICAgICAg
ICAgIDE0NjA1LCAzMjIzMSwgICA3ODAsLTEzODQ5LCAxNTExOSwgMjg2NDcsICA0ODg4LCAtNzcw
NSwgMzA3NTAsCisgICAgICAgICAgICAgICAgNjQsICAgICAwLCAzMjQ4OCwgIDY2ODcsLTIwNzU4
LCAxOTc0NSwgLTIwNzAsICAgIC0xLCAgICAtMSwKKyAgICAgICAgICAgICAgICAyOCwgICAyNTYs
IC00NjA4LCAgNzE2OCwgIDc0NDQsIDIzNTU3LC0yMTk5OCwgMTMwNjQsICAzMzQ1LAorICAgICAg
ICAgICAgIC00MDg2LC0yODkxNSwgLTg1OTQsIDMyMjYyLCAgODQ2MSwgMjczODcsLTEyMjc1LCAx
MjAxMiwgMjM1NjMsCisgICAgICAgICAgICAtMTg3MTksLTI4NDEwLCAyOTE0NCwtMjIyNzEsLTMy
NTYyLC0xNjM4NCwgMTI1MjgsIC02Mzg2LCAxMDk4NiwKKyAgICAgICAgICAgICAyMzgyNywtMjU4
ODAsLTMyNzUyLC0yMzMyMSwgMTQ2MDUsIDMyMjMxLCAgIDc4MCwtMTM4NDksIDE1MTE5LAorICAg
ICAgICAgICAgIDI4NjQ3LCAgNDg4OCwgLTc3MDUsIDMwNzUwLCAgICA2NCwgICAgIDAsIDMyNDg4
LCAgNjY4NywtMjA3NTgsCisgICAgICAgICAgICAgMTk3NDUsIC0yMDcwLC0xMzc5MiwgLTY0MTQs
IDI4MTg4LCAtMjgyMSwgLTQ1ODUsICA3MTY4LCAgNzQ0NCwKKyAgICAgICAgICAgICAyMzU1Nywt
MjE5OTgsIDEzMDY0LCAgMzM0NSwgLTQwODYsLTI4OTE1LCAtODY5NCwgMzIyNjIsICA4NDYxLAor
ICAgICAgICAgICAgLTE0ODUzLC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywgMzI3NjcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDg5MSwtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsICA4OTAxLCAgOTM3NSwgIDY5NDAsIDEzMDM4LCAgNDgyNiwgMTQ1OTgsICA3NzIx
LAorICAgICAgICAgICAgLTI0MzA4LC0yOTkwNSwtMTk3MDMsLTE3MTA2LC0xNjEyNCwgLTMyODcs
LTI2MTE4LC0xOTcwOSwtMTA3NjksCisgICAgICAgICAgICAgMjQzNjEsIDI4NjQ4LCAxMDI3NCwt
MTEyOTIsLTI5NjY1LC0xNjQxNywgMjQzNDYsIDE0NTgwLCAxODcwNywKKyAgICAgICAgICAgICAy
NjMyMywgLTQ0NDAsLTE3NzExLCAgNTEzMywgMjYzMjgsLTE0NTc5LC0zMTAwOCwgMjQ1ODMsIDE4
NDA0LAorICAgICAgICAgICAgIDI4NDE3LC0yNDM1MCwgMTk0NTMsIDI4NjQyLC0zMjUxMywtMTA3
NzcsIC0zMDc5LCAzMDE4OCwgLTc2ODYsCisgICAgICAgICAgICAgMjc2MzUsLTMyNTIxLC0xNjM4
NCwtMjAyNDAsIC02Mzg2LCAxMDk4NiwgMjM4MjcsLTI1ODgwLC0zMjc1MiwKKyAgICAgICAgICAg
IC0yMzMyMSwgMTQ2MDUsIDMyMjMxLCAgIDc4MCwtMTM4NDksIDE1MTE5LCAyODY0NywgIDQ4ODgs
IC03NzA1LAorICAgICAgICAgICAgLTE1MDc0LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAg
ICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywgIDgxOTIsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAg
ICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDg5NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAg
ICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNTkzMSwtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywK
KyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsIDI2MTIxLCAx
Mjg5MCwKKyAgICAgICAgICAgICAgMjYwNCwgMTIyMjgsLTExNjM0LCAxMjI5OSwgIDU1NzMsLTE2
NjQyLCAzMjQ1MiwgMjkxODIsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAg
ICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAg
ICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAg
ICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisg
ICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
CisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAg
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAg
ICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAg
ICAgICAgICA3NzEwLC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xMDgxMSwtMTQ5MDcsLTE0OTA3LAor
ICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsLTE0OTE3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTM4LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAgLTU3MSwgLTk5
ODYsICAgLTU4LCAxMjU0MiwtMTg0OTEsCisgICAgICAgICAgICAgMzI1MDcsIDEyODM4LCAgNjY1
MywgICAyOTQsICAgIC0xLCAgICAgMCwtMTk5NjgsIDE4MzY4LCAtNDM1NywKKyAgICAgICAgICAg
ICAtNTY5NiwgIDI4MDQsIDEyOTk4LC0yMjgwMiwtMjIwODAsIC03NzAxLCAtNTE4MywgICA0ODYs
IC0zMTMzLAorICAgICAgICAgICAgIC01NjYwLCAtMTA4MywgMTM3OTksLTI4NzI2LC0xMTAyOSwg
ICAyMDUsLTE0ODQ4LCAzMjQ2NCwgICAgLTEsCisgICAgICAgICAgICAgIC0xMjksLTEzMDcyLCAg
NjM4MCwgLTc5NDgsIDIwNzE3LCAxODQyNSwgMTczOTIsIDE0MzM1LCAtNTY0NiwKKyAgICAgICAg
ICAgICAzMDk3MywgLTM1OTgsICA3MTg4LCAtMzg2NywgIDMwNTUsIC00MjQ3LCAgNTU5NywgLTQw
MTEsLTI2NDI3LAorICAgICAgICAgICAgICAgLTExLC0zMDQxOCwgIDc5MjIsICAyNjE0LCAgIDIz
NywgLTU4MzksLTI3NDEzLC0xNzYyNCwtMjk3MTYsCisgICAgICAgICAgICAtMTM1MzksICAgMjM5
LCAyMDk5MSwgMTgxNjQsIC00MDgyLC0xNjY0NywtMjczODYsIDE5NDU4LCAyMDIyNCwKKyAgICAg
ICAgICAgICAgNDYxOSwgMTk3MjgsIC03NDA5LC0xODE4NiwtMjUwNzMsIDI3NjI3LC0yMzUzOSwg
LTc5NDUsLTMxNDY0LAorICAgICAgICAgICAgIDE0MzMwLC0xMjUyMywtMjIwMjEsIC03NzAxLCAt
NTE4MywgICA0ODYsIC0zMTMzLCAtNTY2MCwgLTEwODMsCisgICAgICAgICAgICAgMTM3OTksLTI4
NzI2LC0xMTAyOSwgICAyMDUsLTE0ODQ4LCAzMjQ2NCwgICAgLTEsICAtMTI5LC0xMzA3MiwKKyAg
ICAgICAgICAgICAgNjM4MCwgLTc5NDgsIDIwNzE3LCAxODQyNSwgMTczOTIsIDE0MDkzLCAtNTY0
NiwgMzA5NzMsIC0zNTk4LAorICAgICAgICAgICAgICA3MTg4LCAtMzg2NywgIDMwNTUsICAzNjg5
LCAtNTQwMSwgIDQ5MDYsIC02MDUxLCAgNDI1MCwgLTYyNzIsCisgICAgICAgICAgICAgIDM0OTIs
IC02MzQzLCAgMzE5NywgLTYzOTcsICA0MDQxLCAtNjM0MSwgIDYyNTUsIC02MzgxLCAgIDIzOSwK
KyAgICAgICAgICAgICAyMDk5MSwgMTgxNjQsIC00MDgyLC0xNjY0NywtMjczODYsIDE5NDU4LCAy
MDIyNCwgIDQ2MTksIDE5NzI4LAorICAgICAgICAgICAgIC03NDA5LC0xODE4NiwtMjUwNzMsIDI3
NjI3LC0yMzUzOSwgLTc5NDUsLTMxNDY0LCAxNDMzMCwtMTI1MjMsCisgICAgICAgICAgICAgMTQ4
NDMsIC02MTMwLCAzMDIwMiwgIC0yNTAsLTI4NDIwLCAxMDQ2NywgMTY5MDcsIC0zMzU5LCAtNjY0
NCwKKyAgICAgICAgICAgICAzMTk2NSwgIDMzNDMsLTExNzI3LCAgMjk2NiwtMTI2MTYsICAzMDY0
LC0xMzQ3MiwgIDY3MzIsLTEyMzQ5LAorICAgICAgICAgICAgICA1NTQxLC0xMTk2NSwgIDU1MzAs
LTEwODIwLCAtMTkxMiwgLTM2MzcsIDMyMjg1LCAtNDYwNywgICAzMTAsCisgICAgICAgICAgICAt
MzI3NjgsICAgICAwLCAtNTI1OCwgIDIxMDYsIC02ODU3LCAgMjY4MSwgLTU0NDksIC0zNjA2LCAt
NjcxNywKKyAgICAgICAgICAgICAtNTQ4MiwgLTM2MDYsIC0xODUzLCAgNDA4MiwgLTc2MzEsIC05
ODA4LCAtMTc0MiwgLTI4NTEsIC01MTEyLAorICAgICAgICAgICAgICAgIDY0LCAgLTg2OCwtMTM1
NDYsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsCisgICAgICAgICAg
ICAtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1
LC0xMzM2NSwKKyAgICAgICAgICAgIC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUs
LTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LAorICAgICAgICAgICAgLTEzMzY1LC0xMzM2NSwt
MTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsCisgICAgICAg
ICAgICAtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsICA3
ODgzLCAtMjMxNiwKKyAgICAgICAgICAgICAgOTA4NiwgLTM5NDQsIDEwNTAwLCAgNDI4NSwgMTA0
NTksIC02NDc0LCAxMDIwNCwgLTY1MzksIDExNjAxLAorICAgICAgICAgICAgIC02ODI0LCAxMzM4
NSwgLTcxNDIsIDEzODcyLCAtNzQ1NywgMTM2NzAsIC03NzI1LCAxMzQ2MywgLTY4ODcsCisgICAg
ICAgICAgICAgMTI0ODIsIC01NTgwLCAxMjYwMCwgLTQ5NjQsIDEyNDgwLCAgMzI1NCwgMTE3NDEs
IC00MjEwLC0yNDgxOSwKKyAgICAgICAgICAgICAyMzI4MiwgMjI3OTgsICAgNDkxLCAtMTc3NCwg
LTEwNzMsICAzNjQxLCAtMTMwNCwgMjg5MjgsICAtMjUwLAorICAgICAgICAgICAgLTI3Mzk2LCAg
NjY1NywgLTg5NjEsIDIyNTI0LCAxOTk4NywgMTAyMzEsICAxNzkxLCAgODk0NywtMzI3NjMsCisg
ICAgICAgICAgICAtMjYzODUsLTMxMjI3LCAgLTc5MiwtMzA0NjEsICA4OTI2LCAgNDg2NiwgMjc4
NjMsIDI3NzU2LCAyNzc1NiwKKyAgICAgICAgICAgICAyNzc1NiwgMjc3NTYsIDI3NzU2LCAyNzc1
NiwgMjc3NTYsIDI3NzU2LCAgNTYzMCwtMTEwNzAsLTE2MTM2LAorICAgICAgICAgICAgIDIwNjcx
LC0xMTUzMCwgMjczMjgsICA4MTc5LCAgNTA1OSwtMzE1MDMsLTI0Mzc5LC0xOTQ3MiwgMTc4NjMs
CisgICAgICAgICAgICAtMjkyMDIsIDIyOTg2LCAgIC0yMywgIDg5MDksICA4NDIyLCAxMDQ1MAor
ICAgICAgICB9OworICAgICAgICBlcnIgPSBvcHVzX211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBj
bSwgMTQ0MCwgZGF0YSwgNzM4MCk7CisgICAgICAgIC8qIHJlYWRzIHVuaW5pdGlhbGl6ZWQgZGF0
YSBhdCBzcmMvb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyLmM6MjkzICovCisgICAgICAgIGFzc2Vy
dChlcnIgPiAwKTsKKyAgICB9CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2Rlc3Ryb3ko
ZW5jKTsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludCBlY19lbmNfc2hyaW5rX2Fzc2Vy
dCh2b2lkKQoreworICAgIE9wdXNFbmNvZGVyICplbmM7CisgICAgaW50IGVycjsKKyAgICBpbnQg
ZGF0YV9sZW47CisgICAgdW5zaWduZWQgY2hhciBkYXRhWzIwMDBdOworICAgIHN0YXRpYyBjb25z
dCBzaG9ydCBwY20xWzk2MF0gPSB7IDUxNDAgfTsKKyAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNt
MlsyODgwXSA9CisgICAgeworICAgICAgICAgIC0yNTYsLTEyMDMzLCAgICAgMCwgLTI4MTcsICA2
OTEyLCAgICAgMCwgLTUzNTksICA1MjAwLCAgMzA2MSwKKyAgICAgICAgICAgICAwLCAtMjkwMywg
IDU2NTIsIC0xMjgxLC0yNDY1NiwtMTQ0MzMsLTI0Njc4LCAgICAzMiwtMjk3OTMsCisgICAgICAg
ICAgMjg3MCwgICAgIDAsICA0MDk2LCAgNTEyMCwgIDUxNDAsICAtMjM0LC0yMDIzMCwtMjQ2NzMs
LTI0NjMzLAorICAgICAgICAtMjQ2NzMsLTI0NzA1LCAgICAgMCwtMzI3NjgsLTI1NDQ0LC0yNTQ0
NCwgICAgIDAsLTI1NDQ0LC0yNTQ0NCwKKyAgICAgICAgICAgMTU2LC0yMDQ4MCwgLTc5NDgsIC01
OTIwLCAtNzk2OCwgLTc5NjgsICAgMjI0LCAgICAgMCwgMjA0ODAsCisgICAgICAgICAgICAxMSwg
MjA0OTYsICAgIDEzLCAyMDQ5NiwgICAgMTEsLTIwNDgwLCAgMjI5MiwtMjAyNDAsICAgMjQ0LAor
ICAgICAgICAgMjA0ODAsICAgIDExLCAyMDQ5NiwgICAgMTEsLTIwNDgwLCAgIDI0NCwtMjAyNDAs
ICA3MTU2LCAyMDQ1NiwKKyAgICAgICAgICAtMjQ2LC0yMDI0MywgICAyNDQsICAgMTI4LCAgIDI0
NCwgMjA0ODAsICAgIDExLCAyMDQ5NiwgICAgMTEsCisgICAgICAgIC0yMDQ4MCwgICAyNDQsLTIw
MjU2LCAgIDI0NCwgMjA0ODAsICAgMjU2LCAgICAgMCwgIC0yNDYsIDE2NjA5LAorICAgICAgICAg
IC0xNzYsICAgICAwLCAyOTg3MiwgLTQwOTYsIC0yODg4LCAgIDUxNiwgIDI4OTYsICA0MDk2LCAg
Mjg5NiwKKyAgICAgICAgLTIwNDgwLCAtMzg1MiwgLTI4OTYsIC0xMDI1LC0zMTA1NiwtMTQ0MzMs
ICAgMjQ0LCAgMTc5MiwgIC0yNTYsCisgICAgICAgIC0xMjAzMywgICAgIDAsIC0yODE3LCAgICAg
MCwgICAgIDAsIC01MzU5LCAgNTIwMCwgIDMwNjEsICAgIDE2LAorICAgICAgICAgLTI5MDMsICA1
NjUyLCAtMTI4MSwtMjQ2NTYsLTE0NDMzLC0yNDY3OCwgICAgMzIsLTI5NzkzLCAgMjg3MCwKKyAg
ICAgICAgICAgICAwLCAgNDA5NiwgIDUxMjAsICA1MTQwLCAgLTIzNCwtMjAyMzAsLTI0NjczLC0y
NDYzMywtMjQ2NzMsCisgICAgICAgIC0yNDcwNSwgICAgIDAsLTMyNzY4LC0yNTQ0NCwtMjU0NDQs
ICAgICAwLC0yNTQ0NCwtMjU0NDQsICAgMTU2LAorICAgICAgICAtMjA0ODAsIC03OTczLCAtNTky
MCwgLTc5NjgsIC03OTY4LCAgIDIyNCwgICAgIDAsIDIwNDgwLCAgICAxMSwKKyAgICAgICAgIDIw
NDk2LCAgICAxMSwgMjA0OTYsICAgIDExLC0yMDQ4MCwgIDIyOTIsLTIwMjEzLCAgIDI0NCwgMjA0
ODAsCisgICAgICAgICAgICAxMSwgMjA0OTYsICAgIDExLC0yNDY5OCwgLTI4NzMsICAgICAwLCAg
ICAgNywgICAgLTEsICAgMjA4LAorICAgICAgICAgIC0yNTYsICAgMjQ0LCAgICAgMCwgIDQzNTIs
IDIwNzE1LCAtMjc5NiwgICAgMTEsLTIyMjcyLCAgNTM2NCwKKyAgICAgICAgICAtMjM0LC0yMDIz
MCwtMjQ2NzMsLTI1OTEzLCAgODM1MSwtMjQ4MzIsIDEzOTYzLCAgICAxMSwgICAgIDAsCisgICAg
ICAgICAgICAxNiwgIDUxNDAsICA1NjUyLCAtMTI4MSwtMjQ2NTYsLTE0NDMzLC0yNDY3MywgMzI2
NzEsICAgMTU5LAorICAgICAgICAgICAgIDAsLTI1NDcyLC0yNTQ0NCwgICAxNTYsLTI1NjAwLC0y
NTQ0NCwtMjU0NDQsICAgICAwLCAtMjg5NiwKKyAgICAgICAgIC03OTY4LCAtNzk2MCwgLTc5Njgs
IC03OTY4LCAgICAgMCwgICAgIDAsICAyODk2LCAgNDA5NiwgIDI4OTYsCisgICAgICAgICAgNDA5
NiwgIDI4OTYsICAgICAwLCAtMjg5NiwgLTQwODgsIC0yODk2LCAgICAgMCwgIDI4OTYsICAgICAw
LAorICAgICAgICAgLTI4OTYsIC00MDk2LCAtMjg5NiwgICAgMTEsICAyNjQwLCAtNDYwOSwgLTI4
OTYsLTMyNzY4LCAtMzA3MiwKKyAgICAgICAgICAgICAwLCAgMjg5NiwgIDQwOTYsICAyODk2LCAg
ICAgMCwgLTI4OTYsIC00MDk2LCAtMjg5NiwgICAgIDAsCisgICAgICAgICAgICA4MCwgICAgIDEs
ICAyODE2LCAgICAgMCwgMjA2NTYsICAgMjU1LC0yMDQ4MCwgICAxMTYsLTE4MTkyCisgICAgfTsK
KyAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtM1syODgwXSA9IHsgMCB9OworCisgICAgZW5jID0g
b3B1c19lbmNvZGVyX2NyZWF0ZSg0ODAwMCwgMSwgT1BVU19BUFBMSUNBVElPTl9BVURJTywgJmVy
cik7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMTApKTsK
KyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEFDS0VUX0xPU1NfUEVSQyg2KSk7
CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoNjAwMCkpOworICAg
IGRhdGFfbGVuID0gb3B1c19lbmNvZGUoZW5jLCBwY20xLCA5NjAsIGRhdGEsIDIwMDApOworICAg
IGFzc2VydChkYXRhX2xlbiA+IDApOworCisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX1NJR05BTChPUFVTX1NJR05BTF9WT0lDRSkpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKDEpKTsKKyAgICBvcHVzX2VuY29kZXJfY3Rs
KGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX1NVUEVSV0lERUJBTkQpKTsK
KyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfSU5CQU5EX0ZFQygxKSk7CisgICAg
b3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMTU2MDApKTsKKyAgICBkYXRh
X2xlbiA9IG9wdXNfZW5jb2RlKGVuYywgcGNtMiwgMjg4MCwgZGF0YSwgMTIyKTsKKyAgICBhc3Nl
cnQoZGF0YV9sZW4gPiAwKTsKKworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9T
SUdOQUwoT1BVU19TSUdOQUxfTVVTSUMpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfQklUUkFURSgyNzAwMCkpOworICAgIGRhdGFfbGVuID0gb3B1c19lbmNvZGUoZW5jLCBw
Y20zLCAyODgwLCBkYXRhLCAxMjIpOyAvKiBhc3NlcnRpb24gZmFpbHVyZSAqLworICAgIGFzc2Vy
dChkYXRhX2xlbiA+IDApOworCisgICAgb3B1c19lbmNvZGVyX2Rlc3Ryb3koZW5jKTsKKyAgICBy
ZXR1cm4gMDsKK30KKworc3RhdGljIGludCBlY19lbmNfc2hyaW5rX2Fzc2VydDIodm9pZCkKK3sK
KyAgICBPcHVzRW5jb2RlciAqZW5jOworICAgIGludCBlcnI7CisgICAgaW50IGRhdGFfbGVuOwor
ICAgIHVuc2lnbmVkIGNoYXIgZGF0YVsyMDAwXTsKKworICAgIGVuYyA9IG9wdXNfZW5jb2Rlcl9j
cmVhdGUoNDgwMDAsIDEsIE9QVVNfQVBQTElDQVRJT05fQVVESU8sICZlcnIpOworICAgIG9wdXNf
ZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDYpKTsKKyAgICBvcHVzX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX1ZPSUNFKSk7CisgICAgb3B1
c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9GVUxM
QkFORCkpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19Q
RVJDKDI2KSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMjcw
MDApKTsKKyAgICB7CisgICAgICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY21bOTYwXSA9IHsgMCB9
OworICAgICAgICBkYXRhX2xlbiA9IG9wdXNfZW5jb2RlKGVuYywgcGNtLCA5NjAsIGRhdGEsIDIw
MDApOworICAgICAgICBhc3NlcnQoZGF0YV9sZW4gPiAwKTsKKyAgICB9CisgICAgb3B1c19lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJQykpOworICAgIHsK
KyAgICAgICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbVs0ODBdID0KKyAgICAgICAgeworICAgICAg
ICAgICAgMzI3NjcsIDMyNzY3LCAwLCAwLCAzMjc2NywgMzI3NjcsIDAsIDAsIDMyNzY3LCAzMjc2
NywKKyAgICAgICAgICAgIC0zMjc2OCwgLTMyNzY4LCAwLCAwLCAtMzI3NjgsIC0zMjc2OCwgMCwg
MCwgLTMyNzY4LCAtMzI3NjgKKyAgICAgICAgfTsKKyAgICAgICAgZGF0YV9sZW4gPSBvcHVzX2Vu
Y29kZShlbmMsIHBjbSwgNDgwLCBkYXRhLCAxOSk7CisgICAgICAgIGFzc2VydChkYXRhX2xlbiA+
IDApOworICAgIH0KKyAgICBvcHVzX2VuY29kZXJfZGVzdHJveShlbmMpOworICAgIHJldHVybiAw
OworfQorCitzdGF0aWMgaW50IHNpbGtfZ2Fpbl9hc3NlcnQodm9pZCkKK3sKKyAgICBPcHVzRW5j
b2RlciAqZW5jOworICAgIGludCBlcnI7CisgICAgaW50IGRhdGFfbGVuOworICAgIHVuc2lnbmVk
IGNoYXIgZGF0YVsxMDAwXTsKKyAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtMVsxNjBdID0geyAw
IH07CisgICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbTJbOTYwXSA9CisgICAgeworICAgICAgICAw
LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
LAorICAgICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwLAorICAgICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAorICAgICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAorICAgICAgICAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAorICAgICAgICAzMjc2
NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwKKyAg
ICAgICAgMCwgMCwgMCwgMCwgMzI3NjcKKyAgICB9OworCisgICAgZW5jID0gb3B1c19lbmNvZGVy
X2NyZWF0ZSg4MDAwLCAxLCBPUFVTX0FQUExJQ0FUSU9OX0FVRElPLCAmZXJyKTsKKyAgICBvcHVz
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElUWSgzKSk7CisgICAgb3B1c19lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfTkFSUk9X
QkFORCkpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDYwMDAp
KTsKKyAgICBkYXRhX2xlbiA9IG9wdXNfZW5jb2RlKGVuYywgcGNtMSwgMTYwLCBkYXRhLCAxMDAw
KTsKKyAgICBhc3NlcnQoZGF0YV9sZW4gPiAwKTsKKworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9WQlIoMCkpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9D
T01QTEVYSVRZKDApKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JB
TkRXSURUSChPUFVTX0JBTkRXSURUSF9NRURJVU1CQU5EKSk7CisgICAgb3B1c19lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMjg2NykpOworICAgIGRhdGFfbGVuID0gb3B1c19lbmNv
ZGUoZW5jLCBwY20yLCA5NjAsIGRhdGEsIDEwMDApOworICAgIGFzc2VydChkYXRhX2xlbiA+IDAp
OworCisgICAgb3B1c19lbmNvZGVyX2Rlc3Ryb3koZW5jKTsKKyAgICByZXR1cm4gMDsKK30KKwor
dm9pZCByZWdyZXNzaW9uX3Rlc3Qodm9pZCkKK3sKKyAgIGZwcmludGYoc3RkZXJyLCAiUnVubmlu
ZyBzaW1wbGUgdGVzdHMgZm9yIGJ1Z3MgdGhhdCBoYXZlIGJlZW4gZml4ZWQgcHJldmlvdXNseVxu
Iik7CisgICBjZWx0X2VjX2ludGVybmFsX2Vycm9yKCk7CisgICBtc2Nicl9lbmNvZGVfZmFpbDEw
KCk7CisgICBtc2Nicl9lbmNvZGVfZmFpbCgpOworICAgc3Vycm91bmRfYW5hbHlzaXNfdW5pbml0
KCk7CisgICBlY19lbmNfc2hyaW5rX2Fzc2VydCgpOworICAgZWNfZW5jX3Nocmlua19hc3NlcnQy
KCk7CisgICBzaWxrX2dhaW5fYXNzZXJ0KCk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3J1bl92ZWN0
b3JzLnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy90ZXN0cy9ydW5fdmVjdG9ycy5zaAppbmRleCAxZDQ0N2M0M2Y1OTY3NzA2YmQzMDll
YmJmMjIwMzhhMWYzYTExZjI1Li5kY2I3NmNmMTg3OWVmMDgwMWQ1YTVjMzNmYzY3NmVkNzliZjQx
ZTg3IDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3Rlc3RzL3J1bl92ZWN0b3JzLnNoCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvcnVuX3ZlY3Rv
cnMuc2gKQEAgLTMzLDggKzMzLDggQEAKICMgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwogIyAgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKLXJtIGxvZ3Nf
bW9uby50eHQKLXJtIGxvZ3Nfc3RlcmVvLnR4dAorcm0gLWYgbG9nc19tb25vLnR4dCBsb2dzX21v
bm8yLnR4dAorcm0gLWYgbG9nc19zdGVyZW8udHh0IGxvZ3Nfc3RlcmVvMi50eHQKIAogaWYgWyAi
JCMiIC1uZSAiMyIgXTsgdGhlbgogICAgIGVjaG8gInVzYWdlOiBydW5fdmVjdG9ycy5zaCA8ZXhl
YyBwYXRoPiA8dmVjdG9yIHBhdGg+IDxyYXRlPiIKQEAgLTQ4LDUxICs0OCw1MyBAQCBSQVRFPSQz
CiA6ICR7T1BVU19ERU1POj0kQ01EX1BBVEgvb3B1c19kZW1vfQogOiAke09QVVNfQ09NUEFSRTo9
JENNRF9QQVRIL29wdXNfY29tcGFyZX0KIAotaWYgWyAtZCAkVkVDVE9SX1BBVEggXTsgdGhlbgot
ICAgIGVjaG8gVGVzdCB2ZWN0b3JzIGZvdW5kIGluICRWRUNUT1JfUEFUSAoraWYgWyAtZCAiJFZF
Q1RPUl9QQVRIIiBdOyB0aGVuCisgICAgZWNobyAiVGVzdCB2ZWN0b3JzIGZvdW5kIGluICRWRUNU
T1JfUEFUSCIKIGVsc2UKLSAgICBlY2hvIE5vIHRlc3QgdmVjdG9ycyBmb3VuZAorICAgIGVjaG8g
Ik5vIHRlc3QgdmVjdG9ycyBmb3VuZCIKICAgICAjRG9uJ3QgbWFrZSB0aGUgdGVzdCBmYWlsIGhl
cmUgYmVjYXVzZSB0aGUgdGVzdCB2ZWN0b3JzCiAgICAgI3dpbGwgYmUgZGlzdHJpYnV0ZWQgc2Vw
YXJhdGVseQogICAgIGV4aXQgMAogZmkKIAotaWYgWyAhIC14ICRPUFVTX0NPTVBBUkUgXTsgdGhl
bgotICAgIGVjaG8gRVJST1I6IENvbXBhcmUgcHJvZ3JhbSBub3QgZm91bmQ6ICRPUFVTX0NPTVBB
UkUKK2lmIFsgISAteCAiJE9QVVNfQ09NUEFSRSIgXTsgdGhlbgorICAgIGVjaG8gIkVSUk9SOiBD
b21wYXJlIHByb2dyYW0gbm90IGZvdW5kOiAkT1BVU19DT01QQVJFIgogICAgIGV4aXQgMQogZmkK
IAotaWYgWyAteCAkT1BVU19ERU1PIF07IHRoZW4KLSAgICBlY2hvIERlY29kaW5nIHdpdGggJE9Q
VVNfREVNTworaWYgWyAteCAiJE9QVVNfREVNTyIgXTsgdGhlbgorICAgIGVjaG8gIkRlY29kaW5n
IHdpdGggJE9QVVNfREVNTyIKIGVsc2UKLSAgICBlY2hvIEVSUk9SOiBEZWNvZGVyIG5vdCBmb3Vu
ZDogJE9QVVNfREVNTworICAgIGVjaG8gIkVSUk9SOiBEZWNvZGVyIG5vdCBmb3VuZDogJE9QVVNf
REVNTyIKICAgICBleGl0IDEKIGZpCiAKIGVjaG8gIj09PT09PT09PT09PT09IgotZWNobyBUZXN0
aW5nIG1vbm8KK2VjaG8gIlRlc3RpbmcgbW9ubyIKIGVjaG8gIj09PT09PT09PT09PT09IgogZWNo
bwogCiBmb3IgZmlsZSBpbiAwMSAwMiAwMyAwNCAwNSAwNiAwNyAwOCAwOSAxMCAxMSAxMgogZG8K
LSAgICBpZiBbIC1lICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuYml0IF07IHRoZW4KLSAg
ICAgICAgZWNobyBUZXN0aW5nIHRlc3R2ZWN0b3IkZmlsZQorICAgIGlmIFsgLWUgIiRWRUNUT1Jf
UEFUSC90ZXN0dmVjdG9yJGZpbGUuYml0IiBdOyB0aGVuCisgICAgICAgIGVjaG8gIlRlc3Rpbmcg
dGVzdHZlY3RvciRmaWxlIgogICAgIGVsc2UKLSAgICAgICAgZWNobyBCaXRzdHJlYW0gZmlsZSBu
b3QgZm91bmQ6IHRlc3R2ZWN0b3IkZmlsZS5iaXQKKyAgICAgICAgZWNobyAiQml0c3RyZWFtIGZp
bGUgbm90IGZvdW5kOiB0ZXN0dmVjdG9yJGZpbGUuYml0IgogICAgIGZpCi0gICAgaWYgJE9QVVNf
REVNTyAtZCAkUkFURSAxICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuYml0IHRtcC5vdXQg
Pj4gbG9nc19tb25vLnR4dCAyPiYxOyB0aGVuCi0gICAgICAgIGVjaG8gc3VjY2Vzc2Z1bGx5IGRl
Y29kZWQKKyAgICBpZiAiJE9QVVNfREVNTyIgLWQgIiRSQVRFIiAxICIkVkVDVE9SX1BBVEgvdGVz
dHZlY3RvciRmaWxlLmJpdCIgdG1wLm91dCA+PiBsb2dzX21vbm8udHh0IDI+JjE7IHRoZW4KKyAg
ICAgICAgZWNobyAic3VjY2Vzc2Z1bGx5IGRlY29kZWQiCiAgICAgZWxzZQotICAgICAgICBlY2hv
IEVSUk9SOiBkZWNvZGluZyBmYWlsZWQKKyAgICAgICAgZWNobyAiRVJST1I6IGRlY29kaW5nIGZh
aWxlZCIKICAgICAgICAgZXhpdCAxCiAgICAgZmkKLSAgICAkT1BVU19DT01QQVJFIC1yICRSQVRF
ICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuZGVjIHRtcC5vdXQgPj4gbG9nc19tb25vLnR4
dCAyPiYxCisgICAgIiRPUFVTX0NPTVBBUkUiIC1yICIkUkFURSIgIiRWRUNUT1JfUEFUSC90ZXN0
dmVjdG9yJHtmaWxlfS5kZWMiIHRtcC5vdXQgPj4gbG9nc19tb25vLnR4dCAyPiYxCiAgICAgZmxv
YXRfcmV0PSQ/Ci0gICAgaWYgWyAiJGZsb2F0X3JldCIgLWVxICIwIiBdOyB0aGVuCi0gICAgICAg
IGVjaG8gb3V0cHV0IG1hdGNoZXMgcmVmZXJlbmNlCisgICAgIiRPUFVTX0NPTVBBUkUiIC1yICIk
UkFURSIgIiRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJHtmaWxlfW0uZGVjIiB0bXAub3V0ID4+IGxv
Z3NfbW9ubzIudHh0IDI+JjEKKyAgICBmbG9hdF9yZXQyPSQ/CisgICAgaWYgWyAiJGZsb2F0X3Jl
dCIgLWVxICIwIiBdIHx8IFsgIiRmbG9hdF9yZXQyIiAtZXEgIjAiIF07IHRoZW4KKyAgICAgICAg
ZWNobyAib3V0cHV0IG1hdGNoZXMgcmVmZXJlbmNlIgogICAgIGVsc2UKLSAgICAgICAgZWNobyBF
UlJPUjogb3V0cHV0IGRvZXMgbm90IG1hdGNoIHJlZmVyZW5jZQorICAgICAgICBlY2hvICJFUlJP
Ujogb3V0cHV0IGRvZXMgbm90IG1hdGNoIHJlZmVyZW5jZSIKICAgICAgICAgZXhpdCAxCiAgICAg
ZmkKICAgICBlY2hvCkBAIC0xMDUsMjMgKzEwNywyNSBAQCBlY2hvCiAKIGZvciBmaWxlIGluIDAx
IDAyIDAzIDA0IDA1IDA2IDA3IDA4IDA5IDEwIDExIDEyCiBkbwotICAgIGlmIFsgLWUgJFZFQ1RP
Ul9QQVRIL3Rlc3R2ZWN0b3IkZmlsZS5iaXQgXTsgdGhlbgotICAgICAgICBlY2hvIFRlc3Rpbmcg
dGVzdHZlY3RvciRmaWxlCisgICAgaWYgWyAtZSAiJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3IkZmls
ZS5iaXQiIF07IHRoZW4KKyAgICAgICAgZWNobyAiVGVzdGluZyB0ZXN0dmVjdG9yJGZpbGUiCiAg
ICAgZWxzZQotICAgICAgICBlY2hvIEJpdHN0cmVhbSBmaWxlIG5vdCBmb3VuZDogdGVzdHZlY3Rv
ciRmaWxlCisgICAgICAgIGVjaG8gIkJpdHN0cmVhbSBmaWxlIG5vdCBmb3VuZDogdGVzdHZlY3Rv
ciRmaWxlIgogICAgIGZpCi0gICAgaWYgJE9QVVNfREVNTyAtZCAkUkFURSAyICRWRUNUT1JfUEFU
SC90ZXN0dmVjdG9yJGZpbGUuYml0IHRtcC5vdXQgPj4gbG9nc19zdGVyZW8udHh0IDI+JjE7IHRo
ZW4KLSAgICAgICAgZWNobyBzdWNjZXNzZnVsbHkgZGVjb2RlZAorICAgIGlmICIkT1BVU19ERU1P
IiAtZCAiJFJBVEUiIDIgIiRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuYml0IiB0bXAub3V0
ID4+IGxvZ3Nfc3RlcmVvLnR4dCAyPiYxOyB0aGVuCisgICAgICAgIGVjaG8gInN1Y2Nlc3NmdWxs
eSBkZWNvZGVkIgogICAgIGVsc2UKLSAgICAgICAgZWNobyBFUlJPUjogZGVjb2RpbmcgZmFpbGVk
CisgICAgICAgIGVjaG8gIkVSUk9SOiBkZWNvZGluZyBmYWlsZWQiCiAgICAgICAgIGV4aXQgMQog
ICAgIGZpCi0gICAgJE9QVVNfQ09NUEFSRSAtcyAtciAkUkFURSAkVkVDVE9SX1BBVEgvdGVzdHZl
Y3RvciRmaWxlLmRlYyB0bXAub3V0ID4+IGxvZ3Nfc3RlcmVvLnR4dCAyPiYxCisgICAgIiRPUFVT
X0NPTVBBUkUiIC1zIC1yICIkUkFURSIgIiRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJHtmaWxlfS5k
ZWMiIHRtcC5vdXQgPj4gbG9nc19zdGVyZW8udHh0IDI+JjEKICAgICBmbG9hdF9yZXQ9JD8KLSAg
ICBpZiBbICIkZmxvYXRfcmV0IiAtZXEgIjAiIF07IHRoZW4KLSAgICAgICAgZWNobyBvdXRwdXQg
bWF0Y2hlcyByZWZlcmVuY2UKKyAgICAiJE9QVVNfQ09NUEFSRSIgLXMgLXIgIiRSQVRFIiAiJFZF
Q1RPUl9QQVRIL3Rlc3R2ZWN0b3Ike2ZpbGV9bS5kZWMiIHRtcC5vdXQgPj4gbG9nc19zdGVyZW8y
LnR4dCAyPiYxCisgICAgZmxvYXRfcmV0Mj0kPworICAgIGlmIFsgIiRmbG9hdF9yZXQiIC1lcSAi
MCIgXSB8fCBbICIkZmxvYXRfcmV0MiIgLWVxICIwIiBdOyB0aGVuCisgICAgICAgIGVjaG8gIm91
dHB1dCBtYXRjaGVzIHJlZmVyZW5jZSIKICAgICBlbHNlCi0gICAgICAgIGVjaG8gRVJST1I6IG91
dHB1dCBkb2VzIG5vdCBtYXRjaCByZWZlcmVuY2UKKyAgICAgICAgZWNobyAiRVJST1I6IG91dHB1
dCBkb2VzIG5vdCBtYXRjaCByZWZlcmVuY2UiCiAgICAgICAgIGV4aXQgMQogICAgIGZpCiAgICAg
ZWNobwpAQCAtMTI5LDYgKzEzMywxMSBAQCBkb25lCiAKIAogCi1lY2hvIEFsbCB0ZXN0cyBoYXZl
IHBhc3NlZCBzdWNjZXNzZnVsbHkKLWdyZXAgcXVhbGl0eSBsb2dzX21vbm8udHh0IHwgYXdrICd7
c3VtKz0kNH1FTkR7cHJpbnQgIkF2ZXJhZ2UgbW9ubyBxdWFsaXR5IGlzIiwgc3VtL05SLCAiJSJ9
JwotZ3JlcCBxdWFsaXR5IGxvZ3Nfc3RlcmVvLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee3ByaW50
ICJBdmVyYWdlIHN0ZXJlbyBxdWFsaXR5IGlzIiwgc3VtL05SLCAiJSJ9JworZWNobyAiQWxsIHRl
c3RzIGhhdmUgcGFzc2VkIHN1Y2Nlc3NmdWxseSIKK21vbm8xPWBncmVwIHF1YWxpdHkgbG9nc19t
b25vLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee2lmIChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNl
IHN1bSA9IDA7IHByaW50IHN1bX0nYAorbW9ubzI9YGdyZXAgcXVhbGl0eSBsb2dzX21vbm8yLnR4
dCB8IGF3ayAne3N1bSs9JDR9RU5Ee2lmIChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNlIHN1bSA9
IDA7IHByaW50IHN1bX0nYAorZWNobyAkbW9ubzEgJG1vbm8yIHwgYXdrICd7aWYgKCQyID4gJDEp
ICQxID0gJDI7IHByaW50ICJBdmVyYWdlIG1vbm8gcXVhbGl0eSBpcyIsICQxLCAiJSJ9JworCitz
dGVyZW8xPWBncmVwIHF1YWxpdHkgbG9nc19zdGVyZW8udHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7
aWYgKE5SID09IDEyKSBzdW0gLz0gMTI7IGVsc2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdgCitzdGVy
ZW8yPWBncmVwIHF1YWxpdHkgbG9nc19zdGVyZW8yLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee2lm
IChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNlIHN1bSA9IDA7IHByaW50IHN1bX0nYAorZWNobyAk
c3RlcmVvMSAkc3RlcmVvMiB8IGF3ayAne2lmICgkMiA+ICQxKSAkMSA9ICQyOyBwcmludCAiQXZl
cmFnZSBzdGVyZW8gcXVhbGl0eSBpcyIsICQxLCAiJSJ9JwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy90ZXN0
X29wdXNfYXBpLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19hcGkuYwppbmRleCA0ODkwNTJkMjFmYjMwYmI4
YjBmZjljMzNjZWZmZjBmMWE1MDBmZWRhLi4xZDAwOTUwNThmODBhMTIxM2IwMTU1NjE5ODRjM2Jj
YzdjZjhlNTQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19hcGkuYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rl
c3Rfb3B1c19hcGkuYwpAQCAtMTM4Myw2ICsxMzgzLDE1IEBAIG9wdXNfaW50MzIgdGVzdF9lbmNf
YXBpKHZvaWQpCiAgICBlcnI9b3B1c19lbmNvZGVyX2N0bChlbmMsT1BVU19TRVRfRVhQRVJUX0ZS
QU1FX0RVUkFUSU9OKE9QVVNfRlJBTUVTSVpFXzYwX01TKSk7CiAgICBpZihlcnIhPU9QVVNfT0sp
dGVzdF9mYWlsZWQoKTsKICAgIGNmZ3MrKzsKKyAgIGVycj1vcHVzX2VuY29kZXJfY3RsKGVuYyxP
UFVTX1NFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT04oT1BVU19GUkFNRVNJWkVfODBfTVMpKTsKKyAg
IGlmKGVyciE9T1BVU19PSyl0ZXN0X2ZhaWxlZCgpOworICAgY2ZncysrOworICAgZXJyPW9wdXNf
ZW5jb2Rlcl9jdGwoZW5jLE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTihPUFVTX0ZSQU1F
U0laRV8xMDBfTVMpKTsKKyAgIGlmKGVyciE9T1BVU19PSyl0ZXN0X2ZhaWxlZCgpOworICAgY2Zn
cysrOworICAgZXJyPW9wdXNfZW5jb2Rlcl9jdGwoZW5jLE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9E
VVJBVElPTihPUFVTX0ZSQU1FU0laRV8xMjBfTVMpKTsKKyAgIGlmKGVyciE9T1BVU19PSyl0ZXN0
X2ZhaWxlZCgpOworICAgY2ZncysrOwogICAgQ0hFQ0tfU0VUR0VUKE9QVVNfU0VUX0VYUEVSVF9G
UkFNRV9EVVJBVElPTihpKSxPUFVTX0dFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT04oJmkpLDAsLTEs
CiAgICAgICAgICBPUFVTX0ZSQU1FU0laRV82MF9NUyxPUFVTX0ZSQU1FU0laRV9BUkcsCiAgICAg
ICIgICAgT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OIC4uLi4uLi4uLi4uLi4uLiBPSy5c
biIsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19jb21tb24uaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVz
X2NvbW1vbi5oCmluZGV4IDY2Yjk2OTAwMTg5M2M5ODhjOGNlZGUzYTVlMjliMGYwM2NkMGQ2MmIu
LjIzNWNmMWMxMDE2ODkxMTBhMDAxMzViYmNlMmMzYTJiNTFmZGEwYjQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVz
dHMvdGVzdF9vcHVzX2NvbW1vbi5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCkBAIC02
NCw2ICs2NCw4IEBAIHN0YXRpYyBvcHVzX3VpbnQzMiBpc2VlZDsKIAogI2lmZGVmIF9fR05VQ19f
CiBfX2F0dHJpYnV0ZV9fKChub3JldHVybikpCisjZWxpZiBkZWZpbmVkKF9NU0NfVkVSKQorX19k
ZWNsc3BlYyhub3JldHVybikKICNlbmRpZgogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgX3Rlc3Rf
ZmFpbGVkKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lKQogewpAQCAtNzYsMyArNzgsNSBAQCBz
dGF0aWMgT1BVU19JTkxJTkUgdm9pZCBfdGVzdF9mYWlsZWQoY29uc3QgY2hhciAqZmlsZSwgaW50
IGxpbmUpCiAgIGFib3J0KCk7CiB9CiAjZGVmaW5lIHRlc3RfZmFpbGVkKCkgX3Rlc3RfZmFpbGVk
KF9fRklMRV9fLCBfX0xJTkVfXyk7CisKK3ZvaWQgcmVncmVzc2lvbl90ZXN0KHZvaWQpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy90ZXN0cy90ZXN0X29wdXNfZGVjb2RlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19kZWNvZGUu
YwppbmRleCA5YzBlYjljNzI4NThkNWE4ZjRkYzRkYTZiOWYzMWViMmNhZWJjNDFlLi41MTk3ZmEx
ZGQyY2YxMGI1ZTUwMzdkMmIyMTUzZDZlZjY2NDQ3N2I3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rf
b3B1c19kZWNvZGUuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19kZWNvZGUuYwpAQCAtMTA0LDcgKzEw
NCw3IEBAIGludCB0ZXN0X2RlY29kZXJfY29kZTAoaW50IG5vX2Z1enopCiAgICAgICBpbnQgZmFj
dG9yPTQ4MDAwL2Zzdlt0Pj4xXTsKICAgICAgIGZvcihmZWM9MDtmZWM8MjtmZWMrKykKICAgICAg
IHsKLSAgICAgICAgIGludCBkdXI7CisgICAgICAgICBvcHVzX2ludDMyIGR1cjsKICAgICAgICAg
IC8qVGVzdCBQTEMgb24gYSBmcmVzaCBkZWNvZGVyKi8KICAgICAgICAgIG91dF9zYW1wbGVzID0g
b3B1c19kZWNvZGUoZGVjW3RdLCAwLCAwLCBvdXRidWYsIDEyMC9mYWN0b3IsIGZlYyk7CiAgICAg
ICAgICBpZihvdXRfc2FtcGxlcyE9MTIwL2ZhY3Rvcil0ZXN0X2ZhaWxlZCgpOwpAQCAtMTM1LDcg
KzEzNSwxNCBAQCBpbnQgdGVzdF9kZWNvZGVyX2NvZGUwKGludCBub19mdXp6KQogICAgICAgICAg
b3V0YnVmWzBdPTMyNzQ5OwogICAgICAgICAgb3V0X3NhbXBsZXMgPSBvcHVzX2RlY29kZShkZWNb
dF0sIHBhY2tldCwgMCwgb3V0YnVmLCAwLCBmZWMpOwogICAgICAgICAgaWYob3V0X3NhbXBsZXM+
MCl0ZXN0X2ZhaWxlZCgpOworI2lmICFkZWZpbmVkKE9QVVNfQlVJTEQpICYmIChPUFVTX0dOVUNf
UFJFUkVRKDQsIDYpIHx8IChkZWZpbmVkKF9fY2xhbmdfbWFqb3JfXykgJiYgX19jbGFuZ19tYWpv
cl9fID49IDMpKQorI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBwdXNoCisjcHJhZ21hIEdDQyBkaWFn
bm9zdGljIGlnbm9yZWQgIi1Xbm9ubnVsbCIKKyNlbmRpZgogICAgICAgICAgb3V0X3NhbXBsZXMg
PSBvcHVzX2RlY29kZShkZWNbdF0sIHBhY2tldCwgMCwgMCwgMCwgZmVjKTsKKyNpZiAhZGVmaW5l
ZChPUFVTX0JVSUxEKSAmJiAoT1BVU19HTlVDX1BSRVJFUSg0LCA2KSB8fCAoZGVmaW5lZChfX2Ns
YW5nX21ham9yX18pICYmIF9fY2xhbmdfbWFqb3JfXyA+PSAzKSkKKyNwcmFnbWEgR0NDIGRpYWdu
b3N0aWMgcG9wCisjZW5kaWYKICAgICAgICAgIGlmKG91dF9zYW1wbGVzPjApdGVzdF9mYWlsZWQo
KTsKICAgICAgICAgIGlmKG91dGJ1ZlswXSE9MzI3NDkpdGVzdF9mYWlsZWQoKTsKIApAQCAtMTYw
LDcgKzE2Nyw3IEBAIGludCB0ZXN0X2RlY29kZXJfY29kZTAoaW50IG5vX2Z1enopCiAgICAvKkNv
dW50IGNvZGUgMCB0ZXN0cyovCiAgICBmb3IoaT0wO2k8NjQ7aSsrKQogICAgewotICAgICAgaW50
IGR1cjsKKyAgICAgIG9wdXNfaW50MzIgZHVyOwogICAgICAgaW50IGosZXhwZWN0ZWRbNSoyXTsK
ICAgICAgIHBhY2tldFswXT1pPDwyOwogICAgICAgcGFja2V0WzFdPTI1NTsKQEAgLTMxNCw3ICsz
MjEsNyBAQCBpbnQgdGVzdF9kZWNvZGVyX2NvZGUwKGludCBub19mdXp6KQogICAgICAgaWYob3B1
c19kZWNvZGUoZGVjYmFrLCAgMCwgMCwgb3V0YnVmLCBNQVhfRlJBTUVfU0FNUCwgMCk8MjApdGVz
dF9mYWlsZWQoKTsKICAgICAgIGZvcih0PTA7dDw1KjI7dCsrKQogICAgICAgewotICAgICAgICAg
aW50IGR1cjsKKyAgICAgICAgIG9wdXNfaW50MzIgZHVyOwogICAgICAgICAgb3V0X3NhbXBsZXMg
PSBvcHVzX2RlY29kZShkZWNbdF0sIHBhY2tldCwgcGxlbisxLCBvdXRidWYsIE1BWF9GUkFNRV9T
QU1QLCAwKTsKICAgICAgICAgIGlmKG91dF9zYW1wbGVzIT1leHBlY3RlZFt0XSl0ZXN0X2ZhaWxl
ZCgpOwogICAgICAgICAgaWYodD09MClkZWNfZmluYWxfcmFuZ2UyPWRlY19maW5hbF9yYW5nZTE7
CkBAIC0zODQsMjYgKzM5MSwyNiBAQCB2b2lkIHRlc3Rfc29mdF9jbGlwKHZvaWQpCiAgICB7CiAg
ICAgICBmb3IgKGo9MDtqPDEwMjQ7aisrKQogICAgICAgewotICAgICAgICB4W2pdPShpJjI1NSkq
KDEvMzIuZiktNC5mOworICAgICAgICB4W2pdPShqJjI1NSkqKDEvMzIuZiktNC5mOwogICAgICAg
fQogICAgICAgb3B1c19wY21fc29mdF9jbGlwKCZ4W2ldLDEwMjQtaSwxLHMpOwogICAgICAgZm9y
IChqPWk7ajwxMDI0O2orKykKICAgICAgIHsKLSAgICAgICAgaWYoeFtpXT4xLmYpdGVzdF9mYWls
ZWQoKTsKLSAgICAgICAgaWYoeFtpXTwtMS5mKXRlc3RfZmFpbGVkKCk7CisgICAgICAgIGlmKHhb
al0+MS5mKXRlc3RfZmFpbGVkKCk7CisgICAgICAgIGlmKHhbal08LTEuZil0ZXN0X2ZhaWxlZCgp
OwogICAgICAgfQogICAgfQogICAgZm9yKGk9MTtpPDk7aSsrKQogICAgewogICAgICAgZm9yIChq
PTA7ajwxMDI0O2orKykKICAgICAgIHsKLSAgICAgICAgeFtqXT0oaSYyNTUpKigxLzMyLmYpLTQu
ZjsKKyAgICAgICAgeFtqXT0oaiYyNTUpKigxLzMyLmYpLTQuZjsKICAgICAgIH0KICAgICAgIG9w
dXNfcGNtX3NvZnRfY2xpcCh4LDEwMjQvaSxpLHMpOwogICAgICAgZm9yIChqPTA7ajwoMTAyNC9p
KSppO2orKykKICAgICAgIHsKLSAgICAgICAgaWYoeFtpXT4xLmYpdGVzdF9mYWlsZWQoKTsKLSAg
ICAgICAgaWYoeFtpXTwtMS5mKXRlc3RfZmFpbGVkKCk7CisgICAgICAgIGlmKHhbal0+MS5mKXRl
c3RfZmFpbGVkKCk7CisgICAgICAgIGlmKHhbal08LTEuZil0ZXN0X2ZhaWxlZCgpOwogICAgICAg
fQogICAgfQogICAgb3B1c19wY21fc29mdF9jbGlwKHgsMCwxLHMpOwpAQCAtNDM2LDcgKzQ0Myw3
IEBAIGludCBtYWluKGludCBfYXJnYywgY2hhciAqKl9hcmd2KQogICAgICAgaXNlZWQ9YXRvaShl
bnZfc2VlZCk7CiAgICAgICBlbnZfdXNlZD0xOwogICAgfQotICAgZWxzZSBpc2VlZD0ob3B1c191
aW50MzIpdGltZShOVUxMKV4oKGdldHBpZCgpJjY1NTM1KTw8MTYpOworICAgZWxzZSBpc2VlZD0o
b3B1c191aW50MzIpdGltZShOVUxMKV4oKChvcHVzX3VpbnQzMilnZXRwaWQoKSY2NTUzNSk8PDE2
KTsKICAgIFJ3PVJ6PWlzZWVkOwogCiAgICBvdmVyc2lvbj1vcHVzX2dldF92ZXJzaW9uX3N0cmlu
ZygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy90ZXN0X29wdXNfZW5jb2RlLmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1
c19lbmNvZGUuYwppbmRleCAxMzJkMDc0ZDMwMjU0NTZmOWQyMjk3ZTc5ODhlODVhYzUxNjEwYjg1
Li5kYWU0OWMzZDUzNTFiZDU1NmMwM2Q3NGVkOGFlNjljMjE5NTIwNjJhIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rl
c3RzL3Rlc3Rfb3B1c19lbmNvZGUuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYwpAQCAt
NTEsOCArNTEsOCBAQAogI2RlZmluZSBTQU1QTEVTICg0ODAwMCozMCkKICNkZWZpbmUgU1NBTVBM
RVMgKFNBTVBMRVMvMykKICNkZWZpbmUgTUFYX0ZSQU1FX1NBTVAgKDU3NjApCi0KICNkZWZpbmUg
UEkgKDMuMTQxNTkyNjUzNTg5NzkzMjM4NDYyNjQzZikKKyNkZWZpbmUgUkFORF9TQU1QTEUoYSkg
KGFbZmFzdF9yYW5kKCkgJSBzaXplb2YoYSkvc2l6ZW9mKGFbMF0pXSkKIAogdm9pZCBnZW5lcmF0
ZV9tdXNpYyhzaG9ydCAqYnVmLCBvcHVzX2ludDMyIGxlbikKIHsKQEAgLTExMiwxNCArMTEyLDE2
OSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzYXZlX3BhY2tldCh1bnNpZ25lZCBjaGFyKiBw
LCBpbnQgbGVuLCBvcHVzX3VpbnQzMiBybmcpCiB9CiAjZW5kaWYKIAoraW50IGdldF9mcmFtZV9z
aXplX2VudW0oaW50IGZyYW1lX3NpemUsIGludCBzYW1wbGluZ19yYXRlKQoreworICAgaW50IGZy
YW1lX3NpemVfZW51bTsKKworICAgaWYoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS80MDApCisg
ICAgICBmcmFtZV9zaXplX2VudW0gPSBPUFVTX0ZSQU1FU0laRV8yXzVfTVM7CisgICBlbHNlIGlm
KGZyYW1lX3NpemU9PXNhbXBsaW5nX3JhdGUvMjAwKQorICAgICAgZnJhbWVfc2l6ZV9lbnVtID0g
T1BVU19GUkFNRVNJWkVfNV9NUzsKKyAgIGVsc2UgaWYoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0
ZS8xMDApCisgICAgICBmcmFtZV9zaXplX2VudW0gPSBPUFVTX0ZSQU1FU0laRV8xMF9NUzsKKyAg
IGVsc2UgaWYoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS81MCkKKyAgICAgIGZyYW1lX3NpemVf
ZW51bSA9IE9QVVNfRlJBTUVTSVpFXzIwX01TOworICAgZWxzZSBpZihmcmFtZV9zaXplPT1zYW1w
bGluZ19yYXRlLzI1KQorICAgICAgZnJhbWVfc2l6ZV9lbnVtID0gT1BVU19GUkFNRVNJWkVfNDBf
TVM7CisgICBlbHNlIGlmKGZyYW1lX3NpemU9PTMqc2FtcGxpbmdfcmF0ZS81MCkKKyAgICAgIGZy
YW1lX3NpemVfZW51bSA9IE9QVVNfRlJBTUVTSVpFXzYwX01TOworICAgZWxzZSBpZihmcmFtZV9z
aXplPT00KnNhbXBsaW5nX3JhdGUvNTApCisgICAgICBmcmFtZV9zaXplX2VudW0gPSBPUFVTX0ZS
QU1FU0laRV84MF9NUzsKKyAgIGVsc2UgaWYoZnJhbWVfc2l6ZT09NSpzYW1wbGluZ19yYXRlLzUw
KQorICAgICAgZnJhbWVfc2l6ZV9lbnVtID0gT1BVU19GUkFNRVNJWkVfMTAwX01TOworICAgZWxz
ZSBpZihmcmFtZV9zaXplPT02KnNhbXBsaW5nX3JhdGUvNTApCisgICAgICBmcmFtZV9zaXplX2Vu
dW0gPSBPUFVTX0ZSQU1FU0laRV8xMjBfTVM7CisgICBlbHNlCisgICAgICB0ZXN0X2ZhaWxlZCgp
OworCisgICByZXR1cm4gZnJhbWVfc2l6ZV9lbnVtOworfQorCit2b2lkIHRlc3RfZW5jb2RlKE9w
dXNFbmNvZGVyICplbmMsIGludCBjaGFubmVscywgaW50IGZyYW1lX3NpemUsIE9wdXNEZWNvZGVy
ICpkZWMsIGNvbnN0IGNoYXIqIGRlYnVnX2luZm8pCit7CisgICBpbnQgc2FtcF9jb3VudCA9IDA7
CisgICBvcHVzX2ludDE2ICppbmJ1ZjsKKyAgIHVuc2lnbmVkIGNoYXIgcGFja2V0W01BWF9QQUNL
RVQrMjU3XTsKKyAgIGludCBsZW47CisgICBvcHVzX2ludDE2ICpvdXRidWY7CisgICBpbnQgb3V0
X3NhbXBsZXM7CisKKyAgIC8qIEdlbmVyYXRlIGlucHV0IGRhdGEgKi8KKyAgIGluYnVmID0gKG9w
dXNfaW50MTYqKW1hbGxvYyhzaXplb2YoKmluYnVmKSpTU0FNUExFUyk7CisgICBnZW5lcmF0ZV9t
dXNpYyhpbmJ1ZiwgU1NBTVBMRVMvMik7CisKKyAgIC8qIEFsbG9jYXRlIG1lbW9yeSBmb3Igb3V0
cHV0IGRhdGEgKi8KKyAgIG91dGJ1ZiA9IChvcHVzX2ludDE2KiltYWxsb2Moc2l6ZW9mKCpvdXRi
dWYpKk1BWF9GUkFNRV9TQU1QKjMpOworCisgICAvKiBFbmNvZGUgZGF0YSwgdGhlbiBkZWNvZGUg
Zm9yIHNhbml0eSBjaGVjayAqLworICAgZG8geworICAgICAgbGVuID0gb3B1c19lbmNvZGUoZW5j
LCAmaW5idWZbc2FtcF9jb3VudCpjaGFubmVsc10sIGZyYW1lX3NpemUsIHBhY2tldCwgTUFYX1BB
Q0tFVCk7CisgICAgICBpZihsZW48MCB8fCBsZW4+TUFYX1BBQ0tFVCkgeworICAgICAgICAgZnBy
aW50ZihzdGRlcnIsIiVzXG4iLGRlYnVnX2luZm8pOworICAgICAgICAgZnByaW50ZihzdGRlcnIs
Im9wdXNfZW5jb2RlKCkgcmV0dXJuZWQgJWRcbiIsbGVuKTsKKyAgICAgICAgIHRlc3RfZmFpbGVk
KCk7CisgICAgICB9CisKKyAgICAgIG91dF9zYW1wbGVzID0gb3B1c19kZWNvZGUoZGVjLCBwYWNr
ZXQsIGxlbiwgb3V0YnVmLCBNQVhfRlJBTUVfU0FNUCwgMCk7CisgICAgICBpZihvdXRfc2FtcGxl
cyE9ZnJhbWVfc2l6ZSkgeworICAgICAgICAgZnByaW50ZihzdGRlcnIsIiVzXG4iLGRlYnVnX2lu
Zm8pOworICAgICAgICAgZnByaW50ZihzdGRlcnIsIm9wdXNfZGVjb2RlKCkgcmV0dXJuZWQgJWRc
biIsb3V0X3NhbXBsZXMpOworICAgICAgICAgdGVzdF9mYWlsZWQoKTsKKyAgICAgIH0KKworICAg
ICAgc2FtcF9jb3VudCArPSBmcmFtZV9zaXplOworICAgfSB3aGlsZSAoc2FtcF9jb3VudCA8ICgo
U1NBTVBMRVMvMiktTUFYX0ZSQU1FX1NBTVApKTsKKworICAgLyogQ2xlYW4gdXAgKi8KKyAgIGZy
ZWUoaW5idWYpOworICAgZnJlZShvdXRidWYpOworfQorCit2b2lkIGZ1enpfZW5jb2Rlcl9zZXR0
aW5ncyhjb25zdCBpbnQgbnVtX2VuY29kZXJzLCBjb25zdCBpbnQgbnVtX3NldHRpbmdfY2hhbmdl
cykKK3sKKyAgIE9wdXNFbmNvZGVyICplbmM7CisgICBPcHVzRGVjb2RlciAqZGVjOworICAgaW50
IGksaixlcnI7CisKKyAgIC8qIFBhcmFtZXRlcnMgdG8gZnV6ei4gU29tZSB2YWx1ZXMgYXJlIGR1
cGxpY2F0ZWQgdG8gaW5jcmVhc2UgdGhlaXIgcHJvYmFiaWxpdHkgb2YgYmVpbmcgdGVzdGVkLiAq
LworICAgaW50IHNhbXBsaW5nX3JhdGVzWzVdID0gezgwMDAsIDEyMDAwLCAxNjAwMCwgMjQwMDAs
IDQ4MDAwfTsKKyAgIGludCBjaGFubmVsc1syXSA9IHsxLCAyfTsKKyAgIGludCBhcHBsaWNhdGlv
bnNbM10gPSB7T1BVU19BUFBMSUNBVElPTl9BVURJTywgT1BVU19BUFBMSUNBVElPTl9WT0lQLCBP
UFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVMQVl9OworICAgaW50IGJpdHJhdGVzWzEx
XSA9IHs2MDAwLCAxMjAwMCwgMTYwMDAsIDI0MDAwLCAzMjAwMCwgNDgwMDAsIDY0MDAwLCA5NjAw
MCwgNTEwMDAwLCBPUFVTX0FVVE8sIE9QVVNfQklUUkFURV9NQVh9OworICAgaW50IGZvcmNlX2No
YW5uZWxzWzRdID0ge09QVVNfQVVUTywgT1BVU19BVVRPLCAxLCAyfTsKKyAgIGludCB1c2VfdmJy
WzNdID0gezAsIDEsIDF9OworICAgaW50IHZicl9jb25zdHJhaW50c1szXSA9IHswLCAxLCAxfTsK
KyAgIGludCBjb21wbGV4aXRpZXNbMTFdID0gezAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDks
IDEwfTsKKyAgIGludCBtYXhfYmFuZHdpZHRoc1s2XSA9IHtPUFVTX0JBTkRXSURUSF9OQVJST1dC
QU5ELCBPUFVTX0JBTkRXSURUSF9NRURJVU1CQU5ELAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIE9QVVNfQkFORFdJRFRIX1dJREVCQU5ELCBPUFVTX0JBTkRXSURUSF9TVVBFUldJREVCQU5E
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9QVVNfQkFORFdJRFRIX0ZVTExCQU5ELCBP
UFVTX0JBTkRXSURUSF9GVUxMQkFORH07CisgICBpbnQgc2lnbmFsc1s0XSA9IHtPUFVTX0FVVE8s
IE9QVVNfQVVUTywgT1BVU19TSUdOQUxfVk9JQ0UsIE9QVVNfU0lHTkFMX01VU0lDfTsKKyAgIGlu
dCBpbmJhbmRfZmVjc1szXSA9IHswLCAwLCAxfTsKKyAgIGludCBwYWNrZXRfbG9zc19wZXJjWzRd
ID0gezAsIDEsIDIsIDV9OworICAgaW50IGxzYl9kZXB0aHNbMl0gPSB7OCwgMjR9OworICAgaW50
IHByZWRpY3Rpb25fZGlzYWJsZWRbM10gPSB7MCwgMCwgMX07CisgICBpbnQgdXNlX2R0eFsyXSA9
IHswLCAxfTsKKyAgIGludCBmcmFtZV9zaXplc19tc194Mls5XSA9IHs1LCAxMCwgMjAsIDQwLCA4
MCwgMTIwLCAxNjAsIDIwMCwgMjQwfTsgIC8qIHgyIHRvIGF2b2lkIDIuNSBtcyAqLworICAgY2hh
ciBkZWJ1Z19pbmZvWzUxMl07CisKKyAgIGZvciAoaT0wOyBpPG51bV9lbmNvZGVyczsgaSsrKSB7
CisgICAgICBpbnQgc2FtcGxpbmdfcmF0ZSA9IFJBTkRfU0FNUExFKHNhbXBsaW5nX3JhdGVzKTsK
KyAgICAgIGludCBudW1fY2hhbm5lbHMgPSBSQU5EX1NBTVBMRShjaGFubmVscyk7CisgICAgICBp
bnQgYXBwbGljYXRpb24gPSBSQU5EX1NBTVBMRShhcHBsaWNhdGlvbnMpOworCisgICAgICBkZWMg
PSBvcHVzX2RlY29kZXJfY3JlYXRlKHNhbXBsaW5nX3JhdGUsIG51bV9jaGFubmVscywgJmVycik7
CisgICAgICBpZihlcnIhPU9QVVNfT0sgfHwgZGVjPT1OVUxMKXRlc3RfZmFpbGVkKCk7CisKKyAg
ICAgIGVuYyA9IG9wdXNfZW5jb2Rlcl9jcmVhdGUoc2FtcGxpbmdfcmF0ZSwgbnVtX2NoYW5uZWxz
LCBhcHBsaWNhdGlvbiwgJmVycik7CisgICAgICBpZihlcnIhPU9QVVNfT0sgfHwgZW5jPT1OVUxM
KXRlc3RfZmFpbGVkKCk7CisKKyAgICAgIGZvciAoaj0wOyBqPG51bV9zZXR0aW5nX2NoYW5nZXM7
IGorKykgeworICAgICAgICAgaW50IGJpdHJhdGUgPSBSQU5EX1NBTVBMRShiaXRyYXRlcyk7Cisg
ICAgICAgICBpbnQgZm9yY2VfY2hhbm5lbCA9IFJBTkRfU0FNUExFKGZvcmNlX2NoYW5uZWxzKTsK
KyAgICAgICAgIGludCB2YnIgPSBSQU5EX1NBTVBMRSh1c2VfdmJyKTsKKyAgICAgICAgIGludCB2
YnJfY29uc3RyYWludCA9IFJBTkRfU0FNUExFKHZicl9jb25zdHJhaW50cyk7CisgICAgICAgICBp
bnQgY29tcGxleGl0eSA9IFJBTkRfU0FNUExFKGNvbXBsZXhpdGllcyk7CisgICAgICAgICBpbnQg
bWF4X2J3ID0gUkFORF9TQU1QTEUobWF4X2JhbmR3aWR0aHMpOworICAgICAgICAgaW50IHNpZyA9
IFJBTkRfU0FNUExFKHNpZ25hbHMpOworICAgICAgICAgaW50IGluYmFuZF9mZWMgPSBSQU5EX1NB
TVBMRShpbmJhbmRfZmVjcyk7CisgICAgICAgICBpbnQgcGt0X2xvc3MgPSBSQU5EX1NBTVBMRShw
YWNrZXRfbG9zc19wZXJjKTsKKyAgICAgICAgIGludCBsc2JfZGVwdGggPSBSQU5EX1NBTVBMRShs
c2JfZGVwdGhzKTsKKyAgICAgICAgIGludCBwcmVkX2Rpc2FibGVkID0gUkFORF9TQU1QTEUocHJl
ZGljdGlvbl9kaXNhYmxlZCk7CisgICAgICAgICBpbnQgZHR4ID0gUkFORF9TQU1QTEUodXNlX2R0
eCk7CisgICAgICAgICBpbnQgZnJhbWVfc2l6ZV9tc194MiA9IFJBTkRfU0FNUExFKGZyYW1lX3Np
emVzX21zX3gyKTsKKyAgICAgICAgIGludCBmcmFtZV9zaXplID0gZnJhbWVfc2l6ZV9tc194Mipz
YW1wbGluZ19yYXRlLzIwMDA7CisgICAgICAgICBpbnQgZnJhbWVfc2l6ZV9lbnVtID0gZ2V0X2Zy
YW1lX3NpemVfZW51bShmcmFtZV9zaXplLCBzYW1wbGluZ19yYXRlKTsKKyAgICAgICAgIGZvcmNl
X2NoYW5uZWwgPSBJTUlOKGZvcmNlX2NoYW5uZWwsIG51bV9jaGFubmVscyk7CisKKyAgICAgICAg
IHNwcmludGYoZGVidWdfaW5mbywKKyAgICAgICAgICAgICAgICAgImZ1enpfZW5jb2Rlcl9zZXR0
aW5nczogJWQga0h6LCAlZCBjaCwgYXBwbGljYXRpb246ICVkLCAiCisgICAgICAgICAgICAgICAg
ICIlZCBicHMsIGZvcmNlIGNoOiAlZCwgdmJyOiAlZCwgdmJyIGNvbnN0cmFpbnQ6ICVkLCBjb21w
bGV4aXR5OiAlZCwgIgorICAgICAgICAgICAgICAgICAibWF4IGJ3OiAlZCwgc2lnbmFsOiAlZCwg
aW5iYW5kIGZlYzogJWQsIHBrdCBsb3NzOiAlZCUlLCBsc2IgZGVwdGg6ICVkLCAiCisgICAgICAg
ICAgICAgICAgICJwcmVkIGRpc2FibGVkOiAlZCwgZHR4OiAlZCwgKCVkLzIpIG1zXG4iLAorICAg
ICAgICAgICAgICAgICBzYW1wbGluZ19yYXRlLzEwMDAsIG51bV9jaGFubmVscywgYXBwbGljYXRp
b24sIGJpdHJhdGUsCisgICAgICAgICAgICAgICAgIGZvcmNlX2NoYW5uZWwsIHZiciwgdmJyX2Nv
bnN0cmFpbnQsIGNvbXBsZXhpdHksIG1heF9idywgc2lnLCBpbmJhbmRfZmVjLAorICAgICAgICAg
ICAgICAgICBwa3RfbG9zcywgbHNiX2RlcHRoLCBwcmVkX2Rpc2FibGVkLCBkdHgsIGZyYW1lX3Np
emVfbXNfeDIpOworCisgICAgICAgICBpZihvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
QklUUkFURShiaXRyYXRlKSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlm
KG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9GT1JDRV9DSEFOTkVMUyhmb3JjZV9jaGFu
bmVsKSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIodmJyKSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsK
KyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlO
VCh2YnJfY29uc3RyYWludCkpICE9IE9QVVNfT0spIHRlc3RfZmFpbGVkKCk7CisgICAgICAgICBp
ZihvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElUWShjb21wbGV4aXR5KSkg
IT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJRFRIKG1heF9idykpICE9IE9QVVNfT0spIHRlc3RfZmFp
bGVkKCk7CisgICAgICAgICBpZihvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFM
KHNpZykpICE9IE9QVVNfT0spIHRlc3RfZmFpbGVkKCk7CisgICAgICAgICBpZihvcHVzX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfSU5CQU5EX0ZFQyhpbmJhbmRfZmVjKSkgIT0gT1BVU19PSykg
dGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9QQUNLRVRfTE9TU19QRVJDKHBrdF9sb3NzKSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsK
KyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9MU0JfREVQVEgobHNi
X2RlcHRoKSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKHByZWRfZGlzYWJsZWQp
KSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX0RUWChkdHgpKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworICAg
ICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJB
VElPTihmcmFtZV9zaXplX2VudW0pKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworCisgICAg
ICAgICB0ZXN0X2VuY29kZShlbmMsIG51bV9jaGFubmVscywgZnJhbWVfc2l6ZSwgZGVjLCBkZWJ1
Z19pbmZvKTsKKyAgICAgIH0KKworICAgICAgb3B1c19lbmNvZGVyX2Rlc3Ryb3koZW5jKTsKKyAg
ICAgIG9wdXNfZGVjb2Rlcl9kZXN0cm95KGRlYyk7CisgICB9Cit9CisKIGludCBydW5fdGVzdDEo
aW50IG5vX2Z1enopCiB7CiAgICBzdGF0aWMgY29uc3QgaW50IGZzaXplc1s2XT17OTYwKjMsOTYw
KjIsMTIwLDI0MCw0ODAsOTYwfTsKICAgIHN0YXRpYyBjb25zdCBjaGFyICptc3RyaW5nc1szXSA9
IHsiICAgIExQIiwiSHlicmlkIiwiICBNRENUIn07CiAgICB1bnNpZ25lZCBjaGFyIG1hcHBpbmdb
MjU2XSA9IHswLDEsMjU1fTsKICAgIHVuc2lnbmVkIGNoYXIgZGI2MlszNl07Ci0gICBvcHVzX2lu
dDMyIGk7Ci0gICBpbnQgcmMsaixlcnI7CisgICBvcHVzX2ludDMyIGksajsKKyAgIGludCByYyxl
cnI7CiAgICBPcHVzRW5jb2RlciAqZW5jOwogICAgT3B1c01TRW5jb2RlciAqTVNlbmM7CiAgICBP
cHVzRGVjb2RlciAqZGVjOwpAQCAtMjI5LDYgKzM4NCw3IEBAIGludCBydW5fdGVzdDEoaW50IG5v
X2Z1enopCiAKICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgo
T1BVU19BVVRPKSkhPU9QVVNfT0spdGVzdF9mYWlsZWQoKTsKICAgIGlmKG9wdXNfZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9GT1JDRV9NT0RFKC0yKSkhPU9QVVNfQkFEX0FSRyl0ZXN0X2ZhaWxl
ZCgpOworICAgaWYob3B1c19lbmNvZGUoZW5jLCBpbmJ1ZiwgNTAwLCBwYWNrZXQsIE1BWF9QQUNL
RVQpIT1PUFVTX0JBRF9BUkcpdGVzdF9mYWlsZWQoKTsKIAogICAgZm9yKHJjPTA7cmM8MztyYysr
KQogICAgewpAQCAtMzM1LDcgKzQ5MSw4IEBAIGludCBydW5fdGVzdDEoaW50IG5vX2Z1enopCiAg
ICAgICAgICBpZihvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKE1TZW5jLCBPUFVTX1NFVF9C
SVRSQVRFKHJhdGUpKSE9T1BVU19PSyl0ZXN0X2ZhaWxlZCgpOwogICAgICAgICAgY291bnQ9aT0w
OwogICAgICAgICAgZG8gewotICAgICAgICAgICAgaW50IHByZWQsbGVuLG91dF9zYW1wbGVzLGZy
YW1lX3NpemUsbG9zczsKKyAgICAgICAgICAgIGludCBsZW4sb3V0X3NhbXBsZXMsZnJhbWVfc2l6
ZSxsb3NzOworICAgICAgICAgICAgb3B1c19pbnQzMiBwcmVkOwogICAgICAgICAgICAgaWYob3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChNU2VuYywgT1BVU19HRVRfUFJFRElDVElPTl9ESVNB
QkxFRCgmcHJlZCkpIT1PUFVTX09LKXRlc3RfZmFpbGVkKCk7CiAgICAgICAgICAgICBpZihvcHVz
X211bHRpc3RyZWFtX2VuY29kZXJfY3RsKE1TZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FC
TEVEKChpbnQpKGZhc3RfcmFuZCgpJjE1KTwocHJlZD8xMTo0KSkpIT1PUFVTX09LKXRlc3RfZmFp
bGVkKCk7CiAgICAgICAgICAgICBmcmFtZV9zaXplPWZyYW1lW2pdOwpAQCAtNDI1LDcgKzU4Miw3
IEBAIGludCBydW5fdGVzdDEoaW50IG5vX2Z1enopCiAgICAgICAgICB0aGUgZGVjb2RlcnMgaW4g
b3JkZXIgdG8gY29tcGFyZSB0aGVtLiAqLwogICAgICAgaWYob3B1c19wYWNrZXRfcGFyc2UocGFj
a2V0LGxlbiwmdG9jLGZyYW1lcyxzaXplLCZwYXlsb2FkX29mZnNldCk8PTApdGVzdF9mYWlsZWQo
KTsKICAgICAgIGlmKChmYXN0X3JhbmQoKSYxMDIzKT09MClsZW49MDsKLSAgICAgIGZvcihqPShm
cmFtZXNbMF0tcGFja2V0KTtqPGxlbjtqKyspZm9yKGpqPTA7amo8ODtqaisrKXBhY2tldFtqXV49
KCghbm9fZnV6eikmJigoZmFzdF9yYW5kKCkmMTAyMyk9PTApKTw8amo7CisgICAgICBmb3Ioaj0o
b3B1c19pbnQzMikoZnJhbWVzWzBdLXBhY2tldCk7ajxsZW47aisrKWZvcihqaj0wO2pqPDg7amor
KylwYWNrZXRbal1ePSgoIW5vX2Z1enopJiYoKGZhc3RfcmFuZCgpJjEwMjMpPT0wKSk8PGpqOwog
ICAgICAgb3V0X3NhbXBsZXMgPSBvcHVzX2RlY29kZShkZWNfZXJyWzBdLCBsZW4+MD9wYWNrZXQ6
TlVMTCwgbGVuLCBvdXQyYnVmLCBNQVhfRlJBTUVfU0FNUCwgMCk7CiAgICAgICBpZihvdXRfc2Ft
cGxlczwwfHxvdXRfc2FtcGxlcz5NQVhfRlJBTUVfU0FNUCl0ZXN0X2ZhaWxlZCgpOwogICAgICAg
aWYoKGxlbj4wJiZvdXRfc2FtcGxlcyE9ZnJhbWVfc2l6ZSkpdGVzdF9mYWlsZWQoKTsgLypGSVhN
RSB1c2UgbGFzdGZyYW1lKi8KQEAgLTQ3MCwzOSArNjI3LDc0IEBAIGludCBydW5fdGVzdDEoaW50
IG5vX2Z1enopCiAgICByZXR1cm4gMDsKIH0KIAordm9pZCBwcmludF91c2FnZShjaGFyKiBfYXJn
dltdKQoreworICAgZnByaW50ZihzdGRlcnIsIlVzYWdlOiAlcyBbPHNlZWQ+XSBbLWZ1enogPG51
bV9lbmNvZGVycz4gPG51bV9zZXR0aW5nc19wZXJfZW5jb2Rlcj5dXG4iLF9hcmd2WzBdKTsKK30K
KwogaW50IG1haW4oaW50IF9hcmdjLCBjaGFyICoqX2FyZ3YpCiB7CisgICBpbnQgYXJncz0xOwor
ICAgY2hhciAqIHN0cnRvbF9zdHI9TlVMTDsKICAgIGNvbnN0IGNoYXIgKiBvdmVyc2lvbjsKICAg
IGNvbnN0IGNoYXIgKiBlbnZfc2VlZDsKICAgIGludCBlbnZfdXNlZDsKLQotICAgaWYoX2FyZ2M+
MikKLSAgIHsKLSAgICAgIGZwcmludGYoc3RkZXJyLCJVc2FnZTogJXMgWzxzZWVkPl1cbiIsX2Fy
Z3ZbMF0pOwotICAgICAgcmV0dXJuIDE7Ci0gICB9CisgICBpbnQgbnVtX2VuY29kZXJzX3RvX2Z1
eno9NTsKKyAgIGludCBudW1fc2V0dGluZ19jaGFuZ2VzPTQwOwogCiAgICBlbnZfdXNlZD0wOwog
ICAgZW52X3NlZWQ9Z2V0ZW52KCJTRUVEIik7Ci0gICBpZihfYXJnYz4xKWlzZWVkPWF0b2koX2Fy
Z3ZbMV0pOwotICAgZWxzZSBpZihlbnZfc2VlZCkKLSAgIHsKKyAgIGlmKF9hcmdjPjEpCisgICAg
ICBpc2VlZD1zdHJ0b2woX2FyZ3ZbMV0sICZzdHJ0b2xfc3RyLCAxMCk7ICAvKiB0aGUgZmlyc3Qg
aW5wdXQgYXJndW1lbnQgbWlnaHQgYmUgdGhlIHNlZWQgKi8KKyAgIGlmKHN0cnRvbF9zdHIhPU5V
TEwgJiYgc3RydG9sX3N0clswXT09J1wwJykgICAvKiBpc2VlZCBpcyBhIHZhbGlkIG51bWJlciAq
LworICAgICAgYXJncysrOworICAgZWxzZSBpZihlbnZfc2VlZCkgewogICAgICAgaXNlZWQ9YXRv
aShlbnZfc2VlZCk7CiAgICAgICBlbnZfdXNlZD0xOwogICAgfQotICAgZWxzZSBpc2VlZD0ob3B1
c191aW50MzIpdGltZShOVUxMKV4oKGdldHBpZCgpJjY1NTM1KTw8MTYpOworICAgZWxzZSBpc2Vl
ZD0ob3B1c191aW50MzIpdGltZShOVUxMKV4oKChvcHVzX3VpbnQzMilnZXRwaWQoKSY2NTUzNSk8
PDE2KTsKICAgIFJ3PVJ6PWlzZWVkOwogCisgICB3aGlsZShhcmdzPF9hcmdjKQorICAgeworICAg
ICAgaWYoc3RyY21wKF9hcmd2W2FyZ3NdLCAiLWZ1enoiKT09MCAmJiBfYXJnYz09KGFyZ3MrMykp
IHsKKyAgICAgICAgIG51bV9lbmNvZGVyc190b19mdXp6PXN0cnRvbChfYXJndlthcmdzKzFdLCAm
c3RydG9sX3N0ciwgMTApOworICAgICAgICAgaWYoc3RydG9sX3N0clswXSE9J1wwJyB8fCBudW1f
ZW5jb2RlcnNfdG9fZnV6ejw9MCkgeworICAgICAgICAgICAgcHJpbnRfdXNhZ2UoX2FyZ3YpOwor
ICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKKyAgICAgICAgIH0KKyAgICAgICAgIG51
bV9zZXR0aW5nX2NoYW5nZXM9c3RydG9sKF9hcmd2W2FyZ3MrMl0sICZzdHJ0b2xfc3RyLCAxMCk7
CisgICAgICAgICBpZihzdHJ0b2xfc3RyWzBdIT0nXDAnIHx8IG51bV9zZXR0aW5nX2NoYW5nZXM8
PTApIHsKKyAgICAgICAgICAgIHByaW50X3VzYWdlKF9hcmd2KTsKKyAgICAgICAgICAgIHJldHVy
biBFWElUX0ZBSUxVUkU7CisgICAgICAgICB9CisgICAgICAgICBhcmdzKz0zOworICAgICAgfQor
ICAgICAgZWxzZSB7CisgICAgICAgIHByaW50X3VzYWdlKF9hcmd2KTsKKyAgICAgICAgcmV0dXJu
IEVYSVRfRkFJTFVSRTsKKyAgICAgIH0KKyAgIH0KKwogICAgb3ZlcnNpb249b3B1c19nZXRfdmVy
c2lvbl9zdHJpbmcoKTsKICAgIGlmKCFvdmVyc2lvbil0ZXN0X2ZhaWxlZCgpOwogICAgZnByaW50
ZihzdGRlcnIsIlRlc3RpbmcgJXMgZW5jb2Rlci4gUmFuZG9tIHNlZWQ6ICV1ICglLjRYKVxuIiwg
b3ZlcnNpb24sIGlzZWVkLCBmYXN0X3JhbmQoKSAlIDY1NTM1KTsKICAgIGlmKGVudl91c2VkKWZw
cmludGYoc3RkZXJyLCIgIFJhbmRvbSBzZWVkIHNldCBmcm9tIHRoZSBlbnZpcm9ubWVudCAoU0VF
RD0lcykuXG4iLCBlbnZfc2VlZCk7CiAKKyAgIHJlZ3Jlc3Npb25fdGVzdCgpOworCiAgICAvKlNl
dHRpbmcgVEVTVF9PUFVTX05PRlVaWiB0ZWxscyB0aGUgdG9vbCBub3QgdG8gc2VuZCBnYXJiYWdl
IGRhdGEKICAgICAgaW50byB0aGUgZGVjb2RlcnMuIFRoaXMgaXMgaGVscGZ1bCBiZWNhdXNlIGdh
cmJhZ2UgZGF0YQogICAgICBtYXkgY2F1c2UgdGhlIGRlY29kZXJzIHRvIGNsaXAsIHdoaWNoIGFu
Z2VycyBDTEFORyBJT0MuKi8KICAgIHJ1bl90ZXN0MShnZXRlbnYoIlRFU1RfT1BVU19OT0ZVWloi
KSE9TlVMTCk7CiAKKyAgIC8qIEZ1enogZW5jb2RlciBzZXR0aW5ncyBvbmxpbmUgKi8KKyAgIGlm
KGdldGVudigiVEVTVF9PUFVTX05PRlVaWiIpPT1OVUxMKSB7CisgICAgICBmcHJpbnRmKHN0ZGVy
ciwiUnVubmluZyBmdXp6X2VuY29kZXJfc2V0dGluZ3Mgd2l0aCAlZCBlbmNvZGVyKHMpIGFuZCAl
ZCBzZXR0aW5nIGNoYW5nZShzKSBlYWNoLlxuIiwKKyAgICAgICAgICAgICAgbnVtX2VuY29kZXJz
X3RvX2Z1enosIG51bV9zZXR0aW5nX2NoYW5nZXMpOworICAgICAgZnV6el9lbmNvZGVyX3NldHRp
bmdzKG51bV9lbmNvZGVyc190b19mdXp6LCBudW1fc2V0dGluZ19jaGFuZ2VzKTsKKyAgIH0KKwog
ICAgZnByaW50ZihzdGRlcnIsIlRlc3RzIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkuXG4iKTsKIAog
ICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3VwZGF0ZV92ZXJzaW9uIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy91cGRhdGVfdmVyc2lvbgpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hOTk5OTkxOGQwZjdlM2NkNTJlYjFjMmNkYmM3MGMxZDg1Y2NiMjI2Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy91cGRhdGVfdmVyc2lvbgpAQCAtMCwwICsxLDY1IEBACisjIS9iaW4vYmFz
aAorCisjIENyZWF0ZXMgYW5kIHVwZGF0ZXMgdGhlIHBhY2thZ2VfdmVyc2lvbiBpbmZvcm1hdGlv
biB1c2VkIGJ5IGNvbmZpZ3VyZS5hYworIyAob3Igb3RoZXIgbWFrZWZpbGVzKS4gIFdoZW4gcnVu
IGluc2lkZSBhIGdpdCByZXBvc2l0b3J5IGl0IHdpbGwgdXNlIHRoZQorIyB2ZXJzaW9uIGluZm9y
bWF0aW9uIHRoYXQgY2FuIGJlIHF1ZXJpZWQgZnJvbSBpdCB1bmxlc3MgQVVUT19VUERBVEUgaXMg
c2V0CisjIHRvICdubycuICBJZiBubyB2ZXJzaW9uIGlzIGN1cnJlbnRseSBrbm93biBpdCB3aWxs
IGJlIHNldCB0byAndW5rbm93bicuCisjCisjIElmIGNhbGxlZCB3aXRoIHRoZSBhcmd1bWVudCAn
cmVsZWFzZScsIHRoZSBQQUNLQUdFX1ZFUlNJT04gd2lsbCBiZSB1cGRhdGVkCisjIGV2ZW4gaWYg
QVVUT19VUERBVEU9bm8sIGJ1dCB0aGUgdmFsdWUgb2YgQVVUT19VUERBVEUgc2hhbGwgYmUgcHJl
c2VydmVkLgorIyBUaGlzIGlzIHVzZWQgdG8gZm9yY2UgYSB2ZXJzaW9uIHVwZGF0ZSB3aGVuZXZl
ciBgbWFrZSBkaXN0YCBpcyBydW4uCisjCisjIFRoZSBleGl0IHN0YXR1cyBpcyAxIGlmIHBhY2th
Z2VfdmVyc2lvbiBpcyBub3QgbW9kaWZpZWQsIGVsc2UgMCBpcyByZXR1cm5lZC4KKyMKKyMgVGhp
cyBzY3JpcHQgc2hvdWxkIE5PVCBiZSBpbmNsdWRlZCBpbiBkaXN0cmlidXRlZCB0YXJiYWxscywg
YmVjYXVzZSBpZiBhCisjIHBhcmVudCBkaXJlY3RvcnkgY29udGFpbnMgYSBnaXQgcmVwb3NpdG9y
eSB3ZSBkbyBub3Qgd2FudCB0byBhY2NpZGVudGFsbHkKKyMgcmV0cmlldmUgdGhlIHZlcnNpb24g
aW5mb3JtYXRpb24gZnJvbSBpdCBpbnN0ZWFkLiAgVGFyYmFsbHMgc2hvdWxkIHNoaXAKKyMgd2l0
aCBvbmx5IHRoZSBwYWNrYWdlX3ZlcnNpb24gZmlsZS4KKyMKKyMgUm9uIDxyb25AZGViaWFuLm9y
Zz4sIDIwMTIuCisKK1NSQ0RJUj0kKGRpcm5hbWUgJDApCisKK2lmIFsgLWUgIiRTUkNESVIvcGFj
a2FnZV92ZXJzaW9uIiBdOyB0aGVuCisgICAgLiAiJFNSQ0RJUi9wYWNrYWdlX3ZlcnNpb24iCitm
aQorCitpZiBbICIkQVVUT19VUERBVEUiID0gbm8gXTsgdGhlbgorICAgIFsgIiQxIiA9IHJlbGVh
c2UgXSB8fCBleGl0IDEKK2Vsc2UKKyAgICBBVVRPX1VQREFURT15ZXMKK2ZpCisKKyMgV2UgcnVu
IGBnaXQgc3RhdHVzYCBiZWZvcmUgZGVzY3JpYmUgaGVyZSB0byBlbnN1cmUgdGhhdCB3ZSBkb24n
dCBnZXQgYSBmYWxzZQorIyAtZGlydHkgZnJvbSBmaWxlcyB0aGF0IGhhdmUgYmVlbiB0b3VjaGVk
IGJ1dCBhcmUgbm90IGFjdHVhbGx5IGFsdGVyZWQgaW4gdGhlCisjIHdvcmtpbmcgZGlyLgorR0lU
X1ZFUlNJT049JChjZCAiJFNSQ0RJUiIgJiYgZ2l0IHN0YXR1cyA+IC9kZXYvbnVsbCAyPiYxIFwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICYmIGdpdCBkZXNjcmliZSAtLXRhZ3MgLS1tYXRj
aCAndionIC0tZGlydHkgMj4gL2Rldi9udWxsKQorR0lUX1ZFUlNJT049JHtHSVRfVkVSU0lPTiN2
fQorCitpZiBbIC1uICIkR0lUX1ZFUlNJT04iIF07IHRoZW4KKworICAgIFsgIiRHSVRfVkVSU0lP
TiIgIT0gIiRQQUNLQUdFX1ZFUlNJT04iIF0gfHwgZXhpdCAxCisgICAgUEFDS0FHRV9WRVJTSU9O
PSIkR0lUX1ZFUlNJT04iCisKK2VsaWYgWyAteiAiJFBBQ0tBR0VfVkVSU0lPTiIgXTsgdGhlbgor
ICAgICMgTm8gY3VycmVudCBwYWNrYWdlX3ZlcnNpb24gYW5kIG5vIGdpdCAuLi4KKyAgICAjIFdl
IHJlYWxseSBzaG91bGRuJ3QgZXZlciBnZXQgaGVyZSwgYmVjYXVzZSB0aGlzIHNjcmlwdCBzaG91
bGQgb25seSBiZQorICAgICMgaW5jbHVkZWQgaW4gdGhlIGdpdCByZXBvc2l0b3J5LCBhbmQgc2hv
dWxkIHVzdWFsbHkgYmUgZXhwb3J0LWlnbm9yZWQuCisgICAgUEFDS0FHRV9WRVJTSU9OPSJ1bmtu
b3duIgorZWxzZQorICAgIGV4aXQgMQorZmkKKworY2F0ID4gIiRTUkNESVIvcGFja2FnZV92ZXJz
aW9uIiA8PC1FT0YKKwkjIEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IHVwZGF0ZV92ZXJzaW9u
LgorCSMgVGhpcyBmaWxlIG1heSBiZSBzb3VyY2VkIGludG8gYSBzaGVsbCBzY3JpcHQgb3IgbWFr
ZWZpbGUuCisKKwkjIFNldCB0aGlzIHRvICdubycgaWYgeW91IGRvIG5vdCB3aXNoIHRoZSB2ZXJz
aW9uIGluZm9ybWF0aW9uCisJIyB0byBiZSBjaGVja2VkIGFuZCB1cGRhdGVkIGZvciBldmVyeSBi
dWlsZC4gIE1vc3QgcGVvcGxlIHdpbGwKKwkjIG5ldmVyIHdhbnQgdG8gY2hhbmdlIHRoaXMsIGl0
IGlzIGFuIG9wdGlvbiBmb3IgZGV2ZWxvcGVycworCSMgbWFraW5nIGZyZXF1ZW50IGNoYW5nZXMg
dGhhdCB0aGV5IGtub3cgd2lsbCBub3QgYmUgcmVsZWFzZWQuCisJQVVUT19VUERBVEU9JEFVVE9f
VVBEQVRFCisKKwlQQUNLQUdFX1ZFUlNJT049IiRQQUNLQUdFX1ZFUlNJT04iCitFT0YKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvd2luMzIvLmdpdGlnbm9yZSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvd2luMzIvLmdpdGlnbm9yZQpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMTdm
ZWFiNzNkMzQ5MmNlODY2MmVlNjk1NDZkZWMwZDllZWJiZDdkCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy93
aW4zMi8uZ2l0aWdub3JlCkBAIC0wLDAgKzEsMjYgQEAKKyMgVmlzdWFsIFN0dWRpbyBpZ25vcmVz
CitbRGRdZWJ1Zy8KK1tEZF1lYnVnRExMLworW0RkXWVidWdETExfZml4ZWQvCitbRGRdZWJ1Z1B1
YmxpYy8KK1tScl1lbGVhc2UvCitbUnJdZWxlYXNlRExMLworW1JyXWVsZWFzZURMTF9maXhlZC8K
K1tScl1lbGVhc2VzLworKi5tYW5pZmVzdAorKi5sYXN0YnVpbGRzdGF0ZQorKi5saWIKKyoubG9n
CisqLmlkYgorKi5pcGRiCisqLmlsaworKi5pb2JqCisqLm9iagorKi5vcGVuc2RmCisqLnBkYgor
Ki5zZGYKKyouc3VvCisqLnRsb2cKKyoudmN4cHJvai51c2VyCisqLnZjLmRiCisqLnZjLm9wZW5k
YgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy93aW4zMi9nZW52ZXJzaW9uLmJhdCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvd2luMzIvZ2VudmVyc2lvbi5iYXQK
aW5kZXggY2QxZDRkY2U2ZWQ4ZjU0ODZlZTMxYTNmNWExNGRhYjhiYzAzOGUwYy4uMWRlZjc0NjBi
NWUwMmZhMTg5OThhNTdlMGUwZWZjNWFiMzEzNGVkNSAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy93aW4zMi9nZW52ZXJz
aW9uLmJhdAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3dpbjMyL2dlbnZlcnNpb24uYmF0CkBAIC0yLDEzICsyLDEzIEBACiAKIHNl
dGxvY2FsIGVuYWJsZWV4dGVuc2lvbnMgZW5hYmxlZGVsYXllZGV4cGFuc2lvbgogCi1mb3IgL2Yg
JSV2IGluICgnZ2l0IC0tZ2l0LWRpcj0iJX5kcDAuLlwuZ2l0IiBkZXNjcmliZSAtLXRhZ3MgLS1t
YXRjaCAidioiJykgZG8gc2V0IHZlcnNpb249JSV2Citmb3IgL2YgJSV2IGluICgnY2QgIiV+ZHAw
Li4iIF4mXiYgZ2l0IHN0YXR1cyBePk5VTCAyXj5OVUwgXiZeJiBnaXQgZGVzY3JpYmUgLS10YWdz
IC0tbWF0Y2ggInYqIiAtLWRpcnR5IDJePk5VTCcpIGRvIHNldCB2ZXJzaW9uPSUldgogCi1pZiBu
b3QgIiV2ZXJzaW9uJSI9PSIiIGdvdG8gOmdvdHZlcnNpb24KK2lmIG5vdCAiJXZlcnNpb24lIj09
IiIgc2V0IHZlcnNpb249IXZlcnNpb246fjEhICYmIGdvdG8gOmdvdHZlcnNpb24KIAotaWYgZXhp
c3QgIiV+ZHAwLi5cdmVyc2lvbi5tayIgZ290byA6Z2V0dmVyc2lvbgoraWYgZXhpc3QgIiV+ZHAw
Li5ccGFja2FnZV92ZXJzaW9uIiBnb3RvIDpnZXR2ZXJzaW9uCiAKLWVjaG8gR2l0IGNhbm5vdCBi
ZSBmb3VuZCwgbm9yIGNhbiB2ZXJzaW9uLm1rLiBHZW5lcmF0aW5nIHVua25vd24gdmVyc2lvbi4K
K2VjaG8gR2l0IGNhbm5vdCBiZSBmb3VuZCwgbm9yIGNhbiBwYWNrYWdlX3ZlcnNpb24uIEdlbmVy
YXRpbmcgdW5rbm93biB2ZXJzaW9uLgogCiBzZXQgdmVyc2lvbj11bmtub3duCiAKQEAgLTE2LDI1
ICsxNiwxNiBAQCBnb3RvIDpnb3R2ZXJzaW9uCiAKIDpnZXR2ZXJzaW9uCiAKLWZvciAvZiAiZGVs
aW1zPT0gdG9rZW5zPTIiICUldiBpbiAoJX5kcHMwLi5cdmVyc2lvbi5taykgZG8gc2V0IHZlcnNp
b249JSV2Ci0KLXNldCB2ZXJzaW9uPSF2ZXJzaW9uOl4iPSEKLXNldCB2ZXJzaW9uPSF2ZXJzaW9u
OiA9IQorZm9yIC9mICJkZWxpbXM9PSB0b2tlbnM9MiIgJSV2IGluICglfmRwczAuLlxwYWNrYWdl
X3ZlcnNpb24pIGRvIHNldCB2ZXJzaW9uPSUldgorc2V0IHZlcnNpb249IXZlcnNpb246Ij0hCiAK
IDpnb3R2ZXJzaW9uCiAKK3NldCB2ZXJzaW9uPSF2ZXJzaW9uOiA9IQogc2V0IHZlcnNpb25fb3V0
PSNkZWZpbmUgJX4yICIldmVyc2lvbiUiCi1zZXQgdmVyc2lvbl9taz0lfjIgPSAiJXZlcnNpb24l
IgogCiBlY2hvICV2ZXJzaW9uX291dCU+ICIlfjFfdGVtcCIKIAotaWYgJXZlcnNpb24lPT11bmtu
b3duIGdvdG8gOnNraXBnZW5lcmF0ZQotCi1lY2hvICMgc3RhdGljIHZlcnNpb24gc3RyaW5nOyB1
cGRhdGUgbWFudWFsbHkgZXZlcnkgcmVsZWFzZS4+ICIlfmRwMC4uXHZlcnNpb24ubWsiCi1lY2hv
ICV2ZXJzaW9uX21rJT4+ICIlfmRwMC4uXHZlcnNpb24ubWsiCi0KLTpza2lwZ2VuZXJhdGUKLQog
ZWNobyBuIHwgY29tcCAiJX4xX3RlbXAiICIlfjEiID4gTlVMIDI+IE5VTAogCiBpZiBub3QgZXJy
b3JsZXZlbCAxIGdvdG8gZXhpdApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL2xpYndlYnJ0Yy54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL2xpYndlYnJ0Yy54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDJi
MWVhYTkxM2FmNmMyMmFjMjBkMTlmYjljYjM1MTIwNmRiNzAzYzIuLmEwYzk4ZGZlMjdkMTU1Nzcw
MjRhOTM1YmZmZTg4MzVlODNhYjMxNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9saWJ3ZWJydGMueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvbGlid2VicnRjLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
QEAgLTIxLDYgKzIxLDE1IEBACiAvKiBFbmQgUEJYQWdncmVnYXRlVGFyZ2V0IHNlY3Rpb24gKi8K
IAogLyogQmVnaW4gUEJYQnVpbGRGaWxlIHNlY3Rpb24gKi8KKwkJNDEwMENERTYyMUNBQ0ZEMDAw
RjlCODdEIC8qIExQQ19maXQuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDQxMDBDREU1MjFDQUNGRDAwMEY5Qjg3RCAvKiBMUENfZml0LmMgKi87IH07CisJ
CTQxMDBDREVBMjFDQUQwMzQwMEY5Qjg3RCAvKiB2cV9zc2UuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMDBDREU4MjFDQUQwMzMwMEY5Qjg3RCAvKiB2
cV9zc2UuaCAqLzsgfTsKKwkJNDEwMENERjIyMUNBRDFGNzAwRjlCODdEIC8qIHBpdGNoX3NzZTRf
MS5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEwMENE
RUIyMUNBRDFGNTAwRjlCODdEIC8qIHBpdGNoX3NzZTRfMS5jICovOyB9OworCQk0MTAwQ0RGMzIx
Q0FEMUY3MDBGOUI4N0QgLyogY2VsdF9scGNfc3NlLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTAwQ0RFQzIxQ0FEMUY1MDBGOUI4N0QgLyogY2VsdF9s
cGNfc3NlLmMgKi87IH07CisJCTQxMDBDREY0MjFDQUQxRjcwMEY5Qjg3RCAvKiB2cV9zc2UyLmMg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTAwQ0RFRDIx
Q0FEMUY1MDBGOUI4N0QgLyogdnFfc3NlMi5jICovOyB9OworCQk0MTAwQ0RGNTIxQ0FEMUY3MDBG
OUI4N0QgLyogcGl0Y2hfc3NlLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0MTAwQ0RFRTIxQ0FEMUY2MDBGOUI4N0QgLyogcGl0Y2hfc3NlLmMgKi87IH07
CisJCTQxMDBDREY2MjFDQUQxRjcwMEY5Qjg3RCAvKiBwaXRjaF9zc2UyLmMgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTAwQ0RFRjIxQ0FEMUY2MDBGOUI4
N0QgLyogcGl0Y2hfc3NlMi5jICovOyB9OworCQk0MTAwQ0RGNzIxQ0FEMUY3MDBGOUI4N0QgLyog
Y2VsdF9scGNfc3NlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA0MTAwQ0RGMDIxQ0FEMUY2MDBGOUI4N0QgLyogY2VsdF9scGNfc3NlLmggKi87IH07CisJ
CTQxMDBDREY4MjFDQUQxRjcwMEY5Qjg3RCAvKiBwaXRjaF9zc2UuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMDBDREYxMjFDQUQxRjcwMEY5Qjg3RCAv
KiBwaXRjaF9zc2UuaCAqLzsgfTsKIAkJNDEwMkY2OEQyMTI3MzIwNjAwNkFFOEQ3IC8qIHJ0Y3N0
YXRzdHJhdmVyc2FsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA0MTAyRjY4NDIxMjczMjA0MDA2QUU4RDcgLyogcnRjc3RhdHN0cmF2ZXJzYWwuaCAqLzsg
fTsKIAkJNDEwMkY2OEUyMTI3MzIwNjAwNkFFOEQ3IC8qIGpzZXB0cmFuc3BvcnRjb250cm9sbGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTAyRjY4
NTIxMjczMjA0MDA2QUU4RDcgLyoganNlcHRyYW5zcG9ydGNvbnRyb2xsZXIuaCAqLzsgfTsKIAkJ
NDEwMkY2OEYyMTI3MzIwNjAwNkFFOEQ3IC8qIHRyYW5zcG9ydHN0YXRzLmNjIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEwMkY2ODYyMTI3MzIwNTAwNkFF
OEQ3IC8qIHRyYW5zcG9ydHN0YXRzLmNjICovOyB9OwpAQCAtMzI1MSw3ICszMjYwLDYgQEAKIAkJ
NUNERDhFRUExRTQzQzlGNjAwNjIxRTkyIC8qIGZpbmRfcHJlZF9jb2Vmc19GTFAuYyBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUE2MUU0M0M5QzEw
MDYyMUU5MiAvKiBmaW5kX3ByZWRfY29lZnNfRkxQLmMgKi87IH07CiAJCTVDREQ4RUVCMUU0M0M5
RjYwMDYyMUU5MiAvKiBpbm5lcl9wcm9kdWN0X0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQTcxRTQzQzlDMTAwNjIxRTkyIC8qIGlubmVy
X3Byb2R1Y3RfRkxQLmMgKi87IH07CiAJCTVDREQ4RUVDMUU0M0M5RjYwMDYyMUU5MiAvKiBrMmFf
RkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0RE
OEVBODFFNDNDOUMxMDA2MjFFOTIgLyogazJhX0ZMUC5jICovOyB9OwotCQk1Q0REOEVFRDFFNDND
OUY2MDA2MjFFOTIgLyogbGV2aW5zb25kdXJiaW5fRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVBOTFFNDNDOUMxMDA2MjFFOTIgLyogbGV2
aW5zb25kdXJiaW5fRkxQLmMgKi87IH07CiAJCTVDREQ4RUVFMUU0M0M5RjYwMDYyMUU5MiAvKiBM
UENfYW5hbHlzaXNfZmlsdGVyX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNUNERDhFQUExRTQzQzlDMTAwNjIxRTkyIC8qIExQQ19hbmFseXNpc19m
aWx0ZXJfRkxQLmMgKi87IH07CiAJCTVDREQ4RUVGMUU0M0M5RjYwMDYyMUU5MiAvKiBMUENfaW52
X3ByZWRfZ2Fpbl9GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDVDREQ4RUFCMUU0M0M5QzEwMDYyMUU5MiAvKiBMUENfaW52X3ByZWRfZ2Fpbl9GTFAu
YyAqLzsgfTsKIAkJNUNERDhFRjAxRTQzQzlGNjAwNjIxRTkyIC8qIExUUF9hbmFseXNpc19maWx0
ZXJfRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
Q0REOEVBQzFFNDNDOUMxMDA2MjFFOTIgLyogTFRQX2FuYWx5c2lzX2ZpbHRlcl9GTFAuYyAqLzsg
fTsKQEAgLTMyNTksNyArMzI2Nyw2IEBACiAJCTVDREQ4RUYyMUU0M0M5RjYwMDYyMUU5MiAvKiBt
YWluX0ZMUC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NUNERDhFQUUxRTQzQzlDMTAwNjIxRTkyIC8qIG1haW5fRkxQLmggKi87IH07CiAJCTVDREQ4RUYz
MUU0M0M5RjYwMDYyMUU5MiAvKiBub2lzZV9zaGFwZV9hbmFseXNpc19GTFAuYyBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUFGMUU0M0M5QzEwMDYy
MUU5MiAvKiBub2lzZV9zaGFwZV9hbmFseXNpc19GTFAuYyAqLzsgfTsKIAkJNUNERDhFRjQxRTQz
QzlGNjAwNjIxRTkyIC8qIHBpdGNoX2FuYWx5c2lzX2NvcmVfRkxQLmMgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVCMDFFNDNDOUMxMDA2MjFFOTIg
LyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYyAqLzsgfTsKLQkJNUNERDhFRjUxRTQzQzlGNjAw
NjIxRTkyIC8qIHByZWZpbHRlcl9GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDVDREQ4RUIxMUU0M0M5QzEwMDYyMUU5MiAvKiBwcmVmaWx0ZXJfRkxQ
LmMgKi87IH07CiAJCTVDREQ4RUY2MUU0M0M5RjYwMDYyMUU5MiAvKiBwcm9jZXNzX2dhaW5zX0ZM
UC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhF
QjIxRTQzQzlDMTAwNjIxRTkyIC8qIHByb2Nlc3NfZ2FpbnNfRkxQLmMgKi87IH07CiAJCTVDREQ4
RUY3MUU0M0M5RjYwMDYyMUU5MiAvKiByZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GTFAuYyBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUIzMUU0M0M5
QzEwMDYyMUU5MiAvKiByZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GTFAuYyAqLzsgfTsKIAkJNUNE
RDhFRjgxRTQzQzlGNjAwNjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJneV9GTFAuYyBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUI0MUU0M0M5QzEwMDYy
MUU5MiAvKiByZXNpZHVhbF9lbmVyZ3lfRkxQLmMgKi87IH07CkBAIC0zMjY3LDcgKzMyNzQsNiBA
QAogCQk1Q0REOEVGQTFFNDNDOUY2MDA2MjFFOTIgLyogc2NhbGVfdmVjdG9yX0ZMUC5jIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQjYxRTQzQzlD
MTAwNjIxRTkyIC8qIHNjYWxlX3ZlY3Rvcl9GTFAuYyAqLzsgfTsKIAkJNUNERDhFRkIxRTQzQzlG
NjAwNjIxRTkyIC8qIHNjaHVyX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNUNERDhFQjcxRTQzQzlDMTAwNjIxRTkyIC8qIHNjaHVyX0ZMUC5jICov
OyB9OwogCQk1Q0REOEVGQzFFNDNDOUY2MDA2MjFFOTIgLyogU2lnUHJvY19GTFAuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUI4MUU0M0M5QzEw
MDYyMUU5MiAvKiBTaWdQcm9jX0ZMUC5oICovOyB9OwotCQk1Q0REOEVGRDFFNDNDOUY2MDA2MjFF
OTIgLyogc29sdmVfTFNfRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1Q0REOEVCOTFFNDNDOUMxMDA2MjFFOTIgLyogc29sdmVfTFNfRkxQLmMgKi87
IH07CiAJCTVDREQ4RUZFMUU0M0M5RjYwMDYyMUU5MiAvKiBzb3J0X0ZMUC5jIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQkExRTQzQzlDMTAwNjIx
RTkyIC8qIHNvcnRfRkxQLmMgKi87IH07CiAJCTVDREQ4RUZGMUU0M0M5RjYwMDYyMUU5MiAvKiBz
dHJ1Y3RzX0ZMUC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNUNERDhFQkIxRTQzQzlDMTAwNjIxRTkyIC8qIHN0cnVjdHNfRkxQLmggKi87IH07CiAJCTVD
REQ4RjAwMUU0M0M5RjYwMDYyMUU5MiAvKiB3YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZMUC5jIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQkMxRTQz
QzlDMTAwNjIxRTkyIC8qIHdhcnBlZF9hdXRvY29ycmVsYXRpb25fRkxQLmMgKi87IH07CkBAIC0z
Mjg4LDE0ICszMjk0LDEyIEBACiAJCTVDREQ4RjQ3MUU0M0NCMUUwMDYyMUU5MiAvKiBtYWluX0ZJ
WC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhG
MTAxRTQzQ0FGOTAwNjIxRTkyIC8qIG1haW5fRklYLmggKi87IH07CiAJCTVDREQ4RjQ4MUU0M0NC
MUUwMDYyMUU5MiAvKiBub2lzZV9zaGFwZV9hbmFseXNpc19GSVguYyBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RjEyMUU0M0NBRjkwMDYyMUU5MiAv
KiBub2lzZV9zaGFwZV9hbmFseXNpc19GSVguYyAqLzsgfTsKIAkJNUNERDhGNDkxRTQzQ0IxRTAw
NjIxRTkyIC8qIHBpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmMgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYxMzFFNDNDQUY5MDA2MjFFOTIgLyogcGl0
Y2hfYW5hbHlzaXNfY29yZV9GSVguYyAqLzsgfTsKLQkJNUNERDhGNEExRTQzQ0IxRTAwNjIxRTky
IC8qIHByZWZpbHRlcl9GSVguYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDVDREQ4RjE0MUU0M0NBRjkwMDYyMUU5MiAvKiBwcmVmaWx0ZXJfRklYLmMgKi87
IH07CiAJCTVDREQ4RjRCMUU0M0NCMUUwMDYyMUU5MiAvKiBwcm9jZXNzX2dhaW5zX0ZJWC5jIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMTUxRTQz
Q0FGOTAwNjIxRTkyIC8qIHByb2Nlc3NfZ2FpbnNfRklYLmMgKi87IH07CiAJCTVDREQ4RjRDMUU0
M0NCMUUwMDYyMUU5MiAvKiByZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GSVguYyBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RjE2MUU0M0NBRjkwMDYy
MUU5MiAvKiByZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GSVguYyAqLzsgfTsKIAkJNUNERDhGNEQx
RTQzQ0IxRTAwNjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJneV9GSVguYyBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RjE3MUU0M0NBRjkwMDYyMUU5MiAv
KiByZXNpZHVhbF9lbmVyZ3lfRklYLmMgKi87IH07CiAJCTVDREQ4RjRFMUU0M0NCMUUwMDYyMUU5
MiAvKiByZXNpZHVhbF9lbmVyZ3kxNl9GSVguYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RjE4MUU0M0NBRjkwMDYyMUU5MiAvKiByZXNpZHVhbF9l
bmVyZ3kxNl9GSVguYyAqLzsgfTsKIAkJNUNERDhGNEYxRTQzQ0IxRTAwNjIxRTkyIC8qIHNjaHVy
X0ZJWC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNE
RDhGMTkxRTQzQ0FGOTAwNjIxRTkyIC8qIHNjaHVyX0ZJWC5jICovOyB9OwogCQk1Q0REOEY1MDFF
NDNDQjFFMDA2MjFFOTIgLyogc2NodXI2NF9GSVguYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RjFBMUU0M0NBRjkwMDYyMUU5MiAvKiBzY2h1cjY0
X0ZJWC5jICovOyB9OwotCQk1Q0REOEY1MTFFNDNDQjFFMDA2MjFFOTIgLyogc29sdmVfTFNfRklY
LmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYx
QjFFNDNDQUY5MDA2MjFFOTIgLyogc29sdmVfTFNfRklYLmMgKi87IH07CiAJCTVDREQ4RjUyMUU0
M0NCMUUwMDYyMUU5MiAvKiBzdHJ1Y3RzX0ZJWC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMUMxRTQzQ0FGOTAwNjIxRTkyIC8qIHN0cnVjdHNf
RklYLmggKi87IH07CiAJCTVDREQ4RjUzMUU0M0NCMUUwMDYyMUU5MiAvKiB2ZWN0b3Jfb3BzX0ZJ
WC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhG
MUQxRTQzQ0FGOTAwNjIxRTkyIC8qIHZlY3Rvcl9vcHNfRklYLmMgKi87IH07CiAJCTVDREQ4RjU0
MUU0M0NCMUUwMDYyMUU5MiAvKiB3YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMUUxRTQzQ0FGOTAw
NjIxRTkyIC8qIHdhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYLmMgKi87IH07CkBAIC0zNjYwLDYg
KzM2NjQsMTUgQEAKIC8qIEJlZ2luIFBCWEZpbGVSZWZlcmVuY2Ugc2VjdGlvbiAqLwogCQkzNzEx
OUE4MDIwQ0NCNkREMDAyQzZEQzkgLyogVmVyc2lvbi54Y2NvbmZpZyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBW
ZXJzaW9uLnhjY29uZmlnOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzNzExOUE4MTIw
Q0NCNkREMDAyQzZEQzkgLyogV2ViS2l0VGFyZ2V0Q29uZGl0aW9uYWxzLnhjY29uZmlnICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZp
ZzsgcGF0aCA9IFdlYktpdFRhcmdldENvbmRpdGlvbmFscy54Y2NvbmZpZzsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENERTUyMUNBQ0ZEMDAwRjlCODdEIC8qIExQQ19maXQuYyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gTFBDX2ZpdC5jOyBwYXRoID0gc2lsay9M
UENfZml0LmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMDBDREU4MjFDQUQwMzMw
MEY5Qjg3RCAvKiB2cV9zc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gdnFf
c3NlLmg7IHBhdGggPSB4ODYvdnFfc3NlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQxMDBDREVCMjFDQUQxRjUwMEY5Qjg3RCAvKiBwaXRjaF9zc2U0XzEuYyAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5jOyBuYW1lID0gcGl0Y2hfc3NlNF8xLmM7IHBhdGggPSB4ODYvcGl0Y2hfc3Nl
NF8xLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMDBDREVDMjFDQUQxRjUwMEY5
Qjg3RCAvKiBjZWx0X2xwY19zc2UuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0g
Y2VsdF9scGNfc3NlLmM7IHBhdGggPSB4ODYvY2VsdF9scGNfc3NlLmM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxMDBDREVEMjFDQUQxRjUwMEY5Qjg3RCAvKiB2cV9zc2UyLmMgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHZxX3NzZTIuYzsgcGF0aCA9IHg4Ni92cV9z
c2UyLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMDBDREVFMjFDQUQxRjYwMEY5
Qjg3RCAvKiBwaXRjaF9zc2UuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcGl0
Y2hfc3NlLmM7IHBhdGggPSB4ODYvcGl0Y2hfc3NlLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQxMDBDREVGMjFDQUQxRjYwMEY5Qjg3RCAvKiBwaXRjaF9zc2UyLmMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHBpdGNoX3NzZTIuYzsgcGF0aCA9IHg4Ni9waXRjaF9z
c2UyLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMDBDREYwMjFDQUQxRjYwMEY5
Qjg3RCAvKiBjZWx0X2xwY19zc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0g
Y2VsdF9scGNfc3NlLmg7IHBhdGggPSB4ODYvY2VsdF9scGNfc3NlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxMDBDREYxMjFDQUQxRjcwMEY5Qjg3RCAvKiBwaXRjaF9zc2UuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gcGl0Y2hfc3NlLmg7IHBhdGggPSB4ODYv
cGl0Y2hfc3NlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMDJGNjg0MjEyNzMy
MDQwMDZBRThENyAvKiBydGNzdGF0c3RyYXZlcnNhbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBydGNzdGF0c3RyYXZlcnNhbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk0MTAyRjY4NTIxMjczMjA0MDA2QUU4RDcgLyoganNlcHRyYW5zcG9ydGNvbnRyb2xsZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0ganNlcHRyYW5zcG9ydGNvbnRyb2xs
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEwMkY2ODYyMTI3MzIwNTAwNkFF
OEQ3IC8qIHRyYW5zcG9ydHN0YXRzLmNjICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gdHJhbnNwb3J0c3RhdHMuY2M7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03
MTY5LDcgKzcxODIsNiBAQAogCQk1Q0REOEVBNjFFNDNDOUMxMDA2MjFFOTIgLyogZmluZF9wcmVk
X2NvZWZzX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBmaW5kX3ByZWRf
Y29lZnNfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L2ZpbmRfcHJlZF9jb2Vmc19GTFAuYzsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQTcxRTQzQzlDMTAwNjIxRTkyIC8qIGlu
bmVyX3Byb2R1Y3RfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IGlubmVy
X3Byb2R1Y3RfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L2lubmVyX3Byb2R1Y3RfRkxQLmM7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUE4MUU0M0M5QzEwMDYyMUU5MiAvKiBr
MmFfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IGsyYV9GTFAuYzsgcGF0
aCA9IHNpbGsvZmxvYXQvazJhX0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1
Q0REOEVBOTFFNDNDOUMxMDA2MjFFOTIgLyogbGV2aW5zb25kdXJiaW5fRkxQLmMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IGxldmluc29uZHVyYmluX0ZMUC5jOyBwYXRoID0gc2ls
ay9mbG9hdC9sZXZpbnNvbmR1cmJpbl9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNUNERDhFQUExRTQzQzlDMTAwNjIxRTkyIC8qIExQQ19hbmFseXNpc19maWx0ZXJfRkxQLmMg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IExQQ19hbmFseXNpc19maWx0ZXJfRkxQ
LmM7IHBhdGggPSBzaWxrL2Zsb2F0L0xQQ19hbmFseXNpc19maWx0ZXJfRkxQLmM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUFCMUU0M0M5QzEwMDYyMUU5MiAvKiBMUENfaW52
X3ByZWRfZ2Fpbl9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gTFBDX2lu
dl9wcmVkX2dhaW5fRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L0xQQ19pbnZfcHJlZF9nYWluX0ZM
UC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVBQzFFNDNDOUMxMDA2MjFF
OTIgLyogTFRQX2FuYWx5c2lzX2ZpbHRlcl9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5j
OyBuYW1lID0gTFRQX2FuYWx5c2lzX2ZpbHRlcl9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvTFRQ
X2FuYWx5c2lzX2ZpbHRlcl9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTcx
NzcsNyArNzE4OSw2IEBACiAJCTVDREQ4RUFFMUU0M0M5QzEwMDYyMUU5MiAvKiBtYWluX0ZMUC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBtYWluX0ZMUC5oOyBwYXRoID0gc2ls
ay9mbG9hdC9tYWluX0ZMUC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVB
RjFFNDNDOUMxMDA2MjFFOTIgLyogbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQLmMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jOyBwYXRo
ID0gc2lsay9mbG9hdC9ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAuYzsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNUNERDhFQjAxRTQzQzlDMTAwNjIxRTkyIC8qIHBpdGNoX2FuYWx5c2lz
X2NvcmVfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHBpdGNoX2FuYWx5
c2lzX2NvcmVfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L3BpdGNoX2FuYWx5c2lzX2NvcmVfRkxQ
LmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTVDREQ4RUIxMUU0M0M5QzEwMDYyMUU5
MiAvKiBwcmVmaWx0ZXJfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHBy
ZWZpbHRlcl9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvcHJlZmlsdGVyX0ZMUC5jOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVCMjFFNDNDOUMxMDA2MjFFOTIgLyogcHJvY2Vz
c19nYWluc19GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcHJvY2Vzc19n
YWluc19GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvcHJvY2Vzc19nYWluc19GTFAuYzsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQjMxRTQzQzlDMTAwNjIxRTkyIC8qIHJlZ3Vs
YXJpemVfY29ycmVsYXRpb25zX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUg
PSByZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvcmVndWxh
cml6ZV9jb3JyZWxhdGlvbnNfRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVD
REQ4RUI0MUU0M0M5QzEwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3lfRkxQLmMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHJlc2lkdWFsX2VuZXJneV9GTFAuYzsgcGF0aCA9IHNp
bGsvZmxvYXQvcmVzaWR1YWxfZW5lcmd5X0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtNzE4NSw3ICs3MTk2LDYgQEAKIAkJNUNERDhFQjYxRTQzQzlDMTAwNjIxRTkyIC8qIHNj
YWxlX3ZlY3Rvcl9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gc2NhbGVf
dmVjdG9yX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9zY2FsZV92ZWN0b3JfRkxQLmM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUI3MUU0M0M5QzEwMDYyMUU5MiAvKiBzY2h1
cl9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gc2NodXJfRkxQLmM7IHBh
dGggPSBzaWxrL2Zsb2F0L3NjaHVyX0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk1Q0REOEVCODFFNDNDOUMxMDA2MjFFOTIgLyogU2lnUHJvY19GTFAuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBuYW1lID0gU2lnUHJvY19GTFAuaDsgcGF0aCA9IHNpbGsvZmxvYXQvU2ln
UHJvY19GTFAuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNUNERDhFQjkxRTQzQzlD
MTAwNjIxRTkyIC8qIHNvbHZlX0xTX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5h
bWUgPSBzb2x2ZV9MU19GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvc29sdmVfTFNfRkxQLmM7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUJBMUU0M0M5QzEwMDYyMUU5MiAvKiBz
b3J0X0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBzb3J0X0ZMUC5jOyBw
YXRoID0gc2lsay9mbG9hdC9zb3J0X0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk1Q0REOEVCQjFFNDNDOUMxMDA2MjFFOTIgLyogc3RydWN0c19GTFAuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBuYW1lID0gc3RydWN0c19GTFAuaDsgcGF0aCA9IHNpbGsvZmxvYXQvc3Ry
dWN0c19GTFAuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQkMxRTQzQzlD
MTAwNjIxRTkyIC8qIHdhcnBlZF9hdXRvY29ycmVsYXRpb25fRkxQLmMgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuYzsgbmFtZSA9IHdhcnBlZF9hdXRvY29ycmVsYXRpb25fRkxQLmM7IHBhdGggPSBz
aWxrL2Zsb2F0L3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC03MjA2LDE0ICs3MjE2LDEyIEBACiAJCTVDREQ4RjEwMUU0M0NBRjkwMDYy
MUU5MiAvKiBtYWluX0ZJWC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBtYWlu
X0ZJWC5oOyBwYXRoID0gc2lsay9maXhlZC9tYWluX0ZJWC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk1Q0REOEYxMjFFNDNDQUY5MDA2MjFFOTIgLyogbm9pc2Vfc2hhcGVfYW5hbHlz
aXNfRklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IG5vaXNlX3NoYXBlX2Fu
YWx5c2lzX0ZJWC5jOyBwYXRoID0gc2lsay9maXhlZC9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgu
Yzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMTMxRTQzQ0FGOTAwNjIxRTky
IC8qIHBpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsg
bmFtZSA9IHBpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVkL3BpdGNo
X2FuYWx5c2lzX2NvcmVfRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTVDREQ4
RjE0MUU0M0NBRjkwMDYyMUU5MiAvKiBwcmVmaWx0ZXJfRklYLmMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuYzsgbmFtZSA9IHByZWZpbHRlcl9GSVguYzsgcGF0aCA9IHNpbGsvZml4ZWQvcHJlZmls
dGVyX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEYxNTFFNDNDQUY5
MDA2MjFFOTIgLyogcHJvY2Vzc19nYWluc19GSVguYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5j
OyBuYW1lID0gcHJvY2Vzc19nYWluc19GSVguYzsgcGF0aCA9IHNpbGsvZml4ZWQvcHJvY2Vzc19n
YWluc19GSVguYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMTYxRTQzQ0FG
OTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZJWC5jICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmM7IG5hbWUgPSByZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GSVguYzsgcGF0aCA9
IHNpbGsvZml4ZWQvcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRklYLmM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTVDREQ4RjE3MUU0M0NBRjkwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVy
Z3lfRklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHJlc2lkdWFsX2VuZXJn
eV9GSVguYzsgcGF0aCA9IHNpbGsvZml4ZWQvcmVzaWR1YWxfZW5lcmd5X0ZJWC5jOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEYxODFFNDNDQUY5MDA2MjFFOTIgLyogcmVzaWR1
YWxfZW5lcmd5MTZfRklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHJlc2lk
dWFsX2VuZXJneTE2X0ZJWC5jOyBwYXRoID0gc2lsay9maXhlZC9yZXNpZHVhbF9lbmVyZ3kxNl9G
SVguYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMTkxRTQzQ0FGOTAwNjIx
RTkyIC8qIHNjaHVyX0ZJWC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBzY2h1
cl9GSVguYzsgcGF0aCA9IHNpbGsvZml4ZWQvc2NodXJfRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTVDREQ4RjFBMUU0M0NBRjkwMDYyMUU5MiAvKiBzY2h1cjY0X0ZJWC5jICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBzY2h1cjY0X0ZJWC5jOyBwYXRoID0gc2ls
ay9maXhlZC9zY2h1cjY0X0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1Q0RE
OEYxQjFFNDNDQUY5MDA2MjFFOTIgLyogc29sdmVfTFNfRklYLmMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuYzsgbmFtZSA9IHNvbHZlX0xTX0ZJWC5jOyBwYXRoID0gc2lsay9maXhlZC9zb2x2ZV9M
U19GSVguYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMUMxRTQzQ0FGOTAw
NjIxRTkyIC8qIHN0cnVjdHNfRklYLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9
IHN0cnVjdHNfRklYLmg7IHBhdGggPSBzaWxrL2ZpeGVkL3N0cnVjdHNfRklYLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjFEMUU0M0NBRjkwMDYyMUU5MiAvKiB2ZWN0b3Jf
b3BzX0ZJWC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSB2ZWN0b3Jfb3BzX0ZJ
WC5jOyBwYXRoID0gc2lsay9maXhlZC92ZWN0b3Jfb3BzX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk1Q0REOEYxRTFFNDNDQUY5MDA2MjFFOTIgLyogd2FycGVkX2F1dG9jb3Jy
ZWxhdGlvbl9GSVguYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gd2FycGVkX2F1
dG9jb3JyZWxhdGlvbl9GSVguYzsgcGF0aCA9IHNpbGsvZml4ZWQvd2FycGVkX2F1dG9jb3JyZWxh
dGlvbl9GSVguYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzMDcyLDYgKzEzMDgw
LDE0IEBACiAJCTVDREQ4RDEzMUU0M0M3NTUwMDYyMUU5MiAvKiB4ODYgKi8gPSB7CiAJCQlpc2Eg
PSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCTQxMDBDREVDMjFDQUQxRjUwMEY5Qjg3
RCAvKiBjZWx0X2xwY19zc2UuYyAqLywKKwkJCQk0MTAwQ0RGMDIxQ0FEMUY2MDBGOUI4N0QgLyog
Y2VsdF9scGNfc3NlLmggKi8sCisJCQkJNDEwMENERUUyMUNBRDFGNjAwRjlCODdEIC8qIHBpdGNo
X3NzZS5jICovLAorCQkJCTQxMDBDREYxMjFDQUQxRjcwMEY5Qjg3RCAvKiBwaXRjaF9zc2UuaCAq
LywKKwkJCQk0MTAwQ0RFRjIxQ0FEMUY2MDBGOUI4N0QgLyogcGl0Y2hfc3NlMi5jICovLAorCQkJ
CTQxMDBDREVCMjFDQUQxRjUwMEY5Qjg3RCAvKiBwaXRjaF9zc2U0XzEuYyAqLywKKwkJCQk0MTAw
Q0RFODIxQ0FEMDMzMDBGOUI4N0QgLyogdnFfc3NlLmggKi8sCisJCQkJNDEwMENERUQyMUNBRDFG
NTAwRjlCODdEIC8qIHZxX3NzZTIuYyAqLywKIAkJCQk1Q0REOEQxQTFFNDNDNzY0MDA2MjFFOTIg
LyogeDg2X2NlbHRfbWFwLmMgKi8sCiAJCQkJNUNERDhEMUIxRTQzQzc2NDAwNjIxRTkyIC8qIHg4
NmNwdS5jICovLAogCQkJCTVDREQ4RDFDMUU0M0M3NjQwMDYyMUU5MiAvKiB4ODZjcHUuaCAqLywK
QEAgLTEzMTI0LDYgKzEzMTQwLDcgQEAKIAkJCQk1Q0REOEQ4NTFFNDNDN0Q5MDA2MjFFOTIgLyog
bG9nMmxpbi5jICovLAogCQkJCTVDREQ4RDg2MUU0M0M3RDkwMDYyMUU5MiAvKiBMUF92YXJpYWJs
ZV9jdXRvZmYuYyAqLywKIAkJCQk1Q0REOEQ4NzFFNDNDN0Q5MDA2MjFFOTIgLyogTFBDX2FuYWx5
c2lzX2ZpbHRlci5jICovLAorCQkJCTQxMDBDREU1MjFDQUNGRDAwMEY5Qjg3RCAvKiBMUENfZml0
LmMgKi8sCiAJCQkJNUNERDhEODgxRTQzQzdEOTAwNjIxRTkyIC8qIExQQ19pbnZfcHJlZF9nYWlu
LmMgKi8sCiAJCQkJNUNERDhEODkxRTQzQzdEOTAwNjIxRTkyIC8qIE1hY3JvQ291bnQuaCAqLywK
IAkJCQk1Q0REOEQ4QTFFNDNDN0Q5MDA2MjFFOTIgLyogTWFjcm9EZWJ1Zy5oICovLApAQCAtMTMy
MTYsNyArMTMyMzMsNiBAQAogCQkJCTVDREQ4RUE2MUU0M0M5QzEwMDYyMUU5MiAvKiBmaW5kX3By
ZWRfY29lZnNfRkxQLmMgKi8sCiAJCQkJNUNERDhFQTcxRTQzQzlDMTAwNjIxRTkyIC8qIGlubmVy
X3Byb2R1Y3RfRkxQLmMgKi8sCiAJCQkJNUNERDhFQTgxRTQzQzlDMTAwNjIxRTkyIC8qIGsyYV9G
TFAuYyAqLywKLQkJCQk1Q0REOEVBOTFFNDNDOUMxMDA2MjFFOTIgLyogbGV2aW5zb25kdXJiaW5f
RkxQLmMgKi8sCiAJCQkJNUNERDhFQUExRTQzQzlDMTAwNjIxRTkyIC8qIExQQ19hbmFseXNpc19m
aWx0ZXJfRkxQLmMgKi8sCiAJCQkJNUNERDhFQUIxRTQzQzlDMTAwNjIxRTkyIC8qIExQQ19pbnZf
cHJlZF9nYWluX0ZMUC5jICovLAogCQkJCTVDREQ4RUFDMUU0M0M5QzEwMDYyMUU5MiAvKiBMVFBf
YW5hbHlzaXNfZmlsdGVyX0ZMUC5jICovLApAQCAtMTMyMjQsNyArMTMyNDAsNiBAQAogCQkJCTVD
REQ4RUFFMUU0M0M5QzEwMDYyMUU5MiAvKiBtYWluX0ZMUC5oICovLAogCQkJCTVDREQ4RUFGMUU0
M0M5QzEwMDYyMUU5MiAvKiBub2lzZV9zaGFwZV9hbmFseXNpc19GTFAuYyAqLywKIAkJCQk1Q0RE
OEVCMDFFNDNDOUMxMDA2MjFFOTIgLyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYyAqLywKLQkJ
CQk1Q0REOEVCMTFFNDNDOUMxMDA2MjFFOTIgLyogcHJlZmlsdGVyX0ZMUC5jICovLAogCQkJCTVD
REQ4RUIyMUU0M0M5QzEwMDYyMUU5MiAvKiBwcm9jZXNzX2dhaW5zX0ZMUC5jICovLAogCQkJCTVD
REQ4RUIzMUU0M0M5QzEwMDYyMUU5MiAvKiByZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GTFAuYyAq
LywKIAkJCQk1Q0REOEVCNDFFNDNDOUMxMDA2MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5X0ZMUC5j
ICovLApAQCAtMTMyMzIsNyArMTMyNDcsNiBAQAogCQkJCTVDREQ4RUI2MUU0M0M5QzEwMDYyMUU5
MiAvKiBzY2FsZV92ZWN0b3JfRkxQLmMgKi8sCiAJCQkJNUNERDhFQjcxRTQzQzlDMTAwNjIxRTky
IC8qIHNjaHVyX0ZMUC5jICovLAogCQkJCTVDREQ4RUI4MUU0M0M5QzEwMDYyMUU5MiAvKiBTaWdQ
cm9jX0ZMUC5oICovLAotCQkJCTVDREQ4RUI5MUU0M0M5QzEwMDYyMUU5MiAvKiBzb2x2ZV9MU19G
TFAuYyAqLywKIAkJCQk1Q0REOEVCQTFFNDNDOUMxMDA2MjFFOTIgLyogc29ydF9GTFAuYyAqLywK
IAkJCQk1Q0REOEVCQjFFNDNDOUMxMDA2MjFFOTIgLyogc3RydWN0c19GTFAuaCAqLywKIAkJCQk1
Q0REOEVCQzFFNDNDOUMxMDA2MjFFOTIgLyogd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GTFAuYyAq
LywKQEAgLTEzMjYwLDE0ICsxMzI3NCwxMiBAQAogCQkJCTVDREQ4RjEwMUU0M0NBRjkwMDYyMUU5
MiAvKiBtYWluX0ZJWC5oICovLAogCQkJCTVDREQ4RjEyMUU0M0NBRjkwMDYyMUU5MiAvKiBub2lz
ZV9zaGFwZV9hbmFseXNpc19GSVguYyAqLywKIAkJCQk1Q0REOEYxMzFFNDNDQUY5MDA2MjFFOTIg
LyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYyAqLywKLQkJCQk1Q0REOEYxNDFFNDNDQUY5MDA2
MjFFOTIgLyogcHJlZmlsdGVyX0ZJWC5jICovLAogCQkJCTVDREQ4RjE1MUU0M0NBRjkwMDYyMUU5
MiAvKiBwcm9jZXNzX2dhaW5zX0ZJWC5jICovLAogCQkJCTVDREQ4RjE2MUU0M0NBRjkwMDYyMUU5
MiAvKiByZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GSVguYyAqLywKIAkJCQk1Q0REOEYxODFFNDND
QUY5MDA2MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5MTZfRklYLmMgKi8sCiAJCQkJNUNERDhGMTcx
RTQzQ0FGOTAwNjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJneV9GSVguYyAqLywKIAkJCQk1Q0REOEYx
QTFFNDNDQUY5MDA2MjFFOTIgLyogc2NodXI2NF9GSVguYyAqLywKIAkJCQk1Q0REOEYxOTFFNDND
QUY5MDA2MjFFOTIgLyogc2NodXJfRklYLmMgKi8sCi0JCQkJNUNERDhGMUIxRTQzQ0FGOTAwNjIx
RTkyIC8qIHNvbHZlX0xTX0ZJWC5jICovLAogCQkJCTVDREQ4RjFDMUU0M0NBRjkwMDYyMUU5MiAv
KiBzdHJ1Y3RzX0ZJWC5oICovLAogCQkJCTVDREQ4RjFEMUU0M0NBRjkwMDYyMUU5MiAvKiB2ZWN0
b3Jfb3BzX0ZJWC5jICovLAogCQkJCTVDREQ4RjFFMUU0M0NBRjkwMDYyMUU5MiAvKiB3YXJwZWRf
YXV0b2NvcnJlbGF0aW9uX0ZJWC5jICovLApAQCAtMTM3MjksNiArMTM3NDEsNyBAQAogCQkJCTVD
REQ4RDMyMUU0M0M3OUMwMDYyMUU5MiAvKiBiYW5kcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNE
RDhEMzgxRTQzQzc5QzAwNjIxRTkyIC8qIGNlbHQuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDREQ4
RDM2MUU0M0M3OUMwMDYyMUU5MiAvKiBjZWx0X2xwYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDEw
MENERjcyMUNBRDFGNzAwRjlCODdEIC8qIGNlbHRfbHBjX3NzZS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJNUNERDhFNDYxRTQzQzgwQzAwNjIxRTkyIC8qIGNvbnRyb2wuaCBpbiBIZWFkZXJzICovLAog
CQkJCTVDREQ4RDM5MUU0M0M3OUMwMDYyMUU5MiAvKiBjcHVfc3VwcG9ydC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJNUNERDhEM0IxRTQzQzc5QzAwNjIxRTkyIC8qIGN3cnMuaCBpbiBIZWFkZXJzICov
LApAQCAtMTM3NjIsNiArMTM3NzUsNyBAQAogCQkJCTVDREQ4RDUxMUU0M0M3OUMwMDYyMUU5MiAv
KiBvc19zdXBwb3J0LmggaW4gSGVhZGVycyAqLywKIAkJCQk1Q0REOEQ1MzFFNDNDNzlDMDA2MjFF
OTIgLyogcGl0Y2guaCBpbiBIZWFkZXJzICovLAogCQkJCTVDREQ4RTcxMUU0M0M4MEMwMDYyMUU5
MiAvKiBwaXRjaF9lc3RfZGVmaW5lcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDEwMENERjgyMUNB
RDFGNzAwRjlCODdEIC8qIHBpdGNoX3NzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNERDhFNzQx
RTQzQzgwQzAwNjIxRTkyIC8qIFBMQy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNERDhENTUxRTQz
Qzc5QzAwNjIxRTkyIC8qIHF1YW50X2JhbmRzLmggaW4gSGVhZGVycyAqLywKIAkJCQk1Q0REOEQ1
NzFFNDNDNzlDMDA2MjFFOTIgLyogcmF0ZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0xNTA3Nyw2ICsx
NTA5MSw3IEBACiAJCQkJNDE3OTUzRUUyMTY5ODQyMTAwMjgyNjZCIC8qIHZwOV9wcm9maWxlLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk1Q0REOEJGNDFFNDNDMkI1MDA2MjFFOTIgLyogdnEzLmggaW4g
SGVhZGVycyAqLywKIAkJCQk1Q0REOEJGNjFFNDNDMkI1MDA2MjFFOTIgLyogdnE0LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk0MTAwQ0RFQTIxQ0FEMDM0MDBGOUI4N0QgLyogdnFfc3NlLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk1QzRCNEM4MTFFNDMxRjlDMDAyNjUxQzggLyogd2F2X2ZpbGUuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTVDNEI0Qzg0MUU0MzFGOUMwMDI2NTFDOCAvKiB3YXZfaGVhZGVyLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk0MUUwMkNCRjIxMjczNTZBMDBDMjdDRDYgLyogd2Vha19wdHIu
aCBpbiBIZWFkZXJzICovLApAQCAtMTU4MDksNiArMTU4MjQsNyBAQAogCQkJCTVDREQ4RDMzMUU0
M0M3OUMwMDYyMUU5MiAvKiBjZWx0X2RlY29kZXIuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4
RDM0MUU0M0M3OUMwMDYyMUU5MiAvKiBjZWx0X2VuY29kZXIuYyBpbiBTb3VyY2VzICovLAogCQkJ
CTVDREQ4RDM1MUU0M0M3OUMwMDYyMUU5MiAvKiBjZWx0X2xwYy5jIGluIFNvdXJjZXMgKi8sCisJ
CQkJNDEwMENERjMyMUNBRDFGNzAwRjlCODdEIC8qIGNlbHRfbHBjX3NzZS5jIGluIFNvdXJjZXMg
Ki8sCiAJCQkJNUNERDhFNDAxRTQzQzgwQzAwNjIxRTkyIC8qIGNoZWNrX2NvbnRyb2xfaW5wdXQu
YyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTQxMUU0M0M4MEMwMDYyMUU5MiAvKiBDTkcuYyBp
biBTb3VyY2VzICovLAogCQkJCTVDREQ4RTQyMUU0M0M4MEMwMDYyMUU5MiAvKiBjb2RlX3NpZ25z
LmMgaW4gU291cmNlcyAqLywKQEAgLTE1ODU2LDcgKzE1ODcyLDYgQEAKIAkJCQk1Q0REOEY0NDFF
NDNDQjFFMDA2MjFFOTIgLyogazJhX1ExNl9GSVguYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4
RDQ2MUU0M0M3OUMwMDYyMUU5MiAvKiBraXNzX2ZmdC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNE
RDhENDgxRTQzQzc5QzAwNjIxRTkyIC8qIGxhcGxhY2UuYyBpbiBTb3VyY2VzICovLAotCQkJCTVD
REQ4RUVEMUU0M0M5RjYwMDYyMUU5MiAvKiBsZXZpbnNvbmR1cmJpbl9GTFAuYyBpbiBTb3VyY2Vz
ICovLAogCQkJCTVDREQ4RTVEMUU0M0M4MEMwMDYyMUU5MiAvKiBsaW4ybG9nLmMgaW4gU291cmNl
cyAqLywKIAkJCQk1Q0REOEU1RTFFNDNDODBDMDA2MjFFOTIgLyogbG9nMmxpbi5jIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNUNERDhFNUYxRTQzQzgwQzAwNjIxRTkyIC8qIExQX3ZhcmlhYmxlX2N1dG9m
Zi5jIGluIFNvdXJjZXMgKi8sCkBAIC0xNTg5Nyw5ICsxNTkxMiwxMCBAQAogCQkJCTVDREQ4RjQ5
MUU0M0NCMUUwMDYyMUU5MiAvKiBwaXRjaF9hbmFseXNpc19jb3JlX0ZJWC5jIGluIFNvdXJjZXMg
Ki8sCiAJCQkJNUNERDhFRjQxRTQzQzlGNjAwNjIxRTkyIC8qIHBpdGNoX2FuYWx5c2lzX2NvcmVf
RkxQLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEU3MjFFNDNDODBDMDA2MjFFOTIgLyogcGl0
Y2hfZXN0X3RhYmxlcy5jIGluIFNvdXJjZXMgKi8sCisJCQkJNDEwMENERjUyMUNBRDFGNzAwRjlC
ODdEIC8qIHBpdGNoX3NzZS5jIGluIFNvdXJjZXMgKi8sCisJCQkJNDEwMENERjYyMUNBRDFGNzAw
RjlCODdEIC8qIHBpdGNoX3NzZTIuYyBpbiBTb3VyY2VzICovLAorCQkJCTQxMDBDREYyMjFDQUQx
RjcwMEY5Qjg3RCAvKiBwaXRjaF9zc2U0XzEuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTcz
MUU0M0M4MEMwMDYyMUU5MiAvKiBQTEMuYyBpbiBTb3VyY2VzICovLAotCQkJCTVDREQ4RjRBMUU0
M0NCMUUwMDYyMUU5MiAvKiBwcmVmaWx0ZXJfRklYLmMgaW4gU291cmNlcyAqLywKLQkJCQk1Q0RE
OEVGNTFFNDNDOUY2MDA2MjFFOTIgLyogcHJlZmlsdGVyX0ZMUC5jIGluIFNvdXJjZXMgKi8sCiAJ
CQkJNUNERDhGNEIxRTQzQ0IxRTAwNjIxRTkyIC8qIHByb2Nlc3NfZ2FpbnNfRklYLmMgaW4gU291
cmNlcyAqLywKIAkJCQk1Q0REOEVGNjFFNDNDOUY2MDA2MjFFOTIgLyogcHJvY2Vzc19nYWluc19G
TFAuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTc1MUU0M0M4MEMwMDYyMUU5MiAvKiBwcm9j
ZXNzX05MU0ZzLmMgaW4gU291cmNlcyAqLywKQEAgLTE1OTI3LDggKzE1OTQzLDYgQEAKIAkJCQk1
Q0REOEVGQjFFNDNDOUY2MDA2MjFFOTIgLyogc2NodXJfRkxQLmMgaW4gU291cmNlcyAqLywKIAkJ
CQk1Q0REOEU4MjFFNDNDODBDMDA2MjFFOTIgLyogc2hlbGxfY29kZXIuYyBpbiBTb3VyY2VzICov
LAogCQkJCTVDREQ4RTgzMUU0M0M4MEMwMDYyMUU5MiAvKiBzaWdtX1ExNS5jIGluIFNvdXJjZXMg
Ki8sCi0JCQkJNUNERDhGNTExRTQzQ0IxRTAwNjIxRTkyIC8qIHNvbHZlX0xTX0ZJWC5jIGluIFNv
dXJjZXMgKi8sCi0JCQkJNUNERDhFRkQxRTQzQzlGNjAwNjIxRTkyIC8qIHNvbHZlX0xTX0ZMUC5j
IGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFODUxRTQzQzgwQzAwNjIxRTkyIC8qIHNvcnQuYyBp
biBTb3VyY2VzICovLAogCQkJCTVDREQ4RUZFMUU0M0M5RjYwMDYyMUU5MiAvKiBzb3J0X0ZMUC5j
IGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFODYxRTQzQzgwQzAwNjIxRTkyIC8qIHN0ZXJlb19k
ZWNvZGVfcHJlZC5jIGluIFNvdXJjZXMgKi8sCkBAIC0xNTk1MCw2ICsxNTk2NCw3IEBACiAJCQkJ
NUM1RjQwOUExRTk3OEZEQjAwRDk0Mjc5IC8qIFZBRF9zc2UuYyBpbiBTb3VyY2VzICovLAogCQkJ
CTVDREQ4RjUzMUU0M0NCMUUwMDYyMUU5MiAvKiB2ZWN0b3Jfb3BzX0ZJWC5jIGluIFNvdXJjZXMg
Ki8sCiAJCQkJNUNERDhENUIxRTQzQzc5QzAwNjIxRTkyIC8qIHZxLmMgaW4gU291cmNlcyAqLywK
KwkJCQk0MTAwQ0RGNDIxQ0FEMUY3MDBGOUI4N0QgLyogdnFfc3NlMi5jIGluIFNvdXJjZXMgKi8s
CiAJCQkJNUNERDhFOUExRTQzQzgwQzAwNjIxRTkyIC8qIFZRX1dNYXRfRUMuYyBpbiBTb3VyY2Vz
ICovLAogCQkJCTVDNUY0MDlCMUU5NzhGREIwMEQ5NDI3OSAvKiBWUV9XTWF0X0VDX3NzZS5jIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNUNERDhGNTQxRTQzQ0IxRTAwNjIxRTkyIC8qIHdhcnBlZF9hdXRv
Y29ycmVsYXRpb25fRklYLmMgaW4gU291cmNlcyAqLywKQEAgLTE2NzE2LDYgKzE2NzMxLDcgQEAK
IAkJCQk0MTkyNDEzRTIxMjczNzI0MDA2MzRGQ0YgLyogbHBfcmVzaWR1YWwuY2MgaW4gU291cmNl
cyAqLywKIAkJCQk1Q0REODdDNTFFNDNCQzA1MDA2MjFFOTIgLyogbHBjX2FuYWx5c2lzLmMgaW4g
U291cmNlcyAqLywKIAkJCQk1Q0REOEJDMTFFNDNDMkI1MDA2MjFFOTIgLyogbHBjX2VuY29kZS5j
IGluIFNvdXJjZXMgKi8sCisJCQkJNDEwMENERTYyMUNBQ0ZEMDAwRjlCODdEIC8qIExQQ19maXQu
YyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4N0M3MUU0M0JDMDUwMDYyMUU5MiAvKiBscGNfZ2Fp
bl9zd2JfdGFibGVzLmMgaW4gU291cmNlcyAqLywKIAkJCQk0MTQzM0NFRTFGNzlCMzM0MDAzODdC
NEQgLyogbHBjX21hc2tpbmdfbW9kZWwuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4N0M5MUU0
M0JDMDUwMDYyMUU5MiAvKiBscGNfc2hhcGVfc3diMTJfdGFibGVzLmMgaW4gU291cmNlcyAqLywK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357703</attachid>
            <date>2018-12-19 11:47:36 -0800</date>
            <delta_ts>2018-12-19 12:33:47 -0800</delta_ts>
            <desc>Update iOS</desc>
            <filename>bug-192867-20181219114733.patch</filename>
            <type>text/plain</type>
            <size>1687116</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5MjgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCAzMDhlNDQ3ZTlmODJiMjYxMTRiYThiMmM0ODhhOWUzOWY2MjQ1MDExLi44ZTRi
NjFkMDBjMGQ1MWMwY2NkNjA0NTAyOTlkNTIwZjk2Mzg5ZTcwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxOC0xMi0xOSAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzeW5jIG9wdXMgdG8gTTcyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI4NjcKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL29wdXMueGNjb25maWc6IFVwZGF0ZWQgY29tcGlsYXRpb24gZmxhZy4KKyAgICAgICAg
KiBTb3VyY2UvdGhpcmRfcGFydHkvb3B1czogUmVzeW5jZWQgdG8gQ2hyb21lIE03MiBicmFuY2gu
CisKIDIwMTgtMTItMTkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFJlZnJlc2ggbGlieXV2IHRvIE03MgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL0NvbmZpZ3VyYXRpb25zL29wdXMueGNjb25maWcgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvb3B1cy54Y2NvbmZpZwppbmRleCBkMDU4Yzc2NDA2
YWI0Mzg3NjU3NjdhZjFhMTg4MzYzOWJhOGZiOWNmLi4yZjcyZDc0ODQ0OTQ2NDE1YmNiMmEzMmJk
ZDk5MzQ4ZjdhMGRkNmRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
Q29uZmlndXJhdGlvbnMvb3B1cy54Y2NvbmZpZworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvQ29uZmlndXJhdGlvbnMvb3B1cy54Y2NvbmZpZwpAQCAtMTMsMTEgKzEzLDExIEBAIElO
U1RBTExfUEFUSCA9IC91c3IvbG9jYWwvbGliOwogUFVCTElDX0hFQURFUlNfRk9MREVSX1BBVEgg
PSAvdXNyL2xvY2FsL2luY2x1ZGUvbGlid2VicnRjOwogVVNFX0hFQURFUk1BUCA9IE5POwogV0FS
TklOR19DRkxBR1MgPSAtV25vLWluY29tcGF0aWJsZS1wb2ludGVyLXR5cGVzICQoaW5oZXJpdGVk
KQotR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9IFZBUl9BUlJBWVMgT1BVU19CVUlMRCBP
UFVTX0VYUE9SVD0gSEFWRV9MUklOVCBIQVZFX0xSSU5URiBPUFVTX1g4Nl9NQVlfSEFWRV9TU0Uy
ICQoaW5oZXJpdGVkKTsKK0dDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSBWQVJfQVJSQVlT
IE9QVVNfQlVJTEQgT1BVU19FWFBPUlQ9IEhBVkVfTFJJTlQgSEFWRV9MUklOVEYgT1BVU19YODZf
TUFZX0hBVkVfU1NFMiBPUFVTX1g4Nl9QUkVTVU1FX1NTRTIgJChpbmhlcml0ZWQpOwogR0NDX1BS
RVBST0NFU1NPUl9ERUZJTklUSU9OU1thcmNoPWFybTY0Kl0gPSAkKGluaGVyaXRlZCkgT1BVU19B
Uk1fUFJFU1VNRV9BQVJDSDY0X05FT05fSU5UUjsKIEdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElP
TlNbYXJjaD14ODZfNjRdID0gJChpbmhlcml0ZWQpICQoU1NFNF9GTEFHKTsKIAotRVhDTFVERURf
U09VUkNFX0ZJTEVfTkFNRVNbc2RrPWlwaG9uZSpdID0gKl9zc2UuYyAqX3NzZTIuYzsKK0VYQ0xV
REVEX1NPVVJDRV9GSUxFX05BTUVTW3Nkaz1pcGhvbmUqXSA9ICpfc3NlLmMgKl9zc2UyLmMgKl9z
c2U0XzEuYzsKIEVYQ0xVREVEX1NPVVJDRV9GSUxFX05BTUVTW3Nkaz1tYWNvc3gqXSA9ICQoRVhD
TFVERURfU09VUkNFX0ZJTEVfTkFNRVNfbWFjb3N4XyQoVEFSR0VUX01BQ19PU19YX1ZFUlNJT05f
TUFKT1IpKTsKIAogLy8gVGhlIGlPUyBTaW11bGF0b3IgY2FuJ3QgdXNlIFNTRTQgaW50cmluc2lj
cywgYnV0IG1hY09TIGNhbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9CVUlMRC5nbiBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9CVUlMRC5nbgppbmRleCAzYmI1ZTBkZjQ5
OWU5MmMyNjlmZjg0NTM2MzMzZmJmN2FhNDViYTI1Li5iNTRmODU2ODgyMzBlM2IxN2MxYWRmZTAx
MzBlODVmYWQ0OWUwYTJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvQlVJTEQuZ24KKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL0JVSUxELmduCkBAIC05LDEyICs5LDE5
IEBAIGltcG9ydCgiLy90ZXN0aW5nL3Rlc3QuZ25pIikKIHVzZV9vcHVzX2ZpeGVkX3BvaW50ID0g
Y3VycmVudF9jcHUgPT0gImFybSIgfHwgY3VycmVudF9jcHUgPT0gImFybTY0IgogCiAjIElmIEFS
TSBvcHRpbWl6YXRpb25zIHNoYWxsIGJlIHVzZWQgdG8gYWNjZWxlcmF0ZSBwZXJmb3JtYW5jZS4K
LXVzZV9vcHVzX2FybV9vcHRpbWl6YXRpb24gPSBjdXJyZW50X2NwdSA9PSAiYXJtIgorIyBUT0RP
KHNjb3R0bWcpOiBEaXNhYmxlZCBvbiBGdWNoc2lhIGZvciBub3csIHNlZSBodHRwczovL2NyYnVn
LmNvbS83NzUyNzIuCit1c2Vfb3B1c19hcm1fb3B0aW1pemF0aW9uID0KKyAgICBjdXJyZW50X2Nw
dSA9PSAiYXJtIiB8fCAoY3VycmVudF9jcHUgPT0gImFybTY0IiAmJiBpc19pb3MpCisKKyMgTmFD
bCwgdW5saWtlIENocm9tZSwgZG9lc24ndCB0YXJnZXQgU1NFMiBtaW5pbXVtLCBzbyBza2lwIG9w
dGltaXphdGlvbnMgZm9yCisjIHRoZSBzYWtlIG9mIHNpbXBsaWNpdHkuCit1c2Vfb3B1c194ODZf
b3B0aW1pemF0aW9uID0KKyAgICAhaXNfbmFjbCAmJiAoY3VycmVudF9jcHUgPT0gIng4NiIgfHwg
Y3VycmVudF9jcHUgPT0gIng2NCIpCiAKICMgSWYgT1BVUyBSdW4gVGltZSBDUFUgRGV0ZWN0aW9u
cyAoUlRDRCkgc2hhbGwgYmUgdXNlZC4KICMgQmFzZWQgb24gdGhlIGNvbmRpdGlvbnMgaW4gY2Vs
dC9hcm0vYXJtY3B1LmM6CiAjIGRlZmluZWQoX01TQ19WRVIpIHx8IGRlZmluZWQoX19saW51eF9f
KS4KLXVzZV9vcHVzX3J0Y2QgPSBjdXJyZW50X2NwdSA9PSAiYXJtIiAmJiAoaXNfd2luIHx8IGlz
X2FuZHJvaWQgfHwgaXNfbGludXgpCit1c2Vfb3B1c19hcm1fcnRjZCA9IGN1cnJlbnRfY3B1ID09
ICJhcm0iICYmIChpc193aW4gfHwgaXNfYW5kcm9pZCB8fCBpc19saW51eCkKIAogY29uZmlnKCJv
cHVzX2NvbmZpZyIpIHsKICAgaW5jbHVkZV9kaXJzID0gWyAic3JjL2luY2x1ZGUiIF0KQEAgLTI0
LDYgKzMxLDEwNiBAQCBjb25maWcoIm9wdXNfY29uZmlnIikgewogICB9CiB9CiAKK2NvbmZpZygi
b3B1c19wcml2YXRlX2NvbmZpZyIpIHsKKyAgZGVmaW5lcyA9IFsKKyAgICAiT1BVU19CVUlMRCIs
CisgICAgIk9QVVNfRVhQT1JUPSIsCisKKyAgICAjIFByZWZlciBhbGxvY2EoKSBvdmVyIHZhcmlh
YmxlIGxlbmd0aCBhcnJheXMgd2hpY2ggYXJlIG9mdGVuIGluZWZmaWNpZW50OworICAgICMgdGhl
IG9wdXMgY29kZSB3aWxsIGF1dG9tYXRpY2FsbHkgaGFuZGxlIHRoaXMgY29ycmVjdGx5IHBlci1w
bGF0Zm9ybS4KKyAgICAiVVNFX0FMTE9DQSIsCisgICAgIkhBVkVfQUxMT0NBX0giLAorICBdCisK
KyAgaW5jbHVkZV9kaXJzID0gWworICAgICJzcmMiLAorICAgICJzcmMvY2VsdCIsCisgICAgInNy
Yy9zaWxrIiwKKyAgXQorCisgIGNmbGFncyA9IFtdCisKKyAgaWYgKGlzX3dpbikgeworICAgIGRl
ZmluZXMgKz0gWyAiaW5saW5lPV9faW5saW5lIiBdCisKKyAgICBjZmxhZ3MgKz0gWworICAgICAg
Ii93ZDQzMDUiLCAgIyBEaXNhYmxlIHRydW5jYXRpb24gd2FybmluZyBpbiBjZWx0L3BpdGNoLmMg
LgorICAgICAgIi93ZDQzMzQiLCAgIyBEaXNhYmxlIDMyLWJpdCBzaGlmdCB3YXJuaW5nIGluIHNy
Yy9vcHVzX2VuY29kZXIuYyAuCisgICAgXQorICB9IGVsc2UgeworICAgIGRlZmluZXMgKz0gWwor
ICAgICAgIkhBVkVfTFJJTlQiLAorICAgICAgIkhBVkVfTFJJTlRGIiwKKyAgICBdCisgIH0KKwor
ICBpZiAoaXNfZGVidWcpIHsKKyAgICAjIFR1cm4gb2ZmIGEgd2FybmluZyBpbiBvcHVzX2RlY29k
ZXIuYyB3aGVuIGNvbXBpbGluZyB3aXRob3V0IG9wdGltaXphdGlvbi4KKyAgICBkZWZpbmVzICs9
IFsgIk9QVVNfV0lMTF9CRV9TTE9XIiBdCisgIH0KKworICBpZiAodXNlX29wdXNfeDg2X29wdGlt
aXphdGlvbikgeworICAgIGRlZmluZXMgKz0gWworICAgICAgIyBSdW4gVGltZSBDUFUgRGV0ZWN0
aW9ucyAoUlRDRCkgaXMgYWx3YXlzIGVuYWJsZWQgZm9yIHg4Ni4KKyAgICAgICJPUFVTX0hBVkVf
UlRDRCIsCisgICAgICAiQ1BVX0lORk9fQllfQVNNIiwKKworICAgICAgIyBDaHJvbWUgYWx3YXlz
IHRhcmdldHMgU1NFMisuCisgICAgICAiT1BVU19YODZfTUFZX0hBVkVfU1NFIiwKKyAgICAgICJP
UFVTX1g4Nl9NQVlfSEFWRV9TU0UyIiwKKyAgICAgICJPUFVTX1g4Nl9QUkVTVU1FX1NTRSIsCisg
ICAgICAiT1BVU19YODZfUFJFU1VNRV9TU0UyIiwKKworICAgICAgIyBTb21lIHN5c3RlbXMgbWF5
IGhhdmUgU1NFNC4xKyBzdXBwb3J0LgorICAgICAgIk9QVVNfWDg2X01BWV9IQVZFX1NTRTRfMSIs
CisKKyAgICAgICMgQXQgcHJlc2VudCBsaWJvcHVzIGhhcyBubyBBVlggZnVuY3Rpb25zIHNvIG5v
IHNvdXJjZXMgYXJlIGFkZCBmb3IgdGhpcywKKyAgICAgICMgaWYgeW91IHNlZSBsaW5rZXIgZXJy
b3JzIG9uIEFWWCBjb2RlIHRoZSB0aGlzIGZsYWcgaXMgd2h5LgorICAgICAgIk9QVVNfWDg2X01B
WV9IQVZFX0FWWCIsCisgICAgXQorICB9CisKKyAgaWYgKHVzZV9vcHVzX2ZpeGVkX3BvaW50KSB7
CisgICAgZGVmaW5lcyArPSBbICJGSVhFRF9QT0lOVCIgXQorICAgIGluY2x1ZGVfZGlycyArPSBb
ICJzcmMvc2lsay9maXhlZCIgXQorICB9IGVsc2UgeworICAgIGluY2x1ZGVfZGlycyArPSBbICJz
cmMvc2lsay9mbG9hdCIgXQorICB9CisKKyAgaWYgKHVzZV9vcHVzX2FybV9vcHRpbWl6YXRpb24p
IHsKKyAgICBpZiAoY3VycmVudF9jcHUgPT0gImFybSIpIHsKKyAgICAgIGRlZmluZXMgKz0gWwor
ICAgICAgICAiT1BVU19BUk1fQVNNIiwKKyAgICAgICAgIk9QVVNfQVJNX0lOTElORV9BU00iLAor
ICAgICAgICAiT1BVU19BUk1fSU5MSU5FX0VEU1AiLAorICAgICAgXQorICAgIH0KKworICAgIGlm
ICh1c2Vfb3B1c19hcm1fcnRjZCkgeworICAgICAgZGVmaW5lcyArPSBbCisgICAgICAgICJPUFVT
X0FSTV9NQVlfSEFWRV9FRFNQIiwKKyAgICAgICAgIk9QVVNfQVJNX01BWV9IQVZFX01FRElBIiwK
KyAgICAgICAgIk9QVVNfSEFWRV9SVENEIiwKKyAgICAgIF0KKyAgICB9CisKKyAgICBpZiAoYXJt
X3VzZV9uZW9uKSB7CisgICAgICBkZWZpbmVzICs9IFsKKyAgICAgICAgIk9QVVNfQVJNX01BWV9I
QVZFX05FT04iLAorICAgICAgICAiT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSIiwKKyAgICAg
IF0KKyAgICB9CisKKyAgICBpZiAoaXNfaW9zICYmIGN1cnJlbnRfY3B1ID09ICJhcm02NCIpIHsK
KyAgICAgICMgUnVudGltZSBkZXRlY3Rpb24gb2YgQ1BVIGZlYXR1cmVzIG5vdCBhdmFpbGFibGUg
b24gaU9TLgorICAgICAgZGVmaW5lcyArPSBbCisgICAgICAgICJPUFVTX0FSTV9QUkVTVU1FX05F
T05fSU5UUiIsCisgICAgICAgICJPUFVTX0FSTV9QUkVTVU1FX0FBUkNINjRfTkVPTl9JTlRSIiwK
KyAgICAgIF0KKyAgICB9CisgIH0KK30KKwogY29uZmlnKCJvcHVzX3Rlc3RfY29uZmlnIikgewog
ICBpbmNsdWRlX2RpcnMgPSBbCiAgICAgInNyYy9jZWx0IiwKQEAgLTQxLDcgKzE0OCw3IEBAIGNv
bmZpZygib3B1c190ZXN0X2NvbmZpZyIpIHsKICAgfQogfQogCi1pZiAodXNlX29wdXNfcnRjZCkg
eworaWYgKHVzZV9vcHVzX2FybV9ydGNkKSB7CiAgIGFjdGlvbigiY29udmVydF9ydGNkX2Fzc2Vt
YmxlciIpIHsKICAgICBzY3JpcHQgPSAiY29udmVydF9ydGNkX2Fzc2VtYmxlci5weSIKICAgICBv
dXRwdXRzID0gWwpAQCAtNTYsNiArMTYzLDMxIEBAIGlmICh1c2Vfb3B1c19ydGNkKSB7CiAgIH0K
IH0KIAoraWYgKHVzZV9vcHVzX3g4Nl9vcHRpbWl6YXRpb24pIHsKKyAgc291cmNlX3NldCgib3B1
c19zc2U0MSIpIHsKKyAgICBzb3VyY2VzID0gWworICAgICAgInNyYy9jZWx0L3g4Ni9waXRjaF9z
c2U0XzEuYyIsCisgICAgICAic3JjL3NpbGsveDg2L05TUV9kZWxfZGVjX3NzZS5jIiwKKyAgICAg
ICJzcmMvc2lsay94ODYvTlNRX3NzZS5jIiwKKyAgICAgICJzcmMvc2lsay94ODYvVkFEX3NzZS5j
IiwKKyAgICBdCisKKyAgICBjb25maWdzIC09IFsgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVyOmNo
cm9taXVtX2NvZGUiIF0KKyAgICBjb25maWdzICs9IFsgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVy
Om5vX2Nocm9taXVtX2NvZGUiIF0KKyAgICBjb25maWdzICs9IFsKKyAgICAgICI6b3B1c19wcml2
YXRlX2NvbmZpZyIsCisgICAgICAiOm9wdXNfY29uZmlnIiwKKyAgICBdCisKKyAgICBpZiAoIWlz
X3dpbiB8fCBpc19jbGFuZykgeworICAgICAgY2ZsYWdzID0gWyAiLW1zc2U0LjEiIF0KKyAgICB9
CisgIH0KKyAgIyBUT0RPKGRhbGVjdXJ0aXMpOiBJZiBsaWJvcHVzIGV2ZXIgYWRkcyBBVlggc3Vw
cG9ydCwgYWRkIGFuIG9wdXNfYXZ4IGJsb2NrLgorfQorCisjIE5vdGU6IERvIG5vdCBhZGQgYW55
IGRlZmluZXMgb3IgaW5jbHVkZV9kaXJzIHRvIHRoaXMgdGFyZ2V0LCB0aG9zZSBzaG91bGQgYWxs
CisjIGdvIGluIHRoZSBvcHVzX3ByaXZhdGVfY29uZmlnIHNvIHRoZXkgY2FuIGJlIHNoYXJlZCB3
aXRoIGludHJpbnNpYyB0YXJnZXRzLgogc3RhdGljX2xpYnJhcnkoIm9wdXMiKSB7CiAgIHNvdXJj
ZXMgPSBbCiAgICAgInNyYy9jZWx0L19raXNzX2ZmdF9ndXRzLmgiLApAQCAtMTE1LDYgKzI0Nyw3
IEBAIHN0YXRpY19saWJyYXJ5KCJvcHVzIikgewogICAgICJzcmMvc2lsay9IUF92YXJpYWJsZV9j
dXRvZmYuYyIsCiAgICAgInNyYy9zaWxrL0lubGluZXMuaCIsCiAgICAgInNyYy9zaWxrL0xQQ19h
bmFseXNpc19maWx0ZXIuYyIsCisgICAgInNyYy9zaWxrL0xQQ19maXQuYyIsCiAgICAgInNyYy9z
aWxrL0xQQ19pbnZfcHJlZF9nYWluLmMiLAogICAgICJzcmMvc2lsay9MUF92YXJpYWJsZV9jdXRv
ZmYuYyIsCiAgICAgInNyYy9zaWxrL01hY3JvQ291bnQuaCIsCkBAIC0yMjEsNDcgKzM1NCwxNCBA
QCBzdGF0aWNfbGlicmFyeSgib3B1cyIpIHsKICAgICAic3JjL3NyYy90YW5zaWdfdGFibGUuaCIs
CiAgIF0KIAotICBkZWZpbmVzID0gWwotICAgICJPUFVTX0JVSUxEIiwKLSAgICAiT1BVU19FWFBP
UlQ9IiwKLSAgXQotCi0gIGluY2x1ZGVfZGlycyA9IFsKLSAgICAic3JjL2NlbHQiLAotICAgICJz
cmMvc2lsayIsCi0gIF0KLQogICBjb25maWdzIC09IFsgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVy
OmNocm9taXVtX2NvZGUiIF0KLSAgY29uZmlncyArPSBbICIvL2J1aWxkL2NvbmZpZy9jb21waWxl
cjpub19jaHJvbWl1bV9jb2RlIiBdCisgIGNvbmZpZ3MgKz0gWworICAgICIvL2J1aWxkL2NvbmZp
Zy9jb21waWxlcjpub19jaHJvbWl1bV9jb2RlIiwKKyAgICAiOm9wdXNfcHJpdmF0ZV9jb25maWci
LAorICBdCiAgIHB1YmxpY19jb25maWdzID0gWyAiOm9wdXNfY29uZmlnIiBdCi0gIGNmbGFncyA9
IFtdCi0KLSAgaWYgKGlzX3dpbikgewotICAgIGRlZmluZXMgKz0gWwotICAgICAgIlVTRV9BTExP
Q0EiLAotICAgICAgImlubGluZT1fX2lubGluZSIsCi0gICAgXQogCi0gICAgY2ZsYWdzICs9IFsK
LSAgICAgICIvd2Q0MzA1IiwgICMgRGlzYWJsZSB0cnVuY2F0aW9uIHdhcm5pbmcgaW4gY2VsdC9w
aXRjaC5jIC4KLSAgICAgICIvd2Q0MzM0IiwgICMgRGlzYWJsZSAzMi1iaXQgc2hpZnQgd2Fybmlu
ZyBpbiBzcmMvb3B1c19lbmNvZGVyLmMgLgotICAgIF0KLSAgfSBlbHNlIHsKLSAgICBkZWZpbmVz
ICs9IFsKLSAgICAgICJIQVZFX0xSSU5UIiwKLSAgICAgICJIQVZFX0xSSU5URiIsCi0gICAgICAi
VkFSX0FSUkFZUyIsCi0gICAgXQotICB9Ci0KLSAgaWYgKGlzX3Bvc2l4ICYmICFpc19hbmRyb2lk
KSB7Ci0gICAgIyBTdXBwcmVzcyBhIHdhcm5pbmcgZ2l2ZW4gYnkgb3B1c19kZWNvZGVyLmMgdGhh
dCB0ZWxscyB1cwotICAgICMgb3B0aW1pemF0aW9ucyBhcmUgdHVybmVkIG9mZi4KLSAgICBjZmxh
Z3MgKz0gWyAiLVduby0jcHJhZ21hLW1lc3NhZ2VzIiBdCi0gIH0KLQotICBpZiAoIWlzX2RlYnVn
ICYmIGlzX3Bvc2l4ICYmCi0gICAgICAoY3VycmVudF9jcHUgPT0gImFybSIgfHwgY3VycmVudF9j
cHUgPT0gImFybTY0IikpIHsKKyAgaWYgKCFpc19kZWJ1ZyAmJiAoY3VycmVudF9jcHUgPT0gImFy
bSIgfHwgY3VycmVudF9jcHUgPT0gImFybTY0IikpIHsKICAgICBjb25maWdzIC09IFsgIi8vYnVp
bGQvY29uZmlnL2NvbXBpbGVyOmRlZmF1bHRfb3B0aW1pemF0aW9uIiBdCiAKICAgICAjIFRPRE8o
Y3JidWcuY29tLzYyMTMzNSkgUmV3b3JrIHRoaXMgc28gdGhhdCB3ZSBkb24ndCBoYXZlIHRoZSBj
b25mdXNpb24KQEAgLTI2OSw2ICszNjksMjYgQEAgc3RhdGljX2xpYnJhcnkoIm9wdXMiKSB7CiAg
ICAgY29uZmlncyArPSBbICIvL2J1aWxkL2NvbmZpZy9jb21waWxlcjpvcHRpbWl6ZV9zcGVlZCIg
XQogICB9CiAKKyAgZGVwcyA9IFtdCisKKyAgaWYgKHVzZV9vcHVzX3g4Nl9vcHRpbWl6YXRpb24p
IHsKKyAgICBzb3VyY2VzICs9IFsKKyAgICAgICJzcmMvY2VsdC94ODYvY2VsdF9scGNfc3NlLmgi
LAorICAgICAgInNyYy9jZWx0L3g4Ni9waXRjaF9zc2UuYyIsCisgICAgICAic3JjL2NlbHQveDg2
L3BpdGNoX3NzZS5oIiwKKyAgICAgICJzcmMvY2VsdC94ODYvcGl0Y2hfc3NlMi5jIiwKKyAgICAg
ICJzcmMvY2VsdC94ODYvdnFfc3NlLmgiLAorICAgICAgInNyYy9jZWx0L3g4Ni92cV9zc2UyLmMi
LAorICAgICAgInNyYy9jZWx0L3g4Ni94ODZfY2VsdF9tYXAuYyIsCisgICAgICAic3JjL2NlbHQv
eDg2L3g4NmNwdS5jIiwKKyAgICAgICJzcmMvY2VsdC94ODYveDg2Y3B1LmgiLAorICAgICAgInNy
Yy9zaWxrL3g4Ni9TaWdQcm9jX0ZJWF9zc2UuaCIsCisgICAgICAic3JjL3NpbGsveDg2L21haW5f
c3NlLmgiLAorICAgICAgInNyYy9zaWxrL3g4Ni94ODZfc2lsa19tYXAuYyIsCisgICAgXQorICAg
IGRlcHMgKz0gWyAiOm9wdXNfc3NlNDEiIF0KKyAgfQorCiAgIGlmICh1c2Vfb3B1c19maXhlZF9w
b2ludCkgewogICAgIHNvdXJjZXMgKz0gWwogICAgICAgInNyYy9zaWxrL2ZpeGVkL0xUUF9hbmFs
eXNpc19maWx0ZXJfRklYLmMiLApAQCAtMjg3LDIyICs0MDcsMTYgQEAgc3RhdGljX2xpYnJhcnko
Im9wdXMiKSB7CiAgICAgICAic3JjL3NpbGsvZml4ZWQvbWFpbl9GSVguaCIsCiAgICAgICAic3Jj
L3NpbGsvZml4ZWQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYLmMiLAogICAgICAgInNyYy9zaWxr
L2ZpeGVkL3BpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmMiLAotICAgICAgInNyYy9zaWxrL2ZpeGVk
L3ByZWZpbHRlcl9GSVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvcHJvY2Vzc19nYWluc19G
SVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRklY
LmMiLAogICAgICAgInNyYy9zaWxrL2ZpeGVkL3Jlc2lkdWFsX2VuZXJneTE2X0ZJWC5jIiwKICAg
ICAgICJzcmMvc2lsay9maXhlZC9yZXNpZHVhbF9lbmVyZ3lfRklYLmMiLAogICAgICAgInNyYy9z
aWxrL2ZpeGVkL3NjaHVyNjRfRklYLmMiLAogICAgICAgInNyYy9zaWxrL2ZpeGVkL3NjaHVyX0ZJ
WC5jIiwKLSAgICAgICJzcmMvc2lsay9maXhlZC9zb2x2ZV9MU19GSVguYyIsCiAgICAgICAic3Jj
L3NpbGsvZml4ZWQvc3RydWN0c19GSVguaCIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvdmVjdG9y
X29wc19GSVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvd2FycGVkX2F1dG9jb3JyZWxhdGlv
bl9GSVguYyIsCiAgICAgXQotCi0gICAgZGVmaW5lcyArPSBbICJGSVhFRF9QT0lOVCIgXQotCi0g
ICAgaW5jbHVkZV9kaXJzICs9IFsgInNyYy9zaWxrL2ZpeGVkIiBdCiAgIH0gZWxzZSB7CiAgICAg
c291cmNlcyArPSBbCiAgICAgICAic3JjL3NpbGsvZmxvYXQvTFBDX2FuYWx5c2lzX2ZpbHRlcl9G
TFAuYyIsCkBAIC0zMjMsMjUgKzQzNywyMCBAQCBzdGF0aWNfbGlicmFyeSgib3B1cyIpIHsKICAg
ICAgICJzcmMvc2lsay9mbG9hdC9maW5kX3ByZWRfY29lZnNfRkxQLmMiLAogICAgICAgInNyYy9z
aWxrL2Zsb2F0L2lubmVyX3Byb2R1Y3RfRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L2sy
YV9GTFAuYyIsCi0gICAgICAic3JjL3NpbGsvZmxvYXQvbGV2aW5zb25kdXJiaW5fRkxQLmMiLAog
ICAgICAgInNyYy9zaWxrL2Zsb2F0L21haW5fRkxQLmgiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0
L25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jIiwKICAgICAgICJzcmMvc2lsay9mbG9hdC9waXRj
aF9hbmFseXNpc19jb3JlX0ZMUC5jIiwKLSAgICAgICJzcmMvc2lsay9mbG9hdC9wcmVmaWx0ZXJf
RkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L3Byb2Nlc3NfZ2FpbnNfRkxQLmMiLAogICAg
ICAgInNyYy9zaWxrL2Zsb2F0L3JlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZMUC5jIiwKICAgICAg
ICJzcmMvc2lsay9mbG9hdC9yZXNpZHVhbF9lbmVyZ3lfRkxQLmMiLAogICAgICAgInNyYy9zaWxr
L2Zsb2F0L3NjYWxlX2NvcHlfdmVjdG9yX0ZMUC5jIiwKICAgICAgICJzcmMvc2lsay9mbG9hdC9z
Y2FsZV92ZWN0b3JfRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L3NjaHVyX0ZMUC5jIiwK
LSAgICAgICJzcmMvc2lsay9mbG9hdC9zb2x2ZV9MU19GTFAuYyIsCiAgICAgICAic3JjL3NpbGsv
ZmxvYXQvc29ydF9GTFAuYyIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvc3RydWN0c19GTFAuaCIs
CiAgICAgICAic3JjL3NpbGsvZmxvYXQvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GTFAuYyIsCiAg
ICAgICAic3JjL3NpbGsvZmxvYXQvd3JhcHBlcnNfRkxQLmMiLAogICAgIF0KLQotICAgIGluY2x1
ZGVfZGlycyArPSBbICJzcmMvc2lsay9mbG9hdCIgXQogICB9CiAKICAgaWYgKHVzZV9vcHVzX2Fy
bV9vcHRpbWl6YXRpb24pIHsKQEAgLTM1OSwzOSArNDY4LDM0IEBAIHN0YXRpY19saWJyYXJ5KCJv
cHVzIikgewogICAgICAgInNyYy9zaWxrL2FybS9tYWNyb3NfYXJtdjVlLmgiLAogICAgIF0KIAot
ICAgIGRlZmluZXMgKz0gWwotICAgICAgIk9QVVNfQVJNX0FTTSIsCi0gICAgICAiT1BVU19BUk1f
SU5MSU5FX0FTTSIsCi0gICAgICAiT1BVU19BUk1fSU5MSU5FX0VEU1AiLAotICAgIF0KLQotICAg
IGlmICh1c2Vfb3B1c19ydGNkKSB7CisgICAgaWYgKHVzZV9vcHVzX2FybV9ydGNkKSB7CiAgICAg
ICBzb3VyY2VzICs9IFsKICAgICAgICAgIiR0YXJnZXRfZ2VuX2Rpci9jZWx0X3BpdGNoX3hjb3Jy
X2FybV9nbnUuUyIsCiAgICAgICAgICJzcmMvY2VsdC9hcm0vYXJtX2NlbHRfbWFwLmMiLAogICAg
ICAgICAic3JjL2NlbHQvYXJtL2FybWNwdS5jIiwKICAgICAgICAgInNyYy9jZWx0L2FybS9hcm1j
cHUuaCIsCi0gICAgICAgICJzcmMvY2VsdC9hcm0vY2VsdF9uZW9uX2ludHIuYyIsCiAgICAgICAg
ICJzcmMvY2VsdC9hcm0vZmZ0X2FybS5oIiwKICAgICAgICAgInNyYy9jZWx0L2FybS9tZGN0X2Fy
bS5oIiwKICAgICAgICAgInNyYy9jZWx0L2FybS9waXRjaF9hcm0uaCIsCi0gICAgICAgICJzcmMv
c2lsay9hcm0vTlNRX25lb24uYyIsCi0gICAgICAgICJzcmMvc2lsay9hcm0vTlNRX25lb24uaCIs
CiAgICAgICAgICJzcmMvc2lsay9hcm0vYXJtX3NpbGtfbWFwLmMiLAogICAgICAgXQorICAgICAg
ZGVwcyArPSBbICI6Y29udmVydF9ydGNkX2Fzc2VtYmxlciIgXQorICAgIH0KIAotICAgICAgaW5j
bHVkZV9kaXJzICs9IFsgInNyYyIgXQotCi0gICAgICBkZWZpbmVzICs9IFsKLSAgICAgICAgIk9Q
VVNfQVJNX01BWV9IQVZFX0VEU1AiLAotICAgICAgICAiT1BVU19BUk1fTUFZX0hBVkVfTUVESUEi
LAotICAgICAgICAiT1BVU19BUk1fTUFZX0hBVkVfTkVPTiIsCi0gICAgICAgICJPUFVTX0FSTV9N
QVlfSEFWRV9ORU9OX0lOVFIiLAotICAgICAgICAiT1BVU19IQVZFX1JUQ0QiLAotICAgICAgXQot
Ci0gICAgICBkZXBzID0gWwotICAgICAgICAiOmNvbnZlcnRfcnRjZF9hc3NlbWJsZXIiLAorICAg
IGlmIChhcm1fdXNlX25lb24pIHsKKyAgICAgIHNvdXJjZXMgKz0gWworICAgICAgICAic3JjL2Nl
bHQvYXJtL2NlbHRfbmVvbl9pbnRyLmMiLAorICAgICAgICAic3JjL2NlbHQvYXJtL3BpdGNoX25l
b25faW50ci5jIiwKKyAgICAgICAgInNyYy9zaWxrL2FybS9MUENfaW52X3ByZWRfZ2Fpbl9hcm0u
aCIsCisgICAgICAgICJzcmMvc2lsay9hcm0vTFBDX2ludl9wcmVkX2dhaW5fbmVvbl9pbnRyLmMi
LAorICAgICAgICAic3JjL3NpbGsvYXJtL05TUV9kZWxfZGVjX2FybS5oIiwKKyAgICAgICAgInNy
Yy9zaWxrL2FybS9OU1FfZGVsX2RlY19uZW9uX2ludHIuYyIsCisgICAgICAgICJzcmMvc2lsay9h
cm0vTlNRX25lb24uYyIsCisgICAgICAgICJzcmMvc2lsay9hcm0vTlNRX25lb24uaCIsCisgICAg
ICAgICJzcmMvc2lsay9hcm0vYmlxdWFkX2FsdF9hcm0uaCIsCisgICAgICAgICJzcmMvc2lsay9h
cm0vYmlxdWFkX2FsdF9uZW9uX2ludHIuYyIsCisgICAgICAgICJzcmMvc2lsay9maXhlZC9hcm0v
d2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYXJtLmgiLAorICAgICAgICAic3JjL3NpbGsvZml4
ZWQvYXJtL3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX25lb25faW50ci5jIiwKICAgICAgIF0K
ICAgICB9CiAgIH0KQEAgLTQxMCw3ICs1MTQsNiBAQCBleGVjdXRhYmxlKCJvcHVzX2NvbXBhcmUi
KSB7CiAKICAgZGVwcyA9IFsKICAgICAiOm9wdXMiLAotICAgICIvL2J1aWxkL2NvbmZpZy9zYW5p
dGl6ZXJzOmRlcHMiLAogICAgICIvL2J1aWxkL3dpbjpkZWZhdWx0X2V4ZV9tYW5pZmVzdCIsCiAg
IF0KIH0KQEAgLTQyOCw3ICs1MzEsNiBAQCBleGVjdXRhYmxlKCJvcHVzX2RlbW8iKSB7CiAKICAg
ZGVwcyA9IFsKICAgICAiOm9wdXMiLAotICAgICIvL2J1aWxkL2NvbmZpZy9zYW5pdGl6ZXJzOmRl
cHMiLAogICAgICIvL2J1aWxkL3dpbjpkZWZhdWx0X2V4ZV9tYW5pZmVzdCIsCiAgIF0KIH0KQEAg
LTQ1MSw2ICs1NTMsNyBAQCB0ZXN0KCJ0ZXN0X29wdXNfYXBpIikgewogCiB0ZXN0KCJ0ZXN0X29w
dXNfZW5jb2RlIikgewogICBzb3VyY2VzID0gWworICAgICJzcmMvdGVzdHMvb3B1c19lbmNvZGVf
cmVncmVzc2lvbnMuYyIsCiAgICAgInNyYy90ZXN0cy90ZXN0X29wdXNfZW5jb2RlLmMiLAogICBd
CiAKQEAgLTQ3Myw3ICs1NzYsNyBAQCBjb25maWcoInRlc3Rfb3B1c19kZWNvZGVfY29uZmlnIikg
ewogICAjIG1hcmtlZCBhcyByZXF1aXJpbmcgYSBub24tbnVsbCB2YWx1ZSBieSB0aGUgbm9ubnVs
bCBmdW5jdGlvbiBhdHRyaWJ1dGUsCiAgICMgYW5kIGV4cGVjdHMgb3B1c19kZWNvZGUoKSB0byBm
YWlsLiBEaXNhYmxlIHRoZSAtV25vbm51bGwgb3B0aW9uIHRvIGF2b2lkCiAgICMgYSBjb21waWxh
dGlvbiBlcnJvciBpZiAtV2Vycm9yIGlzIHNwZWNpZmllZC4KLSAgaWYgKGlzX3Bvc2l4KSB7Cisg
IGlmIChpc19jbGFuZykgewogICAgIGNmbGFncyA9IFsgIi1Xbm8tbm9ubnVsbCIgXQogICB9CiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvREVQUyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9ERVBTCmluZGV4IDdlNWJkMjZlZTY5MjhhY2M5NmUwMzUyYTQ1NzY1NjJlZWEw
NjEyOGUuLmZmZmNhYTVmZmMzNTI1ODI3ZDRjODdiMjJlYTcyMmNlOWMwMjNhOGYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9E
RVBTCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9ERVBTCkBAIC0xLDUgKzEsNyBAQAogaW5jbHVkZV9ydWxlcyA9IFsKICAgIithcm0iLAor
ICAiK2NlbHQiLAorICAiK2ZpeGVkIiwKICAgIittaXBzIiwKICAgIit4ODYiLAogXQpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L1JFQURNRS5jaHJvbWl1bSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9SRUFETUUuY2hyb21pdW0KaW5kZXggNzExMWQwMjhjMGQ2ZjY3MDI5MWRj
NzExNWM5ZTVjNmIzOGMzZGU4Zi4uOGJkMzE5N2FmMjczMjAwMGMzNTFkZTNmNzk4NjFmM2U5ODI0
ZWRkMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL1JFQURNRS5jaHJvbWl1bQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvUkVBRE1FLmNocm9taXVtCkBAIC0xLDYgKzEs
NiBAQAogTmFtZTogb3B1cwotVVJMOiBodHRwOi8vZG93bmxvYWRzLnhpcGgub3JnL3JlbGVhc2Vz
L29wdXMvb3B1cy0xLjEuMy50YXIuZ3oKLVZlcnNpb246IDEuMS4zCitVUkw6IGh0dHBzOi8vZ2l0
LnhpcGgub3JnLz9wPW9wdXMuZ2l0O2E9c25hcHNob3Q7aD0zZmU3NDRlYTA0ZmRjYzQxOGZiODVj
MmMxMzNkMTMzNzJlYmIwMTliO3NmPXRnegorVmVyc2lvbjogM2ZlNzQ0ZWEwNGZkY2M0MThmYjg1
YzJjMTMzZDEzMzcyZWJiMDE5YgogTGljZW5zZTogQlNECiBMaWNlbnNlIEZpbGU6IHNyYy9DT1BZ
SU5HCiBTZWN1cml0eSBDcml0aWNhbDogeWVzCkBAIC0xNCw3ICsxNCw5IEBAIGVuY29kaW5nL2Rl
Y29kaW5nLgogTG9jYWwgY2hhbmdlczoKICogY29weSAuZ2l0aWdub3JlIGZyb20gaHR0cHM6Ly9n
aXQueGlwaC5vcmcvP3A9b3B1cy5naXQ7YT10cmVlCiAqIHNldCAneCcgZmxhZ3M6ICJjaG1vZCA3
NTAgd2luMzIvZ2VudmVyc2lvbi5iYXQiCi0qIEFwcGx5IHBhdGNoZXMgZnJvbQotICBodHRwczov
L2dpdC54aXBoLm9yZy8/cD1vcHVzLmdpdDthPWNvbW1pdDtoPTc5ZThmNTI3YjAzNDRiMDg5N2E2
NWJlMzVlNzdmNzg4NWJkOTk0MDkKLSAgaHR0cHM6Ly9naXQueGlwaC5vcmcvP3A9b3B1cy5naXQ7
YT1jb21taXRkaWZmO2g9ZTVhZDI2MTY5NTAyYzFmMGIwNjc5MTZlNzgyYzJiM2ZkZWE2ZmJhOQot
ICBodHRwczovL2dpdC54aXBoLm9yZy8/cD1vcHVzLmdpdDthPWNvbW1pdGRpZmY7aD01ZGEwNDk4
YTNlMjMzMzlhYWNlYmE2NTlhOTdlOTM1MDMxZDU2OTNkCisqIEFwcGx5IGh0dHBzOi8vZ2l0Lnhp
cGgub3JnLz9wPW9wdXMuZ2l0O2E9Y29tbWl0ZGlmZjtoPTQ2NTYwNTM0ZmNiNTcxMGE4OTRhMzQx
YzJmOTUyNmRiNThmZDcwODcjcGF0Y2gxCisqIEFwcGx5IGh0dHBzOi8vZ2l0aHViLmNvbS94aXBo
L29wdXMvcHVsbC83MworKiBBcHBseSBodHRwczovL2dpdGh1Yi5jb20veGlwaC9vcHVzL3B1bGwv
ODcKKyogTWFrZSBzdXJlIEhCX2dhaW4gaXMgbm90IE5hTiBpbiBhbiBhdHRlbXB0IHRvIGZpeCBj
aHJvbWl1bTo4MjY5MTQKKyogU2F0dXJhdGUgYWRkIHRvIGF2b2lkIGludCBvdmVyZmxvdyB0byBm
aXggY2hyb21pdW06ODQyNTI4LiBUaGlzIHNob3VsZCBiZQorICByZXZlcnRlZCB3aGVuIHVwZGF0
aW5nIHRvIHYxLjMKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9jb252ZXJ0X3J0Y2RfYXNzZW1ibGVyLnB5IGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL2NvbnZlcnRfcnRjZF9h
c3NlbWJsZXIucHkKaW5kZXggZGM2M2M2NDFmNTdmNGM3Y2U0OWJkYTdmMzJiZjk3NmY4NzIyNWVj
Ny4uMmY2MDcxZjQxMjE4NjFiYzBkMDc5ODkzNTcyZGQ3MDkyYWMxYzA0MiAxMDA3NTUKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL2NvbnZl
cnRfcnRjZF9hc3NlbWJsZXIucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL2NvbnZlcnRfcnRjZF9hc3NlbWJsZXIucHkKQEAgLTQ1LDcg
KzQ1LDYgQEAgZGVmIG1haW4oYXJndik6CiAgICAgICAgICAnc2VkICJzL09QVVNfQVJNX01BWV9I
QVZFX1tBLVpdKi8xL2ciIHwgJwogICAgICAgICAgJ3NlZCAiLy5pbmNsdWRlL2QiICcKICAgICAg
ICAgICc+ICVzJykgJSAoYXJtMmdudV9zY3JpcHQsIGlucHV0X2ZpbGUsIG91dHB1dF9maWxlKQot
ICBwcmludCBjbWQKICAgcmV0dXJuIG9zLnN5c3RlbShjbWQpCiAKIGlmIF9fbmFtZV9fID09ICdf
X21haW5fXyc6CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjLy5naXRpZ25vcmUgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjLy5naXRpZ25vcmUKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MzMxMjdjOWZlMGE2NjNiNjA2Njk1MzBiN2JkYjY1YTY3ZDFiZWNhNQotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvLmdpdGlnbm9yZQpAQCAtMCwwICsxLDgzIEBACitEb3h5ZmlsZQorTWFrZWZpbGUKK01ha2Vm
aWxlLmluCitUQUdTCithY2xvY2FsLm00CithdXRvbTR0ZS5jYWNoZQorKi5rZGV2ZWxvcC5wY3MK
Kyoua2RldnNlcworY29tcGlsZQorY29uZmlnLmd1ZXNzCitjb25maWcuaAorY29uZmlnLmguaW4K
K2NvbmZpZy5sb2cKK2NvbmZpZy5zdGF0dXMKK2NvbmZpZy5zdWIKK2NvbmZpZ3VyZQorZGVwY29t
cAorSU5TVEFMTAoraW5zdGFsbC1zaAorLmRlcHMKKy5saWJzCisuZGlyc3RhbXAKKyouYQorKi5l
eGUKKyoubGEKKyotZ251LlMKK3Rlc3RjZWx0CitsaWJ0b29sCitsdG1haW4uc2gKK21pc3NpbmcK
K200L2xpYnRvb2wubTQKK200L2x0b3B0aW9ucy5tNAorbTQvbHRzdWdhci5tNAorbTQvbHR2ZXJz
aW9uLm00CittNC9sdH5vYnNvbGV0ZS5tNAorb3B1c19jb21wYXJlCitvcHVzX2RlbW8KK3JlcGFj
a2V0aXplcl9kZW1vCitzdGFtcC1oMQordGVzdC1kcml2ZXIKKyouc3cqCisqLm8KKyoubG8KKyou
cGMKKyoudGFyLmd6CisqfgordGVzdHMvKnRlc3QKK3Rlc3RzL3Rlc3Rfb3B1c19hcGkKK3Rlc3Rz
L3Rlc3Rfb3B1c19kZWNvZGUKK3Rlc3RzL3Rlc3Rfb3B1c19lbmNvZGUKK3Rlc3RzL3Rlc3Rfb3B1
c19wYWRkaW5nCitjZWx0L2FybS9hcm1vcHRzLnMKK2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVz
CitjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9jd3JzMzIKK2NlbHQvdGVzdHMvdGVzdF91bml0X2RmdAor
Y2VsdC90ZXN0cy90ZXN0X3VuaXRfZW50cm9weQorY2VsdC90ZXN0cy90ZXN0X3VuaXRfbGFwbGFj
ZQorY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWF0aG9wcworY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWRj
dAorY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24KK2NlbHQvdGVzdHMvdGVzdF91bml0X3R5
cGVzCitkb2MvZG94eWdlbl9zcWxpdGUzLmRiCitkb2MvZG94eWdlbi1idWlsZC5zdGFtcAorZG9j
L2h0bWwKK2RvYy9sYXRleAorZG9jL21hbgorcGFja2FnZV92ZXJzaW9uCit2ZXJzaW9uLmgKK2Nl
bHQvRGVidWcKK2NlbHQvUmVsZWFzZQorY2VsdC94NjQKK3NpbGsvRGVidWcKK3NpbGsvUmVsZWFz
ZQorc2lsay94NjQKK3NpbGsvZml4ZWQvRGVidWcKK3NpbGsvZml4ZWQvUmVsZWFzZQorc2lsay9m
aXhlZC94NjQKK3NpbGsvZmxvYXQvRGVidWcKK3NpbGsvZmxvYXQvUmVsZWFzZQorc2lsay9mbG9h
dC94NjQKK3NyYy9EZWJ1Zworc3JjL1JlbGVhc2UKK3NyYy94NjQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTElDRU5T
RV9QTEVBU0VfUkVBRC50eHQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL0xJQ0VOU0VfUExFQVNFX1JFQUQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJj
ODhlZmE2Y2IwNTc4OWE2YTZlNjk3NTc3YWU2ZDhlNTUzMmU1ZGYKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L0xJQ0VOU0VfUExFQVNFX1JFQUQudHh0CkBAIC0wLDAgKzEsMjIgQEAKK0NvbnRyaWJ1dGlvbnMg
dG8gdGhlIGNvbGxhYm9yYXRpb24gc2hhbGwgbm90IGJlIGNvbnNpZGVyZWQgY29uZmlkZW50aWFs
LgorCitFYWNoIGNvbnRyaWJ1dG9yIHJlcHJlc2VudHMgYW5kIHdhcnJhbnRzIHRoYXQgaXQgaGFz
IHRoZSByaWdodCBhbmQKK2F1dGhvcml0eSB0byBsaWNlbnNlIGNvcHlyaWdodCBpbiBpdHMgY29u
dHJpYnV0aW9ucyB0byB0aGUgY29sbGFib3JhdGlvbi4KKworRWFjaCBjb250cmlidXRvciBhZ3Jl
ZXMgdG8gbGljZW5zZSB0aGUgY29weXJpZ2h0IGluIHRoZSBjb250cmlidXRpb25zCit1bmRlciB0
aGUgTW9kaWZpZWQgKDItY2xhdXNlIG9yIDMtY2xhdXNlKSBCU0QgTGljZW5zZSBvciB0aGUgQ2xl
YXIgQlNEIExpY2Vuc2UuCisKK1BsZWFzZSBzZWUgdGhlIElQUiBzdGF0ZW1lbnRzIHN1Ym1pdHRl
ZCB0byB0aGUgSUVURiBmb3IgdGhlIGNvbXBsZXRlCitwYXRlbnQgbGljZW5zaW5nIGRldGFpbHM6
CisKK1hpcGguT3JnIEZvdW5kYXRpb246CitodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2lw
ci8xNTI0LworCitNaWNyb3NvZnQgQ29ycG9yYXRpb246CitodHRwczovL2RhdGF0cmFja2VyLmll
dGYub3JnL2lwci8xOTE0LworCitTa3lwZSBMaW1pdGVkOgoraHR0cHM6Ly9kYXRhdHJhY2tlci5p
ZXRmLm9yZy9pcHIvMTYwMi8KKworQnJvYWRjb20gQ29ycG9yYXRpb246CitodHRwczovL2RhdGF0
cmFja2VyLmlldGYub3JnL2lwci8xNTI2LwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS5hbSBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTWFrZWZp
bGUuYW0KaW5kZXggN2E2OTExNDBlNTUzZDQ1NTRjNmVjMmI3Y2JhYzAyOThlM2QxNmIyYy4uNWI1
N2IzMzcyZTU2Y2NhNTk5YzRkNDVhYWEwMWZlM2QzNzE4NjIzMiAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmls
ZS5hbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL01ha2VmaWxlLmFtCkBAIC0yMSw2ICsyMSw5IEBAIFNJTEtfU09VUkNFUyArPSAk
KFNJTEtfU09VUkNFU19GSVhFRCkKIGlmIEhBVkVfU1NFNF8xCiBTSUxLX1NPVVJDRVMgKz0gJChT
SUxLX1NPVVJDRVNfU1NFNF8xKSAkKFNJTEtfU09VUkNFU19GSVhFRF9TU0U0XzEpCiBlbmRpZgor
aWYgSEFWRV9BUk1fTkVPTl9JTlRSCitTSUxLX1NPVVJDRVMgKz0gJChTSUxLX1NPVVJDRVNfRklY
RURfQVJNX05FT05fSU5UUikKK2VuZGlmCiBlbHNlCiBTSUxLX1NPVVJDRVMgKz0gJChTSUxLX1NP
VVJDRVNfRkxPQVQpCiBpZiBIQVZFX1NTRTRfMQpAQCAtODQsOSArODcsMzYgQEAgcGtnaW5jbHVk
ZV9IRUFERVJTID0gaW5jbHVkZS9vcHVzLmggaW5jbHVkZS9vcHVzX211bHRpc3RyZWFtLmggaW5j
bHVkZS9vcHVzX3R5cGUKIG5vaW5zdF9IRUFERVJTID0gJChPUFVTX0hFQUQpICQoU0lMS19IRUFE
KSAkKENFTFRfSEVBRCkKIAogaWYgRVhUUkFfUFJPR1JBTVMKLW5vaW5zdF9QUk9HUkFNUyA9IG9w
dXNfZGVtbyByZXBhY2tldGl6ZXJfZGVtbyBvcHVzX2NvbXBhcmUgdGVzdHMvdGVzdF9vcHVzX2Fw
aSB0ZXN0cy90ZXN0X29wdXNfZW5jb2RlIHRlc3RzL3Rlc3Rfb3B1c19kZWNvZGUgdGVzdHMvdGVz
dF9vcHVzX3BhZGRpbmcgY2VsdC90ZXN0cy90ZXN0X3VuaXRfY3dyczMyIGNlbHQvdGVzdHMvdGVz
dF91bml0X2RmdCBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9lbnRyb3B5IGNlbHQvdGVzdHMvdGVzdF91
bml0X2xhcGxhY2UgY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWF0aG9wcyBjZWx0L3Rlc3RzL3Rlc3Rf
dW5pdF9tZGN0IGNlbHQvdGVzdHMvdGVzdF91bml0X3JvdGF0aW9uIGNlbHQvdGVzdHMvdGVzdF91
bml0X3R5cGVzCi0KLVRFU1RTID0gY2VsdC90ZXN0cy90ZXN0X3VuaXRfdHlwZXMgY2VsdC90ZXN0
cy90ZXN0X3VuaXRfbWF0aG9wcyBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9lbnRyb3B5IGNlbHQvdGVz
dHMvdGVzdF91bml0X2xhcGxhY2UgY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0IGNlbHQvdGVzdHMv
dGVzdF91bml0X21kY3QgY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24gY2VsdC90ZXN0cy90
ZXN0X3VuaXRfY3dyczMyIHRlc3RzL3Rlc3Rfb3B1c19hcGkgdGVzdHMvdGVzdF9vcHVzX2RlY29k
ZSB0ZXN0cy90ZXN0X29wdXNfZW5jb2RlIHRlc3RzL3Rlc3Rfb3B1c19wYWRkaW5nCitub2luc3Rf
UFJPR1JBTVMgPSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9jd3JzMzIgXAorICAgICAgICAgICAgICAg
ICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0IFwKKyAgICAgICAgICAgICAgICAgIGNlbHQvdGVz
dHMvdGVzdF91bml0X2VudHJvcHkgXAorICAgICAgICAgICAgICAgICAgY2VsdC90ZXN0cy90ZXN0
X3VuaXRfbGFwbGFjZSBcCisgICAgICAgICAgICAgICAgICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9t
YXRob3BzIFwKKyAgICAgICAgICAgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0X21kY3QgXAor
ICAgICAgICAgICAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24gXAorICAgICAg
ICAgICAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfdHlwZXMgXAorICAgICAgICAgICAgICAg
ICAgb3B1c19jb21wYXJlIFwKKyAgICAgICAgICAgICAgICAgIG9wdXNfZGVtbyBcCisgICAgICAg
ICAgICAgICAgICByZXBhY2tldGl6ZXJfZGVtbyBcCisgICAgICAgICAgICAgICAgICBzaWxrL3Rl
c3RzL3Rlc3RfdW5pdF9MUENfaW52X3ByZWRfZ2FpbiBcCisgICAgICAgICAgICAgICAgICB0ZXN0
cy90ZXN0X29wdXNfYXBpIFwKKyAgICAgICAgICAgICAgICAgIHRlc3RzL3Rlc3Rfb3B1c19kZWNv
ZGUgXAorICAgICAgICAgICAgICAgICAgdGVzdHMvdGVzdF9vcHVzX2VuY29kZSBcCisgICAgICAg
ICAgICAgICAgICB0ZXN0cy90ZXN0X29wdXNfcGFkZGluZworCitURVNUUyA9IGNlbHQvdGVzdHMv
dGVzdF91bml0X2N3cnMzMiBcCisgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0X2RmdCBcCisg
ICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0X2VudHJvcHkgXAorICAgICAgICBjZWx0L3Rlc3Rz
L3Rlc3RfdW5pdF9sYXBsYWNlIFwKKyAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWF0aG9w
cyBcCisgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0X21kY3QgXAorICAgICAgICBjZWx0L3Rl
c3RzL3Rlc3RfdW5pdF9yb3RhdGlvbiBcCisgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0X3R5
cGVzIFwKKyAgICAgICAgc2lsay90ZXN0cy90ZXN0X3VuaXRfTFBDX2ludl9wcmVkX2dhaW4gXAor
ICAgICAgICB0ZXN0cy90ZXN0X29wdXNfYXBpIFwKKyAgICAgICAgdGVzdHMvdGVzdF9vcHVzX2Rl
Y29kZSBcCisgICAgICAgIHRlc3RzL3Rlc3Rfb3B1c19lbmNvZGUgXAorICAgICAgICB0ZXN0cy90
ZXN0X29wdXNfcGFkZGluZwogCiBvcHVzX2RlbW9fU09VUkNFUyA9IHNyYy9vcHVzX2RlbW8uYwog
CkBAIC0xMDIsNyArMTMyLDcgQEAgb3B1c19jb21wYXJlX0xEQUREID0gJChMSUJNKQogdGVzdHNf
dGVzdF9vcHVzX2FwaV9TT1VSQ0VTID0gdGVzdHMvdGVzdF9vcHVzX2FwaS5jIHRlc3RzL3Rlc3Rf
b3B1c19jb21tb24uaAogdGVzdHNfdGVzdF9vcHVzX2FwaV9MREFERCA9IGxpYm9wdXMubGEgJChO
RTEwX0xJQlMpICQoTElCTSkKIAotdGVzdHNfdGVzdF9vcHVzX2VuY29kZV9TT1VSQ0VTID0gdGVz
dHMvdGVzdF9vcHVzX2VuY29kZS5jIHRlc3RzL3Rlc3Rfb3B1c19jb21tb24uaAordGVzdHNfdGVz
dF9vcHVzX2VuY29kZV9TT1VSQ0VTID0gdGVzdHMvdGVzdF9vcHVzX2VuY29kZS5jIHRlc3RzL29w
dXNfZW5jb2RlX3JlZ3Jlc3Npb25zLmMgdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCiB0ZXN0c190
ZXN0X29wdXNfZW5jb2RlX0xEQUREID0gbGlib3B1cy5sYSAkKE5FMTBfTElCUykgJChMSUJNKQog
CiB0ZXN0c190ZXN0X29wdXNfZGVjb2RlX1NPVVJDRVMgPSB0ZXN0cy90ZXN0X29wdXNfZGVjb2Rl
LmMgdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCkBAIC0xMTEsMTEgKzE0MSwyMCBAQCB0ZXN0c190
ZXN0X29wdXNfZGVjb2RlX0xEQUREID0gbGlib3B1cy5sYSAkKE5FMTBfTElCUykgJChMSUJNKQog
dGVzdHNfdGVzdF9vcHVzX3BhZGRpbmdfU09VUkNFUyA9IHRlc3RzL3Rlc3Rfb3B1c19wYWRkaW5n
LmMgdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCiB0ZXN0c190ZXN0X29wdXNfcGFkZGluZ19MREFE
RCA9IGxpYm9wdXMubGEgJChORTEwX0xJQlMpICQoTElCTSkKIAorQ0VMVF9PQkogPSAkKENFTFRf
U09VUkNFUzouYz0ubG8pCitTSUxLX09CSiA9ICQoU0lMS19TT1VSQ0VTOi5jPS5sbykKKworc2ls
a190ZXN0c190ZXN0X3VuaXRfTFBDX2ludl9wcmVkX2dhaW5fU09VUkNFUyA9IHNpbGsvdGVzdHMv
dGVzdF91bml0X0xQQ19pbnZfcHJlZF9nYWluLmMKK3NpbGtfdGVzdHNfdGVzdF91bml0X0xQQ19p
bnZfcHJlZF9nYWluX0xEQUREID0gJChTSUxLX09CSikgJChDRUxUX09CSikgJChORTEwX0xJQlMp
ICQoTElCTSkKK2lmIE9QVVNfQVJNX0VYVEVSTkFMX0FTTQorc2lsa190ZXN0c190ZXN0X3VuaXRf
TFBDX2ludl9wcmVkX2dhaW5fTERBREQgKz0gbGliYXJtYXNtLmxhCitlbmRpZgorCiBjZWx0X3Rl
c3RzX3Rlc3RfdW5pdF9jd3JzMzJfU09VUkNFUyA9IGNlbHQvdGVzdHMvdGVzdF91bml0X2N3cnMz
Mi5jCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9jd3JzMzJfTERBREQgPSAkKExJQk0pCiAKIGNlbHRf
dGVzdHNfdGVzdF91bml0X2RmdF9TT1VSQ0VTID0gY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0LmMK
LWNlbHRfdGVzdHNfdGVzdF91bml0X2RmdF9MREFERCA9ICQoTkUxMF9MSUJTKSAkKExJQk0pCitj
ZWx0X3Rlc3RzX3Rlc3RfdW5pdF9kZnRfTERBREQgPSAkKENFTFRfT0JKKSAkKE5FMTBfTElCUykg
JChMSUJNKQogaWYgT1BVU19BUk1fRVhURVJOQUxfQVNNCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9k
ZnRfTERBREQgKz0gbGliYXJtYXNtLmxhCiBlbmRpZgpAQCAtMTI3LDE5ICsxNjYsMTkgQEAgY2Vs
dF90ZXN0c190ZXN0X3VuaXRfbGFwbGFjZV9TT1VSQ0VTID0gY2VsdC90ZXN0cy90ZXN0X3VuaXRf
bGFwbGFjZS5jCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9sYXBsYWNlX0xEQUREID0gJChMSUJNKQog
CiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tYXRob3BzX1NPVVJDRVMgPSBjZWx0L3Rlc3RzL3Rlc3Rf
dW5pdF9tYXRob3BzLmMKLWNlbHRfdGVzdHNfdGVzdF91bml0X21hdGhvcHNfTERBREQgPSAkKE5F
MTBfTElCUykgJChMSUJNKQorY2VsdF90ZXN0c190ZXN0X3VuaXRfbWF0aG9wc19MREFERCA9ICQo
Q0VMVF9PQkopICQoTkUxMF9MSUJTKSAkKExJQk0pCiBpZiBPUFVTX0FSTV9FWFRFUk5BTF9BU00K
IGNlbHRfdGVzdHNfdGVzdF91bml0X21hdGhvcHNfTERBREQgKz0gbGliYXJtYXNtLmxhCiBlbmRp
ZgogCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tZGN0X1NPVVJDRVMgPSBjZWx0L3Rlc3RzL3Rlc3Rf
dW5pdF9tZGN0LmMKLWNlbHRfdGVzdHNfdGVzdF91bml0X21kY3RfTERBREQgPSAkKE5FMTBfTElC
UykgJChMSUJNKQorY2VsdF90ZXN0c190ZXN0X3VuaXRfbWRjdF9MREFERCA9ICQoQ0VMVF9PQkop
ICQoTkUxMF9MSUJTKSAkKExJQk0pCiBpZiBPUFVTX0FSTV9FWFRFUk5BTF9BU00KIGNlbHRfdGVz
dHNfdGVzdF91bml0X21kY3RfTERBREQgKz0gbGliYXJtYXNtLmxhCiBlbmRpZgogCiBjZWx0X3Rl
c3RzX3Rlc3RfdW5pdF9yb3RhdGlvbl9TT1VSQ0VTID0gY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90
YXRpb24uYwotY2VsdF90ZXN0c190ZXN0X3VuaXRfcm90YXRpb25fTERBREQgPSAkKE5FMTBfTElC
UykgJChMSUJNKQorY2VsdF90ZXN0c190ZXN0X3VuaXRfcm90YXRpb25fTERBREQgPSAkKENFTFRf
T0JKKSAkKE5FMTBfTElCUykgJChMSUJNKQogaWYgT1BVU19BUk1fRVhURVJOQUxfQVNNCiBjZWx0
X3Rlc3RzX3Rlc3RfdW5pdF9yb3RhdGlvbl9MREFERCArPSBsaWJhcm1hc20ubGEKIGVuZGlmCkBA
IC0xNTcsOCArMTk2LDcgQEAgb3B1c19jdXN0b21fZGVtb19MREFERCA9IGxpYm9wdXMubGEgJChM
SUJNKQogZW5kaWYKIGVuZGlmCiAKLUVYVFJBX0RJU1QgPSB2ZXJzaW9uLm1rIFwKLSAgICAgICAg
ICAgICBvcHVzLnBjLmluIFwKK0VYVFJBX0RJU1QgPSBvcHVzLnBjLmluIFwKICAgICAgICAgICAg
ICBvcHVzLXVuaW5zdGFsbGVkLnBjLmluIFwKICAgICAgICAgICAgICBvcHVzLm00IFwKICAgICAg
ICAgICAgICBNYWtlZmlsZS5taXBzIFwKQEAgLTE2NiwyNSArMjA0LDE4IEBAIEVYVFJBX0RJU1Qg
PSB2ZXJzaW9uLm1rIFwKICAgICAgICAgICAgICB0ZXN0cy9ydW5fdmVjdG9ycy5zaCBcCiAgICAg
ICAgICAgICAgY2VsdC9hcm0vYXJtMmdudS5wbCBcCiAgICAgICAgICAgICAgY2VsdC9hcm0vY2Vs
dF9waXRjaF94Y29ycl9hcm0ucyBcCi0gICAgICAgICAgICAgd2luMzIvVlMyMDE1L3NpbGtfZmxv
YXQudmN4cHJvaiBcCi0gICAgICAgICAgICAgd2luMzIvVlMyMDE1L2NlbHQudmN4cHJvai5maWx0
ZXJzIFwKICAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvb3B1cy52Y3hwcm9qIFwKLSAgICAgICAg
ICAgICB3aW4zMi9WUzIwMTUvc2lsa19jb21tb24udmN4cHJvai5maWx0ZXJzIFwKLSAgICAgICAg
ICAgICB3aW4zMi9WUzIwMTUvc2lsa19mbG9hdC52Y3hwcm9qLmZpbHRlcnMgXAogICAgICAgICAg
ICAgIHdpbjMyL1ZTMjAxNS90ZXN0X29wdXNfZW5jb2RlLnZjeHByb2ouZmlsdGVycyBcCi0gICAg
ICAgICAgICAgd2luMzIvVlMyMDE1L3NpbGtfY29tbW9uLnZjeHByb2ogXAogICAgICAgICAgICAg
IHdpbjMyL1ZTMjAxNS90ZXN0X29wdXNfZW5jb2RlLnZjeHByb2ogXAogICAgICAgICAgICAgIHdp
bjMyL1ZTMjAxNS9vcHVzX2RlbW8udmN4cHJvaiBcCiAgICAgICAgICAgICAgd2luMzIvVlMyMDE1
L3Rlc3Rfb3B1c19hcGkudmN4cHJvai5maWx0ZXJzIFwKICAgICAgICAgICAgICB3aW4zMi9WUzIw
MTUvdGVzdF9vcHVzX2FwaS52Y3hwcm9qIFwKICAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvdGVz
dF9vcHVzX2RlY29kZS52Y3hwcm9qLmZpbHRlcnMgXAotICAgICAgICAgICAgIHdpbjMyL1ZTMjAx
NS9zaWxrX2ZpeGVkLnZjeHByb2ouZmlsdGVycyBcCiAgICAgICAgICAgICAgd2luMzIvVlMyMDE1
L29wdXNfZGVtby52Y3hwcm9qLmZpbHRlcnMgXAotICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS9z
aWxrX2ZpeGVkLnZjeHByb2ogXAogICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS9vcHVzLnZjeHBy
b2ouZmlsdGVycyBcCiAgICAgICAgICAgICAgd2luMzIvVlMyMDE1L3Rlc3Rfb3B1c19kZWNvZGUu
dmN4cHJvaiBcCi0gICAgICAgICAgICAgd2luMzIvVlMyMDE1L2NlbHQudmN4cHJvaiBcCiAgICAg
ICAgICAgICAgd2luMzIvVlMyMDE1L29wdXMuc2xuIFwKKyAgICAgICAgICAgICB3aW4zMi9WUzIw
MTUvY29tbW9uLnByb3BzIFwKICAgICAgICAgICAgICB3aW4zMi9nZW52ZXJzaW9uLmJhdCBcCiAg
ICAgICAgICAgICAgd2luMzIvY29uZmlnLmgKIApAQCAtMjc2LDI3ICszMDcsMzAgQEAgJChDRUxU
X1NPVVJDRVNfQVJNX0FTTTolLnM9JS1nbnUuUyk6ICQodG9wX3NyY2RpcikvY2VsdC9hcm0vYXJt
MmdudS5wbAogT1BUX1VOSVRfVEVTVF9PQkogPSAkKGNlbHRfdGVzdHNfdGVzdF91bml0X21hdGhv
cHNfU09VUkNFUzouYz0ubykgXAogICAgICAgICAgICAgICAgICAgICAkKGNlbHRfdGVzdHNfdGVz
dF91bml0X3JvdGF0aW9uX1NPVVJDRVM6LmM9Lm8pIFwKICAgICAgICAgICAgICAgICAgICAgJChj
ZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tZGN0X1NPVVJDRVM6LmM9Lm8pIFwKLSAgICAgICAgICAgICAg
ICAgICAgJChjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9kZnRfU09VUkNFUzouYz0ubykKKyAgICAgICAg
ICAgICAgICAgICAgJChjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9kZnRfU09VUkNFUzouYz0ubykgXAor
ICAgICAgICAgICAgICAgICAgICAkKHNpbGtfdGVzdHNfdGVzdF91bml0X0xQQ19pbnZfcHJlZF9n
YWluX1NPVVJDRVM6LmM9Lm8pCiAKIGlmIEhBVkVfU1NFCiBTU0VfT0JKID0gJChDRUxUX1NPVVJD
RVNfU1NFOi5jPS5sbykKLSQoU1NFX09CSikgJChPUFRfVU5JVF9URVNUX09CSik6IENGTEFHUyAr
PSAkKE9QVVNfWDg2X1NTRV9DRkxBR1MpCiskKFNTRV9PQkopOiBDRkxBR1MgKz0gJChPUFVTX1g4
Nl9TU0VfQ0ZMQUdTKQogZW5kaWYKIAogaWYgSEFWRV9TU0UyCiBTU0UyX09CSiA9ICQoQ0VMVF9T
T1VSQ0VTX1NTRTI6LmM9LmxvKQotJChTU0UyX09CSikgJChPUFRfVU5JVF9URVNUX09CSik6IENG
TEFHUyArPSAkKE9QVVNfWDg2X1NTRTJfQ0ZMQUdTKQorJChTU0UyX09CSik6IENGTEFHUyArPSAk
KE9QVVNfWDg2X1NTRTJfQ0ZMQUdTKQogZW5kaWYKIAogaWYgSEFWRV9TU0U0XzEKIFNTRTRfMV9P
QkogPSAkKENFTFRfU09VUkNFU19TU0U0XzE6LmM9LmxvKSBcCiAgICAgICAgICAgICAgJChTSUxL
X1NPVVJDRVNfU1NFNF8xOi5jPS5sbykgXAogICAgICAgICAgICAgICQoU0lMS19TT1VSQ0VTX0ZJ
WEVEX1NTRTRfMTouYz0ubG8pCi0kKFNTRTRfMV9PQkopICQoT1BUX1VOSVRfVEVTVF9PQkopOiBD
RkxBR1MgKz0gJChPUFVTX1g4Nl9TU0U0XzFfQ0ZMQUdTKQorJChTU0U0XzFfT0JKKTogQ0ZMQUdT
ICs9ICQoT1BVU19YODZfU1NFNF8xX0NGTEFHUykKIGVuZGlmCiAKIGlmIEhBVkVfQVJNX05FT05f
SU5UUgotQVJNX05FT05fSU5UUl9PQkogPSAkKENFTFRfU09VUkNFU19BUk1fTkVPTl9JTlRSOi5j
PS5sbykgJChTSUxLX1NPVVJDRVNfQVJNX05FT05fSU5UUjouYz0ubG8pCi0kKEFSTV9ORU9OX0lO
VFJfT0JKKSAkKE9QVF9VTklUX1RFU1RfT0JKKTogQ0ZMQUdTICs9IFwKK0FSTV9ORU9OX0lOVFJf
T0JKID0gJChDRUxUX1NPVVJDRVNfQVJNX05FT05fSU5UUjouYz0ubG8pIFwKKyAgICAgICAgICAg
ICAgICAgICAgJChTSUxLX1NPVVJDRVNfQVJNX05FT05fSU5UUjouYz0ubG8pIFwKKyAgICAgICAg
ICAgICAgICAgICAgJChTSUxLX1NPVVJDRVNfRklYRURfQVJNX05FT05fSU5UUjouYz0ubG8pCisk
KEFSTV9ORU9OX0lOVFJfT0JKKTogQ0ZMQUdTICs9IFwKICAkKE9QVVNfQVJNX05FT05fSU5UUl9D
RkxBR1MpICAkKE5FMTBfQ0ZMQUdTKQogZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTWFrZWZpbGUubWlwcyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
TWFrZWZpbGUubWlwcwppbmRleCA1NmE1MDYyMzhmNjQ2YTY3MjU0N2MzNDU2YTRkNWFhYWYzNDI4
MjY3Li5kMjVhZjhjYmMyOGU1ZTY5ZjUzZmU4N2IyNWYyNThiYTM4NWY1ZDI5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L01ha2VmaWxlLm1pcHMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS5taXBzCkBAIC05OSw3ICs5OSw3IEBAIFRFU1RP
UFVTQVBJX09CSlMgOj0gJChwYXRzdWJzdCAlLmMsJSQoT0JKU1VGRklYKSwkKFRFU1RPUFVTQVBJ
X1NSQ1NfQykpCiBURVNUT1BVU0RFQ09ERV9TUkNTX0MgPSB0ZXN0cy90ZXN0X29wdXNfZGVjb2Rl
LmMKIFRFU1RPUFVTREVDT0RFX09CSlMgOj0gJChwYXRzdWJzdCAlLmMsJSQoT0JKU1VGRklYKSwk
KFRFU1RPUFVTREVDT0RFX1NSQ1NfQykpCiAKLVRFU1RPUFVTRU5DT0RFX1NSQ1NfQyA9IHRlc3Rz
L3Rlc3Rfb3B1c19lbmNvZGUuYworVEVTVE9QVVNFTkNPREVfU1JDU19DID0gdGVzdHMvdGVzdF9v
cHVzX2VuY29kZS5jIHRlc3RzL29wdXNfZW5jb2RlX3JlZ3Jlc3Npb25zLmMKIFRFU1RPUFVTRU5D
T0RFX09CSlMgOj0gJChwYXRzdWJzdCAlLmMsJSQoT0JKU1VGRklYKSwkKFRFU1RPUFVTRU5DT0RF
X1NSQ1NfQykpCiAKIFRFU1RPUFVTUEFERElOR19TUkNTX0MgPSB0ZXN0cy90ZXN0X29wdXNfcGFk
ZGluZy5jCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLnVuaXggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLnVuaXgKaW5kZXggYjEz
MjMwZThmYmViZjVlYTk0YTU1N2UxOTNjMGQ1YTU3MjRmZDQ1Yy4uOTBhNDhmMGNjMGU5MmU1MTRm
MjcwYmIyYWY1NTJmZTZmNjZiM2U0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS51bml4CisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTWFr
ZWZpbGUudW5peApAQCAtOTcsNyArOTcsNyBAQCBURVNUT1BVU0FQSV9PQkpTIDo9ICQocGF0c3Vi
c3QgJS5jLCUkKE9CSlNVRkZJWCksJChURVNUT1BVU0FQSV9TUkNTX0MpKQogVEVTVE9QVVNERUNP
REVfU1JDU19DID0gdGVzdHMvdGVzdF9vcHVzX2RlY29kZS5jCiBURVNUT1BVU0RFQ09ERV9PQkpT
IDo9ICQocGF0c3Vic3QgJS5jLCUkKE9CSlNVRkZJWCksJChURVNUT1BVU0RFQ09ERV9TUkNTX0Mp
KQogCi1URVNUT1BVU0VOQ09ERV9TUkNTX0MgPSB0ZXN0cy90ZXN0X29wdXNfZW5jb2RlLmMKK1RF
U1RPUFVTRU5DT0RFX1NSQ1NfQyA9IHRlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYyB0ZXN0cy9vcHVz
X2VuY29kZV9yZWdyZXNzaW9ucy5jCiBURVNUT1BVU0VOQ09ERV9PQkpTIDo9ICQocGF0c3Vic3Qg
JS5jLCUkKE9CSlNVRkZJWCksJChURVNUT1BVU0VOQ09ERV9TUkNTX0MpKQogCiBURVNUT1BVU1BB
RERJTkdfU1JDU19DID0gdGVzdHMvdGVzdF9vcHVzX3BhZGRpbmcuYwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9SRUFE
TUUgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL1JFQURNRQppbmRleCBhYzYyNjRlYzI5MjM4MzllMDI5NDVlOGVhYTI2ODRlMzU4MGU0Y2Yx
Li45YTA2ODExNjU0YjVjMjMzODIzYTA5NzQyNjY4MzUzMTM0MWE2ZDIyIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL1JF
QURNRQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL1JFQURNRQpAQCAtNDMsMjUgKzQzLDQzIEBAIG9yIG9uIHRoZSBtYWluIE9wdXMg
d2Vic2l0ZToKIAogVG8gYnVpbGQgZnJvbSBhIGRpc3RyaWJ1dGlvbiB0YXJiYWxsLCB5b3Ugb25s
eSBuZWVkIHRvIGRvIHRoZSBmb2xsb3dpbmc6CiAKLSUgLi9jb25maWd1cmUKLSUgbWFrZQorICAg
ICUgLi9jb25maWd1cmUKKyAgICAlIG1ha2UKIAogVG8gYnVpbGQgZnJvbSB0aGUgZ2l0IHJlcG9z
aXRvcnksIHRoZSBmb2xsb3dpbmcgc3RlcHMgYXJlIG5lY2Vzc2FyeToKIAorMCkgU2V0IHVwIGEg
ZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQ6CisKK09uIGFuIFVidW50dSBvciBEZWJpYW4gZmFtaWx5
IExpbnV4IGRpc3RyaWJ1dGlvbjoKKworICAgICUgc3VkbyBhcHQtZ2V0IGluc3RhbGwgZ2l0IGF1
dG9jb25mIGF1dG9tYWtlIGxpYnRvb2wgZ2NjIG1ha2UKKworT24gYSBGZWRvcmEvUmVkaGF0IGJh
c2VkIExpbnV4OgorCisgICAgJSBzdWRvIGRuZiBpbnN0YWxsIGdpdCBhdXRvY29uZiBhdXRvbWFr
ZSBsaWJ0b29sIGdjYyBtYWtlCisKK09yIGZvciBvbGRlciBSZWRoYXQvQ2VudG9zIExpbnV4IHJl
bGVhc2VzOgorCisgICAgJSBzdWRvIHl1bSBpbnN0YWxsIGdpdCBhdXRvY29uZiBhdXRvbWFrZSBs
aWJ0b29sIGdjYyBtYWtlCisKK09uIEFwcGxlIG1hY09TLCBpbnN0YWxsIFhjb2RlIGFuZCBicmV3
LnNoLCB0aGVuIGluIHRoZSBUZXJtaW5hbCBlbnRlcjoKKworICAgICUgYnJldyBpbnN0YWxsIGF1
dG9jb25mIGF1dG9tYWtlIGxpYnRvb2wKKwogMSkgQ2xvbmUgdGhlIHJlcG9zaXRvcnk6CiAKLSUg
Z2l0IGNsb25lIGh0dHBzOi8vZ2l0LnhpcGgub3JnL29wdXMuZ2l0Ci0lIGNkIG9wdXMKKyAgICAl
IGdpdCBjbG9uZSBodHRwczovL2dpdC54aXBoLm9yZy9vcHVzLmdpdAorICAgICUgY2Qgb3B1cwog
CiAyKSBDb21waWxpbmcgdGhlIHNvdXJjZQogCi0lIC4vYXV0b2dlbi5zaAotJSAuL2NvbmZpZ3Vy
ZQotJSBtYWtlCisgICAgJSAuL2F1dG9nZW4uc2gKKyAgICAlIC4vY29uZmlndXJlCisgICAgJSBt
YWtlCiAKIDMpIEluc3RhbGwgdGhlIGNvZGVjIGxpYnJhcmllcyAob3B0aW9uYWwpCiAKLSUgc3Vk
byBtYWtlIGluc3RhbGwKKyAgICAlIHN1ZG8gbWFrZSBpbnN0YWxsCiAKIE9uY2UgeW91IGhhdmUg
Y29tcGlsZWQgdGhlIGNvZGVjLCB0aGVyZSB3aWxsIGJlIGEgb3B1c19kZW1vIGV4ZWN1dGFibGUK
IGluIHRoZSB0b3AgZGlyZWN0b3J5LgpAQCAtMTAyLDcgKzEyMCw4IEBAIHdoaWNoIFNIT1VMRCBi
ZSBydW4gYWZ0ZXIgY29tcGlsaW5nIHRoZSBwYWNrYWdlIGVzcGVjaWFsbHkgdGhlIGZpcnN0CiB0
aW1lIGl0IGlzIHJ1biBvbiBhIG5ldyBwbGF0Zm9ybS4KIAogVG8gcnVuIHRoZSBpbnRlZ3JhdGVk
IHRlc3RzOgotJSBtYWtlIGNoZWNrCisKKyAgICAlIG1ha2UgY2hlY2sKIAogVGhlcmUgaXMgYWxz
byBjb2xsZWN0aW9uIG9mIHN0YW5kYXJkIHRlc3QgdmVjdG9ycyB3aGljaCBhcmUgbm90CiBpbmNs
dWRlZCBpbiB0aGlzIHBhY2thZ2UgZm9yIHNpemUgcmVhc29ucyBidXQgY2FuIGJlIG9idGFpbmVk
IGZyb206CkBAIC0xMTAsOSArMTI5LDkgQEAgaHR0cHM6Ly9vcHVzLWNvZGVjLm9yZy90ZXN0dmVj
dG9ycy9vcHVzX3Rlc3R2ZWN0b3JzLnRhci5negogCiBUbyBydW4gY29tcGFyZSB0aGUgY29kZSB0
byB0aGVzZSB0ZXN0IHZlY3RvcnM6CiAKLSUgY3VybCAtTyBodHRwczovL29wdXMtY29kZWMub3Jn
L3Rlc3R2ZWN0b3JzL29wdXNfdGVzdHZlY3RvcnMudGFyLmd6Ci0lIHRhciAtenhmIG9wdXNfdGVz
dHZlY3RvcnMudGFyLmd6Ci0lIC4vdGVzdHMvcnVuX3ZlY3RvcnMuc2ggLi8gb3B1c190ZXN0dmVj
dG9ycyA0ODAwMAorICAgICUgY3VybCAtT0wgaHR0cHM6Ly9vcHVzLWNvZGVjLm9yZy90ZXN0dmVj
dG9ycy9vcHVzX3Rlc3R2ZWN0b3JzLnRhci5negorICAgICUgdGFyIC16eGYgb3B1c190ZXN0dmVj
dG9ycy50YXIuZ3oKKyAgICAlIC4vdGVzdHMvcnVuX3ZlY3RvcnMuc2ggLi8gb3B1c190ZXN0dmVj
dG9ycyA0ODAwMAogCiA9PSBQb3J0YWJpbGl0eSBub3RlcyA9PQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL1JFQURN
RS5kcmFmdCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvUkVBRE1FLmRyYWZ0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhkOGUyNGRmMjJmZjg0YTZkMWEyYjlh
ZTY2OTE4N2ZiMjg3YTMyNGIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL1JFQURNRS5kcmFmdApAQCAtMCww
ICsxLDU0IEBACitUbyBidWlsZCB0aGlzIHNvdXJjZSBjb2RlLCBzaW1wbHkgdHlwZToKKworJSBt
YWtlCisKK0lmIHRoaXMgZG9lcyBub3Qgd29yaywgb3IgaWYgeW91IHdhbnQgdG8gY2hhbmdlIHRo
ZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24KKyhlLmcuLCB0byBjb21waWxlIGZvciBhIGZpeGVkLXBv
aW50IGFyY2hpdGVjdHVyZSksIHNpbXBseSBlZGl0IHRoZSBvcHRpb25zCitpbiB0aGUgTWFrZWZp
bGUuCisKK0FuIHVwLXRvLWRhdGUgaW1wbGVtZW50YXRpb24gY29uZm9ybWluZyB0byB0aGlzIHN0
YW5kYXJkIGlzIGF2YWlsYWJsZSBpbiBhCitHaXQgcmVwb3NpdG9yeSBhdCBodHRwczovL2dpdC54
aXBoLm9yZy9vcHVzLmdpdCBvciBvbiBhIHdlYnNpdGUgYXQ6CitodHRwczovL29wdXMtY29kZWMu
b3JnLworSG93ZXZlciwgYWx0aG91Z2ggdGhhdCBpbXBsZW1lbnRhdGlvbiBpcyBleHBlY3RlZCB0
byByZW1haW4gY29uZm9ybWFudAord2l0aCB0aGUgc3RhbmRhcmQsIGl0IGlzIHRoZSBjb2RlIGlu
IHRoaXMgUkZDIHRoYXQgc2hhbGwgcmVtYWluIG5vcm1hdGl2ZS4KK1RvIGJ1aWxkIGZyb20gdGhl
IGdpdCByZXBvc2l0b3J5IGluc3RlYWQgb2YgdXNpbmcgdGhpcyBSRkMsIGZvbGxvdyB0aGVzZQor
c3RlcHM6CisKKzEpIENsb25lIHRoZSByZXBvc2l0b3J5IChsYXRlc3QgaW1wbGVtZW50YXRpb24g
b2YgdGhpcyBzdGFuZGFyZCBhdCB0aGUgdGltZQorb2YgcHVibGljYXRpb24pCisKKyUgZ2l0IGNs
b25lIGh0dHBzOi8vZ2l0LnhpcGgub3JnL29wdXMuZ2l0CislIGNkIG9wdXMKKworMikgQ29tcGls
ZQorCislIC4vYXV0b2dlbi5zaAorJSAuL2NvbmZpZ3VyZQorJSBtYWtlCisKK09uY2UgeW91IGhh
dmUgY29tcGlsZWQgdGhlIGNvZGVjLCB0aGVyZSB3aWxsIGJlIGEgb3B1c19kZW1vIGV4ZWN1dGFi
bGUgaW4KK3RoZSB0b3AgZGlyZWN0b3J5LgorCitVc2FnZTogb3B1c19kZW1vIFstZV0gPGFwcGxp
Y2F0aW9uPiA8c2FtcGxpbmcgcmF0ZSAoSHopPiA8Y2hhbm5lbHMgKDEvMik+CisgICAgICAgICA8
Yml0cyBwZXIgc2Vjb25kPiBbb3B0aW9uc10gPGlucHV0PiA8b3V0cHV0PgorICAgICAgIG9wdXNf
ZGVtbyAtZCA8c2FtcGxpbmcgcmF0ZSAoSHopPiA8Y2hhbm5lbHMgKDEvMik+IFtvcHRpb25zXQor
ICAgICAgICAgPGlucHV0PiA8b3V0cHV0PgorCittb2RlOiB2b2lwIHwgYXVkaW8gfCByZXN0cmlj
dGVkLWxvd2RlbGF5CitvcHRpb25zOgorLWUgICAgICAgICAgICAgICAgICAgOiBvbmx5IHJ1bnMg
dGhlIGVuY29kZXIgKG91dHB1dCB0aGUgYml0LXN0cmVhbSkKKy1kICAgICAgICAgICAgICAgICAg
IDogb25seSBydW5zIHRoZSBkZWNvZGVyIChyZWFkcyB0aGUgYml0LXN0cmVhbSBhcyBpbnB1dCkK
Ky1jYnIgICAgICAgICAgICAgICAgIDogZW5hYmxlIGNvbnN0YW50IGJpdHJhdGU7IGRlZmF1bHQ6
IHZhcmlhYmxlIGJpdHJhdGUKKy1jdmJyICAgICAgICAgICAgICAgIDogZW5hYmxlIGNvbnN0cmFp
bmVkIHZhcmlhYmxlIGJpdHJhdGU7IGRlZmF1bHQ6IHVuY29uc3RyYWluZWQKKy1iYW5kd2lkdGgg
PE5CfE1CfFdCfFNXQnxGQj4gOiBhdWRpbyBiYW5kd2lkdGggKGZyb20gbmFycm93YmFuZCB0byBm
dWxsYmFuZCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDogc2FtcGxp
bmcgcmF0ZQorLWZyYW1lc2l6ZSA8Mi41fDV8MTB8MjB8NDB8NjA+IDogZnJhbWUgc2l6ZSBpbiBt
czsgZGVmYXVsdDogMjAKKy1tYXhfcGF5bG9hZCA8Ynl0ZXM+IDogbWF4aW11bSBwYXlsb2FkIHNp
emUgaW4gYnl0ZXMsIGRlZmF1bHQ6IDEwMjQKKy1jb21wbGV4aXR5IDxjb21wPiAgIDogY29tcGxl
eGl0eSwgMCAobG93ZXN0KSAuLi4gMTAgKGhpZ2hlc3QpOyBkZWZhdWx0OiAxMAorLWluYmFuZGZl
YyAgICAgICAgICAgOiBlbmFibGUgU0lMSyBpbmJhbmQgRkVDCistZm9yY2Vtb25vICAgICAgICAg
ICA6IGZvcmNlIG1vbm8gZW5jb2RpbmcsIGV2ZW4gZm9yIHN0ZXJlbyBpbnB1dAorLWR0eCAgICAg
ICAgICAgICAgICAgOiBlbmFibGUgU0lMSyBEVFgKKy1sb3NzIDxwZXJjPiAgICAgICAgIDogc2lt
dWxhdGUgcGFja2V0IGxvc3MsIGluIHBlcmNlbnQgKDAtMTAwKTsgZGVmYXVsdDogMAorCitpbnB1
dCBhbmQgb3V0cHV0IGFyZSBsaXR0bGUgZW5kaWFuIHNpZ25lZCAxNi1iaXQgUENNIGZpbGVzIG9y
IG9wdXMgYml0c3RyZWFtcword2l0aCBzaW1wbGUgb3B1c19kZW1vIHByb3ByaWV0YXJ5IGZyYW1p
bmcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2F1dG9nZW4uc2ggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2F1dG9nZW4uc2gKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzgwZDFm
M2NhNmRjY2JjNDcxZWNmMmRlYWRlODM2ZDhlZDhmMmEyMAotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvYXV0
b2dlbi5zaApAQCAtMCwwICsxLDE0IEBACisjIS9iaW4vc2gKKyMgQ29weXJpZ2h0IChjKSAyMDEw
LTIwMTUgWGlwaC5PcmcgRm91bmRhdGlvbiBhbmQgY29udHJpYnV0b3JzLgorIyBVc2Ugb2YgdGhp
cyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2Fu
IGJlCisjIGZvdW5kIGluIHRoZSBDT1BZSU5HIGZpbGUuCisKKyMgUnVuIHRoaXMgdG8gc2V0IHVw
IHRoZSBidWlsZCBzeXN0ZW06IGNvbmZpZ3VyZSwgbWFrZWZpbGVzLCBldGMuCitzZXQgLWUKKwor
c3JjZGlyPWBkaXJuYW1lICQwYAordGVzdCAtbiAiJHNyY2RpciIgJiYgY2QgIiRzcmNkaXIiCisK
K2VjaG8gIlVwZGF0aW5nIGJ1aWxkIGNvbmZpZ3VyYXRpb24gZmlsZXMsIHBsZWFzZSB3YWl0Li4u
LiIKKworYXV0b3JlY29uZiAtaXNmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvX2tpc3NfZmZ0X2d1dHMuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9fa2lzc19mZnRfZ3V0cy5oCmluZGV4IDVlM2Q1OGZkNjY0MWU1M2RmYjU2YTJmMzJkNThj
OGNkOTcxN2E0N2YuLjE3MzkyYjNlOTA5NzdiNzQwNDkwNDliN2ZhMDFhOWY4Y2IwZmMwOTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9fa2lzc19mZnRfZ3V0cy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9fa2lzc19mZnRfZ3V0cy5o
CkBAIC01OCwxMiArNTgsMTIgQEAKICMgICBkZWZpbmUgU19NVUwoYSxiKSBNVUxUMTZfMzJfUTE1
KGIsIGEpCiAKICMgICBkZWZpbmUgQ19NVUwobSxhLGIpIFwKLSAgICAgIGRveyAobSkuciA9IFNV
QjMyKFNfTVVMKChhKS5yLChiKS5yKSAsIFNfTVVMKChhKS5pLChiKS5pKSk7IFwKLSAgICAgICAg
ICAobSkuaSA9IEFERDMyKFNfTVVMKChhKS5yLChiKS5pKSAsIFNfTVVMKChhKS5pLChiKS5yKSk7
IH13aGlsZSgwKQorICAgICAgZG97IChtKS5yID0gU1VCMzJfb3ZmbHcoU19NVUwoKGEpLnIsKGIp
LnIpICwgU19NVUwoKGEpLmksKGIpLmkpKTsgXAorICAgICAgICAgIChtKS5pID0gQUREMzJfb3Zm
bHcoU19NVUwoKGEpLnIsKGIpLmkpICwgU19NVUwoKGEpLmksKGIpLnIpKTsgfXdoaWxlKDApCiAK
ICMgICBkZWZpbmUgQ19NVUxDKG0sYSxiKSBcCi0gICAgICBkb3sgKG0pLnIgPSBBREQzMihTX01V
TCgoYSkuciwoYikucikgLCBTX01VTCgoYSkuaSwoYikuaSkpOyBcCi0gICAgICAgICAgKG0pLmkg
PSBTVUIzMihTX01VTCgoYSkuaSwoYikucikgLCBTX01VTCgoYSkuciwoYikuaSkpOyB9d2hpbGUo
MCkKKyAgICAgIGRveyAobSkuciA9IEFERDMyX292Zmx3KFNfTVVMKChhKS5yLChiKS5yKSAsIFNf
TVVMKChhKS5pLChiKS5pKSk7IFwKKyAgICAgICAgICAobSkuaSA9IFNVQjMyX292Zmx3KFNfTVVM
KChhKS5pLChiKS5yKSAsIFNfTVVMKChhKS5yLChiKS5pKSk7IH13aGlsZSgwKQogCiAjICAgZGVm
aW5lIENfTVVMQllTQ0FMQVIoIGMsIHMgKSBcCiAgICAgICBkb3sgKGMpLnIgPSAgU19NVUwoIChj
KS5yICwgcyApIDtcCkBAIC03NywxNyArNzcsMTcgQEAKICAgICAgICAgICAgICAgICBESVZTQ0FM
QVIoIChjKS5pICAsIGRpdik7IH13aGlsZSAoMCkKIAogI2RlZmluZSAgQ19BREQoIHJlcywgYSxi
KVwKLSAgICBkbyB7KHJlcykucj1BREQzMigoYSkuciwoYikucik7ICAocmVzKS5pPUFERDMyKChh
KS5pLChiKS5pKTsgXAorICAgIGRvIHsocmVzKS5yPUFERDMyX292Zmx3KChhKS5yLChiKS5yKTsg
IChyZXMpLmk9QUREMzJfb3ZmbHcoKGEpLmksKGIpLmkpOyBcCiAgICAgfXdoaWxlKDApCiAjZGVm
aW5lICBDX1NVQiggcmVzLCBhLGIpXAotICAgIGRvIHsocmVzKS5yPVNVQjMyKChhKS5yLChiKS5y
KTsgIChyZXMpLmk9U1VCMzIoKGEpLmksKGIpLmkpOyBcCisgICAgZG8geyhyZXMpLnI9U1VCMzJf
b3ZmbHcoKGEpLnIsKGIpLnIpOyAgKHJlcykuaT1TVUIzMl9vdmZsdygoYSkuaSwoYikuaSk7IFwK
ICAgICB9d2hpbGUoMCkKICNkZWZpbmUgQ19BRERUTyggcmVzICwgYSlcCi0gICAgZG8geyhyZXMp
LnIgPSBBREQzMigocmVzKS5yLCAoYSkucik7ICAocmVzKS5pID0gQUREMzIoKHJlcykuaSwoYSku
aSk7XAorICAgIGRvIHsocmVzKS5yID0gQUREMzJfb3ZmbHcoKHJlcykuciwgKGEpLnIpOyAgKHJl
cykuaSA9IEFERDMyX292Zmx3KChyZXMpLmksKGEpLmkpO1wKICAgICB9d2hpbGUoMCkKIAogI2Rl
ZmluZSBDX1NVQkZST00oIHJlcyAsIGEpXAotICAgIGRvIHsocmVzKS5yID0gQUREMzIoKHJlcyku
ciwoYSkucik7ICAocmVzKS5pID0gU1VCMzIoKHJlcykuaSwoYSkuaSk7IFwKKyAgICBkbyB7KHJl
cykuciA9IEFERDMyX292Zmx3KChyZXMpLnIsKGEpLnIpOyAgKHJlcykuaSA9IFNVQjMyX292Zmx3
KChyZXMpLmksKGEpLmkpOyBcCiAgICAgfXdoaWxlKDApCiAKICNpZiBkZWZpbmVkKE9QVVNfQVJN
X0lOTElORV9BU00pCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJjaC5oIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FyY2guaAppbmRleCA4
Y2VhYjVmZTEwZTkzNDExMzU5MmFkZTkzMzk5Mzk3NzFmNGEyYTAxLi5kMWU2NDU3YzU0YTA3YzZl
YzVjM2EwMzA1MTBkYThhYjQyMzU1MDA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJjaC5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9hcmNoLmgKQEAgLTQ2LDYgKzQ2LDE0IEBACiAjICBlbmRpZgogIyBlbmRpZgogCisjaWYgT1BV
U19HTlVDX1BSRVJFUSgzLCAwKQorI2RlZmluZSBvcHVzX2xpa2VseSh4KSAgICAgICAoX19idWls
dGluX2V4cGVjdCghISh4KSwgMSkpCisjZGVmaW5lIG9wdXNfdW5saWtlbHkoeCkgICAgIChfX2J1
aWx0aW5fZXhwZWN0KCEhKHgpLCAwKSkKKyNlbHNlCisjZGVmaW5lIG9wdXNfbGlrZWx5KHgpICAg
ICAgICghISh4KSkKKyNkZWZpbmUgb3B1c191bmxpa2VseSh4KSAgICAgKCEhKHgpKQorI2VuZGlm
CisKICNkZWZpbmUgQ0VMVF9TSUdfU0NBTEUgMzI3NjguZgogCiAjZGVmaW5lIGNlbHRfZmF0YWwo
c3RyKSBfY2VsdF9mYXRhbChzdHIsIF9fRklMRV9fLCBfX0xJTkVfXyk7CkBAIC05Myw2ICsxMDEs
NyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBfY2VsdF9mYXRhbChjb25zdCBjaGFyICpzdHIs
IGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lKQogCiB0eXBlZGVmIG9wdXNfaW50MTYgb3B1c192
YWwxNjsKIHR5cGVkZWYgb3B1c19pbnQzMiBvcHVzX3ZhbDMyOwordHlwZWRlZiBvcHVzX2ludDY0
IG9wdXNfdmFsNjQ7CiAKIHR5cGVkZWYgb3B1c192YWwzMiBjZWx0X3NpZzsKIHR5cGVkZWYgb3B1
c192YWwxNiBjZWx0X25vcm07CkBAIC0xMDEsNiArMTEwLDkgQEAgdHlwZWRlZiBvcHVzX3ZhbDMy
IGNlbHRfZW5lcjsKICNkZWZpbmUgUTE1T05FIDMyNzY3CiAKICNkZWZpbmUgU0lHX1NISUZUIDEy
CisvKiBTYWZlIHNhdHVyYXRpb24gdmFsdWUgZm9yIDMyLWJpdCBzaWduYWxzLiBTaG91bGQgYmUg
bGVzcyB0aGFuCisgICAyXjMxKigxLTAuODUpIHRvIGF2b2lkIGJsb3dpbmcgdXAgb24gREMgYXQg
ZGVlbXBoYXNpcy4qLworI2RlZmluZSBTSUdfU0FUICgzMDAwMDAwMDApCiAKICNkZWZpbmUgTk9S
TV9TQ0FMSU5HIDE2Mzg0CiAKQEAgLTE0Nyw2ICsxNTksNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUg
b3B1c19pbnQxNiBTQVQxNihvcHVzX2ludDMyIHgpIHsKIAogdHlwZWRlZiBmbG9hdCBvcHVzX3Zh
bDE2OwogdHlwZWRlZiBmbG9hdCBvcHVzX3ZhbDMyOwordHlwZWRlZiBmbG9hdCBvcHVzX3ZhbDY0
OwogCiB0eXBlZGVmIGZsb2F0IGNlbHRfc2lnOwogdHlwZWRlZiBmbG9hdCBjZWx0X25vcm07CkBA
IC0xODYsNiArMTk5LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIGludCBjZWx0X2lzbmFuKGZsb2F0
IHgpCiAKICNkZWZpbmUgTkVHMTYoeCkgKC0oeCkpCiAjZGVmaW5lIE5FRzMyKHgpICgtKHgpKQor
I2RlZmluZSBORUczMl9vdmZsdyh4KSAoLSh4KSkKICNkZWZpbmUgRVhUUkFDVDE2KHgpICh4KQog
I2RlZmluZSBFWFRFTkQzMih4KSAoeCkKICNkZWZpbmUgU0hSMTYoYSxzaGlmdCkgKGEpCkBAIC0y
MDIsNiArMjE2LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIGludCBjZWx0X2lzbmFuKGZsb2F0IHgp
CiAjZGVmaW5lIFNBVFVSQVRFMTYoeCkgICAoeCkKIAogI2RlZmluZSBST1VORDE2KGEsc2hpZnQp
ICAoYSkKKyNkZWZpbmUgU1JPVU5EMTYoYSxzaGlmdCkgKGEpCiAjZGVmaW5lIEhBTEYxNih4KSAg
ICAgICAoLjVmKih4KSkKICNkZWZpbmUgSEFMRjMyKHgpICAgICAgICguNWYqKHgpKQogCkBAIC0y
MDksNiArMjI0LDggQEAgc3RhdGljIE9QVVNfSU5MSU5FIGludCBjZWx0X2lzbmFuKGZsb2F0IHgp
CiAjZGVmaW5lIFNVQjE2KGEsYikgKChhKS0oYikpCiAjZGVmaW5lIEFERDMyKGEsYikgKChhKSso
YikpCiAjZGVmaW5lIFNVQjMyKGEsYikgKChhKS0oYikpCisjZGVmaW5lIEFERDMyX292Zmx3KGEs
YikgKChhKSsoYikpCisjZGVmaW5lIFNVQjMyX292Zmx3KGEsYikgKChhKS0oYikpCiAjZGVmaW5l
IE1VTFQxNl8xNl8xNihhLGIpICAgICAoKGEpKihiKSkKICNkZWZpbmUgTVVMVDE2XzE2KGEsYikg
ICAgICgob3B1c192YWwzMikoYSkqKG9wdXNfdmFsMzIpKGIpKQogI2RlZmluZSBNQUMxNl8xNihj
LGEsYikgICAgICgoYykrKG9wdXNfdmFsMzIpKGEpKihvcHVzX3ZhbDMyKShiKSkKQEAgLTI0Myw5
ICsyNjAsOSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgaW50IGNlbHRfaXNuYW4oZmxvYXQgeCkKIAog
I2lmbmRlZiBHTE9CQUxfU1RBQ0tfU0laRQogI2lmZGVmIEZJWEVEX1BPSU5UCi0jZGVmaW5lIEdM
T0JBTF9TVEFDS19TSVpFIDEwMDAwMAorI2RlZmluZSBHTE9CQUxfU1RBQ0tfU0laRSAxMjAwMDAK
ICNlbHNlCi0jZGVmaW5lIEdMT0JBTF9TVEFDS19TSVpFIDEwMDAwMAorI2RlZmluZSBHTE9CQUxf
U1RBQ0tfU0laRSAxMjAwMDAKICNlbmRpZgogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0v
YXJtMmdudS5wbCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY2VsdC9hcm0vYXJtMmdudS5wbAppbmRleCA2YzkyMmFjODE5ZDdlMDg4OWJk
YmI3MmM0ZThiZWM5Y2Y2YmU1ZDRiLi5hMjg5NWY3NDQ1ZTg5NDMzNjY5MTUyZTNjNDg5MTE2ZDA4
NjBhN2I5IDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2FybTJnbnUucGwKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9hcm0y
Z251LnBsCkBAIC0xNjQsMTEgKzE2NCwxMSBAQCB3aGlsZSAoPD4pIHsKICAgICAgICAgJHByZWZp
eCA9ICIiOwogICAgICAgICBpZiAoJHByb2MpCiAgICAgICAgIHsKLSAgICAgICAgICAgICRwcmVm
aXggPSAkcHJlZml4LnNwcmludGYoIlx0LnR5cGVcdCVzLCAlJWZ1bmN0aW9uOyAiLCRwcm9jKSB1
bmxlc3MgKCRhcHBsZSk7CisgICAgICAgICAgICAkcHJlZml4ID0gJHByZWZpeC5zcHJpbnRmKCJc
dC50eXBlXHQlcywgJSVmdW5jdGlvbiIsICRwcm9jKSB1bmxlc3MgKCRhcHBsZSk7CiAgICAgICAg
ICAgICAjIE1ha2Ugc3VyZSB3ZSAkcHJlZml4IGlzbid0IGVtcHR5IGhlcmUgKGZvciB0aGUgJGFw
cGxlIGNhc2UpLgogICAgICAgICAgICAgIyBXZSBoYW5kbGUgbWFuZ2xpbmcgdGhlIGxhYmVsIGhl
cmUsIG1ha2Ugc3VyZSBpdCBkb2Vzbid0IG1hdGNoCiAgICAgICAgICAgICAjIHRoZSBsYWJlbCBo
YW5kbGluZyBiZWxvdyAoaWYgJHByZWZpeCB3b3VsZCBiZSBlbXB0eSkuCi0gICAgICAgICAgICAk
cHJlZml4ID0gIjsgIjsKKyAgICAgICAgICAgICRwcmVmaXggPSAkcHJlZml4LiI7ICI7CiAgICAg
ICAgICAgICBwdXNoKEBwcm9jX3N0YWNrLCAkcHJvYyk7CiAgICAgICAgICAgICBzL15bQS1aYS16
X1wuXVx3Ky8kc3ltcHJlZml4JCY6LzsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9h
cm1fY2VsdF9tYXAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vYXJtX2NlbHRfbWFwLmMKaW5kZXggNGQ0ZDA2OWE4NmZj
Mjc3YWE2MmEwOTA0ZTMxMjU2MDRmYzk2OWNjOS4uY2E5ODhiNjZmNTVkMTdjMTE2ZjBiN2ExOWRi
MWM2YTFiY2I0YjYyMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9hcm1fY2VsdF9tYXAuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvYXJtL2FybV9jZWx0X21hcC5jCkBAIC0zNSwxMiArMzUsMjkgQEAKIAogI2lmIGRlZmluZWQo
T1BVU19IQVZFX1JUQ0QpCiAKKyMgaWYgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lO
VFIpICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKQorb3B1c192YWwzMiAo
KmNvbnN0IENFTFRfSU5ORVJfUFJPRF9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNf
dmFsMTYgKngsIGNvbnN0IG9wdXNfdmFsMTYgKnksIGludCBOKSA9IHsKKyAgY2VsdF9pbm5lcl9w
cm9kX2MsICAgLyogQVJNdjQgKi8KKyAgY2VsdF9pbm5lcl9wcm9kX2MsICAgLyogRURTUCAqLwor
ICBjZWx0X2lubmVyX3Byb2RfYywgICAvKiBNZWRpYSAqLworICBjZWx0X2lubmVyX3Byb2RfbmVv
biAvKiBORU9OICovCit9OworCit2b2lkICgqY29uc3QgRFVBTF9JTk5FUl9QUk9EX0lNUExbT1BV
U19BUkNITUFTSysxXSkoY29uc3Qgb3B1c192YWwxNiAqeCwgY29uc3Qgb3B1c192YWwxNiAqeTAx
LCBjb25zdCBvcHVzX3ZhbDE2ICp5MDIsCisgICAgICBpbnQgTiwgb3B1c192YWwzMiAqeHkxLCBv
cHVzX3ZhbDMyICp4eTIpID0geworICBkdWFsX2lubmVyX3Byb2RfYywgICAvKiBBUk12NCAqLwor
ICBkdWFsX2lubmVyX3Byb2RfYywgICAvKiBFRFNQICovCisgIGR1YWxfaW5uZXJfcHJvZF9jLCAg
IC8qIE1lZGlhICovCisgIGR1YWxfaW5uZXJfcHJvZF9uZW9uIC8qIE5FT04gKi8KK307CisjIGVu
ZGlmCisKICMgaWYgZGVmaW5lZChGSVhFRF9QT0lOVCkKICMgIGlmICgoZGVmaW5lZChPUFVTX0FS
TV9NQVlfSEFWRV9ORU9OKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT04pKSB8fCBc
CiAgICAgKGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTUVESUEpICYmICFkZWZpbmVkKE9QVVNf
QVJNX1BSRVNVTUVfTUVESUEpKSB8fCBcCiAgICAgKGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVf
RURTUCkgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9FRFNQKSkpCiBvcHVzX3ZhbDMyICgq
Y29uc3QgQ0VMVF9QSVRDSF9YQ09SUl9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNf
dmFsMTYgKiwKLSAgICBjb25zdCBvcHVzX3ZhbDE2ICosIG9wdXNfdmFsMzIgKiwgaW50ICwgaW50
KSA9IHsKKyAgICBjb25zdCBvcHVzX3ZhbDE2ICosIG9wdXNfdmFsMzIgKiwgaW50LCBpbnQsIGlu
dCkgPSB7CiAgIGNlbHRfcGl0Y2hfeGNvcnJfYywgICAgICAgICAgICAgICAvKiBBUk12NCAqLwog
ICBNQVlfSEFWRV9FRFNQKGNlbHRfcGl0Y2hfeGNvcnIpLCAgLyogRURTUCAqLwogICBNQVlfSEFW
RV9NRURJQShjZWx0X3BpdGNoX3hjb3JyKSwgLyogTWVkaWEgKi8KQEAgLTUxLDcgKzY4LDcgQEAg
b3B1c192YWwzMiAoKmNvbnN0IENFTFRfUElUQ0hfWENPUlJfSU1QTFtPUFVTX0FSQ0hNQVNLKzFd
KShjb25zdCBvcHVzX3ZhbDE2ICosCiAjIGVsc2UgLyogIUZJWEVEX1BPSU5UICovCiAjICBpZiBk
ZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikgJiYgIWRlZmluZWQoT1BVU19BUk1f
UFJFU1VNRV9ORU9OX0lOVFIpCiB2b2lkICgqY29uc3QgQ0VMVF9QSVRDSF9YQ09SUl9JTVBMW09Q
VVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNfdmFsMTYgKiwKLSAgICBjb25zdCBvcHVzX3ZhbDE2
ICosIG9wdXNfdmFsMzIgKiwgaW50LCBpbnQpID0geworICAgIGNvbnN0IG9wdXNfdmFsMTYgKiwg
b3B1c192YWwzMiAqLCBpbnQsIGludCwgaW50KSA9IHsKICAgY2VsdF9waXRjaF94Y29ycl9jLCAg
ICAgICAgICAgICAgLyogQVJNdjQgKi8KICAgY2VsdF9waXRjaF94Y29ycl9jLCAgICAgICAgICAg
ICAgLyogRURTUCAqLwogICBjZWx0X3BpdGNoX3hjb3JyX2MsICAgICAgICAgICAgICAvKiBNZWRp
YSAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0X25lMTBfZmZ0LmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRf
bmUxMF9mZnQuYwppbmRleCA0MmQ5NmE3MTE3NjBlM2E2ZGRmNGJlNjFjZGY3YmY5NzFhYTc4YWEz
Li5iOGM2MGFiZTk4YjgzNTcxYTBiYzg1ODUwODFhNTdmYWNiNWE1NmE5IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvYXJtL2NlbHRfbmUxMF9mZnQuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfbmUxMF9mZnQuYwpAQCAt
MzYsNyArMzYsNiBAQAogI2VuZGlmCiAjZW5kaWYKIAotI2luY2x1ZGUgPE5FMTBfaW5pdC5oPgog
I2luY2x1ZGUgPE5FMTBfZHNwLmg+CiAjaW5jbHVkZSAib3Nfc3VwcG9ydC5oIgogI2luY2x1ZGUg
Imtpc3NfZmZ0LmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfbmVvbl9pbnRyLmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
YXJtL2NlbHRfbmVvbl9pbnRyLmMKaW5kZXggNDdiYmUzZGMyMmVjOTNjZmViOTM5ODI0OGJkMTQ0
MTI4YzMzMzk3NS4uY2Y0NDM5ODhjZTVmZTUzMjNiODQ0NWNiNjU2YTk5MWE5OGRhNTE0ZiAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L2FybS9jZWx0X25lb25faW50ci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vY2VsdF9uZW9u
X2ludHIuYwpAQCAtMTkxLDEwNyArMTkxLDEwIEBAIHN0YXRpYyB2b2lkIHhjb3JyX2tlcm5lbF9u
ZW9uX2Zsb2F0KGNvbnN0IGZsb2F0MzJfdCAqeCwgY29uc3QgZmxvYXQzMl90ICp5LAogICAgdnN0
MXFfZjMyKHN1bSwgU1VNTSk7CiB9CiAKLS8qCi0gKiBGdW5jdGlvbjogeGNvcnJfa2VybmVsX25l
b25fZmxvYXRfcHJvY2VzczEKLSAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQot
ICogQ29tcHV0ZXMgc2luZ2xlIGNvcnJlbGF0aW9uIHZhbHVlcyBhbmQgc3RvcmVzIGluICpzdW0K
LSAqLwotc3RhdGljIHZvaWQgeGNvcnJfa2VybmVsX25lb25fZmxvYXRfcHJvY2VzczEoY29uc3Qg
ZmxvYXQzMl90ICp4LAotICAgICAgY29uc3QgZmxvYXQzMl90ICp5LCBmbG9hdDMyX3QgKnN1bSwg
aW50IGxlbikgewotICAgZmxvYXQzMng0X3QgWFhbNF07Ci0gICBmbG9hdDMyeDRfdCBZWVs0XTsK
LSAgIGZsb2F0MzJ4Ml90IFhYXzI7Ci0gICBmbG9hdDMyeDJfdCBZWV8yOwotICAgZmxvYXQzMng0
X3QgU1VNTTsKLSAgIGZsb2F0MzJ4Ml90IFNVTU1fMlsyXTsKLSAgIGNvbnN0IGZsb2F0MzJfdCAq
eGkgPSB4OwotICAgY29uc3QgZmxvYXQzMl90ICp5aSA9IHk7Ci0KLSAgIFNVTU0gPSB2ZHVwcV9u
X2YzMigwKTsKLQotICAgLyogV29yayBvbiAxNiB2YWx1ZXMgcGVyIGl0ZXJhdGlvbiAqLwotICAg
d2hpbGUgKGxlbiA+PSAxNikgewotICAgICAgWFhbMF0gPSB2bGQxcV9mMzIoeGkpOwotICAgICAg
eGkgKz0gNDsKLSAgICAgIFhYWzFdID0gdmxkMXFfZjMyKHhpKTsKLSAgICAgIHhpICs9IDQ7Ci0g
ICAgICBYWFsyXSA9IHZsZDFxX2YzMih4aSk7Ci0gICAgICB4aSArPSA0OwotICAgICAgWFhbM10g
PSB2bGQxcV9mMzIoeGkpOwotICAgICAgeGkgKz0gNDsKLQotICAgICAgWVlbMF0gPSB2bGQxcV9m
MzIoeWkpOwotICAgICAgeWkgKz0gNDsKLSAgICAgIFlZWzFdID0gdmxkMXFfZjMyKHlpKTsKLSAg
ICAgIHlpICs9IDQ7Ci0gICAgICBZWVsyXSA9IHZsZDFxX2YzMih5aSk7Ci0gICAgICB5aSArPSA0
OwotICAgICAgWVlbM10gPSB2bGQxcV9mMzIoeWkpOwotICAgICAgeWkgKz0gNDsKLQotICAgICAg
U1VNTSA9IHZtbGFxX2YzMihTVU1NLCBZWVswXSwgWFhbMF0pOwotICAgICAgU1VNTSA9IHZtbGFx
X2YzMihTVU1NLCBZWVsxXSwgWFhbMV0pOwotICAgICAgU1VNTSA9IHZtbGFxX2YzMihTVU1NLCBZ
WVsyXSwgWFhbMl0pOwotICAgICAgU1VNTSA9IHZtbGFxX2YzMihTVU1NLCBZWVszXSwgWFhbM10p
OwotICAgICAgbGVuIC09IDE2OwotICAgfQotCi0gICAvKiBXb3JrIG9uIDggdmFsdWVzICovCi0g
ICBpZiAobGVuID49IDgpIHsKLSAgICAgIFhYWzBdID0gdmxkMXFfZjMyKHhpKTsKLSAgICAgIHhp
ICs9IDQ7Ci0gICAgICBYWFsxXSA9IHZsZDFxX2YzMih4aSk7Ci0gICAgICB4aSArPSA0OwotCi0g
ICAgICBZWVswXSA9IHZsZDFxX2YzMih5aSk7Ci0gICAgICB5aSArPSA0OwotICAgICAgWVlbMV0g
PSB2bGQxcV9mMzIoeWkpOwotICAgICAgeWkgKz0gNDsKLQotICAgICAgU1VNTSA9IHZtbGFxX2Yz
MihTVU1NLCBZWVswXSwgWFhbMF0pOwotICAgICAgU1VNTSA9IHZtbGFxX2YzMihTVU1NLCBZWVsx
XSwgWFhbMV0pOwotICAgICAgbGVuIC09IDg7Ci0gICB9Ci0KLSAgIC8qIFdvcmsgb24gNCB2YWx1
ZXMgKi8KLSAgIGlmIChsZW4gPj0gNCkgewotICAgICAgWFhbMF0gPSB2bGQxcV9mMzIoeGkpOwot
ICAgICAgeGkgKz0gNDsKLSAgICAgIFlZWzBdID0gdmxkMXFfZjMyKHlpKTsKLSAgICAgIHlpICs9
IDQ7Ci0gICAgICBTVU1NID0gdm1sYXFfZjMyKFNVTU0sIFlZWzBdLCBYWFswXSk7Ci0gICAgICBs
ZW4gLT0gNDsKLSAgIH0KLQotICAgLyogU3RhcnQgYWNjdW11bGF0aW5nIHJlc3VsdHMgKi8KLSAg
IFNVTU1fMlswXSA9IHZnZXRfbG93X2YzMihTVU1NKTsKLSAgIGlmIChsZW4gPj0gMikgewotICAg
ICAgLyogV2hpbGUgYXQgaXQsIGNvbnN1bWUgMiBtb3JlIHZhbHVlcyBpZiBhdmFpbGFibGUgKi8K
LSAgICAgIFhYXzIgPSB2bGQxX2YzMih4aSk7Ci0gICAgICB4aSArPSAyOwotICAgICAgWVlfMiA9
IHZsZDFfZjMyKHlpKTsKLSAgICAgIHlpICs9IDI7Ci0gICAgICBTVU1NXzJbMF0gPSB2bWxhX2Yz
MihTVU1NXzJbMF0sIFlZXzIsIFhYXzIpOwotICAgICAgbGVuIC09IDI7Ci0gICB9Ci0gICBTVU1N
XzJbMV0gPSB2Z2V0X2hpZ2hfZjMyKFNVTU0pOwotICAgU1VNTV8yWzBdID0gdmFkZF9mMzIoU1VN
TV8yWzBdLCBTVU1NXzJbMV0pOwotICAgU1VNTV8yWzBdID0gdnBhZGRfZjMyKFNVTU1fMlswXSwg
U1VNTV8yWzBdKTsKLSAgIC8qIE9rLCBub3cgd2UgaGF2ZSByZXN1bHQgYWNjdW11bGF0ZWQgaW4g
U1VNTV8yWzBdLjAgKi8KLQotICAgaWYgKGxlbiA+IDApIHsKLSAgICAgIC8qIENhc2Ugd2hlbiB5
b3UgaGF2ZSBvbmUgdmFsdWUgbGVmdCAqLwotICAgICAgWFhfMiA9IHZsZDFfZHVwX2YzMih4aSk7
Ci0gICAgICBZWV8yID0gdmxkMV9kdXBfZjMyKHlpKTsKLSAgICAgIFNVTU1fMlswXSA9IHZtbGFf
ZjMyKFNVTU1fMlswXSwgWFhfMiwgWVlfMik7Ci0gICB9Ci0KLSAgIHZzdDFfbGFuZV9mMzIoc3Vt
LCBTVU1NXzJbMF0sIDApOwotfQotCiB2b2lkIGNlbHRfcGl0Y2hfeGNvcnJfZmxvYXRfbmVvbihj
b25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCi0gICAgICAgICAgICAg
ICAgICAgICAgICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCkgewor
ICAgICAgICAgICAgICAgICAgICAgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBt
YXhfcGl0Y2gsIGludCBhcmNoKSB7CiAgICBpbnQgaTsKKyAgICh2b2lkKWFyY2g7CiAgICBjZWx0
X2Fzc2VydChtYXhfcGl0Y2ggPiAwKTsKICAgIGNlbHRfYXNzZXJ0KCgoKHVuc2lnbmVkIGNoYXIg
KilfeC0odW5zaWduZWQgY2hhciAqKU5VTEwpJjMpPT0wKTsKIApAQCAtMzAwLDEyICsyMDMsOSBA
QCB2b2lkIGNlbHRfcGl0Y2hfeGNvcnJfZmxvYXRfbmVvbihjb25zdCBvcHVzX3ZhbDE2ICpfeCwg
Y29uc3Qgb3B1c192YWwxNiAqX3ksCiAgICAgICAgICAgICAoZmxvYXQzMl90ICopeGNvcnIraSwg
bGVuKTsKICAgIH0KIAotICAgLyogSW4gY2FzZSBtYXhfcGl0Y2ggaXNuJ3QgbXVsdGlwbGUgb2Yg
NAotICAgICogY29tcHV0ZSBzaW5nbGUgY29ycmVsYXRpb24gdmFsdWUgcGVyIGl0ZXJhdGlvbgot
ICAgICovCisgICAvKiBJbiBjYXNlIG1heF9waXRjaCBpc24ndCBhIG11bHRpcGxlIG9mIDQsIGRv
IG5vbi11bnJvbGxlZCB2ZXJzaW9uLiAqLwogICAgZm9yICg7IGkgPCBtYXhfcGl0Y2g7IGkrKykg
ewotICAgICAgeGNvcnJfa2VybmVsX25lb25fZmxvYXRfcHJvY2VzczEoKGNvbnN0IGZsb2F0MzJf
dCAqKV94LAotICAgICAgICAgICAgKGNvbnN0IGZsb2F0MzJfdCAqKV95K2ksIChmbG9hdDMyX3Qg
Kil4Y29ycitpLCBsZW4pOworICAgICAgeGNvcnJbaV0gPSBjZWx0X2lubmVyX3Byb2RfbmVvbihf
eCwgX3kraSwgbGVuKTsKICAgIH0KIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0
X3BpdGNoX3hjb3JyX2FybS5zIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0X3BpdGNoX3hjb3JyX2FybS5zCmluZGV4
IGY5NmUwYTg4YmJlNjA5ZWQ2MzhiMWE0NGI2N2U5MDM4YTNlZDM0NDcuLjZlODczYWZjMzcxMjcy
NGZlZDgzNzM0YjRiM2NlODE4NGUxOTE5ZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vY2VsdF9waXRj
aF94Y29ycl9hcm0ucworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfcGl0Y2hfeGNvcnJfYXJtLnMKQEAgLTE1
Myw3ICsxNTMsNyBAQCB4Y29ycl9rZXJuZWxfbmVvbl9wcm9jZXNzMQogICBFTkRQCiAKIDsgb3B1
c192YWwzMiBjZWx0X3BpdGNoX3hjb3JyX25lb24ob3B1c192YWwxNiAqX3gsIG9wdXNfdmFsMTYg
Kl95LAotOyAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gpCis7ICBv
cHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCwgaW50IGFyY2gpCiBjZWx0
X3BpdGNoX3hjb3JyX25lb24gUFJPQwogICA7IGlucHV0OgogICA7ICAgcjAgID0gb3B1c192YWwx
NiAqX3gKQEAgLTE2OCw2ICsxNjgsOCBAQCBjZWx0X3BpdGNoX3hjb3JyX25lb24gUFJPQwogICA7
ICAgcjYgID0gaW50ICAgICAgICAgbWF4X3BpdGNoCiAgIDsgICByMTIgPSBpbnQgICAgICAgICBq
CiAgIDsgICBxMTUgPSBpbnQgICAgICAgICBtYXhjb3JyWzRdIChxMTUgaXMgbm90IHVzZWQgYnkg
eGNvcnJfa2VybmVsX25lb24oKSkKKyAgOyBpZ25vcmVkOgorICA7ICAgICAgICAgaW50ICAgICAg
ICAgYXJjaAogICBTVE1GRCAgICAgICAgc3AhLCB7cjQtcjYsIGxyfQogICBMRFIgICAgICAgICAg
cjYsIFtzcCwgIzE2XQogICBWTU9WLlMzMiAgICAgcTE1LCAjMQpAQCAtMzU4LDYgKzM2MCw4IEBA
IGNlbHRfcGl0Y2hfeGNvcnJfZWRzcCBQUk9DCiAgIDsgICByOSAgPSBvcHVzX3ZhbDMyICBzdW0z
CiAgIDsgICByMSAgPSBpbnQgICAgICAgICBtYXhfcGl0Y2gKICAgOyAgIHIxMiA9IGludCAgICAg
ICAgIGoKKyAgOyBpZ25vcmVkOgorICA7ICAgICAgICAgaW50ICAgICAgICAgYXJjaAogICBTVE1G
RCAgICAgICAgc3AhLCB7cjQtcjExLCBscn0KICAgTU9WICAgICAgICAgIHI1LCByMQogICBMRFIg
ICAgICAgICAgcjEsIFtzcCwgIzM2XQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9mZnRfYXJtLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvYXJtL2ZmdF9hcm0uaAppbmRleCAwY2I1NWQ4ZTIyZDJiODdlNjljMGU1NTgwNmRhNDllNThh
NThkZmQ0Li4wYjc4MTc1ZjNhOWFhNjMyMDQ1ZjEzZmFmYjIwZDRlOTE3OTlkMmI1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvYXJtL2ZmdF9hcm0uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZmdF9hcm0uaApAQCAtMzQsNyAr
MzQsNiBAQAogI2lmICFkZWZpbmVkKEZGVF9BUk1fSCkKICNkZWZpbmUgRkZUX0FSTV9ICiAKLSNp
bmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJraXNzX2ZmdC5oIgogCiAjaWYgZGVmaW5lZChI
QVZFX0FSTV9ORTEwKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9maXhlZF9hcm12NC5oIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Fy
bS9maXhlZF9hcm12NC5oCmluZGV4IGVmYjNiMTg5NmE4NjZiMWQ1ZWM4NjFmZWRiYjMzNDU3NWE0
NjRjNGQuLmQ4NDg4OGE3NzJhY2Y5Yjg1MzRiOGUwMzBmMjA0MTg5ZGZmZTc0OGMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9hcm0vZml4ZWRfYXJtdjQuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZpeGVkX2FybXY0LmgKQEAg
LTM3LDcgKzM3LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfdmFsMzIgTVVMVDE2XzMyX1Ex
Nl9hcm12NChvcHVzX3ZhbDE2IGEsIG9wdXNfdmFsMzIgYikKICAgICAgICIjTVVMVDE2XzMyX1Ex
NlxuXHQiCiAgICAgICAic211bGwgJTAsICUxLCAlMiwgJTNcblx0IgogICAgICAgOiAiPSZyIihy
ZF9sbyksICI9JnIiKHJkX2hpKQotICAgICAgOiAiJXIiKGIpLCJyIihhPDwxNikKKyAgICAgIDog
IiVyIihiKSwiciIoU0hMMzIoYSwxNikpCiAgICk7CiAgIHJldHVybiByZF9oaTsKIH0KQEAgLTU0
LDEwICs1NCwxMCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c192YWwzMiBNVUxUMTZfMzJfUTE1
X2FybXY0KG9wdXNfdmFsMTYgYSwgb3B1c192YWwzMiBiKQogICAgICAgIiNNVUxUMTZfMzJfUTE1
XG5cdCIKICAgICAgICJzbXVsbCAlMCwgJTEsICUyLCAlM1xuXHQiCiAgICAgICA6ICI9JnIiKHJk
X2xvKSwgIj0mciIocmRfaGkpCi0gICAgICA6ICIlciIoYiksICJyIihhPDwxNikKKyAgICAgIDog
IiVyIihiKSwgInIiKFNITDMyKGEsMTYpKQogICApOwogICAvKldlIGludGVudGlvbmFsbHkgZG9u
J3QgT1IgaW4gdGhlIGhpZ2ggYml0IG9mIHJkX2xvIGZvciBzcGVlZC4qLwotICByZXR1cm4gcmRf
aGk8PDE7CisgIHJldHVybiBTSEwzMihyZF9oaSwxKTsKIH0KICNkZWZpbmUgTVVMVDE2XzMyX1Ex
NShhLCBiKSAoTVVMVDE2XzMyX1ExNV9hcm12NChhLCBiKSkKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Fy
bS9maXhlZF9hcm12NWUuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vZml4ZWRfYXJtdjVlLmgKaW5kZXggMzZhNjMyMTEw
MTM1N2U0NDdkMjk5ZDM3ZDJhNTVkNzUxYzMwZDkwOS4uNmJmNzNjYmFjZTM0NmJmM2MyODg3ZDIz
OTliNTA4YjZiOGJhNWQ3NyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9maXhlZF9hcm12NWUuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvYXJtL2ZpeGVkX2FybXY1ZS5oCkBAIC01OSw3ICs1OSw3IEBAIHN0YXRpYyBPUFVTX0lO
TElORSBvcHVzX3ZhbDMyIE1VTFQxNl8zMl9RMTVfYXJtdjVlKG9wdXNfdmFsMTYgYSwgb3B1c192
YWwzMiBiKQogICAgICAgOiAiPXIiKHJlcykKICAgICAgIDogInIiKGIpLCAiciIoYSkKICAgKTsK
LSAgcmV0dXJuIHJlczw8MTsKKyAgcmV0dXJuIFNITDMyKHJlcywxKTsKIH0KICNkZWZpbmUgTVVM
VDE2XzMyX1ExNShhLCBiKSAoTVVMVDE2XzMyX1ExNV9hcm12NWUoYSwgYikpCiAKQEAgLTc2LDcg
Kzc2LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfdmFsMzIgTUFDMTZfMzJfUTE1X2FybXY1
ZShvcHVzX3ZhbDMyIGMsIG9wdXNfdmFsMTYgYSwKICAgICAgICIjTUFDMTZfMzJfUTE1XG5cdCIK
ICAgICAgICJzbWxhd2IgJTAsICUxLCAlMiwgJTM7XG4iCiAgICAgICA6ICI9ciIocmVzKQotICAg
ICAgOiAiciIoYjw8MSksICJyIihhKSwgInIiKGMpCisgICAgICA6ICJyIihTSEwzMihiLDEpKSwg
InIiKGEpLCAiciIoYykKICAgKTsKICAgcmV0dXJuIHJlczsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9h
cm0vbWRjdF9hcm0uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vbWRjdF9hcm0uaAppbmRleCA0OWNiYjQ0NTc2MDI4OTFl
NGMzMDZiNTdkN2EwOTk3OTQ1MmQ0ZmMyLi4xNDIwMGJhYzRiMzQ2M2M2ZTcyMmVjZjJhMjFlOThj
OWZkYTMzZDA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL21kY3RfYXJtLmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9t
ZGN0X2FybS5oCkBAIC0zMyw3ICszMyw2IEBACiAjaWYgIWRlZmluZWQoTURDVF9BUk1fSCkKICNk
ZWZpbmUgTURDVF9BUk1fSAogCi0jaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAibWRjdC5o
IgogCiAjaWYgZGVmaW5lZChIQVZFX0FSTV9ORTEwKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9waXRj
aF9hcm0uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9hcm0vcGl0Y2hfYXJtLmgKaW5kZXggMTQzMzExNjllZWI3YjI3YTVhZGIz
MTUyYjFiYzgxM2YzYWZkMjQyMS4uYmVkOGIwNGVhYzExZmM2ZWQ3NzlmY2E5N2QwNGI0ZDJkMDFl
NGI1MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9waXRjaF9hcm0uaAorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL3BpdGNo
X2FybS5oCkBAIC0zMCwxMSArMzAsNDcgQEAKIAogIyBpbmNsdWRlICJhcm1jcHUuaCIKIAorIyBp
ZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikKK29wdXNfdmFsMzIgY2VsdF9p
bm5lcl9wcm9kX25lb24oY29uc3Qgb3B1c192YWwxNiAqeCwgY29uc3Qgb3B1c192YWwxNiAqeSwg
aW50IE4pOwordm9pZCBkdWFsX2lubmVyX3Byb2RfbmVvbihjb25zdCBvcHVzX3ZhbDE2ICp4LCBj
b25zdCBvcHVzX3ZhbDE2ICp5MDEsCisgICAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKnkwMiwgaW50
IE4sIG9wdXNfdmFsMzIgKnh5MSwgb3B1c192YWwzMiAqeHkyKTsKKworIyAgaWYgIWRlZmluZWQo
T1BVU19IQVZFX1JUQ0QpICYmIGRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OKQorIyAgIGRl
ZmluZSBPVkVSUklERV9DRUxUX0lOTkVSX1BST0QgKDEpCisjICAgZGVmaW5lIE9WRVJSSURFX0RV
QUxfSU5ORVJfUFJPRCAoMSkKKyMgICBkZWZpbmUgY2VsdF9pbm5lcl9wcm9kKHgsIHksIE4sIGFy
Y2gpICgodm9pZCkoYXJjaCksIFBSRVNVTUVfTkVPTihjZWx0X2lubmVyX3Byb2QpKHgsIHksIE4p
KQorIyAgIGRlZmluZSBkdWFsX2lubmVyX3Byb2QoeCwgeTAxLCB5MDIsIE4sIHh5MSwgeHkyLCBh
cmNoKSAoKHZvaWQpKGFyY2gpLCBQUkVTVU1FX05FT04oZHVhbF9pbm5lcl9wcm9kKSh4LCB5MDEs
IHkwMiwgTiwgeHkxLCB4eTIpKQorIyAgZW5kaWYKKyMgZW5kaWYKKworIyBpZiAhZGVmaW5lZChP
VkVSUklERV9DRUxUX0lOTkVSX1BST0QpCisjICBpZiBkZWZpbmVkKE9QVVNfSEFWRV9SVENEKSAm
JiAoZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpICYmICFkZWZpbmVkKE9QVVNf
QVJNX1BSRVNVTUVfTkVPTl9JTlRSKSkKK2V4dGVybiBvcHVzX3ZhbDMyICgqY29uc3QgQ0VMVF9J
Tk5FUl9QUk9EX0lNUExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qgb3B1c192YWwxNiAqeCwgY29u
c3Qgb3B1c192YWwxNiAqeSwgaW50IE4pOworIyAgIGRlZmluZSBPVkVSUklERV9DRUxUX0lOTkVS
X1BST0QgKDEpCisjICAgZGVmaW5lIGNlbHRfaW5uZXJfcHJvZCh4LCB5LCBOLCBhcmNoKSAoKCpD
RUxUX0lOTkVSX1BST0RfSU1QTFsoYXJjaCkmT1BVU19BUkNITUFTS10pKHgsIHksIE4pKQorIyAg
ZWxpZiBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKQorIyAgIGRlZmluZSBPVkVS
UklERV9DRUxUX0lOTkVSX1BST0QgKDEpCisjICAgZGVmaW5lIGNlbHRfaW5uZXJfcHJvZCh4LCB5
LCBOLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBjZWx0X2lubmVyX3Byb2RfbmVvbih4LCB5LCBOKSkK
KyMgIGVuZGlmCisjIGVuZGlmCisKKyMgaWYgIWRlZmluZWQoT1ZFUlJJREVfRFVBTF9JTk5FUl9Q
Uk9EKQorIyAgaWYgZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgKGRlZmluZWQoT1BVU19BUk1f
TUFZX0hBVkVfTkVPTl9JTlRSKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5U
UikpCitleHRlcm4gdm9pZCAoKmNvbnN0IERVQUxfSU5ORVJfUFJPRF9JTVBMW09QVVNfQVJDSE1B
U0srMV0pKGNvbnN0IG9wdXNfdmFsMTYgKngsCisgICAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKnkw
MSwgY29uc3Qgb3B1c192YWwxNiAqeTAyLCBpbnQgTiwgb3B1c192YWwzMiAqeHkxLCBvcHVzX3Zh
bDMyICp4eTIpOworIyAgIGRlZmluZSBPVkVSUklERV9EVUFMX0lOTkVSX1BST0QgKDEpCisjICAg
ZGVmaW5lIGR1YWxfaW5uZXJfcHJvZCh4LCB5MDEsIHkwMiwgTiwgeHkxLCB4eTIsIGFyY2gpICgo
KkRVQUxfSU5ORVJfUFJPRF9JTVBMWyhhcmNoKSZPUFVTX0FSQ0hNQVNLXSkoeCwgeTAxLCB5MDIs
IE4sIHh5MSwgeHkyKSkKKyMgIGVsaWYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5U
UikKKyMgICBkZWZpbmUgT1ZFUlJJREVfRFVBTF9JTk5FUl9QUk9EICgxKQorIyAgIGRlZmluZSBk
dWFsX2lubmVyX3Byb2QoeCwgeTAxLCB5MDIsIE4sIHh5MSwgeHkyLCBhcmNoKSAoKHZvaWQpKGFy
Y2gpLCBkdWFsX2lubmVyX3Byb2RfbmVvbih4LCB5MDEsIHkwMiwgTiwgeHkxLCB4eTIpKQorIyAg
ZW5kaWYKKyMgZW5kaWYKKwogIyBpZiBkZWZpbmVkKEZJWEVEX1BPSU5UKQogCiAjICBpZiBkZWZp
bmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT04pCiBvcHVzX3ZhbDMyIGNlbHRfcGl0Y2hfeGNvcnJf
bmVvbihjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCi0gICAgb3B1
c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gpOworICAgIG9wdXNfdmFsMzIg
Knhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3BpdGNoLCBpbnQgYXJjaCk7CiAjICBlbmRpZgogCiAj
ICBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX01FRElBKQpAQCAtNDMsNyArNzksNyBAQCBv
cHVzX3ZhbDMyIGNlbHRfcGl0Y2hfeGNvcnJfbmVvbihjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29u
c3Qgb3B1c192YWwxNiAqX3ksCiAKICMgIGlmIGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfRURT
UCkKIG9wdXNfdmFsMzIgY2VsdF9waXRjaF94Y29ycl9lZHNwKGNvbnN0IG9wdXNfdmFsMTYgKl94
LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKLSAgICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwg
aW50IG1heF9waXRjaCk7CisgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhf
cGl0Y2gsIGludCBhcmNoKTsKICMgIGVuZGlmCiAKICMgIGlmIGRlZmluZWQoT1BVU19IQVZFX1JU
Q0QpICYmIFwKQEAgLTUyLDE4ICs4OCwxNyBAQCBvcHVzX3ZhbDMyIGNlbHRfcGl0Y2hfeGNvcnJf
ZWRzcChjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCiAgICAgIChk
ZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX0VEU1ApICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNV
TUVfRURTUCkpKQogZXh0ZXJuIG9wdXNfdmFsMzIKICgqY29uc3QgQ0VMVF9QSVRDSF9YQ09SUl9J
TVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNfdmFsMTYgKiwKLSAgICAgIGNvbnN0IG9w
dXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQsIGludCk7CisgICAgICBjb25zdCBvcHVzX3Zh
bDE2ICosIG9wdXNfdmFsMzIgKiwgaW50LCBpbnQsIGludCk7CiAjICAgZGVmaW5lIE9WRVJSSURF
X1BJVENIX1hDT1JSICgxKQogIyAgIGRlZmluZSBjZWx0X3BpdGNoX3hjb3JyKF94LCBfeSwgeGNv
cnIsIGxlbiwgbWF4X3BpdGNoLCBhcmNoKSBcCiAgICgoKkNFTFRfUElUQ0hfWENPUlJfSU1QTFso
YXJjaCkmT1BVU19BUkNITUFTS10pKF94LCBfeSwgXAotICAgICAgICB4Y29yciwgbGVuLCBtYXhf
cGl0Y2gpKQorICAgICAgICB4Y29yciwgbGVuLCBtYXhfcGl0Y2gsIGFyY2gpKQogCiAjICBlbGlm
IGRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9FRFNQKSB8fCBcCiAgICAgZGVmaW5lZChPUFVTX0FS
TV9QUkVTVU1FX01FRElBKSB8fCBcCiAgICAgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT04p
CiAjICAgZGVmaW5lIE9WRVJSSURFX1BJVENIX1hDT1JSICgxKQotIyAgIGRlZmluZSBjZWx0X3Bp
dGNoX3hjb3JyKF94LCBfeSwgeGNvcnIsIGxlbiwgbWF4X3BpdGNoLCBhcmNoKSBcCi0gICgodm9p
ZCkoYXJjaCksUFJFU1VNRV9ORU9OKGNlbHRfcGl0Y2hfeGNvcnIpKF94LCBfeSwgeGNvcnIsIGxl
biwgbWF4X3BpdGNoKSkKKyMgICBkZWZpbmUgY2VsdF9waXRjaF94Y29yciAoUFJFU1VNRV9ORU9O
KGNlbHRfcGl0Y2hfeGNvcnIpKQogCiAjICBlbmRpZgogCkBAIC05OSwyNSArMTM0LDI0IEBAIGV4
dGVybiB2b2lkICgqY29uc3QgWENPUlJfS0VSTkVMX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgK
IC8qIEZsb2F0IGNhc2UgKi8KICNpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5U
UikKIHZvaWQgY2VsdF9waXRjaF94Y29ycl9mbG9hdF9uZW9uKGNvbnN0IG9wdXNfdmFsMTYgKl94
LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3BpdGNoKTsKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4
X3BpdGNoLCBpbnQgYXJjaCk7CiAjZW5kaWYKIAogIyAgaWYgZGVmaW5lZChPUFVTX0hBVkVfUlRD
RCkgJiYgXAogICAgIChkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikgJiYgIWRl
ZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpKQogZXh0ZXJuIHZvaWQKICgqY29uc3Qg
Q0VMVF9QSVRDSF9YQ09SUl9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNfdmFsMTYg
KiwKLSAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQsIGludCk7Cisg
ICAgICBjb25zdCBvcHVzX3ZhbDE2ICosIG9wdXNfdmFsMzIgKiwgaW50LCBpbnQsIGludCk7CiAK
ICMgIGRlZmluZSBPVkVSUklERV9QSVRDSF9YQ09SUiAoMSkKICMgIGRlZmluZSBjZWx0X3BpdGNo
X3hjb3JyKF94LCBfeSwgeGNvcnIsIGxlbiwgbWF4X3BpdGNoLCBhcmNoKSBcCiAgICgoKkNFTFRf
UElUQ0hfWENPUlJfSU1QTFsoYXJjaCkmT1BVU19BUkNITUFTS10pKF94LCBfeSwgXAotICAgICAg
ICB4Y29yciwgbGVuLCBtYXhfcGl0Y2gpKQorICAgICAgICB4Y29yciwgbGVuLCBtYXhfcGl0Y2gs
IGFyY2gpKQogCiAjICBlbGlmIGRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpCiAK
ICMgICBkZWZpbmUgT1ZFUlJJREVfUElUQ0hfWENPUlIgKDEpCi0jICAgZGVmaW5lIGNlbHRfcGl0
Y2hfeGNvcnIoX3gsIF95LCB4Y29yciwgbGVuLCBtYXhfcGl0Y2gsIGFyY2gpIFwKLSAgICgodm9p
ZCkoYXJjaCksY2VsdF9waXRjaF94Y29ycl9mbG9hdF9uZW9uKF94LCBfeSwgeGNvcnIsIGxlbiwg
bWF4X3BpdGNoKSkKKyMgICBkZWZpbmUgY2VsdF9waXRjaF94Y29yciBjZWx0X3BpdGNoX3hjb3Jy
X2Zsb2F0X25lb24KIAogIyAgZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9waXRjaF9uZW9u
X2ludHIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9hcm0vcGl0Y2hfbmVvbl9pbnRyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWFjMzhjNDMz
YThhNzg1NTM1Zjk1ZjkzYWVmY2UxZDQzNjEzZmE4MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9h
cm0vcGl0Y2hfbmVvbl9pbnRyLmMKQEAgLTAsMCArMSwyOTAgQEAKKy8qKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgor
Q29weXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworYXJl
IG1ldDoKKy0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKK25vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKK2RvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CistIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRy
dXN0LCBub3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCitwZXJtaXNzaW9uLgorVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UyAiQVMgSVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVU
T1JTIEJFCitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCitDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCitJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCitQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaWZkZWYgSEFWRV9DT05GSUdfSAor
I2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDxhcm1fbmVvbi5oPgorI2lu
Y2x1ZGUgInBpdGNoLmgiCisKKyNpZmRlZiBGSVhFRF9QT0lOVAorCitvcHVzX3ZhbDMyIGNlbHRf
aW5uZXJfcHJvZF9uZW9uKGNvbnN0IG9wdXNfdmFsMTYgKngsIGNvbnN0IG9wdXNfdmFsMTYgKnks
IGludCBOKQoreworICAgIGludCBpOworICAgIG9wdXNfdmFsMzIgeHk7CisgICAgaW50MTZ4OF90
IHhfczE2eDgsIHlfczE2eDg7CisgICAgaW50MzJ4NF90IHh5X3MzMng0ID0gdmR1cHFfbl9zMzIo
MCk7CisgICAgaW50NjR4Ml90IHh5X3M2NHgyOworICAgIGludDY0eDFfdCB4eV9zNjR4MTsKKwor
ICAgIGZvciAoaSA9IDA7IGkgPCBOIC0gNzsgaSArPSA4KSB7CisgICAgICAgIHhfczE2eDggID0g
dmxkMXFfczE2KCZ4W2ldKTsKKyAgICAgICAgeV9zMTZ4OCAgPSB2bGQxcV9zMTYoJnlbaV0pOwor
ICAgICAgICB4eV9zMzJ4NCA9IHZtbGFsX3MxNih4eV9zMzJ4NCwgdmdldF9sb3dfczE2ICh4X3Mx
Nng4KSwgdmdldF9sb3dfczE2ICh5X3MxNng4KSk7CisgICAgICAgIHh5X3MzMng0ID0gdm1sYWxf
czE2KHh5X3MzMng0LCB2Z2V0X2hpZ2hfczE2KHhfczE2eDgpLCB2Z2V0X2hpZ2hfczE2KHlfczE2
eDgpKTsKKyAgICB9CisKKyAgICBpZiAoTiAtIGkgPj0gNCkgeworICAgICAgICBjb25zdCBpbnQx
Nng0X3QgeF9zMTZ4NCA9IHZsZDFfczE2KCZ4W2ldKTsKKyAgICAgICAgY29uc3QgaW50MTZ4NF90
IHlfczE2eDQgPSB2bGQxX3MxNigmeVtpXSk7CisgICAgICAgIHh5X3MzMng0ID0gdm1sYWxfczE2
KHh5X3MzMng0LCB4X3MxNng0LCB5X3MxNng0KTsKKyAgICAgICAgaSArPSA0OworICAgIH0KKwor
ICAgIHh5X3M2NHgyID0gdnBhZGRscV9zMzIoeHlfczMyeDQpOworICAgIHh5X3M2NHgxID0gdmFk
ZF9zNjQodmdldF9sb3dfczY0KHh5X3M2NHgyKSwgdmdldF9oaWdoX3M2NCh4eV9zNjR4MikpOwor
ICAgIHh5ICAgICAgID0gdmdldF9sYW5lX3MzMih2cmVpbnRlcnByZXRfczMyX3M2NCh4eV9zNjR4
MSksIDApOworCisgICAgZm9yICg7IGkgPCBOOyBpKyspIHsKKyAgICAgICAgeHkgPSBNQUMxNl8x
Nih4eSwgeFtpXSwgeVtpXSk7CisgICAgfQorCisjaWZkZWYgT1BVU19DSEVDS19BU00KKyAgICBj
ZWx0X2Fzc2VydChjZWx0X2lubmVyX3Byb2RfYyh4LCB5LCBOKSA9PSB4eSk7CisjZW5kaWYKKwor
ICAgIHJldHVybiB4eTsKK30KKwordm9pZCBkdWFsX2lubmVyX3Byb2RfbmVvbihjb25zdCBvcHVz
X3ZhbDE2ICp4LCBjb25zdCBvcHVzX3ZhbDE2ICp5MDEsIGNvbnN0IG9wdXNfdmFsMTYgKnkwMiwK
KyAgICAgICAgaW50IE4sIG9wdXNfdmFsMzIgKnh5MSwgb3B1c192YWwzMiAqeHkyKQoreworICAg
IGludCBpOworICAgIG9wdXNfdmFsMzIgeHkwMSwgeHkwMjsKKyAgICBpbnQxNng4X3QgeF9zMTZ4
OCwgeTAxX3MxNng4LCB5MDJfczE2eDg7CisgICAgaW50MzJ4NF90IHh5MDFfczMyeDQgPSB2ZHVw
cV9uX3MzMigwKTsKKyAgICBpbnQzMng0X3QgeHkwMl9zMzJ4NCA9IHZkdXBxX25fczMyKDApOwor
ICAgIGludDY0eDJfdCB4eTAxX3M2NHgyLCB4eTAyX3M2NHgyOworICAgIGludDY0eDFfdCB4eTAx
X3M2NHgxLCB4eTAyX3M2NHgxOworCisgICAgZm9yIChpID0gMDsgaSA8IE4gLSA3OyBpICs9IDgp
IHsKKyAgICAgICAgeF9zMTZ4OCAgICA9IHZsZDFxX3MxNigmeFtpXSk7CisgICAgICAgIHkwMV9z
MTZ4OCAgPSB2bGQxcV9zMTYoJnkwMVtpXSk7CisgICAgICAgIHkwMl9zMTZ4OCAgPSB2bGQxcV9z
MTYoJnkwMltpXSk7CisgICAgICAgIHh5MDFfczMyeDQgPSB2bWxhbF9zMTYoeHkwMV9zMzJ4NCwg
dmdldF9sb3dfczE2ICh4X3MxNng4KSwgdmdldF9sb3dfczE2ICh5MDFfczE2eDgpKTsKKyAgICAg
ICAgeHkwMl9zMzJ4NCA9IHZtbGFsX3MxNih4eTAyX3MzMng0LCB2Z2V0X2xvd19zMTYgKHhfczE2
eDgpLCB2Z2V0X2xvd19zMTYgKHkwMl9zMTZ4OCkpOworICAgICAgICB4eTAxX3MzMng0ID0gdm1s
YWxfczE2KHh5MDFfczMyeDQsIHZnZXRfaGlnaF9zMTYoeF9zMTZ4OCksIHZnZXRfaGlnaF9zMTYo
eTAxX3MxNng4KSk7CisgICAgICAgIHh5MDJfczMyeDQgPSB2bWxhbF9zMTYoeHkwMl9zMzJ4NCwg
dmdldF9oaWdoX3MxNih4X3MxNng4KSwgdmdldF9oaWdoX3MxNih5MDJfczE2eDgpKTsKKyAgICB9
CisKKyAgICBpZiAoTiAtIGkgPj0gNCkgeworICAgICAgICBjb25zdCBpbnQxNng0X3QgeF9zMTZ4
NCAgID0gdmxkMV9zMTYoJnhbaV0pOworICAgICAgICBjb25zdCBpbnQxNng0X3QgeTAxX3MxNng0
ID0gdmxkMV9zMTYoJnkwMVtpXSk7CisgICAgICAgIGNvbnN0IGludDE2eDRfdCB5MDJfczE2eDQg
PSB2bGQxX3MxNigmeTAyW2ldKTsKKyAgICAgICAgeHkwMV9zMzJ4NCA9IHZtbGFsX3MxNih4eTAx
X3MzMng0LCB4X3MxNng0LCB5MDFfczE2eDQpOworICAgICAgICB4eTAyX3MzMng0ID0gdm1sYWxf
czE2KHh5MDJfczMyeDQsIHhfczE2eDQsIHkwMl9zMTZ4NCk7CisgICAgICAgIGkgKz0gNDsKKyAg
ICB9CisKKyAgICB4eTAxX3M2NHgyID0gdnBhZGRscV9zMzIoeHkwMV9zMzJ4NCk7CisgICAgeHkw
Ml9zNjR4MiA9IHZwYWRkbHFfczMyKHh5MDJfczMyeDQpOworICAgIHh5MDFfczY0eDEgPSB2YWRk
X3M2NCh2Z2V0X2xvd19zNjQoeHkwMV9zNjR4MiksIHZnZXRfaGlnaF9zNjQoeHkwMV9zNjR4Mikp
OworICAgIHh5MDJfczY0eDEgPSB2YWRkX3M2NCh2Z2V0X2xvd19zNjQoeHkwMl9zNjR4MiksIHZn
ZXRfaGlnaF9zNjQoeHkwMl9zNjR4MikpOworICAgIHh5MDEgICAgICAgPSB2Z2V0X2xhbmVfczMy
KHZyZWludGVycHJldF9zMzJfczY0KHh5MDFfczY0eDEpLCAwKTsKKyAgICB4eTAyICAgICAgID0g
dmdldF9sYW5lX3MzMih2cmVpbnRlcnByZXRfczMyX3M2NCh4eTAyX3M2NHgxKSwgMCk7CisKKyAg
ICBmb3IgKDsgaSA8IE47IGkrKykgeworICAgICAgICB4eTAxID0gTUFDMTZfMTYoeHkwMSwgeFtp
XSwgeTAxW2ldKTsKKyAgICAgICAgeHkwMiA9IE1BQzE2XzE2KHh5MDIsIHhbaV0sIHkwMltpXSk7
CisgICAgfQorICAgICp4eTEgPSB4eTAxOworICAgICp4eTIgPSB4eTAyOworCisjaWZkZWYgT1BV
U19DSEVDS19BU00KKyAgICB7CisgICAgICAgIG9wdXNfdmFsMzIgeHkxX2MsIHh5Ml9jOworICAg
ICAgICBkdWFsX2lubmVyX3Byb2RfYyh4LCB5MDEsIHkwMiwgTiwgJnh5MV9jLCAmeHkyX2MpOwor
ICAgICAgICBjZWx0X2Fzc2VydCh4eTFfYyA9PSAqeHkxKTsKKyAgICAgICAgY2VsdF9hc3NlcnQo
eHkyX2MgPT0gKnh5Mik7CisgICAgfQorI2VuZGlmCit9CisKKyNlbHNlIC8qICFGSVhFRF9QT0lO
VCAqLworCisvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLworCisjaWZkZWYgT1BVU19DSEVDS19BU00K
KworLyogVGhpcyBwYXJ0IG9mIGNvZGUgc2ltdWxhdGVzIGZsb2F0aW5nLXBvaW50IE5FT04gb3Bl
cmF0aW9ucy4gKi8KKworLyogY2VsdF9pbm5lcl9wcm9kX25lb25fZmxvYXRfY19zaW11bGF0aW9u
KCkgc2ltdWxhdGVzIHRoZSBmbG9hdGluZy1wb2ludCAgICovCisvKiBvcGVyYXRpb25zIG9mIGNl
bHRfaW5uZXJfcHJvZF9uZW9uKCksIGFuZCBib3RoIGZ1bmN0aW9ucyBzaG91bGQgaGF2ZSBiaXQg
Ki8KKy8qIGV4YWN0IG91dHB1dC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworc3RhdGljIG9wdXNfdmFsMzIgY2VsdF9pbm5lcl9w
cm9kX25lb25fZmxvYXRfY19zaW11bGF0aW9uKGNvbnN0IG9wdXNfdmFsMTYgKngsIGNvbnN0IG9w
dXNfdmFsMTYgKnksIGludCBOKQoreworICAgaW50IGk7CisgICBvcHVzX3ZhbDMyIHh5LCB4eTAg
PSAwLCB4eTEgPSAwLCB4eTIgPSAwLCB4eTMgPSAwOworICAgZm9yIChpID0gMDsgaSA8IE4gLSAz
OyBpICs9IDQpIHsKKyAgICAgIHh5MCA9IE1BQzE2XzE2KHh5MCwgeFtpICsgMF0sIHlbaSArIDBd
KTsKKyAgICAgIHh5MSA9IE1BQzE2XzE2KHh5MSwgeFtpICsgMV0sIHlbaSArIDFdKTsKKyAgICAg
IHh5MiA9IE1BQzE2XzE2KHh5MiwgeFtpICsgMl0sIHlbaSArIDJdKTsKKyAgICAgIHh5MyA9IE1B
QzE2XzE2KHh5MywgeFtpICsgM10sIHlbaSArIDNdKTsKKyAgIH0KKyAgIHh5MCArPSB4eTI7Cisg
ICB4eTEgKz0geHkzOworICAgeHkgPSB4eTAgKyB4eTE7CisgICBmb3IgKDsgaSA8IE47IGkrKykg
eworICAgICAgeHkgPSBNQUMxNl8xNih4eSwgeFtpXSwgeVtpXSk7CisgICB9CisgICByZXR1cm4g
eHk7Cit9CisKKy8qIGR1YWxfaW5uZXJfcHJvZF9uZW9uX2Zsb2F0X2Nfc2ltdWxhdGlvbigpIHNp
bXVsYXRlcyB0aGUgZmxvYXRpbmctcG9pbnQgICAqLworLyogb3BlcmF0aW9ucyBvZiBkdWFsX2lu
bmVyX3Byb2RfbmVvbigpLCBhbmQgYm90aCBmdW5jdGlvbnMgc2hvdWxkIGhhdmUgYml0ICovCisv
KiBleGFjdCBvdXRwdXQuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KK3N0YXRpYyB2b2lkIGR1YWxfaW5uZXJfcHJvZF9uZW9uX2Zs
b2F0X2Nfc2ltdWxhdGlvbihjb25zdCBvcHVzX3ZhbDE2ICp4LCBjb25zdCBvcHVzX3ZhbDE2ICp5
MDEsIGNvbnN0IG9wdXNfdmFsMTYgKnkwMiwKKyAgICAgIGludCBOLCBvcHVzX3ZhbDMyICp4eTEs
IG9wdXNfdmFsMzIgKnh5MikKK3sKKyAgIGludCBpOworICAgb3B1c192YWwzMiB4eTAxLCB4eTAy
LCB4eTAxXzAgPSAwLCB4eTAxXzEgPSAwLCB4eTAxXzIgPSAwLCB4eTAxXzMgPSAwLCB4eTAyXzAg
PSAwLCB4eTAyXzEgPSAwLCB4eTAyXzIgPSAwLCB4eTAyXzMgPSAwOworICAgZm9yIChpID0gMDsg
aSA8IE4gLSAzOyBpICs9IDQpIHsKKyAgICAgIHh5MDFfMCA9IE1BQzE2XzE2KHh5MDFfMCwgeFtp
ICsgMF0sIHkwMVtpICsgMF0pOworICAgICAgeHkwMV8xID0gTUFDMTZfMTYoeHkwMV8xLCB4W2kg
KyAxXSwgeTAxW2kgKyAxXSk7CisgICAgICB4eTAxXzIgPSBNQUMxNl8xNih4eTAxXzIsIHhbaSAr
IDJdLCB5MDFbaSArIDJdKTsKKyAgICAgIHh5MDFfMyA9IE1BQzE2XzE2KHh5MDFfMywgeFtpICsg
M10sIHkwMVtpICsgM10pOworICAgICAgeHkwMl8wID0gTUFDMTZfMTYoeHkwMl8wLCB4W2kgKyAw
XSwgeTAyW2kgKyAwXSk7CisgICAgICB4eTAyXzEgPSBNQUMxNl8xNih4eTAyXzEsIHhbaSArIDFd
LCB5MDJbaSArIDFdKTsKKyAgICAgIHh5MDJfMiA9IE1BQzE2XzE2KHh5MDJfMiwgeFtpICsgMl0s
IHkwMltpICsgMl0pOworICAgICAgeHkwMl8zID0gTUFDMTZfMTYoeHkwMl8zLCB4W2kgKyAzXSwg
eTAyW2kgKyAzXSk7CisgICB9CisgICB4eTAxXzAgKz0geHkwMV8yOworICAgeHkwMl8wICs9IHh5
MDJfMjsKKyAgIHh5MDFfMSArPSB4eTAxXzM7CisgICB4eTAyXzEgKz0geHkwMl8zOworICAgeHkw
MSA9IHh5MDFfMCArIHh5MDFfMTsKKyAgIHh5MDIgPSB4eTAyXzAgKyB4eTAyXzE7CisgICBmb3Ig
KDsgaSA8IE47IGkrKykgeworICAgICAgeHkwMSA9IE1BQzE2XzE2KHh5MDEsIHhbaV0sIHkwMVtp
XSk7CisgICAgICB4eTAyID0gTUFDMTZfMTYoeHkwMiwgeFtpXSwgeTAyW2ldKTsKKyAgIH0KKyAg
ICp4eTEgPSB4eTAxOworICAgKnh5MiA9IHh5MDI7Cit9CisKKyNlbmRpZiAvKiBPUFVTX0NIRUNL
X0FTTSAqLworCisvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLworCitvcHVzX3ZhbDMyIGNlbHRfaW5u
ZXJfcHJvZF9uZW9uKGNvbnN0IG9wdXNfdmFsMTYgKngsIGNvbnN0IG9wdXNfdmFsMTYgKnksIGlu
dCBOKQoreworICAgIGludCBpOworICAgIG9wdXNfdmFsMzIgeHk7CisgICAgZmxvYXQzMng0X3Qg
eHlfZjMyeDQgPSB2ZHVwcV9uX2YzMigwKTsKKyAgICBmbG9hdDMyeDJfdCB4eV9mMzJ4MjsKKwor
ICAgIGZvciAoaSA9IDA7IGkgPCBOIC0gNzsgaSArPSA4KSB7CisgICAgICAgIGZsb2F0MzJ4NF90
IHhfZjMyeDQsIHlfZjMyeDQ7CisgICAgICAgIHhfZjMyeDQgID0gdmxkMXFfZjMyKCZ4W2ldKTsK
KyAgICAgICAgeV9mMzJ4NCAgPSB2bGQxcV9mMzIoJnlbaV0pOworICAgICAgICB4eV9mMzJ4NCA9
IHZtbGFxX2YzMih4eV9mMzJ4NCwgeF9mMzJ4NCwgeV9mMzJ4NCk7CisgICAgICAgIHhfZjMyeDQg
ID0gdmxkMXFfZjMyKCZ4W2kgKyA0XSk7CisgICAgICAgIHlfZjMyeDQgID0gdmxkMXFfZjMyKCZ5
W2kgKyA0XSk7CisgICAgICAgIHh5X2YzMng0ID0gdm1sYXFfZjMyKHh5X2YzMng0LCB4X2YzMng0
LCB5X2YzMng0KTsKKyAgICB9CisKKyAgICBpZiAoTiAtIGkgPj0gNCkgeworICAgICAgICBjb25z
dCBmbG9hdDMyeDRfdCB4X2YzMng0ID0gdmxkMXFfZjMyKCZ4W2ldKTsKKyAgICAgICAgY29uc3Qg
ZmxvYXQzMng0X3QgeV9mMzJ4NCA9IHZsZDFxX2YzMigmeVtpXSk7CisgICAgICAgIHh5X2YzMng0
ID0gdm1sYXFfZjMyKHh5X2YzMng0LCB4X2YzMng0LCB5X2YzMng0KTsKKyAgICAgICAgaSArPSA0
OworICAgIH0KKworICAgIHh5X2YzMngyID0gdmFkZF9mMzIodmdldF9sb3dfZjMyKHh5X2YzMng0
KSwgdmdldF9oaWdoX2YzMih4eV9mMzJ4NCkpOworICAgIHh5X2YzMngyID0gdnBhZGRfZjMyKHh5
X2YzMngyLCB4eV9mMzJ4Mik7CisgICAgeHkgICAgICAgPSB2Z2V0X2xhbmVfZjMyKHh5X2YzMngy
LCAwKTsKKworICAgIGZvciAoOyBpIDwgTjsgaSsrKSB7CisgICAgICAgIHh5ID0gTUFDMTZfMTYo
eHksIHhbaV0sIHlbaV0pOworICAgIH0KKworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisgICAgY2Vs
dF9hc3NlcnQoQUJTMzIoY2VsdF9pbm5lcl9wcm9kX25lb25fZmxvYXRfY19zaW11bGF0aW9uKHgs
IHksIE4pIC0geHkpIDw9IFZFUllfU01BTEwpOworI2VuZGlmCisKKyAgICByZXR1cm4geHk7Cit9
CisKK3ZvaWQgZHVhbF9pbm5lcl9wcm9kX25lb24oY29uc3Qgb3B1c192YWwxNiAqeCwgY29uc3Qg
b3B1c192YWwxNiAqeTAxLCBjb25zdCBvcHVzX3ZhbDE2ICp5MDIsCisgICAgICAgIGludCBOLCBv
cHVzX3ZhbDMyICp4eTEsIG9wdXNfdmFsMzIgKnh5MikKK3sKKyAgICBpbnQgaTsKKyAgICBvcHVz
X3ZhbDMyIHh5MDEsIHh5MDI7CisgICAgZmxvYXQzMng0X3QgeHkwMV9mMzJ4NCA9IHZkdXBxX25f
ZjMyKDApOworICAgIGZsb2F0MzJ4NF90IHh5MDJfZjMyeDQgPSB2ZHVwcV9uX2YzMigwKTsKKyAg
ICBmbG9hdDMyeDJfdCB4eTAxX2YzMngyLCB4eTAyX2YzMngyOworCisgICAgZm9yIChpID0gMDsg
aSA8IE4gLSA3OyBpICs9IDgpIHsKKyAgICAgICAgZmxvYXQzMng0X3QgeF9mMzJ4NCwgeTAxX2Yz
Mng0LCB5MDJfZjMyeDQ7CisgICAgICAgIHhfZjMyeDQgICAgPSB2bGQxcV9mMzIoJnhbaV0pOwor
ICAgICAgICB5MDFfZjMyeDQgID0gdmxkMXFfZjMyKCZ5MDFbaV0pOworICAgICAgICB5MDJfZjMy
eDQgID0gdmxkMXFfZjMyKCZ5MDJbaV0pOworICAgICAgICB4eTAxX2YzMng0ID0gdm1sYXFfZjMy
KHh5MDFfZjMyeDQsIHhfZjMyeDQsIHkwMV9mMzJ4NCk7CisgICAgICAgIHh5MDJfZjMyeDQgPSB2
bWxhcV9mMzIoeHkwMl9mMzJ4NCwgeF9mMzJ4NCwgeTAyX2YzMng0KTsKKyAgICAgICAgeF9mMzJ4
NCAgICA9IHZsZDFxX2YzMigmeFtpICsgNF0pOworICAgICAgICB5MDFfZjMyeDQgID0gdmxkMXFf
ZjMyKCZ5MDFbaSArIDRdKTsKKyAgICAgICAgeTAyX2YzMng0ICA9IHZsZDFxX2YzMigmeTAyW2kg
KyA0XSk7CisgICAgICAgIHh5MDFfZjMyeDQgPSB2bWxhcV9mMzIoeHkwMV9mMzJ4NCwgeF9mMzJ4
NCwgeTAxX2YzMng0KTsKKyAgICAgICAgeHkwMl9mMzJ4NCA9IHZtbGFxX2YzMih4eTAyX2YzMng0
LCB4X2YzMng0LCB5MDJfZjMyeDQpOworICAgIH0KKworICAgIGlmIChOIC0gaSA+PSA0KSB7Cisg
ICAgICAgIGNvbnN0IGZsb2F0MzJ4NF90IHhfZjMyeDQgICA9IHZsZDFxX2YzMigmeFtpXSk7Cisg
ICAgICAgIGNvbnN0IGZsb2F0MzJ4NF90IHkwMV9mMzJ4NCA9IHZsZDFxX2YzMigmeTAxW2ldKTsK
KyAgICAgICAgY29uc3QgZmxvYXQzMng0X3QgeTAyX2YzMng0ID0gdmxkMXFfZjMyKCZ5MDJbaV0p
OworICAgICAgICB4eTAxX2YzMng0ID0gdm1sYXFfZjMyKHh5MDFfZjMyeDQsIHhfZjMyeDQsIHkw
MV9mMzJ4NCk7CisgICAgICAgIHh5MDJfZjMyeDQgPSB2bWxhcV9mMzIoeHkwMl9mMzJ4NCwgeF9m
MzJ4NCwgeTAyX2YzMng0KTsKKyAgICAgICAgaSArPSA0OworICAgIH0KKworICAgIHh5MDFfZjMy
eDIgPSB2YWRkX2YzMih2Z2V0X2xvd19mMzIoeHkwMV9mMzJ4NCksIHZnZXRfaGlnaF9mMzIoeHkw
MV9mMzJ4NCkpOworICAgIHh5MDJfZjMyeDIgPSB2YWRkX2YzMih2Z2V0X2xvd19mMzIoeHkwMl9m
MzJ4NCksIHZnZXRfaGlnaF9mMzIoeHkwMl9mMzJ4NCkpOworICAgIHh5MDFfZjMyeDIgPSB2cGFk
ZF9mMzIoeHkwMV9mMzJ4MiwgeHkwMV9mMzJ4Mik7CisgICAgeHkwMl9mMzJ4MiA9IHZwYWRkX2Yz
Mih4eTAyX2YzMngyLCB4eTAyX2YzMngyKTsKKyAgICB4eTAxICAgICAgID0gdmdldF9sYW5lX2Yz
Mih4eTAxX2YzMngyLCAwKTsKKyAgICB4eTAyICAgICAgID0gdmdldF9sYW5lX2YzMih4eTAyX2Yz
MngyLCAwKTsKKworICAgIGZvciAoOyBpIDwgTjsgaSsrKSB7CisgICAgICAgIHh5MDEgPSBNQUMx
Nl8xNih4eTAxLCB4W2ldLCB5MDFbaV0pOworICAgICAgICB4eTAyID0gTUFDMTZfMTYoeHkwMiwg
eFtpXSwgeTAyW2ldKTsKKyAgICB9CisgICAgKnh5MSA9IHh5MDE7CisgICAgKnh5MiA9IHh5MDI7
CisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIHsKKyAgICAgICAgb3B1c192YWwzMiB4eTFf
YywgeHkyX2M7CisgICAgICAgIGR1YWxfaW5uZXJfcHJvZF9uZW9uX2Zsb2F0X2Nfc2ltdWxhdGlv
bih4LCB5MDEsIHkwMiwgTiwgJnh5MV9jLCAmeHkyX2MpOworICAgICAgICBjZWx0X2Fzc2VydChB
QlMzMih4eTFfYyAtICp4eTEpIDw9IFZFUllfU01BTEwpOworICAgICAgICBjZWx0X2Fzc2VydChB
QlMzMih4eTJfYyAtICp4eTIpIDw9IFZFUllfU01BTEwpOworICAgIH0KKyNlbmRpZgorfQorCisj
ZW5kaWYgLyogRklYRURfUE9JTlQgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9iYW5kcy5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Jh
bmRzLmMKaW5kZXggZjUzMDdhZTJlZGI2N2EwM2E5NzRiYjVkZWNlNjQ4NWQ4MDY5NjVjNi4uM2Ix
ZjVjZmJiZThhODFjN2Y0N2I3MDBhYzg3ODk5ZDgwOTkwNjI4NSAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Jh
bmRzLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9jZWx0L2JhbmRzLmMKQEAgLTY1LDcgKzY1LDcgQEAgb3B1c191aW50MzIgY2Vs
dF9sY2dfcmFuZChvcHVzX3VpbnQzMiBzZWVkKQogCiAvKiBUaGlzIGlzIGEgY29zKCkgYXBwcm94
aW1hdGlvbiBkZXNpZ25lZCB0byBiZSBiaXQtZXhhY3Qgb24gYW55IHBsYXRmb3JtLiBCaXQgZXhh
Y3RuZXNzCiAgICB3aXRoIHRoaXMgYXBwcm94aW1hdGlvbiBpcyBpbXBvcnRhbnQgYmVjYXVzZSBp
dCBoYXMgYW4gaW1wYWN0IG9uIHRoZSBiaXQgYWxsb2NhdGlvbiAqLwotc3RhdGljIG9wdXNfaW50
MTYgYml0ZXhhY3RfY29zKG9wdXNfaW50MTYgeCkKK29wdXNfaW50MTYgYml0ZXhhY3RfY29zKG9w
dXNfaW50MTYgeCkKIHsKICAgIG9wdXNfaW50MzIgdG1wOwogICAgb3B1c19pbnQxNiB4MjsKQEAg
LTc3LDcgKzc3LDcgQEAgc3RhdGljIG9wdXNfaW50MTYgYml0ZXhhY3RfY29zKG9wdXNfaW50MTYg
eCkKICAgIHJldHVybiAxK3gyOwogfQogCi1zdGF0aWMgaW50IGJpdGV4YWN0X2xvZzJ0YW4oaW50
IGlzaW4saW50IGljb3MpCitpbnQgYml0ZXhhY3RfbG9nMnRhbihpbnQgaXNpbixpbnQgaWNvcykK
IHsKICAgIGludCBsYzsKICAgIGludCBsczsKQEAgLTkyLDEwICs5MiwxMSBAQCBzdGF0aWMgaW50
IGJpdGV4YWN0X2xvZzJ0YW4oaW50IGlzaW4saW50IGljb3MpCiAKICNpZmRlZiBGSVhFRF9QT0lO
VAogLyogQ29tcHV0ZSB0aGUgYW1wbGl0dWRlIChzcXJ0IGVuZXJneSkgaW4gZWFjaCBvZiB0aGUg
YmFuZHMgKi8KLXZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNvbnN0IENFTFRNb2RlICptLCBj
b25zdCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kRSwgaW50IGVuZCwgaW50IEMsIGludCBM
TSkKK3ZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNvbnN0IENFTFRNb2RlICptLCBjb25zdCBj
ZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kRSwgaW50IGVuZCwgaW50IEMsIGludCBMTSwgaW50
IGFyY2gpCiB7CiAgICBpbnQgaSwgYywgTjsKICAgIGNvbnN0IG9wdXNfaW50MTYgKmVCYW5kcyA9
IG0tPmVCYW5kczsKKyAgICh2b2lkKWFyY2g7CiAgICBOID0gbS0+c2hvcnRNZGN0U2l6ZTw8TE07
CiAgICBjPTA7IGRvIHsKICAgICAgIGZvciAoaT0wO2k8ZW5kO2krKykKQEAgLTE1NSw3ICsxNTYs
NyBAQCB2b2lkIG5vcm1hbGlzZV9iYW5kcyhjb25zdCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9z
aWcgKiBPUFVTX1JFU1RSSUNUIGZyZXEsIGNlbAogCiAjZWxzZSAvKiBGSVhFRF9QT0lOVCAqLwog
LyogQ29tcHV0ZSB0aGUgYW1wbGl0dWRlIChzcXJ0IGVuZXJneSkgaW4gZWFjaCBvZiB0aGUgYmFu
ZHMgKi8KLXZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNvbnN0IENFTFRNb2RlICptLCBjb25z
dCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kRSwgaW50IGVuZCwgaW50IEMsIGludCBMTSkK
K3ZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNvbnN0IENFTFRNb2RlICptLCBjb25zdCBjZWx0
X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kRSwgaW50IGVuZCwgaW50IEMsIGludCBMTSwgaW50IGFy
Y2gpCiB7CiAgICBpbnQgaSwgYywgTjsKICAgIGNvbnN0IG9wdXNfaW50MTYgKmVCYW5kcyA9IG0t
PmVCYW5kczsKQEAgLTE2NCw3ICsxNjUsNyBAQCB2b2lkIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhj
b25zdCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9zaWcgKlgsIGNlbHRfZW5lciAqYmFuZAogICAg
ICAgZm9yIChpPTA7aTxlbmQ7aSsrKQogICAgICAgewogICAgICAgICAgb3B1c192YWwzMiBzdW07
Ci0gICAgICAgICBzdW0gPSAxZS0yN2YgKyBjZWx0X2lubmVyX3Byb2RfYygmWFtjKk4rKGVCYW5k
c1tpXTw8TE0pXSwgJlhbYypOKyhlQmFuZHNbaV08PExNKV0sIChlQmFuZHNbaSsxXS1lQmFuZHNb
aV0pPDxMTSk7CisgICAgICAgICBzdW0gPSAxZS0yN2YgKyBjZWx0X2lubmVyX3Byb2QoJlhbYypO
KyhlQmFuZHNbaV08PExNKV0sICZYW2MqTisoZUJhbmRzW2ldPDxMTSldLCAoZUJhbmRzW2krMV0t
ZUJhbmRzW2ldKTw8TE0sIGFyY2gpOwogICAgICAgICAgYmFuZEVbaStjKm0tPm5iRUJhbmRzXSA9
IGNlbHRfc3FydChzdW0pOwogICAgICAgICAgLypwcmludGYgKCIlZiAiLCBiYW5kRVtpK2MqbS0+
bmJFQmFuZHNdKTsqLwogICAgICAgfQpAQCAtMjI0LDcgKzIyNSw3IEBAIHZvaWQgZGVub3JtYWxp
c2VfYmFuZHMoY29uc3QgQ0VMVE1vZGUgKm0sIGNvbnN0IGNlbHRfbm9ybSAqIE9QVVNfUkVTVFJJ
Q1QgWCwKICNlbmRpZgogICAgICAgaj1NKmVCYW5kc1tpXTsKICAgICAgIGJhbmRfZW5kID0gTSpl
QmFuZHNbaSsxXTsKLSAgICAgIGxnID0gQUREMTYoYmFuZExvZ0VbaV0sIFNITDE2KChvcHVzX3Zh
bDE2KWVNZWFuc1tpXSw2KSk7CisgICAgICBsZyA9IFNBVFVSQVRFMTYoQUREMzIoYmFuZExvZ0Vb
aV0sIFNITDMyKChvcHVzX3ZhbDMyKWVNZWFuc1tpXSw2KSkpOwogI2lmbmRlZiBGSVhFRF9QT0lO
VAogICAgICAgZyA9IGNlbHRfZXhwMihNSU4zMigzMi5mLCBsZykpOwogI2Vsc2UKQEAgLTI0MSwx
MiArMjQyLDEyIEBAIHZvaWQgZGVub3JtYWxpc2VfYmFuZHMoY29uc3QgQ0VMVE1vZGUgKm0sIGNv
bnN0IGNlbHRfbm9ybSAqIE9QVVNfUkVTVFJJQ1QgWCwKICAgICAgIC8qIEhhbmRsZSBleHRyZW1l
IGdhaW5zIHdpdGggbmVnYXRpdmUgc2hpZnQuICovCiAgICAgICBpZiAoc2hpZnQ8MCkKICAgICAg
IHsKLSAgICAgICAgIC8qIEZvciBzaGlmdCA8IC0yIHdlJ2QgYmUgbGlrZWx5IHRvIG92ZXJmbG93
LCBzbyB3ZSdyZSBjYXBwaW5nCi0gICAgICAgICAgICAgICB0aGUgZ2FpbiBoZXJlLiBUaGlzIHNo
b3VsZG4ndCBoYXBwZW4gdW5sZXNzIHRoZSBiaXRzdHJlYW0gaXMKLSAgICAgICAgICAgICAgIGFs
cmVhZHkgY29ycnVwdGVkLiAqLwotICAgICAgICAgaWYgKHNoaWZ0IDwgLTIpCisgICAgICAgICAv
KiBGb3Igc2hpZnQgPD0gLTIgYW5kIGcgPiAxNjM4NCB3ZSdkIGJlIGxpa2VseSB0byBvdmVyZmxv
dywgc28gd2UncmUKKyAgICAgICAgICAgIGNhcHBpbmcgdGhlIGdhaW4gaGVyZSwgd2hpY2ggaXMg
ZXF1aXZhbGVudCB0byBhIGNhcCBvZiAxOCBvbiBsZy4KKyAgICAgICAgICAgIFRoaXMgc2hvdWxk
bid0IHRyaWdnZXIgdW5sZXNzIHRoZSBiaXRzdHJlYW0gaXMgYWxyZWFkeSBjb3JydXB0ZWQuICov
CisgICAgICAgICBpZiAoc2hpZnQgPD0gLTIpCiAgICAgICAgICB7Ci0gICAgICAgICAgICBnID0g
MzI3Njc7CisgICAgICAgICAgICBnID0gMTYzODQ7CiAgICAgICAgICAgICBzaGlmdCA9IC0yOwog
ICAgICAgICAgfQogICAgICAgICAgZG8gewpAQCAtMzYwLDYgKzM2MSwzMCBAQCB2b2lkIGFudGlf
Y29sbGFwc2UoY29uc3QgQ0VMVE1vZGUgKm0sIGNlbHRfbm9ybSAqWF8sIHVuc2lnbmVkIGNoYXIg
KmNvbGxhcHNlX21hcwogICAgfQogfQogCisvKiBDb21wdXRlIHRoZSB3ZWlnaHRzIHRvIHVzZSBm
b3Igb3B0aW1pemluZyBub3JtYWxpemVkIGRpc3RvcnRpb24gYWNyb3NzCisgICBjaGFubmVscy4g
V2UgdXNlIHRoZSBhbXBsaXR1ZGUgdG8gd2VpZ2h0IHNxdWFyZSBkaXN0b3J0aW9uLCB3aGljaCBt
ZWFucworICAgdGhhdCB3ZSB1c2UgdGhlIHNxdWFyZSByb290IG9mIHRoZSB2YWx1ZSB3ZSB3b3Vs
ZCBoYXZlIGJlZW4gdXNpbmcgaWYgd2UKKyAgIHdhbnRlZCB0byBtaW5pbWl6ZSB0aGUgTVNFIGlu
IHRoZSBub24tbm9ybWFsaXplZCBkb21haW4uIFRoaXMgcm91Z2hseQorICAgY29ycmVzcG9uZHMg
dG8gc29tZSBxdWljay1hbmQtZGlydHkgcGVyY2VwdHVhbCBleHBlcmltZW50cyBJIHJhbiB0bwor
ICAgbWVhc3VyZSBpbnRlci1hdXJhbCBtYXNraW5nICh0aGVyZSBkb2Vzbid0IHNlZW0gdG8gYmUg
YW55IHB1Ymxpc2hlZCBkYXRhCisgICBvbiB0aGUgdG9waWMpLiAqLworc3RhdGljIHZvaWQgY29t
cHV0ZV9jaGFubmVsX3dlaWdodHMoY2VsdF9lbmVyIEV4LCBjZWx0X2VuZXIgRXksIG9wdXNfdmFs
MTYgd1syXSkKK3sKKyAgIGNlbHRfZW5lciBtaW5FOworI2lmIEZJWEVEX1BPSU5UCisgICBpbnQg
c2hpZnQ7CisjZW5kaWYKKyAgIG1pbkUgPSBNSU4zMihFeCwgRXkpOworICAgLyogQWRqdXN0bWVu
dCB0byBtYWtlIHRoZSB3ZWlnaHRzIGEgYml0IG1vcmUgY29uc2VydmF0aXZlLiAqLworICAgRXgg
PSBBREQzMihFeCwgbWluRS8zKTsKKyAgIEV5ID0gQUREMzIoRXksIG1pbkUvMyk7CisjaWYgRklY
RURfUE9JTlQKKyAgIHNoaWZ0ID0gY2VsdF9pbG9nMihFUFNJTE9OK01BWDMyKEV4LCBFeSkpLTE0
OworI2VuZGlmCisgICB3WzBdID0gVlNIUjMyKEV4LCBzaGlmdCk7CisgICB3WzFdID0gVlNIUjMy
KEV5LCBzaGlmdCk7Cit9CisKIHN0YXRpYyB2b2lkIGludGVuc2l0eV9zdGVyZW8oY29uc3QgQ0VM
VE1vZGUgKm0sIGNlbHRfbm9ybSAqIE9QVVNfUkVTVFJJQ1QgWCwgY29uc3QgY2VsdF9ub3JtICog
T1BVU19SRVNUUklDVCBZLCBjb25zdCBjZWx0X2VuZXIgKmJhbmRFLCBpbnQgYmFuZElELCBpbnQg
TikKIHsKICAgIGludCBpID0gYmFuZElEOwpAQCAtNjQ3LDYgKzY3Miw3IEBAIHN0YXRpYyBpbnQg
Y29tcHV0ZV9xbihpbnQgTiwgaW50IGIsIGludCBvZmZzZXQsIGludCBwdWxzZV9jYXAsIGludCBz
dGVyZW8pCiAKIHN0cnVjdCBiYW5kX2N0eCB7CiAgICBpbnQgZW5jb2RlOworICAgaW50IHJlc3lu
dGg7CiAgICBjb25zdCBDRUxUTW9kZSAqbTsKICAgIGludCBpOwogICAgaW50IGludGVuc2l0eTsK
QEAgLTY1Nyw2ICs2ODMsOSBAQCBzdHJ1Y3QgYmFuZF9jdHggewogICAgY29uc3QgY2VsdF9lbmVy
ICpiYW5kRTsKICAgIG9wdXNfdWludDMyIHNlZWQ7CiAgICBpbnQgYXJjaDsKKyAgIGludCB0aGV0
YV9yb3VuZDsKKyAgIGludCBkaXNhYmxlX2ludjsKKyAgIGludCBhdm9pZF9zcGxpdF9ub2lzZTsK
IH07CiAKIHN0cnVjdCBzcGxpdF9jdHggewpAQCAtNzE0LDggKzc0MywzNSBAQCBzdGF0aWMgdm9p
ZCBjb21wdXRlX3RoZXRhKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBzdHJ1Y3Qgc3BsaXRfY3R4ICpz
Y3R4LAogICAgaWYgKHFuIT0xKQogICAgewogICAgICAgaWYgKGVuY29kZSkKLSAgICAgICAgIGl0
aGV0YSA9IChpdGhldGEqKG9wdXNfaW50MzIpcW4rODE5Mik+PjE0OwotCisgICAgICB7CisgICAg
ICAgICBpZiAoIXN0ZXJlbyB8fCBjdHgtPnRoZXRhX3JvdW5kID09IDApCisgICAgICAgICB7Cisg
ICAgICAgICAgICBpdGhldGEgPSAoaXRoZXRhKihvcHVzX2ludDMyKXFuKzgxOTIpPj4xNDsKKyAg
ICAgICAgICAgIGlmICghc3RlcmVvICYmIGN0eC0+YXZvaWRfc3BsaXRfbm9pc2UgJiYgaXRoZXRh
ID4gMCAmJiBpdGhldGEgPCBxbikKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIC8qIENo
ZWNrIGlmIHRoZSBzZWxlY3RlZCB2YWx1ZSBvZiB0aGV0YSB3aWxsIGNhdXNlIHRoZSBiaXQgYWxs
b2NhdGlvbgorICAgICAgICAgICAgICAgICAgdG8gaW5qZWN0IG5vaXNlIG9uIG9uZSBzaWRlLiBJ
ZiBzbywgbWFrZSBzdXJlIHRoZSBlbmVyZ3kgb2YgdGhhdCBzaWRlCisgICAgICAgICAgICAgICAg
ICBpcyB6ZXJvLiAqLworICAgICAgICAgICAgICAgaW50IHVucXVhbnRpemVkID0gY2VsdF91ZGl2
KChvcHVzX2ludDMyKWl0aGV0YSoxNjM4NCwgcW4pOworICAgICAgICAgICAgICAgaW1pZCA9IGJp
dGV4YWN0X2Nvcygob3B1c19pbnQxNil1bnF1YW50aXplZCk7CisgICAgICAgICAgICAgICBpc2lk
ZSA9IGJpdGV4YWN0X2Nvcygob3B1c19pbnQxNikoMTYzODQtdW5xdWFudGl6ZWQpKTsKKyAgICAg
ICAgICAgICAgIGRlbHRhID0gRlJBQ19NVUwxNigoTi0xKTw8NyxiaXRleGFjdF9sb2cydGFuKGlz
aWRlLGltaWQpKTsKKyAgICAgICAgICAgICAgIGlmIChkZWx0YSA+ICpiKQorICAgICAgICAgICAg
ICAgICAgaXRoZXRhID0gcW47CisgICAgICAgICAgICAgICBlbHNlIGlmIChkZWx0YSA8IC0qYikK
KyAgICAgICAgICAgICAgICAgIGl0aGV0YSA9IDA7CisgICAgICAgICAgICB9CisgICAgICAgICB9
IGVsc2UgeworICAgICAgICAgICAgaW50IGRvd247CisgICAgICAgICAgICAvKiBCaWFzIHF1YW50
aXphdGlvbiB0b3dhcmRzIGl0aGV0YT0wIGFuZCBpdGhldGE9MTYzODQuICovCisgICAgICAgICAg
ICBpbnQgYmlhcyA9IGl0aGV0YSA+IDgxOTIgPyAzMjc2Ny9xbiA6IC0zMjc2Ny9xbjsKKyAgICAg
ICAgICAgIGRvd24gPSBJTUlOKHFuLTEsIElNQVgoMCwgKGl0aGV0YSoob3B1c19pbnQzMilxbiAr
IGJpYXMpPj4xNCkpOworICAgICAgICAgICAgaWYgKGN0eC0+dGhldGFfcm91bmQgPCAwKQorICAg
ICAgICAgICAgICAgaXRoZXRhID0gZG93bjsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICAgIGl0aGV0YSA9IGRvd24rMTsKKyAgICAgICAgIH0KKyAgICAgIH0KICAgICAgIC8qIEVudHJv
cHkgY29kaW5nIG9mIHRoZSBhbmdsZS4gV2UgdXNlIGEgdW5pZm9ybSBwZGYgZm9yIHRoZQogICAg
ICAgICAgdGltZSBzcGxpdCwgYSBzdGVwIGZvciBzdGVyZW8sIGFuZCBhIHRyaWFuZ3VsYXIgb25l
IGZvciB0aGUgcmVzdC4gKi8KICAgICAgIGlmIChzdGVyZW8gJiYgTj4yKQpAQCAtNzkzLDcgKzg0
OSw3IEBAIHN0YXRpYyB2b2lkIGNvbXB1dGVfdGhldGEoc3RydWN0IGJhbmRfY3R4ICpjdHgsIHN0
cnVjdCBzcGxpdF9jdHggKnNjdHgsCiAgICB9IGVsc2UgaWYgKHN0ZXJlbykgewogICAgICAgaWYg
KGVuY29kZSkKICAgICAgIHsKLSAgICAgICAgIGludiA9IGl0aGV0YSA+IDgxOTI7CisgICAgICAg
ICBpbnYgPSBpdGhldGEgPiA4MTkyICYmICFjdHgtPmRpc2FibGVfaW52OwogICAgICAgICAgaWYg
KGludikKICAgICAgICAgIHsKICAgICAgICAgICAgIGludCBqOwpAQCAtODEwLDYgKzg2Niw5IEBA
IHN0YXRpYyB2b2lkIGNvbXB1dGVfdGhldGEoc3RydWN0IGJhbmRfY3R4ICpjdHgsIHN0cnVjdCBz
cGxpdF9jdHggKnNjdHgsCiAgICAgICAgICAgICBpbnYgPSBlY19kZWNfYml0X2xvZ3AoZWMsIDIp
OwogICAgICAgfSBlbHNlCiAgICAgICAgICBpbnYgPSAwOworICAgICAgLyogaW52IGZsYWcgb3Zl
cnJpZGUgdG8gYXZvaWQgcHJvYmxlbXMgd2l0aCBkb3dubWl4aW5nLiAqLworICAgICAgaWYgKGN0
eC0+ZGlzYWJsZV9pbnYpCisgICAgICAgICBpbnYgPSAwOwogICAgICAgaXRoZXRhID0gMDsKICAg
IH0KICAgIHFhbGxvYyA9IGVjX3RlbGxfZnJhYyhlYykgLSB0ZWxsOwpAQCAtODQ1LDExICs5MDQs
NiBAQCBzdGF0aWMgdm9pZCBjb21wdXRlX3RoZXRhKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBzdHJ1
Y3Qgc3BsaXRfY3R4ICpzY3R4LAogc3RhdGljIHVuc2lnbmVkIHF1YW50X2JhbmRfbjEoc3RydWN0
IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwgY2VsdF9ub3JtICpZLCBpbnQgYiwKICAgICAg
IGNlbHRfbm9ybSAqbG93YmFuZF9vdXQpCiB7Ci0jaWZkZWYgUkVTWU5USAotICAgaW50IHJlc3lu
dGggPSAxOwotI2Vsc2UKLSAgIGludCByZXN5bnRoID0gIWN0eC0+ZW5jb2RlOwotI2VuZGlmCiAg
ICBpbnQgYzsKICAgIGludCBzdGVyZW87CiAgICBjZWx0X25vcm0gKnggPSBYOwpAQCAtODc0LDcg
KzkyOCw3IEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFudF9iYW5kX24xKHN0cnVjdCBiYW5kX2N0eCAq
Y3R4LCBjZWx0X25vcm0gKlgsIGNlbHRfbm9ybSAqWSwKICAgICAgICAgIGN0eC0+cmVtYWluaW5n
X2JpdHMgLT0gMTw8QklUUkVTOwogICAgICAgICAgYi09MTw8QklUUkVTOwogICAgICAgfQotICAg
ICAgaWYgKHJlc3ludGgpCisgICAgICBpZiAoY3R4LT5yZXN5bnRoKQogICAgICAgICAgeFswXSA9
IHNpZ24gPyAtTk9STV9TQ0FMSU5HIDogTk9STV9TQ0FMSU5HOwogICAgICAgeCA9IFk7CiAgICB9
IHdoaWxlICgrK2M8MStzdGVyZW8pOwpAQCAtODk5LDExICs5NTMsNiBAQCBzdGF0aWMgdW5zaWdu
ZWQgcXVhbnRfcGFydGl0aW9uKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsCiAg
ICBpbnQgQjA9QjsKICAgIG9wdXNfdmFsMTYgbWlkPTAsIHNpZGU9MDsKICAgIHVuc2lnbmVkIGNt
PTA7Ci0jaWZkZWYgUkVTWU5USAotICAgaW50IHJlc3ludGggPSAxOwotI2Vsc2UKLSAgIGludCBy
ZXN5bnRoID0gIWN0eC0+ZW5jb2RlOwotI2VuZGlmCiAgICBjZWx0X25vcm0gKlk9TlVMTDsKICAg
IGludCBlbmNvZGU7CiAgICBjb25zdCBDRUxUTW9kZSAqbTsKQEAgLTkzNSw4ICs5ODQsNyBAQCBz
dGF0aWMgdW5zaWduZWQgcXVhbnRfcGFydGl0aW9uKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0
X25vcm0gKlgsCiAgICAgICAgICBmaWxsID0gKGZpbGwmMSl8KGZpbGw8PDEpOwogICAgICAgQiA9
IChCKzEpPj4xOwogCi0gICAgICBjb21wdXRlX3RoZXRhKGN0eCwgJnNjdHgsIFgsIFksIE4sICZi
LCBCLCBCMCwKLSAgICAgICAgICAgIExNLCAwLCAmZmlsbCk7CisgICAgICBjb21wdXRlX3RoZXRh
KGN0eCwgJnNjdHgsIFgsIFksIE4sICZiLCBCLCBCMCwgTE0sIDAsICZmaWxsKTsKICAgICAgIGlt
aWQgPSBzY3R4LmltaWQ7CiAgICAgICBpc2lkZSA9IHNjdHguaXNpZGU7CiAgICAgICBkZWx0YSA9
IHNjdHguZGVsdGE7CkBAIC05NzAsMjQgKzEwMTgsMjAgQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50
X3BhcnRpdGlvbihzdHJ1Y3QgYmFuZF9jdHggKmN0eCwgY2VsdF9ub3JtICpYLAogICAgICAgcmVi
YWxhbmNlID0gY3R4LT5yZW1haW5pbmdfYml0czsKICAgICAgIGlmIChtYml0cyA+PSBzYml0cykK
ICAgICAgIHsKLSAgICAgICAgIGNtID0gcXVhbnRfcGFydGl0aW9uKGN0eCwgWCwgTiwgbWJpdHMs
IEIsCi0gICAgICAgICAgICAgICBsb3diYW5kLCBMTSwKKyAgICAgICAgIGNtID0gcXVhbnRfcGFy
dGl0aW9uKGN0eCwgWCwgTiwgbWJpdHMsIEIsIGxvd2JhbmQsIExNLAogICAgICAgICAgICAgICAg
TVVMVDE2XzE2X1AxNShnYWluLG1pZCksIGZpbGwpOwogICAgICAgICAgcmViYWxhbmNlID0gbWJp
dHMgLSAocmViYWxhbmNlLWN0eC0+cmVtYWluaW5nX2JpdHMpOwogICAgICAgICAgaWYgKHJlYmFs
YW5jZSA+IDM8PEJJVFJFUyAmJiBpdGhldGEhPTApCiAgICAgICAgICAgICBzYml0cyArPSByZWJh
bGFuY2UgLSAoMzw8QklUUkVTKTsKLSAgICAgICAgIGNtIHw9IHF1YW50X3BhcnRpdGlvbihjdHgs
IFksIE4sIHNiaXRzLCBCLAotICAgICAgICAgICAgICAgbmV4dF9sb3diYW5kMiwgTE0sCisgICAg
ICAgICBjbSB8PSBxdWFudF9wYXJ0aXRpb24oY3R4LCBZLCBOLCBzYml0cywgQiwgbmV4dF9sb3di
YW5kMiwgTE0sCiAgICAgICAgICAgICAgICBNVUxUMTZfMTZfUDE1KGdhaW4sc2lkZSksIGZpbGw+
PkIpPDwoQjA+PjEpOwogICAgICAgfSBlbHNlIHsKLSAgICAgICAgIGNtID0gcXVhbnRfcGFydGl0
aW9uKGN0eCwgWSwgTiwgc2JpdHMsIEIsCi0gICAgICAgICAgICAgICBuZXh0X2xvd2JhbmQyLCBM
TSwKKyAgICAgICAgIGNtID0gcXVhbnRfcGFydGl0aW9uKGN0eCwgWSwgTiwgc2JpdHMsIEIsIG5l
eHRfbG93YmFuZDIsIExNLAogICAgICAgICAgICAgICAgTVVMVDE2XzE2X1AxNShnYWluLHNpZGUp
LCBmaWxsPj5CKTw8KEIwPj4xKTsKICAgICAgICAgIHJlYmFsYW5jZSA9IHNiaXRzIC0gKHJlYmFs
YW5jZS1jdHgtPnJlbWFpbmluZ19iaXRzKTsKICAgICAgICAgIGlmIChyZWJhbGFuY2UgPiAzPDxC
SVRSRVMgJiYgaXRoZXRhIT0xNjM4NCkKICAgICAgICAgICAgIG1iaXRzICs9IHJlYmFsYW5jZSAt
ICgzPDxCSVRSRVMpOwotICAgICAgICAgY20gfD0gcXVhbnRfcGFydGl0aW9uKGN0eCwgWCwgTiwg
bWJpdHMsIEIsCi0gICAgICAgICAgICAgICBsb3diYW5kLCBMTSwKKyAgICAgICAgIGNtIHw9IHF1
YW50X3BhcnRpdGlvbihjdHgsIFgsIE4sIG1iaXRzLCBCLCBsb3diYW5kLCBMTSwKICAgICAgICAg
ICAgICAgIE1VTFQxNl8xNl9QMTUoZ2FpbixtaWQpLCBmaWxsKTsKICAgICAgIH0KICAgIH0gZWxz
ZSB7CkBAIC0xMDEyLDE4ICsxMDU2LDE0IEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFudF9wYXJ0aXRp
b24oc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwKICAgICAgICAgIC8qIEZpbmFs
bHkgZG8gdGhlIGFjdHVhbCBxdWFudGl6YXRpb24gKi8KICAgICAgICAgIGlmIChlbmNvZGUpCiAg
ICAgICAgICB7Ci0gICAgICAgICAgICBjbSA9IGFsZ19xdWFudChYLCBOLCBLLCBzcHJlYWQsIEIs
IGVjCi0jaWZkZWYgUkVTWU5USAotICAgICAgICAgICAgICAgICAsIGdhaW4KLSNlbmRpZgotICAg
ICAgICAgICAgICAgICApOworICAgICAgICAgICAgY20gPSBhbGdfcXVhbnQoWCwgTiwgSywgc3By
ZWFkLCBCLCBlYywgZ2FpbiwgY3R4LT5yZXN5bnRoLCBjdHgtPmFyY2gpOwogICAgICAgICAgfSBl
bHNlIHsKICAgICAgICAgICAgIGNtID0gYWxnX3VucXVhbnQoWCwgTiwgSywgc3ByZWFkLCBCLCBl
YywgZ2Fpbik7CiAgICAgICAgICB9CiAgICAgICB9IGVsc2UgewogICAgICAgICAgLyogSWYgdGhl
cmUncyBubyBwdWxzZSwgZmlsbCB0aGUgYmFuZCBhbnl3YXkgKi8KICAgICAgICAgIGludCBqOwot
ICAgICAgICAgaWYgKHJlc3ludGgpCisgICAgICAgICBpZiAoY3R4LT5yZXN5bnRoKQogICAgICAg
ICAgewogICAgICAgICAgICAgdW5zaWduZWQgY21fbWFzazsKICAgICAgICAgICAgIC8qIEIgY2Fu
IGJlIGFzIGxhcmdlIGFzIDE2LCBzbyB0aGlzIHNoaWZ0IG1pZ2h0IG92ZXJmbG93IGFuIGludCBv
biBhCkBAIC0xMDgwLDExICsxMTIwLDYgQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50X2JhbmQoc3Ry
dWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwKICAgIGludCByZWNvbWJpbmU9MDsKICAg
IGludCBsb25nQmxvY2tzOwogICAgdW5zaWduZWQgY209MDsKLSNpZmRlZiBSRVNZTlRICi0gICBp
bnQgcmVzeW50aCA9IDE7Ci0jZWxzZQotICAgaW50IHJlc3ludGggPSAhY3R4LT5lbmNvZGU7Ci0j
ZW5kaWYKICAgIGludCBrOwogICAgaW50IGVuY29kZTsKICAgIGludCB0Zl9jaGFuZ2U7CkBAIC0x
MTUxLDExICsxMTg2LDEwIEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFudF9iYW5kKHN0cnVjdCBiYW5k
X2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsCiAgICAgICAgICBkZWludGVybGVhdmVfaGFkYW1hcmQo
bG93YmFuZCwgTl9CPj5yZWNvbWJpbmUsIEIwPDxyZWNvbWJpbmUsIGxvbmdCbG9ja3MpOwogICAg
fQogCi0gICBjbSA9IHF1YW50X3BhcnRpdGlvbihjdHgsIFgsIE4sIGIsIEIsIGxvd2JhbmQsCi0g
ICAgICAgICBMTSwgZ2FpbiwgZmlsbCk7CisgICBjbSA9IHF1YW50X3BhcnRpdGlvbihjdHgsIFgs
IE4sIGIsIEIsIGxvd2JhbmQsIExNLCBnYWluLCBmaWxsKTsKIAogICAgLyogVGhpcyBjb2RlIGlz
IHVzZWQgYnkgdGhlIGRlY29kZXIgYW5kIGJ5IHRoZSByZXN5bnRoZXNpcy1lbmFibGVkIGVuY29k
ZXIgKi8KLSAgIGlmIChyZXN5bnRoKQorICAgaWYgKGN0eC0+cmVzeW50aCkKICAgIHsKICAgICAg
IC8qIFVuZG8gdGhlIHNhbXBsZSByZW9yZ2FuaXphdGlvbiBnb2luZyBmcm9tIHRpbWUgb3JkZXIg
dG8gZnJlcXVlbmN5IG9yZGVyICovCiAgICAgICBpZiAoQjA+MSkKQEAgLTEyMDgsMTEgKzEyNDIs
NiBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfYmFuZF9zdGVyZW8oc3RydWN0IGJhbmRfY3R4ICpj
dHgsIGNlbHRfbm9ybSAqWCwgY2VsdF9ub3JtCiAgICBpbnQgaW52ID0gMDsKICAgIG9wdXNfdmFs
MTYgbWlkPTAsIHNpZGU9MDsKICAgIHVuc2lnbmVkIGNtPTA7Ci0jaWZkZWYgUkVTWU5USAotICAg
aW50IHJlc3ludGggPSAxOwotI2Vsc2UKLSAgIGludCByZXN5bnRoID0gIWN0eC0+ZW5jb2RlOwot
I2VuZGlmCiAgICBpbnQgbWJpdHMsIHNiaXRzLCBkZWx0YTsKICAgIGludCBpdGhldGE7CiAgICBp
bnQgcWFsbG9jOwpAQCAtMTIzMiw4ICsxMjYxLDcgQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50X2Jh
bmRfc3RlcmVvKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsIGNlbHRfbm9ybQog
CiAgICBvcmlnX2ZpbGwgPSBmaWxsOwogCi0gICBjb21wdXRlX3RoZXRhKGN0eCwgJnNjdHgsIFgs
IFksIE4sICZiLCBCLCBCLAotICAgICAgICAgTE0sIDEsICZmaWxsKTsKKyAgIGNvbXB1dGVfdGhl
dGEoY3R4LCAmc2N0eCwgWCwgWSwgTiwgJmIsIEIsIEIsIExNLCAxLCAmZmlsbCk7CiAgICBpbnYg
PSBzY3R4LmludjsKICAgIGltaWQgPSBzY3R4LmltaWQ7CiAgICBpc2lkZSA9IHNjdHguaXNpZGU7
CkBAIC0xMjgxLDEzICsxMzA5LDEzIEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFudF9iYW5kX3N0ZXJl
byhzdHJ1Y3QgYmFuZF9jdHggKmN0eCwgY2VsdF9ub3JtICpYLCBjZWx0X25vcm0KICAgICAgIHNp
Z24gPSAxLTIqc2lnbjsKICAgICAgIC8qIFdlIHVzZSBvcmlnX2ZpbGwgaGVyZSBiZWNhdXNlIHdl
IHdhbnQgdG8gZm9sZCB0aGUgc2lkZSwgYnV0IGlmCiAgICAgICAgICBpdGhldGE9PTE2Mzg0LCB3
ZSdsbCBoYXZlIGNsZWFyZWQgdGhlIGxvdyBiaXRzIG9mIGZpbGwuICovCi0gICAgICBjbSA9IHF1
YW50X2JhbmQoY3R4LCB4MiwgTiwgbWJpdHMsIEIsIGxvd2JhbmQsCi0gICAgICAgICAgICBMTSwg
bG93YmFuZF9vdXQsIFExNU9ORSwgbG93YmFuZF9zY3JhdGNoLCBvcmlnX2ZpbGwpOworICAgICAg
Y20gPSBxdWFudF9iYW5kKGN0eCwgeDIsIE4sIG1iaXRzLCBCLCBsb3diYW5kLCBMTSwgbG93YmFu
ZF9vdXQsIFExNU9ORSwKKyAgICAgICAgICAgIGxvd2JhbmRfc2NyYXRjaCwgb3JpZ19maWxsKTsK
ICAgICAgIC8qIFdlIGRvbid0IHNwbGl0IE49MiBiYW5kcywgc28gY20gaXMgZWl0aGVyIDEgb3Ig
MCAoZm9yIGEgZm9sZC1jb2xsYXBzZSksCiAgICAgICAgICBhbmQgdGhlcmUncyBubyBuZWVkIHRv
IHdvcnJ5IGFib3V0IG1peGluZyB3aXRoIHRoZSBvdGhlciBjaGFubmVsLiAqLwogICAgICAgeTJb
MF0gPSAtc2lnbip4MlsxXTsKICAgICAgIHkyWzFdID0gc2lnbip4MlswXTsKLSAgICAgIGlmIChy
ZXN5bnRoKQorICAgICAgaWYgKGN0eC0+cmVzeW50aCkKICAgICAgIHsKICAgICAgICAgIGNlbHRf
bm9ybSB0bXA7CiAgICAgICAgICBYWzBdID0gTVVMVDE2XzE2X1ExNShtaWQsIFhbMF0pOwpAQCAt
MTMxNCwzOCArMTM0MiwzMiBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfYmFuZF9zdGVyZW8oc3Ry
dWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwgY2VsdF9ub3JtCiAgICAgICB7CiAgICAg
ICAgICAvKiBJbiBzdGVyZW8gbW9kZSwgd2UgZG8gbm90IGFwcGx5IGEgc2NhbGluZyB0byB0aGUg
bWlkIGJlY2F1c2Ugd2UgbmVlZCB0aGUgbm9ybWFsaXplZAogICAgICAgICAgICAgbWlkIGZvciBm
b2xkaW5nIGxhdGVyLiAqLwotICAgICAgICAgY20gPSBxdWFudF9iYW5kKGN0eCwgWCwgTiwgbWJp
dHMsIEIsCi0gICAgICAgICAgICAgICBsb3diYW5kLCBMTSwgbG93YmFuZF9vdXQsCi0gICAgICAg
ICAgICAgICBRMTVPTkUsIGxvd2JhbmRfc2NyYXRjaCwgZmlsbCk7CisgICAgICAgICBjbSA9IHF1
YW50X2JhbmQoY3R4LCBYLCBOLCBtYml0cywgQiwgbG93YmFuZCwgTE0sIGxvd2JhbmRfb3V0LCBR
MTVPTkUsCisgICAgICAgICAgICAgICBsb3diYW5kX3NjcmF0Y2gsIGZpbGwpOwogICAgICAgICAg
cmViYWxhbmNlID0gbWJpdHMgLSAocmViYWxhbmNlLWN0eC0+cmVtYWluaW5nX2JpdHMpOwogICAg
ICAgICAgaWYgKHJlYmFsYW5jZSA+IDM8PEJJVFJFUyAmJiBpdGhldGEhPTApCiAgICAgICAgICAg
ICBzYml0cyArPSByZWJhbGFuY2UgLSAoMzw8QklUUkVTKTsKIAogICAgICAgICAgLyogRm9yIGEg
c3RlcmVvIHNwbGl0LCB0aGUgaGlnaCBiaXRzIG9mIGZpbGwgYXJlIGFsd2F5cyB6ZXJvLCBzbyBu
bwogICAgICAgICAgICAgZm9sZGluZyB3aWxsIGJlIGRvbmUgdG8gdGhlIHNpZGUuICovCi0gICAg
ICAgICBjbSB8PSBxdWFudF9iYW5kKGN0eCwgWSwgTiwgc2JpdHMsIEIsCi0gICAgICAgICAgICAg
ICBOVUxMLCBMTSwgTlVMTCwKLSAgICAgICAgICAgICAgIHNpZGUsIE5VTEwsIGZpbGw+PkIpOwor
ICAgICAgICAgY20gfD0gcXVhbnRfYmFuZChjdHgsIFksIE4sIHNiaXRzLCBCLCBOVUxMLCBMTSwg
TlVMTCwgc2lkZSwgTlVMTCwgZmlsbD4+Qik7CiAgICAgICB9IGVsc2UgewogICAgICAgICAgLyog
Rm9yIGEgc3RlcmVvIHNwbGl0LCB0aGUgaGlnaCBiaXRzIG9mIGZpbGwgYXJlIGFsd2F5cyB6ZXJv
LCBzbyBubwogICAgICAgICAgICAgZm9sZGluZyB3aWxsIGJlIGRvbmUgdG8gdGhlIHNpZGUuICov
Ci0gICAgICAgICBjbSA9IHF1YW50X2JhbmQoY3R4LCBZLCBOLCBzYml0cywgQiwKLSAgICAgICAg
ICAgICAgIE5VTEwsIExNLCBOVUxMLAotICAgICAgICAgICAgICAgc2lkZSwgTlVMTCwgZmlsbD4+
Qik7CisgICAgICAgICBjbSA9IHF1YW50X2JhbmQoY3R4LCBZLCBOLCBzYml0cywgQiwgTlVMTCwg
TE0sIE5VTEwsIHNpZGUsIE5VTEwsIGZpbGw+PkIpOwogICAgICAgICAgcmViYWxhbmNlID0gc2Jp
dHMgLSAocmViYWxhbmNlLWN0eC0+cmVtYWluaW5nX2JpdHMpOwogICAgICAgICAgaWYgKHJlYmFs
YW5jZSA+IDM8PEJJVFJFUyAmJiBpdGhldGEhPTE2Mzg0KQogICAgICAgICAgICAgbWJpdHMgKz0g
cmViYWxhbmNlIC0gKDM8PEJJVFJFUyk7CiAgICAgICAgICAvKiBJbiBzdGVyZW8gbW9kZSwgd2Ug
ZG8gbm90IGFwcGx5IGEgc2NhbGluZyB0byB0aGUgbWlkIGJlY2F1c2Ugd2UgbmVlZCB0aGUgbm9y
bWFsaXplZAogICAgICAgICAgICAgbWlkIGZvciBmb2xkaW5nIGxhdGVyLiAqLwotICAgICAgICAg
Y20gfD0gcXVhbnRfYmFuZChjdHgsIFgsIE4sIG1iaXRzLCBCLAotICAgICAgICAgICAgICAgbG93
YmFuZCwgTE0sIGxvd2JhbmRfb3V0LAotICAgICAgICAgICAgICAgUTE1T05FLCBsb3diYW5kX3Nj
cmF0Y2gsIGZpbGwpOworICAgICAgICAgY20gfD0gcXVhbnRfYmFuZChjdHgsIFgsIE4sIG1iaXRz
LCBCLCBsb3diYW5kLCBMTSwgbG93YmFuZF9vdXQsIFExNU9ORSwKKyAgICAgICAgICAgICAgIGxv
d2JhbmRfc2NyYXRjaCwgZmlsbCk7CiAgICAgICB9CiAgICB9CiAKIAogICAgLyogVGhpcyBjb2Rl
IGlzIHVzZWQgYnkgdGhlIGRlY29kZXIgYW5kIGJ5IHRoZSByZXN5bnRoZXNpcy1lbmFibGVkIGVu
Y29kZXIgKi8KLSAgIGlmIChyZXN5bnRoKQorICAgaWYgKGN0eC0+cmVzeW50aCkKICAgIHsKICAg
ICAgIGlmIChOIT0yKQogICAgICAgICAgc3RlcmVvX21lcmdlKFgsIFksIG1pZCwgTiwgY3R4LT5h
cmNoKTsKQEAgLTEzNTksMTkgKzEzODEsMzggQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50X2JhbmRf
c3RlcmVvKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsIGNlbHRfbm9ybQogICAg
cmV0dXJuIGNtOwogfQogCitzdGF0aWMgdm9pZCBzcGVjaWFsX2h5YnJpZF9mb2xkaW5nKGNvbnN0
IENFTFRNb2RlICptLCBjZWx0X25vcm0gKm5vcm0sIGNlbHRfbm9ybSAqbm9ybTIsIGludCBzdGFy
dCwgaW50IE0sIGludCBkdWFsX3N0ZXJlbykKK3sKKyAgIGludCBuMSwgbjI7CisgICBjb25zdCBv
cHVzX2ludDE2ICogT1BVU19SRVNUUklDVCBlQmFuZHMgPSBtLT5lQmFuZHM7CisgICBuMSA9IE0q
KGVCYW5kc1tzdGFydCsxXS1lQmFuZHNbc3RhcnRdKTsKKyAgIG4yID0gTSooZUJhbmRzW3N0YXJ0
KzJdLWVCYW5kc1tzdGFydCsxXSk7CisgICAvKiBEdXBsaWNhdGUgZW5vdWdoIG9mIHRoZSBmaXJz
dCBiYW5kIGZvbGRpbmcgZGF0YSB0byBiZSBhYmxlIHRvIGZvbGQgdGhlIHNlY29uZCBiYW5kLgor
ICAgICAgQ29waWVzIG5vIGRhdGEgZm9yIENFTFQtb25seSBtb2RlLiAqLworICAgT1BVU19DT1BZ
KCZub3JtW24xXSwgJm5vcm1bMipuMSAtIG4yXSwgbjItbjEpOworICAgaWYgKGR1YWxfc3RlcmVv
KQorICAgICAgT1BVU19DT1BZKCZub3JtMltuMV0sICZub3JtMlsyKm4xIC0gbjJdLCBuMi1uMSk7
Cit9CiAKIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICpt
LCBpbnQgc3RhcnQsIGludCBlbmQsCiAgICAgICBjZWx0X25vcm0gKlhfLCBjZWx0X25vcm0gKllf
LCB1bnNpZ25lZCBjaGFyICpjb2xsYXBzZV9tYXNrcywKICAgICAgIGNvbnN0IGNlbHRfZW5lciAq
YmFuZEUsIGludCAqcHVsc2VzLCBpbnQgc2hvcnRCbG9ja3MsIGludCBzcHJlYWQsCiAgICAgICBp
bnQgZHVhbF9zdGVyZW8sIGludCBpbnRlbnNpdHksIGludCAqdGZfcmVzLCBvcHVzX2ludDMyIHRv
dGFsX2JpdHMsCiAgICAgICBvcHVzX2ludDMyIGJhbGFuY2UsIGVjX2N0eCAqZWMsIGludCBMTSwg
aW50IGNvZGVkQmFuZHMsCi0gICAgICBvcHVzX3VpbnQzMiAqc2VlZCwgaW50IGFyY2gpCisgICAg
ICBvcHVzX3VpbnQzMiAqc2VlZCwgaW50IGNvbXBsZXhpdHksIGludCBhcmNoLCBpbnQgZGlzYWJs
ZV9pbnYpCiB7CiAgICBpbnQgaTsKICAgIG9wdXNfaW50MzIgcmVtYWluaW5nX2JpdHM7CiAgICBj
b25zdCBvcHVzX2ludDE2ICogT1BVU19SRVNUUklDVCBlQmFuZHMgPSBtLT5lQmFuZHM7CiAgICBj
ZWx0X25vcm0gKiBPUFVTX1JFU1RSSUNUIG5vcm0sICogT1BVU19SRVNUUklDVCBub3JtMjsKICAg
IFZBUkRFQ0woY2VsdF9ub3JtLCBfbm9ybSk7CisgICBWQVJERUNMKGNlbHRfbm9ybSwgX2xvd2Jh
bmRfc2NyYXRjaCk7CisgICBWQVJERUNMKGNlbHRfbm9ybSwgWF9zYXZlKTsKKyAgIFZBUkRFQ0wo
Y2VsdF9ub3JtLCBZX3NhdmUpOworICAgVkFSREVDTChjZWx0X25vcm0sIFhfc2F2ZTIpOworICAg
VkFSREVDTChjZWx0X25vcm0sIFlfc2F2ZTIpOworICAgVkFSREVDTChjZWx0X25vcm0sIG5vcm1f
c2F2ZTIpOworICAgaW50IHJlc3ludGhfYWxsb2M7CiAgICBjZWx0X25vcm0gKmxvd2JhbmRfc2Ny
YXRjaDsKICAgIGludCBCOwogICAgaW50IE07CkBAIC0xMzc5LDEwICsxNDIwLDExIEBAIHZvaWQg
cXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQs
IGludCBlbmQsCiAgICBpbnQgdXBkYXRlX2xvd2JhbmQgPSAxOwogICAgaW50IEMgPSBZXyAhPSBO
VUxMID8gMiA6IDE7CiAgICBpbnQgbm9ybV9vZmZzZXQ7CisgICBpbnQgdGhldGFfcmRvID0gZW5j
b2RlICYmIFlfIT1OVUxMICYmICFkdWFsX3N0ZXJlbyAmJiBjb21wbGV4aXR5Pj04OwogI2lmZGVm
IFJFU1lOVEgKICAgIGludCByZXN5bnRoID0gMTsKICNlbHNlCi0gICBpbnQgcmVzeW50aCA9ICFl
bmNvZGU7CisgICBpbnQgcmVzeW50aCA9ICFlbmNvZGUgfHwgdGhldGFfcmRvOwogI2VuZGlmCiAg
ICBzdHJ1Y3QgYmFuZF9jdHggY3R4OwogICAgU0FWRV9TVEFDSzsKQEAgLTEzOTUsOSArMTQzNywy
NCBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhpbnQgZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAqbSwg
aW50IHN0YXJ0LCBpbnQgZW5kLAogICAgQUxMT0MoX25vcm0sIEMqKE0qZUJhbmRzW20tPm5iRUJh
bmRzLTFdLW5vcm1fb2Zmc2V0KSwgY2VsdF9ub3JtKTsKICAgIG5vcm0gPSBfbm9ybTsKICAgIG5v
cm0yID0gbm9ybSArIE0qZUJhbmRzW20tPm5iRUJhbmRzLTFdLW5vcm1fb2Zmc2V0OwotICAgLyog
V2UgY2FuIHVzZSB0aGUgbGFzdCBiYW5kIGFzIHNjcmF0Y2ggc3BhY2UgYmVjYXVzZSB3ZSBkb24n
dCBuZWVkIHRoYXQKLSAgICAgIHNjcmF0Y2ggc3BhY2UgZm9yIHRoZSBsYXN0IGJhbmQuICovCi0g
ICBsb3diYW5kX3NjcmF0Y2ggPSBYXytNKmVCYW5kc1ttLT5uYkVCYW5kcy0xXTsKKworICAgLyog
Rm9yIGRlY29kaW5nLCB3ZSBjYW4gdXNlIHRoZSBsYXN0IGJhbmQgYXMgc2NyYXRjaCBzcGFjZSBi
ZWNhdXNlIHdlIGRvbid0IG5lZWQgdGhhdAorICAgICAgc2NyYXRjaCBzcGFjZSBmb3IgdGhlIGxh
c3QgYmFuZCBhbmQgd2UgZG9uJ3QgY2FyZSBhYm91dCB0aGUgZGF0YSB0aGVyZSB1bnRpbCB3ZSdy
ZQorICAgICAgZGVjb2RpbmcgdGhlIGxhc3QgYmFuZC4gKi8KKyAgIGlmIChlbmNvZGUgJiYgcmVz
eW50aCkKKyAgICAgIHJlc3ludGhfYWxsb2MgPSBNKihlQmFuZHNbbS0+bmJFQmFuZHNdLWVCYW5k
c1ttLT5uYkVCYW5kcy0xXSk7CisgICBlbHNlCisgICAgICByZXN5bnRoX2FsbG9jID0gQUxMT0Nf
Tk9ORTsKKyAgIEFMTE9DKF9sb3diYW5kX3NjcmF0Y2gsIHJlc3ludGhfYWxsb2MsIGNlbHRfbm9y
bSk7CisgICBpZiAoZW5jb2RlICYmIHJlc3ludGgpCisgICAgICBsb3diYW5kX3NjcmF0Y2ggPSBf
bG93YmFuZF9zY3JhdGNoOworICAgZWxzZQorICAgICAgbG93YmFuZF9zY3JhdGNoID0gWF8rTSpl
QmFuZHNbbS0+bmJFQmFuZHMtMV07CisgICBBTExPQyhYX3NhdmUsIHJlc3ludGhfYWxsb2MsIGNl
bHRfbm9ybSk7CisgICBBTExPQyhZX3NhdmUsIHJlc3ludGhfYWxsb2MsIGNlbHRfbm9ybSk7Cisg
ICBBTExPQyhYX3NhdmUyLCByZXN5bnRoX2FsbG9jLCBjZWx0X25vcm0pOworICAgQUxMT0MoWV9z
YXZlMiwgcmVzeW50aF9hbGxvYywgY2VsdF9ub3JtKTsKKyAgIEFMTE9DKG5vcm1fc2F2ZTIsIHJl
c3ludGhfYWxsb2MsIGNlbHRfbm9ybSk7CiAKICAgIGxvd2JhbmRfb2Zmc2V0ID0gMDsKICAgIGN0
eC5iYW5kRSA9IGJhbmRFOwpAQCAtMTQwOCw2ICsxNDY1LDExIEBAIHZvaWQgcXVhbnRfYWxsX2Jh
bmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQsCiAg
ICBjdHguc2VlZCA9ICpzZWVkOwogICAgY3R4LnNwcmVhZCA9IHNwcmVhZDsKICAgIGN0eC5hcmNo
ID0gYXJjaDsKKyAgIGN0eC5kaXNhYmxlX2ludiA9IGRpc2FibGVfaW52OworICAgY3R4LnJlc3lu
dGggPSByZXN5bnRoOworICAgY3R4LnRoZXRhX3JvdW5kID0gMDsKKyAgIC8qIEF2b2lkIGluamVj
dGluZyBub2lzZSBpbiB0aGUgZmlyc3QgYmFuZCBvbiB0cmFuc2llbnRzLiAqLworICAgY3R4LmF2
b2lkX3NwbGl0X25vaXNlID0gQiA+IDE7CiAgICBmb3IgKGk9c3RhcnQ7aTxlbmQ7aSsrKQogICAg
ewogICAgICAgb3B1c19pbnQzMiB0ZWxsOwpAQCAtMTQ0NSw4ICsxNTA3LDE1IEBAIHZvaWQgcXVh
bnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGlu
dCBlbmQsCiAgICAgICAgICBiID0gMDsKICAgICAgIH0KIAorI2lmZGVmIEVOQUJMRV9VUERBVEVf
RFJBRlQKKyAgICAgIGlmIChyZXN5bnRoICYmIChNKmVCYW5kc1tpXS1OID49IE0qZUJhbmRzW3N0
YXJ0XSB8fCBpPT1zdGFydCsxKSAmJiAodXBkYXRlX2xvd2JhbmQgfHwgbG93YmFuZF9vZmZzZXQ9
PTApKQorICAgICAgICAgICAgbG93YmFuZF9vZmZzZXQgPSBpOworICAgICAgaWYgKGkgPT0gc3Rh
cnQrMSkKKyAgICAgICAgIHNwZWNpYWxfaHlicmlkX2ZvbGRpbmcobSwgbm9ybSwgbm9ybTIsIHN0
YXJ0LCBNLCBkdWFsX3N0ZXJlbyk7CisjZWxzZQogICAgICAgaWYgKHJlc3ludGggJiYgTSplQmFu
ZHNbaV0tTiA+PSBNKmVCYW5kc1tzdGFydF0gJiYgKHVwZGF0ZV9sb3diYW5kIHx8IGxvd2JhbmRf
b2Zmc2V0PT0wKSkKICAgICAgICAgICAgIGxvd2JhbmRfb2Zmc2V0ID0gaTsKKyNlbmRpZgogCiAg
ICAgICB0Zl9jaGFuZ2UgPSB0Zl9yZXNbaV07CiAgICAgICBjdHgudGZfY2hhbmdlID0gdGZfY2hh
bmdlOwpAQCAtMTQ1Nyw3ICsxNTI2LDcgQEAgdm9pZCBxdWFudF9hbGxfYmFuZHMoaW50IGVuY29k
ZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwKICAgICAgICAgICAgIFkg
PSBub3JtOwogICAgICAgICAgbG93YmFuZF9zY3JhdGNoID0gTlVMTDsKICAgICAgIH0KLSAgICAg
IGlmIChpPT1lbmQtMSkKKyAgICAgIGlmIChsYXN0ICYmICF0aGV0YV9yZG8pCiAgICAgICAgICBs
b3diYW5kX3NjcmF0Y2ggPSBOVUxMOwogCiAgICAgICAvKiBHZXQgYSBjb25zZXJ2YXRpdmUgZXN0
aW1hdGUgb2YgdGhlIGNvbGxhcHNlX21hc2sncyBmb3IgdGhlIGJhbmRzIHdlJ3JlCkBAIC0xNDcy
LDcgKzE1NDEsMTEgQEAgdm9pZCBxdWFudF9hbGxfYmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VM
VE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwKICAgICAgICAgIGZvbGRfc3RhcnQgPSBsb3di
YW5kX29mZnNldDsKICAgICAgICAgIHdoaWxlKE0qZUJhbmRzWy0tZm9sZF9zdGFydF0gPiBlZmZl
Y3RpdmVfbG93YmFuZCtub3JtX29mZnNldCk7CiAgICAgICAgICBmb2xkX2VuZCA9IGxvd2JhbmRf
b2Zmc2V0LTE7CisjaWZkZWYgRU5BQkxFX1VQREFURV9EUkFGVAorICAgICAgICAgd2hpbGUoKytm
b2xkX2VuZCA8IGkgJiYgTSplQmFuZHNbZm9sZF9lbmRdIDwgZWZmZWN0aXZlX2xvd2JhbmQrbm9y
bV9vZmZzZXQrTik7CisjZWxzZQogICAgICAgICAgd2hpbGUoTSplQmFuZHNbKytmb2xkX2VuZF0g
PCBlZmZlY3RpdmVfbG93YmFuZCtub3JtX29mZnNldCtOKTsKKyNlbmRpZgogICAgICAgICAgeF9j
bSA9IHlfY20gPSAwOwogICAgICAgICAgZm9sZF9pID0gZm9sZF9zdGFydDsgZG8gewogICAgICAg
ICAgICB4X2NtIHw9IGNvbGxhcHNlX21hc2tzW2ZvbGRfaSpDKzBdOwpAQCAtMTUwNSwxMyArMTU3
OCw3NyBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhpbnQgZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAq
bSwgaW50IHN0YXJ0LCBpbnQgZW5kLAogICAgICAgfSBlbHNlIHsKICAgICAgICAgIGlmIChZIT1O
VUxMKQogICAgICAgICAgewotICAgICAgICAgICAgeF9jbSA9IHF1YW50X2JhbmRfc3RlcmVvKCZj
dHgsIFgsIFksIE4sIGIsIEIsCi0gICAgICAgICAgICAgICAgICBlZmZlY3RpdmVfbG93YmFuZCAh
PSAtMSA/IG5vcm0rZWZmZWN0aXZlX2xvd2JhbmQgOiBOVUxMLCBMTSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgIGxhc3Q/TlVMTDpub3JtK00qZUJhbmRzW2ldLW5vcm1fb2Zmc2V0LCBsb3diYW5k
X3NjcmF0Y2gsIHhfY218eV9jbSk7CisgICAgICAgICAgICBpZiAodGhldGFfcmRvICYmIGkgPCBp
bnRlbnNpdHkpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICBlY19jdHggZWNfc2F2ZSwg
ZWNfc2F2ZTI7CisgICAgICAgICAgICAgICBzdHJ1Y3QgYmFuZF9jdHggY3R4X3NhdmUsIGN0eF9z
YXZlMjsKKyAgICAgICAgICAgICAgIG9wdXNfdmFsMzIgZGlzdDAsIGRpc3QxOworICAgICAgICAg
ICAgICAgdW5zaWduZWQgY20sIGNtMjsKKyAgICAgICAgICAgICAgIGludCBuc3RhcnRfYnl0ZXMs
IG5lbmRfYnl0ZXMsIHNhdmVfYnl0ZXM7CisgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpi
eXRlc19idWY7CisgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyIGJ5dGVzX3NhdmVbMTI3NV07
CisgICAgICAgICAgICAgICBvcHVzX3ZhbDE2IHdbMl07CisgICAgICAgICAgICAgICBjb21wdXRl
X2NoYW5uZWxfd2VpZ2h0cyhiYW5kRVtpXSwgYmFuZEVbaSttLT5uYkVCYW5kc10sIHcpOworICAg
ICAgICAgICAgICAgLyogTWFrZSBhIGNvcHkuICovCisgICAgICAgICAgICAgICBjbSA9IHhfY218
eV9jbTsKKyAgICAgICAgICAgICAgIGVjX3NhdmUgPSAqZWM7CisgICAgICAgICAgICAgICBjdHhf
c2F2ZSA9IGN0eDsKKyAgICAgICAgICAgICAgIE9QVVNfQ09QWShYX3NhdmUsIFgsIE4pOworICAg
ICAgICAgICAgICAgT1BVU19DT1BZKFlfc2F2ZSwgWSwgTik7CisgICAgICAgICAgICAgICAvKiBF
bmNvZGUgYW5kIHJvdW5kIGRvd24uICovCisgICAgICAgICAgICAgICBjdHgudGhldGFfcm91bmQg
PSAtMTsKKyAgICAgICAgICAgICAgIHhfY20gPSBxdWFudF9iYW5kX3N0ZXJlbygmY3R4LCBYLCBZ
LCBOLCBiLCBCLAorICAgICAgICAgICAgICAgICAgICAgZWZmZWN0aXZlX2xvd2JhbmQgIT0gLTEg
PyBub3JtK2VmZmVjdGl2ZV9sb3diYW5kIDogTlVMTCwgTE0sCisgICAgICAgICAgICAgICAgICAg
ICBsYXN0P05VTEw6bm9ybStNKmVCYW5kc1tpXS1ub3JtX29mZnNldCwgbG93YmFuZF9zY3JhdGNo
LCBjbSk7CisgICAgICAgICAgICAgICBkaXN0MCA9IE1VTFQxNl8zMl9RMTUod1swXSwgY2VsdF9p
bm5lcl9wcm9kKFhfc2F2ZSwgWCwgTiwgYXJjaCkpICsgTVVMVDE2XzMyX1ExNSh3WzFdLCBjZWx0
X2lubmVyX3Byb2QoWV9zYXZlLCBZLCBOLCBhcmNoKSk7CisKKyAgICAgICAgICAgICAgIC8qIFNh
dmUgZmlyc3QgcmVzdWx0LiAqLworICAgICAgICAgICAgICAgY20yID0geF9jbTsKKyAgICAgICAg
ICAgICAgIGVjX3NhdmUyID0gKmVjOworICAgICAgICAgICAgICAgY3R4X3NhdmUyID0gY3R4Owor
ICAgICAgICAgICAgICAgT1BVU19DT1BZKFhfc2F2ZTIsIFgsIE4pOworICAgICAgICAgICAgICAg
T1BVU19DT1BZKFlfc2F2ZTIsIFksIE4pOworICAgICAgICAgICAgICAgaWYgKCFsYXN0KQorICAg
ICAgICAgICAgICAgICAgT1BVU19DT1BZKG5vcm1fc2F2ZTIsIG5vcm0rTSplQmFuZHNbaV0tbm9y
bV9vZmZzZXQsIE4pOworICAgICAgICAgICAgICAgbnN0YXJ0X2J5dGVzID0gZWNfc2F2ZS5vZmZz
OworICAgICAgICAgICAgICAgbmVuZF9ieXRlcyA9IGVjX3NhdmUuc3RvcmFnZTsKKyAgICAgICAg
ICAgICAgIGJ5dGVzX2J1ZiA9IGVjX3NhdmUuYnVmK25zdGFydF9ieXRlczsKKyAgICAgICAgICAg
ICAgIHNhdmVfYnl0ZXMgPSBuZW5kX2J5dGVzLW5zdGFydF9ieXRlczsKKyAgICAgICAgICAgICAg
IE9QVVNfQ09QWShieXRlc19zYXZlLCBieXRlc19idWYsIHNhdmVfYnl0ZXMpOworCisgICAgICAg
ICAgICAgICAvKiBSZXN0b3JlICovCisgICAgICAgICAgICAgICAqZWMgPSBlY19zYXZlOworICAg
ICAgICAgICAgICAgY3R4ID0gY3R4X3NhdmU7CisgICAgICAgICAgICAgICBPUFVTX0NPUFkoWCwg
WF9zYXZlLCBOKTsKKyAgICAgICAgICAgICAgIE9QVVNfQ09QWShZLCBZX3NhdmUsIE4pOworICAg
ICAgICAgICAgICAgaWYgKGkgPT0gc3RhcnQrMSkKKyAgICAgICAgICAgICAgICAgIHNwZWNpYWxf
aHlicmlkX2ZvbGRpbmcobSwgbm9ybSwgbm9ybTIsIHN0YXJ0LCBNLCBkdWFsX3N0ZXJlbyk7Cisg
ICAgICAgICAgICAgICAvKiBFbmNvZGUgYW5kIHJvdW5kIHVwLiAqLworICAgICAgICAgICAgICAg
Y3R4LnRoZXRhX3JvdW5kID0gMTsKKyAgICAgICAgICAgICAgIHhfY20gPSBxdWFudF9iYW5kX3N0
ZXJlbygmY3R4LCBYLCBZLCBOLCBiLCBCLAorICAgICAgICAgICAgICAgICAgICAgZWZmZWN0aXZl
X2xvd2JhbmQgIT0gLTEgPyBub3JtK2VmZmVjdGl2ZV9sb3diYW5kIDogTlVMTCwgTE0sCisgICAg
ICAgICAgICAgICAgICAgICBsYXN0P05VTEw6bm9ybStNKmVCYW5kc1tpXS1ub3JtX29mZnNldCwg
bG93YmFuZF9zY3JhdGNoLCBjbSk7CisgICAgICAgICAgICAgICBkaXN0MSA9IE1VTFQxNl8zMl9R
MTUod1swXSwgY2VsdF9pbm5lcl9wcm9kKFhfc2F2ZSwgWCwgTiwgYXJjaCkpICsgTVVMVDE2XzMy
X1ExNSh3WzFdLCBjZWx0X2lubmVyX3Byb2QoWV9zYXZlLCBZLCBOLCBhcmNoKSk7CisgICAgICAg
ICAgICAgICBpZiAoZGlzdDAgPj0gZGlzdDEpIHsKKyAgICAgICAgICAgICAgICAgIHhfY20gPSBj
bTI7CisgICAgICAgICAgICAgICAgICAqZWMgPSBlY19zYXZlMjsKKyAgICAgICAgICAgICAgICAg
IGN0eCA9IGN0eF9zYXZlMjsKKyAgICAgICAgICAgICAgICAgIE9QVVNfQ09QWShYLCBYX3NhdmUy
LCBOKTsKKyAgICAgICAgICAgICAgICAgIE9QVVNfQ09QWShZLCBZX3NhdmUyLCBOKTsKKyAgICAg
ICAgICAgICAgICAgIGlmICghbGFzdCkKKyAgICAgICAgICAgICAgICAgICAgIE9QVVNfQ09QWShu
b3JtK00qZUJhbmRzW2ldLW5vcm1fb2Zmc2V0LCBub3JtX3NhdmUyLCBOKTsKKyAgICAgICAgICAg
ICAgICAgIE9QVVNfQ09QWShieXRlc19idWYsIGJ5dGVzX3NhdmUsIHNhdmVfYnl0ZXMpOworICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgIGN0eC50
aGV0YV9yb3VuZCA9IDA7CisgICAgICAgICAgICAgICB4X2NtID0gcXVhbnRfYmFuZF9zdGVyZW8o
JmN0eCwgWCwgWSwgTiwgYiwgQiwKKyAgICAgICAgICAgICAgICAgICAgIGVmZmVjdGl2ZV9sb3di
YW5kICE9IC0xID8gbm9ybStlZmZlY3RpdmVfbG93YmFuZCA6IE5VTEwsIExNLAorICAgICAgICAg
ICAgICAgICAgICAgbGFzdD9OVUxMOm5vcm0rTSplQmFuZHNbaV0tbm9ybV9vZmZzZXQsIGxvd2Jh
bmRfc2NyYXRjaCwgeF9jbXx5X2NtKTsKKyAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7
CiAgICAgICAgICAgICB4X2NtID0gcXVhbnRfYmFuZCgmY3R4LCBYLCBOLCBiLCBCLAogICAgICAg
ICAgICAgICAgICAgZWZmZWN0aXZlX2xvd2JhbmQgIT0gLTEgPyBub3JtK2VmZmVjdGl2ZV9sb3di
YW5kIDogTlVMTCwgTE0sCi0gICAgICAgICAgICAgICAgICAgICAgICBsYXN0P05VTEw6bm9ybStN
KmVCYW5kc1tpXS1ub3JtX29mZnNldCwgUTE1T05FLCBsb3diYW5kX3NjcmF0Y2gsIHhfY218eV9j
bSk7CisgICAgICAgICAgICAgICAgICBsYXN0P05VTEw6bm9ybStNKmVCYW5kc1tpXS1ub3JtX29m
ZnNldCwgUTE1T05FLCBsb3diYW5kX3NjcmF0Y2gsIHhfY218eV9jbSk7CiAgICAgICAgICB9CiAg
ICAgICAgICB5X2NtID0geF9jbTsKICAgICAgIH0KQEAgLTE1MjEsNiArMTY1OCw5IEBAIHZvaWQg
cXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQs
IGludCBlbmQsCiAKICAgICAgIC8qIFVwZGF0ZSB0aGUgZm9sZGluZyBwb3NpdGlvbiBvbmx5IGFz
IGxvbmcgYXMgd2UgaGF2ZSAxIGJpdC9zYW1wbGUgZGVwdGguICovCiAgICAgICB1cGRhdGVfbG93
YmFuZCA9IGI+KE48PEJJVFJFUyk7CisgICAgICAvKiBXZSBvbmx5IG5lZWQgdG8gYXZvaWQgbm9p
c2Ugb24gYSBzcGxpdCBmb3IgdGhlIGZpcnN0IGJhbmQuIEFmdGVyIHRoYXQsIHdlCisgICAgICAg
ICBoYXZlIGZvbGRpbmcuICovCisgICAgICBjdHguYXZvaWRfc3BsaXRfbm9pc2UgPSAwOwogICAg
fQogICAgKnNlZWQgPSBjdHguc2VlZDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2JhbmRzLmggYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
YmFuZHMuaAppbmRleCBlOGJlZjRiYWQwZTBiMjU0ZDkxMDYyYzM2YjdhYWUyNWQzMWRjNzhhLi4y
NDg4YzE4NTIxMzBkNjVjMWU3NjBiZjU3ZWU4NWY2NWVjMWJiM2IwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
YmFuZHMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvYmFuZHMuaApAQCAtMzYsMTIgKzM2LDE1IEBACiAjaW5jbHVkZSAi
ZW50ZGVjLmgiCiAjaW5jbHVkZSAicmF0ZS5oIgogCitvcHVzX2ludDE2IGJpdGV4YWN0X2Nvcyhv
cHVzX2ludDE2IHgpOworaW50IGJpdGV4YWN0X2xvZzJ0YW4oaW50IGlzaW4saW50IGljb3MpOwor
CiAvKiogQ29tcHV0ZSB0aGUgYW1wbGl0dWRlIChzcXJ0IGVuZXJneSkgaW4gZWFjaCBvZiB0aGUg
YmFuZHMKICAqIEBwYXJhbSBtIE1vZGUgZGF0YQogICogQHBhcmFtIFggU3BlY3RydW0KICAqIEBw
YXJhbSBiYW5kRSBTcXVhcmUgcm9vdCBvZiB0aGUgZW5lcmd5IGZvciBlYWNoIGJhbmQgKHJldHVy
bmVkKQogICovCi12b2lkIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhjb25zdCBDRUxUTW9kZSAqbSwg
Y29uc3QgY2VsdF9zaWcgKlgsIGNlbHRfZW5lciAqYmFuZEUsIGludCBlbmQsIGludCBDLCBpbnQg
TE0pOwordm9pZCBjb21wdXRlX2JhbmRfZW5lcmdpZXMoY29uc3QgQ0VMVE1vZGUgKm0sIGNvbnN0
IGNlbHRfc2lnICpYLCBjZWx0X2VuZXIgKmJhbmRFLCBpbnQgZW5kLCBpbnQgQywgaW50IExNLCBp
bnQgYXJjaCk7CiAKIC8qdm9pZCBjb21wdXRlX25vaXNlX2VuZXJnaWVzKGNvbnN0IENFTFRNb2Rl
ICptLCBjb25zdCBjZWx0X3NpZyAqWCwgY29uc3Qgb3B1c192YWwxNiAqdG9uYWxpdHksIGNlbHRf
ZW5lciAqYmFuZEUpOyovCiAKQEAgLTEwNSw3ICsxMDgsNyBAQCB2b2lkIHF1YW50X2FsbF9iYW5k
cyhpbnQgZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAogICAg
ICAgY29uc3QgY2VsdF9lbmVyICpiYW5kRSwgaW50ICpwdWxzZXMsIGludCBzaG9ydEJsb2Nrcywg
aW50IHNwcmVhZCwKICAgICAgIGludCBkdWFsX3N0ZXJlbywgaW50IGludGVuc2l0eSwgaW50ICp0
Zl9yZXMsIG9wdXNfaW50MzIgdG90YWxfYml0cywKICAgICAgIG9wdXNfaW50MzIgYmFsYW5jZSwg
ZWNfY3R4ICplYywgaW50IE0sIGludCBjb2RlZEJhbmRzLCBvcHVzX3VpbnQzMiAqc2VlZCwKLSAg
ICAgIGludCBhcmNoKTsKKyAgICAgIGludCBjb21wbGV4aXR5LCBpbnQgYXJjaCwgaW50IGRpc2Fi
bGVfaW52KTsKIAogdm9pZCBhbnRpX2NvbGxhcHNlKGNvbnN0IENFTFRNb2RlICptLCBjZWx0X25v
cm0gKlhfLAogICAgICAgdW5zaWduZWQgY2hhciAqY29sbGFwc2VfbWFza3MsIGludCBMTSwgaW50
IEMsIGludCBzaXplLCBpbnQgc3RhcnQsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdC5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Nl
bHQuYwppbmRleCBiMTIxYzUxYTFmYWE2NDg2MDcxOTUwZWU0YTQ1OTVlZGEwNWU4YmM5Li45Y2Uy
MzQ2OTVjZTBkMzE0Mjc5MDIyODYxZGYxNWNhYmE1MTkwZDgzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2Vs
dC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9jZWx0LmMKQEAgLTExMSwyNiArMTExLDMxIEBAIHZvaWQgY29tYl9maWx0
ZXJfY29uc3RfYyhvcHVzX3ZhbDMyICp5LCBvcHVzX3ZhbDMyICp4LCBpbnQgVCwgaW50IE4sCiAg
ICAgICB0ID0gTUFDMTZfMzJfUTE2KHhbaV0sIGcxMCwgeDIpOwogICAgICAgdCA9IE1BQzE2XzMy
X1ExNih0LCBnMTEsIEFERDMyKHgxLHgzKSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcx
MiwgQUREMzIoeDAseDQpKTsKKyAgICAgIHQgPSBTQVRVUkFURSh0LCBTSUdfU0FUKTsKICAgICAg
IHlbaV0gPSB0OwogICAgICAgeDQ9U0hMMzIoeFtpLVQrM10sMSk7CiAgICAgICB0ID0gTUFDMTZf
MzJfUTE2KHhbaSsxXSwgZzEwLCB4MSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcxMSwg
QUREMzIoeDAseDIpKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYodCwgZzEyLCBBREQzMih4NCx4
MykpOworICAgICAgdCA9IFNBVFVSQVRFKHQsIFNJR19TQVQpOwogICAgICAgeVtpKzFdID0gdDsK
ICAgICAgIHgzPVNITDMyKHhbaS1UKzRdLDEpOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih4W2kr
Ml0sIGcxMCwgeDApOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTEsIEFERDMyKHg0LHgx
KSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcxMiwgQUREMzIoeDMseDIpKTsKKyAgICAg
IHQgPSBTQVRVUkFURSh0LCBTSUdfU0FUKTsKICAgICAgIHlbaSsyXSA9IHQ7CiAgICAgICB4Mj1T
SEwzMih4W2ktVCs1XSwxKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYoeFtpKzNdLCBnMTAsIHg0
KTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYodCwgZzExLCBBREQzMih4Myx4MCkpOwogICAgICAg
dCA9IE1BQzE2XzMyX1ExNih0LCBnMTIsIEFERDMyKHgyLHgxKSk7CisgICAgICB0ID0gU0FUVVJB
VEUodCwgU0lHX1NBVCk7CiAgICAgICB5W2krM10gPSB0OwogICAgICAgeDE9U0hMMzIoeFtpLVQr
Nl0sMSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHhbaSs0XSwgZzEwLCB4Myk7CiAgICAgICB0
ID0gTUFDMTZfMzJfUTE2KHQsIGcxMSwgQUREMzIoeDIseDQpKTsKICAgICAgIHQgPSBNQUMxNl8z
Ml9RMTYodCwgZzEyLCBBREQzMih4MSx4MCkpOworICAgICAgdCA9IFNBVFVSQVRFKHQsIFNJR19T
QVQpOwogICAgICAgeVtpKzRdID0gdDsKICAgIH0KICNpZmRlZiBDVVNUT01fTU9ERVMKQEAgLTE0
MSw2ICsxNDYsNyBAQCB2b2lkIGNvbWJfZmlsdGVyX2NvbnN0X2Mob3B1c192YWwzMiAqeSwgb3B1
c192YWwzMiAqeCwgaW50IFQsIGludCBOLAogICAgICAgdCA9IE1BQzE2XzMyX1ExNih4W2ldLCBn
MTAsIHgyKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYodCwgZzExLCBBREQzMih4MSx4MykpOwog
ICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTIsIEFERDMyKHgwLHg0KSk7CisgICAgICB0ID0g
U0FUVVJBVEUodCwgU0lHX1NBVCk7CiAgICAgICB5W2ldID0gdDsKICAgICAgIHg0PXgzOwogICAg
ICAgeDM9eDI7CkBAIC0xNjksNiArMTc1LDcgQEAgdm9pZCBjb21iX2ZpbHRlcl9jb25zdF9jKG9w
dXNfdmFsMzIgKnksIG9wdXNfdmFsMzIgKngsIGludCBULCBpbnQgTiwKICAgICAgICAgICAgICAg
ICsgTVVMVDE2XzMyX1ExNShnMTAseDIpCiAgICAgICAgICAgICAgICArIE1VTFQxNl8zMl9RMTUo
ZzExLEFERDMyKHgxLHgzKSkKICAgICAgICAgICAgICAgICsgTVVMVDE2XzMyX1ExNShnMTIsQURE
MzIoeDAseDQpKTsKKyAgICAgIHlbaV0gPSBTQVRVUkFURSh5W2ldLCBTSUdfU0FUKTsKICAgICAg
IHg0PXgzOwogICAgICAgeDM9eDI7CiAgICAgICB4Mj14MTsKQEAgLTIwMCw2ICsyMDcsMTAgQEAg
dm9pZCBjb21iX2ZpbHRlcihvcHVzX3ZhbDMyICp5LCBvcHVzX3ZhbDMyICp4LCBpbnQgVDAsIGlu
dCBUMSwgaW50IE4sCiAgICAgICAgICBPUFVTX01PVkUoeSwgeCwgTik7CiAgICAgICByZXR1cm47
CiAgICB9CisgICAvKiBXaGVuIHRoZSBnYWluIGlzIHplcm8sIFQwIGFuZC9vciBUMSBpcyBzZXQg
dG8gemVyby4gV2UgbmVlZAorICAgICAgdG8gaGF2ZSB0aGVuIGJlIGF0IGxlYXN0IDIgdG8gYXZv
aWQgcHJvY2Vzc2luZyBnYXJiYWdlIGRhdGEuICovCisgICBUMCA9IElNQVgoVDAsIENPTUJGSUxU
RVJfTUlOUEVSSU9EKTsKKyAgIFQxID0gSU1BWChUMSwgQ09NQkZJTFRFUl9NSU5QRVJJT0QpOwog
ICAgZzAwID0gTVVMVDE2XzE2X1AxNShnMCwgZ2FpbnNbdGFwc2V0MF1bMF0pOwogICAgZzAxID0g
TVVMVDE2XzE2X1AxNShnMCwgZ2FpbnNbdGFwc2V0MF1bMV0pOwogICAgZzAyID0gTVVMVDE2XzE2
X1AxNShnMCwgZ2FpbnNbdGFwc2V0MF1bMl0pOwpAQCAtMjI1LDYgKzIzNiw3IEBAIHZvaWQgY29t
Yl9maWx0ZXIob3B1c192YWwzMiAqeSwgb3B1c192YWwzMiAqeCwgaW50IFQwLCBpbnQgVDEsIGlu
dCBOLAogICAgICAgICAgICAgICAgKyBNVUxUMTZfMzJfUTE1KE1VTFQxNl8xNl9RMTUoZixnMTAp
LHgyKQogICAgICAgICAgICAgICAgKyBNVUxUMTZfMzJfUTE1KE1VTFQxNl8xNl9RMTUoZixnMTEp
LEFERDMyKHgxLHgzKSkKICAgICAgICAgICAgICAgICsgTVVMVDE2XzMyX1ExNShNVUxUMTZfMTZf
UTE1KGYsZzEyKSxBREQzMih4MCx4NCkpOworICAgICAgeVtpXSA9IFNBVFVSQVRFKHlbaV0sIFNJ
R19TQVQpOwogICAgICAgeDQ9eDM7CiAgICAgICB4Mz14MjsKICAgICAgIHgyPXgxOwpAQCAtMjQ0
LDExICsyNTYsMTYgQEAgdm9pZCBjb21iX2ZpbHRlcihvcHVzX3ZhbDMyICp5LCBvcHVzX3ZhbDMy
ICp4LCBpbnQgVDAsIGludCBUMSwgaW50IE4sCiB9CiAjZW5kaWYgLyogT1ZFUlJJREVfY29tYl9m
aWx0ZXIgKi8KIAorLyogVEYgY2hhbmdlIHRhYmxlLiBQb3NpdGl2ZSB2YWx1ZXMgbWVhbiBiZXR0
ZXIgZnJlcXVlbmN5IHJlc29sdXRpb24gKGxvbmdlcgorICAgZWZmZWN0aXZlIHdpbmRvdyksIHdo
ZXJlYXMgbmVnYXRpdmUgdmFsdWVzIG1lYW4gYmV0dGVyIHRpbWUgcmVzb2x1dGlvbgorICAgKHNo
b3J0ZXIgZWZmZWN0aXZlIHdpbmRvdykuIFRoZSBzZWNvbmQgaW5kZXggaXMgY29tcHV0ZWQgYXM6
CisgICA0KmlzVHJhbnNpZW50ICsgMip0Zl9zZWxlY3QgKyBwZXJfYmFuZF9mbGFnICovCiBjb25z
dCBzaWduZWQgY2hhciB0Zl9zZWxlY3RfdGFibGVbNF1bOF0gPSB7Ci0gICAgICB7MCwgLTEsIDAs
IC0xLCAgICAwLC0xLCAwLC0xfSwKLSAgICAgIHswLCAtMSwgMCwgLTIsICAgIDEsIDAsIDEsLTF9
LAotICAgICAgezAsIC0yLCAwLCAtMywgICAgMiwgMCwgMSwtMX0sCi0gICAgICB7MCwgLTIsIDAs
IC0zLCAgICAzLCAwLCAxLC0xfSwKKyAgICAvKmlzVHJhbnNpZW50PTAgICAgIGlzVHJhbnNpZW50
PTEgKi8KKyAgICAgIHswLCAtMSwgMCwgLTEsICAgIDAsLTEsIDAsLTF9LCAvKiAyLjUgbXMgKi8K
KyAgICAgIHswLCAtMSwgMCwgLTIsICAgIDEsIDAsIDEsLTF9LCAvKiA1IG1zICovCisgICAgICB7
MCwgLTIsIDAsIC0zLCAgICAyLCAwLCAxLC0xfSwgLyogMTAgbXMgKi8KKyAgICAgIHswLCAtMiwg
MCwgLTMsICAgIDMsIDAsIDEsLTF9LCAvKiAyMCBtcyAqLwogfTsKIAogCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvY2VsdC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9jZWx0L2NlbHQuaAppbmRleCBkMWY3ZWI2OTBkYjNmNjQxMDQ3YjMxYmFjN2M0
MTMyOGNmYmEzMDU4Li43MDE3NTMwMTAwYTNkOTA0NTZiNzY2YTU1ODQ0NWRiOWFlNDMwODZkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQvY2VsdC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0LmgKQEAgLTUwLDYgKzUwLDggQEAg
ZXh0ZXJuICJDIiB7CiAjZGVmaW5lIENFTFREZWNvZGVyIE9wdXNDdXN0b21EZWNvZGVyCiAjZGVm
aW5lIENFTFRNb2RlIE9wdXNDdXN0b21Nb2RlCiAKKyNkZWZpbmUgTEVBS19CQU5EUyAxOQorCiB0
eXBlZGVmIHN0cnVjdCB7CiAgICBpbnQgdmFsaWQ7CiAgICBmbG9hdCB0b25hbGl0eTsKQEAgLTU3
LDE3ICs1OSwyNSBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICBmbG9hdCBub2lzaW5lc3M7CiAgICBm
bG9hdCBhY3Rpdml0eTsKICAgIGZsb2F0IG11c2ljX3Byb2I7Ci0gICBpbnQgICAgICAgIGJhbmR3
aWR0aDsKLX1BbmFseXNpc0luZm87CisgICBmbG9hdCB2YWRfcHJvYjsKKyAgIGludCAgIGJhbmR3
aWR0aDsKKyAgIGZsb2F0IGFjdGl2aXR5X3Byb2JhYmlsaXR5OworICAgLyogU3RvcmUgYXMgUTYg
Y2hhciB0byBzYXZlIHNwYWNlLiAqLworICAgdW5zaWduZWQgY2hhciBsZWFrX2Jvb3N0W0xFQUtf
QkFORFNdOworfSBBbmFseXNpc0luZm87CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgIGludCBzaWdu
YWxUeXBlOworICAgaW50IG9mZnNldDsKK30gU0lMS0luZm87CiAKICNkZWZpbmUgX19jZWx0X2No
ZWNrX21vZGVfcHRyX3B0cihwdHIpICgocHRyKSArICgocHRyKSAtIChjb25zdCBDRUxUTW9kZSoq
KShwdHIpKSkKIAogI2RlZmluZSBfX2NlbHRfY2hlY2tfYW5hbHlzaXNfcHRyKHB0cikgKChwdHIp
ICsgKChwdHIpIC0gKGNvbnN0IEFuYWx5c2lzSW5mbyopKHB0cikpKQogCi0vKiBFbmNvZGVyL2Rl
Y29kZXIgUmVxdWVzdHMgKi8KKyNkZWZpbmUgX19jZWx0X2NoZWNrX3NpbGtpbmZvX3B0cihwdHIp
ICgocHRyKSArICgocHRyKSAtIChjb25zdCBTSUxLSW5mbyopKHB0cikpKQogCi0vKiBFeHBvc2Ug
dGhpcyBvcHRpb24gYWdhaW4gd2hlbiB2YXJpYWJsZSBmcmFtZXNpemUgYWN0dWFsbHkgd29ya3Mg
Ki8KLSNkZWZpbmUgT1BVU19GUkFNRVNJWkVfVkFSSUFCTEUgICAgICAgICAgICAgIDUwMTAgLyoq
PCBPcHRpbWl6ZSB0aGUgZnJhbWUgc2l6ZSBkeW5hbWljYWxseSAqLworLyogRW5jb2Rlci9kZWNv
ZGVyIFJlcXVlc3RzICovCiAKIAogI2RlZmluZSBDRUxUX1NFVF9QUkVESUNUSU9OX1JFUVVFU1Qg
ICAgMTAwMDIKQEAgLTExNiw2ICsxMjYsOSBAQCB0eXBlZGVmIHN0cnVjdCB7CiAjZGVmaW5lIE9Q
VVNfU0VUX0VORVJHWV9NQVNLX1JFUVVFU1QgICAgMTAwMjYKICNkZWZpbmUgT1BVU19TRVRfRU5F
UkdZX01BU0soeCkgT1BVU19TRVRfRU5FUkdZX01BU0tfUkVRVUVTVCwgX19vcHVzX2NoZWNrX3Zh
bDE2X3B0cih4KQogCisjZGVmaW5lIENFTFRfU0VUX1NJTEtfSU5GT19SRVFVRVNUICAgIDEwMDI4
CisjZGVmaW5lIENFTFRfU0VUX1NJTEtfSU5GTyh4KSBDRUxUX1NFVF9TSUxLX0lORk9fUkVRVUVT
VCwgX19jZWx0X2NoZWNrX3NpbGtpbmZvX3B0cih4KQorCiAvKiBFbmNvZGVyIHN0dWZmICovCiAK
IGludCBjZWx0X2VuY29kZXJfZ2V0X3NpemUoaW50IGNoYW5uZWxzKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9jZWx0X2RlY29kZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2RlY29kZXIuYwppbmRleCBiOTc4YmIzNGQxYjcw
MTU4MTc2MzdjZDAxNzI0MjVhYThmYWJiNjBiLi41NjdkNzQ1NjQ5Yjk4YWQ5YzY2MWZiZjUzZjcz
ZDBhN2RhMGE3OGIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9kZWNvZGVyLmMKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Nl
bHRfZGVjb2Rlci5jCkBAIC03Myw2ICs3Myw3IEBAIHN0cnVjdCBPcHVzQ3VzdG9tRGVjb2RlciB7
CiAgICBpbnQgZG93bnNhbXBsZTsKICAgIGludCBzdGFydCwgZW5kOwogICAgaW50IHNpZ25hbGxp
bmc7CisgICBpbnQgZGlzYWJsZV9pbnY7CiAgICBpbnQgYXJjaDsKIAogICAgLyogRXZlcnl0aGlu
ZyBiZXlvbmQgdGhpcyBwb2ludCBnZXRzIGNsZWFyZWQgb24gYSByZXNldCAqLwpAQCAtMTYzLDYg
KzE2NCwxMSBAQCBPUFVTX0NVU1RPTV9OT1NUQVRJQyBpbnQgb3B1c19jdXN0b21fZGVjb2Rlcl9p
bml0KENFTFREZWNvZGVyICpzdCwgY29uc3QgQ0VMVE1vZAogICAgc3QtPnN0YXJ0ID0gMDsKICAg
IHN0LT5lbmQgPSBzdC0+bW9kZS0+ZWZmRUJhbmRzOwogICAgc3QtPnNpZ25hbGxpbmcgPSAxOwor
I2lmZGVmIEVOQUJMRV9VUERBVEVfRFJBRlQKKyAgIHN0LT5kaXNhYmxlX2ludiA9IGNoYW5uZWxz
ID09IDE7CisjZWxzZQorICAgc3QtPmRpc2FibGVfaW52ID0gMDsKKyNlbmRpZgogICAgc3QtPmFy
Y2ggPSBvcHVzX3NlbGVjdF9hcmNoKCk7CiAKICAgIG9wdXNfY3VzdG9tX2RlY29kZXJfY3RsKHN0
LCBPUFVTX1JFU0VUX1NUQVRFKTsKQEAgLTE3Nyw2ICsxODMsMzYgQEAgdm9pZCBvcHVzX2N1c3Rv
bV9kZWNvZGVyX2Rlc3Ryb3koQ0VMVERlY29kZXIgKnN0KQogfQogI2VuZGlmIC8qIENVU1RPTV9N
T0RFUyAqLwogCisjaWZuZGVmIENVU1RPTV9NT0RFUworLyogU3BlY2lhbCBjYXNlIGZvciBzdGVy
ZW8gd2l0aCBubyBkb3duc2FtcGxpbmcgYW5kIG5vIGFjY3VtdWxhdGlvbi4gVGhpcyBpcworICAg
cXVpdGUgY29tbW9uIGFuZCB3ZSBjYW4gbWFrZSBpdCBmYXN0ZXIgYnkgcHJvY2Vzc2luZyBib3Ro
IGNoYW5uZWxzIGluIHRoZQorICAgc2FtZSBsb29wLCByZWR1Y2luZyBvdmVyaGVhZCBkdWUgdG8g
dGhlIGRlcGVuZGVuY3kgbG9vcCBpbiB0aGUgSUlSIGZpbHRlci4gKi8KK3N0YXRpYyB2b2lkIGRl
ZW1waGFzaXNfc3RlcmVvX3NpbXBsZShjZWx0X3NpZyAqaW5bXSwgb3B1c192YWwxNiAqcGNtLCBp
bnQgTiwgY29uc3Qgb3B1c192YWwxNiBjb2VmMCwKKyAgICAgIGNlbHRfc2lnICptZW0pCit7Cisg
ICBjZWx0X3NpZyAqIE9QVVNfUkVTVFJJQ1QgeDA7CisgICBjZWx0X3NpZyAqIE9QVVNfUkVTVFJJ
Q1QgeDE7CisgICBjZWx0X3NpZyBtMCwgbTE7CisgICBpbnQgajsKKyAgIHgwPWluWzBdOworICAg
eDE9aW5bMV07CisgICBtMCA9IG1lbVswXTsKKyAgIG0xID0gbWVtWzFdOworICAgZm9yIChqPTA7
ajxOO2orKykKKyAgIHsKKyAgICAgIGNlbHRfc2lnIHRtcDAsIHRtcDE7CisgICAgICAvKiBBZGQg
VkVSWV9TTUFMTCB0byB4W10gZmlyc3QgdG8gcmVkdWNlIGRlcGVuZGVuY3kgY2hhaW4uICovCisg
ICAgICB0bXAwID0geDBbal0gKyBWRVJZX1NNQUxMICsgbTA7CisgICAgICB0bXAxID0geDFbal0g
KyBWRVJZX1NNQUxMICsgbTE7CisgICAgICBtMCA9IE1VTFQxNl8zMl9RMTUoY29lZjAsIHRtcDAp
OworICAgICAgbTEgPSBNVUxUMTZfMzJfUTE1KGNvZWYwLCB0bXAxKTsKKyAgICAgIHBjbVsyKmog
IF0gPSBTQ0FMRU9VVChTSUcyV09SRDE2KHRtcDApKTsKKyAgICAgIHBjbVsyKmorMV0gPSBTQ0FM
RU9VVChTSUcyV09SRDE2KHRtcDEpKTsKKyAgIH0KKyAgIG1lbVswXSA9IG0wOworICAgbWVtWzFd
ID0gbTE7Cit9CisjZW5kaWYKIAogI2lmbmRlZiBSRVNZTlRICiBzdGF0aWMKQEAgLTE5MCw2ICsy
MjYsMTQgQEAgdm9pZCBkZWVtcGhhc2lzKGNlbHRfc2lnICppbltdLCBvcHVzX3ZhbDE2ICpwY20s
IGludCBOLCBpbnQgQywgaW50IGRvd25zYW1wbGUsIGMKICAgIG9wdXNfdmFsMTYgY29lZjA7CiAg
ICBWQVJERUNMKGNlbHRfc2lnLCBzY3JhdGNoKTsKICAgIFNBVkVfU1RBQ0s7CisjaWZuZGVmIENV
U1RPTV9NT0RFUworICAgLyogU2hvcnQgdmVyc2lvbiBmb3IgY29tbW9uIGNhc2UuICovCisgICBp
ZiAoZG93bnNhbXBsZSA9PSAxICYmIEMgPT0gMiAmJiAhYWNjdW0pCisgICB7CisgICAgICBkZWVt
cGhhc2lzX3N0ZXJlb19zaW1wbGUoaW4sIHBjbSwgTiwgY29lZlswXSwgbWVtKTsKKyAgICAgIHJl
dHVybjsKKyAgIH0KKyNlbmRpZgogI2lmbmRlZiBGSVhFRF9QT0lOVAogICAgKHZvaWQpYWNjdW07
CiAgICBjZWx0X2Fzc2VydChhY2N1bT09MCk7CkBAIC0yMjUsNyArMjY5LDcgQEAgdm9pZCBkZWVt
cGhhc2lzKGNlbHRfc2lnICppbltdLCBvcHVzX3ZhbDE2ICpwY20sIGludCBOLCBpbnQgQywgaW50
IGRvd25zYW1wbGUsIGMKICAgICAgICAgIC8qIFNob3J0Y3V0IGZvciB0aGUgc3RhbmRhcmQgKG5v
bi1jdXN0b20gbW9kZXMpIGNhc2UgKi8KICAgICAgICAgIGZvciAoaj0wO2o8TjtqKyspCiAgICAg
ICAgICB7Ci0gICAgICAgICAgICBjZWx0X3NpZyB0bXAgPSB4W2pdICsgbSArIFZFUllfU01BTEw7
CisgICAgICAgICAgICBjZWx0X3NpZyB0bXAgPSB4W2pdICsgVkVSWV9TTUFMTCArIG07CiAgICAg
ICAgICAgICBtID0gTVVMVDE2XzMyX1ExNShjb2VmMCwgdG1wKTsKICAgICAgICAgICAgIHNjcmF0
Y2hbal0gPSB0bXA7CiAgICAgICAgICB9CkBAIC0yNDYsNyArMjkwLDcgQEAgdm9pZCBkZWVtcGhh
c2lzKGNlbHRfc2lnICppbltdLCBvcHVzX3ZhbDE2ICpwY20sIGludCBOLCBpbnQgQywgaW50IGRv
d25zYW1wbGUsIGMKICAgICAgICAgIHsKICAgICAgICAgICAgIGZvciAoaj0wO2o8TjtqKyspCiAg
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICBjZWx0X3NpZyB0bXAgPSB4W2pdICsgbSArIFZF
UllfU01BTEw7CisgICAgICAgICAgICAgICBjZWx0X3NpZyB0bXAgPSB4W2pdICsgVkVSWV9TTUFM
TCArIG07CiAgICAgICAgICAgICAgICBtID0gTVVMVDE2XzMyX1ExNShjb2VmMCwgdG1wKTsKICAg
ICAgICAgICAgICAgIHlbaipDXSA9IFNDQUxFT1VUKFNJRzJXT1JEMTYodG1wKSk7CiAgICAgICAg
ICAgICB9CkBAIC0zMzMsNyArMzc3LDcgQEAgdm9pZCBjZWx0X3N5bnRoZXNpcyhjb25zdCBDRUxU
TW9kZSAqbW9kZSwgY2VsdF9ub3JtICpYLCBjZWx0X3NpZyAqIG91dF9zeW5bXSwKICAgICAgIGRl
bm9ybWFsaXNlX2JhbmRzKG1vZGUsIFgrTiwgZnJlcTIsIG9sZEJhbmRFK25iRUJhbmRzLCBzdGFy
dCwgZWZmRW5kLCBNLAogICAgICAgICAgICAgZG93bnNhbXBsZSwgc2lsZW5jZSk7CiAgICAgICBm
b3IgKGk9MDtpPE47aSsrKQotICAgICAgICAgZnJlcVtpXSA9IEhBTEYzMihBREQzMihmcmVxW2ld
LGZyZXEyW2ldKSk7CisgICAgICAgICBmcmVxW2ldID0gQUREMzIoSEFMRjMyKGZyZXFbaV0pLCBI
QUxGMzIoZnJlcTJbaV0pKTsKICAgICAgIGZvciAoYj0wO2I8QjtiKyspCiAgICAgICAgICBjbHRf
bWRjdF9iYWNrd2FyZCgmbW9kZS0+bWRjdCwgJmZyZXFbYl0sIG91dF9zeW5bMF0rTkIqYiwgbW9k
ZS0+d2luZG93LCBvdmVybGFwLCBzaGlmdCwgQiwgYXJjaCk7CiAgICB9IGVsc2UgewpAQCAtMzQ1
LDYgKzM4OSwxMiBAQCB2b2lkIGNlbHRfc3ludGhlc2lzKGNvbnN0IENFTFRNb2RlICptb2RlLCBj
ZWx0X25vcm0gKlgsIGNlbHRfc2lnICogb3V0X3N5bltdLAogICAgICAgICAgICAgY2x0X21kY3Rf
YmFja3dhcmQoJm1vZGUtPm1kY3QsICZmcmVxW2JdLCBvdXRfc3luW2NdK05CKmIsIG1vZGUtPndp
bmRvdywgb3ZlcmxhcCwgc2hpZnQsIEIsIGFyY2gpOwogICAgICAgfSB3aGlsZSAoKytjPENDKTsK
ICAgIH0KKyAgIC8qIFNhdHVyYXRlIElNRENUIG91dHB1dCBzbyB0aGF0IHdlIGNhbid0IG92ZXJm
bG93IGluIHRoZSBwaXRjaCBwb3N0ZmlsdGVyCisgICAgICBvciBpbiB0aGUgKi8KKyAgIGM9MDsg
ZG8geworICAgICAgZm9yIChpPTA7aTxOO2krKykKKyAgICAgICAgIG91dF9zeW5bY11baV0gPSBT
QVRVUkFURShvdXRfc3luW2NdW2ldLCBTSUdfU0FUKTsKKyAgIH0gd2hpbGUgKCsrYzxDQyk7CiAg
ICBSRVNUT1JFX1NUQUNLOwogfQogCkBAIC01MDYsMTAgKzU1NiwxMSBAQCBzdGF0aWMgdm9pZCBj
ZWx0X2RlY29kZV9sb3N0KENFTFREZWNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgaW50IE4sIGlu
dCBMTSkKICAgIH0gZWxzZSB7CiAgICAgICAvKiBQaXRjaC1iYXNlZCBQTEMgKi8KICAgICAgIGNv
bnN0IG9wdXNfdmFsMTYgKndpbmRvdzsKKyAgICAgIG9wdXNfdmFsMTYgKmV4YzsKICAgICAgIG9w
dXNfdmFsMTYgZmFkZSA9IFExNU9ORTsKICAgICAgIGludCBwaXRjaF9pbmRleDsKICAgICAgIFZB
UkRFQ0wob3B1c192YWwzMiwgZXRtcCk7Ci0gICAgICBWQVJERUNMKG9wdXNfdmFsMTYsIGV4Yyk7
CisgICAgICBWQVJERUNMKG9wdXNfdmFsMTYsIF9leGMpOwogCiAgICAgICBpZiAobG9zc19jb3Vu
dCA9PSAwKQogICAgICAgewpAQCAtNTIwLDcgKzU3MSw4IEBAIHN0YXRpYyB2b2lkIGNlbHRfZGVj
b2RlX2xvc3QoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQgTiwgaW50IExNKQog
ICAgICAgfQogCiAgICAgICBBTExPQyhldG1wLCBvdmVybGFwLCBvcHVzX3ZhbDMyKTsKLSAgICAg
IEFMTE9DKGV4YywgTUFYX1BFUklPRCwgb3B1c192YWwxNik7CisgICAgICBBTExPQyhfZXhjLCBN
QVhfUEVSSU9EK0xQQ19PUkRFUiwgb3B1c192YWwxNik7CisgICAgICBleGMgPSBfZXhjK0xQQ19P
UkRFUjsKICAgICAgIHdpbmRvdyA9IG1vZGUtPndpbmRvdzsKICAgICAgIGM9MDsgZG8gewogICAg
ICAgICAgb3B1c192YWwxNiBkZWNheTsKQEAgLTU2MSw2ICs2MTMsMjMgQEAgc3RhdGljIHZvaWQg
Y2VsdF9kZWNvZGVfbG9zdChDRUxURGVjb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCBOLCBp
bnQgTE0pCiAjZW5kaWYKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIF9jZWx0X2xwYyhscGMr
YypMUENfT1JERVIsIGFjLCBMUENfT1JERVIpOworI2lmZGVmIEZJWEVEX1BPSU5UCisgICAgICAg
ICAvKiBGb3IgZml4ZWQtcG9pbnQsIGFwcGx5IGJhbmR3aWR0aCBleHBhbnNpb24gdW50aWwgd2Ug
Y2FuIGd1YXJhbnRlZSB0aGF0CisgICAgICAgICAgICBubyBvdmVyZmxvdyBjYW4gaGFwcGVuIGlu
IHRoZSBJSVIgZmlsdGVyLiBUaGlzIG1lYW5zOgorICAgICAgICAgICAgMzI3Njgqc3VtKGFicyhm
aWx0ZXIpKSA8IDJeMzEgKi8KKyAgICAgICAgIHdoaWxlICgxKSB7CisgICAgICAgICAgICBvcHVz
X3ZhbDE2IHRtcD1RMTVPTkU7CisgICAgICAgICAgICBvcHVzX3ZhbDMyIHN1bT1RQ09OU1QxNigx
LiwgU0lHX1NISUZUKTsKKyAgICAgICAgICAgIGZvciAoaT0wO2k8TFBDX09SREVSO2krKykKKyAg
ICAgICAgICAgICAgIHN1bSArPSBBQlMxNihscGNbYypMUENfT1JERVIraV0pOworICAgICAgICAg
ICAgaWYgKHN1bSA8IDY1NTM1KSBicmVhazsKKyAgICAgICAgICAgIGZvciAoaT0wO2k8TFBDX09S
REVSO2krKykKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHRtcCA9IE1VTFQxNl8xNl9R
MTUoUUNPTlNUMTYoLjk5ZiwxNSksIHRtcCk7CisgICAgICAgICAgICAgICBscGNbYypMUENfT1JE
RVIraV0gPSBNVUxUMTZfMTZfUTE1KGxwY1tjKkxQQ19PUkRFUitpXSwgdG1wKTsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgIH0KKyNlbmRpZgogICAgICAgICAgfQogICAgICAgICAgLyogV2Ugd2Fu
dCB0aGUgZXhjaXRhdGlvbiBmb3IgMiBwaXRjaCBwZXJpb2RzIGluIG9yZGVyIHRvIGxvb2sgZm9y
IGEKICAgICAgICAgICAgIGRlY2F5aW5nIHNpZ25hbCwgYnV0IHdlIGNhbid0IGdldCBtb3JlIHRo
YW4gTUFYX1BFUklPRC4gKi8KQEAgLTU2OCwxNSArNjM3LDE0IEBAIHN0YXRpYyB2b2lkIGNlbHRf
ZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQgTiwgaW50IExN
KQogICAgICAgICAgLyogSW5pdGlhbGl6ZSB0aGUgTFBDIGhpc3Rvcnkgd2l0aCB0aGUgc2FtcGxl
cyBqdXN0IGJlZm9yZSB0aGUgc3RhcnQKICAgICAgICAgICAgIG9mIHRoZSByZWdpb24gZm9yIHdo
aWNoIHdlJ3JlIGNvbXB1dGluZyB0aGUgZXhjaXRhdGlvbi4gKi8KICAgICAgICAgIHsKLSAgICAg
ICAgICAgIG9wdXNfdmFsMTYgbHBjX21lbVtMUENfT1JERVJdOwogICAgICAgICAgICAgZm9yIChp
PTA7aTxMUENfT1JERVI7aSsrKQogICAgICAgICAgICAgewotICAgICAgICAgICAgICAgbHBjX21l
bVtpXSA9Ci0gICAgICAgICAgICAgICAgICAgICBST1VORDE2KGJ1ZltERUNPREVfQlVGRkVSX1NJ
WkUtZXhjX2xlbmd0aC0xLWldLCBTSUdfU0hJRlQpOworICAgICAgICAgICAgICAgZXhjW01BWF9Q
RVJJT0QtZXhjX2xlbmd0aC1MUENfT1JERVIraV0gPQorICAgICAgICAgICAgICAgICAgICAgUk9V
TkQxNihidWZbREVDT0RFX0JVRkZFUl9TSVpFLWV4Y19sZW5ndGgtTFBDX09SREVSK2ldLCBTSUdf
U0hJRlQpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgLyogQ29tcHV0ZSB0aGUgZXhjaXRh
dGlvbiBmb3IgZXhjX2xlbmd0aCBzYW1wbGVzIGJlZm9yZSB0aGUgbG9zcy4gKi8KICAgICAgICAg
ICAgIGNlbHRfZmlyKGV4YytNQVhfUEVSSU9ELWV4Y19sZW5ndGgsIGxwYytjKkxQQ19PUkRFUiwK
LSAgICAgICAgICAgICAgICAgIGV4YytNQVhfUEVSSU9ELWV4Y19sZW5ndGgsIGV4Y19sZW5ndGgs
IExQQ19PUkRFUiwgbHBjX21lbSwgc3QtPmFyY2gpOworICAgICAgICAgICAgICAgICAgZXhjK01B
WF9QRVJJT0QtZXhjX2xlbmd0aCwgZXhjX2xlbmd0aCwgTFBDX09SREVSLCBzdC0+YXJjaCk7CiAg
ICAgICAgICB9CiAKICAgICAgICAgIC8qIENoZWNrIGlmIHRoZSB3YXZlZm9ybSBpcyBkZWNheWlu
ZywgYW5kIGlmIHNvIGhvdyBmYXN0LgpAQCAtNjMwLDkgKzY5OCw4IEBAIHN0YXRpYyB2b2lkIGNl
bHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQgTiwgaW50
IExNKQogICAgICAgICAgICAgdG1wID0gUk9VTkQxNigKICAgICAgICAgICAgICAgICAgIGJ1ZltE
RUNPREVfQlVGRkVSX1NJWkUtTUFYX1BFUklPRC1OK2V4dHJhcG9sYXRpb25fb2Zmc2V0K2pdLAog
ICAgICAgICAgICAgICAgICAgU0lHX1NISUZUKTsKLSAgICAgICAgICAgIFMxICs9IFNIUjMyKE1V
TFQxNl8xNih0bXAsIHRtcCksIDgpOworICAgICAgICAgICAgUzEgKz0gU0hSMzIoTVVMVDE2XzE2
KHRtcCwgdG1wKSwgMTApOwogICAgICAgICAgfQotCiAgICAgICAgICB7CiAgICAgICAgICAgICBv
cHVzX3ZhbDE2IGxwY19tZW1bTFBDX09SREVSXTsKICAgICAgICAgICAgIC8qIENvcHkgdGhlIGxh
c3QgZGVjb2RlZCBzYW1wbGVzIChwcmlvciB0byB0aGUgb3ZlcmxhcCByZWdpb24pIHRvCkBAIC02
NDQsNiArNzExLDEwIEBAIHN0YXRpYyB2b2lkIGNlbHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIg
KiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQgTiwgaW50IExNKQogICAgICAgICAgICAgY2VsdF9paXIo
YnVmK0RFQ09ERV9CVUZGRVJfU0laRS1OLCBscGMrYypMUENfT1JERVIsCiAgICAgICAgICAgICAg
ICAgICBidWYrREVDT0RFX0JVRkZFUl9TSVpFLU4sIGV4dHJhcG9sYXRpb25fbGVuLCBMUENfT1JE
RVIsCiAgICAgICAgICAgICAgICAgICBscGNfbWVtLCBzdC0+YXJjaCk7CisjaWZkZWYgRklYRURf
UE9JTlQKKyAgICAgICAgICAgIGZvciAoaT0wOyBpIDwgZXh0cmFwb2xhdGlvbl9sZW47IGkrKykK
KyAgICAgICAgICAgICAgIGJ1ZltERUNPREVfQlVGRkVSX1NJWkUtTitpXSA9IFNBVFVSQVRFKGJ1
ZltERUNPREVfQlVGRkVSX1NJWkUtTitpXSwgU0lHX1NBVCk7CisjZW5kaWYKICAgICAgICAgIH0K
IAogICAgICAgICAgLyogQ2hlY2sgaWYgdGhlIHN5bnRoZXNpcyBlbmVyZ3kgaXMgaGlnaGVyIHRo
YW4gZXhwZWN0ZWQsIHdoaWNoIGNhbgpAQCAtNjU0LDcgKzcyNSw3IEBAIHN0YXRpYyB2b2lkIGNl
bHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQgTiwgaW50
IExNKQogICAgICAgICAgICAgZm9yIChpPTA7aTxleHRyYXBvbGF0aW9uX2xlbjtpKyspCiAgICAg
ICAgICAgICB7CiAgICAgICAgICAgICAgICBvcHVzX3ZhbDE2IHRtcCA9IFJPVU5EMTYoYnVmW0RF
Q09ERV9CVUZGRVJfU0laRS1OK2ldLCBTSUdfU0hJRlQpOwotICAgICAgICAgICAgICAgUzIgKz0g
U0hSMzIoTVVMVDE2XzE2KHRtcCwgdG1wKSwgOCk7CisgICAgICAgICAgICAgICBTMiArPSBTSFIz
MihNVUxUMTZfMTYodG1wLCB0bXApLCAxMCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICAv
KiBUaGlzIGNoZWNrcyBmb3IgYW4gImV4cGxvc2lvbiIgaW4gdGhlIHN5bnRoZXNpcy4gKi8KICNp
ZmRlZiBGSVhFRF9QT0lOVApAQCAtOTc5LDcgKzEwNTAsOCBAQCBpbnQgY2VsdF9kZWNvZGVfd2l0
aF9lYyhDRUxURGVjb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IHVuc2lnbmVkIGNoYXIg
KmRhdAogCiAgICBxdWFudF9hbGxfYmFuZHMoMCwgbW9kZSwgc3RhcnQsIGVuZCwgWCwgQz09MiA/
IFgrTiA6IE5VTEwsIGNvbGxhcHNlX21hc2tzLAogICAgICAgICAgTlVMTCwgcHVsc2VzLCBzaG9y
dEJsb2Nrcywgc3ByZWFkX2RlY2lzaW9uLCBkdWFsX3N0ZXJlbywgaW50ZW5zaXR5LCB0Zl9yZXMs
Ci0gICAgICAgICBsZW4qKDg8PEJJVFJFUyktYW50aV9jb2xsYXBzZV9yc3YsIGJhbGFuY2UsIGRl
YywgTE0sIGNvZGVkQmFuZHMsICZzdC0+cm5nLCBzdC0+YXJjaCk7CisgICAgICAgICBsZW4qKDg8
PEJJVFJFUyktYW50aV9jb2xsYXBzZV9yc3YsIGJhbGFuY2UsIGRlYywgTE0sIGNvZGVkQmFuZHMs
ICZzdC0+cm5nLCAwLAorICAgICAgICAgc3QtPmFyY2gsIHN0LT5kaXNhYmxlX2ludik7CiAKICAg
IGlmIChhbnRpX2NvbGxhcHNlX3JzdiA+IDApCiAgICB7CkBAIC0xMjM0LDYgKzEzMDYsMjYgQEAg
aW50IG9wdXNfY3VzdG9tX2RlY29kZXJfY3RsKENFTFREZWNvZGVyICogT1BVU19SRVNUUklDVCBz
dCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICAgICp2YWx1ZT1zdC0+cm5nOwogICAgICAgfQog
ICAgICAgYnJlYWs7CisgICAgICBjYXNlIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxF
RF9SRVFVRVNUOgorICAgICAgeworICAgICAgICAgIG9wdXNfaW50MzIgdmFsdWUgPSB2YV9hcmco
YXAsIG9wdXNfaW50MzIpOworICAgICAgICAgIGlmKHZhbHVlPDAgfHwgdmFsdWU+MSkKKyAgICAg
ICAgICB7CisgICAgICAgICAgICAgZ290byBiYWRfYXJnOworICAgICAgICAgIH0KKyAgICAgICAg
ICBzdC0+ZGlzYWJsZV9pbnYgPSB2YWx1ZTsKKyAgICAgIH0KKyAgICAgIGJyZWFrOworICAgICAg
Y2FzZSBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgICAgIHsK
KyAgICAgICAgICBvcHVzX2ludDMyICp2YWx1ZSA9IHZhX2FyZyhhcCwgb3B1c19pbnQzMiopOwor
ICAgICAgICAgIGlmICghdmFsdWUpCisgICAgICAgICAgeworICAgICAgICAgICAgIGdvdG8gYmFk
X2FyZzsKKyAgICAgICAgICB9CisgICAgICAgICAgKnZhbHVlID0gc3QtPmRpc2FibGVfaW52Owor
ICAgICAgfQorICAgICAgYnJlYWs7CiAgICAgICBkZWZhdWx0OgogICAgICAgICAgZ290byBiYWRf
cmVxdWVzdDsKICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2VuY29kZXIuYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0
X2VuY29kZXIuYwppbmRleCAzZWU3YTRkM2Y3YTFkY2ViNzFlNmExYmVmMTQzMDZhYzlkMjE3YTMy
Li4wNTNlNWEzYjI5MDBjMTZmMjkwN2ZiMDNiZTUzN2NlM2I1YjEwOTJiIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvY2VsdF9lbmNvZGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfZW5jb2Rlci5jCkBAIC03Myw4ICs3Myw4
IEBAIHN0cnVjdCBPcHVzQ3VzdG9tRW5jb2RlciB7CiAgICBpbnQgY29uc3RyYWluZWRfdmJyOyAg
ICAgIC8qIElmIHplcm8sIFZCUiBjYW4gZG8gd2hhdGV2ZXIgaXQgbGlrZXMgd2l0aCB0aGUgcmF0
ZSAqLwogICAgaW50IGxvc3NfcmF0ZTsKICAgIGludCBsc2JfZGVwdGg7Ci0gICBpbnQgdmFyaWFi
bGVfZHVyYXRpb247CiAgICBpbnQgbGZlOworICAgaW50IGRpc2FibGVfaW52OwogICAgaW50IGFy
Y2g7CiAKICAgIC8qIEV2ZXJ5dGhpbmcgYmV5b25kIHRoaXMgcG9pbnQgZ2V0cyBjbGVhcmVkIG9u
IGEgcmVzZXQgKi8KQEAgLTk4LDYgKzk4LDcgQEAgc3RydWN0IE9wdXNDdXN0b21FbmNvZGVyIHsK
ICNlbmRpZgogICAgaW50IGNvbnNlY190cmFuc2llbnQ7CiAgICBBbmFseXNpc0luZm8gYW5hbHlz
aXM7CisgICBTSUxLSW5mbyBzaWxrX2luZm87CiAKICAgIG9wdXNfdmFsMzIgcHJlZW1waF9tZW1F
WzJdOwogICAgb3B1c192YWwzMiBwcmVlbXBoX21lbURbMl07CkBAIC0xMjMsNiArMTI0LDcgQEAg
c3RydWN0IE9wdXNDdXN0b21FbmNvZGVyIHsKICAgIC8qIG9wdXNfdmFsMTYgb2xkQmFuZEVbXSwg
ICAgIFNpemUgPSBjaGFubmVscyptb2RlLT5uYkVCYW5kcyAqLwogICAgLyogb3B1c192YWwxNiBv
bGRMb2dFW10sICAgICAgU2l6ZSA9IGNoYW5uZWxzKm1vZGUtPm5iRUJhbmRzICovCiAgICAvKiBv
cHVzX3ZhbDE2IG9sZExvZ0UyW10sICAgICBTaXplID0gY2hhbm5lbHMqbW9kZS0+bmJFQmFuZHMg
Ki8KKyAgIC8qIG9wdXNfdmFsMTYgZW5lcmd5RXJyb3JbXSwgIFNpemUgPSBjaGFubmVscyptb2Rl
LT5uYkVCYW5kcyAqLwogfTsKIAogaW50IGNlbHRfZW5jb2Rlcl9nZXRfc2l6ZShpbnQgY2hhbm5l
bHMpCkBAIC0xMzYsOSArMTM4LDEwIEBAIE9QVVNfQ1VTVE9NX05PU1RBVElDIGludCBvcHVzX2N1
c3RvbV9lbmNvZGVyX2dldF9zaXplKGNvbnN0IENFTFRNb2RlICptb2RlLCBpbnQKICAgIGludCBz
aXplID0gc2l6ZW9mKHN0cnVjdCBDRUxURW5jb2RlcikKICAgICAgICAgICsgKGNoYW5uZWxzKm1v
ZGUtPm92ZXJsYXAtMSkqc2l6ZW9mKGNlbHRfc2lnKSAgICAvKiBjZWx0X3NpZyBpbl9tZW1bY2hh
bm5lbHMqbW9kZS0+b3ZlcmxhcF07ICovCiAgICAgICAgICArIGNoYW5uZWxzKkNPTUJGSUxURVJf
TUFYUEVSSU9EKnNpemVvZihjZWx0X3NpZykgLyogY2VsdF9zaWcgcHJlZmlsdGVyX21lbVtjaGFu
bmVscypDT01CRklMVEVSX01BWFBFUklPRF07ICovCi0gICAgICAgICArIDMqY2hhbm5lbHMqbW9k
ZS0+bmJFQmFuZHMqc2l6ZW9mKG9wdXNfdmFsMTYpOyAgLyogb3B1c192YWwxNiBvbGRCYW5kRVtj
aGFubmVscyptb2RlLT5uYkVCYW5kc107ICovCisgICAgICAgICArIDQqY2hhbm5lbHMqbW9kZS0+
bmJFQmFuZHMqc2l6ZW9mKG9wdXNfdmFsMTYpOyAgLyogb3B1c192YWwxNiBvbGRCYW5kRVtjaGFu
bmVscyptb2RlLT5uYkVCYW5kc107ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb3B1c192YWwxNiBvbGRMb2dFW2NoYW5uZWxz
Km1vZGUtPm5iRUJhbmRzXTsgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBvcHVzX3ZhbDE2IG9sZExvZ0UyW2NoYW5uZWxzKm1v
ZGUtPm5iRUJhbmRzXTsgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBvcHVzX3ZhbDE2IGVuZXJneUVycm9yW2NoYW5uZWxzKm1v
ZGUtPm5iRUJhbmRzXTsgKi8KICAgIHJldHVybiBzaXplOwogfQogCkBAIC0xNzgsNyArMTgxLDYg
QEAgc3RhdGljIGludCBvcHVzX2N1c3RvbV9lbmNvZGVyX2luaXRfYXJjaChDRUxURW5jb2RlciAq
c3QsIGNvbnN0IENFTFRNb2RlICptb2RlLAogICAgc3QtPnN0YXJ0ID0gMDsKICAgIHN0LT5lbmQg
PSBzdC0+bW9kZS0+ZWZmRUJhbmRzOwogICAgc3QtPnNpZ25hbGxpbmcgPSAxOwotCiAgICBzdC0+
YXJjaCA9IGFyY2g7CiAKICAgIHN0LT5jb25zdHJhaW5lZF92YnIgPSAxOwpAQCAtMjIzLDcgKzIy
NSw4IEBAIHZvaWQgb3B1c19jdXN0b21fZW5jb2Rlcl9kZXN0cm95KENFTFRFbmNvZGVyICpzdCkK
IAogCiBzdGF0aWMgaW50IHRyYW5zaWVudF9hbmFseXNpcyhjb25zdCBvcHVzX3ZhbDMyICogT1BV
U19SRVNUUklDVCBpbiwgaW50IGxlbiwgaW50IEMsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBvcHVzX3ZhbDE2ICp0Zl9lc3RpbWF0ZSwgaW50ICp0Zl9jaGFuKQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgb3B1c192YWwxNiAqdGZfZXN0aW1hdGUsIGludCAqdGZfY2hhbiwg
aW50IGFsbG93X3dlYWtfdHJhbnNpZW50cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCAqd2Vha190cmFuc2llbnQpCiB7CiAgICBpbnQgaTsKICAgIFZBUkRFQ0wob3B1c192YWwx
NiwgdG1wKTsKQEAgLTIzMyw2ICsyMzYsMTIgQEAgc3RhdGljIGludCB0cmFuc2llbnRfYW5hbHlz
aXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGludCBsZW4sIGludAogICAg
aW50IGM7CiAgICBvcHVzX3ZhbDE2IHRmX21heDsKICAgIGludCBsZW4yOworICAgLyogRm9yd2Fy
ZCBtYXNraW5nOiA2LjcgZEIvbXMuICovCisjaWZkZWYgRklYRURfUE9JTlQKKyAgIGludCBmb3J3
YXJkX3NoaWZ0ID0gNDsKKyNlbHNlCisgICBvcHVzX3ZhbDE2IGZvcndhcmRfZGVjYXkgPSBRQ09O
U1QxNiguMDYyNWYsMTUpOworI2VuZGlmCiAgICAvKiBUYWJsZSBvZiA2KjY0L3gsIHRyYWluZWQg
b24gcmVhbCBkYXRhIHRvIG1pbmltaXplIHRoZSBhdmVyYWdlIGVycm9yICovCiAgICBzdGF0aWMg
Y29uc3QgdW5zaWduZWQgY2hhciBpbnZfdGFibGVbMTI4XSA9IHsKICAgICAgICAgIDI1NSwyNTUs
MTU2LDExMCwgODYsIDcwLCA1OSwgNTEsIDQ1LCA0MCwgMzcsIDMzLCAzMSwgMjgsIDI2LCAyNSwK
QEAgLTI0Nyw2ICsyNTYsMTkgQEAgc3RhdGljIGludCB0cmFuc2llbnRfYW5hbHlzaXMoY29uc3Qg
b3B1c192YWwzMiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGludCBsZW4sIGludAogICAgU0FWRV9TVEFD
SzsKICAgIEFMTE9DKHRtcCwgbGVuLCBvcHVzX3ZhbDE2KTsKIAorICAgKndlYWtfdHJhbnNpZW50
ID0gMDsKKyAgIC8qIEZvciBsb3dlciBiaXRyYXRlcywgbGV0J3MgYmUgbW9yZSBjb25zZXJ2YXRp
dmUgYW5kIGhhdmUgYSBmb3J3YXJkIG1hc2tpbmcKKyAgICAgIGRlY2F5IG9mIDMuMyBkQi9tcy4g
VGhpcyBhdm9pZHMgaGF2aW5nIHRvIGNvZGUgdHJhbnNpZW50cyBhdCB2ZXJ5IGxvdworICAgICAg
Yml0cmF0ZSAobW9zdGx5IGZvciBoeWJyaWQpLCB3aGljaCBjYW4gcmVzdWx0IGluIHVuc3RhYmxl
IGVuZXJneSBhbmQvb3IKKyAgICAgIHBhcnRpYWwgY29sbGFwc2UuICovCisgICBpZiAoYWxsb3df
d2Vha190cmFuc2llbnRzKQorICAgeworI2lmZGVmIEZJWEVEX1BPSU5UCisgICAgICBmb3J3YXJk
X3NoaWZ0ID0gNTsKKyNlbHNlCisgICAgICBmb3J3YXJkX2RlY2F5ID0gUUNPTlNUMTYoLjAzMTI1
ZiwxNSk7CisjZW5kaWYKKyAgIH0KICAgIGxlbjI9bGVuLzI7CiAgICBmb3IgKGM9MDtjPEM7Yysr
KQogICAgewpAQCAtMjY5LDcgKzI5MSw3IEBAIHN0YXRpYyBpbnQgdHJhbnNpZW50X2FuYWx5c2lz
KGNvbnN0IG9wdXNfdmFsMzIgKiBPUFVTX1JFU1RSSUNUIGluLCBpbnQgbGVuLCBpbnQKICAgICAg
ICAgIG1lbTAgPSBtZW0xICsgeSAtIDIqeDsKICAgICAgICAgIG1lbTEgPSB4IC0gLjVmKnk7CiAj
ZW5kaWYKLSAgICAgICAgIHRtcFtpXSA9IEVYVFJBQ1QxNihTSFIzMih5LDIpKTsKKyAgICAgICAg
IHRtcFtpXSA9IFNST1VORDE2KHksIDIpOwogICAgICAgICAgLypwcmludGYoIiVmICIsIHRtcFtp
XSk7Ki8KICAgICAgIH0KICAgICAgIC8qcHJpbnRmKCJcbiIpOyovCkBAIC0yODAsNyArMzAyLDcg
QEAgc3RhdGljIGludCB0cmFuc2llbnRfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNf
UkVTVFJJQ1QgaW4sIGludCBsZW4sIGludAogICAgICAgLyogTm9ybWFsaXplIHRtcCB0byBtYXgg
cmFuZ2UgKi8KICAgICAgIHsKICAgICAgICAgIGludCBzaGlmdD0wOwotICAgICAgICAgc2hpZnQg
PSAxNC1jZWx0X2lsb2cyKDErY2VsdF9tYXhhYnMxNih0bXAsIGxlbikpOworICAgICAgICAgc2hp
ZnQgPSAxNC1jZWx0X2lsb2cyKE1BWDE2KDEsIGNlbHRfbWF4YWJzMTYodG1wLCBsZW4pKSk7CiAg
ICAgICAgICBpZiAoc2hpZnQhPTApCiAgICAgICAgICB7CiAgICAgICAgICAgICBmb3IgKGk9MDtp
PGxlbjtpKyspCkBAIC0yOTksOSArMzIxLDkgQEAgc3RhdGljIGludCB0cmFuc2llbnRfYW5hbHlz
aXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGludCBsZW4sIGludAogICAg
ICAgICAgbWVhbiArPSB4MjsKICNpZmRlZiBGSVhFRF9QT0lOVAogICAgICAgICAgLyogRklYTUU6
IFVzZSBQU0hSMTYoKSBpbnN0ZWFkICovCi0gICAgICAgICB0bXBbaV0gPSBtZW0wICsgUFNIUjMy
KHgyLW1lbTAsNCk7CisgICAgICAgICB0bXBbaV0gPSBtZW0wICsgUFNIUjMyKHgyLW1lbTAsZm9y
d2FyZF9zaGlmdCk7CiAjZWxzZQotICAgICAgICAgdG1wW2ldID0gbWVtMCArIE1VTFQxNl8xNl9Q
MTUoUUNPTlNUMTYoLjA2MjVmLDE1KSx4Mi1tZW0wKTsKKyAgICAgICAgIHRtcFtpXSA9IG1lbTAg
KyBNVUxUMTZfMTZfUDE1KGZvcndhcmRfZGVjYXkseDItbWVtMCk7CiAjZW5kaWYKICAgICAgICAg
IG1lbTAgPSB0bXBbaV07CiAgICAgICB9CkBAIC0zMTEsNiArMzMzLDcgQEAgc3RhdGljIGludCB0
cmFuc2llbnRfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGlu
dCBsZW4sIGludAogICAgICAgLyogQmFja3dhcmQgcGFzcyB0byBjb21wdXRlIHRoZSBwcmUtZWNo
byB0aHJlc2hvbGQgKi8KICAgICAgIGZvciAoaT1sZW4yLTE7aT49MDtpLS0pCiAgICAgICB7Cisg
ICAgICAgICAvKiBCYWNrd2FyZCBtYXNraW5nOiAxMy45IGRCL21zLiAqLwogI2lmZGVmIEZJWEVE
X1BPSU5UCiAgICAgICAgICAvKiBGSVhNRTogVXNlIFBTSFIxNigpIGluc3RlYWQgKi8KICAgICAg
ICAgIHRtcFtpXSA9IG1lbTAgKyBQU0hSMzIodG1wW2ldLW1lbTAsMyk7CkBAIC0zNTksNyArMzgy
LDEyIEBAIHN0YXRpYyBpbnQgdHJhbnNpZW50X2FuYWx5c2lzKGNvbnN0IG9wdXNfdmFsMzIgKiBP
UFVTX1JFU1RSSUNUIGluLCBpbnQgbGVuLCBpbnQKICAgICAgIH0KICAgIH0KICAgIGlzX3RyYW5z
aWVudCA9IG1hc2tfbWV0cmljPjIwMDsKLQorICAgLyogRm9yIGxvdyBiaXRyYXRlcywgZGVmaW5l
ICJ3ZWFrIHRyYW5zaWVudHMiIHRoYXQgbmVlZCB0byBiZQorICAgICAgaGFuZGxlZCBkaWZmZXJl
bnRseSB0byBhdm9pZCBwYXJ0aWFsIGNvbGxhcHNlLiAqLworICAgaWYgKGFsbG93X3dlYWtfdHJh
bnNpZW50cyAmJiBpc190cmFuc2llbnQgJiYgbWFza19tZXRyaWM8NjAwKSB7CisgICAgICBpc190
cmFuc2llbnQgPSAwOworICAgICAgKndlYWtfdHJhbnNpZW50ID0gMTsKKyAgIH0KICAgIC8qIEFy
Yml0cmFyeSBtZXRyaWMgZm9yIFZCUiBib29zdCAqLwogICAgdGZfbWF4ID0gTUFYMTYoMCxjZWx0
X3NxcnQoMjcqbWFza19tZXRyaWMpLTQyKTsKICAgIC8qICp0Zl9lc3RpbWF0ZSA9IDEgKyBNSU4x
NigxLCBzcXJ0KE1BWDE2KDAsIHRmX21heC0zMCkpLzIwKTsgKi8KQEAgLTU0OSw3ICs1NzcsNyBA
QCBzdGF0aWMgb3B1c192YWwzMiBsMV9tZXRyaWMoY29uc3QgY2VsdF9ub3JtICp0bXAsIGludCBO
LCBpbnQgTE0sIG9wdXNfdmFsMTYgYmlhcwogCiBzdGF0aWMgaW50IHRmX2FuYWx5c2lzKGNvbnN0
IENFTFRNb2RlICptLCBpbnQgbGVuLCBpbnQgaXNUcmFuc2llbnQsCiAgICAgICBpbnQgKnRmX3Jl
cywgaW50IGxhbWJkYSwgY2VsdF9ub3JtICpYLCBpbnQgTjAsIGludCBMTSwKLSAgICAgIGludCAq
dGZfc3VtLCBvcHVzX3ZhbDE2IHRmX2VzdGltYXRlLCBpbnQgdGZfY2hhbikKKyAgICAgIG9wdXNf
dmFsMTYgdGZfZXN0aW1hdGUsIGludCB0Zl9jaGFuKQogewogICAgaW50IGk7CiAgICBWQVJERUNM
KGludCwgbWV0cmljKTsKQEAgLTU3NCw3ICs2MDIsNiBAQCBzdGF0aWMgaW50IHRmX2FuYWx5c2lz
KGNvbnN0IENFTFRNb2RlICptLCBpbnQgbGVuLCBpbnQgaXNUcmFuc2llbnQsCiAgICBBTExPQyhw
YXRoMCwgbGVuLCBpbnQpOwogICAgQUxMT0MocGF0aDEsIGxlbiwgaW50KTsKIAotICAgKnRmX3N1
bSA9IDA7CiAgICBmb3IgKGk9MDtpPGxlbjtpKyspCiAgICB7CiAgICAgICBpbnQgaywgTjsKQEAg
LTYyOSw3ICs2NTYsNiBAQCBzdGF0aWMgaW50IHRmX2FuYWx5c2lzKGNvbnN0IENFTFRNb2RlICpt
LCBpbnQgbGVuLCBpbnQgaXNUcmFuc2llbnQsCiAgICAgICAgICBtZXRyaWNbaV0gPSAyKmJlc3Rf
bGV2ZWw7CiAgICAgICBlbHNlCiAgICAgICAgICBtZXRyaWNbaV0gPSAtMipiZXN0X2xldmVsOwot
ICAgICAgKnRmX3N1bSArPSAoaXNUcmFuc2llbnQgPyBMTSA6IDApIC0gbWV0cmljW2ldLzI7CiAg
ICAgICAvKiBGb3IgYmFuZHMgdGhhdCBjYW4ndCBiZSBzcGxpdCB0byAtMSwgc2V0IHRoZSBtZXRy
aWMgdG8gdGhlIGhhbGYtd2F5IHBvaW50IHRvIGF2b2lkCiAgICAgICAgICBiaWFzaW5nIHRoZSBk
ZWNpc2lvbiAqLwogICAgICAgaWYgKG5hcnJvdyAmJiAobWV0cmljW2ldPT0wIHx8IG1ldHJpY1tp
XT09LTIqTE0pKQpAQCAtNzU0LDcgKzc4MCw3IEBAIHN0YXRpYyB2b2lkIHRmX2VuY29kZShpbnQg
c3RhcnQsIGludCBlbmQsIGludCBpc1RyYW5zaWVudCwgaW50ICp0Zl9yZXMsIGludCBMTSwKIHN0
YXRpYyBpbnQgYWxsb2NfdHJpbV9hbmFseXNpcyhjb25zdCBDRUxUTW9kZSAqbSwgY29uc3QgY2Vs
dF9ub3JtICpYLAogICAgICAgY29uc3Qgb3B1c192YWwxNiAqYmFuZExvZ0UsIGludCBlbmQsIGlu
dCBMTSwgaW50IEMsIGludCBOMCwKICAgICAgIEFuYWx5c2lzSW5mbyAqYW5hbHlzaXMsIG9wdXNf
dmFsMTYgKnN0ZXJlb19zYXZpbmcsIG9wdXNfdmFsMTYgdGZfZXN0aW1hdGUsCi0gICAgICBpbnQg
aW50ZW5zaXR5LCBvcHVzX3ZhbDE2IHN1cnJvdW5kX3RyaW0sIGludCBhcmNoKQorICAgICAgaW50
IGludGVuc2l0eSwgb3B1c192YWwxNiBzdXJyb3VuZF90cmltLCBvcHVzX2ludDMyIGVxdWl2X3Jh
dGUsIGludCBhcmNoKQogewogICAgaW50IGk7CiAgICBvcHVzX3ZhbDMyIGRpZmY9MDsKQEAgLTc2
Miw2ICs3ODgsMTQgQEAgc3RhdGljIGludCBhbGxvY190cmltX2FuYWx5c2lzKGNvbnN0IENFTFRN
b2RlICptLCBjb25zdCBjZWx0X25vcm0gKlgsCiAgICBpbnQgdHJpbV9pbmRleDsKICAgIG9wdXNf
dmFsMTYgdHJpbSA9IFFDT05TVDE2KDUuZiwgOCk7CiAgICBvcHVzX3ZhbDE2IGxvZ1hDLCBsb2dY
QzI7CisgICAvKiBBdCBsb3cgYml0cmF0ZSwgcmVkdWNpbmcgdGhlIHRyaW0gc2VlbXMgdG8gaGVs
cC4gQXQgaGlnaGVyIGJpdHJhdGVzLCBpdCdzIGxlc3MKKyAgICAgIGNsZWFyIHdoYXQncyBiZXN0
LCBzbyB3ZSdyZSBrZWVwaW5nIGl0IGFzIGl0IHdhcyBiZWZvcmUsIGF0IGxlYXN0IGZvciBub3cu
ICovCisgICBpZiAoZXF1aXZfcmF0ZSA8IDY0MDAwKSB7CisgICAgICB0cmltID0gUUNPTlNUMTYo
NC5mLCA4KTsKKyAgIH0gZWxzZSBpZiAoZXF1aXZfcmF0ZSA8IDgwMDAwKSB7CisgICAgICBvcHVz
X2ludDMyIGZyYWMgPSAoZXF1aXZfcmF0ZS02NDAwMCkgPj4gMTA7CisgICAgICB0cmltID0gUUNP
TlNUMTYoNC5mLCA4KSArIFFDT05TVDE2KDEuZi8xNi5mLCA4KSpmcmFjOworICAgfQogICAgaWYg
KEM9PTIpCiAgICB7CiAgICAgICBvcHVzX3ZhbDE2IHN1bSA9IDA7IC8qIFExMCAqLwpAQCAtODA5
LDcgKzg0Myw3IEBAIHN0YXRpYyBpbnQgYWxsb2NfdHJpbV9hbmFseXNpcyhjb25zdCBDRUxUTW9k
ZSAqbSwgY29uc3QgY2VsdF9ub3JtICpYLAogICAgfSB3aGlsZSAoKytjPEMpOwogICAgZGlmZiAv
PSBDKihlbmQtMSk7CiAgICAvKnByaW50ZigiJWZcbiIsIGRpZmYpOyovCi0gICB0cmltIC09IE1B
WDE2KC1RQ09OU1QxNigyLmYsIDgpLCBNSU4xNihRQ09OU1QxNigyLmYsIDgpLCBTSFIxNihkaWZm
K1FDT05TVDE2KDEuZiwgREJfU0hJRlQpLERCX1NISUZULTgpLzYgKSk7CisgICB0cmltIC09IE1B
WDMyKC1RQ09OU1QxNigyLmYsIDgpLCBNSU4zMihRQ09OU1QxNigyLmYsIDgpLCBTSFIzMihkaWZm
K1FDT05TVDE2KDEuZiwgREJfU0hJRlQpLERCX1NISUZULTgpLzYgKSk7CiAgICB0cmltIC09IFNI
UjE2KHN1cnJvdW5kX3RyaW0sIERCX1NISUZULTgpOwogICAgdHJpbSAtPSAyKlNIUjE2KHRmX2Vz
dGltYXRlLCAxNC04KTsKICNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKQEAgLTkzMCw3ICs5NjQs
NyBAQCBzdGF0aWMgb3B1c192YWwxNiBtZWRpYW5fb2ZfMyhjb25zdCBvcHVzX3ZhbDE2ICp4KQog
c3RhdGljIG9wdXNfdmFsMTYgZHluYWxsb2NfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwxNiAqYmFu
ZExvZ0UsIGNvbnN0IG9wdXNfdmFsMTYgKmJhbmRMb2dFMiwKICAgICAgIGludCBuYkVCYW5kcywg
aW50IHN0YXJ0LCBpbnQgZW5kLCBpbnQgQywgaW50ICpvZmZzZXRzLCBpbnQgbHNiX2RlcHRoLCBj
b25zdCBvcHVzX2ludDE2ICpsb2dOLAogICAgICAgaW50IGlzVHJhbnNpZW50LCBpbnQgdmJyLCBp
bnQgY29uc3RyYWluZWRfdmJyLCBjb25zdCBvcHVzX2ludDE2ICplQmFuZHMsIGludCBMTSwKLSAg
ICAgIGludCBlZmZlY3RpdmVCeXRlcywgb3B1c19pbnQzMiAqdG90X2Jvb3N0XywgaW50IGxmZSwg
b3B1c192YWwxNiAqc3Vycm91bmRfZHluYWxsb2MpCisgICAgICBpbnQgZWZmZWN0aXZlQnl0ZXMs
IG9wdXNfaW50MzIgKnRvdF9ib29zdF8sIGludCBsZmUsIG9wdXNfdmFsMTYgKnN1cnJvdW5kX2R5
bmFsbG9jLCBBbmFseXNpc0luZm8gKmFuYWx5c2lzKQogewogICAgaW50IGksIGM7CiAgICBvcHVz
X2ludDMyIHRvdF9ib29zdD0wOwpAQCAtMTAyMCwxNCArMTA1NCwyNiBAQCBzdGF0aWMgb3B1c192
YWwxNiBkeW5hbGxvY19hbmFseXNpcyhjb25zdCBvcHVzX3ZhbDE2ICpiYW5kTG9nRSwgY29uc3Qg
b3B1c192YWwxNgogICAgICAgfQogICAgICAgZm9yIChpPXN0YXJ0O2k8ZW5kO2krKykKICAgICAg
IHsKLSAgICAgICAgIGludCB3aWR0aDsKLSAgICAgICAgIGludCBib29zdDsKLSAgICAgICAgIGlu
dCBib29zdF9iaXRzOwotCiAgICAgICAgICBpZiAoaTw4KQogICAgICAgICAgICAgZm9sbG93ZXJb
aV0gKj0gMjsKICAgICAgICAgIGlmIChpPj0xMikKICAgICAgICAgICAgIGZvbGxvd2VyW2ldID0g
SEFMRjE2KGZvbGxvd2VyW2ldKTsKKyAgICAgIH0KKyNpZmRlZiBESVNBQkxFX0ZMT0FUX0FQSQor
ICAgICAgKHZvaWQpYW5hbHlzaXM7CisjZWxzZQorICAgICAgaWYgKGFuYWx5c2lzLT52YWxpZCkK
KyAgICAgIHsKKyAgICAgICAgIGZvciAoaT1zdGFydDtpPElNSU4oTEVBS19CQU5EUywgZW5kKTtp
KyspCisgICAgICAgICAgICBmb2xsb3dlcltpXSA9IGZvbGxvd2VyW2ldICsgIFFDT05TVDE2KDEu
Zi82NC5mLCBEQl9TSElGVCkqYW5hbHlzaXMtPmxlYWtfYm9vc3RbaV07CisgICAgICB9CisjZW5k
aWYKKyAgICAgIGZvciAoaT1zdGFydDtpPGVuZDtpKyspCisgICAgICB7CisgICAgICAgICBpbnQg
d2lkdGg7CisgICAgICAgICBpbnQgYm9vc3Q7CisgICAgICAgICBpbnQgYm9vc3RfYml0czsKKwog
ICAgICAgICAgZm9sbG93ZXJbaV0gPSBNSU4xNihmb2xsb3dlcltpXSwgUUNPTlNUMTYoNCwgREJf
U0hJRlQpKTsKIAogICAgICAgICAgd2lkdGggPSBDKihlQmFuZHNbaSsxXS1lQmFuZHNbaV0pPDxM
TTsKQEAgLTEwNDIsMTEgKzEwODgsMTEgQEAgc3RhdGljIG9wdXNfdmFsMTYgZHluYWxsb2NfYW5h
bHlzaXMoY29uc3Qgb3B1c192YWwxNiAqYmFuZExvZ0UsIGNvbnN0IG9wdXNfdmFsMTYKICAgICAg
ICAgICAgIGJvb3N0ID0gKGludClTSFIzMihFWFRFTkQzMihmb2xsb3dlcltpXSkqd2lkdGgvNixE
Ql9TSElGVCk7CiAgICAgICAgICAgICBib29zdF9iaXRzID0gYm9vc3QqNjw8QklUUkVTOwogICAg
ICAgICAgfQotICAgICAgICAgLyogRm9yIENCUiBhbmQgbm9uLXRyYW5zaWVudCBDVkJSIGZyYW1l
cywgbGltaXQgZHluYWxsb2MgdG8gMS80IG9mIHRoZSBiaXRzICovCisgICAgICAgICAvKiBGb3Ig
Q0JSIGFuZCBub24tdHJhbnNpZW50IENWQlIgZnJhbWVzLCBsaW1pdCBkeW5hbGxvYyB0byAyLzMg
b2YgdGhlIGJpdHMgKi8KICAgICAgICAgIGlmICgoIXZiciB8fCAoY29uc3RyYWluZWRfdmJyJiYh
aXNUcmFuc2llbnQpKQotICAgICAgICAgICAgICAgJiYgKHRvdF9ib29zdCtib29zdF9iaXRzKT4+
QklUUkVTPj4zID4gZWZmZWN0aXZlQnl0ZXMvNCkKKyAgICAgICAgICAgICAgICYmICh0b3RfYm9v
c3QrYm9vc3RfYml0cyk+PkJJVFJFUz4+MyA+IDIqZWZmZWN0aXZlQnl0ZXMvMykKICAgICAgICAg
IHsKLSAgICAgICAgICAgIG9wdXNfaW50MzIgY2FwID0gKChlZmZlY3RpdmVCeXRlcy80KTw8QklU
UkVTPDwzKTsKKyAgICAgICAgICAgIG9wdXNfaW50MzIgY2FwID0gKCgyKmVmZmVjdGl2ZUJ5dGVz
LzMpPDxCSVRSRVM8PDMpOwogICAgICAgICAgICAgb2Zmc2V0c1tpXSA9IGNhcC10b3RfYm9vc3Q7
CiAgICAgICAgICAgICB0b3RfYm9vc3QgPSBjYXA7CiAgICAgICAgICAgICBicmVhazsKQEAgLTEx
OTMsNyArMTIzOSw3IEBAIHN0YXRpYyBpbnQgY29tcHV0ZV92YnIoY29uc3QgQ0VMVE1vZGUgKm1v
ZGUsIEFuYWx5c2lzSW5mbyAqYW5hbHlzaXMsIG9wdXNfaW50MzIKICAgICAgIGludCBMTSwgb3B1
c19pbnQzMiBiaXRyYXRlLCBpbnQgbGFzdENvZGVkQmFuZHMsIGludCBDLCBpbnQgaW50ZW5zaXR5
LAogICAgICAgaW50IGNvbnN0cmFpbmVkX3Ziciwgb3B1c192YWwxNiBzdGVyZW9fc2F2aW5nLCBp
bnQgdG90X2Jvb3N0LAogICAgICAgb3B1c192YWwxNiB0Zl9lc3RpbWF0ZSwgaW50IHBpdGNoX2No
YW5nZSwgb3B1c192YWwxNiBtYXhEZXB0aCwKLSAgICAgIGludCB2YXJpYWJsZV9kdXJhdGlvbiwg
aW50IGxmZSwgaW50IGhhc19zdXJyb3VuZF9tYXNrLCBvcHVzX3ZhbDE2IHN1cnJvdW5kX21hc2tp
bmcsCisgICAgICBpbnQgbGZlLCBpbnQgaGFzX3N1cnJvdW5kX21hc2ssIG9wdXNfdmFsMTYgc3Vy
cm91bmRfbWFza2luZywKICAgICAgIG9wdXNfdmFsMTYgdGVtcG9yYWxfdmJyKQogewogICAgLyog
VGhlIHRhcmdldCByYXRlIGluIDh0aCBiaXRzIHBlciBmcmFtZSAqLwpAQCAtMTIzNSwxMCArMTI4
MSw5IEBAIHN0YXRpYyBpbnQgY29tcHV0ZV92YnIoY29uc3QgQ0VMVE1vZGUgKm1vZGUsIEFuYWx5
c2lzSW5mbyAqYW5hbHlzaXMsIG9wdXNfaW50MzIKICAgICAgICAgICAgICAgICAgICAgICBTSFIz
MihNVUxUMTZfMTYoc3RlcmVvX3NhdmluZy1RQ09OU1QxNigwLjFmLDgpLChjb2RlZF9zdGVyZW9f
ZG9mPDxCSVRSRVMpKSw4KSk7CiAgICB9CiAgICAvKiBCb29zdCB0aGUgcmF0ZSBhY2NvcmRpbmcg
dG8gZHluYWxsb2MgKG1pbnVzIHRoZSBkeW5hbGxvYyBhdmVyYWdlIGZvciBjYWxpYnJhdGlvbiku
ICovCi0gICB0YXJnZXQgKz0gdG90X2Jvb3N0LSgxNjw8TE0pOworICAgdGFyZ2V0ICs9IHRvdF9i
b29zdC0oMTk8PExNKTsKICAgIC8qIEFwcGx5IHRyYW5zaWVudCBib29zdCwgY29tcGVuc2F0aW5n
IGZvciBhdmVyYWdlIGJvb3N0LiAqLwotICAgdGZfY2FsaWJyYXRpb24gPSB2YXJpYWJsZV9kdXJh
dGlvbj09T1BVU19GUkFNRVNJWkVfVkFSSUFCTEUgPwotICAgICAgICAgICAgICAgICAgICBRQ09O
U1QxNigwLjAyZiwxNCkgOiBRQ09OU1QxNigwLjA0ZiwxNCk7CisgICB0Zl9jYWxpYnJhdGlvbiA9
IFFDT05TVDE2KDAuMDQ0ZiwxNCk7CiAgICB0YXJnZXQgKz0gKG9wdXNfaW50MzIpU0hMMzIoTVVM
VDE2XzMyX1ExNSh0Zl9lc3RpbWF0ZS10Zl9jYWxpYnJhdGlvbiwgdGFyZ2V0KSwxKTsKIAogI2lm
bmRlZiBESVNBQkxFX0ZMT0FUX0FQSQpAQCAtMTI0OSw3ICsxMjk0LDcgQEAgc3RhdGljIGludCBj
b21wdXRlX3Zicihjb25zdCBDRUxUTW9kZSAqbW9kZSwgQW5hbHlzaXNJbmZvICphbmFseXNpcywg
b3B1c19pbnQzMgogICAgICAgZmxvYXQgdG9uYWw7CiAKICAgICAgIC8qIFRvbmFsaXR5IGJvb3N0
IChjb21wZW5zYXRpbmcgZm9yIHRoZSBhdmVyYWdlKS4gKi8KLSAgICAgIHRvbmFsID0gTUFYMTYo
MC5mLGFuYWx5c2lzLT50b25hbGl0eS0uMTVmKS0wLjA5ZjsKKyAgICAgIHRvbmFsID0gTUFYMTYo
MC5mLGFuYWx5c2lzLT50b25hbGl0eS0uMTVmKS0wLjEyZjsKICAgICAgIHRvbmFsX3RhcmdldCA9
IHRhcmdldCArIChvcHVzX2ludDMyKSgoY29kZWRfYmluczw8QklUUkVTKSoxLjJmKnRvbmFsKTsK
ICAgICAgIGlmIChwaXRjaF9jaGFuZ2UpCiAgICAgICAgICB0b25hbF90YXJnZXQgKz0gIChvcHVz
X2ludDMyKSgoY29kZWRfYmluczw8QklUUkVTKSouOGYpOwpAQCAtMTI3OSwyMSArMTMyNCwxMSBA
QCBzdGF0aWMgaW50IGNvbXB1dGVfdmJyKGNvbnN0IENFTFRNb2RlICptb2RlLCBBbmFseXNpc0lu
Zm8gKmFuYWx5c2lzLCBvcHVzX2ludDMyCiAgICAgICAvKnByaW50ZigiJWYgJWRcbiIsIG1heERl
cHRoLCBmbG9vcl9kZXB0aCk7Ki8KICAgIH0KIAotICAgaWYgKCghaGFzX3N1cnJvdW5kX21hc2t8
fGxmZSkgJiYgKGNvbnN0cmFpbmVkX3ZiciB8fCBiaXRyYXRlPDY0MDAwKSkKKyAgIC8qIE1ha2Ug
VkJSIGxlc3MgYWdncmVzc2l2ZSBmb3IgY29uc3RyYWluZWQgVkJSIGJlY2F1c2Ugd2UgY2FuJ3Qg
a2VlcCBhIGhpZ2hlciBiaXRyYXRlCisgICAgICBmb3IgbG9uZy4gTmVlZHMgdHVuaW5nLiAqLwor
ICAgaWYgKCghaGFzX3N1cnJvdW5kX21hc2t8fGxmZSkgJiYgY29uc3RyYWluZWRfdmJyKQogICAg
ewotICAgICAgb3B1c192YWwxNiByYXRlX2ZhY3RvciA9IFExNU9ORTsKLSAgICAgIGlmIChiaXRy
YXRlIDwgNjQwMDApCi0gICAgICB7Ci0jaWZkZWYgRklYRURfUE9JTlQKLSAgICAgICAgIHJhdGVf
ZmFjdG9yID0gTUFYMTYoMCwoYml0cmF0ZS0zMjAwMCkpOwotI2Vsc2UKLSAgICAgICAgIHJhdGVf
ZmFjdG9yID0gTUFYMTYoMCwoMS5mLzMyNzY4KSooYml0cmF0ZS0zMjAwMCkpOwotI2VuZGlmCi0g
ICAgICB9Ci0gICAgICBpZiAoY29uc3RyYWluZWRfdmJyKQotICAgICAgICAgcmF0ZV9mYWN0b3Ig
PSBNSU4xNihyYXRlX2ZhY3RvciwgUUNPTlNUMTYoMC42N2YsIDE1KSk7Ci0gICAgICB0YXJnZXQg
PSBiYXNlX3RhcmdldCArIChvcHVzX2ludDMyKU1VTFQxNl8zMl9RMTUocmF0ZV9mYWN0b3IsIHRh
cmdldC1iYXNlX3RhcmdldCk7Ci0KKyAgICAgIHRhcmdldCA9IGJhc2VfdGFyZ2V0ICsgKG9wdXNf
aW50MzIpTVVMVDE2XzMyX1ExNShRQ09OU1QxNigwLjY3ZiwgMTUpLCB0YXJnZXQtYmFzZV90YXJn
ZXQpOwogICAgfQogCiAgICBpZiAoIWhhc19zdXJyb3VuZF9tYXNrICYmIHRmX2VzdGltYXRlIDwg
UUNPTlNUMTYoLjJmLCAxNCkpCkBAIC0xMzMxLDcgKzEzNjYsNyBAQCBpbnQgY2VsdF9lbmNvZGVf
d2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYg
KiBwY20sCiAgICBWQVJERUNMKGludCwgdGZfcmVzKTsKICAgIFZBUkRFQ0wodW5zaWduZWQgY2hh
ciwgY29sbGFwc2VfbWFza3MpOwogICAgY2VsdF9zaWcgKnByZWZpbHRlcl9tZW07Ci0gICBvcHVz
X3ZhbDE2ICpvbGRCYW5kRSwgKm9sZExvZ0UsICpvbGRMb2dFMjsKKyAgIG9wdXNfdmFsMTYgKm9s
ZEJhbmRFLCAqb2xkTG9nRSwgKm9sZExvZ0UyLCAqZW5lcmd5RXJyb3I7CiAgICBpbnQgc2hvcnRC
bG9ja3M9MDsKICAgIGludCBpc1RyYW5zaWVudD0wOwogICAgY29uc3QgaW50IENDID0gc3QtPmNo
YW5uZWxzOwpAQCAtMTM0Myw3ICsxMzc4LDYgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VM
VEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAg
aW50IGVuZDsKICAgIGludCBlZmZFbmQ7CiAgICBpbnQgY29kZWRCYW5kczsKLSAgIGludCB0Zl9z
dW07CiAgICBpbnQgYWxsb2NfdHJpbTsKICAgIGludCBwaXRjaF9pbmRleD1DT01CRklMVEVSX01J
TlBFUklPRDsKICAgIG9wdXNfdmFsMTYgZ2FpbjEgPSAwOwpAQCAtMTM1NSw2ICsxMzg5LDcgQEAg
aW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBj
b25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgb3B1c19pbnQzMiB0b3RhbF9ib29zdDsKICAgIG9w
dXNfaW50MzIgYmFsYW5jZTsKICAgIG9wdXNfaW50MzIgdGVsbDsKKyAgIG9wdXNfaW50MzIgdGVs
bDBfZnJhYzsKICAgIGludCBwcmVmaWx0ZXJfdGFwc2V0PTA7CiAgICBpbnQgcGZfb247CiAgICBp
bnQgYW50aV9jb2xsYXBzZV9yc3Y7CkBAIC0xMzc2LDcgKzE0MTEsOSBAQCBpbnQgY2VsdF9lbmNv
ZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFs
MTYgKiBwY20sCiAgICBvcHVzX3ZhbDE2IHN1cnJvdW5kX21hc2tpbmc9MDsKICAgIG9wdXNfdmFs
MTYgdGVtcG9yYWxfdmJyPTA7CiAgICBvcHVzX3ZhbDE2IHN1cnJvdW5kX3RyaW0gPSAwOwotICAg
b3B1c19pbnQzMiBlcXVpdl9yYXRlID0gNTEwMDAwOworICAgb3B1c19pbnQzMiBlcXVpdl9yYXRl
OworICAgaW50IGh5YnJpZDsKKyAgIGludCB3ZWFrX3RyYW5zaWVudCA9IDA7CiAgICBWQVJERUNM
KG9wdXNfdmFsMTYsIHN1cnJvdW5kX2R5bmFsbG9jKTsKICAgIEFMTE9DX1NUQUNLOwogCkBAIC0x
Mzg2LDYgKzE0MjMsNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9Q
VVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBlQmFuZHMgPSBtb2Rl
LT5lQmFuZHM7CiAgICBzdGFydCA9IHN0LT5zdGFydDsKICAgIGVuZCA9IHN0LT5lbmQ7CisgICBo
eWJyaWQgPSBzdGFydCAhPSAwOwogICAgdGZfZXN0aW1hdGUgPSAwOwogICAgaWYgKG5iQ29tcHJl
c3NlZEJ5dGVzPDIgfHwgcGNtPT1OVUxMKQogICAgewpAQCAtMTQwOSwxMiArMTQ0NywxNCBAQCBp
bnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNv
bnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBvbGRCYW5kRSA9IChvcHVzX3ZhbDE2Kikoc3QtPmlu
X21lbStDQyoob3ZlcmxhcCtDT01CRklMVEVSX01BWFBFUklPRCkpOwogICAgb2xkTG9nRSA9IG9s
ZEJhbmRFICsgQ0MqbmJFQmFuZHM7CiAgICBvbGRMb2dFMiA9IG9sZExvZ0UgKyBDQypuYkVCYW5k
czsKKyAgIGVuZXJneUVycm9yID0gb2xkTG9nRTIgKyBDQypuYkVCYW5kczsKIAogICAgaWYgKGVu
Yz09TlVMTCkKICAgIHsKLSAgICAgIHRlbGw9MTsKKyAgICAgIHRlbGwwX2ZyYWM9dGVsbD0xOwog
ICAgICAgbmJGaWxsZWRCeXRlcz0wOwogICAgfSBlbHNlIHsKKyAgICAgIHRlbGwwX2ZyYWM9dGVs
bD1lY190ZWxsX2ZyYWMoZW5jKTsKICAgICAgIHRlbGw9ZWNfdGVsbChlbmMpOwogICAgICAgbmJG
aWxsZWRCeXRlcz0odGVsbCs0KT4+MzsKICAgIH0KQEAgLTE0NjcsMTAgKzE1MDcsMTEgQEAgaW50
IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25z
dCBvcHVzX3ZhbDE2ICogcGNtLAogICAgICAgaWYgKHN0LT5iaXRyYXRlIT1PUFVTX0JJVFJBVEVf
TUFYKQogICAgICAgICAgbmJDb21wcmVzc2VkQnl0ZXMgPSBJTUFYKDIsIElNSU4obmJDb21wcmVz
c2VkQnl0ZXMsCiAgICAgICAgICAgICAgICAodG1wKzQqbW9kZS0+RnMpLyg4Km1vZGUtPkZzKS0h
IXN0LT5zaWduYWxsaW5nKSk7Ci0gICAgICBlZmZlY3RpdmVCeXRlcyA9IG5iQ29tcHJlc3NlZEJ5
dGVzOworICAgICAgZWZmZWN0aXZlQnl0ZXMgPSBuYkNvbXByZXNzZWRCeXRlcyAtIG5iRmlsbGVk
Qnl0ZXM7CiAgICB9CisgICBlcXVpdl9yYXRlID0gKChvcHVzX2ludDMyKW5iQ29tcHJlc3NlZEJ5
dGVzKjgqNTAgPj4gKDMtTE0pKSAtICg0MCpDKzIwKSooKDQwMD4+TE0pIC0gNTApOwogICAgaWYg
KHN0LT5iaXRyYXRlICE9IE9QVVNfQklUUkFURV9NQVgpCi0gICAgICBlcXVpdl9yYXRlID0gc3Qt
PmJpdHJhdGUgLSAoNDAqQysyMCkqKCg0MDA+PkxNKSAtIDUwKTsKKyAgICAgIGVxdWl2X3JhdGUg
PSBJTUlOKGVxdWl2X3JhdGUsIHN0LT5iaXRyYXRlIC0gKDQwKkMrMjApKigoNDAwPj5MTSkgLSA1
MCkpOwogCiAgICBpZiAoZW5jPT1OVUxMKQogICAgewpAQCAtMTU1OCw4ICsxNTk5LDggQEAgaW50
IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25z
dCBvcHVzX3ZhbDE2ICogcGNtLAogICAgewogICAgICAgaW50IGVuYWJsZWQ7CiAgICAgICBpbnQg
cWc7Ci0gICAgICBlbmFibGVkID0gKChzdC0+bGZlJiZuYkF2YWlsYWJsZUJ5dGVzPjMpIHx8IG5i
QXZhaWxhYmxlQnl0ZXM+MTIqQykgJiYgc3RhcnQ9PTAgJiYgIXNpbGVuY2UgJiYgIXN0LT5kaXNh
YmxlX3BmCi0gICAgICAgICAgICAmJiBzdC0+Y29tcGxleGl0eSA+PSA1ICYmICEoc3QtPmNvbnNl
Y190cmFuc2llbnQgJiYgTE0hPTMgJiYgc3QtPnZhcmlhYmxlX2R1cmF0aW9uPT1PUFVTX0ZSQU1F
U0laRV9WQVJJQUJMRSk7CisgICAgICBlbmFibGVkID0gKChzdC0+bGZlJiZuYkF2YWlsYWJsZUJ5
dGVzPjMpIHx8IG5iQXZhaWxhYmxlQnl0ZXM+MTIqQykgJiYgIWh5YnJpZCAmJiAhc2lsZW5jZSAm
JiAhc3QtPmRpc2FibGVfcGYKKyAgICAgICAgICAgICYmIHN0LT5jb21wbGV4aXR5ID49IDU7CiAK
ICAgICAgIHByZWZpbHRlcl90YXBzZXQgPSBzdC0+dGFwc2V0X2RlY2lzaW9uOwogICAgICAgcGZf
b24gPSBydW5fcHJlZmlsdGVyKHN0LCBpbiwgcHJlZmlsdGVyX21lbSwgQ0MsIE4sIHByZWZpbHRl
cl90YXBzZXQsICZwaXRjaF9pbmRleCwgJmdhaW4xLCAmcWcsIGVuYWJsZWQsIG5iQXZhaWxhYmxl
Qnl0ZXMpOwpAQCAtMTU2OCw3ICsxNjA5LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VM
VEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAg
ICAgICAgcGl0Y2hfY2hhbmdlID0gMTsKICAgICAgIGlmIChwZl9vbj09MCkKICAgICAgIHsKLSAg
ICAgICAgIGlmKHN0YXJ0PT0wICYmIHRlbGwrMTY8PXRvdGFsX2JpdHMpCisgICAgICAgICBpZigh
aHlicmlkICYmIHRlbGwrMTY8PXRvdGFsX2JpdHMpCiAgICAgICAgICAgICBlY19lbmNfYml0X2xv
Z3AoZW5jLCAwLCAxKTsKICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAvKlRoaXMgYmxvY2sgaXMg
bm90IGdhdGVkIGJ5IGEgdG90YWwgYml0cyBjaGVjayBvbmx5IGJlY2F1c2UKQEAgLTE1ODksOCAr
MTYzMCwxMiBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVT
VFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBzaG9ydEJsb2NrcyA9IDA7CiAg
ICBpZiAoc3QtPmNvbXBsZXhpdHkgPj0gMSAmJiAhc3QtPmxmZSkKICAgIHsKKyAgICAgIC8qIFJl
ZHVjZXMgdGhlIGxpa2VsaWhvb2Qgb2YgZW5lcmd5IGluc3RhYmlsaXR5IG9uIGZyaWNhdGl2ZXMg
YXQgbG93IGJpdHJhdGUKKyAgICAgICAgIGluIGh5YnJpZCBtb2RlLiBJdCBzZWVtcyBsaWtlIHdl
IHN0aWxsIHdhbnQgdG8gaGF2ZSByZWFsIHRyYW5zaWVudHMgb24gdm93ZWxzCisgICAgICAgICB0
aG91Z2ggKHNtYWxsIFNJTEsgcXVhbnRpemF0aW9uIG9mZnNldCB2YWx1ZSkuICovCisgICAgICBp
bnQgYWxsb3dfd2Vha190cmFuc2llbnRzID0gaHlicmlkICYmIGVmZmVjdGl2ZUJ5dGVzPDE1ICYm
IHN0LT5zaWxrX2luZm8ub2Zmc2V0ID49IDEwMDsKICAgICAgIGlzVHJhbnNpZW50ID0gdHJhbnNp
ZW50X2FuYWx5c2lzKGluLCBOK292ZXJsYXAsIENDLAotICAgICAgICAgICAgJnRmX2VzdGltYXRl
LCAmdGZfY2hhbik7CisgICAgICAgICAgICAmdGZfZXN0aW1hdGUsICZ0Zl9jaGFuLCBhbGxvd193
ZWFrX3RyYW5zaWVudHMsICZ3ZWFrX3RyYW5zaWVudCk7CiAgICB9CiAgICBpZiAoTE0+MCAmJiBl
Y190ZWxsKGVuYykrMzw9dG90YWxfYml0cykKICAgIHsKQEAgLTE2MTAsNyArMTY1NSw3IEBAIGlu
dCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29u
c3Qgb3B1c192YWwxNiAqIHBjbSwKICAgIGlmIChzZWNvbmRNZGN0KQogICAgewogICAgICAgY29t
cHV0ZV9tZGN0cyhtb2RlLCAwLCBpbiwgZnJlcSwgQywgQ0MsIExNLCBzdC0+dXBzYW1wbGUsIHN0
LT5hcmNoKTsKLSAgICAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhtb2RlLCBmcmVxLCBiYW5kRSwg
ZWZmRW5kLCBDLCBMTSk7CisgICAgICBjb21wdXRlX2JhbmRfZW5lcmdpZXMobW9kZSwgZnJlcSwg
YmFuZEUsIGVmZkVuZCwgQywgTE0sIHN0LT5hcmNoKTsKICAgICAgIGFtcDJMb2cyKG1vZGUsIGVm
ZkVuZCwgZW5kLCBiYW5kRSwgYmFuZExvZ0UyLCBDKTsKICAgICAgIGZvciAoaT0wO2k8QypuYkVC
YW5kcztpKyspCiAgICAgICAgICBiYW5kTG9nRTJbaV0gKz0gSEFMRjE2KFNITDE2KExNLCBEQl9T
SElGVCkpOwpAQCAtMTYxOSw3ICsxNjY0LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VM
VEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAg
Y29tcHV0ZV9tZGN0cyhtb2RlLCBzaG9ydEJsb2NrcywgaW4sIGZyZXEsIEMsIENDLCBMTSwgc3Qt
PnVwc2FtcGxlLCBzdC0+YXJjaCk7CiAgICBpZiAoQ0M9PTImJkM9PTEpCiAgICAgICB0Zl9jaGFu
ID0gMDsKLSAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhtb2RlLCBmcmVxLCBiYW5kRSwgZWZmRW5k
LCBDLCBMTSk7CisgICBjb21wdXRlX2JhbmRfZW5lcmdpZXMobW9kZSwgZnJlcSwgYmFuZEUsIGVm
ZkVuZCwgQywgTE0sIHN0LT5hcmNoKTsKIAogICAgaWYgKHN0LT5sZmUpCiAgICB7CkBAIC0xNjM0
LDcgKzE2NzksNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNf
UkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBBTExPQyhzdXJyb3VuZF9k
eW5hbGxvYywgQypuYkVCYW5kcywgb3B1c192YWwxNik7CiAgICBPUFVTX0NMRUFSKHN1cnJvdW5k
X2R5bmFsbG9jLCBlbmQpOwogICAgLyogVGhpcyBjb21wdXRlcyBob3cgbXVjaCBtYXNraW5nIHRh
a2VzIHBsYWNlIGJldHdlZW4gc3Vycm91bmQgY2hhbm5lbHMgKi8KLSAgIGlmIChzdGFydD09MCYm
c3QtPmVuZXJneV9tYXNrJiYhc3QtPmxmZSkKKyAgIGlmICghaHlicmlkJiZzdC0+ZW5lcmd5X21h
c2smJiFzdC0+bGZlKQogICAgewogICAgICAgaW50IG1hc2tfZW5kOwogICAgICAgaW50IG1pZGJh
bmQ7CkBAIC0xNzM2LDE0ICsxNzgxLDE0IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRF
bmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKIAogICAg
LyogTGFzdCBjaGFuY2UgdG8gY2F0Y2ggYW55IHRyYW5zaWVudCB3ZSBtaWdodCBoYXZlIG1pc3Nl
ZCBpbiB0aGUKICAgICAgIHRpbWUtZG9tYWluIGFuYWx5c2lzICovCi0gICBpZiAoTE0+MCAmJiBl
Y190ZWxsKGVuYykrMzw9dG90YWxfYml0cyAmJiAhaXNUcmFuc2llbnQgJiYgc3QtPmNvbXBsZXhp
dHk+PTUgJiYgIXN0LT5sZmUpCisgICBpZiAoTE0+MCAmJiBlY190ZWxsKGVuYykrMzw9dG90YWxf
Yml0cyAmJiAhaXNUcmFuc2llbnQgJiYgc3QtPmNvbXBsZXhpdHk+PTUgJiYgIXN0LT5sZmUgJiYg
IWh5YnJpZCkKICAgIHsKICAgICAgIGlmIChwYXRjaF90cmFuc2llbnRfZGVjaXNpb24oYmFuZExv
Z0UsIG9sZEJhbmRFLCBuYkVCYW5kcywgc3RhcnQsIGVuZCwgQykpCiAgICAgICB7CiAgICAgICAg
ICBpc1RyYW5zaWVudCA9IDE7CiAgICAgICAgICBzaG9ydEJsb2NrcyA9IE07CiAgICAgICAgICBj
b21wdXRlX21kY3RzKG1vZGUsIHNob3J0QmxvY2tzLCBpbiwgZnJlcSwgQywgQ0MsIExNLCBzdC0+
dXBzYW1wbGUsIHN0LT5hcmNoKTsKLSAgICAgICAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhtb2Rl
LCBmcmVxLCBiYW5kRSwgZWZmRW5kLCBDLCBMTSk7CisgICAgICAgICBjb21wdXRlX2JhbmRfZW5l
cmdpZXMobW9kZSwgZnJlcSwgYmFuZEUsIGVmZkVuZCwgQywgTE0sIHN0LT5hcmNoKTsKICAgICAg
ICAgIGFtcDJMb2cyKG1vZGUsIGVmZkVuZCwgZW5kLCBiYW5kRSwgYmFuZExvZ0UsIEMpOwogICAg
ICAgICAgLyogQ29tcGVuc2F0ZSBmb3IgdGhlIHNjYWxpbmcgb2Ygc2hvcnQgdnMgbG9uZyBtZGN0
cyAqLwogICAgICAgICAgZm9yIChpPTA7aTxDKm5iRUJhbmRzO2krKykKQEAgLTE3NjIsMjkgKzE4
MDcsNDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RS
SUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogCiAgICBBTExPQyh0Zl9yZXMsIG5iRUJh
bmRzLCBpbnQpOwogICAgLyogRGlzYWJsZSB2YXJpYWJsZSB0ZiByZXNvbHV0aW9uIGZvciBoeWJy
aWQgYW5kIGF0IHZlcnkgbG93IGJpdHJhdGUgKi8KLSAgIGlmIChlZmZlY3RpdmVCeXRlcz49MTUq
QyAmJiBzdGFydD09MCAmJiBzdC0+Y29tcGxleGl0eT49MiAmJiAhc3QtPmxmZSkKKyAgIGlmIChl
ZmZlY3RpdmVCeXRlcz49MTUqQyAmJiAhaHlicmlkICYmIHN0LT5jb21wbGV4aXR5Pj0yICYmICFz
dC0+bGZlKQogICAgewogICAgICAgaW50IGxhbWJkYTsKLSAgICAgIGlmIChlZmZlY3RpdmVCeXRl
czw0MCkKLSAgICAgICAgIGxhbWJkYSA9IDEyOwotICAgICAgZWxzZSBpZiAoZWZmZWN0aXZlQnl0
ZXM8NjApCi0gICAgICAgICBsYW1iZGEgPSA2OwotICAgICAgZWxzZSBpZiAoZWZmZWN0aXZlQnl0
ZXM8MTAwKQotICAgICAgICAgbGFtYmRhID0gNDsKLSAgICAgIGVsc2UKLSAgICAgICAgIGxhbWJk
YSA9IDM7Ci0gICAgICBsYW1iZGEqPTI7Ci0gICAgICB0Zl9zZWxlY3QgPSB0Zl9hbmFseXNpcyht
b2RlLCBlZmZFbmQsIGlzVHJhbnNpZW50LCB0Zl9yZXMsIGxhbWJkYSwgWCwgTiwgTE0sICZ0Zl9z
dW0sIHRmX2VzdGltYXRlLCB0Zl9jaGFuKTsKKyAgICAgIGxhbWJkYSA9IElNQVgoNSwgMTI4MC9l
ZmZlY3RpdmVCeXRlcyArIDIpOworICAgICAgdGZfc2VsZWN0ID0gdGZfYW5hbHlzaXMobW9kZSwg
ZWZmRW5kLCBpc1RyYW5zaWVudCwgdGZfcmVzLCBsYW1iZGEsIFgsIE4sIExNLCB0Zl9lc3RpbWF0
ZSwgdGZfY2hhbik7CiAgICAgICBmb3IgKGk9ZWZmRW5kO2k8ZW5kO2krKykKICAgICAgICAgIHRm
X3Jlc1tpXSA9IHRmX3Jlc1tlZmZFbmQtMV07CisgICB9IGVsc2UgaWYgKGh5YnJpZCAmJiB3ZWFr
X3RyYW5zaWVudCkKKyAgIHsKKyAgICAgIC8qIEZvciB3ZWFrIHRyYW5zaWVudHMsIHdlIHJlbHkg
b24gdGhlIGZhY3QgdGhhdCBpbXByb3ZpbmcgdGltZSByZXNvbHV0aW9uIHVzaW5nCisgICAgICAg
ICBURiBvbiBhIGxvbmcgd2luZG93IGlzIGltcGVyZmVjdCBhbmQgd2lsbCBub3QgcmVzdWx0IGlu
IGFuIGVuZXJneSBjb2xsYXBzZSBhdAorICAgICAgICAgbG93IGJpdHJhdGUuICovCisgICAgICBm
b3IgKGk9MDtpPGVuZDtpKyspCisgICAgICAgICB0Zl9yZXNbaV0gPSAxOworICAgICAgdGZfc2Vs
ZWN0PTA7CisgICB9IGVsc2UgaWYgKGh5YnJpZCAmJiBlZmZlY3RpdmVCeXRlczwxNSkKKyAgIHsK
KyAgICAgIC8qIEZvciBsb3cgYml0cmF0ZSBoeWJyaWQsIHdlIGZvcmNlIHRlbXBvcmFsIHJlc29s
dXRpb24gdG8gNSBtcyByYXRoZXIgdGhhbiAyLjUgbXMuICovCisgICAgICBmb3IgKGk9MDtpPGVu
ZDtpKyspCisgICAgICAgICB0Zl9yZXNbaV0gPSAwOworICAgICAgdGZfc2VsZWN0PWlzVHJhbnNp
ZW50OwogICAgfSBlbHNlIHsKLSAgICAgIHRmX3N1bSA9IDA7CiAgICAgICBmb3IgKGk9MDtpPGVu
ZDtpKyspCiAgICAgICAgICB0Zl9yZXNbaV0gPSBpc1RyYW5zaWVudDsKICAgICAgIHRmX3NlbGVj
dD0wOwogICAgfQogCiAgICBBTExPQyhlcnJvciwgQypuYkVCYW5kcywgb3B1c192YWwxNik7Cisg
ICBjPTA7CisgICBkbyB7CisgICAgICBmb3IgKGk9c3RhcnQ7aTxlbmQ7aSsrKQorICAgICAgewor
ICAgICAgICAgLyogV2hlbiB0aGUgZW5lcmd5IGlzIHN0YWJsZSwgc2xpZ2h0bHkgYmlhcyBlbmVy
Z3kgcXVhbnRpemF0aW9uIHRvd2FyZHMKKyAgICAgICAgICAgIHRoZSBwcmV2aW91cyBlcnJvciB0
byBtYWtlIHRoZSBnYWluIG1vcmUgc3RhYmxlIChhIGNvbnN0YW50IG9mZnNldCBpcworICAgICAg
ICAgICAgYmV0dGVyIHRoYW4gZmx1Y3R1YXRpb25zKS4gKi8KKyAgICAgICAgIGlmIChBQlMzMihT
VUIzMihiYW5kTG9nRVtpK2MqbmJFQmFuZHNdLCBvbGRCYW5kRVtpK2MqbmJFQmFuZHNdKSkgPCBR
Q09OU1QxNigyLmYsIERCX1NISUZUKSkKKyAgICAgICAgIHsKKyAgICAgICAgICAgIGJhbmRMb2dF
W2krYypuYkVCYW5kc10gLT0gTVVMVDE2XzE2X1ExNShlbmVyZ3lFcnJvcltpK2MqbmJFQmFuZHNd
LCBRQ09OU1QxNigwLjI1ZiwgMTUpKTsKKyAgICAgICAgIH0KKyAgICAgIH0KKyAgIH0gd2hpbGUg
KCsrYyA8IEMpOwogICAgcXVhbnRfY29hcnNlX2VuZXJneShtb2RlLCBzdGFydCwgZW5kLCBlZmZF
bmQsIGJhbmRMb2dFLAogICAgICAgICAgb2xkQmFuZEUsIHRvdGFsX2JpdHMsIGVycm9yLCBlbmMs
CiAgICAgICAgICBDLCBMTSwgbmJBdmFpbGFibGVCeXRlcywgc3QtPmZvcmNlX2ludHJhLApAQCAt
MTc5OCw3ICsxODYxLDE1IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICog
T1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgICAgIHsKICAgICAg
ICAgIHN0LT50YXBzZXRfZGVjaXNpb24gPSAwOwogICAgICAgICAgc3QtPnNwcmVhZF9kZWNpc2lv
biA9IFNQUkVBRF9OT1JNQUw7Ci0gICAgICB9IGVsc2UgaWYgKHNob3J0QmxvY2tzIHx8IHN0LT5j
b21wbGV4aXR5IDwgMyB8fCBuYkF2YWlsYWJsZUJ5dGVzIDwgMTAqQyB8fCBzdGFydCAhPSAwKQor
ICAgICAgfSBlbHNlIGlmIChoeWJyaWQpCisgICAgICB7CisgICAgICAgICBpZiAoc3QtPmNvbXBs
ZXhpdHkgPT0gMCkKKyAgICAgICAgICAgIHN0LT5zcHJlYWRfZGVjaXNpb24gPSBTUFJFQURfTk9O
RTsKKyAgICAgICAgIGVsc2UgaWYgKGlzVHJhbnNpZW50KQorICAgICAgICAgICAgc3QtPnNwcmVh
ZF9kZWNpc2lvbiA9IFNQUkVBRF9OT1JNQUw7CisgICAgICAgICBlbHNlCisgICAgICAgICAgICBz
dC0+c3ByZWFkX2RlY2lzaW9uID0gU1BSRUFEX0FHR1JFU1NJVkU7CisgICAgICB9IGVsc2UgaWYg
KHNob3J0QmxvY2tzIHx8IHN0LT5jb21wbGV4aXR5IDwgMyB8fCBuYkF2YWlsYWJsZUJ5dGVzIDwg
MTAqQykKICAgICAgIHsKICAgICAgICAgIGlmIChzdC0+Y29tcGxleGl0eSA9PSAwKQogICAgICAg
ICAgICAgc3QtPnNwcmVhZF9kZWNpc2lvbiA9IFNQUkVBRF9OT05FOwpAQCAtMTgzNCw3ICsxOTA1
LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNU
IHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogCiAgICBtYXhEZXB0aCA9IGR5bmFsbG9jX2Fu
YWx5c2lzKGJhbmRMb2dFLCBiYW5kTG9nRTIsIG5iRUJhbmRzLCBzdGFydCwgZW5kLCBDLCBvZmZz
ZXRzLAogICAgICAgICAgc3QtPmxzYl9kZXB0aCwgbW9kZS0+bG9nTiwgaXNUcmFuc2llbnQsIHN0
LT52YnIsIHN0LT5jb25zdHJhaW5lZF92YnIsCi0gICAgICAgICBlQmFuZHMsIExNLCBlZmZlY3Rp
dmVCeXRlcywgJnRvdF9ib29zdCwgc3QtPmxmZSwgc3Vycm91bmRfZHluYWxsb2MpOworICAgICAg
ICAgZUJhbmRzLCBMTSwgZWZmZWN0aXZlQnl0ZXMsICZ0b3RfYm9vc3QsIHN0LT5sZmUsIHN1cnJv
dW5kX2R5bmFsbG9jLCAmc3QtPmFuYWx5c2lzKTsKICAgIC8qIEZvciBMRkUsIGV2ZXJ5dGhpbmcg
aW50ZXJlc3RpbmcgaXMgaW4gdGhlIGZpcnN0IGJhbmQgKi8KICAgIGlmIChzdC0+bGZlKQogICAg
ICAgb2Zmc2V0c1swXSA9IElNSU4oOCwgZWZmZWN0aXZlQnl0ZXMvMyk7CkBAIC0xODk2LDEyICsx
OTY3LDE1IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNU
UklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgIGFsbG9jX3RyaW0gPSA1OwogICAg
aWYgKHRlbGwrKDY8PEJJVFJFUykgPD0gdG90YWxfYml0cyAtIHRvdGFsX2Jvb3N0KQogICAgewot
ICAgICAgaWYgKHN0LT5sZmUpCisgICAgICBpZiAoc3RhcnQgPiAwIHx8IHN0LT5sZmUpCisgICAg
ICB7CisgICAgICAgICBzdC0+c3RlcmVvX3NhdmluZyA9IDA7CiAgICAgICAgICBhbGxvY190cmlt
ID0gNTsKLSAgICAgIGVsc2UKKyAgICAgIH0gZWxzZSB7CiAgICAgICAgICBhbGxvY190cmltID0g
YWxsb2NfdHJpbV9hbmFseXNpcyhtb2RlLCBYLCBiYW5kTG9nRSwKICAgICAgICAgICAgIGVuZCwg
TE0sIEMsIE4sICZzdC0+YW5hbHlzaXMsICZzdC0+c3RlcmVvX3NhdmluZywgdGZfZXN0aW1hdGUs
Ci0gICAgICAgICAgICBzdC0+aW50ZW5zaXR5LCBzdXJyb3VuZF90cmltLCBzdC0+YXJjaCk7Cisg
ICAgICAgICAgICBzdC0+aW50ZW5zaXR5LCBzdXJyb3VuZF90cmltLCBlcXVpdl9yYXRlLCBzdC0+
YXJjaCk7CisgICAgICB9CiAgICAgICBlY19lbmNfaWNkZihlbmMsIGFsbG9jX3RyaW0sIHRyaW1f
aWNkZiwgNyk7CiAgICAgICB0ZWxsID0gZWNfdGVsbF9mcmFjKGVuYyk7CiAgICB9CkBAIC0xOTE5
LDE3ICsxOTkzLDM2IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BV
U19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgICAgLyogRG9uJ3QgYXR0
ZW1wdCB0byB1c2UgbW9yZSB0aGFuIDUxMCBrYi9zLCBldmVuIGZvciBmcmFtZXMgc21hbGxlciB0
aGFuIDIwIG1zLgogICAgICAgICBUaGUgQ0VMVCBhbGxvY2F0b3Igd2lsbCBqdXN0IG5vdCBiZSBh
YmxlIHRvIHVzZSBtb3JlIHRoYW4gdGhhdCBhbnl3YXkuICovCiAgICAgIG5iQ29tcHJlc3NlZEJ5
dGVzID0gSU1JTihuYkNvbXByZXNzZWRCeXRlcywxMjc1Pj4oMy1MTSkpOwotICAgICBiYXNlX3Rh
cmdldCA9IHZicl9yYXRlIC0gKCg0MCpDKzIwKTw8QklUUkVTKTsKKyAgICAgaWYgKCFoeWJyaWQp
CisgICAgIHsKKyAgICAgICAgYmFzZV90YXJnZXQgPSB2YnJfcmF0ZSAtICgoNDAqQysyMCk8PEJJ
VFJFUyk7CisgICAgIH0gZWxzZSB7CisgICAgICAgIGJhc2VfdGFyZ2V0ID0gSU1BWCgwLCB2YnJf
cmF0ZSAtICgoOSpDKzQpPDxCSVRSRVMpKTsKKyAgICAgfQogCiAgICAgIGlmIChzdC0+Y29uc3Ry
YWluZWRfdmJyKQogICAgICAgICBiYXNlX3RhcmdldCArPSAoc3QtPnZicl9vZmZzZXQ+PmxtX2Rp
ZmYpOwogCi0gICAgIHRhcmdldCA9IGNvbXB1dGVfdmJyKG1vZGUsICZzdC0+YW5hbHlzaXMsIGJh
c2VfdGFyZ2V0LCBMTSwgZXF1aXZfcmF0ZSwKKyAgICAgaWYgKCFoeWJyaWQpCisgICAgIHsKKyAg
ICAgICAgdGFyZ2V0ID0gY29tcHV0ZV92YnIobW9kZSwgJnN0LT5hbmFseXNpcywgYmFzZV90YXJn
ZXQsIExNLCBlcXVpdl9yYXRlLAogICAgICAgICAgICBzdC0+bGFzdENvZGVkQmFuZHMsIEMsIHN0
LT5pbnRlbnNpdHksIHN0LT5jb25zdHJhaW5lZF92YnIsCiAgICAgICAgICAgIHN0LT5zdGVyZW9f
c2F2aW5nLCB0b3RfYm9vc3QsIHRmX2VzdGltYXRlLCBwaXRjaF9jaGFuZ2UsIG1heERlcHRoLAot
ICAgICAgICAgICBzdC0+dmFyaWFibGVfZHVyYXRpb24sIHN0LT5sZmUsIHN0LT5lbmVyZ3lfbWFz
ayE9TlVMTCwgc3Vycm91bmRfbWFza2luZywKKyAgICAgICAgICAgc3QtPmxmZSwgc3QtPmVuZXJn
eV9tYXNrIT1OVUxMLCBzdXJyb3VuZF9tYXNraW5nLAogICAgICAgICAgICB0ZW1wb3JhbF92YnIp
OwotCisgICAgIH0gZWxzZSB7CisgICAgICAgIHRhcmdldCA9IGJhc2VfdGFyZ2V0OworICAgICAg
ICAvKiBUb25hbCBmcmFtZXMgKG9mZnNldDwxMDApIG5lZWQgbW9yZSBiaXRzIHRoYW4gbm9pc3kg
KG9mZnNldD4xMDApIG9uZXMuICovCisgICAgICAgIGlmIChzdC0+c2lsa19pbmZvLm9mZnNldCA8
IDEwMCkgdGFyZ2V0ICs9IDEyIDw8IEJJVFJFUyA+PiAoMy1MTSk7CisgICAgICAgIGlmIChzdC0+
c2lsa19pbmZvLm9mZnNldCA+IDEwMCkgdGFyZ2V0IC09IDE4IDw8IEJJVFJFUyA+PiAoMy1MTSk7
CisgICAgICAgIC8qIEJvb3N0aW5nIGJpdHJhdGUgb24gdHJhbnNpZW50cyBhbmQgdm93ZWxzIHdp
dGggc2lnbmlmaWNhbnQgdGVtcG9yYWwKKyAgICAgICAgICAgc3Bpa2VzLiAqLworICAgICAgICB0
YXJnZXQgKz0gKG9wdXNfaW50MzIpTVVMVDE2XzE2X1ExNCh0Zl9lc3RpbWF0ZS1RQ09OU1QxNigu
MjVmLDE0KSwgKDUwPDxCSVRSRVMpKTsKKyAgICAgICAgLyogSWYgd2UgaGF2ZSBhIHN0cm9uZyB0
cmFuc2llbnQsIGxldCdzIG1ha2Ugc3VyZSBpdCBoYXMgZW5vdWdoIGJpdHMgdG8gY29kZQorICAg
ICAgICAgICB0aGUgZmlyc3QgdHdvIGJhbmRzLCBzbyB0aGF0IGl0IGNhbiB1c2UgZm9sZGluZyBy
YXRoZXIgdGhhbiBub2lzZS4gKi8KKyAgICAgICAgaWYgKHRmX2VzdGltYXRlID4gUUNPTlNUMTYo
LjdmLDE0KSkKKyAgICAgICAgICAgdGFyZ2V0ID0gSU1BWCh0YXJnZXQsIDUwPDxCSVRSRVMpOwor
ICAgICB9CiAgICAgIC8qIFRoZSBjdXJyZW50IG9mZnNldCBpcyByZW1vdmVkIGZyb20gdGhlIHRh
cmdldCBhbmQgdGhlIHNwYWNlIHVzZWQKICAgICAgICAgc28gZmFyIGlzIGFkZGVkKi8KICAgICAg
dGFyZ2V0PXRhcmdldCt0ZWxsOwpAQCAtMTkzNywxMSArMjAzMCwxNiBAQCBpbnQgY2VsdF9lbmNv
ZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFs
MTYgKiBwY20sCiAgICAgICAgICByZXN1bHQgaW4gdGhlIGVuY29kZXIgcnVubmluZyBvdXQgb2Yg
Yml0cy4KICAgICAgICAgVGhlIG1hcmdpbiBvZiAyIGJ5dGVzIGVuc3VyZXMgdGhhdCBub25lIG9m
IHRoZSBidXN0LXByZXZlbnRpb24gbG9naWMKICAgICAgICAgIGluIHRoZSBkZWNvZGVyIHdpbGwg
aGF2ZSB0cmlnZ2VyZWQgc28gZmFyLiAqLwotICAgICBtaW5fYWxsb3dlZCA9ICgodGVsbCt0b3Rh
bF9ib29zdCsoMTw8KEJJVFJFUyszKSktMSk+PihCSVRSRVMrMykpICsgMiAtIG5iRmlsbGVkQnl0
ZXM7CisgICAgIG1pbl9hbGxvd2VkID0gKCh0ZWxsK3RvdGFsX2Jvb3N0KygxPDwoQklUUkVTKzMp
KS0xKT4+KEJJVFJFUyszKSkgKyAyOworICAgICAvKiBUYWtlIGludG8gYWNjb3VudCB0aGUgMzcg
Yml0cyB3ZSBuZWVkIHRvIGhhdmUgbGVmdCBpbiB0aGUgcGFja2V0IHRvCisgICAgICAgIHNpZ25h
bCBhIHJlZHVuZGFudCBmcmFtZSBpbiBoeWJyaWQgbW9kZS4gQ3JlYXRpbmcgYSBzaG9ydGVyIHBh
Y2tldCB3b3VsZAorICAgICAgICBjcmVhdGUgYW4gZW50cm9weSBjb2RlciBkZXN5bmMuICovCisg
ICAgIGlmIChoeWJyaWQpCisgICAgICAgIG1pbl9hbGxvd2VkID0gSU1BWChtaW5fYWxsb3dlZCwg
KHRlbGwwX2ZyYWMrKDM3PDxCSVRSRVMpK3RvdGFsX2Jvb3N0KygxPDwoQklUUkVTKzMpKS0xKT4+
KEJJVFJFUyszKSk7CiAKICAgICAgbmJBdmFpbGFibGVCeXRlcyA9ICh0YXJnZXQrKDE8PChCSVRS
RVMrMikpKT4+KEJJVFJFUyszKTsKICAgICAgbmJBdmFpbGFibGVCeXRlcyA9IElNQVgobWluX2Fs
bG93ZWQsbmJBdmFpbGFibGVCeXRlcyk7Ci0gICAgIG5iQXZhaWxhYmxlQnl0ZXMgPSBJTUlOKG5i
Q29tcHJlc3NlZEJ5dGVzLG5iQXZhaWxhYmxlQnl0ZXMrbmJGaWxsZWRCeXRlcykgLSBuYkZpbGxl
ZEJ5dGVzOworICAgICBuYkF2YWlsYWJsZUJ5dGVzID0gSU1JTihuYkNvbXByZXNzZWRCeXRlcyxu
YkF2YWlsYWJsZUJ5dGVzKTsKIAogICAgICAvKiBCeSBob3cgbXVjaCBkaWQgd2UgIm1pc3MiIHRo
ZSB0YXJnZXQgb24gdGhhdCBmcmFtZSAqLwogICAgICBkZWx0YSA9IHRhcmdldCAtIHZicl9yYXRl
OwpAQCAtMTk4OCw3ICsyMDg2LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29k
ZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgICAgICBz
dC0+dmJyX3Jlc2Vydm9pciA9IDA7CiAgICAgICAgIC8qcHJpbnRmICgiKyVkXG4iLCBhZGp1c3Qp
OyovCiAgICAgIH0KLSAgICAgbmJDb21wcmVzc2VkQnl0ZXMgPSBJTUlOKG5iQ29tcHJlc3NlZEJ5
dGVzLG5iQXZhaWxhYmxlQnl0ZXMrbmJGaWxsZWRCeXRlcyk7CisgICAgIG5iQ29tcHJlc3NlZEJ5
dGVzID0gSU1JTihuYkNvbXByZXNzZWRCeXRlcyxuYkF2YWlsYWJsZUJ5dGVzKTsKICAgICAgLypw
cmludGYoIiVkXG4iLCBuYkNvbXByZXNzZWRCeXRlcyo1MCo4KTsqLwogICAgICAvKiBUaGlzIG1v
dmVzIHRoZSByYXcgYml0cyB0byB0YWtlIGludG8gYWNjb3VudCB0aGUgbmV3IGNvbXByZXNzZWQg
c2l6ZSAqLwogICAgICBlY19lbmNfc2hyaW5rKGVuYywgbmJDb21wcmVzc2VkQnl0ZXMpOwpAQCAt
MjAzOCw3ICsyMTM2LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBP
UFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgcXVhbnRfYWxsX2Jh
bmRzKDEsIG1vZGUsIHN0YXJ0LCBlbmQsIFgsIEM9PTIgPyBYK04gOiBOVUxMLCBjb2xsYXBzZV9t
YXNrcywKICAgICAgICAgIGJhbmRFLCBwdWxzZXMsIHNob3J0QmxvY2tzLCBzdC0+c3ByZWFkX2Rl
Y2lzaW9uLAogICAgICAgICAgZHVhbF9zdGVyZW8sIHN0LT5pbnRlbnNpdHksIHRmX3JlcywgbmJD
b21wcmVzc2VkQnl0ZXMqKDg8PEJJVFJFUyktYW50aV9jb2xsYXBzZV9yc3YsCi0gICAgICAgICBi
YWxhbmNlLCBlbmMsIExNLCBjb2RlZEJhbmRzLCAmc3QtPnJuZywgc3QtPmFyY2gpOworICAgICAg
ICAgYmFsYW5jZSwgZW5jLCBMTSwgY29kZWRCYW5kcywgJnN0LT5ybmcsIHN0LT5jb21wbGV4aXR5
LCBzdC0+YXJjaCwgc3QtPmRpc2FibGVfaW52KTsKIAogICAgaWYgKGFudGlfY29sbGFwc2VfcnN2
ID4gMCkKICAgIHsKQEAgLTIwNDksNiArMjE0NywxNCBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9l
YyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20s
CiAgICAgICBlY19lbmNfYml0cyhlbmMsIGFudGlfY29sbGFwc2Vfb24sIDEpOwogICAgfQogICAg
cXVhbnRfZW5lcmd5X2ZpbmFsaXNlKG1vZGUsIHN0YXJ0LCBlbmQsIG9sZEJhbmRFLCBlcnJvciwg
ZmluZV9xdWFudCwgZmluZV9wcmlvcml0eSwgbmJDb21wcmVzc2VkQnl0ZXMqOC1lY190ZWxsKGVu
YyksIGVuYywgQyk7CisgICBPUFVTX0NMRUFSKGVuZXJneUVycm9yLCBuYkVCYW5kcypDQyk7Cisg
ICBjPTA7CisgICBkbyB7CisgICAgICBmb3IgKGk9c3RhcnQ7aTxlbmQ7aSsrKQorICAgICAgewor
ICAgICAgICAgZW5lcmd5RXJyb3JbaStjKm5iRUJhbmRzXSA9IE1BWDE2KC1RQ09OU1QxNigwLjVm
LCAxNSksIE1JTjE2KFFDT05TVDE2KDAuNWYsIDE1KSwgZXJyb3JbaStjKm5iRUJhbmRzXSkpOwor
ICAgICAgfQorICAgfSB3aGlsZSAoKytjIDwgQyk7CiAKICAgIGlmIChzaWxlbmNlKQogICAgewpA
QCAtMjMyMSwxMCArMjQyNywyNCBAQCBpbnQgb3B1c19jdXN0b21fZW5jb2Rlcl9jdGwoQ0VMVEVu
Y29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgICAgICAgICp2
YWx1ZT1zdC0+bHNiX2RlcHRoOwogICAgICAgfQogICAgICAgYnJlYWs7Ci0gICAgICBjYXNlIE9Q
VVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTl9SRVFVRVNUOgorICAgICAgY2FzZSBPUFVTX1NF
VF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKICAgICAgIHsKICAgICAgICAgICBv
cHVzX2ludDMyIHZhbHVlID0gdmFfYXJnKGFwLCBvcHVzX2ludDMyKTsKLSAgICAgICAgICBzdC0+
dmFyaWFibGVfZHVyYXRpb24gPSB2YWx1ZTsKKyAgICAgICAgICBpZih2YWx1ZTwwIHx8IHZhbHVl
PjEpCisgICAgICAgICAgeworICAgICAgICAgICAgIGdvdG8gYmFkX2FyZzsKKyAgICAgICAgICB9
CisgICAgICAgICAgc3QtPmRpc2FibGVfaW52ID0gdmFsdWU7CisgICAgICB9CisgICAgICBicmVh
azsKKyAgICAgIGNhc2UgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1Q6
CisgICAgICB7CisgICAgICAgICAgb3B1c19pbnQzMiAqdmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNf
aW50MzIqKTsKKyAgICAgICAgICBpZiAoIXZhbHVlKQorICAgICAgICAgIHsKKyAgICAgICAgICAg
ICBnb3RvIGJhZF9hcmc7CisgICAgICAgICAgfQorICAgICAgICAgICp2YWx1ZSA9IHN0LT5kaXNh
YmxlX2ludjsKICAgICAgIH0KICAgICAgIGJyZWFrOwogICAgICAgY2FzZSBPUFVTX1JFU0VUX1NU
QVRFOgpAQCAtMjM2OCw2ICsyNDg4LDEzIEBAIGludCBvcHVzX2N1c3RvbV9lbmNvZGVyX2N0bChD
RUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICAgICAg
ICAgICBPUFVTX0NPUFkoJnN0LT5hbmFseXNpcywgaW5mbywgMSk7CiAgICAgICB9CiAgICAgICBi
cmVhazsKKyAgICAgIGNhc2UgQ0VMVF9TRVRfU0lMS19JTkZPX1JFUVVFU1Q6CisgICAgICB7Cisg
ICAgICAgICBTSUxLSW5mbyAqaW5mbyA9IHZhX2FyZyhhcCwgU0lMS0luZm8gKik7CisgICAgICAg
ICBpZiAoaW5mbykKKyAgICAgICAgICAgIE9QVVNfQ09QWSgmc3QtPnNpbGtfaW5mbywgaW5mbywg
MSk7CisgICAgICB9CisgICAgICBicmVhazsKICAgICAgIGNhc2UgQ0VMVF9HRVRfTU9ERV9SRVFV
RVNUOgogICAgICAgewogICAgICAgICAgY29uc3QgQ0VMVE1vZGUgKiogdmFsdWUgPSB2YV9hcmco
YXAsIGNvbnN0IENFTFRNb2RlKiopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfbHBjLmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
Y2VsdF9scGMuYwppbmRleCBiNDEwYTIxYzVmNmJmMDk1ZjJmMTZjNzM1MGE5YjQ3MTE0MWZlZDg5
Li41N2JjNWYzZGQzZmQ4ODYxNjJmZTRjM2E3ZmRiODcxOTdmYzUzZWJkIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvY2VsdF9scGMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9scGMuYwpAQCAtODksNTggKzg5LDQwIEBAIGlu
dCAgICAgICAgICBwCiAKIAogdm9pZCBjZWx0X2Zpcl9jKAotICAgICAgICAgY29uc3Qgb3B1c192
YWwxNiAqX3gsCisgICAgICAgICBjb25zdCBvcHVzX3ZhbDE2ICp4LAogICAgICAgICAgY29uc3Qg
b3B1c192YWwxNiAqbnVtLAotICAgICAgICAgb3B1c192YWwxNiAqX3ksCisgICAgICAgICBvcHVz
X3ZhbDE2ICp5LAogICAgICAgICAgaW50IE4sCiAgICAgICAgICBpbnQgb3JkLAotICAgICAgICAg
b3B1c192YWwxNiAqbWVtLAogICAgICAgICAgaW50IGFyY2gpCiB7CiAgICBpbnQgaSxqOwogICAg
VkFSREVDTChvcHVzX3ZhbDE2LCBybnVtKTsKLSAgIFZBUkRFQ0wob3B1c192YWwxNiwgeCk7CiAg
ICBTQVZFX1NUQUNLOwogCiAgICBBTExPQyhybnVtLCBvcmQsIG9wdXNfdmFsMTYpOwotICAgQUxM
T0MoeCwgTitvcmQsIG9wdXNfdmFsMTYpOwogICAgZm9yKGk9MDtpPG9yZDtpKyspCiAgICAgICBy
bnVtW2ldID0gbnVtW29yZC1pLTFdOwotICAgZm9yKGk9MDtpPG9yZDtpKyspCi0gICAgICB4W2ld
ID0gbWVtW29yZC1pLTFdOwotICAgZm9yIChpPTA7aTxOO2krKykKLSAgICAgIHhbaStvcmRdPV94
W2ldOwotICAgZm9yKGk9MDtpPG9yZDtpKyspCi0gICAgICBtZW1baV0gPSBfeFtOLWktMV07Ci0j
aWZkZWYgU01BTExfRk9PVFBSSU5UCi0gICAodm9pZClhcmNoOwotICAgZm9yIChpPTA7aTxOO2kr
KykKLSAgIHsKLSAgICAgIG9wdXNfdmFsMzIgc3VtID0gU0hMMzIoRVhURU5EMzIoX3hbaV0pLCBT
SUdfU0hJRlQpOwotICAgICAgZm9yIChqPTA7ajxvcmQ7aisrKQotICAgICAgewotICAgICAgICAg
c3VtID0gTUFDMTZfMTYoc3VtLHJudW1bal0seFtpK2pdKTsKLSAgICAgIH0KLSAgICAgIF95W2ld
ID0gU0FUVVJBVEUxNihQU0hSMzIoc3VtLCBTSUdfU0hJRlQpKTsKLSAgIH0KLSNlbHNlCiAgICBm
b3IgKGk9MDtpPE4tMztpKz00KQogICAgewotICAgICAgb3B1c192YWwzMiBzdW1bNF09ezAsMCww
LDB9OwotICAgICAgeGNvcnJfa2VybmVsKHJudW0sIHgraSwgc3VtLCBvcmQsIGFyY2gpOwotICAg
ICAgX3lbaSAgXSA9IFNBVFVSQVRFMTYoQUREMzIoRVhURU5EMzIoX3hbaSAgXSksIFBTSFIzMihz
dW1bMF0sIFNJR19TSElGVCkpKTsKLSAgICAgIF95W2krMV0gPSBTQVRVUkFURTE2KEFERDMyKEVY
VEVORDMyKF94W2krMV0pLCBQU0hSMzIoc3VtWzFdLCBTSUdfU0hJRlQpKSk7Ci0gICAgICBfeVtp
KzJdID0gU0FUVVJBVEUxNihBREQzMihFWFRFTkQzMihfeFtpKzJdKSwgUFNIUjMyKHN1bVsyXSwg
U0lHX1NISUZUKSkpOwotICAgICAgX3lbaSszXSA9IFNBVFVSQVRFMTYoQUREMzIoRVhURU5EMzIo
X3hbaSszXSksIFBTSFIzMihzdW1bM10sIFNJR19TSElGVCkpKTsKKyAgICAgIG9wdXNfdmFsMzIg
c3VtWzRdOworICAgICAgc3VtWzBdID0gU0hMMzIoRVhURU5EMzIoeFtpICBdKSwgU0lHX1NISUZU
KTsKKyAgICAgIHN1bVsxXSA9IFNITDMyKEVYVEVORDMyKHhbaSsxXSksIFNJR19TSElGVCksCisg
ICAgICBzdW1bMl0gPSBTSEwzMihFWFRFTkQzMih4W2krMl0pLCBTSUdfU0hJRlQpOworICAgICAg
c3VtWzNdID0gU0hMMzIoRVhURU5EMzIoeFtpKzNdKSwgU0lHX1NISUZUKTsKKyAgICAgIHhjb3Jy
X2tlcm5lbChybnVtLCB4K2ktb3JkLCBzdW0sIG9yZCwgYXJjaCk7CisgICAgICB5W2kgIF0gPSBS
T1VORDE2KHN1bVswXSwgU0lHX1NISUZUKTsKKyAgICAgIHlbaSsxXSA9IFJPVU5EMTYoc3VtWzFd
LCBTSUdfU0hJRlQpOworICAgICAgeVtpKzJdID0gUk9VTkQxNihzdW1bMl0sIFNJR19TSElGVCk7
CisgICAgICB5W2krM10gPSBST1VORDE2KHN1bVszXSwgU0lHX1NISUZUKTsKICAgIH0KICAgIGZv
ciAoO2k8TjtpKyspCiAgICB7Ci0gICAgICBvcHVzX3ZhbDMyIHN1bSA9IDA7CisgICAgICBvcHVz
X3ZhbDMyIHN1bSA9IFNITDMyKEVYVEVORDMyKHhbaV0pLCBTSUdfU0hJRlQpOwogICAgICAgZm9y
IChqPTA7ajxvcmQ7aisrKQotICAgICAgICAgc3VtID0gTUFDMTZfMTYoc3VtLHJudW1bal0seFtp
K2pdKTsKLSAgICAgIF95W2ldID0gU0FUVVJBVEUxNihBREQzMihFWFRFTkQzMihfeFtpXSksIFBT
SFIzMihzdW0sIFNJR19TSElGVCkpKTsKKyAgICAgICAgIHN1bSA9IE1BQzE2XzE2KHN1bSxybnVt
W2pdLHhbaStqLW9yZF0pOworICAgICAgeVtpXSA9IFJPVU5EMTYoc3VtLCBTSUdfU0hJRlQpOwog
ICAgfQotI2VuZGlmCiAgICBSRVNUT1JFX1NUQUNLOwogfQogCkBAIC0xNjYsNyArMTQ4LDcgQEAg
dm9pZCBjZWx0X2lpcihjb25zdCBvcHVzX3ZhbDMyICpfeCwKICAgICAgIHsKICAgICAgICAgIG1l
bVtqXT1tZW1bai0xXTsKICAgICAgIH0KLSAgICAgIG1lbVswXSA9IFJPVU5EMTYoc3VtLFNJR19T
SElGVCk7CisgICAgICBtZW1bMF0gPSBTUk9VTkQxNihzdW0sIFNJR19TSElGVCk7CiAgICAgICBf
eVtpXSA9IHN1bTsKICAgIH0KICNlbHNlCkBAIC0xOTUsMjAgKzE3NywyMCBAQCB2b2lkIGNlbHRf
aWlyKGNvbnN0IG9wdXNfdmFsMzIgKl94LAogICAgICAgeGNvcnJfa2VybmVsKHJkZW4sIHkraSwg
c3VtLCBvcmQsIGFyY2gpOwogCiAgICAgICAvKiBQYXRjaCB1cCB0aGUgcmVzdWx0IHRvIGNvbXBl
bnNhdGUgZm9yIHRoZSBmYWN0IHRoYXQgdGhpcyBpcyBhbiBJSVIgKi8KLSAgICAgIHlbaStvcmQg
IF0gPSAtUk9VTkQxNihzdW1bMF0sU0lHX1NISUZUKTsKKyAgICAgIHlbaStvcmQgIF0gPSAtU1JP
VU5EMTYoc3VtWzBdLFNJR19TSElGVCk7CiAgICAgICBfeVtpICBdID0gc3VtWzBdOwogICAgICAg
c3VtWzFdID0gTUFDMTZfMTYoc3VtWzFdLCB5W2krb3JkICBdLCBkZW5bMF0pOwotICAgICAgeVtp
K29yZCsxXSA9IC1ST1VORDE2KHN1bVsxXSxTSUdfU0hJRlQpOworICAgICAgeVtpK29yZCsxXSA9
IC1TUk9VTkQxNihzdW1bMV0sU0lHX1NISUZUKTsKICAgICAgIF95W2krMV0gPSBzdW1bMV07CiAg
ICAgICBzdW1bMl0gPSBNQUMxNl8xNihzdW1bMl0sIHlbaStvcmQrMV0sIGRlblswXSk7CiAgICAg
ICBzdW1bMl0gPSBNQUMxNl8xNihzdW1bMl0sIHlbaStvcmQgIF0sIGRlblsxXSk7Ci0gICAgICB5
W2krb3JkKzJdID0gLVJPVU5EMTYoc3VtWzJdLFNJR19TSElGVCk7CisgICAgICB5W2krb3JkKzJd
ID0gLVNST1VORDE2KHN1bVsyXSxTSUdfU0hJRlQpOwogICAgICAgX3lbaSsyXSA9IHN1bVsyXTsK
IAogICAgICAgc3VtWzNdID0gTUFDMTZfMTYoc3VtWzNdLCB5W2krb3JkKzJdLCBkZW5bMF0pOwog
ICAgICAgc3VtWzNdID0gTUFDMTZfMTYoc3VtWzNdLCB5W2krb3JkKzFdLCBkZW5bMV0pOwogICAg
ICAgc3VtWzNdID0gTUFDMTZfMTYoc3VtWzNdLCB5W2krb3JkICBdLCBkZW5bMl0pOwotICAgICAg
eVtpK29yZCszXSA9IC1ST1VORDE2KHN1bVszXSxTSUdfU0hJRlQpOworICAgICAgeVtpK29yZCsz
XSA9IC1TUk9VTkQxNihzdW1bM10sU0lHX1NISUZUKTsKICAgICAgIF95W2krM10gPSBzdW1bM107
CiAgICB9CiAgICBmb3IgKDtpPE47aSsrKQpAQCAtMjE2LDcgKzE5OCw3IEBAIHZvaWQgY2VsdF9p
aXIoY29uc3Qgb3B1c192YWwzMiAqX3gsCiAgICAgICBvcHVzX3ZhbDMyIHN1bSA9IF94W2ldOwog
ICAgICAgZm9yIChqPTA7ajxvcmQ7aisrKQogICAgICAgICAgc3VtIC09IE1VTFQxNl8xNihyZGVu
W2pdLHlbaStqXSk7Ci0gICAgICB5W2krb3JkXSA9IFJPVU5EMTYoc3VtLFNJR19TSElGVCk7Cisg
ICAgICB5W2krb3JkXSA9IFNST1VORDE2KHN1bSxTSUdfU0hJRlQpOwogICAgICAgX3lbaV0gPSBz
dW07CiAgICB9CiAgICBmb3IoaT0wO2k8b3JkO2krKykKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2xw
Yy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L2NlbHRfbHBjLmgKaW5kZXggMzIzNDU5ZWIxYTgzMTU2NjY0Nzg0NzQyZGRjYTc4
ZTFjNDRlNmRjMC4uYTRjNWZkNmVhNWRjYTMxMmZhZGI5YzM2MWRiMmFiZDVlMWJlN2Y2OCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L2NlbHRfbHBjLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfbHBjLmgKQEAgLTQ1LDEyICs0
NSwxMSBAQCB2b2lkIGNlbHRfZmlyX2MoCiAgICAgICAgICBvcHVzX3ZhbDE2ICp5LAogICAgICAg
ICAgaW50IE4sCiAgICAgICAgICBpbnQgb3JkLAotICAgICAgICAgb3B1c192YWwxNiAqbWVtLAog
ICAgICAgICAgaW50IGFyY2gpOwogCiAjaWYgIWRlZmluZWQoT1ZFUlJJREVfQ0VMVF9GSVIpCi0j
ZGVmaW5lIGNlbHRfZmlyKHgsIG51bSwgeSwgTiwgb3JkLCBtZW0sIGFyY2gpIFwKLSAgICAoY2Vs
dF9maXJfYyh4LCBudW0sIHksIE4sIG9yZCwgbWVtLCBhcmNoKSkKKyNkZWZpbmUgY2VsdF9maXIo
eCwgbnVtLCB5LCBOLCBvcmQsIGFyY2gpIFwKKyAgICAoY2VsdF9maXJfYyh4LCBudW0sIHksIE4s
IG9yZCwgYXJjaCkpCiAjZW5kaWYKIAogdm9pZCBjZWx0X2lpcihjb25zdCBvcHVzX3ZhbDMyICp4
LApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L2R1bXBfbW9kZXMvZHVtcF9tb2Rlcy5jIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2R1bXBfbW9k
ZXMvZHVtcF9tb2Rlcy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkxMDVhNTM0NGUzYmYzNGFlZjljYWMyNDdjMTA2
MmY2OWJmNDQ3MWUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVz
LmMKQEAgLTAsMCArMSwzNTMgQEAKKy8qIENvcHlyaWdodCAoYykgMjAwOCBDU0lSTworICAgQ29w
eXJpZ2h0IChjKSAyMDA4LTIwMDkgWGlwaC5PcmcgRm91bmRhdGlvbgorICAgV3JpdHRlbiBieSBK
ZWFuLU1hcmMgVmFsaW4gKi8KKy8qCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJl
IG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSCisgICBPUiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAg
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAgIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICAgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgorICAgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcKKyAgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUworICAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRl
IDxzdGRpby5oPgorI2luY2x1ZGUgIm1vZGVzLmgiCisjaW5jbHVkZSAiY2VsdC5oIgorI2luY2x1
ZGUgInJhdGUuaCIKKyNpbmNsdWRlICJkdW1wX21vZGVzX2FyY2guaCIKKworI2RlZmluZSBJTlQx
NiAiJWQiCisjZGVmaW5lIElOVDMyICIlZCIKKyNkZWZpbmUgRkxPQVQgIiUjMC44Z2YiCisKKyNp
ZmRlZiBGSVhFRF9QT0lOVAorI2RlZmluZSBXT1JEMTYgSU5UMTYKKyNkZWZpbmUgV09SRDMyIElO
VDMyCisjZWxzZQorI2RlZmluZSBXT1JEMTYgRkxPQVQKKyNkZWZpbmUgV09SRDMyIEZMT0FUCisj
ZW5kaWYKKwordm9pZCBkdW1wX21vZGVzKEZJTEUgKmZpbGUsIENFTFRNb2RlICoqbW9kZXMsIGlu
dCBuYl9tb2RlcykKK3sKKyAgIGludCBpLCBqLCBrOworICAgaW50IG1kY3RfdHdpZGRsZXNfc2l6
ZTsKKyAgIGZwcmludGYoZmlsZSwgIi8qIFRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgd2FzIGF1
dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IGR1bXBfbW9kZXMuY1xuIik7CisgICBmcHJpbnRmKGZp
bGUsICIgICB3aXRoIGFyZ3VtZW50czoiKTsKKyAgIGZvciAoaT0wO2k8bmJfbW9kZXM7aSsrKQor
ICAgeworICAgICAgQ0VMVE1vZGUgKm1vZGUgPSBtb2Rlc1tpXTsKKyAgICAgIGZwcmludGYoZmls
ZSwgIiAlZCAlZCIsbW9kZS0+RnMsbW9kZS0+c2hvcnRNZGN0U2l6ZSptb2RlLT5uYlNob3J0TWRj
dHMpOworICAgfQorICAgZnByaW50ZihmaWxlLCAiXG4gICBJdCBjb250YWlucyBzdGF0aWMgZGVm
aW5pdGlvbnMgZm9yIHNvbWUgcHJlLWRlZmluZWQgbW9kZXMuICovXG4iKTsKKyAgIGZwcmludGYo
ZmlsZSwgIiNpbmNsdWRlIFwibW9kZXMuaFwiXG4iKTsKKyAgIGZwcmludGYoZmlsZSwgIiNpbmNs
dWRlIFwicmF0ZS5oXCJcbiIpOworICAgZnByaW50ZihmaWxlLCAiXG4jaWZkZWYgSEFWRV9BUk1f
TkUxMFxuIik7CisgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIE9WRVJSSURFX0ZGVCAxXG4iKTsK
KyAgIGZwcmludGYoZmlsZSwgIiNpbmNsdWRlIFwiJXNcIlxuIiwgQVJNX05FMTBfQVJDSF9GSUxF
X05BTUUpOworICAgZnByaW50ZihmaWxlLCAiI2VuZGlmXG4iKTsKKworICAgZnByaW50ZihmaWxl
LCAiXG4iKTsKKworICAgZm9yIChpPTA7aTxuYl9tb2RlcztpKyspCisgICB7CisgICAgICBDRUxU
TW9kZSAqbW9kZSA9IG1vZGVzW2ldOworICAgICAgaW50IG1kY3RTaXplOworICAgICAgaW50IHN0
YW5kYXJkLCBmcmFtZXJhdGU7CisKKyAgICAgIG1kY3RTaXplID0gbW9kZS0+c2hvcnRNZGN0U2l6
ZSptb2RlLT5uYlNob3J0TWRjdHM7CisgICAgICBzdGFuZGFyZCA9IChtb2RlLT5GcyA9PSA0MDAq
KG9wdXNfaW50MzIpbW9kZS0+c2hvcnRNZGN0U2l6ZSk7CisgICAgICBmcmFtZXJhdGUgPSBtb2Rl
LT5Gcy9tb2RlLT5zaG9ydE1kY3RTaXplOworCisgICAgICBpZiAoIXN0YW5kYXJkKQorICAgICAg
eworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2lmbmRlZiBERUZfRUJBTkRTJWRfJWRcbiIsIG1v
ZGUtPkZzLCBtZGN0U2l6ZSk7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIERFRl9F
QkFORFMlZF8lZFxuIiwgbW9kZS0+RnMsIG1kY3RTaXplKTsKKyAgICAgICAgIGZwcmludGYgKGZp
bGUsICJzdGF0aWMgY29uc3Qgb3B1c19pbnQxNiBlQmFuZHMlZF8lZFslZF0gPSB7XG4iLCBtb2Rl
LT5GcywgbWRjdFNpemUsIG1vZGUtPm5iRUJhbmRzKzIpOworICAgICAgICAgZm9yIChqPTA7ajxt
b2RlLT5uYkVCYW5kcysyO2orKykKKyAgICAgICAgICAgIGZwcmludGYgKGZpbGUsICIlZCwgIiwg
bW9kZS0+ZUJhbmRzW2pdKTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xuIik7CisgICAg
ICAgICBmcHJpbnRmKGZpbGUsICIjZW5kaWZcbiIpOworICAgICAgICAgZnByaW50ZihmaWxlLCAi
XG4iKTsKKyAgICAgIH0KKworICAgICAgZnByaW50ZihmaWxlLCAiI2lmbmRlZiBERUZfV0lORE9X
JWRcbiIsIG1vZGUtPm92ZXJsYXApOworICAgICAgZnByaW50ZihmaWxlLCAiI2RlZmluZSBERUZf
V0lORE9XJWRcbiIsIG1vZGUtPm92ZXJsYXApOworICAgICAgZnByaW50ZiAoZmlsZSwgInN0YXRp
YyBjb25zdCBvcHVzX3ZhbDE2IHdpbmRvdyVkWyVkXSA9IHtcbiIsIG1vZGUtPm92ZXJsYXAsIG1v
ZGUtPm92ZXJsYXApOworICAgICAgZm9yIChqPTA7ajxtb2RlLT5vdmVybGFwO2orKykKKyAgICAg
ICAgIGZwcmludGYgKGZpbGUsIFdPUkQxNiAiLCVjIiwgbW9kZS0+d2luZG93W2pdLChqKzYpJTU9
PTA/J1xuJzonICcpOworICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgICAgIGZwcmlu
dGYoZmlsZSwgIiNlbmRpZlxuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworCisgICAg
ICBpZiAoIXN0YW5kYXJkKQorICAgICAgeworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2lmbmRl
ZiBERUZfQUxMT0NfVkVDVE9SUyVkXyVkXG4iLCBtb2RlLT5GcywgbWRjdFNpemUpOworICAgICAg
ICAgZnByaW50ZihmaWxlLCAiI2RlZmluZSBERUZfQUxMT0NfVkVDVE9SUyVkXyVkXG4iLCBtb2Rl
LT5GcywgbWRjdFNpemUpOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgInN0YXRpYyBjb25zdCB1
bnNpZ25lZCBjaGFyIGFsbG9jVmVjdG9ycyVkXyVkWyVkXSA9IHtcbiIsIG1vZGUtPkZzLCBtZGN0
U2l6ZSwgbW9kZS0+bmJFQmFuZHMqbW9kZS0+bmJBbGxvY1ZlY3RvcnMpOworICAgICAgICAgZm9y
IChqPTA7ajxtb2RlLT5uYkFsbG9jVmVjdG9ycztqKyspCisgICAgICAgICB7CisgICAgICAgICAg
ICBmb3IgKGs9MDtrPG1vZGUtPm5iRUJhbmRzO2srKykKKyAgICAgICAgICAgICAgIGZwcmludGYg
KGZpbGUsICIlMmQsICIsIG1vZGUtPmFsbG9jVmVjdG9yc1tqKm1vZGUtPm5iRUJhbmRzK2tdKTsK
KyAgICAgICAgICAgIGZwcmludGYgKGZpbGUsICJcbiIpOworICAgICAgICAgfQorICAgICAgICAg
ZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxu
Iik7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworICAgICAgfQorCisgICAgICBmcHJp
bnRmKGZpbGUsICIjaWZuZGVmIERFRl9MT0dOJWRcbiIsIGZyYW1lcmF0ZSk7CisgICAgICBmcHJp
bnRmKGZpbGUsICIjZGVmaW5lIERFRl9MT0dOJWRcbiIsIGZyYW1lcmF0ZSk7CisgICAgICBmcHJp
bnRmIChmaWxlLCAic3RhdGljIGNvbnN0IG9wdXNfaW50MTYgbG9nTiVkWyVkXSA9IHtcbiIsIGZy
YW1lcmF0ZSwgbW9kZS0+bmJFQmFuZHMpOworICAgICAgZm9yIChqPTA7ajxtb2RlLT5uYkVCYW5k
cztqKyspCisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiJWQsICIsIG1vZGUtPmxvZ05bal0pOwor
ICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRp
ZlxuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworCisgICAgICAvKiBQdWxzZSBjYWNo
ZSAqLworICAgICAgZnByaW50ZihmaWxlLCAiI2lmbmRlZiBERUZfUFVMU0VfQ0FDSEUlZFxuIiwg
bW9kZS0+RnMvbWRjdFNpemUpOworICAgICAgZnByaW50ZihmaWxlLCAiI2RlZmluZSBERUZfUFVM
U0VfQ0FDSEUlZFxuIiwgbW9kZS0+RnMvbWRjdFNpemUpOworICAgICAgZnByaW50ZiAoZmlsZSwg
InN0YXRpYyBjb25zdCBvcHVzX2ludDE2IGNhY2hlX2luZGV4JWRbJWRdID0ge1xuIiwgbW9kZS0+
RnMvbWRjdFNpemUsIChtb2RlLT5tYXhMTSsyKSptb2RlLT5uYkVCYW5kcyk7CisgICAgICBmb3Ig
KGo9MDtqPG1vZGUtPm5iRUJhbmRzKihtb2RlLT5tYXhMTSsyKTtqKyspCisgICAgICAgICBmcHJp
bnRmIChmaWxlLCAiJWQsJWMiLCBtb2RlLT5jYWNoZS5pbmRleFtqXSwoaisxNiklMTU9PTA/J1xu
JzonICcpOworICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgICAgIGZwcmludGYgKGZp
bGUsICJzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBjYWNoZV9iaXRzJWRbJWRdID0ge1xuIiwg
bW9kZS0+RnMvbWRjdFNpemUsIG1vZGUtPmNhY2hlLnNpemUpOworICAgICAgZm9yIChqPTA7ajxt
b2RlLT5jYWNoZS5zaXplO2orKykKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICIlZCwlYyIsIG1v
ZGUtPmNhY2hlLmJpdHNbal0sKGorMTYpJTE1PT0wPydcbic6JyAnKTsKKyAgICAgIGZwcmludGYg
KGZpbGUsICJ9O1xuIik7CisgICAgICBmcHJpbnRmIChmaWxlLCAic3RhdGljIGNvbnN0IHVuc2ln
bmVkIGNoYXIgY2FjaGVfY2FwcyVkWyVkXSA9IHtcbiIsIG1vZGUtPkZzL21kY3RTaXplLCAobW9k
ZS0+bWF4TE0rMSkqMiptb2RlLT5uYkVCYW5kcyk7CisgICAgICBmb3IgKGo9MDtqPChtb2RlLT5t
YXhMTSsxKSoyKm1vZGUtPm5iRUJhbmRzO2orKykKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICIl
ZCwlYyIsIG1vZGUtPmNhY2hlLmNhcHNbal0sKGorMTYpJTE1PT0wPydcbic6JyAnKTsKKyAgICAg
IGZwcmludGYgKGZpbGUsICJ9O1xuIik7CisKKyAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxu
Iik7CisgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworCisgICAgICAvKiBGRlQgdHdpZGRsZXMg
Ki8KKyAgICAgIGZwcmludGYoZmlsZSwgIiNpZm5kZWYgRkZUX1RXSURETEVTJWRfJWRcbiIsIG1v
ZGUtPkZzLCBtZGN0U2l6ZSk7CisgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIEZGVF9UV0lE
RExFUyVkXyVkXG4iLCBtb2RlLT5GcywgbWRjdFNpemUpOworICAgICAgZnByaW50ZiAoZmlsZSwg
InN0YXRpYyBjb25zdCBraXNzX3R3aWRkbGVfY3B4IGZmdF90d2lkZGxlcyVkXyVkWyVkXSA9IHtc
biIsCisgICAgICAgICAgICBtb2RlLT5GcywgbWRjdFNpemUsIG1vZGUtPm1kY3Qua2ZmdFswXS0+
bmZmdCk7CisgICAgICBmb3IgKGo9MDtqPG1vZGUtPm1kY3Qua2ZmdFswXS0+bmZmdDtqKyspCisg
ICAgICAgICBmcHJpbnRmIChmaWxlLCAieyIgV09SRDE2ICIsICIgV09SRDE2ICJ9LCVjIiwgbW9k
ZS0+bWRjdC5rZmZ0WzBdLT50d2lkZGxlc1tqXS5yLCBtb2RlLT5tZGN0LmtmZnRbMF0tPnR3aWRk
bGVzW2pdLmksKGorMyklMj09MD8nXG4nOicgJyk7CisgICAgICBmcHJpbnRmIChmaWxlLCAifTtc
biIpOworCisjaWZkZWYgT1ZFUlJJREVfRkZUCisgICAgICBkdW1wX21vZGVfYXJjaChtb2RlKTsK
KyNlbmRpZgorICAgICAgLyogRkZUIEJpdHJldiB0YWJsZXMgKi8KKyAgICAgIGZvciAoaz0wO2s8
PW1vZGUtPm1kY3QubWF4c2hpZnQ7aysrKQorICAgICAgeworICAgICAgICAgZnByaW50ZihmaWxl
LCAiI2lmbmRlZiBGRlRfQklUUkVWJWRcbiIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7Cisg
ICAgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIEZGVF9CSVRSRVYlZFxuIiwgbW9kZS0+bWRj
dC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJzdGF0aWMgY29uc3Qg
b3B1c19pbnQxNiBmZnRfYml0cmV2JWRbJWRdID0ge1xuIiwKKyAgICAgICAgICAgICAgIG1vZGUt
Pm1kY3Qua2ZmdFtrXS0+bmZmdCwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgICAg
IGZvciAoaj0wO2o8bW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0O2orKykKKyAgICAgICAgICAgIGZw
cmludGYgKGZpbGUsICIlZCwlYyIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+Yml0cmV2W2pdLChqKzE2
KSUxNT09MD8nXG4nOicgJyk7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAifTtcbiIpOworCisg
ICAgICAgICBmcHJpbnRmKGZpbGUsICIjZW5kaWZcbiIpOworICAgICAgICAgZnByaW50ZihmaWxl
LCAiXG4iKTsKKyAgICAgIH0KKworICAgICAgLyogRkZUIFN0YXRlcyAqLworICAgICAgZm9yIChr
PTA7azw9bW9kZS0+bWRjdC5tYXhzaGlmdDtrKyspCisgICAgICB7CisgICAgICAgICBmcHJpbnRm
KGZpbGUsICIjaWZuZGVmIEZGVF9TVEFURSVkXyVkXyVkXG4iLCBtb2RlLT5GcywgbWRjdFNpemUs
IGspOworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2RlZmluZSBGRlRfU1RBVEUlZF8lZF8lZFxu
IiwgbW9kZS0+RnMsIG1kY3RTaXplLCBrKTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJzdGF0
aWMgY29uc3Qga2lzc19mZnRfc3RhdGUgZmZ0X3N0YXRlJWRfJWRfJWQgPSB7XG4iLAorICAgICAg
ICAgICAgICAgbW9kZS0+RnMsIG1kY3RTaXplLCBrKTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUs
ICIlZCwgICAgLyogbmZmdCAqL1xuIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAg
ICAgIGZwcmludGYgKGZpbGUsIFdPUkQxNiAiLCAgICAvKiBzY2FsZSAqL1xuIiwgbW9kZS0+bWRj
dC5rZmZ0W2tdLT5zY2FsZSk7CisjaWZkZWYgRklYRURfUE9JTlQKKyAgICAgICAgIGZwcmludGYg
KGZpbGUsICIlZCwgICAgLyogc2NhbGVfc2hpZnQgKi9cbiIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+
c2NhbGVfc2hpZnQpOworI2VuZGlmCisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiJWQsICAgIC8q
IHNoaWZ0ICovXG4iLCBtb2RlLT5tZGN0LmtmZnRba10tPnNoaWZ0KTsKKyAgICAgICAgIGZwcmlu
dGYgKGZpbGUsICJ7Iik7CisgICAgICAgICBmb3IgKGo9MDtqPDIqTUFYRkFDVE9SUztqKyspCisg
ICAgICAgICAgICBmcHJpbnRmIChmaWxlLCAiJWQsICIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+ZmFj
dG9yc1tqXSk7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAifSwgICAgLyogZmFjdG9ycyAqL1xu
Iik7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiZmZ0X2JpdHJldiVkLCAgICAvKiBiaXRyZXYg
Ki9cbiIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7CisgICAgICAgICBmcHJpbnRmIChmaWxl
LCAiZmZ0X3R3aWRkbGVzJWRfJWQsICAgIC8qIGJpdHJldiAqL1xuIiwgbW9kZS0+RnMsIG1kY3RT
aXplKTsKKworICAgICAgICAgZnByaW50ZiAoZmlsZSwgIiNpZmRlZiBPVkVSUklERV9GRlRcbiIp
OworICAgICAgICAgZnByaW50ZiAoZmlsZSwgIihhcmNoX2ZmdF9zdGF0ZSAqKSZjZmdfYXJjaF8l
ZCxcbiIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7CisgICAgICAgICBmcHJpbnRmIChmaWxl
LCAiI2Vsc2VcbiIpOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgIk5VTEwsXG4iKTsKKyAgICAg
ICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7CisKKyAgICAgICAgIGZwcmludGYgKGZpbGUs
ICJ9O1xuIik7CisKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7CisgICAgICAg
ICBmcHJpbnRmKGZpbGUsICJcbiIpOworICAgICAgfQorCisgICAgICBmcHJpbnRmKGZpbGUsICIj
ZW5kaWZcbiIpOworICAgICAgZnByaW50ZihmaWxlLCAiXG4iKTsKKworICAgICAgLyogTURDVCB0
d2lkZGxlcyAqLworICAgICAgbWRjdF90d2lkZGxlc19zaXplID0gbW9kZS0+bWRjdC5uLShtb2Rl
LT5tZGN0Lm4vMj4+bW9kZS0+bWRjdC5tYXhzaGlmdCk7CisgICAgICBmcHJpbnRmKGZpbGUsICIj
aWZuZGVmIE1EQ1RfVFdJRERMRVMlZFxuIiwgbWRjdFNpemUpOworICAgICAgZnByaW50ZihmaWxl
LCAiI2RlZmluZSBNRENUX1RXSURETEVTJWRcbiIsIG1kY3RTaXplKTsKKyAgICAgIGZwcmludGYg
KGZpbGUsICJzdGF0aWMgY29uc3Qgb3B1c192YWwxNiBtZGN0X3R3aWRkbGVzJWRbJWRdID0ge1xu
IiwKKyAgICAgICAgICAgIG1kY3RTaXplLCBtZGN0X3R3aWRkbGVzX3NpemUpOworICAgICAgZm9y
IChqPTA7ajxtZGN0X3R3aWRkbGVzX3NpemU7aisrKQorICAgICAgICAgZnByaW50ZiAoZmlsZSwg
V09SRDE2ICIsJWMiLCBtb2RlLT5tZGN0LnRyaWdbal0sKGorNiklNT09MD8nXG4nOicgJyk7Cisg
ICAgICBmcHJpbnRmIChmaWxlLCAifTtcbiIpOworCisgICAgICBmcHJpbnRmKGZpbGUsICIjZW5k
aWZcbiIpOworICAgICAgZnByaW50ZihmaWxlLCAiXG4iKTsKKworCisgICAgICAvKiBQcmludCB0
aGUgYWN0dWFsIG1vZGUgZGF0YSAqLworICAgICAgZnByaW50ZihmaWxlLCAic3RhdGljIGNvbnN0
IENFTFRNb2RlIG1vZGUlZF8lZF8lZCA9IHtcbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSwgbW9kZS0+
b3ZlcmxhcCk7CisgICAgICBmcHJpbnRmKGZpbGUsIElOVDMyICIsICAgIC8qIEZzICovXG4iLCBt
b2RlLT5Gcyk7CisgICAgICBmcHJpbnRmKGZpbGUsICIlZCwgICAgLyogb3ZlcmxhcCAqL1xuIiwg
bW9kZS0+b3ZlcmxhcCk7CisgICAgICBmcHJpbnRmKGZpbGUsICIlZCwgICAgLyogbmJFQmFuZHMg
Ki9cbiIsIG1vZGUtPm5iRUJhbmRzKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiVkLCAgICAvKiBl
ZmZFQmFuZHMgKi9cbiIsIG1vZGUtPmVmZkVCYW5kcyk7CisgICAgICBmcHJpbnRmKGZpbGUsICJ7
Iik7CisgICAgICBmb3IgKGo9MDtqPDQ7aisrKQorICAgICAgICAgZnByaW50ZihmaWxlLCBXT1JE
MTYgIiwgIiwgbW9kZS0+cHJlZW1waFtqXSk7CisgICAgICBmcHJpbnRmKGZpbGUsICJ9LCAgICAv
KiBwcmVlbXBoICovXG4iKTsKKyAgICAgIGlmIChzdGFuZGFyZCkKKyAgICAgICAgIGZwcmludGYo
ZmlsZSwgImViYW5kNW1zLCAgICAvKiBlQmFuZHMgKi9cbiIpOworICAgICAgZWxzZQorICAgICAg
ICAgZnByaW50ZihmaWxlLCAiZUJhbmRzJWRfJWQsICAgIC8qIGVCYW5kcyAqL1xuIiwgbW9kZS0+
RnMsIG1kY3RTaXplKTsKKworICAgICAgZnByaW50ZihmaWxlLCAiJWQsICAgIC8qIG1heExNICov
XG4iLCBtb2RlLT5tYXhMTSk7CisgICAgICBmcHJpbnRmKGZpbGUsICIlZCwgICAgLyogbmJTaG9y
dE1kY3RzICovXG4iLCBtb2RlLT5uYlNob3J0TWRjdHMpOworICAgICAgZnByaW50ZihmaWxlLCAi
JWQsICAgIC8qIHNob3J0TWRjdFNpemUgKi9cbiIsIG1vZGUtPnNob3J0TWRjdFNpemUpOworCisg
ICAgICBmcHJpbnRmKGZpbGUsICIlZCwgICAgLyogbmJBbGxvY1ZlY3RvcnMgKi9cbiIsIG1vZGUt
Pm5iQWxsb2NWZWN0b3JzKTsKKyAgICAgIGlmIChzdGFuZGFyZCkKKyAgICAgICAgIGZwcmludGYo
ZmlsZSwgImJhbmRfYWxsb2NhdGlvbiwgICAgLyogYWxsb2NWZWN0b3JzICovXG4iKTsKKyAgICAg
IGVsc2UKKyAgICAgICAgIGZwcmludGYoZmlsZSwgImFsbG9jVmVjdG9ycyVkXyVkLCAgICAvKiBh
bGxvY1ZlY3RvcnMgKi9cbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7CisKKyAgICAgIGZwcmludGYo
ZmlsZSwgImxvZ04lZCwgICAgLyogbG9nTiAqL1xuIiwgZnJhbWVyYXRlKTsKKyAgICAgIGZwcmlu
dGYoZmlsZSwgIndpbmRvdyVkLCAgICAvKiB3aW5kb3cgKi9cbiIsIG1vZGUtPm92ZXJsYXApOwor
ICAgICAgZnByaW50ZihmaWxlLCAieyVkLCAlZCwgeyIsIG1vZGUtPm1kY3QubiwgbW9kZS0+bWRj
dC5tYXhzaGlmdCk7CisgICAgICBmb3IgKGs9MDtrPD1tb2RlLT5tZGN0Lm1heHNoaWZ0O2srKykK
KyAgICAgICAgIGZwcmludGYoZmlsZSwgIiZmZnRfc3RhdGUlZF8lZF8lZCwgIiwgbW9kZS0+RnMs
IG1kY3RTaXplLCBrKTsKKyAgICAgIGZwcmludGYgKGZpbGUsICJ9LCBtZGN0X3R3aWRkbGVzJWR9
LCAgICAvKiBtZGN0ICovXG4iLCBtZGN0U2l6ZSk7CisKKyAgICAgIGZwcmludGYoZmlsZSwgInsl
ZCwgY2FjaGVfaW5kZXglZCwgY2FjaGVfYml0cyVkLCBjYWNoZV9jYXBzJWR9LCAgICAvKiBjYWNo
ZSAqL1xuIiwKKyAgICAgICAgICAgIG1vZGUtPmNhY2hlLnNpemUsIG1vZGUtPkZzL21kY3RTaXpl
LCBtb2RlLT5Gcy9tZGN0U2l6ZSwgbW9kZS0+RnMvbWRjdFNpemUpOworICAgICAgZnByaW50Zihm
aWxlLCAifTtcbiIpOworICAgfQorICAgZnByaW50ZihmaWxlLCAiXG4iKTsKKyAgIGZwcmludGYo
ZmlsZSwgIi8qIExpc3Qgb2YgYWxsIHRoZSBhdmFpbGFibGUgbW9kZXMgKi9cbiIpOworICAgZnBy
aW50ZihmaWxlLCAiI2RlZmluZSBUT1RBTF9NT0RFUyAlZFxuIiwgbmJfbW9kZXMpOworICAgZnBy
aW50ZihmaWxlLCAic3RhdGljIGNvbnN0IENFTFRNb2RlICogY29uc3Qgc3RhdGljX21vZGVfbGlz
dFtUT1RBTF9NT0RFU10gPSB7XG4iKTsKKyAgIGZvciAoaT0wO2k8bmJfbW9kZXM7aSsrKQorICAg
eworICAgICAgQ0VMVE1vZGUgKm1vZGUgPSBtb2Rlc1tpXTsKKyAgICAgIGludCBtZGN0U2l6ZTsK
KyAgICAgIG1kY3RTaXplID0gbW9kZS0+c2hvcnRNZGN0U2l6ZSptb2RlLT5uYlNob3J0TWRjdHM7
CisgICAgICBmcHJpbnRmKGZpbGUsICImbW9kZSVkXyVkXyVkLFxuIiwgbW9kZS0+RnMsIG1kY3RT
aXplLCBtb2RlLT5vdmVybGFwKTsKKyAgIH0KKyAgIGZwcmludGYoZmlsZSwgIn07XG4iKTsKK30K
Kwordm9pZCBkdW1wX2hlYWRlcihGSUxFICpmaWxlLCBDRUxUTW9kZSAqKm1vZGVzLCBpbnQgbmJf
bW9kZXMpCit7CisgICBpbnQgaTsKKyAgIGludCBjaGFubmVscyA9IDA7CisgICBpbnQgZnJhbWVf
c2l6ZSA9IDA7CisgICBpbnQgb3ZlcmxhcCA9IDA7CisgICBmcHJpbnRmIChmaWxlLCAiLyogVGhp
cyBoZWFkZXIgZmlsZSBpcyBnZW5lcmF0ZWQgYXV0b21hdGljYWxseSovXG4iKTsKKyAgIGZvciAo
aT0wO2k8bmJfbW9kZXM7aSsrKQorICAgeworICAgICAgQ0VMVE1vZGUgKm1vZGUgPSBtb2Rlc1tp
XTsKKyAgICAgIGlmIChmcmFtZV9zaXplPT0wKQorICAgICAgICAgZnJhbWVfc2l6ZSA9IG1vZGUt
PnNob3J0TWRjdFNpemUqbW9kZS0+bmJTaG9ydE1kY3RzOworICAgICAgZWxzZSBpZiAoZnJhbWVf
c2l6ZSAhPSBtb2RlLT5zaG9ydE1kY3RTaXplKm1vZGUtPm5iU2hvcnRNZGN0cykKKyAgICAgICAg
IGZyYW1lX3NpemUgPSAtMTsKKyAgICAgIGlmIChvdmVybGFwPT0wKQorICAgICAgICAgb3Zlcmxh
cCA9IG1vZGUtPm92ZXJsYXA7CisgICAgICBlbHNlIGlmIChvdmVybGFwICE9IG1vZGUtPm92ZXJs
YXApCisgICAgICAgICBvdmVybGFwID0gLTE7CisgICB9CisgICBpZiAoY2hhbm5lbHM+MCkKKyAg
IHsKKyAgICAgIGZwcmludGYgKGZpbGUsICIjZGVmaW5lIENIQU5ORUxTKG1vZGUpICVkXG4iLCBj
aGFubmVscyk7CisgICAgICBpZiAoY2hhbm5lbHM9PTEpCisgICAgICAgICBmcHJpbnRmIChmaWxl
LCAiI2RlZmluZSBESVNBQkxFX1NURVJFT1xuIik7CisgICB9CisgICBpZiAoZnJhbWVfc2l6ZT4w
KQorICAgeworICAgICAgZnByaW50ZiAoZmlsZSwgIiNkZWZpbmUgRlJBTUVTSVpFKG1vZGUpICVk
XG4iLCBmcmFtZV9zaXplKTsKKyAgIH0KKyAgIGlmIChvdmVybGFwPjApCisgICB7CisgICAgICBm
cHJpbnRmIChmaWxlLCAiI2RlZmluZSBPVkVSTEFQKG1vZGUpICVkXG4iLCBvdmVybGFwKTsKKyAg
IH0KK30KKworI2lmZGVmIEZJWEVEX1BPSU5UCisjZGVmaW5lIEJBU0VOQU1FICJzdGF0aWNfbW9k
ZXNfZml4ZWQiCisjZWxzZQorI2RlZmluZSBCQVNFTkFNRSAic3RhdGljX21vZGVzX2Zsb2F0Igor
I2VuZGlmCisKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKK3sKKyAgIGludCBpLCBu
YjsKKyAgIEZJTEUgKmZpbGU7CisgICBDRUxUTW9kZSAqKm07CisgICBpZiAoYXJnYyUyICE9IDEg
fHwgYXJnYzwzKQorICAgeworICAgICAgZnByaW50ZiAoc3RkZXJyLCAiVXNhZ2U6ICVzIHJhdGUg
ZnJhbWVfc2l6ZSBbcmF0ZSBmcmFtZV9zaXplXSBbcmF0ZSBmcmFtZV9zaXplXS4uLlxuIixhcmd2
WzBdKTsKKyAgICAgIHJldHVybiAxOworICAgfQorICAgbmIgPSAoYXJnYy0xKS8yOworICAgbSA9
IG1hbGxvYyhuYipzaXplb2YoQ0VMVE1vZGUqKSk7CisgICBmb3IgKGk9MDtpPG5iO2krKykKKyAg
IHsKKyAgICAgIGludCBGcywgZnJhbWU7CisgICAgICBGcyAgICAgID0gYXRvaShhcmd2WzIqaSsx
XSk7CisgICAgICBmcmFtZSAgID0gYXRvaShhcmd2WzIqaSsyXSk7CisgICAgICBtW2ldID0gb3B1
c19jdXN0b21fbW9kZV9jcmVhdGUoRnMsIGZyYW1lLCBOVUxMKTsKKyAgICAgIGlmIChtW2ldPT1O
VUxMKQorICAgICAgeworICAgICAgICAgZnByaW50ZihzdGRlcnIsIkVycm9yIGNyZWF0aW5nIG1v
ZGUgd2l0aCBGcz0lcywgZnJhbWVfc2l6ZT0lc1xuIiwKKyAgICAgICAgICAgICAgIGFyZ3ZbMipp
KzFdLGFyZ3ZbMippKzJdKTsKKyAgICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CisgICAgICB9
CisgICB9CisgICBmaWxlID0gZm9wZW4oQkFTRU5BTUUgIi5oIiwgInciKTsKKyNpZmRlZiBPVkVS
UklERV9GRlQKKyAgIGR1bXBfbW9kZXNfYXJjaF9pbml0KG0sIG5iKTsKKyNlbmRpZgorICAgZHVt
cF9tb2RlcyhmaWxlLCBtLCBuYik7CisgICBmY2xvc2UoZmlsZSk7CisjaWZkZWYgT1ZFUlJJREVf
RkZUCisgICBkdW1wX21vZGVzX2FyY2hfZmluYWxpemUoKTsKKyNlbmRpZgorICAgZm9yIChpPTA7
aTxuYjtpKyspCisgICAgICBvcHVzX2N1c3RvbV9tb2RlX2Rlc3Ryb3kobVtpXSk7CisgICBmcmVl
KG0pOworICAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21v
ZGVzX2FyY2guaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY2VsdC9kdW1wX21vZGVzL2R1bXBfbW9kZXNfYXJjaC5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmNjMGQ0YmUxZWM3MzA4ZGFjZDg1M2Y2NTIxOTQ2NTgyMGVjNzFjMTQKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVzX2FyY2guaApAQCAtMCwwICsxLDQ1IEBACisv
KiBDb3B5cmlnaHQgKGMpIDIwMTUgWGlwaC5PcmcgRm91bmRhdGlvbgorICAgV3JpdHRlbiBieSBW
aXN3YW5hdGggUHV0dGFndW50YSAqLworLyoKKyAgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICAgbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
ICBhcmUgbWV0OgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgIC0gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAgIGBgQVMgSVMnJyBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QK
KyAgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUgorICAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyAgIE9SIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORworICAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpZm5kZWYgRFVNUF9NT0RFX0FS
Q0hfSAorI2RlZmluZSBEVU1QX01PREVfQVJDSF9ICisKK3ZvaWQgZHVtcF9tb2Rlc19hcmNoX2lu
aXQoKTsKK3ZvaWQgZHVtcF9tb2RlX2FyY2goQ0VMVE1vZGUgKm1vZGUpOwordm9pZCBkdW1wX21v
ZGVzX2FyY2hfZmluYWxpemUoKTsKKworI2lmICFkZWZpbmVkKEZJWEVEX1BPSU5UKQorI2RlZmlu
ZSBBUk1fTkUxMF9BUkNIX0ZJTEVfTkFNRSAic3RhdGljX21vZGVzX2Zsb2F0X2FybV9uZTEwLmgi
CisjZWxzZQorI2RlZmluZSBBUk1fTkUxMF9BUkNIX0ZJTEVfTkFNRSAic3RhdGljX21vZGVzX2Zp
eGVkX2FybV9uZTEwLmgiCisjZW5kaWYKKworI2lmIGRlZmluZWQoSEFWRV9BUk1fTkUxMCkKKyNk
ZWZpbmUgT1ZFUlJJREVfRkZUICgxKQorI2VuZGlmCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L2R1bXBfbW9kZXMvZHVtcF9tb2Rlc19hcm1fbmUxMC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2R1bXBfbW9kZXMvZHVtcF9t
b2Rlc19hcm1fbmUxMC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyOGU3YjlmZmYzMWY4MWJkNzYxNjk1YTI0Nzky
NmRmMDU2YTQxYWYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVz
X2FybV9uZTEwLmMKQEAgLTAsMCArMSwxNTIgQEAKKy8qIENvcHlyaWdodCAoYykgMjAxNSBYaXBo
Lk9yZyBGb3VuZGF0aW9uCisgICBXcml0dGVuIGJ5IFZpc3dhbmF0aCBQdXR0YWd1bnRhICovCisv
KgorICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICAgTElNSVRFRCBUTywgVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAg
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorKi8KKworI2lmIGRlZmluZWQoSEFWRV9DT05GSUdfSCkKKyMgaW5jbHVkZSAiY29uZmln
LmgiCisjZW5kaWYKKworI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+Cisj
aW5jbHVkZSAibW9kZXMuaCIKKyNpbmNsdWRlICJkdW1wX21vZGVzX2FyY2guaCIKKyNpbmNsdWRl
IDxORTEwX2RzcC5oPgorCisjaWYgIWRlZmluZWQoRklYRURfUE9JTlQpCisjIGRlZmluZSBORTEw
X0ZGVF9DRkdfVFlQRV9UIG5lMTBfZmZ0X2NmZ19mbG9hdDMyX3QKKyMgZGVmaW5lIE5FMTBfRkZU
X0NQWF9UWVBFX1RfU1RSICJuZTEwX2ZmdF9jcHhfZmxvYXQzMl90IgorIyBkZWZpbmUgTkUxMF9G
RlRfU1RBVEVfVFlQRV9UX1NUUiAibmUxMF9mZnRfc3RhdGVfZmxvYXQzMl90IgorI2Vsc2UKKyMg
ZGVmaW5lIE5FMTBfRkZUX0NGR19UWVBFX1QgbmUxMF9mZnRfY2ZnX2ludDMyX3QKKyMgZGVmaW5l
IE5FMTBfRkZUX0NQWF9UWVBFX1RfU1RSICJuZTEwX2ZmdF9jcHhfaW50MzJfdCIKKyMgZGVmaW5l
IE5FMTBfRkZUX1NUQVRFX1RZUEVfVF9TVFIgIm5lMTBfZmZ0X3N0YXRlX2ludDMyX3QiCisjZW5k
aWYKKworc3RhdGljIEZJTEUgKmZpbGU7CisKK3ZvaWQgZHVtcF9tb2Rlc19hcmNoX2luaXQoQ0VM
VE1vZGUgKiptb2RlcywgaW50IG5iX21vZGVzKQoreworICAgaW50IGk7CisKKyAgIGZpbGUgPSBm
b3BlbihBUk1fTkUxMF9BUkNIX0ZJTEVfTkFNRSwgInciKTsKKyAgIGZwcmludGYoZmlsZSwgIi8q
IFRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5
XG4iKTsKKyAgIGZwcmludGYoZmlsZSwgIiAqIGR1bXBfbW9kZV9hcm1fbmUxMC5jIHdpdGggYXJn
dW1lbnRzOiIpOworICAgZm9yIChpPTA7aTxuYl9tb2RlcztpKyspCisgICB7CisgICAgICBDRUxU
TW9kZSAqbW9kZSA9IG1vZGVzW2ldOworICAgICAgZnByaW50ZihmaWxlLCAiICVkICVkIixtb2Rl
LT5Gcyxtb2RlLT5zaG9ydE1kY3RTaXplKm1vZGUtPm5iU2hvcnRNZGN0cyk7CisgICB9CisgICBm
cHJpbnRmKGZpbGUsICJcbiAqIEl0IGNvbnRhaW5zIHN0YXRpYyBkZWZpbml0aW9ucyBmb3Igc29t
ZSBwcmUtZGVmaW5lZCBtb2Rlcy4gKi9cbiIpOworICAgZnByaW50ZihmaWxlLCAiI2luY2x1ZGUg
PE5FMTBfdHlwZXMuaD5cblxuIik7Cit9CisKK3ZvaWQgZHVtcF9tb2Rlc19hcmNoX2ZpbmFsaXpl
KCkKK3sKKyAgIGZjbG9zZShmaWxlKTsKK30KKwordm9pZCBkdW1wX21vZGVfYXJjaChDRUxUTW9k
ZSAqbW9kZSkKK3sKKyAgIGludCBrLCBqOworICAgaW50IG1kY3RTaXplOworCisgICBtZGN0U2l6
ZSA9IG1vZGUtPnNob3J0TWRjdFNpemUqbW9kZS0+bmJTaG9ydE1kY3RzOworCisgICBmcHJpbnRm
KGZpbGUsICIjaWZuZGVmIE5FMTBfRkZUX1BBUkFNUyVkXyVkXG4iLCBtb2RlLT5GcywgbWRjdFNp
emUpOworICAgZnByaW50ZihmaWxlLCAiI2RlZmluZSBORTEwX0ZGVF9QQVJBTVMlZF8lZFxuIiwg
bW9kZS0+RnMsIG1kY3RTaXplKTsKKyAgIC8qIGNmZy0+ZmFjdG9ycyAqLworICAgZm9yKGs9MDtr
PD1tb2RlLT5tZGN0Lm1heHNoaWZ0O2srKykgeworICAgICAgTkUxMF9GRlRfQ0ZHX1RZUEVfVCBj
Zmc7CisgICAgICBjZmcgPSAoTkUxMF9GRlRfQ0ZHX1RZUEVfVCltb2RlLT5tZGN0LmtmZnRba10t
PmFyY2hfZmZ0LT5wcml2OworICAgICAgaWYgKCFjZmcpCisgICAgICAgICBjb250aW51ZTsKKyAg
ICAgIGZwcmludGYoZmlsZSwgInN0YXRpYyBjb25zdCBuZTEwX2ludDMyX3QgbmUxMF9mYWN0b3Jz
XyVkWyVkXSA9IHtcbiIsCisgICAgICAgICAgICAgIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCwg
KE5FMTBfTUFYRkFDVE9SUyAqIDIpKTsKKyAgICAgIGZvcihqPTA7ajwoTkUxMF9NQVhGQUNUT1JT
ICogMik7aisrKSB7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIlZCwlYyIsIGNmZy0+ZmFjdG9y
c1tqXSwoaisxNiklMTU9PTA/J1xuJzonICcpOworICAgICAgfQorICAgICAgZnByaW50ZiAoZmls
ZSwgIn07XG4iKTsKKyAgIH0KKworICAgLyogY2ZnLT50d2lkZGxlcyAqLworICAgZm9yKGs9MDtr
PD1tb2RlLT5tZGN0Lm1heHNoaWZ0O2srKykgeworICAgICAgTkUxMF9GRlRfQ0ZHX1RZUEVfVCBj
Zmc7CisgICAgICBjZmcgPSAoTkUxMF9GRlRfQ0ZHX1RZUEVfVCltb2RlLT5tZGN0LmtmZnRba10t
PmFyY2hfZmZ0LT5wcml2OworICAgICAgaWYgKCFjZmcpCisgICAgICAgICBjb250aW51ZTsKKyAg
ICAgIGZwcmludGYoZmlsZSwgInN0YXRpYyBjb25zdCAlcyBuZTEwX3R3aWRkbGVzXyVkWyVkXSA9
IHtcbiIsCisgICAgICAgICAgICAgIE5FMTBfRkZUX0NQWF9UWVBFX1RfU1RSLCBtb2RlLT5tZGN0
LmtmZnRba10tPm5mZnQsCisgICAgICAgICAgICAgIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7
CisgICAgICBmb3Ioaj0wO2o8bW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0O2orKykgeworI2lmICFk
ZWZpbmVkKEZJWEVEX1BPSU5UKQorICAgICAgICAgZnByaW50ZihmaWxlLCAieyUjMC44Z2YsJSMw
LjhnZn0sJWMiLAorICAgICAgICAgICAgICAgICBjZmctPnR3aWRkbGVzW2pdLnIsIGNmZy0+dHdp
ZGRsZXNbal0uaSwoais0KSUzPT0wPydcbic6JyAnKTsKKyNlbHNlCisgICAgICAgICBmcHJpbnRm
KGZpbGUsICJ7JWQsJWR9LCVjIiwKKyAgICAgICAgICAgICAgICAgY2ZnLT50d2lkZGxlc1tqXS5y
LCBjZmctPnR3aWRkbGVzW2pdLmksKGorNCklMz09MD8nXG4nOicgJyk7CisjZW5kaWYKKyAgICAg
IH0KKyAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xuIik7CisgICB9CisKKyAgIGZvcihrPTA7azw9
bW9kZS0+bWRjdC5tYXhzaGlmdDtrKyspIHsKKyAgICAgIE5FMTBfRkZUX0NGR19UWVBFX1QgY2Zn
OworICAgICAgY2ZnID0gKE5FMTBfRkZUX0NGR19UWVBFX1QpbW9kZS0+bWRjdC5rZmZ0W2tdLT5h
cmNoX2ZmdC0+cHJpdjsKKyAgICAgIGlmICghY2ZnKSB7CisgICAgICAgICBmcHJpbnRmKGZpbGUs
ICIvKiBOZTEwIGRvZXMgbm90IHN1cHBvcnQgc2NhbGVkIEZGVCBmb3IgbGVuZ3RoID0gJWQgKi9c
biIsCisgICAgICAgICAgICAgICAgIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7CisgICAgICAg
ICBmcHJpbnRmKGZpbGUsICJzdGF0aWMgY29uc3QgYXJjaF9mZnRfc3RhdGUgY2ZnX2FyY2hfJWQg
PSB7XG4iLCBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQpOworICAgICAgICAgZnByaW50ZihmaWxl
LCAiMCxcbiIpOworICAgICAgICAgZnByaW50ZihmaWxlLCAiTlVMTFxuIik7CisgICAgICAgICBm
cHJpbnRmKGZpbGUsICJ9O1xuIik7CisgICAgICAgICBjb250aW51ZTsKKyAgICAgIH0KKyAgICAg
IGZwcmludGYoZmlsZSwgInN0YXRpYyBjb25zdCAlcyAlc18lZCA9IHtcbiIsIE5FMTBfRkZUX1NU
QVRFX1RZUEVfVF9TVFIsCisgICAgICAgICAgICAgIE5FMTBfRkZUX1NUQVRFX1RZUEVfVF9TVFIs
IG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7CisgICAgICBmcHJpbnRmKGZpbGUsICIlZCxcbiIs
IGNmZy0+bmZmdCk7CisgICAgICBmcHJpbnRmKGZpbGUsICIobmUxMF9pbnQzMl90ICopbmUxMF9m
YWN0b3JzXyVkLFxuIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgIGZwcmludGYo
ZmlsZSwgIiglcyAqKW5lMTBfdHdpZGRsZXNfJWQsXG4iLAorICAgICAgICAgICAgICBORTEwX0ZG
VF9DUFhfVFlQRV9UX1NUUiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgIGZwcmlu
dGYoZmlsZSwgIk5VTEwsXG4iKTsgIC8qIGJ1ZmZlciAqLworICAgICAgZnByaW50ZihmaWxlLCAi
KCVzICopJm5lMTBfdHdpZGRsZXNfJWRbJWRdLFxuIiwKKyAgICAgICAgICAgICAgTkUxMF9GRlRf
Q1BYX1RZUEVfVF9TVFIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCwgY2ZnLT5uZmZ0KTsKKyNp
ZiAhZGVmaW5lZChGSVhFRF9QT0lOVCkKKyAgICAgIGZwcmludGYoZmlsZSwgIi8qIGlzX2Zvcndh
cmRfc2NhbGVkID0gdHJ1ZSAqL1xuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICIobmUxMF9pbnQz
Ml90KSAxLFxuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICIvKiBpc19iYWNrd2FyZF9zY2FsZWQg
PSBmYWxzZSAqL1xuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICIobmUxMF9pbnQzMl90KSAwLFxu
Iik7CisjZW5kaWYKKyAgICAgIGZwcmludGYoZmlsZSwgIn07XG4iKTsKKworICAgICAgZnByaW50
ZihmaWxlLCAic3RhdGljIGNvbnN0IGFyY2hfZmZ0X3N0YXRlIGNmZ19hcmNoXyVkID0ge1xuIiwK
KyAgICAgICAgICAgICAgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgIGZwcmludGYo
ZmlsZSwgIjEsXG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIih2b2lkICopJiVzXyVkLFxuIiwK
KyAgICAgICAgICAgICAgTkUxMF9GRlRfU1RBVEVfVFlQRV9UX1NUUiwgbW9kZS0+bWRjdC5rZmZ0
W2tdLT5uZmZ0KTsKKyAgICAgIGZwcmludGYoZmlsZSwgIn07XG5cbiIpOworICAgfQorICAgZnBy
aW50ZihmaWxlLCAiI2VuZGlmICAvKiBlbmQgTkUxMF9GRlRfUEFSQU1TJWRfJWQgKi9cbiIsIG1v
ZGUtPkZzLCBtZGN0U2l6ZSk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfYzV4LmggYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
Zml4ZWRfYzV4LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWE5NWE5OThjM2MzZjg3OWUxMGNjZDcyZWZmMjAwZDFj
ZWNlOTcyMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9jNXguaApAQCAtMCwwICsxLDc5
IEBACisvKiBDb3B5cmlnaHQgKEMpIDIwMDMgSmVhbi1NYXJjIFZhbGluICovCisvKioKKyAgIEBm
aWxlIGZpeGVkX2M1eC5oCisgICBAYnJpZWYgRml4ZWQtcG9pbnQgb3BlcmF0aW9ucyBmb3IgdGhl
IFRJIEM1eCBEU1AgZmFtaWx5CisqLworLyoKKyAgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICAgbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
ICBhcmUgbWV0OgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgIC0gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAgIGBgQVMgSVMnJyBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QK
KyAgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUgorICAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyAgIE9SIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORworICAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpZm5kZWYgRklYRURfQzVYX0gK
KyNkZWZpbmUgRklYRURfQzVYX0gKKworI2luY2x1ZGUgImRzcGxpYi5oIgorCisjdW5kZWYgSU1V
TDMyCitzdGF0aWMgT1BVU19JTkxJTkUgbG9uZyBJTVVMMzIobG9uZyBpLCBsb25nIGopCit7Cisg
ICBsb25nIGFjMCwgYWMxOworICAgYWMwID0gX2xtcHkoaT4+MTYsaik7CisgICBhYzEgPSBhYzAg
KyBfbG1weShpLGo+PjE2KTsKKyAgIHJldHVybiBfbG1weXUoaSxqKSArIChhYzE8PDE2KTsKK30K
KworI3VuZGVmIE1BWDE2CisjZGVmaW5lIE1BWDE2KGEsYikgX21heChhLGIpCisKKyN1bmRlZiBN
SU4xNgorI2RlZmluZSBNSU4xNihhLGIpIF9taW4oYSxiKQorCisjdW5kZWYgTUFYMzIKKyNkZWZp
bmUgTUFYMzIoYSxiKSBfbG1heChhLGIpCisKKyN1bmRlZiBNSU4zMgorI2RlZmluZSBNSU4zMihh
LGIpIF9sbWluKGEsYikKKworI3VuZGVmIFZTSFIzMgorI2RlZmluZSBWU0hSMzIoYSwgc2hpZnQp
IF9sc2hsKGEsLShzaGlmdCkpCisKKyN1bmRlZiBNVUxUMTZfMTZfUTE1CisjZGVmaW5lIE1VTFQx
Nl8xNl9RMTUoYSxiKSAoX3NtcHkoYSxiKSkKKworI3VuZGVmIE1VTFQxNl8xNlNVCisjZGVmaW5l
IE1VTFQxNl8xNlNVKGEsYikgX2xtcHlzdShhLGIpCisKKyN1bmRlZiBNVUxUXzE2XzE2CisjZGVm
aW5lIE1VTFRfMTZfMTYoYSxiKSBfbG1weShhLGIpCisKKy8qIEZJWE1FOiBUaGlzIGlzIHRlY2hu
aWNhbGx5IGluY29ycmVjdCBhbmQgaXMgYm91bmQgdG8gY2F1c2UgcHJvYmxlbXMuIElzIHRoZXJl
IGFueSBjbGVhbmVyIHNvbHV0aW9uPyAqLworI3VuZGVmIE1VTFQxNl8zMl9RMTUKKyNkZWZpbmUg
TVVMVDE2XzMyX1ExNShhLGIpIEFERDMyKFNITChNVUxUMTZfMTYoKGEpLFNIUigoYiksMTYpKSwx
KSwgU0hSKE1VTFQxNl8xNlNVKChhKSwoYikpLDE1KSkKKworI2RlZmluZSBjZWx0X2lsb2cyKHgp
ICgzMCAtIF9sbm9ybSh4KSkKKyNkZWZpbmUgT1ZFUlJJREVfQ0VMVF9JTE9HMgorCisjZGVmaW5l
IGNlbHRfbWF4YWJzMTYoeCwgbGVuKSBNQVgzMihFWFRFTkQzMihtYXh2YWwoKERBVEEgKil4LCBs
ZW4pKSwtRVhURU5EMzIobWludmFsKChEQVRBICopeCwgbGVuKSkpCisjZGVmaW5lIE9WRVJSSURF
X0NFTFRfTUFYQUJTMTYKKworI2VuZGlmIC8qIEZJWEVEX0M1WF9IICovCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvZml4ZWRfYzZ4LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfYzZ4LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmI2YWQ5Mjc4MDNm
OWZhYmMxNTVlMTBiZDdkYTg0NWZjZTJlOGNlOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhl
ZF9jNnguaApAQCAtMCwwICsxLDcwIEBACisvKiBDb3B5cmlnaHQgKEMpIDIwMDggQ1NJUk8gKi8K
Ky8qKgorICAgQGZpbGUgZml4ZWRfYzZ4LmgKKyAgIEBicmllZiBGaXhlZC1wb2ludCBvcGVyYXRp
b25zIGZvciB0aGUgVEkgQzZ4IERTUCBmYW1pbHkKKyovCisvKgorICAgUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAg
YGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVAorICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1Ig
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lmbmRlZiBG
SVhFRF9DNlhfSAorI2RlZmluZSBGSVhFRF9DNlhfSAorCisjdW5kZWYgTVVMVDE2XzE2U1UKKyNk
ZWZpbmUgTVVMVDE2XzE2U1UoYSxiKSBfbXB5c3UoYSxiKQorCisjdW5kZWYgTVVMVF8xNl8xNgor
I2RlZmluZSBNVUxUXzE2XzE2KGEsYikgX21weShhLGIpCisKKyNkZWZpbmUgY2VsdF9pbG9nMih4
KSAoMzAgLSBfbm9ybSh4KSkKKyNkZWZpbmUgT1ZFUlJJREVfQ0VMVF9JTE9HMgorCisjdW5kZWYg
TVVMVDE2XzMyX1ExNQorI2RlZmluZSBNVUxUMTZfMzJfUTE1KGEsYikgKF9tcHlsaWxsKGEsIGIp
ID4+IDE1KQorCisjaWYgMAorI2luY2x1ZGUgImRzcGxpYi5oIgorCisjdW5kZWYgTUFYMTYKKyNk
ZWZpbmUgTUFYMTYoYSxiKSBfbWF4KGEsYikKKworI3VuZGVmIE1JTjE2CisjZGVmaW5lIE1JTjE2
KGEsYikgX21pbihhLGIpCisKKyN1bmRlZiBNQVgzMgorI2RlZmluZSBNQVgzMihhLGIpIF9sbWF4
KGEsYikKKworI3VuZGVmIE1JTjMyCisjZGVmaW5lIE1JTjMyKGEsYikgX2xtaW4oYSxiKQorCisj
dW5kZWYgVlNIUjMyCisjZGVmaW5lIFZTSFIzMihhLCBzaGlmdCkgX2xzaGwoYSwtKHNoaWZ0KSkK
KworI3VuZGVmIE1VTFQxNl8xNl9RMTUKKyNkZWZpbmUgTVVMVDE2XzE2X1ExNShhLGIpIChfc21w
eShhLGIpKQorCisjZGVmaW5lIGNlbHRfbWF4YWJzMTYoeCwgbGVuKSBNQVgzMihFWFRFTkQzMiht
YXh2YWwoKERBVEEgKil4LCBsZW4pKSwtRVhURU5EMzIobWludmFsKChEQVRBICopeCwgbGVuKSkp
CisjZGVmaW5lIE9WRVJSSURFX0NFTFRfTUFYQUJTMTYKKworI2VuZGlmIC8qIEZJWEVEX0M2WF9I
ICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfZGVidWcuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9kZWJ1Zy5oCmlu
ZGV4IGQyODIyN2Y1ZGM3Mjg3OWNlZDk0NGQ4YjVkYjg4ODBiYTM0NjVmMDMuLmY0MzUyOTUyMzRj
ZmZiNTNjYjA1NGZjZGQwY2EwODg1Zjc4NmQwZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9kZWJ1
Zy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9maXhlZF9kZWJ1Zy5oCkBAIC01OSw2ICs1OSwxNCBAQCBleHRlcm4gb3B1
c19pbnQ2NCBjZWx0X21pcHM7CiAjZGVmaW5lIFNIUihhLGIpIFNIUjMyKGEsYikKICNkZWZpbmUg
UFNIUihhLGIpIFBTSFIzMihhLGIpCiAKKy8qKiBBZGQgdHdvIDMyLWJpdCB2YWx1ZXMsIGlnbm9y
ZSBhbnkgb3ZlcmZsb3dzICovCisjZGVmaW5lIEFERDMyX292Zmx3KGEsYikgKGNlbHRfbWlwcys9
Miwob3B1c192YWwzMikoKG9wdXNfdWludDMyKShhKSsob3B1c191aW50MzIpKGIpKSkKKy8qKiBT
dWJ0cmFjdCB0d28gMzItYml0IHZhbHVlcywgaWdub3JlIGFueSBvdmVyZmxvd3MgKi8KKyNkZWZp
bmUgU1VCMzJfb3ZmbHcoYSxiKSAoY2VsdF9taXBzKz0yLChvcHVzX3ZhbDMyKSgob3B1c191aW50
MzIpKGEpLShvcHVzX3VpbnQzMikoYikpKQorLyogQXZvaWQgTVNWQyB3YXJuaW5nIEM0MTQ2OiB1
bmFyeSBtaW51cyBvcGVyYXRvciBhcHBsaWVkIHRvIHVuc2lnbmVkIHR5cGUgKi8KKy8qKiBOZWdh
dGUgMzItYml0IHZhbHVlLCBpZ25vcmUgYW55IG92ZXJmbG93cyAqLworI2RlZmluZSBORUczMl9v
dmZsdyhhKSAoY2VsdF9taXBzKz0yLChvcHVzX3ZhbDMyKSgwLShvcHVzX3VpbnQzMikoYSkpKQor
CiBzdGF0aWMgT1BVU19JTkxJTkUgc2hvcnQgTkVHMTYoaW50IHgpCiB7CiAgICBpbnQgcmVzOwpA
QCAtMjI3LDEyICsyMzUsMTEgQEAgc3RhdGljIE9QVVNfSU5MSU5FIGludCBTSEwzMl8ob3B1c19p
bnQ2NCBhLCBpbnQgc2hpZnQsIGNoYXIgKmZpbGUsIGludCBsaW5lKQogI2RlZmluZSBWU0hSMzIo
YSwgc2hpZnQpICgoKHNoaWZ0KT4wKSA/IFNIUjMyKGEsIHNoaWZ0KSA6IFNITDMyKGEsIC0oc2hp
ZnQpKSkKIAogI2RlZmluZSBST1VORDE2KHgsYSkgKGNlbHRfbWlwcy0tLEVYVFJBQ1QxNihQU0hS
MzIoKHgpLChhKSkpKQorI2RlZmluZSBTUk9VTkQxNih4LGEpIChjZWx0X21pcHMtLSxFWFRSQUNU
MTYoU0FUVVJBVEUoUFNIUjMyKHgsYSksIDMyNzY3KSkpOworCiAjZGVmaW5lIEhBTEYxNih4KSAg
KFNIUjE2KHgsMSkpCiAjZGVmaW5lIEhBTEYzMih4KSAgKFNIUjMyKHgsMSkpCiAKLS8vI2RlZmlu
ZSBTSFIoYSxzaGlmdCkgKChhKSA+PiAoc2hpZnQpKQotLy8jZGVmaW5lIFNITChhLHNoaWZ0KSAo
KGEpIDw8IChzaGlmdCkpCi0KICNkZWZpbmUgQUREMTYoYSwgYikgQUREMTZfKGEsIGIsIF9fRklM
RV9fLCBfX0xJTkVfXykKIHN0YXRpYyBPUFVTX0lOTElORSBzaG9ydCBBREQxNl8oaW50IGEsIGlu
dCBiLCBjaGFyICpmaWxlLCBpbnQgbGluZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9nZW5l
cmljLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvZml4ZWRfZ2VuZXJpYy5oCmluZGV4IDFjZmQ2ZDY5ODkwNmJkNGZkZTg3YTBi
YTBlODc0NjliZGMzZmZkZTUuLjVmNGFiZGE3NmVkOGMwOTZmZDMwZjk1N2RmMjAwZWY3MDkxNWU3
ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9nZW5lcmljLmgKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2ZpeGVkX2dlbmVy
aWMuaApAQCAtMTA0LDYgKzEwNCw5IEBACiAKIC8qKiBTaGlmdCBieSBhIGFuZCByb3VuZC10by1u
ZWFyZWFzdCAzMi1iaXQgdmFsdWUuIFJlc3VsdCBpcyBhIDE2LWJpdCB2YWx1ZSAqLwogI2RlZmlu
ZSBST1VORDE2KHgsYSkgKEVYVFJBQ1QxNihQU0hSMzIoKHgpLChhKSkpKQorLyoqIFNoaWZ0IGJ5
IGEgYW5kIHJvdW5kLXRvLW5lYXJlYXN0IDMyLWJpdCB2YWx1ZS4gUmVzdWx0IGlzIGEgc2F0dXJh
dGVkIDE2LWJpdCB2YWx1ZSAqLworI2RlZmluZSBTUk9VTkQxNih4LGEpIEVYVFJBQ1QxNihTQVRV
UkFURShQU0hSMzIoeCxhKSwgMzI3NjcpKTsKKwogLyoqIERpdmlkZSBieSB0d28gKi8KICNkZWZp
bmUgSEFMRjE2KHgpICAoU0hSMTYoeCwxKSkKICNkZWZpbmUgSEFMRjMyKHgpICAoU0hSMzIoeCwx
KSkKQEAgLTExNyw2ICsxMjAsMTQgQEAKIC8qKiBTdWJ0cmFjdCB0d28gMzItYml0IHZhbHVlcyAq
LwogI2RlZmluZSBTVUIzMihhLGIpICgob3B1c192YWwzMikoYSktKG9wdXNfdmFsMzIpKGIpKQog
CisvKiogQWRkIHR3byAzMi1iaXQgdmFsdWVzLCBpZ25vcmUgYW55IG92ZXJmbG93cyAqLworI2Rl
ZmluZSBBREQzMl9vdmZsdyhhLGIpICgob3B1c192YWwzMikoKG9wdXNfdWludDMyKShhKSsob3B1
c191aW50MzIpKGIpKSkKKy8qKiBTdWJ0cmFjdCB0d28gMzItYml0IHZhbHVlcywgaWdub3JlIGFu
eSBvdmVyZmxvd3MgKi8KKyNkZWZpbmUgU1VCMzJfb3ZmbHcoYSxiKSAoKG9wdXNfdmFsMzIpKChv
cHVzX3VpbnQzMikoYSktKG9wdXNfdWludDMyKShiKSkpCisvKiBBdm9pZCBNU1ZDIHdhcm5pbmcg
QzQxNDY6IHVuYXJ5IG1pbnVzIG9wZXJhdG9yIGFwcGxpZWQgdG8gdW5zaWduZWQgdHlwZSAqLwor
LyoqIE5lZ2F0ZSAzMi1iaXQgdmFsdWUsIGlnbm9yZSBhbnkgb3ZlcmZsb3dzICovCisjZGVmaW5l
IE5FRzMyX292Zmx3KGEpICgob3B1c192YWwzMikoMC0ob3B1c191aW50MzIpKGEpKSkKKwogLyoq
IDE2eDE2IG11bHRpcGxpY2F0aW9uIHdoZXJlIHRoZSByZXN1bHQgZml0cyBpbiAxNiBiaXRzICov
CiAjZGVmaW5lIE1VTFQxNl8xNl8xNihhLGIpICAgICAoKCgob3B1c192YWwxNikoYSkpKigob3B1
c192YWwxNikoYikpKSkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Zsb2F0X2Nhc3QuaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9mbG9h
dF9jYXN0LmgKaW5kZXggZWQ1YTM5YjU0MzNiNThmMmZhMDg0MzJkMmViNjE4OWQ2Y2JlOGY2Yy4u
OThiNDBhYmNmNjVmNWRmN2E1MWQzZDlkNjdkNjE4NjlhNTUzNWZlOSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L2Zsb2F0X2Nhc3QuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZmxvYXRfY2FzdC5oCkBAIC02MSw3ICs2MSwxMyBAQAog
KiogICAgICB0aGUgY29uZmlnLmggZmlsZS4KICovCiAKLSNpZiAoSEFWRV9MUklOVEYpCisvKiBX
aXRoIEdDQywgd2hlbiBTU0UgaXMgYXZhaWxhYmxlLCB0aGUgZmFzdGVzdCBjb252ZXJzaW9uIGlz
IGN2dHNzMnNpLiAqLworI2lmIGRlZmluZWQoX19HTlVDX18pICYmIGRlZmluZWQoX19TU0VfXykK
KworI2luY2x1ZGUgPHhtbWludHJpbi5oPgorc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIg
ZmxvYXQyaW50KGZsb2F0IHgpIHtyZXR1cm4gX21tX2N2dF9zczJzaShfbW1fc2V0X3NzKHgpKTt9
CisKKyNlbGlmIGRlZmluZWQoSEFWRV9MUklOVEYpCiAKIC8qICAgICAgVGhlc2UgZGVmaW5lcyBl
bmFibGUgZnVuY3Rpb25hbGl0eSBpbnRyb2R1Y2VkIHdpdGggdGhlIDE5OTkgSVNPIEMKICoqICAg
ICAgc3RhbmRhcmQuIFRoZXkgbXVzdCBiZSBkZWZpbmVkIGJlZm9yZSB0aGUgaW5jbHVzaW9uIG9m
IG1hdGguaCB0bwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2tpc3NfZmZ0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQva2lzc19mZnQuYwpp
bmRleCAxZjhmZDA1MzIxYTQwMjA0YTNhNjZhZDU1ODE4ZTQ2NGFhYzlhOTljLi44Mzc3NTE2NWQ4
NjZmYjAxZDU4YmNhNzFmY2Y1NjNjZjlkYjhjOGViIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQva2lzc19mZnQu
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQva2lzc19mZnQuYwpAQCAtODIsOCArODIsOCBAQCBzdGF0aWMgdm9pZCBrZl9i
Zmx5MigKICAgICAgICAgIENfU1VCKCBGb3V0MlswXSAsICBGb3V0WzBdICwgdCApOwogICAgICAg
ICAgQ19BRERUTyggRm91dFswXSAsICB0ICk7CiAKLSAgICAgICAgIHQuciA9IFNfTVVMKEZvdXQy
WzFdLnIrRm91dDJbMV0uaSwgdHcpOwotICAgICAgICAgdC5pID0gU19NVUwoRm91dDJbMV0uaS1G
b3V0MlsxXS5yLCB0dyk7CisgICAgICAgICB0LnIgPSBTX01VTChBREQzMl9vdmZsdyhGb3V0Mlsx
XS5yLCBGb3V0MlsxXS5pKSwgdHcpOworICAgICAgICAgdC5pID0gU19NVUwoU1VCMzJfb3ZmbHco
Rm91dDJbMV0uaSwgRm91dDJbMV0uciksIHR3KTsKICAgICAgICAgIENfU1VCKCBGb3V0MlsxXSAs
ICBGb3V0WzFdICwgdCApOwogICAgICAgICAgQ19BRERUTyggRm91dFsxXSAsICB0ICk7CiAKQEAg
LTkyLDggKzkyLDggQEAgc3RhdGljIHZvaWQga2ZfYmZseTIoCiAgICAgICAgICBDX1NVQiggRm91
dDJbMl0gLCAgRm91dFsyXSAsIHQgKTsKICAgICAgICAgIENfQUREVE8oIEZvdXRbMl0gLCAgdCAp
OwogCi0gICAgICAgICB0LnIgPSBTX01VTChGb3V0MlszXS5pLUZvdXQyWzNdLnIsIHR3KTsKLSAg
ICAgICAgIHQuaSA9IFNfTVVMKC1Gb3V0MlszXS5pLUZvdXQyWzNdLnIsIHR3KTsKKyAgICAgICAg
IHQuciA9IFNfTVVMKFNVQjMyX292Zmx3KEZvdXQyWzNdLmksIEZvdXQyWzNdLnIpLCB0dyk7Cisg
ICAgICAgICB0LmkgPSBTX01VTChORUczMl9vdmZsdyhBREQzMl9vdmZsdyhGb3V0MlszXS5pLCBG
b3V0MlszXS5yKSksIHR3KTsKICAgICAgICAgIENfU1VCKCBGb3V0MlszXSAsICBGb3V0WzNdICwg
dCApOwogICAgICAgICAgQ19BRERUTyggRm91dFszXSAsICB0ICk7CiAgICAgICAgICBGb3V0ICs9
IDg7CkBAIC0xMjYsMTAgKzEyNiwxMCBAQCBzdGF0aWMgdm9pZCBrZl9iZmx5NCgKICAgICAgICAg
IENfQUREVE8oICpGb3V0ICwgc2NyYXRjaDEgKTsKICAgICAgICAgIENfU1VCKCBzY3JhdGNoMSAs
IEZvdXRbMV0gLCBGb3V0WzNdICk7CiAKLSAgICAgICAgIEZvdXRbMV0uciA9IHNjcmF0Y2gwLnIg
KyBzY3JhdGNoMS5pOwotICAgICAgICAgRm91dFsxXS5pID0gc2NyYXRjaDAuaSAtIHNjcmF0Y2gx
LnI7Ci0gICAgICAgICBGb3V0WzNdLnIgPSBzY3JhdGNoMC5yIC0gc2NyYXRjaDEuaTsKLSAgICAg
ICAgIEZvdXRbM10uaSA9IHNjcmF0Y2gwLmkgKyBzY3JhdGNoMS5yOworICAgICAgICAgRm91dFsx
XS5yID0gQUREMzJfb3ZmbHcoc2NyYXRjaDAuciwgc2NyYXRjaDEuaSk7CisgICAgICAgICBGb3V0
WzFdLmkgPSBTVUIzMl9vdmZsdyhzY3JhdGNoMC5pLCBzY3JhdGNoMS5yKTsKKyAgICAgICAgIEZv
dXRbM10uciA9IFNVQjMyX292Zmx3KHNjcmF0Y2gwLnIsIHNjcmF0Y2gxLmkpOworICAgICAgICAg
Rm91dFszXS5pID0gQUREMzJfb3ZmbHcoc2NyYXRjaDAuaSwgc2NyYXRjaDEucik7CiAgICAgICAg
ICBGb3V0Kz00OwogICAgICAgfQogICAgfSBlbHNlIHsKQEAgLTE2MCwxMCArMTYwLDEwIEBAIHN0
YXRpYyB2b2lkIGtmX2JmbHk0KAogICAgICAgICAgICAgdHczICs9IGZzdHJpZGUqMzsKICAgICAg
ICAgICAgIENfQUREVE8oICpGb3V0ICwgc2NyYXRjaFszXSApOwogCi0gICAgICAgICAgICBGb3V0
W21dLnIgPSBzY3JhdGNoWzVdLnIgKyBzY3JhdGNoWzRdLmk7Ci0gICAgICAgICAgICBGb3V0W21d
LmkgPSBzY3JhdGNoWzVdLmkgLSBzY3JhdGNoWzRdLnI7Ci0gICAgICAgICAgICBGb3V0W20zXS5y
ID0gc2NyYXRjaFs1XS5yIC0gc2NyYXRjaFs0XS5pOwotICAgICAgICAgICAgRm91dFttM10uaSA9
IHNjcmF0Y2hbNV0uaSArIHNjcmF0Y2hbNF0ucjsKKyAgICAgICAgICAgIEZvdXRbbV0uciA9IEFE
RDMyX292Zmx3KHNjcmF0Y2hbNV0uciwgc2NyYXRjaFs0XS5pKTsKKyAgICAgICAgICAgIEZvdXRb
bV0uaSA9IFNVQjMyX292Zmx3KHNjcmF0Y2hbNV0uaSwgc2NyYXRjaFs0XS5yKTsKKyAgICAgICAg
ICAgIEZvdXRbbTNdLnIgPSBTVUIzMl9vdmZsdyhzY3JhdGNoWzVdLnIsIHNjcmF0Y2hbNF0uaSk7
CisgICAgICAgICAgICBGb3V0W20zXS5pID0gQUREMzJfb3ZmbHcoc2NyYXRjaFs1XS5pLCBzY3Jh
dGNoWzRdLnIpOwogICAgICAgICAgICAgKytGb3V0OwogICAgICAgICAgfQogICAgICAgfQpAQCAt
MjEyLDE4ICsyMTIsMTggQEAgc3RhdGljIHZvaWQga2ZfYmZseTMoCiAgICAgICAgICB0dzEgKz0g
ZnN0cmlkZTsKICAgICAgICAgIHR3MiArPSBmc3RyaWRlKjI7CiAKLSAgICAgICAgIEZvdXRbbV0u
ciA9IEZvdXQtPnIgLSBIQUxGX09GKHNjcmF0Y2hbM10ucik7Ci0gICAgICAgICBGb3V0W21dLmkg
PSBGb3V0LT5pIC0gSEFMRl9PRihzY3JhdGNoWzNdLmkpOworICAgICAgICAgRm91dFttXS5yID0g
U1VCMzJfb3ZmbHcoRm91dC0+ciwgSEFMRl9PRihzY3JhdGNoWzNdLnIpKTsKKyAgICAgICAgIEZv
dXRbbV0uaSA9IFNVQjMyX292Zmx3KEZvdXQtPmksIEhBTEZfT0Yoc2NyYXRjaFszXS5pKSk7CiAK
ICAgICAgICAgIENfTVVMQllTQ0FMQVIoIHNjcmF0Y2hbMF0gLCBlcGkzLmkgKTsKIAogICAgICAg
ICAgQ19BRERUTygqRm91dCxzY3JhdGNoWzNdKTsKIAotICAgICAgICAgRm91dFttMl0uciA9IEZv
dXRbbV0uciArIHNjcmF0Y2hbMF0uaTsKLSAgICAgICAgIEZvdXRbbTJdLmkgPSBGb3V0W21dLmkg
LSBzY3JhdGNoWzBdLnI7CisgICAgICAgICBGb3V0W20yXS5yID0gQUREMzJfb3ZmbHcoRm91dFtt
XS5yLCBzY3JhdGNoWzBdLmkpOworICAgICAgICAgRm91dFttMl0uaSA9IFNVQjMyX292Zmx3KEZv
dXRbbV0uaSwgc2NyYXRjaFswXS5yKTsKIAotICAgICAgICAgRm91dFttXS5yIC09IHNjcmF0Y2hb
MF0uaTsKLSAgICAgICAgIEZvdXRbbV0uaSArPSBzY3JhdGNoWzBdLnI7CisgICAgICAgICBGb3V0
W21dLnIgPSBTVUIzMl9vdmZsdyhGb3V0W21dLnIsIHNjcmF0Y2hbMF0uaSk7CisgICAgICAgICBG
b3V0W21dLmkgPSBBREQzMl9vdmZsdyhGb3V0W21dLmksIHNjcmF0Y2hbMF0ucik7CiAKICAgICAg
ICAgICsrRm91dDsKICAgICAgIH0gd2hpbGUoLS1rKTsKQEAgLTI4MiwyMiArMjgyLDIyIEBAIHN0
YXRpYyB2b2lkIGtmX2JmbHk1KAogICAgICAgICAgQ19BREQoIHNjcmF0Y2hbOF0sc2NyYXRjaFsy
XSxzY3JhdGNoWzNdKTsKICAgICAgICAgIENfU1VCKCBzY3JhdGNoWzldLHNjcmF0Y2hbMl0sc2Ny
YXRjaFszXSk7CiAKLSAgICAgICAgIEZvdXQwLT5yICs9IHNjcmF0Y2hbN10uciArIHNjcmF0Y2hb
OF0ucjsKLSAgICAgICAgIEZvdXQwLT5pICs9IHNjcmF0Y2hbN10uaSArIHNjcmF0Y2hbOF0uaTsK
KyAgICAgICAgIEZvdXQwLT5yID0gQUREMzJfb3ZmbHcoRm91dDAtPnIsIEFERDMyX292Zmx3KHNj
cmF0Y2hbN10uciwgc2NyYXRjaFs4XS5yKSk7CisgICAgICAgICBGb3V0MC0+aSA9IEFERDMyX292
Zmx3KEZvdXQwLT5pLCBBREQzMl9vdmZsdyhzY3JhdGNoWzddLmksIHNjcmF0Y2hbOF0uaSkpOwog
Ci0gICAgICAgICBzY3JhdGNoWzVdLnIgPSBzY3JhdGNoWzBdLnIgKyBTX01VTChzY3JhdGNoWzdd
LnIseWEucikgKyBTX01VTChzY3JhdGNoWzhdLnIseWIucik7Ci0gICAgICAgICBzY3JhdGNoWzVd
LmkgPSBzY3JhdGNoWzBdLmkgKyBTX01VTChzY3JhdGNoWzddLmkseWEucikgKyBTX01VTChzY3Jh
dGNoWzhdLmkseWIucik7CisgICAgICAgICBzY3JhdGNoWzVdLnIgPSBBREQzMl9vdmZsdyhzY3Jh
dGNoWzBdLnIsIEFERDMyX292Zmx3KFNfTVVMKHNjcmF0Y2hbN10ucix5YS5yKSwgU19NVUwoc2Ny
YXRjaFs4XS5yLHliLnIpKSk7CisgICAgICAgICBzY3JhdGNoWzVdLmkgPSBBREQzMl9vdmZsdyhz
Y3JhdGNoWzBdLmksIEFERDMyX292Zmx3KFNfTVVMKHNjcmF0Y2hbN10uaSx5YS5yKSwgU19NVUwo
c2NyYXRjaFs4XS5pLHliLnIpKSk7CiAKLSAgICAgICAgIHNjcmF0Y2hbNl0uciA9ICBTX01VTChz
Y3JhdGNoWzEwXS5pLHlhLmkpICsgU19NVUwoc2NyYXRjaFs5XS5pLHliLmkpOwotICAgICAgICAg
c2NyYXRjaFs2XS5pID0gLVNfTVVMKHNjcmF0Y2hbMTBdLnIseWEuaSkgLSBTX01VTChzY3JhdGNo
WzldLnIseWIuaSk7CisgICAgICAgICBzY3JhdGNoWzZdLnIgPSAgQUREMzJfb3ZmbHcoU19NVUwo
c2NyYXRjaFsxMF0uaSx5YS5pKSwgU19NVUwoc2NyYXRjaFs5XS5pLHliLmkpKTsKKyAgICAgICAg
IHNjcmF0Y2hbNl0uaSA9IE5FRzMyX292Zmx3KEFERDMyX292Zmx3KFNfTVVMKHNjcmF0Y2hbMTBd
LnIseWEuaSksIFNfTVVMKHNjcmF0Y2hbOV0ucix5Yi5pKSkpOwogCiAgICAgICAgICBDX1NVQigq
Rm91dDEsc2NyYXRjaFs1XSxzY3JhdGNoWzZdKTsKICAgICAgICAgIENfQUREKCpGb3V0NCxzY3Jh
dGNoWzVdLHNjcmF0Y2hbNl0pOwogCi0gICAgICAgICBzY3JhdGNoWzExXS5yID0gc2NyYXRjaFsw
XS5yICsgU19NVUwoc2NyYXRjaFs3XS5yLHliLnIpICsgU19NVUwoc2NyYXRjaFs4XS5yLHlhLnIp
OwotICAgICAgICAgc2NyYXRjaFsxMV0uaSA9IHNjcmF0Y2hbMF0uaSArIFNfTVVMKHNjcmF0Y2hb
N10uaSx5Yi5yKSArIFNfTVVMKHNjcmF0Y2hbOF0uaSx5YS5yKTsKLSAgICAgICAgIHNjcmF0Y2hb
MTJdLnIgPSAtIFNfTVVMKHNjcmF0Y2hbMTBdLmkseWIuaSkgKyBTX01VTChzY3JhdGNoWzldLmks
eWEuaSk7Ci0gICAgICAgICBzY3JhdGNoWzEyXS5pID0gU19NVUwoc2NyYXRjaFsxMF0ucix5Yi5p
KSAtIFNfTVVMKHNjcmF0Y2hbOV0ucix5YS5pKTsKKyAgICAgICAgIHNjcmF0Y2hbMTFdLnIgPSBB
REQzMl9vdmZsdyhzY3JhdGNoWzBdLnIsIEFERDMyX292Zmx3KFNfTVVMKHNjcmF0Y2hbN10ucix5
Yi5yKSwgU19NVUwoc2NyYXRjaFs4XS5yLHlhLnIpKSk7CisgICAgICAgICBzY3JhdGNoWzExXS5p
ID0gQUREMzJfb3ZmbHcoc2NyYXRjaFswXS5pLCBBREQzMl9vdmZsdyhTX01VTChzY3JhdGNoWzdd
LmkseWIuciksIFNfTVVMKHNjcmF0Y2hbOF0uaSx5YS5yKSkpOworICAgICAgICAgc2NyYXRjaFsx
Ml0uciA9IFNVQjMyX292Zmx3KFNfTVVMKHNjcmF0Y2hbOV0uaSx5YS5pKSwgU19NVUwoc2NyYXRj
aFsxMF0uaSx5Yi5pKSk7CisgICAgICAgICBzY3JhdGNoWzEyXS5pID0gU1VCMzJfb3ZmbHcoU19N
VUwoc2NyYXRjaFsxMF0ucix5Yi5pKSwgU19NVUwoc2NyYXRjaFs5XS5yLHlhLmkpKTsKIAogICAg
ICAgICAgQ19BREQoKkZvdXQyLHNjcmF0Y2hbMTFdLHNjcmF0Y2hbMTJdKTsKICAgICAgICAgIENf
U1VCKCpGb3V0MyxzY3JhdGNoWzExXSxzY3JhdGNoWzEyXSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbWF0
aG9wcy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L21hdGhvcHMuaAppbmRleCBhMDUyNWE5NjEwMzBhZTVkZjE2NzRmZjU5NjEy
ZjIwNTQ0NTNhOTIxLi4xZjhhMjBjYjQ1NDAyNTVmZmM0ZWEwYTVmNjcxNmEzMTc5OGM2YTZmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQvbWF0aG9wcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9tYXRob3BzLmgKQEAgLTM4LDExICsz
OCw0NCBAQAogI2luY2x1ZGUgImVudGNvZGUuaCIKICNpbmNsdWRlICJvc19zdXBwb3J0LmgiCiAK
KyNkZWZpbmUgUEkgMy4xNDE1OTI2NTNmCisKIC8qIE11bHRpcGxpZXMgdHdvIDE2LWJpdCBmcmFj
dGlvbmFsIHZhbHVlcy4gQml0LWV4YWN0bmVzcyBvZiB0aGlzIG1hY3JvIGlzIGltcG9ydGFudCAq
LwogI2RlZmluZSBGUkFDX01VTDE2KGEsYikgKCgxNjM4NCsoKG9wdXNfaW50MzIpKG9wdXNfaW50
MTYpKGEpKihvcHVzX2ludDE2KShiKSkpPj4xNSkKIAogdW5zaWduZWQgaXNxcnQzMihvcHVzX3Vp
bnQzMiBfdmFsKTsKIAorLyogQ0VMVCBkb2Vzbid0IG5lZWQgaXQgZm9yIGZpeGVkLXBvaW50LCBi
eSBhbmFseXNpcy5jIGRvZXMuICovCisjaWYgIWRlZmluZWQoRklYRURfUE9JTlQpIHx8IGRlZmlu
ZWQoQU5BTFlTSVNfQykKKyNkZWZpbmUgY0EgMC40MzE1Nzk3NGYKKyNkZWZpbmUgY0IgMC42Nzg0
ODQwM2YKKyNkZWZpbmUgY0MgMC4wODU5NTU0MmYKKyNkZWZpbmUgY0UgKChmbG9hdClQSS8yKQor
c3RhdGljIE9QVVNfSU5MSU5FIGZsb2F0IGZhc3RfYXRhbjJmKGZsb2F0IHksIGZsb2F0IHgpIHsK
KyAgIGZsb2F0IHgyLCB5MjsKKyAgIHgyID0geCp4OworICAgeTIgPSB5Knk7CisgICAvKiBGb3Ig
dmVyeSBzbWFsbCB2YWx1ZXMsIHdlIGRvbid0IGNhcmUgYWJvdXQgdGhlIGFuc3dlciwgc28KKyAg
ICAgIHdlIGNhbiBqdXN0IHJldHVybiAwLiAqLworICAgaWYgKHgyICsgeTIgPCAxZS0xOGYpCisg
ICB7CisgICAgICByZXR1cm4gMDsKKyAgIH0KKyAgIGlmKHgyPHkyKXsKKyAgICAgIGZsb2F0IGRl
biA9ICh5MiArIGNCKngyKSAqICh5MiArIGNDKngyKTsKKyAgICAgIHJldHVybiAteCp5Kih5MiAr
IGNBKngyKSAvIGRlbiArICh5PDAgPyAtY0UgOiBjRSk7CisgICB9ZWxzZXsKKyAgICAgIGZsb2F0
IGRlbiA9ICh4MiArIGNCKnkyKSAqICh4MiArIGNDKnkyKTsKKyAgICAgIHJldHVybiAgeCp5Kih4
MiArIGNBKnkyKSAvIGRlbiArICh5PDAgPyAtY0UgOiBjRSkgLSAoeCp5PDAgPyAtY0UgOiBjRSk7
CisgICB9Cit9CisjdW5kZWYgY0EKKyN1bmRlZiBjQgorI3VuZGVmIGNDCisjdW5kZWYgY0QKKyNl
bmRpZgorCisKICNpZm5kZWYgT1ZFUlJJREVfQ0VMVF9NQVhBQlMxNgogc3RhdGljIE9QVVNfSU5M
SU5FIG9wdXNfdmFsMzIgY2VsdF9tYXhhYnMxNihjb25zdCBvcHVzX3ZhbDE2ICp4LCBpbnQgbGVu
KQogewpAQCAtODAsNyArMTEzLDYgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfdmFsMzIgY2Vs
dF9tYXhhYnMzMihjb25zdCBvcHVzX3ZhbDMyICp4LCBpbnQgbGVuKQogCiAjaWZuZGVmIEZJWEVE
X1BPSU5UCiAKLSNkZWZpbmUgUEkgMy4xNDE1OTI2NTNmCiAjZGVmaW5lIGNlbHRfc3FydCh4KSAo
KGZsb2F0KXNxcnQoeCkpCiAjZGVmaW5lIGNlbHRfcnNxcnQoeCkgKDEuZi9jZWx0X3NxcnQoeCkp
CiAjZGVmaW5lIGNlbHRfcnNxcnRfbm9ybSh4KSAoY2VsdF9yc3FydCh4KSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9tZGN0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvbWRjdC5jCmluZGV4IDUzMTVhZDExYTM3YmJhOTIxMWQ0OWI1NWRl
ZjU1ZWU3ZjE1MmMyMmMuLjVjNmRhYjViNzU3YTY0YWY5MTI5MzZmMGNlNmZlMjJiOGZjMTEyZTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY2VsdC9tZGN0LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21kY3QuYwpAQCAtMjcwLDggKzI3MCw4
IEBAIHZvaWQgY2x0X21kY3RfYmFja3dhcmRfYyhjb25zdCBtZGN0X2xvb2t1cCAqbCwga2lzc19m
ZnRfc2NhbGFyICppbiwga2lzc19mZnRfc2NhCiAgICAgICAgICBpbnQgcmV2OwogICAgICAgICAg
a2lzc19mZnRfc2NhbGFyIHlyLCB5aTsKICAgICAgICAgIHJldiA9ICpiaXRyZXYrKzsKLSAgICAg
ICAgIHlyID0gU19NVUwoKnhwMiwgdFtpXSkgKyBTX01VTCgqeHAxLCB0W040K2ldKTsKLSAgICAg
ICAgIHlpID0gU19NVUwoKnhwMSwgdFtpXSkgLSBTX01VTCgqeHAyLCB0W040K2ldKTsKKyAgICAg
ICAgIHlyID0gQUREMzJfb3ZmbHcoU19NVUwoKnhwMiwgdFtpXSksIFNfTVVMKCp4cDEsIHRbTjQr
aV0pKTsKKyAgICAgICAgIHlpID0gU1VCMzJfb3ZmbHcoU19NVUwoKnhwMSwgdFtpXSksIFNfTVVM
KCp4cDIsIHRbTjQraV0pKTsKICAgICAgICAgIC8qIFdlIHN3YXAgcmVhbCBhbmQgaW1hZyBiZWNh
dXNlIHdlIHVzZSBhbiBGRlQgaW5zdGVhZCBvZiBhbiBJRkZULiAqLwogICAgICAgICAgeXBbMipy
ZXYrMV0gPSB5cjsKICAgICAgICAgIHlwWzIqcmV2XSA9IHlpOwpAQCAtMzAxLDggKzMwMSw4IEBA
IHZvaWQgY2x0X21kY3RfYmFja3dhcmRfYyhjb25zdCBtZGN0X2xvb2t1cCAqbCwga2lzc19mZnRf
c2NhbGFyICppbiwga2lzc19mZnRfc2NhCiAgICAgICAgICB0MCA9IHRbaV07CiAgICAgICAgICB0
MSA9IHRbTjQraV07CiAgICAgICAgICAvKiBXZSdkIHNjYWxlIHVwIGJ5IDIgaGVyZSwgYnV0IGlu
c3RlYWQgaXQncyBkb25lIHdoZW4gbWl4aW5nIHRoZSB3aW5kb3dzICovCi0gICAgICAgICB5ciA9
IFNfTVVMKHJlLHQwKSArIFNfTVVMKGltLHQxKTsKLSAgICAgICAgIHlpID0gU19NVUwocmUsdDEp
IC0gU19NVUwoaW0sdDApOworICAgICAgICAgeXIgPSBBREQzMl9vdmZsdyhTX01VTChyZSx0MCks
IFNfTVVMKGltLHQxKSk7CisgICAgICAgICB5aSA9IFNVQjMyX292Zmx3KFNfTVVMKHJlLHQxKSwg
U19NVUwoaW0sdDApKTsKICAgICAgICAgIC8qIFdlIHN3YXAgcmVhbCBhbmQgaW1hZyBiZWNhdXNl
IHdlJ3JlIHVzaW5nIGFuIEZGVCBpbnN0ZWFkIG9mIGFuIElGRlQuICovCiAgICAgICAgICByZSA9
IHlwMVsxXTsKICAgICAgICAgIGltID0geXAxWzBdOwpAQCAtMzEyLDggKzMxMiw4IEBAIHZvaWQg
Y2x0X21kY3RfYmFja3dhcmRfYyhjb25zdCBtZGN0X2xvb2t1cCAqbCwga2lzc19mZnRfc2NhbGFy
ICppbiwga2lzc19mZnRfc2NhCiAgICAgICAgICB0MCA9IHRbKE40LWktMSldOwogICAgICAgICAg
dDEgPSB0WyhOMi1pLTEpXTsKICAgICAgICAgIC8qIFdlJ2Qgc2NhbGUgdXAgYnkgMiBoZXJlLCBi
dXQgaW5zdGVhZCBpdCdzIGRvbmUgd2hlbiBtaXhpbmcgdGhlIHdpbmRvd3MgKi8KLSAgICAgICAg
IHlyID0gU19NVUwocmUsdDApICsgU19NVUwoaW0sdDEpOwotICAgICAgICAgeWkgPSBTX01VTChy
ZSx0MSkgLSBTX01VTChpbSx0MCk7CisgICAgICAgICB5ciA9IEFERDMyX292Zmx3KFNfTVVMKHJl
LHQwKSwgU19NVUwoaW0sdDEpKTsKKyAgICAgICAgIHlpID0gU1VCMzJfb3ZmbHcoU19NVUwocmUs
dDEpLCBTX01VTChpbSx0MCkpOwogICAgICAgICAgeXAxWzBdID0geXI7CiAgICAgICAgICB5cDBb
MV0gPSB5aTsKICAgICAgICAgIHlwMCArPSAyOwpAQCAtMzMzLDggKzMzMyw4IEBAIHZvaWQgY2x0
X21kY3RfYmFja3dhcmRfYyhjb25zdCBtZGN0X2xvb2t1cCAqbCwga2lzc19mZnRfc2NhbGFyICpp
biwga2lzc19mZnRfc2NhCiAgICAgICAgICBraXNzX2ZmdF9zY2FsYXIgeDEsIHgyOwogICAgICAg
ICAgeDEgPSAqeHAxOwogICAgICAgICAgeDIgPSAqeXAxOwotICAgICAgICAgKnlwMSsrID0gTVVM
VDE2XzMyX1ExNSgqd3AyLCB4MikgLSBNVUxUMTZfMzJfUTE1KCp3cDEsIHgxKTsKLSAgICAgICAg
ICp4cDEtLSA9IE1VTFQxNl8zMl9RMTUoKndwMSwgeDIpICsgTVVMVDE2XzMyX1ExNSgqd3AyLCB4
MSk7CisgICAgICAgICAqeXAxKysgPSBTVUIzMl9vdmZsdyhNVUxUMTZfMzJfUTE1KCp3cDIsIHgy
KSwgTVVMVDE2XzMyX1ExNSgqd3AxLCB4MSkpOworICAgICAgICAgKnhwMS0tID0gQUREMzJfb3Zm
bHcoTVVMVDE2XzMyX1ExNSgqd3AxLCB4MiksIE1VTFQxNl8zMl9RMTUoKndwMiwgeDEpKTsKICAg
ICAgICAgIHdwMSsrOwogICAgICAgICAgd3AyLS07CiAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
bWlwcy92cV9taXBzcjEuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9taXBzL3ZxX21pcHNyMS5oCmluZGV4IDU0Y2VmODYxMzM3
NTQwOTcxN2I4NmVlYWFmYjczNDZkMTJlYWE4MDAuLmZkMThlYWI3YTk2NjA0NjUzOWE2MGI4YTIy
ZGRlZWQyZjFhMGE1YjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9taXBzL3ZxX21pcHNyMS5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9taXBzL3ZxX21pcHNyMS5oCkBAIC0zNiw5ICszNiw2IEBACiAjaW5jbHVkZSAibWF0aG9wcy5o
IgogI2luY2x1ZGUgImFyY2guaCIKIAotc3RhdGljIHVuc2lnbmVkIGV4dHJhY3RfY29sbGFwc2Vf
bWFzayhpbnQgKml5LCBpbnQgTiwgaW50IEIpOwotc3RhdGljIHZvaWQgbm9ybWFsaXNlX3Jlc2lk
dWFsKGludCAqIE9QVVNfUkVTVFJJQ1QgaXksIGNlbHRfbm9ybSAqIE9QVVNfUkVTVFJJQ1QgWCwg
aW50IE4sIG9wdXNfdmFsMzIgUnl5LCBvcHVzX3ZhbDE2IGdhaW4pOwotc3RhdGljIHZvaWQgZXhw
X3JvdGF0aW9uKGNlbHRfbm9ybSAqWCwgaW50IGxlbiwgaW50IGRpciwgaW50IHN0cmlkZSwgaW50
IEssIGludCBzcHJlYWQpOwogc3RhdGljIHZvaWQgcmVub3JtYWxpc2VfdmVjdG9yX21pcHMoY2Vs
dF9ub3JtICpYLCBpbnQgTiwgb3B1c192YWwxNiBnYWluLCBpbnQgYXJjaCk7CiAKICNkZWZpbmUg
T1ZFUlJJREVfdnFfZXhwX3JvdGF0aW9uMQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21vZGVzLmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
bW9kZXMuYwppbmRleCA5MTE2ODZlOTA1NTIyOTg2YjM0ZjRkYjU3ZDE2MjNhZTQyM2FhY2Q4Li4z
OTBjNWU4YWViMzZhYTQ4YjE2ZDJmZmEyMDI1NTRkYzE3NGRhNjYxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
bW9kZXMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvbW9kZXMuYwpAQCAtNDI3LDcgKzQyNyw3IEBAIHZvaWQgb3B1c19j
dXN0b21fbW9kZV9kZXN0cm95KENFTFRNb2RlICptb2RlKQogICAgfQogI2VuZGlmIC8qIENVU1RP
TV9NT0RFU19PTkxZICovCiAgICBvcHVzX2ZyZWUoKG9wdXNfaW50MTYqKW1vZGUtPmVCYW5kcyk7
Ci0gICBvcHVzX2ZyZWUoKG9wdXNfaW50MTYqKW1vZGUtPmFsbG9jVmVjdG9ycyk7CisgICBvcHVz
X2ZyZWUoKHVuc2lnbmVkIGNoYXIqKW1vZGUtPmFsbG9jVmVjdG9ycyk7CiAKICAgIG9wdXNfZnJl
ZSgob3B1c192YWwxNiopbW9kZS0+d2luZG93KTsKICAgIG9wdXNfZnJlZSgob3B1c19pbnQxNiop
bW9kZS0+bG9nTik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvcGl0Y2guYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9waXRjaC5jCmluZGV4
IGJmNDZlN2Q1NjJiMzlmNjI3NTJjMzAwOTFlOTAwNjRlNDM0NGIzNzIuLjViMDYxZDg2MGY0NTJi
OGMzNTM5ZjUwYjg2ZGZkMTIzMGI3ZWM1MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9waXRjaC5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9waXRjaC5jCkBAIC0yMjAsMTMgKzIyMCw4IEBAIG9wdXNfdmFsMzIKICNlbHNlCiB2b2lk
CiAjZW5kaWYKLSNpZiBkZWZpbmVkKE9WRVJSSURFX1BJVENIX1hDT1JSKQogY2VsdF9waXRjaF94
Y29ycl9jKGNvbnN0IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKLSAgICAg
IG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3BpdGNoKQotI2Vsc2UKLWNlbHRf
cGl0Y2hfeGNvcnIoY29uc3Qgb3B1c192YWwxNiAqX3gsIGNvbnN0IG9wdXNfdmFsMTYgKl95LAog
ICAgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gsIGludCBhcmNo
KQotI2VuZGlmCiB7CiAKICNpZiAwIC8qIFRoaXMgaXMgYSBzaW1wbGUgdmVyc2lvbiBvZiB0aGUg
cGl0Y2ggY29ycmVsYXRpb24gdGhhdCBzaG91bGQgd29yawpAQCAtMjY1LDExICsyNjAsNyBAQCBj
ZWx0X3BpdGNoX3hjb3JyKGNvbnN0IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpf
eSwKICAgIGZvciAoaT0wO2k8bWF4X3BpdGNoLTM7aSs9NCkKICAgIHsKICAgICAgIG9wdXNfdmFs
MzIgc3VtWzRdPXswLDAsMCwwfTsKLSNpZiBkZWZpbmVkKE9WRVJSSURFX1BJVENIX1hDT1JSKQot
ICAgICAgeGNvcnJfa2VybmVsX2MoX3gsIF95K2ksIHN1bSwgbGVuKTsKLSNlbHNlCiAgICAgICB4
Y29ycl9rZXJuZWwoX3gsIF95K2ksIHN1bSwgbGVuLCBhcmNoKTsKLSNlbmRpZgogICAgICAgeGNv
cnJbaV09c3VtWzBdOwogICAgICAgeGNvcnJbaSsxXT1zdW1bMV07CiAgICAgICB4Y29ycltpKzJd
PXN1bVsyXTsKQEAgLTI4NSwxMSArMjc2LDcgQEAgY2VsdF9waXRjaF94Y29ycihjb25zdCBvcHVz
X3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCiAgICBmb3IgKDtpPG1heF9waXRjaDtp
KyspCiAgICB7CiAgICAgICBvcHVzX3ZhbDMyIHN1bTsKLSNpZiBkZWZpbmVkKE9WRVJSSURFX1BJ
VENIX1hDT1JSKQotICAgICAgc3VtID0gY2VsdF9pbm5lcl9wcm9kX2MoX3gsIF95K2ksIGxlbik7
Ci0jZWxzZQogICAgICAgc3VtID0gY2VsdF9pbm5lcl9wcm9kKF94LCBfeStpLCBsZW4sIGFyY2gp
OwotI2VuZGlmCiAgICAgICB4Y29ycltpXSA9IHN1bTsKICNpZmRlZiBGSVhFRF9QT0lOVAogICAg
ICAgbWF4Y29yciA9IE1BWDMyKG1heGNvcnIsIHN1bSk7CkBAIC0zNzgsNyArMzY1LDcgQEAgdm9p
ZCBwaXRjaF9zZWFyY2goY29uc3Qgb3B1c192YWwxNiAqIE9QVVNfUkVTVFJJQ1QgeF9scCwgb3B1
c192YWwxNiAqIE9QVVNfUkVTVFIKICAgICAgIGZvciAoaj0wO2o8bGVuPj4xO2orKykKICAgICAg
ICAgIHN1bSArPSBTSFIzMihNVUxUMTZfMTYoeF9scFtqXSx5W2kral0pLCBzaGlmdCk7CiAjZWxz
ZQotICAgICAgc3VtID0gY2VsdF9pbm5lcl9wcm9kX2MoeF9scCwgeStpLCBsZW4+PjEpOworICAg
ICAgc3VtID0gY2VsdF9pbm5lcl9wcm9kKHhfbHAsIHkraSwgbGVuPj4xLCBhcmNoKTsKICNlbmRp
ZgogICAgICAgeGNvcnJbaV0gPSBNQVgzMigtMSwgc3VtKTsKICNpZmRlZiBGSVhFRF9QT0lOVApA
QCAtNDI0LDcgKzQxMSw3IEBAIHN0YXRpYyBvcHVzX3ZhbDE2IGNvbXB1dGVfcGl0Y2hfZ2Fpbihv
cHVzX3ZhbDMyIHh5LCBvcHVzX3ZhbDMyIHh4LCBvcHVzX3ZhbDMyIHl5CiAgICBzeCA9IGNlbHRf
aWxvZzIoeHgpLTE0OwogICAgc3kgPSBjZWx0X2lsb2cyKHl5KS0xNDsKICAgIHNoaWZ0ID0gc3gg
KyBzeTsKLSAgIHgyeTIgPSBNVUxUMTZfMTZfUTE0KFZTSFIzMih4eCwgc3gpLCBWU0hSMzIoeXks
IHN5KSk7CisgICB4MnkyID0gU0hSMzIoTVVMVDE2XzE2KFZTSFIzMih4eCwgc3gpLCBWU0hSMzIo
eXksIHN5KSksIDE0KTsKICAgIGlmIChzaGlmdCAmIDEpIHsKICAgICAgIGlmICh4MnkyIDwgMzI3
NjgpCiAgICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvcGl0Y2guaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9waXRjaC5oCmluZGV4
IGQzNTAzNTMyYTA4MGIzNzg3NTVkYzAxYmEyNmMwNTVkZGFiMjI1YzUuLmU0MjVmNTZhZWFhODky
YTlhY2RjN2E2YmM1OGQ5ZTU3ZGRjZTcyNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9waXRjaC5oCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9waXRjaC5oCkBAIC00Niw4ICs0Niw3IEBACiAjaW5jbHVkZSAibWlwcy9waXRjaF9taXBz
cjEuaCIKICNlbmRpZgogCi0jaWYgKChkZWZpbmVkKE9QVVNfQVJNX0FTTSkgJiYgZGVmaW5lZChG
SVhFRF9QT0lOVCkpIFwKLSAgfHwgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIp
KQorI2lmIChkZWZpbmVkKE9QVVNfQVJNX0FTTSkgfHwgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFW
RV9ORU9OX0lOVFIpKQogIyBpbmNsdWRlICJhcm0vcGl0Y2hfYXJtLmgiCiAjZW5kaWYKIApAQCAt
MTg0LDE3ICsxODMsMTAgQEAgb3B1c192YWwzMgogdm9pZAogI2VuZGlmCiBjZWx0X3BpdGNoX3hj
b3JyX2MoY29uc3Qgb3B1c192YWwxNiAqX3gsIGNvbnN0IG9wdXNfdmFsMTYgKl95LAotICAgICAg
b3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gpOwotCi0jaWYgIWRlZmlu
ZWQoT1ZFUlJJREVfUElUQ0hfWENPUlIpCi0jaWZkZWYgRklYRURfUE9JTlQKLW9wdXNfdmFsMzIK
LSNlbHNlCi12b2lkCi0jZW5kaWYKLWNlbHRfcGl0Y2hfeGNvcnIoY29uc3Qgb3B1c192YWwxNiAq
X3gsIGNvbnN0IG9wdXNfdmFsMTYgKl95LAogICAgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBs
ZW4sIGludCBtYXhfcGl0Y2gsIGludCBhcmNoKTsKIAorI2lmbmRlZiBPVkVSUklERV9QSVRDSF9Y
Q09SUgorIyBkZWZpbmUgY2VsdF9waXRjaF94Y29yciBjZWx0X3BpdGNoX3hjb3JyX2MKICNlbmRp
ZgogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9xdWFudF9iYW5kcy5jIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3F1YW50X2Jh
bmRzLmMKaW5kZXggOTUwNzZlMGFmMmQ0ZWUwN2IyNWI1YjMzMzA1NDI3NzNlMjQ0OTdiMi4uNTYx
MDFiMWNmZWNiOGY1ODExYzA3NjE4ODMwZDdlZTM4NDJhZWI0OCAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3F1
YW50X2JhbmRzLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3F1YW50X2JhbmRzLmMKQEAgLTQxOCw2ICs0MTgsNyBAQCB2
b2lkIHF1YW50X2VuZXJneV9maW5hbGlzZShjb25zdCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBp
bnQgZW5kLCBvcHVzX3ZhbDE2ICpvbAogICAgICAgICAgICAgb2Zmc2V0ID0gKHEyLS41ZikqKDE8
PCgxNC1maW5lX3F1YW50W2ldLTEpKSooMS5mLzE2Mzg0KTsKICNlbmRpZgogICAgICAgICAgICAg
b2xkRUJhbmRzW2krYyptLT5uYkVCYW5kc10gKz0gb2Zmc2V0OworICAgICAgICAgICAgZXJyb3Jb
aStjKm0tPm5iRUJhbmRzXSAtPSBvZmZzZXQ7CiAgICAgICAgICAgICBiaXRzX2xlZnQtLTsKICAg
ICAgICAgIH0gd2hpbGUgKCsrYyA8IEMpOwogICAgICAgfQpAQCAtNTQ3LDkgKzU0OCwxNSBAQCB2
b2lkIGFtcDJMb2cyKGNvbnN0IENFTFRNb2RlICptLCBpbnQgZWZmRW5kLCBpbnQgZW5kLAogICAg
Yz0wOwogICAgZG8gewogICAgICAgZm9yIChpPTA7aTxlZmZFbmQ7aSsrKQorICAgICAgewogICAg
ICAgICAgYmFuZExvZ0VbaStjKm0tPm5iRUJhbmRzXSA9Ci0gICAgICAgICAgICAgICBjZWx0X2xv
ZzIoU0hMMzIoYmFuZEVbaStjKm0tPm5iRUJhbmRzXSwyKSkKKyAgICAgICAgICAgICAgIGNlbHRf
bG9nMihiYW5kRVtpK2MqbS0+bmJFQmFuZHNdKQogICAgICAgICAgICAgICAgLSBTSEwxNigob3B1
c192YWwxNillTWVhbnNbaV0sNik7CisjaWZkZWYgRklYRURfUE9JTlQKKyAgICAgICAgIC8qIENv
bXBlbnNhdGUgZm9yIGJhbmRFW10gYmVpbmcgUTEyIGJ1dCBjZWx0X2xvZzIoKSB0YWtpbmcgYSBR
MTQgaW5wdXQuICovCisgICAgICAgICBiYW5kTG9nRVtpK2MqbS0+bmJFQmFuZHNdICs9IFFDT05T
VDE2KDIuZiwgREJfU0hJRlQpOworI2VuZGlmCisgICAgICB9CiAgICAgICBmb3IgKGk9ZWZmRW5k
O2k8ZW5kO2krKykKICAgICAgICAgIGJhbmRMb2dFW2MqbS0+bmJFQmFuZHMraV0gPSAtUUNPTlNU
MTYoMTQuZixEQl9TSElGVCk7CiAgICB9IHdoaWxlICgrK2MgPCBDKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9yYXRlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQvcmF0ZS5jCmluZGV4IDdkZmE1YmU4YTYzOTI2ODQxNWVhMWNmNDZiNmU0
OTczMGUzODk0OTYuLmNhNGNjODcwZWFhNDEyZjUyYTQ1ZjQxYTkzODI4MmI1YTBjN2Q0ZTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9yYXRlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3JhdGUuYwpAQCAtMzQ4LDEyICszNDgsMTcg
QEAgc3RhdGljIE9QVVNfSU5MSU5FIGludCBpbnRlcnBfYml0czJwdWxzZXMoY29uc3QgQ0VMVE1v
ZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwKICAgICAgICAgICAgIC8qVGhpcyBpZigpIGJsb2Nr
IGlzIHRoZSBvbmx5IHBhcnQgb2YgdGhlIGFsbG9jYXRpb24gZnVuY3Rpb24gdGhhdAogICAgICAg
ICAgICAgICAgaXMgbm90IGEgbWFuZGF0b3J5IHBhcnQgb2YgdGhlIGJpdHN0cmVhbTogYW55IGJh
bmRzIHdlIGNob29zZSB0bwogICAgICAgICAgICAgICAgc2tpcCBoZXJlIG11c3QgYmUgZXhwbGlj
aXRseSBzaWduYWxlZC4qLwotICAgICAgICAgICAgLypDaG9vc2UgYSB0aHJlc2hvbGQgd2l0aCBz
b21lIGh5c3RlcmVzaXMgdG8ga2VlcCBiYW5kcyBmcm9tCi0gICAgICAgICAgICAgICBmbHVjdHVh
dGluZyBpbiBhbmQgb3V0LiovCisgICAgICAgICAgICBpbnQgZGVwdGhfdGhyZXNob2xkOworICAg
ICAgICAgICAgLypXZSBjaG9vc2UgYSB0aHJlc2hvbGQgd2l0aCBzb21lIGh5c3RlcmVzaXMgdG8g
a2VlcCBiYW5kcyBmcm9tCisgICAgICAgICAgICAgICBmbHVjdHVhdGluZyBpbiBhbmQgb3V0LCBi
dXQgd2UgdHJ5IG5vdCB0byBmb2xkIGJlbG93IGEgY2VydGFpbiBwb2ludC4gKi8KKyAgICAgICAg
ICAgIGlmIChjb2RlZEJhbmRzID4gMTcpCisgICAgICAgICAgICAgICBkZXB0aF90aHJlc2hvbGQg
PSBqPHByZXYgPyA3IDogOTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIGRlcHRo
X3RocmVzaG9sZCA9IDA7CiAjaWZkZWYgRlVaWklORwogICAgICAgICAgICAgaWYgKChyYW5kKCkm
MHgxKSA9PSAwKQogI2Vsc2UKLSAgICAgICAgICAgIGlmIChjb2RlZEJhbmRzPD1zdGFydCsyIHx8
IChiYW5kX2JpdHMgPiAoKGo8cHJldj83OjkpKmJhbmRfd2lkdGg8PExNPDxCSVRSRVMpPj40ICYm
IGo8PXNpZ25hbEJhbmR3aWR0aCkpCisgICAgICAgICAgICBpZiAoY29kZWRCYW5kczw9c3RhcnQr
MiB8fCAoYmFuZF9iaXRzID4gKGRlcHRoX3RocmVzaG9sZCpiYW5kX3dpZHRoPDxMTTw8QklUUkVT
KT4+NCAmJiBqPD1zaWduYWxCYW5kd2lkdGgpKQogI2VuZGlmCiAgICAgICAgICAgICB7CiAgICAg
ICAgICAgICAgICBlY19lbmNfYml0X2xvZ3AoZWMsIDEsIDEpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3N0
YXRpY19tb2Rlc19maXhlZF9hcm1fbmUxMC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3N0YXRpY19tb2Rlc19maXhlZF9hcm1f
bmUxMC5oCmluZGV4IGI4ZWYwY2VlOTgzOGMzNDVjZmJkZGJhNzg1ZTM4M2YwMGM2Mzk3MjIuLjc2
MjMwOTIxOTI1MDdlZGUzNjgyYjExOGFiYjgwNDY0NjZjNDIxNzggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9z
dGF0aWNfbW9kZXNfZml4ZWRfYXJtX25lMTAuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvc3RhdGljX21vZGVzX2ZpeGVk
X2FybV9uZTEwLmgKQEAgLTEsNyArMSw3IEBACiAvKiBUaGUgY29udGVudHMgb2YgdGhpcyBmaWxl
IHdhcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieQogICogZHVtcF9tb2RlX2FybV9uZTEwLmMg
d2l0aCBhcmd1bWVudHM6IDQ4MDAwIDk2MAogICogSXQgY29udGFpbnMgc3RhdGljIGRlZmluaXRp
b25zIGZvciBzb21lIHByZS1kZWZpbmVkIG1vZGVzLiAqLwotI2luY2x1ZGUgPE5FMTBfaW5pdC5o
PgorI2luY2x1ZGUgPE5FMTBfdHlwZXMuaD4KIAogI2lmbmRlZiBORTEwX0ZGVF9QQVJBTVM0ODAw
MF85NjAKICNkZWZpbmUgTkUxMF9GRlRfUEFSQU1TNDgwMDBfOTYwCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
c3RhdGljX21vZGVzX2Zsb2F0X2FybV9uZTEwLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvc3RhdGljX21vZGVzX2Zsb2F0X2Fy
bV9uZTEwLmgKaW5kZXggOTM0YTgyYTQyMGEyOTZjMmZiNWVjMDc5NGY5YzZmZGU1YmI3NjA0OS4u
NjZlMWFiYjEwMTMyNzkzMDJlNDUzZGQxMDc4NWNmMjlmYTFjNmRjZSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L3N0YXRpY19tb2Rlc19mbG9hdF9hcm1fbmUxMC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9zdGF0aWNfbW9kZXNfZmxv
YXRfYXJtX25lMTAuaApAQCAtMSw3ICsxLDcgQEAKIC8qIFRoZSBjb250ZW50cyBvZiB0aGlzIGZp
bGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5CiAgKiBkdW1wX21vZGVfYXJtX25lMTAu
YyB3aXRoIGFyZ3VtZW50czogNDgwMDAgOTYwCiAgKiBJdCBjb250YWlucyBzdGF0aWMgZGVmaW5p
dGlvbnMgZm9yIHNvbWUgcHJlLWRlZmluZWQgbW9kZXMuICovCi0jaW5jbHVkZSA8TkUxMF9pbml0
Lmg+CisjaW5jbHVkZSA8TkUxMF90eXBlcy5oPgogCiAjaWZuZGVmIE5FMTBfRkZUX1BBUkFNUzQ4
MDAwXzk2MAogI2RlZmluZSBORTEwX0ZGVF9QQVJBTVM0ODAwMF85NjAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC90ZXN0cy90ZXN0X3VuaXRfZGZ0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X2RmdC5jCmluZGV4
IDYxNjZlYjBlNGZhOTNjM2UwZDBmNTIyMmYxOWU4Y2MzZjcxMTQ2NzQuLjcwZjhmNDkzN2JhOGQw
YmNhNjcwZWE5NWQxZDc1MTI0ZTkxNGQ1YjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3Vu
aXRfZGZ0LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9kZnQuYwpAQCAtMjksMzggKzI5LDEy
IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjZW5kaWYKIAotI2RlZmluZSBTS0lQX0NPTkZJR19I
Ci0KLSNpZm5kZWYgQ1VTVE9NX01PREVTCi0jZGVmaW5lIENVU1RPTV9NT0RFUwotI2VuZGlmCi0K
ICNpbmNsdWRlIDxzdGRpby5oPgogCi0jZGVmaW5lIENFTFRfQwotI2RlZmluZSBURVNUX1VOSVRf
REZUX0MKICNpbmNsdWRlICJzdGFja19hbGxvYy5oIgogI2luY2x1ZGUgImtpc3NfZmZ0LmgiCi0j
aW5jbHVkZSAia2lzc19mZnQuYyIKLSNpbmNsdWRlICJtYXRob3BzLmMiCi0jaW5jbHVkZSAiZW50
Y29kZS5jIgotCi0jaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0UyKSB8fCBkZWZpbmVk
KE9QVVNfWDg2X01BWV9IQVZFX1NTRTRfMSkKLSMgaW5jbHVkZSAieDg2L3g4NmNwdS5jIgotI2Vs
aWYgZGVmaW5lZChPUFVTX0FSTV9BU00pIHx8IGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVP
Tl9JTlRSKQotIyBpbmNsdWRlICJhcm0vYXJtY3B1LmMiCi0jIGluY2x1ZGUgImNlbHRfbHBjLmMi
Ci0jIGluY2x1ZGUgInBpdGNoLmMiCi0jIGlmIGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVP
Tl9JTlRSKQotIyAgaW5jbHVkZSAiYXJtL2NlbHRfbmVvbl9pbnRyLmMiCi0jICBpZiBkZWZpbmVk
KEhBVkVfQVJNX05FMTApCi0jICAgaW5jbHVkZSAibWRjdC5jIgotIyAgIGluY2x1ZGUgImFybS9j
ZWx0X25lMTBfZmZ0LmMiCi0jICAgaW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9tZGN0LmMiCi0jICBl
bmRpZgotIyBlbmRpZgotIyBpbmNsdWRlICJhcm0vYXJtX2NlbHRfbWFwLmMiCi0jZW5kaWYKKyNp
bmNsdWRlICJtYXRob3BzLmgiCisjaW5jbHVkZSAibW9kZXMuaCIKIAogI2lmbmRlZiBNX1BJCiAj
ZGVmaW5lIE1fUEkgMy4xNDE1OTI2NTMKQEAgLTExMiwxMSArODYsMjUgQEAgdm9pZCBjaGVjayhr
aXNzX2ZmdF9jcHggICogaW4sa2lzc19mZnRfY3B4ICAqIG91dCxpbnQgbmZmdCxpbnQgaXNpbnZl
cnNlKQogdm9pZCB0ZXN0MWQoaW50IG5mZnQsaW50IGlzaW52ZXJzZSxpbnQgYXJjaCkKIHsKICAg
ICBzaXplX3QgYnVmbGVuID0gc2l6ZW9mKGtpc3NfZmZ0X2NweCkqbmZmdDsKLQotICAgIGtpc3Nf
ZmZ0X2NweCAgKiBpbiA9IChraXNzX2ZmdF9jcHgqKW1hbGxvYyhidWZsZW4pOwotICAgIGtpc3Nf
ZmZ0X2NweCAgKiBvdXQ9IChraXNzX2ZmdF9jcHgqKW1hbGxvYyhidWZsZW4pOwotICAgIGtpc3Nf
ZmZ0X3N0YXRlICpjZmcgPSBvcHVzX2ZmdF9hbGxvYyhuZmZ0LDAsMCxhcmNoKTsKKyAgICBraXNz
X2ZmdF9jcHggKmluOworICAgIGtpc3NfZmZ0X2NweCAqb3V0OwogICAgIGludCBrOworI2lmZGVm
IENVU1RPTV9NT0RFUworICAgIGtpc3NfZmZ0X3N0YXRlICpjZmcgPSBvcHVzX2ZmdF9hbGxvYyhu
ZmZ0LDAsMCxhcmNoKTsKKyNlbHNlCisgICAgaW50IGlkOworICAgIGNvbnN0IGtpc3NfZmZ0X3N0
YXRlICpjZmc7CisgICAgQ0VMVE1vZGUgKm1vZGUgPSBvcHVzX2N1c3RvbV9tb2RlX2NyZWF0ZSg0
ODAwMCwgOTYwLCBOVUxMKTsKKyAgICBpZiAobmZmdCA9PSA0ODApIGlkID0gMDsKKyAgICBlbHNl
IGlmIChuZmZ0ID09IDI0MCkgaWQgPSAxOworICAgIGVsc2UgaWYgKG5mZnQgPT0gMTIwKSBpZCA9
IDI7CisgICAgZWxzZSBpZiAobmZmdCA9PSA2MCkgaWQgPSAzOworICAgIGVsc2UgcmV0dXJuOwor
ICAgIGNmZyA9IG1vZGUtPm1kY3Qua2ZmdFtpZF07CisjZW5kaWYKKworICAgIGluID0gKGtpc3Nf
ZmZ0X2NweCopbWFsbG9jKGJ1Zmxlbik7CisgICAgb3V0ID0gKGtpc3NfZmZ0X2NweCopbWFsbG9j
KGJ1Zmxlbik7CiAKICAgICBmb3IgKGs9MDtrPG5mZnQ7KytrKSB7CiAgICAgICAgIGluW2tdLnIg
PSAocmFuZCgpICUgMzI3NjcpIC0gMTYzODQ7CkBAIC0xNDksNyArMTM3LDkgQEAgdm9pZCB0ZXN0
MWQoaW50IG5mZnQsaW50IGlzaW52ZXJzZSxpbnQgYXJjaCkKIAogICAgIGZyZWUoaW4pOwogICAg
IGZyZWUob3V0KTsKKyNpZmRlZiBDVVNUT01fTU9ERVMKICAgICBvcHVzX2ZmdF9mcmVlKGNmZywg
YXJjaCk7CisjZW5kaWYKIH0KIAogaW50IG1haW4oaW50IGFyZ2MsY2hhciAqKiBhcmd2KQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tYXRob3BzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91
bml0X21hdGhvcHMuYwppbmRleCBmZDMzMTlkYTkxY2ViM2VjZmE5NGM3MDJkMWVmZjNkYWI3Mzhj
ODdhLi44NzRlOWFkZjBmYmYxNjFmNzQxN2YzYWU1MTFiOGE5ZmU3NTE1ZDZlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvdGVzdHMvdGVzdF91bml0X21hdGhvcHMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0
X21hdGhvcHMuYwpAQCAtMzQsNDggKzM0LDEwIEBACiAjZGVmaW5lIENVU1RPTV9NT0RFUwogI2Vu
ZGlmCiAKLSNkZWZpbmUgQ0VMVF9DCi0KICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPG1h
dGguaD4KLSNpbmNsdWRlICJtYXRob3BzLmMiCi0jaW5jbHVkZSAiZW50ZW5jLmMiCi0jaW5jbHVk
ZSAiZW50ZGVjLmMiCi0jaW5jbHVkZSAiZW50Y29kZS5jIgotI2luY2x1ZGUgImJhbmRzLmMiCi0j
aW5jbHVkZSAicXVhbnRfYmFuZHMuYyIKLSNpbmNsdWRlICJsYXBsYWNlLmMiCi0jaW5jbHVkZSAi
dnEuYyIKLSNpbmNsdWRlICJjd3JzLmMiCi0jaW5jbHVkZSAicGl0Y2guYyIKLSNpbmNsdWRlICJj
ZWx0X2xwYy5jIgotI2luY2x1ZGUgImNlbHQuYyIKLQotI2lmIGRlZmluZWQoT1BVU19YODZfTUFZ
X0hBVkVfU1NFKSB8fCBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpIHx8IGRlZmluZWQo
T1BVU19YODZfTUFZX0hBVkVfU1NFNF8xKQotIyBpZiBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZF
X1NTRSkKLSMgIGluY2x1ZGUgIng4Ni9waXRjaF9zc2UuYyIKLSMgZW5kaWYKLSMgaWYgZGVmaW5l
ZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0UyKQotIyAgaW5jbHVkZSAieDg2L3BpdGNoX3NzZTIuYyIK
LSMgZW5kaWYKLSMgaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0U0XzEpCi0jICBpbmNs
dWRlICJ4ODYvcGl0Y2hfc3NlNF8xLmMiCi0jICBpbmNsdWRlICJ4ODYvY2VsdF9scGNfc3NlLmMi
Ci0jIGVuZGlmCi0jIGluY2x1ZGUgIng4Ni94ODZfY2VsdF9tYXAuYyIKLSNlbGlmIGRlZmluZWQo
T1BVU19BUk1fQVNNKSB8fCBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikKLSMg
aW5jbHVkZSAiYXJtL2FybWNwdS5jIgotIyBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05F
T05fSU5UUikKLSMgIGluY2x1ZGUgImFybS9jZWx0X25lb25faW50ci5jIgotIyAgaWYgZGVmaW5l
ZChIQVZFX0FSTV9ORTEwKQotIyAgIGluY2x1ZGUgImtpc3NfZmZ0LmMiCi0jICAgaW5jbHVkZSAi
bWRjdC5jIgotIyAgIGluY2x1ZGUgImFybS9jZWx0X25lMTBfZmZ0LmMiCi0jICAgaW5jbHVkZSAi
YXJtL2NlbHRfbmUxMF9tZGN0LmMiCi0jICBlbmRpZgotIyBlbmRpZgotIyBpbmNsdWRlICJhcm0v
YXJtX2NlbHRfbWFwLmMiCi0jZW5kaWYKKyNpbmNsdWRlICJtYXRob3BzLmgiCisjaW5jbHVkZSAi
YmFuZHMuaCIKIAogI2lmZGVmIEZJWEVEX1BPSU5UCiAjZGVmaW5lIFdPUkQgIiVkIgpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tZGN0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X21k
Y3QuYwppbmRleCA4ZGJiOWNhYTJlOGNmZTg1YjhmYzM4ZTQxM2IyOTAzODExYzM3Yzg0Li40YTU2
M2NjZmUzYzkyODc4YmUwMDE4ZmU5M2JiNTJjOGZkNThmOGExIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVz
dHMvdGVzdF91bml0X21kY3QuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X21kY3QuYwpAQCAt
MjksMzggKzI5LDEzIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjZW5kaWYKIAotI2RlZmluZSBT
S0lQX0NPTkZJR19ICi0KLSNpZm5kZWYgQ1VTVE9NX01PREVTCi0jZGVmaW5lIENVU1RPTV9NT0RF
UwotI2VuZGlmCi0KICNpbmNsdWRlIDxzdGRpby5oPgogCi0jZGVmaW5lIENFTFRfQwogI2luY2x1
ZGUgIm1kY3QuaCIKICNpbmNsdWRlICJzdGFja19hbGxvYy5oIgotCi0jaW5jbHVkZSAia2lzc19m
ZnQuYyIKLSNpbmNsdWRlICJtZGN0LmMiCi0jaW5jbHVkZSAibWF0aG9wcy5jIgotI2luY2x1ZGUg
ImVudGNvZGUuYyIKLQotI2lmIGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFMikgfHwgZGVm
aW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0U0XzEpCi0jIGluY2x1ZGUgIng4Ni94ODZjcHUuYyIK
LSNlbGlmIGRlZmluZWQoT1BVU19BUk1fQVNNKSB8fCBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZF
X05FT05fSU5UUikKLSMgaW5jbHVkZSAiYXJtL2FybWNwdS5jIgotIyBpbmNsdWRlICJwaXRjaC5j
IgotIyBpbmNsdWRlICJjZWx0X2xwYy5jIgotIyBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZF
X05FT05fSU5UUikKLSMgIGluY2x1ZGUgImFybS9jZWx0X25lb25faW50ci5jIgotIyAgaWYgZGVm
aW5lZChIQVZFX0FSTV9ORTEwKQotIyAgIGluY2x1ZGUgImFybS9jZWx0X25lMTBfZmZ0LmMiCi0j
ICAgaW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9tZGN0LmMiCi0jICBlbmRpZgotIyBlbmRpZgotIyBp
bmNsdWRlICJhcm0vYXJtX2NlbHRfbWFwLmMiCi0jZW5kaWYKKyNpbmNsdWRlICJraXNzX2ZmdC5o
IgorI2luY2x1ZGUgIm1kY3QuaCIKKyNpbmNsdWRlICJtb2Rlcy5oIgogCiAjaWZuZGVmIE1fUEkK
ICNkZWZpbmUgTV9QSSAzLjE0MTU5MjY1MwpAQCAtMTMwLDE2ICsxMDUsMzYgQEAgdm9pZCBjaGVj
a19pbnYoa2lzc19mZnRfc2NhbGFyICAqIGluLGtpc3NfZmZ0X3NjYWxhciAgKiBvdXQsaW50IG5m
ZnQsaW50IGlzaW52ZXIKIAogdm9pZCB0ZXN0MWQoaW50IG5mZnQsaW50IGlzaW52ZXJzZSxpbnQg
YXJjaCkKIHsKLSAgICBtZGN0X2xvb2t1cCBjZmc7CiAgICAgc2l6ZV90IGJ1ZmxlbiA9IHNpemVv
ZihraXNzX2ZmdF9zY2FsYXIpKm5mZnQ7Ci0KLSAgICBraXNzX2ZmdF9zY2FsYXIgICogaW4gPSAo
a2lzc19mZnRfc2NhbGFyKiltYWxsb2MoYnVmbGVuKTsKLSAgICBraXNzX2ZmdF9zY2FsYXIgICog
aW5fY29weSA9IChraXNzX2ZmdF9zY2FsYXIqKW1hbGxvYyhidWZsZW4pOwotICAgIGtpc3NfZmZ0
X3NjYWxhciAgKiBvdXQ9IChraXNzX2ZmdF9zY2FsYXIqKW1hbGxvYyhidWZsZW4pOwotICAgIG9w
dXNfdmFsMTYgICogd2luZG93PSAob3B1c192YWwxNiopbWFsbG9jKHNpemVvZihvcHVzX3ZhbDE2
KSpuZmZ0LzIpOworICAgIGtpc3NfZmZ0X3NjYWxhciAqaW47CisgICAga2lzc19mZnRfc2NhbGFy
ICppbl9jb3B5OworICAgIGtpc3NfZmZ0X3NjYWxhciAqb3V0OworICAgIG9wdXNfdmFsMTYgKndp
bmRvdzsKICAgICBpbnQgazsKIAotICAgIGNsdF9tZGN0X2luaXQoJmNmZywgbmZmdCwgMCwgYXJj
aCk7CisjaWZkZWYgQ1VTVE9NX01PREVTCisgICAgaW50IHNoaWZ0ID0gMDsKKyAgICBjb25zdCBt
ZGN0X2xvb2t1cCAqY2ZnOworICAgIG1kY3RfbG9va3VwIF9jZmc7CisgICAgY2x0X21kY3RfaW5p
dCgmX2NmZywgbmZmdCwgMCwgYXJjaCk7CisgICAgY2ZnID0gJl9jZmc7CisjZWxzZQorICAgIGlu
dCBzaGlmdDsKKyAgICBjb25zdCBtZGN0X2xvb2t1cCAqY2ZnOworICAgIENFTFRNb2RlICptb2Rl
ID0gb3B1c19jdXN0b21fbW9kZV9jcmVhdGUoNDgwMDAsIDk2MCwgTlVMTCk7CisgICAgaWYgKG5m
ZnQgPT0gMTkyMCkgc2hpZnQgPSAwOworICAgIGVsc2UgaWYgKG5mZnQgPT0gOTYwKSBzaGlmdCA9
IDE7CisgICAgZWxzZSBpZiAobmZmdCA9PSA0ODApIHNoaWZ0ID0gMjsKKyAgICBlbHNlIGlmIChu
ZmZ0ID09IDI0MCkgc2hpZnQgPSAzOworICAgIGVsc2UgcmV0dXJuOworICAgIGNmZyA9ICZtb2Rl
LT5tZGN0OworI2VuZGlmCisKKyAgICBpbiA9IChraXNzX2ZmdF9zY2FsYXIqKW1hbGxvYyhidWZs
ZW4pOworICAgIGluX2NvcHkgPSAoa2lzc19mZnRfc2NhbGFyKiltYWxsb2MoYnVmbGVuKTsKKyAg
ICBvdXQgPSAoa2lzc19mZnRfc2NhbGFyKiltYWxsb2MoYnVmbGVuKTsKKyAgICB3aW5kb3cgPSAo
b3B1c192YWwxNiopbWFsbG9jKHNpemVvZihvcHVzX3ZhbDE2KSpuZmZ0LzIpOworCiAgICAgZm9y
IChrPTA7azxuZmZ0OysraykgewogICAgICAgICBpbltrXSA9IChyYW5kKCkgJSAzMjc2OCkgLSAx
NjM4NDsKICAgICB9CkBAIC0xNjYsMTMgKzE2MSwxMyBAQCB2b2lkIHRlc3QxZChpbnQgbmZmdCxp
bnQgaXNpbnZlcnNlLGludCBhcmNoKQogICAgIHsKICAgICAgICBmb3IgKGs9MDtrPG5mZnQ7Kytr
KQogICAgICAgICAgIG91dFtrXSA9IDA7Ci0gICAgICAgY2x0X21kY3RfYmFja3dhcmQoJmNmZyxp
bixvdXQsIHdpbmRvdywgbmZmdC8yLCAwLCAxLCBhcmNoKTsKKyAgICAgICBjbHRfbWRjdF9iYWNr
d2FyZChjZmcsaW4sb3V0LCB3aW5kb3csIG5mZnQvMiwgc2hpZnQsIDEsIGFyY2gpOwogICAgICAg
IC8qIGFwcGx5IFREQUMgYmVjYXVzZSBjbHRfbWRjdF9iYWNrd2FyZCgpIG5vIGxvbmdlciBkb2Vz
IHRoYXQgKi8KICAgICAgICBmb3IgKGs9MDtrPG5mZnQvNDsrK2spCiAgICAgICAgICAgb3V0W25m
ZnQtay0xXSA9IG91dFtuZmZ0LzIra107CiAgICAgICAgY2hlY2tfaW52KGluLG91dCxuZmZ0LGlz
aW52ZXJzZSk7CiAgICAgfSBlbHNlIHsKLSAgICAgICBjbHRfbWRjdF9mb3J3YXJkKCZjZmcsaW4s
b3V0LHdpbmRvdywgbmZmdC8yLCAwLCAxLCBhcmNoKTsKKyAgICAgICBjbHRfbWRjdF9mb3J3YXJk
KGNmZyxpbixvdXQsd2luZG93LCBuZmZ0LzIsIHNoaWZ0LCAxLCBhcmNoKTsKICAgICAgICBjaGVj
ayhpbl9jb3B5LG91dCxuZmZ0LGlzaW52ZXJzZSk7CiAgICAgfQogICAgIC8qZm9yIChrPTA7azxu
ZmZ0OysraykgcHJpbnRmKCIlZCAlZCAiLCBvdXRba10uciwgb3V0W2tdLmkpO3ByaW50ZigiXG4i
KTsqLwpAQCAtMTgyLDcgKzE3Nyw5IEBAIHZvaWQgdGVzdDFkKGludCBuZmZ0LGludCBpc2ludmVy
c2UsaW50IGFyY2gpCiAgICAgZnJlZShpbl9jb3B5KTsKICAgICBmcmVlKG91dCk7CiAgICAgZnJl
ZSh3aW5kb3cpOwotICAgIGNsdF9tZGN0X2NsZWFyKCZjZmcsIGFyY2gpOworI2lmZGVmIENVU1RP
TV9NT0RFUworICAgIGNsdF9tZGN0X2NsZWFyKCZfY2ZnLCBhcmNoKTsKKyNlbmRpZgogfQogCiBp
bnQgbWFpbihpbnQgYXJnYyxjaGFyICoqIGFyZ3YpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVz
dF91bml0X3JvdGF0aW9uLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X3JvdGF0aW9uLmMKaW5kZXgg
MTA4MGMyMDg1ZDAyYzVjOTc1ZmQwZjVlZjlkZDgzMjMwM2FkOWU0NS4uMjY3Yjk4MzAxYWM4Mzhj
Y2NjM2Y1ODJiNWIyMjkzM2E2NmQ2YzFlNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5p
dF9yb3RhdGlvbi5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24uYwpAQCAtMzcs
NDMgKzM3LDExIEBACiAKICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgot
I2luY2x1ZGUgInZxLmMiCi0jaW5jbHVkZSAiY3dycy5jIgotI2luY2x1ZGUgImVudGNvZGUuYyIK
LSNpbmNsdWRlICJlbnRlbmMuYyIKLSNpbmNsdWRlICJlbnRkZWMuYyIKLSNpbmNsdWRlICJtYXRo
b3BzLmMiCisjaW5jbHVkZSAidnEuaCIKICNpbmNsdWRlICJiYW5kcy5oIgotI2luY2x1ZGUgInBp
dGNoLmMiCi0jaW5jbHVkZSAiY2VsdF9scGMuYyIKLSNpbmNsdWRlICJjZWx0LmMiCisjaW5jbHVk
ZSAic3RhY2tfYWxsb2MuaCIKICNpbmNsdWRlIDxtYXRoLmg+CiAKLSNpZiBkZWZpbmVkKE9QVVNf
WDg2X01BWV9IQVZFX1NTRSkgfHwgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0UyKSB8fCBk
ZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTRfMSkKLSMgaWYgZGVmaW5lZChPUFVTX1g4Nl9N
QVlfSEFWRV9TU0UpCi0jICBpbmNsdWRlICJ4ODYvcGl0Y2hfc3NlLmMiCi0jIGVuZGlmCi0jIGlm
IGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFMikKLSMgIGluY2x1ZGUgIng4Ni9waXRjaF9z
c2UyLmMiCi0jIGVuZGlmCi0jIGlmIGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFNF8xKQot
IyAgaW5jbHVkZSAieDg2L3BpdGNoX3NzZTRfMS5jIgotIyAgaW5jbHVkZSAieDg2L2NlbHRfbHBj
X3NzZS5jIgotIyBlbmRpZgotIyBpbmNsdWRlICJ4ODYveDg2X2NlbHRfbWFwLmMiCi0jZWxpZiBk
ZWZpbmVkKE9QVVNfQVJNX0FTTSkgfHwgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lO
VFIpCi0jIGluY2x1ZGUgImFybS9hcm1jcHUuYyIKLSMgaWYgZGVmaW5lZChPUFVTX0FSTV9NQVlf
SEFWRV9ORU9OX0lOVFIpCi0jICBpbmNsdWRlICJhcm0vY2VsdF9uZW9uX2ludHIuYyIKLSMgIGlm
IGRlZmluZWQoSEFWRV9BUk1fTkUxMCkKLSMgICBpbmNsdWRlICJraXNzX2ZmdC5jIgotIyAgIGlu
Y2x1ZGUgIm1kY3QuYyIKLSMgICBpbmNsdWRlICJhcm0vY2VsdF9uZTEwX2ZmdC5jIgotIyAgIGlu
Y2x1ZGUgImFybS9jZWx0X25lMTBfbWRjdC5jIgotIyAgZW5kaWYKLSMgZW5kaWYKLSMgaW5jbHVk
ZSAiYXJtL2FybV9jZWx0X21hcC5jIgotI2VuZGlmCiAKICNkZWZpbmUgTUFYX1NJWkUgMTAwCiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY2VsdC92cS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3ZxLmMKaW5kZXggZDI5ZjM4ZmQ4ZWY3OTAxNWI2
M2Q4ODE5YTQ4ZDQ3OGNhOGJjZTZlNi4uOGVmODBlNTA3ZjI2MmRhZDU1ZTVlYjZkYmJmNWFlMmIx
NDNhZDEwNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3ZxLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3ZxLmMKQEAgLTY3LDcgKzY3
LDcgQEAgc3RhdGljIHZvaWQgZXhwX3JvdGF0aW9uMShjZWx0X25vcm0gKlgsIGludCBsZW4sIGlu
dCBzdHJpZGUsIG9wdXNfdmFsMTYgYywgb3B1c18KIH0KICNlbmRpZiAvKiBPVkVSUklERV92cV9l
eHBfcm90YXRpb24xICovCiAKLXN0YXRpYyB2b2lkIGV4cF9yb3RhdGlvbihjZWx0X25vcm0gKlgs
IGludCBsZW4sIGludCBkaXIsIGludCBzdHJpZGUsIGludCBLLCBpbnQgc3ByZWFkKQordm9pZCBl
eHBfcm90YXRpb24oY2VsdF9ub3JtICpYLCBpbnQgbGVuLCBpbnQgZGlyLCBpbnQgc3RyaWRlLCBp
bnQgSywgaW50IHNwcmVhZCkKIHsKICAgIHN0YXRpYyBjb25zdCBpbnQgU1BSRUFEX0ZBQ1RPUlsz
XT17MTUsMTAsNX07CiAgICBpbnQgaTsKQEAgLTE1OCw0MiArMTU4LDI3IEBAIHN0YXRpYyB1bnNp
Z25lZCBleHRyYWN0X2NvbGxhcHNlX21hc2soaW50ICppeSwgaW50IE4sIGludCBCKQogICAgcmV0
dXJuIGNvbGxhcHNlX21hc2s7CiB9CiAKLXVuc2lnbmVkIGFsZ19xdWFudChjZWx0X25vcm0gKlgs
IGludCBOLCBpbnQgSywgaW50IHNwcmVhZCwgaW50IEIsIGVjX2VuYyAqZW5jCi0jaWZkZWYgUkVT
WU5USAotICAgLCBvcHVzX3ZhbDE2IGdhaW4KLSNlbmRpZgotICAgKQorb3B1c192YWwxNiBvcF9w
dnFfc2VhcmNoX2MoY2VsdF9ub3JtICpYLCBpbnQgKml5LCBpbnQgSywgaW50IE4sIGludCBhcmNo
KQogewogICAgVkFSREVDTChjZWx0X25vcm0sIHkpOwotICAgVkFSREVDTChpbnQsIGl5KTsKLSAg
IFZBUkRFQ0wob3B1c192YWwxNiwgc2lnbngpOworICAgVkFSREVDTChpbnQsIHNpZ254KTsKICAg
IGludCBpLCBqOwotICAgb3B1c192YWwxNiBzOwogICAgaW50IHB1bHNlc0xlZnQ7CiAgICBvcHVz
X3ZhbDMyIHN1bTsKICAgIG9wdXNfdmFsMzIgeHk7CiAgICBvcHVzX3ZhbDE2IHl5OwotICAgdW5z
aWduZWQgY29sbGFwc2VfbWFzazsKICAgIFNBVkVfU1RBQ0s7CiAKLSAgIGNlbHRfYXNzZXJ0MihL
PjAsICJhbGdfcXVhbnQoKSBuZWVkcyBhdCBsZWFzdCBvbmUgcHVsc2UiKTsKLSAgIGNlbHRfYXNz
ZXJ0MihOPjEsICJhbGdfcXVhbnQoKSBuZWVkcyBhdCBsZWFzdCB0d28gZGltZW5zaW9ucyIpOwot
CisgICAodm9pZClhcmNoOwogICAgQUxMT0MoeSwgTiwgY2VsdF9ub3JtKTsKLSAgIEFMTE9DKGl5
LCBOLCBpbnQpOwotICAgQUxMT0Moc2lnbngsIE4sIG9wdXNfdmFsMTYpOwotCi0gICBleHBfcm90
YXRpb24oWCwgTiwgMSwgQiwgSywgc3ByZWFkKTsKKyAgIEFMTE9DKHNpZ254LCBOLCBpbnQpOwog
CiAgICAvKiBHZXQgcmlkIG9mIHRoZSBzaWduICovCiAgICBzdW0gPSAwOwogICAgaj0wOyBkbyB7
Ci0gICAgICBpZiAoWFtqXT4wKQotICAgICAgICAgc2lnbnhbal09MTsKLSAgICAgIGVsc2Ugewot
ICAgICAgICAgc2lnbnhbal09LTE7Ci0gICAgICAgICBYW2pdPS1YW2pdOwotICAgICAgfQorICAg
ICAgc2lnbnhbal0gPSBYW2pdPDA7CisgICAgICAvKiBPUFQ6IE1ha2Ugc3VyZSB0aGUgY29tcGls
ZXIgZG9lc24ndCB1c2UgYSBicmFuY2ggb24gQUJTMTYoKS4gKi8KKyAgICAgIFhbal0gPSBBQlMx
NihYW2pdKTsKICAgICAgIGl5W2pdID0gMDsKICAgICAgIHlbal0gPSAwOwogICAgfSB3aGlsZSAo
KytqPE4pOwpAQCAtMjI1LDcgKzIxMCwxMiBAQCB1bnNpZ25lZCBhbGdfcXVhbnQoY2VsdF9ub3Jt
ICpYLCBpbnQgTiwgaW50IEssIGludCBzcHJlYWQsIGludCBCLCBlY19lbmMgKmVuYwogICAgICAg
ICAgd2hpbGUgKCsrajxOKTsKICAgICAgICAgIHN1bSA9IFFDT05TVDE2KDEuZiwxNCk7CiAgICAg
ICB9Ci0gICAgICByY3AgPSBFWFRSQUNUMTYoTVVMVDE2XzMyX1ExNihLLTEsIGNlbHRfcmNwKHN1
bSkpKTsKKyNpZmRlZiBGSVhFRF9QT0lOVAorICAgICAgcmNwID0gRVhUUkFDVDE2KE1VTFQxNl8z
Ml9RMTYoSywgY2VsdF9yY3Aoc3VtKSkpOworI2Vsc2UKKyAgICAgIC8qIFVzaW5nIEsrZSB3aXRo
IGUgPCAxIGd1YXJhbnRlZXMgd2UgY2Fubm90IGdldCBtb3JlIHRoYW4gSyBwdWxzZXMuICovCisg
ICAgICByY3AgPSBFWFRSQUNUMTYoTVVMVDE2XzMyX1ExNihLKzAuOGYsIGNlbHRfcmNwKHN1bSkp
KTsKKyNlbmRpZgogICAgICAgaj0wOyBkbyB7CiAjaWZkZWYgRklYRURfUE9JTlQKICAgICAgICAg
IC8qIEl0J3MgcmVhbGx5IGltcG9ydGFudCB0byByb3VuZCAqdG93YXJkcyB6ZXJvKiBoZXJlICov
CkBAIC0yNDAsNyArMjMwLDcgQEAgdW5zaWduZWQgYWxnX3F1YW50KGNlbHRfbm9ybSAqWCwgaW50
IE4sIGludCBLLCBpbnQgc3ByZWFkLCBpbnQgQiwgZWNfZW5jICplbmMKICAgICAgICAgIHB1bHNl
c0xlZnQgLT0gaXlbal07CiAgICAgICB9ICB3aGlsZSAoKytqPE4pOwogICAgfQotICAgY2VsdF9h
c3NlcnQyKHB1bHNlc0xlZnQ+PTEsICJBbGxvY2F0ZWQgdG9vIG1hbnkgcHVsc2VzIGluIHRoZSBx
dWljayBwYXNzIik7CisgICBjZWx0X2Fzc2VydDIocHVsc2VzTGVmdD49MCwgIkFsbG9jYXRlZCB0
b28gbWFueSBwdWxzZXMgaW4gdGhlIHF1aWNrIHBhc3MiKTsKIAogICAgLyogVGhpcyBzaG91bGQg
bmV2ZXIgaGFwcGVuLCBidXQganVzdCBpbiBjYXNlIGl0IGRvZXMgKGUuZy4gb24gc2lsZW5jZSkK
ICAgICAgIHdlIGZpbGwgdGhlIGZpcnN0IGJpbiB3aXRoIHB1bHNlcy4gKi8KQEAgLTI1NiwxMiAr
MjQ2LDEyIEBAIHVuc2lnbmVkIGFsZ19xdWFudChjZWx0X25vcm0gKlgsIGludCBOLCBpbnQgSywg
aW50IHNwcmVhZCwgaW50IEIsIGVjX2VuYyAqZW5jCiAgICAgICBwdWxzZXNMZWZ0PTA7CiAgICB9
CiAKLSAgIHMgPSAxOwogICAgZm9yIChpPTA7aTxwdWxzZXNMZWZ0O2krKykKICAgIHsKKyAgICAg
IG9wdXNfdmFsMTYgUnh5LCBSeXk7CiAgICAgICBpbnQgYmVzdF9pZDsKLSAgICAgIG9wdXNfdmFs
MzIgYmVzdF9udW0gPSAtVkVSWV9MQVJHRTE2OwotICAgICAgb3B1c192YWwxNiBiZXN0X2RlbiA9
IDA7CisgICAgICBvcHVzX3ZhbDMyIGJlc3RfbnVtOworICAgICAgb3B1c192YWwxNiBiZXN0X2Rl
bjsKICNpZmRlZiBGSVhFRF9QT0lOVAogICAgICAgaW50IHJzaGlmdDsKICNlbmRpZgpAQCAtMjcy
LDkgKzI2MiwyMiBAQCB1bnNpZ25lZCBhbGdfcXVhbnQoY2VsdF9ub3JtICpYLCBpbnQgTiwgaW50
IEssIGludCBzcHJlYWQsIGludCBCLCBlY19lbmMgKmVuYwogICAgICAgLyogVGhlIHNxdWFyZWQg
bWFnbml0dWRlIHRlcm0gZ2V0cyBhZGRlZCBhbnl3YXksIHNvIHdlIG1pZ2h0IGFzIHdlbGwKICAg
ICAgICAgIGFkZCBpdCBvdXRzaWRlIHRoZSBsb29wICovCiAgICAgICB5eSA9IEFERDE2KHl5LCAx
KTsKLSAgICAgIGo9MDsKKworICAgICAgLyogQ2FsY3VsYXRpb25zIGZvciBwb3NpdGlvbiAwIGFy
ZSBvdXQgb2YgdGhlIGxvb3AsIGluIHBhcnQgdG8gcmVkdWNlCisgICAgICAgICBtaXNwcmVkaWN0
ZWQgYnJhbmNoZXMgKHNpbmNlIHRoZSBpZiBjb25kaXRpb24gaXMgdXN1YWxseSBmYWxzZSkKKyAg
ICAgICAgIGluIHRoZSBsb29wLiAqLworICAgICAgLyogVGVtcG9yYXJ5IHN1bXMgb2YgdGhlIG5l
dyBwdWxzZShzKSAqLworICAgICAgUnh5ID0gRVhUUkFDVDE2KFNIUjMyKEFERDMyKHh5LCBFWFRF
TkQzMihYWzBdKSkscnNoaWZ0KSk7CisgICAgICAvKiBXZSdyZSBtdWx0aXBseWluZyB5W2pdIGJ5
IHR3byBzbyB3ZSBkb24ndCBoYXZlIHRvIGRvIGl0IGhlcmUgKi8KKyAgICAgIFJ5eSA9IEFERDE2
KHl5LCB5WzBdKTsKKworICAgICAgLyogQXBwcm94aW1hdGUgc2NvcmU6IHdlIG1heGltaXNlIFJ4
eS9zcXJ0KFJ5eSkgKHdlJ3JlIGd1YXJhbnRlZWQgdGhhdAorICAgICAgICAgUnh5IGlzIHBvc2l0
aXZlIGJlY2F1c2UgdGhlIHNpZ24gaXMgcHJlLWNvbXB1dGVkKSAqLworICAgICAgUnh5ID0gTVVM
VDE2XzE2X1ExNShSeHksUnh5KTsKKyAgICAgIGJlc3RfZGVuID0gUnl5OworICAgICAgYmVzdF9u
dW0gPSBSeHk7CisgICAgICBqPTE7CiAgICAgICBkbyB7Ci0gICAgICAgICBvcHVzX3ZhbDE2IFJ4
eSwgUnl5OwogICAgICAgICAgLyogVGVtcG9yYXJ5IHN1bXMgb2YgdGhlIG5ldyBwdWxzZShzKSAq
LwogICAgICAgICAgUnh5ID0gRVhUUkFDVDE2KFNIUjMyKEFERDMyKHh5LCBFWFRFTkQzMihYW2pd
KSkscnNoaWZ0KSk7CiAgICAgICAgICAvKiBXZSdyZSBtdWx0aXBseWluZyB5W2pdIGJ5IHR3byBz
byB3ZSBkb24ndCBoYXZlIHRvIGRvIGl0IGhlcmUgKi8KQEAgLTI4NSw4ICsyODgsMTEgQEAgdW5z
aWduZWQgYWxnX3F1YW50KGNlbHRfbm9ybSAqWCwgaW50IE4sIGludCBLLCBpbnQgc3ByZWFkLCBp
bnQgQiwgZWNfZW5jICplbmMKICAgICAgICAgIFJ4eSA9IE1VTFQxNl8xNl9RMTUoUnh5LFJ4eSk7
CiAgICAgICAgICAvKiBUaGUgaWRlYSBpcyB0byBjaGVjayBmb3IgbnVtL2RlbiA+PSBiZXN0X251
bS9iZXN0X2RlbiwgYnV0IHRoYXQgd2F5CiAgICAgICAgICAgICB3ZSBjYW4gZG8gaXQgd2l0aG91
dCBhbnkgZGl2aXNpb24gKi8KLSAgICAgICAgIC8qIE9QVDogTWFrZSBzdXJlIHRvIHVzZSBjb25k
aXRpb25hbCBtb3ZlcyBoZXJlICovCi0gICAgICAgICBpZiAoTVVMVDE2XzE2KGJlc3RfZGVuLCBS
eHkpID4gTVVMVDE2XzE2KFJ5eSwgYmVzdF9udW0pKQorICAgICAgICAgLyogT1BUOiBJdCdzIG5v
dCBjbGVhciB3aGV0aGVyIGEgY21vdiBpcyBmYXN0ZXIgdGhhbiBhIGJyYW5jaCBoZXJlCisgICAg
ICAgICAgICBzaW5jZSB0aGUgY29uZGl0aW9uIGlzIG1vcmUgb2Z0ZW4gZmFsc2UgdGhhbiB0cnVl
IGFuZCB1c2luZworICAgICAgICAgICAgYSBjbW92IGludHJvZHVjZXMgZGF0YSBkZXBlbmRlbmNp
ZXMgYWNyb3NzIGl0ZXJhdGlvbnMuIFRoZSBvcHRpbWFsCisgICAgICAgICAgICBjaG9pY2UgbWF5
IGJlIGFyY2hpdGVjdHVyZS1kZXBlbmRlbnQuICovCisgICAgICAgICBpZiAob3B1c191bmxpa2Vs
eShNVUxUMTZfMTYoYmVzdF9kZW4sIFJ4eSkgPiBNVUxUMTZfMTYoUnl5LCBiZXN0X251bSkpKQog
ICAgICAgICAgewogICAgICAgICAgICAgYmVzdF9kZW4gPSBSeXk7CiAgICAgICAgICAgICBiZXN0
X251bSA9IFJ4eTsKQEAgLTMwMSwyMyArMzA3LDQ3IEBAIHVuc2lnbmVkIGFsZ19xdWFudChjZWx0
X25vcm0gKlgsIGludCBOLCBpbnQgSywgaW50IHNwcmVhZCwgaW50IEIsIGVjX2VuYyAqZW5jCiAK
ICAgICAgIC8qIE9ubHkgbm93IHRoYXQgd2UndmUgbWFkZSB0aGUgZmluYWwgY2hvaWNlLCB1cGRh
dGUgeS9peSAqLwogICAgICAgLyogTXVsdGlwbHlpbmcgeVtqXSBieSAyIHNvIHdlIGRvbid0IGhh
dmUgdG8gZG8gaXQgZXZlcnl3aGVyZSBlbHNlICovCi0gICAgICB5W2Jlc3RfaWRdICs9IDIqczsK
KyAgICAgIHlbYmVzdF9pZF0gKz0gMjsKICAgICAgIGl5W2Jlc3RfaWRdKys7CiAgICB9CiAKICAg
IC8qIFB1dCB0aGUgb3JpZ2luYWwgc2lnbiBiYWNrICovCiAgICBqPTA7CiAgICBkbyB7Ci0gICAg
ICBYW2pdID0gTVVMVDE2XzE2KHNpZ254W2pdLFhbal0pOwotICAgICAgaWYgKHNpZ254W2pdIDwg
MCkKLSAgICAgICAgIGl5W2pdID0gLWl5W2pdOworICAgICAgLyppeVtqXSA9IHNpZ254W2pdID8g
LWl5W2pdIDogaXlbal07Ki8KKyAgICAgIC8qIE9QVDogVGhlIGlzIG1vcmUgbGlrZWx5IHRvIGJl
IGNvbXBpbGVkIHdpdGhvdXQgYSBicmFuY2ggdGhhbiB0aGUgY29kZSBhYm92ZQorICAgICAgICAg
YnV0IGhhcyB0aGUgc2FtZSBwZXJmb3JtYW5jZSBvdGhlcndpc2UuICovCisgICAgICBpeVtqXSA9
IChpeVtqXV4tc2lnbnhbal0pICsgc2lnbnhbal07CiAgICB9IHdoaWxlICgrK2o8Tik7CisgICBS
RVNUT1JFX1NUQUNLOworICAgcmV0dXJuIHl5OworfQorCit1bnNpZ25lZCBhbGdfcXVhbnQoY2Vs
dF9ub3JtICpYLCBpbnQgTiwgaW50IEssIGludCBzcHJlYWQsIGludCBCLCBlY19lbmMgKmVuYywK
KyAgICAgIG9wdXNfdmFsMTYgZ2FpbiwgaW50IHJlc3ludGgsIGludCBhcmNoKQoreworICAgVkFS
REVDTChpbnQsIGl5KTsKKyAgIG9wdXNfdmFsMTYgeXk7CisgICB1bnNpZ25lZCBjb2xsYXBzZV9t
YXNrOworICAgU0FWRV9TVEFDSzsKKworICAgY2VsdF9hc3NlcnQyKEs+MCwgImFsZ19xdWFudCgp
IG5lZWRzIGF0IGxlYXN0IG9uZSBwdWxzZSIpOworICAgY2VsdF9hc3NlcnQyKE4+MSwgImFsZ19x
dWFudCgpIG5lZWRzIGF0IGxlYXN0IHR3byBkaW1lbnNpb25zIik7CisKKyAgIC8qIENvdmVycyB2
ZWN0b3JpemF0aW9uIGJ5IHVwIHRvIDQuICovCisgICBBTExPQyhpeSwgTiszLCBpbnQpOworCisg
ICBleHBfcm90YXRpb24oWCwgTiwgMSwgQiwgSywgc3ByZWFkKTsKKworICAgeXkgPSBvcF9wdnFf
c2VhcmNoKFgsIGl5LCBLLCBOLCBhcmNoKTsKKwogICAgZW5jb2RlX3B1bHNlcyhpeSwgTiwgSywg
ZW5jKTsKIAotI2lmZGVmIFJFU1lOVEgKLSAgIG5vcm1hbGlzZV9yZXNpZHVhbChpeSwgWCwgTiwg
eXksIGdhaW4pOwotICAgZXhwX3JvdGF0aW9uKFgsIE4sIC0xLCBCLCBLLCBzcHJlYWQpOwotI2Vu
ZGlmCisgICBpZiAocmVzeW50aCkKKyAgIHsKKyAgICAgIG5vcm1hbGlzZV9yZXNpZHVhbChpeSwg
WCwgTiwgeXksIGdhaW4pOworICAgICAgZXhwX3JvdGF0aW9uKFgsIE4sIC0xLCBCLCBLLCBzcHJl
YWQpOworICAgfQogCiAgICBjb2xsYXBzZV9tYXNrID0gZXh0cmFjdF9jb2xsYXBzZV9tYXNrKGl5
LCBOLCBCKTsKICAgIFJFU1RPUkVfU1RBQ0s7CkBAIC00MDEsNyArNDMxLDcgQEAgaW50IHN0ZXJl
b19pdGhldGEoY29uc3QgY2VsdF9ub3JtICpYLCBjb25zdCBjZWx0X25vcm0gKlksIGludCBzdGVy
ZW8sIGludCBOLCBpbnQKICAgIC8qIDAuNjM2NjIgPSAyL3BpICovCiAgICBpdGhldGEgPSBNVUxU
MTZfMTZfUTE1KFFDT05TVDE2KDAuNjM2NjJmLDE1KSxjZWx0X2F0YW4ycChzaWRlLCBtaWQpKTsK
ICNlbHNlCi0gICBpdGhldGEgPSAoaW50KWZsb29yKC41ZisxNjM4NCowLjYzNjYyZiphdGFuMihz
aWRlLG1pZCkpOworICAgaXRoZXRhID0gKGludClmbG9vciguNWYrMTYzODQqMC42MzY2MmYqZmFz
dF9hdGFuMmYoc2lkZSxtaWQpKTsKICNlbmRpZgogCiAgICByZXR1cm4gaXRoZXRhOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L3ZxLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NlbHQvdnEuaAppbmRleCA1Y2ZjYmU1MGVhMDVlMDcyMWQxMTRhMjgz
MzM5YjVkY2E0OTI4NTI3Li4wZGZlNmFmMDU4MjM5ODZjYWQyN2YxMWVhZDYwMTI1MmEzMDQ4NTYz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvdnEuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdnEuaApAQCAtMzcsMTAgKzM3LDIyIEBA
CiAjaW5jbHVkZSAiZW50ZGVjLmgiCiAjaW5jbHVkZSAibW9kZXMuaCIKIAorI2lmIChkZWZpbmVk
KE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpICYmICFkZWZpbmVkKEZJWEVEX1BPSU5UKSkKKyNpbmNs
dWRlICJ4ODYvdnFfc3NlLmgiCisjZW5kaWYKKwogI2lmIGRlZmluZWQoTUlQU3IxX0FTTSkKICNp
bmNsdWRlICJtaXBzL3ZxX21pcHNyMS5oIgogI2VuZGlmCiAKK3ZvaWQgZXhwX3JvdGF0aW9uKGNl
bHRfbm9ybSAqWCwgaW50IGxlbiwgaW50IGRpciwgaW50IHN0cmlkZSwgaW50IEssIGludCBzcHJl
YWQpOworCitvcHVzX3ZhbDE2IG9wX3B2cV9zZWFyY2hfYyhjZWx0X25vcm0gKlgsIGludCAqaXks
IGludCBLLCBpbnQgTiwgaW50IGFyY2gpOworCisjaWYgIWRlZmluZWQoT1ZFUlJJREVfT1BfUFZR
X1NFQVJDSCkKKyNkZWZpbmUgb3BfcHZxX3NlYXJjaCh4LCBpeSwgSywgTiwgYXJjaCkgXAorICAg
IChvcF9wdnFfc2VhcmNoX2MoeCwgaXksIEssIE4sIGFyY2gpKQorI2VuZGlmCiAKIC8qKiBBbGdl
YnJhaWMgcHVsc2UtdmVjdG9yIHF1YW50aXNlci4gVGhlIHNpZ25hbCB4IGlzIHJlcGxhY2VkIGJ5
IHRoZSBzdW0gb2YKICAgKiB0aGUgcGl0Y2ggYW5kIGEgY29tYmluYXRpb24gb2YgcHVsc2VzIHN1
Y2ggdGhhdCBpdHMgbm9ybSBpcyBzdGlsbCBlcXVhbApAQCAtNTEsMTIgKzYzLDggQEAKICAqIEBw
YXJhbSBlbmMgRW50cm9weSBlbmNvZGVyIHN0YXRlCiAgKiBAcmV0IEEgbWFzayBpbmRpY2F0aW5n
IHdoaWNoIGJsb2NrcyBpbiB0aGUgYmFuZCByZWNlaXZlZCBwdWxzZXMKICovCi11bnNpZ25lZCBh
bGdfcXVhbnQoY2VsdF9ub3JtICpYLCBpbnQgTiwgaW50IEssIGludCBzcHJlYWQsIGludCBCLAot
ICAgICAgZWNfZW5jICplbmMKLSNpZmRlZiBSRVNZTlRICi0gICAgICAsIG9wdXNfdmFsMTYgZ2Fp
bgotI2VuZGlmCi0gICAgICApOwordW5zaWduZWQgYWxnX3F1YW50KGNlbHRfbm9ybSAqWCwgaW50
IE4sIGludCBLLCBpbnQgc3ByZWFkLCBpbnQgQiwgZWNfZW5jICplbmMsCisgICAgICBvcHVzX3Zh
bDE2IGdhaW4sIGludCByZXN5bnRoLCBpbnQgYXJjaCk7CiAKIC8qKiBBbGdlYnJhaWMgcHVsc2Ug
ZGVjb2RlcgogICogQHBhcmFtIFggRGVjb2RlZCBub3JtYWxpc2VkIHNwZWN0cnVtIChyZXR1cm5l
ZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC94ODYvY2VsdF9scGNfc3NlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L2NlbHRfbHBj
X3NzZS5jCmluZGV4IDY3ZTU1OTJhY2YzY2E2YjdmODE3ZDZkZDlmMTdkOTlkZTFkYTI1YjAuLjU0
Nzg1Njg4NDlhYTQyZWE3OGRiNmRiMjY4MmFiZjdlZDE1MGZmYTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94
ODYvY2VsdF9scGNfc3NlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni9jZWx0X2xwY19zc2UuYwpAQCAtNDAsNjUg
KzQwLDIzIEBACiAKICNpZiBkZWZpbmVkKEZJWEVEX1BPSU5UKQogCi12b2lkIGNlbHRfZmlyX3Nz
ZTRfMShjb25zdCBvcHVzX3ZhbDE2ICpfeCwKK3ZvaWQgY2VsdF9maXJfc3NlNF8xKGNvbnN0IG9w
dXNfdmFsMTYgKngsCiAgICAgICAgICBjb25zdCBvcHVzX3ZhbDE2ICpudW0sCi0gICAgICAgICBv
cHVzX3ZhbDE2ICpfeSwKKyAgICAgICAgIG9wdXNfdmFsMTYgKnksCiAgICAgICAgICBpbnQgTiwK
ICAgICAgICAgIGludCBvcmQsCi0gICAgICAgICBvcHVzX3ZhbDE2ICptZW0sCiAgICAgICAgICBp
bnQgYXJjaCkKIHsKICAgICBpbnQgaSxqOwogICAgIFZBUkRFQ0wob3B1c192YWwxNiwgcm51bSk7
Ci0gICAgVkFSREVDTChvcHVzX3ZhbDE2LCB4KTsKIAogICAgIF9fbTEyOGkgdmVjTm9BOwogICAg
IG9wdXNfaW50MzIgbm9BIDsKICAgICBTQVZFX1NUQUNLOwogCiAgICBBTExPQyhybnVtLCBvcmQs
IG9wdXNfdmFsMTYpOwotICAgQUxMT0MoeCwgTitvcmQsIG9wdXNfdmFsMTYpOwogICAgZm9yKGk9
MDtpPG9yZDtpKyspCiAgICAgICBybnVtW2ldID0gbnVtW29yZC1pLTFdOwotICAgZm9yKGk9MDtp
PG9yZDtpKyspCi0gICAgICB4W2ldID0gbWVtW29yZC1pLTFdOwotCi0gICBmb3IgKGk9MDtpPE4t
NztpKz04KQotICAgewotICAgICAgIHhbaStvcmQgIF09X3hbaSAgXTsKLSAgICAgICB4W2krb3Jk
KzFdPV94W2krMV07Ci0gICAgICAgeFtpK29yZCsyXT1feFtpKzJdOwotICAgICAgIHhbaStvcmQr
M109X3hbaSszXTsKLSAgICAgICB4W2krb3JkKzRdPV94W2krNF07Ci0gICAgICAgeFtpK29yZCs1
XT1feFtpKzVdOwotICAgICAgIHhbaStvcmQrNl09X3hbaSs2XTsKLSAgICAgICB4W2krb3JkKzdd
PV94W2krN107Ci0gICB9Ci0KLSAgIGZvciAoO2k8Ti0zO2krPTQpCi0gICB7Ci0gICAgICAgeFtp
K29yZCAgXT1feFtpICBdOwotICAgICAgIHhbaStvcmQrMV09X3hbaSsxXTsKLSAgICAgICB4W2kr
b3JkKzJdPV94W2krMl07Ci0gICAgICAgeFtpK29yZCszXT1feFtpKzNdOwotICAgfQotCi0gICBm
b3IgKDtpPE47aSsrKQotICAgICAgICAgeFtpK29yZF09X3hbaV07Ci0KLSAgIGZvcihpPTA7aTxv
cmQ7aSsrKQotICAgICAgbWVtW2ldID0gX3hbTi1pLTFdOwotI2lmZGVmIFNNQUxMX0ZPT1RQUklO
VAotICAgZm9yIChpPTA7aTxOO2krKykKLSAgIHsKLSAgICAgIG9wdXNfdmFsMzIgc3VtID0gU0hM
MzIoRVhURU5EMzIoX3hbaV0pLCBTSUdfU0hJRlQpOwotICAgICAgZm9yIChqPTA7ajxvcmQ7aisr
KQotICAgICAgewotICAgICAgICAgc3VtID0gTUFDMTZfMTYoc3VtLHJudW1bal0seFtpK2pdKTsK
LSAgICAgIH0KLSAgICAgIF95W2ldID0gU0FUVVJBVEUxNihQU0hSMzIoc3VtLCBTSUdfU0hJRlQp
KTsKLSAgIH0KLSNlbHNlCiAgICBub0EgPSBFWFRFTkQzMigxKSA8PCBTSUdfU0hJRlQgPj4gMTsK
ICAgIHZlY05vQSA9IF9tbV9zZXRfZXBpMzIobm9BLCBub0EsIG5vQSwgbm9BKTsKIApAQCAtMTA3
LDI1ICs2NSwyNCBAQCB2b2lkIGNlbHRfZmlyX3NzZTRfMShjb25zdCBvcHVzX3ZhbDE2ICpfeCwK
ICAgICAgIG9wdXNfdmFsMzIgc3Vtc1s0XSA9IHswfTsKICAgICAgIF9fbTEyOGkgdmVjU3VtLCB2
ZWNYOwogCi0gICAgICB4Y29ycl9rZXJuZWwocm51bSwgeCtpLCBzdW1zLCBvcmQsIGFyY2gpOwor
ICAgICAgeGNvcnJfa2VybmVsKHJudW0sIHgraS1vcmQsIHN1bXMsIG9yZCwgYXJjaCk7CiAKICAg
ICAgIHZlY1N1bSA9IF9tbV9sb2FkdV9zaTEyOCgoX19tMTI4aSAqKXN1bXMpOwogICAgICAgdmVj
U3VtID0gX21tX2FkZF9lcGkzMih2ZWNTdW0sIHZlY05vQSk7CiAgICAgICB2ZWNTdW0gPSBfbW1f
c3JhaV9lcGkzMih2ZWNTdW0sIFNJR19TSElGVCk7Ci0gICAgICB2ZWNYID0gT1BfQ1ZURVBJMTZf
RVBJMzJfTTY0KF94ICsgaSk7CisgICAgICB2ZWNYID0gT1BfQ1ZURVBJMTZfRVBJMzJfTTY0KHgg
KyBpKTsKICAgICAgIHZlY1N1bSA9IF9tbV9hZGRfZXBpMzIodmVjU3VtLCB2ZWNYKTsKICAgICAg
IHZlY1N1bSA9IF9tbV9wYWNrc19lcGkzMih2ZWNTdW0sIHZlY1N1bSk7Ci0gICAgICBfbW1fc3Rv
cmVsX2VwaTY0KChfX20xMjhpICopKF95ICsgaSksIHZlY1N1bSk7CisgICAgICBfbW1fc3RvcmVs
X2VwaTY0KChfX20xMjhpICopKHkgKyBpKSwgdmVjU3VtKTsKICAgIH0KICAgIGZvciAoO2k8Tjtp
KyspCiAgICB7CiAgICAgICBvcHVzX3ZhbDMyIHN1bSA9IDA7CiAgICAgICBmb3IgKGo9MDtqPG9y
ZDtqKyspCi0gICAgICAgICBzdW0gPSBNQUMxNl8xNihzdW0sIHJudW1bal0sIHhbaSArIGpdKTsK
LSAgICAgIF95W2ldID0gU0FUVVJBVEUxNihBREQzMihFWFRFTkQzMihfeFtpXSksIFBTSFIzMihz
dW0sIFNJR19TSElGVCkpKTsKKyAgICAgICAgIHN1bSA9IE1BQzE2XzE2KHN1bSwgcm51bVtqXSwg
eFtpK2otb3JkXSk7CisgICAgICB5W2ldID0gU0FUVVJBVEUxNihBREQzMihFWFRFTkQzMih4W2ld
KSwgUFNIUjMyKHN1bSwgU0lHX1NISUZUKSkpOwogICAgfQogCi0jZW5kaWYKICAgIFJFU1RPUkVf
U1RBQ0s7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvY2VsdF9scGNfc3NlLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2
L2NlbHRfbHBjX3NzZS5oCmluZGV4IGM1ZWM3OTZlZDUyNWUwZmY2MTRiNjViMWQzZjM5MjhlN2M5
NDFmM2UuLjdkMWVjZjc1MzMyODJkYmM3ODJmZTViZTU0NTkzZjRlMjM1YTQwZDUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC94ODYvY2VsdF9scGNfc3NlLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni9jZWx0X2xwY19zc2UuaApA
QCAtNDEsMTIgKzQxLDExIEBAIHZvaWQgY2VsdF9maXJfc3NlNF8xKAogICAgICAgICAgb3B1c192
YWwxNiAqeSwKICAgICAgICAgIGludCBOLAogICAgICAgICAgaW50IG9yZCwKLSAgICAgICAgIG9w
dXNfdmFsMTYgKm1lbSwKICAgICAgICAgIGludCBhcmNoKTsKIAogI2lmIGRlZmluZWQoT1BVU19Y
ODZfUFJFU1VNRV9TU0U0XzEpCi0jZGVmaW5lIGNlbHRfZmlyKHgsIG51bSwgeSwgTiwgb3JkLCBt
ZW0sIGFyY2gpIFwKLSAgICAoKHZvaWQpYXJjaCwgY2VsdF9maXJfc3NlNF8xKHgsIG51bSwgeSwg
Tiwgb3JkLCBtZW0sIGFyY2gpKQorI2RlZmluZSBjZWx0X2Zpcih4LCBudW0sIHksIE4sIG9yZCwg
YXJjaCkgXAorICAgICgodm9pZClhcmNoLCBjZWx0X2Zpcl9zc2U0XzEoeCwgbnVtLCB5LCBOLCBv
cmQsIGFyY2gpKQogCiAjZWxzZQogCkBAIC01NiwxMSArNTUsMTAgQEAgZXh0ZXJuIHZvaWQgKCpj
b25zdCBDRUxUX0ZJUl9JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCiAgICAgICAgICBvcHVzX3Zh
bDE2ICp5LAogICAgICAgICAgaW50IE4sCiAgICAgICAgICBpbnQgb3JkLAotICAgICAgICAgb3B1
c192YWwxNiAqbWVtLAogICAgICAgICAgaW50IGFyY2gpOwogCi0jICBkZWZpbmUgY2VsdF9maXIo
eCwgbnVtLCB5LCBOLCBvcmQsIG1lbSwgYXJjaCkgXAotICAgICgoKkNFTFRfRklSX0lNUExbKGFy
Y2gpICYgT1BVU19BUkNITUFTS10pKHgsIG51bSwgeSwgTiwgb3JkLCBtZW0sIGFyY2gpKQorIyAg
ZGVmaW5lIGNlbHRfZmlyKHgsIG51bSwgeSwgTiwgb3JkLCBhcmNoKSBcCisgICAgKCgqQ0VMVF9G
SVJfSU1QTFsoYXJjaCkgJiBPUFVTX0FSQ0hNQVNLXSkoeCwgbnVtLCB5LCBOLCBvcmQsIGFyY2gp
KQogCiAjZW5kaWYKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni92cV9zc2UuaCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94
ODYvdnFfc3NlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjRlZmU4ZjI0OWY4OTNlZDE2MDA0MGVjODI1YjJhNzY0
N2UxOTJiYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvdnFfc3NlLmgKQEAgLTAsMCArMSw1
MCBAQAorLyogQ29weXJpZ2h0IChjKSAyMDE2ICBKZWFuLU1hcmMgVmFsaW4gKi8KKy8qCisgICBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09O
VFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
IE9XTkVSCisgICBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAgIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAgIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgor
ICAgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRgorICAgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcKKyAgIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICAgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisq
LworCisjaWZuZGVmIFZRX1NTRV9ICisjZGVmaW5lIFZRX1NTRV9ICisKKyNpZiBkZWZpbmVkKE9Q
VVNfWDg2X01BWV9IQVZFX1NTRTIpICYmICFkZWZpbmVkKEZJWEVEX1BPSU5UKQorI2RlZmluZSBP
VkVSUklERV9PUF9QVlFfU0VBUkNICisKK29wdXNfdmFsMTYgb3BfcHZxX3NlYXJjaF9zc2UyKGNl
bHRfbm9ybSAqX1gsIGludCAqaXksIGludCBLLCBpbnQgTiwgaW50IGFyY2gpOworCisjaWYgZGVm
aW5lZChPUFVTX1g4Nl9QUkVTVU1FX1NTRTIpCisjZGVmaW5lIG9wX3B2cV9zZWFyY2goeCwgaXks
IEssIE4sIGFyY2gpIFwKKyAgICAob3BfcHZxX3NlYXJjaF9zc2UyKHgsIGl5LCBLLCBOLCBhcmNo
KSkKKworI2Vsc2UKKworZXh0ZXJuIG9wdXNfdmFsMTYgKCpjb25zdCBPUF9QVlFfU0VBUkNIX0lN
UExbT1BVU19BUkNITUFTSyArIDFdKSgKKyAgICAgIGNlbHRfbm9ybSAqX1gsIGludCAqaXksIGlu
dCBLLCBpbnQgTiwgaW50IGFyY2gpOworCisjICBkZWZpbmUgb3BfcHZxX3NlYXJjaChYLCBpeSwg
SywgTiwgYXJjaCkgXAorICAgICgoKk9QX1BWUV9TRUFSQ0hfSU1QTFsoYXJjaCkgJiBPUFVTX0FS
Q0hNQVNLXSkoWCwgaXksIEssIE4sIGFyY2gpKQorCisjZW5kaWYKKyNlbmRpZgorCisjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY2VsdC94ODYvdnFfc3NlMi5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni92cV9zc2UyLmMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNmEzMTc3MDM1OGI3ZDQxNjQ3MWUxNTc2ZGQ4NTJjOGIyMDg3OGJlNwotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC94ODYvdnFfc3NlMi5jCkBAIC0wLDAgKzEsMjE3IEBACisvKiBDb3B5cmln
aHQgKGMpIDIwMDctMjAwOCBDU0lSTworICAgQ29weXJpZ2h0IChjKSAyMDA3LTIwMDkgWGlwaC5P
cmcgRm91bmRhdGlvbgorICAgQ29weXJpZ2h0IChjKSAyMDA3LTIwMTYgSmVhbi1NYXJjIFZhbGlu
ICovCisvKgorICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICAgTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisg
ICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
ICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorKi8KKworI2lmZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJjb25maWcu
aCIKKyNlbmRpZgorCisjaW5jbHVkZSA8eG1taW50cmluLmg+CisjaW5jbHVkZSA8ZW1taW50cmlu
Lmg+CisjaW5jbHVkZSAiY2VsdF9scGMuaCIKKyNpbmNsdWRlICJzdGFja19hbGxvYy5oIgorI2lu
Y2x1ZGUgIm1hdGhvcHMuaCIKKyNpbmNsdWRlICJ2cS5oIgorI2luY2x1ZGUgIng4NmNwdS5oIgor
CisKKyNpZm5kZWYgRklYRURfUE9JTlQKKworb3B1c192YWwxNiBvcF9wdnFfc2VhcmNoX3NzZTIo
Y2VsdF9ub3JtICpfWCwgaW50ICppeSwgaW50IEssIGludCBOLCBpbnQgYXJjaCkKK3sKKyAgIGlu
dCBpLCBqOworICAgaW50IHB1bHNlc0xlZnQ7CisgICBmbG9hdCB4eSwgeXk7CisgICBWQVJERUNM
KGNlbHRfbm9ybSwgeSk7CisgICBWQVJERUNMKGNlbHRfbm9ybSwgWCk7CisgICBWQVJERUNMKGZs
b2F0LCBzaWdueSk7CisgICBfX20xMjggc2lnbm1hc2s7CisgICBfX20xMjggc3VtczsKKyAgIF9f
bTEyOGkgZm91cnM7CisgICBTQVZFX1NUQUNLOworCisgICAodm9pZClhcmNoOworICAgLyogQWxs
IGJpdHMgc2V0IHRvIHplcm8sIGV4Y2VwdCBmb3IgdGhlIHNpZ24gYml0LiAqLworICAgc2lnbm1h
c2sgPSBfbW1fc2V0X3BzMSgtMC5mKTsKKyAgIGZvdXJzID0gX21tX3NldF9lcGkzMig0LCA0LCA0
LCA0KTsKKyAgIEFMTE9DKHksIE4rMywgY2VsdF9ub3JtKTsKKyAgIEFMTE9DKFgsIE4rMywgY2Vs
dF9ub3JtKTsKKyAgIEFMTE9DKHNpZ255LCBOKzMsIGZsb2F0KTsKKworICAgT1BVU19DT1BZKFgs
IF9YLCBOKTsKKyAgIFhbTl0gPSBYW04rMV0gPSBYW04rMl0gPSAwOworICAgc3VtcyA9IF9tbV9z
ZXR6ZXJvX3BzKCk7CisgICBmb3IgKGo9MDtqPE47ais9NCkKKyAgIHsKKyAgICAgIF9fbTEyOCB4
NCwgczQ7CisgICAgICB4NCA9IF9tbV9sb2FkdV9wcygmWFtqXSk7CisgICAgICBzNCA9IF9tbV9j
bXBsdF9wcyh4NCwgX21tX3NldHplcm9fcHMoKSk7CisgICAgICAvKiBHZXQgcmlkIG9mIHRoZSBz
aWduICovCisgICAgICB4NCA9IF9tbV9hbmRub3RfcHMoc2lnbm1hc2ssIHg0KTsKKyAgICAgIHN1
bXMgPSBfbW1fYWRkX3BzKHN1bXMsIHg0KTsKKyAgICAgIC8qIENsZWFyIHkgYW5kIGl5IGluIGNh
c2Ugd2UgZG9uJ3QgZG8gdGhlIHByb2plY3Rpb24uICovCisgICAgICBfbW1fc3RvcmV1X3BzKCZ5
W2pdLCBfbW1fc2V0emVyb19wcygpKTsKKyAgICAgIF9tbV9zdG9yZXVfc2kxMjgoKF9fbTEyOGkq
KSZpeVtqXSwgX21tX3NldHplcm9fc2kxMjgoKSk7CisgICAgICBfbW1fc3RvcmV1X3BzKCZYW2pd
LCB4NCk7CisgICAgICBfbW1fc3RvcmV1X3BzKCZzaWdueVtqXSwgczQpOworICAgfQorICAgc3Vt
cyA9IF9tbV9hZGRfcHMoc3VtcywgX21tX3NodWZmbGVfcHMoc3Vtcywgc3VtcywgX01NX1NIVUZG
TEUoMSwgMCwgMywgMikpKTsKKyAgIHN1bXMgPSBfbW1fYWRkX3BzKHN1bXMsIF9tbV9zaHVmZmxl
X3BzKHN1bXMsIHN1bXMsIF9NTV9TSFVGRkxFKDIsIDMsIDAsIDEpKSk7CisKKyAgIHh5ID0geXkg
PSAwOworCisgICBwdWxzZXNMZWZ0ID0gSzsKKworICAgLyogRG8gYSBwcmUtc2VhcmNoIGJ5IHBy
b2plY3Rpbmcgb24gdGhlIHB5cmFtaWQgKi8KKyAgIGlmIChLID4gKE4+PjEpKQorICAgeworICAg
ICAgX19tMTI4aSBwdWxzZXNfc3VtOworICAgICAgX19tMTI4IHl5NCwgeHk0OworICAgICAgX19t
MTI4IHJjcDQ7CisgICAgICBvcHVzX3ZhbDMyIHN1bSA9IF9tbV9jdnRzc19mMzIoc3Vtcyk7Cisg
ICAgICAvKiBJZiBYIGlzIHRvbyBzbWFsbCwganVzdCByZXBsYWNlIGl0IHdpdGggYSBwdWxzZSBh
dCAwICovCisgICAgICAvKiBQcmV2ZW50cyBpbmZpbml0aWVzIGFuZCBOYU5zIGZyb20gY2F1c2lu
ZyB0b28gbWFueSBwdWxzZXMKKyAgICAgICAgIHRvIGJlIGFsbG9jYXRlZC4gNjQgaXMgYW4gYXBw
cm94aW1hdGlvbiBvZiBpbmZpbml0eSBoZXJlLiAqLworICAgICAgaWYgKCEoc3VtID4gRVBTSUxP
TiAmJiBzdW0gPCA2NCkpCisgICAgICB7CisgICAgICAgICBYWzBdID0gUUNPTlNUMTYoMS5mLDE0
KTsKKyAgICAgICAgIGo9MTsgZG8KKyAgICAgICAgICAgIFhbal09MDsKKyAgICAgICAgIHdoaWxl
ICgrK2o8Tik7CisgICAgICAgICBzdW1zID0gX21tX3NldF9wczEoMS5mKTsKKyAgICAgIH0KKyAg
ICAgIC8qIFVzaW5nIEsrZSB3aXRoIGUgPCAxIGd1YXJhbnRlZXMgd2UgY2Fubm90IGdldCBtb3Jl
IHRoYW4gSyBwdWxzZXMuICovCisgICAgICByY3A0ID0gX21tX211bF9wcyhfbW1fc2V0X3BzMSgo
ZmxvYXQpKEsrLjgpKSwgX21tX3JjcF9wcyhzdW1zKSk7CisgICAgICB4eTQgPSB5eTQgPSBfbW1f
c2V0emVyb19wcygpOworICAgICAgcHVsc2VzX3N1bSA9IF9tbV9zZXR6ZXJvX3NpMTI4KCk7Cisg
ICAgICBmb3IgKGo9MDtqPE47ais9NCkKKyAgICAgIHsKKyAgICAgICAgIF9fbTEyOCByeDQsIHg0
LCB5NDsKKyAgICAgICAgIF9fbTEyOGkgaXk0OworICAgICAgICAgeDQgPSBfbW1fbG9hZHVfcHMo
Jlhbal0pOworICAgICAgICAgcng0ID0gX21tX211bF9wcyh4NCwgcmNwNCk7CisgICAgICAgICBp
eTQgPSBfbW1fY3Z0dHBzX2VwaTMyKHJ4NCk7CisgICAgICAgICBwdWxzZXNfc3VtID0gX21tX2Fk
ZF9lcGkzMihwdWxzZXNfc3VtLCBpeTQpOworICAgICAgICAgX21tX3N0b3JldV9zaTEyOCgoX19t
MTI4aSopJml5W2pdLCBpeTQpOworICAgICAgICAgeTQgPSBfbW1fY3Z0ZXBpMzJfcHMoaXk0KTsK
KyAgICAgICAgIHh5NCA9IF9tbV9hZGRfcHMoeHk0LCBfbW1fbXVsX3BzKHg0LCB5NCkpOworICAg
ICAgICAgeXk0ID0gX21tX2FkZF9wcyh5eTQsIF9tbV9tdWxfcHMoeTQsIHk0KSk7CisgICAgICAg
ICAvKiBkb3VibGUgdGhlIHlbXSB2ZWN0b3Igc28gd2UgZG9uJ3QgaGF2ZSB0byBkbyBpdCBpbiB0
aGUgc2VhcmNoIGxvb3AuICovCisgICAgICAgICBfbW1fc3RvcmV1X3BzKCZ5W2pdLCBfbW1fYWRk
X3BzKHk0LCB5NCkpOworICAgICAgfQorICAgICAgcHVsc2VzX3N1bSA9IF9tbV9hZGRfZXBpMzIo
cHVsc2VzX3N1bSwgX21tX3NodWZmbGVfZXBpMzIocHVsc2VzX3N1bSwgX01NX1NIVUZGTEUoMSwg
MCwgMywgMikpKTsKKyAgICAgIHB1bHNlc19zdW0gPSBfbW1fYWRkX2VwaTMyKHB1bHNlc19zdW0s
IF9tbV9zaHVmZmxlX2VwaTMyKHB1bHNlc19zdW0sIF9NTV9TSFVGRkxFKDIsIDMsIDAsIDEpKSk7
CisgICAgICBwdWxzZXNMZWZ0IC09IF9tbV9jdnRzaTEyOF9zaTMyKHB1bHNlc19zdW0pOworICAg
ICAgeHk0ID0gX21tX2FkZF9wcyh4eTQsIF9tbV9zaHVmZmxlX3BzKHh5NCwgeHk0LCBfTU1fU0hV
RkZMRSgxLCAwLCAzLCAyKSkpOworICAgICAgeHk0ID0gX21tX2FkZF9wcyh4eTQsIF9tbV9zaHVm
ZmxlX3BzKHh5NCwgeHk0LCBfTU1fU0hVRkZMRSgyLCAzLCAwLCAxKSkpOworICAgICAgeHkgPSBf
bW1fY3Z0c3NfZjMyKHh5NCk7CisgICAgICB5eTQgPSBfbW1fYWRkX3BzKHl5NCwgX21tX3NodWZm
bGVfcHMoeXk0LCB5eTQsIF9NTV9TSFVGRkxFKDEsIDAsIDMsIDIpKSk7CisgICAgICB5eTQgPSBf
bW1fYWRkX3BzKHl5NCwgX21tX3NodWZmbGVfcHMoeXk0LCB5eTQsIF9NTV9TSFVGRkxFKDIsIDMs
IDAsIDEpKSk7CisgICAgICB5eSA9IF9tbV9jdnRzc19mMzIoeXk0KTsKKyAgIH0KKyAgIFhbTl0g
PSBYW04rMV0gPSBYW04rMl0gPSAtMTAwOworICAgeVtOXSA9IHlbTisxXSA9IHlbTisyXSA9IDEw
MDsKKyAgIGNlbHRfYXNzZXJ0MihwdWxzZXNMZWZ0Pj0wLCAiQWxsb2NhdGVkIHRvbyBtYW55IHB1
bHNlcyBpbiB0aGUgcXVpY2sgcGFzcyIpOworCisgICAvKiBUaGlzIHNob3VsZCBuZXZlciBoYXBw
ZW4sIGJ1dCBqdXN0IGluIGNhc2UgaXQgZG9lcyAoZS5nLiBvbiBzaWxlbmNlKQorICAgICAgd2Ug
ZmlsbCB0aGUgZmlyc3QgYmluIHdpdGggcHVsc2VzLiAqLworICAgaWYgKHB1bHNlc0xlZnQgPiBO
KzMpCisgICB7CisgICAgICBvcHVzX3ZhbDE2IHRtcCA9IChvcHVzX3ZhbDE2KXB1bHNlc0xlZnQ7
CisgICAgICB5eSA9IE1BQzE2XzE2KHl5LCB0bXAsIHRtcCk7CisgICAgICB5eSA9IE1BQzE2XzE2
KHl5LCB0bXAsIHlbMF0pOworICAgICAgaXlbMF0gKz0gcHVsc2VzTGVmdDsKKyAgICAgIHB1bHNl
c0xlZnQ9MDsKKyAgIH0KKworICAgZm9yIChpPTA7aTxwdWxzZXNMZWZ0O2krKykKKyAgIHsKKyAg
ICAgIGludCBiZXN0X2lkOworICAgICAgX19tMTI4IHh5NCwgeXk0OworICAgICAgX19tMTI4IG1h
eCwgbWF4MjsKKyAgICAgIF9fbTEyOGkgY291bnQ7CisgICAgICBfX20xMjhpIHBvczsKKyAgICAg
IC8qIFRoZSBzcXVhcmVkIG1hZ25pdHVkZSB0ZXJtIGdldHMgYWRkZWQgYW55d2F5LCBzbyB3ZSBt
aWdodCBhcyB3ZWxsCisgICAgICAgICBhZGQgaXQgb3V0c2lkZSB0aGUgbG9vcCAqLworICAgICAg
eXkgPSBBREQxNih5eSwgMSk7CisgICAgICB4eTQgPSBfbW1fbG9hZDFfcHMoJnh5KTsKKyAgICAg
IHl5NCA9IF9tbV9sb2FkMV9wcygmeXkpOworICAgICAgbWF4ID0gX21tX3NldHplcm9fcHMoKTsK
KyAgICAgIHBvcyA9IF9tbV9zZXR6ZXJvX3NpMTI4KCk7CisgICAgICBjb3VudCA9IF9tbV9zZXRf
ZXBpMzIoMywgMiwgMSwgMCk7CisgICAgICBmb3IgKGo9MDtqPE47ais9NCkKKyAgICAgIHsKKyAg
ICAgICAgIF9fbTEyOCB4NCwgeTQsIHI0OworICAgICAgICAgeDQgPSBfbW1fbG9hZHVfcHMoJlhb
al0pOworICAgICAgICAgeTQgPSBfbW1fbG9hZHVfcHMoJnlbal0pOworICAgICAgICAgeDQgPSBf
bW1fYWRkX3BzKHg0LCB4eTQpOworICAgICAgICAgeTQgPSBfbW1fYWRkX3BzKHk0LCB5eTQpOwor
ICAgICAgICAgeTQgPSBfbW1fcnNxcnRfcHMoeTQpOworICAgICAgICAgcjQgPSBfbW1fbXVsX3Bz
KHg0LCB5NCk7CisgICAgICAgICAvKiBVcGRhdGUgdGhlIGluZGV4IG9mIHRoZSBtYXguICovCisg
ICAgICAgICBwb3MgPSBfbW1fbWF4X2VwaTE2KHBvcywgX21tX2FuZF9zaTEyOChjb3VudCwgX21t
X2Nhc3Rwc19zaTEyOChfbW1fY21wZ3RfcHMocjQsIG1heCkpKSk7CisgICAgICAgICAvKiBVcGRh
dGUgdGhlIG1heC4gKi8KKyAgICAgICAgIG1heCA9IF9tbV9tYXhfcHMobWF4LCByNCk7CisgICAg
ICAgICAvKiBVcGRhdGUgdGhlIGluZGljZXMgKCs0KSAqLworICAgICAgICAgY291bnQgPSBfbW1f
YWRkX2VwaTMyKGNvdW50LCBmb3Vycyk7CisgICAgICB9CisgICAgICAvKiBIb3Jpem9udGFsIG1h
eCAqLworICAgICAgbWF4MiA9IF9tbV9tYXhfcHMobWF4LCBfbW1fc2h1ZmZsZV9wcyhtYXgsIG1h
eCwgX01NX1NIVUZGTEUoMSwgMCwgMywgMikpKTsKKyAgICAgIG1heDIgPSBfbW1fbWF4X3BzKG1h
eDIsIF9tbV9zaHVmZmxlX3BzKG1heDIsIG1heDIsIF9NTV9TSFVGRkxFKDIsIDMsIDAsIDEpKSk7
CisgICAgICAvKiBOb3cgdGhhdCBtYXgyIGNvbnRhaW5zIHRoZSBtYXggYXQgYWxsIHBvc2l0aW9u
cywgbG9vayBhdCB3aGljaCB2YWx1ZShzKSBvZiB0aGUKKyAgICAgICAgIHBhcnRpYWwgbWF4IGlz
IGVxdWFsIHRvIHRoZSBnbG9iYWwgbWF4LiAqLworICAgICAgcG9zID0gX21tX2FuZF9zaTEyOChw
b3MsIF9tbV9jYXN0cHNfc2kxMjgoX21tX2NtcGVxX3BzKG1heCwgbWF4MikpKTsKKyAgICAgIHBv
cyA9IF9tbV9tYXhfZXBpMTYocG9zLCBfbW1fdW5wYWNraGlfZXBpNjQocG9zLCBwb3MpKTsKKyAg
ICAgIHBvcyA9IF9tbV9tYXhfZXBpMTYocG9zLCBfbW1fc2h1ZmZsZWxvX2VwaTE2KHBvcywgX01N
X1NIVUZGTEUoMSwgMCwgMywgMikpKTsKKyAgICAgIGJlc3RfaWQgPSBfbW1fY3Z0c2kxMjhfc2kz
Mihwb3MpOworCisgICAgICAvKiBVcGRhdGluZyB0aGUgc3VtcyBvZiB0aGUgbmV3IHB1bHNlKHMp
ICovCisgICAgICB4eSA9IEFERDMyKHh5LCBFWFRFTkQzMihYW2Jlc3RfaWRdKSk7CisgICAgICAv
KiBXZSdyZSBtdWx0aXBseWluZyB5W2pdIGJ5IHR3byBzbyB3ZSBkb24ndCBoYXZlIHRvIGRvIGl0
IGhlcmUgKi8KKyAgICAgIHl5ID0gQUREMTYoeXksIHlbYmVzdF9pZF0pOworCisgICAgICAvKiBP
bmx5IG5vdyB0aGF0IHdlJ3ZlIG1hZGUgdGhlIGZpbmFsIGNob2ljZSwgdXBkYXRlIHkvaXkgKi8K
KyAgICAgIC8qIE11bHRpcGx5aW5nIHlbal0gYnkgMiBzbyB3ZSBkb24ndCBoYXZlIHRvIGRvIGl0
IGV2ZXJ5d2hlcmUgZWxzZSAqLworICAgICAgeVtiZXN0X2lkXSArPSAyOworICAgICAgaXlbYmVz
dF9pZF0rKzsKKyAgIH0KKworICAgLyogUHV0IHRoZSBvcmlnaW5hbCBzaWduIGJhY2sgKi8KKyAg
IGZvciAoaj0wO2o8TjtqKz00KQorICAgeworICAgICAgX19tMTI4aSB5NDsKKyAgICAgIF9fbTEy
OGkgczQ7CisgICAgICB5NCA9IF9tbV9sb2FkdV9zaTEyOCgoX19tMTI4aSopJml5W2pdKTsKKyAg
ICAgIHM0ID0gX21tX2Nhc3Rwc19zaTEyOChfbW1fbG9hZHVfcHMoJnNpZ255W2pdKSk7CisgICAg
ICB5NCA9IF9tbV94b3Jfc2kxMjgoX21tX2FkZF9lcGkzMih5NCwgczQpLCBzNCk7CisgICAgICBf
bW1fc3RvcmV1X3NpMTI4KChfX20xMjhpKikmaXlbal0sIHk0KTsKKyAgIH0KKyAgIFJFU1RPUkVf
U1RBQ0s7CisgICByZXR1cm4geXk7Cit9CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni94
ODZfY2VsdF9tYXAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC94ODYveDg2X2NlbHRfbWFwLmMKaW5kZXggNDdiYTQxYjllZWZk
NWUzZGNmNGU0ZjhmNTkwOGIxY2IwYzVlYWU1YS4uZDM5ZDg4ZWRlY2Q1NzE5Mzk3MzE1NzAxYWUz
YjkzZGJjZjBhNzY3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni94ODZfY2VsdF9tYXAuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQveDg2L3g4Nl9jZWx0X21hcC5jCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAiY2VsdF9s
cGMuaCIKICNpbmNsdWRlICJwaXRjaC5oIgogI2luY2x1ZGUgInBpdGNoX3NzZS5oIgorI2luY2x1
ZGUgInZxLmgiCiAKICNpZiBkZWZpbmVkKE9QVVNfSEFWRV9SVENEKQogCkBAIC00Niw3ICs0Nyw2
IEBAIHZvaWQgKCpjb25zdCBDRUxUX0ZJUl9JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCiAgICAg
ICAgICBvcHVzX3ZhbDE2ICAgICAgICp5LAogICAgICAgICAgaW50ICAgICAgICAgICAgICBOLAog
ICAgICAgICAgaW50ICAgICAgICAgICAgICBvcmQsCi0gICAgICAgICBvcHVzX3ZhbDE2ICAgICAg
ICptZW0sCiAgICAgICAgICBpbnQgICAgICAgICAgICAgIGFyY2gKICkgPSB7CiAgIGNlbHRfZmly
X2MsICAgICAgICAgICAgICAgIC8qIG5vbi1zc2UgKi8KQEAgLTE1MSw1ICsxNTEsMTcgQEAgdm9p
ZCAoKmNvbnN0IENPTUJfRklMVEVSX0NPTlNUX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKIAog
I2VuZGlmCiAKKyNpZiBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpICYmICFkZWZpbmVk
KE9QVVNfWDg2X1BSRVNVTUVfU1NFMikKK29wdXNfdmFsMTYgKCpjb25zdCBPUF9QVlFfU0VBUkNI
X0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKKyAgICAgIGNlbHRfbm9ybSAqX1gsIGludCAqaXks
IGludCBLLCBpbnQgTiwgaW50IGFyY2gKKykgPSB7CisgIG9wX3B2cV9zZWFyY2hfYywgICAgICAg
ICAgICAgICAgLyogbm9uLXNzZSAqLworICBvcF9wdnFfc2VhcmNoX2MsCisgIE1BWV9IQVZFX1NT
RTIob3BfcHZxX3NlYXJjaCksCisgIE1BWV9IQVZFX1NTRTIob3BfcHZxX3NlYXJjaCksCisgIE1B
WV9IQVZFX1NTRTIob3BfcHZxX3NlYXJjaCkKK307CisjZW5kaWYKKwogI2VuZGlmCiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY29uZmlndXJlLmFjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jb25maWd1cmUuYWMKaW5kZXggYzUyN2UzNjg0ZDZj
ZjVlYWNmYzI3ODA1YWZlM2UzZDdmODIzYTEwNy4uNWZmYTJkMzhlNzBjZTY1YzM5MGQ5MDIwYjQx
MTM0YjlmNTdkMjA5MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jb25maWd1cmUuYWMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jb25maWd1cmUuYWMK
QEAgLTIyLDkgKzIyLDkgQEAgbTRfaWZkZWYoW0FNX1NJTEVOVF9SVUxFU10sIFtBTV9TSUxFTlRf
UlVMRVMoW3llc10pXSkKIAogIyBGb3IgbGlidG9vbC4KIGRubCBQbGVhc2UgdXBkYXRlIHRoZXNl
IGZvciByZWxlYXNlcy4KLU9QVVNfTFRfQ1VSUkVOVD01Ci1PUFVTX0xUX1JFVklTSU9OPTMKLU9Q
VVNfTFRfQUdFPTUKK09QVVNfTFRfQ1VSUkVOVD02CitPUFVTX0xUX1JFVklTSU9OPTEKK09QVVNf
TFRfQUdFPTYKIAogQUNfU1VCU1QoT1BVU19MVF9DVVJSRU5UKQogQUNfU1VCU1QoT1BVU19MVF9S
RVZJU0lPTikKQEAgLTQyMSwxMiArNDIxLDEyIEBAIEFDX0RFRlVOKFtPUFVTX1BBVEhfTkUxMF0s
CiAgICAgICBmaQogCiAgICAgICBBQ19NU0dfQ0hFQ0tJTkcoZm9yIE5FMTApCi0gICAgICBzYXZl
X0NGTEFHUz0iJENGTEFHUyI7IENGTEFHUz0iJE5FMTBfQ0ZMQUdTIgotICAgICAgc2F2ZV9MSUJT
PSIkTElCUyI7IExJQlM9IiRORTEwX0xJQlMgJExJQk0iCisgICAgICBzYXZlX0NGTEFHUz0iJENG
TEFHUyI7IENGTEFHUz0iJENGTEFHUyAkTkUxMF9DRkxBR1MiCisgICAgICBzYXZlX0xJQlM9IiRM
SUJTIjsgTElCUz0iJExJQlMgJE5FMTBfTElCUyAkTElCTSIKICAgICAgIEFDX0xJTktfSUZFTFNF
KAogICAgICAgICAgWwogICAgICAgICAgICAgQUNfTEFOR19QUk9HUkFNKAotICAgICAgICAgICAg
ICAgW1sjaW5jbHVkZSA8TkUxMF9pbml0Lmg+CisgICAgICAgICAgICAgICBbWyNpbmNsdWRlIDxO
RTEwX2RzcC5oPgogICAgICAgICAgICAgICAgXV0sCiAgICAgICAgICAgICAgICBbWwogICAgICAg
ICAgICAgICAgICAgbmUxMF9mZnRfY2ZnX2Zsb2F0MzJfdCBjZmc7CkBAIC03MTUsNyArNzE1LDcg
QEAgQVNfSUYoW3Rlc3QgeCIkZW5hYmxlX2ludHJpbnNpY3MiID0geCJ5ZXMiXSxbCiAgICAgICAg
ICAgICBdXSldLAogICAgICAgICAgICAgW0FDX01TR19SRVNVTFQoW0MgbWV0aG9kXSkKICAgICAg
ICAgICAgICAgICAgQUNfREVGSU5FKFtDUFVfSU5GT19CWV9DXSwgWzFdLCBbR2V0IENQVSBJbmZv
IGJ5IGMgbWV0aG9kXSldLAotICAgICAgICAgICAgW0FDX01TR19FUlJPUihbbm8gc3VwcG9ydGVk
IEdldCBDUFUgSW5mbyBtZXRob2QsIHBsZWFzZSBkaXNhYmxlIGludHJpbnNpY3NdKV0pXSldKQor
ICAgICAgICAgICAgW0FDX01TR19FUlJPUihbbm8gc3VwcG9ydGVkIEdldCBDUFUgSW5mbyBtZXRo
b2QsIHBsZWFzZSBkaXNhYmxlIHJ1bi10aW1lIENQVSBjYXBhYmlsaXRpZXMgZGV0ZWN0aW9uIG9y
IGludHJpbnNpY3NdKV0pXSldKQogICAgXSwKICAgIFsKICAgICAgIEFDX01TR19XQVJOKFtObyBp
bnRyaW5zaWNzIHN1cHBvcnQgZm9yIHlvdXIgYXJjaGl0ZWN0dXJlXSkKQEAgLTc2Nyw2ICs3Njcs
MTUgQEAgQVNfSUYoW3Rlc3QgIiRlbmFibGVfZnV6emluZyIgPSAieWVzIl0sIFsKICAgQUNfREVG
SU5FKFtGVVpaSU5HXSwgWzFdLCBbRnV6emluZ10pCiBdKQogCitBQ19BUkdfRU5BQkxFKFtjaGVj
ay1hc21dLAorICAgIFtBU19IRUxQX1NUUklORyhbLS1lbmFibGUtY2hlY2stYXNtXSwKKyAgICAg
ICAgICAgICAgICAgICAgW2VuYWJsZSBiaXQtZXhhY3RuZXNzIGNoZWNrcyBiZXR3ZWVuIG9wdGlt
aXplZCBhbmQgYyBpbXBsZW1lbnRhdGlvbnNdKV0sLAorICAgIFtlbmFibGVfY2hlY2tfYXNtPW5v
XSkKKworQVNfSUYoW3Rlc3QgIiRlbmFibGVfY2hlY2tfYXNtIiA9ICJ5ZXMiXSwgWworICBBQ19E
RUZJTkUoW09QVVNfQ0hFQ0tfQVNNXSwgWzFdLCBbUnVuIGJpdC1leGFjdG5lc3MgY2hlY2tzIGJl
dHdlZW4gb3B0aW1pemVkIGFuZCBjIGltcGxlbWVudGF0aW9uc10pCitdKQorCiBBQ19BUkdfRU5B
QkxFKFthbWJpc29uaWNzXSwKICAgICBbQVNfSEVMUF9TVFJJTkcoWy0tZW5hYmxlLWFtYmlzb25p
Y3NdLFtlbmFibGUgZXhwZXJpbWVudGFsIGFtYmlzb25pYyBlbmNvZGluZyBhbmQgZGVjb2Rpbmcg
c3VwcG9ydF0pXSwsCiAgICAgW2VuYWJsZV9hbWJpc29uaWNzPW5vXSkKQEAgLTc4MSw2ICs3OTAs
NyBAQCBBQ19BUkdfRU5BQkxFKFtkb2NdLAogCiBBU19JRihbdGVzdCAiJGVuYWJsZV9kb2MiID0g
InllcyJdLCBbCiAgIEFDX0NIRUNLX1BST0coSEFWRV9ET1hZR0VOLCBbZG94eWdlbl0sIFt5ZXNd
LCBbbm9dKQorICBBQ19DSEVDS19QUk9HKEhBVkVfRE9ULCBbZG90XSwgW3llc10sIFtub10pCiBd
LFsKICAgSEFWRV9ET1hZR0VOPW5vCiBdKQpAQCAtNzk0LDYgKzgwNCwxNSBAQCBBQ19BUkdfRU5B
QkxFKFtleHRyYS1wcm9ncmFtc10sCiBBTV9DT05ESVRJT05BTChbRVhUUkFfUFJPR1JBTVNdLCBb
dGVzdCAiJGVuYWJsZV9leHRyYV9wcm9ncmFtcyIgPSAieWVzIl0pCiAKIAorQUNfQVJHX0VOQUJM
RShbdXBkYXRlLWRyYWZ0XSwKKyAgQVNfSEVMUF9TVFJJTkcoWy0tZW5hYmxlLXVwZGF0ZS1kcmFm
dF0sIFtFbmFibGUgYml0c3RyZWFtIGNoYW5nZXMgZnJvbSBkcmFmdC1pZXRmLWNvZGVjLW9wdXMt
dXBkYXRlXSksLAorICBbZW5hYmxlX3VwZGF0ZV9kcmFmdD1ub10pCisKK0FTX0lGKFt0ZXN0ICIk
ZW5hYmxlX3VwZGF0ZV9kcmFmdCIgPSAieWVzIl0sIFsKKyAgQUNfREVGSU5FKFtFTkFCTEVfVVBE
QVRFX0RSQUZUXSwgWzFdLCBbRW5hYmxlIGJpdHN0cmVhbSBjaGFuZ2VzIGZyb20gZHJhZnQtaWV0
Zi1jb2RlYy1vcHVzLXVwZGF0ZV0pCitdKQorCisKIHNhdmVkX0NGTEFHUz0iJENGTEFHUyIKIENG
TEFHUz0iJENGTEFHUyAtZnZpc2liaWxpdHk9aGlkZGVuIgogQUNfTVNHX0NIRUNLSU5HKFtpZiAk
e0NDfSBzdXBwb3J0cyAtZnZpc2liaWxpdHk9aGlkZGVuXSkKQEAgLTg1OSw3ICs4NzgsOCBAQCBB
Q19NU0dfTk9USUNFKFsKICAgICAgIEN1c3RvbSBtb2RlczogLi4uLi4uLi4uLi4uLi4uLi4uICR7
ZW5hYmxlX2N1c3RvbV9tb2Rlc30KICAgICAgIEFzc2VydGlvbiBjaGVja2luZzogLi4uLi4uLi4u
Li4uICR7ZW5hYmxlX2Fzc2VydGlvbnN9CiAgICAgICBGdXp6aW5nOiAuLi4uLi4uLi4uLi4uLi4u
Li4uLi4uLiAke2VuYWJsZV9mdXp6aW5nfQotICAgICAgQW1iaXNvbmljcyBzdXBwb3J0OiAuLi4u
Li4uLi4uLi4uJHtlbmFibGVfYW1iaXNvbmljc30KKyAgICAgIENoZWNrIEFTTTogLi4uLi4uLi4u
Li4uLi4uLi4uLi4uICR7ZW5hYmxlX2NoZWNrX2FzbX0KKyAgICAgIEFtYmlzb25pY3Mgc3VwcG9y
dDogLi4uLi4uLi4uLi4uICR7ZW5hYmxlX2FtYmlzb25pY3N9CiAKICAgICAgIEFQSSBkb2N1bWVu
dGF0aW9uOiAuLi4uLi4uLi4uLi4uICR7ZW5hYmxlX2RvY30KICAgICAgIEV4dHJhIHByb2dyYW1z
OiAuLi4uLi4uLi4uLi4uLi4uICR7ZW5hYmxlX2V4dHJhX3Byb2dyYW1zfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9k
b2MvRG94eWZpbGUuaW4gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2RvYy9Eb3h5ZmlsZS5pbgppbmRleCBjZDc3Njc1MmQ0OTY3ZGRlNjE4
ZjkwMDcyN2Q2NzA1ZTVkYzg3YTBmLi4zNmVlZTBiNTM4MGI4MDQzMjc5NjMxMDI2Nzg1MmNiMTYy
YTQ2YmQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2RvYy9Eb3h5ZmlsZS5pbgorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9Eb3h5ZmlsZS5pbgpA
QCAtMzE4LDMgKzMxOCwxOCBAQCBQUkVERUZJTkVEICAgICAgICAgICAgID0gT1BVU19FWFBPUlQ9
IFwKICAgICAgICAgICAgICAgICAgICAgICAgICBPUFVTX0NVU1RPTV9FWFBPUlRfU1RBVElDPSBc
CiAgICAgICAgICAgICAgICAgICAgICAgICAgT1BVU19XQVJOX1VOVVNFRF9SRVNVTFQ9IFwKICAg
ICAgICAgICAgICAgICAgICAgICAgICBPUFVTX0FSR19OT05OVUxMKF94KT0KKworIy0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQorIyBDb25maWd1cmF0aW9uIG9wdGlvbnMgcmVsYXRlZCB0byB0aGUgZG90IHRv
b2wKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBJZiB5b3Ugc2V0IHRoZSBIQVZFX0RPVCB0YWcg
dG8gWUVTIHRoZW4gZG94eWdlbiB3aWxsIGFzc3VtZSB0aGUgZG90IHRvb2wgaXMKKyMgYXZhaWxh
YmxlIGZyb20gdGhlIHBhdGguIFRoaXMgdG9vbCBpcyBwYXJ0IG9mIEdyYXBodml6IChzZWU6Cisj
IGh0dHA6Ly93d3cuZ3JhcGh2aXoub3JnLyksIGEgZ3JhcGggdmlzdWFsaXphdGlvbiB0b29sa2l0
IGZyb20gQVQmVCBhbmQgTHVjZW50CisjIEJlbGwgTGFicy4KKworIyBEZWJpYW4gZGVmYXVsdHMg
dG8gWUVTIGhlcmUsIHdoaWxlIEZlZG9yYSBhbmQgSG9tZWJyZXcgZGVmYXVsdCB0byBOTy4KKyMg
U28gd2Ugc2V0IHRoaXMgYmFzZWQgb24gd2hldGhlciB0aGUgZ3JhcGh2aXogcGFja2FnZSBpcyBh
dmFpbGFibGUgYXQKKyMgY29uZmlndXJlIHRpbWUuCisjCitIQVZFX0RPVCA9IEBIQVZFX0RPVEAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvZG9jL1RPRE8gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9UT0RPCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA5ZTFjMmQ1MTNjNGQ0OWY0YTFkMmViZjEyM2VjYzFiNWY3YzFhNjY3Li4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL1RPRE8KKysrIC9kZXYvbnVs
bApAQCAtMSw3ICswLDAgQEAKLWRlZmluZSBhdWRpbyBiYW5kd2lkdGggYXMgZnJlcXVlbmN5IHJh
bmdlCi0KLXJlcGVhdCBwYWRkaW5nIHJlY29tbWVuZGF0aW9uCi0KLXB0aW1lOiByZWZlciB0byBS
RkMKLQotT3B1cyBkb2VzIG5vdCBwcm92aWRlIGFueSBjb25maWRlbnRpYWxpdHkgb3IgaW50ZWdy
aXR5IHByb3RlY3Rpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1aWxkX2RyYWZ0LnNoIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvYnVpbGRf
ZHJhZnQuc2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uZDE1YjIyYTc5YjM0NmMwZWFmZDA0NGVlMWUwYjRhMjYyNzU4
NGQ5MgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1aWxkX2RyYWZ0LnNoCkBAIC0wLDAgKzEsMTA0
IEBACisjIS9iaW4vc2gKKworIyBDb3B5cmlnaHQgKGMpIDIwMTEtMjAxMiBYaXBoLk9yZyBGb3Vu
ZGF0aW9uIGFuZCBNb3ppbGxhIENvcnBvcmF0aW9uCisjCisjICBUaGlzIGZpbGUgaXMgZXh0cmFj
dGVkIGZyb20gUkZDNjcxNi4gUGxlYXNlIHNlZSB0aGF0IFJGQyBmb3IgYWRkaXRpb25hbAorIyAg
aW5mb3JtYXRpb24uCisjCisjICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworIyAgYXJlIG1ldDoK
KyMKKyMgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyMgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMKKyMgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyMgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisjCisjICAtIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29j
aWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCisjICBuYW1lcyBvZiBzcGVjaWZpYyBj
b250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQorIyAgcHJvZHVj
dHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0
dGVuCisjICBwZXJtaXNzaW9uLgorIworIyAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAgYGBBUyBJUycnIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyAg
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SCisjICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorIyAgT1IgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisj
ICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisjICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyMgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyMgIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HCisjICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMKKyMgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCisjU3RvcCBvbiBlcnJvcnMKK3NldCAtZQorI1Nl
dCB0aGUgQ1dEIHRvIHRoZSBsb2NhdGlvbiBvZiB0aGlzIHNjcmlwdAorWyAtbiAiJHswJS8qfSIg
XSAmJiBjZCAiJHswJS8qfSIKKwordG9wbGV2ZWw9Ii4uIgorZGVzdGRpcj0ib3B1c19zb3VyY2Ui
CisKK2VjaG8gcGFja2FnaW5nIHNvdXJjZSBjb2RlCitybSAtcmYgIiR7ZGVzdGRpcn0iCitta2Rp
ciAiJHtkZXN0ZGlyfSIKK21rZGlyICIke2Rlc3RkaXJ9L3NyYyIKK21rZGlyICIke2Rlc3RkaXJ9
L3NpbGsiCitta2RpciAiJHtkZXN0ZGlyfS9zaWxrL2Zsb2F0IgorbWtkaXIgIiR7ZGVzdGRpcn0v
c2lsay9maXhlZCIKK21rZGlyICIke2Rlc3RkaXJ9L2NlbHQiCitta2RpciAiJHtkZXN0ZGlyfS9p
bmNsdWRlIgorZm9yIGYgaW4gYGNhdCAiJHt0b3BsZXZlbH0iL29wdXNfc291cmNlcy5tayAiJHt0
b3BsZXZlbH0iL2NlbHRfc291cmNlcy5tayBcCisgIiR7dG9wbGV2ZWx9Ii9zaWxrX3NvdXJjZXMu
bWsgIiR7dG9wbGV2ZWx9Ii9vcHVzX2hlYWRlcnMubWsgXAorICIke3RvcGxldmVsfSIvY2VsdF9o
ZWFkZXJzLm1rICIke3RvcGxldmVsfSIvc2lsa19oZWFkZXJzLm1rIFwKKyB8IGdyZXAgJ1wuW2No
XScgfCBzZWQgLWUgJ3MvXi4qPS8vJyAtZSAncy9cXFxcLy8nYCA7IGRvCisgIGNwIC1hICIke3Rv
cGxldmVsfS8ke2Z9IiAiJHtkZXN0ZGlyfS8ke2Z9IgorZG9uZQorY3AgLWEgIiR7dG9wbGV2ZWx9
Ii9zcmMvb3B1c19kZW1vLmMgIiR7ZGVzdGRpcn0iL3NyYy8KK2NwIC1hICIke3RvcGxldmVsfSIv
c3JjL29wdXNfY29tcGFyZS5jICIke2Rlc3RkaXJ9Ii9zcmMvCitjcCAtYSAiJHt0b3BsZXZlbH0i
L2NlbHQvb3B1c19jdXN0b21fZGVtby5jICIke2Rlc3RkaXJ9Ii9jZWx0LworY3AgLWEgIiR7dG9w
bGV2ZWx9Ii9NYWtlZmlsZS51bml4ICIke2Rlc3RkaXJ9Ii9NYWtlZmlsZQorY3AgLWEgIiR7dG9w
bGV2ZWx9Ii9vcHVzX3NvdXJjZXMubWsgIiR7ZGVzdGRpcn0iLworY3AgLWEgIiR7dG9wbGV2ZWx9
Ii9jZWx0X3NvdXJjZXMubWsgIiR7ZGVzdGRpcn0iLworY3AgLWEgIiR7dG9wbGV2ZWx9Ii9zaWxr
X3NvdXJjZXMubWsgIiR7ZGVzdGRpcn0iLworY3AgLWEgIiR7dG9wbGV2ZWx9Ii9SRUFETUUuZHJh
ZnQgIiR7ZGVzdGRpcn0iL1JFQURNRQorY3AgLWEgIiR7dG9wbGV2ZWx9Ii9DT1BZSU5HICIke2Rl
c3RkaXJ9Ii9DT1BZSU5HCitjcCAtYSAiJHt0b3BsZXZlbH0iL3Rlc3RzL3J1bl92ZWN0b3JzLnNo
ICIke2Rlc3RkaXJ9Ii8KKworR1pJUD0tOSB0YXIgLS1vd25lcj1yb290IC0tZ3JvdXA9cm9vdCAt
LWZvcm1hdD12NyAtY3pmIG9wdXNfc291cmNlLnRhci5neiAiJHtkZXN0ZGlyfSIKK2VjaG8gYnVp
bGRpbmcgYmFzZTY0IHZlcnNpb24KK2NhdCBvcHVzX3NvdXJjZS50YXIuZ3p8IGJhc2U2NCB8IHRy
IC1kICdcbicgfCBmb2xkIC13IDY0IHwgXAorIHNlZCAtZSAncy9eL1w8c3Bhbnggc3R5bGU9InZi
YXJlIlw+IyMjLycgLWUgJ3MvJC9cPFwvc3BhbnhcPlw8dnNwYWNlXC9cPi8nID4gXAorIG9wdXNf
c291cmNlLmJhc2U2NAorCisKKyNlY2hvICc8ZmlndXJlPicgPiBvcHVzX2NvbXBhcmVfZXNjYXBl
ZC5jCisjZWNobyAnPGFydHdvcms+JyA+PiBvcHVzX2NvbXBhcmVfZXNjYXBlZC5jCisjZWNobyAn
PCFbQ0RBVEFbJyA+PiBvcHVzX2NvbXBhcmVfZXNjYXBlZC5jCisjY2F0IG9wdXNfY29tcGFyZS5j
ID4+IG9wdXNfY29tcGFyZV9lc2NhcGVkLmMKKyNlY2hvICddXT4nID4+IG9wdXNfY29tcGFyZV9l
c2NhcGVkLmMKKyNlY2hvICc8L2FydHdvcms+JyA+PiBvcHVzX2NvbXBhcmVfZXNjYXBlZC5jCisj
ZWNobyAnPC9maWd1cmU+JyA+PiBvcHVzX2NvbXBhcmVfZXNjYXBlZC5jCisKK2lmIFtbICEgLWQg
Li4vb3B1c190ZXN0dmVjdG9ycyBdXSA7IHRoZW4KKyAgZWNobyAiRG93bmxvYWRpbmcgdGVzdCB2
ZWN0b3JzLi4uIgorICB3Z2V0ICdodHRwOi8vb3B1cy1jb2RlYy5vcmcvdGVzdHZlY3RvcnMvb3B1
c190ZXN0dmVjdG9ycy50YXIuZ3onCisgIHRhciAtQyAuLiAteHZ6ZiBvcHVzX3Rlc3R2ZWN0b3Jz
LnRhci5negorZmkKK2VjaG8gJzxmaWd1cmU+JyA+IHRlc3R2ZWN0b3JzX3NoYTEKK2VjaG8gJzxh
cnR3b3JrPicgPj4gdGVzdHZlY3RvcnNfc2hhMQorZWNobyAnPCFbQ0RBVEFbJyA+PiB0ZXN0dmVj
dG9yc19zaGExCisoY2QgLi4vb3B1c190ZXN0dmVjdG9yczsgc2hhMXN1bSAqLmJpdCAqLmRlYykg
Pj4gdGVzdHZlY3RvcnNfc2hhMQorI2NkIG9wdXNfdGVzdHZlY3RvcnMKKyNzaGExc3VtICouYml0
ICouZGVjID4+IC4uL3Rlc3R2ZWN0b3JzX3NoYTEKKyNjZCAuLgorZWNobyAnXV0+JyA+PiB0ZXN0
dmVjdG9yc19zaGExCitlY2hvICc8L2FydHdvcms+JyA+PiB0ZXN0dmVjdG9yc19zaGExCitlY2hv
ICc8L2ZpZ3VyZT4nID4+IHRlc3R2ZWN0b3JzX3NoYTEKKworZWNobyBydW5uaW5nIHhtbDJyZmMK
K3htbDJyZmMgZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLnhtbCBkcmFmdC1pZXRmLWNvZGVjLW9wdXMu
aHRtbCAmCit4bWwycmZjIGRyYWZ0LWlldGYtY29kZWMtb3B1cy54bWwKK3dhaXQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvZG9jL2J1aWxkX2lzb2JtZmYuc2ggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9idWlsZF9pc29ibWZmLnNoCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
Ljk1ZWEyMDJlNGFmZWVkZjQ5NWNmZTI4YWEzMjhjOGI5ZWJlZjVjZjgKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2RvYy9idWlsZF9pc29ibWZmLnNoCkBAIC0wLDAgKzEsNTAgQEAKKyMhL2Jpbi9zaAorCisj
IENvcHlyaWdodCAoYykgMjAxNCBYaXBoLk9yZyBGb3VuZGF0aW9uIGFuZCBNb3ppbGxhIEZvdW5k
YXRpb24KKyMKKyMgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorIyAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjICBhcmUgbWV0OgorIworIyAg
LSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorIyAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorIworIyAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorIyAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyMKKyMgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyMgIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UgorIyAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyMgIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorIyAgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAorIyAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SCisjICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisjICBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworIyAgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTCisjICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKworI1N0b3Agb24gZXJyb3JzCitzZXQgLWUKKyNTZXQgdGhlIENXRCB0
byB0aGUgbG9jYXRpb24gb2YgdGhpcyBzY3JpcHQKK1sgLW4gIiR7MCUvKn0iIF0gJiYgY2QgIiR7
MCUvKn0iCisKK0hUTUw9b3B1c19pbl9pc29ibWZmLmh0bWwKKworZWNobyBkb3dubG9hZGluZyB1
cGRhdGVzLi4uCitDU1M9JHtIVE1MJSUuaHRtbH0uY3NzCit3Z2V0IC1xIGh0dHA6Ly92ZnJtYW5p
YWMuZnVzaGl6ZW4uZXUvY29udGVudHMvJHtIVE1MfSAtTyAke0hUTUx9Cit3Z2V0IC1xIGh0dHA6
Ly92ZnJtYW5pYWMuZnVzaGl6ZW4uZXUvc3R5bGUuY3NzIC1PICR7Q1NTfQorCitlY2hvIHVwZGF0
aW5nIGxpbmtzLi4uCitjYXQgJHtIVE1MfSB8IHNlZCAtZSAicy9cXC5cXC5cXC9zdHlsZS5jc3Mv
JHtDU1N9LyIgPiAke0hUTUx9KyAmJiBtdiAke0hUTUx9KyAke0hUTUx9CisKK2VjaG8gc3RyaXBw
aW5nLi4uCitjYXQgJHtIVE1MfSB8IHNlZCAtZSAncy88IS0tLiotLT4vL2cnID4gJHtIVE1MfSsg
JiYgbXYgJHtIVE1MfSsgJHtIVE1MfQorY2F0ICR7SFRNTH0gfCBzZWQgLWUgJ3MvICokLy9nJyA+
ICR7SFRNTH0rICYmIG12ICR7SFRNTH0rICR7SFRNTH0KK2NhdCAke0NTU30gIHwgc2VkIC1lICdz
LyAqJC8vZycgPiAke0NTU30rICYmIG12ICR7Q1NTfSsgJHtDU1N9CisKKworVkVSU0lPTj0kKGZn
cmVwIFZlcnNpb24gJHtIVE1MfSB8IHNlZCAncy8uKlZlcnNpb24gXChbMC05XVwuWzAtOV1cLlsw
LTldXCkuKi9cMS8nKQorZWNobyBOb3cgYXQgdmVyc2lvbiAke1ZFUlNJT059CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2RvYy9idWlsZF9vZ2dkcmFmdC5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1aWxkX29nZ2RyYWZ0LnNoCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjMwZWU1MzRiMGQ2MDY3NTAzZjQ0YTJkZDQ3MjI3NGNiNzAyM2Q1NDgKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2RvYy9idWlsZF9vZ2dkcmFmdC5zaApAQCAtMCwwICsxLDUyIEBACisjIS9iaW4vc2gKKwor
IyBDb3B5cmlnaHQgKGMpIDIwMTIgWGlwaC5PcmcgRm91bmRhdGlvbiBhbmQgTW96aWxsYSBDb3Jw
b3JhdGlvbgorIworIyAgVGhpcyBmaWxlIGlzIGV4dHJhY3RlZCBmcm9tIFJGQzY3MTYuIFBsZWFz
ZSBzZWUgdGhhdCBSRkMgZm9yIGFkZGl0aW9uYWwKKyMgIGluZm9ybWF0aW9uLgorIworIyAgUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisjICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyMgIGFyZSBtZXQ6CisjCisjICAtIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisjCisjICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisjICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisjICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorIworIyAg
LSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVz
dCwgbm9yIHRoZQorIyAgbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUKKyMgIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorIyAgcGVybWlzc2lvbi4KKyMK
KyMgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMKKyMgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyMgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorIyAgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQgT1dORVIKKyMgIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorIyAgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorIyAgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCisjICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GCisjICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworIyAgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisjICBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKworI1N0b3Agb24gZXJyb3JzCitzZXQgLWUKKyNTZXQgdGhlIENXRCB0byB0aGUgbG9jYXRp
b24gb2YgdGhpcyBzY3JpcHQKK1sgLW4gIiR7MCUvKn0iIF0gJiYgY2QgIiR7MCUvKn0iCisKK2lm
IHRlc3QgLXogYHdoaWNoIHhtbDJyZmMgMj4gL2Rldi9udWxsYDsgdGhlbgorICBlY2hvICJFcnJv
cjogY291bGRuJ3QgZmluZCB4bWwycmZjLiIKKyAgZWNobworICBlY2hvICJQbGVhc2UgaW5zdGFs
bCB4bWwycmZjIHZlcnNpb24gMiBvciBsYXRlci4iCisgIGVjaG8gIkUuZy4gJ3BpcCBpbnN0YWxs
IHhtbDJyZmMnIG9yIGZvbGxvdyB0aGUgaW5zdHJ1Y3Rpb25zIgorICBlY2hvICJvbiBodHRwOi8v
cHlwaS5weXRob24ub3JnL3B5cGkveG1sMnJmYy8gb3IgdG9vbHMuaWV0Zi5vcmcuIgorICBleGl0
IDEKK2ZpCisKK2VjaG8gcnVubmluZyB4bWwycmZjCisjIHZlcnNpb24gMiBzeW50YXgKK3htbDJy
ZmMgZHJhZnQtaWV0Zi1jb2RlYy1vZ2dvcHVzLnhtbCAtLXRleHQgLS1odG1sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2RvYy9kcmFmdC1pZXRmLWNvZGVjLW9nZ29wdXMueG1sIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1v
Z2dvcHVzLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMjg4MTZlOTM1ZTg1OWM2MzAzNWNkOTVmZjA0YTc1ZGQ1
ZjVlZTE4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1vZ2dvcHVzLnht
bApAQCAtMCwwICsxLDE4NzMgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04
Ij8+Cis8IS0tCisgICBDb3B5cmlnaHQgKGMpIDIwMTItMjAxNiBYaXBoLk9yZyBGb3VuZGF0aW9u
IGFuZCBjb250cmlidXRvcnMKKworICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBt
ZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJUycnIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICAgTElN
SVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
CisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCisgICBTcGVjaWFsIHBlcm1pc3Npb24gaXMgZ3JhbnRl
ZCB0byByZW1vdmUgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIGxpc3Qgb2YKKyAgIGNvbmRp
dGlvbnMsIGFuZCBkaXNjbGFpbWVyIHdoZW4gc3VibWl0dGluZyB0aGlzIGRvY3VtZW50LCB3aXRo
IG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgdG8gdGhlIElFVEYuCistLT4KKzwhRE9DVFlQ
RSByZmMgU1lTVEVNICdyZmMyNjI5LmR0ZCcgWworPCFFTlRJVFkgcmZjMjExOSBQVUJMSUMgJycg
J2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMu
MjExOS54bWwnPgorPCFFTlRJVFkgcmZjMzUzMyBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3Vy
Y2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzUzMy54bWwnPgorPCFFTlRJ
VFkgcmZjMzYyOSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMv
YmlieG1sL3JlZmVyZW5jZS5SRkMuMzYyOS54bWwnPgorPCFFTlRJVFkgcmZjNDczMiBQVUJMSUMg
JycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5S
RkMuNDczMi54bWwnPgorPCFFTlRJVFkgcmZjNTIyNiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVz
b3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNTIyNi54bWwnPgorPCFF
TlRJVFkgcmZjNTMzNCBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9y
ZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNTMzNC54bWwnPgorPCFFTlRJVFkgcmZjNjM4MSBQVUJM
SUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5j
ZS5SRkMuNjM4MS54bWwnPgorPCFFTlRJVFkgcmZjNjcxNiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwu
cmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNjcxNi54bWwnPgor
PCFFTlRJVFkgcmZjNjk4MiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1Ymxp
Yy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNjk4Mi54bWwnPgorPCFFTlRJVFkgcmZjNzU4NyBQ
VUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVy
ZW5jZS5SRkMuNzU4Ny54bWwnPgorXT4KKzw/cmZjIHRvYz0ieWVzIiBzeW1yZWZzPSJ5ZXMiID8+
CisKKzxyZmMgaXByPSJ0cnVzdDIwMDkwMiIgY2F0ZWdvcnk9InN0ZCIgZG9jTmFtZT0iZHJhZnQt
aWV0Zi1jb2RlYy1vZ2dvcHVzLTE0IgorIHVwZGF0ZXM9IjUzMzQiPgorCis8ZnJvbnQ+Cis8dGl0
bGUgYWJicmV2PSJPZ2cgT3B1cyI+T2dnIEVuY2Fwc3VsYXRpb24gZm9yIHRoZSBPcHVzIEF1ZGlv
IENvZGVjPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IlQuQi4iIHN1cm5hbWU9IlRlcnJpYmVy
cnkiIGZ1bGxuYW1lPSJUaW1vdGh5IEIuIFRlcnJpYmVycnkiPgorPG9yZ2FuaXphdGlvbj5Nb3pp
bGxhIENvcnBvcmF0aW9uPC9vcmdhbml6YXRpb24+Cis8YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3Ry
ZWV0PjY1MCBDYXN0cm8gU3RyZWV0PC9zdHJlZXQ+Cis8Y2l0eT5Nb3VudGFpbiBWaWV3PC9jaXR5
PgorPHJlZ2lvbj5DQTwvcmVnaW9uPgorPGNvZGU+OTQwNDE8L2NvZGU+Cis8Y291bnRyeT5VU0E8
L2NvdW50cnk+Cis8L3Bvc3RhbD4KKzxwaG9uZT4rMSA2NTAgOTAzLTA4MDA8L3Bob25lPgorPGVt
YWlsPnR0ZXJyaWJlQHhpcGgub3JnPC9lbWFpbD4KKzwvYWRkcmVzcz4KKzwvYXV0aG9yPgorCis8
YXV0aG9yIGluaXRpYWxzPSJSLiIgc3VybmFtZT0iTGVlIiBmdWxsbmFtZT0iUm9uIExlZSI+Cis8
b3JnYW5pemF0aW9uPlZvaWNldHJvbml4PC9vcmdhbml6YXRpb24+Cis8YWRkcmVzcz4KKzxwb3N0
YWw+Cis8c3RyZWV0PjI0NiBQdWx0ZW5leSBTdHJlZXQsIExldmVsIDE8L3N0cmVldD4KKzxjaXR5
PkFkZWxhaWRlPC9jaXR5PgorPHJlZ2lvbj5TQTwvcmVnaW9uPgorPGNvZGU+NTAwMDwvY29kZT4K
Kzxjb3VudHJ5PkF1c3RyYWxpYTwvY291bnRyeT4KKzwvcG9zdGFsPgorPHBob25lPis2MSA4IDgy
MzIgOTExMjwvcGhvbmU+Cis8ZW1haWw+cm9uQGRlYmlhbi5vcmc8L2VtYWlsPgorPC9hZGRyZXNz
PgorPC9hdXRob3I+CisKKzxhdXRob3IgaW5pdGlhbHM9IlIuIiBzdXJuYW1lPSJHaWxlcyIgZnVs
bG5hbWU9IlJhbHBoIEdpbGVzIj4KKzxvcmdhbml6YXRpb24+TW96aWxsYSBDb3Jwb3JhdGlvbjwv
b3JnYW5pemF0aW9uPgorPGFkZHJlc3M+Cis8cG9zdGFsPgorPHN0cmVldD4xNjMgV2VzdCBIYXN0
aW5ncyBTdHJlZXQ8L3N0cmVldD4KKzxjaXR5PlZhbmNvdXZlcjwvY2l0eT4KKzxyZWdpb24+QkM8
L3JlZ2lvbj4KKzxjb2RlPlY2QiAxSDU8L2NvZGU+Cis8Y291bnRyeT5DYW5hZGE8L2NvdW50cnk+
Cis8L3Bvc3RhbD4KKzxwaG9uZT4rMSA3NzggNzg1IDE1NDA8L3Bob25lPgorPGVtYWlsPmdpbGVz
QHhpcGgub3JnPC9lbWFpbD4KKzwvYWRkcmVzcz4KKzwvYXV0aG9yPgorCis8ZGF0ZSBkYXk9IjIy
IiBtb250aD0iRmVicnVhcnkiIHllYXI9IjIwMTYiLz4KKzxhcmVhPlJBSTwvYXJlYT4KKzx3b3Jr
Z3JvdXA+Y29kZWM8L3dvcmtncm91cD4KKworPGFic3RyYWN0PgorPHQ+CitUaGlzIGRvY3VtZW50
IGRlZmluZXMgdGhlIE9nZyBlbmNhcHN1bGF0aW9uIGZvciB0aGUgT3B1cyBpbnRlcmFjdGl2ZSBz
cGVlY2ggYW5kCisgYXVkaW8gY29kZWMuCitUaGlzIGFsbG93cyBkYXRhIGVuY29kZWQgaW4gdGhl
IE9wdXMgZm9ybWF0IHRvIGJlIHN0b3JlZCBpbiBhbiBPZ2cgbG9naWNhbAorIGJpdHN0cmVhbS4K
KzwvdD4KKzwvYWJzdHJhY3Q+Cis8L2Zyb250PgorCis8bWlkZGxlPgorPHNlY3Rpb24gYW5jaG9y
PSJpbnRybyIgdGl0bGU9IkludHJvZHVjdGlvbiI+Cis8dD4KK1RoZSBJRVRGIE9wdXMgY29kZWMg
aXMgYSBsb3ctbGF0ZW5jeSBhdWRpbyBjb2RlYyBvcHRpbWl6ZWQgZm9yIGJvdGggdm9pY2UgYW5k
CisgZ2VuZXJhbC1wdXJwb3NlIGF1ZGlvLgorU2VlIDx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPiBm
b3IgdGVjaG5pY2FsIGRldGFpbHMuCitUaGlzIGRvY3VtZW50IGRlZmluZXMgdGhlIGVuY2Fwc3Vs
YXRpb24gb2YgT3B1cyBpbiBhIGNvbnRpbnVvdXMsIGxvZ2ljYWwgT2dnCisgYml0c3RyZWFtJm5i
c3A7PHhyZWYgdGFyZ2V0PSJSRkMzNTMzIi8+LgorT2dnIGVuY2Fwc3VsYXRpb24gcHJvdmlkZXMg
T3B1cyB3aXRoIGEgbG9uZy10ZXJtIHN0b3JhZ2UgZm9ybWF0IHN1cHBvcnRpbmcKKyBhbGwgb2Yg
dGhlIGVzc2VudGlhbCBmZWF0dXJlcywgaW5jbHVkaW5nIG1ldGFkYXRhLCBmYXN0IGFuZCBhY2N1
cmF0ZSBzZWVraW5nLAorIGNvcnJ1cHRpb24gZGV0ZWN0aW9uLCByZWNhcHR1cmUgYWZ0ZXIgZXJy
b3JzLCBsb3cgb3ZlcmhlYWQsIGFuZCB0aGUgYWJpbGl0eSB0bworIG11bHRpcGxleCBPcHVzIHdp
dGggb3RoZXIgY29kZWNzIChpbmNsdWRpbmcgdmlkZW8pIHdpdGggbWluaW1hbCBidWZmZXJpbmcu
CitJdCBhbHNvIHByb3ZpZGVzIGEgbGl2ZSBzdHJlYW1hYmxlIGZvcm1hdCwgY2FwYWJsZSBvZiBk
ZWxpdmVyeSBvdmVyIGEgcmVsaWFibGUKKyBzdHJlYW0tb3JpZW50ZWQgdHJhbnNwb3J0LCB3aXRo
b3V0IHJlcXVpcmluZyBhbGwgdGhlIGRhdGEsIG9yIGV2ZW4gdGhlIHRvdGFsCisgbGVuZ3RoIG9m
IHRoZSBkYXRhLCB1cC1mcm9udCwgaW4gYSBmb3JtIHRoYXQgaXMgaWRlbnRpY2FsIHRvIHRoZSBv
bi1kaXNrCisgc3RvcmFnZSBmb3JtYXQuCis8L3Q+Cis8dD4KK09nZyBiaXRzdHJlYW1zIGFyZSBt
YWRlIHVwIG9mIGEgc2VyaWVzIG9mICdwYWdlcycsIGVhY2ggb2Ygd2hpY2ggY29udGFpbnMgZGF0
YQorIGZyb20gb25lIG9yIG1vcmUgJ3BhY2tldHMnLgorUGFnZXMgYXJlIHRoZSBmdW5kYW1lbnRh
bCB1bml0IG9mIG11bHRpcGxleGluZyBpbiBhbiBPZ2cgc3RyZWFtLgorRWFjaCBwYWdlIGlzIGFz
c29jaWF0ZWQgd2l0aCBhIHBhcnRpY3VsYXIgbG9naWNhbCBzdHJlYW0gYW5kIGNvbnRhaW5zIGEg
Y2FwdHVyZQorIHBhdHRlcm4gYW5kIGNoZWNrc3VtLCBmbGFncyB0byBtYXJrIHRoZSBiZWdpbm5p
bmcgYW5kIGVuZCBvZiB0aGUgbG9naWNhbAorIHN0cmVhbSwgYW5kIGEgJ2dyYW51bGUgcG9zaXRp
b24nIHRoYXQgcmVwcmVzZW50cyBhbiBhYnNvbHV0ZSBwb3NpdGlvbiBpbiB0aGUKKyBzdHJlYW0s
IHRvIGFpZCBzZWVraW5nLgorQSBzaW5nbGUgcGFnZSBjYW4gY29udGFpbiB1cCB0byA2NSwwMjUg
b2N0ZXRzIG9mIHBhY2tldCBkYXRhIGZyb20gdXAgdG8gMjU1CisgZGlmZmVyZW50IHBhY2tldHMu
CitQYWNrZXRzIGNhbiBiZSBzcGxpdCBhcmJpdHJhcmlseSBhY3Jvc3MgcGFnZXMsIGFuZCBjb250
aW51ZWQgZnJvbSBvbmUgcGFnZSB0bworIHRoZSBuZXh0IChhbGxvd2luZyBwYWNrZXRzIG11Y2gg
bGFyZ2VyIHRoYW4gd291bGQgZml0IG9uIGEgc2luZ2xlIHBhZ2UpLgorRWFjaCBwYWdlIGNvbnRh
aW5zICdsYWNpbmcgdmFsdWVzJyB0aGF0IGluZGljYXRlIGhvdyB0aGUgZGF0YSBpcyBwYXJ0aXRp
b25lZAorIGludG8gcGFja2V0cywgYWxsb3dpbmcgYSBkZW11bHRpcGxleGVyIChkZW11eGVyKSB0
byByZWNvdmVyIHRoZSBwYWNrZXQKKyBib3VuZGFyaWVzIHdpdGhvdXQgZXhhbWluaW5nIHRoZSBl
bmNvZGVkIGRhdGEuCitBIHBhY2tldCBpcyBzYWlkIHRvICdjb21wbGV0ZScgb24gYSBwYWdlIHdo
ZW4gdGhlIHBhZ2UgY29udGFpbnMgdGhlIGZpbmFsCisgbGFjaW5nIHZhbHVlIGNvcnJlc3BvbmRp
bmcgdG8gdGhhdCBwYWNrZXQuCis8L3Q+Cis8dD4KK1RoaXMgZW5jYXBzdWxhdGlvbiBkZWZpbmVz
IHRoZSBjb250ZW50cyBvZiB0aGUgcGFja2V0IGRhdGEsIGluY2x1ZGluZworIHRoZSBuZWNlc3Nh
cnkgaGVhZGVycywgdGhlIG9yZ2FuaXphdGlvbiBvZiB0aG9zZSBwYWNrZXRzIGludG8gYSBsb2dp
Y2FsCisgc3RyZWFtLCBhbmQgdGhlIGludGVycHJldGF0aW9uIG9mIHRoZSBjb2RlYy1zcGVjaWZp
YyBncmFudWxlIHBvc2l0aW9uIGZpZWxkLgorSXQgZG9lcyBub3QgYXR0ZW1wdCB0byBkZXNjcmli
ZSBvciBzcGVjaWZ5IHRoZSBleGlzdGluZyBPZ2cgY29udGFpbmVyIGZvcm1hdC4KK1JlYWRlcnMg
dW5mYW1pbGlhciB3aXRoIHRoZSBiYXNpYyBjb25jZXB0cyBtZW50aW9uZWQgYWJvdmUgYXJlIGVu
Y291cmFnZWQgdG8KKyByZXZpZXcgdGhlIGRldGFpbHMgaW4gPHhyZWYgdGFyZ2V0PSJSRkMzNTMz
Ii8+LgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0idGVybWlub2xvZ3ki
IHRpdGxlPSJUZXJtaW5vbG9neSI+Cis8dD4KK1RoZSBrZXkgd29yZHMgIk1VU1QiLCAiTVVTVCBO
T1QiLCAiUkVRVUlSRUQiLCAiU0hBTEwiLCAiU0hBTEwgTk9UIiwgIlNIT1VMRCIsCisgIlNIT1VM
RCBOT1QiLCAiUkVDT01NRU5ERUQiLCAiTk9UIFJFQ09NTUVOREVEIiwgIk1BWSIsIGFuZCAiT1BU
SU9OQUwiIGluIHRoaXMKKyBkb2N1bWVudCBhcmUgdG8gYmUgaW50ZXJwcmV0ZWQgYXMgZGVzY3Jp
YmVkIGluIDx4cmVmIHRhcmdldD0iUkZDMjExOSIvPi4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8
c2VjdGlvbiBhbmNob3I9InBhY2tldF9vcmdhbml6YXRpb24iIHRpdGxlPSJQYWNrZXQgT3JnYW5p
emF0aW9uIj4KKzx0PgorQW4gT2dnIE9wdXMgc3RyZWFtIGlzIG9yZ2FuaXplZCBhcyBmb2xsb3dz
IChzZWUKKyA8eHJlZiB0YXJnZXQ9InBhY2tldC1vcmctZXhhbXBsZSIvPiBmb3IgYW4gZXhhbXBs
ZSkuCis8L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSJwYWNrZXQtb3JnLWV4YW1wbGUiCisgdGl0bGU9
IkV4YW1wbGUgcGFja2V0IG9yZ2FuaXphdGlvbiBmb3IgYSBsb2dpY2FsIE9nZyBPcHVzIHN0cmVh
bSIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
ICAgIFBhZ2UgMCAgICAgICAgIFBhZ2VzIDEgLi4uIG4gICAgICAgIFBhZ2VzIChuKzEpIC4uLgor
ICstLS0tLS0tLS0tLS0rICstLS0rICstLS0rIC4uLiArLS0tKyArLS0tLS0tLS0tLS0rICstLS0t
LS0tLS0rICstLQorIHwgICAgICAgICAgICB8IHwgICB8IHwgICB8ICAgICB8ICAgfCB8ICAgICAg
ICAgICB8IHwgICAgICAgICB8IHwKKyB8Ky0tLS0tLS0tLS0rfCB8Ky0tLS0tLS0tLS0tLS0tLS0t
K3wgfCstLS0tLS0tLS0tLS0tLS0tLS0tKyArLS0tLS0KKyB8fHxJRCBIZWFkZXJ8fCB8fCAgQ29t
bWVudCBIZWFkZXIgfHwgfHxBdWRpbyBEYXRhIFBhY2tldCAxfCB8IC4uLgorIHwrLS0tLS0tLS0t
LSt8IHwrLS0tLS0tLS0tLS0tLS0tLS0rfCB8Ky0tLS0tLS0tLS0tLS0tLS0tLS0rICstLS0tLQor
IHwgICAgICAgICAgICB8IHwgICB8IHwgICB8ICAgICB8ICAgfCB8ICAgICAgICAgICB8IHwgICAg
ICAgICB8IHwKKyArLS0tLS0tLS0tLS0tKyArLS0tKyArLS0tKyAuLi4gKy0tLSsgKy0tLS0tLS0t
LS0tKyArLS0tLS0tLS0tKyArLS0KKyBeICAgICAgXiAgICAgICAgICAgICAgICAgICAgICAgICAg
IF4KKyB8ICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyB8ICAgICAgfCAgICAg
ICAgICAgICAgICAgICAgICAgICAgIE1hbmRhdG9yeSBQYWdlIEJyZWFrCisgfCAgICAgIHwKKyB8
ICAgICAgSUQgaGVhZGVyIGlzIGNvbnRhaW5lZCBvbiBhIHNpbmdsZSBwYWdlCisgfAorICdCZWdp
bm5pbmcgT2YgU3RyZWFtJworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0PgorVGhlcmUg
YXJlIHR3byBtYW5kYXRvcnkgaGVhZGVyIHBhY2tldHMuCitUaGUgZmlyc3QgcGFja2V0IGluIHRo
ZSBsb2dpY2FsIE9nZyBiaXRzdHJlYW0gTVVTVCBjb250YWluIHRoZSBpZGVudGlmaWNhdGlvbgor
IChJRCkgaGVhZGVyLCB3aGljaCB1bmlxdWVseSBpZGVudGlmaWVzIGEgc3RyZWFtIGFzIE9wdXMg
YXVkaW8uCitUaGUgZm9ybWF0IG9mIHRoaXMgaGVhZGVyIGlzIGRlZmluZWQgaW4gPHhyZWYgdGFy
Z2V0PSJpZF9oZWFkZXIiLz4uCitJdCBpcyBwbGFjZWQgYWxvbmUgKHdpdGhvdXQgYW55IG90aGVy
IHBhY2tldCBkYXRhKSBvbiB0aGUgZmlyc3QgcGFnZSBvZgorIHRoZSBsb2dpY2FsIE9nZyBiaXRz
dHJlYW0sIGFuZCBjb21wbGV0ZXMgb24gdGhhdCBwYWdlLgorVGhpcyBwYWdlIGhhcyBpdHMgJ2Jl
Z2lubmluZyBvZiBzdHJlYW0nIGZsYWcgc2V0LgorPC90PgorPHQ+CitUaGUgc2Vjb25kIHBhY2tl
dCBpbiB0aGUgbG9naWNhbCBPZ2cgYml0c3RyZWFtIE1VU1QgY29udGFpbiB0aGUgY29tbWVudCBo
ZWFkZXIsCisgd2hpY2ggY29udGFpbnMgdXNlci1zdXBwbGllZCBtZXRhZGF0YS4KK1RoZSBmb3Jt
YXQgb2YgdGhpcyBoZWFkZXIgaXMgZGVmaW5lZCBpbiA8eHJlZiB0YXJnZXQ9ImNvbW1lbnRfaGVh
ZGVyIi8+LgorSXQgTUFZIHNwYW4gbXVsdGlwbGUgcGFnZXMsIGJlZ2lubmluZyBvbiB0aGUgc2Vj
b25kIHBhZ2Ugb2YgdGhlIGxvZ2ljYWwKKyBzdHJlYW0uCitIb3dldmVyIG1hbnkgcGFnZXMgaXQg
c3BhbnMsIHRoZSBjb21tZW50IGhlYWRlciBwYWNrZXQgTVVTVCBmaW5pc2ggdGhlIHBhZ2Ugb24K
KyB3aGljaCBpdCBjb21wbGV0ZXMuCis8L3Q+Cis8dD4KK0FsbCBzdWJzZXF1ZW50IHBhZ2VzIGFy
ZSBhdWRpbyBkYXRhIHBhZ2VzLCBhbmQgdGhlIE9nZyBwYWNrZXRzIHRoZXkgY29udGFpbiBhcmUK
KyBhdWRpbyBkYXRhIHBhY2tldHMuCitFYWNoIGF1ZGlvIGRhdGEgcGFja2V0IGNvbnRhaW5zIG9u
ZSBPcHVzIHBhY2tldCBmb3IgZWFjaCBvZiBOIGRpZmZlcmVudAorIHN0cmVhbXMsIHdoZXJlIE4g
aXMgdHlwaWNhbGx5IG9uZSBmb3IgbW9ubyBvciBzdGVyZW8sIGJ1dCBNQVkgYmUgZ3JlYXRlciB0
aGFuCisgb25lIGZvciBtdWx0aWNoYW5uZWwgYXVkaW8uCitUaGUgdmFsdWUgTiBpcyBzcGVjaWZp
ZWQgaW4gdGhlIElEIGhlYWRlciAoc2VlCisgPHhyZWYgdGFyZ2V0PSJjaGFubmVsX21hcHBpbmci
Lz4pLCBhbmQgaXMgZml4ZWQgb3ZlciB0aGUgZW50aXJlIGxlbmd0aCBvZiB0aGUKKyBsb2dpY2Fs
IE9nZyBiaXRzdHJlYW0uCis8L3Q+Cis8dD4KK1RoZSBmaXJzdCAoTiZuYnNwOy0mbmJzcDsxKSBP
cHVzIHBhY2tldHMsIGlmIGFueSwgYXJlIHBhY2tlZCBvbmUgYWZ0ZXIgYW5vdGhlcgorIGludG8g
dGhlIE9nZyBwYWNrZXQsIHVzaW5nIHRoZSBzZWxmLWRlbGltaXRpbmcgZnJhbWluZyBmcm9tIEFw
cGVuZGl4Jm5ic3A7QiBvZgorIDx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPi4KK1RoZSByZW1haW5p
bmcgT3B1cyBwYWNrZXQgaXMgcGFja2VkIGF0IHRoZSBlbmQgb2YgdGhlIE9nZyBwYWNrZXQgdXNp
bmcgdGhlCisgcmVndWxhciwgdW5kZWxpbWl0ZWQgZnJhbWluZyBmcm9tIFNlY3Rpb24mbmJzcDsz
IG9mIDx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPi4KK0FsbCBvZiB0aGUgT3B1cyBwYWNrZXRzIGlu
IGEgc2luZ2xlIE9nZyBwYWNrZXQgTVVTVCBiZSBjb25zdHJhaW5lZCB0byBoYXZlIHRoZQorIHNh
bWUgZHVyYXRpb24uCitBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzIHNwZWNpZmljYXRpb24gU0hP
VUxEIHRyZWF0IGFueSBPcHVzIHBhY2tldCB3aG9zZQorIGR1cmF0aW9uIGlzIGRpZmZlcmVudCBm
cm9tIHRoYXQgb2YgdGhlIGZpcnN0IE9wdXMgcGFja2V0IGluIGFuIE9nZyBwYWNrZXQgYXMKKyBp
ZiBpdCB3ZXJlIGEgbWFsZm9ybWVkIE9wdXMgcGFja2V0IHdpdGggYW4gaW52YWxpZCBUYWJsZSBP
ZiBDb250ZW50cyAoVE9DKQorIHNlcXVlbmNlLgorPC90PgorPHQ+CitUaGUgVE9DIHNlcXVlbmNl
IGF0IHRoZSBiZWdpbm5pbmcgb2YgZWFjaCBPcHVzIHBhY2tldCBpbmRpY2F0ZXMgdGhlIGNvZGlu
ZworIG1vZGUsIGF1ZGlvIGJhbmR3aWR0aCwgY2hhbm5lbCBjb3VudCwgZHVyYXRpb24gKGZyYW1l
IHNpemUpLCBhbmQgbnVtYmVyIG9mCisgZnJhbWVzIHBlciBwYWNrZXQsIGFzIGRlc2NyaWJlZCBp
biBTZWN0aW9uJm5ic3A7My4xCisgb2YmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzY3MTYiLz4uCitU
aGUgY29kaW5nIG1vZGUgaXMgb25lIG9mIFNJTEssIEh5YnJpZCwgb3IgQ29uc3RyYWluZWQgRW5l
cmd5IExhcHBlZCBUcmFuc2Zvcm0KKyAoQ0VMVCkuCitUaGUgY29tYmluYXRpb24gb2YgY29kaW5n
IG1vZGUsIGF1ZGlvIGJhbmR3aWR0aCwgYW5kIGZyYW1lIHNpemUgaXMgcmVmZXJyZWQgdG8KKyBh
cyB0aGUgY29uZmlndXJhdGlvbiBvZiBhbiBPcHVzIHBhY2tldC4KKzwvdD4KKzx0PgorUGFja2V0
cyBhcmUgcGxhY2VkIGludG8gT2dnIHBhZ2VzIGluIG9yZGVyIHVudGlsIHRoZSBlbmQgb2Ygc3Ry
ZWFtLgorQXVkaW8gZGF0YSBwYWNrZXRzIG1pZ2h0IHNwYW4gcGFnZSBib3VuZGFyaWVzLgorVGhl
IGZpcnN0IGF1ZGlvIGRhdGEgcGFnZSBjb3VsZCBoYXZlIHRoZSAnY29udGludWVkIHBhY2tldCcg
ZmxhZyBzZXQKKyAoaW5kaWNhdGluZyB0aGUgZmlyc3QgYXVkaW8gZGF0YSBwYWNrZXQgaXMgY29u
dGludWVkIGZyb20gYSBwcmV2aW91cyBwYWdlKSBpZiwKKyBmb3IgZXhhbXBsZSwgaXQgd2FzIGEg
bGl2ZSBzdHJlYW0gam9pbmVkIG1pZC1icm9hZGNhc3QsIHdpdGggdGhlIGhlYWRlcnMKKyBwYXN0
ZWQgb24gdGhlIGZyb250LgorSWYgYSBwYWdlIGhhcyB0aGUgJ2NvbnRpbnVlZCBwYWNrZXQnIGZs
YWcgc2V0IGFuZCBvbmUgb2YgdGhlIGZvbGxvd2luZworIGNvbmRpdGlvbnMgaXMgYWxzbyB0cnVl
OgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+dGhlIHByZXZpb3VzIHBhZ2Ugd2l0aCBwYWNr
ZXQgZGF0YSBkb2VzIG5vdCBlbmQgaW4gYSBjb250aW51ZWQgcGFja2V0IChkb2VzCisgbm90IGVu
ZCB3aXRoIGEgbGFjaW5nIHZhbHVlIG9mIDI1NSkgT1I8L3Q+Cis8dD50aGUgcGFnZSBzZXF1ZW5j
ZSBudW1iZXJzIGFyZSBub3QgY29uc2VjdXRpdmUsPC90PgorPC9saXN0PgorIHRoZW4gYSBkZW11
eGVyIE1VU1QgTk9UIGF0dGVtcHQgdG8gZGVjb2RlIHRoZSBkYXRhIGZvciB0aGUgZmlyc3QgcGFj
a2V0IG9uIHRoZQorIHBhZ2UgdW5sZXNzIHRoZSBkZW11eGVyIGhhcyBzb21lIHNwZWNpYWwga25v
d2xlZGdlIHRoYXQgd291bGQgYWxsb3cgaXQgdG8KKyBpbnRlcnByZXQgdGhpcyBkYXRhIGRlc3Bp
dGUgdGhlIG1pc3NpbmcgcGllY2VzLgorQW4gaW1wbGVtZW50YXRpb24gTVVTVCB0cmVhdCBhIHpl
cm8tb2N0ZXQgYXVkaW8gZGF0YSBwYWNrZXQgYXMgaWYgaXQgd2VyZSBhCisgbWFsZm9ybWVkIE9w
dXMgcGFja2V0IGFzIGRlc2NyaWJlZCBpbgorIFNlY3Rpb24mbmJzcDszLjQgb2YmbmJzcDs8eHJl
ZiB0YXJnZXQ9IlJGQzY3MTYiLz4uCis8L3Q+Cis8dD4KK0EgbG9naWNhbCBzdHJlYW0gZW5kcyB3
aXRoIGEgcGFnZSB3aXRoIHRoZSAnZW5kIG9mIHN0cmVhbScgZmxhZyBzZXQsIGJ1dAorIGltcGxl
bWVudGF0aW9ucyBuZWVkIHRvIGJlIHByZXBhcmVkIHRvIGRlYWwgd2l0aCB0cnVuY2F0ZWQgc3Ry
ZWFtcyB0aGF0IGRvIG5vdAorIGhhdmUgYSBwYWdlIG1hcmtlZCAnZW5kIG9mIHN0cmVhbScuCitU
aGVyZSBpcyBubyByZWFzb24gZm9yIHRoZSBmaW5hbCBwYWNrZXQgb24gdGhlIGxhc3QgcGFnZSB0
byBiZSBhIGNvbnRpbnVlZAorIHBhY2tldCwgaS5lLiwgZm9yIHRoZSBmaW5hbCBsYWNpbmcgdmFs
dWUgdG8gYmUgMjU1LgorSG93ZXZlciwgZGVtdXhlcnMgbWlnaHQgZW5jb3VudGVyIHN1Y2ggc3Ry
ZWFtcywgcG9zc2libHkgYXMgdGhlIHJlc3VsdCBvZiBhCisgdHJhbnNmZXIgdGhhdCBkaWQgbm90
IGNvbXBsZXRlIG9yIG9mIGNvcnJ1cHRpb24uCitJZiBhIHBhY2tldCBjb250aW51ZXMgb250byBh
IHN1YnNlcXVlbnQgcGFnZSAoaS5lLiwgd2hlbiB0aGUgcGFnZSBlbmRzIHdpdGggYQorIGxhY2lu
ZyB2YWx1ZSBvZiAyNTUpIGFuZCBvbmUgb2YgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGlzIGFs
c28gdHJ1ZToKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PnRoZSBuZXh0IHBhZ2Ugd2l0aCBw
YWNrZXQgZGF0YSBkb2VzIG5vdCBoYXZlIHRoZSAnY29udGludWVkIHBhY2tldCcgZmxhZworIHNl
dCBPUjwvdD4KKzx0PnRoZXJlIGlzIG5vIG5leHQgcGFnZSB3aXRoIHBhY2tldCBkYXRhIE9SPC90
PgorPHQ+dGhlIHBhZ2Ugc2VxdWVuY2UgbnVtYmVycyBhcmUgbm90IGNvbnNlY3V0aXZlLDwvdD4K
KzwvbGlzdD4KKyB0aGVuIGEgZGVtdXhlciBNVVNUIE5PVCBhdHRlbXB0IHRvIGRlY29kZSB0aGUg
ZGF0YSBmcm9tIHRoYXQgcGFja2V0IHVubGVzcyB0aGUKKyBkZW11eGVyIGhhcyBzb21lIHNwZWNp
YWwga25vd2xlZGdlIHRoYXQgd291bGQgYWxsb3cgaXQgdG8gaW50ZXJwcmV0IHRoaXMgZGF0YQor
IGRlc3BpdGUgdGhlIG1pc3NpbmcgcGllY2VzLgorVGhlcmUgTVVTVCBOT1QgYmUgYW55IG1vcmUg
cGFnZXMgaW4gYW4gT3B1cyBsb2dpY2FsIGJpdHN0cmVhbSBhZnRlciBhIHBhZ2UKKyBtYXJrZWQg
J2VuZCBvZiBzdHJlYW0nLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Imdy
YW5wb3MiIHRpdGxlPSJHcmFudWxlIFBvc2l0aW9uIj4KKzx0PgorVGhlIGdyYW51bGUgcG9zaXRp
b24gTVVTVCBiZSB6ZXJvIGZvciB0aGUgSUQgaGVhZGVyIHBhZ2UgYW5kIHRoZQorIHBhZ2Ugd2hl
cmUgdGhlIGNvbW1lbnQgaGVhZGVyIGNvbXBsZXRlcy4KK1RoYXQgaXMsIHRoZSBmaXJzdCBwYWdl
IGluIHRoZSBsb2dpY2FsIHN0cmVhbSwgYW5kIHRoZSBsYXN0IGhlYWRlcgorIHBhZ2UgYmVmb3Jl
IHRoZSBmaXJzdCBhdWRpbyBkYXRhIHBhZ2UgYm90aCBoYXZlIGEgZ3JhbnVsZSBwb3NpdGlvbiBv
ZiB6ZXJvLgorPC90PgorPHQ+CitUaGUgZ3JhbnVsZSBwb3NpdGlvbiBvZiBhbiBhdWRpbyBkYXRh
IHBhZ2UgZW5jb2RlcyB0aGUgdG90YWwgbnVtYmVyIG9mIFBDTQorIHNhbXBsZXMgaW4gdGhlIHN0
cmVhbSB1cCB0byBhbmQgaW5jbHVkaW5nIHRoZSBsYXN0IGZ1bGx5LWRlY29kYWJsZSBzYW1wbGUg
ZnJvbQorIHRoZSBsYXN0IHBhY2tldCBjb21wbGV0ZWQgb24gdGhhdCBwYWdlLgorVGhlIGdyYW51
bGUgcG9zaXRpb24gb2YgdGhlIGZpcnN0IGF1ZGlvIGRhdGEgcGFnZSB3aWxsIHVzdWFsbHkgYmUg
bGFyZ2VyIHRoYW4KKyB6ZXJvLCBhcyBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJzdGFydF9n
cmFucG9zX3Jlc3RyaWN0aW9ucyIvPi4KKzwvdD4KKworPHQ+CitBIHBhZ2UgdGhhdCBpcyBlbnRp
cmVseSBzcGFubmVkIGJ5IGEgc2luZ2xlIHBhY2tldCAodGhhdCBjb21wbGV0ZXMgb24gYQorIHN1
YnNlcXVlbnQgcGFnZSkgaGFzIG5vIGdyYW51bGUgcG9zaXRpb24sIGFuZCB0aGUgZ3JhbnVsZSBw
b3NpdGlvbiBmaWVsZCBpcworIHNldCB0byB0aGUgc3BlY2lhbCB2YWx1ZSAnLTEnIGluIHR3bydz
IGNvbXBsZW1lbnQuCis8L3Q+CisKKzx0PgorVGhlIGdyYW51bGUgcG9zaXRpb24gb2YgYW4gYXVk
aW8gZGF0YSBwYWdlIGlzIGluIHVuaXRzIG9mIFBDTSBhdWRpbyBzYW1wbGVzIGF0CisgYSBmaXhl
ZCByYXRlIG9mIDQ4Jm5ic3A7a0h6IChwZXIgY2hhbm5lbDsgYSBzdGVyZW8gc3RyZWFtJ3MgZ3Jh
bnVsZSBwb3NpdGlvbgorIGRvZXMgbm90IGluY3JlbWVudCBhdCB0d2ljZSB0aGUgc3BlZWQgb2Yg
YSBtb25vIHN0cmVhbSkuCitJdCBpcyBwb3NzaWJsZSB0byBydW4gYW4gT3B1cyBkZWNvZGVyIGF0
IG90aGVyIHNhbXBsaW5nIHJhdGVzLAorIGJ1dCBhbGwgT3B1cyBwYWNrZXRzIGVuY29kZSBzYW1w
bGVzIGF0IGEgc2FtcGxpbmcgcmF0ZSB0aGF0IGV2ZW5seSBkaXZpZGVzCisgNDgmbmJzcDtrSHou
CitUaGVyZWZvcmUsIHRoZSB2YWx1ZSBpbiB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBmaWVsZCBhbHdh
eXMgY291bnRzIHNhbXBsZXMKKyBhc3N1bWluZyBhIDQ4Jm5ic3A7a0h6IGRlY29kaW5nIHJhdGUs
IGFuZCB0aGUgcmVzdCBvZiB0aGlzIHNwZWNpZmljYXRpb24gbWFrZXMKKyB0aGUgc2FtZSBhc3N1
bXB0aW9uLgorPC90PgorCis8dD4KK1RoZSBkdXJhdGlvbiBvZiBhbiBPcHVzIHBhY2tldCBhcyBk
ZWZpbmVkIGluIDx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPiBjYW4gYmUKKyBhbnkgbXVsdGlwbGUg
b2YgMi41Jm5ic3A7bXMsIHVwIHRvIGEgbWF4aW11bSBvZiAxMjAmbmJzcDttcy4KK1RoaXMgZHVy
YXRpb24gaXMgZW5jb2RlZCBpbiB0aGUgVE9DIHNlcXVlbmNlIGF0IHRoZSBiZWdpbm5pbmcgb2Yg
ZWFjaCBwYWNrZXQuCitUaGUgbnVtYmVyIG9mIHNhbXBsZXMgcmV0dXJuZWQgYnkgYSBkZWNvZGVy
IGNvcnJlc3BvbmRzIHRvIHRoaXMgZHVyYXRpb24KKyBleGFjdGx5LCBldmVuIGZvciB0aGUgZmly
c3QgZmV3IHBhY2tldHMuCitGb3IgZXhhbXBsZSwgYSAyMCZuYnNwO21zIHBhY2tldCBmZWQgdG8g
YSBkZWNvZGVyIHJ1bm5pbmcgYXQgNDgmbmJzcDtrSHogd2lsbAorIGFsd2F5cyByZXR1cm4gOTYw
Jm5ic3A7c2FtcGxlcy4KK0EgZGVtdXhlciBjYW4gcGFyc2UgdGhlIFRPQyBzZXF1ZW5jZSBhdCB0
aGUgYmVnaW5uaW5nIG9mIGVhY2ggT2dnIHBhY2tldCB0bworIHdvcmsgYmFja3dhcmRzIG9yIGZv
cndhcmRzIGZyb20gYSBwYWNrZXQgd2l0aCBhIGtub3duIGdyYW51bGUgcG9zaXRpb24gKGkuZS4s
CisgdGhlIGxhc3QgcGFja2V0IGNvbXBsZXRlZCBvbiBzb21lIHBhZ2UpIGluIG9yZGVyIHRvIGFz
c2lnbiBncmFudWxlIHBvc2l0aW9ucworIHRvIGV2ZXJ5IHBhY2tldCwgb3IgZXZlbiBldmVyeSBp
bmRpdmlkdWFsIHNhbXBsZS4KK1RoZSBvbmUgZXhjZXB0aW9uIGlzIHRoZSBsYXN0IHBhZ2UgaW4g
dGhlIHN0cmVhbSwgYXMgZGVzY3JpYmVkIGJlbG93LgorPC90PgorCis8dD4KK0FsbCBvdGhlciBw
YWdlcyB3aXRoIGNvbXBsZXRlZCBwYWNrZXRzIGFmdGVyIHRoZSBmaXJzdCBNVVNUIGhhdmUgYSBn
cmFudWxlCisgcG9zaXRpb24gZXF1YWwgdG8gdGhlIG51bWJlciBvZiBzYW1wbGVzIGNvbnRhaW5l
ZCBpbiBwYWNrZXRzIHRoYXQgY29tcGxldGUgb24KKyB0aGF0IHBhZ2UgcGx1cyB0aGUgZ3JhbnVs
ZSBwb3NpdGlvbiBvZiB0aGUgbW9zdCByZWNlbnQgcGFnZSB3aXRoIGNvbXBsZXRlZAorIHBhY2tl
dHMuCitUaGlzIGd1YXJhbnRlZXMgdGhhdCBhIGRlbXV4ZXIgY2FuIGFzc2lnbiBpbmRpdmlkdWFs
IHBhY2tldHMgdGhlIHNhbWUgZ3JhbnVsZQorIHBvc2l0aW9uIHdoZW4gd29ya2luZyBmb3J3YXJk
cyBhcyB3aGVuIHdvcmtpbmcgYmFja3dhcmRzLgorRm9yIHRoaXMgdG8gd29yaywgdGhlcmUgY2Fu
bm90IGJlIGFueSBnYXBzLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImdhcC1yZXBhaXIiIHRp
dGxlPSJSZXBhaXJpbmcgR2FwcyBpbiBSZWFsLXRpbWUgU3RyZWFtcyI+Cis8dD4KK0luIG9yZGVy
IHRvIHN1cHBvcnQgY2FwdHVyaW5nIGEgcmVhbC10aW1lIHN0cmVhbSB0aGF0IGhhcyBsb3N0IG9y
IG5vdAorIHRyYW5zbWl0dGVkIHBhY2tldHMsIGEgbXVsdGlwbGV4ZXIgKG11eGVyKSBTSE9VTEQg
ZW1pdCBwYWNrZXRzIHRoYXQgZXhwbGljaXRseQorIHJlcXVlc3QgdGhlIHVzZSBvZiBQYWNrZXQg
TG9zcyBDb25jZWFsbWVudCAoUExDKSBpbiBwbGFjZSBvZiB0aGUgbWlzc2luZworIHBhY2tldHMu
CitJbXBsZW1lbnRhdGlvbnMgdGhhdCBmYWlsIHRvIGRvIHNvIHN0aWxsIE1VU1QgTk9UIGluY3Jl
bWVudCB0aGUgZ3JhbnVsZQorIHBvc2l0aW9uIGZvciBhIHBhZ2UgYnkgYW55dGhpbmcgb3RoZXIg
dGhhbiB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgY29udGFpbmVkIGluCisgcGFja2V0cyB0aGF0IGFj
dHVhbGx5IGNvbXBsZXRlIG9uIHRoYXQgcGFnZS4KKzwvdD4KKzx0PgorT25seSBnYXBzIHRoYXQg
YXJlIGEgbXVsdGlwbGUgb2YgMi41Jm5ic3A7bXMgYXJlIHJlcGFpcmFibGUsIGFzIHRoZXNlIGFy
ZSB0aGUKKyBvbmx5IGR1cmF0aW9ucyB0aGF0IGNhbiBiZSBjcmVhdGVkIGJ5IHBhY2tldCBsb3Nz
IG9yIGRpc2NvbnRpbnVvdXMKKyB0cmFuc21pc3Npb24uCitNdXhlcnMgbmVlZCBub3QgaGFuZGxl
IG90aGVyIGdhcCBzaXplcy4KK0NyZWF0aW5nIHRoZSBuZWNlc3NhcnkgcGFja2V0cyBpbnZvbHZl
cyBzeW50aGVzaXppbmcgYSBUT0MgYnl0ZSAoZGVmaW5lZCBpbgorU2VjdGlvbiZuYnNwOzMuMSBv
ZiZuYnNwOzx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPikmbWRhc2g7YW5kIHdoYXRldmVyCisgYWRk
aXRpb25hbCBpbnRlcm5hbCBmcmFtaW5nIGlzIG5lZWRlZCZtZGFzaDt0byBpbmRpY2F0ZSB0aGUg
cGFja2V0IGR1cmF0aW9uCisgZm9yIGVhY2ggc3RyZWFtLgorVGhlIGFjdHVhbCBsZW5ndGggb2Yg
ZWFjaCBtaXNzaW5nIE9wdXMgZnJhbWUgaW5zaWRlIHRoZSBwYWNrZXQgaXMgemVybyBieXRlcywK
KyBhcyBkZWZpbmVkIGluIFNlY3Rpb24mbmJzcDszLjIuMSBvZiZuYnNwOzx4cmVmIHRhcmdldD0i
UkZDNjcxNiIvPi4KKzwvdD4KKworPHQ+CitaZXJvLWJ5dGUgZnJhbWVzIE1BWSBiZSBwYWNrZWQg
aW50byBwYWNrZXRzIHVzaW5nIGFueSBvZiBjb2RlcyZuYnNwOzAsIDEsCisgMiwgb3ImbmJzcDsz
LgorV2hlbiBzdWNjZXNzaXZlIGZyYW1lcyBoYXZlIHRoZSBzYW1lIGNvbmZpZ3VyYXRpb24sIHRo
ZSBoaWdoZXIgY29kZSBwYWNraW5ncworIHJlZHVjZSBvdmVyaGVhZC4KK0xpa2V3aXNlLCBpZiB0
aGUgVE9DIGNvbmZpZ3VyYXRpb24gbWF0Y2hlcywgdGhlIG11eGVyIE1BWSBmdXJ0aGVyIGNvbWJp
bmUgdGhlCisgZW1wdHkgZnJhbWVzIHdpdGggcHJldmlvdXMgb3Igc3Vic2VxdWVudCBub24temVy
by1sZW5ndGggZnJhbWVzICh1c2luZworIGNvZGUmbmJzcDsyIG9yIFZCUiBjb2RlJm5ic3A7Myku
Cis8L3Q+CisKKzx0PgorPHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+IGRvZXMgbm90IGltcG9zZSBh
bnkgcmVxdWlyZW1lbnRzIG9uIHRoZSBQTEMsIGJ1dCB0aGlzCisgc2VjdGlvbiBvdXRsaW5lcyBj
aG9pY2VzIHRoYXQgYXJlIGV4cGVjdGVkIHRvIGhhdmUgYSBwb3NpdGl2ZSBpbmZsdWVuY2Ugb24K
KyBtb3N0IFBMQyBpbXBsZW1lbnRhdGlvbnMsIGluY2x1ZGluZyB0aGUgcmVmZXJlbmNlIGltcGxl
bWVudGF0aW9uLgorU3ludGhlc2l6ZWQgVE9DIHNlcXVlbmNlcyBTSE9VTEQgbWFpbnRhaW4gdGhl
IHNhbWUgbW9kZSwgYXVkaW8gYmFuZHdpZHRoLAorIGNoYW5uZWwgY291bnQsIGFuZCBmcmFtZSBz
aXplIGFzIHRoZSBwcmV2aW91cyBwYWNrZXQgKGlmIGFueSkuCitUaGlzIGlzIHRoZSBzaW1wbGVz
dCBhbmQgdXN1YWxseSB0aGUgbW9zdCB3ZWxsLXRlc3RlZCBjYXNlIGZvciB0aGUgUExDIHRvCisg
aGFuZGxlIGFuZCBpdCBjb3ZlcnMgYWxsIGxvc3NlcyB0aGF0IGRvIG5vdCBpbmNsdWRlIGEgY29u
ZmlndXJhdGlvbiBzd2l0Y2gsCisgYXMgZGVmaW5lZCBpbiBTZWN0aW9uJm5ic3A7NC41IG9mJm5i
c3A7PHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+LgorPC90PgorCis8dD4KK1doZW4gYSBwcmV2aW91
cyBwYWNrZXQgaXMgYXZhaWxhYmxlLCBrZWVwaW5nIHRoZSBhdWRpbyBiYW5kd2lkdGggYW5kIGNo
YW5uZWwKKyBjb3VudCB0aGUgc2FtZSBhbGxvd3MgdGhlIFBMQyB0byBwcm92aWRlIG1heGltdW0g
Y29udGludWl0eSBpbiB0aGUgY29uY2VhbG1lbnQKKyBkYXRhIGl0IGdlbmVyYXRlcy4KK0hvd2V2
ZXIsIGlmIHRoZSBzaXplIG9mIHRoZSBnYXAgaXMgbm90IGEgbXVsdGlwbGUgb2YgdGhlIG1vc3Qg
cmVjZW50IGZyYW1lCisgc2l6ZSwgdGhlbiB0aGUgZnJhbWUgc2l6ZSB3aWxsIGhhdmUgdG8gY2hh
bmdlIGZvciBhdCBsZWFzdCBzb21lIGZyYW1lcy4KK1N1Y2ggY2hhbmdlcyBTSE9VTEQgYmUgZGVs
YXllZCBhcyBsb25nIGFzIHBvc3NpYmxlIHRvIHNpbXBsaWZ5CisgdGhpbmdzIGZvciBQTEMgaW1w
bGVtZW50YXRpb25zLgorPC90PgorCis8dD4KK0FzIGFuIGV4YW1wbGUsIGEgOTUmbmJzcDttcyBn
YXAgY291bGQgYmUgZW5jb2RlZCBhcyBuaW5ldGVlbiA1Jm5ic3A7bXMgZnJhbWVzCisgaW4gdHdv
IGJ5dGVzIHdpdGggYSBzaW5nbGUgQ0JSIGNvZGUmbmJzcDszIHBhY2tldC4KK0lmIHRoZSBwcmV2
aW91cyBmcmFtZSBzaXplIHdhcyAyMCZuYnNwO21zLCB1c2luZyBmb3VyIDIwJm5ic3A7bXMgZnJh
bWVzCisgZm9sbG93ZWQgYnkgdGhyZWUgNSZuYnNwO21zIGZyYW1lcyByZXF1aXJlcyA0Jm5ic3A7
Ynl0ZXMgKHBsdXMgYW4gZXh0cmEgYnl0ZQorIG9mIE9nZyBsYWNpbmcgb3ZlcmhlYWQpLCBidXQg
YWxsb3dzIHRoZSBQTEMgdG8gdXNlIGl0cyB3ZWxsLXRlc3RlZCBzdGVhZHkKKyBzdGF0ZSBiZWhh
dmlvciBmb3IgYXMgbG9uZyBhcyBwb3NzaWJsZS4KK1RoZSB0b3RhbCBiaXRyYXRlIG9mIHRoZSBs
YXR0ZXIgYXBwcm9hY2gsIGluY2x1ZGluZyBPZ2cgb3ZlcmhlYWQsIGlzIGFib3V0CisgMC40Jm5i
c3A7a2Jwcywgc28gdGhlIGltcGFjdCBvbiBmaWxlIHNpemUgaXMgbWluaW1hbC4KKzwvdD4KKwor
PHQ+CitDaGFuZ2luZyBtb2RlcyBpcyBkaXNjb3VyYWdlZCwgc2luY2UgdGhpcyBjYXVzZXMgc29t
ZSBkZWNvZGVyIGltcGxlbWVudGF0aW9ucworIHRvIHJlc2V0IHRoZWlyIFBMQyBzdGF0ZS4KK0hv
d2V2ZXIsIFNJTEsgYW5kIEh5YnJpZCBtb2RlIGZyYW1lcyBjYW5ub3QgZmlsbCBnYXBzIHRoYXQg
YXJlIG5vdCBhIG11bHRpcGxlCisgb2YgMTAmbmJzcDttcy4KK0lmIHN3aXRjaGluZyB0byBDRUxU
IG1vZGUgaXMgbmVlZGVkIHRvIG1hdGNoIHRoZSBnYXAgc2l6ZSwgYSBtdXhlciBTSE9VTEQgZG8K
KyBzbyBhdCB0aGUgZW5kIG9mIHRoZSBnYXAgdG8gYWxsb3cgdGhlIFBMQyB0byBmdW5jdGlvbiBm
b3IgYXMgbG9uZyBhcyBwb3NzaWJsZS4KKzwvdD4KKworPHQ+CitJbiB0aGUgZXhhbXBsZSBhYm92
ZSwgaWYgdGhlIHByZXZpb3VzIGZyYW1lIHdhcyBhIDIwJm5ic3A7bXMgU0lMSyBtb2RlIGZyYW1l
LAorIHRoZSBiZXR0ZXIgc29sdXRpb24gaXMgdG8gc3ludGhlc2l6ZSBhIHBhY2tldCBkZXNjcmli
aW5nIGZvdXIgMjAmbmJzcDttcyBTSUxLCisgZnJhbWVzLCBmb2xsb3dlZCBieSBhIHBhY2tldCB3
aXRoIGEgc2luZ2xlIDEwJm5ic3A7bXMgU0lMSworIGZyYW1lLCBhbmQgZmluYWxseSBhIHBhY2tl
dCB3aXRoIGEgNSZuYnNwO21zIENFTFQgZnJhbWUsIHRvIGZpbGwgdGhlIDk1Jm5ic3A7bXMKKyBn
YXAuCitUaGlzIGFsc28gcmVxdWlyZXMgZm91ciBieXRlcyB0byBkZXNjcmliZSB0aGUgc3ludGhl
c2l6ZWQgcGFja2V0IGRhdGEgKHR3bworIGJ5dGVzIGZvciBhIENCUiBjb2RlIDMgYW5kIG9uZSBi
eXRlIGVhY2ggZm9yIHR3byBjb2RlIDAgcGFja2V0cykgYnV0IHRocmVlCisgYnl0ZXMgb2YgT2dn
IGxhY2luZyBvdmVyaGVhZCBhcmUgbmVlZGVkIHRvIG1hcmsgdGhlIHBhY2tldCBib3VuZGFyaWVz
LgorQXQgMC42IGticHMsIHRoaXMgaXMgc3RpbGwgYSBtaW5pbWFsIGJpdHJhdGUgaW1wYWN0IG92
ZXIgYSBuYWl2ZSwgbG93IHF1YWxpdHkKKyBzb2x1dGlvbi4KKzwvdD4KKworPHQ+CitTaW5jZSBt
ZWRpdW0tYmFuZCBhdWRpbyBpcyBhbiBvcHRpb24gb25seSBpbiB0aGUgU0lMSyBtb2RlLCB3aWRl
YmFuZCBmcmFtZXMKKyBTSE9VTEQgYmUgZ2VuZXJhdGVkIGlmIHN3aXRjaGluZyBmcm9tIHRoYXQg
Y29uZmlndXJhdGlvbiB0byBDRUxUIG1vZGUsIHRvCisgZW5zdXJlIHRoYXQgYW55IFBMQyBpbXBs
ZW1lbnRhdGlvbiB3aGljaCBkb2VzIHRyeSB0byBtaWdyYXRlIHN0YXRlIGJldHdlZW4KKyB0aGUg
bW9kZXMgd2lsbCBiZSBhYmxlIHRvIHByZXNlcnZlIGFsbCBvZiB0aGUgYXZhaWxhYmxlIGF1ZGlv
IGJhbmR3aWR0aC4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InByZXNr
aXAiIHRpdGxlPSJQcmUtc2tpcCI+Cis8dD4KK1RoZXJlIGlzIHNvbWUgYW1vdW50IG9mIGxhdGVu
Y3kgaW50cm9kdWNlZCBkdXJpbmcgdGhlIGRlY29kaW5nIHByb2Nlc3MsIHRvCisgYWxsb3cgZm9y
IG92ZXJsYXAgaW4gdGhlIENFTFQgbW9kZSwgc3RlcmVvIG1peGluZyBpbiB0aGUgU0lMSyBtb2Rl
LCBhbmQKKyByZXNhbXBsaW5nLgorVGhlIGVuY29kZXIgbWlnaHQgaGF2ZSBpbnRyb2R1Y2VkIGFk
ZGl0aW9uYWwgbGF0ZW5jeSB0aHJvdWdoIGl0cyBvd24gcmVzYW1wbGluZworIGFuZCBhbmFseXNp
cyAodGhvdWdoIHRoZSBleGFjdCBhbW91bnQgaXMgbm90IHNwZWNpZmllZCkuCitUaGVyZWZvcmUs
IHRoZSBmaXJzdCBmZXcgc2FtcGxlcyBwcm9kdWNlZCBieSB0aGUgZGVjb2RlciBkbyBub3QgY29y
cmVzcG9uZCB0bworIHJlYWwgaW5wdXQgYXVkaW8sIGJ1dCBhcmUgaW5zdGVhZCBjb21wb3NlZCBv
ZiBwYWRkaW5nIGluc2VydGVkIGJ5IHRoZSBlbmNvZGVyCisgdG8gY29tcGVuc2F0ZSBmb3IgdGhp
cyBsYXRlbmN5LgorVGhlc2Ugc2FtcGxlcyBuZWVkIHRvIGJlIHN0b3JlZCBhbmQgZGVjb2RlZCwg
YXMgT3B1cyBpcyBhbiBhc3ltcHRvdGljYWxseQorIGNvbnZlcmdlbnQgcHJlZGljdGl2ZSBjb2Rl
YywgbWVhbmluZyB0aGUgZGVjb2RlZCBjb250ZW50cyBvZiBlYWNoIGZyYW1lIGRlcGVuZAorIG9u
IHRoZSByZWNlbnQgaGlzdG9yeSBvZiBkZWNvZGVyIGlucHV0cy4KK0hvd2V2ZXIsIGEgcGxheWVy
IHdpbGwgd2FudCB0byBza2lwIHRoZXNlIHNhbXBsZXMgYWZ0ZXIgZGVjb2RpbmcgdGhlbS4KKzwv
dD4KKworPHQ+CitBICdwcmUtc2tpcCcgZmllbGQgaW4gdGhlIElEIGhlYWRlciAoc2VlIDx4cmVm
IHRhcmdldD0iaWRfaGVhZGVyIi8+KSBzaWduYWxzCisgdGhlIG51bWJlciBvZiBzYW1wbGVzIHRo
YXQgU0hPVUxEIGJlIHNraXBwZWQgKGRlY29kZWQgYnV0IGRpc2NhcmRlZCkgYXQgdGhlCisgYmVn
aW5uaW5nIG9mIHRoZSBzdHJlYW0sIHRob3VnaCBzb21lIHNwZWNpZmljIGFwcGxpY2F0aW9ucyBt
aWdodCBoYXZlIGEgcmVhc29uCisgZm9yIGxvb2tpbmcgYXQgdGhhdCBkYXRhLgorVGhpcyBhbW91
bnQgbmVlZCBub3QgYmUgYSBtdWx0aXBsZSBvZiAyLjUmbmJzcDttcywgTUFZIGJlIHNtYWxsZXIg
dGhhbiBhIHNpbmdsZQorIHBhY2tldCwgb3IgTUFZIHNwYW4gdGhlIGNvbnRlbnRzIG9mIHNldmVy
YWwgcGFja2V0cy4KK1RoZXNlIHNhbXBsZXMgYXJlIG5vdCB2YWxpZCBhdWRpby4KKzwvdD4KKwor
PHQ+CitGb3IgZXhhbXBsZSwgaWYgdGhlIGZpcnN0IE9wdXMgZnJhbWUgdXNlcyB0aGUgQ0VMVCBt
b2RlLCBpdCB3aWxsIGFsd2F5cworIHByb2R1Y2UgMTIwIHNhbXBsZXMgb2Ygd2luZG93ZWQgb3Zl
cmxhcC1hZGQgZGF0YS4KK0hvd2V2ZXIsIHRoZSBvdmVybGFwIGRhdGEgaXMgaW5pdGlhbGx5IGFs
bCB6ZXJvcyAoc2luY2UgdGhlcmUgaXMgbm8gcHJpb3IKKyBmcmFtZSksIG1lYW5pbmcgdGhpcyBj
YW5ub3QsIGluIGdlbmVyYWwsIGFjY3VyYXRlbHkgcmVwcmVzZW50IHRoZSBvcmlnaW5hbAorIGF1
ZGlvLgorVGhlIFNJTEsgbW9kZSByZXF1aXJlcyBhZGRpdGlvbmFsIGRlbGF5IHRvIGFjY291bnQg
Zm9yIGl0cyBhbmFseXNpcyBhbmQKKyByZXNhbXBsaW5nIGxhdGVuY3kuCitUaGUgZW5jb2RlciBk
ZWxheXMgdGhlIG9yaWdpbmFsIGF1ZGlvIHRvIGF2b2lkIHRoaXMgcHJvYmxlbS4KKzwvdD4KKwor
PHQ+CitUaGUgcHJlLXNraXAgZmllbGQgTUFZIGFsc28gYmUgdXNlZCB0byBwZXJmb3JtIHNhbXBs
ZS1hY2N1cmF0ZSBjcm9wcGluZyBvZgorIGFscmVhZHkgZW5jb2RlZCBzdHJlYW1zLgorSW4gdGhp
cyBjYXNlLCBhIHZhbHVlIG9mIGF0IGxlYXN0IDM4NDAmbmJzcDtzYW1wbGVzICg4MCZuYnNwO21z
KSBwcm92aWRlcworIHN1ZmZpY2llbnQgaGlzdG9yeSB0byB0aGUgZGVjb2RlciB0aGF0IGl0IHdp
bGwgaGF2ZSBjb252ZXJnZWQKKyBiZWZvcmUgdGhlIHN0cmVhbSdzIG91dHB1dCBiZWdpbnMuCis8
L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJwY21fc2FtcGxlX3Bvc2l0aW9u
IiB0aXRsZT0iUENNIFNhbXBsZSBQb3NpdGlvbiI+Cis8dD4KK1RoZSBQQ00gc2FtcGxlIHBvc2l0
aW9uIGlzIGRldGVybWluZWQgZnJvbSB0aGUgZ3JhbnVsZSBwb3NpdGlvbiB1c2luZyB0aGUKKyBm
b3JtdWxhCis8L3Q+Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNl
bnRlciI+PCFbQ0RBVEFbCisnUENNIHNhbXBsZSBwb3NpdGlvbicgPSAnZ3JhbnVsZSBwb3NpdGlv
bicgLSAncHJlLXNraXAnIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8dD4KK0ZvciBl
eGFtcGxlLCBpZiB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBvZiB0aGUgZmlyc3QgYXVkaW8gZGF0YSBw
YWdlIGlzIDU5LDk3MSwKKyBhbmQgdGhlIHByZS1za2lwIGlzIDExLDk3MSwgdGhlbiB0aGUgUENN
IHNhbXBsZSBwb3NpdGlvbiBvZiB0aGUgbGFzdCBkZWNvZGVkCisgc2FtcGxlIGZyb20gdGhhdCBw
YWdlIGlzIDQ4LDAwMC4KKzwvdD4KKzx0PgorVGhpcyBjYW4gYmUgY29udmVydGVkIGludG8gYSBw
bGF5YmFjayB0aW1lIHVzaW5nIHRoZSBmb3JtdWxhCis8L3Q+Cis8ZmlndXJlIGFsaWduPSJjZW50
ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAg
ICAnUENNIHNhbXBsZSBwb3NpdGlvbicKKydwbGF5YmFjayB0aW1lJyA9IC0tLS0tLS0tLS0tLS0t
LS0tLS0tLSAuCisgICAgICAgICAgICAgICAgICAgICAgICAgNDgwMDAuMAorXV0+PC9hcnR3b3Jr
PgorPC9maWd1cmU+CisKKzx0PgorVGhlIGluaXRpYWwgUENNIHNhbXBsZSBwb3NpdGlvbiBiZWZv
cmUgYW55IHNhbXBsZXMgYXJlIHBsYXllZCBpcyBub3JtYWxseSAnMCcuCitJbiB0aGlzIGNhc2Us
IHRoZSBQQ00gc2FtcGxlIHBvc2l0aW9uIG9mIHRoZSBmaXJzdCBhdWRpbyBzYW1wbGUgdG8gYmUg
cGxheWVkCisgc3RhcnRzIGF0ICcxJywgYmVjYXVzZSBpdCBtYXJrcyB0aGUgdGltZSBvbiB0aGUg
Y2xvY2sKKyA8c3Bhbnggc3R5bGU9ImVtcGgiPmFmdGVyPC9zcGFueD4gdGhhdCBzYW1wbGUgaGFz
IGJlZW4gcGxheWVkLCBhbmQgYSBzdHJlYW0KKyB0aGF0IGlzIGV4YWN0bHkgb25lIHNlY29uZCBs
b25nIGhhcyBhIGZpbmFsIFBDTSBzYW1wbGUgcG9zaXRpb24gb2YgJzQ4MDAwJywKKyBhcyBpbiB0
aGUgZXhhbXBsZSBoZXJlLgorPC90PgorCis8dD4KK1ZvcmJpcyBzdHJlYW1zIHVzZSBhIGdyYW51
bGUgcG9zaXRpb24gc21hbGxlciB0aGFuIHRoZSBudW1iZXIgb2YgYXVkaW8gc2FtcGxlcworIGNv
bnRhaW5lZCBpbiB0aGUgZmlyc3QgYXVkaW8gZGF0YSBwYWdlIHRvIGluZGljYXRlIHRoYXQgc29t
ZSBvZiB0aG9zZSBzYW1wbGVzCisgYXJlIHRyaW1tZWQgZnJvbSB0aGUgb3V0cHV0IChzZWUgPHhy
ZWYgdGFyZ2V0PSJ2b3JiaXMtdHJpbSIvPikuCitIb3dldmVyLCB0byBkbyBzbywgVm9yYmlzIHJl
cXVpcmVzIHRoYXQgdGhlIGZpcnN0IGF1ZGlvIGRhdGEgcGFnZSBjb250YWlucworIGV4YWN0bHkg
dHdvIHBhY2tldHMsIGluIG9yZGVyIHRvIGFsbG93IHRoZSBkZWNvZGVyIHRvIHBlcmZvcm0gUENN
IHBvc2l0aW9uCisgYWRqdXN0bWVudHMgYmVmb3JlIG5lZWRpbmcgdG8gcmV0dXJuIGFueSBQQ00g
ZGF0YS4KK09wdXMgdXNlcyB0aGUgcHJlLXNraXAgbWVjaGFuaXNtIGZvciB0aGlzIHB1cnBvc2Ug
aW5zdGVhZCwgc2luY2UgdGhlIGVuY29kZXIKKyBtaWdodCBpbnRyb2R1Y2UgbW9yZSB0aGFuIGEg
c2luZ2xlIHBhY2tldCdzIHdvcnRoIG9mIGxhdGVuY3ksIGFuZCBzaW5jZSB2ZXJ5CisgbGFyZ2Ug
cGFja2V0cyBpbiBzdHJlYW1zIHdpdGggYSB2ZXJ5IGxhcmdlIG51bWJlciBvZiBjaGFubmVscyBt
aWdodCBub3QgZml0Cisgb24gYSBzaW5nbGUgcGFnZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNl
Y3Rpb24gYW5jaG9yPSJlbmRfdHJpbW1pbmciIHRpdGxlPSJFbmQgVHJpbW1pbmciPgorPHQ+CitU
aGUgcGFnZSB3aXRoIHRoZSAnZW5kIG9mIHN0cmVhbScgZmxhZyBzZXQgTUFZIGhhdmUgYSBncmFu
dWxlIHBvc2l0aW9uIHRoYXQKKyBpbmRpY2F0ZXMgdGhlIHBhZ2UgY29udGFpbnMgbGVzcyBhdWRp
byBkYXRhIHRoYW4gd291bGQgbm9ybWFsbHkgYmUgcmV0dXJuZWQgYnkKKyBkZWNvZGluZyB1cCB0
aHJvdWdoIHRoZSBmaW5hbCBwYWNrZXQuCitUaGlzIGlzIHVzZWQgdG8gZW5kIHRoZSBzdHJlYW0g
c29tZXdoZXJlIG90aGVyIHRoYW4gYW4gZXZlbiBmcmFtZSBib3VuZGFyeS4KK1RoZSBncmFudWxl
IHBvc2l0aW9uIG9mIHRoZSBtb3N0IHJlY2VudCBhdWRpbyBkYXRhIHBhZ2Ugd2l0aCBjb21wbGV0
ZWQgcGFja2V0cworIGlzIHVzZWQgdG8gbWFrZSB0aGlzIGRldGVybWluYXRpb24sIG9yICcwJyBp
cyB1c2VkIGlmIHRoZXJlIHdlcmUgbm8gcHJldmlvdXMKKyBhdWRpbyBkYXRhIHBhZ2VzIHdpdGgg
YSBjb21wbGV0ZWQgcGFja2V0LgorVGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGVzZSBncmFudWxl
IHBvc2l0aW9ucyBpbmRpY2F0ZXMgaG93IG1hbnkgc2FtcGxlcyB0bworIGtlZXAgYWZ0ZXIgZGVj
b2RpbmcgdGhlIHBhY2tldHMgdGhhdCBjb21wbGV0ZWQgb24gdGhlIGZpbmFsIHBhZ2UuCitUaGUg
cmVtYWluaW5nIHNhbXBsZXMgYXJlIGRpc2NhcmRlZC4KK1RoZSBudW1iZXIgb2YgZGlzY2FyZGVk
IHNhbXBsZXMgU0hPVUxEIGJlIG5vIGxhcmdlciB0aGFuIHRoZSBudW1iZXIgZGVjb2RlZAorIGZy
b20gdGhlIGxhc3QgcGFja2V0LgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9
InN0YXJ0X2dyYW5wb3NfcmVzdHJpY3Rpb25zIgorIHRpdGxlPSJSZXN0cmljdGlvbnMgb24gdGhl
IEluaXRpYWwgR3JhbnVsZSBQb3NpdGlvbiI+Cis8dD4KK1RoZSBncmFudWxlIHBvc2l0aW9uIG9m
IHRoZSBmaXJzdCBhdWRpbyBkYXRhIHBhZ2Ugd2l0aCBhIGNvbXBsZXRlZCBwYWNrZXQgTUFZCisg
YmUgbGFyZ2VyIHRoYW4gdGhlIG51bWJlciBvZiBzYW1wbGVzIGNvbnRhaW5lZCBpbiBwYWNrZXRz
IHRoYXQgY29tcGxldGUgb24KKyB0aGF0IHBhZ2UsIGhvd2V2ZXIgaXQgTVVTVCBOT1QgYmUgc21h
bGxlciwgdW5sZXNzIHRoYXQgcGFnZSBoYXMgdGhlICdlbmQgb2YKKyBzdHJlYW0nIGZsYWcgc2V0
LgorQWxsb3dpbmcgYSBncmFudWxlIHBvc2l0aW9uIGxhcmdlciB0aGFuIHRoZSBudW1iZXIgb2Yg
c2FtcGxlcyBhbGxvd3MgdGhlCisgYmVnaW5uaW5nIG9mIGEgc3RyZWFtIHRvIGJlIGNyb3BwZWQg
b3IgYSBsaXZlIHN0cmVhbSB0byBiZSBqb2luZWQgd2l0aG91dAorIHJld3JpdGluZyB0aGUgZ3Jh
bnVsZSBwb3NpdGlvbiBvZiBhbGwgdGhlIHJlbWFpbmluZyBwYWdlcy4KK1RoaXMgbWVhbnMgdGhh
dCB0aGUgUENNIHNhbXBsZSBwb3NpdGlvbiBqdXN0IGJlZm9yZSB0aGUgZmlyc3Qgc2FtcGxlIHRv
IGJlCisgcGxheWVkIE1BWSBiZSBsYXJnZXIgdGhhbiAnMCcuCitTeW5jaHJvbml6YXRpb24gd2hl
biBtdWx0aXBsZXhpbmcgd2l0aCBvdGhlciBsb2dpY2FsIHN0cmVhbXMgc3RpbGwgdXNlcyB0aGUg
UENNCisgc2FtcGxlIHBvc2l0aW9uIHJlbGF0aXZlIHRvICcwJyB0byBjb21wdXRlIHNhbXBsZSB0
aW1lcy4KK1RoaXMgZG9lcyBub3QgYWZmZWN0IHRoZSBiZWhhdmlvciBvZiBwcmUtc2tpcDogZXhh
Y3RseSAncHJlLXNraXAnIHNhbXBsZXMKKyBTSE9VTEQgYmUgc2tpcHBlZCBmcm9tIHRoZSBiZWdp
bm5pbmcgb2YgdGhlIGRlY29kZWQgb3V0cHV0LCBldmVuIGlmIHRoZQorIGluaXRpYWwgUENNIHNh
bXBsZSBwb3NpdGlvbiBpcyBncmVhdGVyIHRoYW4gemVyby4KKzwvdD4KKworPHQ+CitPbiB0aGUg
b3RoZXIgaGFuZCwgYSBncmFudWxlIHBvc2l0aW9uIHRoYXQgaXMgc21hbGxlciB0aGFuIHRoZSBu
dW1iZXIgb2YKKyBkZWNvZGVkIHNhbXBsZXMgcHJldmVudHMgYSBkZW11eGVyIGZyb20gd29ya2lu
ZyBiYWNrd2FyZHMgdG8gYXNzaWduIGVhY2gKKyBwYWNrZXQgb3IgZWFjaCBpbmRpdmlkdWFsIHNh
bXBsZSBhIHZhbGlkIGdyYW51bGUgcG9zaXRpb24sIHNpbmNlIGdyYW51bGUKKyBwb3NpdGlvbnMg
YXJlIG5vbi1uZWdhdGl2ZS4KK0FuIGltcGxlbWVudGF0aW9uIE1VU1QgdHJlYXQgYW55IHN0cmVh
bSBhcyBpbnZhbGlkIGlmIHRoZSBncmFudWxlIHBvc2l0aW9uCisgaXMgc21hbGxlciB0aGFuIHRo
ZSBudW1iZXIgb2Ygc2FtcGxlcyBjb250YWluZWQgaW4gcGFja2V0cyB0aGF0IGNvbXBsZXRlIG9u
CisgdGhlIGZpcnN0IGF1ZGlvIGRhdGEgcGFnZSB3aXRoIGEgY29tcGxldGVkIHBhY2tldCwgdW5s
ZXNzIHRoYXQgcGFnZSBoYXMgdGhlCisgJ2VuZCBvZiBzdHJlYW0nIGZsYWcgc2V0LgorSXQgTUFZ
IGRlZmVyIHRoaXMgYWN0aW9uIHVudGlsIGl0IGRlY29kZXMgdGhlIGxhc3QgcGFja2V0IGNvbXBs
ZXRlZCBvbiB0aGF0CisgcGFnZS4KKzwvdD4KKworPHQ+CitJZiB0aGF0IHBhZ2UgaGFzIHRoZSAn
ZW5kIG9mIHN0cmVhbScgZmxhZyBzZXQsIGEgZGVtdXhlciBNVVNUIHRyZWF0IGFueSBzdHJlYW0K
KyBhcyBpbnZhbGlkIGlmIGl0cyBncmFudWxlIHBvc2l0aW9uIGlzIHNtYWxsZXIgdGhhbiB0aGUg
J3ByZS1za2lwJyBhbW91bnQuCitUaGlzIHdvdWxkIGluZGljYXRlIHRoYXQgdGhlcmUgYXJlIG1v
cmUgc2FtcGxlcyB0byBiZSBza2lwcGVkIGZyb20gdGhlIGluaXRpYWwKKyBkZWNvZGVkIG91dHB1
dCB0aGFuIGV4aXN0IGluIHRoZSBzdHJlYW0uCitJZiB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBpcyBz
bWFsbGVyIHRoYW4gdGhlIG51bWJlciBvZiBkZWNvZGVkIHNhbXBsZXMgcHJvZHVjZWQKKyBieSB0
aGUgcGFja2V0cyB0aGF0IGNvbXBsZXRlIG9uIHRoYXQgcGFnZSwgdGhlbiBhIGRlbXV4ZXIgTVVT
VCB1c2UgYW4gaW5pdGlhbAorIGdyYW51bGUgcG9zaXRpb24gb2YgJzAnLCBhbmQgY2FuIHdvcmsg
Zm9yd2FyZHMgZnJvbSAnMCcgdG8gdGltZXN0YW1wCisgaW5kaXZpZHVhbCBwYWNrZXRzLgorSWYg
dGhlIGdyYW51bGUgcG9zaXRpb24gaXMgbGFyZ2VyIHRoYW4gdGhlIG51bWJlciBvZiBkZWNvZGVk
IHNhbXBsZXMgYXZhaWxhYmxlLAorIHRoZW4gdGhlIGRlbXV4ZXIgTVVTVCBzdGlsbCB3b3JrIGJh
Y2t3YXJkcyBhcyBkZXNjcmliZWQgYWJvdmUsIGV2ZW4gaWYgdGhlCisgJ2VuZCBvZiBzdHJlYW0n
IGZsYWcgaXMgc2V0LCB0byBkZXRlcm1pbmUgdGhlIGluaXRpYWwgZ3JhbnVsZSBwb3NpdGlvbiwg
YW5kCisgdGh1cyB0aGUgaW5pdGlhbCBQQ00gc2FtcGxlIHBvc2l0aW9uLgorQm90aCBvZiB0aGVz
ZSB3aWxsIGJlIGdyZWF0ZXIgdGhhbiAnMCcgaW4gdGhpcyBjYXNlLgorPC90PgorPC9zZWN0aW9u
PgorCis8c2VjdGlvbiBhbmNob3I9InNlZWtpbmdfYW5kX3ByZXJvbGwiIHRpdGxlPSJTZWVraW5n
IGFuZCBQcmUtcm9sbCI+Cis8dD4KK1NlZWtpbmcgaW4gT2dnIGZpbGVzIGlzIGJlc3QgcGVyZm9y
bWVkIHVzaW5nIGEgYmlzZWN0aW9uIHNlYXJjaCBmb3IgYSBwYWdlCisgd2hvc2UgZ3JhbnVsZSBw
b3NpdGlvbiBjb3JyZXNwb25kcyB0byBhIFBDTSBwb3NpdGlvbiBhdCBvciBiZWZvcmUgdGhlIHNl
ZWsKKyB0YXJnZXQuCitXaXRoIGFwcHJvcHJpYXRlbHkgd2VpZ2h0ZWQgYmlzZWN0aW9uLCBhY2N1
cmF0ZSBzZWVraW5nIGNhbiBiZSBwZXJmb3JtZWQgaW4KKyBqdXN0IG9uZSBvciB0d28gYmlzZWN0
aW9ucyBvbiBhdmVyYWdlLCBldmVuIGluIG11bHRpLWdpZ2FieXRlIGZpbGVzLgorU2VlIDx4cmVm
IHRhcmdldD0ic2Vla2luZyIvPiBmb3IgYW4gZXhhbXBsZSBvZiBnZW5lcmFsIGltcGxlbWVudGF0
aW9uIGd1aWRhbmNlLgorPC90PgorCis8dD4KK1doZW4gc2Vla2luZyB3aXRoaW4gYW4gT2dnIE9w
dXMgc3RyZWFtLCBhbiBpbXBsZW1lbnRhdGlvbiBTSE9VTEQgc3RhcnQgZGVjb2RpbmcKKyAoYW5k
IGRpc2NhcmRpbmcgdGhlIG91dHB1dCkgYXQgbGVhc3QgMzg0MCZuYnNwO3NhbXBsZXMgKDgwJm5i
c3A7bXMpIHByaW9yIHRvCisgdGhlIHNlZWsgdGFyZ2V0IGluIG9yZGVyIHRvIGVuc3VyZSB0aGF0
IHRoZSBvdXRwdXQgYXVkaW8gaXMgY29ycmVjdCBieSB0aGUKKyB0aW1lIGl0IHJlYWNoZXMgdGhl
IHNlZWsgdGFyZ2V0LgorVGhpcyAncHJlLXJvbGwnIGlzIHNlcGFyYXRlIGZyb20sIGFuZCB1bnJl
bGF0ZWQgdG8sIHRoZSAncHJlLXNraXAnIHVzZWQgYXQgdGhlCisgYmVnaW5uaW5nIG9mIHRoZSBz
dHJlYW0uCitJZiB0aGUgcG9pbnQgODAmbmJzcDttcyBwcmlvciB0byB0aGUgc2VlayB0YXJnZXQg
Y29tZXMgYmVmb3JlIHRoZSBpbml0aWFsIFBDTQorIHNhbXBsZSBwb3NpdGlvbiwgYW4gaW1wbGVt
ZW50YXRpb24gU0hPVUxEIHN0YXJ0IGRlY29kaW5nIGZyb20gdGhlIGJlZ2lubmluZyBvZgorIHRo
ZSBzdHJlYW0sIGFwcGx5aW5nIHByZS1za2lwIGFzIG5vcm1hbCwgcmVnYXJkbGVzcyBvZiB3aGV0
aGVyIHRoZSBwcmUtc2tpcCBpcworIGxhcmdlciBvciBzbWFsbGVyIHRoYW4gODAmbmJzcDttcywg
YW5kIHRoZW4gY29udGludWUgdG8gZGlzY2FyZCBzYW1wbGVzCisgdG8gcmVhY2ggdGhlIHNlZWsg
dGFyZ2V0IChpZiBhbnkpLgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0
aW9uIGFuY2hvcj0iaGVhZGVycyIgdGl0bGU9IkhlYWRlciBQYWNrZXRzIj4KKzx0PgorQW4gT2dn
IE9wdXMgbG9naWNhbCBzdHJlYW0gY29udGFpbnMgZXhhY3RseSB0d28gbWFuZGF0b3J5IGhlYWRl
ciBwYWNrZXRzOgorIGFuIGlkZW50aWZpY2F0aW9uIGhlYWRlciBhbmQgYSBjb21tZW50IGhlYWRl
ci4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJpZF9oZWFkZXIiIHRpdGxlPSJJZGVudGlmaWNh
dGlvbiBIZWFkZXIiPgorCis8ZmlndXJlIGFuY2hvcj0iaWRfaGVhZGVyX3BhY2tldCIgdGl0bGU9
IklEIEhlYWRlciBQYWNrZXQiIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRl
ciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIg
ICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3
IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAnTycgICAgICB8
ICAgICAgJ3AnICAgICAgfCAgICAgICd1JyAgICAgIHwgICAgICAncycgICAgICB8CisrLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
KworfCAgICAgICdIJyAgICAgIHwgICAgICAnZScgICAgICB8ICAgICAgJ2EnICAgICAgfCAgICAg
ICdkJyAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rCit8ICBWZXJzaW9uID0gMSAgfCBDaGFubmVsIENvdW50IHwg
ICAgICAgICAgIFByZS1za2lwICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAg
ICAgICAgICBJbnB1dCBTYW1wbGUgUmF0ZSAoSHopICAgICAgICAgICAgICAgICAgICB8CisrLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKworfCAgIE91dHB1dCBHYWluIChRNy44IGluIGRCKSAgICB8IE1hcHBpbmcgRmFtaWx5fCAg
ICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSsgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgIE9wdGlv
bmFsIENoYW5uZWwgTWFwcGluZyBUYWJsZS4uLiAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cisr
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0PgorVGhlIGZpZWxkcyBpbiB0
aGUgaWRlbnRpZmljYXRpb24gKElEKSBoZWFkZXIgaGF2ZSB0aGUgZm9sbG93aW5nIG1lYW5pbmc6
Cis8bGlzdCBzdHlsZT0ibnVtYmVycyI+Cis8dD5NYWdpYyBTaWduYXR1cmU6Cis8dnNwYWNlIGJs
YW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgYW4gOC1vY3RldCAoNjQtYml0KSBmaWVsZCB0aGF0IGFs
bG93cyBjb2RlYyBpZGVudGlmaWNhdGlvbiBhbmQgaXMKKyBodW1hbi1yZWFkYWJsZS4KK0l0IGNv
bnRhaW5zLCBpbiBvcmRlciwgdGhlIG1hZ2ljIG51bWJlcnM6Cis8bGlzdCBzdHlsZT0iZW1wdHki
PgorPHQ+MHg0RiAnTyc8L3Q+Cis8dD4weDcwICdwJzwvdD4KKzx0PjB4NzUgJ3UnPC90PgorPHQ+
MHg3MyAncyc8L3Q+Cis8dD4weDQ4ICdIJzwvdD4KKzx0PjB4NjUgJ2UnPC90PgorPHQ+MHg2MSAn
YSc8L3Q+Cis8dD4weDY0ICdkJzwvdD4KKzwvbGlzdD4KK1N0YXJ0aW5nIHdpdGggIk9wIiBoZWxw
cyBkaXN0aW5ndWlzaCBpdCBmcm9tIGF1ZGlvIGRhdGEgcGFja2V0cywgYXMgdGhpcyBpcyBhbgor
IGludmFsaWQgVE9DIHNlcXVlbmNlLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8
dD5WZXJzaW9uICg4IGJpdHMsIHVuc2lnbmVkKToKKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgor
VGhlIHZlcnNpb24gbnVtYmVyIE1VU1QgYWx3YXlzIGJlICcxJyBmb3IgdGhpcyB2ZXJzaW9uIG9m
IHRoZSBlbmNhcHN1bGF0aW9uCisgc3BlY2lmaWNhdGlvbi4KK0ltcGxlbWVudGF0aW9ucyBTSE9V
TEQgdHJlYXQgc3RyZWFtcyB3aGVyZSB0aGUgdXBwZXIgZm91ciBiaXRzIG9mIHRoZSB2ZXJzaW9u
CisgbnVtYmVyIG1hdGNoIHRoYXQgb2YgYSByZWNvZ25pemVkIHNwZWNpZmljYXRpb24gYXMgYmFj
a3dhcmRzLWNvbXBhdGlibGUgd2l0aAorIHRoYXQgc3BlY2lmaWNhdGlvbi4KK1RoYXQgaXMsIHRo
ZSB2ZXJzaW9uIG51bWJlciBjYW4gYmUgc3BsaXQgaW50byAibWFqb3IiIGFuZCAibWlub3IiIHZl
cnNpb24KKyBzdWItZmllbGRzLCB3aXRoIGNoYW5nZXMgdG8gdGhlICJtaW5vciIgc3ViLWZpZWxk
IChpbiB0aGUgbG93ZXIgZm91ciBiaXRzKQorIHNpZ25hbGluZyBjb21wYXRpYmxlIGNoYW5nZXMu
CitGb3IgZXhhbXBsZSwgYW4gaW1wbGVtZW50YXRpb24gb2YgdGhpcyBzcGVjaWZpY2F0aW9uIFNI
T1VMRCBhY2NlcHQgYW55IHN0cmVhbQorIHdpdGggYSB2ZXJzaW9uIG51bWJlciBvZiAnMTUnIG9y
IGxlc3MsIGFuZCBTSE9VTEQgYXNzdW1lIGFueSBzdHJlYW0gd2l0aCBhCisgdmVyc2lvbiBudW1i
ZXIgJzE2JyBvciBncmVhdGVyIGlzIGluY29tcGF0aWJsZS4KK1RoZSBpbml0aWFsIHZlcnNpb24g
JzEnIHdhcyBjaG9zZW4gdG8ga2VlcCBpbXBsZW1lbnRhdGlvbnMgZnJvbSByZWx5aW5nIG9uIHRo
aXMKKyBvY3RldCBhcyBhIG51bGwgdGVybWluYXRvciBmb3IgdGhlICJPcHVzSGVhZCIgc3RyaW5n
LgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5PdXRwdXQgQ2hhbm5lbCBDb3Vu
dCAnQycgKDggYml0cywgdW5zaWduZWQpOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGlz
IGlzIHRoZSBudW1iZXIgb2Ygb3V0cHV0IGNoYW5uZWxzLgorVGhpcyBtaWdodCBiZSBkaWZmZXJl
bnQgdGhhbiB0aGUgbnVtYmVyIG9mIGVuY29kZWQgY2hhbm5lbHMsIHdoaWNoIGNhbiBjaGFuZ2UK
KyBvbiBhIHBhY2tldC1ieS1wYWNrZXQgYmFzaXMuCitUaGlzIHZhbHVlIE1VU1QgTk9UIGJlIHpl
cm8uCitUaGUgbWF4aW11bSBhbGxvd2FibGUgdmFsdWUgZGVwZW5kcyBvbiB0aGUgY2hhbm5lbCBt
YXBwaW5nIGZhbWlseSwgYW5kIG1pZ2h0IGJlCisgYXMgbGFyZ2UgYXMgMjU1LgorU2VlIDx4cmVm
IHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nIi8+IGZvciBkZXRhaWxzLgorPHZzcGFjZSBibGFua0xp
bmVzPSIxIi8+Cis8L3Q+Cis8dD5QcmUtc2tpcCAoMTYgYml0cywgdW5zaWduZWQsIGxpdHRsZQor
IGVuZGlhbik6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgdGhlIG51bWJlciBv
ZiBzYW1wbGVzIChhdCA0OCZuYnNwO2tIeikgdG8gZGlzY2FyZCBmcm9tIHRoZSBkZWNvZGVyCisg
b3V0cHV0IHdoZW4gc3RhcnRpbmcgcGxheWJhY2ssIGFuZCBhbHNvIHRoZSBudW1iZXIgdG8gc3Vi
dHJhY3QgZnJvbSBhIHBhZ2UncworIGdyYW51bGUgcG9zaXRpb24gdG8gY2FsY3VsYXRlIGl0cyBQ
Q00gc2FtcGxlIHBvc2l0aW9uLgorV2hlbiBjcm9wcGluZyB0aGUgYmVnaW5uaW5nIG9mIGV4aXN0
aW5nIE9nZyBPcHVzIHN0cmVhbXMsIGEgcHJlLXNraXAgb2YgYXQKKyBsZWFzdCAzLDg0MCZuYnNw
O3NhbXBsZXMgKDgwJm5ic3A7bXMpIGlzIFJFQ09NTUVOREVEIHRvIGVuc3VyZSBjb21wbGV0ZQor
IGNvbnZlcmdlbmNlIGluIHRoZSBkZWNvZGVyLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8
L3Q+Cis8dD5JbnB1dCBTYW1wbGUgUmF0ZSAoMzIgYml0cywgdW5zaWduZWQsIGxpdHRsZQorIGVu
ZGlhbik6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgdGhlIHNhbXBsZSByYXRl
IG9mIHRoZSBvcmlnaW5hbCBpbnB1dCAoYmVmb3JlIGVuY29kaW5nKSwgaW4gSHouCitUaGlzIGZp
ZWxkIGlzIDxzcGFueCBzdHlsZT0iZW1waCI+bm90PC9zcGFueD4gdGhlIHNhbXBsZSByYXRlIHRv
IHVzZSBmb3IKKyBwbGF5YmFjayBvZiB0aGUgZW5jb2RlZCBkYXRhLgorPHZzcGFjZSBibGFua0xp
bmVzPSIxIi8+CitPcHVzIGNhbiBzd2l0Y2ggYmV0d2VlbiBpbnRlcm5hbCBhdWRpbyBiYW5kd2lk
dGhzIG9mIDQsIDYsIDgsIDEyLCBhbmQKKyAyMCZuYnNwO2tIei4KK0VhY2ggcGFja2V0IGluIHRo
ZSBzdHJlYW0gY2FuIGhhdmUgYSBkaWZmZXJlbnQgYXVkaW8gYmFuZHdpZHRoLgorUmVnYXJkbGVz
cyBvZiB0aGUgYXVkaW8gYmFuZHdpZHRoLCB0aGUgcmVmZXJlbmNlIGRlY29kZXIgc3VwcG9ydHMg
ZGVjb2RpbmcgYW55Cisgc3RyZWFtIGF0IGEgc2FtcGxlIHJhdGUgb2YgOCwgMTIsIDE2LCAyNCwg
b3IgNDgmbmJzcDtrSHouCitUaGUgb3JpZ2luYWwgc2FtcGxlIHJhdGUgb2YgdGhlIGF1ZGlvIHBh
c3NlZCB0byB0aGUgZW5jb2RlciBpcyBub3QgcHJlc2VydmVkCisgYnkgdGhlIGxvc3N5IGNvbXBy
ZXNzaW9uLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitBbiBPZ2cgT3B1cyBwbGF5ZXIgU0hP
VUxEIHNlbGVjdCB0aGUgcGxheWJhY2sgc2FtcGxlIHJhdGUgYWNjb3JkaW5nIHRvIHRoZQorIGZv
bGxvd2luZyBwcm9jZWR1cmU6Cis8bGlzdCBzdHlsZT0ibnVtYmVycyI+Cis8dD5JZiB0aGUgaGFy
ZHdhcmUgc3VwcG9ydHMgNDgmbmJzcDtrSHogcGxheWJhY2ssIGRlY29kZSBhdCA0OCZuYnNwO2tI
ei48L3Q+Cis8dD5PdGhlcndpc2UsIGlmIHRoZSBoYXJkd2FyZSdzIGhpZ2hlc3QgYXZhaWxhYmxl
IHNhbXBsZSByYXRlIGlzIGEgc3VwcG9ydGVkCisgcmF0ZSwgZGVjb2RlIGF0IHRoaXMgc2FtcGxl
IHJhdGUuPC90PgorPHQ+T3RoZXJ3aXNlLCBpZiB0aGUgaGFyZHdhcmUncyBoaWdoZXN0IGF2YWls
YWJsZSBzYW1wbGUgcmF0ZSBpcyBsZXNzIHRoYW4KKyA0OCZuYnNwO2tIeiwgZGVjb2RlIGF0IHRo
ZSBuZXh0IGhpZ2hlciBPcHVzIHN1cHBvcnRlZCByYXRlIGFib3ZlIHRoZSBoaWdoZXN0CisgYXZh
aWxhYmxlIGhhcmR3YXJlIHJhdGUgYW5kIHJlc2FtcGxlLjwvdD4KKzx0Pk90aGVyd2lzZSwgZGVj
b2RlIGF0IDQ4Jm5ic3A7a0h6IGFuZCByZXNhbXBsZS48L3Q+Cis8L2xpc3Q+CitIb3dldmVyLCB0
aGUgJ0lucHV0IFNhbXBsZSBSYXRlJyBmaWVsZCBhbGxvd3MgdGhlIG11eGVyIHRvIHBhc3MgdGhl
IHNhbXBsZQorIHJhdGUgb2YgdGhlIG9yaWdpbmFsIGlucHV0IHN0cmVhbSBhcyBtZXRhZGF0YS4K
K1RoaXMgaXMgdXNlZnVsIHdoZW4gdGhlIHVzZXIgcmVxdWlyZXMgdGhlIG91dHB1dCBzYW1wbGUg
cmF0ZSB0byBtYXRjaCB0aGUKKyBpbnB1dCBzYW1wbGUgcmF0ZS4KK0ZvciBleGFtcGxlLCB3aGVu
IG5vdCBwbGF5aW5nIHRoZSBvdXRwdXQsIGFuIGltcGxlbWVudGF0aW9uIHdyaXRpbmcgUENNIGZv
cm1hdAorIHNhbXBsZXMgdG8gZGlzayBtaWdodCBjaG9vc2UgdG8gcmVzYW1wbGUgdGhlIGF1ZGlv
IGJhY2sgdG8gdGhlIG9yaWdpbmFsIGlucHV0Cisgc2FtcGxlIHJhdGUgdG8gcmVkdWNlIHN1cnBy
aXNlIHRvIHRoZSB1c2VyLCB3aG8gbWlnaHQgcmVhc29uYWJseSBleHBlY3QgdG8gZ2V0CisgYmFj
ayBhIGZpbGUgd2l0aCB0aGUgc2FtZSBzYW1wbGUgcmF0ZS4KKzx2c3BhY2UgYmxhbmtMaW5lcz0i
MSIvPgorQSB2YWx1ZSBvZiB6ZXJvIGluZGljYXRlcyAndW5zcGVjaWZpZWQnLgorTXV4ZXJzIFNI
T1VMRCB3cml0ZSB0aGUgYWN0dWFsIGlucHV0IHNhbXBsZSByYXRlIG9yIHplcm8sIGJ1dCBpbXBs
ZW1lbnRhdGlvbnMKKyB3aGljaCBkbyBzb21ldGhpbmcgd2l0aCB0aGlzIGZpZWxkIFNIT1VMRCB0
YWtlIGNhcmUgdG8gYmVoYXZlIHNhbmVseSBpZiBnaXZlbgorIGNyYXp5IHZhbHVlcyAoZS5nLiwg
ZG8gbm90IGFjdHVhbGx5IHVwc2FtcGxlIHRoZSBvdXRwdXQgdG8gMTAgTUh6IGlmCisgcmVxdWVz
dGVkKS4KK0ltcGxlbWVudGF0aW9ucyBTSE9VTEQgc3VwcG9ydCBpbnB1dCBzYW1wbGUgcmF0ZXMg
YmV0d2VlbiA4Jm5ic3A7a0h6IGFuZAorIDE5MiZuYnNwO2tIeiAoaW5jbHVzaXZlKS4KK1JhdGVz
IG91dHNpZGUgdGhpcyByYW5nZSBNQVkgYmUgaWdub3JlZCBieSBmYWxsaW5nIGJhY2sgdG8gdGhl
IGRlZmF1bHQgcmF0ZSBvZgorIDQ4Jm5ic3A7a0h6IGluc3RlYWQuCis8dnNwYWNlIGJsYW5rTGlu
ZXM9IjEiLz4KKzwvdD4KKzx0Pk91dHB1dCBHYWluICgxNiBiaXRzLCBzaWduZWQsIGxpdHRsZSBl
bmRpYW4pOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGlzIGlzIGEgZ2FpbiB0byBiZSBh
cHBsaWVkIHdoZW4gZGVjb2RpbmcuCitJdCBpcyAyMCpsb2cxMCBvZiB0aGUgZmFjdG9yIGJ5IHdo
aWNoIHRvIHNjYWxlIHRoZSBkZWNvZGVyIG91dHB1dCB0byBhY2hpZXZlCisgdGhlIGRlc2lyZWQg
cGxheWJhY2sgdm9sdW1lLCBzdG9yZWQgaW4gYSAxNi1iaXQsIHNpZ25lZCwgdHdvJ3MgY29tcGxl
bWVudAorIGZpeGVkLXBvaW50IHZhbHVlIHdpdGggOCBmcmFjdGlvbmFsIGJpdHMgKGkuZS4sCisg
UTcuOCZuYnNwOzx4cmVmIHRhcmdldD0icS1ub3RhdGlvbiIvPikuCis8dnNwYWNlIGJsYW5rTGlu
ZXM9IjEiLz4KK1RvIGFwcGx5IHRoZSBnYWluLCBhbiBpbXBsZW1lbnRhdGlvbiBjb3VsZCB1c2UK
KzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKK3NhbXBsZSAqPSBwb3coMTAsIG91dHB1dF9nYWluLygyMC4wKjI1NikpICwKK11dPjwvYXJ0
d29yaz4KKzwvZmlndXJlPgorIHdoZXJlIG91dHB1dF9nYWluIGlzIHRoZSByYXcgMTYtYml0IHZh
bHVlIGZyb20gdGhlIGhlYWRlci4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorUGxheWVycyBh
bmQgbWVkaWEgZnJhbWV3b3JrcyBTSE9VTEQgYXBwbHkgaXQgYnkgZGVmYXVsdC4KK0lmIGEgcGxh
eWVyIGNob29zZXMgdG8gYXBwbHkgYW55IHZvbHVtZSBhZGp1c3RtZW50IG9yIGdhaW4gbW9kaWZp
Y2F0aW9uLCBzdWNoCisgYXMgdGhlIFIxMjhfVFJBQ0tfR0FJTiAoc2VlIDx4cmVmIHRhcmdldD0i
Y29tbWVudF9oZWFkZXIiLz4pLCB0aGUgYWRqdXN0bWVudAorIE1VU1QgYmUgYXBwbGllZCBpbiBh
ZGRpdGlvbiB0byB0aGlzIG91dHB1dCBnYWluIGluIG9yZGVyIHRvIGFjaGlldmUgcGxheWJhY2sK
KyBhdCB0aGUgbm9ybWFsaXplZCB2b2x1bWUuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0Eg
bXV4ZXIgU0hPVUxEIHNldCB0aGlzIGZpZWxkIHRvIHplcm8sIGFuZCBpbnN0ZWFkIGFwcGx5IGFu
eSBnYWluIHByaW9yIHRvCisgZW5jb2RpbmcsIHdoZW4gdGhpcyBpcyBwb3NzaWJsZSBhbmQgZG9l
cyBub3QgY29uZmxpY3Qgd2l0aCB0aGUgdXNlcidzIHdpc2hlcy4KK0Egbm9uemVybyBvdXRwdXQg
Z2FpbiBpbmRpY2F0ZXMgdGhlIGdhaW4gd2FzIGFkanVzdGVkIGFmdGVyIGVuY29kaW5nLCBvciB0
aGF0CisgYSB1c2VyIHdpc2hlZCB0byBhZGp1c3QgdGhlIGdhaW4gZm9yIHBsYXliYWNrIHdoaWxl
IHByZXNlcnZpbmcgdGhlIGFiaWxpdHkKKyB0byByZWNvdmVyIHRoZSBvcmlnaW5hbCBzaWduYWwg
YW1wbGl0dWRlLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitBbHRob3VnaCB0aGUgb3V0cHV0
IGdhaW4gaGFzIGVub3Jtb3VzIHJhbmdlICgrLy0gMTI4IGRCLCBlbm91Z2ggdG8gYW1wbGlmeQor
IGluYXVkaWJsZSBzb3VuZHMgdG8gdGhlIHRocmVzaG9sZCBvZiBwaHlzaWNhbCBwYWluKSwgbW9z
dCBhcHBsaWNhdGlvbnMgY2FuCisgb25seSByZWFzb25hYmx5IHVzZSBhIHNtYWxsIHBvcnRpb24g
b2YgdGhpcyByYW5nZSBhcm91bmQgemVyby4KK1RoZSBsYXJnZSByYW5nZSBzZXJ2ZXMgaW4gcGFy
dCB0byBlbnN1cmUgdGhhdCBnYWluIGNhbiBhbHdheXMgYmUgbG9zc2xlc3NseQorIHRyYW5zZmVy
cmVkIGJldHdlZW4gT3B1c0hlYWQgYW5kIFIxMjggZ2FpbiB0YWdzIChzZWUgYmVsb3cpIHdpdGhv
dXQKKyBzYXR1cmF0aW5nLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5DaGFu
bmVsIE1hcHBpbmcgRmFtaWx5ICg4IGJpdHMsIHVuc2lnbmVkKToKKzx2c3BhY2UgYmxhbmtMaW5l
cz0iMSIvPgorVGhpcyBvY3RldCBpbmRpY2F0ZXMgdGhlIG9yZGVyIGFuZCBzZW1hbnRpYyBtZWFu
aW5nIG9mIHRoZSBvdXRwdXQgY2hhbm5lbHMuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0Vh
Y2ggY3VycmVudGx5IHNwZWNpZmllZCB2YWx1ZSBvZiB0aGlzIG9jdGV0IGluZGljYXRlcyBhIG1h
cHBpbmcgZmFtaWx5LCB3aGljaAorIGRlZmluZXMgYSBzZXQgb2YgYWxsb3dlZCBjaGFubmVsIGNv
dW50cywgYW5kIHRoZSBvcmRlcmVkIHNldCBvZiBjaGFubmVsIG5hbWVzCisgZm9yIGVhY2ggYWxs
b3dlZCBjaGFubmVsIGNvdW50LgorVGhlIGRldGFpbHMgYXJlIGRlc2NyaWJlZCBpbiA8eHJlZiB0
YXJnZXQ9ImNoYW5uZWxfbWFwcGluZyIvPi4KKzwvdD4KKzx0PkNoYW5uZWwgTWFwcGluZyBUYWJs
ZToKK1RoaXMgdGFibGUgZGVmaW5lcyB0aGUgbWFwcGluZyBmcm9tIGVuY29kZWQgc3RyZWFtcyB0
byBvdXRwdXQgY2hhbm5lbHMuCitJdHMgY29udGVudHMgYXJlIHNwZWNpZmllZCBpbiA8eHJlZiB0
YXJnZXQ9ImNoYW5uZWxfbWFwcGluZyIvPi4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitB
bGwgZmllbGRzIGluIHRoZSBJRCBoZWFkZXJzIGFyZSBSRVFVSVJFRCwgZXhjZXB0IGZvciB0aGUg
Y2hhbm5lbCBtYXBwaW5nCisgdGFibGUsIHdoaWNoIE1VU1QgYmUgb21pdHRlZCB3aGVuIHRoZSBj
aGFubmVsIG1hcHBpbmcgZmFtaWx5IGlzIDAsIGJ1dAorIGlzIFJFUVVJUkVEIG90aGVyd2lzZS4K
K0ltcGxlbWVudGF0aW9ucyBTSE9VTEQgdHJlYXQgYSBzdHJlYW0gYXMgaW52YWxpZCBpZiBpdCBj
b250YWlucyBhbiBJRCBoZWFkZXIKKyB0aGF0IGRvZXMgbm90IGhhdmUgZW5vdWdoIGRhdGEgZm9y
IHRoZXNlIGZpZWxkcywgZXZlbiBpZiBpdCBjb250YWluIGEgdmFsaWQKKyBNYWdpYyBTaWduYXR1
cmUuCitGdXR1cmUgdmVyc2lvbnMgb2YgdGhpcyBzcGVjaWZpY2F0aW9uLCBldmVuIGJhY2t3YXJk
cy1jb21wYXRpYmxlIHZlcnNpb25zLAorIG1pZ2h0IGluY2x1ZGUgYWRkaXRpb25hbCBmaWVsZHMg
aW4gdGhlIElEIGhlYWRlci4KK0lmIGFuIElEIGhlYWRlciBoYXMgYSBjb21wYXRpYmxlIG1ham9y
IHZlcnNpb24sIGJ1dCBhIGxhcmdlciBtaW5vciB2ZXJzaW9uLAorIGFuIGltcGxlbWVudGF0aW9u
IE1VU1QgTk9UIHRyZWF0IGl0IGFzIGludmFsaWQgZm9yIGNvbnRhaW5pbmcgYWRkaXRpb25hbCBk
YXRhCisgbm90IHNwZWNpZmllZCBoZXJlLCBwcm92aWRlZCBpdCBzdGlsbCBjb21wbGV0ZXMgb24g
dGhlIGZpcnN0IHBhZ2UuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0iY2hhbm5lbF9tYXBwaW5n
IiB0aXRsZT0iQ2hhbm5lbCBNYXBwaW5nIj4KKzx0PgorQW4gT2dnIE9wdXMgc3RyZWFtIGFsbG93
cyBtYXBwaW5nIG9uZSBudW1iZXIgb2YgT3B1cyBzdHJlYW1zIChOKSB0byBhIHBvc3NpYmx5Cisg
bGFyZ2VyIG51bWJlciBvZiBkZWNvZGVkIGNoYW5uZWxzIChNJm5ic3A7KyZuYnNwO04pIHRvIHll
dCBhbm90aGVyIG51bWJlciBvZgorIG91dHB1dCBjaGFubmVscyAoQyksIHdoaWNoIG1pZ2h0IGJl
IGxhcmdlciBvciBzbWFsbGVyIHRoYW4gdGhlIG51bWJlciBvZgorIGRlY29kZWQgY2hhbm5lbHMu
CitUaGUgb3JkZXIgYW5kIG1lYW5pbmcgb2YgdGhlc2UgY2hhbm5lbHMgYXJlIGRlZmluZWQgYnkg
YSBjaGFubmVsIG1hcHBpbmcsCisgd2hpY2ggY29uc2lzdHMgb2YgdGhlICdjaGFubmVsIG1hcHBp
bmcgZmFtaWx5JyBvY3RldCBhbmQsIGZvciBjaGFubmVsIG1hcHBpbmcKKyBmYW1pbGllcyBvdGhl
ciB0aGFuIGZhbWlseSZuYnNwOzAsIGEgY2hhbm5lbCBtYXBwaW5nIHRhYmxlLCBhcyBpbGx1c3Ry
YXRlZCBpbgorIDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nX3RhYmxlIi8+LgorPC90Pgor
Cis8ZmlndXJlIGFuY2hvcj0iY2hhbm5lbF9tYXBwaW5nX3RhYmxlIiB0aXRsZT0iQ2hhbm5lbCBN
YXBwaW5nIFRhYmxlIgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAg
ICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDgg
OSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKy0rLSstKy0rLSstKy0rLSsKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgU3RyZWFtIENvdW50ICB8CisrLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwor
fCBDb3VwbGVkIENvdW50IHwgICAgICAgICAgICAgIENoYW5uZWwgTWFwcGluZy4uLiAgICAgICAg
ICAgICAgIDoKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitUaGUg
ZmllbGRzIGluIHRoZSBjaGFubmVsIG1hcHBpbmcgdGFibGUgaGF2ZSB0aGUgZm9sbG93aW5nIG1l
YW5pbmc6Cis8bGlzdCBzdHlsZT0ibnVtYmVycyIgY291bnRlcj0iOCI+Cis8dD5TdHJlYW0gQ291
bnQgJ04nICg4IGJpdHMsIHVuc2lnbmVkKToKKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhp
cyBpcyB0aGUgdG90YWwgbnVtYmVyIG9mIHN0cmVhbXMgZW5jb2RlZCBpbiBlYWNoIE9nZyBwYWNr
ZXQuCitUaGlzIHZhbHVlIGlzIG5lY2Vzc2FyeSB0byBjb3JyZWN0bHkgcGFyc2UgdGhlIHBhY2tl
ZCBPcHVzIHBhY2tldHMgaW5zaWRlIGFuCisgT2dnIHBhY2tldCwgYXMgZGVzY3JpYmVkIGluIDx4
cmVmIHRhcmdldD0icGFja2V0X29yZ2FuaXphdGlvbiIvPi4KK1RoaXMgdmFsdWUgTVVTVCBOT1Qg
YmUgemVybywgYXMgd2l0aG91dCBhdCBsZWFzdCBvbmUgT3B1cyBwYWNrZXQgd2l0aCBhIHZhbGlk
CisgVE9DIHNlcXVlbmNlLCBhIGRlbXV4ZXIgY2Fubm90IHJlY292ZXIgdGhlIGR1cmF0aW9uIG9m
IGFuIE9nZyBwYWNrZXQuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0ZvciBjaGFubmVsIG1h
cHBpbmcgZmFtaWx5Jm5ic3A7MCwgdGhpcyB2YWx1ZSBkZWZhdWx0cyB0byAxLCBhbmQgaXMgbm90
IGNvZGVkLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5Db3VwbGVkIFN0cmVh
bSBDb3VudCAnTScgKDggYml0cywgdW5zaWduZWQpOgorVGhpcyBpcyB0aGUgbnVtYmVyIG9mIHN0
cmVhbXMgd2hvc2UgZGVjb2RlcnMgYXJlIHRvIGJlIGNvbmZpZ3VyZWQgdG8gcHJvZHVjZQorIHR3
byBjaGFubmVscyAoc3RlcmVvKS4KK1RoaXMgTVVTVCBiZSBubyBsYXJnZXIgdGhhbiB0aGUgdG90
YWwgbnVtYmVyIG9mIHN0cmVhbXMsIE4uCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0VhY2gg
cGFja2V0IGluIGFuIE9wdXMgc3RyZWFtIGhhcyBhbiBpbnRlcm5hbCBjaGFubmVsIGNvdW50IG9m
IDEgb3IgMiwgd2hpY2gKKyBjYW4gY2hhbmdlIGZyb20gcGFja2V0IHRvIHBhY2tldC4KK1RoaXMg
aXMgc2VsZWN0ZWQgYnkgdGhlIGVuY29kZXIgZGVwZW5kaW5nIG9uIHRoZSBiaXRyYXRlIGFuZCB0
aGUgYXVkaW8gYmVpbmcKKyBlbmNvZGVkLgorVGhlIG9yaWdpbmFsIGNoYW5uZWwgY291bnQgb2Yg
dGhlIGF1ZGlvIHBhc3NlZCB0byB0aGUgZW5jb2RlciBpcyBub3QKKyBuZWNlc3NhcmlseSBwcmVz
ZXJ2ZWQgYnkgdGhlIGxvc3N5IGNvbXByZXNzaW9uLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+
CitSZWdhcmRsZXNzIG9mIHRoZSBpbnRlcm5hbCBjaGFubmVsIGNvdW50LCBhbnkgT3B1cyBzdHJl
YW0gY2FuIGJlIGRlY29kZWQgYXMKKyBtb25vIChhIHNpbmdsZSBjaGFubmVsKSBvciBzdGVyZW8g
KHR3byBjaGFubmVscykgYnkgYXBwcm9wcmlhdGUgaW5pdGlhbGl6YXRpb24KKyBvZiB0aGUgZGVj
b2Rlci4KK1RoZSAnY291cGxlZCBzdHJlYW0gY291bnQnIGZpZWxkIGluZGljYXRlcyB0aGF0IHRo
ZSBkZWNvZGVycyBmb3IgdGhlIGZpcnN0IE0KKyBPcHVzIHN0cmVhbXMgYXJlIHRvIGJlIGluaXRp
YWxpemVkIGZvciBzdGVyZW8gKHR3by1jaGFubmVsKSBvdXRwdXQsIGFuZCB0aGUKKyByZW1haW5p
bmcgKE4mbmJzcDstJm5ic3A7TSkgZGVjb2RlcnMgYXJlIHRvIGJlIGluaXRpYWxpemVkIGZvciBt
b25vIChhIHNpbmdsZQorIGNoYW5uZWwpIG9ubHkuCitUaGUgdG90YWwgbnVtYmVyIG9mIGRlY29k
ZWQgY2hhbm5lbHMsIChNJm5ic3A7KyZuYnNwO04pLCBNVVNUIGJlIG5vIGxhcmdlciB0aGFuCisg
MjU1LCBhcyB0aGVyZSBpcyBubyB3YXkgdG8gaW5kZXggbW9yZSBjaGFubmVscyB0aGFuIHRoYXQg
aW4gdGhlIGNoYW5uZWwKKyBtYXBwaW5nLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitGb3Ig
Y2hhbm5lbCBtYXBwaW5nIGZhbWlseSZuYnNwOzAsIHRoaXMgdmFsdWUgZGVmYXVsdHMgdG8gKEMm
bmJzcDstJm5ic3A7MSkKKyAoaS5lLiwgMCBmb3IgbW9ubyBhbmQgMSBmb3Igc3RlcmVvKSwgYW5k
IGlzIG5vdCBjb2RlZC4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorPC90PgorPHQ+Q2hhbm5l
bCBNYXBwaW5nICg4KkMgYml0cyk6CitUaGlzIGNvbnRhaW5zIG9uZSBvY3RldCBwZXIgb3V0cHV0
IGNoYW5uZWwsIGluZGljYXRpbmcgd2hpY2ggZGVjb2RlZCBjaGFubmVsCisgaXMgdG8gYmUgdXNl
ZCBmb3IgZWFjaCBvbmUuCitMZXQgJ2luZGV4JyBiZSB0aGUgdmFsdWUgb2YgdGhpcyBvY3RldCBm
b3IgYSBwYXJ0aWN1bGFyIG91dHB1dCBjaGFubmVsLgorVGhpcyB2YWx1ZSBNVVNUIGVpdGhlciBi
ZSBzbWFsbGVyIHRoYW4gKE0mbmJzcDsrJm5ic3A7TiksIG9yIGJlIHRoZSBzcGVjaWFsCisgdmFs
dWUgMjU1LgorSWYgJ2luZGV4JyBpcyBsZXNzIHRoYW4gMipNLCB0aGUgb3V0cHV0IE1VU1QgYmUg
dGFrZW4gZnJvbSBkZWNvZGluZyBzdHJlYW0KKyAoJ2luZGV4Jy8yKSBhcyBzdGVyZW8gYW5kIHNl
bGVjdGluZyB0aGUgbGVmdCBjaGFubmVsIGlmICdpbmRleCcgaXMgZXZlbiwgYW5kCisgdGhlIHJp
Z2h0IGNoYW5uZWwgaWYgJ2luZGV4JyBpcyBvZGQuCitJZiAnaW5kZXgnIGlzIDIqTSBvciBsYXJn
ZXIsIGJ1dCBsZXNzIHRoYW4gMjU1LCB0aGUgb3V0cHV0IE1VU1QgYmUgdGFrZW4gZnJvbQorIGRl
Y29kaW5nIHN0cmVhbSAoJ2luZGV4JyZuYnNwOy0mbmJzcDtNKSBhcyBtb25vLgorSWYgJ2luZGV4
JyBpcyAyNTUsIHRoZSBjb3JyZXNwb25kaW5nIG91dHB1dCBjaGFubmVsIE1VU1QgY29udGFpbiBw
dXJlIHNpbGVuY2UuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoZSBudW1iZXIgb2Ygb3V0
cHV0IGNoYW5uZWxzLCBDLCBpcyBub3QgY29uc3RyYWluZWQgdG8gbWF0Y2ggdGhlIG51bWJlciBv
ZgorIGRlY29kZWQgY2hhbm5lbHMgKE0mbmJzcDsrJm5ic3A7TikuCitBIHNpbmdsZSBpbmRleCB2
YWx1ZSBNQVkgYXBwZWFyIG11bHRpcGxlIHRpbWVzLCBpLmUuLCB0aGUgc2FtZSBkZWNvZGVkIGNo
YW5uZWwKKyBtaWdodCBiZSBtYXBwZWQgdG8gbXVsdGlwbGUgb3V0cHV0IGNoYW5uZWxzLgorU29t
ZSBkZWNvZGVkIGNoYW5uZWxzIG1pZ2h0IG5vdCBiZSBhc3NpZ25lZCB0byBhbnkgb3V0cHV0IGNo
YW5uZWwsIGFzIHdlbGwuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0ZvciBjaGFubmVsIG1h
cHBpbmcgZmFtaWx5Jm5ic3A7MCwgdGhlIGZpcnN0IGluZGV4IGRlZmF1bHRzIHRvIDAsIGFuZCBp
ZgorIEMmbmJzcDs9PSZuYnNwOzIsIHRoZSBzZWNvbmQgaW5kZXggZGVmYXVsdHMgdG8gMS4KK05l
aXRoZXIgaW5kZXggaXMgY29kZWQuCis8L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzx0PgorQWZ0ZXIg
cHJvZHVjaW5nIHRoZSBvdXRwdXQgY2hhbm5lbHMsIHRoZSBjaGFubmVsIG1hcHBpbmcgZmFtaWx5
IGRldGVybWluZXMgdGhlCisgc2VtYW50aWMgbWVhbmluZyBvZiBlYWNoIG9uZS4KK1RoZXJlIGFy
ZSB0aHJlZSBkZWZpbmVkIG1hcHBpbmcgZmFtaWxpZXMgaW4gdGhpcyBzcGVjaWZpY2F0aW9uLgor
PC90PgorCis8c2VjdGlvbiBhbmNob3I9ImNoYW5uZWxfbWFwcGluZ18wIiB0aXRsZT0iQ2hhbm5l
bCBNYXBwaW5nIEZhbWlseSAwIj4KKzx0PgorQWxsb3dlZCBudW1iZXJzIG9mIGNoYW5uZWxzOiAx
IG9yIDIuCitSVFAgbWFwcGluZy4KK1RoaXMgaXMgdGhlIHNhbWUgY2hhbm5lbCBpbnRlcnByZXRh
dGlvbiBhcyA8eHJlZiB0YXJnZXQ9IlJGQzc1ODciLz4uCis8L3Q+Cis8dD4KKzxsaXN0IHN0eWxl
PSJzeW1ib2xzIj4KKzx0PjEgY2hhbm5lbDogbW9ub3Bob25pYyAobW9ubykuPC90PgorPHQ+MiBj
aGFubmVsczogc3RlcmVvIChsZWZ0LCByaWdodCkuPC90PgorPC9saXN0PgorU3BlY2lhbCBtYXBw
aW5nOiBUaGlzIGNoYW5uZWwgbWFwcGluZyB2YWx1ZSBhbHNvCisgaW5kaWNhdGVzIHRoYXQgdGhl
IGNvbnRlbnRzIGNvbnNpc3RzIG9mIGEgc2luZ2xlIE9wdXMgc3RyZWFtIHRoYXQgaXMgc3RlcmVv
IGlmCisgYW5kIG9ubHkgaWYgQyZuYnNwOz09Jm5ic3A7Miwgd2l0aCBzdHJlYW0gaW5kZXgmbmJz
cDswIG1hcHBlZCB0byBvdXRwdXQKKyBjaGFubmVsJm5ic3A7MCAobW9ubywgb3IgbGVmdCBjaGFu
bmVsKSBhbmQgc3RyZWFtIGluZGV4Jm5ic3A7MSBtYXBwZWQgdG8KKyBvdXRwdXQgY2hhbm5lbCZu
YnNwOzEgKHJpZ2h0IGNoYW5uZWwpIGlmIHN0ZXJlby4KK1doZW4gdGhlICdjaGFubmVsIG1hcHBp
bmcgZmFtaWx5JyBvY3RldCBoYXMgdGhpcyB2YWx1ZSwgdGhlIGNoYW5uZWwgbWFwcGluZworIHRh
YmxlIE1VU1QgYmUgb21pdHRlZCBmcm9tIHRoZSBJRCBoZWFkZXIgcGFja2V0LgorPC90PgorPC9z
ZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImNoYW5uZWxfbWFwcGluZ18xIiB0aXRsZT0iQ2hh
bm5lbCBNYXBwaW5nIEZhbWlseSAxIj4KKzx0PgorQWxsb3dlZCBudW1iZXJzIG9mIGNoYW5uZWxz
OiAxLi4uOC4KK1ZvcmJpcyBjaGFubmVsIG9yZGVyIChzZWUgYmVsb3cpLgorPC90PgorPHQ+CitF
YWNoIGNoYW5uZWwgaXMgYXNzaWduZWQgdG8gYSBzcGVha2VyIGxvY2F0aW9uIGluIGEgY29udmVu
dGlvbmFsIHN1cnJvdW5kCisgYXJyYW5nZW1lbnQuCitTcGVjaWZpYyBsb2NhdGlvbnMgZGVwZW5k
IG9uIHRoZSBudW1iZXIgb2YgY2hhbm5lbHMsIGFuZCBhcmUgZ2l2ZW4gYmVsb3cKKyBpbiBvcmRl
ciBvZiB0aGUgY29ycmVzcG9uZGluZyBjaGFubmVsIGluZGljZXMuCis8bGlzdCBzdHlsZT0ic3lt
Ym9scyI+CisgIDx0PjEgY2hhbm5lbDogbW9ub3Bob25pYyAobW9ubykuPC90PgorICA8dD4yIGNo
YW5uZWxzOiBzdGVyZW8gKGxlZnQsIHJpZ2h0KS48L3Q+CisgIDx0PjMgY2hhbm5lbHM6IGxpbmVh
ciBzdXJyb3VuZCAobGVmdCwgY2VudGVyLCByaWdodCk8L3Q+CisgIDx0PjQgY2hhbm5lbHM6IHF1
YWRyYXBob25pYyAoZnJvbnQmbmJzcDtsZWZ0LCBmcm9udCZuYnNwO3JpZ2h0LCByZWFyJm5ic3A7
bGVmdCwgcmVhciZuYnNwO3JpZ2h0KS48L3Q+CisgIDx0PjUgY2hhbm5lbHM6IDUuMCBzdXJyb3Vu
ZCAoZnJvbnQmbmJzcDtsZWZ0LCBmcm9udCZuYnNwO2NlbnRlciwgZnJvbnQmbmJzcDtyaWdodCwg
cmVhciZuYnNwO2xlZnQsIHJlYXImbmJzcDtyaWdodCkuPC90PgorICA8dD42IGNoYW5uZWxzOiA1
LjEgc3Vycm91bmQgKGZyb250Jm5ic3A7bGVmdCwgZnJvbnQmbmJzcDtjZW50ZXIsIGZyb250Jm5i
c3A7cmlnaHQsIHJlYXImbmJzcDtsZWZ0LCByZWFyJm5ic3A7cmlnaHQsIExGRSkuPC90PgorICA8
dD43IGNoYW5uZWxzOiA2LjEgc3Vycm91bmQgKGZyb250Jm5ic3A7bGVmdCwgZnJvbnQmbmJzcDtj
ZW50ZXIsIGZyb250Jm5ic3A7cmlnaHQsIHNpZGUmbmJzcDtsZWZ0LCBzaWRlJm5ic3A7cmlnaHQs
IHJlYXImbmJzcDtjZW50ZXIsIExGRSkuPC90PgorICA8dD44IGNoYW5uZWxzOiA3LjEgc3Vycm91
bmQgKGZyb250Jm5ic3A7bGVmdCwgZnJvbnQmbmJzcDtjZW50ZXIsIGZyb250Jm5ic3A7cmlnaHQs
IHNpZGUmbmJzcDtsZWZ0LCBzaWRlJm5ic3A7cmlnaHQsIHJlYXImbmJzcDtsZWZ0LCByZWFyJm5i
c3A7cmlnaHQsIExGRSk8L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8dD4KK1RoaXMgc2V0IG9mIHN1cnJv
dW5kIG9wdGlvbnMgYW5kIHNwZWFrZXIgbG9jYXRpb24gb3JkZXJpbmdzIGlzIHRoZSBzYW1lCisg
YXMgdGhvc2UgdXNlZCBieSB0aGUgVm9yYmlzIGNvZGVjIDx4cmVmIHRhcmdldD0idm9yYmlzLW1h
cHBpbmciLz4uCitUaGUgb3JkZXJpbmcgaXMgZGlmZmVyZW50IGZyb20gdGhlIG9uZSB1c2VkIGJ5
IHRoZQorIFdBVkUgPHhyZWYgdGFyZ2V0PSJ3YXZlLW11bHRpY2hhbm5lbCIvPiBhbmQKKyBGcmVl
IExvc3NsZXNzIEF1ZGlvIENvZGVjIChGTEFDKSA8eHJlZiB0YXJnZXQ9ImZsYWMiLz4gZm9ybWF0
cywKKyBzbyBjb3JyZWN0IG9yZGVyaW5nIHJlcXVpcmVzIHBlcm11dGF0aW9uIG9mIHRoZSBvdXRw
dXQgY2hhbm5lbHMgd2hlbiBkZWNvZGluZworIHRvIG9yIGVuY29kaW5nIGZyb20gdGhvc2UgZm9y
bWF0cy4KKydMRkUnIGhlcmUgcmVmZXJzIHRvIGEgTG93IEZyZXF1ZW5jeSBFZmZlY3RzIGNoYW5u
ZWwsIG9mdGVuIG1hcHBlZCB0byBhCisgIHN1Yndvb2ZlciB3aXRoIG5vIHBhcnRpY3VsYXIgc3Bh
dGlhbCBwb3NpdGlvbi4KK0ltcGxlbWVudGF0aW9ucyBTSE9VTEQgaWRlbnRpZnkgJ3NpZGUnIG9y
ICdyZWFyJyBzcGVha2VyIGxvY2F0aW9ucyB3aXRoCisgJ3N1cnJvdW5kJyBhbmQgJ2JhY2snIGFz
IGFwcHJvcHJpYXRlIHdoZW4gaW50ZXJmYWNpbmcgd2l0aCBhdWRpbyBmb3JtYXRzCisgb3Igc3lz
dGVtcyB3aGljaCBwcmVmZXIgdGhhdCB0ZXJtaW5vbG9neS4KKzwvdD4KKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gYW5jaG9yPSJjaGFubmVsX21hcHBpbmdfMjU1IgorIHRpdGxlPSJDaGFubmVsIE1h
cHBpbmcgRmFtaWx5IDI1NSI+Cis8dD4KK0FsbG93ZWQgbnVtYmVycyBvZiBjaGFubmVsczogMS4u
LjI1NS4KK05vIGRlZmluZWQgY2hhbm5lbCBtZWFuaW5nLgorPC90PgorPHQ+CitDaGFubmVscyBh
cmUgdW5pZGVudGlmaWVkLgorR2VuZXJhbC1wdXJwb3NlIHBsYXllcnMgU0hPVUxEIE5PVCBhdHRl
bXB0IHRvIHBsYXkgdGhlc2Ugc3RyZWFtcy4KK09mZmxpbmUgaW1wbGVtZW50YXRpb25zIE1BWSBk
ZWludGVybGVhdmUgdGhlIG91dHB1dCBpbnRvIHNlcGFyYXRlIFBDTSBmaWxlcywKKyBvbmUgcGVy
IGNoYW5uZWwuCitJbXBsZW1lbnRhdGlvbnMgU0hPVUxEIE5PVCBwcm9kdWNlIG91dHB1dCBmb3Ig
Y2hhbm5lbHMgbWFwcGVkIHRvIHN0cmVhbSBpbmRleAorIDI1NSAocHVyZSBzaWxlbmNlKSB1bmxl
c3MgdGhleSBoYXZlIG5vIG90aGVyIHdheSB0byBpbmRpY2F0ZSB0aGUgaW5kZXggb2YKKyBub24t
c2lsZW50IGNoYW5uZWxzLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImNo
YW5uZWxfbWFwcGluZ191bmRlZmluZWQiCisgdGl0bGU9IlVuZGVmaW5lZCBDaGFubmVsIE1hcHBp
bmdzIj4KKzx0PgorVGhlIHJlbWFpbmluZyBjaGFubmVsIG1hcHBpbmcgZmFtaWxpZXMgKDIuLi4y
NTQpIGFyZSByZXNlcnZlZC4KK0EgZGVtdXhlciBpbXBsZW1lbnRhdGlvbiBlbmNvdW50ZXJpbmcg
YSByZXNlcnZlZCBjaGFubmVsIG1hcHBpbmcgZmFtaWx5IHZhbHVlCisgU0hPVUxEIGFjdCBhcyB0
aG91Z2ggdGhlIHZhbHVlIGlzIDI1NS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5j
aG9yPSJkb3dubWl4IiB0aXRsZT0iRG93bm1peGluZyI+Cis8dD4KK0FuIE9nZyBPcHVzIHBsYXll
ciBNVVNUIHN1cHBvcnQgYW55IHZhbGlkIGNoYW5uZWwgbWFwcGluZyB3aXRoIGEgY2hhbm5lbAor
IG1hcHBpbmcgZmFtaWx5IG9mIDAgb3IgMSwgZXZlbiBpZiB0aGUgbnVtYmVyIG9mIGNoYW5uZWxz
IGRvZXMgbm90IG1hdGNoIHRoZQorIHBoeXNpY2FsbHkgY29ubmVjdGVkIGF1ZGlvIGhhcmR3YXJl
LgorUGxheWVycyBTSE9VTEQgcGVyZm9ybSBjaGFubmVsIG1peGluZyB0byBpbmNyZWFzZSBvciBy
ZWR1Y2UgdGhlIG51bWJlciBvZgorIGNoYW5uZWxzIGFzIG5lZWRlZC4KKzwvdD4KKworPHQ+CitJ
bXBsZW1lbnRhdGlvbnMgTUFZIHVzZSB0aGUgbWF0cmljZXMgaW4KKyBGaWd1cmVzJm5ic3A7PHhy
ZWYgdGFyZ2V0PSJkb3dubWl4LW1hdHJpeC0zIiBmb3JtYXQ9ImNvdW50ZXIiLz4KKyB0aHJvdWdo
Jm5ic3A7PHhyZWYgdGFyZ2V0PSJkb3dubWl4LW1hdHJpeC04IiBmb3JtYXQ9ImNvdW50ZXIiLz4g
dG8gaW1wbGVtZW50CisgZG93bm1peGluZyBmcm9tIG11bHRpY2hhbm5lbCBmaWxlcyB1c2luZwor
IDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nXzEiPkNoYW5uZWwgTWFwcGluZyBGYW1pbHkg
MTwveHJlZj4sIHdoaWNoIGFyZQorIGtub3duIHRvIGdpdmUgYWNjZXB0YWJsZSByZXN1bHRzIGZv
ciBzdGVyZW8uCitNYXRyaWNlcyBmb3IgMyBhbmQgNCBjaGFubmVscyBhcmUgbm9ybWFsaXplZCBz
byBlYWNoIGNvZWZmaWNpZW50IHJvdyBzdW1zCisgdG8gMSB0byBhdm9pZCBjbGlwcGluZy4KK0Zv
ciA1IG9yIG1vcmUgY2hhbm5lbHMgdGhleSBhcmUgbm9ybWFsaXplZCB0byAyIGFzIGEgY29tcHJv
bWlzZSBiZXR3ZWVuCisgY2xpcHBpbmcgYW5kIGR5bmFtaWMgcmFuZ2UgcmVkdWN0aW9uLgorPC90
PgorPHQ+CitJbiB0aGVzZSBtYXRyaWNlcyB0aGUgZnJvbnQgbGVmdCBhbmQgZnJvbnQgcmlnaHQg
Y2hhbm5lbHMgYXJlIGdlbmVyYWxseQorcGFzc2VkIHRocm91Z2ggZGlyZWN0bHkuCitXaGVuIGEg
c3Vycm91bmQgY2hhbm5lbCBpcyBzcGxpdCBiZXR3ZWVuIGJvdGggdGhlIGxlZnQgYW5kIHJpZ2h0
IHN0ZXJlbworIGNoYW5uZWxzLCBjb2VmZmljaWVudHMgYXJlIGNob3NlbiBzbyB0aGVpciBzcXVh
cmVzIHN1bSB0byAxLCB3aGljaAorIGhlbHBzIHByZXNlcnZlIHRoZSBwZXJjZWl2ZWQgaW50ZW5z
aXR5LgorUmVhciBjaGFubmVscyBhcmUgbWl4ZWQgbW9yZSBkaWZmdXNlbHkgb3IgYXR0ZW51YXRl
ZCB0byBtYWludGFpbiBmb2N1cworIG9uIHRoZSBmcm9udCBjaGFubmVscy4KKzwvdD4KKworPGZp
Z3VyZSBhbmNob3I9ImRvd25taXgtbWF0cml4LTMiCisgdGl0bGU9IlN0ZXJlbyBkb3dubWl4IG1h
dHJpeCBmb3IgdGhlIGxpbmVhciBzdXJyb3VuZCBjaGFubmVsIG1hcHBpbmciCisgYWxpZ249ImNl
bnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK0wgb3V0cHV0ID0gKCAw
LjU4NTc4NiAqIGxlZnQgKyAwLjQxNDIxNCAqIGNlbnRlciAgICAgICAgICAgICAgICAgICAgKQor
UiBvdXRwdXQgPSAoICAgICAgICAgICAgICAgICAgIDAuNDE0MjE0ICogY2VudGVyICsgMC41ODU3
ODYgKiByaWdodCApCitdXT48L2FydHdvcms+Cis8cG9zdGFtYmxlPgorRXhhY3QgY29lZmZpY2ll
bnQgdmFsdWVzIGFyZSAxIGFuZCAxL3NxcnQoMiksIG11bHRpcGxpZWQgYnkKKyAxLygxJm5ic3A7
KyZuYnNwOzEvc3FydCgyKSkgZm9yIG5vcm1hbGl6YXRpb24uCis8L3Bvc3RhbWJsZT4KKzwvZmln
dXJlPgorCis8ZmlndXJlIGFuY2hvcj0iZG93bm1peC1tYXRyaXgtNCIKKyB0aXRsZT0iU3RlcmVv
IGRvd25taXggbWF0cml4IGZvciB0aGUgcXVhZHJhcGhvbmljIGNoYW5uZWwgbWFwcGluZyIKKyBh
bGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworLyAgICAg
ICAgICBcICAgLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIC8gRkwgXAor
fCBMIG91dHB1dCB8ICAgfCAwLjQyMjY1MCAwLjAwMDAwMCAwLjM2NjAyNSAwLjIxMTMyNSB8IHwg
RlIgfAorfCBSIG91dHB1dCB8ID0gfCAwLjAwMDAwMCAwLjQyMjY1MCAwLjIxMTMyNSAwLjM2NjAy
NSB8IHwgUkwgfAorXCAgICAgICAgICAvICAgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvIFwgUlIgLworXV0+PC9hcnR3b3JrPgorPHBvc3RhbWJsZT4KK0V4YWN0IGNvZWZm
aWNpZW50IHZhbHVlcyBhcmUgMSwgc3FydCgzKS8yIGFuZCAxLzIsIG11bHRpcGxpZWQgYnkKKyAx
LygxJm5ic3A7KyZuYnNwO3NxcnQoMykvMiZuYnNwOysmbmJzcDsxLzIpIGZvciBub3JtYWxpemF0
aW9uLgorPC9wb3N0YW1ibGU+Cis8L2ZpZ3VyZT4KKworPGZpZ3VyZSBhbmNob3I9ImRvd25taXgt
bWF0cml4LTUiCisgdGl0bGU9IlN0ZXJlbyBkb3dubWl4IG1hdHJpeCBmb3IgdGhlIDUuMCBzdXJy
b3VuZCBtYXBwaW5nIgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvIEZMIFwKKy8gICBcICAgLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcIHwgRkMgfAorfCBMIHwgICB8IDAuNjUwODAyIDAuNDYwMTg2IDAu
MDAwMDAwIDAuNTYzNjExIDAuMzI1NDAxIHwgfCBGUiB8Cit8IFIgfCA9IHwgMC4wMDAwMDAgMC40
NjAxODYgMC42NTA4MDIgMC4zMjU0MDEgMC41NjM2MTEgfCB8IFJMIHwKK1wgICAvICAgXCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvIHwgUlIgfAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCAgICAv
CitdXT48L2FydHdvcms+Cis8cG9zdGFtYmxlPgorRXhhY3QgY29lZmZpY2llbnQgdmFsdWVzIGFy
ZSAxLCAxL3NxcnQoMiksIHNxcnQoMykvMiBhbmQgMS8yLCBtdWx0aXBsaWVkIGJ5CisgMi8oMSZu
YnNwOysmbmJzcDsxL3NxcnQoMikmbmJzcDsrJm5ic3A7c3FydCgzKS8yJm5ic3A7KyZuYnNwOzEv
MikKKyBmb3Igbm9ybWFsaXphdGlvbi4KKzwvcG9zdGFtYmxlPgorPC9maWd1cmU+CisKKzxmaWd1
cmUgYW5jaG9yPSJkb3dubWl4LW1hdHJpeC02IgorIHRpdGxlPSJTdGVyZW8gZG93bm1peCBtYXRy
aXggZm9yIHRoZSA1LjEgc3Vycm91bmQgbWFwcGluZyIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9GTCBcCisvIFwgICAvICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgfEZDIHwK
K3xMfCAgIHwgMC41MjkwNjcgMC4zNzQxMDcgMC4wMDAwMDAgMC40NTgxODYgMC4yNjQ1MzQgMC4z
NzQxMDcgfCB8RlIgfAorfFJ8ID0gfCAwLjAwMDAwMCAwLjM3NDEwNyAwLjUyOTA2NyAwLjI2NDUz
NCAwLjQ1ODE4NiAwLjM3NDEwNyB8IHxSTCB8CitcIC8gICBcICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gfFJSIHwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcTEZFLwor
XV0+PC9hcnR3b3JrPgorPHBvc3RhbWJsZT4KK0V4YWN0IGNvZWZmaWNpZW50IHZhbHVlcyBhcmUg
MSwgMS9zcXJ0KDIpLCBzcXJ0KDMpLzIgYW5kIDEvMiwgbXVsdGlwbGllZCBieQorMi8oMSZuYnNw
OysmbmJzcDsxL3NxcnQoMikmbmJzcDsrJm5ic3A7c3FydCgzKS8yJm5ic3A7KyZuYnNwOzEvMiAr
IDEvc3FydCgyKSkKKyBmb3Igbm9ybWFsaXphdGlvbi4KKzwvcG9zdGFtYmxlPgorPC9maWd1cmU+
CisKKzxmaWd1cmUgYW5jaG9yPSJkb3dubWl4LW1hdHJpeC03IgorIHRpdGxlPSJTdGVyZW8gZG93
bm1peCBtYXRyaXggZm9yIHRoZSA2LjEgc3Vycm91bmQgbWFwcGluZyIKKyBhbGlnbj0iY2VudGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIC8gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorIHwgMC40
NTUzMTAgMC4zMjE5NTMgMC4wMDAwMDAgMC4zOTQzMTAgMC4yMjc2NTUgMC4yNzg4MTkgMC4zMjE5
NTMgfAorIHwgMC4wMDAwMDAgMC4zMjE5NTMgMC40NTUzMTAgMC4yMjc2NTUgMC4zOTQzMTAgMC4y
Nzg4MTkgMC4zMjE5NTMgfAorIFwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLworXV0+PC9hcnR3b3JrPgorPHBvc3RhbWJsZT4K
K0V4YWN0IGNvZWZmaWNpZW50IHZhbHVlcyBhcmUgMSwgMS9zcXJ0KDIpLCBzcXJ0KDMpLzIsIDEv
MiBhbmQKKyBzcXJ0KDMpLzIvc3FydCgyKSwgbXVsdGlwbGllZCBieQorIDIvKDEmbmJzcDsrJm5i
c3A7MS9zcXJ0KDIpJm5ic3A7KyZuYnNwO3NxcnQoMykvMiZuYnNwOysmbmJzcDsxLzIgKworIHNx
cnQoMykvMi9zcXJ0KDIpICsgMS9zcXJ0KDIpKSBmb3Igbm9ybWFsaXphdGlvbi4KK1RoZSBjb2Vm
ZmljaWVudHMgYXJlIGluIHRoZSBzYW1lIG9yZGVyIGFzIGluIDx4cmVmIHRhcmdldD0iY2hhbm5l
bF9tYXBwaW5nXzEiIC8+LAorIGFuZCB0aGUgbWF0cmljZXMgYWJvdmUuCis8L3Bvc3RhbWJsZT4K
KzwvZmlndXJlPgorCis8ZmlndXJlIGFuY2hvcj0iZG93bm1peC1tYXRyaXgtOCIKKyB0aXRsZT0i
U3RlcmVvIGRvd25taXggbWF0cml4IGZvciB0aGUgNy4xIHN1cnJvdW5kIG1hcHBpbmciCisgYWxp
Z249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKy8gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKK3wgLjM4ODYzMSAuMjc0ODA0IC4wMDAwMDAgLjMzNjU2NSAuMTk0MzE2IC4zMzY1NjUgLjE5
NDMxNiAuMjc0ODA0IHwKK3wgLjAwMDAwMCAuMjc0ODA0IC4zODg2MzEgLjE5NDMxNiAuMzM2NTY1
IC4xOTQzMTYgLjMzNjU2NSAuMjc0ODA0IHwKK1wgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8KK11dPjwvYXJ0d29yaz4KKzxw
b3N0YW1ibGU+CitFeGFjdCBjb2VmZmljaWVudCB2YWx1ZXMgYXJlIDEsIDEvc3FydCgyKSwgc3Fy
dCgzKS8yIGFuZCAxLzIsIG11bHRpcGxpZWQgYnkKKyAyLygyJm5ic3A7KyZuYnNwOzIvc3FydCgy
KSZuYnNwOysmbmJzcDtzcXJ0KDMpKSBmb3Igbm9ybWFsaXphdGlvbi4KK1RoZSBjb2VmZmljaWVu
dHMgYXJlIGluIHRoZSBzYW1lIG9yZGVyIGFzIGluIDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBw
aW5nXzEiIC8+LAorIGFuZCB0aGUgbWF0cmljZXMgYWJvdmUuCis8L3Bvc3RhbWJsZT4KKzwvZmln
dXJlPgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4gPCEtLSBlbmQgY2hhbm5lbF9tYXBwaW5n
X3RhYmxlIC0tPgorCis8L3NlY3Rpb24+IDwhLS0gZW5kIGlkX2hlYWRlciAtLT4KKworPHNlY3Rp
b24gYW5jaG9yPSJjb21tZW50X2hlYWRlciIgdGl0bGU9IkNvbW1lbnQgSGVhZGVyIj4KKworPGZp
Z3VyZSBhbmNob3I9ImNvbW1lbnRfaGVhZGVyX3BhY2tldCIgdGl0bGU9IkNvbW1lbnQgSGVhZGVy
IFBhY2tldCIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NE
QVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAg
ICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAx
IDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgJ08nICAgICAgfCAgICAgICdw
JyAgICAgIHwgICAgICAndScgICAgICB8ICAgICAgJ3MnICAgICAgfAorKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAg
ICAnVCcgICAgICB8ICAgICAgJ2EnICAgICAgfCAgICAgICdnJyAgICAgIHwgICAgICAncycgICAg
ICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgIFZlbmRvciBTdHJpbmcgTGVuZ3Ro
ICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAg
ICAgICAgICAgICAgIFZlbmRvciBTdHJpbmcuLi4gICAgICAgICAgICAgICAgICAgICAgIDoKK3wg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICBVc2VyIENvbW1lbnQgTGlzdCBM
ZW5ndGggICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICBV
c2VyIENvbW1lbnQgIzAgU3RyaW5nIExlbmd0aCAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsK
K3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAgIFVzZXIgQ29tbWVudCAjMCBTdHJpbmcuLi4g
ICAgICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAg
ICBVc2VyIENvbW1lbnQgIzEgU3RyaW5nIExlbmd0aCAgICAgICAgICAgICAgICAgfAorKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSsKKzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA6CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitUaGUgY29tbWVu
dCBoZWFkZXIgY29uc2lzdHMgb2YgYSA2NC1iaXQgbWFnaWMgc2lnbmF0dXJlLCBmb2xsb3dlZCBi
eSBkYXRhIGluCisgdGhlIHNhbWUgZm9ybWF0IGFzIHRoZSA8eHJlZiB0YXJnZXQ9InZvcmJpcy1j
b21tZW50Ii8+IGhlYWRlciB1c2VkIGluIE9nZworIFZvcmJpcywgZXhjZXB0IChsaWtlIE9nZyBU
aGVvcmEgYW5kIFNwZWV4KSB0aGUgZmluYWwgImZyYW1pbmcgYml0IiBzcGVjaWZpZWQKKyBpbiB0
aGUgVm9yYmlzIHNwZWMgaXMgbm90IHByZXNlbnQuCis8bGlzdCBzdHlsZT0ibnVtYmVycyI+Cis8
dD5NYWdpYyBTaWduYXR1cmU6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgYW4g
OC1vY3RldCAoNjQtYml0KSBmaWVsZCB0aGF0IGFsbG93cyBjb2RlYyBpZGVudGlmaWNhdGlvbiBh
bmQgaXMKKyBodW1hbi1yZWFkYWJsZS4KK0l0IGNvbnRhaW5zLCBpbiBvcmRlciwgdGhlIG1hZ2lj
IG51bWJlcnM6Cis8bGlzdCBzdHlsZT0iZW1wdHkiPgorPHQ+MHg0RiAnTyc8L3Q+Cis8dD4weDcw
ICdwJzwvdD4KKzx0PjB4NzUgJ3UnPC90PgorPHQ+MHg3MyAncyc8L3Q+Cis8dD4weDU0ICdUJzwv
dD4KKzx0PjB4NjEgJ2EnPC90PgorPHQ+MHg2NyAnZyc8L3Q+Cis8dD4weDczICdzJzwvdD4KKzwv
bGlzdD4KK1N0YXJ0aW5nIHdpdGggIk9wIiBoZWxwcyBkaXN0aW5ndWlzaCBpdCBmcm9tIGF1ZGlv
IGRhdGEgcGFja2V0cywgYXMgdGhpcyBpcyBhbgorIGludmFsaWQgVE9DIHNlcXVlbmNlLgorPHZz
cGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5WZW5kb3IgU3RyaW5nIExlbmd0aCAoMzIg
Yml0cywgdW5zaWduZWQsIGxpdHRsZSBlbmRpYW4pOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+
CitUaGlzIGZpZWxkIGdpdmVzIHRoZSBsZW5ndGggb2YgdGhlIGZvbGxvd2luZyB2ZW5kb3Igc3Ry
aW5nLCBpbiBvY3RldHMuCitJdCBNVVNUIE5PVCBpbmRpY2F0ZSB0aGF0IHRoZSB2ZW5kb3Igc3Ry
aW5nIGlzIGxvbmdlciB0aGFuIHRoZSByZXN0IG9mIHRoZQorIHBhY2tldC4KKzx2c3BhY2UgYmxh
bmtMaW5lcz0iMSIvPgorPC90PgorPHQ+VmVuZG9yIFN0cmluZyAodmFyaWFibGUgbGVuZ3RoLCBV
VEYtOCB2ZWN0b3IpOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGlzIGlzIGEgc2ltcGxl
IGh1bWFuLXJlYWRhYmxlIHRhZyBmb3IgdmVuZG9yIGluZm9ybWF0aW9uLCBlbmNvZGVkIGFzIGEg
VVRGLTgKKyBzdHJpbmcmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzM2MjkiLz4uCitObyB0ZXJtaW5h
dGluZyBudWxsIG9jdGV0IGlzIG5lY2Vzc2FyeS4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgor
VGhpcyB0YWcgaXMgaW50ZW5kZWQgdG8gaWRlbnRpZnkgdGhlIGNvZGVjIGVuY29kZXIgYW5kIGVu
Y2Fwc3VsYXRpb24KKyBpbXBsZW1lbnRhdGlvbnMsIGZvciB0cmFjaW5nIGRpZmZlcmVuY2VzIGlu
IHRlY2huaWNhbCBiZWhhdmlvci4KK1VzZXItZmFjaW5nIGFwcGxpY2F0aW9ucyBjYW4gdXNlIHRo
ZSAnRU5DT0RFUicgdXNlciBjb21tZW50IHRhZyB0byBpZGVudGlmeQorIHRoZW1zZWx2ZXMuCis8
dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0PlVzZXIgQ29tbWVudCBMaXN0IExlbmd0
aCAoMzIgYml0cywgdW5zaWduZWQsIGxpdHRsZSBlbmRpYW4pOgorPHZzcGFjZSBibGFua0xpbmVz
PSIxIi8+CitUaGlzIGZpZWxkIGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIHVzZXItc3VwcGxpZWQg
Y29tbWVudHMuCitJdCBNQVkgaW5kaWNhdGUgdGhlcmUgYXJlIHplcm8gdXNlci1zdXBwbGllZCBj
b21tZW50cywgaW4gd2hpY2ggY2FzZSB0aGVyZSBhcmUKKyBubyBhZGRpdGlvbmFsIGZpZWxkcyBp
biB0aGUgcGFja2V0LgorSXQgTVVTVCBOT1QgaW5kaWNhdGUgdGhhdCB0aGVyZSBhcmUgc28gbWFu
eSBjb21tZW50cyB0aGF0IHRoZSBjb21tZW50IHN0cmluZworIGxlbmd0aHMgd291bGQgcmVxdWly
ZSBtb3JlIGRhdGEgdGhhbiBpcyBhdmFpbGFibGUgaW4gdGhlIHJlc3Qgb2YgdGhlIHBhY2tldC4K
Kzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorPC90PgorPHQ+VXNlciBDb21tZW50ICNpIFN0cmlu
ZyBMZW5ndGggKDMyIGJpdHMsIHVuc2lnbmVkLCBsaXR0bGUgZW5kaWFuKToKKzx2c3BhY2UgYmxh
bmtMaW5lcz0iMSIvPgorVGhpcyBmaWVsZCBnaXZlcyB0aGUgbGVuZ3RoIG9mIHRoZSBmb2xsb3dp
bmcgdXNlciBjb21tZW50IHN0cmluZywgaW4gb2N0ZXRzLgorVGhlcmUgaXMgb25lIGZvciBlYWNo
IHVzZXIgY29tbWVudCBpbmRpY2F0ZWQgYnkgdGhlICd1c2VyIGNvbW1lbnQgbGlzdCBsZW5ndGgn
CisgZmllbGQuCitJdCBNVVNUIE5PVCBpbmRpY2F0ZSB0aGF0IHRoZSBzdHJpbmcgaXMgbG9uZ2Vy
IHRoYW4gdGhlIHJlc3Qgb2YgdGhlIHBhY2tldC4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgor
PC90PgorPHQ+VXNlciBDb21tZW50ICNpIFN0cmluZyAodmFyaWFibGUgbGVuZ3RoLCBVVEYtOCB2
ZWN0b3IpOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGlzIGZpZWxkIGNvbnRhaW5zIGEg
c2luZ2xlIHVzZXIgY29tbWVudCBlbmNvZGVkIGFzIGEgVVRGLTgKKyBzdHJpbmcmbmJzcDs8eHJl
ZiB0YXJnZXQ9IlJGQzM2MjkiLz4uCitUaGVyZSBpcyBvbmUgZm9yIGVhY2ggdXNlciBjb21tZW50
IGluZGljYXRlZCBieSB0aGUgJ3VzZXIgY29tbWVudCBsaXN0IGxlbmd0aCcKKyBmaWVsZC4KKzwv
dD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitUaGUgdmVuZG9yIHN0cmluZyBsZW5ndGggYW5kIHVz
ZXIgY29tbWVudCBsaXN0IGxlbmd0aCBhcmUgUkVRVUlSRUQsIGFuZAorIGltcGxlbWVudGF0aW9u
cyBTSE9VTEQgdHJlYXQgYSBzdHJlYW0gYXMgaW52YWxpZCBpZiBpdCBjb250YWlucyBhIGNvbW1l
bnQKKyBoZWFkZXIgdGhhdCBkb2VzIG5vdCBoYXZlIGVub3VnaCBkYXRhIGZvciB0aGVzZSBmaWVs
ZHMsIG9yIHRoYXQgZG9lcyBub3QKKyBjb250YWluIGVub3VnaCBkYXRhIGZvciB0aGUgY29ycmVz
cG9uZGluZyB2ZW5kb3Igc3RyaW5nIG9yIHVzZXIgY29tbWVudHMgdGhleQorIGRlc2NyaWJlLgor
TWFraW5nIHRoaXMgY2hlY2sgYmVmb3JlIGFsbG9jYXRpbmcgdGhlIGFzc29jaWF0ZWQgbWVtb3J5
IHRvIGNvbnRhaW4gdGhlIGRhdGEKKyBoZWxwcyBwcmV2ZW50IGEgcG9zc2libGUgRGVuaWFsLW9m
LVNlcnZpY2UgKERvUykgYXR0YWNrIGZyb20gc21hbGwgY29tbWVudAorIGhlYWRlcnMgdGhhdCBj
bGFpbSB0byBjb250YWluIHN0cmluZ3MgbG9uZ2VyIHRoYW4gdGhlIGVudGlyZSBwYWNrZXQgb3Ig
bW9yZQorIHVzZXIgY29tbWVudHMgdGhhbiB0aGFuIGNvdWxkIHBvc3NpYmx5IGZpdCBpbiB0aGUg
cGFja2V0LgorPC90PgorCis8dD4KK0ltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgdXNlciBjb21t
ZW50IGxpc3QsIHRoZSBjb21tZW50IGhlYWRlciBNQVkKKyBjb250YWluIHplcm8tcGFkZGluZyBv
ciBvdGhlciBiaW5hcnkgZGF0YSB3aGljaCBpcyBub3Qgc3BlY2lmaWVkIGhlcmUuCitJZiB0aGUg
bGVhc3Qtc2lnbmlmaWNhbnQgYml0IG9mIHRoZSBmaXJzdCBieXRlIG9mIHRoaXMgZGF0YSBpcyAx
LCB0aGVuIGVkaXRvcnMKKyBTSE9VTEQgcHJlc2VydmUgdGhlIGNvbnRlbnRzIG9mIHRoaXMgZGF0
YSB3aGVuIHVwZGF0aW5nIHRoZSB0YWdzLCBidXQgaWYgdGhpcworIGJpdCBpcyAwLCBhbGwgc3Vj
aCBkYXRhIE1BWSBiZSB0cmVhdGVkIGFzIHBhZGRpbmcsIGFuZCB0cnVuY2F0ZWQgb3IgZGlzY2Fy
ZGVkCisgYXMgZGVzaXJlZC4KK1RoaXMgYWxsb3dzIGluZm9ybWFsIGV4cGVyaW1lbnRhdGlvbiB3
aXRoIHRoZSBmb3JtYXQgb2YgdGhpcyBiaW5hcnkgZGF0YSB1bnRpbAorIGl0IGNhbiBiZSBzcGVj
aWZpZWQgbGF0ZXIuCis8L3Q+CisKKzx0PgorVGhlIGNvbW1lbnQgaGVhZGVyIGNhbiBiZSBhcmJp
dHJhcmlseSBsYXJnZSBhbmQgbWlnaHQgYmUgc3ByZWFkIG92ZXIgYSBsYXJnZQorIG51bWJlciBv
ZiBPZ2cgcGFnZXMuCitJbXBsZW1lbnRhdGlvbnMgTVVTVCBhdm9pZCBhdHRlbXB0aW5nIHRvIGFs
bG9jYXRlIGV4Y2Vzc2l2ZSBhbW91bnRzIG9mIG1lbW9yeQorIHdoZW4gcHJlc2VudGVkIHdpdGgg
YSB2ZXJ5IGxhcmdlIGNvbW1lbnQgaGVhZGVyLgorVG8gYWNjb21wbGlzaCB0aGlzLCBpbXBsZW1l
bnRhdGlvbnMgTUFZIHRyZWF0IGEgc3RyZWFtIGFzIGludmFsaWQgaWYgaXQgaGFzIGEKKyBjb21t
ZW50IGhlYWRlciBsYXJnZXIgdGhhbiAxMjUsODI5LDEyMCZuYnNwO29jdGV0cyAoMTIwJm5ic3A7
TUIpLCBhbmQgTUFZCisgaWdub3JlIGluZGl2aWR1YWwgY29tbWVudHMgdGhhdCBhcmUgbm90IGZ1
bGx5IGNvbnRhaW5lZCB3aXRoaW4gdGhlIGZpcnN0CisgNjEsNDQwJm5ic3A7b2N0ZXRzIG9mIHRo
ZSBjb21tZW50IGhlYWRlci4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJjb21tZW50X2Zvcm1h
dCIgdGl0bGU9IlRhZyBEZWZpbml0aW9ucyI+Cis8dD4KK1RoZSB1c2VyIGNvbW1lbnQgc3RyaW5n
cyBmb2xsb3cgdGhlIE5BTUU9dmFsdWUgZm9ybWF0IGRlc2NyaWJlZCBieQorIDx4cmVmIHRhcmdl
dD0idm9yYmlzLWNvbW1lbnQiLz4gd2l0aCB0aGUgc2FtZSByZWNvbW1lbmRlZCB0YWcgbmFtZXM6
CisgQVJUSVNULCBUSVRMRSwgREFURSwgQUxCVU0sIGFuZCBzbyBvbi4KKzwvdD4KKzx0PgorVHdv
IG5ldyBjb21tZW50IHRhZ3MgYXJlIGludHJvZHVjZWQgaGVyZToKKzwvdD4KKworPHQ+Rmlyc3Qs
IGFuIG9wdGlvbmFsIGdhaW4gZm9yIHRyYWNrIG5vcm1hbGl6YXRpb246PC90PgorPGZpZ3VyZSBh
bGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJsZWZ0Ij48IVtDREFUQVsKK1IxMjhfVFJB
Q0tfR0FJTj0tNTczCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx0PgorIHJlcHJlc2VudGlu
ZyB0aGUgdm9sdW1lIHNoaWZ0IG5lZWRlZCB0byBub3JtYWxpemUgdGhlIHRyYWNrJ3Mgdm9sdW1l
CisgZHVyaW5nIGlzb2xhdGVkIHBsYXliYWNrLCBpbiByYW5kb20gc2h1ZmZsZSwgYW5kIHNvIG9u
LgorVGhlIGdhaW4gaXMgYSBRNy44IGZpeGVkIHBvaW50IG51bWJlciBpbiBkQiwgYXMgaW4gdGhl
IElEIGhlYWRlcidzICdvdXRwdXQKKyBnYWluJyBmaWVsZC4KK1RoaXMgdGFnIGlzIHNpbWlsYXIg
dG8gdGhlIFJFUExBWUdBSU5fVFJBQ0tfR0FJTiB0YWcgaW4KKyBWb3JiaXMmbmJzcDs8eHJlZiB0
YXJnZXQ9InJlcGxheS1nYWluIi8+LCBleGNlcHQgdGhhdCB0aGUgbm9ybWFsIHZvbHVtZQorIHJl
ZmVyZW5jZSBpcyB0aGUgPHhyZWYgdGFyZ2V0PSJFQlUtUjEyOCIvPiBzdGFuZGFyZC4KKzwvdD4K
Kzx0PlNlY29uZCwgYW4gb3B0aW9uYWwgZ2FpbiBmb3IgYWxidW0gbm9ybWFsaXphdGlvbjo8L3Q+
Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImxlZnQiPjwhW0NEQVRB
WworUjEyOF9BTEJVTV9HQUlOPTExMQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8dD4KKyBy
ZXByZXNlbnRpbmcgdGhlIHZvbHVtZSBzaGlmdCBuZWVkZWQgdG8gbm9ybWFsaXplIHRoZSBvdmVy
YWxsIHZvbHVtZSB3aGVuCisgcGxheWVkIGFzIHBhcnQgb2YgYSBwYXJ0aWN1bGFyIGNvbGxlY3Rp
b24gb2YgdHJhY2tzLgorVGhlIGdhaW4gaXMgYWxzbyBhIFE3LjggZml4ZWQgcG9pbnQgbnVtYmVy
IGluIGRCLCBhcyBpbiB0aGUgSUQgaGVhZGVyJ3MKKyAnb3V0cHV0IGdhaW4nIGZpZWxkLgorVGhl
IHZhbHVlcyAnLTU3MycgYW5kICcxMTEnIGdpdmVuIGhlcmUgYXJlIGp1c3QgZXhhbXBsZXMuCis8
L3Q+Cis8dD4KK0FuIE9nZyBPcHVzIHN0cmVhbSBNVVNUIE5PVCBoYXZlIG1vcmUgdGhhbiBvbmUg
b2YgZWFjaCBvZiB0aGVzZSB0YWdzLCBhbmQgaWYKKyBwcmVzZW50IHRoZWlyIHZhbHVlcyBNVVNU
IGJlIGFuIGludGVnZXIgZnJvbSAtMzI3NjggdG8gMzI3NjcsIGluY2x1c2l2ZSwKKyByZXByZXNl
bnRlZCBpbiBBU0NJSSBhcyBhIGJhc2UgMTAgbnVtYmVyIHdpdGggbm8gd2hpdGVzcGFjZS4KK0Eg
bGVhZGluZyAnKycgb3IgJy0nIGNoYXJhY3RlciBpcyB2YWxpZC4KK0xlYWRpbmcgemVyb3MgYXJl
IGFsc28gcGVybWl0dGVkLCBidXQgdGhlIHZhbHVlIE1VU1QgYmUgcmVwcmVzZW50ZWQgYnkKKyBu
byBtb3JlIHRoYW4gNiBjaGFyYWN0ZXJzLgorT3RoZXIgbm9uLWRpZ2l0IGNoYXJhY3RlcnMgTVVT
VCBOT1QgYmUgcHJlc2VudC4KKzwvdD4KKzx0PgorSWYgcHJlc2VudCwgUjEyOF9UUkFDS19HQUlO
IGFuZCBSMTI4X0FMQlVNX0dBSU4gTVVTVCBjb3JyZWN0bHkgcmVwcmVzZW50CisgdGhlIFIxMjgg
bm9ybWFsaXphdGlvbiBnYWluIHJlbGF0aXZlIHRvIHRoZSAnb3V0cHV0IGdhaW4nIGZpZWxkIHNw
ZWNpZmllZAorIGluIHRoZSBJRCBoZWFkZXIuCitJZiBhIHBsYXllciBjaG9vc2VzIHRvIG1ha2Ug
dXNlIG9mIHRoZSBSMTI4X1RSQUNLX0dBSU4gdGFnIG9yIHRoZQorIFIxMjhfQUxCVU1fR0FJTiB0
YWcsIGl0IE1VU1QgYXBwbHkgdGhvc2UgZ2FpbnMKKyA8c3Bhbnggc3R5bGU9ImVtcGgiPmluIGFk
ZGl0aW9uPC9zcGFueD4gdG8gdGhlICdvdXRwdXQgZ2FpbicgdmFsdWUuCitJZiBhIHRvb2wgbW9k
aWZpZXMgdGhlIElEIGhlYWRlcidzICdvdXRwdXQgZ2FpbicgZmllbGQsIGl0IE1VU1QgYWxzbyB1
cGRhdGUgb3IKKyByZW1vdmUgdGhlIFIxMjhfVFJBQ0tfR0FJTiBhbmQgUjEyOF9BTEJVTV9HQUlO
IGNvbW1lbnQgdGFncyBpZiBwcmVzZW50LgorQSBtdXhlciBTSE9VTEQgcGxhY2UgdGhlIGdhaW4g
aXQgd2FudHMgb3RoZXIgdG9vbHMgdG8gdXNlIGJ5IGRlZmF1bHQgaW50byB0aGUKKyAnb3V0cHV0
IGdhaW4nIGZpZWxkLCBhbmQgbm90IHRoZSBjb21tZW50IHRhZy4KKzwvdD4KKzx0PgorVG8gYXZv
aWQgY29uZnVzaW9uIHdpdGggbXVsdGlwbGUgbm9ybWFsaXphdGlvbiBzY2hlbWVzLCBhbiBPcHVz
IGNvbW1lbnQgaGVhZGVyCisgU0hPVUxEIE5PVCBjb250YWluIGFueSBvZiB0aGUgUkVQTEFZR0FJ
Tl9UUkFDS19HQUlOLCBSRVBMQVlHQUlOX1RSQUNLX1BFQUssCisgUkVQTEFZR0FJTl9BTEJVTV9H
QUlOLCBvciBSRVBMQVlHQUlOX0FMQlVNX1BFQUsgdGFncywgdW5sZXNzIHRoZXkgYXJlIG9ubHkK
KyB0byBiZSB1c2VkIGluIHNvbWUgY29udGV4dCB3aGVyZSB0aGVyZSBpcyBndWFyYW50ZWVkIHRv
IGJlIG5vIHN1Y2ggY29uZnVzaW9uLgorPHhyZWYgdGFyZ2V0PSJFQlUtUjEyOCIvPiBub3JtYWxp
emF0aW9uIGlzIHByZWZlcnJlZCB0byB0aGUgZWFybGllcgorIFJFUExBWUdBSU4gc2NoZW1lcyBi
ZWNhdXNlIG9mIGl0cyBjbGVhciBkZWZpbml0aW9uIGFuZCBhZG9wdGlvbiBieSBpbmR1c3RyeS4K
K1BlYWsgbm9ybWFsaXphdGlvbnMgYXJlIGRpZmZpY3VsdCB0byBjYWxjdWxhdGUgcmVsaWFibHkg
Zm9yIGxvc3N5IGNvZGVjcworIGJlY2F1c2Ugb2YgdmFyaWF0aW9uIGluIGV4Y3Vyc2lvbiBoZWln
aHRzIGR1ZSB0byBkZWNvZGVyIGRpZmZlcmVuY2VzLgorSW4gdGhlIGF1dGhvcnMnIGludmVzdGln
YXRpb25zIHRoZXkgd2VyZSBub3QgYXBwbGllZCBjb25zaXN0ZW50bHkgb3IgYnJvYWRseQorIGVu
b3VnaCB0byBtZXJpdCBpbmNsdXNpb24gaGVyZS4KKzwvdD4KKzwvc2VjdGlvbj4gPCEtLSBlbmQg
Y29tbWVudF9mb3JtYXQgLS0+Cis8L3NlY3Rpb24+IDwhLS0gZW5kIGNvbW1lbnRfaGVhZGVyIC0t
PgorCis8L3NlY3Rpb24+IDwhLS0gZW5kIGhlYWRlcnMgLS0+CisKKzxzZWN0aW9uIGFuY2hvcj0i
cGFja2V0X3NpemVfbGltaXRzIiB0aXRsZT0iUGFja2V0IFNpemUgTGltaXRzIj4KKzx0PgorVGVj
aG5pY2FsbHksIHZhbGlkIE9wdXMgcGFja2V0cyBjYW4gYmUgYXJiaXRyYXJpbHkgbGFyZ2UgZHVl
IHRvIHRoZSBwYWRkaW5nCisgZm9ybWF0LCBhbHRob3VnaCB0aGUgYW1vdW50IG9mIG5vbi1wYWRk
aW5nIGRhdGEgdGhleSBjYW4gY29udGFpbiBpcyBib3VuZGVkLgorVGhlc2UgcGFja2V0cyBtaWdo
dCBiZSBzcHJlYWQgb3ZlciBhIHNpbWlsYXJseSBlbm9ybW91cyBudW1iZXIgb2YgT2dnIHBhZ2Vz
LgorV2hlbiBlbmNvZGluZywgaW1wbGVtZW50YXRpb25zIFNIT1VMRCBsaW1pdCB0aGUgdXNlIG9m
IHBhZGRpbmcgaW4gYXVkaW8gZGF0YQorIHBhY2tldHMgdG8gbm8gbW9yZSB0aGFuIGlzIG5lY2Vz
c2FyeSB0byBtYWtlIGEgdmFyaWFibGUgYml0cmF0ZSAoVkJSKSBzdHJlYW0KKyBjb25zdGFudCBi
aXRyYXRlIChDQlIpLCB1bmxlc3MgdGhleSBoYXZlIG5vIHJlYXNvbmFibGUgd2F5IHRvIGRldGVy
bWluZSB3aGF0CisgaXMgbmVjZXNzYXJ5LgorRGVtdXhlcnMgU0hPVUxEIHRyZWF0IGF1ZGlvIGRh
dGEgcGFja2V0cyBhcyBpbnZhbGlkICh0cmVhdCB0aGVtIGFzIGlmIHRoZXkgd2VyZQorIG1hbGZv
cm1lZCBPcHVzIHBhY2tldHMgd2l0aCBhbiBpbnZhbGlkIFRPQyBzZXF1ZW5jZSkgaWYgdGhleSBh
cmUgbGFyZ2VyIHRoYW4KKyA2MSw0NDAmbmJzcDtvY3RldHMgcGVyIE9wdXMgc3RyZWFtLCB1bmxl
c3MgdGhleSBoYXZlIGEgc3BlY2lmaWMgcmVhc29uIGZvcgorIGFsbG93aW5nIGV4dHJhIHBhZGRp
bmcuCitTdWNoIHBhY2tldHMgbmVjZXNzYXJpbHkgY29udGFpbiBtb3JlIHBhZGRpbmcgdGhhbiBu
ZWVkZWQgdG8gbWFrZSBhIHN0cmVhbSBDQlIuCitEZW11eGVycyBNVVNUIGF2b2lkIGF0dGVtcHRp
bmcgdG8gYWxsb2NhdGUgZXhjZXNzaXZlIGFtb3VudHMgb2YgbWVtb3J5IHdoZW4KKyBwcmVzZW50
ZWQgd2l0aCBhIHZlcnkgbGFyZ2UgcGFja2V0LgorRGVtdXhlcnMgTUFZIHRyZWF0IGF1ZGlvIGRh
dGEgcGFja2V0cyBhcyBpbnZhbGlkIG9yIHBhcnRpYWxseSBwcm9jZXNzIHRoZW0gaWYKKyB0aGV5
IGFyZSBsYXJnZXIgdGhhbiA2MSw0NDAmbmJzcDtvY3RldHMgaW4gYW4gT2dnIE9wdXMgc3RyZWFt
IHdpdGggY2hhbm5lbAorIG1hcHBpbmcgZmFtaWxpZXMmbmJzcDswIG9yJm5ic3A7MS4KK0RlbXV4
ZXJzIE1BWSB0cmVhdCBhdWRpbyBkYXRhIHBhY2tldHMgYXMgaW52YWxpZCBvciBwYXJ0aWFsbHkg
cHJvY2VzcyB0aGVtIGluCisgYW55IE9nZyBPcHVzIHN0cmVhbSBpZiB0aGUgcGFja2V0IGlzIGxh
cmdlciB0aGFuIDYxLDQ0MCZuYnNwO29jdGV0cyBhbmQgYWxzbworIGxhcmdlciB0aGFuIDcsNjgw
Jm5ic3A7b2N0ZXRzIHBlciBPcHVzIHN0cmVhbS4KK1RoZSBwcmVzZW5jZSBvZiBhbiBleHRyZW1l
bHkgbGFyZ2UgcGFja2V0IGluIHRoZSBzdHJlYW0gY291bGQgaW5kaWNhdGUgYQorIG1lbW9yeSBl
eGhhdXN0aW9uIGF0dGFjayBvciBzdHJlYW0gY29ycnVwdGlvbi4KKzwvdD4KKzx0PgorSW4gYW4g
T2dnIE9wdXMgc3RyZWFtLCB0aGUgbGFyZ2VzdCBwb3NzaWJsZSB2YWxpZCBwYWNrZXQgdGhhdCBk
b2VzIG5vdCB1c2UKKyBwYWRkaW5nIGhhcyBhIHNpemUgb2YgKDYxLDI5OCpOJm5ic3A7LSZuYnNw
OzIpIG9jdGV0cy4KK1dpdGggMjU1Jm5ic3A7c3RyZWFtcywgdGhpcyBpcyAxNSw2MzAsOTg4Jm5i
c3A7b2N0ZXRzIGFuZCBjYW4KKyBzcGFuIHVwIHRvIDYxLDI5OCZuYnNwO09nZyBwYWdlcywgYWxs
IGJ1dCBvbmUgb2Ygd2hpY2ggd2lsbCBoYXZlIGEgZ3JhbnVsZQorIHBvc2l0aW9uIG9mIC0xLgor
VGhpcyBpcyBvZiBjb3Vyc2UgYSB2ZXJ5IGV4dHJlbWUgcGFja2V0LCBjb25zaXN0aW5nIG9mIDI1
NSZuYnNwO3N0cmVhbXMsIGVhY2gKKyBjb250YWluaW5nIDEyMCZuYnNwO21zIG9mIGF1ZGlvIGVu
Y29kZWQgYXMgMi41Jm5ic3A7bXMgZnJhbWVzLCBlYWNoIGZyYW1lCisgdXNpbmcgdGhlIG1heGlt
dW0gcG9zc2libGUgbnVtYmVyIG9mIG9jdGV0cyAoMTI3NSkgYW5kIHN0b3JlZCBpbiB0aGUgbGVh
c3QKKyBlZmZpY2llbnQgbWFubmVyIGFsbG93ZWQgKGEgVkJSIGNvZGUmbmJzcDszIE9wdXMgcGFj
a2V0KS4KK0V2ZW4gaW4gc3VjaCBhIHBhY2tldCwgbW9zdCBvZiB0aGUgZGF0YSB3aWxsIGJlIHpl
cm9zIGFzIDIuNSZuYnNwO21zIGZyYW1lcworIGNhbm5vdCBhY3R1YWxseSB1c2UgYWxsIDEyNzUm
bmJzcDtvY3RldHMuCis8L3Q+Cis8dD4KK1RoZSBsYXJnZXN0IHBhY2tldCBjb25zaXN0aW5nIG9m
IGVudGlyZWx5IHVzZWZ1bCBkYXRhIGlzCisgKDE1LDMyNipOJm5ic3A7LSZuYnNwOzIpIG9jdGV0
cy4KK1RoaXMgY29ycmVzcG9uZHMgdG8gMTIwJm5ic3A7bXMgb2YgYXVkaW8gZW5jb2RlZCBhcyAx
MCZuYnNwO21zIGZyYW1lcyBpbiBlaXRoZXIKKyBTSUxLIG9yIEh5YnJpZCBtb2RlLCBidXQgYXQg
YSBkYXRhIHJhdGUgb2Ygb3ZlciAxJm5ic3A7TWJwcywgd2hpY2ggbWFrZXMgbGl0dGxlCisgc2Vu
c2UgZm9yIHRoZSBxdWFsaXR5IGFjaGlldmVkLgorPC90PgorPHQ+CitBIG1vcmUgcmVhc29uYWJs
ZSBsaW1pdCBpcyAoNyw2NjQqTiZuYnNwOy0mbmJzcDsyKSBvY3RldHMuCitUaGlzIGNvcnJlc3Bv
bmRzIHRvIDEyMCZuYnNwO21zIG9mIGF1ZGlvIGVuY29kZWQgYXMgMjAmbmJzcDttcyBzdGVyZW8g
Q0VMVCBtb2RlCisgZnJhbWVzLCB3aXRoIGEgdG90YWwgYml0cmF0ZSBqdXN0IHVuZGVyIDUxMSZu
YnNwO2ticHMgKG5vdCBjb3VudGluZyB0aGUgT2dnCisgZW5jYXBzdWxhdGlvbiBvdmVyaGVhZCku
CitGb3IgY2hhbm5lbCBtYXBwaW5nIGZhbWlseSAxLCBOPTggcHJvdmlkZXMgYSByZWFzb25hYmxl
IHVwcGVyIGJvdW5kLCBhcyBpdAorIGFsbG93cyBmb3IgZWFjaCBvZiB0aGUgOCBwb3NzaWJsZSBv
dXRwdXQgY2hhbm5lbHMgdG8gYmUgZGVjb2RlZCBmcm9tIGEKKyBzZXBhcmF0ZSBzdGVyZW8gT3B1
cyBzdHJlYW0uCitUaGlzIGdpdmVzIGEgc2l6ZSBvZiA2MSwzMTAmbmJzcDtvY3RldHMsIHdoaWNo
IGlzIHJvdW5kZWQgdXAgdG8gYSBtdWx0aXBsZSBvZgorIDEsMDI0Jm5ic3A7b2N0ZXRzIHRvIHlp
ZWxkIHRoZSBhdWRpbyBkYXRhIHBhY2tldCBzaXplIG9mIDYxLDQ0MCZuYnNwO29jdGV0cworIHRo
YXQgYW55IGltcGxlbWVudGF0aW9uIGlzIGV4cGVjdGVkIHRvIGJlIGFibGUgdG8gcHJvY2VzcyBz
dWNjZXNzZnVsbHkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZW5jb2Rl
ciIgdGl0bGU9IkVuY29kZXIgR3VpZGVsaW5lcyI+Cis8dD4KK1doZW4gZW5jb2RpbmcgT3B1cyBz
dHJlYW1zLCBPZ2cgbXV4ZXJzIFNIT1VMRCB0YWtlIGludG8gYWNjb3VudCB0aGUKKyBhbGdvcml0
aG1pYyBkZWxheSBvZiB0aGUgT3B1cyBlbmNvZGVyLgorPC90PgorPHQ+CitJbiBlbmNvZGVycyBk
ZXJpdmVkIGZyb20gdGhlIHJlZmVyZW5jZQorIGltcGxlbWVudGF0aW9uJm5ic3A7PHhyZWYgdGFy
Z2V0PSJSRkM2NzE2Ii8+LCB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgY2FuIGJlCisgcXVlcmllZCB3
aXRoOgorPC90PgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50
ZXIiPjwhW0NEQVRBWworIG9wdXNfZW5jb2Rlcl9jdGwoZW5jb2Rlcl9zdGF0ZSwgT1BVU19HRVRf
TE9PS0FIRUFEKCZkZWxheV9zYW1wbGVzKSk7CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx0
PgorVG8gYWNoaWV2ZSBnb29kIHF1YWxpdHkgaW4gdGhlIHZlcnkgZmlyc3Qgc2FtcGxlcyBvZiBh
IHN0cmVhbSwgaW1wbGVtZW50YXRpb25zCisgTUFZIHVzZSBsaW5lYXIgcHJlZGljdGl2ZSBjb2Rp
bmcgKExQQykgZXh0cmFwb2xhdGlvbiB0byBnZW5lcmF0ZSBhdCBsZWFzdCAxMjAKKyBleHRyYSBz
YW1wbGVzIGF0IHRoZSBiZWdpbm5pbmcgdG8gYXZvaWQgdGhlIE9wdXMgZW5jb2RlciBoYXZpbmcg
dG8gZW5jb2RlIGEKKyBkaXNjb250aW51b3VzIHNpZ25hbC4KK0ZvciBtb3JlIGluZm9ybWF0aW9u
IG9uIGxpbmVhciBwcmVkaWN0aW9uLCBzZWUKKyA8eHJlZiB0YXJnZXQ9ImxpbmVhci1wcmVkaWN0
aW9uIi8+LgorRm9yIGFuIGlucHV0IGZpbGUgY29udGFpbmluZyAnbGVuZ3RoJyBzYW1wbGVzLCB0
aGUgaW1wbGVtZW50YXRpb24gU0hPVUxEIHNldAorIHRoZSBwcmUtc2tpcCBoZWFkZXIgdmFsdWUg
dG8gKGRlbGF5X3NhbXBsZXMmbmJzcDsrJm5ic3A7ZXh0cmFfc2FtcGxlcyksIGVuY29kZQorIGF0
IGxlYXN0IChsZW5ndGgmbmJzcDsrJm5ic3A7ZGVsYXlfc2FtcGxlcyZuYnNwOysmbmJzcDtleHRy
YV9zYW1wbGVzKQorIHNhbXBsZXMsIGFuZCBzZXQgdGhlIGdyYW51bGUgcG9zaXRpb24gb2YgdGhl
IGxhc3QgcGFnZSB0bworIChsZW5ndGgmbmJzcDsrJm5ic3A7ZGVsYXlfc2FtcGxlcyZuYnNwOysm
bmJzcDtleHRyYV9zYW1wbGVzKS4KK1RoaXMgZW5zdXJlcyB0aGF0IHRoZSBlbmNvZGVkIGZpbGUg
aGFzIHRoZSBzYW1lIGR1cmF0aW9uIGFzIHRoZSBvcmlnaW5hbCwgd2l0aAorIG5vIHRpbWUgb2Zm
c2V0LiBUaGUgYmVzdCB3YXkgdG8gcGFkIHRoZSBlbmQgb2YgdGhlIHN0cmVhbSBpcyB0byBhbHNv
IHVzZSBMUEMKKyBleHRyYXBvbGF0aW9uLCBidXQgemVyby1wYWRkaW5nIGlzIGFsc28gYWNjZXB0
YWJsZS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJscGMiIHRpdGxlPSJMUEMgRXh0cmFwb2xh
dGlvbiI+Cis8dD4KK1RoZSBmaXJzdCBzdGVwIGluIExQQyBleHRyYXBvbGF0aW9uIGlzIHRvIGNv
bXB1dGUgbGluZWFyIHByZWRpY3Rpb24KKyBjb2VmZmljaWVudHMuIDx4cmVmIHRhcmdldD0ibHBj
LXNhbXBsZSIvPgorV2hlbiBleHRlbmRpbmcgdGhlIGVuZCBvZiB0aGUgc2lnbmFsLCBvcmRlci1O
ICh0eXBpY2FsbHkgd2l0aCBOIHJhbmdpbmcgZnJvbSA4CisgdG8gNDApIExQQyBhbmFseXNpcyBp
cyBwZXJmb3JtZWQgb24gYSB3aW5kb3cgbmVhciB0aGUgZW5kIG9mIHRoZSBzaWduYWwuCitUaGUg
bGFzdCBOIHNhbXBsZXMgYXJlIHVzZWQgYXMgbWVtb3J5IHRvIGFuIGluZmluaXRlIGltcHVsc2Ug
cmVzcG9uc2UgKElJUikKKyBmaWx0ZXIuCis8L3Q+Cis8dD4KK1RoZSBmaWx0ZXIgaXMgdGhlbiBh
cHBsaWVkIG9uIGEgemVybyBpbnB1dCB0byBleHRyYXBvbGF0ZSB0aGUgZW5kIG9mIHRoZSBzaWdu
YWwuCitMZXQgYShrKSBiZSB0aGUga3RoIExQQyBjb2VmZmljaWVudCBhbmQgeChuKSBiZSB0aGUg
bnRoIHNhbXBsZSBvZiB0aGUgc2lnbmFsLAorIGVhY2ggbmV3IHNhbXBsZSBwYXN0IHRoZSBlbmQg
b2YgdGhlIHNpZ25hbCBpcyBjb21wdXRlZCBhczoKKzwvdD4KKzxmaWd1cmUgYWxpZ249ImNlbnRl
ciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgTgorICAgICAg
IC0tLQoreChuKSA9IFwgICBhKGspKngobi1rKQorICAgICAgIC8KKyAgICAgICAtLS0KKyAgICAg
ICBrPTEKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPHQ+CitUaGUgcHJvY2VzcyBpcyByZXBl
YXRlZCBpbmRlcGVuZGVudGx5IGZvciBlYWNoIGNoYW5uZWwuCitJdCBpcyBwb3NzaWJsZSB0byBl
eHRlbmQgdGhlIGJlZ2lubmluZyBvZiB0aGUgc2lnbmFsIGJ5IGFwcGx5aW5nIHRoZSBzYW1lCisg
cHJvY2VzcyBiYWNrd2FyZCBpbiB0aW1lLgorV2hlbiBleHRlbmRpbmcgdGhlIGJlZ2lubmluZyBv
ZiB0aGUgc2lnbmFsLCBpdCBpcyBiZXN0IHRvIGFwcGx5IGEgImZhZGUgaW4iIHRvCisgdGhlIGV4
dHJhcG9sYXRlZCBzaWduYWwsIGUuZy4gYnkgbXVsdGlwbHlpbmcgaXQgYnkgYSBoYWxmLUhhbm5p
bmcgd2luZG93CisgPHhyZWYgdGFyZ2V0PSJoYW5uaW5nIi8+LgorPC90PgorCis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0iY29udGludW91c19jaGFpbmluZyIgdGl0bGU9IkNvbnRpbnVv
dXMgQ2hhaW5pbmciPgorPHQ+CitJbiBzb21lIGFwcGxpY2F0aW9ucywgc3VjaCBhcyBJbnRlcm5l
dCByYWRpbywgaXQgaXMgZGVzaXJhYmxlIHRvIGN1dCBhIGxvbmcKKyBzdHJlYW0gaW50byBzbWFs
bGVyIGNoYWlucywgZS5nLiBzbyB0aGUgY29tbWVudCBoZWFkZXIgY2FuIGJlIHVwZGF0ZWQuCitU
aGlzIGNhbiBiZSBkb25lIHNpbXBseSBieSBzZXBhcmF0aW5nIHRoZSBpbnB1dCBzdHJlYW1zIGlu
dG8gc2VnbWVudHMgYW5kCisgZW5jb2RpbmcgZWFjaCBzZWdtZW50IGluZGVwZW5kZW50bHkuCitU
aGUgZHJhd2JhY2sgb2YgdGhpcyBhcHByb2FjaCBpcyB0aGF0IGl0IGNyZWF0ZXMgYSBzbWFsbCBk
aXNjb250aW51aXR5CisgYXQgdGhlIGJvdW5kYXJ5IGR1ZSB0byB0aGUgbG9zc3kgbmF0dXJlIG9m
IE9wdXMuCitBIG11eGVyIE1BWSBhdm9pZCB0aGlzIGRpc2NvbnRpbnVpdHkgYnkgdXNpbmcgdGhl
IGZvbGxvd2luZyBwcm9jZWR1cmU6Cis8bGlzdCBzdHlsZT0ibnVtYmVycyI+Cis8dD5FbmNvZGUg
dGhlIGxhc3QgZnJhbWUgb2YgdGhlIGZpcnN0IHNlZ21lbnQgYXMgYW4gaW5kZXBlbmRlbnQgZnJh
bWUgYnkKKyB0dXJuaW5nIG9mZiBhbGwgZm9ybXMgb2YgaW50ZXItZnJhbWUgcHJlZGljdGlvbi4K
K0RlLWVtcGhhc2lzIGlzIGFsbG93ZWQuPC90PgorPHQ+U2V0IHRoZSBncmFudWxlIHBvc2l0aW9u
IG9mIHRoZSBsYXN0IHBhZ2UgdG8gYSBwb2ludCBuZWFyIHRoZSBlbmQgb2YgdGhlCisgbGFzdCBm
cmFtZS48L3Q+Cis8dD5CZWdpbiB0aGUgc2Vjb25kIHNlZ21lbnQgd2l0aCBhIGNvcHkgb2YgdGhl
IGxhc3QgZnJhbWUgb2YgdGhlIGZpcnN0Cisgc2VnbWVudC48L3Q+Cis8dD5TZXQgdGhlIHByZS1z
a2lwIHZhbHVlIG9mIHRoZSBzZWNvbmQgc3RyZWFtIGluIHN1Y2ggYSB3YXkgYXMgdG8gcHJvcGVy
bHkKKyBqb2luIHRoZSB0d28gc3RyZWFtcy48L3Q+Cis8dD5Db250aW51ZSB0aGUgZW5jb2Rpbmcg
cHJvY2VzcyBub3JtYWxseSBmcm9tIHRoZXJlLCB3aXRob3V0IGFueSByZXNldCB0bworIHRoZSBl
bmNvZGVyLjwvdD4KKzwvbGlzdD4KKzwvdD4KKzx0PgorSW4gZW5jb2RlcnMgZGVyaXZlZCBmcm9t
IHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24sIGludGVyLWZyYW1lIHByZWRpY3Rpb24KKyBj
YW4gYmUgdHVybmVkIG9mZiBieSBjYWxsaW5nOgorPC90PgorPGZpZ3VyZSBhbGlnbj0iY2VudGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIG9wdXNfZW5jb2Rlcl9jdGwo
ZW5jb2Rlcl9zdGF0ZSwgT1BVU19TRVRfUFJFRElDVElPTl9ESVNBQkxFRCgxKSk7CitdXT48L2Fy
dHdvcms+Cis8L2ZpZ3VyZT4KKzx0PgorRm9yIGJlc3QgcmVzdWx0cywgdGhpcyBpbXBsZW1lbnRh
dGlvbiByZXF1aXJlcyB0aGF0IHByZWRpY3Rpb24gYmUgZXhwbGljaXRseQorIGVuYWJsZWQgYWdh
aW4gYmVmb3JlIHJlc3VtaW5nIG5vcm1hbCBlbmNvZGluZywgZXZlbiBhZnRlciBhIHJlc2V0Lgor
PC90PgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJpbXBs
ZW1lbnRhdGlvbiIgdGl0bGU9IkltcGxlbWVudGF0aW9uIFN0YXR1cyI+Cis8dD4KK0EgYnJpZWYg
c3VtbWFyeSBvZiBtYWpvciBpbXBsZW1lbnRhdGlvbnMgb2YgdGhpcyBkcmFmdCBpcyBhdmFpbGFi
bGUKKyBhdCA8ZXJlZiB0YXJnZXQ9Imh0dHBzOi8vd2lraS54aXBoLm9yZy9PZ2dPcHVzSW1wbGVt
ZW50YXRpb24iLz4sCisgYWxvbmcgd2l0aCB0aGVpciBzdGF0dXMuCis8L3Q+Cis8dD4KK1tOb3Rl
IHRvIFJGQyBFZGl0b3I6IHBsZWFzZSByZW1vdmUgdGhpcyBlbnRpcmUgc2VjdGlvbiBiZWZvcmUK
KyBmaW5hbCBwdWJsaWNhdGlvbiBwZXIgPHhyZWYgdGFyZ2V0PSJSRkM2OTgyIi8+LCBhbG9uZyB3
aXRoCisgaXRzIHJlZmVyZW5jZXMuXQorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9InNlY3VyaXR5IiB0aXRsZT0iU2VjdXJpdHkgQ29uc2lkZXJhdGlvbnMiPgorPHQ+CitJbXBs
ZW1lbnRhdGlvbnMgb2YgdGhlIE9wdXMgY29kZWMgbmVlZCB0byB0YWtlIGFwcHJvcHJpYXRlIHNl
Y3VyaXR5CisgY29uc2lkZXJhdGlvbnMgaW50byBhY2NvdW50LCBhcyBvdXRsaW5lZCBpbiA8eHJl
ZiB0YXJnZXQ9IlJGQzQ3MzIiLz4uCitUaGlzIGlzIGp1c3QgYXMgbXVjaCBhIHByb2JsZW0gZm9y
IHRoZSBjb250YWluZXIgYXMgaXQgaXMgZm9yIHRoZSBjb2RlYyBpdHNlbGYuCitNYWxpY2lvdXMg
cGF5bG9hZHMgYW5kL29yIGlucHV0IHN0cmVhbXMgY2FuIGJlIHVzZWQgdG8gYXR0YWNrIGNvZGVj
CisgaW1wbGVtZW50YXRpb25zLgorSW1wbGVtZW50YXRpb25zIE1VU1QgTk9UIG92ZXJydW4gdGhl
aXIgYWxsb2NhdGVkIG1lbW9yeSBub3IgY29uc3VtZSBleGNlc3NpdmUKKyByZXNvdXJjZXMgd2hl
biBkZWNvZGluZyBwYXlsb2FkcyBvciBwcm9jZXNzaW5nIGlucHV0IHN0cmVhbXMuCitBbHRob3Vn
aCBwcm9ibGVtcyBpbiBlbmNvZGluZyBhcHBsaWNhdGlvbnMgYXJlIHR5cGljYWxseSByYXJlciwg
dGhpcyBzdGlsbAorIGFwcGxpZXMgdG8gYSBtdXhlciwgYXMgdnVsbmVyYWJpbGl0aWVzIHdvdWxk
IGFsbG93IGFuIGF0dGFja2VyIHRvIGF0dGFjaworIHRyYW5zY29kaW5nIGdhdGV3YXlzLgorPC90
PgorCis8dD4KK0hlYWRlciBwYXJzaW5nIGNvZGUgY29udGFpbnMgdGhlIG1vc3QgbGlrZWx5IGFy
ZWEgZm9yIHBvdGVudGlhbCBvdmVycnVucy4KK0l0IGlzIGltcG9ydGFudCBmb3IgaW1wbGVtZW50
YXRpb25zIHRvIGVuc3VyZSB0aGVpciBidWZmZXJzIGNvbnRhaW4gZW5vdWdoCisgZGF0YSBmb3Ig
YWxsIG9mIHRoZSByZXF1aXJlZCBmaWVsZHMgYmVmb3JlIGF0dGVtcHRpbmcgdG8gcmVhZCBpdCAo
Zm9yIGV4YW1wbGUsCisgZm9yIGFsbCBvZiB0aGUgY2hhbm5lbCBtYXAgZGF0YSBpbiB0aGUgSUQg
aGVhZGVyKS4KK0ltcGxlbWVudGF0aW9ucyB3b3VsZCBkbyB3ZWxsIHRvIHZhbGlkYXRlIHRoZSBp
bmRpY2VzIG9mIHRoZSBjaGFubmVsIG1hcCwgYWxzbywKKyB0byBlbnN1cmUgdGhleSBtZWV0IGFs
bCBvZiB0aGUgcmVzdHJpY3Rpb25zIG91dGxpbmVkIGluCisgPHhyZWYgdGFyZ2V0PSJjaGFubmVs
X21hcHBpbmciLz4sIGluIG9yZGVyIHRvIGF2b2lkIGF0dGVtcHRpbmcgdG8gcmVhZCBkYXRhCisg
ZnJvbSBjaGFubmVscyB0aGF0IGRvIG5vdCBleGlzdC4KKzwvdD4KKworPHQ+CitUbyBhdm9pZCBl
eGNlc3NpdmUgcmVzb3VyY2UgdXNhZ2UsIHdlIGFkdmlzZSBpbXBsZW1lbnRhdGlvbnMgdG8gYmUg
ZXNwZWNpYWxseQorIHdhcnkgb2Ygc3RyZWFtcyB0aGF0IG1pZ2h0IGNhdXNlIHRoZW0gdG8gcHJv
Y2VzcyBmYXIgbW9yZSBkYXRhIHRoYW4gd2FzCisgYWN0dWFsbHkgdHJhbnNtaXR0ZWQuCitGb3Ig
ZXhhbXBsZSwgYSByZWxhdGl2ZWx5IHNtYWxsIGNvbW1lbnQgaGVhZGVyIG1heSBjb250YWluIHZh
bHVlcyBmb3IgdGhlCisgc3RyaW5nIGxlbmd0aHMgb3IgdXNlciBjb21tZW50IGxpc3QgbGVuZ3Ro
IHRoYXQgaW1wbHkgdGhhdCBpdCBpcyBtYW55CisgZ2lnYWJ5dGVzIGluIHNpemUuCitFdmVuIGNv
bXB1dGluZyB0aGUgc2l6ZSBvZiB0aGUgcmVxdWlyZWQgYnVmZmVyIGNvdWxkIG92ZXJmbG93IGEg
MzItYml0IGludGVnZXIsCisgYW5kIGFjdHVhbGx5IGF0dGVtcHRpbmcgdG8gYWxsb2NhdGUgc3Vj
aCBhIGJ1ZmZlciBiZWZvcmUgdmVyaWZ5aW5nIGl0IHdvdWxkIGJlCisgYSByZWFzb25hYmxlIHNp
emUgaXMgYSBiYWQgaWRlYS4KK0FmdGVyIHJlYWRpbmcgdGhlIHVzZXIgY29tbWVudCBsaXN0IGxl
bmd0aCwgaW1wbGVtZW50YXRpb25zIG1pZ2h0IHdpc2ggdG8KKyB2ZXJpZnkgdGhhdCB0aGUgaGVh
ZGVyIGNvbnRhaW5zIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGFtb3VudCBvZiBkYXRhIGZvciB0aGF0
CisgbWFueSBjb21tZW50cyAoNCZuYnNwO2FkZGl0aW9uYWwgb2N0ZXRzIHBlciBjb21tZW50LCB0
byBpbmRpY2F0ZSBlYWNoIGhhcyBhCisgbGVuZ3RoIG9mIHplcm8pIGJlZm9yZSBwcm9jZWVkaW5n
IGFueSBmdXJ0aGVyLCBhZ2FpbiB0YWtpbmcgY2FyZSB0byBhdm9pZAorIG92ZXJmbG93IGluIHRo
ZXNlIGNhbGN1bGF0aW9ucy4KK0lmIGFsbG9jYXRpbmcgYW4gYXJyYXkgb2YgcG9pbnRlcnMgdG8g
cG9pbnQgYXQgdGhlc2Ugc3RyaW5ncywgdGhlIHNpemUgb2YgdGhlCisgcG9pbnRlcnMgbWF5IGJl
IGxhcmdlciB0aGFuIDQmbmJzcDtvY3RldHMsIHBvdGVudGlhbGx5IHJlcXVpcmluZyBhIHNlcGFy
YXRlCisgb3ZlcmZsb3cgY2hlY2suCis8L3Q+CisKKzx0PgorQW5vdGhlciBidWcgaW4gdGhpcyBj
bGFzcyB3ZSBoYXZlIG9ic2VydmVkIG1vcmUgdGhhbiBvbmNlIGludm9sdmVzIHRoZSBoYW5kbGlu
ZworIG9mIGludmFsaWQgZGF0YSBhdCB0aGUgZW5kIG9mIGEgc3RyZWFtLgorT2Z0ZW4sIGltcGxl
bWVudGF0aW9ucyB3aWxsIHNlZWsgdG8gdGhlIGVuZCBvZiBhIHN0cmVhbSB0byBsb2NhdGUgdGhl
IGxhc3QKKyB0aW1lc3RhbXAgaW4gb3JkZXIgdG8gY29tcHV0ZSBpdHMgdG90YWwgZHVyYXRpb24u
CitJZiB0aGV5IGRvIG5vdCBmaW5kIGEgdmFsaWQgY2FwdHVyZSBwYXR0ZXJuIGFuZCBPZ2cgcGFn
ZSBmcm9tIHRoZSBkZXNpcmVkCisgbG9naWNhbCBzdHJlYW0sIHRoZXkgd2lsbCBiYWNrIHVwIGFu
ZCB0cnkgYWdhaW4uCitJZiBjYXJlIGlzIG5vdCB0YWtlbiB0byBhdm9pZCByZS1zY2FubmluZyBk
YXRhIHRoYXQgd2FzIGFscmVhZHkgc2Nhbm5lZCwgdGhpcworIHNlYXJjaCBjYW4gcXVpY2tseSBk
ZXZvbHZlIGludG8gc29tZXRoaW5nIHdpdGggYSBjb21wbGV4aXR5IHRoYXQgaXMgcXVhZHJhdGlj
CisgaW4gdGhlIGFtb3VudCBvZiBpbnZhbGlkIGRhdGEuCis8L3Q+CisKKzx0PgorSW4gZ2VuZXJh
bCB3aGVuIHNlZWtpbmcsIGltcGxlbWVudGF0aW9ucyB3aWxsIHdpc2ggdG8gYmUgY2F1dGlvdXMg
YWJvdXQgdGhlCisgZWZmZWN0cyBvZiBpbnZhbGlkIGdyYW51bGUgcG9zaXRpb24gdmFsdWVzLCBh
bmQgZW5zdXJlIGFsbCBhbGdvcml0aG1zIHdpbGwKKyBjb250aW51ZSB0byBtYWtlIHByb2dyZXNz
IGFuZCBldmVudHVhbGx5IHRlcm1pbmF0ZSwgZXZlbiBpZiB0aGVzZSBhcmUgbWlzc2luZworIG9y
IG91dC1vZi1vcmRlci4KKzwvdD4KKworPHQ+CitMaWtlIG1vc3Qgb3RoZXIgY29udGFpbmVyIGZv
cm1hdHMsIE9nZyBPcHVzIHN0cmVhbXMgU0hPVUxEIE5PVCBiZSB1c2VkIHdpdGgKKyBpbnNlY3Vy
ZSBjaXBoZXJzIG9yIGNpcGhlciBtb2RlcyB0aGF0IGFyZSB2dWxuZXJhYmxlIHRvIGtub3duLXBs
YWludGV4dAorIGF0dGFja3MuCitFbGVtZW50cyBzdWNoIGFzIHRoZSBPZ2cgcGFnZSBjYXB0dXJl
IHBhdHRlcm4gYW5kIHRoZSBtYWdpYyBzaWduYXR1cmVzIGluIHRoZQorIElEIGhlYWRlciBhbmQg
dGhlIGNvbW1lbnQgaGVhZGVyIGFsbCBoYXZlIGVhc2lseSBwcmVkaWN0YWJsZSB2YWx1ZXMsIGlu
CisgYWRkaXRpb24gdG8gdmFyaW91cyBlbGVtZW50cyBvZiB0aGUgY29kZWMgZGF0YSBpdHNlbGYu
Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iY29udGVudF90eXBlIiB0aXRs
ZT0iQ29udGVudCBUeXBlIj4KKzx0PgorQW4gIk9nZyBPcHVzIGZpbGUiIGNvbnNpc3RzIG9mIG9u
ZSBvciBtb3JlIHNlcXVlbnRpYWxseSBtdWx0aXBsZXhlZCBzZWdtZW50cywKKyBlYWNoIGNvbnRh
aW5pbmcgZXhhY3RseSBvbmUgT2dnIE9wdXMgc3RyZWFtLgorVGhlIFJFQ09NTUVOREVEIG1pbWUt
dHlwZSBmb3IgT2dnIE9wdXMgZmlsZXMgaXMgImF1ZGlvL29nZyIuCis8L3Q+CisKKzx0PgorSWYg
bW9yZSBzcGVjaWZpY2l0eSBpcyBkZXNpcmVkLCBvbmUgTUFZIGluZGljYXRlIHRoZSBwcmVzZW5j
ZSBvZiBPcHVzIHN0cmVhbXMKKyB1c2luZyB0aGUgY29kZWNzIHBhcmFtZXRlciBkZWZpbmVkIGlu
IDx4cmVmIHRhcmdldD0iUkZDNjM4MSIvPiBhbmQKKyA8eHJlZiB0YXJnZXQ9IlJGQzUzMzQiLz4s
IGUuZy4sCis8L3Q+Cis8ZmlndXJlPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFb
CisgICAgYXVkaW8vb2dnOyBjb2RlY3M9b3B1cworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8
dD4KKyBmb3IgYW4gT2dnIE9wdXMgZmlsZS4KKzwvdD4KKworPHQ+CitUaGUgUkVDT01NRU5ERUQg
ZmlsZW5hbWUgZXh0ZW5zaW9uIGZvciBPZ2cgT3B1cyBmaWxlcyBpcyAnLm9wdXMnLgorPC90Pgor
Cis8dD4KK1doZW4gT3B1cyBpcyBjb25jdXJyZW50bHkgbXVsdGlwbGV4ZWQgd2l0aCBvdGhlciBz
dHJlYW1zIGluIGFuIE9nZyBjb250YWluZXIsCisgb25lIFNIT1VMRCB1c2Ugb25lIG9mIHRoZSAi
YXVkaW8vb2dnIiwgInZpZGVvL29nZyIsIG9yICJhcHBsaWNhdGlvbi9vZ2ciCisgbWltZS10eXBl
cywgYXMgZGVmaW5lZCBpbiA8eHJlZiB0YXJnZXQ9IlJGQzUzMzQiLz4uCitTdWNoIHN0cmVhbXMg
YXJlIG5vdCBzdHJpY3RseSAiT2dnIE9wdXMgZmlsZXMiIGFzIGRlc2NyaWJlZCBhYm92ZSwKKyBz
aW5jZSB0aGV5IGNvbnRhaW4gbW9yZSB0aGFuIGEgc2luZ2xlIE9wdXMgc3RyZWFtIHBlciBzZXF1
ZW50aWFsbHkKKyBtdWx0aXBsZXhlZCBzZWdtZW50LCBlLmcuIHZpZGVvIG9yIG11bHRpcGxlIGF1
ZGlvIHRyYWNrcy4KK0luIHN1Y2ggY2FzZXMgdGhlIHRoZSAnLm9wdXMnIGZpbGVuYW1lIGV4dGVu
c2lvbiBpcyBOT1QgUkVDT01NRU5ERUQuCis8L3Q+CisKKzx0PgorSW4gZWl0aGVyIGNhc2UsIHRo
aXMgZG9jdW1lbnQgdXBkYXRlcyA8eHJlZiB0YXJnZXQ9IlJGQzUzMzQiLz4KKyB0byBhZGQgJ29w
dXMnIGFzIGEgY29kZWNzIHBhcmFtZXRlciB2YWx1ZSB3aXRoIGNoYXJbOF06ICdPcHVzSGVhZCcK
KyBhcyBDb2RlYyBJZGVudGlmaWVyLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9ImlhbmEiIHRpdGxlPSJJQU5BIENvbnNpZGVyYXRpb25zIj4KKzx0PgorVGhpcyBkb2N1bWVu
dCB1cGRhdGVzIHRoZSBJQU5BIE1lZGlhIFR5cGVzIHJlZ2lzdHJ5IHRvIGFkZCAub3B1cworIGFz
IGEgZmlsZSBleHRlbnNpb24gZm9yICJhdWRpby9vZ2ciLCBhbmQgdG8gYWRkIGl0c2VsZiBhcyBh
IHJlZmVyZW5jZQorIGFsb25nc2lkZSA8eHJlZiB0YXJnZXQ9IlJGQzUzMzQiLz4gZm9yICJhdWRp
by9vZ2ciLCAidmlkZW8vb2dnIiwgYW5kCisgImFwcGxpY2F0aW9uL29nZyIgTWVkaWEgVHlwZXMu
Cis8L3Q+Cis8dD4KK1RoaXMgZG9jdW1lbnQgZGVmaW5lcyBhIG5ldyByZWdpc3RyeSAiT3B1cyBD
aGFubmVsIE1hcHBpbmcgRmFtaWxpZXMiIHRvCisgaW5kaWNhdGUgaG93IHRoZSBzZW1hbnRpYyBt
ZWFuaW5ncyBvZiB0aGUgY2hhbm5lbHMgaW4gYSBtdWx0aS1jaGFubmVsIE9wdXMKKyBzdHJlYW0g
YXJlIGRlc2NyaWJlZC4KK0lBTkEgaXMgcmVxdWVzdGVkIHRvIGNyZWF0ZSBhIG5ldyBuYW1lIHNw
YWNlIG9mICJPcHVzIENoYW5uZWwgTWFwcGluZworIEZhbWlsaWVzIi4KK1RoaXMgd2lsbCBiZSBh
IG5ldyByZWdpc3RyeSBvbiB0aGUgSUFOQSBNYXRyaXgsIGFuZCBub3QgYSBzdWJyZWdpc3RyeSBv
ZiBhbgorIGV4aXN0aW5nIHJlZ2lzdHJ5LgorTW9kaWZpY2F0aW9ucyB0byB0aGlzIHJlZ2lzdHJ5
IGZvbGxvdyB0aGUgIlNwZWNpZmljYXRpb24gUmVxdWlyZWQiIHJlZ2lzdHJhdGlvbgorIHBvbGlj
eSBhcyBkZWZpbmVkIGluIDx4cmVmIHRhcmdldD0iUkZDNTIyNiIvPi4KK0VhY2ggcmVnaXN0cnkg
ZW50cnkgY29uc2lzdHMgb2YgYSBDaGFubmVsIE1hcHBpbmcgRmFtaWx5IE51bWJlciwgd2hpY2gg
aXMKKyBzcGVjaWZpZWQgaW4gZGVjaW1hbCBpbiB0aGUgcmFuZ2UgMCB0byAyNTUsIGluY2x1c2l2
ZSwgYW5kIGEgUmVmZXJlbmNlIChvcgorIGxpc3Qgb2YgcmVmZXJlbmNlcykKK0VhY2ggUmVmZXJl
bmNlIG11c3QgcG9pbnQgdG8gc3VmZmljaWVudCBkb2N1bWVudGF0aW9uIHRvIGRlc2NyaWJlIHdo
YXQKKyBpbmZvcm1hdGlvbiBpcyBjb2RlZCBpbiB0aGUgT3B1cyBpZGVudGlmaWNhdGlvbiBoZWFk
ZXIgZm9yIHRoaXMgY2hhbm5lbAorIG1hcHBpbmcgZmFtaWx5LCBob3cgYSBkZW11eGVyIGRldGVy
bWluZXMgdGhlIFN0cmVhbSBDb3VudCAoJ04nKSBhbmQgQ291cGxlZAorIFN0cmVhbSBDb3VudCAo
J00nKSBmcm9tIHRoaXMgaW5mb3JtYXRpb24sIGFuZCBob3cgaXQgZGV0ZXJtaW5lcyB0aGUgcHJv
cGVyCisgaW50ZXJwcmV0YXRpb24gb2YgZWFjaCBvZiB0aGUgZGVjb2RlZCBjaGFubmVscy4KKzwv
dD4KKzx0PgorVGhpcyBkb2N1bWVudCBkZWZpbmVzIHRocmVlIGluaXRpYWwgYXNzaWdubWVudHMg
Zm9yIHRoaXMgcmVnaXN0cnkuCis8L3Q+Cis8dGV4dHRhYmxlPgorPHR0Y29sPlZhbHVlPC90dGNv
bD48dHRjb2w+UmVmZXJlbmNlPC90dGNvbD4KKzxjPjA8L2M+PGM+W1JGQ1hYWFhdIDx4cmVmIHRh
cmdldD0iY2hhbm5lbF9tYXBwaW5nXzAiLz48L2M+Cis8Yz4xPC9jPjxjPltSRkNYWFhYXSA8eHJl
ZiB0YXJnZXQ9ImNoYW5uZWxfbWFwcGluZ18xIi8+PC9jPgorPGM+MjU1PC9jPjxjPltSRkNYWFhY
XSA8eHJlZiB0YXJnZXQ9ImNoYW5uZWxfbWFwcGluZ18yNTUiLz48L2M+Cis8L3RleHR0YWJsZT4K
Kzx0PgorVGhlIGRlc2lnbmF0ZWQgZXhwZXJ0IHdpbGwgZGV0ZXJtaW5lIGlmIHRoZSBSZWZlcmVu
Y2UgcG9pbnRzIHRvIGEgc3BlY2lmaWNhdGlvbgorIHRoYXQgbWVldHMgdGhlIHJlcXVpcmVtZW50
cyBmb3IgcGVybWFuZW5jZSBhbmQgcmVhZHkgYXZhaWxhYmlsaXR5IGxhaWQgb3V0CisgaW4mbmJz
cDs8eHJlZiB0YXJnZXQ9IlJGQzUyMjYiLz4gYW5kIHRoYXQgaXQgc3BlY2lmaWVzIHRoZSBpbmZv
cm1hdGlvbgorIGRlc2NyaWJlZCBhYm92ZSB3aXRoIHN1ZmZpY2llbnQgY2xhcml0eSB0byBhbGxv
dyBpbnRlcm9wZXJhYmxlCisgaW1wbGVtZW50YXRpb25zLgorPC90PgorPC9zZWN0aW9uPgorCis8
c2VjdGlvbiBhbmNob3I9IkFja25vd2xlZGdtZW50cyIgdGl0bGU9IkFja25vd2xlZGdtZW50cyI+
Cis8dD4KK1RoYW5rcyB0byBCZW4gQ2FtcGJlbGwsIEpvZWwgTS4gSGFscGVybiwgTWFyayBIYXJy
aXMsIEdyZWcgTWF4d2VsbCwKKyBDaHJpc3RvcGhlciAiTW9udHkiIE1vbnRnb21lcnksIEplYW4t
TWFyYyBWYWxpbiwgU3RlcGhhbiBXZW5nZXIsIGFuZCBNbyBaYW5hdHkKKyBmb3IgdGhlaXIgdmFs
dWFibGUgY29udHJpYnV0aW9ucyB0byB0aGlzIGRvY3VtZW50LgorQWRkaXRpb25hbCB0aGFua3Mg
dG8gQW5kcmV3IEQnQWRkZXNpbywgR3JlZyBNYXh3ZWxsLCBhbmQgVmluY2VudCBQZW5xdWVyYydo
IGZvcgorIHRoZWlyIGZlZWRiYWNrIGJhc2VkIG9uIGVhcmx5IGltcGxlbWVudGF0aW9ucy4KKzwv
dD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IlJGQyBFZGl0b3IgTm90ZXMiPgorPHQ+
CitJbiZuYnNwOzx4cmVmIHRhcmdldD0iaWFuYSIvPiwgIlJGQ1hYWFgiIGlzIHRvIGJlIHJlcGxh
Y2VkIHdpdGggdGhlIFJGQyBudW1iZXIKKyBhc3NpZ25lZCB0byB0aGlzIGRyYWZ0LgorPC90Pgor
PC9zZWN0aW9uPgorCis8L21pZGRsZT4KKzxiYWNrPgorPHJlZmVyZW5jZXMgdGl0bGU9Ik5vcm1h
dGl2ZSBSZWZlcmVuY2VzIj4KKyAmcmZjMjExOTsKKyAmcmZjMzUzMzsKKyAmcmZjMzYyOTsKKyAm
cmZjNTIyNjsKKyAmcmZjNTMzNDsKKyAmcmZjNjM4MTsKKyAmcmZjNjcxNjsKKworPHJlZmVyZW5j
ZSBhbmNob3I9IkVCVS1SMTI4IiB0YXJnZXQ9Imh0dHBzOi8vdGVjaC5lYnUuY2gvbG91ZG5lc3Mi
PgorPGZyb250PgorICA8dGl0bGU+TG91ZG5lc3MgUmVjb21tZW5kYXRpb24gRUJVIFIxMjg8L3Rp
dGxlPgorICA8YXV0aG9yPgorICAgIDxvcmdhbml6YXRpb24+RUJVIFRlY2huaWNhbCBDb21taXR0
ZWU8L29yZ2FuaXphdGlvbj4KKyAgPC9hdXRob3I+CisgIDxkYXRlIG1vbnRoPSJBdWd1c3QiIHll
YXI9IjIwMTEiLz4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9
InZvcmJpcy1jb21tZW50IgorIHRhcmdldD0iaHR0cHM6Ly93d3cueGlwaC5vcmcvdm9yYmlzL2Rv
Yy92LWNvbW1lbnQuaHRtbCI+Cis8ZnJvbnQ+Cis8dGl0bGU+T2dnIFZvcmJpcyBJIEZvcm1hdCBT
cGVjaWZpY2F0aW9uOiBDb21tZW50IEZpZWxkIGFuZCBIZWFkZXIKKyBTcGVjaWZpY2F0aW9uPC90
aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IkMuIiBzdXJuYW1lPSJNb250Z29tZXJ5IgorIGZ1bGxu
YW1lPSJDaHJpc3RvcGhlciAmcXVvdDtNb250eSZxdW90OyBNb250Z29tZXJ5Ii8+Cis8ZGF0ZSBt
b250aD0iSnVseSIgeWVhcj0iMjAwMiIvPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8L3Jl
ZmVyZW5jZXM+CisKKzxyZWZlcmVuY2VzIHRpdGxlPSJJbmZvcm1hdGl2ZSBSZWZlcmVuY2VzIj4K
KworPCEtLT9yZmMgaW5jbHVkZT0iaHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9i
aWJ4bWwvcmVmZXJlbmNlLlJGQy4zNTUwLnhtbCI/LS0+CisgJnJmYzQ3MzI7CisgJnJmYzY5ODI7
CisgJnJmYzc1ODc7CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJmbGFjIgorIHRhcmdldD0iaHR0cHM6
Ly94aXBoLm9yZy9mbGFjL2Zvcm1hdC5odG1sIj4KKyAgPGZyb250PgorICAgIDx0aXRsZT5GTEFD
IC0gRnJlZSBMb3NzbGVzcyBBdWRpbyBDb2RlYyBGb3JtYXQgRGVzY3JpcHRpb248L3RpdGxlPgor
ICAgIDxhdXRob3IgaW5pdGlhbHM9IkouIiBzdXJuYW1lPSJDb2Fsc29uIiBmdWxsbmFtZT0iSm9z
aCBDb2Fsc29uIi8+CisgICAgPGRhdGUgbW9udGg9IkphbnVhcnkiIHllYXI9IjIwMDgiLz4KKyAg
PC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iaGFubmluZyIKKyB0
YXJnZXQ9Imh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93L2luZGV4LnBocD90aXRsZT1XaW5kb3df
ZnVuY3Rpb24mYW1wO29sZGlkPTcwMzA3NDQ2NyNIYW5uXy4yOEhhbm5pbmcuMjlfd2luZG93Ij4K
KyAgPGZyb250PgorICAgIDx0aXRsZT5IYW5uIHdpbmRvdzwvdGl0bGU+CisgICAgPGF1dGhvcj4K
KyAgICAgIDxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+CisgICAgPC9hdXRo
b3I+CisgICAgPGRhdGUgbW9udGg9IkZlYnJ1YXJ5IiB5ZWFyPSIyMDE2Ii8+CisgIDwvZnJvbnQ+
Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9ImxpbmVhci1wcmVkaWN0aW9uIgor
IHRhcmdldD0iaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3cvaW5kZXgucGhwP3RpdGxlPUxpbmVh
cl9wcmVkaWN0aXZlX2NvZGluZyZhbXA7b2xkaWQ9Njg3NDk4OTYyIj4KKyAgPGZyb250PgorICAg
IDx0aXRsZT5MaW5lYXIgUHJlZGljdGl2ZSBDb2Rpbmc8L3RpdGxlPgorICAgIDxhdXRob3I+Cisg
ICAgICA8b3JnYW5pemF0aW9uPldpa2lwZWRpYTwvb3JnYW5pemF0aW9uPgorICAgIDwvYXV0aG9y
PgorICAgIDxkYXRlIG1vbnRoPSJPY3RvYmVyIiB5ZWFyPSIyMDE1Ii8+CisgIDwvZnJvbnQ+Cis8
L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9ImxwYy1zYW1wbGUiCisgIHRhcmdldD0i
aHR0cHM6Ly9zdm4ueGlwaC5vcmcvdHJ1bmsvdm9yYmlzL2xpYi9scGMuYyI+Cis8ZnJvbnQ+Cisg
IDx0aXRsZT5BdXRvY29ycmVsYXRpb24gTFBDIGNvZWZmIGdlbmVyYXRpb24gYWxnb3JpdGhtCisg
ICAgKFZvcmJpcyBzb3VyY2UgY29kZSk8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0iSi4iIHN1
cm5hbWU9IkRlZ2VuZXIiIGZ1bGxuYW1lPSJKdXR0YSBEZWdlbmVyIi8+Cis8YXV0aG9yIGluaXRp
YWxzPSJDLiIgc3VybmFtZT0iQm9ybWFubiIgZnVsbG5hbWU9IkNhcnN0ZW4gQm9ybWFubiIvPgor
PGRhdGUgbW9udGg9Ik5vdmVtYmVyIiB5ZWFyPSIxOTk0Ii8+Cis8L2Zyb250PgorPC9yZWZlcmVu
Y2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJxLW5vdGF0aW9uIgorIHRhcmdldD0iaHR0cHM6Ly9l
bi53aWtpcGVkaWEub3JnL3cvaW5kZXgucGhwP3RpdGxlPVFfJTI4bnVtYmVyX2Zvcm1hdCUyOSZh
bXA7b2xkaWQ9Njk3MjUyNjE1Ij4KKzxmcm9udD4KKzx0aXRsZT5RIChudW1iZXIgZm9ybWF0KTwv
dGl0bGU+Cis8YXV0aG9yPjxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+PC9h
dXRob3I+Cis8ZGF0ZSBtb250aD0iRGVjZW1iZXIiIHllYXI9IjIwMTUiLz4KKzwvZnJvbnQ+Cis8
L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9InJlcGxheS1nYWluIgorIHRhcmdldD0i
aHR0cHM6Ly93aWtpLnhpcGgub3JnL1ZvcmJpc0NvbW1lbnQjUmVwbGF5X0dhaW4iPgorPGZyb250
PgorPHRpdGxlPlZvcmJpc0NvbW1lbnQ6IFJlcGxheSBHYWluPC90aXRsZT4KKzxhdXRob3IgaW5p
dGlhbHM9IkMuIiBzdXJuYW1lPSJQYXJrZXIiIGZ1bGxuYW1lPSJDb25yYWQgUGFya2VyIi8+Cis8
YXV0aG9yIGluaXRpYWxzPSJNLiIgc3VybmFtZT0iTGVlc2UiIGZ1bGxuYW1lPSJNYXJ0aW4gTGVl
c2UiLz4KKzxkYXRlIG1vbnRoPSJKdW5lIiB5ZWFyPSIyMDA5Ii8+Cis8L2Zyb250PgorPC9yZWZl
cmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJzZWVraW5nIgorIHRhcmdldD0iaHR0cHM6Ly93
aWtpLnhpcGgub3JnL1NlZWtpbmciPgorPGZyb250PgorPHRpdGxlPkdyYW51bGVwb3MgRW5jb2Rp
bmcgYW5kIEhvdyBTZWVraW5nIFJlYWxseSBXb3JrczwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxz
PSJTLiIgc3VybmFtZT0iUGZlaWZmZXIiIGZ1bGxuYW1lPSJTaWx2aWEgUGZlaWZmZXIiLz4KKzxh
dXRob3IgaW5pdGlhbHM9IkMuIiBzdXJuYW1lPSJQYXJrZXIiIGZ1bGxuYW1lPSJDb25yYWQgUGFy
a2VyIi8+Cis8YXV0aG9yIGluaXRpYWxzPSJHLiIgc3VybmFtZT0iTWF4d2VsbCIgZnVsbG5hbWU9
IkdyZWcgTWF4d2VsbCIvPgorPGRhdGUgbW9udGg9Ik1heSIgeWVhcj0iMjAxMiIvPgorPC9mcm9u
dD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0idm9yYmlzLW1hcHBpbmciCisg
dGFyZ2V0PSJodHRwczovL3d3dy54aXBoLm9yZy92b3JiaXMvZG9jL1ZvcmJpc19JX3NwZWMuaHRt
bCN4MS04MTAwMDQuMy45Ij4KKzxmcm9udD4KKzx0aXRsZT5UaGUgVm9yYmlzIEkgU3BlY2lmaWNh
dGlvbiwgU2VjdGlvbiA0LjMuOSBPdXRwdXQgQ2hhbm5lbCBPcmRlcjwvdGl0bGU+Cis8YXV0aG9y
IGluaXRpYWxzPSJDLiIgc3VybmFtZT0iTW9udGdvbWVyeSIKKyBmdWxsbmFtZT0iQ2hyaXN0b3Bo
ZXIgJnF1b3Q7TW9udHkmcXVvdDsgTW9udGdvbWVyeSIvPgorPGRhdGUgbW9udGg9IkphbnVhcnki
IHllYXI9IjIwMTAiLz4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNo
b3I9InZvcmJpcy10cmltIgorIHRhcmdldD0iaHR0cHM6Ly94aXBoLm9yZy92b3JiaXMvZG9jL1Zv
cmJpc19JX3NwZWMuaHRtbCN4MS0xMzIwMDBBLjIiPgorICA8ZnJvbnQ+CisgICAgPHRpdGxlPlRo
ZSBWb3JiaXMgSSBTcGVjaWZpY2F0aW9uLCBBcHBlbmRpeCZuYnNwO0E6IEVtYmVkZGluZyBWb3Ji
aXMKKyAgICAgIGludG8gYW4gT2dnIHN0cmVhbTwvdGl0bGU+CisgICAgPGF1dGhvciBpbml0aWFs
cz0iQy4iIHN1cm5hbWU9Ik1vbnRnb21lcnkiCisgICAgIGZ1bGxuYW1lPSJDaHJpc3RvcGhlciAm
cXVvdDtNb250eSZxdW90OyBNb250Z29tZXJ5Ii8+CisgICAgPGRhdGUgbW9udGg9Ik5vdmVtYmVy
IiB5ZWFyPSIyMDA4Ii8+CisgIDwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBh
bmNob3I9IndhdmUtbXVsdGljaGFubmVsIgorIHRhcmdldD0iaHR0cDovL21zZG4ubWljcm9zb2Z0
LmNvbS9lbi11cy93aW5kb3dzL2hhcmR3YXJlL2dnNDYzMDA2LmFzcHgiPgorICA8ZnJvbnQ+Cisg
ICAgPHRpdGxlPk11bHRpcGxlIENoYW5uZWwgQXVkaW8gRGF0YSBhbmQgV0FWRSBGaWxlczwvdGl0
bGU+CisgICAgPGF1dGhvcj4KKyAgICAgIDxvcmdhbml6YXRpb24+TWljcm9zb2Z0IENvcnBvcmF0
aW9uPC9vcmdhbml6YXRpb24+CisgICAgPC9hdXRob3I+CisgICAgPGRhdGUgbW9udGg9Ik1hcmNo
IiB5ZWFyPSIyMDA3Ii8+CisgIDwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPC9yZWZlcmVuY2Vz
PgorCis8L2JhY2s+Cis8L3JmYz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2RyYWZ0LWlldGYtY29kZWMtb3B1
cy11cGRhdGUueG1sIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLXVwZGF0ZS54bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNmU1MmExNjY4ZDkwNTk3ODE1ZmNhN2E5ZGJlZjM4Yjg4OTZjNTM2MgotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvZG9jL2RyYWZ0LWlldGYtY29kZWMtb3B1cy11cGRhdGUueG1sCkBAIC0wLDAgKzEs
NTE5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVUy1BU0NJSSI/PgorPCFET0NU
WVBFIHJmYyBTWVNURU0gInJmYzI2MjkuZHRkIj4KKzw/cmZjIHRvYz0ieWVzIj8+Cis8P3JmYyB0
b2NvbXBhY3Q9InllcyI/PgorPD9yZmMgdG9jZGVwdGg9IjMiPz4KKzw/cmZjIHRvY2luZGVudD0i
eWVzIj8+Cis8P3JmYyBzeW1yZWZzPSJ5ZXMiPz4KKzw/cmZjIHNvcnRyZWZzPSJ5ZXMiPz4KKzw/
cmZjIGNvbW1lbnRzPSJ5ZXMiPz4KKzw/cmZjIGlubGluZT0ieWVzIj8+Cis8P3JmYyBjb21wYWN0
PSJ5ZXMiPz4KKzw/cmZjIHN1YmNvbXBhY3Q9Im5vIj8+Cis8cmZjIGNhdGVnb3J5PSJzdGQiIGRv
Y05hbWU9ImRyYWZ0LWlldGYtY29kZWMtb3B1cy11cGRhdGUtMDgiCisgICAgIGlwcj0idHJ1c3Qy
MDA5MDIiIHVwZGF0ZXM9IjY3MTYiPgorICA8ZnJvbnQ+CisgICAgPHRpdGxlIGFiYnJldj0iT3B1
cyBVcGRhdGUiPlVwZGF0ZXMgdG8gdGhlIE9wdXMgQXVkaW8gQ29kZWM8L3RpdGxlPgorCis8YXV0
aG9yIGluaXRpYWxzPSJKTSIgc3VybmFtZT0iVmFsaW4iIGZ1bGxuYW1lPSJKZWFuLU1hcmMgVmFs
aW4iPgorPG9yZ2FuaXphdGlvbj5Nb3ppbGxhIENvcnBvcmF0aW9uPC9vcmdhbml6YXRpb24+Cis8
YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3RyZWV0PjMzMSBFLiBFdmVseW4gQXZlbnVlPC9zdHJlZXQ+
Cis8Y2l0eT5Nb3VudGFpbiBWaWV3PC9jaXR5PgorPHJlZ2lvbj5DQTwvcmVnaW9uPgorPGNvZGU+
OTQwNDE8L2NvZGU+Cis8Y291bnRyeT5VU0E8L2NvdW50cnk+Cis8L3Bvc3RhbD4KKzxwaG9uZT4r
MSA2NTAgOTAzLTA4MDA8L3Bob25lPgorPGVtYWlsPmptdmFsaW5Aam12YWxpbi5jYTwvZW1haWw+
Cis8L2FkZHJlc3M+Cis8L2F1dGhvcj4KKworPGF1dGhvciBpbml0aWFscz0iSy4iIHN1cm5hbWU9
IlZvcyIgZnVsbG5hbWU9IktvZW4gVm9zIj4KKzxvcmdhbml6YXRpb24+dm9jVG9uZTwvb3JnYW5p
emF0aW9uPgorPGFkZHJlc3M+Cis8cG9zdGFsPgorPHN0cmVldD48L3N0cmVldD4KKzxjaXR5Pjwv
Y2l0eT4KKzxyZWdpb24+PC9yZWdpb24+Cis8Y29kZT48L2NvZGU+Cis8Y291bnRyeT48L2NvdW50
cnk+Cis8L3Bvc3RhbD4KKzxwaG9uZT48L3Bob25lPgorPGVtYWlsPmtvZW52b3M3NEBnbWFpbC5j
b208L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisKKworCisgICAgPGRhdGUgZGF5PSIy
NiIgbW9udGg9Ikp1bHkiIHllYXI9IjIwMTciIC8+CisKKyAgICA8YWJzdHJhY3Q+CisgICAgICA8
dD5UaGlzIGRvY3VtZW50IGFkZHJlc3NlcyBtaW5vciBpc3N1ZXMgdGhhdCB3ZXJlIGZvdW5kIGlu
IHRoZSBzcGVjaWZpY2F0aW9uCisgICAgICBvZiB0aGUgT3B1cyBhdWRpbyBjb2RlYyBpbiBSRkMg
NjcxNi48L3Q+CisgICAgPC9hYnN0cmFjdD4KKyAgPC9mcm9udD4KKworICA8bWlkZGxlPgorICAg
IDxzZWN0aW9uIHRpdGxlPSJJbnRyb2R1Y3Rpb24iPgorICAgICAgPHQ+VGhpcyBkb2N1bWVudCBh
ZGRyZXNzZXMgbWlub3IgaXNzdWVzIHRoYXQgd2VyZSBkaXNjb3ZlcmVkIGluIHRoZSByZWZlcmVu
Y2UKKyAgICAgIGltcGxlbWVudGF0aW9uIG9mIHRoZSBPcHVzIGNvZGVjLiBVbmxpa2UgbW9zdCBJ
RVRGIHNwZWNpZmljYXRpb25zLCBPcHVzIGlzIGRlZmluZWQKKyAgICAgIGluIDx4cmVmIHRhcmdl
dD0iUkZDNjcxNiI+UkZDIDY3MTY8L3hyZWY+IGluIHRlcm1zIG9mIGEgbm9ybWF0aXZlIHJlZmVy
ZW5jZQorICAgICAgZGVjb2RlciBpbXBsZW1lbnRhdGlvbiByYXRoZXIgdGhhbiBmcm9tIHRoZSBh
c3NvY2lhdGVkIHRleHQgZGVzY3JpcHRpb24uCisgICAgICBUaGF0IFJGQyBpbmNsdWRlcyB0aGUg
cmVmZXJlbmNlIGRlY29kZXIgaW1wbGVtZW50YXRpb24gYXMgQXBwZW5kaXggQS4KKyAgICAgIFRo
YXQncyB3aHkgb25seSBpc3N1ZXMgYWZmZWN0aW5nIHRoZSBkZWNvZGVyIGFyZQorICAgICAgbGlz
dGVkIGhlcmUuIEFuIHVwLXRvLWRhdGUgaW1wbGVtZW50YXRpb24gb2YgdGhlIE9wdXMgZW5jb2Rl
ciBjYW4gYmUgZm91bmQgYXQKKyAgICAgIDxlcmVmIHRhcmdldD0iaHR0cHM6Ly9vcHVzLWNvZGVj
Lm9yZy8iLz4uPC90PgorICAgIDx0PgorICAgICAgU29tZSBvZiB0aGUgY2hhbmdlcyBpbiB0aGlz
IGRvY3VtZW50IHVwZGF0ZSBub3JtYXRpdmUgYmVoYXZpb3VyIGluIGEgd2F5IHRoYXQgcmVxdWly
ZXMKKyAgICAgIG5ldyB0ZXN0IHZlY3RvcnMuIFRoZSBFbmdsaXNoIHRleHQgb2YgdGhlIHNwZWNp
ZmljYXRpb24gaXMgdW5hZmZlY3RlZCwgb25seQorICAgICAgdGhlIEMgaW1wbGVtZW50YXRpb24g
aXMuIFRoZSB1cGRhdGVkIHNwZWNpZmljYXRpb24gcmVtYWlucyBmdWxseSBjb21wYXRpYmxlIHdp
dGgKKyAgICAgIHRoZSBvcmlnaW5hbCBzcGVjaWZpY2F0aW9uLgorICAgIDwvdD4KKworICAgIDx0
PgorICAgIE5vdGU6IGR1ZSB0byBSRkMgZm9ybWF0dGluZyBjb252ZW50aW9ucywgbGluZXMgZXhj
ZWVkaW5nIHRoZSBjb2x1bW4gd2lkdGgKKyAgICBpbiB0aGUgcGF0Y2ggYXJlIHNwbGl0IHVzaW5n
IGEgYmFja3NsYXNoIGNoYXJhY3Rlci4gVGhlIGJhY2tzbGFzaGVzCisgICAgYXQgdGhlIGVuZCBv
ZiBhIGxpbmUgYW5kIHRoZSB3aGl0ZSBzcGFjZSBhdCB0aGUgYmVnaW5uaW5nCisgICAgb2YgdGhl
IGZvbGxvd2luZyBsaW5lIGFyZSBub3QgcGFydCBvZiB0aGUgcGF0Y2guIEEgcHJvcGVybHkgZm9y
bWF0dGVkIHBhdGNoCisgICAgaW5jbHVkaW5nIGFsbCBjaGFuZ2VzIGlzIGF2YWlsYWJsZSBhdAor
ICAgIDxlcmVmIHRhcmdldD0iaHR0cHM6Ly93d3cuaWV0Zi5vcmcvcHJvY2VlZGluZ3MvOTgvc2xp
ZGVzL21hdGVyaWFscy05OC1jb2RlYy1vcHVzLXVwZGF0ZS0wMC5wYXRjaCIvPgorICAgIGFuZCBo
YXMgYSBTSEExIDAyOWUzYWE4OGZjMzQyYzkxZTY3YTIxZTdiZmJjOTQ1ODY2MWNkNWYuCisgICAg
PC90PgorCisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24gdGl0bGU9IlRlcm1pbm9sb2d5
Ij4KKyAgICAgIDx0PlRoZSBrZXkgd29yZHMgIk1VU1QiLCAiTVVTVCBOT1QiLCAiUkVRVUlSRUQi
LCAiU0hBTEwiLCAiU0hBTEwgTk9UIiwKKyAgICAgICJTSE9VTEQiLCAiU0hPVUxEIE5PVCIsICJS
RUNPTU1FTkRFRCIsICJNQVkiLCBhbmQgIk9QVElPTkFMIiBpbiB0aGlzCisgICAgICBkb2N1bWVu
dCBhcmUgdG8gYmUgaW50ZXJwcmV0ZWQgYXMgZGVzY3JpYmVkIGluIDx4cmVmCisgICAgICB0YXJn
ZXQ9IlJGQzIxMTkiPlJGQyAyMTE5PC94cmVmPi48L3Q+CisgICAgPC9zZWN0aW9uPgorCisgICAg
PHNlY3Rpb24gdGl0bGU9IlN0ZXJlbyBTdGF0ZSBSZXNldCBpbiBTSUxLIj4KKyAgICAgIDx0PlRo
ZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gZG9lcyBub3QgcmVpbml0aWFsaXplIHRoZSBzdGVy
ZW8gc3RhdGUKKyAgICAgIGR1cmluZyBhIG1vZGUgc3dpdGNoLiBUaGUgb2xkIHN0ZXJlbyBtZW1v
cnkgY2FuIHByb2R1Y2UgYSBicmllZiBpbXB1bHNlCisgICAgICAoaS5lLiBzaW5nbGUgc2FtcGxl
KSBpbiB0aGUgZGVjb2RlZCBhdWRpby4gVGhpcyBjYW4gYmUgZml4ZWQgYnkgY2hhbmdpbmcKKyAg
ICAgIHNpbGsvZGVjX0FQSS5jIGF0IGxpbmUgNzI6CisgICAgPC90PgorPGZpZ3VyZT4KKzxhcnR3
b3JrPjwhW0NEQVRBWworPENPREUgQkVHSU5TPgorICAgICBmb3IoIG4gPSAwOyBuIDwgREVDT0RF
Ul9OVU1fQ0hBTk5FTFM7IG4rKyApIHsKKyAgICAgICAgIHJldCAgPSBzaWxrX2luaXRfZGVjb2Rl
ciggJmNoYW5uZWxfc3RhdGVbIG4gXSApOworICAgICB9CisrICAgIHNpbGtfbWVtc2V0KCYoKHNp
bGtfZGVjb2RlciAqKWRlY1N0YXRlKS0+c1N0ZXJlbywgMCwKKysgICAgICAgICAgICAgICAgc2l6
ZW9mKCgoc2lsa19kZWNvZGVyICopZGVjU3RhdGUpLT5zU3RlcmVvKSk7CisrICAgIC8qIE5vdCBz
dHJpY3RseSBuZWVkZWQsIGJ1dCBpdCdzIGNsZWFuZXIgdGhhdCB3YXkgKi8KKysgICAgKChzaWxr
X2RlY29kZXIgKilkZWNTdGF0ZSktPnByZXZfZGVjb2RlX29ubHlfbWlkZGxlID0gMDsKKyAKKyAg
ICAgcmV0dXJuIHJldDsKKyB9Cis8Q09ERSBFTkRTPgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+
CisgICAgIDx0PgorICAgICBUaGlzIGNoYW5nZSBhZmZlY3RzIHRoZSBub3JtYXRpdmUgb3V0cHV0
IG9mIHRoZSBkZWNvZGVyLCBidXQgdGhlCisgICAgIGFtb3VudCBvZiBjaGFuZ2UgaXMgd2l0aGlu
IHRoZSB0b2xlcmFuY2UgYW5kIHRvbyBzbWFsbCB0byBtYWtlIHRoZSB0ZXN0dmVjdG9yIGNoZWNr
IGZhaWwuCisgICAgICA8L3Q+CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24gYW5jaG9y
PSJwYWRkaW5nIiB0aXRsZT0iUGFyc2luZyBvZiB0aGUgT3B1cyBQYWNrZXQgUGFkZGluZyI+Cisg
ICAgICA8dD5JdCB3YXMgZGlzY292ZXJlZCB0aGF0IHNvbWUgaW52YWxpZCBwYWNrZXRzIG9mIHZl
cnkgbGFyZ2Ugc2l6ZSBjb3VsZCB0cmlnZ2VyCisgICAgICBhbiBvdXQtb2YtYm91bmRzIHJlYWQg
aW4gdGhlIE9wdXMgcGFja2V0IHBhcnNpbmcgY29kZSByZXNwb25zaWJsZSBmb3IgcGFkZGluZy4K
KyAgICAgIFRoaXMgaXMgZHVlIHRvIGFuIGludGVnZXIgb3ZlcmZsb3cgaWYgdGhlIHNpZ25hbGVk
IHBhZGRpbmcgZXhjZWVkcyAyXjMxLTEgYnl0ZXMKKyAgICAgICh0aGUgYWN0dWFsIHBhY2tldCBt
YXkgYmUgc21hbGxlcikuIFRoZSBjb2RlIGNhbiBiZSBmaXhlZCBieSBhcHBseWluZyB0aGUgZm9s
bG93aW5nCisgICAgICBjaGFuZ2VzIGF0IGxpbmUgNTk2IG9mIHNyYy9vcHVzX2RlY29kZXIuYzoK
KyAgICA8L3Q+Cis8ZmlndXJlPgorPGFydHdvcms+PCFbQ0RBVEFbCis8Q09ERSBCRUdJTlM+Cisg
ICAgICAgLyogUGFkZGluZyBmbGFnIGlzIGJpdCA2ICovCisgICAgICAgaWYgKGNoJjB4NDApCisg
ICAgICAgeworLSAgICAgICAgIGludCBwYWRkaW5nPTA7CisgICAgICAgICAgaW50IHA7CisgICAg
ICAgICAgZG8geworICAgICAgICAgICAgIGlmIChsZW48PTApCisgICAgICAgICAgICAgICAgcmV0
dXJuIE9QVVNfSU5WQUxJRF9QQUNLRVQ7CisgICAgICAgICAgICAgcCA9ICpkYXRhKys7CisgICAg
ICAgICAgICAgbGVuLS07CistICAgICAgICAgICAgcGFkZGluZyArPSBwPT0yNTUgPyAyNTQ6IHA7
CisrICAgICAgICAgICAgbGVuIC09IHA9PTI1NSA/IDI1NDogcDsKKyAgICAgICAgICB9IHdoaWxl
IChwPT0yNTUpOworLSAgICAgICAgIGxlbiAtPSBwYWRkaW5nOworICAgICAgIH0KKzxDT0RFIEVO
RFM+CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyAgICAgIDx0PlRoaXMgcGFja2V0IHBhcnNp
bmcgaXNzdWUgaXMgbGltaXRlZCB0byByZWFkaW5nIG1lbW9yeSB1cAorICAgICAgICAgdG8gYWJv
dXQgNjAga0IgYmV5b25kIHRoZSBjb21wcmVzc2VkIGJ1ZmZlci4gVGhpcyBjYW4gb25seSBiZSB0
cmlnZ2VyZWQKKyAgICAgICAgIGJ5IGEgY29tcHJlc3NlZCBwYWNrZXQgbW9yZSB0aGFuIGFib3V0
IDE2IE1CIGxvbmcsIHNvIGl0J3Mgbm90IGEgcHJvYmxlbQorICAgICAgICAgZm9yIFJUUC4gSW4g
dGhlb3J5LCBpdCBjb3VsZCBjcmFzaCBhIGZpbGUKKyAgICAgICAgIGRlY29kZXIgKGUuZy4gT3B1
cyBpbiBPZ2cpIGlmIHRoZSBtZW1vcnkganVzdCBhZnRlciB0aGUgaW5jb21pbmcgcGFja2V0Cisg
ICAgICAgICBpcyBvdXQtb2YtcmFuZ2UsIGJ1dCBvdXIgYXR0ZW1wdHMgdG8gdHJpZ2dlciBzdWNo
IGEgY3Jhc2ggaW4gYSBwcm9kdWN0aW9uCisgICAgICAgICBhcHBsaWNhdGlvbiBidWlsdCB1c2lu
ZyBhbiBhZmZlY3RlZCB2ZXJzaW9uIG9mIHRoZSBPcHVzIGRlY29kZXIgZmFpbGVkLjwvdD4KKyAg
ICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiBhbmNob3I9InJlc2FtcGxlciIgdGl0bGU9IlJl
c2FtcGxlciBidWZmZXIiPgorICAgICAgPHQ+VGhlIFNJTEsgcmVzYW1wbGVyIGhhZCB0aGUgZm9s
bG93aW5nIGlzc3VlczoKKyAgICAgICAgPGxpc3Qgc3R5bGU9Im51bWJlcnMiPgorICAgIDx0PlRo
ZSBjYWxscyB0byBtZW1jcHkoKSB3ZXJlIHVzaW5nIHNpemVvZihvcHVzX2ludDMyKSwgYnV0IHRo
ZSB0eXBlIG9mIHRoZQorICAgICAgICBsb2NhbCBidWZmZXIgd2FzIG9wdXNfaW50MTYuPC90Pgor
ICAgIDx0PkJlY2F1c2UgdGhlIHNpemUgd2FzIHdyb25nLCB0aGlzIHBvdGVudGlhbGx5IGFsbG93
ZWQgdGhlIHNvdXJjZQorICAgICAgICBhbmQgZGVzdGluYXRpb24gcmVnaW9ucyBvZiB0aGUgbWVt
Y3B5KCkgdG8gb3ZlcmxhcC4KKyAgICAgICAgICBXZSBiZWxpZXZlIHRoYXQgblNhbXBsZXNJbiAo
bnVtYmVyIG9mIGlucHV0IHNhbXBsZXMpIGlzIGF0IGxlYXN0IGZzX2luX2toWiAoc2FtcGxpbmcg
cmF0ZSBpbiBrSHopLAorICAgICAgICAgIHdoaWNoIGlzIGF0IGxlYXN0IDguCisgICAgICAgU2lu
Y2UgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiBpcyBvbmx5IDgsIHRoYXQgc2hvdWxkIG5vdCBiZSBh
IHByb2JsZW0gb25jZQorICAgICAgIHRoZSB0eXBlIHNpemUgaXMgZml4ZWQuPC90PgorICAgICAg
ICAgIDx0PlRoZSBzaXplIG9mIHRoZSBidWZmZXIgdXNlZCBSRVNBTVBMRVJfTUFYX0JBVENIX1NJ
WkVfSU4sIGJ1dCB0aGUKKyAgICAgICAgZGF0YSBzdG9yZWQgaW4gaXQgd2FzIGFjdHVhbGx5IHR3
aWNlIHRoZSBpbnB1dCBiYXRjaCBzaXplCisgICAgICAgIChuU2FtcGxlc0luJmx0OyZsdDsxKS48
L3Q+CisgICAgICA8L2xpc3Q+PC90PgorICAgICAgPHQ+CisgICAgICBUaGUgZmFjdCB0aGF0IHRo
ZSBjb2RlIG5ldmVyIHByb2R1Y2VkIGFueSBlcnJvciBpbiB0ZXN0aW5nIChpbmNsdWRpbmcgd2hl
biBydW4gdW5kZXIgdGhlCisgICAgICBWYWxncmluZCBtZW1vcnkgZGVidWdnZXIpLCBzdWdnZXN0
cyB0aGF0IGluIHByYWN0aWNlCisgICAgIHRoZSBiYXRjaCBzaXplcyBhcmUgcmVhc29uYWJsZSBl
bm91Z2ggdGhhdCBub25lIG9mIHRoZSBpc3N1ZXMgYWJvdmUKKyAgICAgd2FzIGV2ZXIgYSBwcm9i
bGVtLiBIb3dldmVyLCB0aGUgYXV0aG9ycyBrbm93IG9mIG5vIG9idmlvdXMgYXBwcm9hY2ggdG8g
cHJvdmluZyB0aGF0LgorICAgIDwvdD4KKyAgICA8dD5UaGUgY29kZSBjYW4gYmUgZml4ZWQgYnkg
YXBwbHlpbmcgdGhlIGZvbGxvd2luZyBjaGFuZ2VzIHRvIGxpbmUgNzggb2Ygc2lsay9yZXNhbXBs
ZXJfcHJpdmF0ZV9JSVJfRklSLmM6CisgICAgPC90PgorPGZpZ3VyZT4KKzxhcnR3b3JrPjwhW0NE
QVRBWworPENPREUgQkVHSU5TPgorICkKKyB7CisgICAgIHNpbGtfcmVzYW1wbGVyX3N0YXRlX3N0
cnVjdCAqUyA9IFwKKyhzaWxrX3Jlc2FtcGxlcl9zdGF0ZV9zdHJ1Y3QgKilTUzsKKyAgICAgb3B1
c19pbnQzMiBuU2FtcGxlc0luOworICAgICBvcHVzX2ludDMyIG1heF9pbmRleF9RMTYsIGluZGV4
X2luY3JlbWVudF9RMTY7CistICAgIG9wdXNfaW50MTYgYnVmWyBSRVNBTVBMRVJfTUFYX0JBVENI
X1NJWkVfSU4gKyBcCitSRVNBTVBMRVJfT1JERVJfRklSXzEyIF07CisrICAgIG9wdXNfaW50MTYg
YnVmWyAyKlJFU0FNUExFUl9NQVhfQkFUQ0hfU0laRV9JTiArIFwKK1JFU0FNUExFUl9PUkRFUl9G
SVJfMTIgXTsKKyAKKyAgICAgLyogQ29weSBidWZmZXJlZCBzYW1wbGVzIHRvIHN0YXJ0IG9mIGJ1
ZmZlciAqLworLSAgICBzaWxrX21lbWNweSggYnVmLCBTLT5zRklSLCBSRVNBTVBMRVJfT1JERVJf
RklSXzEyIFwKKyogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKKysgICAgc2lsa19tZW1jcHkoIGJ1
ZiwgUy0+c0ZJUiwgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiBcCisqIHNpemVvZiggb3B1c19pbnQx
NiApICk7CisgCisgICAgIC8qIEl0ZXJhdGUgb3ZlciBibG9ja3Mgb2YgZnJhbWVTaXplSW4gaW5w
dXQgc2FtcGxlcyAqLworICAgICBpbmRleF9pbmNyZW1lbnRfUTE2ID0gUy0+aW52UmF0aW9fUTE2
OworICAgICB3aGlsZSggMSApIHsKKyAgICAgICAgIG5TYW1wbGVzSW4gPSBzaWxrX21pbiggaW5M
ZW4sIFMtPmJhdGNoU2l6ZSApOworIAorICAgICAgICAgLyogVXBzYW1wbGUgMnggKi8KKyAgICAg
ICAgIHNpbGtfcmVzYW1wbGVyX3ByaXZhdGVfdXAyX0hRKCBTLT5zSUlSLCAmYnVmWyBcCitSRVNB
TVBMRVJfT1JERVJfRklSXzEyIF0sIGluLCBuU2FtcGxlc0luICk7CisgCisgICAgICAgICBtYXhf
aW5kZXhfUTE2ID0gc2lsa19MU0hJRlQzMiggblNhbXBsZXNJbiwgMTYgKyAxIFwKKyk7ICAgICAg
ICAgLyogKyAxIGJlY2F1c2UgMnggdXBzYW1wbGluZyAqLworICAgICAgICAgb3V0ID0gc2lsa19y
ZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSX0lOVEVSUE9MKCBvdXQsIFwKK2J1ZiwgbWF4X2luZGV4
X1ExNiwgaW5kZXhfaW5jcmVtZW50X1ExNiApOworICAgICAgICAgaW4gKz0gblNhbXBsZXNJbjsK
KyAgICAgICAgIGluTGVuIC09IG5TYW1wbGVzSW47CisgCisgICAgICAgICBpZiggaW5MZW4gPiAw
ICkgeworICAgICAgICAgICAgIC8qIE1vcmUgaXRlcmF0aW9ucyB0byBkbzsgY29weSBsYXN0IHBh
cnQgb2YgXAorZmlsdGVyZWQgc2lnbmFsIHRvIGJlZ2lubmluZyBvZiBidWZmZXIgKi8KKy0gICAg
ICAgICAgICBzaWxrX21lbWNweSggYnVmLCAmYnVmWyBuU2FtcGxlc0luIDw8IDEgXSwgXAorUkVT
QU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQzMiApICk7CisrICAgICAgICAg
ICAgc2lsa19tZW1tb3ZlKCBidWYsICZidWZbIG5TYW1wbGVzSW4gPDwgMSBdLCBcCitSRVNBTVBM
RVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKKyAgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICB9CisgICAgIH0KKyAKKyAgICAgLyog
Q29weSBsYXN0IHBhcnQgb2YgZmlsdGVyZWQgc2lnbmFsIHRvIHRoZSBzdGF0ZSBmb3IgXAordGhl
IG5leHQgY2FsbCAqLworLSAgICBzaWxrX21lbWNweSggUy0+c0ZJUiwgJmJ1ZlsgblNhbXBsZXNJ
biA8PCAxIF0sIFwKK1JFU0FNUExFUl9PUkRFUl9GSVJfMTIgKiBzaXplb2YoIG9wdXNfaW50MzIg
KSApOworKyAgICBzaWxrX21lbWNweSggUy0+c0ZJUiwgJmJ1ZlsgblNhbXBsZXNJbiA8PCAxIF0s
IFwKK1JFU0FNUExFUl9PUkRFUl9GSVJfMTIgKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOworIH0K
KzxDT0RFIEVORFM+CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyAgICA8L3NlY3Rpb24+CisK
KyAgICA8c2VjdGlvbiB0aXRsZT0iSW50ZWdlciB3cmFwLWFyb3VuZCBpbiBpbnZlcnNlIGdhaW4g
Y29tcHV0YXRpb24iPgorICAgICAgPHQ+CisgICAgICAgIEl0IHdhcyBkaXNjb3ZlcmVkIHRocm91
Z2ggZGVjb2RlciBmdXp6aW5nIHRoYXQgc29tZSBiaXRzdHJlYW1zIGNvdWxkIHByb2R1Y2UKKyAg
ICAgICAgaW50ZWdlciB2YWx1ZXMgZXhjZWVkaW5nIDMyLWJpdHMgaW4gTFBDX2ludmVyc2VfcHJl
ZF9nYWluX1FBKCksIGNhdXNpbmcKKyAgICAgICAgYSB3cmFwLWFyb3VuZC4gQWx0aG91Z2ggdGhl
IGVycm9yIGlzIGhhcm1sZXNzIGluIHByYWN0aWNlLCB0aGUgQyBzdGFuZGFyZCBjb25zaWRlcnMK
KyAgICAgICAgdGhlIGJlaGF2aW9yIGFzIHVuZGVmaW5lZCwgc28gdGhlIGZvbGxvd2luZyBwYXRj
aCB0byBsaW5lIDg3IG9mIHNpbGsvTFBDX2ludl9wcmVkX2dhaW4uYworICAgICAgICBkZXRlY3Rz
IHZhbHVlcyB0aGF0IGRvIG5vdCBmaXQgaW4gYSAzMi1iaXQgaW50ZWdlciBhbmQgY29uc2lkZXJz
IHRoZSBjb3JyZXNwb25kaW5nIGZpbHRlcnMgdW5zdGFibGU6CisgICAgICA8L3Q+Cis8ZmlndXJl
PgorPGFydHdvcms+PCFbQ0RBVEFbCis8Q09ERSBCRUdJTlM+CisgICAgICAgICAvKiBVcGRhdGUg
QVIgY29lZmZpY2llbnQgKi8KKyAgICAgICAgIGZvciggbiA9IDA7IG4gPCBrOyBuKysgKSB7Cist
ICAgICAgICAgICAgdG1wX1FBID0gQW9sZF9RQVsgbiBdIC0gTVVMMzJfRlJBQ19RKCBcCitBb2xk
X1FBWyBrIC0gbiAtIDEgXSwgcmNfUTMxLCAzMSApOworLSAgICAgICAgICAgIEFuZXdfUUFbIG4g
XSA9IE1VTDMyX0ZSQUNfUSggdG1wX1FBLCByY19tdWx0MiAsIG11bHQyUSApOworKyAgICAgICAg
ICAgIG9wdXNfaW50NjQgdG1wNjQ7CisrICAgICAgICAgICAgdG1wX1FBID0gc2lsa19TVUJfU0FU
MzIoIEFvbGRfUUFbIG4gXSwgTVVMMzJfRlJBQ19RKCBcCitBb2xkX1FBWyBrIC0gbiAtIDEgXSwg
cmNfUTMxLCAzMSApICk7CisrICAgICAgICAgICAgdG1wNjQgPSBzaWxrX1JTSElGVF9ST1VORDY0
KCBzaWxrX1NNVUxMKCB0bXBfUUEsIFwKK3JjX211bHQyICksIG11bHQyUSk7CisrICAgICAgICAg
ICAgaWYoIHRtcDY0ID4gc2lsa19pbnQzMl9NQVggfHwgdG1wNjQgPCBzaWxrX2ludDMyX01JTiAp
IHsKKysgICAgICAgICAgICAgICByZXR1cm4gMDsKKysgICAgICAgICAgICB9CisrICAgICAgICAg
ICAgQW5ld19RQVsgbiBdID0gKCBvcHVzX2ludDMyICl0bXA2NDsKKyAgICAgICAgIH0KKzxDT0RF
IEVORFM+CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8
c2VjdGlvbiB0aXRsZT0iSW50ZWdlciB3cmFwLWFyb3VuZCBpbiBMU0YgZGVjb2RpbmciIGFuY2hv
cj0ibHNmX292ZXJmbG93Ij4KKyAgICAgIDx0PgorICAgICAgICBJdCB3YXMgZGlzY292ZXJlZCAt
LSBhbHNvIGZyb20gZGVjb2RlciBmdXp6aW5nIC0tIHRoYXQgYW4gaW50ZWdlciB3cmFwLWFyb3Vu
ZCBjb3VsZAorICAgICAgICBvY2N1ciB3aGVuIGRlY29kaW5nIGxpbmUgc3BlY3RyYWwgZnJlcXVl
bmN5IGNvZWZmaWNpZW50cyBmcm9tIGV4dHJlbWUgYml0c3RyZWFtcy4KKyAgICAgICAgVGhlIGVu
ZCByZXN1bHQgb2YgdGhlIHdyYXAtYXJvdW5kIGlzIGFuIGlsbGVnYWwgcmVhZCBhY2Nlc3Mgb24g
dGhlIHN0YWNrLCB3aGljaAorICAgICAgICB0aGUgYXV0aG9ycyBkbyBub3QgYmVsaWV2ZSBpcyBl
eHBsb2l0YWJsZSBidXQgc2hvdWxkIG5vbmV0aGVsZXNzIGJlIGZpeGVkLiBUaGUgZm9sbG93aW5n
CisgICAgICAgIHBhdGNoIHRvIGxpbmUgMTM3IG9mIHNpbGsvTkxTRl9zdGFiaWxpemUuYyBwcmV2
ZW50cyB0aGUgcHJvYmxlbToKKyAgICAgIDwvdD4KKzxmaWd1cmU+Cis8YXJ0d29yaz48IVtDREFU
QVsKKzxDT0RFIEJFR0lOUz4KKyAgICAgICAgICAgLyogS2VlcCBkZWx0YV9taW4gZGlzdGFuY2Ug
YmV0d2VlbiB0aGUgTkxTRnMgKi8KKyAgICAgICAgIGZvciggaSA9IDE7IGkgPCBMOyBpKysgKQor
LSAgICAgICAgICAgIE5MU0ZfUTE1W2ldID0gc2lsa19tYXhfaW50KCBOTFNGX1ExNVtpXSwgXAor
TkxTRl9RMTVbaS0xXSArIE5EZWx0YU1pbl9RMTVbaV0gKTsKKysgICAgICAgICAgICBOTFNGX1Ex
NVtpXSA9IHNpbGtfbWF4X2ludCggTkxTRl9RMTVbaV0sIFwKK3NpbGtfQUREX1NBVDE2KCBOTFNG
X1ExNVtpLTFdLCBORGVsdGFNaW5fUTE1W2ldICkgKTsKKyAKKyAgICAgICAgIC8qIExhc3QgTkxT
RiBzaG91bGQgYmUgbm8gaGlnaGVyIHRoYW4gMSAtIE5EZWx0YU1pbltMXSAqLworPENPREUgRU5E
Uz4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCisgICAgPC9zZWN0aW9uPgorCisgICAgPHNl
Y3Rpb24gdGl0bGU9IkNhcCBvbiBCYW5kIEVuZXJneSI+CisgICAgICA8dD5PbiBleHRyZW1lIGJp
dC1zdHJlYW1zLCBpdCBpcyBwb3NzaWJsZSBmb3IgbG9nLWRvbWFpbiBiYW5kIGVuZXJneSBsZXZl
bHMKKyAgICAgICAgdG8gZXhjZWVkIHRoZSBtYXhpbXVtIHNpbmdsZS1wcmVjaXNpb24gZmxvYXRp
bmcgcG9pbnQgdmFsdWUgb25jZSBjb252ZXJ0ZWQKKyAgICAgICAgdG8gYSBsaW5lYXIgc2NhbGUu
IFRoaXMgd291bGQgbGF0ZXIgY2F1c2UgdGhlIGRlY29kZWQgdmFsdWVzIHRvIGJlIE5hTiAobm90
IGEgbnVtYmVyKSwKKyAgICAgICAgcG9zc2libHkgY2F1c2luZyBwcm9ibGVtcyBpbiB0aGUgc29m
dHdhcmUgdXNpbmcgdGhlIFBDTSB2YWx1ZXMuIFRoaXMgY2FuIGJlCisgICAgICAgIGF2b2lkZWQg
d2l0aCB0aGUgZm9sbG93aW5nIHBhdGNoIHRvIGxpbmUgNTUyIG9mIGNlbHQvcXVhbnRfYmFuZHMu
YzoKKyAgICAgIDwvdD4KKzxmaWd1cmU+Cis8YXJ0d29yaz48IVtDREFUQVsKKzxDT0RFIEJFR0lO
Uz4KKyAgICAgICB7CisgICAgICAgICAgb3B1c192YWwxNiBsZyA9IEFERDE2KG9sZEVCYW5kc1tp
K2MqbS0+bmJFQmFuZHNdLAorICAgICAgICAgICAgICAgICAgICAgICAgICBTSEwxNigob3B1c192
YWwxNillTWVhbnNbaV0sNikpOworKyAgICAgICAgIGxnID0gTUlOMzIoUUNPTlNUMzIoMzIuZiwg
MTYpLCBsZyk7CisgICAgICAgICAgZUJhbmRzW2krYyptLT5uYkVCYW5kc10gPSBQU0hSMzIoY2Vs
dF9leHAyKGxnKSw0KTsKKyAgICAgICB9CisgICAgICAgZm9yICg7aTxtLT5uYkVCYW5kcztpKysp
Cis8Q09ERSBFTkRTPgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisgICAgPC9zZWN0aW9uPgor
CisgICAgPHNlY3Rpb24gdGl0bGU9Ikh5YnJpZCBGb2xkaW5nIiBhbmNob3I9ImZvbGRpbmciPgor
ICAgICAgPHQ+V2hlbiBlbmNvZGluZyBpbiBoeWJyaWQgbW9kZSBhdCBsb3cgYml0cmF0ZSwgd2Ug
c29tZXRpbWVzIG9ubHkgaGF2ZQorICAgICAgICBlbm91Z2ggYml0cyB0byBjb2RlIGEgc2luZ2xl
IENFTFQgYmFuZCAoOCAtIDkuNiBrSHopLiBXaGVuIHRoYXQgaGFwcGVucywKKyAgICAgICAgdGhl
IHNlY29uZCBiYW5kIChDRUxUIGJhbmQgMTgsIGZyb20gOS42IHRvIDEyIGtIeikgY2Fubm90IHVz
ZSBmb2xkaW5nCisgICAgICAgIGJlY2F1c2UgaXQgaXMgd2lkZXIgdGhhbiB0aGUgYW1vdW50IGFs
cmVhZHkgY29kZWQsIGFuZCBmYWxscyBiYWNrIHRvCisgICAgICAgIHdoaXRlIG5vaXNlLiBCZWNh
dXNlIGl0IGNhbiBhbHNvIGhhcHBlbiBvbiB0cmFuc2llbnRzIChlLmcuIHN0b3BzKSwgaXQKKyAg
ICAgICAgY2FuIGNhdXNlIGF1ZGlibGUgcHJlLWVjaG8uCisgICAgICA8L3Q+CisgICAgICA8dD4K
KyAgICAgICAgVG8gYWRkcmVzcyB0aGUgaXNzdWUsIHdlIGNoYW5nZSB0aGUgZm9sZGluZyBiZWhh
dmlvciBzbyB0aGF0IGl0IGlzCisgICAgICAgIG5ldmVyIGZvcmNlZCB0byBmYWxsIGJhY2sgdG8g
TENHIGR1ZSB0byB0aGUgZmlyc3QgYmFuZCBub3QgY29udGFpbmluZworICAgICAgICBlbm91Z2gg
Y29lZmZpY2llbnRzIHRvIGZvbGQgb250byB0aGUgc2Vjb25kIGJhbmQuIFRoaXMKKyAgICAgICAg
aXMgYWNoaWV2ZWQgYnkgc2ltcGx5IHJlcGVhdGluZyBwYXJ0IG9mIHRoZSBmaXJzdCBiYW5kIGlu
IHRoZSBmb2xkaW5nCisgICAgICAgIG9mIHRoZSBzZWNvbmQgYmFuZC4gVGhpcyBjaGFuZ2VzIHRo
ZSBjb2RlIGluIGNlbHQvYmFuZHMuYyBhcm91bmQgbGluZSAxMjM3OgorICAgICAgPC90PgorPGZp
Z3VyZT4KKzxhcnR3b3JrPjwhW0NEQVRBWworPENPREUgQkVHSU5TPgorICAgICAgICAgIGIgPSAw
OworICAgICAgIH0KKyAKKy0gICAgICBpZiAocmVzeW50aCAmJiBNKmVCYW5kc1tpXS1OID49IE0q
ZUJhbmRzW3N0YXJ0XSAmJiBcCisodXBkYXRlX2xvd2JhbmQgfHwgbG93YmFuZF9vZmZzZXQ9PTAp
KQorKyAgICAgIGlmIChyZXN5bnRoICYmIChNKmVCYW5kc1tpXS1OID49IE0qZUJhbmRzW3N0YXJ0
XSB8fCBcCitpPT1zdGFydCsxKSAmJiAodXBkYXRlX2xvd2JhbmQgfHwgbG93YmFuZF9vZmZzZXQ9
PTApKQorICAgICAgICAgICAgIGxvd2JhbmRfb2Zmc2V0ID0gaTsKKyAKKysgICAgICBpZiAoaSA9
PSBzdGFydCsxKQorKyAgICAgIHsKKysgICAgICAgICBpbnQgbjEsIG4yOworKyAgICAgICAgIGlu
dCBvZmZzZXQ7CisrICAgICAgICAgbjEgPSBNKihlQmFuZHNbc3RhcnQrMV0tZUJhbmRzW3N0YXJ0
XSk7CisrICAgICAgICAgbjIgPSBNKihlQmFuZHNbc3RhcnQrMl0tZUJhbmRzW3N0YXJ0KzFdKTsK
KysgICAgICAgICBvZmZzZXQgPSBNKmVCYW5kc1tzdGFydF07CisrICAgICAgICAgLyogRHVwbGlj
YXRlIGVub3VnaCBvZiB0aGUgZmlyc3QgYmFuZCBmb2xkaW5nIGRhdGEgdG8gXAorYmUgYWJsZSB0
byBmb2xkIHRoZSBzZWNvbmQgYmFuZC4KKysgICAgICAgICAgICBDb3BpZXMgbm8gZGF0YSBmb3Ig
Q0VMVC1vbmx5IG1vZGUuICovCisrICAgICAgICAgT1BVU19DT1BZKCZub3JtW29mZnNldCtuMV0s
ICZub3JtW29mZnNldCsyKm4xIC0gbjJdLCBuMi1uMSk7CisrICAgICAgICAgaWYgKEM9PTIpCisr
ICAgICAgICAgICAgT1BVU19DT1BZKCZub3JtMltvZmZzZXQrbjFdLCAmbm9ybTJbb2Zmc2V0KzIq
bjEgLSBuMl0sIFwKK24yLW4xKTsKKysgICAgICB9CisrCisgICAgICAgdGZfY2hhbmdlID0gdGZf
cmVzW2ldOworICAgICAgIGlmIChpPj1tLT5lZmZFQmFuZHMpCisgICAgICAgeworPENPREUgRU5E
Uz4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCisgICAgICA8dD4KKyAgICAgICBhcyB3ZWxs
IGFzIGxpbmUgMTI2MDoKKyAgICAgIDwvdD4KKworPGZpZ3VyZT4KKzxhcnR3b3JrPjwhW0NEQVRB
WworPENPREUgQkVHSU5TPgorICAgICAgICAgIGZvbGRfc3RhcnQgPSBsb3diYW5kX29mZnNldDsK
KyAgICAgICAgICB3aGlsZShNKmVCYW5kc1stLWZvbGRfc3RhcnRdID4gZWZmZWN0aXZlX2xvd2Jh
bmQpOworICAgICAgICAgIGZvbGRfZW5kID0gbG93YmFuZF9vZmZzZXQtMTsKKy0gICAgICAgICB3
aGlsZShNKmVCYW5kc1srK2ZvbGRfZW5kXSA8IGVmZmVjdGl2ZV9sb3diYW5kK04pOworKyAgICAg
ICAgIHdoaWxlKCsrZm9sZF9lbmQgPCBpICYmIE0qZUJhbmRzW2ZvbGRfZW5kXSA8IFwKK2VmZmVj
dGl2ZV9sb3diYW5kK04pOworICAgICAgICAgIHhfY20gPSB5X2NtID0gMDsKKyAgICAgICAgICBm
b2xkX2kgPSBmb2xkX3N0YXJ0OyBkbyB7CisgICAgICAgICAgICB4X2NtIHw9IGNvbGxhcHNlX21h
c2tzW2ZvbGRfaSpDKzBdOworCis8Q09ERSBFTkRTPgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+
CisgICAgICA8dD4KKyAgICAgICAgVGhlIGZpeCBkb2VzIG5vdCBpbXBhY3QgY29tcGF0aWJpbGl0
eSwgYmVjYXVzZSB0aGUgaW1wcm92ZW1lbnQgZG9lcworICAgICAgICBub3QgZGVwZW5kIG9uIHRo
ZSBlbmNvZGVyIGRvaW5nIGFueXRoaW5nIHNwZWNpYWwuIFRoZXJlIGlzIGFsc28gbm8KKyAgICAg
ICAgcmVhc29uYWJsZSB3YXkgZm9yIGFuIGVuY29kZXIgdG8gdXNlIHRoZSBvcmlnaW5hbCBiZWhh
dmlvciB0bworICAgICAgICBpbXByb3ZlIHF1YWxpdHkgb3ZlciB0aGUgcHJvcG9zZWQgY2hhbmdl
LgorICAgICAgPC90PgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIHRpdGxlPSJEb3du
bWl4IHRvIE1vbm8iIGFuY2hvcj0ic3RlcmVvIj4KKyAgICAgIDx0PlRoZSBsYXN0IGlzc3VlIGlz
IG5vdCBzdHJpY3RseSBhIGJ1ZywgYnV0IGl0IGlzIGFuIGlzc3VlIHRoYXQgaGFzIGJlZW4gcmVw
b3J0ZWQKKyAgICAgIHdoZW4gZG93bm1peGluZyBhbiBPcHVzIGRlY29kZWQgc3RyZWFtIHRvIG1v
bm8sIHdoZXRoZXIgdGhpcyBpcyBkb25lIGluc2lkZSB0aGUgZGVjb2RlcgorICAgICAgb3IgYXMg
YSBwb3N0LXByb2Nlc3Npbmcgc3RlcCBvbiB0aGUgc3RlcmVvIGRlY29kZXIgb3V0cHV0LiBPcHVz
IGludGVuc2l0eSBzdGVyZW8gYWxsb3dzCisgICAgICBvcHRpb25hbGx5IGNvZGluZyB0aGUgdHdv
IGNoYW5uZWxzIDE4MC1kZWdyZWVzIG91dCBvZiBwaGFzZSBvbiBhIHBlci1iYW5kIGJhc2lzLgor
ICAgICAgVGhpcyBwcm92aWRlcyBiZXR0ZXIgc3RlcmVvIHF1YWxpdHkgdGhhbiBmb3JjaW5nIHRo
ZSB0d28gY2hhbm5lbHMgdG8gYmUgaW4gcGhhc2UsCisgICAgICBidXQgd2hlbiB0aGUgb3V0cHV0
IGlzIGRvd25taXhlZCB0byBtb25vLCB0aGUgZW5lcmd5IGluIHRoZSBhZmZlY3RlZCBiYW5kcyBp
cyBjYW5jZWxsZWQKKyAgICAgIHNvbWV0aW1lcyByZXN1bHRpbmcgaW4gYXVkaWJsZSBhcnRlZmFj
dHMuCisgICAgICA8L3Q+CisgICAgICA8dD5BcyBhIHdvcmstYXJvdW5kIGZvciB0aGlzIGlzc3Vl
LCB0aGUgZGVjb2RlciBNQVkgY2hvb3NlIG5vdCB0byBhcHBseSB0aGUgMTgwLWRlZ3JlZQorICAg
ICAgcGhhc2Ugc2hpZnQgd2hlbiB0aGUgb3V0cHV0IGlzIG1lYW50IHRvIGJlIGRvd25taXhlZCAo
aW5zaWRlIG9yCisgICAgICBvdXRzaWRlIG9mIHRoZSBkZWNvZGVyKS4KKyAgICAgIDwvdD4KKyAg
ICA8L3NlY3Rpb24+CisKKworICAgIDxzZWN0aW9uIHRpdGxlPSJOZXcgVGVzdCBWZWN0b3JzIj4K
KyAgICAgIDx0PkNoYW5nZXMgaW4gPHhyZWYgdGFyZ2V0PSJmb2xkaW5nIi8+IGFuZCA8eHJlZiB0
YXJnZXQ9InN0ZXJlbyIvPiBoYXZlCisgICAgICAgIHN1ZmZpY2llbnQgaW1wYWN0IG9uIHRoZSB0
ZXN0dmVjdG9ycyB0byBtYWtlIHRoZW0gZmFpbC4gRm9yIHRoaXMgcmVhc29uLAorICAgICAgICB0
aGlzIGRvY3VtZW50IGFsc28gdXBkYXRlcyB0aGUgT3B1cyB0ZXN0IHZlY3RvcnMuIFRoZSBuZXcg
dGVzdCB2ZWN0b3JzIG5vdworICAgICAgICBpbmNsdWRlIHR3byBkZWNvZGVkIG91dHB1dHMgZm9y
IHRoZSBzYW1lIGJpdHN0cmVhbS4gVGhlIG91dHB1dHMgd2l0aAorICAgICAgICBzdWZmaXggJ20n
IGRvIG5vdCBhcHBseSB0aGUgQ0VMVCAxODAtZGVncmVlIHBoYXNlIHNoaWZ0IGFzIGFsbG93ZWQg
aW4KKyAgICAgICAgPHhyZWYgdGFyZ2V0PSJzdGVyZW8iLz4sIHdoaWxlIHRoZSBvdXRwdXRzIHdp
dGhvdXQgdGhlIHN1ZmZpeCBkby4gQW4KKyAgICAgICAgaW1wbGVtZW50YXRpb24gaXMgY29tcGxp
YW50IGFzIGxvbmcgYXMgaXQgcGFzc2VzIGVpdGhlciBzZXQgb2YgdmVjdG9ycy4KKyAgICAgIDwv
dD4KKyAgICAgIDx0PgorICAgICAgICBJbiBhZGRpdGlvbiwgYW55IE9wdXMgaW1wbGVtZW50YXRp
b24KKyAgICAgICAgdGhhdCBwYXNzZXMgdGhlIG9yaWdpbmFsIHRlc3QgdmVjdG9ycyBmcm9tIDx4
cmVmIHRhcmdldD0iUkZDNjcxNiI+UkZDIDY3MTY8L3hyZWY+CisgICAgICAgIGlzIHN0aWxsIGNv
bXBsaWFudCB3aXRoIHRoZSBPcHVzIHNwZWNpZmljYXRpb24uIEhvd2V2ZXIsIG5ld2VyIGltcGxl
bWVudGF0aW9ucworICAgICAgICBTSE9VTEQgYmUgYmFzZWQgb24gdGhlIG5ldyB0ZXN0IHZlY3Rv
cnMgcmF0aGVyIHRoYW4gdGhlIG9sZCBvbmVzLgorICAgICAgPC90PgorICAgICAgPHQ+VGhlIG5l
dyB0ZXN0IHZlY3RvcnMgYXJlIGxvY2F0ZWQgYXQKKyAgICAgICAgPGVyZWYgdGFyZ2V0PSJodHRw
czovL3d3dy5pZXRmLm9yZy9wcm9jZWVkaW5ncy85OC9zbGlkZXMvbWF0ZXJpYWxzLTk4LWNvZGVj
LW9wdXMtbmV3dmVjdG9ycy0wMC50YXIuZ3oiLz4uCisgICAgICAgIFRoZSBTSEExIGhhc2ggb2Yg
dGhlIHRlc3QgdmVjdG9ycyBhcmU6Cis8ZmlndXJlPgorPGFydHdvcms+Cis8IVtDREFUQVsKK2U0
OWIyODYyY2VlYzczMjQ3OTBlZDgwMTllYjk3NDQ1OTZkNWJlMDEgIHRlc3R2ZWN0b3IwMS5iaXQK
K2I4MDk3OTVhZTFiY2Q2MDYwNDlkNzZkZTRhZDI0MjM2MjU3MTM1ZTAgIHRlc3R2ZWN0b3IwMi5i
aXQKK2UwYzRlY2FlYWI0NGQzNWEyZjViNjU3NWNkOTk2ODQ4ZTVlZTJhY2MgIHRlc3R2ZWN0b3Iw
My5iaXQKK2EwZjg3MGNiZTE0ZWJiNzFmYTkwNjZlZjNlZTk2ZTU5YzlhNzUxODcgIHRlc3R2ZWN0
b3IwNC5iaXQKKzliM2Q5MmI0OGI5NjVkZmU5ZWRmN2I4YTg1ZWRkNDMwOWY4Y2Y3YzggIHRlc3R2
ZWN0b3IwNS5iaXQKKzI4ZTY2NzY5YWIxN2UxN2Y3Mjg3NTI4M2MxNGIxOTY5MGNiYzRlNTcgIHRl
c3R2ZWN0b3IwNi5iaXQKK2JhY2Y0NjdiZTMyMTVmYzdlYzI4OGYyOWUyNDc3ZGUxMTkyOTQ3YTYg
IHRlc3R2ZWN0b3IwNy5iaXQKK2RkYmUwOGI2ODhiYmY5MzQwNzFmMzg5M2NkMDAzMGNlNDhkYmEx
MmYgIHRlc3R2ZWN0b3IwOC5iaXQKKzM5MzJkOWQ2MTk0NGRhYjEyMDE2NDViOGVlYWFkNTk1ZDU3
MDVlY2IgIHRlc3R2ZWN0b3IwOS5iaXQKKzUyMWViMmExZTBjYzljMzFiOGI3NDA2NzMzMDdjMmQz
YjEwYzE5MDAgIHRlc3R2ZWN0b3IxMC5iaXQKKzZiYzhmMzE0NmZjYjk2NDUwYzkwMWIxNmMzZDQ2
NGNjZGY0ZDVkOTYgIHRlc3R2ZWN0b3IxMS5iaXQKKzMzOGMzZjFiNGI5NzIyNmJjNjBiYzQxMDM4
YmVjYmM2ZGUwNmIyOGYgIHRlc3R2ZWN0b3IxMi5iaXQKK2Y1ZWY5Mzg4NGRhNmE4MTRkMzExMDI3
OTE4ZTlhZmM2ZjJlNWMyYzggIHRlc3R2ZWN0b3IwMS5kZWMKKzQ4YWMxZmYxOTk1MjUwYTc1NmUx
ZTE3YmQzMmFjZWZhOGNkMmI4MjAgIHRlc3R2ZWN0b3IwMi5kZWMKK2QxNTU2N2U5MTlkYjJkMGU4
MTg3MjcwOTJjMGFmOGRkOWRmMjNjOTUgIHRlc3R2ZWN0b3IwMy5kZWMKKzEyNDlkZDI4ZjViZDFl
MzlhNjZmZDZkOTk0NDlkY2E3YTgzMTYzNDIgIHRlc3R2ZWN0b3IwNC5kZWMKK2I4NTY3NWQ4MWRl
ZWY4NGExMTJjNDY2Y2RmZjNiN2FhYTFkMmZjNzYgIHRlc3R2ZWN0b3IwNS5kZWMKKzU1ZjBiMTkx
ZTkwYmZhNmY5OGI1MGQwMWE2NGI0NDI1NWNiNDgxM2UgIHRlc3R2ZWN0b3IwNi5kZWMKKzYxZThi
MzU3YWIwOTBiMTgwMWVlYjU3OGEyOGE2YWU5MzVlMjViN2IgIHRlc3R2ZWN0b3IwNy5kZWMKK2E1
ODUzOWVlNTMyMTQ1M2IyZGRmNGMwZjI1MDBlODU2YjM5NjY4NjIgIHRlc3R2ZWN0b3IwOC5kZWMK
K2JiOTZhYWQyY2RlMTg4NTU1ODYyYjdiYmIzYWY2MTMzODUxZWY4ZjQgIHRlc3R2ZWN0b3IwOS5k
ZWMKKzFiNmNkZjA0MTNhYzk5NjViMTYxODRiMWJlYTEyOWI1YzBiMmEzN2EgIHRlc3R2ZWN0b3Ix
MC5kZWMKK2IxZmZmNzJiNzQ2NjZlMzAyNzgwMWIyOWRiYzQ4YjMxZjgwZGVlMGQgIHRlc3R2ZWN0
b3IxMS5kZWMKKzk4ZTA5YmJhZmVkMzI5ZTM0MWMzYjQwNTJlOWM0YmE1ZmM4M2Y5YjEgIHRlc3R2
ZWN0b3IxMi5kZWMKKzFlN2Q5ODRlYTNmYmIxNmJhOTk4YWVhNzYxZjQ4OTNmYmRiMzAxNTcgIHRl
c3R2ZWN0b3IwMW0uZGVjCis0OGFjMWZmMTk5NTI1MGE3NTZlMWUxN2JkMzJhY2VmYThjZDJiODIw
ICB0ZXN0dmVjdG9yMDJtLmRlYworZDE1NTY3ZTkxOWRiMmQwZTgxODcyNzA5MmMwYWY4ZGQ5ZGYy
M2M5NSAgdGVzdHZlY3RvcjAzbS5kZWMKKzEyNDlkZDI4ZjViZDFlMzlhNjZmZDZkOTk0NDlkY2E3
YTgzMTYzNDIgIHRlc3R2ZWN0b3IwNG0uZGVjCitkNzBiMGJhZDQzMWU3ZDQ2M2JjM2RhNDliZDJk
NDlmMWM2ZDBhNTMwICB0ZXN0dmVjdG9yMDVtLmRlYworNmFjMTY0OGMzMTc0Yzk1ZmFkYTU2NTE2
MWE2Yzc4YmRiZTU5Yzc3ZCAgdGVzdHZlY3RvcjA2bS5kZWMKK2ZjNWUyZjcwOTY5MzczODMyNGZi
NGM4YmRjMGRhZDZkZGEwNGU3MTMgIHRlc3R2ZWN0b3IwN20uZGVjCithYWQyYmEzOTdiZjFiNmEx
OGU4ZTA5YjUwZTRiMTk2MjdkNDc5ZjAwICB0ZXN0dmVjdG9yMDhtLmRlYworNmZlYjdhN2I5ZDdj
ZGMxMzgzYmFmOGQ1NzM5ZTJhNTE0YmQwYmEwOCAgdGVzdHZlY3RvcjA5bS5kZWMKKzFiNmNkZjA0
MTNhYzk5NjViMTYxODRiMWJlYTEyOWI1YzBiMmEzN2EgIHRlc3R2ZWN0b3IxMG0uZGVjCitmZDNk
M2E3YjBkZmJkYWI5OGQzN2VkOWFhMDRiNjU5YjlmZWZiZDE4ICB0ZXN0dmVjdG9yMTFtLmRlYwor
OThlMDliYmFmZWQzMjllMzQxYzNiNDA1MmU5YzRiYTVmYzgzZjliMSAgdGVzdHZlY3RvcjEybS5k
ZWMKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+CisgICAgICBOb3RlIHRoYXQgdGhlIGRlY29k
ZXIgaW5wdXQgYml0c3RyZWFtIGZpbGVzICguYml0KSBhcmUgdW5jaGFuZ2VkLgorICAgICAgPC90
PgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIGFuY2hvcj0ic2VjdXJpdHkiIHRpdGxl
PSJTZWN1cml0eSBDb25zaWRlcmF0aW9ucyI+CisgICAgICA8dD5UaGlzIGRvY3VtZW50IGZpeGVz
IHR3byBzZWN1cml0eSBpc3N1ZXMgcmVwb3J0ZWQgb24gT3B1cyBhbmQgdGhhdCBhZmZlY3QgdGhl
CisgICAgICAgIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBpbiA8eHJlZiB0YXJnZXQ9IlJGQzY3
MTYiPlJGQyA2NzE2PC94cmVmPjogQ1ZFLTIwMTMtMDg5OQorICAgICAgICA8ZXJlZiB0YXJnZXQ9
Imh0dHBzOi8vbnZkLm5pc3QuZ292L3Z1bG4vZGV0YWlsL0NWRS0yMDEzLTA4OTkiLz4KKyAgICAg
ICAgYW5kIENWRS0yMDE3LTAzODEgPGVyZWYgdGFyZ2V0PSJodHRwczovL252ZC5uaXN0Lmdvdi92
dWxuL2RldGFpbC9DVkUtMjAxNy0wMzgxIi8+LgorICAgICAgICBDVkUtMjAxMy0wODk5IGlzIGZp
eGVkIGJ5IDx4cmVmIHRhcmdldD0icGFkZGluZyIvPiBhbmQKKyAgICAgICAgY291bGQgdGhlb3Jl
dGljYWxseSBjYXVzZSBpbmZvcm1hdGlvbiBsZWFrLCBidXQgdGhlCisgICAgICAgIGxlYWtlZCBp
bmZvcm1hdGlvbiB3b3VsZCBhdCB0aGUgdmVyeSBsZWFzdCBnbyB0aHJvdWdoIHRoZSBkZWNvZGVy
IHByb2Nlc3MgYmVmb3JlCisgICAgICAgIGJlaW5nIGFjY2Vzc2libGUgdG8gdGhlIGF0dGFja2Vy
LiBBbHNvLCB0aGUgYnVnIGNhbiBvbmx5IGJlIHRyaWdnZXJlZCBieSBPcHVzIHBhY2tldHMKKyAg
ICAgICAgYXQgbGVhc3QgMjQgTUIgaW4gc2l6ZS4gQ1ZFLTIwMTctMDM4MSBpcyBmaXhlZCBieSA8
eHJlZiB0YXJnZXQ9ImxzZl9vdmVyZmxvdyIvPiBhbmQsIGFzIGZhcgorICAgICAgICBhcyB0aGUg
YXV0aG9ycyBhcmUgYXdhcmUsIGNvdWxkIG5vdCBiZSBleHBsb2l0ZWQgaW4gYW55IHdheSAoZGVz
cGl0ZSB0aGUgY2xhaW1zIGluCisgICAgICAgIHRoZSBDVkUpIHVubGVzcyB0aGUgcmVhZC1vbmx5
IHRhYmxlCisgICAgICAgIHdhcyBzb21laG93IHBsYWNlZCB2ZXJ5IGNsb3NlIHRvIHNlbnNpdGl2
ZSBkYXRhLCB3aGljaCBpcyBoaWdobHkgdW5saWtlbHkuCisgICAgICAgIEJleW9uZCB0aGUgdHdv
IGZpeGVkIENWRXMsIHRoaXMgZG9jdW1lbnQgYWRkcyBubyBuZXcgc2VjdXJpdHkgY29uc2lkZXJh
dGlvbnMgb24gdG9wIG9mCisgICAgICAgIDx4cmVmIHRhcmdldD0iUkZDNjcxNiI+UkZDIDY3MTY8
L3hyZWY+LgorICAgICAgPC90PgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIGFuY2hv
cj0iSUFOQSIgdGl0bGU9IklBTkEgQ29uc2lkZXJhdGlvbnMiPgorICAgICAgPHQ+VGhpcyBkb2N1
bWVudCBtYWtlcyBubyByZXF1ZXN0IG9mIElBTkEuPC90PgorCisgICAgICA8dD5Ob3RlIHRvIFJG
QyBFZGl0b3I6IHRoaXMgc2VjdGlvbiBtYXkgYmUgcmVtb3ZlZCBvbiBwdWJsaWNhdGlvbiBhcyBh
bgorICAgICAgUkZDLjwvdD4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiBhbmNob3I9
IkFja25vd2xlZGdlbWVudHMiIHRpdGxlPSJBY2tub3dsZWRnZW1lbnRzIj4KKyAgICAgIDx0Pldl
IHdvdWxkIGxpa2UgdG8gdGhhbmsgSnVyaSBBZWRsYSBmb3IgcmVwb3J0aW5nIHRoZSBpc3N1ZSB3
aXRoIHRoZSBwYXJzaW5nIG9mCisgICAgICB0aGUgT3B1cyBwYWRkaW5nLiBUaGFua3MgdG8gRmVs
aWNpYSBMaW0gZm9yIHJlcG9ydGluZyB0aGUgTFNGIGludGVnZXIgb3ZlcmZsb3cgaXNzdWUuCisg
ICAgICBBbHNvLCB0aGFua3MgdG8gVGluYSBsZSBHcmFuZCwgSm9uYXRoYW4gTGVubm94LCBhbmQg
TWFyayBIYXJyaXMgZm9yIHRoZWlyCisgICAgICBmZWVkYmFjayBvbiB0aGlzIGRvY3VtZW50Ljwv
dD4KKyAgICA8L3NlY3Rpb24+CisgIDwvbWlkZGxlPgorCisgIDxiYWNrPgorICAgIDxyZWZlcmVu
Y2VzIHRpdGxlPSJOb3JtYXRpdmUgUmVmZXJlbmNlcyI+CisgICAgICA8P3JmYyBpbmNsdWRlPSJo
dHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjIx
MTkueG1sIj8+CisgICAgICA8P3JmYyBpbmNsdWRlPSJodHRwOi8veG1sLnJlc291cmNlLm9yZy9w
dWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjY3MTYueG1sIj8+CisKKworICAgIDwvcmVm
ZXJlbmNlcz4KKyAgPC9iYWNrPgorPC9yZmM+CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9kcmFmdC1pZXRmLWNv
ZGVjLW9wdXMueG1sIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLnhtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4z
MzRjYWQ5N2EyN2Q3ZTdiZjFjZGQwOWY0OTE0Y2I2YTk2YWU0NzExCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLnhtbApAQCAtMCwwICsxLDgyNzYgQEAKKzw/eG1s
IHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04Ij8+Cis8IURPQ1RZUEUgcmZjIFNZU1RFTSAn
cmZjMjYyOS5kdGQnPgorPD9yZmMgdG9jPSJ5ZXMiIHN5bXJlZnM9InllcyIgPz4KKworPHJmYyBp
cHI9InRydXN0MjAwOTAyIiBjYXRlZ29yeT0ic3RkIiBkb2NOYW1lPSJkcmFmdC1pZXRmLWNvZGVj
LW9wdXMtMTQiPgorCis8ZnJvbnQ+Cis8dGl0bGUgYWJicmV2PSJJbnRlcmFjdGl2ZSBBdWRpbyBD
b2RlYyI+RGVmaW5pdGlvbiBvZiB0aGUgT3B1cyBBdWRpbyBDb2RlYzwvdGl0bGU+CisKKworPGF1
dGhvciBpbml0aWFscz0iSk0iIHN1cm5hbWU9IlZhbGluIiBmdWxsbmFtZT0iSmVhbi1NYXJjIFZh
bGluIj4KKzxvcmdhbml6YXRpb24+TW96aWxsYSBDb3Jwb3JhdGlvbjwvb3JnYW5pemF0aW9uPgor
PGFkZHJlc3M+Cis8cG9zdGFsPgorPHN0cmVldD42NTAgQ2FzdHJvIFN0cmVldDwvc3RyZWV0Pgor
PGNpdHk+TW91bnRhaW4gVmlldzwvY2l0eT4KKzxyZWdpb24+Q0E8L3JlZ2lvbj4KKzxjb2RlPjk0
MDQxPC9jb2RlPgorPGNvdW50cnk+VVNBPC9jb3VudHJ5PgorPC9wb3N0YWw+Cis8cGhvbmU+KzEg
NjUwIDkwMy0wODAwPC9waG9uZT4KKzxlbWFpbD5qbXZhbGluQGptdmFsaW4uY2E8L2VtYWlsPgor
PC9hZGRyZXNzPgorPC9hdXRob3I+CisKKzxhdXRob3IgaW5pdGlhbHM9IksuIiBzdXJuYW1lPSJW
b3MiIGZ1bGxuYW1lPSJLb2VuIFZvcyI+Cis8b3JnYW5pemF0aW9uPlNreXBlIFRlY2hub2xvZ2ll
cyBTLkEuPC9vcmdhbml6YXRpb24+Cis8YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3RyZWV0PlNvZGVy
IE1hbGFyc3RyYW5kIDQzPC9zdHJlZXQ+Cis8Y2l0eT5TdG9ja2hvbG08L2NpdHk+Cis8cmVnaW9u
PjwvcmVnaW9uPgorPGNvZGU+MTE4MjU8L2NvZGU+Cis8Y291bnRyeT5TRTwvY291bnRyeT4KKzwv
cG9zdGFsPgorPHBob25lPis0NiA3MyAwODUgNzYxOTwvcGhvbmU+Cis8ZW1haWw+a29lbi52b3NA
c2t5cGUubmV0PC9lbWFpbD4KKzwvYWRkcmVzcz4KKzwvYXV0aG9yPgorCis8YXV0aG9yIGluaXRp
YWxzPSJULiIgc3VybmFtZT0iVGVycmliZXJyeSIgZnVsbG5hbWU9IlRpbW90aHkgQi4gVGVycmli
ZXJyeSI+Cis8b3JnYW5pemF0aW9uPk1vemlsbGEgQ29ycG9yYXRpb248L29yZ2FuaXphdGlvbj4K
KzxhZGRyZXNzPgorPHBvc3RhbD4KKzxzdHJlZXQ+NjUwIENhc3RybyBTdHJlZXQ8L3N0cmVldD4K
KzxjaXR5Pk1vdW50YWluIFZpZXc8L2NpdHk+Cis8cmVnaW9uPkNBPC9yZWdpb24+Cis8Y29kZT45
NDA0MTwvY29kZT4KKzxjb3VudHJ5PlVTQTwvY291bnRyeT4KKzwvcG9zdGFsPgorPHBob25lPisx
IDY1MCA5MDMtMDgwMDwvcGhvbmU+Cis8ZW1haWw+dHRlcnJpYmVycnlAbW96aWxsYS5jb208L2Vt
YWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisKKzxkYXRlIGRheT0iMTciIG1vbnRoPSJNYXki
IHllYXI9IjIwMTIiIC8+CisKKzxhcmVhPkdlbmVyYWw8L2FyZWE+CisKKzx3b3JrZ3JvdXA+PC93
b3JrZ3JvdXA+CisKKzxhYnN0cmFjdD4KKzx0PgorVGhpcyBkb2N1bWVudCBkZWZpbmVzIHRoZSBP
cHVzIGludGVyYWN0aXZlIHNwZWVjaCBhbmQgYXVkaW8gY29kZWMuCitPcHVzIGlzIGRlc2lnbmVk
IHRvIGhhbmRsZSBhIHdpZGUgcmFuZ2Ugb2YgaW50ZXJhY3RpdmUgYXVkaW8gYXBwbGljYXRpb25z
LAorIGluY2x1ZGluZyBWb2ljZSBvdmVyIElQLCB2aWRlb2NvbmZlcmVuY2luZywgaW4tZ2FtZSBj
aGF0LCBhbmQgZXZlbiBsaXZlLAorIGRpc3RyaWJ1dGVkIG11c2ljIHBlcmZvcm1hbmNlcy4KK0l0
IHNjYWxlcyBmcm9tIGxvdyBiaXRyYXRlIG5hcnJvd2JhbmQgc3BlZWNoIGF0IDYga2IvcyB0byB2
ZXJ5IGhpZ2ggcXVhbGl0eQorIHN0ZXJlbyBtdXNpYyBhdCA1MTAga2Ivcy4KK09wdXMgdXNlcyBi
b3RoIGxpbmVhciBwcmVkaWN0aW9uIChMUCkgYW5kIHRoZSBNb2RpZmllZCBEaXNjcmV0ZSBDb3Np
bmUKKyBUcmFuc2Zvcm0gKE1EQ1QpIHRvIGFjaGlldmUgZ29vZCBjb21wcmVzc2lvbiBvZiBib3Ro
IHNwZWVjaCBhbmQgbXVzaWMuCis8L3Q+Cis8L2Fic3RyYWN0PgorPC9mcm9udD4KKworPG1pZGRs
ZT4KKworPHNlY3Rpb24gYW5jaG9yPSJpbnRyb2R1Y3Rpb24iIHRpdGxlPSJJbnRyb2R1Y3Rpb24i
PgorPHQ+CitUaGUgT3B1cyBjb2RlYyBpcyBhIHJlYWwtdGltZSBpbnRlcmFjdGl2ZSBhdWRpbyBj
b2RlYyBkZXNpZ25lZCB0byBtZWV0IHRoZSByZXF1aXJlbWVudHMKK2Rlc2NyaWJlZCBpbiA8eHJl
ZiB0YXJnZXQ9InJlcXVpcmVtZW50cyI+PC94cmVmPi4KK0l0IGlzIGNvbXBvc2VkIG9mIGEgbGlu
ZWFyCisgcHJlZGljdGlvbiAoTFApLWJhc2VkIDx4cmVmIHRhcmdldD0iTFBDIi8+IGxheWVyIGFu
ZCBhIE1vZGlmaWVkIERpc2NyZXRlIENvc2luZSBUcmFuc2Zvcm0KKyAoTURDVCktYmFzZWQgPHhy
ZWYgdGFyZ2V0PSJNRENUIi8+IGxheWVyLgorVGhlIG1haW4gaWRlYSBiZWhpbmQgdXNpbmcgdHdv
IGxheWVycyBpcyB0aGF0IGluIHNwZWVjaCwgbGluZWFyIHByZWRpY3Rpb24KKyB0ZWNobmlxdWVz
IChzdWNoIGFzIENvZGUtRXhjaXRlZCBMaW5lYXIgUHJlZGljdGlvbiwgb3IgQ0VMUCkgY29kZSBs
b3cgZnJlcXVlbmNpZXMgbW9yZSBlZmZpY2llbnRseSB0aGFuIHRyYW5zZm9ybQorIChlLmcuLCBN
RENUKSBkb21haW4gdGVjaG5pcXVlcywgd2hpbGUgdGhlIHNpdHVhdGlvbiBpcyByZXZlcnNlZCBm
b3IgbXVzaWMgYW5kCisgaGlnaGVyIHNwZWVjaCBmcmVxdWVuY2llcy4KK1RodXMgYSBjb2RlYyB3
aXRoIGJvdGggbGF5ZXJzIGF2YWlsYWJsZSBjYW4gb3BlcmF0ZSBvdmVyIGEgd2lkZXIgcmFuZ2Ug
dGhhbgorIGVpdGhlciBvbmUgYWxvbmUgYW5kLCBieSBjb21iaW5pbmcgdGhlbSwgYWNoaWV2ZSBi
ZXR0ZXIgcXVhbGl0eSB0aGFuIGVpdGhlcgorIG9uZSBpbmRpdmlkdWFsbHkuCis8L3Q+CisKKzx0
PgorVGhlIHByaW1hcnkgbm9ybWF0aXZlIHBhcnQgb2YgdGhpcyBzcGVjaWZpY2F0aW9uIGlzIHBy
b3ZpZGVkIGJ5IHRoZSBzb3VyY2UgY29kZQorIGluIDx4cmVmIHRhcmdldD0icmVmLWltcGxlbWVu
dGF0aW9uIj48L3hyZWY+LgorT25seSB0aGUgZGVjb2RlciBwb3J0aW9uIG9mIHRoaXMgc29mdHdh
cmUgaXMgbm9ybWF0aXZlLCB0aG91Z2ggYQorIHNpZ25pZmljYW50IGFtb3VudCBvZiBjb2RlIGlz
IHNoYXJlZCBieSBib3RoIHRoZSBlbmNvZGVyIGFuZCBkZWNvZGVyLgorPHhyZWYgdGFyZ2V0PSJj
b25mb3JtYW5jZSIvPiBwcm92aWRlcyBhIGRlY29kZXIgY29uZm9ybWFuY2UgdGVzdC4KK1RoZSBk
ZWNvZGVyIGNvbnRhaW5zIGEgZ3JlYXQgZGVhbCBvZiBpbnRlZ2VyIGFuZCBmaXhlZC1wb2ludCBh
cml0aG1ldGljIHdoaWNoCisgbmVlZHMgdG8gYmUgcGVyZm9ybWVkIGV4YWN0bHksIGluY2x1ZGlu
ZyBhbGwgcm91bmRpbmcgY29uc2lkZXJhdGlvbnMsIHNvIGFueQorIHVzZWZ1bCBzcGVjaWZpY2F0
aW9uIHJlcXVpcmVzIGRvbWFpbi1zcGVjaWZpYyBzeW1ib2xpYyBsYW5ndWFnZSB0byBhZGVxdWF0
ZWx5CisgZGVmaW5lIHRoZXNlIG9wZXJhdGlvbnMuCitBZGRpdGlvbmFsbHksIGFueQorY29uZmxp
Y3QgYmV0d2VlbiB0aGUgc3ltYm9saWMgcmVwcmVzZW50YXRpb24gYW5kIHRoZSBpbmNsdWRlZCBy
ZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uIG11c3QgYmUgcmVzb2x2ZWQuIEZvciB0aGUgcHJhY3Rp
Y2FsIHJlYXNvbnMgb2YgY29tcGF0aWJpbGl0eSBhbmQKK3Rlc3RhYmlsaXR5IGl0IHdvdWxkIGJl
IGFkdmFudGFnZW91cyB0byBnaXZlIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24KK3ByaW9y
aXR5IGluIGFueSBkaXNhZ3JlZW1lbnQuIFRoZSBDIGxhbmd1YWdlIGlzIGFsc28gb25lIG9mIHRo
ZSBtb3N0Cit3aWRlbHkgdW5kZXJzdG9vZCBodW1hbi1yZWFkYWJsZSBzeW1ib2xpYyByZXByZXNl
bnRhdGlvbnMgZm9yIG1hY2hpbmUKK2JlaGF2aW9yLgorRm9yIHRoZXNlIHJlYXNvbnMgdGhpcyBS
RkMgdXNlcyB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGFzIHRoZSBzb2xlCisgc3ltYm9s
aWMgcmVwcmVzZW50YXRpb24gb2YgdGhlIGNvZGVjLgorPC90PgorCis8dD5XaGlsZSB0aGUgc3lt
Ym9saWMgcmVwcmVzZW50YXRpb24gaXMgdW5hbWJpZ3VvdXMgYW5kIGNvbXBsZXRlIGl0IGlzIG5v
dAorYWx3YXlzIHRoZSBlYXNpZXN0IHdheSB0byB1bmRlcnN0YW5kIHRoZSBjb2RlYydzIG9wZXJh
dGlvbi4gRm9yIHRoaXMgcmVhc29uCit0aGlzIGRvY3VtZW50IGFsc28gZGVzY3JpYmVzIHNpZ25p
ZmljYW50IHBhcnRzIG9mIHRoZSBjb2RlYyBpbiBFbmdsaXNoIGFuZAordGFrZXMgdGhlIG9wcG9y
dHVuaXR5IHRvIGV4cGxhaW4gdGhlIHJhdGlvbmFsZSBiZWhpbmQgbWFueSBvZiB0aGUgbW9yZQor
c3VycHJpc2luZyBlbGVtZW50cyBvZiB0aGUgZGVzaWduLiBUaGVzZSBkZXNjcmlwdGlvbnMgYXJl
IGludGVuZGVkIHRvIGJlCithY2N1cmF0ZSBhbmQgaW5mb3JtYXRpdmUsIGJ1dCB0aGUgbGltaXRh
dGlvbnMgb2YgY29tbW9uIEVuZ2xpc2ggc29tZXRpbWVzCityZXN1bHQgaW4gYW1iaWd1aXR5LCBz
byBpdCBpcyBleHBlY3RlZCB0aGF0IHRoZSByZWFkZXIgd2lsbCBhbHdheXMgcmVhZAordGhlbSBh
bG9uZ3NpZGUgdGhlIHN5bWJvbGljIHJlcHJlc2VudGF0aW9uLiBOdW1lcm91cyByZWZlcmVuY2Vz
IHRvIHRoZQoraW1wbGVtZW50YXRpb24gYXJlIHByb3ZpZGVkIGZvciB0aGlzIHB1cnBvc2UuIFRo
ZSBkZXNjcmlwdGlvbnMgc29tZXRpbWVzCitkaWZmZXIgZnJvbSB0aGUgcmVmZXJlbmNlIGluIG9y
ZGVyaW5nIG9yIHRocm91Z2ggbWF0aGVtYXRpY2FsIHNpbXBsaWZpY2F0aW9uCit3aGVyZXZlciBz
dWNoIGRldmlhdGlvbiBtYWtlcyBhbiBleHBsYW5hdGlvbiBlYXNpZXIgdG8gdW5kZXJzdGFuZC4K
K0ZvciBleGFtcGxlLCB0aGUgcmlnaHQgc2hpZnQgYW5kIGxlZnQgc2hpZnQgb3BlcmF0aW9ucyBp
biB0aGUgcmVmZXJlbmNlCitpbXBsZW1lbnRhdGlvbiBhcmUgb2Z0ZW4gZGVzY3JpYmVkIHVzaW5n
IGRpdmlzaW9uIGFuZCBtdWx0aXBsaWNhdGlvbiBpbiB0aGUgdGV4dC4KK0luIGdlbmVyYWwsIHRo
ZSB0ZXh0IGlzIGZvY3VzZWQgb24gdGhlICJ3aGF0IiBhbmQgIndoeSIgd2hpbGUgdGhlIHN5bWJv
bGljCityZXByZXNlbnRhdGlvbiBtb3N0IGNsZWFybHkgcHJvdmlkZXMgdGhlICJob3ciLgorPC90
PgorCis8c2VjdGlvbiBhbmNob3I9Im5vdGF0aW9uIiB0aXRsZT0iTm90YXRpb24gYW5kIENvbnZl
bnRpb25zIj4KKzx0PgorVGhlIGtleSB3b3JkcyAiTVVTVCIsICJNVVNUIE5PVCIsICJSRVFVSVJF
RCIsICJTSEFMTCIsICJTSEFMTCBOT1QiLCAiU0hPVUxEIiwKKyAiU0hPVUxEIE5PVCIsICJSRUNP
TU1FTkRFRCIsICJNQVkiLCBhbmQgIk9QVElPTkFMIiBpbiB0aGlzIGRvY3VtZW50IGFyZSB0byBi
ZQorIGludGVycHJldGVkIGFzIGRlc2NyaWJlZCBpbiBSRkMgMjExOSA8eHJlZiB0YXJnZXQ9InJm
YzIxMTkiPjwveHJlZj4uCis8L3Q+Cis8dD4KK1ZhcmlvdXMgb3BlcmF0aW9ucyBpbiB0aGUgY29k
ZWMgcmVxdWlyZSBiaXQtZXhhY3QgZml4ZWQtcG9pbnQgYmVoYXZpb3IsIGV2ZW4KKyB3aGVuIHdy
aXRpbmcgYSBmbG9hdGluZyBwb2ludCBpbXBsZW1lbnRhdGlvbi4KK1RoZSBub3RhdGlvbiAiUSZs
dDtuJmd0OyIsIHdoZXJlIG4gaXMgYW4gaW50ZWdlciwgZGVub3RlcyB0aGUgbnVtYmVyIG9mIGJp
bmFyeQorIGRpZ2l0cyB0byB0aGUgcmlnaHQgb2YgdGhlIGRlY2ltYWwgcG9pbnQgaW4gYSBmaXhl
ZC1wb2ludCBudW1iZXIuCitGb3IgZXhhbXBsZSwgYSBzaWduZWQgUTE0IHZhbHVlIGluIGEgMTYt
Yml0IHdvcmQgY2FuIHJlcHJlc2VudCB2YWx1ZXMgZnJvbQorIC0yLjAgdG8gMS45OTk5Mzg5NjQ4
NDM3NSwgaW5jbHVzaXZlLgorVGhpcyBub3RhdGlvbiBpcyBmb3IgaW5mb3JtYXRpb25hbCBwdXJw
b3NlcyBvbmx5LgorQXJpdGhtZXRpYywgd2hlbiBkZXNjcmliZWQsIGFsd2F5cyBvcGVyYXRlcyBv
biB0aGUgdW5kZXJseWluZyBpbnRlZ2VyLgorRS5nLiwgdGhlIHRleHQgd2lsbCBleHBsaWNpdGx5
IGluZGljYXRlIGFueSBzaGlmdHMgcmVxdWlyZWQgYWZ0ZXIgYQorIG11bHRpcGxpY2F0aW9uLgor
PC90PgorPHQ+CitFeHByZXNzaW9ucywgd2hlcmUgaW5jbHVkZWQgaW4gdGhlIHRleHQsIGZvbGxv
dyBDIG9wZXJhdG9yIHJ1bGVzIGFuZAorIHByZWNlZGVuY2UsIHdpdGggdGhlIGV4Y2VwdGlvbiB0
aGF0IHRoZSBzeW50YXggIngqKnkiIGluZGljYXRlcyB4IHJhaXNlZCB0bworIHRoZSBwb3dlciB5
LgorVGhlIHRleHQgYWxzbyBtYWtlcyB1c2Ugb2YgdGhlIGZvbGxvd2luZyBmdW5jdGlvbnM6Cis8
L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0ibWluIiB0b2M9ImV4Y2x1ZGUiIHRpdGxlPSJtaW4oeCx5
KSI+Cis8dD4KK1RoZSBzbWFsbGVzdCBvZiB0d28gdmFsdWVzIHggYW5kIHkuCis8L3Q+Cis8L3Nl
Y3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ibWF4IiB0b2M9ImV4Y2x1ZGUiIHRpdGxlPSJtYXgo
eCx5KSI+Cis8dD4KK1RoZSBsYXJnZXN0IG9mIHR3byB2YWx1ZXMgeCBhbmQgeS4KKzwvdD4KKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJjbGFtcCIgdG9jPSJleGNsdWRlIiB0aXRsZT0i
Y2xhbXAobG8seCxoaSkiPgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWdu
PSJjZW50ZXIiPjwhW0NEQVRBWworY2xhbXAobG8seCxoaSkgPSBtYXgobG8sbWluKHgsaGkpKQor
XV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8dD4KK1dpdGggdGhpcyBkZWZpbml0aW9uLCBpZiBs
byZuYnNwOyZndDsmbmJzcDtoaSwgdGhlIGxvd2VyIGJvdW5kIGlzIHRoZSBvbmUgdGhhdAorIGlz
IGVuZm9yY2VkLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpZ24iIHRv
Yz0iZXhjbHVkZSIgdGl0bGU9InNpZ24oeCkiPgorPHQ+CitUaGUgc2lnbiBvZiB4LCBpLmUuLAor
PGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRB
WworICAgICAgICAgICggLTEsICB4IDwgMCAsCitzaWduKHgpID0gPCAgMCwgIHggPT0gMCAsCisg
ICAgICAgICAgKCAgMSwgIHggPiAwIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90Pgor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImFicyIgdG9jPSJleGNsdWRlIiB0aXRsZT0i
YWJzKHgpIj4KKzx0PgorVGhlIGFic29sdXRlIHZhbHVlIG9mIHgsIGkuZS4sCis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCithYnMoeCkg
PSBzaWduKHgpKnggLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0iZmxvb3IiIHRvYz0iZXhjbHVkZSIgdGl0bGU9ImZsb29yKGYp
Ij4KKzx0PgorVGhlIGxhcmdlc3QgaW50ZWdlciB6IHN1Y2ggdGhhdCB6ICZsdDs9IGYuCis8L3Q+
Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iY2VpbCIgdG9jPSJleGNsdWRlIiB0aXRs
ZT0iY2VpbChmKSI+Cis8dD4KK1RoZSBzbWFsbGVzdCBpbnRlZ2VyIHogc3VjaCB0aGF0IHogJmd0
Oz0gZi4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJyb3VuZCIgdG9jPSJl
eGNsdWRlIiB0aXRsZT0icm91bmQoZikiPgorPHQ+CitUaGUgaW50ZWdlciB6IG5lYXJlc3QgdG8g
Ziwgd2l0aCB0aWVzIHJvdW5kZWQgdG93YXJkcyBuZWdhdGl2ZSBpbmZpbml0eSwKKyBpLmUuLAor
PGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRB
WworIHJvdW5kKGYpID0gY2VpbChmIC0gMC41KSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJsb2cyIiB0b2M9ImV4Y2x1ZGUi
IHRpdGxlPSJsb2cyKGYpIj4KKzx0PgorVGhlIGJhc2UtdHdvIGxvZ2FyaXRobSBvZiBmLgorPC90
PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Imlsb2ciIHRvYz0iZXhjbHVkZSIgdGl0
bGU9Imlsb2cobikiPgorPHQ+CitUaGUgbWluaW11bSBudW1iZXIgb2YgYml0cyByZXF1aXJlZCB0
byBzdG9yZSBhIHBvc2l0aXZlIGludGVnZXIgbiBpbiB0d28ncworIGNvbXBsZW1lbnQgbm90YXRp
b24sIG9yIDAgZm9yIGEgbm9uLXBvc2l0aXZlIGludGVnZXIgbi4KKzxmaWd1cmUgYWxpZ249ImNl
bnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAoIDAs
ICAgICAgICAgICAgICAgICBuIDw9IDAsCitpbG9nKG4pID0gPAorICAgICAgICAgICggZmxvb3Io
bG9nMihuKSkrMSwgIG4gPiAwCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0V4YW1wbGVzOgor
PGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+aWxvZygtMSkgPSAwPC90PgorPHQ+aWxvZygwKSA9
IDA8L3Q+Cis8dD5pbG9nKDEpID0gMTwvdD4KKzx0Pmlsb2coMikgPSAyPC90PgorPHQ+aWxvZygz
KSA9IDI8L3Q+Cis8dD5pbG9nKDQpID0gMzwvdD4KKzx0Pmlsb2coNykgPSAzPC90PgorPC9saXN0
PgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rp
b24gYW5jaG9yPSJvdmVydmlldyIgdGl0bGU9Ik9wdXMgQ29kZWMgT3ZlcnZpZXciPgorCis8dD4K
K1RoZSBPcHVzIGNvZGVjIHNjYWxlcyBmcm9tIDYmbmJzcDtrYi9zIG5hcnJvd2JhbmQgbW9ubyBz
cGVlY2ggdG8gNTEwJm5ic3A7a2IvcworIGZ1bGxiYW5kIHN0ZXJlbyBtdXNpYywgd2l0aCBhbGdv
cml0aG1pYyBkZWxheXMgcmFuZ2luZyBmcm9tIDUmbmJzcDttcyB0bworIDY1LjImbmJzcDttcy4K
K0F0IGFueSBnaXZlbiB0aW1lLCBlaXRoZXIgdGhlIExQIGxheWVyLCB0aGUgTURDVCBsYXllciwg
b3IgYm90aCwgbWF5IGJlIGFjdGl2ZS4KK0l0IGNhbiBzZWFtbGVzc2x5IHN3aXRjaCBiZXR3ZWVu
IGFsbCBvZiBpdHMgdmFyaW91cyBvcGVyYXRpbmcgbW9kZXMsIGdpdmluZyBpdAorIGEgZ3JlYXQg
ZGVhbCBvZiBmbGV4aWJpbGl0eSB0byBhZGFwdCB0byB2YXJ5aW5nIGNvbnRlbnQgYW5kIG5ldHdv
cmsKKyBjb25kaXRpb25zIHdpdGhvdXQgcmVuZWdvdGlhdGluZyB0aGUgY3VycmVudCBzZXNzaW9u
LgorVGhlIGNvZGVjIGFsbG93cyBpbnB1dCBhbmQgb3V0cHV0IG9mIHZhcmlvdXMgYXVkaW8gYmFu
ZHdpZHRocywgZGVmaW5lZCBhcworIGZvbGxvd3M6Cis8L3Q+Cis8dGV4dHRhYmxlIGFuY2hvcj0i
YXVkaW8tYmFuZHdpZHRoIj4KKzx0dGNvbD5BYmJyZXZpYXRpb248L3R0Y29sPgorPHR0Y29sIGFs
aWduPSJyaWdodCI+QXVkaW8gQmFuZHdpZHRoPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQi
PlNhbXBsZSBSYXRlIChFZmZlY3RpdmUpPC90dGNvbD4KKzxjPk5CIChuYXJyb3diYW5kKTwvYz4g
ICAgICAgPGM+NCZuYnNwO2tIejwvYz4gIDxjPjgmbmJzcDtrSHo8L2M+Cis8Yz5NQiAobWVkaXVt
LWJhbmQpPC9jPiAgICAgIDxjPjYmbmJzcDtrSHo8L2M+IDxjPjEyJm5ic3A7a0h6PC9jPgorPGM+
V0IgKHdpZGViYW5kKTwvYz4gICAgICAgICA8Yz44Jm5ic3A7a0h6PC9jPiA8Yz4xNiZuYnNwO2tI
ejwvYz4KKzxjPlNXQiAoc3VwZXItd2lkZWJhbmQpPC9jPiA8Yz4xMiZuYnNwO2tIejwvYz4gPGM+
MjQmbmJzcDtrSHo8L2M+Cis8Yz5GQiAoZnVsbGJhbmQpPC9jPiAgICAgICAgPGM+MjAmbmJzcDtr
SHogKCopPC9jPiA8Yz40OCZuYnNwO2tIejwvYz4KKzwvdGV4dHRhYmxlPgorPHQ+CisoKikgQWx0
aG91Z2ggdGhlIHNhbXBsaW5nIHRoZW9yZW0gYWxsb3dzIGEgYmFuZHdpZHRoIGFzIGxhcmdlIGFz
IGhhbGYgdGhlCisgc2FtcGxpbmcgcmF0ZSwgT3B1cyBuZXZlciBjb2RlcyBhdWRpbyBhYm92ZSAy
MCZuYnNwO2tIeiwgYXMgdGhhdCBpcyB0aGUKKyBnZW5lcmFsbHkgYWNjZXB0ZWQgdXBwZXIgbGlt
aXQgb2YgaHVtYW4gaGVhcmluZy4KKzwvdD4KKworPHQ+CitPcHVzIGRlZmluZXMgc3VwZXItd2lk
ZWJhbmQgKFNXQikgd2l0aCBhbiBlZmZlY3RpdmUgc2FtcGxlIHJhdGUgb2YgMjQmbmJzcDtrSHos
CisgdW5saWtlIHNvbWUgb3RoZXIgYXVkaW8gY29kaW5nIHN0YW5kYXJkcyB0aGF0IHVzZSAzMiZu
YnNwO2tIei4KK1RoaXMgd2FzIGNob3NlbiBmb3IgYSBudW1iZXIgb2YgcmVhc29ucy4KK1RoZSBi
YW5kIGxheW91dCBpbiB0aGUgTURDVCBsYXllciBuYXR1cmFsbHkgYWxsb3dzIHNraXBwaW5nIGNv
ZWZmaWNpZW50cyBmb3IKKyBmcmVxdWVuY2llcyBvdmVyIDEyJm5ic3A7a0h6LCBidXQgZG9lcyBu
b3QgYWxsb3cgY2xlYW5seSBkcm9wcGluZyBqdXN0IHRob3NlCisgZnJlcXVlbmNpZXMgb3ZlciAx
NiZuYnNwO2tIei4KK0Egc2FtcGxlIHJhdGUgb2YgMjQmbmJzcDtrSHogYWxzbyBtYWtlcyByZXNh
bXBsaW5nIGluIHRoZSBNRENUIGxheWVyIGVhc2llciwKKyBhcyAyNCBldmVubHkgZGl2aWRlcyA0
OCwgYW5kIHdoZW4gMjQmbmJzcDtrSHogaXMgc3VmZmljaWVudCwgaXQgY2FuIHNhdmUKKyBjb21w
dXRhdGlvbiBpbiBvdGhlciBwcm9jZXNzaW5nLCBzdWNoIGFzIEFjb3VzdGljIEVjaG8gQ2FuY2Vs
bGF0aW9uIChBRUMpLgorRXhwZXJpbWVudGFsIGNoYW5nZXMgdG8gdGhlIGJhbmQgbGF5b3V0IHRv
IGFsbG93IGEgMTYmbmJzcDtrSHogY3V0b2ZmCisgKDMyJm5ic3A7a0h6IGVmZmVjdGl2ZSBzYW1w
bGUgcmF0ZSkgc2hvd2VkIHBvdGVudGlhbCBxdWFsaXR5IGRlZ3JhZGF0aW9ucyBhdAorIG90aGVy
IHNhbXBsZSByYXRlcywgYW5kIGF0IHR5cGljYWwgYml0cmF0ZXMgdGhlIG51bWJlciBvZiBiaXRz
IHNhdmVkIGJ5IHVzaW5nCisgc3VjaCBhIGN1dG9mZiBpbnN0ZWFkIG9mIGNvZGluZyBpbiBmdWxs
YmFuZCAoRkIpIG1vZGUgaXMgdmVyeSBzbWFsbC4KK1RoZXJlZm9yZSwgaWYgYW4gYXBwbGljYXRp
b24gd2lzaGVzIHRvIHByb2Nlc3MgYSBzaWduYWwgc2FtcGxlZCBhdCAzMiZuYnNwO2tIeiwKKyBp
dCBzaG91bGQganVzdCB1c2UgRkIuCis8L3Q+CisKKzx0PgorVGhlIExQIGxheWVyIGlzIGJhc2Vk
IG9uIHRoZSBTSUxLIGNvZGVjCisgPHhyZWYgdGFyZ2V0PSJTSUxLIj48L3hyZWY+LgorSXQgc3Vw
cG9ydHMgTkIsIE1CLCBvciBXQiBhdWRpbyBhbmQgZnJhbWUgc2l6ZXMgZnJvbSAxMCZuYnNwO21z
IHRvIDYwJm5ic3A7bXMsCisgYW5kIHJlcXVpcmVzIGFuIGFkZGl0aW9uYWwgNSZuYnNwO21zIGxv
b2stYWhlYWQgZm9yIG5vaXNlIHNoYXBpbmcgZXN0aW1hdGlvbi4KK0Egc21hbGwgYWRkaXRpb25h
bCBkZWxheSAodXAgdG8gMS41IG1zKSBtYXkgYmUgcmVxdWlyZWQgZm9yIHNhbXBsaW5nIHJhdGUK
KyBjb252ZXJzaW9uLgorTGlrZSBWb3JiaXMgPHhyZWYgdGFyZ2V0PSdWb3JiaXMtd2Vic2l0ZScv
PiBhbmQgbWFueSBvdGhlciBtb2Rlcm4gY29kZWNzLCBTSUxLIGlzIGluaGVyZW50bHkgZGVzaWdu
ZWQgZm9yCisgdmFyaWFibGUtYml0cmF0ZSAoVkJSKSBjb2RpbmcsIHRob3VnaCB0aGUgZW5jb2Rl
ciBjYW4gYWxzbyBwcm9kdWNlCisgY29uc3RhbnQtYml0cmF0ZSAoQ0JSKSBzdHJlYW1zLgorVGhl
IHZlcnNpb24gb2YgU0lMSyB1c2VkIGluIE9wdXMgaXMgc3Vic3RhbnRpYWxseSBtb2RpZmllZCBm
cm9tLCBhbmQgbm90CisgY29tcGF0aWJsZSB3aXRoLCB0aGUgc3RhbmQtYWxvbmUgU0lMSyBjb2Rl
YyBwcmV2aW91c2x5IGRlcGxveWVkIGJ5IFNreXBlLgorVGhpcyBkb2N1bWVudCBkb2VzIG5vdCBz
ZXJ2ZSB0byBkZWZpbmUgdGhhdCBmb3JtYXQsIGJ1dCB0aG9zZSBpbnRlcmVzdGVkIGluIHRoZQor
IG9yaWdpbmFsIFNJTEsgY29kZWMgc2hvdWxkIHNlZSA8eHJlZiB0YXJnZXQ9IlNJTEsiLz4gaW5z
dGVhZC4KKzwvdD4KKworPHQ+CitUaGUgTURDVCBsYXllciBpcyBiYXNlZCBvbiB0aGUgQ0VMVCAg
Y29kZWMgPHhyZWYgdGFyZ2V0PSJDRUxUIj48L3hyZWY+LgorSXQgc3VwcG9ydHMgTkIsIFdCLCBT
V0IsIG9yIEZCIGF1ZGlvIGFuZCBmcmFtZSBzaXplcyBmcm9tIDIuNSZuYnNwO21zIHRvCisgMjAm
bmJzcDttcywgYW5kIHJlcXVpcmVzIGFuIGFkZGl0aW9uYWwgMi41Jm5ic3A7bXMgbG9vay1haGVh
ZCBkdWUgdG8gdGhlCisgb3ZlcmxhcHBpbmcgTURDVCB3aW5kb3dzLgorVGhlIENFTFQgY29kZWMg
aXMgaW5oZXJlbnRseSBkZXNpZ25lZCBmb3IgQ0JSIGNvZGluZywgYnV0IHVubGlrZSBtYW55IENC
UgorIGNvZGVjcyBpdCBpcyBub3QgbGltaXRlZCB0byBhIHNldCBvZiBwcmVkZXRlcm1pbmVkIHJh
dGVzLgorSXQgaW50ZXJuYWxseSBhbGxvY2F0ZXMgYml0cyB0byBleGFjdGx5IGZpbGwgYW55IGdp
dmVuIHRhcmdldCBidWRnZXQsIGFuZCBhbgorIGVuY29kZXIgY2FuIHByb2R1Y2UgYSBWQlIgc3Ry
ZWFtIGJ5IHZhcnlpbmcgdGhlIHRhcmdldCBvbiBhIHBlci1mcmFtZSBiYXNpcy4KK1RoZSBNRENU
IGxheWVyIGlzIG5vdCB1c2VkIGZvciBzcGVlY2ggd2hlbiB0aGUgYXVkaW8gYmFuZHdpZHRoIGlz
IFdCIG9yIGxlc3MsCisgYXMgaXQgaXMgbm90IHVzZWZ1bCB0aGVyZS4KK09uIHRoZSBvdGhlciBo
YW5kLCBub24tc3BlZWNoIHNpZ25hbHMgYXJlIG5vdCBhbHdheXMgYWRlcXVhdGVseSBjb2RlZCB1
c2luZworIGxpbmVhciBwcmVkaWN0aW9uLCBzbyBmb3IgbXVzaWMgb25seSB0aGUgTURDVCBsYXll
ciBzaG91bGQgYmUgdXNlZC4KKzwvdD4KKworPHQ+CitBICJIeWJyaWQiIG1vZGUgYWxsb3dzIHRo
ZSB1c2Ugb2YgYm90aCBsYXllcnMgc2ltdWx0YW5lb3VzbHkgd2l0aCBhIGZyYW1lIHNpemUKKyBv
ZiAxMCZuYnNwO29yIDIwJm5ic3A7bXMgYW5kIGEgU1dCIG9yIEZCIGF1ZGlvIGJhbmR3aWR0aC4K
K1RoZSBMUCBsYXllciBjb2RlcyB0aGUgbG93IGZyZXF1ZW5jaWVzIGJ5IHJlc2FtcGxpbmcgdGhl
IHNpZ25hbCBkb3duIHRvIFdCLgorVGhlIE1EQ1QgbGF5ZXIgZm9sbG93cywgY29kaW5nIHRoZSBo
aWdoIGZyZXF1ZW5jeSBwb3J0aW9uIG9mIHRoZSBzaWduYWwuCitUaGUgY3V0b2ZmIGJldHdlZW4g
dGhlIHR3byBsaWVzIGF0IDgmbmJzcDtrSHosIHRoZSBtYXhpbXVtIFdCIGF1ZGlvIGJhbmR3aWR0
aC4KK0luIHRoZSBNRENUIGxheWVyLCBhbGwgYmFuZHMgYmVsb3cgOCZuYnNwO2tIeiBhcmUgZGlz
Y2FyZGVkLCBzbyB0aGVyZSBpcyBubworIGNvZGluZyByZWR1bmRhbmN5IGJldHdlZW4gdGhlIHR3
byBsYXllcnMuCis8L3Q+CisKKzx0PgorVGhlIHNhbXBsZSByYXRlIChpbiBjb250cmFzdCB0byB0
aGUgYWN0dWFsIGF1ZGlvIGJhbmR3aWR0aCkgY2FuIGJlIGNob3NlbgorIGluZGVwZW5kZW50bHkg
b24gdGhlIGVuY29kZXIgYW5kIGRlY29kZXIgc2lkZSwgZS5nLiwgYSBmdWxsYmFuZCBzaWduYWwg
Y2FuIGJlCisgZGVjb2RlZCBhcyB3aWRlYmFuZCwgb3IgdmljZSB2ZXJzYS4KK1RoaXMgYXBwcm9h
Y2ggZW5zdXJlcyBhIHNlbmRlciBhbmQgcmVjZWl2ZXIgY2FuIGFsd2F5cyBpbnRlcm9wZXJhdGUs
IHJlZ2FyZGxlc3MKKyBvZiB0aGUgY2FwYWJpbGl0aWVzIG9mIHRoZWlyIGFjdHVhbCBhdWRpbyBo
YXJkd2FyZS4KK0ludGVybmFsbHksIHRoZSBMUCBsYXllciBhbHdheXMgb3BlcmF0ZXMgYXQgYSBz
YW1wbGUgcmF0ZSBvZiB0d2ljZSB0aGUgYXVkaW8KKyBiYW5kd2lkdGgsIHVwIHRvIGEgbWF4aW11
bSBvZiAxNiZuYnNwO2tIeiwgd2hpY2ggaXQgY29udGludWVzIHRvIHVzZSBmb3IgU1dCCisgYW5k
IEZCLgorVGhlIGRlY29kZXIgc2ltcGx5IHJlc2FtcGxlcyBpdHMgb3V0cHV0IHRvIHN1cHBvcnQg
ZGlmZmVyZW50IHNhbXBsZSByYXRlcy4KK1RoZSBNRENUIGxheWVyIGFsd2F5cyBvcGVyYXRlcyBp
bnRlcm5hbGx5IGF0IGEgc2FtcGxlIHJhdGUgb2YgNDgmbmJzcDtrSHouCitTaW5jZSBhbGwgdGhl
IHN1cHBvcnRlZCBzYW1wbGUgcmF0ZXMgZXZlbmx5IGRpdmlkZSB0aGlzIHJhdGUsIGFuZCBzaW5j
ZSB0aGUKKyB0aGUgZGVjb2RlciBtYXkgZWFzaWx5IHplcm8gb3V0IHRoZSBoaWdoIGZyZXF1ZW5j
eSBwb3J0aW9uIG9mIHRoZSBzcGVjdHJ1bSBpbgorIHRoZSBmcmVxdWVuY3kgZG9tYWluLCBpdCBj
YW4gc2ltcGx5IGRlY2ltYXRlIHRoZSBNRENUIGxheWVyIG91dHB1dCB0byBhY2hpZXZlCisgdGhl
IG90aGVyIHN1cHBvcnRlZCBzYW1wbGUgcmF0ZXMgdmVyeSBjaGVhcGx5LgorPC90PgorCis8dD4K
K0FmdGVyIGNvbnZlcnNpb24gdG8gdGhlIGNvbW1vbiwgZGVzaXJlZCBvdXRwdXQgc2FtcGxlIHJh
dGUsIHRoZSBkZWNvZGVyIHNpbXBseQorIGFkZHMgdGhlIG91dHB1dCBmcm9tIHRoZSB0d28gbGF5
ZXJzIHRvZ2V0aGVyLgorVG8gY29tcGVuc2F0ZSBmb3IgdGhlIGRpZmZlcmVudCBsb29rLWFoZWFk
IHJlcXVpcmVkIGJ5IGVhY2ggbGF5ZXIsIHRoZSBDRUxUCisgZW5jb2RlciBpbnB1dCBpcyBkZWxh
eWVkIGJ5IGFuIGFkZGl0aW9uYWwgMi43Jm5ic3A7bXMuCitUaGlzIGVuc3VyZXMgdGhhdCBsb3cg
ZnJlcXVlbmNpZXMgYW5kIGhpZ2ggZnJlcXVlbmNpZXMgYXJyaXZlIGF0IHRoZSBzYW1lIHRpbWUu
CitUaGlzIGV4dHJhIGRlbGF5IG1heSBiZSByZWR1Y2VkIGJ5IGFuIGVuY29kZXIgYnkgdXNpbmcg
bGVzcyBsb29rLWFoZWFkIGZvciBub2lzZQorIHNoYXBpbmcgb3IgdXNpbmcgYSBzaW1wbGVyIHJl
c2FtcGxlciBpbiB0aGUgTFAgbGF5ZXIsIGJ1dCB0aGlzIHdpbGwgcmVkdWNlCisgcXVhbGl0eS4K
K0hvd2V2ZXIsIHRoZSBiYXNlIDIuNSZuYnNwO21zIGxvb2stYWhlYWQgaW4gdGhlIENFTFQgbGF5
ZXIgY2Fubm90IGJlIHJlZHVjZWQgaW4KKyB0aGUgZW5jb2RlciBiZWNhdXNlIGl0IGlzIG5lZWRl
ZCBmb3IgdGhlIE1EQ1Qgb3ZlcmxhcCwgd2hvc2Ugc2l6ZSBpcyBmaXhlZCBieQorIHRoZSBkZWNv
ZGVyLgorPC90PgorCis8dD4KK0JvdGggbGF5ZXJzIHVzZSB0aGUgc2FtZSBlbnRyb3B5IGNvZGVy
LCBhdm9pZGluZyBhbnkgd2FzdGUgZnJvbSAicGFkZGluZyBiaXRzIgorIGJldHdlZW4gdGhlbS4K
K1RoZSBoeWJyaWQgYXBwcm9hY2ggbWFrZXMgaXQgZWFzeSB0byBzdXBwb3J0IGJvdGggQ0JSIGFu
ZCBWQlIgY29kaW5nLgorQWx0aG91Z2ggdGhlIExQIGxheWVyIGlzIFZCUiwgdGhlIGJpdCBhbGxv
Y2F0aW9uIG9mIHRoZSBNRENUIGxheWVyIGNhbiBwcm9kdWNlCisgYSBmaW5hbCBzdHJlYW0gdGhh
dCBpcyBDQlIgYnkgdXNpbmcgYWxsIHRoZSBiaXRzIGxlZnQgdW51c2VkIGJ5IHRoZSBMUCBsYXll
ci4KKzwvdD4KKworPHNlY3Rpb24gdGl0bGU9IkNvbnRyb2wgUGFyYW1ldGVycyI+Cis8dD4KK1Ro
ZSBPcHVzIGNvZGVjIGluY2x1ZGVzIGEgbnVtYmVyIG9mIGNvbnRyb2wgcGFyYW1ldGVycyB3aGlj
aCBjYW4gYmUgY2hhbmdlZCBkeW5hbWljYWxseSBkdXJpbmcKK3JlZ3VsYXIgb3BlcmF0aW9uIG9m
IHRoZSBjb2RlYywgd2l0aG91dCBpbnRlcnJ1cHRpbmcgdGhlIGF1ZGlvIHN0cmVhbSBmcm9tIHRo
ZSBlbmNvZGVyIHRvIHRoZSBkZWNvZGVyLgorVGhlc2UgcGFyYW1ldGVycyBvbmx5IGFmZmVjdCB0
aGUgZW5jb2RlciBzaW5jZSBhbnkgaW1wYWN0IHRoZXkgaGF2ZSBvbiB0aGUgYml0LXN0cmVhbSBp
cyBzaWduYWxlZAoraW4tYmFuZCBzdWNoIHRoYXQgYSBkZWNvZGVyIGNhbiBkZWNvZGUgYW55IE9w
dXMgc3RyZWFtIHdpdGhvdXQgYW55IG91dC1vZi1iYW5kIHNpZ25hbGluZy4gQW55IE9wdXMKK2lt
cGxlbWVudGF0aW9uIGNhbiBhZGQgb3IgbW9kaWZ5IHRoZXNlIGNvbnRyb2wgcGFyYW1ldGVycyB3
aXRob3V0IGFmZmVjdGluZyBpbnRlcm9wZXJhYmlsaXR5LiBUaGUgbW9zdAoraW1wb3J0YW50IGVu
Y29kZXIgY29udHJvbCBwYXJhbWV0ZXJzIGluIHRoZSByZWZlcmVuY2UgZW5jb2RlciBhcmUgbGlz
dGVkIGJlbG93LgorPC90PgorCis8c2VjdGlvbiB0aXRsZT0iQml0cmF0ZSIgdG9jPSJleGxjdWRl
Ij4KKzx0PgorT3B1cyBzdXBwb3J0cyBhbGwgYml0cmF0ZXMgZnJvbSA2Jm5ic3A7a2IvcyB0byA1
MTAmbmJzcDtrYi9zLiBBbGwgb3RoZXIgcGFyYW1ldGVycyBiZWluZworZXF1YWwsIGhpZ2hlciBi
aXRyYXRlIHJlc3VsdHMgaW4gaGlnaGVyIHF1YWxpdHkuIEZvciBhIGZyYW1lIHNpemUgb2YgMjAm
bmJzcDttcywgdGhlc2UKK2FyZSB0aGUgYml0cmF0ZSAic3dlZXQgc3BvdHMiIGZvciBPcHVzIGlu
IHZhcmlvdXMgY29uZmlndXJhdGlvbnM6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD44LTEy
IGtiL3MgZm9yIE5CIHNwZWVjaCw8L3Q+Cis8dD4xNi0yMCBrYi9zIGZvciBXQiBzcGVlY2gsPC90
PgorPHQ+MjgtNDAga2IvcyBmb3IgRkIgc3BlZWNoLDwvdD4KKzx0PjQ4LTY0IGtiL3MgZm9yIEZC
IG1vbm8gbXVzaWMsIGFuZDwvdD4KKzx0PjY0LTEyOCBrYi9zIGZvciBGQiBzdGVyZW8gbXVzaWMu
PC90PgorPC9saXN0PgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iTnVtYmVy
IG9mIENoYW5uZWxzIChNb25vL1N0ZXJlbykiIHRvYz0iZXhsY3VkZSI+Cis8dD4KK09wdXMgY2Fu
IHRyYW5zbWl0IGVpdGhlciBtb25vIG9yIHN0ZXJlbyBmcmFtZXMgd2l0aGluIGEgc2luZ2xlIHN0
cmVhbS4KK1doZW4gZGVjb2RpbmcgYSBtb25vIGZyYW1lIGluIGEgc3RlcmVvIGRlY29kZXIsIHRo
ZSBsZWZ0IGFuZCByaWdodCBjaGFubmVscyBhcmUKKyBpZGVudGljYWwsIGFuZCB3aGVuIGRlY29k
aW5nIGEgc3RlcmVvIGZyYW1lIGluIGEgbW9ubyBkZWNvZGVyLCB0aGUgbW9ubyBvdXRwdXQKKyBp
cyB0aGUgYXZlcmFnZSBvZiB0aGUgbGVmdCBhbmQgcmlnaHQgY2hhbm5lbHMuCitJbiBzb21lIGNh
c2VzLCBpdCBpcyBkZXNpcmFibGUgdG8gZW5jb2RlIGEgc3RlcmVvIGlucHV0IHN0cmVhbSBpbiBt
b25vIChlLmcuLAorIGJlY2F1c2UgdGhlIGJpdHJhdGUgaXMgdG9vIGxvdyB0byBlbmNvZGUgc3Rl
cmVvIHdpdGggc3VmZmljaWVudCBxdWFsaXR5KS4KK1RoZSBudW1iZXIgb2YgY2hhbm5lbHMgZW5j
b2RlZCBjYW4gYmUgc2VsZWN0ZWQgaW4gcmVhbC10aW1lLCBidXQgYnkgZGVmYXVsdCB0aGUKKyBy
ZWZlcmVuY2UgZW5jb2RlciBhdHRlbXB0cyB0byBtYWtlIHRoZSBiZXN0IGRlY2lzaW9uIHBvc3Np
YmxlIGdpdmVuIHRoZQorIGN1cnJlbnQgYml0cmF0ZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNl
Y3Rpb24gdGl0bGU9IkF1ZGlvIEJhbmR3aWR0aCIgdG9jPSJleGxjdWRlIj4KKzx0PgorVGhlIGF1
ZGlvIGJhbmR3aWR0aHMgc3VwcG9ydGVkIGJ5IE9wdXMgYXJlIGxpc3RlZCBpbgorIDx4cmVmIHRh
cmdldD0iYXVkaW8tYmFuZHdpZHRoIi8+LgorSnVzdCBsaWtlIGZvciB0aGUgbnVtYmVyIG9mIGNo
YW5uZWxzLCBhbnkgZGVjb2RlciBjYW4gZGVjb2RlIGF1ZGlvIGVuY29kZWQgYXQKKyBhbnkgYmFu
ZHdpZHRoLgorRm9yIGV4YW1wbGUsIGFueSBPcHVzIGRlY29kZXIgb3BlcmF0aW5nIGF0IDgmbmJz
cDtrSHogY2FuIGRlY29kZSBhIEZCIE9wdXMKKyBmcmFtZSwgYW5kIGFueSBPcHVzIGRlY29kZXIg
b3BlcmF0aW5nIGF0IDQ4Jm5ic3A7a0h6IGNhbiBkZWNvZGUgYSBOQiBmcmFtZS4KK1NpbWlsYXJs
eSwgdGhlIHJlZmVyZW5jZSBlbmNvZGVyIGNhbiB0YWtlIGEgNDgmbmJzcDtrSHogaW5wdXQgc2ln
bmFsIGFuZAorIGVuY29kZSBpdCBhcyBOQi4KK1RoZSBoaWdoZXIgdGhlIGF1ZGlvIGJhbmR3aWR0
aCwgdGhlIGhpZ2hlciB0aGUgcmVxdWlyZWQgYml0cmF0ZSB0byBhY2hpZXZlCisgYWNjZXB0YWJs
ZSBxdWFsaXR5LgorVGhlIGF1ZGlvIGJhbmR3aWR0aCBjYW4gYmUgZXhwbGljaXRseSBzcGVjaWZp
ZWQgaW4gcmVhbC10aW1lLCBidXQgYnkgZGVmYXVsdAorIHRoZSByZWZlcmVuY2UgZW5jb2RlciBh
dHRlbXB0cyB0byBtYWtlIHRoZSBiZXN0IGJhbmR3aWR0aCBkZWNpc2lvbiBwb3NzaWJsZQorIGdp
dmVuIHRoZSBjdXJyZW50IGJpdHJhdGUuCis8L3Q+Cis8L3NlY3Rpb24+CisKKworPHNlY3Rpb24g
dGl0bGU9IkZyYW1lIER1cmF0aW9uIiB0b2M9ImV4bGN1ZGUiPgorPHQ+CitPcHVzIGNhbiBlbmNv
ZGUgZnJhbWVzIG9mIDIuNSwgNSwgMTAsIDIwLCA0MCBvciA2MCZuYnNwO21zLgorSXQgY2FuIGFs
c28gY29tYmluZSBtdWx0aXBsZSBmcmFtZXMgaW50byBwYWNrZXRzIG9mIHVwIHRvIDEyMCZuYnNw
O21zLgorRm9yIHJlYWwtdGltZSBhcHBsaWNhdGlvbnMsIHNlbmRpbmcgZmV3ZXIgcGFja2V0cyBw
ZXIgc2Vjb25kIHJlZHVjZXMgdGhlCisgYml0cmF0ZSwgc2luY2UgaXQgcmVkdWNlcyB0aGUgb3Zl
cmhlYWQgZnJvbSBJUCwgVURQLCBhbmQgUlRQIGhlYWRlcnMuCitIb3dldmVyLCBpdCBpbmNyZWFz
ZXMgbGF0ZW5jeSBhbmQgc2Vuc2l0aXZpdHkgdG8gcGFja2V0IGxvc3NlcywgYXMgbG9zaW5nIG9u
ZQorIHBhY2tldCBjb25zdGl0dXRlcyBhIGxvc3Mgb2YgYSBiaWdnZXIgY2h1bmsgb2YgYXVkaW8u
CitJbmNyZWFzaW5nIHRoZSBmcmFtZSBkdXJhdGlvbiBhbHNvIHNsaWdodGx5IGltcHJvdmVzIGNv
ZGluZyBlZmZpY2llbmN5LCBidXQgdGhlCisgZ2FpbiBiZWNvbWVzIHNtYWxsIGZvciBmcmFtZSBz
aXplcyBhYm92ZSAyMCZuYnNwO21zLgorRm9yIHRoaXMgcmVhc29uLCAyMCZuYnNwO21zIGZyYW1l
cyBhcmUgYSBnb29kIGNob2ljZSBmb3IgbW9zdCBhcHBsaWNhdGlvbnMuCis8L3Q+Cis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIHRpdGxlPSJDb21wbGV4aXR5IiB0b2M9ImV4bGN1ZGUiPgorPHQ+CitU
aGVyZSBhcmUgdmFyaW91cyBhc3BlY3RzIG9mIHRoZSBPcHVzIGVuY29kaW5nIHByb2Nlc3Mgd2hl
cmUgdHJhZGUtb2ZmcworY2FuIGJlIG1hZGUgYmV0d2VlbiBDUFUgY29tcGxleGl0eSBhbmQgcXVh
bGl0eS9iaXRyYXRlLiBJbiB0aGUgcmVmZXJlbmNlCitlbmNvZGVyLCB0aGUgY29tcGxleGl0eSBp
cyBzZWxlY3RlZCB1c2luZyBhbiBpbnRlZ2VyIGZyb20gMCB0byAxMCwgd2hlcmUKKzAgaXMgdGhl
IGxvd2VzdCBjb21wbGV4aXR5IGFuZCAxMCBpcyB0aGUgaGlnaGVzdC4gRXhhbXBsZXMgb2YKK2Nv
bXB1dGF0aW9ucyBmb3Igd2hpY2ggc3VjaCB0cmFkZS1vZmZzIG1heSBvY2N1ciBhcmU6Cis8bGlz
dCBzdHlsZT0ic3ltYm9scyI+Cis8dD5UaGUgb3JkZXIgb2YgdGhlIHBpdGNoIGFuYWx5c2lzIHdo
aXRlbmluZyBmaWx0ZXIgPHhyZWYgdGFyZ2V0PSJXaGl0ZW5pbmciLz4sPC90PgorPHQ+VGhlIG9y
ZGVyIG9mIHRoZSBzaG9ydC10ZXJtIG5vaXNlIHNoYXBpbmcgZmlsdGVyLDwvdD4KKzx0PlRoZSBu
dW1iZXIgb2Ygc3RhdGVzIGluIGRlbGF5ZWQgZGVjaXNpb24gcXVhbnRpemF0aW9uIG9mIHRoZQor
cmVzaWR1YWwgc2lnbmFsLCBhbmQ8L3Q+Cis8dD5UaGUgdXNlIG9mIGNlcnRhaW4gYml0LXN0cmVh
bSBmZWF0dXJlcyBzdWNoIGFzIHZhcmlhYmxlIHRpbWUtZnJlcXVlbmN5CityZXNvbHV0aW9uIGFu
ZCB0aGUgcGl0Y2ggcG9zdC1maWx0ZXIuPC90PgorPC9saXN0PgorPC90PgorPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiB0aXRsZT0iUGFja2V0IExvc3MgUmVzaWxpZW5jZSIgdG9jPSJleGxjdWRlIj4K
Kzx0PgorQXVkaW8gY29kZWNzIG9mdGVuIGV4cGxvaXQgaW50ZXItZnJhbWUgY29ycmVsYXRpb25z
IHRvIHJlZHVjZSB0aGUKK2JpdHJhdGUgYXQgYSBjb3N0IGluIGVycm9yIHByb3BhZ2F0aW9uOiBh
ZnRlciBsb3Npbmcgb25lIHBhY2tldAorc2V2ZXJhbCBwYWNrZXRzIG5lZWQgdG8gYmUgcmVjZWl2
ZWQgYmVmb3JlIHRoZSBkZWNvZGVyIGlzIGFibGUgdG8KK2FjY3VyYXRlbHkgcmVjb25zdHJ1Y3Qg
dGhlIHNwZWVjaCBzaWduYWwuICBUaGUgZXh0ZW50IHRvIHdoaWNoIE9wdXMKK2V4cGxvaXRzIGlu
dGVyLWZyYW1lIGRlcGVuZGVuY2llcyBjYW4gYmUgYWRqdXN0ZWQgb24gdGhlIGZseSB0bworY2hv
b3NlIGEgdHJhZGUtb2ZmIGJldHdlZW4gYml0cmF0ZSBhbmQgYW1vdW50IG9mIGVycm9yIHByb3Bh
Z2F0aW9uLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iRm9yd2FyZCBFcnJv
ciBDb3JyZWN0aW9uIChGRUMpIiB0b2M9ImV4bGN1ZGUiPgorPHQ+CisgICBBbm90aGVyIG1lY2hh
bmlzbSBwcm92aWRpbmcgcm9idXN0bmVzcyBhZ2FpbnN0IHBhY2tldCBsb3NzIGlzIHRoZSBpbi1i
YW5kCisgICBGb3J3YXJkIEVycm9yIENvcnJlY3Rpb24gKEZFQykuICBQYWNrZXRzIHRoYXQgYXJl
IGRldGVybWluZWQgdG8KKyAgIGNvbnRhaW4gcGVyY2VwdHVhbGx5IGltcG9ydGFudCBzcGVlY2gg
aW5mb3JtYXRpb24sIHN1Y2ggYXMgb25zZXRzIG9yCisgICB0cmFuc2llbnRzLCBhcmUgZW5jb2Rl
ZCBhZ2FpbiBhdCBhIGxvd2VyIGJpdHJhdGUgYW5kIHRoaXMgcmUtZW5jb2RlZAorICAgaW5mb3Jt
YXRpb24gaXMgYWRkZWQgdG8gYSBzdWJzZXF1ZW50IHBhY2tldC4KKzwvdD4KKzwvc2VjdGlvbj4K
KworPHNlY3Rpb24gdGl0bGU9IkNvbnN0YW50L1ZhcmlhYmxlIEJpdHJhdGUiIHRvYz0iZXhsY3Vk
ZSI+Cis8dD4KK09wdXMgaXMgbW9yZSBlZmZpY2llbnQgd2hlbiBvcGVyYXRpbmcgd2l0aCB2YXJp
YWJsZSBiaXRyYXRlIChWQlIpLCB3aGljaCBpcwordGhlIGRlZmF1bHQuIEhvd2V2ZXIsIGluIHNv
bWUgKHJhcmUpIGFwcGxpY2F0aW9ucywgY29uc3RhbnQgYml0cmF0ZSAoQ0JSKQoraXMgcmVxdWly
ZWQuIFRoZXJlIGFyZSB0d28gbWFpbiByZWFzb25zIHRvIG9wZXJhdGUgaW4gQ0JSIG1vZGU6Cis8
bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5XaGVuIHRoZSB0cmFuc3BvcnQgb25seSBzdXBwb3J0
cyBhIGZpeGVkIHNpemUgZm9yIGVhY2ggY29tcHJlc3NlZCBmcmFtZTwvdD4KKzx0PldoZW4gZW5j
cnlwdGlvbiBpcyB1c2VkIGZvciBhbiBhdWRpbyBzdHJlYW0gdGhhdCBpcyBlaXRoZXIgaGlnaGx5
IGNvbnN0cmFpbmVkCisgICAoZS5nLiB5ZXMvbm8sIHJlY29yZGVkIHByb21wdHMpIG9yIGhpZ2hs
eSBzZW5zaXRpdmUgPHhyZWYgdGFyZ2V0PSJTUlRQLVZCUiI+PC94cmVmPiA8L3Q+Cis8L2xpc3Q+
CisKK1doZW4gbG93LWxhdGVuY3kgdHJhbnNtaXNzaW9uIGlzIHJlcXVpcmVkIG92ZXIgYSByZWxh
dGl2ZWx5IHNsb3cgY29ubmVjdGlvbiwgdGhlbgorY29uc3RyYWluZWQgVkJSIGNhbiBhbHNvIGJl
IHVzZWQuIFRoaXMgdXNlcyBWQlIgaW4gYSB3YXkgdGhhdCBzaW11bGF0ZXMgYQorImJpdCByZXNl
cnZvaXIiIGFuZCBpcyBlcXVpdmFsZW50IHRvIHdoYXQgTVAzIChNUEVHIDEsIExheWVyIDMpIGFu
ZAorQUFDIChBZHZhbmNlZCBBdWRpbyBDb2RpbmcpIGNhbGwgQ0JSIChpLmUuLCBub3QgdHJ1ZQor
Q0JSIGR1ZSB0byB0aGUgYml0IHJlc2Vydm9pcikuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0
aW9uIHRpdGxlPSJEaXNjb250aW51b3VzIFRyYW5zbWlzc2lvbiAoRFRYKSIgdG9jPSJleGxjdWRl
Ij4KKzx0PgorICAgRGlzY29udGludW91cyBUcmFuc21pc3Npb24gKERUWCkgcmVkdWNlcyB0aGUg
Yml0cmF0ZSBkdXJpbmcgc2lsZW5jZQorICAgb3IgYmFja2dyb3VuZCBub2lzZS4gIFdoZW4gRFRY
IGlzIGVuYWJsZWQsIG9ubHkgb25lIGZyYW1lIGlzIGVuY29kZWQKKyAgIGV2ZXJ5IDQwMCBtaWxs
aXNlY29uZHMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiBhbmNob3I9Im1vZGVzIiB0aXRsZT0iSW50ZXJuYWwgRnJhbWluZyI+CisKKzx0
PgorVGhlIE9wdXMgZW5jb2RlciBwcm9kdWNlcyAicGFja2V0cyIsIHdoaWNoIGFyZSBlYWNoIGEg
Y29udGlndW91cyBzZXQgb2YgYnl0ZXMKKyBtZWFudCB0byBiZSB0cmFuc21pdHRlZCBhcyBhIHNp
bmdsZSB1bml0LgorVGhlIHBhY2tldHMgZGVzY3JpYmVkIGhlcmUgZG8gbm90IGluY2x1ZGUgc3Vj
aCB0aGluZ3MgYXMgSVAsIFVEUCwgb3IgUlRQCisgaGVhZGVycyB3aGljaCBhcmUgbm9ybWFsbHkg
Zm91bmQgaW4gYSB0cmFuc3BvcnQtbGF5ZXIgcGFja2V0LgorQSBzaW5nbGUgcGFja2V0IG1heSBj
b250YWluIG11bHRpcGxlIGF1ZGlvIGZyYW1lcywgc28gbG9uZyBhcyB0aGV5IHNoYXJlIGEKKyBj
b21tb24gc2V0IG9mIHBhcmFtZXRlcnMsIGluY2x1ZGluZyB0aGUgb3BlcmF0aW5nIG1vZGUsIGF1
ZGlvIGJhbmR3aWR0aCwgZnJhbWUKKyBzaXplLCBhbmQgY2hhbm5lbCBjb3VudCAobW9ubyB2cy4g
c3RlcmVvKS4KK1RoaXMgc2VjdGlvbiBkZXNjcmliZXMgdGhlIHBvc3NpYmxlIGNvbWJpbmF0aW9u
cyBvZiB0aGVzZSBwYXJhbWV0ZXJzIGFuZCB0aGUKKyBpbnRlcm5hbCBmcmFtaW5nIHVzZWQgdG8g
cGFjayBtdWx0aXBsZSBmcmFtZXMgaW50byBhIHNpbmdsZSBwYWNrZXQuCitUaGlzIGZyYW1pbmcg
aXMgbm90IHNlbGYtZGVsaW1pdGluZy4KK0luc3RlYWQsIGl0IGFzc3VtZXMgdGhhdCBhIGhpZ2hl
ciBsYXllciAoc3VjaCBhcyBVRFAgb3IgUlRQIDx4cmVmIHRhcmdldD0nUkZDMzU1MCcvPgorb3Ig
T2dnIDx4cmVmIHRhcmdldD0nUkZDMzUzMycvPiBvciBNYXRyb3NrYSA8eHJlZiB0YXJnZXQ9J01h
dHJvc2thLXdlYnNpdGUnLz4pCisgd2lsbCBjb21tdW5pY2F0ZSB0aGUgbGVuZ3RoLCBpbiBieXRl
cywgb2YgdGhlIHBhY2tldCwgYW5kIGl0IHVzZXMgdGhpcworIGluZm9ybWF0aW9uIHRvIHJlZHVj
ZSB0aGUgZnJhbWluZyBvdmVyaGVhZCBpbiB0aGUgcGFja2V0IGl0c2VsZi4KK0EgZGVjb2RlciBp
bXBsZW1lbnRhdGlvbiBNVVNUIHN1cHBvcnQgdGhlIGZyYW1pbmcgZGVzY3JpYmVkIGluIHRoaXMg
c2VjdGlvbi4KK0FuIGFsdGVybmF0aXZlLCBzZWxmLWRlbGltaXRpbmcgdmFyaWFudCBvZiB0aGUg
ZnJhbWluZyBpcyBkZXNjcmliZWQgaW4KKyA8eHJlZiB0YXJnZXQ9InNlbGYtZGVsaW1pdGluZy1m
cmFtaW5nIi8+LgorU3VwcG9ydCBmb3IgdGhhdCB2YXJpYW50IGlzIE9QVElPTkFMLgorPC90Pgor
Cis8dD4KK0FsbCBiaXQgZGlhZ3JhbXMgaW4gdGhpcyBkb2N1bWVudCBudW1iZXIgdGhlIGJpdHMg
c28gdGhhdCBiaXQgMCBpcyB0aGUgbW9zdAorIHNpZ25pZmljYW50IGJpdCBvZiB0aGUgZmlyc3Qg
Ynl0ZSwgYW5kIGJpdCA3IGlzIHRoZSBsZWFzdCBzaWduaWZpY2FudC4KK0JpdCA4IGlzIHRodXMg
dGhlIG1vc3Qgc2lnbmlmaWNhbnQgYml0IG9mIHRoZSBzZWNvbmQgYnl0ZSwgZXRjLgorV2VsbC1m
b3JtZWQgT3B1cyBwYWNrZXRzIG9iZXkgY2VydGFpbiByZXF1aXJlbWVudHMsIG1hcmtlZCBbUjFd
IHRocm91Z2ggW1I3XQorIGJlbG93LgorVGhlc2UgYXJlIHN1bW1hcml6ZWQgaW4gPHhyZWYgdGFy
Z2V0PSJtYWxmb3JtZWQtcGFja2V0cyIvPiBhbG9uZyB3aXRoCisgYXBwcm9wcmlhdGUgbWVhbnMg
b2YgaGFuZGxpbmcgbWFsZm9ybWVkIHBhY2tldHMuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0i
dG9jX2J5dGUiIHRpdGxlPSJUaGUgVE9DIEJ5dGUiPgorPHQgYW5jaG9yPSJSMSI+CitBIHdlbGwt
Zm9ybWVkIE9wdXMgcGFja2V0IE1VU1QgY29udGFpbiBhdCBsZWFzdCBvbmUgYnl0ZSZuYnNwO1tS
MV0uCitUaGlzIGJ5dGUgZm9ybXMgYSB0YWJsZS1vZi1jb250ZW50cyAoVE9DKSBoZWFkZXIgdGhh
dCBzaWduYWxzIHdoaWNoIG9mIHRoZQorIHZhcmlvdXMgbW9kZXMgYW5kIGNvbmZpZ3VyYXRpb25z
IGEgZ2l2ZW4gcGFja2V0IHVzZXMuCitJdCBpcyBjb21wb3NlZCBvZiBhIGNvbmZpZ3VyYXRpb24g
bnVtYmVyLCAiY29uZmlnIiwgYSBzdGVyZW8gZmxhZywgInMiLCBhbmQgYQorIGZyYW1lIGNvdW50
IGNvZGUsICJjIiwgYXJyYW5nZWQgYXMgaWxsdXN0cmF0ZWQgaW4KKyA8eHJlZiB0YXJnZXQ9InRv
Y19ieXRlX2ZpZyIvPi4KK0EgZGVzY3JpcHRpb24gb2YgZWFjaCBvZiB0aGVzZSBmaWVsZHMgZm9s
bG93cy4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9InRvY19ieXRlX2ZpZyIgdGl0bGU9IlRoZSBU
T0MgQnl0ZSI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAwCisgMCAxIDIg
MyA0IDUgNiA3CisrLSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxzfCBjIHwKKystKy0rLSst
Ky0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitUaGUgdG9wIGZpdmUg
Yml0cyBvZiB0aGUgVE9DIGJ5dGUsIGxhYmVsZWQgImNvbmZpZyIsIGVuY29kZSBvbmUgb2YgMzIg
cG9zc2libGUKKyBjb25maWd1cmF0aW9ucyBvZiBvcGVyYXRpbmcgbW9kZSwgYXVkaW8gYmFuZHdp
ZHRoLCBhbmQgZnJhbWUgc2l6ZS4KK0FzIGRlc2NyaWJlZCwgdGhlIExQIChTSUxLKSBsYXllciBh
bmQgTURDVCAoQ0VMVCkgbGF5ZXIgY2FuIGJlIGNvbWJpbmVkIGluIHRocmVlIHBvc3NpYmxlCisg
b3BlcmF0aW5nIG1vZGVzOgorPGxpc3Qgc3R5bGU9Im51bWJlcnMiPgorPHQ+QSBTSUxLLW9ubHkg
bW9kZSBmb3IgdXNlIGluIGxvdyBiaXRyYXRlIGNvbm5lY3Rpb25zIHdpdGggYW4gYXVkaW8gYmFu
ZHdpZHRoCisgb2YgV0Igb3IgbGVzcyw8L3Q+Cis8dD5BIEh5YnJpZCAoU0lMSytDRUxUKSBtb2Rl
IGZvciBTV0Igb3IgRkIgc3BlZWNoIGF0IG1lZGl1bSBiaXRyYXRlcywgYW5kPC90PgorPHQ+QSBD
RUxULW9ubHkgbW9kZSBmb3IgdmVyeSBsb3cgZGVsYXkgc3BlZWNoIHRyYW5zbWlzc2lvbiBhcyB3
ZWxsIGFzIG11c2ljCisgdHJhbnNtaXNzaW9uIChOQiB0byBGQikuPC90PgorPC9saXN0PgorVGhl
IDMyIHBvc3NpYmxlIGNvbmZpZ3VyYXRpb25zIGVhY2ggaWRlbnRpZnkgd2hpY2ggb25lIG9mIHRo
ZXNlIG9wZXJhdGluZyBtb2RlcworIHRoZSBwYWNrZXQgdXNlcywgYXMgd2VsbCBhcyB0aGUgYXVk
aW8gYmFuZHdpZHRoIGFuZCB0aGUgZnJhbWUgc2l6ZS4KKzx4cmVmIHRhcmdldD0iY29uZmlnX2Jp
dHMiLz4gbGlzdHMgdGhlIHBhcmFtZXRlcnMgZm9yIGVhY2ggY29uZmlndXJhdGlvbi4KKzwvdD4K
Kzx0ZXh0dGFibGUgYW5jaG9yPSJjb25maWdfYml0cyIgdGl0bGU9IlRPQyBCeXRlIENvbmZpZ3Vy
YXRpb24gUGFyYW1ldGVycyI+Cis8dHRjb2w+Q29uZmlndXJhdGlvbiBOdW1iZXIocyk8L3R0Y29s
PgorPHR0Y29sPk1vZGU8L3R0Y29sPgorPHR0Y29sPkJhbmR3aWR0aDwvdHRjb2w+Cis8dHRjb2w+
RnJhbWUgU2l6ZXM8L3R0Y29sPgorPGM+MC4uLjM8L2M+ICAgPGM+U0lMSy1vbmx5PC9jPiA8Yz5O
QjwvYz4gIDxjPjEwLCAyMCwgNDAsIDYwJm5ic3A7bXM8L2M+Cis8Yz40Li4uNzwvYz4gICA8Yz5T
SUxLLW9ubHk8L2M+IDxjPk1CPC9jPiAgPGM+MTAsIDIwLCA0MCwgNjAmbmJzcDttczwvYz4KKzxj
PjguLi4xMTwvYz4gIDxjPlNJTEstb25seTwvYz4gPGM+V0I8L2M+ICA8Yz4xMCwgMjAsIDQwLCA2
MCZuYnNwO21zPC9jPgorPGM+MTIuLi4xMzwvYz4gPGM+SHlicmlkPC9jPiAgICA8Yz5TV0I8L2M+
IDxjPjEwLCAyMCZuYnNwO21zPC9jPgorPGM+MTQuLi4xNTwvYz4gPGM+SHlicmlkPC9jPiAgICA8
Yz5GQjwvYz4gIDxjPjEwLCAyMCZuYnNwO21zPC9jPgorPGM+MTYuLi4xOTwvYz4gPGM+Q0VMVC1v
bmx5PC9jPiA8Yz5OQjwvYz4gIDxjPjIuNSwgNSwgMTAsIDIwJm5ic3A7bXM8L2M+Cis8Yz4yMC4u
LjIzPC9jPiA8Yz5DRUxULW9ubHk8L2M+IDxjPldCPC9jPiAgPGM+Mi41LCA1LCAxMCwgMjAmbmJz
cDttczwvYz4KKzxjPjI0Li4uMjc8L2M+IDxjPkNFTFQtb25seTwvYz4gPGM+U1dCPC9jPiA8Yz4y
LjUsIDUsIDEwLCAyMCZuYnNwO21zPC9jPgorPGM+MjguLi4zMTwvYz4gPGM+Q0VMVC1vbmx5PC9j
PiA8Yz5GQjwvYz4gIDxjPjIuNSwgNSwgMTAsIDIwJm5ic3A7bXM8L2M+Cis8L3RleHR0YWJsZT4K
Kzx0PgorVGhlIGNvbmZpZ3VyYXRpb24gbnVtYmVycyBpbiBlYWNoIHJhbmdlIChlLmcuLCAwLi4u
MyBmb3IgTkIgU0lMSy1vbmx5KQorIGNvcnJlc3BvbmQgdG8gdGhlIHZhcmlvdXMgY2hvaWNlcyBv
ZiBmcmFtZSBzaXplLCBpbiB0aGUgc2FtZSBvcmRlci4KK0ZvciBleGFtcGxlLCBjb25maWd1cmF0
aW9uIDAgaGFzIGEgMTAmbmJzcDttcyBmcmFtZSBzaXplIGFuZCBjb25maWd1cmF0aW9uIDMKKyBo
YXMgYSA2MCZuYnNwO21zIGZyYW1lIHNpemUuCis8L3Q+CisKKzx0PgorT25lIGFkZGl0aW9uYWwg
Yml0LCBsYWJlbGVkICJzIiwgc2lnbmFscyBtb25vIHZzLiBzdGVyZW8sIHdpdGggMCBpbmRpY2F0
aW5nCisgbW9ubyBhbmQgMSBpbmRpY2F0aW5nIHN0ZXJlby4KKzwvdD4KKworPHQ+CitUaGUgcmVt
YWluaW5nIHR3byBiaXRzIG9mIHRoZSBUT0MgYnl0ZSwgbGFiZWxlZCAiYyIsIGNvZGUgdGhlIG51
bWJlciBvZiBmcmFtZXMKKyBwZXIgcGFja2V0IChjb2RlcyAwIHRvIDMpIGFzIGZvbGxvd3M6Cis8
bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD4wOiAgICAxIGZyYW1lIGluIHRoZSBwYWNrZXQ8L3Q+
Cis8dD4xOiAgICAyIGZyYW1lcyBpbiB0aGUgcGFja2V0LCBlYWNoIHdpdGggZXF1YWwgY29tcHJl
c3NlZCBzaXplPC90PgorPHQ+MjogICAgMiBmcmFtZXMgaW4gdGhlIHBhY2tldCwgd2l0aCBkaWZm
ZXJlbnQgY29tcHJlc3NlZCBzaXplczwvdD4KKzx0PjM6ICAgIGFuIGFyYml0cmFyeSBudW1iZXIg
b2YgZnJhbWVzIGluIHRoZSBwYWNrZXQ8L3Q+Cis8L2xpc3Q+CitUaGlzIGRyYWZ0IHJlZmVycyB0
byBhIHBhY2tldCBhcyBhIGNvZGUgMCBwYWNrZXQsIGNvZGUgMSBwYWNrZXQsIGV0Yy4sIGJhc2Vk
IG9uCisgdGhlIHZhbHVlIG9mICJjIi4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0
aXRsZT0iRnJhbWUgUGFja2luZyI+CisKKzx0PgorVGhpcyBzZWN0aW9uIGRlc2NyaWJlcyBob3cg
ZnJhbWVzIGFyZSBwYWNrZWQgYWNjb3JkaW5nIHRvIGVhY2ggcG9zc2libGUgdmFsdWUKKyBvZiAi
YyIgaW4gdGhlIFRPQyBieXRlLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImZyYW1lLWxlbmd0
aC1jb2RpbmciIHRpdGxlPSJGcmFtZSBMZW5ndGggQ29kaW5nIj4KKzx0PgorV2hlbiBhIHBhY2tl
dCBjb250YWlucyBtdWx0aXBsZSBWQlIgZnJhbWVzIChpLmUuLCBjb2RlIDIgb3IgMyksIHRoZSBj
b21wcmVzc2VkCisgbGVuZ3RoIG9mIG9uZSBvciBtb3JlIG9mIHRoZXNlIGZyYW1lcyBpcyBpbmRp
Y2F0ZWQgd2l0aCBhIG9uZS0gb3IgdHdvLWJ5dGUKKyBzZXF1ZW5jZSwgd2l0aCB0aGUgbWVhbmlu
ZyBvZiB0aGUgZmlyc3QgYnl0ZSBhcyBmb2xsb3dzOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgor
PHQ+MDogICAgICAgICAgTm8gZnJhbWUgKGRpc2NvbnRpbnVvdXMgdHJhbnNtaXNzaW9uIChEVFgp
IG9yIGxvc3QgcGFja2V0KTwvdD4KKzx0PjEuLi4yNTE6ICAgIExlbmd0aCBvZiB0aGUgZnJhbWUg
aW4gYnl0ZXM8L3Q+Cis8dD4yNTIuLi4yNTU6ICBBIHNlY29uZCBieXRlIGlzIG5lZWRlZC4gVGhl
IHRvdGFsIGxlbmd0aCBpcyAoc2Vjb25kX2J5dGUqNCkrZmlyc3RfYnl0ZTwvdD4KKzwvbGlzdD4K
KzwvdD4KKworPHQ+CitUaGUgc3BlY2lhbCBsZW5ndGggMCBpbmRpY2F0ZXMgdGhhdCBubyBmcmFt
ZSBpcyBhdmFpbGFibGUsIGVpdGhlciBiZWNhdXNlIGl0Cisgd2FzIGRyb3BwZWQgZHVyaW5nIHRy
YW5zbWlzc2lvbiBieSBzb21lIGludGVybWVkaWFyeSBvciBiZWNhdXNlIHRoZSBlbmNvZGVyCisg
Y2hvc2Ugbm90IHRvIHRyYW5zbWl0IGl0LgorQW55IE9wdXMgZnJhbWUgaW4gYW55IG1vZGUgTUFZ
IGhhdmUgYSBsZW5ndGggb2YgMC4KKzwvdD4KKworPHQ+CitUaGUgbWF4aW11bSByZXByZXNlbnRh
YmxlIGxlbmd0aCBpcyAyNTUqNCsyNTU9MTI3NSZuYnNwO2J5dGVzLgorRm9yIDIwJm5ic3A7bXMg
ZnJhbWVzLCB0aGlzIHJlcHJlc2VudHMgYSBiaXRyYXRlIG9mIDUxMCZuYnNwO2tiL3MsIHdoaWNo
IGlzCisgYXBwcm94aW1hdGVseSB0aGUgaGlnaGVzdCB1c2VmdWwgcmF0ZSBmb3IgbG9zc2lseSBj
b21wcmVzc2VkIGZ1bGxiYW5kIHN0ZXJlbworIG11c2ljLgorQmV5b25kIHRoaXMgcG9pbnQsIGxv
c3NsZXNzIGNvZGVjcyBhcmUgbW9yZSBhcHByb3ByaWF0ZS4KK0l0IGlzIGFsc28gcm91Z2hseSB0
aGUgbWF4aW11bSB1c2VmdWwgcmF0ZSBvZiB0aGUgTURDVCBsYXllciwgYXMgc2hvcnRseQorIHRo
ZXJlYWZ0ZXIgcXVhbGl0eSBubyBsb25nZXIgaW1wcm92ZXMgd2l0aCBhZGRpdGlvbmFsIGJpdHMg
ZHVlIHRvIGxpbWl0YXRpb25zCisgb24gdGhlIGNvZGVib29rIHNpemVzLgorPC90PgorCis8dCBh
bmNob3I9IlIyIj4KK05vIGxlbmd0aCBpcyB0cmFuc21pdHRlZCBmb3IgdGhlIGxhc3QgZnJhbWUg
aW4gYSBWQlIgcGFja2V0LCBvciBmb3IgYW55IG9mIHRoZQorIGZyYW1lcyBpbiBhIENCUiBwYWNr
ZXQsIGFzIGl0IGNhbiBiZSBpbmZlcnJlZCBmcm9tIHRoZSB0b3RhbCBzaXplIG9mIHRoZQorIHBh
Y2tldCBhbmQgdGhlIHNpemUgb2YgYWxsIG90aGVyIGRhdGEgaW4gdGhlIHBhY2tldC4KK0hvd2V2
ZXIsIHRoZSBsZW5ndGggb2YgYW55IGluZGl2aWR1YWwgZnJhbWUgTVVTVCBOT1QgZXhjZWVkCisg
MTI3NSZuYnNwO2J5dGVzJm5ic3A7W1IyXSwgdG8gYWxsb3cgZm9yIHJlcGFja2V0aXphdGlvbiBi
eSBnYXRld2F5cywKKyBjb25mZXJlbmNlIGJyaWRnZXMsIG9yIG90aGVyIHNvZnR3YXJlLgorPC90
PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQ29kZSAwOiBPbmUgRnJhbWUgaW4gdGhl
IFBhY2tldCI+CisKKzx0PgorRm9yIGNvZGUmbmJzcDswIHBhY2tldHMsIHRoZSBUT0MgYnl0ZSBp
cyBpbW1lZGlhdGVseSBmb2xsb3dlZCBieSBOLTEmbmJzcDtieXRlcworIG9mIGNvbXByZXNzZWQg
ZGF0YSBmb3IgYSBzaW5nbGUgZnJhbWUgKHdoZXJlIE4gaXMgdGhlIHNpemUgb2YgdGhlIHBhY2tl
dCksCisgYXMgaWxsdXN0cmF0ZWQgaW4gPHhyZWYgdGFyZ2V0PSJjb2RlMF9wYWNrZXQiLz4uCis8
L3Q+Cis8ZmlndXJlIGFuY2hvcj0iY29kZTBfcGFja2V0IiB0aXRsZT0iQSBDb2RlIDAgUGFja2V0
IiBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAg
ICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAg
IDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUg
NiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rCit8IGNvbmZpZyAgfHN8MHwwfCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAgICAg
ICAgICAgIENvbXByZXNzZWQgZnJhbWUgMSAoTi0xIGJ5dGVzKS4uLiAgICAgICAgICA6Cis6ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvc2Vj
dGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IkNvZGUgMTogVHdvIEZyYW1lcyBpbiB0aGUgUGFja2V0
LCBFYWNoIHdpdGggRXF1YWwgQ29tcHJlc3NlZCBTaXplIj4KKzx0IGFuY2hvcj0iUjMiPgorRm9y
IGNvZGUgMSBwYWNrZXRzLCB0aGUgVE9DIGJ5dGUgaXMgaW1tZWRpYXRlbHkgZm9sbG93ZWQgYnkg
dGhlCisgKE4tMSkvMiZuYnNwO2J5dGVzIG9mIGNvbXByZXNzZWQgZGF0YSBmb3IgdGhlIGZpcnN0
IGZyYW1lLCBmb2xsb3dlZCBieQorIChOLTEpLzImbmJzcDtieXRlcyBvZiBjb21wcmVzc2VkIGRh
dGEgZm9yIHRoZSBzZWNvbmQgZnJhbWUsIGFzIGlsbHVzdHJhdGVkIGluCisgPHhyZWYgdGFyZ2V0
PSJjb2RlMV9wYWNrZXQiLz4uCitUaGUgbnVtYmVyIG9mIHBheWxvYWQgYnl0ZXMgYXZhaWxhYmxl
IGZvciBjb21wcmVzc2VkIGRhdGEsIE4tMSwgTVVTVCBiZSBldmVuCisgZm9yIGFsbCBjb2RlIDEg
cGFja2V0cyZuYnNwO1tSM10uCis8L3Q+Cis8ZmlndXJlIGFuY2hvcj0iY29kZTFfcGFja2V0IiB0
aXRsZT0iQSBDb2RlIDEgUGFja2V0IiBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJj
ZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAg
ICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1
IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8IGNvbmZpZyAgfHN8
MHwxfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0r
LSstKy0rLSstKy0rLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDoKK3wgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxICgoTi0xKS8yIGJ5dGVzKS4u
LiAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAg
ICAgIENvbXByZXNzZWQgZnJhbWUgMiAoKE4tMSkvMiBieXRlcykuLi4gICAgICAgICAgICAgfAor
OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0rLSstKy0r
LSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11d
PjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQ29k
ZSAyOiBUd28gRnJhbWVzIGluIHRoZSBQYWNrZXQsIHdpdGggRGlmZmVyZW50IENvbXByZXNzZWQg
U2l6ZXMiPgorPHQgYW5jaG9yPSJSNCI+CitGb3IgY29kZSAyIHBhY2tldHMsIHRoZSBUT0MgYnl0
ZSBpcyBmb2xsb3dlZCBieSBhIG9uZS0gb3IgdHdvLWJ5dGUgc2VxdWVuY2UKKyBpbmRpY2F0aW5n
IHRoZSBsZW5ndGggb2YgdGhlIGZpcnN0IGZyYW1lIChtYXJrZWQgTjEgaW4gPHhyZWYgdGFyZ2V0
PSdjb2RlMl9wYWNrZXQnLz4pLAorIGZvbGxvd2VkIGJ5IE4xIGJ5dGVzIG9mIGNvbXByZXNzZWQg
ZGF0YSBmb3IgdGhlIGZpcnN0IGZyYW1lLgorVGhlIHJlbWFpbmluZyBOLU4xLTIgb3IgTi1OMS0z
Jm5ic3A7Ynl0ZXMgYXJlIHRoZSBjb21wcmVzc2VkIGRhdGEgZm9yIHRoZQorIHNlY29uZCBmcmFt
ZS4KK1RoaXMgaXMgaWxsdXN0cmF0ZWQgaW4gPHhyZWYgdGFyZ2V0PSJjb2RlMl9wYWNrZXQiLz4u
CitBIGNvZGUgMiBwYWNrZXQgTVVTVCBjb250YWluIGVub3VnaCBieXRlcyB0byByZXByZXNlbnQg
YSB2YWxpZCBsZW5ndGguCitGb3IgZXhhbXBsZSwgYSAxLWJ5dGUgY29kZSAyIHBhY2tldCBpcyBh
bHdheXMgaW52YWxpZCwgYW5kIGEgMi1ieXRlIGNvZGUgMgorIHBhY2tldCB3aG9zZSBzZWNvbmQg
Ynl0ZSBpcyBpbiB0aGUgcmFuZ2UgMjUyLi4uMjU1IGlzIGFsc28gaW52YWxpZC4KK1RoZSBsZW5n
dGggb2YgdGhlIGZpcnN0IGZyYW1lLCBOMSwgTVVTVCBhbHNvIGJlIG5vIGxhcmdlciB0aGFuIHRo
ZSBzaXplIG9mIHRoZQorIHBheWxvYWQgcmVtYWluaW5nIGFmdGVyIGRlY29kaW5nIHRoYXQgbGVu
Z3RoIGZvciBhbGwgY29kZSAyIHBhY2tldHMmbmJzcDtbUjRdLgorVGhpcyBtYWtlcywgZm9yIGV4
YW1wbGUsIGEgMi1ieXRlIGNvZGUgMiBwYWNrZXQgd2l0aCBhIHNlY29uZCBieXRlIGluIHRoZSBy
YW5nZQorIDEuLi4yNTEgaW52YWxpZCBhcyB3ZWxsICh0aGUgb25seSB2YWxpZCAyLWJ5dGUgY29k
ZSAyIHBhY2tldCBpcyBvbmUgd2hlcmUgdGhlCisgbGVuZ3RoIG9mIGJvdGggZnJhbWVzIGlzIHpl
cm8pLgorPC90PgorPGZpZ3VyZSBhbmNob3I9ImNvZGUyX3BhY2tldCIgdGl0bGU9IkEgQ29kZSAy
IFBhY2tldCIgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAg
ICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAy
IDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxzfDF8MHwgTjEgKDEtMiBi
eXRlcyk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Cit8ICAgICAg
ICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxIChOMSBieXRlcykuLi4gICAgICAgICAgICAgICAg
fAorOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgICAgICAgICAgIENv
bXByZXNzZWQgZnJhbWUgMi4uLiAgICAgICAgICAgICAgICAgICAgIDoKKzogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC9zZWN0aW9uPgorCis8
c2VjdGlvbiB0aXRsZT0iQ29kZSAzOiBBIFNpZ25hbGVkIE51bWJlciBvZiBGcmFtZXMgaW4gdGhl
IFBhY2tldCI+Cis8dCBhbmNob3I9IlI1Ij4KK0NvZGUgMyBwYWNrZXRzIHNpZ25hbCB0aGUgbnVt
YmVyIG9mIGZyYW1lcywgYXMgd2VsbCBhcyBhZGRpdGlvbmFsCisgcGFkZGluZywgY2FsbGVkICJP
cHVzIHBhZGRpbmciIHRvIGluZGljYXRlIHRoYXQgdGhpcyBwYWRkaW5nIGlzIGFkZGVkIGF0IHRo
ZQorIE9wdXMgbGF5ZXIsIHJhdGhlciB0aGFuIGF0IHRoZSB0cmFuc3BvcnQgbGF5ZXIuCitDb2Rl
IDMgcGFja2V0cyBNVVNUIGhhdmUgYXQgbGVhc3QgMiBieXRlcyZuYnNwO1tSNixSN10uCitUaGUg
VE9DIGJ5dGUgaXMgZm9sbG93ZWQgYnkgYSBieXRlIGVuY29kaW5nIHRoZSBudW1iZXIgb2YgZnJh
bWVzIGluIHRoZSBwYWNrZXQKKyBpbiBiaXRzIDIgdG8gNyAobWFya2VkICJNIiBpbiA8eHJlZiB0
YXJnZXQ9J2ZyYW1lX2NvdW50X2J5dGUnLz4pLCB3aXRoIGJpdCAxIGluZGljYXRpbmcgd2hldGhl
cgorIG9yIG5vdCBPcHVzIHBhZGRpbmcgaXMgaW5zZXJ0ZWQgKG1hcmtlZCAicCIgaW4gPHhyZWYg
dGFyZ2V0PSdmcmFtZV9jb3VudF9ieXRlJy8+KSwgYW5kIGJpdCAwCisgaW5kaWNhdGluZyBWQlIg
KG1hcmtlZCAidiIgaW4gPHhyZWYgdGFyZ2V0PSdmcmFtZV9jb3VudF9ieXRlJy8+KS4KK00gTVVT
VCBOT1QgYmUgemVybywgYW5kIHRoZSBhdWRpbyBkdXJhdGlvbiBjb250YWluZWQgd2l0aGluIGEg
cGFja2V0IE1VU1QgTk9UCisgZXhjZWVkIDEyMCZuYnNwO21zJm5ic3A7W1I1XS4KK1RoaXMgbGlt
aXRzIHRoZSBtYXhpbXVtIGZyYW1lIGNvdW50IGZvciBhbnkgZnJhbWUgc2l6ZSB0byA0OCAoZm9y
IDIuNSZuYnNwO21zCisgZnJhbWVzKSwgd2l0aCBsb3dlciBsaW1pdHMgZm9yIGxvbmdlciBmcmFt
ZSBzaXplcy4KKzx4cmVmIHRhcmdldD0iZnJhbWVfY291bnRfYnl0ZSIvPiBpbGx1c3RyYXRlcyB0
aGUgbGF5b3V0IG9mIHRoZSBmcmFtZSBjb3VudAorIGJ5dGUuCis8L3Q+Cis8ZmlndXJlIGFuY2hv
cj0iZnJhbWVfY291bnRfYnl0ZSIgdGl0bGU9IlRoZSBmcmFtZSBjb3VudCBieXRlIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAKKyAwIDEgMiAzIDQgNSA2IDcKKystKy0r
LSstKy0rLSstKy0rCit8dnxwfCAgICAgTSAgICAgfAorKy0rLSstKy0rLSstKy0rLSsKK11dPjwv
YXJ0d29yaz4KKzwvZmlndXJlPgorPHQ+CitXaGVuIE9wdXMgcGFkZGluZyBpcyB1c2VkLCB0aGUg
bnVtYmVyIG9mIGJ5dGVzIG9mIHBhZGRpbmcgaXMgZW5jb2RlZCBpbiB0aGUKKyBieXRlcyBmb2xs
b3dpbmcgdGhlIGZyYW1lIGNvdW50IGJ5dGUuCitWYWx1ZXMgZnJvbSAwLi4uMjU0IGluZGljYXRl
IHRoYXQgMC4uLjI1NCZuYnNwO2J5dGVzIG9mIHBhZGRpbmcgYXJlIGluY2x1ZGVkLAorIGluIGFk
ZGl0aW9uIHRvIHRoZSBieXRlKHMpIHVzZWQgdG8gaW5kaWNhdGUgdGhlIHNpemUgb2YgdGhlIHBh
ZGRpbmcuCitJZiB0aGUgdmFsdWUgaXMgMjU1LCB0aGVuIHRoZSBzaXplIG9mIHRoZSBhZGRpdGlv
bmFsIHBhZGRpbmcgaXMgMjU0Jm5ic3A7Ynl0ZXMsCisgcGx1cyB0aGUgcGFkZGluZyB2YWx1ZSBl
bmNvZGVkIGluIHRoZSBuZXh0IGJ5dGUuCitUaGVyZSBNVVNUIGJlIGF0IGxlYXN0IG9uZSBtb3Jl
IGJ5dGUgaW4gdGhlIHBhY2tldCBpbiB0aGlzIGNhc2UmbmJzcDtbUjYsUjddLgorVGhlIGFkZGl0
aW9uYWwgcGFkZGluZyBieXRlcyBhcHBlYXIgYXQgdGhlIGVuZCBvZiB0aGUgcGFja2V0LCBhbmQg
TVVTVCBiZSBzZXQKKyB0byB6ZXJvIGJ5IHRoZSBlbmNvZGVyIHRvIGF2b2lkIGNyZWF0aW5nIGEg
Y292ZXJ0IGNoYW5uZWwuCitUaGUgZGVjb2RlciBNVVNUIGFjY2VwdCBhbnkgdmFsdWUgZm9yIHRo
ZSBwYWRkaW5nIGJ5dGVzLCBob3dldmVyLgorPC90PgorPHQ+CitBbHRob3VnaCB0aGlzIGVuY29k
aW5nIHByb3ZpZGVzIG11bHRpcGxlIHdheXMgdG8gaW5kaWNhdGUgYSBnaXZlbiBudW1iZXIgb2YK
KyBwYWRkaW5nIGJ5dGVzLCBlYWNoIHVzZXMgYSBkaWZmZXJlbnQgbnVtYmVyIG9mIGJ5dGVzIHRv
IGluZGljYXRlIHRoZSBwYWRkaW5nCisgc2l6ZSwgYW5kIHRodXMgd2lsbCBpbmNyZWFzZSB0aGUg
dG90YWwgcGFja2V0IHNpemUgYnkgYSBkaWZmZXJlbnQgYW1vdW50LgorRm9yIGV4YW1wbGUsIHRv
IGFkZCAyNTUgYnl0ZXMgdG8gYSBwYWNrZXQsIHNldCB0aGUgcGFkZGluZyBiaXQsIHAsIHRvIDEs
IGluc2VydAorIGEgc2luZ2xlIGJ5dGUgYWZ0ZXIgdGhlIGZyYW1lIGNvdW50IGJ5dGUgd2l0aCBh
IHZhbHVlIG9mIDI1NCwgYW5kIGFwcGVuZCAyNTQKKyBwYWRkaW5nIGJ5dGVzIHdpdGggdGhlIHZh
bHVlIHplcm8gdG8gdGhlIGVuZCBvZiB0aGUgcGFja2V0LgorVG8gYWRkIDI1NiBieXRlcyB0byBh
IHBhY2tldCwgc2V0IHRoZSBwYWRkaW5nIGJpdCB0byAxLCBpbnNlcnQgdHdvIGJ5dGVzIGFmdGVy
CisgdGhlIGZyYW1lIGNvdW50IGJ5dGUgd2l0aCB0aGUgdmFsdWVzIDI1NSBhbmQgMCwgcmVzcGVj
dGl2ZWx5LCBhbmQgYXBwZW5kIDI1NAorIHBhZGRpbmcgYnl0ZXMgd2l0aCB0aGUgdmFsdWUgemVy
byB0byB0aGUgZW5kIG9mIHRoZSBwYWNrZXQuCitCeSB1c2luZyB0aGUgdmFsdWUgMjU1IG11bHRp
cGxlIHRpbWVzLCBpdCBpcyBwb3NzaWJsZSB0byBjcmVhdGUgYSBwYWNrZXQgb2YgYW55Cisgc3Bl
Y2lmaWMsIGRlc2lyZWQgc2l6ZS4KK0xldCBQIGJlIHRoZSBudW1iZXIgb2YgaGVhZGVyIGJ5dGVz
IHVzZWQgdG8gaW5kaWNhdGUgdGhlIHBhZGRpbmcgc2l6ZSBwbHVzIHRoZQorIG51bWJlciBvZiBw
YWRkaW5nIGJ5dGVzIHRoZW1zZWx2ZXMgKGkuZS4sIFAgaXMgdGhlIHRvdGFsIG51bWJlciBvZiBi
eXRlcyBhZGRlZAorIHRvIHRoZSBwYWNrZXQpLgorVGhlbiBQIE1VU1QgYmUgbm8gbW9yZSB0aGFu
IE4tMiZuYnNwO1tSNixSN10uCis8L3Q+Cis8dCBhbmNob3I9IlI2Ij4KK0luIHRoZSBDQlIgY2Fz
ZSwgbGV0IFI9Ti0yLVAgYmUgdGhlIG51bWJlciBvZiBieXRlcyByZW1haW5pbmcgaW4gdGhlIHBh
Y2tldAorIGFmdGVyIHN1YnRyYWN0aW5nIHRoZSAob3B0aW9uYWwpIHBhZGRpbmcuCitUaGVuIHRo
ZSBjb21wcmVzc2VkIGxlbmd0aCBvZiBlYWNoIGZyYW1lIGluIGJ5dGVzIGlzIGVxdWFsIHRvIFIv
TS4KK1RoZSB2YWx1ZSBSIE1VU1QgYmUgYSBub24tbmVnYXRpdmUgaW50ZWdlciBtdWx0aXBsZSBv
ZiBNJm5ic3A7W1I2XS4KK1RoZSBjb21wcmVzc2VkIGRhdGEgZm9yIGFsbCBNIGZyYW1lcyBmb2xs
b3dzLCBlYWNoIG9mIHNpemUKKyBSL00mbmJzcDtieXRlcywgYXMgaWxsdXN0cmF0ZWQgaW4gPHhy
ZWYgdGFyZ2V0PSJjb2RlM2Nicl9wYWNrZXQiLz4uCis8L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSJj
b2RlM2Nicl9wYWNrZXQiIHRpdGxlPSJBIENCUiBDb2RlIDMgUGFja2V0IiBhbGlnbj0iY2VudGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAg
ICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQg
NSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKyst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rCit8IGNvbmZpZyAgfHN8MXwxfDB8cHwgICAgIE0gICAgIHwgIFBhZGRpbmcgbGVuZ3Ro
IChPcHRpb25hbCkgICAgOgorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgQ29t
cHJlc3NlZCBmcmFtZSAxIChSL00gYnl0ZXMpLi4uICAgICAgICAgICAgICAgOgorfCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwK
KystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMiAo
Ui9NIGJ5dGVzKS4uLiAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKKzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAg
ICAgQ29tcHJlc3NlZCBmcmFtZSBNIChSL00gYnl0ZXMpLi4uICAgICAgICAgICAgICAgOgorfCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rCis6ICAgICAgICAgICAgICAgICAgT3B1cyBQYWRkaW5nIChPcHRpb25h
bCkuLi4gICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmln
dXJlPgorCis8dCBhbmNob3I9IlI3Ij4KK0luIHRoZSBWQlIgY2FzZSwgdGhlIChvcHRpb25hbCkg
cGFkZGluZyBsZW5ndGggaXMgZm9sbG93ZWQgYnkgTS0xIGZyYW1lCisgbGVuZ3RocyAoaW5kaWNh
dGVkIGJ5ICJOMSIgdG8gIk5bTS0xXSIgaW4gPHhyZWYgdGFyZ2V0PSdjb2RlM3Zicl9wYWNrZXQn
Lz4pLCBlYWNoIGVuY29kZWQgaW4gYQorIG9uZS0gb3IgdHdvLWJ5dGUgc2VxdWVuY2UgYXMgZGVz
Y3JpYmVkIGFib3ZlLgorVGhlIHBhY2tldCBNVVNUIGNvbnRhaW4gZW5vdWdoIGRhdGEgZm9yIHRo
ZSBNLTEgbGVuZ3RocyBhZnRlciByZW1vdmluZyB0aGUKKyAob3B0aW9uYWwpIHBhZGRpbmcsIGFu
ZCB0aGUgc3VtIG9mIHRoZXNlIGxlbmd0aHMgTVVTVCBiZSBubyBsYXJnZXIgdGhhbiB0aGUKKyBu
dW1iZXIgb2YgYnl0ZXMgcmVtYWluaW5nIGluIHRoZSBwYWNrZXQgYWZ0ZXIgZGVjb2RpbmcgdGhl
bSZuYnNwO1tSN10uCitUaGUgY29tcHJlc3NlZCBkYXRhIGZvciBhbGwgTSBmcmFtZXMgZm9sbG93
cywgZWFjaCBmcmFtZSBjb25zaXN0aW5nIG9mIHRoZQorIGluZGljYXRlZCBudW1iZXIgb2YgYnl0
ZXMsIHdpdGggdGhlIGZpbmFsIGZyYW1lIGNvbnN1bWluZyBhbnkgcmVtYWluaW5nIGJ5dGVzCisg
YmVmb3JlIHRoZSBmaW5hbCBwYWRkaW5nLCBhcyBpbGx1c3RyYXRlZCBpbiA8eHJlZiB0YXJnZXQ9
ImNvZGUzY2JyX3BhY2tldCIvPi4KK1RoZSBudW1iZXIgb2YgaGVhZGVyIGJ5dGVzIChUT0MgYnl0
ZSwgZnJhbWUgY291bnQgYnl0ZSwgcGFkZGluZyBsZW5ndGggYnl0ZXMsCisgYW5kIGZyYW1lIGxl
bmd0aCBieXRlcyksIHBsdXMgdGhlIHNpZ25hbGVkIGxlbmd0aCBvZiB0aGUgZmlyc3QgTS0xIGZy
YW1lcyB0aGVtc2VsdmVzLAorIHBsdXMgdGhlIHNpZ25hbGVkIGxlbmd0aCBvZiB0aGUgcGFkZGlu
ZyBNVVNUIGJlIG5vIGxhcmdlciB0aGFuIE4sIHRoZSB0b3RhbCBzaXplIG9mIHRoZQorIHBhY2tl
dC4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9ImNvZGUzdmJyX3BhY2tldCIgdGl0bGU9IkEgVkJS
IENvZGUgMyBQYWNrZXQiIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAg
ICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDgg
OSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgY29uZmlnICB8c3wxfDF8MXxw
fCAgICAgTSAgICAgfCBQYWRkaW5nIGxlbmd0aCAoT3B0aW9uYWwpICAgICA6CisrLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwor
OiBOMSAoMS0yIGJ5dGVzKTogTjIgKDEtMiBieXRlcyk6ICAgICAuLi4gICAgICAgOiAgICAgTltN
LTFdICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgIENvbXByZXNzZWQg
ZnJhbWUgMSAoTjEgYnl0ZXMpLi4uICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
KworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwKKzogICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDIgKE4yIGJ5dGVz
KS4uLiAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgICAgICAg
IENvbXByZXNzZWQgZnJhbWUgTS4uLiAgICAgICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cisr
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKworOiAgICAgICAgICAgICAgICAgIE9wdXMgUGFkZGluZyAoT3B0aW9uYWwpLi4uICAg
ICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwv
c2VjdGlvbj4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJleGFtcGxlcyIgdGl0bGU9
IkV4YW1wbGVzIj4KKzx0PgorU2ltcGxlc3QgY2FzZSwgb25lIE5CIG1vbm8gMjAmbmJzcDttcyBT
SUxLIGZyYW1lOgorPC90PgorCis8ZmlndXJlIGFuY2hvcj0nZnJhbWluZ19leGFtcGxlXzEnPgor
PGFydHdvcms+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAg
ICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0
IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgMSAgICB8
MHwwfDB8ICAgICAgICAgICAgICAgY29tcHJlc3NlZCBkYXRhLi4uICAgICAgICAgICAgICA6Cisr
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0PgorVHdvIEZCIG1vbm8gNSZu
YnNwO21zIENFTFQgZnJhbWVzIG9mIHRoZSBzYW1lIGNvbXByZXNzZWQgc2l6ZToKKzwvdD4KKwor
PGZpZ3VyZSBhbmNob3I9J2ZyYW1pbmdfZXhhbXBsZV8yJz4KKzxhcnR3b3JrPjwhW0NEQVRBWwor
IDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAg
ICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0
IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgMjkgICAgfDB8MHwxfCAgICAgICAgICAgICAg
IGNvbXByZXNzZWQgZGF0YS4uLiAgICAgICAgICAgICAgOgorKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29y
az4KKzwvZmlndXJlPgorCis8dD4KK1R3byBGQiBtb25vIDIwJm5ic3A7bXMgSHlicmlkIGZyYW1l
cyBvZiBkaWZmZXJlbnQgY29tcHJlc3NlZCBzaXplOgorPC90PgorCis8ZmlndXJlIGFuY2hvcj0n
ZnJhbWluZ19leGFtcGxlXzMnPgorPGFydHdvcms+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAg
ICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMg
NCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQor
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSsKK3wgICAxNSAgICB8MHwxfDF8MXwwfCAgICAgMiAgICAgfCAgICAgIE4xICAgICAg
IHwgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgICAgICAgICAgICAgY29t
cHJlc3NlZCBkYXRhLi4uICAgICAgICAgICAgICAgICAgICAgIDoKKystKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2Fy
dHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitGb3VyIEZCIHN0ZXJlbyAyMCZuYnNwO21zIENFTFQg
ZnJhbWVzIG9mIHRoZSBzYW1lIGNvbXByZXNzZWQgc2l6ZToKKzwvdD4KKworPGZpZ3VyZSBhbmNo
b3I9J2ZyYW1pbmdfZXhhbXBsZV80Jz4KKzxhcnR3b3JrPjwhW0NEQVRBWworIDAgICAgICAgICAg
ICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEg
MiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAw
IDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rCit8ICAgMzEgICAgfDF8MXwxfDB8MHwgICAgIDQgICAgIHwgICAgICBjb21w
cmVzc2VkIGRhdGEuLi4gICAgICAgOgorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Im1hbGZvcm1lZC1wYWNrZXRzIiB0aXRs
ZT0iUmVjZWl2aW5nIE1hbGZvcm1lZCBQYWNrZXRzIj4KKzx0PgorQSByZWNlaXZlciBNVVNUIE5P
VCBwcm9jZXNzIHBhY2tldHMgd2hpY2ggdmlvbGF0ZSBhbnkgb2YgdGhlIHJ1bGVzIGFib3ZlIGFz
Cisgbm9ybWFsIE9wdXMgcGFja2V0cy4KK1RoZXkgYXJlIHJlc2VydmVkIGZvciBmdXR1cmUgYXBw
bGljYXRpb25zLCBzdWNoIGFzIGluLWJhbmQgaGVhZGVycyAoY29udGFpbmluZworIG1ldGFkYXRh
LCBldGMuKS4KK1BhY2tldHMgd2hpY2ggdmlvbGF0ZSB0aGVzZSBjb25zdHJhaW50cyBtYXkgY2F1
c2UgaW1wbGVtZW50YXRpb25zIG9mCisgPHNwYW54IHN0eWxlPSJlbXBoIj50aGlzPC9zcGFueD4g
c3BlY2lmaWNhdGlvbiB0byB0cmVhdCB0aGVtIGFzIG1hbGZvcm1lZCwgYW5kCisgZGlzY2FyZCB0
aGVtLgorPC90PgorPHQ+CitUaGVzZSBjb25zdHJhaW50cyBhcmUgc3VtbWFyaXplZCBoZXJlIGZv
ciByZWZlcmVuY2U6Cis8bGlzdCBzdHlsZT0iZm9ybWF0IFtSJWRdIj4KKzx0PlBhY2tldHMgYXJl
IGF0IGxlYXN0IG9uZSBieXRlLjwvdD4KKzx0Pk5vIGltcGxpY2l0IGZyYW1lIGxlbmd0aCBpcyBs
YXJnZXIgdGhhbiAxMjc1IGJ5dGVzLjwvdD4KKzx0PkNvZGUgMSBwYWNrZXRzIGhhdmUgYW4gb2Rk
IHRvdGFsIGxlbmd0aCwgTiwgc28gdGhhdCAoTi0xKS8yIGlzIGFuCisgaW50ZWdlci48L3Q+Cis8
dD5Db2RlIDIgcGFja2V0cyBoYXZlIGVub3VnaCBieXRlcyBhZnRlciB0aGUgVE9DIGZvciBhIHZh
bGlkIGZyYW1lCisgbGVuZ3RoLCBhbmQgdGhhdCBsZW5ndGggaXMgbm8gbGFyZ2VyIHRoYW4gdGhl
IG51bWJlciBvZiBieXRlcyByZW1haW5pbmcgaW4gdGhlCisgcGFja2V0LjwvdD4KKzx0PkNvZGUg
MyBwYWNrZXRzIGNvbnRhaW4gYXQgbGVhc3Qgb25lIGZyYW1lLCBidXQgbm8gbW9yZSB0aGFuIDEy
MCZuYnNwO21zCisgb2YgYXVkaW8gdG90YWwuPC90PgorPHQ+VGhlIGxlbmd0aCBvZiBhIENCUiBj
b2RlIDMgcGFja2V0LCBOLCBpcyBhdCBsZWFzdCB0d28gYnl0ZXMsIHRoZSBudW1iZXIgb2YKKyBi
eXRlcyBhZGRlZCB0byBpbmRpY2F0ZSB0aGUgcGFkZGluZyBzaXplIHBsdXMgdGhlIHRyYWlsaW5n
IHBhZGRpbmcgYnl0ZXMKKyB0aGVtc2VsdmVzLCBQLCBpcyBubyBtb3JlIHRoYW4gTi0yLCBhbmQg
dGhlIGZyYW1lIGNvdW50LCBNLCBzYXRpc2ZpZXMKKyB0aGUgY29uc3RyYWludCB0aGF0IChOLTIt
UCkgaXMgYSBub24tbmVnYXRpdmUgaW50ZWdlciBtdWx0aXBsZSBvZiBNLjwvdD4KKzx0PlZCUiBj
b2RlIDMgcGFja2V0cyBhcmUgbGFyZ2UgZW5vdWdoIHRvIGNvbnRhaW4gYWxsIHRoZSBoZWFkZXIg
Ynl0ZXMgKFRPQworIGJ5dGUsIGZyYW1lIGNvdW50IGJ5dGUsIGFueSBwYWRkaW5nIGxlbmd0aCBi
eXRlcywgYW5kIGFueSBmcmFtZSBsZW5ndGggYnl0ZXMpLAorIHBsdXMgdGhlIGxlbmd0aCBvZiB0
aGUgZmlyc3QgTS0xIGZyYW1lcywgcGx1cyBhbnkgdHJhaWxpbmcgcGFkZGluZyBieXRlcy48L3Q+
Cis8L2xpc3Q+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0
bGU9Ik9wdXMgRGVjb2RlciI+Cis8dD4KK1RoZSBPcHVzIGRlY29kZXIgY29uc2lzdHMgb2YgdHdv
IG1haW4gYmxvY2tzOiB0aGUgU0lMSyBkZWNvZGVyIGFuZCB0aGUgQ0VMVAorIGRlY29kZXIuCitB
dCBhbnkgZ2l2ZW4gdGltZSwgb25lIG9yIGJvdGggb2YgdGhlIFNJTEsgYW5kIENFTFQgZGVjb2Rl
cnMgbWF5IGJlIGFjdGl2ZS4KK1RoZSBvdXRwdXQgb2YgdGhlIE9wdXMgZGVjb2RlIGlzIHRoZSBz
dW0gb2YgdGhlIG91dHB1dHMgZnJvbSB0aGUgU0lMSyBhbmQgQ0VMVAorIGRlY29kZXJzIHdpdGgg
cHJvcGVyIHNhbXBsZSByYXRlIGNvbnZlcnNpb24gYW5kIGRlbGF5IGNvbXBlbnNhdGlvbiBvbiB0
aGUgU0lMSworIHNpZGUsIGFuZCBvcHRpb25hbCBkZWNpbWF0aW9uICh3aGVuIGRlY29kaW5nIHRv
IHNhbXBsZSByYXRlcyBsZXNzIHRoYW4KKyA0OCZuYnNwO2tIeikgb24gdGhlIENFTFQgc2lkZSwg
YXMgaWxsdXN0cmF0ZWQgaW4gdGhlIGJsb2NrIGRpYWdyYW0gYmVsb3cuCis8L3Q+Cis8ZmlndXJl
PgorPGFydHdvcms+Cis8IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0t
LS0tKyAgICArLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFNJTEsg
ICB8ICAgIHwgICBTYW1wbGUgICB8CisgICAgICAgICAgICAgICAgICAgICAgKy0+fCBEZWNvZGVy
IHwtLS0+fCAgICBSYXRlICAgIHwtLS0tKworQml0LSAgICArLS0tLS0tLS0tKyAgIHwgIHwgICAg
ICAgICB8ICAgIHwgQ29udmVyc2lvbiB8ICAgIHYKK3N0cmVhbSAgfCAgUmFuZ2UgIHwtLS0rICAr
LS0tLS0tLS0tKyAgICArLS0tLS0tLS0tLS0tKyAgLy0tLVwgIEF1ZGlvCistLS0tLS0tPnwgRGVj
b2RlciB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgKyB8LS0tLS0tPgor
ICAgICAgICB8ICAgICAgICAgfC0tLSsgICstLS0tLS0tLS0rICAgICstLS0tLS0tLS0tLS0rICBc
LS0tLworICAgICAgICArLS0tLS0tLS0tKyAgIHwgIHwgIENFTFQgICB8ICAgIHwgRGVjaW1hdGlv
biB8ICAgIF4KKyAgICAgICAgICAgICAgICAgICAgICArLT58IERlY29kZXIgfC0tLT58IChPcHRp
b25hbCkgfC0tLS0rCisgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHwgICAgfCAg
ICAgICAgICAgIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tKyAgICArLS0t
LS0tLS0tLS0tKworXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHNlY3Rpb24gYW5jaG9y
PSJyYW5nZS1kZWNvZGVyIiB0aXRsZT0iUmFuZ2UgRGVjb2RlciI+Cis8dD4KK09wdXMgdXNlcyBh
biBlbnRyb3B5IGNvZGVyIGJhc2VkIG9uIHJhbmdlIGNvZGluZyA8eHJlZiB0YXJnZXQ9InJhbmdl
LWNvZGluZyI+PC94cmVmPgorPHhyZWYgdGFyZ2V0PSJNYXJ0aW43OSI+PC94cmVmPiwKK3doaWNo
IGlzIGl0c2VsZiBhIHJlZGlzY292ZXJ5IG9mIHRoZSBGSUZPIGFyaXRobWV0aWMgY29kZSBpbnRy
b2R1Y2VkIGJ5IDx4cmVmIHRhcmdldD0iY29kaW5nLXRoZXNpcyI+PC94cmVmPi4KK0l0IGlzIHZl
cnkgc2ltaWxhciB0byBhcml0aG1ldGljIGVuY29kaW5nLCBleGNlcHQgdGhhdCBlbmNvZGluZyBp
cyBkb25lIHdpdGgKK2RpZ2l0cyBpbiBhbnkgYmFzZSBpbnN0ZWFkIG9mIHdpdGggYml0cywKK3Nv
IGl0IGlzIGZhc3RlciB3aGVuIHVzaW5nIGxhcmdlciBiYXNlcyAoaS5lLiwgYSBieXRlKS4gQWxs
IG9mIHRoZQorY2FsY3VsYXRpb25zIGluIHRoZSByYW5nZSBjb2RlciBtdXN0IHVzZSBiaXQtZXhh
Y3QgaW50ZWdlciBhcml0aG1ldGljLgorPC90PgorPHQ+CitTeW1ib2xzIG1heSBhbHNvIGJlIGNv
ZGVkIGFzICJyYXcgYml0cyIgcGFja2VkIGRpcmVjdGx5IGludG8gdGhlIGJpdHN0cmVhbSwKKyBi
eXBhc3NpbmcgdGhlIHJhbmdlIGNvZGVyLgorVGhlc2UgYXJlIHBhY2tlZCBiYWNrd2FyZHMgc3Rh
cnRpbmcgYXQgdGhlIGVuZCBvZiB0aGUgZnJhbWUsIGFzIGlsbHVzdHJhdGVkIGluCisgPHhyZWYg
dGFyZ2V0PSJyYXdiaXRzLWV4YW1wbGUiLz4uCitUaGlzIHJlZHVjZXMgY29tcGxleGl0eSBhbmQg
bWFrZXMgdGhlIHN0cmVhbSBtb3JlIHJlc2lsaWVudCB0byBiaXQgZXJyb3JzLCBhcworIGNvcnJ1
cHRpb24gaW4gdGhlIHJhdyBiaXRzIHdpbGwgbm90IGRlc3luY2hyb25pemUgdGhlIGRlY29kaW5n
IHByb2Nlc3MsIHVubGlrZQorIGNvcnJ1cHRpb24gaW4gdGhlIGlucHV0IHRvIHRoZSByYW5nZSBk
ZWNvZGVyLgorUmF3IGJpdHMgYXJlIG9ubHkgdXNlZCBpbiB0aGUgQ0VMVCBsYXllci4KKzwvdD4K
KworPGZpZ3VyZSBhbmNob3I9InJhd2JpdHMtZXhhbXBsZSIgdGl0bGU9IklsbHVzdHJhdGl2ZSBl
eGFtcGxlIG9mIHBhY2tpbmcgcmFuZ2UKKyBjb2RlciBhbmQgcmF3IGJpdHMgZGF0YSI+Cis8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAg
ICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDgg
OSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwor
fCBSYW5nZSBjb2RlciBkYXRhIChwYWNrZWQgTVNCIHRvIExTQikgLT4gICAgICAgICAgICAgICAg
ICAgICAgIDoKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICArCis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgOgorKyAgICAgKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKKzogICAgIHwgPC0gQm91bmRh
cnkgb2NjdXJzIGF0IGFuIGFyYml0cmFyeSBiaXQgcG9zaXRpb24gICAgICAgICA6CisrLSstKy0r
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
KworOiAgICAgICAgICAgICAgICAgICAgICAgICAgPC0gUmF3IGJpdHMgZGF0YSAocGFja2VkIExT
QiB0byBNU0IpIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitF
YWNoIHN5bWJvbCBjb2RlZCBieSB0aGUgcmFuZ2UgY29kZXIgaXMgZHJhd24gZnJvbSBhIGZpbml0
ZSBhbHBoYWJldCBhbmQgY29kZWQKKyBpbiBhIHNlcGFyYXRlICJjb250ZXh0Iiwgd2hpY2ggZGVz
Y3JpYmVzIHRoZSBzaXplIG9mIHRoZSBhbHBoYWJldCBhbmQgdGhlCisgcmVsYXRpdmUgZnJlcXVl
bmN5IG9mIGVhY2ggc3ltYm9sIGluIHRoYXQgYWxwaGFiZXQuCis8L3Q+Cis8dD4KK1N1cHBvc2Ug
dGhlcmUgaXMgYSBjb250ZXh0IHdpdGggbiBzeW1ib2xzLCBpZGVudGlmaWVkIHdpdGggYW4gaW5k
ZXggdGhhdCByYW5nZXMKKyBmcm9tIDAgdG8gbi0xLgorVGhlIHBhcmFtZXRlcnMgbmVlZGVkIHRv
IGVuY29kZSBvciBkZWNvZGUgc3ltYm9sIGsgaW4gdGhpcyBjb250ZXh0IGFyZQorIHJlcHJlc2Vu
dGVkIGJ5IGEgdGhyZWUtdHVwbGUgKGZsW2tdLCZuYnNwO2ZoW2tdLCZuYnNwO2Z0KSwgd2l0aAor
IDAmbmJzcDsmbHQ7PSZuYnNwO2ZsW2tdJm5ic3A7Jmx0OyZuYnNwO2ZoW2tdJm5ic3A7Jmx0Oz0m
bmJzcDtmdCZuYnNwOyZsdDs9Jm5ic3A7NjU1MzUuCitUaGUgdmFsdWVzIG9mIHRoaXMgdHVwbGUg
YXJlIGRlcml2ZWQgZnJvbSB0aGUgcHJvYmFiaWxpdHkgbW9kZWwgZm9yIHRoZQorIHN5bWJvbCwg
cmVwcmVzZW50ZWQgYnkgdHJhZGl0aW9uYWwgImZyZXF1ZW5jeSBjb3VudHMiLgorQmVjYXVzZSBP
cHVzIHVzZXMgc3RhdGljIGNvbnRleHRzIHRoZXNlIGFyZSBub3QgdXBkYXRlZCBhcyBzeW1ib2xz
IGFyZSBkZWNvZGVkLgorTGV0IGZbaV0gYmUgdGhlIGZyZXF1ZW5jeSBvZiBzeW1ib2wgaS4KK1Ro
ZW4gdGhlIHRocmVlLXR1cGxlIGNvcnJlc3BvbmRpbmcgdG8gc3ltYm9sIGsgaXMgZ2l2ZW4gYnkK
KzwvdD4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48
IVtDREFUQVsKKyAgICAgICAgay0xICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBu
LTEKKyAgICAgICAgX18gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfXworZmxb
a10gPSBcICBmW2ldLCAgZmhba10gPSBmbFtrXSArIGZba10sICBmdCA9IFwgIGZbaV0KKyAgICAg
ICAgL18gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvXworICAgICAgICBpPTAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGk9MAorXV0+PC9hcnR3b3JrPgorPC9m
aWd1cmU+Cis8dD4KK1RoZSByYW5nZSBkZWNvZGVyIGV4dHJhY3RzIHRoZSBzeW1ib2xzIGFuZCBp
bnRlZ2VycyBlbmNvZGVkIHVzaW5nIHRoZSByYW5nZQorIGVuY29kZXIgaW4gPHhyZWYgdGFyZ2V0
PSJyYW5nZS1lbmNvZGVyIi8+LgorVGhlIHJhbmdlIGRlY29kZXIgbWFpbnRhaW5zIGFuIGludGVy
bmFsIHN0YXRlIHZlY3RvciBjb21wb3NlZCBvZiB0aGUgdHdvLXR1cGxlCisgKHZhbCwmbmJzcDty
bmcpLCByZXByZXNlbnRpbmcgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgaGlnaCBlbmQgb2Yg
dGhlCisgY3VycmVudCByYW5nZSBhbmQgdGhlIGFjdHVhbCBjb2RlZCB2YWx1ZSwgbWludXMgb25l
LCBhbmQgdGhlIHNpemUgb2YgdGhlCisgY3VycmVudCByYW5nZSwgcmVzcGVjdGl2ZWx5LgorQm90
aCB2YWwgYW5kIHJuZyBhcmUgMzItYml0IHVuc2lnbmVkIGludGVnZXIgdmFsdWVzLgorPC90Pgor
Cis8c2VjdGlvbiBhbmNob3I9InJhbmdlLWRlY29kZXItaW5pdCIgdGl0bGU9IlJhbmdlIERlY29k
ZXIgSW5pdGlhbGl6YXRpb24iPgorPHQ+CitMZXQgYjAgYmUgdGhlIGZpcnN0IGlucHV0IGJ5dGUg
KG9yIHplcm8gaWYgdGhlcmUgYXJlIG5vIGJ5dGVzIGluIHRoaXMgT3B1cworIGZyYW1lKS4KK1Ro
ZSBkZWNvZGVyIGluaXRpYWxpemVzIHJuZyB0byAxMjggYW5kIGluaXRpYWxpemVzIHZhbCB0bwor
ICgxMjcmbmJzcDstJm5ic3A7KGIwJmd0OyZndDsxKSksIHdoZXJlIChiMCZndDsmZ3Q7MSkgaXMg
dGhlIHRvcCA3IGJpdHMgb2YgdGhlCisgZmlyc3QgaW5wdXQgYnl0ZS4KK0l0IHNhdmVzIHRoZSBy
ZW1haW5pbmcgYml0LCAoYjAmYW1wOzEpLCBmb3IgdXNlIGluIHRoZSByZW5vcm1hbGl6YXRpb24K
KyBwcm9jZWR1cmUgZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0icmFuZ2UtZGVjb2Rlci1yZW5v
cm0iLz4sIHdoaWNoIHRoZQorIGRlY29kZXIgaW52b2tlcyBpbW1lZGlhdGVseSBhZnRlciBpbml0
aWFsaXphdGlvbiB0byByZWFkIGFkZGl0aW9uYWwgYml0cyBhbmQKKyBlc3RhYmxpc2ggdGhlIGlu
dmFyaWFudCB0aGF0IHJuZyZuYnNwOyZndDsmbmJzcDsyKioyMy4KKzwvdD4KKzwvc2VjdGlvbj4K
KworPHNlY3Rpb24gYW5jaG9yPSJkZWNvZGluZy1zeW1ib2xzIiB0aXRsZT0iRGVjb2RpbmcgU3lt
Ym9scyI+Cis8dD4KK0RlY29kaW5nIGEgc3ltYm9sIGlzIGEgdHdvLXN0ZXAgcHJvY2Vzcy4KK1Ro
ZSBmaXJzdCBzdGVwIGRldGVybWluZXMgYSAxNi1iaXQgdW5zaWduZWQgdmFsdWUgZnMsIHdoaWNo
IGxpZXMgd2l0aGluIHRoZQorIHJhbmdlIG9mIHNvbWUgc3ltYm9sIGluIHRoZSBjdXJyZW50IGNv
bnRleHQuCitUaGUgc2Vjb25kIHN0ZXAgdXBkYXRlcyB0aGUgcmFuZ2UgZGVjb2RlciBzdGF0ZSB3
aXRoIHRoZSB0aHJlZS10dXBsZQorIChmbFtrXSwmbmJzcDtmaFtrXSwmbmJzcDtmdCkgY29ycmVz
cG9uZGluZyB0byB0aGF0IHN5bWJvbC4KKzwvdD4KKzx0PgorVGhlIGZpcnN0IHN0ZXAgaXMgaW1w
bGVtZW50ZWQgYnkgZWNfZGVjb2RlKCkgKGVudGRlYy5jKSwgd2hpY2ggY29tcHV0ZXMKKzxmaWd1
cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAg
ICAgICAgICAgICAgIHZhbAorZnMgPSBmdCAtIG1pbigtLS0tLS0gKyAxLCBmdCkgLgorICAgICAg
ICAgICAgICBybmcvZnQKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlIGRpdmlzaW9ucyBo
ZXJlIGFyZSBpbnRlZ2VyIGRpdmlzaW9uLgorPC90PgorPHQ+CitUaGUgZGVjb2RlciB0aGVuIGlk
ZW50aWZpZXMgdGhlIHN5bWJvbCBpbiB0aGUgY3VycmVudCBjb250ZXh0IGNvcnJlc3BvbmRpbmcg
dG8KKyBmczsgaS5lLiwgdGhlIHZhbHVlIG9mIGsgd2hvc2UgdGhyZWUtdHVwbGUgKGZsW2tdLCZu
YnNwO2ZoW2tdLCZuYnNwO2Z0KQorIHNhdGlzZmllcyBmbFtrXSZuYnNwOyZsdDs9Jm5ic3A7ZnMm
bmJzcDsmbHQ7Jm5ic3A7Zmhba10uCitJdCB1c2VzIHRoaXMgdHVwbGUgdG8gdXBkYXRlIHZhbCBh
Y2NvcmRpbmcgdG8KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2Vu
dGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgIHJuZwordmFsID0gdmFsIC0gLS0tICogKGZ0IC0g
Zmhba10pIC4KKyAgICAgICAgICAgIGZ0CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0lmIGZs
W2tdIGlzIGdyZWF0ZXIgdGhhbiB6ZXJvLCB0aGVuIHRoZSBkZWNvZGVyIHVwZGF0ZXMgcm5nIHVz
aW5nCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFb
Q0RBVEFbCisgICAgICBybmcKK3JuZyA9IC0tLSAqIChmaFtrXSAtIGZsW2tdKSAuCisgICAgICBm
dAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitPdGhlcndpc2UsIGl0IHVwZGF0ZXMgcm5nIHVz
aW5nCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFb
Q0RBVEFbCisgICAgICAgICAgICBybmcKK3JuZyA9IHJuZyAtIC0tLSAqIChmdCAtIGZoW2tdKSAu
CisgICAgICAgICAgICBmdAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8dD4KK1Vz
aW5nIGEgc3BlY2lhbCBjYXNlIGZvciB0aGUgZmlyc3Qgc3ltYm9sIChyYXRoZXIgdGhhbiB0aGUg
bGFzdCBzeW1ib2wsIGFzIGlzCisgY29tbW9ubHkgZG9uZSBpbiBvdGhlciBhcml0aG1ldGljIGNv
ZGVycykgZW5zdXJlcyB0aGF0IGFsbCB0aGUgdHJ1bmNhdGlvbgorIGVycm9yIGZyb20gdGhlIGZp
bml0ZSBwcmVjaXNpb24gYXJpdGhtZXRpYyBhY2N1bXVsYXRlcyBpbiBzeW1ib2wgMC4KK1RoaXMg
bWFrZXMgdGhlIGNvc3Qgb2YgY29kaW5nIGEgMCBzbGlnaHRseSBzbWFsbGVyLCBvbiBhdmVyYWdl
LCB0aGFuIGl0cworIGVzdGltYXRlZCBwcm9iYWJpbGl0eSBpbmRpY2F0ZXMgYW5kIG1ha2VzIHRo
ZSBjb3N0IG9mIGNvZGluZyBhbnkgb3RoZXIgc3ltYm9sCisgc2xpZ2h0bHkgbGFyZ2VyLgorV2hl
biBjb250ZXh0cyBhcmUgZGVzaWduZWQgc28gdGhhdCAwIGlzIHRoZSBtb3N0IHByb2JhYmxlIHN5
bWJvbCwgd2hpY2ggaXMKKyBvZnRlbiB0aGUgY2FzZSwgdGhpcyBzdHJhdGVneSBtaW5pbWl6ZXMg
dGhlIGluZWZmaWNpZW5jeSBpbnRyb2R1Y2VkIGJ5IHRoZQorIGZpbml0ZSBwcmVjaXNpb24uCitJ
dCBhbHNvIG1ha2VzIHNvbWUgb2YgdGhlIHNwZWNpYWwtY2FzZSBkZWNvZGluZyByb3V0aW5lcyBp
bgorIDx4cmVmIHRhcmdldD0iZGVjb2RpbmctYWx0ZXJuYXRlIi8+IHBhcnRpY3VsYXJseSBzaW1w
bGUuCis8L3Q+Cis8dD4KK0FmdGVyIHRoZSB1cGRhdGVzLCBpbXBsZW1lbnRlZCBieSBlY19kZWNf
dXBkYXRlKCkgKGVudGRlYy5jKSwgdGhlIGRlY29kZXIKKyBub3JtYWxpemVzIHRoZSByYW5nZSB1
c2luZyB0aGUgcHJvY2VkdXJlIGluIHRoZSBuZXh0IHNlY3Rpb24sIGFuZCByZXR1cm5zIHRoZQor
IGluZGV4IGsuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0icmFuZ2UtZGVjb2Rlci1yZW5vcm0i
IHRpdGxlPSJSZW5vcm1hbGl6YXRpb24iPgorPHQ+CitUbyBub3JtYWxpemUgdGhlIHJhbmdlLCB0
aGUgZGVjb2RlciByZXBlYXRzIHRoZSBmb2xsb3dpbmcgcHJvY2VzcywgaW1wbGVtZW50ZWQKKyBi
eSBlY19kZWNfbm9ybWFsaXplKCkgKGVudGRlYy5jKSwgdW50aWwgcm5nJm5ic3A7Jmd0OyZuYnNw
OzIqKjIzLgorSWYgcm5nIGlzIGFscmVhZHkgZ3JlYXRlciB0aGFuIDIqKjIzLCB0aGUgZW50aXJl
IHByb2Nlc3MgaXMgc2tpcHBlZC4KK0ZpcnN0LCBpdCBzZXRzIHJuZyB0byAocm5nJmx0OyZsdDs4
KS4KK1RoZW4gaXQgcmVhZHMgdGhlIG5leHQgYnl0ZSBvZiB0aGUgT3B1cyBmcmFtZSBhbmQgZm9y
bXMgYW4gOC1iaXQgdmFsdWUgc3ltLAorIHVzaW5nIHRoZSBsZWZ0LW92ZXIgYml0IGJ1ZmZlcmVk
IGZyb20gdGhlIHByZXZpb3VzIGJ5dGUgYXMgdGhlIGhpZ2ggYml0CisgYW5kIHRoZSB0b3AgNyBi
aXRzIG9mIHRoZSBieXRlIGp1c3QgcmVhZCBhcyB0aGUgb3RoZXIgNyBiaXRzIG9mIHN5bS4KK1Ro
ZSByZW1haW5pbmcgYml0IGluIHRoZSBieXRlIGp1c3QgcmVhZCBpcyBidWZmZXJlZCBmb3IgdXNl
IGluIHRoZSBuZXh0CisgaXRlcmF0aW9uLgorSWYgbm8gbW9yZSBpbnB1dCBieXRlcyByZW1haW4s
IGl0IHVzZXMgemVybyBiaXRzIGluc3RlYWQuCitTZWUgPHhyZWYgdGFyZ2V0PSJyYW5nZS1kZWNv
ZGVyLWluaXQiLz4gZm9yIHRoZSBpbml0aWFsaXphdGlvbiB1c2VkIHRvIHByb2Nlc3MKKyB0aGUg
Zmlyc3QgYnl0ZS4KK1RoZW4sIGl0IHNldHMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3ZhbCA9ICgodmFsPDw4KSArICgyNTUtc3lt
KSkgJiAweDdGRkZGRkZGIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorPHQ+CitJ
dCBpcyBub3JtYWwgYW5kIGV4cGVjdGVkIHRoYXQgdGhlIHJhbmdlIGRlY29kZXIgd2lsbCByZWFk
IHNldmVyYWwgYnl0ZXMKKyBpbnRvIHRoZSByYXcgYml0cyBkYXRhIChpZiBhbnkpIGF0IHRoZSBl
bmQgb2YgdGhlIHBhY2tldCBieSB0aGUgdGltZSB0aGUgZnJhbWUKKyBpcyBjb21wbGV0ZWx5IGRl
Y29kZWQsIGFzIGlsbHVzdHJhdGVkIGluIDx4cmVmIHRhcmdldD0iZmluYWxpemUtZXhhbXBsZSIv
Pi4KK1RoaXMgc2FtZSBkYXRhIE1VU1QgYWxzbyBiZSByZXR1cm5lZCBhcyByYXcgYml0cyB3aGVu
IHJlcXVlc3RlZC4KK1RoZSBlbmNvZGVyIGlzIGV4cGVjdGVkIHRvIHRlcm1pbmF0ZSB0aGUgc3Ry
ZWFtIGluIHN1Y2ggYSB3YXkgdGhhdCB0aGUgZGVjb2RlcgorIHdpbGwgZGVjb2RlIHRoZSBpbnRl
bmRlZCB2YWx1ZXMgcmVnYXJkbGVzcyBvZiB0aGUgZGF0YSBjb250YWluZWQgaW4gdGhlIHJhdwor
IGJpdHMuCis8eHJlZiB0YXJnZXQ9ImVuY29kZXItZmluYWxpemluZyIvPiBkZXNjcmliZXMgYSBw
cm9jZWR1cmUgZm9yIGRvaW5nIHRoaXMuCitJZiB0aGUgcmFuZ2UgZGVjb2RlciBjb25zdW1lcyBh
bGwgb2YgdGhlIGJ5dGVzIGJlbG9uZ2luZyB0byB0aGUgY3VycmVudCBmcmFtZSwKKyBpdCBNVVNU
IGNvbnRpbnVlIHRvIHVzZSB6ZXJvIHdoZW4gYW55IGZ1cnRoZXIgaW5wdXQgYnl0ZXMgYXJlIHJl
cXVpcmVkLCBldmVuCisgaWYgdGhlcmUgaXMgYWRkaXRpb25hbCBkYXRhIGluIHRoZSBjdXJyZW50
IHBhY2tldCBmcm9tIHBhZGRpbmcgb3Igb3RoZXIKKyBmcmFtZXMuCis8L3Q+CisKKzxmaWd1cmUg
YW5jaG9yPSJmaW5hbGl6ZS1leGFtcGxlIiB0aXRsZT0iSWxsdXN0cmF0aXZlIGV4YW1wbGUgb2Yg
cmF3IGJpdHMKKyBvdmVybGFwcGluZyByYW5nZSBjb2RlciBkYXRhIj4KKzxhcnR3b3JrIGFsaWdu
PSJjZW50ZXIiPjwhW0NEQVRBWworIG4gICAgICAgICAgICAgIG4rMSAgICAgICAgICAgICBuKzIg
ICAgICAgICAgICAgbiszCisgMCAxIDIgMyA0IDUgNiA3IDAgMSAyIDMgNCA1IDYgNyAwIDEgMiAz
IDQgNSA2IDcgMCAxIDIgMyA0IDUgNiA3CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworOiAgICAgfCA8LS0tLS0tLS0tLS0g
T3ZlcmxhcCByZWdpb24gLS0tLS0tLS0tLS0tPiB8ICAgICAgICAgICAgIDoKKystKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCisg
ICAgICBeICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KKyAgICAg
IHwgICBFbmQgb2YgZGF0YSBidWZmZXJlZCBieSB0aGUgcmFuZ2UgY29kZXIgfAorLi4uLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICB8CisgICAg
ICB8IEVuZCBvZiBkYXRhIGNvbnN1bWVkIGJ5IHJhdyBiaXRzCisgICAgICArLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS4uLgorXV0+PC9hcnR3
b3JrPgorPC9maWd1cmU+Cis8L3NlY3Rpb24+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hv
cj0iZGVjb2RpbmctYWx0ZXJuYXRlIiB0aXRsZT0iQWx0ZXJuYXRlIERlY29kaW5nIE1ldGhvZHMi
PgorPHQ+CitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIHVzZXMgdGhyZWUgYWRkaXRpb25h
bCBkZWNvZGluZyBtZXRob2RzIHRoYXQgYXJlCisgZXhhY3RseSBlcXVpdmFsZW50IHRvIHRoZSBh
Ym92ZSwgYnV0IG1ha2UgYXNzdW1wdGlvbnMgYW5kIHNpbXBsaWZpY2F0aW9ucyB0aGF0CisgYWxs
b3cgZm9yIGEgbW9yZSBlZmZpY2llbnQgaW1wbGVtZW50YXRpb24uCis8L3Q+Cis8c2VjdGlvbiBh
bmNob3I9ImVjX2RlY29kZV9iaW4iIHRpdGxlPSJlY19kZWNvZGVfYmluKCkiPgorPHQ+CitUaGUg
Zmlyc3QgaXMgZWNfZGVjb2RlX2JpbigpIChlbnRkZWMuYyksIGRlZmluZWQgdXNpbmcgdGhlIHBh
cmFtZXRlciBmdGIKKyBpbnN0ZWFkIG9mIGZ0LgorSXQgaXMgbWF0aGVtYXRpY2FsbHkgZXF1aXZh
bGVudCB0byBjYWxsaW5nIGVjX2RlY29kZSgpIHdpdGgKKyBmdCZuYnNwOz0mbmJzcDsoMSZsdDsm
bHQ7ZnRiKSwgYnV0IGF2b2lkcyBvbmUgb2YgdGhlIGRpdmlzaW9ucy4KKzwvdD4KKzwvc2VjdGlv
bj4KKzxzZWN0aW9uIGFuY2hvcj0iZWNfZGVjX2JpdF9sb2dwIiB0aXRsZT0iZWNfZGVjX2JpdF9s
b2dwKCkiPgorPHQ+CitUaGUgbmV4dCBpcyBlY19kZWNfYml0X2xvZ3AoKSAoZW50ZGVjLmMpLCB3
aGljaCBkZWNvZGVzIGEgc2luZ2xlIGJpbmFyeSBzeW1ib2wsCisgcmVwbGFjaW5nIGJvdGggdGhl
IGVjX2RlY29kZSgpIGFuZCBlY19kZWNfdXBkYXRlKCkgc3RlcHMuCitUaGUgY29udGV4dCBpcyBk
ZXNjcmliZWQgYnkgYSBzaW5nbGUgcGFyYW1ldGVyLCBsb2dwLCB3aGljaCBpcyB0aGUgYWJzb2x1
dGUKKyB2YWx1ZSBvZiB0aGUgYmFzZS0yIGxvZ2FyaXRobSBvZiB0aGUgcHJvYmFiaWxpdHkgb2Yg
YSAiMSIuCitJdCBpcyBtYXRoZW1hdGljYWxseSBlcXVpdmFsZW50IHRvIGNhbGxpbmcgZWNfZGVj
b2RlKCkgd2l0aAorIGZ0Jm5ic3A7PSZuYnNwOygxJmx0OyZsdDtsb2dwKSwgZm9sbG93ZWQgYnkg
ZWNfZGVjX3VwZGF0ZSgpIHdpdGgKKyB0aGUgMy10dXBsZSAoZmxba10mbmJzcDs9Jm5ic3A7MCwK
KyBmaFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7bG9ncCkmbmJzcDstJm5ic3A7MSwKKyBmdCZu
YnNwOz0mbmJzcDsoMSZsdDsmbHQ7bG9ncCkpIGlmIHRoZSByZXR1cm5lZCB2YWx1ZQorIG9mIGZz
IGlzIGxlc3MgdGhhbiAoMSZsdDsmbHQ7bG9ncCkmbmJzcDstJm5ic3A7MSAoYSAiMCIgd2FzIGRl
Y29kZWQpLCBhbmQgd2l0aAorIChmbFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7bG9ncCkmbmJz
cDstJm5ic3A7MSwKKyBmaFtrXSZuYnNwOz0mbmJzcDtmdCZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7
bG9ncCkpIG90aGVyd2lzZSAoYSAiMSIgd2FzCisgZGVjb2RlZCkuCitUaGUgaW1wbGVtZW50YXRp
b24gcmVxdWlyZXMgbm8gbXVsdGlwbGljYXRpb25zIG9yIGRpdmlzaW9ucy4KKzwvdD4KKzwvc2Vj
dGlvbj4KKzxzZWN0aW9uIGFuY2hvcj0iZWNfZGVjX2ljZGYiIHRpdGxlPSJlY19kZWNfaWNkZigp
Ij4KKzx0PgorVGhlIGxhc3QgaXMgZWNfZGVjX2ljZGYoKSAoZW50ZGVjLmMpLCB3aGljaCBkZWNv
ZGVzIGEgc2luZ2xlIHN5bWJvbCB3aXRoIGEKKyB0YWJsZS1iYXNlZCBjb250ZXh0IG9mIHVwIHRv
IDggYml0cywgYWxzbyByZXBsYWNpbmcgYm90aCB0aGUgZWNfZGVjb2RlKCkgYW5kCisgZWNfZGVj
X3VwZGF0ZSgpIHN0ZXBzLCBhcyB3ZWxsIGFzIHRoZSBzZWFyY2ggZm9yIHRoZSBkZWNvZGVkIHN5
bWJvbCBpbiBiZXR3ZWVuLgorVGhlIGNvbnRleHQgaXMgZGVzY3JpYmVkIGJ5IHR3byBwYXJhbWV0
ZXJzLCBhbiBpY2RmCisgKCJpbnZlcnNlIiBjdW11bGF0aXZlIGRpc3RyaWJ1dGlvbiBmdW5jdGlv
bikgdGFibGUgYW5kIGZ0Yi4KK0FzIHdpdGggZWNfZGVjb2RlX2JpbigpLCAoMSZsdDsmbHQ7ZnRi
KSBpcyBlcXVpdmFsZW50IHRvIGZ0LgoraWRjZltrXSwgb24gdGhlIG90aGVyIGhhbmQsIHN0b3Jl
cyAoMSZsdDsmbHQ7ZnRiKS1maFtrXSwgd2hpY2ggaXMgZXF1YWwgdG8KKyAoMSZsdDsmbHQ7ZnRi
KSZuYnNwOy0mbmJzcDtmbFtrKzFdLgorZmxbMF0gaXMgYXNzdW1lZCB0byBiZSAwLCBhbmQgdGhl
IHRhYmxlIGlzIHRlcm1pbmF0ZWQgYnkgYSB2YWx1ZSBvZiAwICh3aGVyZQorIGZoW2tdJm5ic3A7
PT0mbmJzcDtmdCkuCis8L3Q+Cis8dD4KK1RoZSBmdW5jdGlvbiBpcyBtYXRoZW1hdGljYWxseSBl
cXVpdmFsZW50IHRvIGNhbGxpbmcgZWNfZGVjb2RlKCkgd2l0aAorIGZ0Jm5ic3A7PSZuYnNwOygx
Jmx0OyZsdDtmdGIpLCB1c2luZyB0aGUgcmV0dXJuZWQgdmFsdWUgZnMgdG8gc2VhcmNoIHRoZSB0
YWJsZQorIGZvciB0aGUgZmlyc3QgZW50cnkgd2hlcmUgZnMmbmJzcDsmbHQ7Jm5ic3A7KDEmbHQ7
Jmx0O2Z0YiktaWNkZltrXSwgYW5kCisgY2FsbGluZyBlY19kZWNfdXBkYXRlKCkgd2l0aAorIGZs
W2tdJm5ic3A7PSZuYnNwOygxJmx0OyZsdDtmdGIpJm5ic3A7LSZuYnNwO2ljZGZbay0xXSAob3Ig
MAorIGlmIGsmbmJzcDs9PSZuYnNwOzApLCBmaFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7ZnRi
KSZuYnNwOy0mbmJzcDtpZGNmW2tdLAorIGFuZCBmdCZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7ZnRi
KS4KK0NvbWJpbmluZyB0aGUgc2VhcmNoIHdpdGggdGhlIHVwZGF0ZSBhbGxvd3MgdGhlIGRpdmlz
aW9uIHRvIGJlIHJlcGxhY2VkIGJ5IGEKKyBzZXJpZXMgb2YgbXVsdGlwbGljYXRpb25zICh3aGlj
aCBhcmUgdXN1YWxseSBtdWNoIGNoZWFwZXIpLCBhbmQgdXNpbmcgYW4KKyBpbnZlcnNlIENERiBh
bGxvd3MgdGhlIHVzZSBvZiBhbiBmdGIgYXMgbGFyZ2UgYXMgOCBpbiBhbiA4LWJpdCB0YWJsZSB3
aXRob3V0CisgYW55IHNwZWNpYWwgY2FzZXMuCitUaGlzIGlzIHRoZSBwcmltYXJ5IGludGVyZmFj
ZSB3aXRoIHRoZSByYW5nZSBkZWNvZGVyIGluIHRoZSBTSUxLIGxheWVyLCB0aG91Z2gKKyBpdCBp
cyB1c2VkIGluIGEgZmV3IHBsYWNlcyBpbiB0aGUgQ0VMVCBsYXllciBhcyB3ZWxsLgorPC90Pgor
PHQ+CitBbHRob3VnaCBpY2RmW2tdIGlzIG1vcmUgY29udmVuaWVudCBmb3IgdGhlIGNvZGUsIHRo
ZSBmcmVxdWVuY3kgY291bnRzLCBmW2tdLAorIGFyZSBhIG1vcmUgbmF0dXJhbCByZXByZXNlbnRh
dGlvbiBvZiB0aGUgcHJvYmFiaWxpdHkgZGlzdHJpYnV0aW9uIGZ1bmN0aW9uCisgKFBERikgZm9y
IGEgZ2l2ZW4gc3ltYm9sLgorVGhlcmVmb3JlIHRoaXMgZHJhZnQgbGlzdHMgdGhlIGxhdHRlciwg
bm90IHRoZSBmb3JtZXIsIHdoZW4gZGVzY3JpYmluZyB0aGUKKyBjb250ZXh0IGluIHdoaWNoIGEg
c3ltYm9sIGlzIGNvZGVkIGFzIGEgbGlzdCwgZS5nLiwgezQsIDQsIDQsIDR9LzE2IGZvciBhCisg
dW5pZm9ybSBjb250ZXh0IHdpdGggZm91ciBwb3NzaWJsZSB2YWx1ZXMgYW5kIGZ0Jm5ic3A7PSZu
YnNwOzE2LgorVGhlIHZhbHVlIG9mIGZ0IGFmdGVyIHRoZSBzbGFzaCBpcyBhbHdheXMgdGhlIHN1
bSBvZiB0aGUgZW50cmllcyBpbiB0aGUgUERGLAorIGJ1dCBpcyBpbmNsdWRlZCBmb3IgY29udmVu
aWVuY2UuCitDb250ZXh0cyB3aXRoIGlkZW50aWNhbCBwcm9iYWJpbGl0aWVzLCBmW2tdL2Z0LCBi
dXQgZGlmZmVyZW50IHZhbHVlcyBvZiBmdAorIChvciBlcXVpdmFsZW50bHksIGZ0YikgYXJlIG5v
dCB0aGUgc2FtZSwgYW5kIGNhbm5vdCwgaW4gZ2VuZXJhbCwgYmUgdXNlZCBpbgorIHBsYWNlIG9m
IG9uZSBhbm90aGVyLgorQW4gaWNkZiB0YWJsZSBpcyBhbHNvIG5vdCBjYXBhYmxlIG9mIHJlcHJl
c2VudGluZyBhIFBERiB3aGVyZSB0aGUgZmlyc3Qgc3ltYm9sCisgaGFzIDAgcHJvYmFiaWxpdHku
CitJbiBzdWNoIGNvbnRleHRzLCBlY19kZWNfaWNkZigpIGNhbiBkZWNvZGUgdGhlIHN5bWJvbCBi
eSB1c2luZyBhIHRhYmxlIHRoYXQKKyBkcm9wcyB0aGUgZW50cmllcyBmb3IgYW55IGluaXRpYWwg
emVyby1wcm9iYWJpbGl0eSB2YWx1ZXMgYW5kIGFkZGluZyB0aGUKKyBjb25zdGFudCBvZmZzZXQg
b2YgdGhlIGZpcnN0IHZhbHVlIHdpdGggYSBub24temVybyBwcm9iYWJpbGl0eSB0byBpdHMgcmV0
dXJuCisgdmFsdWUuCis8L3Q+Cis8L3NlY3Rpb24+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFu
Y2hvcj0iZGVjb2RpbmctYml0cyIgdGl0bGU9IkRlY29kaW5nIFJhdyBCaXRzIj4KKzx0PgorVGhl
IHJhdyBiaXRzIHVzZWQgYnkgdGhlIENFTFQgbGF5ZXIgYXJlIHBhY2tlZCBhdCB0aGUgZW5kIG9m
IHRoZSBwYWNrZXQsIHdpdGgKKyB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQgYml0IG9mIHRoZSBmaXJz
dCB2YWx1ZSBwYWNrZWQgaW4gdGhlIGxlYXN0IHNpZ25pZmljYW50CisgYml0IG9mIHRoZSBsYXN0
IGJ5dGUsIGZpbGxpbmcgdXAgdG8gdGhlIG1vc3Qgc2lnbmlmaWNhbnQgYml0IGluIHRoZSBsYXN0
IGJ5dGUsCisgY29udGludWluZyBvbiB0byB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQgYml0IG9mIHRo
ZSBwZW51bHRpbWF0ZSBieXRlLCBhbmQgc28gb24uCitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0
aW9uIHJlYWRzIHRoZW0gdXNpbmcgZWNfZGVjX2JpdHMoKSAoZW50ZGVjLmMpLgorQmVjYXVzZSB0
aGUgcmFuZ2UgZGVjb2RlciBtdXN0IHJlYWQgc2V2ZXJhbCBieXRlcyBhaGVhZCBpbiB0aGUgc3Ry
ZWFtLCBhcworIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9InJhbmdlLWRlY29kZXItcmVub3Jt
Ii8+LCB0aGUgaW5wdXQgY29uc3VtZWQgYnkgdGhlCisgcmF3IGJpdHMgbWF5IG92ZXJsYXAgd2l0
aCB0aGUgaW5wdXQgY29uc3VtZWQgYnkgdGhlIHJhbmdlIGNvZGVyLCBhbmQgYSBkZWNvZGVyCisg
TVVTVCBhbGxvdyB0aGlzLgorVGhlIGZvcm1hdCBzaG91bGQgcmVuZGVyIGl0IGltcG9zc2libGUg
dG8gYXR0ZW1wdCB0byByZWFkIG1vcmUgcmF3IGJpdHMgdGhhbgorIHRoZXJlIGFyZSBhY3R1YWwg
Yml0cyBpbiB0aGUgZnJhbWUsIHRob3VnaCBhIGRlY29kZXIgbWF5IHdpc2ggdG8gY2hlY2sgZm9y
CisgdGhpcyBhbmQgcmVwb3J0IGFuIGVycm9yLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlv
biBhbmNob3I9ImVjX2RlY191aW50IiB0aXRsZT0iRGVjb2RpbmcgVW5pZm9ybWx5IERpc3RyaWJ1
dGVkIEludGVnZXJzIj4KKzx0PgorVGhlIGZ1bmN0aW9uIGVjX2RlY191aW50KCkgKGVudGRlYy5j
KSBkZWNvZGVzIG9uZSBvZiBmdCBlcXVpcHJvYmFibGUgdmFsdWVzIGluCisgdGhlIHJhbmdlIDAg
dG8gKGZ0Jm5ic3A7LSZuYnNwOzEpLCBpbmNsdXNpdmUsIGVhY2ggd2l0aCBhIGZyZXF1ZW5jeSBv
ZiAxLAorIHdoZXJlIGZ0IG1heSBiZSBhcyBsYXJnZSBhcyAoMioqMzImbmJzcDstJm5ic3A7MSku
CitCZWNhdXNlIGVjX2RlY29kZSgpIGlzIGxpbWl0ZWQgdG8gYSB0b3RhbCBmcmVxdWVuY3kgb2Yg
KDIqKjE2Jm5ic3A7LSZuYnNwOzEpLAorIGl0IHNwbGl0cyB1cCB0aGUgdmFsdWUgaW50byBhIHJh
bmdlIGNvZGVkIHN5bWJvbCByZXByZXNlbnRpbmcgdXAgdG8gOCBvZiB0aGUKKyBoaWdoIGJpdHMs
IGFuZCwgaWYgbmVjZXNzYXJ5LCByYXcgYml0cyByZXByZXNlbnRpbmcgdGhlIHJlbWFpbmRlciBv
ZiB0aGUKKyB2YWx1ZS4KK1RoZSBsaW1pdCBvZiA4IGJpdHMgaW4gdGhlIHJhbmdlIGNvZGVkIHN5
bWJvbCBpcyBhIHRyYWRlLW9mZiBiZXR3ZWVuCisgaW1wbGVtZW50YXRpb24gY29tcGxleGl0eSwg
bW9kZWxpbmcgZXJyb3IgKHNpbmNlIHRoZSBzeW1ib2xzIG5vIGxvbmdlciB0cnVseQorIGhhdmUg
ZXF1YWwgY29kaW5nIGNvc3QpLCBhbmQgcm91bmRpbmcgZXJyb3IgaW50cm9kdWNlZCBieSB0aGUg
cmFuZ2UgY29kZXIKKyBpdHNlbGYgKHdoaWNoIGdldHMgbGFyZ2VyIGFzIG1vcmUgYml0cyBhcmUg
aW5jbHVkZWQpLgorVXNpbmcgcmF3IGJpdHMgcmVkdWNlcyB0aGUgbWF4aW11bSBudW1iZXIgb2Yg
ZGl2aXNpb25zIHJlcXVpcmVkIGluIHRoZSB3b3JzdAorIGNhc2UsIGJ1dCBtZWFucyB0aGF0IGl0
IG1heSBiZSBwb3NzaWJsZSB0byBkZWNvZGUgYSB2YWx1ZSBvdXRzaWRlIHRoZSByYW5nZQorIDAg
dG8gKGZ0Jm5ic3A7LSZuYnNwOzEpLCBpbmNsdXNpdmUuCis8L3Q+CisKKzx0PgorZWNfZGVjX3Vp
bnQoKSB0YWtlcyBhIHNpbmdsZSwgcG9zaXRpdmUgcGFyYW1ldGVyLCBmdCwgd2hpY2ggaXMgbm90
IG5lY2Vzc2FyaWx5CisgYSBwb3dlciBvZiB0d28sIGFuZCByZXR1cm5zIGFuIGludGVnZXIsIHQs
IHdob3NlIHZhbHVlIGxpZXMgYmV0d2VlbiAwIGFuZAorIChmdCZuYnNwOy0mbmJzcDsxKSwgaW5j
bHVzaXZlLgorTGV0IGZ0YiZuYnNwOz0mbmJzcDtpbG9nKGZ0Jm5ic3A7LSZuYnNwOzEpLCBpLmUu
LCB0aGUgbnVtYmVyIG9mIGJpdHMgcmVxdWlyZWQKKyB0byBzdG9yZSAoZnQmbmJzcDstJm5ic3A7
MSkgaW4gdHdvJ3MgY29tcGxlbWVudCBub3RhdGlvbi4KK0lmIGZ0YiBpcyA4IG9yIGxlc3MsIHRo
ZW4gdCBpcyBkZWNvZGVkIHdpdGggdCZuYnNwOz0mbmJzcDtlY19kZWNvZGUoZnQpLCBhbmQKKyB0
aGUgcmFuZ2UgY29kZXIgc3RhdGUgaXMgdXBkYXRlZCB1c2luZyB0aGUgdGhyZWUtdHVwbGUgKHQs
IHQmbmJzcDsrJm5ic3A7MSwKKyBmdCkuCis8L3Q+Cis8dD4KK0lmIGZ0YiBpcyBncmVhdGVyIHRo
YW4gOCwgdGhlbiB0aGUgdG9wIDggYml0cyBvZiB0IGFyZSBkZWNvZGVkIHVzaW5nCis8ZmlndXJl
IGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCit0ID0g
ZWNfZGVjb2RlKCgoZnQgLSAxKSA+PiAoZnRiIC0gOCkpICsgMSkgLAorXV0+PC9hcnR3b3JrPgor
PC9maWd1cmU+CisgdGhlIGRlY29kZXIgc3RhdGUgaXMgdXBkYXRlZCB1c2luZyB0aGUgdGhyZWUt
dHVwbGUKKyAodCwgdCZuYnNwOysmbmJzcDsxLAorICgoZnQmbmJzcDstJm5ic3A7MSkmbmJzcDsm
Z3Q7Jmd0OyZuYnNwOyhmdGImbmJzcDstJm5ic3A7OCkpJm5ic3A7KyZuYnNwOzEpLAorIGFuZCB0
aGUgcmVtYWluaW5nIGJpdHMgYXJlIGRlY29kZWQgYXMgcmF3IGJpdHMsIHNldHRpbmcKKzxmaWd1
cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3Qg
PSAodCA8PCAoZnRiIC0gOCkpIHwgZWNfZGVjX2JpdHMoZnRiIC0gOCkgLgorXV0+PC9hcnR3b3Jr
PgorPC9maWd1cmU+CitJZiwgYXQgdGhpcyBwb2ludCwgdCA+PSBmdCwgdGhlbiB0aGUgY3VycmVu
dCBmcmFtZSBpcyBjb3JydXB0LgorSW4gdGhhdCBjYXNlLCB0aGUgZGVjb2RlciBzaG91bGQgYXNz
dW1lIHRoZXJlIGhhcyBiZWVuIGFuIGVycm9yIGluIHRoZSBjb2RpbmcsCisgZGVjb2RpbmcsIG9y
IHRyYW5zbWlzc2lvbiBhbmQgU0hPVUxEIHRha2UgbWVhc3VyZXMgdG8gY29uY2VhbCB0aGUKKyBl
cnJvciBhbmQvb3IgcmVwb3J0IHRvIHRoZSBhcHBsaWNhdGlvbiB0aGF0IHRoZSBlcnJvciBoYXMg
b2NjdXJyZWQuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJkZWNvZGVy
LXRlbGwiIHRpdGxlPSJDdXJyZW50IEJpdCBVc2FnZSI+Cis8dD4KK1RoZSBiaXQgYWxsb2NhdGlv
biByb3V0aW5lcyBpbiB0aGUgQ0VMVCBkZWNvZGVyIG5lZWQgYSBjb25zZXJ2YXRpdmUgdXBwZXIg
Ym91bmQKKyBvbiB0aGUgbnVtYmVyIG9mIGJpdHMgdGhhdCBoYXZlIGJlZW4gdXNlZCBmcm9tIHRo
ZSBjdXJyZW50IGZyYW1lIHRodXMgZmFyLAorIGluY2x1ZGluZyBib3RoIHJhbmdlIGNvZGVyIGJp
dHMgYW5kIHJhdyBiaXRzLgorVGhpcyBkcml2ZXMgYWxsb2NhdGlvbiBkZWNpc2lvbnMgdGhhdCBt
dXN0IG1hdGNoIHRob3NlIG1hZGUgaW4gdGhlIGVuY29kZXIuCitUaGUgdXBwZXIgYm91bmQgaXMg
Y29tcHV0ZWQgaW4gdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiB0byB3aG9sZS1iaXQKKyBw
cmVjaXNpb24gYnkgdGhlIGZ1bmN0aW9uIGVjX3RlbGwoKSAoZW50Y29kZS5oKSBhbmQgdG8gZnJh
Y3Rpb25hbCAxLzh0aCBiaXQKKyBwcmVjaXNpb24gYnkgdGhlIGZ1bmN0aW9uIGVjX3RlbGxfZnJh
YygpIChlbnRjb2RlLmMpLgorTGlrZSBhbGwgb3BlcmF0aW9ucyBpbiB0aGUgcmFuZ2UgY29kZXIs
IGl0IG11c3QgYmUgaW1wbGVtZW50ZWQgaW4gYSBiaXQtZXhhY3QKKyBtYW5uZXIsIGFuZCBtdXN0
IHByb2R1Y2UgZXhhY3RseSB0aGUgc2FtZSB2YWx1ZSByZXR1cm5lZCBieSB0aGUgc2FtZSBmdW5j
dGlvbnMKKyBpbiB0aGUgZW5jb2RlciBhZnRlciBlbmNvZGluZyB0aGUgc2FtZSBzeW1ib2xzLgor
PC90PgorPHQ+CitlY190ZWxsKCkgaXMgZ3VhcmFudGVlZCB0byByZXR1cm4gY2VpbChlY190ZWxs
X2ZyYWMoKS84LjApLgorSW4gdmFyaW91cyBwbGFjZXMgdGhlIGNvZGVjIHdpbGwgY2hlY2sgdG8g
ZW5zdXJlIHRoZXJlIGlzIGVub3VnaCByb29tIHRvCisgY29udGFpbiBhIHN5bWJvbCBiZWZvcmUg
YXR0ZW1wdGluZyB0byBkZWNvZGUgaXQuCitJbiBwcmFjdGljZSwgYWx0aG91Z2ggdGhlIG51bWJl
ciBvZiBiaXRzIHVzZWQgc28gZmFyIGlzIGFuIHVwcGVyIGJvdW5kLAorIGRlY29kaW5nIGEgc3lt
Ym9sIHdob3NlIHByb2JhYmlsaXR5IG1vZGVsIHN1Z2dlc3RzIGl0IGhhcyBhIHdvcnN0LWNhc2Ug
Y29zdCBvZgorIHAgMS84dGggYml0cyBtYXkgYWN0dWFsbHkgYWR2YW5jZSB0aGUgcmV0dXJuIHZh
bHVlIG9mIGVjX3RlbGxfZnJhYygpIGJ5CisgcC0xLCBwLCBvciBwKzEgMS84dGggYml0cywgZHVl
IHRvIGFwcHJveGltYXRpb24gZXJyb3IgaW4gdGhhdCB1cHBlciBib3VuZCwKKyB0cnVuY2F0aW9u
IGVycm9yIGluIHRoZSByYW5nZSBjb2RlciwgYW5kIGZvciBsYXJnZSB2YWx1ZXMgb2YgZnQsIG1v
ZGVsaW5nCisgZXJyb3IgaW4gZWNfZGVjX3VpbnQoKS4KKzwvdD4KKzx0PgorSG93ZXZlciwgdGhp
cyBlcnJvciBpcyBib3VuZGVkLCBhbmQgcGVyaW9kaWMgY2FsbHMgdG8gZWNfdGVsbCgpIG9yCisg
ZWNfdGVsbF9mcmFjKCkgYXQgcHJlY2lzZWx5IGRlZmluZWQgcG9pbnRzIGluIHRoZSBkZWNvZGlu
ZyBwcm9jZXNzIHByZXZlbnQgaXQKKyBmcm9tIGFjY3VtdWxhdGluZy4KK0ZvciBhIHJhbmdlIGNv
ZGVyIHN5bWJvbCB0aGF0IHJlcXVpcmVzIGEgd2hvbGUgbnVtYmVyIG9mIGJpdHMgKGkuZS4sCisg
Zm9yIHdoaWNoIGZ0LyhmaFtrXSZuYnNwOy0mbmJzcDtmbFtrXSkgaXMgYSBwb3dlciBvZiB0d28p
LCB3aGVyZSB0aGVyZSBhcmUgYXQKKyBsZWFzdCBwIDEvOHRoIGJpdHMgYXZhaWxhYmxlLCBkZWNv
ZGluZyB0aGUgc3ltYm9sIHdpbGwgbmV2ZXIgY2F1c2UgZWNfdGVsbCgpIG9yCisgZWNfdGVsbF9m
cmFjKCkgdG8gZXhjZWVkIHRoZSBzaXplIG9mIHRoZSBmcmFtZSAoImJ1c3QgdGhlIGJ1ZGdldCIp
LgorSW4gdGhpcyBjYXNlIHRoZSByZXR1cm4gdmFsdWUgb2YgZWNfdGVsbF9mcmFjKCkgd2lsbCBv
bmx5IGFkdmFuY2UgYnkgbW9yZSB0aGFuCisgcCAxLzh0aCBiaXRzIGlmIHRoZXJlIHdhcyBhbiBh
ZGRpdGlvbmFsLCBmcmFjdGlvbmFsIG51bWJlciBvZiBiaXRzIHJlbWFpbmluZywKKyBhbmQgaXQg
d2lsbCBuZXZlciBhZHZhbmNlIGJleW9uZCB0aGUgbmV4dCB3aG9sZS1iaXQgYm91bmRhcnksIHdo
aWNoIGlzIHNhZmUsCisgc2luY2UgZnJhbWVzIGFsd2F5cyBjb250YWluIGEgd2hvbGUgbnVtYmVy
IG9mIGJpdHMuCitIb3dldmVyLCB3aGVuIHAgaXMgbm90IGEgd2hvbGUgbnVtYmVyIG9mIGJpdHMs
IGFuIGV4dHJhIDEvOHRoIGJpdCBpcyByZXF1aXJlZAorIHRvIGVuc3VyZSB0aGF0IGRlY29kaW5n
IHRoZSBzeW1ib2wgd2lsbCBub3QgYnVzdCB0aGUgYnVkZ2V0LgorPC90PgorPHQ+CitUaGUgcmVm
ZXJlbmNlIGltcGxlbWVudGF0aW9uIGtlZXBzIHRyYWNrIG9mIHRoZSB0b3RhbCBudW1iZXIgb2Yg
d2hvbGUgYml0cyB0aGF0CisgaGF2ZSBiZWVuIHByb2Nlc3NlZCBieSB0aGUgZGVjb2RlciBzbyBm
YXIgaW4gdGhlIHZhcmlhYmxlIG5iaXRzX3RvdGFsLAorIGluY2x1ZGluZyB0aGUgKHBvc3NpYmx5
IGZyYWN0aW9uYWwpIG51bWJlciBvZiBiaXRzIHRoYXQgYXJlIGN1cnJlbnRseQorIGJ1ZmZlcmVk
LCBidXQgbm90IGNvbnN1bWVkLCBpbnNpZGUgdGhlIHJhbmdlIGNvZGVyLgorbmJpdHNfdG90YWwg
aXMgaW5pdGlhbGl6ZWQgdG8gOSBqdXN0IGJlZm9yZSB0aGUgaW5pdGlhbCByYW5nZSByZW5vcm1h
bGl6YXRpb24KKyBwcm9jZXNzIGNvbXBsZXRlcyAob3IgZXF1aXZhbGVudGx5LCBpdCBjYW4gYmUg
aW5pdGlhbGl6ZWQgdG8gMzMgYWZ0ZXIgdGhlCisgZmlyc3QgcmVub3JtYWxpemF0aW9uKS4KK1Ro
ZSBleHRyYSB0d28gYml0cyBvdmVyIHRoZSBhY3R1YWwgYW1vdW50IGJ1ZmZlcmVkIGJ5IHRoZSBy
YW5nZSBjb2RlcgorIGd1YXJhbnRlZXMgdGhhdCBpdCBpcyBhbiB1cHBlciBib3VuZCBhbmQgdGhh
dCB0aGVyZSBpcyBlbm91Z2ggcm9vbSBmb3IgdGhlCisgZW5jb2RlciB0byB0ZXJtaW5hdGUgdGhl
IHN0cmVhbS4KK0VhY2ggaXRlcmF0aW9uIHRocm91Z2ggdGhlIHJhbmdlIGNvZGVyJ3MgcmVub3Jt
YWxpemF0aW9uIGxvb3AgaW5jcmVhc2VzCisgbmJpdHNfdG90YWwgYnkgOC4KK1JlYWRpbmcgcmF3
IGJpdHMgaW5jcmVhc2VzIG5iaXRzX3RvdGFsIGJ5IHRoZSBudW1iZXIgb2YgcmF3IGJpdHMgcmVh
ZC4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJlY190ZWxsIiB0aXRsZT0iZWNfdGVsbCgpIj4K
Kzx0PgorVGhlIHdob2xlIG51bWJlciBvZiBiaXRzIGJ1ZmZlcmVkIGluIHJuZyBtYXkgYmUgZXN0
aW1hdGVkIHZpYSBsZyA9IGlsb2cocm5nKS4KK2VjX3RlbGwoKSB0aGVuIGJlY29tZXMgYSBzaW1w
bGUgbWF0dGVyIG9mIHJlbW92aW5nIHRoZXNlIGJpdHMgZnJvbSB0aGUgdG90YWwuCitJdCByZXR1
cm5zIChuYml0c190b3RhbCAtIGxnKS4KKzwvdD4KKzx0PgorSW4gYSBuZXdseSBpbml0aWFsaXpl
ZCBkZWNvZGVyLCBiZWZvcmUgYW55IHN5bWJvbHMgaGF2ZSBiZWVuIHJlYWQsIHRoaXMgcmVwb3J0
cworIHRoYXQgMSBiaXQgaGFzIGJlZW4gdXNlZC4KK1RoaXMgaXMgdGhlIGJpdCByZXNlcnZlZCBm
b3IgdGVybWluYXRpb24gb2YgdGhlIGVuY29kZXIuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0
aW9uIGFuY2hvcj0iZWNfdGVsbF9mcmFjIiB0aXRsZT0iZWNfdGVsbF9mcmFjKCkiPgorPHQ+Citl
Y190ZWxsX2ZyYWMoKSBlc3RpbWF0ZXMgdGhlIG51bWJlciBvZiBiaXRzIGJ1ZmZlcmVkIGluIHJu
ZyB0byBmcmFjdGlvbmFsCisgcHJlY2lzaW9uLgorU2luY2Ugcm5nIG11c3QgYmUgZ3JlYXRlciB0
aGFuIDIqKjIzIGFmdGVyIHJlbm9ybWFsaXphdGlvbiwgbGcgbXVzdCBiZSBhdCBsZWFzdAorIDI0
LgorTGV0Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
Cis8IVtDREFUQVsKK3JfUTE1ID0gcm5nID4+IChsZy0xNikgLAorXV0+PC9hcnR3b3JrPgorPC9m
aWd1cmU+Cisgc28gdGhhdCAzMjc2OCAmbHQ7PSByX1ExNSAmbHQ7IDY1NTM2LCBhbiB1bnNpZ25l
ZCBRMTUgdmFsdWUgcmVwcmVzZW50aW5nIHRoZQorIGZyYWN0aW9uYWwgcGFydCBvZiBybmcuCitU
aGVuIHRoZSBmb2xsb3dpbmcgcHJvY2VkdXJlIGNhbiBiZSB1c2VkIHRvIGFkZCBvbmUgYml0IG9m
IHByZWNpc2lvbiB0byBsZy4KK0ZpcnN0LCB1cGRhdGUKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+
Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworcl9RMTUgPSAocl9RMTUqcl9R
MTUpID4+IDE1IC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlbiBhZGQgdGhlIDE2dGgg
Yml0IG9mIHJfUTE1IHRvIGxnIHZpYQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3Jr
IGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCitsZyA9IDIqbGcgKyAocl9RMTUgPj4gMTYpIC4K
K11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorRmluYWxseSwgaWYgdGhpcyBiaXQgd2FzIGEgMSwg
cmVkdWNlIHJfUTE1IGJ5IGEgZmFjdG9yIG9mIHR3byB2aWEKKzxmaWd1cmUgYWxpZ249ImNlbnRl
ciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworcl9RMTUgPSByX1ExNSA+
PiAxICwKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHNvIHRoYXQgaXQgb25jZSBhZ2FpbiBs
aWVzIGluIHRoZSByYW5nZSAzMjc2OCAmbHQ7PSByX1ExNSAmbHQ7IDY1NTM2LgorPC90PgorPHQ+
CitUaGlzIHByb2NlZHVyZSBpcyByZXBlYXRlZCB0aHJlZSB0aW1lcyB0byBleHRlbmQgbGcgdG8g
MS84dGggYml0IHByZWNpc2lvbi4KK2VjX3RlbGxfZnJhYygpIHRoZW4gcmV0dXJucyAobmJpdHNf
dG90YWwqOCAtIGxnKS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19kZWNvZGVyX291dGxpbmUiIHRpdGxlPSJTSUxL
IERlY29kZXIiPgorPHQ+CitUaGUgZGVjb2RlcidzIExQIGxheWVyIHVzZXMgYSBtb2RpZmllZCB2
ZXJzaW9uIG9mIHRoZSBTSUxLIGNvZGVjIChoZXJlaW4gc2ltcGx5CisgY2FsbGVkICJTSUxLIiks
IHdoaWNoIHJ1bnMgYSBkZWNvZGVkIGV4Y2l0YXRpb24gc2lnbmFsIHRocm91Z2ggYWRhcHRpdmUK
KyBsb25nLXRlcm0gYW5kIHNob3J0LXRlcm0gcHJlZGljdGlvbiBzeW50aGVzaXMgZmlsdGVycy4K
K0l0IHJ1bnMgYXQgTkIsIE1CLCBhbmQgV0Igc2FtcGxlIHJhdGVzIGludGVybmFsbHkuCitXaGVu
IHVzZWQgaW4gYSBTV0Igb3IgRkIgSHlicmlkIGZyYW1lLCB0aGUgTFAgbGF5ZXIgaXRzZWxmIHN0
aWxsIG9ubHkgcnVucyBpbgorIFdCLgorPC90PgorCis8c2VjdGlvbiB0aXRsZT0iU0lMSyBEZWNv
ZGVyIE1vZHVsZXMiPgorPHQ+CitBbiBvdmVydmlldyBvZiB0aGUgZGVjb2RlciBpcyBnaXZlbiBp
biA8eHJlZiB0YXJnZXQ9InNpbGtfZGVjb2Rlcl9maWd1cmUiLz4uCis8L3Q+Cis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiIGFuY2hvcj0ic2lsa19kZWNvZGVyX2ZpZ3VyZSIgdGl0bGU9IlNJTEsgRGVj
b2RlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworICAgKy0tLS0tLS0t
LSsgICAgKy0tLS0tLS0tLS0tLSsKKy0tPnwgUmFuZ2UgICB8LS0tPnwgRGVjb2RlICAgICB8LS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworIDEgfCBEZWNvZGVyIHwgMiAgfCBQYXJhbWV0ZXJz
IHwtLS0tLS0tLS0tKyAgICAgICA1ICAgICAgICB8CisgICArLS0tLS0tLS0tKyAgICArLS0tLS0t
LS0tLS0tKyAgICAgNCAgICB8ICAgICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICAgICAgICAg
ICAgMyB8ICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgICAg
ICAgICAgICAgXC8gICAgICAgICAgICAgICBcLyAgICAgICAgICAgICAgIFwvCisgICAgICAgICAg
ICAgICAgICArLS0tLS0tLS0tLS0tKyAgICstLS0tLS0tLS0tLS0rICAgKy0tLS0tLS0tLS0tLSsK
KyAgICAgICAgICAgICAgICAgIHwgR2VuZXJhdGUgICB8LS0+fCBMVFAgICAgICAgIHwtLT58IExQ
QyAgICAgICAgfAorICAgICAgICAgICAgICAgICAgfCBFeGNpdGF0aW9uIHwgICB8IFN5bnRoZXNp
cyAgfCAgIHwgU3ludGhlc2lzICB8CisgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tKyAg
ICstLS0tLS0tLS0tLS0rICAgKy0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIF4gICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICAg
ICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAg
ICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA2Cisg
ICAgICAgICAgICAgICAgICAgICAgfCAgICstLS0tLS0tLS0tLS0rICAgKy0tLS0tLS0tLS0tLS0r
CisgICAgICAgICAgICAgICAgICAgICAgKy0tPnwgU3RlcmVvICAgICB8LS0+fCBTYW1wbGUgUmF0
ZSB8LS0+CisgICAgICAgICAgICAgICAgICAgICAgICAgIHwgVW5taXhpbmcgICB8IDcgfCBDb252
ZXJzaW9uICB8IDgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLSsgICAr
LS0tLS0tLS0tLS0tLSsKKworMTogUmFuZ2UgZW5jb2RlZCBiaXRzdHJlYW0KKzI6IENvZGVkIHBh
cmFtZXRlcnMKKzM6IFB1bHNlcywgTFNCcywgYW5kIHNpZ25zCis0OiBQaXRjaCBsYWdzLCBMb25n
LVRlcm0gUHJlZGljdGlvbiAoTFRQKSBjb2VmZmljaWVudHMKKzU6IExpbmVhciBQcmVkaWN0aXZl
IENvZGluZyAoTFBDKSBjb2VmZmljaWVudHMgYW5kIGdhaW5zCis2OiBEZWNvZGVkIHNpZ25hbCAo
bW9ubyBvciBtaWQtc2lkZSBzdGVyZW8pCis3OiBVbm1peGVkIHNpZ25hbCAobW9ubyBvciBsZWZ0
LXJpZ2h0IHN0ZXJlbykKKzg6IFJlc2FtcGxlZCBzaWduYWwKK11dPgorPC9hcnR3b3JrPgorPC9m
aWd1cmU+CisKKzx0PgorVGhlIGRlY29kZXIgZmVlZHMgdGhlIGJpdHN0cmVhbSAoMSkgdG8gdGhl
IHJhbmdlIGRlY29kZXIgZnJvbQorIDx4cmVmIHRhcmdldD0icmFuZ2UtZGVjb2RlciIvPiwgYW5k
IHRoZW4gZGVjb2RlcyB0aGUgcGFyYW1ldGVycyBpbiBpdCAoMikKKyB1c2luZyB0aGUgcHJvY2Vk
dXJlcyBkZXRhaWxlZCBpbgorIFNlY3Rpb25zJm5ic3A7PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0
YXJnZXQ9InNpbGtfaGVhZGVyX2JpdHMiLz4KKyB0aHJvdWdoJm5ic3A7PHhyZWYgZm9ybWF0PSJj
b3VudGVyIiB0YXJnZXQ9InNpbGtfc2lnbnMiLz4uCitUaGVzZSBwYXJhbWV0ZXJzICgzLCA0LCA1
KSBhcmUgdXNlZCB0byBnZW5lcmF0ZSBhbiBleGNpdGF0aW9uIHNpZ25hbCAoc2VlCisgPHhyZWYg
dGFyZ2V0PSJzaWxrX2V4Y2l0YXRpb25fcmVjb25zdHJ1Y3Rpb24iLz4pLCB3aGljaCBpcyBmZWQg
dG8gYW4gb3B0aW9uYWwKKyBsb25nLXRlcm0gcHJlZGljdGlvbiAoTFRQKSBmaWx0ZXIgKHZvaWNl
ZCBmcmFtZXMgb25seSwgc2VlCisgPHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9zeW50aGVzaXMiLz4p
IGFuZCB0aGVuIGEgc2hvcnQtdGVybSBwcmVkaWN0aW9uIGZpbHRlcgorIChzZWUgPHhyZWYgdGFy
Z2V0PSJzaWxrX2xwY19zeW50aGVzaXMiLz4pLCBwcm9kdWNpbmcgdGhlIGRlY29kZWQgc2lnbmFs
ICg2KS4KK0ZvciBzdGVyZW8gc3RyZWFtcywgdGhlIG1pZC1zaWRlIHJlcHJlc2VudGF0aW9uIGlz
IGNvbnZlcnRlZCB0byBzZXBhcmF0ZSBsZWZ0CisgYW5kIHJpZ2h0IGNoYW5uZWxzICg3KS4KK1Ro
ZSByZXN1bHQgaXMgZmluYWxseSByZXNhbXBsZWQgdG8gdGhlIGRlc2lyZWQgb3V0cHV0IHNhbXBs
ZSByYXRlIChlLmcuLAorIDQ4Jm5ic3A7a0h6KSBzbyB0aGF0IHRoZSByZXNhbXBsZWQgc2lnbmFs
ICg4KSBjYW4gYmUgbWl4ZWQgd2l0aCB0aGUgQ0VMVAorIGxheWVyLgorPC90PgorCis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19sYXllcl9vcmdhbml6YXRpb24iIHRpdGxlPSJM
UCBMYXllciBPcmdhbml6YXRpb24iPgorCis8dD4KK0ludGVybmFsbHksIHRoZSBMUCBsYXllciBv
ZiBhIHNpbmdsZSBPcHVzIGZyYW1lIGlzIGNvbXBvc2VkIG9mIGVpdGhlciBhIHNpbmdsZQorIDEw
Jm5ic3A7bXMgcmVndWxhciBTSUxLIGZyYW1lIG9yIGJldHdlZW4gb25lIGFuZCB0aHJlZSAyMCZu
YnNwO21zIHJlZ3VsYXIgU0lMSworIGZyYW1lcy4KK0Egc3RlcmVvIE9wdXMgZnJhbWUgbWF5IGRv
dWJsZSB0aGUgbnVtYmVyIG9mIHJlZ3VsYXIgU0lMSyBmcmFtZXMgKHVwIHRvIGEgdG90YWwKKyBv
ZiBzaXgpLCBzaW5jZSBpdCBpbmNsdWRlcyBzZXBhcmF0ZSBmcmFtZXMgZm9yIGEgbWlkIGNoYW5u
ZWwgYW5kLCBvcHRpb25hbGx5LAorIGEgc2lkZSBjaGFubmVsLgorT3B0aW9uYWwgTG93IEJpdC1S
YXRlIFJlZHVuZGFuY3kgKExCUlIpIGZyYW1lcywgd2hpY2ggYXJlIHJlZHVjZWQtYml0cmF0ZQor
IGVuY29kaW5ncyBvZiBwcmV2aW91cyBTSUxLIGZyYW1lcywgbWF5IGJlIGluY2x1ZGVkIHRvIGFp
ZCBpbiByZWNvdmVyeSBmcm9tCisgcGFja2V0IGxvc3MuCitJZiBwcmVzZW50LCB0aGVzZSBhcHBl
YXIgYmVmb3JlIHRoZSByZWd1bGFyIFNJTEsgZnJhbWVzLgorVGhleSBhcmUgaW4gbW9zdCByZXNw
ZWN0cyBpZGVudGljYWwgdG8gcmVndWxhciwgYWN0aXZlIFNJTEsgZnJhbWVzLCBleGNlcHQgdGhh
dAorIHRoZXkgYXJlIHVzdWFsbHkgZW5jb2RlZCB3aXRoIGEgbG93ZXIgYml0cmF0ZS4KK1RoaXMg
ZHJhZnQgdXNlcyAiU0lMSyBmcmFtZSIgdG8gcmVmZXIgdG8gZWl0aGVyIG9uZSBhbmQgInJlZ3Vs
YXIgU0lMSyBmcmFtZSIgaWYKKyBpdCBuZWVkcyB0byBkcmF3IGEgZGlzdGluY3Rpb24gYmV0d2Vl
biB0aGUgdHdvLgorPC90PgorPHQ+CitMb2dpY2FsbHksIGVhY2ggU0lMSyBmcmFtZSBpcyBpbiB0
dXJuIGNvbXBvc2VkIG9mIGVpdGhlciB0d28gb3IgZm91ciA1Jm5ic3A7bXMKKyBzdWJmcmFtZXMu
CitWYXJpb3VzIHBhcmFtZXRlcnMsIHN1Y2ggYXMgdGhlIHF1YW50aXphdGlvbiBnYWluIG9mIHRo
ZSBleGNpdGF0aW9uIGFuZCB0aGUKKyBwaXRjaCBsYWcgYW5kIGZpbHRlciBjb2VmZmljaWVudHMg
Y2FuIHZhcnkgb24gYSBzdWJmcmFtZS1ieS1zdWJmcmFtZSBiYXNpcy4KK1BoeXNpY2FsbHksIHRo
ZSBwYXJhbWV0ZXJzIGZvciBlYWNoIHN1YmZyYW1lIGFyZSBpbnRlcmxlYXZlZCBpbiB0aGUgYml0
c3RyZWFtLAorIGFzIGRlc2NyaWJlZCBpbiB0aGUgcmVsZXZhbnQgc2VjdGlvbnMgZm9yIGVhY2gg
cGFyYW1ldGVyLgorPC90PgorPHQ+CitBbGwgb2YgdGhlc2UgZnJhbWVzIGFuZCBzdWJmcmFtZXMg
YXJlIGRlY29kZWQgZnJvbSB0aGUgc2FtZSByYW5nZSBjb2Rlciwgd2l0aAorIG5vIHBhZGRpbmcg
YmV0d2VlbiB0aGVtLgorVGh1cyBwYWNraW5nIG11bHRpcGxlIFNJTEsgZnJhbWVzIGluIGEgc2lu
Z2xlIE9wdXMgZnJhbWUgc2F2ZXMsIG9uIGF2ZXJhZ2UsCisgaGFsZiBhIGJ5dGUgcGVyIFNJTEsg
ZnJhbWUuCitJdCBhbHNvIGFsbG93cyBzb21lIHBhcmFtZXRlcnMgdG8gYmUgcHJlZGljdGVkIGZy
b20gcHJpb3IgU0lMSyBmcmFtZXMgaW4gdGhlCisgc2FtZSBPcHVzIGZyYW1lLCBzaW5jZSB0aGlz
IGRvZXMgbm90IGRlZ3JhZGUgcGFja2V0IGxvc3Mgcm9idXN0bmVzcyAoYmV5b25kCisgYW55IHBl
bmFsdHkgZm9yIG1lcmVseSB1c2luZyBmZXdlciwgbGFyZ2VyIHBhY2tldHMgdG8gc3RvcmUgbXVs
dGlwbGUgZnJhbWVzKS4KKzwvdD4KKworPHQ+CitTdGVyZW8gc3VwcG9ydCBpbiBTSUxLIHVzZXMg
YSB2YXJpYW50IG9mIG1pZC1zaWRlIGNvZGluZywgYWxsb3dpbmcgYSBtb25vCisgZGVjb2RlciB0
byBzaW1wbHkgZGVjb2RlIHRoZSBtaWQgY2hhbm5lbC4KK0hvd2V2ZXIsIHRoZSBkYXRhIGZvciB0
aGUgdHdvIGNoYW5uZWxzIGlzIGludGVybGVhdmVkLCBzbyBhIG1vbm8gZGVjb2RlciBtdXN0Cisg
c3RpbGwgdW5wYWNrIHRoZSBkYXRhIGZvciB0aGUgc2lkZSBjaGFubmVsLgorSXQgd291bGQgYmUg
cmVxdWlyZWQgdG8gZG8gc28gYW55d2F5IGZvciBIeWJyaWQgT3B1cyBmcmFtZXMsIG9yIHRvIHN1
cHBvcnQKKyBkZWNvZGluZyBpbmRpdmlkdWFsIDIwJm5ic3A7bXMgZnJhbWVzLgorPC90PgorCis8
dD4KKzx4cmVmIHRhcmdldD0ic2lsa19zeW1ib2xzIi8+IHN1bW1hcml6ZXMgdGhlIG92ZXJhbGwg
Z3JvdXBpbmcgb2YgdGhlIGNvbnRlbnRzIG9mCisgdGhlIExQIGxheWVyLgorRmlndXJlcyZuYnNw
Ozx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX21vbm9fNjBtc19mcmFtZSIvPgor
IGFuZCZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX3N0ZXJlb182MG1z
X2ZyYW1lIi8+IGlsbHVzdHJhdGUKKyB0aGUgb3JkZXJpbmcgb2YgdGhlIHZhcmlvdXMgU0lMSyBm
cmFtZXMgZm9yIGEgNjAmbmJzcDttcyBPcHVzIGZyYW1lLCBmb3IgYm90aAorIG1vbm8gYW5kIHN0
ZXJlbywgcmVzcGVjdGl2ZWx5LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19zeW1i
b2xzIgorIHRpdGxlPSJPcmdhbml6YXRpb24gb2YgdGhlIFNJTEsgbGF5ZXIgb2YgYW4gT3B1cyBm
cmFtZSI+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+U3ltYm9sKHMpPC90dGNvbD4KKzx0dGNvbCBh
bGlnbj0iY2VudGVyIj5QREYocyk8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJjZW50ZXIiPkNvbmRp
dGlvbjwvdHRjb2w+CisKKzxjPlZvaWNlIEFjdGl2aXR5IERldGVjdGlvbiAoVkFEKSBmbGFnczwv
Yz4KKzxjPnsxLCAxfS8yPC9jPgorPGMvPgorCis8Yz5MQlJSIGZsYWc8L2M+Cis8Yz57MSwgMX0v
MjwvYz4KKzxjLz4KKworPGM+UGVyLWZyYW1lIExCUlIgZmxhZ3M8L2M+Cis8Yz48eHJlZiB0YXJn
ZXQ9InNpbGtfbGJycl9mbGFnX3BkZnMiLz48L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbGJy
cl9mbGFncyIvPjwvYz4KKworPGM+TEJSUiBGcmFtZShzKTwvYz4KKzxjPjx4cmVmIHRhcmdldD0i
c2lsa19mcmFtZSIvPjwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19sYnJyX2ZsYWdzIi8+PC9j
PgorCis8Yz5SZWd1bGFyIFNJTEsgRnJhbWUocyk8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtf
ZnJhbWUiLz48L2M+Cis8Yy8+CisKKzwvdGV4dHRhYmxlPgorCis8ZmlndXJlIGFsaWduPSJjZW50
ZXIiIGFuY2hvcj0ic2lsa19tb25vXzYwbXNfZnJhbWUiCisgdGl0bGU9IkEgNjAmbmJzcDttcyBN
b25vIEZyYW1lIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworKy0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgICAgICAgICBWQUQgRmxhZ3MgICAgICAg
ICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgICAgICAg
IExCUlIgRmxhZyAgICAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0rCit8IFBlci1GcmFtZSBMQlJSIEZsYWdzIChPcHRpb25hbCkgfAorKy0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgIExCUlIgRnJhbWUgMSAoT3B0aW9uYWwpICAgICB8
CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgTEJSUiBGcmFtZSAy
IChPcHRpb25hbCkgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8
ICAgICBMQlJSIEZyYW1lIDMgKE9wdGlvbmFsKSAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSsKK3wgICAgICBSZWd1bGFyIFNJTEsgRnJhbWUgMSAgICAgICB8CisrLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgIFJlZ3VsYXIgU0lMSyBGcmFt
ZSAyICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAg
UmVndWxhciBTSUxLIEZyYW1lIDMgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8ZmlndXJlIGFsaWduPSJjZW50
ZXIiIGFuY2hvcj0ic2lsa19zdGVyZW9fNjBtc19mcmFtZSIKKyB0aXRsZT0iQSA2MCZuYnNwO21z
IFN0ZXJlbyBGcmFtZSI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKystLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAgICAgICAgIE1pZCBW
QUQgRmxhZ3MgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSsKK3wgICAgICAgICAgICAgTWlkIExCUlIgRmxhZyAgICAgICAgICAgICB8CisrLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgICAgICAgICBTaWRl
IFZBRCBGbGFncyAgICAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0rCit8ICAgICAgICAgICAgIFNpZGUgTEJSUiBGbGFnICAgICAgICAgICAgfAorKy0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgIE1pZCBQZXItRnJhbWUg
TEJSUiBGbGFncyAoT3B0aW9uYWwpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tKworfCBTaWRlIFBlci1GcmFtZSBMQlJSIEZsYWdzIChPcHRpb25hbCkgIHwKKyst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICBNaWQgTEJSUiBG
cmFtZSAxIChPcHRpb25hbCkgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLSsKK3wgICAgIFNpZGUgTEJSUiBGcmFtZSAxIChPcHRpb25hbCkgICAgICB8Cisr
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgTWlkIExCUlIg
RnJhbWUgMiAoT3B0aW9uYWwpICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0rCit8ICAgICBTaWRlIExCUlIgRnJhbWUgMiAoT3B0aW9uYWwpICAgICAgfAor
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgIE1pZCBMQlJS
IEZyYW1lIDMgKE9wdGlvbmFsKSAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tKworfCAgICAgU2lkZSBMQlJSIEZyYW1lIDMgKE9wdGlvbmFsKSAgICAgIHwK
KystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAgTWlkIFJl
Z3VsYXIgU0lMSyBGcmFtZSAxICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSsKK3wgU2lkZSBSZWd1bGFyIFNJTEsgRnJhbWUgMSAoT3B0aW9uYWwpICB8
CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgIE1pZCBS
ZWd1bGFyIFNJTEsgRnJhbWUgMiAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0rCit8IFNpZGUgUmVndWxhciBTSUxLIEZyYW1lIDIgKE9wdGlvbmFsKSAg
fAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgICBNaWQg
UmVndWxhciBTSUxLIEZyYW1lIDMgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tKworfCBTaWRlIFJlZ3VsYXIgU0lMSyBGcmFtZSAzIChPcHRpb25hbCkg
IHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCitdXT48L2FydHdv
cms+Cis8L2ZpZ3VyZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfaGVh
ZGVyX2JpdHMiIHRpdGxlPSJIZWFkZXIgQml0cyI+Cis8dD4KK1RoZSBMUCBsYXllciBiZWdpbnMg
d2l0aCB0d28gdG8gZWlnaHQgaGVhZGVyIGJpdHMsIGRlY29kZWQgaW4gc2lsa19EZWNvZGUoKQor
IChkZWNfQVBJLmMpLgorVGhlc2UgY29uc2lzdCBvZiBvbmUgVm9pY2UgQWN0aXZpdHkgRGV0ZWN0
aW9uIChWQUQpIGJpdCBwZXIgZnJhbWUgKHVwIHRvIDMpLAorIGZvbGxvd2VkIGJ5IGEgc2luZ2xl
IGZsYWcgaW5kaWNhdGluZyB0aGUgcHJlc2VuY2Ugb2YgTEJSUiBmcmFtZXMuCitGb3IgYSBzdGVy
ZW8gcGFja2V0LCB0aGVzZSBmaXJzdCBmbGFncyBjb3JyZXNwb25kIHRvIHRoZSBtaWQgY2hhbm5l
bCwgYW5kIGEKKyBzZWNvbmQgc2V0IG9mIGZsYWdzIGlzIGluY2x1ZGVkIGZvciB0aGUgc2lkZSBj
aGFubmVsLgorPC90PgorPHQ+CitCZWNhdXNlIHRoZXNlIGFyZSB0aGUgZmlyc3Qgc3ltYm9scyBk
ZWNvZGVkIGJ5IHRoZSByYW5nZSBjb2RlciBhbmQgYmVjYXVzZSB0aGV5CisgYXJlIGNvZGVkIGFz
IGJpbmFyeSB2YWx1ZXMgd2l0aCB1bmlmb3JtIHByb2JhYmlsaXR5LCB0aGV5IGNhbiBiZSBleHRy
YWN0ZWQKKyBkaXJlY3RseSBmcm9tIHRoZSBtb3N0IHNpZ25pZmljYW50IGJpdHMgb2YgdGhlIGZp
cnN0IGJ5dGUgb2YgY29tcHJlc3NlZCBkYXRhLgorVGh1cywgYSByZWNlaXZlciBjYW4gZGV0ZXJt
aW5lIGlmIGFuIE9wdXMgZnJhbWUgY29udGFpbnMgYW55IGFjdGl2ZSBTSUxLIGZyYW1lcworIHdp
dGhvdXQgdGhlIG92ZXJoZWFkIG9mIHVzaW5nIHRoZSByYW5nZSBkZWNvZGVyLgorPC90PgorPC9z
ZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbGJycl9mbGFncyIgdGl0bGU9IlBlci1G
cmFtZSBMQlJSIEZsYWdzIj4KKzx0PgorRm9yIE9wdXMgZnJhbWVzIGxvbmdlciB0aGFuIDIwJm5i
c3A7bXMsIGEgc2V0IG9mIExCUlIgZmxhZ3MgaXMKKyBkZWNvZGVkIGZvciBlYWNoIGNoYW5uZWwg
dGhhdCBoYXMgaXRzIExCUlIgZmxhZyBzZXQuCitFYWNoIHNldCBjb250YWlucyBvbmUgZmxhZyBw
ZXIgMjAmbmJzcDttcyBTSUxLIGZyYW1lLgorNDAmbmJzcDttcyBPcHVzIGZyYW1lcyB1c2UgdGhl
IDItZnJhbWUgTEJSUiBmbGFnIFBERiBmcm9tCisgPHhyZWYgdGFyZ2V0PSJzaWxrX2xicnJfZmxh
Z19wZGZzIi8+LCBhbmQgNjAmbmJzcDttcyBPcHVzIGZyYW1lcyB1c2UgdGhlCisgMy1mcmFtZSBM
QlJSIGZsYWcgUERGLgorRm9yIGVhY2ggY2hhbm5lbCwgdGhlIHJlc3VsdGluZyAyLSBvciAzLWJp
dCBpbnRlZ2VyIGNvbnRhaW5zIHRoZSBjb3JyZXNwb25kaW5nCisgTEJSUiBmbGFnIGZvciBlYWNo
IGZyYW1lLCBwYWNrZWQgaW4gb3JkZXIgZnJvbSB0aGUgTFNCIHRvIHRoZSBNU0IuCis8L3Q+CisK
Kzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX2xicnJfZmxhZ19wZGZzIiB0aXRsZT0iTEJSUiBGbGFn
IFBERnMiPgorPHR0Y29sPkZyYW1lIFNpemU8L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8
Yz40MCZuYnNwO21zPC9jPiA8Yz57MCwgNTMsIDUzLCAxNTB9LzI1NjwvYz4KKzxjPjYwJm5ic3A7
bXM8L2M+IDxjPnswLCA0MSwgMjAsIDI5LCA0MSwgMTUsIDI4LCA4Mn0vMjU2PC9jPgorPC90ZXh0
dGFibGU+CisKKzx0PgorQSAxMCZuYnNwO29yIDIwJm5ic3A7bXMgT3B1cyBmcmFtZSBkb2VzIG5v
dCBjb250YWluIGFueSBwZXItZnJhbWUgTEJSUiBmbGFncywKKyBhcyB0aGVyZSBtYXkgYmUgYXQg
bW9zdCBvbmUgTEJSUiBmcmFtZSBwZXIgY2hhbm5lbC4KK1RoZSBnbG9iYWwgTEJSUiBmbGFnIGlu
IHRoZSBoZWFkZXIgYml0cyAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19oZWFkZXJfYml0cyIvPikK
KyBpcyBhbHJlYWR5IHN1ZmZpY2llbnQgdG8gaW5kaWNhdGUgdGhlIHByZXNlbmNlIG9mIHRoYXQg
c2luZ2xlIExCUlIgZnJhbWUuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9y
PSJzaWxrX2xicnJfZnJhbWVzIiB0aXRsZT0iTEJSUiBGcmFtZXMiPgorPHQ+CitUaGUgTEJSUiBm
cmFtZXMsIGlmIHByZXNlbnQsIGNvbnRhaW4gYW4gZW5jb2RlZCByZXByZXNlbnRhdGlvbiBvZiB0
aGUgc2lnbmFsCisgaW1tZWRpYXRlbHkgcHJpb3IgdG8gdGhlIGN1cnJlbnQgT3B1cyBmcmFtZSBh
cyBpZiBpdCB3ZXJlIGVuY29kZWQgd2l0aCB0aGUKKyBjdXJyZW50IG1vZGUsIGZyYW1lIHNpemUs
IGF1ZGlvIGJhbmR3aWR0aCwgYW5kIGNoYW5uZWwgY291bnQsIGV2ZW4gaWYgdGhvc2UKKyBkaWZm
ZXIgZnJvbSB0aGUgcHJpb3IgT3B1cyBmcmFtZS4KK1doZW4gb25lIG9mIHRoZXNlIHBhcmFtZXRl
cnMgY2hhbmdlcyBmcm9tIG9uZSBPcHVzIGZyYW1lIHRvIHRoZSBuZXh0LCB0aGlzCisgaW1wbGll
cyB0aGF0IHRoZSBMQlJSIGZyYW1lcyBvZiB0aGUgY3VycmVudCBPcHVzIGZyYW1lIG1heSBub3Qg
YmUgc2ltcGxlCisgZHJvcC1pbiByZXBsYWNlbWVudHMgZm9yIHRoZSBjb250ZW50cyBvZiB0aGUg
cHJldmlvdXMgT3B1cyBmcmFtZS4KKzwvdD4KKworPHQ+CitGb3IgZXhhbXBsZSwgd2hlbiBzd2l0
Y2hpbmcgZnJvbSAyMCZuYnNwO21zIHRvIDYwJm5ic3A7bXMsIHRoZSA2MCZuYnNwO21zIE9wdXMK
KyBmcmFtZSBtYXkgY29udGFpbiBMQlJSIGZyYW1lcyBjb3ZlcmluZyB1cCB0byB0aHJlZSBwcmlv
ciAyMCZuYnNwO21zIE9wdXMKKyBmcmFtZXMsIGV2ZW4gaWYgdGhvc2UgZnJhbWVzIGFscmVhZHkg
Y29udGFpbmVkIExCUlIgZnJhbWVzIGNvdmVyaW5nIHNvbWUgb2YKKyB0aGUgc2FtZSB0aW1lIHBl
cmlvZHMuCitXaGVuIHN3aXRjaGluZyBmcm9tIDIwJm5ic3A7bXMgdG8gMTAmbmJzcDttcywgdGhl
IDEwJm5ic3A7bXMgT3B1cyBmcmFtZSBjYW4KKyBjb250YWluIGFuIExCUlIgZnJhbWUgY292ZXJp
bmcgYXQgbW9zdCBoYWxmIHRoZSBwcmlvciAyMCZuYnNwO21zIE9wdXMgZnJhbWUsCisgcG90ZW50
aWFsbHkgbGVhdmluZyBhIGhvbGUgdGhhdCBuZWVkcyB0byBiZSBjb25jZWFsZWQgZnJvbSBldmVu
IGEgc2luZ2xlCisgcGFja2V0IGxvc3MgKHNlZSA8eHJlZiB0YXJnZXQ9IlBhY2tldCBMb3NzIENv
bmNlYWxtZW50Ii8+KS4KK1doZW4gc3dpdGNoaW5nIGZyb20gbW9ubyB0byBzdGVyZW8sIHRoZSBM
QlJSIGZyYW1lcyBpbiB0aGUgZmlyc3Qgc3RlcmVvIE9wdXMKKyBmcmFtZSBNQVkgY29udGFpbiBh
IG5vbi10cml2aWFsIHNpZGUgY2hhbm5lbC4KKzwvdD4KKworPHQ+CitJbiBvcmRlciB0byBwcm9w
ZXJseSBwcm9kdWNlIExCUlIgZnJhbWVzIHVuZGVyIGFsbCBjb25kaXRpb25zLCBhbiBlbmNvZGVy
IG1pZ2h0CisgbmVlZCB0byBidWZmZXIgdXAgdG8gNjAmbmJzcDttcyBvZiBhdWRpbyBhbmQgcmUt
ZW5jb2RlIGl0IGR1cmluZyB0aGVzZQorIHRyYW5zaXRpb25zLgorSG93ZXZlciwgdGhlIHJlZmVy
ZW5jZSBpbXBsZW1lbnRhdGlvbiBvcHRzIHRvIGRpc2FibGUgTEJSUiBmcmFtZXMgYXQgdGhlCisg
dHJhbnNpdGlvbiBwb2ludCBmb3Igc2ltcGxpY2l0eS4KK1NpbmNlIHRyYW5zaXRpb25zIGFyZSBy
ZWxhdGl2ZWx5IGluZnJlcXVlbnQgaW4gbm9ybWFsIHVzYWdlLCB0aGlzIGRvZXMgbm90IGhhdmUK
KyBhIHNpZ25pZmljYW50IGltcGFjdCBvbiBwYWNrZXQgbG9zcyByb2J1c3RuZXNzLgorPC90Pgor
Cis8dD4KK1RoZSBMQlJSIGZyYW1lcyBpbW1lZGlhdGVseSBmb2xsb3cgdGhlIExCUlIgZmxhZ3Ms
IHByaW9yIHRvIGFueSByZWd1bGFyIFNJTEsKKyBmcmFtZXMuCis8eHJlZiB0YXJnZXQ9InNpbGtf
ZnJhbWUiLz4gZGVzY3JpYmVzIHRoZWlyIGV4YWN0IGNvbnRlbnRzLgorTEJSUiBmcmFtZXMgZG8g
bm90IGluY2x1ZGUgdGhlaXIgb3duIHNlcGFyYXRlIFZBRCBmbGFncy4KK0xCUlIgZnJhbWVzIGFy
ZSBvbmx5IG1lYW50IHRvIGJlIHRyYW5zbWl0dGVkIGZvciBhY3RpdmUgc3BlZWNoLCB0aHVzIGFs
bCBMQlJSCisgZnJhbWVzIGFyZSB0cmVhdGVkIGFzIGFjdGl2ZS4KKzwvdD4KKworPHQ+CitJbiBh
IHN0ZXJlbyBPcHVzIGZyYW1lIGxvbmdlciB0aGFuIDIwJm5ic3A7bXMsIGFsdGhvdWdoIHRoZSBw
ZXItZnJhbWUgTEJSUgorIGZsYWdzIGZvciB0aGUgbWlkIGNoYW5uZWwgYXJlIGNvZGVkIGFzIGEg
dW5pdCBiZWZvcmUgdGhlIHBlci1mcmFtZSBMQlJSIGZsYWdzCisgZm9yIHRoZSBzaWRlIGNoYW5u
ZWwsIHRoZSBMQlJSIGZyYW1lcyB0aGVtc2VsdmVzIGFyZSBpbnRlcmxlYXZlZC4KK1RoZSBkZWNv
ZGVyIHBhcnNlcyBhbiBMQlJSIGZyYW1lIGZvciB0aGUgbWlkIGNoYW5uZWwgb2YgYSBnaXZlbiAy
MCZuYnNwO21zCisgaW50ZXJ2YWwgKGlmIHByZXNlbnQpIGFuZCB0aGVuIGltbWVkaWF0ZWx5IHBh
cnNlcyB0aGUgY29ycmVzcG9uZGluZyBMQlJSCisgZnJhbWUgZm9yIHRoZSBzaWRlIGNoYW5uZWwg
KGlmIHByZXNlbnQpLCBiZWZvcmUgcHJvY2VlZGluZyB0byB0aGUgbmV4dAorIDIwJm5ic3A7bXMg
aW50ZXJ2YWwuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19yZWd1
bGFyX2ZyYW1lcyIgdGl0bGU9IlJlZ3VsYXIgU0lMSyBGcmFtZXMiPgorPHQ+CitUaGUgcmVndWxh
ciBTSUxLIGZyYW1lKHMpIGZvbGxvdyB0aGUgTEJSUiBmcmFtZXMgKGlmIGFueSkuCis8eHJlZiB0
YXJnZXQ9InNpbGtfZnJhbWUiLz4gZGVzY3JpYmVzIHRoZWlyIGNvbnRlbnRzLCBhcyB3ZWxsLgor
VW5saWtlIHRoZSBMQlJSIGZyYW1lcywgYSByZWd1bGFyIFNJTEsgZnJhbWUgaXMgY29kZWQgZm9y
IGVhY2ggdGltZSBpbnRlcnZhbCBpbgorIGFuIE9wdXMgZnJhbWUsIGV2ZW4gaWYgdGhlIGNvcnJl
c3BvbmRpbmcgVkFEIGZsYWdzIGFyZSB1bnNldC4KK0ZvciBzdGVyZW8gT3B1cyBmcmFtZXMgbG9u
Z2VyIHRoYW4gMjAmbmJzcDttcywgdGhlIHJlZ3VsYXIgbWlkIGFuZCBzaWRlIFNJTEsKKyBmcmFt
ZXMgZm9yIGVhY2ggMjAmbmJzcDttcyBpbnRlcnZhbCBhcmUgaW50ZXJsZWF2ZWQsIGp1c3QgYXMg
d2l0aCB0aGUgTEJSUgorIGZyYW1lcy4KK1RoZSBzaWRlIGZyYW1lIG1heSBiZSBza2lwcGVkIGJ5
IGNvZGluZyBhbiBhcHByb3ByaWF0ZSBmbGFnLCBhcyBkZXRhaWxlZCBpbgorIDx4cmVmIHRhcmdl
dD0ic2lsa19taWRfb25seV9mbGFnIi8+LgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBh
bmNob3I9InNpbGtfZnJhbWUiIHRpdGxlPSJTSUxLIEZyYW1lIENvbnRlbnRzIj4KKzx0PgorRWFj
aCBTSUxLIGZyYW1lIGluY2x1ZGVzIGEgc2V0IG9mIHNpZGUgaW5mb3JtYXRpb24gdGhhdCBlbmNv
ZGVzCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5UaGUgZnJhbWUgdHlwZSBhbmQgcXVhbnRp
emF0aW9uIHR5cGUgKDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV90eXBlIi8+KSw8L3Q+Cis8dD5R
dWFudGl6YXRpb24gZ2FpbnMgKDx4cmVmIHRhcmdldD0ic2lsa19nYWlucyIvPiksPC90PgorPHQ+
U2hvcnQtdGVybSBwcmVkaWN0aW9uIGZpbHRlciBjb2VmZmljaWVudHMgKDx4cmVmIHRhcmdldD0i
c2lsa19ubHNmcyIvPiksPC90PgorPHQ+QSBMaW5lIFNwZWN0cmFsIEZyZXF1ZW5jaWVzIChMU0Yp
IGludGVycG9sYXRpb24gd2VpZ2h0ICg8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9pbnRlcnBvbGF0
aW9uIi8+KSw8L3Q+Cis8dD4KK0xvbmctdGVybSBwcmVkaWN0aW9uIGZpbHRlciBsYWdzIGFuZCBn
YWlucyAoPHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9wYXJhbXMiLz4pLAorIGFuZAorPC90PgorPHQ+
QSBsaW5lYXIgY29uZ3J1ZW50aWFsIGdlbmVyYXRvciAoTENHKSBzZWVkICg8eHJlZiB0YXJnZXQ9
InNpbGtfc2VlZCIvPikuPC90PgorPC9saXN0PgorVGhlIHF1YW50aXplZCBleGNpdGF0aW9uIHNp
Z25hbCAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19leGNpdGF0aW9uIi8+KSBmb2xsb3dzCisgdGhl
c2UgYXQgdGhlIGVuZCBvZiB0aGUgZnJhbWUuCis8eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWVfc3lt
Ym9scyIvPiBkZXRhaWxzIHRoZSBvdmVyYWxsIG9yZ2FuaXphdGlvbiBvZiBhCisgU0lMSyBmcmFt
ZS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfZnJhbWVfc3ltYm9scyIKKyB0aXRs
ZT0iT3JkZXIgb2YgdGhlIHN5bWJvbHMgaW4gYW4gaW5kaXZpZHVhbCBTSUxLIGZyYW1lIj4KKzx0
dGNvbCBhbGlnbj0iY2VudGVyIj5TeW1ib2wocyk8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJjZW50
ZXIiPlBERihzKTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+Q29uZGl0aW9uPC90dGNv
bD4KKworPGM+U3RlcmVvIFByZWRpY3Rpb24gV2VpZ2h0czwvYz4KKzxjPjx4cmVmIHRhcmdldD0i
c2lsa19zdGVyZW9fcHJlZF9wZGZzIi8+PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX3N0ZXJl
b19wcmVkIi8+PC9jPgorCis8Yz5NaWQtb25seSBGbGFnPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJz
aWxrX21pZF9vbmx5X3BkZiIvPjwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19taWRfb25seV9m
bGFnIi8+PC9jPgorCis8Yz5GcmFtZSBUeXBlPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2Zy
YW1lX3R5cGUiLz48L2M+Cis8Yy8+CisKKzxjPlN1YmZyYW1lIEdhaW5zPC9jPgorPGM+PHhyZWYg
dGFyZ2V0PSJzaWxrX2dhaW5zIi8+PC9jPgorPGMvPgorCis8Yz5Ob3JtYWxpemVkIExTRiBTdGFn
ZS0xIEluZGV4PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zfc3RhZ2UxX3BkZnMiLz48
L2M+Cis8Yy8+CisKKzxjPk5vcm1hbGl6ZWQgTFNGIFN0YWdlLTIgUmVzaWR1YWw8L2M+Cis8Yz48
eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFnZTIiLz48L2M+Cis8Yy8+CisKKzxjPk5vcm1hbGl6
ZWQgTFNGIEludGVycG9sYXRpb24gV2VpZ2h0PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX25s
c2ZfaW50ZXJwX3BkZiIvPjwvYz4KKzxjPjIwJm5ic3A7bXMgZnJhbWU8L2M+CisKKzxjPlByaW1h
cnkgUGl0Y2ggTGFnPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9sYWdzIi8+PC9jPgor
PGM+Vm9pY2VkIGZyYW1lPC9jPgorCis8Yz5TdWJmcmFtZSBQaXRjaCBDb250b3VyPC9jPgorPGM+
PHhyZWYgdGFyZ2V0PSJzaWxrX3BpdGNoX2NvbnRvdXJfcGRmcyIvPjwvYz4KKzxjPlZvaWNlZCBm
cmFtZTwvYz4KKworPGM+UGVyaW9kaWNpdHkgSW5kZXg8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNp
bGtfcGVyaW5kZXhfcGRmIi8+PC9jPgorPGM+Vm9pY2VkIGZyYW1lPC9jPgorCis8Yz5MVFAgRmls
dGVyPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9maWx0ZXJfcGRmcyIvPjwvYz4KKzxj
PlZvaWNlZCBmcmFtZTwvYz4KKworPGM+TFRQIFNjYWxpbmc8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9
InNpbGtfbHRwX3NjYWxpbmdfcGRmIi8+PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9z
Y2FsaW5nIi8+PC9jPgorCis8Yz5MQ0cgU2VlZDwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19z
ZWVkX3BkZiIvPjwvYz4KKzxjLz4KKworPGM+RXhjaXRhdGlvbiBSYXRlIExldmVsPC9jPgorPGM+
PHhyZWYgdGFyZ2V0PSJzaWxrX3JhdGVfbGV2ZWxfcGRmcyIvPjwvYz4KKzxjLz4KKworPGM+RXhj
aXRhdGlvbiBQdWxzZSBDb3VudHM8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfcHVsc2VfY291
bnRfcGRmcyIvPjwvYz4KKzxjLz4KKworPGM+RXhjaXRhdGlvbiBQdWxzZSBMb2NhdGlvbnM8L2M+
Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfcHVsc2VfbG9jYXRpb25zIi8+PC9jPgorPGM+Tm9uLXpl
cm8gcHVsc2UgY291bnQ8L2M+CisKKzxjPkV4Y2l0YXRpb24gTFNCczwvYz4KKzxjPjx4cmVmIHRh
cmdldD0ic2lsa19zaGVsbF9sc2JfcGRmIi8+PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX3B1
bHNlX2NvdW50cyIvPjwvYz4KKworPGM+RXhjaXRhdGlvbiBTaWduczwvYz4KKzxjPjx4cmVmIHRh
cmdldD0ic2lsa19zaWduX3BkZnMiLz48L2M+Cis8Yy8+CisKKzwvdGV4dHRhYmxlPgorCis8c2Vj
dGlvbiBhbmNob3I9InNpbGtfc3RlcmVvX3ByZWQiIHRvYz0iaW5jbHVkZSIKKyB0aXRsZT0iU3Rl
cmVvIFByZWRpY3Rpb24gV2VpZ2h0cyI+Cis8dD4KK0EgU0lMSyBmcmFtZSBjb3JyZXNwb25kaW5n
IHRvIHRoZSBtaWQgY2hhbm5lbCBvZiBhIHN0ZXJlbyBPcHVzIGZyYW1lIGJlZ2lucworIHdpdGgg
YSBwYWlyIG9mIHNpZGUgY2hhbm5lbCBwcmVkaWN0aW9uIHdlaWdodHMsIGRlc2lnbmVkIHN1Y2gg
dGhhdCB6ZXJvcworIGluZGljYXRlIG5vcm1hbCBtaWQtc2lkZSBjb3VwbGluZy4KK1NpbmNlIHRo
ZXNlIHdlaWdodHMgY2FuIGNoYW5nZSBvbiBldmVyeSBmcmFtZSwgdGhlIGZpcnN0IHBvcnRpb24g
b2YgZWFjaCBmcmFtZQorIGxpbmVhcmx5IGludGVycG9sYXRlcyBiZXR3ZWVuIHRoZSBwcmV2aW91
cyB3ZWlnaHRzIGFuZCB0aGUgY3VycmVudCBvbmVzLCB1c2luZworIHplcm9zIGZvciB0aGUgcHJl
dmlvdXMgd2VpZ2h0cyBpZiBub25lIGFyZSBhdmFpbGFibGUuCitUaGVzZSBwcmVkaWN0aW9uIHdl
aWdodHMgYXJlIG5ldmVyIGluY2x1ZGVkIGluIGEgbW9ubyBPcHVzIGZyYW1lLCBhbmQgdGhlCisg
cHJldmlvdXMgd2VpZ2h0cyBhcmUgcmVzZXQgdG8gemVyb3Mgb24gYW55IHRyYW5zaXRpb24gZnJv
bSBtb25vIHRvIHN0ZXJlby4KK1RoZXkgYXJlIGFsc28gbm90IGluY2x1ZGVkIGluIGFuIExCUlIg
ZnJhbWUgZm9yIHRoZSBzaWRlIGNoYW5uZWwsIGV2ZW4gaWYgdGhlCisgTEJSUiBmbGFncyBpbmRp
Y2F0ZSB0aGUgY29ycmVzcG9uZGluZyBtaWQgY2hhbm5lbCB3YXMgbm90IGNvZGVkLgorSW4gdGhh
dCBjYXNlLCB0aGUgcHJldmlvdXMgd2VpZ2h0cyBhcmUgdXNlZCwgYWdhaW4gc3Vic3RpdHV0aW5n
IGluIHplcm9zIGlmIG5vCisgcHJldmlvdXMgd2VpZ2h0cyBhcmUgYXZhaWxhYmxlIHNpbmNlIHRo
ZSBsYXN0IGRlY29kZXIgcmVzZXQKKyAoc2VlIDx4cmVmIHRhcmdldD0iZGVjb2Rlci1yZXNldCIv
PikuCis8L3Q+CisKKzx0PgorVG8gc3VtbWFyaXplLCB0aGVzZSB3ZWlnaHRzIGFyZSBjb2RlZCBp
ZiBhbmQgb25seSBpZgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+VGhpcyBpcyBhIHN0ZXJl
byBPcHVzIGZyYW1lICg8eHJlZiB0YXJnZXQ9InRvY19ieXRlIi8+KSwgYW5kPC90PgorPHQ+VGhl
IGN1cnJlbnQgU0lMSyBmcmFtZSBjb3JyZXNwb25kcyB0byB0aGUgbWlkIGNoYW5uZWwuPC90Pgor
PC9saXN0PgorPC90PgorCis8dD4KK1RoZSBwcmVkaWN0aW9uIHdlaWdodHMgYXJlIGNvZGVkIGlu
IHRocmVlIHNlcGFyYXRlIHBpZWNlcywgd2hpY2ggYXJlIGRlY29kZWQKKyBieSBzaWxrX3N0ZXJl
b19kZWNvZGVfcHJlZCgpIChkZWNvZGVfc3RlcmVvX3ByZWQuYykuCitUaGUgZmlyc3QgcGllY2Ug
am9pbnRseSBjb2RlcyB0aGUgaGlnaC1vcmRlciBwYXJ0IG9mIGEgdGFibGUgaW5kZXggZm9yIGJv
dGgKKyB3ZWlnaHRzLgorVGhlIHNlY29uZCBwaWVjZSBjb2RlcyB0aGUgbG93LW9yZGVyIHBhcnQg
b2YgZWFjaCB0YWJsZSBpbmRleC4KK1RoZSB0aGlyZCBwaWVjZSBjb2RlcyBhbiBvZmZzZXQgdXNl
ZCB0byBsaW5lYXJseSBpbnRlcnBvbGF0ZSBiZXR3ZWVuIHRhYmxlCisgaW5kaWNlcy4KK1RoZSBk
ZXRhaWxzIGFyZSBhcyBmb2xsb3dzLgorPC90PgorCis8dD4KK0xldCBuIGJlIGFuIGluZGV4IGRl
Y29kZWQgd2l0aCB0aGUgMjUtZWxlbWVudCBzdGFnZS0xIFBERiBpbgorIDx4cmVmIHRhcmdldD0i
c2lsa19zdGVyZW9fcHJlZF9wZGZzIi8+LgorVGhlbiBsZXQgaTAgYW5kIGkxIGJlIGluZGljZXMg
ZGVjb2RlZCB3aXRoIHRoZSBzdGFnZS0yIGFuZCBzdGFnZS0zIFBERnMgaW4KKyA8eHJlZiB0YXJn
ZXQ9InNpbGtfc3RlcmVvX3ByZWRfcGRmcyIvPiwgcmVzcGVjdGl2ZWx5LCBhbmQgbGV0IGkyIGFu
ZCBpMworIGJlIHR3byBtb3JlIGluZGljZXMgZGVjb2RlZCB3aXRoIHRoZSBzdGFnZS0yIGFuZCBz
dGFnZS0zIFBERnMsIGFsbCBpbiB0aGF0Cisgb3JkZXIuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5j
aG9yPSJzaWxrX3N0ZXJlb19wcmVkX3BkZnMiIHRpdGxlPSJTdGVyZW8gV2VpZ2h0IFBERnMiPgor
PHR0Y29sIGFsaWduPSJsZWZ0Ij5TdGFnZTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBE
RjwvdHRjb2w+Cis8Yz5TdGFnZSAxPC9jPgorPGM+ezcsICAyLCAgMSwgIDEsICAxLAorICAgMTAs
IDI0LCAgOCwgIDEsICAxLAorICAgIDMsIDIzLCA5MiwgMjMsICAzLAorICAgIDEsICAxLCAgOCwg
MjQsIDEwLAorICAgIDEsICAxLCAgMSwgIDIsICA3fS8yNTY8L2M+CisKKzxjPlN0YWdlIDI8L2M+
Cis8Yz57ODUsIDg2LCA4NX0vMjU2PC9jPgorCis8Yz5TdGFnZSAzPC9jPgorPGM+ezUxLCA1MSwg
NTIsIDUxLCA1MX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlbiB1c2UgbiwgaTAs
IGFuZCBpMiB0byBmb3JtIHR3byB0YWJsZSBpbmRpY2VzLCB3aTAgYW5kIHdpMSwgYWNjb3JkaW5n
IHRvCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFb
Q0RBVEFbCit3aTAgPSBpMCArIDMqKG4vNSkKK3dpMSA9IGkyICsgMyoobiU1KQorXV0+PC9hcnR3
b3JrPgorPC9maWd1cmU+Cisgd2hlcmUgdGhlIGRpdmlzaW9uIGlzIGludGVnZXIgZGl2aXNpb24u
CitUaGUgcmFuZ2Ugb2YgdGhlc2UgaW5kaWNlcyBpcyAwIHRvIDE0LCBpbmNsdXNpdmUuCitMZXQg
d1tpXSBiZSB0aGUgaSd0aCB3ZWlnaHQgZnJvbSA8eHJlZiB0YXJnZXQ9InNpbGtfc3RlcmVvX3dl
aWdodHNfdGFibGUiLz4uCitUaGVuIHRoZSB0d28gcHJlZGljdGlvbiB3ZWlnaHRzLCB3MF9RMTMg
YW5kIHcxX1ExMywgYXJlCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCit3MV9RMTMgPSB3X1ExM1t3aTFdCisgICAgICAgICArICgod19R
MTNbd2kxKzFdIC0gd19RMTNbd2kxXSkqNjU1NCkgPj4gMTYpKigyKmkzICsgMSkKKwordzBfUTEz
ID0gd19RMTNbd2kwXQorICAgICAgICAgKyAoKHdfUTEzW3dpMCsxXSAtIHdfUTEzW3dpMF0pKjY1
NTQpID4+IDE2KSooMippMSArIDEpCisgICAgICAgICAtIHcxX1ExMworXV0+PC9hcnR3b3JrPgor
PC9maWd1cmU+CitOLmIuLCB3MV9RMTMgaXMgY29tcHV0ZWQgZmlyc3QgaGVyZSwgYmVjYXVzZSB3
MF9RMTMgZGVwZW5kcyBvbiBpdC4KK1RoZSBjb25zdGFudCA2NTU0IGlzIGFwcHJveGltYXRlbHkg
MC4xIGluIFExNi4KK0FsdGhvdWdoIHdpMCBhbmQgd2kxIG9ubHkgaGF2ZSAxNSBwb3NzaWJsZSB2
YWx1ZXMsCisgPHhyZWYgdGFyZ2V0PSJzaWxrX3N0ZXJlb193ZWlnaHRzX3RhYmxlIi8+IGNvbnRh
aW5zIDE2IGVudHJpZXMgdG8gYWxsb3cKKyBpbnRlcnBvbGF0aW9uIGJldHdlZW4gZW50cnkgd2kw
IGFuZCAod2kwJm5ic3A7KyZuYnNwOzEpIChhbmQgbGlrZXdpc2UgZm9yIHdpMSkuCis8L3Q+CisK
Kzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3N0ZXJlb193ZWlnaHRzX3RhYmxlIgorIHRpdGxlPSJT
dGVyZW8gV2VpZ2h0IFRhYmxlIj4KKzx0dGNvbCBhbGlnbj0ibGVmdCI+SW5kZXg8L3R0Y29sPgor
PHR0Y29sIGFsaWduPSJyaWdodCI+V2VpZ2h0IChRMTMpPC90dGNvbD4KKyA8Yz4wPC9jPiA8Yz4t
MTM3MzI8L2M+CisgPGM+MTwvYz4gPGM+LTEwMDUwPC9jPgorIDxjPjI8L2M+ICA8Yz4tODI2Njwv
Yz4KKyA8Yz4zPC9jPiAgPGM+LTc1MjY8L2M+CisgPGM+NDwvYz4gIDxjPi02NTAwPC9jPgorIDxj
PjU8L2M+ICA8Yz4tNTAwMDwvYz4KKyA8Yz42PC9jPiAgPGM+LTI5NTA8L2M+CisgPGM+NzwvYz4g
ICA8Yz4tODIwPC9jPgorIDxjPjg8L2M+ICAgIDxjPjgyMDwvYz4KKyA8Yz45PC9jPiAgIDxjPjI5
NTA8L2M+Cis8Yz4xMDwvYz4gICA8Yz41MDAwPC9jPgorPGM+MTE8L2M+ICAgPGM+NjUwMDwvYz4K
KzxjPjEyPC9jPiAgIDxjPjc1MjY8L2M+Cis8Yz4xMzwvYz4gICA8Yz44MjY2PC9jPgorPGM+MTQ8
L2M+ICA8Yz4xMDA1MDwvYz4KKzxjPjE1PC9jPiAgPGM+MTM3MzI8L2M+Cis8L3RleHR0YWJsZT4K
KworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbWlkX29ubHlfZmxhZyIgdG9j
PSJpbmNsdWRlIiB0aXRsZT0iTWlkLW9ubHkgRmxhZyI+Cis8dD4KK0EgZmxhZyBhcHBlYXJzIGFm
dGVyIHRoZSBzdGVyZW8gcHJlZGljdGlvbiB3ZWlnaHRzIHRoYXQgaW5kaWNhdGVzIGlmIG9ubHkg
dGhlCisgbWlkIGNoYW5uZWwgaXMgY29kZWQgZm9yIHRoaXMgdGltZSBpbnRlcnZhbC4KK0l0IGFw
cGVhcnMgb25seSB3aGVuCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5UaGlzIGlzIGEgc3Rl
cmVvIE9wdXMgZnJhbWUgKHNlZSA8eHJlZiB0YXJnZXQ9InRvY19ieXRlIi8+KSw8L3Q+Cis8dD5U
aGUgY3VycmVudCBTSUxLIGZyYW1lIGNvcnJlc3BvbmRzIHRvIHRoZSBtaWQgY2hhbm5lbCwgYW5k
PC90PgorPHQ+RWl0aGVyCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5UaGlzIGlzIGEgcmVn
dWxhciBTSUxLIGZyYW1lIHdoZXJlIHRoZSBWQUQgZmxhZ3MKKyAoc2VlIDx4cmVmIHRhcmdldD0i
c2lsa19oZWFkZXJfYml0cyIvPikgaW5kaWNhdGUgdGhhdCB0aGUgY29ycmVzcG9uZGluZyBzaWRl
CisgY2hhbm5lbCBpcyBub3QgYWN0aXZlLjwvdD4KKzx0PgorVGhpcyBpcyBhbiBMQlJSIGZyYW1l
IHdoZXJlIHRoZSBMQlJSIGZsYWdzCisgKHNlZSA8eHJlZiB0YXJnZXQ9InNpbGtfaGVhZGVyX2Jp
dHMiLz4gYW5kIDx4cmVmIHRhcmdldD0ic2lsa19sYnJyX2ZsYWdzIi8+KQorIGluZGljYXRlIHRo
YXQgdGhlIGNvcnJlc3BvbmRpbmcgc2lkZSBjaGFubmVsIGlzIG5vdCBjb2RlZC4KKzwvdD4KKzwv
bGlzdD4KKzwvdD4KKzwvbGlzdD4KK0l0IGlzIG9taXR0ZWQgd2hlbiB0aGVyZSBhcmUgbm8gc3Rl
cmVvIHdlaWdodHMsIGZvciBhbGwgb2YgdGhlIHNhbWUgcmVhc29ucy4KK0l0IGlzIGFsc28gb21p
dHRlZCBmb3IgYSByZWd1bGFyIFNJTEsgZnJhbWUgd2hlbiB0aGUgVkFEIGZsYWcgb2YgdGhlCisg
Y29ycmVzcG9uZGluZyBzaWRlIGNoYW5uZWwgZnJhbWUgaXMgc2V0IChpbmRpY2F0aW5nIGl0IGlz
IGFjdGl2ZSkuCitUaGUgc2lkZSBjaGFubmVsIG11c3QgYmUgY29kZWQgaW4gdGhpcyBjYXNlLCBt
YWtpbmcgdGhlIG1pZC1vbmx5IGZsYWcKKyByZWR1bmRhbnQuCitJdCBpcyBhbHNvIG9taXR0ZWQg
Zm9yIGFuIExCUlIgZnJhbWUgd2hlbiB0aGUgY29ycmVzcG9uZGluZyBMQlJSIGZsYWdzCisgaW5k
aWNhdGUgdGhlIHNpZGUgY2hhbm5lbCBpcyBjb2RlZC4KKzwvdD4KKworPHQ+CitXaGVuIHRoZSBm
bGFnIGlzIHByZXNlbnQsIHRoZSBkZWNvZGVyIHJlYWRzIGEgc2luZ2xlIHZhbHVlIHVzaW5nIHRo
ZSBQREYgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtfbWlkX29ubHlfcGRmIi8+LCBhcyBpbXBsZW1l
bnRlZCBpbgorIHNpbGtfc3RlcmVvX2RlY29kZV9taWRfb25seSgpIChkZWNvZGVfc3RlcmVvX3By
ZWQuYykuCitJZiB0aGUgZmxhZyBpcyBzZXQsIHRoZW4gdGhlcmUgaXMgbm8gY29ycmVzcG9uZGlu
ZyBTSUxLIGZyYW1lIGZvciB0aGUgc2lkZQorIGNoYW5uZWwsIHRoZSBlbnRpcmUgZGVjb2Rpbmcg
cHJvY2VzcyBmb3IgdGhlIHNpZGUgY2hhbm5lbCBpcyBza2lwcGVkLCBhbmQKKyB6ZXJvcyBhcmUg
ZmVkIHRvIHRoZSBzdGVyZW8gdW5taXhpbmcgcHJvY2VzcyAoc2VlCisgPHhyZWYgdGFyZ2V0PSJz
aWxrX3N0ZXJlb191bm1peGluZyIvPikgaW5zdGVhZC4KK0FzIHN0YXRlZCBhYm92ZSwgTEJSUiBm
cmFtZXMgc3RpbGwgaW5jbHVkZSB0aGlzIGZsYWcgd2hlbiB0aGUgTEJSUiBmbGFnCisgaW5kaWNh
dGVzIHRoYXQgdGhlIHNpZGUgY2hhbm5lbCBpcyBub3QgY29kZWQuCitJbiB0aGF0IGNhc2UsIGlm
IHRoaXMgZmxhZyBpcyB6ZXJvIChpbmRpY2F0aW5nIHRoYXQgdGhlcmUgc2hvdWxkIGJlIGEgc2lk
ZQorIGNoYW5uZWwpLCB0aGVuIFBhY2tldCBMb3NzIENvbmNlYWxtZW50IChQTEMsIHNlZQorIDx4
cmVmIHRhcmdldD0iUGFja2V0IExvc3MgQ29uY2VhbG1lbnQiLz4pIFNIT1VMRCBiZSBpbnZva2Vk
IHRvIHJlY292ZXIgYQorIHNpZGUgY2hhbm5lbCBzaWduYWwuCitPdGhlcndpc2UsIHRoZSBzdGVy
ZW8gaW1hZ2Ugd2lsbCBjb2xsYXBzZS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtf
bWlkX29ubHlfcGRmIiB0aXRsZT0iTWlkLW9ubHkgRmxhZyBQREYiPgorPHR0Y29sIGFsaWduPSJs
ZWZ0Ij5QREY8L3R0Y29sPgorPGM+ezE5MiwgNjR9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8
L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19mcmFtZV90eXBlIiB0b2M9ImluY2x1
ZGUiIHRpdGxlPSJGcmFtZSBUeXBlIj4KKzx0PgorRWFjaCBTSUxLIGZyYW1lIGNvbnRhaW5zIGEg
c2luZ2xlICJmcmFtZSB0eXBlIiBzeW1ib2wgdGhhdCBqb2ludGx5IGNvZGVzIHRoZQorIHNpZ25h
bCB0eXBlIGFuZCBxdWFudGl6YXRpb24gb2Zmc2V0IHR5cGUgb2YgdGhlIGNvcnJlc3BvbmRpbmcg
ZnJhbWUuCitJZiB0aGUgY3VycmVudCBmcmFtZSBpcyBhIHJlZ3VsYXIgU0lMSyBmcmFtZSB3aG9z
ZSBWQUQgYml0IHdhcyBub3Qgc2V0IChhbgorICJpbmFjdGl2ZSIgZnJhbWUpLCB0aGVuIHRoZSBm
cmFtZSB0eXBlIHN5bWJvbCB0YWtlcyBvbiBhIHZhbHVlIG9mIGVpdGhlciAwIG9yCisgMSBhbmQg
aXMgZGVjb2RlZCB1c2luZyB0aGUgZmlyc3QgUERGIGluIDx4cmVmIHRhcmdldD0ic2lsa19mcmFt
ZV90eXBlX3BkZnMiLz4uCitJZiB0aGUgZnJhbWUgaXMgYW4gTEJSUiBmcmFtZSBvciBhIHJlZ3Vs
YXIgU0lMSyBmcmFtZSB3aG9zZSBWQUQgZmxhZyB3YXMgc2V0CisgKGFuICJhY3RpdmUiIGZyYW1l
KSwgdGhlbiB0aGUgdmFsdWUgb2YgdGhlIHN5bWJvbCBtYXkgcmFuZ2UgZnJvbSAyIHRvIDUsCisg
aW5jbHVzaXZlLCBhbmQgaXMgZGVjb2RlZCB1c2luZyB0aGUgc2Vjb25kIFBERiBpbgorIDx4cmVm
IHRhcmdldD0ic2lsa19mcmFtZV90eXBlX3BkZnMiLz4uCis8eHJlZiB0YXJnZXQ9InNpbGtfZnJh
bWVfdHlwZV90YWJsZSIvPiB0cmFuc2xhdGVzIGJldHdlZW4gdGhlIHZhbHVlIG9mIHRoZQorIGZy
YW1lIHR5cGUgc3ltYm9sIGFuZCB0aGUgY29ycmVzcG9uZGluZyBzaWduYWwgdHlwZSBhbmQgcXVh
bnRpemF0aW9uIG9mZnNldAorIHR5cGUuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxr
X2ZyYW1lX3R5cGVfcGRmcyIgdGl0bGU9IkZyYW1lIFR5cGUgUERGcyI+Cis8dHRjb2w+VkFEIEZs
YWc8L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+ezI2LCAy
MzAsIDAsIDAsIDAsIDB9LzI1NjwvYz4KKzxjPkFjdGl2ZTwvYz4gICA8Yz57MCwgMCwgMjQsIDc0
LCAxNDgsIDEwfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNp
bGtfZnJhbWVfdHlwZV90YWJsZSIKKyB0aXRsZT0iU2lnbmFsIFR5cGUgYW5kIFF1YW50aXphdGlv
biBPZmZzZXQgVHlwZSBmcm9tIEZyYW1lIFR5cGUiPgorPHR0Y29sPkZyYW1lIFR5cGU8L3R0Y29s
PgorPHR0Y29sPlNpZ25hbCBUeXBlPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPlF1YW50
aXphdGlvbiBPZmZzZXQgVHlwZTwvdHRjb2w+Cis8Yz4wPC9jPiA8Yz5JbmFjdGl2ZTwvYz4gPGM+
TG93PC9jPgorPGM+MTwvYz4gPGM+SW5hY3RpdmU8L2M+IDxjPkhpZ2g8L2M+Cis8Yz4yPC9jPiA8
Yz5VbnZvaWNlZDwvYz4gPGM+TG93PC9jPgorPGM+MzwvYz4gPGM+VW52b2ljZWQ8L2M+IDxjPkhp
Z2g8L2M+Cis8Yz40PC9jPiA8Yz5Wb2ljZWQ8L2M+ICAgPGM+TG93PC9jPgorPGM+NTwvYz4gPGM+
Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+Cis8L3RleHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8
c2VjdGlvbiBhbmNob3I9InNpbGtfZ2FpbnMiIHRvYz0iaW5jbHVkZSIgdGl0bGU9IlN1YmZyYW1l
IEdhaW5zIj4KKzx0PgorQSBzZXBhcmF0ZSBxdWFudGl6YXRpb24gZ2FpbiBpcyBjb2RlZCBmb3Ig
ZWFjaCA1Jm5ic3A7bXMgc3ViZnJhbWUuCitUaGVzZSBnYWlucyBjb250cm9sIHRoZSBzdGVwIHNp
emUgYmV0d2VlbiBxdWFudGl6YXRpb24gbGV2ZWxzIG9mIHRoZSBleGNpdGF0aW9uCisgc2lnbmFs
IGFuZCwgdGhlcmVmb3JlLCB0aGUgcXVhbGl0eSBvZiB0aGUgcmVjb25zdHJ1Y3Rpb24uCitUaGV5
IGFyZSBpbmRlcGVuZGVudCBvZiBhbmQgdW5yZWxhdGVkIHRvIHRoZSBwaXRjaCBjb250b3VycyBj
b2RlZCBmb3Igdm9pY2VkCisgZnJhbWVzLgorVGhlIHF1YW50aXphdGlvbiBnYWlucyBhcmUgdGhl
bXNlbHZlcyB1bmlmb3JtbHkgcXVhbnRpemVkIHRvIDYmbmJzcDtiaXRzIG9uIGEKKyBsb2cgc2Nh
bGUsIGdpdmluZyB0aGVtIGEgcmVzb2x1dGlvbiBvZiBhcHByb3hpbWF0ZWx5IDEuMzY5Jm5ic3A7
ZEIgYW5kIGEgcmFuZ2UKKyBvZiBhcHByb3hpbWF0ZWx5IDEuOTQmbmJzcDtkQiB0byA4OC4yMSZu
YnNwO2RCLgorPC90PgorPHQ+CitUaGUgc3ViZnJhbWUgZ2FpbnMgYXJlIGVpdGhlciBjb2RlZCBp
bmRlcGVuZGVudGx5LCBvciByZWxhdGl2ZSB0byB0aGUgZ2FpbiBmcm9tCisgdGhlIG1vc3QgcmVj
ZW50IGNvZGVkIHN1YmZyYW1lIGluIHRoZSBzYW1lIGNoYW5uZWwuCitJbmRlcGVuZGVudCBjb2Rp
bmcgaXMgdXNlZCBpZiBhbmQgb25seSBpZgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitU
aGlzIGlzIHRoZSBmaXJzdCBzdWJmcmFtZSBpbiB0aGUgY3VycmVudCBTSUxLIGZyYW1lLCBhbmQK
KzwvdD4KKzx0PkVpdGhlcgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitUaGlzIGlzIHRo
ZSBmaXJzdCBTSUxLIGZyYW1lIG9mIGl0cyB0eXBlIChMQlJSIG9yIHJlZ3VsYXIpIGZvciB0aGlz
IGNoYW5uZWwgaW4KKyB0aGUgY3VycmVudCBPcHVzIGZyYW1lLCBvcgorIDwvdD4KKzx0PgorVGhl
IHByZXZpb3VzIFNJTEsgZnJhbWUgb2YgdGhlIHNhbWUgdHlwZSAoTEJSUiBvciByZWd1bGFyKSBm
b3IgdGhpcyBjaGFubmVsIGluCisgdGhlIHNhbWUgT3B1cyBmcmFtZSB3YXMgbm90IGNvZGVkLgor
PC90PgorPC9saXN0PgorPC90PgorPC9saXN0PgorPC90PgorCis8dD4KK0luIGFuIGluZGVwZW5k
ZW50bHkgY29kZWQgc3ViZnJhbWUgZ2FpbiwgdGhlIDMgbW9zdCBzaWduaWZpY2FudCBiaXRzIG9m
IHRoZQorIHF1YW50aXphdGlvbiBnYWluIGFyZSBkZWNvZGVkIHVzaW5nIGEgUERGIHNlbGVjdGVk
IGZyb20KKyA8eHJlZiB0YXJnZXQ9InNpbGtfaW5kZXBlbmRlbnRfZ2Fpbl9tc2JfcGRmcyIvPiBi
YXNlZCBvbiB0aGUgZGVjb2RlZCBzaWduYWwKKyB0eXBlIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxr
X2ZyYW1lX3R5cGUiLz4pLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19pbmRlcGVu
ZGVudF9nYWluX21zYl9wZGZzIgorIHRpdGxlPSJQREZzIGZvciBJbmRlcGVuZGVudCBRdWFudGl6
YXRpb24gR2FpbiBNU0IgQ29kaW5nIj4KKzx0dGNvbCBhbGlnbj0ibGVmdCI+U2lnbmFsIFR5cGU8
L3R0Y29sPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29sPgorPGM+SW5hY3RpdmU8L2M+
IDxjPnszMiwgMTEyLCA2OCwgMjksIDEyLCAgMSwgIDEsIDF9LzI1NjwvYz4KKzxjPlVudm9pY2Vk
PC9jPiAgPGM+ezIsICAxNywgNDUsIDYwLCA2MiwgNDcsIDE5LCA0fS8yNTY8L2M+Cis8Yz5Wb2lj
ZWQ8L2M+ICAgIDxjPnsxLCAgIDMsIDI2LCA3MSwgOTQsIDUwLCAgOSwgMn0vMjU2PC9jPgorPC90
ZXh0dGFibGU+CisKKzx0PgorVGhlIDMgbGVhc3Qgc2lnbmlmaWNhbnQgYml0cyBhcmUgZGVjb2Rl
ZCB1c2luZyBhIHVuaWZvcm0gUERGOgorPC90PgorPHRleHR0YWJsZSBhbmNob3I9InNpbGtfaW5k
ZXBlbmRlbnRfZ2Fpbl9sc2JfcGRmIgorIHRpdGxlPSJQREYgZm9yIEluZGVwZW5kZW50IFF1YW50
aXphdGlvbiBHYWluIExTQiBDb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29s
PgorPGM+ezMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMn0vMjU2PC9jPgorPC90ZXh0dGFi
bGU+CisKKzx0PgorVGhlc2UgNiBiaXRzIGFyZSBjb21iaW5lZCB0byBmb3JtIGEgdmFsdWUsIGdh
aW5faW5kZXgsIGJldHdlZW4gMCBhbmQgNjMuCitXaGVuIHRoZSBnYWluIGZvciB0aGUgcHJldmlv
dXMgc3ViZnJhbWUgaXMgYXZhaWxhYmxlLCB0aGVuIHRoZSBjdXJyZW50IGdhaW4gaXMKKyBsaW1p
dGVkIGFzIGZvbGxvd3M6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCitsb2dfZ2FpbiA9IG1heChnYWluX2luZGV4LCBwcmV2aW91c19s
b2dfZ2FpbiAtIDE2KSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoaXMgbWF5IGhlbHAg
c29tZSBpbXBsZW1lbnRhdGlvbnMgbGltaXQgdGhlIGNoYW5nZSBpbiBwcmVjaXNpb24gb2YgdGhl
aXIKKyBpbnRlcm5hbCBMVFAgaGlzdG9yeS4KK1RoZSBpbmRpY2VzIHdoaWNoIHRoaXMgY2xhbXAg
YXBwbGllcyB0byBjYW5ub3Qgc2ltcGx5IGJlIHJlbW92ZWQgZnJvbSB0aGUKKyBjb2RlYm9vaywg
YmVjYXVzZSBwcmV2aW91c19sb2dfZ2FpbiB3aWxsIG5vdCBiZSBhdmFpbGFibGUgYWZ0ZXIgcGFj
a2V0IGxvc3MuCitUaGUgY2xhbXBpbmcgaXMgc2tpcHBlZCBhZnRlciBhIGRlY29kZXIgcmVzZXQs
IGFuZCBpbiB0aGUgc2lkZSBjaGFubmVsIGlmIHRoZQorIHByZXZpb3VzIGZyYW1lIGluIHRoZSBz
aWRlIGNoYW5uZWwgd2FzIG5vdCBjb2RlZCwgc2luY2UgdGhlcmUgaXMgbm8gdmFsdWUgZm9yCisg
cHJldmlvdXNfbG9nX2dhaW4gYXZhaWxhYmxlLgorSXQgTUFZIGFsc28gYmUgc2tpcHBlZCBhZnRl
ciBwYWNrZXQgbG9zcy4KKzwvdD4KKworPHQ+CitGb3Igc3ViZnJhbWVzIHdoaWNoIGRvIG5vdCBo
YXZlIGFuIGluZGVwZW5kZW50IGdhaW4gKGluY2x1ZGluZyB0aGUgZmlyc3QKKyBzdWJmcmFtZSBv
ZiBmcmFtZXMgbm90IGxpc3RlZCBhcyB1c2luZyBpbmRlcGVuZGVudCBjb2RpbmcgYWJvdmUpLCB0
aGUKKyBxdWFudGl6YXRpb24gZ2FpbiBpcyBjb2RlZCByZWxhdGl2ZSB0byB0aGUgZ2FpbiBmcm9t
IHRoZSBwcmV2aW91cyBzdWJmcmFtZSAoaW4KKyB0aGUgc2FtZSBjaGFubmVsKS4KK1RoZSBQREYg
aW4gPHhyZWYgdGFyZ2V0PSJzaWxrX2RlbHRhX2dhaW5fcGRmIi8+IHlpZWxkcyBhIGRlbHRhX2dh
aW5faW5kZXggdmFsdWUKKyBiZXR3ZWVuIDAgYW5kIDQwLCBpbmNsdXNpdmUuCis8L3Q+Cis8dGV4
dHRhYmxlIGFuY2hvcj0ic2lsa19kZWx0YV9nYWluX3BkZiIKKyB0aXRsZT0iUERGIGZvciBEZWx0
YSBRdWFudGl6YXRpb24gR2FpbiBDb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5QREY8L3R0
Y29sPgorPGM+ezYsICAgNSwgIDExLCAgMzEsIDEzMiwgIDIxLCAgIDgsICAgNCwKKyAgICAzLCAg
IDIsICAgMiwgICAyLCAgIDEsICAgMSwgICAxLCAgIDEsCisgICAgMSwgICAxLCAgIDEsICAgMSwg
ICAxLCAgIDEsICAgMSwgICAxLAorICAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAxLCAgIDEs
ICAgMSwKKyAgICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAgMX0vMjU2
PC9jPgorPC90ZXh0dGFibGU+Cis8dD4KK1RoZSBmb2xsb3dpbmcgZm9ybXVsYSB0cmFuc2xhdGVz
IHRoaXMgaW5kZXggaW50byBhIHF1YW50aXphdGlvbiBnYWluIGZvciB0aGUKKyBjdXJyZW50IHN1
YmZyYW1lIHVzaW5nIHRoZSBnYWluIGZyb20gdGhlIHByZXZpb3VzIHN1YmZyYW1lOgorPGZpZ3Vy
ZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworbG9n
X2dhaW4gPSBjbGFtcCgwLCBtYXgoMipkZWx0YV9nYWluX2luZGV4IC0gMTYsCisgICAgICAgICAg
ICAgICAgICAgcHJldmlvdXNfbG9nX2dhaW4gKyBkZWx0YV9nYWluX2luZGV4IC0gNCksIDYzKSAu
CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKzx0Pgorc2lsa19nYWluc19kZXF1YW50
KCkgKGdhaW5fcXVhbnQuYykgZGVxdWFudGl6ZXMgbG9nX2dhaW4gZm9yIHRoZSBrJ3RoIHN1YmZy
YW1lCisgYW5kIGNvbnZlcnRzIGl0IGludG8gYSBsaW5lYXIgUTE2IHNjYWxlIGZhY3RvciB2aWEK
KzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKK2dhaW5fUTE2W2tdID0gc2lsa19sb2cybGluKCgweDFEMUM3MSpsb2dfZ2Fpbj4+MTYpICsg
MjA5MCkKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorPHQ+CitUaGUgZnVuY3Rpb24g
c2lsa19sb2cybGluKCkgKGxvZzJsaW4uYykgY29tcHV0ZXMgYW4gYXBwcm94aW1hdGlvbiBvZgor
IDIqKihpbkxvZ19RNy8xMjguMCksIHdoZXJlIGluTG9nX1E3IGlzIGl0cyBRNyBpbnB1dC4KK0xl
dCBpID0gaW5Mb2dfUTcmZ3Q7Jmd0OzcgYmUgdGhlIGludGVnZXIgcGFydCBvZiBpbkxvZ1E3IGFu
ZAorIGYgPSBpbkxvZ19RNyZhbXA7MTI3IGJlIHRoZSBmcmFjdGlvbmFsIHBhcnQuCitUaGVuCis8
ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFb
CisoMTw8aSkgKyAoKC0xNzQqZiooMTI4LWYpPj4xNikrZikqKCgxPDxpKT4+NykKK11dPjwvYXJ0
d29yaz4KKzwvZmlndXJlPgorIHlpZWxkcyB0aGUgYXBwcm94aW1hdGUgZXhwb25lbnRpYWwuCitU
aGUgZmluYWwgUTE2IGdhaW4gdmFsdWVzIGxpZXMgYmV0d2VlbiA4MTkyMCBhbmQgMTY4NjExMDIw
OCwgaW5jbHVzaXZlCisgKHJlcHJlc2VudGluZyBzY2FsZSBmYWN0b3JzIG9mIDEuMjUgdG8gMjU3
MjgsIHJlc3BlY3RpdmVseSkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0i
c2lsa19ubHNmcyIgdG9jPSJpbmNsdWRlIiB0aXRsZT0iTm9ybWFsaXplZCBMaW5lIFNwZWN0cmFs
CisgRnJlcXVlbmN5IChMU0YpIGFuZCBMaW5lYXIgUHJlZGljdGl2ZSBDb2RpbmcgKExQQykgQ29l
ZmZpY2llbnRzIj4KKzx0PgorQSBzZXQgb2Ygbm9ybWFsaXplZCBMaW5lIFNwZWN0cmFsIEZyZXF1
ZW5jeSAoTFNGKSBjb2VmZmljaWVudHMgZm9sbG93IHRoZQorIHF1YW50aXphdGlvbiBnYWlucyBp
biB0aGUgYml0c3RyZWFtLCBhbmQgcmVwcmVzZW50IHRoZSBMaW5lYXIgUHJlZGljdGl2ZQorIENv
ZGluZyAoTFBDKSBjb2VmZmljaWVudHMgZm9yIHRoZSBjdXJyZW50IFNJTEsgZnJhbWUuCitPbmNl
IGRlY29kZWQsIHRoZSBub3JtYWxpemVkIExTRnMgZm9ybSBhbiBpbmNyZWFzaW5nIGxpc3Qgb2Yg
UTE1IHZhbHVlcyBiZXR3ZWVuCisgMCBhbmQgMS4KK1RoZXNlIHJlcHJlc2VudCB0aGUgaW50ZXJs
ZWF2ZWQgemVyb3Mgb24gdGhlIHVwcGVyIGhhbGYgb2YgdGhlIHVuaXQgY2lyY2xlCisgKGJldHdl
ZW4gMCBhbmQgcGksIGhlbmNlICJub3JtYWxpemVkIikgaW4gdGhlIHN0YW5kYXJkIGRlY29tcG9z
aXRpb24KKyA8eHJlZiB0YXJnZXQ9ImxpbmUtc3BlY3RyYWwtcGFpcnMiLz4gb2YgdGhlIExQQyBm
aWx0ZXIgaW50byBhIHN5bW1ldHJpYyBwYXJ0CisgYW5kIGFuIGFudGktc3ltbWV0cmljIHBhcnQg
KFAgYW5kIFEgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2YybHBjIi8+KS4KK0JlY2F1c2Ugb2Yg
bm9uLWxpbmVhciBlZmZlY3RzIGluIHRoZSBkZWNvZGluZyBwcm9jZXNzLCBhbiBpbXBsZW1lbnRh
dGlvbiBTSE9VTEQKKyBtYXRjaCB0aGUgZml4ZWQtcG9pbnQgYXJpdGhtZXRpYyBkZXNjcmliZWQg
aW4gdGhpcyBzZWN0aW9uIGV4YWN0bHkuCitBbiBlbmNvZGVyIFNIT1VMRCBhbHNvIHVzZSB0aGUg
c2FtZSBwcm9jZXNzLgorPC90PgorPHQ+CitUaGUgbm9ybWFsaXplZCBMU0ZzIGFyZSBjb2RlZCB1
c2luZyBhIHR3by1zdGFnZSB2ZWN0b3IgcXVhbnRpemVyIChWUSkKKyAoPHhyZWYgdGFyZ2V0PSJz
aWxrX25sc2Zfc3RhZ2UxIi8+IGFuZCA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFnZTIiLz4p
LgorTkIgYW5kIE1CIGZyYW1lcyB1c2UgYW4gb3JkZXItMTAgcHJlZGljdG9yLCB3aGlsZSBXQiBm
cmFtZXMgdXNlIGFuIG9yZGVyLTE2CisgcHJlZGljdG9yLCBhbmQgdGh1cyBoYXZlIGRpZmZlcmVu
dCBzZXRzIG9mIHRhYmxlcy4KK0FmdGVyIHJlY29uc3RydWN0aW5nIHRoZSBub3JtYWxpemVkIExT
RnMKKyAoPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfcmVjb25zdHJ1Y3Rpb24iLz4pLCB0aGUgZGVj
b2RlciBydW5zIHRoZW0gdGhyb3VnaCBhCisgc3RhYmlsaXphdGlvbiBwcm9jZXNzICg8eHJlZiB0
YXJnZXQ9InNpbGtfbmxzZl9zdGFiaWxpemF0aW9uIi8+KSwgaW50ZXJwb2xhdGVzCisgdGhlbSBi
ZXR3ZWVuIGZyYW1lcyAoPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfaW50ZXJwb2xhdGlvbiIvPiks
IGNvbnZlcnRzIHRoZW0KKyBiYWNrIGludG8gTFBDIGNvZWZmaWNpZW50cyAoPHhyZWYgdGFyZ2V0
PSJzaWxrX25sc2YybHBjIi8+KSwgYW5kIHRoZW4gcnVucworIHRoZW0gdGhyb3VnaCBmdXJ0aGVy
IHByb2Nlc3NlcyB0byBsaW1pdCB0aGUgcmFuZ2Ugb2YgdGhlIGNvZWZmaWNpZW50cworICg8eHJl
ZiB0YXJnZXQ9InNpbGtfbHBjX3JhbmdlX2xpbWl0Ii8+KSBhbmQgdGhlIGdhaW4gb2YgdGhlIGZp
bHRlcgorICg8eHJlZiB0YXJnZXQ9InNpbGtfbHBjX2dhaW5fbGltaXQiLz4pLgorQWxsIG9mIHRo
aXMgaXMgbmVjZXNzYXJ5IHRvIGVuc3VyZSB0aGUgcmVjb25zdHJ1Y3Rpb24gcHJvY2VzcyBpcyBz
dGFibGUuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19ubHNmX3N0YWdlMSIgdGl0bGU9
Ik5vcm1hbGl6ZWQgTFNGIFN0YWdlIDEgRGVjb2RpbmciPgorPHQ+CitUaGUgZmlyc3QgVlEgc3Rh
Z2UgdXNlcyBhIDMyLWVsZW1lbnQgY29kZWJvb2ssIGNvZGVkIHdpdGggb25lIG9mIHRoZSBQREZz
IGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zfc3RhZ2UxX3BkZnMiLz4sIGRlcGVuZGluZyBv
biB0aGUgYXVkaW8gYmFuZHdpZHRoIGFuZAorIHRoZSBzaWduYWwgdHlwZSBvZiB0aGUgY3VycmVu
dCBTSUxLIGZyYW1lLgorVGhpcyB5aWVsZHMgYSBzaW5nbGUgaW5kZXgsIEkxLCBmb3IgdGhlIGVu
dGlyZSBmcmFtZSwgd2hpY2gKKzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0PkluZGV4ZXMgYW4g
ZWxlbWVudCBpbiBhIGNvYXJzZSBjb2RlYm9vayw8L3Q+Cis8dD5TZWxlY3RzIHRoZSBQREZzIGZv
ciB0aGUgc2Vjb25kIHN0YWdlIG9mIHRoZSBWUSwgYW5kPC90PgorPHQ+U2VsZWN0cyB0aGUgcHJl
ZGljdGlvbiB3ZWlnaHRzIHVzZWQgdG8gcmVtb3ZlIGludHJhLWZyYW1lIHJlZHVuZGFuY3kgZnJv
bQorIHRoZSBzZWNvbmQgc3RhZ2UuPC90PgorPC9saXN0PgorVGhlIGFjdHVhbCBjb2RlYm9vayBl
bGVtZW50cyBhcmUgbGlzdGVkIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfbmJtYl9jb2Rl
Ym9vayIvPiBhbmQKKyA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl93Yl9jb2RlYm9vayIvPiwgYnV0
IHRoZXkgYXJlIG5vdCBuZWVkZWQgdW50aWwgdGhlIGxhc3QKKyBzdGFnZXMgb2YgcmVjb25zdHJ1
Y3RpbmcgdGhlIExTRiBjb2VmZmljaWVudHMuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJz
aWxrX25sc2Zfc3RhZ2UxX3BkZnMiCisgdGl0bGU9IlBERnMgZm9yIE5vcm1hbGl6ZWQgTFNGIFN0
YWdlLTEgSW5kZXggRGVjb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5BdWRpbyBCYW5kd2lk
dGg8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5TaWduYWwgVHlwZTwvdHRjb2w+Cis8dHRj
b2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz5OQiBvciBNQjwvYz4gPGM+SW5hY3RpdmUg
b3IgdW52b2ljZWQ8L2M+Cis8Yz4KK3s0NCwgMzQsIDMwLCAxOSwgMjEsIDEyLCAxMSwgIDMsCisg
IDMsICAyLCAxNiwgIDIsICAyLCAgMSwgIDUsICAyLAorICAxLCAgMywgIDMsICAxLCAgMSwgIDIs
ICAyLCAgMiwKKyAgMywgIDEsICA5LCAgOSwgIDIsICA3LCAgMiwgIDF9LzI1NgorPC9jPgorPGM+
TkIgb3IgTUI8L2M+IDxjPlZvaWNlZDwvYz4KKzxjPgorezEsIDEwLCAgMSwgIDgsICAzLCAgOCwg
IDgsIDE0LAorMTMsIDE0LCAgMSwgMTQsIDEyLCAxMywgMTEsIDExLAorMTIsIDExLCAxMCwgMTAs
IDExLCAgOCwgIDksICA4LAorIDcsICA4LCAgMSwgIDEsICA2LCAgMSwgIDYsICA1fS8yNTYKKzwv
Yz4KKzxjPldCPC9jPiA8Yz5JbmFjdGl2ZSBvciB1bnZvaWNlZDwvYz4KKzxjPgorezMxLCAyMSwg
IDMsIDE3LCAgMSwgIDgsIDE3LCAgNCwKKyAgMSwgMTgsIDE2LCAgNCwgIDIsICAzLCAgMSwgMTAs
CisgIDEsICAzLCAxNiwgMTEsIDE2LCAgMiwgIDIsICAzLAorICAyLCAxMSwgIDEsICA0LCAgOSwg
IDgsICA3LCAgM30vMjU2Cis8L2M+Cis8Yz5XQjwvYz4gPGM+Vm9pY2VkPC9jPgorPGM+Cit7MSwg
IDQsIDE2LCAgNSwgMTgsIDExLCAgNSwgMTQsCisxNSwgIDEsICAzLCAxMiwgMTMsIDE0LCAxNCwg
IDYsCisxNCwgMTIsICAyLCAgNiwgIDEsIDEyLCAxMiwgMTEsCisxMCwgIDMsIDEwLCAgNSwgIDEs
ICAxLCAgMSwgIDN9LzI1NgorPC9jPgorPC90ZXh0dGFibGU+CisKKzwvc2VjdGlvbj4KKworPHNl
Y3Rpb24gYW5jaG9yPSJzaWxrX25sc2Zfc3RhZ2UyIiB0aXRsZT0iTm9ybWFsaXplZCBMU0YgU3Rh
Z2UgMiBEZWNvZGluZyI+Cis8dD4KK0EgdG90YWwgb2YgMTYgUERGcyBhcmUgYXZhaWxhYmxlIGZv
ciB0aGUgTFNGIHJlc2lkdWFsIGluIHRoZSBzZWNvbmQgc3RhZ2U6IHRoZQorIDggKGEuLi5oKSBm
b3IgTkIgYW5kIE1CIGZyYW1lcyBnaXZlbiBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3N0
YWdlMl9uYm1iX3BkZnMiLz4sIGFuZCB0aGUgOCAoaS4uLnApIGZvciBXQiBmcmFtZXMKKyBnaXZl
biBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFnZTJfd2JfcGRmcyIvPi4KK1doaWNoIFBE
RiBpcyB1c2VkIGZvciB3aGljaCBjb2VmZmljaWVudCBpcyBkcml2ZW4gYnkgdGhlIGluZGV4LCBJ
MSwKKyBkZWNvZGVkIGluIHRoZSBmaXJzdCBzdGFnZS4KKzx4cmVmIHRhcmdldD0ic2lsa19ubHNm
X25ibWJfc3RhZ2UyX2NiX3NlbCIvPiBsaXN0cyB0aGUgbGV0dGVyIG9mIHRoZQorIGNvcnJlc3Bv
bmRpbmcgUERGIGZvciBlYWNoIG5vcm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50IGZvciBOQiBhbmQg
TUIsIGFuZAorIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3diX3N0YWdlMl9jYl9zZWwiLz4gbGlz
dHMgdGhlIHNhbWUgaW5mb3JtYXRpb24gZm9yIFdCLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hv
cj0ic2lsa19ubHNmX3N0YWdlMl9uYm1iX3BkZnMiCisgdGl0bGU9IlBERnMgZm9yIE5CL01CIE5v
cm1hbGl6ZWQgTFNGIFN0YWdlLTIgSW5kZXggRGVjb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0
Ij5Db2RlYm9vazwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz5h
PC9jPiA8Yz57MSwgICAxLCAgIDEsICAxNSwgMjI0LCAgMTEsICAgMSwgICAxLCAgIDF9LzI1Njwv
Yz4KKzxjPmI8L2M+IDxjPnsxLCAgIDEsICAgMiwgIDM0LCAxODMsICAzMiwgICAxLCAgIDEsICAg
MX0vMjU2PC9jPgorPGM+YzwvYz4gPGM+ezEsICAgMSwgICA0LCAgNDIsIDE0OSwgIDU1LCAgIDIs
ICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5kPC9jPiA8Yz57MSwgICAxLCAgIDgsICA1MiwgMTIzLCAg
NjEsICAgOCwgICAxLCAgIDF9LzI1NjwvYz4KKzxjPmU8L2M+IDxjPnsxLCAgIDMsICAxNiwgIDUz
LCAxMDEsICA3NCwgICA2LCAgIDEsICAgMX0vMjU2PC9jPgorPGM+ZjwvYz4gPGM+ezEsICAgMywg
IDE3LCAgNTUsICA5MCwgIDczLCAgMTUsICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5nPC9jPiA8Yz57
MSwgICA3LCAgMjQsICA1MywgIDc0LCAgNjcsICAyNiwgICAzLCAgIDF9LzI1NjwvYz4KKzxjPmg8
L2M+IDxjPnsxLCAgIDEsICAxOCwgIDYzLCAgNzgsICA1OCwgIDMwLCAgIDYsICAgMX0vMjU2PC9j
PgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25sc2Zfc3RhZ2UyX3di
X3BkZnMiCisgdGl0bGU9IlBERnMgZm9yIFdCIE5vcm1hbGl6ZWQgTFNGIFN0YWdlLTIgSW5kZXgg
RGVjb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5Db2RlYm9vazwvdHRjb2w+Cis8dHRjb2wg
YWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz5pPC9jPiA8Yz57MSwgICAxLCAgIDEsICAgOSwg
MjMyLCAgIDksICAgMSwgICAxLCAgIDF9LzI1NjwvYz4KKzxjPmo8L2M+IDxjPnsxLCAgIDEsICAg
MiwgIDI4LCAxODYsICAzNSwgICAxLCAgIDEsICAgMX0vMjU2PC9jPgorPGM+azwvYz4gPGM+ezEs
ICAgMSwgICAzLCAgNDIsIDE1MiwgIDUzLCAgIDIsICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5sPC9j
PiA8Yz57MSwgICAxLCAgMTAsICA0OSwgMTI2LCAgNjUsICAgMiwgICAxLCAgIDF9LzI1NjwvYz4K
KzxjPm08L2M+IDxjPnsxLCAgIDQsICAxOSwgIDQ4LCAxMDAsICA3NywgICA1LCAgIDEsICAgMX0v
MjU2PC9jPgorPGM+bjwvYz4gPGM+ezEsICAgMSwgIDE0LCAgNTQsIDEwMCwgIDcyLCAgMTIsICAg
MSwgICAxfS8yNTY8L2M+Cis8Yz5vPC9jPiA8Yz57MSwgICAxLCAgMTUsICA2MSwgIDg3LCAgNjEs
ICAyNSwgICA0LCAgIDF9LzI1NjwvYz4KKzxjPnA8L2M+IDxjPnsxLCAgIDcsICAyMSwgIDUwLCAg
NzcsICA4MSwgIDE3LCAgIDEsICAgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFi
bGUgYW5jaG9yPSJzaWxrX25sc2ZfbmJtYl9zdGFnZTJfY2Jfc2VsIgorIHRpdGxlPSJDb2RlYm9v
ayBTZWxlY3Rpb24gZm9yIE5CL01CIE5vcm1hbGl6ZWQgTFNGIFN0YWdlLTIgSW5kZXggRGVjb2Rp
bmciPgorPHR0Y29sPkkxPC90dGNvbD4KKzx0dGNvbD5Db2VmZmljaWVudDwvdHRjb2w+Cis8Yy8+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4wJm5ic3A7MSZuYnNwOzImbmJzcDszJm5ic3A7NCZu
YnNwOzUmbmJzcDs2Jm5ic3A7NyZuYnNwOzgmbmJzcDs5PC9zcGFueD48L2M+Cis8Yz4gMDwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmEmbmJzcDthJm5ic3A7YSZuYnNwO2EmbmJzcDthJm5i
c3A7YSZuYnNwO2EmbmJzcDthJm5ic3A7YSZuYnNwO2E8L3NwYW54PjwvYz4KKzxjPiAxPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YiZuYnNwO2QmbmJzcDtiJm5ic3A7YyZuYnNwO2MmbmJz
cDtiJm5ic3A7YyZuYnNwO2ImbmJzcDtiJm5ic3A7Yjwvc3Bhbng+PC9jPgorPGM+IDI8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5jJm5ic3A7YiZuYnNwO2ImbmJzcDtiJm5ic3A7YiZuYnNw
O2ImbmJzcDtiJm5ic3A7YiZuYnNwO2ImbmJzcDtiPC9zcGFueD48L2M+Cis8Yz4gMzwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPmImbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7
YiZuYnNwO2MmbmJzcDtiJm5ic3A7YiZuYnNwO2I8L3NwYW54PjwvYz4KKzxjPiA0PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2QmbmJzcDtkJm5ic3A7ZCZuYnNwO2QmbmJzcDtj
Jm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7Yzwvc3Bhbng+PC9jPgorPGM+IDU8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj5hJm5ic3A7ZiZuYnNwO2QmbmJzcDtkJm5ic3A7YyZuYnNwO2Mm
bmJzcDtjJm5ic3A7YyZuYnNwO2ImbmJzcDtiPC9zcGFueD48L2M+Cis8Yz4gZzwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPmEmbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7YyZu
YnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2I8L3NwYW54PjwvYz4KKzxjPiA3PC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2QmbmJzcDtnJm5ic3A7ZSZuYnNwO2UmbmJzcDtlJm5i
c3A7ZiZuYnNwO2UmbmJzcDtmJm5ic3A7Zjwvc3Bhbng+PC9jPgorPGM+IDg8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5jJm5ic3A7ZSZuYnNwO2YmbmJzcDtmJm5ic3A7ZSZuYnNwO2YmbmJz
cDtlJm5ic3A7ZyZuYnNwO2UmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4gOTwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPmMmbmJzcDtlJm5ic3A7ZSZuYnNwO2gmbmJzcDtlJm5ic3A7ZiZuYnNw
O2UmbmJzcDtmJm5ic3A7ZiZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+ZSZuYnNwO2QmbmJzcDtkJm5ic3A7ZCZuYnNwO2MmbmJzcDtkJm5ic3A7
YyZuYnNwO2MmbmJzcDtjJm5ic3A7Yzwvc3Bhbng+PC9jPgorPGM+MTE8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5iJm5ic3A7ZiZuYnNwO2YmbmJzcDtnJm5ic3A7ZSZuYnNwO2YmbmJzcDtl
Jm5ic3A7ZiZuYnNwO2YmbmJzcDtmPC9zcGFueD48L2M+Cis8Yz4xMjwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPmMmbmJzcDtoJm5ic3A7ZSZuYnNwO2cmbmJzcDtmJm5ic3A7ZiZuYnNwO2Ym
bmJzcDtmJm5ic3A7ZiZuYnNwO2Y8L3NwYW54PjwvYz4KKzxjPjEzPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+YyZuYnNwO2gmbmJzcDtmJm5ic3A7ZiZuYnNwO2YmbmJzcDtmJm5ic3A7ZiZu
YnNwO2cmbmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MTQ8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5kJm5ic3A7ZCZuYnNwO2YmbmJzcDtlJm5ic3A7ZSZuYnNwO2YmbmJzcDtlJm5i
c3A7ZiZuYnNwO2UmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4xNTwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPmMmbmJzcDtkJm5ic3A7ZCZuYnNwO2YmbmJzcDtmJm5ic3A7ZSZuYnNwO2UmbmJz
cDtlJm5ic3A7ZSZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjE2PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+YyZuYnNwO2UmbmJzcDtlJm5ic3A7ZyZuYnNwO2UmbmJzcDtmJm5ic3A7ZSZuYnNw
O2YmbmJzcDtmJm5ic3A7Zjwvc3Bhbng+PC9jPgorPGM+MTc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj5jJm5ic3A7ZiZuYnNwO2UmbmJzcDtnJm5ic3A7ZiZuYnNwO2YmbmJzcDtmJm5ic3A7
ZSZuYnNwO2YmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4xODwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPmMmbmJzcDtoJm5ic3A7ZSZuYnNwO2YmbmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtm
Jm5ic3A7ZiZuYnNwO2Y8L3NwYW54PjwvYz4KKzxjPjE5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+YyZuYnNwO2YmbmJzcDtlJm5ic3A7ZyZuYnNwO2gmbmJzcDtnJm5ic3A7ZiZuYnNwO2cm
bmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj5kJm5ic3A7ZyZuYnNwO2gmbmJzcDtlJm5ic3A7ZyZuYnNwO2YmbmJzcDtmJm5ic3A7ZyZu
YnNwO2UmbmJzcDtmPC9zcGFueD48L2M+Cis8Yz4yMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPmMmbmJzcDtoJm5ic3A7ZyZuYnNwO2UmbmJzcDtlJm5ic3A7ZSZuYnNwO2YmbmJzcDtlJm5i
c3A7ZiZuYnNwO2Y8L3NwYW54PjwvYz4KKzxjPjIyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+ZSZuYnNwO2YmbmJzcDtmJm5ic3A7ZSZuYnNwO2cmbmJzcDtnJm5ic3A7ZiZuYnNwO2cmbmJz
cDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij5jJm5ic3A7ZiZuYnNwO2YmbmJzcDtnJm5ic3A7ZiZuYnNwO2cmbmJzcDtlJm5ic3A7ZyZuYnNw
O2UmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4yNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PmUmbmJzcDtmJm5ic3A7ZiZuYnNwO2YmbmJzcDtkJm5ic3A7aCZuYnNwO2UmbmJzcDtmJm5ic3A7
ZiZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjI1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
YyZuYnNwO2QmbmJzcDtlJm5ic3A7ZiZuYnNwO2YmbmJzcDtnJm5ic3A7ZSZuYnNwO2YmbmJzcDtm
Jm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5j
Jm5ic3A7ZCZuYnNwO2MmbmJzcDtkJm5ic3A7ZCZuYnNwO2UmbmJzcDtjJm5ic3A7ZCZuYnNwO2Qm
bmJzcDtkPC9zcGFueD48L2M+Cis8Yz4yNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmIm
bmJzcDtiJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtkJm5ic3A7YyZu
YnNwO2M8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ZSZu
YnNwO2YmbmJzcDtmJm5ic3A7ZyZuYnNwO2cmbmJzcDtnJm5ic3A7ZiZuYnNwO2cmbmJzcDtlJm5i
c3A7Zjwvc3Bhbng+PC9jPgorPGM+Mjk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5kJm5i
c3A7ZiZuYnNwO2YmbmJzcDtlJm5ic3A7ZSZuYnNwO2UmbmJzcDtlJm5ic3A7ZCZuYnNwO2QmbmJz
cDtjPC9zcGFueD48L2M+Cis8Yz4zMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJz
cDtmJm5ic3A7ZCZuYnNwO2gmbmJzcDtmJm5ic3A7ZiZuYnNwO2UmbmJzcDtlJm5ic3A7ZiZuYnNw
O2U8L3NwYW54PjwvYz4KKzxjPjMxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ZSZuYnNw
O2UmbmJzcDtmJm5ic3A7ZSZuYnNwO2YmbmJzcDtnJm5ic3A7ZiZuYnNwO2cmbmJzcDtmJm5ic3A7
ZTwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25s
c2Zfd2Jfc3RhZ2UyX2NiX3NlbCIKKyB0aXRsZT0iQ29kZWJvb2sgU2VsZWN0aW9uIGZvciBXQiBO
b3JtYWxpemVkIExTRiBTdGFnZS0yIEluZGV4IERlY29kaW5nIj4KKzx0dGNvbD5JMTwvdHRjb2w+
Cis8dHRjb2w+Q29lZmZpY2llbnQ8L3R0Y29sPgorPGMvPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzQm
bmJzcDsmbmJzcDs1Jm5ic3A7Jm5ic3A7NiZuYnNwOyZuYnNwOzcmbmJzcDsmbmJzcDs4Jm5ic3A7
Jm5ic3A7OSZuYnNwOzEwJm5ic3A7MTEmbmJzcDsxMiZuYnNwOzEzJm5ic3A7MTQmbmJzcDsxNTwv
c3Bhbng+PC9jPgorPGM+IDA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5i
c3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2km
bmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7
Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNw
O2kmbmJzcDsmbmJzcDtpPC9zcGFueD48L2M+Cis8Yz4gMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPmsmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJz
cDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZu
YnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsm
bmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2w8L3NwYW54PjwvYz4KKzxjPiAyPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ayZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtuJm5ic3A7
Jm5ic3A7bCZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNw
O24mbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5i
c3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bDwvc3Bhbng+
PC9jPgorPGM+IDM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7ayZu
YnNwOyZuYnNwO2ombmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsm
bmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7
aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJz
cDsmbmJzcDtqPC9zcGFueD48L2M+Cis8Yz4gNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PmkmbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtvJm5i
c3A7Jm5ic3A7bSZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZu
YnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtt
Jm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2w8L3NwYW54PjwvYz4KKzxjPiA1PC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7
biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJz
cDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5i
c3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bTwvc3Bhbng+PC9jPgor
PGM+IDY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7aSZuYnNwOyZu
YnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtp
Jm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNw
OyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJz
cDtpPC9zcGFueD48L2M+Cis8Yz4gNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJz
cDsmbmJzcDtrJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtwJm5ic3A7Jm5i
c3A7ayZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24m
bmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7
Jm5ic3A7ayZuYnNwOyZuYnNwO2w8L3NwYW54PjwvYz4KKzxjPiA4PC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7byZuYnNw
OyZuYnNwO28mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJz
cDtvJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZu
YnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+IDk8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2km
bmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7
Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNw
O2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpPC9z
cGFueD48L2M+Cis8Yz4xMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJz
cDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZu
YnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsm
bmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7
aSZuYnNwOyZuYnNwO2o8L3NwYW54PjwvYz4KKzxjPjExPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNw
O24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5i
c3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZu
YnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+MTI8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7
bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJz
cDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtsPC9zcGFueD48
L2M+Cis8Yz4xMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmwmbmJzcDsmbmJzcDttJm5i
c3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7bSZuYnNwOyZu
YnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtt
Jm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bCZuYnNw
OyZuYnNwO208L3NwYW54PjwvYz4KKzxjPjE0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
aSZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJz
cDsmbmJzcDtwJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtvJm5ic3A7Jm5i
c3A7biZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wm
bmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+MTU8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtq
Jm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNw
OyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJz
cDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtpPC9zcGFueD48L2M+Cis8
Yz4xNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmombmJzcDsmbmJzcDtvJm5ic3A7Jm5i
c3A7biZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24m
bmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7
Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNw
O208L3NwYW54PjwvYz4KKzxjPjE3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aiZuYnNw
OyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJz
cDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bCZu
YnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO24mbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7bTwvc3Bhbng+PC9jPgorPGM+MTg8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7
Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNw
O2ombmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5i
c3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDttPC9zcGFueD48L2M+Cis8Yz4xOTwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bCZu
YnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsm
bmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7
aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2k8L3Nw
YW54PjwvYz4KKzxjPjIwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+bCZuYnNwOyZuYnNw
O20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5i
c3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZu
YnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtr
Jm5ic3A7Jm5ic3A7bTwvc3Bhbng+PC9jPgorPGM+MjE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj5rJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtwJm5ic3A7Jm5ic3A7
cCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJz
cDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5i
c3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4yMjwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPmsmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZu
YnNwO28mbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDts
Jm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNw
OyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO208L3NwYW54Pjwv
Yz4KKzxjPjIzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aiZuYnNwOyZuYnNwO2wmbmJz
cDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5i
c3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO24m
bmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7
Jm5ic3A7ajwvc3Bhbng+PC9jPgorPGM+MjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5r
Jm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7byZuYnNw
OyZuYnNwO20mbmJzcDsmbmJzcDtwJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJz
cDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bCZu
YnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4yNTwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2om
bmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7
Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNw
O2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2k8L3NwYW54PjwvYz4KKzxj
PjI2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO28mbmJzcDsmbmJz
cDtvJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7biZu
YnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsm
bmJzcDtwJm5ic3A7Jm5ic3A7cCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7
bTwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5sJm5ic3A7
Jm5ic3A7bCZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNw
O20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5i
c3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZu
YnNwO2smbmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4yODwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2kmbmJzcDsm
bmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7
ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJz
cDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2o8L3NwYW54PjwvYz4KKzxjPjI5PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5i
c3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZu
YnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtp
Jm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7ajwvc3Bh
bng+PC9jPgorPGM+MzA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5sJm5ic3A7Jm5ic3A7
biZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7cCZuYnNwOyZuYnNwO24mbmJz
cDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtsJm5ic3A7Jm5i
c3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2om
bmJzcDsmbmJzcDtpPC9zcGFueD48L2M+Cis8Yz4zMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPmsmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtt
Jm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNw
OyZuYnNwO2ombmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO20mbmJzcDsmbmJz
cDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2k8L3NwYW54PjwvYz4KKzwvdGV4dHRhYmxlPgor
Cis8dD4KK0RlY29kaW5nIHRoZSBzZWNvbmQgc3RhZ2UgcmVzaWR1YWwgcHJvY2VlZHMgYXMgZm9s
bG93cy4KK0ZvciBlYWNoIGNvZWZmaWNpZW50LCB0aGUgZGVjb2RlciByZWFkcyBhIHN5bWJvbCB1
c2luZyB0aGUgUERGIGNvcnJlc3BvbmRpbmcgdG8KKyBJMSBmcm9tIGVpdGhlciA8eHJlZiB0YXJn
ZXQ9InNpbGtfbmxzZl9uYm1iX3N0YWdlMl9jYl9zZWwiLz4gb3IKKyA8eHJlZiB0YXJnZXQ9InNp
bGtfbmxzZl93Yl9zdGFnZTJfY2Jfc2VsIi8+LCBhbmQgc3VidHJhY3RzIDQgZnJvbSB0aGUgcmVz
dWx0CisgdG8gZ2l2ZSBhbiBpbmRleCBpbiB0aGUgcmFuZ2UgLTQgdG8gNCwgaW5jbHVzaXZlLgor
SWYgdGhlIGluZGV4IGlzIGVpdGhlciAtNCBvciA0LCBpdCByZWFkcyBhIHNlY29uZCBzeW1ib2wg
dXNpbmcgdGhlIFBERiBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX2V4dF9wZGYiLz4sIGFu
ZCBhZGRzIHRoZSB2YWx1ZSBvZiB0aGlzIHNlY29uZCBzeW1ib2wKKyB0byB0aGUgaW5kZXgsIHVz
aW5nIHRoZSBzYW1lIHNpZ24uCitUaGlzIGdpdmVzIHRoZSBpbmRleCwgSTJba10sIGEgdG90YWwg
cmFuZ2Ugb2YgLTEwIHRvIDEwLCBpbmNsdXNpdmUuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9y
PSJzaWxrX25sc2ZfZXh0X3BkZiIKKyB0aXRsZT0iUERGIGZvciBOb3JtYWxpemVkIExTRiBJbmRl
eCBFeHRlbnNpb24gRGVjb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29sPgor
PGM+ezE1NiwgNjAsIDI0LCAgOSwgIDQsICAyLCAgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisK
Kzx0PgorVGhlIGRlY29kZWQgaW5kaWNlcyBmcm9tIGJvdGggc3RhZ2VzIGFyZSB0cmFuc2xhdGVk
IGJhY2sgaW50byBub3JtYWxpemVkIExTRgorIGNvZWZmaWNpZW50cyBpbiBzaWxrX05MU0ZfZGVj
b2RlKCkgKE5MU0ZfZGVjb2RlLmMpLgorVGhlIHN0YWdlLTIgaW5kaWNlcyByZXByZXNlbnQgcmVz
aWR1YWxzIGFmdGVyIGJvdGggdGhlIGZpcnN0IHN0YWdlIG9mIHRoZSBWUQorIGFuZCBhIHNlcGFy
YXRlIGJhY2t3YXJkcy1wcmVkaWN0aW9uIHN0ZXAuCitUaGUgYmFja3dhcmRzIHByZWRpY3Rpb24g
cHJvY2VzcyBpbiB0aGUgZW5jb2RlciBzdWJ0cmFjdHMgYSBwcmVkaWN0aW9uIGZyb20KKyBlYWNo
IHJlc2lkdWFsIGZvcm1lZCBieSBhIG11bHRpcGxlIG9mIHRoZSBjb2VmZmljaWVudCB0aGF0IGZv
bGxvd3MgaXQuCitUaGUgZGVjb2RlciBtdXN0IHVuZG8gdGhpcyBwcm9jZXNzLgorPHhyZWYgdGFy
Z2V0PSJzaWxrX25sc2ZfcHJlZF93ZWlnaHRzIi8+IGNvbnRhaW5zIGxpc3RzIG9mIHByZWRpY3Rp
b24gd2VpZ2h0cworIGZvciBlYWNoIGNvZWZmaWNpZW50LgorVGhlcmUgYXJlIHR3byBsaXN0cyBm
b3IgTkIgYW5kIE1CLCBhbmQgYW5vdGhlciB0d28gbGlzdHMgZm9yIFdCLCBnaXZpbmcgdHdvCisg
cG9zc2libGUgcHJlZGljdGlvbiB3ZWlnaHRzIGZvciBlYWNoIGNvZWZmaWNpZW50LgorPC90Pgor
Cis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNmX3ByZWRfd2VpZ2h0cyIKKyB0aXRsZT0iUHJl
ZGljdGlvbiBXZWlnaHRzIGZvciBOb3JtYWxpemVkIExTRiBEZWNvZGluZyI+Cis8dHRjb2wgYWxp
Z249ImxlZnQiPkNvZWZmaWNpZW50PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPkE8L3R0
Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+QjwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0
Ij5DPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPkQ8L3R0Y29sPgorIDxjPjA8L2M+IDxj
PjE3OTwvYz4gPGM+MTE2PC9jPiA8Yz4xNzU8L2M+ICA8Yz42ODwvYz4KKyA8Yz4xPC9jPiA8Yz4x
Mzg8L2M+ICA8Yz42NzwvYz4gPGM+MTQ4PC9jPiAgPGM+NjI8L2M+CisgPGM+MjwvYz4gPGM+MTQw
PC9jPiAgPGM+ODI8L2M+IDxjPjE2MDwvYz4gIDxjPjY2PC9jPgorIDxjPjM8L2M+IDxjPjE0ODwv
Yz4gIDxjPjU5PC9jPiA8Yz4xNzY8L2M+ICA8Yz42MDwvYz4KKyA8Yz40PC9jPiA8Yz4xNTE8L2M+
ICA8Yz45MjwvYz4gPGM+MTc4PC9jPiAgPGM+NzI8L2M+CisgPGM+NTwvYz4gPGM+MTQ5PC9jPiAg
PGM+NzI8L2M+IDxjPjE3MzwvYz4gPGM+MTE3PC9jPgorIDxjPjY8L2M+IDxjPjE1MzwvYz4gPGM+
MTAwPC9jPiA8Yz4xNzQ8L2M+ICA8Yz44NTwvYz4KKyA8Yz43PC9jPiA8Yz4xNTE8L2M+ICA8Yz44
OTwvYz4gPGM+MTY0PC9jPiAgPGM+OTA8L2M+CisgPGM+ODwvYz4gPGM+MTYzPC9jPiAgPGM+OTI8
L2M+IDxjPjE3NzwvYz4gPGM+MTE4PC9jPgorIDxjPjk8L2M+IDxjLz4gICAgICAgIDxjLz4gICAg
ICA8Yz4xNzQ8L2M+IDxjPjEzNjwvYz4KKzxjPjEwPC9jPiA8Yy8+ICAgICAgICA8Yy8+ICAgICAg
PGM+MTk2PC9jPiA8Yz4xNTE8L2M+Cis8Yz4xMTwvYz4gPGMvPiAgICAgICAgPGMvPiAgICAgIDxj
PjE4MjwvYz4gPGM+MTQyPC9jPgorPGM+MTI8L2M+IDxjLz4gICAgICAgIDxjLz4gICAgICA8Yz4x
OTg8L2M+IDxjPjE2MDwvYz4KKzxjPjEzPC9jPiA8Yy8+ICAgICAgICA8Yy8+ICAgICAgPGM+MTky
PC9jPiA8Yz4xNDI8L2M+Cis8Yz4xNDwvYz4gPGMvPiAgICAgICAgPGMvPiAgICAgIDxjPjE4Mjwv
Yz4gPGM+MTU1PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlIHByZWRpY3Rpb24gaXMgdW5k
b25lIHVzaW5nIHRoZSBwcm9jZWR1cmUgaW1wbGVtZW50ZWQgaW4KKyBzaWxrX05MU0ZfcmVzaWR1
YWxfZGVxdWFudCgpIChOTFNGX2RlY29kZS5jKSwgd2hpY2ggaXMgYXMgZm9sbG93cy4KK0VhY2gg
Y29lZmZpY2llbnQgc2VsZWN0cyBpdHMgcHJlZGljdGlvbiB3ZWlnaHQgZnJvbSBvbmUgb2YgdGhl
IHR3byBsaXN0cyBiYXNlZAorIG9uIHRoZSBzdGFnZS0xIGluZGV4LCBJMS4KKzx4cmVmIHRhcmdl
dD0ic2lsa19ubHNmX25ibWJfd2VpZ2h0X3NlbCIvPiBnaXZlcyB0aGUgc2VsZWN0aW9ucyBmb3Ig
ZWFjaAorIGNvZWZmaWNpZW50IGZvciBOQiBhbmQgTUIsIGFuZCA8eHJlZiB0YXJnZXQ9InNpbGtf
bmxzZl93Yl93ZWlnaHRfc2VsIi8+IGdpdmVzCisgdGhlIHNlbGVjdGlvbnMgZm9yIFdCLgorTGV0
IGRfTFBDIGJlIHRoZSBvcmRlciBvZiB0aGUgY29kZWJvb2ssIGkuZS4sIDEwIGZvciBOQiBhbmQg
TUIsIGFuZCAxNiBmb3IgV0IsCisgYW5kIGxldCBwcmVkX1E4W2tdIGJlIHRoZSB3ZWlnaHQgZm9y
IHRoZSBrJ3RoIGNvZWZmaWNpZW50IHNlbGVjdGVkIGJ5IHRoaXMKKyBwcm9jZXNzIGZvciAwJm5i
c3A7Jmx0Oz0mbmJzcDtrJm5ic3A7Jmx0OyZuYnNwO2RfTFBDLTEuCitUaGVuLCB0aGUgc3RhZ2Ut
MiByZXNpZHVhbCBmb3IgZWFjaCBjb2VmZmljaWVudCBpcyBjb21wdXRlZCB2aWEKKzxmaWd1cmUg
YWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3Jlc19R
MTBba10gPSAoaysxIDwgZF9MUEMgPyAocmVzX1ExMFtrKzFdKnByZWRfUThba10pPj44IDogMCkK
KyAgICAgICAgICAgICArICgoKChJMltrXTw8MTApIC0gc2lnbihJMltrXSkqMTAyKSpxc3RlcCk+
PjE2KSAsCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyB3aGVyZSBxc3RlcCBpcyB0aGUgUTE2
IHF1YW50aXphdGlvbiBzdGVwIHNpemUsIHdoaWNoIGlzIDExNzk2IGZvciBOQiBhbmQgTUIKKyBh
bmQgOTgzMCBmb3IgV0IgKHJlcHJlc2VudGluZyBzdGVwIHNpemVzIG9mIGFwcHJveGltYXRlbHkg
MC4xOCBhbmQgMC4xNSwKKyByZXNwZWN0aXZlbHkpLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hv
cj0ic2lsa19ubHNmX25ibWJfd2VpZ2h0X3NlbCIKKyB0aXRsZT0iUHJlZGljdGlvbiBXZWlnaHQg
U2VsZWN0aW9uIGZvciBOQi9NQiBOb3JtYWxpemVkIExTRiBEZWNvZGluZyI+Cis8dHRjb2w+STE8
L3R0Y29sPgorPHR0Y29sPkNvZWZmaWNpZW50PC90dGNvbD4KKzxjLz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPjAmbmJzcDsxJm5ic3A7MiZuYnNwOzMmbmJzcDs0Jm5ic3A7NSZuYnNwOzYmbmJz
cDs3Jm5ic3A7ODwvc3Bhbng+PC9jPgorPGM+IDA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij5BJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNw
O0E8L3NwYW54PjwvYz4KKzxjPiAxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QiZuYnNw
O0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBPC9zcGFu
eD48L2M+Cis8Yz4gMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5ic3A7
QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QTwvc3Bhbng+PC9jPgor
PGM+IDM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5CJm5ic3A7QiZuYnNwO0ImbmJzcDtB
Jm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPiA0PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0Em
bmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4gNTwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZu
YnNwO0EmbmJzcDtBJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+IDY8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5CJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5i
c3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPiA3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJz
cDtBPC9zcGFueD48L2M+Cis8Yz4gODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJz
cDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7Qjwvc3Bh
bng+PC9jPgorPGM+IDk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNw
O0ImbmJzcDtCJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0I8L3NwYW54PjwvYz4K
KzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtBJm5ic3A7
QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4xMTwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtC
Jm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+MTI8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0Im
bmJzcDtCJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjEzPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZu
YnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4xNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPkImbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5i
c3A7Qjwvc3Bhbng+PC9jPgorPGM+MTU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5i
c3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0E8L3Nw
YW54PjwvYz4KKzxjPjE2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJz
cDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+
Cis8Yz4xNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5ic3A7QiZuYnNw
O0ImbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7Qjwvc3Bhbng+PC9jPgorPGM+MTg8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7
QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjE5PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtC
Jm5ic3A7QSZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4yMDwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5ic3A7QiZuYnNwO0Em
bmJzcDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+MjE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj5BJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZu
YnNwO0E8L3NwYW54PjwvYz4KKzxjPjIyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZu
YnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtCPC9z
cGFueD48L2M+Cis8Yz4yMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5i
c3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7Qjwvc3Bhbng+PC9j
PgorPGM+MjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNwO0EmbmJz
cDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0I8L3NwYW54PjwvYz4KKzxjPjI1
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNw
O0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4yNjwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7
QSZuYnNwO0EmbmJzcDtBJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtB
Jm5ic3A7QSZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+QSZuYnNwO0EmbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0Im
bmJzcDtBPC9zcGFueD48L2M+Cis8Yz4yOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkIm
bmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QTwv
c3Bhbng+PC9jPgorPGM+MzA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QSZu
YnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QSZuYnNwO0I8L3NwYW54Pjwv
Yz4KKzxjPjMxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QiZuYnNwO0EmbmJzcDtCJm5i
c3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtCPC9zcGFueD48L2M+Cis8L3Rl
eHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl93Yl93ZWlnaHRfc2VsIgor
IHRpdGxlPSJQcmVkaWN0aW9uIFdlaWdodCBTZWxlY3Rpb24gZm9yIFdCIE5vcm1hbGl6ZWQgTFNG
IERlY29kaW5nIj4KKzx0dGNvbD5JMTwvdHRjb2w+Cis8dHRjb2w+Q29lZmZpY2llbnQ8L3R0Y29s
PgorPGMvPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJz
cDsyJm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzQmbmJzcDsmbmJzcDs1Jm5ic3A7Jm5ic3A7NiZu
YnNwOyZuYnNwOzcmbmJzcDsmbmJzcDs4Jm5ic3A7Jm5ic3A7OSZuYnNwOzEwJm5ic3A7MTEmbmJz
cDsxMiZuYnNwOzEzJm5ic3A7MTQ8L3NwYW54PjwvYz4KKzxjPiAwPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4gMTwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+IDI8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPiAzPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4gNDwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+
IDU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4K
KzxjPiA2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+RCZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDPC9zcGFueD48
L2M+Cis8Yz4gNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtEJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RDwvc3Bh
bng+PC9jPgorPGM+IDg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Q8
L3NwYW54PjwvYz4KKzxjPiA5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtEPC9zcGFueD48L2M+Cis8Yz4xMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJz
cDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MTE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5D
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNw
OyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPjEyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4xMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MTQ8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPjE1PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4xNjwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MTc8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJz
cDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPjE4PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4x
OTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgor
PGM+MjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54Pjwv
Yz4KKzxjPjIxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0QmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Qm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDPC9zcGFu
eD48L2M+Cis8Yz4yMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwv
c3Bhbng+PC9jPgorPGM+MjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5i
c3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNw
O0M8L3NwYW54PjwvYz4KKzxjPjI0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtEPC9zcGFueD48L2M+Cis8Yz4yNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7RDwvc3Bhbng+PC9jPgorPGM+MjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij5DJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPjI3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZu
YnNwO0QmbmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4yODwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7RDwvc3Bhbng+PC9jPgorPGM+Mjk8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPjMwPC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4zMTwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPC90ZXh0dGFi
bGU+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX25sc2ZfcmVjb25zdHJ1
Y3Rpb24iCisgdGl0bGU9IlJlY29uc3RydWN0aW5nIHRoZSBOb3JtYWxpemVkIExTRiBDb2VmZmlj
aWVudHMiPgorPHQ+CitPbmNlIHRoZSBzdGFnZS0xIGluZGV4IEkxIGFuZCB0aGUgc3RhZ2UtMiBy
ZXNpZHVhbCByZXNfUTEwW10gaGF2ZSBiZWVuIGRlY29kZWQsCisgdGhlIGZpbmFsIG5vcm1hbGl6
ZWQgTFNGIGNvZWZmaWNpZW50cyBjYW4gYmUgcmVjb25zdHJ1Y3RlZC4KKzwvdD4KKzx0PgorVGhl
IHNwZWN0cmFsIGRpc3RvcnRpb24gaW50cm9kdWNlZCBieSB0aGUgcXVhbnRpemF0aW9uIG9mIGVh
Y2ggTFNGIGNvZWZmaWNpZW50CisgdmFyaWVzLCBzbyB0aGUgc3RhZ2UtMiByZXNpZHVhbCBpcyB3
ZWlnaHRlZCBhY2NvcmRpbmdseSwgdXNpbmcgdGhlCisgbG93LWNvbXBsZXhpdHkgSW52ZXJzZSBI
YXJtb25pYyBNZWFuIFdlaWdodGluZyAoSUhNVykgZnVuY3Rpb24gcHJvcG9zZWQgaW4KKyA8eHJl
ZiB0YXJnZXQ9Imxhcm9pYS1pY2Fzc3AiLz4uCitUaGUgd2VpZ2h0cyBhcmUgZGVyaXZlZCBkaXJl
Y3RseSBmcm9tIHRoZSBzdGFnZS0xIGNvZGVib29rIHZlY3Rvci4KK0xldCBjYjFfUThba10gYmUg
dGhlIGsndGggZW50cnkgb2YgdGhlIHN0YWdlLTEgY29kZWJvb2sgdmVjdG9yIGZyb20KKyA8eHJl
ZiB0YXJnZXQ9InNpbGtfbmxzZl9uYm1iX2NvZGVib29rIi8+IG9yCisgPHhyZWYgdGFyZ2V0PSJz
aWxrX25sc2Zfd2JfY29kZWJvb2siLz4uCitUaGVuIGZvciAwJm5ic3A7Jmx0Oz0mbmJzcDtrJm5i
c3A7Jmx0OyZuYnNwO2RfTFBDIHRoZSBmb2xsb3dpbmcgZXhwcmVzc2lvbgorIGNvbXB1dGVzIHRo
ZSBzcXVhcmUgb2YgdGhlIHdlaWdodCBhcyBhIFExOCB2YWx1ZToKKzxmaWd1cmUgYWxpZ249ImNl
bnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWwordzJfUTE4W2tdID0g
KDEwMjQvKGNiMV9ROFtrXSAtIGNiMV9ROFtrLTFdKQorICAgICAgICAgICAgICsgMTAyNC8oY2Ix
X1E4W2srMV0gLSBjYjFfUThba10pKSA8PCAxNiAsCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJl
PgorIHdoZXJlIGNiMV9ROFstMV0mbmJzcDs9Jm5ic3A7MCBhbmQgY2IxX1E4W2RfTFBDXSZuYnNw
Oz0mbmJzcDsyNTYsIGFuZCB0aGUKKyBkaXZpc2lvbiBpcyBpbnRlZ2VyIGRpdmlzaW9uLgorVGhp
cyBpcyByZWR1Y2VkIHRvIGFuIHVuc3F1YXJlZCwgUTkgdmFsdWUgdXNpbmcgdGhlIGZvbGxvd2lu
ZyBzcXVhcmUtcm9vdAorIGFwcHJveGltYXRpb246Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitpID0gaWxvZyh3Ml9RMThba10pCitm
ID0gKHcyX1ExOFtrXT4+KGktOCkpICYgMTI3Cit5ID0gKChpJjEpID8gMzI3NjggOiA0NjIxNCkg
Pj4gKCgzMi1pKT4+MSkKK3dfUTlba10gPSB5ICsgKCgyMTMqZip5KT4+MTYpCitdXT48L2FydHdv
cms+Cis8L2ZpZ3VyZT4KK1RoZSBjb25zdGFudCA0NjIxNCBoZXJlIGlzIGFwcHJveGltYXRlbHkg
dGhlIHNxdWFyZSByb290IG9mIDIgaW4gUTE1LgorVGhlIGNiMV9ROFtdIHZlY3RvciBjb21wbGV0
ZWx5IGRldGVybWluZXMgdGhlc2Ugd2VpZ2h0cywgYW5kIHRoZXkgbWF5IGJlCisgdGFidWxhdGVk
IGFuZCBzdG9yZWQgYXMgMTMtYml0IHVuc2lnbmVkIHZhbHVlcyAod2l0aCBhIHJhbmdlIG9mIDE4
MTkgdG8gNTIyNywKKyBpbmNsdXNpdmUpIHRvIGF2b2lkIGNvbXB1dGluZyB0aGVtIHdoZW4gZGVj
b2RpbmcuCitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGFscmVhZHkgcmVxdWlyZXMgY29k
ZSB0byBjb21wdXRlIHRoZXNlIHdlaWdodHMgb24KKyB1bnF1YW50aXplZCBjb2VmZmljaWVudHMg
aW4gdGhlIGVuY29kZXIsIGluIHNpbGtfTkxTRl9WUV93ZWlnaHRzX2xhcm9pYSgpCisgKE5MU0Zf
VlFfd2VpZ2h0c19sYXJvaWEuYykgYW5kIGl0cyBjYWxsZXJzLCBzbyBpdCByZXVzZXMgdGhhdCBj
b2RlIGluIHRoZQorIGRlY29kZXIgaW5zdGVhZCBvZiB1c2luZyBhIHByZS1jb21wdXRlZCB0YWJs
ZSB0byByZWR1Y2UgdGhlIGFtb3VudCBvZiBST00KKyByZXF1aXJlZC4KKzwvdD4KKworPHRleHR0
YWJsZSBhbmNob3I9InNpbGtfbmxzZl9uYm1iX2NvZGVib29rIgorICAgICAgICAgICB0aXRsZT0i
TkIvTUIgTm9ybWFsaXplZCBMU0YgU3RhZ2UtMSBDb2RlYm9vayBWZWN0b3JzIj4KKzx0dGNvbD5J
MTwvdHRjb2w+Cis8dHRjb2w+Q29kZWJvb2sgKFE4KTwvdHRjb2w+Cis8Yy8+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOyZuYnNw
OzImbmJzcDsmbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7Jm5ic3A7NCZuYnNwOyZuYnNwOyZuYnNw
OzUmbmJzcDsmbmJzcDsmbmJzcDs2Jm5ic3A7Jm5ic3A7Jm5ic3A7NyZuYnNwOyZuYnNwOyZuYnNw
OzgmbmJzcDsmbmJzcDsmbmJzcDs5PC9zcGFueD48L2M+Cis8Yz4wPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+MTImbmJzcDsmbmJzcDszNSZuYnNwOyZuYnNwOzYwJm5ic3A7Jm5ic3A7ODMm
bmJzcDsxMDgmbmJzcDsxMzImbmJzcDsxNTcmbmJzcDsxODAmbmJzcDsyMDYmbmJzcDsyMjg8L3Nw
YW54PjwvYz4KKzxjPjE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNSZuYnNwOyZuYnNw
OzMyJm5ic3A7Jm5ic3A7NTUmbmJzcDsmbmJzcDs3NyZuYnNwOzEwMSZuYnNwOzEyNSZuYnNwOzE1
MSZuYnNwOzE3NSZuYnNwOzIwMSZuYnNwOzIyNTwvc3Bhbng+PC9jPgorPGM+MjwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPjE5Jm5ic3A7Jm5ic3A7NDImbmJzcDsmbmJzcDs2NiZuYnNwOyZu
YnNwOzg5Jm5ic3A7MTE0Jm5ic3A7MTM3Jm5ic3A7MTYyJm5ic3A7MTg0Jm5ic3A7MjA5Jm5ic3A7
MjMwPC9zcGFueD48L2M+Cis8Yz4zPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTImbmJz
cDsmbmJzcDsyNSZuYnNwOyZuYnNwOzUwJm5ic3A7Jm5ic3A7NzImbmJzcDsmbmJzcDs5NyZuYnNw
OzEyMCZuYnNwOzE0NyZuYnNwOzE3MiZuYnNwOzIwMCZuYnNwOzIyMzwvc3Bhbng+PC9jPgorPGM+
NDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjI2Jm5ic3A7Jm5ic3A7NDQmbmJzcDsmbmJz
cDs2OSZuYnNwOyZuYnNwOzkwJm5ic3A7MTE0Jm5ic3A7MTM1Jm5ic3A7MTU5Jm5ic3A7MTgwJm5i
c3A7MjA1Jm5ic3A7MjI1PC9zcGFueD48L2M+Cis8Yz41PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+MTMmbmJzcDsmbmJzcDsyMiZuYnNwOyZuYnNwOzUzJm5ic3A7Jm5ic3A7ODAmbmJzcDsx
MDYmbmJzcDsxMzAmbmJzcDsxNTYmbmJzcDsxODAmbmJzcDsyMDUmbmJzcDsyMjg8L3NwYW54Pjwv
Yz4KKzxjPjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNSZuYnNwOyZuYnNwOzI1Jm5i
c3A7Jm5ic3A7NDQmbmJzcDsmbmJzcDs2NCZuYnNwOyZuYnNwOzkwJm5ic3A7MTE1Jm5ic3A7MTQy
Jm5ic3A7MTY4Jm5ic3A7MTk2Jm5ic3A7MjIyPC9zcGFueD48L2M+Cis8Yz43PC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+MTkmbmJzcDsmbmJzcDsyNCZuYnNwOyZuYnNwOzYyJm5ic3A7Jm5i
c3A7ODImbmJzcDsxMDAmbmJzcDsxMjAmbmJzcDsxNDUmbmJzcDsxNjgmbmJzcDsxOTAmbmJzcDsy
MTQ8L3NwYW54PjwvYz4KKzxjPjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yMiZuYnNw
OyZuYnNwOzMxJm5ic3A7Jm5ic3A7NTAmbmJzcDsmbmJzcDs3OSZuYnNwOzEwMyZuYnNwOzEyMCZu
YnNwOzE1MSZuYnNwOzE3MCZuYnNwOzIwMyZuYnNwOzIyNzwvc3Bhbng+PC9jPgorPGM+OTwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjIxJm5ic3A7Jm5ic3A7MjkmbmJzcDsmbmJzcDs0NSZu
YnNwOyZuYnNwOzY1Jm5ic3A7MTA2Jm5ic3A7MTI0Jm5ic3A7MTUwJm5ic3A7MTcxJm5ic3A7MTk2
Jm5ic3A7MjI0PC9zcGFueD48L2M+Cis8Yz4xMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PjMwJm5ic3A7Jm5ic3A7NDkmbmJzcDsmbmJzcDs3NSZuYnNwOyZuYnNwOzk3Jm5ic3A7MTIxJm5i
c3A7MTQyJm5ic3A7MTY1Jm5ic3A7MTg2Jm5ic3A7MjA5Jm5ic3A7MjI5PC9zcGFueD48L2M+Cis8
Yz4xMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE5Jm5ic3A7Jm5ic3A7MjUmbmJzcDsm
bmJzcDs1MiZuYnNwOyZuYnNwOzcwJm5ic3A7Jm5ic3A7OTMmbmJzcDsxMTYmbmJzcDsxNDMmbmJz
cDsxNjYmbmJzcDsxOTImbmJzcDsyMTk8L3NwYW54PjwvYz4KKzxjPjEyPC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+MjYmbmJzcDsmbmJzcDszNCZuYnNwOyZuYnNwOzYyJm5ic3A7Jm5ic3A7
NzUmbmJzcDsmbmJzcDs5NyZuYnNwOzExOCZuYnNwOzE0NSZuYnNwOzE2NyZuYnNwOzE5NCZuYnNw
OzIxNzwvc3Bhbng+PC9jPgorPGM+MTM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yNSZu
YnNwOyZuYnNwOzMzJm5ic3A7Jm5ic3A7NTYmbmJzcDsmbmJzcDs3MCZuYnNwOyZuYnNwOzkxJm5i
c3A7MTEzJm5ic3A7MTQzJm5ic3A7MTY1Jm5ic3A7MTk2Jm5ic3A7MjIzPC9zcGFueD48L2M+Cis8
Yz4xNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjIxJm5ic3A7Jm5ic3A7MzQmbmJzcDsm
bmJzcDs1MSZuYnNwOyZuYnNwOzcyJm5ic3A7Jm5ic3A7OTcmbmJzcDsxMTcmbmJzcDsxNDUmbmJz
cDsxNzEmbmJzcDsxOTYmbmJzcDsyMjI8L3NwYW54PjwvYz4KKzxjPjE1PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+MjAmbmJzcDsmbmJzcDsyOSZuYnNwOyZuYnNwOzUwJm5ic3A7Jm5ic3A7
NjcmbmJzcDsmbmJzcDs5MCZuYnNwOzExNyZuYnNwOzE0NCZuYnNwOzE2OCZuYnNwOzE5NyZuYnNw
OzIyMTwvc3Bhbng+PC9jPgorPGM+MTY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yMiZu
YnNwOyZuYnNwOzMxJm5ic3A7Jm5ic3A7NDgmbmJzcDsmbmJzcDs2NiZuYnNwOyZuYnNwOzk1Jm5i
c3A7MTE3Jm5ic3A7MTQ2Jm5ic3A7MTY4Jm5ic3A7MTk2Jm5ic3A7MjIyPC9zcGFueD48L2M+Cis8
Yz4xNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjI0Jm5ic3A7Jm5ic3A7MzMmbmJzcDsm
bmJzcDs1MSZuYnNwOyZuYnNwOzc3Jm5ic3A7MTE2Jm5ic3A7MTM0Jm5ic3A7MTU4Jm5ic3A7MTgw
Jm5ic3A7MjAwJm5ic3A7MjI0PC9zcGFueD48L2M+Cis8Yz4xODwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPjIxJm5ic3A7Jm5ic3A7MjgmbmJzcDsmbmJzcDs3MCZuYnNwOyZuYnNwOzg3Jm5i
c3A7MTA2Jm5ic3A7MTI0Jm5ic3A7MTQ5Jm5ic3A7MTcwJm5ic3A7MTk0Jm5ic3A7MjE3PC9zcGFu
eD48L2M+Cis8Yz4xOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjI2Jm5ic3A7Jm5ic3A7
MzMmbmJzcDsmbmJzcDs1MyZuYnNwOyZuYnNwOzY0Jm5ic3A7Jm5ic3A7ODMmbmJzcDsxMTcmbmJz
cDsxNTImbmJzcDsxNzMmbmJzcDsyMDQmbmJzcDsyMjU8L3NwYW54PjwvYz4KKzxjPjIwPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjcmbmJzcDsmbmJzcDszNCZuYnNwOyZuYnNwOzY1Jm5i
c3A7Jm5ic3A7OTUmbmJzcDsxMDgmbmJzcDsxMjkmbmJzcDsxNTUmbmJzcDsxNzQmbmJzcDsyMTAm
bmJzcDsyMjU8L3NwYW54PjwvYz4KKzxjPjIxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
MjAmbmJzcDsmbmJzcDsyNiZuYnNwOyZuYnNwOzcyJm5ic3A7Jm5ic3A7OTkmbmJzcDsxMTMmbmJz
cDsxMzEmbmJzcDsxNTQmbmJzcDsxNzYmbmJzcDsyMDAmbmJzcDsyMTk8L3NwYW54PjwvYz4KKzxj
PjIyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MzQmbmJzcDsmbmJzcDs0MyZuYnNwOyZu
YnNwOzYxJm5ic3A7Jm5ic3A7NzgmbmJzcDsmbmJzcDs5MyZuYnNwOzExNCZuYnNwOzE1NSZuYnNw
OzE3NyZuYnNwOzIwNSZuYnNwOzIyOTwvc3Bhbng+PC9jPgorPGM+MjM8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4yMyZuYnNwOyZuYnNwOzI5Jm5ic3A7Jm5ic3A7NTQmbmJzcDsmbmJzcDs5
NyZuYnNwOzEyNCZuYnNwOzEzOCZuYnNwOzE2MyZuYnNwOzE3OSZuYnNwOzIwOSZuYnNwOzIyOTwv
c3Bhbng+PC9jPgorPGM+MjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4zMCZuYnNwOyZu
YnNwOzM4Jm5ic3A7Jm5ic3A7NTYmbmJzcDsmbmJzcDs4OSZuYnNwOzExOCZuYnNwOzEyOSZuYnNw
OzE1OCZuYnNwOzE3OCZuYnNwOzIwMCZuYnNwOzIzMTwvc3Bhbng+PC9jPgorPGM+MjU8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yMSZuYnNwOyZuYnNwOzI5Jm5ic3A7Jm5ic3A7NDkmbmJz
cDsmbmJzcDs2MyZuYnNwOyZuYnNwOzg1Jm5ic3A7MTExJm5ic3A7MTQyJm5ic3A7MTYzJm5ic3A7
MTkzJm5ic3A7MjIyPC9zcGFueD48L2M+Cis8Yz4yNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPjI3Jm5ic3A7Jm5ic3A7NDgmbmJzcDsmbmJzcDs3NyZuYnNwOzEwMyZuYnNwOzEzMyZuYnNw
OzE1OCZuYnNwOzE3OSZuYnNwOzE5NiZuYnNwOzIxNSZuYnNwOzIzMjwvc3Bhbng+PC9jPgorPGM+
Mjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yOSZuYnNwOyZuYnNwOzQ3Jm5ic3A7Jm5i
c3A7NzQmbmJzcDsmbmJzcDs5OSZuYnNwOzEyNCZuYnNwOzE1MSZuYnNwOzE3NiZuYnNwOzE5OCZu
YnNwOzIyMCZuYnNwOzIzNzwvc3Bhbng+PC9jPgorPGM+Mjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4zMyZuYnNwOyZuYnNwOzQyJm5ic3A7Jm5ic3A7NjEmbmJzcDsmbmJzcDs3NiZuYnNw
OyZuYnNwOzkzJm5ic3A7MTIxJm5ic3A7MTU1Jm5ic3A7MTc0Jm5ic3A7MjA3Jm5ic3A7MjI1PC9z
cGFueD48L2M+Cis8Yz4yOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjI5Jm5ic3A7Jm5i
c3A7NTMmbmJzcDsmbmJzcDs4NyZuYnNwOzExMiZuYnNwOzEzNiZuYnNwOzE1NCZuYnNwOzE3MCZu
YnNwOzE4OCZuYnNwOzIwOCZuYnNwOzIyNzwvc3Bhbng+PC9jPgorPGM+MzA8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4yNCZuYnNwOyZuYnNwOzMwJm5ic3A7Jm5ic3A7NTImbmJzcDsmbmJz
cDs4NCZuYnNwOzEzMSZuYnNwOzE1MCZuYnNwOzE2NiZuYnNwOzE4NiZuYnNwOzIwMyZuYnNwOzIy
OTwvc3Bhbng+PC9jPgorPGM+MzE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4zNyZuYnNw
OyZuYnNwOzQ4Jm5ic3A7Jm5ic3A7NjQmbmJzcDsmbmJzcDs4NCZuYnNwOzEwNCZuYnNwOzExOCZu
YnNwOzE1NiZuYnNwOzE3NyZuYnNwOzIwMSZuYnNwOzIzMDwvc3Bhbng+PC9jPgorPC90ZXh0dGFi
bGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25sc2Zfd2JfY29kZWJvb2siCisgICAgICAg
ICAgIHRpdGxlPSJXQiBOb3JtYWxpemVkIExTRiBTdGFnZS0xIENvZGVib29rIFZlY3RvcnMiPgor
PHR0Y29sPkkxPC90dGNvbD4KKzx0dGNvbD5Db2RlYm9vayAoUTgpPC90dGNvbD4KKzxjLz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7MiZu
YnNwOyZuYnNwOzMmbmJzcDsmbmJzcDs0Jm5ic3A7Jm5ic3A7Jm5ic3A7NSZuYnNwOyZuYnNwOyZu
YnNwOzYmbmJzcDsmbmJzcDsmbmJzcDs3Jm5ic3A7Jm5ic3A7Jm5ic3A7OCZuYnNwOyZuYnNwOyZu
YnNwOzkmbmJzcDsmbmJzcDsxMCZuYnNwOyZuYnNwOzExJm5ic3A7Jm5ic3A7MTImbmJzcDsmbmJz
cDsxMyZuYnNwOyZuYnNwOzE0Jm5ic3A7Jm5ic3A7MTU8L3NwYW54PjwvYz4KKzxjPjA8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs3Jm5ic3A7MjMmbmJzcDszOCZuYnNwOzU0Jm5i
c3A7NjkmbmJzcDsmbmJzcDs4NSZuYnNwOzEwMCZuYnNwOzExNiZuYnNwOzEzMSZuYnNwOzE0NyZu
YnNwOzE2MiZuYnNwOzE3OCZuYnNwOzE5MyZuYnNwOzIwOCZuYnNwOzIyMyZuYnNwOzIzOTwvc3Bh
bng+PC9jPgorPGM+MTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjEzJm5ic3A7MjUmbmJz
cDs0MSZuYnNwOzU1Jm5ic3A7NjkmbmJzcDsmbmJzcDs4MyZuYnNwOyZuYnNwOzk4Jm5ic3A7MTEy
Jm5ic3A7MTI3Jm5ic3A7MTQyJm5ic3A7MTU3Jm5ic3A7MTcxJm5ic3A7MTg3Jm5ic3A7MjAzJm5i
c3A7MjIwJm5ic3A7MjM2PC9zcGFueD48L2M+Cis8Yz4yPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+MTUmbmJzcDsyMSZuYnNwOzM0Jm5ic3A7NTEmbmJzcDs2MSZuYnNwOyZuYnNwOzc4Jm5i
c3A7Jm5ic3A7OTImbmJzcDsxMDYmbmJzcDsxMjYmbmJzcDsxMzYmbmJzcDsxNTImbmJzcDsxNjcm
bmJzcDsxODUmbmJzcDsyMDUmbmJzcDsyMjUmbmJzcDsyNDA8L3NwYW54PjwvYz4KKzxjPjM8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xMCZuYnNwOzIxJm5ic3A7MzYmbmJzcDs1MCZuYnNw
OzYzJm5ic3A7Jm5ic3A7NzkmbmJzcDsmbmJzcDs5NSZuYnNwOzExMCZuYnNwOzEyNiZuYnNwOzE0
MSZuYnNwOzE1NyZuYnNwOzE3MyZuYnNwOzE4OSZuYnNwOzIwNSZuYnNwOzIyMSZuYnNwOzIzNzwv
c3Bhbng+PC9jPgorPGM+NDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE3Jm5ic3A7MjAm
bmJzcDszNyZuYnNwOzUxJm5ic3A7NTkmbmJzcDsmbmJzcDs3OCZuYnNwOyZuYnNwOzg5Jm5ic3A7
MTA3Jm5ic3A7MTIzJm5ic3A7MTM0Jm5ic3A7MTUwJm5ic3A7MTY0Jm5ic3A7MTg0Jm5ic3A7MjA1
Jm5ic3A7MjI0Jm5ic3A7MjQwPC9zcGFueD48L2M+Cis8Yz41PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+MTAmbmJzcDsxNSZuYnNwOzMyJm5ic3A7NTEmbmJzcDs2NyZuYnNwOyZuYnNwOzgx
Jm5ic3A7Jm5ic3A7OTYmbmJzcDsxMTImbmJzcDsxMjkmbmJzcDsxNDImbmJzcDsxNTgmbmJzcDsx
NzMmbmJzcDsxODkmbmJzcDsyMDQmbmJzcDsyMjAmbmJzcDsyMzY8L3NwYW54PjwvYz4KKzxjPjY8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs4Jm5ic3A7MjEmbmJzcDszNyZuYnNw
OzUxJm5ic3A7NjUmbmJzcDsmbmJzcDs3OSZuYnNwOyZuYnNwOzk4Jm5ic3A7MTEzJm5ic3A7MTI2
Jm5ic3A7MTM4Jm5ic3A7MTU1Jm5ic3A7MTY4Jm5ic3A7MTc5Jm5ic3A7MTkyJm5ic3A7MjA5Jm5i
c3A7MjE4PC9zcGFueD48L2M+Cis8Yz43PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTIm
bmJzcDsxNSZuYnNwOzM0Jm5ic3A7NTUmbmJzcDs2MyZuYnNwOyZuYnNwOzc4Jm5ic3A7Jm5ic3A7
ODcmbmJzcDsxMDgmbmJzcDsxMTgmbmJzcDsxMzEmbmJzcDsxNDgmbmJzcDsxNjcmbmJzcDsxODUm
bmJzcDsyMDMmbmJzcDsyMTkmbmJzcDsyMzY8L3NwYW54PjwvYz4KKzxjPjg8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4xNiZuYnNwOzE5Jm5ic3A7MzImbmJzcDszNiZuYnNwOzU2Jm5ic3A7
Jm5ic3A7NzkmbmJzcDsmbmJzcDs5MSZuYnNwOzEwOCZuYnNwOzExOCZuYnNwOzEzNiZuYnNwOzE1
NCZuYnNwOzE3MSZuYnNwOzE4NiZuYnNwOzIwNCZuYnNwOzIyMCZuYnNwOzIzNzwvc3Bhbng+PC9j
PgorPGM+OTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjExJm5ic3A7MjgmbmJzcDs0MyZu
YnNwOzU4Jm5ic3A7NzQmbmJzcDsmbmJzcDs4OSZuYnNwOzEwNSZuYnNwOzEyMCZuYnNwOzEzNSZu
YnNwOzE1MCZuYnNwOzE2NSZuYnNwOzE4MCZuYnNwOzE5NiZuYnNwOzIxMSZuYnNwOzIyNiZuYnNw
OzI0MTwvc3Bhbng+PC9jPgorPGM+MTA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJz
cDs2Jm5ic3A7MTYmbmJzcDszMyZuYnNwOzQ2Jm5ic3A7NjAmbmJzcDsmbmJzcDs3NSZuYnNwOyZu
YnNwOzkyJm5ic3A7MTA3Jm5ic3A7MTIzJm5ic3A7MTM3Jm5ic3A7MTU2Jm5ic3A7MTY5Jm5ic3A7
MTg1Jm5ic3A7MTk5Jm5ic3A7MjE0Jm5ic3A7MjI1PC9zcGFueD48L2M+Cis8Yz4xMTwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPjExJm5ic3A7MTkmbmJzcDszMCZuYnNwOzQ0Jm5ic3A7NTcm
bmJzcDsmbmJzcDs3NCZuYnNwOyZuYnNwOzg5Jm5ic3A7MTA1Jm5ic3A7MTIxJm5ic3A7MTM1Jm5i
c3A7MTUyJm5ic3A7MTY5Jm5ic3A7MTg2Jm5ic3A7MjAyJm5ic3A7MjE4Jm5ic3A7MjM0PC9zcGFu
eD48L2M+Cis8Yz4xMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjEyJm5ic3A7MTkmbmJz
cDsyOSZuYnNwOzQ2Jm5ic3A7NTcmbmJzcDsmbmJzcDs3MSZuYnNwOyZuYnNwOzg4Jm5ic3A7MTAw
Jm5ic3A7MTIwJm5ic3A7MTMyJm5ic3A7MTQ4Jm5ic3A7MTY1Jm5ic3A7MTgyJm5ic3A7MTk5Jm5i
c3A7MjE2Jm5ic3A7MjMzPC9zcGFueD48L2M+Cis8Yz4xMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPjE3Jm5ic3A7MjMmbmJzcDszNSZuYnNwOzQ2Jm5ic3A7NTYmbmJzcDsmbmJzcDs3NyZu
YnNwOyZuYnNwOzkyJm5ic3A7MTA2Jm5ic3A7MTIzJm5ic3A7MTM0Jm5ic3A7MTUyJm5ic3A7MTY3
Jm5ic3A7MTg1Jm5ic3A7MjA0Jm5ic3A7MjIyJm5ic3A7MjM3PC9zcGFueD48L2M+Cis8Yz4xNDwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE0Jm5ic3A7MTcmbmJzcDs0NSZuYnNwOzUzJm5i
c3A7NjMmbmJzcDsmbmJzcDs3NSZuYnNwOyZuYnNwOzg5Jm5ic3A7MTA3Jm5ic3A7MTE1Jm5ic3A7
MTMyJm5ic3A7MTUxJm5ic3A7MTcxJm5ic3A7MTg4Jm5ic3A7MjA2Jm5ic3A7MjIxJm5ic3A7MjQw
PC9zcGFueD48L2M+Cis8Yz4xNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzkm
bmJzcDsxNiZuYnNwOzI5Jm5ic3A7NDAmbmJzcDs1NiZuYnNwOyZuYnNwOzcxJm5ic3A7Jm5ic3A7
ODgmbmJzcDsxMDMmbmJzcDsxMTkmbmJzcDsxMzcmbmJzcDsxNTQmbmJzcDsxNzEmbmJzcDsxODkm
bmJzcDsyMDUmbmJzcDsyMjImbmJzcDsyMzc8L3NwYW54PjwvYz4KKzxjPjE2PC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+MTYmbmJzcDsxOSZuYnNwOzM2Jm5ic3A7NDgmbmJzcDs1NyZuYnNw
OyZuYnNwOzc2Jm5ic3A7Jm5ic3A7ODcmbmJzcDsxMDUmbmJzcDsxMTgmbmJzcDsxMzImbmJzcDsx
NTAmbmJzcDsxNjcmbmJzcDsxODUmbmJzcDsyMDImbmJzcDsyMTgmbmJzcDsyMzY8L3NwYW54Pjwv
Yz4KKzxjPjE3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTImbmJzcDsxNyZuYnNwOzI5
Jm5ic3A7NTQmbmJzcDs3MSZuYnNwOyZuYnNwOzgxJm5ic3A7Jm5ic3A7OTQmbmJzcDsxMDQmbmJz
cDsxMjYmbmJzcDsxMzYmbmJzcDsxNDkmbmJzcDsxNjQmbmJzcDsxODImbmJzcDsyMDEmbmJzcDsy
MjEmbmJzcDsyMzc8L3NwYW54PjwvYz4KKzxjPjE4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+MTUmbmJzcDsyOCZuYnNwOzQ3Jm5ic3A7NjImbmJzcDs3OSZuYnNwOyZuYnNwOzk3Jm5ic3A7
MTE1Jm5ic3A7MTI5Jm5ic3A7MTQyJm5ic3A7MTU1Jm5ic3A7MTY4Jm5ic3A7MTgwJm5ic3A7MTk0
Jm5ic3A7MjA4Jm5ic3A7MjIzJm5ic3A7MjM4PC9zcGFueD48L2M+Cis8Yz4xOTwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzgmbmJzcDsxNCZuYnNwOzMwJm5ic3A7NDUmbmJzcDs2
MiZuYnNwOyZuYnNwOzc4Jm5ic3A7Jm5ic3A7OTQmbmJzcDsxMTEmbmJzcDsxMjcmbmJzcDsxNDMm
bmJzcDsxNTkmbmJzcDsxNzUmbmJzcDsxOTImbmJzcDsyMDcmbmJzcDsyMjMmbmJzcDsyMzk8L3Nw
YW54PjwvYz4KKzxjPjIwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTcmbmJzcDszMCZu
YnNwOzQ5Jm5ic3A7NjImbmJzcDs3OSZuYnNwOyZuYnNwOzkyJm5ic3A7MTA3Jm5ic3A7MTE5Jm5i
c3A7MTMyJm5ic3A7MTQ1Jm5ic3A7MTYwJm5ic3A7MTc0Jm5ic3A7MTkwJm5ic3A7MjA0Jm5ic3A7
MjIwJm5ic3A7MjM1PC9zcGFueD48L2M+Cis8Yz4yMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPjE0Jm5ic3A7MTkmbmJzcDszNiZuYnNwOzQ1Jm5ic3A7NjEmbmJzcDsmbmJzcDs3NiZuYnNw
OyZuYnNwOzkxJm5ic3A7MTA4Jm5ic3A7MTIxJm5ic3A7MTM4Jm5ic3A7MTU0Jm5ic3A7MTcyJm5i
c3A7MTg5Jm5ic3A7MjA1Jm5ic3A7MjIyJm5ic3A7MjM4PC9zcGFueD48L2M+Cis8Yz4yMjwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjEyJm5ic3A7MTgmbmJzcDszMSZuYnNwOzQ1Jm5ic3A7
NjAmbmJzcDsmbmJzcDs3NiZuYnNwOyZuYnNwOzkxJm5ic3A7MTA3Jm5ic3A7MTIzJm5ic3A7MTM4
Jm5ic3A7MTU0Jm5ic3A7MTcxJm5ic3A7MTg3Jm5ic3A7MjA0Jm5ic3A7MjIxJm5ic3A7MjM2PC9z
cGFueD48L2M+Cis8Yz4yMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjEzJm5ic3A7MTcm
bmJzcDszMSZuYnNwOzQzJm5ic3A7NTMmbmJzcDsmbmJzcDs3MCZuYnNwOyZuYnNwOzgzJm5ic3A7
MTAzJm5ic3A7MTE0Jm5ic3A7MTMxJm5ic3A7MTQ5Jm5ic3A7MTY3Jm5ic3A7MTg1Jm5ic3A7MjAz
Jm5ic3A7MjIwJm5ic3A7MjM3PC9zcGFueD48L2M+Cis8Yz4yNDwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPjE3Jm5ic3A7MjImbmJzcDszNSZuYnNwOzQyJm5ic3A7NTgmbmJzcDsmbmJzcDs3
OCZuYnNwOyZuYnNwOzkzJm5ic3A7MTEwJm5ic3A7MTI1Jm5ic3A7MTM5Jm5ic3A7MTU1Jm5ic3A7
MTcwJm5ic3A7MTg4Jm5ic3A7MjA2Jm5ic3A7MjI0Jm5ic3A7MjQwPC9zcGFueD48L2M+Cis8Yz4y
NTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzgmbmJzcDsxNSZuYnNwOzM0Jm5i
c3A7NTAmbmJzcDs2NyZuYnNwOyZuYnNwOzgzJm5ic3A7Jm5ic3A7OTkmbmJzcDsxMTUmbmJzcDsx
MzEmbmJzcDsxNDYmbmJzcDsxNjImbmJzcDsxNzgmbmJzcDsxOTMmbmJzcDsyMDkmbmJzcDsyMjQm
bmJzcDsyMzk8L3NwYW54PjwvYz4KKzxjPjI2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
MTMmbmJzcDsxNiZuYnNwOzQxJm5ic3A7NjYmbmJzcDs3MyZuYnNwOyZuYnNwOzg2Jm5ic3A7Jm5i
c3A7OTUmbmJzcDsxMTEmbmJzcDsxMjgmbmJzcDsxMzcmbmJzcDsxNTAmbmJzcDsxNjMmbmJzcDsx
ODMmbmJzcDsyMDYmbmJzcDsyMjUmbmJzcDsyNDE8L3NwYW54PjwvYz4KKzxjPjI3PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTcmbmJzcDsyNSZuYnNwOzM3Jm5ic3A7NTImbmJzcDs2MyZu
YnNwOyZuYnNwOzc1Jm5ic3A7Jm5ic3A7OTImbmJzcDsxMDImbmJzcDsxMTkmbmJzcDsxMzImbmJz
cDsxNDQmbmJzcDsxNjAmbmJzcDsxNzUmbmJzcDsxOTEmbmJzcDsyMTImbmJzcDsyMzE8L3NwYW54
PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTkmbmJzcDszMSZuYnNw
OzQ5Jm5ic3A7NjUmbmJzcDs4MyZuYnNwOzEwMCZuYnNwOzExNyZuYnNwOzEzMyZuYnNwOzE0NyZu
YnNwOzE2MSZuYnNwOzE3NCZuYnNwOzE4NyZuYnNwOzIwMCZuYnNwOzIxMyZuYnNwOzIyNyZuYnNw
OzI0Mjwvc3Bhbng+PC9jPgorPGM+Mjk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xOCZu
YnNwOzMxJm5ic3A7NTImbmJzcDs2OCZuYnNwOzg4Jm5ic3A7MTAzJm5ic3A7MTE3Jm5ic3A7MTI2
Jm5ic3A7MTM4Jm5ic3A7MTQ5Jm5ic3A7MTYzJm5ic3A7MTc3Jm5ic3A7MTkyJm5ic3A7MjA3Jm5i
c3A7MjIzJm5ic3A7MjM5PC9zcGFueD48L2M+Cis8Yz4zMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPjE2Jm5ic3A7MjkmbmJzcDs0NyZuYnNwOzYxJm5ic3A7NzYmbmJzcDsmbmJzcDs5MCZu
YnNwOzEwNiZuYnNwOzExOSZuYnNwOzEzMyZuYnNwOzE0NyZuYnNwOzE2MSZuYnNwOzE3NiZuYnNw
OzE5MyZuYnNwOzIwOSZuYnNwOzIyNCZuYnNwOzI0MDwvc3Bhbng+PC9jPgorPGM+MzE8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNSZuYnNwOzIxJm5ic3A7MzUmbmJzcDs1MCZuYnNwOzYx
Jm5ic3A7Jm5ic3A7NzMmbmJzcDsmbmJzcDs4NiZuYnNwOyZuYnNwOzk3Jm5ic3A7MTEwJm5ic3A7
MTE5Jm5ic3A7MTI5Jm5ic3A7MTQxJm5ic3A7MTc1Jm5ic3A7MTk4Jm5ic3A7MjE4Jm5ic3A7MjM3
PC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitHaXZlbiB0aGUgc3RhZ2UtMSBjb2Rl
Ym9vayBlbnRyeSBjYjFfUThbXSwgdGhlIHN0YWdlLTIgcmVzaWR1YWwgcmVzX1ExMFtdLCBhbmQK
KyB0aGVpciBjb3JyZXNwb25kaW5nIHdlaWdodHMsIHdfUTlbXSwgdGhlIHJlY29uc3RydWN0ZWQg
bm9ybWFsaXplZCBMU0YKKyBjb2VmZmljaWVudHMgYXJlCis8ZmlndXJlIGFsaWduPSJjZW50ZXIi
PgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitOTFNGX1ExNVtrXSA9IGNsYW1w
KDAsCisgICAgICAgICAgICAgICAoY2IxX1E4W2tdPDw3KSArIChyZXNfUTEwW2tdPDwxNCkvd19R
OVtrXSwgMzI3NjcpICwKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdoZXJlIHRoZSBkaXZp
c2lvbiBpcyBpbnRlZ2VyIGRpdmlzaW9uLgorSG93ZXZlciwgbm90aGluZyBpbiBlaXRoZXIgdGhl
IHJlY29uc3RydWN0aW9uIHByb2Nlc3Mgb3IgdGhlCisgcXVhbnRpemF0aW9uIHByb2Nlc3MgaW4g
dGhlIGVuY29kZXIgdGh1cyBmYXIgZ3VhcmFudGVlcyB0aGF0IHRoZSBjb2VmZmljaWVudHMKKyBh
cmUgbW9ub3RvbmljYWxseSBpbmNyZWFzaW5nIGFuZCBzZXBhcmF0ZWQgd2VsbCBlbm91Z2ggdG8g
ZW5zdXJlIGEgc3RhYmxlCisgZmlsdGVyIDx4cmVmIHRhcmdldD0iS2FiYWw4NiIvPi4KK1doZW4g
dXNpbmcgdGhlIHJlZmVyZW5jZSBlbmNvZGVyLCByb3VnaGx5IDIlIG9mIGZyYW1lcyB2aW9sYXRl
IHRoaXMgY29uc3RyYWludC4KK1RoZSBuZXh0IHNlY3Rpb24gZGVzY3JpYmVzIGEgc3RhYmlsaXph
dGlvbiBwcm9jZWR1cmUgdXNlZCB0byBtYWtlIHRoZXNlCisgZ3VhcmFudGVlcy4KKzwvdD4KKwor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbmxzZl9zdGFiaWxpemF0aW9uIiB0
aXRsZT0iTm9ybWFsaXplZCBMU0YgU3RhYmlsaXphdGlvbiI+Cis8dD4KK1RoZSBub3JtYWxpemVk
IExTRiBzdGFiaWxpemF0aW9uIHByb2NlZHVyZSBpcyBpbXBsZW1lbnRlZCBpbgorIHNpbGtfTkxT
Rl9zdGFiaWxpemUoKSAoTkxTRl9zdGFiaWxpemUuYykuCitUaGlzIHByb2Nlc3MgZW5zdXJlcyB0
aGF0IGNvbnNlY3V0aXZlIHZhbHVlcyBvZiB0aGUgbm9ybWFsaXplZCBMU0YKKyBjb2VmZmljaWVu
dHMsIE5MU0ZfUTE1W10sIGFyZSBzcGFjZWQgc29tZSBtaW5pbXVtIGRpc3RhbmNlIGFwYXJ0Cisg
KHByZWRldGVybWluZWQgdG8gYmUgdGhlIDAuMDEgcGVyY2VudGlsZSBvZiBhIGxhcmdlIHRyYWlu
aW5nIHNldCkuCis8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9taW5fc3BhY2luZyIvPiBnaXZlcyB0
aGUgbWluaW11bSBzcGFjaW5ncyBmb3IgTkIgYW5kIE1CCisgYW5kIHRob3NlIGZvciBXQiwgd2hl
cmUgcm93IGsgaXMgdGhlIG1pbmltdW0gYWxsb3dlZCB2YWx1ZSBvZgorIE5MU0ZfUVtrXS1OTFNG
X1Fbay0xXS4KK0ZvciB0aGUgcHVycG9zZXMgb2YgY29tcHV0aW5nIHRoaXMgc3BhY2luZyBmb3Ig
dGhlIGZpcnN0IGFuZCBsYXN0IGNvZWZmaWNpZW50LAorIE5MU0ZfUTE1Wy0xXSBpcyB0YWtlbiB0
byBiZSAwLCBhbmQgTkxTRl9RMTVbZF9MUENdIGlzIHRha2VuIHRvIGJlIDMyNzY4LgorPC90Pgor
Cis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNmX21pbl9zcGFjaW5nIgorICAgICAgICAgICB0
aXRsZT0iTWluaW11bSBTcGFjaW5nIGZvciBOb3JtYWxpemVkIExTRiBDb2VmZmljaWVudHMiPgor
PHR0Y29sPkNvZWZmaWNpZW50PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPk5CIGFuZCBN
QjwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5XQjwvdHRjb2w+CisgPGM+MDwvYz4gPGM+
MjUwPC9jPiA8Yz4xMDA8L2M+CisgPGM+MTwvYz4gICA8Yz4zPC9jPiAgIDxjPjM8L2M+CisgPGM+
MjwvYz4gICA8Yz42PC9jPiAgPGM+NDA8L2M+CisgPGM+MzwvYz4gICA8Yz4zPC9jPiAgIDxjPjM8
L2M+CisgPGM+NDwvYz4gICA8Yz4zPC9jPiAgIDxjPjM8L2M+CisgPGM+NTwvYz4gICA8Yz4zPC9j
PiAgIDxjPjM8L2M+CisgPGM+NjwvYz4gICA8Yz40PC9jPiAgIDxjPjU8L2M+CisgPGM+NzwvYz4g
ICA8Yz4zPC9jPiAgPGM+MTQ8L2M+CisgPGM+ODwvYz4gICA8Yz4zPC9jPiAgPGM+MTQ8L2M+Cisg
PGM+OTwvYz4gICA8Yz4zPC9jPiAgPGM+MTA8L2M+Cis8Yz4xMDwvYz4gPGM+NDYxPC9jPiAgPGM+
MTE8L2M+Cis8Yz4xMTwvYz4gICAgICAgPGMvPiAgIDxjPjM8L2M+Cis8Yz4xMjwvYz4gICAgICAg
PGMvPiAgIDxjPjg8L2M+Cis8Yz4xMzwvYz4gICAgICAgPGMvPiAgIDxjPjk8L2M+Cis8Yz4xNDwv
Yz4gICAgICAgPGMvPiAgIDxjPjc8L2M+Cis8Yz4xNTwvYz4gICAgICAgPGMvPiAgIDxjPjM8L2M+
Cis8Yz4xNjwvYz4gICAgICAgPGMvPiA8Yz4zNDc8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitU
aGUgcHJvY2VkdXJlIHN0YXJ0cyBvZmYgYnkgdHJ5aW5nIHRvIG1ha2Ugc21hbGwgYWRqdXN0bWVu
dHMgd2hpY2ggYXR0ZW1wdCB0bworIG1pbmltaXplIHRoZSBhbW91bnQgb2YgZGlzdG9ydGlvbiBp
bnRyb2R1Y2VkLgorQWZ0ZXIgMjAgc3VjaCBhZGp1c3RtZW50cywgaXQgZmFsbHMgYmFjayB0byBh
IG1vcmUgZGlyZWN0IG1ldGhvZCB3aGljaAorIGd1YXJhbnRlZXMgdGhlIGNvbnN0cmFpbnRzIGFy
ZSBlbmZvcmNlZCBidXQgbWF5IHJlcXVpcmUgbGFyZ2UgYWRqdXN0bWVudHMuCis8L3Q+Cis8dD4K
K0xldCBORGVsdGFNaW5fUTE1W2tdIGJlIHRoZSBtaW5pbXVtIHJlcXVpcmVkIHNwYWNpbmcgZm9y
IHRoZSBjdXJyZW50IGF1ZGlvCisgYmFuZHdpZHRoIGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxrX25s
c2ZfbWluX3NwYWNpbmciLz4uCitGaXJzdCwgdGhlIHByb2NlZHVyZSBmaW5kcyB0aGUgaW5kZXgg
aSB3aGVyZQorIE5MU0ZfUTE1W2ldJm5ic3A7LSZuYnNwO05MU0ZfUTE1W2ktMV0mbmJzcDstJm5i
c3A7TkRlbHRhTWluX1ExNVtpXSBpcyB0aGUKKyBzbWFsbGVzdCwgYnJlYWtpbmcgdGllcyBieSB1
c2luZyB0aGUgbG93ZXIgdmFsdWUgb2YgaS4KK0lmIHRoaXMgdmFsdWUgaXMgbm9uLW5lZ2F0aXZl
LCB0aGVuIHRoZSBzdGFiaWxpemF0aW9uIHN0b3BzOyB0aGUgY29lZmZpY2llbnRzCisgc2F0aXNm
eSBhbGwgdGhlIGNvbnN0cmFpbnRzLgorT3RoZXJ3aXNlLCBpZiBpJm5ic3A7PT0mbmJzcDswLCBp
dCBzZXRzIE5MU0ZfUTE1WzBdIHRvIE5EZWx0YU1pbl9RMTVbMF0sIGFuZCBpZgorIGkmbmJzcDs9
PSZuYnNwO2RfTFBDLCBpdCBzZXRzIE5MU0ZfUTE1W2RfTFBDLTFdIHRvCisgKDMyNzY4Jm5ic3A7
LSZuYnNwO05EZWx0YU1pbl9RMTVbZF9MUENdKS4KK0ZvciBhbGwgb3RoZXIgdmFsdWVzIG9mIGks
IGJvdGggTkxTRl9RMTVbaS0xXSBhbmQgTkxTRl9RMTVbaV0gYXJlIHVwZGF0ZWQgYXMKKyBmb2xs
b3dzOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaS0xCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfXworIG1pbl9jZW50ZXJf
UTE1ID0gKE5EZWx0YU1pbl9RMTVbaV0+PjEpICsgXCAgTkRlbHRhTWluX1ExNVtrXQorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL18KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGs9MAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGRfTFBDCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIF9fCisgbWF4X2NlbnRlcl9RMTUgPSAzMjc2OCAtIChORGVs
dGFNaW5fUTE1W2ldPj4xKSAtIFwgIE5EZWx0YU1pbl9RMTVba10KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL18KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrPWkrMQorY2VudGVyX2ZyZXFfUTE1ID0gY2xh
bXAobWluX2NlbnRlcl9RMTVbaV0sCisgICAgICAgICAgICAgICAgICAgICAgICAoTkxTRl9RMTVb
aS0xXSArIE5MU0ZfUTE1W2ldICsgMSk+PjEsCisgICAgICAgICAgICAgICAgICAgICAgICBtYXhf
Y2VudGVyX1ExNVtpXSkKKworIE5MU0ZfUTE1W2ktMV0gPSBjZW50ZXJfZnJlcV9RMTUgLSAoTkRl
bHRhTWluX1ExNVtpXT4+MSkKKworICAgTkxTRl9RMTVbaV0gPSBOTFNGX1ExNVtpLTFdICsgTkRl
bHRhTWluX1ExNVtpXSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZW4gdGhlIHByb2Nl
ZHVyZSByZXBlYXRzIGFnYWluLCB1bnRpbCBpdCBoYXMgZWl0aGVyIGV4ZWN1dGVkIDIwIHRpbWVz
IG9yCisgaGFzIHN0b3BwZWQgYmVjYXVzZSB0aGUgY29lZmZpY2llbnRzIHNhdGlzZnkgYWxsIHRo
ZSBjb25zdHJhaW50cy4KKzwvdD4KKzx0PgorQWZ0ZXIgdGhlIDIwdGggcmVwZXRpdGlvbiBvZiB0
aGUgYWJvdmUgcHJvY2VkdXJlLCB0aGUgZm9sbG93aW5nIGZhbGxiYWNrCisgcHJvY2VkdXJlIGV4
ZWN1dGVzIG9uY2UuCitGaXJzdCwgdGhlIHZhbHVlcyBvZiBOTFNGX1ExNVtrXSBmb3IgMCZuYnNw
OyZsdDs9Jm5ic3A7ayZuYnNwOyZsdDsmbmJzcDtkX0xQQworIGFyZSBzb3J0ZWQgaW4gYXNjZW5k
aW5nIG9yZGVyLgorVGhlbiBmb3IgZWFjaCB2YWx1ZSBvZiBrIGZyb20gMCB0byBkX0xQQy0xLCBO
TFNGX1ExNVtrXSBpcyBzZXQgdG8KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBh
bGlnbj0iY2VudGVyIj48IVtDREFUQVsKK21heChOTFNGX1ExNVtrXSwgTkxTRl9RMTVbay0xXSAr
IE5EZWx0YU1pbl9RMTVba10pIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorTmV4dCwgZm9y
IGVhY2ggdmFsdWUgb2YgayBmcm9tIGRfTFBDLTEgZG93biB0byAwLCBOTFNGX1ExNVtrXSBpcyBz
ZXQgdG8KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48
IVtDREFUQVsKK21pbihOTFNGX1ExNVtrXSwgTkxTRl9RMTVbaysxXSAtIE5EZWx0YU1pbl9RMTVb
aysxXSkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+CisKKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gYW5jaG9yPSJzaWxrX25sc2ZfaW50ZXJwb2xhdGlvbiIgdGl0bGU9Ik5vcm1hbGl6
ZWQgTFNGIEludGVycG9sYXRpb24iPgorPHQ+CitGb3IgMjAmbmJzcDttcyBTSUxLIGZyYW1lcywg
dGhlIGZpcnN0IGhhbGYgb2YgdGhlIGZyYW1lIChpLmUuLCB0aGUgZmlyc3QgdHdvCisgc3ViZnJh
bWVzKSBtYXkgdXNlIG5vcm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50cyB0aGF0IGFyZSBpbnRlcnBv
bGF0ZWQgYmV0d2VlbgorIHRoZSBkZWNvZGVkIExTRnMgZm9yIHRoZSBtb3N0IHJlY2VudCBjb2Rl
ZCBmcmFtZSAoaW4gdGhlIHNhbWUgY2hhbm5lbCkgYW5kIHRoZQorIGN1cnJlbnQgZnJhbWUuCitB
IFEyIGludGVycG9sYXRpb24gZmFjdG9yIGZvbGxvd3MgdGhlIExTRiBjb2VmZmljaWVudCBpbmRp
Y2VzIGluIHRoZSBiaXRzdHJlYW0sCisgd2hpY2ggaXMgZGVjb2RlZCB1c2luZyB0aGUgUERGIGlu
IDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX2ludGVycF9wZGYiLz4uCitUaGlzIGhhcHBlbnMgaW4g
c2lsa19kZWNvZGVfaW5kaWNlcygpIChkZWNvZGVfaW5kaWNlcy5jKS4KK0FmdGVyIGVpdGhlcgor
PGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+QW4gdW5jb2RlZCByZWd1bGFyIFNJTEsgZnJhbWUg
aW4gdGhlIHNpZGUgY2hhbm5lbCwgb3I8L3Q+Cis8dD5BIGRlY29kZXIgcmVzZXQgKHNlZSA8eHJl
ZiB0YXJnZXQ9ImRlY29kZXItcmVzZXQiLz4pLDwvdD4KKzwvbGlzdD4KKyB0aGUgZGVjb2RlciBz
dGlsbCBkZWNvZGVzIHRoaXMgZmFjdG9yLCBidXQgaWdub3JlcyBpdHMgdmFsdWUgYW5kIGFsd2F5
cyB1c2VzCisgNCBpbnN0ZWFkLgorRm9yIDEwJm5ic3A7bXMgU0lMSyBmcmFtZXMsIHRoaXMgZmFj
dG9yIGlzIG5vdCBzdG9yZWQgYXQgYWxsLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2ls
a19ubHNmX2ludGVycF9wZGYiCisgICAgICAgICAgIHRpdGxlPSJQREYgZm9yIE5vcm1hbGl6ZWQg
TFNGIEludGVycG9sYXRpb24gSW5kZXgiPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz57MTMsIDIy
LCAyOSwgMTEsIDE4MX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorTGV0IG4yX1ExNVtr
XSBiZSB0aGUgbm9ybWFsaXplZCBMU0YgY29lZmZpY2llbnRzIGRlY29kZWQgYnkgdGhlIHByb2Nl
ZHVyZSBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmcyIvPiwgbjBfUTE1W2tdIGJlIHRoZSBM
U0YgY29lZmZpY2llbnRzCisgZGVjb2RlZCBmb3IgdGhlIHByaW9yIGZyYW1lLCBhbmQgd19RMiBi
ZSB0aGUgaW50ZXJwb2xhdGlvbiBmYWN0b3IuCitUaGVuIHRoZSBub3JtYWxpemVkIExTRiBjb2Vm
ZmljaWVudHMgdXNlZCBmb3IgdGhlIGZpcnN0IGhhbGYgb2YgYSAyMCZuYnNwO21zCisgZnJhbWUs
IG4xX1ExNVtrXSwgYXJlCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCituMV9RMTVba10gPSBuMF9RMTVba10gKyAod19RMioobjJfUTE1
W2tdIC0gbjBfUTE1W2tdKSA+PiAyKSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoaXMg
aW50ZXJwb2xhdGlvbiBpcyBwZXJmb3JtZWQgaW4gc2lsa19kZWNvZGVfcGFyYW1ldGVycygpCisg
KGRlY29kZV9wYXJhbWV0ZXJzLmMpLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9InNpbGtfbmxzZjJscGMiCisgdGl0bGU9IkNvbnZlcnRpbmcgTm9ybWFsaXplZCBMU0ZzIHRv
IExQQyBDb2VmZmljaWVudHMiPgorPHQ+CitBbnkgTFBDIGZpbHRlciBBKHopIGNhbiBiZSBzcGxp
dCBpbnRvIGEgc3ltbWV0cmljIHBhcnQgUCh6KSBhbmQgYW4KKyBhbnRpLXN5bW1ldHJpYyBwYXJ0
IFEoeikgc3VjaCB0aGF0Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgZF9MUEMKKyAgICAgICAgICAgX18gICAgICAg
ICAtayAgIDEKK0EoeikgPSAxIC0gXCAgYVtrXSAqIHogICA9IC0gKiAoUCh6KSArIFEoeikpCisg
ICAgICAgICAgIC9fICAgICAgICAgICAgICAyCisgICAgICAgICAgIGs9MQorXV0+PC9hcnR3b3Jr
PgorPC9maWd1cmU+Cit3aXRoCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxp
Z249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAtZF9MUEMtMSAgICAgIC0xCitQ
KHopID0gQSh6KSArIHogICAgICAgICAqIEEoeiAgKQorCisgICAgICAgICAgICAgICAtZF9MUEMt
MSAgICAgIC0xCitRKHopID0gQSh6KSAtIHogICAgICAgICAqIEEoeiAgKSAuCitdXT48L2FydHdv
cms+Cis8L2ZpZ3VyZT4KK1RoZSBldmVuIG5vcm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50cyBjb3Jy
ZXNwb25kIHRvIGEgcGFpciBvZiBjb25qdWdhdGUgcm9vdHMgb2YKKyBQKHopLCB3aGlsZSB0aGUg
b2RkIGNvZWZmaWNpZW50cyBjb3JyZXNwb25kIHRvIGEgcGFpciBvZiBjb25qdWdhdGUgcm9vdHMg
b2YKKyBRKHopLCBhbGwgb2Ygd2hpY2ggbGllIG9uIHRoZSB1bml0IGNpcmNsZS4KK0luIGFkZGl0
aW9uLCBQKHopIGhhcyBhIHJvb3QgYXQgcGkgYW5kIFEoeikgaGFzIGEgcm9vdCBhdCAwLgorVGh1
cywgdGhleSBtYXkgYmUgcmVjb25zdHJ1Y3RlZCBtYXRoZW1hdGljYWxseSBmcm9tIGEgc2V0IG9m
IG5vcm1hbGl6ZWQgTFNGCisgY29lZmZpY2llbnRzLCBuW2tdLCBhcworPGZpZ3VyZSBhbGlnbj0i
Y2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAg
ICAgICBkX0xQQy8yLTEKKyAgICAgICAgICAgICAtMSAgICAgX19fICAgICAgICAgICAgICAgICAg
ICAgICAgLTEgICAgLTIKK1AoeikgPSAoMSArIHogICkgKiAgfCB8ICAoMSAtIDIqY29zKHBpKm5b
MiprXSkqeiAgKyB6ICApCisgICAgICAgICAgICAgICAgICAgIGs9MAorCisgICAgICAgICAgICAg
ICAgIGRfTFBDLzItMQorICAgICAgICAgICAgIC0xICAgICBfX18gICAgICAgICAgICAgICAgICAg
ICAgICAgIC0xICAgIC0yCitRKHopID0gKDEgLSB6ICApICogIHwgfCAgKDEgLSAyKmNvcyhwaSpu
WzIqaysxXSkqeiAgKyB6ICApCisgICAgICAgICAgICAgICAgICAgIGs9MAorXV0+PC9hcnR3b3Jr
PgorPC9maWd1cmU+Cis8L3Q+Cis8dD4KK0hvd2V2ZXIsIFNJTEsgcGVyZm9ybXMgdGhpcyByZWNv
bnN0cnVjdGlvbiB1c2luZyBhIGZpeGVkLXBvaW50IGFwcHJveGltYXRpb24gc28KKyB0aGF0IGFs
bCBkZWNvZGVycyBjYW4gcmVwcm9kdWNlIGl0IGluIGEgYml0LWV4YWN0IG1hbm5lciB0byBhdm9p
ZCBwcmVkaWN0aW9uCisgZHJpZnQuCitUaGUgZnVuY3Rpb24gc2lsa19OTFNGMkEoKSAoTkxTRjJB
LmMpIGltcGxlbWVudHMgdGhpcyBwcm9jZWR1cmUuCis8L3Q+Cis8dD4KK1RvIHN0YXJ0LCBpdCBh
cHByb3hpbWF0ZXMgY29zKHBpKm5ba10pIHVzaW5nIGEgdGFibGUgbG9va3VwIHdpdGggbGluZWFy
CisgaW50ZXJwb2xhdGlvbi4KK1RoZSBlbmNvZGVyIFNIT1VMRCB1c2UgdGhlIGludmVyc2Ugb2Yg
dGhpcyBwaWVjZXdpc2UgbGluZWFyIGFwcHJveGltYXRpb24sCisgcmF0aGVyIHRoYW4gdGhlIHRy
dWUgaW52ZXJzZSBvZiB0aGUgY29zaW5lIGZ1bmN0aW9uLCB3aGVuIGRlcml2aW5nIHRoZQorIG5v
cm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50cy4KK1RoZXNlIHZhbHVlcyBhcmUgYWxzbyByZS1vcmRl
cmVkIHRvIGltcHJvdmUgbnVtZXJpY2FsIGFjY3VyYWN5IHdoZW4KKyBjb25zdHJ1Y3RpbmcgdGhl
IExQQyBwb2x5bm9taWFscy4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl9v
cmRlcmluZ3MiCisgICAgICAgICAgIHRpdGxlPSJMU0YgT3JkZXJpbmcgZm9yIFBvbHlub21pYWwg
RXZhbHVhdGlvbiI+Cis8dHRjb2w+Q29lZmZpY2llbnQ8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJy
aWdodCI+TkIgYW5kIE1CPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPldCPC90dGNvbD4K
KyA8Yz4wPC9jPiAgPGM+MDwvYz4gIDxjPjA8L2M+CisgPGM+MTwvYz4gIDxjPjk8L2M+IDxjPjE1
PC9jPgorIDxjPjI8L2M+ICA8Yz42PC9jPiAgPGM+ODwvYz4KKyA8Yz4zPC9jPiAgPGM+MzwvYz4g
IDxjPjc8L2M+CisgPGM+NDwvYz4gIDxjPjQ8L2M+ICA8Yz40PC9jPgorIDxjPjU8L2M+ICA8Yz41
PC9jPiA8Yz4xMTwvYz4KKyA8Yz42PC9jPiAgPGM+ODwvYz4gPGM+MTI8L2M+CisgPGM+NzwvYz4g
IDxjPjE8L2M+ICA8Yz4zPC9jPgorIDxjPjg8L2M+ICA8Yz4yPC9jPiAgPGM+MjwvYz4KKyA8Yz45
PC9jPiAgPGM+NzwvYz4gPGM+MTM8L2M+Cis8Yz4xMDwvYz4gICAgICA8Yy8+IDxjPjEwPC9jPgor
PGM+MTE8L2M+ICAgICAgPGMvPiAgPGM+NTwvYz4KKzxjPjEyPC9jPiAgICAgIDxjLz4gIDxjPjY8
L2M+Cis8Yz4xMzwvYz4gICAgICA8Yy8+ICA8Yz45PC9jPgorPGM+MTQ8L2M+ICAgICAgPGMvPiA8
Yz4xNDwvYz4KKzxjPjE1PC9jPiAgICAgIDxjLz4gIDxjPjE8L2M+Cis8L3RleHR0YWJsZT4KKwor
PHQ+CitUaGUgdG9wIDcgYml0cyBvZiBlYWNoIG5vcm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50IGlu
ZGV4IGEgdmFsdWUgaW4gdGhlIHRhYmxlLAorIGFuZCB0aGUgbmV4dCA4IGJpdHMgaW50ZXJwb2xh
dGUgYmV0d2VlbiBpdCBhbmQgdGhlIG5leHQgdmFsdWUuCitMZXQgaSZuYnNwOz0mbmJzcDsobltr
XSZuYnNwOyZndDsmZ3Q7Jm5ic3A7OCkgYmUgdGhlIGludGVnZXIgaW5kZXggYW5kCisgZiZuYnNw
Oz0mbmJzcDsobltrXSZuYnNwOyZhbXA7Jm5ic3A7MjU1KSBiZSB0aGUgZnJhY3Rpb25hbCBwYXJ0
IG9mIGEgZ2l2ZW4KKyBjb2VmZmljaWVudC4KK1RoZW4gdGhlIHJlLW9yZGVyZWQsIGFwcHJveGlt
YXRlZCBjb3NpbmUsIGNfUTE3W29yZGVyaW5nW2tdXSwgaXMKKzxmaWd1cmUgYWxpZ249ImNlbnRl
ciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2NfUTE3W29yZGVyaW5nW2td
XSA9IChjb3NfUTEyW2ldKjI1NgorICAgICAgICAgICAgICAgICAgICAgICsgKGNvc19RMTJbaSsx
XS1jb3NfUTEyW2ldKSpmICsgNCkgPj4gMyAsCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyB3
aGVyZSBvcmRlcmluZ1trXSBpcyB0aGUgayd0aCBlbnRyeSBvZiB0aGUgY29sdW1uIG9mCisgPHhy
ZWYgdGFyZ2V0PSJzaWxrX25sc2Zfb3JkZXJpbmdzIi8+IGNvcnJlc3BvbmRpbmcgdG8gdGhlIGN1
cnJlbnQgYXVkaW8KKyBiYW5kd2lkdGggYW5kIGNvc19RMTJbaV0gaXMgdGhlIGkndGggZW50cnkg
b2YgPHhyZWYgdGFyZ2V0PSJzaWxrX2Nvc190YWJsZSIvPi4KKzwvdD4KKworPHRleHR0YWJsZSBh
bmNob3I9InNpbGtfY29zX3RhYmxlIgorICAgICAgICAgICB0aXRsZT0iUTEyIENvc2luZSBUYWJs
ZSBmb3IgTFNGIENvbnZlcnNpb24iPgorPHR0Y29sIGFsaWduPSJyaWdodCI+aTwvdHRjb2w+Cis8
dHRjb2wgYWxpZ249InJpZ2h0Ij4rMDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4rMTwv
dHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4rMjwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJp
Z2h0Ij4rMzwvdHRjb2w+Cis8Yz4wPC9jPgorIDxjPjQwOTY8L2M+IDxjPjQwOTU8L2M+IDxjPjQw
OTE8L2M+IDxjPjQwODU8L2M+Cis8Yz40PC9jPgorIDxjPjQwNzY8L2M+IDxjPjQwNjU8L2M+IDxj
PjQwNTI8L2M+IDxjPjQwMzY8L2M+Cis8Yz44PC9jPgorIDxjPjQwMTc8L2M+IDxjPjM5OTc8L2M+
IDxjPjM5NzM8L2M+IDxjPjM5NDg8L2M+Cis8Yz4xMjwvYz4KKyA8Yz4zOTIwPC9jPiA8Yz4zODg5
PC9jPiA8Yz4zODU3PC9jPiA8Yz4zODIyPC9jPgorPGM+MTY8L2M+CisgPGM+Mzc4NDwvYz4gPGM+
Mzc0NTwvYz4gPGM+MzcwMzwvYz4gPGM+MzY1OTwvYz4KKzxjPjIwPC9jPgorIDxjPjM2MTM8L2M+
IDxjPjM1NjQ8L2M+IDxjPjM1MTM8L2M+IDxjPjM0NjE8L2M+Cis8Yz4yNDwvYz4KKyA8Yz4zNDA2
PC9jPiA8Yz4zMzQ5PC9jPiA8Yz4zMjkwPC9jPiA8Yz4zMjI5PC9jPgorPGM+Mjg8L2M+CisgPGM+
MzE2NjwvYz4gPGM+MzEwMjwvYz4gPGM+MzAzNTwvYz4gPGM+Mjk2NzwvYz4KKzxjPjMyPC9jPgor
IDxjPjI4OTY8L2M+IDxjPjI4MjQ8L2M+IDxjPjI3NTE8L2M+IDxjPjI2NzY8L2M+Cis8Yz4zNjwv
Yz4KKyA8Yz4yNTk5PC9jPiA8Yz4yNTIwPC9jPiA8Yz4yNDQwPC9jPiA8Yz4yMzU5PC9jPgorPGM+
NDA8L2M+CisgPGM+MjI3NjwvYz4gPGM+MjE5MTwvYz4gPGM+MjEwNjwvYz4gPGM+MjAxOTwvYz4K
KzxjPjQ0PC9jPgorIDxjPjE5MzE8L2M+IDxjPjE4NDI8L2M+IDxjPjE3NTE8L2M+IDxjPjE2NjA8
L2M+Cis8Yz40ODwvYz4KKyA8Yz4xNTY4PC9jPiA8Yz4xNDc0PC9jPiA8Yz4xMzgwPC9jPiA8Yz4x
Mjg1PC9jPgorPGM+NTI8L2M+CisgPGM+MTE4OTwvYz4gPGM+MTA5MzwvYz4gIDxjPjk5NTwvYz4g
IDxjPjg5NzwvYz4KKzxjPjU2PC9jPgorICA8Yz43OTk8L2M+ICA8Yz43MDA8L2M+ICA8Yz42MDE8
L2M+ICA8Yz41MDE8L2M+Cis8Yz42MDwvYz4KKyAgPGM+NDAxPC9jPiAgPGM+MzAxPC9jPiAgPGM+
MjAxPC9jPiAgPGM+MTAxPC9jPgorPGM+NjQ8L2M+CisgICAgPGM+MDwvYz4gPGM+LTEwMTwvYz4g
PGM+LTIwMTwvYz4gPGM+LTMwMTwvYz4KKzxjPjY4PC9jPgorIDxjPi00MDE8L2M+IDxjPi01MDE8
L2M+IDxjPi02MDE8L2M+IDxjPi03MDA8L2M+Cis8Yz43MjwvYz4KKyA8Yz4tNzk5PC9jPiA8Yz4t
ODk3PC9jPiA8Yz4tOTk1PC9jPiA8Yz4tMTA5MzwvYz4KKzxjPjc2PC9jPgorPGM+LTExODk8L2M+
PGM+LTEyODU8L2M+PGM+LTEzODA8L2M+PGM+LTE0NzQ8L2M+Cis8Yz44MDwvYz4KKzxjPi0xNTY4
PC9jPjxjPi0xNjYwPC9jPjxjPi0xNzUxPC9jPjxjPi0xODQyPC9jPgorPGM+ODQ8L2M+Cis8Yz4t
MTkzMTwvYz48Yz4tMjAxOTwvYz48Yz4tMjEwNjwvYz48Yz4tMjE5MTwvYz4KKzxjPjg4PC9jPgor
PGM+LTIyNzY8L2M+PGM+LTIzNTk8L2M+PGM+LTI0NDA8L2M+PGM+LTI1MjA8L2M+Cis8Yz45Mjwv
Yz4KKzxjPi0yNTk5PC9jPjxjPi0yNjc2PC9jPjxjPi0yNzUxPC9jPjxjPi0yODI0PC9jPgorPGM+
OTY8L2M+Cis8Yz4tMjg5NjwvYz48Yz4tMjk2NzwvYz48Yz4tMzAzNTwvYz48Yz4tMzEwMjwvYz4K
KzxjPjEwMDwvYz4KKzxjPi0zMTY2PC9jPjxjPi0zMjI5PC9jPjxjPi0zMjkwPC9jPjxjPi0zMzQ5
PC9jPgorPGM+MTA0PC9jPgorPGM+LTM0MDY8L2M+PGM+LTM0NjE8L2M+PGM+LTM1MTM8L2M+PGM+
LTM1NjQ8L2M+Cis8Yz4xMDg8L2M+Cis8Yz4tMzYxMzwvYz48Yz4tMzY1OTwvYz48Yz4tMzcwMzwv
Yz48Yz4tMzc0NTwvYz4KKzxjPjExMjwvYz4KKzxjPi0zNzg0PC9jPjxjPi0zODIyPC9jPjxjPi0z
ODU3PC9jPjxjPi0zODg5PC9jPgorPGM+MTE2PC9jPgorPGM+LTM5MjA8L2M+PGM+LTM5NDg8L2M+
PGM+LTM5NzM8L2M+PGM+LTM5OTc8L2M+Cis8Yz4xMjA8L2M+Cis8Yz4tNDAxNzwvYz48Yz4tNDAz
NjwvYz48Yz4tNDA1MjwvYz48Yz4tNDA2NTwvYz4KKzxjPjEyNDwvYz4KKzxjPi00MDc2PC9jPjxj
Pi00MDg1PC9jPjxjPi00MDkxPC9jPjxjPi00MDk1PC9jPgorPGM+MTI4PC9jPgorPGM+LTQwOTY8
L2M+ICAgICAgICA8Yy8+ICAgICAgICA8Yy8+ICAgICAgICA8Yy8+Cis8L3RleHR0YWJsZT4KKwor
PHQ+CitHaXZlbiB0aGUgbGlzdCBvZiBjb3NpbmUgdmFsdWVzLCBzaWxrX05MU0YyQV9maW5kX3Bv
bHkoKSAoTkxTRjJBLmMpCisgY29tcHV0ZXMgdGhlIGNvZWZmaWNpZW50cyBvZiBQIGFuZCBRLCBk
ZXNjcmliZWQgaGVyZSB2aWEgYSBzaW1wbGUgcmVjdXJyZW5jZS4KK0xldCBwX1ExNltrXVtqXSBh
bmQgcV9RMTZba11bal0gYmUgdGhlIGNvZWZmaWNpZW50cyBvZiB0aGUgcHJvZHVjdHMgb2YgdGhl
CisgZmlyc3QgKGsrMSkgcm9vdCBwYWlycyBmb3IgUCBhbmQgUSwgd2l0aCBqIGluZGV4aW5nIHRo
ZSBjb2VmZmljaWVudCBudW1iZXIuCitPbmx5IHRoZSBmaXJzdCAoaysyKSBjb2VmZmljaWVudHMg
YXJlIG5lZWRlZCwgYXMgdGhlIHByb2R1Y3RzIGFyZSBzeW1tZXRyaWMuCitMZXQgcF9RMTZbMF1b
MF0mbmJzcDs9Jm5ic3A7cV9RMTZbMF1bMF0mbmJzcDs9Jm5ic3A7MSZsdDsmbHQ7MTYsCisgcF9R
MTZbMF1bMV0mbmJzcDs9Jm5ic3A7LWNfUTE3WzBdLCBxX1ExNlswXVsxXSZuYnNwOz0mbmJzcDst
Y19RMTdbMV0sIGFuZAorIGQyJm5ic3A7PSZuYnNwO2RfTFBDLzIuCitBcyBib3VuZGFyeSBjb25k
aXRpb25zLCBhc3N1bWUKKyBwX1ExNltrXVtqXSZuYnNwOz0mbmJzcDtxX1ExNltrXVtqXSZuYnNw
Oz0mbmJzcDswIGZvciBhbGwKKyBqJm5ic3A7Jmx0OyZuYnNwOzAuCitBbHNvLCBhc3N1bWUgcF9R
MTZba11baysyXSZuYnNwOz0mbmJzcDtwX1ExNltrXVtrXSBhbmQKKyBxX1ExNltrXVtrKzJdJm5i
c3A7PSZuYnNwO3FfUTE2W2tdW2tdIChiZWNhdXNlIG9mIHRoZSBzeW1tZXRyeSkuCitUaGVuLCBm
b3IgMCZuYnNwOyZsdDsmbmJzcDtrJm5ic3A7Jmx0OyZuYnNwO2QyIGFuZCAwJm5ic3A7Jmx0Oz0m
bmJzcDtqJm5ic3A7Jmx0Oz0mbmJzcDtrKzEsCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFy
dHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitwX1ExNltrXVtqXSA9IHBfUTE2W2stMV1b
al0gKyBwX1ExNltrLTFdW2otMl0KKyAgICAgICAgICAgICAgLSAoKGNfUTE3WzIqa10qcF9RMTZb
ay0xXVtqLTFdICsgMzI3NjgpPj4xNikgLAorCitxX1ExNltrXVtqXSA9IHFfUTE2W2stMV1bal0g
KyBxX1ExNltrLTFdW2otMl0KKyAgICAgICAgICAgICAgLSAoKGNfUTE3WzIqaysxXSpxX1ExNltr
LTFdW2otMV0gKyAzMjc2OCk+PjE2KSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSB1
c2Ugb2YgUTE3IHZhbHVlcyBmb3IgdGhlIGNvc2luZSB0ZXJtcyBpbiBhbiBvdGhlcndpc2UgUTE2
IGV4cHJlc3Npb24KKyBpbXBsaWNpdGx5IHNjYWxlcyB0aGVtIGJ5IGEgZmFjdG9yIG9mIDIuCitU
aGUgbXVsdGlwbGljYXRpb25zIGluIHRoaXMgcmVjdXJyZW5jZSBtYXkgcmVxdWlyZSB1cCB0byA0
OCBiaXRzIG9mIHByZWNpc2lvbgorIGluIHRoZSByZXN1bHQgdG8gYXZvaWQgb3ZlcmZsb3cuCitJ
biBwcmFjdGljZSwgZWFjaCByb3cgb2YgdGhlIHJlY3VycmVuY2Ugb25seSBkZXBlbmRzIG9uIHRo
ZSBwcmV2aW91cyByb3csIHNvIGFuCisgaW1wbGVtZW50YXRpb24gZG9lcyBub3QgbmVlZCB0byBz
dG9yZSBhbGwgb2YgdGhlbS4KKzwvdD4KKzx0Pgorc2lsa19OTFNGMkEoKSB1c2VzIHRoZSB2YWx1
ZXMgZnJvbSB0aGUgbGFzdCByb3cgb2YgdGhpcyByZWN1cnJlbmNlIHRvCisgcmVjb25zdHJ1Y3Qg
YSAzMi1iaXQgdmVyc2lvbiBvZiB0aGUgTFBDIGZpbHRlciAod2l0aG91dCB0aGUgbGVhZGluZyAx
LjAKKyBjb2VmZmljaWVudCksIGEzMl9RMTdba10sIDAmbmJzcDsmbHQ7PSZuYnNwO2smbmJzcDsm
bHQ7Jm5ic3A7ZDI6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNl
bnRlciI+PCFbQ0RBVEFbCithMzJfUTE3W2tdICAgICAgICAgPSAtKHFfUTE2W2QyLTFdW2srMV0g
LSBxX1ExNltkMi0xXVtrXSkKKyAgICAgICAgICAgICAgICAgICAgIC0gKHBfUTE2W2QyLTFdW2sr
MV0gKyBwX1ExNltkMi0xXVtrXSkpICwKKworYTMyX1ExN1tkX0xQQy1rLTFdID0gIChxX1ExNltk
Mi0xXVtrKzFdIC0gcV9RMTZbZDItMV1ba10pCisgICAgICAgICAgICAgICAgICAgICAtIChwX1Ex
NltkMi0xXVtrKzFdICsgcF9RMTZbZDItMV1ba10pKSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KK1RoZSBzdW0gYW5kIGRpZmZlcmVuY2Ugb2YgdHdvIHRlcm1zIGZyb20gZWFjaCBvZiB0aGUg
cF9RMTYgYW5kIHFfUTE2CisgY29lZmZpY2llbnQgbGlzdHMgcmVmbGVjdCB0aGUgKDEmbmJzcDsr
Jm5ic3A7eioqLTEpIGFuZAorICgxJm5ic3A7LSZuYnNwO3oqKi0xKSBmYWN0b3JzIG9mIFAgYW5k
IFEsIHJlc3BlY3RpdmVseS4KK1RoZSBwcm9tb3Rpb24gb2YgdGhlIGV4cHJlc3Npb24gZnJvbSBR
MTYgdG8gUTE3IGltcGxpY2l0bHkgc2NhbGVzIHRoZSByZXN1bHQKKyBieSAxLzIuCis8L3Q+Cis8
L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19scGNfcmFuZ2VfbGltaXQiCisgdGl0
bGU9IkxpbWl0aW5nIHRoZSBSYW5nZSBvZiB0aGUgTFBDIENvZWZmaWNpZW50cyI+Cis8dD4KK1Ro
ZSBhMzJfUTE3W10gY29lZmZpY2llbnRzIGFyZSB0b28gbGFyZ2UgdG8gZml0IGluIGEgMTYtYml0
IHZhbHVlLCB3aGljaAorIHNpZ25pZmljYW50bHkgaW5jcmVhc2VzIHRoZSBjb3N0IG9mIGFwcGx5
aW5nIHRoaXMgZmlsdGVyIGluIGZpeGVkLXBvaW50CisgZGVjb2RlcnMuCitSZWR1Y2luZyB0aGVt
IHRvIFExMiBwcmVjaXNpb24gZG9lc24ndCBpbmN1ciBhbnkgc2lnbmlmaWNhbnQgcXVhbGl0eSBs
b3NzLAorIGJ1dCBzdGlsbCBkb2VzIG5vdCBndWFyYW50ZWUgdGhleSB3aWxsIGZpdC4KK3NpbGtf
TkxTRjJBKCkgYXBwbGllcyB1cCB0byAxMCByb3VuZHMgb2YgYmFuZHdpZHRoIGV4cGFuc2lvbiB0
byBsaW1pdAorIHRoZSBkeW5hbWljIHJhbmdlIG9mIHRoZXNlIGNvZWZmaWNpZW50cy4KK0V2ZW4g
ZmxvYXRpbmctcG9pbnQgZGVjb2RlcnMgU0hPVUxEIHBlcmZvcm0gdGhlc2Ugc3RlcHMsIHRvIGF2
b2lkIG1pc21hdGNoLgorPC90PgorPHQ+CitGb3IgZWFjaCByb3VuZCwgdGhlIHByb2Nlc3MgZmly
c3QgZmluZHMgdGhlIGluZGV4IGsgc3VjaCB0aGF0IGFicyhhMzJfUTE3W2tdKQorIGlzIGxhcmdl
c3QsIGJyZWFraW5nIHRpZXMgYnkgY2hvb3NpbmcgdGhlIGxvd2VzdCB2YWx1ZSBvZiBrLgorVGhl
biwgaXQgY29tcHV0ZXMgdGhlIGNvcnJlc3BvbmRpbmcgUTEyIHByZWNpc2lvbiB2YWx1ZSwgbWF4
YWJzX1ExMiwgc3ViamVjdCB0bworIGFuIHVwcGVyIGJvdW5kIHRvIGF2b2lkIG92ZXJmbG93IGlu
IHN1YnNlcXVlbnQgY29tcHV0YXRpb25zOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworbWF4YWJzX1ExMiA9IG1pbigobWF4YWJzX1Ex
NyArIDE2KSA+PiA1LCAxNjM4MzgpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorSWYgdGhp
cyBpcyBsYXJnZXIgdGhhbiAzMjc2NywgdGhlIHByb2NlZHVyZSBkZXJpdmVzIHRoZSBjaGlycCBm
YWN0b3IsCisgc2NfUTE2WzBdLCB0byB1c2UgaW4gdGhlIGJhbmR3aWR0aCBleHBhbnNpb24gYXMK
KzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKKyAgICAgICAgICAgICAgICAgICAgKG1heGFic19RMTIgLSAzMjc2NykgPDwgMTQKK3NjX1Ex
NlswXSA9IDY1NDcwIC0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLAorICAgICAgICAgICAg
ICAgICAgICAobWF4YWJzX1ExMiAqIChrKzEpKSA+PiAyCitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KKyB3aGVyZSB0aGUgZGl2aXNpb24gaGVyZSBpcyBpbnRlZ2VyIGRpdmlzaW9uLgorVGhpcyBp
cyBhbiBhcHByb3hpbWF0aW9uIG9mIHRoZSBjaGlycCBmYWN0b3IgbmVlZGVkIHRvIHJlZHVjZSB0
aGUgdGFyZ2V0CisgY29lZmZpY2llbnQgdG8gMzI3NjcsIHRob3VnaCBpdCBpcyBib3RoIGxlc3Mg
dGhhbiAwLjk5OSBhbmQsIGZvcgorIGsmbmJzcDsmZ3Q7Jm5ic3A7MCB3aGVuIG1heGFic19RMTIg
aXMgbXVjaCBncmVhdGVyIHRoYW4gMzI3NjcsIHN0aWxsIHNsaWdodGx5CisgdG9vIGxhcmdlLgor
VGhlIHVwcGVyIGJvdW5kIG9uIG1heGFic19RMTIsIDE2MzgzOCwgd2FzIGNob3NlbiBiZWNhdXNl
IGl0IGlzIGVxdWFsIHRvCisgKCgyKiozMSZuYnNwOy0mbmJzcDsxKSZuYnNwOyZndDsmZ3Q7Jm5i
c3A7MTQpJm5ic3A7KyZuYnNwOzMyNzY3LCBpLmUuLCB0aGUKKyBsYXJnZXN0IHZhbHVlIG9mIG1h
eGFic19RMTIgdGhhdCB3b3VsZCBub3Qgb3ZlcmZsb3cgdGhlIG51bWVyYXRvciBpbiB0aGUKKyBl
cXVhdGlvbiBhYm92ZSB3aGVuIHN0b3JlZCBpbiBhIHNpZ25lZCAzMi1iaXQgaW50ZWdlci4KKzwv
dD4KKzx0Pgorc2lsa19id2V4cGFuZGVyXzMyKCkgKGJ3ZXhwYW5kZXJfMzIuYykgcGVyZm9ybXMg
dGhlIGJhbmR3aWR0aCBleHBhbnNpb24gKGFnYWluLAorIG9ubHkgd2hlbiBtYXhhYnNfUTEyIGlz
IGdyZWF0ZXIgdGhhbiAzMjc2NykgdXNpbmcgdGhlIGZvbGxvd2luZyByZWN1cnJlbmNlOgorPGZp
Z3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
IGEzMl9RMTdba10gPSAoYTMyX1ExN1trXSpzY19RMTZba10pID4+IDE2CisKK3NjX1ExNltrKzFd
ID0gKHNjX1ExNlswXSpzY19RMTZba10gKyAzMjc2OCkgPj4gMTYKK11dPjwvYXJ0d29yaz4KKzwv
ZmlndXJlPgorVGhlIGZpcnN0IG11bHRpcGx5IG1heSByZXF1aXJlIHVwIHRvIDQ4IGJpdHMgb2Yg
cHJlY2lzaW9uIGluIHRoZSByZXN1bHQgdG8KKyBhdm9pZCBvdmVyZmxvdy4KK1RoZSBzZWNvbmQg
bXVsdGlwbHkgbXVzdCBiZSB1bnNpZ25lZCB0byBhdm9pZCBvdmVyZmxvdyB3aXRoIG9ubHkgMzIg
Yml0cyBvZgorIHByZWNpc2lvbi4KK1RoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gdXNlcyBh
IHNsaWdodGx5IG1vcmUgY29tcGxleCBmb3JtdWxhdGlvbiB0aGF0CisgYXZvaWRzIHRoZSAzMi1i
aXQgb3ZlcmZsb3cgdXNpbmcgc2lnbmVkIG11bHRpcGxpY2F0aW9uLCBidXQgaXMgb3RoZXJ3aXNl
CisgZXF1aXZhbGVudC4KKzwvdD4KKzx0PgorQWZ0ZXIgMTAgcm91bmRzIG9mIGJhbmR3aWR0aCBl
eHBhbnNpb24gYXJlIHBlcmZvcm1lZCwgdGhleSBhcmUgc2ltcGx5IHNhdHVyYXRlZAorIHRvIDE2
IGJpdHM6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCithMzJfUTE3W2tdID0gY2xhbXAoLTMyNzY4LCAoYTMyX1ExN1trXSArIDE2KSA+
PiA1LCAzMjc2NykgPDwgNSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0JlY2F1c2UgdGhp
cyBwZXJmb3JtcyB0aGUgYWN0dWFsIHNhdHVyYXRpb24gaW4gdGhlIFExMiBkb21haW4sIGJ1dCBj
b252ZXJ0cyB0aGUKKyBjb2VmZmljaWVudHMgYmFjayB0byB0aGUgUTE3IGRvbWFpbiBmb3IgdGhl
IHB1cnBvc2VzIG9mIHByZWRpY3Rpb24gZ2FpbgorIGxpbWl0aW5nLCB0aGlzIHN0ZXAgbXVzdCBi
ZSBwZXJmb3JtZWQgYWZ0ZXIgdGhlIDEwdGggcm91bmQgb2YgYmFuZHdpZHRoCisgZXhwYW5zaW9u
LCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgb3Igbm90IHRoZSBRMTIgdmVyc2lvbiBvZiBhbnkgY29l
ZmZpY2llbnQKKyBzdGlsbCBvdmVyZmxvd3MgYSAxNi1iaXQgaW50ZWdlci4KK1RoaXMgc2F0dXJh
dGlvbiBpcyBub3QgcGVyZm9ybWVkIGlmIG1heGFic19RMTIgZHJvcHMgdG8gMzI3Njcgb3IgbGVz
cyBwcmlvciB0bworIHRoZSAxMHRoIHJvdW5kLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlv
biBhbmNob3I9InNpbGtfbHBjX2dhaW5fbGltaXQiCisgdGl0bGU9IkxpbWl0aW5nIHRoZSBQcmVk
aWN0aW9uIEdhaW4gb2YgdGhlIExQQyBGaWx0ZXIiPgorPHQ+CitUaGUgcHJlZGljdGlvbiBnYWlu
IG9mIGFuIExQQyBzeW50aGVzaXMgZmlsdGVyIGlzIHRoZSBzcXVhcmUtcm9vdCBvZiB0aGUgb3V0
cHV0CisgZW5lcmd5IHdoZW4gdGhlIGZpbHRlciBpcyBleGNpdGVkIGJ5IGEgdW5pdC1lbmVyZ3kg
aW1wdWxzZS4KK0V2ZW4gaWYgdGhlIFExMiBjb2VmZmljaWVudHMgd291bGQgZml0LCB0aGUgcmVz
dWx0aW5nIGZpbHRlciBtYXkgc3RpbGwgaGF2ZSBhCisgc2lnbmlmaWNhbnQgZ2FpbiAoZXNwZWNp
YWxseSBmb3Igdm9pY2VkIHNvdW5kcyksIG1ha2luZyB0aGUgZmlsdGVyIHVuc3RhYmxlLgorc2ls
a19OTFNGMkEoKSBhcHBsaWVzIHVwIHRvIDE4IGFkZGl0aW9uYWwgcm91bmRzIG9mIGJhbmR3aWR0
aCBleHBhbnNpb24gdG8KKyBsaW1pdCB0aGUgcHJlZGljdGlvbiBnYWluLgorSW5zdGVhZCBvZiBj
b250cm9sbGluZyB0aGUgYW1vdW50IG9mIGJhbmR3aWR0aCBleHBhbnNpb24gdXNpbmcgdGhlIHBy
ZWRpY3Rpb24KKyBnYWluIGl0c2VsZiAod2hpY2ggbWF5IGRpdmVyZ2UgdG8gaW5maW5pdHkgZm9y
IGFuIHVuc3RhYmxlIGZpbHRlciksCisgc2lsa19OTFNGMkEoKSB1c2VzIHNpbGtfTFBDX2ludmVy
c2VfcHJlZF9nYWluX1FBKCkgKExQQ19pbnZfcHJlZF9nYWluLmMpIHRvCisgY29tcHV0ZSB0aGUg
cmVmbGVjdGlvbiBjb2VmZmljaWVudHMgYXNzb2NpYXRlZCB3aXRoIHRoZSBmaWx0ZXIuCitUaGUg
ZmlsdGVyIGlzIHN0YWJsZSBpZiBhbmQgb25seSBpZiB0aGUgbWFnbml0dWRlIG9mIHRoZXNlIGNv
ZWZmaWNpZW50cyBpcworIHN1ZmZpY2llbnRseSBsZXNzIHRoYW4gb25lLgorVGhlIHJlZmxlY3Rp
b24gY29lZmZpY2llbnRzLCByY1trXSwgY2FuIGJlIGNvbXB1dGVkIHVzaW5nIGEgc2ltcGxlIExl
dmluc29uCisgcmVjdXJyZW5jZSwgaW5pdGlhbGl6ZWQgd2l0aCB0aGUgTFBDIGNvZWZmaWNpZW50
cworIGFbZF9MUEMtMV1bbl0mbmJzcDs9Jm5ic3A7YVtuXSwgYW5kIHRoZW4gdXBkYXRlZCB2aWEK
KzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKKyAgICByY1trXSA9IC1hW2tdW2tdICwKKworICAgICAgICAgICAgYVtrXVtuXSAtIGFba11b
ay1uLTFdKnJjW2tdCithW2stMV1bbl0gPSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyCisgICAgICAgICAgICAgICAgICAgIDEgLSBy
Y1trXQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8dD4KK0hvd2V2ZXIsIHNpbGtf
TFBDX2ludmVyc2VfcHJlZF9nYWluX1FBKCkgYXBwcm94aW1hdGVzIHRoaXMgdXNpbmcgZml4ZWQt
cG9pbnQKKyBhcml0aG1ldGljIHRvIGd1YXJhbnRlZSByZXByb2R1Y2libGUgcmVzdWx0cyBhY3Jv
c3MgcGxhdGZvcm1zIGFuZAorIGltcGxlbWVudGF0aW9ucy4KK1NpbmNlIHNtYWxsIGNoYW5nZXMg
aW4gdGhlIGNvZWZmaWNpZW50cyBjYW4gbWFrZSBhIHN0YWJsZSBmaWx0ZXIgdW5zdGFibGUsIGl0
CisgdGFrZXMgdGhlIHJlYWwgUTEyIGNvZWZmaWNpZW50cyB0aGF0IHdpbGwgYmUgdXNlZCBkdXJp
bmcgcmVjb25zdHJ1Y3Rpb24gYXMKKyBpbnB1dC4KK1RodXMsIGxldAorPGZpZ3VyZSBhbGlnbj0i
Y2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworYTMyX1ExMltuXSA9
IChhMzJfUTE3W25dICsgMTYpID4+IDUKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIGJlIHRo
ZSBRMTIgdmVyc2lvbiBvZiB0aGUgTFBDIGNvZWZmaWNpZW50cyB0aGF0IHdpbGwgZXZlbnR1YWxs
eSBiZSB1c2VkLgorQXMgYSBzaW1wbGUgaW5pdGlhbCBjaGVjaywgdGhlIGRlY29kZXIgY29tcHV0
ZXMgdGhlIERDIHJlc3BvbnNlIGFzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsg
YWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgIGRfUExDLTEKKyAgICAgICAgICBfXwor
RENfcmVzcCA9IFwgICBhMzJfUTEyW25dCisgICAgICAgICAgL18KKyAgICAgICAgICBuPTAKK11d
PjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIGFuZCBpZiBEQ19yZXNwJm5ic3A7Jmd0OyZuYnNwOzQw
OTYsIHRoZSBmaWx0ZXIgaXMgdW5zdGFibGUuCis8L3Q+Cis8dD4KK0luY3JlYXNpbmcgdGhlIHBy
ZWNpc2lvbiBvZiB0aGVzZSBRMTIgY29lZmZpY2llbnRzIHRvIFEyNCBmb3IgaW50ZXJtZWRpYXRl
CisgY29tcHV0YXRpb25zIGFsbG93cyBtb3JlIGFjY3VyYXRlIGNvbXB1dGF0aW9uIG9mIHRoZSBy
ZWZsZWN0aW9uIGNvZWZmaWNpZW50cywKKyBzbyB0aGUgZGVjb2RlciBpbml0aWFsaXplcyB0aGUg
cmVjdXJyZW5jZSB2aWEKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0i
Y2VudGVyIj48IVtDREFUQVsKK2EzMl9RMjRbZF9MUEMtMV1bbl0gPSBhMzJfUTEyW25dIDw8IDEy
IC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlbiBmb3IgZWFjaCBrIGZyb20gZF9MUEMt
MSBkb3duIHRvIDAsIGlmCisgYWJzKGEzMl9RMjRba11ba10pJm5ic3A7Jmd0OyZuYnNwOzE2Nzcz
MDIyLCB0aGUgZmlsdGVyIGlzIHVuc3RhYmxlIGFuZCB0aGUKKyByZWN1cnJlbmNlIHN0b3BzLgor
VGhlIGNvbnN0YW50IDE2NzczMDIyIGhlcmUgaXMgYXBwcm94aW1hdGVseSAwLjk5OTc1IGluIFEy
NC4KK090aGVyd2lzZSwgcm93IGstMSBvZiBhMzJfUTI0IGlzIGNvbXB1dGVkIGZyb20gcm93IGsg
YXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKKyAgICAgIHJjX1EzMVtrXSA9IC1hMzJfUTI0W2tdW2tdIDw8IDcgLAorCisgICAgIGRp
dl9RMzBba10gPSAoMTw8MzApIC0gKHJjX1EzMVtrXSpyY19RMzFba10gPj4gMzIpICwKKworICAg
ICAgICAgIGIxW2tdID0gaWxvZyhkaXZfUTMwW2tdKSAsCisKKyAgICAgICAgICBiMltrXSA9IGIx
W2tdIC0gMTYgLAorCisgICAgICAgICAgICAgICAgICAgICAgICAoMTw8MjkpIC0gMQorICAgICBp
bnZfUWIyW2tdID0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLAorICAgICAgICAgICAgICAgICAg
ZGl2X1EzMFtrXSA+PiAoYjJba10rMSkKKworICAgICBlcnJfUTI5W2tdID0gKDE8PDI5KQorICAg
ICAgICAgICAgICAgICAgLSAoKGRpdl9RMzBba108PCgxNS1iMltrXSkpKmludl9RYjJba10gPj4g
MTYpICwKKworICAgIGdhaW5fUWIxW2tdID0gKChpbnZfUWIyW2tdIDw8IDE2KQorICAgICAgICAg
ICAgICAgICAgICsgKGVycl9RMjlba10qaW52X1FiMltrXSA+PiAxMykpICwKKworbnVtX1EyNFtr
LTFdW25dID0gYTMyX1EyNFtrXVtuXQorICAgICAgICAgICAgICAgICAgLSAoKGEzMl9RMjRba11b
ay1uLTFdKnJjX1EzMVtrXSArICgxPDwzMCkpID4+IDMxKSAsCisKK2EzMl9RMjRbay0xXVtuXSA9
IChudW1fUTI0W2stMV1bbl0qZ2Fpbl9RYjFba10KKyAgICAgICAgICAgICAgICAgICArICgxPDwo
YjFba10tMSkpKSA+PiBiMVtrXSAsCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyB3aGVyZSAw
Jm5ic3A7Jmx0Oz0mbmJzcDtuJm5ic3A7Jmx0OyZuYnNwO2suCitIZXJlLCByY19RMzBba10gYXJl
IHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50cy4KK2Rpdl9RMzBba10gaXMgdGhlIGRlbm9taW5h
dG9yIGZvciBlYWNoIGl0ZXJhdGlvbiwgYW5kIGdhaW5fUWIxW2tdIGlzIGl0cworIG11bHRpcGxp
Y2F0aXZlIGludmVyc2UgKHdpdGggYjFba10gZnJhY3Rpb25hbCBiaXRzLCB3aGVyZSBiMVtrXSBy
YW5nZXMgZnJvbQorIDIwIHRvIDMxKS4KK2ludl9RYjJba10sIHdoaWNoIHJhbmdlcyBmcm9tIDE2
Mzg0IHRvIDMyNzY3LCBpcyBhIGxvdy1wcmVjaXNpb24gdmVyc2lvbiBvZgorIHRoYXQgaW52ZXJz
ZSAod2l0aCBiMltrXSBmcmFjdGlvbmFsIGJpdHMpLgorZXJyX1EyOVtrXSBpcyB0aGUgcmVzaWR1
YWwgZXJyb3IsIHJhbmdpbmcgZnJvbSAtMzI3NjMgdG8gMzIzOTIsIHdoaWNoIGlzIHVzZWQKKyB0
byBpbXByb3ZlIHRoZSBhY2N1cmFjeS4KK1RoZSB2YWx1ZXMgdF9RMjRbay0xXVtuXSBmb3IgZWFj
aCBuIGFyZSB0aGUgbnVtZXJhdG9ycyBmb3IgdGhlIG5leHQgcm93IG9mCisgY29lZmZpY2llbnRz
IGluIHRoZSByZWN1cnNpb24sIGFuZCBhMzJfUTI0W2stMV1bbl0gaXMgdGhlIGZpbmFsIHZlcnNp
b24gb2YKKyB0aGF0IHJvdy4KK0V2ZXJ5IG11bHRpcGx5IGluIHRoaXMgcHJvY2VkdXJlIGV4Y2Vw
dCB0aGUgb25lIHVzZWQgdG8gY29tcHV0ZSBnYWluX1FiMVtrXQorIHJlcXVpcmVzIG1vcmUgdGhh
biAzMiBiaXRzIG9mIHByZWNpc2lvbiwgYnV0IG90aGVyd2lzZSBhbGwgaW50ZXJtZWRpYXRlCisg
cmVzdWx0cyBmaXQgaW4gMzIgYml0cyBvciBsZXNzLgorSW4gcHJhY3RpY2UsIGJlY2F1c2UgZWFj
aCByb3cgb25seSBkZXBlbmRzIG9uIHRoZSBuZXh0IG9uZSwgYW4gaW1wbGVtZW50YXRpb24KKyBk
b2VzIG5vdCBuZWVkIHRvIHN0b3JlIHRoZW0gYWxsLgorPC90PgorPHQ+CitJZiBhYnMoYTMyX1Ey
NFtrXVtrXSkmbmJzcDsmbHQ7PSZuYnNwOzE2NzczMDIyIGZvcgorIDAmbmJzcDsmbHQ7PSZuYnNw
O2smbmJzcDsmbHQ7Jm5ic3A7ZF9MUEMsIHRoZW4gdGhlIGZpbHRlciBpcyBjb25zaWRlcmVkIHN0
YWJsZS4KK0hvd2V2ZXIsIHRoZSBwcm9ibGVtIG9mIGRldGVybWluaW5nIHN0YWJpbGl0eSBpcyBp
bGwtY29uZGl0aW9uZWQgd2hlbiB0aGUKKyBmaWx0ZXIgY29udGFpbnMgc2V2ZXJhbCByZWZsZWN0
aW9uIGNvZWZmaWNpZW50cyB3aG9zZSBtYWduaXR1ZGUgaXMgdmVyeSBjbG9zZQorIHRvIG9uZS4K
K1RoaXMgZml4ZWQtcG9pbnQgYWxnb3JpdGhtIGlzIG5vdCBtYXRoZW1hdGljYWxseSBndWFyYW50
ZWVkIHRvIGNvcnJlY3RseQorIGNsYXNzaWZ5IGZpbHRlcnMgYXMgc3RhYmxlIG9yIHVuc3RhYmxl
IGluIHRoaXMgY2FzZSwgdGhvdWdoIGl0IGRvZXMgdmVyeSB3ZWxsCisgaW4gcHJhY3RpY2UuCis8
L3Q+Cis8dD4KK09uIHJvdW5kIGksIDEmbmJzcDsmbHQ7PSZuYnNwO2kmbmJzcDsmbHQ7PSZuYnNw
OzE4LCBpZiB0aGUgZmlsdGVyIHBhc3NlcyB0aGVzZQorIHN0YWJpbGl0eSBjaGVja3MsIHRoZW4g
dGhpcyBwcm9jZWR1cmUgc3RvcHMsIGFuZCB0aGUgZmluYWwgTFBDIGNvZWZmaWNpZW50cyB0bwor
IHVzZSBmb3IgcmVjb25zdHJ1Y3Rpb24gaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX2xwY19zeW50aGVz
aXMiLz4gYXJlCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRl
ciI+PCFbQ0RBVEFbCithX1ExMltrXSA9IChhMzJfUTE3W2tdICsgMTYpID4+IDUgLgorXV0+PC9h
cnR3b3JrPgorPC9maWd1cmU+CitPdGhlcndpc2UsIGEgcm91bmQgb2YgYmFuZHdpZHRoIGV4cGFu
c2lvbiBpcyBhcHBsaWVkIHVzaW5nIHRoZSBzYW1lIHByb2NlZHVyZQorIGFzIGluIDx4cmVmIHRh
cmdldD0ic2lsa19scGNfcmFuZ2VfbGltaXQiLz4sIHdpdGgKKzxmaWd1cmUgYWxpZ249ImNlbnRl
ciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3NjX1ExNlswXSA9IDY1NTM2
IC0gKDI8PGkpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorRHVyaW5nIHRoZSAxNXRoIHJv
dW5kLCBzY19RMTZbMF0gYmVjb21lcyAwIGluIHRoZSBhYm92ZSBlcXVhdGlvbiwgc28gYV9RMTJb
a10KKyBpcyBzZXQgdG8gMCBmb3IgYWxsIGssIGd1YXJhbnRlZWluZyBhIHN0YWJsZSBmaWx0ZXIu
Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxr
X2x0cF9wYXJhbXMiIHRvYz0iaW5jbHVkZSIKKyB0aXRsZT0iTG9uZy1UZXJtIFByZWRpY3Rpb24g
KExUUCkgUGFyYW1ldGVycyI+Cis8dD4KK0FmdGVyIHRoZSBub3JtYWxpemVkIExTRiBpbmRpY2Vz
IGFuZCwgZm9yIDIwJm5ic3A7bXMgZnJhbWVzLCB0aGUgTFNGCisgaW50ZXJwb2xhdGlvbiBpbmRl
eCwgdm9pY2VkIGZyYW1lcyAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV90eXBlIi8+KQor
IGluY2x1ZGUgYWRkaXRpb25hbCBMVFAgcGFyYW1ldGVycy4KK1RoZXJlIGlzIG9uZSBwcmltYXJ5
IGxhZyBpbmRleCBmb3IgZWFjaCBTSUxLIGZyYW1lLCBidXQgdGhpcyBpcyByZWZpbmVkIHRvCisg
cHJvZHVjZSBhIHNlcGFyYXRlIGxhZyBpbmRleCBwZXIgc3ViZnJhbWUgdXNpbmcgYSB2ZWN0b3Ig
cXVhbnRpemVyLgorRWFjaCBzdWJmcmFtZSBhbHNvIGdldHMgaXRzIG93biBwcmVkaWN0aW9uIGdh
aW4gY29lZmZpY2llbnQuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19sdHBfbGFncyIg
dGl0bGU9IlBpdGNoIExhZ3MiPgorPHQ+CitUaGUgcHJpbWFyeSBsYWcgaW5kZXggaXMgY29kZWQg
ZWl0aGVyIHJlbGF0aXZlIHRvIHRoZSBwcmltYXJ5IGxhZyBvZiB0aGUgcHJpb3IKKyBmcmFtZSBp
biB0aGUgc2FtZSBjaGFubmVsLCBvciBhcyBhbiBhYnNvbHV0ZSBpbmRleC4KK0Fic29sdXRlIGNv
ZGluZyBpcyB1c2VkIGlmIGFuZCBvbmx5IGlmCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD4K
K1RoaXMgaXMgdGhlIGZpcnN0IFNJTEsgZnJhbWUgb2YgaXRzIHR5cGUgKExCUlIgb3IgcmVndWxh
cikgZm9yIHRoaXMgY2hhbm5lbCBpbgorIHRoZSBjdXJyZW50IE9wdXMgZnJhbWUsCis8L3Q+Cis8
dD4KK1RoZSBwcmV2aW91cyBTSUxLIGZyYW1lIG9mIHRoZSBzYW1lIHR5cGUgKExCUlIgb3IgcmVn
dWxhcikgZm9yIHRoaXMgY2hhbm5lbCBpbgorIHRoZSBzYW1lIE9wdXMgZnJhbWUgd2FzIG5vdCBj
b2RlZCwgb3IKKzwvdD4KKzx0PgorVGhhdCBwcmV2aW91cyBTSUxLIGZyYW1lIHdhcyBjb2RlZCwg
YnV0IHdhcyBub3Qgdm9pY2VkIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWVfdHlwZSIv
PikuCis8L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzx0PgorV2l0aCBhYnNvbHV0ZSBjb2RpbmcsIHRo
ZSBwcmltYXJ5IHBpdGNoIGxhZyBtYXkgcmFuZ2UgZnJvbSAyJm5ic3A7bXMKKyAoaW5jbHVzaXZl
KSB1cCB0byAxOCZuYnNwO21zIChleGNsdXNpdmUpLCBjb3JyZXNwb25kaW5nIHRvIHBpdGNoZXMg
ZnJvbQorIDUwMCZuYnNwO0h6IGRvd24gdG8gNTUuNiZuYnNwO0h6LCByZXNwZWN0aXZlbHkuCitJ
dCBpcyBjb21wcmlzZWQgb2YgYSBoaWdoIHBhcnQgYW5kIGEgbG93IHBhcnQsIHdoZXJlIHRoZSBk
ZWNvZGVyIHJlYWRzIHRoZSBoaWdoCisgcGFydCB1c2luZyB0aGUgMzItZW50cnkgY29kZWJvb2sg
aW4gPHhyZWYgdGFyZ2V0PSJzaWxrX2Fic19waXRjaF9oaWdoX3BkZiIvPgorIGFuZCB0aGUgbG93
IHBhcnQgdXNpbmcgdGhlIGNvZGVib29rIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGN1cnJlbnQgYXVk
aW8KKyBiYW5kd2lkdGggZnJvbSA8eHJlZiB0YXJnZXQ9InNpbGtfYWJzX3BpdGNoX2xvd19wZGYi
Lz4uCitUaGUgZmluYWwgcHJpbWFyeSBwaXRjaCBsYWcgaXMgdGhlbgorPGZpZ3VyZSBhbGlnbj0i
Y2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworbGFnID0gbGFnX2hp
Z2gqbGFnX3NjYWxlICsgbGFnX2xvdyArIGxhZ19taW4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorIHdoZXJlIGxhZ19oaWdoIGlzIHRoZSBoaWdoIHBhcnQsIGxhZ19sb3cgaXMgdGhlIGxvdyBw
YXJ0LCBhbmQgbGFnX3NjYWxlCisgYW5kIGxhZ19taW4gYXJlIHRoZSB2YWx1ZXMgZnJvbSB0aGUg
IlNjYWxlIiBhbmQgIk1pbmltdW0gTGFnIiBjb2x1bW5zIG9mCisgPHhyZWYgdGFyZ2V0PSJzaWxr
X2Fic19waXRjaF9sb3dfcGRmIi8+LCByZXNwZWN0aXZlbHkuCis8L3Q+CisKKzx0ZXh0dGFibGUg
YW5jaG9yPSJzaWxrX2Fic19waXRjaF9oaWdoX3BkZiIKKyB0aXRsZT0iUERGIGZvciBIaWdoIFBh
cnQgb2YgUHJpbWFyeSBQaXRjaCBMYWciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29s
PgorPGM+ezMsICAgMywgICA2LCAgMTEsICAyMSwgIDMwLCAgMzIsICAxOSwKKyAgIDExLCAgMTAs
ICAxMiwgIDEzLCAgMTMsICAxMiwgIDExLCAgIDksCisgICAgOCwgICA3LCAgIDYsICAgNCwgICAy
LCAgIDIsICAgMiwgICAxLAorICAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAg
MX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX2Fic19w
aXRjaF9sb3dfcGRmIgorIHRpdGxlPSJQREYgZm9yIExvdyBQYXJ0IG9mIFByaW1hcnkgUGl0Y2gg
TGFnIj4KKzx0dGNvbD5BdWRpbyBCYW5kd2lkdGg8L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+
Cis8dHRjb2w+U2NhbGU8L3R0Y29sPgorPHR0Y29sPk1pbmltdW0gTGFnPC90dGNvbD4KKzx0dGNv
bD5NYXhpbXVtIExhZzwvdHRjb2w+Cis8Yz5OQjwvYz4gPGM+ezY0LCA2NCwgNjQsIDY0fS8yNTY8
L2M+ICAgICAgICAgICAgICAgICA8Yz40PC9jPiA8Yz4xNjwvYz4gPGM+MTQ0PC9jPgorPGM+TUI8
L2M+IDxjPns0MywgNDIsIDQzLCA0MywgNDIsIDQzfS8yNTY8L2M+ICAgICAgICAgPGM+NjwvYz4g
PGM+MjQ8L2M+IDxjPjIxNjwvYz4KKzxjPldCPC9jPiA8Yz57MzIsIDMyLCAzMiwgMzIsIDMyLCAz
MiwgMzIsIDMyfS8yNTY8L2M+IDxjPjg8L2M+IDxjPjMyPC9jPiA8Yz4yODg8L2M+Cis8L3RleHR0
YWJsZT4KKworPHQ+CitBbGwgZnJhbWVzIHRoYXQgZG8gbm90IHVzZSBhYnNvbHV0ZSBjb2Rpbmcg
Zm9yIHRoZSBwcmltYXJ5IGxhZyBpbmRleCB1c2UKKyByZWxhdGl2ZSBjb2RpbmcgaW5zdGVhZC4K
K1RoZSBkZWNvZGVyIHJlYWRzIGEgc2luZ2xlIGRlbHRhIHZhbHVlIHVzaW5nIHRoZSAyMS1lbnRy
eSBQREYgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtfcmVsX3BpdGNoX3BkZiIvPi4KK0lmIHRoZSBy
ZXN1bHRpbmcgdmFsdWUgaXMgemVybywgaXQgZmFsbHMgYmFjayB0byB0aGUgYWJzb2x1dGUgY29k
aW5nIHByb2NlZHVyZQorIGZyb20gdGhlIHByaW9yIHBhcmFncmFwaC4KK090aGVyd2lzZSwgdGhl
IGZpbmFsIHByaW1hcnkgcGl0Y2ggbGFnIGlzIHRoZW4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+
Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2xhZyA9IHByZXZpb3VzX2xhZyAr
IChkZWx0YV9sYWdfaW5kZXggLSA5KQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cisgd2hlcmUg
cHJldmlvdXNfbGFnIGlzIHRoZSBwcmltYXJ5IHBpdGNoIGxhZyBmcm9tIHRoZSBtb3N0IHJlY2Vu
dCBmcmFtZSBpbiB0aGUKKyBzYW1lIGNoYW5uZWwgYW5kIGRlbHRhX2xhZ19pbmRleCBpcyB0aGUg
dmFsdWUganVzdCBkZWNvZGVkLgorVGhpcyBhbGxvd3MgYSBwZXItZnJhbWUgY2hhbmdlIGluIHRo
ZSBwaXRjaCBsYWcgb2YgLTggdG8gKzExIHNhbXBsZXMuCitUaGUgZGVjb2RlciBkb2VzIG5vIGNs
YW1waW5nIGF0IHRoaXMgcG9pbnQsIHNvIHRoaXMgdmFsdWUgY2FuIGZhbGwgb3V0c2lkZSB0aGUK
KyByYW5nZSBvZiAyJm5ic3A7bXMgdG8gMTgmbmJzcDttcywgYW5kIHRoZSBkZWNvZGVyIG11c3Qg
dXNlIHRoaXMgdW5jbGFtcGVkCisgdmFsdWUgd2hlbiB1c2luZyByZWxhdGl2ZSBjb2RpbmcgaW4g
dGhlIG5leHQgU0lMSyBmcmFtZSAoaWYgYW55KS4KK0hvd2V2ZXIsIGJlY2F1c2UgYW4gT3B1cyBm
cmFtZSBjYW4gdXNlIHJlbGF0aXZlIGNvZGluZyBmb3IgYXQgbW9zdCB0d28KKyBjb25zZWN1dGl2
ZSBTSUxLIGZyYW1lcywgaW50ZWdlciBvdmVyZmxvdyBzaG91bGQgbm90IGJlIGFuIGlzc3VlLgor
PC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19yZWxfcGl0Y2hfcGRmIgorIHRpdGxlPSJQ
REYgZm9yIFByaW1hcnkgUGl0Y2ggTGFnIENoYW5nZSI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBE
RjwvdHRjb2w+Cis8Yz57NDYsICAyLCAgMiwgIDMsICA0LCAgNiwgMTAsIDE1LAorICAgIDI2LCAz
OCwgMzAsIDIyLCAxNSwgMTAsICA3LCAgNiwKKyAgICAgNCwgIDQsICAyLCAgMiwgIDJ9LzI1Njwv
Yz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK0FmdGVyIHRoZSBwcmltYXJ5IHBpdGNoIGxhZywgYSAi
cGl0Y2ggY29udG91ciIsIHN0b3JlZCBhcyBhIHNpbmdsZSBlbnRyeSBmcm9tCisgb25lIG9mIGZv
dXIgc21hbGwgVlEgY29kZWJvb2tzLCBnaXZlcyBsYWcgb2Zmc2V0cyBmb3IgZWFjaCBzdWJmcmFt
ZSBpbiB0aGUKKyBjdXJyZW50IFNJTEsgZnJhbWUuCitUaGUgY29kZWJvb2sgaW5kZXggaXMgZGVj
b2RlZCB1c2luZyBvbmUgb2YgdGhlIFBERnMgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtfcGl0Y2hf
Y29udG91cl9wZGZzIi8+IGRlcGVuZGluZyBvbiB0aGUgY3VycmVudCBmcmFtZSBzaXplCisgYW5k
IGF1ZGlvIGJhbmR3aWR0aC4KK1RhYmxlcyZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFy
Z2V0PSJzaWxrX3BpdGNoX2NvbnRvdXJfY2JfbmIxMG1zIi8+CisgdGhyb3VnaCZuYnNwOzx4cmVm
IGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX3BpdGNoX2NvbnRvdXJfY2JfbWJ3YjIwbXMi
Lz4KKyBnaXZlIHRoZSBjb3JyZXNwb25kaW5nIG9mZnNldHMgdG8gYXBwbHkgdG8gdGhlIHByaW1h
cnkgcGl0Y2ggbGFnIGZvciBlYWNoCisgc3ViZnJhbWUgZ2l2ZW4gdGhlIGRlY29kZWQgY29kZWJv
b2sgaW5kZXguCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3BpdGNoX2NvbnRvdXJf
cGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgU3ViZnJhbWUgUGl0Y2ggQ29udG91ciI+Cis8dHRjb2w+
QXVkaW8gQmFuZHdpZHRoPC90dGNvbD4KKzx0dGNvbD5TSUxLIEZyYW1lIFNpemU8L3R0Y29sPgor
PHR0Y29sIGFsaWduPSJyaWdodCI+Q29kZWJvb2sgU2l6ZTwvdHRjb2w+Cis8dHRjb2w+UERGPC90
dGNvbD4KKzxjPk5CPC9jPiAgICAgICA8Yz4xMCZuYnNwO21zPC9jPiAgPGM+MzwvYz4KKzxjPnsx
NDMsIDUwLCA2M30vMjU2PC9jPgorPGM+TkI8L2M+ICAgICAgIDxjPjIwJm5ic3A7bXM8L2M+IDxj
PjExPC9jPgorPGM+ezY4LCAxMiwgMjEsIDE3LCAxOSwgMjIsIDMwLCAyNCwKKyAgICAxNywgMTYs
IDEwfS8yNTY8L2M+Cis8Yz5NQiBvciBXQjwvYz4gPGM+MTAmbmJzcDttczwvYz4gPGM+MTI8L2M+
Cis8Yz57OTEsIDQ2LCAzOSwgMTksIDE0LCAxMiwgIDgsICA3LAorICAgICA2LCAgNSwgIDUsICA0
fS8yNTY8L2M+Cis8Yz5NQiBvciBXQjwvYz4gPGM+MjAmbmJzcDttczwvYz4gPGM+MzQ8L2M+Cis8
Yz57MzMsIDIyLCAxOCwgMTYsIDE1LCAxNCwgMTQsIDEzLAorICAgIDEzLCAxMCwgIDksICA5LCAg
OCwgIDYsICA2LCAgNiwKKyAgICAgNSwgIDQsICA0LCAgNCwgIDMsICAzLCAgMywgIDIsCisgICAg
IDIsICAyLCAgMiwgIDIsICAyLCAgMiwgIDEsICAxLAorICAgICAxLCAgMX0vMjU2PC9jPgorPC90
ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3BpdGNoX2NvbnRvdXJfY2JfbmIx
MG1zIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0b3JzIGZvciBTdWJmcmFtZSBQaXRjaCBDb250b3Vy
OiBOQiwgMTAmbmJzcDttcyBGcmFtZXMiPgorPHR0Y29sPkluZGV4PC90dGNvbD4KKzx0dGNvbCBh
bGlnbj0icmlnaHQiPlN1YmZyYW1lIE9mZnNldHM8L3R0Y29sPgorPGM+MDwvYz4gPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKzxjPjE8L2M+
IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+
Cis8Yz4yPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MTwv
c3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3BpdGNo
X2NvbnRvdXJfY2JfbmIyMG1zIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0b3JzIGZvciBTdWJmcmFt
ZSBQaXRjaCBDb250b3VyOiBOQiwgMjAmbmJzcDttcyBGcmFtZXMiPgorPHR0Y29sPkluZGV4PC90
dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPlN1YmZyYW1lIE9mZnNldHM8L3R0Y29sPgorIDxj
PjA8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7
Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8Yz4xPC9jPiA8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4mbmJzcDsyJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzAmbmJzcDstMTwvc3Bh
bng+PC9jPgorIDxjPjI8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xJm5ic3A7Jm5ic3A7
MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsyPC9zcGFueD48L2M+CisgPGM+MzwvYz4gPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+LTEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNw
OzE8L3NwYW54PjwvYz4KKyA8Yz40PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMSZuYnNw
OyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxjPjU8L2M+
IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7
MCZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8Yz42PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsxPC9zcGFu
eD48L2M+CisgPGM+NzwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZu
YnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxjPjg8L2M+IDxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZu
YnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8Yz45PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4mbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDstMTwvc3Bhbng+PC9jPgor
PGM+MTA8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEmbmJzcDsmbmJzcDswJm5i
c3A7Jm5ic3A7MCZuYnNwOy0xPC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJs
ZSBhbmNob3I9InNpbGtfcGl0Y2hfY29udG91cl9jYl9tYndiMTBtcyIKKyB0aXRsZT0iQ29kZWJv
b2sgVmVjdG9ycyBmb3IgU3ViZnJhbWUgUGl0Y2ggQ29udG91cjogTUIgb3IgV0IsIDEwJm5ic3A7
bXMgRnJhbWVzIj4KKzx0dGNvbD5JbmRleDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5T
dWJmcmFtZSBPZmZzZXRzPC90dGNvbD4KKyA8Yz4wPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4mbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxjPjE8L2M+IDxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDsxPC9zcGFueD48L2M+CisgPGM+MjwvYz4g
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4K
KyA8Yz4zPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMSZuYnNwOyZuYnNwOzE8L3NwYW54
PjwvYz4KKyA8Yz40PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsxJm5ic3A7LTE8
L3NwYW54PjwvYz4KKyA8Yz41PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMSZuYnNwOyZu
YnNwOzI8L3NwYW54PjwvYz4KKyA8Yz42PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJz
cDsyJm5ic3A7LTE8L3NwYW54PjwvYz4KKyA8Yz43PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4tMiZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4KKyA8Yz44PC9jPiA8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4mbmJzcDsyJm5ic3A7LTI8L3NwYW54PjwvYz4KKyA8Yz45PC9jPiA8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4tMiZuYnNwOyZuYnNwOzM8L3NwYW54PjwvYz4KKzxjPjEwPC9jPiA8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDszJm5ic3A7LTI8L3NwYW54PjwvYz4KKzxjPjExPC9j
PiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMyZuYnNwOyZuYnNwOzM8L3NwYW54PjwvYz4KKzwv
dGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19waXRjaF9jb250b3VyX2NiX21i
d2IyMG1zIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0b3JzIGZvciBTdWJmcmFtZSBQaXRjaCBDb250
b3VyOiBNQiBvciBXQiwgMjAmbmJzcDttcyBGcmFtZXMiPgorPHR0Y29sPkluZGV4PC90dGNvbD4K
Kzx0dGNvbCBhbGlnbj0icmlnaHQiPlN1YmZyYW1lIE9mZnNldHM8L3R0Y29sPgorIDxjPjA8L2M+
IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7
MCZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8Yz4xPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsxPC9zcGFu
eD48L2M+CisgPGM+MjwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZu
YnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxjPjM8L2M+IDxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPi0xJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsm
bmJzcDswPC9zcGFueD48L2M+CisgPGM+NDwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5i
c3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MTwvc3Bhbng+PC9jPgor
IDxjPjU8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEmbmJzcDsmbmJzcDswJm5i
c3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8Yz42PC9jPiA8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4tMSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MTwv
c3Bhbng+PC9jPgorIDxjPjc8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJz
cDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOy0xPC9zcGFueD48L2M+CisgPGM+ODwvYz4gPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MSZuYnNwOyZu
YnNwOzI8L3NwYW54PjwvYz4KKyA8Yz45PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJz
cDsxJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDstMTwvc3Bhbng+PC9jPgorPGM+MTA8
L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0yJm5ic3A7LTEmbmJzcDsmbmJzcDsxJm5ic3A7
Jm5ic3A7Mjwvc3Bhbng+PC9jPgorPGM+MTE8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZu
YnNwOzImbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7MCZuYnNwOy0xPC9zcGFueD48L2M+Cis8Yz4x
MjwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTImbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7
MCZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4KKzxjPjEzPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4tMiZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7Mzwvc3Bhbng+PC9j
PgorPGM+MTQ8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzImbmJzcDsmbmJzcDsx
Jm5ic3A7LTEmbmJzcDstMjwvc3Bhbng+PC9jPgorPGM+MTU8L2M+IDxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPi0zJm5ic3A7LTEmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7Mzwvc3Bhbng+PC9jPgor
PGM+MTY8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzImbmJzcDsmbmJzcDswJm5i
c3A7Jm5ic3A7MCZuYnNwOy0yPC9zcGFueD48L2M+Cis8Yz4xNzwvYz4gPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+Jm5ic3A7MyZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7LTI8L3NwYW54
PjwvYz4KKzxjPjE4PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMyZuYnNwOy0xJm5ic3A7
Jm5ic3A7MiZuYnNwOyZuYnNwOzQ8L3NwYW54PjwvYz4KKzxjPjE5PC9jPiA8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4tNCZuYnNwOy0xJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzQ8L3NwYW54Pjwv
Yz4KKzxjPjIwPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDszJm5ic3A7Jm5ic3A7
MSZuYnNwOy0xJm5ic3A7LTM8L3NwYW54PjwvYz4KKzxjPjIxPC9jPiA8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4tNCZuYnNwOy0xJm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOzU8L3NwYW54PjwvYz4K
KzxjPjIyPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs0Jm5ic3A7Jm5ic3A7MiZu
YnNwOy0xJm5ic3A7LTM8L3NwYW54PjwvYz4KKzxjPjIzPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDs0Jm5ic3A7Jm5ic3A7MSZuYnNwOy0xJm5ic3A7LTQ8L3NwYW54PjwvYz4KKzxj
PjI0PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tNSZuYnNwOy0xJm5ic3A7Jm5ic3A7MiZu
YnNwOyZuYnNwOzY8L3NwYW54PjwvYz4KKzxjPjI1PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4mbmJzcDs1Jm5ic3A7Jm5ic3A7MiZuYnNwOy0xJm5ic3A7LTQ8L3NwYW54PjwvYz4KKzxjPjI2
PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tNiZuYnNwOy0yJm5ic3A7Jm5ic3A7MiZuYnNw
OyZuYnNwOzY8L3NwYW54PjwvYz4KKzxjPjI3PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4t
NSZuYnNwOy0yJm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOzU8L3NwYW54PjwvYz4KKzxjPjI4PC9j
PiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs2Jm5ic3A7Jm5ic3A7MiZuYnNwOy0xJm5i
c3A7LTU8L3NwYW54PjwvYz4KKzxjPjI5PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tNyZu
YnNwOy0yJm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzg8L3NwYW54PjwvYz4KKzxjPjMwPC9jPiA8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs2Jm5ic3A7Jm5ic3A7MiZuYnNwOy0yJm5ic3A7
LTY8L3NwYW54PjwvYz4KKzxjPjMxPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs1
Jm5ic3A7Jm5ic3A7MiZuYnNwOy0yJm5ic3A7LTU8L3NwYW54PjwvYz4KKzxjPjMyPC9jPiA8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs4Jm5ic3A7Jm5ic3A7MyZuYnNwOy0yJm5ic3A7LTc8
L3NwYW54PjwvYz4KKzxjPjMzPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tOSZuYnNwOy0z
Jm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzk8L3NwYW54PjwvYz4KKzwvdGV4dHRhYmxlPgorCis8
dD4KK1RoZSBmaW5hbCBwaXRjaCBsYWcgZm9yIGVhY2ggc3ViZnJhbWUgaXMgYXNzZW1ibGVkIGlu
IHNpbGtfZGVjb2RlX3BpdGNoKCkKKyAoZGVjb2RlX3BpdGNoLmMpLgorTGV0IGxhZyBiZSB0aGUg
cHJpbWFyeSBwaXRjaCBsYWcgZm9yIHRoZSBjdXJyZW50IFNJTEsgZnJhbWUsIGNvbnRvdXJfaW5k
ZXggYmUKKyBpbmRleCBvZiB0aGUgVlEgY29kZWJvb2ssIGFuZCBsYWdfY2JbY29udG91cl9pbmRl
eF1ba10gYmUgdGhlIGNvcnJlc3BvbmRpbmcKKyBlbnRyeSBvZiB0aGUgY29kZWJvb2sgZnJvbSB0
aGUgYXBwcm9wcmlhdGUgdGFibGUgZ2l2ZW4gYWJvdmUgZm9yIHRoZSBrJ3RoCisgc3ViZnJhbWUu
CitUaGVuIHRoZSBmaW5hbCBwaXRjaCBsYWcgZm9yIHRoYXQgc3ViZnJhbWUgaXMKKzxmaWd1cmUg
YWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3BpdGNo
X2xhZ3Nba10gPSBjbGFtcChsYWdfbWluLCBsYWcgKyBsYWdfY2JbY29udG91cl9pbmRleF1ba10s
CisgICAgICAgICAgICAgICAgICAgICAgbGFnX21heCkKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorIHdoZXJlIGxhZ19taW4gYW5kIGxhZ19tYXggYXJlIHRoZSB2YWx1ZXMgZnJvbSB0aGUgIk1p
bmltdW0gTGFnIiBhbmQKKyAiTWF4aW11bSBMYWciIGNvbHVtbnMgb2YgPHhyZWYgdGFyZ2V0PSJz
aWxrX2Fic19waXRjaF9sb3dfcGRmIi8+LAorIHJlc3BlY3RpdmVseS4KKzwvdD4KKworPC9zZWN0
aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbHRwX2ZpbHRlciIgdGl0bGU9IkxUUCBGaWx0
ZXIgQ29lZmZpY2llbnRzIj4KKzx0PgorU0lMSyB1c2VzIGEgc2VwYXJhdGUgNS10YXAgcGl0Y2gg
ZmlsdGVyIGZvciBlYWNoIHN1YmZyYW1lLCBzZWxlY3RlZCBmcm9tIG9uZQorIG9mIHRocmVlIGNv
ZGVib29rcy4KK1RoZSB0aHJlZSBjb2RlYm9va3MgZWFjaCByZXByZXNlbnQgZGlmZmVyZW50IHJh
dGUtZGlzdG9ydGlvbiB0cmFkZS1vZmZzLCB3aXRoCisgYXZlcmFnZSByYXRlcyBvZiAxLjYxJm5i
c3A7Yml0cy9zdWJmcmFtZSwgMy42OCZuYnNwO2JpdHMvc3ViZnJhbWUsIGFuZAorIDQuODUmbmJz
cDtiaXRzL3N1YmZyYW1lLCByZXNwZWN0aXZlbHkuCis8L3Q+CisKKzx0PgorVGhlIGltcG9ydGFu
Y2Ugb2YgdGhlIGZpbHRlciBjb2VmZmljaWVudHMgZ2VuZXJhbGx5IGRlcGVuZHMgb24gdHdvIGZh
Y3RvcnM6IHRoZQorIHBlcmlvZGljaXR5IG9mIHRoZSBzaWduYWwgYW5kIHJlbGF0aXZlIGVuZXJn
eSBiZXR3ZWVuIHRoZSBjdXJyZW50IHN1YmZyYW1lIGFuZAorIHRoZSBzaWduYWwgZnJvbSBvbmUg
cGVyaW9kIGVhcmxpZXIuCitHcmVhdGVyIHBlcmlvZGljaXR5IGFuZCBkZWNheWluZyBlbmVyZ3kg
Ym90aCBsZWFkIHRvIG1vcmUgaW1wb3J0YW50IGZpbHRlcgorIGNvZWZmaWNpZW50cywgYW5kIHRo
dXMgc2hvdWxkIGJlIGNvZGVkIHdpdGggbG93ZXIgZGlzdG9ydGlvbiBhbmQgaGlnaGVyIHJhdGUu
CitUaGVzZSBwcm9wZXJ0aWVzIGFyZSByZWxhdGl2ZWx5IHN0YWJsZSBvdmVyIHRoZSBkdXJhdGlv
biBvZiBhIHNpbmdsZSBTSUxLCisgZnJhbWUsIGhlbmNlIGFsbCBvZiB0aGUgc3ViZnJhbWVzIGlu
IGEgU0lMSyBmcmFtZSBjaG9vc2UgdGhlaXIgZmlsdGVyIGZyb20gdGhlCisgc2FtZSBjb2RlYm9v
ay4KK1RoaXMgaXMgc2lnbmFsZWQgd2l0aCBhbiBleHBsaWNpdGx5LWNvZGVkICJwZXJpb2RpY2l0
eSBpbmRleCIuCitUaGlzIGltbWVkaWF0ZWx5IGZvbGxvd3MgdGhlIHN1YmZyYW1lIHBpdGNoIGxh
Z3MsIGFuZCBpcyBjb2RlZCB1c2luZyB0aGUKKyAzLWVudHJ5IFBERiBmcm9tIDx4cmVmIHRhcmdl
dD0ic2lsa19wZXJpbmRleF9wZGYiLz4uCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxr
X3BlcmluZGV4X3BkZiIgdGl0bGU9IlBlcmlvZGljaXR5IEluZGV4IFBERiI+Cis8dHRjb2w+UERG
PC90dGNvbD4KKzxjPns3NywgODAsIDk5fS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitU
aGUgaW5kaWNlcyBvZiB0aGUgZmlsdGVycyBmb3IgZWFjaCBzdWJmcmFtZSBmb2xsb3cuCitUaGV5
IGFyZSBhbGwgY29kZWQgdXNpbmcgdGhlIFBERiBmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19sdHBf
ZmlsdGVyX3BkZnMiLz4KKyBjb3JyZXNwb25kaW5nIHRvIHRoZSBwZXJpb2RpY2l0eSBpbmRleC4K
K1RhYmxlcyZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX2x0cF9maWx0
ZXJfY29lZmZzMCIvPgorIHRocm91Z2gmbmJzcDs8eHJlZiBmb3JtYXQ9ImNvdW50ZXIiIHRhcmdl
dD0ic2lsa19sdHBfZmlsdGVyX2NvZWZmczIiLz4KKyBjb250YWluIHRoZSBjb3JyZXNwb25kaW5n
IGZpbHRlciB0YXBzIGFzIHNpZ25lZCBRNyBpbnRlZ2Vycy4KKzwvdD4KKworPHRleHR0YWJsZSBh
bmNob3I9InNpbGtfbHRwX2ZpbHRlcl9wZGZzIiB0aXRsZT0iTFRQIEZpbHRlciBQREZzIj4KKzx0
dGNvbD5QZXJpb2RpY2l0eSBJbmRleDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5Db2Rl
Ym9vayBTaXplPC90dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29sPgorPGM+MDwvYz4gIDxjPjg8L2M+
IDxjPnsxODUsIDE1LCAxMywgMTMsIDksIDksIDYsIDZ9LzI1NjwvYz4KKzxjPjE8L2M+IDxjPjE2
PC9jPiA8Yz57NTcsIDM0LCAyMSwgMjAsIDE1LCAxMywgMTIsIDEzLAorICAgICAgICAgICAgICAg
ICAgICAgICAxMCwgMTAsICA5LCAxMCwgIDksICA4LCAgNywgIDh9LzI1NjwvYz4KKzxjPjI8L2M+
IDxjPjMyPC9jPiA8Yz57MTUsIDE2LCAxNCwgMTIsIDEyLCAxMiwgMTEsIDExLAorICAgICAgICAg
ICAgICAgICAgICAgICAxMSwgMTAsICA5LCAgOSwgIDksICA5LCAgOCwgIDgsCisgICAgICAgICAg
ICAgICAgICAgICAgICA4LCAgOCwgIDcsICA3LCAgNiwgIDYsICA1LCAgNCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgIDUsICA0LCAgNCwgIDQsICAzLCAgNCwgIDMsICAyfS8yNTY8L2M+Cis8L3Rl
eHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbHRwX2ZpbHRlcl9jb2VmZnMwIgor
IHRpdGxlPSJDb2RlYm9vayBWZWN0b3JzIGZvciBMVFAgRmlsdGVyLCBQZXJpb2RpY2l0eSBJbmRl
eCAwIj4KKzx0dGNvbD5JbmRleDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5GaWx0ZXIg
VGFwcyAoUTcpPC90dGNvbD4KKyA8Yz4wPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5i
c3A7Jm5ic3A7NCZuYnNwOyZuYnNwOyZuYnNwOzYmbmJzcDsmbmJzcDsyNCZuYnNwOyZuYnNwOyZu
YnNwOzcmbmJzcDsmbmJzcDsmbmJzcDs1PC9zcGFueD48L2M+CisgPGM+MTwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsmbmJzcDswJm5ic3A7Jm5i
c3A7Jm5ic3A7MiZuYnNwOyZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsmbmJzcDswPC9zcGFueD48
L2M+CisgPGM+MjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEyJm5ic3A7Jm5i
c3A7MjgmbmJzcDsmbmJzcDs0MSZuYnNwOyZuYnNwOzEzJm5ic3A7Jm5ic3A7LTQ8L3NwYW54Pjwv
Yz4KKyA8Yz4zPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTkmbmJzcDsmbmJz
cDsxNSZuYnNwOyZuYnNwOzQyJm5ic3A7Jm5ic3A7MjUmbmJzcDsmbmJzcDsxNDwvc3Bhbng+PC9j
PgorIDxjPjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDsxJm5ic3A7
Jm5ic3A7LTImbmJzcDsmbmJzcDs2MiZuYnNwOyZuYnNwOzQxJm5ic3A7Jm5ic3A7LTk8L3NwYW54
PjwvYz4KKyA8Yz41PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEwJm5ic3A7Jm5ic3A7
MzcmbmJzcDsmbmJzcDs2NSZuYnNwOyZuYnNwOy00Jm5ic3A7Jm5ic3A7Jm5ic3A7Mzwvc3Bhbng+
PC9jPgorIDxjPjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDstNiZuYnNwOyZu
YnNwOyZuYnNwOzQmbmJzcDsmbmJzcDs2NiZuYnNwOyZuYnNwOyZuYnNwOzcmbmJzcDsmbmJzcDst
ODwvc3Bhbng+PC9jPgorIDxjPjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsx
NiZuYnNwOyZuYnNwOzE0Jm5ic3A7Jm5ic3A7MzgmbmJzcDsmbmJzcDstMyZuYnNwOyZuYnNwOzMz
PC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbHRw
X2ZpbHRlcl9jb2VmZnMxIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0b3JzIGZvciBMVFAgRmlsdGVy
LCBQZXJpb2RpY2l0eSBJbmRleCAxIj4KKzx0dGNvbD5JbmRleDwvdHRjb2w+Cis8dHRjb2wgYWxp
Z249InJpZ2h0Ij5GaWx0ZXIgVGFwcyAoUTcpPC90dGNvbD4KKworIDxjPjA8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4mbmJzcDsxMyZuYnNwOyZuYnNwOzIyJm5ic3A7Jm5ic3A7MzkmbmJz
cDsmbmJzcDsyMyZuYnNwOyZuYnNwOzEyPC9zcGFueD48L2M+CisgPGM+MTwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPiZuYnNwOy0xJm5ic3A7Jm5ic3A7MzYmbmJzcDsmbmJzcDs2NCZuYnNw
OyZuYnNwOzI3Jm5ic3A7Jm5ic3A7LTY8L3NwYW54PjwvYz4KKyA8Yz4yPC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTcmbmJzcDsmbmJzcDsxMCZuYnNwOyZuYnNwOzU1Jm5ic3A7
Jm5ic3A7NDMmbmJzcDsmbmJzcDsxNzwvc3Bhbng+PC9jPgorIDxjPjM8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNw
OyZuYnNwOzgmbmJzcDsmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7Jm5ic3A7MTwvc3Bhbng+PC9j
PgorIDxjPjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDs2Jm5ic3A7
LTExJm5ic3A7Jm5ic3A7NzQmbmJzcDsmbmJzcDs1MyZuYnNwOyZuYnNwOy05PC9zcGFueD48L2M+
CisgPGM+NTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xMiZuYnNwOyZuYnNwOzU1Jm5i
c3A7Jm5ic3A7NzYmbmJzcDstMTImbmJzcDsmbmJzcDsmbmJzcDs4PC9zcGFueD48L2M+CisgPGM+
NjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy0zJm5ic3A7Jm5ic3A7Jm5ic3A7
MyZuYnNwOyZuYnNwOzkzJm5ic3A7Jm5ic3A7MjcmbmJzcDsmbmJzcDstNDwvc3Bhbng+PC9jPgor
IDxjPjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsyNiZuYnNwOyZuYnNwOzM5
Jm5ic3A7Jm5ic3A7NTkmbmJzcDsmbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7LTg8L3NwYW54Pjwv
Yz4KKyA8Yz44PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7MiZuYnNw
OyZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDs3NyZuYnNwOyZuYnNwOzExJm5ic3A7Jm5ic3A7Jm5i
c3A7OTwvc3Bhbng+PC9jPgorIDxjPjk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJz
cDstOCZuYnNwOyZuYnNwOzIyJm5ic3A7Jm5ic3A7NDQmbmJzcDsmbmJzcDstNiZuYnNwOyZuYnNw
OyZuYnNwOzc8L3NwYW54PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
Jm5ic3A7NDAmbmJzcDsmbmJzcDsmbmJzcDs5Jm5ic3A7Jm5ic3A7MjYmbmJzcDsmbmJzcDsmbmJz
cDszJm5ic3A7Jm5ic3A7Jm5ic3A7OTwvc3Bhbng+PC9jPgorPGM+MTE8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4mbmJzcDstNyZuYnNwOyZuYnNwOzIwJm5ic3A7MTAxJm5ic3A7Jm5ic3A7
LTcmbmJzcDsmbmJzcDsmbmJzcDs0PC9zcGFueD48L2M+Cis8Yz4xMjwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzMmbmJzcDsmbmJzcDstOCZuYnNwOyZuYnNwOzQyJm5i
c3A7Jm5ic3A7MjYmbmJzcDsmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+Cis8Yz4xMzwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPi0xNSZuYnNwOyZuYnNwOzMzJm5ic3A7Jm5ic3A7NjgmbmJz
cDsmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7MjM8L3NwYW54PjwvYz4KKzxjPjE0PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTImbmJzcDsmbmJzcDs1NSZuYnNwOyZuYnNwOzQ2
Jm5ic3A7Jm5ic3A7LTImbmJzcDsmbmJzcDsxNTwvc3Bhbng+PC9jPgorPGM+MTU8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7LTEmbmJzcDsmbmJz
cDsyMSZuYnNwOyZuYnNwOzE2Jm5ic3A7Jm5ic3A7NDE8L3NwYW54PjwvYz4KKzwvdGV4dHRhYmxl
PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19sdHBfZmlsdGVyX2NvZWZmczIiCisgdGl0bGU9
IkNvZGVib29rIFZlY3RvcnMgZm9yIExUUCBGaWx0ZXIsIFBlcmlvZGljaXR5IEluZGV4IDIiPgor
PHR0Y29sPkluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPkZpbHRlciBUYXBzIChR
Nyk8L3R0Y29sPgorIDxjPjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDstNiZu
YnNwOyZuYnNwOzI3Jm5ic3A7Jm5ic3A7NjEmbmJzcDsmbmJzcDszOSZuYnNwOyZuYnNwOyZuYnNw
OzU8L3NwYW54PjwvYz4KKyA8Yz4xPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTExJm5i
c3A7Jm5ic3A7NDImbmJzcDsmbmJzcDs4OCZuYnNwOyZuYnNwOyZuYnNwOzQmbmJzcDsmbmJzcDsm
bmJzcDsxPC9zcGFueD48L2M+CisgPGM+MjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZu
YnNwOy0yJm5ic3A7Jm5ic3A7NjAmbmJzcDsmbmJzcDs2NSZuYnNwOyZuYnNwOyZuYnNwOzYmbmJz
cDsmbmJzcDstNDwvc3Bhbng+PC9jPgorIDxjPjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4mbmJzcDstMSZuYnNwOyZuYnNwOy01Jm5ic3A7Jm5ic3A7NzMmbmJzcDsmbmJzcDs1NiZuYnNw
OyZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8Yz40PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+Jm5ic3A7LTkmbmJzcDsmbmJzcDsxOSZuYnNwOyZuYnNwOzk0Jm5ic3A7Jm5ic3A7Mjkm
bmJzcDsmbmJzcDstOTwvc3Bhbng+PC9jPgorIDxjPjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MTImbmJzcDsmbmJzcDs5OSZuYnNwOyZuYnNw
OyZuYnNwOzYmbmJzcDsmbmJzcDsmbmJzcDs0PC9zcGFueD48L2M+CisgPGM+NjwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzgmbmJzcDstMTkmbmJzcDsxMDImbmJzcDsm
bmJzcDs0NiZuYnNwOy0xMzwvc3Bhbng+PC9jPgorIDxjPjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4mbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOzEzJm5i
c3A7Jm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4KKyA8Yz44PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7OSZuYnNwOy0yMSZuYnNwOyZu
YnNwOzg0Jm5ic3A7Jm5ic3A7NzImbmJzcDstMTg8L3NwYW54PjwvYz4KKyA8Yz45PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTExJm5ic3A7Jm5ic3A7NDYmbmJzcDsxMDQmbmJzcDstMjIm
bmJzcDsmbmJzcDsmbmJzcDs4PC9zcGFueD48L2M+Cis8Yz4xMDwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPiZuYnNwOzE4Jm5ic3A7Jm5ic3A7MzgmbmJzcDsmbmJzcDs0OCZuYnNwOyZuYnNw
OzIzJm5ic3A7Jm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorPGM+MTE8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4tMTYmbmJzcDsmbmJzcDs3MCZuYnNwOyZuYnNwOzgzJm5ic3A7LTIxJm5i
c3A7Jm5ic3A7MTE8L3NwYW54PjwvYz4KKzxjPjEyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+Jm5ic3A7Jm5ic3A7NSZuYnNwOy0xMSZuYnNwOzExNyZuYnNwOyZuYnNwOzIyJm5ic3A7Jm5i
c3A7LTg8L3NwYW54PjwvYz4KKzxjPjEzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5i
c3A7LTYmbmJzcDsmbmJzcDsyMyZuYnNwOzExNyZuYnNwOy0xMiZuYnNwOyZuYnNwOyZuYnNwOzM8
L3NwYW54PjwvYz4KKzxjPjE0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5i
c3A7MyZuYnNwOyZuYnNwOy04Jm5ic3A7Jm5ic3A7OTUmbmJzcDsmbmJzcDsyOCZuYnNwOyZuYnNw
OyZuYnNwOzQ8L3NwYW54PjwvYz4KKzxjPjE1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
LTEwJm5ic3A7Jm5ic3A7MTUmbmJzcDsmbmJzcDs3NyZuYnNwOyZuYnNwOzYwJm5ic3A7LTE1PC9z
cGFueD48L2M+Cis8Yz4xNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy0xJm5i
c3A7Jm5ic3A7Jm5ic3A7NCZuYnNwOzEyNCZuYnNwOyZuYnNwOyZuYnNwOzImbmJzcDsmbmJzcDst
NDwvc3Bhbng+PC9jPgorPGM+MTc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsm
bmJzcDszJm5ic3A7Jm5ic3A7MzgmbmJzcDsmbmJzcDs4NCZuYnNwOyZuYnNwOzI0Jm5ic3A7LTI1
PC9zcGFueD48L2M+Cis8Yz4xODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZu
YnNwOzImbmJzcDsmbmJzcDsxMyZuYnNwOyZuYnNwOzQyJm5ic3A7Jm5ic3A7MTMmbmJzcDsmbmJz
cDszMTwvc3Bhbng+PC9jPgorPGM+MTk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJz
cDsyMSZuYnNwOyZuYnNwOy00Jm5ic3A7Jm5ic3A7NTYmbmJzcDsmbmJzcDs0NiZuYnNwOyZuYnNw
Oy0xPC9zcGFueD48L2M+Cis8Yz4yMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNw
Oy0xJm5ic3A7Jm5ic3A7MzUmbmJzcDsmbmJzcDs3OSZuYnNwOy0xMyZuYnNwOyZuYnNwOzE5PC9z
cGFueD48L2M+Cis8Yz4yMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy03Jm5i
c3A7Jm5ic3A7NjUmbmJzcDsmbmJzcDs4OCZuYnNwOyZuYnNwOy05Jm5ic3A7LTE0PC9zcGFueD48
L2M+Cis8Yz4yMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzIwJm5ic3A7Jm5i
c3A7Jm5ic3A7NCZuYnNwOyZuYnNwOzgxJm5ic3A7Jm5ic3A7NDkmbmJzcDstMjk8L3NwYW54Pjwv
Yz4KKzxjPjIzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MjAmbmJzcDsmbmJz
cDsmbmJzcDswJm5ic3A7Jm5ic3A7NzUmbmJzcDsmbmJzcDsmbmJzcDszJm5ic3A7LTE3PC9zcGFu
eD48L2M+Cis8Yz4yNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzUm
bmJzcDsmbmJzcDstOSZuYnNwOyZuYnNwOzQ0Jm5ic3A7Jm5ic3A7OTImbmJzcDsmbmJzcDstODwv
c3Bhbng+PC9jPgorPGM+MjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJz
cDsxJm5ic3A7Jm5ic3A7LTMmbmJzcDsmbmJzcDsyMiZuYnNwOyZuYnNwOzY5Jm5ic3A7Jm5ic3A7
MzE8L3NwYW54PjwvYz4KKzxjPjI2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7
LTYmbmJzcDsmbmJzcDs5NSZuYnNwOyZuYnNwOzQxJm5ic3A7LTEyJm5ic3A7Jm5ic3A7Jm5ic3A7
NTwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsz
OSZuYnNwOyZuYnNwOzY3Jm5ic3A7Jm5ic3A7MTYmbmJzcDsmbmJzcDstNCZuYnNwOyZuYnNwOyZu
YnNwOzE8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5i
c3A7Jm5ic3A7MCZuYnNwOyZuYnNwOy02Jm5ic3A7MTIwJm5ic3A7Jm5ic3A7NTUmbmJzcDstMzY8
L3NwYW54PjwvYz4KKzxjPjI5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEzJm5ic3A7
Jm5ic3A7NDQmbmJzcDsxMjImbmJzcDsmbmJzcDsmbmJzcDs0Jm5ic3A7LTI0PC9zcGFueD48L2M+
Cis8Yz4zMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzgxJm5ic3A7Jm5ic3A7
Jm5ic3A7NSZuYnNwOyZuYnNwOzExJm5ic3A7Jm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOyZuYnNw
Ozc8L3NwYW54PjwvYz4KKzxjPjMxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7
Jm5ic3A7MiZuYnNwOyZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsmbmJzcDs5Jm5ic3A7Jm5ic3A7
MTAmbmJzcDsmbmJzcDs4ODwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisKKzwvc2VjdGlvbj4K
KworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2x0cF9zY2FsaW5nIiB0aXRsZT0iTFRQIFNjYWxpbmcg
UGFyYW1ldGVyIj4KKzx0PgorQW4gTFRQIHNjYWxpbmcgcGFyYW1ldGVyIGFwcGVhcnMgYWZ0ZXIg
dGhlIExUUCBmaWx0ZXIgY29lZmZpY2llbnRzIGlmIGFuZCBvbmx5CisgaWYKKzxsaXN0IHN0eWxl
PSJzeW1ib2xzIj4KKzx0PlRoaXMgaXMgYSB2b2ljZWQgZnJhbWUgKHNlZSA8eHJlZiB0YXJnZXQ9
InNpbGtfZnJhbWVfdHlwZSIvPiksIGFuZDwvdD4KKzx0PkVpdGhlcgorPGxpc3Qgc3R5bGU9InN5
bWJvbHMiPgorPHQ+CitUaGlzIFNJTEsgZnJhbWUgY29ycmVzcG9uZHMgdG8gdGhlIGZpcnN0IHRp
bWUgaW50ZXJ2YWwgb2YgdGhlCisgY3VycmVudCBPcHVzIGZyYW1lIGZvciBpdHMgdHlwZSAoTEJS
UiBvciByZWd1bGFyKSwgb3IKKzwvdD4KKzx0PgorVGhpcyBpcyBhbiBMQlJSIGZyYW1lIHdoZXJl
IHRoZSBMQlJSIGZsYWdzIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNpbGtfbGJycl9mbGFncyIvPikg
aW5kaWNhdGUgdGhlIHByZXZpb3VzIExCUlIgZnJhbWUgaW4gdGhlIHNhbWUKKyBjaGFubmVsIGlz
IG5vdCBjb2RlZC4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKzwvbGlzdD4KK1RoaXMgYWxsb3dzIHRo
ZSBlbmNvZGVyIHRvIHRyYWRlIG9mZiB0aGUgcHJlZGljdGlvbiBnYWluIGJldHdlZW4KKyBwYWNr
ZXRzIGFnYWluc3QgdGhlIHJlY292ZXJ5IHRpbWUgYWZ0ZXIgcGFja2V0IGxvc3MuCitVbmxpa2Ug
YWJzb2x1dGUtY29kaW5nIGZvciBwaXRjaCBsYWdzLCByZWd1bGFyIFNJTEsgZnJhbWVzIHRoYXQg
YXJlIG5vdCBhdCB0aGUKKyBzdGFydCBvZiBhbiBPcHVzIGZyYW1lIChpLmUuLCB0aGF0IGRvIG5v
dCBjb3JyZXNwb25kIHRvIHRoZSBmaXJzdCAyMCZuYnNwO21zCisgdGltZSBpbnRlcnZhbCBpbiBP
cHVzIGZyYW1lcyBvZiA0MCZuYnNwO29yIDYwJm5ic3A7bXMpIGRvIG5vdCBpbmNsdWRlIHRoaXMK
KyBmaWVsZCwgZXZlbiBpZiB0aGUgcHJpb3IgZnJhbWUgd2FzIG5vdCB2b2ljZWQsIG9yIChpbiB0
aGUgY2FzZSBvZiB0aGUgc2lkZQorIGNoYW5uZWwpIG5vdCBldmVuIGNvZGVkLgorQWZ0ZXIgYW4g
dW5jb2RlZCBmcmFtZSBpbiB0aGUgc2lkZSBjaGFubmVsLCB0aGUgTFRQIGJ1ZmZlciAoc2VlCisg
PHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9zeW50aGVzaXMiLz4pIGlzIGNsZWFyZWQgdG8gemVybywg
YW5kIGlzIHRodXMgaW4gYQorIGtub3duIHN0YXRlLgorSW4gY29udHJhc3QsIExCUlIgZnJhbWVz
IGRvIGluY2x1ZGUgdGhpcyBmaWVsZCB3aGVuIHRoZSBwcmlvciBmcmFtZSB3YXMgbm90CisgY29k
ZWQsIHNpbmNlIHRoZSBMVFAgYnVmZmVyIGNvbnRhaW5zIHRoZSBvdXRwdXQgb2YgdGhlIFBMQywg
d2hpY2ggaXMKKyBub24tbm9ybWF0aXZlLgorPC90PgorPHQ+CitJZiBwcmVzZW50LCB0aGUgZGVj
b2RlciByZWFkcyBhIHZhbHVlIHVzaW5nIHRoZSAzLWVudHJ5IFBERiBpbgorIDx4cmVmIHRhcmdl
dD0ic2lsa19sdHBfc2NhbGluZ19wZGYiLz4uCitUaGUgdGhyZWUgcG9zc2libGUgdmFsdWVzIHJl
cHJlc2VudCBRMTQgc2NhbGUgZmFjdG9ycyBvZiAxNTU2NSwgMTIyODgsIGFuZAorIDgxOTIsIHJl
c3BlY3RpdmVseSAoY29ycmVzcG9uZGluZyB0byBhcHByb3hpbWF0ZWx5IDAuOTUsIDAuNzUsIGFu
ZCAwLjUpLgorRnJhbWVzIHRoYXQgZG8gbm90IGNvZGUgdGhlIHNjYWxpbmcgcGFyYW1ldGVyIHVz
ZSB0aGUgZGVmYXVsdCBmYWN0b3Igb2YgMTU1NjUKKyAoYXBwcm94aW1hdGVseSAwLjk1KS4KKzwv
dD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbHRwX3NjYWxpbmdfcGRmIgorIHRpdGxlPSJQ
REYgZm9yIExUUCBTY2FsaW5nIFBhcmFtZXRlciI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwv
dHRjb2w+Cis8Yz57MTI4LCA2NCwgNjR9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8L3NlY3Rp
b24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX3NlZWQiIHRvYz0iaW5j
bHVkZSIKKyB0aXRsZT0iTGluZWFyIENvbmdydWVudGlhbCBHZW5lcmF0b3IgKExDRykgU2VlZCI+
Cis8dD4KK0FzIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfZXhjaXRhdGlvbl9yZWNv
bnN0cnVjdGlvbiIvPiwgU0lMSyB1c2VzIGEKKyBsaW5lYXIgY29uZ3J1ZW50aWFsIGdlbmVyYXRv
ciAoTENHKSB0byBpbmplY3QgcHNldWRvcmFuZG9tIG5vaXNlIGludG8gdGhlCisgcXVhbnRpemVk
IGV4Y2l0YXRpb24uCitUbyBlbnN1cmUgc3luY2hyb25pemF0aW9uIG9mIHRoaXMgcHJvY2VzcyBi
ZXR3ZWVuIHRoZSBlbmNvZGVyIGFuZCBkZWNvZGVyLCBlYWNoCisgU0lMSyBmcmFtZSBzdG9yZXMg
YSAyLWJpdCBzZWVkIGFmdGVyIHRoZSBMVFAgcGFyYW1ldGVycyAoaWYgYW55KS4KK1RoZSBlbmNv
ZGVyIG1heSBjb25zaWRlciB0aGUgY2hvaWNlIG9mIHNlZWQgZHVyaW5nIHF1YW50aXphdGlvbiwg
YW5kIHRoZQorIGZsZXhpYmlsaXR5IG9mIHRoaXMgY2hvaWNlIGxldHMgaXQgcmVkdWNlIGRpc3Rv
cnRpb24sIGhlbHBpbmcgdG8gcGF5IGZvciB0aGUKKyBiaXQgY29zdCByZXF1aXJlZCB0byBzaWdu
YWwgaXQuCitUaGUgZGVjb2RlciByZWFkcyB0aGUgc2VlZCB1c2luZyB0aGUgdW5pZm9ybSA0LWVu
dHJ5IFBERiBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19zZWVkX3BkZiIvPiwgeWllbGRpbmcgYSB2
YWx1ZSBiZXR3ZWVuIDAgYW5kIDMsIGluY2x1c2l2ZS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNo
b3I9InNpbGtfc2VlZF9wZGYiCisgdGl0bGU9IlBERiBmb3IgTENHIFNlZWQiPgorPHR0Y29sIGFs
aWduPSJsZWZ0Ij5QREY8L3R0Y29sPgorPGM+ezY0LCA2NCwgNjQsIDY0fS8yNTY8L2M+Cis8L3Rl
eHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfZXhjaXRhdGlv
biIgdG9jPSJpbmNsdWRlIiB0aXRsZT0iRXhjaXRhdGlvbiI+Cis8dD4KK1NJTEsgY29kZXMgdGhl
IGV4Y2l0YXRpb24gdXNpbmcgYSBtb2RpZmllZCB2ZXJzaW9uIG9mIHRoZSBQeXJhbWlkIFZlY3Rv
cgorIFF1YW50aXphdGlvbiAoUFZRKSBjb2RlYm9vayA8eHJlZiB0YXJnZXQ9IlBWUSIvPi4KK1Ro
ZSBQVlEgY29kZWJvb2sgaXMgZGVzaWduZWQgZm9yIExhcGxhY2UtZGlzdHJpYnV0ZWQgdmFsdWVz
IGFuZCBjb25zaXN0cyBvZiBhbGwKKyBzdW1zIG9mIEsgc2lnbmVkLCB1bml0IHB1bHNlcyBpbiBh
IHZlY3RvciBvZiBkaW1lbnNpb24gTiwgd2hlcmUgdHdvIHB1bHNlcyBhdAorIHRoZSBzYW1lIHBv
c2l0aW9uIGFyZSByZXF1aXJlZCB0byBoYXZlIHRoZSBzYW1lIHNpZ24uCitUaHVzIHRoZSBjb2Rl
Ym9vayBpbmNsdWRlcyBhbGwgaW50ZWdlciBjb2RldmVjdG9ycyB5IG9mIGRpbWVuc2lvbiBOIHRo
YXQKKyBzYXRpc2Z5Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNl
bnRlciI+PCFbQ0RBVEFbCitOLTEKK19fCitcICBhYnMoeVtqXSkgPSBLIC4KKy9fCitqPTAKK11d
PjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVW5saWtlIHJlZ3VsYXIgUFZRLCBTSUxLIHVzZXMgYSB2
YXJpYWJsZS1sZW5ndGgsIHJhdGhlciB0aGFuIGZpeGVkLWxlbmd0aCwKKyBlbmNvZGluZy4KK1Ro
aXMgZW5jb2RpbmcgaXMgYmV0dGVyIHN1aXRlZCB0byB0aGUgbW9yZSBHYXVzc2lhbi1saWtlIGRp
c3RyaWJ1dGlvbiBvZiB0aGUKKyBjb2VmZmljaWVudCBtYWduaXR1ZGVzIGFuZCB0aGUgbm9uLXVu
aWZvcm0gZGlzdHJpYnV0aW9uIG9mIHRoZWlyIHNpZ25zIChjYXVzZWQKKyBieSB0aGUgcXVhbnRp
emF0aW9uIG9mZnNldCBkZXNjcmliZWQgYmVsb3cpLgorU0lMSyBhbHNvIGhhbmRsZXMgbGFyZ2Ug
Y29kZWJvb2tzIGJ5IGNvZGluZyB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQgYml0cyAoTFNCcykKKyBv
ZiBlYWNoIGNvZWZmaWNpZW50IGRpcmVjdGx5LgorVGhpcyBhZGRzIGEgc21hbGwgY29kaW5nIGVm
ZmljaWVuY3kgbG9zcywgYnV0IGdyZWF0bHkgcmVkdWNlcyB0aGUgY29tcHV0YXRpb24KKyB0aW1l
IGFuZCBST00gc2l6ZSByZXF1aXJlZCBmb3IgZGVjb2RpbmcsIGFzIGltcGxlbWVudGVkIGluCisg
c2lsa19kZWNvZGVfcHVsc2VzKCkgKGRlY29kZV9wdWxzZXMuYykuCis8L3Q+CisKKzx0PgorU0lM
SyBmaXhlcyB0aGUgZGltZW5zaW9uIG9mIHRoZSBjb2RlYm9vayB0byBOJm5ic3A7PSZuYnNwOzE2
LgorVGhlIGV4Y2l0YXRpb24gaXMgbWFkZSB1cCBvZiBhIG51bWJlciBvZiAic2hlbGwgYmxvY2tz
IiwgZWFjaCAxNiBzYW1wbGVzIGluCisgc2l6ZS4KKzx4cmVmIHRhcmdldD0ic2lsa19zaGVsbF9i
bG9ja190YWJsZSIvPiBsaXN0cyB0aGUgbnVtYmVyIG9mIHNoZWxsIGJsb2NrcworIHJlcXVpcmVk
IGZvciBhIFNJTEsgZnJhbWUgZm9yIGVhY2ggcG9zc2libGUgYXVkaW8gYmFuZHdpZHRoIGFuZCBm
cmFtZSBzaXplLgorMTAmbmJzcDttcyBNQiBmcmFtZXMgbm9taW5hbGx5IGNvbnRhaW4gMTIwJm5i
c3A7c2FtcGxlcyAoMTAmbmJzcDttcyBhdAorIDEyJm5ic3A7a0h6KSwgd2hpY2ggaXMgbm90IGEg
bXVsdGlwbGUgb2YgMTYuCitUaGlzIGlzIGhhbmRsZWQgYnkgY29kaW5nIDggc2hlbGwgYmxvY2tz
ICgxMjggc2FtcGxlcykgYW5kIGRpc2NhcmRpbmcgdGhlIGZpbmFsCisgOCBzYW1wbGVzIG9mIHRo
ZSBsYXN0IGJsb2NrLgorVGhlIGRlY29kZXIgY29udGFpbnMgbm8gc3BlY2lhbCBjYXNlIHRoYXQg
cHJldmVudHMgYW4gZW5jb2RlciBmcm9tIHBsYWNpbmcKKyBwdWxzZXMgaW4gdGhlc2Ugc2FtcGxl
cywgYW5kIHRoZXkgbXVzdCBiZSBjb3JyZWN0bHkgcGFyc2VkIGZyb20gdGhlIGJpdHN0cmVhbQor
IGlmIHByZXNlbnQsIGJ1dCB0aGV5IGFyZSBvdGhlcndpc2UgaWdub3JlZC4KKzwvdD4KKworPHRl
eHR0YWJsZSBhbmNob3I9InNpbGtfc2hlbGxfYmxvY2tfdGFibGUiCisgdGl0bGU9Ik51bWJlciBv
ZiBTaGVsbCBCbG9ja3MgUGVyIFNJTEsgRnJhbWUiPgorPHR0Y29sPkF1ZGlvIEJhbmR3aWR0aDwv
dHRjb2w+Cis8dHRjb2w+RnJhbWUgU2l6ZTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5O
dW1iZXIgb2YgU2hlbGwgQmxvY2tzPC90dGNvbD4KKzxjPk5CPC9jPiA8Yz4xMCZuYnNwO21zPC9j
PiAgPGM+NTwvYz4KKzxjPk1CPC9jPiA8Yz4xMCZuYnNwO21zPC9jPiAgPGM+ODwvYz4KKzxjPldC
PC9jPiA8Yz4xMCZuYnNwO21zPC9jPiA8Yz4xMDwvYz4KKzxjPk5CPC9jPiA8Yz4yMCZuYnNwO21z
PC9jPiA8Yz4xMDwvYz4KKzxjPk1CPC9jPiA8Yz4yMCZuYnNwO21zPC9jPiA8Yz4xNTwvYz4KKzxj
PldCPC9jPiA8Yz4yMCZuYnNwO21zPC9jPiA8Yz4yMDwvYz4KKzwvdGV4dHRhYmxlPgorCis8c2Vj
dGlvbiBhbmNob3I9InNpbGtfcmF0ZV9sZXZlbCIgdGl0bGU9IlJhdGUgTGV2ZWwiPgorPHQ+CitU
aGUgZmlyc3Qgc3ltYm9sIGluIHRoZSBleGNpdGF0aW9uIGlzIGEgInJhdGUgbGV2ZWwiLCB3aGlj
aCBpcyBhbiBpbmRleCBmcm9tIDAKKyB0byA4LCBpbmNsdXNpdmUsIGNvZGVkIHVzaW5nIHRoZSBQ
REYgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX3JhdGVfbGV2ZWxfcGRmcyIvPgorIGNvcnJlc3BvbmRp
bmcgdG8gdGhlIHNpZ25hbCB0eXBlIG9mIHRoZSBjdXJyZW50IGZyYW1lIChmcm9tCisgPHhyZWYg
dGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pLgorVGhlIHJhdGUgbGV2ZWwgc2VsZWN0cyB0aGUg
UERGIHVzZWQgdG8gZGVjb2RlIHRoZSBudW1iZXIgb2YgcHVsc2VzIGluCisgdGhlIGluZGl2aWR1
YWwgc2hlbGwgYmxvY2tzLgorSXQgZG9lcyBub3QgZGlyZWN0bHkgY29udmV5IGFueSBpbmZvcm1h
dGlvbiBhYm91dCB0aGUgYml0cmF0ZSBvciB0aGUgbnVtYmVyIG9mCisgcHVsc2VzIGl0c2VsZiwg
YnV0IG1lcmVseSBjaGFuZ2VzIHRoZSBwcm9iYWJpbGl0eSBvZiB0aGUgc3ltYm9scyBpbgorIDx4
cmVmIHRhcmdldD0ic2lsa19wdWxzZV9jb3VudHMiLz4uCitMZXZlbCZuYnNwOzAgcHJvdmlkZXMg
YSBtb3JlIGVmZmljaWVudCBlbmNvZGluZyBhdCBsb3cgcmF0ZXMgZ2VuZXJhbGx5LCBhbmQKKyBs
ZXZlbCZuYnNwOzggcHJvdmlkZXMgYSBtb3JlIGVmZmljaWVudCBlbmNvZGluZyBhdCBoaWdoIHJh
dGVzIGdlbmVyYWxseSwKKyB0aG91Z2ggdGhlIG1vc3QgZWZmaWNpZW50IGxldmVsIGZvciBhIHBh
cnRpY3VsYXIgU0lMSyBmcmFtZSBtYXkgZGVwZW5kIG9uIHRoZQorIGV4YWN0IGRpc3RyaWJ1dGlv
biBvZiB0aGUgY29kZWQgc3ltYm9scy4KK0FuIGVuY29kZXIgc2hvdWxkLCBidXQgaXMgbm90IHJl
cXVpcmVkIHRvLCB1c2UgdGhlIG1vc3QgZWZmaWNpZW50IHJhdGUgbGV2ZWwuCis8L3Q+CisKKzx0
ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3JhdGVfbGV2ZWxfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3Ig
dGhlIFJhdGUgTGV2ZWwiPgorPHR0Y29sPlNpZ25hbCBUeXBlPC90dGNvbD4KKzx0dGNvbD5QREY8
L3R0Y29sPgorPGM+SW5hY3RpdmUgb3IgVW52b2ljZWQ8L2M+Cis8Yz57MTUsIDUxLCAxMiwgNDYs
IDQ1LCAxMywgMzMsIDI3LCAxNH0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPgorPGM+ezMzLCAzMCwg
MzYsIDE3LCAzNCwgNDksIDE4LCAyMSwgMTh9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8L3Nl
Y3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19wdWxzZV9jb3VudHMiIHRpdGxlPSJQdWxz
ZXMgUGVyIFNoZWxsIEJsb2NrIj4KKzx0PgorVGhlIHRvdGFsIG51bWJlciBvZiBwdWxzZXMgaW4g
ZWFjaCBvZiB0aGUgc2hlbGwgYmxvY2tzIGZvbGxvd3MgdGhlIHJhdGUgbGV2ZWwuCitUaGUgcHVs
c2UgY291bnRzIGZvciBhbGwgb2YgdGhlIHNoZWxsIGJsb2NrcyBhcmUgY29kZWQgY29uc2VjdXRp
dmVseSwgYmVmb3JlCisgdGhlIGNvbnRlbnQgb2YgYW55IG9mIHRoZSBibG9ja3MuCitFYWNoIGJs
b2NrIG1heSBoYXZlIGFueXdoZXJlIGZyb20gMCB0byAxNiBwdWxzZXMsIGluY2x1c2l2ZSwgY29k
ZWQgdXNpbmcgdGhlCisgMTgtZW50cnkgUERGIGluIDx4cmVmIHRhcmdldD0ic2lsa19wdWxzZV9j
b3VudF9wZGZzIi8+IGNvcnJlc3BvbmRpbmcgdG8gdGhlCisgcmF0ZSBsZXZlbCBmcm9tIDx4cmVm
IHRhcmdldD0ic2lsa19yYXRlX2xldmVsIi8+LgorVGhlIHNwZWNpYWwgdmFsdWUgMTcgaW5kaWNh
dGVzIHRoYXQgdGhpcyBibG9jayBoYXMgb25lIG9yIG1vcmUgYWRkaXRpb25hbAorIExTQnMgdG8g
ZGVjb2RlIGZvciBlYWNoIGNvZWZmaWNpZW50LgorSWYgdGhlIGRlY29kZXIgZW5jb3VudGVycyB0
aGlzIHZhbHVlLCBpdCBkZWNvZGVzIGFub3RoZXIgdmFsdWUgZm9yIHRoZSBhY3R1YWwKKyBwdWxz
ZSBjb3VudCBvZiB0aGUgYmxvY2ssIGJ1dCB1c2VzIHRoZSBQREYgY29ycmVzcG9uZGluZyB0byB0
aGUgc3BlY2lhbCByYXRlCisgbGV2ZWwmbmJzcDs5IGluc3RlYWQgb2YgdGhlIG5vcm1hbCByYXRl
IGxldmVsLgorVGhpcyBwcm9jZXNzIHJlcGVhdHMgdW50aWwgdGhlIGRlY29kZXIgcmVhZHMgYSB2
YWx1ZSBsZXNzIHRoYW4gMTcsIGFuZCBpdCB0aGVuCisgc2V0cyB0aGUgbnVtYmVyIG9mIGV4dHJh
IExTQnMgdXNlZCB0byB0aGUgbnVtYmVyIG9mIDE3J3MgZGVjb2RlZCBmb3IgdGhhdAorIGJsb2Nr
LgorSWYgaXQgcmVhZHMgdGhlIHZhbHVlIDE3IHRlbiB0aW1lcywgdGhlbiB0aGUgbmV4dCBpdGVy
YXRpb24gdXNlcyB0aGUgc3BlY2lhbAorIHJhdGUgbGV2ZWwmbmJzcDsxMCBpbnN0ZWFkIG9mIDku
CitUaGUgcHJvYmFiaWxpdHkgb2YgZGVjb2RpbmcgYSAxNyB3aGVuIHVzaW5nIHRoZSBQREYgZm9y
IHJhdGUgbGV2ZWwmbmJzcDsxMCBpcworIHplcm8sIGVuc3VyaW5nIHRoYXQgdGhlIG51bWJlciBv
ZiBMU0JzIGZvciBhIGJsb2NrIHdpbGwgbm90IGV4Y2VlZCAxMC4KK1RoZSBjdW11bGF0aXZlIGRp
c3RyaWJ1dGlvbiBmb3IgcmF0ZSBsZXZlbCZuYnNwOzEwIGlzIGp1c3QgYSBzaGlmdGVkIHZlcnNp
b24gb2YKKyB0aGF0IGZvciA5IGFuZCB0aHVzIGRvZXMgbm90IHJlcXVpcmUgYW55IGFkZGl0aW9u
YWwgc3RvcmFnZS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfcHVsc2VfY291bnRf
cGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgdGhlIFB1bHNlIENvdW50Ij4KKzx0dGNvbD5SYXRlIExl
dmVsPC90dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29sPgorPGM+MDwvYz4KKzxjPnsxMzEsIDc0LCAy
NSwgOCwgMywgMywgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMX0vMjU2PC9jPgor
PGM+MTwvYz4KKzxjPns1OCwgOTMsIDYwLCAyMywgNywgMywgMSwgMSwgMSwgMSwgMSwgMSwgMSwg
MSwgMSwgMSwgMSwgMX0vMjU2PC9jPgorPGM+MjwvYz4KKzxjPns0MywgNTEsIDQ2LCAzMywgMjQs
IDE2LCAxMSwgOCwgNiwgMywgMywgMywgMiwgMSwgMSwgMiwgMSwgMn0vMjU2PC9jPgorPGM+Mzwv
Yz4KKzxjPnsxNywgNTIsIDcxLCA1NywgMzEsIDEyLCA1LCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAx
LCAxLCAxLCAxfS8yNTY8L2M+Cis8Yz40PC9jPgorPGM+ezYsIDIxLCA0MSwgNTMsIDQ5LCAzNSwg
MjEsIDExLCA2LCAzLCAyLCAyLCAxLCAxLCAxLCAxLCAxLCAxfS8yNTY8L2M+Cis8Yz41PC9jPgor
PGM+ezcsIDE0LCAyMiwgMjgsIDI5LCAyOCwgMjUsIDIwLCAxNywgMTMsIDExLCA5LCA3LCA1LCA0
LCA0LCAzLCAxMH0vMjU2PC9jPgorPGM+NjwvYz4KKzxjPnsyLCA1LCAxNCwgMjksIDQyLCA0Niwg
NDEsIDMxLCAxOSwgMTEsIDYsIDMsIDIsIDEsIDEsIDEsIDEsIDF9LzI1NjwvYz4KKzxjPjc8L2M+
Cis8Yz57MSwgMiwgNCwgMTAsIDE5LCAyOSwgMzUsIDM3LCAzNCwgMjgsIDIwLCAxNCwgOCwgNSwg
NCwgMiwgMiwgMn0vMjU2PC9jPgorPGM+ODwvYz4KKzxjPnsxLCAyLCAyLCA1LCA5LCAxNCwgMjAs
IDI0LCAyNywgMjgsIDI2LCAyMywgMjAsIDE1LCAxMSwgOCwgNiwgMTV9LzI1NjwvYz4KKzxjPjk8
L2M+Cis8Yz57MSwgMSwgMSwgNiwgMjcsIDU4LCA1NiwgMzksIDI1LCAxNCwgMTAsIDYsIDMsIDMs
IDIsIDEsIDEsIDJ9LzI1NjwvYz4KKzxjPjEwPC9jPgorPGM+ezIsIDEsIDYsIDI3LCA1OCwgNTYs
IDM5LCAyNSwgMTQsIDEwLCA2LCAzLCAzLCAyLCAxLCAxLCAyLCAwfS8yNTY8L2M+Cis8L3RleHR0
YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfcHVsc2VfbG9jYXRp
b25zIiB0aXRsZT0iUHVsc2UgTG9jYXRpb24gRGVjb2RpbmciPgorPHQ+CitUaGUgbG9jYXRpb25z
IG9mIHRoZSBwdWxzZXMgaW4gZWFjaCBzaGVsbCBibG9jayBmb2xsb3cgdGhlIHB1bHNlIGNvdW50
cywKKyBhcyBkZWNvZGVkIGJ5IHNpbGtfc2hlbGxfZGVjb2RlcigpIChzaGVsbF9jb2Rlci5jKS4K
K0FzIHdpdGggdGhlIHB1bHNlIGNvdW50cywgdGhlc2UgbG9jYXRpb25zIGFyZSBjb2RlZCBmb3Ig
YWxsIHRoZSBzaGVsbCBibG9ja3MKKyBiZWZvcmUgYW55IG9mIHRoZSByZW1haW5pbmcgaW5mb3Jt
YXRpb24gZm9yIGVhY2ggYmxvY2suCitVbmxpa2UgbWFueSBvdGhlciBjb2RlY3MsIFNJTEsgcGxh
Y2VzIG5vIHJlc3RyaWN0aW9uIG9uIHRoZSBkaXN0cmlidXRpb24gb2YKKyBwdWxzZXMgd2l0aGlu
IGEgc2hlbGwgYmxvY2suCitBbGwgb2YgdGhlIHB1bHNlcyBtYXkgYmUgcGxhY2VkIGluIGEgc2lu
Z2xlIGxvY2F0aW9uLCBvciBlYWNoIG9uZSBpbiBhIHVuaXF1ZQorIGxvY2F0aW9uLCBvciBhbnl0
aGluZyBpbiBiZXR3ZWVuLgorPC90PgorCis8dD4KK1RoZSBsb2NhdGlvbiBvZiBwdWxzZXMgaXMg
Y29kZWQgYnkgcmVjdXJzaXZlbHkgcGFydGl0aW9uaW5nIGVhY2ggYmxvY2sgaW50bworIGhhbHZl
cywgYW5kIGNvZGluZyBob3cgbWFueSBwdWxzZXMgZmFsbCBvbiB0aGUgbGVmdCBzaWRlIG9mIHRo
ZSBzcGxpdC4KK0FsbCByZW1haW5pbmcgcHVsc2VzIG11c3QgZmFsbCBvbiB0aGUgcmlnaHQgc2lk
ZSBvZiB0aGUgc3BsaXQuCitUaGUgcHJvY2VzcyB0aGVuIHJlY3Vyc2VzIGludG8gdGhlIGxlZnQg
aGFsZiwgYW5kIGFmdGVyIHRoYXQgcmV0dXJucywgdGhlCisgcmlnaHQgaGFsZiAocHJlb3JkZXIg
dHJhdmVyc2FsKS4KK1RoZSBQREYgdG8gdXNlIGlzIGNob3NlbiBieSB0aGUgc2l6ZSBvZiB0aGUg
Y3VycmVudCBwYXJ0aXRpb24gKDE2LCA4LCA0LCBvciAyKQorIGFuZCB0aGUgbnVtYmVyIG9mIHB1
bHNlcyBpbiB0aGUgcGFydGl0aW9uICgxIHRvIDE2LCBpbmNsdXNpdmUpLgorVGFibGVzJm5ic3A7
PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfc2hlbGxfY29kZTNfcGRmcyIvPgor
IHRocm91Z2gmbmJzcDs8eHJlZiBmb3JtYXQ9ImNvdW50ZXIiIHRhcmdldD0ic2lsa19zaGVsbF9j
b2RlMF9wZGZzIi8+IGxpc3QgdGhlCisgUERGcyB1c2VkIGZvciBlYWNoIHBhcnRpdGlvbiBzaXpl
IGFuZCBwdWxzZSBjb3VudC4KK1RoaXMgcHJvY2VzcyBza2lwcyBwYXJ0aXRpb25zIHdpdGhvdXQg
YW55IHB1bHNlcywgaS5lLiwgd2hlcmUgdGhlIGluaXRpYWwgcHVsc2UKKyBjb3VudCBmcm9tIDx4
cmVmIHRhcmdldD0ic2lsa19wdWxzZV9jb3VudHMiLz4gd2FzIHplcm8sIG9yIHdoZXJlIHRoZSBz
cGxpdCBpbgorIHRoZSBwcmlvciBsZXZlbCBpbmRpY2F0ZWQgdGhhdCBhbGwgb2YgdGhlIHB1bHNl
cyBmZWxsIG9uIHRoZSBvdGhlciBzaWRlLgorVGhlc2UgcGFydGl0aW9ucyBoYXZlIG5vdGhpbmcg
dG8gY29kZSwgc28gdGhleSByZXF1aXJlIG5vIFBERi4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNo
b3I9InNpbGtfc2hlbGxfY29kZTNfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgUHVsc2UgQ291bnQg
U3BsaXQsIDE2IFNhbXBsZSBQYXJ0aXRpb25zIj4KKzx0dGNvbD5QdWxzZSBDb3VudDwvdHRjb2w+
Cis8dHRjb2w+UERGPC90dGNvbD4KKyA8Yz4xPC9jPiA8Yz57MTI2LCAxMzB9LzI1NjwvYz4KKyA8
Yz4yPC9jPiA8Yz57NTYsIDE0MiwgNTh9LzI1NjwvYz4KKyA8Yz4zPC9jPiA8Yz57MjUsIDEwMSwg
MTA0LCAyNn0vMjU2PC9jPgorIDxjPjQ8L2M+IDxjPnsxMiwgNjAsIDEwOCwgNjQsIDEyfS8yNTY8
L2M+CisgPGM+NTwvYz4gPGM+ezcsIDM1LCA4NCwgODcsIDM3LCA2fS8yNTY8L2M+CisgPGM+Njwv
Yz4gPGM+ezQsIDIwLCA1OSwgODYsIDYzLCAyMSwgM30vMjU2PC9jPgorIDxjPjc8L2M+IDxjPnsz
LCAxMiwgMzgsIDcyLCA3NSwgNDIsIDEyLCAyfS8yNTY8L2M+CisgPGM+ODwvYz4gPGM+ezIsIDgs
IDI1LCA1NCwgNzMsIDU5LCAyNywgNywgMX0vMjU2PC9jPgorIDxjPjk8L2M+IDxjPnsyLCA1LCAx
NywgMzksIDYzLCA2NSwgNDIsIDE4LCA0LCAxfS8yNTY8L2M+Cis8Yz4xMDwvYz4gPGM+ezEsIDQs
IDEyLCAyOCwgNDksIDYzLCA1NCwgMzAsIDExLCAzLCAxfS8yNTY8L2M+Cis8Yz4xMTwvYz4gPGM+
ezEsIDQsIDgsIDIwLCAzNywgNTUsIDU3LCA0MSwgMjIsIDgsIDIsIDF9LzI1NjwvYz4KKzxjPjEy
PC9jPiA8Yz57MSwgMywgNywgMTUsIDI4LCA0NCwgNTMsIDQ4LCAzMywgMTYsIDYsIDEsIDF9LzI1
NjwvYz4KKzxjPjEzPC9jPiA8Yz57MSwgMiwgNiwgMTIsIDIxLCAzNSwgNDcsIDQ4LCA0MCwgMjUs
IDEyLCA1LCAxLCAxfS8yNTY8L2M+Cis8Yz4xNDwvYz4gPGM+ezEsIDEsIDQsIDEwLCAxNywgMjcs
IDM3LCA0NywgNDMsIDMzLCAyMSwgOSwgNCwgMSwgMX0vMjU2PC9jPgorPGM+MTU8L2M+IDxjPnsx
LCAxLCAxLCA4LCAxNCwgMjIsIDMzLCA0MCwgNDMsIDM4LCAyOCwgMTYsIDgsIDEsIDEsIDF9LzI1
NjwvYz4KKzxjPjE2PC9jPiA8Yz57MSwgMSwgMSwgMSwgMTMsIDE4LCAyNywgMzYsIDQxLCA0MSwg
MzQsIDI0LCAxNCwgMSwgMSwgMSwgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFi
bGUgYW5jaG9yPSJzaWxrX3NoZWxsX2NvZGUyX3BkZnMiCisgdGl0bGU9IlBERnMgZm9yIFB1bHNl
IENvdW50IFNwbGl0LCA4IFNhbXBsZSBQYXJ0aXRpb25zIj4KKzx0dGNvbD5QdWxzZSBDb3VudDwv
dHRjb2w+Cis8dHRjb2w+UERGPC90dGNvbD4KKyA8Yz4xPC9jPiA8Yz57MTI3LCAxMjl9LzI1Njwv
Yz4KKyA8Yz4yPC9jPiA8Yz57NTMsIDE0OSwgNTR9LzI1NjwvYz4KKyA8Yz4zPC9jPiA8Yz57MjIs
IDEwNSwgMTA2LCAyM30vMjU2PC9jPgorIDxjPjQ8L2M+IDxjPnsxMSwgNjEsIDExMSwgNjMsIDEw
fS8yNTY8L2M+CisgPGM+NTwvYz4gPGM+ezYsIDM1LCA4NiwgODgsIDM2LCA1fS8yNTY8L2M+Cisg
PGM+NjwvYz4gPGM+ezQsIDIwLCA1OSwgODcsIDYyLCAyMSwgM30vMjU2PC9jPgorIDxjPjc8L2M+
IDxjPnszLCAxMywgNDAsIDcxLCA3MywgNDEsIDEzLCAyfS8yNTY8L2M+CisgPGM+ODwvYz4gPGM+
ezMsIDksIDI3LCA1MywgNzAsIDU2LCAyOCwgOSwgMX0vMjU2PC9jPgorIDxjPjk8L2M+IDxjPnsz
LCA4LCAxOSwgMzcsIDU3LCA2MSwgNDQsIDIwLCA2LCAxfS8yNTY8L2M+Cis8Yz4xMDwvYz4gPGM+
ezMsIDcsIDE1LCAyOCwgNDQsIDU0LCA0OSwgMzMsIDE3LCA1LCAxfS8yNTY8L2M+Cis8Yz4xMTwv
Yz4gPGM+ezEsIDcsIDEzLCAyMiwgMzQsIDQ2LCA0OCwgMzgsIDI4LCAxNCwgNCwgMX0vMjU2PC9j
PgorPGM+MTI8L2M+IDxjPnsxLCAxLCAxMSwgMjIsIDI3LCAzNSwgNDIsIDQ3LCAzMywgMjUsIDEw
LCAxLCAxfS8yNTY8L2M+Cis8Yz4xMzwvYz4gPGM+ezEsIDEsIDYsIDE0LCAyNiwgMzcsIDQzLCA0
MywgMzcsIDI2LCAxNCwgNiwgMSwgMX0vMjU2PC9jPgorPGM+MTQ8L2M+IDxjPnsxLCAxLCA0LCAx
MCwgMjAsIDMxLCA0MCwgNDIsIDQwLCAzMSwgMjAsIDEwLCA0LCAxLCAxfS8yNTY8L2M+Cis8Yz4x
NTwvYz4gPGM+ezEsIDEsIDMsIDgsIDE2LCAyNiwgMzUsIDM4LCAzOCwgMzUsIDI2LCAxNiwgOCwg
MywgMSwgMX0vMjU2PC9jPgorPGM+MTY8L2M+IDxjPnsxLCAxLCAyLCA2LCAxMiwgMjEsIDMwLCAz
NiwgMzgsIDM2LCAzMCwgMjEsIDEyLCA2LCAyLCAxLCAxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4K
KworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfc2hlbGxfY29kZTFfcGRmcyIKKyB0aXRsZT0iUERG
cyBmb3IgUHVsc2UgQ291bnQgU3BsaXQsIDQgU2FtcGxlIFBhcnRpdGlvbnMiPgorPHR0Y29sPlB1
bHNlIENvdW50PC90dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29sPgorIDxjPjE8L2M+IDxjPnsxMjcs
IDEyOX0vMjU2PC9jPgorIDxjPjI8L2M+IDxjPns0OSwgMTU3LCA1MH0vMjU2PC9jPgorIDxjPjM8
L2M+IDxjPnsyMCwgMTA3LCAxMDksIDIwfS8yNTY8L2M+CisgPGM+NDwvYz4gPGM+ezExLCA2MCwg
MTEzLCA2MiwgMTB9LzI1NjwvYz4KKyA8Yz41PC9jPiA8Yz57NywgMzYsIDg0LCA4NywgMzYsIDZ9
LzI1NjwvYz4KKyA8Yz42PC9jPiA8Yz57NiwgMjQsIDU3LCA4MiwgNjAsIDIzLCA0fS8yNTY8L2M+
CisgPGM+NzwvYz4gPGM+ezUsIDE4LCAzOSwgNjQsIDY4LCA0MiwgMTYsIDR9LzI1NjwvYz4KKyA8
Yz44PC9jPiA8Yz57NiwgMTQsIDI5LCA0NywgNjEsIDUyLCAzMCwgMTQsIDN9LzI1NjwvYz4KKyA8
Yz45PC9jPiA8Yz57MSwgMTUsIDIzLCAzNSwgNTEsIDUwLCA0MCwgMzAsIDEwLCAxfS8yNTY8L2M+
Cis8Yz4xMDwvYz4gPGM+ezEsIDEsIDIxLCAzMiwgNDIsIDUyLCA0NiwgNDEsIDE4LCAxLCAxfS8y
NTY8L2M+Cis8Yz4xMTwvYz4gPGM+ezEsIDYsIDE2LCAyNywgMzYsIDQyLCA0MiwgMzYsIDI3LCAx
NiwgNiwgMX0vMjU2PC9jPgorPGM+MTI8L2M+IDxjPnsxLCA1LCAxMiwgMjEsIDMxLCAzOCwgNDAs
IDM4LCAzMSwgMjEsIDEyLCA1LCAxfS8yNTY8L2M+Cis8Yz4xMzwvYz4gPGM+ezEsIDMsIDksIDE3
LCAyNiwgMzQsIDM4LCAzOCwgMzQsIDI2LCAxNywgOSwgMywgMX0vMjU2PC9jPgorPGM+MTQ8L2M+
IDxjPnsxLCAzLCA3LCAxNCwgMjIsIDI5LCAzNCwgMzYsIDM0LCAyOSwgMjIsIDE0LCA3LCAzLCAx
fS8yNTY8L2M+Cis8Yz4xNTwvYz4gPGM+ezEsIDIsIDUsIDExLCAxOCwgMjUsIDMxLCAzNSwgMzUs
IDMxLCAyNSwgMTgsIDExLCA1LCAyLCAxfS8yNTY8L2M+Cis8Yz4xNjwvYz4gPGM+ezEsIDEsIDQs
IDksIDE1LCAyMSwgMjgsIDMyLCAzNCwgMzIsIDI4LCAyMSwgMTUsIDksIDQsIDEsIDF9LzI1Njwv
Yz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19zaGVsbF9jb2RlMF9w
ZGZzIgorIHRpdGxlPSJQREZzIGZvciBQdWxzZSBDb3VudCBTcGxpdCwgMiBTYW1wbGUgUGFydGl0
aW9ucyI+Cis8dHRjb2w+UHVsc2UgQ291bnQ8L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+Cisg
PGM+MTwvYz4gPGM+ezEyOCwgMTI4fS8yNTY8L2M+CisgPGM+MjwvYz4gPGM+ezQyLCAxNzIsIDQy
fS8yNTY8L2M+CisgPGM+MzwvYz4gPGM+ezIxLCAxMDcsIDEwNywgMjF9LzI1NjwvYz4KKyA8Yz40
PC9jPiA8Yz57MTIsIDYwLCAxMTIsIDYxLCAxMX0vMjU2PC9jPgorIDxjPjU8L2M+IDxjPns4LCAz
NCwgODYsIDg2LCAzNSwgN30vMjU2PC9jPgorIDxjPjY8L2M+IDxjPns4LCAyMywgNTUsIDkwLCA1
NSwgMjAsIDV9LzI1NjwvYz4KKyA8Yz43PC9jPiA8Yz57NSwgMTUsIDM4LCA3MiwgNzIsIDM2LCAx
NSwgM30vMjU2PC9jPgorIDxjPjg8L2M+IDxjPns2LCAxMiwgMjcsIDUyLCA3NywgNDcsIDIwLCAx
MCwgNX0vMjU2PC9jPgorIDxjPjk8L2M+IDxjPns2LCAxOSwgMjgsIDM1LCA0MCwgNDAsIDM1LCAy
OCwgMTksIDZ9LzI1NjwvYz4KKzxjPjEwPC9jPiA8Yz57NCwgMTQsIDIyLCAzMSwgMzcsIDQwLCAz
NywgMzEsIDIyLCAxNCwgNH0vMjU2PC9jPgorPGM+MTE8L2M+IDxjPnszLCAxMCwgMTgsIDI2LCAz
MywgMzgsIDM4LCAzMywgMjYsIDE4LCAxMCwgM30vMjU2PC9jPgorPGM+MTI8L2M+IDxjPnsyLCA4
LCAxMywgMjEsIDI5LCAzNiwgMzgsIDM2LCAyOSwgMjEsIDEzLCA4LCAyfS8yNTY8L2M+Cis8Yz4x
MzwvYz4gPGM+ezEsIDUsIDEwLCAxNywgMjUsIDMyLCAzOCwgMzgsIDMyLCAyNSwgMTcsIDEwLCA1
LCAxfS8yNTY8L2M+Cis8Yz4xNDwvYz4gPGM+ezEsIDQsIDcsIDEzLCAyMSwgMjksIDM1LCAzNiwg
MzUsIDI5LCAyMSwgMTMsIDcsIDQsIDF9LzI1NjwvYz4KKzxjPjE1PC9jPiA8Yz57MSwgMiwgNSwg
MTAsIDE3LCAyNSwgMzIsIDM2LCAzNiwgMzIsIDI1LCAxNywgMTAsIDUsIDIsIDF9LzI1NjwvYz4K
KzxjPjE2PC9jPiA8Yz57MSwgMiwgNCwgNywgMTMsIDIxLCAyOCwgMzQsIDM2LCAzNCwgMjgsIDIx
LCAxMywgNywgNCwgMiwgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gYW5jaG9yPSJzaWxrX3NoZWxsX2xzYiIgdGl0bGU9IkxTQiBEZWNvZGluZyI+Cis8
dD4KK0FmdGVyIHRoZSBkZWNvZGVyIHJlYWRzIHRoZSBwdWxzZSBsb2NhdGlvbnMgZm9yIGFsbCBi
bG9ja3MsIGl0IHJlYWRzIHRoZSBMU0JzCisgKGlmIGFueSkgZm9yIGVhY2ggYmxvY2sgaW4gdHVy
bi4KK0luc2lkZSBlYWNoIGJsb2NrLCBpdCByZWFkcyBhbGwgdGhlIExTQnMgZm9yIGVhY2ggY29l
ZmZpY2llbnQgaW4gdHVybiwgZXZlbgorIHRob3NlIHdoZXJlIG5vIHB1bHNlcyB3ZXJlIGFsbG9j
YXRlZCwgYmVmb3JlIHByb2NlZWRpbmcgdG8gdGhlIG5leHQgb25lLgorRm9yIDEwJm5ic3A7bXMg
TUIgZnJhbWVzLCBpdCByZWFkcyBMU0JzIGV2ZW4gZm9yIHRoZSBleHRyYSA4Jm5ic3A7c2FtcGxl
cyBpbgorIHRoZSBsYXN0IGJsb2NrLgorVGhlIExTQnMgYXJlIGNvZGVkIGZyb20gbW9zdCBzaWdu
aWZpY2FudCB0byBsZWFzdCBzaWduaWZpY2FudCwgYW5kIHRoZXkgYWxsIHVzZQorIHRoZSBQREYg
aW4gPHhyZWYgdGFyZ2V0PSJzaWxrX3NoZWxsX2xzYl9wZGYiLz4uCis8L3Q+CisKKzx0ZXh0dGFi
bGUgYW5jaG9yPSJzaWxrX3NoZWxsX2xzYl9wZGYiIHRpdGxlPSJQREYgZm9yIEV4Y2l0YXRpb24g
TFNCcyI+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPnsxMzYsIDEyMH0vMjU2PC9jPgorPC90ZXh0
dGFibGU+CisKKzx0PgorVGhlIG51bWJlciBvZiBMU0JzIHJlYWQgZm9yIGVhY2ggY29lZmZpY2ll
bnQgaW4gYSBibG9jayBpcyBkZXRlcm1pbmVkIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX3B1bHNl
X2NvdW50cyIvPi4KK1RoZSBtYWduaXR1ZGUgb2YgdGhlIGNvZWZmaWNpZW50IGlzIGluaXRpYWxs
eSBlcXVhbCB0byB0aGUgbnVtYmVyIG9mIHB1bHNlcworIHBsYWNlZCBhdCB0aGF0IGxvY2F0aW9u
IGluIDx4cmVmIHRhcmdldD0ic2lsa19wdWxzZV9sb2NhdGlvbnMiLz4uCitBcyBlYWNoIExTQiBp
cyBkZWNvZGVkLCB0aGUgbWFnbml0dWRlIGlzIGRvdWJsZWQsIGFuZCB0aGVuIHRoZSB2YWx1ZSBv
ZiB0aGUgTFNCCisgYWRkZWQgdG8gaXQsIHRvIG9idGFpbiBhbiB1cGRhdGVkIG1hZ25pdHVkZS4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX3NpZ25zIiB0aXRsZT0i
U2lnbiBEZWNvZGluZyI+Cis8dD4KK0FmdGVyIGRlY29kaW5nIHRoZSBwdWxzZSBsb2NhdGlvbnMg
YW5kIHRoZSBMU0JzLCB0aGUgZGVjb2RlciBrbm93cyB0aGUKKyBtYWduaXR1ZGUgb2YgZWFjaCBj
b2VmZmljaWVudCBpbiB0aGUgZXhjaXRhdGlvbi4KK0l0IHRoZW4gZGVjb2RlcyBhIHNpZ24gZm9y
IGFsbCBjb2VmZmljaWVudHMgd2l0aCBhIG5vbi16ZXJvIG1hZ25pdHVkZSwgdXNpbmcKKyBvbmUg
b2YgdGhlIFBERnMgZnJvbSA8eHJlZiB0YXJnZXQ9InNpbGtfc2lnbl9wZGZzIi8+LgorSWYgdGhl
IHZhbHVlIGRlY29kZWQgaXMgMCwgdGhlbiB0aGUgY29lZmZpY2llbnQgbWFnbml0dWRlIGlzIG5l
Z2F0ZWQuCitPdGhlcndpc2UsIGl0IHJlbWFpbnMgcG9zaXRpdmUuCis8L3Q+CisKKzx0PgorVGhl
IGRlY29kZXIgY2hvb3NlcyB0aGUgUERGIGZvciB0aGUgc2lnbiBiYXNlZCBvbiB0aGUgc2lnbmFs
IHR5cGUgYW5kCisgcXVhbnRpemF0aW9uIG9mZnNldCB0eXBlIChmcm9tIDx4cmVmIHRhcmdldD0i
c2lsa19mcmFtZV90eXBlIi8+KSBhbmQgdGhlCisgbnVtYmVyIG9mIHB1bHNlcyBpbiB0aGUgYmxv
Y2sgKGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxrX3B1bHNlX2NvdW50cyIvPikuCitUaGUgbnVtYmVy
IG9mIHB1bHNlcyBpbiB0aGUgYmxvY2sgZG9lcyBub3QgdGFrZSBpbnRvIGFjY291bnQgYW55IExT
QnMuCitNb3N0IFBERnMgYXJlIHNrZXdlZCB0b3dhcmRzIG5lZ2F0aXZlIHNpZ25zIGJlY2F1c2Ug
b2YgdGhlIHF1YW50aXphdGlvbiBvZmZzZXQsCisgYnV0IHRoZSBQREZzIGZvciB6ZXJvIHB1bHNl
cyBhcmUgaGlnaGx5IHNrZXdlZCB0b3dhcmRzIHBvc2l0aXZlIHNpZ25zLgorSWYgYSBibG9jayBj
b250YWlucyBtYW55IHBvc2l0aXZlIGNvZWZmaWNpZW50cywgaXQgaXMgc29tZXRpbWVzIGJlbmVm
aWNpYWwgdG8KKyBjb2RlIGl0IHNvbGVseSB1c2luZyBMU0JzIChpLmUuLCB3aXRoIHplcm8gcHVs
c2VzKSwgc2luY2UgdGhlIGVuY29kZXIgbWF5IGJlCisgYWJsZSB0byBzYXZlIGVub3VnaCBiaXRz
IG9uIHRoZSBzaWducyB0byBqdXN0aWZ5IHRoZSBsZXNzIGVmZmljaWVudAorIGNvZWZmaWNpZW50
IG1hZ25pdHVkZSBlbmNvZGluZy4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfc2ln
bl9wZGZzIgorIHRpdGxlPSJQREZzIGZvciBFeGNpdGF0aW9uIFNpZ25zIj4KKzx0dGNvbD5TaWdu
YWwgVHlwZTwvdHRjb2w+Cis8dHRjb2w+UXVhbnRpemF0aW9uIE9mZnNldCBUeXBlPC90dGNvbD4K
Kzx0dGNvbD5QdWxzZSBDb3VudDwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPkluYWN0
aXZlPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4wPC9jPiAgICAgICAgIDxjPnsyLCAyNTR9LzI1NjwvYz4K
KzxjPkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4xPC9jPiAgICAgICAgIDxjPnsyMDcsIDQ5
fS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+TG93PC9jPiAgPGM+MjwvYz4gICAgICAgICA8
Yz57MTg5LCA2N30vMjU2PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkxvdzwvYz4gIDxjPjM8L2M+
ICAgICAgICAgPGM+ezE3OSwgNzd9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+
ICA8Yz40PC9jPiAgICAgICAgIDxjPnsxNzQsIDgyfS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4g
PGM+TG93PC9jPiAgPGM+NTwvYz4gICAgICAgICA8Yz57MTYzLCA5M30vMjU2PC9jPgorPGM+SW5h
Y3RpdmU8L2M+IDxjPkxvdzwvYz4gIDxjPjYgb3IgbW9yZTwvYz4gPGM+ezE1NywgOTl9LzI1Njwv
Yz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5IaWdoPC9jPiA8Yz4wPC9jPiAgICAgICAgIDxjPns1OCwg
MTk4fS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+SGlnaDwvYz4gPGM+MTwvYz4gICAgICAg
ICA8Yz57MjQ1LCAxMX0vMjU2PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkhpZ2g8L2M+IDxjPjI8
L2M+ICAgICAgICAgPGM+ezIzOCwgMTh9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5IaWdo
PC9jPiA8Yz4zPC9jPiAgICAgICAgIDxjPnsyMzIsIDI0fS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwv
Yz4gPGM+SGlnaDwvYz4gPGM+NDwvYz4gICAgICAgICA8Yz57MjI1LCAzMX0vMjU2PC9jPgorPGM+
SW5hY3RpdmU8L2M+IDxjPkhpZ2g8L2M+IDxjPjU8L2M+ICAgICAgICAgPGM+ezIyMCwgMzZ9LzI1
NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5IaWdoPC9jPiA8Yz42IG9yIG1vcmU8L2M+IDxjPnsy
MTEsIDQ1fS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+TG93PC9jPiAgPGM+MDwvYz4gICAg
ICAgICA8Yz57MSwgMjU1fS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+TG93PC9jPiAgPGM+
MTwvYz4gICAgICAgICA8Yz57MjEwLCA0Nn0vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkxv
dzwvYz4gIDxjPjI8L2M+ICAgICAgICAgPGM+ezE5MCwgNjZ9LzI1NjwvYz4KKzxjPlVudm9pY2Vk
PC9jPiA8Yz5Mb3c8L2M+ICA8Yz4zPC9jPiAgICAgICAgIDxjPnsxNzgsIDc4fS8yNTY8L2M+Cis8
Yz5VbnZvaWNlZDwvYz4gPGM+TG93PC9jPiAgPGM+NDwvYz4gICAgICAgICA8Yz57MTY5LCA4N30v
MjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkxvdzwvYz4gIDxjPjU8L2M+ICAgICAgICAgPGM+
ezE2MiwgOTR9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5Mb3c8L2M+ICA8Yz42IG9yIG1v
cmU8L2M+IDxjPnsxNTIsIDEwNH0vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkhpZ2g8L2M+
IDxjPjA8L2M+ICAgICAgICAgPGM+ezQ4LCAyMDh9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8
Yz5IaWdoPC9jPiA8Yz4xPC9jPiAgICAgICAgIDxjPnsyNDIsIDE0fS8yNTY8L2M+Cis8Yz5VbnZv
aWNlZDwvYz4gPGM+SGlnaDwvYz4gPGM+MjwvYz4gICAgICAgICA8Yz57MjM1LCAyMX0vMjU2PC9j
PgorPGM+VW52b2ljZWQ8L2M+IDxjPkhpZ2g8L2M+IDxjPjM8L2M+ICAgICAgICAgPGM+ezIyNCwg
MzJ9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5IaWdoPC9jPiA8Yz40PC9jPiAgICAgICAg
IDxjPnsyMTQsIDQyfS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+SGlnaDwvYz4gPGM+NTwv
Yz4gICAgICAgICA8Yz57MjA1LCA1MX0vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkhpZ2g8
L2M+IDxjPjYgb3IgbW9yZTwvYz4gPGM+ezE5MCwgNjZ9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4g
ICA8Yz5Mb3c8L2M+ICA8Yz4wPC9jPiAgICAgICAgIDxjPnsxLCAyNTV9LzI1NjwvYz4KKzxjPlZv
aWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICA8Yz4xPC9jPiAgICAgICAgIDxjPnsxNjIsIDk0fS8yNTY8
L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+TG93PC9jPiAgPGM+MjwvYz4gICAgICAgICA8Yz57MTUy
LCAxMDR9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICA8Yz4zPC9jPiAgICAg
ICAgIDxjPnsxNDcsIDEwOX0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkxvdzwvYz4gIDxj
PjQ8L2M+ICAgICAgICAgPGM+ezE0NCwgMTEyfS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+
TG93PC9jPiAgPGM+NTwvYz4gICAgICAgICA8Yz57MTQxLCAxMTV9LzI1NjwvYz4KKzxjPlZvaWNl
ZDwvYz4gICA8Yz5Mb3c8L2M+ICA8Yz42IG9yIG1vcmU8L2M+IDxjPnsxMzgsIDExOH0vMjU2PC9j
PgorPGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+IDxjPjA8L2M+ICAgICAgICAgPGM+ezgsIDI0
OH0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+IDxjPjE8L2M+ICAgICAgICAg
PGM+ezIwMywgNTN9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5IaWdoPC9jPiA8Yz4yPC9j
PiAgICAgICAgIDxjPnsxODcsIDY5fS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+SGlnaDwv
Yz4gPGM+MzwvYz4gICAgICAgICA8Yz57MTc2LCA4MH0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAg
IDxjPkhpZ2g8L2M+IDxjPjQ8L2M+ICAgICAgICAgPGM+ezE2OCwgODh9LzI1NjwvYz4KKzxjPlZv
aWNlZDwvYz4gICA8Yz5IaWdoPC9jPiA8Yz41PC9jPiAgICAgICAgIDxjPnsxNjEsIDk1fS8yNTY8
L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+SGlnaDwvYz4gPGM+NiBvciBtb3JlPC9jPiA8Yz57MTU0
LCAxMDJ9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFu
Y2hvcj0ic2lsa19leGNpdGF0aW9uX3JlY29uc3RydWN0aW9uIgorIHRpdGxlPSJSZWNvbnN0cnVj
dGluZyB0aGUgRXhjaXRhdGlvbiI+CisKKzx0PgorQWZ0ZXIgdGhlIHNpZ25zIGhhdmUgYmVlbiBy
ZWFkLCB0aGVyZSBpcyBlbm91Z2ggaW5mb3JtYXRpb24gdG8gcmVjb25zdHJ1Y3QgdGhlCisgY29t
cGxldGUgZXhjaXRhdGlvbiBzaWduYWwuCitUaGlzIHJlcXVpcmVzIGFkZGluZyBhIGNvbnN0YW50
IHF1YW50aXphdGlvbiBvZmZzZXQgdG8gZWFjaCBub24temVybyBzYW1wbGUsCisgYW5kIHRoZW4g
cHNldWRvcmFuZG9tbHkgaW52ZXJ0aW5nIGFuZCBvZmZzZXR0aW5nIGV2ZXJ5IHNhbXBsZS4KK1Ro
ZSBjb25zdGFudCBxdWFudGl6YXRpb24gb2Zmc2V0IHZhcmllcyBkZXBlbmRpbmcgb24gdGhlIHNp
Z25hbCB0eXBlIGFuZAorIHF1YW50aXphdGlvbiBvZmZzZXQgdHlwZSAoc2VlIDx4cmVmIHRhcmdl
dD0ic2lsa19mcmFtZV90eXBlIi8+KS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtf
cXVhbnRpemF0aW9uX29mZnNldHMiCisgdGl0bGU9IkV4Y2l0YXRpb24gUXVhbnRpemF0aW9uIE9m
ZnNldHMiPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5TaWduYWwgVHlwZTwvdHRjb2w+Cis8dHRjb2wg
YWxpZ249ImxlZnQiPlF1YW50aXphdGlvbiBPZmZzZXQgVHlwZTwvdHRjb2w+Cis8dHRjb2wgYWxp
Z249InJpZ2h0Ij5RdWFudGl6YXRpb24gT2Zmc2V0IChRMjMpPC90dGNvbD4KKzxjPkluYWN0aXZl
PC9jPiA8Yz5Mb3c8L2M+ICA8Yz4yNTwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5IaWdoPC9jPiA8
Yz42MDwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4yNTwvYz4KKzxjPlVudm9p
Y2VkPC9jPiA8Yz5IaWdoPC9jPiA8Yz42MDwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+
ICAgPGM+ODwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5IaWdoPC9jPiA8Yz4yNTwvYz4KKzwvdGV4
dHRhYmxlPgorCis8dD4KK0xldCBlX3Jhd1tpXSBiZSB0aGUgcmF3IGV4Y2l0YXRpb24gdmFsdWUg
YXQgcG9zaXRpb24gaSwgd2l0aCBhIG1hZ25pdHVkZQorIGNvbXBvc2VkIG9mIHRoZSBwdWxzZXMg
YXQgdGhhdCBsb2NhdGlvbiAoc2VlCisgPHhyZWYgdGFyZ2V0PSJzaWxrX3B1bHNlX2xvY2F0aW9u
cyIvPikgY29tYmluZWQgd2l0aCBhbnkgYWRkaXRpb25hbCBMU0JzIChzZWUKKyA8eHJlZiB0YXJn
ZXQ9InNpbGtfc2hlbGxfbHNiIi8+KSwgYW5kIHdpdGggdGhlIGNvcnJlc3BvbmRpbmcgc2lnbiBk
ZWNvZGVkIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX3NpZ25zIi8+LgorQWRkaXRpb25hbGx5LCBs
ZXQgc2VlZCBiZSB0aGUgY3VycmVudCBwc2V1ZG9yYW5kb20gc2VlZCwgd2hpY2ggaXMgaW5pdGlh
bGl6ZWQKKyB0byB0aGUgdmFsdWUgZGVjb2RlZCBmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19zZWVk
Ii8+IGZvciB0aGUgZmlyc3Qgc2FtcGxlIGluCisgdGhlIGN1cnJlbnQgU0lMSyBmcmFtZSwgYW5k
IHVwZGF0ZWQgZm9yIGVhY2ggc3Vic2VxdWVudCBzYW1wbGUgYWNjb3JkaW5nIHRvCisgdGhlIHBy
b2NlZHVyZSBiZWxvdy4KK0ZpbmFsbHksIGxldCBvZmZzZXRfUTIzIGJlIHRoZSBxdWFudGl6YXRp
b24gb2Zmc2V0IGZyb20KKyA8eHJlZiB0YXJnZXQ9InNpbGtfcXVhbnRpemF0aW9uX29mZnNldHMi
Lz4uCitUaGVuIHRoZSBmb2xsb3dpbmcgcHJvY2VkdXJlIHByb2R1Y2VzIHRoZSBmaW5hbCByZWNv
bnN0cnVjdGVkIGV4Y2l0YXRpb24gdmFsdWUsCisgZV9RMjNbaV06Cis8ZmlndXJlIGFsaWduPSJj
ZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitlX1EyM1tpXSA9IChl
X3Jhd1tpXSA8PCA4KSAtIHNpZ24oZV9yYXdbaV0pKjIwICsgb2Zmc2V0X1EyMzsKKyAgICBzZWVk
ID0gKDE5NjMxNDE2NSpzZWVkICsgOTA3NjMzNTE1KSAmIDB4RkZGRkZGRkY7CitlX1EyM1tpXSA9
IChzZWVkICYgMHg4MDAwMDAwMCkgPyAtZV9RMjNbaV0gOiBlX1EyM1tpXTsKKyAgICBzZWVkID0g
KHNlZWQgKyBlX3Jhd1tpXSkgJiAweEZGRkZGRkZGOworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+
CitXaGVuIGVfcmF3W2ldIGlzIHplcm8sIHNpZ24oKSByZXR1cm5zIDAgYnkgdGhlIGRlZmluaXRp
b24gaW4KKyA8eHJlZiB0YXJnZXQ9InNpZ24iLz4sIHNvIHRoZSBmYWN0b3Igb2YgMjAgZG9lcyBu
b3QgZ2V0IGFkZGVkLgorVGhlIGZpbmFsIGVfUTIzW2ldIHZhbHVlIG1heSByZXF1aXJlIG1vcmUg
dGhhbiAxNiBiaXRzIHBlciBzYW1wbGUsIGJ1dCB3aWxsIG5vdAorIHJlcXVpcmUgbW9yZSB0aGFu
IDIzLCBpbmNsdWRpbmcgdGhlIHNpZ24uCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9u
PgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfZnJhbWVfcmVjb25zdHJ1Y3Rpb24iIHRvYz0iaW5j
bHVkZSIKKyB0aXRsZT0iU0lMSyBGcmFtZSBSZWNvbnN0cnVjdGlvbiI+CisKKzx0PgorVGhlIHJl
bWFpbmRlciBvZiB0aGUgcmVjb25zdHJ1Y3Rpb24gcHJvY2VzcyBmb3IgdGhlIGZyYW1lIGRvZXMg
bm90IG5lZWQgdG8gYmUKKyBiaXQtZXhhY3QsIGFzIHNtYWxsIGVycm9ycyBzaG91bGQgb25seSBp
bnRyb2R1Y2UgcHJvcG9ydGlvbmFsbHkgc21hbGwKKyBkaXN0b3J0aW9ucy4KK0FsdGhvdWdoIHRo
ZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gb25seSBpbmNsdWRlcyBhIGZpeGVkLXBvaW50IHZl
cnNpb24gb2YKKyB0aGUgcmVtYWluaW5nIHN0ZXBzLCB0aGlzIHNlY3Rpb24gZGVzY3JpYmVzIHRo
ZW0gaW4gdGVybXMgb2YgYSBmbG9hdGluZy1wb2ludAorIHZlcnNpb24gZm9yIHNpbXBsaWNpdHku
CitUaGlzIHByb2R1Y2VzIGEgc2lnbmFsIHdpdGggYSBub21pbmFsIHJhbmdlIG9mIC0xLjAgdG8g
MS4wLgorPC90PgorCis8dD4KK3NpbGtfZGVjb2RlX2NvcmUoKSAoZGVjb2RlX2NvcmUuYykgY29u
dGFpbnMgdGhlIGNvZGUgZm9yIHRoZSBtYWluCisgcmVjb25zdHJ1Y3Rpb24gcHJvY2Vzcy4KK0l0
IHByb2NlZWRzIHN1YmZyYW1lLWJ5LXN1YmZyYW1lLCBzaW5jZSBxdWFudGl6YXRpb24gZ2FpbnMs
IExUUCBwYXJhbWV0ZXJzLCBhbmQKKyAoaW4gMjAmbmJzcDttcyBTSUxLIGZyYW1lcykgTFBDIGNv
ZWZmaWNpZW50cyBjYW4gdmFyeSBmcm9tIG9uZSB0byB0aGUKKyBuZXh0LgorPC90PgorCis8dD4K
K0xldCBhX1ExMltrXSBiZSB0aGUgTFBDIGNvZWZmaWNpZW50cyBmb3IgdGhlIGN1cnJlbnQgc3Vi
ZnJhbWUuCitJZiB0aGlzIGlzIHRoZSBmaXJzdCBvciBzZWNvbmQgc3ViZnJhbWUgb2YgYSAyMCZu
YnNwO21zIFNJTEsgZnJhbWUgYW5kIHRoZSBMU0YKKyBpbnRlcnBvbGF0aW9uIGZhY3Rvciwgd19R
MiAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX2ludGVycG9sYXRpb24iLz4pLCBpcworIGxl
c3MgdGhhbiA0LCB0aGVuIHRoZXNlIGNvcnJlc3BvbmQgdG8gdGhlIGZpbmFsIExQQyBjb2VmZmlj
aWVudHMgcHJvZHVjZWQgYnkKKyA8eHJlZiB0YXJnZXQ9InNpbGtfbHBjX2dhaW5fbGltaXQiLz4g
ZnJvbSB0aGUgaW50ZXJwb2xhdGVkIExTRiBjb2VmZmljaWVudHMsCisgbjFfUTE1W2tdIChjb21w
dXRlZCBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9pbnRlcnBvbGF0aW9uIi8+KS4KK090aGVy
d2lzZSwgdGhleSBjb3JyZXNwb25kIHRvIHRoZSBmaW5hbCBMUEMgY29lZmZpY2llbnRzIHByb2R1
Y2VkIGZyb20gdGhlCisgdW5pbnRlcnBvbGF0ZWQgTFNGIGNvZWZmaWNpZW50cyBmb3IgdGhlIGN1
cnJlbnQgZnJhbWUsIG4yX1ExNVtrXS4KKzwvdD4KKworPHQ+CitBbHNvLCBsZXQgbiBiZSB0aGUg
bnVtYmVyIG9mIHNhbXBsZXMgaW4gYSBzdWJmcmFtZSAoNDAgZm9yIE5CLCA2MCBmb3IgTUIsIGFu
ZAorIDgwIGZvciBXQiksIHMgYmUgdGhlIGluZGV4IG9mIHRoZSBjdXJyZW50IHN1YmZyYW1lIGlu
IHRoaXMgU0lMSyBmcmFtZSAoMCBvciAxCisgZm9yIDEwJm5ic3A7bXMgZnJhbWVzLCBvciAwIHRv
IDMgZm9yIDIwJm5ic3A7bXMgZnJhbWVzKSwgYW5kIGogYmUgdGhlIGluZGV4IG9mCisgdGhlIGZp
cnN0IHNhbXBsZSBpbiB0aGUgcmVzaWR1YWwgY29ycmVzcG9uZGluZyB0byB0aGUgY3VycmVudCBz
dWJmcmFtZS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2x0cF9zeW50aGVzaXMiIHRp
dGxlPSJMVFAgU3ludGhlc2lzIj4KKzx0PgorVm9pY2VkIFNJTEsgZnJhbWVzIChzZWUgPHhyZWYg
dGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pIHBhc3MgdGhlIGV4Y2l0YXRpb24KKyB0aHJvdWdo
IGFuIExUUCBmaWx0ZXIgdXNpbmcgdGhlIHBhcmFtZXRlcnMgZGVjb2RlZCBpbgorIDx4cmVmIHRh
cmdldD0ic2lsa19sdHBfcGFyYW1zIi8+IHRvIHByb2R1Y2UgYW4gTFBDIHJlc2lkdWFsLgorVGhl
IExUUCBmaWx0ZXIgcmVxdWlyZXMgTFBDIHJlc2lkdWFsIHZhbHVlcyBmcm9tIGJlZm9yZSB0aGUg
Y3VycmVudCBzdWJmcmFtZSBhcworIGlucHV0LgorSG93ZXZlciwgc2luY2UgdGhlIExQQyBjb2Vm
ZmljaWVudHMgbWF5IGhhdmUgY2hhbmdlZCwgaXQgb2J0YWlucyB0aGlzIHJlc2lkdWFsCisgYnkg
InJld2hpdGVuaW5nIiB0aGUgY29ycmVzcG9uZGluZyBvdXRwdXQgc2lnbmFsIHVzaW5nIHRoZSBM
UEMgY29lZmZpY2llbnRzCisgZnJvbSB0aGUgY3VycmVudCBzdWJmcmFtZS4KK0xldCBvdXRbaV0g
Zm9yCisgKGombmJzcDstJm5ic3A7cGl0Y2hfbGFnc1tzXSZuYnNwOy0mbmJzcDtkX0xQQyZuYnNw
Oy0mbmJzcDsyKSZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsmbmJzcDtqCisgYmUgdGhlIGZ1
bGx5IHJlY29uc3RydWN0ZWQgb3V0cHV0IHNpZ25hbCBmcm9tIHRoZSBsYXN0CisgKHBpdGNoX2xh
Z3Nbc10mbmJzcDsrJm5ic3A7ZF9MUEMmbmJzcDsrJm5ic3A7Mikgc2FtcGxlcyBvZiBwcmV2aW91
cyBzdWJmcmFtZXMKKyAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19scGNfc3ludGhlc2lzIi8+KSwg
d2hlcmUgcGl0Y2hfbGFnc1tzXSBpcyB0aGUgcGl0Y2gKKyBsYWcgZm9yIHRoZSBjdXJyZW50IHN1
YmZyYW1lIGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9sYWdzIi8+LgorRHVyaW5nIHJlY29u
c3RydWN0aW9uIG9mIHRoZSBmaXJzdCBzdWJmcmFtZSBmb3IgdGhpcyBjaGFubmVsIGFmdGVyIGVp
dGhlcgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+QW4gdW5jb2RlZCByZWd1bGFyIFNJTEsg
ZnJhbWUgKGlmIHRoaXMgaXMgdGhlIHNpZGUgY2hhbm5lbCksIG9yPC90PgorPHQ+QSBkZWNvZGVy
IHJlc2V0IChzZWUgPHhyZWYgdGFyZ2V0PSJkZWNvZGVyLXJlc2V0Ii8+KSw8L3Q+Cis8L2xpc3Q+
Cisgb3V0W10gaXMgcmV3aGl0ZW5lZCBpbnRvIGFuIExQQyByZXNpZHVhbCwKKyByZXNbaV0sIHZp
YQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NE
QVRBWworICAgICAgICAgNC4wKkxUUF9zY2FsZV9RMTQKK3Jlc1tpXSA9IC0tLS0tLS0tLS0tLS0t
LS0tICogY2xhbXAoLTEuMCwKKyAgICAgICAgICAgIGdhaW5fUTE2W3NdCisKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZF9MUEMtMQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIF9fICAgICAgICAgICAgICBhX1ExMltrXQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG91dFtpXSAtIFwgIG91dFtpLWstMV0gKiAtLS0tLS0tLSwgMS4wKSAuCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL18gICAgICAgICAgICAgICA0MDk2LjAK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrPTAKK11dPjwvYXJ0d29yaz4K
KzwvZmlndXJlPgorVGhpcyByZXF1aXJlcyBzdG9yYWdlIHRvIGJ1ZmZlciB1cCB0byAzMDYgdmFs
dWVzIG9mIG91dFtpXSBmcm9tIHByZXZpb3VzCisgc3ViZnJhbWVzLgorVGhpcyBjb3JyZXNwb25k
cyB0byBXQiB3aXRoIGEgbWF4aW11bSBwaXRjaCBsYWcgb2YKKyAxOCZuYnNwO21zJm5ic3A7KiZu
YnNwOzE2Jm5ic3A7a0h6IHNhbXBsZXMsIHBsdXMgMTYgc2FtcGxlcyBmb3IgZF9MUEMsIHBsdXMg
MgorIHNhbXBsZXMgZm9yIHRoZSB3aWR0aCBvZiB0aGUgTFRQIGZpbHRlci4KKzwvdD4KKworPHQ+
CitMZXQgZV9RMjNbaV0gZm9yIGombmJzcDsmbHQ7PSZuYnNwO2kmbmJzcDsmbHQ7Jm5ic3A7KGom
bmJzcDsrJm5ic3A7bikgYmUgdGhlCisgZXhjaXRhdGlvbiBmb3IgdGhlIGN1cnJlbnQgc3ViZnJh
bWUsIGFuZCBiX1E3W2tdIGZvcgorIDAmbmJzcDsmbHQ7PSZuYnNwO2smbmJzcDsmbHQ7Jm5ic3A7
NSBiZSB0aGUgY29lZmZpY2llbnRzIG9mIHRoZSBMVFAgZmlsdGVyCisgdGFrZW4gZnJvbSB0aGUg
Y29kZWJvb2sgZW50cnkgaW4gb25lIG9mCisgVGFibGVzJm5ic3A7PHhyZWYgZm9ybWF0PSJjb3Vu
dGVyIiB0YXJnZXQ9InNpbGtfbHRwX2ZpbHRlcl9jb2VmZnMwIi8+CisgdGhyb3VnaCZuYnNwOzx4
cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX2x0cF9maWx0ZXJfY29lZmZzMiIvPgor
IGNvcnJlc3BvbmRpbmcgdG8gdGhlIGluZGV4IGRlY29kZWQgZm9yIHRoZSBjdXJyZW50IHN1YmZy
YW1lIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9maWx0ZXIiLz4uCitUaGVuIGZvciBpIHN1
Y2ggdGhhdCBqJm5ic3A7Jmx0Oz0mbmJzcDtpJm5ic3A7Jmx0OyZuYnNwOyhqJm5ic3A7KyZuYnNw
O24pLAorIHRoZSBMUEMgcmVzaWR1YWwgaXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAgICA0Cisg
ICAgICAgICAgZV9RMjNbaV0gICBfXyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBi
X1E3W2tdCityZXNbaV0gPSAtLS0tLS0tLS0gKyBcICByZXNbaSAtIHBpdGNoX2xhZ3Nbc10gKyAy
IC0ga10gKiAtLS0tLS0tIC4KKyAgICAgICAgICAyLjAqKjIzICAgIC9fICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAxMjguMAorICAgICAgICAgICAgICAgICAgICAgaz0wCitdXT48
L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKworPHQ+CitGb3IgdW52b2ljZWQgZnJhbWVzLCB0
aGUgTFBDIHJlc2lkdWFsIGZvcgorIGombmJzcDsmbHQ7PSZuYnNwO2kmbmJzcDsmbHQ7Jm5ic3A7
KGombmJzcDsrJm5ic3A7bikgaXMgc2ltcGx5IGEgbm9ybWFsaXplZAorIGNvcHkgb2YgdGhlIGV4
Y2l0YXRpb24gc2lnbmFsLCBpLmUuLAorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3Jr
IGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgIGVfUTIzW2ldCityZXNbaV0gPSAt
LS0tLS0tLS0KKyAgICAgICAgICAyLjAqKjIzCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwv
dD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2xwY19zeW50aGVzaXMiIHRp
dGxlPSJMUEMgU3ludGhlc2lzIj4KKzx0PgorTFBDIHN5bnRoZXNpcyB1c2VzIHRoZSBzaG9ydC10
ZXJtIExQQyBmaWx0ZXIgdG8gcHJlZGljdCB0aGUgbmV4dCBvdXRwdXQKKyBjb2VmZmljaWVudC4K
K0ZvciBpIHN1Y2ggdGhhdCAoaiZuYnNwOy0mbmJzcDtkX0xQQykmbmJzcDsmbHQ7PSZuYnNwO2km
bmJzcDsmbHQ7Jm5ic3A7aiwgbGV0CisgbHBjW2ldIGJlIHRoZSByZXN1bHQgb2YgTFBDIHN5bnRo
ZXNpcyBmcm9tIHRoZSBsYXN0IGRfTFBDIHNhbXBsZXMgb2YgdGhlCisgcHJldmlvdXMgc3ViZnJh
bWUsIG9yIHplcm9zIGluIHRoZSBmaXJzdCBzdWJmcmFtZSBmb3IgdGhpcyBjaGFubmVsIGFmdGVy
CisgZWl0aGVyCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5BbiB1bmNvZGVkIHJlZ3VsYXIg
U0lMSyBmcmFtZSAoaWYgdGhpcyBpcyB0aGUgc2lkZSBjaGFubmVsKSwgb3I8L3Q+Cis8dD5BIGRl
Y29kZXIgcmVzZXQgKHNlZSA8eHJlZiB0YXJnZXQ9ImRlY29kZXItcmVzZXQiLz4pLjwvdD4KKzwv
bGlzdD4KK1RoZW4gZm9yIGkgc3VjaCB0aGF0IGombmJzcDsmbHQ7PSZuYnNwO2kmbmJzcDsmbHQ7
Jm5ic3A7KGombmJzcDsrJm5ic3A7biksIHRoZQorIHJlc3VsdCBvZiBMUEMgc3ludGhlc2lzIGZv
ciB0aGUgY3VycmVudCBzdWJmcmFtZSBpcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZF9MUEMtMQorICAgICAgICAgZ2Fpbl9RMTZbaV0gICAgICAgICAgICBfXyAgICAgICAgICAg
ICAgYV9RMTJba10KK2xwY1tpXSA9IC0tLS0tLS0tLS0tICogcmVzW2ldICsgXCAgbHBjW2ktay0x
XSAqIC0tLS0tLS0tIC4KKyAgICAgICAgICAgNjU1MzYuMCAgICAgICAgICAgICAgL18gICAgICAg
ICAgICAgICA0MDk2LjAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaz0wCitdXT48
L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBkZWNvZGVyIHNhdmVzIHRoZSBmaW5hbCBkX0xQQyB2
YWx1ZXMsIGkuZS4sIGxwY1tpXSBzdWNoIHRoYXQKKyAoaiZuYnNwOysmbmJzcDtuJm5ic3A7LSZu
YnNwO2RfTFBDKSZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsmbmJzcDsoaiZuYnNwOysmbmJz
cDtuKSwKKyB0byBmZWVkIGludG8gdGhlIExQQyBzeW50aGVzaXMgb2YgdGhlIG5leHQgc3ViZnJh
bWUuCitUaGlzIHJlcXVpcmVzIHN0b3JhZ2UgZm9yIHVwIHRvIDE2IHZhbHVlcyBvZiBscGNbaV0g
KGZvciBXQiBmcmFtZXMpLgorPC90PgorCis8dD4KK1RoZW4sIHRoZSBzaWduYWwgaXMgY2xhbXBl
ZCBpbnRvIHRoZSBmaW5hbCBub21pbmFsIHJhbmdlOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4K
KzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworb3V0W2ldID0gY2xhbXAoLTEuMCwg
bHBjW2ldLCAxLjApIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhpcyBjbGFtcGluZyBv
Y2N1cnMgZW50aXJlbHkgYWZ0ZXIgdGhlIExQQyBzeW50aGVzaXMgZmlsdGVyIGhhcyBydW4uCitU
aGUgZGVjb2RlciBzYXZlcyB0aGUgdW5jbGFtcGVkIHZhbHVlcywgbHBjW2ldLCB0byBmZWVkIGlu
dG8gdGhlIExQQyBmaWx0ZXIgZm9yCisgdGhlIG5leHQgc3ViZnJhbWUsIGJ1dCBzYXZlcyB0aGUg
Y2xhbXBlZCB2YWx1ZXMsIG91dFtpXSwgZm9yIHJld2hpdGVuaW5nIGluCisgdm9pY2VkIGZyYW1l
cy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0
aW9uIGFuY2hvcj0ic2lsa19zdGVyZW9fdW5taXhpbmciIHRpdGxlPSJTdGVyZW8gVW5taXhpbmci
PgorPHQ+CitGb3Igc3RlcmVvIHN0cmVhbXMsIGFmdGVyIGRlY29kaW5nIGEgZnJhbWUgZnJvbSBl
YWNoIGNoYW5uZWwsIHRoZSBkZWNvZGVyIG11c3QKKyBjb252ZXJ0IHRoZSBtaWQtc2lkZSAoTVMp
IHJlcHJlc2VudGF0aW9uIGludG8gYSBsZWZ0LXJpZ2h0IChMUikKKyByZXByZXNlbnRhdGlvbi4K
K1RoZSBmdW5jdGlvbiBzaWxrX3N0ZXJlb19NU190b19MUiAoc3RlcmVvX01TX3RvX0xSLmMpIGlt
cGxlbWVudHMgdGhpcyBwcm9jZXNzLgorSW4gaXQsIHRoZSBkZWNvZGVyIHByZWRpY3RzIHRoZSBz
aWRlIGNoYW5uZWwgdXNpbmcgYSkgYSBzaW1wbGUgbG93LXBhc3NlZAorIHZlcnNpb24gb2YgdGhl
IG1pZCBjaGFubmVsLCBhbmQgYikgdGhlIHVuZmlsdGVyZWQgbWlkIGNoYW5uZWwsIHVzaW5nIHRo
ZQorIHByZWRpY3Rpb24gd2VpZ2h0cyBkZWNvZGVkIGluIDx4cmVmIHRhcmdldD0ic2lsa19zdGVy
ZW9fcHJlZCIvPi4KK1RoaXMgc2ltcGxlIGxvdy1wYXNzIGZpbHRlciBpbXBvc2VzIGEgb25lLXNh
bXBsZSBkZWxheSwgYW5kIHRoZSB1bmZpbHRlcmVkCittaWQgY2hhbm5lbCBpcyBhbHNvIGRlbGF5
ZWQgYnkgb25lIHNhbXBsZS4KK0luIG9yZGVyIHRvIGFsbG93IHNlYW1sZXNzIHN3aXRjaGluZyBi
ZXR3ZWVuIHN0ZXJlbyBhbmQgbW9ubywgbW9ubyBzdHJlYW1zIG11c3QKKyBhbHNvIGltcG9zZSB0
aGUgc2FtZSBvbmUtc2FtcGxlIGRlbGF5LgorVGhlIGVuY29kZXIgcmVxdWlyZXMgYW4gYWRkaXRp
b25hbCBvbmUtc2FtcGxlIGRlbGF5IGZvciBib3RoIG1vbm8gYW5kIHN0ZXJlbworIHN0cmVhbXMs
IHRob3VnaCBhbiBlbmNvZGVyIG1heSBvbWl0IHRoZSBkZWxheSBmb3IgbW9ubyBpZiBpdCBrbm93
cyBpdCB3aWxsCisgbmV2ZXIgc3dpdGNoIHRvIHN0ZXJlby4KKzwvdD4KKworPHQ+CitUaGUgdW5t
aXhpbmcgcHJvY2VzcyBvcGVyYXRlcyBpbiB0d28gcGhhc2VzLgorVGhlIGZpcnN0IHBoYXNlIGxh
c3RzIGZvciA4Jm5ic3A7bXMsIGR1cmluZyB3aGljaCBpdCBpbnRlcnBvbGF0ZXMgdGhlCisgcHJl
ZGljdGlvbiB3ZWlnaHRzIGZyb20gdGhlIHByZXZpb3VzIGZyYW1lLCBwcmV2X3cwX1ExMyBhbmQg
cHJldl93MV9RMTMsIHRvCisgdGhlIHZhbHVlcyBmb3IgdGhlIGN1cnJlbnQgZnJhbWUsIHcwX1Ex
MyBhbmQgdzFfUTEzLgorVGhlIHNlY29uZCBwaGFzZSBzaW1wbHkgdXNlcyB0aGVzZSB3ZWlnaHRz
IGZvciB0aGUgcmVtYWluZGVyIG9mIHRoZSBmcmFtZS4KKzwvdD4KKworPHQ+CitMZXQgbWlkW2ld
IGFuZCBzaWRlW2ldIGJlIHRoZSBjb250ZW50cyBvZiBvdXRbaV0gKGZyb20KKyA8eHJlZiB0YXJn
ZXQ9InNpbGtfbHBjX3N5bnRoZXNpcyIvPikgZm9yIHRoZSBjdXJyZW50IG1pZCBhbmQgc2lkZSBj
aGFubmVscywKKyByZXNwZWN0aXZlbHksIGFuZCBsZXQgbGVmdFtpXSBhbmQgcmlnaHRbaV0gYmUg
dGhlIGNvcnJlc3BvbmRpbmcgc3RlcmVvIG91dHB1dAorIGNoYW5uZWxzLgorSWYgdGhlIHNpZGUg
Y2hhbm5lbCBpcyBub3QgY29kZWQgKHNlZSA8eHJlZiB0YXJnZXQ9InNpbGtfbWlkX29ubHlfZmxh
ZyIvPiksCisgdGhlbiBzaWRlW2ldIGlzIHNldCB0byB6ZXJvLgorQWxzbyBsZXQgaiBiZSBkZWZp
bmVkIGFzIGluIDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV9yZWNvbnN0cnVjdGlvbiIvPiwgbjEg
YmUKKyB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgaW4gcGhhc2UmbmJzcDsxICg2NCBmb3IgTkIsIDk2
IGZvciBNQiwgYW5kIDEyOCBmb3IgV0IpLAorIGFuZCBuMiBiZSB0aGUgdG90YWwgbnVtYmVyIG9m
IHNhbXBsZXMgaW4gdGhlIGZyYW1lLgorVGhlbiBmb3IgaSBzdWNoIHRoYXQgaiZuYnNwOyZsdDs9
Jm5ic3A7aSZuYnNwOyZsdDsmbmJzcDsoaiZuYnNwOysmbmJzcDtuMiksCisgdGhlIGxlZnQgYW5k
IHJpZ2h0IGNoYW5uZWwgb3V0cHV0IGlzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgIHByZXZfdzBfUTEzICAg
ICAgICAgICAgICAgICAgKHcwX1ExMyAtIHByZXZfdzBfUTEzKQorICAgICAgICB3MCA9ICAtLS0t
LS0tLS0tLSArIG1pbihpIC0gaiwgbjEpKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLAorICAgICAg
ICAgICAgICAgIDgxOTIuMCAgICAgICAgICAgICAgICAgICAgICAgICAgIDgxOTIuMCpuMQorCisg
ICAgICAgICAgICAgIHByZXZfdzFfUTEzICAgICAgICAgICAgICAgICAgKHcxX1ExMyAtIHByZXZf
dzFfUTEzKQorICAgICAgICB3MSA9ICAtLS0tLS0tLS0tLSArIG1pbihpIC0gaiwgbjEpKi0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0gLAorICAgICAgICAgICAgICAgIDgxOTIuMCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA4MTkyLjAqbjEKKworICAgICAgICAgICAgIG1pZFtpLTJdICsgMiptaWRb
aS0xXSArIG1pZFtpXQorICAgICAgICBwMCA9IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSAsCisgICAgICAgICAgICAgICAgICAgICAgICAgIDQuMAorCisgbGVmdFtpXSA9IGNsYW1wKC0x
LjAsICgxICsgdzEpKm1pZFtpLTFdICsgc2lkZVtpLTFdICsgdzAqcDAsIDEuMCkgLAorCityaWdo
dFtpXSA9IGNsYW1wKC0xLjAsICgxIC0gdzEpKm1pZFtpLTFdIC0gc2lkZVtpLTFdIC0gdzAqcDAs
IDEuMCkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGVzZSBmb3JtdWxhcyByZXF1aXJl
IHR3byBzYW1wbGVzIHByaW9yIHRvIGluZGV4Jm5ic3A7aiwgdGhlIHN0YXJ0IG9mIHRoZQorIGZy
YW1lLCBmb3IgdGhlIG1pZCBjaGFubmVsLCBhbmQgb25lIHByaW9yIHNhbXBsZSBmb3IgdGhlIHNp
ZGUgY2hhbm5lbC4KK0ZvciB0aGUgZmlyc3QgZnJhbWUgYWZ0ZXIgYSBkZWNvZGVyIHJlc2V0LCB6
ZXJvcyBhcmUgdXNlZCBpbnN0ZWFkLgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRp
dGxlPSJSZXNhbXBsaW5nIj4KKzx0PgorQWZ0ZXIgc3RlcmVvIHVubWl4aW5nIChpZiBhbnkpLCB0
aGUgZGVjb2RlciBhcHBsaWVzIHJlc2FtcGxpbmcgdG8gY29udmVydCB0aGUKKyBkZWNvZGVkIFNJ
TEsgb3V0cHV0IHRvIHRoZSBzYW1wbGUgcmF0ZSBkZXNpcmVkIGJ5IHRoZSBhcHBsaWNhdGlvbi4K
K1RoaXMgaXMgbmVjZXNzYXJ5IHdoZW4gZGVjb2RpbmcgYSBIeWJyaWQgZnJhbWUgYXQgU1dCIG9y
IEZCIHNhbXBsZSByYXRlcywgb3IKKyB3aGVuZXZlciB0aGUgZGVjb2RlciB3YW50cyB0aGUgb3V0
cHV0IGF0IGEgZGlmZmVyZW50IHNhbXBsZSByYXRlIHRoYW4gdGhlCisgaW50ZXJuYWwgU0lMSyBz
YW1wbGluZyByYXRlIChlLmcuLCB0byBhbGxvdyBhIGNvbnN0YW50IHNhbXBsZSByYXRlIHdoZW4g
dGhlCisgYXVkaW8gYmFuZHdpZHRoIGNoYW5nZXMsIG9yIHRvIGFsbG93IG1peGluZyB3aXRoIGF1
ZGlvIGZyb20gb3RoZXIKKyBhcHBsaWNhdGlvbnMpLgorVGhlIHJlc2FtcGxlciBpdHNlbGYgaXMg
bm9uLW5vcm1hdGl2ZSwgYW5kIGEgZGVjb2RlciBjYW4gdXNlIGFueSBtZXRob2QgaXQKKyB3YW50
cyB0byBwZXJmb3JtIHRoZSByZXNhbXBsaW5nLgorPC90PgorCis8dD4KK0hvd2V2ZXIsIGEgbWlu
aW11bSBhbW91bnQgb2YgZGVsYXkgaXMgaW1wb3NlZCB0byBhbGxvdyB0aGUgcmVzYW1wbGVyIHRv
Cisgb3BlcmF0ZSwgYW5kIHRoaXMgZGVsYXkgaXMgbm9ybWF0aXZlLCBzbyB0aGF0IHRoZSBjb3Jy
ZXNwb25kaW5nIGRlbGF5IGNhbiBiZQorIGFwcGxpZWQgdG8gdGhlIE1EQ1QgbGF5ZXIgaW4gdGhl
IGVuY29kZXIuCitBIGRlY29kZXIgaXMgYWx3YXlzIGZyZWUgdG8gdXNlIGEgcmVzYW1wbGVyIHdo
aWNoIHJlcXVpcmVzIG1vcmUgZGVsYXkgdGhhbgorIGFsbG93ZWQgZm9yIGhlcmUgKGUuZy4sIHRv
IGltcHJvdmUgcXVhbGl0eSksIGJ1dCBpdCBtdXN0IHRoZW4gZGVsYXkgdGhlIG91dHB1dAorIG9m
IHRoZSBNRENUIGxheWVyIGJ5IHRoaXMgZXh0cmEgYW1vdW50LgorS2VlcGluZyBhcyBtdWNoIGRl
bGF5IGFzIHBvc3NpYmxlIG9uIHRoZSBlbmNvZGVyIHNpZGUgYWxsb3dzIGFuIGVuY29kZXIgd2hp
Y2gKKyBrbm93cyBpdCB3aWxsIG5ldmVyIHVzZSBhbnkgb2YgdGhlIFNJTEsgb3IgSHlicmlkIG1v
ZGVzIHRvIHNraXAgdGhpcyBkZWxheS4KK0J5IGNvbnRyYXN0LCBpZiBpdCB3ZXJlIGFsbCBhcHBs
aWVkIGJ5IHRoZSBkZWNvZGVyLCB0aGVuIGEgZGVjb2RlciB3aGljaAorIHByb2Nlc3NlcyBhdWRp
byBpbiBmaXhlZC1zaXplIGJsb2NrcyB3b3VsZCBiZSBmb3JjZWQgdG8gZGVsYXkgdGhlIG91dHB1
dCBvZgorIENFTFQgZnJhbWVzIGp1c3QgaW4gY2FzZSBvZiBhIGxhdGVyIHN3aXRjaCB0byBhIFNJ
TEsgb3IgSHlicmlkIG1vZGUuCis8L3Q+CisKKzx0PgorPHhyZWYgdGFyZ2V0PSJzaWxrX3Jlc2Ft
cGxlcl9kZWxheV9hbGxvYyIvPiBnaXZlcyB0aGUgbWF4aW11bSByZXNhbXBsZXIgZGVsYXkKKyBp
biBzYW1wbGVzIGF0IDQ4Jm5ic3A7a0h6IGZvciBlYWNoIFNJTEsgYXVkaW8gYmFuZHdpZHRoLgor
QmVjYXVzZSB0aGUgYWN0dWFsIG91dHB1dCByYXRlIG1heSBub3QgYmUgNDgmbmJzcDtrSHosIGl0
IG1heSBub3QgYmUgcG9zc2libGUKKyB0byBhY2hpZXZlIGV4YWN0bHkgdGhlc2UgZGVsYXlzIHdo
aWxlIHVzaW5nIGEgd2hvbGUgbnVtYmVyIG9mIGlucHV0IG9yIG91dHB1dAorIHNhbXBsZXMuCitU
aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGlzIGFibGUgdG8gcmVzYW1wbGUgdG8gYW55IG9m
IHRoZSBzdXBwb3J0ZWQKKyBvdXRwdXQgc2FtcGxpbmcgcmF0ZXMgKDgsIDEyLCAxNiwgMjQsIG9y
IDQ4Jm5ic3A7a0h6KSB3aXRoaW4gb3IgbmVhciB0aGlzCisgZGVsYXkgY29uc3RyYWludC4KK1Nv
bWUgcmVzYW1wbGluZyBmaWx0ZXJzIChpbmNsdWRpbmcgdGhvc2UgdXNlZCBieSB0aGUgcmVmZXJl
bmNlIGltcGxlbWVudGF0aW9uKQorIG1heSBhZGQgYSBkZWxheSB0aGF0IGlzIG5vdCBhbiBleGFj
dCBpbnRlZ2VyLCBvciBpcyBub3QgbGluZWFyLXBoYXNlLCBhbmQgc28KKyBjYW5ub3QgYmUgcmVw
cmVzZW50ZWQgYnkgYSBzaW5nbGUgZGVsYXkgYXQgYWxsIGZyZXF1ZW5jaWVzLgorSG93ZXZlciwg
c3VjaCBkZXZpYXRpb25zIGFyZSB1bmxpa2VseSB0byBiZSBwZXJjZXB0aWJsZSwgYW5kIHRoZSBj
b21wYXJpc29uCisgdG9vbCBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJjb25mb3JtYW5jZSIv
PiBpcyBkZXNpZ25lZCB0byBiZSByZWxhdGl2ZWx5CisgaW5zZW5zaXRpdmUgdG8gdGhlbS4KK1Ro
ZSBkZWxheXMgbGlzdGVkIGhlcmUgYXJlIHRoZSBvbmVzIHRoYXQgc2hvdWxkIGJlIHRhcmdldGVk
IGJ5IHRoZSBlbmNvZGVyLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19yZXNhbXBs
ZXJfZGVsYXlfYWxsb2MiCisgdGl0bGU9IlNJTEsgUmVzYW1wbGVyIERlbGF5IEFsbG9jYXRpb25z
Ij4KKzx0dGNvbD5BdWRpbyBCYW5kd2lkdGg8L3R0Y29sPgorPHR0Y29sPkRlbGF5IGluIG1pbGxp
c2Vjb25kPC90dGNvbD4KKzxjPk5CPC9jPiA8Yz4wLjUzODwvYz4KKzxjPk1CPC9jPiA8Yz4wLjY5
MjwvYz4KKzxjPldCPC9jPiA8Yz4wLjcwNjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK05CIGlz
IGdpdmVuIGEgc21hbGxlciBkZWNvZGVyIGRlbGF5IGFsbG9jYXRpb24gdGhhbiBNQiBhbmQgV0Ig
dG8gYWxsb3cgYQorIGhpZ2hlci1vcmRlciBmaWx0ZXIgd2hlbiByZXNhbXBsaW5nIHRvIDgmbmJz
cDtrSHogaW4gYm90aCB0aGUgZW5jb2RlciBhbmQKKyBkZWNvZGVyLgorVGhpcyBpbXBsaWVzIHRo
YXQgdGhlIGF1ZGlvIGNvbnRlbnQgb2YgdHdvIFNJTEsgZnJhbWVzIG9wZXJhdGluZyBhdCBkaWZm
ZXJlbnQKKyBiYW5kd2lkdGhzIGFyZSBub3QgcGVyZmVjdGx5IGFsaWduZWQgaW4gdGltZS4KK1Ro
aXMgaXMgbm90IGFuIGlzc3VlIGZvciBhbnkgdHJhbnNpdGlvbnMgZGVzY3JpYmVkIGluCisgPHhy
ZWYgdGFyZ2V0PSJzd2l0Y2hpbmciLz4sIGJlY2F1c2UgdGhleSBhbGwgaW52b2x2ZSBhIFNJTEsg
ZGVjb2RlciByZXNldC4KK1doZW4gdGhlIGRlY29kZXIgaXMgcmVzZXQsIGFueSBzYW1wbGVzIHJl
bWFpbmluZyBpbiB0aGUgcmVzYW1wbGluZyBidWZmZXIKKyBhcmUgZGlzY2FyZGVkLCBhbmQgdGhl
IHJlc2FtcGxlciBpcyByZS1pbml0aWFsaXplZCB3aXRoIHNpbGVuY2UuCis8L3Q+CisKKzwvc2Vj
dGlvbj4KKworPC9zZWN0aW9uPgorCisKKzxzZWN0aW9uIHRpdGxlPSJDRUxUIERlY29kZXIiPgor
Cis8dD4KK1RoZSBDRUxUIGxheWVyIG9mIE9wdXMgaXMgYmFzZWQgb24gdGhlIE1vZGlmaWVkIERp
c2NyZXRlIENvc2luZSBUcmFuc2Zvcm0KKzx4cmVmIHRhcmdldD0nTURDVCcvPiB3aXRoIHBhcnRp
YWxseSBvdmVybGFwcGluZyB3aW5kb3dzIG9mIDUgdG8gMjIuNSBtcy4KK1RoZSBtYWluIHByaW5j
aXBsZSBiZWhpbmQgQ0VMVCBpcyB0aGF0IHRoZSBNRENUIHNwZWN0cnVtIGlzIGRpdmlkZWQgaW50
bworYmFuZHMgdGhhdCAocm91Z2hseSkgZm9sbG93IHRoZSBCYXJrIHNjYWxlLCBpLmUuLCB0aGUg
c2NhbGUgb2YgdGhlIGVhcidzCitjcml0aWNhbCBiYW5kcyZuYnNwOzx4cmVmIHRhcmdldD0iWndp
Y2tlcjYxIi8+LiBUaGUgbm9ybWFsIENFTFQgbGF5ZXIgdXNlcyAyMSBvZiB0aG9zZSBiYW5kcywg
dGhvdWdoIE9wdXMKKyBDdXN0b20gKHNlZSA8eHJlZiB0YXJnZXQ9Im9wdXMtY3VzdG9tIi8+KSBt
YXkgdXNlIGEgZGlmZmVyZW50IG51bWJlciBvZiBiYW5kcy4KK0luIEh5YnJpZCBtb2RlLCB0aGUg
Zmlyc3QgMTcgYmFuZHMgKHVwIHRvIDgmbmJzcDtrSHopIGFyZSBub3QgY29kZWQuCitBIGJhbmQg
Y2FuIGNvbnRhaW4gYXMgbGl0dGxlIGFzIG9uZSBNRENUIGJpbiBwZXIgY2hhbm5lbCwgYW5kIGFz
IG1hbnkgYXMgMTc2CitiaW5zIHBlciBjaGFubmVsLCBhcyBkZXRhaWxlZCBpbiA8eHJlZiB0YXJn
ZXQ9ImNlbHRfYmFuZF9zaXplcyIvPi4KK0luIGVhY2ggYmFuZCwgdGhlIGdhaW4gKGVuZXJneSkg
aXMgY29kZWQgc2VwYXJhdGVseSBmcm9tCit0aGUgc2hhcGUgb2YgdGhlIHNwZWN0cnVtLiBDb2Rp
bmcgdGhlIGdhaW4gZXhwbGljaXRseSBtYWtlcyBpdCBlYXN5IHRvCitwcmVzZXJ2ZSB0aGUgc3Bl
Y3RyYWwgZW52ZWxvcGUgb2YgdGhlIHNpZ25hbC4gVGhlIHJlbWFpbmluZyB1bml0LW5vcm0gc2hh
cGUKK3ZlY3RvciBpcyBlbmNvZGVkIHVzaW5nIGEgUHlyYW1pZCBWZWN0b3IgUXVhbnRpemVyIChQ
VlEpJm5ic3A7PHhyZWYgdGFyZ2V0PSdQVlEtZGVjb2RlcicvPi4KKzwvdD4KKworPHRleHR0YWJs
ZSBhbmNob3I9ImNlbHRfYmFuZF9zaXplcyIKKyB0aXRsZT0iTURDVCBCaW5zIFBlciBDaGFubmVs
IFBlciBCYW5kIGZvciBFYWNoIEZyYW1lIFNpemUiPgorPHR0Y29sPkZyYW1lIFNpemU6PC90dGNv
bD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjIuNSZuYnNwO21zPC90dGNvbD4KKzx0dGNvbCBhbGln
bj0icmlnaHQiPjUmbmJzcDttczwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4xMCZuYnNw
O21zPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjIwJm5ic3A7bXM8L3R0Y29sPgorPHR0
Y29sIGFsaWduPSJyaWdodCI+U3RhcnQgRnJlcXVlbmN5PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0i
cmlnaHQiPlN0b3AgRnJlcXVlbmN5PC90dGNvbD4KKzxjPkJhbmQ8L2M+IDxjPkJpbnM6PC9jPiA8
Yy8+IDxjLz4gPGMvPiA8Yy8+IDxjLz4KKyA8Yz4wPC9jPiAgPGM+MTwvYz4gIDxjPjI8L2M+ICA8
Yz40PC9jPiAgIDxjPjg8L2M+ICAgICA8Yz4wJm5ic3A7SHo8L2M+ICAgPGM+MjAwJm5ic3A7SHo8
L2M+CisgPGM+MTwvYz4gIDxjPjE8L2M+ICA8Yz4yPC9jPiAgPGM+NDwvYz4gICA8Yz44PC9jPiAg
IDxjPjIwMCZuYnNwO0h6PC9jPiAgIDxjPjQwMCZuYnNwO0h6PC9jPgorIDxjPjI8L2M+ICA8Yz4x
PC9jPiAgPGM+MjwvYz4gIDxjPjQ8L2M+ICAgPGM+ODwvYz4gICA8Yz40MDAmbmJzcDtIejwvYz4g
ICA8Yz42MDAmbmJzcDtIejwvYz4KKyA8Yz4zPC9jPiAgPGM+MTwvYz4gIDxjPjI8L2M+ICA8Yz40
PC9jPiAgIDxjPjg8L2M+ICAgPGM+NjAwJm5ic3A7SHo8L2M+ICAgPGM+ODAwJm5ic3A7SHo8L2M+
CisgPGM+NDwvYz4gIDxjPjE8L2M+ICA8Yz4yPC9jPiAgPGM+NDwvYz4gICA8Yz44PC9jPiAgIDxj
PjgwMCZuYnNwO0h6PC9jPiAgPGM+MTAwMCZuYnNwO0h6PC9jPgorIDxjPjU8L2M+ICA8Yz4xPC9j
PiAgPGM+MjwvYz4gIDxjPjQ8L2M+ICAgPGM+ODwvYz4gIDxjPjEwMDAmbmJzcDtIejwvYz4gIDxj
PjEyMDAmbmJzcDtIejwvYz4KKyA8Yz42PC9jPiAgPGM+MTwvYz4gIDxjPjI8L2M+ICA8Yz40PC9j
PiAgIDxjPjg8L2M+ICA8Yz4xMjAwJm5ic3A7SHo8L2M+ICA8Yz4xNDAwJm5ic3A7SHo8L2M+Cisg
PGM+NzwvYz4gIDxjPjE8L2M+ICA8Yz4yPC9jPiAgPGM+NDwvYz4gICA8Yz44PC9jPiAgPGM+MTQw
MCZuYnNwO0h6PC9jPiAgPGM+MTYwMCZuYnNwO0h6PC9jPgorIDxjPjg8L2M+ICA8Yz4yPC9jPiAg
PGM+NDwvYz4gIDxjPjg8L2M+ICA8Yz4xNjwvYz4gIDxjPjE2MDAmbmJzcDtIejwvYz4gIDxjPjIw
MDAmbmJzcDtIejwvYz4KKyA8Yz45PC9jPiAgPGM+MjwvYz4gIDxjPjQ8L2M+ICA8Yz44PC9jPiAg
PGM+MTY8L2M+ICA8Yz4yMDAwJm5ic3A7SHo8L2M+ICA8Yz4yNDAwJm5ic3A7SHo8L2M+Cis8Yz4x
MDwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgPGM+ODwvYz4gIDxjPjE2PC9jPiAgPGM+MjQwMCZu
YnNwO0h6PC9jPiAgPGM+MjgwMCZuYnNwO0h6PC9jPgorPGM+MTE8L2M+ICA8Yz4yPC9jPiAgPGM+
NDwvYz4gIDxjPjg8L2M+ICA8Yz4xNjwvYz4gIDxjPjI4MDAmbmJzcDtIejwvYz4gIDxjPjMyMDAm
bmJzcDtIejwvYz4KKzxjPjEyPC9jPiAgPGM+NDwvYz4gIDxjPjg8L2M+IDxjPjE2PC9jPiAgPGM+
MzI8L2M+ICA8Yz4zMjAwJm5ic3A7SHo8L2M+ICA8Yz40MDAwJm5ic3A7SHo8L2M+Cis8Yz4xMzwv
Yz4gIDxjPjQ8L2M+ICA8Yz44PC9jPiA8Yz4xNjwvYz4gIDxjPjMyPC9jPiAgPGM+NDAwMCZuYnNw
O0h6PC9jPiAgPGM+NDgwMCZuYnNwO0h6PC9jPgorPGM+MTQ8L2M+ICA8Yz40PC9jPiAgPGM+ODwv
Yz4gPGM+MTY8L2M+ICA8Yz4zMjwvYz4gIDxjPjQ4MDAmbmJzcDtIejwvYz4gIDxjPjU2MDAmbmJz
cDtIejwvYz4KKzxjPjE1PC9jPiAgPGM+NjwvYz4gPGM+MTI8L2M+IDxjPjI0PC9jPiAgPGM+NDg8
L2M+ICA8Yz41NjAwJm5ic3A7SHo8L2M+ICA8Yz42ODAwJm5ic3A7SHo8L2M+Cis8Yz4xNjwvYz4g
IDxjPjY8L2M+IDxjPjEyPC9jPiA8Yz4yNDwvYz4gIDxjPjQ4PC9jPiAgPGM+NjgwMCZuYnNwO0h6
PC9jPiAgPGM+ODAwMCZuYnNwO0h6PC9jPgorPGM+MTc8L2M+ICA8Yz44PC9jPiA8Yz4xNjwvYz4g
PGM+MzI8L2M+ICA8Yz42NDwvYz4gIDxjPjgwMDAmbmJzcDtIejwvYz4gIDxjPjk2MDAmbmJzcDtI
ejwvYz4KKzxjPjE4PC9jPiA8Yz4xMjwvYz4gPGM+MjQ8L2M+IDxjPjQ4PC9jPiAgPGM+OTY8L2M+
ICA8Yz45NjAwJm5ic3A7SHo8L2M+IDxjPjEyMDAwJm5ic3A7SHo8L2M+Cis8Yz4xOTwvYz4gPGM+
MTg8L2M+IDxjPjM2PC9jPiA8Yz43MjwvYz4gPGM+MTQ0PC9jPiA8Yz4xMjAwMCZuYnNwO0h6PC9j
PiA8Yz4xNTYwMCZuYnNwO0h6PC9jPgorPGM+MjA8L2M+IDxjPjIyPC9jPiA8Yz40NDwvYz4gPGM+
ODg8L2M+IDxjPjE3NjwvYz4gPGM+MTU2MDAmbmJzcDtIejwvYz4gPGM+MjAwMDAmbmJzcDtIejwv
Yz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK1RyYW5zaWVudHMgYXJlIG5vdG9yaW91c2x5IGRpZmZp
Y3VsdCBmb3IgdHJhbnNmb3JtIGNvZGVjcyB0byBjb2RlLgorQ0VMVCB1c2VzIHR3byBkaWZmZXJl
bnQgc3RyYXRlZ2llcyBmb3IgdGhlbToKKzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0PlVzaW5n
IG11bHRpcGxlIHNtYWxsZXIgTURDVHMgaW5zdGVhZCBvZiBhIHNpbmdsZSBsYXJnZSBNRENULCBh
bmQ8L3Q+Cis8dD5EeW5hbWljIHRpbWUtZnJlcXVlbmN5IHJlc29sdXRpb24gY2hhbmdlcyAoU2Vl
IDx4cmVmIHRhcmdldD0ndGYtY2hhbmdlJy8+KS48L3Q+Cis8L2xpc3Q+CitUbyBpbXByb3ZlIHF1
YWxpdHkgb24gaGlnaGx5IHRvbmFsIGFuZCBwZXJpb2RpYyBzaWduYWxzLCBDRUxUIGluY2x1ZGVz
CithIHByZWZpbHRlci9wb3N0ZmlsdGVyIGNvbWJpbmF0aW9uLiBUaGUgcHJlZmlsdGVyIG9uIHRo
ZSBlbmNvZGVyIHNpZGUKK2F0dGVudWF0ZXMgdGhlIHNpZ25hbCdzIGhhcm1vbmljcy4gVGhlIHBv
c3RmaWx0ZXIgb24gdGhlIGRlY29kZXIgc2lkZQorcmVzdG9yZXMgdGhlIG9yaWdpbmFsIGdhaW4g
b2YgdGhlIGhhcm1vbmljcywgd2hpbGUgc2hhcGluZyB0aGUgY29kaW5nIG5vaXNlCit0byByb3Vn
aGx5IGZvbGxvdyB0aGUgaGFybW9uaWNzLiBTdWNoIG5vaXNlIHNoYXBpbmcgcmVkdWNlcyB0aGUg
cGVyY2VwdGlvbgorb2YgdGhlIG5vaXNlLgorPC90PgorCis8dD4KK1doZW4gY29kaW5nIGEgc3Rl
cmVvIHNpZ25hbCwgdGhyZWUgY29kaW5nIG1ldGhvZHMgYXJlIGF2YWlsYWJsZToKKzxsaXN0IHN0
eWxlPSJzeW1ib2xzIj4KKzx0Pm1pZC1zaWRlIHN0ZXJlbzogZW5jb2RlcyB0aGUgbWVhbiBhbmQg
dGhlIGRpZmZlcmVuY2Ugb2YgdGhlIGxlZnQgYW5kIHJpZ2h0IGNoYW5uZWxzLDwvdD4KKzx0Pmlu
dGVuc2l0eSBzdGVyZW86IG9ubHkgZW5jb2RlcyB0aGUgbWVhbiBvZiB0aGUgbGVmdCBhbmQgcmln
aHQgY2hhbm5lbHMgKGRpc2NhcmRzIHRoZSBkaWZmZXJlbmNlKSw8L3Q+Cis8dD5kdWFsIHN0ZXJl
bzogZW5jb2RlcyB0aGUgbGVmdCBhbmQgcmlnaHQgY2hhbm5lbHMgc2VwYXJhdGVseS48L3Q+Cis8
L2xpc3Q+Cis8L3Q+CisKKzx0PgorQW4gb3ZlcnZpZXcgb2YgdGhlIGRlY29kZXIgaXMgZ2l2ZW4g
aW4gPHhyZWYgdGFyZ2V0PSJjZWx0LWRlY29kZXItb3ZlcnZpZXciLz4uCis8L3Q+CisKKzxmaWd1
cmUgYW5jaG9yPSJjZWx0LWRlY29kZXItb3ZlcnZpZXciIHRpdGxlPSJTdHJ1Y3R1cmUgb2YgdGhl
IENFTFQgZGVjb2RlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAg
ICAgICAgICAgICstLS0tLS0tLS0rCisgICAgICAgICAgICAgICB8IENvYXJzZSAgfAorICAgICAg
ICAgICAgKy0+fCBkZWNvZGVyIHwtLS0tKworICAgICAgICAgICAgfCAgKy0tLS0tLS0tLSsgICAg
fAorICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgfCAgKy0tLS0t
LS0tLSsgICAgdgorICAgICAgICAgICAgfCAgfCAgRmluZSAgIHwgICstLS0rCisgICAgICAgICAg
ICArLT58IGRlY29kZXIgfC0+fCArIHwKKyAgICAgICAgICAgIHwgICstLS0tLS0tLS0rICArLS0t
KworICAgICAgICAgICAgfCAgICAgICBeICAgICAgICAgfAorKy0tLS0tLS0tLSsgfCAgICAgICB8
ICAgICAgICAgfAorfCAgUmFuZ2UgIHwgfCArLS0tLS0tLS0tLSsgICAgdgorfCBEZWNvZGVyIHwt
KyB8ICAgQml0ICAgIHwgKy0tLS0tLSsKKystLS0tLS0tLS0rIHwgfEFsbG9jYXRpb258IHwgMioq
eCB8CisgICAgICAgICAgICB8ICstLS0tLS0tLS0tKyArLS0tLS0tKworICAgICAgICAgICAgfCAg
ICAgICB8ICAgICAgICAgfAorICAgICAgICAgICAgfCAgICAgICB2ICAgICAgICAgdiAgICAgICAg
ICAgICAgICstLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICstLS0tLS0tLS0rICArLS0tKyAgKy0t
LS0tLS0rICB8IHBpdGNoICB8CisgICAgICAgICAgICArLT58ICAgUFZRICAgfC0+fCAqIHwtPnwg
SU1EQ1QgfC0+fCBwb3N0LSAgfC0tLT4KKyAgICAgICAgICAgIHwgIHwgZGVjb2RlciB8ICArLS0t
KyAgKy0tLS0tLS0rICB8IGZpbHRlciB8CisgICAgICAgICAgICB8ICArLS0tLS0tLS0tKyAgICAg
ICAgICAgICAgICAgICAgKy0tLS0tLS0tKworICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXgorICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0PgorVGhl
IGRlY29kZXIgaXMgYmFzZWQgb24gdGhlIGZvbGxvd2luZyBzeW1ib2xzIGFuZCBzZXRzIG9mIHN5
bWJvbHM6Cis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJjZWx0X3N5bWJvbHMiCisgdGl0bGU9
Ik9yZGVyIG9mIHRoZSBTeW1ib2xzIGluIHRoZSBDRUxUIFNlY3Rpb24gb2YgdGhlIEJpdHN0cmVh
bSI+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+U3ltYm9sKHMpPC90dGNvbD4KKzx0dGNvbCBhbGln
bj0iY2VudGVyIj5QREY8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJjZW50ZXIiPkNvbmRpdGlvbjwv
dHRjb2w+Cis8Yz5zaWxlbmNlPC9jPiAgICAgIDxjPnszMjc2NywgMX0vMzI3Njg8L2M+IDxjPjwv
Yz4KKzxjPnBvc3QtZmlsdGVyPC9jPiAgPGM+ezEsIDF9LzI8L2M+IDxjPjwvYz4KKzxjPm9jdGF2
ZTwvYz4gICAgICAgPGM+dW5pZm9ybSAoNik8L2M+PGM+cG9zdC1maWx0ZXI8L2M+Cis8Yz5wZXJp
b2Q8L2M+ICAgICAgIDxjPnJhdyBiaXRzICg0K29jdGF2ZSk8L2M+PGM+cG9zdC1maWx0ZXI8L2M+
Cis8Yz5nYWluPC9jPiAgICAgICAgIDxjPnJhdyBiaXRzICgzKTwvYz48Yz5wb3N0LWZpbHRlcjwv
Yz4KKzxjPnRhcHNldDwvYz4gICAgICAgPGM+ezIsIDEsIDF9LzQ8L2M+PGM+cG9zdC1maWx0ZXI8
L2M+Cis8Yz50cmFuc2llbnQ8L2M+ICAgIDxjPns3LCAxfS84PC9jPjxjPjwvYz4KKzxjPmludHJh
PC9jPiAgICAgICAgPGM+ezcsIDF9Lzg8L2M+PGM+PC9jPgorPGM+Y29hcnNlIGVuZXJneTwvYz48
Yz48eHJlZiB0YXJnZXQ9ImVuZXJneS1kZWNvZGluZyIvPjwvYz48Yz48L2M+Cis8Yz50Zl9jaGFu
Z2U8L2M+ICAgIDxjPjx4cmVmIHRhcmdldD0idHJhbnNpZW50LWRlY29kaW5nIi8+PC9jPjxjPjwv
Yz4KKzxjPnRmX3NlbGVjdDwvYz4gICAgPGM+ezEsIDF9LzI8L2M+PGM+PHhyZWYgdGFyZ2V0PSJ0
cmFuc2llbnQtZGVjb2RpbmciLz48L2M+Cis8Yz5zcHJlYWQ8L2M+ICAgICAgIDxjPns3LCAyLCAy
MSwgMn0vMzI8L2M+PGM+PC9jPgorPGM+ZHluLiBhbGxvYy48L2M+ICA8Yz48eHJlZiB0YXJnZXQ9
ImFsbG9jYXRpb24iLz48L2M+PGM+PC9jPgorPGM+YWxsb2MuIHRyaW08L2M+ICA8Yz57MiwgMiwg
NSwgMTAsIDIyLCA0NiwgMjIsIDEwLCA1LCAyLCAyfS8xMjg8L2M+PGM+PC9jPgorPGM+c2tpcDwv
Yz4gICAgICAgICA8Yz57MSwgMX0vMjwvYz48Yz48eHJlZiB0YXJnZXQ9ImFsbG9jYXRpb24iLz48
L2M+Cis8Yz5pbnRlbnNpdHk8L2M+ICAgIDxjPnVuaWZvcm08L2M+PGM+PHhyZWYgdGFyZ2V0PSJh
bGxvY2F0aW9uIi8+PC9jPgorPGM+ZHVhbDwvYz4gICAgICAgICA8Yz57MSwgMX0vMjwvYz48Yz48
L2M+Cis8Yz5maW5lIGVuZXJneTwvYz4gIDxjPjx4cmVmIHRhcmdldD0iZW5lcmd5LWRlY29kaW5n
Ii8+PC9jPjxjPjwvYz4KKzxjPnJlc2lkdWFsPC9jPiAgICAgPGM+PHhyZWYgdGFyZ2V0PSJQVlEt
ZGVjb2RlciIvPjwvYz48Yz48L2M+Cis8Yz5hbnRpLWNvbGxhcHNlPC9jPjxjPnsxLCAxfS8yPC9j
PjxjPjx4cmVmIHRhcmdldD0iYW50aS1jb2xsYXBzZSIvPjwvYz4KKzxjPmZpbmFsaXplPC9jPiAg
ICAgPGM+PHhyZWYgdGFyZ2V0PSJlbmVyZ3ktZGVjb2RpbmciLz48L2M+PGM+PC9jPgorPC90ZXh0
dGFibGU+CisKKzx0PgorVGhlIGRlY29kZXIgZXh0cmFjdHMgaW5mb3JtYXRpb24gZnJvbSB0aGUg
cmFuZ2UtY29kZWQgYml0c3RyZWFtIGluIHRoZSBvcmRlcgorZGVzY3JpYmVkIGluIDx4cmVmIHRh
cmdldD0nY2VsdF9zeW1ib2xzJy8+LiBJbiBzb21lIGNpcmN1bXN0YW5jZXMsIGl0IGlzCitwb3Nz
aWJsZSBmb3IgYSBkZWNvZGVkIHZhbHVlIHRvIGJlIG91dCBvZiByYW5nZSBkdWUgdG8gYSB2ZXJ5
IHNtYWxsIGFtb3VudCBvZiByZWR1bmRhbmN5CitpbiB0aGUgZW5jb2Rpbmcgb2YgbGFyZ2UgaW50
ZWdlcnMgYnkgdGhlIHJhbmdlIGNvZGVyLgorSW4gdGhhdCBjYXNlLCB0aGUgZGVjb2RlciBzaG91
bGQgYXNzdW1lIHRoZXJlIGhhcyBiZWVuIGFuIGVycm9yIGluIHRoZSBjb2RpbmcsCitkZWNvZGlu
Zywgb3IgdHJhbnNtaXNzaW9uIGFuZCBTSE9VTEQgdGFrZSBtZWFzdXJlcyB0byBjb25jZWFsIHRo
ZSBlcnJvciBhbmQvb3IgcmVwb3J0Cit0byB0aGUgYXBwbGljYXRpb24gdGhhdCBhIHByb2JsZW0g
aGFzIG9jY3VycmVkLiBTdWNoIG91dCBvZiByYW5nZSBlcnJvcnMgY2Fubm90IG9jY3VyCitpbiB0
aGUgU0lMSyBsYXllci4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJ0cmFuc2llbnQtZGVjb2Rp
bmciIHRpdGxlPSJUcmFuc2llbnQgRGVjb2RpbmciPgorPHQ+CitUaGUgInRyYW5zaWVudCIgZmxh
ZyBpbmRpY2F0ZXMgd2hldGhlciB0aGUgZnJhbWUgdXNlcyBhIHNpbmdsZSBsb25nIE1EQ1Qgb3Ig
c2V2ZXJhbCBzaG9ydCBNRENUcy4KK1doZW4gaXQgaXMgc2V0LCB0aGVuIHRoZSBNRENUIGNvZWZm
aWNpZW50cyByZXByZXNlbnQgbXVsdGlwbGUKK3Nob3J0IE1EQ1RzIGluIHRoZSBmcmFtZS4gV2hl
biBub3Qgc2V0LCB0aGUgY29lZmZpY2llbnRzIHJlcHJlc2VudCBhIHNpbmdsZQorbG9uZyBNRENU
IGZvciB0aGUgZnJhbWUuIFRoZSBmbGFnIGlzIGVuY29kZWQgaW4gdGhlIGJpdHN0cmVhbSB3aXRo
IGEgcHJvYmFiaWxpdHkgb2YgMS84LgorSW4gYWRkaXRpb24gdG8gdGhlIGdsb2JhbCB0cmFuc2ll
bnQgZmxhZyBpcyBhIHBlci1iYW5kCitiaW5hcnkgZmxhZyB0byBjaGFuZ2UgdGhlIHRpbWUtZnJl
cXVlbmN5ICh0ZikgcmVzb2x1dGlvbiBpbmRlcGVuZGVudGx5IGluIGVhY2ggYmFuZC4gVGhlCitj
aGFuZ2UgaW4gdGYgcmVzb2x1dGlvbiBpcyBkZWZpbmVkIGluIHRmX3NlbGVjdF90YWJsZVtdW10g
aW4gY2VsdC5jIGFuZCBkZXBlbmRzCitvbiB0aGUgZnJhbWUgc2l6ZSwgd2hldGhlciB0aGUgdHJh
bnNpZW50IGZsYWcgaXMgc2V0LCBhbmQgdGhlIHZhbHVlIG9mIHRmX3NlbGVjdC4KK1RoZSB0Zl9z
ZWxlY3QgZmxhZyB1c2VzIGEgMS8yIHByb2JhYmlsaXR5LCBidXQgaXMgb25seSBkZWNvZGVkCitp
ZiBpdCBjYW4gaGF2ZSBhbiBpbXBhY3Qgb24gdGhlIHJlc3VsdCBrbm93aW5nIHRoZSB2YWx1ZSBv
ZiBhbGwgcGVyLWJhbmQKK3RmX2NoYW5nZSBmbGFncy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNl
Y3Rpb24gYW5jaG9yPSJlbmVyZ3ktZGVjb2RpbmciIHRpdGxlPSJFbmVyZ3kgRW52ZWxvcGUgRGVj
b2RpbmciPgorCis8dD4KK0l0IGlzIGltcG9ydGFudCB0byBxdWFudGl6ZSB0aGUgZW5lcmd5IHdp
dGggc3VmZmljaWVudCByZXNvbHV0aW9uIGJlY2F1c2UKK2FueSBlbmVyZ3kgcXVhbnRpemF0aW9u
IGVycm9yIGNhbm5vdCBiZSBjb21wZW5zYXRlZCBmb3IgYXQgYSBsYXRlcgorc3RhZ2UuIFJlZ2Fy
ZGxlc3Mgb2YgdGhlIHJlc29sdXRpb24gdXNlZCBmb3IgZW5jb2RpbmcgdGhlIHNwZWN0cmFsIHNo
YXBlIG9mIGEgYmFuZCwKK2l0IGlzIHBlcmNlcHR1YWxseSBpbXBvcnRhbnQgdG8gcHJlc2VydmUg
dGhlIGVuZXJneSBpbiBlYWNoIGJhbmQuIENFTFQgdXNlcyBhCit0aHJlZS1zdGVwIGNvYXJzZS1m
aW5lLWZpbmUgc3RyYXRlZ3kgZm9yIGVuY29kaW5nIHRoZSBlbmVyZ3kgaW4gdGhlIGJhc2UtMiBs
b2cKK2RvbWFpbiwgYXMgaW1wbGVtZW50ZWQgaW4gcXVhbnRfYmFuZHMuYzwvdD4KKworPHNlY3Rp
b24gYW5jaG9yPSJjb2Fyc2UtZW5lcmd5LWRlY29kaW5nIiB0aXRsZT0iQ29hcnNlIGVuZXJneSBk
ZWNvZGluZyI+Cis8dD4KK0NvYXJzZSBxdWFudGl6YXRpb24gb2YgdGhlIGVuZXJneSB1c2VzIGEg
Zml4ZWQgcmVzb2x1dGlvbiBvZiA2IGRCCisoaW50ZWdlciBwYXJ0IG9mIGJhc2UtMiBsb2cpLiBU
byBtaW5pbWl6ZSB0aGUgYml0cmF0ZSwgcHJlZGljdGlvbiBpcyBhcHBsaWVkCitib3RoIGluIHRp
bWUgKHVzaW5nIHRoZSBwcmV2aW91cyBmcmFtZSkgYW5kIGluIGZyZXF1ZW5jeSAodXNpbmcgdGhl
IHByZXZpb3VzCitiYW5kcykuIFRoZSBwYXJ0IG9mIHRoZSBwcmVkaWN0aW9uIHRoYXQgaXMgYmFz
ZWQgb24gdGhlCitwcmV2aW91cyBmcmFtZSBjYW4gYmUgZGlzYWJsZWQsIGNyZWF0aW5nIGFuICJp
bnRyYSIgZnJhbWUgd2hlcmUgdGhlIGVuZXJneQoraXMgY29kZWQgd2l0aG91dCByZWZlcmVuY2Ug
dG8gcHJpb3IgZnJhbWVzLiBUaGUgZGVjb2RlciBmaXJzdCByZWFkcyB0aGUgaW50cmEgZmxhZwor
dG8gZGV0ZXJtaW5lIHdoYXQgcHJlZGljdGlvbiBpcyB1c2VkLgorVGhlIDItRCB6LXRyYW5zZm9y
bSA8eHJlZiB0YXJnZXQ9J3otdHJhbnNmb3JtJy8+IG9mCit0aGUgcHJlZGljdGlvbiBmaWx0ZXIg
aXM6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFb
Q0RBVEFbCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTEgICAgICAgICAgLTEKKyAgICAg
ICAgICAgICAgKDEgLSBhbHBoYSp6X2wgICkqKDEgLSB6X2IgICkKK0Eoel9sLCB6X2IpID0gLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC0xCisgICAgICAgICAgICAgICAgICAgICAxIC0gYmV0YSp6X2IKK11dPjwvYXJ0d29yaz4K
KzwvZmlndXJlPgord2hlcmUgYiBpcyB0aGUgYmFuZCBpbmRleCBhbmQgbCBpcyB0aGUgZnJhbWUg
aW5kZXguIFRoZSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cworYXBwbGllZCBkZXBlbmQgb24gdGhl
IGZyYW1lIHNpemUgaW4gdXNlIHdoZW4gbm90IHVzaW5nIGludHJhIGVuZXJneSBhbmQgYXJlIGFs
cGhhPTAsIGJldGE9NDkxNS8zMjc2OAord2hlbiB1c2luZyBpbnRyYSBlbmVyZ3kuCitUaGUgdGlt
ZS1kb21haW4gcHJlZGljdGlvbiBpcyBiYXNlZCBvbiB0aGUgZmluYWwgZmluZSBxdWFudGl6YXRp
b24gb2YgdGhlIHByZXZpb3VzCitmcmFtZSwgd2hpbGUgdGhlIGZyZXF1ZW5jeSBkb21haW4gKHdp
dGhpbiB0aGUgY3VycmVudCBmcmFtZSkgcHJlZGljdGlvbiBpcyBiYXNlZAorb24gY29hcnNlIHF1
YW50aXphdGlvbiBvbmx5IChiZWNhdXNlIHRoZSBmaW5lIHF1YW50aXphdGlvbiBoYXMgbm90IGJl
ZW4gY29tcHV0ZWQKK3lldCkuIFRoZSBwcmVkaWN0aW9uIGlzIGNsYW1wZWQgaW50ZXJuYWxseSBz
byB0aGF0IGZpeGVkIHBvaW50IGltcGxlbWVudGF0aW9ucyB3aXRoCitsaW1pdGVkIGR5bmFtaWMg
cmFuZ2UgYWx3YXlzIHJlbWFpbiBpbiB0aGUgc2FtZSBzdGF0ZSBhcyBmbG9hdGluZyBwb2ludCBp
bXBsZW1lbnRhdGlvbnMuCitXZSBhcHByb3hpbWF0ZSB0aGUgaWRlYWwKK3Byb2JhYmlsaXR5IGRp
c3RyaWJ1dGlvbiBvZiB0aGUgcHJlZGljdGlvbiBlcnJvciB1c2luZyBhIExhcGxhY2UgZGlzdHJp
YnV0aW9uCit3aXRoIHNlcGFyYXRlIHBhcmFtZXRlcnMgZm9yIGVhY2ggZnJhbWUgc2l6ZSBpbiBp
bnRyYS0gYW5kIGludGVyLWZyYW1lIG1vZGVzLiBUaGVzZQorcGFyYW1ldGVycyBhcmUgaGVsZCBp
biB0aGUgZV9wcm9iX21vZGVsIHRhYmxlIGluIHF1YW50X2JhbmRzLmMuCitUaGUKK2NvYXJzZSBl
bmVyZ3kgcXVhbnRpemF0aW9uIGlzIHBlcmZvcm1lZCBieSB1bnF1YW50X2NvYXJzZV9lbmVyZ3ko
KSBhbmQKK3VucXVhbnRfY29hcnNlX2VuZXJneV9pbXBsKCkgKHF1YW50X2JhbmRzLmMpLiBUaGUg
ZW5jb2Rpbmcgb2YgdGhlIExhcGxhY2UtZGlzdHJpYnV0ZWQgdmFsdWVzIGlzCitpbXBsZW1lbnRl
ZCBpbiBlY19sYXBsYWNlX2RlY29kZSgpIChsYXBsYWNlLmMpLgorPC90PgorCis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0iZmluZS1lbmVyZ3ktZGVjb2RpbmciIHRpdGxlPSJGaW5lIGVu
ZXJneSBxdWFudGl6YXRpb24iPgorPHQ+CitUaGUgbnVtYmVyIG9mIGJpdHMgYXNzaWduZWQgdG8g
ZmluZSBlbmVyZ3kgcXVhbnRpemF0aW9uIGluIGVhY2ggYmFuZCBpcyBkZXRlcm1pbmVkCitieSB0
aGUgYml0IGFsbG9jYXRpb24gY29tcHV0YXRpb24gZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0i
YWxsb2NhdGlvbiI+PC94cmVmPi4KK0xldCBCX2kgYmUgdGhlIG51bWJlciBvZiBmaW5lIGVuZXJn
eSBiaXRzCitmb3IgYmFuZCBpOyB0aGUgcmVmaW5lbWVudCBpcyBhbiBpbnRlZ2VyIGYgaW4gdGhl
IHJhbmdlIFswLDIqKkJfaS0xXS4gVGhlIG1hcHBpbmcgYmV0d2VlbiBmCithbmQgdGhlIGNvcnJl
Y3Rpb24gYXBwbGllZCB0byB0aGUgY29hcnNlIGVuZXJneSBpcyBlcXVhbCB0byAoZisxLzIpLzIq
KkJfaSAtIDEvMi4gRmluZQorZW5lcmd5IHF1YW50aXphdGlvbiBpcyBpbXBsZW1lbnRlZCBpbiBx
dWFudF9maW5lX2VuZXJneSgpIChxdWFudF9iYW5kcy5jKS4KKzwvdD4KKzx0PgorV2hlbiBzb21l
IGJpdHMgYXJlIGxlZnQgInVudXNlZCIgYWZ0ZXIgYWxsIG90aGVyIGZsYWdzIGhhdmUgYmVlbiBk
ZWNvZGVkLCB0aGVzZSBiaXRzCithcmUgYXNzaWduZWQgdG8gYSAiZmluYWwiIHN0ZXAgb2YgZmlu
ZSBhbGxvY2F0aW9uLiBJbiBlZmZlY3QsIHRoZXNlIGJpdHMgYXJlIHVzZWQKK3RvIGFkZCBvbmUg
ZXh0cmEgZmluZSBlbmVyZ3kgYml0IHBlciBiYW5kIHBlciBjaGFubmVsLiBUaGUgYWxsb2NhdGlv
biBwcm9jZXNzCitkZXRlcm1pbmVzIHR3byAicHJpb3JpdGllcyIgZm9yIHRoZSBmaW5hbCBmaW5l
IGJpdHMuCitBbnkgcmVtYWluaW5nIGJpdHMgYXJlIGZpcnN0IGFzc2lnbmVkIG9ubHkgdG8gYmFu
ZHMgb2YgcHJpb3JpdHkgMCwgc3RhcnRpbmcKK2Zyb20gYmFuZCAwIGFuZCBnb2luZyB1cC4gSWYg
YWxsIGJhbmRzIG9mIHByaW9yaXR5IDAgaGF2ZSByZWNlaXZlZCBvbmUgYml0IHBlcgorY2hhbm5l
bCwgdGhlbiBiYW5kcyBvZiBwcmlvcml0eSAxIGFyZSBhc3NpZ25lZCBhbiBleHRyYSBiaXQgcGVy
IGNoYW5uZWwsCitzdGFydGluZyBmcm9tIGJhbmQgMC4gSWYgYW55IGJpdHMgYXJlIGxlZnQgYWZ0
ZXIgdGhpcywgdGhleSBhcmUgbGVmdCB1bnVzZWQuCitUaGlzIGlzIGltcGxlbWVudGVkIGluIHVu
cXVhbnRfZW5lcmd5X2ZpbmFsaXNlKCkgKHF1YW50X2JhbmRzLmMpLgorPC90PgorCis8L3NlY3Rp
b24+IDwhLS0gZmluZSBlbmVyZ3kgLS0+CisKKzwvc2VjdGlvbj4gPCEtLSBFbmVyZ3kgZGVjb2Rl
IC0tPgorCis8c2VjdGlvbiBhbmNob3I9ImFsbG9jYXRpb24iIHRpdGxlPSJCaXQgQWxsb2NhdGlv
biI+CisKKzx0PkJlY2F1c2UgdGhlIGJpdCBhbGxvY2F0aW9uIGRyaXZlcyB0aGUgZGVjb2Rpbmcg
b2YgdGhlIHJhbmdlLWNvZGVyCitzdHJlYW0sIGl0IE1VU1QgYmUgcmVjb3ZlcmVkIGV4YWN0bHkg
c28gdGhhdCBpZGVudGljYWwgY29kaW5nIGRlY2lzaW9ucyBhcmUKK21hZGUgaW4gdGhlIGVuY29k
ZXIgYW5kIGRlY29kZXIuIEFueSBkZXZpYXRpb24gZnJvbSB0aGUgcmVmZXJlbmNlJ3MgcmVzdWx0
aW5nCitiaXQgYWxsb2NhdGlvbiB3aWxsIHJlc3VsdCBpbiBjb3JydXB0ZWQgb3V0cHV0LCB0aG91
Z2ggaW1wbGVtZW50ZXJzIGFyZQorZnJlZSB0byBpbXBsZW1lbnQgdGhlIHByb2NlZHVyZSBpbiBh
bnkgd2F5IHdoaWNoIHByb2R1Y2VzIGlkZW50aWNhbCByZXN1bHRzLjwvdD4KKworPHQ+VGhlIHBl
ci1iYW5kIGdhaW4tc2hhcGUgc3RydWN0dXJlIG9mIHRoZSBDRUxUIGxheWVyIGVuc3VyZXMgdGhh
dCB1c2luZworIHRoZSBzYW1lIG51bWJlciBvZiBiaXRzIGZvciB0aGUgc3BlY3RyYWwgc2hhcGUg
b2YgYSBiYW5kIGluIGV2ZXJ5IGZyYW1lIHdpbGwKKyByZXN1bHQgaW4gYSByb3VnaGx5IGNvbnN0
YW50IHNpZ25hbC10by1ub2lzZSByYXRpbyBpbiB0aGF0IGJhbmQuCitUaGlzIHJlc3VsdHMgaW4g
Y29kaW5nIG5vaXNlIHRoYXQgaGFzIHRoZSBzYW1lIHNwZWN0cmFsIGVudmVsb3BlIGFzIHRoZSBz
aWduYWwuCitUaGUgbWFza2luZyBjdXJ2ZSBwcm9kdWNlZCBieSBhIHN0YW5kYXJkIHBzeWNob2Fj
b3VzdGljIG1vZGVsIGFsc28gY2xvc2VseQorIGZvbGxvd3MgdGhlIHNwZWN0cmFsIGVudmVsb3Bl
IG9mIHRoZSBzaWduYWwuCitUaGlzIHN0cnVjdHVyZSBtZWFucyB0aGF0IHRoZSBpZGVhbCBhbGxv
Y2F0aW9uIGlzIG1vcmUgY29uc2lzdGVudCBmcm9tIGZyYW1lIHRvCisgZnJhbWUgdGhhbiBpdCBp
cyBmb3Igb3RoZXIgY29kZWNzIHdpdGhvdXQgYW4gZXF1aXZhbGVudCBzdHJ1Y3R1cmUsIGFuZCB0
aGF0IGEKKyBmaXhlZCBhbGxvY2F0aW9uIHByb3ZpZGVzIGZhaXJseSBjb25zaXN0ZW50IHBlcmNl
cHR1YWwKKyBwZXJmb3JtYW5jZSZuYnNwOzx4cmVmIHRhcmdldD0nVmFsaW4yMDEwJy8+LjwvdD4K
KworPHQ+TWFueSBjb2RlY3MgdHJhbnNtaXQgc2lnbmlmaWNhbnQgYW1vdW50cyBvZiBzaWRlIGlu
Zm9ybWF0aW9uIHRvIGNvbnRyb2wgdGhlCisgYml0IGFsbG9jYXRpb24gd2l0aGluIGEgZnJhbWUu
CitPZnRlbiB0aGlzIGNvbnRyb2wgaXMgb25seSBpbmRpcmVjdCwgYW5kIG11c3QgYmUgZXhlcmNp
c2VkIGNhcmVmdWxseSB0bworIGFjaGlldmUgdGhlIGRlc2lyZWQgcmF0ZSBjb25zdHJhaW50cy4K
K1RoZSBDRUxUIGxheWVyLCBob3dldmVyLCBjYW4gYWRhcHQgb3ZlciBhIHZlcnkgd2lkZSByYW5n
ZSBvZiByYXRlcywgYW5kIHRodXMKKyBoYXMgYSBsYXJnZSBudW1iZXIgb2YgY29kZWJvb2sgc2l6
ZXMgdG8gY2hvb3NlIGZyb20gZm9yIGVhY2ggYmFuZC4KK0V4cGxpY2l0bHkgc2lnbmFsaW5nIHRo
ZSBzaXplIG9mIGVhY2ggb2YgdGhlc2UgY29kZWJvb2tzIHdvdWxkIGltcG9zZQorIGNvbnNpZGVy
YWJsZSBvdmVyaGVhZCwgZXZlbiB0aG91Z2ggdGhlIGFsbG9jYXRpb24gaXMgcmVsYXRpdmVseSBz
dGF0aWMgZnJvbQorIGZyYW1lIHRvIGZyYW1lLgorVGhpcyBpcyBiZWNhdXNlIGFsbCBvZiB0aGUg
aW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gY29tcHV0ZSB0aGVzZSBjb2RlYm9vayBzaXplcworIG11
c3QgYmUgZGVyaXZlZCBmcm9tIGEgc2luZ2xlIGZyYW1lIGJ5IGl0c2VsZiwgaW4gb3JkZXIgdG8g
cmV0YWluIHJvYnVzdG5lc3MKKyB0byBwYWNrZXQgbG9zcywgc28gdGhlIHNpZ25hbGluZyBjYW5u
b3QgdGFrZSBhZHZhbnRhZ2Ugb2Yga25vd2xlZGdlIG9mIHRoZQorIGFsbG9jYXRpb24gaW4gbmVp
Z2hib3JpbmcgZnJhbWVzLgorVGhpcyBwcm9ibGVtIGlzIGV4YWNlcmJhdGVkIGluIGxvdy1sYXRl
bmN5IChzbWFsbCBmcmFtZSBzaXplKSBhcHBsaWNhdGlvbnMsCisgd2hpY2ggd291bGQgaW5jbHVk
ZSB0aGlzIG92ZXJoZWFkIGluIGV2ZXJ5IGZyYW1lLjwvdD4KKworPHQ+Rm9yIHRoaXMgcmVhc29u
LCBpbiB0aGUgTURDVCBtb2RlIE9wdXMgdXNlcyBhIHByaW1hcmlseSBpbXBsaWNpdCBiaXQKK2Fs
bG9jYXRpb24uIFRoZSBhdmFpbGFibGUgYml0c3RyZWFtIGNhcGFjaXR5IGlzIGtub3duIGluIGFk
dmFuY2UgdG8gYm90aAordGhlIGVuY29kZXIgYW5kIGRlY29kZXIgd2l0aG91dCBhZGRpdGlvbmFs
IHNpZ25hbGluZywgdWx0aW1hdGVseSBmcm9tIHRoZQorcGFja2V0IHNpemVzIGV4cHJlc3NlZCBi
eSBhIGhpZ2hlci1sZXZlbCBwcm90b2NvbC4gVXNpbmcgdGhpcyBpbmZvcm1hdGlvbiwKK3RoZSBj
b2RlYyBpbnRlcnBvbGF0ZXMgYW4gYWxsb2NhdGlvbiBmcm9tIGEgaGFyZC1jb2RlZCB0YWJsZS48
L3Q+CisKKzx0PldoaWxlIHRoZSBiYW5kLWVuZXJneSBzdHJ1Y3R1cmUgZWZmZWN0aXZlbHkgbW9k
ZWxzIGludHJhLWJhbmQgbWFza2luZywKK2l0IGlnbm9yZXMgdGhlIHdlYWtlciBpbnRlci1iYW5k
IG1hc2tpbmcsIGJhbmQtdGVtcG9yYWwgbWFza2luZywgYW5kCitvdGhlciBsZXNzIHNpZ25pZmlj
YW50IHBlcmNlcHR1YWwgZWZmZWN0cy4gV2hpbGUgdGhlc2UgZWZmZWN0cyBjYW4KK29mdGVuIGJl
IGlnbm9yZWQsIHRoZXkgY2FuIGJlY29tZSBzaWduaWZpY2FudCBmb3IgcGFydGljdWxhciBzYW1w
bGVzLiBPbmUKK21lY2hhbmlzbSBhdmFpbGFibGUgdG8gZW5jb2RlcnMgd291bGQgYmUgdG8gc2lt
cGx5IGluY3JlYXNlIHRoZSBvdmVyYWxsCityYXRlIGZvciB0aGVzZSBmcmFtZXMsIGJ1dCB0aGlz
IGlzIG5vdCBwb3NzaWJsZSBpbiBhIGNvbnN0YW50IHJhdGUgbW9kZQorYW5kIGNhbiBiZSBmYWly
bHkgaW5lZmZpY2llbnQuIEFzIGEgcmVzdWx0IHRocmVlIGV4cGxpY2l0bHkgc2lnbmFsZWQKK21l
Y2hhbmlzbXMgYXJlIHByb3ZpZGVkIHRvIGFsdGVyIHRoZSBpbXBsaWNpdCBhbGxvY2F0aW9uOjwv
dD4KKworPHQ+Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5CYW5kIGJvb3N0PC90PgorPHQ+
QWxsb2NhdGlvbiB0cmltPC90PgorPHQ+QmFuZCBza2lwcGluZzwvdD4KKzwvbGlzdD4KKzwvdD4K
KworPHQ+VGhlIGZpcnN0IG9mIHRoZXNlIG1lY2hhbmlzbXMsIGJhbmQgYm9vc3QsIGFsbG93cyBh
biBlbmNvZGVyIHRvIGJvb3N0Cit0aGUgYWxsb2NhdGlvbiBpbiBzcGVjaWZpYyBiYW5kcy4gVGhl
IHNlY29uZCwgYWxsb2NhdGlvbiB0cmltLCB3b3JrcyBieQorYmlhc2luZyB0aGUgb3ZlcmFsbCBh
bGxvY2F0aW9uIHRvd2FyZHMgaGlnaGVyIG9yIGxvd2VyIGZyZXF1ZW5jeSBiYW5kcy4gVGhlIHRo
aXJkLCBiYW5kCitza2lwcGluZywgc2VsZWN0cyB3aGljaCBsb3ctcHJlY2lzaW9uIGhpZ2ggZnJl
cXVlbmN5IGJhbmRzCit3aWxsIGJlIGFsbG9jYXRlZCBubyBzaGFwZSBiaXRzIGF0IGFsbC48L3Q+
CisKKzx0PkluIHN0ZXJlbyBtb2RlIHRoZXJlIGFyZSB0d28gYWRkaXRpb25hbCBwYXJhbWV0ZXJz
Citwb3RlbnRpYWxseSBjb2RlZCBhcyBwYXJ0IG9mIHRoZSBhbGxvY2F0aW9uIHByb2NlZHVyZTog
YSBwYXJhbWV0ZXIgdG8gYWxsb3cgdGhlCitzZWxlY3RpdmUgZWxpbWluYXRpb24gb2YgYWxsb2Nh
dGlvbiBmb3IgdGhlICdzaWRlJyAoaS5lLiwgaW50ZW5zaXR5IHN0ZXJlbykgaW4gam9pbnRseSBj
b2RlZCBiYW5kcywKK2FuZCBhIGZsYWcgdG8gZGVhY3RpdmF0ZSBqb2ludCBjb2RpbmcgKGkuZS4s
IGR1YWwgc3RlcmVvKS4gVGhlc2UgdmFsdWVzIGFyZSBub3Qgc2lnbmFsZWQgaWYKK3RoZXkgd291
bGQgYmUgbWVhbmluZ2xlc3MgaW4gdGhlIG92ZXJhbGwgY29udGV4dCBvZiB0aGUgYWxsb2NhdGlv
bi48L3Q+CisKKzx0PkJlY2F1c2UgZXZlcnkgc2lnbmFsZWQgYWRqdXN0bWVudCBpbmNyZWFzZXMg
b3ZlcmhlYWQgYW5kIGltcGxlbWVudGF0aW9uCitjb21wbGV4aXR5LCBub25lIHdlcmUgaW5jbHVk
ZWQgc3BlY3VsYXRpdmVseTogdGhlIHJlZmVyZW5jZSBlbmNvZGVyIG1ha2VzIHVzZQorb2YgYWxs
IG9mIHRoZXNlIG1lY2hhbmlzbXMuIFdoaWxlIHRoZSBkZWNpc2lvbiBsb2dpYyBpbiB0aGUgcmVm
ZXJlbmNlIHdhcworZm91bmQgdG8gYmUgZWZmZWN0aXZlIGVub3VnaCB0byBqdXN0aWZ5IHRoZSBv
dmVyaGVhZCBhbmQgY29tcGxleGl0eSwgZnVydGhlcgorYW5hbHlzaXMgdGVjaG5pcXVlcyBtYXkg
YmUgZGlzY292ZXJlZCB3aGljaCBpbmNyZWFzZSB0aGUgZWZmZWN0aXZlbmVzcyBvZiB0aGVzZQor
cGFyYW1ldGVycy4gQXMgd2l0aCBvdGhlciBzaWduYWxlZCBwYXJhbWV0ZXJzLCBhbiBlbmNvZGVy
IGlzIGZyZWUgdG8gY2hvb3NlIHRoZQordmFsdWVzIGluIGFueSBtYW5uZXIsIGJ1dCB1bmxlc3Mg
YSB0ZWNobmlxdWUgaXMga25vd24gdG8gZGVsaXZlciBzdXBlcmlvcgorcGVyY2VwdHVhbCByZXN1
bHRzIHRoZSBtZXRob2RzIHVzZWQgYnkgdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBzaG91
bGQgYmUKK3VzZWQuPC90PgorCis8dD5UaGUgYWxsb2NhdGlvbiBwcm9jZXNzIGNvbnNpc3RzIG9m
IHRoZSBmb2xsb3dpbmcgc3RlcHM6IGRldGVybWluaW5nIHRoZSBwZXItYmFuZAorbWF4aW11bSBh
bGxvY2F0aW9uIHZlY3RvciwgZGVjb2RpbmcgdGhlIGJvb3N0cywgZGVjb2RpbmcgdGhlIHRpbHQs
IGRldGVybWluaW5nCit0aGUgcmVtYWluaW5nIGNhcGFjaXR5IG9mIHRoZSBmcmFtZSwgc2VhcmNo
aW5nIHRoZSBtb2RlIHRhYmxlIGZvciB0aGUKK2VudHJ5IG5lYXJlc3QgYnV0IG5vdCBleGNlZWRp
bmcgdGhlIGF2YWlsYWJsZSBzcGFjZSAoc3ViamVjdCB0byB0aGUgdGlsdCwgYm9vc3RzLCBiYW5k
CittYXhpbXVtcywgYW5kIGJhbmQgbWluaW11bXMpLCBsaW5lYXIgaW50ZXJwb2xhdGlvbiwgcmVh
bGxvY2F0aW9uIG9mCit1bnVzZWQgYml0cyB3aXRoIGNvbmN1cnJlbnQgc2tpcCBkZWNvZGluZywg
ZGV0ZXJtaW5hdGlvbiBvZiB0aGUKK2ZpbmUtZW5lcmd5IHZzLiBzaGFwZSBzcGxpdCwgYW5kIGZp
bmFsIHJlYWxsb2NhdGlvbi4gVGhpcyBwcm9jZXNzIHJlc3VsdHMKK2luIGEgcGVyLWJhbmQgc2hh
cGUgYWxsb2NhdGlvbiAoaW4gMS84dGggYml0IHVuaXRzKSwgYSBwZXItYmFuZCBmaW5lLWVuZXJn
eQorYWxsb2NhdGlvbiAoaW4gMSBiaXQgcGVyIGNoYW5uZWwgdW5pdHMpLCBhIHNldCBvZiBiYW5k
IHByaW9yaXRpZXMgZm9yCitjb250cm9sbGluZyB0aGUgdXNlIG9mIHJlbWFpbmluZyBiaXRzIGF0
IHRoZSBlbmQgb2YgdGhlIGZyYW1lLCBhbmQgYQorcmVtYWluaW5nIGJhbGFuY2Ugb2YgdW5hbGxv
Y2F0ZWQgc3BhY2UsIHdoaWNoIGlzIHVzdWFsbHkgemVybyBleGNlcHQKK2F0IHZlcnkgaGlnaCBy
YXRlcy48L3Q+CisKKzx0PgorVGhlICJzdGF0aWMiIGJpdCBhbGxvY2F0aW9uIChpbiAxLzggYml0
cykgZm9yIGEgcXVhbGl0eSBxLCBleGNsdWRpbmcgdGhlIG1pbmltdW1zLCBtYXhpbXVtcywKK3Rp
bHQgYW5kIGJvb3N0cywgaXMgZXF1YWwgdG8gY2hhbm5lbHMqTiphbGxvY1tiYW5kXVtxXSZsdDsm
bHQ7TE0mZ3Q7Jmd0OzIsIHdoZXJlCithbGxvY1tdW10gaXMgZ2l2ZW4gaW4gPHhyZWYgdGFyZ2V0
PSJzdGF0aWNfYWxsb2MiLz4gYW5kIExNPWxvZzIoZnJhbWVfc2l6ZS8xMjApLiBUaGUgYWxsb2Nh
dGlvbgoraXMgb2J0YWluZWQgYnkgbGluZWFybHkgaW50ZXJwb2xhdGluZyBiZXR3ZWVuIHR3byB2
YWx1ZXMgb2YgcSAoaW4gc3RlcHMgb2YgMS82NCkgdG8gZmluZCB0aGUKK2hpZ2hlc3QgYWxsb2Nh
dGlvbiB0aGF0IGRvZXMgbm90IGV4Y2VlZCB0aGUgbnVtYmVyIG9mIGJpdHMgcmVtYWluaW5nLgor
PC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic3RhdGljX2FsbG9jIgorIHRpdGxlPSJDRUxUIFN0
YXRpYyBBbGxvY2F0aW9uIFRhYmxlIj4KKyA8cHJlYW1ibGU+Um93cyBpbmRpY2F0ZSB0aGUgTURD
VCBiYW5kcywgY29sdW1ucyBhcmUgdGhlIGRpZmZlcmVudCBxdWFsaXR5IChxKSBwYXJhbWV0ZXJz
LiBUaGUgdW5pdHMgYXJlIDEvMzIgYml0IHBlciBNRENUIGJpbi48L3ByZWFtYmxlPgorPHR0Y29s
IGFsaWduPSJyaWdodCI+MDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4xPC90dGNvbD4K
Kzx0dGNvbCBhbGlnbj0icmlnaHQiPjI8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+Mzwv
dHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij40PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmln
aHQiPjU8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+NjwvdHRjb2w+Cis8dHRjb2wgYWxp
Z249InJpZ2h0Ij43PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjg8L3R0Y29sPgorPHR0
Y29sIGFsaWduPSJyaWdodCI+OTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4xMDwvdHRj
b2w+Cis8Yz4wPC9jPjxjPjkwPC9jPjxjPjExMDwvYz48Yz4xMTg8L2M+PGM+MTI2PC9jPjxjPjEz
NDwvYz48Yz4xNDQ8L2M+PGM+MTUyPC9jPjxjPjE2MjwvYz48Yz4xNzI8L2M+PGM+MjAwPC9jPgor
PGM+MDwvYz48Yz44MDwvYz48Yz4xMDA8L2M+PGM+MTEwPC9jPjxjPjExOTwvYz48Yz4xMjc8L2M+
PGM+MTM3PC9jPjxjPjE0NTwvYz48Yz4xNTU8L2M+PGM+MTY1PC9jPjxjPjIwMDwvYz4KKzxjPjA8
L2M+PGM+NzU8L2M+PGM+OTA8L2M+PGM+MTAzPC9jPjxjPjExMjwvYz48Yz4xMjA8L2M+PGM+MTMw
PC9jPjxjPjEzODwvYz48Yz4xNDg8L2M+PGM+MTU4PC9jPjxjPjIwMDwvYz4KKzxjPjA8L2M+PGM+
Njk8L2M+PGM+ODQ8L2M+PGM+OTM8L2M+PGM+MTA0PC9jPjxjPjExNDwvYz48Yz4xMjQ8L2M+PGM+
MTMyPC9jPjxjPjE0MjwvYz48Yz4xNTI8L2M+PGM+MjAwPC9jPgorPGM+MDwvYz48Yz42MzwvYz48
Yz43ODwvYz48Yz44NjwvYz48Yz45NTwvYz48Yz4xMDM8L2M+PGM+MTEzPC9jPjxjPjEyMzwvYz48
Yz4xMzM8L2M+PGM+MTQzPC9jPjxjPjIwMDwvYz4KKzxjPjA8L2M+PGM+NTY8L2M+PGM+NzE8L2M+
PGM+ODA8L2M+PGM+ODk8L2M+PGM+OTc8L2M+PGM+MTA3PC9jPjxjPjExNzwvYz48Yz4xMjc8L2M+
PGM+MTM3PC9jPjxjPjIwMDwvYz4KKzxjPjA8L2M+PGM+NDk8L2M+PGM+NjU8L2M+PGM+NzU8L2M+
PGM+ODM8L2M+PGM+OTE8L2M+PGM+MTAxPC9jPjxjPjExMTwvYz48Yz4xMjE8L2M+PGM+MTMxPC9j
PjxjPjIwMDwvYz4KKzxjPjA8L2M+PGM+NDA8L2M+PGM+NTg8L2M+PGM+NzA8L2M+PGM+Nzg8L2M+
PGM+ODU8L2M+PGM+OTU8L2M+PGM+MTA1PC9jPjxjPjExNTwvYz48Yz4xMjU8L2M+PGM+MjAwPC9j
PgorPGM+MDwvYz48Yz4zNDwvYz48Yz41MTwvYz48Yz42NTwvYz48Yz43MjwvYz48Yz43ODwvYz48
Yz44ODwvYz48Yz45ODwvYz48Yz4xMDg8L2M+PGM+MTE4PC9jPjxjPjE5ODwvYz4KKzxjPjA8L2M+
PGM+Mjk8L2M+PGM+NDU8L2M+PGM+NTk8L2M+PGM+NjY8L2M+PGM+NzI8L2M+PGM+ODI8L2M+PGM+
OTI8L2M+PGM+MTAyPC9jPjxjPjExMjwvYz48Yz4xOTM8L2M+Cis8Yz4wPC9jPjxjPjIwPC9jPjxj
PjM5PC9jPjxjPjUzPC9jPjxjPjYwPC9jPjxjPjY2PC9jPjxjPjc2PC9jPjxjPjg2PC9jPjxjPjk2
PC9jPjxjPjEwNjwvYz48Yz4xODg8L2M+Cis8Yz4wPC9jPjxjPjE4PC9jPjxjPjMyPC9jPjxjPjQ3
PC9jPjxjPjU0PC9jPjxjPjYwPC9jPjxjPjcwPC9jPjxjPjgwPC9jPjxjPjkwPC9jPjxjPjEwMDwv
Yz48Yz4xODM8L2M+Cis8Yz4wPC9jPjxjPjEwPC9jPjxjPjI2PC9jPjxjPjQwPC9jPjxjPjQ3PC9j
PjxjPjU0PC9jPjxjPjY0PC9jPjxjPjc0PC9jPjxjPjg0PC9jPjxjPjk0PC9jPjxjPjE3ODwvYz4K
KzxjPjA8L2M+PGM+MDwvYz48Yz4yMDwvYz48Yz4zMTwvYz48Yz4zOTwvYz48Yz40NzwvYz48Yz41
NzwvYz48Yz42NzwvYz48Yz43NzwvYz48Yz44NzwvYz48Yz4xNzM8L2M+Cis8Yz4wPC9jPjxjPjA8
L2M+PGM+MTI8L2M+PGM+MjM8L2M+PGM+MzI8L2M+PGM+NDE8L2M+PGM+NTE8L2M+PGM+NjE8L2M+
PGM+NzE8L2M+PGM+ODE8L2M+PGM+MTY4PC9jPgorPGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+
MTU8L2M+PGM+MjU8L2M+PGM+MzU8L2M+PGM+NDU8L2M+PGM+NTU8L2M+PGM+NjU8L2M+PGM+NzU8
L2M+PGM+MTYzPC9jPgorPGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+NDwvYz48Yz4xNzwvYz48
Yz4yOTwvYz48Yz4zOTwvYz48Yz40OTwvYz48Yz41OTwvYz48Yz42OTwvYz48Yz4xNTg8L2M+Cis8
Yz4wPC9jPjxjPjA8L2M+PGM+MDwvYz48Yz4wPC9jPjxjPjEyPC9jPjxjPjIzPC9jPjxjPjMzPC9j
PjxjPjQzPC9jPjxjPjUzPC9jPjxjPjYzPC9jPjxjPjE1MzwvYz4KKzxjPjA8L2M+PGM+MDwvYz48
Yz4wPC9jPjxjPjA8L2M+PGM+MTwvYz48Yz4xNjwvYz48Yz4yNjwvYz48Yz4zNjwvYz48Yz40Njwv
Yz48Yz41NjwvYz48Yz4xNDg8L2M+Cis8Yz4wPC9jPjxjPjA8L2M+PGM+MDwvYz48Yz4wPC9jPjxj
PjA8L2M+PGM+MTA8L2M+PGM+MTU8L2M+PGM+MjA8L2M+PGM+MzA8L2M+PGM+NDU8L2M+PGM+MTI5
PC9jPgorPGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+MDwvYz48Yz4wPC9jPjxjPjE8L2M+PGM+
MTwvYz48Yz4xPC9jPjxjPjE8L2M+PGM+MjA8L2M+PGM+MTA0PC9jPgorPC90ZXh0dGFibGU+CisK
Kzx0PlRoZSBtYXhpbXVtIGFsbG9jYXRpb24gdmVjdG9yIGlzIGFuIGFwcHJveGltYXRpb24gb2Yg
dGhlIG1heGltdW0gc3BhY2UKK3RoYXQgY2FuIGJlIHVzZWQgYnkgZWFjaCBiYW5kIGZvciBhIGdp
dmVuIG1vZGUuIFRoZSB2YWx1ZSBpcworYXBwcm94aW1hdGUgYmVjYXVzZSB0aGUgc2hhcGUgZW5j
b2RpbmcgaXMgdmFyaWFibGUgcmF0ZSAoZHVlCit0byBlbnRyb3B5IGNvZGluZyBvZiBzcGxpdHRp
bmcgcGFyYW1ldGVycykuIFNldHRpbmcgdGhlIG1heGltdW0gdG9vIGxvdyByZWR1Y2VzIHRoZQor
bWF4aW11bSBhY2hpZXZhYmxlIHF1YWxpdHkgaW4gYSBiYW5kIHdoaWxlIHNldHRpbmcgaXQgdG9v
IGhpZ2gKK21heSByZXN1bHQgaW4gd2FzdGU6IGJpdHN0cmVhbSBjYXBhY2l0eSBhdmFpbGFibGUg
YXQgdGhlIGVuZAorb2YgdGhlIGZyYW1lIHdoaWNoIGNhbiBub3QgYmUgcHV0IHRvIGFueSB1c2Uu
IFRoZSBtYXhpbXVtcworc3BlY2lmaWVkIGJ5IHRoZSBjb2RlYyByZWZsZWN0IHRoZSBhdmVyYWdl
IG1heGltdW0uIEluIHRoZSByZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uLCB0aGUgbWF4aW11bXMg
aW4gYml0cy9zYW1wbGUgYXJlIHByZWNvbXB1dGVkIGluIGEgc3RhdGljIHRhYmxlCisoc2VlIGNh
Y2hlX2NhcHM1MFtdIGluIHN0YXRpY19tb2Rlc19mbG9hdC5oKSBmb3IgZWFjaCBiYW5kLAorZm9y
IGVhY2ggdmFsdWUgb2YgTE0sIGFuZCBmb3IgYm90aCBtb25vIGFuZCBzdGVyZW8uCisKK0ltcGxl
bWVudGF0aW9ucyBhcmUgZXhwZWN0ZWQKK3RvIHNpbXBseSB1c2UgdGhlIHNhbWUgdGFibGUgZGF0
YSwgYnV0IHRoZSBwcm9jZWR1cmUgZm9yIGdlbmVyYXRpbmcKK3RoaXMgdGFibGUgaXMgaW5jbHVk
ZWQgaW4gcmF0ZS5jIGFzIHBhcnQgb2YgY29tcHV0ZV9wdWxzZV9jYWNoZSgpLjwvdD4KKworPHQ+
VG8gY29udmVydCB0aGUgdmFsdWVzIGluIGNhY2hlLmNhcHMgaW50byB0aGUgYWN0dWFsIG1heGlt
dW1zOiBmaXJzdAorc2V0IG5iQmFuZHMgdG8gdGhlIG1heGltdW0gbnVtYmVyIG9mIGJhbmRzIGZv
ciB0aGlzIG1vZGUsIGFuZCBzdGVyZW8gdG8KK3plcm8gaWYgc3RlcmVvIGlzIG5vdCBpbiB1c2Ug
YW5kIG9uZSBvdGhlcndpc2UuIEZvciBlYWNoIGJhbmQgc2V0IE4KK3RvIHRoZSBudW1iZXIgb2Yg
TURDVCBiaW5zIGNvdmVyZWQgYnkgdGhlIGJhbmQgKGZvciBvbmUgY2hhbm5lbCksIHNldCBMTQor
dG8gdGhlIHNoaWZ0IHZhbHVlIGZvciB0aGUgZnJhbWUgc2l6ZSwKK3RoZW4gc2V0IGkgdG8gbmJC
YW5kcyooMipMTStzdGVyZW8pLiBUaGVuIHNldCB0aGUgbWF4aW11bSBmb3IgdGhlIGJhbmQgdG8K
K3RoZSBpLXRoIGluZGV4IG9mIGNhY2hlLmNhcHMgKyA2NCBhbmQgbXVsdGlwbHkgYnkgdGhlIG51
bWJlciBvZiBjaGFubmVscworaW4gdGhlIGN1cnJlbnQgZnJhbWUgKG9uZSBvciB0d28pIGFuZCBi
eSBOLCB0aGVuIGRpdmlkZSB0aGUgcmVzdWx0IGJ5IDQKK3VzaW5nIGludGVnZXIgZGl2aXNpb24u
IFRoZSByZXN1bHRpbmcgdmVjdG9yIHdpbGwgYmUgY2FsbGVkCitjYXBbXS4gVGhlIGVsZW1lbnRz
IGZpdCBpbiBzaWduZWQgMTYtYml0IGludGVnZXJzIGJ1dCBkbyBub3QgZml0IGluIDggYml0cy4K
K1RoaXMgcHJvY2VkdXJlIGlzIGltcGxlbWVudGVkIGluIHRoZSByZWZlcmVuY2UgaW4gdGhlIGZ1
bmN0aW9uIGluaXRfY2FwcygpIGluIGNlbHQuYy4KKzwvdD4KKworPHQ+VGhlIGJhbmQgYm9vc3Rz
IGFyZSByZXByZXNlbnRlZCBieSBhIHNlcmllcyBvZiBiaW5hcnkgc3ltYm9scyB3aGljaAorYXJl
IGVudHJvcHkgY29kZWQgd2l0aCB2ZXJ5IGxvdyBwcm9iYWJpbGl0eS4gRWFjaCBiYW5kIGNhbiBw
b3RlbnRpYWxseSBiZSBib29zdGVkCittdWx0aXBsZSB0aW1lcywgc3ViamVjdCB0byB0aGUgZnJh
bWUgYWN0dWFsbHkgaGF2aW5nIGVub3VnaCByb29tIHRvIG9iZXkKK3RoZSBib29zdCBhbmQgaGF2
aW5nIGVub3VnaCByb29tIHRvIGNvZGUgdGhlIGJvb3N0IHN5bWJvbC4gVGhlIGRlZmF1bHQKK2Nv
ZGluZyBjb3N0IGZvciBhIGJvb3N0IHN0YXJ0cyBvdXQgYXQgc2l4IGJpdHMgKHByb2JhYmlsaXR5
IHA9MS82NCksIGJ1dCBzdWJzZXF1ZW50IGJvb3N0cworaW4gYSBiYW5kIGNvc3Qgb25seSBhIHNp
bmdsZSBiaXQgYW5kIGV2ZXJ5IHRpbWUgYSBiYW5kIGlzIGJvb3N0ZWQgdGhlCitpbml0aWFsIGNv
c3QgaXMgcmVkdWNlZCAoZG93biB0byBhIG1pbmltdW0gb2YgdHdvIGJpdHMsIG9yIHA9MS80KS4g
U2luY2UgdGhlIGluaXRpYWwKK2Nvc3Qgb2YgY29kaW5nIGEgYm9vc3QgaXMgNiBiaXRzLCB0aGUg
Y29kaW5nIGNvc3Qgb2YgdGhlIGJvb3N0IHN5bWJvbHMgd2hlbgorY29tcGxldGVseSB1bnVzZWQg
aXMgMC40OCBiaXRzL2ZyYW1lIGZvciBhIDIxIGJhbmQgbW9kZSAoMjEqLWxvZzIoMS0xLzIqKjYp
KS48L3Q+CisKKzx0PlRvIGRlY29kZSB0aGUgYmFuZCBib29zdHM6IEZpcnN0IHNldCAnZHluYWxs
b2NfbG9ncCcgdG8gNiwgdGhlIGluaXRpYWwKK2Ftb3VudCBvZiBzdG9yYWdlIHJlcXVpcmVkIHRv
IHNpZ25hbCBhIGJvb3N0IGluIGJpdHMsICd0b3RhbF9iaXRzJyB0byB0aGUKK3NpemUgb2YgdGhl
IGZyYW1lIGluIDh0aCBiaXRzLCAndG90YWxfYm9vc3QnIHRvIHplcm8sIGFuZCAndGVsbCcgdG8g
dGhlIHRvdGFsIG51bWJlcgorb2YgOHRoIGJpdHMgZGVjb2RlZAorc28gZmFyLiBGb3IgZWFjaCBi
YW5kIGZyb20gdGhlIGNvZGluZyBzdGFydCAoMCBub3JtYWxseSwgYnV0IDE3IGluIEh5YnJpZCBt
b2RlKQordG8gdGhlIGNvZGluZyBlbmQgKHdoaWNoIGNoYW5nZXMgZGVwZW5kaW5nIG9uIHRoZSBz
aWduYWxlZCBiYW5kd2lkdGgpLCB0aGUgYm9vc3QgcXVhbnRhCitpbiB1bml0cyBvZiAxLzggYml0
IGlzIGNhbGN1bGF0ZWQgYXMgcXVhbnRhID0gbWluKDgqTiwgbWF4KDQ4LCBOKSkuCitUaGlzIHJl
cHJlc2VudHMgYSBib29zdCBzdGVwIHNpemUgb2Ygc2l4IGJpdHMsIHN1YmplY3QgdG8gYSBsb3dl
ciBsaW1pdCBvZgorMS84dGgmbmJzcDtiaXQvc2FtcGxlIGFuZCBhbiB1cHBlciBsaW1pdCBvZiAx
Jm5ic3A7Yml0L3NhbXBsZS4KK1NldCAnYm9vc3QnIHRvIHplcm8gYW5kICdkeW5hbGxvY19sb29w
X2xvZ3AnCit0byBkeW5hbGxvY19sb2dwLiBXaGlsZSBkeW5hbGxvY19sb29wX2xvZyAodGhlIGN1
cnJlbnQgd29yc3QgY2FzZSBzeW1ib2wgY29zdCkgaW4KKzh0aCBiaXRzIHBsdXMgdGVsbCBpcyBs
ZXNzIHRoYW4gdG90YWxfYml0cyBwbHVzIHRvdGFsX2Jvb3N0IGFuZCBib29zdCBpcyBsZXNzIHRo
YW4gY2FwW10gZm9yIHRoaXMKK2JhbmQ6IERlY29kZSBhIGJpdCBmcm9tIHRoZSBiaXRzdHJlYW0g
d2l0aCBhIHdpdGggZHluYWxsb2NfbG9vcF9sb2dwIGFzIHRoZSBjb3N0CitvZiBhIG9uZSwgdXBk
YXRlIHRlbGwgdG8gcmVmbGVjdCB0aGUgY3VycmVudCB1c2VkIGNhcGFjaXR5LCBpZiB0aGUgZGVj
b2RlZCB2YWx1ZQoraXMgemVybyBicmVhayB0aGUgIGxvb3Agb3RoZXJ3aXNlIGFkZCBxdWFudGEg
dG8gYm9vc3QgYW5kIHRvdGFsX2Jvb3N0LCBzdWJ0cmFjdCBxdWFudGEgZnJvbQordG90YWxfYml0
cywgYW5kIHNldCBkeW5hbGxvY19sb29wX2xvZyB0byAxLiBXaGVuIHRoZSB3aGlsZSBsb29wIGZp
bmlzaGVzCitib29zdCBjb250YWlucyB0aGUgYm9vc3QgZm9yIHRoaXMgYmFuZC4gSWYgYm9vc3Qg
aXMgbm9uLXplcm8gYW5kIGR5bmFsbG9jX2xvZ3AKK2lzIGdyZWF0ZXIgdGhhbiAyLCBkZWNyZWFz
ZSBkeW5hbGxvY19sb2dwLiAgT25jZSB0aGlzIHByb2Nlc3MgaGFzIGJlZW4KK2V4ZWN1dGVkIG9u
IGFsbCBiYW5kcywgdGhlIGJhbmQgYm9vc3RzIGhhdmUgYmVlbiBkZWNvZGVkLiBUaGlzIHByb2Nl
ZHVyZQoraXMgaW1wbGVtZW50ZWQgYXJvdW5kIGxpbmUgMjQ3NCBvZiBjZWx0LmMuPC90PgorCis8
dD5BdCB2ZXJ5IGxvdyByYXRlcyBpdCBpcyBwb3NzaWJsZSB0aGF0IHRoZXJlIHdvbid0IGJlIGVu
b3VnaCBhdmFpbGFibGUKK3NwYWNlIHRvIGV4ZWN1dGUgdGhlIGlubmVyIGxvb3AgZXZlbiBvbmNl
LiBJbiB0aGVzZSBjYXNlcyBiYW5kIGJvb3N0CitpcyBub3QgcG9zc2libGUgYnV0IGl0cyBvdmVy
aGVhZCBpcyBjb21wbGV0ZWx5IGVsaW1pbmF0ZWQuIEJlY2F1c2Ugb2YgdGhlCitoaWdoIGNvc3Qg
b2YgYmFuZCBib29zdCB3aGVuIGFjdGl2YXRlZCwgYSByZWFzb25hYmxlIGVuY29kZXIgc2hvdWxk
IG5vdCBiZQordXNpbmcgaXQgYXQgdmVyeSBsb3cgcmF0ZXMuIFRoZSByZWZlcmVuY2UgaW1wbGVt
ZW50cyBpdHMgZHluYWxsb2MgZGVjaXNpb24KK2xvZ2ljIGFyb3VuZCBsaW5lIDEzMDQgb2YgY2Vs
dC5jLjwvdD4KKworPHQ+VGhlIGFsbG9jYXRpb24gdHJpbSBpcyBhIGludGVnZXIgdmFsdWUgZnJv
bSAwLTEwLiBUaGUgZGVmYXVsdCB2YWx1ZSBvZgorNSBpbmRpY2F0ZXMgbm8gdHJpbS4gVGhlIHRy
aW0gcGFyYW1ldGVyIGlzIGVudHJvcHkgY29kZWQgaW4gb3JkZXIgdG8KK2xvd2VyIHRoZSBjb2Rp
bmcgY29zdCBvZiBsZXNzIGV4dHJlbWUgYWRqdXN0bWVudHMuIFZhbHVlcyBsb3dlciB0aGFuCis1
IGJpYXMgdGhlIGFsbG9jYXRpb24gdG93YXJkcyBsb3dlciBmcmVxdWVuY2llcyBhbmQgdmFsdWVz
IGFib3ZlIDUKK2JpYXMgaXQgdG93YXJkcyBoaWdoZXIgZnJlcXVlbmNpZXMuIExpa2Ugb3RoZXIg
c2lnbmFsZWQgcGFyYW1ldGVycywgc2lnbmFsaW5nCitvZiB0aGUgdHJpbSBpcyBnYXRlZCBzbyB0
aGF0IGl0IGlzIG5vdCBpbmNsdWRlZCBpZiB0aGVyZSBpcyBpbnN1ZmZpY2llbnQgc3BhY2UKK2F2
YWlsYWJsZSBpbiB0aGUgYml0c3RyZWFtLiBUbyBkZWNvZGUgdGhlIHRyaW0sIGZpcnN0IHNldAor
dGhlIHRyaW0gdmFsdWUgdG8gNSwgdGhlbiBpZiBhbmQgb25seSBpZiB0aGUgY291bnQgb2YgZGVj
b2RlZCA4dGggYml0cyBzbyBmYXIgKGVjX3RlbGxfZnJhYykKK3BsdXMgNDggKDYgYml0cykgaXMg
bGVzcyB0aGFuIG9yIGVxdWFsIHRvIHRoZSB0b3RhbCBmcmFtZSBzaXplIGluIDh0aAorYml0cyBt
aW51cyB0b3RhbF9ib29zdCAoYSBwcm9kdWN0IG9mIHRoZSBhYm92ZSBiYW5kIGJvb3N0IHByb2Nl
ZHVyZSksCitkZWNvZGUgdGhlIHRyaW0gdmFsdWUgdXNpbmcgdGhlIFBERiBpbiA8eHJlZiB0YXJn
ZXQ9ImNlbHRfdHJpbV9wZGYiLz4uPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0iY2VsdF90cmlt
X3BkZiIgdGl0bGU9IlBERiBmb3IgdGhlIFRyaW0iPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz57
MSwgMSwgMiwgNSwgMTAsIDIyLCA0NiwgMjIsIDEwLCA1LCAyLCAyfS8xMjg8L2M+Cis8L3RleHR0
YWJsZT4KKworPHQ+Rm9yIDEwIG1zIGFuZCAyMCBtcyBmcmFtZXMgdXNpbmcgc2hvcnQgYmxvY2tz
IGFuZCB0aGF0IGhhdmUgYXQgbGVhc3QgTE0rMiBiaXRzIGxlZnQgcHJpb3IgdG8KK3RoZSBhbGxv
Y2F0aW9uIHByb2Nlc3MsIHRoZW4gb25lIGFudGktY29sbGFwc2UgYml0IGlzIHJlc2VydmVkIGlu
IHRoZSBhbGxvY2F0aW9uIHByb2Nlc3Mgc28gaXQgY2FuCitiZSBkZWNvZGVkIGxhdGVyLiBGb2xs
b3dpbmcgdGhlIHRoZSBhbnRpLWNvbGxhcHNlIHJlc2VydmF0aW9uLCBvbmUgYml0IGlzIHJlc2Vy
dmVkIGZvciBza2lwIGlmIGF2YWlsYWJsZS48L3Q+CisKKzx0PkZvciBzdGVyZW8gZnJhbWVzLCBi
aXRzIGFyZSByZXNlcnZlZCBmb3IgaW50ZW5zaXR5IHN0ZXJlbyBhbmQgZm9yIGR1YWwgc3RlcmVv
LiBJbnRlbnNpdHkgc3RlcmVvCityZXF1aXJlcyBpbG9nMihlbmQtc3RhcnQpIGJpdHMuIFRob3Nl
IGJpdHMgYXJlIHJlc2VydmVkIGlmIHRoZXJlIGlzIGVub3VnaCBiaXRzIGxlZnQuIEZvbGxvd2lu
ZyB0aGlzLCBvbmUKK2JpdCBpcyByZXNlcnZlZCBmb3IgZHVhbCBzdGVyZW8gaWYgYXZhaWxhYmxl
LjwvdD4KKworCis8dD5UaGUgYWxsb2NhdGlvbiBjb21wdXRhdGlvbiBiZWdpbnMgYnkgc2V0dGlu
ZyB1cCBzb21lIGluaXRpYWwgY29uZGl0aW9ucy4KKyd0b3RhbCcgaXMgc2V0IHRvIHRoZSByZW1h
aW5pbmcgYXZhaWxhYmxlIDh0aCBiaXRzLCBjb21wdXRlZCBieSB0YWtpbmcgdGhlCitzaXplIG9m
IHRoZSBjb2RlZCBmcmFtZSB0aW1lcyA4IGFuZCBzdWJ0cmFjdGluZyBlY190ZWxsX2ZyYWMoKS4g
RnJvbSB0aGlzIHZhbHVlLCBvbmUgKDh0aCBiaXQpCitpcyBzdWJ0cmFjdGVkIHRvIGVuc3VyZSB0
aGF0IHRoZSByZXN1bHRpbmcgYWxsb2NhdGlvbiB3aWxsIGJlIGNvbnNlcnZhdGl2ZS4gJ2FudGlf
Y29sbGFwc2VfcnN2JworaXMgc2V0IHRvIDggKDh0aCBiaXRzKSBpZiBhbmQgb25seSBpZiB0aGUg
ZnJhbWUgaXMgYSB0cmFuc2llbnQsIExNIGlzIGdyZWF0ZXIgdGhhbiAxLCBhbmQgdG90YWwgaXMK
K2dyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAoTE0rMikgKiA4LiBUb3RhbCBpcyB0aGVuIGRlY3Jl
bWVudGVkIGJ5IGFudGlfY29sbGFwc2VfcnN2IGFuZCBjbGFtcGVkCit0byBiZSBlcXVhbCB0byBv
ciBncmVhdGVyIHRoYW4gemVyby4gJ3NraXBfcnN2JyBpcyBzZXQgdG8gOCAoOHRoIGJpdHMpIGlm
IHRvdGFsIGlzIGdyZWF0ZXIgdGhhbgorOCwgb3RoZXJ3aXNlIGl0IGlzIHplcm8uIFRvdGFsIGlz
IHRoZW4gZGVjcmVtZW50ZWQgYnkgc2tpcF9yc3YuIFRoaXMgcmVzZXJ2ZXMgc3BhY2UgZm9yIHRo
ZQorZmluYWwgc2tpcHBpbmcgZmxhZy48L3Q+CisKKzx0PklmIHRoZSBjdXJyZW50IGZyYW1lIGlz
IHN0ZXJlbywgaW50ZW5zaXR5X3JzdiBpcyBzZXQgdG8gdGhlIGNvbnNlcnZhdGl2ZSBsb2cyIGlu
IDh0aCBiaXRzCitvZiB0aGUgbnVtYmVyIG9mIGNvZGVkIGJhbmRzIGZvciB0aGlzIGZyYW1lIChn
aXZlbiBieSB0aGUgdGFibGUgTE9HMl9GUkFDX1RBQkxFIGluIHJhdGUuYykuIElmCitpbnRlbnNp
dHlfcnN2IGlzIGdyZWF0ZXIgdGhhbiB0b3RhbCB0aGVuIGludGVuc2l0eV9yc3YgaXMgc2V0IHRv
IHplcm8uIE90aGVyd2lzZSB0b3RhbCBpcworZGVjcmVtZW50ZWQgYnkgaW50ZW5zaXR5X3Jzdiwg
YW5kIGlmIHRvdGFsIGlzIHN0aWxsIGdyZWF0ZXIgdGhhbiA4LCBkdWFsX3N0ZXJlb19yc3YgaXMK
K3NldCB0byA4IGFuZCB0b3RhbCBpcyBkZWNyZW1lbnRlZCBieSBkdWFsX3N0ZXJlb19yc3YuPC90
PgorCis8dD5UaGUgYWxsb2NhdGlvbiBwcm9jZXNzIHRoZW4gY29tcHV0ZXMgYSB2ZWN0b3IgcmVw
cmVzZW50aW5nIHRoZSBoYXJkIG1pbmltdW0gYW1vdW50cyBhbGxvY2F0aW9uCithbnkgYmFuZCB3
aWxsIHJlY2VpdmUgZm9yIHNoYXBlLiBUaGlzIG1pbmltdW0gaXMgaGlnaGVyIHRoYW4gdGhlIHRl
Y2huaWNhbCBsaW1pdCBvZiB0aGUgUFZRCitwcm9jZXNzLCBidXQgdmVyeSBsb3cgcmF0ZSBhbGxv
Y2F0aW9ucyBwcm9kdWNlIGFuIGV4Y2Vzc2l2ZWx5IHNwYXJzZSBzcGVjdHJ1bSBhbmQgdGhlc2Ug
YmFuZHMKK2FyZSBiZXR0ZXIgc2VydmVkIGJ5IGhhdmluZyBubyBhbGxvY2F0aW9uIGF0IGFsbC4g
Rm9yIGVhY2ggY29kZWQgYmFuZCwgc2V0IHRocmVzaFtiYW5kXSB0bwordHdlbnR5LWZvdXIgdGlt
ZXMgdGhlIG51bWJlciBvZiBNRENUIGJpbnMgaW4gdGhlIGJhbmQgYW5kIGRpdmlkZSBieSAxNi4g
SWYgOCB0aW1lcyB0aGUgbnVtYmVyCitvZiBjaGFubmVscyBpcyBncmVhdGVyLCB1c2UgdGhhdCBp
bnN0ZWFkLiBUaGlzIHNldHMgdGhlIG1pbmltdW0gYWxsb2NhdGlvbiB0byBvbmUgYml0IHBlciBj
aGFubmVsCitvciA0OCAxMjh0aCBiaXRzIHBlciBNRENUIGJpbiwgd2hpY2hldmVyIGlzIGdyZWF0
ZXIuIFRoZSBiYW5kLXNpemUgZGVwZW5kZW50IHBhcnQgb2YgdGhpcwordmFsdWUgaXMgbm90IHNj
YWxlZCBieSB0aGUgY2hhbm5lbCBjb3VudCwgYmVjYXVzZSBhdCB0aGUgdmVyeSBsb3cgcmF0ZXMg
d2hlcmUgdGhpcyBsaW1pdCBpcworYXBwbGljYWJsZSB0aGVyZSB3aWxsIHVzdWFsbHkgYmUgbm8g
Yml0cyBhbGxvY2F0ZWQgdG8gdGhlIHNpZGUuPC90PgorCis8dD5UaGUgcHJldmlvdXNseSBkZWNv
ZGVkIGFsbG9jYXRpb24gdHJpbSBpcyB1c2VkIHRvIGRlcml2ZSBhIHZlY3RvciBvZiBwZXItYmFu
ZCBhZGp1c3RtZW50cywKKyd0cmltX29mZnNldHNbXScuIEZvciBlYWNoIGNvZGVkIGJhbmQgdGFr
ZSB0aGUgYWxsb2NfdHJpbSBhbmQgc3VidHJhY3QgNSBhbmQgTE0uIFRoZW4gbXVsdGlwbHkKK3Ro
ZSByZXN1bHQgYnkgdGhlIG51bWJlciBvZiBjaGFubmVscywgdGhlIG51bWJlciBvZiBNRENUIGJp
bnMgaW4gdGhlIHNob3J0ZXN0IGZyYW1lIHNpemUgZm9yIHRoaXMgbW9kZSwKK3RoZSBudW1iZXIg
b2YgcmVtYWluaW5nIGJhbmRzLCAyKipMTSwgYW5kIDguIFRoZW4gZGl2aWRlIHRoaXMgdmFsdWUg
YnkgNjQuIEZpbmFsbHksIGlmIHRoZQorbnVtYmVyIG9mIE1EQ1QgYmlucyBpbiB0aGUgYmFuZCBw
ZXIgY2hhbm5lbCBpcyBvbmx5IG9uZSwgOCB0aW1lcyB0aGUgbnVtYmVyIG9mIGNoYW5uZWxzIGlz
IHN1YnRyYWN0ZWQKK2luIG9yZGVyIHRvIGRpbWluaXNoIHRoZSBhbGxvY2F0aW9uIGJ5IG9uZSBi
aXQsIGJlY2F1c2Ugd2lkdGggMSBiYW5kcyByZWNlaXZlIGdyZWF0ZXIgYmVuZWZpdAorZnJvbSB0
aGUgY29hcnNlIGVuZXJneSBjb2RpbmcuPC90PgorCisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
YW5jaG9yPSJQVlEtZGVjb2RlciIgdGl0bGU9IlNoYXBlIERlY29kaW5nIj4KKzx0PgorSW4gZWFj
aCBiYW5kLCB0aGUgbm9ybWFsaXplZCAic2hhcGUiIGlzIGVuY29kZWQKK3VzaW5nIGEgdmVjdG9y
IHF1YW50aXphdGlvbiBzY2hlbWUgY2FsbGVkIGEgInB5cmFtaWQgdmVjdG9yIHF1YW50aXplciIu
Cis8L3Q+CisKKzx0PkluCit0aGUgc2ltcGxlc3QgY2FzZSwgdGhlIG51bWJlciBvZiBiaXRzIGFs
bG9jYXRlZCBpbgorPHhyZWYgdGFyZ2V0PSJhbGxvY2F0aW9uIj48L3hyZWY+IGlzIGNvbnZlcnRl
ZCB0byBhIG51bWJlciBvZiBwdWxzZXMgYXMgZGVzY3JpYmVkCitieSA8eHJlZiB0YXJnZXQ9ImJp
dHMtcHVsc2VzIj48L3hyZWY+LiBLbm93aW5nIHRoZSBudW1iZXIgb2YgcHVsc2VzIGFuZCB0aGUK
K251bWJlciBvZiBzYW1wbGVzIGluIHRoZSBiYW5kLCB0aGUgZGVjb2RlciBjYWxjdWxhdGVzIHRo
ZSBzaXplIG9mIHRoZSBjb2RlYm9vaworYXMgZGV0YWlsZWQgaW4gPHhyZWYgdGFyZ2V0PSJjd3Jz
LWRlY29kZXIiPjwveHJlZj4uIFRoZSBzaXplIGlzIHVzZWQgdG8gZGVjb2RlCithbiB1bnNpZ25l
ZCBpbnRlZ2VyICh1bmlmb3JtIHByb2JhYmlsaXR5IG1vZGVsKSwgd2hpY2ggaXMgdGhlIGNvZGV3
b3JkIGluZGV4LgorVGhpcyBpbmRleCBpcyBjb252ZXJ0ZWQgaW50byB0aGUgY29ycmVzcG9uZGlu
ZyB2ZWN0b3IgYXMgZXhwbGFpbmVkIGluCis8eHJlZiB0YXJnZXQ9ImN3cnMtZGVjb2RlciI+PC94
cmVmPi4gVGhpcyB2ZWN0b3IgaXMgdGhlbiBzY2FsZWQgdG8gdW5pdCBub3JtLgorPC90PgorCis8
c2VjdGlvbiBhbmNob3I9ImJpdHMtcHVsc2VzIiB0aXRsZT0iQml0cyB0byBQdWxzZXMiPgorPHQ+
CitBbHRob3VnaCB0aGUgYWxsb2NhdGlvbiBpcyBwZXJmb3JtZWQgaW4gMS84dGggYml0IHVuaXRz
LCB0aGUgcXVhbnRpemF0aW9uIHJlcXVpcmVzCithbiBpbnRlZ2VyIG51bWJlciBvZiBwdWxzZXMg
Sy4gVG8gZG8gdGhpcywgdGhlIGVuY29kZXIgc2VhcmNoZXMgZm9yIHRoZSB2YWx1ZQorb2YgSyB0
aGF0IHByb2R1Y2VzIHRoZSBudW1iZXIgb2YgYml0cyBuZWFyZXN0IHRvIHRoZSBhbGxvY2F0ZWQg
dmFsdWUKKyhyb3VuZGluZyBkb3duIGlmIGV4YWN0bHkgaGFsZndheSBiZXR3ZWVuIHR3byB2YWx1
ZXMpLCBub3QgdG8gZXhjZWVkCit0aGUgdG90YWwgbnVtYmVyIG9mIGJpdHMgYXZhaWxhYmxlLiBG
b3IgZWZmaWNpZW5jeSByZWFzb25zLCB0aGUgc2VhcmNoIGlzIHBlcmZvcm1lZCBhZ2FpbnN0IGEK
K3ByZWNvbXB1dGVkIGFsbG9jYXRpb24gdGFibGUgd2hpY2ggb25seSBwZXJtaXRzIHNvbWUgSyB2
YWx1ZXMgZm9yIGVhY2ggTi4gVGhlIG51bWJlciBvZgorY29kZWJvb2sgZW50cmllcyBjYW4gYmUg
Y29tcHV0ZWQgYXMgZXhwbGFpbmVkIGluIDx4cmVmIHRhcmdldD0iY3dycy1kZWNvZGVyIj48L3hy
ZWY+LiBUaGUgZGlmZmVyZW5jZQorYmV0d2VlbiB0aGUgbnVtYmVyIG9mIGJpdHMgYWxsb2NhdGVk
IGFuZCB0aGUgbnVtYmVyIG9mIGJpdHMgdXNlZCBpcyBhY2N1bXVsYXRlZCB0byBhCisiYmFsYW5j
ZSIgKGluaXRpYWxpemVkIHRvIHplcm8pIHRoYXQgaGVscHMgYWRqdXN0IHRoZQorYWxsb2NhdGlv
biBmb3IgdGhlIG5leHQgYmFuZHMuIE9uZSB0aGlyZCBvZiB0aGUgYmFsYW5jZSBpcyBhcHBsaWVk
IHRvIHRoZQorYml0IGFsbG9jYXRpb24gb2YgZWFjaCBiYW5kIHRvIGhlbHAgYWNoaWV2ZSB0aGUg
dGFyZ2V0IGFsbG9jYXRpb24uIFRoZSBvbmx5CitleGNlcHRpb25zIGFyZSB0aGUgYmFuZCBiZWZv
cmUgdGhlIGxhc3QgYW5kIHRoZSBsYXN0IGJhbmQsIGZvciB3aGljaCBoYWxmIHRoZSBiYWxhbmNl
CithbmQgdGhlIHdob2xlIGJhbGFuY2UgYXJlIGFwcGxpZWQsIHJlc3BlY3RpdmVseS4KKzwvdD4K
Kzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJjd3JzLWRlY29kZXIiIHRpdGxlPSJQVlEg
RGVjb2RpbmciPgorCis8dD4KK0RlY29kaW5nIG9mIFBWUSB2ZWN0b3JzIGlzIGltcGxlbWVudGVk
IGluIGRlY29kZV9wdWxzZXMoKSAoY3dycy5jKS4KK1RoZSB1bmlxdWUgY29kZXdvcmQgaW5kZXgg
aXMgZGVjb2RlZCBhcyBhIHVuaWZvcm1seS1kaXN0cmlidXRlZCBpbnRlZ2VyIHZhbHVlIGJldHdl
ZW4gMCBhbmQKK1YoTixLKS0xLCB3aGVyZSBWKE4sSykgaXMgdGhlIG51bWJlciBvZiBwb3NzaWJs
ZSBjb21iaW5hdGlvbnMgb2YgSyBwdWxzZXMgaW4KK04gc2FtcGxlcy4gVGhlIGluZGV4IGlzIHRo
ZW4gY29udmVydGVkIHRvIGEgdmVjdG9yIGluIHRoZSBzYW1lIHdheSBzcGVjaWZpZWQgaW4KKzx4
cmVmIHRhcmdldD0iUFZRIj48L3hyZWY+LiBUaGUgaW5kZXhpbmcgaXMgYmFzZWQgb24gdGhlIGNh
bGN1bGF0aW9uIG9mIFYoTixLKQorKGRlbm90ZWQgTihMLEspIGluIDx4cmVmIHRhcmdldD0iUFZR
Ij48L3hyZWY+KS4KKzwvdD4KKworPHQ+CisgVGhlIG51bWJlciBvZiBjb21iaW5hdGlvbnMgY2Fu
IGJlIGNvbXB1dGVkIHJlY3Vyc2l2ZWx5IGFzCitWKE4sSykgPSBWKE4tMSxLKSArIFYoTixLLTEp
ICsgVihOLTEsSy0xKSwgd2l0aCBWKE4sMCkgPSAxIGFuZCBWKDAsSykgPSAwLCBLICE9IDAuCitU
aGVyZSBhcmUgbWFueSBkaWZmZXJlbnQgd2F5cyB0byBjb21wdXRlIFYoTixLKSwgaW5jbHVkaW5n
IHByZWNvbXB1dGVkIHRhYmxlcyBhbmQgZGlyZWN0Cit1c2Ugb2YgdGhlIHJlY3Vyc2l2ZSBmb3Jt
dWxhdGlvbi4gVGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBhcHBsaWVzIHRoZSByZWN1cnNp
dmUKK2Zvcm11bGF0aW9uIG9uZSBsaW5lIChvciBjb2x1bW4pIGF0IGEgdGltZSB0byBzYXZlIG9u
IG1lbW9yeSB1c2UsCithbG9uZyB3aXRoIGFuIGFsdGVybmF0ZSwKK3VuaXZhcmlhdGUgcmVjdXJy
ZW5jZSB0byBpbml0aWFsaXplIGFuIGFyYml0cmFyeSBsaW5lLCBhbmQgZGlyZWN0Citwb2x5bm9t
aWFsIHNvbHV0aW9ucyBmb3Igc21hbGwgTi4gQWxsIG9mIHRoZXNlIG1ldGhvZHMgYXJlCitlcXVp
dmFsZW50LCBhbmQgaGF2ZSBkaWZmZXJlbnQgdHJhZGUtb2ZmcyBpbiBzcGVlZCwgbWVtb3J5IHVz
YWdlLCBhbmQKK2NvZGUgc2l6ZS4gSW1wbGVtZW50YXRpb25zIE1BWSB1c2UgYW55IG1ldGhvZHMg
dGhleSBsaWtlLCBhcyBsb25nIGFzCit0aGV5IGFyZSBlcXVpdmFsZW50IHRvIHRoZSBtYXRoZW1h
dGljYWwgZGVmaW5pdGlvbi4KKzwvdD4KKworPHQ+CitUaGUgZGVjb2RlZCB2ZWN0b3IgWCBpcyBy
ZWNvdmVyZWQgYXMgZm9sbG93cy4KK0xldCBpIGJlIHRoZSBpbmRleCBkZWNvZGVkIHdpdGggdGhl
IHByb2NlZHVyZSBpbiA8eHJlZiB0YXJnZXQ9ImVjX2RlY191aW50Ii8+Cisgd2l0aCBmdCZuYnNw
Oz0mbmJzcDtWKE4sSyksIHNvIHRoYXQgMCZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsmbmJz
cDtWKE4sSykuCitMZXQgayZuYnNwOz0mbmJzcDtLLgorVGhlbiBmb3IgaiZuYnNwOz0mbmJzcDsw
IHRvIChOJm5ic3A7LSZuYnNwOzEpLCBpbmNsdXNpdmUsIGRvOgorPGxpc3Qgc3R5bGU9Im51bWJl
cnMiPgorPHQ+TGV0IHAmbmJzcDs9Jm5ic3A7KFYoTi1qLTEsaykmbmJzcDsrJm5ic3A7VihOLWos
aykpLzIuPC90PgorPHQ+CitJZiBpJm5ic3A7Jmx0OyZuYnNwO3AsIHRoZW4gbGV0IHNnbiZuYnNw
Oz0mbmJzcDsxLCBlbHNlIGxldCBzZ24mbmJzcDs9Jm5ic3A7LTEKKyBhbmQgc2V0IGkmbmJzcDs9
Jm5ic3A7aSZuYnNwOy0mbmJzcDtwLgorPC90PgorPHQ+TGV0IGswJm5ic3A7PSZuYnNwO2sgYW5k
IHNldCBwJm5ic3A7PSZuYnNwO3AmbmJzcDstJm5ic3A7VihOLWotMSxrKS48L3Q+Cis8dD4KK1do
aWxlIHAmbmJzcDsmZ3Q7Jm5ic3A7aSwgc2V0IGsmbmJzcDs9Jm5ic3A7ayZuYnNwOy0mbmJzcDsx
IGFuZAorIHAmbmJzcDs9Jm5ic3A7cCZuYnNwOy0mbmJzcDtWKE4tai0xLGspLgorPC90PgorPHQ+
CitTZXQgWFtqXSZuYnNwOz0mbmJzcDtzZ24qKGswJm5ic3A7LSZuYnNwO2spIGFuZCBpJm5ic3A7
PSZuYnNwO2kmbmJzcDstJm5ic3A7cC4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitUaGUg
ZGVjb2RlZCB2ZWN0b3IgWCBpcyB0aGVuIG5vcm1hbGl6ZWQgc3VjaCB0aGF0IGl0cworTDItbm9y
bSBlcXVhbHMgb25lLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNwcmVh
ZGluZyIgdGl0bGU9IlNwcmVhZGluZyI+Cis8dD4KK1RoZSBub3JtYWxpemVkIHZlY3RvciBkZWNv
ZGVkIGluIDx4cmVmIHRhcmdldD0iY3dycy1kZWNvZGVyIi8+IGlzIHRoZW4gcm90YXRlZAorZm9y
IHRoZSBwdXJwb3NlIG9mIGF2b2lkaW5nIHRvbmFsIGFydGlmYWN0cy4gVGhlIHJvdGF0aW9uIGdh
aW4gaXMgZXF1YWwgdG8KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0i
Y2VudGVyIj48IVtDREFUQVsKK2dfciA9IE4gLyAoTiArIGZfcipLKQorXV0+PC9hcnR3b3JrPgor
PC9maWd1cmU+CisKK3doZXJlIE4gaXMgdGhlIG51bWJlciBvZiBkaW1lbnNpb25zLCBLIGlzIHRo
ZSBudW1iZXIgb2YgcHVsc2VzLCBhbmQgZl9yIGRlcGVuZHMgb24KK3RoZSB2YWx1ZSBvZiB0aGUg
InNwcmVhZCIgcGFyYW1ldGVyIGluIHRoZSBiaXQtc3RyZWFtLgorPC90PgorCis8dGV4dHRhYmxl
IGFuY2hvcj0ic3ByZWFkIHZhbHVlcyIgdGl0bGU9IlNwcmVhZGluZyBWYWx1ZXMiPgorPHR0Y29s
PlNwcmVhZCB2YWx1ZTwvdHRjb2w+Cis8dHRjb2w+Zl9yPC90dGNvbD4KKyA8Yz4wPC9jPiA8Yz5p
bmZpbml0ZSAobm8gcm90YXRpb24pPC9jPgorIDxjPjE8L2M+IDxjPjE1PC9jPgorIDxjPjI8L2M+
IDxjPjEwPC9jPgorIDxjPjM8L2M+IDxjPjU8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitUaGUg
cm90YXRpb24gYW5nbGUgaXMgdGhlbiBjYWxjdWxhdGVkIGFzCis8ZmlndXJlIGFsaWduPSJjZW50
ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAg
IDIKKyAgICAgICAgcGkgKiAgZ19yCit0aGV0YSA9IC0tLS0tLS0tLS0KKyAgICAgICAgICAgIDQK
K11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorQSAyLUQgcm90YXRpb24gUihpLGopIGJldHdlZW4g
cG9pbnRzIHhfaSBhbmQgeF9qIGlzIGRlZmluZWQgYXM6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIi
PgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCit4X2knID0gIGNvcyh0aGV0YSkq
eF9pICsgc2luKHRoZXRhKSp4X2oKK3hfaicgPSAtc2luKHRoZXRhKSp4X2kgKyBjb3ModGhldGEp
KnhfagorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKK0FuIE4tRCByb3RhdGlvbiBpcyB0aGVu
IGFjaGlldmVkIGJ5IGFwcGx5aW5nIGEgc2VyaWVzIG9mIDItRCByb3RhdGlvbnMgYmFjayBhbmQg
Zm9ydGgsIGluIHRoZQorZm9sbG93aW5nIG9yZGVyOiBSKHhfMSwgeF8yKSwgUih4XzIsIHhfMyks
IC4uLiwgUih4X04tMiwgWF9OLTEpLCBSKHhfTi0xLCBYX04pLAorUih4X04tMiwgWF9OLTEpLCAu
Li4sIFIoeF8xLCB4XzIpLgorPC90PgorCis8dD4KK0lmIHRoZSBkZWNvZGVkIHZlY3RvciByZXBy
ZXNlbnRzIG1vcmUKK3RoYW4gb25lIHRpbWUgYmxvY2ssIHRoZW4gdGhpcyBzcHJlYWRpbmcgcHJv
Y2VzcyBpcyBhcHBsaWVkIHNlcGFyYXRlbHkgb24gZWFjaCB0aW1lIGJsb2NrLgorQWxzbywgaWYg
ZWFjaCBibG9jayByZXByZXNlbnRzIDggc2FtcGxlcyBvciBtb3JlLCB0aGVuIGFub3RoZXIgTi1E
IHJvdGF0aW9uLCBieQorKHBpLzItdGhldGEpLCBpcyBhcHBsaWVkIDxzcGFueCBzdHlsZT0iZW1w
aCI+YmVmb3JlPC9zcGFueD4gdGhlIHJvdGF0aW9uIGRlc2NyaWJlZCBhYm92ZS4gVGhpcworZXh0
cmEgcm90YXRpb24gaXMgYXBwbGllZCBpbiBhbiBpbnRlcmxlYXZlZCBtYW5uZXIgd2l0aCBhIHN0
cmlkZSBlcXVhbCB0byByb3VuZChzcXJ0KE4vbmJfYmxvY2tzKSksCitpLmUuLCBpdCBpcyBhcHBs
aWVkIGluZGVwZW5kZW50bHkgZm9yIGVhY2ggc2V0IG9mIHNhbXBsZSBTX2sgPSB7c3RyaWRlKm4g
KyBrfSwgbj0wLi5OL3N0cmlkZS0xLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9InNwbGl0IiB0aXRsZT0iU3BsaXQgZGVjb2RpbmciPgorPHQ+CitUbyBhdm9pZCB0aGUgbmVl
ZCBmb3IgbXVsdGktcHJlY2lzaW9uIGNhbGN1bGF0aW9ucyB3aGVuIGRlY29kaW5nIFBWUSBjb2Rl
dmVjdG9ycywKK3RoZSBtYXhpbXVtIHNpemUgYWxsb3dlZCBmb3IgY29kZWJvb2tzIGlzIDMyIGJp
dHMuIFdoZW4gbGFyZ2VyIGNvZGVib29rcyBhcmUKK25lZWRlZCwgdGhlIHZlY3RvciBpcyBpbnN0
ZWFkIHNwbGl0IGluIHR3byBzdWItdmVjdG9ycyBvZiBzaXplIE4vMi4KK0EgcXVhbnRpemVkIGdh
aW4gcGFyYW1ldGVyIHdpdGggcHJlY2lzaW9uCitkZXJpdmVkIGZyb20gdGhlIGN1cnJlbnQgYWxs
b2NhdGlvbiBpcyBlbnRyb3B5IGNvZGVkIHRvIHJlcHJlc2VudCB0aGUgcmVsYXRpdmUKK2dhaW5z
IG9mIGVhY2ggc2lkZSBvZiB0aGUgc3BsaXQsIGFuZCB0aGUgZW50aXJlIGRlY29kaW5nIHByb2Nl
c3MgaXMgcmVjdXJzaXZlbHkKK2FwcGxpZWQuIE11bHRpcGxlIGxldmVscyBvZiBzcGxpdHRpbmcg
bWF5IGJlIGFwcGxpZWQgdXAgdG8gYSBsaW1pdCBvZiBMTSsxIHNwbGl0cy4KK1RoZSBzYW1lIHJl
Y3Vyc2l2ZSBtZWNoYW5pc20gaXMgYXBwbGllZCBmb3IgdGhlIGpvaW50IGNvZGluZworb2Ygc3Rl
cmVvIGF1ZGlvLgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0idGYtY2hh
bmdlIiB0aXRsZT0iVGltZS1GcmVxdWVuY3kgY2hhbmdlIj4KKzx0PgorVGhlIHRpbWUtZnJlcXVl
bmN5IChURikgcGFyYW1ldGVycyBhcmUgdXNlZCB0byBjb250cm9sIHRoZSB0aW1lLWZyZXF1ZW5j
eSByZXNvbHV0aW9uIHRyYWRlb2ZmCitpbiBlYWNoIGNvZGVkIGJhbmQuIEZvciBlYWNoIGJhbmQs
IHRoZXJlIGFyZSB0d28gcG9zc2libGUgVEYgY2hvaWNlcy4gRm9yIHRoZSBmaXJzdAorYmFuZCBj
b2RlZCwgdGhlIFBERiBpcyB7MywgMX0vNCBmb3IgZnJhbWVzIG1hcmtlZCBhcyB0cmFuc2llbnQg
YW5kIHsxNSwgMX0vMTYgZm9yCit0aGUgb3RoZXIgZnJhbWVzLiBGb3Igc3Vic2VxdWVudCBiYW5k
cywgdGhlIFRGIGNob2ljZSBpcyBjb2RlZCByZWxhdGl2ZSB0byB0aGUKK3ByZXZpb3VzIFRGIGNo
b2ljZSB3aXRoIHByb2JhYmlsaXR5IHsxNSwgMX0vMTUgZm9yIHRyYW5zaWVudCBmcmFtZXMgYW5k
IHszMSwgMX0vMzIKK290aGVyd2lzZS4gVGhlIG1hcHBpbmcgYmV0d2VlbiB0aGUgZGVjb2RlZCBU
RiBjaG9pY2VzIGFuZCB0aGUgYWRqdXN0bWVudCBpbiBURgorcmVzb2x1dGlvbiBpcyBzaG93biBp
biB0aGUgdGFibGVzIGJlbG93LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ndGZfMDAnCisg
dGl0bGU9IlRGIEFkanVzdG1lbnRzIGZvciBOb24tdHJhbnNpZW50IEZyYW1lcyBhbmQgdGZfc2Vs
ZWN0PTAiPgorPHR0Y29sIGFsaWduPSdjZW50ZXInPkZyYW1lIHNpemUgKG1zKTwvdHRjb2w+Cis8
dHRjb2wgYWxpZ249J2NlbnRlcic+MDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MTwv
dHRjb2w+Cis8Yz4yLjU8L2M+ICAgICAgPGM+MDwvYz4gPGM+LTE8L2M+Cis8Yz41PC9jPiAgICAg
IDxjPjA8L2M+IDxjPi0xPC9jPgorPGM+MTA8L2M+ICAgICAgPGM+MDwvYz4gPGM+LTI8L2M+Cis8
Yz4yMDwvYz4gICAgICA8Yz4wPC9jPiA8Yz4tMjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRh
YmxlIGFuY2hvcj0ndGZfMDEnCisgdGl0bGU9IlRGIEFkanVzdG1lbnRzIGZvciBOb24tdHJhbnNp
ZW50IEZyYW1lcyBhbmQgdGZfc2VsZWN0PTEiPgorPHR0Y29sIGFsaWduPSdjZW50ZXInPkZyYW1l
IHNpemUgKG1zKTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MDwvdHRjb2w+Cis8dHRj
b2wgYWxpZ249J2NlbnRlcic+MTwvdHRjb2w+Cis8Yz4yLjU8L2M+ICAgICAgPGM+MDwvYz4gPGM+
LTE8L2M+Cis8Yz41PC9jPiAgICAgIDxjPjA8L2M+IDxjPi0yPC9jPgorPGM+MTA8L2M+ICAgICAg
PGM+MDwvYz4gPGM+LTM8L2M+Cis8Yz4yMDwvYz4gICAgICA8Yz4wPC9jPiA8Yz4tMzwvYz4KKzwv
dGV4dHRhYmxlPgorCisKKzx0ZXh0dGFibGUgYW5jaG9yPSd0Zl8xMCcKKyB0aXRsZT0iVEYgQWRq
dXN0bWVudHMgZm9yIFRyYW5zaWVudCBGcmFtZXMgYW5kIHRmX3NlbGVjdD0wIj4KKzx0dGNvbCBh
bGlnbj0nY2VudGVyJz5GcmFtZSBzaXplIChtcyk8L3R0Y29sPgorPHR0Y29sIGFsaWduPSdjZW50
ZXInPjA8L3R0Y29sPgorPHR0Y29sIGFsaWduPSdjZW50ZXInPjE8L3R0Y29sPgorPGM+Mi41PC9j
PiAgICAgIDxjPjA8L2M+IDxjPi0xPC9jPgorPGM+NTwvYz4gICAgICA8Yz4xPC9jPiA8Yz4wPC9j
PgorPGM+MTA8L2M+ICAgICAgPGM+MjwvYz4gPGM+MDwvYz4KKzxjPjIwPC9jPiAgICAgIDxjPjM8
L2M+IDxjPjA8L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9J3RmXzExJwor
IHRpdGxlPSJURiBBZGp1c3RtZW50cyBmb3IgVHJhbnNpZW50IEZyYW1lcyBhbmQgdGZfc2VsZWN0
PTEiPgorPHR0Y29sIGFsaWduPSdjZW50ZXInPkZyYW1lIHNpemUgKG1zKTwvdHRjb2w+Cis8dHRj
b2wgYWxpZ249J2NlbnRlcic+MDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MTwvdHRj
b2w+Cis8Yz4yLjU8L2M+ICAgICAgPGM+MDwvYz4gPGM+LTE8L2M+Cis8Yz41PC9jPiAgICAgIDxj
PjE8L2M+IDxjPi0xPC9jPgorPGM+MTA8L2M+ICAgICAgPGM+MTwvYz4gPGM+LTE8L2M+Cis8Yz4y
MDwvYz4gICAgICA8Yz4xPC9jPiA8Yz4tMTwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK0EgbmVn
YXRpdmUgVEYgYWRqdXN0bWVudCBtZWFucyB0aGF0IHRoZSB0ZW1wb3JhbCByZXNvbHV0aW9uIGlz
IGluY3JlYXNlZCwKK3doaWxlIGEgcG9zaXRpdmUgVEYgYWRqdXN0bWVudCBtZWFucyB0aGF0IHRo
ZSBmcmVxdWVuY3kgcmVzb2x1dGlvbiBpcyBpbmNyZWFzZWQuCitDaGFuZ2VzIGluIFRGIHJlc29s
dXRpb24gYXJlIGltcGxlbWVudGVkIHVzaW5nIHRoZSBIYWRhbWFyZCB0cmFuc2Zvcm0gPHhyZWYg
dGFyZ2V0PSJIYWRhbWFyZCIvPi4gVG8gaW5jcmVhc2UKK3RoZSB0aW1lIHJlc29sdXRpb24gYnkg
TiwgTiAibGV2ZWxzIiBvZiB0aGUgSGFkYW1hcmQgdHJhbnNmb3JtIGFyZSBhcHBsaWVkIHRvIHRo
ZQorZGVjb2RlZCB2ZWN0b3IgZm9yIGVhY2ggaW50ZXJsZWF2ZWQgTURDVCB2ZWN0b3IuIFRvIGlu
Y3JlYXNlIHRoZSBmcmVxdWVuY3kgcmVzb2x1dGlvbgorKGFzc3VtZXMgYSB0cmFuc2llbnQgZnJh
bWUpLCB0aGVuIE4gbGV2ZWxzIG9mIHRoZSBIYWRhbWFyZCB0cmFuc2Zvcm0gYXJlIGFwcGxpZWQK
KzxzcGFueCBzdHlsZT0iZW1waCI+YWNyb3NzPC9zcGFueD4gdGhlIGludGVybGVhdmVkIE1EQ1Qg
dmVjdG9yLiBJbiB0aGUgY2FzZSBvZiBpbmNyZWFzZWQKK3RpbWUgcmVzb2x1dGlvbiB0aGUgZGVj
b2RlciB1c2VzIHRoZSAic2VxdWVuY3kgb3JkZXIiIGJlY2F1c2UgdGhlIGlucHV0IHZlY3Rvcgor
aXMgc29ydGVkIGluIHRpbWUuCis8L3Q+Cis8L3NlY3Rpb24+CisKKworPC9zZWN0aW9uPgorCis8
c2VjdGlvbiBhbmNob3I9ImFudGktY29sbGFwc2UiIHRpdGxlPSJBbnRpLUNvbGxhcHNlIFByb2Nl
c3NpbmciPgorPHQ+CitUaGUgYW50aS1jb2xsYXBzZSBmZWF0dXJlIGlzIGRlc2lnbmVkIHRvIGF2
b2lkIHRoZSBzaXR1YXRpb24gd2hlcmUgdGhlIHVzZSBvZiBtdWx0aXBsZQorc2hvcnQgTURDVHMg
Y2F1c2VzIHRoZSBlbmVyZ3kgaW4gb25lIG9yIG1vcmUgb2YgdGhlIE1EQ1RzIHRvIGJlIHplcm8g
Zm9yCitzb21lIGJhbmRzLCBjYXVzaW5nIHVucGxlYXNhbnQgYXJ0aWZhY3RzLgorV2hlbiB0aGUg
ZnJhbWUgaGFzIHRoZSB0cmFuc2llbnQgYml0IHNldCwgYW4gYW50aS1jb2xsYXBzZSBiaXQgaXMg
ZGVjb2RlZC4KK1doZW4gYW50aS1jb2xsYXBzZSBpcyBzZXQsIHRoZSBlbmVyZ3kgaW4gZWFjaCBz
bWFsbCBNRENUIGlzIHByZXZlbnRlZAorZnJvbSBjb2xsYXBzaW5nIHRvIHplcm8uIEZvciBlYWNo
IGJhbmQgb2YgZWFjaCBNRENUIHdoZXJlIGEgY29sbGFwc2UgaXMKK2RldGVjdGVkLCBhIHBzZXVk
by1yYW5kb20gc2lnbmFsIGlzIGluc2VydGVkIHdpdGggYW4gZW5lcmd5IGNvcnJlc3BvbmRpbmcK
K3RvIHRoZSBtaW5pbXVtIGVuZXJneSBvdmVyIHRoZSB0d28gcHJldmlvdXMgZnJhbWVzLiBBIHJl
bm9ybWFsaXphdGlvbiBzdGVwIGlzCit0aGVuIHJlcXVpcmVkIHRvIGVuc3VyZSB0aGF0IHRoZSBh
bnRpLWNvbGxhcHNlIHN0ZXAgZGlkIG5vdCBhbHRlciB0aGUKK2VuZXJneSBwcmVzZXJ2YXRpb24g
cHJvcGVydHkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZGVub3JtYWxp
emF0aW9uIiB0aXRsZT0iRGVub3JtYWxpemF0aW9uIj4KKzx0PgorSnVzdCBhcyBlYWNoIGJhbmQg
d2FzIG5vcm1hbGl6ZWQgaW4gdGhlIGVuY29kZXIsIHRoZSBsYXN0IHN0ZXAgb2YgdGhlIGRlY29k
ZXIgYmVmb3JlCit0aGUgaW52ZXJzZSBNRENUIGlzIHRvIGRlbm9ybWFsaXplIHRoZSBiYW5kcy4g
RWFjaCBkZWNvZGVkIG5vcm1hbGl6ZWQgYmFuZCBpcworbXVsdGlwbGllZCBieSB0aGUgc3F1YXJl
IHJvb3Qgb2YgdGhlIGRlY29kZWQgZW5lcmd5LiBUaGlzIGlzIGRvbmUgYnkgZGVub3JtYWxpc2Vf
YmFuZHMoKQorKGJhbmRzLmMpLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9
ImludmVyc2UtbWRjdCIgdGl0bGU9IkludmVyc2UgTURDVCI+CisKKworPHQ+VGhlIGludmVyc2Ug
TURDVCBpbXBsZW1lbnRhdGlvbiBoYXMgbm8gc3BlY2lhbCBjaGFyYWN0ZXJpc3RpY3MuIFRoZQor
aW5wdXQgaXMgTiBmcmVxdWVuY3ktZG9tYWluIHNhbXBsZXMgYW5kIHRoZSBvdXRwdXQgaXMgMipO
IHRpbWUtZG9tYWluCitzYW1wbGVzLCB3aGlsZSBzY2FsaW5nIGJ5IDEvMi4gQSAibG93LW92ZXJs
YXAiIHdpbmRvdyByZWR1Y2VzIHRoZSBhbGdvcml0aG1pYyBkZWxheS4KK0l0IGlzIGRlcml2ZWQg
ZnJvbSBhIGJhc2ljIChmdWxsIG92ZXJsYXApIDI0MC1zYW1wbGUgdmVyc2lvbiBvZiB0aGUgd2lu
ZG93IHVzZWQgYnkgdGhlIFZvcmJpcyBjb2RlYzoKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8
YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgMgorICAgICAgIC8gICAvcGkgICAgICAvcGkgICBuICsgMS8yXCBcIFwK
K1cobikgPSB8c2lufC0tICogc2lufC0tICogLS0tLS0tLXwgfCB8IC4KKyAgICAgICBcICAgXDIg
ICAgICAgXDIgICAgICAgTCAgIC8gLyAvCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBs
b3ctb3ZlcmxhcCB3aW5kb3cgaXMgY3JlYXRlZCBieSB6ZXJvLXBhZGRpbmcgdGhlIGJhc2ljIHdp
bmRvdyBhbmQgaW5zZXJ0aW5nIG9uZXMgaW4gdGhlCittaWRkbGUsIHN1Y2ggdGhhdCB0aGUgcmVz
dWx0aW5nIHdpbmRvdyBzdGlsbCBzYXRpc2ZpZXMgcG93ZXIgY29tcGxlbWVudGFyaXR5IDx4cmVm
IHRhcmdldD0nUHJpbmNlbjg2Jy8+LgorVGhlIElNRENUIGFuZAord2luZG93aW5nIGFyZSBwZXJm
b3JtZWQgYnkgbWRjdF9iYWNrd2FyZCAobWRjdC5jKS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9y
PSJwb3N0LWZpbHRlciIgdGl0bGU9IlBvc3QtZmlsdGVyIj4KKzx0PgorVGhlIG91dHB1dCBvZiB0
aGUgaW52ZXJzZSBNRENUIChhZnRlciB3ZWlnaHRlZCBvdmVybGFwLWFkZCkgaXMgc2VudCB0byB0
aGUKK3Bvc3QtZmlsdGVyLiBBbHRob3VnaCB0aGUgcG9zdC1maWx0ZXIgaXMgYXBwbGllZCBhdCB0
aGUgZW5kLCB0aGUgcG9zdC1maWx0ZXIKK3BhcmFtZXRlcnMgYXJlIGVuY29kZWQgYXQgdGhlIGJl
Z2lubmluZywganVzdCBhZnRlciB0aGUgc2lsZW5jZSBmbGFnLgorVGhlIHBvc3QtZmlsdGVyIGNh
biBiZSBzd2l0Y2hlZCBvbiBvciBvZmYgdXNpbmcgb25lIGJpdCAobG9ncD0xKS4KK0lmIHRoZSBw
b3N0LWZpbHRlciBpcyBlbmFibGVkLCB0aGVuIHRoZSBvY3RhdmUgaXMgZGVjb2RlZCBhcyBhbiBp
bnRlZ2VyIHZhbHVlCitiZXR3ZWVuIDAgYW5kIDYgb2YgdW5pZm9ybSBwcm9iYWJpbGl0eS4gT25j
ZSB0aGUgb2N0YXZlIGlzIGtub3duLCB0aGUgZmluZSBwaXRjaAord2l0aGluIHRoZSBvY3RhdmUg
aXMgZGVjb2RlZCB1c2luZyA0K29jdGF2ZSByYXcgYml0cy4gVGhlIGZpbmFsIHBpdGNoIHBlcmlv
ZAoraXMgZXF1YWwgdG8gKDE2Jmx0OyZsdDtvY3RhdmUpK2ZpbmVfcGl0Y2gtMSBzbyBpdCBpcyBi
b3VuZGVkIGJldHdlZW4gMTUgYW5kIDEwMjIsCitpbmNsdXNpdmVseS4gTmV4dCwgdGhlIGdhaW4g
aXMgZGVjb2RlZCBhcyB0aHJlZSByYXcgYml0cyBhbmQgaXMgZXF1YWwgdG8KK0c9MyooaW50X2dh
aW4rMSkvMzIuIFRoZSBzZXQgb2YgcG9zdC1maWx0ZXIgdGFwcyBpcyBkZWNvZGVkIGxhc3QsIHVz
aW5nCithIHBkZiBlcXVhbCB0byB7MiwgMSwgMX0vNC4gVGFwc2V0IHplcm8gY29ycmVzcG9uZHMg
dG8gdGhlIGZpbHRlciBjb2VmZmljaWVudHMKK2cwID0gMC4zMDY2NDA2MjUwLCBnMSA9IDAuMjE3
MDQxMDE1NiwgZzIgPSAwLjEyOTYzODY3MTkuIFRhcHNldCBvbmUKK2NvcnJlc3BvbmRzIHRvIHRo
ZSBmaWx0ZXIgY29lZmZpY2llbnRzIGcwID0gMC40NjM4NjcxODc1LCBnMSA9IDAuMjY4MDY2NDA2
MiwKK2cyID0gMCwgYW5kIHRhcHNldCB0d28gdXNlcyBmaWx0ZXIgY29lZmZpY2llbnRzIGcwID0g
MC43OTk4MDQ2ODc1LAorZzEgPSAwLjEwMDA5NzY1NjIsIGcyID0gMC4KKzwvdD4KKworPHQ+CitU
aGUgcG9zdC1maWx0ZXIgcmVzcG9uc2UgaXMgdGh1cyBjb21wdXRlZCBhczoKKyAgICAgICAgICAg
ICAgPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKyAgICAgICAgICAgICAgICA8YXJ0d29yayBhbGln
bj0iY2VudGVyIj4KKyAgICAgICAgICAgICAgICAgIDwhW0NEQVRBWworICAgeShuKSA9IHgobikg
KyBHKihnMCp5KG4tVCkgKyBnMSooeShuLVQrMSkreShuLVQrMSkpCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICArIGcyKih5KG4tVCsyKSt5KG4tVCsyKSkpCitdXT4KKyAgICAgICAgICAg
ICAgICA8L2FydHdvcms+CisgICAgICAgICAgICAgIDwvZmlndXJlPgorCitEdXJpbmcgYSB0cmFu
c2l0aW9uIGJldHdlZW4gZGlmZmVyZW50IGdhaW5zLCBhIHNtb290aCB0cmFuc2l0aW9uIGlzIGNh
bGN1bGF0ZWQKK3VzaW5nIHRoZSBzcXVhcmUgb2YgdGhlIE1EQ1Qgd2luZG93LiBJdCBpcyBpbXBv
cnRhbnQgdGhhdCB2YWx1ZXMgb2YgeShuKSBiZQoraW50ZXJwb2xhdGVkIG9uZSBhdCBhIHRpbWUg
c3VjaCB0aGF0IHRoZSBwYXN0IHZhbHVlIG9mIHkobikgdXNlZCBpcyBpbnRlcnBvbGF0ZWQuCis8
L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZGVlbXBoYXNpcyIgdGl0bGU9IkRl
LWVtcGhhc2lzIj4KKzx0PgorQWZ0ZXIgdGhlIHBvc3QtZmlsdGVyLAordGhlIHNpZ25hbCBpcyBk
ZS1lbXBoYXNpemVkIHVzaW5nIHRoZSBpbnZlcnNlIG9mIHRoZSBwcmUtZW1waGFzaXMgZmlsdGVy
Cit1c2VkIGluIHRoZSBlbmNvZGVyOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3Jr
IGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDEgICAgICAgICAgICAxCistLS0tID0gLS0tLS0t
LS0tLS0tLS0tICwKK0EoeikgICAgICAgICAgICAgICAgLTEKKyAgICAgICAxIC0gYWxwaGFfcCp6
CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK3doZXJlIGFscGhhX3A9MC44NTAwMDYxMDM1Lgor
PC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
YW5jaG9yPSJQYWNrZXQgTG9zcyBDb25jZWFsbWVudCIgdGl0bGU9IlBhY2tldCBMb3NzIENvbmNl
YWxtZW50IChQTEMpIj4KKzx0PgorUGFja2V0IGxvc3MgY29uY2VhbG1lbnQgKFBMQykgaXMgYW4g
b3B0aW9uYWwgZGVjb2Rlci1zaWRlIGZlYXR1cmUgdGhhdAorU0hPVUxEIGJlIGluY2x1ZGVkIHdo
ZW4gcmVjZWl2aW5nIGZyb20gYW4gdW5yZWxpYWJsZSBjaGFubmVsLiBCZWNhdXNlCitQTEMgaXMg
bm90IHBhcnQgb2YgdGhlIGJpdHN0cmVhbSwgdGhlcmUgYXJlIG1hbnkgYWNjZXB0YWJsZSB3YXlz
IHRvCitpbXBsZW1lbnQgUExDIHdpdGggZGlmZmVyZW50IGNvbXBsZXhpdHkvcXVhbGl0eSB0cmFk
ZS1vZmZzLgorPC90PgorCis8dD4KK1RoZSBQTEMgaW4KK3RoZSByZWZlcmVuY2UgaW1wbGVtZW50
YXRpb24gZGVwZW5kcyBvbiB0aGUgbW9kZSBvZiBsYXN0IHBhY2tldCByZWNlaXZlZC4KK0luIENF
TFQgbW9kZSwgdGhlIFBMQyBmaW5kcyBhIHBlcmlvZGljaXR5IGluIHRoZSBkZWNvZGVkCitzaWdu
YWwgYW5kIHJlcGVhdHMgdGhlIHdpbmRvd2VkIHdhdmVmb3JtIHVzaW5nIHRoZSBwaXRjaCBvZmZz
ZXQuIFRoZSB3aW5kb3dlZAord2F2ZWZvcm0gaXMgb3ZlcmxhcHBlZCBpbiBzdWNoIGEgd2F5IGFz
IHRvIHByZXNlcnZlIHRoZSB0aW1lLWRvbWFpbiBhbGlhc2luZworY2FuY2VsbGF0aW9uIHdpdGgg
dGhlIHByZXZpb3VzIGZyYW1lIGFuZCB0aGUgbmV4dCBmcmFtZS4gVGhpcyBpcyBpbXBsZW1lbnRl
ZAoraW4gY2VsdF9kZWNvZGVfbG9zdCgpIChtZGN0LmMpLiAgSW4gU0lMSyBtb2RlLCB0aGUgUExD
IHVzZXMgTFBDIGV4dHJhcG9sYXRpb24KK2Zyb20gdGhlIHByZXZpb3VzIGZyYW1lLCBpbXBsZW1l
bnRlZCBpbiBzaWxrX1BMQygpIChQTEMuYykuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0iY2xv
Y2stZHJpZnQiIHRpdGxlPSJDbG9jayBEcmlmdCBDb21wZW5zYXRpb24iPgorPHQ+CitDbG9jayBk
cmlmdCByZWZlcnMgdG8gdGhlIGdyYWR1YWwgZGVzeW5jaHJvbml6YXRpb24gb2YgdHdvIGVuZHBv
aW50cword2hvc2Ugc2FtcGxlIGNsb2NrcyBydW4gYXQgZGlmZmVyZW50IGZyZXF1ZW5jaWVzIHdo
aWxlIHRoZXkgYXJlIHN0cmVhbWluZworbGl2ZSBhdWRpby4gIERpZmZlcmVuY2VzIGluIGNsb2Nr
IGZyZXF1ZW5jaWVzIGFyZSBnZW5lcmFsbHkgYXR0cmlidXRhYmxlIHRvCittYW51ZmFjdHVyaW5n
IHZhcmlhdGlvbiBpbiB0aGUgZW5kcG9pbnRzJyBjbG9jayBoYXJkd2FyZS4gIEZvciBsb25nLWxp
dmVkCitzdHJlYW1zLCB0aGUgdGltZSBkaWZmZXJlbmNlIGJldHdlZW4gc2VuZGVyIGFuZCByZWNl
aXZlciBjYW4gZ3JvdyB3aXRob3V0Citib3VuZC4KKzwvdD4KKworPHQ+CitXaGVuIHRoZSBzZW5k
ZXIncyBjbG9jayBydW5zIHNsb3dlciB0aGFuIHRoZSByZWNlaXZlcidzLCB0aGUgZWZmZWN0IGlz
IHNpbWlsYXIKK3RvIHBhY2tldCBsb3NzOiB0b28gZmV3IHBhY2tldHMgYXJlIHJlY2VpdmVkLiAg
VGhlIHJlY2VpdmVyIGNhbiBkaXN0aW5ndWlzaAorYmV0d2VlbiBkcmlmdCBhbmQgbG9zcyBpZiB0
aGUgdHJhbnNwb3J0IHByb3ZpZGVzIHBhY2tldCB0aW1lc3RhbXBzLiAgQSByZWNlaXZlcgorZm9y
IGxpdmUgc3RyZWFtcyBTSE9VTEQgY29uY2VhbCB0aGUgZWZmZWN0cyBvZiBkcmlmdCwgYW5kIE1B
WSBkbyBzbyBieSBpbnZva2luZwordGhlIFBMQy4KKzwvdD4KKworPHQ+CitXaGVuIHRoZSBzZW5k
ZXIncyBjbG9jayBydW5zIGZhc3RlciB0aGFuIHRoZSByZWNlaXZlcidzLCB0b28gbWFueSBwYWNr
ZXRzIHdpbGwKK2JlIHJlY2VpdmVkLiAgVGhlIHJlY2VpdmVyIE1BWSByZXNwb25kIGJ5IHNraXBw
aW5nIGFueSBwYWNrZXQgKGkuZS4sIG5vdAorc3VibWl0dGluZyB0aGUgcGFja2V0IGZvciBkZWNv
ZGluZykuICBUaGlzIGlzIGxpa2VseSB0byBwcm9kdWNlIGEgbGVzcyBzZXZlcmUKK2FydGlmYWN0
IHRoYW4gaWYgdGhlIGZyYW1lIHdlcmUgZHJvcHBlZCBhZnRlciBkZWNvZGluZy4KKzwvdD4KKwor
PHQ+CitBIGRlY29kZXIgTUFZIGVtcGxveSBhIG1vcmUgc29waGlzdGljYXRlZCBkcmlmdCBjb21w
ZW5zYXRpb24gbWV0aG9kLiBGb3IKK2V4YW1wbGUsIHRoZQorPHhyZWYgdGFyZ2V0PSdHb29nbGUt
TmV0RVEnPk5ldEVRIGNvbXBvbmVudDwveHJlZj4KK29mIHRoZQorPHhyZWYgdGFyZ2V0PSdHb29n
bGUtV2ViUlRDJz5Hb29nbGUgV2ViUlRDIGNvZGViYXNlPC94cmVmPgorY29tcGVuc2F0ZXMgZm9y
IGRyaWZ0IGJ5IGFkZGluZyBvciByZW1vdmluZworb25lIHBlcmlvZCB3aGVuIHRoZSBzaWduYWwg
aXMgaGlnaGx5IHBlcmlvZGljLiBUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIG9mCitPcHVz
IGFsbG93cyBhIGNhbGxlciB0byBsZWFybiB3aGV0aGVyIHRoZSBjdXJyZW50IGZyYW1lJ3Mgc2ln
bmFsIGlzIGhpZ2hseQorcGVyaW9kaWMsIGFuZCBpZiBzbyB3aGF0IHRoZSBwZXJpb2QgaXMsIHVz
aW5nIHRoZSBPUFVTX0dFVF9QSVRDSCgpIHJlcXVlc3QuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzd2l0Y2hpbmciIHRpdGxlPSJDb25maWd1cmF0
aW9uIFN3aXRjaGluZyI+CisKKzx0PgorU3dpdGNoaW5nIGJldHdlZW4gdGhlIE9wdXMgY29kaW5n
IG1vZGVzLCBhdWRpbyBiYW5kd2lkdGhzLCBhbmQgY2hhbm5lbCBjb3VudHMKKyByZXF1aXJlcyBj
YXJlZnVsIGNvbnNpZGVyYXRpb24gdG8gYXZvaWQgYXVkaWJsZSBnbGl0Y2hlcy4KK1N3aXRjaGlu
ZyBiZXR3ZWVuIGFueSB0d28gY29uZmlndXJhdGlvbnMgb2YgdGhlIENFTFQtb25seSBtb2RlLCBh
bnkgdHdvCisgY29uZmlndXJhdGlvbnMgb2YgdGhlIEh5YnJpZCBtb2RlLCBvciBmcm9tIFdCIFNJ
TEsgdG8gSHlicmlkIG1vZGUgZG9lcyBub3QKKyByZXF1aXJlIGFueSBzcGVjaWFsIHRyZWF0bWVu
dCBpbiB0aGUgZGVjb2RlciwgYXMgdGhlIE1EQ1Qgb3ZlcmxhcCB3aWxsIHNtb290aAorIHRoZSB0
cmFuc2l0aW9uLgorU3dpdGNoaW5nIGZyb20gSHlicmlkIG1vZGUgdG8gV0IgU0lMSyByZXF1aXJl
cyBhZGRpbmcgaW4gdGhlIGZpbmFsIGNvbnRlbnRzCisgb2YgdGhlIENFTFQgb3ZlcmxhcCBidWZm
ZXIgdG8gdGhlIGZpcnN0IFNJTEstb25seSBwYWNrZXQuCitUaGlzIGNhbiBiZSBkb25lIGJ5IGRl
Y29kaW5nIGEgMi41Jm5ic3A7bXMgc2lsZW5jZSBmcmFtZSB3aXRoIHRoZSBDRUxUIGRlY29kZXIK
KyB1c2luZyB0aGUgY2hhbm5lbCBjb3VudCBvZiB0aGUgU0lMSy1vbmx5IHBhY2tldCAoYW5kIGFu
eSBjaG9pY2Ugb2YgYXVkaW8KKyBiYW5kd2lkdGgpLCB3aGljaCB3aWxsIGNvcnJlY3RseSBoYW5k
bGUgdGhlIGNhc2VzIHdoZW4gdGhlIGNoYW5uZWwgY291bnQKKyBjaGFuZ2VzIGFzIHdlbGwuCis8
L3Q+CisKKzx0PgorV2hlbiBjaGFuZ2luZyB0aGUgY2hhbm5lbCBjb3VudCBmb3IgU0lMSy1vbmx5
IG9yIEh5YnJpZCBwYWNrZXRzLCB0aGUgZW5jb2RlcgorIGNhbiBhdm9pZCBnbGl0Y2hlcyBieSBz
bW9vdGhseSB2YXJ5aW5nIHRoZSBzdGVyZW8gd2lkdGggb2YgdGhlIGlucHV0IHNpZ25hbAorIGJl
Zm9yZSBvciBhZnRlciB0aGUgdHJhbnNpdGlvbiwgYW5kIFNIT1VMRCBkbyBzby4KK0hvd2V2ZXIs
IG90aGVyIHRyYW5zaXRpb25zIGJldHdlZW4gU0lMSy1vbmx5IHBhY2tldHMgb3IgYmV0d2VlbiBO
QiBvciBNQiBTSUxLCisgYW5kIEh5YnJpZCBwYWNrZXRzIG1heSBjYXVzZSBnbGl0Y2hlcywgYmVj
YXVzZSBuZWl0aGVyIHRoZSBMU0YgY29lZmZpY2llbnRzCisgbm9yIHRoZSBMVFAsIExQQywgc3Rl
cmVvIHVubWl4aW5nLCBhbmQgcmVzYW1wbGVyIGJ1ZmZlcnMgYXJlIGF2YWlsYWJsZSBhdCB0aGUK
KyBuZXcgc2FtcGxlIHJhdGUuCitUaGVzZSBzd2l0Y2hlcyBTSE9VTEQgYmUgZGVsYXllZCBieSB0
aGUgZW5jb2RlciB1bnRpbCBxdWlldCBwZXJpb2RzIG9yCisgdHJhbnNpZW50cywgd2hlcmUgdGhl
IGluZXZpdGFibGUgZ2xpdGNoZXMgd2lsbCBiZSBsZXNzIGF1ZGlibGUuIEFkZGl0aW9uYWxseSwK
KyB0aGUgYml0LXN0cmVhbSBNQVkgaW5jbHVkZSByZWR1bmRhbnQgc2lkZSBpbmZvcm1hdGlvbiAo
InJlZHVuZGFuY3kiKSwgaW4gdGhlCisgZm9ybSBvZiBhZGRpdGlvbmFsIENFTFQgZnJhbWVzIGVt
YmVkZGVkIGluIGVhY2ggb2YgdGhlIE9wdXMgZnJhbWVzIGFyb3VuZCB0aGUKKyB0cmFuc2l0aW9u
LgorPC90PgorCis8dD4KK1RoZSBvdGhlciB0cmFuc2l0aW9ucyB0aGF0IGNhbm5vdCBiZSBlYXNp
bHkgaGFuZGxlZCBhcmUgdGhvc2Ugd2hlcmUgdGhlIGxvd2VyCisgZnJlcXVlbmNpZXMgc3dpdGNo
IGJldHdlZW4gdGhlIFNJTEsgTFAtYmFzZWQgbW9kZWwgYW5kIHRoZSBDRUxUIE1EQ1QgbW9kZWwu
CitIb3dldmVyLCBhbiBlbmNvZGVyIG1heSBub3QgaGF2ZSBhbiBvcHBvcnR1bml0eSB0byBkZWxh
eSBzdWNoIGEgc3dpdGNoIHRvIGEKKyBjb252ZW5pZW50IHBvaW50LgorRm9yIGV4YW1wbGUsIGlm
IHRoZSBjb250ZW50IHN3aXRjaGVzIGZyb20gc3BlZWNoIHRvIG11c2ljLCBhbmQgdGhlIGVuY29k
ZXIgZG9lcworIG5vdCBoYXZlIGVub3VnaCBsYXRlbmN5IGluIGl0cyBhbmFseXNpcyB0byBkZXRl
Y3QgdGhpcyBpbiBhZHZhbmNlLCB0aGVyZSBtYXkKKyBiZSBubyBjb252ZW5pZW50IHNpbGVuY2Ug
cGVyaW9kIGR1cmluZyB3aGljaCB0byBtYWtlIHRoZSB0cmFuc2l0aW9uIGZvciBxdWl0ZQorIHNv
bWUgdGltZS4KK1RvIGF2b2lkIG9yIHJlZHVjZSBnbGl0Y2hlcyBkdXJpbmcgdGhlc2UgcHJvYmxl
bWF0aWMgbW9kZSB0cmFuc2l0aW9ucywgYW5kCisgYWxzbyBiZXR3ZWVuIGF1ZGlvIGJhbmR3aWR0
aCBjaGFuZ2VzIGluIHRoZSBTSUxLLW9ubHkgbW9kZXMsIHRyYW5zaXRpb25zIE1BWQorIGluY2x1
ZGUgcmVkdW5kYW50IHNpZGUgaW5mb3JtYXRpb24gKCJyZWR1bmRhbmN5IiksIGluIHRoZSBmb3Jt
IG9mIGFuCisgYWRkaXRpb25hbCBDRUxUIGZyYW1lIGVtYmVkZGVkIGluIHRoZSBPcHVzIGZyYW1l
LgorPC90PgorCis8dD4KK0EgdHJhbnNpdGlvbiBiZXR3ZWVuIGNvZGluZyB0aGUgbG93ZXIgZnJl
cXVlbmNpZXMgd2l0aCB0aGUgTFAgbW9kZWwgYW5kIHRoZQorIE1EQ1QgbW9kZWwgb3IgYSB0cmFu
c2l0aW9uIHRoYXQgaW52b2x2ZXMgY2hhbmdpbmcgdGhlIFNJTEsgYmFuZHdpZHRoCisgaXMgb25s
eSBub3JtYXRpdmVseSBzcGVjaWZpZWQgd2hlbiBpdCBpbmNsdWRlcyByZWR1bmRhbmN5LgorRm9y
IHRob3NlIHdpdGhvdXQgcmVkdW5kYW5jeSwgaXQgaXMgUkVDT01NRU5ERUQgdGhhdCB0aGUgZGVj
b2RlciB1c2UgYQorIGNvbmNlYWxtZW50IHRlY2huaXF1ZSAoZS5nLiwgbWFrZSB1c2Ugb2YgYSBQ
TEMgYWxnb3JpdGhtKSB0byAiZmlsbCBpbiIgdGhlCisgZ2FwIG9yIGRpc2NvbnRpbnVpdHkgY2F1
c2VkIGJ5IHRoZSBtb2RlIHRyYW5zaXRpb24uCitUaGVyZWZvcmUsIFBMQyBNVVNUIE5PVCBiZSBh
cHBsaWVkIGR1cmluZyBhbnkgbm9ybWF0aXZlIHRyYW5zaXRpb24sIGkuZS4sIHdoZW4KKzxsaXN0
IHN0eWxlPSJzeW1ib2xzIj4KKzx0PkEgcGFja2V0IGluY2x1ZGVzIHJlZHVuZGFuY3kgZm9yIHRo
aXMgdHJhbnNpdGlvbiAoYXMgZGVzY3JpYmVkIGJlbG93KSw8L3Q+Cis8dD5UaGUgdHJhbnNpdGlv
biBpcyBiZXR3ZWVuIGFueSBXQiBTSUxLIHBhY2tldCBhbmQgYW55IEh5YnJpZCBwYWNrZXQsIG9y
IHZpY2UKKyB2ZXJzYSw8L3Q+Cis8dD5UaGUgdHJhbnNpdGlvbiBpcyBiZXR3ZWVuIGFueSB0d28g
SHlicmlkIG1vZGUgcGFja2V0cywgb3I8L3Q+Cis8dD5UaGUgdHJhbnNpdGlvbiBpcyBiZXR3ZWVu
IGFueSB0d28gQ0VMVCBtb2RlIHBhY2tldHMsPC90PgorPC9saXN0PgorIHVubGVzcyB0aGVyZSBp
cyBhY3R1YWwgcGFja2V0IGxvc3MuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lkZS1pbmZv
IiB0aXRsZT0iVHJhbnNpdGlvbiBTaWRlIEluZm9ybWF0aW9uIChSZWR1bmRhbmN5KSI+Cis8dD4K
K1RyYW5zaXRpb25zIHdpdGggc2lkZSBpbmZvcm1hdGlvbiBpbmNsdWRlIGFuIGV4dHJhIDUmbmJz
cDttcyAicmVkdW5kYW50IiBDRUxUCisgZnJhbWUgd2l0aGluIHRoZSBPcHVzIGZyYW1lLgorVGhp
cyBmcmFtZSBpcyBkZXNpZ25lZCB0byBmaWxsIGluIHRoZSBnYXAgb3IgZGlzY29udGludWl0eSBp
biB0aGUgZGlmZmVyZW50CisgbGF5ZXJzIHdpdGhvdXQgcmVxdWlyaW5nIHRoZSBkZWNvZGVyIHRv
IGNvbmNlYWwgaXQuCitGb3IgdHJhbnNpdGlvbnMgZnJvbSBDRUxULW9ubHkgdG8gU0lMSy1vbmx5
IG9yIEh5YnJpZCwgdGhlIHJlZHVuZGFudCBmcmFtZSBpcworIGluc2VydGVkIGluIHRoZSBmaXJz
dCBPcHVzIGZyYW1lIGFmdGVyIHRoZSB0cmFuc2l0aW9uIChpLmUuLCB0aGUgZmlyc3QKKyBTSUxL
LW9ubHkgb3IgSHlicmlkIGZyYW1lKS4KK0ZvciB0cmFuc2l0aW9ucyBmcm9tIFNJTEstb25seSBv
ciBIeWJyaWQgdG8gQ0VMVC1vbmx5LCB0aGUgcmVkdW5kYW50IGZyYW1lIGlzCisgaW5zZXJ0ZWQg
aW4gdGhlIGxhc3QgT3B1cyBmcmFtZSBiZWZvcmUgdGhlIHRyYW5zaXRpb24gKGkuZS4sIHRoZSBs
YXN0CisgU0lMSy1vbmx5IG9yIEh5YnJpZCBmcmFtZSkuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hv
cj0ib3B1c19yZWR1bmRhbmN5X2ZsYWciIHRpdGxlPSJSZWR1bmRhbmN5IEZsYWciPgorPHQ+CitU
aGUgcHJlc2VuY2Ugb2YgcmVkdW5kYW5jeSBpcyBzaWduYWxlZCBpbiBhbGwgU0lMSy1vbmx5IGFu
ZCBIeWJyaWQgZnJhbWVzLCBub3QKKyBqdXN0IHRob3NlIGludm9sdmVkIGluIGEgbW9kZSB0cmFu
c2l0aW9uLgorVGhpcyBhbGxvd3MgdGhlIGZyYW1lcyB0byBiZSBkZWNvZGVkIGNvcnJlY3RseSBl
dmVuIGlmIGFuIGFkamFjZW50IGZyYW1lIGlzCisgbG9zdC4KK0ZvciBTSUxLLW9ubHkgZnJhbWVz
LCB0aGlzIHNpZ25hbGluZyBpcyBpbXBsaWNpdCwgYmFzZWQgb24gdGhlIHNpemUgb2YgdGhlCisg
b2YgdGhlIE9wdXMgZnJhbWUgYW5kIHRoZSBudW1iZXIgb2YgYml0cyBjb25zdW1lZCBkZWNvZGlu
ZyB0aGUgU0lMSyBwb3J0aW9uIG9mCisgaXQuCitBZnRlciBkZWNvZGluZyB0aGUgU0lMSyBwb3J0
aW9uIG9mIHRoZSBPcHVzIGZyYW1lLCB0aGUgZGVjb2RlciB1c2VzIGVjX3RlbGwoKQorIChzZWUg
PHhyZWYgdGFyZ2V0PSJlY190ZWxsIi8+KSB0byBjaGVjayBpZiB0aGVyZSBhcmUgYXQgbGVhc3Qg
MTcgYml0cworIHJlbWFpbmluZy4KK0lmIHNvLCB0aGVuIHRoZSBmcmFtZSBjb250YWlucyByZWR1
bmRhbmN5LgorPC90PgorCis8dD4KK0ZvciBIeWJyaWQgZnJhbWVzLCB0aGlzIHNpZ25hbGluZyBp
cyBleHBsaWNpdC4KK0FmdGVyIGRlY29kaW5nIHRoZSBTSUxLIHBvcnRpb24gb2YgdGhlIE9wdXMg
ZnJhbWUsIHRoZSBkZWNvZGVyIHVzZXMgZWNfdGVsbCgpCisgKHNlZSA8eHJlZiB0YXJnZXQ9ImVj
X3RlbGwiLz4pIHRvIGVuc3VyZSB0aGVyZSBhcmUgYXQgbGVhc3QgMzcgYml0cyByZW1haW5pbmcu
CitJZiBzbywgaXQgcmVhZHMgYSBzeW1ib2wgd2l0aCB0aGUgUERGIGluCisgPHhyZWYgdGFyZ2V0
PSJvcHVzX3JlZHVuZGFuY3lfZmxhZ19wZGYiLz4sIGFuZCBpZiB0aGUgdmFsdWUgaXMgMSwgdGhl
biB0aGUKKyBmcmFtZSBjb250YWlucyByZWR1bmRhbmN5LgorT3RoZXJ3aXNlIChpZiB0aGVyZSB3
ZXJlIGZld2VyIHRoYW4gMzcgYml0cyBsZWZ0IG9yIHRoZSB2YWx1ZSB3YXMgMCksIHRoZSBmcmFt
ZQorIGRvZXMgbm90IGNvbnRhaW4gcmVkdW5kYW5jeS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNo
b3I9Im9wdXNfcmVkdW5kYW5jeV9mbGFnX3BkZiIgdGl0bGU9IlJlZHVuZGFuY3kgRmxhZyBQREYi
PgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz57NDA5NSwgMX0vNDA5NjwvYz4KKzwvdGV4dHRhYmxl
PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Im9wdXNfcmVkdW5kYW5jeV9wb3MiIHRp
dGxlPSJSZWR1bmRhbmN5IFBvc2l0aW9uIEZsYWciPgorPHQ+CitTaW5jZSB0aGUgY3VycmVudCBm
cmFtZSBpcyBhIFNJTEstb25seSBvciBhIEh5YnJpZCBmcmFtZSwgaXQgbXVzdCBiZSBhdCBsZWFz
dAorIDEwJm5ic3A7bXMuCitUaGVyZWZvcmUsIGl0IG5lZWRzIGFuIGFkZGl0aW9uYWwgZmxhZyB0
byBpbmRpY2F0ZSB3aGV0aGVyIHRoZSByZWR1bmRhbnQKKyA1Jm5ic3A7bXMgQ0VMVCBmcmFtZSBz
aG91bGQgYmUgbWl4ZWQgaW50byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBjdXJyZW50IGZyYW1lLAor
IG9yIHRoZSBlbmQuCitBZnRlciBkZXRlcm1pbmluZyB0aGF0IGEgZnJhbWUgY29udGFpbnMgcmVk
dW5kYW5jeSwgdGhlIGRlY29kZXIgcmVhZHMgYQorIDEmbmJzcDtiaXQgc3ltYm9sIHdpdGggYSB1
bmlmb3JtIFBERgorICg8eHJlZiB0YXJnZXQ9Im9wdXNfcmVkdW5kYW5jeV9wb3NfcGRmIi8+KS4K
KzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9Im9wdXNfcmVkdW5kYW5jeV9wb3NfcGRmIiB0aXRs
ZT0iUmVkdW5kYW5jeSBQb3NpdGlvbiBQREYiPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz57MSwg
MX0vMjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK0lmIHRoZSB2YWx1ZSBpcyB6ZXJvLCB0aGlz
IGlzIHRoZSBmaXJzdCBmcmFtZSBpbiB0aGUgdHJhbnNpdGlvbiwgYW5kIHRoZQorIHJlZHVuZGFu
Y3kgYmVsb25ncyBhdCB0aGUgZW5kLgorSWYgdGhlIHZhbHVlIGlzIG9uZSwgdGhpcyBpcyB0aGUg
c2Vjb25kIGZyYW1lIGluIHRoZSB0cmFuc2l0aW9uLCBhbmQgdGhlCisgcmVkdW5kYW5jeSBiZWxv
bmdzIGF0IHRoZSBiZWdpbm5pbmcuCitUaGVyZSBpcyBubyB3YXkgdG8gc3BlY2lmeSB0aGF0IGFu
IE9wdXMgZnJhbWUgY29udGFpbnMgc2VwYXJhdGUgcmVkdW5kYW50IENFTFQKKyBmcmFtZXMgYXQg
Ym90aCB0aGUgYmVnaW5uaW5nIGFuZCB0aGUgZW5kLgorPC90PgorPC9zZWN0aW9uPgorCis8c2Vj
dGlvbiBhbmNob3I9Im9wdXNfcmVkdW5kYW5jeV9zaXplIiB0aXRsZT0iUmVkdW5kYW5jeSBTaXpl
Ij4KKzx0PgorVW5saWtlIHRoZSBDRUxUIHBvcnRpb24gb2YgYSBIeWJyaWQgZnJhbWUsIHRoZSBy
ZWR1bmRhbnQgQ0VMVCBmcmFtZSBkb2VzIG5vdAorIHVzZSB0aGUgc2FtZSBlbnRyb3B5IGNvZGVy
IHN0YXRlIGFzIHRoZSByZXN0IG9mIHRoZSBPcHVzIGZyYW1lLCBiZWNhdXNlIHRoaXMKKyB3b3Vs
ZCBicmVhayB0aGUgQ0VMVCBiaXQgYWxsb2NhdGlvbiBtZWNoYW5pc20gaW4gSHlicmlkIGZyYW1l
cy4KK1RodXMsIGEgcmVkdW5kYW50IENFTFQgZnJhbWUgYWx3YXlzIHN0YXJ0cyBhbmQgZW5kcyBv
biBhIGJ5dGUgYm91bmRhcnksIGV2ZW4gaW4KKyBTSUxLLW9ubHkgZnJhbWVzLCB3aGVyZSB0aGlz
IGlzIG5vdCBzdHJpY3RseSBuZWNlc3NhcnkuCis8L3Q+CisKKzx0PgorRm9yIFNJTEstb25seSBm
cmFtZXMsIHRoZSBudW1iZXIgb2YgYnl0ZXMgaW4gdGhlIHJlZHVuZGFudCBDRUxUIGZyYW1lIGlz
IHNpbXBseQorIHRoZSBudW1iZXIgb2Ygd2hvbGUgYnl0ZXMgcmVtYWluaW5nLCB3aGljaCBtdXN0
IGJlIGF0IGxlYXN0IDIsIGR1ZSB0byB0aGUKKyBzcGFjZSBjaGVjayBpbiA8eHJlZiB0YXJnZXQ9
Im9wdXNfcmVkdW5kYW5jeV9mbGFnIi8+LgorRm9yIEh5YnJpZCBmcmFtZXMsIHRoZSBudW1iZXIg
b2YgYnl0ZXMgaXMgZXF1YWwgdG8gMiwgcGx1cyBhIGRlY29kZWQgdW5zaWduZWQKKyBpbnRlZ2Vy
IGxlc3MgdGhhbiAyNTYgKHNlZSA8eHJlZiB0YXJnZXQ9ImVjX2RlY191aW50Ii8+KS4KK1RoaXMg
bWF5IGJlIG1vcmUgdGhhbiB0aGUgbnVtYmVyIG9mIHdob2xlIGJ5dGVzIHJlbWFpbmluZyBpbiB0
aGUgT3B1cyBmcmFtZSwKKyBpbiB3aGljaCBjYXNlIHRoZSBmcmFtZSBpcyBpbnZhbGlkLgorSG93
ZXZlciwgYSBkZWNvZGVyIGlzIG5vdCByZXF1aXJlZCB0byBpZ25vcmUgdGhlIGVudGlyZSBmcmFt
ZSwgYXMgdGhpcyBtYXkgYmUKKyB0aGUgcmVzdWx0IG9mIGEgYml0IGVycm9yIHRoYXQgZGVzeW5j
aHJvbml6ZWQgdGhlIHJhbmdlIGNvZGVyLgorVGhlcmUgbWF5IHN0aWxsIGJlIHVzZWZ1bCBkYXRh
IGJlZm9yZSB0aGUgZXJyb3IsIGFuZCBhIGRlY29kZXIgTUFZIGtlZXAgYW55CisgYXVkaW8gZGVj
b2RlZCBzbyBmYXIgaW5zdGVhZCBvZiBpbnZva2luZyB0aGUgUExDLCBidXQgaXQgaXMgUkVDT01N
RU5ERUQgdGhhdAorIHRoZSBkZWNvZGVyIHN0b3AgZGVjb2RpbmcgYW5kIGRpc2NhcmQgdGhlIHJl
c3Qgb2YgdGhlIGN1cnJlbnQgT3B1cyBmcmFtZS4KKzwvdD4KKworPHQ+CitJdCB3b3VsZCBoYXZl
IGJlZW4gcG9zc2libGUgdG8gYXZvaWQgdGhlc2UgaW52YWxpZCBzdGF0ZXMgaW4gdGhlIGRlc2ln
biBvZiBPcHVzCisgYnkgbGltaXRpbmcgdGhlIHJhbmdlIG9mIHRoZSBleHBsaWNpdCBsZW5ndGgg
ZGVjb2RlZCBmcm9tIEh5YnJpZCBmcmFtZXMgYnkgdGhlCisgYWN0dWFsIG51bWJlciBvZiB3aG9s
ZSBieXRlcyByZW1haW5pbmcuCitIb3dldmVyLCB0aGlzIHdvdWxkIHJlcXVpcmUgYW4gZW5jb2Rl
ciB0byBkZXRlcm1pbmUgdGhlIHJhdGUgYWxsb2NhdGlvbiBmb3IgdGhlCisgTURDVCBsYXllciB1
cCBmcm9udCwgYmVmb3JlIGl0IGJlZ2FuIGVuY29kaW5nIHRoYXQgbGF5ZXIuCitCeSBhbGxvd2lu
ZyBzb21lIGludmFsaWQgc2l6ZXMsIHRoZSBlbmNvZGVyIGlzIGFibGUgdG8gZGVmZXIgdGhhdCBk
ZWNpc2lvbgorIHVudGlsIG11Y2ggbGF0ZXIuCitXaGVuIGVuY29kaW5nIEh5YnJpZCBmcmFtZXMg
d2hpY2ggZG8gbm90IGluY2x1ZGUgcmVkdW5kYW5jeSwgdGhlIGVuY29kZXIgbXVzdAorIHN0aWxs
IGRlY2lkZSB1cC1mcm9udCBpZiBpdCB3aXNoZXMgdG8gdXNlIHRoZSBtaW5pbXVtIDM3IGJpdHMg
cmVxdWlyZWQgdG8KKyB0cmlnZ2VyIGVuY29kaW5nIG9mIHRoZSByZWR1bmRhbmN5IGZsYWcsIGJ1
dCB0aGlzIGlzIGEgbXVjaCBsb29zZXIKKyByZXN0cmljdGlvbi4KKzwvdD4KKworPHQ+CitBZnRl
ciBkZXRlcm1pbmluZyB0aGUgc2l6ZSBvZiB0aGUgcmVkdW5kYW50IENFTFQgZnJhbWUsIHRoZSBk
ZWNvZGVyIHJlZHVjZXMKKyB0aGUgc2l6ZSBvZiB0aGUgYnVmZmVyIGN1cnJlbnRseSBpbiB1c2Ug
YnkgdGhlIHJhbmdlIGNvZGVyIGJ5IHRoYXQgYW1vdW50LgorVGhlIENFTFQgbGF5ZXIgcmVhZCBh
bnkgcmF3IGJpdHMgZnJvbSB0aGUgZW5kIG9mIHRoaXMgcmVkdWNlZCBidWZmZXIsIGFuZCBhbGwK
KyBjYWxjdWxhdGlvbnMgb2YgdGhlIG51bWJlciBvZiBiaXRzIHJlbWFpbmluZyBpbiB0aGUgYnVm
ZmVyIG11c3QgYmUgZG9uZSB1c2luZworIHRoaXMgbmV3LCByZWR1Y2VkIHNpemUsIHJhdGhlciB0
aGFuIHRoZSBvcmlnaW5hbCBzaXplIG9mIHRoZSBPcHVzIGZyYW1lLgorPC90PgorPC9zZWN0aW9u
PgorCis8c2VjdGlvbiBhbmNob3I9Im9wdXNfcmVkdW5kYW5jeV9kZWNvZGluZyIgdGl0bGU9IkRl
Y29kaW5nIHRoZSBSZWR1bmRhbmN5Ij4KKzx0PgorVGhlIHJlZHVuZGFudCBmcmFtZSBpcyBkZWNv
ZGVkIGxpa2UgYW55IG90aGVyIENFTFQtb25seSBmcmFtZSwgd2l0aCB0aGUKKyBleGNlcHRpb24g
dGhhdCBpdCBkb2VzIG5vdCBjb250YWluIGEgVE9DIGJ5dGUuCitUaGUgZnJhbWUgc2l6ZSBpcyBm
aXhlZCBhdCA1Jm5ic3A7bXMsIHRoZSBjaGFubmVsIGNvdW50IGlzIHNldCB0byB0aGF0IG9mIHRo
ZQorIGN1cnJlbnQgZnJhbWUsIGFuZCB0aGUgYXVkaW8gYmFuZHdpZHRoIGlzIGFsc28gc2V0IHRv
IHRoYXQgb2YgdGhlIGN1cnJlbnQKKyBmcmFtZSwgd2l0aCB0aGUgZXhjZXB0aW9uIHRoYXQgZm9y
IE1CIFNJTEsgZnJhbWVzLCBpdCBpcyBzZXQgdG8gV0IuCis8L3Q+CisKKzx0PgorSWYgdGhlIHJl
ZHVuZGFuY3kgYmVsb25ncyBhdCB0aGUgYmVnaW5uaW5nIChpbiBhIENFTFQtb25seSB0byBTSUxL
LW9ubHkgb3IKKyBIeWJyaWQgdHJhbnNpdGlvbiksIHRoZSBmaW5hbCByZWNvbnN0cnVjdGVkIG91
dHB1dCB1c2VzIHRoZSBmaXJzdCAyLjUmbmJzcDttcworIG9mIGF1ZGlvIG91dHB1dCBieSB0aGUg
ZGVjb2RlciBmb3IgdGhlIHJlZHVuZGFudCBmcmFtZSBhcy1pcywgZGlzY2FyZGluZworIHRoZSBj
b3JyZXNwb25kaW5nIG91dHB1dCBmcm9tIHRoZSBTSUxLLW9ubHkgb3IgSHlicmlkIHBvcnRpb24g
b2YgdGhlIGZyYW1lLgorVGhlIHJlbWFpbmluZyAyLjUmbmJzcDttcyBpcyBjcm9zcy1sYXBwZWQg
d2l0aCB0aGUgZGVjb2RlZCBTSUxLL0h5YnJpZCBzaWduYWwKKyB1c2luZyB0aGUgQ0VMVCdzIHBv
d2VyLWNvbXBsZW1lbnRhcnkgTURDVCB3aW5kb3cgdG8gZW5zdXJlIGEgc21vb3RoCisgdHJhbnNp
dGlvbi4KKzwvdD4KKworPHQ+CitJZiB0aGUgcmVkdW5kYW5jeSBiZWxvbmdzIGF0IHRoZSBlbmQg
KGluIGEgU0lMSy1vbmx5IG9yIEh5YnJpZCB0byBDRUxULW9ubHkKKyB0cmFuc2l0aW9uKSwgb25s
eSB0aGUgc2Vjb25kIGhhbGYgKDIuNSZuYnNwO21zKSBvZiB0aGUgYXVkaW8gb3V0cHV0IGJ5IHRo
ZQorIGRlY29kZXIgZm9yIHRoZSByZWR1bmRhbnQgZnJhbWUgaXMgdXNlZC4KK0luIHRoYXQgY2Fz
ZSwgdGhlIHNlY29uZCBoYWxmIG9mIHRoZSByZWR1bmRhbnQgZnJhbWUgaXMgY3Jvc3MtbGFwcGVk
IHdpdGggdGhlCisgZW5kIG9mIHRoZSBTSUxLL0h5YnJpZCBzaWduYWwsIGFnYWluIHVzaW5nIENF
TFQncyBwb3dlci1jb21wbGVtZW50YXJ5IE1EQ1QKKyB3aW5kb3cgdG8gZW5zdXJlIGEgc21vb3Ro
IHRyYW5zaXRpb24uCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
YW5jaG9yPSJkZWNvZGVyLXJlc2V0IiB0aXRsZT0iU3RhdGUgUmVzZXQiPgorPHQ+CitXaGVuIGEg
dHJhbnNpdGlvbiBvY2N1cnMsIHRoZSBzdGF0ZSBvZiB0aGUgU0lMSyBvciB0aGUgQ0VMVCBkZWNv
ZGVyIChvciBib3RoKQorIG1heSBuZWVkIHRvIGJlIHJlc2V0IGJlZm9yZSBkZWNvZGluZyBhIGZy
YW1lIGluIHRoZSBuZXcgbW9kZS4KK1RoaXMgYXZvaWRzIHJldXNpbmcgIm91dCBvZiBkYXRlIiBt
ZW1vcnksIHdoaWNoIG1heSBub3QgaGF2ZSBiZWVuIHVwZGF0ZWQgaW4KKyBzb21lIHRpbWUgb3Ig
bWF5IG5vdCBiZSBpbiBhIHdlbGwtZGVmaW5lZCBzdGF0ZSBkdWUgdG8sIGUuZy4sIFBMQy4KK1Ro
ZSBTSUxLIHN0YXRlIGlzIHJlc2V0IGJlZm9yZSBldmVyeSBTSUxLLW9ubHkgb3IgSHlicmlkIGZy
YW1lIHdoZXJlIHRoZQorIHByZXZpb3VzIGZyYW1lIHdhcyBDRUxULW9ubHkuCitUaGUgQ0VMVCBz
dGF0ZSBpcyByZXNldCBldmVyeSB0aW1lIHRoZSBvcGVyYXRpbmcgbW9kZSBjaGFuZ2VzIGFuZCB0
aGUgbmV3IG1vZGUKKyBpcyBlaXRoZXIgSHlicmlkIG9yIENFTFQtb25seSwgZXhjZXB0IHdoZW4g
dGhlIHRyYW5zaXRpb24gdXNlcyByZWR1bmRhbmN5IGFzCisgZGVzY3JpYmVkIGFib3ZlLgorV2hl
biBzd2l0Y2hpbmcgZnJvbSBTSUxLLW9ubHkgb3IgSHlicmlkIHRvIENFTFQtb25seSB3aXRoIHJl
ZHVuZGFuY3ksIHRoZSBDRUxUCisgc3RhdGUgaXMgcmVzZXQgYmVmb3JlIGRlY29kaW5nIHRoZSBy
ZWR1bmRhbnQgQ0VMVCBmcmFtZSBlbWJlZGRlZCBpbiB0aGUKKyBTSUxLLW9ubHkgb3IgSHlicmlk
IGZyYW1lLCBidXQgaXQgaXMgbm90IHJlc2V0IGJlZm9yZSBkZWNvZGluZyB0aGUgZm9sbG93aW5n
CisgQ0VMVC1vbmx5IGZyYW1lLgorV2hlbiBzd2l0Y2hpbmcgZnJvbSBDRUxULW9ubHkgbW9kZSB0
byBTSUxLLW9ubHkgb3IgSHlicmlkIG1vZGUgd2l0aCByZWR1bmRhbmN5LAorIHRoZSBDRUxUIGRl
Y29kZXIgaXMgbm90IHJlc2V0IGZvciBkZWNvZGluZyB0aGUgcmVkdW5kYW50IENFTFQgZnJhbWUu
Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJTdW1tYXJ5IG9mIFRyYW5zaXRp
b25zIj4KKworPHQ+Cis8eHJlZiB0YXJnZXQ9Im5vcm1hdGl2ZV90cmFuc2l0aW9ucyIvPiBpbGx1
c3RyYXRlcyBhbGwgb2YgdGhlIG5vcm1hdGl2ZQorIHRyYW5zaXRpb25zIGludm9sdmluZyBhIG1v
ZGUgY2hhbmdlLCBhbiBhdWRpbyBiYW5kd2lkdGggY2hhbmdlLCBvciBib3RoLgorRWFjaCBvbmUg
dXNlcyBhbiBTLCBILCBvciBDIHRvIHJlcHJlc2VudCBhbiBPcHVzIGZyYW1lIGluIHRoZSBjb3Jy
ZXNwb25kaW5nCisgbW9kZS4KK0luIGFkZGl0aW9uLCBhbiBSIGluZGljYXRlcyB0aGUgcHJlc2Vu
Y2Ugb2YgcmVkdW5kYW5jeSBpbiB0aGUgT3B1cyBmcmFtZSBpdCBpcworIGNyb3NzLWxhcHBlZCB3
aXRoLgorSXRzIGxvY2F0aW9uIGluIHRoZSBmaXJzdCBvciBsYXN0IDUmbmJzcDttcyBpcyBhc3N1
bWVkIHRvIGNvcnJlc3BvbmQgdG8gd2hldGhlcgorIGl0IGlzIHRoZSBmcmFtZSBiZWZvcmUgb3Ig
YWZ0ZXIgdGhlIHRyYW5zaXRpb24uCitPdGhlciB1c2VzIG9mIHJlZHVuZGFuY3kgYXJlIG5vbi1u
b3JtYXRpdmUuCitGaW5hbGx5LCBhIGMgaW5kaWNhdGVzIHRoZSBjb250ZW50cyBvZiB0aGUgQ0VM
VCBvdmVybGFwIGJ1ZmZlciBhZnRlciB0aGUKKyBwcmV2aW91c2x5IGRlY29kZWQgZnJhbWUgKGku
ZS4sIGFzIGV4dHJhY3RlZCBieSBkZWNvZGluZyBhIHNpbGVuY2UgZnJhbWUpLgorPGZpZ3VyZSBh
bGlnbj0iY2VudGVyIiBhbmNob3I9Im5vcm1hdGl2ZV90cmFuc2l0aW9ucyIKKyB0aXRsZT0iTm9y
bWF0aXZlIFRyYW5zaXRpb25zIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
U0lMSyB0byBTSUxLIHdpdGggUmVkdW5kYW5jeTogICAgICAgICAgICAgUyAtPiBTIC0+IFMKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhUiAtPiBSCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAm
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDtTIC0+IFMgLT4gUworCitOQiBvciBNQiBTSUxLIHRvIEh5YnJpZCB3aXRoIFJlZHVuZGFuY3k6
ICBTIC0+IFMgLT4gUworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICFSIC0+O0ggLT4gSCAtPiBICisKK1dCIFNJTEsgdG8gSHlicmlkOiAgICAgICAgICAg
ICAgICAgICAgICAgIFMgLT4gUyAtPiBTIC0+IUggLT4gSCAtPiBICisKK1NJTEsgdG8gQ0VMVCB3
aXRoIFJlZHVuZGFuY3k6ICAgICAgICAgICAgIFMgLT4gUyAtPiBTCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIVIgLT4gQyAtPiBDIC0+IEMKKworSHli
cmlkIHRvIE5CIG9yIE1CIFNJTEsgd2l0aCBSZWR1bmRhbmN5OiAgSCAtPiBIIC0+IEgKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhUiAtPiBSCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtT
IC0+IFMgLT4gUworCitIeWJyaWQgdG8gV0IgU0lMSzogICAgICAgICAgICAgICAgICAgICAgICBI
IC0+IEggLT4gSCAtPiBjCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcICArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPiBTIC0+IFMgLT4gUworCitIeWJyaWQgdG8gQ0VMVCB3aXRoIFJl
ZHVuZGFuY3k6ICAgICAgICAgICBIIC0+IEggLT4gSAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICYKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICFSIC0+IEMgLT4gQyAtPiBDCisKK0NFTFQgdG8gU0lM
SyB3aXRoIFJlZHVuZGFuY3k6ICAgICAgICAgICAgIEMgLT4gQyAtPiBDIC0+IFIKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgO1MgLT4g
UyAtPiBTCisKK0NFTFQgdG8gSHlicmlkIHdpdGggUmVkdW5kYW5jeTogICAgICAgICAgIEMgLT4g
QyAtPiBDIC0+IFIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfEggLT4gSCAtPiBICisKK0tleToKK1MgICBTSUxLLW9ubHkgZnJhbWUg
ICAgICAgICAgICAgICAgIDsgICBTSUxLIGRlY29kZXIgcmVzZXQKK0ggICBIeWJyaWQgZnJhbWUg
ICAgICAgICAgICAgICAgICAgIHwgICBDRUxUIGFuZCBTSUxLIGRlY29kZXIgcmVzZXRzCitDICAg
Q0VMVC1vbmx5IGZyYW1lICAgICAgICAgICAgICAgICAhICAgQ0VMVCBkZWNvZGVyIHJlc2V0Citj
ICAgQ0VMVCBvdmVybGFwICAgICAgICAgICAgICAgICAgICArICAgRGlyZWN0IG1peGluZworUiAg
IFJlZHVuZGFudCBDRUxUIGZyYW1lICAgICAgICAgICAgJiAgIFdpbmRvd2VkIGNyb3NzLWxhcAor
XV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGUgZmlyc3QgdHdvIGFuZCB0aGUgbGFzdCB0d28g
T3B1cyBmcmFtZXMgaW4gZWFjaCBleGFtcGxlIGFyZSBpbGx1c3RyYXRpdmUsCisgaS5lLiwgdGhl
cmUgaXMgbm8gcmVxdWlyZW1lbnQgdGhhdCBhIHN0cmVhbSByZW1haW4gaW4gdGhlIHNhbWUgY29u
ZmlndXJhdGlvbgorIGZvciB0aHJlZSBjb25zZWN1dGl2ZSBmcmFtZXMgYmVmb3JlIG9yIGFmdGVy
IGEgc3dpdGNoLgorPC90PgorCis8dD4KK1RoZSBiZWhhdmlvciBvZiB0cmFuc2l0aW9ucyB3aXRo
b3V0IHJlZHVuZGFuY3kgd2hlcmUgUExDIGlzIGFsbG93ZWQgaXMgbm9uLW5vcm1hdGl2ZS4KK0Fu
IGVuY29kZXIgbWlnaHQgc3RpbGwgd2lzaCB0byB1c2UgdGhlc2UgdHJhbnNpdGlvbnMgaWYsIGZv
ciBleGFtcGxlLCBpdAorIGRvZXNuJ3Qgd2FudCB0byBhZGQgdGhlIGV4dHJhIGJpdHJhdGUgcmVx
dWlyZWQgZm9yIHJlZHVuZGFuY3kgb3IgaWYgaXQgbWFrZXMKKyBhIGRlY2lzaW9uIHRvIHN3aXRj
aCBhZnRlciBpdCBoYXMgYWxyZWFkeSB0cmFuc21pdHRlZCB0aGUgZnJhbWUgdGhhdCB3b3VsZAor
IGhhdmUgaGFkIHRvIGNvbnRhaW4gdGhlIHJlZHVuZGFuY3kuCis8eHJlZiB0YXJnZXQ9Im5vbm5v
cm1hdGl2ZV90cmFuc2l0aW9ucyIvPiBpbGx1c3RyYXRlcyB0aGUgcmVjb21tZW5kZWQKKyBjcm9z
cy1sYXBwaW5nIGFuZCBkZWNvZGVyIHJlc2V0cyBmb3IgdGhlc2UgdHJhbnNpdGlvbnMuCis8Zmln
dXJlIGFsaWduPSJjZW50ZXIiIGFuY2hvcj0ibm9ubm9ybWF0aXZlX3RyYW5zaXRpb25zIgorIHRp
dGxlPSJSZWNvbW1lbmRlZCBOb24tTm9ybWF0aXZlIFRyYW5zaXRpb25zIj4KKzxhcnR3b3JrIGFs
aWduPSJjZW50ZXIiPjwhW0NEQVRBWworU0lMSyB0byBTSUxLIChhdWRpbyBiYW5kd2lkdGggY2hh
bmdlKTogICAgUyAtPiBTIC0+IFMgICA7UyAtPiBTIC0+IFMKKworTkIgb3IgTUIgU0lMSyB0byBI
eWJyaWQ6ICAgICAgICAgICAgICAgICAgUyAtPiBTIC0+IFMgICB8SCAtPiBIIC0+IEgKKworU0lM
SyB0byBDRUxUIHdpdGhvdXQgUmVkdW5kYW5jeTogICAgICAgICAgUyAtPiBTIC0+IFMgLT4gUAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
JgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAhQyAtPiBDIC0+IEMKKworSHlicmlkIHRvIE5CIG9yIE1CIFNJTEs6ICAgICAgICAgICAgICAg
ICAgSCAtPiBIIC0+IEggLT4gYworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA7UyAtPiBTIC0+IFMKKworSHlicmlkIHRvIENFTFQgd2l0
aG91dCBSZWR1bmRhbmN5OiAgICAgICAgSCAtPiBIIC0+IEggLT4gUAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhQyAtPiBDIC0+IEMK
KworQ0VMVCB0byBTSUxLIHdpdGhvdXQgUmVkdW5kYW5jeTogICAgICAgICAgQyAtPiBDIC0+IEMg
LT4gUAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgJgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA7UyAtPiBTIC0+IFMKKworQ0VMVCB0byBIeWJyaWQgd2l0aG91dCBSZWR1bmRhbmN5
OiAgICAgICAgQyAtPiBDIC0+IEMgLT4gUAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8SCAtPiBIIC0+IEgKKworS2V5OgorUyAgIFNJ
TEstb25seSBmcmFtZSAgICAgICAgICAgICAgICAgOyAgIFNJTEsgZGVjb2RlciByZXNldAorSCAg
IEh5YnJpZCBmcmFtZSAgICAgICAgICAgICAgICAgICAgfCAgIENFTFQgYW5kIFNJTEsgZGVjb2Rl
ciByZXNldHMKK0MgICBDRUxULW9ubHkgZnJhbWUgICAgICAgICAgICAgICAgICEgICBDRUxUIGRl
Y29kZXIgcmVzZXQKK2MgICBDRUxUIG92ZXJsYXAgICAgICAgICAgICAgICAgICAgICsgICBEaXJl
Y3QgbWl4aW5nCitQICAgUGFja2V0IExvc3MgQ29uY2VhbG1lbnQgICAgICAgICAmICAgV2luZG93
ZWQgY3Jvc3MtbGFwCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0VuY29kZXJzIFNIT1VMRCBO
T1QgdXNlIG90aGVyIHRyYW5zaXRpb25zLCBlLmcuLCB0aG9zZSB0aGF0IGludm9sdmUgcmVkdW5k
YW5jeQorIGluIHdheXMgbm90IGlsbHVzdHJhdGVkIGluIDx4cmVmIHRhcmdldD0ibm9ybWF0aXZl
X3RyYW5zaXRpb25zIi8+LgorPC90PgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPC9z
ZWN0aW9uPgorCisKKzwhLS0gICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKiogLS0+Cis8IS0tICAqKioqKioqKioqKioqKioq
KioqKioqKioqKiAgIE9QVVMgRU5DT0RFUiAgICoqKioqKioqKioqKioqKioqKioqKioqIC0tPgor
PCEtLSAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiAtLT4KKworPHNlY3Rpb24gdGl0bGU9Ik9wdXMgRW5jb2RlciI+Cis8
dD4KK0p1c3QgbGlrZSB0aGUgZGVjb2RlciwgdGhlIE9wdXMgZW5jb2RlciBhbHNvIG5vcm1hbGx5
IGNvbnNpc3RzIG9mIHR3byBtYWluIGJsb2NrczogdGhlCitTSUxLIGVuY29kZXIgYW5kIHRoZSBD
RUxUIGVuY29kZXIuIEhvd2V2ZXIsIHVubGlrZSB0aGUgY2FzZSBvZiB0aGUgZGVjb2RlciwgYSB2
YWxpZAorKHRob3VnaCBwb3RlbnRpYWxseSBzdWJvcHRpbWFsKSBPcHVzIGVuY29kZXIgaXMgbm90
IHJlcXVpcmVkIHRvIHN1cHBvcnQgYWxsIG1vZGVzIGFuZAorbWF5IHRodXMgb25seSBpbmNsdWRl
IGEgU0lMSyBlbmNvZGVyIG1vZHVsZSBvciBhIENFTFQgZW5jb2RlciBtb2R1bGUuCitUaGUgb3V0
cHV0IGJpdC1zdHJlYW0gb2YgdGhlIE9wdXMgZW5jb2RpbmcgY29udGFpbnMgYml0cyBmcm9tIHRo
ZSBTSUxLIGFuZCBDRUxUCisgZW5jb2RlcnMsIHRob3VnaCB0aGVzZSBhcmUgbm90IHNlcGFyYWJs
ZSBkdWUgdG8gdGhlIHVzZSBvZiBhIHJhbmdlIGNvZGVyLgorQSBibG9jayBkaWFncmFtIG9mIHRo
ZSBlbmNvZGVyIGlzIGlsbHVzdHJhdGVkIGJlbG93LgorCis8ZmlndXJlIGFsaWduPSJjZW50ZXIi
IGFuY2hvcj0ib3B1cy1lbmNvZGVyLWZpZ3VyZSIgdGl0bGU9Ik9wdXMgRW5jb2RlciI+Cis8YXJ0
d29yaz4KKzwhW0NEQVRBWworICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tKyAgICAr
LS0tLS0tLS0tKworICAgICAgICAgICAgICAgICAgICB8ICAgU2FtcGxlICAgfCAgICB8ICBTSUxL
ICAgfC0tLS0tLSsKKyAgICAgICAgICAgICAgICAgKy0+fCAgICBSYXRlICAgIHwtLS0+fCBFbmNv
ZGVyIHwgICAgICBWCisgICstLS0tLS0tLS0tLSsgIHwgIHwgQ29udmVyc2lvbiB8ICAgIHwgICAg
ICAgICB8ICstLS0tLS0tLS0rCisgIHwgT3B0aW9uYWwgIHwgIHwgICstLS0tLS0tLS0tLS0rICAg
ICstLS0tLS0tLS0rIHwgIFJhbmdlICB8CistPnwgSGlnaC1wYXNzIHwtLSsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgRW5jb2RlciB8LS0tLT4KKyAgfCAgRmlsdGVyICAgfCAgfCAg
Ky0tLS0tLS0tLS0tLS0tKyAgKy0tLS0tLS0tLSsgfCAgICAgICAgIHwgQml0LQorICArLS0tLS0t
LS0tLS0rICB8ICB8ICAgIERlbGF5ICAgICB8ICB8ICBDRUxUICAgfCArLS0tLS0tLS0tKyBzdHJl
YW0KKyAgICAgICAgICAgICAgICAgKy0+fCBDb21wZW5zYXRpb24gfC0+fCBFbmNvZGVyIHwgICAg
ICBeCisgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgIHwgIHwgICAgICAgICB8LS0t
LS0tKworICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0rICArLS0tLS0tLS0tKwor
XV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKworPHQ+CitGb3IgYSBub3JtYWwgZW5j
b2RlciB3aGVyZSBib3RoIHRoZSBTSUxLIGFuZCB0aGUgQ0VMVCBtb2R1bGVzIGFyZSBpbmNsdWRl
ZCwgYW4gb3B0aW1hbAorZW5jb2RlciBzaG91bGQgc2VsZWN0IHdoaWNoIGNvZGluZyBtb2RlIHRv
IHVzZSBhdCBydW4tdGltZSBkZXBlbmRpbmcgb24gdGhlIGNvbmRpdGlvbnMuCitJbiB0aGUgcmVm
ZXJlbmNlIGltcGxlbWVudGF0aW9uLCB0aGUgZnJhbWUgc2l6ZSBpcyBzZWxlY3RlZCBieSB0aGUg
YXBwbGljYXRpb24sIGJ1dCB0aGUKK290aGVyIGNvbmZpZ3VyYXRpb24gcGFyYW1ldGVycyAobnVt
YmVyIG9mIGNoYW5uZWxzLCBiYW5kd2lkdGgsIG1vZGUpIGFyZSBhdXRvbWF0aWNhbGx5CitzZWxl
Y3RlZCAodW5sZXNzIGV4cGxpY2l0bHkgb3ZlcnJpZGRlbiBieSB0aGUgYXBwbGljYXRpb24pIGRl
cGVuZCBvbiB0aGUgZm9sbG93aW5nOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+UmVxdWVz
dGVkIGJpdHJhdGU8L3Q+Cis8dD5JbnB1dCBzYW1wbGluZyByYXRlPC90PgorPHQ+VHlwZSBvZiBz
aWduYWwgKHNwZWVjaCB2cyBtdXNpYyk8L3Q+Cis8dD5GcmFtZSBzaXplIGluIHVzZTwvdD4KKzwv
bGlzdD4KKworVGhlIHR5cGUgb2Ygc2lnbmFsIGN1cnJlbnRseSBuZWVkcyB0byBiZSBwcm92aWRl
ZCBieSB0aGUgYXBwbGljYXRpb24gKHRob3VnaCBpdCBjYW4gYmUKK2NoYW5nZWQgaW4gcmVhbC10
aW1lKS4gQW4gT3B1cyBlbmNvZGVyIGltcGxlbWVudGF0aW9uIGNvdWxkIGFsc28gZG8gYXV0b21h
dGljIGRldGVjdGlvbiwKK2J1dCBzaW5jZSBPcHVzIGlzIGFuIGludGVyYWN0aXZlIGNvZGVjLCBz
dWNoIGFuIGltcGxlbWVudGF0aW9uIHdvdWxkIGxpa2VseSBoYXZlIHRvIGVpdGhlcgorZGVsYXkg
dGhlIHNpZ25hbCAoZm9yIG5vbi1pbnRlcmFjdGl2ZSBhcHBsaWNhdGlvbnMpIG9yIGRlbGF5IHRo
ZSBtb2RlIHN3aXRjaGluZyBkZWNpc2lvbnMgKGZvcgoraW50ZXJhY3RpdmUgYXBwbGljYXRpb25z
KS4KKzwvdD4KKworPHQ+CitXaGVuIHRoZSBlbmNvZGVyIGlzIGNvbmZpZ3VyZWQgZm9yIHZvaWNl
IG92ZXIgSVAgYXBwbGljYXRpb25zLCB0aGUgaW5wdXQgc2lnbmFsIGlzCitmaWx0ZXJlZCBieSBh
IGhpZ2gtcGFzcyBmaWx0ZXIgdG8gcmVtb3ZlIHRoZSBsb3dlc3QgcGFydCBvZiB0aGUgc3BlY3Ry
dW0KK3RoYXQgY29udGFpbnMgbGl0dGxlIHNwZWVjaCBlbmVyZ3kgYW5kIG1heSBjb250YWluIGJh
Y2tncm91bmQgbm9pc2UuIFRoaXMgaXMgYSBzZWNvbmQgb3JkZXIKK0F1dG8gUmVncmVzc2l2ZSBN
b3ZpbmcgQXZlcmFnZSAoaS5lLiwgd2l0aCBwb2xlcyBhbmQgemVyb3MpIGZpbHRlciB3aXRoIGEg
Y3V0LW9mZiBmcmVxdWVuY3kgYXJvdW5kIDUwJm5ic3A7SHouCitJbiB0aGUgZnV0dXJlLCBhIG11
c2ljIGRldGVjdG9yIG1heSBhbHNvIGJlIHVzZWQgdG8gbG93ZXIgdGhlIGN1dC1vZmYgZnJlcXVl
bmN5IHdoZW4gdGhlCitpbnB1dCBzaWduYWwgaXMgZGV0ZWN0ZWQgdG8gYmUgbXVzaWMgcmF0aGVy
IHRoYW4gc3BlZWNoLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9InJhbmdlLWVuY29kZXIiIHRp
dGxlPSJSYW5nZSBFbmNvZGVyIj4KKzx0PgorVGhlIHJhbmdlIGNvZGVyIGFjdHMgYXMgdGhlIGJp
dC1wYWNrZXIgZm9yIE9wdXMuCitJdCBpcyB1c2VkIGluIHRocmVlIGRpZmZlcmVudCB3YXlzOiB0
byBlbmNvZGUKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PgorRW50cm9weS1jb2RlZCBzeW1i
b2xzIHdpdGggYSBmaXhlZCBwcm9iYWJpbGl0eSBtb2RlbCB1c2luZyBlY19lbmNvZGUoKQorIChl
bnRlbmMuYyksCis8L3Q+Cis8dD4KK0ludGVnZXJzIGZyb20gMCB0byAoMioqTSZuYnNwOy0mbmJz
cDsxKSB1c2luZyBlY19lbmNfdWludCgpIG9yIGVjX2VuY19iaXRzKCkKKyAoZW50ZW5jLmMpLDwv
dD4KKzx0PgorSW50ZWdlcnMgZnJvbSAwIHRvIChmdCZuYnNwOy0mbmJzcDsxKSAod2hlcmUgZnQg
aXMgbm90IGEgcG93ZXIgb2YgdHdvKSB1c2luZworIGVjX2VuY191aW50KCkgKGVudGVuYy5jKS4K
KzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitUaGUgcmFuZ2UgZW5jb2RlciBtYWludGFpbnMg
YW4gaW50ZXJuYWwgc3RhdGUgdmVjdG9yIGNvbXBvc2VkIG9mIHRoZSBmb3VyLXR1cGxlCisgKHZh
bCwmbmJzcDtybmcsJm5ic3A7cmVtLCZuYnNwO2V4dCkgcmVwcmVzZW50aW5nIHRoZSBsb3cgZW5k
IG9mIHRoZSBjdXJyZW50CisgcmFuZ2UsIHRoZSBzaXplIG9mIHRoZSBjdXJyZW50IHJhbmdlLCBh
IHNpbmdsZSBidWZmZXJlZCBvdXRwdXQgYnl0ZSwgYW5kIGEKKyBjb3VudCBvZiBhZGRpdGlvbmFs
IGNhcnJ5LXByb3BhZ2F0aW5nIG91dHB1dCBieXRlcy4KK0JvdGggdmFsIGFuZCBybmcgYXJlIDMy
LWJpdCB1bnNpZ25lZCBpbnRlZ2VyIHZhbHVlcywgcmVtIGlzIGEgYnl0ZSB2YWx1ZSBvcgorIGxl
c3MgdGhhbiAyNTUgb3IgdGhlIHNwZWNpYWwgdmFsdWUgLTEsIGFuZCBleHQgaXMgYW4gdW5zaWdu
ZWQgaW50ZWdlciB3aXRoIGF0CisgbGVhc3QgMTEgYml0cy4KK1RoaXMgc3RhdGUgdmVjdG9yIGlz
IGluaXRpYWxpemVkIGF0IHRoZSBzdGFydCBvZiBlYWNoIGVhY2ggZnJhbWUgdG8gdGhlIHZhbHVl
CisgKDAsJm5ic3A7MioqMzEsJm5ic3A7LTEsJm5ic3A7MCkuCitBZnRlciBlbmNvZGluZyBhIHNl
cXVlbmNlIG9mIHN5bWJvbHMsIHRoZSB2YWx1ZSBvZiBybmcgaW4gdGhlIGVuY29kZXIgc2hvdWxk
CisgZXhhY3RseSBtYXRjaCB0aGUgdmFsdWUgb2Ygcm5nIGluIHRoZSBkZWNvZGVyIGFmdGVyIGRl
Y29kaW5nIHRoZSBzYW1lIHNlcXVlbmNlCisgb2Ygc3ltYm9scy4KK1RoaXMgaXMgYSBwb3dlcmZ1
bCB0b29sIGZvciBkZXRlY3RpbmcgZXJyb3JzIGluIGVpdGhlciBhbiBlbmNvZGVyIG9yIGRlY29k
ZXIKKyBpbXBsZW1lbnRhdGlvbi4KK1RoZSB2YWx1ZSBvZiB2YWwsIG9uIHRoZSBvdGhlciBoYW5k
LCByZXByZXNlbnRzIGRpZmZlcmVudCB0aGluZ3MgaW4gdGhlIGVuY29kZXIKKyBhbmQgZGVjb2Rl
ciwgYW5kIGlzIG5vdCBleHBlY3RlZCB0byBtYXRjaC4KKzwvdD4KKworPHQ+CitUaGUgZGVjb2Rl
ciBoYXMgbm8gYW5hbG9nIGZvciByZW0gYW5kIGV4dC4KK1RoZXNlIGFyZSB1c2VkIHRvIHBlcmZv
cm0gY2FycnkgcHJvcGFnYXRpb24gaW4gdGhlIHJlbm9ybWFsaXphdGlvbiBsb29wIGJlbG93Lgor
RWFjaCBpdGVyYXRpb24gb2YgdGhpcyBsb29wIHByb2R1Y2VzIDkgYml0cyBvZiBvdXRwdXQsIGNv
bnNpc3Rpbmcgb2YgOCBkYXRhCisgYml0cyBhbmQgYSBjYXJyeSBmbGFnLgorVGhlIGVuY29kZXIg
Y2Fubm90IGRldGVybWluZSB0aGUgZmluYWwgdmFsdWUgb2YgdGhlIG91dHB1dCBieXRlcyB1bnRp
bCBpdAorIHByb3BhZ2F0ZXMgdGhlc2UgY2FycnkgZmxhZ3MuCitUaGVyZWZvcmUgdGhlIHJlZmVy
ZW5jZSBpbXBsZW1lbnRhdGlvbiBidWZmZXJzIGEgc2luZ2xlIG5vbi1wcm9wYWdhdGluZyBvdXRw
dXQKKyBieXRlIChpLmUuLCBvbmUgbGVzcyB0aGFuIDI1NSkgaW4gcmVtIGFuZCBrZWVwcyBhIGNv
dW50IG9mIGFkZGl0aW9uYWwKKyBwcm9wYWdhdGluZyAoaS5lLiwgMjU1KSBvdXRwdXQgYnl0ZXMg
aW4gZXh0LgorQW4gaW1wbGVtZW50YXRpb24gbWF5IGNob29zZSB0byB1c2UgYW55IG1hdGhlbWF0
aWNhbGx5IGVxdWl2YWxlbnQgc2NoZW1lIHRvCisgcGVyZm9ybSBjYXJyeSBwcm9wYWdhdGlvbi4K
KzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJlbmNvZGluZy1zeW1ib2xzIiB0aXRsZT0iRW5jb2Rp
bmcgU3ltYm9scyI+Cis8dD4KK1RoZSBtYWluIGVuY29kaW5nIGZ1bmN0aW9uIGlzIGVjX2VuY29k
ZSgpIChlbnRlbmMuYyksIHdoaWNoIGVuY29kZXMgc3ltYm9sIGsgaW4KKyB0aGUgY3VycmVudCBj
b250ZXh0IHVzaW5nIHRoZSBzYW1lIHRocmVlLXR1cGxlIChmbFtrXSwmbmJzcDtmaFtrXSwmbmJz
cDtmdCkKKyBhcyB0aGUgZGVjb2RlciB0byBkZXNjcmliZSB0aGUgcmFuZ2Ugb2YgdGhlIHN5bWJv
bCAoc2VlCisgPHhyZWYgdGFyZ2V0PSJyYW5nZS1kZWNvZGVyIi8+KS4KKzwvdD4KKzx0PgorZWNf
ZW5jb2RlKCkgdXBkYXRlcyB0aGUgc3RhdGUgb2YgdGhlIGVuY29kZXIgYXMgZm9sbG93cy4KK0lm
IGZsW2tdIGlzIGdyZWF0ZXIgdGhhbiB6ZXJvLCB0aGVuCis8ZmlndXJlIGFsaWduPSJjZW50ZXIi
PgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICBy
bmcKK3ZhbCA9IHZhbCArIHJuZyAtIC0tLSAqIChmdCAtIGZsKSAsCisgICAgICAgICAgICAgICAg
ICBmdAorCisgICAgICBybmcKK3JuZyA9IC0tLSAqIChmaCAtIGZsKSAuCisgICAgICBmdAorXV0+
PC9hcnR3b3JrPgorPC9maWd1cmU+CitPdGhlcndpc2UsIHZhbCBpcyB1bmNoYW5nZWQgYW5kCis8
ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFb
CisgICAgICAgICAgICBybmcKK3JuZyA9IHJuZyAtIC0tLSAqIChmaCAtIGZsKSAuCisgICAgICAg
ICAgICBmdAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGUgZGl2aXNpb25zIGhlcmUgYXJl
IGludGVnZXIgZGl2aXNpb24uCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0icmFuZ2UtZW5jb2Rl
ci1yZW5vcm0iIHRpdGxlPSJSZW5vcm1hbGl6YXRpb24iPgorPHQ+CitBZnRlciB0aGlzIHVwZGF0
ZSwgdGhlIHJhbmdlIGlzIG5vcm1hbGl6ZWQgdXNpbmcgYSBwcm9jZWR1cmUgdmVyeSBzaW1pbGFy
IHRvCisgdGhhdCBvZiA8eHJlZiB0YXJnZXQ9InJhbmdlLWRlY29kZXItcmVub3JtIi8+LCBpbXBs
ZW1lbnRlZCBieQorIGVjX2VuY19ub3JtYWxpemUoKSAoZW50ZW5jLmMpLgorVGhlIGZvbGxvd2lu
ZyBwcm9jZXNzIGlzIHJlcGVhdGVkIHVudGlsIHJuZyZuYnNwOyZndDsmbmJzcDsyKioyMy4KK0Zp
cnN0LCB0aGUgdG9wIDkgYml0cyBvZiB2YWwsICh2YWwmZ3Q7Jmd0OzIzKSwgYXJlIHNlbnQgdG8g
dGhlIGNhcnJ5IGJ1ZmZlciwKKyBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJlY19lbmNfY2Fy
cnlfb3V0Ii8+LgorVGhlbiwgdGhlIGVuY29kZXIgc2V0cworPGZpZ3VyZSBhbGlnbj0iY2VudGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwordmFsID0gKHZhbDw8OCkgJiAw
eDdGRkZGRkZGICwKKworcm5nID0gcm5nPDw4IC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgor
PC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImVjX2VuY19jYXJyeV9vdXQiCisg
dGl0bGU9IkNhcnJ5IFByb3BhZ2F0aW9uIGFuZCBPdXRwdXQgQnVmZmVyaW5nIj4KKzx0PgorVGhl
IGZ1bmN0aW9uIGVjX2VuY19jYXJyeV9vdXQoKSAoZW50ZW5jLmMpIGltcGxlbWVudHMgY2Fycnkg
cHJvcGFnYXRpb24gYW5kCisgb3V0cHV0IGJ1ZmZlcmluZy4KK0l0IHRha2VzIGFzIGlucHV0IGEg
OS1iaXQgdmFsdWUsIGMsIGNvbnNpc3Rpbmcgb2YgOCBkYXRhIGJpdHMgYW5kIGFuIGFkZGl0aW9u
YWwKKyBjYXJyeSBiaXQuCitJZiBjIGlzIGVxdWFsIHRvIHRoZSB2YWx1ZSAyNTUsIHRoZW4gZXh0
IGlzIHNpbXBseSBpbmNyZW1lbnRlZCwgYW5kIG5vIG90aGVyCisgc3RhdGUgdXBkYXRlcyBhcmUg
cGVyZm9ybWVkLgorT3RoZXJ3aXNlLCBsZXQgYiZuYnNwOz0mbmJzcDsoYyZndDsmZ3Q7OCkgYmUg
dGhlIGNhcnJ5IGJpdC4KK1RoZW4sCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD4KK0lmIHRo
ZSBidWZmZXJlZCBieXRlIHJlbSBjb250YWlucyBhIHZhbHVlIG90aGVyIHRoYW4gLTEsIHRoZSBl
bmNvZGVyIG91dHB1dHMKKyB0aGUgYnl0ZSAocmVtJm5ic3A7KyZuYnNwO2IpLgorT3RoZXJ3aXNl
LCBpZiByZW0gaXMgLTEsIG5vIGJ5dGUgaXMgb3V0cHV0LgorPC90PgorPHQ+CitJZiBleHQgaXMg
bm9uLXplcm8sIHRoZW4gdGhlIGVuY29kZXIgb3V0cHV0cyBleHQgYnl0ZXMtLS1hbGwgd2l0aCBh
IHZhbHVlIG9mIDAKKyBpZiBiIGlzIHNldCwgb3IgMjU1IGlmIGIgaXMgdW5zZXQtLS1hbmQgc2V0
cyBleHQgdG8gMC4KKzwvdD4KKzx0PgorcmVtIGlzIHNldCB0byB0aGUgOCBkYXRhIGJpdHM6Cis8
ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFb
CityZW0gPSBjICYgMjU1IC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorPC9saXN0
PgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZW5j
b2RpbmctYWx0ZXJuYXRlIiB0aXRsZT0iQWx0ZXJuYXRlIEVuY29kaW5nIE1ldGhvZHMiPgorPHQ+
CitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIHVzZXMgdGhyZWUgYWRkaXRpb25hbCBlbmNv
ZGluZyBtZXRob2RzIHRoYXQgYXJlCisgZXhhY3RseSBlcXVpdmFsZW50IHRvIHRoZSBhYm92ZSwg
YnV0IG1ha2UgYXNzdW1wdGlvbnMgYW5kIHNpbXBsaWZpY2F0aW9ucyB0aGF0CisgYWxsb3cgZm9y
IGEgbW9yZSBlZmZpY2llbnQgaW1wbGVtZW50YXRpb24uCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hv
cj0iZWNfZW5jb2RlX2JpbiIgdGl0bGU9ImVjX2VuY29kZV9iaW4oKSI+Cis8dD4KK1RoZSBmaXJz
dCBpcyBlY19lbmNvZGVfYmluKCkgKGVudGVuYy5jKSwgZGVmaW5lZCB1c2luZyB0aGUgcGFyYW1l
dGVyIGZ0YgorIGluc3RlYWQgb2YgZnQuCitJdCBpcyBtYXRoZW1hdGljYWxseSBlcXVpdmFsZW50
IHRvIGNhbGxpbmcgZWNfZW5jb2RlKCkgd2l0aAorIGZ0Jm5ic3A7PSZuYnNwOygxJmx0OyZsdDtm
dGIpLCBidXQgYXZvaWRzIHVzaW5nIGRpdmlzaW9uLgorPC90PgorPC9zZWN0aW9uPgorCis8c2Vj
dGlvbiBhbmNob3I9ImVjX2VuY19iaXRfbG9ncCIgdGl0bGU9ImVjX2VuY19iaXRfbG9ncCgpIj4K
Kzx0PgorVGhlIG5leHQgaXMgZWNfZW5jX2JpdF9sb2dwKCkgKGVudGVuYy5jKSwgd2hpY2ggZW5j
b2RlcyBhIHNpbmdsZSBiaW5hcnkgc3ltYm9sLgorVGhlIGNvbnRleHQgaXMgZGVzY3JpYmVkIGJ5
IGEgc2luZ2xlIHBhcmFtZXRlciwgbG9ncCwgd2hpY2ggaXMgdGhlIGFic29sdXRlCisgdmFsdWUg
b2YgdGhlIGJhc2UtMiBsb2dhcml0aG0gb2YgdGhlIHByb2JhYmlsaXR5IG9mIGEgIjEiLgorSXQg
aXMgbWF0aGVtYXRpY2FsbHkgZXF1aXZhbGVudCB0byBjYWxsaW5nIGVjX2VuY29kZSgpIHdpdGgg
dGhlIDMtdHVwbGUKKyAoZmxba10mbmJzcDs9Jm5ic3A7MCwgZmhba10mbmJzcDs9Jm5ic3A7KDEm
bHQ7Jmx0O2xvZ3ApJm5ic3A7LSZuYnNwOzEsCisgZnQmbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2xv
Z3ApKSBpZiBrIGlzIDAgYW5kIHdpdGgKKyAoZmxba10mbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2xv
Z3ApJm5ic3A7LSZuYnNwOzEsCisgZmhba10mbmJzcDs9Jm5ic3A7ZnQmbmJzcDs9Jm5ic3A7KDEm
bHQ7Jmx0O2xvZ3ApKSBpZiBrIGlzIDEuCitUaGUgaW1wbGVtZW50YXRpb24gcmVxdWlyZXMgbm8g
bXVsdGlwbGljYXRpb25zIG9yIGRpdmlzaW9ucy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rp
b24gYW5jaG9yPSJlY19lbmNfaWNkZiIgdGl0bGU9ImVjX2VuY19pY2RmKCkiPgorPHQ+CitUaGUg
bGFzdCBpcyBlY19lbmNfaWNkZigpIChlbnRlbmMuYyksIHdoaWNoIGVuY29kZXMgYSBzaW5nbGUg
YmluYXJ5IHN5bWJvbCB3aXRoCisgYSB0YWJsZS1iYXNlZCBjb250ZXh0IG9mIHVwIHRvIDggYml0
cy4KK1RoaXMgdXNlcyB0aGUgc2FtZSBpY2RmIHRhYmxlIGFzIGVjX2RlY19pY2RmKCkgZnJvbQor
IDx4cmVmIHRhcmdldD0iZWNfZGVjX2ljZGYiLz4uCitUaGUgZnVuY3Rpb24gaXMgbWF0aGVtYXRp
Y2FsbHkgZXF1aXZhbGVudCB0byBjYWxsaW5nIGVjX2VuY29kZSgpIHdpdGgKKyBmbFtrXSZuYnNw
Oz0mbmJzcDsoMSZsdDsmbHQ7ZnRiKSZuYnNwOy0mbmJzcDtpY2RmW2stMV0gKG9yIDAgaWYKKyBr
Jm5ic3A7PT0mbmJzcDswKSwgZmhba10mbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2Z0YikmbmJzcDst
Jm5ic3A7aWNkZltrXSwgYW5kCisgZnQmbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2Z0YikuCitUaGlz
IG9ubHkgc2F2ZXMgYSBmZXcgYXJpdGhtZXRpYyBvcGVyYXRpb25zIG92ZXIgZWNfZW5jb2RlX2Jp
bigpLCBidXQgYWxsb3dzCisgdGhlIGVuY29kZXIgdG8gdXNlIHRoZSBzYW1lIGljZGYgdGFibGVz
IGFzIHRoZSBkZWNvZGVyLgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0
aW9uIGFuY2hvcj0iZW5jb2RpbmctYml0cyIgdGl0bGU9IkVuY29kaW5nIFJhdyBCaXRzIj4KKzx0
PgorVGhlIHJhdyBiaXRzIHVzZWQgYnkgdGhlIENFTFQgbGF5ZXIgYXJlIHBhY2tlZCBhdCB0aGUg
ZW5kIG9mIHRoZSBidWZmZXIgdXNpbmcKKyBlY19lbmNfYml0cygpIChlbnRlbmMuYykuCitCZWNh
dXNlIHRoZSByYXcgYml0cyBtYXkgY29udGludWUgaW50byB0aGUgbGFzdCBieXRlIG91dHB1dCBi
eSB0aGUgcmFuZ2UgY29kZXIKKyBpZiB0aGVyZSBpcyByb29tIGluIHRoZSBsb3ctb3JkZXIgYml0
cywgdGhlIGVuY29kZXIgbXVzdCBiZSBwcmVwYXJlZCB0byBtZXJnZQorIHRoZXNlIHZhbHVlcyBp
bnRvIGEgc2luZ2xlIGJ5dGUuCitUaGUgcHJvY2VkdXJlIGluIDx4cmVmIHRhcmdldD0iZW5jb2Rl
ci1maW5hbGl6aW5nIi8+IGRvZXMgdGhpcyBpbiBhIHdheSB0aGF0CisgZW5zdXJlcyBib3RoIHRo
ZSByYW5nZSBjb2RlZCBkYXRhIGFuZCB0aGUgcmF3IGJpdHMgY2FuIGJlIGRlY29kZWQKKyBzdWNj
ZXNzZnVsbHkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZW5jb2Rpbmct
aW50cyIgdGl0bGU9IkVuY29kaW5nIFVuaWZvcm1seSBEaXN0cmlidXRlZCBJbnRlZ2VycyI+Cis8
dD4KK1RoZSBmdW5jdGlvbiBlY19lbmNfdWludCgpIChlbnRlbmMuYykgZW5jb2RlcyBvbmUgb2Yg
ZnQgZXF1aXByb2JhYmxlIHN5bWJvbHMgaW4KKyB0aGUgcmFuZ2UgMCB0byAoZnQmbmJzcDstJm5i
c3A7MSksIGluY2x1c2l2ZSwgZWFjaCB3aXRoIGEgZnJlcXVlbmN5IG9mIDEsCisgd2hlcmUgZnQg
bWF5IGJlIGFzIGxhcmdlIGFzICgyKiozMiZuYnNwOy0mbmJzcDsxKS4KK0xpa2UgdGhlIGRlY29k
ZXIgKHNlZSA8eHJlZiB0YXJnZXQ9ImVjX2RlY191aW50Ii8+KSwgaXQgc3BsaXRzIHVwIHRoZQor
IHZhbHVlIGludG8gYSByYW5nZSBjb2RlZCBzeW1ib2wgcmVwcmVzZW50aW5nIHVwIHRvIDggb2Yg
dGhlIGhpZ2ggYml0cywgYW5kLCBpZgorIG5lY2Vzc2FyeSwgcmF3IGJpdHMgcmVwcmVzZW50aW5n
IHRoZSByZW1haW5kZXIgb2YgdGhlIHZhbHVlLgorPC90PgorPHQ+CitlY19lbmNfdWludCgpIHRh
a2VzIGEgdHdvLXR1cGxlICh0LCZuYnNwO2Z0KSwgd2hlcmUgdCBpcyB0aGUgdmFsdWUgdG8gYmUK
KyBlbmNvZGVkLCAwJm5ic3A7Jmx0Oz0mbmJzcDt0Jm5ic3A7Jmx0OyZuYnNwO2Z0LCBhbmQgZnQg
aXMgbm90IG5lY2Vzc2FyaWx5IGEKKyBwb3dlciBvZiB0d28uCitMZXQgZnRiJm5ic3A7PSZuYnNw
O2lsb2coZnQmbmJzcDstJm5ic3A7MSksIGkuZS4sIHRoZSBudW1iZXIgb2YgYml0cyByZXF1aXJl
ZAorIHRvIHN0b3JlIChmdCZuYnNwOy0mbmJzcDsxKSBpbiB0d28ncyBjb21wbGVtZW50IG5vdGF0
aW9uLgorSWYgZnRiIGlzIDggb3IgbGVzcywgdGhlbiB0IGlzIGVuY29kZWQgZGlyZWN0bHkgdXNp
bmcgZWNfZW5jb2RlKCkgd2l0aCB0aGUKKyB0aHJlZS10dXBsZSAodCwgdCZuYnNwOysmbmJzcDsx
LCBmdCkuCis8L3Q+Cis8dD4KK0lmIGZ0YiBpcyBncmVhdGVyIHRoYW4gOCwgdGhlbiB0aGUgdG9w
IDggYml0cyBvZiB0IGFyZSBlbmNvZGVkIHVzaW5nIHRoZQorIHRocmVlLXR1cGxlICh0Jmd0OyZn
dDsoZnRiJm5ic3A7LSZuYnNwOzgpLAorICh0Jmd0OyZndDsoZnRiJm5ic3A7LSZuYnNwOzgpKSZu
YnNwOysmbmJzcDsxLAorICgoZnQmbmJzcDstJm5ic3A7MSkmZ3Q7Jmd0OyhmdGImbmJzcDstJm5i
c3A7OCkpJm5ic3A7KyZuYnNwOzEpLCBhbmQgdGhlCisgcmVtYWluaW5nIGJpdHMsCisgKHQmbmJz
cDsmYW1wOyZuYnNwOygoMSZsdDsmbHQ7KGZ0YiZuYnNwOy0mbmJzcDs4KSkmbmJzcDstJm5ic3A7
MSksCisgYXJlIGVuY29kZWQgYXMgcmF3IGJpdHMgd2l0aCBlY19lbmNfYml0cygpLgorPC90Pgor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImVuY29kZXItZmluYWxpemluZyIgdGl0bGU9
IkZpbmFsaXppbmcgdGhlIFN0cmVhbSI+Cis8dD4KK0FmdGVyIGFsbCBzeW1ib2xzIGFyZSBlbmNv
ZGVkLCB0aGUgc3RyZWFtIG11c3QgYmUgZmluYWxpemVkIGJ5IG91dHB1dHRpbmcgYQorIHZhbHVl
IGluc2lkZSB0aGUgY3VycmVudCByYW5nZS4KK0xldCBlbmQgYmUgdGhlIGludGVnZXIgaW4gdGhl
IGludGVydmFsIFt2YWwsJm5ic3A7dmFsJm5ic3A7KyZuYnNwO3JuZykgd2l0aCB0aGUKKyBsYXJn
ZXN0IG51bWJlciBvZiB0cmFpbGluZyB6ZXJvIGJpdHMsIGIsIHN1Y2ggdGhhdAorIChlbmQmbmJz
cDsrJm5ic3A7KDEmbHQ7Jmx0O2IpJm5ic3A7LSZuYnNwOzEpIGlzIGFsc28gaW4gdGhlIGludGVy
dmFsCisgW3ZhbCwmbmJzcDt2YWwmbmJzcDsrJm5ic3A7cm5nKS4KK1RoaXMgY2hvaWNlIG9mIGVu
ZCBhbGxvd3MgdGhlIG1heGltdW0gbnVtYmVyIG9mIHRyYWlsaW5nIGJpdHMgdG8gYmUgc2V0IHRv
CisgYXJiaXRyYXJ5IHZhbHVlcyB3aGlsZSBzdGlsbCBlbnN1cmluZyB0aGUgcmFuZ2UgY29kZWQg
cGFydCBvZiB0aGUgYnVmZmVyIGNhbgorIGJlIGRlY29kZWQgY29ycmVjdGx5LgorVGhlbiwgd2hp
bGUgZW5kIGlzIG5vdCB6ZXJvLCB0aGUgdG9wIDkgYml0cyBvZiBlbmQsIGkuZS4sIChlbmQmZ3Q7
Jmd0OzIzKSwgYXJlCisgcGFzc2VkIHRvIHRoZSBjYXJyeSBidWZmZXIgaW4gYWNjb3JkYW5jZSB3
aXRoIHRoZSBwcm9jZWR1cmUgaW4KKyA8eHJlZiB0YXJnZXQ9ImVjX2VuY19jYXJyeV9vdXQiLz4s
IGFuZCBlbmQgaXMgdXBkYXRlZCB2aWEKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29y
ayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2VuZCA9IChlbmQ8PDgpICYgMHg3RkZGRkZGRiAu
CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0ZpbmFsbHksIGlmIHRoZSBidWZmZXJlZCBvdXRw
dXQgYnl0ZSwgcmVtLCBpcyBuZWl0aGVyIHplcm8gbm9yIHRoZSBzcGVjaWFsCisgdmFsdWUgLTEs
IG9yIHRoZSBjYXJyeSBjb3VudCwgZXh0LCBpcyBncmVhdGVyIHRoYW4gemVybywgdGhlbiA5IHpl
cm8gYml0cyBhcmUKKyBzZW50IHRvIHRoZSBjYXJyeSBidWZmZXIgdG8gZmx1c2ggaXQgdG8gdGhl
IG91dHB1dCBidWZmZXIuCitXaGVuIG91dHB1dHRpbmcgdGhlIGZpbmFsIGJ5dGUgZnJvbSB0aGUg
cmFuZ2UgY29kZXIsIGlmIGl0IHdvdWxkIG92ZXJsYXAgYW55CisgcmF3IGJpdHMgYWxyZWFkeSBw
YWNrZWQgaW50byB0aGUgZW5kIG9mIHRoZSBvdXRwdXQgYnVmZmVyLCB0aGV5IHNob3VsZCBiZSBP
UmVkCisgaW50byB0aGUgc2FtZSBieXRlLgorVGhlIGJpdCBhbGxvY2F0aW9uIHJvdXRpbmVzIGlu
IHRoZSBDRUxUIGxheWVyIHNob3VsZCBlbnN1cmUgdGhhdCB0aGlzIGNhbiBiZQorIGRvbmUgd2l0
aG91dCBjb3JydXB0aW5nIHRoZSByYW5nZSBjb2RlciBkYXRhIHNvIGxvbmcgYXMgZW5kIGlzIGNo
b3NlbiBhcworIGRlc2NyaWJlZCBhYm92ZS4KK0lmIHRoZXJlIGlzIGFueSBzcGFjZSBiZXR3ZWVu
IHRoZSBlbmQgb2YgdGhlIHJhbmdlIGNvZGVyIGRhdGEgYW5kIHRoZSBlbmQgb2YKKyB0aGUgcmF3
IGJpdHMsIGl0IGlzIHBhZGRlZCB3aXRoIHplcm8gYml0cy4KK1RoaXMgZW50aXJlIHByb2Nlc3Mg
aXMgaW1wbGVtZW50ZWQgYnkgZWNfZW5jX2RvbmUoKSAoZW50ZW5jLmMpLgorPC90PgorPC9zZWN0
aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImVuY29kZXItdGVsbCIgdGl0bGU9IkN1cnJlbnQgQml0
IFVzYWdlIj4KKzx0PgorICAgVGhlIGJpdCBhbGxvY2F0aW9uIHJvdXRpbmVzIGluIE9wdXMgbmVl
ZCB0byBiZSBhYmxlIHRvIGRldGVybWluZSBhCisgICBjb25zZXJ2YXRpdmUgdXBwZXIgYm91bmQg
b24gdGhlIG51bWJlciBvZiBiaXRzIHRoYXQgaGF2ZSBiZWVuIHVzZWQKKyAgIHRvIGVuY29kZSB0
aGUgY3VycmVudCBmcmFtZSB0aHVzIGZhci4gVGhpcyBkcml2ZXMgYWxsb2NhdGlvbgorICAgZGVj
aXNpb25zIGFuZCBlbnN1cmVzIHRoYXQgdGhlIHJhbmdlIGNvZGVyIGFuZCByYXcgYml0cyB3aWxs
IG5vdAorICAgb3ZlcmZsb3cgdGhlIG91dHB1dCBidWZmZXIuIFRoaXMgaXMgY29tcHV0ZWQgaW4g
dGhlCisgICByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gdG8gd2hvbGUtYml0IHByZWNpc2lvbiBi
eQorICAgdGhlIGZ1bmN0aW9uIGVjX3RlbGwoKSAoZW50Y29kZS5oKSBhbmQgdG8gZnJhY3Rpb25h
bCAxLzh0aCBiaXQKKyAgIHByZWNpc2lvbiBieSB0aGUgZnVuY3Rpb24gZWNfdGVsbF9mcmFjKCkg
KGVudGNvZGUuYykuCisgICBMaWtlIGFsbCBvcGVyYXRpb25zIGluIHRoZSByYW5nZSBjb2Rlciwg
aXQgbXVzdCBiZSBpbXBsZW1lbnRlZCBpbiBhCisgICBiaXQtZXhhY3QgbWFubmVyLCBhbmQgbXVz
dCBwcm9kdWNlIGV4YWN0bHkgdGhlIHNhbWUgdmFsdWUgcmV0dXJuZWQgYnkKKyAgIHRoZSBzYW1l
IGZ1bmN0aW9ucyBpbiB0aGUgZGVjb2RlciBhZnRlciBkZWNvZGluZyB0aGUgc2FtZSBzeW1ib2xz
LgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSdTSUxL
IEVuY29kZXInPgorICA8dD4KKyAgICBJbiBtYW55IHJlc3BlY3RzIHRoZSBTSUxLIGVuY29kZXIg
bWlycm9ycyB0aGUgU0lMSyBkZWNvZGVyIGRlc2NyaWJlZAorICAgIGluIDx4cmVmIHRhcmdldD0n
c2lsa19kZWNvZGVyX291dGxpbmUnLz4uCisgICAgRGV0YWlscyBzdWNoIGFzIHRoZSBxdWFudGl6
YXRpb24gYW5kIHJhbmdlIGNvZGVyIHRhYmxlcyBjYW4gYmUgZm91bmQKKyAgICB0aGVyZSwgd2hp
bGUgdGhpcyBzZWN0aW9uIGRlc2NyaWJlcyB0aGUgaGlnaC1sZXZlbCBkZXNpZ24gY2hvaWNlcyB0
aGF0CisgICAgd2VyZSBtYWRlLgorICAgIFRoZSBkaWFncmFtIGJlbG93IHNob3dzIHRoZSBiYXNp
YyBtb2R1bGVzIG9mIHRoZSBTSUxLIGVuY29kZXIuCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiIGFu
Y2hvcj0ic2lsa19lbmNvZGVyX2ZpZ3VyZSIgdGl0bGU9IlNJTEsgRW5jb2RlciI+Cis8YXJ0d29y
az4KKzwhW0NEQVRBWworICAgICAgICstLS0tLS0tLS0tKyAgICArLS0tLS0tLS0rICAgICstLS0t
LS0tLS0rCisgICAgICAgfCAgU2FtcGxlICB8ICAgIHwgU3RlcmVvIHwgICAgfCAgU0lMSyAgIHwK
Ky0tLS0tLT58ICAgUmF0ZSAgIHwtLS0+fCBNaXhpbmcgfC0tLT58ICBDb3JlICAgfC0tLS0tLS0t
LS0+CitJbnB1dCAgfENvbnZlcnNpb258ICAgIHwgICAgICAgIHwgICAgfCBFbmNvZGVyIHwgIEJp
dHN0cmVhbQorICAgICAgICstLS0tLS0tLS0tKyAgICArLS0tLS0tLS0rICAgICstLS0tLS0tLS0r
CitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorCis8c2VjdGlvbiB0aXRsZT0nU2Ft
cGxlIFJhdGUgQ29udmVyc2lvbic+Cis8dD4KK1RoZSBpbnB1dCBzaWduYWwncyBzYW1wbGluZyBy
YXRlIGlzIGFkanVzdGVkIGJ5IGEgc2FtcGxlIHJhdGUgY29udmVyc2lvbgorbW9kdWxlIHNvIHRo
YXQgaXQgbWF0Y2hlcyB0aGUgU0lMSyBpbnRlcm5hbCBzYW1wbGluZyByYXRlLgorVGhlIGlucHV0
IHRvIHRoZSBzYW1wbGUgcmF0ZSBjb252ZXJ0ZXIgaXMgZGVsYXllZCBieSBhIG51bWJlciBvZiBz
YW1wbGVzCitkZXBlbmRpbmcgb24gdGhlIHNhbXBsZSByYXRlIHJhdGlvLCBzdWNoIHRoYXQgdGhl
IG92ZXJhbGwgZGVsYXkgaXMgY29uc3RhbnQKK2ZvciBhbGwgaW5wdXQgYW5kIG91dHB1dCBzYW1w
bGUgcmF0ZXMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSdTdGVyZW8gTWl4
aW5nJz4KKzx0PgorVGhlIHN0ZXJlbyBtaXhlciBpcyBvbmx5IHVzZWQgZm9yIHN0ZXJlbyBpbnB1
dCBzaWduYWxzLgorSXQgY29udmVydHMgYSBzdGVyZW8gbGVmdC9yaWdodCBzaWduYWwgaW50byBh
biBhZGFwdGl2ZQorbWlkL3NpZGUgcmVwcmVzZW50YXRpb24uCitUaGUgZmlyc3Qgc3RlcCBpcyB0
byBjb21wdXRlIG5vbi1hZGFwdGl2ZSBtaWQvc2lkZSBzaWduYWxzCithcyBoYWxmIHRoZSBzdW0g
YW5kIGRpZmZlcmVuY2UgYmV0d2VlbiBsZWZ0IGFuZCByaWdodCBzaWduYWxzLgorVGhlIHNpZGUg
c2lnbmFsIGlzIHRoZW4gbWluaW1pemVkIGluIGVuZXJneSBieSBzdWJ0cmFjdGluZyBhCitwcmVk
aWN0aW9uIG9mIGl0IGJhc2VkIG9uIHRoZSBtaWQgc2lnbmFsLgorVGhpcyBwcmVkaWN0aW9uIHdv
cmtzIHdlbGwgd2hlbiB0aGUgbGVmdCBhbmQgcmlnaHQgc2lnbmFscworZXhoaWJpdCBsaW5lYXIg
ZGVwZW5kZW5jeSwgZm9yIGluc3RhbmNlIGZvciBhbiBhbXBsaXR1ZGUtcGFubmVkCitpbnB1dCBz
aWduYWwuCitMaWtlIGluIHRoZSBkZWNvZGVyLCB0aGUgcHJlZGljdGlvbiBjb2VmZmljaWVudHMg
YXJlIGxpbmVhcmx5CitpbnRlcnBvbGF0ZWQgZHVyaW5nIHRoZSBmaXJzdCA4Jm5ic3A7bXMgb2Yg
dGhlIGZyYW1lLgorICBUaGUgbWlkIHNpZ25hbCBpcyBhbHdheXMgZW5jb2RlZCwgd2hlcmVhcyB0
aGUgcmVzaWR1YWwKKyAgc2lkZSBzaWduYWwgaXMgb25seSBlbmNvZGVkIGlmIGl0IGhhcyBzdWZm
aWNpZW50CisgIGVuZXJneSBjb21wYXJlZCB0byB0aGUgbWlkIHNpZ25hbCdzIGVuZXJneS4KKyAg
SWYgaXQgaGFzIG5vdCwKKyAgdGhlICJtaWRfb25seV9mbGFnIiBpcyBzZXQgd2l0aG91dCBlbmNv
ZGluZyB0aGUgc2lkZSBzaWduYWwuCis8L3Q+Cis8dD4KK1RoZSBwcmVkaWN0b3IgY29lZmZpY2ll
bnRzIGFyZSBjb2RlZCByZWdhcmRsZXNzIG9mIHdoZXRoZXIKK3RoZSBzaWRlIHNpZ25hbCBpcyBl
bmNvZGVkLgorRm9yIGVhY2ggZnJhbWUsIHR3byBwcmVkaWN0b3IgY29lZmZpY2llbnRzIGFyZSBj
b21wdXRlZCwgb25lCit0aGF0IHByZWRpY3RzIGJldHdlZW4gbG93LXBhc3NlZCBtaWQgYW5kIHNp
ZGUgY2hhbm5lbHMsIGFuZAorb25lIHRoYXQgcHJlZGljdHMgYmV0d2VlbiBoaWdoLXBhc3NlZCBt
aWQgYW5kIHNpZGUgY2hhbm5lbHMuCitUaGUgbG93LXBhc3MgZmlsdGVyIGlzIGEgc2ltcGxlIHRo
cmVlLXRhcCBmaWx0ZXIKK2FuZCBjcmVhdGVzIGEgZGVsYXkgb2Ygb25lIHNhbXBsZS4KK1RoZSBo
aWdoLXBhc3MgZmlsdGVyZWQgc2lnbmFsIGlzIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4KK3RoZSBt
aWQgc2lnbmFsIGRlbGF5ZWQgYnkgb25lIHNhbXBsZSBhbmQgdGhlIGxvdy1wYXNzZWQKK3NpZ25h
bC4gIEluc3RlYWQgb2YgZXhwbGljaXRseSBjb21wdXRpbmcgdGhlIGhpZ2gtcGFzc2VkCitzaWdu
YWwsIGl0IGlzIGNvbXB1dGF0aW9uYWxseSBtb3JlIGVmZmljaWVudCB0byB0cmFuc2Zvcm0KK3Ro
ZSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cyBiZWZvcmUgYXBwbHlpbmcgdGhlbSB0byB0aGUKK2Zp
bHRlcmVkIG1pZCBzaWduYWwsIGFzIGZvbGxvd3MKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8
YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworcHJlZChuKSA9IExQKG4pICogdzAg
KyBIUChuKSAqIHcxCisgICAgICAgID0gTFAobikgKiB3MCArIChtaWQobi0xKSAtIExQKG4pKSAq
IHcxCisgICAgICAgID0gTFAobikgKiAodzAgLSB3MSkgKyBtaWQobi0xKSAqIHcxCitdXT4KKzwv
YXJ0d29yaz4KKzwvZmlndXJlPgord2hlcmUgdzAgYW5kIHcxIGFyZSB0aGUgbG93LXBhc3MgYW5k
IGhpZ2gtcGFzcyBwcmVkaWN0aW9uCitjb2VmZmljaWVudHMsIG1pZChuLTEpIGlzIHRoZSBtaWQg
c2lnbmFsIGRlbGF5ZWQgYnkgb25lIHNhbXBsZSwKK0xQKG4pIGFuZCBIUChuKSBhcmUgdGhlIGxv
dy1wYXNzZWQgYW5kIGhpZ2gtcGFzc2VkCitzaWduYWxzIGFuZCBwcmVkKG4pIGlzIHRoZSBwcmVk
aWN0aW9uIHNpZ25hbCB0aGF0IGlzIHN1YnRyYWN0ZWQKK2Zyb20gdGhlIHNpZGUgc2lnbmFsLgor
PC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0nU0lMSyBDb3JlIEVuY29kZXInPgor
PHQ+CitXaGF0IGZvbGxvd3MgaXMgYSBkZXNjcmlwdGlvbiBvZiB0aGUgY29yZSBlbmNvZGVyIGFu
ZCBpdHMgY29tcG9uZW50cy4KK0ZvciBzaW1wbGljaXR5LCB0aGUgY29yZSBlbmNvZGVyIGlzIHJl
ZmVycmVkIHRvIHNpbXBseSBhcyB0aGUgZW5jb2RlciBpbgordGhlIHJlbWFpbmRlciBvZiB0aGlz
IHNlY3Rpb24uIEFuIG92ZXJ2aWV3IG9mIHRoZSBlbmNvZGVyIGlzIGdpdmVuIGluCis8eHJlZiB0
YXJnZXQ9ImVuY29kZXJfZmlndXJlIiAvPi4KKzwvdD4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciIg
YW5jaG9yPSJlbmNvZGVyX2ZpZ3VyZSIgdGl0bGU9IlNJTEsgQ29yZSBFbmNvZGVyIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLSsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT58ICAgfAorICAg
ICArLS0tLS0tLS0tKyAgICAgICAgICB8ICAgICAgKy0tLS0tLS0tLSsgICAgICAgICAgICAgICAg
IHwgICB8CisgICAgIHxWb2ljZSAgICB8ICAgICAgICAgIHwgICAgICB8TFRQICAgICAgfDEyICAg
ICAgICAgICAgICAgfCAgIHwKKyArLS0+fEFjdGl2aXR5IHwtLSsgICAgICAgKy0tLS0tPnxTY2Fs
aW5nICB8LS0tLS0tLS0tLS0rLS0tLT58ICAgfAorIHwgICB8RGV0ZWN0b3IgfDMgfCAgICAgICB8
ICAgICAgfENvbnRyb2wgIHw8LS0rICAgICAgIHwgICAgIHwgICB8CisgfCAgICstLS0tLS0tLS0r
ICB8ICAgICAgIHwgICAgICArLS0tLS0tLS0tKyAgIHwgICAgICAgfCAgICAgfCAgIHwKKyB8ICAg
ICAgICAgICAgICAgIHwgICAgICAgfCAgICAgICstLS0tLS0tLS0rICAgfCAgICAgICB8ICAgICB8
ICAgfAorIHwgICAgICAgICAgICAgICAgfCAgICAgICB8ICAgICAgfEdhaW5zICAgIHwgICB8ICAg
ICAgIHwgICAgIHwgICB8CisgfCAgICAgICAgICAgICAgICB8ICAgICAgIHwgICstLT58UHJvY2Vz
c29yfC0tLXwtLS0rLS0tfC0tLS0+fCBSIHwKKyB8ICAgICAgICAgICAgICAgIHwgICAgICAgfCAg
fCAgIHwgICAgICAgICB8MTEgfCAgIHwgICB8ICAgICB8IGEgfAorIHwgICAgICAgICAgICAgICBc
LyAgICAgICB8ICB8ICAgKy0tLS0tLS0tLSsgICB8ICAgfCAgIHwgICAgIHwgbiB8CisgfCAgICAg
ICAgICArLS0tLS0tLS0tKyAgIHwgIHwgICArLS0tLS0tLS0tKyAgIHwgICB8ICAgfCAgICAgfCBn
IHwKKyB8ICAgICAgICAgIHxQaXRjaCAgICB8ICAgfCAgfCAgIHxMU0YgICAgICB8ICAgfCAgIHwg
ICB8ICAgICB8IGUgfAorIHwgICAgICAgKy0+fEFuYWx5c2lzIHwtLS0rICB8ICAgfFF1YW50aXpl
cnwtLS18LS0tfC0tLXwtLS0tPnwgICB8CisgfCAgICAgICB8ICB8ICAgICAgICAgfDQgIHwgIHwg
ICB8ICAgICAgICAgfDggIHwgICB8ICAgfCAgICAgfCBFIHwtLT4KKyB8ICAgICAgIHwgICstLS0t
LS0tLS0rICAgfCAgfCAgICstLS0tLS0tLS0rICAgfCAgIHwgICB8ICAgICB8IG4gfCAyCisgfCAg
ICAgICB8ICAgICAgICAgICAgICAgIHwgIHwgICAgOS9cICAxMHwgICAgIHwgICB8ICAgfCAgICAg
fCBjIHwKKyB8ICAgICAgIHwgICAgICAgICAgICAgICAgfCAgfCAgICAgfCAgICBcLyAgICAgfCAg
IHwgICB8ICAgICB8IG8gfAorIHwgICAgICAgfCAgKy0tLS0tLS0tLSsgICB8ICB8ICAgKy0tLS0t
LS0tLS0rICB8ICAgfCAgIHwgICAgIHwgZCB8CisgfCAgICAgICB8ICB8Tm9pc2UgICAgfCAgICst
LXwtLT58UHJlZGljdGlvbnwtLSstLS18LS0tfC0tLS0+fCBlIHwKKyB8ICAgICAgICstPnxTaGFw
aW5nICB8LS0tfC0tKyAgIHxBbmFseXNpcyAgfDcgfCAgIHwgICB8ICAgICB8IHIgfAorIHwgICAg
ICAgfCAgfEFuYWx5c2lzIHw1ICB8ICB8ICAgfCAgICAgICAgICB8ICB8ICAgfCAgIHwgICAgIHwg
ICB8CisgfCAgICAgICB8ICArLS0tLS0tLS0tKyAgIHwgIHwgICArLS0tLS0tLS0tLSsgIHwgICB8
ICAgfCAgICAgfCAgIHwKKyB8ICAgICAgIHwgICAgICAgICAgICAgICAgfCAgfCAgICAgICAgL1wg
ICAgICAgfCAgIHwgICB8ICAgICB8ICAgfAorIHwgICAgICAgfCAgICAgKy0tLS0tLS0tLS18LS18
LS0tLS0tLS0rICAgICAgICB8ICAgfCAgIHwgICAgIHwgICB8CisgfCAgICAgICB8ICAgICB8ICAg
ICAgICAgXC8gIFwvICAgICAgICAgICAgICAgXC8gIFwvICBcLyAgICAgfCAgIHwKKyB8ICAgICAg
IHwgICAgIHwgICAgICAgKy0tLS0tLS0tLSsgICAgICAgICAgKy0tLS0tLS0tLS0tLSsgICB8ICAg
fAorIHwgICAgICAgfCAgICAgfCAgICAgICB8ICAgICAgICAgfCAgICAgICAgICB8Tm9pc2UgICAg
ICAgfCAgIHwgICB8CistKy0tLS0tLS0rLS0tLS0rLS0tLS0tPnxQcmVmaWx0ZXJ8LS0tLS0tLS0t
PnxTaGFwaW5nICAgICB8LS0+fCAgIHwKKzEgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAg
IHwgNiAgICAgICAgfFF1YW50aXphdGlvbnwxMyB8ICAgfAorICAgICAgICAgICAgICAgICAgICAg
ICArLS0tLS0tLS0tKyAgICAgICAgICArLS0tLS0tLS0tLS0tKyAgICstLS0rCisKKzE6ICBJbnB1
dCBzcGVlY2ggc2lnbmFsCisyOiAgUmFuZ2UgZW5jb2RlZCBiaXRzdHJlYW0KKzM6ICBWb2ljZSBh
Y3Rpdml0eSBlc3RpbWF0ZQorNDogIFBpdGNoIGxhZ3MgKHBlciA1IG1zKSBhbmQgdm9pY2luZyBk
ZWNpc2lvbiAocGVyIDIwIG1zKQorNTogIE5vaXNlIHNoYXBpbmcgcXVhbnRpemF0aW9uIGNvZWZm
aWNpZW50cworICAtIFNob3J0IHRlcm0gc3ludGhlc2lzIGFuZCBhbmFseXNpcworICAgIG5vaXNl
IHNoYXBpbmcgY29lZmZpY2llbnRzIChwZXIgNSBtcykKKyAgLSBMb25nIHRlcm0gc3ludGhlc2lz
IGFuZCBhbmFseXNpcyBub2lzZQorICAgIHNoYXBpbmcgY29lZmZpY2llbnRzIChwZXIgNSBtcyBh
bmQgZm9yIHZvaWNlZCBzcGVlY2ggb25seSkKKyAgLSBOb2lzZSBzaGFwaW5nIHRpbHQgKHBlciA1
IG1zKQorICAtIFF1YW50aXplciBnYWluL3N0ZXAgc2l6ZSAocGVyIDUgbXMpCis2OiAgSW5wdXQg
c2lnbmFsIGZpbHRlcmVkIHdpdGggYW5hbHlzaXMgbm9pc2Ugc2hhcGluZyBmaWx0ZXJzCis3OiAg
U2hvcnQgYW5kIGxvbmcgdGVybSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cworICAgIExUUCAocGVy
IDUgbXMpIGFuZCBMUEMgKHBlciAyMCBtcykKKzg6ICBMU0YgcXVhbnRpemF0aW9uIGluZGljZXMK
Kzk6ICBMU0YgY29lZmZpY2llbnRzCisxMDogUXVhbnRpemVkIExTRiBjb2VmZmljaWVudHMKKzEx
OiBQcm9jZXNzZWQgZ2FpbnMsIGFuZCBzeW50aGVzaXMgbm9pc2Ugc2hhcGUgY29lZmZpY2llbnRz
CisxMjogTFRQIHN0YXRlIHNjYWxpbmcgY29lZmZpY2llbnQuIENvbnRyb2xsaW5nIGVycm9yIHBy
b3BhZ2F0aW9uCisgICAvIHByZWRpY3Rpb24gZ2FpbiB0cmFkZS1vZmYKKzEzOiBRdWFudGl6ZWQg
c2lnbmFsCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8c2VjdGlvbiB0aXRsZT0nVm9p
Y2UgQWN0aXZpdHkgRGV0ZWN0aW9uJz4KKzx0PgorVGhlIGlucHV0IHNpZ25hbCBpcyBwcm9jZXNz
ZWQgYnkgYSBWb2ljZSBBY3Rpdml0eSBEZXRlY3RvciAoVkFEKSB0byBwcm9kdWNlCithIG1lYXN1
cmUgb2Ygdm9pY2UgYWN0aXZpdHksIHNwZWN0cmFsIHRpbHQsIGFuZCBzaWduYWwtdG8tbm9pc2Ug
ZXN0aW1hdGVzIGZvcgorZWFjaCBmcmFtZS4gVGhlIFZBRCB1c2VzIGEgc2VxdWVuY2Ugb2YgaGFs
Zi1iYW5kIGZpbHRlcmJhbmtzIHRvIHNwbGl0IHRoZQorc2lnbmFsIGludG8gZm91ciBzdWJiYW5k
czogMC4uLkZzLzE2LCBGcy8xNi4uLkZzLzgsIEZzLzguLi5Gcy80LCBhbmQKK0ZzLzQuLi5Gcy8y
LCB3aGVyZSBGcyBpcyB0aGUgc2FtcGxpbmcgZnJlcXVlbmN5ICg4LCAxMiwgMTYsIG9yIDI0Jm5i
c3A7a0h6KS4KK1RoZSBsb3dlc3Qgc3ViYmFuZCwgZnJvbSAwIC0gRnMvMTYsIGlzIGhpZ2gtcGFz
cyBmaWx0ZXJlZCB3aXRoIGEgZmlyc3Qtb3JkZXIKK21vdmluZyBhdmVyYWdlIChNQSkgZmlsdGVy
ICh3aXRoIHRyYW5zZmVyIGZ1bmN0aW9uIEgoeikgPSAxLXoqKigtMSkpIHRvCityZWR1Y2UgdGhl
IGVuZXJneSBhdCB0aGUgbG93ZXN0IGZyZXF1ZW5jaWVzLiBGb3IgZWFjaCBmcmFtZSwgdGhlIHNp
Z25hbAorZW5lcmd5IHBlciBzdWJiYW5kIGlzIGNvbXB1dGVkLgorSW4gZWFjaCBzdWJiYW5kLCBh
IG5vaXNlIGxldmVsIGVzdGltYXRvciB0cmFja3MgdGhlIGJhY2tncm91bmQgbm9pc2UgbGV2ZWwK
K2FuZCBhIFNpZ25hbC10by1Ob2lzZSBSYXRpbyAoU05SKSB2YWx1ZSBpcyBjb21wdXRlZCBhcyB0
aGUgbG9nYXJpdGhtIG9mIHRoZQorcmF0aW8gb2YgZW5lcmd5IHRvIG5vaXNlIGxldmVsLgorVXNp
bmcgdGhlc2UgaW50ZXJtZWRpYXRlIHZhcmlhYmxlcywgdGhlIGZvbGxvd2luZyBwYXJhbWV0ZXJz
IGFyZSBjYWxjdWxhdGVkCitmb3IgdXNlIGluIG90aGVyIFNJTEsgbW9kdWxlczoKKzxsaXN0IHN0
eWxlPSJzeW1ib2xzIj4KKzx0PgorQXZlcmFnZSBTTlIuIFRoZSBhdmVyYWdlIG9mIHRoZSBzdWJi
YW5kIFNOUiB2YWx1ZXMuCis8L3Q+CisKKzx0PgorU21vb3RoZWQgc3ViYmFuZCBTTlJzLiBUZW1w
b3JhbGx5IHNtb290aGVkIHN1YmJhbmQgU05SIHZhbHVlcy4KKzwvdD4KKworPHQ+CitTcGVlY2gg
YWN0aXZpdHkgbGV2ZWwuIEJhc2VkIG9uIHRoZSBhdmVyYWdlIFNOUiBhbmQgYSB3ZWlnaHRlZCBh
dmVyYWdlIG9mIHRoZQorc3ViYmFuZCBlbmVyZ2llcy4KKzwvdD4KKworPHQ+CitTcGVjdHJhbCB0
aWx0LiBBIHdlaWdodGVkIGF2ZXJhZ2Ugb2YgdGhlIHN1YmJhbmQgU05Scywgd2l0aCBwb3NpdGl2
ZSB3ZWlnaHRzCitmb3IgdGhlIGxvdyBzdWJiYW5kcyBhbmQgbmVnYXRpdmUgd2VpZ2h0cyBmb3Ig
dGhlIGhpZ2ggc3ViYmFuZHMuCis8L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxz
ZWN0aW9uIHRpdGxlPSdQaXRjaCBBbmFseXNpcycgYW5jaG9yPSdwaXRjaF9lc3RpbWF0b3Jfb3Zl
cnZpZXdfc2VjdGlvbic+Cis8dD4KK1RoZSBpbnB1dCBzaWduYWwgaXMgcHJvY2Vzc2VkIGJ5IHRo
ZSBvcGVuIGxvb3AgcGl0Y2ggZXN0aW1hdG9yIHNob3duIGluCis8eHJlZiB0YXJnZXQ9J3BpdGNo
X2VzdGltYXRvcl9maWd1cmUnIC8+LgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIiBhbmNob3I9InBp
dGNoX2VzdGltYXRvcl9maWd1cmUiCisgdGl0bGU9IkJsb2NrIGRpYWdyYW0gb2YgdGhlIHBpdGNo
IGVzdGltYXRvciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tKyAgKy0tLS0tLS0tLS0rCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8MiB4IERvd258ICB8VGltZS0gICAgIHwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICstPnxzYW1wbGluZ3wtPnxDb3JyZWxhdG9yfCAg
ICAgfAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgfCAgICAgICAgfCAgfCAgICAg
ICAgICB8ICAgICB8NAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgKy0tLS0tLS0t
KyAgKy0tLS0tLS0tLS0rICAgIFwvCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg
ICAgICAgICAgICAgICAgICB8IDIgICAgKy0tLS0tLS0rCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgICAgICAgICAgICAgICAgICB8ICArLS0+fFNwZWVjaCB8NQorICAgICstLS0t
LS0tLS0rICAgICstLS0tLS0tLSsgfCAgICAgICAgICAgICAgICAgICBcLyAgfCAgIHxUeXBlICAg
fC0+CisgICAgfExQQyAgICAgIHwgICAgfERvd24gICAgfCB8ICAgICAgICAgICAgICArLS0tLS0t
LS0tLSsgfCAgICAgICB8CisgKy0+fEFuYWx5c2lzIHwgKy0+fHNhbXBsZSAgfC0rLS0tLS0tLS0t
LS0tLT58VGltZS0gICAgIHwgKy0tLS0tLS0rCisgfCAgfCAgICAgICAgIHwgfCAgfHRvIDgga0h6
fCAgICAgICAgICAgICAgICB8Q29ycmVsYXRvcnwtLS0tLS0tLS0tLT4KKyB8ICArLS0tLS0tLS0t
KyB8ICArLS0tLS0tLS0rICAgICAgICAgICAgICAgIHxfX19fX19fX19ffCAgICAgICAgICA2Cisg
fCAgICAgICB8ICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8MworIHwg
ICAgICBcLyAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcLworIHwgICst
LS0tLS0tLS0rIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0rCisgfCAg
fFdoaXRlbmluZ3wgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8VGltZS0gICAgIHwKKy0r
LT58RmlsdGVyICAgfC0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPnxDb3JyZWxhdG9yfC0t
LS0tLS0tLS0tPgorMSAgIHwgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fCAgICAgICAgICB8ICAgICAgICAgIDcKKyAgICArLS0tLS0tLS0tKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICstLS0tLS0tLS0tKworCisxOiBJbnB1dCBzaWduYWwKKzI6IExhZyBjYW5k
aWRhdGVzIGZyb20gc3RhZ2UgMQorMzogTGFnIGNhbmRpZGF0ZXMgZnJvbSBzdGFnZSAyCis0OiBD
b3JyZWxhdGlvbiB0aHJlc2hvbGQKKzU6IFZvaWNlZC91bnZvaWNlZCBmbGFnCis2OiBQaXRjaCBj
b3JyZWxhdGlvbgorNzogUGl0Y2ggbGFncworXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1Ro
ZSBwaXRjaCBhbmFseXNpcyBmaW5kcyBhIGJpbmFyeSB2b2ljZWQvdW52b2ljZWQgY2xhc3NpZmlj
YXRpb24sIGFuZCwgZm9yCitmcmFtZXMgY2xhc3NpZmllZCBhcyB2b2ljZWQsIGZvdXIgcGl0Y2gg
bGFncyBwZXIgZnJhbWUgLSBvbmUgZm9yIGVhY2gKKzUmbmJzcDttcyBzdWJmcmFtZSAtIGFuZCBh
IHBpdGNoIGNvcnJlbGF0aW9uIGluZGljYXRpbmcgdGhlIHBlcmlvZGljaXR5IG9mCit0aGUgc2ln
bmFsLgorVGhlIGlucHV0IGlzIGZpcnN0IHdoaXRlbmVkIHVzaW5nIGEgTGluZWFyIFByZWRpY3Rp
b24gKExQKSB3aGl0ZW5pbmcgZmlsdGVyLAord2hlcmUgdGhlIGNvZWZmaWNpZW50cyBhcmUgY29t
cHV0ZWQgdGhyb3VnaCBzdGFuZGFyZCBMaW5lYXIgUHJlZGljdGlvbiBDb2RpbmcKKyhMUEMpIGFu
YWx5c2lzLiBUaGUgb3JkZXIgb2YgdGhlIHdoaXRlbmluZyBmaWx0ZXIgaXMgMTYgZm9yIGJlc3Qg
cmVzdWx0cywgYnV0CitpcyByZWR1Y2VkIHRvIDEyIGZvciBtZWRpdW0gY29tcGxleGl0eSBhbmQg
OCBmb3IgbG93IGNvbXBsZXhpdHkgbW9kZXMuCitUaGUgd2hpdGVuZWQgc2lnbmFsIGlzIGFuYWx5
emVkIHRvIGZpbmQgcGl0Y2ggbGFncyBmb3Igd2hpY2ggdGhlIHRpbWUKK2NvcnJlbGF0aW9uIGlz
IGhpZ2guCitUaGUgYW5hbHlzaXMgY29uc2lzdHMgb2YgdGhyZWUgc3RhZ2VzIGZvciByZWR1Y2lu
ZyB0aGUgY29tcGxleGl0eToKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PkluIHRoZSBmaXJz
dCBzdGFnZSwgdGhlIHdoaXRlbmVkIHNpZ25hbCBpcyBkb3duc2FtcGxlZCB0byA0Jm5ic3A7a0h6
CisoZnJvbSA4Jm5ic3A7a0h6KSBhbmQgdGhlIGN1cnJlbnQgZnJhbWUgaXMgY29ycmVsYXRlZCB0
byBhIHNpZ25hbCBkZWxheWVkCitieSBhIHJhbmdlIG9mIGxhZ3MsIHN0YXJ0aW5nIGZyb20gYSBz
aG9ydGVzdCBsYWcgY29ycmVzcG9uZGluZyB0bworNTAwJm5ic3A7SHosIHRvIGEgbG9uZ2VzdCBs
YWcgY29ycmVzcG9uZGluZyB0byA1NiZuYnNwO0h6LjwvdD4KKworPHQ+CitUaGUgc2Vjb25kIHN0
YWdlIG9wZXJhdGVzIG9uIGFuIDgmbmJzcDtrSHogc2lnbmFsIChkb3duc2FtcGxlZCBmcm9tIDEy
LCAxNiwKK29yIDI0Jm5ic3A7a0h6KSBhbmQgbWVhc3VyZXMgdGltZSBjb3JyZWxhdGlvbnMgb25s
eSBuZWFyIHRoZSBsYWdzCitjb3JyZXNwb25kaW5nIHRvIHRob3NlIHRoYXQgaGFkIHN1ZmZpY2ll
bnRseSBoaWdoIGNvcnJlbGF0aW9ucyBpbiB0aGUgZmlyc3QKK3N0YWdlLiBUaGUgcmVzdWx0aW5n
IGNvcnJlbGF0aW9ucyBhcmUgYWRqdXN0ZWQgZm9yIGEgc21hbGwgYmlhcyB0b3dhcmRzCitzaG9y
dCBsYWdzIHRvIGF2b2lkIGVuZGluZyB1cCB3aXRoIGEgbXVsdGlwbGUgb2YgdGhlIHRydWUgcGl0
Y2ggbGFnLgorVGhlIGhpZ2hlc3QgYWRqdXN0ZWQgY29ycmVsYXRpb24gaXMgY29tcGFyZWQgdG8g
YSB0aHJlc2hvbGQgZGVwZW5kaW5nIG9uOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitX
aGV0aGVyIHRoZSBwcmV2aW91cyBmcmFtZSB3YXMgY2xhc3NpZmllZCBhcyB2b2ljZWQKKzwvdD4K
Kzx0PgorVGhlIHNwZWVjaCBhY3Rpdml0eSBsZXZlbAorPC90PgorPHQ+CitUaGUgc3BlY3RyYWwg
dGlsdC4KKzwvdD4KKzwvbGlzdD4KK0lmIHRoZSB0aHJlc2hvbGQgaXMgZXhjZWVkZWQsIHRoZSBj
dXJyZW50IGZyYW1lIGlzIGNsYXNzaWZpZWQgYXMgdm9pY2VkIGFuZAordGhlIGxhZyB3aXRoIHRo
ZSBoaWdoZXN0IGFkanVzdGVkIGNvcnJlbGF0aW9uIGlzIHN0b3JlZCBmb3IgYSBmaW5hbCBwaXRj
aAorYW5hbHlzaXMgb2YgdGhlIGhpZ2hlc3QgcHJlY2lzaW9uIGluIHRoZSB0aGlyZCBzdGFnZS4K
KzwvdD4KKzx0PgorVGhlIGxhc3Qgc3RhZ2Ugb3BlcmF0ZXMgZGlyZWN0bHkgb24gdGhlIHdoaXRl
bmVkIGlucHV0IHNpZ25hbCB0byBjb21wdXRlIHRpbWUKK2NvcnJlbGF0aW9ucyBmb3IgZWFjaCBv
ZiB0aGUgZm91ciBzdWJmcmFtZXMgaW5kZXBlbmRlbnRseSBpbiBhIG5hcnJvdyByYW5nZQorYXJv
dW5kIHRoZSBsYWcgd2l0aCBoaWdoZXN0IGNvcnJlbGF0aW9uIGZyb20gdGhlIHNlY29uZCBzdGFn
ZS4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9J05v
aXNlIFNoYXBpbmcgQW5hbHlzaXMnIGFuY2hvcj0nbm9pc2Vfc2hhcGluZ19hbmFseXNpc19vdmVy
dmlld19zZWN0aW9uJz4KKzx0PgorVGhlIG5vaXNlIHNoYXBpbmcgYW5hbHlzaXMgZmluZHMgZ2Fp
bnMgYW5kIGZpbHRlciBjb2VmZmljaWVudHMgdXNlZCBpbiB0aGUKK3ByZWZpbHRlciBhbmQgbm9p
c2Ugc2hhcGluZyBxdWFudGl6ZXIuIFRoZXNlIHBhcmFtZXRlcnMgYXJlIGNob3NlbiBzdWNoIHRo
YXQKK3RoZXkgd2lsbCBmdWxmaWxsIHNldmVyYWwgcmVxdWlyZW1lbnRzOgorPGxpc3Qgc3R5bGU9
InN5bWJvbHMiPgorPHQ+CitCYWxhbmNpbmcgcXVhbnRpemF0aW9uIG5vaXNlIGFuZCBiaXRyYXRl
LgorVGhlIHF1YW50aXphdGlvbiBnYWlucyBkZXRlcm1pbmUgdGhlIHN0ZXAgc2l6ZSBiZXR3ZWVu
IHJlY29uc3RydWN0aW9uIGxldmVscworb2YgdGhlIGV4Y2l0YXRpb24gc2lnbmFsLiBUaGVyZWZv
cmUsIGluY3JlYXNpbmcgdGhlIHF1YW50aXphdGlvbiBnYWluCithbXBsaWZpZXMgcXVhbnRpemF0
aW9uIG5vaXNlLCBidXQgYWxzbyByZWR1Y2VzIHRoZSBiaXRyYXRlIGJ5IGxvd2VyaW5nCit0aGUg
ZW50cm9weSBvZiB0aGUgcXVhbnRpemF0aW9uIGluZGljZXMuCis8L3Q+Cis8dD4KK1NwZWN0cmFs
IHNoYXBpbmcgb2YgdGhlIHF1YW50aXphdGlvbiBub2lzZTsgdGhlIG5vaXNlIHNoYXBpbmcgcXVh
bnRpemVyIGlzCitjYXBhYmxlIG9mIHJlZHVjaW5nIHF1YW50aXphdGlvbiBub2lzZSBpbiBzb21l
IHBhcnRzIG9mIHRoZSBzcGVjdHJ1bSBhdCB0aGUKK2Nvc3Qgb2YgaW5jcmVhc2VkIG5vaXNlIGlu
IG90aGVyIHBhcnRzIHdpdGhvdXQgc3Vic3RhbnRpYWxseSBjaGFuZ2luZyB0aGUKK2JpdHJhdGUu
CitCeSBzaGFwaW5nIHRoZSBub2lzZSBzdWNoIHRoYXQgaXQgZm9sbG93cyB0aGUgc2lnbmFsIHNw
ZWN0cnVtLCBpdCBiZWNvbWVzCitsZXNzIGF1ZGlibGUuIEluIHByYWN0aWNlLCBiZXN0IHJlc3Vs
dHMgYXJlIG9idGFpbmVkIGJ5IG1ha2luZyB0aGUgc2hhcGUKK29mIHRoZSBub2lzZSBzcGVjdHJ1
bSBzbGlnaHRseSBmbGF0dGVyIHRoYW4gdGhlIHNpZ25hbCBzcGVjdHJ1bS4KKzwvdD4KKzx0Pgor
RGUtZW1waGFzaXppbmcgc3BlY3RyYWwgdmFsbGV5czsgYnkgdXNpbmcgZGlmZmVyZW50IGNvZWZm
aWNpZW50cyBpbiB0aGUKK2FuYWx5c2lzIGFuZCBzeW50aGVzaXMgcGFydCBvZiB0aGUgcHJlZmls
dGVyIGFuZCBub2lzZSBzaGFwaW5nIHF1YW50aXplciwKK3RoZSBsZXZlbHMgb2YgdGhlIHNwZWN0
cmFsIHZhbGxleXMgY2FuIGJlIGRlY3JlYXNlZCByZWxhdGl2ZSB0byB0aGUgbGV2ZWxzCitvZiB0
aGUgc3BlY3RyYWwgcGVha3Mgc3VjaCBhcyBzcGVlY2ggZm9ybWFudHMgYW5kIGhhcm1vbmljcy4K
K1RoaXMgcmVkdWNlcyB0aGUgZW50cm9weSBvZiB0aGUgc2lnbmFsLCB3aGljaCBpcyB0aGUgZGlm
ZmVyZW5jZSBiZXR3ZWVuIHRoZQorY29kZWQgc2lnbmFsIGFuZCB0aGUgcXVhbnRpemF0aW9uIG5v
aXNlLCB0aHVzIGxvd2VyaW5nIHRoZSBiaXRyYXRlLgorPC90PgorPHQ+CitNYXRjaGluZyB0aGUg
bGV2ZWxzIG9mIHRoZSBkZWNvZGVkIHNwZWVjaCBmb3JtYW50cyB0byB0aGUgbGV2ZWxzIG9mIHRo
ZQorb3JpZ2luYWwgc3BlZWNoIGZvcm1hbnRzOyBhbiBhZGp1c3RtZW50IGdhaW4gYW5kIGEgZmly
c3Qgb3JkZXIgdGlsdAorY29lZmZpY2llbnQgYXJlIGNvbXB1dGVkIHRvIGNvbXBlbnNhdGUgZm9y
IHRoZSBlZmZlY3Qgb2YgdGhlIG5vaXNlCitzaGFwaW5nIHF1YW50aXphdGlvbiBvbiB0aGUgbGV2
ZWwgYW5kIHNwZWN0cmFsIHRpbHQuCis8L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8dD4KKzxmaWd1cmUg
YWxpZ249ImNlbnRlciIgYW5jaG9yPSJub2lzZV9zaGFwZV9hbmFseXNpc19zcGVjdHJhX2ZpZ3Vy
ZSIKKyB0aXRsZT0iTm9pc2Ugc2hhcGluZyBhbmQgc3BlY3RyYWwgZGUtZW1waGFzaXMgaWxsdXN0
cmF0aW9uIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisgIC8gXCAgIF9f
XworICAgfCAgIC8vIFxcCisgICB8ICAvLyAgIFxcICAgICBfX19fCisgICB8Xy8vICAgICBcXF9f
Xy8vICBcXCAgICAgICAgIF9fX18KKyAgIHwgLyAgX19fICBcICAgLyAgICBcXCAgICAgICAvLyAg
XFwKKyBQIHwvICAvICAgXCAgXF8vICAgICAgXFxfX19fXy8vICAgIFxcCisgbyB8ICAvICAgICBc
ICAgICBfX19fICBcICAgICAvICAgICAgXFwKKyB3IHwgLyAgICAgICBcX19fLyAgICBcICBcX19f
LyAgX19fXyAgXFxfX18gMQorIGUgfC8gICAgICAgICAgICAgICAgICBcICAgICAgIC8gICAgXCAg
XAorIHIgfCAgICAgICAgICAgICAgICAgICAgXF9fX19fLyAgICAgIFwgIFxfXyAyCisgICB8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgIHwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFxfX18gMworICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0+CisgICAgICAgICAgICAgICAgICAgIEZyZXF1ZW5jeQorCisxOiBJ
bnB1dCBzaWduYWwgc3BlY3RydW0KKzI6IERlLWVtcGhhc2l6ZWQgYW5kIGxldmVsIG1hdGNoZWQg
c3BlY3RydW0KKzM6IFF1YW50aXphdGlvbiBub2lzZSBzcGVjdHJ1bQorXV0+Cis8L2FydHdvcms+
Cis8L2ZpZ3VyZT4KKzx4cmVmIHRhcmdldD0nbm9pc2Vfc2hhcGVfYW5hbHlzaXNfc3BlY3RyYV9m
aWd1cmUnIC8+IHNob3dzIGFuIGV4YW1wbGUgb2YgYW4KK2lucHV0IHNpZ25hbCBzcGVjdHJ1bSAo
MSkuCitBZnRlciBkZS1lbXBoYXNpcyBhbmQgbGV2ZWwgbWF0Y2hpbmcsIHRoZSBzcGVjdHJ1bSBo
YXMgZGVlcGVyIHZhbGxleXMgKDIpLgorVGhlIHF1YW50aXphdGlvbiBub2lzZSBzcGVjdHJ1bSAo
MykgbW9yZSBvciBsZXNzIGZvbGxvd3MgdGhlIGlucHV0IHNpZ25hbAorc3BlY3RydW0sIHdoaWxl
IGhhdmluZyBzbGlnaHRseSBsZXNzIHByb25vdW5jZWQgcGVha3MuCitUaGUgZW50cm9weSwgd2hp
Y2ggcHJvdmlkZXMgYSBsb3dlciBib3VuZCBvbiB0aGUgYml0cmF0ZSBmb3IgZW5jb2RpbmcgdGhl
CitleGNpdGF0aW9uIHNpZ25hbCwgaXMgcHJvcG9ydGlvbmFsIHRvIHRoZSBhcmVhIGJldHdlZW4g
dGhlIGRlLWVtcGhhc2l6ZWQKK3NwZWN0cnVtICgyKSBhbmQgdGhlIHF1YW50aXphdGlvbiBub2lz
ZSBzcGVjdHJ1bSAoMykuIFdpdGhvdXQgZGUtZW1waGFzaXMsCit0aGUgZW50cm9weSBpcyBwcm9w
b3J0aW9uYWwgdG8gdGhlIGFyZWEgYmV0d2VlbiBpbnB1dCBzcGVjdHJ1bSAoMSkgYW5kCitxdWFu
dGl6YXRpb24gbm9pc2UgKDMpIC0gY2xlYXJseSBoaWdoZXIuCis8L3Q+CisKKzx0PgorVGhlIHRy
YW5zZm9ybWF0aW9uIGZyb20gaW5wdXQgc2lnbmFsIHRvIGRlLWVtcGhhc2l6ZWQgc2lnbmFsIGNh
biBiZQorZGVzY3JpYmVkIGFzIGEgZmlsdGVyaW5nIG9wZXJhdGlvbiB3aXRoIGEgZmlsdGVyCis8
ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFU
QVsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xICAgIFdhbmEoeikKK0goeikgPSBHICog
KCAxIC0gY190aWx0ICogeiAgKSAqIC0tLS0tLS0KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFdzeW4oeiksCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgoraGF2aW5nIGFuIGFk
anVzdG1lbnQgZ2FpbiBHLCBhIGZpcnN0IG9yZGVyIHRpbHQgYWRqdXN0bWVudCBmaWx0ZXIgd2l0
aAordGlsdCBjb2VmZmljaWVudCBjX3RpbHQsIGFuZCB3aGVyZQorPGZpZ3VyZSBhbGlnbj0iY2Vu
dGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisgICAgICAgICAgICAg
ICAxNiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkCisgICAgICAgICAgICAgICBfXyAgICAg
ICAgICAgICAtayAgICAgICAgLUwgIF9fICAgICAgICAgICAgLWsKK1dhbmEoeikgPSAoMSAtIFwg
KGFfYW5hKGspICogeiAgKSooMSAtIHogICogXCBiX2FuYShrKSAqIHogICksCisgICAgICAgICAg
ICAgICAvXyAgICAgICAgICAgICAgICAgICAgICAgICAgIC9fCisgICAgICAgICAgICAgICBrPTEg
ICAgICAgICAgICAgICAgICAgICAgICAgIGs9LWQKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+
CitpcyB0aGUgYW5hbHlzaXMgcGFydCBvZiB0aGUgZGUtZW1waGFzaXMgZmlsdGVyLCBjb25zaXN0
aW5nIG9mIHRoZSBzaG9ydC10ZXJtCitzaGFwaW5nIGZpbHRlciB3aXRoIGNvZWZmaWNpZW50cyBh
X2FuYShrKSwgYW5kIHRoZSBsb25nLXRlcm0gc2hhcGluZyBmaWx0ZXIKK3dpdGggY29lZmZpY2ll
bnRzIGJfYW5hKGspIGFuZCBwaXRjaCBsYWcgTC4KK1RoZSBwYXJhbWV0ZXIgZCBkZXRlcm1pbmVz
IHRoZSBudW1iZXIgb2YgbG9uZy10ZXJtIHNoYXBpbmcgZmlsdGVyIHRhcHMuCis8L3Q+CisKKzx0
PgorU2ltaWxhcmx5LCBidXQgd2l0aG91dCB0aGUgdGlsdCBhZGp1c3RtZW50LCB0aGUgc3ludGhl
c2lzIHBhcnQgY2FuIGJlIHdyaXR0ZW4gYXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworICAgICAgICAgICAgICAgMTYgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZAorICAgICAgICAgICAgICAgX18gICAgICAgICAgICAgLWsg
ICAgICAgIC1MICBfXyAgICAgICAgICAgIC1rCitXc3luKHopID0gKDEgLSBcIChhX3N5bihrKSAq
IHogICkqKDEgLSB6ICAqIFwgYl9zeW4oaykgKiB6ICApLgorICAgICAgICAgICAgICAgL18gICAg
ICAgICAgICAgICAgICAgICAgICAgICAvXworICAgICAgICAgICAgICAgaz0xICAgICAgICAgICAg
ICAgICAgICAgICAgICBrPS1kCisgICAgICAgICAgICBdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJl
PgorPC90PgorPHQ+CitBbGwgbm9pc2Ugc2hhcGluZyBwYXJhbWV0ZXJzIGFyZSBjb21wdXRlZCBh
bmQgYXBwbGllZCBwZXIgc3ViZnJhbWUgb2YgNSZuYnNwO21zLgorRmlyc3QsIGFuIExQQyBhbmFs
eXNpcyBpcyBwZXJmb3JtZWQgb24gYSB3aW5kb3dlZCBzaWduYWwgYmxvY2sgb2YgMTUmbmJzcDtt
cy4KK1RoZSBzaWduYWwgYmxvY2sgaGFzIGEgbG9vay1haGVhZCBvZiA1Jm5ic3A7bXMgcmVsYXRp
dmUgdG8gdGhlIGN1cnJlbnQgc3ViZnJhbWUsCithbmQgdGhlIHdpbmRvdyBpcyBhbiBhc3ltbWV0
cmljIHNpbmUgd2luZG93LiBUaGUgTFBDIGFuYWx5c2lzIGlzIGRvbmUgd2l0aCB0aGUKK2F1dG9j
b3JyZWxhdGlvbiBtZXRob2QsIHdpdGggYW4gb3JkZXIgb2YgYmV0d2VlbiA4LCBpbiBsb3dlc3Qt
Y29tcGxleGl0eSBtb2RlLAorYW5kIDE2LCBmb3IgYmVzdCBxdWFsaXR5LgorPC90PgorPHQ+CitP
cHRpb25hbGx5IHRoZSBMUEMgYW5hbHlzaXMgYW5kIG5vaXNlIHNoYXBpbmcgZmlsdGVycyBhcmUg
d2FycGVkIGJ5IHJlcGxhY2luZwordGhlIGRlbGF5IGVsZW1lbnRzIGJ5IGZpcnN0LW9yZGVyIGFs
bHBhc3MgZmlsdGVycy4KK1RoaXMgaW5jcmVhc2VzIHRoZSBmcmVxdWVuY3kgcmVzb2x1dGlvbiBh
dCBsb3cgZnJlcXVlbmNpZXMgYW5kIHJlZHVjZXMgaXQgYXQKK2hpZ2ggb25lcywgd2hpY2ggYmV0
dGVyIG1hdGNoZXMgdGhlIGh1bWFuIGF1ZGl0b3J5IHN5c3RlbSBhbmQgaW1wcm92ZXMKK3F1YWxp
dHkuCitUaGUgd2FycGVkIGFuYWx5c2lzIGFuZCBmaWx0ZXJpbmcgY29tZXMgYXQgYSBjb3N0IGlu
IGNvbXBsZXhpdHkKK2FuZCBpcyB0aGVyZWZvcmUgb25seSBkb25lIGluIGhpZ2hlciBjb21wbGV4
aXR5IG1vZGVzLgorPC90PgorPHQ+CitUaGUgcXVhbnRpemF0aW9uIGdhaW4gaXMgZm91bmQgYnkg
dGFraW5nIHRoZSBzcXVhcmUgcm9vdCBvZiB0aGUgcmVzaWR1YWwgZW5lcmd5Citmcm9tIHRoZSBM
UEMgYW5hbHlzaXMgYW5kIG11bHRpcGx5aW5nIGl0IGJ5IGEgdmFsdWUgaW52ZXJzZWx5IHByb3Bv
cnRpb25hbAordG8gdGhlIGNvZGluZyBxdWFsaXR5IGNvbnRyb2wgcGFyYW1ldGVyIGFuZCB0aGUg
cGl0Y2ggY29ycmVsYXRpb24uCis8L3Q+Cis8dD4KK05leHQgdGhlIHR3byBzZXRzIG9mIHNob3J0
LXRlcm0gbm9pc2Ugc2hhcGluZyBjb2VmZmljaWVudHMgYV9hbmEoaykgYW5kCithX3N5bihrKSBh
cmUgb2J0YWluZWQgYnkgYXBwbHlpbmcgZGlmZmVyZW50IGFtb3VudHMgb2YgYmFuZHdpZHRoIGV4
cGFuc2lvbiB0byB0aGUKK2NvZWZmaWNpZW50cyBmb3VuZCBpbiB0aGUgTFBDIGFuYWx5c2lzLgor
VGhpcyBiYW5kd2lkdGggZXhwYW5zaW9uIG1vdmVzIHRoZSByb290cyBvZiB0aGUgTFBDIHBvbHlu
b21pYWwgdG93YXJkcyB0aGUKK29yaWdpbiwgdXNpbmcgdGhlIGZvcm11bGFzCis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKKyAgICAg
ICAgICAgICAgICAgICAgICBrCisgYV9hbmEoaykgPSBhKGspKmdfYW5hICwgYW5kCisKKyAgICAg
ICAgICAgICAgICAgICAgICBrCisgYV9zeW4oaykgPSBhKGspKmdfc3luICwKK11dPgorPC9hcnR3
b3JrPgorPC9maWd1cmU+Cit3aGVyZSBhKGspIGlzIHRoZSBrJ3RoIExQQyBjb2VmZmljaWVudCwg
YW5kIHRoZSBiYW5kd2lkdGggZXhwYW5zaW9uIGZhY3RvcnMKK2dfYW5hIGFuZCBnX3N5biBhcmUg
Y2FsY3VsYXRlZCBhcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJj
ZW50ZXIiPgorPCFbQ0RBVEFbCitnX2FuYSA9IDAuOTUgLSAwLjAxKkMsIGFuZAorCitnX3N5biA9
IDAuOTUgKyAwLjAxKkMsCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgord2hlcmUgQyBpcyB0
aGUgY29kaW5nIHF1YWxpdHkgY29udHJvbCBwYXJhbWV0ZXIgYmV0d2VlbiAwIGFuZCAxLgorQXBw
bHlpbmcgbW9yZSBiYW5kd2lkdGggZXhwYW5zaW9uIHRvIHRoZSBhbmFseXNpcyBwYXJ0IHRoYW4g
dG8gdGhlIHN5bnRoZXNpcworcGFydCBnaXZlcyB0aGUgZGVzaXJlZCBkZS1lbXBoYXNpcyBvZiBz
cGVjdHJhbCB2YWxsZXlzIGluIGJldHdlZW4gZm9ybWFudHMuCis8L3Q+CisKKzx0PgorVGhlIGxv
bmctdGVybSBzaGFwaW5nIGlzIGFwcGxpZWQgb25seSBkdXJpbmcgdm9pY2VkIGZyYW1lcy4KK0l0
IHVzZXMgdGhyZWUgZmlsdGVyIHRhcHMsIGRlc2NyaWJlZCBieQorPGZpZ3VyZSBhbGlnbj0iY2Vu
dGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorICA8IVtDREFUQVsKK2JfYW5hID0gRl9h
bmEgKiBbMC4yNSwgMC41LCAwLjI1XSwgYW5kCisKK2Jfc3luID0gRl9zeW4gKiBbMC4yNSwgMC41
LCAwLjI1XS4KK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+CitGb3IgdW52b2ljZWQgZnJhbWVz
IHRoZXNlIGNvZWZmaWNpZW50cyBhcmUgc2V0IHRvIDAuIFRoZSBtdWx0aXBsaWNhdGlvbiBmYWN0
b3JzCitGX2FuYSBhbmQgRl9zeW4gYXJlIGNob3NlbiBiZXR3ZWVuIDAgYW5kIDEsIGRlcGVuZGlu
ZyBvbiB0aGUgY29kaW5nIHF1YWxpdHkKK2NvbnRyb2wgcGFyYW1ldGVyLCBhcyB3ZWxsIGFzIHRo
ZSBjYWxjdWxhdGVkIHBpdGNoIGNvcnJlbGF0aW9uIGFuZCBzbW9vdGhlZAorc3ViYmFuZCBTTlIg
b2YgdGhlIGxvd2VzdCBzdWJiYW5kLiBCeSBoYXZpbmcgRl9hbmEgbGVzcyB0aGFuIEZfc3luLAor
dGhlIHBpdGNoIGhhcm1vbmljcyBhcmUgZW1waGFzaXplZCByZWxhdGl2ZSB0byB0aGUgdmFsbGV5
cyBpbiBiZXR3ZWVuIHRoZQoraGFybW9uaWNzLgorPC90PgorCis8dD4KK1RoZSB0aWx0IGNvZWZm
aWNpZW50IGNfdGlsdCBpcyBmb3IgdW52b2ljZWQgZnJhbWVzIGNob3NlbiBhcworPGZpZ3VyZSBh
bGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCitjX3Rp
bHQgPSAwLjI1LAorXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KK2FuZCBhcworPGZpZ3VyZSBh
bGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCitjX3Rp
bHQgPSAwLjI1ICsgMC4yNjI1ICogVgorXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KK2ZvciB2
b2ljZWQgZnJhbWVzLCB3aGVyZSBWIGlzIHRoZSB2b2ljZSBhY3Rpdml0eSBsZXZlbCBiZXR3ZWVu
IDAgYW5kIDEuCis8L3Q+Cis8dD4KK1RoZSBhZGp1c3RtZW50IGdhaW4gRyBzZXJ2ZXMgdG8gY29y
cmVjdCBhbnkgbGV2ZWwgbWlzbWF0Y2ggYmV0d2VlbiB0aGUgb3JpZ2luYWwKK2FuZCBkZWNvZGVk
IHNpZ25hbHMgdGhhdCBtaWdodCBhcmlzZSBmcm9tIHRoZSBub2lzZSBzaGFwaW5nIGFuZCBkZS1l
bXBoYXNpcy4KK1RoaXMgZ2FpbiBpcyBjb21wdXRlZCBhcyB0aGUgcmF0aW8gb2YgdGhlIHByZWRp
Y3Rpb24gZ2FpbiBvZiB0aGUgc2hvcnQtdGVybQorYW5hbHlzaXMgYW5kIHN5bnRoZXNpcyBmaWx0
ZXIgY29lZmZpY2llbnRzLiBUaGUgcHJlZGljdGlvbiBnYWluIG9mIGFuIExQQworc3ludGhlc2lz
IGZpbHRlciBpcyB0aGUgc3F1YXJlIHJvb3Qgb2YgdGhlIG91dHB1dCBlbmVyZ3kgd2hlbiB0aGUg
ZmlsdGVyIGlzCitleGNpdGVkIGJ5IGEgdW5pdC1lbmVyZ3kgaW1wdWxzZSBvbiB0aGUgaW5wdXQu
CitBbiBlZmZpY2llbnQgd2F5IHRvIGNvbXB1dGUgdGhlIHByZWRpY3Rpb24gZ2FpbiBpcyBieSBm
aXJzdCBjb21wdXRpbmcgdGhlCityZWZsZWN0aW9uIGNvZWZmaWNpZW50cyBmcm9tIHRoZSBMUEMg
Y29lZmZpY2llbnRzIHRocm91Z2ggdGhlIHN0ZXAtZG93bgorYWxnb3JpdGhtLCBhbmQgZXh0cmFj
dGluZyB0aGUgcHJlZGljdGlvbiBnYWluIGZyb20gdGhlIHJlZmxlY3Rpb24gY29lZmZpY2llbnRz
CithcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgor
PCFbQ0RBVEFbCisgICAgICAgICAgICAgICBLCisgICAgICAgICAgICAgIF9fXyAgICAgICAgICAy
ICAtMC41CisgcHJlZEdhaW4gPSAoIHwgfCAxIC0gKHJfaykgICkgICAgLAorICAgICAgICAgICAg
ICBrPTEKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+Cit3aGVyZSByX2sgaXMgdGhlIGsndGgg
cmVmbGVjdGlvbiBjb2VmZmljaWVudC4KKzwvdD4KKworPHQ+CitJbml0aWFsIHZhbHVlcyBmb3Ig
dGhlIHF1YW50aXphdGlvbiBnYWlucyBhcmUgY29tcHV0ZWQgYXMgdGhlIHNxdWFyZS1yb290IG9m
Cit0aGUgcmVzaWR1YWwgZW5lcmd5IG9mIHRoZSBMUEMgYW5hbHlzaXMsIGFkanVzdGVkIGJ5IHRo
ZSBjb2RpbmcgcXVhbGl0eSBjb250cm9sCitwYXJhbWV0ZXIuCitUaGVzZSBxdWFudGl6YXRpb24g
Z2FpbnMgYXJlIGxhdGVyIGFkanVzdGVkIGJhc2VkIG9uIHRoZSByZXN1bHRzIG9mIHRoZQorcHJl
ZGljdGlvbiBhbmFseXNpcy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9J1By
ZWRpY3Rpb24gQW5hbHlzaXMnIGFuY2hvcj0ncHJlZF9hbmFfb3ZlcnZpZXdfc2VjdGlvbic+Cis8
dD4KK1RoZSBwcmVkaWN0aW9uIGFuYWx5c2lzIGlzIHBlcmZvcm1lZCBpbiBvbmUgb2YgdHdvIHdh
eXMgZGVwZW5kaW5nIG9uIGhvdwordGhlIHBpdGNoIGVzdGltYXRvciBjbGFzc2lmaWVkIHRoZSBm
cmFtZS4KK1RoZSBwcm9jZXNzaW5nIGZvciB2b2ljZWQgYW5kIHVudm9pY2VkIHNwZWVjaCBpcyBk
ZXNjcmliZWQgaW4KKzx4cmVmIHRhcmdldD0ncHJlZF9hbmFfdm9pY2VkX292ZXJ2aWV3X3NlY3Rp
b24nIC8+IGFuZAorICA8eHJlZiB0YXJnZXQ9J3ByZWRfYW5hX3Vudm9pY2VkX292ZXJ2aWV3X3Nl
Y3Rpb24nIC8+LCByZXNwZWN0aXZlbHkuCisgIElucHV0cyB0byB0aGlzIGZ1bmN0aW9uIGluY2x1
ZGUgdGhlIHByZS13aGl0ZW5lZCBzaWduYWwgZnJvbSB0aGUKKyAgcGl0Y2ggZXN0aW1hdG9yIChz
ZWUgPHhyZWYgdGFyZ2V0PSdwaXRjaF9lc3RpbWF0b3Jfb3ZlcnZpZXdfc2VjdGlvbicvPikuCis8
L3Q+CisKKzxzZWN0aW9uIHRpdGxlPSdWb2ljZWQgU3BlZWNoJyBhbmNob3I9J3ByZWRfYW5hX3Zv
aWNlZF9vdmVydmlld19zZWN0aW9uJz4KKzx0PgorICBGb3IgYSBmcmFtZSBvZiB2b2ljZWQgc3Bl
ZWNoIHRoZSBwaXRjaCBwdWxzZXMgd2lsbCByZW1haW4gZG9taW5hbnQgaW4gdGhlCisgIHByZS13
aGl0ZW5lZCBpbnB1dCBzaWduYWwuCisgIEZ1cnRoZXIgd2hpdGVuaW5nIGlzIGRlc2lyYWJsZSBh
cyBpdCBsZWFkcyB0byBoaWdoZXIgcXVhbGl0eSBhdCB0aGUgc2FtZQorICBhdmFpbGFibGUgYml0
cmF0ZS4KKyAgVG8gYWNoaWV2ZSB0aGlzLCBhIExvbmctVGVybSBQcmVkaWN0aW9uIChMVFApIGFu
YWx5c2lzIGlzIGNhcnJpZWQgb3V0IHRvCisgIGVzdGltYXRlIHRoZSBjb2VmZmljaWVudHMgb2Yg
YSBmaWZ0aC1vcmRlciBMVFAgZmlsdGVyIGZvciBlYWNoIG9mIGZvdXIKKyAgc3ViZnJhbWVzLgor
ICBUaGUgTFRQIGNvZWZmaWNpZW50cyBhcmUgcXVhbnRpemVkIHVzaW5nIHRoZSBtZXRob2QgZGVz
Y3JpYmVkIGluCisgIDx4cmVmIHRhcmdldD0nbHRwX3F1YW50aXplcl9vdmVydmlld19zZWN0aW9u
Jy8+LCBhbmQgdGhlIHF1YW50aXplZCBMVFAKKyAgY29lZmZpY2llbnRzIGFyZSB1c2VkIHRvIGNv
bXB1dGUgdGhlIExUUCByZXNpZHVhbCBzaWduYWwuCisgIFRoaXMgTFRQIHJlc2lkdWFsIHNpZ25h
bCBpcyB0aGUgaW5wdXQgdG8gYW4gTFBDIGFuYWx5c2lzIHdoZXJlIHRoZSBMUEMgY29lZmZpY2ll
bnRzIGFyZQorICBlc3RpbWF0ZWQgdXNpbmcgQnVyZydzIG1ldGhvZCA8eHJlZiB0YXJnZXQ9IkJ1
cmciLz4sIHN1Y2ggdGhhdCB0aGUgcmVzaWR1YWwgZW5lcmd5IGlzIG1pbmltaXplZC4KKyAgVGhl
IGVzdGltYXRlZCBMUEMgY29lZmZpY2llbnRzIGFyZSBjb252ZXJ0ZWQgdG8gYSBMaW5lIFNwZWN0
cmFsIEZyZXF1ZW5jeSAoTFNGKSB2ZWN0b3IKKyAgYW5kIHF1YW50aXplZCBhcyBkZXNjcmliZWQg
aW4gPHhyZWYgdGFyZ2V0PSdsc2ZfcXVhbnRpemVyX292ZXJ2aWV3X3NlY3Rpb24nLz4uCitBZnRl
ciBxdWFudGl6YXRpb24sIHRoZSBxdWFudGl6ZWQgTFNGIHZlY3RvciBpcyBjb252ZXJ0ZWQgYmFj
ayB0byBMUEMKK2NvZWZmaWNpZW50cyB1c2luZyB0aGUgZnVsbCBwcm9jZWR1cmUgaW4gPHhyZWYg
dGFyZ2V0PSJzaWxrX25sc2ZzIi8+LgorQnkgdXNpbmcgcXVhbnRpemVkIExUUCBjb2VmZmljaWVu
dHMgYW5kIExQQyBjb2VmZmljaWVudHMgZGVyaXZlZCBmcm9tIHRoZQorcXVhbnRpemVkIExTRiBj
b2VmZmljaWVudHMsIHRoZSBlbmNvZGVyIHJlbWFpbnMgZnVsbHkgc3luY2hyb25pemVkIHdpdGgg
dGhlCitkZWNvZGVyLgorVGhlIHF1YW50aXplZCBMUEMgYW5kIExUUCBjb2VmZmljaWVudHMgYXJl
IGFsc28gdXNlZCB0byBmaWx0ZXIgdGhlIGlucHV0CitzaWduYWwgYW5kIG1lYXN1cmUgcmVzaWR1
YWwgZW5lcmd5IGZvciBlYWNoIG9mIHRoZSBmb3VyIHN1YmZyYW1lcy4KKzwvdD4KKzwvc2VjdGlv
bj4KKzxzZWN0aW9uIHRpdGxlPSdVbnZvaWNlZCBTcGVlY2gnIGFuY2hvcj0ncHJlZF9hbmFfdW52
b2ljZWRfb3ZlcnZpZXdfc2VjdGlvbic+Cis8dD4KK0ZvciBhIHNwZWVjaCBzaWduYWwgdGhhdCBo
YXMgYmVlbiBjbGFzc2lmaWVkIGFzIHVudm9pY2VkLCB0aGVyZSBpcyBubyBuZWVkCitmb3IgTFRQ
IGZpbHRlcmluZywgYXMgaXQgaGFzIGFscmVhZHkgYmVlbiBkZXRlcm1pbmVkIHRoYXQgdGhlIHBy
ZS13aGl0ZW5lZAoraW5wdXQgc2lnbmFsIGlzIG5vdCBwZXJpb2RpYyBlbm91Z2ggd2l0aGluIHRo
ZSBhbGxvd2VkIHBpdGNoIHBlcmlvZCByYW5nZQorZm9yIExUUCBhbmFseXNpcyB0byBiZSB3b3J0
aCB0aGUgY29zdCBpbiB0ZXJtcyBvZiBjb21wbGV4aXR5IGFuZCBiaXRyYXRlLgorVGhlIHByZS13
aGl0ZW5lZCBpbnB1dCBzaWduYWwgaXMgdGhlcmVmb3JlIGRpc2NhcmRlZCwgYW5kIGluc3RlYWQg
dGhlIGlucHV0CitzaWduYWwgaXMgdXNlZCBmb3IgTFBDIGFuYWx5c2lzIHVzaW5nIEJ1cmcncyBt
ZXRob2QuCitUaGUgcmVzdWx0aW5nIExQQyBjb2VmZmljaWVudHMgYXJlIGNvbnZlcnRlZCB0byBh
biBMU0YgdmVjdG9yIGFuZCBxdWFudGl6ZWQKK2FzIGRlc2NyaWJlZCBpbiB0aGUgZm9sbG93aW5n
IHNlY3Rpb24uCitUaGV5IGFyZSB0aGVuIHRyYW5zZm9ybWVkIGJhY2sgdG8gb2J0YWluIHF1YW50
aXplZCBMUEMgY29lZmZpY2llbnRzLCB3aGljaAorYXJlIHRoZW4gdXNlZCB0byBmaWx0ZXIgdGhl
IGlucHV0IHNpZ25hbCBhbmQgbWVhc3VyZSByZXNpZHVhbCBlbmVyZ3kgZm9yCitlYWNoIG9mIHRo
ZSBmb3VyIHN1YmZyYW1lcy4KKzwvdD4KKzxzZWN0aW9uIHRpdGxlPSJCdXJnJ3MgTWV0aG9kIj4K
Kzx0PgorVGhlIG1haW4gcHVycG9zZSBvZiBsaW5lYXIgcHJlZGljdGlvbiBpbiBTSUxLIGlzIHRv
IHJlZHVjZSB0aGUgYml0cmF0ZSBieQorbWluaW1pemluZyB0aGUgcmVzaWR1YWwgZW5lcmd5Lgor
QXQgbGVhc3QgYXQgaGlnaCBiaXRyYXRlcywgcGVyY2VwdHVhbCBhc3BlY3RzIGFyZSBoYW5kbGVk
CitpbmRlcGVuZGVudGx5IGJ5IHRoZSBub2lzZSBzaGFwaW5nIGZpbHRlci4KK0J1cmcncyBtZXRo
b2QgaXMgdXNlZCBiZWNhdXNlIGl0IHByb3ZpZGVzIGhpZ2hlciBwcmVkaWN0aW9uIGdhaW4KK3Ro
YW4gdGhlIGF1dG9jb3JyZWxhdGlvbiBtZXRob2QgYW5kLCB1bmxpa2UgdGhlIGNvdmFyaWFuY2Ug
bWV0aG9kLAorcHJvZHVjZXMgc3RhYmxlIGZpbHRlcnMgKGFzc3VtaW5nIG51bWVyaWNhbCBlcnJv
cnMgZG9uJ3Qgc3BvaWwKK3RoYXQpLiBTSUxLJ3MgaW1wbGVtZW50YXRpb24gb2YgQnVyZydzIG1l
dGhvZCBpcyBhbHNvIGNvbXB1dGF0aW9uYWxseQorZmFzdGVyIHRoYW4gdGhlIGF1dG9jb3Zhcmlh
bmNlIG1ldGhvZC4KK1RoZSBpbXBsZW1lbnRhdGlvbiBvZiBCdXJnJ3MgbWV0aG9kIGRpZmZlcnMg
ZnJvbSB0cmFkaXRpb25hbAoraW1wbGVtZW50YXRpb25zIGluIHR3byBhc3BlY3RzLgorVGhlIGZp
cnN0IGRpZmZlcmVuY2UgaXMgdGhhdCBpdAorb3BlcmF0ZXMgb24gYXV0b2NvcnJlbGF0aW9ucywg
c2ltaWxhciB0byB0aGUgU2NodXIgYWxnb3JpdGhtIDx4cmVmIHRhcmdldD0iU2NodXIiLz4sIGJ1
dAord2l0aCBhIHNpbXBsZSB1cGRhdGUgdG8gdGhlIGF1dG9jb3JyZWxhdGlvbnMgYWZ0ZXIgZmlu
ZGluZyBlYWNoCityZWZsZWN0aW9uIGNvZWZmaWNpZW50IHRvIG1ha2UgdGhlIHJlc3VsdCBpZGVu
dGljYWwgdG8gQnVyZydzIG1ldGhvZC4KK1RoaXMgYnJpbmdzIGRvd24gdGhlIGNvbXBsZXhpdHkg
b2YgQnVyZydzIG1ldGhvZCB0byBuZWFyIHRoYXQgb2YKK3RoZSBhdXRvY29ycmVsYXRpb24gbWV0
aG9kLgorVGhlIHNlY29uZCBkaWZmZXJlbmNlIGlzIHRoYXQgdGhlIHNpZ25hbCBpbiBlYWNoIHN1
YmZyYW1lIGlzIHNjYWxlZAorYnkgdGhlIGludmVyc2Ugb2YgdGhlIHJlc2lkdWFsIHF1YW50aXph
dGlvbiBzdGVwIHNpemUuICBTdWJmcmFtZXMgd2l0aAorYSBzbWFsbCBxdWFudGl6YXRpb24gc3Rl
cCBzaXplIHdpbGwgb24gYXZlcmFnZSBzcGVuZCBtb3JlIGJpdHMgZm9yIGEKK2dpdmVuIGFtb3Vu
dCBvZiByZXNpZHVhbCBlbmVyZ3kgdGhhbiBzdWJmcmFtZXMgd2l0aCBhIGxhcmdlIHN0ZXAgc2l6
ZS4KK1dpdGhvdXQgc2NhbGluZywgQnVyZydzIG1ldGhvZCBtaW5pbWl6ZXMgdGhlIHRvdGFsIHJl
c2lkdWFsIGVuZXJneSBpbgorYWxsIHN1YmZyYW1lcywgd2hpY2ggZG9lc24ndCBuZWNlc3Nhcmls
eSBtaW5pbWl6ZSB0aGUgdG90YWwgbnVtYmVyIG9mCitiaXRzIG5lZWRlZCBmb3IgY29kaW5nIHRo
ZSBxdWFudGl6ZWQgcmVzaWR1YWwuICBUaGUgcmVzaWR1YWwgZW5lcmd5CitvZiB0aGUgc2NhbGVk
IHN1YmZyYW1lcyBpcyBhIGJldHRlciBtZWFzdXJlIGZvciB0aGF0IG51bWJlciBvZgorYml0cy4K
KzwvdD4KKzwvc2VjdGlvbj4KKzwvc2VjdGlvbj4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0
bGU9J0xTRiBRdWFudGl6YXRpb24nIGFuY2hvcj0nbHNmX3F1YW50aXplcl9vdmVydmlld19zZWN0
aW9uJz4KKzx0PgorVW5saWtlIG1hbnkgb3RoZXIgc3BlZWNoIGNvZGVjcywgU0lMSyB1c2VzIHZh
cmlhYmxlIGJpdHJhdGUgY29kaW5nCitmb3IgdGhlIExTRnMuCitUaGlzIGltcHJvdmVzIHRoZSBh
dmVyYWdlIHJhdGUtZGlzdG9ydGlvbiAoUi1EKSB0cmFkZW9mZiBhbmQgcmVkdWNlcyBvdXRsaWVy
cy4KK1RoZSB2YXJpYWJsZSBiaXRyYXRlIGNvZGluZyBtaW5pbWl6ZXMgYSBsaW5lYXIgY29tYmlu
YXRpb24gb2YgdGhlIHdlaWdodGVkCitxdWFudGl6YXRpb24gZXJyb3JzIGFuZCB0aGUgYml0cmF0
ZS4KK1RoZSB3ZWlnaHRzIGZvciB0aGUgcXVhbnRpemF0aW9uIGVycm9ycyBhcmUgdGhlIEludmVy
c2UKK0hhcm1vbmljIE1lYW4gV2VpZ2h0aW5nIChJSE1XKSBmdW5jdGlvbiBwcm9wb3NlZCBieSBM
YXJvaWEgZXQgYWwuCisoc2VlIDx4cmVmIHRhcmdldD0ibGFyb2lhLWljYXNzcCIgLz4pLgorVGhl
c2Ugd2VpZ2h0cyBhcmUgcmVmZXJyZWQgdG8gaGVyZSBhcyBMYXJvaWEgd2VpZ2h0cy4KKzwvdD4K
Kzx0PgorVGhlIExTRiBxdWFudGl6ZXIgY29uc2lzdHMgb2YgdHdvIHN0YWdlcy4KK1RoZSBmaXJz
dCBzdGFnZSBpcyBhbiAodW53ZWlnaHRlZCkgdmVjdG9yIHF1YW50aXplciAoVlEpLCB3aXRoIGEK
K2NvZGVib29rIHNpemUgb2YgMzIgdmVjdG9ycy4KK1RoZSBxdWFudGl6YXRpb24gZXJyb3JzIGZv
ciB0aGUgY29kZWJvb2sgdmVjdG9yIGFyZSBzb3J0ZWQsIGFuZAorZm9yIHRoZSBOIGJlc3QgdmVj
dG9ycyBhIHNlY29uZCBzdGFnZSBxdWFudGl6ZXIgaXMgcnVuLgorQnkgdmFyeWluZyB0aGUgbnVt
YmVyIE4gYSB0cmFkZW9mZiBpcyBtYWRlIGJldHdlZW4gUi1EIHBlcmZvcm1hbmNlCithbmQgY29t
cHV0YXRpb25hbCBlZmZpY2llbmN5LgorRm9yIGVhY2ggb2YgdGhlIE4gY29kZWJvb2sgdmVjdG9y
cyB0aGUgTGFyb2lhIHdlaWdodHMgY29ycmVzcG9uZGluZwordG8gdGhhdCB2ZWN0b3IgKGFuZCBu
b3QgdG8gdGhlIGlucHV0IHZlY3RvcikgYXJlIGNhbGN1bGF0ZWQuCitUaGVuIHRoZSByZXNpZHVh
bCBiZXR3ZWVuIHRoZSBpbnB1dCBMU0YgdmVjdG9yIGFuZCB0aGUgY29kZWJvb2sKK3ZlY3RvciBp
cyBzY2FsZWQgYnkgdGhlIHNxdWFyZSByb290cyBvZiB0aGVzZSBMYXJvaWEgd2VpZ2h0cy4KK1Ro
aXMgc2NhbGluZyBwYXJ0aWFsbHkgbm9ybWFsaXplcyBlcnJvciBzZW5zaXRpdml0eSBmb3IgdGhl
CityZXNpZHVhbCB2ZWN0b3IsIHNvIHRoYXQgYSB1bmlmb3JtIHF1YW50aXplciB3aXRoIGZpeGVk
CitzdGVwIHNpemVzIGNhbiBiZSB1c2VkIGluIHRoZSBzZWNvbmQgc3RhZ2Ugd2l0aG91dCB0b28g
bXVjaAorcGVyZm9ybWFuY2UgbG9zcy4KK0FuZCBieSBzY2FsaW5nIHdpdGggTGFyb2lhIHdlaWdo
dHMgZGV0ZXJtaW5lZCBmcm9tIHRoZSBmaXJzdC1zdGFnZQorY29kZWJvb2sgdmVjdG9yLCB0aGUg
cHJvY2VzcyBjYW4gYmUgcmV2ZXJzZWQgaW4gdGhlIGRlY29kZXIuCis8L3Q+Cis8dD4KK1RoZSBz
ZWNvbmQgc3RhZ2UgdXNlcyBwcmVkaWN0aXZlIGRlbGF5ZWQgZGVjaXNpb24gc2NhbGFyCitxdWFu
dGl6YXRpb24uCitUaGUgcXVhbnRpemF0aW9uIGVycm9yIGlzIHdlaWdodGVkIGJ5IExhcm9pYSB3
ZWlnaHRzIGRldGVybWluZWQKK2Zyb20gdGhlIExTRiBpbnB1dCB2ZWN0b3IuCitUaGUgcHJlZGlj
dG9yIG11bHRpcGxpZXMgdGhlIHByZXZpb3VzIHF1YW50aXplZCByZXNpZHVhbCB2YWx1ZQorYnkg
YSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50IHRoYXQgZGVwZW5kcyBvbiB0aGUgdmVjdG9yIGluZGV4
IGZyb20gdGhlCitmaXJzdCBzdGFnZSBWUSBhbmQgb24gdGhlIGxvY2F0aW9uIGluIHRoZSBMU0Yg
dmVjdG9yLgorVGhlIHByZWRpY3Rpb24gaXMgc3VidHJhY3RlZCBmcm9tIHRoZSBMU0YgcmVzaWR1
YWwgdmFsdWUgYmVmb3JlCitxdWFudGl6aW5nIHRoZSByZXN1bHQsIGFuZCBhZGRlZCBiYWNrIGFm
dGVyd2FyZHMuCitUaGlzIHN1YnRyYWN0aW9uIGNhbiBiZSBpbnRlcnByZXRlZCBhcyBzaGlmdGlu
ZyB0aGUgcXVhbnRpemF0aW9uIGxldmVscworb2YgdGhlIHNjYWxhciBxdWFudGl6ZXIsIGFuZCBh
cyBhIHJlc3VsdCB0aGUgcXVhbnRpemF0aW9uIGVycm9yIG9mCitlYWNoIHZhbHVlIGRlcGVuZHMg
b24gdGhlIHF1YW50aXphdGlvbiBkZWNpc2lvbiBvZiB0aGUgcHJldmlvdXMgdmFsdWUuCitUaGlz
IGRlcGVuZGVuY3kgaXMgZXhwbG9pdGVkIGJ5IHRoZSBkZWxheWVkIGRlY2lzaW9uIG1lY2hhbmlz
bSB0bworc2VhcmNoIGZvciBhIHF1YW50aXphdGlvbiBzZXF1ZW5jeSB3aXRoIGJlc3QgUi1EIHBl
cmZvcm1hbmNlCit3aXRoIGEgVml0ZXJiaS1saWtlIGFsZ29yaXRobSA8eHJlZiB0YXJnZXQ9IlZp
dGVyYmkiLz4uCitUaGUgcXVhbnRpemVyIHByb2Nlc3NlcyB0aGUgcmVzaWR1YWwgTFNGIHZlY3Rv
ciBpbiByZXZlcnNlIG9yZGVyCisoaS5lLiwgaXQgc3RhcnRzIHdpdGggdGhlIGhpZ2hlc3QgcmVz
aWR1YWwgTFNGIHZhbHVlKS4KK1RoaXMgaXMgZG9uZSBiZWNhdXNlIHRoZSBwcmVkaWN0aW9uIHdv
cmtzIHNsaWdodGx5CitiZXR0ZXIgaW4gdGhlIHJldmVyc2UgZGlyZWN0aW9uLgorPC90PgorPHQ+
CitUaGUgcXVhbnRpemF0aW9uIGluZGV4IG9mIHRoZSBmaXJzdCBzdGFnZSBpcyBlbnRyb3B5IGNv
ZGVkLgorVGhlIHF1YW50aXphdGlvbiBzZXF1ZW5jZSBmcm9tIHRoZSBzZWNvbmQgc3RhZ2UgaXMg
YWxzbyBlbnRyb3B5Citjb2RlZCwgd2hlcmUgZm9yIGVhY2ggZWxlbWVudCB0aGUgcHJvYmFiaWxp
dHkgdGFibGUgaXMgY2hvc2VuCitkZXBlbmRpbmcgb24gdGhlIHZlY3RvciBpbmRleCBmcm9tIHRo
ZSBmaXJzdCBzdGFnZSBhbmQgdGhlIGxvY2F0aW9uCitvZiB0aGF0IGVsZW1lbnQgaW4gdGhlIExT
RiB2ZWN0b3IuCis8L3Q+CisKKzxzZWN0aW9uIHRpdGxlPSdMU0YgU3RhYmlsaXphdGlvbicgYW5j
aG9yPSdsc2Zfc3RhYmlsaXplcl9vdmVydmlld19zZWN0aW9uJz4KKzx0PgorSWYgdGhlIGlucHV0
IGlzIHN0YWJsZSwgZmluZGluZyB0aGUgYmVzdCBjYW5kaWRhdGUgdXN1YWxseSByZXN1bHRzIGlu
IGEKK3F1YW50aXplZCB2ZWN0b3IgdGhhdCBpcyBhbHNvIHN0YWJsZS4gQmVjYXVzZSBvZiB0aGUg
dHdvLXN0YWdlIGFwcHJvYWNoLAoraG93ZXZlciwgaXQgaXMgcG9zc2libGUgdGhhdCB0aGUgYmVz
dCBxdWFudGl6YXRpb24gY2FuZGlkYXRlIGlzIHVuc3RhYmxlLgorVGhlIGVuY29kZXIgYXBwbGll
cyB0aGUgc2FtZSBzdGFiaWxpemF0aW9uIHByb2NlZHVyZSBhcHBsaWVkIGJ5IHRoZSBkZWNvZGVy
CisgKHNlZSA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFiaWxpemF0aW9uIi8+IHRvIGVuc3Vy
ZSB0aGUgTFNGIHBhcmFtZXRlcnMKKyBhcmUgd2l0aGluIHRoZWlyIHZhbGlkIHJhbmdlLCBpbmNy
ZWFzaW5nbHkgc29ydGVkLCBhbmQgaGF2ZSBtaW5pbXVtCisgZGlzdGFuY2VzIGJldHdlZW4gZWFj
aCBvdGhlciBhbmQgdGhlIGJvcmRlciB2YWx1ZXMuCis8L3Q+Cis8L3NlY3Rpb24+Cis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIHRpdGxlPSdMVFAgUXVhbnRpemF0aW9uJyBhbmNob3I9J2x0cF9xdWFu
dGl6ZXJfb3ZlcnZpZXdfc2VjdGlvbic+Cis8dD4KK0ZvciB2b2ljZWQgZnJhbWVzLCB0aGUgcHJl
ZGljdGlvbiBhbmFseXNpcyBkZXNjcmliZWQgaW4KKzx4cmVmIHRhcmdldD0ncHJlZF9hbmFfdm9p
Y2VkX292ZXJ2aWV3X3NlY3Rpb24nIC8+IHJlc3VsdGVkIGluIGZvdXIgc2V0cworKG9uZSBzZXQg
cGVyIHN1YmZyYW1lKSBvZiBmaXZlIExUUCBjb2VmZmljaWVudHMsIHBsdXMgZm91ciB3ZWlnaHRp
bmcgbWF0cmljZXMuCitUaGUgTFRQIGNvZWZmaWNpZW50cyBmb3IgZWFjaCBzdWJmcmFtZSBhcmUg
cXVhbnRpemVkIHVzaW5nIGVudHJvcHkgY29uc3RyYWluZWQKK3ZlY3RvciBxdWFudGl6YXRpb24u
CitBIHRvdGFsIG9mIHRocmVlIHZlY3RvciBjb2RlYm9va3MgYXJlIGF2YWlsYWJsZSBmb3IgcXVh
bnRpemF0aW9uLCB3aXRoCitkaWZmZXJlbnQgcmF0ZS1kaXN0b3J0aW9uIHRyYWRlLW9mZnMuIFRo
ZSB0aHJlZSBjb2RlYm9va3MgaGF2ZSAxMCwgMjAsIGFuZAorNDAgdmVjdG9ycyBhbmQgYXZlcmFn
ZSByYXRlcyBvZiBhYm91dCAzLCA0LCBhbmQgNSBiaXRzIHBlciB2ZWN0b3IsIHJlc3BlY3RpdmVs
eS4KK0NvbnNlcXVlbnRseSwgdGhlIGZpcnN0IGNvZGVib29rIGhhcyBsYXJnZXIgYXZlcmFnZSBx
dWFudGl6YXRpb24gZGlzdG9ydGlvbiBhdAorYSBsb3dlciByYXRlLCB3aGVyZWFzIHRoZSBsYXN0
IGNvZGVib29rIGhhcyBzbWFsbGVyIGF2ZXJhZ2UgcXVhbnRpemF0aW9uCitkaXN0b3J0aW9uIGF0
IGEgaGlnaGVyIHJhdGUuCitHaXZlbiB0aGUgd2VpZ2h0aW5nIG1hdHJpeCBXX2x0cCBhbmQgTFRQ
IHZlY3RvciBiLCB0aGUgd2VpZ2h0ZWQgcmF0ZS1kaXN0b3J0aW9uCittZWFzdXJlIGZvciBhIGNv
ZGVib29rIHZlY3RvciBjYl9pIHdpdGggcmF0ZSByX2kgaXMgZ2l2ZSBieQorPGZpZ3VyZSBhbGln
bj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisgUkQgPSB1
ICogKGIgLSBjYl9pKScgKiBXX2x0cCAqIChiIC0gY2JfaSkgKyByX2ksCitdXT4KKzwvYXJ0d29y
az4KKzwvZmlndXJlPgord2hlcmUgdSBpcyBhIGZpeGVkLCBoZXVyaXN0aWNhbGx5LWRldGVybWlu
ZWQgcGFyYW1ldGVyIGJhbGFuY2luZyB0aGUgZGlzdG9ydGlvbgorYW5kIHJhdGUuCitXaGljaCBj
b2RlYm9vayBnaXZlcyB0aGUgYmVzdCBwZXJmb3JtYW5jZSBmb3IgYSBnaXZlbiBMVFAgdmVjdG9y
IGRlcGVuZHMgb24gdGhlCit3ZWlnaHRpbmcgbWF0cml4IGZvciB0aGF0IExUUCB2ZWN0b3IuCitG
b3IgZXhhbXBsZSwgZm9yIGEgbG93IHZhbHVlZCBXX2x0cCwgaXQgaXMgYWR2YW50YWdlb3VzIHRv
IHVzZSB0aGUgY29kZWJvb2sKK3dpdGggMTAgdmVjdG9ycyBhcyBpdCBoYXMgYSBsb3dlciBhdmVy
YWdlIHJhdGUuCitGb3IgYSBsYXJnZSBXX2x0cCwgb24gdGhlIG90aGVyIGhhbmQsIGl0IGlzIG9m
dGVuIGJldHRlciB0byB1c2UgdGhlIGNvZGVib29rCit3aXRoIDQwIHZlY3RvcnMsIGFzIGl0IGlz
IG1vcmUgbGlrZWx5IHRvIGNvbnRhaW4gdGhlIGJlc3QgY29kZWJvb2sgdmVjdG9yLgorVGhlIHdl
aWdodGluZyBtYXRyaXggV19sdHAgZGVwZW5kcyBtb3N0bHkgb24gdHdvIGFzcGVjdHMgb2YgdGhl
IGlucHV0IHNpZ25hbC4KK1RoZSBmaXJzdCBpcyB0aGUgcGVyaW9kaWNpdHkgb2YgdGhlIHNpZ25h
bDsgdGhlIG1vcmUgcGVyaW9kaWMsIHRoZSBsYXJnZXIgV19sdHAuCitUaGUgc2Vjb25kIGlzIHRo
ZSBjaGFuZ2UgaW4gc2lnbmFsIGVuZXJneSBpbiB0aGUgY3VycmVudCBzdWJmcmFtZSwgcmVsYXRp
dmUgdG8KK3RoZSBzaWduYWwgb25lIHBpdGNoIGxhZyBlYXJsaWVyLgorQSBkZWNheWluZyBlbmVy
Z3kgbGVhZHMgdG8gYSBsYXJnZXIgV19sdHAgdGhhbiBhbiBpbmNyZWFzaW5nIGVuZXJneS4KK0Jv
dGggYXNwZWN0cyBmbHVjdHVhdGUgcmVsYXRpdmVseSBzbG93bHksIHdoaWNoIGNhdXNlcyB0aGUg
V19sdHAgbWF0cmljZXMgZm9yCitkaWZmZXJlbnQgc3ViZnJhbWVzIG9mIG9uZSBmcmFtZSBvZnRl
biB0byBiZSBzaW1pbGFyLgorQmVjYXVzZSBvZiB0aGlzLCBvbmUgb2YgdGhlIHRocmVlIGNvZGVi
b29rcyB0eXBpY2FsbHkgZ2l2ZXMgZ29vZCBwZXJmb3JtYW5jZQorZm9yIGFsbCBzdWJmcmFtZXMs
IGFuZCB0aGVyZWZvcmUgdGhlIGNvZGVib29rIHNlYXJjaCBmb3IgdGhlIHN1YmZyYW1lIExUUAor
dmVjdG9ycyBpcyBjb25zdHJhaW5lZCB0byBvbmx5IGFsbG93IGNvZGVib29rIHZlY3RvcnMgdG8g
YmUgY2hvc2VuIGZyb20gdGhlCitzYW1lIGNvZGVib29rLCByZXN1bHRpbmcgaW4gYSByYXRlIHJl
ZHVjdGlvbi4KKzwvdD4KKworPHQ+CitUbyBmaW5kIHRoZSBiZXN0IGNvZGVib29rLCBlYWNoIG9m
IHRoZSB0aHJlZSB2ZWN0b3IgY29kZWJvb2tzIGlzCit1c2VkIHRvIHF1YW50aXplIGFsbCBzdWJm
cmFtZSBMVFAgdmVjdG9ycyBhbmQgcHJvZHVjZSBhIGNvbWJpbmVkCit3ZWlnaHRlZCByYXRlLWRp
c3RvcnRpb24gbWVhc3VyZSBmb3IgZWFjaCB2ZWN0b3IgY29kZWJvb2suCitUaGUgdmVjdG9yIGNv
ZGVib29rIHdpdGggdGhlIGxvd2VzdCBjb21iaW5lZCByYXRlLWRpc3RvcnRpb24KK292ZXIgYWxs
IHN1YmZyYW1lcyBpcyBjaG9zZW4uIFRoZSBxdWFudGl6ZWQgTFRQIHZlY3RvcnMgYXJlIHVzZWQK
K2luIHRoZSBub2lzZSBzaGFwaW5nIHF1YW50aXplciwgYW5kIHRoZSBpbmRleCBvZiB0aGUgY29k
ZWJvb2sKK3BsdXMgdGhlIGZvdXIgaW5kaWNlcyBmb3IgdGhlIGZvdXIgc3ViZnJhbWUgY29kZWJv
b2sgdmVjdG9ycworYXJlIHBhc3NlZCBvbiB0byB0aGUgcmFuZ2UgZW5jb2Rlci4KKzwvdD4KKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9J1ByZWZpbHRlcic+Cis8dD4KK0luIHRoZSBwcmVm
aWx0ZXIgdGhlIGlucHV0IHNpZ25hbCBpcyBmaWx0ZXJlZCB1c2luZyB0aGUgc3BlY3RyYWwgdmFs
bGV5CitkZS1lbXBoYXNpcyBmaWx0ZXIgY29lZmZpY2llbnRzIGZyb20gdGhlIG5vaXNlIHNoYXBp
bmcgYW5hbHlzaXMKKyhzZWUgPHhyZWYgdGFyZ2V0PSdub2lzZV9zaGFwaW5nX2FuYWx5c2lzX292
ZXJ2aWV3X3NlY3Rpb24nLz4pLgorQnkgYXBwbHlpbmcgb25seSB0aGUgbm9pc2Ugc2hhcGluZyBh
bmFseXNpcyBmaWx0ZXIgdG8gdGhlIGlucHV0IHNpZ25hbCwKK2l0IHByb3ZpZGVzIHRoZSBpbnB1
dCB0byB0aGUgbm9pc2Ugc2hhcGluZyBxdWFudGl6ZXIuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxz
ZWN0aW9uIHRpdGxlPSdOb2lzZSBTaGFwaW5nIFF1YW50aXplcic+Cis8dD4KK1RoZSBub2lzZSBz
aGFwaW5nIHF1YW50aXplciBpbmRlcGVuZGVudGx5IHNoYXBlcyB0aGUgc2lnbmFsIGFuZCBjb2Rp
bmcgbm9pc2UKK3NwZWN0cmEgdG8gb2J0YWluIGEgcGVyY2VwdHVhbGx5IGhpZ2hlciBxdWFsaXR5
IGF0IHRoZSBzYW1lIGJpdHJhdGUuCis8L3Q+Cis8dD4KK1RoZSBwcmVmaWx0ZXIgb3V0cHV0IHNp
Z25hbCBpcyBtdWx0aXBsaWVkIHdpdGggYSBjb21wZW5zYXRpb24gZ2FpbiBHIGNvbXB1dGVkCitp
biB0aGUgbm9pc2Ugc2hhcGluZyBhbmFseXNpcy4gVGhlbiB0aGUgb3V0cHV0IG9mIGEgc3ludGhl
c2lzIHNoYXBpbmcgZmlsdGVyCitpcyBhZGRlZCwgYW5kIHRoZSBvdXRwdXQgb2YgYSBwcmVkaWN0
aW9uIGZpbHRlciBpcyBzdWJ0cmFjdGVkIHRvIGNyZWF0ZSBhCityZXNpZHVhbCBzaWduYWwuCitU
aGUgcmVzaWR1YWwgc2lnbmFsIGlzIG11bHRpcGxpZWQgYnkgdGhlIGludmVyc2UgcXVhbnRpemVk
IHF1YW50aXphdGlvbiBnYWluCitmcm9tIHRoZSBub2lzZSBzaGFwaW5nIGFuYWx5c2lzLCBhbmQg
aW5wdXQgdG8gYSBzY2FsYXIgcXVhbnRpemVyLgorVGhlIHF1YW50aXphdGlvbiBpbmRpY2VzIG9m
IHRoZSBzY2FsYXIgcXVhbnRpemVyIHJlcHJlc2VudCBhIHNpZ25hbCBvZiBwdWxzZXMKK3RoYXQg
aXMgaW5wdXQgdG8gdGhlIHB5cmFtaWQgcmFuZ2UgZW5jb2Rlci4KK1RoZSBzY2FsYXIgcXVhbnRp
emVyIGFsc28gb3V0cHV0cyBhIHF1YW50aXphdGlvbiBzaWduYWwsIHdoaWNoIGlzIG11bHRpcGxp
ZWQKK2J5IHRoZSBxdWFudGl6ZWQgcXVhbnRpemF0aW9uIGdhaW4gZnJvbSB0aGUgbm9pc2Ugc2hh
cGluZyBhbmFseXNpcyB0byBjcmVhdGUKK2FuIGV4Y2l0YXRpb24gc2lnbmFsLgorVGhlIG91dHB1
dCBvZiB0aGUgcHJlZGljdGlvbiBmaWx0ZXIgaXMgYWRkZWQgdG8gdGhlIGV4Y2l0YXRpb24gc2ln
bmFsIHRvIGZvcm0KK3RoZSBxdWFudGl6ZWQgb3V0cHV0IHNpZ25hbCB5KG4pLgorVGhlIHF1YW50
aXplZCBvdXRwdXQgc2lnbmFsIHkobikgaXMgaW5wdXQgdG8gdGhlIHN5bnRoZXNpcyBzaGFwaW5n
IGFuZAorcHJlZGljdGlvbiBmaWx0ZXJzLgorPC90PgorPHQ+CitPcHRpb25hbGx5IHRoZSBub2lz
ZSBzaGFwaW5nIHF1YW50aXplciBvcGVyYXRlcyBpbiBhIGRlbGF5ZWQgZGVjaXNpb24KK21vZGUu
CitJbiB0aGlzIG1vZGUgaXQgdXNlcyBhIFZpdGVyYmkgYWxnb3JpdGhtIHRvIGtlZXAgdHJhY2sg
b2YKK211bHRpcGxlIHJvdW5kaW5nIGNob2ljZXMgaW4gdGhlIHF1YW50aXplciBhbmQgc2VsZWN0
IHRoZSBiZXN0CitvbmUgYWZ0ZXIgYSBkZWxheSBvZiAzMiBzYW1wbGVzLiAgVGhpcyBpbXByb3Zl
cyB0aGUgcmF0ZS9kaXN0b3J0aW9uCitwZXJmb3JtYW5jZSBvZiB0aGUgcXVhbnRpemVyLgorPC90
PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0nQ29uc3RhbnQgQml0cmF0ZSBNb2RlJz4K
Kzx0PgorICBTSUxLIHdhcyBkZXNpZ25lZCB0byBydW4gaW4gVmFyaWFibGUgQml0cmF0ZSAoVkJS
KSBtb2RlLiAgSG93ZXZlcgorICB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGFsc28gaGFz
IGEgQ29uc3RhbnQgQml0cmF0ZSAoQ0JSKSBtb2RlCisgIGZvciBTSUxLLiAgSW4gQ0JSIG1vZGUg
U0lMSyB3aWxsIGF0dGVtcHQgdG8gZW5jb2RlIGVhY2ggcGFja2V0IHdpdGgKKyAgbm8gbW9yZSB0
aGFuIHRoZSBhbGxvd2VkIG51bWJlciBvZiBiaXRzLiAgVGhlIE9wdXMgd3JhcHBlciBjb2RlCisg
IHRoZW4gcGFkcyB0aGUgYml0c3RyZWFtIGlmIGFueSB1bnVzZWQgYml0cyBhcmUgbGVmdCBpbiBT
SUxLIG1vZGUsIG9yCisgIGVuY29kZXMgdGhlIGhpZ2ggYmFuZCB3aXRoIHRoZSByZW1haW5pbmcg
bnVtYmVyIG9mIGJpdHMgaW4gSHlicmlkIG1vZGUuCisgIFRoZSBudW1iZXIgb2YgcGF5bG9hZCBi
aXRzIGlzIGFkanVzdGVkIGJ5IGNoYW5naW5nCisgIHRoZSBxdWFudGl6YXRpb24gZ2FpbnMgYW5k
IHRoZSByYXRlL2Rpc3RvcnRpb24gdHJhZGVvZmYgaW4gdGhlIG5vaXNlCisgIHNoYXBpbmcgcXVh
bnRpemVyLCBpbiBhbiBpdGVyYXRpdmUgbG9vcAorICBhcm91bmQgdGhlIG5vaXNlIHNoYXBpbmcg
cXVhbnRpemVyIGFuZCBlbnRyb3B5IGNvZGluZy4KKyAgQ29tcGFyZWQgdG8gdGhlIFNJTEsgVkJS
IG1vZGUsIHRoZSBDQlIgbW9kZSBoYXMgbG93ZXIKKyAgYXVkaW8gcXVhbGl0eSBhdCBhIGdpdmVu
IGF2ZXJhZ2UgYml0cmF0ZSwgYW5kIGFsc28gaGFzIGhpZ2hlcgorICBjb21wdXRhdGlvbmFsIGNv
bXBsZXhpdHkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgor
CisKKzxzZWN0aW9uIHRpdGxlPSJDRUxUIEVuY29kZXIiPgorPHQ+CitNb3N0IG9mIHRoZSBhc3Bl
Y3RzIG9mIHRoZSBDRUxUIGVuY29kZXIgY2FuIGJlIGRpcmVjdGx5IGRlcml2ZWQgZnJvbSB0aGUg
ZGVzY3JpcHRpb24KK29mIHRoZSBkZWNvZGVyLiBGb3IgZXhhbXBsZSwgdGhlIGZpbHRlcnMgYW5k
IHJvdGF0aW9ucyBpbiB0aGUgZW5jb2RlciBhcmUgc2ltcGx5IHRoZQoraW52ZXJzZSBvZiB0aGUg
b3BlcmF0aW9uIHBlcmZvcm1lZCBieSB0aGUgZGVjb2Rlci4gU2ltaWxhcmx5LCB0aGUgcXVhbnRp
emVycyBnZW5lcmFsbHkKK29wdGltaXplIGZvciB0aGUgbWVhbiBzcXVhcmUgZXJyb3IgKGJlY2F1
c2Ugbm9pc2Ugc2hhcGluZyBpcyBwYXJ0IG9mIHRoZSBiaXQtc3RyZWFtIGl0c2VsZiksCitzbyBu
byBzcGVjaWFsIHNlYXJjaCBpcyByZXF1aXJlZC4gRm9yIHRoaXMgcmVhc29uLCBvbmx5IHRoZSBs
ZXNzIHN0cmFpZ2h0Zm9yd2FyZCBhc3BlY3RzIG9mIHRoZQorZW5jb2RlciBhcmUgZGVzY3JpYmVk
IGhlcmUuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0icGl0Y2gtcHJlZmlsdGVyIiB0aXRsZT0i
UGl0Y2ggUHJlZmlsdGVyIj4KKzx0PlRoZSBwaXRjaCBwcmVmaWx0ZXIgaXMgYXBwbGllZCBhZnRl
ciB0aGUgcHJlLWVtcGhhc2lzLiBJdCBpcyBhcHBsaWVkCitpbiBzdWNoIGEgd2F5IGFzIHRvIGJl
IHRoZSBpbnZlcnNlIG9mIHRoZSBkZWNvZGVyJ3MgcG9zdC1maWx0ZXIuIFRoZSBtYWluIG5vbi1v
YnZpb3VzIGFzcGVjdCBvZiB0aGUKK3ByZWZpbHRlciBpcyB0aGUgc2VsZWN0aW9uIG9mIHRoZSBw
aXRjaCBwZXJpb2QuIFRoZSBwaXRjaCBzZWFyY2ggc2hvdWxkIGJlIG9wdGltaXplZCBmb3IgdGhl
Citmb2xsb3dpbmcgY3JpdGVyaWE6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5jb250aW51
aXR5OiBpdCBpcyBpbXBvcnRhbnQgdGhhdCB0aGUgcGl0Y2ggcGVyaW9kCitkb2VzIG5vdCBjaGFu
Z2UgYWJydXB0bHkgYmV0d2VlbiBmcmFtZXM7IGFuZDwvdD4KKzx0PmF2b2lkYW5jZSBvZiBwaXRj
aCBtdWx0aXBsZXM6IHdoZW4gdGhlIHBlcmlvZCB1c2VkIGlzIGEgbXVsdGlwbGUgb2YgdGhlIHJl
YWwgcGVyaW9kCisobG93ZXIgZnJlcXVlbmN5IGZ1bmRhbWVudGFsKSwgdGhlIHBvc3QtZmlsdGVy
IGxvc2VzIG1vc3Qgb2YgaXRzIGFiaWxpdHkgdG8gcmVkdWNlIG5vaXNlPC90PgorPC9saXN0Pgor
PC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Im5vcm1hbGl6YXRpb24iIHRpdGxl
PSJCYW5kcyBhbmQgTm9ybWFsaXphdGlvbiI+Cis8dD4KK1RoZSBNRENUIG91dHB1dCBpcyBkaXZp
ZGVkIGludG8gYmFuZHMgdGhhdCBhcmUgZGVzaWduZWQgdG8gbWF0Y2ggdGhlIGVhcidzIGNyaXRp
Y2FsCitiYW5kcyBmb3IgdGhlIHNtYWxsZXN0ICgyLjUmbmJzcDttcykgZnJhbWUgc2l6ZS4gVGhl
IGxhcmdlciBmcmFtZSBzaXplcyB1c2UgaW50ZWdlcgorbXVsdGlwbGVzIG9mIHRoZSAyLjUmbmJz
cDttcyBsYXlvdXQuIEZvciBlYWNoIGJhbmQsIHRoZSBlbmNvZGVyCitjb21wdXRlcyB0aGUgZW5l
cmd5IHRoYXQgd2lsbCBsYXRlciBiZSBlbmNvZGVkLiBFYWNoIGJhbmQgaXMgdGhlbiBub3JtYWxp
emVkIGJ5IHRoZQorc3F1YXJlIHJvb3Qgb2YgdGhlIDxzcGFueCBzdHlsZT0ic3Ryb25nIj51bnF1
YW50aXplZDwvc3Bhbng+IGVuZXJneSwgc3VjaCB0aGF0IGVhY2ggYmFuZCBub3cgZm9ybXMgYSB1
bml0IHZlY3RvciBYLgorVGhlIGVuZXJneSBhbmQgdGhlIG5vcm1hbGl6YXRpb24gYXJlIGNvbXB1
dGVkIGJ5IGNvbXB1dGVfYmFuZF9lbmVyZ2llcygpCithbmQgbm9ybWFsaXNlX2JhbmRzKCkgKGJh
bmRzLmMpLCByZXNwZWN0aXZlbHkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hv
cj0iZW5lcmd5LXF1YW50aXphdGlvbiIgdGl0bGU9IkVuZXJneSBFbnZlbG9wZSBRdWFudGl6YXRp
b24iPgorCis8dD4KK0VuZXJneSBxdWFudGl6YXRpb24gKGJvdGggY29hcnNlIGFuZCBmaW5lKSBj
YW4gYmUgZWFzaWx5IHVuZGVyc3Rvb2QgZnJvbSB0aGUgZGVjb2RpbmcgcHJvY2Vzcy4KK0ZvciBh
bGwgdXNlZnVsIGJpdHJhdGVzLCB0aGUgY29hcnNlIHF1YW50aXplciBhbHdheXMgY2hvb3NlcyB0
aGUgcXVhbnRpemVkIGxvZyBlbmVyZ3kgdmFsdWUgdGhhdAorbWluaW1pemVzIHRoZSBlcnJvciBm
b3IgZWFjaCBiYW5kLiBPbmx5IGF0IHZlcnkgbG93IHJhdGUgZG9lcyB0aGUgZW5jb2RlciBhbGxv
dyBsYXJnZXIgZXJyb3JzIHRvCittaW5pbWl6ZSB0aGUgcmF0ZSBhbmQgYXZvaWQgdXNpbmcgbW9y
ZSBiaXRzIHRoYW4gYXJlIGF2YWlsYWJsZS4gV2hlbiB0aGUKK2F2YWlsYWJsZSBDUFUgcmVxdWly
ZW1lbnRzIGFsbG93IGl0LCBpdCBpcyBiZXN0IHRvIHRyeSBlbmNvZGluZyB0aGUgY29hcnNlIGVu
ZXJneSBib3RoIHdpdGggYW5kIHdpdGhvdXQKK2ludGVyLWZyYW1lIHByZWRpY3Rpb24gc3VjaCB0
aGF0IHRoZSBiZXN0IHByZWRpY3Rpb24gbW9kZSBjYW4gYmUgc2VsZWN0ZWQuIFRoZSBvcHRpbWFs
IG1vZGUgZGVwZW5kcyBvbgordGhlIGNvZGluZyByYXRlLCB0aGUgYXZhaWxhYmxlIGJpdHJhdGUs
IGFuZCB0aGUgY3VycmVudCByYXRlIG9mIHBhY2tldCBsb3NzLgorPC90PgorCis8dD5UaGUgZmlu
ZSBlbmVyZ3kgcXVhbnRpemVyIGFsd2F5cyBjaG9vc2VzIHRoZSBxdWFudGl6ZWQgbG9nIGVuZXJn
eSB2YWx1ZSB0aGF0CittaW5pbWl6ZXMgdGhlIGVycm9yIGZvciBlYWNoIGJhbmQgYmVjYXVzZSB0
aGUgcmF0ZSBvZiB0aGUgZmluZSBxdWFudGl6YXRpb24gZGVwZW5kcyBvbmx5CitvbiB0aGUgYml0
IGFsbG9jYXRpb24gYW5kIG5vdCBvbiB0aGUgdmFsdWVzIHRoYXQgYXJlIGNvZGVkLgorPC90Pgor
PC9zZWN0aW9uPiA8IS0tIEVuZXJneSBxdWFudCAtLT4KKworPHNlY3Rpb24gdGl0bGU9IkJpdCBB
bGxvY2F0aW9uIj4KKzx0PlRoZSBlbmNvZGVyIG11c3QgdXNlIGV4YWN0bHkgdGhlIHNhbWUgYml0
IGFsbG9jYXRpb24gcHJvY2VzcyBhcyB1c2VkIGJ5IHRoZSBkZWNvZGVyCithbmQgZGVzY3JpYmVk
IGluIDx4cmVmIHRhcmdldD0iYWxsb2NhdGlvbiIvPi4gVGhlIHRocmVlIG1lY2hhbmlzbXMgdGhh
dCBjYW4gYmUgdXNlZCBieSB0aGUKK2VuY29kZXIgdG8gYWRqdXN0IHRoZSBiaXRyYXRlIG9uIGEg
ZnJhbWUtYnktZnJhbWUgYmFzaXMgYXJlIGJhbmQgYm9vc3QsIGFsbG9jYXRpb24gdHJpbSwKK2Fu
ZCBiYW5kIHNraXBwaW5nLgorPC90PgorCis8c2VjdGlvbiB0aXRsZT0iQmFuZCBCb29zdCI+Cis8
dD5UaGUgcmVmZXJlbmNlIGVuY29kZXIgbWFrZXMgYSBkZWNpc2lvbiB0byBib29zdCBhIGJhbmQg
d2hlbiB0aGUgZW5lcmd5IG9mIHRoYXQgYmFuZCBpcyBzaWduaWZpY2FudGx5CitoaWdoZXIgdGhh
biB0aGF0IG9mIHRoZSBuZWlnaGJvcmluZyBiYW5kcy4gTGV0IEVfaiBiZSB0aGUgbG9nLWVuZXJn
eSBvZiBiYW5kIGosIHdlIGRlZmluZQorPGxpc3Q+Cis8dD5EX2ogPSAyKkVfaiAtIEVfai0xIC0g
RV9qKzEgPC90PgorPC9saXN0PgorCitUaGUgYWxsb2NhdGlvbiBvZiBiYW5kIGogaXMgYm9vc3Rl
ZCBvbmNlIGlmIERfaiAmZ3Q7IHQxIGFuZCB0d2ljZSBpZiBEX2ogJmd0OyB0Mi4gRm9yIExNJmd0
Oz0xLCB0MT0yIGFuZCB0Mj00LAord2hpbGUgZm9yIExNJmx0OzEsIHQxPTMgYW5kIHQyPTUuCis8
L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IkFsbG9jYXRpb24gVHJpbSI+Cis8
dD5UaGUgYWxsb2NhdGlvbiB0cmltIGlzIGEgdmFsdWUgYmV0d2VlbiAwIGFuZCAxMCAoaW5jbHVz
aXZlbHkpIHRoYXQgY29udHJvbHMgdGhlIGFsbG9jYXRpb24KK2JhbGFuY2UgYmV0d2VlbiB0aGUg
bG93IGFuZCBoaWdoIGZyZXF1ZW5jaWVzLiBUaGUgZW5jb2RlciBzdGFydHMgd2l0aCBhIHNhZmUg
ImRlZmF1bHQiIG9mIDUKK2FuZCBkZXZpYXRlcyBmcm9tIHRoYXQgZGVmYXVsdCBpbiB0d28gZGlm
ZmVyZW50IHdheXMuIEZpcnN0IHRoZSB0cmltIGNhbiBkZXZpYXRlIGJ5ICsvLSAyCitkZXBlbmRp
bmcgb24gdGhlIHNwZWN0cmFsIHRpbHQgb2YgdGhlIGlucHV0IHNpZ25hbC4gRm9yIHNpZ25hbHMg
d2l0aCBtb3JlIGxvdyBmcmVxdWVuY2llcywgdGhlCit0cmltIGlzIGluY3JlYXNlZCBieSB1cCB0
byAyLCB3aGlsZSBmb3Igc2lnbmFscyB3aXRoIG1vcmUgaGlnaCBmcmVxdWVuY2llcywgdGhlIHRy
aW0gaXMKK2RlY3JlYXNlZCBieSB1cCB0byAyLgorRm9yIHN0ZXJlbyBpbnB1dHMsIHRoZSB0cmlt
IHZhbHVlIGNhbgorYmUgZGVjcmVhc2VkIGJ5IHVwIHRvIDQgd2hlbiB0aGUgaW50ZXItY2hhbm5l
bCBjb3JyZWxhdGlvbiBhdCBsb3cgZnJlcXVlbmN5IChmaXJzdCA4IGJhbmRzKQoraXMgaGlnaC4g
PC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQmFuZCBTa2lwcGluZyI+Cis8dD5U
aGUgZW5jb2RlciB1c2VzIGJhbmQgc2tpcHBpbmcgdG8gZW5zdXJlIHRoYXQgdGhlIHNoYXBlIG9m
IHRoZSBiYW5kcyBpcyBvbmx5IGNvZGVkCitpZiB0aGVyZSBpcyBhdCBsZWFzdCAxLzIgYml0IHBl
ciBzYW1wbGUgYXZhaWxhYmxlIGZvciB0aGUgUFZRLiBJZiBub3QsIHRoZW4gbm8gYml0IGlzIGFs
bG9jYXRlZAorYW5kIGZvbGRpbmcgaXMgdXNlZCBpbnN0ZWFkLiBUbyBlbnN1cmUgY29udGludWl0
eSBpbiB0aGUgYWxsb2NhdGlvbiwgc29tZSBhbW91bnQgb2YgaHlzdGVyZXNpcyBpcworYWRkZWQg
dG8gdGhlIHByb2Nlc3MsIHN1Y2ggdGhhdCBhIGJhbmQgdGhhdCByZWNlaXZlZCBQVlEgYml0cyBp
biB0aGUgcHJldmlvdXMgZnJhbWUgb25seSBuZWVkcyA3LzE2CitiaXQvc2FtcGxlIHRvIGJlIGNv
ZGVkIGZvciB0aGUgY3VycmVudCBmcmFtZSwgd2hpbGUgYSBiYW5kIHRoYXQgZGlkIG5vdCByZWNl
aXZlIFBWUSBiaXRzIGluIHRoZQorcHJldmlvdXMgZnJhbWVzIG5lZWRzIGF0IGxlYXN0IDkvMTYg
Yml0L3NhbXBsZSB0byBiZSBjb2RlZC48L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gdGl0bGU9IlN0ZXJlbyBEZWNpc2lvbnMiPgorPHQ+QmVjYXVzZSBDRUxUIGFwcGxp
ZXMgbWlkLXNpZGUgc3RlcmVvIGNvdXBsaW5nIGluIHRoZSBub3JtYWxpemVkIGRvbWFpbiwgaXQg
ZG9lcyBub3Qgc3VmZmVyIGZyb20KK2ltcG9ydGFudCBzdGVyZW8gaW1hZ2UgcHJvYmxlbXMgZXZl
biB3aGVuIHRoZSB0d28gY2hhbm5lbHMgYXJlIGNvbXBsZXRlbHkgdW5jb3JyZWxhdGVkLiBGb3Ig
dGhpcyByZWFzb24KK2l0IGlzIGFsd2F5cyBzYWZlIHRvIHVzZSBzdGVyZW8gY291cGxpbmcgb24g
YW55IGF1ZGlvIGZyYW1lLiBUaGF0IGJlaW5nIHNhaWQsIHRoZXJlIGFyZSBzb21lIGZyYW1lcwor
Zm9yIHdoaWNoIGR1YWwgKGluZGVwZW5kZW50KSBzdGVyZW8gaXMgc3RpbGwgbW9yZSBlZmZpY2ll
bnQuIFRoaXMgZGVjaXNpb24gaXMgbWFkZSBieSBjb21wYXJpbmcgdGhlIGVzdGltYXRlZAorZW50
cm9weSB3aXRoIGFuZCB3aXRob3V0IGNvdXBsaW5nIG92ZXIgdGhlIGZpcnN0IDEzIGJhbmRzLCB0
YWtpbmcgaW50byBhY2NvdW50IHRoZSBmYWN0IHRoYXQgYWxsIGJhbmRzIHdpdGgKK21vcmUgdGhh
biB0d28gTURDVCBiaW5zIHJlcXVpcmUgb25lIGV4dHJhIGRlZ3JlZSBvZiBmcmVlZG9tIHdoZW4g
Y29kZWQgaW4gbWlkLXNpZGUuIExldCBMMV9tcyBhbmQgTDFfbHIKK2JlIHRoZSBMMS1ub3JtIG9m
IHRoZSBtaWQtc2lkZSB2ZWN0b3IgYW5kIHRoZSBMMS1ub3JtIG9mIHRoZSBsZWZ0LXJpZ2h0IHZl
Y3RvciwgcmVzcGVjdGl2ZWx5LiBUaGUgZGVjaXNpb24KK3RvIHVzZSBtaWQtc2lkZSBpcyBtYWRl
IGlmIGFuZCBvbmx5IGlmCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCisgTDFfbXMgICAgICAgICAgTDFfbHIKKy0tLS0tLS0tICAgIDwg
ICAtLS0tLQorYmlucyArIEUgICAgICAgIGJpbnMKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgor
d2hlcmUgYmlucyBpcyB0aGUgbnVtYmVyIG9mIE1EQ1QgYmlucyBpbiB0aGUgZmlyc3QgMTMgYmFu
ZHMgYW5kIEUgaXMgdGhlIG51bWJlciBvZiBleHRyYSBkZWdyZWVzIG9mCitmcmVlZG9tIGZvciBt
aWQtc2lkZSBjb2RpbmcuIEZvciBMTT4xLCBFPTEzLCBvdGhlcndpc2UgRT01LgorPC90PgorCis8
dD5UaGUgcmVmZXJlbmNlIGVuY29kZXIgZGVjaWRlcyBvbiB0aGUgaW50ZW5zaXR5IHN0ZXJlbyB0
aHJlc2hvbGQgYmFzZWQgb24gdGhlIGJpdHJhdGUgYWxvbmUuIEFmdGVyCit0YWtpbmcgaW50byBh
Y2NvdW50IHRoZSBmcmFtZSBzaXplIGJ5IHN1YnRyYWN0aW5nIDgwIGJpdHMgcGVyIGZyYW1lIGZv
ciBjb2Fyc2UgZW5lcmd5LCB0aGUgZmlyc3QKK2JhbmQgdXNpbmcgaW50ZW5zaXR5IGNvZGluZyBp
cyBhcyBmb2xsb3dzOgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0iaW50ZW5zaXR5LXRocmVz
aG9sZHMiCisgdGl0bGU9IlRocmVzaG9sZHMgZm9yIEludGVuc2l0eSBTdGVyZW8iPgorPHR0Y29s
IGFsaWduPSdjZW50ZXInPmJpdHJhdGUgKGtiL3MpPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0nY2Vu
dGVyJz5zdGFydCBiYW5kPC90dGNvbD4KKzxjPiZsdDszNTwvYz4gICAgICA8Yz44PC9jPgorPGM+
MzUtNTA8L2M+ICAgICAgPGM+MTI8L2M+Cis8Yz41MC02ODwvYz4gICAgICA8Yz4xNjwvYz4KKzxj
Pjg0LTg0PC9jPiAgICAgIDxjPjE4PC9jPgorPGM+ODQtMTAyPC9jPiAgICAgPGM+MTk8L2M+Cis8
Yz4xMDItMTMwPC9jPiAgICAgPGM+MjA8L2M+Cis8Yz4mZ3Q7MTMwPC9jPiAgICAgPGM+ZGlzYWJs
ZWQ8L2M+Cis8L3RleHR0YWJsZT4KKworCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJU
aW1lLUZyZXF1ZW5jeSBEZWNpc2lvbiI+Cis8dD4KK1RoZSBjaG9pY2Ugb2YgdGltZS1mcmVxdWVu
Y3kgcmVzb2x1dGlvbiB1c2VkIGluIDx4cmVmIHRhcmdldD0idGYtY2hhbmdlIj48L3hyZWY+IGlz
IGJhc2VkIG9uCitSLUQgb3B0aW1pemF0aW9uLiBUaGUgZGlzdG9ydGlvbiBpcyB0aGUgTDEtbm9y
bSAoc3VtIG9mIGFic29sdXRlIHZhbHVlcykgb2YgZWFjaCBiYW5kCithZnRlciBlYWNoIFRGIHJl
c29sdXRpb24gdW5kZXIgY29uc2lkZXJhdGlvbi4gVGhlIEwxIG5vcm0gaXMgdXNlZCBiZWNhdXNl
IGl0IHJlcHJlc2VudHMgdGhlIGVudHJvcHkKK2ZvciBhIExhcGxhY2lhbiBzb3VyY2UuIFRoZSBu
dW1iZXIgb2YgYml0cyByZXF1aXJlZCB0byBjb2RlIGEgY2hhbmdlIGluIFRGIHJlc29sdXRpb24g
YmV0d2VlbgordHdvIGJhbmRzIGlzIGhpZ2hlciB0aGFuIHRoZSBjb3N0IG9mIGhhdmluZyB0aG9z
ZSB0d28gYmFuZHMgdXNlIHRoZSBzYW1lIHJlc29sdXRpb24sIHdoaWNoIGlzCit3aGF0IHJlcXVp
cmVzIHRoZSBSLUQgb3B0aW1pemF0aW9uLiBUaGUgb3B0aW1hbCBkZWNpc2lvbiBpcyBjb21wdXRl
ZCB1c2luZyB0aGUgVml0ZXJiaSBhbGdvcml0aG0uCitTZWUgdGZfYW5hbHlzaXMoKSBpbiBjZWx0
L2NlbHQuYy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IlNwcmVhZGluZyBW
YWx1ZXMgRGVjaXNpb24iPgorPHQ+CitUaGUgY2hvaWNlIG9mIHRoZSBzcHJlYWRpbmcgdmFsdWUg
aW4gPHhyZWYgdGFyZ2V0PSJzcHJlYWQgdmFsdWVzIj48L3hyZWY+IGhhcyBhbgoraW1wYWN0IG9u
IHRoZSBuYXR1cmUgb2YgdGhlIGNvZGluZyBub2lzZSBpbnRyb2R1Y2VkIGJ5IENFTFQuIFRoZSBs
YXJnZXIgdGhlIGZfciB2YWx1ZSwgdGhlCitsb3dlciB0aGUgaW1wYWN0IG9mIHRoZSByb3RhdGlv
biwgYW5kIHRoZSBtb3JlIHRvbmFsIHRoZSBjb2Rpbmcgbm9pc2UuIFRoZQorbW9yZSB0b25hbCB0
aGUgc2lnbmFsLCB0aGUgbW9yZSB0b25hbCB0aGUgbm9pc2Ugc2hvdWxkIGJlLCBzbyB0aGUgQ0VM
VCBlbmNvZGVyIGRldGVybWluZXMKK3RoZSBvcHRpbWFsIHZhbHVlIGZvciBmX3IgYnkgZXN0aW1h
dGluZyBob3cgdG9uYWwgdGhlIHNpZ25hbCBpcy4gVGhlIHRvbmFsaXR5IGVzdGltYXRlCitpcyBi
YXNlZCBvbiBkaXNjcmV0ZSBwZGYgKDQtYmluIGhpc3RvZ3JhbSkgb2YgZWFjaCBiYW5kLiBCYW5k
cyB0aGF0IGhhdmUgYSBsYXJnZSBudW1iZXIgb2Ygc21hbGwKK3ZhbHVlcyBhcmUgY29uc2lkZXJl
ZCBtb3JlIHRvbmFsIGFuZCBhIGRlY2lzaW9uIGlzIG1hZGUgYnkgY29tYmluaW5nIGFsbCBiYW5k
cyB3aXRoIG1vcmUgdGhhbgorOCBzYW1wbGVzLiBTZWUgc3ByZWFkaW5nX2RlY2lzaW9uKCkgaW4g
Y2VsdC9iYW5kcy5jLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InB2cSIg
dGl0bGU9IlNwaGVyaWNhbCBWZWN0b3IgUXVhbnRpemF0aW9uIj4KKzx0PkNFTFQgdXNlcyBhIFB5
cmFtaWQgVmVjdG9yIFF1YW50aXphdGlvbiAoUFZRKSA8eHJlZiB0YXJnZXQ9IlBWUSI+PC94cmVm
PgorY29kZWJvb2sgZm9yIHF1YW50aXppbmcgdGhlIGRldGFpbHMgb2YgdGhlIHNwZWN0cnVtIGlu
IGVhY2ggYmFuZCB0aGF0IGhhdmUgbm90CitiZWVuIHByZWRpY3RlZCBieSB0aGUgcGl0Y2ggcHJl
ZGljdG9yLiBUaGUgUFZRIGNvZGVib29rIGNvbnNpc3RzIG9mIGFsbCBzdW1zCitvZiBLIHNpZ25l
ZCBwdWxzZXMgaW4gYSB2ZWN0b3Igb2YgTiBzYW1wbGVzLCB3aGVyZSB0d28gcHVsc2VzIGF0IHRo
ZSBzYW1lIHBvc2l0aW9uCithcmUgcmVxdWlyZWQgdG8gaGF2ZSB0aGUgc2FtZSBzaWduLiBUaHVz
IHRoZSBjb2RlYm9vayBpbmNsdWRlcworYWxsIGludGVnZXIgY29kZXZlY3RvcnMgeSBvZiBOIGRp
bWVuc2lvbnMgdGhhdCBzYXRpc2Z5IHN1bShhYnMoeShqKSkpID0gSy4KKzwvdD4KKworPHQ+CitJ
biBiYW5kcyB3aGVyZSB0aGVyZSBhcmUgc3VmZmljaWVudCBiaXRzIGFsbG9jYXRlZCBQVlEgaXMg
dXNlZCB0byBlbmNvZGUKK3RoZSB1bml0IHZlY3RvciB0aGF0IHJlc3VsdHMgZnJvbSB0aGUgbm9y
bWFsaXphdGlvbiBpbgorPHhyZWYgdGFyZ2V0PSJub3JtYWxpemF0aW9uIj48L3hyZWY+IGRpcmVj
dGx5LiBHaXZlbiBhIFBWUSBjb2RldmVjdG9yIHksCit0aGUgdW5pdCB2ZWN0b3IgWCBpcyBvYnRh
aW5lZCBhcyBYID0geS98fHl8fCwgd2hlcmUgfHwufHwgZGVub3RlcyB0aGUKK0wyIG5vcm0uCis8
L3Q+CisKKworPHNlY3Rpb24gYW5jaG9yPSJwdnEtc2VhcmNoIiB0aXRsZT0iUFZRIFNlYXJjaCI+
CisKKzx0PgorVGhlIHNlYXJjaCBmb3IgdGhlIGJlc3QgY29kZXZlY3RvciB5IGlzIHBlcmZvcm1l
ZCBieSBhbGdfcXVhbnQoKQorKHZxLmMpLiBUaGVyZSBhcmUgc2V2ZXJhbCBwb3NzaWJsZSBhcHBy
b2FjaGVzIHRvIHRoZQorc2VhcmNoLCB3aXRoIGEgdHJhZGUtb2ZmIGJldHdlZW4gcXVhbGl0eSBh
bmQgY29tcGxleGl0eS4gVGhlIG1ldGhvZCB1c2VkIGluIHRoZSByZWZlcmVuY2UKK2ltcGxlbWVu
dGF0aW9uIGNvbXB1dGVzIGFuIGluaXRpYWwgY29kZXdvcmQgeTEgYnkgcHJvamVjdGluZyB0aGUg
bm9ybWFsaXplZCBzcGVjdHJ1bQorWCBvbnRvIHRoZSBjb2RlYm9vayBweXJhbWlkIG9mIEstMSBw
dWxzZXM6Cis8L3Q+Cis8dD4KK3kwID0gdHJ1bmNhdGVfdG93YXJkc196ZXJvKCAoSy0xKSAqIFgg
LyBzdW0oYWJzKFgpKSkKKzwvdD4KKworPHQ+CitEZXBlbmRpbmcgb24gTiwgSyBhbmQgdGhlIGlu
cHV0IGRhdGEsIHRoZSBpbml0aWFsIGNvZGV3b3JkIHkwIG1heSBjb250YWluIGZyb20KKzAgdG8g
Sy0xIG5vbi16ZXJvIHZhbHVlcy4gQWxsIHRoZSByZW1haW5pbmcgcHVsc2VzLCB3aXRoIHRoZSBl
eGNlcHRpb24gb2YgdGhlIGxhc3Qgb25lLAorYXJlIGZvdW5kIGl0ZXJhdGl2ZWx5IHdpdGggYSBn
cmVlZHkgc2VhcmNoIHRoYXQgbWluaW1pemVzIHRoZSBub3JtYWxpemVkIGNvcnJlbGF0aW9uCiti
ZXR3ZWVuIHkgYW5kIFg6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICBUCitKID0gLVggKiB5IC8gfHx5fHwKK11dPjwvYXJ0
d29yaz4KKzwvZmlndXJlPgorPC90PgorCis8dD4KK1RoZSBzZWFyY2ggZGVzY3JpYmVkIGFib3Zl
IGlzIGNvbnNpZGVyZWQgdG8gYmUgYSBnb29kIHRyYWRlLW9mZiBiZXR3ZWVuIHF1YWxpdHkKK2Fu
ZCBjb21wdXRhdGlvbmFsIGNvc3QuIEhvd2V2ZXIsIHRoZXJlIGFyZSBvdGhlciBwb3NzaWJsZSB3
YXlzIHRvIHNlYXJjaCB0aGUgUFZRCitjb2RlYm9vayBhbmQgdGhlIGltcGxlbWVudGVycyBNQVkg
dXNlIGFueSBvdGhlciBzZWFyY2ggbWV0aG9kcy4gU2VlIGFsZ19xdWFudCgpIGluIGNlbHQvdnEu
Yy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJjd3JzLWVuY29kZXIiIHRp
dGxlPSJQVlEgRW5jb2RpbmciPgorCis8dD4KK1RoZSB2ZWN0b3IgdG8gZW5jb2RlLCBYLCBpcyBj
b252ZXJ0ZWQgaW50byBhbiBpbmRleCBpIHN1Y2ggdGhhdAorIDAmbmJzcDsmbHQ7PSZuYnNwO2km
bmJzcDsmbHQ7Jm5ic3A7VihOLEspIGFzIGZvbGxvd3MuCitMZXQgaSZuYnNwOz0mbmJzcDswIGFu
ZCBrJm5ic3A7PSZuYnNwOzAuCitUaGVuIGZvciBqJm5ic3A7PSZuYnNwOyhOJm5ic3A7LSZuYnNw
OzEpIGRvd24gdG8gMCwgaW5jbHVzaXZlLCBkbzoKKzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0
PgorSWYgayZuYnNwOz4mbmJzcDswLCBzZXQKKyBpJm5ic3A7PSZuYnNwO2kmbmJzcDsrJm5ic3A7
KFYoTi1qLTEsay0xKSZuYnNwOysmbmJzcDtWKE4taixrLTEpKS8yLgorPC90PgorPHQ+U2V0IGsm
bmJzcDs9Jm5ic3A7ayZuYnNwOysmbmJzcDthYnMoWFtqXSkuPC90PgorPHQ+CitJZiBYW2pdJm5i
c3A7Jmx0OyZuYnNwOzAsIHNldAorIGkmbmJzcDs9Jm5ic3A7aSZuYnNwOysmbmJzcDsoVihOLWot
MSxrKSZuYnNwOysmbmJzcDtWKE4taixrKSkvMi4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+
CitUaGUgaW5kZXggaSBpcyB0aGVuIGVuY29kZWQgdXNpbmcgdGhlIHByb2NlZHVyZSBpbgorIDx4
cmVmIHRhcmdldD0iZW5jb2RpbmctaW50cyIvPiB3aXRoIGZ0Jm5ic3A7PSZuYnNwO1YoTixLKS4K
KzwvdD4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKworCisKKworPC9zZWN0aW9uPgor
Cis8L3NlY3Rpb24+CisKKworPHNlY3Rpb24gYW5jaG9yPSJjb25mb3JtYW5jZSIgdGl0bGU9IkNv
bmZvcm1hbmNlIj4KKworPHQ+CitJdCBpcyBvdXIgaW50ZW50aW9uIHRvIGFsbG93IHRoZSBncmVh
dGVzdCBwb3NzaWJsZSBjaG9pY2Ugb2YgZnJlZWRvbSBpbgoraW1wbGVtZW50aW5nIHRoZSBzcGVj
aWZpY2F0aW9uLiBGb3IgdGhpcyByZWFzb24sIG91dHNpZGUgb2YgdGhlIGV4Y2VwdGlvbnMKK25v
dGVkIGluIHRoaXMgc2VjdGlvbiwgY29uZm9ybWFuY2UgaXMgZGVmaW5lZCB0aHJvdWdoIHRoZSBy
ZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uIG9mIHRoZSBkZWNvZGVyIHByb3ZpZGVkIGluIDx4cmVm
IHRhcmdldD0icmVmLWltcGxlbWVudGF0aW9uIi8+LgorQWx0aG91Z2ggdGhpcyBkb2N1bWVudCBp
bmNsdWRlcyBhbiBFbmdsaXNoIGRlc2NyaXB0aW9uIG9mIHRoZSBjb2RlYywgc2hvdWxkCit0aGUg
ZGVzY3JpcHRpb24gY29udHJhZGljdCB0aGUgc291cmNlIGNvZGUgb2YgdGhlIHJlZmVyZW5jZSBp
bXBsZW1lbnRhdGlvbiwKK3RoZSBsYXR0ZXIgc2hhbGwgdGFrZSBwcmVjZWRlbmNlLgorPC90Pgor
Cis8dD4KK0NvbXBsaWFuY2Ugd2l0aCB0aGlzIHNwZWNpZmljYXRpb24gbWVhbnMgdGhhdCBpbiBh
ZGRpdGlvbiB0byBmb2xsb3dpbmcgdGhlIG5vcm1hdGl2ZSBrZXl3b3JkcyBpbiB0aGlzIGRvY3Vt
ZW50LAorIGEgZGVjb2RlcidzIG91dHB1dCBNVVNUIGFsc28gYmUKKyB3aXRoaW4gdGhlIHRocmVz
aG9sZHMgc3BlY2lmaWVkIGJ5IHRoZSBvcHVzX2NvbXBhcmUuYyB0b29sIChpbmNsdWRlZAorIHdp
dGggdGhlIGNvZGUpIHdoZW4gY29tcGFyZWQgdG8gdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlv
biBmb3IgZWFjaCBvZiB0aGUKKyB0ZXN0IHZlY3RvcnMgcHJvdmlkZWQgKHNlZSA8eHJlZiB0YXJn
ZXQ9InRlc3QtdmVjdG9ycyI+PC94cmVmPikgYW5kIGZvciBlYWNoIG91dHB1dAorIHNhbXBsaW5n
IHJhdGUgYW5kIGNoYW5uZWwgY291bnQgc3VwcG9ydGVkLiBJbiBhZGRpdGlvbiwgYSBjb21wbGlh
bnQKKyBkZWNvZGVyIGltcGxlbWVudGF0aW9uIE1VU1QgaGF2ZSB0aGUgc2FtZSBmaW5hbCByYW5n
ZSBkZWNvZGVyIHN0YXRlIGFzIHRoYXQgb2YgdGhlCisgcmVmZXJlbmNlIGRlY29kZXIuIEl0IGlz
IHRoZXJlZm9yZSBSRUNPTU1FTkRFRCB0aGF0IHRoZQorIGRlY29kZXIgaW1wbGVtZW50IHRoZSBz
YW1lIGZ1bmN0aW9uYWwgYmVoYXZpb3IgYXMgdGhlIHJlZmVyZW5jZS4KKworIEEgZGVjb2RlciBp
bXBsZW1lbnRhdGlvbiBpcyBub3QgcmVxdWlyZWQgdG8gc3VwcG9ydCBhbGwgb3V0cHV0IHNhbXBs
aW5nCisgcmF0ZXMgb3IgYWxsIG91dHB1dCBjaGFubmVsIGNvdW50cy4KKzwvdD4KKworPHNlY3Rp
b24gdGl0bGU9IlRlc3RpbmciPgorPHQ+CitVc2luZyB0aGUgcmVmZXJlbmNlIGNvZGUgcHJvdmlk
ZWQgaW4gPHhyZWYgdGFyZ2V0PSJyZWYtaW1wbGVtZW50YXRpb24iPjwveHJlZj4sCithIHRlc3Qg
dmVjdG9yIGNhbiBiZSBkZWNvZGVkIHdpdGgKKzxsaXN0PgorPHQ+b3B1c19kZW1vIC1kICZsdDty
YXRlJmd0OyAmbHQ7Y2hhbm5lbHMmZ3Q7IHRlc3R2ZWN0b3JYLmJpdCB0ZXN0WC5vdXQ8L3Q+Cis8
L2xpc3Q+Cit3aGVyZSAmbHQ7cmF0ZSZndDsgaXMgdGhlIHNhbXBsaW5nIHJhdGUgYW5kIGNhbiBi
ZSA4MDAwLCAxMjAwMCwgMTYwMDAsIDI0MDAwLCBvciA0ODAwMCwgYW5kCismbHQ7Y2hhbm5lbHMm
Z3Q7IGlzIDEgZm9yIG1vbm8gb3IgMiBmb3Igc3RlcmVvLgorPC90PgorCis8dD4KK0lmIHRoZSBy
YW5nZSBkZWNvZGVyIHN0YXRlIGlzIGluY29ycmVjdCBmb3Igb25lIG9mIHRoZSBmcmFtZXMsIHRo
ZSBkZWNvZGVyIHdpbGwgZXhpdCB3aXRoCisiRXJyb3I6IFJhbmdlIGNvZGVyIHN0YXRlIG1pc21h
dGNoIGJldHdlZW4gZW5jb2RlciBhbmQgZGVjb2RlciIuIElmIHRoZSBkZWNvZGVyIHN1Y2NlZWRz
LCB0aGVuCit0aGUgb3V0cHV0IGNhbiBiZSBjb21wYXJlZCB3aXRoIHRoZSAicmVmZXJlbmNlIiBv
dXRwdXQgd2l0aAorPGxpc3Q+Cis8dD5vcHVzX2NvbXBhcmUgLXMgLXIgJmx0O3JhdGUmZ3Q7IHRl
c3R2ZWN0b3JYLmRlYyB0ZXN0WC5vdXQ8L3Q+Cis8L2xpc3Q+Citmb3Igc3RlcmVvIG9yCis8bGlz
dD4KKzx0Pm9wdXNfY29tcGFyZSAtciAmbHQ7cmF0ZSZndDsgdGVzdHZlY3RvclguZGVjIHRlc3RY
Lm91dDwvdD4KKzwvbGlzdD4KK2ZvciBtb25vLgorPC90PgorCis8dD5JbiBhZGRpdGlvbiB0byBp
bmRpY2F0aW5nIHdoZXRoZXIgdGhlIHRlc3QgdmVjdG9yIGNvbXBhcmlzb24gcGFzc2VzLCB0aGUg
b3B1c19jb21wYXJlIHRvb2wKK291dHB1dHMgYW4gIk9wdXMgcXVhbGl0eSBtZXRyaWMiIHRoYXQg
aW5kaWNhdGVzIGhvdyB3ZWxsIHRoZSB0ZXN0ZWQgZGVjb2RlciBtYXRjaGVzIHRoZQorcmVmZXJl
bmNlIGltcGxlbWVudGF0aW9uLiBBIHF1YWxpdHkgb2YgMCBjb3JyZXNwb25kcyB0byB0aGUgcGFz
c2luZyB0aHJlc2hvbGQsIHdoaWxlCithIHF1YWxpdHkgb2YgMTAwIGlzIHRoZSBoaWdoZXN0IHBv
c3NpYmxlIHZhbHVlIGFuZCBtZWFucyB0aGF0IHRoZSBvdXRwdXQgb2YgdGhlIHRlc3RlZCBkZWNv
ZGVyIGlzIGlkZW50aWNhbCB0byB0aGUgcmVmZXJlbmNlCitpbXBsZW1lbnRhdGlvbi4gVGhlIHBh
c3NpbmcgdGhyZXNob2xkIChxdWFsaXR5IDApIHdhcyBjYWxpYnJhdGVkIGluIHN1Y2ggYSB3YXkg
dGhhdCBpdCBjb3JyZXNwb25kcyB0bworYWRkaXRpdmUgd2hpdGUgbm9pc2Ugd2l0aCBhIDQ4IGRC
IFNOUiAoc2ltaWxhciB0byB3aGF0IGNhbiBiZSBvYnRhaW5lZCBvbiBhIGNhc3NldHRlIGRlY2sp
LgorSXQgaXMgc3RpbGwgcG9zc2libGUgZm9yIGFuIGltcGxlbWVudGF0aW9uIHRvIHNvdW5kIHZl
cnkgZ29vZCB3aXRoIHN1Y2ggYSBsb3cgcXVhbGl0eSBtZWFzdXJlCisoZS5nLiBpZiB0aGUgZGV2
aWF0aW9uIGlzIGR1ZSB0byBpbmF1ZGlibGUgcGhhc2UgZGlzdG9ydGlvbiksIGJ1dCB1bmxlc3Mg
dGhpcyBpcyB2ZXJpZmllZCBieQorbGlzdGVuaW5nIHRlc3RzLCBpdCBpcyBSRUNPTU1FTkRFRCB0
aGF0IGltcGxlbWVudGF0aW9ucyBhY2hpZXZlIGEgcXVhbGl0eSBhYm92ZSA5MCBmb3IgNDgmbmJz
cDtrSHoKK2RlY29kaW5nLiBGb3Igb3RoZXIgc2FtcGxpbmcgcmF0ZXMsIGl0IGlzIG5vcm1hbCBm
b3IgdGhlIHF1YWxpdHkgbWV0cmljIHRvIGJlIGxvd2VyCisodHlwaWNhbGx5IGFzIGxvdyBhcyA1
MCBldmVuIGZvciBhIGdvb2QgaW1wbGVtZW50YXRpb24pIGJlY2F1c2Ugb2YgaGFybWxlc3MgbWlz
bWF0Y2ggd2l0aAordGhlIGRlbGF5IGFuZCBwaGFzZSBvZiB0aGUgaW50ZXJuYWwgc2FtcGxpbmcg
cmF0ZSBjb252ZXJzaW9uLgorPC90PgorCis8dD4KK09uIFBPU0lYIGVudmlyb25tZW50cywgdGhl
IHJ1bl92ZWN0b3JzLnNoIHNjcmlwdCBjYW4gYmUgdXNlZCB0byB2ZXJpZnkgYWxsIHRlc3QKK3Zl
Y3RvcnMuIFRoaXMgY2FuIGJlIGRvbmUgd2l0aAorPGxpc3Q+Cis8dD5ydW5fdmVjdG9ycy5zaCAm
bHQ7ZXhlYyBwYXRoJmd0OyAmbHQ7dmVjdG9yIHBhdGgmZ3Q7ICZsdDtyYXRlJmd0OzwvdD4KKzwv
bGlzdD4KK3doZXJlICZsdDtleGVjIHBhdGgmZ3Q7IGlzIHRoZSBkaXJlY3Rvcnkgd2hlcmUgdGhl
IG9wdXNfZGVtbyBhbmQgb3B1c19jb21wYXJlIGV4ZWN1dGFibGVzCithcmUgYnVpbHQgYW5kICZs
dDt2ZWN0b3IgcGF0aCZndDsgaXMgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRoZSB0ZXN0IHZl
Y3RvcnMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ib3B1cy1jdXN0b20i
IHRpdGxlPSJPcHVzIEN1c3RvbSI+Cis8dD4KK09wdXMgQ3VzdG9tIGlzIGFuIE9QVElPTkFMIHBh
cnQgb2YgdGhlIHNwZWNpZmljYXRpb24gdGhhdCBpcyBkZWZpbmVkIHRvCitoYW5kbGUgc3BlY2lh
bCBzYW1wbGUgcmF0ZXMgYW5kIGZyYW1lIHJhdGVzIHRoYXQgYXJlIG5vdCBzdXBwb3J0ZWQgYnkg
dGhlCittYWluIE9wdXMgc3BlY2lmaWNhdGlvbi4gVXNlIG9mIE9wdXMgQ3VzdG9tIGlzIGRpc2Nv
dXJhZ2VkIGZvciBhbGwgYnV0IHZlcnkKK3NwZWNpYWwgYXBwbGljYXRpb25zIGZvciB3aGljaCBh
IGZyYW1lIHNpemUgZGlmZmVyZW50IGZyb20gMi41LCA1LCAxMCwgb3IgMjAmbmJzcDttcyBpcwor
bmVlZGVkIChmb3IgZWl0aGVyIGNvbXBsZXhpdHkgb3IgbGF0ZW5jeSByZWFzb25zKS4gQmVjYXVz
ZSBPcHVzIEN1c3RvbSBpcworb3B0aW9uYWwsIHN0cmVhbXMgZW5jb2RlZCB1c2luZyBPcHVzIEN1
c3RvbSBjYW5ub3QgYmUgZXhwZWN0ZWQgdG8gYmUgZGVjb2RhYmxlIGJ5IGFsbCBPcHVzCitpbXBs
ZW1lbnRhdGlvbnMuIEFsc28sIGJlY2F1c2Ugbm8gaW4tYmFuZCBtZWNoYW5pc20gZXhpc3RzIGZv
ciBzcGVjaWZ5aW5nIHRoZSBzYW1wbGluZworcmF0ZSBhbmQgZnJhbWUgc2l6ZSBvZiBPcHVzIEN1
c3RvbSBzdHJlYW1zLCBvdXQtb2YtYmFuZCBzaWduYWxpbmcgaXMgcmVxdWlyZWQuCitJbiBPcHVz
IEN1c3RvbSBvcGVyYXRpb24sIG9ubHkgdGhlIENFTFQgbGF5ZXIgaXMgYXZhaWxhYmxlLCB1c2lu
ZyB0aGUgb3B1c19jdXN0b21fKiBmdW5jdGlvbgorY2FsbHMgaW4gb3B1c19jdXN0b20uaC4KKzwv
dD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNlY3VyaXR5
IiB0aXRsZT0iU2VjdXJpdHkgQ29uc2lkZXJhdGlvbnMiPgorCis8dD4KK0ltcGxlbWVudGF0aW9u
cyBvZiB0aGUgT3B1cyBjb2RlYyBuZWVkIHRvIHRha2UgYXBwcm9wcmlhdGUgc2VjdXJpdHkgY29u
c2lkZXJhdGlvbnMKK2ludG8gYWNjb3VudCwgYXMgb3V0bGluZWQgaW4gPHhyZWYgdGFyZ2V0PSJE
T1MiLz4uCitJdCBpcyBleHRyZW1lbHkgaW1wb3J0YW50IGZvciB0aGUgZGVjb2RlciB0byBiZSBy
b2J1c3QgYWdhaW5zdCBtYWxpY2lvdXMKK3BheWxvYWRzLgorTWFsaWNpb3VzIHBheWxvYWRzIG11
c3Qgbm90IGNhdXNlIHRoZSBkZWNvZGVyIHRvIG92ZXJydW4gaXRzIGFsbG9jYXRlZCBtZW1vcnkK
KyBvciB0byB0YWtlIGFuIGV4Y2Vzc2l2ZSBhbW91bnQgb2YgcmVzb3VyY2VzIHRvIGRlY29kZS4K
K0FsdGhvdWdoIHByb2JsZW1zCitpbiBlbmNvZGVycyBhcmUgdHlwaWNhbGx5IHJhcmVyLCB0aGUg
c2FtZSBhcHBsaWVzIHRvIHRoZSBlbmNvZGVyLiBNYWxpY2lvdXMKK2F1ZGlvIHN0cmVhbXMgbXVz
dCBub3QgY2F1c2UgdGhlIGVuY29kZXIgdG8gbWlzYmVoYXZlIGJlY2F1c2UgdGhpcyB3b3VsZAor
YWxsb3cgYW4gYXR0YWNrZXIgdG8gYXR0YWNrIHRyYW5zY29kaW5nIGdhdGV3YXlzLgorPC90Pgor
PHQ+CitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGNvbnRhaW5zIG5vIGtub3duIGJ1ZmZl
ciBvdmVyZmxvdyBvciBjYXNlcyB3aGVyZQorIGEgc3BlY2lhbGx5IGNyYWZ0ZWQgcGFja2V0IG9y
IGF1ZGlvIHNlZ21lbnQgY291bGQgY2F1c2UgYSBzaWduaWZpY2FudCBpbmNyZWFzZQorIGluIENQ
VSBsb2FkLgorSG93ZXZlciwgb24gY2VydGFpbiBDUFUgYXJjaGl0ZWN0dXJlcyB3aGVyZSBkZW5v
cm1hbGl6ZWQgZmxvYXRpbmctcG9pbnQKKyBvcGVyYXRpb25zIGFyZSBtdWNoIHNsb3dlciB0aGFu
IG5vcm1hbCBmbG9hdGluZy1wb2ludCBvcGVyYXRpb25zLCBpdCBpcworIHBvc3NpYmxlIGZvciBz
b21lIGF1ZGlvIGNvbnRlbnQgKGUuZy4sIHNpbGVuY2Ugb3IgbmVhci1zaWxlbmNlKSB0byBjYXVz
ZSBhbgorIGluY3JlYXNlIGluIENQVSBsb2FkLgorRGVub3JtYWxzIGNhbiBiZSBpbnRyb2R1Y2Vk
IGJ5IHJlb3JkZXJpbmcgb3BlcmF0aW9ucyBpbiB0aGUgY29tcGlsZXIgYW5kIGRlcGVuZAorIG9u
IHRoZSB0YXJnZXQgYXJjaGl0ZWN0dXJlLCBzbyBpdCBpcyBkaWZmaWN1bHQgdG8gZ3VhcmFudGVl
IHRoYXQgYW4gaW1wbGVtZW50YXRpb24KKyBhdm9pZHMgdGhlbS4KK0ZvciBhcmNoaXRlY3R1cmVz
IG9uIHdoaWNoIGRlbm9ybWFscyBhcmUgcHJvYmxlbWF0aWMsIGFkZGluZyB2ZXJ5IHNtYWxsCisg
ZmxvYXRpbmctcG9pbnQgb2Zmc2V0cyB0byB0aGUgYWZmZWN0ZWQgc2lnbmFscyB0byBwcmV2ZW50
IHNpZ25pZmljYW50IG51bWJlcnMKKyBvZiBkZW5vcm1hbGl6ZWQgb3BlcmF0aW9ucyBpcyBSRUNP
TU1FTkRFRC4KK0FsdGVybmF0aXZlbHksIGl0IGlzIG9mdGVuIHBvc3NpYmxlIHRvIGNvbmZpZ3Vy
ZSB0aGUgaGFyZHdhcmUgdG8gdHJlYXQKKyBkZW5vcm1hbHMgYXMgemVybyAoREFaKS4KK05vIHN1
Y2ggaXNzdWUgZXhpc3RzIGZvciB0aGUgZml4ZWQtcG9pbnQgcmVmZXJlbmNlIGltcGxlbWVudGF0
aW9uLgorPC90PgorPHQ+VGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiB3YXMgdmFsaWRhdGVk
IGluIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKKzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0
PgorU2VuZGluZyB0aGUgZGVjb2RlciB2YWxpZCBwYWNrZXRzIGdlbmVyYXRlZCBieSB0aGUgcmVm
ZXJlbmNlIGVuY29kZXIgYW5kCisgdmVyaWZ5aW5nIHRoYXQgdGhlIGRlY29kZXIncyBmaW5hbCBy
YW5nZSBjb2RlciBzdGF0ZSBtYXRjaGVzIHRoYXQgb2YgdGhlCisgZW5jb2Rlci4KKzwvdD4KKzx0
PgorU2VuZGluZyB0aGUgZGVjb2RlciBwYWNrZXRzIGdlbmVyYXRlZCBieSB0aGUgcmVmZXJlbmNl
IGVuY29kZXIgYW5kIHRoZW4KKyBzdWJqZWN0ZWQgdG8gcmFuZG9tIGNvcnJ1cHRpb24uCis8L3Q+
Cis8dD5TZW5kaW5nIHRoZSBkZWNvZGVyIHJhbmRvbSBwYWNrZXRzLjwvdD4KKzx0PgorU2VuZGlu
ZyB0aGUgZGVjb2RlciBwYWNrZXRzIGdlbmVyYXRlZCBieSBhIHZlcnNpb24gb2YgdGhlIHJlZmVy
ZW5jZSBlbmNvZGVyCisgbW9kaWZpZWQgdG8gbWFrZSByYW5kb20gY29kaW5nIGRlY2lzaW9ucyAo
aW50ZXJuYWwgZnV6emluZyksIGluY2x1ZGluZyBtb2RlCisgc3dpdGNoaW5nLCBhbmQgdmVyaWZ5
aW5nIHRoYXQgdGhlIHJhbmdlIGNvZGVyIGZpbmFsIHN0YXRlcyBtYXRjaC4KKzwvdD4KKzwvbGlz
dD4KK0luIGFsbCBvZiB0aGUgY29uZGl0aW9ucyBhYm92ZSwgYm90aCB0aGUgZW5jb2RlciBhbmQg
dGhlIGRlY29kZXIgd2VyZSBydW4KKyBpbnNpZGUgdGhlIDx4cmVmIHRhcmdldD0iVmFsZ3JpbmQi
PlZhbGdyaW5kPC94cmVmPiBtZW1vcnkKKyBkZWJ1Z2dlciwgd2hpY2ggdHJhY2tzIHJlYWRzIGFu
ZCB3cml0ZXMgdG8gaW52YWxpZCBtZW1vcnkgcmVnaW9ucyBhcyB3ZWxsIGFzCisgdGhlIHVzZSBv
ZiB1bmluaXRpYWxpemVkIG1lbW9yeS4KK1RoZXJlIHdlcmUgbm8gZXJyb3JzIHJlcG9ydGVkIG9u
IGFueSBvZiB0aGUgdGVzdGVkIGNvbmRpdGlvbnMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKworPHNl
Y3Rpb24gdGl0bGU9IklBTkEgQ29uc2lkZXJhdGlvbnMiPgorPHQ+CitUaGlzIGRvY3VtZW50IGhh
cyBubyBhY3Rpb25zIGZvciBJQU5BLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9IkFja25vd2xlZGdlbWVudHMiIHRpdGxlPSJBY2tub3dsZWRnZW1lbnRzIj4KKzx0PgorVGhh
bmtzIHRvIGFsbCBvdGhlciBkZXZlbG9wZXJzLCBpbmNsdWRpbmcgUmF5bW9uZCBDaGVuLCBTb2Vy
ZW4gU2thayBKZW5zZW4sIEdyZWdvcnkgTWF4d2VsbCwKK0NocmlzdG9waGVyIE1vbnRnb21lcnks
IGFuZCBLYXJzdGVuIFZhbmRib3JnIFNvZXJlbnNlbi4gV2Ugd291bGQgYWxzbworbGlrZSB0byB0
aGFuayBJZ29yIER5YWtvbm92LCBKYW4gU2tvZ2x1bmQsIGFuZCBDaHJpc3RpYW4gSG9lbmUgZm9y
IHRoZWlyIGhlbHAgd2l0aCBzdWJqZWN0aXZlIHRlc3Rpbmcgb2YgdGhlCitPcHVzIGNvZGVjLiBU
aGFua3MgdG8gUmFscGggR2lsZXMsIEpvaG4gUmlkZ2VzLCBCZW4gU2Nod2FydHosIEtlaXRoIFlh
biwgQ2hyaXN0aWFuIEhvZW5lLCBLYXQgV2Fsc2gsIGFuZCBtYW55IG90aGVycyBvbiB0aGUgT3B1
cyBhbmQgQ0VMVCBtYWlsaW5nIGxpc3RzCitmb3IgdGhlaXIgYnVnIHJlcG9ydHMgYW5kIGZlZWRi
YWNrLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQ29weWluZyBDb25kaXRp
b25zIj4KKzx0PlRoZSBhdXRob3JzIGFncmVlIHRvIGdyYW50IHRoaXJkIHBhcnRpZXMgdGhlIGly
cmV2b2NhYmxlIHJpZ2h0IHRvIGNvcHksIHVzZSBhbmQgZGlzdHJpYnV0ZQordGhlIHdvcmsgKGV4
Y2x1ZGluZyBDb2RlIENvbXBvbmVudHMgYXZhaWxhYmxlIHVuZGVyIHRoZSBzaW1wbGlmaWVkIEJT
RCBsaWNlbnNlKSwgd2l0aCBvcgord2l0aG91dCBtb2RpZmljYXRpb24sIGluIGFueSBtZWRpdW0s
IHdpdGhvdXQgcm95YWx0eSwgcHJvdmlkZWQgdGhhdCwgdW5sZXNzIHNlcGFyYXRlCitwZXJtaXNz
aW9uIGlzIGdyYW50ZWQsIHJlZGlzdHJpYnV0ZWQgbW9kaWZpZWQgd29ya3MgZG8gbm90IGNvbnRh
aW4gbWlzbGVhZGluZyBhdXRob3IsIHZlcnNpb24sCituYW1lIG9mIHdvcmssIG9yIGVuZG9yc2Vt
ZW50IGluZm9ybWF0aW9uLjwvdD4KKzwvc2VjdGlvbj4KKworPC9taWRkbGU+CisKKzxiYWNrPgor
Cis8cmVmZXJlbmNlcyB0aXRsZT0iTm9ybWF0aXZlIFJlZmVyZW5jZXMiPgorCis8cmVmZXJlbmNl
IGFuY2hvcj0icmZjMjExOSI+Cis8ZnJvbnQ+Cis8dGl0bGU+S2V5IHdvcmRzIGZvciB1c2UgaW4g
UkZDcyB0byBJbmRpY2F0ZSBSZXF1aXJlbWVudCBMZXZlbHMgPC90aXRsZT4KKzxhdXRob3IgaW5p
dGlhbHM9IlMuIiBzdXJuYW1lPSJCcmFkbmVyIiBmdWxsbmFtZT0iU2NvdHQgQnJhZG5lciI+PC9h
dXRob3I+Cis8L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0iUkZDIiB2YWx1ZT0iMjExOSIgLz4K
KzwvcmVmZXJlbmNlPgorCis8L3JlZmVyZW5jZXM+CisKKzxyZWZlcmVuY2VzIHRpdGxlPSJJbmZv
cm1hdGl2ZSBSZWZlcmVuY2VzIj4KKworPHJlZmVyZW5jZSBhbmNob3I9J3JlcXVpcmVtZW50cyc+
Cis8ZnJvbnQ+Cis8dGl0bGU+UmVxdWlyZW1lbnRzIGZvciBhbiBJbnRlcm5ldCBBdWRpbyBDb2Rl
YzwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSdKLi1NLicgc3VybmFtZT0nVmFsaW4nIGZ1bGxu
YW1lPSdKLi1NLiBWYWxpbic+Cis8b3JnYW5pemF0aW9uIC8+PC9hdXRob3I+Cis8YXV0aG9yIGlu
aXRpYWxzPSdLLicgc3VybmFtZT0nVm9zJyBmdWxsbmFtZT0nSy4gVm9zJz4KKzxvcmdhbml6YXRp
b24gLz48L2F1dGhvcj4KKzxhdXRob3I+Cis8b3JnYW5pemF0aW9uPklFVEY8L29yZ2FuaXphdGlv
bj48L2F1dGhvcj4KKzxkYXRlIHllYXI9JzIwMTEnIG1vbnRoPSdBdWd1c3QnIC8+Cis8YWJzdHJh
Y3Q+Cis8dD5UaGlzIGRvY3VtZW50IHByb3ZpZGVzIHNwZWNpZmljIHJlcXVpcmVtZW50cyBmb3Ig
YW4gSW50ZXJuZXQgYXVkaW8KKyAgIGNvZGVjLiAgVGhlc2UgcmVxdWlyZW1lbnRzIGFkZHJlc3Mg
cXVhbGl0eSwgc2FtcGxlIHJhdGUsIGJpdHJhdGUsCisgICBhbmQgcGFja2V0LWxvc3Mgcm9idXN0
bmVzcywgYXMgd2VsbCBhcyBvdGhlciBkZXNpcmFibGUgcHJvcGVydGllcy4KKzwvdD48L2Fic3Ry
YWN0PjwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSdSRkMnIHZhbHVlPSc2MzY2JyAvPgorPGZv
cm1hdCB0eXBlPSdUWFQnIHRhcmdldD0naHR0cDovL3Rvb2xzLmlldGYub3JnL3JmYy9yZmM2MzY2
LnR4dCcgLz4KKzwvcmVmZXJlbmNlPgorCis8P3JmYyBpbmNsdWRlPSJodHRwOi8veG1sLnJlc291
cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjM1NTAueG1sIj8+Cis8P3Jm
YyBpbmNsdWRlPSJodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZl
cmVuY2UuUkZDLjM1MzMueG1sIj8+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSdTSUxLJyB0YXJnZXQ9
J2h0dHA6Ly9kZXZlbG9wZXIuc2t5cGUuY29tL3NpbGsnPgorPGZyb250PgorPHRpdGxlPlNJTEsg
U3BlZWNoIENvZGVjPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9J0suJyBzdXJuYW1lPSdWb3Mn
IGZ1bGxuYW1lPSdLLiBWb3MnPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGF1dGhvciBp
bml0aWFscz0nUy4nIHN1cm5hbWU9J0plbnNlbicgZnVsbG5hbWU9J1MuIEplbnNlbic+Cis8b3Jn
YW5pemF0aW9uIC8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSdLLicgc3VybmFtZT0nU29l
cmVuc2VuJyBmdWxsbmFtZT0nSy4gU29lcmVuc2VuJz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhv
cj4KKzxkYXRlIHllYXI9JzIwMTAnIG1vbnRoPSdNYXJjaCcgLz4KKzxhYnN0cmFjdD4KKzx0Pjwv
dD4KKzwvYWJzdHJhY3Q+PC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9J0ludGVybmV0LURyYWZ0
JyB2YWx1ZT0nZHJhZnQtdm9zLXNpbGstMDEnIC8+Cis8Zm9ybWF0IHR5cGU9J1RYVCcgdGFyZ2V0
PSdodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9kcmFmdC12b3Mtc2lsay0wMScgLz4KKzwvcmVm
ZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0ibGFyb2lhLWljYXNzcCI+Cis8ZnJvbnQ+Cis8
dGl0bGUgYWJicmV2PSJSb2J1c3QgYW5kIEVmZmljaWVudCBRdWFudGl6YXRpb24gb2YgU3BlZWNo
IExTUCI+CitSb2J1c3QgYW5kIEVmZmljaWVudCBRdWFudGl6YXRpb24gb2YgU3BlZWNoIExTUCBQ
YXJhbWV0ZXJzIFVzaW5nIFN0cnVjdHVyZWQgVmVjdG9yIFF1YW50aXphdGlvbgorPC90aXRsZT4K
KzxhdXRob3IgaW5pdGlhbHM9IlIuTC4iIHN1cm5hbWU9Ikxhcm9pYSIgZnVsbG5hbWU9IlIuIj4K
Kzxvcmdhbml6YXRpb24vPgorPC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJOLlAuIiBzdXJu
YW1lPSJQaGFtZG8iIGZ1bGxuYW1lPSJOLiI+Cis8b3JnYW5pemF0aW9uLz4KKzwvYXV0aG9yPgor
PGF1dGhvciBpbml0aWFscz0iTi5GLiIgc3VybmFtZT0iRmFydmFyZGluIiBmdWxsbmFtZT0iTi4i
PgorPG9yZ2FuaXphdGlvbi8+Cis8L2F1dGhvcj4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1l
PSJJQ0FTU1AtMTk5MSwgUHJvYy4gSUVFRSBJbnQuIENvbmYuIEFjb3VzdC4sIFNwZWVjaCwgU2ln
bmFsIFByb2Nlc3NpbmcsIHBwLiA2NDEtNjQ0LCBPY3RvYmVyIiB2YWx1ZT0iMTk5MSIvPgorPC9y
ZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSdDRUxUJyB0YXJnZXQ9J2h0dHA6Ly9jZWx0
LWNvZGVjLm9yZy8nPgorPGZyb250PgorPHRpdGxlPkNvbnN0cmFpbmVkLUVuZXJneSBMYXBwZWQg
VHJhbnNmb3JtIChDRUxUKSBDb2RlYzwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSdKLU0uJyBz
dXJuYW1lPSdWYWxpbicgZnVsbG5hbWU9J0otTS4gVmFsaW4nPgorPG9yZ2FuaXphdGlvbiAvPjwv
YXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0nVCYjeDJFO0IuJyBzdXJuYW1lPSdUZXJyaWJlcnJ5
JyBmdWxsbmFtZT0nVGltb3RoeSBCLiBUZXJyaWJlcnJ5Jz4KKzxvcmdhbml6YXRpb24gLz48L2F1
dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9J0cuJyBzdXJuYW1lPSdNYXh3ZWxsJyBmdWxsbmFtZT0n
Ry4gTWF4d2VsbCc+Cis8b3JnYW5pemF0aW9uIC8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxz
PSdDLicgc3VybmFtZT0nTW9udGdvbWVyeScgZnVsbG5hbWU9J0MuIE1vbnRnb21lcnknPgorPG9y
Z2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGRhdGUgeWVhcj0nMjAxMCcgbW9udGg9J0p1bHknIC8+
Cis8YWJzdHJhY3Q+Cis8dD48L3Q+Cis8L2Fic3RyYWN0PjwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBu
YW1lPSdJbnRlcm5ldC1EcmFmdCcgdmFsdWU9J2RyYWZ0LXZhbGluLWNlbHQtY29kZWMtMDInIC8+
Cis8Zm9ybWF0IHR5cGU9J1RYVCcgdGFyZ2V0PSdodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9k
cmFmdC12YWxpbi1jZWx0LWNvZGVjLTAyJyAvPgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2Ug
YW5jaG9yPSdTUlRQLVZCUic+Cis8ZnJvbnQ+Cis8dGl0bGU+R3VpZGVsaW5lcyBmb3IgdGhlIHVz
ZSBvZiBWYXJpYWJsZSBCaXQgUmF0ZSBBdWRpbyB3aXRoIFNlY3VyZSBSVFA8L3RpdGxlPgorPGF1
dGhvciBpbml0aWFscz0nQy4nIHN1cm5hbWU9J1BlcmtpbnMnIGZ1bGxuYW1lPSdLLiBWb3MnPgor
PG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0nSi5NLicgc3VybmFt
ZT0nVmFsaW4nIGZ1bGxuYW1lPSdKLk0uIFZhbGluJz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhv
cj4KKzxkYXRlIHllYXI9JzIwMTEnIG1vbnRoPSdKdWx5JyAvPgorPGFic3RyYWN0PgorPHQ+PC90
PgorPC9hYnN0cmFjdD48L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0nUkZDJyB2YWx1ZT0nNjU2
MicgLz4KKzxmb3JtYXQgdHlwZT0nVFhUJyB0YXJnZXQ9J2h0dHA6Ly90b29scy5pZXRmLm9yZy9o
dG1sL3JmYzY1NjInIC8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9J0RPUyc+
Cis8ZnJvbnQ+Cis8dGl0bGU+SW50ZXJuZXQgRGVuaWFsLW9mLVNlcnZpY2UgQ29uc2lkZXJhdGlv
bnM8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0nTS4nIHN1cm5hbWU9J0hhbmRsZXknIGZ1bGxu
YW1lPSdNLiBIYW5kbGV5Jz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxhdXRob3IgaW5p
dGlhbHM9J0UuJyBzdXJuYW1lPSdSZXNjb3JsYScgZnVsbG5hbWU9J0UuIFJlc2NvcmxhJz4KKzxv
cmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxhdXRob3I+Cis8b3JnYW5pemF0aW9uPklBQjwvb3Jn
YW5pemF0aW9uPjwvYXV0aG9yPgorPGRhdGUgeWVhcj0nMjAwNicgbW9udGg9J0RlY2VtYmVyJyAv
PgorPGFic3RyYWN0PgorPHQ+VGhpcyBkb2N1bWVudCBwcm92aWRlcyBhbiBvdmVydmlldyBvZiBw
b3NzaWJsZSBhdmVudWVzIGZvciBkZW5pYWwtb2Ytc2VydmljZSAoRG9TKSBhdHRhY2sgb24gSW50
ZXJuZXQgc3lzdGVtcy4gIFRoZSBhaW0gaXMgdG8gZW5jb3VyYWdlIHByb3RvY29sIGRlc2lnbmVy
cyBhbmQgbmV0d29yayBlbmdpbmVlcnMgdG93YXJkcyBkZXNpZ25zIHRoYXQgYXJlIG1vcmUgcm9i
dXN0LiAgV2UgZGlzY3VzcyBwYXJ0aWFsIHNvbHV0aW9ucyB0aGF0IHJlZHVjZSB0aGUgZWZmZWN0
aXZlbmVzcyBvZiBhdHRhY2tzLCBhbmQgaG93IHNvbWUgc29sdXRpb25zIG1pZ2h0IGluYWR2ZXJ0
ZW50bHkgb3BlbiB1cCBhbHRlcm5hdGl2ZSB2dWxuZXJhYmlsaXRpZXMuICBUaGlzIG1lbW8gcHJv
dmlkZXMgaW5mb3JtYXRpb24gZm9yIHRoZSBJbnRlcm5ldCBjb21tdW5pdHkuPC90PjwvYWJzdHJh
Y3Q+PC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9J1JGQycgdmFsdWU9JzQ3MzInIC8+Cis8Zm9y
bWF0IHR5cGU9J1RYVCcgb2N0ZXRzPSc5MTg0NCcgdGFyZ2V0PSdmdHA6Ly9mdHAuaXNpLmVkdS9p
bi1ub3Rlcy9yZmM0NzMyLnR4dCcgLz4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hv
cj0iTWFydGluNzkiPgorPGZyb250PgorPHRpdGxlPlJhbmdlIGVuY29kaW5nOiBBbiBhbGdvcml0
aG0gZm9yIHJlbW92aW5nIHJlZHVuZGFuY3kgZnJvbSBhIGRpZ2l0aXNlZCBtZXNzYWdlPC90aXRs
ZT4KKzxhdXRob3IgaW5pdGlhbHM9IkcuTi5OLiIgc3VybmFtZT0iTWFydGluIiBmdWxsbmFtZT0i
Ry4gTmlnZWwgTi4gTWFydGluIj48b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzxkYXRlIHllYXI9
IjE5NzkiIC8+Cis8L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0iUHJvYy4gSW5zdGl0dXRpb24g
b2YgRWxlY3Ryb25pYyBhbmQgUmFkaW8gRW5naW5lZXJzIEludGVybmF0aW9uYWwgQ29uZmVyZW5j
ZSBvbiBWaWRlbyBhbmQgRGF0YSBSZWNvcmRpbmciIHZhbHVlPSIiIC8+Cis8L3JlZmVyZW5jZT4K
KworPHJlZmVyZW5jZSBhbmNob3I9ImNvZGluZy10aGVzaXMiPgorPGZyb250PgorPHRpdGxlPlNv
dXJjZSBjb2RpbmcgYWxnb3JpdGhtcyBmb3IgZmFzdCBkYXRhIGNvbXByZXNzaW9uPC90aXRsZT4K
KzxhdXRob3IgaW5pdGlhbHM9IlIuIiBzdXJuYW1lPSJQYXNjbyIgZnVsbG5hbWU9IiI+PG9yZ2Fu
aXphdGlvbi8+PC9hdXRob3I+Cis8ZGF0ZSBtb250aD0iTWF5IiB5ZWFyPSIxOTc2IiAvPgorPC9m
cm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9IlBoLkQuIHRoZXNpcyIgdmFsdWU9IkRlcHQuIG9mIEVs
ZWN0cmljYWwgRW5naW5lZXJpbmcsIFN0YW5mb3JkIFVuaXZlcnNpdHkiIC8+Cis8L3JlZmVyZW5j
ZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IlBWUSI+Cis8ZnJvbnQ+Cis8dGl0bGU+QSBQeXJhbWlk
IFZlY3RvciBRdWFudGl6ZXI8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0iVC4iIHN1cm5hbWU9
IkZpc2NoZXIiIGZ1bGxuYW1lPSIiPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPGRhdGUgbW9u
dGg9Ikp1bHkiIHllYXI9IjE5ODYiIC8+Cis8L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0iSUVF
RSBUcmFucy4gb24gSW5mb3JtYXRpb24gVGhlb3J5LCBWb2wuIDMyIiB2YWx1ZT0icHAuIDU2OC01
ODMiIC8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IkthYmFsODYiPgorPGZy
b250PgorPHRpdGxlPlRoZSBDb21wdXRhdGlvbiBvZiBMaW5lIFNwZWN0cmFsIEZyZXF1ZW5jaWVz
IFVzaW5nIENoZWJ5c2hldiBQb2x5bm9taWFsczwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSJQ
LiIgc3VybmFtZT0iS2FiYWwiIGZ1bGxuYW1lPSJQLiBLYWJhbCI+PG9yZ2FuaXphdGlvbi8+PC9h
dXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJSLiIgc3VybmFtZT0iUmFtYWNoYW5kcmFuIiBmdWxs
bmFtZT0iUi4gUC4gUmFtYWNoYW5kcmFuIj48b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzxkYXRl
IG1vbnRoPSJEZWNlbWJlciIgeWVhcj0iMTk4NiIgLz4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBu
YW1lPSJJRUVFIFRyYW5zLiBBY291c3RpY3MsIFNwZWVjaCwgU2lnbmFsIFByb2Nlc3NpbmcsIHZv
bC4gMzQsIG5vLiA2IiB2YWx1ZT0icHAuIDE0MTktMTQyNiIgLz4KKzwvcmVmZXJlbmNlPgorCisK
KzxyZWZlcmVuY2UgYW5jaG9yPSJWYWxncmluZCIgdGFyZ2V0PSJodHRwOi8vdmFsZ3JpbmQub3Jn
LyI+Cis8ZnJvbnQ+Cis8dGl0bGU+VmFsZ3JpbmQgd2Vic2l0ZTwvdGl0bGU+Cis8YXV0aG9yPjwv
YXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iR29v
Z2xlLU5ldEVRIiB0YXJnZXQ9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC93ZWJydGMvc291cmNl
L2Jyb3dzZS90cnVuay9zcmMvbW9kdWxlcy9hdWRpb19jb2RpbmcvTmV0RVEvbWFpbi9zb3VyY2Uv
P3I9NTgzIj4KKzxmcm9udD4KKzx0aXRsZT5Hb29nbGUgTmV0RVEgY29kZTwvdGl0bGU+Cis8YXV0
aG9yPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hv
cj0iR29vZ2xlLVdlYlJUQyIgdGFyZ2V0PSJodHRwOi8vY29kZS5nb29nbGUuY29tL3Avd2VicnRj
LyI+Cis8ZnJvbnQ+Cis8dGl0bGU+R29vZ2xlIFdlYlJUQyBjb2RlPC90aXRsZT4KKzxhdXRob3I+
PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKworPHJlZmVyZW5jZSBhbmNob3I9
Ik9wdXMtZ2l0IiB0YXJnZXQ9ImdpdDovL2dpdC54aXBoLm9yZy9vcHVzLmdpdCI+Cis8ZnJvbnQ+
Cis8dGl0bGU+T3B1cyBHaXQgUmVwb3NpdG9yeTwvdGl0bGU+Cis8YXV0aG9yPjwvYXV0aG9yPgor
PC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iT3B1cy13ZWJzaXRl
IiB0YXJnZXQ9Imh0dHA6Ly9vcHVzLWNvZGVjLm9yZy8iPgorPGZyb250PgorPHRpdGxlPk9wdXMg
d2Vic2l0ZTwvdGl0bGU+Cis8YXV0aG9yPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNl
PgorCis8cmVmZXJlbmNlIGFuY2hvcj0iVm9yYmlzLXdlYnNpdGUiIHRhcmdldD0iaHR0cDovL3hp
cGgub3JnL3ZvcmJpcy8iPgorPGZyb250PgorPHRpdGxlPlZvcmJpcyB3ZWJzaXRlPC90aXRsZT4K
KzxhdXRob3I+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2Ug
YW5jaG9yPSJNYXRyb3NrYS13ZWJzaXRlIiB0YXJnZXQ9Imh0dHA6Ly9tYXRyb3NrYS5vcmcvIj4K
Kzxmcm9udD4KKzx0aXRsZT5NYXRyb3NrYSB3ZWJzaXRlPC90aXRsZT4KKzxhdXRob3I+PC9hdXRo
b3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJWZWN0b3Jz
LXdlYnNpdGUiIHRhcmdldD0iaHR0cDovL29wdXMtY29kZWMub3JnL3Rlc3R2ZWN0b3JzLyI+Cis8
ZnJvbnQ+Cis8dGl0bGU+T3B1cyBUZXN0dmVjdG9ycyAod2Vic2lkZSk8L3RpdGxlPgorPGF1dGhv
cj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9
IlZlY3RvcnMtcHJvYyIgdGFyZ2V0PSJodHRwOi8vd3d3LmlldGYub3JnL3Byb2NlZWRpbmdzLzgz
L3NsaWRlcy9zbGlkZXMtODMtY29kZWMtMC5neiI+Cis8ZnJvbnQ+Cis8dGl0bGU+T3B1cyBUZXN0
dmVjdG9ycyAocHJvY2VlZGluZ3MpPC90aXRsZT4KKzxhdXRob3I+PC9hdXRob3I+Cis8L2Zyb250
PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJsaW5lLXNwZWN0cmFsLXBhaXJz
IiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvTGluZV9zcGVjdHJhbF9wYWly
cyI+Cis8ZnJvbnQ+Cis8dGl0bGU+TGluZSBTcGVjdHJhbCBQYWlyczwvdGl0bGU+Cis8YXV0aG9y
Pjxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+PC9hdXRob3I+Cis8L2Zyb250
PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJyYW5nZS1jb2RpbmciIHRhcmdl
dD0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9SYW5nZV9jb2RpbmciPgorPGZyb250Pgor
PHRpdGxlPlJhbmdlIENvZGluZzwvdGl0bGU+Cis8YXV0aG9yPjxvcmdhbml6YXRpb24+V2lraXBl
ZGlhPC9vcmdhbml6YXRpb24+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxy
ZWZlcmVuY2UgYW5jaG9yPSJIYWRhbWFyZCIgdGFyZ2V0PSJodHRwOi8vZW4ud2lraXBlZGlhLm9y
Zy93aWtpL0hhZGFtYXJkX3RyYW5zZm9ybSI+Cis8ZnJvbnQ+Cis8dGl0bGU+SGFkYW1hcmQgVHJh
bnNmb3JtPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXph
dGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNo
b3I9IlZpdGVyYmkiIHRhcmdldD0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9WaXRlcmJp
X2FsZ29yaXRobSI+Cis8ZnJvbnQ+Cis8dGl0bGU+Vml0ZXJiaSBBbGdvcml0aG08L3RpdGxlPgor
PGF1dGhvcj48b3JnYW5pemF0aW9uPldpa2lwZWRpYTwvb3JnYW5pemF0aW9uPjwvYXV0aG9yPgor
PC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iV2hpdGVuaW5nIiB0
YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvV2hpdGVfbm9pc2UiPgorPGZyb250
PgorPHRpdGxlPldoaXRlIE5vaXNlPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtp
cGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKwor
PHJlZmVyZW5jZSBhbmNob3I9IkxQQyIgdGFyZ2V0PSJodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93
aWtpL0xpbmVhcl9wcmVkaWN0aW9uIj4KKzxmcm9udD4KKzx0aXRsZT5MaW5lYXIgUHJlZGljdGlv
bjwvdGl0bGU+Cis8YXV0aG9yPjxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+
PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJN
RENUIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvTW9kaWZpZWRfZGlzY3Jl
dGVfY29zaW5lX3RyYW5zZm9ybSI+Cis8ZnJvbnQ+Cis8dGl0bGU+TW9kaWZpZWQgRGlzY3JldGUg
Q29zaW5lIFRyYW5zZm9ybTwvdGl0bGU+Cis8YXV0aG9yPjxvcmdhbml6YXRpb24+V2lraXBlZGlh
PC9vcmdhbml6YXRpb24+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZl
cmVuY2UgYW5jaG9yPSJGRlQiIHRhcmdldD0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9G
YXN0X0ZvdXJpZXJfdHJhbnNmb3JtIj4KKzxmcm9udD4KKzx0aXRsZT5GYXN0IEZvdXJpZXIgVHJh
bnNmb3JtPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXph
dGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNo
b3I9InotdHJhbnNmb3JtIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvWi10
cmFuc2Zvcm0iPgorPGZyb250PgorPHRpdGxlPlotdHJhbnNmb3JtPC90aXRsZT4KKzxhdXRob3I+
PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+
Cis8L3JlZmVyZW5jZT4KKworCis8cmVmZXJlbmNlIGFuY2hvcj0iQnVyZyI+Cis8ZnJvbnQ+Cis8
dGl0bGU+TWF4aW11bSBFbnRyb3B5IFNwZWN0cmFsIEFuYWx5c2lzPC90aXRsZT4KKzxhdXRob3Ig
aW5pdGlhbHM9IkpQLiIgc3VybmFtZT0iQnVyZyIgZnVsbG5hbWU9IkouUC4gQnVyZyI+PG9yZ2Fu
aXphdGlvbi8+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2Ug
YW5jaG9yPSJTY2h1ciI+Cis8ZnJvbnQ+Cis8dGl0bGU+QSBmaXhlZCBwb2ludCBjb21wdXRhdGlv
biBvZiBwYXJ0aWFsIGNvcnJlbGF0aW9uIGNvZWZmaWNpZW50czwvdGl0bGU+Cis8YXV0aG9yIGlu
aXRpYWxzPSJKLiIgc3VybmFtZT0iTGUgUm91eCIgZnVsbG5hbWU9IkouIExlIFJvdXgiPjxvcmdh
bml6YXRpb24vPjwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0iQy4iIHN1cm5hbWU9Ikd1ZWd1
ZW4iIGZ1bGxuYW1lPSJDLiBHdWVndWVuIj48b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzwvZnJv
bnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJJQ0FTU1AtMTk3NywgUHJvYy4gSUVFRSBJbnQuIENvbmYu
IEFjb3VzdC4sIFNwZWVjaCwgU2lnbmFsIFByb2Nlc3NpbmcsIHBwLiAyNTctMjU5LCBPY3RvYmVy
IiB2YWx1ZT0iMTk3NyIvPgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJQcmlu
Y2VuODYiPgorPGZyb250PgorPHRpdGxlPkFuYWx5c2lzL3N5bnRoZXNpcyBmaWx0ZXIgYmFuayBk
ZXNpZ24gYmFzZWQgb24gdGltZSBkb21haW4gYWxpYXNpbmcgY2FuY2VsbGF0aW9uPC90aXRsZT4K
KzxhdXRob3IgaW5pdGlhbHM9IkouIiBzdXJuYW1lPSJQcmluY2VuIiBmdWxsbmFtZT0iSm9obiBQ
LiBQcmluY2VuIj48b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9IkEu
IiBzdXJuYW1lPSJCcmFkbGV5IiBmdWxsbmFtZT0iQWxhbiBCLiBCcmFkbGV5Ij48b3JnYW5pemF0
aW9uLz48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJJRUVFIFRyYW5zLiBB
Y291c3QuIFNwZWVjaCBTaWcuIFByb2MuIEFTU1AtMzQgKDUpLCAxMTUzLTExNjEiIHZhbHVlPSIx
OTg2Ii8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IlZhbGluMjAxMCI+Cis8
ZnJvbnQ+Cis8dGl0bGU+QSBIaWdoLVF1YWxpdHkgU3BlZWNoIGFuZCBBdWRpbyBDb2RlYyBXaXRo
IExlc3MgVGhhbiAxMCBtcyBkZWxheTwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSJKTSIgc3Vy
bmFtZT0iVmFsaW4iIGZ1bGxuYW1lPSJKZWFuLU1hcmMgVmFsaW4iPjxvcmdhbml6YXRpb24vPgor
PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJULiBCLiIgc3VybmFtZT0iVGVycmliZXJyeSIg
ZnVsbG5hbWU9IlRpbW90aHkgVGVycmliZXJyeSI+PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8
YXV0aG9yIGluaXRpYWxzPSJDLiIgc3VybmFtZT0iTW9udGdvbWVyeSIgZnVsbG5hbWU9IkNocmlz
dG9waGVyIE1vbnRnb21lcnkiPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPGF1dGhvciBpbml0
aWFscz0iRy4iIHN1cm5hbWU9Ik1heHdlbGwiIGZ1bGxuYW1lPSJHcmVnb3J5IE1heHdlbGwiPjxv
cmdhbml6YXRpb24vPjwvYXV0aG9yPgorPC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9IklFRUUg
VHJhbnMuIG9uIEF1ZGlvLCBTcGVlY2ggYW5kIExhbmd1YWdlIFByb2Nlc3NpbmcsIFZvbC4gMTgs
IE5vLiAxLCBwcC4gNTgtNjciIHZhbHVlPSIyMDEwIiAvPgorPC9yZWZlcmVuY2U+CisKKworPHJl
ZmVyZW5jZSBhbmNob3I9Ilp3aWNrZXI2MSI+Cis8ZnJvbnQ+Cis8dGl0bGU+U3ViZGl2aXNpb24g
b2YgdGhlIGF1ZGlibGUgZnJlcXVlbmN5IHJhbmdlIGludG8gY3JpdGljYWwgYmFuZHM8L3RpdGxl
PgorPGF1dGhvciBpbml0aWFscz0iRS4iIHN1cm5hbWU9Ilp3aWNrZXIiIGZ1bGxuYW1lPSJFLiBa
d2lja2VyIj48b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzxkYXRlIG1vbnRoPSJGZWJydWFyeSIg
eWVhcj0iMTk2MSIgLz4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJUaGUgSm91cm5hbCBv
ZiB0aGUgQWNvdXN0aWNhbCBTb2NpZXR5IG9mIEFtZXJpY2EsIFZvbC4gMzMsIE5vIDIiIHZhbHVl
PSJwLiAyNDgiIC8+Cis8L3JlZmVyZW5jZT4KKworCis8L3JlZmVyZW5jZXM+CisKKzxzZWN0aW9u
IGFuY2hvcj0icmVmLWltcGxlbWVudGF0aW9uIiB0aXRsZT0iUmVmZXJlbmNlIEltcGxlbWVudGF0
aW9uIj4KKworPHQ+VGhpcyBhcHBlbmRpeCBjb250YWlucyB0aGUgY29tcGxldGUgc291cmNlIGNv
ZGUgZm9yIHRoZQorcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIG9mIHRoZSBPcHVzIGNvZGVjIHdy
aXR0ZW4gaW4gQy4gQnkgZGVmYXVsdCwKK3RoaXMgaW1wbGVtZW50YXRpb24gcmVsaWVzIG9uIGZs
b2F0aW5nLXBvaW50IGFyaXRobWV0aWMsIGJ1dCBpdCBjYW4gYmUKK2NvbXBpbGVkIHRvIHVzZSBv
bmx5IGZpeGVkLXBvaW50IGFyaXRobWV0aWMgYnkgZGVmaW5pbmcgdGhlIEZJWEVEX1BPSU5UCitt
YWNyby4gSW5mb3JtYXRpb24gb24gYnVpbGRpbmcgYW5kIHVzaW5nIHRoZSByZWZlcmVuY2UgaW1w
bGVtZW50YXRpb24gaXMKK2F2YWlsYWJsZSBpbiB0aGUgUkVBRE1FIGZpbGUuCis8L3Q+CisKKzx0
PlRoZSBpbXBsZW1lbnRhdGlvbiBjYW4gYmUgY29tcGlsZWQgd2l0aCBlaXRoZXIgYSBDODkgb3Ig
YSBDOTkKK2NvbXBpbGVyLiBJdCBpcyByZWFzb25hYmx5IG9wdGltaXplZCBmb3IgbW9zdCBwbGF0
Zm9ybXMgc3VjaCB0aGF0Citvbmx5IGFyY2hpdGVjdHVyZS1zcGVjaWZpYyBvcHRpbWl6YXRpb25z
IGFyZSBsaWtlbHkgdG8gYmUgdXNlZnVsLgorVGhlIEZGVCA8eHJlZiB0YXJnZXQ9IkZGVCIvPiB1
c2VkIGlzIGEgc2xpZ2h0bHkgbW9kaWZpZWQgdmVyc2lvbiBvZiB0aGUgS0lTUy1GRlQgbGlicmFy
eSwKK2J1dCBpdCBpcyBlYXN5IHRvIHN1YnN0aXR1dGUgYW55IG90aGVyIEZGVCBsaWJyYXJ5Lgor
PC90PgorCis8dD4KK1doaWxlIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gZG9lcyBub3Qg
cmVseSBvbiBhbnkKKzxzcGFueCBzdHlsZT0iZW1waCI+dW5kZWZpbmVkIGJlaGF2aW9yPC9zcGFu
eD4gYXMgZGVmaW5lZCBieSBDODkgb3IgQzk5LAoraXQgcmVsaWVzIG9uIGNvbW1vbiA8c3Bhbngg
c3R5bGU9ImVtcGgiPmltcGxlbWVudGF0aW9uLWRlZmluZWQgYmVoYXZpb3I8L3NwYW54PgorZm9y
IHR3bydzIGNvbXBsZW1lbnQgYXJjaGl0ZWN0dXJlczoKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4K
Kzx0PlJpZ2h0IHNoaWZ0cyBvZiBuZWdhdGl2ZSB2YWx1ZXMgYXJlIGNvbnNpc3RlbnQgd2l0aCB0
d28ncyBjb21wbGVtZW50IGFyaXRobWV0aWMsIHNvIHRoYXQgYT4+YiBpcyBlcXVpdmFsZW50IHRv
IGZsb29yKGEvKDIqKmIpKSw8L3Q+Cis8dD5Gb3IgY29udmVyc2lvbiB0byBhIHNpZ25lZCBpbnRl
Z2VyIG9mIE4gYml0cywgdGhlIHZhbHVlIGlzIHJlZHVjZWQgbW9kdWxvIDIqKk4gdG8gYmUgd2l0
aGluIHJhbmdlIG9mIHRoZSB0eXBlLDwvdD4KKzx0PlRoZSByZXN1bHQgb2YgaW50ZWdlciBkaXZp
c2lvbiBvZiBhIG5lZ2F0aXZlIHZhbHVlIGlzIHRydW5jYXRlZCB0b3dhcmRzIHplcm8sIGFuZDwv
dD4KKzx0PlRoZSBjb21waWxlciBwcm92aWRlcyBhIDY0LWJpdCBpbnRlZ2VyIHR5cGUgKGEgQzk5
IHJlcXVpcmVtZW50IHdoaWNoIGlzIHN1cHBvcnRlZCBieSBtb3N0IEM4OSBjb21waWxlcnMpLjwv
dD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitJbiBpdHMgY3VycmVudCBmb3JtLCB0aGUgcmVmZXJl
bmNlIGltcGxlbWVudGF0aW9uIGFsc28gcmVxdWlyZXMgdGhlIGZvbGxvd2luZworYXJjaGl0ZWN0
dXJhbCBjaGFyYWN0ZXJpc3RpY3MgdG8gb2J0YWluIGFjY2VwdGFibGUgcGVyZm9ybWFuY2U6Cis8
bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5Ud28ncyBjb21wbGVtZW50IGFyaXRobWV0aWMsPC90
PgorPHQ+QXQgbGVhc3QgYSAxNiBiaXQgYnkgMTYgYml0IGludGVnZXIgbXVsdGlwbGllciAoMzIt
Yml0IHJlc3VsdCksIGFuZDwvdD4KKzx0PkF0IGxlYXN0IGEgMzItYml0IGFkZGVyL2FjY3VtdWxh
dG9yLjwvdD4KKzwvbGlzdD4KKzwvdD4KKworCis8c2VjdGlvbiB0aXRsZT0iRXh0cmFjdGluZyB0
aGUgc291cmNlIj4KKzx0PgorVGhlIGNvbXBsZXRlIHNvdXJjZSBjb2RlIGNhbiBiZSBleHRyYWN0
ZWQgZnJvbSB0aGlzIGRyYWZ0LCBieSBydW5uaW5nIHRoZQorZm9sbG93aW5nIGNvbW1hbmQgbGlu
ZToKKworPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+PCFbQ0RBVEFbCitjYXQgZHJhZnQtaWV0
Zi1jb2RlYy1vcHVzLnR4dCB8IGdyZXAgJ15cIFwgXCAjIyMnIHwgc2VkIC1lICdzLy4uLiMjIy8v
JyB8IGJhc2U2NCAtZCA+IG9wdXNfc291cmNlLnRhci5negorXV0+PC90PgorPHQ+Cit0YXIgeHp2
ZiBvcHVzX3NvdXJjZS50YXIuZ3oKKzwvdD4KKzx0PmNkIG9wdXNfc291cmNlPC90PgorPHQ+bWFr
ZTwvdD4KKzwvbGlzdD4KK09uIHN5c3RlbXMgd2hlcmUgdGhlIHByb3ZpZGVkIE1ha2VmaWxlIGRv
ZXMgbm90IHdvcmssIHRoZSBmb2xsb3dpbmcgY29tbWFuZCBsaW5lIG1heSBiZSB1c2VkIHRvIGNv
bXBpbGUKK3RoZSBzb3VyY2UgY29kZToKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PjwhW0NE
QVRBWworY2MgLU8yIC1nIC1vIG9wdXNfZGVtbyBzcmMvb3B1c19kZW1vLmMgYGNhdCAqLm1rIHwg
Z3JlcCAtdiBmaXhlZCB8IHNlZCAtZSAncy8uKj0vLycgLWUgJ3MvXFxcXC8vJ2AgLURPUFVTX0JV
SUxEIC1JaW5jbHVkZSAtSWNlbHQgLUlzaWxrIC1Jc2lsay9mbG9hdCAtRFVTRV9BTExPQ0EgLURy
ZXN0cmljdD0gLWxtCitdXT48L3Q+PC9saXN0PgorPC90PgorCis8dD4KK09uIHN5c3RlbXMgd2hl
cmUgdGhlIGJhc2U2NCB1dGlsaXR5IGlzIG5vdCBwcmVzZW50LCB0aGUgZm9sbG93aW5nIGNvbW1h
bmRzIGNhbiBiZSB1c2VkIGluc3RlYWQ6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD48IVtD
REFUQVsKK2NhdCBkcmFmdC1pZXRmLWNvZGVjLW9wdXMudHh0IHwgZ3JlcCAnXlwgXCBcICMjIycg
fCBzZWQgLWUgJ3MvLi4uIyMjLy8nID4gb3B1cy5iNjQKK11dPjwvdD4KKzx0Pm9wZW5zc2wgYmFz
ZTY0IC1kIC1pbiBvcHVzLmI2NCA+IG9wdXNfc291cmNlLnRhci5nejwvdD4KKzwvbGlzdD4KKwor
PC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iVXAtdG8tZGF0ZSBJbXBsZW1lbnRh
dGlvbiI+Cis8dD4KK0FzIG9mIHRoZSB0aW1lIG9mIHB1YmxpY2F0aW9uIG9mIHRoaXMgbWVtbywg
YW4gdXAtdG8tZGF0ZSBpbXBsZW1lbnRhdGlvbiBjb25mb3JtaW5nIHRvCit0aGlzIHN0YW5kYXJk
IGlzIGF2YWlsYWJsZSBpbiBhCisgPHhyZWYgdGFyZ2V0PSdPcHVzLWdpdCc+R2l0IHJlcG9zaXRv
cnk8L3hyZWY+LgorUmVsZWFzZXMgYW5kIG90aGVyIHJlc291cmNlcyBhcmUgYXZhaWxhYmxlIGF0
CisgPHhyZWYgdGFyZ2V0PSdPcHVzLXdlYnNpdGUnLz4uIEhvd2V2ZXIsIGFsdGhvdWdoIHRoYXQg
aW1wbGVtZW50YXRpb24gaXMgZXhwZWN0ZWQgdG8KKyByZW1haW4gY29uZm9ybWFudCB3aXRoIHRo
ZSBzdGFuZGFyZCwgaXQgaXMgdGhlIGNvZGUgaW4gdGhpcyBkb2N1bWVudCB0aGF0IHNoYWxsCisg
cmVtYWluIG5vcm1hdGl2ZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IkJh
c2U2NC1lbmNvZGVkIFNvdXJjZSBDb2RlIj4KKzx0PgorPD9yZmMgaW5jbHVkZT0ib3B1c19zb3Vy
Y2UuYmFzZTY0Ij8+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0idGVzdC12
ZWN0b3JzIiB0aXRsZT0iVGVzdCBWZWN0b3JzIj4KKzx0PgorQmVjYXVzZSBvZiBzaXplIGNvbnN0
cmFpbnRzLCB0aGUgT3B1cyB0ZXN0IHZlY3RvcnMgYXJlIG5vdCBkaXN0cmlidXRlZCBpbiB0aGlz
CitkcmFmdC4gVGhleSBhcmUgYXZhaWxhYmxlIGluIHRoZSBwcm9jZWVkaW5ncyBvZiB0aGUgODN0
aCBJRVRGIG1lZXRpbmcgKFBhcmlzKSA8eHJlZiB0YXJnZXQ9IlZlY3RvcnMtcHJvYyIvPiBhbmQg
ZnJvbSB0aGUgT3B1cyBjb2RlYyB3ZWJzaXRlIGF0Cis8eHJlZiB0YXJnZXQ9IlZlY3RvcnMtd2Vi
c2l0ZSIvPi4gVGhlc2UgdGVzdCB2ZWN0b3JzIHdlcmUgY3JlYXRlZCBzcGVjaWZpY2FsbHkgdG8g
ZXhlcmNpc2UKK2FsbCBhc3BlY3RzIG9mIHRoZSBkZWNvZGVyIGFuZCB0aGVyZWZvcmUgdGhlIGF1
ZGlvIHF1YWxpdHkgb2YgdGhlIGRlY29kZWQgb3V0cHV0IGlzCitzaWduaWZpY2FudGx5IGxvd2Vy
IHRoYW4gd2hhdCBPcHVzIGNhbiBhY2hpZXZlIGluIG5vcm1hbCBvcGVyYXRpb24uCis8L3Q+CisK
Kzx0PgorVGhlIFNIQTEgaGFzaCBvZiB0aGUgZmlsZXMgaW4gdGhlIHRlc3QgdmVjdG9yIHBhY2th
Z2UgYXJlCis8P3JmYyBpbmNsdWRlPSJ0ZXN0dmVjdG9yc19zaGExIj8+Cis8L3Q+CisKKzwvc2Vj
dGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNlbGYtZGVsaW1pdGluZy1m
cmFtaW5nIiB0aXRsZT0iU2VsZi1EZWxpbWl0aW5nIEZyYW1pbmciPgorPHQ+CitUbyB1c2UgdGhl
IGludGVybmFsIGZyYW1pbmcgZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0ibW9kZXMiLz4sIHRo
ZSBkZWNvZGVyCisgbXVzdCBrbm93IHRoZSB0b3RhbCBsZW5ndGggb2YgdGhlIE9wdXMgcGFja2V0
LCBpbiBieXRlcy4KK1RoaXMgc2VjdGlvbiBkZXNjcmliZXMgYSBzaW1wbGUgdmFyaWF0aW9uIG9m
IHRoYXQgZnJhbWluZyB3aGljaCBjYW4gYmUgdXNlZAorIHdoZW4gdGhlIHRvdGFsIGxlbmd0aCBv
ZiB0aGUgcGFja2V0IGlzIG5vdCBrbm93bi4KK05vdGhpbmcgaW4gdGhlIGVuY29kaW5nIG9mIHRo
ZSBwYWNrZXQgaXRzZWxmIGFsbG93cyBhIGRlY29kZXIgdG8gZGlzdGluZ3Vpc2gKKyBiZXR3ZWVu
IHRoZSByZWd1bGFyLCB1bmRlbGltaXRlZCBmcmFtaW5nIGFuZCB0aGUgc2VsZi1kZWxpbWl0aW5n
IGZyYW1pbmcKKyBkZXNjcmliZWQgaW4gdGhpcyBhcHBlbmRpeC4KK1doaWNoIG9uZSBpcyB1c2Vk
IGFuZCB3aGVyZSBtdXN0IGJlIGVzdGFibGlzaGVkIGJ5IGNvbnRleHQgYXQgdGhlIHRyYW5zcG9y
dAorIGxheWVyLgorSXQgaXMgUkVDT01NRU5ERUQgdGhhdCBhIHRyYW5zcG9ydCBsYXllciBjaG9v
c2UgZXhhY3RseSBvbmUgZnJhbWluZyBzY2hlbWUsCisgcmF0aGVyIHRoYW4gYWxsb3dpbmcgYW4g
ZW5jb2RlciB0byBzaWduYWwgd2hpY2ggb25lIGl0IHdhbnRzIHRvIHVzZS4KKzwvdD4KKworPHQ+
CitGb3IgZXhhbXBsZSwgYWx0aG91Z2ggYSByZWd1bGFyIE9wdXMgc3RyZWFtIGRvZXMgbm90IHN1
cHBvcnQgbW9yZSB0aGFuIHR3bworIGNoYW5uZWxzLCBhIG11bHRpLWNoYW5uZWwgT3B1cyBzdHJl
YW0gbWF5IGJlIGZvcm1lZCBmcm9tIHNldmVyYWwgb25lLSBhbmQKKyB0d28tY2hhbm5lbCBzdHJl
YW1zLgorVG8gcGFjayBhbiBPcHVzIHBhY2tldCBmcm9tIGVhY2ggb2YgdGhlc2Ugc3RyZWFtcyB0
b2dldGhlciBpbiBhIHNpbmdsZSBwYWNrZXQKKyBhdCB0aGUgdHJhbnNwb3J0IGxheWVyLCBvbmUg
Y291bGQgdXNlIHRoZSBzZWxmLWRlbGltaXRpbmcgZnJhbWluZyBmb3IgYWxsIGJ1dAorIHRoZSBs
YXN0IHN0cmVhbSwgYW5kIHRoZW4gdGhlIHJlZ3VsYXIsIHVuZGVsaW1pdGVkIGZyYW1pbmcgZm9y
IHRoZSBsYXN0IG9uZS4KK1JldmVydGluZyB0byB0aGUgdW5kZWxpbWl0ZWQgZnJhbWluZyBmb3Ig
dGhlIGxhc3Qgc3RyZWFtIHNhdmVzIG92ZXJoZWFkCisgKGJlY2F1c2UgdGhlIHRvdGFsIHNpemUg
b2YgdGhlIHRyYW5zcG9ydC1sYXllciBwYWNrZXQgd2lsbCBzdGlsbCBiZSBrbm93biksCisgYW5k
IGVuc3VyZXMgdGhhdCBhICJtdWx0aS1jaGFubmVsIiBzdHJlYW0gd2hpY2ggb25seSBoYXMgYSBz
aW5nbGUgT3B1cyBzdHJlYW0KKyB1c2VzIHRoZSBzYW1lIGZyYW1pbmcgYXMgYSByZWd1bGFyIE9w
dXMgc3RyZWFtIGRvZXMuCitUaGlzIGF2b2lkcyB0aGUgbmVlZCBmb3Igc2lnbmFsaW5nIHRvIGRp
c3Rpbmd1aXNoIHRoZXNlIHR3byBjYXNlcy4KKzwvdD4KKworPHQ+CitUaGUgc2VsZi1kZWxpbWl0
aW5nIGZyYW1pbmcgaXMgaWRlbnRpY2FsIHRvIHRoZSByZWd1bGFyLCB1bmRlbGltaXRlZCBmcmFt
aW5nCisgZnJvbSA8eHJlZiB0YXJnZXQ9Im1vZGVzIi8+LCBleGNlcHQgdGhhdCBlYWNoIE9wdXMg
cGFja2V0IGNvbnRhaW5zIG9uZSBleHRyYQorIGxlbmd0aCBmaWVsZCwgZW5jb2RlZCB1c2luZyB0
aGUgc2FtZSBvbmUtIG9yIHR3by1ieXRlIHNjaGVtZSBmcm9tCisgPHhyZWYgdGFyZ2V0PSJmcmFt
ZS1sZW5ndGgtY29kaW5nIi8+LgorVGhpcyBleHRyYSBsZW5ndGggaW1tZWRpYXRlbHkgcHJlY2Vk
ZXMgdGhlIGNvbXByZXNzZWQgZGF0YSBvZiB0aGUgZmlyc3QgT3B1cworIGZyYW1lIGluIHRoZSBw
YWNrZXQsIGFuZCBpcyBpbnRlcnByZXRlZCBpbiB0aGUgdmFyaW91cyBtb2RlcyBhcyBmb2xsb3dz
OgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitDb2RlJm5ic3A7MCBwYWNrZXRzOiBJdCBp
cyB0aGUgbGVuZ3RoIG9mIHRoZSBzaW5nbGUgT3B1cyBmcmFtZSAoc2VlCisgPHhyZWYgdGFyZ2V0
PSJzZF9jb2RlMF9wYWNrZXQiLz4pLgorPC90PgorPHQ+CitDb2RlJm5ic3A7MSBwYWNrZXRzOiBJ
dCBpcyB0aGUgbGVuZ3RoIHVzZWQgZm9yIGJvdGggb2YgdGhlIE9wdXMgZnJhbWVzIChzZWUKKyA8
eHJlZiB0YXJnZXQ9InNkX2NvZGUxX3BhY2tldCIvPikuCis8L3Q+Cis8dD4KK0NvZGUmbmJzcDsy
IHBhY2tldHM6IEl0IGlzIHRoZSBsZW5ndGggb2YgdGhlIHNlY29uZCBPcHVzIGZyYW1lIChzZWUK
KyA8eHJlZiB0YXJnZXQ9InNkX2NvZGUyX3BhY2tldCIvPikuPC90PgorPHQ+CitDQlIgQ29kZSZu
YnNwOzMgcGFja2V0czogSXQgaXMgdGhlIGxlbmd0aCB1c2VkIGZvciBhbGwgb2YgdGhlIE9wdXMg
ZnJhbWVzIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNkX2NvZGUzY2JyX3BhY2tldCIvPikuCis8L3Q+
Cis8dD5WQlIgQ29kZSZuYnNwOzMgcGFja2V0czogSXQgaXMgdGhlIGxlbmd0aCBvZiB0aGUgbGFz
dCBPcHVzIGZyYW1lIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNkX2NvZGUzdmJyX3BhY2tldCIvPiku
Cis8L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSJzZF9jb2RlMF9wYWNrZXQi
IHRpdGxlPSJBIFNlbGYtRGVsaW1pdGVkIENvZGUgMCBQYWNrZXQiCisgYWxpZ249ImNlbnRlciI+
Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAwICAgICAgICAgICAgICAgICAg
IDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUg
NiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKworfCBjb25maWcgIHxzfDB8MHwgTjEgKDEtMiBieXRlcyk6ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFt
ZSAxIChOMSBieXRlcykuLi4gICAgICAgICAgICAgICAgOgorOiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cisr
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzxmaWd1cmUgYW5jaG9yPSJzZF9j
b2RlMV9wYWNrZXQiIHRpdGxlPSJBIFNlbGYtRGVsaW1pdGVkIENvZGUgMSBQYWNrZXQiCisgYWxp
Z249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAwICAgICAg
ICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAgICAzCisg
MCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4
IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxzfDB8MXwgTjEgKDEtMiBieXRlcyk6ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgQ29t
cHJlc3NlZCBmcmFtZSAxIChOMSBieXRlcykuLi4gICAgICAgICAgICAgICAgfAorOiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICArLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsK
K3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMiAo
TjEgYnl0ZXMpLi4uICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKwor
PGZpZ3VyZSBhbmNob3I9InNkX2NvZGUyX3BhY2tldCIgdGl0bGU9IkEgU2VsZi1EZWxpbWl0ZWQg
Q29kZSAyIFBhY2tldCIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIi
PjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAg
ICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4
IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8IGNvbmZpZyAgfHN8MXwwfCBO
MSAoMS0yIGJ5dGVzKTogTjIgKDEtMiBieXRlcyA6ICAgICAgICAgICAgICAgfAorKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAgIDoK
K3wgICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDEgKE4xIGJ5dGVzKS4uLiAgICAgICAg
ICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAg
Q29tcHJlc3NlZCBmcmFtZSAyIChOMiBieXRlcykuLi4gICAgICAgICAgICAgICAgOgorOiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzxmaWd1
cmUgYW5jaG9yPSJzZF9jb2RlM2Nicl9wYWNrZXQiIHRpdGxlPSJBIFNlbGYtRGVsaW1pdGVkIENC
UiBDb2RlIDMgUGFja2V0IgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRl
ciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIg
ICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3
IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgY29uZmlnICB8c3wxfDF8
MHxwfCAgICAgTSAgICAgfCBQYWQgbGVuIChPcHQpIDogTjEgKDEtMiBieXRlcyk6CisrLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
KworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwKKzogICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDEgKE4xIGJ5dGVz
KS4uLiAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAg
ICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAyIChOMSBieXRlcykuLi4gICAgICAgICAgICAg
ICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC4uLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cisr
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIE0gKE4x
IGJ5dGVzKS4uLiAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKKzogICAgICAg
ICAgICAgICAgICBPcHVzIFBhZGRpbmcgKE9wdGlvbmFsKS4uLiAgICAgICAgICAgICAgICAgICB8
CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzxmaWd1cmUgYW5jaG9yPSJz
ZF9jb2RlM3Zicl9wYWNrZXQiIHRpdGxlPSJBIFNlbGYtRGVsaW1pdGVkIFZCUiBDb2RlIDMgUGFj
a2V0IgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFb
CisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAg
ICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAz
IDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgY29uZmlnICB8c3wxfDF8MXxwfCAgICAgTSAg
ICAgfCBQYWRkaW5nIGxlbmd0aCAoT3B0aW9uYWwpICAgICA6CisrLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworOiBOMSAoMS0y
IGJ5dGVzKTogICAgIC4uLiAgICAgICA6ICAgICBOW00tMV0gICAgfCAgICAgTltNXSAgICAgIDoK
KystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMSAo
TjEgYnl0ZXMpLi4uICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKKzogICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDIgKE4yIGJ5dGVzKS4uLiAgICAg
ICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOgorfCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFt
ZSBNIChOW01dIGJ5dGVzKS4uLiAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwor
OiAgICAgICAgICAgICAgICAgIE9wdXMgUGFkZGluZyAoT3B0aW9uYWwpLi4uICAgICAgICAgICAg
ICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPC9zZWN0aW9u
PgorCis8L2JhY2s+CisKKzwvcmZjPgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1wYXlsb2Fk
LXJ0cC1vcHVzLnhtbCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvZG9jL2RyYWZ0LWlldGYtcGF5bG9hZC1ydHAtb3B1cy54bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYzRlYjIxMDc3YjcyMjRlZjE0NDNmNmQ0NTY1ODMyNjA0ZjQ3ZGQzOAotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvZG9jL2RyYWZ0LWlldGYtcGF5bG9hZC1ydHAtb3B1cy54bWwKQEAgLTAsMCArMSw5
NjAgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8IURPQ1RZUEUg
cmZjIFNZU1RFTSAicmZjMjYyOS5kdGQiIFsKKzwhRU5USVRZIHJmYzIxMTkgUFVCTElDICcnICdo
dHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjIx
MTkueG1sJz4KKzwhRU5USVRZIHJmYzMzODkgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNl
Lm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjMzODkueG1sJz4KKzwhRU5USVRZ
IHJmYzM1NTAgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2Jp
YnhtbC9yZWZlcmVuY2UuUkZDLjM1NTAueG1sJz4KKzwhRU5USVRZIHJmYzM3MTEgUFVCTElDICcn
ICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZD
LjM3MTEueG1sJz4KKzwhRU5USVRZIHJmYzM1NTEgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291
cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjM1NTEueG1sJz4KKzwhRU5U
SVRZIHJmYzY4MzggUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZj
L2JpYnhtbC9yZWZlcmVuY2UuUkZDLjY4MzgueG1sJz4KKzwhRU5USVRZIHJmYzQ4NTUgUFVCTElD
ICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2Uu
UkZDLjQ4NTUueG1sJz4KKzwhRU5USVRZIHJmYzQ1NjYgUFVCTElDICcnICdodHRwOi8veG1sLnJl
c291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjQ1NjYueG1sJz4KKzwh
RU5USVRZIHJmYzQ1ODUgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMv
cmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjQ1ODUueG1sJz4KKzwhRU5USVRZIHJmYzMyNjQgUFVC
TElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVu
Y2UuUkZDLjMyNjQueG1sJz4KKzwhRU5USVRZIHJmYzI5NzQgUFVCTElDICcnICdodHRwOi8veG1s
LnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjI5NzQueG1sJz4K
KzwhRU5USVRZIHJmYzIzMjYgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJs
aWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjIzMjYueG1sJz4KKzwhRU5USVRZIHJmYzM1NTUg
UFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZl
cmVuY2UuUkZDLjM1NTUueG1sJz4KKzwhRU5USVRZIHJmYzUxMjQgUFVCTElDICcnICdodHRwOi8v
eG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjUxMjQueG1s
Jz4KKzwhRU5USVRZIHJmYzU0MDUgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9w
dWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjU0MDUueG1sJz4KKzwhRU5USVRZIHJmYzU1
NzYgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9y
ZWZlcmVuY2UuUkZDLjU1NzYueG1sJz4KKzwhRU5USVRZIHJmYzY1NjIgUFVCTElDICcnICdodHRw
Oi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjY1NjIu
eG1sJz4KKzwhRU5USVRZIHJmYzY3MTYgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9y
Zy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjY3MTYueG1sJz4KKzwhRU5USVRZIHJm
YzcyMDIgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnht
bC9yZWZlcmVuY2UuUkZDLjcyMDIueG1sJz4KKzwhRU5USVRZIG5ic3AgIiYjMTYwOyI+CisgIF0+
CisKKyAgPHJmYyBjYXRlZ29yeT0ic3RkIiBpcHI9InRydXN0MjAwOTAyIiBkb2NOYW1lPSJkcmFm
dC1pZXRmLXBheWxvYWQtcnRwLW9wdXMtMTEiPgorPD94bWwtc3R5bGVzaGVldCB0eXBlPSd0ZXh0
L3hzbCcgaHJlZj0ncmZjMjYyOS54c2x0JyA/PgorCis8P3JmYyBzdHJpY3Q9InllcyIgPz4KKzw/
cmZjIHRvYz0ieWVzIiA/PgorPD9yZmMgdG9jZGVwdGg9IjMiID8+Cis8P3JmYyB0b2NhcHBlbmRp
eD0nbm8nID8+Cis8P3JmYyB0b2NpbmRlbnQ9J3llcycgPz4KKzw/cmZjIHN5bXJlZnM9InllcyIg
Pz4KKzw/cmZjIHNvcnRyZWZzPSJ5ZXMiID8+Cis8P3JmYyBjb21wYWN0PSJubyIgPz4KKzw/cmZj
IHN1YmNvbXBhY3Q9InllcyIgPz4KKzw/cmZjIGlwcm5vdGlmaWVkPSJ5ZXMiID8+CisKKyAgPGZy
b250PgorICAgIDx0aXRsZSBhYmJyZXY9IlJUUCBQYXlsb2FkIEZvcm1hdCBmb3IgT3B1cyI+Cisg
ICAgICBSVFAgUGF5bG9hZCBGb3JtYXQgZm9yIHRoZSBPcHVzIFNwZWVjaCBhbmQgQXVkaW8gQ29k
ZWMKKyAgICA8L3RpdGxlPgorCisgICAgPGF1dGhvciBmdWxsbmFtZT0iSnVsaWFuIFNwaXR0a2Ei
IGluaXRpYWxzPSJKLiIgc3VybmFtZT0iU3BpdHRrYSI+CisgICAgICA8YWRkcmVzcz4KKyAgICAg
ICAgPGVtYWlsPmpzcGl0dGthQGdtYWlsLmNvbTwvZW1haWw+CisgICAgICA8L2FkZHJlc3M+Cisg
ICAgPC9hdXRob3I+CisKKyAgICA8YXV0aG9yIGluaXRpYWxzPSdLLicgc3VybmFtZT0nVm9zJyBm
dWxsbmFtZT0nS29lbiBWb3MnPgorICAgICAgPG9yZ2FuaXphdGlvbj52b2NUb25lPC9vcmdhbml6
YXRpb24+CisgICAgICA8YWRkcmVzcz4KKyAgICAgICAgPHBvc3RhbD4KKyAgICAgICAgICA8c3Ry
ZWV0Pjwvc3RyZWV0PgorICAgICAgICAgIDxjb2RlPjwvY29kZT4KKyAgICAgICAgICA8Y2l0eT48
L2NpdHk+CisgICAgICAgICAgPHJlZ2lvbj48L3JlZ2lvbj4KKyAgICAgICAgICA8Y291bnRyeT48
L2NvdW50cnk+CisgICAgICAgIDwvcG9zdGFsPgorICAgICAgICA8ZW1haWw+a29lbnZvczc0QGdt
YWlsLmNvbTwvZW1haWw+CisgICAgICA8L2FkZHJlc3M+CisgICAgPC9hdXRob3I+CisKKyAgICA8
YXV0aG9yIGluaXRpYWxzPSJKTSIgc3VybmFtZT0iVmFsaW4iIGZ1bGxuYW1lPSJKZWFuLU1hcmMg
VmFsaW4iPgorICAgICAgPG9yZ2FuaXphdGlvbj5Nb3ppbGxhPC9vcmdhbml6YXRpb24+CisgICAg
ICA8YWRkcmVzcz4KKyAgICAgICAgPHBvc3RhbD4KKyAgICAgICAgICA8c3RyZWV0PjMzMSBFLiBF
dmVseW4gQXZlbnVlPC9zdHJlZXQ+CisgICAgICAgICAgPGNpdHk+TW91bnRhaW4gVmlldzwvY2l0
eT4KKyAgICAgICAgICA8cmVnaW9uPkNBPC9yZWdpb24+CisgICAgICAgICAgPGNvZGU+OTQwNDE8
L2NvZGU+CisgICAgICAgICAgPGNvdW50cnk+VVNBPC9jb3VudHJ5PgorICAgICAgICA8L3Bvc3Rh
bD4KKyAgICAgICAgPGVtYWlsPmptdmFsaW5Aam12YWxpbi5jYTwvZW1haWw+CisgICAgICA8L2Fk
ZHJlc3M+CisgICAgPC9hdXRob3I+CisKKyAgICA8ZGF0ZSBkYXk9JzE0JyBtb250aD0nQXByaWwn
IHllYXI9JzIwMTUnIC8+CisKKyAgICA8YWJzdHJhY3Q+CisgICAgICA8dD4KKyAgICAgICAgVGhp
cyBkb2N1bWVudCBkZWZpbmVzIHRoZSBSZWFsLXRpbWUgVHJhbnNwb3J0IFByb3RvY29sIChSVFAp
IHBheWxvYWQKKyAgICAgICAgZm9ybWF0IGZvciBwYWNrZXRpemF0aW9uIG9mIE9wdXMgZW5jb2Rl
ZAorICAgICAgICBzcGVlY2ggYW5kIGF1ZGlvIGRhdGEgbmVjZXNzYXJ5IHRvIGludGVncmF0ZSB0
aGUgY29kZWMgaW4gdGhlCisgICAgICAgIG1vc3QgY29tcGF0aWJsZSB3YXkuIEl0IGFsc28gcHJv
dmlkZXMgYW4gYXBwbGljYWJpbGl0eSBzdGF0ZW1lbnQKKyAgICAgICAgZm9yIHRoZSB1c2Ugb2Yg
T3B1cyBvdmVyIFJUUC4gRnVydGhlciwgaXQgZGVzY3JpYmVzIG1lZGlhIHR5cGUgcmVnaXN0cmF0
aW9ucworICAgICAgICBmb3IgdGhlIFJUUCBwYXlsb2FkIGZvcm1hdC4KKyAgICAgIDwvdD4KKyAg
ICA8L2Fic3RyYWN0PgorICA8L2Zyb250PgorCisgIDxtaWRkbGU+CisgICAgPHNlY3Rpb24gdGl0
bGU9J0ludHJvZHVjdGlvbic+CisgICAgICA8dD4KKyAgICAgICAgT3B1cyA8eHJlZiB0YXJnZXQ9
IlJGQzY3MTYiLz4gaXMgYSBzcGVlY2ggYW5kIGF1ZGlvIGNvZGVjIGRldmVsb3BlZCB3aXRoaW4g
dGhlCisgICAgICAgIElFVEYgSW50ZXJuZXQgV2lkZWJhbmQgQXVkaW8gQ29kZWMgd29ya2luZyBn
cm91cC4gVGhlIGNvZGVjCisgICAgICAgIGhhcyBhIHZlcnkgbG93IGFsZ29yaXRobWljIGRlbGF5
IGFuZCBpdAorICAgICAgICBpcyBoaWdobHkgc2NhbGFibGUgaW4gdGVybXMgb2YgYXVkaW8gYmFu
ZHdpZHRoLCBiaXRyYXRlLCBhbmQKKyAgICAgICAgY29tcGxleGl0eS4gRnVydGhlciwgaXQgcHJv
dmlkZXMgZGlmZmVyZW50IG1vZGVzIHRvIGVmZmljaWVudGx5IGVuY29kZSBzcGVlY2ggc2lnbmFs
cworICAgICAgICBhcyB3ZWxsIGFzIG11c2ljIHNpZ25hbHMsIHRodXMgbWFraW5nIGl0IHRoZSBj
b2RlYyBvZiBjaG9pY2UgZm9yCisgICAgICAgIHZhcmlvdXMgYXBwbGljYXRpb25zIHVzaW5nIHRo
ZSBJbnRlcm5ldCBvciBzaW1pbGFyIG5ldHdvcmtzLgorICAgICAgPC90PgorICAgICAgPHQ+Cisg
ICAgICAgIFRoaXMgZG9jdW1lbnQgZGVmaW5lcyB0aGUgUmVhbC10aW1lIFRyYW5zcG9ydCBQcm90
b2NvbCAoUlRQKQorICAgICAgICA8eHJlZiB0YXJnZXQ9IlJGQzM1NTAiLz4gcGF5bG9hZCBmb3Jt
YXQgZm9yIHBhY2tldGl6YXRpb24KKyAgICAgICAgb2YgT3B1cyBlbmNvZGVkIHNwZWVjaCBhbmQg
YXVkaW8gZGF0YSBuZWNlc3NhcnkgdG8KKyAgICAgICAgaW50ZWdyYXRlIE9wdXMgaW4gdGhlCisg
ICAgICAgIG1vc3QgY29tcGF0aWJsZSB3YXkuIEl0IGFsc28gcHJvdmlkZXMgYW4gYXBwbGljYWJp
bGl0eSBzdGF0ZW1lbnQKKyAgICAgICAgZm9yIHRoZSB1c2Ugb2YgT3B1cyBvdmVyIFJUUC4KKyAg
ICAgICAgRnVydGhlciwgaXQgZGVzY3JpYmVzIG1lZGlhIHR5cGUgcmVnaXN0cmF0aW9ucyBmb3IK
KyAgICAgICAgdGhlIFJUUCBwYXlsb2FkIGZvcm1hdC4KKyAgICAgIDwvdD4KKyAgICA8L3NlY3Rp
b24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0nQ29udmVudGlvbnMsIERlZmluaXRpb25zIGFuZCBB
Y3JvbnltcyB1c2VkIGluIHRoaXMgZG9jdW1lbnQnPgorICAgICAgPHQ+VGhlIGtleSB3b3JkcyAi
TVVTVCIsICJNVVNUIE5PVCIsICJSRVFVSVJFRCIsICJTSEFMTCIsICJTSEFMTCBOT1QiLAorICAg
ICAgIlNIT1VMRCIsICJTSE9VTEQgTk9UIiwgIlJFQ09NTUVOREVEIiwgIk1BWSIsIGFuZCAiT1BU
SU9OQUwiIGluIHRoaXMKKyAgICAgIGRvY3VtZW50IGFyZSB0byBiZSBpbnRlcnByZXRlZCBhcyBk
ZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJSRkMyMTE5Ii8+LjwvdD4KKyAgICAgIDx0PgorICAg
ICAgPGxpc3Qgc3R5bGU9J2hhbmdpbmcnPgorICAgICAgICAgIDx0IGhhbmdUZXh0PSJhdWRpbyBi
YW5kd2lkdGg6Ij4gVGhlIHJhbmdlIG9mIGF1ZGlvIGZyZXF1ZWNpZXMgYmVpbmcgY29kZWQ8L3Q+
CisgICAgICAgICAgPHQgaGFuZ1RleHQ9IkNCUjoiPiBDb25zdGFudCBiaXRyYXRlPC90PgorICAg
ICAgICAgIDx0IGhhbmdUZXh0PSJDUFU6Ij4gQ2VudHJhbCBQcm9jZXNzaW5nIFVuaXQ8L3Q+Cisg
ICAgICAgICAgPHQgaGFuZ1RleHQ9IkRUWDoiPiBEaXNjb250aW51b3VzIHRyYW5zbWlzc2lvbjwv
dD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0iRkVDOiI+IEZvcndhcmQgZXJyb3IgY29ycmVjdGlv
bjwvdD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0iSVA6Ij4gSW50ZXJuZXQgUHJvdG9jb2w8L3Q+
CisgICAgICAgICAgPHQgaGFuZ1RleHQ9InNhbXBsZXM6Ij4gU3BlZWNoIG9yIGF1ZGlvIHNhbXBs
ZXMgKHBlciBjaGFubmVsKTwvdD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0iU0RQOiI+IFNlc3Np
b24gRGVzY3JpcHRpb24gUHJvdG9jb2w8L3Q+CisgICAgICAgICAgPHQgaGFuZ1RleHQ9IlZCUjoi
PiBWYXJpYWJsZSBiaXRyYXRlPC90PgorICAgICAgPC9saXN0PgorICAgICAgPC90PgorICAgICAg
ICA8dD4KKyAgICAgICAgICBUaHJvdWdob3V0IHRoaXMgZG9jdW1lbnQsIHdlIHJlZmVyIHRvIHRo
ZSBmb2xsb3dpbmcgZGVmaW5pdGlvbnM6CisgICAgICAgIDwvdD4KKyAgICAgICAgICA8dGV4dHRh
YmxlIGFuY2hvcj0nYmFuZHdpZHRoX2RlZmluaXRpb25zJz4KKyAgICAgICAgICAgIDx0dGNvbCBh
bGlnbj0nY2VudGVyJz5BYmJyZXZpYXRpb248L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFs
aWduPSdjZW50ZXInPk5hbWU8L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50
ZXInPkF1ZGlvIEJhbmR3aWR0aCAoSHopPC90dGNvbD4KKyAgICAgICAgICAgIDx0dGNvbCBhbGln
bj0nY2VudGVyJz5TYW1wbGluZyBSYXRlIChIeik8L3R0Y29sPgorICAgICAgICAgICAgPGM+TkI8
L2M+CisgICAgICAgICAgICA8Yz5OYXJyb3diYW5kPC9jPgorICAgICAgICAgICAgPGM+MCAtIDQw
MDA8L2M+CisgICAgICAgICAgICA8Yz44MDAwPC9jPgorCisgICAgICAgICAgICA8Yz5NQjwvYz4K
KyAgICAgICAgICAgIDxjPk1lZGl1bWJhbmQ8L2M+CisgICAgICAgICAgICA8Yz4wIC0gNjAwMDwv
Yz4KKyAgICAgICAgICAgIDxjPjEyMDAwPC9jPgorCisgICAgICAgICAgICA8Yz5XQjwvYz4KKyAg
ICAgICAgICAgIDxjPldpZGViYW5kPC9jPgorICAgICAgICAgICAgPGM+MCAtIDgwMDA8L2M+Cisg
ICAgICAgICAgICA8Yz4xNjAwMDwvYz4KKworICAgICAgICAgICAgPGM+U1dCPC9jPgorICAgICAg
ICAgICAgPGM+U3VwZXItd2lkZWJhbmQ8L2M+CisgICAgICAgICAgICA8Yz4wIC0gMTIwMDA8L2M+
CisgICAgICAgICAgICA8Yz4yNDAwMDwvYz4KKworICAgICAgICAgICAgPGM+RkI8L2M+CisgICAg
ICAgICAgICA8Yz5GdWxsYmFuZDwvYz4KKyAgICAgICAgICAgIDxjPjAgLSAyMDAwMDwvYz4KKyAg
ICAgICAgICAgIDxjPjQ4MDAwPC9jPgorCisgICAgICAgICAgICA8cG9zdGFtYmxlPgorICAgICAg
ICAgICAgICBBdWRpbyBiYW5kd2lkdGggbmFtaW5nCisgICAgICAgICAgICA8L3Bvc3RhbWJsZT4K
KyAgICAgICAgICA8L3RleHR0YWJsZT4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0
aXRsZT0nT3B1cyBDb2RlYyc+CisgICAgICA8dD4KKyAgICAgICAgT3B1cyBlbmNvZGVzIHNwZWVj
aAorICAgICAgICBzaWduYWxzIGFzIHdlbGwgYXMgZ2VuZXJhbCBhdWRpbyBzaWduYWxzLiBUd28g
ZGlmZmVyZW50IG1vZGVzIGNhbiBiZQorICAgICAgICBjaG9zZW4sIGEgdm9pY2UgbW9kZSBvciBh
biBhdWRpbyBtb2RlLCB0byBhbGxvdyB0aGUgbW9zdCBlZmZpY2llbnQgY29kaW5nCisgICAgICAg
IGRlcGVuZGluZyBvbiB0aGUgdHlwZSBvZiB0aGUgaW5wdXQgc2lnbmFsLCB0aGUgc2FtcGxpbmcg
ZnJlcXVlbmN5IG9mIHRoZQorICAgICAgICBpbnB1dCBzaWduYWwsIGFuZCB0aGUgaW50ZW5kZWQg
YXBwbGljYXRpb24uCisgICAgICA8L3Q+CisKKyAgICAgIDx0PgorICAgICAgICBUaGUgdm9pY2Ug
bW9kZSBhbGxvd3MgZWZmaWNpZW50IGVuY29kaW5nIG9mIHZvaWNlIHNpZ25hbHMgYXQgbG93ZXIg
Yml0CisgICAgICAgIHJhdGVzIHdoaWxlIHRoZSBhdWRpbyBtb2RlIGlzIG9wdGltaXplZCBmb3Ig
Z2VuZXJhbCBhdWRpbyBzaWduYWxzIGF0IG1lZGl1bSBhbmQKKyAgICAgICAgaGlnaGVyIGJpdHJh
dGVzLgorICAgICAgPC90PgorCisgICAgICA8dD4KKyAgICAgICAgT3B1cyBpcyBoaWdobHkgc2Nh
bGFibGUgaW4gdGVybXMgb2YgYXVkaW8KKyAgICAgICAgYmFuZHdpZHRoLCBiaXRyYXRlLCBhbmQg
Y29tcGxleGl0eS4gRnVydGhlciwgT3B1cyBhbGxvd3MKKyAgICAgICAgdHJhbnNtaXR0aW5nIHN0
ZXJlbyBzaWduYWxzIHdpdGggaW4tYmFuZCBzaWduYWxpbmcgaW4gdGhlIGJpdC1zdHJlYW0uCisg
ICAgICA8L3Q+CisKKyAgICAgIDxzZWN0aW9uIHRpdGxlPSdOZXR3b3JrIEJhbmR3aWR0aCc+Cisg
ICAgICAgICAgPHQ+CisgICAgICAgICAgICBPcHVzIHN1cHBvcnRzIGJpdHJhdGVzIGZyb20gNiZu
YnNwO2tiL3MgdG8gNTEwJm5ic3A7a2Ivcy4KKyAgICAgICAgICAgIFRoZSBiaXRyYXRlIGNhbiBi
ZSBjaGFuZ2VkIGR5bmFtaWNhbGx5IHdpdGhpbiB0aGF0IHJhbmdlLgorICAgICAgICAgICAgQWxs
CisgICAgICAgICAgICBvdGhlciBwYXJhbWV0ZXJzIGJlaW5nCisgICAgICAgICAgICBlcXVhbCwg
aGlnaGVyIGJpdHJhdGVzIHJlc3VsdCBpbiBoaWdoZXIgYXVkaW8gcXVhbGl0eS4KKyAgICAgICAg
ICA8L3Q+CisgICAgICAgICAgPHNlY3Rpb24gdGl0bGU9J1JlY29tbWVuZGVkIEJpdHJhdGUnIGFu
Y2hvcj0nYml0cmF0ZV9ieV9iYW5kd2lkdGgnPgorICAgICAgICAgIDx0PgorICAgICAgICAgICAg
Rm9yIGEgZnJhbWUgc2l6ZSBvZgorICAgICAgICAgICAgMjAmbmJzcDttcywgdGhlc2UKKyAgICAg
ICAgICAgIGFyZSB0aGUgYml0cmF0ZSAic3dlZXQgc3BvdHMiIGZvciBPcHVzIGluIHZhcmlvdXMg
Y29uZmlndXJhdGlvbnM6CisKKyAgICAgICAgICA8bGlzdCBzdHlsZT0ic3ltYm9scyI+CisgICAg
ICAgICAgICA8dD44LTEyIGtiL3MgZm9yIE5CIHNwZWVjaCw8L3Q+CisgICAgICAgICAgICA8dD4x
Ni0yMCBrYi9zIGZvciBXQiBzcGVlY2gsPC90PgorICAgICAgICAgICAgPHQ+MjgtNDAga2IvcyBm
b3IgRkIgc3BlZWNoLDwvdD4KKyAgICAgICAgICAgIDx0PjQ4LTY0IGtiL3MgZm9yIEZCIG1vbm8g
bXVzaWMsIGFuZDwvdD4KKyAgICAgICAgICAgIDx0PjY0LTEyOCBrYi9zIGZvciBGQiBzdGVyZW8g
bXVzaWMuPC90PgorICAgICAgICAgIDwvbGlzdD4KKyAgICAgICAgPC90PgorICAgICAgPC9zZWN0
aW9uPgorICAgICAgICA8c2VjdGlvbiB0aXRsZT0nVmFyaWFibGUgdmVyc3VzIENvbnN0YW50IEJp
dHJhdGUnICBhbmNob3I9J3ZhcmlhYmxlLXZzLWNvbnN0YW50LWJpdHJhdGUnPgorICAgICAgICAg
IDx0PgorICAgICAgICAgICAgRm9yIHRoZSBzYW1lIGF2ZXJhZ2UgYml0cmF0ZSwgdmFyaWFibGUg
Yml0cmF0ZSAoVkJSKSBjYW4gYWNoaWV2ZSBoaWdoZXIgYXVkaW8gcXVhbGl0eQorICAgICAgICAg
ICAgdGhhbiBjb25zdGFudCBiaXRyYXRlIChDQlIpLiBGb3IgdGhlIG1ham9yaXR5IG9mIHZvaWNl
IHRyYW5zbWlzc2lvbiBhcHBsaWNhdGlvbnMsIFZCUgorICAgICAgICAgICAgaXMgdGhlIGJlc3Qg
Y2hvaWNlLiBPbmUgcmVhc29uIGZvciBjaG9vc2luZyBDQlIgaXMgdGhlIHBvdGVudGlhbAorICAg
ICAgICAgICAgaW5mb3JtYXRpb24gbGVhayB0aGF0IDxzcGFueCBzdHlsZT0nZW1waCc+bWlnaHQ8
L3NwYW54PiBvY2N1ciB3aGVuIGVuY3J5cHRpbmcgdGhlCisgICAgICAgICAgICBjb21wcmVzc2Vk
IHN0cmVhbS4gU2VlIDx4cmVmIHRhcmdldD0iUkZDNjU2MiIvPiBmb3IgZ3VpZGVsaW5lcyBvbiB3
aGVuIFZCUiBpcworICAgICAgICAgICAgYXBwcm9wcmlhdGUgZm9yIGVuY3J5cHRlZCBhdWRpbyBj
b21tdW5pY2F0aW9ucy4gSW4gdGhlIGNhc2Ugd2hlcmUgYW4gZXhpc3RpbmcKKyAgICAgICAgICAg
IFZCUiBzdHJlYW0gbmVlZHMgdG8gYmUgY29udmVydGVkIHRvIENCUiBmb3Igc2VjdXJpdHkgcmVh
c29ucywgdGhlbiB0aGUgT3B1cyBwYWRkaW5nCisgICAgICAgICAgICBtZWNoYW5pc20gZGVzY3Jp
YmVkIGluIDx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPiBpcyB0aGUgUkVDT01NRU5ERUQgd2F5IHRv
IGFjaGlldmUgcGFkZGluZworICAgICAgICAgICAgYmVjYXVzZSB0aGUgUlRQIHBhZGRpbmcgYml0
IGlzIHVuZW5jcnlwdGVkLjwvdD4KKworICAgICAgICAgIDx0PgorICAgICAgICAgICAgVGhlIGJp
dHJhdGUgY2FuIGJlIGFkanVzdGVkIGF0IGFueSBwb2ludCBpbiB0aW1lLiBUbyBhdm9pZCBjb25n
ZXN0aW9uLAorICAgICAgICAgICAgdGhlIGF2ZXJhZ2UgYml0cmF0ZSBTSE9VTEQgTk9UIGV4Y2Vl
ZCB0aGUgYXZhaWxhYmxlCisgICAgICAgICAgICBuZXR3b3JrIGJhbmR3aWR0aC4gSWYgbm8gdGFy
Z2V0IGJpdHJhdGUgaXMgc3BlY2lmaWVkLCB0aGUgYml0cmF0ZXMgc3BlY2lmaWVkIGluCisgICAg
ICAgICAgICA8eHJlZiB0YXJnZXQ9J2JpdHJhdGVfYnlfYmFuZHdpZHRoJy8+IGFyZSBSRUNPTU1F
TkRFRC4KKyAgICAgICAgICA8L3Q+CisKKyAgICAgICAgPC9zZWN0aW9uPgorCisgICAgICAgIDxz
ZWN0aW9uIHRpdGxlPSdEaXNjb250aW51b3VzIFRyYW5zbWlzc2lvbiAoRFRYKSc+CisKKyAgICAg
ICAgICA8dD4KKyAgICAgICAgICAgIE9wdXMgY2FuLCBhcyBkZXNjcmliZWQgaW4gPHhyZWYgdGFy
Z2V0PSd2YXJpYWJsZS12cy1jb25zdGFudC1iaXRyYXRlJy8+LAorICAgICAgICAgICAgYmUgb3Bl
cmF0ZWQgd2l0aCBhIHZhcmlhYmxlIGJpdHJhdGUuIEluIHRoYXQgY2FzZSwgdGhlIGVuY29kZXIg
d2lsbAorICAgICAgICAgICAgYXV0b21hdGljYWxseSByZWR1Y2UgdGhlIGJpdHJhdGUgZm9yIGNl
cnRhaW4gaW5wdXQgc2lnbmFscywgbGlrZSBwZXJpb2RzCisgICAgICAgICAgICBvZiBzaWxlbmNl
LiBXaGVuIHVzaW5nIGNvbnRpbnVvdXMgdHJhbnNtaXNzaW9uLCBpdCB3aWxsIHJlZHVjZSB0aGUK
KyAgICAgICAgICAgIGJpdHJhdGUgd2hlbiB0aGUgY2hhcmFjdGVyaXN0aWNzIG9mIHRoZSBpbnB1
dCBzaWduYWwgcGVybWl0LCBidXQKKyAgICAgICAgICAgIHdpbGwgbmV2ZXIgaW50ZXJydXB0IHRo
ZSB0cmFuc21pc3Npb24gdG8gdGhlIHJlY2VpdmVyLiBUaGVyZWZvcmUsIHRoZQorICAgICAgICAg
ICAgcmVjZWl2ZWQgc2lnbmFsIHdpbGwgbWFpbnRhaW4gdGhlIHNhbWUgaGlnaCBsZXZlbCBvZiBh
dWRpbyBxdWFsaXR5IG92ZXIgdGhlCisgICAgICAgICAgICBmdWxsIGR1cmF0aW9uIG9mIGEgdHJh
bnNtaXNzaW9uIHdoaWxlIG1pbmltaXppbmcgdGhlIGF2ZXJhZ2UgYml0CisgICAgICAgICAgICBy
YXRlIG92ZXIgdGltZS4KKyAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICA8dD4KKyAgICAgICAg
ICAgIEluIGNhc2VzIHdoZXJlIHRoZSBiaXRyYXRlIG9mIE9wdXMgbmVlZHMgdG8gYmUgcmVkdWNl
ZCBldmVuCisgICAgICAgICAgICBmdXJ0aGVyIG9yIGluIGNhc2VzIHdoZXJlIG9ubHkgY29uc3Rh
bnQgYml0cmF0ZSBpcyBhdmFpbGFibGUsCisgICAgICAgICAgICB0aGUgT3B1cyBlbmNvZGVyIGNh
biB1c2UgZGlzY29udGludW91cworICAgICAgICAgICAgdHJhbnNtaXNzaW9uIChEVFgpLCB3aGVy
ZSBwYXJ0cyBvZiB0aGUgZW5jb2RlZCBzaWduYWwgdGhhdAorICAgICAgICAgICAgY29ycmVzcG9u
ZCB0byBwZXJpb2RzIG9mIHNpbGVuY2UgaW4gdGhlIGlucHV0IHNwZWVjaCBvciBhdWRpbyBzaWdu
YWwKKyAgICAgICAgICAgIGFyZSBub3QgdHJhbnNtaXR0ZWQgdG8gdGhlIHJlY2VpdmVyLiBBIHJl
Y2VpdmVyIGNhbiBkaXN0aW5ndWlzaAorICAgICAgICAgICAgYmV0d2VlbiBEVFggYW5kIHBhY2tl
dCBsb3NzIGJ5IGxvb2tpbmcgZm9yIGdhcHMgaW4gdGhlIHNlcXVlbmNlCisgICAgICAgICAgICBu
dW1iZXIsIGFzIGRlc2NyaWJlZCBieSBTZWN0aW9uIDQuMQorICAgICAgICAgICAgb2YmbmJzcDs8
eHJlZiB0YXJnZXQ9IlJGQzM1NTEiLz4uCisgICAgICAgICAgPC90PgorCisgICAgICAgICAgPHQ+
CisgICAgICAgICAgICBPbiB0aGUgcmVjZWl2aW5nIHNpZGUsIHRoZSBub24tdHJhbnNtaXR0ZWQg
cGFydHMgd2lsbCBiZSBoYW5kbGVkIGJ5IGEKKyAgICAgICAgICAgIGZyYW1lIGxvc3MgY29uY2Vh
bG1lbnQgdW5pdCBpbiB0aGUgT3B1cyBkZWNvZGVyIHdoaWNoIGdlbmVyYXRlcyBhCisgICAgICAg
ICAgICBjb21mb3J0IG5vaXNlIHNpZ25hbCB0byByZXBsYWNlIHRoZSBub24gdHJhbnNtaXR0ZWQg
cGFydHMgb2YgdGhlCisgICAgICAgICAgICBzcGVlY2ggb3IgYXVkaW8gc2lnbmFsLiBVc2Ugb2Yg
PHhyZWYgdGFyZ2V0PSJSRkMzMzg5Ii8+IENvbWZvcnQKKyAgICAgICAgICAgIE5vaXNlIChDTikg
d2l0aCBPcHVzIGlzIGRpc2NvdXJhZ2VkLgorICAgICAgICAgICAgVGhlIHRyYW5zbWl0dGVyIE1V
U1QgZHJvcCB3aG9sZSBmcmFtZXMgb25seSwKKyAgICAgICAgICAgIGJhc2VkIG9uIHRoZSBzaXpl
IG9mIHRoZSBsYXN0IHRyYW5zbWl0dGVkIGZyYW1lLAorICAgICAgICAgICAgdG8gZW5zdXJlIHN1
Y2Nlc3NpdmUgUlRQIHRpbWVzdGFtcHMgZGlmZmVyIGJ5IGEgbXVsdGlwbGUgb2YgMTIwIGFuZAor
ICAgICAgICAgICAgdG8gYWxsb3cgdGhlIHJlY2VpdmVyIHRvIHVzZSB3aG9sZSBmcmFtZXMgZm9y
IGNvbmNlYWxtZW50LgorICAgICAgICAgIDwvdD4KKworICAgICAgICAgIDx0PgorICAgICAgICAg
ICAgRFRYIGNhbiBiZSB1c2VkIHdpdGggYm90aCB2YXJpYWJsZSBhbmQgY29uc3RhbnQgYml0cmF0
ZS4KKyAgICAgICAgICAgIEl0IHdpbGwgaGF2ZSBhIHNsaWdodGx5IGxvd2VyIHNwZWVjaCBvciBh
dWRpbworICAgICAgICAgICAgcXVhbGl0eSB0aGFuIGNvbnRpbnVvdXMgdHJhbnNtaXNzaW9uLiBU
aGVyZWZvcmUsIHVzaW5nIGNvbnRpbnVvdXMKKyAgICAgICAgICAgIHRyYW5zbWlzc2lvbiBpcyBS
RUNPTU1FTkRFRCB1bmxlc3MgY29uc3RyYWludHMgb24gYXZhaWxhYmxlIG5ldHdvcmsgYmFuZHdp
ZHRoCisgICAgICAgICAgICBhcmUgc2V2ZXJlLgorICAgICAgICAgIDwvdD4KKworICAgICAgICA8
L3NlY3Rpb24+CisKKyAgICAgICAgPC9zZWN0aW9uPgorCisgICAgICA8c2VjdGlvbiB0aXRsZT0n
Q29tcGxleGl0eSc+CisKKyAgICAgICAgPHQ+CisgICAgICAgICAgQ29tcGxleGl0eSBvZiB0aGUg
ZW5jb2RlciBjYW4gYmUgc2NhbGVkIHRvIG9wdGltaXplIGZvciBDUFUgcmVzb3VyY2VzIGluIHJl
YWwtdGltZSwgbW9zdGx5IGFzCisgICAgICAgICAgYSB0cmFkZS1vZmYgYmV0d2VlbiBhdWRpbyBx
dWFsaXR5IGFuZCBiaXRyYXRlLiBBbHNvLCBkaWZmZXJlbnQgbW9kZXMgb2YgT3B1cyBoYXZlIGRp
ZmZlcmVudCBjb21wbGV4aXR5LgorICAgICAgICA8L3Q+CisKKyAgICAgIDwvc2VjdGlvbj4KKwor
ICAgICAgPHNlY3Rpb24gdGl0bGU9IkZvcndhcmQgRXJyb3IgQ29ycmVjdGlvbiAoRkVDKSI+CisK
KyAgICAgICAgPHQ+CisgICAgICAgICAgVGhlIHZvaWNlIG1vZGUgb2YgT3B1cyBhbGxvd3MgZm9y
IGVtYmVkZGluZyAiaW4tYmFuZCIgZm9yd2FyZCBlcnJvciBjb3JyZWN0aW9uIChGRUMpCisgICAg
ICAgICAgZGF0YSBpbnRvIHRoZSBPcHVzIGJpdCBzdHJlYW0uIFRoaXMgRkVDIHNjaGVtZSBhZGRz
CisgICAgICAgICAgcmVkdW5kYW50IGluZm9ybWF0aW9uIGFib3V0IHRoZSBwcmV2aW91cyBwYWNr
ZXQgKE4tMSkgdG8gdGhlIGN1cnJlbnQKKyAgICAgICAgICBvdXRwdXQgcGFja2V0IE4uIEZvcgor
ICAgICAgICAgIGVhY2ggZnJhbWUsIHRoZSBlbmNvZGVyIGRlY2lkZXMgd2hldGhlciB0byB1c2Ug
RkVDIGJhc2VkIG9uICgxKSBhbgorICAgICAgICAgIGV4dGVybmFsbHktcHJvdmlkZWQgZXN0aW1h
dGUgb2YgdGhlIGNoYW5uZWwncyBwYWNrZXQgbG9zcyByYXRlOyAoMikgYW4KKyAgICAgICAgICBl
eHRlcm5hbGx5LXByb3ZpZGVkIGVzdGltYXRlIG9mIHRoZSBjaGFubmVsJ3MgY2FwYWNpdHk7ICgz
KSB0aGUKKyAgICAgICAgICBzZW5zaXRpdml0eSBvZiB0aGUgYXVkaW8gb3Igc3BlZWNoIHNpZ25h
bCB0byBwYWNrZXQgbG9zczsgKDQpIHdoZXRoZXIKKyAgICAgICAgICB0aGUgcmVjZWl2aW5nIGRl
Y29kZXIgaGFzIGluZGljYXRlZCBpdCBjYW4gdGFrZSBhZHZhbnRhZ2Ugb2YgImluLWJhbmQiCisg
ICAgICAgICAgRkVDIGluZm9ybWF0aW9uLiBUaGUgZGVjaXNpb24gdG8gc2VuZCAiaW4tYmFuZCIg
RkVDIGluZm9ybWF0aW9uIGlzCisgICAgICAgICAgZW50aXJlbHkgY29udHJvbGxlZCBieSB0aGUg
ZW5jb2RlciBhbmQgdGhlcmVmb3JlIG5vIHNwZWNpYWwgcHJlY2F1dGlvbnMKKyAgICAgICAgICBm
b3IgdGhlIHBheWxvYWQgaGF2ZSB0byBiZSB0YWtlbi4KKyAgICAgICAgPC90PgorCisgICAgICAg
IDx0PgorICAgICAgICAgIE9uIHRoZSByZWNlaXZpbmcgc2lkZSwgdGhlIGRlY29kZXIgY2FuIHRh
a2UgYWR2YW50YWdlIG9mIHRoaXMKKyAgICAgICAgICBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIHdo
ZW4gaXQgbG9zZXMgYSBwYWNrZXQgYW5kIHRoZSBuZXh0IHBhY2tldAorICAgICAgICAgIGlzIGF2
YWlsYWJsZS4gIEluIG9yZGVyIHRvIHVzZSB0aGUgRkVDIGRhdGEsIHRoZSBqaXR0ZXIgYnVmZmVy
IG5lZWRzCisgICAgICAgICAgdG8gcHJvdmlkZSBhY2Nlc3MgdG8gcGF5bG9hZHMgd2l0aCB0aGUg
RkVDIGRhdGEuICAKKyAgICAgICAgICBJbnN0ZWFkIG9mIHBlcmZvcm1pbmcgbG9zcyBjb25jZWFs
bWVudCBmb3IgYSBtaXNzaW5nIHBhY2tldCwgdGhlCisgICAgICAgICAgcmVjZWl2ZXIgY2FuIHRo
ZW4gY29uZmlndXJlIGl0cyBkZWNvZGVyIHRvIGRlY29kZSB0aGUgRkVDIGRhdGEgZnJvbSB0aGUg
bmV4dCBwYWNrZXQuCisgICAgICAgIDwvdD4KKworICAgICAgICA8dD4KKyAgICAgICAgICBBbnkg
Y29tcGxpYW50IE9wdXMgZGVjb2RlciBpcyBjYXBhYmxlIG9mIGlnbm9yaW5nCisgICAgICAgICAg
RkVDIGluZm9ybWF0aW9uIHdoZW4gaXQgaXMgbm90IG5lZWRlZCwgc28gZW5jb2Rpbmcgd2l0aCBG
RUMgY2Fubm90IGNhdXNlCisgICAgICAgICAgaW50ZXJvcGVyYWJpbGl0eSBwcm9ibGVtcy4KKyAg
ICAgICAgICBIb3dldmVyLCBpZiBGRUMgY2Fubm90IGJlIHVzZWQgb24gdGhlIHJlY2VpdmluZyBz
aWRlLCB0aGVuIEZFQworICAgICAgICAgIFNIT1VMRCBOT1QgYmUgdXNlZCwgYXMgaXQgbGVhZHMg
dG8gYW4gaW5lZmZpY2llbnQgdXNhZ2Ugb2YgbmV0d29yaworICAgICAgICAgIHJlc291cmNlcy4g
RGVjb2RlciBzdXBwb3J0IGZvciBGRUMgU0hPVUxEIGJlIGluZGljYXRlZCBhdCB0aGUgdGltZSBh
CisgICAgICAgICAgc2Vzc2lvbiBpcyBzZXQgdXAuCisgICAgICAgIDwvdD4KKworICAgICAgPC9z
ZWN0aW9uPgorCisgICAgICA8c2VjdGlvbiB0aXRsZT0nU3RlcmVvIE9wZXJhdGlvbic+CisKKyAg
ICAgICAgPHQ+CisgICAgICAgICAgT3B1cyBhbGxvd3MgZm9yIHRyYW5zbWlzc2lvbiBvZiBzdGVy
ZW8gYXVkaW8gc2lnbmFscy4gVGhpcyBvcGVyYXRpb24KKyAgICAgICAgICBpcyBzaWduYWxlZCBp
bi1iYW5kIGluIHRoZSBPcHVzIGJpdC1zdHJlYW0gYW5kIG5vIHNwZWNpYWwgYXJyYW5nZW1lbnQK
KyAgICAgICAgICBpcyBuZWVkZWQgaW4gdGhlIHBheWxvYWQgZm9ybWF0LiBBbgorICAgICAgICAg
IE9wdXMgZGVjb2RlciBpcyBjYXBhYmxlIG9mIGhhbmRsaW5nIGEgc3RlcmVvIGVuY29kaW5nLCBi
dXQgYW4KKyAgICAgICAgICBhcHBsaWNhdGlvbiBtaWdodCBvbmx5IGJlIGNhcGFibGUgb2YgY29u
c3VtaW5nIGEgc2luZ2xlIGF1ZGlvCisgICAgICAgICAgY2hhbm5lbC4KKyAgICAgICAgPC90Pgor
ICAgICAgICA8dD4KKyAgICAgICAgICBJZiBhIGRlY29kZXIgY2Fubm90IHRha2UgYWR2YW50YWdl
IG9mIHRoZSBiZW5lZml0cyBvZiBhIHN0ZXJlbyBzaWduYWwKKyAgICAgICAgICB0aGlzIFNIT1VM
RCBiZSBpbmRpY2F0ZWQgYXQgdGhlIHRpbWUgYSBzZXNzaW9uIGlzIHNldCB1cC4gSW4gdGhhdCBj
YXNlCisgICAgICAgICAgdGhlIHNlbmRpbmcgc2lkZSBTSE9VTEQgTk9UIHNlbmQgc3RlcmVvIHNp
Z25hbHMgYXMgaXQgbGVhZHMgdG8gYW4KKyAgICAgICAgICBpbmVmZmljaWVudCB1c2FnZSBvZiBu
ZXR3b3JrIHJlc291cmNlcy4KKyAgICAgICAgPC90PgorCisgICAgICA8L3NlY3Rpb24+CisKKyAg
ICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0nT3B1cyBSVFAgUGF5bG9hZCBGb3Jt
YXQnIGFuY2hvcj0nb3B1cy1ydHAtcGF5bG9hZC1mb3JtYXQnPgorICAgICAgPHQ+VGhlIHBheWxv
YWQgZm9ybWF0IGZvciBPcHVzIGNvbnNpc3RzIG9mIHRoZSBSVFAgaGVhZGVyIGFuZCBPcHVzIHBh
eWxvYWQKKyAgICAgIGRhdGEuPC90PgorICAgICAgPHNlY3Rpb24gdGl0bGU9J1JUUCBIZWFkZXIg
VXNhZ2UnPgorICAgICAgICA8dD5UaGUgZm9ybWF0IG9mIHRoZSBSVFAgaGVhZGVyIGlzIHNwZWNp
ZmllZCBpbiA8eHJlZiB0YXJnZXQ9IlJGQzM1NTAiLz4uCisgICAgICAgIFRoZSB1c2Ugb2YgdGhl
IGZpZWxkcyBvZiB0aGUgUlRQIGhlYWRlciBieSB0aGUgT3B1cyBwYXlsb2FkIGZvcm1hdCBpcwor
ICAgICAgICBjb25zaXN0ZW50IHdpdGggdGhhdCBzcGVjaWZpY2F0aW9uLjwvdD4KKworICAgICAg
ICA8dD5UaGUgcGF5bG9hZCBsZW5ndGggb2YgT3B1cyBpcyBhbiBpbnRlZ2VyIG51bWJlciBvZiBv
Y3RldHMgYW5kCisgICAgICAgIHRoZXJlZm9yZSBubyBwYWRkaW5nIGlzIG5lY2Vzc2FyeS4gVGhl
IHBheWxvYWQgTUFZIGJlIHBhZGRlZCBieSBhbgorICAgICAgICBpbnRlZ2VyIG51bWJlciBvZiBv
Y3RldHMgYWNjb3JkaW5nIHRvIDx4cmVmIHRhcmdldD0iUkZDMzU1MCIvPiwKKyAgICAgICAgYWx0
aG91Z2ggdGhlIE9wdXMgaW50ZXJuYWwgcGFkZGluZyBpcyBwcmVmZXJyZWQuPC90PgorCisgICAg
ICAgIDx0PlRoZSB0aW1lc3RhbXAsIHNlcXVlbmNlIG51bWJlciwgYW5kIG1hcmtlciBiaXQgKE0p
IG9mIHRoZSBSVFAgaGVhZGVyCisgICAgICAgIGFyZSB1c2VkIGluIGFjY29yZGFuY2Ugd2l0aCBT
ZWN0aW9uIDQuMQorICAgICAgICBvZiZuYnNwOzx4cmVmIHRhcmdldD0iUkZDMzU1MSIvPi48L3Q+
CisKKyAgICAgICAgPHQ+VGhlIFJUUCBwYXlsb2FkIHR5cGUgZm9yIE9wdXMgaXMgdG8gYmUgYXNz
aWduZWQgZHluYW1pY2FsbHkuPC90PgorCisgICAgICAgIDx0PlRoZSByZWNlaXZpbmcgc2lkZSBN
VVNUIGJlIHByZXBhcmVkIHRvIHJlY2VpdmUgZHVwbGljYXRlIFJUUAorICAgICAgICBwYWNrZXRz
LiBUaGUgcmVjZWl2ZXIgTVVTVCBwcm92aWRlIGF0IG1vc3Qgb25lIG9mIHRob3NlIHBheWxvYWRz
IHRvIHRoZQorICAgICAgICBPcHVzIGRlY29kZXIgZm9yIGRlY29kaW5nLCBhbmQgTVVTVCBkaXNj
YXJkIHRoZSBvdGhlcnMuPC90PgorCisgICAgICAgIDx0Pk9wdXMgc3VwcG9ydHMgNSBkaWZmZXJl
bnQgYXVkaW8gYmFuZHdpZHRocywgd2hpY2ggY2FuIGJlIGFkanVzdGVkIGR1cmluZworICAgICAg
ICBhIHN0cmVhbS4KKyAgICAgICAgVGhlIFJUUCB0aW1lc3RhbXAgaXMgaW5jcmVtZW50ZWQgd2l0
aCBhIDQ4MDAwIEh6IGNsb2NrIHJhdGUKKyAgICAgICAgZm9yIGFsbCBtb2RlcyBvZiBPcHVzIGFu
ZCBhbGwgc2FtcGxpbmcgcmF0ZXMuCisgICAgICAgIFRoZSB1bml0CisgICAgICAgIGZvciB0aGUg
dGltZXN0YW1wIGlzIHNhbXBsZXMgcGVyIHNpbmdsZSAobW9ubykgY2hhbm5lbC4gVGhlIFJUUCB0
aW1lc3RhbXAgY29ycmVzcG9uZHMgdG8gdGhlCisgICAgICAgIHNhbXBsZSB0aW1lIG9mIHRoZSBm
aXJzdCBlbmNvZGVkIHNhbXBsZSBpbiB0aGUgZW5jb2RlZCBmcmFtZS4KKyAgICAgICAgRm9yIGRh
dGEgZW5jb2RlZCB3aXRoIHNhbXBsaW5nIHJhdGVzIG90aGVyIHRoYW4gNDgwMDAgSHosCisJdGhl
IHNhbXBsaW5nIHJhdGUgaGFzIHRvIGJlIGFkanVzdGVkIHRvIDQ4MDAwIEh6LjwvdD4KKworICAg
ICAgPC9zZWN0aW9uPgorCisgICAgICA8c2VjdGlvbiB0aXRsZT0nUGF5bG9hZCBTdHJ1Y3R1cmUn
PgorICAgICAgICA8dD4KKyAgICAgICAgICBUaGUgT3B1cyBlbmNvZGVyIGNhbiBvdXRwdXQgZW5j
b2RlZCBmcmFtZXMgcmVwcmVzZW50aW5nIDIuNSwgNSwgMTAsIDIwLAorICAgICAgICAgIDQwLCBv
ciA2MCZuYnNwO21zIG9mIHNwZWVjaCBvciBhdWRpbyBkYXRhLiBGdXJ0aGVyLCBhbiBhcmJpdHJh
cnkgbnVtYmVyIG9mIGZyYW1lcyBjYW4gYmUKKyAgICAgICAgICBjb21iaW5lZCBpbnRvIGEgcGFj
a2V0LCB1cCB0byBhIG1heGltdW0gcGFja2V0IGR1cmF0aW9uIHJlcHJlc2VudGluZworICAgICAg
ICAgIDEyMCZuYnNwO21zIG9mIHNwZWVjaCBvciBhdWRpbyBkYXRhLiBUaGUgZ3JvdXBpbmcgb2Yg
b25lIG9yIG1vcmUgT3B1cworICAgICAgICAgIGZyYW1lcyBpbnRvIGEgc2luZ2xlIE9wdXMgcGFj
a2V0IGlzIGRlZmluZWQgaW4gU2VjdGlvbiZuYnNwOzMgb2YKKyAgICAgICAgICA8eHJlZiB0YXJn
ZXQ9IlJGQzY3MTYiLz4uIEFuIFJUUCBwYXlsb2FkIE1VU1QgY29udGFpbiBleGFjdGx5IG9uZQor
ICAgICAgICAgIE9wdXMgcGFja2V0IGFzIGRlZmluZWQgYnkgdGhhdCBkb2N1bWVudC4KKyAgICAg
ICAgPC90PgorCisgICAgICAgIDx0Pjx4cmVmIHRhcmdldD0ncGF5bG9hZC1zdHJ1Y3R1cmUnLz4g
c2hvd3MgdGhlIHN0cnVjdHVyZSBjb21iaW5lZCB3aXRoIHRoZSBSVFAgaGVhZGVyLjwvdD4KKwor
ICAgICAgICA8ZmlndXJlIGFuY2hvcj0icGF5bG9hZC1zdHJ1Y3R1cmUiCisgICAgICAgICAgICAg
ICAgdGl0bGU9IlBhY2tldCBzdHJ1Y3R1cmUgd2l0aCBSVFAgaGVhZGVyIj4KKyAgICAgICAgICA8
YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKyAgICAgICAgICAgIDwhW0NEQVRBWworKy0tLS0tLS0t
LS0rLS0tLS0tLS0tLS0tLS0rCit8UlRQIEhlYWRlcnwgT3B1cyBQYXlsb2FkIHwKKystLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICBdXT4KKyAgICAgICAgICA8L2FydHdvcms+
CisgICAgICAgIDwvZmlndXJlPgorCisgICAgICAgIDx0PgorICAgICAgICAgIDx4cmVmIHRhcmdl
dD0nb3B1cy1wYWNrZXRpemF0aW9uJy8+IHNob3dzIHN1cHBvcnRlZCBmcmFtZSBzaXplcyBpbgor
ICAgICAgICAgIG1pbGxpc2Vjb25kcyBvZiBlbmNvZGVkIHNwZWVjaCBvciBhdWRpbyBkYXRhIGZv
ciB0aGUgc3BlZWNoIGFuZCBhdWRpbyBtb2RlcworICAgICAgICAgIChNb2RlKSBhbmQgc2FtcGxp
bmcgcmF0ZXMgKGZzKSBvZiBPcHVzIGFuZCBzaG93cyBob3cgdGhlIHRpbWVzdGFtcCBpcworICAg
ICAgICAgIGluY3JlbWVudGVkIGZvciBwYWNrZXRpemF0aW9uICh0cyBpbmNyKS4gSWYgdGhlIE9w
dXMgZW5jb2RlcgorICAgICAgICAgIG91dHB1dHMgbXVsdGlwbGUgZW5jb2RlZCBmcmFtZXMgaW50
byBhIHNpbmdsZSBwYWNrZXQsIHRoZSB0aW1lc3RhbXAKKyAgICAgICAgICBpbmNyZW1lbnQgaXMg
dGhlIHN1bSBvZiB0aGUgaW5jcmVtZW50cyBmb3IgdGhlIGluZGl2aWR1YWwgZnJhbWVzLgorICAg
ICAgICA8L3Q+CisKKyAgICAgICAgPHRleHR0YWJsZSBhbmNob3I9J29wdXMtcGFja2V0aXphdGlv
bicgdGl0bGU9IlN1cHBvcnRlZCBPcHVzIGZyYW1lCisgICAgICAgICBzaXplcyBhbmQgdGltZXN0
YW1wIGluY3JlbWVudHMgbWFya2VkIHdpdGggYW4gby4gVW5zdXBwb3J0ZWQgbWFya2VkIHdpdGgg
YW4geC4iPgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPk1vZGU8L3R0Y29sPgor
ICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPmZzPC90dGNvbD4KKyAgICAgICAgICAg
IDx0dGNvbCBhbGlnbj0nY2VudGVyJz4yLjU8L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFs
aWduPSdjZW50ZXInPjU8L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXIn
PjEwPC90dGNvbD4KKyAgICAgICAgICAgIDx0dGNvbCBhbGlnbj0nY2VudGVyJz4yMDwvdHRjb2w+
CisgICAgICAgICAgICA8dHRjb2wgYWxpZ249J2NlbnRlcic+NDA8L3R0Y29sPgorICAgICAgICAg
ICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPjYwPC90dGNvbD4KKyAgICAgICAgICAgIDxjPnRzIGlu
Y3I8L2M+CisgICAgICAgICAgICA8Yz5hbGw8L2M+CisgICAgICAgICAgICA8Yz4xMjA8L2M+Cisg
ICAgICAgICAgICA8Yz4yNDA8L2M+CisgICAgICAgICAgICA8Yz40ODA8L2M+CisgICAgICAgICAg
ICA8Yz45NjA8L2M+CisgICAgICAgICAgICA8Yz4xOTIwPC9jPgorICAgICAgICAgICAgPGM+Mjg4
MDwvYz4KKyAgICAgICAgICAgIDxjPnZvaWNlPC9jPgorICAgICAgICAgICAgPGM+TkIvTUIvV0Iv
U1dCL0ZCPC9jPgorICAgICAgICAgICAgPGM+eDwvYz4KKyAgICAgICAgICAgIDxjPng8L2M+Cisg
ICAgICAgICAgICA8Yz5vPC9jPgorICAgICAgICAgICAgPGM+bzwvYz4KKyAgICAgICAgICAgIDxj
Pm88L2M+CisgICAgICAgICAgICA8Yz5vPC9jPgorICAgICAgICAgICAgPGM+YXVkaW88L2M+Cisg
ICAgICAgICAgICA8Yz5OQi9XQi9TV0IvRkI8L2M+CisgICAgICAgICAgICA8Yz5vPC9jPgorICAg
ICAgICAgICAgPGM+bzwvYz4KKyAgICAgICAgICAgIDxjPm88L2M+CisgICAgICAgICAgICA8Yz5v
PC9jPgorICAgICAgICAgICAgPGM+eDwvYz4KKyAgICAgICAgICAgIDxjPng8L2M+CisgICAgICAg
ICAgPC90ZXh0dGFibGU+CisKKyAgICAgIDwvc2VjdGlvbj4KKworICAgIDwvc2VjdGlvbj4KKwor
ICAgIDxzZWN0aW9uIHRpdGxlPSdDb25nZXN0aW9uIENvbnRyb2wnPgorCisgICAgICA8dD5UaGUg
dGFyZ2V0IGJpdHJhdGUgb2YgT3B1cyBjYW4gYmUgYWRqdXN0ZWQgYXQgYW55IHBvaW50IGluIHRp
bWUsIHRodXMKKyAgICAgIGFsbG93aW5nIGVmZmljaWVudCBjb25nZXN0aW9uIGNvbnRyb2wuIEZ1
cnRoZXJtb3JlLCB0aGUgYW1vdW50CisgICAgICBvZiBlbmNvZGVkIHNwZWVjaCBvciBhdWRpbyBk
YXRhIGVuY29kZWQgaW4gYQorICAgICAgc2luZ2xlIHBhY2tldCBjYW4gYmUgdXNlZCBmb3IgY29u
Z2VzdGlvbiBjb250cm9sLCBzaW5jZSB0aGUgdHJhbnNtaXNzaW9uCisgICAgICByYXRlIGlzIGlu
dmVyc2VseSBwcm9wb3J0aW9uYWwgdG8gdGhlIHBhY2tldCBkdXJhdGlvbi4gQSBsb3dlciBwYWNr
ZXQKKyAgICAgIHRyYW5zbWlzc2lvbiByYXRlIHJlZHVjZXMgdGhlIGFtb3VudCBvZiBoZWFkZXIg
b3ZlcmhlYWQsIGJ1dCBhdCB0aGUgc2FtZQorICAgICAgdGltZSBpbmNyZWFzZXMgbGF0ZW5jeSBh
bmQgbG9zcyBzZW5zaXRpdml0eSwgc28gaXQgb3VnaHQgdG8gYmUgdXNlZCB3aXRoCisgICAgICBj
YXJlLjwvdD4KKworICAgICAgPHQ+U2luY2UgVURQIGRvZXMgbm90IHByb3ZpZGUgY29uZ2VzdGlv
biBjb250cm9sLCBhcHBsaWNhdGlvbnMgdGhhdCB1c2UKKyAgICAgIFJUUCBvdmVyIFVEUCBTSE9V
TEQgaW1wbGVtZW50IHRoZWlyIG93biBjb25nZXN0aW9uIGNvbnRyb2wgYWJvdmUgdGhlCisgICAg
ICBVRFAgbGF5ZXIgPHhyZWYgdGFyZ2V0PSJSRkM1NDA1Ii8+LiBXb3JrIGluIHRoZSBybWNhdCB3
b3JraW5nIGdyb3VwCisgICAgICA8eHJlZiB0YXJnZXQ9InJtY2F0Ii8+IGRlc2NyaWJlcyB0aGUK
KyAgICAgIGludGVyYWN0aW9ucyBhbmQgY29uY2VwdHVhbCBpbnRlcmZhY2VzIG5lY2Vzc2FyeSBi
ZXR3ZWVuIHRoZSBhcHBsaWNhdGlvbgorICAgICAgY29tcG9uZW50cyB0aGF0IHJlbGF0ZSB0byBj
b25nZXN0aW9uIGNvbnRyb2wsIGluY2x1ZGluZyB0aGUgUlRQIGxheWVyLAorICAgICAgdGhlIGhp
Z2hlci1sZXZlbCBtZWRpYSBjb2RlYyBjb250cm9sIGxheWVyLCBhbmQgdGhlIGxvd2VyLWxldmVs
CisgICAgICB0cmFuc3BvcnQgaW50ZXJmYWNlLCBhcyB3ZWxsIGFzIGNvbXBvbmVudHMgZGVkaWNh
dGVkIHRvIGNvbmdlc3Rpb24KKyAgICAgIGNvbnRyb2wgZnVuY3Rpb25zLjwvdD4KKyAgICA8L3Nl
Y3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0nSUFOQSBDb25zaWRlcmF0aW9ucyc+CisgICAg
ICA8dD5PbmUgbWVkaWEgc3VidHlwZSAoYXVkaW8vb3B1cykgaGFzIGJlZW4gZGVmaW5lZCBhbmQg
cmVnaXN0ZXJlZCBhcworICAgICAgZGVzY3JpYmVkIGluIHRoZSBmb2xsb3dpbmcgc2VjdGlvbi48
L3Q+CisKKyAgICAgIDxzZWN0aW9uIHRpdGxlPSdPcHVzIE1lZGlhIFR5cGUgUmVnaXN0cmF0aW9u
Jz4KKyAgICAgICAgPHQ+TWVkaWEgdHlwZSByZWdpc3RyYXRpb24gaXMgZG9uZSBhY2NvcmRpbmcg
dG8gPHhyZWYKKyAgICAgICAgdGFyZ2V0PSJSRkM2ODM4Ii8+IGFuZCA8eHJlZiB0YXJnZXQ9IlJG
QzQ4NTUiLz4uPHZzcGFjZQorICAgICAgICBibGFua0xpbmVzPScxJy8+PC90PgorCisgICAgICAg
ICAgPHQ+VHlwZSBuYW1lOiBhdWRpbzx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKyAgICAg
ICAgICA8dD5TdWJ0eXBlIG5hbWU6IG9wdXM8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisK
KyAgICAgICAgICA8dD5SZXF1aXJlZCBwYXJhbWV0ZXJzOjwvdD4KKyAgICAgICAgICA8dD48bGlz
dCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dCBoYW5nVGV4dD0icmF0ZToiPiB0aGUg
UlRQIHRpbWVzdGFtcCBpcyBpbmNyZW1lbnRlZCB3aXRoIGEKKyAgICAgICAgICAgIDQ4MDAwIEh6
IGNsb2NrIHJhdGUgZm9yIGFsbCBtb2RlcyBvZiBPcHVzIGFuZCBhbGwgc2FtcGxpbmcKKyAgICAg
ICAgICAgIHJhdGVzLiBGb3IgZGF0YSBlbmNvZGVkIHdpdGggc2FtcGxpbmcgcmF0ZXMgb3RoZXIg
dGhhbiA0ODAwMCBIeiwKKyAgICAgICAgICAgIHRoZSBzYW1wbGluZyByYXRlIGhhcyB0byBiZSBh
ZGp1c3RlZCB0byA0ODAwMCBIei4KKyAgICAgICAgICA8L3Q+CisgICAgICAgICAgPC9saXN0Pjwv
dD4KKworICAgICAgICAgIDx0Pk9wdGlvbmFsIHBhcmFtZXRlcnM6PC90PgorCisgICAgICAgICAg
PHQ+PGxpc3Qgc3R5bGU9ImhhbmdpbmciPgorICAgICAgICAgICAgPHQgaGFuZ1RleHQ9Im1heHBs
YXliYWNrcmF0ZToiPgorICAgICAgICAgICAgICBhIGhpbnQgYWJvdXQgdGhlIG1heGltdW0gb3V0
cHV0IHNhbXBsaW5nIHJhdGUgdGhhdCB0aGUgcmVjZWl2ZXIgaXMKKyAgICAgICAgICAgICAgY2Fw
YWJsZSBvZiByZW5kZXJpbmcgaW4gSHouCisgICAgICAgICAgICAgIFRoZSBkZWNvZGVyIE1VU1Qg
YmUgY2FwYWJsZSBvZiBkZWNvZGluZworICAgICAgICAgICAgICBhbnkgYXVkaW8gYmFuZHdpZHRo
IGJ1dCBkdWUgdG8gaGFyZHdhcmUgbGltaXRhdGlvbnMgb25seSBzaWduYWxzCisgICAgICAgICAg
ICAgIHVwIHRvIHRoZSBzcGVjaWZpZWQgc2FtcGxpbmcgcmF0ZSBjYW4gYmUgcGxheWVkIGJhY2su
IFNlbmRpbmcgc2lnbmFscworICAgICAgICAgICAgICB3aXRoIGhpZ2hlciBhdWRpbyBiYW5kd2lk
dGggcmVzdWx0cyBpbiBoaWdoZXIgdGhhbiBuZWNlc3NhcnkgbmV0d29yaworICAgICAgICAgICAg
ICB1c2FnZSBhbmQgZW5jb2RpbmcgY29tcGxleGl0eSwgc28gYW4gZW5jb2RlciBTSE9VTEQgTk9U
IGVuY29kZQorICAgICAgICAgICAgICBmcmVxdWVuY2llcyBhYm92ZSB0aGUgYXVkaW8gYmFuZHdp
ZHRoIHNwZWNpZmllZCBieSBtYXhwbGF5YmFja3JhdGUuCisgICAgICAgICAgICAgIFRoaXMgcGFy
YW1ldGVyIGNhbiB0YWtlIGFueSB2YWx1ZSBiZXR3ZWVuIDgwMDAgYW5kIDQ4MDAwLCBhbHRob3Vn
aAorICAgICAgICAgICAgICBjb21tb25seSB0aGUgdmFsdWUgd2lsbCBtYXRjaCBvbmUgb2YgdGhl
IE9wdXMgYmFuZHdpZHRocworICAgICAgICAgICAgICAoPHhyZWYgdGFyZ2V0PSJiYW5kd2lkdGhf
ZGVmaW5pdGlvbnMiLz4pLgorICAgICAgICAgICAgICBCeSBkZWZhdWx0LCB0aGUgcmVjZWl2ZXIg
aXMgYXNzdW1lZCB0byBoYXZlIG5vIGxpbWl0YXRpb25zLCBpLmUuIDQ4MDAwLgorICAgICAgICAg
ICAgICA8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz4KKyAgICAgICAgICAgIDwvdD4KKworICAgICAg
ICAgICAgPHQgaGFuZ1RleHQ9InNwcm9wLW1heGNhcHR1cmVyYXRlOiI+CisgICAgICAgICAgICAg
IGEgaGludCBhYm91dCB0aGUgbWF4aW11bSBpbnB1dCBzYW1wbGluZyByYXRlIHRoYXQgdGhlIHNl
bmRlciBpcyBsaWtlbHkgdG8gcHJvZHVjZS4KKyAgICAgICAgICAgICAgVGhpcyBpcyBub3QgYSBn
dWFyYW50ZWUgdGhhdCB0aGUgc2VuZGVyIHdpbGwgbmV2ZXIgc2VuZCBhbnkgaGlnaGVyIGJhbmR3
aWR0aAorICAgICAgICAgICAgICAoZS5nLiBpdCBjb3VsZCBzZW5kIGEgcHJlLXJlY29yZGVkIHBy
b21wdCB0aGF0IHVzZXMgYSBoaWdoZXIgYmFuZHdpZHRoKSwgYnV0IGl0CisgICAgICAgICAgICAg
IGluZGljYXRlcyB0byB0aGUgcmVjZWl2ZXIgdGhhdCBmcmVxdWVuY2llcyBhYm92ZSB0aGlzIG1h
eGltdW0gY2FuIHNhZmVseSBiZSBkaXNjYXJkZWQuCisgICAgICAgICAgICAgIFRoaXMgcGFyYW1l
dGVyIGlzIHVzZWZ1bCB0byBhdm9pZCB3YXN0aW5nIHJlY2VpdmVyIHJlc291cmNlcyBieSBvcGVy
YXRpbmcgdGhlIGF1ZGlvCisgICAgICAgICAgICAgIHByb2Nlc3NpbmcgcGlwZWxpbmUgKGUuZy4g
ZWNobyBjYW5jZWxsYXRpb24pIGF0IGEgaGlnaGVyIHJhdGUgdGhhbiBuZWNlc3NhcnkuCisgICAg
ICAgICAgICAgIFRoaXMgcGFyYW1ldGVyIGNhbiB0YWtlIGFueSB2YWx1ZSBiZXR3ZWVuIDgwMDAg
YW5kIDQ4MDAwLCBhbHRob3VnaAorICAgICAgICAgICAgICBjb21tb25seSB0aGUgdmFsdWUgd2ls
bCBtYXRjaCBvbmUgb2YgdGhlIE9wdXMgYmFuZHdpZHRocworICAgICAgICAgICAgICAoPHhyZWYg
dGFyZ2V0PSJiYW5kd2lkdGhfZGVmaW5pdGlvbnMiLz4pLgorICAgICAgICAgICAgICBCeSBkZWZh
dWx0LCB0aGUgc2VuZGVyIGlzIGFzc3VtZWQgdG8gaGF2ZSBubyBsaW1pdGF0aW9ucywgaS5lLiA0
ODAwMC4KKyAgICAgICAgICAgICAgPHZzcGFjZSBibGFua0xpbmVzPScxJy8+CisgICAgICAgICAg
ICA8L3Q+CisKKyAgICAgICAgICAgIDx0IGhhbmdUZXh0PSJtYXhwdGltZToiPiB0aGUgbWF4aW11
bSBkdXJhdGlvbiBvZiBtZWRpYSByZXByZXNlbnRlZAorICAgICAgICAgICAgYnkgYSBwYWNrZXQg
KGFjY29yZGluZyB0byBTZWN0aW9uJm5ic3A7NiBvZgorICAgICAgICAgICAgPHhyZWYgdGFyZ2V0
PSJSRkM0NTY2Ii8+KSB0aGF0IGEgZGVjb2RlciB3YW50cyB0byByZWNlaXZlLCBpbgorICAgICAg
ICAgICAgbWlsbGlzZWNvbmRzIHJvdW5kZWQgdXAgdG8gdGhlIG5leHQgZnVsbCBpbnRlZ2VyIHZh
bHVlLgorICAgICAgICAgICAgUG9zc2libGUgdmFsdWVzIGFyZSAzLCA1LCAxMCwgMjAsIDQwLCA2
MCwgb3IgYW4gYXJiaXRyYXJ5CisgICAgICAgICAgICBtdWx0aXBsZSBvZiBhbiBPcHVzIGZyYW1l
IHNpemUgcm91bmRlZCB1cCB0byB0aGUgbmV4dCBmdWxsIGludGVnZXIKKyAgICAgICAgICAgIHZh
bHVlLCB1cCB0byBhIG1heGltdW0gdmFsdWUgb2YgMTIwLCBhcworICAgICAgICAgICAgZGVmaW5l
ZCBpbiA8eHJlZiB0YXJnZXQ9J29wdXMtcnRwLXBheWxvYWQtZm9ybWF0Jy8+LiBJZiBubyB2YWx1
ZSBpcworICAgICAgICAgICAgICBzcGVjaWZpZWQsIHRoZSBkZWZhdWx0IGlzIDEyMC4KKyAgICAg
ICAgICAgICAgPHZzcGFjZSBibGFua0xpbmVzPScxJy8+PC90PgorCisgICAgICAgICAgICA8dCBo
YW5nVGV4dD0icHRpbWU6Ij4gdGhlIHByZWZlcnJlZCBkdXJhdGlvbiBvZiBtZWRpYSByZXByZXNl
bnRlZAorICAgICAgICAgICAgYnkgYSBwYWNrZXQgKGFjY29yZGluZyB0byBTZWN0aW9uJm5ic3A7
NiBvZgorICAgICAgICAgICAgPHhyZWYgdGFyZ2V0PSJSRkM0NTY2Ii8+KSB0aGF0IGEgZGVjb2Rl
ciB3YW50cyB0byByZWNlaXZlLCBpbgorICAgICAgICAgICAgbWlsbGlzZWNvbmRzIHJvdW5kZWQg
dXAgdG8gdGhlIG5leHQgZnVsbCBpbnRlZ2VyIHZhbHVlLgorICAgICAgICAgICAgUG9zc2libGUg
dmFsdWVzIGFyZSAzLCA1LCAxMCwgMjAsIDQwLCA2MCwgb3IgYW4gYXJiaXRyYXJ5CisgICAgICAg
ICAgICBtdWx0aXBsZSBvZiBhbiBPcHVzIGZyYW1lIHNpemUgcm91bmRlZCB1cCB0byB0aGUgbmV4
dCBmdWxsIGludGVnZXIKKyAgICAgICAgICAgIHZhbHVlLCB1cCB0byBhIG1heGltdW0gdmFsdWUg
b2YgMTIwLCBhcyBkZWZpbmVkIGluIDx4cmVmCisgICAgICAgICAgICB0YXJnZXQ9J29wdXMtcnRw
LXBheWxvYWQtZm9ybWF0Jy8+LiBJZiBubyB2YWx1ZSBpcworICAgICAgICAgICAgICBzcGVjaWZp
ZWQsIHRoZSBkZWZhdWx0IGlzIDIwLiAKKyAgICAgICAgICAgICAgPHZzcGFjZSBibGFua0xpbmVz
PScxJy8+PC90PgorCisgICAgICAgICAgICA8dCBoYW5nVGV4dD0ibWF4YXZlcmFnZWJpdHJhdGU6
Ij4gc3BlY2lmaWVzIHRoZSBtYXhpbXVtIGF2ZXJhZ2UKKyAgICAgICAgICAgIHJlY2VpdmUgYml0
cmF0ZSBvZiBhIHNlc3Npb24gaW4gYml0cyBwZXIgc2Vjb25kIChiL3MpLiBUaGUgYWN0dWFsCisg
ICAgICAgICAgICB2YWx1ZSBvZiB0aGUgYml0cmF0ZSBjYW4gdmFyeSwgYXMgaXQgaXMgZGVwZW5k
ZW50IG9uIHRoZQorICAgICAgICAgICAgY2hhcmFjdGVyaXN0aWNzIG9mIHRoZSBtZWRpYSBpbiBh
IHBhY2tldC4gTm90ZSB0aGF0IHRoZSBtYXhpbXVtCisgICAgICAgICAgICBhdmVyYWdlIGJpdHJh
dGUgTUFZIGJlIG1vZGlmaWVkIGR5bmFtaWNhbGx5IGR1cmluZyBhIHNlc3Npb24uIEFueQorICAg
ICAgICAgICAgcG9zaXRpdmUgaW50ZWdlciBpcyBhbGxvd2VkLCBidXQgdmFsdWVzIG91dHNpZGUg
dGhlIHJhbmdlCisgICAgICAgICAgICA2MDAwIHRvIDUxMDAwMCBTSE9VTEQgYmUgaWdub3JlZC4g
SWYgbm8gdmFsdWUgaXMgc3BlY2lmaWVkLCB0aGUKKyAgICAgICAgICAgIG1heGltdW0gdmFsdWUg
c3BlY2lmaWVkIGluIDx4cmVmIHRhcmdldD0nYml0cmF0ZV9ieV9iYW5kd2lkdGgnLz4KKyAgICAg
ICAgICAgIGZvciB0aGUgY29ycmVzcG9uZGluZyBtb2RlIG9mIE9wdXMgYW5kIGNvcnJlc3BvbmRp
bmcgbWF4cGxheWJhY2tyYXRlCisgICAgICAgICAgICBpcyB0aGUgZGVmYXVsdC48dnNwYWNlIGJs
YW5rTGluZXM9JzEnLz48L3Q+CisKKyAgICAgICAgICAgIDx0IGhhbmdUZXh0PSJzdGVyZW86Ij4K
KyAgICAgICAgICAgICAgc3BlY2lmaWVzIHdoZXRoZXIgdGhlIGRlY29kZXIgcHJlZmVycyByZWNl
aXZpbmcgc3RlcmVvIG9yIG1vbm8gc2lnbmFscy4KKyAgICAgICAgICAgICAgUG9zc2libGUgdmFs
dWVzIGFyZSAxIGFuZCAwIHdoZXJlIDEgc3BlY2lmaWVzIHRoYXQgc3RlcmVvIHNpZ25hbHMgYXJl
IHByZWZlcnJlZCwKKyAgICAgICAgICAgICAgYW5kIDAgc3BlY2lmaWVzIHRoYXQgb25seSBtb25v
IHNpZ25hbHMgYXJlIHByZWZlcnJlZC4KKyAgICAgICAgICAgICAgSW5kZXBlbmRlbnQgb2YgdGhl
IHN0ZXJlbyBwYXJhbWV0ZXIgZXZlcnkgcmVjZWl2ZXIgTVVTVCBiZSBhYmxlIHRvIHJlY2VpdmUg
YW5kCisgICAgICAgICAgICAgIGRlY29kZSBzdGVyZW8gc2lnbmFscyBidXQgc2VuZGluZyBzdGVy
ZW8gc2lnbmFscyB0byBhIHJlY2VpdmVyIHRoYXQgc2lnbmFsZWQgYQorICAgICAgICAgICAgICBw
cmVmZXJlbmNlIGZvciBtb25vIHNpZ25hbHMgbWF5IHJlc3VsdCBpbiBoaWdoZXIgdGhhbiBuZWNl
c3NhcnkgbmV0d29yaworICAgICAgICAgICAgICB1dGlsaXphdGlvbiBhbmQgZW5jb2RpbmcgY29t
cGxleGl0eS4gSWYgbm8gdmFsdWUgaXMgc3BlY2lmaWVkLAorICAgICAgICAgICAgICB0aGUgZGVm
YXVsdCBpcyAwIChtb25vKS48dnNwYWNlIGJsYW5rTGluZXM9JzEnLz4KKyAgICAgICAgICAgIDwv
dD4KKworICAgICAgICAgICAgPHQgaGFuZ1RleHQ9InNwcm9wLXN0ZXJlbzoiPgorICAgICAgICAg
ICAgICBzcGVjaWZpZXMgd2hldGhlciB0aGUgc2VuZGVyIGlzIGxpa2VseSB0byBwcm9kdWNlIHN0
ZXJlbyBhdWRpby4KKyAgICAgICAgICAgICAgUG9zc2libGUgdmFsdWVzIGFyZSAxIGFuZCAwLCB3
aGVyZSAxIHNwZWNpZmllcyB0aGF0IHN0ZXJlbyBzaWduYWxzIGFyZSBsaWtlbHkgdG8KKyAgICAg
ICAgICAgICAgYmUgc2VudCwgYW5kIDAgc3BlY2lmaWVzIHRoYXQgdGhlIHNlbmRlciB3aWxsIGxp
a2VseSBvbmx5IHNlbmQgbW9uby4KKyAgICAgICAgICAgICAgVGhpcyBpcyBub3QgYSBndWFyYW50
ZWUgdGhhdCB0aGUgc2VuZGVyIHdpbGwgbmV2ZXIgc2VuZCBzdGVyZW8gYXVkaW8KKyAgICAgICAg
ICAgICAgKGUuZy4gaXQgY291bGQgc2VuZCBhIHByZS1yZWNvcmRlZCBwcm9tcHQgdGhhdCB1c2Vz
IHN0ZXJlbyksIGJ1dCBpdAorICAgICAgICAgICAgICBpbmRpY2F0ZXMgdG8gdGhlIHJlY2VpdmVy
IHRoYXQgdGhlIHJlY2VpdmVkIHNpZ25hbCBjYW4gYmUgc2FmZWx5IGRvd25taXhlZCB0byBtb25v
LgorICAgICAgICAgICAgICBUaGlzIHBhcmFtZXRlciBpcyB1c2VmdWwgdG8gYXZvaWQgd2FzdGlu
ZyByZWNlaXZlciByZXNvdXJjZXMgYnkgb3BlcmF0aW5nIHRoZSBhdWRpbworICAgICAgICAgICAg
ICBwcm9jZXNzaW5nIHBpcGVsaW5lIChlLmcuIGVjaG8gY2FuY2VsbGF0aW9uKSBpbiBzdGVyZW8g
d2hlbiBub3QgbmVjZXNzYXJ5LgorICAgICAgICAgICAgICBJZiBubyB2YWx1ZSBpcyBzcGVjaWZp
ZWQsIHRoZSBkZWZhdWx0IGlzIDAKKyAgICAgICAgICAgICAgKG1vbm8pLjx2c3BhY2UgYmxhbmtM
aW5lcz0nMScvPgorICAgICAgICAgICAgPC90PgorCisgICAgICAgICAgICA8dCBoYW5nVGV4dD0i
Y2JyOiI+CisgICAgICAgICAgICAgIHNwZWNpZmllcyBpZiB0aGUgZGVjb2RlciBwcmVmZXJzIHRo
ZSB1c2Ugb2YgYSBjb25zdGFudCBiaXRyYXRlIHZlcnN1cworICAgICAgICAgICAgICB2YXJpYWJs
ZSBiaXRyYXRlLiBQb3NzaWJsZSB2YWx1ZXMgYXJlIDEgYW5kIDAsIHdoZXJlIDEgc3BlY2lmaWVz
IGNvbnN0YW50CisgICAgICAgICAgICAgIGJpdHJhdGUgYW5kIDAgc3BlY2lmaWVzIHZhcmlhYmxl
IGJpdHJhdGUuIElmIG5vIHZhbHVlIGlzIHNwZWNpZmllZCwKKyAgICAgICAgICAgICAgdGhlIGRl
ZmF1bHQgaXMgMCAodmJyKS4gV2hlbiBjYnIgaXMgMSwgdGhlIG1heGltdW0gYXZlcmFnZSBiaXRy
YXRlIGNhbiBzdGlsbAorICAgICAgICAgICAgICBjaGFuZ2UsIGUuZy4gdG8gYWRhcHQgdG8gY2hh
bmdpbmcgbmV0d29yayBjb25kaXRpb25zLjx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPgorICAgICAg
ICAgICAgPC90PgorCisgICAgICAgICAgICA8dCBoYW5nVGV4dD0idXNlaW5iYW5kZmVjOiI+IHNw
ZWNpZmllcyB0aGF0IHRoZSBkZWNvZGVyIGhhcyB0aGUgY2FwYWJpbGl0eSB0bworICAgICAgICAg
ICAgdGFrZSBhZHZhbnRhZ2Ugb2YgdGhlIE9wdXMgaW4tYmFuZCBGRUMuIFBvc3NpYmxlIHZhbHVl
cyBhcmUgMSBhbmQgMC4KKyAgICAgICAgICAgIFByb3ZpZGluZyAwIHdoZW4gRkVDIGNhbm5vdCBi
ZSB1c2VkIG9uIHRoZSByZWNlaXZpbmcgc2lkZSBpcworICAgICAgICAgICAgUkVDT01NRU5ERUQu
IElmIG5vCisgICAgICAgICAgICB2YWx1ZSBpcyBzcGVjaWZpZWQsIHVzZWluYmFuZGZlYyBpcyBh
c3N1bWVkIHRvIGJlIDAuCisgICAgICAgICAgICBUaGlzIHBhcmFtZXRlciBpcyBvbmx5IGEgcHJl
ZmVyZW5jZSBhbmQgdGhlIHJlY2VpdmVyIE1VU1QgYmUgYWJsZSB0byBwcm9jZXNzCisgICAgICAg
ICAgICBwYWNrZXRzIHRoYXQgaW5jbHVkZSBGRUMgaW5mb3JtYXRpb24sIGV2ZW4gaWYgaXQgbWVh
bnMgdGhlIEZFQyBwYXJ0IGlzIGRpc2NhcmRlZC4KKyAgICAgICAgICAgIDx2c3BhY2UgYmxhbmtM
aW5lcz0nMScvPjwvdD4KKworICAgICAgICAgICAgPHQgaGFuZ1RleHQ9InVzZWR0eDoiPiBzcGVj
aWZpZXMgaWYgdGhlIGRlY29kZXIgcHJlZmVycyB0aGUgdXNlIG9mCisgICAgICAgICAgICBEVFgu
IFBvc3NpYmxlIHZhbHVlcyBhcmUgMSBhbmQgMC4gSWYgbm8gdmFsdWUgaXMgc3BlY2lmaWVkLCB0
aGUKKyAgICAgICAgICAgIGRlZmF1bHQgaXMgMC48dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+
CisgICAgICAgICAgPC9saXN0PjwvdD4KKworICAgICAgICAgIDx0PkVuY29kaW5nIGNvbnNpZGVy
YXRpb25zOjx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKyAgICAgICAgICA8dD48bGlzdCBz
dHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dD5UaGUgT3B1cyBtZWRpYSB0eXBlIGlzIGZy
YW1lZCBhbmQgY29uc2lzdHMgb2YgYmluYXJ5IGRhdGEgYWNjb3JkaW5nCisgICAgICAgICAgICB0
byBTZWN0aW9uJm5ic3A7NC44IGluIDx4cmVmIHRhcmdldD0iUkZDNjgzOCIvPi48L3Q+CisgICAg
ICAgICAgPC9saXN0PjwvdD4KKworICAgICAgICAgIDx0PlNlY3VyaXR5IGNvbnNpZGVyYXRpb25z
OiA8L3Q+CisgICAgICAgICAgPHQ+PGxpc3Qgc3R5bGU9ImhhbmdpbmciPgorICAgICAgICAgICAg
PHQ+U2VlIDx4cmVmIHRhcmdldD0nc2VjdXJpdHktY29uc2lkZXJhdGlvbnMnLz4gb2YgdGhpcyBk
b2N1bWVudC48L3Q+CisgICAgICAgICAgPC9saXN0PjwvdD4KKworICAgICAgICAgIDx0PkludGVy
b3BlcmFiaWxpdHkgY29uc2lkZXJhdGlvbnM6IG5vbmU8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48
L3Q+CisJICA8dD5QdWJsaXNoZWQgc3BlY2lmaWNhdGlvbjogUkZDIFtYWFhYXTwvdD4KKwkgIDx0
Pk5vdGUgdG8gdGhlIFJGQyBFZGl0b3I6IFJlcGxhY2UgW1hYWFhdIHdpdGggdGhlIG51bWJlciBv
ZiB0aGUgcHVibGlzaGVkCisgICAgICAgICAgUkZDLjx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwv
dD4KKworICAgICAgICAgIDx0PkFwcGxpY2F0aW9ucyB0aGF0IHVzZSB0aGlzIG1lZGlhIHR5cGU6
IDwvdD4KKyAgICAgICAgICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8
dD5BbnkgYXBwbGljYXRpb24gdGhhdCByZXF1aXJlcyB0aGUgdHJhbnNwb3J0IG9mCisgICAgICAg
ICAgICBzcGVlY2ggb3IgYXVkaW8gZGF0YSBjYW4gdXNlIHRoaXMgbWVkaWEgdHlwZS4gU29tZSBl
eGFtcGxlcyBhcmUsCisgICAgICAgICAgICBidXQgbm90IGxpbWl0ZWQgdG8sIGF1ZGlvIGFuZCB2
aWRlbyBjb25mZXJlbmNpbmcsIFZvaWNlIG92ZXIgSVAsCisgICAgICAgICAgICBtZWRpYSBzdHJl
YW1pbmcuPC90PgorICAgICAgICAgIDwvbGlzdD48L3Q+CisKKyAgICAgICAgICA8dD5GcmFnbWVu
dCBpZGVudGlmaWVyIGNvbnNpZGVyYXRpb25zOiBOL0E8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48
L3Q+CisKKyAgICAgICAgICA8dD5QZXJzb24gJmFtcDsgZW1haWwgYWRkcmVzcyB0byBjb250YWN0
IGZvciBmdXJ0aGVyIGluZm9ybWF0aW9uOjwvdD4KKyAgICAgICAgICA8dD48bGlzdCBzdHlsZT0i
aGFuZ2luZyI+CisgICAgICAgICAgICA8dD5TSUxLIFN1cHBvcnQgc2lsa3N1cHBvcnRAc2t5cGUu
bmV0PC90PgorICAgICAgICAgICAgPHQ+SmVhbi1NYXJjIFZhbGluIGptdmFsaW5Aam12YWxpbi5j
YTwvdD4KKyAgICAgICAgICA8L2xpc3Q+PC90PgorCisgICAgICAgICAgPHQ+SW50ZW5kZWQgdXNh
Z2U6IENPTU1PTjx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKworICAgICAgICAgIDx0PlJl
c3RyaWN0aW9ucyBvbiB1c2FnZTo8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisKKyAgICAg
ICAgICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dD5Gb3IgdHJhbnNm
ZXIgb3ZlciBSVFAsIHRoZSBSVFAgcGF5bG9hZCBmb3JtYXQgKDx4cmVmCisgICAgICAgICAgICB0
YXJnZXQ9J29wdXMtcnRwLXBheWxvYWQtZm9ybWF0Jy8+IG9mIHRoaXMgZG9jdW1lbnQpIFNIQUxM
IGJlCisgICAgICAgICAgICB1c2VkLjwvdD4KKyAgICAgICAgICA8L2xpc3Q+PC90PgorCisgICAg
ICAgICAgPHQ+QXV0aG9yOjwvdD4KKyAgICAgICAgICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+
CisgICAgICAgICAgICA8dD5KdWxpYW4gU3BpdHRrYSBqc3BpdHRrYUBnbWFpbC5jb208dnNwYWNl
IGJsYW5rTGluZXM9JzEnLz48L3Q+CisgICAgICAgICAgICA8dD5Lb2VuIFZvcyBrb2Vudm9zNzRA
Z21haWwuY29tPHZzcGFjZSBibGFua0xpbmVzPScxJy8+PC90PgorICAgICAgICAgICAgPHQ+SmVh
bi1NYXJjIFZhbGluIGptdmFsaW5Aam12YWxpbi5jYTx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwv
dD4KKyAgICAgICAgICA8L2xpc3Q+PC90PgorCisgICAgICAgICAgPHQ+IENoYW5nZSBjb250cm9s
bGVyOiBJRVRGIFBheWxvYWQgV29ya2luZyBHcm91cCBkZWxlZ2F0ZWQgZnJvbSB0aGUgSUVTRzwv
dD4KKyAgICAgIDwvc2VjdGlvbj4KKyAgICA8L3NlY3Rpb24+CisgICAgCisgICAgPHNlY3Rpb24g
dGl0bGU9J1NEUCBDb25zaWRlcmF0aW9ucyc+CisgICAgICAgIDx0PlRoZSBpbmZvcm1hdGlvbiBk
ZXNjcmliZWQgaW4gdGhlIG1lZGlhIHR5cGUgc3BlY2lmaWNhdGlvbiBoYXMgYQorICAgICAgICBz
cGVjaWZpYyBtYXBwaW5nIHRvIGZpZWxkcyBpbiB0aGUgU2Vzc2lvbiBEZXNjcmlwdGlvbiBQcm90
b2NvbCAoU0RQKQorICAgICAgICA8eHJlZiB0YXJnZXQ9IlJGQzQ1NjYiLz4sIHdoaWNoIGlzIGNv
bW1vbmx5IHVzZWQgdG8gZGVzY3JpYmUgUlRQCisgICAgICAgIHNlc3Npb25zLiBXaGVuIFNEUCBp
cyB1c2VkIHRvIHNwZWNpZnkgc2Vzc2lvbnMgZW1wbG95aW5nIE9wdXMsCisgICAgICAgIHRoZSBt
YXBwaW5nIGlzIGFzIGZvbGxvd3M6PC90PgorCisgICAgICAgIDx0PgorICAgICAgICAgIDxsaXN0
IHN0eWxlPSJzeW1ib2xzIj4KKyAgICAgICAgICAgIDx0PlRoZSBtZWRpYSB0eXBlICgiYXVkaW8i
KSBnb2VzIGluIFNEUCAibT0iIGFzIHRoZSBtZWRpYSBuYW1lLjwvdD4KKworICAgICAgICAgICAg
PHQ+VGhlIG1lZGlhIHN1YnR5cGUgKCJvcHVzIikgZ29lcyBpbiBTRFAgImE9cnRwbWFwIiBhcyB0
aGUgZW5jb2RpbmcKKyAgICAgICAgICAgIG5hbWUuIFRoZSBSVFAgY2xvY2sgcmF0ZSBpbiAiYT1y
dHBtYXAiIE1VU1QgYmUgNDgwMDAgYW5kIHRoZSBudW1iZXIgb2YKKyAgICAgICAgICAgIGNoYW5u
ZWxzIE1VU1QgYmUgMi48L3Q+CisKKyAgICAgICAgICAgIDx0PlRoZSBPUFRJT05BTCBtZWRpYSB0
eXBlIHBhcmFtZXRlcnMgInB0aW1lIiBhbmQgIm1heHB0aW1lIiBhcmUKKyAgICAgICAgICAgIG1h
cHBlZCB0byAiYT1wdGltZSIgYW5kICJhPW1heHB0aW1lIiBhdHRyaWJ1dGVzLCByZXNwZWN0aXZl
bHksIGluIHRoZQorICAgICAgICAgICAgU0RQLjwvdD4KKworICAgICAgICAgICAgPHQ+VGhlIE9Q
VElPTkFMIG1lZGlhIHR5cGUgcGFyYW1ldGVycyAibWF4YXZlcmFnZWJpdHJhdGUiLAorICAgICAg
ICAgICAgIm1heHBsYXliYWNrcmF0ZSIsICJzdGVyZW8iLCAiY2JyIiwgInVzZWluYmFuZGZlYyIs
IGFuZAorICAgICAgICAgICAgInVzZWR0eCIsIHdoZW4gcHJlc2VudCwgTVVTVCBiZSBpbmNsdWRl
ZCBpbiB0aGUgImE9Zm10cCIgYXR0cmlidXRlCisgICAgICAgICAgICBpbiB0aGUgU0RQLCBleHBy
ZXNzZWQgYXMgYSBtZWRpYSB0eXBlIHN0cmluZyBpbiB0aGUgZm9ybSBvZiBhCisgICAgICAgICAg
ICBzZW1pY29sb24tc2VwYXJhdGVkIGxpc3Qgb2YgcGFyYW1ldGVyPXZhbHVlIHBhaXJzIChlLmcu
LAorICAgICAgICAgICAgbWF4cGxheWJhY2tyYXRlPTQ4MDAwKS4gVGhleSBNVVNUIE5PVCBiZSBz
cGVjaWZpZWQgaW4gYW4KKyAgICAgICAgICAgIFNTUkMtc3BlY2lmaWMgImZtdHAiIHNvdXJjZS1s
ZXZlbCBhdHRyaWJ1dGUgKGFzIGRlZmluZWQgaW4KKyAgICAgICAgICAgIFNlY3Rpb24mbmJzcDs2
LjMgb2YmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzU1NzYiLz4pLjwvdD4KKworICAgICAgICAgICAg
PHQ+VGhlIE9QVElPTkFMIG1lZGlhIHR5cGUgcGFyYW1ldGVycyAic3Byb3AtbWF4Y2FwdHVyZXJh
dGUiLAorICAgICAgICAgICAgYW5kICJzcHJvcC1zdGVyZW8iIE1BWSBiZSBtYXBwZWQgdG8gdGhl
ICJhPWZtdHAiIFNEUCBhdHRyaWJ1dGUgYnkKKyAgICAgICAgICAgIGNvcHlpbmcgdGhlbSBkaXJl
Y3RseSBmcm9tIHRoZSBtZWRpYSB0eXBlIHBhcmFtZXRlciBzdHJpbmcgYXMgcGFydAorICAgICAg
ICAgICAgb2YgdGhlIHNlbWljb2xvbi1zZXBhcmF0ZWQgbGlzdCBvZiBwYXJhbWV0ZXI9dmFsdWUg
cGFpcnMgKGUuZy4sCisgICAgICAgICAgICBzcHJvcC1zdGVyZW89MSkuIFRoZXNlIHNhbWUgT1BU
SU9OQUwgbWVkaWEgdHlwZSBwYXJhbWV0ZXJzIE1BWSBhbHNvCisgICAgICAgICAgICBiZSBzcGVj
aWZpZWQgdXNpbmcgYW4gU1NSQy1zcGVjaWZpYyAiZm10cCIgc291cmNlLWxldmVsIGF0dHJpYnV0
ZQorICAgICAgICAgICAgYXMgZGVzY3JpYmVkIGluIFNlY3Rpb24mbmJzcDs2LjMgb2YmbmJzcDs8
eHJlZiB0YXJnZXQ9IlJGQzU1NzYiLz4uCisgICAgICAgICAgICBUaGV5IE1BWSBiZSBzcGVjaWZp
ZWQgaW4gYm90aCBwbGFjZXMsIGluIHdoaWNoIGNhc2UgdGhlIHBhcmFtZXRlcgorICAgICAgICAg
ICAgaW4gdGhlIHNvdXJjZS1sZXZlbCBhdHRyaWJ1dGUgb3ZlcnJpZGVzIHRoZSBvbmUgZm91bmQg
b24gdGhlCisgICAgICAgICAgICAiYT1mbXRwIiBsaW5lLiBUaGUgdmFsdWUgb2YgYW55IHBhcmFt
ZXRlciB3aGljaCBpcyBub3Qgc3BlY2lmaWVkIGluCisgICAgICAgICAgICBhIHNvdXJjZS1sZXZl
bCBzb3VyY2UgYXR0cmlidXRlIE1VU1QgYmUgdGFrZW4gZnJvbSB0aGUgImE9Zm10cCIKKyAgICAg
ICAgICAgIGxpbmUsIGlmIGl0IGlzIHByZXNlbnQgdGhlcmUuPC90PgorCisgICAgICAgICAgPC9s
aXN0PgorICAgICAgICA8L3Q+CisKKyAgICAgICAgPHQ+QmVsb3cgYXJlIHNvbWUgZXhhbXBsZXMg
b2YgU0RQIHNlc3Npb24gZGVzY3JpcHRpb25zIGZvciBPcHVzOjwvdD4KKworICAgICAgICA8dD5F
eGFtcGxlIDE6IFN0YW5kYXJkIG1vbm8gc2Vzc2lvbiB3aXRoIDQ4MDAwIEh6IGNsb2NrIHJhdGU8
L3Q+CisgICAgICAgICAgPGZpZ3VyZT4KKyAgICAgICAgICAgIDxhcnR3b3JrPgorICAgICAgICAg
ICAgICA8IVtDREFUQVsKKyAgICBtPWF1ZGlvIDU0MzEyIFJUUC9BVlAgMTAxCisgICAgYT1ydHBt
YXA6MTAxIG9wdXMvNDgwMDAvMgorICAgICAgICAgICAgICBdXT4KKyAgICAgICAgICAgIDwvYXJ0
d29yaz4KKyAgICAgICAgICA8L2ZpZ3VyZT4KKworCisgICAgICAgIDx0PkV4YW1wbGUgMjogMTYw
MDAgSHogY2xvY2sgcmF0ZSwgbWF4aW11bSBwYWNrZXQgc2l6ZSBvZiA0MCBtcywKKyAgICAgICAg
cmVjb21tZW5kZWQgcGFja2V0IHNpemUgb2YgNDAgbXMsIG1heGltdW0gYXZlcmFnZSBiaXRyYXRl
IG9mIDIwMDAwIGJwcywKKyAgICAgICAgcHJlZmVycyB0byByZWNlaXZlIHN0ZXJlbyBidXQgb25s
eSBwbGFucyB0byBzZW5kIG1vbm8sIEZFQyBpcyBkZXNpcmVkLAorICAgICAgICBEVFggaXMgbm90
IGRlc2lyZWQ8L3Q+CisKKyAgICAgICAgPGZpZ3VyZT4KKyAgICAgICAgICA8YXJ0d29yaz4KKyAg
ICAgICAgICAgIDwhW0NEQVRBWworICAgIG09YXVkaW8gNTQzMTIgUlRQL0FWUCAxMDEKKyAgICBh
PXJ0cG1hcDoxMDEgb3B1cy80ODAwMC8yCisgICAgYT1mbXRwOjEwMSBtYXhwbGF5YmFja3JhdGU9
MTYwMDA7IHNwcm9wLW1heGNhcHR1cmVyYXRlPTE2MDAwOworICAgIG1heGF2ZXJhZ2ViaXRyYXRl
PTIwMDAwOyBzdGVyZW89MTsgdXNlaW5iYW5kZmVjPTE7IHVzZWR0eD0wCisgICAgYT1wdGltZTo0
MAorICAgIGE9bWF4cHRpbWU6NDAKKyAgICAgICAgICAgIF1dPgorICAgICAgICAgIDwvYXJ0d29y
az4KKyAgICAgICAgPC9maWd1cmU+CisKKyAgICAgICAgPHQ+RXhhbXBsZSAzOiBUd28td2F5IGZ1
bGwtYmFuZCBzdGVyZW8gcHJlZmVycmVkPC90PgorCisgICAgICAgIDxmaWd1cmU+CisgICAgICAg
ICAgPGFydHdvcms+CisgICAgICAgICAgICA8IVtDREFUQVsKKyAgICBtPWF1ZGlvIDU0MzEyIFJU
UC9BVlAgMTAxCisgICAgYT1ydHBtYXA6MTAxIG9wdXMvNDgwMDAvMgorICAgIGE9Zm10cDoxMDEg
c3RlcmVvPTE7IHNwcm9wLXN0ZXJlbz0xCisgICAgICAgICAgICBdXT4KKyAgICAgICAgICA8L2Fy
dHdvcms+CisgICAgICAgIDwvZmlndXJlPgorCisKKyAgICAgIDxzZWN0aW9uIHRpdGxlPSdTRFAg
T2ZmZXIvQW5zd2VyIENvbnNpZGVyYXRpb25zJz4KKworICAgICAgICAgIDx0PldoZW4gdXNpbmcg
dGhlIG9mZmVyLWFuc3dlciBwcm9jZWR1cmUgZGVzY3JpYmVkIGluIDx4cmVmCisgICAgICAgICAg
dGFyZ2V0PSJSRkMzMjY0Ii8+IHRvIG5lZ290aWF0ZSB0aGUgdXNlIG9mIE9wdXMsIHRoZSBmb2xs
b3dpbmcKKyAgICAgICAgICBjb25zaWRlcmF0aW9ucyBhcHBseTo8L3Q+CisKKyAgICAgICAgICA8
dD48bGlzdCBzdHlsZT0ic3ltYm9scyI+CisKKyAgICAgICAgICAgIDx0Pk9wdXMgc3VwcG9ydHMg
c2V2ZXJhbCBjbG9jayByYXRlcy4gRm9yIHNpZ25hbGluZyBwdXJwb3NlcyBvbmx5CisgICAgICAg
ICAgICB0aGUgaGlnaGVzdCwgaS5lLiA0ODAwMCwgaXMgdXNlZC4gVGhlIGFjdHVhbCBjbG9jayBy
YXRlIG9mIHRoZQorICAgICAgICAgICAgY29ycmVzcG9uZGluZyBtZWRpYSBpcyBzaWduYWxlZCBp
bnNpZGUgdGhlIHBheWxvYWQgYW5kIGlzIG5vdAorICAgICAgICAgICAgcmVzdHJpY3RlZCBieSB0
aGlzIHBheWxvYWQgZm9ybWF0IGRlc2NyaXB0aW9uLiBUaGUgZGVjb2RlciBNVVNUIGJlCisgICAg
ICAgICAgICBjYXBhYmxlIG9mIGRlY29kaW5nIGV2ZXJ5IHJlY2VpdmVkIGNsb2NrIHJhdGUuIEFu
IGV4YW1wbGUKKyAgICAgICAgICAgIGlzIHNob3duIGJlbG93OgorCisgICAgICAgICAgICA8Zmln
dXJlPgorICAgICAgICAgICAgICA8YXJ0d29yaz4KKyAgICAgICAgICAgICAgICA8IVtDREFUQVsK
KyAgICBtPWF1ZGlvIDU0MzEyIFJUUC9BVlAgMTAwCisgICAgYT1ydHBtYXA6MTAwIG9wdXMvNDgw
MDAvMgorICAgICAgICAgICAgICAgIF1dPgorICAgICAgICAgICAgICA8L2FydHdvcms+CisgICAg
ICAgICAgICA8L2ZpZ3VyZT4KKyAgICAgICAgICAgIDwvdD4KKworICAgICAgICAgICAgPHQ+VGhl
ICJwdGltZSIgYW5kICJtYXhwdGltZSIgcGFyYW1ldGVycyBhcmUgdW5pZGlyZWN0aW9uYWwKKyAg
ICAgICAgICAgIHJlY2VpdmUtb25seSBwYXJhbWV0ZXJzIGFuZCB0eXBpY2FsbHkgd2lsbCBub3Qg
Y29tcHJvbWlzZQorICAgICAgICAgICAgaW50ZXJvcGVyYWJpbGl0eTsgaG93ZXZlciwgc29tZSB2
YWx1ZXMgbWlnaHQgY2F1c2UgYXBwbGljYXRpb24KKyAgICAgICAgICAgIHBlcmZvcm1hbmNlIHRv
IHN1ZmZlci4gPHhyZWYKKyAgICAgICAgICAgIHRhcmdldD0iUkZDMzI2NCIvPiBkZWZpbmVzIHRo
ZSBTRFAgb2ZmZXItYW5zd2VyIGhhbmRsaW5nIG9mIHRoZQorICAgICAgICAgICAgInB0aW1lIiBw
YXJhbWV0ZXIuIFRoZSAibWF4cHRpbWUiIHBhcmFtZXRlciBNVVNUIGJlIGhhbmRsZWQgaW4gdGhl
CisgICAgICAgICAgICBzYW1lIHdheS48L3Q+CisKKyAgICAgICAgICAgIDx0PgorICAgICAgICAg
ICAgICBUaGUgIm1heHBsYXliYWNrcmF0ZSIgcGFyYW1ldGVyIGlzIGEgdW5pZGlyZWN0aW9uYWwg
cmVjZWl2ZS1vbmx5CisgICAgICAgICAgICAgIHBhcmFtZXRlciB0aGF0IHJlZmxlY3RzIGxpbWl0
YXRpb25zIG9mIHRoZSBsb2NhbCByZWNlaXZlci4gV2hlbgorICAgICAgICAgICAgICBzZW5kaW5n
IHRvIGEgc2luZ2xlIGRlc3RpbmF0aW9uLCBhIHNlbmRlciBNVVNUIE5PVCB1c2UgYW4gYXVkaW8K
KyAgICAgICAgICAgICAgYmFuZHdpZHRoIGhpZ2hlciB0aGFuIG5lY2Vzc2FyeSB0byBtYWtlIGZ1
bGwgdXNlIG9mIGF1ZGlvIHNhbXBsZWQgYXQKKyAgICAgICAgICAgICAgYSBzYW1wbGluZyByYXRl
IG9mICJtYXhwbGF5YmFja3JhdGUiLiBHYXRld2F5cyBvciBzZW5kZXJzIHRoYXQKKyAgICAgICAg
ICAgICAgYXJlIHNlbmRpbmcgdGhlIHNhbWUgZW5jb2RlZCBhdWRpbyB0byBtdWx0aXBsZSBkZXN0
aW5hdGlvbnMKKyAgICAgICAgICAgICAgU0hPVUxEIE5PVCB1c2UgYW4gYXVkaW8gYmFuZHdpZHRo
IGhpZ2hlciB0aGFuIG5lY2Vzc2FyeSB0bworICAgICAgICAgICAgICByZXByZXNlbnQgYXVkaW8g
c2FtcGxlZCBhdCAibWF4cGxheWJhY2tyYXRlIiwgYXMgdGhpcyB3b3VsZCBsZWFkCisgICAgICAg
ICAgICAgIHRvIGluZWZmaWNpZW50IHVzZSBvZiBuZXR3b3JrIHJlc291cmNlcy4KKyAgICAgICAg
ICAgICAgVGhlICJtYXhwbGF5YmFja3JhdGUiIHBhcmFtZXRlciBkb2VzIG5vdAorICAgICAgICAg
ICAgICBhZmZlY3QgaW50ZXJvcGVyYWJpbGl0eS4gQWxzbywgdGhpcyBwYXJhbWV0ZXIgU0hPVUxE
IE5PVCBiZSB1c2VkCisgICAgICAgICAgICAgIHRvIGFkanVzdCB0aGUgYXVkaW8gYmFuZHdpZHRo
IGFzIGEgZnVuY3Rpb24gb2YgdGhlIGJpdHJhdGUsIGFzIHRoaXMKKyAgICAgICAgICAgICAgaXMg
dGhlIHJlc3BvbnNpYmlsaXR5IG9mIHRoZSBPcHVzIGVuY29kZXIgaW1wbGVtZW50YXRpb24uCisg
ICAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICAgIDx0PlRoZSAibWF4YXZlcmFnZWJpdHJhdGUi
IHBhcmFtZXRlciBpcyBhIHVuaWRpcmVjdGlvbmFsIHJlY2VpdmUtb25seQorICAgICAgICAgICAg
cGFyYW1ldGVyIHRoYXQgcmVmbGVjdHMgbGltaXRhdGlvbnMgb2YgdGhlIGxvY2FsIHJlY2VpdmVy
LiBUaGUgc2VuZGVyCisgICAgICAgICAgICBvZiB0aGUgb3RoZXIgc2lkZSBNVVNUIE5PVCBzZW5k
IHdpdGggYW4gYXZlcmFnZSBiaXRyYXRlIGhpZ2hlciB0aGFuCisgICAgICAgICAgICAibWF4YXZl
cmFnZWJpdHJhdGUiIGFzIGl0IG1pZ2h0IG92ZXJsb2FkIHRoZSBuZXR3b3JrIGFuZC9vcgorICAg
ICAgICAgICAgcmVjZWl2ZXIuIFRoZSAibWF4YXZlcmFnZWJpdHJhdGUiIHBhcmFtZXRlciB0eXBp
Y2FsbHkgd2lsbCBub3QKKyAgICAgICAgICAgIGNvbXByb21pc2UgaW50ZXJvcGVyYWJpbGl0eTsg
aG93ZXZlciwgc29tZSB2YWx1ZXMgbWlnaHQgY2F1c2UKKyAgICAgICAgICAgIGFwcGxpY2F0aW9u
IHBlcmZvcm1hbmNlIHRvIHN1ZmZlciwgYW5kIG91Z2h0IHRvIGJlIHNldCB3aXRoCisgICAgICAg
ICAgICBjYXJlLjwvdD4KKworICAgICAgICAgICAgPHQ+VGhlICJzcHJvcC1tYXhjYXB0dXJlcmF0
ZSIgYW5kICJzcHJvcC1zdGVyZW8iIHBhcmFtZXRlcnMgYXJlCisgICAgICAgICAgICB1bmlkaXJl
Y3Rpb25hbCBzZW5kZXItb25seSBwYXJhbWV0ZXJzIHRoYXQgcmVmbGVjdCBsaW1pdGF0aW9ucyBv
ZgorICAgICAgICAgICAgdGhlIHNlbmRlciBzaWRlLgorICAgICAgICAgICAgVGhleSBhbGxvdyB0
aGUgcmVjZWl2ZXIgdG8gc2V0IHVwIGEgcmVkdWNlZC1jb21wbGV4aXR5IGF1ZGlvCisgICAgICAg
ICAgICBwcm9jZXNzaW5nIHBpcGVsaW5lIGlmIHRoZSAgc2VuZGVyIGlzIG5vdCBwbGFubmluZyB0
byB1c2UgdGhlIGZ1bGwKKyAgICAgICAgICAgIHJhbmdlIG9mIE9wdXMncyBjYXBhYmlsaXRpZXMu
CisgICAgICAgICAgICBOZWl0aGVyICJzcHJvcC1tYXhjYXB0dXJlcmF0ZSIgbm9yICJzcHJvcC1z
dGVyZW8iIGFmZmVjdAorICAgICAgICAgICAgaW50ZXJvcGVyYWJpbGl0eSBhbmQgdGhlIHJlY2Vp
dmVyIE1VU1QgYmUgY2FwYWJsZSBvZiByZWNlaXZpbmcgYW55IHNpZ25hbC4KKyAgICAgICAgICAg
IDwvdD4KKworICAgICAgICAgICAgPHQ+CisgICAgICAgICAgICAgIFRoZSAic3RlcmVvIiBwYXJh
bWV0ZXIgaXMgYSB1bmlkaXJlY3Rpb25hbCByZWNlaXZlLW9ubHkKKyAgICAgICAgICAgICAgcGFy
YW1ldGVyLiBXaGVuIHNlbmRpbmcgdG8gYSBzaW5nbGUgZGVzdGluYXRpb24sIGEgc2VuZGVyIE1V
U1QKKyAgICAgICAgICAgICAgTk9UIHVzZSBzdGVyZW8gd2hlbiAic3RlcmVvIiBpcyAwLiBHYXRl
d2F5cyBvciBzZW5kZXJzIHRoYXQgYXJlCisgICAgICAgICAgICAgIHNlbmRpbmcgdGhlIHNhbWUg
ZW5jb2RlZCBhdWRpbyB0byBtdWx0aXBsZSBkZXN0aW5hdGlvbnMgU0hPVUxECisgICAgICAgICAg
ICAgIE5PVCB1c2Ugc3RlcmVvIHdoZW4gInN0ZXJlbyIgaXMgMCwgYXMgdGhpcyB3b3VsZCBsZWFk
IHRvCisgICAgICAgICAgICAgIGluZWZmaWNpZW50IHVzZSBvZiBuZXR3b3JrIHJlc291cmNlcy4g
VGhlICJzdGVyZW8iIHBhcmFtZXRlciBkb2VzCisgICAgICAgICAgICAgIG5vdCBhZmZlY3QgaW50
ZXJvcGVyYWJpbGl0eS4KKyAgICAgICAgICAgIDwvdD4KKworICAgICAgICAgICAgPHQ+CisgICAg
ICAgICAgICAgIFRoZSAiY2JyIiBwYXJhbWV0ZXIgaXMgYSB1bmlkaXJlY3Rpb25hbCByZWNlaXZl
LW9ubHkKKyAgICAgICAgICAgICAgcGFyYW1ldGVyLgorICAgICAgICAgICAgPC90PgorCisgICAg
ICAgICAgICA8dD5UaGUgInVzZWluYmFuZGZlYyIgcGFyYW1ldGVyIGlzIGEgdW5pZGlyZWN0aW9u
YWwgcmVjZWl2ZS1vbmx5CisgICAgICAgICAgICBwYXJhbWV0ZXIuPC90PgorCisgICAgICAgICAg
ICA8dD5UaGUgInVzZWR0eCIgcGFyYW1ldGVyIGlzIGEgdW5pZGlyZWN0aW9uYWwgcmVjZWl2ZS1v
bmx5CisgICAgICAgICAgICBwYXJhbWV0ZXIuPC90PgorCisgICAgICAgICAgICA8dD5BbnkgdW5r
bm93biBwYXJhbWV0ZXIgaW4gYW4gb2ZmZXIgTVVTVCBiZSBpZ25vcmVkIGJ5IHRoZSByZWNlaXZl
cgorICAgICAgICAgICAgYW5kIE1VU1QgYmUgcmVtb3ZlZCBmcm9tIHRoZSBhbnN3ZXIuPC90Pgor
CisgICAgICAgICAgPC9saXN0PjwvdD4KKyAgICAgIAorICAgICAgICA8dD4KKwkgIFRoZSBPcHVz
IHBhcmFtZXRlcnMgaW4gYW4gU0RQIE9mZmVyL0Fuc3dlciBleGNoYW5nZSBhcmUgY29tcGxldGVs
eQorICAgICAgICAgIG9ydGhvZ29uYWwsIGFuZCB0aGVyZSBpcyBubyByZWxhdGlvbnNoaXAgYmV0
d2VlbiB0aGUgU0RQIE9mZmVyIGFuZAorICAgICAgICAgIHRoZSBBbnN3ZXIuCisgICAgICAgIDwv
dD4KKyAgICAgIDwvc2VjdGlvbj4KKworICAgICAgPHNlY3Rpb24gdGl0bGU9J0RlY2xhcmF0aXZl
IFNEUCBDb25zaWRlcmF0aW9ucyBmb3IgT3B1cyc+CisKKyAgICAgICAgPHQ+Rm9yIGRlY2xhcmF0
aXZlIHVzZSBvZiBTRFAgc3VjaCBhcyBpbiBTZXNzaW9uIEFubm91bmNlbWVudCBQcm90b2NvbAor
ICAgICAgICAoU0FQKSwgPHhyZWYgdGFyZ2V0PSJSRkMyOTc0Ii8+LCBhbmQgUlRTUCwgPHhyZWYg
dGFyZ2V0PSJSRkMyMzI2Ii8+LCBmb3IKKyAgICAgICAgT3B1cywgdGhlIGZvbGxvd2luZyBuZWVk
cyB0byBiZSBjb25zaWRlcmVkOjwvdD4KKworICAgICAgICA8dD48bGlzdCBzdHlsZT0ic3ltYm9s
cyI+CisKKyAgICAgICAgICA8dD5UaGUgdmFsdWVzIGZvciAibWF4cHRpbWUiLCAicHRpbWUiLCAi
bWF4cGxheWJhY2tyYXRlIiwgYW5kCisgICAgICAgICAgIm1heGF2ZXJhZ2ViaXRyYXRlIiBvdWdo
dCB0byBiZSBzZWxlY3RlZCBjYXJlZnVsbHkgdG8gZW5zdXJlIHRoYXQgYQorICAgICAgICAgIHJl
YXNvbmFibGUgcGVyZm9ybWFuY2UgY2FuIGJlIGFjaGlldmVkIGZvciB0aGUgcGFydGljaXBhbnRz
IG9mIGEgc2Vzc2lvbi48L3Q+CisKKyAgICAgICAgICA8dD4KKyAgICAgICAgICAgIFRoZSB2YWx1
ZXMgZm9yICJtYXhwdGltZSIsICJwdGltZSIsIGFuZCBvZiB0aGUgcGF5bG9hZAorICAgICAgICAg
ICAgZm9ybWF0IGNvbmZpZ3VyYXRpb24gYXJlIHJlY29tbWVuZGF0aW9ucyBieSB0aGUgZGVjb2Rp
bmcgc2lkZSB0byBlbnN1cmUKKyAgICAgICAgICAgIHRoZSBiZXN0IHBlcmZvcm1hbmNlIGZvciB0
aGUgZGVjb2Rlci4KKyAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICA8dD5BbGwgb3RoZXIgcGFy
YW1ldGVycyBvZiB0aGUgcGF5bG9hZCBmb3JtYXQgY29uZmlndXJhdGlvbiBhcmUgZGVjbGFyYXRp
dmUKKyAgICAgICAgICBhbmQgYSBwYXJ0aWNpcGFudCBNVVNUIHVzZSB0aGUgY29uZmlndXJhdGlv
bnMgdGhhdCBhcmUgcHJvdmlkZWQgZm9yCisgICAgICAgICAgdGhlIHNlc3Npb24uIE1vcmUgdGhh
biBvbmUgY29uZmlndXJhdGlvbiBjYW4gYmUgcHJvdmlkZWQgaWYgbmVjZXNzYXJ5CisgICAgICAg
ICAgYnkgZGVjbGFyaW5nIG11bHRpcGxlIFJUUCBwYXlsb2FkIHR5cGVzOyBob3dldmVyLCB0aGUg
bnVtYmVyIG9mIHR5cGVzCisgICAgICAgICAgb3VnaHQgdG8gYmUga2VwdCBzbWFsbC48L3Q+Cisg
ICAgICAgIDwvbGlzdD48L3Q+CisgICAgICA8L3NlY3Rpb24+CisgIDwvc2VjdGlvbj4KKworICAg
IDxzZWN0aW9uIHRpdGxlPSdTZWN1cml0eSBDb25zaWRlcmF0aW9ucycgYW5jaG9yPSdzZWN1cml0
eS1jb25zaWRlcmF0aW9ucyc+CisKKyAgICAgIDx0PlVzZSBvZiB2YXJpYWJsZSBiaXRyYXRlIChW
QlIpIGlzIHN1YmplY3QgdG8gdGhlIHNlY3VyaXR5IGNvbnNpZGVyYXRpb25zIGluCisgICAgICA8
eHJlZiB0YXJnZXQ9IlJGQzY1NjIiLz4uPC90PgorCisgICAgICA8dD5SVFAgcGFja2V0cyB1c2lu
ZyB0aGUgcGF5bG9hZCBmb3JtYXQgZGVmaW5lZCBpbiB0aGlzIHNwZWNpZmljYXRpb24KKyAgICAg
IGFyZSBzdWJqZWN0IHRvIHRoZSBzZWN1cml0eSBjb25zaWRlcmF0aW9ucyBkaXNjdXNzZWQgaW4g
dGhlIFJUUAorICAgICAgc3BlY2lmaWNhdGlvbiA8eHJlZiB0YXJnZXQ9IlJGQzM1NTAiLz4sIGFu
ZCBpbiBhbnkgYXBwbGljYWJsZSBSVFAgcHJvZmlsZSBzdWNoIGFzCisgICAgICBSVFAvQVZQIDx4
cmVmIHRhcmdldD0iUkZDMzU1MSIvPiwgUlRQL0FWUEYgPHhyZWYgdGFyZ2V0PSJSRkM0NTg1Ii8+
LAorICAgICAgUlRQL1NBVlAgPHhyZWYgdGFyZ2V0PSJSRkMzNzExIi8+IG9yIFJUUC9TQVZQRiA8
eHJlZiB0YXJnZXQ9IlJGQzUxMjQiLz4uCisgICAgICBIb3dldmVyLCBhcyAiU2VjdXJpbmcgdGhl
IFJUUCBQcm90b2NvbCBGcmFtZXdvcms6CisgICAgICBXaHkgUlRQIERvZXMgTm90IE1hbmRhdGUg
YSBTaW5nbGUgTWVkaWEgU2VjdXJpdHkgU29sdXRpb24iCisgICAgICA8eHJlZiB0YXJnZXQ9IlJG
QzcyMDIiLz4gZGlzY3Vzc2VzLCBpdCBpcyBub3QgYW4gUlRQIHBheWxvYWQKKyAgICAgIGZvcm1h
dCdzIHJlc3BvbnNpYmlsaXR5IHRvIGRpc2N1c3Mgb3IgbWFuZGF0ZSB3aGF0IHNvbHV0aW9ucyBh
cmUgdXNlZAorICAgICAgdG8gbWVldCB0aGUgYmFzaWMgc2VjdXJpdHkgZ29hbHMgbGlrZSBjb25m
aWRlbnRpYWxpdHksIGludGVncml0eSBhbmQKKyAgICAgIHNvdXJjZSBhdXRoZW50aWNpdHkgZm9y
IFJUUCBpbiBnZW5lcmFsLiAgVGhpcyByZXNwb25zaWJpbGl0eSBsYXlzIG9uCisgICAgICBhbnlv
bmUgdXNpbmcgUlRQIGluIGFuIGFwcGxpY2F0aW9uLiAgVGhleSBjYW4gZmluZCBndWlkYW5jZSBv
bgorICAgICAgYXZhaWxhYmxlIHNlY3VyaXR5IG1lY2hhbmlzbXMgYW5kIGltcG9ydGFudCBjb25z
aWRlcmF0aW9ucyBpbiBPcHRpb25zCisgICAgICBmb3IgU2VjdXJpbmcgUlRQIFNlc3Npb25zIFtJ
LUQuaWV0Zi1hdnRjb3JlLXJ0cC1zZWN1cml0eS1vcHRpb25zXS4KKyAgICAgIEFwcGxpY2F0aW9u
cyBTSE9VTEQgdXNlIG9uZSBvciBtb3JlIGFwcHJvcHJpYXRlIHN0cm9uZyBzZWN1cml0eQorICAg
ICAgbWVjaGFuaXNtcy48L3Q+CisKKyAgICAgIDx0PlRoaXMgcGF5bG9hZCBmb3JtYXQgYW5kIHRo
ZSBPcHVzIGVuY29kaW5nIGRvIG5vdCBleGhpYml0IGFueQorICAgICAgc2lnbmlmaWNhbnQgbm9u
LXVuaWZvcm1pdHkgaW4gdGhlIHJlY2VpdmVyLWVuZCBjb21wdXRhdGlvbmFsIGxvYWQgYW5kIHRo
dXMKKyAgICAgIGFyZSB1bmxpa2VseSB0byBwb3NlIGEgZGVuaWFsLW9mLXNlcnZpY2UgdGhyZWF0
IGR1ZSB0byB0aGUgcmVjZWlwdCBvZgorICAgICAgcGF0aG9sb2dpY2FsIGRhdGFncmFtcy48L3Q+
CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24gdGl0bGU9J0Fja25vd2xlZGdlbWVudHMn
PgorICAgIDx0Pk1hbnkgcGVvcGxlIGhhdmUgbWFkZSB1c2VmdWwgY29tbWVudHMgYW5kIHN1Z2dl
c3Rpb25zIGNvbnRyaWJ1dGluZyB0byB0aGlzIGRvY3VtZW50LiAKKyAgICAgIEluIHBhcnRpY3Vs
YXIsIHdlIHdvdWxkIGxpa2UgdG8gdGhhbmsKKyAgICAgIFRpbmEgbGUgR3JhbmQsIEN1bGxlbiBK
ZW5uaW5ncywgSm9uYXRoYW4gTGVubm94LCBHcmVnb3J5IE1heHdlbGwsIENvbGluIFBlcmtpbnMs
IEphbiBTa29nbHVuZCwKKyAgICAgIFRpbW90aHkgQi4gVGVycmliZXJyeSwgTWFydGluIFRob21w
c29uLCBKdXN0aW4gVWJlcnRpLCBNYWdudXMgV2VzdGVybHVuZCwgYW5kIE1vIFphbmF0eS48L3Q+
CisgICAgPC9zZWN0aW9uPgorICA8L21pZGRsZT4KKworICA8YmFjaz4KKyAgICA8cmVmZXJlbmNl
cyB0aXRsZT0iTm9ybWF0aXZlIFJlZmVyZW5jZXMiPgorICAgICAgJnJmYzIxMTk7CisgICAgICAm
cmZjMzM4OTsKKyAgICAgICZyZmMzNTUwOworICAgICAgJnJmYzM3MTE7CisgICAgICAmcmZjMzU1
MTsKKyAgICAgICZyZmM2ODM4OworICAgICAgJnJmYzQ4NTU7CisgICAgICAmcmZjNDU2NjsKKyAg
ICAgICZyZmMzMjY0OworICAgICAgJnJmYzIzMjY7CisgICAgICAmcmZjNTU3NjsKKyAgICAgICZy
ZmM2NTYyOworICAgICAgJnJmYzY3MTY7CisgICAgPC9yZWZlcmVuY2VzPgorCisgICAgPHJlZmVy
ZW5jZXMgdGl0bGU9IkluZm9ybWF0aXZlIFJlZmVyZW5jZXMiPgorICAgICAgJnJmYzI5NzQ7Cisg
ICAgICAmcmZjNDU4NTsKKyAgICAgICZyZmM1MTI0OworICAgICAgJnJmYzU0MDU7CisgICAgICAm
cmZjNzIwMjsKKyAgICAgIAorICAgICAgPHJlZmVyZW5jZSBhbmNob3I9J3JtY2F0JyB0YXJnZXQ9
J2h0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvd2cvcm1jYXQvZG9jdW1lbnRzLyc+CisgICAg
ICAgIDxmcm9udD4KKyAgICAgICAgICA8dGl0bGU+cm1jYXQgZG9jdW1lbnRzPC90aXRsZT4KKyAg
ICAgICAgICA8YXV0aG9yLz4KKyAgICAgICAgICA8ZGF0ZS8+CisgICAgICAgICAgPGFic3RyYWN0
PgorICAgICAgICAgICAgPHQ+PC90PgorICAgICAgICAgIDwvYWJzdHJhY3Q+PC9mcm9udD4KKyAg
ICAgIDwvcmVmZXJlbmNlPgorCisKKyAgICA8L3JlZmVyZW5jZXM+CisKKyAgPC9iYWNrPgorPC9y
ZmM+CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2RvYy9vcHVzX2luX2lzb2JtZmYuY3NzIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1c19pbl9pc29i
bWZmLmNzcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5iZmZlOGY0NWFlOTk1OWJiZDljODRmOTZlYzgzMmE5YTBhZTVl
MGRjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1c19pbl9pc29ibWZmLmNzcwpAQCAtMCwwICsx
LDYwIEBACisvKiBOb3JtYWwgbGlua3MgKi8KKy5ub3JtYWxfbGluayBhOmxpbmsKK3sKKyAgICBj
b2xvciA6IHllbGxvdzsKK30KKy5ub3JtYWxfbGluayBhOnZpc2l0ZWQKK3sKKyAgICBjb2xvciA6
IGdyZWVuOworfQorCisvKiBCb3hlcyAqLworLnByZQoreworCXdoaXRlLXNwYWNlOiBwcmU7ICAg
ICAgICAgICAvKiBDU1MgMi4wICovCisJd2hpdGUtc3BhY2U6IHByZS13cmFwOyAgICAgIC8qIENT
UyAyLjEgKi8KKwl3aGl0ZS1zcGFjZTogLXByZS13cmFwOyAgICAgLyogT3BlcmEgNC02ICovCisJ
d2hpdGUtc3BhY2U6IC1vLXByZS13cmFwOyAgIC8qIE9wZXJhIDcgKi8KKwl3aGl0ZS1zcGFjZTog
LW1vei1wcmUtd3JhcDsgLyogTW96aWxsYSAqLworCXdoaXRlLXNwYWNlOiAtaHAtcHJlLXdyYXA7
ICAvKiBIUCBQcmludGVycyAqLworCXdvcmQtd3JhcCAgOiBicmVhay13b3JkOyAgICAvKiBJRSA1
KyAqLworfQorCisudGl0bGVfYm94Cit7CisgICAgd2lkdGggICAgICAgICAgICA6IDQ3MHB4Owor
ICAgIGhlaWdodCAgICAgICAgICAgOiA3MHB4OworICAgIG1hcmdpbiAgICAgICAgICAgOiAycHgg
NTBweCAycHggMnB4OworICAgIHBhZGRpbmcgICAgICAgICAgOiAxMHB4OworICAgIGJvcmRlciAg
ICAgICAgICAgOiAxcHggc29saWQgYmxhY2s7CisgICAgYmFja2dyb3VuZC1jb2xvciA6ICM2NjY2
NjY7CisgICAgd2hpdGUtc3BhY2UgICAgICA6IHByZTsKKyAgICBmbG9hdCAgICAgICAgICAgIDog
bGVmdDsKKyAgICB0ZXh0LWFsaWduICAgICAgIDogY2VudGVyOworICAgIGNvbG9yICAgICAgICAg
ICAgOiAjQzBDMEMwOworICAgIGZvbnQtc2l6ZSAgICAgICAgOiA1MHB0OworICAgIGZvbnQtc3R5
bGUgICAgICAgOiBpdGFsaWM7Cit9CisKKy5zdWJpbmRleF9ib3gKK3sKKyAgICBtYXJnaW4gICAg
ICAgICAgIDogNXB4OworICAgIHBhZGRpbmcgICAgICAgICAgOiAxNHB4IDIycHg7CisgICAgYm9y
ZGVyICAgICAgICAgICA6IDFweCBzb2xpZCBibGFjazsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yIDog
Izc3ODg3NzsKKyAgICBmbG9hdCAgICAgICAgICAgIDogbGVmdDsKKyAgICB0ZXh0LWFsaWduICAg
ICAgIDogY2VudGVyOworICAgIGNvbG9yICAgICAgICAgICAgOiAjMTE1NTU1OworICAgIGZvbnQt
c2l6ZSAgICAgICAgOiAzMnB0OworfQorCisuZnJhbWVfYm94Cit7CisgICAgbWFyZ2luICAgICAg
ICAgICA6IDEwcHg7CisgICAgcGFkZGluZyAgICAgICAgICA6IDEwcHg7CisgICAgYm9yZGVyICAg
ICAgICAgICA6IDBweDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yIDogIzA4NDA0MDsKKyAgICB0ZXh0
LWFsaWduICAgICAgIDogbGVmdDsKKyAgICBjb2xvciAgICAgICAgICAgIDogI0MwQzBDMDsKKyAg
ICBmb250LWZhbWlseSAgICAgIDogbW9ub3NwYWNlOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1c19p
bl9pc29ibWZmLmh0bWwgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2RvYy9vcHVzX2luX2lzb2JtZmYuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMTE3
NWRiZmRkZTI1ZTgzNzJlZDZmYzRkMDQwMWZjYTkyMmM1OTllCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9k
b2Mvb3B1c19pbl9pc29ibWZmLmh0bWwKQEAgLTAsMCArMSw2ODQgQEAKKzwhRE9DVFlQRSBIVE1M
IFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RS
L2h0bWw0L3N0cmljdC5kdGQiPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxsaW5rIHJl
bD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Im9wdXNfaW5faXNvYm1mZi5jc3Mi
Lz4KKyAgICAgICAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9dXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5FbmNhcHN1bGF0aW9uIG9m
IE9wdXMgaW4gSVNPIEJhc2UgTWVkaWEgRmlsZSBGb3JtYXQ8L3RpdGxlPgorICAgIDwvaGVhZD4K
KyAgICA8Ym9keSBiZ2NvbG9yPSIweDMzMzMzMyIgdGV4dD0iIzYwQjBDMCI+CisgICAgICAgIDxi
Pjx1PkVuY2Fwc3VsYXRpb24gb2YgT3B1cyBpbiBJU08gQmFzZSBNZWRpYSBGaWxlIEZvcm1hdDwv
dT48L2I+PGJyPgorICAgICAgICA8Zm9udCBzaXplPSIyIj5sYXN0IHVwZGF0ZWQ6IEFwcmlsIDI4
LCAyMDE2PC9mb250Pjxicj4KKyAgICAgICAgPGJyPgorICAgICAgICA8ZGl2IGNsYXNzPSJub3Jt
YWxfbGluayBwcmUgZnJhbWVfYm94Ij4KKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBFbmNhcHN1bGF0aW9uIG9mIE9wdXMgaW4gSVNPIEJhc2UgTWVkaWEgRmlsZSBGb3JtYXQKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWZXJzaW9uIDAuNi44IChpbmNv
bXBsZXRlKQorCisKK1RhYmxlIG9mIENvbnRlbnRzCis8YSBocmVmPSIjMSI+MTwvYT4gU2NvcGUK
KzxhIGhyZWY9IiMyIj4yPC9hPiBOb3JtYXRpdmUgUmVmZXJlbmNlcworPGEgaHJlZj0iIzMiPjM8
L2E+IFRlcm1zIGFuZCBEZWZpbml0aW9ucworPGEgaHJlZj0iIzQiPjQ8L2E+IERlc2lnbiBSdWxl
cyBvZiBFbmNhcHN1bGF0aW9uCisgICAgPGEgaHJlZj0iIzQuMSI+NC4xPC9hPiBGaWxlIFR5cGUg
SW5kZW50aWZpY2F0aW9uCisgICAgPGEgaHJlZj0iIzQuMiI+NC4yPC9hPiBPdmVydmlldyBvZiBU
cmFjayBTdHJ1Y3R1cmUKKyAgICA8YSBocmVmPSIjNC4zIj40LjM8L2E+IERlZmluaXRpb25zIG9m
IE9wdXMgc2FtcGxlCisgICAgICAgIDxhIGhyZWY9IiM0LjMuMSI+NC4zLjE8L2E+IFNhbXBsZSBl
bnRyeSBmb3JtYXQKKyAgICAgICAgPGEgaHJlZj0iIzQuMy4yIj40LjMuMjwvYT4gT3B1cyBTcGVj
aWZpYyBCb3gKKyAgICAgICAgPGEgaHJlZj0iIzQuMy4zIj40LjMuMzwvYT4gU2FtcGxlIGZvcm1h
dAorICAgICAgICA8YSBocmVmPSIjNC4zLjQiPjQuMy40PC9hPiBEdXJhdGlvbiBvZiBPcHVzIHNh
bXBsZQorICAgICAgICA8YSBocmVmPSIjNC4zLjUiPjQuMy41PC9hPiBTdWItc2FtcGxlCisgICAg
ICAgIDxhIGhyZWY9IiM0LjMuNiI+NC4zLjY8L2E+IFJhbmRvbSBBY2Nlc3MKKyAgICAgICAgICAg
IDxhIGhyZWY9IiM0LjMuNi4xIj40LjMuNi4xPC9hPiBSYW5kb20gQWNjZXNzIFBvaW50CisgICAg
ICAgICAgICA8YSBocmVmPSIjNC4zLjYuMiI+NC4zLjYuMjwvYT4gUHJlLXJvbGwKKyAgICA8YSBo
cmVmPSIjNC40Ij40LjQ8L2E+IFRyaW1taW5nIG9mIEFjdHVhbCBEdXJhdGlvbgorICAgIDxhIGhy
ZWY9IiM0LjUiPjQuNTwvYT4gQ2hhbm5lbCBMYXlvdXQgKGluZm9ybWF0aXZlKQorICAgIDxhIGhy
ZWY9IiM0LjYiPjQuNjwvYT4gQmFzaWMgU3RydWN0dXJlIChpbmZvcm1hdGl2ZSkKKyAgICAgICAg
PGEgaHJlZj0iIzQuNi4xIj40LjYuMjwvYT4gSW5pdGlhbCBNb3ZpZQorICAgICAgICA8YSBocmVm
PSIjNC42LjIiPjQuNi4zPC9hPiBNb3ZpZSBGcmFnbWVudHMKKyAgICA8YSBocmVmPSIjNC43Ij40
Ljc8L2E+IEV4YW1wbGUgb2YgRW5jYXBzdWxhdGlvbiAoaW5mb3JtYXRpdmUpCis8YSBocmVmPSIj
NSI+NTwvYT4gQXV0aG9yJ3MgQWRkcmVzcworCis8YSBuYW1lPSIxIj48L2E+CisxIFNjb3BlCisg
ICAgVGhpcyBzcGVjaWZpY2F0aW9uIHNwZWNpZmllcyB0aGUgZnVuZGFtZW50YWwgd2F5IG9mIHRo
ZSBlbmNhcHN1bGF0aW9uIG9mIE9wdXMgY29kZWQgYml0c3RyZWFtcyBpbiBJU08gQmFzZSBNZWRp
YQorICAgIGZpbGUgZm9ybWF0IGFuZCBpdHMgZGVyaXZhdGl2ZXMuIFRoZSBlbmNhcHN1bGF0aW9u
IG9mIE9wdXMgY29kZWQgYml0c3RyZWFtcyBpbiBRdWlja1RpbWUgZmlsZSBmb3JtYXQgaXMgb3V0
c2lkZQorICAgIHRoZSBzY29wZSBvZiB0aGlzIHNwZWNpZmljYXRpb24uCisKKzxhIG5hbWU9IjIi
PjwvYT4KKzIgTm9ybWF0aXZlIFJlZmVyZW5jZXMKKyAgICBbMV0gSVNPL0lFQyAxNDQ5Ni0xMjoy
MDE1IENvcnJlY3RlZCB2ZXJzaW9uCisgICAgICAgIEluZm9ybWF0aW9uIHRlY2hub2xvZ3kg4oCU
IENvZGluZyBvZiBhdWRpby12aXN1YWwgb2JqZWN0cyDigJQgUGFydCAxMjogSVNPIGJhc2UgbWVk
aWEgZmlsZSBmb3JtYXQKKworICAgIFsyXSBSRkMgNjcxNgorICAgICAgICBEZWZpbml0aW9uIG9m
IHRoZSBPcHVzIEF1ZGlvIENvZGVjCisKKyAgICBbM10gZHJhZnQtaWV0Zi1jb2RlYy1vZ2dvcHVz
LTA2CisgICAgICAgIE9nZyBFbmNhcHN1bGF0aW9uIGZvciB0aGUgT3B1cyBBdWRpbyBDb2RlYwor
Cis8YSBuYW1lPSIzIj48L2E+CiszIFRlcm1zIGFuZCBEZWZpbml0aW9ucworICAgIDMuMSBhY3Rp
dmUgdHJhY2sKKyAgICAgICAgZW5hYmxlZCB0cmFjayBmcm9tIHRoZSBub24tYWx0ZXJuYXRlIGdy
b3VwIG9yIHNlbGVjdGVkIHRyYWNrIGZyb20gYWx0ZXJuYXRlIGdyb3VwCisKKyAgICAzLjIgYWN0
dWFsIGR1cmF0aW9uCisgICAgICAgIGR1cmF0aW9uIGNvbnN0cnVjdGVkIGZyb20gdmFsaWQgc2Ft
cGxlcworCisgICAgMy4zIGVkaXQKKyAgICAgICAgZW50cnkgaW4gdGhlIEVkaXQgTGlzdCBCb3gK
KworICAgIDMuNCBwYWRkZWQgc2FtcGxlcworICAgICAgICBQQ00gc2FtcGxlcyBhZnRlciBkZWNv
ZGluZyBPcHVzIHNhbXBsZShzKSB3aGljaCBhcmUgbm90IHZhbGlkIHNhbXBsZXMKKyAgICAgICAg
QW4gT3B1cyBiaXRzdHJlYW0gYWx3YXlzIGNvbnRhaW5zIHRoZW0gcGFydGlhbGx5IGF0IHRoZSBi
ZWdpbm5pbmcgYW5kIG1heSBjb250YWluIHRoZW0gaW4gcGFydCBhdCB0aGUgZW5kLCBhcworICAg
ICAgICBsb25nIGFzIG5vdCBwaHlzaWNhbGx5IHJlbW92ZWQgeWV0IGF0IHRoZSBiZWdpbm5pbmcg
YW5kL29yIHRoZSBlbmQuCisKKyAgICAzLjUgcHJpbWluZyBzYW1wbGVzCisgICAgICAgIHBhZGRl
ZCBzYW1wbGVzIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIE9wdXMgYml0c3RyZWFtCisKKyAgICAz
LjYgc2FtcGxlLWFjY3VyYXRlCisgICAgICAgIGZvciBhbnkgUENNIHNhbXBsZSwgYSB0aW1lc3Rh
bXAgZXhhY3RseSBtYXRjaGluZyBpdHMgc2FtcGxpbmcgdGltZXN0YW1wIGlzIHByZXNlbnQgaW4g
dGhlIG1lZGlhIHRpbWVsaW5lLgorCisgICAgMy43IHZhbGlkIHNhbXBsZXMKKyAgICAgICAgUENN
IHNhbXBsZXMgYWZ0ZXIgZGVjb2RpbmcgT3B1cyBzYW1wbGUocykgY29ycmVzcG9uZGluZyB0byBp
bnB1dCBQQ00gc2FtcGxlcworCis8YSBuYW1lPSI0Ij48L2E+Cis0IERlc2lnbiBSdWxlcyBvZiBF
bmNhcHN1bGF0aW9uCisgICAgNC4xIEZpbGUgVHlwZSBJbmRlbnRpZmljYXRpb248YSBuYW1lPSI0
LjEiPjwvYT4KKyAgICAgICAgVGhpcyBzcGVjaWZpY2F0aW9uIGRvZXMgbm90IGRlZmluZSBhbnkg
YnJhbmQgdG8gZGVjbGFyZSBmaWxlcyBhcmUgY29uZm9ybWFudCB0byB0aGlzIHNwZWNpZmljYXRp
b24uIEhvd2V2ZXIsCisgICAgICAgIGZpbGVzIGNvbmZvcm1hbnQgdG8gdGhpcyBzcGVjaWZpY2F0
aW9uIHNoYWxsIGNvbnRhaW4gYXQgbGVhc3Qgb25lIGJyYW5kLCB3aGljaCBzdXBwb3J0cyB0aGUg
cmVxdWlyZW1lbnRzIGFuZCB0aGUKKyAgICAgICAgcmVxdWlyZW1lbnRzIGRlc2NyaWJlZCBpbiB0
aGlzIGNsYXVzZSB3aXRob3V0IGNvbnRyYWRpY3Rpb24sIGluIHRoZSBjb21wYXRpYmxlIGJyYW5k
cyBsaXN0IG9mIHRoZSBGaWxlIFR5cGUgQm94LgorICAgICAgICBBcyBhbiBleGFtcGxlLCB0aGUg
bWluaW1hbCBzdXBwb3J0IG9mIHRoZSBlbmNhcHN1bGF0aW9uIG9mIE9wdXMgYml0c3RyZWFtcyBp
biBJU08gQmFzZSBNZWRpYSBmaWxlIGZvcm1hdCByZXF1aXJlcworICAgICAgICB0aGUgJ2lzbzIn
IGJyYW5kIGluIHRoZSBjb21wYXRpYmxlIGJyYW5kcyBsaXN0IHNpbmNlIHN1cHBvcnQgb2Ygcm9s
bCBncm91cHMgaXMgcmVxdWlyZWQuCis8YSBuYW1lPSI0LjIiPjwvYT4KKyAgICA0LjIgT3ZlcnZp
ZXcgb2YgVHJhY2sgU3RydWN0dXJlCisgICAgICAgIFRoaXMgY2xhdXNlIHN1bW1hcml6ZXMgcmVx
dWlyZW1lbnRzIG9mIHRoZSBlbmNhcHN1bGF0aW9uIG9mIE9wdXMgY29kZWQgYml0c3RyZWFtIGFz
IG1lZGlhIGRhdGEgaW4gYXVkaW8gdHJhY2tzCisgICAgICAgIGluIGZpbGUgZm9ybWF0cyBjb21w
bGlhbnQgd2l0aCB0aGUgSVNPIEJhc2UgTWVkaWEgRmlsZSBGb3JtYXQuIFRoZSBkZXRhaWxzIGFy
ZSBkZXNjcmliZWQgaW4gY2xhdXNlcyBhZnRlciB0aGlzCisgICAgICAgIGNsYXVzZS4KKyAgICAg
ICAgICAgICsgVGhlIGhhbmRsZXJfdHlwZSBmaWVsZCBpbiB0aGUgSGFuZGxlciBSZWZlcmVuY2Ug
Qm94IHNoYWxsIGJlIHNldCB0byAnc291bicuCisgICAgICAgICAgICArIFRoZSBNZWRpYSBJbmZv
cm1hdGlvbiBCb3ggc2hhbGwgY29udGFpbiB0aGUgU291bmQgTWVkaWEgSGVhZGVyIEJveC4KKyAg
ICAgICAgICAgICsgVGhlIGNvZGluZ25hbWUgb2YgdGhlIHNhbXBsZSBlbnRyeSBpcyAnT3B1cycu
CisgICAgICAgICAgICAgICAgVGhpcyBzcGVjaWZpY2F0aW9uIGRvZXMgbm90IGRlZmluZSBhbnkg
ZW5jYXBzdWxhdGlvbiB1c2luZyBNUDRBdWRpb1NhbXBsZUVudHJ5IHdpdGggb2JqZWN0VHlwZUlu
ZGljYXRpb24KKyAgICAgICAgICAgICAgICBzcGVjaWZpZWQgYnkgdGhlIE1QRUctNCBSZWdpc3Ry
YXRpb24gQXV0aG9yaXR5IChodHRwOi8vd3d3Lm1wNHJhLm9yZy8pLgorICAgICAgICAgICAgICAg
IFNlZSA0LjMuMSBTYW1wbGUgZW50cnkgZm9ybWF0IHRvIGdldCB0aGUgZGV0YWlscyBhYm91dCB0
aGUgc2FtcGxlIGVudHJ5LgorICAgICAgICAgICAgKyBUaGUgJ2RPcHMnIGJveCBpcyBhZGRlZCB0
byB0aGUgc2FtcGxlIGVudHJ5IHRvIGNvbnZleSBpbml0aWFsaXppbmcgaW5mb3JtYXRpb24gZm9y
IHRoZSBkZWNvZGVyLgorICAgICAgICAgICAgICAgIFNlZSA0LjMuMiBPcHVzIFNwZWNpZmljIEJv
eCB0byBnZXQgdGhlIGRldGFpbHMuCisgICAgICAgICAgICArIEFuIE9wdXMgc2FtcGxlIGlzIGV4
YWN0bHkgb25lIE9wdXMgcGFja2V0IGZvciBlYWNoIG9mIGRpZmZlcmVudCBPcHVzIGJpdHN0cmVh
bXMuCisgICAgICAgICAgICAgICAgU2VlIDQuMy4zIFNhbXBsZSBmb3JtYXQgdG8gZ2V0IHRoZSBk
ZXRhaWxzLgorICAgICAgICAgICAgKyBFdmVyeSBPcHVzIHNhbXBsZSBpcyBhIHN5bmMgc2FtcGxl
IGJ1dCByZXF1aXJlcyBwcmUtcm9sbCBmb3IgZXZlcnkgcmFuZG9tIGFjY2VzcyB0byBnZXQgY29y
cmVjdCBvdXRwdXQuCisgICAgICAgICAgICAgICAgU2VlIDQuMy42IFJhbmRvbSBBY2Nlc3MgdG8g
Z2V0IHRoZSBkZXRhaWxzLgorPGEgbmFtZT0iNC4zIj48L2E+CisgICAgNC4zIERlZmluaXRpb25z
IG9mIE9wdXMgc2FtcGxlCisgICAgICAgIDQuMy4xIFNhbXBsZSBlbnRyeSBmb3JtYXQ8YSBuYW1l
PSI0LjMuMSI+PC9hPgorICAgICAgICAgICAgRm9yIGFueSB0cmFjayBjb250YWluaW5nIE9wdXMg
Yml0c3RyZWFtcywgYXQgbGVhc3Qgb25lIHNhbXBsZSBlbnRyeSBkZXNjcmliaW5nIGNvcnJlc3Bv
bmRpbmcgT3B1cyBiaXRzdHJlYW0KKyAgICAgICAgICAgIHNoYWxsIGJlIHByZXNlbnQgaW5zaWRl
IHRoZSBTYW1wbGUgVGFibGUgQm94LiBUaGlzIHZlcnNpb24gb2YgdGhlIHNwZWNpZmljYXRpb24g
ZGVmaW5lcyBvbmx5IG9uZSBzYW1wbGUKKyAgICAgICAgICAgIGVudHJ5IGZvcm1hdCBuYW1lZCBP
cHVzU2FtcGxlRW50cnkgd2hvc2UgY29kaW5nbmFtZSBpcyAnT3B1cycuIFRoaXMgc2FtcGxlIGVu
dHJ5IGluY2x1ZGVzIGV4YWN0bHkgb25lIE9wdXMKKyAgICAgICAgICAgIFNwZWNpZmljIEJveCBk
ZWZpbmVkIGluIDQuMy4yIGFzIGEgbWFuZGF0b3J5IGJveCBhbmQgaW5kaWNhdGVzIHRoYXQgT3B1
cyBzYW1wbGVzIGRlc2NyaWJlZCBieSB0aGlzIHNhbXBsZQorICAgICAgICAgICAgZW50cnkgYXJl
IHN0b3JlZCBieSB0aGUgc2FtcGxlIGZvcm1hdCBkZXNjcmliZWQgaW4gNC4zLjMuCisKKyAgICAg
ICAgICAgIFRoZSBzeW50YXggYW5kIHNlbWFudGljcyBvZiB0aGUgT3B1c1NhbXBsZUVudHJ5IGlz
IHNob3duIGFzIGZvbGxvd3MuCisKKyAgICAgICAgICAgIGNsYXNzIE9wdXNTYW1wbGVFbnRyeSgp
IGV4dGVuZHMgQXVkaW9TYW1wbGVFbnRyeSAoJ09wdXMnKXsKKyAgICAgICAgICAgICAgICBPcHVz
U3BlY2lmaWNCb3goKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgKyBjaGFubmVsY291
bnQ6CisgICAgICAgICAgICAgICAgVGhlIGNoYW5uZWxjb3VudCBmaWVsZCBzaGFsbCBiZSBzZXQg
dG8gdGhlIHN1bSBvZiB0aGUgdG90YWwgbnVtYmVyIG9mIE9wdXMgYml0c3RyZWFtcyBhbmQgdGhl
IG51bWJlcgorICAgICAgICAgICAgICAgIG9mIE9wdXMgYml0c3RyZWFtcyBwcm9kdWNpbmcgdHdv
IGNoYW5uZWxzLiBUaGlzIHZhbHVlIGlzIGluZGVudGljYWwgd2l0aCAoTStOKSwgd2hlcmUgTSBp
cyB0aGUgdmFsdWUgb2YKKyAgICAgICAgICAgICAgICB0aGUgKkNvdXBsZWQgU3RyZWFtIENvdW50
KiBmaWVsZCBhbmQgTiBpcyB0aGUgdmFsdWUgb2YgdGhlICpTdHJlYW0gQ291bnQqIGZpZWxkIGlu
IHRoZSAqQ2hhbm5lbCBNYXBwaW5nCisgICAgICAgICAgICAgICAgVGFibGUqIGluIHRoZSBpZGVu
dGlmaWNhdGlvbiBoZWFkZXIgZGVmaW5lZCBpbiBPZ2cgT3B1cyBbM10uCisgICAgICAgICAgICAr
IHNhbXBsZXNpemU6CisgICAgICAgICAgICAgICAgVGhlIHNhbXBsZXNpemUgZmllbGQgc2hhbGwg
YmUgc2V0IHRvIDE2LgorICAgICAgICAgICAgKyBzYW1wbGVyYXRlOgorICAgICAgICAgICAgICAg
IFRoZSBzYW1wbGVyYXRlIGZpZWxkIHNoYWxsIGJlIHNldCB0byA0ODAwMCZsdCZsdDE2LgorICAg
ICAgICAgICAgKyBPcHVzU3BlY2lmaWNCb3gKKyAgICAgICAgICAgICAgICBUaGlzIGJveCBjb250
YWlucyBpbml0aWFsaXppbmcgaW5mb3JtYXRpb24gZm9yIHRoZSBkZWNvZGVyIGFzIGRlZmluZWQg
aW4gNC4zLjIuCisKKyAgICAgICAgNC4zLjIgT3B1cyBTcGVjaWZpYyBCb3g8YSBuYW1lPSI0LjMu
MiI+PC9hPgorICAgICAgICAgICAgRXhhY3RseSBvbmUgT3B1cyBTcGVjaWZpYyBCb3ggc2hhbGwg
YmUgcHJlc2VudCBpbiBlYWNoIE9wdXNTYW1wbGVFbnRyeS4KKyAgICAgICAgICAgIFRoZSBPcHVz
IFNwZWNpZmljIEJveCBjb250YWlucyB0aGUgVmVyc2lvbiBmaWVsZCBhbmQgdGhpcyBzcGVjaWZp
Y2F0aW9uIGRlZmluZXMgdmVyc2lvbiAwIG9mIHRoaXMgYm94LgorICAgICAgICAgICAgSWYgaW5j
b21wYXRpYmxlIGNoYW5nZXMgb2NjdXJlZCBpbiB0aGUgZmllbGRzIGFmdGVyIHRoZSBWZXJzaW9u
IGZpZWxkIHdpdGhpbiB0aGUgT3B1c1NwZWNpZmljQm94IGluIHRoZQorICAgICAgICAgICAgZnV0
dXJlIHZlcnNpb25zIG9mIHRoaXMgc3BlY2lmaWNhdGlvbiwgYW5vdGhlciB2ZXJzaW9uIHdpbGwg
YmUgZGVmaW5lZC4KKyAgICAgICAgICAgIFRoaXMgYm94IHJlZmVycyB0byBPZ2cgT3B1cyBbM10g
YXQgbWFueSBwYXJ0cyBidXQgYWxsIHRoZSBkYXRhIGFyZSBzdG9yZWQgYXMgYmlnLWVuZGlhbiBm
b3JtYXQuCisKKyAgICAgICAgICAgIFRoZSBzeW50YXggYW5kIHNlbWFudGljcyBvZiB0aGUgT3B1
cyBTcGVjaWZpYyBCb3ggaXMgc2hvd24gYXMgZm9sbG93cy4KKworICAgICAgICAgICAgY2xhc3Mg
Q2hhbm5lbE1hcHBpbmdUYWJsZSAodW5zaWduZWQgaW50KDgpIE91dHB1dENoYW5uZWxDb3VudCl7
CisgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50KDgpIFN0cmVhbUNvdW50OworICAgICAgICAg
ICAgICAgIHVuc2lnbmVkIGludCg4KSBDb3VwbGVkQ291bnQ7CisgICAgICAgICAgICAgICAgdW5z
aWduZWQgaW50KDggKiBPdXRwdXRDaGFubmVsQ291bnQpIENoYW5uZWxNYXBwaW5nOworICAgICAg
ICAgICAgfQorCisgICAgICAgICAgICBhbGlnbmVkKDgpIGNsYXNzIE9wdXNTcGVjaWZpY0JveCBl
eHRlbmRzIEJveCgnZE9wcycpeworICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCg4KSBWZXJz
aW9uOworICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCg4KSBPdXRwdXRDaGFubmVsQ291bnQ7
CisgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50KDE2KSBQcmVTa2lwOworICAgICAgICAgICAg
ICAgIHVuc2lnbmVkIGludCgzMikgSW5wdXRTYW1wbGVSYXRlOworICAgICAgICAgICAgICAgIHNp
Z25lZCBpbnQoMTYpIE91dHB1dEdhaW47CisgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50KDgp
IENoYW5uZWxNYXBwaW5nRmFtaWx5OworICAgICAgICAgICAgICAgIGlmIChDaGFubmVsTWFwcGlu
Z0ZhbWlseSAhPSAwKSB7CisgICAgICAgICAgICAgICAgICAgIENoYW5uZWxNYXBwaW5nVGFibGUo
T3V0cHV0Q2hhbm5lbENvdW50KTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgICsgVmVyc2lvbjoKKyAgICAgICAgICAgICAgICBUaGUgVmVyc2lvbiBmaWVs
ZCBzaGFsbCBiZSBzZXQgdG8gMC4KKyAgICAgICAgICAgICAgICBJbiB0aGUgZnV0dXJlIHZlcnNp
b25zIG9mIHRoaXMgc3BlY2lmaWNhdGlvbiwgdGhpcyBmaWVsZCBtYXkgYmUgc2V0IHRvIG90aGVy
IHZhbHVlcy4gQW5kIHdpdGhvdXQgc3VwcG9ydAorICAgICAgICAgICAgICAgIG9mIHRob3NlIHZh
bHVlcywgdGhlIHJlYWRlciBzaGFsbCBub3QgcmVhZCB0aGUgZmllbGRzIGFmdGVyIHRoaXMgd2l0
aGluIHRoZSBPcHVzU3BlY2lmaWNCb3guCisgICAgICAgICAgICArIE91dHB1dENoYW5uZWxDb3Vu
dDoKKyAgICAgICAgICAgICAgICBUaGUgT3V0cHV0Q2hhbm5lbENvdW50IGZpZWxkIHNoYWxsIGJl
IHNldCB0byB0aGUgc2FtZSB2YWx1ZSBhcyB0aGUgKk91dHB1dCBDaGFubmVsIENvdW50KiBmaWVs
ZCBpbiB0aGUKKyAgICAgICAgICAgICAgICBpZGVudGlmaWNhdGlvbiBoZWFkZXIgZGVmaW5lZCBp
biBPZ2cgT3B1cyBbM10uCisgICAgICAgICAgICArIFByZVNraXA6CisgICAgICAgICAgICAgICAg
VGhlIFByZVNraXAgZmllbGQgaW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgdGhlIHByaW1pbmcgc2Ft
cGxlcywgdGhhdCBpcywgdGhlIG51bWJlciBvZiBzYW1wbGVzIGF0IDQ4MDAwIEh6CisgICAgICAg
ICAgICAgICAgdG8gZGlzY2FyZCBmcm9tIHRoZSBkZWNvZGVyIG91dHB1dCB3aGVuIHN0YXJ0aW5n
IHBsYXliYWNrLiBUaGUgdmFsdWUgb2YgdGhlIFByZVNraXAgZmllbGQgc2hhbGwgYmUgYXQgbGVh
c3QKKyAgICAgICAgICAgICAgICA4MCBtaWxsaXNlY29uZHMnIHdvcnRoIG9mIFBDTSBzYW1wbGVz
IGV2ZW4gd2hlbiByZW1vdmluZyBhbnkgbnVtYmVyIG9mIE9wdXMgc2FtcGxlcyB3aGljaCBtYXkg
b3IgbWF5IG5vdAorICAgICAgICAgICAgICAgIGNvbnRhaW4gdGhlIHByaW1pbmcgc2FtcGxlcy4g
VGhlIFByZVNraXAgZmllbGQgaXMgbm90IHVzZWQgZm9yIGRpc2NhcmRpbmcgdGhlIHByaW1pbmcg
c2FtcGxlcyBhdCB0aGUgd2hvbGUKKyAgICAgICAgICAgICAgICBwbGF5YmFjayBhdCBhbGwgc2lu
Y2UgaXQgaXMgaW5mb3JtYXRpdmUgb25seSwgYW5kIHRoYXQgdGFzayBmYWxscyBvbiB0aGUgRWRp
dCBMaXN0IEJveC4KKyAgICAgICAgICAgICsgSW5wdXRTYW1wbGVSYXRlOgorICAgICAgICAgICAg
ICAgIFRoZSBJbnB1dFNhbXBsZVJhdGUgZmllbGQgc2hhbGwgYmUgc2V0IHRvIHRoZSBzYW1lIHZh
bHVlIGFzIHRoZSAqSW5wdXQgU2FtcGxlIFJhdGUqIGZpZWxkIGluIHRoZQorICAgICAgICAgICAg
ICAgIGlkZW50aWZpY2F0aW9uIGhlYWRlciBkZWZpbmVkIGluIE9nZyBPcHVzIFszXS4KKyAgICAg
ICAgICAgICsgT3V0cHV0R2FpbjoKKyAgICAgICAgICAgICAgICBUaGUgT3V0cHV0R2FpbiBmaWVs
ZCBzaGFsbCBiZSBzZXQgdG8gdGhlIHNhbWUgdmFsdWUgYXMgdGhlICpPdXRwdXQgR2FpbiogZmll
bGQgaW4gdGhlIGlkZW50aWZpY2F0aW9uCisgICAgICAgICAgICAgICAgaGVhZGVyIGRlZmluZSBp
biBPZ2cgT3B1cyBbM10uIE5vdGUgdGhhdCB0aGUgdmFsdWUgaXMgc3RvcmVkIGFzIDguOCBmaXhl
ZC1wb2ludC4KKyAgICAgICAgICAgICsgQ2hhbm5lbE1hcHBpbmdGYW1pbHk6CisgICAgICAgICAg
ICAgICAgVGhlIENoYW5uZWxNYXBwaW5nRmFtaWx5IGZpZWxkIHNoYWxsIGJlIHNldCB0byB0aGUg
c2FtZSB2YWx1ZSBhcyB0aGUgKkNoYW5uZWwgTWFwcGluZyBGYW1pbHkqIGZpZWxkIGluCisgICAg
ICAgICAgICAgICAgdGhlIGlkZW50aWZpY2F0aW9uIGhlYWRlciBkZWZpbmVkIGluIE9nZyBPcHVz
IFszXS4KKyAgICAgICAgICAgICsgU3RyZWFtQ291bnQ6CisgICAgICAgICAgICAgICAgVGhlIFN0
cmVhbUNvdW50IGZpZWxkIHNoYWxsIGJlIHNldCB0byB0aGUgc2FtZSB2YWx1ZSBhcyB0aGUgKlN0
cmVhbSBDb3VudCogZmllbGQgaW4gdGhlIGlkZW50aWZpY2F0aW9uCisgICAgICAgICAgICAgICAg
aGVhZGVyIGRlZmluZWQgaW4gT2dnIE9wdXMgWzNdLgorICAgICAgICAgICAgKyBDb3VwbGVkQ291
bnQ6CisgICAgICAgICAgICAgICAgVGhlIENvdXBsZWRDb3VudCBmaWVsZCBzaGFsbCBiZSBzZXQg
dG8gdGhlIHNhbWUgdmFsdWUgYXMgdGhlICpDb3VwbGVkIENvdW50KiBmaWVsZCBpbiB0aGUgaWRl
bnRpZmljYXRpb24KKyAgICAgICAgICAgICAgICBoZWFkZXIgZGVmaW5lZCBpbiBPZ2cgT3B1cyBb
M10uCisgICAgICAgICAgICArIENoYW5uZWxNYXBwaW5nOgorICAgICAgICAgICAgICAgIFRoZSBD
aGFubmVsTWFwcGluZyBmaWVsZCBzaGFsbCBiZSBzZXQgdG8gdGhlIHNhbWUgb2N0ZXQgc3RyaW5n
IGFzICpDaGFubmVsIE1hcHBpbmcqIGZpZWxkIGluIHRoZSBpZGVudGktCisgICAgICAgICAgICAg
ICAgZmljYXRpb24gaGVhZGVyIGRlZmluZWQgaW4gT2dnIE9wdXMgWzNdLgorCisgICAgICAgIDQu
My4zIFNhbXBsZSBmb3JtYXQ8YSBuYW1lPSI0LjMuMyI+PC9hPgorICAgICAgICAgICAgQW4gT3B1
cyBzYW1wbGUgaXMgZXhhY3RseSBvbmUgT3B1cyBwYWNrZXQgZm9yIGVhY2ggb2YgZGlmZmVyZW50
IE9wdXMgYml0c3RyZWFtcy4gRHVlIHRvIHN1cHBvcnQgbW9yZSB0aGFuCisgICAgICAgICAgICB0
d28gY2hhbm5lbHMsIGFuIE9wdXMgc2FtcGxlIGNhbiBjb250YWluIGZyYW1lcyBmcm9tIG11bHRp
cGxlIE9wdXMgYml0c3RyZWFtcyBidXQgYWxsIE9wdXMgcGFja2V0cyBzaGFsbAorICAgICAgICAg
ICAgc2hhcmUgd2l0aCB0aGUgdG90YWwgb2YgZnJhbWUgc2l6ZXMgaW4gYSBzaW5nbGUgT3B1cyBz
YW1wbGUuIFRoZSB3YXkgb2YgaG93IHRvIHBhY2sgYW4gT3B1cyBwYWNrZXQgZnJvbQorICAgICAg
ICAgICAgZWFjaCBvZiBPcHVzIGJpdHN0cmVhbXMgaW50byBhIHNpbmdsZSBPcHVzIHNhbXBsZSBm
b2xsb3dzIEFwcGVuZGl4IEIuIGluIFJGQyA2NzE2IFsyXS4KKyAgICAgICAgICAgIFRoZSBlbmRp
YW5uZXNzIGhhcyBub3RoaW5nIHRvIGRvIHdpdGggYW55IE9wdXMgc2FtcGxlIHNpbmNlIGV2ZXJ5
IE9wdXMgcGFja2V0IGlzIHByb2Nlc3NlZCBieXRlLWJ5LWJ5dGUuCisgICAgICAgICAgICBJbiB0
aGlzIHNwZWNpZmljYXRpb24sICdzYW1wbGUnIG1lYW5zICdPcHVzIHNhbXBsZScgZXhjZXB0IGZv
ciAncGFkZGVkIHNhbXBsZXMnLCAncHJpbWluZyBzYW1wbGVzJywgJ3ZhbGlkCisgICAgICAgICAg
ICBzYW1wbGUnIGFuZCAnc2FtcGxlLWFjY3VyYXRlJywgaS5lLiAnc2FtcGxlJyBpcyAnc2FtcGxl
JyBpbiB0aGUgdGVybSBkZWZpbmVkIGluIElTTy9JRUMgMTQ0OTYtMTIgWzFdLgorCisgICAgICAg
ICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICAgICAgfCBPcHVz
IHBhY2tldCAwIChzZWxmLWRlbGltaXRpbmcgZnJhbWluZykgfCBPcHVzIHBhY2tldCAxICh1bmRl
bGltaXRlZCBmcmFtaW5nKSB8CisgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0rCisgICAgICAgICAgICAgICAgfDwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIHRoZSBz
aXplIG9mIE9wdXMgc2FtcGxlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT58CisKKyAgICAgICAg
ICAgICAgICAgICAgRmlndXJlIDEgLSBFeGFtcGxlIHN0cnVjdHVyZSBvZiBhbiBPcHVzIHNhbXBs
ZSBjb250YWluaW5nIHR3byBPcHVzIGJpdHN0cmVhbXMKKworICAgICAgICA0LjMuNCBEdXJhdGlv
biBvZiBPcHVzIHNhbXBsZTxhIG5hbWU9IjQuMy40Ij48L2E+CisgICAgICAgICAgICBUaGUgZHVy
YXRpb24gb2YgT3B1cyBzYW1wbGUgaXMgZ2l2ZW4gYnkgbXVsdGlwbHlpbmcgdGhlIHRvdGFsIG9m
IGZyYW1lIHNpemVzIGZvciBhIHNpbmdsZSBPcHVzIGJpdHN0cmVhbQorICAgICAgICAgICAgZXhw
cmVzc2VkIGluIHNlY29uZHMgYnkgdGhlIHZhbHVlIG9mIHRoZSB0aW1lc2NhbGUgZmllbGQgaW4g
dGhlIE1lZGlhIEhlYWRlciBCb3guCisgICAgICAgICAgICBMZXQncyBzYXkgYW4gT3B1cyBzYW1w
bGUgY29uc2lzdHMgb2YgdHdvIE9wdXMgYml0c3RyZWFtcywgd2hlcmUgdGhlIGZyYW1lIHNpemUg
b2Ygb25lIGJpdHN0cmVhbSBpcyA0MCBtaWxsaS0KKyAgICAgICAgICAgIHNlY29uZHMgYW5kIHRo
ZSBmcmFtZSBzaXplIG9mIGFub3RoZXIgaXMgNjAgbWlsbGlzZWNvbmRzLCBhbmQgdGhlIHRpbWVz
Y2FsZSBmaWVsZCBpbiB0aGUgTWVkaWEgSGVhZGVyIEJveAorICAgICAgICAgICAgaXMgc2V0IHRv
IDQ4MDAwLCB0aGVuIHRoZSBkdXJhdGlvbiBvZiB0aGF0IE9wdXMgc2FtcGxlIHNoYWxsIGJlIDEy
MCBtaWxsaXNlY29uZHMgc2luY2UgdGhyZWUgNDAgbWlsbGlzZWNvbmQKKyAgICAgICAgICAgIGZy
YW1lIGFuZCB0d28gNjAgbWlsbGlzZWNvbmQgZnJhbWVzIHNoYWxsIGJlIGNvbnRhaW5lZCBiZWNh
dXNlIG9mIHRoZSBtYXhpbXVtIGR1cmF0aW9uIG9mIE9wdXMgcGFja2V0LCAxMjAKKyAgICAgICAg
ICAgIG1pbGxpc2Vjb25kcywgYW5kIDU3NjAgaW4gdGhlIHRpbWVzY2FsZSBpbmRpY2F0ZWQgaW4g
dGhlIE1lZGlhIEhlYWRlciBCb3guCisKKyAgICAgICAgICAgIFRvIGluZGljYXRlIHRoZSB2YWxp
ZCBzYW1wbGVzIGV4Y2x1ZGluZyB0aGUgcGFkZGVkIHNhbXBsZXMgYXQgdGhlIGVuZCBvZiBPcHVz
IGJpdHN0cmVhbSwgdGhlIGR1cmF0aW9uIG9mCisgICAgICAgICAgICB0aGUgbGFzdCBPcHVzIHNh
bXBsZSBvZiBhbiBPcHVzIGJpdHN0cmVhbSBpcyBnaXZlbiBieSBtdWx0aXBseWluZyB0aGUgbnVt
YmVyIG9mIHRoZSB2YWxpZCBzYW1wbGVzIGJ5IHRoZQorICAgICAgICAgICAgdmFsdWUgcHJvZHVj
ZWQgYnkgZGl2aWRpbmcgdGhlIHZhbHVlIG9mIHRoZSB0aW1lc2NhbGUgZmllbGQgaW4gdGhlIE1l
ZGlhIEhlYWRlciBCb3ggYnkgNDgwMDAuCisKKyAgICAgICAgNC4zLjUgU3ViLXNhbXBsZTxhIG5h
bWU9IjQuMy41Ij48L2E+CisgICAgICAgICAgICBUaGUgc3RydWN0dXJlIG9mIHRoZSBsYXN0IE9w
dXMgcGFja2V0IGluIGFuIE9wdXMgc2FtcGxlIGlzIGRpZmZlcmVudCBmcm9tIHRoZSBvdGhlcnMg
aW4gdGhlIHNhbWUgT3B1cyBzYW1wbGUsCisgICAgICAgICAgICBhbmQgdGhlIG90aGVycyBhcmUg
aW52YWxpZCBPcHVzIHBhY2tldHMgYXMgYW4gT3B1cyBzYW1wbGUgYmVjYXVzZSBvZiBzZWxmLWRl
bGltaXRpbmcgZnJhbWluZy4gVG8gYXZvaWQKKyAgICAgICAgICAgIGNvbXBsZXhpdGllcywgc3Vi
LXNhbXBsZSBpcyBub3QgZGVmaW5lZCBmb3IgT3B1cyBzYW1wbGUgaW4gdGhpcyBzcGVjaWZpY2F0
aW9uLgorCisgICAgICAgIDQuMy42IFJhbmRvbSBBY2Nlc3M8YSBuYW1lPSI0LjMuNiI+PC9hPgor
ICAgICAgICAgICAgVGhpcyBzdWJjbGF1c2UgZGVzY3JpYmVzIHRoZSBuYXR1cmUgb2YgdGhlIHJh
bmRvbSBhY2Nlc3Mgb2YgT3B1cyBzYW1wbGUuCisKKyAgICAgICAgICAgIDQuMy42LjEgUmFuZG9t
IEFjY2VzcyBQb2ludDxhIG5hbWU9IjQuMy42LjEiPjwvYT4KKyAgICAgICAgICAgICAgICBBbGwg
T3B1cyBzYW1wbGVzIGNhbiBiZSBpbmRlcGVuZGVudGx5IGRlY29kZWQgaS5lLiBldmVyeSBPcHVz
IHNhbXBsZSBpcyBhIHN5bmMgc2FtcGxlLiBUaGVyZWZvcmUsIHRoZQorICAgICAgICAgICAgICAg
IFN5bmMgU2FtcGxlIEJveCBzaGFsbCBub3QgYmUgcHJlc2VudCBhcyBsb25nIGFzIHRoZXJlIGFy
ZSBubyBzYW1wbGVzIG90aGVyIHRoYW4gT3B1cyBzYW1wbGVzIGluIHRoZSBzYW1lCisgICAgICAg
ICAgICAgICAgdHJhY2suIEFuZCB0aGUgc2FtcGxlX2lzX25vbl9zeW5jX3NhbXBsZSBmaWVsZCBm
b3IgT3B1cyBzYW1wbGVzIHNoYWxsIGJlIHNldCB0byAwLgorCisgICAgICAgICAgICA0LjMuNi4y
IFByZS1yb2xsPGEgbmFtZT0iNC4zLjYuMiI+PC9hPgorICAgICAgICAgICAgICAgIE9wdXMgYml0
c3RyZWFtIHJlcXVpcmVzIGF0IGxlYXN0IDgwIG1pbGxpc2Vjb25kIHByZS1yb2xsIGFmdGVyIGVh
Y2ggcmFuZG9tIGFjY2VzcyB0byBnZXQgY29ycmVjdCBvdXRwdXQuCisgICAgICAgICAgICAgICAg
UHJlLXJvbGwgaXMgaW5kaWNhdGVkIGJ5IHRoZSByb2xsX2Rpc3RhbmNlIGZpZWxkIGluIEF1ZGlv
Um9sbFJlY292ZXJ5RW50cnkuIEF1ZGlvUHJlUm9sbEVudHJ5IHNoYWxsIG5vdAorICAgICAgICAg
ICAgICAgIGJlIHVzZWQgc2luY2UgZXZlcnkgT3B1cyBzYW1wbGUgaXMgYSBzeW5jIHNhbXBsZSBp
biBPcHVzIGJpdHN0cmVhbS4gTm90ZSB0aGF0IHJvbGxfZGlzdGFuY2UgaXMgZXhwcmVzc2VkCisg
ICAgICAgICAgICAgICAgaW4gc2FtcGxlIHVuaXRzIGluIGEgdGVybSBvZiBJU08gQmFzZSBNZWRp
YSBGaWxlIEZvcm1hdCwgYW5kIGFsd2F5cyB0YWtlcyBuZWdhdGl2ZSB2YWx1ZXMuCisKKyAgICAg
ICAgICAgICAgICBGb3IgYW55IHRyYWNrIGNvbnRhaW5pbmcgT3B1cyBiaXRzdHJlYW1zLCBhdCBs
ZWFzdCBvbmUgU2FtcGxlIEdyb3VwIERlc2NyaXB0aW9uIEJveCBhbmQgYXQgbGVhc3Qgb25lCisg
ICAgICAgICAgICAgICAgU2FtcGxlIHRvIEdyb3VwIEJveCB3aXRoaW4gdGhlIFNhbXBsZSBUYWJs
ZSBCb3ggc2hhbGwgYmUgcHJlc2VudCBhbmQgdGhlc2UgaGF2ZSB0aGUgZ3JvdXBpbmdfdHlwZSBm
aWVsZAorICAgICAgICAgICAgICAgIHNldCB0byAncm9sbCcuIElmIGFueSBPcHVzIHNhbXBsZSBp
cyBjb250YWluZWQgaW4gYSB0cmFjayBmcmFnbWVudCwgdGhlIFNhbXBsZSB0byBHcm91cCBCb3gg
d2l0aCB0aGUKKyAgICAgICAgICAgICAgICBncm91cGluZ190eXBlIGZpZWxkIHNldCB0byAncm9s
bCcgc2hhbGwgYmUgcHJlc2VudCBmb3IgdGhhdCB0cmFjayBmcmFnbWVudC4KKworICAgICAgICAg
ICAgICAgIEZvciB0aGUgcmVxdWlyZW1lbnQgb2YgQXVkaW9Sb2xsUmVjb3ZlcnlFbnRyeSwgdGhl
IGNvbXBhdGlibGVfYnJhbmRzIGZpZWxkIGluIHRoZSBGaWxlIFR5cGUgQm94IHNoYWxsCisgICAg
ICAgICAgICAgICAgY29udGFpbiBhdCBsZWFzdCBvbmUgYnJhbmQgd2hpY2ggcmVxdWlyZXMgc3Vw
cG9ydCBmb3Igcm9sbCBncm91cHMuCis8YSBuYW1lPSI0LjQiPjwvYT4KKyAgICA0LjQgVHJpbW1p
bmcgb2YgQWN0dWFsIER1cmF0aW9uCisgICAgICAgIER1ZSB0byB0aGUgcHJpbWluZyBzYW1wbGVz
IChvciB0aGUgcGFkZGluZyBhdCB0aGUgYmVnaW5uaW5nKSBkZXJpdmVkIGZyb20gdGhlIHByZS1y
b2xsIGZvciB0aGUgc3RhcnR1cCBhbmQgdGhlCisgICAgICAgIHBhZGRlZCBzYW1wbGVzIGF0IHRo
ZSBlbmQsIHdlIG5lZWQgdHJpbSBmcm9tIG1lZGlhIHRvIGdldCB0aGUgYWN0dWFsIGR1cmF0aW9u
LiBBbiBlZGl0IGluIHRoZSBFZGl0IExpc3QgQm94IGNhbgorICAgICAgICBhY2hpZXZlIHRoaXMg
ZGVtYW5kLCBhbmQgdGhlIEVkaXQgQm94IGFuZCB0aGUgRWRpdCBMaXN0IEJveCBzaGFsbCBiZSBw
cmVzZW50LgorCisgICAgICAgIEZvciBzYW1wbGUtYWNjdXJhdGUgdHJpbW1pbmcsIHByb3BlciB0
aW1lc2NhbGUgc2hvdWxkIGJlIHNldCB0byB0aGUgdGltZXNjYWxlIGZpZWxkIGluIHRoZSBNb3Zp
ZSBIZWFkZXIgQm94CisgICAgICAgIGFuZCB0aGUgTWVkaWEgSGVhZGVyIEJveCBpbnNpZGUgVHJh
Y2sgQm94KGVzKSBmb3IgT3B1cyBiaXRzdHJlYW0uIFRoZSB0aW1lc2NhbGUgZmllbGQgaW4gdGhl
IE1lZGlhIEhlYWRlciBCb3ggaXMKKyAgICAgICAgdHlwaWNhbGx5IHNldCB0byA0ODAwMC4gSXQg
aXMgcmVjb21tZW5kZWQgdGhhdCB0aGUgdGltZXNjYWxlIGZpZWxkIGluIHRoZSBNb3ZpZSBIZWFk
ZXIgQm94IGJlIHNldCB0byB0aGUgc2FtZQorICAgICAgICB2YWx1ZSBvZiB0aGUgdGltZXNjYWxl
IGZpZWxkIGluIHRoZSBNZWRpYSBIZWFkZXIgQm94IGluIG9yZGVyIHRvIGF2b2lkIHRoZSByb3Vu
ZGluZyBwcm9ibGVtIHdoZW4gc3BlY2lmeWluZworICAgICAgICBkdXJhdGlvbiBvZiBlZGl0IGlm
IHRoZSB0aW1lc2NhbGVzIGluIGFsbCBvZiB0aGUgTWVkaWEgSGVhZGVyIEJveGVzIGFyZSBzZXQg
dG8gdGhlIHNhbWUgdmFsdWUuCisKKyAgICAgICAgRm9yIGV4YW1wbGUsIHRvIGluZGljYXRlIHRo
ZSBhY3R1YWwgZHVyYXRpb24gb2YgYW4gT3B1cyBiaXRzdHJlYW0gaW4gYSB0cmFjayB3aXRoIHRo
ZSB0aW1lc2NhbGUgZmllbGRzIG9mIGJvdGgKKyAgICAgICAgdGhlIE1vdmllIEhlYWRlciBCb3gg
YW5kIHRoZSBNZWRpYSBIZWFkZXIgQm94IHNldCB0byA0ODAwMCwgd2Ugd291bGQgdXNlIHRoZSBm
b2xsb3dpbmcgZWRpdDoKKyAgICAgICAgICAgIHNlZ21lbnRfZHVyYXRpb24gPSB0aGUgbnVtYmVy
IG9mIHRoZSB2YWxpZCBzYW1wbGVzCisgICAgICAgICAgICBtZWRpYV90aW1lID0gdGhlIG51bWJl
ciBvZiB0aGUgcHJpbWluZyBzYW1wbGVzCisgICAgICAgICAgICBtZWRpYV9yYXRlID0gMSAmbHQm
bHQgMTYKKworICAgICAgICBUaGUgRWRpdCBMaXN0IEJveCBpcyBhcHBsaWVkIHRvIHdob2xlIG1v
dmllIGluY2x1ZGluZyBhbGwgbW92aWUgZnJhZ21lbnRzLiBUaGVyZWZvcmUsIGl0IGlzIGltcG9z
c2libGUgdG8gdGVsbAorICAgICAgICB0aGUgYWN0dWFsIGR1cmF0aW9uIGluIHRoZSBjYXNlIHBy
b2R1Y2luZyBtb3ZpZSBmcmFnbWVudHMgb24gdGhlIGZseSBzdWNoIGFzIGxpdmUtc3RyZWFtaW5n
LiBJbiBzdWNoIGNhc2VzLAorICAgICAgICB0aGUgZHVyYXRpb24gb2YgdGhlIGxhc3QgT3B1cyBz
YW1wbGUgbWF5IGJlIGhlbHBmdWwgYnkgc2V0dGluZyB6ZXJvIHRvIHRoZSBzZWdtZW50X2R1cmF0
aW9uIGZpZWxkIHNpbmNlIHRoZQorICAgICAgICB2YWx1ZSAwIHJlcHJlc2VudHMgaW1wbGljaXQg
ZHVyYXRpb24gZXF1YWwgdG8gdGhlIHN1bSBvZiB0aGUgZHVyYXRpb24gb2YgYWxsIHNhbXBsZXMu
Cis8YSBuYW1lPSI0LjUiPjwvYT4KKyAgICA0LjUgQ2hhbm5lbCBMYXlvdXQgKGluZm9ybWF0aXZl
KQorICAgICAgICBCeSB0aGUgYXBwbGljYXRpb24gb2YgYWx0ZXJuYXRlX2dyb3VwIGluIHRoZSBU
cmFjayBIZWFkZXIgQm94LCB3aG9sZSBhdWRpbyBjaGFubmVscyBpbiBhbGwgYWN0aXZlIHRyYWNr
cyBmcm9tCisgICAgICAgIG5vbi1hbHRlcm5hdGUgZ3JvdXAgYW5kL29yIGRpZmZlcmVudCBhbHRl
cm5hdGUgZ3JvdXAgZnJvbSBlYWNoIG90aGVyIGFyZSBjb21wb3NpdGVkIGludG8gdGhlIHByZXNl
bnRhdGlvbi4gSWYKKyAgICAgICAgYW4gT3B1cyBzYW1wbGUgY29uc2lzdHMgb2YgbXVsdGlwbGUg
T3B1cyBiaXRzdHJlYW1zLCBpdCBjYW4gYmUgc3BsaXR0ZWQgaW50byBpbmRpdmlkdWFsIE9wdXMg
Yml0c3RyZWFtcyBhbmQKKyAgICAgICAgcmVjb25zdHJ1Y3RlZCBpbnRvIG5ldyBPcHVzIHNhbXBs
ZXMgYXMgbG9uZyBhcyBldmVyeSBPcHVzIGJpdHN0cmVhbSBoYXMgdGhlIHNhbWUgdG90YWwgZHVy
YXRpb24gaW4gZWFjaCBPcHVzCisgICAgICAgIHNhbXBsZS4gVGhpcyBuYXR1cmUgY2FuIGJlIHV0
aWxpemVkIHRvIGVuY2Fwc3VsYXRlIGEgc2luZ2xlIE9wdXMgYml0c3RyZWFtIGluIGVhY2ggdHJh
Y2sgd2l0aG91dCBicmVha2luZyB0aGUKKyAgICAgICAgb3JpZ2luYWwgY2hhbm5lbCBsYXlvdXQu
CisKKyAgICAgICAgQXMgYW4gZXhhbXBsZSwgbGV0J3Mgc2F5IHRoZXJlIGlzIGEgZm9sbG93aW5n
IHRyYWNrOgorICAgICAgICAgICAgT3V0cHV0Q2hhbm5lbENvdW50ID0gNjsKKyAgICAgICAgICAg
IFN0cmVhbUNvdW50ICAgICAgICA9IDQ7CisgICAgICAgICAgICBDb3VwbGVkQ291bnQgICAgICAg
PSAyOworICAgICAgICAgICAgQ2hhbm5lbE1hcHBpbmcgICAgID0gezAsIDQsIDEsIDIsIDMsIDV9
OyAvLyBmcm9udCBsZWZ0LCBmcm9udCBjZW50ZXIsIGZyb250IHJpZ2h0LCByZWFyIGxlZnQsIHJl
YXIgcmlnaHQsIExGRQorICAgICAgICBIZXJlLCB0byBjb3VwbGUgZnJvbnQgbGVmdCB0byBmcm9u
dCByaWdodCBjaGFubmVscyBpbnRvIHRoZSBmaXJzdCBzdHJlYW0sIGFuZCBjb3VwbGUgcmVhciBs
ZWZ0IHRvIHJlYXIgcmlnaHQKKyAgICAgICAgY2hhbm5lbHMgaW50byB0aGUgc2Vjb25kIHN0cmVh
bSwgcmVvcmRlcmluZyBpcyBuZWVkZWQgc2luY2UgY291cGxlZCBzdHJlYW1zIG11c3QgcHJlY2Vk
ZSBhbnkgbm9uLWNvdXBsZWQgc3RyZWFtLgorICAgICAgICBZb3UgZXh0cmFjdCB0aGUgZm91ciBP
cHVzIGJpdHN0cmVhbXMgZnJvbSB0aGlzIHRyYWNrIGFuZCB5b3UgZW5jYXBzdWxhdGUgdHdvIG9m
IHRoZSBmb3VyIGludG8gYSB0cmFjayBhbmQgdGhlCisgICAgICAgIG90aGVycyBpbnRvIGFub3Ro
ZXIgdHJhY2suIFRoZSBmb3JtZXIgdHJhY2sgaXMgYXMgZm9sbG93cy4KKyAgICAgICAgICAgIE91
dHB1dENoYW5uZWxDb3VudCA9IDY7CisgICAgICAgICAgICBTdHJlYW1Db3VudCAgICAgICAgPSAy
OworICAgICAgICAgICAgQ291cGxlZENvdW50ICAgICAgID0gMjsKKyAgICAgICAgICAgIENoYW5u
ZWxNYXBwaW5nICAgICA9IHswLCAyNTUsIDEsIDIsIDMsIDI1NX07IC8vIGZyb250IGxlZnQsIGZy
b250IGNlbnRlciwgZnJvbnQgcmlnaHQsIHJlYXIgbGVmdCwgcmVhciByaWdodCwgTEZFCisgICAg
ICAgIEFuZCB0aGUgbGF0dGVyIHRyYWNrIGlzIGFzIGZvbGxvd3MuCisgICAgICAgICAgICBPdXRw
dXRDaGFubmVsQ291bnQgPSA2OworICAgICAgICAgICAgU3RyZWFtQ291bnQgICAgICAgID0gMjsK
KyAgICAgICAgICAgIENvdXBsZWRDb3VudCAgICAgICA9IDA7CisgICAgICAgICAgICBDaGFubmVs
TWFwcGluZyAgICAgPSB7MjU1LCAwLCAyNTUsIDI1NSwgMjU1LCAxfTsgLy8gZnJvbnQgbGVmdCwg
ZnJvbnQgY2VudGVyLCBmcm9udCByaWdodCwgcmVhciBsZWZ0LCByZWFyIHJpZ2h0LCBMRkUKKyAg
ICAgICAgSW4gYWRkaXRpb24sIHRoZSB2YWx1ZSBvZiB0aGUgYWx0ZXJuYXRlX2dyb3VwIGZpZWxk
IGluIHRoZSBib3RoIHRyYWNrcyBpcyBzZXQgdG8gMC4gQXMgdGhlIHJlc3VsdCwgdGhlIHBsYXll
cgorICAgICAgICBtYXkgcGxheSBhcyBpZiBjaGFubmVscyB3aXRoIDI1NSBhcmUgbm90IHByZXNl
bnQsIGFuZCBwbGF5IHRoZSBwcmVzZW50YXRpb24gY29uc3RydWN0ZWQgZnJvbSB0aGUgYm90aCB0
cmFja3MKKyAgICAgICAgaW4gdGhlIHNhbWUgY2hhbm5lbCBsYXlvdXQgYXMgdGhlIG9uZSBvZiB0
aGUgb3JpZ2luYWwgdHJhY2suIEtlZXAgaW4gbWluZCB0aGF0IHRoZSB3YXkgb2YgdGhlIGNvbXBv
c2l0aW9uLCBpLmUuCisgICAgICAgIHRoZSBtaXhpbmcgZm9yIHBsYXliYWNrLCBpcyBub3QgZGVm
aW5lZCBoZXJlLCBhbmQgbWF5YmUgZGlmZmVyZW50IHJlc3VsdHMgY291bGQgb2NjdXIgZXhjZXB0
IGZvciB0aGUgY2hhbm5lbAorICAgICAgICBsYXlvdXQgb2YgdGhlIG9yaWdpbmFsLCBkZXBlbmRp
bmcgb24gYW4gaW1wbGVtZW50YXRpb24gb3IgdGhlIGRlZmluaXRpb24gb2YgYSBkZXJpdmVkIGZp
bGUgZm9ybWF0LgorCisgICAgICAgIE5vdGUgdGhhdCBzb21lIGRlcml2ZWQgZmlsZSBmb3JtYXRz
IG1heSBzcGVjaWZ5IHRoZSByZXN0cmljdGlvbiB0byBpZ25vcmUgYWx0ZXJuYXRlIGdyb3VwaW5n
LiBJbiB0aGUgY29udGV4dCBvZgorICAgICAgICBzdWNoIGZpbGUgZm9ybWF0cywgdGhpcyBhcHBs
aWNhdGlvbiBpcyBub3QgYXZhaWxhYmxlLiBUaGlzIHVuYXZhaWxhYmlsaXR5IGRvZXMgbm90IG1l
YW4gaW5jb21wYXRpYmlsaXRpZXMgYW1vbmcKKyAgICAgICAgZmlsZSBmb3JtYXRzIHVubGVzcyB0
aGUgcmVzdHJpY3Rpb24gdG8gdGhlIHZhbHVlIG9mIHRoZSBhbHRlcm5hdGVfZ3JvdXAgZmllbGQg
aXMgc3BlY2lmaWVkIGFuZCBicmluZ3MgYWJvdXQKKyAgICAgICAgYW55IGNvbmZsaWN0IGFtb25n
IHRoZWlyIGRlZmluaXRpb25zLgorPGEgbmFtZT0iNC42Ij48L2E+CisgICAgNC42IEJhc2ljIFN0
cnVjdHVyZSAoaW5mb3JtYXRpdmUpCisgICAgICAgIDQuNi4xIEluaXRpYWwgTW92aWU8YSBuYW1l
PSI0LjYuMSI+PC9hPgorICAgICAgICAgICAgVGhpcyBzdWJjbGF1c2Ugc2hvd3MgYSBiYXNpYyBz
dHJ1Y3R1cmUgb2YgdGhlIE1vdmllIEJveCBhcyBmb2xsb3dzOgorCisgICAgICAgICAgICArLS0t
LSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHxtb292fCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwg
ICAgfCAgICB8IE1vdmllIEJveCAgICAgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0t
LS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHxtdmhkfCAgICB8ICAgIHwgICAgfCAgICB8
ICAgIHwgICAgfCBNb3ZpZSBIZWFkZXIgQm94ICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICst
LS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8dHJha3wgICAgfCAgICB8ICAgIHwgICAg
fCAgICB8ICAgIHwgVHJhY2sgQm94ICAgICAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICAr
LS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8dGtoZHwgICAgfCAgICB8ICAg
IHwgICAgfCAgICB8IFRyYWNrIEhlYWRlciBCb3ggICAgICAgICAgICAgfAorICAgICAgICAgICAg
Ky0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfGVkdHN8ICAgIHwgICAgfCAg
ICB8ICAgIHwgICAgfCBFZGl0IEJveCAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgICAgICAg
ICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfGVsc3R8ICAgIHwg
ICAgfCAgICB8ICAgIHwgRWRpdCBMaXN0IEJveCAgICAgICAgICAgICAgICB8CisgICAgICAgICAg
ICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8bWRpYXwgICAgfCAgICB8
ICAgIHwgICAgfCAgICB8IE1lZGlhIEJveCAgICAgICAgICAgICAgICAgICAgfAorICAgICAgICAg
ICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8bWRoZHwgICAg
fCAgICB8ICAgIHwgICAgfCBNZWRpYSBIZWFkZXIgQm94ICAgICAgICAgICAgIHwKKyAgICAgICAg
ICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfGhkbHJ8ICAg
IHwgICAgfCAgICB8ICAgIHwgSGFuZGxlciBSZWZlcmVuY2UgQm94ICAgICAgICB8CisgICAgICAg
ICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHxtaW5mfCAg
ICB8ICAgIHwgICAgfCAgICB8IE1lZGlhIEluZm9ybWF0aW9uIEJveCAgICAgICAgfAorICAgICAg
ICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ICAgIHxz
bWhkfCAgICB8ICAgIHwgICAgfCBTb3VuZCBNZWRpYSBIZWFkZXIgQm94ICAgICAgIHwKKyAgICAg
ICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfCAgICB8
ZGluZnwgICAgfCAgICB8ICAgIHwgRGF0YSBJbmZvcm1hdGlvbiBCb3ggICAgICAgICB8CisgICAg
ICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwgICAg
fCAgICB8ZHJlZnwgICAgfCAgICB8IERhdGEgUmVmZXJlbmNlIEJveCAgICAgICAgICAgfAorICAg
ICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ICAg
IHwgICAgfCAgICB8dXJsIHwgICAgfCBEYXRhRW50cnlVcmxCb3ggICAgICAgICAgICAgIHwKKyAg
ICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSsgb3IgKy0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfCAg
ICB8ICAgIHwgICAgfHVybiB8ICAgIHwgRGF0YUVudHJ5VXJuQm94ICAgICAgICAgICAgICB8Cisg
ICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwg
ICAgfHN0Ymx8ICAgIHwgICAgfCAgICB8IFNhbXBsZSBUYWJsZSAgICAgICAgICAgICAgICAgfAor
ICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8
ICAgIHwgICAgfHN0c2R8ICAgIHwgICAgfCBTYW1wbGUgRGVzY3JpcHRpb24gQm94ICAgICAgIHwK
KyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAg
fCAgICB8ICAgIHwgICAgfE9wdXN8ICAgIHwgT3B1c1NhbXBsZUVudHJ5ICAgICAgICAgICAgICB8
CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAg
IHwgICAgfCAgICB8ICAgIHwgICAgfGRPcHN8IE9wdXMgU3BlY2lmaWMgQm94ICAgICAgICAgICAg
fAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAg
ICB8ICAgIHwgICAgfHN0dHN8ICAgIHwgICAgfCBEZWNvZGluZyBUaW1lIHRvIFNhbXBsZSBCb3gg
IHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwg
ICAgfCAgICB8ICAgIHxzdHNjfCAgICB8ICAgIHwgU2FtcGxlIFRvIENodW5rIEJveCAgICAgICAg
ICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8
ICAgIHwgICAgfCAgICB8c3RzenwgICAgfCAgICB8IFNhbXBsZSBTaXplIEJveCAgICAgICAgICAg
ICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSsgb3IgKy0tLS0rLS0t
LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAg
fCAgICB8ICAgIHwgICAgfHN0ejJ8ICAgIHwgICAgfCBDb21wYWN0IFNhbXBsZSBTaXplIEJveCAg
ICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAg
IHwgICAgfCAgICB8ICAgIHxzdGNvfCAgICB8ICAgIHwgQ2h1bmsgT2Zmc2V0IEJveCAgICAgICAg
ICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKyBvciArLS0tLSst
LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAg
ICB8ICAgIHwgICAgfCAgICB8Y282NHwgICAgfCAgICB8IENodW5rIExhcmdlIE9mZnNldCBCb3gg
ICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwg
ICAgfCAgICB8ICAgIHwgICAgfHNncGR8ICAgIHwgICAgfCBTYW1wbGUgR3JvdXAgRGVzY3JpcHRp
b24gQm94IHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8
ICAgIHwgICAgfCAgICB8ICAgIHxzYmdwfCAgICB8ICAgIHwgU2FtcGxlIHRvIEdyb3VwIEJveCAg
ICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAg
fG12ZXh8KiAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8IE1vdmllIEV4dGVuZHMgQm94ICAg
ICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAg
IHwgICAgfHRyZXh8KiAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBUcmFjayBFeHRlbmRzIEJveCAg
ICAgICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCisgICAgICAgICAgICAg
ICAgICAgIEZpZ3VyZSAyIC0gQmFzaWMgc3RydWN0dXJlIG9mIE1vdmllIEJveAorCisgICAgICAg
ICAgICBJdCBpcyBzdHJvbmdseSByZWNvbW1lbmRlZCB0aGF0IHRoZSBvcmRlciBvZiBib3hlcyBz
aG91bGQgZm9sbG93IHRoZSBhYm92ZSBzdHJ1Y3R1cmUuCisgICAgICAgICAgICBCb3hlcyBtYXJr
ZWQgd2l0aCBhbiBhc3RlcmlzayAoKikgbWF5IGJlIHByZXNlbnQuCisgICAgICAgICAgICBGb3Ig
bW9zdCBib3hlcyBsaXN0ZWQgYWJvdmUsIHRoZSBkZWZpbml0aW9uIGlzIGFzIGlzIGRlZmluZWQg
aW4gSVNPL0lFQyAxNDQ5Ni0xMiBbMV0uIFRoZSBhZGRpdGlvbmFsIGJveGVzCisgICAgICAgICAg
ICBhbmQgdGhlIGFkZGl0aW9uYWwgcmVxdWlyZW1lbnRzLCByZXN0cmljdGlvbnMgYW5kIHJlY29t
bWVuZGF0aW9ucyB0byB0aGUgb3RoZXIgYm94ZXMgYXJlIGRlc2NyaWJlZCBpbiB0aGlzCisgICAg
ICAgICAgICBzcGVjaWZpY2F0aW9uLgorCisgICAgICAgIDQuNi4yIE1vdmllIEZyYWdtZW50czxh
IG5hbWU9IjQuNi4yIj48L2E+CisgICAgICAgICAgICBUaGlzIHN1YmNsYXVzZSBzaG93cyBhIGJh
c2ljIHN0cnVjdHVyZSBvZiB0aGUgTW92aWUgRnJhZ21lbnQgQm94IGFzIGZvbGxvd3M6CisKKyAg
ICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfG1vb2Z8ICAgIHwgICAgfCAg
ICB8ICAgIHwgICAgfCAgICB8ICAgIHwgTW92aWUgRnJhZ21lbnQgQm94ICAgICAgICAgICB8Cisg
ICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfG1maGR8ICAgIHwg
ICAgfCAgICB8ICAgIHwgICAgfCAgICB8IE1vdmllIEZyYWdtZW50IEhlYWRlciBCb3ggICAgfAor
ICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHx0cmFmfCAgICB8
ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBUcmFjayBGcmFnbWVudCBCb3ggICAgICAgICAgIHwK
KyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHx0Zmhk
fCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgVHJhY2sgRnJhZ21lbnQgSGVhZGVyIEJveCAgICB8
CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8dHJ1
bnwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8IFRyYWNrIEZyYWdtZW50IFJ1biBCb3ggICAgICAg
fAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfHNn
cGR8KiAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBTYW1wbGUgR3JvdXAgRGVzY3JpcHRpb24gQm94
IHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHxz
YmdwfCogICB8ICAgIHwgICAgfCAgICB8ICAgIHwgU2FtcGxlIHRvIEdyb3VwIEJveCAgICAgICAg
ICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKworICAgICAgICAgICAgICAgICAgICBG
aWd1cmUgMyAtIEJhc2ljIHN0cnVjdHVyZSBvZiBNb3ZpZSBGcmFnbWVudCBCb3gKKworICAgICAg
ICAgICAgSXQgaXMgc3Ryb25nbHkgcmVjb21tZW5kZWQgdGhhdCB0aGUgTW92aWUgRnJhZ21lbnQg
SGVhZGVyIEJveCBhbmQgdGhlIFRyYWNrIEZyYWdtZW50IEhlYWRlciBCb3ggYmUKKyAgICAgICAg
ICAgIHBsYWNlZCBmaXJzdCBpbiB0aGVpciBjb250YWluZXIuCisgICAgICAgICAgICBCb3hlcyBt
YXJrZWQgd2l0aCBhbiBhc3RlcmlzayAoKikgbWF5IGJlIHByZXNlbnQuCisgICAgICAgICAgICBG
b3IgdGhlIGJveGVzIGxpc3RlZCBhYm92ZSwgdGhlIGRlZmluaXRpb24gaXMgYXMgaXMgZGVmaW5l
ZCBpbiBJU08vSUVDIDE0NDk2LTEyIFsxXS4KKzxhIG5hbWU9IjQuNyI+PC9hPgorICAgIDQuNyBF
eGFtcGxlIG9mIEVuY2Fwc3VsYXRpb24gKGluZm9ybWF0aXZlKQorICAgICAgICBbRmlsZV0KKyAg
ICAgICAgICAgIHNpemUgPSAxNzc5MAorICAgICAgICAgICAgW2Z0eXA6IEZpbGUgVHlwZSBCb3hd
CisgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAwCisgICAgICAgICAgICAgICAgc2l6ZSA9IDI0
CisgICAgICAgICAgICAgICAgbWFqb3JfYnJhbmQgPSBtcDQyIDogTVA0IHZlcnNpb24gMgorICAg
ICAgICAgICAgICAgIG1pbm9yX3ZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgY29tcGF0aWJs
ZV9icmFuZHMKKyAgICAgICAgICAgICAgICAgICAgYnJhbmRbMF0gPSBtcDQyIDogTVA0IHZlcnNp
b24gMgorICAgICAgICAgICAgICAgICAgICBicmFuZFsxXSA9IGlzbzIgOiBJU08gQmFzZSBNZWRp
YSBmaWxlIGZvcm1hdCB2ZXJzaW9uIDIKKyAgICAgICAgICAgIFttb292OiBNb3ZpZSBCb3hdCisg
ICAgICAgICAgICAgICAgcG9zaXRpb24gPSAyNAorICAgICAgICAgICAgICAgIHNpemUgPSA3NTcK
KyAgICAgICAgICAgICAgICBbbXZoZDogTW92aWUgSGVhZGVyIEJveF0KKyAgICAgICAgICAgICAg
ICAgICAgcG9zaXRpb24gPSAzMgorICAgICAgICAgICAgICAgICAgICBzaXplID0gMTA4CisgICAg
ICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgIGZsYWdzID0g
MHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgY3JlYXRpb25fdGltZSA9IFVUQyAyMDE0LzEy
LzEyLCAxODo0MToxOQorICAgICAgICAgICAgICAgICAgICBtb2RpZmljYXRpb25fdGltZSA9IFVU
QyAyMDE0LzEyLzEyLCAxODo0MToxOQorICAgICAgICAgICAgICAgICAgICB0aW1lc2NhbGUgPSA0
ODAwMAorICAgICAgICAgICAgICAgICAgICBkdXJhdGlvbiA9IDMzNjAwICgwMDowMDowMC43MDAp
CisgICAgICAgICAgICAgICAgICAgIHJhdGUgPSAxLjAwMDAwMAorICAgICAgICAgICAgICAgICAg
ICB2b2x1bWUgPSAxLjAwMDAwMAorICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAw
MAorICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAg
ICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgIHRyYW5z
Zm9ybWF0aW9uIG1hdHJpeAorICAgICAgICAgICAgICAgICAgICAgICAgfCBhLCBiLCB1IHwgICB8
IDEuMDAwMDAwLCAwLjAwMDAwMCwgMC4wMDAwMDAgfAorICAgICAgICAgICAgICAgICAgICAgICAg
fCBjLCBkLCB2IHwgPSB8IDAuMDAwMDAwLCAxLjAwMDAwMCwgMC4wMDAwMDAgfAorICAgICAgICAg
ICAgICAgICAgICAgICAgfCB4LCB5LCB3IHwgICB8IDAuMDAwMDAwLCAwLjAwMDAwMCwgMS4wMDAw
MDAgfAorICAgICAgICAgICAgICAgICAgICBwcmVfZGVmaW5lZCA9IDB4MDAwMDAwMDAKKyAgICAg
ICAgICAgICAgICAgICAgcHJlX2RlZmluZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAg
ICAgIHByZV9kZWZpbmVkID0gMHgwMDAwMDAwMAorICAgICAgICAgICAgICAgICAgICBwcmVfZGVm
aW5lZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgcHJlX2RlZmluZWQgPSAweDAw
MDAwMDAwCisgICAgICAgICAgICAgICAgICAgIHByZV9kZWZpbmVkID0gMHgwMDAwMDAwMAorICAg
ICAgICAgICAgICAgICAgICBuZXh0X3RyYWNrX0lEID0gMgorICAgICAgICAgICAgICAgIFtpb2Rz
OiBPYmplY3QgRGVzY3JpcHRvciBCb3hdCisgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0g
MTQwCisgICAgICAgICAgICAgICAgICAgIHNpemUgPSAzMworICAgICAgICAgICAgICAgICAgICB2
ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDAwCisgICAgICAg
ICAgICAgICAgICAgIFt0YWcgPSAweDEwOiBNUDRfSU9EXQorICAgICAgICAgICAgICAgICAgICAg
ICAgZXhwYW5kYWJsZUNsYXNzU2l6ZSA9IDE2CisgICAgICAgICAgICAgICAgICAgICAgICBPYmpl
Y3REZXNjcmlwdG9ySUQgPSAxCisgICAgICAgICAgICAgICAgICAgICAgICBVUkxfRmxhZyA9IDAK
KyAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGVJbmxpbmVQcm9maWxlTGV2ZWxGbGFnID0g
MAorICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweGYKKyAgICAgICAgICAgICAg
ICAgICAgICAgIE9EUHJvZmlsZUxldmVsSW5kaWNhdGlvbiA9IDB4ZmYKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHNjZW5lUHJvZmlsZUxldmVsSW5kaWNhdGlvbiA9IDB4ZmYKKyAgICAgICAgICAg
ICAgICAgICAgICAgIGF1ZGlvUHJvZmlsZUxldmVsSW5kaWNhdGlvbiA9IDB4ZmUKKyAgICAgICAg
ICAgICAgICAgICAgICAgIHZpc3VhbFByb2ZpbGVMZXZlbEluZGljYXRpb24gPSAweGZmCisgICAg
ICAgICAgICAgICAgICAgICAgICBncmFwaGljc1Byb2ZpbGVMZXZlbEluZGljYXRpb24gPSAweGZm
CisgICAgICAgICAgICAgICAgICAgICAgICBbdGFnID0gMHgwZTogRVNfSURfSW5jXQorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGV4cGFuZGFibGVDbGFzc1NpemUgPSA0CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgVHJhY2tfSUQgPSAxCisgICAgICAgICAgICAgICAgW3RyYWs6IFRy
YWNrIEJveF0KKyAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAxNzMKKyAgICAgICAgICAg
ICAgICAgICAgc2l6ZSA9IDYwOAorICAgICAgICAgICAgICAgICAgICBbdGtoZDogVHJhY2sgSGVh
ZGVyIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gMTgxCisgICAgICAg
ICAgICAgICAgICAgICAgICBzaXplID0gOTIKKyAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNp
b24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDA3CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgVHJhY2sgZW5hYmxlZAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFRyYWNrIGluIG1vdmllCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJhY2sg
aW4gcHJldmlldworICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRpb25fdGltZSA9IFVUQyAy
MDE0LzEyLzEyLCAxODo0MToxOQorICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZpY2F0aW9u
X3RpbWUgPSBVVEMgMjAxNC8xMi8xMiwgMTg6NDE6MTkKKyAgICAgICAgICAgICAgICAgICAgICAg
IHRyYWNrX0lEID0gMQorICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAw
MDAwCisgICAgICAgICAgICAgICAgICAgICAgICBkdXJhdGlvbiA9IDMzNjAwICgwMDowMDowMC43
MDApCisgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwMDAwMAorICAgICAgICAgICAgICAg
ICAgICAgICAgbGF5ZXIgPSAwCisgICAgICAgICAgICAgICAgICAgICAgICBhbHRlcm5hdGVfZ3Jv
dXAgPSAwCisgICAgICAgICAgICAgICAgICAgICAgICB2b2x1bWUgPSAxLjAwMDAwMAorICAgICAg
ICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAKKyAgICAgICAgICAgICAgICAgICAg
ICAgIHRyYW5zZm9ybWF0aW9uIG1hdHJpeAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
YSwgYiwgdSB8ICAgfCAxLjAwMDAwMCwgMC4wMDAwMDAsIDAuMDAwMDAwIHwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8IGMsIGQsIHYgfCA9IHwgMC4wMDAwMDAsIDEuMDAwMDAwLCAwLjAw
MDAwMCB8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB4LCB5LCB3IHwgICB8IDAuMDAw
MDAwLCAwLjAwMDAwMCwgMS4wMDAwMDAgfAorICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGgg
PSAwLjAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0ID0gMC4wMDAwMDAKKyAg
ICAgICAgICAgICAgICAgICAgW2VkdHM6IEVkaXQgQm94XQorICAgICAgICAgICAgICAgICAgICAg
ICAgcG9zaXRpb24gPSAyNzMKKyAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSAzNgorICAg
ICAgICAgICAgICAgICAgICAgICAgW2Vsc3Q6IEVkaXQgTGlzdCBCb3hdCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcG9zaXRpb24gPSAyODEKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBzaXplID0gMjgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gMAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9jb3VudCA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBlbnRyeVswXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWdtZW50X2R1cmF0
aW9uID0gMzM2MDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVkaWFfdGltZSA9
IDMxMgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZWRpYV9yYXRlID0gMS4wMDAw
MDAKKyAgICAgICAgICAgICAgICAgICAgW21kaWE6IE1lZGlhIEJveF0KKyAgICAgICAgICAgICAg
ICAgICAgICAgIHBvc2l0aW9uID0gMzA5CisgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0g
NDcyCisgICAgICAgICAgICAgICAgICAgICAgICBbbWRoZDogTWVkaWEgSGVhZGVyIEJveF0KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDMxNworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHNpemUgPSAzMgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNp
b24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNyZWF0aW9uX3RpbWUgPSBVVEMgMjAxNC8xMi8xMiwg
MTg6NDE6MTkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RpZmljYXRpb25fdGltZSA9
IFVUQyAyMDE0LzEyLzEyLCAxODo0MToxOQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRp
bWVzY2FsZSA9IDQ4MDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHVyYXRpb24gPSAz
NDU2MCAoMDA6MDA6MDAuNzIwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhbmd1YWdl
ID0gdW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlX2RlZmluZWQgPSAweDAwMDAK
KyAgICAgICAgICAgICAgICAgICAgICAgIFtoZGxyOiBIYW5kbGVyIFJlZmVyZW5jZSBCb3hdCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAzNDkKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzaXplID0gNTEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJz
aW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVfZGVmaW5lZCA9IDB4MDAwMDAwMDAKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVyX3R5cGUgPSBzb3VuCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFt
ZSA9IFhpcGggQXVkaW8gSGFuZGxlcgorICAgICAgICAgICAgICAgICAgICAgICAgW21pbmY6IE1l
ZGlhIEluZm9ybWF0aW9uIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlv
biA9IDQwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSAzODEKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBbc21oZDogU291bmQgTWVkaWEgSGVhZGVyIEJveF0KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSA0MDgKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2l6ZSA9IDE2CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0g
MHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFsYW5jZSA9IDAuMDAw
MDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RpbmY6IERhdGEgSW5mb3JtYXRpb24gQm94XQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDQyNAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gMzYKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgW2RyZWY6IERhdGEgUmVmZXJlbmNlIEJveF0KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNDMyCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzaXplID0gMjgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncyA9
IDB4MDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9jb3Vu
dCA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt1cmwgOiBEYXRhIEVu
dHJ5IFVybCBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9z
aXRpb24gPSA0NDgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXpl
ID0gMTIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0g
MAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAw
MDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbiA9IGlu
IHRoZSBzYW1lIGZpbGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3RibDogU2FtcGxl
IFRhYmxlIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSA0
NjAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDMyMQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBbc3RzZDogU2FtcGxlIERlc2NyaXB0aW9uIEJveF0KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNDY4CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gNzkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBmbGFncyA9IDB4MDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBlbnRyeV9jb3VudCA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFtPcHVzOiBBdWRpbyBEZXNjcmlwdGlvbl0KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwb3NpdGlvbiA9IDQ4NAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHNpemUgPSA2MworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHJlc2VydmVkID0gMHgwMDAwMDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBkYXRhX3JlZmVyZW5jZV9pbmRleCA9IDEKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbm5lbGNvdW50ID0gNgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhbXBsZXNpemUgPSAxNgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZV9kZWZpbmVkID0gMAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhbXBsZXJhdGUgPSA0ODAwMC4wMDAw
MDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZE9wczogT3B1cyBT
cGVjaWZpYyBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHBvc2l0aW9uID0gNTIwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNpemUgPSAyNworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBWZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBPdXRwdXRDaGFubmVsQ291bnQgPSA2CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFByZVNraXAgPSAzMTIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgSW5wdXRTYW1wbGVSYXRlID0gNDgwMDAKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgT3V0cHV0R2FpbiA9IDAKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhbm5lbE1hcHBpbmdGYW1pbHkgPSAxCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0cmVhbUNvdW50ID0g
NAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb3VwbGVkQ291
bnQgPSAyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENoYW5u
ZWxNYXBwaW5nCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAwIC0+IDA6IGZyb250IGxlZnQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDEgLT4gNDogZnJvbiBjZW50ZXIKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDIgLT4gMTogZnJvbnQgcmlnaHQKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMgLT4gMjogc2lkZSBsZWZ0Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0IC0+IDM6IHNp
ZGUgcmlnaHQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDUgLT4gNTogcmVhciBjZW50ZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0
dHM6IERlY29kaW5nIFRpbWUgdG8gU2FtcGxlIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHBvc2l0aW9uID0gNTQ3CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzaXplID0gMjQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZl
cnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncyA9IDB4
MDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9jb3VudCA9
IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5WzBdCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FtcGxlX2NvdW50ID0gMTgKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYW1wbGVfZGVsdGEgPSAxOTIwCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHNjOiBTYW1wbGUgVG8gQ2h1bmsgQm94
XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSA1NzEKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSA0MAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IDAKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGVudHJ5X2NvdW50ID0gMgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZW50cnlbMF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBmaXJzdF9jaHVuayA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBzYW1wbGVzX3Blcl9jaHVuayA9IDEzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc2FtcGxlX2Rlc2NyaXB0aW9uX2luZGV4ID0gMQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZW50cnlbMV0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBmaXJzdF9jaHVuayA9IDIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzYW1wbGVzX3Blcl9jaHVuayA9IDUKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzYW1wbGVfZGVzY3JpcHRpb25faW5kZXggPSAxCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFtzdHN6OiBTYW1wbGUgU2l6ZSBCb3hdCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDYxMQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDkyCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c2FtcGxlX3NpemUgPSAwICh2YXJpYWJsZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNhbXBsZV9jb3VudCA9IDE4CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlbnRyeV9zaXplWzBdID0gOTc3CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlbnRyeV9zaXplWzFdID0gOTM4CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlbnRyeV9zaXplWzJdID0gOTM5CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlbnRyeV9zaXplWzNdID0gOTM4CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlbnRyeV9zaXplWzRdID0gOTM0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlbnRyeV9zaXplWzVdID0gOTQ1CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlbnRyeV9zaXplWzZdID0gOTQ4CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlbnRyeV9zaXplWzddID0gOTU2CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlbnRyeV9zaXplWzhdID0gOTU1CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlbnRyeV9zaXplWzldID0gOTMwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlbnRyeV9zaXplWzEwXSA9IDkzMworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZW50cnlfc2l6ZVsxMV0gPSA5MzQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGVudHJ5X3NpemVbMTJdID0gOTcyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBlbnRyeV9zaXplWzEzXSA9IDk3NworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZW50cnlfc2l6ZVsxNF0gPSA5NTgKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5X3NpemVbMTVdID0gOTQ5CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBlbnRyeV9zaXplWzE2XSA9IDk2MgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZW50cnlfc2l6ZVsxN10gPSA4NDgKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgW3N0Y286IENodW5rIE9mZnNldCBCb3hdCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwb3NpdGlvbiA9IDcwMworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc2l6ZSA9IDI0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2
ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAw
eDAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlfY291bnQg
PSAyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaHVua19vZmZzZXRbMF0g
PSA3OTcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNodW5rX29mZnNldFsx
XSA9IDEzMDk2CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzZ3BkOiBTYW1wbGUg
R3JvdXAgRGVzY3JpcHRpb24gQm94XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcG9zaXRpb24gPSA3MjcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNp
emUgPSAyNgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IDEK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyb3VwaW5nX3R5cGUgPSByb2xsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0X2xlbmd0aCA9IDIgKGNv
bnN0YW50KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlfY291bnQg
PSAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb2xsX2Rpc3RhbmNlWzBd
ID0gLTIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NiZ3A6IFNhbXBsZSB0byBH
cm91cCBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9
IDc1MworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDI4CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZ3JvdXBpbmdfdHlwZSA9IHJvbGwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGVudHJ5X2NvdW50ID0gMQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZW50cnlbMF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzYW1wbGVfY291bnQgPSAxOAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGdyb3VwX2Rlc2NyaXB0aW9uX2luZGV4ID0gMQorICAgICAgICAgICAgW2Zy
ZWU6IEZyZWUgU3BhY2UgQm94XQorICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNzgxCisgICAg
ICAgICAgICAgICAgc2l6ZSA9IDgKKyAgICAgICAgICAgIFttZGF0OiBNZWRpYSBEYXRhIEJveF0K
KyAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDc4OQorICAgICAgICAgICAgICAgIHNpemUgPSAx
NzAwMQorPGEgbmFtZT0iNSI+PC9hPgorNSBBdXRob3JzJyBBZGRyZXNzCisgICAgWXVzdWtlIE5h
a2FtdXJhCisgICAgICAgIEVtYWlsOiBtdWtlbi50aGUudmZybWFuaWFjIHxhdHwgZ21haWwuY29t
CisgICAgICAgIDwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL29w
dXNfdXBkYXRlLnBhdGNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1c191cGRhdGUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTFmMDY2
YzcwMjJmZjZmODk2ZTMxYzg2MDBhM2Q2ZjA2ZjBmNDE4MgotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9j
L29wdXNfdXBkYXRlLnBhdGNoCkBAIC0wLDAgKzEsMjQ0IEBACitkaWZmIC0tZ2l0IGEvY2VsdC9i
YW5kcy5jIGIvY2VsdC9iYW5kcy5jCitpbmRleCA2OTYyNTg3Li4zMmUxZGU2IDEwMDY0NAorLS0t
IGEvY2VsdC9iYW5kcy5jCisrKysgYi9jZWx0L2JhbmRzLmMKK0BAIC0xMjM0LDkgKzEyMzQsMjMg
QEAgdm9pZCBxdWFudF9hbGxfYmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGlu
dCBzdGFydCwgaW50IGVuZCwKKyAgICAgICAgICBiID0gMDsKKyAgICAgICB9CisgCistICAgICAg
aWYgKHJlc3ludGggJiYgTSplQmFuZHNbaV0tTiA+PSBNKmVCYW5kc1tzdGFydF0gJiYgKHVwZGF0
ZV9sb3diYW5kIHx8IGxvd2JhbmRfb2Zmc2V0PT0wKSkKKysgICAgICBpZiAocmVzeW50aCAmJiAo
TSplQmFuZHNbaV0tTiA+PSBNKmVCYW5kc1tzdGFydF0gfHwgaT09c3RhcnQrMSkgJiYgKHVwZGF0
ZV9sb3diYW5kIHx8IGxvd2JhbmRfb2Zmc2V0PT0wKSkKKyAgICAgICAgICAgICBsb3diYW5kX29m
ZnNldCA9IGk7CisgCisrICAgICAgaWYgKGkgPT0gc3RhcnQrMSkKKysgICAgICB7CisrICAgICAg
ICAgaW50IG4xLCBuMjsKKysgICAgICAgICBpbnQgb2Zmc2V0OworKyAgICAgICAgIG4xID0gTSoo
ZUJhbmRzW3N0YXJ0KzFdLWVCYW5kc1tzdGFydF0pOworKyAgICAgICAgIG4yID0gTSooZUJhbmRz
W3N0YXJ0KzJdLWVCYW5kc1tzdGFydCsxXSk7CisrICAgICAgICAgb2Zmc2V0ID0gTSplQmFuZHNb
c3RhcnRdOworKyAgICAgICAgIC8qIER1cGxpY2F0ZSBlbm91Z2ggb2YgdGhlIGZpcnN0IGJhbmQg
Zm9sZGluZyBkYXRhIHRvIGJlIGFibGUgdG8gZm9sZCB0aGUgc2Vjb25kIGJhbmQuCisrICAgICAg
ICAgICAgQ29waWVzIG5vIGRhdGEgZm9yIENFTFQtb25seSBtb2RlLiAqLworKyAgICAgICAgIE9Q
VVNfQ09QWSgmbm9ybVtvZmZzZXQrbjFdLCAmbm9ybVtvZmZzZXQrMipuMSAtIG4yXSwgbjItbjEp
OworKyAgICAgICAgIGlmIChDPT0yKQorKyAgICAgICAgICAgIE9QVVNfQ09QWSgmbm9ybTJbb2Zm
c2V0K24xXSwgJm5vcm0yW29mZnNldCsyKm4xIC0gbjJdLCBuMi1uMSk7CisrICAgICAgfQorKwor
ICAgICAgIHRmX2NoYW5nZSA9IHRmX3Jlc1tpXTsKKyAgICAgICBpZiAoaT49bS0+ZWZmRUJhbmRz
KQorICAgICAgIHsKK0BAIC0xMjU3LDcgKzEyNzEsNyBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhp
bnQgZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAorICAgICAg
ICAgIGZvbGRfc3RhcnQgPSBsb3diYW5kX29mZnNldDsKKyAgICAgICAgICB3aGlsZShNKmVCYW5k
c1stLWZvbGRfc3RhcnRdID4gZWZmZWN0aXZlX2xvd2JhbmQpOworICAgICAgICAgIGZvbGRfZW5k
ID0gbG93YmFuZF9vZmZzZXQtMTsKKy0gICAgICAgICB3aGlsZShNKmVCYW5kc1srK2ZvbGRfZW5k
XSA8IGVmZmVjdGl2ZV9sb3diYW5kK04pOworKyAgICAgICAgIHdoaWxlKCsrZm9sZF9lbmQgPCBp
ICYmIE0qZUJhbmRzW2ZvbGRfZW5kXSA8IGVmZmVjdGl2ZV9sb3diYW5kK04pOworICAgICAgICAg
IHhfY20gPSB5X2NtID0gMDsKKyAgICAgICAgICBmb2xkX2kgPSBmb2xkX3N0YXJ0OyBkbyB7Cisg
ICAgICAgICAgICB4X2NtIHw9IGNvbGxhcHNlX21hc2tzW2ZvbGRfaSpDKzBdOworZGlmZiAtLWdp
dCBhL2NlbHQvcXVhbnRfYmFuZHMuYyBiL2NlbHQvcXVhbnRfYmFuZHMuYworaW5kZXggZTVlZDll
Zi4uODJmYjgyMyAxMDA2NDQKKy0tLSBhL2NlbHQvcXVhbnRfYmFuZHMuYworKysrIGIvY2VsdC9x
dWFudF9iYW5kcy5jCitAQCAtNTUyLDYgKzU1Miw3IEBAIHZvaWQgbG9nMkFtcChjb25zdCBDRUxU
TW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAorICAgICAgIHsKKyAgICAgICAgICBvcHVzX3Zh
bDE2IGxnID0gQUREMTYob2xkRUJhbmRzW2krYyptLT5uYkVCYW5kc10sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgIFNITDE2KChvcHVzX3ZhbDE2KWVNZWFuc1tpXSw2KSk7CisrICAgICAgICAg
bGcgPSBNSU4zMihRQ09OU1QzMigzMi5mLCAxNiksIGxnKTsKKyAgICAgICAgICBlQmFuZHNbaStj
Km0tPm5iRUJhbmRzXSA9IFBTSFIzMihjZWx0X2V4cDIobGcpLDQpOworICAgICAgIH0KKyAgICAg
ICBmb3IgKDtpPG0tPm5iRUJhbmRzO2krKykKK2RpZmYgLS1naXQgYS9zaWxrL0xQQ19pbnZfcHJl
ZF9nYWluLmMgYi9zaWxrL0xQQ19pbnZfcHJlZF9nYWluLmMKK2luZGV4IDYwYzQzOWIuLjZjMzAx
ZGEgMTAwNjQ0CistLS0gYS9zaWxrL0xQQ19pbnZfcHJlZF9nYWluLmMKKysrKyBiL3NpbGsvTFBD
X2ludl9wcmVkX2dhaW4uYworQEAgLTg0LDggKzg0LDEzIEBAIHN0YXRpYyBvcHVzX2ludDMyIExQ
Q19pbnZlcnNlX3ByZWRfZ2Fpbl9RQSggICAgICAgICAgICAgICAgIC8qIE8gICBSZXR1cm5zIGlu
dmVyCisgCisgICAgICAgICAvKiBVcGRhdGUgQVIgY29lZmZpY2llbnQgKi8KKyAgICAgICAgIGZv
ciggbiA9IDA7IG4gPCBrOyBuKysgKSB7CistICAgICAgICAgICAgdG1wX1FBID0gQW9sZF9RQVsg
biBdIC0gTVVMMzJfRlJBQ19RKCBBb2xkX1FBWyBrIC0gbiAtIDEgXSwgcmNfUTMxLCAzMSApOwor
LSAgICAgICAgICAgIEFuZXdfUUFbIG4gXSA9IE1VTDMyX0ZSQUNfUSggdG1wX1FBLCByY19tdWx0
MiAsIG11bHQyUSApOworKyAgICAgICAgICAgIG9wdXNfaW50NjQgdG1wNjQ7CisrICAgICAgICAg
ICAgdG1wX1FBID0gc2lsa19TVUJfU0FUMzIoIEFvbGRfUUFbIG4gXSwgTVVMMzJfRlJBQ19RKCBB
b2xkX1FBWyBrIC0gbiAtIDEgXSwgcmNfUTMxLCAzMSApICk7CisrICAgICAgICAgICAgdG1wNjQg
PSBzaWxrX1JTSElGVF9ST1VORDY0KCBzaWxrX1NNVUxMKCB0bXBfUUEsIHJjX211bHQyICksIG11
bHQyUSk7CisrICAgICAgICAgICAgaWYoIHRtcDY0ID4gc2lsa19pbnQzMl9NQVggfHwgdG1wNjQg
PCBzaWxrX2ludDMyX01JTiApIHsKKysgICAgICAgICAgICAgICByZXR1cm4gMDsKKysgICAgICAg
ICAgICB9CisrICAgICAgICAgICAgQW5ld19RQVsgbiBdID0gKCBvcHVzX2ludDMyICl0bXA2NDsK
KyAgICAgICAgIH0KKyAgICAgfQorIAorZGlmZiAtLWdpdCBhL3NpbGsvTkxTRl9zdGFiaWxpemUu
YyBiL3NpbGsvTkxTRl9zdGFiaWxpemUuYworaW5kZXggOTc5YWFiYS4uMmVmMjM5OCAxMDA2NDQK
Ky0tLSBhL3NpbGsvTkxTRl9zdGFiaWxpemUuYworKysrIGIvc2lsay9OTFNGX3N0YWJpbGl6ZS5j
CitAQCAtMTM0LDcgKzEzNCw3IEBAIHZvaWQgc2lsa19OTFNGX3N0YWJpbGl6ZSgKKyAKKyAgICAg
ICAgIC8qIEtlZXAgZGVsdGFfbWluIGRpc3RhbmNlIGJldHdlZW4gdGhlIE5MU0ZzICovCisgICAg
ICAgICBmb3IoIGkgPSAxOyBpIDwgTDsgaSsrICkKKy0gICAgICAgICAgICBOTFNGX1ExNVtpXSA9
IHNpbGtfbWF4X2ludCggTkxTRl9RMTVbaV0sIE5MU0ZfUTE1W2ktMV0gKyBORGVsdGFNaW5fUTE1
W2ldICk7CisrICAgICAgICAgICAgTkxTRl9RMTVbaV0gPSBzaWxrX21heF9pbnQoIE5MU0ZfUTE1
W2ldLCBzaWxrX0FERF9TQVQxNiggTkxTRl9RMTVbaS0xXSwgTkRlbHRhTWluX1ExNVtpXSApICk7
CisgCisgICAgICAgICAvKiBMYXN0IE5MU0Ygc2hvdWxkIGJlIG5vIGhpZ2hlciB0aGFuIDEgLSBO
RGVsdGFNaW5bTF0gKi8KKyAgICAgICAgIE5MU0ZfUTE1W0wtMV0gPSBzaWxrX21pbl9pbnQoIE5M
U0ZfUTE1W0wtMV0sICgxPDwxNSkgLSBORGVsdGFNaW5fUTE1W0xdICk7CitkaWZmIC0tZ2l0IGEv
c2lsay9kZWNfQVBJLmMgYi9zaWxrL2RlY19BUEkuYworaW5kZXggZWZkNzkxOC4uMjFiYjdlMCAx
MDA2NDQKKy0tLSBhL3NpbGsvZGVjX0FQSS5jCisrKysgYi9zaWxrL2RlY19BUEkuYworQEAgLTcy
LDYgKzcyLDkgQEAgb3B1c19pbnQgc2lsa19Jbml0RGVjb2RlciggICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBPICAgIFJldHVybnMgZXJyb3IgY28KKyAgICAgZm9yKCBuID0gMDsgbiA8
IERFQ09ERVJfTlVNX0NIQU5ORUxTOyBuKysgKSB7CisgICAgICAgICByZXQgID0gc2lsa19pbml0
X2RlY29kZXIoICZjaGFubmVsX3N0YXRlWyBuIF0gKTsKKyAgICAgfQorKyAgICBzaWxrX21lbXNl
dCgmKChzaWxrX2RlY29kZXIgKilkZWNTdGF0ZSktPnNTdGVyZW8sIDAsIHNpemVvZigoKHNpbGtf
ZGVjb2RlciAqKWRlY1N0YXRlKS0+c1N0ZXJlbykpOworKyAgICAvKiBOb3Qgc3RyaWN0bHkgbmVl
ZGVkLCBidXQgaXQncyBjbGVhbmVyIHRoYXQgd2F5ICovCisrICAgICgoc2lsa19kZWNvZGVyICop
ZGVjU3RhdGUpLT5wcmV2X2RlY29kZV9vbmx5X21pZGRsZSA9IDA7CisgCisgICAgIHJldHVybiBy
ZXQ7CisgfQorZGlmZiAtLWdpdCBhL3NpbGsvcmVzYW1wbGVyX3ByaXZhdGVfSUlSX0ZJUi5jIGIv
c2lsay9yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSLmMKK2luZGV4IGRiZDZkOWEuLjkxYTQzYWEg
MTAwNjQ0CistLS0gYS9zaWxrL3Jlc2FtcGxlcl9wcml2YXRlX0lJUl9GSVIuYworKysrIGIvc2ls
ay9yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSLmMKK0BAIC03NSwxMCArNzUsMTAgQEAgdm9pZCBz
aWxrX3Jlc2FtcGxlcl9wcml2YXRlX0lJUl9GSVIoCisgICAgIHNpbGtfcmVzYW1wbGVyX3N0YXRl
X3N0cnVjdCAqUyA9IChzaWxrX3Jlc2FtcGxlcl9zdGF0ZV9zdHJ1Y3QgKilTUzsKKyAgICAgb3B1
c19pbnQzMiBuU2FtcGxlc0luOworICAgICBvcHVzX2ludDMyIG1heF9pbmRleF9RMTYsIGluZGV4
X2luY3JlbWVudF9RMTY7CistICAgIG9wdXNfaW50MTYgYnVmWyBSRVNBTVBMRVJfTUFYX0JBVENI
X1NJWkVfSU4gKyBSRVNBTVBMRVJfT1JERVJfRklSXzEyIF07CisrICAgIG9wdXNfaW50MTYgYnVm
WyAyKlJFU0FNUExFUl9NQVhfQkFUQ0hfU0laRV9JTiArIFJFU0FNUExFUl9PUkRFUl9GSVJfMTIg
XTsKKyAKKyAgICAgLyogQ29weSBidWZmZXJlZCBzYW1wbGVzIHRvIHN0YXJ0IG9mIGJ1ZmZlciAq
LworLSAgICBzaWxrX21lbWNweSggYnVmLCBTLT5zRklSLCBSRVNBTVBMRVJfT1JERVJfRklSXzEy
ICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKKysgICAgc2lsa19tZW1jcHkoIGJ1ZiwgUy0+c0ZJ
UiwgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CisgCisg
ICAgIC8qIEl0ZXJhdGUgb3ZlciBibG9ja3Mgb2YgZnJhbWVTaXplSW4gaW5wdXQgc2FtcGxlcyAq
LworICAgICBpbmRleF9pbmNyZW1lbnRfUTE2ID0gUy0+aW52UmF0aW9fUTE2OworQEAgLTk1LDEz
ICs5NSwxMyBAQCB2b2lkIHNpbGtfcmVzYW1wbGVyX3ByaXZhdGVfSUlSX0ZJUigKKyAKKyAgICAg
ICAgIGlmKCBpbkxlbiA+IDAgKSB7CisgICAgICAgICAgICAgLyogTW9yZSBpdGVyYXRpb25zIHRv
IGRvOyBjb3B5IGxhc3QgcGFydCBvZiBmaWx0ZXJlZCBzaWduYWwgdG8gYmVnaW5uaW5nIG9mIGJ1
ZmZlciAqLworLSAgICAgICAgICAgIHNpbGtfbWVtY3B5KCBidWYsICZidWZbIG5TYW1wbGVzSW4g
PDwgMSBdLCBSRVNBTVBMRVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsK
KysgICAgICAgICAgICBzaWxrX21lbW1vdmUoIGJ1ZiwgJmJ1ZlsgblNhbXBsZXNJbiA8PCAxIF0s
IFJFU0FNUExFUl9PUkRFUl9GSVJfMTIgKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOworICAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgIH0KKyAgICAgfQorIAor
ICAgICAvKiBDb3B5IGxhc3QgcGFydCBvZiBmaWx0ZXJlZCBzaWduYWwgdG8gdGhlIHN0YXRlIGZv
ciB0aGUgbmV4dCBjYWxsICovCistICAgIHNpbGtfbWVtY3B5KCBTLT5zRklSLCAmYnVmWyBuU2Ft
cGxlc0luIDw8IDEgXSwgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQz
MiApICk7CisrICAgIHNpbGtfbWVtY3B5KCBTLT5zRklSLCAmYnVmWyBuU2FtcGxlc0luIDw8IDEg
XSwgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CisgfQor
IAorZGlmZiAtLWdpdCBhL3NyYy9vcHVzX2RlY29kZXIuYyBiL3NyYy9vcHVzX2RlY29kZXIuYwor
aW5kZXggMGNjNTZmOC4uOGEzMGZiYyAxMDA2NDQKKy0tLSBhL3NyYy9vcHVzX2RlY29kZXIuYwor
KysrIGIvc3JjL29wdXNfZGVjb2Rlci5jCitAQCAtNTk1LDE2ICs1OTUsMTQgQEAgc3RhdGljIGlu
dCBvcHVzX3BhY2tldF9wYXJzZV9pbXBsKGNvbnN0IHVuc2lnbmVkIGNoYXIgKmRhdGEsIGludCBs
ZW4sCisgICAgICAgLyogUGFkZGluZyBmbGFnIGlzIGJpdCA2ICovCisgICAgICAgaWYgKGNoJjB4
NDApCisgICAgICAgeworLSAgICAgICAgIGludCBwYWRkaW5nPTA7CisgICAgICAgICAgaW50IHA7
CisgICAgICAgICAgZG8geworICAgICAgICAgICAgIGlmIChsZW48PTApCisgICAgICAgICAgICAg
ICAgcmV0dXJuIE9QVVNfSU5WQUxJRF9QQUNLRVQ7CisgICAgICAgICAgICAgcCA9ICpkYXRhKys7
CisgICAgICAgICAgICAgbGVuLS07CistICAgICAgICAgICAgcGFkZGluZyArPSBwPT0yNTUgPyAy
NTQ6IHA7CisrICAgICAgICAgICAgbGVuIC09IHA9PTI1NSA/IDI1NDogcDsKKyAgICAgICAgICB9
IHdoaWxlIChwPT0yNTUpOworLSAgICAgICAgIGxlbiAtPSBwYWRkaW5nOworICAgICAgIH0KKyAg
ICAgICBpZiAobGVuPDApCisgICAgICAgICAgcmV0dXJuIE9QVVNfSU5WQUxJRF9QQUNLRVQ7Citk
aWZmIC0tZ2l0IGEvcnVuX3ZlY3RvcnMuc2ggYi9ydW5fdmVjdG9ycy5zaAoraW5kZXggN2NkMjNl
ZC4uNDg0MWIwYSAxMDA3NTUKKy0tLSBhL3J1bl92ZWN0b3JzLnNoCisrKysgYi9ydW5fdmVjdG9y
cy5zaAorQEAgLTEsMyArMSw1IEBACisrIyEvYmluL3NoCisrIworICMgQ29weXJpZ2h0IChjKSAy
MDExLTIwMTIgSUVURiBUcnVzdCwgSmVhbi1NYXJjIFZhbGluLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICMKKyAjICBUaGlzIGZpbGUgaXMgZXh0cmFjdGVkIGZyb20gUkZDNjcxNi4gUGxlYXNlIHNl
ZSB0aGF0IFJGQyBmb3IgYWRkaXRpb25hbAorQEAgLTMxLDEwICszMyw4IEBACisgIyAgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTCisgIyAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgCistIyEvYmluL3NoCistCistcm0gbG9nc19tb25vLnR4dAorLXJtIGxv
Z3Nfc3RlcmVvLnR4dAorK3JtIC1mIGxvZ3NfbW9uby50eHQgbG9nc19tb25vMi50eHQKKytybSAt
ZiBsb2dzX3N0ZXJlby50eHQgbG9nc19zdGVyZW8yLnR4dAorIAorIGlmIFsgIiQjIiAtbmUgIjMi
IF07IHRoZW4KKyAgICAgZWNobyAidXNhZ2U6IHJ1bl92ZWN0b3JzLnNoIDxleGVjIHBhdGg+IDx2
ZWN0b3IgcGF0aD4gPHJhdGU+IgorQEAgLTQ1LDE4ICs0NSwyMyBAQCBDTURfUEFUSD0kMQorIFZF
Q1RPUl9QQVRIPSQyCisgUkFURT0kMworIAorLU9QVVNfREVNTz0kQ01EX1BBVEgvb3B1c19kZW1v
CistT1BVU19DT01QQVJFPSRDTURfUEFUSC9vcHVzX2NvbXBhcmUKKys6ICR7T1BVU19ERU1POj0k
Q01EX1BBVEgvb3B1c19kZW1vfQorKzogJHtPUFVTX0NPTVBBUkU6PSRDTURfUEFUSC9vcHVzX2Nv
bXBhcmV9CisgCisgaWYgWyAtZCAkVkVDVE9SX1BBVEggXTsgdGhlbgorICAgICBlY2hvIFRlc3Qg
dmVjdG9ycyBmb3VuZCBpbiAkVkVDVE9SX1BBVEgKKyBlbHNlCisgICAgIGVjaG8gTm8gdGVzdCB2
ZWN0b3JzIGZvdW5kCistICAgICNEb24ndCBtYWtlIHRoZSB0ZXN0IGZhaWwgaGVyZSBiZWNhdXNl
IHRoZSB0ZXN0IHZlY3RvcnMgd2lsbCBiZQorLSAgICAjZGlzdHJpYnV0ZWQgc2VwYXJhdGVseQor
KyAgICAjRG9uJ3QgbWFrZSB0aGUgdGVzdCBmYWlsIGhlcmUgYmVjYXVzZSB0aGUgdGVzdCB2ZWN0
b3JzCisrICAgICN3aWxsIGJlIGRpc3RyaWJ1dGVkIHNlcGFyYXRlbHkKKyAgICAgZXhpdCAwCisg
ZmkKKyAKKytpZiBbICEgLXggJE9QVVNfQ09NUEFSRSBdOyB0aGVuCisrICAgIGVjaG8gRVJST1I6
IENvbXBhcmUgcHJvZ3JhbSBub3QgZm91bmQ6ICRPUFVTX0NPTVBBUkUKKysgICAgZXhpdCAxCisr
ZmkKKysKKyBpZiBbIC14ICRPUFVTX0RFTU8gXTsgdGhlbgorICAgICBlY2hvIERlY29kaW5nIHdp
dGggJE9QVVNfREVNTworIGVsc2UKK0BAIC04Miw5ICs4NywxMSBAQCBkbworICAgICAgICAgZWNo
byBFUlJPUjogZGVjb2RpbmcgZmFpbGVkCisgICAgICAgICBleGl0IDEKKyAgICAgZmkKKy0gICAg
JE9QVVNfQ09NUEFSRSAtciAkUkFURSAkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciRmaWxlLmRlYyB0
bXAub3V0ID4+IGxvZ3NfbW9uby50eHQgMj4mMQorKyAgICAkT1BVU19DT01QQVJFIC1yICRSQVRF
ICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJHtmaWxlfS5kZWMgdG1wLm91dCA+PiBsb2dzX21vbm8u
dHh0IDI+JjEKKyAgICAgZmxvYXRfcmV0PSQ/CistICAgIGlmIFsgIiRmbG9hdF9yZXQiIC1lcSAi
MCIgXTsgdGhlbgorKyAgICAkT1BVU19DT01QQVJFIC1yICRSQVRFICRWRUNUT1JfUEFUSC90ZXN0
dmVjdG9yJHtmaWxlfW0uZGVjIHRtcC5vdXQgPj4gbG9nc19tb25vMi50eHQgMj4mMQorKyAgICBm
bG9hdF9yZXQyPSQ/CisrICAgIGlmIFsgIiRmbG9hdF9yZXQiIC1lcSAiMCIgXSB8fCBbICIkZmxv
YXRfcmV0MiIgLWVxICIwIiBdOyB0aGVuCisgICAgICAgICBlY2hvIG91dHB1dCBtYXRjaGVzIHJl
ZmVyZW5jZQorICAgICBlbHNlCisgICAgICAgICBlY2hvIEVSUk9SOiBvdXRwdXQgZG9lcyBub3Qg
bWF0Y2ggcmVmZXJlbmNlCitAQCAtMTExLDkgKzExOCwxMSBAQCBkbworICAgICAgICAgZWNobyBF
UlJPUjogZGVjb2RpbmcgZmFpbGVkCisgICAgICAgICBleGl0IDEKKyAgICAgZmkKKy0gICAgJE9Q
VVNfQ09NUEFSRSAtcyAtciAkUkFURSAkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciRmaWxlLmRlYyB0
bXAub3V0ID4+IGxvZ3Nfc3RlcmVvLnR4dCAyPiYxCisrICAgICRPUFVTX0NPTVBBUkUgLXMgLXIg
JFJBVEUgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3Ike2ZpbGV9LmRlYyB0bXAub3V0ID4+IGxvZ3Nf
c3RlcmVvLnR4dCAyPiYxCisgICAgIGZsb2F0X3JldD0kPworLSAgICBpZiBbICIkZmxvYXRfcmV0
IiAtZXEgIjAiIF07IHRoZW4KKysgICAgJE9QVVNfQ09NUEFSRSAtcyAtciAkUkFURSAkVkVDVE9S
X1BBVEgvdGVzdHZlY3RvciR7ZmlsZX1tLmRlYyB0bXAub3V0ID4+IGxvZ3Nfc3RlcmVvMi50eHQg
Mj4mMQorKyAgICBmbG9hdF9yZXQyPSQ/CisrICAgIGlmIFsgIiRmbG9hdF9yZXQiIC1lcSAiMCIg
XSB8fCBbICIkZmxvYXRfcmV0MiIgLWVxICIwIiBdOyB0aGVuCisgICAgICAgICBlY2hvIG91dHB1
dCBtYXRjaGVzIHJlZmVyZW5jZQorICAgICBlbHNlCisgICAgICAgICBlY2hvIEVSUk9SOiBvdXRw
dXQgZG9lcyBub3QgbWF0Y2ggcmVmZXJlbmNlCitAQCAtMTI1LDUgKzEzNCwxMCBAQCBkb25lCisg
CisgCisgZWNobyBBbGwgdGVzdHMgaGF2ZSBwYXNzZWQgc3VjY2Vzc2Z1bGx5CistZ3JlcCBxdWFs
aXR5IGxvZ3NfbW9uby50eHQgfCBhd2sgJ3tzdW0rPSQ0fUVORHtwcmludCAiQXZlcmFnZSBtb25v
IHF1YWxpdHkgaXMiLCBzdW0vTlIsICIlIn0nCistZ3JlcCBxdWFsaXR5IGxvZ3Nfc3RlcmVvLnR4
dCB8IGF3ayAne3N1bSs9JDR9RU5Ee3ByaW50ICJBdmVyYWdlIHN0ZXJlbyBxdWFsaXR5IGlzIiwg
c3VtL05SLCAiJSJ9JworK21vbm8xPWBncmVwIHF1YWxpdHkgbG9nc19tb25vLnR4dCB8IGF3ayAn
e3N1bSs9JDR9RU5Ee2lmIChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNlIHN1bSA9IDA7IHByaW50
IHN1bX0nYAorK21vbm8yPWBncmVwIHF1YWxpdHkgbG9nc19tb25vMi50eHQgfCBhd2sgJ3tzdW0r
PSQ0fUVORHtpZiAoTlIgPT0gMTIpIHN1bSAvPSAxMjsgZWxzZSBzdW0gPSAwOyBwcmludCBzdW19
J2AKKytlY2hvICRtb25vMSAkbW9ubzIgfCBhd2sgJ3tpZiAoJDIgPiAkMSkgJDEgPSAkMjsgcHJp
bnQgIkF2ZXJhZ2UgbW9ubyBxdWFsaXR5IGlzIiwgJDEsICIlIn0nCisrCisrc3RlcmVvMT1gZ3Jl
cCBxdWFsaXR5IGxvZ3Nfc3RlcmVvLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee2lmIChOUiA9PSAx
Mikgc3VtIC89IDEyOyBlbHNlIHN1bSA9IDA7IHByaW50IHN1bX0nYAorK3N0ZXJlbzI9YGdyZXAg
cXVhbGl0eSBsb2dzX3N0ZXJlbzIudHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7aWYgKE5SID09IDEy
KSBzdW0gLz0gMTI7IGVsc2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdgCisrZWNobyAkc3RlcmVvMSAk
c3RlcmVvMiB8IGF3ayAne2lmICgkMiA+ICQxKSAkMSA9ICQyOyBwcmludCAiQXZlcmFnZSBzdGVy
ZW8gcXVhbGl0eSBpcyIsICQxLCAiJSJ9JwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvcmVsZWFzZS50eHQgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Rv
Yy9yZWxlYXNlLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZDNmZmEyMzkwMWMwNGQyZmI5ODg2ZjUyZDRjYjc0
Y2E0MjdiNmQxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvcmVsZWFzZS50eHQKQEAgLTAsMCArMSw0
MyBAQAorPSBSZWxlYXNlIGNoZWNrbGlzdCA9CisKKz09IFNvdXJjZSByZWxlYXNlID09CisKKy0g
Q2hlY2sgZm9yIHVuY29tbWl0dGVkIGNoYW5nZXMgdG8gbWFzdGVyLgorLSBVcGRhdGUgT1BVU19M
VF8qIEFQSSB2ZXJzaW9uaW5nIGluIGNvbmZpZ3VyZS5hYy4KKy0gVGFnIHRoZSByZWxlYXNlIGNv
bW1pdCB3aXRoICdnaXQgdGFnIC1zIHZOLk0nLgorIC0gSW5jbHVkZSByZWxlYXNlIG5vdGVzIGlu
IHRoZSB0YWcgYW5ub3RhdGlvbi4KKy0gVmVyaWZ5ICdtYWtlIGRpc3RjaGVjaycgcHJvZHVjZXMg
YSB0YXJiYWxsIHdpdGgKKyAgdGhlIGRlc2lyZWQgbmFtZS4KKy0gUHVzaCB0YWcgdG8gcHVibGlj
IHJlcG8uCistIFVwbG9hZCBzb3VyY2UgcGFja2FnZSAnb3B1cy0ke3ZlcnNpb259LnRhci5neicK
KyAtIEFkZCB0byBodHRwczovL3N2bi54aXBoLm9yZy9yZWxlYXNlcy9vcHVzLworIC0gVXBkYXRl
IGNoZWNrc3VtIGZpbGVzCisgLSBzdm4gY29tbWl0CisgLSBDb3B5IHRvIGFyY2hpdmUubW96aWxs
YS5vcmcvcHViL29wdXMvCisgLSBVcGRhdGUgY2hlY2tzdW0gZmlsZXMgdGhlcmUgYXMgd2VsbC4K
Ky0gQWRkIHJlbGVhc2Ugbm90ZXMgdG8gaHR0cHM6Ly9naXQueGlwaC5vcmcvb3B1cy13ZWJzaXRl
LmdpdAorLSBVcGRhdGUgbGlua3MgYW5kIGNoZWNrc3VtcyBvbiB0aGUgZG93bmxvYWRzIHBhZ2Uu
CistIEFkZCBhIGNvcHkgb2YgdGhlIGRvY3VtZW50YXRpb24gdG8gPGh0dHBzOi8vd3d3Lm9wdXMt
Y29kZWMub3JnL2RvY3MvPgorICBhbmQgdXBkYXRlIHRoZSBsaW5rcy4KKy0gVXBkYXRlIC90b3Bp
YyBpbiAjb3B1cyBJUkMgY2hhbm5lbC4KKworUmVsZWFzZXMgYXJlIGNvbW1pdGVkIHRvIGh0dHBz
Oi8vc3ZuLnhpcGgub3JnL3JlbGVhc2VzL29wdXMvCit3aGljaCBwcm9wYWdhdGVzIHRvIGRvd25s
b2Fkcy54aXBoLm9yZywgYW5kIGNvcGllZCBtYW51YWxseQordG8gaHR0cHM6Ly9hcmNoaXZlLm1v
emlsbGEub3JnL3B1Yi9vcHVzLworCitXZWJzaXRlIHVwZGF0ZXMgYXJlIGNvbW1pdHRlZCB0byBo
dHRwczovL2dpdC54aXBoLm9yZy9vcHVzLXdlYnNpdGUuZ2l0Cit3aGljaCBwcm9wYWdhdGVzIHRv
IGh0dHBzOi8vb3B1cy1jb2RlYy5vcmcvCisKKz09IEJpbmFyeSByZWxlYXNlID09CisKK1dlIHVz
dWFsbHkgYnVpbGQgb3B1cy10b29scyBiaW5hcmllcyBmb3IgTWFjT1MgYW5kIFdpbmRvd3MuCisK
K0JpbmFyeSByZWxlYXNlcyBhcmUgY29waWVkIG1hbnVhbGx5IHRvCitodHRwczovL2FyY2hpdmUu
bW96aWxsYS5vcmcvcHViL29wdXMvd2luMzIvCisKK0ZvciBNYWMsIHN1Ym1pdCBhIHB1bGwgcmVx
dWVzdCB0byBob21lYnJldy4KKworPT0gV2Vic2l0ZSB1cGRhdGVzID09CisKK0ZvciBtYWpvciBy
ZWxlYXNlcywgcmVjcmVhdGUgdGhlIGZpbGVzIG9uIGh0dHBzOi8vb3B1cy1jb2RlYy5vcmcvZXhh
bXBsZXMvCit3aXRoIHRoZSBuZXh0IGVuY29kZXIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUvb3B1c19k
ZWZpbmVzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2luY2x1ZGUvb3B1c19kZWZpbmVzLmgKaW5kZXggMzE1NDEyZGQxZDIzODNjZjkw
MDk2OTBkM2FhMTAyYWFhMzBhYTgxMy4uMzNjNWFjZGIzMzkzNTAxYzlkZDYyODk3OGM3OGZkMjI2
NDU5ZGM1NSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfZGVmaW5lcy5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvaW5jbHVkZS9v
cHVzX2RlZmluZXMuaApAQCAtMTY1LDggKzE2NSw5IEBAIGV4dGVybiAiQyIgewogI2RlZmluZSBP
UFVTX0dFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT05fUkVRVUVTVCA0MDQxCiAjZGVmaW5lIE9QVVNf
U0VUX1BSRURJQ1RJT05fRElTQUJMRURfUkVRVUVTVCA0MDQyCiAjZGVmaW5lIE9QVVNfR0VUX1BS
RURJQ1RJT05fRElTQUJMRURfUkVRVUVTVCA0MDQzCi0KIC8qIERvbid0IHVzZSA0MDQ1LCBpdCdz
IGFscmVhZHkgdGFrZW4gYnkgT1BVU19HRVRfR0FJTl9SRVFVRVNUICovCisjZGVmaW5lIE9QVVNf
U0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUIDQwNDYKKyNkZWZpbmUgT1BVU19H
RVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1QgNDA0NwogCiAvKiBNYWNyb3MgdG8g
dHJpZ2dlciBjb21waWxhdGlvbiBlcnJvcnMgd2hlbiB0aGUgd3JvbmcgdHlwZXMgYXJlIHByb3Zp
ZGVkIHRvIGEgQ1RMICovCiAjZGVmaW5lIF9fb3B1c19jaGVja19pbnQoeCkgKCgodm9pZCkoKHgp
ID09IChvcHVzX2ludDMyKTApKSwgKG9wdXNfaW50MzIpKHgpKQpAQCAtMjA4LDYgKzIwOSw5IEBA
IGV4dGVybiAiQyIgewogI2RlZmluZSBPUFVTX0ZSQU1FU0laRV8yMF9NUyAgICAgICAgICAgICAg
ICAgNTAwNCAvKio8IFVzZSAyMCBtcyBmcmFtZXMgKi8KICNkZWZpbmUgT1BVU19GUkFNRVNJWkVf
NDBfTVMgICAgICAgICAgICAgICAgIDUwMDUgLyoqPCBVc2UgNDAgbXMgZnJhbWVzICovCiAjZGVm
aW5lIE9QVVNfRlJBTUVTSVpFXzYwX01TICAgICAgICAgICAgICAgICA1MDA2IC8qKjwgVXNlIDYw
IG1zIGZyYW1lcyAqLworI2RlZmluZSBPUFVTX0ZSQU1FU0laRV84MF9NUyAgICAgICAgICAgICAg
ICAgNTAwNyAvKio8IFVzZSA4MCBtcyBmcmFtZXMgKi8KKyNkZWZpbmUgT1BVU19GUkFNRVNJWkVf
MTAwX01TICAgICAgICAgICAgICAgIDUwMDggLyoqPCBVc2UgMTAwIG1zIGZyYW1lcyAqLworI2Rl
ZmluZSBPUFVTX0ZSQU1FU0laRV8xMjBfTVMgICAgICAgICAgICAgICAgNTAwOSAvKio8IFVzZSAx
MjAgbXMgZnJhbWVzICovCiAKIC8qKkB9Ki8KIApAQCAtNTY2LDcgKzU3MCw5IEBAIGV4dGVybiAi
QyIgewogICAqIDxkdD5PUFVTX0ZSQU1FU0laRV8yMF9NUzwvZHQ+PGRkPlVzZSAyMCBtcyBmcmFt
ZXMuPC9kZD4KICAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfNDBfTVM8L2R0PjxkZD5Vc2UgNDAgbXMg
ZnJhbWVzLjwvZGQ+CiAgICogPGR0Pk9QVVNfRlJBTUVTSVpFXzYwX01TPC9kdD48ZGQ+VXNlIDYw
IG1zIGZyYW1lcy48L2RkPgotICAqIDxkdD5PUFVTX0ZSQU1FU0laRV9WQVJJQUJMRTwvZHQ+PGRk
Pk9wdGltaXplIHRoZSBmcmFtZSBzaXplIGR5bmFtaWNhbGx5LjwvZGQ+CisgICogPGR0Pk9QVVNf
RlJBTUVTSVpFXzgwX01TPC9kdD48ZGQ+VXNlIDgwIG1zIGZyYW1lcy48L2RkPgorICAqIDxkdD5P
UFVTX0ZSQU1FU0laRV8xMDBfTVM8L2R0PjxkZD5Vc2UgMTAwIG1zIGZyYW1lcy48L2RkPgorICAq
IDxkdD5PUFVTX0ZSQU1FU0laRV8xMjBfTVM8L2R0PjxkZD5Vc2UgMTIwIG1zIGZyYW1lcy48L2Rk
PgogICAqIDwvZGw+CiAgICogQGhpZGVpbml0aWFsaXplciAqLwogI2RlZmluZSBPUFVTX1NFVF9F
WFBFUlRfRlJBTUVfRFVSQVRJT04oeCkgT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OX1JF
UVVFU1QsIF9fb3B1c19jaGVja19pbnQoeCkKQEAgLTU4MSw3ICs1ODcsOSBAQCBleHRlcm4gIkMi
IHsKICAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfMjBfTVM8L2R0PjxkZD5Vc2UgMjAgbXMgZnJhbWVz
LjwvZGQ+CiAgICogPGR0Pk9QVVNfRlJBTUVTSVpFXzQwX01TPC9kdD48ZGQ+VXNlIDQwIG1zIGZy
YW1lcy48L2RkPgogICAqIDxkdD5PUFVTX0ZSQU1FU0laRV82MF9NUzwvZHQ+PGRkPlVzZSA2MCBt
cyBmcmFtZXMuPC9kZD4KLSAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfVkFSSUFCTEU8L2R0PjxkZD5P
cHRpbWl6ZSB0aGUgZnJhbWUgc2l6ZSBkeW5hbWljYWxseS48L2RkPgorICAqIDxkdD5PUFVTX0ZS
QU1FU0laRV84MF9NUzwvZHQ+PGRkPlVzZSA4MCBtcyBmcmFtZXMuPC9kZD4KKyAgKiA8ZHQ+T1BV
U19GUkFNRVNJWkVfMTAwX01TPC9kdD48ZGQ+VXNlIDEwMCBtcyBmcmFtZXMuPC9kZD4KKyAgKiA8
ZHQ+T1BVU19GUkFNRVNJWkVfMTIwX01TPC9kdD48ZGQ+VXNlIDEyMCBtcyBmcmFtZXMuPC9kZD4K
ICAgKiA8L2RsPgogICAqIEBoaWRlaW5pdGlhbGl6ZXIgKi8KICNkZWZpbmUgT1BVU19HRVRfRVhQ
RVJUX0ZSQU1FX0RVUkFUSU9OKHgpIE9QVVNfR0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTl9SRVFV
RVNULCBfX29wdXNfY2hlY2tfaW50X3B0cih4KQpAQCAtNjgxLDYgKzY4OSwzMCBAQCBleHRlcm4g
IkMiIHsKICAgKi8KICNkZWZpbmUgT1BVU19HRVRfU0FNUExFX1JBVEUoeCkgT1BVU19HRVRfU0FN
UExFX1JBVEVfUkVRVUVTVCwgX19vcHVzX2NoZWNrX2ludF9wdHIoeCkKIAorLyoqIElmIHNldCB0
byAxLCBkaXNhYmxlcyB0aGUgdXNlIG9mIHBoYXNlIGludmVyc2lvbiBmb3IgaW50ZW5zaXR5IHN0
ZXJlbywKKyAgKiBpbXByb3ZpbmcgdGhlIHF1YWxpdHkgb2YgbW9ubyBkb3dubWl4ZXMsIGJ1dCBz
bGlnaHRseSByZWR1Y2luZyBub3JtYWwKKyAgKiBzdGVyZW8gcXVhbGl0eS4gRGlzYWJsaW5nIHBo
YXNlIGludmVyc2lvbiBpbiB0aGUgZGVjb2RlciBkb2VzIG5vdCBjb21wbHkKKyAgKiB3aXRoIFJG
QyA2NzE2LCBhbHRob3VnaCBpdCBkb2VzIG5vdCBjYXVzZSBhbnkgaW50ZXJvcGVyYWJpbGl0eSBp
c3N1ZSBhbmQKKyAgKiBpcyBleHBlY3RlZCB0byBiZWNvbWUgcGFydCBvZiB0aGUgT3B1cyBzdGFu
ZGFyZCBvbmNlIFJGQyA2NzE2IGlzIHVwZGF0ZWQKKyAgKiBieSBkcmFmdC1pZXRmLWNvZGVjLW9w
dXMtdXBkYXRlLgorICAqIEBzZWUgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVECisg
ICogQHBhcmFtW2luXSB4IDx0dD5vcHVzX2ludDMyPC90dD46IEFsbG93ZWQgdmFsdWVzOgorICAq
IDxkbD4KKyAgKiA8ZHQ+MDwvZHQ+PGRkPkVuYWJsZSBwaGFzZSBpbnZlcnNpb24gKGRlZmF1bHQp
LjwvZGQ+CisgICogPGR0PjE8L2R0PjxkZD5EaXNhYmxlIHBoYXNlIGludmVyc2lvbi48L2RkPgor
ICAqIDwvZGw+CisgICogQGhpZGVpbml0aWFsaXplciAqLworI2RlZmluZSBPUFVTX1NFVF9QSEFT
RV9JTlZFUlNJT05fRElTQUJMRUQoeCkgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVE
X1JFUVVFU1QsIF9fb3B1c19jaGVja19pbnQoeCkKKy8qKiBHZXRzIHRoZSBlbmNvZGVyJ3MgY29u
ZmlndXJlZCBwaGFzZSBpbnZlcnNpb24gc3RhdHVzLgorICAqIEBzZWUgT1BVU19TRVRfUEhBU0Vf
SU5WRVJTSU9OX0RJU0FCTEVECisgICogQHBhcmFtW291dF0geCA8dHQ+b3B1c19pbnQzMiAqPC90
dD46IFJldHVybnMgb25lIG9mIHRoZSBmb2xsb3dpbmcgdmFsdWVzOgorICAqIDxkbD4KKyAgKiA8
ZHQ+MDwvZHQ+PGRkPlN0ZXJlbyBwaGFzZSBpbnZlcnNpb24gZW5hYmxlZCAoZGVmYXVsdCkuPC9k
ZD4KKyAgKiA8ZHQ+MTwvZHQ+PGRkPlN0ZXJlbyBwaGFzZSBpbnZlcnNpb24gZGlzYWJsZWQuPC9k
ZD4KKyAgKiA8L2RsPgorICAqIEBoaWRlaW5pdGlhbGl6ZXIgKi8KKyNkZWZpbmUgT1BVU19HRVRf
UEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKHgpIE9QVVNfR0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNB
QkxFRF9SRVFVRVNULCBfX29wdXNfY2hlY2tfaW50X3B0cih4KQorCiAvKipAfSovCiAKIC8qKiBA
ZGVmZ3JvdXAgb3B1c19kZWNvZGVyY3RscyBEZWNvZGVyIHJlbGF0ZWQgQ1RMcwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9pbmNsdWRlL29wdXNfbXVsdGlzdHJlYW0uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvaW5jbHVkZS9vcHVzX211bHRpc3RyZWFtLmgK
aW5kZXggMzYyMmUwMDlmYjUzMDUyZGRiMTM3NWNmMzcwZWI4NWViMDI5NzBlNy4uYmFiY2VlNjkw
NWJmOWY3MGQ5MjJlYjkwM2QyOGE5MTUxZjA1MzUwNSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNf
bXVsdGlzdHJlYW0uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUvb3B1c19tdWx0aXN0cmVhbS5oCkBAIC0yNzMsNyAr
MjczLDcgQEAgT1BVU19FWFBPUlQgT1BVU19XQVJOX1VOVVNFRF9SRVNVTFQgT3B1c01TRW5jb2Rl
ciAqb3B1c19tdWx0aXN0cmVhbV9zdXJyb3VuZF9lbmMKICAgICAgIHVuc2lnbmVkIGNoYXIgKm1h
cHBpbmcsCiAgICAgICBpbnQgYXBwbGljYXRpb24sCiAgICAgICBpbnQgKmVycm9yCi0pIE9QVVNf
QVJHX05PTk5VTEwoNSk7CispIE9QVVNfQVJHX05PTk5VTEwoNCkgT1BVU19BUkdfTk9OTlVMTCg1
KSBPUFVTX0FSR19OT05OVUxMKDYpOwogCiAvKiogSW5pdGlhbGl6ZSBhIHByZXZpb3VzbHkgYWxs
b2NhdGVkIG11bHRpc3RyZWFtIGVuY29kZXIgc3RhdGUuCiAgICogVGhlIG1lbW9yeSBwb2ludGVk
IHRvIGJ5IFxhIHN0IG11c3QgYmUgYXQgbGVhc3QgdGhlIHNpemUgcmV0dXJuZWQgYnkKQEAgLTM0
Miw3ICszNDIsNyBAQCBPUFVTX0VYUE9SVCBpbnQgb3B1c19tdWx0aXN0cmVhbV9zdXJyb3VuZF9l
bmNvZGVyX2luaXQoCiAgICAgICBpbnQgKmNvdXBsZWRfc3RyZWFtcywKICAgICAgIHVuc2lnbmVk
IGNoYXIgKm1hcHBpbmcsCiAgICAgICBpbnQgYXBwbGljYXRpb24KLSkgT1BVU19BUkdfTk9OTlVM
TCgxKSBPUFVTX0FSR19OT05OVUxMKDYpOworKSBPUFVTX0FSR19OT05OVUxMKDEpIE9QVVNfQVJH
X05PTk5VTEwoNSkgT1BVU19BUkdfTk9OTlVMTCg2KSBPUFVTX0FSR19OT05OVUxMKDcpOwogCiAv
KiogRW5jb2RlcyBhIG11bHRpc3RyZWFtIE9wdXMgZnJhbWUuCiAgICogQHBhcmFtIHN0IDx0dD5P
cHVzTVNFbmNvZGVyKjwvdHQ+OiBNdWx0aXN0cmVhbSBlbmNvZGVyIHN0YXRlLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9pbmNsdWRlL29wdXNfdHlwZXMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvaW5jbHVkZS9vcHVzX3R5cGVzLmgKaW5kZXggYjI4ZTAz
YWVhMjAyZDk3ZmU3MWNmNThhZmM5MGRhYzIwODQxNDRhOS4uN2NmNjc1NTgwZmZiMGFkOWJhN2Iw
NDBhNWMwM2ViMjgyODkxMDQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfdHlwZXMuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2luY2x1ZGUvb3B1c190eXBlcy5oCkBAIC0zMywxNCArMzMsMjkgQEAKICNpZm5kZWYgT1BVU19U
WVBFU19ICiAjZGVmaW5lIE9QVVNfVFlQRVNfSAogCisjZGVmaW5lIG9wdXNfaW50ICAgICAgICAg
aW50ICAgICAgICAgICAgICAgICAgICAgLyogdXNlZCBmb3IgY291bnRlcnMgZXRjOyBhdCBsZWFz
dCAxNiBiaXRzICovCisjZGVmaW5lIG9wdXNfaW50NjQgICAgICAgbG9uZyBsb25nCisjZGVmaW5l
IG9wdXNfaW50OCAgICAgICAgc2lnbmVkIGNoYXIKKworI2RlZmluZSBvcHVzX3VpbnQgICAgICAg
IHVuc2lnbmVkIGludCAgICAgICAgICAgIC8qIHVzZWQgZm9yIGNvdW50ZXJzIGV0YzsgYXQgbGVh
c3QgMTYgYml0cyAqLworI2RlZmluZSBvcHVzX3VpbnQ2NCAgICAgIHVuc2lnbmVkIGxvbmcgbG9u
ZworI2RlZmluZSBvcHVzX3VpbnQ4ICAgICAgIHVuc2lnbmVkIGNoYXIKKwogLyogVXNlIHRoZSBy
ZWFsIHN0ZGludC5oIGlmIGl0J3MgdGhlcmUgKHRha2VuIGZyb20gUGF1bCBIc2llaCdzIHBzdGRp
bnQuaCkgKi8KLSNpZiAoZGVmaW5lZChfX1NURENfXykgJiYgX19TVERDX18gJiYgX19TVERDX1ZF
UlNJT05fXyA+PSAxOTk5MDFMKSB8fCAoZGVmaW5lZChfX0dOVUNfXykgJiYgKGRlZmluZWQoX1NU
RElOVF9IKSB8fCBkZWZpbmVkKF9TVERJTlRfSF8pKSB8fCBkZWZpbmVkIChIQVZFX1NURElOVF9I
KSkKKyNpZiAoZGVmaW5lZChfX1NURENfXykgJiYgX19TVERDX18gJiYgZGVmaW5lZChfX1NURENf
VkVSU0lPTl9fKSAmJiBfX1NURENfVkVSU0lPTl9fID49IDE5OTkwMUwpIHx8IChkZWZpbmVkKF9f
R05VQ19fKSAmJiAoZGVmaW5lZChfU1RESU5UX0gpIHx8IGRlZmluZWQoX1NURElOVF9IXykpIHx8
IGRlZmluZWQgKEhBVkVfU1RESU5UX0gpKQogI2luY2x1ZGUgPHN0ZGludC5oPgotCisjICB1bmRl
ZiBvcHVzX2ludDY0CisjICB1bmRlZiBvcHVzX2ludDgKKyMgIHVuZGVmIG9wdXNfdWludDY0Cisj
ICB1bmRlZiBvcHVzX3VpbnQ4CisgICB0eXBlZGVmIGludDhfdCBvcHVzX2ludDg7CisgICB0eXBl
ZGVmIHVpbnQ4X3Qgb3B1c191aW50ODsKICAgIHR5cGVkZWYgaW50MTZfdCBvcHVzX2ludDE2Owog
ICAgdHlwZWRlZiB1aW50MTZfdCBvcHVzX3VpbnQxNjsKICAgIHR5cGVkZWYgaW50MzJfdCBvcHVz
X2ludDMyOwogICAgdHlwZWRlZiB1aW50MzJfdCBvcHVzX3VpbnQzMjsKKyAgIHR5cGVkZWYgaW50
NjRfdCBvcHVzX2ludDY0OworICAgdHlwZWRlZiB1aW50NjRfdCBvcHVzX3VpbnQ2NDsKICNlbGlm
IGRlZmluZWQoX1dJTjMyKQogCiAjICBpZiBkZWZpbmVkKF9fQ1lHV0lOX18pCkBAIC0xNDgsMTIg
KzE2Myw0IEBACiAKICNlbmRpZgogCi0jZGVmaW5lIG9wdXNfaW50ICAgICAgICAgaW50ICAgICAg
ICAgICAgICAgICAgICAgLyogdXNlZCBmb3IgY291bnRlcnMgZXRjOyBhdCBsZWFzdCAxNiBiaXRz
ICovCi0jZGVmaW5lIG9wdXNfaW50NjQgICAgICAgbG9uZyBsb25nCi0jZGVmaW5lIG9wdXNfaW50
OCAgICAgICAgc2lnbmVkIGNoYXIKLQotI2RlZmluZSBvcHVzX3VpbnQgICAgICAgIHVuc2lnbmVk
IGludCAgICAgICAgICAgIC8qIHVzZWQgZm9yIGNvdW50ZXJzIGV0YzsgYXQgbGVhc3QgMTYgYml0
cyAqLwotI2RlZmluZSBvcHVzX3VpbnQ2NCAgICAgIHVuc2lnbmVkIGxvbmcgbG9uZwotI2RlZmlu
ZSBvcHVzX3VpbnQ4ICAgICAgIHVuc2lnbmVkIGNoYXIKLQogI2VuZGlmICAvKiBPUFVTX1RZUEVT
X0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvcmVsZWFzZXMuc2hhMiBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvcmVsZWFzZXMuc2hhMgpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5iMWIzMmMwMDU1MThmZmQ0NGFkNTA1OTcyMjVmNzhkMzliNTU2ZWI5Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9yZWxlYXNlcy5zaGEyCkBAIC0wLDAgKzEsNjMgQEAKK2IyZjc1YzRhYzVhYjgzNzg0NWVi
MDI4NDEzZmFlMmEyODc1NGJmYjBhNmQ3NjQxNmUyYWYxNDQxZWY0NDc2NDkgIG9wdXMtMC45LjAu
dGFyLmd6Cis0ZTM3OWE5OGJhOTViYmJmZTkwODdlZjEwZmRkMDVjOGFjOTA2MGI2ZDY5NWY1ODdl
YTgyYTdiNDNhMGRmNGZlICBvcHVzLTAuOS4xMC50YXIuZ3oKK2IxY2FkNjg0NmE4ZjgxOWExNDEw
MDlmZTNmOGYxMGM5NDZlOGVmZjdlOWMyMzM5Y2Q1MTdiYjEzNmNjNTllYWUgIG9wdXMtMC45LjE0
LnRhci5negorMjA2MjIxYWZjNDdiODc0OTY1ODgwMTNiZDQ1MjNlMWU5ZjU1NjMzNmMwODEzZjQz
NzI3NzNmYzUzNmRkNDI5MyAgb3B1cy0wLjkuMS50YXIuZ3oKKzZlODVjMWI1N2UxZDdiN2RmZTI5
MjhiZjkyNTg2Yjk2YjczYTkwNjdlMDU0ZWRlNDViZDhlNmQyNGJkMzA1ODIgIG9wdXMtMC45LjIu
dGFyLmd6CitkOTE2ZTM0YzE4YTM5NmViN2RmZmM0N2FmNzU0ZjQ0MWFmNTJhMjkwYjc2MWUyMGRi
OWFlZGI2NTkyOGM2OTllICBvcHVzLTAuOS4zLnRhci5negorNTM4MDEwNjZmYTk3MzI5NzY4ZTdi
ODcxZmQxNDk1NzQwMjY5ZWM0NjgwMmUxYzkwNTFhYTdlNzhjNmVkZWU1YiAgb3B1cy0wLjkuNS50
YXIuZ3oKKzNiZmFlYjI1ZjRiNGE2MjVhMGJjOTk0ZDZmYzZmNjc3NmEwNTE5M2Y2MDA5OWUwYTk5
Zjc1MzBjNmIyNTYzMDkgIG9wdXMtMC45LjYudGFyLmd6CisxYjY5NzcyYzMxYzVjYmFhNDNkMWRm
YTViMWM0OTVmYzI5NzEyZThlMGZmNjlkNmY4YWQ0NjQ1OWU1YzY3MTVmICBvcHVzLTAuOS43LnRh
ci5negorNGFhMzBkMmUwNjUyZmZiNGE3YTIyY2M4YTI5YzRjZTc4MjY3NjI2ZjU2MGEyZDkyMTNi
MWQyZDRlNjE4Y2YzNiAgb3B1cy0wLjkuOC50YXIuZ3oKKzJmNjIzNTlmMDkxNTFmYTNiMjQyMDQw
ZGM5YjRjNWI2YmRhMTU1NTdjNWRhZWE1OWM4NDIwZjFhMmZmMzI4YjcgIG9wdXMtMC45LjkudGFy
Lmd6Cis0M2JjZWE1MWFmYTUzMWYzMmE2YTVmZGQ5Y2JhNGJkNDk2OTkzZTI2YTE0MTIxN2RiM2Nj
Y2NlNmNhYTdjZDc0ICBvcHVzLTEuMC4wLXJjLnRhci5negorOTI1MGZjYzc0NDcyZDQ1YzFlMTQ3
NDU1NDJlYzljOGQwOTk4MjUzOGFlZmVkNTY5NjI0OTU2MTRiZTNlMGQyZCAgb3B1cy0xLjAuMC50
YXIuZ3oKKzc2YmMwYTMxNTAyYTUxZGFlOWFiNzM3YjRkYjA0M2I5ZWNmY2QwYjU4NjFmMGJmZGE0
MWI2NjJiZDViOTIyMjcgIG9wdXMtMS4wLjEtcmMyLnRhci5negorM2RlOGQ2ODA5ZGFjMzg5NzFl
YmIzMDU1MzJkNGVhNTMyNTE5ZDNiZWQwODk4NWYyNWQ2YzU1N2Y5Y2U1ZThmZiAgb3B1cy0xLjAu
MS1yYzMudGFyLmd6Cis4MDQ0Mzk3YTYzNjVhMDcxMTdiMDhjYmU4Zjk4MThiZjdjOTM3NDY5MDg4
MDZiYTc0YTI5MTcxODdiYmRkYTVmICBvcHVzLTEuMC4xLXJjLnRhci5negorODBmYTVjM2NhZjJh
YzBmZDY4ZjhhMjJjY2UxNTY0ZmM0NmIzNjhjNzczYTE3NTU0ODg3ZDAwNjZmZTE4NDFlZiAgb3B1
cy0xLjAuMS50YXIuZ3oKK2RhNjE1ZWRiZWU1ZDAxOWMxODMzMDcxZDY5YTQ3ODJjMTlmMTc4Y2Y5
Y2ExNDAxMzc1MDM2ZWNlZjI1Y2Q3OGEgIG9wdXMtMS4wLjIudGFyLmd6CisxOTFhMDg5YzkyZGJj
NDAzZGU2OTgwNDYzZGQzNjA0YjY1YmViMTJkMjgzYzYwN2UyNDZjODA3NjM2M2NiNDljICBvcHVz
LTEuMC4zLnRhci5negorYThkNDBlZmU4N2Y2YzNlNzY3MjUzOTE0NTdkNDYyNzc4NzhjN2E4MTZh
ZTE2NDI4NDMyNjE0NjMxMzNmYTVjOCAgb3B1cy0xLjEtYWxwaGEudGFyLmd6CitlYzE3ODQyODdm
Mzg1YWVmOTk0YjY0NzM0YWFlY2FlMDQ4NjBlNjFhYTUwZmM2ZWVmNjY0M2ZhN2U0MGRkMTkzICBv
cHVzLTEuMS1iZXRhLnRhci5negorOGFhMTYzNjBmNTlhOTRkM2UzOGYzOGYyOGQyNDAzOWY3NjYz
MTc5NjgyY2JhZTgyYWE0MmYxZGQ5ZTUyZTZlZCAgb3B1cy0xLjEtcmMudGFyLmd6CitlYmM4N2Ew
ODZkNGZlNjc3YzVlNDJkNTY4ODhiMWZkMjVhZjg1OGU0MTc5ZWFlNGY4NjU2MjcwNDEwZGZmYWMz
ICBvcHVzLTEuMS1yYzIudGFyLmd6CitjYmZkMDljNThjYzEwYTRkM2ZjYjcyN2FkNWQ0NmQ3YmI1
NDlmODE4NWFjOTIyZWUyOGI0NTgxYjUyYTdiZWU5ICBvcHVzLTEuMS1yYzMudGFyLmd6CitiOTcy
NzAxNWE1OGFmZmNmM2RiNTI3MzIyYmY4YzRkMmZjZjM5ZjVmNmI4ZjE1ZGJjZWNhMjAyMDZjYmUx
ZDk1ICBvcHVzLTEuMS50YXIuZ3oKKzBjNjY4NjM5ZGNkMTZiMTQ3MDlmYzlkYzQ5ZTY2ODY2MDZm
NWEyNTZmMmVhYTFlYmFhMmYzOWE2NmY4NjI2Y2QgIG9wdXMtMS4xLjEtYmV0YS50YXIuZ3oKKzY2
ZjJhNTg3N2M4ODAzZGM5YTVhNDRiNGYzZDBiZGM4ZjA2YmQwNjYzMjQyMjJkMTQ0ZWIyNTU2MTJi
NjgxNTIgIG9wdXMtMS4xLjEtcmMudGFyLmd6Cis5Yjg0ZmY1NmJkNzcyMGQ1NTU0MTAzYzU1NzY2
NGVmYWMyYjhiMThhY2M0YmJjYzIzNGNiODgxYWI5YTMzNzFlICBvcHVzLTEuMS4xLnRhci5negor
MGUyOTAwNzhlMzEyMTFiYWE3YjU4ODZiY2M4YWI2YmMwNDhiOWZjODM4ODI1MzJkYTRhMWE0NWU1
OGU5MDdmZCAgb3B1cy0xLjEuMi50YXIuZ3oKKzU4YjZmZTgwMmU3ZTMwMTgyZTk1ZDBjZGU4OTBj
MGFjZTQwYjZmMTI1Y2ZmYzUwNjM1ZjBhZDJlZWY2OWI2MzMgIG9wdXMtMS4xLjMudGFyLmd6Cis5
MTIyYjZiMzgwMDgxZGQyNjY1MTg5Zjk3YmZkNzc3ZjA0ZjkyZGMzYWI2Njk4ZWVhMWRiYjI3YWQ1
OWQ4NjkyICBvcHVzLTEuMS40LnRhci5negorZWI4NDk4MWNhMGY0MGEzZTVkNWU1OGQyZTg1ODJj
YjJmZWUwNWEwMjI4MjVhNmRmZTE0ZDE0YjA0ZWI1NjNlNCAgb3B1cy0xLjEuNS50YXIuZ3oKKzY1
NGE5YmViYjczMjY2MjcxYTI4ZWRjZmZmNDMxZTRjZmQ5YmZjZGU3MWY0Mjg0OWEwY2RkNzNiZWNl
ODAzYTcgIG9wdXMtMS4yLWFscGhhLnRhci5negorYzBlOTA1MDcyNTljZjIxY2U3YjJjODJmYjlh
YzU1MzY3ZDg1NDNkYWU5MWNjM2Q0ZDJjNTlhZmQzN2Y0NDAyMyAgb3B1cy0xLjItYWxwaGEyLnRh
ci5negorMjkxZTk3OWE4YTJmYjY3OWVkMzVhNWRmZjVkNzYxYTlkOWE1ZTIyNTg2ZmQwNzkzNGVk
OTQ0NjFlMjYzNmM3YSAgb3B1cy0xLjItYmV0YS50YXIuZ3oKKzg1MzQzZmRhZWQ5NjUyOWQ5NGMx
ZTFmM2EyMTBmYTUxMjQwZDA0Y2E2MmZhMDFlOTdlZjAyZjg4MDIwYzJjZTkgIG9wdXMtMS4yLXJj
MS50YXIuZ3oKKzc3ZGI0NWE4N2I1MTU3OGZiYzQ5NTU1ZWYxYjEwOTI2MTc5ODYxZDg1NGViMjYx
MzIwN2RjNzlkOWVjMGE5YTkgIG9wdXMtMS4yLnRhci5negorY2ZhZmQzMzljY2Q5YzVlZjhkNmFi
MTVkN2UxYTQxMmMwNTRiZjRjYjRlY2JiYmNjNzhjMTJlZjJkZWY3MDczMiAgb3B1cy0xLjIuMS50
YXIuZ3oKKzk0YWM3OGNhNGY3NGM0ZTQzYmM5ZmU0ZWMxYWQwYWEzNmYzOGFiOTBmNDViMDcyN2M0
MGRkMWU5NjA5NmU3NjcgIG9wdXNfdGVzdHZlY3RvcnMtZHJhZnQxMS50YXIuZ3oKKzk0YWM3OGNh
NGY3NGM0ZTQzYmM5ZmU0ZWMxYWQwYWEzNmYzOGFiOTBmNDViMDcyN2M0MGRkMWU5NjA5NmU3Njcg
IG9wdXNfdGVzdHZlY3RvcnMudGFyLmd6Cis1ZDJiOTk3NTdiY2I2MjhiYWIyNjExZjNlZDI3YWY2
ZjM1Mjc2Y2UzYWJjOTZjMGVkNDM5OWQ2YzY0NjNkZGE1ICBvcHVzLXRvb2xzLTAuMS4yLnRhci5n
egorMDA4MzE3Mjk3ZDZjZTg0Zjg0OTkyYWJmOGNjOTQ4YTA0OGE0ZmExMzVlMWQxY2FmNDI5ZmFm
ZGU4OTY1YTc5MiAgb3B1cy10b29scy0wLjEuMy50YXIuZ3oKK2RlODA0ODVjNWFmYTFmZDgzYzBl
MTZhMGRkNDg2MDQ3MGM4NzI5OTdhN2RkMGE1OGU5OWIyZWU4YTkzZTUxNjggIG9wdXMtdG9vbHMt
MC4xLjQudGFyLmd6Cis3NjY3OGQwZWI3YTliM2Q3OTNiZDAyNDNmOWNlZDlhYjBlY2RhYjI2M2Y1
MjMyZWQ5NDBjOGY1Nzk1ZmIwNDA1ICBvcHVzLXRvb2xzLTAuMS41LnRhci5negorY2M4NmRiYzJh
NGQ3NmRhN2UxZWQ5YWZlZTg1NDQ4YzhmNzk4YzQ2NWE1NDEyMjMzZjE3ODc4MzIyMGYzYTJjMSAg
b3B1cy10b29scy0wLjEuNi50YXIuZ3oKK2UwZjA4ZDMwMTU1NWRmZmM0MTc2MDQyNjliNWE4NWQy
YmQxOTdmMjU5YzdkNmM5NTdmMzcwZmZkMzNkNmQ5Y2QgIG9wdXMtdG9vbHMtMC4xLjcudGFyLmd6
CitlNGUxODg1NzllYTFjNGU0ZDUwNjY0NjBkNGE3MjE0YTdlYWZlMzUzOWU5YTQ0NjZmZGM5OGFm
NDFiYTRhMmY2ICBvcHVzLXRvb2xzLTAuMS44LnRhci5negorYjE4NzNkZDc4YzdmYmM5OGNmNjVk
NmUxMGNmZGRiNWMyYzAzYjNhZjkzZjkyMjEzOWEyMTA0YmFlZGI0NjQzYSAgb3B1cy10b29scy0w
LjEuOS50YXIuZ3oKK2EyMzU3NTMyZDE5NDcxYjcwNjY2ZTBlMGVjMTdkNTE0MjQ2ZDhiM2NiMmVi
MTY4ZjY4YmIwZjZmZDM3MmIyOGMgIG9wdXMtdG9vbHMtMC4xLjEwLnRhci5negorYmQ2ZDE0ZTg4
OTdhMmY4MDA2NWVmMzRhNTE2YzcwZTc0ZjhlMDAwNjBhYmRiYzIzOGU3OWU1Zjk5YmNhM2U5NiAg
bGlib3B1c2VuYy0wLjEudGFyLmd6Cis4MDcxYjk2ODQ3NWMxYTE3ZjU0YjY4NDBkNmRlOWQ5ZWUy
MGY5MzBlODI3YjA0MDFhYmUzYzRjZjRmM2JmMzBhICBvcHVzZmlsZS0wLjEudGFyLmd6CitiNGE2
NzhiM2I2YzRhZGZiNmFmZjFmNjdlZjY1OGJlY2ZlMTQ2ZWE3YzdmZjIyOGU5OTU0Mzc2MjE3MTU1
N2Y5ICBvcHVzZmlsZS0wLjIudGFyLmd6Cis0MjQ4OTI3ZjJjNGUzMTZlYTViODRmYjAyYmQxMDBi
ZmVjOGZhNDYyNGE2OTEwZDc3ZjBhZjdmMGM2Y2I4YmFhICBvcHVzZmlsZS0wLjMudGFyLmd6Cis5
ODM2ZWExMTcwNmM0NGYzNmRlOTJjNGM5YjEyNDhlMDNhNGM1MjFlN2ZiMmNmZjE4YTBjYjRmOGIw
ZTc5MTQwICBvcHVzZmlsZS0wLjQudGFyLmd6CitmMTg3OTA2YjFiMzVmN2YwZDdkZTZhNzU5YjRh
YWI1MTJhOTI3OWQyM2FkYjM1ZDgwMDllN2UzM2JkNmE5MjJhICBvcHVzZmlsZS0wLjQuemlwCisy
Y2U1MmQwMDZhZWVlYzlmMTAyNjBkYmUzMDczYzQ2MzY5NTRhMWFiMTljODJiOGJhYWZlZmUwMTgw
YWE0YTM5ICBvcHVzZmlsZS0wLjUudGFyLmd6CitiOTQwZDYyYmViMTViNTk3NDc2NDU3NGI5ZjI2
NTQ4MWZlNWI2ZWUxNjkwMmZiNzA1NzI3NTQ2Y2FmOTU2MjYxICBvcHVzZmlsZS0wLjUuemlwCisy
NDI4NzE3YjM1NmUxMzlmMThlZDJmZGI1YWQ5OTBiNTY1NGEyMzg5MDdhMDA1ODIwMGIzOWM0NmE3
ZDAzZWE2ICBvcHVzZmlsZS0wLjYudGFyLmd6Cis3NTMzMzkyMjUxOTNkZjYwNTM3Mjk0NDg4OTAy
M2I5YjNjNTM3OGQ2NzJlODc4NGQ2OWZhMjQxY2Q0NjUyNzhjICBvcHVzZmlsZS0wLjYuemlwCis5
ZTJiZWQxM2JjNzI5MDU4NTkxYTBmMWNhYjI1MDVlOGNmZDhlN2FjNDYwYmYxMGE3OGJjYzNiMTI1
ZTdjMzAxICBvcHVzZmlsZS0wLjcudGFyLmd6CiszNDY5NjdkNzk4OWJiODNiMDU5NDk0ODNiNzZi
ZDBmNjlhMTJjNTliZDhiNDQ1N2U4NjQ5MDJiNTJiYjBhYzM0ICBvcHVzZmlsZS0wLjcuemlwCisy
YzIzMWVkM2NmYWExYjMxNzNmNTJkNzQwZTViYmQ3N2Q1MWI5ZGZlY2I4NzAxNGI0MDQ5MTdmYmE0
Yjg1NWE0ICBvcHVzZmlsZS0wLjgudGFyLmd6Cis4OWRmZjQzNDJjM2I3ODk1NzRjYmVhNWM1N2Yx
MWI5NmQ0ZWJlNGQyOGFiOTAyNDhjMTc4M2VhNTY5YjFlOWUzICBvcHVzZmlsZS0wLjguemlwCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvQTJOTFNGLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvQTJOTFNGLmMKaW5kZXggYjZlOWU1ZmZjY2Fh
MDU5OTVkZmRiZmU2MDAxNjY4NjVkODk5MDEzZS4uYjQ4NzY4NmZmOWM2ZDEyOWMwNjU2ZmIxMDk1
ZGU4YTI4OWZjNGRiYSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0EyTkxTRi5jCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9BMk5MU0Yu
YwpAQCAtNDAsNyArNDAsNyBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAogLyogTnVt
YmVyIG9mIGJpbmFyeSBkaXZpc2lvbnMsIHdoZW4gbm90IGluIGxvdyBjb21wbGV4aXR5IG1vZGUg
Ki8KICNkZWZpbmUgQklOX0RJVl9TVEVQU19BMk5MU0ZfRklYICAgICAgMyAvKiBtdXN0IGJlIG5v
IGhpZ2hlciB0aGFuIDE2IC0gbG9nMiggTFNGX0NPU19UQUJfU1pfRklYICkgKi8KLSNkZWZpbmUg
TUFYX0lURVJBVElPTlNfQTJOTFNGX0ZJWCAgICAzMAorI2RlZmluZSBNQVhfSVRFUkFUSU9OU19B
Mk5MU0ZfRklYICAgIDE2CiAKIC8qIEhlbHBlciBmdW5jdGlvbiBmb3IgQTJOTFNGKC4uKSAgICAg
ICAgICAgICAgICAgICAgKi8KIC8qIFRyYW5zZm9ybXMgcG9seW5vbWlhbHMgZnJvbSBjb3Mobipm
KSB0byBjb3MoZilebiAgKi8KQEAgLTEzMCw3ICsxMzAsNyBAQCB2b2lkIHNpbGtfQTJOTFNGKAog
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgRmlsdGVyIG9yZGVyIChtdXN0IGJlIGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KICkKIHsKLSAgICBvcHVzX2ludCAgICAgIGksIGssIG0sIGRkLCByb290X2l4LCBm
ZnJhYzsKKyAgICBvcHVzX2ludCAgIGksIGssIG0sIGRkLCByb290X2l4LCBmZnJhYzsKICAgICBv
cHVzX2ludDMyIHhsbywgeGhpLCB4bWlkOwogICAgIG9wdXNfaW50MzIgeWxvLCB5aGksIHltaWQs
IHRocjsKICAgICBvcHVzX2ludDMyIG5vbSwgZGVuOwpAQCAtMjM5LDEzICsyMzksMTMgQEAgdm9p
ZCBzaWxrX0EyTkxTRigKICAgICAgICAgICAgICAgICAgICAgLyogU2V0IE5MU0ZzIHRvIHdoaXRl
IHNwZWN0cnVtIGFuZCBleGl0ICovCiAgICAgICAgICAgICAgICAgICAgIE5MU0ZbIDAgXSA9IChv
cHVzX2ludDE2KXNpbGtfRElWMzJfMTYoIDEgPDwgMTUsIGQgKyAxICk7CiAgICAgICAgICAgICAg
ICAgICAgIGZvciggayA9IDE7IGsgPCBkOyBrKysgKSB7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICBOTFNGWyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1NNVUxCQiggayArIDEsIE5MU0ZbIDAgXSAp
OworICAgICAgICAgICAgICAgICAgICAgICAgTkxTRlsgayBdID0gKG9wdXNfaW50MTYpc2lsa19B
REQxNiggTkxTRlsgay0xIF0sIE5MU0ZbIDAgXSApOwogICAgICAgICAgICAgICAgICAgICB9CiAg
ICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICB9CiAKICAgICAgICAg
ICAgICAgICAvKiBFcnJvcjogQXBwbHkgcHJvZ3Jlc3NpdmVseSBtb3JlIGJhbmR3aWR0aCBleHBh
bnNpb24gYW5kIHJ1biBhZ2FpbiAqLwotICAgICAgICAgICAgICAgIHNpbGtfYndleHBhbmRlcl8z
MiggYV9RMTYsIGQsIDY1NTM2IC0gc2lsa19TTVVMQkIoIDEwICsgaSwgaSApICk7IC8qIDEwX1Ex
NiA9IDAuMDAwMTUqLworICAgICAgICAgICAgICAgIHNpbGtfYndleHBhbmRlcl8zMiggYV9RMTYs
IGQsIDY1NTM2IC0gc2lsa19MU0hJRlQoIDEsIGkgKSApOwogCiAgICAgICAgICAgICAgICAgc2ls
a19BMk5MU0ZfaW5pdCggYV9RMTYsIFAsIFEsIGRkICk7CiAgICAgICAgICAgICAgICAgcCA9IFA7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFBvaW50ZXIgdG8gcG9seW5vbWlhbCAqLwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL0FQSS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0FQSS5oCmluZGV4IDAxMzFhY2JiMDhmYjA3YThk
ZDBkMTU1MDI3NThkZWQ1YTFiYzdmYTYuLjRkOTBmZjlhYTNlY2QyYjE2ZGY0MDIwYjUxMGM4OGE3
MjViMTM2NDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9BUEkuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvQVBJLmgKQEAgLTgwLDcg
KzgwLDggQEAgb3B1c19pbnQgc2lsa19FbmNvZGUoICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBPICAgIFJldHVybnMgZXJyb3IgY28KICAgICBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgICAgICAgIG5TYW1wbGVzSW4sICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc2FtcGxl
cyBpbiBpbnB1dCB2ZWN0b3IgICAgICAgICAgICAgICAqLwogICAgIGVjX2VuYyAgICAgICAgICAg
ICAgICAgICAgICAgICAgKnBzUmFuZ2VFbmMsICAgICAgICAvKiBJL08gIENvbXByZXNzb3IgZGF0
YSBzdHJ1Y3R1cmUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAg
ICAgICAgICAgICAgICAgICAqbkJ5dGVzT3V0LCAgICAgICAgIC8qIEkvTyAgTnVtYmVyIG9mIGJ5
dGVzIGluIHBheWxvYWQgKGlucHV0OiBNYXggYnl0ZXMpICAgKi8KLSAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgICAgIHByZWZpbGxGbGFnICAgICAgICAgLyogSSAgICBGbGFnIHRvIGlu
ZGljYXRlIHByZWZpbGxpbmcgYnVmZmVycyBubyBjb2RpbmcgICAqLworICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgcHJlZmlsbEZsYWcsICAgICAgICAvKiBJICAgIEZsYWcgdG8g
aW5kaWNhdGUgcHJlZmlsbGluZyBidWZmZXJzIG5vIGNvZGluZyAgICovCisgICAgaW50ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBhY3Rpdml0eSAgICAgICAgICAgIC8qIEkgICAgRGVjaXNp
b24gb2YgT3B1cyB2b2ljZSBhY3Rpdml0eSBkZXRlY3RvciAgICAgICAgKi8KICk7CiAKIC8qKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0NO
Ry5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL0NORy5jCmluZGV4IDcwMWIzNmEzOGEzMTA1ZGZhNDhkY2JjNTRlODgxZTQ5YmUx
OTlmZjYuLmU2ZDliODYxZTk1ZTc0M2YxZDA4NTdjZTQ4YWVkZjNjZWJmYmYxZTQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9DTkcuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvQ05HLmMKQEAgLTEzOCwxMSArMTM4LDExIEBAIHZvaWQg
c2lsa19DTkcoCiAgICAgICAgICAgICBnYWluX1ExNiA9IHNpbGtfTFNISUZUMzIoIHNpbGtfU1FS
VF9BUFBST1goIGdhaW5fUTE2ICksIDggKTsKICAgICAgICAgfQogICAgICAgICBnYWluX1ExMCA9
IHNpbGtfUlNISUZUKCBnYWluX1ExNiwgNiApOwotICAgICAgICAKKwogICAgICAgICBzaWxrX0NO
R19leGMoIENOR19zaWdfUTE0ICsgTUFYX0xQQ19PUkRFUiwgcHNDTkctPkNOR19leGNfYnVmX1Ex
NCwgbGVuZ3RoLCAmcHNDTkctPnJhbmRfc2VlZCApOwogCiAgICAgICAgIC8qIENvbnZlcnQgQ05H
IE5MU0YgdG8gZmlsdGVyIHJlcHJlc2VudGF0aW9uICovCi0gICAgICAgIHNpbGtfTkxTRjJBKCBB
X1ExMiwgcHNDTkctPkNOR19zbXRoX05MU0ZfUTE1LCBwc0RlYy0+TFBDX29yZGVyICk7CisgICAg
ICAgIHNpbGtfTkxTRjJBKCBBX1ExMiwgcHNDTkctPkNOR19zbXRoX05MU0ZfUTE1LCBwc0RlYy0+
TFBDX29yZGVyLCBwc0RlYy0+YXJjaCApOwogCiAgICAgICAgIC8qIEdlbmVyYXRlIENORyBzaWdu
YWwsIGJ5IHN5bnRoZXNpcyBmaWx0ZXJpbmcgKi8KICAgICAgICAgc2lsa19tZW1jcHkoIENOR19z
aWdfUTE0LCBwc0NORy0+Q05HX3N5bnRoX3N0YXRlLCBNQVhfTFBDX09SREVSICogc2l6ZW9mKCBv
cHVzX2ludDMyICkgKTsKQEAgLTE3MSwxMCArMTcxLDEwIEBAIHZvaWQgc2lsa19DTkcoCiAKICAg
ICAgICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMgKi8KICAgICAgICAgICAgIENOR19zaWdfUTE0WyBN
QVhfTFBDX09SREVSICsgaSBdID0gc2lsa19BRERfU0FUMzIoIENOR19zaWdfUTE0WyBNQVhfTFBD
X09SREVSICsgaSBdLCBzaWxrX0xTSElGVF9TQVQzMiggTFBDX3ByZWRfUTEwLCA0ICkgKTsKLSAg
ICAgICAgICAgIAorCiAgICAgICAgICAgICAvKiBTY2FsZSB3aXRoIEdhaW4gYW5kIGFkZCB0byBp
bnB1dCBzaWduYWwgKi8KICAgICAgICAgICAgIGZyYW1lWyBpIF0gPSAob3B1c19pbnQxNilzaWxr
X0FERF9TQVQxNiggZnJhbWVbIGkgXSwgc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIHNp
bGtfU01VTFdXKCBDTkdfc2lnX1ExNFsgTUFYX0xQQ19PUkRFUiArIGkgXSwgZ2Fpbl9RMTAgKSwg
OCApICkgKTsKLSAgICAgICAgICAgIAorCiAgICAgICAgIH0KICAgICAgICAgc2lsa19tZW1jcHko
IHBzQ05HLT5DTkdfc3ludGhfc3RhdGUsICZDTkdfc2lnX1ExNFsgbGVuZ3RoIF0sIE1BWF9MUENf
T1JERVIgKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOwogICAgIH0gZWxzZSB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvTFBDX2FuYWx5c2lzX2ZpbHRlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQQ19hbmFseXNpc19maWx0ZXIuYwpp
bmRleCAyMDkwNjY3M2ZmMTI0NjEwZGYyMDcxY2I3NjVjYmY5YjA5YjMzZjA4Li43NzE1ZjcwZjhk
Njc2Mzc1N2IwZWYxOTRiZTRjZDAxNGZmZDBjMjIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBDX2FuYWx5
c2lzX2ZpbHRlci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENfYW5hbHlzaXNfZmlsdGVyLmMKQEAgLTM5LDYgKzM5
LDEzIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogLyogZmlyc3QgZCBvdXRwdXQgc2Ft
cGxlcyBhcmUgc2V0IHRvIHplcm8gICovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KIAorLyogT1BUOiBVc2luZyBjZWx0X2ZpcigpIGZvciB0aGlzIGZ1bmN0
aW9uIHNob3VsZCBiZSBmYXN0ZXIsIGJ1dCBpdCBtYXkgY2F1c2UKKyAgIGludGVnZXIgb3ZlcmZs
b3dzIGluIGludGVybWVkaWF0ZSB2YWx1ZXMgKG5vdCBmaW5hbCByZXN1bHRzKSwgd2hpY2ggdGhl
CisgICBjdXJyZW50IGltcGxlbWVudGF0aW9uIHNpbGVuY2VzIGJ5IGNhc3RpbmcgdG8gdW5zaWdu
ZWQuIEVuYWJsaW5nCisgICB0aGlzIHNob3VsZCBiZSBzYWZlIGluIHByZXR0eSBtdWNoIGFsbCBj
YXNlcywgZXZlbiB0aG91Z2ggaXQgaXMgbm90IHRlY2huaWNhbGx5CisgICBDODktY29tcGxpYW50
LiAqLworI2RlZmluZSBVU0VfQ0VMVF9GSVIgMAorCiB2b2lkIHNpbGtfTFBDX2FuYWx5c2lzX2Zp
bHRlcigKICAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKm91dCwgICAgICAgICAgICAg
ICAvKiBPICAgIE91dHB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICppbiwgICAg
ICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtNDksOCArNTYsNyBAQCB2b2lkIHNpbGtfTFBD
X2FuYWx5c2lzX2ZpbHRlcigKICkKIHsKICAgICBvcHVzX2ludCAgIGo7Ci0jaWZkZWYgRklYRURf
UE9JTlQKLSAgICBvcHVzX2ludDE2IG1lbVtTSUxLX01BWF9PUkRFUl9MUENdOworI2lmIGRlZmlu
ZWQoRklYRURfUE9JTlQpICYmIFVTRV9DRUxUX0ZJUgogICAgIG9wdXNfaW50MTYgbnVtW1NJTEtf
TUFYX09SREVSX0xQQ107CiAjZWxzZQogICAgIGludCBpeDsKQEAgLTYyLDE1ICs2OCwxMiBAQCB2
b2lkIHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlcigKICAgICBzaWxrX2Fzc2VydCggKGQgJiAxKSA9
PSAwICk7CiAgICAgc2lsa19hc3NlcnQoIGQgPD0gbGVuICk7CiAKLSNpZmRlZiBGSVhFRF9QT0lO
VAorI2lmIGRlZmluZWQoRklYRURfUE9JTlQpICYmIFVTRV9DRUxUX0ZJUgogICAgIHNpbGtfYXNz
ZXJ0KCBkIDw9IFNJTEtfTUFYX09SREVSX0xQQyApOwogICAgIGZvciAoIGogPSAwOyBqIDwgZDsg
aisrICkgewogICAgICAgICBudW1bIGogXSA9IC1CWyBqIF07CiAgICAgfQotICAgIGZvciAoaj0w
O2o8ZDtqKyspIHsKLSAgICAgICAgbWVtWyBqIF0gPSBpblsgZCAtIGogLSAxIF07Ci0gICAgfQot
ICAgIGNlbHRfZmlyKCBpbiArIGQsIG51bSwgb3V0ICsgZCwgbGVuIC0gZCwgZCwgbWVtLCBhcmNo
ICk7CisgICAgY2VsdF9maXIoIGluICsgZCwgbnVtLCBvdXQgKyBkLCBsZW4gLSBkLCBkLCBhcmNo
ICk7CiAgICAgZm9yICggaiA9IDA7IGogPCBkOyBqKysgKSB7CiAgICAgICAgIG91dFsgaiBdID0g
MDsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBDX2ZpdC5jIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQQ19maXQuYwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5jZGVhNGYzYWJjYWY3ZmNkMTQxYTRiODZlMmY5MjRiNjc5ZWZmZDk0Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL0xQQ19maXQuYwpAQCAtMCwwICsxLDgxIEBACisvKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioKK0NvcHlyaWdodCAoYykgMjAxMywgS29lbiBWb3MuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCitS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworYXJlIG1ldDoKKy0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
K25vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKK2RvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCistIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQg
U29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBj
b250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVu
CitwZXJtaXNzaW9uLgorVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRQorQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFCitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCitDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCitJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFCitQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwor
CisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNp
bmNsdWRlICJTaWdQcm9jX0ZJWC5oIgorCisvKiBDb252ZXJ0IGludDMyIGNvZWZmaWNpZW50cyB0
byBpbnQxNiBjb2VmcyBhbmQgbWFrZSBzdXJlIHRoZXJlJ3Mgbm8gd3JhcC1hcm91bmQgKi8KK3Zv
aWQgc2lsa19MUENfZml0KAorICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqYV9RT1VU
LCAgICAgICAgICAgIC8qIE8gICAgT3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAg
ICAgICAqYV9RSU4sICAgICAgICAgICAgIC8qIEkvTyAgSW5wdXQgc2lnbmFsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgUU9VVCwgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IFEgZG9tYWlu
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgIFFJTiwgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1
dCBRIGRvbWFpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgRmlsdGVyIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKykKK3sKKyAgICBvcHVzX2ludCAgICBpLCBrLCBpZHggPSAwOworICAgIG9w
dXNfaW50MzIgICAgbWF4YWJzLCBhYnN2YWwsIGNoaXJwX1ExNjsKKworICAgIC8qIExpbWl0IHRo
ZSBtYXhpbXVtIGFic29sdXRlIHZhbHVlIG9mIHRoZSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cywg
c28gdGhhdCB0aGV5J2xsIGZpdCBpbiBpbnQxNiAqLworICAgIGZvciggaSA9IDA7IGkgPCAxMDsg
aSsrICkgeworICAgICAgICAvKiBGaW5kIG1heGltdW0gYWJzb2x1dGUgdmFsdWUgYW5kIGl0cyBp
bmRleCAqLworICAgICAgICBtYXhhYnMgPSAwOworICAgICAgICBmb3IoIGsgPSAwOyBrIDwgZDsg
aysrICkgeworICAgICAgICAgICAgYWJzdmFsID0gc2lsa19hYnMoIGFfUUlOW2tdICk7CisgICAg
ICAgICAgICBpZiggYWJzdmFsID4gbWF4YWJzICkgeworICAgICAgICAgICAgICAgIG1heGFicyA9
IGFic3ZhbDsKKyAgICAgICAgICAgICAgICBpZHggICAgPSBrOworICAgICAgICAgICAgfQorICAg
ICAgICB9CisgICAgICAgIG1heGFicyA9IHNpbGtfUlNISUZUX1JPVU5EKCBtYXhhYnMsIFFJTiAt
IFFPVVQgKTsKKworICAgICAgICBpZiggbWF4YWJzID4gc2lsa19pbnQxNl9NQVggKSB7CisgICAg
ICAgICAgICAvKiBSZWR1Y2UgbWFnbml0dWRlIG9mIHByZWRpY3Rpb24gY29lZmZpY2llbnRzICov
CisgICAgICAgICAgICBtYXhhYnMgPSBzaWxrX21pbiggbWF4YWJzLCAxNjM4MzggKTsgIC8qICgg
c2lsa19pbnQzMl9NQVggPj4gMTQgKSArIHNpbGtfaW50MTZfTUFYID0gMTYzODM4ICovCisgICAg
ICAgICAgICBjaGlycF9RMTYgPSBTSUxLX0ZJWF9DT05TVCggMC45OTksIDE2ICkgLSBzaWxrX0RJ
VjMyKCBzaWxrX0xTSElGVCggbWF4YWJzIC0gc2lsa19pbnQxNl9NQVgsIDE0ICksCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2lsa19SU0hJRlQzMiggc2lsa19NVUwo
IG1heGFicywgaWR4ICsgMSksIDIgKSApOworICAgICAgICAgICAgc2lsa19id2V4cGFuZGVyXzMy
KCBhX1FJTiwgZCwgY2hpcnBfUTE2ICk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlmKCBpID09IDEwICkgeworICAgICAgICAv
KiBSZWFjaGVkIHRoZSBsYXN0IGl0ZXJhdGlvbiwgY2xpcCB0aGUgY29lZmZpY2llbnRzICovCisg
ICAgICAgIGZvciggayA9IDA7IGsgPCBkOyBrKysgKSB7CisgICAgICAgICAgICBhX1FPVVRbIGsg
XSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKCBhX1FJTlsgayBd
LCBRSU4gLSBRT1VUICkgKTsKKyAgICAgICAgICAgIGFfUUlOWyBrIF0gPSBzaWxrX0xTSElGVCgg
KG9wdXNfaW50MzIpYV9RT1VUWyBrIF0sIFFJTiAtIFFPVVQgKTsKKyAgICAgICAgfQorICAgIH0g
ZWxzZSB7CisgICAgICAgIGZvciggayA9IDA7IGsgPCBkOyBrKysgKSB7CisgICAgICAgICAgICBh
X1FPVVRbIGsgXSA9IChvcHVzX2ludDE2KXNpbGtfUlNISUZUX1JPVU5EKCBhX1FJTlsgayBdLCBR
SU4gLSBRT1VUICk7CisgICAgICAgIH0KKyAgICB9Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBDX2lu
dl9wcmVkX2dhaW4uYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9MUENfaW52X3ByZWRfZ2Fpbi5jCmluZGV4IDRhZjg5YWE1ZmFk
MzI0Nzk5NjIwZTY0YzNmYTIyZTNlYTZiZDk0MDAuLmEzNzQ2YTZlZjlmMzE4NzQ2OGNjZDY5NDQ4
MzdkOGMwMmJiYWRkMTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENfaW52X3ByZWRfZ2Fpbi5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9MUENfaW52X3ByZWRfZ2Fpbi5jCkBAIC0zMCw2ICszMCw3IEBAIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgogI2VuZGlmCiAKICNpbmNsdWRlICJTaWdQcm9jX0ZJWC5oIgorI2luY2x1
ZGUgImRlZmluZS5oIgogCiAjZGVmaW5lIFFBICAgICAgICAgICAgICAgICAgICAgICAgICAyNAog
I2RlZmluZSBBX0xJTUlUICAgICAgICAgICAgICAgICAgICAgU0lMS19GSVhfQ09OU1QoIDAuOTk5
NzUsIFFBICkKQEAgLTM4LDExNyArMzksMTAzIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgogCiAvKiBDb21wdXRlIGludmVyc2Ugb2YgTFBDIHByZWRpY3Rpb24gZ2FpbiwgYW5kICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwogLyogdGVzdCBpZiBMUEMgY29lZmZpY2llbnRzIGFyZSBz
dGFibGUgKGFsbCBwb2xlcyB3aXRoaW4gdW5pdCBjaXJjbGUpICAgKi8KLXN0YXRpYyBvcHVzX2lu
dDMyIExQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RQSggICAgICAgICAgICAgICAgIC8qIE8gICBSZXR1
cm5zIGludmVyc2UgcHJlZGljdGlvbiBnYWluIGluIGVuZXJneSBkb21haW4sIFEzMCAgICAqLwot
ICAgIG9wdXNfaW50MzIgICAgICAgICAgIEFfUUFbIDIgXVsgU0lMS19NQVhfT1JERVJfTFBDIF0s
ICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRzICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCitzdGF0aWMgb3B1c19pbnQzMiBMUENfaW52ZXJzZV9wcmVkX2dhaW5fUUFf
YyggICAgICAgICAgICAgICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBp
biBlbmVyZ3kgZG9tYWluLCBRMzAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgICBBX1FB
WyBTSUxLX01BWF9PUkRFUl9MUEMgXSwgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIGNvZWZmaWNp
ZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgIFByZWRp
Y3Rpb24gb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAp
CiB7CiAgICAgb3B1c19pbnQgICBrLCBuLCBtdWx0MlE7Ci0gICAgb3B1c19pbnQzMiBpbnZHYWlu
X1EzMCwgcmNfUTMxLCByY19tdWx0MV9RMzAsIHJjX211bHQyLCB0bXBfUUE7Ci0gICAgb3B1c19p
bnQzMiAqQW9sZF9RQSwgKkFuZXdfUUE7CisgICAgb3B1c19pbnQzMiBpbnZHYWluX1EzMCwgcmNf
UTMxLCByY19tdWx0MV9RMzAsIHJjX211bHQyLCB0bXAxLCB0bXAyOwogCi0gICAgQW5ld19RQSA9
IEFfUUFbIG9yZGVyICYgMSBdOwotCi0gICAgaW52R2Fpbl9RMzAgPSAob3B1c19pbnQzMikxIDw8
IDMwOworICAgIGludkdhaW5fUTMwID0gU0lMS19GSVhfQ09OU1QoIDEsIDMwICk7CiAgICAgZm9y
KCBrID0gb3JkZXIgLSAxOyBrID4gMDsgay0tICkgewogICAgICAgICAvKiBDaGVjayBmb3Igc3Rh
YmlsaXR5ICovCi0gICAgICAgIGlmKCAoIEFuZXdfUUFbIGsgXSA+IEFfTElNSVQgKSB8fCAoIEFu
ZXdfUUFbIGsgXSA8IC1BX0xJTUlUICkgKSB7CisgICAgICAgIGlmKCAoIEFfUUFbIGsgXSA+IEFf
TElNSVQgKSB8fCAoIEFfUUFbIGsgXSA8IC1BX0xJTUlUICkgKSB7CiAgICAgICAgICAgICByZXR1
cm4gMDsKICAgICAgICAgfQogCiAgICAgICAgIC8qIFNldCBSQyBlcXVhbCB0byBuZWdhdGVkIEFS
IGNvZWYgKi8KLSAgICAgICAgcmNfUTMxID0gLXNpbGtfTFNISUZUKCBBbmV3X1FBWyBrIF0sIDMx
IC0gUUEgKTsKKyAgICAgICAgcmNfUTMxID0gLXNpbGtfTFNISUZUKCBBX1FBWyBrIF0sIDMxIC0g
UUEgKTsKIAogICAgICAgICAvKiByY19tdWx0MV9RMzAgcmFuZ2U6IFsgMSA6IDJeMzAgXSAqLwot
ICAgICAgICByY19tdWx0MV9RMzAgPSAoIChvcHVzX2ludDMyKTEgPDwgMzAgKSAtIHNpbGtfU01N
VUwoIHJjX1EzMSwgcmNfUTMxICk7CisgICAgICAgIHJjX211bHQxX1EzMCA9IHNpbGtfU1VCMzIo
IFNJTEtfRklYX0NPTlNUKCAxLCAzMCApLCBzaWxrX1NNTVVMKCByY19RMzEsIHJjX1EzMSApICk7
CiAgICAgICAgIHNpbGtfYXNzZXJ0KCByY19tdWx0MV9RMzAgPiAoIDEgPDwgMTUgKSApOyAgICAg
ICAgICAgICAgICAgICAvKiByZWR1Y2UgQV9MSU1JVCBpZiBmYWlscyAqLwogICAgICAgICBzaWxr
X2Fzc2VydCggcmNfbXVsdDFfUTMwIDw9ICggMSA8PCAzMCApICk7CiAKLSAgICAgICAgLyogcmNf
bXVsdDIgcmFuZ2U6IFsgMl4zMCA6IHNpbGtfaW50MzJfTUFYIF0gKi8KLSAgICAgICAgbXVsdDJR
ID0gMzIgLSBzaWxrX0NMWjMyKCBzaWxrX2FicyggcmNfbXVsdDFfUTMwICkgKTsKLSAgICAgICAg
cmNfbXVsdDIgPSBzaWxrX0lOVkVSU0UzMl92YXJRKCByY19tdWx0MV9RMzAsIG11bHQyUSArIDMw
ICk7Ci0KICAgICAgICAgLyogVXBkYXRlIGludmVyc2UgZ2FpbiAqLwogICAgICAgICAvKiBpbnZH
YWluX1EzMCByYW5nZTogWyAwIDogMl4zMCBdICovCiAgICAgICAgIGludkdhaW5fUTMwID0gc2ls
a19MU0hJRlQoIHNpbGtfU01NVUwoIGludkdhaW5fUTMwLCByY19tdWx0MV9RMzAgKSwgMiApOwog
ICAgICAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPj0gMCAgICAgICAgICAgKTsKICAgICAg
ICAgc2lsa19hc3NlcnQoIGludkdhaW5fUTMwIDw9ICggMSA8PCAzMCApICk7CisgICAgICAgIGlm
KCBpbnZHYWluX1EzMCA8IFNJTEtfRklYX0NPTlNUKCAxLjBmIC8gTUFYX1BSRURJQ1RJT05fUE9X
RVJfR0FJTiwgMzAgKSApIHsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CiAKLSAg
ICAgICAgLyogU3dhcCBwb2ludGVycyAqLwotICAgICAgICBBb2xkX1FBID0gQW5ld19RQTsKLSAg
ICAgICAgQW5ld19RQSA9IEFfUUFbIGsgJiAxIF07CisgICAgICAgIC8qIHJjX211bHQyIHJhbmdl
OiBbIDJeMzAgOiBzaWxrX2ludDMyX01BWCBdICovCisgICAgICAgIG11bHQyUSA9IDMyIC0gc2ls
a19DTFozMiggc2lsa19hYnMoIHJjX211bHQxX1EzMCApICk7CisgICAgICAgIHJjX211bHQyID0g
c2lsa19JTlZFUlNFMzJfdmFyUSggcmNfbXVsdDFfUTMwLCBtdWx0MlEgKyAzMCApOwogCiAgICAg
ICAgIC8qIFVwZGF0ZSBBUiBjb2VmZmljaWVudCAqLwotICAgICAgICBmb3IoIG4gPSAwOyBuIDwg
azsgbisrICkgewotICAgICAgICAgICAgdG1wX1FBID0gQW9sZF9RQVsgbiBdIC0gTVVMMzJfRlJB
Q19RKCBBb2xkX1FBWyBrIC0gbiAtIDEgXSwgcmNfUTMxLCAzMSApOwotICAgICAgICAgICAgQW5l
d19RQVsgbiBdID0gTVVMMzJfRlJBQ19RKCB0bXBfUUEsIHJjX211bHQyICwgbXVsdDJRICk7Cisg
ICAgICAgIGZvciggbiA9IDA7IG4gPCAoayArIDEpID4+IDE7IG4rKyApIHsKKyAgICAgICAgICAg
IG9wdXNfaW50NjQgdG1wNjQ7CisgICAgICAgICAgICB0bXAxID0gQV9RQVsgbiBdOworICAgICAg
ICAgICAgdG1wMiA9IEFfUUFbIGsgLSBuIC0gMSBdOworICAgICAgICAgICAgdG1wNjQgPSBzaWxr
X1JTSElGVF9ST1VORDY0KCBzaWxrX1NNVUxMKCBzaWxrX1NVQl9TQVQzMih0bXAxLAorICAgICAg
ICAgICAgICAgICAgTVVMMzJfRlJBQ19RKCB0bXAyLCByY19RMzEsIDMxICkgKSwgcmNfbXVsdDIg
KSwgbXVsdDJRKTsKKyAgICAgICAgICAgIGlmKCB0bXA2NCA+IHNpbGtfaW50MzJfTUFYIHx8IHRt
cDY0IDwgc2lsa19pbnQzMl9NSU4gKSB7CisgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIEFfUUFbIG4gXSA9ICggb3B1c19pbnQzMiApdG1wNjQ7Cisg
ICAgICAgICAgICB0bXA2NCA9IHNpbGtfUlNISUZUX1JPVU5ENjQoIHNpbGtfU01VTEwoIHNpbGtf
U1VCX1NBVDMyKHRtcDIsCisgICAgICAgICAgICAgICAgICBNVUwzMl9GUkFDX1EoIHRtcDEsIHJj
X1EzMSwgMzEgKSApLCByY19tdWx0MiksIG11bHQyUSk7CisgICAgICAgICAgICBpZiggdG1wNjQg
PiBzaWxrX2ludDMyX01BWCB8fCB0bXA2NCA8IHNpbGtfaW50MzJfTUlOICkgeworICAgICAgICAg
ICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBBX1FBWyBrIC0gbiAt
IDEgXSA9ICggb3B1c19pbnQzMiApdG1wNjQ7CiAgICAgICAgIH0KICAgICB9CiAKICAgICAvKiBD
aGVjayBmb3Igc3RhYmlsaXR5ICovCi0gICAgaWYoICggQW5ld19RQVsgMCBdID4gQV9MSU1JVCAp
IHx8ICggQW5ld19RQVsgMCBdIDwgLUFfTElNSVQgKSApIHsKKyAgICBpZiggKCBBX1FBWyBrIF0g
PiBBX0xJTUlUICkgfHwgKCBBX1FBWyBrIF0gPCAtQV9MSU1JVCApICkgewogICAgICAgICByZXR1
cm4gMDsKICAgICB9CiAKICAgICAvKiBTZXQgUkMgZXF1YWwgdG8gbmVnYXRlZCBBUiBjb2VmICov
Ci0gICAgcmNfUTMxID0gLXNpbGtfTFNISUZUKCBBbmV3X1FBWyAwIF0sIDMxIC0gUUEgKTsKKyAg
ICByY19RMzEgPSAtc2lsa19MU0hJRlQoIEFfUUFbIDAgXSwgMzEgLSBRQSApOwogCiAgICAgLyog
UmFuZ2U6IFsgMSA6IDJeMzAgXSAqLwotICAgIHJjX211bHQxX1EzMCA9ICggKG9wdXNfaW50MzIp
MSA8PCAzMCApIC0gc2lsa19TTU1VTCggcmNfUTMxLCByY19RMzEgKTsKKyAgICByY19tdWx0MV9R
MzAgPSBzaWxrX1NVQjMyKCBTSUxLX0ZJWF9DT05TVCggMSwgMzAgKSwgc2lsa19TTU1VTCggcmNf
UTMxLCByY19RMzEgKSApOwogCiAgICAgLyogVXBkYXRlIGludmVyc2UgZ2FpbiAqLwogICAgIC8q
IFJhbmdlOiBbIDAgOiAyXjMwIF0gKi8KICAgICBpbnZHYWluX1EzMCA9IHNpbGtfTFNISUZUKCBz
aWxrX1NNTVVMKCBpbnZHYWluX1EzMCwgcmNfbXVsdDFfUTMwICksIDIgKTsKLSAgICBzaWxrX2Fz
c2VydCggaW52R2Fpbl9RMzAgPj0gMCAgICAgKTsKLSAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9R
MzAgPD0gMTw8MzAgKTsKKyAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPj0gMCAgICAgICAg
ICAgKTsKKyAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPD0gKCAxIDw8IDMwICkgKTsKKyAg
ICBpZiggaW52R2Fpbl9RMzAgPCBTSUxLX0ZJWF9DT05TVCggMS4wZiAvIE1BWF9QUkVESUNUSU9O
X1BPV0VSX0dBSU4sIDMwICkgKSB7CisgICAgICAgIHJldHVybiAwOworICAgIH0KIAogICAgIHJl
dHVybiBpbnZHYWluX1EzMDsKIH0KIAogLyogRm9yIGlucHV0IGluIFExMiBkb21haW4gKi8KLW9w
dXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4oICAgICAgICAgICAgICAvKiBPICAg
UmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAg
ICAgICovCitvcHVzX2ludDMyIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2MoICAgICAgICAg
ICAgLyogTyAgIFJldHVybnMgaW52ZXJzZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFp
biwgUTMwICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqQV9RMTIs
ICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIGNvZWZmaWNpZW50cywgUTEyIFtvcmRlcl0g
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAg
ICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgUHJlZGljdGlvbiBvcmRlciAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7CiAgICAgb3B1c19pbnQg
ICBrOwotICAgIG9wdXNfaW50MzIgQXRtcF9RQVsgMiBdWyBTSUxLX01BWF9PUkRFUl9MUEMgXTsK
LSAgICBvcHVzX2ludDMyICpBbmV3X1FBOworICAgIG9wdXNfaW50MzIgQXRtcF9RQVsgU0lMS19N
QVhfT1JERVJfTFBDIF07CiAgICAgb3B1c19pbnQzMiBEQ19yZXNwID0gMDsKIAotICAgIEFuZXdf
UUEgPSBBdG1wX1FBWyBvcmRlciAmIDEgXTsKLQogICAgIC8qIEluY3JlYXNlIFEgZG9tYWluIG9m
IHRoZSBBUiBjb2VmZmljaWVudHMgKi8KICAgICBmb3IoIGsgPSAwOyBrIDwgb3JkZXI7IGsrKyAp
IHsKICAgICAgICAgRENfcmVzcCArPSAob3B1c19pbnQzMilBX1ExMlsgayBdOwotICAgICAgICBB
bmV3X1FBWyBrIF0gPSBzaWxrX0xTSElGVDMyKCAob3B1c19pbnQzMilBX1ExMlsgayBdLCBRQSAt
IDEyICk7CisgICAgICAgIEF0bXBfUUFbIGsgXSA9IHNpbGtfTFNISUZUMzIoIChvcHVzX2ludDMy
KUFfUTEyWyBrIF0sIFFBIC0gMTIgKTsKICAgICB9CiAgICAgLyogSWYgdGhlIERDIGlzIHVuc3Rh
YmxlLCB3ZSBkb24ndCBldmVuIG5lZWQgdG8gZG8gdGhlIGZ1bGwgY2FsY3VsYXRpb25zICovCiAg
ICAgaWYoIERDX3Jlc3AgPj0gNDA5NiApIHsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQotICAg
IHJldHVybiBMUENfaW52ZXJzZV9wcmVkX2dhaW5fUUEoIEF0bXBfUUEsIG9yZGVyICk7CisgICAg
cmV0dXJuIExQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RQV9jKCBBdG1wX1FBLCBvcmRlciApOwogfQot
Ci0jaWZkZWYgRklYRURfUE9JTlQKLQotLyogRm9yIGlucHV0IGluIFEyNCBkb21haW4gKi8KLW9w
dXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fUTI0KCAgICAgICAgICAvKiBPICAg
IFJldHVybnMgaW52ZXJzZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpBX1EyNCwgICAgICAgICAg
ICAgLyogSSAgICBQcmVkaWN0aW9uIGNvZWZmaWNpZW50cyBbb3JkZXJdICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBvcmRlciAg
ICAgICAgICAgICAgIC8qIEkgICAgUHJlZGljdGlvbiBvcmRlciAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSkKLXsKLSAgICBvcHVzX2ludCAgIGs7Ci0gICAg
b3B1c19pbnQzMiBBdG1wX1FBWyAyIF1bIFNJTEtfTUFYX09SREVSX0xQQyBdOwotICAgIG9wdXNf
aW50MzIgKkFuZXdfUUE7Ci0KLSAgICBBbmV3X1FBID0gQXRtcF9RQVsgb3JkZXIgJiAxIF07Ci0K
LSAgICAvKiBJbmNyZWFzZSBRIGRvbWFpbiBvZiB0aGUgQVIgY29lZmZpY2llbnRzICovCi0gICAg
Zm9yKCBrID0gMDsgayA8IG9yZGVyOyBrKysgKSB7Ci0gICAgICAgIEFuZXdfUUFbIGsgXSA9IHNp
bGtfUlNISUZUMzIoIEFfUTI0WyBrIF0sIDI0IC0gUUEgKTsKLSAgICB9Ci0KLSAgICByZXR1cm4g
TFBDX2ludmVyc2VfcHJlZF9nYWluX1FBKCBBdG1wX1FBLCBvcmRlciApOwotfQotI2VuZGlmCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvTFBfdmFyaWFibGVfY3V0b2ZmLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBfdmFyaWFibGVfY3V0
b2ZmLmMKaW5kZXggZjYzOWUxZjg5OWE5YzIzZTdlNTQyMDU1Mjg3YzkzZTk5ZjNiODc3NC4uNzkx
MTJhZDM1NGExNTdhZTY4YmVkYTRkMzU1ZjBmMTE2ZjJiNmY4YSAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQ
X3ZhcmlhYmxlX2N1dG9mZi5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUF92YXJpYWJsZV9jdXRvZmYuYwpAQCAtMTMw
LDYgKzEzMCw2IEBAIHZvaWQgc2lsa19MUF92YXJpYWJsZV9jdXRvZmYoCiAKICAgICAgICAgLyog
QVJNQSBsb3ctcGFzcyBmaWx0ZXJpbmcgKi8KICAgICAgICAgc2lsa19hc3NlcnQoIFRSQU5TSVRJ
T05fTkIgPT0gMyAmJiBUUkFOU0lUSU9OX05BID09IDIgKTsKLSAgICAgICAgc2lsa19iaXF1YWRf
YWx0KCBmcmFtZSwgQl9RMjgsIEFfUTI4LCBwc0xQLT5Jbl9MUF9TdGF0ZSwgZnJhbWUsIGZyYW1l
X2xlbmd0aCwgMSk7CisgICAgICAgIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUxKCBmcmFtZSwgQl9R
MjgsIEFfUTI4LCBwc0xQLT5Jbl9MUF9TdGF0ZSwgZnJhbWUsIGZyYW1lX2xlbmd0aCk7CiAgICAg
fQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL01hY3JvQ291bnQuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9NYWNyb0NvdW50LmgKaW5k
ZXggODM0ODE3ZDA1OGI5ZTllNGI4ZTdjMjQ0YTljZTczNTI3OGNmMzU0NC4uNzgxMDBmZmVkZWIy
OTA2MTgwOTMyNzMwOTU5OTg2M2E0ZGM0YWY0OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL01hY3JvQ291bnQu
aAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvTWFjcm9Db3VudC5oCkBAIC0zMTksMTQgKzMxOSw2IEBAIHN0YXRpYyBPUFVT
X0lOTElORSBvcHVzX2ludDMyIHNpbGtfQUREX1BPU19TQVQzMihvcHVzX2ludDY0IGEsIG9wdXNf
aW50NjQgYil7CiAgICAgcmV0dXJuKHRtcCk7CiB9CiAKLSN1bmRlZiBzaWxrX0FERF9QT1NfU0FU
NjQKLXN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDY0IHNpbGtfQUREX1BPU19TQVQ2NChvcHVz
X2ludDY0IGEsIG9wdXNfaW50NjQgYil7Ci0gICAgb3B1c19pbnQ2NCB0bXA7Ci0gICAgb3BzX2Nv
dW50ICs9IDE7Ci0gICAgdG1wID0gKCgoKGEpKyhiKSkgJiAweDgwMDAwMDAwMDAwMDAwMDBMTCkg
PyBzaWxrX2ludDY0X01BWCA6ICgoYSkrKGIpKSk7Ci0gICAgcmV0dXJuKHRtcCk7Ci19Ci0KICN1
bmRlZiAgICBzaWxrX0xTSElGVDgKIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDggc2lsa19M
U0hJRlQ4KG9wdXNfaW50OCBhLCBvcHVzX2ludDMyIHNoaWZ0KXsKICAgICBvcHVzX2ludDggcmV0
OwpAQCAtNjk5LDcgKzY5MSw3IEBAIHJldHVybihyZXQpOwogCiAKICN1bmRlZiBzaWxrX0xJTUlU
XzMyCi1zdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQgc2lsa19MSU1JVF8zMihvcHVzX2ludDMy
IGEsIG9wdXNfaW50MzIgbGltaXQxLCBvcHVzX2ludDMyIGxpbWl0MikKK3N0YXRpYyBPUFVTX0lO
TElORSBvcHVzX2ludDMyIHNpbGtfTElNSVRfMzIob3B1c19pbnQzMiBhLCBvcHVzX2ludDMyIGxp
bWl0MSwgb3B1c19pbnQzMiBsaW1pdDIpCiB7CiAgICAgb3B1c19pbnQzMiByZXQ7CiAgICAgb3Bz
X2NvdW50ICs9IDY7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTWFjcm9EZWJ1Zy5oIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL01hY3JvRGVi
dWcuaAppbmRleCAzNWFlZGM1YzVmYTY0NjcyMmU2ODc5ZWU1MWM3OGYzMjQ0OTFlZDg0Li44ZGQ0
Y2UyZWUyNzVhNmE2NGY0YjFlZGU1MjZmYThiNDI4ZjYxMjJiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTWFj
cm9EZWJ1Zy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9NYWNyb0RlYnVnLmgKQEAgLTUzOSw4ICs1MzksNyBAQCBzdGF0
aWMgT1BVU19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX0RJVjMyXzE2XyhvcHVzX2ludDMyIGEzMiwg
b3B1c19pbnQzMiBiMzIsIGNoYQogICAgbm8gY2hlY2tpbmcgbmVlZGVkIGZvciBzaWxrX1BPU19T
QVQzMgogICAgbm8gY2hlY2tpbmcgbmVlZGVkIGZvciBzaWxrX0FERF9QT1NfU0FUOAogICAgbm8g
Y2hlY2tpbmcgbmVlZGVkIGZvciBzaWxrX0FERF9QT1NfU0FUMTYKLSAgIG5vIGNoZWNraW5nIG5l
ZWRlZCBmb3Igc2lsa19BRERfUE9TX1NBVDMyCi0gICBubyBjaGVja2luZyBuZWVkZWQgZm9yIHNp
bGtfQUREX1BPU19TQVQ2NCAqLworICAgbm8gY2hlY2tpbmcgbmVlZGVkIGZvciBzaWxrX0FERF9Q
T1NfU0FUMzIgKi8KIAogI3VuZGVmIHNpbGtfTFNISUZUOAogI2RlZmluZSBzaWxrX0xTSElGVDgo
YSxiKSBzaWxrX0xTSElGVDhfKChhKSwgKGIpLCBfX0ZJTEVfXywgX19MSU5FX18pCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvTkxTRjJBLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRjJBLmMKaW5kZXggYjFjNTU5ZWE2ODIxM2UwNmQz
OWRlNzljOTc3ZTg2ZjU3M2JkNTFjOC4uMTE2YjQ2NWIxZGI4YzY3ODE3N2FkZWRiYzZkMjVmZjll
ZDM4NzUxMCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0YyQS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGMkEuYwpAQCAt
NjYsNyArNjYsOCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX05MU0YyQV9maW5kX3Bv
bHkoCiB2b2lkIHNpbGtfTkxTRjJBKAogICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAq
YV9RMTIsICAgICAgICAgICAgIC8qIE8gICAgbW9uaWMgd2hpdGVuaW5nIGZpbHRlciBjb2VmZmlj
aWVudHMgaW4gUTEyLCAgWyBkIF0gICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgKk5MU0YsICAgICAgICAgICAgICAvKiBJICAgIG5vcm1hbGl6ZWQgbGluZSBzcGVj
dHJhbCBmcmVxdWVuY2llcyBpbiBRMTUsIFsgZCBdICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgLyogSSAgICBmaWx0ZXIgb3Jk
ZXIgKHNob3VsZCBiZSBldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBkLCAgICAgICAgICAgICAgICAgIC8qIEkgICAg
ZmlsdGVyIG9yZGVyIChzaG91bGQgYmUgZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAg
ICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCiApCiB7CiAgICAgLyogVGhpcyBvcmRlcmluZyB3YXMgZm91bmQgdG8g
bWF4aW1pemUgcXVhbGl0eS4gSXQgaW1wcm92ZXMgbnVtZXJpY2FsIGFjY3VyYWN5IG9mCkBAIC04
MywxNSArODQsMTQgQEAgdm9pZCBzaWxrX05MU0YyQSgKICAgICBvcHVzX2ludDMyIFBbIFNJTEtf
TUFYX09SREVSX0xQQyAvIDIgKyAxIF0sIFFbIFNJTEtfTUFYX09SREVSX0xQQyAvIDIgKyAxIF07
CiAgICAgb3B1c19pbnQzMiBQdG1wLCBRdG1wLCBmX2ludCwgZl9mcmFjLCBjb3NfdmFsLCBkZWx0
YTsKICAgICBvcHVzX2ludDMyIGEzMl9RQTFbIFNJTEtfTUFYX09SREVSX0xQQyBdOwotICAgIG9w
dXNfaW50MzIgbWF4YWJzLCBhYnN2YWwsIGlkeD0wLCBzY19RMTY7CiAKICAgICBzaWxrX2Fzc2Vy
dCggTFNGX0NPU19UQUJfU1pfRklYID09IDEyOCApOwotICAgIHNpbGtfYXNzZXJ0KCBkPT0xMHx8
ZD09MTYgKTsKKyAgICBzaWxrX2Fzc2VydCggZD09MTAgfHwgZD09MTYgKTsKIAogICAgIC8qIGNv
bnZlcnQgTFNGcyB0byAyKmNvcyhMU0YpLCB1c2luZyBwaWVjZXdpc2UgbGluZWFyIGN1cnZlIGZy
b20gdGFibGUgKi8KICAgICBvcmRlcmluZyA9IGQgPT0gMTYgPyBvcmRlcmluZzE2IDogb3JkZXJp
bmcxMDsKICAgICBmb3IoIGsgPSAwOyBrIDwgZDsgaysrICkgewotICAgICAgICBzaWxrX2Fzc2Vy
dChOTFNGW2tdID49IDAgKTsKKyAgICAgICAgc2lsa19hc3NlcnQoIE5MU0Zba10gPj0gMCApOwog
CiAgICAgICAgIC8qIGZfaW50IG9uIGEgc2NhbGUgMC0xMjcgKHJvdW5kZWQgZG93bikgKi8KICAg
ICAgICAgZl9pbnQgPSBzaWxrX1JTSElGVCggTkxTRltrXSwgMTUgLSA3ICk7CkBAIC0xMjYsNTIg
KzEyNiwxNSBAQCB2b2lkIHNpbGtfTkxTRjJBKAogICAgICAgICBhMzJfUUExWyBkLWstMSBdID0g
IFF0bXAgLSBQdG1wOyAgICAgICAgLyogUUErMSAqLwogICAgIH0KIAotICAgIC8qIExpbWl0IHRo
ZSBtYXhpbXVtIGFic29sdXRlIHZhbHVlIG9mIHRoZSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cywg
c28gdGhhdCB0aGV5J2xsIGZpdCBpbiBpbnQxNiAqLwotICAgIGZvciggaSA9IDA7IGkgPCAxMDsg
aSsrICkgewotICAgICAgICAvKiBGaW5kIG1heGltdW0gYWJzb2x1dGUgdmFsdWUgYW5kIGl0cyBp
bmRleCAqLwotICAgICAgICBtYXhhYnMgPSAwOwotICAgICAgICBmb3IoIGsgPSAwOyBrIDwgZDsg
aysrICkgewotICAgICAgICAgICAgYWJzdmFsID0gc2lsa19hYnMoIGEzMl9RQTFba10gKTsKLSAg
ICAgICAgICAgIGlmKCBhYnN2YWwgPiBtYXhhYnMgKSB7Ci0gICAgICAgICAgICAgICAgbWF4YWJz
ID0gYWJzdmFsOwotICAgICAgICAgICAgICAgIGlkeCAgICA9IGs7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgIH0KLSAgICAgICAgbWF4YWJzID0gc2lsa19SU0hJRlRfUk9VTkQoIG1heGFicywgUUEg
KyAxIC0gMTIgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBR
QSsxIC0+IFExMiAqLwotCi0gICAgICAgIGlmKCBtYXhhYnMgPiBzaWxrX2ludDE2X01BWCApIHsK
LSAgICAgICAgICAgIC8qIFJlZHVjZSBtYWduaXR1ZGUgb2YgcHJlZGljdGlvbiBjb2VmZmljaWVu
dHMgKi8KLSAgICAgICAgICAgIG1heGFicyA9IHNpbGtfbWluKCBtYXhhYnMsIDE2MzgzOCApOyAg
LyogKCBzaWxrX2ludDMyX01BWCA+PiAxNCApICsgc2lsa19pbnQxNl9NQVggPSAxNjM4MzggKi8K
LSAgICAgICAgICAgIHNjX1ExNiA9IFNJTEtfRklYX0NPTlNUKCAwLjk5OSwgMTYgKSAtIHNpbGtf
RElWMzIoIHNpbGtfTFNISUZUKCBtYXhhYnMgLSBzaWxrX2ludDE2X01BWCwgMTQgKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWxrX1JTSElGVDMyKCBzaWxrX01V
TCggbWF4YWJzLCBpZHggKyAxKSwgMiApICk7Ci0gICAgICAgICAgICBzaWxrX2J3ZXhwYW5kZXJf
MzIoIGEzMl9RQTEsIGQsIHNjX1ExNiApOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
YnJlYWs7Ci0gICAgICAgIH0KLSAgICB9CisgICAgLyogQ29udmVydCBpbnQzMiBjb2VmZmljaWVu
dHMgdG8gUTEyIGludDE2IGNvZWZzICovCisgICAgc2lsa19MUENfZml0KCBhX1ExMiwgYTMyX1FB
MSwgMTIsIFFBICsgMSwgZCApOwogCi0gICAgaWYoIGkgPT0gMTAgKSB7Ci0gICAgICAgIC8qIFJl
YWNoZWQgdGhlIGxhc3QgaXRlcmF0aW9uLCBjbGlwIHRoZSBjb2VmZmljaWVudHMgKi8KKyAgICBm
b3IoIGkgPSAwOyBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbiggYV9RMTIsIGQsIGFyY2ggKSA9
PSAwICYmIGkgPCBNQVhfTFBDX1NUQUJJTElaRV9JVEVSQVRJT05TOyBpKysgKSB7CisgICAgICAg
IC8qIFByZWRpY3Rpb24gY29lZmZpY2llbnRzIGFyZSAodG9vIGNsb3NlIHRvKSB1bnN0YWJsZTsg
YXBwbHkgYmFuZHdpZHRoIGV4cGFuc2lvbiAgICovCisgICAgICAgIC8qIG9uIHRoZSB1bnNjYWxl
ZCBjb2VmZmljaWVudHMsIGNvbnZlcnQgdG8gUTEyIGFuZCBtZWFzdXJlIGFnYWluICAgICAgICAg
ICAgICAgICAgICovCisgICAgICAgIHNpbGtfYndleHBhbmRlcl8zMiggYTMyX1FBMSwgZCwgNjU1
MzYgLSBzaWxrX0xTSElGVCggMiwgaSApICk7CiAgICAgICAgIGZvciggayA9IDA7IGsgPCBkOyBr
KysgKSB7Ci0gICAgICAgICAgICBhX1ExMlsgayBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNigg
c2lsa19SU0hJRlRfUk9VTkQoIGEzMl9RQTFbIGsgXSwgUUEgKyAxIC0gMTIgKSApOyAgLyogUUEr
MSAtPiBRMTIgKi8KLSAgICAgICAgICAgIGEzMl9RQTFbIGsgXSA9IHNpbGtfTFNISUZUKCAob3B1
c19pbnQzMilhX1ExMlsgayBdLCBRQSArIDEgLSAxMiApOwotICAgICAgICB9Ci0gICAgfSBlbHNl
IHsKLSAgICAgICAgZm9yKCBrID0gMDsgayA8IGQ7IGsrKyApIHsKLSAgICAgICAgICAgIGFfUTEy
WyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1JTSElGVF9ST1VORCggYTMyX1FBMVsgayBdLCBRQSAr
IDEgLSAxMiApOyAgICAgICAgICAgICAgICAvKiBRQSsxIC0+IFExMiAqLwotICAgICAgICB9Ci0g
ICAgfQotCi0gICAgZm9yKCBpID0gMDsgaSA8IE1BWF9MUENfU1RBQklMSVpFX0lURVJBVElPTlM7
IGkrKyApIHsKLSAgICAgICAgaWYoIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKCBhX1ExMiwg
ZCApIDwgU0lMS19GSVhfQ09OU1QoIDEuMCAvIE1BWF9QUkVESUNUSU9OX1BPV0VSX0dBSU4sIDMw
ICkgKSB7Ci0gICAgICAgICAgICAvKiBQcmVkaWN0aW9uIGNvZWZmaWNpZW50cyBhcmUgKHRvbyBj
bG9zZSB0bykgdW5zdGFibGU7IGFwcGx5IGJhbmR3aWR0aCBleHBhbnNpb24gICAqLwotICAgICAg
ICAgICAgLyogb24gdGhlIHVuc2NhbGVkIGNvZWZmaWNpZW50cywgY29udmVydCB0byBRMTIgYW5k
IG1lYXN1cmUgYWdhaW4gICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgIHNpbGtfYndl
eHBhbmRlcl8zMiggYTMyX1FBMSwgZCwgNjU1MzYgLSBzaWxrX0xTSElGVCggMiwgaSApICk7Ci0g
ICAgICAgICAgICBmb3IoIGsgPSAwOyBrIDwgZDsgaysrICkgewotICAgICAgICAgICAgICAgIGFf
UTEyWyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1JTSElGVF9ST1VORCggYTMyX1FBMVsgayBdLCBR
QSArIDEgLSAxMiApOyAgICAgICAgICAgIC8qIFFBKzEgLT4gUTEyICovCi0gICAgICAgICAgICB9
Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGFfUTEy
WyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1JTSElGVF9ST1VORCggYTMyX1FBMVsgayBdLCBRQSAr
IDEgLSAxMiApOyAgICAgICAgICAgIC8qIFFBKzEgLT4gUTEyICovCiAgICAgICAgIH0KICAgICB9
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9WUS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfVlEuYwppbmRleCA2OWI2
ZTIyZTE4OTY1YTk4MDRiNTRhZWMxYjlmZjdjYjgyNDUzNjUyLi40NTJmM2RjYjdkZGQ4YTc4OGEw
MGYzYzI3YzEzOWU5NWVhMjBiYmZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9WUS5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9OTFNGX1ZRLmMKQEAgLTMzLDM2ICszMyw0NCBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KIAogLyogQ29tcHV0ZSBxdWFudGl6YXRpb24gZXJyb3JzIGZvciBhbiBMUENfb3JkZXIgZWxl
bWVudCBpbnB1dCB2ZWN0b3IgZm9yIGEgVlEgY29kZWJvb2sgKi8KIHZvaWQgc2lsa19OTFNGX1ZR
KAotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBlcnJfUTI2W10sICAgICAgICAgICAg
ICAgICAgICAgIC8qIE8gICAgUXVhbnRpemF0aW9uIGVycm9ycyBbS10gICAgICAgICAgICAgICAg
ICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBlcnJfUTI0W10sICAgICAg
ICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRpemF0aW9uIGVycm9ycyBbS10gICAgICAgICAg
ICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBpbl9RMTVbXSwg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgdmVjdG9ycyB0byBiZSBxdWFudGl6
ZWQgW0xQQ19vcmRlcl0gICAqLwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICAgICBwQ0Jf
UThbXSwgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29kZWJvb2sgdmVjdG9ycyBbSypM
UENfb3JkZXJdICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAg
ICBwV2dodF9ROVtdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29kZWJvb2sgd2VpZ2h0
cyBbSypMUENfb3JkZXJdICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICBLLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9m
IGNvZGVib29rIHZlY3RvcnMgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgICBMUENfb3JkZXIgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVt
YmVyIG9mIExQQ3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKQogewotICAgIG9w
dXNfaW50ICAgICAgICBpLCBtOwotICAgIG9wdXNfaW50MzIgICAgICBkaWZmX1ExNSwgc3VtX2Vy
cm9yX1EzMCwgc3VtX2Vycm9yX1EyNjsKKyAgICBvcHVzX2ludCAgICAgICAgIGksIG07CisgICAg
b3B1c19pbnQzMiAgICAgICBkaWZmX1ExNSwgZGlmZndfUTI0LCBzdW1fZXJyb3JfUTI0LCBwcmVk
X1EyNDsKKyAgICBjb25zdCBvcHVzX2ludDE2ICp3X1E5X3B0cjsKKyAgICBjb25zdCBvcHVzX3Vp
bnQ4ICpjYl9ROF9wdHI7CiAKLSAgICBzaWxrX2Fzc2VydCggTFBDX29yZGVyIDw9IDE2ICk7CiAg
ICAgc2lsa19hc3NlcnQoICggTFBDX29yZGVyICYgMSApID09IDAgKTsKIAogICAgIC8qIExvb3Ag
b3ZlciBjb2RlYm9vayAqLworICAgIGNiX1E4X3B0ciA9IHBDQl9RODsKKyAgICB3X1E5X3B0ciA9
IHBXZ2h0X1E5OwogICAgIGZvciggaSA9IDA7IGkgPCBLOyBpKysgKSB7Ci0gICAgICAgIHN1bV9l
cnJvcl9RMjYgPSAwOwotICAgICAgICBmb3IoIG0gPSAwOyBtIDwgTFBDX29yZGVyOyBtICs9IDIg
KSB7Ci0gICAgICAgICAgICAvKiBDb21wdXRlIHdlaWdodGVkIHNxdWFyZWQgcXVhbnRpemF0aW9u
IGVycm9yIGZvciBpbmRleCBtICovCi0gICAgICAgICAgICBkaWZmX1ExNSA9IHNpbGtfU1VCX0xT
SElGVDMyKCBpbl9RMTVbIG0gXSwgKG9wdXNfaW50MzIpKnBDQl9ROCsrLCA3ICk7IC8qIHJhbmdl
OiBbIC0zMjc2NyA6IDMyNzY3IF0qLwotICAgICAgICAgICAgc3VtX2Vycm9yX1EzMCA9IHNpbGtf
U01VTEJCKCBkaWZmX1ExNSwgZGlmZl9RMTUgKTsKKyAgICAgICAgc3VtX2Vycm9yX1EyNCA9IDA7
CisgICAgICAgIHByZWRfUTI0ID0gMDsKKyAgICAgICAgZm9yKCBtID0gTFBDX29yZGVyLTI7IG0g
Pj0gMDsgbSAtPSAyICkgeworICAgICAgICAgICAgLyogQ29tcHV0ZSB3ZWlnaHRlZCBhYnNvbHV0
ZSBwcmVkaWN0aXZlIHF1YW50aXphdGlvbiBlcnJvciBmb3IgaW5kZXggbSArIDEgKi8KKyAgICAg
ICAgICAgIGRpZmZfUTE1ID0gc2lsa19TVUJfTFNISUZUMzIoIGluX1ExNVsgbSArIDEgXSwgKG9w
dXNfaW50MzIpY2JfUThfcHRyWyBtICsgMSBdLCA3ICk7IC8qIHJhbmdlOiBbIC0zMjc2NyA6IDMy
NzY3IF0qLworICAgICAgICAgICAgZGlmZndfUTI0ID0gc2lsa19TTVVMQkIoIGRpZmZfUTE1LCB3
X1E5X3B0clsgbSArIDEgXSApOworICAgICAgICAgICAgc3VtX2Vycm9yX1EyNCA9IHNpbGtfQURE
MzIoIHN1bV9lcnJvcl9RMjQsIHNpbGtfYWJzKCBzaWxrX1NVQl9SU0hJRlQzMiggZGlmZndfUTI0
LCBwcmVkX1EyNCwgMSApICkgKTsKKyAgICAgICAgICAgIHByZWRfUTI0ID0gZGlmZndfUTI0Owog
Ci0gICAgICAgICAgICAvKiBDb21wdXRlIHdlaWdodGVkIHNxdWFyZWQgcXVhbnRpemF0aW9uIGVy
cm9yIGZvciBpbmRleCBtICsgMSAqLwotICAgICAgICAgICAgZGlmZl9RMTUgPSBzaWxrX1NVQl9M
U0hJRlQzMiggaW5fUTE1W20gKyAxXSwgKG9wdXNfaW50MzIpKnBDQl9ROCsrLCA3ICk7IC8qIHJh
bmdlOiBbIC0zMjc2NyA6IDMyNzY3IF0qLwotICAgICAgICAgICAgc3VtX2Vycm9yX1EzMCA9IHNp
bGtfU01MQUJCKCBzdW1fZXJyb3JfUTMwLCBkaWZmX1ExNSwgZGlmZl9RMTUgKTsKKyAgICAgICAg
ICAgIC8qIENvbXB1dGUgd2VpZ2h0ZWQgYWJzb2x1dGUgcHJlZGljdGl2ZSBxdWFudGl6YXRpb24g
ZXJyb3IgZm9yIGluZGV4IG0gKi8KKyAgICAgICAgICAgIGRpZmZfUTE1ID0gc2lsa19TVUJfTFNI
SUZUMzIoIGluX1ExNVsgbSBdLCAob3B1c19pbnQzMiljYl9ROF9wdHJbIG0gXSwgNyApOyAvKiBy
YW5nZTogWyAtMzI3NjcgOiAzMjc2NyBdKi8KKyAgICAgICAgICAgIGRpZmZ3X1EyNCA9IHNpbGtf
U01VTEJCKCBkaWZmX1ExNSwgd19ROV9wdHJbIG0gXSApOworICAgICAgICAgICAgc3VtX2Vycm9y
X1EyNCA9IHNpbGtfQUREMzIoIHN1bV9lcnJvcl9RMjQsIHNpbGtfYWJzKCBzaWxrX1NVQl9SU0hJ
RlQzMiggZGlmZndfUTI0LCBwcmVkX1EyNCwgMSApICkgKTsKKyAgICAgICAgICAgIHByZWRfUTI0
ID0gZGlmZndfUTI0OwogCi0gICAgICAgICAgICBzdW1fZXJyb3JfUTI2ID0gc2lsa19BRERfUlNI
SUZUMzIoIHN1bV9lcnJvcl9RMjYsIHN1bV9lcnJvcl9RMzAsIDQgKTsKLQotICAgICAgICAgICAg
c2lsa19hc3NlcnQoIHN1bV9lcnJvcl9RMjYgPj0gMCApOwotICAgICAgICAgICAgc2lsa19hc3Nl
cnQoIHN1bV9lcnJvcl9RMzAgPj0gMCApOworICAgICAgICAgICAgc2lsa19hc3NlcnQoIHN1bV9l
cnJvcl9RMjQgPj0gMCApOwogICAgICAgICB9Ci0gICAgICAgIGVycl9RMjZbIGkgXSA9IHN1bV9l
cnJvcl9RMjY7CisgICAgICAgIGVycl9RMjRbIGkgXSA9IHN1bV9lcnJvcl9RMjQ7CisgICAgICAg
IGNiX1E4X3B0ciArPSBMUENfb3JkZXI7CisgICAgICAgIHdfUTlfcHRyICs9IExQQ19vcmRlcjsK
ICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9kZWNvZGUuYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX2RlY29k
ZS5jCmluZGV4IDlmNzE1MDYwYjhlZmIyYzNjNmQ4NGMxMGVkYzY4MDM2ZjAyNTNmNDYuLmVlYjBi
YThjOTJjOGI2MGY3ZGM2MTk1M2ZkODA1NGU4NzRiYTA3ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNG
X2RlY29kZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX2RlY29kZS5jCkBAIC0zMiw3ICszMiw3IEBAIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgIm1haW4uaCIKIAogLyogUHJlZGljdGl2
ZSBkZXF1YW50aXplciBmb3IgTkxTRiByZXNpZHVhbHMgKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2
b2lkIHNpbGtfTkxTRl9yZXNpZHVhbF9kZXF1YW50KCAgICAgICAgICAgICAgIC8qIE8gICAgUmV0
dXJucyBSRCB2YWx1ZSBpbiBRMzAgICAgICAgICAgICAgICAgICAgICAqLworc3RhdGljIE9QVVNf
SU5MSU5FIHZvaWQgc2lsa19OTFNGX3Jlc2lkdWFsX2RlcXVhbnQoICAgICAgICAgIC8qIE8gICAg
UmV0dXJucyBSRCB2YWx1ZSBpbiBRMzAgICAgICAgICAgICAgICAgICAgICAqLwogICAgICAgICAg
IG9wdXNfaW50MTYgICAgICAgICB4X1ExMFtdLCAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8g
ICAgT3V0cHV0IFsgb3JkZXIgXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNv
bnN0IG9wdXNfaW50OCAgICAgICAgICBpbmRpY2VzW10sICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgUXVhbnRpemF0aW9uIGluZGljZXMgWyBvcmRlciBdICAgICAgICAgICAgICAqLwogICAg
IGNvbnN0IG9wdXNfdWludDggICAgICAgICBwcmVkX2NvZWZfUThbXSwgICAgICAgICAgICAgICAg
IC8qIEkgICAgQmFja3dhcmQgcHJlZGljdG9yIGNvZWZzIFsgb3JkZXIgXSAgICAgICAgICAqLwpA
QCAtNzAsMTUgKzcwLDkgQEAgdm9pZCBzaWxrX05MU0ZfZGVjb2RlKAogICAgIG9wdXNfdWludDgg
ICAgICAgcHJlZF9ROFsgIE1BWF9MUENfT1JERVIgXTsKICAgICBvcHVzX2ludDE2ICAgICAgIGVj
X2l4WyAgICBNQVhfTFBDX09SREVSIF07CiAgICAgb3B1c19pbnQxNiAgICAgICByZXNfUTEwWyAg
TUFYX0xQQ19PUkRFUiBdOwotICAgIG9wdXNfaW50MTYgICAgICAgV190bXBfUVdbIE1BWF9MUENf
T1JERVIgXTsKLSAgICBvcHVzX2ludDMyICAgICAgIFdfdG1wX1E5LCBOTFNGX1ExNV90bXA7Cisg
ICAgb3B1c19pbnQzMiAgICAgICBOTFNGX1ExNV90bXA7CiAgICAgY29uc3Qgb3B1c191aW50OCAq
cENCX2VsZW1lbnQ7Ci0KLSAgICAvKiBEZWNvZGUgZmlyc3Qgc3RhZ2UgKi8KLSAgICBwQ0JfZWxl
bWVudCA9ICZwc05MU0ZfQ0ItPkNCMV9OTFNGX1E4WyBOTFNGSW5kaWNlc1sgMCBdICogcHNOTFNG
X0NCLT5vcmRlciBdOwotICAgIGZvciggaSA9IDA7IGkgPCBwc05MU0ZfQ0ItPm9yZGVyOyBpKysg
KSB7Ci0gICAgICAgIHBOTFNGX1ExNVsgaSBdID0gc2lsa19MU0hJRlQoIChvcHVzX2ludDE2KXBD
Ql9lbGVtZW50WyBpIF0sIDcgKTsKLSAgICB9CisgICAgY29uc3Qgb3B1c19pbnQxNiAqcENCX1dn
aHRfUTk7CiAKICAgICAvKiBVbnBhY2sgZW50cm9weSB0YWJsZSBpbmRpY2VzIGFuZCBwcmVkaWN0
b3IgZm9yIGN1cnJlbnQgQ0IxIGluZGV4ICovCiAgICAgc2lsa19OTFNGX3VucGFjayggZWNfaXgs
IHByZWRfUTgsIHBzTkxTRl9DQiwgTkxTRkluZGljZXNbIDAgXSApOwpAQCAtODYsMTMgKzgwLDEx
IEBAIHZvaWQgc2lsa19OTFNGX2RlY29kZSgKICAgICAvKiBQcmVkaWN0aXZlIHJlc2lkdWFsIGRl
cXVhbnRpemVyICovCiAgICAgc2lsa19OTFNGX3Jlc2lkdWFsX2RlcXVhbnQoIHJlc19RMTAsICZO
TFNGSW5kaWNlc1sgMSBdLCBwcmVkX1E4LCBwc05MU0ZfQ0ItPnF1YW50U3RlcFNpemVfUTE2LCBw
c05MU0ZfQ0ItPm9yZGVyICk7CiAKLSAgICAvKiBXZWlnaHRzIGZyb20gY29kZWJvb2sgdmVjdG9y
ICovCi0gICAgc2lsa19OTFNGX1ZRX3dlaWdodHNfbGFyb2lhKCBXX3RtcF9RVywgcE5MU0ZfUTE1
LCBwc05MU0ZfQ0ItPm9yZGVyICk7Ci0KLSAgICAvKiBBcHBseSBpbnZlcnNlIHNxdWFyZS1yb290
ZWQgd2VpZ2h0cyBhbmQgYWRkIHRvIG91dHB1dCAqLworICAgIC8qIEFwcGx5IGludmVyc2Ugc3F1
YXJlLXJvb3RlZCB3ZWlnaHRzIHRvIGZpcnN0IHN0YWdlIGFuZCBhZGQgdG8gb3V0cHV0ICovCisg
ICAgcENCX2VsZW1lbnQgPSAmcHNOTFNGX0NCLT5DQjFfTkxTRl9ROFsgTkxTRkluZGljZXNbIDAg
XSAqIHBzTkxTRl9DQi0+b3JkZXIgXTsKKyAgICBwQ0JfV2dodF9ROSA9ICZwc05MU0ZfQ0ItPkNC
MV9XZ2h0X1E5WyBOTFNGSW5kaWNlc1sgMCBdICogcHNOTFNGX0NCLT5vcmRlciBdOwogICAgIGZv
ciggaSA9IDA7IGkgPCBwc05MU0ZfQ0ItPm9yZGVyOyBpKysgKSB7Ci0gICAgICAgIFdfdG1wX1E5
ID0gc2lsa19TUVJUX0FQUFJPWCggc2lsa19MU0hJRlQoIChvcHVzX2ludDMyKVdfdG1wX1FXWyBp
IF0sIDE4IC0gTkxTRl9XX1EgKSApOwotICAgICAgICBOTFNGX1ExNV90bXAgPSBzaWxrX0FERDMy
KCBwTkxTRl9RMTVbIGkgXSwgc2lsa19ESVYzMl8xNiggc2lsa19MU0hJRlQoIChvcHVzX2ludDMy
KXJlc19RMTBbIGkgXSwgMTQgKSwgV190bXBfUTkgKSApOworICAgICAgICBOTFNGX1ExNV90bXAg
PSBzaWxrX0FERF9MU0hJRlQzMiggc2lsa19ESVYzMl8xNiggc2lsa19MU0hJRlQoIChvcHVzX2lu
dDMyKXJlc19RMTBbIGkgXSwgMTQgKSwgcENCX1dnaHRfUTlbIGkgXSApLCAob3B1c19pbnQxNilw
Q0JfZWxlbWVudFsgaSBdLCA3ICk7CiAgICAgICAgIHBOTFNGX1ExNVsgaSBdID0gKG9wdXNfaW50
MTYpc2lsa19MSU1JVCggTkxTRl9RMTVfdG1wLCAwLCAzMjc2NyApOwogICAgIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL05MU0ZfZGVsX2RlY19xdWFudC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZGVsX2RlY19xdWFudC5j
CmluZGV4IGRlODhmZWUwNjBlMzc3MmViNDNjNGQwZGY2ODEyYWExMDE1OTBkYmYuLjQ0YTE2YWNk
MGJjMTFhYjczM2JiYjBiYmU0MmMzNzhiMjFkNGFmMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX2Rl
bF9kZWNfcXVhbnQuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9kZWxfZGVjX3F1YW50LmMKQEAgLTg0LDcgKzg0
LDcgQEAgb3B1c19pbnQzMiBzaWxrX05MU0ZfZGVsX2RlY19xdWFudCggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucwogICAgIG5TdGF0ZXMgPSAxOwogICAgIFJEX1Ey
NVsgMCBdID0gMDsKICAgICBwcmV2X291dF9RMTBbIDAgXSA9IDA7Ci0gICAgZm9yKCBpID0gb3Jk
ZXIgLSAxOyA7IGktLSApIHsKKyAgICBmb3IoIGkgPSBvcmRlciAtIDE7IGkgPj0gMDsgaS0tICkg
ewogICAgICAgICByYXRlc19RNSA9ICZlY19yYXRlc19RNVsgZWNfaXhbIGkgXSBdOwogICAgICAg
ICBpbl9RMTAgPSB4X1ExMFsgaSBdOwogICAgICAgICBmb3IoIGogPSAwOyBqIDwgblN0YXRlczsg
aisrICkgewpAQCAtMTMxLDcgKzEzMSw3IEBAIG9wdXNfaW50MzIgc2lsa19OTFNGX2RlbF9kZWNf
cXVhbnQoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJldHVybnMKICAgICAg
ICAgICAgIFJEX1EyNVsgaiArIG5TdGF0ZXMgXSA9IHNpbGtfU01MQUJCKCBzaWxrX01MQSggUkRf
dG1wX1EyNSwgc2lsa19TTVVMQkIoIGRpZmZfUTEwLCBkaWZmX1ExMCApLCB3X1E1WyBpIF0gKSwg
bXVfUTIwLCByYXRlMV9RNSApOwogICAgICAgICB9CiAKLSAgICAgICAgaWYoIG5TdGF0ZXMgPD0g
KCBOTFNGX1FVQU5UX0RFTF9ERUNfU1RBVEVTID4+IDEgKSApIHsKKyAgICAgICAgaWYoIG5TdGF0
ZXMgPD0gTkxTRl9RVUFOVF9ERUxfREVDX1NUQVRFUy8yICkgewogICAgICAgICAgICAgLyogZG91
YmxlIG51bWJlciBvZiBzdGF0ZXMgYW5kIGNvcHkgKi8KICAgICAgICAgICAgIGZvciggaiA9IDA7
IGogPCBuU3RhdGVzOyBqKysgKSB7CiAgICAgICAgICAgICAgICAgaW5kWyBqICsgblN0YXRlcyBd
WyBpIF0gPSBpbmRbIGogXVsgaSBdICsgMTsKQEAgLTE0MCw3ICsxNDAsNyBAQCBvcHVzX2ludDMy
IHNpbGtfTkxTRl9kZWxfZGVjX3F1YW50KCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
TyAgICBSZXR1cm5zCiAgICAgICAgICAgICBmb3IoIGogPSBuU3RhdGVzOyBqIDwgTkxTRl9RVUFO
VF9ERUxfREVDX1NUQVRFUzsgaisrICkgewogICAgICAgICAgICAgICAgIGluZFsgaiBdWyBpIF0g
PSBpbmRbIGogLSBuU3RhdGVzIF1bIGkgXTsKICAgICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNl
IGlmKCBpID4gMCApIHsKKyAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8qIHNvcnQgbG93
ZXIgYW5kIHVwcGVyIGhhbGYgb2YgUkRfUTI1LCBwYWlyd2lzZSAqLwogICAgICAgICAgICAgZm9y
KCBqID0gMDsgaiA8IE5MU0ZfUVVBTlRfREVMX0RFQ19TVEFURVM7IGorKyApIHsKICAgICAgICAg
ICAgICAgICBpZiggUkRfUTI1WyBqIF0gPiBSRF9RMjVbIGogKyBOTFNGX1FVQU5UX0RFTF9ERUNf
U1RBVEVTIF0gKSB7CkBAIC0xOTEsOCArMTkxLDYgQEAgb3B1c19pbnQzMiBzaWxrX05MU0ZfZGVs
X2RlY19xdWFudCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucwog
ICAgICAgICAgICAgZm9yKCBqID0gMDsgaiA8IE5MU0ZfUVVBTlRfREVMX0RFQ19TVEFURVM7IGor
KyApIHsKICAgICAgICAgICAgICAgICBpbmRbIGogXVsgaSBdICs9IHNpbGtfUlNISUZUKCBpbmRf
c29ydFsgaiBdLCBOTFNGX1FVQU5UX0RFTF9ERUNfU1RBVEVTX0xPRzIgKTsKICAgICAgICAgICAg
IH0KLSAgICAgICAgfSBlbHNlIHsgIC8qIGkgPT0gMCAqLwotICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIH0KICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX2VuY29kZS5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05M
U0ZfZW5jb2RlLmMKaW5kZXggZjAzYzNmMWMzNTQ5ZDlkY2NmNGY1MTE1MzdiNDAwMWM0MDlmN2U2
Yi4uMjY4YjlhMTk1YjUwODU2NTM2NzgxMmJhMjc0N2E3YmE2YTFmNGFhMCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL05MU0ZfZW5jb2RlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZW5jb2RlLmMKQEAgLTM3LDkgKzM3LDkg
QEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAvKioqKioqKioqKioqKioqKioqKioqKiov
CiBvcHVzX2ludDMyIHNpbGtfTkxTRl9lbmNvZGUoICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogTyAgICBSZXR1cm5zIFJEIHZhbHVlIGluIFEyNSAgICAgICAgICAgICAgICAg
ICAgICovCiAgICAgICAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICpOTFNGSW5kaWNlcywgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBDb2RlYm9vayBwYXRoIHZlY3RvciBbIExQQ19PUkRFUiAr
IDEgXSAgICAgICovCi0gICAgICAgICAgb3B1c19pbnQxNiAgICAgICAgICAgICpwTkxTRl9RMTUs
ICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6ZWQgTkxTRiB2ZWN0b3IgWyBMUENf
T1JERVIgXSAgICAgICAgICovCisgICAgICAgICAgb3B1c19pbnQxNiAgICAgICAgICAgICpwTkxT
Rl9RMTUsICAgICAgICAgICAgICAgICAgICAgLyogSS9PICAoVW4pcXVhbnRpemVkIE5MU0YgdmVj
dG9yIFsgTFBDX09SREVSIF0gICAgICovCiAgICAgY29uc3Qgc2lsa19OTFNGX0NCX3N0cnVjdCAg
ICpwc05MU0ZfQ0IsICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb2RlYm9vayBvYmplY3Qg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgICpwV19RVywgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOTFNGIHdlaWdo
dCB2ZWN0b3IgWyBMUENfT1JERVIgXSAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQx
NiAgICAgICAgICAgICpwV19RMiwgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOTFNG
IHdlaWdodCB2ZWN0b3IgWyBMUENfT1JERVIgXSAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgIE5MU0ZfbXVfUTIwLCAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBSYXRlIHdlaWdodCBmb3IgdGhlIFJEIG9wdGltaXphdGlvbiAgICAgICAgICovCiAgICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgIG5TdXJ2aXZvcnMsICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBNYXggc3Vydml2b3JzIGFmdGVyIGZpcnN0IHN0YWdlICAgICAgICAgICAgICovCiAg
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHNpZ25hbFR5cGUgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBTaWduYWwgdHlwZTogMC8xLzIgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCkBAIC00NywyMSArNDcsMTkgQEAgb3B1c19pbnQzMiBzaWxrX05MU0ZfZW5jb2RlKCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucwogewogICAgIG9w
dXNfaW50ICAgICAgICAgaSwgcywgaW5kMSwgYmVzdEluZGV4LCBwcm9iX1E4LCBiaXRzX3E3Owog
ICAgIG9wdXNfaW50MzIgICAgICAgV190bXBfUTksIHJldDsKLSAgICBWQVJERUNMKCBvcHVzX2lu
dDMyLCBlcnJfUTI2ICk7CisgICAgVkFSREVDTCggb3B1c19pbnQzMiwgZXJyX1EyNCApOwogICAg
IFZBUkRFQ0woIG9wdXNfaW50MzIsIFJEX1EyNSApOwogICAgIFZBUkRFQ0woIG9wdXNfaW50LCB0
ZW1wSW5kaWNlczEgKTsKICAgICBWQVJERUNMKCBvcHVzX2ludDgsIHRlbXBJbmRpY2VzMiApOwot
ICAgIG9wdXNfaW50MTYgICAgICAgcmVzX1ExNVsgICAgICBNQVhfTFBDX09SREVSIF07CiAgICAg
b3B1c19pbnQxNiAgICAgICByZXNfUTEwWyAgICAgIE1BWF9MUENfT1JERVIgXTsKICAgICBvcHVz
X2ludDE2ICAgICAgIE5MU0ZfdG1wX1ExNVsgTUFYX0xQQ19PUkRFUiBdOwotICAgIG9wdXNfaW50
MTYgICAgICAgV190bXBfUVdbICAgICBNQVhfTFBDX09SREVSIF07CiAgICAgb3B1c19pbnQxNiAg
ICAgICBXX2Fkal9RNVsgICAgIE1BWF9MUENfT1JERVIgXTsKICAgICBvcHVzX3VpbnQ4ICAgICAg
IHByZWRfUThbICAgICAgTUFYX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfaW50MTYgICAgICAgZWNf
aXhbICAgICAgICBNQVhfTFBDX09SREVSIF07CiAgICAgY29uc3Qgb3B1c191aW50OCAqcENCX2Vs
ZW1lbnQsICppQ0RGX3B0cjsKKyAgICBjb25zdCBvcHVzX2ludDE2ICpwQ0JfV2dodF9ROTsKICAg
ICBTQVZFX1NUQUNLOwogCi0gICAgc2lsa19hc3NlcnQoIG5TdXJ2aXZvcnMgPD0gTkxTRl9WUV9N
QVhfU1VSVklWT1JTICk7CiAgICAgc2lsa19hc3NlcnQoIHNpZ25hbFR5cGUgPj0gMCAmJiBzaWdu
YWxUeXBlIDw9IDIgKTsKICAgICBzaWxrX2Fzc2VydCggTkxTRl9tdV9RMjAgPD0gMzI3NjcgJiYg
TkxTRl9tdV9RMjAgPj0gMCApOwogCkBAIC02OSwxMiArNjcsMTIgQEAgb3B1c19pbnQzMiBzaWxr
X05MU0ZfZW5jb2RlKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAg
UmV0dXJucwogICAgIHNpbGtfTkxTRl9zdGFiaWxpemUoIHBOTFNGX1ExNSwgcHNOTFNGX0NCLT5k
ZWx0YU1pbl9RMTUsIHBzTkxTRl9DQi0+b3JkZXIgKTsKIAogICAgIC8qIEZpcnN0IHN0YWdlOiBW
USAqLwotICAgIEFMTE9DKCBlcnJfUTI2LCBwc05MU0ZfQ0ItPm5WZWN0b3JzLCBvcHVzX2ludDMy
ICk7Ci0gICAgc2lsa19OTFNGX1ZRKCBlcnJfUTI2LCBwTkxTRl9RMTUsIHBzTkxTRl9DQi0+Q0Ix
X05MU0ZfUTgsIHBzTkxTRl9DQi0+blZlY3RvcnMsIHBzTkxTRl9DQi0+b3JkZXIgKTsKKyAgICBB
TExPQyggZXJyX1EyNCwgcHNOTFNGX0NCLT5uVmVjdG9ycywgb3B1c19pbnQzMiApOworICAgIHNp
bGtfTkxTRl9WUSggZXJyX1EyNCwgcE5MU0ZfUTE1LCBwc05MU0ZfQ0ItPkNCMV9OTFNGX1E4LCBw
c05MU0ZfQ0ItPkNCMV9XZ2h0X1E5LCBwc05MU0ZfQ0ItPm5WZWN0b3JzLCBwc05MU0ZfQ0ItPm9y
ZGVyICk7CiAKICAgICAvKiBTb3J0IHRoZSBxdWFudGl6YXRpb24gZXJyb3JzICovCiAgICAgQUxM
T0MoIHRlbXBJbmRpY2VzMSwgblN1cnZpdm9ycywgb3B1c19pbnQgKTsKLSAgICBzaWxrX2luc2Vy
dGlvbl9zb3J0X2luY3JlYXNpbmcoIGVycl9RMjYsIHRlbXBJbmRpY2VzMSwgcHNOTFNGX0NCLT5u
VmVjdG9ycywgblN1cnZpdm9ycyApOworICAgIHNpbGtfaW5zZXJ0aW9uX3NvcnRfaW5jcmVhc2lu
ZyggZXJyX1EyNCwgdGVtcEluZGljZXMxLCBwc05MU0ZfQ0ItPm5WZWN0b3JzLCBuU3Vydml2b3Jz
ICk7CiAKICAgICBBTExPQyggUkRfUTI1LCBuU3Vydml2b3JzLCBvcHVzX2ludDMyICk7CiAgICAg
QUxMT0MoIHRlbXBJbmRpY2VzMiwgblN1cnZpdm9ycyAqIE1BWF9MUENfT1JERVIsIG9wdXNfaW50
OCApOwpAQCAtODUsMjMgKzgzLDEyIEBAIG9wdXNfaW50MzIgc2lsa19OTFNGX2VuY29kZSggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJldHVybnMKIAogICAgICAg
ICAvKiBSZXNpZHVhbCBhZnRlciBmaXJzdCBzdGFnZSAqLwogICAgICAgICBwQ0JfZWxlbWVudCA9
ICZwc05MU0ZfQ0ItPkNCMV9OTFNGX1E4WyBpbmQxICogcHNOTFNGX0NCLT5vcmRlciBdOworICAg
ICAgICBwQ0JfV2dodF9ROSA9ICZwc05MU0ZfQ0ItPkNCMV9XZ2h0X1E5WyBpbmQxICogcHNOTFNG
X0NCLT5vcmRlciBdOwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgcHNOTFNGX0NCLT5vcmRlcjsg
aSsrICkgewogICAgICAgICAgICAgTkxTRl90bXBfUTE1WyBpIF0gPSBzaWxrX0xTSElGVDE2KCAo
b3B1c19pbnQxNilwQ0JfZWxlbWVudFsgaSBdLCA3ICk7Ci0gICAgICAgICAgICByZXNfUTE1WyBp
IF0gPSBwTkxTRl9RMTVbIGkgXSAtIE5MU0ZfdG1wX1ExNVsgaSBdOwotICAgICAgICB9Ci0KLSAg
ICAgICAgLyogV2VpZ2h0cyBmcm9tIGNvZGVib29rIHZlY3RvciAqLwotICAgICAgICBzaWxrX05M
U0ZfVlFfd2VpZ2h0c19sYXJvaWEoIFdfdG1wX1FXLCBOTFNGX3RtcF9RMTUsIHBzTkxTRl9DQi0+
b3JkZXIgKTsKLQotICAgICAgICAvKiBBcHBseSBzcXVhcmUtcm9vdGVkIHdlaWdodHMgKi8KLSAg
ICAgICAgZm9yKCBpID0gMDsgaSA8IHBzTkxTRl9DQi0+b3JkZXI7IGkrKyApIHsKLSAgICAgICAg
ICAgIFdfdG1wX1E5ID0gc2lsa19TUVJUX0FQUFJPWCggc2lsa19MU0hJRlQoIChvcHVzX2ludDMy
KVdfdG1wX1FXWyBpIF0sIDE4IC0gTkxTRl9XX1EgKSApOwotICAgICAgICAgICAgcmVzX1ExMFsg
aSBdID0gKG9wdXNfaW50MTYpc2lsa19SU0hJRlQoIHNpbGtfU01VTEJCKCByZXNfUTE1WyBpIF0s
IFdfdG1wX1E5ICksIDE0ICk7Ci0gICAgICAgIH0KLQotICAgICAgICAvKiBNb2RpZnkgaW5wdXQg
d2VpZ2h0cyBhY2NvcmRpbmdseSAqLwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgcHNOTFNGX0NC
LT5vcmRlcjsgaSsrICkgewotICAgICAgICAgICAgV19hZGpfUTVbIGkgXSA9IHNpbGtfRElWMzJf
MTYoIHNpbGtfTFNISUZUKCAob3B1c19pbnQzMilwV19RV1sgaSBdLCA1ICksIFdfdG1wX1FXWyBp
IF0gKTsKKyAgICAgICAgICAgIFdfdG1wX1E5ID0gcENCX1dnaHRfUTlbIGkgXTsKKyAgICAgICAg
ICAgIHJlc19RMTBbIGkgXSA9IChvcHVzX2ludDE2KXNpbGtfUlNISUZUKCBzaWxrX1NNVUxCQigg
cE5MU0ZfUTE1WyBpIF0gLSBOTFNGX3RtcF9RMTVbIGkgXSwgV190bXBfUTkgKSwgMTQgKTsKKyAg
ICAgICAgICAgIFdfYWRqX1E1WyBpIF0gPSBzaWxrX0RJVjMyX3ZhclEoIChvcHVzX2ludDMyKXBX
X1EyWyBpIF0sIHNpbGtfU01VTEJCKCBXX3RtcF9ROSwgV190bXBfUTkgKSwgMjEgKTsKICAgICAg
ICAgfQogCiAgICAgICAgIC8qIFVucGFjayBlbnRyb3B5IHRhYmxlIGluZGljZXMgYW5kIHByZWRp
Y3RvciBmb3IgY3VycmVudCBDQjEgaW5kZXggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OU1EuYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9OU1EuYwppbmRleCA0M2UzZmVlN2UwYWQ5MjkzOTRlZjdjYmNmODE0YmFkZTI4NzE5YmVjLi42
MTdhMTlmZWFkZWY4ZDU1N2IwODZjMzQ1NThkMzE3NTAyNzZhMWM1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
TlNRLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL05TUS5jCkBAIC0zNyw3ICszNyw3IEBAIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3Ffc2NhbGVfc3RhdGVz
KAogICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbmNDLCAgICAgICAgICAgLyogSSAg
ICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUg
ICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgIHhfUTNbXSwgICAgICAgICAg
ICAgICAgIC8qIEkgICAgaW5wdXQgaW4gUTMgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50MTYgICAgeDE2W10sICAgICAgICAgICAgICAgICAgLyogSSAgICBpbnB1dCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICB4X3Nj
X1ExMFtdLCAgICAgICAgICAgICAvKiBPICAgIGlucHV0IHNjYWxlZCB3aXRoIDEvR2FpbiAgICAg
ICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgIHNMVFBbXSwgICAgICAgICAgICAgICAgIC8q
IEkgICAgcmUtd2hpdGVuZWQgTFRQIHN0YXRlIGluIFEwICAgICAqLwogICAgIG9wdXNfaW50MzIg
ICAgICAgICAgc0xUUF9RMTVbXSwgICAgICAgICAgICAgLyogTyAgICBMVFAgc3RhdGUgbWF0Y2hp
bmcgc2NhbGVkIGlucHV0ICovCkBAIC03NSwxNCArNzUsMTQgQEAgc3RhdGljIE9QVVNfSU5MSU5F
IHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXIoCiAKIHZvaWQgc2lsa19OU1FfYwogKAot
ICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAg
ICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRp
Y2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9u
IEluZGljZXMgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4
X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmls
dGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQ4ICAgICAg
ICAgICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogTyAgICBRdWFudGl6ZWQgcHVsc2Ugc2lnbmFsICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgIFByZWRDb2VmX1ExMlsgMiAqIE1BWF9MUENfT1JERVIgXSwgICAg
ICAgICAgLyogSSAgICBTaG9ydCB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICovCiAgICAgY29u
c3Qgb3B1c19pbnQxNiAgICAgICAgICAgIExUUENvZWZfUTE0WyBMVFBfT1JERVIgKiBNQVhfTkJf
U1VCRlIgXSwgICAgLyogSSAgICBMb25nIHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAgICovCi0g
ICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFSMl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1B
WF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSBOb2lzZSBzaGFwaW5nIGNvZWZzICAgICAgICAgICAg
ICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFSX1ExM1sgTUFYX05CX1NVQkZS
ICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAvKiBJIE5vaXNlIHNoYXBpbmcgY29lZnMgICAgICAg
ICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5f
UTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgLyogSSAgICBMb25nIHRlcm0gc2hhcGluZyBj
b2VmcyAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIFRpbHRfUTE0
WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAgLyogSSAgICBTcGVjdHJhbCB0aWx0
ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIExG
X3NocF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgLyogSSAgICBMb3cgZnJl
cXVlbmN5IHNoYXBpbmcgY29lZnMgICAgICovCkBAIC0xMTcsOCArMTE3LDcgQEAgdm9pZCBzaWxr
X05TUV9jCiAgICAgICAgIExTRl9pbnRlcnBvbGF0aW9uX2ZsYWcgPSAxOwogICAgIH0KIAotICAg
IEFMTE9DKCBzTFRQX1ExNSwKLSAgICAgICAgICAgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCArIHBz
RW5jQy0+ZnJhbWVfbGVuZ3RoLCBvcHVzX2ludDMyICk7CisgICAgQUxMT0MoIHNMVFBfUTE1LCBw
c0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsgcHNFbmNDLT5mcmFtZV9sZW5ndGgsIG9wdXNfaW50MzIg
KTsKICAgICBBTExPQyggc0xUUCwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCArIHBzRW5jQy0+ZnJh
bWVfbGVuZ3RoLCBvcHVzX2ludDE2ICk7CiAgICAgQUxMT0MoIHhfc2NfUTEwLCBwc0VuY0MtPnN1
YmZyX2xlbmd0aCwgb3B1c19pbnQzMiApOwogICAgIC8qIFNldCB1cCBwb2ludGVycyB0byBzdGFy
dCBvZiBzdWIgZnJhbWUgKi8KQEAgLTEyOCw3ICsxMjcsNyBAQCB2b2lkIHNpbGtfTlNRX2MKICAg
ICBmb3IoIGsgPSAwOyBrIDwgcHNFbmNDLT5uYl9zdWJmcjsgaysrICkgewogICAgICAgICBBX1Ex
MiAgICAgID0gJlByZWRDb2VmX1ExMlsgKCggayA+PiAxICkgfCAoIDEgLSBMU0ZfaW50ZXJwb2xh
dGlvbl9mbGFnICkpICogTUFYX0xQQ19PUkRFUiBdOwogICAgICAgICBCX1ExNCAgICAgID0gJkxU
UENvZWZfUTE0WyBrICogTFRQX09SREVSIF07Ci0gICAgICAgIEFSX3NocF9RMTMgPSAmQVIyX1Ex
M1sgICAgIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07CisgICAgICAgIEFSX3NocF9RMTMgPSAm
QVJfUTEzWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwogCiAgICAgICAgIC8qIE5vaXNlIHNo
YXBlIHBhcmFtZXRlcnMgKi8KICAgICAgICAgc2lsa19hc3NlcnQoIEhhcm1TaGFwZUdhaW5fUTE0
WyBrIF0gPj0gMCApOwpAQCAtMTU0LDEzICsxNTMsMTMgQEAgdm9pZCBzaWxrX05TUV9jCiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0KIAotICAgICAgICBzaWxrX25zcV9zY2FsZV9zdGF0ZXMoIHBz
RW5jQywgTlNRLCB4X1EzLCB4X3NjX1ExMCwgc0xUUCwgc0xUUF9RMTUsIGssIExUUF9zY2FsZV9R
MTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBwc0luZGljZXMtPnNpZ25hbFR5cGUgKTsKKyAgICAgICAg
c2lsa19uc3Ffc2NhbGVfc3RhdGVzKCBwc0VuY0MsIE5TUSwgeDE2LCB4X3NjX1ExMCwgc0xUUCwg
c0xUUF9RMTUsIGssIExUUF9zY2FsZV9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBwc0luZGljZXMt
PnNpZ25hbFR5cGUgKTsKIAogICAgICAgICBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplciggTlNR
LCBwc0luZGljZXMtPnNpZ25hbFR5cGUsIHhfc2NfUTEwLCBwdWxzZXMsIHB4cSwgc0xUUF9RMTUs
IEFfUTEyLCBCX1ExNCwKICAgICAgICAgICAgIEFSX3NocF9RMTMsIGxhZywgSGFybVNoYXBlRklS
UGFja2VkX1ExNCwgVGlsdF9RMTRbIGsgXSwgTEZfc2hwX1ExNFsgayBdLCBHYWluc19RMTZbIGsg
XSwgTGFtYmRhX1ExMCwKICAgICAgICAgICAgIG9mZnNldF9RMTAsIHBzRW5jQy0+c3ViZnJfbGVu
Z3RoLCBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIsIHBz
RW5jQy0+YXJjaCApOwogCi0gICAgICAgIHhfUTMgICArPSBwc0VuY0MtPnN1YmZyX2xlbmd0aDsK
KyAgICAgICAgeDE2ICAgICs9IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOwogICAgICAgICBwdWxzZXMg
Kz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7CiAgICAgICAgIHB4cSAgICArPSBwc0VuY0MtPnN1YmZy
X2xlbmd0aDsKICAgICB9CkBAIC0xNjksNyArMTY4LDYgQEAgdm9pZCBzaWxrX05TUV9jCiAgICAg
TlNRLT5sYWdQcmV2ID0gcGl0Y2hMWyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBdOwogCiAgICAgLyog
U2F2ZSBxdWFudGl6ZWQgc3BlZWNoIGFuZCBub2lzZSBzaGFwaW5nIHNpZ25hbHMgKi8KLSAgICAv
KiBERUJVR19TVE9SRV9EQVRBKCBlbmMucGNtLCAmTlNRLT54cVsgcHNFbmNDLT5sdHBfbWVtX2xl
bmd0aCBdLCBwc0VuY0MtPmZyYW1lX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQxNiApICkgKi8K
ICAgICBzaWxrX21lbW1vdmUoIE5TUS0+eHEsICAgICAgICAgICAmTlNRLT54cVsgICAgICAgICAg
IHBzRW5jQy0+ZnJhbWVfbGVuZ3RoIF0sIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKiBzaXplb2Yo
IG9wdXNfaW50MTYgKSApOwogICAgIHNpbGtfbWVtbW92ZSggTlNRLT5zTFRQX3NocF9RMTQsICZO
U1EtPnNMVFBfc2hwX1ExNFsgcHNFbmNDLT5mcmFtZV9sZW5ndGggXSwgcHNFbmNDLT5sdHBfbWVt
X2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQzMiApICk7CiAgICAgUkVTVE9SRV9TVEFDSzsKQEAg
LTI1MCw3ICsyNDgsNyBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyKAogCiAgICAg
ICAgIC8qIE5vaXNlIHNoYXBlIGZlZWRiYWNrICovCiAgICAgICAgIHNpbGtfYXNzZXJ0KCAoIHNo
YXBpbmdMUENPcmRlciAmIDEgKSA9PSAwICk7ICAgLyogY2hlY2sgdGhhdCBvcmRlciBpcyBldmVu
ICovCi0gICAgICAgIG5fQVJfUTEyID0gc2lsa19OU1Ffbm9pc2Vfc2hhcGVfZmVlZGJhY2tfbG9v
cChwc0xQQ19RMTQsIE5TUS0+c0FSMl9RMTQsIEFSX3NocF9RMTMsIHNoYXBpbmdMUENPcmRlciwg
YXJjaCk7CisgICAgICAgIG5fQVJfUTEyID0gc2lsa19OU1Ffbm9pc2Vfc2hhcGVfZmVlZGJhY2tf
bG9vcCgmTlNRLT5zRGlmZl9zaHBfUTE0LCBOU1EtPnNBUjJfUTE0LCBBUl9zaHBfUTEzLCBzaGFw
aW5nTFBDT3JkZXIsIGFyY2gpOwogCiAgICAgICAgIG5fQVJfUTEyID0gc2lsa19TTUxBV0IoIG5f
QVJfUTEyLCBOU1EtPnNMRl9BUl9zaHBfUTE0LCBUaWx0X1ExNCApOwogCkBAIC0yNzksMTQgKzI3
NywyNyBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyKAogICAgICAgICByX1ExMCA9
IHNpbGtfU1VCMzIoIHhfc2NfUTEwWyBpIF0sIHRtcDEgKTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiByZXNpZHVhbCBlcnJvciBRMTAgKi8KIAogICAgICAgICAvKiBGbGlwIHNpZ24g
ZGVwZW5kaW5nIG9uIGRpdGhlciAqLwotICAgICAgICBpZiAoIE5TUS0+cmFuZF9zZWVkIDwgMCAp
IHsKLSAgICAgICAgICAgcl9RMTAgPSAtcl9RMTA7CisgICAgICAgIGlmKCBOU1EtPnJhbmRfc2Vl
ZCA8IDAgKSB7CisgICAgICAgICAgICByX1ExMCA9IC1yX1ExMDsKICAgICAgICAgfQogICAgICAg
ICByX1ExMCA9IHNpbGtfTElNSVRfMzIoIHJfUTEwLCAtKDMxIDw8IDEwKSwgMzAgPDwgMTAgKTsK
IAogICAgICAgICAvKiBGaW5kIHR3byBxdWFudGl6YXRpb24gbGV2ZWwgY2FuZGlkYXRlcyBhbmQg
bWVhc3VyZSB0aGVpciByYXRlLWRpc3RvcnRpb24gKi8KICAgICAgICAgcTFfUTEwID0gc2lsa19T
VUIzMiggcl9RMTAsIG9mZnNldF9RMTAgKTsKICAgICAgICAgcTFfUTAgPSBzaWxrX1JTSElGVCgg
cTFfUTEwLCAxMCApOworICAgICAgICBpZiAoTGFtYmRhX1ExMCA+IDIwNDgpIHsKKyAgICAgICAg
ICAgIC8qIEZvciBhZ2dyZXNzaXZlIFJETywgdGhlIGJpYXMgYmVjb21lcyBtb3JlIHRoYW4gb25l
IHB1bHNlLiAqLworICAgICAgICAgICAgaW50IHJkb19vZmZzZXQgPSBMYW1iZGFfUTEwLzIgLSA1
MTI7CisgICAgICAgICAgICBpZiAocTFfUTEwID4gcmRvX29mZnNldCkgeworICAgICAgICAgICAg
ICAgIHExX1EwID0gc2lsa19SU0hJRlQoIHExX1ExMCAtIHJkb19vZmZzZXQsIDEwICk7CisgICAg
ICAgICAgICB9IGVsc2UgaWYgKHExX1ExMCA8IC1yZG9fb2Zmc2V0KSB7CisgICAgICAgICAgICAg
ICAgcTFfUTAgPSBzaWxrX1JTSElGVCggcTFfUTEwICsgcmRvX29mZnNldCwgMTAgKTsKKyAgICAg
ICAgICAgIH0gZWxzZSBpZiAocTFfUTEwIDwgMCkgeworICAgICAgICAgICAgICAgIHExX1EwID0g
LTE7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHExX1EwID0gMDsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgfQogICAgICAgICBpZiggcTFfUTAgPiAwICkgewogICAgICAg
ICAgICAgcTFfUTEwICA9IHNpbGtfU1VCMzIoIHNpbGtfTFNISUZUKCBxMV9RMCwgMTAgKSwgUVVB
TlRfTEVWRUxfQURKVVNUX1ExMCApOwogICAgICAgICAgICAgcTFfUTEwICA9IHNpbGtfQUREMzIo
IHExX1ExMCwgb2Zmc2V0X1ExMCApOwpAQCAtMzM3LDcgKzM0OCw4IEBAIHZvaWQgc2lsa19ub2lz
ZV9zaGFwZV9xdWFudGl6ZXIoCiAgICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMgKi8KICAgICAgICAg
cHNMUENfUTE0Kys7CiAgICAgICAgICpwc0xQQ19RMTQgPSB4cV9RMTQ7Ci0gICAgICAgIHNMRl9B
Ul9zaHBfUTE0ID0gc2lsa19TVUJfTFNISUZUMzIoIHhxX1ExNCwgbl9BUl9RMTIsIDIgKTsKKyAg
ICAgICAgTlNRLT5zRGlmZl9zaHBfUTE0ID0gc2lsa19TVUJfTFNISUZUMzIoIHhxX1ExNCwgeF9z
Y19RMTBbIGkgXSwgNCApOworICAgICAgICBzTEZfQVJfc2hwX1ExNCA9IHNpbGtfU1VCX0xTSElG
VDMyKCBOU1EtPnNEaWZmX3NocF9RMTQsIG5fQVJfUTEyLCAyICk7CiAgICAgICAgIE5TUS0+c0xG
X0FSX3NocF9RMTQgPSBzTEZfQVJfc2hwX1ExNDsKIAogICAgICAgICBOU1EtPnNMVFBfc2hwX1Ex
NFsgTlNRLT5zTFRQX3NocF9idWZfaWR4IF0gPSBzaWxrX1NVQl9MU0hJRlQzMiggc0xGX0FSX3No
cF9RMTQsIG5fTEZfUTEyLCAyICk7CkBAIC0zNTYsNyArMzY4LDcgQEAgdm9pZCBzaWxrX25vaXNl
X3NoYXBlX3F1YW50aXplcigKIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX3NjYWxl
X3N0YXRlcygKICAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgKnBzRW5jQywgICAgICAgICAg
IC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNx
X3N0YXRlICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICB4X1EzW10sICAg
ICAgICAgICAgICAgICAvKiBJICAgIGlucHV0IGluIFEzICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludDE2ICAgIHgxNltdLCAgICAgICAgICAgICAgICAgIC8qIEkgICAg
aW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAg
ICAgeF9zY19RMTBbXSwgICAgICAgICAgICAgLyogTyAgICBpbnB1dCBzY2FsZWQgd2l0aCAxL0dh
aW4gICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICBzTFRQW10sICAgICAgICAgICAg
ICAgICAvKiBJICAgIHJlLXdoaXRlbmVkIExUUCBzdGF0ZSBpbiBRMCAgICAgKi8KICAgICBvcHVz
X2ludDMyICAgICAgICAgIHNMVFBfUTE1W10sICAgICAgICAgICAgIC8qIE8gICAgTFRQIHN0YXRl
IG1hdGNoaW5nIHNjYWxlZCBpbnB1dCAqLwpAQCAtMzY4LDI4ICszODAsMTggQEAgc3RhdGljIE9Q
VVNfSU5MSU5FIHZvaWQgc2lsa19uc3Ffc2NhbGVfc3RhdGVzKAogKQogewogICAgIG9wdXNfaW50
ICAgaSwgbGFnOwotICAgIG9wdXNfaW50MzIgZ2Fpbl9hZGpfUTE2LCBpbnZfZ2Fpbl9RMzEsIGlu
dl9nYWluX1EyMzsKKyAgICBvcHVzX2ludDMyIGdhaW5fYWRqX1ExNiwgaW52X2dhaW5fUTMxLCBp
bnZfZ2Fpbl9RMjY7CiAKICAgICBsYWcgICAgICAgICAgPSBwaXRjaExbIHN1YmZyIF07CiAgICAg
aW52X2dhaW5fUTMxID0gc2lsa19JTlZFUlNFMzJfdmFyUSggc2lsa19tYXgoIEdhaW5zX1ExNlsg
c3ViZnIgXSwgMSApLCA0NyApOwogICAgIHNpbGtfYXNzZXJ0KCBpbnZfZ2Fpbl9RMzEgIT0gMCAp
OwogCi0gICAgLyogQ2FsY3VsYXRlIGdhaW4gYWRqdXN0bWVudCBmYWN0b3IgKi8KLSAgICBpZigg
R2FpbnNfUTE2WyBzdWJmciBdICE9IE5TUS0+cHJldl9nYWluX1ExNiApIHsKLSAgICAgICAgZ2Fp
bl9hZGpfUTE2ID0gIHNpbGtfRElWMzJfdmFyUSggTlNRLT5wcmV2X2dhaW5fUTE2LCBHYWluc19R
MTZbIHN1YmZyIF0sIDE2ICk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgZ2Fpbl9hZGpfUTE2ID0g
KG9wdXNfaW50MzIpMSA8PCAxNjsKLSAgICB9Ci0KICAgICAvKiBTY2FsZSBpbnB1dCAqLwotICAg
IGludl9nYWluX1EyMyA9IHNpbGtfUlNISUZUX1JPVU5EKCBpbnZfZ2Fpbl9RMzEsIDggKTsKKyAg
ICBpbnZfZ2Fpbl9RMjYgPSBzaWxrX1JTSElGVF9ST1VORCggaW52X2dhaW5fUTMxLCA1ICk7CiAg
ICAgZm9yKCBpID0gMDsgaSA8IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOyBpKysgKSB7Ci0gICAgICAg
IHhfc2NfUTEwWyBpIF0gPSBzaWxrX1NNVUxXVyggeF9RM1sgaSBdLCBpbnZfZ2Fpbl9RMjMgKTsK
KyAgICAgICAgeF9zY19RMTBbIGkgXSA9IHNpbGtfU01VTFdXKCB4MTZbIGkgXSwgaW52X2dhaW5f
UTI2ICk7CiAgICAgfQogCi0gICAgLyogU2F2ZSBpbnZlcnNlIGdhaW4gKi8KLSAgICBOU1EtPnBy
ZXZfZ2Fpbl9RMTYgPSBHYWluc19RMTZbIHN1YmZyIF07Ci0KICAgICAvKiBBZnRlciByZXdoaXRl
bmluZyB0aGUgTFRQIHN0YXRlIGlzIHVuLXNjYWxlZCwgc28gc2NhbGUgd2l0aCBpbnZfZ2Fpbl9R
MTYgKi8KICAgICBpZiggTlNRLT5yZXdoaXRlX2ZsYWcgKSB7CiAgICAgICAgIGlmKCBzdWJmciA9
PSAwICkgewpAQCAtNDAzLDcgKzQwNSw5IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtf
bnNxX3NjYWxlX3N0YXRlcygKICAgICB9CiAKICAgICAvKiBBZGp1c3QgZm9yIGNoYW5naW5nIGdh
aW4gKi8KLSAgICBpZiggZ2Fpbl9hZGpfUTE2ICE9IChvcHVzX2ludDMyKTEgPDwgMTYgKSB7Cisg
ICAgaWYoIEdhaW5zX1ExNlsgc3ViZnIgXSAhPSBOU1EtPnByZXZfZ2Fpbl9RMTYgKSB7CisgICAg
ICAgIGdhaW5fYWRqX1ExNiA9ICBzaWxrX0RJVjMyX3ZhclEoIE5TUS0+cHJldl9nYWluX1ExNiwg
R2FpbnNfUTE2WyBzdWJmciBdLCAxNiApOworCiAgICAgICAgIC8qIFNjYWxlIGxvbmctdGVybSBz
aGFwaW5nIHN0YXRlICovCiAgICAgICAgIGZvciggaSA9IE5TUS0+c0xUUF9zaHBfYnVmX2lkeCAt
IHBzRW5jQy0+bHRwX21lbV9sZW5ndGg7IGkgPCBOU1EtPnNMVFBfc2hwX2J1Zl9pZHg7IGkrKyAp
IHsKICAgICAgICAgICAgIE5TUS0+c0xUUF9zaHBfUTE0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fp
bl9hZGpfUTE2LCBOU1EtPnNMVFBfc2hwX1ExNFsgaSBdICk7CkBAIC00MTcsNiArNDIxLDcgQEAg
c3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3Ffc2NhbGVfc3RhdGVzKAogICAgICAgICB9
CiAKICAgICAgICAgTlNRLT5zTEZfQVJfc2hwX1ExNCA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9R
MTYsIE5TUS0+c0xGX0FSX3NocF9RMTQgKTsKKyAgICAgICAgTlNRLT5zRGlmZl9zaHBfUTE0ID0g
c2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgTlNRLT5zRGlmZl9zaHBfUTE0ICk7CiAKICAgICAg
ICAgLyogU2NhbGUgc2hvcnQtdGVybSBwcmVkaWN0aW9uIGFuZCBzaGFwaW5nIHN0YXRlcyAqLwog
ICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTlNRX0xQQ19CVUZfTEVOR1RIOyBpKysgKSB7CkBAIC00
MjUsNSArNDMwLDggQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3Ffc2NhbGVfc3Rh
dGVzKAogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTUFYX1NIQVBFX0xQQ19PUkRFUjsgaSsrICkg
ewogICAgICAgICAgICAgTlNRLT5zQVIyX1ExNFsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fYWRq
X1ExNiwgTlNRLT5zQVIyX1ExNFsgaSBdICk7CiAgICAgICAgIH0KKworICAgICAgICAvKiBTYXZl
IGludmVyc2UgZ2FpbiAqLworICAgICAgICBOU1EtPnByZXZfZ2Fpbl9RMTYgPSBHYWluc19RMTZb
IHN1YmZyIF07CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05TUV9kZWxfZGVjLmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
TlNRX2RlbF9kZWMuYwppbmRleCBhYjZmZWVhYzk4NzAyYWJhYTU2ZTEyMDQzYTU1ZTlhMjVmOTZk
ZmZjLi41OTllMjVmMWM4YmJmM2NiYTk4OGY2NjBhNjEwNjRhODY2NWU2YjY3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvTlNRX2RlbF9kZWMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTlNRX2RlbF9kZWMuYwpAQCAtNDMsNiArNDMs
NyBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1c19pbnQzMiBTaGFwZV9RMTRbIERFQ0lTSU9O
X0RFTEFZIF07CiAgICAgb3B1c19pbnQzMiBzQVIyX1ExNFsgTUFYX1NIQVBFX0xQQ19PUkRFUiBd
OwogICAgIG9wdXNfaW50MzIgTEZfQVJfUTE0OworICAgIG9wdXNfaW50MzIgRGlmZl9RMTQ7CiAg
ICAgb3B1c19pbnQzMiBTZWVkOwogICAgIG9wdXNfaW50MzIgU2VlZEluaXQ7CiAgICAgb3B1c19p
bnQzMiBSRF9RMTA7CkBAIC01Myw2ICs1NCw3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBvcHVz
X2ludDMyIFJEX1ExMDsKICAgICBvcHVzX2ludDMyIHhxX1ExNDsKICAgICBvcHVzX2ludDMyIExG
X0FSX1ExNDsKKyAgICBvcHVzX2ludDMyIERpZmZfUTE0OwogICAgIG9wdXNfaW50MzIgc0xUUF9z
aHBfUTE0OwogICAgIG9wdXNfaW50MzIgTFBDX2V4Y19RMTQ7CiB9IE5TUV9zYW1wbGVfc3RydWN0
OwpAQCAtNjYsNyArNjgsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9kZWxf
ZGVjX3NjYWxlX3N0YXRlcygKICAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgKnBzRW5jQywg
ICAgICAgICAgICAgICAvKiBJICAgIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAg
LyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIE5TUV9k
ZWxfZGVjX3N0cnVjdCAgcHNEZWxEZWNbXSwgICAgICAgICAgICAgICAgIC8qIEkvTyAgRGVsYXll
ZCBkZWNpc2lvbiBzdGF0ZXMgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAg
IHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IGluIFEzICAgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICB4MTZbXSwgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgeF9zY19RMTBbXSwgICAgICAgICAgICAgICAg
IC8qIE8gICAgSW5wdXQgc2NhbGVkIHdpdGggMS9HYWluIGluIFExMCAgICAgKi8KICAgICBjb25z
dCBvcHVzX2ludDE2ICAgIHNMVFBbXSwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJlLXdo
aXRlbmVkIExUUCBzdGF0ZSBpbiBRMCAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAg
ICBzTFRQX1ExNVtdLCAgICAgICAgICAgICAgICAgLyogTyAgICBMVFAgc3RhdGUgbWF0Y2hpbmcg
c2NhbGVkIGlucHV0ICAgICAqLwpAQCAtMTA3LDIwICsxMDksMjAgQEAgc3RhdGljIE9QVVNfSU5M
SU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlYygKICAgICBvcHVzX2lu
dCAgICAgICAgICAgIHByZWRpY3RMUENPcmRlciwgICAgICAgIC8qIEkgICAgUHJlZGljdGlvbiBm
aWx0ZXIgb3JkZXIgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgIHdhcnBp
bmdfUTE2LCAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgIG5TdGF0ZXNEZWxheWVkRGVjaXNpb24s
IC8qIEkgICAgTnVtYmVyIG9mIHN0YXRlcyBpbiBkZWNpc2lvbiB0cmVlICAgKi8KLSAgICBvcHVz
X2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkgICAgSW5kZXggdG8g
bmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICpz
bXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkvTyAgSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4g
YnVmZmVycyAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgIGRlY2lzaW9uRGVsYXksICAgICAg
ICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBp
bnQgICAgICAgICAgICAgICAgIGFyY2ggICAgICAgICAgICAgICAgICAgIC8qIEkgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKIHZvaWQgc2lsa19OU1FfZGVs
X2RlY19jKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAg
ICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNR
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRl
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAg
ICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVh
bnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAg
ICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgICAgICAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19p
bnQ4ICAgICAgICAgICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogTyAgICBRdWFudGl6ZWQgcHVsc2Ugc2lnbmFsICAgICAgICAgICovCiAgICAg
Y29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIFByZWRDb2VmX1ExMlsgMiAqIE1BWF9MUENfT1JE
RVIgXSwgICAgICAgICAgLyogSSAgICBTaG9ydCB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICov
CiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIExUUENvZWZfUTE0WyBMVFBfT1JERVIg
KiBNQVhfTkJfU1VCRlIgXSwgICAgLyogSSAgICBMb25nIHRlcm0gcHJlZGljdGlvbiBjb2VmcyAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFSMl9RMTNbIE1BWF9OQl9T
VUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSBOb2lzZSBzaGFwaW5nIGNvZWZzICAg
ICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFSX1ExM1sgTUFY
X05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAvKiBJIE5vaXNlIHNoYXBpbmcgY29l
ZnMgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIEhhcm1T
aGFwZUdhaW5fUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgLyogSSAgICBMb25nIHRlcm0g
c2hhcGluZyBjb2VmcyAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAg
IFRpbHRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAgLyogSSAgICBTcGVj
dHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAg
ICAgICAgIExGX3NocF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgLyogSSAg
ICBMb3cgZnJlcXVlbmN5IHNoYXBpbmcgY29lZnMgICAgICovCkBAIC0xNTksNiArMTYxLDcgQEAg
dm9pZCBzaWxrX05TUV9kZWxfZGVjX2MoCiAgICAgICAgIHBzREQtPlNlZWRJbml0ICAgICAgID0g
cHNERC0+U2VlZDsKICAgICAgICAgcHNERC0+UkRfUTEwICAgICAgICAgPSAwOwogICAgICAgICBw
c0RELT5MRl9BUl9RMTQgICAgICA9IE5TUS0+c0xGX0FSX3NocF9RMTQ7CisgICAgICAgIHBzREQt
PkRpZmZfUTE0ICAgICAgID0gTlNRLT5zRGlmZl9zaHBfUTE0OwogICAgICAgICBwc0RELT5TaGFw
ZV9RMTRbIDAgXSA9IE5TUS0+c0xUUF9zaHBfUTE0WyBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoIC0g
MSBdOwogICAgICAgICBzaWxrX21lbWNweSggcHNERC0+c0xQQ19RMTQsIE5TUS0+c0xQQ19RMTQs
IE5TUV9MUENfQlVGX0xFTkdUSCAqIHNpemVvZiggb3B1c19pbnQzMiApICk7CiAgICAgICAgIHNp
bGtfbWVtY3B5KCBwc0RELT5zQVIyX1ExNCwgTlNRLT5zQVIyX1ExNCwgc2l6ZW9mKCBOU1EtPnNB
UjJfUTE0ICkgKTsKQEAgLTE4Niw4ICsxODksNyBAQCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfYygK
ICAgICAgICAgTFNGX2ludGVycG9sYXRpb25fZmxhZyA9IDE7CiAgICAgfQogCi0gICAgQUxMT0Mo
IHNMVFBfUTE1LAotICAgICAgICAgICBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsgcHNFbmNDLT5m
cmFtZV9sZW5ndGgsIG9wdXNfaW50MzIgKTsKKyAgICBBTExPQyggc0xUUF9RMTUsIHBzRW5jQy0+
bHRwX21lbV9sZW5ndGggKyBwc0VuY0MtPmZyYW1lX2xlbmd0aCwgb3B1c19pbnQzMiApOwogICAg
IEFMTE9DKCBzTFRQLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsgcHNFbmNDLT5mcmFtZV9sZW5n
dGgsIG9wdXNfaW50MTYgKTsKICAgICBBTExPQyggeF9zY19RMTAsIHBzRW5jQy0+c3ViZnJfbGVu
Z3RoLCBvcHVzX2ludDMyICk7CiAgICAgQUxMT0MoIGRlbGF5ZWRHYWluX1ExMCwgREVDSVNJT05f
REVMQVksIG9wdXNfaW50MzIgKTsKQEAgLTE5OSw3ICsyMDEsNyBAQCB2b2lkIHNpbGtfTlNRX2Rl
bF9kZWNfYygKICAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmNDLT5uYl9zdWJmcjsgaysrICkgewog
ICAgICAgICBBX1ExMiAgICAgID0gJlByZWRDb2VmX1ExMlsgKCAoIGsgPj4gMSApIHwgKCAxIC0g
TFNGX2ludGVycG9sYXRpb25fZmxhZyApICkgKiBNQVhfTFBDX09SREVSIF07CiAgICAgICAgIEJf
UTE0ICAgICAgPSAmTFRQQ29lZl9RMTRbIGsgKiBMVFBfT1JERVIgICAgICAgICAgIF07Ci0gICAg
ICAgIEFSX3NocF9RMTMgPSAmQVIyX1ExM1sgICAgIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07
CisgICAgICAgIEFSX3NocF9RMTMgPSAmQVJfUTEzWyAgICAgayAqIE1BWF9TSEFQRV9MUENfT1JE
RVIgXTsKIAogICAgICAgICAvKiBOb2lzZSBzaGFwZSBwYXJhbWV0ZXJzICovCiAgICAgICAgIHNp
bGtfYXNzZXJ0KCBIYXJtU2hhcGVHYWluX1ExNFsgayBdID49IDAgKTsKQEAgLTIzNSw3ICsyMzcs
OCBAQCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfYygKICAgICAgICAgICAgICAgICAgICAgcHNERCA9
ICZwc0RlbERlY1sgV2lubmVyX2luZCBdOwogICAgICAgICAgICAgICAgICAgICBsYXN0X3NtcGxl
X2lkeCA9IHNtcGxfYnVmX2lkeCArIGRlY2lzaW9uRGVsYXk7CiAgICAgICAgICAgICAgICAgICAg
IGZvciggaSA9IDA7IGkgPCBkZWNpc2lvbkRlbGF5OyBpKysgKSB7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICBsYXN0X3NtcGxlX2lkeCA9ICggbGFzdF9zbXBsZV9pZHggLSAxICkgJiBERUNJU0lP
Tl9ERUxBWV9NQVNLOworICAgICAgICAgICAgICAgICAgICAgICAgbGFzdF9zbXBsZV9pZHggPSAo
IGxhc3Rfc21wbGVfaWR4IC0gMSApICUgREVDSVNJT05fREVMQVk7CisgICAgICAgICAgICAgICAg
ICAgICAgICBpZiggbGFzdF9zbXBsZV9pZHggPCAwICkgbGFzdF9zbXBsZV9pZHggKz0gREVDSVNJ
T05fREVMQVk7CiAgICAgICAgICAgICAgICAgICAgICAgICBwdWxzZXNbICAgaSAtIGRlY2lzaW9u
RGVsYXkgXSA9IChvcHVzX2ludDgpc2lsa19SU0hJRlRfUk9VTkQoIHBzREQtPlFfUTEwWyBsYXN0
X3NtcGxlX2lkeCBdLCAxMCApOwogICAgICAgICAgICAgICAgICAgICAgICAgcHhxWyBpIC0gZGVj
aXNpb25EZWxheSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQo
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2lsa19TTVVMV1coIHBzREQtPlhxX1ExNFsg
bGFzdF9zbXBsZV9pZHggXSwgR2FpbnNfUTE2WyAxIF0gKSwgMTQgKSApOwpAQCAtMjU3LDcgKzI2
MCw3IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAogICAgICAgICAgICAgfQogICAgICAgICB9
CiAKLSAgICAgICAgc2lsa19uc3FfZGVsX2RlY19zY2FsZV9zdGF0ZXMoIHBzRW5jQywgTlNRLCBw
c0RlbERlYywgeF9RMywgeF9zY19RMTAsIHNMVFAsIHNMVFBfUTE1LCBrLAorICAgICAgICBzaWxr
X25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlcyggcHNFbmNDLCBOU1EsIHBzRGVsRGVjLCB4MTYsIHhf
c2NfUTEwLCBzTFRQLCBzTFRQX1ExNSwgaywKICAgICAgICAgICAgIHBzRW5jQy0+blN0YXRlc0Rl
bGF5ZWREZWNpc2lvbiwgTFRQX3NjYWxlX1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIHBzSW5kaWNl
cy0+c2lnbmFsVHlwZSwgZGVjaXNpb25EZWxheSApOwogCiAgICAgICAgIHNpbGtfbm9pc2Vfc2hh
cGVfcXVhbnRpemVyX2RlbF9kZWMoIE5TUSwgcHNEZWxEZWMsIHBzSW5kaWNlcy0+c2lnbmFsVHlw
ZSwgeF9zY19RMTAsIHB1bHNlcywgcHhxLCBzTFRQX1ExNSwKQEAgLTI2NSw3ICsyNjgsNyBAQCB2
b2lkIHNpbGtfTlNRX2RlbF9kZWNfYygKICAgICAgICAgICAgIEdhaW5zX1ExNlsgayBdLCBMYW1i
ZGFfUTEwLCBvZmZzZXRfUTEwLCBwc0VuY0MtPnN1YmZyX2xlbmd0aCwgc3ViZnIrKywgcHNFbmND
LT5zaGFwaW5nTFBDT3JkZXIsCiAgICAgICAgICAgICBwc0VuY0MtPnByZWRpY3RMUENPcmRlciwg
cHNFbmNDLT53YXJwaW5nX1ExNiwgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lzaW9uLCAmc21w
bF9idWZfaWR4LCBkZWNpc2lvbkRlbGF5LCBwc0VuY0MtPmFyY2ggKTsKIAotICAgICAgICB4X1Ez
ICAgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7CisgICAgICAgIHgxNiAgICArPSBwc0VuY0MtPnN1
YmZyX2xlbmd0aDsKICAgICAgICAgcHVsc2VzICs9IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOwogICAg
ICAgICBweHEgICAgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7CiAgICAgfQpAQCAtMjg2LDcgKzI4
OSw5IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAogICAgIGxhc3Rfc21wbGVfaWR4ID0gc21w
bF9idWZfaWR4ICsgZGVjaXNpb25EZWxheTsKICAgICBHYWluX1ExMCA9IHNpbGtfUlNISUZUMzIo
IEdhaW5zX1ExNlsgcHNFbmNDLT5uYl9zdWJmciAtIDEgXSwgNiApOwogICAgIGZvciggaSA9IDA7
IGkgPCBkZWNpc2lvbkRlbGF5OyBpKysgKSB7Ci0gICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCBs
YXN0X3NtcGxlX2lkeCAtIDEgKSAmIERFQ0lTSU9OX0RFTEFZX01BU0s7CisgICAgICAgIGxhc3Rf
c21wbGVfaWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAlIERFQ0lTSU9OX0RFTEFZOworICAg
ICAgICBpZiggbGFzdF9zbXBsZV9pZHggPCAwICkgbGFzdF9zbXBsZV9pZHggKz0gREVDSVNJT05f
REVMQVk7CisKICAgICAgICAgcHVsc2VzWyAgIGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19p
bnQ4KXNpbGtfUlNISUZUX1JPVU5EKCBwc0RELT5RX1ExMFsgbGFzdF9zbXBsZV9pZHggXSwgMTAg
KTsKICAgICAgICAgcHhxWyBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50MTYpc2lsa19T
QVQxNiggc2lsa19SU0hJRlRfUk9VTkQoCiAgICAgICAgICAgICBzaWxrX1NNVUxXVyggcHNERC0+
WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCBdLCBHYWluX1ExMCApLCA4ICkgKTsKQEAgLTI5NywxMCAr
MzAyLDEwIEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAogCiAgICAgLyogVXBkYXRlIHN0YXRl
cyAqLwogICAgIE5TUS0+c0xGX0FSX3NocF9RMTQgPSBwc0RELT5MRl9BUl9RMTQ7CisgICAgTlNR
LT5zRGlmZl9zaHBfUTE0ICA9IHBzREQtPkRpZmZfUTE0OwogICAgIE5TUS0+bGFnUHJldiAgICAg
ICAgPSBwaXRjaExbIHBzRW5jQy0+bmJfc3ViZnIgLSAxIF07CiAKICAgICAvKiBTYXZlIHF1YW50
aXplZCBzcGVlY2ggc2lnbmFsICovCi0gICAgLyogREVCVUdfU1RPUkVfREFUQSggZW5jLnBjbSwg
Jk5TUS0+eHFbcHNFbmNDLT5sdHBfbWVtX2xlbmd0aF0sIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoICog
c2l6ZW9mKCBvcHVzX2ludDE2ICkgKSAqLwogICAgIHNpbGtfbWVtbW92ZSggTlNRLT54cSwgICAg
ICAgICAgICZOU1EtPnhxWyAgICAgICAgICAgcHNFbmNDLT5mcmFtZV9sZW5ndGggXSwgcHNFbmND
LT5sdHBfbWVtX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CiAgICAgc2lsa19tZW1t
b3ZlKCBOU1EtPnNMVFBfc2hwX1ExNCwgJk5TUS0+c0xUUF9zaHBfUTE0WyBwc0VuY0MtPmZyYW1l
X2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDMyICkg
KTsKICAgICBSRVNUT1JFX1NUQUNLOwpAQCAtMzM1LDcgKzM0MCw3IEBAIHN0YXRpYyBPUFVTX0lO
TElORSB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWMoCiAgICAgb3B1c19p
bnQgICAgICAgICAgICBwcmVkaWN0TFBDT3JkZXIsICAgICAgICAvKiBJICAgIFByZWRpY3Rpb24g
ZmlsdGVyIG9yZGVyICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICB3YXJw
aW5nX1ExNiwgICAgICAgICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICBuU3RhdGVzRGVsYXllZERlY2lzaW9u
LCAvKiBJICAgIE51bWJlciBvZiBzdGF0ZXMgaW4gZGVjaXNpb24gdHJlZSAgICovCi0gICAgb3B1
c19pbnQgICAgICAgICAgICAqc21wbF9idWZfaWR4LCAgICAgICAgICAvKiBJICAgIEluZGV4IHRv
IG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZlcnMgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAq
c21wbF9idWZfaWR4LCAgICAgICAgICAvKiBJL08gIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGlu
IGJ1ZmZlcnMgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICBkZWNpc2lvbkRlbGF5LCAgICAg
ICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAg
aW50ICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAvKiBJICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCkBAIC0zODksNyArMzk0LDcgQEAg
c3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2Rl
YygKICAgICAgICAgLyogTG9uZy10ZXJtIHNoYXBpbmcgKi8KICAgICAgICAgaWYoIGxhZyA+IDAg
KSB7CiAgICAgICAgICAgICAvKiBTeW1tZXRyaWMsIHBhY2tlZCBGSVIgY29lZmZpY2llbnRzICov
Ci0gICAgICAgICAgICBuX0xUUF9RMTQgPSBzaWxrX1NNVUxXQiggc2lsa19BREQzMiggc2hwX2xh
Z19wdHJbIDAgXSwgc2hwX2xhZ19wdHJbIC0yIF0gKSwgSGFybVNoYXBlRklSUGFja2VkX1ExNCAp
OworICAgICAgICAgICAgbl9MVFBfUTE0ID0gc2lsa19TTVVMV0IoIHNpbGtfQUREX1NBVDMyKCBz
aHBfbGFnX3B0clsgMCBdLCBzaHBfbGFnX3B0clsgLTIgXSApLCBIYXJtU2hhcGVGSVJQYWNrZWRf
UTE0ICk7CiAgICAgICAgICAgICBuX0xUUF9RMTQgPSBzaWxrX1NNTEFXVCggbl9MVFBfUTE0LCBz
aHBfbGFnX3B0clsgLTEgXSwgICAgICAgICAgICAgICAgICAgICAgSGFybVNoYXBlRklSUGFja2Vk
X1ExNCApOwogICAgICAgICAgICAgbl9MVFBfUTE0ID0gc2lsa19TVUJfTFNISUZUMzIoIExUUF9w
cmVkX1ExNCwgbl9MVFBfUTE0LCAyICk7ICAgICAgICAgICAgLyogUTEyIC0+IFExNCAqLwogICAg
ICAgICAgICAgc2hwX2xhZ19wdHIrKzsKQEAgLTQxNiw3ICs0MjEsNyBAQCBzdGF0aWMgT1BVU19J
TkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgICAgICAg
ICAgLyogTm9pc2Ugc2hhcGUgZmVlZGJhY2sgKi8KICAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCAo
IHNoYXBpbmdMUENPcmRlciAmIDEgKSA9PSAwICk7ICAgLyogY2hlY2sgdGhhdCBvcmRlciBpcyBl
dmVuICovCiAgICAgICAgICAgICAvKiBPdXRwdXQgb2YgbG93cGFzcyBzZWN0aW9uICovCi0gICAg
ICAgICAgICB0bXAyID0gc2lsa19TTUxBV0IoIHBzTFBDX1ExNFsgMCBdLCBwc0RELT5zQVIyX1Ex
NFsgMCBdLCB3YXJwaW5nX1ExNiApOworICAgICAgICAgICAgdG1wMiA9IHNpbGtfU01MQVdCKCBw
c0RELT5EaWZmX1ExNCwgcHNERC0+c0FSMl9RMTRbIDAgXSwgd2FycGluZ19RMTYgKTsKICAgICAg
ICAgICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNlY3Rpb24gKi8KICAgICAgICAgICAgIHRtcDEg
PSBzaWxrX1NNTEFXQiggcHNERC0+c0FSMl9RMTRbIDAgXSwgcHNERC0+c0FSMl9RMTRbIDEgXSAt
IHRtcDIsIHdhcnBpbmdfUTE2ICk7CiAgICAgICAgICAgICBwc0RELT5zQVIyX1ExNFsgMCBdID0g
dG1wMjsKQEAgLTQ2Miw2ICs0NjcsMTkgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19u
b2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlYygKICAgICAgICAgICAgIC8qIEZpbmQgdHdvIHF1
YW50aXphdGlvbiBsZXZlbCBjYW5kaWRhdGVzIGFuZCBtZWFzdXJlIHRoZWlyIHJhdGUtZGlzdG9y
dGlvbiAqLwogICAgICAgICAgICAgcTFfUTEwID0gc2lsa19TVUIzMiggcl9RMTAsIG9mZnNldF9R
MTAgKTsKICAgICAgICAgICAgIHExX1EwID0gc2lsa19SU0hJRlQoIHExX1ExMCwgMTAgKTsKKyAg
ICAgICAgICAgIGlmIChMYW1iZGFfUTEwID4gMjA0OCkgeworICAgICAgICAgICAgICAgIC8qIEZv
ciBhZ2dyZXNzaXZlIFJETywgdGhlIGJpYXMgYmVjb21lcyBtb3JlIHRoYW4gb25lIHB1bHNlLiAq
LworICAgICAgICAgICAgICAgIGludCByZG9fb2Zmc2V0ID0gTGFtYmRhX1ExMC8yIC0gNTEyOwor
ICAgICAgICAgICAgICAgIGlmIChxMV9RMTAgPiByZG9fb2Zmc2V0KSB7CisgICAgICAgICAgICAg
ICAgICAgIHExX1EwID0gc2lsa19SU0hJRlQoIHExX1ExMCAtIHJkb19vZmZzZXQsIDEwICk7Cisg
ICAgICAgICAgICAgICAgfSBlbHNlIGlmIChxMV9RMTAgPCAtcmRvX29mZnNldCkgeworICAgICAg
ICAgICAgICAgICAgICBxMV9RMCA9IHNpbGtfUlNISUZUKCBxMV9RMTAgKyByZG9fb2Zmc2V0LCAx
MCApOworICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocTFfUTEwIDwgMCkgeworICAgICAgICAg
ICAgICAgICAgICBxMV9RMCA9IC0xOworICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICAgICAgICAgIHExX1EwID0gMDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9
CiAgICAgICAgICAgICBpZiggcTFfUTAgPiAwICkgewogICAgICAgICAgICAgICAgIHExX1ExMCAg
PSBzaWxrX1NVQjMyKCBzaWxrX0xTSElGVCggcTFfUTAsIDEwICksIFFVQU5UX0xFVkVMX0FESlVT
VF9RMTAgKTsKICAgICAgICAgICAgICAgICBxMV9RMTAgID0gc2lsa19BREQzMiggcTFfUTEwLCBv
ZmZzZXRfUTEwICk7CkBAIC01MTUsNyArNTMzLDggQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlYygKICAgICAgICAgICAgIHhxX1ExNCAg
ICAgID0gc2lsa19BREQzMiggTFBDX2V4Y19RMTQsIExQQ19wcmVkX1ExNCApOwogCiAgICAgICAg
ICAgICAvKiBVcGRhdGUgc3RhdGVzICovCi0gICAgICAgICAgICBzTEZfQVJfc2hwX1ExNCAgICAg
ICAgID0gc2lsa19TVUIzMiggeHFfUTE0LCBuX0FSX1ExNCApOworICAgICAgICAgICAgcHNTU1sg
MCBdLkRpZmZfUTE0ICAgICA9IHNpbGtfU1VCX0xTSElGVDMyKCB4cV9RMTQsIHhfUTEwWyBpIF0s
IDQgKTsKKyAgICAgICAgICAgIHNMRl9BUl9zaHBfUTE0ICAgICAgICAgPSBzaWxrX1NVQjMyKCBw
c1NTWyAwIF0uRGlmZl9RMTQsIG5fQVJfUTE0ICk7CiAgICAgICAgICAgICBwc1NTWyAwIF0uc0xU
UF9zaHBfUTE0ID0gc2lsa19TVUIzMiggc0xGX0FSX3NocF9RMTQsIG5fTEZfUTE0ICk7CiAgICAg
ICAgICAgICBwc1NTWyAwIF0uTEZfQVJfUTE0ICAgID0gc0xGX0FSX3NocF9RMTQ7CiAgICAgICAg
ICAgICBwc1NTWyAwIF0uTFBDX2V4Y19RMTQgID0gTFBDX2V4Y19RMTQ7CkBAIC01MjksMjEgKzU0
OCwyMiBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXpl
cl9kZWxfZGVjKAogICAgICAgICAgICAgICAgIGV4Y19RMTQgPSAtZXhjX1ExNDsKICAgICAgICAg
ICAgIH0KIAotCiAgICAgICAgICAgICAvKiBBZGQgcHJlZGljdGlvbnMgKi8KICAgICAgICAgICAg
IExQQ19leGNfUTE0ID0gc2lsa19BREQzMiggZXhjX1ExNCwgTFRQX3ByZWRfUTE0ICk7CiAgICAg
ICAgICAgICB4cV9RMTQgICAgICA9IHNpbGtfQUREMzIoIExQQ19leGNfUTE0LCBMUENfcHJlZF9R
MTQgKTsKIAogICAgICAgICAgICAgLyogVXBkYXRlIHN0YXRlcyAqLwotICAgICAgICAgICAgc0xG
X0FSX3NocF9RMTQgICAgICAgICA9IHNpbGtfU1VCMzIoIHhxX1ExNCwgbl9BUl9RMTQgKTsKKyAg
ICAgICAgICAgIHBzU1NbIDEgXS5EaWZmX1ExNCAgICAgPSBzaWxrX1NVQl9MU0hJRlQzMiggeHFf
UTE0LCB4X1ExMFsgaSBdLCA0ICk7CisgICAgICAgICAgICBzTEZfQVJfc2hwX1ExNCAgICAgICAg
ID0gc2lsa19TVUIzMiggcHNTU1sgMSBdLkRpZmZfUTE0LCBuX0FSX1ExNCApOwogICAgICAgICAg
ICAgcHNTU1sgMSBdLnNMVFBfc2hwX1ExNCA9IHNpbGtfU1VCMzIoIHNMRl9BUl9zaHBfUTE0LCBu
X0xGX1ExNCApOwogICAgICAgICAgICAgcHNTU1sgMSBdLkxGX0FSX1ExNCAgICA9IHNMRl9BUl9z
aHBfUTE0OwogICAgICAgICAgICAgcHNTU1sgMSBdLkxQQ19leGNfUTE0ICA9IExQQ19leGNfUTE0
OwogICAgICAgICAgICAgcHNTU1sgMSBdLnhxX1ExNCAgICAgICA9IHhxX1ExNDsKICAgICAgICAg
fQogCi0gICAgICAgICpzbXBsX2J1Zl9pZHggID0gKCAqc21wbF9idWZfaWR4IC0gMSApICYgREVD
SVNJT05fREVMQVlfTUFTSzsgICAgICAgICAgICAgICAgICAgLyogSW5kZXggdG8gbmV3ZXN0IHNh
bXBsZXMgICAgICAgICAgICAgICovCi0gICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCAqc21wbF9i
dWZfaWR4ICsgZGVjaXNpb25EZWxheSApICYgREVDSVNJT05fREVMQVlfTUFTSzsgICAgICAgLyog
SW5kZXggdG8gZGVjaXNpb25EZWxheSBvbGQgc2FtcGxlcyAgICovCisgICAgICAgICpzbXBsX2J1
Zl9pZHggID0gKCAqc21wbF9idWZfaWR4IC0gMSApICUgREVDSVNJT05fREVMQVk7CisgICAgICAg
IGlmKCAqc21wbF9idWZfaWR4IDwgMCApICpzbXBsX2J1Zl9pZHggKz0gREVDSVNJT05fREVMQVk7
CisgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCAqc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxh
eSApICUgREVDSVNJT05fREVMQVk7CiAKICAgICAgICAgLyogRmluZCB3aW5uZXIgKi8KICAgICAg
ICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0ZVsgMCBdWyAwIF0uUkRfUTEwOwpAQCAtNjA3LDYg
KzYyNyw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRp
emVyX2RlbF9kZWMoCiAgICAgICAgICAgICBwc0REICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgID0gJnBzRGVsRGVjWyBrIF07CiAgICAgICAgICAgICBwc1NTICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgID0gJnBzU2FtcGxlU3RhdGVbIGsgXVsgMCBdOwogICAg
ICAgICAgICAgcHNERC0+TEZfQVJfUTE0ICAgICAgICAgICAgICAgICAgICAgICAgICA9IHBzU1Mt
PkxGX0FSX1ExNDsKKyAgICAgICAgICAgIHBzREQtPkRpZmZfUTE0ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPSBwc1NTLT5EaWZmX1ExNDsKICAgICAgICAgICAgIHBzREQtPnNMUENfUTE0WyBO
U1FfTFBDX0JVRl9MRU5HVEggKyBpIF0gPSBwc1NTLT54cV9RMTQ7CiAgICAgICAgICAgICBwc0RE
LT5YcV9RMTRbICAgICpzbXBsX2J1Zl9pZHggXSAgICAgICAgID0gcHNTUy0+eHFfUTE0OwogICAg
ICAgICAgICAgcHNERC0+UV9RMTBbICAgICAqc21wbF9idWZfaWR4IF0gICAgICAgICA9IHBzU1Mt
PlFfUTEwOwpAQCAtNjMxLDcgKzY1Miw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtf
bnNxX2RlbF9kZWNfc2NhbGVfc3RhdGVzKAogICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAq
cHNFbmNDLCAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAg
ICAgICAgICAgKi8KICAgICBzaWxrX25zcV9zdGF0ZSAgICAgICpOU1EsICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgTlNRX2RlbF9kZWNfc3RydWN0ICBwc0RlbERlY1tdLCAgICAgICAgICAgICAgICAgLyogSS9P
ICBEZWxheWVkIGRlY2lzaW9uIHN0YXRlcyAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNf
aW50MzIgICAgeF9RM1tdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgaW4gUTMg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIHgxNltd
LCAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICB4X3NjX1ExMFtdLCAgICAgICAg
ICAgICAgICAgLyogTyAgICBJbnB1dCBzY2FsZWQgd2l0aCAxL0dhaW4gaW4gUTEwICAgICAqLwog
ICAgIGNvbnN0IG9wdXNfaW50MTYgICAgc0xUUFtdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgUmUtd2hpdGVuZWQgTFRQIHN0YXRlIGluIFEwICAgICAgICAgKi8KICAgICBvcHVzX2ludDMy
ICAgICAgICAgIHNMVFBfUTE1W10sICAgICAgICAgICAgICAgICAvKiBPICAgIExUUCBzdGF0ZSBt
YXRjaGluZyBzY2FsZWQgaW5wdXQgICAgICovCkBAIC02NDUsMjkgKzY2NiwxOSBAQCBzdGF0aWMg
T1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlcygKICkKIHsKICAg
ICBvcHVzX2ludCAgICAgICAgICAgIGksIGssIGxhZzsKLSAgICBvcHVzX2ludDMyICAgICAgICAg
IGdhaW5fYWRqX1ExNiwgaW52X2dhaW5fUTMxLCBpbnZfZ2Fpbl9RMjM7CisgICAgb3B1c19pbnQz
MiAgICAgICAgICBnYWluX2Fkal9RMTYsIGludl9nYWluX1EzMSwgaW52X2dhaW5fUTI2OwogICAg
IE5TUV9kZWxfZGVjX3N0cnVjdCAgKnBzREQ7CiAKICAgICBsYWcgICAgICAgICAgPSBwaXRjaExb
IHN1YmZyIF07CiAgICAgaW52X2dhaW5fUTMxID0gc2lsa19JTlZFUlNFMzJfdmFyUSggc2lsa19t
YXgoIEdhaW5zX1ExNlsgc3ViZnIgXSwgMSApLCA0NyApOwogICAgIHNpbGtfYXNzZXJ0KCBpbnZf
Z2Fpbl9RMzEgIT0gMCApOwogCi0gICAgLyogQ2FsY3VsYXRlIGdhaW4gYWRqdXN0bWVudCBmYWN0
b3IgKi8KLSAgICBpZiggR2FpbnNfUTE2WyBzdWJmciBdICE9IE5TUS0+cHJldl9nYWluX1ExNiAp
IHsKLSAgICAgICAgZ2Fpbl9hZGpfUTE2ID0gIHNpbGtfRElWMzJfdmFyUSggTlNRLT5wcmV2X2dh
aW5fUTE2LCBHYWluc19RMTZbIHN1YmZyIF0sIDE2ICk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAg
Z2Fpbl9hZGpfUTE2ID0gKG9wdXNfaW50MzIpMSA8PCAxNjsKLSAgICB9Ci0KICAgICAvKiBTY2Fs
ZSBpbnB1dCAqLwotICAgIGludl9nYWluX1EyMyA9IHNpbGtfUlNISUZUX1JPVU5EKCBpbnZfZ2Fp
bl9RMzEsIDggKTsKKyAgICBpbnZfZ2Fpbl9RMjYgPSBzaWxrX1JTSElGVF9ST1VORCggaW52X2dh
aW5fUTMxLCA1ICk7CiAgICAgZm9yKCBpID0gMDsgaSA8IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOyBp
KysgKSB7Ci0gICAgICAgIHhfc2NfUTEwWyBpIF0gPSBzaWxrX1NNVUxXVyggeF9RM1sgaSBdLCBp
bnZfZ2Fpbl9RMjMgKTsKKyAgICAgICAgeF9zY19RMTBbIGkgXSA9IHNpbGtfU01VTFdXKCB4MTZb
IGkgXSwgaW52X2dhaW5fUTI2ICk7CiAgICAgfQogCi0gICAgLyogU2F2ZSBpbnZlcnNlIGdhaW4g
Ki8KLSAgICBOU1EtPnByZXZfZ2Fpbl9RMTYgPSBHYWluc19RMTZbIHN1YmZyIF07Ci0KICAgICAv
KiBBZnRlciByZXdoaXRlbmluZyB0aGUgTFRQIHN0YXRlIGlzIHVuLXNjYWxlZCwgc28gc2NhbGUg
d2l0aCBpbnZfZ2Fpbl9RMTYgKi8KICAgICBpZiggTlNRLT5yZXdoaXRlX2ZsYWcgKSB7CiAgICAg
ICAgIGlmKCBzdWJmciA9PSAwICkgewpAQCAtNjgxLDcgKzY5Miw5IEBAIHN0YXRpYyBPUFVTX0lO
TElORSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVfc3RhdGVzKAogICAgIH0KIAogICAgIC8q
IEFkanVzdCBmb3IgY2hhbmdpbmcgZ2FpbiAqLwotICAgIGlmKCBnYWluX2Fkal9RMTYgIT0gKG9w
dXNfaW50MzIpMSA8PCAxNiApIHsKKyAgICBpZiggR2FpbnNfUTE2WyBzdWJmciBdICE9IE5TUS0+
cHJldl9nYWluX1ExNiApIHsKKyAgICAgICAgZ2Fpbl9hZGpfUTE2ID0gIHNpbGtfRElWMzJfdmFy
USggTlNRLT5wcmV2X2dhaW5fUTE2LCBHYWluc19RMTZbIHN1YmZyIF0sIDE2ICk7CisKICAgICAg
ICAgLyogU2NhbGUgbG9uZy10ZXJtIHNoYXBpbmcgc3RhdGUgKi8KICAgICAgICAgZm9yKCBpID0g
TlNRLT5zTFRQX3NocF9idWZfaWR4IC0gcHNFbmNDLT5sdHBfbWVtX2xlbmd0aDsgaSA8IE5TUS0+
c0xUUF9zaHBfYnVmX2lkeDsgaSsrICkgewogICAgICAgICAgICAgTlNRLT5zTFRQX3NocF9RMTRb
IGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIE5TUS0+c0xUUF9zaHBfUTE0WyBpIF0g
KTsKQEAgLTY5OSw2ICs3MTIsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9k
ZWxfZGVjX3NjYWxlX3N0YXRlcygKIAogICAgICAgICAgICAgLyogU2NhbGUgc2NhbGFyIHN0YXRl
cyAqLwogICAgICAgICAgICAgcHNERC0+TEZfQVJfUTE0ID0gc2lsa19TTVVMV1coIGdhaW5fYWRq
X1ExNiwgcHNERC0+TEZfQVJfUTE0ICk7CisgICAgICAgICAgICBwc0RELT5EaWZmX1ExNCA9IHNp
bGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIHBzREQtPkRpZmZfUTE0ICk7CiAKICAgICAgICAgICAg
IC8qIFNjYWxlIHNob3J0LXRlcm0gcHJlZGljdGlvbiBhbmQgc2hhcGluZyBzdGF0ZXMgKi8KICAg
ICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBOU1FfTFBDX0JVRl9MRU5HVEg7IGkrKyApIHsKQEAg
LTcxMiw1ICs3MjYsOCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9kZWxfZGVj
X3NjYWxlX3N0YXRlcygKICAgICAgICAgICAgICAgICBwc0RELT5TaGFwZV9RMTRbIGkgXSA9IHNp
bGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIHBzREQtPlNoYXBlX1ExNFsgaSBdICk7CiAgICAgICAg
ICAgICB9CiAgICAgICAgIH0KKworICAgICAgICAvKiBTYXZlIGludmVyc2UgZ2FpbiAqLworICAg
ICAgICBOU1EtPnByZXZfZ2Fpbl9RMTYgPSBHYWluc19RMTZbIHN1YmZyIF07CiAgICAgfQogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL1BMQy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1BMQy5jCmluZGV4IGZiNmVhODg3YjdlZTI1NGIx
Yjg1OGE2YTUyYmM1ODQ1ZTBkNTczOGQuLmEzZTU1ZWE3NjVlZjRmNGIwNzE5MDE1NTVkMzNkMDNj
MDYzM2VhZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9QTEMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvUExDLmMKQEAgLTI3NSw3
ICsyNzUsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX1BMQ19jb25jZWFsKAogICAg
ICAgICAgICAgLyogUmVkdWNlIHJhbmRvbSBub2lzZSBmb3IgdW52b2ljZWQgZnJhbWVzIHdpdGgg
aGlnaCBMUEMgZ2FpbiAqLwogICAgICAgICAgICAgb3B1c19pbnQzMiBpbnZHYWluX1EzMCwgZG93
bl9zY2FsZV9RMzA7CiAKLSAgICAgICAgICAgIGludkdhaW5fUTMwID0gc2lsa19MUENfaW52ZXJz
ZV9wcmVkX2dhaW4oIHBzUExDLT5wcmV2TFBDX1ExMiwgcHNEZWMtPkxQQ19vcmRlciApOworICAg
ICAgICAgICAgaW52R2Fpbl9RMzAgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbiggcHNQTEMt
PnByZXZMUENfUTEyLCBwc0RlYy0+TFBDX29yZGVyLCBhcmNoICk7CiAKICAgICAgICAgICAgIGRv
d25fc2NhbGVfUTMwID0gc2lsa19taW5fMzIoIHNpbGtfUlNISUZUKCAob3B1c19pbnQzMikxIDw8
IDMwLCBMT0cyX0lOVl9MUENfR0FJTl9ISUdIX1RIUkVTICksIGludkdhaW5fUTMwICk7CiAgICAg
ICAgICAgICBkb3duX3NjYWxlX1EzMCA9IHNpbGtfbWF4XzMyKCBzaWxrX1JTSElGVCggKG9wdXNf
aW50MzIpMSA8PCAzMCwgTE9HMl9JTlZfTFBDX0dBSU5fTE9XX1RIUkVTICksIGRvd25fc2NhbGVf
UTMwICk7CkBAIC0zMjgsOCArMzI4LDEwIEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtf
UExDX2NvbmNlYWwoCiAgICAgICAgIGZvciggaiA9IDA7IGogPCBMVFBfT1JERVI7IGorKyApIHsK
ICAgICAgICAgICAgIEJfUTE0WyBqIF0gPSBzaWxrX1JTSElGVCggc2lsa19TTVVMQkIoIGhhcm1f
R2Fpbl9RMTUsIEJfUTE0WyBqIF0gKSwgMTUgKTsKICAgICAgICAgfQotICAgICAgICAvKiBHcmFk
dWFsbHkgcmVkdWNlIGV4Y2l0YXRpb24gZ2FpbiAqLwotICAgICAgICByYW5kX3NjYWxlX1ExNCA9
IHNpbGtfUlNISUZUKCBzaWxrX1NNVUxCQiggcmFuZF9zY2FsZV9RMTQsIHJhbmRfR2Fpbl9RMTUg
KSwgMTUgKTsKKyAgICAgICAgaWYgKCBwc0RlYy0+aW5kaWNlcy5zaWduYWxUeXBlICE9IFRZUEVf
Tk9fVk9JQ0VfQUNUSVZJVFkgKSB7CisgICAgICAgICAgICAvKiBHcmFkdWFsbHkgcmVkdWNlIGV4
Y2l0YXRpb24gZ2FpbiAqLworICAgICAgICAgICAgcmFuZF9zY2FsZV9RMTQgPSBzaWxrX1JTSElG
VCggc2lsa19TTVVMQkIoIHJhbmRfc2NhbGVfUTE0LCByYW5kX0dhaW5fUTE1ICksIDE1ICk7Cisg
ICAgICAgIH0KIAogICAgICAgICAvKiBTbG93bHkgaW5jcmVhc2UgcGl0Y2ggbGFnICovCiAgICAg
ICAgIHBzUExDLT5waXRjaExfUTggPSBzaWxrX1NNTEFXQiggcHNQTEMtPnBpdGNoTF9ROCwgcHNQ
TEMtPnBpdGNoTF9ROCwgUElUQ0hfRFJJRlRfRkFDX1ExNiApOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1Np
Z1Byb2NfRklYLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvU2lnUHJvY19GSVguaAppbmRleCBiNjMyOTk0NDFlOTMwYTM4NWU5
N2VmOWMxM2Q1NzU1Y2MwZjljNDEzLi5mOWFlMzI2MzI2ZDMxYTgxY2RmOWM0ZmYyYmI1YWE4Mjdh
NGViYWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvU2lnUHJvY19GSVguaAorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvU2lnUHJvY19G
SVguaApAQCAtMzUsNyArMzUsNyBAQCBleHRlcm4gIkMiCiAKIC8qI2RlZmluZSBzaWxrX01BQ1JP
X0NPVU5UICovICAgICAgICAgIC8qIFVzZWQgdG8gZW5hYmxlIFdNT1BTIGNvdW50aW5nICovCiAK
LSNkZWZpbmUgU0lMS19NQVhfT1JERVJfTFBDICAgICAgICAgICAgMTYgICAgICAgICAgICAvKiBt
YXggb3JkZXIgb2YgdGhlIExQQyBhbmFseXNpcyBpbiBzY2h1cigpIGFuZCBrMmEoKSAqLworI2Rl
ZmluZSBTSUxLX01BWF9PUkRFUl9MUEMgICAgICAgICAgICAyNCAgICAgICAgICAgIC8qIG1heCBv
cmRlciBvZiB0aGUgTFBDIGFuYWx5c2lzIGluIHNjaHVyKCkgYW5kIGsyYSgpICovCiAKICNpbmNs
dWRlIDxzdHJpbmcuaD4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBmb3IgbWVt
c2V0KCksIG1lbWNweSgpLCBtZW1tb3ZlKCkgKi8KICNpbmNsdWRlICJ0eXBlZGVmLmgiCkBAIC00
Nyw2ICs0NywxMSBAQCBleHRlcm4gIkMiCiAjaW5jbHVkZSAieDg2L1NpZ1Byb2NfRklYX3NzZS5o
IgogI2VuZGlmCiAKKyNpZiAoZGVmaW5lZChPUFVTX0FSTV9BU00pIHx8IGRlZmluZWQoT1BVU19B
Uk1fTUFZX0hBVkVfTkVPTl9JTlRSKSkKKyNpbmNsdWRlICJhcm0vYmlxdWFkX2FsdF9hcm0uaCIK
KyNpbmNsdWRlICJhcm0vTFBDX2ludl9wcmVkX2dhaW5fYXJtLmgiCisjZW5kaWYKKwogLyoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwogLyogICAgICAgICAgICAgICAgICAgIFNJR05BTCBQUk9DRVNTSU5HIEZVTkNUSU9O
UyAgICAgICAgICAgICAgICAgICAqLwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtOTYsMTQgKzEwMSwyMiBA
QCB2b2lkIHNpbGtfcmVzYW1wbGVyX2Rvd24yXzMoCiAgKiBzbG93ZXIgdGhhbiBiaXF1YWQoKSBi
dXQgdXNlcyBtb3JlIHByZWNpc2UgY29lZmZpY2llbnRzCiAgKiBjYW4gaGFuZGxlIChzbG93bHkp
IHZhcnlpbmcgY29lZmZpY2llbnRzCiAgKi8KLXZvaWQgc2lsa19iaXF1YWRfYWx0KAordm9pZCBz
aWxrX2JpcXVhZF9hbHRfc3RyaWRlMSgKICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAg
KmluLCAgICAgICAgICAgICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgICAgICAgICpCX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgTUEgY29lZmZpY2llbnRzIFsz
XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIEFSIGNvZWZm
aWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAg
ICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAgICAvKiBJL08g
ICBTdGF0ZSB2ZWN0b3IgWzJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiAgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICpvdXQsICAgICAgICAgICAg
ICAgLyogTyAgICAgb3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBsZW4sICAg
ICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3QgYmUgZXZlbikgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAg
ICAgc3RyaWRlICAgICAgICAgICAgICAvKiBJICAgICBPcGVyYXRlIG9uIGludGVybGVhdmVkIHNp
Z25hbCBpZiA+IDEgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQz
MiAgICAgICAgICAgIGxlbiAgICAgICAgICAgICAgICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAo
bXVzdCBiZSBldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworKTsKKwordm9p
ZCBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9jKAorICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICAqaW4sICAgICAgICAgICAgICAgIC8qIEkgICAgIGlucHV0IHNpZ25hbCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dDMyICAgICAgICAgICAgKkJfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBNQSBjb2VmZmljaWVu
dHMgWzNdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29u
c3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpBX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgQVIg
Y29lZmZpY2llbnRzIFsyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqUywgICAgICAgICAgICAgICAgIC8q
IEkvTyAgIFN0YXRlIHZlY3RvciBbNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKm91dCwgICAgICAg
ICAgICAgICAvKiBPICAgICBvdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxl
biAgICAgICAgICAgICAgICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKTsKIAogLyogVmFyaWFibGUgb3JkZXIg
TUEgcHJlZGljdGlvbiBlcnJvciBmaWx0ZXIuICovCkBAIC0xMzIsMTcgKzE0NSwxMSBAQCB2b2lk
IHNpbGtfYndleHBhbmRlcl8zMigKIAogLyogQ29tcHV0ZSBpbnZlcnNlIG9mIExQQyBwcmVkaWN0
aW9uIGdhaW4sIGFuZCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAvKiB0ZXN0IGlmIExQ
QyBjb2VmZmljaWVudHMgYXJlIHN0YWJsZSAoYWxsIHBvbGVzIHdpdGhpbiB1bml0IGNpcmNsZSkg
ICAgKi8KLW9wdXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4oICAgICAgICAgICAg
ICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWlu
LCBRMzAgICAgICAgICovCitvcHVzX2ludDMyIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2Mo
ICAgICAgICAgICAgLyogTyAgIFJldHVybnMgaW52ZXJzZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5l
cmd5IGRvbWFpbiwgUTMwICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAg
ICAqQV9RMTIsICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIGNvZWZmaWNpZW50cywgUTEy
IFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgUHJlZGljdGlvbiBvcmRlciAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCi0vKiBG
b3IgaW5wdXQgaW4gUTI0IGRvbWFpbiAqLwotb3B1c19pbnQzMiBzaWxrX0xQQ19pbnZlcnNlX3By
ZWRfZ2Fpbl9RMjQoICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24g
Z2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMy
ICAgICAgICAgICAgKkFfUTI0LCAgICAgICAgICAgICAvKiBJICAgIFByZWRpY3Rpb24gY29lZmZp
Y2llbnRzIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAgICAgLyogSSAgICBQcmVkaWN0
aW9uIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
KTsKLQogLyogU3BsaXQgc2lnbmFsIGluIHR3byBkZWNpbWF0ZWQgYmFuZHMgdXNpbmcgZmlyc3Qt
b3JkZXIgYWxscGFzcyBmaWx0ZXJzICovCiB2b2lkIHNpbGtfYW5hX2ZpbHRfYmFua18xKAogICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqaW4sICAgICAgICAgICAgICAgIC8qIEkgICAg
SW5wdXQgc2lnbmFsIFtOXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KQEAgLTE1Miw2ICsxNTksMTQgQEAgdm9pZCBzaWxrX2FuYV9maWx0X2JhbmtfMSgKICAg
ICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgTiAgICAgICAgICAgICAgICAgICAvKiBJICAg
IE51bWJlciBvZiBpbnB1dCBzYW1wbGVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiApOwogCisjaWYgIWRlZmluZWQoT1ZFUlJJREVfc2lsa19iaXF1YWRfYWx0X3N0cmlk
ZTIpCisjZGVmaW5lIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyKGluLCBCX1EyOCwgQV9RMjgsIFMs
IG91dCwgbGVuLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9j
KGluLCBCX1EyOCwgQV9RMjgsIFMsIG91dCwgbGVuKSkKKyNlbmRpZgorCisjaWYgIWRlZmluZWQo
T1ZFUlJJREVfc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4pCisjZGVmaW5lIHNpbGtfTFBDX2lu
dmVyc2VfcHJlZF9nYWluKEFfUTEyLCBvcmRlciwgYXJjaCkgICAgICgodm9pZCkoYXJjaCksIHNp
bGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2MoQV9RMTIsIG9yZGVyKSkKKyNlbmRpZgorCiAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKiovCiAvKiAgICAgICAgICAgICAgICAgICAgICAgIFNDQUxBUiBGVU5DVElPTlMgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0yNzEsNyArMjg2LDE3
IEBAIHZvaWQgc2lsa19BMk5MU0YoCiB2b2lkIHNpbGtfTkxTRjJBKAogICAgIG9wdXNfaW50MTYg
ICAgICAgICAgICAgICAgICAqYV9RMTIsICAgICAgICAgICAgIC8qIE8gICAgbW9uaWMgd2hpdGVu
aW5nIGZpbHRlciBjb2VmZmljaWVudHMgaW4gUTEyLCAgWyBkIF0gICAgICAgICAgKi8KICAgICBj
b25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKk5MU0YsICAgICAgICAgICAgICAvKiBJICAgIG5v
cm1hbGl6ZWQgbGluZSBzcGVjdHJhbCBmcmVxdWVuY2llcyBpbiBRMTUsIFsgZCBdICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAg
LyogSSAgICBmaWx0ZXIgb3JkZXIgKHNob3VsZCBiZSBldmVuKSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBkLCAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgZmlsdGVyIG9yZGVyIChzaG91bGQgYmUgZXZlbikgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAg
YXJjaCAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCispOworCisvKiBDb252ZXJ0IGludDMy
IGNvZWZmaWNpZW50cyB0byBpbnQxNiBjb2VmcyBhbmQgbWFrZSBzdXJlIHRoZXJlJ3Mgbm8gd3Jh
cC1hcm91bmQgKi8KK3ZvaWQgc2lsa19MUENfZml0KAorICAgIG9wdXNfaW50MTYgICAgICAgICAg
ICAgICAgICAqYV9RT1VULCAgICAgICAgICAgIC8qIE8gICAgT3V0cHV0IHNpZ25hbCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMy
ICAgICAgICAgICAgICAgICAgKmFfUUlOLCAgICAgICAgICAgICAvKiBJL08gIElucHV0IHNpZ25h
bCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
Y29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIFFPVVQsICAgICAgICAgICAgICAgLyogSSAgICBJ
bnB1dCBRIGRvbWFpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBRSU4sICAgICAgICAgICAgICAg
IC8qIEkgICAgSW5wdXQgUSBkb21haW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgZCAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCiB2b2lkIHNpbGtfaW5zZXJ0aW9uX3NvcnRf
aW5jcmVhc2luZygKQEAgLTQ3MSw4ICs0OTYsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19p
bnQzMiBzaWxrX1JPUjMyKCBvcHVzX2ludDMyIGEzMiwgb3B1c19pbnQgcm90ICkKIC8qIEFkZCB3
aXRoIHNhdHVyYXRpb24gZm9yIHBvc2l0aXZlIGlucHV0IHZhbHVlcyAqLwogI2RlZmluZSBzaWxr
X0FERF9QT1NfU0FUOChhLCBiKSAgICAgICAgICAgICAoKCgoYSkrKGIpKSAmIDB4ODApICAgICAg
ICAgICAgICAgICA/IHNpbGtfaW50OF9NQVggIDogKChhKSsoYikpKQogI2RlZmluZSBzaWxrX0FE
RF9QT1NfU0FUMTYoYSwgYikgICAgICAgICAgICAoKCgoYSkrKGIpKSAmIDB4ODAwMCkgICAgICAg
ICAgICAgICA/IHNpbGtfaW50MTZfTUFYIDogKChhKSsoYikpKQotI2RlZmluZSBzaWxrX0FERF9Q
T1NfU0FUMzIoYSwgYikgICAgICAgICAgICAoKCgoYSkrKGIpKSAmIDB4ODAwMDAwMDApICAgICAg
ICAgICA/IHNpbGtfaW50MzJfTUFYIDogKChhKSsoYikpKQotI2RlZmluZSBzaWxrX0FERF9QT1Nf
U0FUNjQoYSwgYikgICAgICAgICAgICAoKCgoYSkrKGIpKSAmIDB4ODAwMDAwMDAwMDAwMDAwMExM
KSA/IHNpbGtfaW50NjRfTUFYIDogKChhKSsoYikpKQorI2RlZmluZSBzaWxrX0FERF9QT1NfU0FU
MzIoYSwgYikgICAgICAgICAgICAoKCgob3B1c191aW50MzIpKGEpKyhvcHVzX3VpbnQzMikoYikp
ICYgMHg4MDAwMDAwMCkgPyBzaWxrX2ludDMyX01BWCA6ICgoYSkrKGIpKSkKIAogI2RlZmluZSBz
aWxrX0xTSElGVDgoYSwgc2hpZnQpICAgICAgICAgICAgICAoKG9wdXNfaW50OCkoKG9wdXNfdWlu
dDgpKGEpPDwoc2hpZnQpKSkgICAgICAgICAvKiBzaGlmdCA+PSAwLCBzaGlmdCA8IDggICovCiAj
ZGVmaW5lIHNpbGtfTFNISUZUMTYoYSwgc2hpZnQpICAgICAgICAgICAgICgob3B1c19pbnQxNiko
KG9wdXNfdWludDE2KShhKTw8KHNoaWZ0KSkpICAgICAgIC8qIHNoaWZ0ID49IDAsIHNoaWZ0IDwg
MTYgKi8KQEAgLTU3Miw3ICs1OTYsOSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQ2NCBz
aWxrX21heF82NChvcHVzX2ludDY0IGEsIG9wdXNfaW50NjQgYikKIC8qIE1ha2Ugc3VyZSB0byBz
dG9yZSB0aGUgcmVzdWx0IGFzIHRoZSBzZWVkIGZvciB0aGUgbmV4dCBjYWxsIChhbHNvIGluIGJl
dHdlZW4gICAgICovCiAvKiBmcmFtZXMpLCBvdGhlcndpc2UgcmVzdWx0IHdvbid0IGJlIHJhbmRv
bSBhdCBhbGwuIFdoZW4gb25seSB1c2luZyBzb21lIG9mIHRoZSAgICAqLwogLyogYml0cywgdGFr
ZSB0aGUgbW9zdCBzaWduaWZpY2FudCBiaXRzIGJ5IHJpZ2h0LXNoaWZ0aW5nLiAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSNkZWZpbmUgc2lsa19SQU5EKHNlZWQpICAgICAgICAgICAgICAg
ICAgICAgKHNpbGtfTUxBX292Zmx3KDkwNzYzMzUxNSwgKHNlZWQpLCAxOTYzMTQxNjUpKQorI2Rl
ZmluZSBSQU5EX01VTFRJUExJRVIgICAgICAgICAgICAgICAgICAgICAxOTYzMTQxNjUKKyNkZWZp
bmUgUkFORF9JTkNSRU1FTlQgICAgICAgICAgICAgICAgICAgICAgOTA3NjMzNTE1CisjZGVmaW5l
IHNpbGtfUkFORChzZWVkKSAgICAgICAgICAgICAgICAgICAgIChzaWxrX01MQV9vdmZsdygoUkFO
RF9JTkNSRU1FTlQpLCAoc2VlZCksIChSQU5EX01VTFRJUExJRVIpKSkKIAogLyogIEFkZCBzb21l
IG11bHRpcGxpY2F0aW9uIGZ1bmN0aW9ucyB0aGF0IGNhbiBiZSBlYXNpbHkgbWFwcGVkIHRvIEFS
TS4gKi8KIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1ZRX1dNYXRfRUMuYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9WUV9XTWF0X0VDLmMK
aW5kZXggNzk4M2YxZGI4MGNjY2VjYTU4YmQ3YTc2MmVhOTA1NGNmYTU0YjZiOS4uMGYzZDU0NWM0
ZWY4YzEzM2VlNTE1MzM2ZTE5YzE2ZmE2MjcyZGJlMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1ZRX1dNYXRf
RUMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvVlFfV01hdF9FQy5jCkBAIC0zNCw4NCArMzQsOTUgQEAgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAvKiBFbnRyb3B5IGNvbnN0cmFpbmVkIG1hdHJpeC13ZWlnaHRl
ZCBWUSwgaGFyZC1jb2RlZCB0byA1LWVsZW1lbnQgdmVjdG9ycywgZm9yIGEgc2luZ2xlIGlucHV0
IGRhdGEgdmVjdG9yICovCiB2b2lkIHNpbGtfVlFfV01hdF9FQ19jKAogICAgIG9wdXNfaW50OCAg
ICAgICAgICAgICAgICAgICAqaW5kLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAg
aW5kZXggb2YgYmVzdCBjb2RlYm9vayB2ZWN0b3IgICAgICAgICAgICAgICAqLwotICAgIG9wdXNf
aW50MzIgICAgICAgICAgICAgICAgICAqcmF0ZV9kaXN0X1ExNCwgICAgICAgICAgICAgICAgIC8q
IE8gICAgYmVzdCB3ZWlnaHRlZCBxdWFudCBlcnJvciArIG11ICogcmF0ZSAgICAgICAqLworICAg
IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqcmVzX25yZ19RMTUsICAgICAgICAgICAgICAg
ICAgIC8qIE8gICAgYmVzdCByZXNpZHVhbCBlbmVyZ3kgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqcmF0ZV9kaXN0X1E4LCAgICAgICAg
ICAgICAgICAgIC8qIE8gICAgYmVzdCB0b3RhbCBiaXRyYXRlICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAqZ2Fpbl9RNywgICAgICAg
ICAgICAgICAgICAgICAgIC8qIE8gICAgc3VtIG9mIGFic29sdXRlIExUUCBjb2VmZmljaWVudHMg
ICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqaW5fUTE0LCAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgaW5wdXQgdmVjdG9yIHRvIGJlIHF1YW50aXpl
ZCAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqV19R
MTgsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgd2VpZ2h0aW5nIG1hdHJpeCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAg
ICAqWFhfUTE3LCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgY29ycmVsYXRpb24gbWF0
cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAg
ICAgICAgICAqeFhfUTE3LCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgY29ycmVsYXRp
b24gdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50
OCAgICAgICAgICAgICAqY2JfUTcsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgY29k
ZWJvb2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9w
dXNfdWludDggICAgICAgICAgICAqY2JfZ2Fpbl9RNywgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgY29kZWJvb2sgZWZmZWN0aXZlIGdhaW4gICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNv
bnN0IG9wdXNfdWludDggICAgICAgICAgICAqY2xfUTUsICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgY29kZSBsZW5ndGggZm9yIGVhY2ggY29kZWJvb2sgdmVjdG9yICAgICAgICAqLwot
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBtdV9ROSwgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgdHJhZGVvZmYgYmV0dy4gd2VpZ2h0ZWQgZXJyb3IgYW5kIHJhdGUgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzdWJmcl9sZW4sICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHNhbXBsZXMgcGVyIHN1YmZyYW1lICAgICAg
ICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBtYXhfZ2Fpbl9RNywg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbWF4aW11bSBzdW0gb2YgYWJzb2x1dGUgTFRQIGNv
ZWZmaWNpZW50cyAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBMICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHZlY3RvcnMgaW4gY29k
ZWJvb2sgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBM
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHZlY3RvcnMg
aW4gY29kZWJvb2sgICAgICAgICAgICAgICAqLwogKQogewogICAgIG9wdXNfaW50ICAgaywgZ2Fp
bl90bXBfUTc7CiAgICAgY29uc3Qgb3B1c19pbnQ4ICpjYl9yb3dfUTc7Ci0gICAgb3B1c19pbnQx
NiBkaWZmX1ExNFsgNSBdOwotICAgIG9wdXNfaW50MzIgc3VtMV9RMTQsIHN1bTJfUTE2OworICAg
IG9wdXNfaW50MzIgbmVnX3hYX1EyNFsgNSBdOworICAgIG9wdXNfaW50MzIgc3VtMV9RMTUsIHN1
bTJfUTI0OworICAgIG9wdXNfaW50MzIgYml0c19yZXNfUTgsIGJpdHNfdG90X1E4OworCisgICAg
LyogTmVnYXRlIGFuZCBjb252ZXJ0IHRvIG5ldyBRIGRvbWFpbiAqLworICAgIG5lZ194WF9RMjRb
IDAgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdbIDAgXSwgNyApOworICAgIG5lZ194WF9RMjRb
IDEgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdbIDEgXSwgNyApOworICAgIG5lZ194WF9RMjRb
IDIgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdbIDIgXSwgNyApOworICAgIG5lZ194WF9RMjRb
IDMgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdbIDMgXSwgNyApOworICAgIG5lZ194WF9RMjRb
IDQgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdbIDQgXSwgNyApOwogCiAgICAgLyogTG9vcCBv
dmVyIGNvZGVib29rICovCi0gICAgKnJhdGVfZGlzdF9RMTQgPSBzaWxrX2ludDMyX01BWDsKKyAg
ICAqcmF0ZV9kaXN0X1E4ID0gc2lsa19pbnQzMl9NQVg7CisgICAgKnJlc19ucmdfUTE1ID0gc2ls
a19pbnQzMl9NQVg7CiAgICAgY2Jfcm93X1E3ID0gY2JfUTc7CisgICAgLyogSW4gdGhpbmdzIGdv
IHJlYWxseSBiYWQsIGF0IGxlYXN0ICppbmQgaXMgc2V0IHRvIHNvbWV0aGluZyBzYWZlLiAqLwor
ICAgICppbmQgPSAwOwogICAgIGZvciggayA9IDA7IGsgPCBMOyBrKysgKSB7CisgICAgICAgIG9w
dXNfaW50MzIgcGVuYWx0eTsKICAgICAgICAgZ2Fpbl90bXBfUTcgPSBjYl9nYWluX1E3W2tdOwot
Ci0gICAgICAgIGRpZmZfUTE0WyAwIF0gPSBpbl9RMTRbIDAgXSAtIHNpbGtfTFNISUZUKCBjYl9y
b3dfUTdbIDAgXSwgNyApOwotICAgICAgICBkaWZmX1ExNFsgMSBdID0gaW5fUTE0WyAxIF0gLSBz
aWxrX0xTSElGVCggY2Jfcm93X1E3WyAxIF0sIDcgKTsKLSAgICAgICAgZGlmZl9RMTRbIDIgXSA9
IGluX1ExNFsgMiBdIC0gc2lsa19MU0hJRlQoIGNiX3Jvd19RN1sgMiBdLCA3ICk7Ci0gICAgICAg
IGRpZmZfUTE0WyAzIF0gPSBpbl9RMTRbIDMgXSAtIHNpbGtfTFNISUZUKCBjYl9yb3dfUTdbIDMg
XSwgNyApOwotICAgICAgICBkaWZmX1ExNFsgNCBdID0gaW5fUTE0WyA0IF0gLSBzaWxrX0xTSElG
VCggY2Jfcm93X1E3WyA0IF0sIDcgKTsKLQogICAgICAgICAvKiBXZWlnaHRlZCByYXRlICovCi0g
ICAgICAgIHN1bTFfUTE0ID0gc2lsa19TTVVMQkIoIG11X1E5LCBjbF9RNVsgayBdICk7CisgICAg
ICAgIC8qIFF1YW50aXphdGlvbiBlcnJvcjogMSAtIDIgKiB4WCAqIGNiICsgY2InICogWFggKiBj
YiAqLworICAgICAgICBzdW0xX1ExNSA9IFNJTEtfRklYX0NPTlNUKCAxLjAwMSwgMTUgKTsKIAog
ICAgICAgICAvKiBQZW5hbHR5IGZvciB0b28gbGFyZ2UgZ2FpbiAqLwotICAgICAgICBzdW0xX1Ex
NCA9IHNpbGtfQUREX0xTSElGVDMyKCBzdW0xX1ExNCwgc2lsa19tYXgoIHNpbGtfU1VCMzIoIGdh
aW5fdG1wX1E3LCBtYXhfZ2Fpbl9RNyApLCAwICksIDEwICk7Ci0KLSAgICAgICAgc2lsa19hc3Nl
cnQoIHN1bTFfUTE0ID49IDAgKTsKLQotICAgICAgICAvKiBmaXJzdCByb3cgb2YgV19RMTggKi8K
LSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNVUxXQiggICAgICAgICAgIFdfUTE4WyAgMSBdLCBk
aWZmX1ExNFsgMSBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTUxBV0IoIHN1bTJfUTE2
LCBXX1ExOFsgIDIgXSwgZGlmZl9RMTRbIDIgXSApOwotICAgICAgICBzdW0yX1ExNiA9IHNpbGtf
U01MQVdCKCBzdW0yX1ExNiwgV19RMThbICAzIF0sIGRpZmZfUTE0WyAzIF0gKTsKLSAgICAgICAg
c3VtMl9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdfUTE4WyAgNCBdLCBkaWZmX1ExNFsg
NCBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19MU0hJRlQoIHN1bTJfUTE2LCAxICk7Ci0g
ICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTUxBV0IoIHN1bTJfUTE2LCBXX1ExOFsgIDAgXSwgZGlm
Zl9RMTRbIDAgXSApOwotICAgICAgICBzdW0xX1ExNCA9IHNpbGtfU01MQVdCKCBzdW0xX1ExNCwg
c3VtMl9RMTYsICAgIGRpZmZfUTE0WyAwIF0gKTsKLQotICAgICAgICAvKiBzZWNvbmQgcm93IG9m
IFdfUTE4ICovCi0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTVVMV0IoICAgICAgICAgICBXX1Ex
OFsgIDcgXSwgZGlmZl9RMTRbIDIgXSApOwotICAgICAgICBzdW0yX1ExNiA9IHNpbGtfU01MQVdC
KCBzdW0yX1ExNiwgV19RMThbICA4IF0sIGRpZmZfUTE0WyAzIF0gKTsKLSAgICAgICAgc3VtMl9R
MTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdfUTE4WyAgOSBdLCBkaWZmX1ExNFsgNCBdICk7
Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19MU0hJRlQoIHN1bTJfUTE2LCAxICk7Ci0gICAgICAg
IHN1bTJfUTE2ID0gc2lsa19TTUxBV0IoIHN1bTJfUTE2LCBXX1ExOFsgIDYgXSwgZGlmZl9RMTRb
IDEgXSApOwotICAgICAgICBzdW0xX1ExNCA9IHNpbGtfU01MQVdCKCBzdW0xX1ExNCwgc3VtMl9R
MTYsICAgIGRpZmZfUTE0WyAxIF0gKTsKLQotICAgICAgICAvKiB0aGlyZCByb3cgb2YgV19RMTgg
Ki8KLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNVUxXQiggICAgICAgICAgIFdfUTE4WyAxMyBd
LCBkaWZmX1ExNFsgMyBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTUxBV0IoIHN1bTJf
UTE2LCBXX1ExOFsgMTQgXSwgZGlmZl9RMTRbIDQgXSApOwotICAgICAgICBzdW0yX1ExNiA9IHNp
bGtfTFNISUZUKCBzdW0yX1ExNiwgMSApOwotICAgICAgICBzdW0yX1ExNiA9IHNpbGtfU01MQVdC
KCBzdW0yX1ExNiwgV19RMThbIDEyIF0sIGRpZmZfUTE0WyAyIF0gKTsKLSAgICAgICAgc3VtMV9R
MTQgPSBzaWxrX1NNTEFXQiggc3VtMV9RMTQsIHN1bTJfUTE2LCAgICBkaWZmX1ExNFsgMiBdICk7
Ci0KLSAgICAgICAgLyogZm91cnRoIHJvdyBvZiBXX1ExOCAqLwotICAgICAgICBzdW0yX1ExNiA9
IHNpbGtfU01VTFdCKCAgICAgICAgICAgV19RMThbIDE5IF0sIGRpZmZfUTE0WyA0IF0gKTsKLSAg
ICAgICAgc3VtMl9RMTYgPSBzaWxrX0xTSElGVCggc3VtMl9RMTYsIDEgKTsKLSAgICAgICAgc3Vt
Ml9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdfUTE4WyAxOCBdLCBkaWZmX1ExNFsgMyBd
ICk7Ci0gICAgICAgIHN1bTFfUTE0ID0gc2lsa19TTUxBV0IoIHN1bTFfUTE0LCBzdW0yX1ExNiwg
ICAgZGlmZl9RMTRbIDMgXSApOwotCi0gICAgICAgIC8qIGxhc3Qgcm93IG9mIFdfUTE4ICovCi0g
ICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTVVMV0IoICAgICAgICAgICBXX1ExOFsgMjQgXSwgZGlm
Zl9RMTRbIDQgXSApOwotICAgICAgICBzdW0xX1ExNCA9IHNpbGtfU01MQVdCKCBzdW0xX1ExNCwg
c3VtMl9RMTYsICAgIGRpZmZfUTE0WyA0IF0gKTsKLQotICAgICAgICBzaWxrX2Fzc2VydCggc3Vt
MV9RMTQgPj0gMCApOworICAgICAgICBwZW5hbHR5ID0gc2lsa19MU0hJRlQzMiggc2lsa19tYXgo
IHNpbGtfU1VCMzIoIGdhaW5fdG1wX1E3LCBtYXhfZ2Fpbl9RNyApLCAwICksIDExICk7CisKKyAg
ICAgICAgLyogZmlyc3Qgcm93IG9mIFhYX1ExNyAqLworICAgICAgICBzdW0yX1EyNCA9IHNpbGtf
TUxBKCBuZWdfeFhfUTI0WyAwIF0sIFhYX1ExN1sgIDEgXSwgY2Jfcm93X1E3WyAxIF0gKTsKKyAg
ICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggc3VtMl9RMjQsICAgICAgICBYWF9RMTdbICAyIF0s
IGNiX3Jvd19RN1sgMiBdICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJfUTI0
LCAgICAgICAgWFhfUTE3WyAgMyBdLCBjYl9yb3dfUTdbIDMgXSApOworICAgICAgICBzdW0yX1Ey
NCA9IHNpbGtfTUxBKCBzdW0yX1EyNCwgICAgICAgIFhYX1ExN1sgIDQgXSwgY2Jfcm93X1E3WyA0
IF0gKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX0xTSElGVDMyKCBzdW0yX1EyNCwgMSApOwor
ICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBzdW0yX1EyNCwgICAgICAgIFhYX1ExN1sgIDAg
XSwgY2Jfcm93X1E3WyAwIF0gKTsKKyAgICAgICAgc3VtMV9RMTUgPSBzaWxrX1NNTEFXQiggc3Vt
MV9RMTUsICAgICAgICBzdW0yX1EyNCwgIGNiX3Jvd19RN1sgMCBdICk7CisKKyAgICAgICAgLyog
c2Vjb25kIHJvdyBvZiBYWF9RMTcgKi8KKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggbmVn
X3hYX1EyNFsgMSBdLCBYWF9RMTdbICA3IF0sIGNiX3Jvd19RN1sgMiBdICk7CisgICAgICAgIHN1
bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJfUTI0LCAgICAgICAgWFhfUTE3WyAgOCBdLCBjYl9yb3df
UTdbIDMgXSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBzdW0yX1EyNCwgICAgICAg
IFhYX1ExN1sgIDkgXSwgY2Jfcm93X1E3WyA0IF0gKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxr
X0xTSElGVDMyKCBzdW0yX1EyNCwgMSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBz
dW0yX1EyNCwgICAgICAgIFhYX1ExN1sgIDYgXSwgY2Jfcm93X1E3WyAxIF0gKTsKKyAgICAgICAg
c3VtMV9RMTUgPSBzaWxrX1NNTEFXQiggc3VtMV9RMTUsICAgICAgICBzdW0yX1EyNCwgIGNiX3Jv
d19RN1sgMSBdICk7CisKKyAgICAgICAgLyogdGhpcmQgcm93IG9mIFhYX1ExNyAqLworICAgICAg
ICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBuZWdfeFhfUTI0WyAyIF0sIFhYX1ExN1sgMTMgXSwgY2Jf
cm93X1E3WyAzIF0gKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggc3VtMl9RMjQsICAg
ICAgICBYWF9RMTdbIDE0IF0sIGNiX3Jvd19RN1sgNCBdICk7CisgICAgICAgIHN1bTJfUTI0ID0g
c2lsa19MU0hJRlQzMiggc3VtMl9RMjQsIDEgKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01M
QSggc3VtMl9RMjQsICAgICAgICBYWF9RMTdbIDEyIF0sIGNiX3Jvd19RN1sgMiBdICk7CisgICAg
ICAgIHN1bTFfUTE1ID0gc2lsa19TTUxBV0IoIHN1bTFfUTE1LCAgICAgICAgc3VtMl9RMjQsICBj
Yl9yb3dfUTdbIDIgXSApOworCisgICAgICAgIC8qIGZvdXJ0aCByb3cgb2YgWFhfUTE3ICovCisg
ICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIG5lZ194WF9RMjRbIDMgXSwgWFhfUTE3WyAxOSBd
LCBjYl9yb3dfUTdbIDQgXSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTFNISUZUMzIoIHN1
bTJfUTI0LCAxICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJfUTI0LCAgICAg
ICAgWFhfUTE3WyAxOCBdLCBjYl9yb3dfUTdbIDMgXSApOworICAgICAgICBzdW0xX1ExNSA9IHNp
bGtfU01MQVdCKCBzdW0xX1ExNSwgICAgICAgIHN1bTJfUTI0LCAgY2Jfcm93X1E3WyAzIF0gKTsK
KworICAgICAgICAvKiBsYXN0IHJvdyBvZiBYWF9RMTcgKi8KKyAgICAgICAgc3VtMl9RMjQgPSBz
aWxrX0xTSElGVDMyKCBuZWdfeFhfUTI0WyA0IF0sIDEgKTsKKyAgICAgICAgc3VtMl9RMjQgPSBz
aWxrX01MQSggc3VtMl9RMjQsICAgICAgICBYWF9RMTdbIDI0IF0sIGNiX3Jvd19RN1sgNCBdICk7
CisgICAgICAgIHN1bTFfUTE1ID0gc2lsa19TTUxBV0IoIHN1bTFfUTE1LCAgICAgICAgc3VtMl9R
MjQsICBjYl9yb3dfUTdbIDQgXSApOwogCiAgICAgICAgIC8qIGZpbmQgYmVzdCAqLwotICAgICAg
ICBpZiggc3VtMV9RMTQgPCAqcmF0ZV9kaXN0X1ExNCApIHsKLSAgICAgICAgICAgICpyYXRlX2Rp
c3RfUTE0ID0gc3VtMV9RMTQ7Ci0gICAgICAgICAgICAqaW5kID0gKG9wdXNfaW50OClrOwotICAg
ICAgICAgICAgKmdhaW5fUTcgPSBnYWluX3RtcF9RNzsKKyAgICAgICAgaWYoIHN1bTFfUTE1ID49
IDAgKSB7CisgICAgICAgICAgICAvKiBUcmFuc2xhdGUgcmVzaWR1YWwgZW5lcmd5IHRvIGJpdHMg
dXNpbmcgaGlnaC1yYXRlIGFzc3VtcHRpb24gKDYgZEIgPT0+IDEgYml0L3NhbXBsZSkgKi8KKyAg
ICAgICAgICAgIGJpdHNfcmVzX1E4ID0gc2lsa19TTVVMQkIoIHN1YmZyX2xlbiwgc2lsa19saW4y
bG9nKCBzdW0xX1ExNSArIHBlbmFsdHkpIC0gKDE1IDw8IDcpICk7CisgICAgICAgICAgICAvKiBJ
biB0aGUgZm9sbG93aW5nIGxpbmUgd2UgcmVkdWNlIHRoZSBjb2RlbGVuZ3RoIGNvbXBvbmVudCBi
eSBoYWxmICgiLTEiKTsgc2VlbXMgdG8gc2xnaHRseSBpbXByb3ZlIHF1YWxpdHkgKi8KKyAgICAg
ICAgICAgIGJpdHNfdG90X1E4ID0gc2lsa19BRERfTFNISUZUMzIoIGJpdHNfcmVzX1E4LCBjbF9R
NVsgayBdLCAzLTEgKTsKKyAgICAgICAgICAgIGlmKCBiaXRzX3RvdF9ROCA8PSAqcmF0ZV9kaXN0
X1E4ICkgeworICAgICAgICAgICAgICAgICpyYXRlX2Rpc3RfUTggPSBiaXRzX3RvdF9RODsKKyAg
ICAgICAgICAgICAgICAqcmVzX25yZ19RMTUgPSBzdW0xX1ExNSArIHBlbmFsdHk7CisgICAgICAg
ICAgICAgICAgKmluZCA9IChvcHVzX2ludDgpazsKKyAgICAgICAgICAgICAgICAqZ2Fpbl9RNyA9
IGdhaW5fdG1wX1E3OworICAgICAgICAgICAgfQogICAgICAgICB9CiAKICAgICAgICAgLyogR28g
dG8gbmV4dCBjYmsgdmVjdG9yICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL0xQQ19pbnZfcHJlZF9n
YWluX2FybS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2FybS9MUENfaW52X3ByZWRfZ2Fpbl9hcm0uaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45
ODk1YjU1NWM4ODcwNTIwZDAyOTA2ZmFhZGI1MmRjZmJiZmJjOTY0Ci0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2FybS9MUENfaW52X3ByZWRfZ2Fpbl9hcm0uaApAQCAtMCwwICsxLDU3IEBACisvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioKK0NvcHlyaWdodCAoYykgMjAxNyBHb29nbGUgSW5jLgorUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Citt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
Citkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElF
VEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3Jz
LCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2ZWQgZnJv
bSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVybWlzc2lv
bi4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UKK0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVS
IE9SIENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQor
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2lmbmRlZiBT
SUxLX0xQQ19JTlZfUFJFRF9HQUlOX0FSTV9ICisjIGRlZmluZSBTSUxLX0xQQ19JTlZfUFJFRF9H
QUlOX0FSTV9ICisKKyMgaW5jbHVkZSAiY2VsdC9hcm0vYXJtY3B1LmgiCisKKyMgaWYgZGVmaW5l
ZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpCitvcHVzX2ludDMyIHNpbGtfTFBDX2ludmVy
c2VfcHJlZF9nYWluX25lb24oICAgICAgICAgLyogTyAgIFJldHVybnMgaW52ZXJzZSBwcmVkaWN0
aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAgICAgICAqLworICAgIGNvbnN0IG9wdXNf
aW50MTYgICAgICAgICAgICAqQV9RMTIsICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIGNv
ZWZmaWNpZW50cywgUTEyIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgUHJl
ZGljdGlvbiBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCispOworCisjICBpZiAhZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgZGVmaW5lZChPUFVT
X0FSTV9QUkVTVU1FX05FT04pCisjICAgZGVmaW5lIE9WRVJSSURFX3NpbGtfTFBDX2ludmVyc2Vf
cHJlZF9nYWluICAgICAgICAgICAgKDEpCisjICAgZGVmaW5lIHNpbGtfTFBDX2ludmVyc2VfcHJl
ZF9nYWluKEFfUTEyLCBvcmRlciwgYXJjaCkgKCh2b2lkKShhcmNoKSwgUFJFU1VNRV9ORU9OKHNp
bGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKShBX1ExMiwgb3JkZXIpKQorIyAgZW5kaWYKKyMgZW5k
aWYKKworIyBpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbikK
Ky8qSXMgcnVuLXRpbWUgQ1BVIGRldGVjdGlvbiBlbmFibGVkIG9uIHRoaXMgcGxhdGZvcm0/Ki8K
KyMgIGlmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpICYmIChkZWZpbmVkKE9QVVNfQVJNX01BWV9I
QVZFX05FT05fSU5UUikgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpKQor
ZXh0ZXJuIG9wdXNfaW50MzIgKCpjb25zdCBTSUxLX0xQQ19JTlZFUlNFX1BSRURfR0FJTl9JTVBM
W09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNfaW50MTYgKkFfUTEyLCBjb25zdCBvcHVzX2lu
dCBvcmRlcik7CisjICAgZGVmaW5lIE9WRVJSSURFX3NpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWlu
ICAgICAgICAgICAgKDEpCisjICAgZGVmaW5lIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKEFf
UTEyLCBvcmRlciwgYXJjaCkgKCgqU0lMS19MUENfSU5WRVJTRV9QUkVEX0dBSU5fSU1QTFsoYXJj
aCkmT1BVU19BUkNITUFTS10pKEFfUTEyLCBvcmRlcikpCisjICBlbGlmIGRlZmluZWQoT1BVU19B
Uk1fUFJFU1VNRV9ORU9OX0lOVFIpCisjICAgZGVmaW5lIE9WRVJSSURFX3NpbGtfTFBDX2ludmVy
c2VfcHJlZF9nYWluICAgICAgICAgICAgKDEpCisjICAgZGVmaW5lIHNpbGtfTFBDX2ludmVyc2Vf
cHJlZF9nYWluKEFfUTEyLCBvcmRlciwgYXJjaCkgKCh2b2lkKShhcmNoKSwgc2lsa19MUENfaW52
ZXJzZV9wcmVkX2dhaW5fbmVvbihBX1ExMiwgb3JkZXIpKQorIyAgZW5kaWYKKyMgZW5kaWYKKwor
I2VuZGlmIC8qIGVuZCBTSUxLX0xQQ19JTlZfUFJFRF9HQUlOX0FSTV9IICovCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvYXJtL0xQQ19pbnZfcHJlZF9nYWluX25lb25faW50ci5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9MUENfaW52
X3ByZWRfZ2Fpbl9uZW9uX2ludHIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yNzE0MmYzNGNlYmU2OTQ2NTA2Yzk4
YzdjODBlZDcwNmU2MDczOGJlCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9MUENfaW52X3By
ZWRfZ2Fpbl9uZW9uX2ludHIuYwpAQCAtMCwwICsxLDI4MCBAQAorLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitD
b3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4KK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUg
bWV0OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodCBub3RpY2UsCit0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
Ky0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1
c3QsIG5vciB0aGUKK25hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlCitwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KK3Blcm1pc3Npb24uCitUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JT
ICJBUyBJUyIKK0FORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKK0lNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRP
UlMgQkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpZmRlZiBIQVZFX0NPTkZJR19ICisj
aW5jbHVkZSAiY29uZmlnLmgiCisjZW5kaWYKKworI2luY2x1ZGUgPGFybV9uZW9uLmg+CisjaW5j
bHVkZSAiU2lnUHJvY19GSVguaCIKKyNpbmNsdWRlICJkZWZpbmUuaCIKKworI2RlZmluZSBRQSAg
ICAgICAgICAgICAgICAgICAgICAgICAgMjQKKyNkZWZpbmUgQV9MSU1JVCAgICAgICAgICAgICAg
ICAgICAgIFNJTEtfRklYX0NPTlNUKCAwLjk5OTc1LCBRQSApCisKKyNkZWZpbmUgTVVMMzJfRlJB
Q19RKGEzMiwgYjMyLCBRKSAgICgob3B1c19pbnQzMikoc2lsa19SU0hJRlRfUk9VTkQ2NChzaWxr
X1NNVUxMKGEzMiwgYjMyKSwgUSkpKQorCisvKiBUaGUgZGlmZmljdWx0eSBpcyBob3cgdG8ganVk
Z2UgYSA2NC1iaXQgc2lnbmVkIGludGVnZXIgdG1wNjQgaXMgMzItYml0IG92ZXJmbG93ZWQsCisg
KiBzaW5jZSBORU9OIGhhcyBubyA2NC1iaXQgbWluLCBtYXggb3IgY29tcGFyaXNvbiBpbnN0cnVj
dGlvbnMuCisgKiBBIGZhaWxlZCBpZGVhIGlzIHRvIGNvbXBhcmUgdGhlIHJlc3VsdHMgb2Ygdm1v
dm4odG1wNjQpIGFuZCB2cW1vdm4odG1wNjQpIHdoZXRoZXIgdGhleSBhcmUgZXF1YWwgb3Igbm90
LgorICogSG93ZXZlciwgdGhpcyBpZGVhIGZhaWxzIHdoZW4gdGhlIHRtcDY0IGlzIHNvbWV0aGlu
ZyBsaWtlIDB4RkZGRkZGRjk4MDAwMDAwMC4KKyAqIEhlcmUgd2Uga25vdyB0aGF0IG11bHQyUSA+
PSAxLCBzbyB0aGUgaGlnaGVzdCBiaXQgKGJpdCA2Mywgc2lnbiBiaXQpIG9mIHRtcDY0IG11c3Qg
ZXF1YWwgdG8gYml0IDYyLgorICogdG1wNjQgd2FzIHNoaWZ0ZWQgbGVmdCBieSAxIGFuZCB3ZSBn
b3QgdG1wNjQnLiBJZiBoaWdoX2hhbGYodG1wNjQnKSAhPSAwIGFuZCBoaWdoX2hhbGYodG1wNjQn
KSAhPSAtMSwKKyAqIHRoZW4gd2Uga25vdyB0aGF0IGJpdCAzMSB0byBiaXQgNjMgb2YgdG1wNjQg
Y2FuIG5vdCBhbGwgYmUgdGhlIHNpZ24gYml0LCBhbmQgdGhlcmVmb3JlIHRtcDY0IGlzIDMyLWJp
dCBvdmVyZmxvd2VkLgorICogVGhhdCBpcywgd2UganVkZ2UgaWYgdG1wNjQnID4gMHgwMDAwMDAw
MEZGRkZGRkZGLCBvciB0bXA2NCcgPD0gMHhGRkZGRkZGRjAwMDAwMDAwLgorICogV2UgdXNlIG5h
cnJvd2luZyBzaGlmdCByaWdodCAzMSBiaXRzIHRvIHRtcDMyJyB0byBzYXZlIGRhdGEgYmFuZHdp
ZHRoIGFuZCBpbnN0cnVjdGlvbnMuCisgKiBUaGF0IGlzLCB3ZSBqdWRnZSBpZiB0bXAzMicgPiAw
eDAwMDAwMDAwLCBvciB0bXAzMicgPD0gMHhGRkZGRkZGRi4KKyAqLworCisvKiBDb21wdXRlIGlu
dmVyc2Ugb2YgTFBDIHByZWRpY3Rpb24gZ2FpbiwgYW5kICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworLyogdGVzdCBpZiBMUEMgY29lZmZpY2llbnRzIGFyZSBzdGFibGUgKGFsbCBwb2xlcyB3
aXRoaW4gdW5pdCBjaXJjbGUpICAgKi8KK3N0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMyIExQ
Q19pbnZlcnNlX3ByZWRfZ2Fpbl9RQV9uZW9uKCAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRp
Y3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgKi8KKyAgICBvcHVzX2ludDMyICAg
ICAgICAgICBBX1FBWyBTSUxLX01BWF9PUkRFUl9MUEMgXSwgICAgICAgICAvKiBJICAgUHJlZGlj
dGlvbiBjb2VmZmljaWVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludCAgICAgICBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgUHJlZGljdGlvbiBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKykKK3sKKyAgICBvcHVzX2ludCAgIGssIG4sIG11bHQyUTsKKyAgICBvcHVz
X2ludDMyIGludkdhaW5fUTMwLCByY19RMzEsIHJjX211bHQxX1EzMCwgcmNfbXVsdDIsIHRtcDEs
IHRtcDI7CisgICAgb3B1c19pbnQzMiBtYXgsIG1pbjsKKyAgICBpbnQzMng0X3QgIG1heF9zMzJ4
NCwgbWluX3MzMng0OworICAgIGludDMyeDJfdCAgbWF4X3MzMngyLCBtaW5fczMyeDI7CisKKyAg
ICBtYXhfczMyeDQgPSB2ZHVwcV9uX3MzMiggc2lsa19pbnQzMl9NSU4gKTsKKyAgICBtaW5fczMy
eDQgPSB2ZHVwcV9uX3MzMiggc2lsa19pbnQzMl9NQVggKTsKKyAgICBpbnZHYWluX1EzMCA9IFNJ
TEtfRklYX0NPTlNUKCAxLCAzMCApOworICAgIGZvciggayA9IG9yZGVyIC0gMTsgayA+IDA7IGst
LSApIHsKKyAgICAgICAgaW50MzJ4Ml90IHJjX1EzMV9zMzJ4MiwgcmNfbXVsdDJfczMyeDI7Cisg
ICAgICAgIGludDY0eDJfdCBtdWx0MlFfczY0eDI7CisKKyAgICAgICAgLyogQ2hlY2sgZm9yIHN0
YWJpbGl0eSAqLworICAgICAgICBpZiggKCBBX1FBWyBrIF0gPiBBX0xJTUlUICkgfHwgKCBBX1FB
WyBrIF0gPCAtQV9MSU1JVCApICkgeworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0K
KworICAgICAgICAvKiBTZXQgUkMgZXF1YWwgdG8gbmVnYXRlZCBBUiBjb2VmICovCisgICAgICAg
IHJjX1EzMSA9IC1zaWxrX0xTSElGVCggQV9RQVsgayBdLCAzMSAtIFFBICk7CisKKyAgICAgICAg
LyogcmNfbXVsdDFfUTMwIHJhbmdlOiBbIDEgOiAyXjMwIF0gKi8KKyAgICAgICAgcmNfbXVsdDFf
UTMwID0gc2lsa19TVUIzMiggU0lMS19GSVhfQ09OU1QoIDEsIDMwICksIHNpbGtfU01NVUwoIHJj
X1EzMSwgcmNfUTMxICkgKTsKKyAgICAgICAgc2lsa19hc3NlcnQoIHJjX211bHQxX1EzMCA+ICgg
MSA8PCAxNSApICk7ICAgICAgICAgICAgICAgICAgIC8qIHJlZHVjZSBBX0xJTUlUIGlmIGZhaWxz
ICovCisgICAgICAgIHNpbGtfYXNzZXJ0KCByY19tdWx0MV9RMzAgPD0gKCAxIDw8IDMwICkgKTsK
KworICAgICAgICAvKiBVcGRhdGUgaW52ZXJzZSBnYWluICovCisgICAgICAgIC8qIGludkdhaW5f
UTMwIHJhbmdlOiBbIDAgOiAyXjMwIF0gKi8KKyAgICAgICAgaW52R2Fpbl9RMzAgPSBzaWxrX0xT
SElGVCggc2lsa19TTU1VTCggaW52R2Fpbl9RMzAsIHJjX211bHQxX1EzMCApLCAyICk7CisgICAg
ICAgIHNpbGtfYXNzZXJ0KCBpbnZHYWluX1EzMCA+PSAwICAgICAgICAgICApOworICAgICAgICBz
aWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPD0gKCAxIDw8IDMwICkgKTsKKyAgICAgICAgaWYoIGlu
dkdhaW5fUTMwIDwgU0lMS19GSVhfQ09OU1QoIDEuMGYgLyBNQVhfUFJFRElDVElPTl9QT1dFUl9H
QUlOLCAzMCApICkgeworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKworICAgICAg
ICAvKiByY19tdWx0MiByYW5nZTogWyAyXjMwIDogc2lsa19pbnQzMl9NQVggXSAqLworICAgICAg
ICBtdWx0MlEgPSAzMiAtIHNpbGtfQ0xaMzIoIHNpbGtfYWJzKCByY19tdWx0MV9RMzAgKSApOwor
ICAgICAgICByY19tdWx0MiA9IHNpbGtfSU5WRVJTRTMyX3ZhclEoIHJjX211bHQxX1EzMCwgbXVs
dDJRICsgMzAgKTsKKworICAgICAgICAvKiBVcGRhdGUgQVIgY29lZmZpY2llbnQgKi8KKyAgICAg
ICAgcmNfUTMxX3MzMngyICAgPSB2ZHVwX25fczMyKCByY19RMzEgKTsKKyAgICAgICAgbXVsdDJR
X3M2NHgyICAgPSB2ZHVwcV9uX3M2NCggLW11bHQyUSApOworICAgICAgICByY19tdWx0Ml9zMzJ4
MiA9IHZkdXBfbl9zMzIoIHJjX211bHQyICk7CisKKyAgICAgICAgZm9yKCBuID0gMDsgbiA8ICgg
KCBrICsgMSApID4+IDEgKSAtIDM7IG4gKz0gNCApIHsKKyAgICAgICAgICAgIC8qIFdlIGFsd2F5
cyBjYWxjdWxhdGUgZXh0cmEgZWxlbWVudHMgb2YgQV9RQSBidWZmZXIgd2hlbiAoIGsgJSA0ICkg
IT0gMCwgdG8gdGFrZSB0aGUgYWR2YW50YWdlIG9mIFNJTUQgcGFyYWxsZWxpemF0aW9uLiAqLwor
ICAgICAgICAgICAgaW50MzJ4NF90IHRtcDFfczMyeDQsIHRtcDJfczMyeDQsIHQwX3MzMng0LCB0
MV9zMzJ4NCwgczBfczMyeDQsIHMxX3MzMng0LCB0X1FBMF9zMzJ4NCwgdF9RQTFfczMyeDQ7Cisg
ICAgICAgICAgICBpbnQ2NHgyX3QgdDBfczY0eDIsIHQxX3M2NHgyLCB0Ml9zNjR4MiwgdDNfczY0
eDI7CisgICAgICAgICAgICB0bXAxX3MzMng0ICA9IHZsZDFxX3MzMiggQV9RQSArIG4gKTsKKyAg
ICAgICAgICAgIHRtcDJfczMyeDQgID0gdmxkMXFfczMyKCBBX1FBICsgayAtIG4gLSA0ICk7Cisg
ICAgICAgICAgICB0bXAyX3MzMng0ICA9IHZyZXY2NHFfczMyKCB0bXAyX3MzMng0ICk7CisgICAg
ICAgICAgICB0bXAyX3MzMng0ICA9IHZjb21iaW5lX3MzMiggdmdldF9oaWdoX3MzMiggdG1wMl9z
MzJ4NCApLCB2Z2V0X2xvd19zMzIoIHRtcDJfczMyeDQgKSApOworICAgICAgICAgICAgdDBfczMy
eDQgICAgPSB2cXJkbXVsaHFfbGFuZV9zMzIoIHRtcDJfczMyeDQsIHJjX1EzMV9zMzJ4MiwgMCAp
OworICAgICAgICAgICAgdDFfczMyeDQgICAgPSB2cXJkbXVsaHFfbGFuZV9zMzIoIHRtcDFfczMy
eDQsIHJjX1EzMV9zMzJ4MiwgMCApOworICAgICAgICAgICAgdF9RQTBfczMyeDQgPSB2cXN1YnFf
czMyKCB0bXAxX3MzMng0LCB0MF9zMzJ4NCApOworICAgICAgICAgICAgdF9RQTFfczMyeDQgPSB2
cXN1YnFfczMyKCB0bXAyX3MzMng0LCB0MV9zMzJ4NCApOworICAgICAgICAgICAgdDBfczY0eDIg
ICAgPSB2bXVsbF9zMzIoIHZnZXRfbG93X3MzMiAoIHRfUUEwX3MzMng0ICksIHJjX211bHQyX3Mz
MngyICk7CisgICAgICAgICAgICB0MV9zNjR4MiAgICA9IHZtdWxsX3MzMiggdmdldF9oaWdoX3Mz
MiggdF9RQTBfczMyeDQgKSwgcmNfbXVsdDJfczMyeDIgKTsKKyAgICAgICAgICAgIHQyX3M2NHgy
ICAgID0gdm11bGxfczMyKCB2Z2V0X2xvd19zMzIgKCB0X1FBMV9zMzJ4NCApLCByY19tdWx0Ml9z
MzJ4MiApOworICAgICAgICAgICAgdDNfczY0eDIgICAgPSB2bXVsbF9zMzIoIHZnZXRfaGlnaF9z
MzIoIHRfUUExX3MzMng0ICksIHJjX211bHQyX3MzMngyICk7CisgICAgICAgICAgICB0MF9zNjR4
MiAgICA9IHZyc2hscV9zNjQoIHQwX3M2NHgyLCBtdWx0MlFfczY0eDIgKTsKKyAgICAgICAgICAg
IHQxX3M2NHgyICAgID0gdnJzaGxxX3M2NCggdDFfczY0eDIsIG11bHQyUV9zNjR4MiApOworICAg
ICAgICAgICAgdDJfczY0eDIgICAgPSB2cnNobHFfczY0KCB0Ml9zNjR4MiwgbXVsdDJRX3M2NHgy
ICk7CisgICAgICAgICAgICB0M19zNjR4MiAgICA9IHZyc2hscV9zNjQoIHQzX3M2NHgyLCBtdWx0
MlFfczY0eDIgKTsKKyAgICAgICAgICAgIHQwX3MzMng0ICAgID0gdmNvbWJpbmVfczMyKCB2bW92
bl9zNjQoIHQwX3M2NHgyICksIHZtb3ZuX3M2NCggdDFfczY0eDIgKSApOworICAgICAgICAgICAg
dDFfczMyeDQgICAgPSB2Y29tYmluZV9zMzIoIHZtb3ZuX3M2NCggdDJfczY0eDIgKSwgdm1vdm5f
czY0KCB0M19zNjR4MiApICk7CisgICAgICAgICAgICBzMF9zMzJ4NCAgICA9IHZjb21iaW5lX3Mz
MiggdnNocm5fbl9zNjQoIHQwX3M2NHgyLCAzMSApLCB2c2hybl9uX3M2NCggdDFfczY0eDIsIDMx
ICkgKTsKKyAgICAgICAgICAgIHMxX3MzMng0ICAgID0gdmNvbWJpbmVfczMyKCB2c2hybl9uX3M2
NCggdDJfczY0eDIsIDMxICksIHZzaHJuX25fczY0KCB0M19zNjR4MiwgMzEgKSApOworICAgICAg
ICAgICAgbWF4X3MzMng0ICAgPSB2bWF4cV9zMzIoIG1heF9zMzJ4NCwgczBfczMyeDQgKTsKKyAg
ICAgICAgICAgIG1pbl9zMzJ4NCAgID0gdm1pbnFfczMyKCBtaW5fczMyeDQsIHMwX3MzMng0ICk7
CisgICAgICAgICAgICBtYXhfczMyeDQgICA9IHZtYXhxX3MzMiggbWF4X3MzMng0LCBzMV9zMzJ4
NCApOworICAgICAgICAgICAgbWluX3MzMng0ICAgPSB2bWlucV9zMzIoIG1pbl9zMzJ4NCwgczFf
czMyeDQgKTsKKyAgICAgICAgICAgIHQxX3MzMng0ICAgID0gdnJldjY0cV9zMzIoIHQxX3MzMng0
ICk7CisgICAgICAgICAgICB0MV9zMzJ4NCAgICA9IHZjb21iaW5lX3MzMiggdmdldF9oaWdoX3Mz
MiggdDFfczMyeDQgKSwgdmdldF9sb3dfczMyKCB0MV9zMzJ4NCApICk7CisgICAgICAgICAgICB2
c3QxcV9zMzIoIEFfUUEgKyBuLCAgICAgICAgIHQwX3MzMng0ICk7CisgICAgICAgICAgICB2c3Qx
cV9zMzIoIEFfUUEgKyBrIC0gbiAtIDQsIHQxX3MzMng0ICk7CisgICAgICAgIH0KKyAgICAgICAg
Zm9yKCA7IG4gPCAoayArIDEpID4+IDE7IG4rKyApIHsKKyAgICAgICAgICAgIG9wdXNfaW50NjQg
dG1wNjQ7CisgICAgICAgICAgICB0bXAxID0gQV9RQVsgbiBdOworICAgICAgICAgICAgdG1wMiA9
IEFfUUFbIGsgLSBuIC0gMSBdOworICAgICAgICAgICAgdG1wNjQgPSBzaWxrX1JTSElGVF9ST1VO
RDY0KCBzaWxrX1NNVUxMKCBzaWxrX1NVQl9TQVQzMih0bXAxLAorICAgICAgICAgICAgICAgICAg
TVVMMzJfRlJBQ19RKCB0bXAyLCByY19RMzEsIDMxICkgKSwgcmNfbXVsdDIgKSwgbXVsdDJRKTsK
KyAgICAgICAgICAgIGlmKCB0bXA2NCA+IHNpbGtfaW50MzJfTUFYIHx8IHRtcDY0IDwgc2lsa19p
bnQzMl9NSU4gKSB7CisgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIEFfUUFbIG4gXSA9ICggb3B1c19pbnQzMiApdG1wNjQ7CisgICAgICAgICAgICB0
bXA2NCA9IHNpbGtfUlNISUZUX1JPVU5ENjQoIHNpbGtfU01VTEwoIHNpbGtfU1VCX1NBVDMyKHRt
cDIsCisgICAgICAgICAgICAgICAgICBNVUwzMl9GUkFDX1EoIHRtcDEsIHJjX1EzMSwgMzEgKSAp
LCByY19tdWx0MiksIG11bHQyUSk7CisgICAgICAgICAgICBpZiggdG1wNjQgPiBzaWxrX2ludDMy
X01BWCB8fCB0bXA2NCA8IHNpbGtfaW50MzJfTUlOICkgeworICAgICAgICAgICAgICAgcmV0dXJu
IDA7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBBX1FBWyBrIC0gbiAtIDEgXSA9ICggb3B1
c19pbnQzMiApdG1wNjQ7CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvKiBDaGVjayBmb3Igc3Rh
YmlsaXR5ICovCisgICAgaWYoICggQV9RQVsgayBdID4gQV9MSU1JVCApIHx8ICggQV9RQVsgayBd
IDwgLUFfTElNSVQgKSApIHsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgbWF4X3Mz
MngyID0gdm1heF9zMzIoIHZnZXRfbG93X3MzMiggbWF4X3MzMng0ICksIHZnZXRfaGlnaF9zMzIo
IG1heF9zMzJ4NCApICk7CisgICAgbWluX3MzMngyID0gdm1pbl9zMzIoIHZnZXRfbG93X3MzMigg
bWluX3MzMng0ICksIHZnZXRfaGlnaF9zMzIoIG1pbl9zMzJ4NCApICk7CisgICAgbWF4X3MzMngy
ID0gdm1heF9zMzIoIG1heF9zMzJ4MiwgdnJlaW50ZXJwcmV0X3MzMl9zNjQoIHZzaHJfbl9zNjQo
IHZyZWludGVycHJldF9zNjRfczMyKCBtYXhfczMyeDIgKSwgMzIgKSApICk7CisgICAgbWluX3Mz
MngyID0gdm1pbl9zMzIoIG1pbl9zMzJ4MiwgdnJlaW50ZXJwcmV0X3MzMl9zNjQoIHZzaHJfbl9z
NjQoIHZyZWludGVycHJldF9zNjRfczMyKCBtaW5fczMyeDIgKSwgMzIgKSApICk7CisgICAgbWF4
ID0gdmdldF9sYW5lX3MzMiggbWF4X3MzMngyLCAwICk7CisgICAgbWluID0gdmdldF9sYW5lX3Mz
MiggbWluX3MzMngyLCAwICk7CisgICAgaWYoICggbWF4ID4gMCApIHx8ICggbWluIDwgLTEgKSAp
IHsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgLyogU2V0IFJDIGVxdWFsIHRvIG5l
Z2F0ZWQgQVIgY29lZiAqLworICAgIHJjX1EzMSA9IC1zaWxrX0xTSElGVCggQV9RQVsgMCBdLCAz
MSAtIFFBICk7CisKKyAgICAvKiBSYW5nZTogWyAxIDogMl4zMCBdICovCisgICAgcmNfbXVsdDFf
UTMwID0gc2lsa19TVUIzMiggU0lMS19GSVhfQ09OU1QoIDEsIDMwICksIHNpbGtfU01NVUwoIHJj
X1EzMSwgcmNfUTMxICkgKTsKKworICAgIC8qIFVwZGF0ZSBpbnZlcnNlIGdhaW4gKi8KKyAgICAv
KiBSYW5nZTogWyAwIDogMl4zMCBdICovCisgICAgaW52R2Fpbl9RMzAgPSBzaWxrX0xTSElGVCgg
c2lsa19TTU1VTCggaW52R2Fpbl9RMzAsIHJjX211bHQxX1EzMCApLCAyICk7CisgICAgc2lsa19h
c3NlcnQoIGludkdhaW5fUTMwID49IDAgICAgICAgICAgICk7CisgICAgc2lsa19hc3NlcnQoIGlu
dkdhaW5fUTMwIDw9ICggMSA8PCAzMCApICk7CisgICAgaWYoIGludkdhaW5fUTMwIDwgU0lMS19G
SVhfQ09OU1QoIDEuMGYgLyBNQVhfUFJFRElDVElPTl9QT1dFUl9HQUlOLCAzMCApICkgeworICAg
ICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICByZXR1cm4gaW52R2Fpbl9RMzA7Cit9CisKKy8q
IEZvciBpbnB1dCBpbiBRMTIgZG9tYWluICovCitvcHVzX2ludDMyIHNpbGtfTFBDX2ludmVyc2Vf
cHJlZF9nYWluX25lb24oICAgICAgICAgLyogTyAgIFJldHVybnMgaW52ZXJzZSBwcmVkaWN0aW9u
IGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgICAgICAgICAqQV9RMTIsICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIGNvZWZm
aWNpZW50cywgUTEyIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgUHJlZGlj
dGlvbiBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CispCit7CisjaWZkZWYgT1BVU19DSEVDS19BU00KKyAgICBjb25zdCBvcHVzX2ludDMyIGludkdh
aW5fUTMwX2MgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9jKCBBX1ExMiwgb3JkZXIgKTsK
KyNlbmRpZgorCisgICAgb3B1c19pbnQzMiBpbnZHYWluX1EzMDsKKyAgICBpZiggKCBTSUxLX01B
WF9PUkRFUl9MUEMgIT0gMjQgKSB8fCAoIG9yZGVyICYgMSApKSB7CisgICAgICAgIGludkdhaW5f
UTMwID0gc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fYyggQV9RMTIsIG9yZGVyICk7CisgICAg
fQorICAgIGVsc2UgeworICAgICAgICBvcHVzX2ludDMyIEF0bXBfUUFbIFNJTEtfTUFYX09SREVS
X0xQQyBdOworICAgICAgICBvcHVzX2ludDMyIERDX3Jlc3A7CisgICAgICAgIGludDE2eDhfdCAg
dDBfczE2eDgsIHQxX3MxNng4LCB0Ml9zMTZ4ODsKKyAgICAgICAgaW50MzJ4NF90ICB0MF9zMzJ4
NDsKKyAgICAgICAgY29uc3Qgb3B1c19pbnQgbGVmdG92ZXIgPSBvcmRlciAmIDc7CisKKyAgICAg
ICAgLyogSW5jcmVhc2UgUSBkb21haW4gb2YgdGhlIEFSIGNvZWZmaWNpZW50cyAqLworICAgICAg
ICB0MF9zMTZ4OCA9IHZsZDFxX3MxNiggQV9RMTIgKyAgMCApOworICAgICAgICB0MV9zMTZ4OCA9
IHZsZDFxX3MxNiggQV9RMTIgKyAgOCApOworICAgICAgICB0Ml9zMTZ4OCA9IHZsZDFxX3MxNigg
QV9RMTIgKyAxNiApOworICAgICAgICB0MF9zMzJ4NCA9IHZwYWRkbHFfczE2KCB0MF9zMTZ4OCAp
OworCisgICAgICAgIHN3aXRjaCggb3JkZXIgLSBsZWZ0b3ZlciApCisgICAgICAgIHsKKyAgICAg
ICAgY2FzZSAyNDoKKyAgICAgICAgICAgIHQwX3MzMng0ID0gdnBhZGFscV9zMTYoIHQwX3MzMng0
LCB0Ml9zMTZ4OCApOworICAgICAgICAgICAgLyogSW50ZW5kIHRvIGZhbGwgdGhyb3VnaCAqLwor
CisgICAgICAgIGNhc2UgMTY6CisgICAgICAgICAgICB0MF9zMzJ4NCA9IHZwYWRhbHFfczE2KCB0
MF9zMzJ4NCwgdDFfczE2eDggKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggQXRtcF9RQSArIDE2
LCB2c2hsbF9uX3MxNiggdmdldF9sb3dfczE2ICggdDJfczE2eDggKSwgUUEgLSAxMiApICk7Cisg
ICAgICAgICAgICB2c3QxcV9zMzIoIEF0bXBfUUEgKyAyMCwgdnNobGxfbl9zMTYoIHZnZXRfaGln
aF9zMTYoIHQyX3MxNng4ICksIFFBIC0gMTIgKSApOworICAgICAgICAgICAgLyogSW50ZW5kIHRv
IGZhbGwgdGhyb3VnaCAqLworCisgICAgICAgIGNhc2UgODoKKyAgICAgICAgeworICAgICAgICAg
ICAgY29uc3QgaW50MzJ4Ml90IHRfczMyeDIgPSB2cGFkZF9zMzIoIHZnZXRfbG93X3MzMiggdDBf
czMyeDQgKSwgdmdldF9oaWdoX3MzMiggdDBfczMyeDQgKSApOworICAgICAgICAgICAgY29uc3Qg
aW50NjR4MV90IHRfczY0eDEgPSB2cGFkZGxfczMyKCB0X3MzMngyICk7CisgICAgICAgICAgICBE
Q19yZXNwID0gdmdldF9sYW5lX3MzMiggdnJlaW50ZXJwcmV0X3MzMl9zNjQoIHRfczY0eDEgKSwg
MCApOworICAgICAgICAgICAgdnN0MXFfczMyKCBBdG1wX1FBICsgIDgsIHZzaGxsX25fczE2KCB2
Z2V0X2xvd19zMTYgKCB0MV9zMTZ4OCApLCBRQSAtIDEyICkgKTsKKyAgICAgICAgICAgIHZzdDFx
X3MzMiggQXRtcF9RQSArIDEyLCB2c2hsbF9uX3MxNiggdmdldF9oaWdoX3MxNiggdDFfczE2eDgg
KSwgUUEgLSAxMiApICk7CisgICAgICAgIH0KKyAgICAgICAgYnJlYWs7CisKKyAgICAgICAgZGVm
YXVsdDoKKyAgICAgICAgICAgIERDX3Jlc3AgPSAwOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIH0KKyAgICAgICAgQV9RMTIgKz0gb3JkZXIgLSBsZWZ0b3ZlcjsKKworICAgICAgICBzd2l0
Y2goIGxlZnRvdmVyICkKKyAgICAgICAgeworICAgICAgICBjYXNlIDY6CisgICAgICAgICAgICBE
Q19yZXNwICs9IChvcHVzX2ludDMyKUFfUTEyWyA1IF07CisgICAgICAgICAgICBEQ19yZXNwICs9
IChvcHVzX2ludDMyKUFfUTEyWyA0IF07CisgICAgICAgICAgICAvKiBJbnRlbmQgdG8gZmFsbCB0
aHJvdWdoICovCisKKyAgICAgICAgY2FzZSA0OgorICAgICAgICAgICAgRENfcmVzcCArPSAob3B1
c19pbnQzMilBX1ExMlsgMyBdOworICAgICAgICAgICAgRENfcmVzcCArPSAob3B1c19pbnQzMilB
X1ExMlsgMiBdOworICAgICAgICAgICAgLyogSW50ZW5kIHRvIGZhbGwgdGhyb3VnaCAqLworCisg
ICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIERDX3Jlc3AgKz0gKG9wdXNfaW50MzIpQV9RMTJb
IDEgXTsKKyAgICAgICAgICAgIERDX3Jlc3AgKz0gKG9wdXNfaW50MzIpQV9RMTJbIDAgXTsKKyAg
ICAgICAgICAgIC8qIEludGVuZCB0byBmYWxsIHRocm91Z2ggKi8KKworICAgICAgICBkZWZhdWx0
OgorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKworICAgICAgICAvKiBJZiB0aGUgREMg
aXMgdW5zdGFibGUsIHdlIGRvbid0IGV2ZW4gbmVlZCB0byBkbyB0aGUgZnVsbCBjYWxjdWxhdGlv
bnMgKi8KKyAgICAgICAgaWYoIERDX3Jlc3AgPj0gNDA5NiApIHsKKyAgICAgICAgICAgIGludkdh
aW5fUTMwID0gMDsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggQXRt
cF9RQSArIDAsIHZzaGxsX25fczE2KCB2Z2V0X2xvd19zMTYgKCB0MF9zMTZ4OCApLCBRQSAtIDEy
ICkgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggQXRtcF9RQSArIDQsIHZzaGxsX25fczE2KCB2
Z2V0X2hpZ2hfczE2KCB0MF9zMTZ4OCApLCBRQSAtIDEyICkgKTsKKyAgICAgICAgICAgIGludkdh
aW5fUTMwID0gTFBDX2ludmVyc2VfcHJlZF9nYWluX1FBX25lb24oIEF0bXBfUUEsIG9yZGVyICk7
CisgICAgICAgIH0KKyAgICB9CisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIHNpbGtfYXNz
ZXJ0KCBpbnZHYWluX1EzMF9jID09IGludkdhaW5fUTMwICk7CisjZW5kaWYKKworICAgIHJldHVy
biBpbnZHYWluX1EzMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vTlNRX2RlbF9kZWNfYXJtLmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvYXJtL05TUV9kZWxfZGVjX2FybS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjllNzZlMTY5Mjc5OWI0MmYz
ZWI0NDNhYmI0N2FkMzcyMmE1MWYyYzQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL05TUV9k
ZWxfZGVjX2FybS5oCkBAIC0wLDAgKzEsMTAwIEBACisvKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK0NvcHlyaWdo
dCAoYykgMjAxNyBHb29nbGUgSW5jLgorUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6Cist
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCitkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0
aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9y
IHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVybWlzc2lvbi4KK1RISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElT
IgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKK0FSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQor
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
K0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KKworI2lmbmRlZiBTSUxLX05TUV9ERUxfREVDX0FSTV9I
CisjZGVmaW5lIFNJTEtfTlNRX0RFTF9ERUNfQVJNX0gKKworI2luY2x1ZGUgImNlbHQvYXJtL2Fy
bWNwdS5oIgorCisjaWYgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpCit2b2lk
IHNpbGtfTlNRX2RlbF9kZWNfbmVvbigKKyAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgKnBz
RW5jQywgc2lsa19uc3Ffc3RhdGUgKk5TUSwKKyAgICBTaWRlSW5mb0luZGljZXMgKnBzSW5kaWNl
cywgY29uc3Qgb3B1c19pbnQxNiB4MTZbXSwgb3B1c19pbnQ4IHB1bHNlc1tdLAorICAgIGNvbnN0
IG9wdXNfaW50MTYgUHJlZENvZWZfUTEyWzIgKiBNQVhfTFBDX09SREVSXSwKKyAgICBjb25zdCBv
cHVzX2ludDE2IExUUENvZWZfUTE0W0xUUF9PUkRFUiAqIE1BWF9OQl9TVUJGUl0sCisgICAgY29u
c3Qgb3B1c19pbnQxNiBBUl9RMTNbTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUl0s
CisgICAgY29uc3Qgb3B1c19pbnQgSGFybVNoYXBlR2Fpbl9RMTRbTUFYX05CX1NVQkZSXSwKKyAg
ICBjb25zdCBvcHVzX2ludCBUaWx0X1ExNFtNQVhfTkJfU1VCRlJdLAorICAgIGNvbnN0IG9wdXNf
aW50MzIgTEZfc2hwX1ExNFtNQVhfTkJfU1VCRlJdLAorICAgIGNvbnN0IG9wdXNfaW50MzIgR2Fp
bnNfUTE2W01BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19pbnQgcGl0Y2hMW01BWF9OQl9T
VUJGUl0sIGNvbnN0IG9wdXNfaW50IExhbWJkYV9RMTAsCisgICAgY29uc3Qgb3B1c19pbnQgTFRQ
X3NjYWxlX1ExNCk7CisKKyNpZiAhZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkKKyNkZWZpbmUgT1ZF
UlJJREVfc2lsa19OU1FfZGVsX2RlYyAoMSkKKyNkZWZpbmUgc2lsa19OU1FfZGVsX2RlYyhwc0Vu
Y0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEyLCAgXAorICAgICAg
ICAgICAgICAgICAgICAgICAgIExUUENvZWZfUTE0LCBBUl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0
LCBUaWx0X1ExNCwgICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgTEZfc2hwX1ExNCwgR2Fp
bnNfUTE2LCBwaXRjaEwsIExhbWJkYV9RMTAsICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICBMVFBfc2NhbGVfUTE0LCBhcmNoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICgodm9pZCkoYXJjaCksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgIFBSRVNVTUVfTkVPTihzaWxrX05TUV9k
ZWxfZGVjKSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgIHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExU
UENvZWZfUTE0LCAgICAgXAorICAgICAgICAgQVJfUTEzLCBIYXJtU2hhcGVHYWluX1ExNCwgVGls
dF9RMTQsIExGX3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBcCisgICAgICAgICBMYW1iZGFf
UTEwLCBMVFBfc2NhbGVfUTE0KSkKKyNlbmRpZgorI2VuZGlmCisKKyNpZiAhZGVmaW5lZChPVkVS
UklERV9zaWxrX05TUV9kZWxfZGVjKQorLypJcyBydW4tdGltZSBDUFUgZGV0ZWN0aW9uIGVuYWJs
ZWQgb24gdGhpcyBwbGF0Zm9ybT8qLworI2lmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpICYmIChk
ZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikgJiYgXAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikpCitl
eHRlcm4gdm9pZCAoKmNvbnN0IFNJTEtfTlNRX0RFTF9ERUNfSU1QTFtPUFVTX0FSQ0hNQVNLICsg
MV0pKAorICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbmNDLCBzaWxrX25zcV9zdGF0
ZSAqTlNRLAorICAgIFNpZGVJbmZvSW5kaWNlcyAqcHNJbmRpY2VzLCBjb25zdCBvcHVzX2ludDE2
IHgxNltdLCBvcHVzX2ludDggcHVsc2VzW10sCisgICAgY29uc3Qgb3B1c19pbnQxNiBQcmVkQ29l
Zl9RMTJbMiAqIE1BWF9MUENfT1JERVJdLAorICAgIGNvbnN0IG9wdXNfaW50MTYgTFRQQ29lZl9R
MTRbTFRQX09SREVSICogTUFYX05CX1NVQkZSXSwKKyAgICBjb25zdCBvcHVzX2ludDE2IEFSX1Ex
M1tNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSXSwKKyAgICBjb25zdCBvcHVzX2lu
dCBIYXJtU2hhcGVHYWluX1ExNFtNQVhfTkJfU1VCRlJdLAorICAgIGNvbnN0IG9wdXNfaW50IFRp
bHRfUTE0W01BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19pbnQzMiBMRl9zaHBfUTE0W01B
WF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19pbnQzMiBHYWluc19RMTZbTUFYX05CX1NVQkZS
XSwKKyAgICBjb25zdCBvcHVzX2ludCBwaXRjaExbTUFYX05CX1NVQkZSXSwgY29uc3Qgb3B1c19p
bnQgTGFtYmRhX1ExMCwKKyAgICBjb25zdCBvcHVzX2ludCBMVFBfc2NhbGVfUTE0KTsKKyNkZWZp
bmUgT1ZFUlJJREVfc2lsa19OU1FfZGVsX2RlYyAoMSkKKyNkZWZpbmUgc2lsa19OU1FfZGVsX2Rl
Yyhwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEyLCBcCisg
ICAgICAgICAgICAgICAgICAgICAgICAgTFRQQ29lZl9RMTQsIEFSX1ExMywgSGFybVNoYXBlR2Fp
bl9RMTQsIFRpbHRfUTE0LCAgXAorICAgICAgICAgICAgICAgICAgICAgICAgIExGX3NocF9RMTQs
IEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCAgICAgICAgIFwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICBMVFBfc2NhbGVfUTE0LCBhcmNoKSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgKCgqU0lMS19OU1FfREVMX0RFQ19JTVBMWyhhcmNoKSZPUFVTX0FSQ0hNQVNL
XSkoICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBwc0VuY0MsIE5TUSwgcHNJbmRp
Y2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEyLCBMVFBDb2VmX1ExNCwgICAgIFwKKyAgICAg
ICAgQVJfUTEzLCBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsIExGX3NocF9RMTQsIEdhaW5z
X1ExNiwgcGl0Y2hMLCBcCisgICAgICAgIExhbWJkYV9RMTAsIExUUF9zY2FsZV9RMTQpKQorI2Vs
aWYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikKKyNkZWZpbmUgT1ZFUlJJREVf
c2lsa19OU1FfZGVsX2RlYyAoMSkKKyNkZWZpbmUgc2lsa19OU1FfZGVsX2RlYyhwc0VuY0MsIE5T
USwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEyLCAgIFwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICBMVFBDb2VmX1ExNCwgQVJfUTEzLCBIYXJtU2hhcGVHYWluX1ExNCwgVGls
dF9RMTQsICAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBMRl9zaHBfUTE0LCBHYWluc19R
MTYsIHBpdGNoTCwgTGFtYmRhX1ExMCwgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICBMVFBfc2NhbGVfUTE0LCBhcmNoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICAoKHZvaWQpKGFyY2gpLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgc2lsa19OU1FfZGVsX2RlY19uZW9uKHBz
RW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIFwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIExUUENvZWZfUTE0LCBBUl9RMTMsIEhhcm1TaGFwZUdhaW5f
UTE0LCBUaWx0X1ExNCwgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIExGX3NocF9RMTQs
IEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCAgICAgICAgIFwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIExUUF9zY2FsZV9RMTQpKQorI2VuZGlmCisjZW5kaWYKKworI2VuZGlmIC8q
IGVuZCBTSUxLX05TUV9ERUxfREVDX0FSTV9IICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL05TUV9k
ZWxfZGVjX25lb25faW50ci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfZGVsX2RlY19uZW9uX2ludHIuYwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4yMTI0MTBmMzYyOTI2MzFkMjJkZTVlYWMyNzJkYTA2OGNmYjhjMTU5Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfZGVsX2RlY19uZW9uX2ludHIuYwpAQCAtMCwwICsxLDEx
MjQgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKgorQ29weXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuCitS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworYXJlIG1ldDoKKy0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
K25vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKK2RvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCistIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQg
U29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBj
b250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVu
CitwZXJtaXNzaW9uLgorVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRQorQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFCitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCitDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCitJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFCitQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwor
CisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNp
bmNsdWRlIDxhcm1fbmVvbi5oPgorI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisjIGluY2x1ZGUgPHN0
cmluZy5oPgorI2VuZGlmCisjaW5jbHVkZSAibWFpbi5oIgorI2luY2x1ZGUgInN0YWNrX2FsbG9j
LmgiCisKKy8qIE5FT04gaW50cmluc2ljcyBvcHRpbWl6YXRpb24gbm93IGNhbiBvbmx5IHBhcmFs
bGVsaXplIHVwIHRvIDQgZGVsYXkgZGVjaXNpb24gc3RhdGVzLiAgICAqLworLyogSWYgdGhlcmUg
YXJlIG1vcmUgc3RhdGVzLCBDIGZ1bmN0aW9uIGlzIGNhbGxlZCwgYW5kIHRoaXMgb3B0aW1pemF0
aW9uIG11c3QgYmUgZXhwYW5kZWQuICovCisjZGVmaW5lIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVT
IDQKKwordHlwZWRlZiBzdHJ1Y3QgeworICAgIG9wdXNfaW50MzIgc0xQQ19RMTRbIE1BWF9TVUJf
RlJBTUVfTEVOR1RIICsgTlNRX0xQQ19CVUZfTEVOR1RIIF1bIE5FT05fTUFYX0RFTF9ERUNfU1RB
VEVTIF07CisgICAgb3B1c19pbnQzMiBSYW5kU3RhdGVbIERFQ0lTSU9OX0RFTEFZIF1bICAgICBO
RU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIgUV9RMTBbICAgICBERUNJ
U0lPTl9ERUxBWSBdWyAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2lu
dDMyIFhxX1ExNFsgICAgREVDSVNJT05fREVMQVkgXVsgICAgIE5FT05fTUFYX0RFTF9ERUNfU1RB
VEVTIF07CisgICAgb3B1c19pbnQzMiBQcmVkX1ExNVsgIERFQ0lTSU9OX0RFTEFZIF1bICAgICBO
RU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIgU2hhcGVfUTE0WyBERUNJ
U0lPTl9ERUxBWSBdWyAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2lu
dDMyIHNBUjJfUTE0WyBNQVhfU0hBUEVfTFBDX09SREVSIF1bIE5FT05fTUFYX0RFTF9ERUNfU1RB
VEVTIF07CisgICAgb3B1c19pbnQzMiBMRl9BUl9RMTRbIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVT
IF07CisgICAgb3B1c19pbnQzMiBEaWZmX1ExNFsgIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIF07
CisgICAgb3B1c19pbnQzMiBTZWVkWyAgICAgIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIF07Cisg
ICAgb3B1c19pbnQzMiBTZWVkSW5pdFsgIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIF07CisgICAg
b3B1c19pbnQzMiBSRF9RMTBbICAgIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIF07Cit9IE5TUV9k
ZWxfZGVjc19zdHJ1Y3Q7CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBvcHVzX2ludDMyIFFfUTEw
WyAgICAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2ludDMyIFJEX1Ex
MFsgICAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2ludDMyIHhxX1Ex
NFsgICAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2ludDMyIExGX0FS
X1ExNFsgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2ludDMyIERpZmZf
UTE0WyAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2ludDMyIHNMVFBf
c2hwX1ExNFsgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2ludDMyIExQQ19l
eGNfUTE0WyAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKK30gTlNRX3NhbXBsZXNfc3RydWN0
OworCitzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRl
c19uZW9uKAorICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbmNDLCAgICAgICAgICAg
ICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBz
aWxrX25zcV9zdGF0ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5T
USBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgTlNRX2RlbF9kZWNzX3N0
cnVjdCBwc0RlbERlY1tdLCAgICAgICAgICAgICAgICAgLyogSS9PICBEZWxheWVkIGRlY2lzaW9u
IHN0YXRlcyAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgeDE2W10sICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIHhfc2NfUTEwW10sICAgICAgICAgICAg
ICAgICAvKiBPICAgIElucHV0IHNjYWxlZCB3aXRoIDEvR2FpbiBpbiBRMTAgICAgICovCisgICAg
Y29uc3Qgb3B1c19pbnQxNiAgICBzTFRQW10sICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBS
ZS13aGl0ZW5lZCBMVFAgc3RhdGUgaW4gUTAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAg
ICAgICAgc0xUUF9RMTVbXSwgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIHN0YXRlIG1hdGNo
aW5nIHNjYWxlZCBpbnB1dCAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHN1YmZyLCAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFN1YmZyYW1lIG51bWJlciAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICBMVFBfc2NhbGVfUTE0LCAgICAgICAg
ICAgICAgLyogSSAgICBMVFAgc3RhdGUgc2NhbGluZyAgICAgICAgICAgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgR2FpbnNfUTE2WyBNQVhfTkJfU1VCRlIgXSwgIC8qIEkgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dCAgICAgIHBpdGNoTFsgTUFYX05CX1NVQkZSIF0sICAgICAvKiBJICAgIFBpdGNoIGxhZyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICBzaWduYWxf
dHlwZSwgICAgICAgICAgICAgICAgLyogSSAgICBTaWduYWwgdHlwZSAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgZGVjaXNpb25EZWxheSAgICAgICAg
ICAgICAgIC8qIEkgICAgRGVjaXNpb24gZGVsYXkgICAgICAgICAgICAgICAgICAgICAgKi8KKyk7
CisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiBOb2lz
ZSBzaGFwZSBxdWFudGl6ZXIgZm9yIG9uZSBzdWJmcmFtZSAqLworLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKi8KK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtf
bm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWNfbmVvbigKKyAgICBzaWxrX25zcV9zdGF0ZSAg
ICAgICpOU1EsICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBOU1FfZGVsX2RlY3Nfc3RydWN0IHBzRGVsRGVjW10sICAg
ICAgICAgICAgIC8qIEkvTyAgRGVsYXllZCBkZWNpc2lvbiBzdGF0ZXMgICAgICAgICAgICAgKi8K
KyAgICBvcHVzX2ludCAgICAgICAgICAgIHNpZ25hbFR5cGUsICAgICAgICAgICAgIC8qIEkgICAg
U2lnbmFsIHR5cGUgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dDMyICAgIHhfUTEwW10sICAgICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDggICAgICAgICAgIHB1bHNlc1tdLCAg
ICAgICAgICAgICAgIC8qIE8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBvcHVzX2ludDE2ICAgICAgICAgIHhxW10sICAgICAgICAgICAgICAgICAgIC8qIE8g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMy
ICAgICAgICAgIHNMVFBfUTE1W10sICAgICAgICAgICAgIC8qIEkvTyAgTFRQIGZpbHRlciBzdGF0
ZSAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIGRlbGF5ZWRH
YWluX1ExMFtdLCAgICAgIC8qIEkvTyAgR2FpbiBkZWxheSBidWZmZXIgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIGFfUTEyW10sICAgICAgICAgICAgICAgIC8q
IEkgICAgU2hvcnQgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAgICAgKi8KKyAgICBjb25zdCBv
cHVzX2ludDE2ICAgIGJfUTE0W10sICAgICAgICAgICAgICAgIC8qIEkgICAgTG9uZyB0ZXJtIHBy
ZWRpY3Rpb24gY29lZnMgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIEFSX3No
cF9RMTNbXSwgICAgICAgICAgIC8qIEkgICAgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAg
ICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIGxhZywgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgUGl0Y2ggbGFnICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVz
X2ludDMyICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQsIC8qIEkgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIFRp
bHRfUTE0LCAgICAgICAgICAgICAgIC8qIEkgICAgU3BlY3RyYWwgdGlsdCAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIExGX3NocF9RMTQsICAgICAgICAg
ICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBv
cHVzX2ludDMyICAgICAgICAgIEdhaW5fUTE2LCAgICAgICAgICAgICAgIC8qIEkgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAg
IExhbWJkYV9RMTAsICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIG9mZnNldF9RMTAsICAgICAg
ICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBvcHVzX2ludCAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5w
dXQgbGVuZ3RoICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAg
ICAgIHN1YmZyLCAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3ViZnJhbWUgbnVtYmVyICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHNoYXBpbmdMUENPcmRl
ciwgICAgICAgIC8qIEkgICAgU2hhcGluZyBMUEMgZmlsdGVyIG9yZGVyICAgICAgICAgICAgKi8K
KyAgICBvcHVzX2ludCAgICAgICAgICAgIHByZWRpY3RMUENPcmRlciwgICAgICAgIC8qIEkgICAg
UHJlZGljdGlvbiBmaWx0ZXIgb3JkZXIgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAg
ICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIG5TdGF0ZXNEZWxh
eWVkRGVjaXNpb24sIC8qIEkgICAgTnVtYmVyIG9mIHN0YXRlcyBpbiBkZWNpc2lvbiB0cmVlICAg
Ki8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkv
TyAgSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAgKi8KKyAgICBvcHVzX2ludCAg
ICAgICAgICAgIGRlY2lzaW9uRGVsYXkgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyk7CisKK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIGNv
cHlfd2lubmVyX3N0YXRlX2tlcm5lbCgKKyAgICBjb25zdCBOU1FfZGVsX2RlY3Nfc3RydWN0ICpw
c0RlbERlYywKKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgIG9mZnNldCwKKyAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgIGxhc3Rfc21wbGVfaWR4LAorICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgV2lubmVyX2luZCwKKyAgICBjb25zdCBpbnQzMngyX3QgICAgICAgICAgIGdh
aW5fbG9fczMyeDIsCisgICAgY29uc3QgaW50MzJ4Ml90ICAgICAgICAgICBnYWluX2hpX3MzMngy
LAorICAgIGNvbnN0IGludDMyeDRfdCAgICAgICAgICAgc2hpZnRfczMyeDQsCisgICAgaW50MzJ4
NF90ICAgICAgICAgICAgICAgICB0MF9zMzJ4NCwKKyAgICBpbnQzMng0X3QgICAgICAgICAgICAg
ICAgIHQxX3MzMng0LAorICAgIG9wdXNfaW50OCAqY29uc3QgICAgICAgICAgcHVsc2VzLAorICAg
IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKnB4cSwKKyAgICBzaWxrX25zcV9zdGF0ZSAgICAg
ICAgICAgICpOU1EKKykKK3sKKyAgICBpbnQxNng4X3QgdF9zMTZ4ODsKKyAgICBpbnQzMng0X3Qg
bzBfczMyeDQsIG8xX3MzMng0OworCisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBz
RGVsRGVjLT5RX1ExMFsgbGFzdF9zbXBsZV9pZHggLSAwIF1bIFdpbm5lcl9pbmQgXSwgdDBfczMy
eDQsIDAgKTsKKyAgICB0MF9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPlFfUTEw
WyBsYXN0X3NtcGxlX2lkeCAtIDEgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMSApOworICAg
IHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+UV9RMTBbIGxhc3Rfc21wbGVf
aWR4IC0gMiBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAyICk7CisgICAgdDBfczMyeDQgPSB2
bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5RX1ExMFsgbGFzdF9zbXBsZV9pZHggLSAzIF1bIFdp
bm5lcl9pbmQgXSwgdDBfczMyeDQsIDMgKTsKKyAgICB0MV9zMzJ4NCA9IHZsZDFxX2xhbmVfczMy
KCAmcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCAtIDQgXVsgV2lubmVyX2luZCBdLCB0
MV9zMzJ4NCwgMCApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+
UV9RMTBbIGxhc3Rfc21wbGVfaWR4IC0gNSBdWyBXaW5uZXJfaW5kIF0sIHQxX3MzMng0LCAxICk7
CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5RX1ExMFsgbGFzdF9z
bXBsZV9pZHggLSA2IF1bIFdpbm5lcl9pbmQgXSwgdDFfczMyeDQsIDIgKTsKKyAgICB0MV9zMzJ4
NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCAtIDcg
XVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMyApOworICAgIHRfczE2eDggPSB2Y29tYmluZV9z
MTYoIHZyc2hybl9uX3MzMiggdDBfczMyeDQsIDEwICksIHZyc2hybl9uX3MzMiggdDFfczMyeDQs
IDEwICkgKTsKKyAgICB2c3QxX3M4KCAmcHVsc2VzWyBvZmZzZXQgXSwgdm1vdm5fczE2KCB0X3Mx
Nng4ICkgKTsKKworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFf
UTE0WyBsYXN0X3NtcGxlX2lkeCAtIDAgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMCApOwor
ICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3Nt
cGxlX2lkeCAtIDEgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMSApOworICAgIHQwX3MzMng0
ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDIg
XVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMiApOworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFu
ZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDMgXVsgV2lubmVyX2lu
ZCBdLCB0MF9zMzJ4NCwgMyApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0Rl
bERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDQgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4
NCwgMCApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0
WyBsYXN0X3NtcGxlX2lkeCAtIDUgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMSApOworICAg
IHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxl
X2lkeCAtIDYgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMiApOworICAgIHQxX3MzMng0ID0g
dmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDcgXVsg
V2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMyApOworICAgIG8wX3MzMng0ID0gdnFkbXVsaHFfbGFu
ZV9zMzIoIHQwX3MzMng0LCBnYWluX2xvX3MzMngyLCAwICk7CisgICAgbzFfczMyeDQgPSB2cWRt
dWxocV9sYW5lX3MzMiggdDFfczMyeDQsIGdhaW5fbG9fczMyeDIsIDAgKTsKKyAgICBvMF9zMzJ4
NCA9IHZtbGFxX2xhbmVfczMyKCBvMF9zMzJ4NCwgdDBfczMyeDQsIGdhaW5faGlfczMyeDIsIDAg
KTsKKyAgICBvMV9zMzJ4NCA9IHZtbGFxX2xhbmVfczMyKCBvMV9zMzJ4NCwgdDFfczMyeDQsIGdh
aW5faGlfczMyeDIsIDAgKTsKKyAgICBvMF9zMzJ4NCA9IHZyc2hscV9zMzIoIG8wX3MzMng0LCBz
aGlmdF9zMzJ4NCApOworICAgIG8xX3MzMng0ID0gdnJzaGxxX3MzMiggbzFfczMyeDQsIHNoaWZ0
X3MzMng0ICk7CisgICAgdnN0MV9zMTYoICZweHFbIG9mZnNldCArIDAgXSwgdnFtb3ZuX3MzMigg
bzBfczMyeDQgKSApOworICAgIHZzdDFfczE2KCAmcHhxWyBvZmZzZXQgKyA0IF0sIHZxbW92bl9z
MzIoIG8xX3MzMng0ICkgKTsKKworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0Rl
bERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDAgXVsgV2lubmVyX2luZCBdLCB0MF9z
MzJ4NCwgMCApOworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hh
cGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDEgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMSAp
OworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBs
YXN0X3NtcGxlX2lkeCAtIDIgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMiApOworICAgIHQw
X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxl
X2lkeCAtIDMgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMyApOworICAgIHQxX3MzMng0ID0g
dmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDQg
XVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMCApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFu
ZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDUgXVsgV2lubmVy
X2luZCBdLCB0MV9zMzJ4NCwgMSApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZw
c0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDYgXVsgV2lubmVyX2luZCBdLCB0
MV9zMzJ4NCwgMiApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+
U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDcgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwg
MyApOworICAgIHZzdDFxX3MzMiggJk5TUS0+c0xUUF9zaHBfUTE0WyBOU1EtPnNMVFBfc2hwX2J1
Zl9pZHggKyBvZmZzZXQgKyAwIF0sIHQwX3MzMng0ICk7CisgICAgdnN0MXFfczMyKCAmTlNRLT5z
TFRQX3NocF9RMTRbIE5TUS0+c0xUUF9zaHBfYnVmX2lkeCArIG9mZnNldCArIDQgXSwgdDFfczMy
eDQgKTsKK30KKworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgY29weV93aW5uZXJfc3RhdGUoCisg
ICAgY29uc3QgTlNRX2RlbF9kZWNzX3N0cnVjdCAqcHNEZWxEZWMsCisgICAgY29uc3Qgb3B1c19p
bnQgICAgICAgICAgICBkZWNpc2lvbkRlbGF5LAorICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgc21wbF9idWZfaWR4LAorICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgV2lubmVyX2lu
ZCwKKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgIGdhaW4sCisgICAgY29uc3Qgb3B1c19p
bnQzMiAgICAgICAgICBzaGlmdCwKKyAgICBvcHVzX2ludDggKmNvbnN0ICAgICAgICAgIHB1bHNl
cywKKyAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICpweHEsCisgICAgc2lsa19uc3Ffc3Rh
dGUgICAgICAgICAgICAqTlNRCispCit7CisgICAgb3B1c19pbnQgICAgICAgIGksIGxhc3Rfc21w
bGVfaWR4OworICAgIGNvbnN0IGludDMyeDJfdCBnYWluX2xvX3MzMngyID0gdmR1cF9uX3MzMigg
c2lsa19MU0hJRlQzMiggZ2FpbiAmIDB4MDAwMEZGRkYsIDE1ICkgKTsKKyAgICBjb25zdCBpbnQz
MngyX3QgZ2Fpbl9oaV9zMzJ4MiA9IHZkdXBfbl9zMzIoIGdhaW4gPj4gMTYgKTsKKyAgICBjb25z
dCBpbnQzMng0X3Qgc2hpZnRfczMyeDQgPSB2ZHVwcV9uX3MzMiggLXNoaWZ0ICk7CisgICAgaW50
MzJ4NF90ICAgICAgIHQwX3MzMng0LCB0MV9zMzJ4NDsKKworICAgIHQwX3MzMng0ID0gdDFfczMy
eDQgPSB2ZHVwcV9uX3MzMiggMCApOyAvKiBpbml0aWFsaXphdGlvbiAqLworICAgIGxhc3Rfc21w
bGVfaWR4ID0gc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheSAtIDEgKyBERUNJU0lPTl9ERUxB
WTsKKyAgICBpZiggbGFzdF9zbXBsZV9pZHggPj0gREVDSVNJT05fREVMQVkgKSBsYXN0X3NtcGxl
X2lkeCAtPSBERUNJU0lPTl9ERUxBWTsKKyAgICBpZiggbGFzdF9zbXBsZV9pZHggPj0gREVDSVNJ
T05fREVMQVkgKSBsYXN0X3NtcGxlX2lkeCAtPSBERUNJU0lPTl9ERUxBWTsKKworICAgIGZvcigg
aSA9IDA7ICggaSA8ICggZGVjaXNpb25EZWxheSAtIDcgKSApICYmICggbGFzdF9zbXBsZV9pZHgg
Pj0gNyApOyBpICs9IDgsIGxhc3Rfc21wbGVfaWR4IC09IDggKSB7CisgICAgICAgIGNvcHlfd2lu
bmVyX3N0YXRlX2tlcm5lbCggcHNEZWxEZWMsIGkgLSBkZWNpc2lvbkRlbGF5LCBsYXN0X3NtcGxl
X2lkeCwgV2lubmVyX2luZCwgZ2Fpbl9sb19zMzJ4MiwgZ2Fpbl9oaV9zMzJ4Miwgc2hpZnRfczMy
eDQsIHQwX3MzMng0LCB0MV9zMzJ4NCwgcHVsc2VzLCBweHEsIE5TUSApOworICAgIH0KKyAgICBm
b3IoIDsgKCBpIDwgZGVjaXNpb25EZWxheSApICYmICggbGFzdF9zbXBsZV9pZHggPj0gMCApOyBp
KyssIGxhc3Rfc21wbGVfaWR4LS0gKSB7CisgICAgICAgIHB1bHNlc1sgaSAtIGRlY2lzaW9uRGVs
YXkgXSA9IChvcHVzX2ludDgpc2lsa19SU0hJRlRfUk9VTkQoIHBzRGVsRGVjLT5RX1ExMFsgbGFz
dF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdLCAxMCApOworICAgICAgICBweHFbIGkgLSBkZWNp
c2lvbkRlbGF5IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCgg
c2lsa19TTVVMV1coIHBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IF1bIFdpbm5lcl9p
bmQgXSwgZ2FpbiApLCBzaGlmdCApICk7CisgICAgICAgIE5TUS0+c0xUUF9zaHBfUTE0WyBOU1Et
PnNMVFBfc2hwX2J1Zl9pZHggLSBkZWNpc2lvbkRlbGF5ICsgaSBdID0gcHNEZWxEZWMtPlNoYXBl
X1ExNFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdOworICAgIH0KKworICAgIGxhc3Rf
c21wbGVfaWR4ICs9IERFQ0lTSU9OX0RFTEFZOworICAgIGZvciggOyBpIDwgKCBkZWNpc2lvbkRl
bGF5IC0gNyApOyBpKyssIGxhc3Rfc21wbGVfaWR4LS0gKSB7CisgICAgICAgIGNvcHlfd2lubmVy
X3N0YXRlX2tlcm5lbCggcHNEZWxEZWMsIGkgLSBkZWNpc2lvbkRlbGF5LCBsYXN0X3NtcGxlX2lk
eCwgV2lubmVyX2luZCwgZ2Fpbl9sb19zMzJ4MiwgZ2Fpbl9oaV9zMzJ4Miwgc2hpZnRfczMyeDQs
IHQwX3MzMng0LCB0MV9zMzJ4NCwgcHVsc2VzLCBweHEsIE5TUSApOworICAgIH0KKyAgICBmb3Io
IDsgaSA8IGRlY2lzaW9uRGVsYXk7IGkrKywgbGFzdF9zbXBsZV9pZHgtLSApIHsKKyAgICAgICAg
cHVsc2VzWyBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50OClzaWxrX1JTSElGVF9ST1VO
RCggcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5kIF0sIDEwICk7
CisgICAgICAgIHB4cVsgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FU
MTYoIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX1NNVUxXVyggcHNEZWxEZWMtPlhxX1ExNFsgbGFz
dF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdLCBnYWluICksIHNoaWZ0ICkgKTsKKyAgICAgICAg
TlNRLT5zTFRQX3NocF9RMTRbIE5TUS0+c0xUUF9zaHBfYnVmX2lkeCAtIGRlY2lzaW9uRGVsYXkg
KyBpIF0gPSBwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5k
IF07CisgICAgfQorfQorCit2b2lkIHNpbGtfTlNRX2RlbF9kZWNfbmVvbigKKyAgICBjb25zdCBz
aWxrX2VuY29kZXJfc3RhdGUgICAgKnBzRW5jQywgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgKi8KKyAgICBz
aWxrX25zcV9zdGF0ZSAgICAgICAgICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBTaWRlSW5mb0luZGljZXMgICAgICAgICAgICAgKnBzSW5kaWNlcywgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFF1YW50aXphdGlvbiBJbmRpY2VzICAgICAgICAg
ICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgeDE2W10sICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgcHVsc2VzW10sICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFF1YW50aXplZCBwdWxzZSBz
aWduYWwgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgUHJlZENv
ZWZfUTEyWyAyICogTUFYX0xQQ19PUkRFUiBdLCAgICAgICAgICAvKiBJICAgIFNob3J0IHRlcm0g
cHJlZGljdGlvbiBjb2VmcyAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAg
TFRQQ29lZl9RMTRbIExUUF9PUkRFUiAqIE1BWF9OQl9TVUJGUiBdLCAgICAvKiBJICAgIExvbmcg
dGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAg
ICAgICAgQVJfUTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sIC8qIEkg
Tm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgSGFybVNoYXBlR2Fpbl9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAv
KiBJICAgIExvbmcgdGVybSBzaGFwaW5nIGNvZWZzICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVz
X2ludCAgICAgICAgICAgICAgVGlsdF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIFNwZWN0cmFsIHRpbHQgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25z
dCBvcHVzX2ludDMyICAgICAgICAgICAgTEZfc2hwX1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAg
ICAgICAgICAgICAvKiBJICAgIExvdyBmcmVxdWVuY3kgc2hhcGluZyBjb2VmcyAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgR2FpbnNfUTE2WyBNQVhfTkJfU1VCRlIgXSwg
ICAgICAgICAgICAgICAgICAvKiBJICAgIFF1YW50aXphdGlvbiBzdGVwIHNpemVzICAgICAgICAg
Ki8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgcGl0Y2hMWyBNQVhfTkJfU1VCRlIg
XSwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFBpdGNoIGxhZ3MgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgTGFtYmRhX1ExMCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJhdGUvZGlzdG9ydGlvbiB0cmFk
ZW9mZiAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgTFRQX3NjYWxl
X1ExNCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExUUCBzdGF0ZSBzY2Fs
aW5nICAgICAgICAgICAgICAgKi8KKykKK3sKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIHNp
bGtfbnNxX3N0YXRlIE5TUV9jOworICAgIFNpZGVJbmZvSW5kaWNlcyBwc0luZGljZXNfYzsKKyAg
ICBvcHVzX2ludDggcHVsc2VzX2NbIE1BWF9GUkFNRV9MRU5HVEggXTsKKyAgICBjb25zdCBvcHVz
X2ludDggKmNvbnN0IHB1bHNlc19hID0gcHVsc2VzOworCisgICAgKCB2b2lkIClwdWxzZXNfYTsK
KyAgICBzaWxrX21lbWNweSggJk5TUV9jLCBOU1EsIHNpemVvZiggTlNRX2MgKSApOworICAgIHNp
bGtfbWVtY3B5KCAmcHNJbmRpY2VzX2MsIHBzSW5kaWNlcywgc2l6ZW9mKCBwc0luZGljZXNfYyAp
ICk7CisgICAgc2lsa19tZW1jcHkoIHB1bHNlc19jLCBwdWxzZXMsIHNpemVvZiggcHVsc2VzX2Mg
KSApOworICAgIHNpbGtfTlNRX2RlbF9kZWNfYyggcHNFbmNDLCAmTlNRX2MsICZwc0luZGljZXNf
YywgeDE2LCBwdWxzZXNfYywgUHJlZENvZWZfUTEyLCBMVFBDb2VmX1ExNCwgQVJfUTEzLCBIYXJt
U2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsIExGX3NocF9RMTQsIEdhaW5zX1ExNiwKKyAgICAgICAg
ICAgICAgICAgICAgICAgcGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0ICk7CisjZW5k
aWYKKworICAgIC8qIFRoZSBvcHRpbWl6YXRpb24gcGFyYWxsZWxpemVzIHRoZSBkaWZmZXJlbnQg
ZGVsYXkgZGVjaXNpb24gc3RhdGVzLiAqLworICAgIGlmKCggcHNFbmNDLT5uU3RhdGVzRGVsYXll
ZERlY2lzaW9uID4gTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSB8fCAoIHBzRW5jQy0+blN0YXRl
c0RlbGF5ZWREZWNpc2lvbiA8PSAyICkpIHsKKyAgICAgICAgLyogTkVPTiBpbnRyaW5zaWNzIG9w
dGltaXphdGlvbiBub3cgY2FuIG9ubHkgcGFyYWxsZWxpemUgdXAgdG8gNCBkZWxheSBkZWNpc2lv
biBzdGF0ZXMuICAgICovCisgICAgICAgIC8qIElmIHRoZXJlIGFyZSBtb3JlIHN0YXRlcywgQyBm
dW5jdGlvbiBpcyBjYWxsZWQsIGFuZCB0aGlzIG9wdGltaXphdGlvbiBtdXN0IGJlIGV4cGFuZGVk
LiAqLworICAgICAgICAvKiBXaGVuIHRoZSBudW1iZXIgb2YgZGVsYXkgZGVjaXNpb24gc3RhdGVz
IGlzIGxlc3MgdGhhbiAzLCB0aGVyZSBhcmUgcGVuYWx0aWVzIHVzaW5nIHRoaXMgKi8KKyAgICAg
ICAgLyogb3B0aW1pemF0aW9uLCBhbmQgQyBmdW5jdGlvbiBpcyBjYWxsZWQuICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIC8qIFdoZW4g
dGhlIG51bWJlciBvZiBkZWxheSBkZWNpc2lvbiBzdGF0ZXMgaXMgMiwgaXQncyBiZXR0ZXIgdG8g
c3BlY2lhbGl6ZSBhbm90aGVyICAgICAgICAqLworICAgICAgICAvKiBzdHJ1Y3R1cmUgTlNRX2Rl
bF9kZWMyX3N0cnVjdCBhbmQgb3B0aW1pemUgd2l0aCBzaG9ydGVyIE5FT04gcmVnaXN0ZXJzLiAo
TG93IHByaW9yaXR5KSAgKi8KKyAgICAgICAgc2lsa19OU1FfZGVsX2RlY19jKCBwc0VuY0MsIE5T
USwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEyLCBMVFBDb2VmX1ExNCwgQVJf
UTEzLCBIYXJtU2hhcGVHYWluX1ExNCwKKyAgICAgICAgICAgIFRpbHRfUTE0LCBMRl9zaHBfUTE0
LCBHYWluc19RMTYsIHBpdGNoTCwgTGFtYmRhX1ExMCwgTFRQX3NjYWxlX1ExNCApOworICAgIH0g
ZWxzZSB7CisgICAgICAgIG9wdXNfaW50ICAgICAgICAgICAgaSwgaywgbGFnLCBzdGFydF9pZHgs
IExTRl9pbnRlcnBvbGF0aW9uX2ZsYWcsIFdpbm5lcl9pbmQsIHN1YmZyOworICAgICAgICBvcHVz
X2ludCAgICAgICAgICAgIHNtcGxfYnVmX2lkeCwgZGVjaXNpb25EZWxheTsKKyAgICAgICAgY29u
c3Qgb3B1c19pbnQxNiAgICAqQV9RMTIsICpCX1ExNCwgKkFSX3NocF9RMTM7CisgICAgICAgIG9w
dXNfaW50MTYgICAgICAgICAgKnB4cTsKKyAgICAgICAgVkFSREVDTCggb3B1c19pbnQzMiwgc0xU
UF9RMTUgKTsKKyAgICAgICAgVkFSREVDTCggb3B1c19pbnQxNiwgc0xUUCApOworICAgICAgICBv
cHVzX2ludDMyICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQ7CisgICAgICAgIG9wdXNf
aW50ICAgICAgICAgICAgb2Zmc2V0X1ExMDsKKyAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICBS
RG1pbl9RMTAsIEdhaW5fUTEwOworICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCB4X3NjX1Ex
MCApOworICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBkZWxheWVkR2Fpbl9RMTAgKTsKKyAg
ICAgICAgVkFSREVDTCggTlNRX2RlbF9kZWNzX3N0cnVjdCwgcHNEZWxEZWMgKTsKKyAgICAgICAg
aW50MzJ4NF90ICAgICAgICAgICB0X3MzMng0OworICAgICAgICBTQVZFX1NUQUNLOworCisgICAg
ICAgIC8qIFNldCB1bnZvaWNlZCBsYWcgdG8gdGhlIHByZXZpb3VzIG9uZSwgb3ZlcndyaXRlIGxh
dGVyIGZvciB2b2ljZWQgKi8KKyAgICAgICAgbGFnID0gTlNRLT5sYWdQcmV2OworCisgICAgICAg
IHNpbGtfYXNzZXJ0KCBOU1EtPnByZXZfZ2Fpbl9RMTYgIT0gMCApOworCisgICAgICAgIC8qIElu
aXRpYWxpemUgZGVsYXllZCBkZWNpc2lvbiBzdGF0ZXMgKi8KKyAgICAgICAgQUxMT0MoIHBzRGVs
RGVjLCAxLCBOU1FfZGVsX2RlY3Nfc3RydWN0ICk7CisgICAgICAgIC8qIE9ubHkgUmFuZFN0YXRl
IGFuZCBSRF9RMTAgbmVlZCB0byBiZSBpbml0aWFsaXplZCB0byAwLiAqLworICAgICAgICBzaWxr
X21lbXNldCggcHNEZWxEZWMtPlJhbmRTdGF0ZSwgMCwgc2l6ZW9mKCBwc0RlbERlYy0+UmFuZFN0
YXRlICkgKTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+UkRfUTEwLCB2ZHVwcV9uX3Mz
MiggMCApICk7CisKKyAgICAgICAgZm9yKCBrID0gMDsgayA8IHBzRW5jQy0+blN0YXRlc0RlbGF5
ZWREZWNpc2lvbjsgaysrICkgeworICAgICAgICAgICAgcHNEZWxEZWMtPlNlZWRJbml0WyBrIF0g
PSBwc0RlbERlYy0+U2VlZFsgayBdID0gKCBrICsgcHNJbmRpY2VzLT5TZWVkICkgJiAzOworICAg
ICAgICB9CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPkxGX0FSX1ExNCwgdmxkMXFfZHVw
X3MzMiggJk5TUS0+c0xGX0FSX3NocF9RMTQgKSApOworICAgICAgICB2c3QxcV9zMzIoIHBzRGVs
RGVjLT5EaWZmX1ExNCwgdmxkMXFfZHVwX3MzMiggJk5TUS0+c0RpZmZfc2hwX1ExNCApICk7Cisg
ICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlNoYXBlX1ExNFsgMCBdLCB2bGQxcV9kdXBfczMy
KCAmTlNRLT5zTFRQX3NocF9RMTRbIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggLSAxIF0gKSApOwor
ICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTlNRX0xQQ19CVUZfTEVOR1RIOyBpKysgKSB7CisgICAg
ICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5zTFBDX1ExNFsgaSBdLCB2bGQxcV9kdXBfczMy
KCAmTlNRLT5zTFBDX1ExNFsgaSBdICkgKTsKKyAgICAgICAgfQorICAgICAgICBmb3IoIGkgPSAw
OyBpIDwgKG9wdXNfaW50KSggc2l6ZW9mKCBOU1EtPnNBUjJfUTE0ICkgLyBzaXplb2YoIE5TUS0+
c0FSMl9RMTRbIDAgXSApICk7IGkrKyApIHsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNEZWxE
ZWMtPnNBUjJfUTE0WyBpIF0sIHZsZDFxX2R1cF9zMzIoICZOU1EtPnNBUjJfUTE0WyBpIF0gKSAp
OworICAgICAgICB9CisKKyAgICAgICAgb2Zmc2V0X1ExMCAgID0gc2lsa19RdWFudGl6YXRpb25f
T2Zmc2V0c19RMTBbIHBzSW5kaWNlcy0+c2lnbmFsVHlwZSA+PiAxIF1bIHBzSW5kaWNlcy0+cXVh
bnRPZmZzZXRUeXBlIF07CisgICAgICAgIHNtcGxfYnVmX2lkeCA9IDA7IC8qIGluZGV4IG9mIG9s
ZGVzdCBzYW1wbGVzICovCisKKyAgICAgICAgZGVjaXNpb25EZWxheSA9IHNpbGtfbWluX2ludCgg
REVDSVNJT05fREVMQVksIHBzRW5jQy0+c3ViZnJfbGVuZ3RoICk7CisKKyAgICAgICAgLyogRm9y
IHZvaWNlZCBmcmFtZXMgbGltaXQgdGhlIGRlY2lzaW9uIGRlbGF5IHRvIGxvd2VyIHRoYW4gdGhl
IHBpdGNoIGxhZyAqLworICAgICAgICBpZiggcHNJbmRpY2VzLT5zaWduYWxUeXBlID09IFRZUEVf
Vk9JQ0VEICkgeworICAgICAgICAgICAgb3B1c19pbnQgcGl0Y2hfbWluID0gcGl0Y2hMWyAwIF07
CisgICAgICAgICAgICBmb3IoIGsgPSAxOyBrIDwgcHNFbmNDLT5uYl9zdWJmcjsgaysrICkgewor
ICAgICAgICAgICAgICAgIHBpdGNoX21pbiA9IHNpbGtfbWluX2ludCggcGl0Y2hfbWluLCBwaXRj
aExbIGsgXSApOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZGVjaXNpb25EZWxheSA9IHNp
bGtfbWluX2ludCggZGVjaXNpb25EZWxheSwgcGl0Y2hfbWluIC0gTFRQX09SREVSIC8gMiAtIDEg
KTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGlmKCBsYWcgPiAwICkgeworICAgICAg
ICAgICAgICAgIGRlY2lzaW9uRGVsYXkgPSBzaWxrX21pbl9pbnQoIGRlY2lzaW9uRGVsYXksIGxh
ZyAtIExUUF9PUkRFUiAvIDIgLSAxICk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAg
ICAgICBpZiggcHNJbmRpY2VzLT5OTFNGSW50ZXJwQ29lZl9RMiA9PSA0ICkgeworICAgICAgICAg
ICAgTFNGX2ludGVycG9sYXRpb25fZmxhZyA9IDA7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICBMU0ZfaW50ZXJwb2xhdGlvbl9mbGFnID0gMTsKKyAgICAgICAgfQorCisgICAgICAgIEFM
TE9DKCBzTFRQX1ExNSwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCArIHBzRW5jQy0+ZnJhbWVfbGVu
Z3RoLCBvcHVzX2ludDMyICk7CisgICAgICAgIEFMTE9DKCBzTFRQLCBwc0VuY0MtPmx0cF9tZW1f
bGVuZ3RoICsgcHNFbmNDLT5mcmFtZV9sZW5ndGgsIG9wdXNfaW50MTYgKTsKKyAgICAgICAgQUxM
T0MoIHhfc2NfUTEwLCBwc0VuY0MtPnN1YmZyX2xlbmd0aCwgb3B1c19pbnQzMiApOworICAgICAg
ICBBTExPQyggZGVsYXllZEdhaW5fUTEwLCBERUNJU0lPTl9ERUxBWSwgb3B1c19pbnQzMiApOwor
ICAgICAgICAvKiBTZXQgdXAgcG9pbnRlcnMgdG8gc3RhcnQgb2Ygc3ViIGZyYW1lICovCisgICAg
ICAgIHB4cSAgICAgICAgICAgICAgICAgICA9ICZOU1EtPnhxWyBwc0VuY0MtPmx0cF9tZW1fbGVu
Z3RoIF07CisgICAgICAgIE5TUS0+c0xUUF9zaHBfYnVmX2lkeCA9IHBzRW5jQy0+bHRwX21lbV9s
ZW5ndGg7CisgICAgICAgIE5TUS0+c0xUUF9idWZfaWR4ICAgICA9IHBzRW5jQy0+bHRwX21lbV9s
ZW5ndGg7CisgICAgICAgIHN1YmZyID0gMDsKKyAgICAgICAgZm9yKCBrID0gMDsgayA8IHBzRW5j
Qy0+bmJfc3ViZnI7IGsrKyApIHsKKyAgICAgICAgICAgIEFfUTEyICAgICAgPSAmUHJlZENvZWZf
UTEyWyAoICggayA+PiAxICkgfCAoIDEgLSBMU0ZfaW50ZXJwb2xhdGlvbl9mbGFnICkgKSAqIE1B
WF9MUENfT1JERVIgXTsKKyAgICAgICAgICAgIEJfUTE0ICAgICAgPSAmTFRQQ29lZl9RMTRbIGsg
KiBMVFBfT1JERVIgICAgICAgICAgIF07CisgICAgICAgICAgICBBUl9zaHBfUTEzID0gJkFSX1Ex
M1sgICAgIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07CisKKyAgICAgICAgICAgIC8qIE5vaXNl
IHNoYXBlIHBhcmFtZXRlcnMgKi8KKyAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBIYXJtU2hhcGVH
YWluX1ExNFsgayBdID49IDAgKTsKKyAgICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQg
ID0gICAgICAgICAgICAgICAgICAgICAgICAgIHNpbGtfUlNISUZUKCBIYXJtU2hhcGVHYWluX1Ex
NFsgayBdLCAyICk7CisgICAgICAgICAgICBIYXJtU2hhcGVGSVJQYWNrZWRfUTE0IHw9IHNpbGtf
TFNISUZUKCAob3B1c19pbnQzMilzaWxrX1JTSElGVCggSGFybVNoYXBlR2Fpbl9RMTRbIGsgXSwg
MSApLCAxNiApOworCisgICAgICAgICAgICBOU1EtPnJld2hpdGVfZmxhZyA9IDA7CisgICAgICAg
ICAgICBpZiggcHNJbmRpY2VzLT5zaWduYWxUeXBlID09IFRZUEVfVk9JQ0VEICkgeworICAgICAg
ICAgICAgICAgIC8qIFZvaWNlZCAqLworICAgICAgICAgICAgICAgIGxhZyA9IHBpdGNoTFsgayBd
OworCisgICAgICAgICAgICAgICAgLyogUmUtd2hpdGVuaW5nICovCisgICAgICAgICAgICAgICAg
aWYoICggayAmICggMyAtIHNpbGtfTFNISUZUKCBMU0ZfaW50ZXJwb2xhdGlvbl9mbGFnLCAxICkg
KSApID09IDAgKSB7CisgICAgICAgICAgICAgICAgICAgIGlmKCBrID09IDIgKSB7CisgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBSRVNFVCBERUxBWUVEIERFQ0lTSU9OUyAqLworICAgICAgICAg
ICAgICAgICAgICAgICAgLyogRmluZCB3aW5uZXIgKi8KKyAgICAgICAgICAgICAgICAgICAgICAg
IGludDMyeDRfdCBSRF9RMTBfczMyeDQ7CisgICAgICAgICAgICAgICAgICAgICAgICBSRG1pbl9R
MTAgPSBwc0RlbERlYy0+UkRfUTEwWyAwIF07CisgICAgICAgICAgICAgICAgICAgICAgICBXaW5u
ZXJfaW5kID0gMDsKKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciggaSA9IDE7IGkgPCBwc0Vu
Y0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb247IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpZiggcHNEZWxEZWMtPlJEX1ExMFsgaSBdIDwgUkRtaW5fUTEwICkgeworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBSRG1pbl9RMTAgPSBwc0RlbERlYy0+UkRfUTEwWyBp
IF07CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdpbm5lcl9pbmQgPSBpOworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICAgICAgICAgIHBzRGVsRGVjLT5SRF9RMTBbIFdpbm5lcl9pbmQgXSAtPSAo
IHNpbGtfaW50MzJfTUFYID4+IDQgKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIFJEX1ExMF9z
MzJ4NCA9IHZsZDFxX3MzMiggcHNEZWxEZWMtPlJEX1ExMCApOworICAgICAgICAgICAgICAgICAg
ICAgICAgUkRfUTEwX3MzMng0ID0gdmFkZHFfczMyKCBSRF9RMTBfczMyeDQsIHZkdXBxX25fczMy
KCBzaWxrX2ludDMyX01BWCA+PiA0ICkgKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHZzdDFx
X3MzMiggcHNEZWxEZWMtPlJEX1ExMCwgUkRfUTEwX3MzMng0ICk7CisKKyAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIENvcHkgZmluYWwgcGFydCBvZiBzaWduYWxzIGZyb20gd2lubmVyIHN0YXRl
IHRvIG91dHB1dCBhbmQgbG9uZy10ZXJtIGZpbHRlciBzdGF0ZXMgKi8KKyAgICAgICAgICAgICAg
ICAgICAgICAgIGNvcHlfd2lubmVyX3N0YXRlKCBwc0RlbERlYywgZGVjaXNpb25EZWxheSwgc21w
bF9idWZfaWR4LCBXaW5uZXJfaW5kLCBHYWluc19RMTZbIDEgXSwgMTQsIHB1bHNlcywgcHhxLCBO
U1EgKTsKKworICAgICAgICAgICAgICAgICAgICAgICAgc3ViZnIgPSAwOworICAgICAgICAgICAg
ICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAgLyogUmV3aGl0ZW4gd2l0aCBuZXcgQSBj
b2VmcyAqLworICAgICAgICAgICAgICAgICAgICBzdGFydF9pZHggPSBwc0VuY0MtPmx0cF9tZW1f
bGVuZ3RoIC0gbGFnIC0gcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIgLSBMVFBfT1JERVIgLyAyOwor
ICAgICAgICAgICAgICAgICAgICBzaWxrX2Fzc2VydCggc3RhcnRfaWR4ID4gMCApOworCisgICAg
ICAgICAgICAgICAgICAgIHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlciggJnNMVFBbIHN0YXJ0X2lk
eCBdLCAmTlNRLT54cVsgc3RhcnRfaWR4ICsgayAqIHBzRW5jQy0+c3ViZnJfbGVuZ3RoIF0sCisg
ICAgICAgICAgICAgICAgICAgICAgICBBX1ExMiwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAtIHN0
YXJ0X2lkeCwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIsIHBzRW5jQy0+YXJjaCApOworCisgICAg
ICAgICAgICAgICAgICAgIE5TUS0+c0xUUF9idWZfaWR4ID0gcHNFbmNDLT5sdHBfbWVtX2xlbmd0
aDsKKyAgICAgICAgICAgICAgICAgICAgTlNRLT5yZXdoaXRlX2ZsYWcgPSAxOworICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgc2lsa19uc3FfZGVsX2RlY19z
Y2FsZV9zdGF0ZXNfbmVvbiggcHNFbmNDLCBOU1EsIHBzRGVsRGVjLCB4MTYsIHhfc2NfUTEwLCBz
TFRQLCBzTFRQX1ExNSwgaywKKyAgICAgICAgICAgICAgICBMVFBfc2NhbGVfUTE0LCBHYWluc19R
MTYsIHBpdGNoTCwgcHNJbmRpY2VzLT5zaWduYWxUeXBlLCBkZWNpc2lvbkRlbGF5ICk7CisKKyAg
ICAgICAgICAgIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWNfbmVvbiggTlNRLCBw
c0RlbERlYywgcHNJbmRpY2VzLT5zaWduYWxUeXBlLCB4X3NjX1ExMCwgcHVsc2VzLCBweHEsIHNM
VFBfUTE1LAorICAgICAgICAgICAgICAgIGRlbGF5ZWRHYWluX1ExMCwgQV9RMTIsIEJfUTE0LCBB
Ul9zaHBfUTEzLCBsYWcsIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQsIFRpbHRfUTE0WyBrIF0sIExG
X3NocF9RMTRbIGsgXSwKKyAgICAgICAgICAgICAgICBHYWluc19RMTZbIGsgXSwgTGFtYmRhX1Ex
MCwgb2Zmc2V0X1ExMCwgcHNFbmNDLT5zdWJmcl9sZW5ndGgsIHN1YmZyKyssIHBzRW5jQy0+c2hh
cGluZ0xQQ09yZGVyLAorICAgICAgICAgICAgICAgIHBzRW5jQy0+cHJlZGljdExQQ09yZGVyLCBw
c0VuY0MtPndhcnBpbmdfUTE2LCBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24sICZzbXBs
X2J1Zl9pZHgsIGRlY2lzaW9uRGVsYXkgKTsKKworICAgICAgICAgICAgeDE2ICAgICs9IHBzRW5j
Qy0+c3ViZnJfbGVuZ3RoOworICAgICAgICAgICAgcHVsc2VzICs9IHBzRW5jQy0+c3ViZnJfbGVu
Z3RoOworICAgICAgICAgICAgcHhxICAgICs9IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOworICAgICAg
ICB9CisKKyAgICAgICAgLyogRmluZCB3aW5uZXIgKi8KKyAgICAgICAgUkRtaW5fUTEwID0gcHNE
ZWxEZWMtPlJEX1ExMFsgMCBdOworICAgICAgICBXaW5uZXJfaW5kID0gMDsKKyAgICAgICAgZm9y
KCBrID0gMTsgayA8IHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbjsgaysrICkgeworICAg
ICAgICAgICAgaWYoIHBzRGVsRGVjLT5SRF9RMTBbIGsgXSA8IFJEbWluX1ExMCApIHsKKyAgICAg
ICAgICAgICAgICBSRG1pbl9RMTAgPSBwc0RlbERlYy0+UkRfUTEwWyBrIF07CisgICAgICAgICAg
ICAgICAgV2lubmVyX2luZCA9IGs7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAg
ICAvKiBDb3B5IGZpbmFsIHBhcnQgb2Ygc2lnbmFscyBmcm9tIHdpbm5lciBzdGF0ZSB0byBvdXRw
dXQgYW5kIGxvbmctdGVybSBmaWx0ZXIgc3RhdGVzICovCisgICAgICAgIHBzSW5kaWNlcy0+U2Vl
ZCA9IHBzRGVsRGVjLT5TZWVkSW5pdFsgV2lubmVyX2luZCBdOworICAgICAgICBHYWluX1ExMCA9
IHNpbGtfUlNISUZUMzIoIEdhaW5zX1ExNlsgcHNFbmNDLT5uYl9zdWJmciAtIDEgXSwgNiApOwor
ICAgICAgICBjb3B5X3dpbm5lcl9zdGF0ZSggcHNEZWxEZWMsIGRlY2lzaW9uRGVsYXksIHNtcGxf
YnVmX2lkeCwgV2lubmVyX2luZCwgR2Fpbl9RMTAsIDgsIHB1bHNlcywgcHhxLCBOU1EgKTsKKwor
ICAgICAgICB0X3MzMng0ID0gdmR1cHFfbl9zMzIoIDAgKTsgLyogaW5pdGlhbGl6YXRpb24gKi8K
KyAgICAgICAgZm9yKCBpID0gMDsgaSA8ICggTlNRX0xQQ19CVUZfTEVOR1RIIC0gMyApOyBpICs9
IDQgKSB7CisgICAgICAgICAgICB0X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+
c0xQQ19RMTRbIGkgKyAwIF1bIFdpbm5lcl9pbmQgXSwgdF9zMzJ4NCwgMCApOworICAgICAgICAg
ICAgdF9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPnNMUENfUTE0WyBpICsgMSBd
WyBXaW5uZXJfaW5kIF0sIHRfczMyeDQsIDEgKTsKKyAgICAgICAgICAgIHRfczMyeDQgPSB2bGQx
cV9sYW5lX3MzMiggJnBzRGVsRGVjLT5zTFBDX1ExNFsgaSArIDIgXVsgV2lubmVyX2luZCBdLCB0
X3MzMng0LCAyICk7CisgICAgICAgICAgICB0X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0Rl
bERlYy0+c0xQQ19RMTRbIGkgKyAzIF1bIFdpbm5lcl9pbmQgXSwgdF9zMzJ4NCwgMyApOworICAg
ICAgICAgICAgdnN0MXFfczMyKCAmTlNRLT5zTFBDX1ExNFsgaSBdLCB0X3MzMng0ICk7CisgICAg
ICAgIH0KKworICAgICAgICBmb3IoIDsgaSA8IE5TUV9MUENfQlVGX0xFTkdUSDsgaSsrICkgewor
ICAgICAgICAgIE5TUS0+c0xQQ19RMTRbIGkgXSA9IHBzRGVsRGVjLT5zTFBDX1ExNFsgaSBdWyBX
aW5uZXJfaW5kIF07CisgICAgICAgIH0KKworICAgICAgICBmb3IoIGkgPSAwOyBpIDwgKG9wdXNf
aW50KSggc2l6ZW9mKCBOU1EtPnNBUjJfUTE0ICkgLyBzaXplb2YoIE5TUS0+c0FSMl9RMTRbIDAg
XSApIC0gMyApOyBpICs9IDQgKSB7CisgICAgICAgICAgICB0X3MzMng0ID0gdmxkMXFfbGFuZV9z
MzIoICZwc0RlbERlYy0+c0FSMl9RMTRbIGkgKyAwIF1bIFdpbm5lcl9pbmQgXSwgdF9zMzJ4NCwg
MCApOworICAgICAgICAgICAgdF9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPnNB
UjJfUTE0WyBpICsgMSBdWyBXaW5uZXJfaW5kIF0sIHRfczMyeDQsIDEgKTsKKyAgICAgICAgICAg
IHRfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5zQVIyX1ExNFsgaSArIDIgXVsg
V2lubmVyX2luZCBdLCB0X3MzMng0LCAyICk7CisgICAgICAgICAgICB0X3MzMng0ID0gdmxkMXFf
bGFuZV9zMzIoICZwc0RlbERlYy0+c0FSMl9RMTRbIGkgKyAzIF1bIFdpbm5lcl9pbmQgXSwgdF9z
MzJ4NCwgMyApOworICAgICAgICAgICAgdnN0MXFfczMyKCAmTlNRLT5zQVIyX1ExNFsgaSBdLCB0
X3MzMng0ICk7CisgICAgICAgIH0KKworICAgICAgICBmb3IoIDsgaSA8IChvcHVzX2ludCkoIHNp
emVvZiggTlNRLT5zQVIyX1ExNCApIC8gc2l6ZW9mKCBOU1EtPnNBUjJfUTE0WyAwIF0gKSApOyBp
KysgKSB7CisgICAgICAgICAgTlNRLT5zQVIyX1ExNFsgaSBdID0gcHNEZWxEZWMtPnNBUjJfUTE0
WyBpIF1bIFdpbm5lcl9pbmQgXTsKKyAgICAgICAgfQorCisgICAgICAgIC8qIFVwZGF0ZSBzdGF0
ZXMgKi8KKyAgICAgICAgTlNRLT5zTEZfQVJfc2hwX1ExNCA9IHBzRGVsRGVjLT5MRl9BUl9RMTRb
IFdpbm5lcl9pbmQgXTsKKyAgICAgICAgTlNRLT5zRGlmZl9zaHBfUTE0ICA9IHBzRGVsRGVjLT5E
aWZmX1ExNFsgV2lubmVyX2luZCBdOworICAgICAgICBOU1EtPmxhZ1ByZXYgICAgICAgID0gcGl0
Y2hMWyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBdOworCisgICAgICAgIC8qIFNhdmUgcXVhbnRpemVk
IHNwZWVjaCBzaWduYWwgKi8KKyAgICAgICAgc2lsa19tZW1tb3ZlKCBOU1EtPnhxLCAgICAgICAg
ICAgJk5TUS0+eHFbICAgICAgICAgICBwc0VuY0MtPmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0
cF9tZW1fbGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKKyAgICAgICAgc2lsa19tZW1t
b3ZlKCBOU1EtPnNMVFBfc2hwX1ExNCwgJk5TUS0+c0xUUF9zaHBfUTE0WyBwc0VuY0MtPmZyYW1l
X2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDMyICkg
KTsKKyAgICAgICAgUkVTVE9SRV9TVEFDSzsKKyAgICB9CisKKyNpZmRlZiBPUFVTX0NIRUNLX0FT
TQorICAgIHNpbGtfYXNzZXJ0KCAhbWVtY21wKCAmTlNRX2MsIE5TUSwgc2l6ZW9mKCBOU1FfYyAp
ICkgKTsKKyAgICBzaWxrX2Fzc2VydCggIW1lbWNtcCggJnBzSW5kaWNlc19jLCBwc0luZGljZXMs
IHNpemVvZiggcHNJbmRpY2VzX2MgKSApICk7CisgICAgc2lsa19hc3NlcnQoICFtZW1jbXAoIHB1
bHNlc19jLCBwdWxzZXNfYSwgc2l6ZW9mKCBwdWxzZXNfYyApICkgKTsKKyNlbmRpZgorfQorCisv
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogTm9pc2Ugc2hh
cGUgcXVhbnRpemVyIGZvciBvbmUgc3ViZnJhbWUgKi8KKy8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKiovCisvKiBOb3RlOiBGdW5jdGlvbiBzaWxrX3Nob3J0X3ByZWRp
Y3Rpb25fY3JlYXRlX2FyY2hfY29lZl9uZW9uKCkgZGVmaW5lZCBpbiBOU1FfbmVvbi5oIGlzIGFj
dHVhbGx5IGEgaGFja2luZyBDIGZ1bmN0aW9uLiAqLworLyogICAgICAgVGhlcmVmb3JlIGhlcmUg
d2UgYXBwZW5kICJfbG9jYWwiIHRvIHRoZSBORU9OIGZ1bmN0aW9uIG5hbWUgdG8gYXZvaWQgY29u
ZnVzaW9uLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KK3N0YXRpYyBPUFVTX0lO
TElORSB2b2lkIHNpbGtfc2hvcnRfcHJlZGljdGlvbl9jcmVhdGVfYXJjaF9jb2VmX25lb25fbG9j
YWwob3B1c19pbnQzMiAqb3V0LCBjb25zdCBvcHVzX2ludDE2ICppbiwgb3B1c19pbnQgb3JkZXIp
Cit7CisgIGludDE2eDhfdCB0X3MxNng4OworICBpbnQzMng0X3QgdDBfczMyeDQsIHQxX3MzMng0
LCB0Ml9zMzJ4NCwgdDNfczMyeDQ7CisgIHNpbGtfYXNzZXJ0KCBvcmRlciA9PSAxMCB8fCBvcmRl
ciA9PSAxNiApOworCisgIHRfczE2eDggPSB2bGQxcV9zMTYoIGluICsgMCApOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIDcgNiA1IDQgIDMgMiAx
IDAgICAgKi8KKyAgdF9zMTZ4OCA9IHZyZXY2NHFfczE2KCB0X3MxNng4ICk7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogNCA1IDYgNyAgMCAxIDIgMyAg
ICAqLworICB0Ml9zMzJ4NCA9IHZzaGxsX25fczE2KCB2Z2V0X2hpZ2hfczE2KCB0X3MxNng4ICks
IDE1ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiA0IDUgNiA3ICAgICAgICAgICAgICov
CisgIHQzX3MzMng0ID0gdnNobGxfbl9zMTYoIHZnZXRfbG93X3MxNiggIHRfczE2eDggKSwgMTUg
KTsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIDAgMSAyIDMgICAgICAgICAgICAgKi8KKwor
ICBpZiggb3JkZXIgPT0gMTYgKSB7CisgICAgICB0X3MxNng4ID0gdmxkMXFfczE2KCBpbiArIDgg
KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEYgRSBE
IEMgIEIgQSA5IDggICAgKi8KKyAgICAgIHRfczE2eDggPSB2cmV2NjRxX3MxNiggdF9zMTZ4OCAp
OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogQyBEIEUgRiAg
OCA5IEEgQiAgICAqLworICAgICAgdDBfczMyeDQgPSB2c2hsbF9uX3MxNiggdmdldF9oaWdoX3Mx
NiggdF9zMTZ4OCApLCAxNSApOyAgICAgICAgICAgICAgICAgICAgICAvKiBDIEQgRSBGICAgICAg
ICAgICAgICovCisgICAgICB0MV9zMzJ4NCA9IHZzaGxsX25fczE2KCB2Z2V0X2xvd19zMTYoICB0
X3MxNng4ICksIDE1ICk7ICAgICAgICAgICAgICAgICAgICAgIC8qIDggOSBBIEIgICAgICAgICAg
ICAgKi8KKyAgfSBlbHNlIHsKKyAgICAgIGludDE2eDRfdCB0X3MxNng0OworCisgICAgICB0MF9z
MzJ4NCA9IHZkdXBxX25fczMyKCAwICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIHplcm8gemVybyB6ZXJvIHplcm8gKi8KKyAgICAgIHRfczE2eDQg
PSB2bGQxX3MxNiggaW4gKyA2ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogOSAgICA4ICAgIDcgICAgNiAgICAqLworICAgICAgdF9zMTZ4NCA9IHZy
ZXY2NF9zMTYoIHRfczE2eDQgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiA2ICAgIDcgICAgOCAgICA5ICAgICovCisgICAgICB0MV9zMzJ4NCA9IHZzaGxs
X25fczE2KCB0X3MxNng0LCAxNSApOworICAgICAgdDFfczMyeDQgPSB2Y29tYmluZV9zMzIoIHZn
ZXRfbG93X3MzMih0MF9zMzJ4NCksIHZnZXRfbG93X3MzMiggdDFfczMyeDQgKSApOyAvKiA4ICAg
IDkgICAgemVybyB6ZXJvICovCisgIH0KKyAgdnN0MXFfczMyKCBvdXQgKyAgMCwgdDBfczMyeDQg
KTsKKyAgdnN0MXFfczMyKCBvdXQgKyAgNCwgdDFfczMyeDQgKTsKKyAgdnN0MXFfczMyKCBvdXQg
KyAgOCwgdDJfczMyeDQgKTsKKyAgdnN0MXFfczMyKCBvdXQgKyAxMiwgdDNfczMyeDQgKTsKK30K
Kworc3RhdGljIE9QVVNfSU5MSU5FIGludDMyeDRfdCBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKAor
ICAgIGNvbnN0IGludDMyeDRfdCBvdXRfczMyeDQsCisgICAgY29uc3QgaW50MzJ4NF90IGluX3Mz
Mng0LAorICAgIGNvbnN0IGludDMyeDJfdCBjb2VmX3MzMngyCispCit7CisgICAgcmV0dXJuIHZh
ZGRxX3MzMiggb3V0X3MzMng0LCB2cWRtdWxocV9sYW5lX3MzMiggaW5fczMyeDQsIGNvZWZfczMy
eDIsIDAgKSApOworfQorCitzdGF0aWMgT1BVU19JTkxJTkUgaW50MzJ4NF90IHNpbGtfU01MQVdC
X2xhbmUxX25lb24oCisgICAgY29uc3QgaW50MzJ4NF90IG91dF9zMzJ4NCwKKyAgICBjb25zdCBp
bnQzMng0X3QgaW5fczMyeDQsCisgICAgY29uc3QgaW50MzJ4Ml90IGNvZWZfczMyeDIKKykKK3sK
KyAgICByZXR1cm4gdmFkZHFfczMyKCBvdXRfczMyeDQsIHZxZG11bGhxX2xhbmVfczMyKCBpbl9z
MzJ4NCwgY29lZl9zMzJ4MiwgMSApICk7Cit9CisKKy8qIE5vdGU6IFRoaXMgZnVuY3Rpb24gaGFz
IGRpZmZlcmVudCByZXR1cm4gdmFsdWUgdGhhbiBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9z
aG9ydF9wcmVkaWN0aW9uX25lb24oKS4gKi8KKy8qICAgICAgIFRoZXJlZm9yZSBoZXJlIHdlIGFw
cGVuZCAiX2xvY2FsIiB0byB0aGUgZnVuY3Rpb24gbmFtZSB0byBhdm9pZCBjb25mdXNpb24uICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KK3N0YXRpYyBPUFVTX0lOTElORSBpbnQzMng0X3Qgc2ls
a19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfc2hvcnRfcHJlZGljdGlvbl9uZW9uX2xvY2FsKGNvbnN0
IG9wdXNfaW50MzIgKmJ1ZjMyLCBjb25zdCBvcHVzX2ludDMyICphX1ExMl9hcmNoLCBvcHVzX2lu
dCBvcmRlcikKK3sKKyAgICBjb25zdCBpbnQzMng0X3QgYV9RMTJfYXJjaDBfczMyeDQgPSB2bGQx
cV9zMzIoIGFfUTEyX2FyY2ggKyAwICk7CisgICAgY29uc3QgaW50MzJ4NF90IGFfUTEyX2FyY2gx
X3MzMng0ID0gdmxkMXFfczMyKCBhX1ExMl9hcmNoICsgNCApOworICAgIGNvbnN0IGludDMyeDRf
dCBhX1ExMl9hcmNoMl9zMzJ4NCA9IHZsZDFxX3MzMiggYV9RMTJfYXJjaCArIDggKTsKKyAgICBj
b25zdCBpbnQzMng0X3QgYV9RMTJfYXJjaDNfczMyeDQgPSB2bGQxcV9zMzIoIGFfUTEyX2FyY2gg
KyAxMiApOworICAgIGludDMyeDRfdCBMUENfcHJlZF9RMTRfczMyeDQ7CisKKyAgICBzaWxrX2Fz
c2VydCggb3JkZXIgPT0gMTAgfHwgb3JkZXIgPT0gMTYgKTsKKyAgICAvKiBBdm9pZHMgaW50cm9k
dWNpbmcgYSBiaWFzIGJlY2F1c2Ugc2lsa19TTUxBV0IoKSBhbHdheXMgcm91bmRzIHRvIC1pbmYg
Ki8KKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSB2ZHVwcV9uX3MzMiggc2lsa19SU0hJRlQoIG9y
ZGVyLCAxICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9u
ZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgMCAqIE5FT05fTUFY
X0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2FyY2gwX3MzMng0ICkgKTsK
KyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJl
ZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgMSAqIE5FT05fTUFYX0RFTF9ERUNfU1RB
VEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2FyY2gwX3MzMng0ICkgKTsKKyAgICBMUENfcHJl
ZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQs
IHZsZDFxX3MzMiggYnVmMzIgKyAgMiAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRf
aGlnaF9zMzIoIGFfUTEyX2FyY2gwX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQg
PSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMigg
YnVmMzIgKyAgMyAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFf
UTEyX2FyY2gwX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFX
Ql9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgNCAq
IE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2FyY2gxX3Mz
Mng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9u
KCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgNSAqIE5FT05fTUFYX0RF
TF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2FyY2gxX3MzMng0ICkgKTsKKyAg
ICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9R
MTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgNiAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVT
ICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gxX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9R
MTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZs
ZDFxX3MzMiggYnVmMzIgKyAgNyAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGln
aF9zMzIoIGFfUTEyX2FyY2gxX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBz
aWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVm
MzIgKyAgOCAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEy
X2FyY2gyX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9s
YW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgOSAqIE5F
T05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2FyY2gyX3MzMng0
ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBM
UENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAxMCAqIE5FT05fTUFYX0RFTF9E
RUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gyX3MzMng0ICkgKTsKKyAgICBM
UENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRf
czMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAxMSAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICks
IHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gyX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRf
czMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFx
X3MzMiggYnVmMzIgKyAxMiAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3Mz
MiggIGFfUTEyX2FyY2gzX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxr
X1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIg
KyAxMyAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2Fy
Y2gzX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5l
MF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAxNCAqIE5FT05f
TUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gzX3MzMng0ICkg
KTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENf
cHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAxNSAqIE5FT05fTUFYX0RFTF9ERUNf
U1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gzX3MzMng0ICkgKTsKKworICAgIHJl
dHVybiBMUENfcHJlZF9RMTRfczMyeDQ7Cit9CisKK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNp
bGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWNfbmVvbigKKyAgICBzaWxrX25zcV9zdGF0
ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBOU1FfZGVsX2RlY3Nfc3RydWN0IHBzRGVsRGVjW10s
ICAgICAgICAgICAgIC8qIEkvTyAgRGVsYXllZCBkZWNpc2lvbiBzdGF0ZXMgICAgICAgICAgICAg
Ki8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHNpZ25hbFR5cGUsICAgICAgICAgICAgIC8qIEkg
ICAgU2lnbmFsIHR5cGUgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVz
X2ludDMyICAgIHhfUTEwW10sICAgICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDggICAgICAgICAgIHB1bHNlc1td
LCAgICAgICAgICAgICAgIC8qIE8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBvcHVzX2ludDE2ICAgICAgICAgIHhxW10sICAgICAgICAgICAgICAgICAgIC8q
IE8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2lu
dDMyICAgICAgICAgIHNMVFBfUTE1W10sICAgICAgICAgICAgIC8qIEkvTyAgTFRQIGZpbHRlciBz
dGF0ZSAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIGRlbGF5
ZWRHYWluX1ExMFtdLCAgICAgIC8qIEkvTyAgR2FpbiBkZWxheSBidWZmZXIgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIGFfUTEyW10sICAgICAgICAgICAgICAg
IC8qIEkgICAgU2hvcnQgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAgICAgKi8KKyAgICBjb25z
dCBvcHVzX2ludDE2ICAgIGJfUTE0W10sICAgICAgICAgICAgICAgIC8qIEkgICAgTG9uZyB0ZXJt
IHByZWRpY3Rpb24gY29lZnMgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIEFS
X3NocF9RMTNbXSwgICAgICAgICAgIC8qIEkgICAgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAg
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIGxhZywgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgUGl0Y2ggbGFnICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBv
cHVzX2ludDMyICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQsIC8qIEkgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAg
IFRpbHRfUTE0LCAgICAgICAgICAgICAgIC8qIEkgICAgU3BlY3RyYWwgdGlsdCAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIExGX3NocF9RMTQsICAgICAg
ICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBvcHVzX2ludDMyICAgICAgICAgIEdhaW5fUTE2LCAgICAgICAgICAgICAgIC8qIEkgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAg
ICAgIExhbWJkYV9RMTAsICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIG9mZnNldF9RMTAsICAg
ICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBvcHVzX2ludCAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgIC8qIEkgICAg
SW5wdXQgbGVuZ3RoICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAg
ICAgICAgIHN1YmZyLCAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3ViZnJhbWUgbnVtYmVyICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHNoYXBpbmdMUENP
cmRlciwgICAgICAgIC8qIEkgICAgU2hhcGluZyBMUEMgZmlsdGVyIG9yZGVyICAgICAgICAgICAg
Ki8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHByZWRpY3RMUENPcmRlciwgICAgICAgIC8qIEkg
ICAgUHJlZGljdGlvbiBmaWx0ZXIgb3JkZXIgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAg
ICAgICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIG5TdGF0ZXNE
ZWxheWVkRGVjaXNpb24sIC8qIEkgICAgTnVtYmVyIG9mIHN0YXRlcyBpbiBkZWNpc2lvbiB0cmVl
ICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8q
IEkvTyAgSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAgKi8KKyAgICBvcHVzX2lu
dCAgICAgICAgICAgIGRlY2lzaW9uRGVsYXkgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyAgICBvcHVzX2ludCAgICAgaSwgaiwg
aywgV2lubmVyX2luZCwgUkRtaW5faW5kLCBSRG1heF9pbmQsIGxhc3Rfc21wbGVfaWR4OworICAg
IG9wdXNfaW50MzIgICBXaW5uZXJfcmFuZF9zdGF0ZTsKKyAgICBvcHVzX2ludDMyICAgTFRQX3By
ZWRfUTE0LCBuX0xUUF9RMTQ7CisgICAgb3B1c19pbnQzMiAgIFJEbWluX1ExMCwgUkRtYXhfUTEw
OworICAgIG9wdXNfaW50MzIgICBHYWluX1ExMDsKKyAgICBvcHVzX2ludDMyICAgKnByZWRfbGFn
X3B0ciwgKnNocF9sYWdfcHRyOworICAgIG9wdXNfaW50MzIgICBhX1ExMl9hcmNoW01BWF9MUENf
T1JERVJdOworICAgIGNvbnN0IGludDMyeDJfdCB3YXJwaW5nX1ExNl9zMzJ4MiA9IHZkdXBfbl9z
MzIoIHNpbGtfTFNISUZUMzIoIHdhcnBpbmdfUTE2LCAxNiApID4+IDEgKTsKKyAgICBjb25zdCBv
cHVzX2ludDMyIExGX3NocF9RMjkgPSBzaWxrX0xTSElGVDMyKCBMRl9zaHBfUTE0LCAxNiApID4+
IDE7CisgICAgb3B1c19pbnQzMiBBUl9zaHBfUTI4WyBNQVhfU0hBUEVfTFBDX09SREVSIF07Cisg
ICAgY29uc3QgdWludDMyeDRfdCByYW5kX211bHRpcGxpZXJfdTMyeDQgPSB2ZHVwcV9uX3UzMigg
UkFORF9NVUxUSVBMSUVSICk7CisgICAgY29uc3QgdWludDMyeDRfdCByYW5kX2luY3JlbWVudF91
MzJ4NCA9IHZkdXBxX25fdTMyKCBSQU5EX0lOQ1JFTUVOVCApOworCisgICAgVkFSREVDTCggTlNR
X3NhbXBsZXNfc3RydWN0LCBwc1NhbXBsZVN0YXRlICk7CisgICAgU0FWRV9TVEFDSzsKKworICAg
IHNpbGtfYXNzZXJ0KCBuU3RhdGVzRGVsYXllZERlY2lzaW9uID4gMCApOworICAgIHNpbGtfYXNz
ZXJ0KCAoIHNoYXBpbmdMUENPcmRlciAmIDEgKSA9PSAwICk7ICAgLyogY2hlY2sgdGhhdCBvcmRl
ciBpcyBldmVuICovCisgICAgQUxMT0MoIHBzU2FtcGxlU3RhdGUsIDIsIE5TUV9zYW1wbGVzX3N0
cnVjdCApOworCisgICAgc2hwX2xhZ19wdHIgID0gJk5TUS0+c0xUUF9zaHBfUTE0WyBOU1EtPnNM
VFBfc2hwX2J1Zl9pZHggLSBsYWcgKyBIQVJNX1NIQVBFX0ZJUl9UQVBTIC8gMiBdOworICAgIHBy
ZWRfbGFnX3B0ciA9ICZzTFRQX1ExNVsgTlNRLT5zTFRQX2J1Zl9pZHggLSBsYWcgKyBMVFBfT1JE
RVIgLyAyIF07CisgICAgR2Fpbl9RMTAgICAgID0gc2lsa19SU0hJRlQoIEdhaW5fUTE2LCA2ICk7
CisKKyAgICBmb3IoIGkgPSAwOyBpIDwgKCBNQVhfU0hBUEVfTFBDX09SREVSIC0gNyApOyBpICs9
IDggKSB7CisgICAgICBjb25zdCBpbnQxNng4X3QgdF9zMTZ4OCA9IHZsZDFxX3MxNiggQVJfc2hw
X1ExMyArICBpICk7CisgICAgICB2c3QxcV9zMzIoIEFSX3NocF9RMjggKyBpICsgMCwgdnNobGxf
bl9zMTYoIHZnZXRfbG93X3MxNiggIHRfczE2eDggKSwgMTUgKSApOworICAgICAgdnN0MXFfczMy
KCBBUl9zaHBfUTI4ICsgaSArIDQsIHZzaGxsX25fczE2KCB2Z2V0X2hpZ2hfczE2KCB0X3MxNng4
ICksIDE1ICkgKTsKKyAgICB9CisKKyAgICBmb3IoIDsgaSA8IE1BWF9TSEFQRV9MUENfT1JERVI7
IGkrKyApIHsKKyAgICAgIEFSX3NocF9RMjhbaV0gPSBzaWxrX0xTSElGVDMyKCBBUl9zaHBfUTEz
W2ldLCAxNSApOworICAgIH0KKworICAgIHNpbGtfc2hvcnRfcHJlZGljdGlvbl9jcmVhdGVfYXJj
aF9jb2VmX25lb25fbG9jYWwoIGFfUTEyX2FyY2gsIGFfUTEyLCBwcmVkaWN0TFBDT3JkZXIgKTsK
KworICAgIGZvciggaSA9IDA7IGkgPCBsZW5ndGg7IGkrKyApIHsKKyAgICAgICAgaW50MzJ4NF90
IFNlZWRfczMyeDQsIExQQ19wcmVkX1ExNF9zMzJ4NDsKKyAgICAgICAgaW50MzJ4NF90IHNpZ25f
czMyeDQsIHRtcDFfczMyeDQsIHRtcDJfczMyeDQ7CisgICAgICAgIGludDMyeDRfdCBuX0FSX1Ex
NF9zMzJ4NCwgbl9MRl9RMTRfczMyeDQ7CisgICAgICAgIGludDMyeDJfdCBBUl9zaHBfUTI4X3Mz
MngyOworICAgICAgICBpbnQxNng0X3Qgcl9RMTBfczE2eDQsIHJyX1ExMF9zMTZ4NDsKKworICAg
ICAgICAvKiBQZXJmb3JtIGNvbW1vbiBjYWxjdWxhdGlvbnMgdXNlZCBpbiBhbGwgc3RhdGVzICov
CisKKyAgICAgICAgLyogTG9uZy10ZXJtIHByZWRpY3Rpb24gKi8KKyAgICAgICAgaWYoIHNpZ25h
bFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7CisgICAgICAgICAgICAvKiBVbnJvbGxlZCBsb29wICov
CisgICAgICAgICAgICAvKiBBdm9pZHMgaW50cm9kdWNpbmcgYSBiaWFzIGJlY2F1c2Ugc2lsa19T
TUxBV0IoKSBhbHdheXMgcm91bmRzIHRvIC1pbmYgKi8KKyAgICAgICAgICAgIExUUF9wcmVkX1Ex
NCA9IDI7CisgICAgICAgICAgICBMVFBfcHJlZF9RMTQgPSBzaWxrX1NNTEFXQiggTFRQX3ByZWRf
UTE0LCBwcmVkX2xhZ19wdHJbICAwIF0sIGJfUTE0WyAwIF0gKTsKKyAgICAgICAgICAgIExUUF9w
cmVkX1ExNCA9IHNpbGtfU01MQVdCKCBMVFBfcHJlZF9RMTQsIHByZWRfbGFnX3B0clsgLTEgXSwg
Yl9RMTRbIDEgXSApOworICAgICAgICAgICAgTFRQX3ByZWRfUTE0ID0gc2lsa19TTUxBV0IoIExU
UF9wcmVkX1ExNCwgcHJlZF9sYWdfcHRyWyAtMiBdLCBiX1ExNFsgMiBdICk7CisgICAgICAgICAg
ICBMVFBfcHJlZF9RMTQgPSBzaWxrX1NNTEFXQiggTFRQX3ByZWRfUTE0LCBwcmVkX2xhZ19wdHJb
IC0zIF0sIGJfUTE0WyAzIF0gKTsKKyAgICAgICAgICAgIExUUF9wcmVkX1ExNCA9IHNpbGtfU01M
QVdCKCBMVFBfcHJlZF9RMTQsIHByZWRfbGFnX3B0clsgLTQgXSwgYl9RMTRbIDQgXSApOworICAg
ICAgICAgICAgTFRQX3ByZWRfUTE0ID0gc2lsa19MU0hJRlQoIExUUF9wcmVkX1ExNCwgMSApOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogUTEzIC0+IFExNCAqLworICAgICAgICAgICAgcHJl
ZF9sYWdfcHRyKys7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBMVFBfcHJlZF9RMTQg
PSAwOworICAgICAgICB9CisKKyAgICAgICAgLyogTG9uZy10ZXJtIHNoYXBpbmcgKi8KKyAgICAg
ICAgaWYoIGxhZyA+IDAgKSB7CisgICAgICAgICAgICAvKiBTeW1tZXRyaWMsIHBhY2tlZCBGSVIg
Y29lZmZpY2llbnRzICovCisgICAgICAgICAgICBuX0xUUF9RMTQgPSBzaWxrX1NNVUxXQiggc2ls
a19BREQzMiggc2hwX2xhZ19wdHJbIDAgXSwgc2hwX2xhZ19wdHJbIC0yIF0gKSwgSGFybVNoYXBl
RklSUGFja2VkX1ExNCApOworICAgICAgICAgICAgbl9MVFBfUTE0ID0gc2lsa19TTUxBV1QoIG5f
TFRQX1ExNCwgc2hwX2xhZ19wdHJbIC0xIF0sICAgICAgICAgICAgICAgICAgICAgIEhhcm1TaGFw
ZUZJUlBhY2tlZF9RMTQgKTsKKyAgICAgICAgICAgIG5fTFRQX1ExNCA9IHNpbGtfU1VCX0xTSElG
VDMyKCBMVFBfcHJlZF9RMTQsIG5fTFRQX1ExNCwgMiApOyAgICAgICAgICAgIC8qIFExMiAtPiBR
MTQgKi8KKyAgICAgICAgICAgIHNocF9sYWdfcHRyKys7CisgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICBuX0xUUF9RMTQgPSAwOworICAgICAgICB9CisKKyAgICAgICAgLyogR2VuZXJhdGUg
ZGl0aGVyICovCisgICAgICAgIFNlZWRfczMyeDQgPSB2bGQxcV9zMzIoIHBzRGVsRGVjLT5TZWVk
ICk7CisgICAgICAgIFNlZWRfczMyeDQgPSB2cmVpbnRlcnByZXRxX3MzMl91MzIoIHZtbGFxX3Uz
MiggcmFuZF9pbmNyZW1lbnRfdTMyeDQsIHZyZWludGVycHJldHFfdTMyX3MzMiggU2VlZF9zMzJ4
NCApLCByYW5kX211bHRpcGxpZXJfdTMyeDQgKSApOworICAgICAgICB2c3QxcV9zMzIoIHBzRGVs
RGVjLT5TZWVkLCBTZWVkX3MzMng0ICk7CisKKyAgICAgICAgLyogU2hvcnQtdGVybSBwcmVkaWN0
aW9uICovCisgICAgICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfbm9pc2Vfc2hhcGVfcXVh
bnRpemVyX3Nob3J0X3ByZWRpY3Rpb25fbmVvbl9sb2NhbChwc0RlbERlYy0+c0xQQ19RMTRbIE5T
UV9MUENfQlVGX0xFTkdUSCAtIDE2ICsgaSBdLCBhX1ExMl9hcmNoLCBwcmVkaWN0TFBDT3JkZXIp
OworICAgICAgICBMUENfcHJlZF9RMTRfczMyeDQgPSB2c2hscV9uX3MzMiggTFBDX3ByZWRfUTE0
X3MzMng0LCA0ICk7IC8qIFExMCAtPiBRMTQgKi8KKworICAgICAgICAvKiBOb2lzZSBzaGFwZSBm
ZWVkYmFjayAqLworICAgICAgICAvKiBPdXRwdXQgb2YgbG93cGFzcyBzZWN0aW9uICovCisgICAg
ICAgIHRtcDJfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCB2bGQxcV9zMzIoIHBzRGVs
RGVjLT5EaWZmX1ExNCApLCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5zQVIyX1ExNFsgMCBdICksIHdh
cnBpbmdfUTE2X3MzMngyICk7CisgICAgICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNlY3Rpb24g
Ki8KKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZzdWJxX3MzMiggdmxkMXFfczMyKCBwc0RlbERlYy0+
c0FSMl9RMTRbIDEgXSApLCB0bXAyX3MzMng0ICk7CisgICAgICAgIHRtcDFfczMyeDQgPSBzaWxr
X1NNTEFXQl9sYW5lMF9uZW9uKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5zQVIyX1ExNFsgMCBdICks
IHRtcDFfczMyeDQsIHdhcnBpbmdfUTE2X3MzMngyICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNE
ZWxEZWMtPnNBUjJfUTE0WyAwIF0sIHRtcDJfczMyeDQgKTsKKyAgICAgICAgQVJfc2hwX1EyOF9z
MzJ4MiA9IHZsZDFfczMyKCBBUl9zaHBfUTI4ICk7CisgICAgICAgIG5fQVJfUTE0X3MzMng0ID0g
dmFkZHFfczMyKCB2ZHVwcV9uX3MzMiggc2lsa19SU0hJRlQoIHNoYXBpbmdMUENPcmRlciwgMSAp
ICksIHZxZG11bGhxX2xhbmVfczMyKCB0bXAyX3MzMng0LCBBUl9zaHBfUTI4X3MzMngyLCAwICkg
KTsKKworICAgICAgICAvKiBMb29wIG92ZXIgYWxscGFzcyBzZWN0aW9ucyAqLworICAgICAgICBm
b3IoIGogPSAyOyBqIDwgc2hhcGluZ0xQQ09yZGVyOyBqICs9IDIgKSB7CisgICAgICAgICAgICAv
KiBPdXRwdXQgb2YgYWxscGFzcyBzZWN0aW9uICovCisgICAgICAgICAgICB0bXAyX3MzMng0ID0g
dnN1YnFfczMyKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5zQVIyX1ExNFsgaiArIDAgXSApLCB0bXAx
X3MzMng0ICk7CisgICAgICAgICAgICB0bXAyX3MzMng0ID0gc2lsa19TTUxBV0JfbGFuZTBfbmVv
biggdmxkMXFfczMyKCBwc0RlbERlYy0+c0FSMl9RMTRbIGogLSAxIF0gKSwgdG1wMl9zMzJ4NCwg
d2FycGluZ19RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPnNB
UjJfUTE0WyBqIC0gMSBdLCB0bXAxX3MzMng0ICk7CisgICAgICAgICAgICBuX0FSX1ExNF9zMzJ4
NCA9IHZhZGRxX3MzMiggbl9BUl9RMTRfczMyeDQsIHZxZG11bGhxX2xhbmVfczMyKCB0bXAxX3Mz
Mng0LCBBUl9zaHBfUTI4X3MzMngyLCAxICkgKTsKKyAgICAgICAgICAgIC8qIE91dHB1dCBvZiBh
bGxwYXNzIHNlY3Rpb24gKi8KKyAgICAgICAgICAgIHRtcDFfczMyeDQgPSB2c3VicV9zMzIoIHZs
ZDFxX3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyBqICsgMSBdICksIHRtcDJfczMyeDQgKTsKKyAg
ICAgICAgICAgIHRtcDFfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCB2bGQxcV9zMzIo
IHBzRGVsRGVjLT5zQVIyX1ExNFsgaiArIDAgXSApLCB0bXAxX3MzMng0LCB3YXJwaW5nX1ExNl9z
MzJ4MiApOworICAgICAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+c0FSMl9RMTRbIGogKyAw
IF0sIHRtcDJfczMyeDQgKTsKKyAgICAgICAgICAgIEFSX3NocF9RMjhfczMyeDIgPSB2bGQxX3Mz
MiggJkFSX3NocF9RMjhbIGogXSApOworICAgICAgICAgICAgbl9BUl9RMTRfczMyeDQgPSB2YWRk
cV9zMzIoIG5fQVJfUTE0X3MzMng0LCB2cWRtdWxocV9sYW5lX3MzMiggdG1wMl9zMzJ4NCwgQVJf
c2hwX1EyOF9zMzJ4MiwgMCApICk7CisgICAgICAgIH0KKyAgICAgICAgdnN0MXFfczMyKCBwc0Rl
bERlYy0+c0FSMl9RMTRbIHNoYXBpbmdMUENPcmRlciAtIDEgXSwgdG1wMV9zMzJ4NCApOworICAg
ICAgICBuX0FSX1ExNF9zMzJ4NCA9IHZhZGRxX3MzMiggbl9BUl9RMTRfczMyeDQsIHZxZG11bGhx
X2xhbmVfczMyKCB0bXAxX3MzMng0LCBBUl9zaHBfUTI4X3MzMngyLCAxICkgKTsKKyAgICAgICAg
bl9BUl9RMTRfczMyeDQgPSB2c2hscV9uX3MzMiggbl9BUl9RMTRfczMyeDQsIDEgKTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogUTExIC0+IFExMiAqLworICAgICAgICBuX0FSX1Ex
NF9zMzJ4NCA9IHZhZGRxX3MzMiggbl9BUl9RMTRfczMyeDQsIHZxZG11bGhxX25fczMyKCB2bGQx
cV9zMzIoIHBzRGVsRGVjLT5MRl9BUl9RMTQgKSwgc2lsa19MU0hJRlQzMiggVGlsdF9RMTQsIDE2
ICkgPj4gMSApICk7ICAgICAvKiBRMTIgKi8KKyAgICAgICAgbl9BUl9RMTRfczMyeDQgPSB2c2hs
cV9uX3MzMiggbl9BUl9RMTRfczMyeDQsIDIgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogUTEyIC0+IFExNCAqLworICAgICAgICBuX0xGX1ExNF9zMzJ4NCA9IHZxZG11bGhxX25f
czMyKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5TaGFwZV9RMTRbICpzbXBsX2J1Zl9pZHggXSApLCBM
Rl9zaHBfUTI5ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBR
MTIgKi8KKyAgICAgICAgbl9MRl9RMTRfczMyeDQgPSB2YWRkcV9zMzIoIG5fTEZfUTE0X3MzMng0
LCB2cWRtdWxocV9uX3MzMiggdmxkMXFfczMyKCBwc0RlbERlYy0+TEZfQVJfUTE0ICksIHNpbGtf
TFNISUZUMzIoIExGX3NocF9RMTQgPj4gMTYgLCAxNSApICkgKTsgLyogUTEyICovCisgICAgICAg
IG5fTEZfUTE0X3MzMng0ID0gdnNobHFfbl9zMzIoIG5fTEZfUTE0X3MzMng0LCAyICk7ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFExMiAtPiBRMTQgKi8KKworICAgICAgICAvKiBJ
bnB1dCBtaW51cyBwcmVkaWN0aW9uIHBsdXMgbm9pc2UgZmVlZGJhY2sgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgICAgIC8qIHIgPSB4WyBpIF0gLSBMVFBfcHJlZCAtIExQQ19wcmVkICsg
bl9BUiArIG5fVGlsdCArIG5fTEYgKyBuX0xUUCAgKi8KKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZh
ZGRxX3MzMiggbl9BUl9RMTRfczMyeDQsIG5fTEZfUTE0X3MzMng0ICk7ICAgICAgICAgICAgICAg
LyogUTE0ICovCisgICAgICAgIHRtcDJfczMyeDQgPSB2YWRkcV9zMzIoIHZkdXBxX25fczMyKCBu
X0xUUF9RMTQgKSwgTFBDX3ByZWRfUTE0X3MzMng0ICk7IC8qIFExMyAqLworICAgICAgICB0bXAx
X3MzMng0ID0gdnN1YnFfczMyKCB0bXAyX3MzMng0LCB0bXAxX3MzMng0ICk7ICAgICAgICAgICAg
ICAgICAgICAgICAvKiBRMTMgKi8KKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZyc2hycV9uX3MzMigg
dG1wMV9zMzJ4NCwgNCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUTEwICovCisg
ICAgICAgIHRtcDFfczMyeDQgPSB2c3VicV9zMzIoIHZkdXBxX25fczMyKCB4X1ExMFsgaSBdICks
IHRtcDFfczMyeDQgKTsgICAgICAgIC8qIHJlc2lkdWFsIGVycm9yIFExMCAqLworCisgICAgICAg
IC8qIEZsaXAgc2lnbiBkZXBlbmRpbmcgb24gZGl0aGVyICovCisgICAgICAgIHNpZ25fczMyeDQg
PSB2cmVpbnRlcnByZXRxX3MzMl91MzIoIHZjbHRxX3MzMiggU2VlZF9zMzJ4NCwgdmR1cHFfbl9z
MzIoIDAgKSApICk7CisgICAgICAgIHRtcDFfczMyeDQgPSB2ZW9ycV9zMzIoIHRtcDFfczMyeDQs
IHNpZ25fczMyeDQgKTsKKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZzdWJxX3MzMiggdG1wMV9zMzJ4
NCwgc2lnbl9zMzJ4NCApOworICAgICAgICB0bXAxX3MzMng0ID0gdm1heHFfczMyKCB0bXAxX3Mz
Mng0LCB2ZHVwcV9uX3MzMiggLSggMzEgPDwgMTAgKSApICk7CisgICAgICAgIHRtcDFfczMyeDQg
PSB2bWlucV9zMzIoIHRtcDFfczMyeDQsIHZkdXBxX25fczMyKCAzMCA8PCAxMCApICk7CisgICAg
ICAgIHJfUTEwX3MxNng0ID0gdm1vdm5fczMyKCB0bXAxX3MzMng0ICk7CisKKyAgICAgICAgLyog
RmluZCB0d28gcXVhbnRpemF0aW9uIGxldmVsIGNhbmRpZGF0ZXMgYW5kIG1lYXN1cmUgdGhlaXIg
cmF0ZS1kaXN0b3J0aW9uICovCisgICAgICAgIHsKKyAgICAgICAgICAgIGludDE2eDRfdCBxMV9R
MTBfczE2eDQgPSB2c3ViX3MxNiggcl9RMTBfczE2eDQsIHZkdXBfbl9zMTYoIG9mZnNldF9RMTAg
KSApOworICAgICAgICAgICAgaW50MTZ4NF90IHExX1EwX3MxNng0ID0gdnNocl9uX3MxNiggcTFf
UTEwX3MxNng0LCAxMCApOworICAgICAgICAgICAgaW50MTZ4NF90IHEyX1ExMF9zMTZ4NDsKKyAg
ICAgICAgICAgIGludDMyeDRfdCByZDFfUTEwX3MzMng0LCByZDJfUTEwX3MzMng0OworICAgICAg
ICAgICAgdWludDMyeDRfdCB0X3UzMng0OworCisgICAgICAgICAgICBpZiggTGFtYmRhX1ExMCA+
IDIwNDggKSB7CisgICAgICAgICAgICAgICAgLyogRm9yIGFnZ3Jlc3NpdmUgUkRPLCB0aGUgYmlh
cyBiZWNvbWVzIG1vcmUgdGhhbiBvbmUgcHVsc2UuICovCisgICAgICAgICAgICAgICAgY29uc3Qg
aW50IHJkb19vZmZzZXQgPSBMYW1iZGFfUTEwLzIgLSA1MTI7CisgICAgICAgICAgICAgICAgY29u
c3QgdWludDE2eDRfdCBncmVhdGVyVGhhblJkbyA9IHZjZ3RfczE2KCBxMV9RMTBfczE2eDQsIHZk
dXBfbl9zMTYoIHJkb19vZmZzZXQgKSApOworICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQxNng0
X3QgbGVzc1RoYW5NaW51c1JkbyA9IHZjbHRfczE2KCBxMV9RMTBfczE2eDQsIHZkdXBfbl9zMTYo
IC1yZG9fb2Zmc2V0ICkgKTsKKyAgICAgICAgICAgICAgICAvKiBJZiBMYW1iZGFfUTEwID4gMzI3
NjcsIHRoZW4gcTFfUTAsIHExX1ExMCBhbmQgcTJfUTEwIG11c3QgY2hhbmdlIHRvIDMyLWJpdC4g
Ki8KKyAgICAgICAgICAgICAgICBzaWxrX2Fzc2VydCggTGFtYmRhX1ExMCA8PSAzMjc2NyApOwor
CisgICAgICAgICAgICAgICAgcTFfUTBfczE2eDQgPSB2cmVpbnRlcnByZXRfczE2X3UxNiggdmNs
dF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNiggMCApICkgKTsKKyAgICAgICAgICAgICAg
ICBxMV9RMF9zMTZ4NCA9IHZic2xfczE2KCBncmVhdGVyVGhhblJkbywgdnN1Yl9zMTYoIHExX1Ex
MF9zMTZ4NCwgdmR1cF9uX3MxNiggcmRvX29mZnNldCApICksIHExX1EwX3MxNng0ICk7CisgICAg
ICAgICAgICAgICAgcTFfUTBfczE2eDQgPSB2YnNsX3MxNiggbGVzc1RoYW5NaW51c1JkbywgdmFk
ZF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNiggcmRvX29mZnNldCApICksIHExX1EwX3Mx
Nng0ICk7CisgICAgICAgICAgICAgICAgcTFfUTBfczE2eDQgPSB2c2hyX25fczE2KCBxMV9RMF9z
MTZ4NCwgMTAgKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICBjb25zdCB1aW50MTZ4NF90IGVxdWFsMF91MTZ4NCA9IHZjZXFfczE2KCBxMV9RMF9zMTZ4NCwg
dmR1cF9uX3MxNiggMCApICk7CisgICAgICAgICAgICAgICAgY29uc3QgdWludDE2eDRfdCBlcXVh
bE1pbnVzMV91MTZ4NCA9IHZjZXFfczE2KCBxMV9RMF9zMTZ4NCwgdmR1cF9uX3MxNiggLTEgKSAp
OworICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQxNng0X3QgbGVzc1RoYW5NaW51czFfdTE2eDQg
PSB2Y2x0X3MxNiggcTFfUTBfczE2eDQsIHZkdXBfbl9zMTYoIC0xICkgKTsKKyAgICAgICAgICAg
ICAgICBpbnQxNng0X3QgdG1wMV9zMTZ4NCwgdG1wMl9zMTZ4NDsKKworICAgICAgICAgICAgICAg
IHExX1ExMF9zMTZ4NCA9IHZzaGxfbl9zMTYoIHExX1EwX3MxNng0LCAxMCApOworICAgICAgICAg
ICAgICAgIHRtcDFfczE2eDQgPSB2YWRkX3MxNiggcTFfUTEwX3MxNng0LCB2ZHVwX25fczE2KCBv
ZmZzZXRfUTEwIC0gUVVBTlRfTEVWRUxfQURKVVNUX1ExMCApICk7CisgICAgICAgICAgICAgICAg
cTFfUTEwX3MxNng0ID0gdmFkZF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNiggb2Zmc2V0
X1ExMCArIFFVQU5UX0xFVkVMX0FESlVTVF9RMTAgKSApOworICAgICAgICAgICAgICAgIHExX1Ex
MF9zMTZ4NCA9IHZic2xfczE2KCBsZXNzVGhhbk1pbnVzMV91MTZ4NCwgcTFfUTEwX3MxNng0LCB0
bXAxX3MxNng0ICk7CisgICAgICAgICAgICAgICAgcTFfUTEwX3MxNng0ID0gdmJzbF9zMTYoIGVx
dWFsMF91MTZ4NCwgdmR1cF9uX3MxNiggb2Zmc2V0X1ExMCApLCBxMV9RMTBfczE2eDQgKTsKKyAg
ICAgICAgICAgICAgICBxMV9RMTBfczE2eDQgPSB2YnNsX3MxNiggZXF1YWxNaW51czFfdTE2eDQs
IHZkdXBfbl9zMTYoIG9mZnNldF9RMTAgLSAoIDEwMjQgLSBRVUFOVF9MRVZFTF9BREpVU1RfUTEw
ICkgKSwgcTFfUTEwX3MxNng0ICk7CisgICAgICAgICAgICAgICAgcTJfUTEwX3MxNng0ID0gdmFk
ZF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNiggMTAyNCApICk7CisgICAgICAgICAgICAg
ICAgcTJfUTEwX3MxNng0ID0gdmJzbF9zMTYoIGVxdWFsMF91MTZ4NCwgdmR1cF9uX3MxNiggb2Zm
c2V0X1ExMCArIDEwMjQgLSBRVUFOVF9MRVZFTF9BREpVU1RfUTEwICksIHEyX1ExMF9zMTZ4NCAp
OworICAgICAgICAgICAgICAgIHEyX1ExMF9zMTZ4NCA9IHZic2xfczE2KCBlcXVhbE1pbnVzMV91
MTZ4NCwgdmR1cF9uX3MxNiggb2Zmc2V0X1ExMCApLCBxMl9RMTBfczE2eDQgKTsKKyAgICAgICAg
ICAgICAgICB0bXAxX3MxNng0ID0gcTFfUTEwX3MxNng0OworICAgICAgICAgICAgICAgIHRtcDJf
czE2eDQgPSBxMl9RMTBfczE2eDQ7CisgICAgICAgICAgICAgICAgdG1wMV9zMTZ4NCA9IHZic2xf
czE2KCB2b3JyX3UxNiggZXF1YWxNaW51czFfdTE2eDQsIGxlc3NUaGFuTWludXMxX3UxNng0ICks
IHZuZWdfczE2KCB0bXAxX3MxNng0ICksIHRtcDFfczE2eDQgKTsKKyAgICAgICAgICAgICAgICB0
bXAyX3MxNng0ID0gdmJzbF9zMTYoIGxlc3NUaGFuTWludXMxX3UxNng0LCB2bmVnX3MxNiggdG1w
Ml9zMTZ4NCApLCB0bXAyX3MxNng0ICk7CisgICAgICAgICAgICAgICAgcmQxX1ExMF9zMzJ4NCA9
IHZtdWxsX3MxNiggdG1wMV9zMTZ4NCwgdmR1cF9uX3MxNiggTGFtYmRhX1ExMCApICk7CisgICAg
ICAgICAgICAgICAgcmQyX1ExMF9zMzJ4NCA9IHZtdWxsX3MxNiggdG1wMl9zMTZ4NCwgdmR1cF9u
X3MxNiggTGFtYmRhX1ExMCApICk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIHJyX1Ex
MF9zMTZ4NCA9IHZzdWJfczE2KCByX1ExMF9zMTZ4NCwgcTFfUTEwX3MxNng0ICk7CisgICAgICAg
ICAgICByZDFfUTEwX3MzMng0ID0gdm1sYWxfczE2KCByZDFfUTEwX3MzMng0LCBycl9RMTBfczE2
eDQsIHJyX1ExMF9zMTZ4NCApOworICAgICAgICAgICAgcmQxX1ExMF9zMzJ4NCA9IHZzaHJxX25f
czMyKCByZDFfUTEwX3MzMng0LCAxMCApOworCisgICAgICAgICAgICBycl9RMTBfczE2eDQgPSB2
c3ViX3MxNiggcl9RMTBfczE2eDQsIHEyX1ExMF9zMTZ4NCApOworICAgICAgICAgICAgcmQyX1Ex
MF9zMzJ4NCA9IHZtbGFsX3MxNiggcmQyX1ExMF9zMzJ4NCwgcnJfUTEwX3MxNng0LCBycl9RMTBf
czE2eDQgKTsKKyAgICAgICAgICAgIHJkMl9RMTBfczMyeDQgPSB2c2hycV9uX3MzMiggcmQyX1Ex
MF9zMzJ4NCwgMTAgKTsKKworICAgICAgICAgICAgdG1wMl9zMzJ4NCA9IHZsZDFxX3MzMiggcHNE
ZWxEZWMtPlJEX1ExMCApOworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHZhZGRxX3MzMiggdG1w
Ml9zMzJ4NCwgdm1pbnFfczMyKCByZDFfUTEwX3MzMng0LCByZDJfUTEwX3MzMng0ICkgKTsKKyAg
ICAgICAgICAgIHRtcDJfczMyeDQgPSB2YWRkcV9zMzIoIHRtcDJfczMyeDQsIHZtYXhxX3MzMigg
cmQxX1ExMF9zMzJ4NCwgcmQyX1ExMF9zMzJ4NCApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIo
IHBzU2FtcGxlU3RhdGVbIDAgXS5SRF9RMTAsIHRtcDFfczMyeDQgKTsKKyAgICAgICAgICAgIHZz
dDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMSBdLlJEX1ExMCwgdG1wMl9zMzJ4NCApOworICAgICAg
ICAgICAgdF91MzJ4NCA9IHZjbHRxX3MzMiggcmQxX1ExMF9zMzJ4NCwgcmQyX1ExMF9zMzJ4NCAp
OworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHZic2xxX3MzMiggdF91MzJ4NCwgdm1vdmxfczE2
KCBxMV9RMTBfczE2eDQgKSwgdm1vdmxfczE2KCBxMl9RMTBfczE2eDQgKSApOworICAgICAgICAg
ICAgdG1wMl9zMzJ4NCA9IHZic2xxX3MzMiggdF91MzJ4NCwgdm1vdmxfczE2KCBxMl9RMTBfczE2
eDQgKSwgdm1vdmxfczE2KCBxMV9RMTBfczE2eDQgKSApOworICAgICAgICAgICAgdnN0MXFfczMy
KCBwc1NhbXBsZVN0YXRlWyAwIF0uUV9RMTAsIHRtcDFfczMyeDQgKTsKKyAgICAgICAgICAgIHZz
dDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMSBdLlFfUTEwLCB0bXAyX3MzMng0ICk7CisgICAgICAg
IH0KKworICAgICAgICB7CisgICAgICAgICAgICAvKiBVcGRhdGUgc3RhdGVzIGZvciBiZXN0IHF1
YW50aXphdGlvbiAqLworICAgICAgICAgICAgaW50MzJ4NF90IGV4Y19RMTRfczMyeDQsIExQQ19l
eGNfUTE0X3MzMng0LCB4cV9RMTRfczMyeDQsIHNMRl9BUl9zaHBfUTE0X3MzMng0OworCisgICAg
ICAgICAgICAvKiBRdWFudGl6ZWQgZXhjaXRhdGlvbiAqLworICAgICAgICAgICAgZXhjX1ExNF9z
MzJ4NCA9IHZzaGxxX25fczMyKCB0bXAxX3MzMng0LCA0ICk7CisgICAgICAgICAgICBleGNfUTE0
X3MzMng0ID0gdmVvcnFfczMyKCBleGNfUTE0X3MzMng0LCBzaWduX3MzMng0ICk7CisgICAgICAg
ICAgICBleGNfUTE0X3MzMng0ID0gdnN1YnFfczMyKCBleGNfUTE0X3MzMng0LCBzaWduX3MzMng0
ICk7CisKKyAgICAgICAgICAgIC8qIEFkZCBwcmVkaWN0aW9ucyAqLworICAgICAgICAgICAgTFBD
X2V4Y19RMTRfczMyeDQgPSB2YWRkcV9zMzIoIGV4Y19RMTRfczMyeDQsIHZkdXBxX25fczMyKCBM
VFBfcHJlZF9RMTQgKSApOworICAgICAgICAgICAgeHFfUTE0X3MzMng0ICAgICAgPSB2YWRkcV9z
MzIoIExQQ19leGNfUTE0X3MzMng0LCBMUENfcHJlZF9RMTRfczMyeDQgKTsKKworICAgICAgICAg
ICAgLyogVXBkYXRlIHN0YXRlcyAqLworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHZzdWJxX3Mz
MiggeHFfUTE0X3MzMng0LCB2c2hscV9uX3MzMiggdmR1cHFfbl9zMzIoIHhfUTEwWyBpIF0gKSwg
NCApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5EaWZmX1Ex
NCwgdG1wMV9zMzJ4NCApOworICAgICAgICAgICAgc0xGX0FSX3NocF9RMTRfczMyeDQgPSB2c3Vi
cV9zMzIoIHRtcDFfczMyeDQsIG5fQVJfUTE0X3MzMng0ICk7CisgICAgICAgICAgICB2c3QxcV9z
MzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5zTFRQX3NocF9RMTQsIHZzdWJxX3MzMiggc0xGX0FSX3No
cF9RMTRfczMyeDQsIG5fTEZfUTE0X3MzMng0ICkgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMigg
cHNTYW1wbGVTdGF0ZVsgMCBdLkxGX0FSX1ExNCwgc0xGX0FSX3NocF9RMTRfczMyeDQgKTsKKyAg
ICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLkxQQ19leGNfUTE0LCBMUENf
ZXhjX1ExNF9zMzJ4NCApOworICAgICAgICAgICAgdnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAw
IF0ueHFfUTE0LCB4cV9RMTRfczMyeDQgKTsKKworICAgICAgICAgICAgLyogUXVhbnRpemVkIGV4
Y2l0YXRpb24gKi8KKyAgICAgICAgICAgIGV4Y19RMTRfczMyeDQgPSB2c2hscV9uX3MzMiggdG1w
Ml9zMzJ4NCwgNCApOworICAgICAgICAgICAgZXhjX1ExNF9zMzJ4NCA9IHZlb3JxX3MzMiggZXhj
X1ExNF9zMzJ4NCwgc2lnbl9zMzJ4NCApOworICAgICAgICAgICAgZXhjX1ExNF9zMzJ4NCA9IHZz
dWJxX3MzMiggZXhjX1ExNF9zMzJ4NCwgc2lnbl9zMzJ4NCApOworCisgICAgICAgICAgICAvKiBB
ZGQgcHJlZGljdGlvbnMgKi8KKyAgICAgICAgICAgIExQQ19leGNfUTE0X3MzMng0ID0gdmFkZHFf
czMyKCBleGNfUTE0X3MzMng0LCB2ZHVwcV9uX3MzMiggTFRQX3ByZWRfUTE0ICkgKTsKKyAgICAg
ICAgICAgIHhxX1ExNF9zMzJ4NCAgICAgID0gdmFkZHFfczMyKCBMUENfZXhjX1ExNF9zMzJ4NCwg
TFBDX3ByZWRfUTE0X3MzMng0ICk7CisKKyAgICAgICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMgKi8K
KyAgICAgICAgICAgIHRtcDFfczMyeDQgPSB2c3VicV9zMzIoIHhxX1ExNF9zMzJ4NCwgdnNobHFf
bl9zMzIoIHZkdXBxX25fczMyKCB4X1ExMFsgaSBdICksIDQgKSApOworICAgICAgICAgICAgdnN0
MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAxIF0uRGlmZl9RMTQsIHRtcDFfczMyeDQgKTsKKyAgICAg
ICAgICAgIHNMRl9BUl9zaHBfUTE0X3MzMng0ID0gdnN1YnFfczMyKCB0bXAxX3MzMng0LCBuX0FS
X1ExNF9zMzJ4NCApOworICAgICAgICAgICAgdnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAxIF0u
c0xUUF9zaHBfUTE0LCB2c3VicV9zMzIoIHNMRl9BUl9zaHBfUTE0X3MzMng0LCBuX0xGX1ExNF9z
MzJ4NCApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDEgXS5MRl9B
Ul9RMTQsIHNMRl9BUl9zaHBfUTE0X3MzMng0ICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBz
U2FtcGxlU3RhdGVbIDEgXS5MUENfZXhjX1ExNCwgTFBDX2V4Y19RMTRfczMyeDQgKTsKKyAgICAg
ICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMSBdLnhxX1ExNCwgeHFfUTE0X3MzMng0
ICk7CisgICAgICAgIH0KKworICAgICAgICAqc21wbF9idWZfaWR4ID0gKnNtcGxfYnVmX2lkeCA/
ICggKnNtcGxfYnVmX2lkeCAtIDEgKSA6ICggREVDSVNJT05fREVMQVkgLSAxKTsKKyAgICAgICAg
bGFzdF9zbXBsZV9pZHggPSAqc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheSArIERFQ0lTSU9O
X0RFTEFZOworICAgICAgICBpZiggbGFzdF9zbXBsZV9pZHggPj0gREVDSVNJT05fREVMQVkgKSBs
YXN0X3NtcGxlX2lkeCAtPSBERUNJU0lPTl9ERUxBWTsKKyAgICAgICAgaWYoIGxhc3Rfc21wbGVf
aWR4ID49IERFQ0lTSU9OX0RFTEFZICkgbGFzdF9zbXBsZV9pZHggLT0gREVDSVNJT05fREVMQVk7
CisKKyAgICAgICAgLyogRmluZCB3aW5uZXIgKi8KKyAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1w
bGVTdGF0ZVsgMCBdLlJEX1ExMFsgMCBdOworICAgICAgICBXaW5uZXJfaW5kID0gMDsKKyAgICAg
ICAgZm9yKCBrID0gMTsgayA8IG5TdGF0ZXNEZWxheWVkRGVjaXNpb247IGsrKyApIHsKKyAgICAg
ICAgICAgIGlmKCBwc1NhbXBsZVN0YXRlWyAwIF0uUkRfUTEwWyBrIF0gPCBSRG1pbl9RMTAgKSB7
CisgICAgICAgICAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0ZVsgMCBdLlJEX1ExMFsg
ayBdOworICAgICAgICAgICAgICAgIFdpbm5lcl9pbmQgPSBrOworICAgICAgICAgICAgfQorICAg
ICAgICB9CisKKyAgICAgICAgLyogSW5jcmVhc2UgUkQgdmFsdWVzIG9mIGV4cGlyZWQgc3RhdGVz
ICovCisgICAgICAgIHsKKyAgICAgICAgICAgIHVpbnQzMng0X3QgdF91MzJ4NDsKKyAgICAgICAg
ICAgIFdpbm5lcl9yYW5kX3N0YXRlID0gcHNEZWxEZWMtPlJhbmRTdGF0ZVsgbGFzdF9zbXBsZV9p
ZHggXVsgV2lubmVyX2luZCBdOworICAgICAgICAgICAgdF91MzJ4NCA9IHZjZXFxX3MzMiggdmxk
MXFfczMyKCBwc0RlbERlYy0+UmFuZFN0YXRlWyBsYXN0X3NtcGxlX2lkeCBdICksIHZkdXBxX25f
czMyKCBXaW5uZXJfcmFuZF9zdGF0ZSApICk7CisgICAgICAgICAgICB0X3UzMng0ID0gdm12bnFf
dTMyKCB0X3UzMng0ICk7CisgICAgICAgICAgICB0X3UzMng0ID0gdnNocnFfbl91MzIoIHRfdTMy
eDQsIDUgKTsKKyAgICAgICAgICAgIHRtcDFfczMyeDQgPSB2bGQxcV9zMzIoIHBzU2FtcGxlU3Rh
dGVbIDAgXS5SRF9RMTAgKTsKKyAgICAgICAgICAgIHRtcDJfczMyeDQgPSB2bGQxcV9zMzIoIHBz
U2FtcGxlU3RhdGVbIDEgXS5SRF9RMTAgKTsKKyAgICAgICAgICAgIHRtcDFfczMyeDQgPSB2YWRk
cV9zMzIoIHRtcDFfczMyeDQsIHZyZWludGVycHJldHFfczMyX3UzMiggdF91MzJ4NCApICk7Cisg
ICAgICAgICAgICB0bXAyX3MzMng0ID0gdmFkZHFfczMyKCB0bXAyX3MzMng0LCB2cmVpbnRlcnBy
ZXRxX3MzMl91MzIoIHRfdTMyeDQgKSApOworICAgICAgICAgICAgdnN0MXFfczMyKCBwc1NhbXBs
ZVN0YXRlWyAwIF0uUkRfUTEwLCB0bXAxX3MzMng0ICk7CisgICAgICAgICAgICB2c3QxcV9zMzIo
IHBzU2FtcGxlU3RhdGVbIDEgXS5SRF9RMTAsIHRtcDJfczMyeDQgKTsKKworICAgICAgICAgICAg
LyogRmluZCB3b3JzdCBpbiBmaXJzdCBzZXQgYW5kIGJlc3QgaW4gc2Vjb25kIHNldCAqLworICAg
ICAgICAgICAgUkRtYXhfUTEwID0gcHNTYW1wbGVTdGF0ZVsgMCBdLlJEX1ExMFsgMCBdOworICAg
ICAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0ZVsgMSBdLlJEX1ExMFsgMCBdOworICAg
ICAgICAgICAgUkRtYXhfaW5kID0gMDsKKyAgICAgICAgICAgIFJEbWluX2luZCA9IDA7CisgICAg
ICAgICAgICBmb3IoIGsgPSAxOyBrIDwgblN0YXRlc0RlbGF5ZWREZWNpc2lvbjsgaysrICkgewor
ICAgICAgICAgICAgICAgIC8qIGZpbmQgd29yc3QgaW4gZmlyc3Qgc2V0ICovCisgICAgICAgICAg
ICAgICAgaWYoIHBzU2FtcGxlU3RhdGVbIDAgXS5SRF9RMTBbIGsgXSA+IFJEbWF4X1ExMCApIHsK
KyAgICAgICAgICAgICAgICAgICAgUkRtYXhfUTEwID0gcHNTYW1wbGVTdGF0ZVsgMCBdLlJEX1Ex
MFsgayBdOworICAgICAgICAgICAgICAgICAgICBSRG1heF9pbmQgPSBrOworICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICAgICAvKiBmaW5kIGJlc3QgaW4gc2Vjb25kIHNldCAqLworICAg
ICAgICAgICAgICAgIGlmKCBwc1NhbXBsZVN0YXRlWyAxIF0uUkRfUTEwWyBrIF0gPCBSRG1pbl9R
MTAgKSB7CisgICAgICAgICAgICAgICAgICAgIFJEbWluX1ExMCA9IHBzU2FtcGxlU3RhdGVbIDEg
XS5SRF9RMTBbIGsgXTsKKyAgICAgICAgICAgICAgICAgICAgUkRtaW5faW5kID0gazsKKyAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICAvKiBSZXBs
YWNlIGEgc3RhdGUgaWYgYmVzdCBmcm9tIHNlY29uZCBzZXQgb3V0cGVyZm9ybXMgd29yc3QgaW4g
Zmlyc3Qgc2V0ICovCisgICAgICAgIGlmKCBSRG1pbl9RMTAgPCBSRG1heF9RMTAgKSB7CisgICAg
ICAgICAgICBvcHVzX2ludDMyICgqcHRyKVtORU9OX01BWF9ERUxfREVDX1NUQVRFU10gPSBwc0Rl
bERlYy0+UmFuZFN0YXRlOworICAgICAgICAgICAgY29uc3QgaW50IG51bU90aGVycyA9IChpbnQp
KCAoIHNpemVvZiggTlNRX2RlbF9kZWNzX3N0cnVjdCApIC0gc2l6ZW9mKCAoIChOU1FfZGVsX2Rl
Y3Nfc3RydWN0ICopMCApLT5zTFBDX1ExNCApICkKKyAgICAgICAgICAgICAgICAvICggTkVPTl9N
QVhfREVMX0RFQ19TVEFURVMgKiBzaXplb2YoIG9wdXNfaW50MzIgKSApICk7CisgICAgICAgICAg
ICAvKiBPbmx5ICggcHJlZGljdExQQ09yZGVyIC0gMSApIG9mIHNMUENfUTE0IGJ1ZmZlciBuZWVk
IHRvIGJlIHVwZGF0ZWQsIHRob3VnaCB0aGUgZmlyc3Qgc2V2ZXJhbCAgICAgKi8KKyAgICAgICAg
ICAgIC8qIHVzZWxlc3Mgc0xQQ19RMTRbXSB3aWxsIGJlIGRpZmZlcmVudCBjb21wYXJpbmcgd2l0
aCBDIHdoZW4gcHJlZGljdExQQ09yZGVyIDwgTlNRX0xQQ19CVUZfTEVOR1RILiAqLworICAgICAg
ICAgICAgLyogSGVyZSBqdXN0IHVwZGF0ZSBjb25zdGFudCAoIE5TUV9MUENfQlVGX0xFTkdUSCAt
IDEgKSBmb3Igc2ltcGxpY2l0eS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
ICAgICAgICBmb3IoIGogPSBpICsgMTsgaiA8IGkgKyBOU1FfTFBDX0JVRl9MRU5HVEg7IGorKyAp
IHsKKyAgICAgICAgICAgICAgICBwc0RlbERlYy0+c0xQQ19RMTRbIGogXVsgUkRtYXhfaW5kIF0g
PSBwc0RlbERlYy0+c0xQQ19RMTRbIGogXVsgUkRtaW5faW5kIF07CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgICBmb3IoIGogPSAwOyBqIDwgbnVtT3RoZXJzOyBqKysgKSB7CisgICAgICAgICAg
ICAgICAgcHRyWyBqIF1bIFJEbWF4X2luZCBdID0gcHRyWyBqIF1bIFJEbWluX2luZCBdOworICAg
ICAgICAgICAgfQorCisgICAgICAgICAgICBwc1NhbXBsZVN0YXRlWyAwIF0uUV9RMTBbIFJEbWF4
X2luZCBdID0gcHNTYW1wbGVTdGF0ZVsgMSBdLlFfUTEwWyBSRG1pbl9pbmQgXTsKKyAgICAgICAg
ICAgIHBzU2FtcGxlU3RhdGVbIDAgXS5SRF9RMTBbIFJEbWF4X2luZCBdID0gcHNTYW1wbGVTdGF0
ZVsgMSBdLlJEX1ExMFsgUkRtaW5faW5kIF07CisgICAgICAgICAgICBwc1NhbXBsZVN0YXRlWyAw
IF0ueHFfUTE0WyBSRG1heF9pbmQgXSA9IHBzU2FtcGxlU3RhdGVbIDEgXS54cV9RMTRbIFJEbWlu
X2luZCBdOworICAgICAgICAgICAgcHNTYW1wbGVTdGF0ZVsgMCBdLkxGX0FSX1ExNFsgUkRtYXhf
aW5kIF0gPSBwc1NhbXBsZVN0YXRlWyAxIF0uTEZfQVJfUTE0WyBSRG1pbl9pbmQgXTsKKyAgICAg
ICAgICAgIHBzU2FtcGxlU3RhdGVbIDAgXS5EaWZmX1ExNFsgUkRtYXhfaW5kIF0gPSBwc1NhbXBs
ZVN0YXRlWyAxIF0uRGlmZl9RMTRbIFJEbWluX2luZCBdOworICAgICAgICAgICAgcHNTYW1wbGVT
dGF0ZVsgMCBdLnNMVFBfc2hwX1ExNFsgUkRtYXhfaW5kIF0gPSBwc1NhbXBsZVN0YXRlWyAxIF0u
c0xUUF9zaHBfUTE0WyBSRG1pbl9pbmQgXTsKKyAgICAgICAgICAgIHBzU2FtcGxlU3RhdGVbIDAg
XS5MUENfZXhjX1ExNFsgUkRtYXhfaW5kIF0gPSBwc1NhbXBsZVN0YXRlWyAxIF0uTFBDX2V4Y19R
MTRbIFJEbWluX2luZCBdOworICAgICAgICB9CisKKyAgICAgICAgLyogV3JpdGUgc2FtcGxlcyBm
cm9tIHdpbm5lciB0byBvdXRwdXQgYW5kIGxvbmctdGVybSBmaWx0ZXIgc3RhdGVzICovCisgICAg
ICAgIGlmKCBzdWJmciA+IDAgfHwgaSA+PSBkZWNpc2lvbkRlbGF5ICkgeworICAgICAgICAgICAg
cHVsc2VzWyAgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDgpc2lsa19SU0hJRlRfUk9V
TkQoIHBzRGVsRGVjLT5RX1ExMFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdLCAxMCAp
OworICAgICAgICAgICAgeHFbIGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQxNilzaWxr
X1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCgKKyAgICAgICAgICAgICAgICBzaWxrX1NNVUxXVygg
cHNEZWxEZWMtPlhxX1ExNFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdLCBkZWxheWVk
R2Fpbl9RMTBbIGxhc3Rfc21wbGVfaWR4IF0gKSwgOCApICk7CisgICAgICAgICAgICBOU1EtPnNM
VFBfc2hwX1ExNFsgTlNRLT5zTFRQX3NocF9idWZfaWR4IC0gZGVjaXNpb25EZWxheSBdID0gcHNE
ZWxEZWMtPlNoYXBlX1ExNFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdOworICAgICAg
ICAgICAgc0xUUF9RMTVbICAgICAgICAgIE5TUS0+c0xUUF9idWZfaWR4ICAgICAtIGRlY2lzaW9u
RGVsYXkgXSA9IHBzRGVsRGVjLT5QcmVkX1ExNVsgIGxhc3Rfc21wbGVfaWR4IF1bIFdpbm5lcl9p
bmQgXTsKKyAgICAgICAgfQorICAgICAgICBOU1EtPnNMVFBfc2hwX2J1Zl9pZHgrKzsKKyAgICAg
ICAgTlNRLT5zTFRQX2J1Zl9pZHgrKzsKKworICAgICAgICAvKiBVcGRhdGUgc3RhdGVzICovCisg
ICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPkxGX0FSX1ExNCwgdmxkMXFfczMyKCBwc1NhbXBs
ZVN0YXRlWyAwIF0uTEZfQVJfUTE0ICkgKTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+
RGlmZl9RMTQsIHZsZDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLkRpZmZfUTE0ICkgKTsKKyAg
ICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+c0xQQ19RMTRbIE5TUV9MUENfQlVGX0xFTkdUSCAr
IGkgXSwgdmxkMXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0ueHFfUTE0ICkgKTsKKyAgICAgICAg
dnN0MXFfczMyKCBwc0RlbERlYy0+WHFfUTE0WyAqc21wbF9idWZfaWR4IF0sIHZsZDFxX3MzMigg
cHNTYW1wbGVTdGF0ZVsgMCBdLnhxX1ExNCApICk7CisgICAgICAgIHRtcDFfczMyeDQgPSB2bGQx
cV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5RX1ExMCApOworICAgICAgICB2c3QxcV9zMzIoIHBz
RGVsRGVjLT5RX1ExMFsgKnNtcGxfYnVmX2lkeCBdLCB0bXAxX3MzMng0ICk7CisgICAgICAgIHZz
dDFxX3MzMiggcHNEZWxEZWMtPlByZWRfUTE1WyAqc21wbF9idWZfaWR4IF0sIHZzaGxxX25fczMy
KCB2bGQxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5MUENfZXhjX1ExNCApLCAxICkgKTsKKyAg
ICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+U2hhcGVfUTE0WyAqc21wbF9idWZfaWR4IF0sIHZs
ZDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLnNMVFBfc2hwX1ExNCApICk7CisgICAgICAgIHRt
cDFfczMyeDQgPSB2cnNocnFfbl9zMzIoIHRtcDFfczMyeDQsIDEwICk7CisgICAgICAgIHRtcDFf
czMyeDQgPSB2YWRkcV9zMzIoIHZsZDFxX3MzMiggcHNEZWxEZWMtPlNlZWQgKSwgdG1wMV9zMzJ4
NCApOworICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5TZWVkLCB0bXAxX3MzMng0ICk7Cisg
ICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlJhbmRTdGF0ZVsgKnNtcGxfYnVmX2lkeCBdLCB0
bXAxX3MzMng0ICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlJEX1ExMCwgdmxkMXFf
czMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uUkRfUTEwICkgKTsKKyAgICAgICAgZGVsYXllZEdhaW5f
UTEwWyAqc21wbF9idWZfaWR4IF0gPSBHYWluX1ExMDsKKyAgICB9CisgICAgLyogVXBkYXRlIExQ
QyBzdGF0ZXMgKi8KKyAgICBzaWxrX21lbWNweSggcHNEZWxEZWMtPnNMUENfUTE0WyAwIF0sIHBz
RGVsRGVjLT5zTFBDX1ExNFsgbGVuZ3RoIF0sIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICogTlNR
X0xQQ19CVUZfTEVOR1RIICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKKworICAgIFJFU1RPUkVf
U1RBQ0s7Cit9CisKK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfU01VTFdCXzhfbmVvbigK
KyAgICBjb25zdCBvcHVzX2ludDE2ICphLAorICAgIGNvbnN0IGludDMyeDJfdCAgYiwKKyAgICBv
cHVzX2ludDMyICAgICAgICpvCispCit7CisgICAgY29uc3QgaW50MTZ4OF90IGFfczE2eDggPSB2
bGQxcV9zMTYoIGEgKTsKKyAgICBpbnQzMng0X3QgbzBfczMyeDQsIG8xX3MzMng0OworCisgICAg
bzBfczMyeDQgPSB2c2hsbF9uX3MxNiggdmdldF9sb3dfczE2KCBhX3MxNng4ICksIDE1ICk7Cisg
ICAgbzFfczMyeDQgPSB2c2hsbF9uX3MxNiggdmdldF9oaWdoX3MxNiggYV9zMTZ4OCApLCAxNSAp
OworICAgIG8wX3MzMng0ID0gdnFkbXVsaHFfbGFuZV9zMzIoIG8wX3MzMng0LCBiLCAwICk7Cisg
ICAgbzFfczMyeDQgPSB2cWRtdWxocV9sYW5lX3MzMiggbzFfczMyeDQsIGIsIDAgKTsKKyAgICB2
c3QxcV9zMzIoIG8sIG8wX3MzMng0ICk7CisgICAgdnN0MXFfczMyKCBvICsgNCwgbzFfczMyeDQg
KTsKK30KKworLyogT25seSB3b3JrcyB3aGVuICggYiA+PSAtNjU1MzYgKSAmJiAoIGIgPCA2NTUz
NiApLiAqLworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19TTVVMV1dfc21hbGxfYl80X25l
b24oCisgICAgb3B1c19pbnQzMiAgICAgICAqYSwKKyAgICBjb25zdCBpbnQzMngyX3QgIGJfczMy
eDIpCit7CisgICAgaW50MzJ4NF90IG9fczMyeDQ7CisKKyAgICBvX3MzMng0ID0gdmxkMXFfczMy
KCBhICk7CisgICAgb19zMzJ4NCA9IHZxZG11bGhxX2xhbmVfczMyKCBvX3MzMng0LCBiX3MzMngy
LCAwICk7CisgICAgdnN0MXFfczMyKCBhLCBvX3MzMng0ICk7Cit9CisKKy8qIE9ubHkgd29ya3Mg
d2hlbiAoIGIgPj0gLTY1NTM2ICkgJiYgKCBiIDwgNjU1MzYgKS4gKi8KK3N0YXRpYyBPUFVTX0lO
TElORSB2b2lkIHNpbGtfU01VTFdXX3NtYWxsX2JfOF9uZW9uKAorICAgIG9wdXNfaW50MzIgICAg
ICAgKmEsCisgICAgY29uc3QgaW50MzJ4Ml90ICBiX3MzMngyCispCit7CisgICAgaW50MzJ4NF90
IG8wX3MzMng0LCBvMV9zMzJ4NDsKKworICAgIG8wX3MzMng0ID0gdmxkMXFfczMyKCBhICk7Cisg
ICAgbzFfczMyeDQgPSB2bGQxcV9zMzIoIGEgKyA0ICk7CisgICAgbzBfczMyeDQgPSB2cWRtdWxo
cV9sYW5lX3MzMiggbzBfczMyeDQsIGJfczMyeDIsIDAgKTsKKyAgICBvMV9zMzJ4NCA9IHZxZG11
bGhxX2xhbmVfczMyKCBvMV9zMzJ4NCwgYl9zMzJ4MiwgMCApOworICAgIHZzdDFxX3MzMiggYSwg
bzBfczMyeDQgKTsKKyAgICB2c3QxcV9zMzIoIGEgKyA0LCBvMV9zMzJ4NCApOworfQorCitzdGF0
aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX1NNVUxXV180X25lb24oCisgICAgb3B1c19pbnQzMiAg
ICAgICAqYSwKKyAgICBjb25zdCBpbnQzMngyX3QgIGJfczMyeDIpCit7CisgICAgaW50MzJ4NF90
IGFfczMyeDQsIG9fczMyeDQ7CisKKyAgICBhX3MzMng0ID0gdmxkMXFfczMyKCBhICk7CisgICAg
b19zMzJ4NCA9IHZxZG11bGhxX2xhbmVfczMyKCBhX3MzMng0LCBiX3MzMngyLCAwICk7CisgICAg
b19zMzJ4NCA9IHZtbGFxX2xhbmVfczMyKCBvX3MzMng0LCBhX3MzMng0LCBiX3MzMngyLCAxICk7
CisgICAgdnN0MXFfczMyKCBhLCBvX3MzMng0ICk7Cit9CisKK3N0YXRpYyBPUFVTX0lOTElORSB2
b2lkIHNpbGtfU01VTFdXXzhfbmVvbigKKyAgICBvcHVzX2ludDMyICAgICAgICphLAorICAgIGNv
bnN0IGludDMyeDJfdCAgYl9zMzJ4MgorKQoreworICAgIGludDMyeDRfdCBhMF9zMzJ4NCwgYTFf
czMyeDQsIG8wX3MzMng0LCBvMV9zMzJ4NDsKKworICAgIGEwX3MzMng0ID0gdmxkMXFfczMyKCBh
ICk7CisgICAgYTFfczMyeDQgPSB2bGQxcV9zMzIoIGEgKyA0ICk7CisgICAgbzBfczMyeDQgPSB2
cWRtdWxocV9sYW5lX3MzMiggYTBfczMyeDQsIGJfczMyeDIsIDAgKTsKKyAgICBvMV9zMzJ4NCA9
IHZxZG11bGhxX2xhbmVfczMyKCBhMV9zMzJ4NCwgYl9zMzJ4MiwgMCApOworICAgIG8wX3MzMng0
ID0gdm1sYXFfbGFuZV9zMzIoIG8wX3MzMng0LCBhMF9zMzJ4NCwgYl9zMzJ4MiwgMSApOworICAg
IG8xX3MzMng0ID0gdm1sYXFfbGFuZV9zMzIoIG8xX3MzMng0LCBhMV9zMzJ4NCwgYl9zMzJ4Miwg
MSApOworICAgIHZzdDFxX3MzMiggYSwgbzBfczMyeDQgKTsKKyAgICB2c3QxcV9zMzIoIGEgKyA0
LCBvMV9zMzJ4NCApOworfQorCitzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX1NNVUxXV19s
b29wX25lb24oCisgICAgY29uc3Qgb3B1c19pbnQxNiAqYSwKKyAgICBjb25zdCBvcHVzX2ludDMy
IGIsCisgICAgb3B1c19pbnQzMiAgICAgICAqbywKKyAgICBjb25zdCBvcHVzX2ludCAgIGxvb3Bf
bnVtCispCit7CisgICAgb3B1c19pbnQgaTsKKyAgICBpbnQzMngyX3QgYl9zMzJ4MjsKKworICAg
IGJfczMyeDIgPSB2ZHVwX25fczMyKCBiICk7CisgICAgZm9yKCBpID0gMDsgaSA8IGxvb3BfbnVt
IC0gNzsgaSArPSA4ICkgeworICAgICAgICBzaWxrX1NNVUxXQl84X25lb24oIGEgKyBpLCBiX3Mz
MngyLCBvICsgaSApOworICAgIH0KKyAgICBmb3IoIDsgaSA8IGxvb3BfbnVtOyBpKysgKSB7Cisg
ICAgICAgIG9bIGkgXSA9IHNpbGtfU01VTFdXKCBhWyBpIF0sIGIgKTsKKyAgICB9Cit9CisKK3N0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVfc3RhdGVzX25lb24o
CisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICpwc0VuY0MsICAgICAgICAgICAgICAgLyog
SSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNpbGtfbnNx
X3N0YXRlICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRl
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOU1FfZGVsX2RlY3Nfc3RydWN0IHBz
RGVsRGVjW10sICAgICAgICAgICAgICAgICAvKiBJL08gIERlbGF5ZWQgZGVjaXNpb24gc3RhdGVz
ICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICB4MTZbXSwgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50MzIgICAgICAgICAgeF9zY19RMTBbXSwgICAgICAgICAgICAgICAgIC8q
IE8gICAgSW5wdXQgc2NhbGVkIHdpdGggMS9HYWluIGluIFExMCAgICAgKi8KKyAgICBjb25zdCBv
cHVzX2ludDE2ICAgIHNMVFBbXSwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJlLXdoaXRl
bmVkIExUUCBzdGF0ZSBpbiBRMCAgICAgICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICBz
TFRQX1ExNVtdLCAgICAgICAgICAgICAgICAgLyogTyAgICBMVFAgc3RhdGUgbWF0Y2hpbmcgc2Nh
bGVkIGlucHV0ICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgc3ViZnIsICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgU3ViZnJhbWUgbnVtYmVyICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgIExUUF9zY2FsZV9RMTQsICAgICAgICAgICAgICAv
KiBJICAgIExUUCBzdGF0ZSBzY2FsaW5nICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qg
b3B1c19pbnQzMiAgICBHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdLCAgLyogSSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
cGl0Y2hMWyBNQVhfTkJfU1VCRlIgXSwgICAgIC8qIEkgICAgUGl0Y2ggbGFnICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgIHNpZ25hbF90eXBlLCAg
ICAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBlICAgICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICBkZWNpc2lvbkRlbGF5ICAgICAgICAgICAgICAg
LyogSSAgICBEZWNpc2lvbiBkZWxheSAgICAgICAgICAgICAgICAgICAgICAqLworKQoreworICAg
IG9wdXNfaW50ICAgICAgICAgICAgaSwgbGFnOworICAgIG9wdXNfaW50MzIgICAgICAgICAgZ2Fp
bl9hZGpfUTE2LCBpbnZfZ2Fpbl9RMzEsIGludl9nYWluX1EyNjsKKworICAgIGxhZyAgICAgICAg
ICA9IHBpdGNoTFsgc3ViZnIgXTsKKyAgICBpbnZfZ2Fpbl9RMzEgPSBzaWxrX0lOVkVSU0UzMl92
YXJRKCBzaWxrX21heCggR2FpbnNfUTE2WyBzdWJmciBdLCAxICksIDQ3ICk7CisgICAgc2lsa19h
c3NlcnQoIGludl9nYWluX1EzMSAhPSAwICk7CisKKyAgICAvKiBTY2FsZSBpbnB1dCAqLworICAg
IGludl9nYWluX1EyNiA9IHNpbGtfUlNISUZUX1JPVU5EKCBpbnZfZ2Fpbl9RMzEsIDUgKTsKKyAg
ICBzaWxrX1NNVUxXV19sb29wX25lb24oIHgxNiwgaW52X2dhaW5fUTI2LCB4X3NjX1ExMCwgcHNF
bmNDLT5zdWJmcl9sZW5ndGggKTsKKworICAgIC8qIEFmdGVyIHJld2hpdGVuaW5nIHRoZSBMVFAg
c3RhdGUgaXMgdW4tc2NhbGVkLCBzbyBzY2FsZSB3aXRoIGludl9nYWluX1ExNiAqLworICAgIGlm
KCBOU1EtPnJld2hpdGVfZmxhZyApIHsKKyAgICAgICAgaWYoIHN1YmZyID09IDAgKSB7CisgICAg
ICAgICAgICAvKiBEbyBMVFAgZG93bnNjYWxpbmcgKi8KKyAgICAgICAgICAgIGludl9nYWluX1Ez
MSA9IHNpbGtfTFNISUZUKCBzaWxrX1NNVUxXQiggaW52X2dhaW5fUTMxLCBMVFBfc2NhbGVfUTE0
ICksIDIgKTsKKyAgICAgICAgfQorICAgICAgICBzaWxrX1NNVUxXV19sb29wX25lb24oIHNMVFAg
KyBOU1EtPnNMVFBfYnVmX2lkeCAtIGxhZyAtIExUUF9PUkRFUiAvIDIsIGludl9nYWluX1EzMSwg
c0xUUF9RMTUgKyBOU1EtPnNMVFBfYnVmX2lkeCAtIGxhZyAtIExUUF9PUkRFUiAvIDIsIGxhZyAr
IExUUF9PUkRFUiAvIDIgKTsKKyAgICB9CisKKyAgICAvKiBBZGp1c3QgZm9yIGNoYW5naW5nIGdh
aW4gKi8KKyAgICBpZiggR2FpbnNfUTE2WyBzdWJmciBdICE9IE5TUS0+cHJldl9nYWluX1ExNiAp
IHsKKyAgICAgICAgaW50MzJ4Ml90IGdhaW5fYWRqX1ExNl9zMzJ4MjsKKyAgICAgICAgZ2Fpbl9h
ZGpfUTE2ID0gc2lsa19ESVYzMl92YXJRKCBOU1EtPnByZXZfZ2Fpbl9RMTYsIEdhaW5zX1ExNlsg
c3ViZnIgXSwgMTYgKTsKKworICAgICAgICAvKiBTY2FsZSBsb25nLXRlcm0gc2hhcGluZyBzdGF0
ZSAqLworICAgICAgICBpZiggKCBnYWluX2Fkal9RMTYgPj0gLTY1NTM2ICkgJiYgKCBnYWluX2Fk
al9RMTYgPCA2NTUzNiApICkgeworICAgICAgICAgICAgZ2Fpbl9hZGpfUTE2X3MzMngyID0gdmR1
cF9uX3MzMiggc2lsa19MU0hJRlQzMiggZ2Fpbl9hZGpfUTE2LCAxNSApICk7CisgICAgICAgICAg
ICBmb3IoIGkgPSBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggLSBwc0VuY0MtPmx0cF9tZW1fbGVuZ3Ro
OyBpIDwgTlNRLT5zTFRQX3NocF9idWZfaWR4IC0gNzsgaSArPSA4ICkgeworICAgICAgICAgICAg
ICAgIHNpbGtfU01VTFdXX3NtYWxsX2JfOF9uZW9uKCBOU1EtPnNMVFBfc2hwX1ExNCArIGksIGdh
aW5fYWRqX1ExNl9zMzJ4MiApOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZm9yKCA7IGkg
PCBOU1EtPnNMVFBfc2hwX2J1Zl9pZHg7IGkrKyApIHsKKyAgICAgICAgICAgICAgICBOU1EtPnNM
VFBfc2hwX1ExNFsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgTlNRLT5zTFRQX3No
cF9RMTRbIGkgXSApOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAvKiBTY2FsZSBsb25n
LXRlcm0gcHJlZGljdGlvbiBzdGF0ZSAqLworICAgICAgICAgICAgaWYoIHNpZ25hbF90eXBlID09
IFRZUEVfVk9JQ0VEICYmIE5TUS0+cmV3aGl0ZV9mbGFnID09IDAgKSB7CisgICAgICAgICAgICAg
ICAgZm9yKCBpID0gTlNRLT5zTFRQX2J1Zl9pZHggLSBsYWcgLSBMVFBfT1JERVIgLyAyOyBpIDwg
TlNRLT5zTFRQX2J1Zl9pZHggLSBkZWNpc2lvbkRlbGF5IC0gNzsgaSArPSA4ICkgeworICAgICAg
ICAgICAgICAgICAgICBzaWxrX1NNVUxXV19zbWFsbF9iXzhfbmVvbiggc0xUUF9RMTUgKyBpLCBn
YWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
Zm9yKCA7IGkgPCBOU1EtPnNMVFBfYnVmX2lkeCAtIGRlY2lzaW9uRGVsYXk7IGkrKyApIHsKKyAg
ICAgICAgICAgICAgICAgICAgc0xUUF9RMTVbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9R
MTYsIHNMVFBfUTE1WyBpIF0gKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgIC8qIFNjYWxlIHNjYWxhciBzdGF0ZXMgKi8KKyAgICAgICAgICAgIHNpbGtf
U01VTFdXX3NtYWxsX2JfNF9uZW9uKCBwc0RlbERlYy0+TEZfQVJfUTE0LCBnYWluX2Fkal9RMTZf
czMyeDIgKTsKKyAgICAgICAgICAgIHNpbGtfU01VTFdXX3NtYWxsX2JfNF9uZW9uKCBwc0RlbERl
Yy0+RGlmZl9RMTQsICBnYWluX2Fkal9RMTZfczMyeDIgKTsKKworICAgICAgICAgICAgLyogU2Nh
bGUgc2hvcnQtdGVybSBwcmVkaWN0aW9uIGFuZCBzaGFwaW5nIHN0YXRlcyAqLworICAgICAgICAg
ICAgZm9yKCBpID0gMDsgaSA8IE5TUV9MUENfQlVGX0xFTkdUSDsgaSsrICkgeworICAgICAgICAg
ICAgICAgIHNpbGtfU01VTFdXX3NtYWxsX2JfNF9uZW9uKCBwc0RlbERlYy0+c0xQQ19RMTRbIGkg
XSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZv
ciggaSA9IDA7IGkgPCBNQVhfU0hBUEVfTFBDX09SREVSOyBpKysgKSB7CisgICAgICAgICAgICAg
ICAgc2lsa19TTVVMV1dfc21hbGxfYl80X25lb24oIHBzRGVsRGVjLT5zQVIyX1ExNFsgaSBdLCBn
YWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZm9yKCBp
ID0gMDsgaSA8IERFQ0lTSU9OX0RFTEFZOyBpKysgKSB7CisgICAgICAgICAgICAgICAgc2lsa19T
TVVMV1dfc21hbGxfYl80X25lb24oIHBzRGVsRGVjLT5QcmVkX1ExNVsgIGkgXSwgZ2Fpbl9hZGpf
UTE2X3MzMngyICk7CisgICAgICAgICAgICAgICAgc2lsa19TTVVMV1dfc21hbGxfYl80X25lb24o
IHBzRGVsRGVjLT5TaGFwZV9RMTRbIGkgXSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAg
ICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBnYWluX2Fkal9RMTZfczMyeDIg
PSB2ZHVwX25fczMyKCBzaWxrX0xTSElGVDMyKCBnYWluX2Fkal9RMTYgJiAweDAwMDBGRkZGLCAx
NSApICk7CisgICAgICAgICAgICBnYWluX2Fkal9RMTZfczMyeDIgPSB2c2V0X2xhbmVfczMyKCBn
YWluX2Fkal9RMTYgPj4gMTYsIGdhaW5fYWRqX1ExNl9zMzJ4MiwgMSApOworICAgICAgICAgICAg
Zm9yKCBpID0gTlNRLT5zTFRQX3NocF9idWZfaWR4IC0gcHNFbmNDLT5sdHBfbWVtX2xlbmd0aDsg
aSA8IE5TUS0+c0xUUF9zaHBfYnVmX2lkeCAtIDc7IGkgKz0gOCApIHsKKyAgICAgICAgICAgICAg
ICBzaWxrX1NNVUxXV184X25lb24oIE5TUS0+c0xUUF9zaHBfUTE0ICsgaSwgZ2Fpbl9hZGpfUTE2
X3MzMngyICk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBmb3IoIDsgaSA8IE5TUS0+c0xU
UF9zaHBfYnVmX2lkeDsgaSsrICkgeworICAgICAgICAgICAgICAgIE5TUS0+c0xUUF9zaHBfUTE0
WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9hZGpfUTE2LCBOU1EtPnNMVFBfc2hwX1ExNFsgaSBd
ICk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC8qIFNjYWxlIGxvbmctdGVybSBwcmVk
aWN0aW9uIHN0YXRlICovCisgICAgICAgICAgICBpZiggc2lnbmFsX3R5cGUgPT0gVFlQRV9WT0lD
RUQgJiYgTlNRLT5yZXdoaXRlX2ZsYWcgPT0gMCApIHsKKyAgICAgICAgICAgICAgICBmb3IoIGkg
PSBOU1EtPnNMVFBfYnVmX2lkeCAtIGxhZyAtIExUUF9PUkRFUiAvIDI7IGkgPCBOU1EtPnNMVFBf
YnVmX2lkeCAtIGRlY2lzaW9uRGVsYXkgLSA3OyBpICs9IDggKSB7CisgICAgICAgICAgICAgICAg
ICAgIHNpbGtfU01VTFdXXzhfbmVvbiggc0xUUF9RMTUgKyBpLCBnYWluX2Fkal9RMTZfczMyeDIg
KTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZm9yKCA7IGkgPCBOU1EtPnNM
VFBfYnVmX2lkeCAtIGRlY2lzaW9uRGVsYXk7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAg
c0xUUF9RMTVbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIHNMVFBfUTE1WyBpIF0g
KTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC8qIFNj
YWxlIHNjYWxhciBzdGF0ZXMgKi8KKyAgICAgICAgICAgIHNpbGtfU01VTFdXXzRfbmVvbiggcHNE
ZWxEZWMtPkxGX0FSX1ExNCwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICBzaWxr
X1NNVUxXV180X25lb24oIHBzRGVsRGVjLT5EaWZmX1ExNCwgIGdhaW5fYWRqX1ExNl9zMzJ4MiAp
OworCisgICAgICAgICAgICAvKiBTY2FsZSBzaG9ydC10ZXJtIHByZWRpY3Rpb24gYW5kIHNoYXBp
bmcgc3RhdGVzICovCisgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTlNRX0xQQ19CVUZfTEVO
R1RIOyBpKysgKSB7CisgICAgICAgICAgICAgICAgc2lsa19TTVVMV1dfNF9uZW9uKCBwc0RlbERl
Yy0+c0xQQ19RMTRbIGkgXSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBNQVhfU0hBUEVfTFBDX09SREVSOyBpKysgKSB7
CisgICAgICAgICAgICAgICAgc2lsa19TTVVMV1dfNF9uZW9uKCBwc0RlbERlYy0+c0FSMl9RMTRb
IGkgXSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
IGZvciggaSA9IDA7IGkgPCBERUNJU0lPTl9ERUxBWTsgaSsrICkgeworICAgICAgICAgICAgICAg
IHNpbGtfU01VTFdXXzRfbmVvbiggcHNEZWxEZWMtPlByZWRfUTE1WyAgaSBdLCBnYWluX2Fkal9R
MTZfczMyeDIgKTsKKyAgICAgICAgICAgICAgICBzaWxrX1NNVUxXV180X25lb24oIHBzRGVsRGVj
LT5TaGFwZV9RMTRbIGkgXSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICB9Cisg
ICAgICAgIH0KKworICAgICAgICAvKiBTYXZlIGludmVyc2UgZ2FpbiAqLworICAgICAgICBOU1Et
PnByZXZfZ2Fpbl9RMTYgPSBHYWluc19RMTZbIHN1YmZyIF07CisgICAgfQorfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2FybS9OU1FfbmVvbi5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfbmVvbi5oCmluZGV4IDc3Yzk0NmFm
ODU0NDc4NmUzMTEzNDU3MWE4ZTU1NzRmOWUwOThjOGMuLmIzMWQ5NDQyZDY5OTFjNDlhZDUyMDJm
MjlkOWQwMmI4ZDExMzk1MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vTlNRX25lb24uaAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvYXJtL05TUV9uZW9uLmgKQEAgLTI4LDMwICsyOCwzMSBAQCBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KICNkZWZpbmUgU0lMS19OU1FfTkVPTl9ICiAKICNpbmNsdWRlICJjcHVfc3VwcG9y
dC5oIgorI2luY2x1ZGUgIlNpZ1Byb2NfRklYLmgiCiAKICN1bmRlZiBzaWxrX3Nob3J0X3ByZWRp
Y3Rpb25fY3JlYXRlX2FyY2hfY29lZgogLyogRm9yIHZlY3Rvcml6ZWQgY2FsYywgcmV2ZXJzZSBh
X1ExMiBjb2VmcywgY29udmVydCB0byAzMi1iaXQsIGFuZCBzaGlmdCBmb3IgdnFkbXVsaHFfczMy
LiAqLwogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19zaG9ydF9wcmVkaWN0aW9uX2NyZWF0
ZV9hcmNoX2NvZWZfbmVvbihvcHVzX2ludDMyICpvdXQsIGNvbnN0IG9wdXNfaW50MTYgKmluLCBv
cHVzX2ludCBvcmRlcikKIHsKLSAgICBvdXRbMTVdID0gaW5bMF0gPDwgMTU7Ci0gICAgb3V0WzE0
XSA9IGluWzFdIDw8IDE1OwotICAgIG91dFsxM10gPSBpblsyXSA8PCAxNTsKLSAgICBvdXRbMTJd
ID0gaW5bM10gPDwgMTU7Ci0gICAgb3V0WzExXSA9IGluWzRdIDw8IDE1OwotICAgIG91dFsxMF0g
PSBpbls1XSA8PCAxNTsKLSAgICBvdXRbOV0gID0gaW5bNl0gPDwgMTU7Ci0gICAgb3V0WzhdICA9
IGluWzddIDw8IDE1OwotICAgIG91dFs3XSAgPSBpbls4XSA8PCAxNTsKLSAgICBvdXRbNl0gID0g
aW5bOV0gPDwgMTU7CisgICAgb3V0WzE1XSA9IHNpbGtfTFNISUZUMzIoaW5bMF0sIDE1KTsKKyAg
ICBvdXRbMTRdID0gc2lsa19MU0hJRlQzMihpblsxXSwgMTUpOworICAgIG91dFsxM10gPSBzaWxr
X0xTSElGVDMyKGluWzJdLCAxNSk7CisgICAgb3V0WzEyXSA9IHNpbGtfTFNISUZUMzIoaW5bM10s
IDE1KTsKKyAgICBvdXRbMTFdID0gc2lsa19MU0hJRlQzMihpbls0XSwgMTUpOworICAgIG91dFsx
MF0gPSBzaWxrX0xTSElGVDMyKGluWzVdLCAxNSk7CisgICAgb3V0WzldICA9IHNpbGtfTFNISUZU
MzIoaW5bNl0sIDE1KTsKKyAgICBvdXRbOF0gID0gc2lsa19MU0hJRlQzMihpbls3XSwgMTUpOwor
ICAgIG91dFs3XSAgPSBzaWxrX0xTSElGVDMyKGluWzhdLCAxNSk7CisgICAgb3V0WzZdICA9IHNp
bGtfTFNISUZUMzIoaW5bOV0sIDE1KTsKIAogICAgIGlmIChvcmRlciA9PSAxNikKICAgICB7Ci0g
ICAgICAgIG91dFs1XSA9IGluWzEwXSA8PCAxNTsKLSAgICAgICAgb3V0WzRdID0gaW5bMTFdIDw8
IDE1OwotICAgICAgICBvdXRbM10gPSBpblsxMl0gPDwgMTU7Ci0gICAgICAgIG91dFsyXSA9IGlu
WzEzXSA8PCAxNTsKLSAgICAgICAgb3V0WzFdID0gaW5bMTRdIDw8IDE1OwotICAgICAgICBvdXRb
MF0gPSBpblsxNV0gPDwgMTU7CisgICAgICAgIG91dFs1XSA9IHNpbGtfTFNISUZUMzIoaW5bMTBd
LCAxNSk7CisgICAgICAgIG91dFs0XSA9IHNpbGtfTFNISUZUMzIoaW5bMTFdLCAxNSk7CisgICAg
ICAgIG91dFszXSA9IHNpbGtfTFNISUZUMzIoaW5bMTJdLCAxNSk7CisgICAgICAgIG91dFsyXSA9
IHNpbGtfTFNISUZUMzIoaW5bMTNdLCAxNSk7CisgICAgICAgIG91dFsxXSA9IHNpbGtfTFNISUZU
MzIoaW5bMTRdLCAxNSk7CisgICAgICAgIG91dFswXSA9IHNpbGtfTFNISUZUMzIoaW5bMTVdLCAx
NSk7CiAgICAgfQogICAgIGVsc2UKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL2FybV9zaWxr
X21hcC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2FybS9hcm1fc2lsa19tYXAuYwppbmRleCA5YmQ4NmE3YjIxNTIyNDlmYTg1
MGU5ZWVjMGNkNmE2Y2EyNmNlNzE1Li4wYjliZmVjMmNhOTc0NzY4YzU5ZTA5ZjQ0OGFjYTgxY2Vi
MWQ4ZjYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL2FybV9zaWxrX21hcC5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0v
YXJtX3NpbGtfbWFwLmMKQEAgLTI4LDEzICsyOCw2MiBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICMgaW5jbHVkZSAiY29uZmlnLmgiCiAjZW5kaWYKIAorI2luY2x1ZGUgIm1haW5fRklY
LmgiCiAjaW5jbHVkZSAiTlNRLmgiCisjaW5jbHVkZSAiU2lnUHJvY19GSVguaCIKIAogI2lmIGRl
ZmluZWQoT1BVU19IQVZFX1JUQ0QpCiAKICMgaWYgKGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVf
TkVPTl9JTlRSKSAmJiBcCiAgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpKQog
Cit2b2lkICgqY29uc3QgU0lMS19CSVFVQURfQUxUX1NUUklERTJfSU1QTFtPUFVTX0FSQ0hNQVNL
ICsgMV0pKAorICAgICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmluLCAgICAgICAg
ICAgICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAg
ICAqQl9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIE1BIGNvZWZmaWNpZW50cyBbM10gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19p
bnQzMiAgICAgICAgICAgICpBX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgQVIgY29lZmZpY2ll
bnRzIFsyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAg
ICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAgICAvKiBJL08g
ICBTdGF0ZSB2ZWN0b3IgWzRdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqb3V0LCAgICAgICAg
ICAgICAgIC8qIE8gICAgIG91dHB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAg
IGxlbiAgICAgICAgICAgICAgICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVu
KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworKSA9IHsKKyAgICAgIHNpbGtfYmlx
dWFkX2FsdF9zdHJpZGUyX2MsICAgIC8qIEFSTXY0ICovCisgICAgICBzaWxrX2JpcXVhZF9hbHRf
c3RyaWRlMl9jLCAgICAvKiBFRFNQICovCisgICAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9j
LCAgICAvKiBNZWRpYSAqLworICAgICAgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTJfbmVvbiwgLyog
TmVvbiAqLworfTsKKworb3B1c19pbnQzMiAoKmNvbnN0IFNJTEtfTFBDX0lOVkVSU0VfUFJFRF9H
QUlOX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSggLyogTyAgIFJldHVybnMgaW52ZXJzZSBwcmVk
aWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAgICAgICAqLworICAgICAgICBjb25z
dCBvcHVzX2ludDE2ICAgICAgICAgICAgKkFfUTEyLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRzLCBRMTIgW29yZGVyXSAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3Jk
ZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgIFByZWRpY3Rpb24gb3JkZXIg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworKSA9IHsKKyAg
ICAgIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2MsICAgIC8qIEFSTXY0ICovCisgICAgICBz
aWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9jLCAgICAvKiBFRFNQICovCisgICAgICBzaWxrX0xQ
Q19pbnZlcnNlX3ByZWRfZ2Fpbl9jLCAgICAvKiBNZWRpYSAqLworICAgICAgc2lsa19MUENfaW52
ZXJzZV9wcmVkX2dhaW5fbmVvbiwgLyogTmVvbiAqLworfTsKKwordm9pZCAgKCpjb25zdCBTSUxL
X05TUV9ERUxfREVDX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKKyAgICAgICAgY29uc3Qgc2ls
a19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCisgICAgICAg
IHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgICAgICBTaWRlSW5mb0luZGljZXMgICAgICAgICAgICAgKnBzSW5kaWNlcywgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFF1YW50aXphdGlvbiBJbmRpY2VzICAg
ICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIHgxNltdLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAg
ICBwdWxzZXNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUXVh
bnRpemVkIHB1bHNlIHNpZ25hbCAgICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludDE2
ICAgICAgICAgICAgUHJlZENvZWZfUTEyWyAyICogTUFYX0xQQ19PUkRFUiBdLCAgICAgICAgICAv
KiBJICAgIFNob3J0IHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAgKi8KKyAgICAgICAgY29uc3Qg
b3B1c19pbnQxNiAgICAgICAgICAgIExUUENvZWZfUTE0WyBMVFBfT1JERVIgKiBNQVhfTkJfU1VC
RlIgXSwgICAgLyogSSAgICBMb25nIHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAgICovCisgICAg
ICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBBUl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1B
WF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSBOb2lzZSBzaGFwaW5nIGNvZWZzICAgICAgICAgICAg
ICAqLworICAgICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgSGFybVNoYXBlR2Fpbl9R
MTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAvKiBJICAgIExvbmcgdGVybSBzaGFwaW5nIGNv
ZWZzICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIFRpbHRf
UTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAgLyogSSAgICBTcGVjdHJhbCB0
aWx0ICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAg
ICAgICBMRl9zaHBfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgIC8qIEkgICAg
TG93IGZyZXF1ZW5jeSBzaGFwaW5nIGNvZWZzICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2lu
dDMyICAgICAgICAgICAgR2FpbnNfUTE2WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAg
ICAvKiBJICAgIFF1YW50aXphdGlvbiBzdGVwIHNpemVzICAgICAgICAgKi8KKyAgICAgICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgIHBpdGNoTFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBQaXRjaCBsYWdzICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBMYW1iZGFfUTEwLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUmF0ZS9kaXN0b3J0aW9uIHRyYWRlb2ZmICAg
ICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgTFRQX3NjYWxlX1Ex
NCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExUUCBzdGF0ZSBzY2FsaW5n
ICAgICAgICAgICAgICAgKi8KKykgPSB7CisgICAgICBzaWxrX05TUV9kZWxfZGVjX2MsICAgIC8q
IEFSTXY0ICovCisgICAgICBzaWxrX05TUV9kZWxfZGVjX2MsICAgIC8qIEVEU1AgKi8KKyAgICAg
IHNpbGtfTlNRX2RlbF9kZWNfYywgICAgLyogTWVkaWEgKi8KKyAgICAgIHNpbGtfTlNRX2RlbF9k
ZWNfbmVvbiwgLyogTmVvbiAqLworfTsKKwogLypUaGVyZSBpcyBubyB0YWJsZSBmb3Igc2lsa19u
b2lzZV9zaGFwZV9xdWFudGl6ZXJfc2hvcnRfcHJlZGljdGlvbiBiZWNhdXNlIHRoZQogICAgTkVP
TiB2ZXJzaW9uIHRha2VzIGRpZmZlcmVudCBwYXJhbWV0ZXJzIHRoYW4gdGhlIEMgdmVyc2lvbi4K
ICAgSW5zdGVhZCBSVENEIGlzIGRvbmUgdmlhIGlmIHN0YXRlbWVudHMgYXQgdGhlIGNhbGwgc2l0
ZXMuCkBAIC01Miw0ICsxMDEsMjMgQEAgb3B1c19pbnQzMgogCiAjIGVuZGlmCiAKKyMgaWYgZGVm
aW5lZChGSVhFRF9QT0lOVCkgJiYgXAorIGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9J
TlRSKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikKKwordm9pZCAoKmNv
bnN0IFNJTEtfV0FSUEVEX0FVVE9DT1JSRUxBVElPTl9GSVhfSU1QTFtPUFVTX0FSQ0hNQVNLICsg
MV0pKAorICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgKmNvcnIsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmVzdWx0IFtvcmRlciArIDFdICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgICAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAqc2NhbGUsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogTyAgICBTY2FsaW5nIG9mIHRoZSBjb3JyZWxhdGlvbiB2ZWN0
b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25z
dCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICppbnB1dCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIElucHV0IGRhdGEgdG8gY29ycmVsYXRlICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgd2FycGluZ19RMTYsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgV2FycGluZyBjb2VmZmljaWVudCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICBsZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBMZW5ndGggb2YgaW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENv
cnJlbGF0aW9uIG9yZGVyIChldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworKSA9IHsKKyAgICAgIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxh
dGlvbl9GSVhfYywgICAgLyogQVJNdjQgKi8KKyAgICAgIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxh
dGlvbl9GSVhfYywgICAgLyogRURTUCAqLworICAgICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0
aW9uX0ZJWF9jLCAgICAvKiBNZWRpYSAqLworICAgICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0
aW9uX0ZJWF9uZW9uLCAvKiBOZW9uICovCit9OworCisjIGVuZGlmCisKICNlbmRpZiAvKiBPUFVT
X0hBVkVfUlRDRCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9iaXF1YWRfYWx0X2FybS5oIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2FybS9iaXF1YWRfYWx0X2FybS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY2ZWE5ZjQzZGQwYjM3YjJkNjMzMDg3
ZjFhMjVlOTk4NmZjZTJkNmUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL2JpcXVhZF9hbHRf
YXJtLmgKQEAgLTAsMCArMSw2OCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitDb3B5cmlnaHQgKGMpIDIw
MTcgR29vZ2xlIEluYy4KK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0OgorLSBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsCit0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKy0gTmVpdGhlciB0aGUg
bmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKK25h
bWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlCitwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yIHdyaXR0ZW4KK3Blcm1pc3Npb24uCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKK0FORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKK0lNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKK0xJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IKK0NPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GCitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCitDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQorQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKiovCisKKyNpZm5kZWYgU0lMS19CSVFVQURfQUxUX0FSTV9ICisjIGRlZmlu
ZSBTSUxLX0JJUVVBRF9BTFRfQVJNX0gKKworIyBpbmNsdWRlICJjZWx0L2FybS9hcm1jcHUuaCIK
KworIyBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikKK3ZvaWQgc2lsa19i
aXF1YWRfYWx0X3N0cmlkZTJfbmVvbigKKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAg
KmluLCAgICAgICAgICAgICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgICAgICAgICpCX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgTUEgY29lZmZpY2llbnRzIFsz
XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIEFSIGNvZWZm
aWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAgICAvKiBJL08g
ICBTdGF0ZSB2ZWN0b3IgWzRdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICpvdXQsICAgICAgICAgICAg
ICAgLyogTyAgICAgb3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBsZW4gICAg
ICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3QgYmUgZXZlbikgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyk7CisKKyMgIGlmICFkZWZpbmVkKE9QVVNfSEFW
RV9SVENEKSAmJiBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTikKKyMgICBkZWZpbmUgT1ZF
UlJJREVfc2lsa19iaXF1YWRfYWx0X3N0cmlkZTIgICAgICAgICAgICAgICAgICAgKDEpCisjICAg
ZGVmaW5lIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyKGluLCBCX1EyOCwgQV9RMjgsIFMsIG91dCwg
bGVuLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBQUkVTVU1FX05FT04oc2lsa19iaXF1YWRfYWx0X3N0
cmlkZTIpKGluLCBCX1EyOCwgQV9RMjgsIFMsIG91dCwgbGVuKSkKKyMgIGVuZGlmCisjIGVuZGlm
CisKKyMgaWYgIWRlZmluZWQoT1ZFUlJJREVfc2lsa19iaXF1YWRfYWx0X3N0cmlkZTIpCisvKklz
IHJ1bi10aW1lIENQVSBkZXRlY3Rpb24gZW5hYmxlZCBvbiB0aGlzIHBsYXRmb3JtPyovCisjICBp
ZiBkZWZpbmVkKE9QVVNfSEFWRV9SVENEKSAmJiAoZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9O
RU9OX0lOVFIpICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKSkKK2V4dGVy
biB2b2lkICgqY29uc3QgU0lMS19CSVFVQURfQUxUX1NUUklERTJfSU1QTFtPUFVTX0FSQ0hNQVNL
KzFdKSgKKyAgICAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICppbiwgICAgICAgICAg
ICAgICAgLyogSSAgICAgaW5wdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAg
KkJfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBNQSBjb2VmZmljaWVudHMgWzNdICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50
MzIgICAgICAgICAgICAqQV9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIEFSIGNvZWZmaWNpZW50
cyBbMl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAg
b3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpTLCAgICAgICAgICAgICAgICAgLyogSS9PICAg
U3RhdGUgdmVjdG9yIFs0XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgICAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKm91dCwgICAgICAgICAg
ICAgICAvKiBPICAgICBvdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBs
ZW4gICAgICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3QgYmUgZXZlbikg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICApOworIyAgIGRlZmluZSBPVkVS
UklERV9zaWxrX2JpcXVhZF9hbHRfc3RyaWRlMiAgICAgICAgICAgICAgICAgICgxKQorIyAgIGRl
ZmluZSBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMihpbiwgQl9RMjgsIEFfUTI4LCBTLCBvdXQsIGxl
biwgYXJjaCkgKCgqU0lMS19CSVFVQURfQUxUX1NUUklERTJfSU1QTFsoYXJjaCkmT1BVU19BUkNI
TUFTS10pKGluLCBCX1EyOCwgQV9RMjgsIFMsIG91dCwgbGVuKSkKKyMgIGVsaWYgZGVmaW5lZChP
UFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikKKyMgICBkZWZpbmUgT1ZFUlJJREVfc2lsa19iaXF1
YWRfYWx0X3N0cmlkZTIgICAgICAgICAgICAgICAgICAoMSkKKyMgICBkZWZpbmUgc2lsa19iaXF1
YWRfYWx0X3N0cmlkZTIoaW4sIEJfUTI4LCBBX1EyOCwgUywgb3V0LCBsZW4sIGFyY2gpICgodm9p
ZCkoYXJjaCksIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyX25lb24oaW4sIEJfUTI4LCBBX1EyOCwg
Uywgb3V0LCBsZW4pKQorIyAgZW5kaWYKKyMgZW5kaWYKKworI2VuZGlmIC8qIGVuZCBTSUxLX0JJ
UVVBRF9BTFRfQVJNX0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vYmlxdWFkX2FsdF9uZW9uX2lu
dHIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9hcm0vYmlxdWFkX2FsdF9uZW9uX2ludHIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45NzE1NzMz
MTg1OGNhOGJmNjlhYzUyOTNjYjY4ZTIzY2Q2ZDRmMzNiCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2FybS9iaXF1YWRfYWx0X25lb25faW50ci5jCkBAIC0wLDAgKzEsMTU2IEBACisvKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioKK0NvcHlyaWdodCAoYykgMjAxNyBHb29nbGUgSW5jLgorUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCitkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3Ig
SUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkg
YmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlz
IHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVybWlzc2lvbi4KK1RI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05U
UklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKK0FS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENP
TlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2lmZGVmIEhBVkVfQ09O
RklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVkZSA8YXJtX25lb24u
aD4KKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorIyBpbmNsdWRlIDxzdHJpbmcuaD4KKyMgaW5jbHVk
ZSAic3RhY2tfYWxsb2MuaCIKKyNlbmRpZgorI2luY2x1ZGUgIlNpZ1Byb2NfRklYLmgiCisKK3N0
YXRpYyBpbmxpbmUgdm9pZCBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9rZXJuZWwoIGNvbnN0IGlu
dDMyeDRfdCBBX0xfczMyeDQsIGNvbnN0IGludDMyeDRfdCBBX1VfczMyeDQsIGNvbnN0IGludDMy
eDRfdCBCX1EyOF9zMzJ4NCwgY29uc3QgaW50MzJ4Ml90IHRfczMyeDIsIGNvbnN0IGludDMyeDRf
dCBpbl9zMzJ4NCwgaW50MzJ4NF90ICpTX3MzMng0LCBpbnQzMngyX3QgKm91dDMyX1ExNF9zMzJ4
MiApCit7CisgICAgaW50MzJ4NF90IHRfczMyeDQsIG91dDMyX1ExNF9zMzJ4NDsKKworICAgICpv
dXQzMl9RMTRfczMyeDIgPSB2YWRkX3MzMiggdmdldF9sb3dfczMyKCAqU19zMzJ4NCApLCB0X3Mz
MngyICk7ICAgICAgICAgICAgICAvKiBzaWxrX1NNTEFXQiggU3swLDF9LCBCX1EyOFsgMCBdLCBp
bnswLDF9ICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgKlNf
czMyeDQgICAgICAgICA9IHZjb21iaW5lX3MzMiggdmdldF9oaWdoX3MzMiggKlNfczMyeDQgKSwg
dmR1cF9uX3MzMiggMCApICk7IC8qIFN7MCwxfSA9IFN7MiwzfTsgU3syLDN9ID0gMDsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAqb3V0
MzJfUTE0X3MzMngyID0gdnNobF9uX3MzMiggKm91dDMyX1ExNF9zMzJ4MiwgMiApOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogb3V0MzJfUTE0X3swLDF9ID0gc2lsa19MU0hJRlQoIHNpbGtf
U01MQVdCKCBTezAsMX0sIEJfUTI4WyAwIF0sIGluezAsMX0gKSwgMiApOyAqLworICAgIG91dDMy
X1ExNF9zMzJ4NCAgPSB2Y29tYmluZV9zMzIoICpvdXQzMl9RMTRfczMyeDIsICpvdXQzMl9RMTRf
czMyeDIgKTsgICAgICAgICAvKiBvdXQzMl9RMTRfezAsMSwwLDF9ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgdF9zMzJ4
NCAgICAgICAgICA9IHZxZG11bGhxX3MzMiggb3V0MzJfUTE0X3MzMng0LCBBX0xfczMyeDQgKTsg
ICAgICAgICAgICAgICAgIC8qIHNpbGtfU01VTFdCKCBvdXQzMl9RMTRfezAsMSwwLDF9LCBBezAs
MCwxLDF9X0xfUTI4ICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAqU19zMzJ4
NCAgICAgICAgID0gdnJzcmFxX25fczMyKCAqU19zMzJ4NCwgdF9zMzJ4NCwgMTQgKTsgICAgICAg
ICAgICAgICAgICAgICAgLyogU3swLDF9ID0gU3syLDN9ICsgc2lsa19SU0hJRlRfUk9VTkQoKTsg
IFN7MiwzfSA9IHNpbGtfUlNISUZUX1JPVU5EKCk7ICAgICAgICAgICAqLworICAgIHRfczMyeDQg
ICAgICAgICAgPSB2cWRtdWxocV9zMzIoIG91dDMyX1ExNF9zMzJ4NCwgQV9VX3MzMng0ICk7ICAg
ICAgICAgICAgICAgICAvKiBzaWxrX1NNVUxXQiggb3V0MzJfUTE0X3swLDEsMCwxfSwgQXswLDAs
MSwxfV9VX1EyOCApICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgKlNfczMyeDQg
ICAgICAgICA9IHZhZGRxX3MzMiggKlNfczMyeDQsIHRfczMyeDQgKTsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIFMwID0gc2lsa19TTUxBV0IoIFN7MCwxLDIsM30sIG91dDMyX1ExNF97
MCwxLDAsMX0sIEF7MCwwLDEsMX1fVV9RMjggKTsgICAgICAgICAgKi8KKyAgICB0X3MzMng0ICAg
ICAgICAgID0gdnFkbXVsaHFfczMyKCBpbl9zMzJ4NCwgQl9RMjhfczMyeDQgKTsgICAgICAgICAg
ICAgICAgICAgICAgLyogc2lsa19TTVVMV0IoIEJfUTI4WyB7MSwxLDIsMn0gXSwgaW57MCwxLDAs
MX0gKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICpTX3MzMng0ICAg
ICAgICAgPSB2YWRkcV9zMzIoICpTX3MzMng0LCB0X3MzMng0ICk7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBTMCA9IHNpbGtfU01MQVdCKCBTMCwgQl9RMjhbIHsxLDEsMiwyfSBdLCBp
bnswLDEsMCwxfSApOyAgICAgICAgICAgICAgICAgICAgICAgICovCit9CisKK3ZvaWQgc2lsa19i
aXF1YWRfYWx0X3N0cmlkZTJfbmVvbigKKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAg
KmluLCAgICAgICAgICAgICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgICAgICAgICpCX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgTUEgY29lZmZpY2llbnRzIFsz
XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIEFSIGNvZWZm
aWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAgICAvKiBJL08g
ICBTdGF0ZSB2ZWN0b3IgWzRdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICpvdXQsICAgICAgICAgICAg
ICAgLyogTyAgICAgb3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBsZW4gICAg
ICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3QgYmUgZXZlbikgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyAgICAvKiBESVJFQ1QgRk9STSBJSSBU
UkFOU1BPU0VEICh1c2VzIDIgZWxlbWVudCBzdGF0ZSB2ZWN0b3IpICovCisgICAgb3B1c19pbnQg
ICAgICAgIGsgICAgICAgICAgICA9IDA7CisgICAgY29uc3QgaW50MzJ4Ml90IG9mZnNldF9zMzJ4
MiA9IHZkdXBfbl9zMzIoICgxPDwxNCkgLSAxICk7CisgICAgY29uc3QgaW50MzJ4NF90IG9mZnNl
dF9zMzJ4NCA9IHZjb21iaW5lX3MzMiggb2Zmc2V0X3MzMngyLCBvZmZzZXRfczMyeDIgKTsKKyAg
ICBpbnQxNng0X3QgICAgICAgaW5fczE2eDQgID0gdmR1cF9uX3MxNiggMCApOworICAgIGludDE2
eDRfdCAgICAgICBvdXRfczE2eDQ7CisgICAgaW50MzJ4Ml90ICAgICAgIEFfUTI4X3MzMngyLCBB
X0xfczMyeDIsIEFfVV9zMzJ4MiwgQl9RMjhfczMyeDIsIHRfczMyeDI7CisgICAgaW50MzJ4NF90
ICAgICAgIEFfTF9zMzJ4NCwgQV9VX3MzMng0LCBCX1EyOF9zMzJ4NCwgU19zMzJ4NCwgb3V0MzJf
UTE0X3MzMng0OworICAgIGludDMyeDJ4Ml90ICAgICB0MF9zMzJ4MngyLCB0MV9zMzJ4MngyLCB0
Ml9zMzJ4MngyLCBTX3MzMngyeDI7CisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIG9wdXNf
aW50MzIgU19jWyA0IF07CisgICAgVkFSREVDTCggb3B1c19pbnQxNiwgb3V0X2MgKTsKKyAgICBT
QVZFX1NUQUNLOworICAgIEFMTE9DKCBvdXRfYywgMiAqIGxlbiwgb3B1c19pbnQxNiApOworCisg
ICAgc2lsa19tZW1jcHkoICZTX2MsIFMsIHNpemVvZiggU19jICkgKTsKKyAgICBzaWxrX2JpcXVh
ZF9hbHRfc3RyaWRlMl9jKCBpbiwgQl9RMjgsIEFfUTI4LCBTX2MsIG91dF9jLCBsZW4gKTsKKyNl
bmRpZgorCisgICAgLyogTmVnYXRlIEFfUTI4IHZhbHVlcyBhbmQgc3BsaXQgaW4gdHdvIHBhcnRz
ICovCisgICAgQV9RMjhfczMyeDIgPSB2bGQxX3MzMiggQV9RMjggKTsKKyAgICBBX1EyOF9zMzJ4
MiA9IHZuZWdfczMyKCBBX1EyOF9zMzJ4MiApOworICAgIEFfTF9zMzJ4MiAgID0gdnNobF9uX3Mz
MiggQV9RMjhfczMyeDIsIDE4ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiAoIC1BX1EyOFtdICYgMHgwMDAwM0ZGRiApIDw8IDE4ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IEFfTF9zMzJ4MiAgID0gdnJlaW50ZXJwcmV0X3MzMl91MzIoIHZzaHJfbl91MzIoIHZyZWludGVy
cHJldF91MzJfczMyKCBBX0xfczMyeDIgKSwgMyApICk7ICAgICAgICAgICAvKiAoIC1BX1EyOFtd
ICYgMHgwMDAwM0ZGRiApIDw8IDE1ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIEFfVV9zMzJ4MiAgID0gdnNocl9uX3MzMiggQV9RMjhf
czMyeDIsIDE0ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBzaWxrX1JTSElGVCggLUFfUTI4W10sIDE0ICkgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIEFfVV9zMzJ4
MiAgID0gdnNobF9uX3MzMiggQV9VX3MzMngyLCAxNiApOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzaWxrX1JTSElGVCggLUFfUTI4
W10sIDE0ICkgPDwgMTYgKENsaXAgdHdvIGxlYWRpbmcgYml0cyB0byBjb25mb3JtIHRvIEMgZnVu
Y3Rpb24uKSAqLworICAgIEFfVV9zMzJ4MiAgID0gdnNocl9uX3MzMiggQV9VX3MzMngyLCAxICk7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBzaWxrX1JTSElGVCggLUFfUTI4W10sIDE0ICkgPDwgMTUgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworCisgICAgQl9RMjhfczMyeDIgID0g
dmxkMV9zMzIoIEJfUTI4ICk7CisgICAgdF9zMzJ4MiAgICAgID0gdmxkMV9zMzIoIEJfUTI4ICsg
MSApOworICAgIHQwX3MzMngyeDIgICA9IHZ6aXBfczMyKCBBX0xfczMyeDIsIEFfTF9zMzJ4MiAp
OworICAgIHQxX3MzMngyeDIgICA9IHZ6aXBfczMyKCBBX1VfczMyeDIsIEFfVV9zMzJ4MiApOwor
ICAgIHQyX3MzMngyeDIgICA9IHZ6aXBfczMyKCB0X3MzMngyLCB0X3MzMngyICk7CisgICAgQV9M
X3MzMng0ICAgID0gdmNvbWJpbmVfczMyKCB0MF9zMzJ4MngyLnZhbFsgMCBdLCB0MF9zMzJ4Mngy
LnZhbFsgMSBdICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEF7MCwwLDEsMX1fTF9R
MjggICAgICAgICAgKi8KKyAgICBBX1VfczMyeDQgICAgPSB2Y29tYmluZV9zMzIoIHQxX3MzMngy
eDIudmFsWyAwIF0sIHQxX3MzMngyeDIudmFsWyAxIF0gKTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogQXswLDAsMSwxfV9VX1EyOCAgICAgICAgICAqLworICAgIEJfUTI4X3MzMng0ICA9
IHZjb21iaW5lX3MzMiggdDJfczMyeDJ4Mi52YWxbIDAgXSwgdDJfczMyeDJ4Mi52YWxbIDEgXSAp
OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBCX1EyOFsgezEsMSwyLDJ9IF0gICAgICAg
ICovCisgICAgU19zMzJ4NCAgICAgID0gdmxkMXFfczMyKCBTICk7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFMw
ID0gU1sgMCBdOyBTMyA9IFNbIDMgXTsgKi8KKyAgICBTX3MzMngyeDIgICAgPSB2dHJuX3MzMigg
dmdldF9sb3dfczMyKCBTX3MzMng0ICksIHZnZXRfaGlnaF9zMzIoIFNfczMyeDQgKSApOyAgICAg
ICAgICAgICAgICAgICAgICAgLyogUzIgPSBTWyAxIF07IFMxID0gU1sgMiBdOyAqLworICAgIFNf
czMyeDQgICAgICA9IHZjb21iaW5lX3MzMiggU19zMzJ4MngyLnZhbFsgMCBdLCBTX3MzMngyeDIu
dmFsWyAxIF0gKTsKKworICAgIGZvciggOyBrIDwgbGVuIC0gMTsgayArPSAyICkgeworICAgICAg
ICBpbnQzMng0X3QgaW5fczMyeDRbIDIgXSwgdF9zMzJ4NDsKKyAgICAgICAgaW50MzJ4Ml90IG91
dDMyX1ExNF9zMzJ4MlsgMiBdOworCisgICAgICAgIC8qIFNbIDIgKiBpICsgMCBdLCBTWyAyICog
aSArIDEgXSwgU1sgMiAqIGkgKyAyIF0sIFNbIDIgKiBpICsgMyBdOiBRMTIgKi8KKyAgICAgICAg
aW5fczE2eDQgICAgICA9IHZsZDFfczE2KCAmaW5bIDIgKiBrIF0gKTsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogaW57MCwxLDIsM30gPSBp
blsgMiAqIGsgKyB7MCwxLDIsM30gXTsgKi8KKyAgICAgICAgaW5fczMyeDRbIDAgXSA9IHZzaGxs
X25fczE2KCBpbl9zMTZ4NCwgMTUgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogaW57MCwxLDIsM30gPDwgMTUgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICAgICAgdF9zMzJ4NCAgICAgICA9IHZxZG11bGhxX2xhbmVfczMyKCBpbl9zMzJ4
NFsgMCBdLCBCX1EyOF9zMzJ4MiwgMCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
c2lsa19TTVVMV0IoIEJfUTI4WyAwIF0sIGluezAsMSwyLDN9ICkgKi8KKyAgICAgICAgaW5fczMy
eDRbIDEgXSA9IHZjb21iaW5lX3MzMiggdmdldF9oaWdoX3MzMiggaW5fczMyeDRbIDAgXSApLCB2
Z2V0X2hpZ2hfczMyKCBpbl9zMzJ4NFsgMCBdICkgKTsgLyogaW57MiwzLDIsM30gPDwgMTUgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgaW5fczMyeDRbIDAgXSA9IHZjb21iaW5lX3Mz
MiggdmdldF9sb3dfczMyICggaW5fczMyeDRbIDAgXSApLCB2Z2V0X2xvd19zMzIgKCBpbl9zMzJ4
NFsgMCBdICkgKTsgLyogaW57MCwxLDAsMX0gPDwgMTUgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICAgICAgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTJfa2VybmVsKCBBX0xfczMyeDQsIEFfVV9z
MzJ4NCwgQl9RMjhfczMyeDQsIHZnZXRfbG93X3MzMiAoIHRfczMyeDQgKSwgaW5fczMyeDRbIDAg
XSwgJlNfczMyeDQsICZvdXQzMl9RMTRfczMyeDJbIDAgXSApOworICAgICAgICBzaWxrX2JpcXVh
ZF9hbHRfc3RyaWRlMl9rZXJuZWwoIEFfTF9zMzJ4NCwgQV9VX3MzMng0LCBCX1EyOF9zMzJ4NCwg
dmdldF9oaWdoX3MzMiggdF9zMzJ4NCApLCBpbl9zMzJ4NFsgMSBdLCAmU19zMzJ4NCwgJm91dDMy
X1ExNF9zMzJ4MlsgMSBdICk7CisKKyAgICAgICAgLyogU2NhbGUgYmFjayB0byBRMCBhbmQgc2F0
dXJhdGUgKi8KKyAgICAgICAgb3V0MzJfUTE0X3MzMng0ID0gdmNvbWJpbmVfczMyKCBvdXQzMl9R
MTRfczMyeDJbIDAgXSwgb3V0MzJfUTE0X3MzMngyWyAxIF0gKTsgICAgICAgICAgICAgICAgICAg
Lyogb3V0MzJfUTE0X3swLDEsMiwzfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgICAgICBvdXQzMl9RMTRfczMyeDQgPSB2YWRkcV9zMzIoIG91dDMyX1ExNF9zMzJ4NCwgb2Zm
c2V0X3MzMng0ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvdXQzMl9R
MTRfezAsMSwyLDN9ICsgKDE8PDE0KSAtIDEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIG91
dF9zMTZ4NCAgICAgICA9IHZxc2hybl9uX3MzMiggb3V0MzJfUTE0X3MzMng0LCAxNCApOyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIChvcHVzX2ludDE2KXNpbGtf
U0FUMTYoIHNpbGtfUlNISUZUKCBvdXQzMl9RMTRfezAsMSwyLDN9ICsgKDE8PDE0KSAtIDEsIDE0
ICkgKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgdnN0MV9zMTYoICZv
dXRbIDIgKiBrIF0sIG91dF9zMTZ4NCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb3V0WyAyICogayArIHswLDEsMiwzfSBdID0g
KG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMyX1ExNF97MCwxLDIsM30g
KyAoMTw8MTQpIC0gMSwgMTQgKSApOyAqLworICAgIH0KKworICAgIC8qIFByb2Nlc3MgbGVmdG92
ZXIuICovCisgICAgaWYoIGsgPCBsZW4gKSB7CisgICAgICAgIGludDMyeDRfdCBpbl9zMzJ4NDsK
KyAgICAgICAgaW50MzJ4Ml90IG91dDMyX1ExNF9zMzJ4MjsKKworICAgICAgICAvKiBTWyAyICog
aSArIDAgXSwgU1sgMiAqIGkgKyAxIF06IFExMiAqLworICAgICAgICBpbl9zMTZ4NCAgICAgPSB2
bGQxX2xhbmVfczE2KCAmaW5bIDIgKiBrICsgMCBdLCBpbl9zMTZ4NCwgMCApOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBpbnswLDF9ID0gaW5bIDIgKiBrICsgezAsMX0gXTsg
ICAgICovCisgICAgICAgIGluX3MxNng0ICAgICA9IHZsZDFfbGFuZV9zMTYoICZpblsgMiAqIGsg
KyAxIF0sIGluX3MxNng0LCAxICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IGluezAsMX0gPSBpblsgMiAqIGsgKyB7MCwxfSBdOyAgICAgKi8KKyAgICAgICAgaW5fczMyeDQg
ICAgID0gdnNobGxfbl9zMTYoIGluX3MxNng0LCAxNSApOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogaW57MCwxfSA8PCAxNSAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgICAgICB0X3MzMngyICAgICAgPSB2cWRtdWxoX2xhbmVfczMyKCB2
Z2V0X2xvd19zMzIoIGluX3MzMng0ICksIEJfUTI4X3MzMngyLCAwICk7ICAgICAgICAgICAgICAg
ICAgICAvKiBzaWxrX1NNVUxXQiggQl9RMjhbIDAgXSwgaW57MCwxfSApICovCisgICAgICAgIGlu
X3MzMng0ICAgICA9IHZjb21iaW5lX3MzMiggdmdldF9sb3dfczMyKCBpbl9zMzJ4NCApLCB2Z2V0
X2xvd19zMzIoIGluX3MzMng0ICkgKTsgICAgICAgICAgICAgIC8qIGluezAsMSwwLDF9IDw8IDE1
ICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTJfa2Vy
bmVsKCBBX0xfczMyeDQsIEFfVV9zMzJ4NCwgQl9RMjhfczMyeDQsIHRfczMyeDIsIGluX3MzMng0
LCAmU19zMzJ4NCwgJm91dDMyX1ExNF9zMzJ4MiApOworCisgICAgICAgIC8qIFNjYWxlIGJhY2sg
dG8gUTAgYW5kIHNhdHVyYXRlICovCisgICAgICAgIG91dDMyX1ExNF9zMzJ4MiA9IHZhZGRfczMy
KCBvdXQzMl9RMTRfczMyeDIsIG9mZnNldF9zMzJ4MiApOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIG91dDMyX1ExNF97MCwxfSArICgxPDwxNCkgLSAxICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
ICAgICBvdXQzMl9RMTRfczMyeDQgPSB2Y29tYmluZV9zMzIoIG91dDMyX1ExNF9zMzJ4Miwgb3V0
MzJfUTE0X3MzMngyICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvdXQzMl9RMTRf
ezAsMSwwLDF9ICsgKDE8PDE0KSAtIDEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgb3V0X3MxNng0ICAgICAgID0gdnFz
aHJuX25fczMyKCBvdXQzMl9RMTRfczMyeDQsIDE0ICk7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQo
IG91dDMyX1ExNF97MCwxLDAsMX0gKyAoMTw8MTQpIC0gMSwgMTQgKSApICAgICAgICAgICAgICov
CisgICAgICAgIHZzdDFfbGFuZV9zMTYoICZvdXRbIDIgKiBrICsgMCBdLCBvdXRfczE2eDQsIDAg
KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG91dFsg
MiAqIGsgKyAwIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVCggb3V0MzJf
UTE0XzAgKyAoMTw8MTQpIC0gMSwgMTQgKSApOyAqLworICAgICAgICB2c3QxX2xhbmVfczE2KCAm
b3V0WyAyICogayArIDEgXSwgb3V0X3MxNng0LCAxICk7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBvdXRbIDIgKiBrICsgMSBdID0gKG9wdXNfaW50MTYp
c2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMyX1ExNF8xICsgKDE8PDE0KSAtIDEsIDE0ICkg
KTsgKi8KKyAgICB9CisKKyAgICB2c3QxcV9sYW5lX3MzMiggJlNbIDAgXSwgU19zMzJ4NCwgMCAp
OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogU1sgMCBdID0gUzA7ICovCisgICAgdnN0MXFfbGFuZV9zMzIoICZTWyAxIF0sIFNf
czMyeDQsIDIgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIFNbIDEgXSA9IFMyOyAqLworICAgIHZzdDFxX2xhbmVfczMyKCAm
U1sgMiBdLCBTX3MzMng0LCAxICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTWyAyIF0gPSBTMTsgKi8KKyAgICB2c3QxcV9s
YW5lX3MzMiggJlNbIDMgXSwgU19zMzJ4NCwgMyApOyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogU1sgMyBdID0gUzM7ICovCisK
KyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIHNpbGtfYXNzZXJ0KCAhbWVtY21wKCBTX2MsIFMs
IHNpemVvZiggU19jICkgKSApOworICAgIHNpbGtfYXNzZXJ0KCAhbWVtY21wKCBvdXRfYywgb3V0
LCAyICogbGVuICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKSApOworICAgIFJFU1RPUkVfU1RBQ0s7
CisjZW5kaWYKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vbWFjcm9zX2FybXY0LmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJt
L21hY3Jvc19hcm12NC5oCmluZGV4IDNmMzBlOTcyODhmZDc3YjNhMjI5OGRmNjY4YTQxOTc3NzE2
NGM2MjIuLjg3N2ViMThkZDU4MTI5Y2MxNTkxNTJkZDRiMDlkNjc1OWE4NGEyNzcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9hcm0vbWFjcm9zX2FybXY0LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9tYWNyb3NfYXJtdjQuaApA
QCAtMjgsNiArMjgsMTEgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaWZuZGVmIFNJ
TEtfTUFDUk9TX0FSTXY0X0gKICNkZWZpbmUgU0lMS19NQUNST1NfQVJNdjRfSAogCisvKiBUaGlz
IG1hY3JvIG9ubHkgYXZvaWRzIHRoZSB1bmRlZmluZWQgYmVoYXZpb3VyIGZyb20gYSBsZWZ0IHNo
aWZ0IG9mCisgICBhIG5lZ2F0aXZlIHZhbHVlLiBJdCBzaG91bGQgb25seSBiZSB1c2VkIGluIG1h
Y3JvcyB0aGF0IGNhbid0IGluY2x1ZGUKKyAgIFNpZ1Byb2NfRklYLmguIEluIG90aGVyIGNhc2Vz
LCB1c2Ugc2lsa19MU0hJRlQzMigpLiAqLworI2RlZmluZSBTQUZFX1NITChhLGIpICgob3B1c19p
bnQzMikoKG9wdXNfdWludDMyKShhKSA8PCAoYikpKQorCiAvKiAoYTMyICogKG9wdXNfaW50MzIp
KChvcHVzX2ludDE2KShiMzIpKSkgPj4gMTYgb3V0cHV0IGhhdmUgdG8gYmUgMzJiaXQgaW50ICov
CiAjdW5kZWYgc2lsa19TTVVMV0IKIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMyIHNpbGtf
U01VTFdCX2FybXY0KG9wdXNfaW50MzIgYSwgb3B1c19pbnQxNiBiKQpAQCAtMzgsNyArNDMsNyBA
QCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX1NNVUxXQl9hcm12NChvcHVzX2lu
dDMyIGEsIG9wdXNfaW50MTYgYikKICAgICAgICIjc2lsa19TTVVMV0Jcblx0IgogICAgICAgInNt
dWxsICUwLCAlMSwgJTIsICUzXG5cdCIKICAgICAgIDogIj0mciIocmRfbG8pLCAiPSZyIihyZF9o
aSkKLSAgICAgIDogIiVyIihhKSwgInIiKGI8PDE2KQorICAgICAgOiAiJXIiKGEpLCAiciIoU0FG
RV9TSEwoYiwxNikpCiAgICk7CiAgIHJldHVybiByZF9oaTsKIH0KQEAgLTgwLDcgKzg1LDcgQEAg
c3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIgc2lsa19TTVVMV1dfYXJtdjQob3B1c19pbnQz
MiBhLCBvcHVzX2ludDMyIGIpCiAgICAgOiAiPSZyIihyZF9sbyksICI9JnIiKHJkX2hpKQogICAg
IDogIiVyIihhKSwgInIiKGIpCiAgICk7Ci0gIHJldHVybiAocmRfaGk8PDE2KSsocmRfbG8+PjE2
KTsKKyAgcmV0dXJuIFNBRkVfU0hMKHJkX2hpLDE2KSsocmRfbG8+PjE2KTsKIH0KICNkZWZpbmUg
c2lsa19TTVVMV1coYSwgYikgKHNpbGtfU01VTFdXX2FybXY0KGEsIGIpKQogCkBAIC05Niw4ICsx
MDEsMTAgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIgc2lsa19TTUxBV1dfYXJtdjQo
b3B1c19pbnQzMiBhLCBvcHVzX2ludDMyIGIsCiAgICAgOiAiPSZyIihyZF9sbyksICI9JnIiKHJk
X2hpKQogICAgIDogIiVyIihiKSwgInIiKGMpCiAgICk7Ci0gIHJldHVybiBhKyhyZF9oaTw8MTYp
KyhyZF9sbz4+MTYpOworICByZXR1cm4gYStTQUZFX1NITChyZF9oaSwxNikrKHJkX2xvPj4xNik7
CiB9CiAjZGVmaW5lIHNpbGtfU01MQVdXKGEsIGIsIGMpIChzaWxrX1NNTEFXV19hcm12NChhLCBi
LCBjKSkKIAorI3VuZGVmIFNBRkVfU0hMCisKICNlbmRpZiAvKiBTSUxLX01BQ1JPU19BUk12NF9I
ICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL21hY3Jvc19hcm12NWUuaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vbWFjcm9z
X2FybXY1ZS5oCmluZGV4IGFhZDQxMTdlNDZhNWZhZmFhZWEzYjBlNWRjYzBiZTg1YjExYzZjZjku
LmIxNGVjNjVkZGIyOWEyMmIwOTM0NjBjMzhhZWI2OGJhNWVkNTQwN2QgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9hcm0vbWFjcm9zX2FybXY1ZS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vbWFjcm9zX2FybXY1ZS5oCkBAIC0y
OSw2ICsyOSwxMSBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICNpZm5kZWYgU0lMS19N
QUNST1NfQVJNdjVFX0gKICNkZWZpbmUgU0lMS19NQUNST1NfQVJNdjVFX0gKIAorLyogVGhpcyBt
YWNybyBvbmx5IGF2b2lkcyB0aGUgdW5kZWZpbmVkIGJlaGF2aW91ciBmcm9tIGEgbGVmdCBzaGlm
dCBvZgorICAgYSBuZWdhdGl2ZSB2YWx1ZS4gSXQgc2hvdWxkIG9ubHkgYmUgdXNlZCBpbiBtYWNy
b3MgdGhhdCBjYW4ndCBpbmNsdWRlCisgICBTaWdQcm9jX0ZJWC5oLiBJbiBvdGhlciBjYXNlcywg
dXNlIHNpbGtfTFNISUZUMzIoKS4gKi8KKyNkZWZpbmUgU0FGRV9TSEwoYSxiKSAoKG9wdXNfaW50
MzIpKChvcHVzX3VpbnQzMikoYSkgPDwgKGIpKSkKKwogLyogKGEzMiAqIChvcHVzX2ludDMyKSgo
b3B1c19pbnQxNikoYjMyKSkpID4+IDE2IG91dHB1dCBoYXZlIHRvIGJlIDMyYml0IGludCAqLwog
I3VuZGVmIHNpbGtfU01VTFdCCiBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX1NN
VUxXQl9hcm12NWUob3B1c19pbnQzMiBhLCBvcHVzX2ludDE2IGIpCkBAIC0xOTAsNyArMTk1LDcg
QEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIgc2lsa19DTFoxNl9hcm12NShvcHVzX2lu
dDE2IGluMTYpCiAgICAgICAiI3NpbGtfQ0xaMTZcblx0IgogICAgICAgImNseiAlMCwgJTE7XG4i
CiAgICAgICA6ICI9ciIocmVzKQotICAgICAgOiAiciIoaW4xNjw8MTZ8MHg4MDAwKQorICAgICAg
OiAiciIoU0FGRV9TSEwoaW4xNiwxNil8MHg4MDAwKQogICApOwogICByZXR1cm4gcmVzOwogfQpA
QCAtMjEwLDQgKzIxNSw2IEBAIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMyIHNpbGtfQ0xa
MzJfYXJtdjUob3B1c19pbnQzMiBpbjMyKQogfQogI2RlZmluZSBzaWxrX0NMWjMyKGluMzIpIChz
aWxrX0NMWjMyX2FybXY1KGluMzIpKQogCisjdW5kZWYgU0FGRV9TSEwKKwogI2VuZGlmIC8qIFNJ
TEtfTUFDUk9TX0FSTXY1RV9IICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYmlxdWFkX2FsdC5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2JpcXVhZF9hbHQuYwppbmRleCBkNTVmNWVlOTJlYzJkOWI0MjE3ODEwMzc3YTFjNGEzOTBmODEw
NGY5Li41NDU2NmE0M2MwMDEzYzdiN2VkMzc4MDY5YTQ0ODY3Y2NhOTMyMzFmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvYmlxdWFkX2FsdC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9iaXF1YWRfYWx0LmMKQEAgLTM5LDE0ICszOSwx
MyBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICNpbmNsdWRlICJTaWdQcm9jX0ZJWC5o
IgogCiAvKiBTZWNvbmQgb3JkZXIgQVJNQSBmaWx0ZXIsIGFsdGVybmF0aXZlIGltcGxlbWVudGF0
aW9uICovCi12b2lkIHNpbGtfYmlxdWFkX2FsdCgKK3ZvaWQgc2lsa19iaXF1YWRfYWx0X3N0cmlk
ZTEoCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICppbiwgICAgICAgICAgICAgICAg
LyogSSAgICAgaW5wdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQl9RMjgsICAg
ICAgICAgICAgIC8qIEkgICAgIE1BIGNvZWZmaWNpZW50cyBbM10gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAg
KkFfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBBUiBjb2VmZmljaWVudHMgWzJdICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAg
ICAgICAgICAgICpTLCAgICAgICAgICAgICAgICAgLyogSS9PICAgU3RhdGUgdmVjdG9yIFsyXSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50
MTYgICAgICAgICAgICAgICAgICAqb3V0LCAgICAgICAgICAgICAgIC8qIE8gICAgIG91dHB1dCBz
aWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgbGVuLCAgICAgICAgICAgICAgICAvKiBJICAg
ICBzaWduYWwgbGVuZ3RoIChtdXN0IGJlIGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIHN0cmlkZSAgICAgICAgICAg
ICAgLyogSSAgICAgT3BlcmF0ZSBvbiBpbnRlcmxlYXZlZCBzaWduYWwgaWYgPiAxICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBsZW4gICAg
ICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3QgYmUgZXZlbikgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKICAgICAvKiBESVJFQ1QgRk9STSBJSSBU
UkFOU1BPU0VEICh1c2VzIDIgZWxlbWVudCBzdGF0ZSB2ZWN0b3IpICovCkBAIC02MSw3ICs2MCw3
IEBAIHZvaWQgc2lsa19iaXF1YWRfYWx0KAogCiAgICAgZm9yKCBrID0gMDsgayA8IGxlbjsgaysr
ICkgewogICAgICAgICAvKiBTWyAwIF0sIFNbIDEgXTogUTEyICovCi0gICAgICAgIGludmFsID0g
aW5bIGsgKiBzdHJpZGUgXTsKKyAgICAgICAgaW52YWwgPSBpblsgayBdOwogICAgICAgICBvdXQz
Ml9RMTQgPSBzaWxrX0xTSElGVCggc2lsa19TTUxBV0IoIFNbIDAgXSwgQl9RMjhbIDAgXSwgaW52
YWwgKSwgMiApOwogCiAgICAgICAgIFNbIDAgXSA9IFNbMV0gKyBzaWxrX1JTSElGVF9ST1VORCgg
c2lsa19TTVVMV0IoIG91dDMyX1ExNCwgQTBfTF9RMjggKSwgMTQgKTsKQEAgLTczLDYgKzcyLDUw
IEBAIHZvaWQgc2lsa19iaXF1YWRfYWx0KAogICAgICAgICBTWyAxIF0gPSBzaWxrX1NNTEFXQigg
U1sgMSBdLCBCX1EyOFsgMiBdLCBpbnZhbCApOwogCiAgICAgICAgIC8qIFNjYWxlIGJhY2sgdG8g
UTAgYW5kIHNhdHVyYXRlICovCi0gICAgICAgIG91dFsgayAqIHN0cmlkZSBdID0gKG9wdXNfaW50
MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMyX1ExNCArICgxPDwxNCkgLSAxLCAxNCAp
ICk7CisgICAgICAgIG91dFsgayBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJ
RlQoIG91dDMyX1ExNCArICgxPDwxNCkgLSAxLCAxNCApICk7CisgICAgfQorfQorCit2b2lkIHNp
bGtfYmlxdWFkX2FsdF9zdHJpZGUyX2MoCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAg
ICppbiwgICAgICAgICAgICAgICAgLyogSSAgICAgaW5wdXQgc2lnbmFsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIg
ICAgICAgICAgICAqQl9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIE1BIGNvZWZmaWNpZW50cyBb
M10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBv
cHVzX2ludDMyICAgICAgICAgICAgKkFfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBBUiBjb2Vm
ZmljaWVudHMgWzJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpTLCAgICAgICAgICAgICAgICAgLyogSS9P
ICAgU3RhdGUgdmVjdG9yIFs0XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqb3V0LCAgICAgICAgICAg
ICAgIC8qIE8gICAgIG91dHB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgbGVuICAg
ICAgICAgICAgICAgICAvKiBJICAgICBzaWduYWwgbGVuZ3RoIChtdXN0IGJlIGV2ZW4pICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCispCit7CisgICAgLyogRElSRUNUIEZPUk0gSUkg
VFJBTlNQT1NFRCAodXNlcyAyIGVsZW1lbnQgc3RhdGUgdmVjdG9yKSAqLworICAgIG9wdXNfaW50
ICAgazsKKyAgICBvcHVzX2ludDMyIEEwX1VfUTI4LCBBMF9MX1EyOCwgQTFfVV9RMjgsIEExX0xf
UTI4LCBvdXQzMl9RMTRbIDIgXTsKKworICAgIC8qIE5lZ2F0ZSBBX1EyOCB2YWx1ZXMgYW5kIHNw
bGl0IGluIHR3byBwYXJ0cyAqLworICAgIEEwX0xfUTI4ID0gKCAtQV9RMjhbIDAgXSApICYgMHgw
MDAwM0ZGRjsgICAgICAgIC8qIGxvd2VyIHBhcnQgKi8KKyAgICBBMF9VX1EyOCA9IHNpbGtfUlNI
SUZUKCAtQV9RMjhbIDAgXSwgMTQgKTsgICAgICAvKiB1cHBlciBwYXJ0ICovCisgICAgQTFfTF9R
MjggPSAoIC1BX1EyOFsgMSBdICkgJiAweDAwMDAzRkZGOyAgICAgICAgLyogbG93ZXIgcGFydCAq
LworICAgIEExX1VfUTI4ID0gc2lsa19SU0hJRlQoIC1BX1EyOFsgMSBdLCAxNCApOyAgICAgIC8q
IHVwcGVyIHBhcnQgKi8KKworICAgIGZvciggayA9IDA7IGsgPCBsZW47IGsrKyApIHsKKyAgICAg
ICAgLyogU1sgMCBdLCBTWyAxIF0sIFNbIDIgXSwgU1sgMyBdOiBRMTIgKi8KKyAgICAgICAgb3V0
MzJfUTE0WyAwIF0gPSBzaWxrX0xTSElGVCggc2lsa19TTUxBV0IoIFNbIDAgXSwgQl9RMjhbIDAg
XSwgaW5bIDIgKiBrICsgMCBdICksIDIgKTsKKyAgICAgICAgb3V0MzJfUTE0WyAxIF0gPSBzaWxr
X0xTSElGVCggc2lsa19TTUxBV0IoIFNbIDIgXSwgQl9RMjhbIDAgXSwgaW5bIDIgKiBrICsgMSBd
ICksIDIgKTsKKworICAgICAgICBTWyAwIF0gPSBTWyAxIF0gKyBzaWxrX1JTSElGVF9ST1VORCgg
c2lsa19TTVVMV0IoIG91dDMyX1ExNFsgMCBdLCBBMF9MX1EyOCApLCAxNCApOworICAgICAgICBT
WyAyIF0gPSBTWyAzIF0gKyBzaWxrX1JTSElGVF9ST1VORCggc2lsa19TTVVMV0IoIG91dDMyX1Ex
NFsgMSBdLCBBMF9MX1EyOCApLCAxNCApOworICAgICAgICBTWyAwIF0gPSBzaWxrX1NNTEFXQigg
U1sgMCBdLCBvdXQzMl9RMTRbIDAgXSwgQTBfVV9RMjggKTsKKyAgICAgICAgU1sgMiBdID0gc2ls
a19TTUxBV0IoIFNbIDIgXSwgb3V0MzJfUTE0WyAxIF0sIEEwX1VfUTI4ICk7CisgICAgICAgIFNb
IDAgXSA9IHNpbGtfU01MQVdCKCBTWyAwIF0sIEJfUTI4WyAxIF0sIGluWyAyICogayArIDAgXSAp
OworICAgICAgICBTWyAyIF0gPSBzaWxrX1NNTEFXQiggU1sgMiBdLCBCX1EyOFsgMSBdLCBpblsg
MiAqIGsgKyAxIF0gKTsKKworICAgICAgICBTWyAxIF0gPSBzaWxrX1JTSElGVF9ST1VORCggc2ls
a19TTVVMV0IoIG91dDMyX1ExNFsgMCBdLCBBMV9MX1EyOCApLCAxNCApOworICAgICAgICBTWyAz
IF0gPSBzaWxrX1JTSElGVF9ST1VORCggc2lsa19TTVVMV0IoIG91dDMyX1ExNFsgMSBdLCBBMV9M
X1EyOCApLCAxNCApOworICAgICAgICBTWyAxIF0gPSBzaWxrX1NNTEFXQiggU1sgMSBdLCBvdXQz
Ml9RMTRbIDAgXSwgQTFfVV9RMjggKTsKKyAgICAgICAgU1sgMyBdID0gc2lsa19TTUxBV0IoIFNb
IDMgXSwgb3V0MzJfUTE0WyAxIF0sIEExX1VfUTI4ICk7CisgICAgICAgIFNbIDEgXSA9IHNpbGtf
U01MQVdCKCBTWyAxIF0sIEJfUTI4WyAyIF0sIGluWyAyICogayArIDAgXSApOworICAgICAgICBT
WyAzIF0gPSBzaWxrX1NNTEFXQiggU1sgMyBdLCBCX1EyOFsgMiBdLCBpblsgMiAqIGsgKyAxIF0g
KTsKKworICAgICAgICAvKiBTY2FsZSBiYWNrIHRvIFEwIGFuZCBzYXR1cmF0ZSAqLworICAgICAg
ICBvdXRbIDIgKiBrICsgMCBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQo
IG91dDMyX1ExNFsgMCBdICsgKDE8PDE0KSAtIDEsIDE0ICkgKTsKKyAgICAgICAgb3V0WyAyICog
ayArIDEgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUKCBvdXQzMl9RMTRb
IDEgXSArICgxPDwxNCkgLSAxLCAxNCApICk7CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2J3
ZXhwYW5kZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9id2V4cGFuZGVyLmMKaW5kZXggMmViNDQ1NjY5NWU3OTE5MjAzNzU3
YjhmZjhmNjA2NzM5MTNlZjExNi4uYWZhOTc5MDdlYzgwMmM2M2M2NWQ1MjY3YzE0NThjMDdjODI1
NzIwOCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2J3ZXhwYW5kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYndleHBhbmRlci5j
CkBAIC00NSw3ICs0NSw3IEBAIHZvaWQgc2lsa19id2V4cGFuZGVyKAogICAgIC8qIEJpYXMgaW4g
c2lsa19TTVVMV0IgY2FuIGxlYWQgdG8gdW5zdGFibGUgZmlsdGVycyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICAgICBmb3IoIGkgPSAwOyBpIDwgZCAtIDE7IGkrKyApIHsKICAg
ICAgICAgYXJbIGkgXSAgICA9IChvcHVzX2ludDE2KXNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX01V
TCggY2hpcnBfUTE2LCBhclsgaSBdICAgICAgICAgICAgICksIDE2ICk7Ci0gICAgICAgIGNoaXJw
X1ExNiArPSAgICAgICAgICAgIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX01VTCggY2hpcnBfUTE2
LCBjaGlycF9taW51c19vbmVfUTE2ICksIDE2ICk7CisgICAgICAgIGNoaXJwX1ExNiArPSAgICAg
ICAgICAgICBzaWxrX1JTSElGVF9ST1VORCggc2lsa19NVUwoIGNoaXJwX1ExNiwgY2hpcnBfbWlu
dXNfb25lX1ExNiApLCAxNiApOwogICAgIH0KICAgICBhclsgZCAtIDEgXSA9IChvcHVzX2ludDE2
KXNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX01VTCggY2hpcnBfUTE2LCBhclsgZCAtIDEgXSApLCAx
NiApOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2wuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9jb250cm9sLmgKaW5kZXgg
NzQ3ZTU0MjZhMGMzZmM3Y2I5YjViZGI3ODM0ZGRkOThhMjNlOTc5MS4uYjc2ZWMzM2NkNmRkYjYz
ODZmNTY0ZTFkOTlkM2ZmNTdkN2U2OTNhZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2wuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvY29udHJvbC5oCkBAIC03Nyw2ICs3Nyw5IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICAv
KiBJOiAgIEZsYWcgdG8gZW5hYmxlIGluLWJhbmQgRm9yd2FyZCBFcnJvciBDb3JyZWN0aW9uIChG
RUMpOyAwLzEgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCB1c2VJbkJhbmRG
RUM7CiAKKyAgICAvKiBJOiAgIEZsYWcgdG8gYWN0dWFsbHkgY29kZSBpbi1iYW5kIEZvcndhcmQg
RXJyb3IgQ29ycmVjdGlvbiAoRkVDKSBpbiB0aGUgY3VycmVudCBwYWNrZXQ7IDAvMSAqLworICAg
IG9wdXNfaW50IExCUlJfY29kZWQ7CisKICAgICAvKiBJOiAgIEZsYWcgdG8gZW5hYmxlIGRpc2Nv
bnRpbnVvdXMgdHJhbnNtaXNzaW9uIChEVFgpOyAwLzEgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBvcHVzX2ludCB1c2VEVFg7CiAKQEAgLTExMCw2ICsxMTMsMTEgQEAgdHlwZWRl
ZiBzdHJ1Y3QgewogICAgIC8qIE86ICAgVGVsbHMgdGhlIE9wdXMgZW5jb2RlciB3ZSdyZSByZWFk
eSB0byBzd2l0Y2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9w
dXNfaW50IHN3aXRjaFJlYWR5OwogCisgICAgLyogTzogU0lMSyBTaWduYWwgdHlwZSAqLworICAg
IG9wdXNfaW50IHNpZ25hbFR5cGU7CisKKyAgICAvKiBPOiBTSUxLIG9mZnNldCAoZGl0aGVyaW5n
KSAqLworICAgIG9wdXNfaW50IG9mZnNldDsKIH0gc2lsa19FbmNDb250cm9sU3RydWN0OwogCiAv
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvY29udHJvbF9TTlIuYyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9j
b250cm9sX1NOUi5jCmluZGV4IGNlZTg3ZWIwZDhiMzdjNTRlMDU3MDZmYjY4YThjZGMxOGM5YWFi
NGMuLjQ2NGMxYWNmZTg4NDUxYWJmNmEzZWQ0NWRiMjZiMjVjZDBjNjUzZjAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9jb250cm9sX1NOUi5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9jb250cm9sX1NOUi5jCkBAIC02NCw4ICs2NCw3
IEBAIG9wdXNfaW50IHNpbGtfY29udHJvbF9TTlIoCiAgICAgICAgIC8qIEZpbmQgYml0cmF0ZSBp
bnRlcnZhbCBpbiB0YWJsZSBhbmQgaW50ZXJwb2xhdGUgKi8KICAgICAgICAgZm9yKCBrID0gMTsg
ayA8IFRBUkdFVF9SQVRFX1RBQl9TWjsgaysrICkgewogICAgICAgICAgICAgaWYoIFRhcmdldFJh
dGVfYnBzIDw9IHJhdGVUYWJsZVsgayBdICkgewotICAgICAgICAgICAgICAgIGZyYWNfUTYgPSBz
aWxrX0RJVjMyKCBzaWxrX0xTSElGVCggVGFyZ2V0UmF0ZV9icHMgLSByYXRlVGFibGVbIGsgLSAx
IF0sIDYgKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICByYXRlVGFibGVbIGsgXSAtIHJhdGVUYWJsZVsgayAtIDEgXSApOworICAgICAgICAgICAgICAg
IGZyYWNfUTYgPSBzaWxrX0RJVjMyKCBzaWxrX0xTSElGVCggVGFyZ2V0UmF0ZV9icHMgLSByYXRl
VGFibGVbIGsgLSAxIF0sIDYgKSwgcmF0ZVRhYmxlWyBrIF0gLSByYXRlVGFibGVbIGsgLSAxIF0g
KTsKICAgICAgICAgICAgICAgICBwc0VuY0MtPlNOUl9kQl9RNyA9IHNpbGtfTFNISUZUKCBzaWxr
X1NOUl90YWJsZV9RMVsgayAtIDEgXSwgNiApICsgc2lsa19NVUwoIGZyYWNfUTYsIHNpbGtfU05S
X3RhYmxlX1ExWyBrIF0gLSBzaWxrX1NOUl90YWJsZV9RMVsgayAtIDEgXSApOwogICAgICAgICAg
ICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2xfY29k
ZWMuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9jb250cm9sX2NvZGVjLmMKaW5kZXggMDQ0ZWVhM2YyYTg0ZTBhYTQ0M2YwNWNm
YzVhZjJmNWM1ZTQ1NGNhZC4uOTM1MGZkNGIyYjRjYzliNTg4OTFkODNiN2I3Yjc3NGYyNzRiMTgx
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2xfY29kZWMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvY29udHJvbF9jb2Rl
Yy5jCkBAIC01Nyw3ICs1Nyw3IEBAIHN0YXRpYyBvcHVzX2ludCBzaWxrX3NldHVwX2NvbXBsZXhp
dHkoCiAKIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludCBzaWxrX3NldHVwX0xCUlIoCiAgICAg
c2lsa19lbmNvZGVyX3N0YXRlICAgICAgICAgICAgICAqcHNFbmNDLCAgICAgICAgICAgIC8qIEkv
TyAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAg
ICAgICAgVGFyZ2V0UmF0ZV9icHMgICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBzaWxrX0VuY0NvbnRyb2xTdHJ1Y3QgICAgICplbmNDb250cm9sICAgICAgICAg
LyogSSAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCiAKQEAgLTY1LDcgKzY1LDYgQEAg
c3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50IHNpbGtfc2V0dXBfTEJSUigKIG9wdXNfaW50IHNp
bGtfY29udHJvbF9lbmNvZGVyKAogICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GeHggICAgICAgICAg
KnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0
byBTaWxrIGVuY29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgc2lsa19FbmNDb250cm9sU3RydWN0ICAgICAgICAgICAqZW5jQ29u
dHJvbCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb250cm9sIHN0cnVjdHVy
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgICAgIFRhcmdldFJhdGVfYnBz
LCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFRhcmdldCBtYXggYml0cmF0ZSAoYnBz
KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgYWxsb3dfYndfc3dpdGNoLCAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRmxhZyB0byBhbGxvdyBzd2l0Y2hpbmcgYXVkaW8g
YmFuZHdpZHRoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBjaGFubmVsTmIsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBDaGFubmVsIG51bWJlciAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVz
X2ludCAgICAgICAgICAgICAgICAgIGZvcmNlX2ZzX2tIegpAQCAtMTI1LDcgKzEyNCw3IEBAIG9w
dXNfaW50IHNpbGtfY29udHJvbF9lbmNvZGVyKAogICAgIC8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBTZXQgTEJSUiB1c2FnZSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqLwotICAgIHJldCArPSBzaWxrX3NldHVwX0xCUlIoICZwc0VuYy0+c0Ntbiwg
VGFyZ2V0UmF0ZV9icHMgKTsKKyAgICByZXQgKz0gc2lsa19zZXR1cF9MQlJSKCAmcHNFbmMtPnND
bW4sIGVuY0NvbnRyb2wgKTsKIAogICAgIHBzRW5jLT5zQ21uLmNvbnRyb2xsZWRfc2luY2VfbGFz
dF9wYXlsb2FkID0gMTsKIApAQCAtMjQ0LDcgKzI0Myw2IEBAIHN0YXRpYyBvcHVzX2ludCBzaWxr
X3NldHVwX2ZzKAogICAgIGlmKCBwc0VuYy0+c0Ntbi5mc19rSHogIT0gZnNfa0h6ICkgewogICAg
ICAgICAvKiByZXNldCBwYXJ0IG9mIHRoZSBzdGF0ZSAqLwogICAgICAgICBzaWxrX21lbXNldCgg
JnBzRW5jLT5zU2hhcGUsICAgICAgICAgICAgICAgMCwgc2l6ZW9mKCBwc0VuYy0+c1NoYXBlICkg
KTsKLSAgICAgICAgc2lsa19tZW1zZXQoICZwc0VuYy0+c1ByZWZpbHQsICAgICAgICAgICAgIDAs
IHNpemVvZiggcHNFbmMtPnNQcmVmaWx0ICkgKTsKICAgICAgICAgc2lsa19tZW1zZXQoICZwc0Vu
Yy0+c0Ntbi5zTlNRLCAgICAgICAgICAgIDAsIHNpemVvZiggcHNFbmMtPnNDbW4uc05TUSApICk7
CiAgICAgICAgIHNpbGtfbWVtc2V0KCBwc0VuYy0+c0Ntbi5wcmV2X05MU0ZxX1ExNSwgICAwLCBz
aXplb2YoIHBzRW5jLT5zQ21uLnByZXZfTkxTRnFfUTE1ICkgKTsKICAgICAgICAgc2lsa19tZW1z
ZXQoICZwc0VuYy0+c0Ntbi5zTFAuSW5fTFBfU3RhdGUsIDAsIHNpemVvZiggcHNFbmMtPnNDbW4u
c0xQLkluX0xQX1N0YXRlICkgKTsKQEAgLTI1NSw3ICsyNTMsNiBAQCBzdGF0aWMgb3B1c19pbnQg
c2lsa19zZXR1cF9mcygKICAgICAgICAgLyogSW5pdGlhbGl6ZSBub24temVybyBwYXJhbWV0ZXJz
ICovCiAgICAgICAgIHBzRW5jLT5zQ21uLnByZXZMYWcgICAgICAgICAgICAgICAgICAgICA9IDEw
MDsKICAgICAgICAgcHNFbmMtPnNDbW4uZmlyc3RfZnJhbWVfYWZ0ZXJfcmVzZXQgICAgID0gMTsK
LSAgICAgICAgcHNFbmMtPnNQcmVmaWx0LmxhZ1ByZXYgICAgICAgICAgICAgICAgID0gMTAwOwog
ICAgICAgICBwc0VuYy0+c1NoYXBlLkxhc3RHYWluSW5kZXggICAgICAgICAgICAgPSAxMDsKICAg
ICAgICAgcHNFbmMtPnNDbW4uc05TUS5sYWdQcmV2ICAgICAgICAgICAgICAgID0gMTAwOwogICAg
ICAgICBwc0VuYy0+c0Ntbi5zTlNRLnByZXZfZ2Fpbl9RMTYgICAgICAgICAgPSA2NTUzNjsKQEAg
LTI5MywxMyArMjkwLDEwIEBAIHN0YXRpYyBvcHVzX2ludCBzaWxrX3NldHVwX2ZzKAogICAgICAg
ICAgICAgcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGggPSBzaWxrX1NNVUxCQiggRklO
RF9QSVRDSF9MUENfV0lOX01TXzJfU0YsIGZzX2tIeiApOwogICAgICAgICB9CiAgICAgICAgIGlm
KCBwc0VuYy0+c0Ntbi5mc19rSHogPT0gMTYgKSB7Ci0gICAgICAgICAgICBwc0VuYy0+c0Ntbi5t
dV9MVFBfUTkgPSBTSUxLX0ZJWF9DT05TVCggTVVfTFRQX1FVQU5UX1dCLCA5ICk7CiAgICAgICAg
ICAgICBwc0VuYy0+c0Ntbi5waXRjaF9sYWdfbG93X2JpdHNfaUNERiA9IHNpbGtfdW5pZm9ybThf
aUNERjsKICAgICAgICAgfSBlbHNlIGlmKCBwc0VuYy0+c0Ntbi5mc19rSHogPT0gMTIgKSB7Ci0g
ICAgICAgICAgICBwc0VuYy0+c0Ntbi5tdV9MVFBfUTkgPSBTSUxLX0ZJWF9DT05TVCggTVVfTFRQ
X1FVQU5UX01CLCA5ICk7CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5waXRjaF9sYWdfbG93X2Jp
dHNfaUNERiA9IHNpbGtfdW5pZm9ybTZfaUNERjsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAg
ICAgIHBzRW5jLT5zQ21uLm11X0xUUF9ROSA9IFNJTEtfRklYX0NPTlNUKCBNVV9MVFBfUVVBTlRf
TkIsIDkgKTsKICAgICAgICAgICAgIHBzRW5jLT5zQ21uLnBpdGNoX2xhZ19sb3dfYml0c19pQ0RG
ID0gc2lsa191bmlmb3JtNF9pQ0RGOwogICAgICAgICB9CiAgICAgfQpAQCAtMzE5LDYwICszMTMs
NzUgQEAgc3RhdGljIG9wdXNfaW50IHNpbGtfc2V0dXBfY29tcGxleGl0eSgKIAogICAgIC8qIFNl
dCBlbmNvZGluZyBjb21wbGV4aXR5ICovCiAgICAgc2lsa19hc3NlcnQoIENvbXBsZXhpdHkgPj0g
MCAmJiBDb21wbGV4aXR5IDw9IDEwICk7Ci0gICAgaWYoIENvbXBsZXhpdHkgPCAyICkgeworICAg
IGlmKCBDb21wbGV4aXR5IDwgMSApIHsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25D
b21wbGV4aXR5ICAgICAgID0gU0lMS19QRV9NSU5fQ09NUExFWDsKICAgICAgICAgcHNFbmNDLT5w
aXRjaEVzdGltYXRpb25UaHJlc2hvbGRfUTE2ICAgID0gU0lMS19GSVhfQ09OU1QoIDAuOCwgMTYg
KTsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25MUENPcmRlciAgICAgICAgID0gNjsK
LSAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIgICAgICAgICAgICAgICAgID0gODsKKyAg
ICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIgICAgICAgICAgICAgICAgID0gMTI7CiAgICAg
ICAgIHBzRW5jQy0+bGFfc2hhcGUgICAgICAgICAgICAgICAgICAgICAgICA9IDMgKiBwc0VuY0Mt
PmZzX2tIejsKICAgICAgICAgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lzaW9uICAgICAgICAg
ID0gMTsKICAgICAgICAgcHNFbmNDLT51c2VJbnRlcnBvbGF0ZWROTFNGcyAgICAgICAgICAgID0g
MDsKLSAgICAgICAgcHNFbmNDLT5MVFBRdWFudExvd0NvbXBsZXhpdHkgICAgICAgICAgID0gMTsK
ICAgICAgICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vydml2b3JzICAgICAgICAgICAgID0gMjsKICAg
ICAgICAgcHNFbmNDLT53YXJwaW5nX1ExNiAgICAgICAgICAgICAgICAgICAgID0gMDsKLSAgICB9
IGVsc2UgaWYoIENvbXBsZXhpdHkgPCA0ICkgeworICAgIH0gZWxzZSBpZiggQ29tcGxleGl0eSA8
IDIgKSB7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uQ29tcGxleGl0eSAgICAgICA9
IFNJTEtfUEVfTUlEX0NPTVBMRVg7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uVGhy
ZXNob2xkX1ExNiAgICA9IFNJTEtfRklYX0NPTlNUKCAwLjc2LCAxNiApOwogICAgICAgICBwc0Vu
Y0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyICAgICAgICAgPSA4OwotICAgICAgICBwc0VuY0Mt
PnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAxMDsKKyAgICAgICAgcHNFbmNDLT5z
aGFwaW5nTFBDT3JkZXIgICAgICAgICAgICAgICAgID0gMTQ7CiAgICAgICAgIHBzRW5jQy0+bGFf
c2hhcGUgICAgICAgICAgICAgICAgICAgICAgICA9IDUgKiBwc0VuY0MtPmZzX2tIejsKICAgICAg
ICAgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lzaW9uICAgICAgICAgID0gMTsKICAgICAgICAg
cHNFbmNDLT51c2VJbnRlcnBvbGF0ZWROTFNGcyAgICAgICAgICAgID0gMDsKLSAgICAgICAgcHNF
bmNDLT5MVFBRdWFudExvd0NvbXBsZXhpdHkgICAgICAgICAgID0gMDsKKyAgICAgICAgcHNFbmND
LT5OTFNGX01TVlFfU3Vydml2b3JzICAgICAgICAgICAgID0gMzsKKyAgICAgICAgcHNFbmNDLT53
YXJwaW5nX1ExNiAgICAgICAgICAgICAgICAgICAgID0gMDsKKyAgICB9IGVsc2UgaWYoIENvbXBs
ZXhpdHkgPCAzICkgeworICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkNvbXBsZXhpdHkg
ICAgICAgPSBTSUxLX1BFX01JTl9DT01QTEVYOworICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1h
dGlvblRocmVzaG9sZF9RMTYgICAgPSBTSUxLX0ZJWF9DT05TVCggMC44LCAxNiApOworICAgICAg
ICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyICAgICAgICAgPSA2OworICAgICAgICBw
c0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAxMjsKKyAgICAgICAgcHNF
bmNDLT5sYV9zaGFwZSAgICAgICAgICAgICAgICAgICAgICAgID0gMyAqIHBzRW5jQy0+ZnNfa0h6
OworICAgICAgICBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gICAgICAgICAgPSAyOwor
ICAgICAgICBwc0VuY0MtPnVzZUludGVycG9sYXRlZE5MU0ZzICAgICAgICAgICAgPSAwOworICAg
ICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMgICAgICAgICAgICAgPSAyOworICAgICAg
ICBwc0VuY0MtPndhcnBpbmdfUTE2ICAgICAgICAgICAgICAgICAgICAgPSAwOworICAgIH0gZWxz
ZSBpZiggQ29tcGxleGl0eSA8IDQgKSB7CisgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9u
Q29tcGxleGl0eSAgICAgICA9IFNJTEtfUEVfTUlEX0NPTVBMRVg7CisgICAgICAgIHBzRW5jQy0+
cGl0Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNiAgICA9IFNJTEtfRklYX0NPTlNUKCAwLjc2LCAx
NiApOworICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyICAgICAgICAgPSA4
OworICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAxNDsK
KyAgICAgICAgcHNFbmNDLT5sYV9zaGFwZSAgICAgICAgICAgICAgICAgICAgICAgID0gNSAqIHBz
RW5jQy0+ZnNfa0h6OworICAgICAgICBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gICAg
ICAgICAgPSAyOworICAgICAgICBwc0VuY0MtPnVzZUludGVycG9sYXRlZE5MU0ZzICAgICAgICAg
ICAgPSAwOwogICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMgICAgICAgICAgICAg
PSA0OwogICAgICAgICBwc0VuY0MtPndhcnBpbmdfUTE2ICAgICAgICAgICAgICAgICAgICAgPSAw
OwogICAgIH0gZWxzZSBpZiggQ29tcGxleGl0eSA8IDYgKSB7CiAgICAgICAgIHBzRW5jQy0+cGl0
Y2hFc3RpbWF0aW9uQ29tcGxleGl0eSAgICAgICA9IFNJTEtfUEVfTUlEX0NPTVBMRVg7CiAgICAg
ICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNiAgICA9IFNJTEtfRklYX0NP
TlNUKCAwLjc0LCAxNiApOwogICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVy
ICAgICAgICAgPSAxMDsKLSAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIgICAgICAgICAg
ICAgICAgID0gMTI7CisgICAgICAgIHBzRW5jQy0+c2hhcGluZ0xQQ09yZGVyICAgICAgICAgICAg
ICAgICA9IDE2OwogICAgICAgICBwc0VuY0MtPmxhX3NoYXBlICAgICAgICAgICAgICAgICAgICAg
ICAgPSA1ICogcHNFbmNDLT5mc19rSHo7CiAgICAgICAgIHBzRW5jQy0+blN0YXRlc0RlbGF5ZWRE
ZWNpc2lvbiAgICAgICAgICA9IDI7CiAgICAgICAgIHBzRW5jQy0+dXNlSW50ZXJwb2xhdGVkTkxT
RnMgICAgICAgICAgICA9IDE7Ci0gICAgICAgIHBzRW5jQy0+TFRQUXVhbnRMb3dDb21wbGV4aXR5
ICAgICAgICAgICA9IDA7Ci0gICAgICAgIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9ycyAgICAg
ICAgICAgICA9IDg7CisgICAgICAgIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9ycyAgICAgICAg
ICAgICA9IDY7CiAgICAgICAgIHBzRW5jQy0+d2FycGluZ19RMTYgICAgICAgICAgICAgICAgICAg
ICA9IHBzRW5jQy0+ZnNfa0h6ICogU0lMS19GSVhfQ09OU1QoIFdBUlBJTkdfTVVMVElQTElFUiwg
MTYgKTsKICAgICB9IGVsc2UgaWYoIENvbXBsZXhpdHkgPCA4ICkgewogICAgICAgICBwc0VuY0Mt
PnBpdGNoRXN0aW1hdGlvbkNvbXBsZXhpdHkgICAgICAgPSBTSUxLX1BFX01JRF9DT01QTEVYOwog
ICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvblRocmVzaG9sZF9RMTYgICAgPSBTSUxLX0ZJ
WF9DT05TVCggMC43MiwgMTYgKTsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25MUENP
cmRlciAgICAgICAgID0gMTI7Ci0gICAgICAgIHBzRW5jQy0+c2hhcGluZ0xQQ09yZGVyICAgICAg
ICAgICAgICAgICA9IDE0OworICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAg
ICAgICAgICAgPSAyMDsKICAgICAgICAgcHNFbmNDLT5sYV9zaGFwZSAgICAgICAgICAgICAgICAg
ICAgICAgID0gNSAqIHBzRW5jQy0+ZnNfa0h6OwogICAgICAgICBwc0VuY0MtPm5TdGF0ZXNEZWxh
eWVkRGVjaXNpb24gICAgICAgICAgPSAzOwogICAgICAgICBwc0VuY0MtPnVzZUludGVycG9sYXRl
ZE5MU0ZzICAgICAgICAgICAgPSAxOwotICAgICAgICBwc0VuY0MtPkxUUFF1YW50TG93Q29tcGxl
eGl0eSAgICAgICAgICAgPSAwOwotICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMg
ICAgICAgICAgICAgPSAxNjsKKyAgICAgICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vydml2b3JzICAg
ICAgICAgICAgID0gODsKICAgICAgICAgcHNFbmNDLT53YXJwaW5nX1ExNiAgICAgICAgICAgICAg
ICAgICAgID0gcHNFbmNDLT5mc19rSHogKiBTSUxLX0ZJWF9DT05TVCggV0FSUElOR19NVUxUSVBM
SUVSLCAxNiApOwogICAgIH0gZWxzZSB7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9u
Q29tcGxleGl0eSAgICAgICA9IFNJTEtfUEVfTUFYX0NPTVBMRVg7CiAgICAgICAgIHBzRW5jQy0+
cGl0Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNiAgICA9IFNJTEtfRklYX0NPTlNUKCAwLjcsIDE2
ICk7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIgICAgICAgICA9IDE2
OwotICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAxNjsK
KyAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIgICAgICAgICAgICAgICAgID0gMjQ7CiAg
ICAgICAgIHBzRW5jQy0+bGFfc2hhcGUgICAgICAgICAgICAgICAgICAgICAgICA9IDUgKiBwc0Vu
Y0MtPmZzX2tIejsKICAgICAgICAgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lzaW9uICAgICAg
ICAgID0gTUFYX0RFTF9ERUNfU1RBVEVTOwogICAgICAgICBwc0VuY0MtPnVzZUludGVycG9sYXRl
ZE5MU0ZzICAgICAgICAgICAgPSAxOwotICAgICAgICBwc0VuY0MtPkxUUFF1YW50TG93Q29tcGxl
eGl0eSAgICAgICAgICAgPSAwOwotICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMg
ICAgICAgICAgICAgPSAzMjsKKyAgICAgICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vydml2b3JzICAg
ICAgICAgICAgID0gMTY7CiAgICAgICAgIHBzRW5jQy0+d2FycGluZ19RMTYgICAgICAgICAgICAg
ICAgICAgICA9IHBzRW5jQy0+ZnNfa0h6ICogU0lMS19GSVhfQ09OU1QoIFdBUlBJTkdfTVVMVElQ
TElFUiwgMTYgKTsKICAgICB9CiAKQEAgLTM4Nyw0MCArMzk2LDI2IEBAIHN0YXRpYyBvcHVzX2lu
dCBzaWxrX3NldHVwX2NvbXBsZXhpdHkoCiAgICAgc2lsa19hc3NlcnQoIHBzRW5jQy0+d2FycGlu
Z19RMTYgICAgICAgICAgICAgPD0gMzI3NjcgICAgICAgICAgICAgICAgICAgICk7CiAgICAgc2ls
a19hc3NlcnQoIHBzRW5jQy0+bGFfc2hhcGUgICAgICAgICAgICAgICAgPD0gTEFfU0hBUEVfTUFY
ICAgICAgICAgICAgICk7CiAgICAgc2lsa19hc3NlcnQoIHBzRW5jQy0+c2hhcGVXaW5MZW5ndGgg
ICAgICAgICAgPD0gU0hBUEVfTFBDX1dJTl9NQVggICAgICAgICk7Ci0gICAgc2lsa19hc3NlcnQo
IHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9ycyAgICAgPD0gTkxTRl9WUV9NQVhfU1VSVklWT1JT
ICAgICk7CiAKICAgICByZXR1cm4gcmV0OwogfQogCiBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19p
bnQgc2lsa19zZXR1cF9MQlJSKAogICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAgICAgICAqcHNF
bmNDLCAgICAgICAgICAgIC8qIEkvTyAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0
IG9wdXNfaW50MzIgICAgICAgICAgICBUYXJnZXRSYXRlX2JwcyAgICAgIC8qIEkgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfRW5jQ29udHJvbFN0cnVjdCAqZW5jQ29u
dHJvbCAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAqLwogKQogewogICAgIG9w
dXNfaW50ICAgTEJSUl9pbl9wcmV2aW91c19wYWNrZXQsIHJldCA9IFNJTEtfTk9fRVJST1I7Ci0g
ICAgb3B1c19pbnQzMiBMQlJSX3JhdGVfdGhyZXNfYnBzOwogCiAgICAgTEJSUl9pbl9wcmV2aW91
c19wYWNrZXQgPSBwc0VuY0MtPkxCUlJfZW5hYmxlZDsKLSAgICBwc0VuY0MtPkxCUlJfZW5hYmxl
ZCA9IDA7Ci0gICAgaWYoIHBzRW5jQy0+dXNlSW5CYW5kRkVDICYmIHBzRW5jQy0+UGFja2V0TG9z
c19wZXJjID4gMCApIHsKLSAgICAgICAgaWYoIHBzRW5jQy0+ZnNfa0h6ID09IDggKSB7Ci0gICAg
ICAgICAgICBMQlJSX3JhdGVfdGhyZXNfYnBzID0gTEJSUl9OQl9NSU5fUkFURV9CUFM7Ci0gICAg
ICAgIH0gZWxzZSBpZiggcHNFbmNDLT5mc19rSHogPT0gMTIgKSB7Ci0gICAgICAgICAgICBMQlJS
X3JhdGVfdGhyZXNfYnBzID0gTEJSUl9NQl9NSU5fUkFURV9CUFM7CisgICAgcHNFbmNDLT5MQlJS
X2VuYWJsZWQgPSBlbmNDb250cm9sLT5MQlJSX2NvZGVkOworICAgIGlmKCBwc0VuY0MtPkxCUlJf
ZW5hYmxlZCApIHsKKyAgICAgICAgLyogU2V0IGdhaW4gaW5jcmVhc2UgZm9yIGNvZGluZyBMQlJS
IGV4Y2l0YXRpb24gKi8KKyAgICAgICAgaWYoIExCUlJfaW5fcHJldmlvdXNfcGFja2V0ID09IDAg
KSB7CisgICAgICAgICAgICAvKiBQcmV2aW91cyBwYWNrZXQgZGlkIG5vdCBoYXZlIExCUlIsIGFu
ZCB3YXMgdGhlcmVmb3JlIGNvZGVkIGF0IGEgaGlnaGVyIGJpdHJhdGUgKi8KKyAgICAgICAgICAg
IHBzRW5jQy0+TEJSUl9HYWluSW5jcmVhc2VzID0gNzsKICAgICAgICAgfSBlbHNlIHsKLSAgICAg
ICAgICAgIExCUlJfcmF0ZV90aHJlc19icHMgPSBMQlJSX1dCX01JTl9SQVRFX0JQUzsKLSAgICAg
ICAgfQotICAgICAgICBMQlJSX3JhdGVfdGhyZXNfYnBzID0gc2lsa19TTVVMV0IoIHNpbGtfTVVM
KCBMQlJSX3JhdGVfdGhyZXNfYnBzLCAxMjUgLSBzaWxrX21pbiggcHNFbmNDLT5QYWNrZXRMb3Nz
X3BlcmMsIDI1ICkgKSwgU0lMS19GSVhfQ09OU1QoIDAuMDEsIDE2ICkgKTsKLQotICAgICAgICBp
ZiggVGFyZ2V0UmF0ZV9icHMgPiBMQlJSX3JhdGVfdGhyZXNfYnBzICkgewotICAgICAgICAgICAg
LyogU2V0IGdhaW4gaW5jcmVhc2UgZm9yIGNvZGluZyBMQlJSIGV4Y2l0YXRpb24gKi8KLSAgICAg
ICAgICAgIGlmKCBMQlJSX2luX3ByZXZpb3VzX3BhY2tldCA9PSAwICkgewotICAgICAgICAgICAg
ICAgIC8qIFByZXZpb3VzIHBhY2tldCBkaWQgbm90IGhhdmUgTEJSUiwgYW5kIHdhcyB0aGVyZWZv
cmUgY29kZWQgYXQgYSBoaWdoZXIgYml0cmF0ZSAqLwotICAgICAgICAgICAgICAgIHBzRW5jQy0+
TEJSUl9HYWluSW5jcmVhc2VzID0gNzsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAg
ICAgICAgcHNFbmNDLT5MQlJSX0dhaW5JbmNyZWFzZXMgPSBzaWxrX21heF9pbnQoIDcgLSBzaWxr
X1NNVUxXQiggKG9wdXNfaW50MzIpcHNFbmNDLT5QYWNrZXRMb3NzX3BlcmMsIFNJTEtfRklYX0NP
TlNUKCAwLjQsIDE2ICkgKSwgMiApOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgcHNFbmND
LT5MQlJSX2VuYWJsZWQgPSAxOworICAgICAgICAgICAgcHNFbmNDLT5MQlJSX0dhaW5JbmNyZWFz
ZXMgPSBzaWxrX21heF9pbnQoIDcgLSBzaWxrX1NNVUxXQiggKG9wdXNfaW50MzIpcHNFbmNDLT5Q
YWNrZXRMb3NzX3BlcmMsIFNJTEtfRklYX0NPTlNUKCAwLjQsIDE2ICkgKSwgMiApOwogICAgICAg
ICB9CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVidWcuaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWJ1Zy5oCmluZGV4
IGVmYjZkM2U5OWU3ZjgzMTc1ZmUwMzQyZGUwMDRjODY3YzA4YWY4ZGIuLjZmNjhjMWNhMGYwMjI1
NzczMzAzOGUwZjkxYzQxOGMzMTlhOTg2YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWJ1Zy5oCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9kZWJ1Zy5oCkBAIC0zOSwyMyArMzksMTAgQEAgZXh0ZXJuICJDIgogCiB1bnNpZ25lZCBs
b25nIEdldEhpZ2hSZXNvbHV0aW9uVGltZSh2b2lkKTsgLyogTyAgdGltZSBpbiB1c2VjKi8KIAot
LyogbWFrZSBTSUxLX0RFQlVHIGRlcGVuZGVudCBvbiBjb21waWxlcidzIF9ERUJVRyAqLwotI2lm
IGRlZmluZWQgX1dJTjMyCi0gICAgI2lmZGVmIF9ERUJVRwotICAgICAgICAjZGVmaW5lIFNJTEtf
REVCVUcgIDEKLSAgICAjZWxzZQotICAgICAgICAjZGVmaW5lIFNJTEtfREVCVUcgIDAKLSAgICAj
ZW5kaWYKLQotICAgIC8qIG92ZXJydWxlIHRoZSBhYm92ZSAqLwotICAgICNpZiAwCi0gICAgLyog
ICNkZWZpbmUgTk9fQVNTRVJUUyovCi0gICAgI3VuZGVmICBTSUxLX0RFQlVHCi0gICAgI2RlZmlu
ZSBTSUxLX0RFQlVHICAxCi0gICAgI2VuZGlmCi0jZWxzZQotICAgICNkZWZpbmUgU0lMS19ERUJV
RyAgMAotI2VuZGlmCisvKiBTZXQgdG8gMSB0byBlbmFibGUgREVCVUdfU1RPUkVfREFUQSgpIG1h
Y3JvcyBmb3IgZHVtcGluZworICogaW50ZXJtZWRpYXRlIHNpZ25hbHMgZnJvbSB0aGUgY29kZWMu
CisgKi8KKyNkZWZpbmUgU0lMS19ERUJVRyAwCiAKIC8qIEZsYWcgZm9yIHVzaW5nIHRpbWVycyAq
LwogI2RlZmluZSBTSUxLX1RJQ19UT0MgICAgMApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlY29kZV9jb3Jl
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZGVjb2RlX2NvcmUuYwppbmRleCBlNTY5YzBlNzJiM2UxNzE4MjZkNzMwYTRiZTY0
ODM2ZmIwZWMwZDlhLi5mZDRlODU3YWZhOGFjY2M2ZDdmYWQyMDNiYjk2MDE4ODlhZDAxZDk1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZGVjb2RlX2NvcmUuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX2NvcmUuYwpAQCAt
MjI1LDggKzIyNSw2IEBAIHZvaWQgc2lsa19kZWNvZGVfY29yZSgKICAgICAgICAgICAgIHB4cVsg
aSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIHNpbGtfU01V
TFdXKCBzTFBDX1ExNFsgTUFYX0xQQ19PUkRFUiArIGkgXSwgR2Fpbl9RMTAgKSwgOCApICk7CiAg
ICAgICAgIH0KIAotICAgICAgICAvKiBERUJVR19TVE9SRV9EQVRBKCBkZWMucGNtLCBweHEsIHBz
RGVjLT5zdWJmcl9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MTYgKSApICovCi0KICAgICAgICAg
LyogVXBkYXRlIExQQyBmaWx0ZXIgc3RhdGUgKi8KICAgICAgICAgc2lsa19tZW1jcHkoIHNMUENf
UTE0LCAmc0xQQ19RMTRbIHBzRGVjLT5zdWJmcl9sZW5ndGggXSwgTUFYX0xQQ19PUkRFUiAqIHNp
emVvZiggb3B1c19pbnQzMiApICk7CiAgICAgICAgIHBleGNfUTE0ICs9IHBzRGVjLT5zdWJmcl9s
ZW5ndGg7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX2ZyYW1lLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX2ZyYW1l
LmMKaW5kZXggYTYwNWQ5NWFjNmFiMTBhN2FjZWY3YTVmYTU3ZTMzZTA0MGJiMGY4Ni4uZGZhNzNj
NGEyOTY3MDYzNGFlYjcwMDYxMjUyYWRhNzEzNmVjMmRjMiAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlY29k
ZV9mcmFtZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9kZWNvZGVfZnJhbWUuYwpAQCAtOTcsNiArOTcsNyBAQCBvcHVz
X2ludCBzaWxrX2RlY29kZV9mcmFtZSgKICAgICAgICAgcHNEZWMtPmZpcnN0X2ZyYW1lX2FmdGVy
X3Jlc2V0ID0gMDsKICAgICB9IGVsc2UgewogICAgICAgICAvKiBIYW5kbGUgcGFja2V0IGxvc3Mg
YnkgZXh0cmFwb2xhdGlvbiAqLworICAgICAgICBwc0RlYy0+aW5kaWNlcy5zaWduYWxUeXBlID0g
cHNEZWMtPnByZXZTaWduYWxUeXBlOwogICAgICAgICBzaWxrX1BMQyggcHNEZWMsIHBzRGVjQ3Ry
bCwgcE91dCwgMSwgYXJjaCApOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlY29kZV9wYXJh
bWV0ZXJzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZGVjb2RlX3BhcmFtZXRlcnMuYwppbmRleCBlMzQ1YjFkY2VmYjk0NjA2
Yjg5Y2E2YTFiYTA3MDAwYjRlZmI0NDJmLi5hNTZhNDA5ODU4NzRmNTc5YjNkNDA5MjFmNTZkMGNl
NDAxY2Q0ODFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX3BhcmFtZXRlcnMuYworKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
ZGVjb2RlX3BhcmFtZXRlcnMuYwpAQCAtNTIsNyArNTIsNyBAQCB2b2lkIHNpbGtfZGVjb2RlX3Bh
cmFtZXRlcnMoCiAgICAgc2lsa19OTFNGX2RlY29kZSggcE5MU0ZfUTE1LCBwc0RlYy0+aW5kaWNl
cy5OTFNGSW5kaWNlcywgcHNEZWMtPnBzTkxTRl9DQiApOwogCiAgICAgLyogQ29udmVydCBOTFNG
IHBhcmFtZXRlcnMgdG8gQVIgcHJlZGljdGlvbiBmaWx0ZXIgY29lZmZpY2llbnRzICovCi0gICAg
c2lsa19OTFNGMkEoIHBzRGVjQ3RybC0+UHJlZENvZWZfUTEyWyAxIF0sIHBOTFNGX1ExNSwgcHNE
ZWMtPkxQQ19vcmRlciApOworICAgIHNpbGtfTkxTRjJBKCBwc0RlY0N0cmwtPlByZWRDb2VmX1Ex
MlsgMSBdLCBwTkxTRl9RMTUsIHBzRGVjLT5MUENfb3JkZXIsIHBzRGVjLT5hcmNoICk7CiAKICAg
ICAvKiBJZiBqdXN0IHJlc2V0LCBlLmcuLCBiZWNhdXNlIGludGVybmFsIEZzIGNoYW5nZWQsIGRv
IG5vdCBhbGxvdyBpbnRlcnBvbGF0aW9uICovCiAgICAgLyogaW1wcm92ZXMgdGhlIGNhc2Ugb2Yg
cGFja2V0IGxvc3MgaW4gdGhlIGZpcnN0IGZyYW1lIGFmdGVyIGEgc3dpdGNoICAgICAgICAgICAq
LwpAQCAtNjksNyArNjksNyBAQCB2b2lkIHNpbGtfZGVjb2RlX3BhcmFtZXRlcnMoCiAgICAgICAg
IH0KIAogICAgICAgICAvKiBDb252ZXJ0IE5MU0YgcGFyYW1ldGVycyB0byBBUiBwcmVkaWN0aW9u
IGZpbHRlciBjb2VmZmljaWVudHMgKi8KLSAgICAgICAgc2lsa19OTFNGMkEoIHBzRGVjQ3RybC0+
UHJlZENvZWZfUTEyWyAwIF0sIHBOTFNGMF9RMTUsIHBzRGVjLT5MUENfb3JkZXIgKTsKKyAgICAg
ICAgc2lsa19OTFNGMkEoIHBzRGVjQ3RybC0+UHJlZENvZWZfUTEyWyAwIF0sIHBOTFNGMF9RMTUs
IHBzRGVjLT5MUENfb3JkZXIsIHBzRGVjLT5hcmNoICk7CiAgICAgfSBlbHNlIHsKICAgICAgICAg
LyogQ29weSBMUEMgY29lZmZpY2llbnRzIGZvciBmaXJzdCBoYWxmIGZyb20gc2Vjb25kIGhhbGYg
Ki8KICAgICAgICAgc2lsa19tZW1jcHkoIHBzRGVjQ3RybC0+UHJlZENvZWZfUTEyWyAwIF0sIHBz
RGVjQ3RybC0+UHJlZENvZWZfUTEyWyAxIF0sIHBzRGVjLT5MUENfb3JkZXIgKiBzaXplb2YoIG9w
dXNfaW50MTYgKSApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlZmluZS5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlZmluZS5oCmlu
ZGV4IDE5YzliMDBlMjU5ZTc3MTZiY2IwMjM1NGUzOTE0YjEzOTYwMmYzNTMuLjIyZmQ3MjBiOTc2
YWYyMzNlYzJkYWZjODNkNmQ5NWJlMjc5M2VkNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWZpbmUuaAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZGVmaW5lLmgKQEAgLTU2LDYgKzU2LDEyIEBAIGV4dGVybiAiQyIKIC8qIERUWCBz
ZXR0aW5ncyAqLwogI2RlZmluZSBOQl9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFggICAgICAgICAg
ICAgMTAgICAgICAvKiBlcSAyMDAgbXMgKi8KICNkZWZpbmUgTUFYX0NPTlNFQ1VUSVZFX0RUWCAg
ICAgICAgICAgICAgICAgICAgIDIwICAgICAgLyogZXEgNDAwIG1zICovCisjZGVmaW5lIERUWF9B
Q1RJVklUWV9USFJFU0hPTEQgICAgICAgICAgICAgICAgICAwLjFmCisKKy8qIFZBRCBkZWNpc2lv
biAqLworI2RlZmluZSBWQURfTk9fREVDSVNJT04gICAgICAgICAgICAgICAgICAgICAgICAgLTEK
KyNkZWZpbmUgVkFEX05PX0FDVElWSVRZICAgICAgICAgICAgICAgICAgICAgICAgIDAKKyNkZWZp
bmUgVkFEX0FDVElWSVRZICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEKIAogLyogTWF4aW11
bSBzYW1wbGluZyBmcmVxdWVuY3kgKi8KICNkZWZpbmUgTUFYX0ZTX0tIWiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDE2CkBAIC0xNDcsNyArMTUzLDcgQEAgZXh0ZXJuICJDIgogI2RlZmlu
ZSBVU0VfSEFSTV9TSEFQSU5HICAgICAgICAgICAgICAgICAgICAgICAgMQogCiAvKiBNYXggTFBD
IG9yZGVyIG9mIG5vaXNlIHNoYXBpbmcgZmlsdGVycyAqLwotI2RlZmluZSBNQVhfU0hBUEVfTFBD
X09SREVSICAgICAgICAgICAgICAgICAgICAgMTYKKyNkZWZpbmUgTUFYX1NIQVBFX0xQQ19PUkRF
UiAgICAgICAgICAgICAgICAgICAgIDI0CiAKICNkZWZpbmUgSEFSTV9TSEFQRV9GSVJfVEFQUyAg
ICAgICAgICAgICAgICAgICAgIDMKIApAQCAtMTU3LDggKzE2Myw3IEBAIGV4dGVybiAiQyIKICNk
ZWZpbmUgTFRQX0JVRl9MRU5HVEggICAgICAgICAgICAgICAgICAgICAgICAgIDUxMgogI2RlZmlu
ZSBMVFBfTUFTSyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCBMVFBfQlVGX0xFTkdU
SCAtIDEgKQogCi0jZGVmaW5lIERFQ0lTSU9OX0RFTEFZICAgICAgICAgICAgICAgICAgICAgICAg
ICAzMgotI2RlZmluZSBERUNJU0lPTl9ERUxBWV9NQVNLICAgICAgICAgICAgICAgICAgICAgKCBE
RUNJU0lPTl9ERUxBWSAtIDEgKQorI2RlZmluZSBERUNJU0lPTl9ERUxBWSAgICAgICAgICAgICAg
ICAgICAgICAgICAgNDAKIAogLyogTnVtYmVyIG9mIHN1YmZyYW1lcyBmb3IgZXhjaXRhdGlvbiBl
bnRyb3B5IGNvZGluZyAqLwogI2RlZmluZSBTSEVMTF9DT0RFQ19GUkFNRV9MRU5HVEggICAgICAg
ICAgICAgICAgMTYKQEAgLTE3MywxMSArMTc4LDcgQEAgZXh0ZXJuICJDIgogCiAjZGVmaW5lIE1B
WF9NQVRSSVhfU0laRSAgICAgICAgICAgICAgICAgICAgICAgICBNQVhfTFBDX09SREVSIC8qIE1h
eCBvZiBMUEMgT3JkZXIgYW5kIExUUCBvcmRlciAqLwogCi0jaWYoIE1BWF9MUENfT1JERVIgPiBE
RUNJU0lPTl9ERUxBWSApCiAjIGRlZmluZSBOU1FfTFBDX0JVRl9MRU5HVEggICAgICAgICAgICAg
ICAgICAgICBNQVhfTFBDX09SREVSCi0jZWxzZQotIyBkZWZpbmUgTlNRX0xQQ19CVUZfTEVOR1RI
ICAgICAgICAgICAgICAgICAgICAgREVDSVNJT05fREVMQVkKLSNlbmRpZgogCiAvKioqKioqKioq
KioqKioqKioqKioqKioqKioqLwogLyogVm9pY2UgYWN0aXZpdHkgZGV0ZWN0b3IgKi8KQEAgLTIw
NSw3ICsyMDYsNiBAQCBleHRlcm4gIkMiCiAvKioqKioqKioqKioqKioqKioqLwogI2RlZmluZSBO
TFNGX1dfUSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMgogI2RlZmluZSBOTFNGX1ZR
X01BWF9WRUNUT1JTICAgICAgICAgICAgICAgICAgICAgMzIKLSNkZWZpbmUgTkxTRl9WUV9NQVhf
U1VSVklWT1JTICAgICAgICAgICAgICAgICAgIDMyCiAjZGVmaW5lIE5MU0ZfUVVBTlRfTUFYX0FN
UExJVFVERSAgICAgICAgICAgICAgICA0CiAjZGVmaW5lIE5MU0ZfUVVBTlRfTUFYX0FNUExJVFVE
RV9FWFQgICAgICAgICAgICAxMAogI2RlZmluZSBOTFNGX1FVQU5UX0xFVkVMX0FESiAgICAgICAg
ICAgICAgICAgICAgMC4xCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZW5jX0FQSS5jIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2VuY19BUEku
YwppbmRleCBmODA2MDI4NmRiYWZhOWExZmE3ODBmNGViNzQ0NmFkZGRmMmVkMDhlLi4wYTYyYTNj
MWQ3MmFmZDBhNjIxMjhlNDJkY2FhODAzYWQwZjQ0MzE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZW5jX0FQ
SS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9lbmNfQVBJLmMKQEAgLTE0NCw3ICsxNDQsOCBAQCBvcHVzX2ludCBzaWxr
X0VuY29kZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJu
cyBlcnJvciBjbwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgblNhbXBsZXNJ
biwgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBzYW1wbGVzIGluIGlucHV0IHZlY3RvciAgICAg
ICAgICAgICAgICovCiAgICAgZWNfZW5jICAgICAgICAgICAgICAgICAgICAgICAgICAqcHNSYW5n
ZUVuYywgICAgICAgIC8qIEkvTyAgQ29tcHJlc3NvciBkYXRhIHN0cnVjdHVyZSAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgICpuQnl0
ZXNPdXQsICAgICAgICAgLyogSS9PICBOdW1iZXIgb2YgYnl0ZXMgaW4gcGF5bG9hZCAoaW5wdXQ6
IE1heCBieXRlcykgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgcHJl
ZmlsbEZsYWcgICAgICAgICAvKiBJICAgIEZsYWcgdG8gaW5kaWNhdGUgcHJlZmlsbGluZyBidWZm
ZXJzIG5vIGNvZGluZyAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBw
cmVmaWxsRmxhZywgICAgICAgIC8qIEkgICAgRmxhZyB0byBpbmRpY2F0ZSBwcmVmaWxsaW5nIGJ1
ZmZlcnMgbm8gY29kaW5nICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAg
IGFjdGl2aXR5ICAgICAgICAgICAgLyogSSAgICBEZWNpc2lvbiBvZiBPcHVzIHZvaWNlIGFjdGl2
aXR5IGRldGVjdG9yICAgICAgICAqLwogKQogewogICAgIG9wdXNfaW50ICAgbiwgaSwgbkJpdHMs
IGZsYWdzLCB0bXBfcGF5bG9hZFNpemVfbXMgPSAwLCB0bXBfY29tcGxleGl0eSA9IDAsIHJldCA9
IDA7CkBAIC0yMzMsMTEgKzIzNCwxMCBAQCBvcHVzX2ludCBzaWxrX0VuY29kZSggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBlcnJvciBjbwogICAgICAg
ICB9CiAgICAgfQogCi0gICAgVGFyZ2V0UmF0ZV9icHMgPSBzaWxrX1JTSElGVDMyKCBlbmNDb250
cm9sLT5iaXRSYXRlLCBlbmNDb250cm9sLT5uQ2hhbm5lbHNJbnRlcm5hbCAtIDEgKTsKICAgICBm
b3IoIG4gPSAwOyBuIDwgZW5jQ29udHJvbC0+bkNoYW5uZWxzSW50ZXJuYWw7IG4rKyApIHsKICAg
ICAgICAgLyogRm9yY2UgdGhlIHNpZGUgY2hhbm5lbCB0byB0aGUgc2FtZSByYXRlIGFzIHRoZSBt
aWQgKi8KICAgICAgICAgb3B1c19pbnQgZm9yY2VfZnNfa0h6ID0gKG49PTEpID8gcHNFbmMtPnN0
YXRlX0Z4eFswXS5zQ21uLmZzX2tIeiA6IDA7Ci0gICAgICAgIGlmKCAoIHJldCA9IHNpbGtfY29u
dHJvbF9lbmNvZGVyKCAmcHNFbmMtPnN0YXRlX0Z4eFsgbiBdLCBlbmNDb250cm9sLCBUYXJnZXRS
YXRlX2JwcywgcHNFbmMtPmFsbG93QmFuZHdpZHRoU3dpdGNoLCBuLCBmb3JjZV9mc19rSHogKSAp
ICE9IDAgKSB7CisgICAgICAgIGlmKCAoIHJldCA9IHNpbGtfY29udHJvbF9lbmNvZGVyKCAmcHNF
bmMtPnN0YXRlX0Z4eFsgbiBdLCBlbmNDb250cm9sLCBwc0VuYy0+YWxsb3dCYW5kd2lkdGhTd2l0
Y2gsIG4sIGZvcmNlX2ZzX2tIeiApICkgIT0gMCApIHsKICAgICAgICAgICAgIHNpbGtfYXNzZXJ0
KCAwICk7CiAgICAgICAgICAgICBSRVNUT1JFX1NUQUNLOwogICAgICAgICAgICAgcmV0dXJuIHJl
dDsKQEAgLTQxNiw3ICs0MTYsNiBAQCBvcHVzX2ludCBzaWxrX0VuY29kZSggICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBlcnJvciBjbwogICAgICAgICAg
ICAgICAgICAgICAvKiBSZXNldCBzaWRlIGNoYW5uZWwgZW5jb2RlciBtZW1vcnkgZm9yIGZpcnN0
IGZyYW1lIHdpdGggc2lkZSBjb2RpbmcgKi8KICAgICAgICAgICAgICAgICAgICAgaWYoIHBzRW5j
LT5wcmV2X2RlY29kZV9vbmx5X21pZGRsZSA9PSAxICkgewogICAgICAgICAgICAgICAgICAgICAg
ICAgc2lsa19tZW1zZXQoICZwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc1NoYXBlLCAgICAgICAgICAg
ICAgIDAsIHNpemVvZiggcHNFbmMtPnN0YXRlX0Z4eFsgMSBdLnNTaGFwZSApICk7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICBzaWxrX21lbXNldCggJnBzRW5jLT5zdGF0ZV9GeHhbIDEgXS5zUHJl
ZmlsdCwgICAgICAgICAgICAgMCwgc2l6ZW9mKCBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc1ByZWZp
bHQgKSApOwogICAgICAgICAgICAgICAgICAgICAgICAgc2lsa19tZW1zZXQoICZwc0VuYy0+c3Rh
dGVfRnh4WyAxIF0uc0Ntbi5zTlNRLCAgICAgICAgICAgIDAsIHNpemVvZiggcHNFbmMtPnN0YXRl
X0Z4eFsgMSBdLnNDbW4uc05TUSApICk7CiAgICAgICAgICAgICAgICAgICAgICAgICBzaWxrX21l
bXNldCggcHNFbmMtPnN0YXRlX0Z4eFsgMSBdLnNDbW4ucHJldl9OTFNGcV9RMTUsICAgMCwgc2l6
ZW9mKCBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5wcmV2X05MU0ZxX1ExNSApICk7CiAgICAg
ICAgICAgICAgICAgICAgICAgICBzaWxrX21lbXNldCggJnBzRW5jLT5zdGF0ZV9GeHhbIDEgXS5z
Q21uLnNMUC5Jbl9MUF9TdGF0ZSwgMCwgc2l6ZW9mKCBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Nt
bi5zTFAuSW5fTFBfU3RhdGUgKSApOwpAQCAtNDI3LDcgKzQyNiw3IEBAIG9wdXNfaW50IHNpbGtf
RW5jb2RlKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5z
IGVycm9yIGNvCiAgICAgICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c3RhdGVfRnh4WyAxIF0u
c0Ntbi5zTlNRLnByZXZfZ2Fpbl9RMTYgICAgICA9IDY1NTM2OwogICAgICAgICAgICAgICAgICAg
ICAgICAgcHNFbmMtPnN0YXRlX0Z4eFsgMSBdLnNDbW4uZmlyc3RfZnJhbWVfYWZ0ZXJfcmVzZXQg
PSAxOwogICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIHNpbGtfZW5j
b2RlX2RvX1ZBRF9GeHgoICZwc0VuYy0+c3RhdGVfRnh4WyAxIF0gKTsKKyAgICAgICAgICAgICAg
ICAgICAgc2lsa19lbmNvZGVfZG9fVkFEX0Z4eCggJnBzRW5jLT5zdGF0ZV9GeHhbIDEgXSwgYWN0
aXZpdHkgKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICBw
c0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5WQURfZmxhZ3NbIHBzRW5jLT5zdGF0ZV9GeHhbIDAg
XS5zQ21uLm5GcmFtZXNFbmNvZGVkIF0gPSAwOwogICAgICAgICAgICAgICAgIH0KQEAgLTQ0Miw3
ICs0NDEsNyBAQCBvcHVzX2ludCBzaWxrX0VuY29kZSggICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBlcnJvciBjbwogICAgICAgICAgICAgICAgIHNpbGtf
bWVtY3B5KCBwc0VuYy0+c3RhdGVfRnh4WyAwIF0uc0Ntbi5pbnB1dEJ1ZiwgcHNFbmMtPnNTdGVy
ZW8uc01pZCwgMiAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CiAgICAgICAgICAgICAgICAgc2ls
a19tZW1jcHkoIHBzRW5jLT5zU3RlcmVvLnNNaWQsICZwc0VuYy0+c3RhdGVfRnh4WyAwIF0uc0Nt
bi5pbnB1dEJ1ZlsgcHNFbmMtPnN0YXRlX0Z4eFsgMCBdLnNDbW4uZnJhbWVfbGVuZ3RoIF0sIDIg
KiBzaXplb2YoIG9wdXNfaW50MTYgKSApOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgc2ls
a19lbmNvZGVfZG9fVkFEX0Z4eCggJnBzRW5jLT5zdGF0ZV9GeHhbIDAgXSApOworICAgICAgICAg
ICAgc2lsa19lbmNvZGVfZG9fVkFEX0Z4eCggJnBzRW5jLT5zdGF0ZV9GeHhbIDAgXSwgYWN0aXZp
dHkgKTsKIAogICAgICAgICAgICAgLyogRW5jb2RlICovCiAgICAgICAgICAgICBmb3IoIG4gPSAw
OyBuIDwgZW5jQ29udHJvbC0+bkNoYW5uZWxzSW50ZXJuYWw7IG4rKyApIHsKQEAgLTU1Nyw2ICs1
NTYsMTAgQEAgb3B1c19pbnQgc2lsa19FbmNvZGUoICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBPICAgIFJldHVybnMgZXJyb3IgY28KICAgICAgICAgfQogICAgIH0KIAorICAg
IGVuY0NvbnRyb2wtPnNpZ25hbFR5cGUgPSBwc0VuYy0+c3RhdGVfRnh4WzBdLnNDbW4uaW5kaWNl
cy5zaWduYWxUeXBlOworICAgIGVuY0NvbnRyb2wtPm9mZnNldCA9IHNpbGtfUXVhbnRpemF0aW9u
X09mZnNldHNfUTEwCisgICAgICAgICAgICAgICAgICAgICAgICAgWyBwc0VuYy0+c3RhdGVfRnh4
WzBdLnNDbW4uaW5kaWNlcy5zaWduYWxUeXBlID4+IDEgXQorICAgICAgICAgICAgICAgICAgICAg
ICAgIFsgcHNFbmMtPnN0YXRlX0Z4eFswXS5zQ21uLmluZGljZXMucXVhbnRPZmZzZXRUeXBlIF07
CiAgICAgUkVTVE9SRV9TVEFDSzsKICAgICByZXR1cm4gcmV0OwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2ZpeGVkL2FybS93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9hcm0uaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9h
cm0vd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYXJtLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTk5MmU0MzI4
ODUxOWY4YWRiNWZmNGQzYzM4MjQ4MDRjZGZhNDRjNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9m
aXhlZC9hcm0vd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYXJtLmgKQEAgLTAsMCArMSw2OCBA
QAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqCitDb3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4KK1JlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCithcmUgbWV0OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCit0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLSBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKy0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2Np
ZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKK25hbWVzIG9mIHNwZWNpZmljIGNvbnRy
aWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCitwcm9kdWN0cyBkZXJp
dmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KK3Bl
cm1pc3Npb24uCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKK0FORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKK0lNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFCitBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCitTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKK0lOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUKK1BPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNp
Zm5kZWYgU0lMS19XQVJQRURfQVVUT0NPUlJFTEFUSU9OX0ZJWF9BUk1fSAorIyBkZWZpbmUgU0lM
S19XQVJQRURfQVVUT0NPUlJFTEFUSU9OX0ZJWF9BUk1fSAorCisjIGluY2x1ZGUgImNlbHQvYXJt
L2FybWNwdS5oIgorCisjIGlmIGRlZmluZWQoRklYRURfUE9JTlQpCisKKyMgIGlmIGRlZmluZWQo
T1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKQordm9pZCBzaWxrX3dhcnBlZF9hdXRvY29ycmVs
YXRpb25fRklYX25lb24oCisgICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAqY29y
ciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXN1bHQgW29yZGVy
ICsgMV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICAgICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICpzY2FsZSwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFNjYWxpbmcgb2YgdGhlIGNvcnJl
bGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKmlucHV0LCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgZGF0YSB0byBjb3JyZWxhdGUgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
Y29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICB3YXJwaW5nX1ExNiwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBXYXJwaW5nIGNvZWZmaWNpZW50ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgQ29ycmVsYXRpb24gb3JkZXIgKGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCispOworCisjICBpZiAhZGVmaW5lZChPUFVT
X0hBVkVfUlRDRCkgJiYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT04pCisjICAgZGVmaW5l
IE9WRVJSSURFX3NpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVggKDEpCisjICAgZGVmaW5l
IHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoY29yciwgc2NhbGUsIGlucHV0LCB3YXJw
aW5nX1ExNiwgbGVuZ3RoLCBvcmRlciwgYXJjaCkgXAorICAgICgodm9pZCkoYXJjaCksIFBSRVNV
TUVfTkVPTihzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKShjb3JyLCBzY2FsZSwgaW5w
dXQsIHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVyKSkKKyMgIGVuZGlmCisjICBlbmRpZgorCisj
ICBpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKQor
LypJcyBydW4tdGltZSBDUFUgZGV0ZWN0aW9uIGVuYWJsZWQgb24gdGhpcyBwbGF0Zm9ybT8qLwor
IyAgIGlmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpICYmIChkZWZpbmVkKE9QVVNfQVJNX01BWV9I
QVZFX05FT05fSU5UUikgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpKQor
ZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxLX1dBUlBFRF9BVVRPQ09SUkVMQVRJT05fRklYX0lNUExb
T1BVU19BUkNITUFTSysxXSkob3B1c19pbnQzMiosIG9wdXNfaW50KiwgY29uc3Qgb3B1c19pbnQx
NiosIGNvbnN0IG9wdXNfaW50LCBjb25zdCBvcHVzX2ludCwgY29uc3Qgb3B1c19pbnQpOworIyAg
ICBkZWZpbmUgT1ZFUlJJREVfc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCAoMSkKKyMg
ICAgZGVmaW5lIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoY29yciwgc2NhbGUsIGlu
cHV0LCB3YXJwaW5nX1ExNiwgbGVuZ3RoLCBvcmRlciwgYXJjaCkgXAorICAgICgoKlNJTEtfV0FS
UEVEX0FVVE9DT1JSRUxBVElPTl9GSVhfSU1QTFsoYXJjaCkmT1BVU19BUkNITUFTS10pKGNvcnIs
IHNjYWxlLCBpbnB1dCwgd2FycGluZ19RMTYsIGxlbmd0aCwgb3JkZXIpKQorIyAgIGVsaWYgZGVm
aW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikKKyMgICAgZGVmaW5lIE9WRVJSSURFX3Np
bGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVggKDEpCisjICAgIGRlZmluZSBzaWxrX3dhcnBl
ZF9hdXRvY29ycmVsYXRpb25fRklYKGNvcnIsIHNjYWxlLCBpbnB1dCwgd2FycGluZ19RMTYsIGxl
bmd0aCwgb3JkZXIsIGFyY2gpIFwKKyAgICAoKHZvaWQpKGFyY2gpLCBzaWxrX3dhcnBlZF9hdXRv
Y29ycmVsYXRpb25fRklYX25lb24oY29yciwgc2NhbGUsIGlucHV0LCB3YXJwaW5nX1ExNiwgbGVu
Z3RoLCBvcmRlcikpCisjICAgZW5kaWYKKyMgIGVuZGlmCisKKyMgZW5kaWYgLyogZW5kIEZJWEVE
X1BPSU5UICovCisKKyNlbmRpZiAvKiBlbmQgU0lMS19XQVJQRURfQVVUT0NPUlJFTEFUSU9OX0ZJ
WF9BUk1fSCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2FybS93YXJwZWRfYXV0b2NvcnJlbGF0
aW9uX0ZJWF9uZW9uX2ludHIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9hcm0vd2FycGVkX2F1dG9jb3JyZWxhdGlv
bl9GSVhfbmVvbl9pbnRyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDBhNzBjYjUxZmZiZjM5YzM3ZWEwNDFiYTY2
ZWQwNjRmMGQzMDg0ZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9hcm0vd2FycGVkX2F1
dG9jb3JyZWxhdGlvbl9GSVhfbmVvbl9pbnRyLmMKQEAgLTAsMCArMSwyNjAgQEAKKy8qKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKgorQ29weXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuLCBKZWFuLU1hcmMgVmFsaW4K
K1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCit0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLSBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKy0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5l
dCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKK25hbWVzIG9mIHNwZWNpZmlj
IGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCitwcm9kdWN0
cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4KK3Blcm1pc3Npb24uCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKK0FORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKK0lN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
CisKKyNpZmRlZiBIQVZFX0NPTkZJR19ICisjaW5jbHVkZSAiY29uZmlnLmgiCisjZW5kaWYKKwor
I2luY2x1ZGUgPGFybV9uZW9uLmg+CisjaWZkZWYgT1BVU19DSEVDS19BU00KKyMgaW5jbHVkZSA8
c3RyaW5nLmg+CisjZW5kaWYKKyNpbmNsdWRlICJzdGFja19hbGxvYy5oIgorI2luY2x1ZGUgIm1h
aW5fRklYLmgiCisKK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIGNhbGNfY29yciggY29uc3Qgb3B1
c19pbnQzMiAqY29uc3QgaW5wdXRfUVMsIG9wdXNfaW50NjQgKmNvbnN0IGNvcnJfUUMsIGNvbnN0
IG9wdXNfaW50IG9mZnNldCwgY29uc3QgaW50MzJ4NF90IHN0YXRlX1FTX3MzMng0ICkKK3sKKyAg
ICBpbnQ2NHgyX3QgY29ycl9RQ19zNjR4MlsgMiBdLCB0X3M2NHgyWyAyIF07CisgICAgY29uc3Qg
aW50MzJ4NF90IGlucHV0X1FTX3MzMng0ID0gdmxkMXFfczMyKCBpbnB1dF9RUyArIG9mZnNldCAp
OworICAgIGNvcnJfUUNfczY0eDJbIDAgXSA9IHZsZDFxX3M2NCggY29ycl9RQyArIG9mZnNldCAr
IDAgKTsKKyAgICBjb3JyX1FDX3M2NHgyWyAxIF0gPSB2bGQxcV9zNjQoIGNvcnJfUUMgKyBvZmZz
ZXQgKyAyICk7CisgICAgdF9zNjR4MlsgMCBdID0gdm11bGxfczMyKCB2Z2V0X2xvd19zMzIoIHN0
YXRlX1FTX3MzMng0ICksIHZnZXRfbG93X3MzMiggaW5wdXRfUVNfczMyeDQgKSApOworICAgIHRf
czY0eDJbIDEgXSA9IHZtdWxsX3MzMiggdmdldF9oaWdoX3MzMiggc3RhdGVfUVNfczMyeDQgKSwg
dmdldF9oaWdoX3MzMiggaW5wdXRfUVNfczMyeDQgKSApOworICAgIGNvcnJfUUNfczY0eDJbIDAg
XSA9IHZzcmFxX25fczY0KCBjb3JyX1FDX3M2NHgyWyAwIF0sIHRfczY0eDJbIDAgXSwgMiAqIFFT
IC0gUUMgKTsKKyAgICBjb3JyX1FDX3M2NHgyWyAxIF0gPSB2c3JhcV9uX3M2NCggY29ycl9RQ19z
NjR4MlsgMSBdLCB0X3M2NHgyWyAxIF0sIDIgKiBRUyAtIFFDICk7CisgICAgdnN0MXFfczY0KCBj
b3JyX1FDICsgb2Zmc2V0ICsgMCwgY29ycl9RQ19zNjR4MlsgMCBdICk7CisgICAgdnN0MXFfczY0
KCBjb3JyX1FDICsgb2Zmc2V0ICsgMiwgY29ycl9RQ19zNjR4MlsgMSBdICk7Cit9CisKK3N0YXRp
YyBPUFVTX0lOTElORSBpbnQzMng0X3QgY2FsY19zdGF0ZSggY29uc3QgaW50MzJ4NF90IHN0YXRl
X1FTMF9zMzJ4NCwgY29uc3QgaW50MzJ4NF90IHN0YXRlX1FTMF8xX3MzMng0LCBjb25zdCBpbnQz
Mng0X3Qgc3RhdGVfUVMxXzFfczMyeDQsIGNvbnN0IGludDMyeDRfdCB3YXJwaW5nX1ExNl9zMzJ4
NCApCit7CisgICAgaW50MzJ4NF90IHRfczMyeDQgPSB2c3VicV9zMzIoIHN0YXRlX1FTMF9zMzJ4
NCwgc3RhdGVfUVMwXzFfczMyeDQgKTsKKyAgICB0X3MzMng0ID0gdnFkbXVsaHFfczMyKCB0X3Mz
Mng0LCB3YXJwaW5nX1ExNl9zMzJ4NCApOworICAgIHJldHVybiB2YWRkcV9zMzIoIHN0YXRlX1FT
MV8xX3MzMng0LCB0X3MzMng0ICk7Cit9CisKK3ZvaWQgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0
aW9uX0ZJWF9uZW9uKAorICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgKmNvcnIs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmVzdWx0IFtvcmRlciAr
IDFdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgICAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAqc2NhbGUsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBTY2FsaW5nIG9mIHRoZSBjb3JyZWxh
dGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICppbnB1dCwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IGRhdGEgdG8gY29ycmVsYXRlICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgd2FycGluZ19RMTYsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgV2FycGluZyBjb2VmZmljaWVudCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgICAgICBsZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBMZW5ndGggb2YgaW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIENvcnJlbGF0aW9uIG9yZGVyIChldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworKQoreworICAgIGlmKCAoIE1BWF9TSEFQRV9M
UENfT1JERVIgPiAyNCApIHx8ICggb3JkZXIgPCA2ICkgKSB7CisgICAgICAgIHNpbGtfd2FycGVk
X2F1dG9jb3JyZWxhdGlvbl9GSVhfYyggY29yciwgc2NhbGUsIGlucHV0LCB3YXJwaW5nX1ExNiwg
bGVuZ3RoLCBvcmRlciApOworICAgIH0gZWxzZSB7CisgICAgICAgIG9wdXNfaW50ICAgICAgIG4s
IGksIGxzaDsKKyAgICAgICAgb3B1c19pbnQ2NCAgICAgY29ycl9RQ1sgTUFYX1NIQVBFX0xQQ19P
UkRFUiArIDEgXSA9IHsgMCB9OyAvKiBJbiByZXZlcnNlIG9yZGVyICovCisgICAgICAgIG9wdXNf
aW50NjQgICAgIGNvcnJfUUNfb3JkZXJUOworICAgICAgICBpbnQ2NHgyX3QgICAgICBsc2hfczY0
eDI7CisgICAgICAgIGNvbnN0IG9wdXNfaW50IG9yZGVyVCA9ICggb3JkZXIgKyAzICkgJiB+MzsK
KyAgICAgICAgb3B1c19pbnQ2NCAgICAgKmNvcnJfUUNUOworICAgICAgICBvcHVzX2ludDMyICAg
ICAqaW5wdXRfUVM7CisgICAgICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIGlucHV0X1FTVCApOwor
ICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBzdGF0ZSApOworICAgICAgICBTQVZFX1NUQUNL
OworCisgICAgICAgIC8qIE9yZGVyIG11c3QgYmUgZXZlbiAqLworICAgICAgICBzaWxrX2Fzc2Vy
dCggKCBvcmRlciAmIDEgKSA9PSAwICk7CisgICAgICAgIHNpbGtfYXNzZXJ0KCAyICogUVMgLSBR
QyA+PSAwICk7CisKKyAgICAgICAgQUxMT0MoIGlucHV0X1FTVCwgbGVuZ3RoICsgMiAqIE1BWF9T
SEFQRV9MUENfT1JERVIsIG9wdXNfaW50MzIgKTsKKworICAgICAgICBpbnB1dF9RUyA9IGlucHV0
X1FTVDsKKyAgICAgICAgLyogaW5wdXRfUVMgaGFzIHplcm8gcGFkZGluZ3MgaW4gdGhlIGJlZ2lu
bmluZyBhbmQgZW5kLiAqLworICAgICAgICB2c3QxcV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9uX3Mz
MiggMCApICk7CisgICAgICAgIGlucHV0X1FTICs9IDQ7CisgICAgICAgIHZzdDFxX3MzMiggaW5w
dXRfUVMsIHZkdXBxX25fczMyKCAwICkgKTsKKyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAgICAg
ICAgdnN0MXFfczMyKCBpbnB1dF9RUywgdmR1cHFfbl9zMzIoIDAgKSApOworICAgICAgICBpbnB1
dF9RUyArPSA0OworICAgICAgICB2c3QxcV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9uX3MzMiggMCAp
ICk7CisgICAgICAgIGlucHV0X1FTICs9IDQ7CisgICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMs
IHZkdXBxX25fczMyKCAwICkgKTsKKyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAgICAgICAgdnN0
MXFfczMyKCBpbnB1dF9RUywgdmR1cHFfbl9zMzIoIDAgKSApOworICAgICAgICBpbnB1dF9RUyAr
PSA0OworCisgICAgICAgIC8qIExvb3Agb3ZlciBzYW1wbGVzICovCisgICAgICAgIGZvciggbiA9
IDA7IG4gPCBsZW5ndGggLSA3OyBuICs9IDgsIGlucHV0X1FTICs9IDggKSB7CisgICAgICAgICAg
ICBjb25zdCBpbnQxNng4X3QgdDBfczE2eDQgPSB2bGQxcV9zMTYoIGlucHV0ICsgbiApOworICAg
ICAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUyArIDAsIHZzaGxsX25fczE2KCB2Z2V0X2xvd19z
MTYoIHQwX3MxNng0ICksIFFTICkgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMg
KyA0LCB2c2hsbF9uX3MxNiggdmdldF9oaWdoX3MxNiggdDBfczE2eDQgKSwgUVMgKSApOworICAg
ICAgICB9CisgICAgICAgIGZvciggOyBuIDwgbGVuZ3RoOyBuKyssIGlucHV0X1FTKysgKSB7Cisg
ICAgICAgICAgICBpbnB1dF9RU1sgMCBdID0gc2lsa19MU0hJRlQzMiggKG9wdXNfaW50MzIpaW5w
dXRbIG4gXSwgUVMgKTsKKyAgICAgICAgfQorICAgICAgICB2c3QxcV9zMzIoIGlucHV0X1FTLCB2
ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlucHV0X1FTICs9IDQ7CisgICAgICAgIHZzdDFx
X3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMyKCAwICkgKTsKKyAgICAgICAgaW5wdXRfUVMgKz0g
NDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUywgdmR1cHFfbl9zMzIoIDAgKSApOworICAg
ICAgICBpbnB1dF9RUyArPSA0OworICAgICAgICB2c3QxcV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9u
X3MzMiggMCApICk7CisgICAgICAgIGlucHV0X1FTICs9IDQ7CisgICAgICAgIHZzdDFxX3MzMigg
aW5wdXRfUVMsIHZkdXBxX25fczMyKCAwICkgKTsKKyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAg
ICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUywgdmR1cHFfbl9zMzIoIDAgKSApOworICAgICAgICBp
bnB1dF9RUyA9IGlucHV0X1FTVCArIE1BWF9TSEFQRV9MUENfT1JERVIgLSBvcmRlclQ7CisKKyAg
ICAgICAgLyogVGhlIGZvbGxvd2luZyBsb29wIHJ1bnMgKCBsZW5ndGggKyBvcmRlciApIHRpbWVz
LCB3aXRoICggb3JkZXIgKSBleHRyYSBlcGlsb2d1ZXMuICAgICAgICAgICAgICAgICAgKi8KKyAg
ICAgICAgLyogVGhlIHplcm8gcGFkZGluZ3MgaW4gaW5wdXRfUVMgZ3VhcmFudGVlIGNvcnJfUUMn
cyBjb3JyZWN0bmVzcyBldmVuIHdpdGggdGhlIGV4dHJhIGVwaWxvZ3Vlcy4gICAgICAgKi8KKyAg
ICAgICAgLyogVGhlIHZhbHVlcyBvZiBzdGF0ZV9RUyB3aWxsIGJlIHBvbGx1dGVkIGJ5IHRoZSBl
eHRyYSBlcGlsb2d1ZXMsIGhvd2V2ZXIgdGhleSBhcmUgdGVtcG9yYXJ5IHZhbHVlcy4gKi8KKwor
ICAgICAgICAvKiBLZWVwIHRoZSBDIGNvZGUgaGVyZSB0byBoZWxwIHVuZGVyc3RhbmQgdGhlIGlu
dHJpbnNpY3Mgb3B0aW1pemF0aW9uLiAqLworICAgICAgICAvKgorICAgICAgICB7CisgICAgICAg
ICAgICBvcHVzX2ludDMyIHN0YXRlX1FTWyAyIF1bIE1BWF9TSEFQRV9MUENfT1JERVIgKyAxIF0g
PSB7IDAgfTsKKyAgICAgICAgICAgIG9wdXNfaW50MzIgKnN0YXRlX1FTVFsgMyBdOworICAgICAg
ICAgICAgc3RhdGVfUVNUWyAwIF0gPSBzdGF0ZV9RU1sgMCBdOworICAgICAgICAgICAgc3RhdGVf
UVNUWyAxIF0gPSBzdGF0ZV9RU1sgMSBdOworICAgICAgICAgICAgZm9yKCBuID0gMDsgbiA8IGxl
bmd0aCArIG9yZGVyOyBuKyssIGlucHV0X1FTKysgKSB7CisgICAgICAgICAgICAgICAgc3RhdGVf
UVNUWyAwIF1bIG9yZGVyVCBdID0gaW5wdXRfUVNbIG9yZGVyVCBdOworICAgICAgICAgICAgICAg
IGZvciggaSA9IDA7IGkgPCBvcmRlclQ7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAgY29y
cl9RQ1sgaSBdICs9IHNpbGtfUlNISUZUNjQoIHNpbGtfU01VTEwoIHN0YXRlX1FTVFsgMCBdWyBp
IF0sIGlucHV0X1FTWyBpIF0gKSwgMiAqIFFTIC0gUUMgKTsKKyAgICAgICAgICAgICAgICAgICAg
c3RhdGVfUVNUWyAxIF1bIGkgXSA9IHNpbGtfU01MQVdCKCBzdGF0ZV9RU1RbIDEgXVsgaSArIDEg
XSwgc3RhdGVfUVNUWyAwIF1bIGkgXSAtIHN0YXRlX1FTVFsgMCBdWyBpICsgMSBdLCB3YXJwaW5n
X1ExNiApOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBzdGF0ZV9RU1RbIDIg
XSA9IHN0YXRlX1FTVFsgMCBdOworICAgICAgICAgICAgICAgIHN0YXRlX1FTVFsgMCBdID0gc3Rh
dGVfUVNUWyAxIF07CisgICAgICAgICAgICAgICAgc3RhdGVfUVNUWyAxIF0gPSBzdGF0ZV9RU1Rb
IDIgXTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICAqLworCisgICAgICAgIHsK
KyAgICAgICAgICAgIGNvbnN0IGludDMyeDRfdCB3YXJwaW5nX1ExNl9zMzJ4NCA9IHZkdXBxX25f
czMyKCB3YXJwaW5nX1ExNiA8PCAxNSApOworICAgICAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAq
aW4gPSBpbnB1dF9RUyArIG9yZGVyVDsKKyAgICAgICAgICAgIG9wdXNfaW50IG8gPSBvcmRlclQ7
CisgICAgICAgICAgICBpbnQzMng0X3Qgc3RhdGVfUVNfczMyeDRbIDMgXVsgMiBdOworCisgICAg
ICAgICAgICBBTExPQyggc3RhdGUsIGxlbmd0aCArIG9yZGVyVCwgb3B1c19pbnQzMiApOworICAg
ICAgICAgICAgc3RhdGVfUVNfczMyeDRbIDIgXVsgMSBdID0gdmR1cHFfbl9zMzIoIDAgKTsKKwor
ICAgICAgICAgICAgLyogQ2FsY3VsYXRlIDggdGFwcyBvZiBhbGwgaW5wdXRzIGluIGVhY2ggbG9v
cC4gKi8KKyAgICAgICAgICAgIGRvIHsKKyAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsg
MCBdWyAwIF0gPSBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAxIF0gPQorICAgICAgICAgICAgICAgIHN0
YXRlX1FTX3MzMng0WyAxIF1bIDAgXSA9IHN0YXRlX1FTX3MzMng0WyAxIF1bIDEgXSA9IHZkdXBx
X25fczMyKCAwICk7CisgICAgICAgICAgICAgICAgbiA9IDA7CisgICAgICAgICAgICAgICAgZG8g
eworICAgICAgICAgICAgICAgICAgICBjYWxjX2NvcnIoIGlucHV0X1FTICsgbiwgY29ycl9RQywg
byAtIDgsIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSApOworICAgICAgICAgICAgICAgICAgICBj
YWxjX2NvcnIoIGlucHV0X1FTICsgbiwgY29ycl9RQywgbyAtIDQsIHN0YXRlX1FTX3MzMng0WyAw
IF1bIDEgXSApOworICAgICAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAxIF0g
PSB2bGQxcV9zMzIoIGluICsgbiApOworICAgICAgICAgICAgICAgICAgICB2c3QxcV9sYW5lX3Mz
Miggc3RhdGUgKyBuLCBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0sIDAgKTsKKyAgICAgICAgICAg
ICAgICAgICAgc3RhdGVfUVNfczMyeDRbIDIgXVsgMCBdID0gdmV4dHFfczMyKCBzdGF0ZV9RU19z
MzJ4NFsgMCBdWyAwIF0sIHN0YXRlX1FTX3MzMng0WyAwIF1bIDEgXSwgMSApOworICAgICAgICAg
ICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAxIF0gPSB2ZXh0cV9zMzIoIHN0YXRlX1FT
X3MzMng0WyAwIF1bIDEgXSwgc3RhdGVfUVNfczMyeDRbIDIgXVsgMSBdLCAxICk7CisgICAgICAg
ICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSA9IGNhbGNfc3RhdGUoIHN0YXRl
X1FTX3MzMng0WyAwIF1bIDAgXSwgc3RhdGVfUVNfczMyeDRbIDIgXVsgMCBdLCBzdGF0ZV9RU19z
MzJ4NFsgMSBdWyAwIF0sIHdhcnBpbmdfUTE2X3MzMng0ICk7CisgICAgICAgICAgICAgICAgICAg
IHN0YXRlX1FTX3MzMng0WyAwIF1bIDEgXSA9IGNhbGNfc3RhdGUoIHN0YXRlX1FTX3MzMng0WyAw
IF1bIDEgXSwgc3RhdGVfUVNfczMyeDRbIDIgXVsgMSBdLCBzdGF0ZV9RU19zMzJ4NFsgMSBdWyAx
IF0sIHdhcnBpbmdfUTE2X3MzMng0ICk7CisgICAgICAgICAgICAgICAgICAgIHN0YXRlX1FTX3Mz
Mng0WyAxIF1bIDAgXSA9IHN0YXRlX1FTX3MzMng0WyAyIF1bIDAgXTsKKyAgICAgICAgICAgICAg
ICAgICAgc3RhdGVfUVNfczMyeDRbIDEgXVsgMSBdID0gc3RhdGVfUVNfczMyeDRbIDIgXVsgMSBd
OworICAgICAgICAgICAgICAgIH0gd2hpbGUoICsrbiA8ICggbGVuZ3RoICsgb3JkZXIgKSApOwor
ICAgICAgICAgICAgICAgIGluID0gc3RhdGU7CisgICAgICAgICAgICAgICAgbyAtPSA4OworICAg
ICAgICAgICAgfSB3aGlsZSggbyA+IDQgKTsKKworICAgICAgICAgICAgaWYoIG8gKSB7CisgICAg
ICAgICAgICAgICAgLyogQ2FsY3VsYXRlIHRoZSBsYXN0IDQgdGFwcyBvZiBhbGwgaW5wdXRzLiAq
LworICAgICAgICAgICAgICAgIG9wdXNfaW50MzIgKnN0YXRlVCA9IHN0YXRlOworICAgICAgICAg
ICAgICAgIHNpbGtfYXNzZXJ0KCBvID09IDQgKTsKKyAgICAgICAgICAgICAgICBzdGF0ZV9RU19z
MzJ4NFsgMCBdWyAwIF0gPSBzdGF0ZV9RU19zMzJ4NFsgMSBdWyAwIF0gPSB2ZHVwcV9uX3MzMigg
MCApOworICAgICAgICAgICAgICAgIG4gPSBsZW5ndGggKyBvcmRlcjsKKyAgICAgICAgICAgICAg
ICBkbyB7CisgICAgICAgICAgICAgICAgICAgIGNhbGNfY29yciggaW5wdXRfUVMsIGNvcnJfUUMs
IDAsIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSApOworICAgICAgICAgICAgICAgICAgICBzdGF0
ZV9RU19zMzJ4NFsgMiBdWyAwIF0gPSB2bGQxcV9zMzIoIHN0YXRlVCApOworICAgICAgICAgICAg
ICAgICAgICB2c3QxcV9sYW5lX3MzMiggc3RhdGVULCBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0s
IDAgKTsKKyAgICAgICAgICAgICAgICAgICAgc3RhdGVfUVNfczMyeDRbIDIgXVsgMCBdID0gdmV4
dHFfczMyKCBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0sIHN0YXRlX1FTX3MzMng0WyAyIF1bIDAg
XSwgMSApOworICAgICAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0gPSBj
YWxjX3N0YXRlKCBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0sIHN0YXRlX1FTX3MzMng0WyAyIF1b
IDAgXSwgc3RhdGVfUVNfczMyeDRbIDEgXVsgMCBdLCB3YXJwaW5nX1ExNl9zMzJ4NCApOworICAg
ICAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMSBdWyAwIF0gPSBzdGF0ZV9RU19zMzJ4
NFsgMiBdWyAwIF07CisgICAgICAgICAgICAgICAgICAgIGlucHV0X1FTKys7CisgICAgICAgICAg
ICAgICAgICAgIHN0YXRlVCsrOworICAgICAgICAgICAgICAgIH0gd2hpbGUoIC0tbiApOworICAg
ICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgeworICAgICAgICAgICAgY29uc3Qgb3B1
c19pbnQxNiAqaW5wdXRUID0gaW5wdXQ7CisgICAgICAgICAgICBpbnQzMng0X3QgdF9zMzJ4NDsK
KyAgICAgICAgICAgIGludDY0eDFfdCB0X3M2NHgxOworICAgICAgICAgICAgaW50NjR4Ml90IHRf
czY0eDIgPSB2ZHVwcV9uX3M2NCggMCApOworICAgICAgICAgICAgZm9yKCBuID0gMDsgbiA8PSBs
ZW5ndGggLSA4OyBuICs9IDggKSB7CisgICAgICAgICAgICAgICAgaW50MTZ4OF90IGlucHV0X3Mx
Nng4ID0gdmxkMXFfczE2KCBpbnB1dFQgKTsKKyAgICAgICAgICAgICAgICB0X3MzMng0ID0gdm11
bGxfczE2KCB2Z2V0X2xvd19zMTYoIGlucHV0X3MxNng4ICksIHZnZXRfbG93X3MxNiggaW5wdXRf
czE2eDggKSApOworICAgICAgICAgICAgICAgIHRfczMyeDQgPSB2bWxhbF9zMTYoIHRfczMyeDQs
IHZnZXRfaGlnaF9zMTYoIGlucHV0X3MxNng4ICksIHZnZXRfaGlnaF9zMTYoIGlucHV0X3MxNng4
ICkgKTsKKyAgICAgICAgICAgICAgICB0X3M2NHgyID0gdmFkZHdfczMyKCB0X3M2NHgyLCB2Z2V0
X2xvd19zMzIoIHRfczMyeDQgKSApOworICAgICAgICAgICAgICAgIHRfczY0eDIgPSB2YWRkd19z
MzIoIHRfczY0eDIsIHZnZXRfaGlnaF9zMzIoIHRfczMyeDQgKSApOworICAgICAgICAgICAgICAg
IGlucHV0VCArPSA4OworICAgICAgICAgICAgfQorICAgICAgICAgICAgdF9zNjR4MSA9IHZhZGRf
czY0KCB2Z2V0X2xvd19zNjQoIHRfczY0eDIgKSwgdmdldF9oaWdoX3M2NCggdF9zNjR4MiApICk7
CisgICAgICAgICAgICBjb3JyX1FDX29yZGVyVCA9IHZnZXRfbGFuZV9zNjQoIHRfczY0eDEsIDAg
KTsKKyAgICAgICAgICAgIGZvciggOyBuIDwgbGVuZ3RoOyBuKysgKSB7CisgICAgICAgICAgICAg
ICAgY29ycl9RQ19vcmRlclQgKz0gc2lsa19TTVVMTCggaW5wdXRbIG4gXSwgaW5wdXRbIG4gXSAp
OworICAgICAgICAgICAgfQorICAgICAgICAgICAgY29ycl9RQ19vcmRlclQgPSBzaWxrX0xTSElG
VDY0KCBjb3JyX1FDX29yZGVyVCwgUUMgKTsKKyAgICAgICAgICAgIGNvcnJfUUNbIG9yZGVyVCBd
ID0gY29ycl9RQ19vcmRlclQ7CisgICAgICAgIH0KKworICAgICAgICBjb3JyX1FDVCA9IGNvcnJf
UUMgKyBvcmRlclQgLSBvcmRlcjsKKyAgICAgICAgbHNoID0gc2lsa19DTFo2NCggY29ycl9RQ19v
cmRlclQgKSAtIDM1OworICAgICAgICBsc2ggPSBzaWxrX0xJTUlUKCBsc2gsIC0xMiAtIFFDLCAz
MCAtIFFDICk7CisgICAgICAgICpzY2FsZSA9IC0oIFFDICsgbHNoICk7CisgICAgICAgIHNpbGtf
YXNzZXJ0KCAqc2NhbGUgPj0gLTMwICYmICpzY2FsZSA8PSAxMiApOworICAgICAgICBsc2hfczY0
eDIgPSB2ZHVwcV9uX3M2NCggbHNoICk7CisgICAgICAgIGZvciggaSA9IDA7IGkgPD0gb3JkZXIg
LSAzOyBpICs9IDQgKSB7CisgICAgICAgICAgICBpbnQzMng0X3QgY29ycl9zMzJ4NDsKKyAgICAg
ICAgICAgIGludDY0eDJfdCBjb3JyX1FDMF9zNjR4MiwgY29ycl9RQzFfczY0eDI7CisgICAgICAg
ICAgICBjb3JyX1FDMF9zNjR4MiA9IHZsZDFxX3M2NCggY29ycl9RQ1QgKyBpICk7CisgICAgICAg
ICAgICBjb3JyX1FDMV9zNjR4MiA9IHZsZDFxX3M2NCggY29ycl9RQ1QgKyBpICsgMiApOworICAg
ICAgICAgICAgY29ycl9RQzBfczY0eDIgPSB2c2hscV9zNjQoIGNvcnJfUUMwX3M2NHgyLCBsc2hf
czY0eDIgKTsKKyAgICAgICAgICAgIGNvcnJfUUMxX3M2NHgyID0gdnNobHFfczY0KCBjb3JyX1FD
MV9zNjR4MiwgbHNoX3M2NHgyICk7CisgICAgICAgICAgICBjb3JyX3MzMng0ICAgICA9IHZjb21i
aW5lX3MzMiggdm1vdm5fczY0KCBjb3JyX1FDMV9zNjR4MiApLCB2bW92bl9zNjQoIGNvcnJfUUMw
X3M2NHgyICkgKTsKKyAgICAgICAgICAgIGNvcnJfczMyeDQgICAgID0gdnJldjY0cV9zMzIoIGNv
cnJfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggY29yciArIG9yZGVyIC0gaSAtIDMs
IGNvcnJfczMyeDQgKTsKKyAgICAgICAgfQorICAgICAgICBpZiggbHNoID49IDAgKSB7CisgICAg
ICAgICAgICBmb3IoIDsgaSA8IG9yZGVyICsgMTsgaSsrICkgeworICAgICAgICAgICAgICAgIGNv
cnJbIG9yZGVyIC0gaSBdID0gKG9wdXNfaW50MzIpc2lsa19DSEVDS19GSVQzMiggc2lsa19MU0hJ
RlQ2NCggY29ycl9RQ1RbIGkgXSwgbHNoICkgKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgIGZvciggOyBpIDwgb3JkZXIgKyAxOyBpKysgKSB7CisgICAgICAg
ICAgICAgICAgY29yclsgb3JkZXIgLSBpIF0gPSAob3B1c19pbnQzMilzaWxrX0NIRUNLX0ZJVDMy
KCBzaWxrX1JTSElGVDY0KCBjb3JyX1FDVFsgaSBdLCAtbHNoICkgKTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgfQorICAgICAgICBzaWxrX2Fzc2VydCggY29ycl9RQ1RbIG9yZGVyIF0gPj0gMCAp
OyAvKiBJZiBicmVha2luZywgZGVjcmVhc2UgUUMqLworICAgICAgICBSRVNUT1JFX1NUQUNLOwor
ICAgIH0KKworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisgICAgeworICAgICAgICBvcHVzX2ludDMy
IGNvcnJfY1sgTUFYX1NIQVBFX0xQQ19PUkRFUiArIDEgXTsKKyAgICAgICAgb3B1c19pbnQgICBz
Y2FsZV9jOworICAgICAgICBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX2MoIGNvcnJf
YywgJnNjYWxlX2MsIGlucHV0LCB3YXJwaW5nX1ExNiwgbGVuZ3RoLCBvcmRlciApOworICAgICAg
ICBzaWxrX2Fzc2VydCggIW1lbWNtcCggY29ycl9jLCBjb3JyLCBzaXplb2YoIGNvcnJfY1sgMCBd
ICkgKiAoIG9yZGVyICsgMSApICkgKTsKKyAgICAgICAgc2lsa19hc3NlcnQoIHNjYWxlX2MgPT0g
KnNjYWxlICk7CisgICAgfQorI2VuZGlmCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvYnVyZ19t
b2RpZmllZF9GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9idXJnX21vZGlmaWVkX0ZJWC5jCmluZGV4IDE3ZDBl
MDk5M2NmNWJhMTg4ZGIxODI5YzEyZGVkNzRjYmUwNzE5MTUuLjgwZWRiZGZhOGE2NTE0MDg0OGMy
ZTg5MDMxOTBiY2Q4NWE1ZjkwYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9idXJnX21vZGlmaWVk
X0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9maXhlZC9idXJnX21vZGlmaWVkX0ZJWC5jCkBAIC0zNyw3ICszNyw3
IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2RlZmluZSBNQVhfRlJBTUVfU0laRSAg
ICAgICAgICAgICAgMzg0ICAgICAgICAgICAgIC8qIHN1YmZyX2xlbmd0aCAqIG5iX3N1YmZyID0g
KCAwLjAwNSAqIDE2MDAwICsgMTYgKSAqIDQgPSAzODQgKi8KIAogI2RlZmluZSBRQSAgICAgICAg
ICAgICAgICAgICAgICAgICAgMjUKLSNkZWZpbmUgTl9CSVRTX0hFQURfUk9PTSAgICAgICAgICAg
IDIKKyNkZWZpbmUgTl9CSVRTX0hFQURfUk9PTSAgICAgICAgICAgIDMKICNkZWZpbmUgTUlOX1JT
SElGVFMgICAgICAgICAgICAgICAgIC0xNgogI2RlZmluZSBNQVhfUlNISUZUUyAgICAgICAgICAg
ICAgICAgKDMyIC0gUUEpCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9jb3JyTWF0cml4X0ZJWC5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2ZpeGVkL2NvcnJNYXRyaXhfRklYLmMKaW5kZXggYzFkNDM3Yzc4NTllM2EyMmMzYWUw
ZmJlMGQ2Mzc2YjcwODEyYTQzNy4uMWI0YTI5YzIzMmJmZWVhZjhiNmI3YjUzMjU3N2UyMzRjOTgy
ZjQyZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2NvcnJNYXRyaXhfRklYLmMKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zp
eGVkL2NvcnJNYXRyaXhfRklYLmMKQEAgLTU4LDcgKzU4LDcgQEAgdm9pZCBzaWxrX2NvcnJWZWN0
b3JfRklYKAogICAgICAgICBmb3IoIGxhZyA9IDA7IGxhZyA8IG9yZGVyOyBsYWcrKyApIHsKICAg
ICAgICAgICAgIGlubmVyX3Byb2QgPSAwOwogICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IEw7
IGkrKyApIHsKLSAgICAgICAgICAgICAgICBpbm5lcl9wcm9kICs9IHNpbGtfUlNISUZUMzIoIHNp
bGtfU01VTEJCKCBwdHIxWyBpIF0sIHB0cjJbaV0gKSwgcnNoaWZ0cyApOworICAgICAgICAgICAg
ICAgIGlubmVyX3Byb2QgPSBzaWxrX0FERF9SU0hJRlQzMiggaW5uZXJfcHJvZCwgc2lsa19TTVVM
QkIoIHB0cjFbIGkgXSwgcHRyMltpXSApLCByc2hpZnRzICk7CiAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICBYdFsgbGFnIF0gPSBpbm5lcl9wcm9kOyAvKiBYWzosbGFnXScqdCAqLwogICAgICAg
ICAgICAgcHRyMS0tOyAvKiBHbyB0byBuZXh0IGNvbHVtbiBvZiBYICovCkBAIC03Nyw2MSArNzcs
NTQgQEAgdm9pZCBzaWxrX2NvcnJNYXRyaXhfRklYKAogICAgIGNvbnN0IG9wdXNfaW50MTYgICAg
ICAgICAgICAgICAgKngsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgeCB2ZWN0b3IgW0wgKyBvcmRlciAtIDFdIHVzZWQgdG8gZm9ybSBkYXRhIG1hdHJpeCBYICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAg
ICAgICBMLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMZW5n
dGggb2YgdmVjdG9ycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG9y
ZGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE1heCBsYWcgZm9y
IGNvcnJlbGF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgaGVhZF9yb29t
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRGVzaXJlZCBoZWFkcm9vbSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAqWFgsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBQb2ludGVyIHRvIFgnKlggY29ycmVsYXRp
b24gbWF0cml4IFsgb3JkZXIgeCBvcmRlciBdICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgICpyc2hpZnRzLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIFJpZ2h0IHNoaWZ0cyBvZiBjb3JyZWxhdGlvbnMgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNf
aW50MzIgICAgICAgICAgICAgICAgICAgICAgKm5yZywgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBPICAgIEVuZXJneSBvZiB4IHZlY3RvciAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQg
ICAgICAgICAgICAgICAgICAgICAgICAqcnNoaWZ0cywgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogTyAgICBSaWdodCBzaGlmdHMgb2YgY29ycmVsYXRpb25zIGFuZCBlbmVyZ3kgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBpbnQgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGFyY2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKQogewotICAgIG9wdXNfaW50ICAgICAgICAg
aSwgaiwgbGFnLCByc2hpZnRzX2xvY2FsLCBoZWFkX3Jvb21fcnNoaWZ0czsKKyAgICBvcHVzX2lu
dCAgICAgICAgIGksIGosIGxhZzsKICAgICBvcHVzX2ludDMyICAgICAgIGVuZXJneTsKICAgICBj
b25zdCBvcHVzX2ludDE2ICpwdHIxLCAqcHRyMjsKIAogICAgIC8qIENhbGN1bGF0ZSBlbmVyZ3kg
dG8gZmluZCBzaGlmdCB1c2VkIHRvIGZpdCBpbiAzMiBiaXRzICovCi0gICAgc2lsa19zdW1fc3Fy
X3NoaWZ0KCAmZW5lcmd5LCAmcnNoaWZ0c19sb2NhbCwgeCwgTCArIG9yZGVyIC0gMSApOwotICAg
IC8qIEFkZCBzaGlmdHMgdG8gZ2V0IHRoZSBkZXNpcmVkIGhlYWQgcm9vbSAqLwotICAgIGhlYWRf
cm9vbV9yc2hpZnRzID0gc2lsa19tYXgoIGhlYWRfcm9vbSAtIHNpbGtfQ0xaMzIoIGVuZXJneSAp
LCAwICk7Ci0KLSAgICBlbmVyZ3kgPSBzaWxrX1JTSElGVDMyKCBlbmVyZ3ksIGhlYWRfcm9vbV9y
c2hpZnRzICk7Ci0gICAgcnNoaWZ0c19sb2NhbCArPSBoZWFkX3Jvb21fcnNoaWZ0czsKKyAgICBz
aWxrX3N1bV9zcXJfc2hpZnQoIG5yZywgcnNoaWZ0cywgeCwgTCArIG9yZGVyIC0gMSApOworICAg
IGVuZXJneSA9ICpucmc7CiAKICAgICAvKiBDYWxjdWxhdGUgZW5lcmd5IG9mIGZpcnN0IGNvbHVt
biAoMCkgb2YgWDogWFs6LDBdJypYWzosMF0gKi8KICAgICAvKiBSZW1vdmUgY29udHJpYnV0aW9u
IG9mIGZpcnN0IG9yZGVyIC0gMSBzYW1wbGVzICovCiAgICAgZm9yKCBpID0gMDsgaSA8IG9yZGVy
IC0gMTsgaSsrICkgewotICAgICAgICBlbmVyZ3kgLT0gc2lsa19SU0hJRlQzMiggc2lsa19TTVVM
QkIoIHhbIGkgXSwgeFsgaSBdICksIHJzaGlmdHNfbG9jYWwgKTsKLSAgICB9Ci0gICAgaWYoIHJz
aGlmdHNfbG9jYWwgPCAqcnNoaWZ0cyApIHsKLSAgICAgICAgLyogQWRqdXN0IGVuZXJneSAqLwot
ICAgICAgICBlbmVyZ3kgPSBzaWxrX1JTSElGVDMyKCBlbmVyZ3ksICpyc2hpZnRzIC0gcnNoaWZ0
c19sb2NhbCApOwotICAgICAgICByc2hpZnRzX2xvY2FsID0gKnJzaGlmdHM7CisgICAgICAgIGVu
ZXJneSAtPSBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggeFsgaSBdLCB4WyBpIF0gKSwgKnJz
aGlmdHMgKTsKICAgICB9CiAKICAgICAvKiBDYWxjdWxhdGUgZW5lcmd5IG9mIHJlbWFpbmluZyBj
b2x1bW5zIG9mIFg6IFhbOixqXScqWFs6LGpdICovCiAgICAgLyogRmlsbCBvdXQgdGhlIGRpYWdv
bmFsIG9mIHRoZSBjb3JyZWxhdGlvbiBtYXRyaXggKi8KICAgICBtYXRyaXhfcHRyKCBYWCwgMCwg
MCwgb3JkZXIgKSA9IGVuZXJneTsKKyAgICBzaWxrX2Fzc2VydCggZW5lcmd5ID49IDAgKTsKICAg
ICBwdHIxID0gJnhbIG9yZGVyIC0gMSBdOyAvKiBGaXJzdCBzYW1wbGUgb2YgY29sdW1uIDAgb2Yg
WCAqLwogICAgIGZvciggaiA9IDE7IGogPCBvcmRlcjsgaisrICkgewotICAgICAgICBlbmVyZ3kg
PSBzaWxrX1NVQjMyKCBlbmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyBM
IC0gaiBdLCBwdHIxWyBMIC0gaiBdICksIHJzaGlmdHNfbG9jYWwgKSApOwotICAgICAgICBlbmVy
Z3kgPSBzaWxrX0FERDMyKCBlbmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIx
WyAtaiBdLCBwdHIxWyAtaiBdICksIHJzaGlmdHNfbG9jYWwgKSApOworICAgICAgICBlbmVyZ3kg
PSBzaWxrX1NVQjMyKCBlbmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyBM
IC0gaiBdLCBwdHIxWyBMIC0gaiBdICksICpyc2hpZnRzICkgKTsKKyAgICAgICAgZW5lcmd5ID0g
c2lsa19BREQzMiggZW5lcmd5LCBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggcHRyMVsgLWog
XSwgcHRyMVsgLWogXSApLCAqcnNoaWZ0cyApICk7CiAgICAgICAgIG1hdHJpeF9wdHIoIFhYLCBq
LCBqLCBvcmRlciApID0gZW5lcmd5OworICAgICAgICBzaWxrX2Fzc2VydCggZW5lcmd5ID49IDAg
KTsKICAgICB9CiAKICAgICBwdHIyID0gJnhbIG9yZGVyIC0gMiBdOyAvKiBGaXJzdCBzYW1wbGUg
b2YgY29sdW1uIDEgb2YgWCAqLwogICAgIC8qIENhbGN1bGF0ZSB0aGUgcmVtYWluaW5nIGVsZW1l
bnRzIG9mIHRoZSBjb3JyZWxhdGlvbiBtYXRyaXggKi8KLSAgICBpZiggcnNoaWZ0c19sb2NhbCA+
IDAgKSB7CisgICAgaWYoICpyc2hpZnRzID4gMCApIHsKICAgICAgICAgLyogUmlnaHQgc2hpZnRp
bmcgdXNlZCAqLwogICAgICAgICBmb3IoIGxhZyA9IDE7IGxhZyA8IG9yZGVyOyBsYWcrKyApIHsK
ICAgICAgICAgICAgIC8qIElubmVyIHByb2R1Y3Qgb2YgY29sdW1uIDAgYW5kIGNvbHVtbiBsYWc6
IFhbOiwwXScqWFs6LGxhZ10gKi8KICAgICAgICAgICAgIGVuZXJneSA9IDA7CiAgICAgICAgICAg
ICBmb3IoIGkgPSAwOyBpIDwgTDsgaSsrICkgewotICAgICAgICAgICAgICAgIGVuZXJneSArPSBz
aWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggcHRyMVsgaSBdLCBwdHIyW2ldICksIHJzaGlmdHNf
bG9jYWwgKTsKKyAgICAgICAgICAgICAgICBlbmVyZ3kgKz0gc2lsa19SU0hJRlQzMiggc2lsa19T
TVVMQkIoIHB0cjFbIGkgXSwgcHRyMltpXSApLCAqcnNoaWZ0cyApOwogICAgICAgICAgICAgfQog
ICAgICAgICAgICAgLyogQ2FsY3VsYXRlIHJlbWFpbmluZyBvZmYgZGlhZ29uYWw6IFhbOixqXScq
WFs6LGogKyBsYWddICovCiAgICAgICAgICAgICBtYXRyaXhfcHRyKCBYWCwgbGFnLCAwLCBvcmRl
ciApID0gZW5lcmd5OwogICAgICAgICAgICAgbWF0cml4X3B0ciggWFgsIDAsIGxhZywgb3JkZXIg
KSA9IGVuZXJneTsKICAgICAgICAgICAgIGZvciggaiA9IDE7IGogPCAoIG9yZGVyIC0gbGFnICk7
IGorKyApIHsKLSAgICAgICAgICAgICAgICBlbmVyZ3kgPSBzaWxrX1NVQjMyKCBlbmVyZ3ksIHNp
bGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyBMIC0gaiBdLCBwdHIyWyBMIC0gaiBdICks
IHJzaGlmdHNfbG9jYWwgKSApOwotICAgICAgICAgICAgICAgIGVuZXJneSA9IHNpbGtfQUREMzIo
IGVuZXJneSwgc2lsa19SU0hJRlQzMiggc2lsa19TTVVMQkIoIHB0cjFbIC1qIF0sIHB0cjJbIC1q
IF0gKSwgcnNoaWZ0c19sb2NhbCApICk7CisgICAgICAgICAgICAgICAgZW5lcmd5ID0gc2lsa19T
VUIzMiggZW5lcmd5LCBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggcHRyMVsgTCAtIGogXSwg
cHRyMlsgTCAtIGogXSApLCAqcnNoaWZ0cyApICk7CisgICAgICAgICAgICAgICAgZW5lcmd5ID0g
c2lsa19BREQzMiggZW5lcmd5LCBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggcHRyMVsgLWog
XSwgcHRyMlsgLWogXSApLCAqcnNoaWZ0cyApICk7CiAgICAgICAgICAgICAgICAgbWF0cml4X3B0
ciggWFgsIGxhZyArIGosIGosIG9yZGVyICkgPSBlbmVyZ3k7CiAgICAgICAgICAgICAgICAgbWF0
cml4X3B0ciggWFgsIGosIGxhZyArIGosIG9yZGVyICkgPSBlbmVyZ3k7CiAgICAgICAgICAgICB9
CkBAIC0xNTMsNiArMTQ2LDUgQEAgdm9pZCBzaWxrX2NvcnJNYXRyaXhfRklYKAogICAgICAgICAg
ICAgcHRyMi0tOy8qIFVwZGF0ZSBwb2ludGVyIHRvIGZpcnN0IHNhbXBsZSBvZiBuZXh0IGNvbHVt
biAobGFnKSBpbiBYICovCiAgICAgICAgIH0KICAgICB9Ci0gICAgKnJzaGlmdHMgPSByc2hpZnRz
X2xvY2FsOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZW5jb2RlX2ZyYW1lX0ZJWC5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2ZpeGVkL2VuY29kZV9mcmFtZV9GSVguYwppbmRleCA1ZWY0NGIwM2ZjNGM1ODU5OTliY2Vj
MjgyMzVlMGVkNGE1NTQ4NmIxLi5mNmVlODEzYjk3ZmE1NjRkMzNmOTY0OGUwODBmOTg0MTU5Yzk0
NGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZW5jb2RlX2ZyYW1lX0ZJWC5jCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9m
aXhlZC9lbmNvZGVfZnJhbWVfRklYLmMKQEAgLTI5LDYgKzI5LDcgQEAgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjZW5kaWYKIAorI2luY2x1ZGUgPHN0
ZGxpYi5oPgogI2luY2x1ZGUgIm1haW5fRklYLmgiCiAjaW5jbHVkZSAic3RhY2tfYWxsb2MuaCIK
ICNpbmNsdWRlICJ0dW5pbmdfcGFyYW1ldGVycy5oIgpAQCAtMzcsMjYgKzM4LDMzIEBAIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19MQlJS
X2VuY29kZV9GSVgoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZJWCAgICAgICAgICAqcHNFbmMs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBQb2ludGVyIHRvIFNpbGsg
RklYIGVuY29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBzaWxrX2VuY29kZXJfY29udHJvbF9GSVggICAgICAgICpwc0VuY0N0cmwsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU2lsayBGSVggZW5j
b2RlciBjb250cm9sIHN0cnVjdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgeGZ3X1EzW10sICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgc2lnbmFsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29u
c3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbmRDb2RpbmcgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIFRoZSB0eXBlIG9mIGNvbmRpdGlvbmFsIGNvZGluZyB1c2VkIHNvIGZhciBm
b3IgdGhpcyBmcmFtZSAgICAgICAgICAgICAgICAgICAqLwogKTsKIAogdm9pZCBzaWxrX2VuY29k
ZV9kb19WQURfRklYKAotICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GSVggICAgICAgICAgKnBzRW5j
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxr
IEZJWCBlbmNvZGVyIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZJWCAgICAgICAgICAqcHNFbmMsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBQb2ludGVyIHRvIFNpbGsgRklYIGVu
Y29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2aXR5ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIERlY2lzaW9uIG9mIE9wdXMgdm9pY2UgYWN0aXZp
dHkgZGV0ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKQogewor
ICAgIGNvbnN0IG9wdXNfaW50IGFjdGl2aXR5X3RocmVzaG9sZCA9IFNJTEtfRklYX0NPTlNUKCBT
UEVFQ0hfQUNUSVZJVFlfRFRYX1RIUkVTLCA4ICk7CisKICAgICAvKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KICAgICAvKiBWb2ljZSBBY3Rpdml0eSBEZXRlY3Rpb24gKi8KICAgICAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICBzaWxrX1ZBRF9HZXRTQV9ROCggJnBzRW5j
LT5zQ21uLCBwc0VuYy0+c0Ntbi5pbnB1dEJ1ZiArIDEsIHBzRW5jLT5zQ21uLmFyY2ggKTsKKyAg
ICAvKiBJZiBPcHVzIFZBRCBpcyBpbmFjdGl2ZSBhbmQgU2lsayBWQUQgaXMgYWN0aXZlOiBsb3dl
ciBTaWxrIFZBRCB0byBqdXN0IHVuZGVyIHRoZSB0aHJlc2hvbGQgKi8KKyAgICBpZiggYWN0aXZp
dHkgPT0gVkFEX05PX0FDVElWSVRZICYmIHBzRW5jLT5zQ21uLnNwZWVjaF9hY3Rpdml0eV9ROCA+
PSBhY3Rpdml0eV90aHJlc2hvbGQgKSB7CisgICAgICAgIHBzRW5jLT5zQ21uLnNwZWVjaF9hY3Rp
dml0eV9ROCA9IGFjdGl2aXR5X3RocmVzaG9sZCAtIDE7CisgICAgfQogCiAgICAgLyoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIENvbnZl
cnQgc3BlZWNoIGFjdGl2aXR5IGludG8gVkFEIGFuZCBEVFggZmxhZ3MgKi8KICAgICAvKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgaWYoIHBz
RW5jLT5zQ21uLnNwZWVjaF9hY3Rpdml0eV9ROCA8IFNJTEtfRklYX0NPTlNUKCBTUEVFQ0hfQUNU
SVZJVFlfRFRYX1RIUkVTLCA4ICkgKSB7CisgICAgaWYoIHBzRW5jLT5zQ21uLnNwZWVjaF9hY3Rp
dml0eV9ROCA8IGFjdGl2aXR5X3RocmVzaG9sZCApIHsKICAgICAgICAgcHNFbmMtPnNDbW4uaW5k
aWNlcy5zaWduYWxUeXBlID0gVFlQRV9OT19WT0lDRV9BQ1RJVklUWTsKICAgICAgICAgcHNFbmMt
PnNDbW4ubm9TcGVlY2hDb3VudGVyKys7Ci0gICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5ub1NwZWVj
aENvdW50ZXIgPCBOQl9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFggKSB7CisgICAgICAgIGlmKCBw
c0VuYy0+c0Ntbi5ub1NwZWVjaENvdW50ZXIgPD0gTkJfU1BFRUNIX0ZSQU1FU19CRUZPUkVfRFRY
ICkgewogICAgICAgICAgICAgcHNFbmMtPnNDbW4uaW5EVFggPSAwOwogICAgICAgICB9IGVsc2Ug
aWYoIHBzRW5jLT5zQ21uLm5vU3BlZWNoQ291bnRlciA+IE1BWF9DT05TRUNVVElWRV9EVFggKyBO
Ql9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFggKSB7CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5u
b1NwZWVjaENvdW50ZXIgPSBOQl9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFg7CkBAIC05NCw2ICsx
MDIsOSBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GSVgoCiAgICAgb3B1c19pbnQxNiAg
IGVjX3ByZXZMYWdJbmRleF9jb3B5OwogICAgIG9wdXNfaW50ICAgICBlY19wcmV2U2lnbmFsVHlw
ZV9jb3B5OwogICAgIG9wdXNfaW50OCAgICBMYXN0R2FpbkluZGV4X2NvcHkyOworICAgIG9wdXNf
aW50ICAgICBnYWluX2xvY2tbIE1BWF9OQl9TVUJGUiBdID0gezB9OworICAgIG9wdXNfaW50MTYg
ICBiZXN0X2dhaW5fbXVsdFsgTUFYX05CX1NVQkZSIF07CisgICAgb3B1c19pbnQgICAgIGJlc3Rf
c3VtWyBNQVhfTkJfU1VCRlIgXTsKICAgICBTQVZFX1NUQUNLOwogCiAgICAgLyogVGhpcyBpcyB0
b3RhbGx5IHVubmVjZXNzYXJ5IGJ1dCBtYW55IGNvbXBpbGVycyAoaW5jbHVkaW5nIGdjYykgYXJl
IHRvbyBkdW1iIHRvIHJlYWxpc2UgaXQgKi8KQEAgLTExOCw3ICsxMjksNiBAQCBvcHVzX2ludCBz
aWxrX2VuY29kZV9mcmFtZV9GSVgoCiAgICAgc2lsa19tZW1jcHkoIHhfZnJhbWUgKyBMQV9TSEFQ
RV9NUyAqIHBzRW5jLT5zQ21uLmZzX2tIeiwgcHNFbmMtPnNDbW4uaW5wdXRCdWYgKyAxLCBwc0Vu
Yy0+c0Ntbi5mcmFtZV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOwogCiAgICAgaWYo
ICFwc0VuYy0+c0Ntbi5wcmVmaWxsRmxhZyApIHsKLSAgICAgICAgVkFSREVDTCggb3B1c19pbnQz
MiwgeGZ3X1EzICk7CiAgICAgICAgIFZBUkRFQ0woIG9wdXNfaW50MTYsIHJlc19waXRjaCApOwog
ICAgICAgICBWQVJERUNMKCBvcHVzX3VpbnQ4LCBlY19idWZfY29weSApOwogICAgICAgICBvcHVz
X2ludDE2ICpyZXNfcGl0Y2hfZnJhbWU7CkBAIC0xMzIsNyArMTQyLDcgQEAgb3B1c19pbnQgc2ls
a19lbmNvZGVfZnJhbWVfRklYKAogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKiovCiAgICAgICAgIC8qIEZpbmQgcGl0Y2ggbGFncywgaW5pdGlhbCBMUEMg
YW5hbHlzaXMgKi8KICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwotICAgICAgICBzaWxrX2ZpbmRfcGl0Y2hfbGFnc19GSVgoIHBzRW5jLCAmc0VuY0N0
cmwsIHJlc19waXRjaCwgeF9mcmFtZSwgcHNFbmMtPnNDbW4uYXJjaCApOworICAgICAgICBzaWxr
X2ZpbmRfcGl0Y2hfbGFnc19GSVgoIHBzRW5jLCAmc0VuY0N0cmwsIHJlc19waXRjaCwgeF9mcmFt
ZSAtIHBzRW5jLT5zQ21uLmx0cF9tZW1fbGVuZ3RoLCBwc0VuYy0+c0Ntbi5hcmNoICk7CiAKICAg
ICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogTm9pc2Ugc2hhcGUg
YW5hbHlzaXMgKi8KQEAgLTE0MiwyMyArMTUyLDE3IEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2Zy
YW1lX0ZJWCgKICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KICAgICAgICAgLyogRmluZCBsaW5lYXIgcHJlZGljdGlvbiBjb2VmZmlj
aWVudHMgKExQQyArIExUUCkgKi8KICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgc2lsa19maW5kX3ByZWRfY29lZnNf
RklYKCBwc0VuYywgJnNFbmNDdHJsLCByZXNfcGl0Y2gsIHhfZnJhbWUsIGNvbmRDb2RpbmcgKTsK
KyAgICAgICAgc2lsa19maW5kX3ByZWRfY29lZnNfRklYKCBwc0VuYywgJnNFbmNDdHJsLCByZXNf
cGl0Y2hfZnJhbWUsIHhfZnJhbWUsIGNvbmRDb2RpbmcgKTsKIAogICAgICAgICAvKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogUHJvY2VzcyBnYWlu
cyAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqLwogICAgICAgICBzaWxrX3Byb2Nlc3NfZ2FpbnNfRklYKCBw
c0VuYywgJnNFbmNDdHJsLCBjb25kQ29kaW5nICk7CiAKLSAgICAgICAgLyoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICAvKiBQcmVmaWx0ZXJpbmcgZm9y
IG5vaXNlIHNoYXBlciAgICAgICAgICovCi0gICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgQUxMT0MoIHhmd19RMywgcHNFbmMtPnNDbW4u
ZnJhbWVfbGVuZ3RoLCBvcHVzX2ludDMyICk7Ci0gICAgICAgIHNpbGtfcHJlZmlsdGVyX0ZJWCgg
cHNFbmMsICZzRW5jQ3RybCwgeGZ3X1EzLCB4X2ZyYW1lICk7Ci0KICAgICAgICAgLyoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgICAgIC8qIExvdyBCaXRyYXRl
IFJlZHVuZGFudCBFbmNvZGluZyAgICAgICAqLwogICAgICAgICAvKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgc2lsa19MQlJSX2VuY29kZV9GSVgoIHBz
RW5jLCAmc0VuY0N0cmwsIHhmd19RMywgY29uZENvZGluZyApOworICAgICAgICBzaWxrX0xCUlJf
ZW5jb2RlX0ZJWCggcHNFbmMsICZzRW5jQ3RybCwgeF9mcmFtZSwgY29uZENvZGluZyApOwogCiAg
ICAgICAgIC8qIExvb3Agb3ZlciBxdWFudGl6ZXIgYW5kIGVudHJvcHkgY29kaW5nIHRvIGNvbnRy
b2wgYml0cmF0ZSAqLwogICAgICAgICBtYXhJdGVyID0gNjsKQEAgLTE5NCwxNyArMTk4LDIxIEBA
IG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZJWCgKICAgICAgICAgICAgICAgICAvKiBOb2lz
ZSBzaGFwaW5nIHF1YW50aXphdGlvbiAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgLyoq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgICAgICAgICAgICAg
IGlmKCBwc0VuYy0+c0Ntbi5uU3RhdGVzRGVsYXllZERlY2lzaW9uID4gMSB8fCBwc0VuYy0+c0Nt
bi53YXJwaW5nX1ExNiA+IDAgKSB7Ci0gICAgICAgICAgICAgICAgICAgIHNpbGtfTlNRX2RlbF9k
ZWMoICZwc0VuYy0+c0NtbiwgJnBzRW5jLT5zQ21uLnNOU1EsICZwc0VuYy0+c0Ntbi5pbmRpY2Vz
LCB4ZndfUTMsIHBzRW5jLT5zQ21uLnB1bHNlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNFbmNDdHJsLlByZWRDb2VmX1ExMlsgMCBdLCBzRW5jQ3RybC5MVFBDb2VmX1ExNCwgc0VuY0N0
cmwuQVIyX1ExMywgc0VuY0N0cmwuSGFybVNoYXBlR2Fpbl9RMTQsCisgICAgICAgICAgICAgICAg
ICAgIHNpbGtfTlNRX2RlbF9kZWMoICZwc0VuYy0+c0NtbiwgJnBzRW5jLT5zQ21uLnNOU1EsICZw
c0VuYy0+c0Ntbi5pbmRpY2VzLCB4X2ZyYW1lLCBwc0VuYy0+c0Ntbi5wdWxzZXMsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICBzRW5jQ3RybC5QcmVkQ29lZl9RMTJbIDAgXSwgc0VuY0N0cmwu
TFRQQ29lZl9RMTQsIHNFbmNDdHJsLkFSX1ExMywgc0VuY0N0cmwuSGFybVNoYXBlR2Fpbl9RMTQs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzRW5jQ3RybC5UaWx0X1ExNCwgc0VuY0N0cmwu
TEZfc2hwX1ExNCwgc0VuY0N0cmwuR2FpbnNfUTE2LCBzRW5jQ3RybC5waXRjaEwsIHNFbmNDdHJs
LkxhbWJkYV9RMTAsIHNFbmNDdHJsLkxUUF9zY2FsZV9RMTQsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBwc0VuYy0+c0Ntbi5hcmNoICk7CiAgICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAg
ICAgICAgICAgICAgICAgICAgc2lsa19OU1EoICZwc0VuYy0+c0NtbiwgJnBzRW5jLT5zQ21uLnNO
U1EsICZwc0VuYy0+c0Ntbi5pbmRpY2VzLCB4ZndfUTMsIHBzRW5jLT5zQ21uLnB1bHNlcywKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzRW5jQ3RybC5QcmVkQ29lZl9RMTJbIDAgXSwgc0Vu
Y0N0cmwuTFRQQ29lZl9RMTQsIHNFbmNDdHJsLkFSMl9RMTMsIHNFbmNDdHJsLkhhcm1TaGFwZUdh
aW5fUTE0LAorICAgICAgICAgICAgICAgICAgICBzaWxrX05TUSggJnBzRW5jLT5zQ21uLCAmcHNF
bmMtPnNDbW4uc05TUSwgJnBzRW5jLT5zQ21uLmluZGljZXMsIHhfZnJhbWUsIHBzRW5jLT5zQ21u
LnB1bHNlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzRW5jQ3RybC5QcmVkQ29lZl9R
MTJbIDAgXSwgc0VuY0N0cmwuTFRQQ29lZl9RMTQsIHNFbmNDdHJsLkFSX1ExMywgc0VuY0N0cmwu
SGFybVNoYXBlR2Fpbl9RMTQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc0VuY0N0cmwu
VGlsdF9RMTQsIHNFbmNDdHJsLkxGX3NocF9RMTQsIHNFbmNDdHJsLkdhaW5zX1ExNiwgc0VuY0N0
cmwucGl0Y2hMLCBzRW5jQ3RybC5MYW1iZGFfUTEwLCBzRW5jQ3RybC5MVFBfc2NhbGVfUTE0LAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmFyY2gpOwogICAgICAgICAg
ICAgICAgIH0KIAorICAgICAgICAgICAgICAgIGlmICggaXRlciA9PSBtYXhJdGVyICYmICFmb3Vu
ZF9sb3dlciApIHsKKyAgICAgICAgICAgICAgICAgICAgc2lsa19tZW1jcHkoICZzUmFuZ2VFbmNf
Y29weTIsIHBzUmFuZ2VFbmMsIHNpemVvZiggZWNfZW5jICkgKTsKKyAgICAgICAgICAgICAgICB9
CisKICAgICAgICAgICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KICAgICAgICAgICAgICAgICAvKiBFbmNvZGUgUGFyYW1ldGVycyAgICAgICAgICAgICAg
ICAgICAgKi8KICAgICAgICAgICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KQEAgLTIxOCw2ICsyMjYsMzMgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJh
bWVfRklYKAogCiAgICAgICAgICAgICAgICAgbkJpdHMgPSBlY190ZWxsKCBwc1JhbmdlRW5jICk7
CiAKKyAgICAgICAgICAgICAgICAvKiBJZiB3ZSBzdGlsbCBidXN0IGFmdGVyIHRoZSBsYXN0IGl0
ZXJhdGlvbiwgZG8gc29tZSBkYW1hZ2UgY29udHJvbC4gKi8KKyAgICAgICAgICAgICAgICBpZiAo
IGl0ZXIgPT0gbWF4SXRlciAmJiAhZm91bmRfbG93ZXIgJiYgbkJpdHMgPiBtYXhCaXRzICkgewor
ICAgICAgICAgICAgICAgICAgICBzaWxrX21lbWNweSggcHNSYW5nZUVuYywgJnNSYW5nZUVuY19j
b3B5Miwgc2l6ZW9mKCBlY19lbmMgKSApOworCisgICAgICAgICAgICAgICAgICAgIC8qIEtlZXAg
Z2FpbnMgdGhlIHNhbWUgYXMgdGhlIGxhc3QgZnJhbWUuICovCisgICAgICAgICAgICAgICAgICAg
IHBzRW5jLT5zU2hhcGUuTGFzdEdhaW5JbmRleCA9IHNFbmNDdHJsLmxhc3RHYWluSW5kZXhQcmV2
OworICAgICAgICAgICAgICAgICAgICBmb3IgKCBpID0gMDsgaSA8IHBzRW5jLT5zQ21uLm5iX3N1
YmZyOyBpKysgKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2Vz
LkdhaW5zSW5kaWNlc1sgaSBdID0gNDsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgICAgICBpZiAoY29uZENvZGluZyAhPSBDT0RFX0NPTkRJVElPTkFMTFkpIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4uaW5kaWNlcy5HYWluc0luZGljZXNbIDAgXSA9
IHNFbmNDdHJsLmxhc3RHYWluSW5kZXhQcmV2OworICAgICAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmVjX3ByZXZMYWdJbmRleCA9IGVjX3ByZXZMYWdJ
bmRleF9jb3B5OworICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5lY19wcmV2U2lnbmFs
VHlwZSA9IGVjX3ByZXZTaWduYWxUeXBlX2NvcHk7CisgICAgICAgICAgICAgICAgICAgIC8qIENs
ZWFyIGFsbCBwdWxzZXMuICovCisgICAgICAgICAgICAgICAgICAgIGZvciAoIGkgPSAwOyBpIDwg
cHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoOyBpKysgKSB7CisgICAgICAgICAgICAgICAgICAgICAg
ICBwc0VuYy0+c0Ntbi5wdWxzZXNbIGkgXSA9IDA7CisgICAgICAgICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgICAgICAgICBzaWxrX2VuY29kZV9pbmRpY2VzKCAmcHNFbmMtPnNDbW4sIHBz
UmFuZ2VFbmMsIHBzRW5jLT5zQ21uLm5GcmFtZXNFbmNvZGVkLCAwLCBjb25kQ29kaW5nICk7CisK
KyAgICAgICAgICAgICAgICAgICAgc2lsa19lbmNvZGVfcHVsc2VzKCBwc1JhbmdlRW5jLCBwc0Vu
Yy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUsIHBzRW5jLT5zQ21uLmluZGljZXMucXVhbnRPZmZz
ZXRUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4ucHVsc2VzLCBwc0Vu
Yy0+c0Ntbi5mcmFtZV9sZW5ndGggKTsKKworICAgICAgICAgICAgICAgICAgICBuQml0cyA9IGVj
X3RlbGwoIHBzUmFuZ2VFbmMgKTsKKyAgICAgICAgICAgICAgICB9CisKICAgICAgICAgICAgICAg
ICBpZiggdXNlQ0JSID09IDAgJiYgaXRlciA9PSAwICYmIG5CaXRzIDw9IG1heEJpdHMgKSB7CiAg
ICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgIH0KQEAgLTI2NSwxNSAr
MzAwLDM1IEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZJWCgKICAgICAgICAgICAgICAg
ICBicmVhazsKICAgICAgICAgICAgIH0KIAorICAgICAgICAgICAgaWYgKCAhZm91bmRfbG93ZXIg
JiYgbkJpdHMgPiBtYXhCaXRzICkgeworICAgICAgICAgICAgICAgIGludCBqOworICAgICAgICAg
ICAgICAgIGZvciAoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGkrKyApIHsKKyAg
ICAgICAgICAgICAgICAgICAgaW50IHN1bT0wOworICAgICAgICAgICAgICAgICAgICBmb3IgKCBq
ID0gaSpwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7IGogPCAoaSsxKSpwc0VuYy0+c0Ntbi5zdWJm
cl9sZW5ndGg7IGorKyApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHN1bSArPSBhYnMoIHBz
RW5jLT5zQ21uLnB1bHNlc1tqXSApOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgICAgICAgIGlmICggaXRlciA9PSAwIHx8IChzdW0gPCBiZXN0X3N1bVtpXSAmJiAhZ2Fpbl9s
b2NrW2ldKSApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGJlc3Rfc3VtW2ldID0gc3VtOwor
ICAgICAgICAgICAgICAgICAgICAgICAgYmVzdF9nYWluX211bHRbaV0gPSBnYWluTXVsdF9RODsK
KyAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGdh
aW5fbG9ja1tpXSA9IDE7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiggKCBmb3VuZF9sb3dlciAmIGZvdW5kX3Vw
cGVyICkgPT0gMCApIHsKICAgICAgICAgICAgICAgICAvKiBBZGp1c3QgZ2FpbiBhY2NvcmRpbmcg
dG8gaGlnaC1yYXRlIHJhdGUvZGlzdG9ydGlvbiBjdXJ2ZSAqLwotICAgICAgICAgICAgICAgIG9w
dXNfaW50MzIgZ2Fpbl9mYWN0b3JfUTE2OwotICAgICAgICAgICAgICAgIGdhaW5fZmFjdG9yX1Ex
NiA9IHNpbGtfbG9nMmxpbiggc2lsa19MU0hJRlQoIG5CaXRzIC0gbWF4Qml0cywgNyApIC8gcHNF
bmMtPnNDbW4uZnJhbWVfbGVuZ3RoICsgU0lMS19GSVhfQ09OU1QoIDE2LCA3ICkgKTsKLSAgICAg
ICAgICAgICAgICBnYWluX2ZhY3Rvcl9RMTYgPSBzaWxrX21pbl8zMiggZ2Fpbl9mYWN0b3JfUTE2
LCBTSUxLX0ZJWF9DT05TVCggMiwgMTYgKSApOwogICAgICAgICAgICAgICAgIGlmKCBuQml0cyA+
IG1heEJpdHMgKSB7Ci0gICAgICAgICAgICAgICAgICAgIGdhaW5fZmFjdG9yX1ExNiA9IHNpbGtf
bWF4XzMyKCBnYWluX2ZhY3Rvcl9RMTYsIFNJTEtfRklYX0NPTlNUKCAxLjMsIDE2ICkgKTsKKyAg
ICAgICAgICAgICAgICAgICAgaWYgKGdhaW5NdWx0X1E4IDwgMTYzODQpIHsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIGdhaW5NdWx0X1E4ICo9IDI7CisgICAgICAgICAgICAgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBnYWluTXVsdF9ROCA9IDMyNzY3OworICAgICAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAg
ICAgICAgb3B1c19pbnQzMiBnYWluX2ZhY3Rvcl9RMTY7CisgICAgICAgICAgICAgICAgICAgIGdh
aW5fZmFjdG9yX1ExNiA9IHNpbGtfbG9nMmxpbiggc2lsa19MU0hJRlQoIG5CaXRzIC0gbWF4Qml0
cywgNyApIC8gcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoICsgU0lMS19GSVhfQ09OU1QoIDE2LCA3
ICkgKTsKKyAgICAgICAgICAgICAgICAgICAgZ2Fpbk11bHRfUTggPSBzaWxrX1NNVUxXQiggZ2Fp
bl9mYWN0b3JfUTE2LCBnYWluTXVsdF9ROCApOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgICAgICBnYWluTXVsdF9ROCA9IHNpbGtfU01VTFdCKCBnYWluX2ZhY3Rvcl9RMTYsIGdhaW5N
dWx0X1E4ICk7CisKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgLyogQWRq
dXN0IGdhaW4gYnkgaW50ZXJwb2xhdGluZyAqLwogICAgICAgICAgICAgICAgIGdhaW5NdWx0X1E4
ID0gZ2Fpbk11bHRfbG93ZXIgKyBzaWxrX0RJVjMyXzE2KCBzaWxrX01VTCggZ2Fpbk11bHRfdXBw
ZXIgLSBnYWluTXVsdF9sb3dlciwgbWF4Qml0cyAtIG5CaXRzX2xvd2VyICksIG5CaXRzX3VwcGVy
IC0gbkJpdHNfbG93ZXIgKTsKQEAgLTI4Nyw3ICszNDIsMTMgQEAgb3B1c19pbnQgc2lsa19lbmNv
ZGVfZnJhbWVfRklYKAogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBmb3IoIGkgPSAwOyBp
IDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGkrKyApIHsKLSAgICAgICAgICAgICAgICBzRW5jQ3Ry
bC5HYWluc19RMTZbIGkgXSA9IHNpbGtfTFNISUZUX1NBVDMyKCBzaWxrX1NNVUxXQiggc0VuY0N0
cmwuR2FpbnNVbnFfUTE2WyBpIF0sIGdhaW5NdWx0X1E4ICksIDggKTsKKyAgICAgICAgICAgICAg
ICBvcHVzX2ludDE2IHRtcDsKKyAgICAgICAgICAgICAgICBpZiAoIGdhaW5fbG9ja1tpXSApIHsK
KyAgICAgICAgICAgICAgICAgICAgdG1wID0gYmVzdF9nYWluX211bHRbaV07CisgICAgICAgICAg
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgdG1wID0gZ2Fpbk11bHRfUTg7Cisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHNFbmNDdHJsLkdhaW5zX1ExNlsgaSBd
ID0gc2lsa19MU0hJRlRfU0FUMzIoIHNpbGtfU01VTFdCKCBzRW5jQ3RybC5HYWluc1VucV9RMTZb
IGkgXSwgdG1wICksIDggKTsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgLyogUXVhbnRp
emUgZ2FpbnMgKi8KQEAgLTMzMSw3ICszOTIsNyBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFt
ZV9GSVgoCiBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xCUlJfZW5jb2RlX0ZJWCgKICAg
ICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU2lsayBGSVggZW5jb2RlciBzdGF0
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtf
ZW5jb2Rlcl9jb250cm9sX0ZJWCAgICAgICAgKnBzRW5jQ3RybCwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIEZJWCBlbmNvZGVyIGNvbnRyb2wgc3Ry
dWN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19p
bnQzMiAgICAgICAgICAgICAgICB4ZndfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBJbnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgICAgIHgxNltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIElucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
ICAgICAgY29uZENvZGluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgVGhl
IHR5cGUgb2YgY29uZGl0aW9uYWwgY29kaW5nIHVzZWQgc28gZmFyIGZvciB0aGlzIGZyYW1lICAg
ICAgICAgICAgICAgICAgICovCiApCiB7CkBAIC0zNzAsMTQgKzQzMSwxNCBAQCBzdGF0aWMgT1BV
U19JTkxJTkUgdm9pZCBzaWxrX0xCUlJfZW5jb2RlX0ZJWCgKICAgICAgICAgLyogTm9pc2Ugc2hh
cGluZyBxdWFudGl6YXRpb24gICAgICAgICAgICAqLwogICAgICAgICAvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5uU3Rh
dGVzRGVsYXllZERlY2lzaW9uID4gMSB8fCBwc0VuYy0+c0Ntbi53YXJwaW5nX1ExNiA+IDAgKSB7
Ci0gICAgICAgICAgICBzaWxrX05TUV9kZWxfZGVjKCAmcHNFbmMtPnNDbW4sICZzTlNRX0xCUlIs
IHBzSW5kaWNlc19MQlJSLCB4ZndfUTMsCisgICAgICAgICAgICBzaWxrX05TUV9kZWxfZGVjKCAm
cHNFbmMtPnNDbW4sICZzTlNRX0xCUlIsIHBzSW5kaWNlc19MQlJSLCB4MTYsCiAgICAgICAgICAg
ICAgICAgcHNFbmMtPnNDbW4ucHVsc2VzX0xCUlJbIHBzRW5jLT5zQ21uLm5GcmFtZXNFbmNvZGVk
IF0sIHBzRW5jQ3RybC0+UHJlZENvZWZfUTEyWyAwIF0sIHBzRW5jQ3RybC0+TFRQQ29lZl9RMTQs
Ci0gICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5BUjJfUTEzLCBwc0VuY0N0cmwtPkhhcm1TaGFw
ZUdhaW5fUTE0LCBwc0VuY0N0cmwtPlRpbHRfUTE0LCBwc0VuY0N0cmwtPkxGX3NocF9RMTQsCisg
ICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5BUl9RMTMsIHBzRW5jQ3RybC0+SGFybVNoYXBlR2Fp
bl9RMTQsIHBzRW5jQ3RybC0+VGlsdF9RMTQsIHBzRW5jQ3RybC0+TEZfc2hwX1ExNCwKICAgICAg
ICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1ExNiwgcHNFbmNDdHJsLT5waXRjaEwsIHBzRW5j
Q3RybC0+TGFtYmRhX1ExMCwgcHNFbmNDdHJsLT5MVFBfc2NhbGVfUTE0LCBwc0VuYy0+c0Ntbi5h
cmNoICk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBzaWxrX05TUSggJnBzRW5jLT5z
Q21uLCAmc05TUV9MQlJSLCBwc0luZGljZXNfTEJSUiwgeGZ3X1EzLAorICAgICAgICAgICAgc2ls
a19OU1EoICZwc0VuYy0+c0NtbiwgJnNOU1FfTEJSUiwgcHNJbmRpY2VzX0xCUlIsIHgxNiwKICAg
ICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5wdWxzZXNfTEJSUlsgcHNFbmMtPnNDbW4ubkZyYW1l
c0VuY29kZWQgXSwgcHNFbmNDdHJsLT5QcmVkQ29lZl9RMTJbIDAgXSwgcHNFbmNDdHJsLT5MVFBD
b2VmX1ExNCwKLSAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkFSMl9RMTMsIHBzRW5jQ3RybC0+
SGFybVNoYXBlR2Fpbl9RMTQsIHBzRW5jQ3RybC0+VGlsdF9RMTQsIHBzRW5jQ3RybC0+TEZfc2hw
X1ExNCwKKyAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkFSX1ExMywgcHNFbmNDdHJsLT5IYXJt
U2hhcGVHYWluX1ExNCwgcHNFbmNDdHJsLT5UaWx0X1ExNCwgcHNFbmNDdHJsLT5MRl9zaHBfUTE0
LAogICAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+R2FpbnNfUTE2LCBwc0VuY0N0cmwtPnBpdGNo
TCwgcHNFbmNDdHJsLT5MYW1iZGFfUTEwLCBwc0VuY0N0cmwtPkxUUF9zY2FsZV9RMTQsIHBzRW5j
LT5zQ21uLmFyY2ggKTsKICAgICAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9M
UENfRklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9MUENfRklYLmMKaW5kZXggZTExY2RjODZlNjdkMGY4
MzZjNzVlNDAzM2I5ZWUyYjI5MTUzOTRhOC4uZTU1YjYzYWMzMjlhMjE0ZGM1YWM5ZmY0MDg5Mzk0
M2UzM2FkMDgzZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfTFBDX0ZJWC5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9maXhlZC9maW5kX0xQQ19GSVguYwpAQCAtOTIsNyArOTIsNyBAQCB2b2lkIHNpbGtfZmluZF9M
UENfRklYKAogICAgICAgICAgICAgc2lsa19pbnRlcnBvbGF0ZSggTkxTRjBfUTE1LCBwc0VuY0Mt
PnByZXZfTkxTRnFfUTE1LCBOTFNGX1ExNSwgaywgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIgKTsK
IAogICAgICAgICAgICAgLyogQ29udmVydCB0byBMUEMgZm9yIHJlc2lkdWFsIGVuZXJneSBldmFs
dWF0aW9uICovCi0gICAgICAgICAgICBzaWxrX05MU0YyQSggYV90bXBfUTEyLCBOTFNGMF9RMTUs
IHBzRW5jQy0+cHJlZGljdExQQ09yZGVyICk7CisgICAgICAgICAgICBzaWxrX05MU0YyQSggYV90
bXBfUTEyLCBOTFNGMF9RMTUsIHBzRW5jQy0+cHJlZGljdExQQ09yZGVyLCBwc0VuY0MtPmFyY2gg
KTsKIAogICAgICAgICAgICAgLyogQ2FsY3VsYXRlIHJlc2lkdWFsIGVuZXJneSB3aXRoIE5MU0Yg
aW50ZXJwb2xhdGlvbiAqLwogICAgICAgICAgICAgc2lsa19MUENfYW5hbHlzaXNfZmlsdGVyKCBM
UENfcmVzLCB4LCBhX3RtcF9RMTIsIDIgKiBzdWJmcl9sZW5ndGgsIHBzRW5jQy0+cHJlZGljdExQ
Q09yZGVyLCBwc0VuY0MtPmFyY2ggKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX0xUUF9G
SVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9maXhlZC9maW5kX0xUUF9GSVguYwppbmRleCAxMzE0YTI4MTM3NWJkNjljNzI3
MGNhMjVmZGQ5MWU4OGUzOGMwYzc2Li42MmQ0YWZiMjUwNzQwNzI2NzExMmVjNDM5NDZhY2VlZWVk
YjI1YzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9MVFBfRklYLmMKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zp
eGVkL2ZpbmRfTFRQX0ZJWC5jCkBAIC0zMiwyMTQgKzMyLDY4IEBAIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogI2luY2x1ZGUgIm1haW5fRklYLmgiCiAjaW5jbHVkZSAidHVuaW5nX3BhcmFt
ZXRlcnMuaCIKIAotLyogSGVhZCByb29tIGZvciBjb3JyZWxhdGlvbnMgKi8KLSNkZWZpbmUgTFRQ
X0NPUlJTX0hFQURfUk9PTSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMgotCi12b2lkIHNp
bGtfZml0X0xUUCgKLSAgICBvcHVzX2ludDMyIExUUF9jb2Vmc19RMTZbIExUUF9PUkRFUiBdLAot
ICAgIG9wdXNfaW50MTYgTFRQX2NvZWZzX1ExNFsgTFRQX09SREVSIF0KLSk7Ci0KIHZvaWQgc2ls
a19maW5kX0xUUF9GSVgoCi0gICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICAgICBiX1Ex
NFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgLyogTyAgICBMVFAgY29lZnMgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgIFdMVFBbIE1BWF9O
Ql9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBPICAgIFdlaWdodCBmb3IgTFRQ
IHF1YW50aXphdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgKkxUUHJlZENvZEdhaW5fUTcs
ICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIGNvZGluZyBnYWluICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAg
Y29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICByX2xwY1tdLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICByZXNpZHVhbCBzaWduYWwgYWZ0ZXIgTFBDIHNpZ25hbCAr
IHN0YXRlIGZvciBmaXJzdCAxMCBtcyAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2lu
dDMyICAgICAgICAgICAgICAgICAgICAgIFhYTFRQX1ExN1sgTUFYX05CX1NVQkZSICogTFRQX09S
REVSICogTFRQX09SREVSIF0sIC8qIE8gICAgQ29ycmVsYXRpb24gbWF0cml4ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAg
ICAgICAgICAgICAgICAgICAgeFhMVFBfUTE3WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwg
IC8qIE8gICAgQ29ycmVsYXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgICAgICByX3B0cltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBSZXNpZHVhbCBzaWduYWwgYWZ0ZXIgTFBDICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAg
ICAgIGxhZ1sgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExUUCBs
YWdzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgV2do
dF9RMTVbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgIC8qIEkgICAgd2VpZ2h0cyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBzdWJmcl9sZW5n
dGgsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBzdWJmcmFtZSBsZW5ndGggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbWVtX29mZnNldCwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHNhbXBsZXMgaW4gTFRQIG1lbW9yeSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19p
bnQgICAgICAgICAgICAgICAgICAgICAgICBjb3JyX3JzaGlmdHNbIE1BWF9OQl9TVUJGUiBdLCAg
ICAgICAgICAgLyogTyAgICByaWdodCBzaGlmdHMgYXBwbGllZCB0byBjb3JyZWxhdGlvbnMgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgICAgIHN1YmZyX2xlbmd0aCwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIFN1YmZyYW1lIGxlbmd0aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgbmJfc3ViZnIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgTnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSdW4t
dGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICkKIHsKLSAgICBvcHVzX2ludCAgIGksIGssIGxzaGlmdDsKLSAg
ICBjb25zdCBvcHVzX2ludDE2ICpyX3B0ciwgKmxhZ19wdHI7Ci0gICAgb3B1c19pbnQxNiAqYl9R
MTRfcHRyOwotCi0gICAgb3B1c19pbnQzMiByZWd1OwotICAgIG9wdXNfaW50MzIgKldMVFBfcHRy
OwotICAgIG9wdXNfaW50MzIgYl9RMTZbIExUUF9PUkRFUiBdLCBkZWx0YV9iX1ExNFsgTFRQX09S
REVSIF0sIGRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgbnJnWyBNQVhfTkJfU1VCRlIgXSwgZ19RMjY7
Ci0gICAgb3B1c19pbnQzMiB3WyBNQVhfTkJfU1VCRlIgXSwgV0xUUF9tYXgsIG1heF9hYnNfZF9R
MTQsIG1heF93X2JpdHM7Ci0KLSAgICBvcHVzX2ludDMyIHRlbXAzMiwgZGVub20zMjsKLSAgICBv
cHVzX2ludCAgIGV4dHJhX3NoaWZ0czsKLSAgICBvcHVzX2ludCAgIHJyX3NoaWZ0cywgbWF4UnNo
aWZ0cywgbWF4UnNoaWZ0c193eHRyYSwgTFpzOwotICAgIG9wdXNfaW50MzIgTFBDX3Jlc19ucmcs
IExQQ19MVFBfcmVzX25yZywgZGl2X1ExNjsKLSAgICBvcHVzX2ludDMyIFJyWyBMVFBfT1JERVIg
XSwgcnJbIE1BWF9OQl9TVUJGUiBdOwotICAgIG9wdXNfaW50MzIgd2QsIG1fUTEyOwotCi0gICAg
Yl9RMTRfcHRyID0gYl9RMTQ7Ci0gICAgV0xUUF9wdHIgID0gV0xUUDsKLSAgICByX3B0ciAgICAg
PSAmcl9scGNbIG1lbV9vZmZzZXQgXTsKKyAgICBvcHVzX2ludCAgIGksIGssIGV4dHJhX3NoaWZ0
czsKKyAgICBvcHVzX2ludCAgIHh4X3NoaWZ0cywgeFhfc2hpZnRzLCBYWF9zaGlmdHM7CisgICAg
Y29uc3Qgb3B1c19pbnQxNiAqbGFnX3B0cjsKKyAgICBvcHVzX2ludDMyICpYWExUUF9RMTdfcHRy
LCAqeFhMVFBfUTE3X3B0cjsKKyAgICBvcHVzX2ludDMyIHh4LCBucmcsIHRlbXA7CisKKyAgICB4
WExUUF9RMTdfcHRyID0geFhMVFBfUTE3OworICAgIFhYTFRQX1ExN19wdHIgPSBYWExUUF9RMTc7
CiAgICAgZm9yKCBrID0gMDsgayA8IG5iX3N1YmZyOyBrKysgKSB7CiAgICAgICAgIGxhZ19wdHIg
PSByX3B0ciAtICggbGFnWyBrIF0gKyBMVFBfT1JERVIgLyAyICk7CiAKLSAgICAgICAgc2lsa19z
dW1fc3FyX3NoaWZ0KCAmcnJbIGsgXSwgJnJyX3NoaWZ0cywgcl9wdHIsIHN1YmZyX2xlbmd0aCAp
OyAvKiByclsgayBdIGluIFEoIC1ycl9zaGlmdHMgKSAqLwotCi0gICAgICAgIC8qIEFzc3VyZSBo
ZWFkcm9vbSAqLwotICAgICAgICBMWnMgPSBzaWxrX0NMWjMyKCBycltrXSApOwotICAgICAgICBp
ZiggTFpzIDwgTFRQX0NPUlJTX0hFQURfUk9PTSApIHsKLSAgICAgICAgICAgIHJyWyBrIF0gPSBz
aWxrX1JTSElGVF9ST1VORCggcnJbIGsgXSwgTFRQX0NPUlJTX0hFQURfUk9PTSAtIExacyApOwot
ICAgICAgICAgICAgcnJfc2hpZnRzICs9ICggTFRQX0NPUlJTX0hFQURfUk9PTSAtIExacyApOwot
ICAgICAgICB9Ci0gICAgICAgIGNvcnJfcnNoaWZ0c1sgayBdID0gcnJfc2hpZnRzOwotICAgICAg
ICBzaWxrX2NvcnJNYXRyaXhfRklYKCBsYWdfcHRyLCBzdWJmcl9sZW5ndGgsIExUUF9PUkRFUiwg
TFRQX0NPUlJTX0hFQURfUk9PTSwgV0xUUF9wdHIsICZjb3JyX3JzaGlmdHNbIGsgXSwgYXJjaCAp
OyAgLyogV0xUUF9maXhfcHRyIGluIFEoIC1jb3JyX3JzaGlmdHNbIGsgXSApICovCi0KLSAgICAg
ICAgLyogVGhlIGNvcnJlbGF0aW9uIHZlY3RvciBhbHdheXMgaGFzIGxvd2VyIG1heCBhYnMgdmFs
dWUgdGhhbiByciBhbmQvb3IgUlIgc28gaGVhZCByb29tIGlzIGFzc3VyZWQgKi8KLSAgICAgICAg
c2lsa19jb3JyVmVjdG9yX0ZJWCggbGFnX3B0ciwgcl9wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09S
REVSLCBSciwgY29ycl9yc2hpZnRzWyBrIF0sIGFyY2ggKTsgIC8qIFJyX2ZpeF9wdHIgICBpbiBR
KCAtY29ycl9yc2hpZnRzWyBrIF0gKSAqLwotICAgICAgICBpZiggY29ycl9yc2hpZnRzWyBrIF0g
PiBycl9zaGlmdHMgKSB7Ci0gICAgICAgICAgICByclsgayBdID0gc2lsa19SU0hJRlQoIHJyWyBr
IF0sIGNvcnJfcnNoaWZ0c1sgayBdIC0gcnJfc2hpZnRzICk7IC8qIHJyWyBrIF0gaW4gUSggLWNv
cnJfcnNoaWZ0c1sgayBdICkgKi8KKyAgICAgICAgc2lsa19zdW1fc3FyX3NoaWZ0KCAmeHgsICZ4
eF9zaGlmdHMsIHJfcHRyLCBzdWJmcl9sZW5ndGggKyBMVFBfT1JERVIgKTsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogeHggaW4gUSggLXh4X3NoaWZ0cyApICovCisgICAgICAgIHNpbGtf
Y29yck1hdHJpeF9GSVgoIGxhZ19wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09SREVSLCBYWExUUF9R
MTdfcHRyLCAmbnJnLCAmWFhfc2hpZnRzLCBhcmNoICk7ICAgIC8qIFhYTFRQX1ExN19wdHIgYW5k
IG5yZyBpbiBRKCAtWFhfc2hpZnRzICkgKi8KKyAgICAgICAgZXh0cmFfc2hpZnRzID0geHhfc2hp
ZnRzIC0gWFhfc2hpZnRzOworICAgICAgICBpZiggZXh0cmFfc2hpZnRzID4gMCApIHsKKyAgICAg
ICAgICAgIC8qIFNoaWZ0IFhYICovCisgICAgICAgICAgICB4WF9zaGlmdHMgPSB4eF9zaGlmdHM7
CisgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSICogTFRQX09SREVSOyBpKysg
KSB7CisgICAgICAgICAgICAgICAgWFhMVFBfUTE3X3B0clsgaSBdID0gc2lsa19SU0hJRlQzMigg
WFhMVFBfUTE3X3B0clsgaSBdLCBleHRyYV9zaGlmdHMgKTsgICAgICAgICAgICAgIC8qIFEoIC14
WF9zaGlmdHMgKSAqLworICAgICAgICAgICAgfQorICAgICAgICAgICAgbnJnID0gc2lsa19SU0hJ
RlQzMiggbnJnLCBleHRyYV9zaGlmdHMgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBRKCAteFhfc2hpZnRzICkgKi8KKyAgICAgICAgfSBlbHNlIGlm
KCBleHRyYV9zaGlmdHMgPCAwICkgeworICAgICAgICAgICAgLyogU2hpZnQgeHggKi8KKyAgICAg
ICAgICAgIHhYX3NoaWZ0cyA9IFhYX3NoaWZ0czsKKyAgICAgICAgICAgIHh4ID0gc2lsa19SU0hJ
RlQzMiggeHgsIC1leHRyYV9zaGlmdHMgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogUSggLXhYX3NoaWZ0cyApICovCisgICAgICAgIH0gZWxzZSB7
CisgICAgICAgICAgICB4WF9zaGlmdHMgPSB4eF9zaGlmdHM7CiAgICAgICAgIH0KLSAgICAgICAg
c2lsa19hc3NlcnQoIHJyWyBrIF0gPj0gMCApOwotCi0gICAgICAgIHJlZ3UgPSAxOwotICAgICAg
ICByZWd1ID0gc2lsa19TTUxBV0IoIHJlZ3UsIHJyWyBrIF0sIFNJTEtfRklYX0NPTlNUKCBMVFBf
REFNUElORy8zLCAxNiApICk7Ci0gICAgICAgIHJlZ3UgPSBzaWxrX1NNTEFXQiggcmVndSwgbWF0
cml4X3B0ciggV0xUUF9wdHIsIDAsIDAsIExUUF9PUkRFUiApLCBTSUxLX0ZJWF9DT05TVCggTFRQ
X0RBTVBJTkcvMywgMTYgKSApOwotICAgICAgICByZWd1ID0gc2lsa19TTUxBV0IoIHJlZ3UsIG1h
dHJpeF9wdHIoIFdMVFBfcHRyLCBMVFBfT1JERVItMSwgTFRQX09SREVSLTEsIExUUF9PUkRFUiAp
LCBTSUxLX0ZJWF9DT05TVCggTFRQX0RBTVBJTkcvMywgMTYgKSApOwotICAgICAgICBzaWxrX3Jl
Z3VsYXJpemVfY29ycmVsYXRpb25zX0ZJWCggV0xUUF9wdHIsICZycltrXSwgcmVndSwgTFRQX09S
REVSICk7Ci0KLSAgICAgICAgc2lsa19zb2x2ZV9MRExfRklYKCBXTFRQX3B0ciwgTFRQX09SREVS
LCBSciwgYl9RMTYgKTsgLyogV0xUUF9maXhfcHRyIGFuZCBScl9maXhfcHRyIGJvdGggaW4gUSgt
Y29ycl9yc2hpZnRzW2tdKSAqLwotCi0gICAgICAgIC8qIExpbWl0IGFuZCBzdG9yZSBpbiBRMTQg
Ki8KLSAgICAgICAgc2lsa19maXRfTFRQKCBiX1ExNiwgYl9RMTRfcHRyICk7Ci0KLSAgICAgICAg
LyogQ2FsY3VsYXRlIHJlc2lkdWFsIGVuZXJneSAqLwotICAgICAgICBucmdbIGsgXSA9IHNpbGtf
cmVzaWR1YWxfZW5lcmd5MTZfY292YXJfRklYKCBiX1ExNF9wdHIsIFdMVFBfcHRyLCBSciwgcnJb
IGsgXSwgTFRQX09SREVSLCAxNCApOyAvKiBucmdfZml4IGluIFEoIC1jb3JyX3JzaGlmdHNbIGsg
XSApICovCi0KLSAgICAgICAgLyogdGVtcCA9IFdnaHRbIGsgXSAvICggbnJnWyBrIF0gKiBXZ2h0
WyBrIF0gKyAwLjAxZiAqIHN1YmZyX2xlbmd0aCApOyAqLwotICAgICAgICBleHRyYV9zaGlmdHMg
PSBzaWxrX21pbl9pbnQoIGNvcnJfcnNoaWZ0c1sgayBdLCBMVFBfQ09SUlNfSEVBRF9ST09NICk7
Ci0gICAgICAgIGRlbm9tMzIgPSBzaWxrX0xTSElGVF9TQVQzMiggc2lsa19TTVVMV0IoIG5yZ1sg
ayBdLCBXZ2h0X1ExNVsgayBdICksIDEgKyBleHRyYV9zaGlmdHMgKSArIC8qIFEoIC1jb3JyX3Jz
aGlmdHNbIGsgXSArIGV4dHJhX3NoaWZ0cyApICovCi0gICAgICAgICAgICBzaWxrX1JTSElGVCgg
c2lsa19TTVVMV0IoIChvcHVzX2ludDMyKXN1YmZyX2xlbmd0aCwgNjU1ICksIGNvcnJfcnNoaWZ0
c1sgayBdIC0gZXh0cmFfc2hpZnRzICk7ICAgIC8qIFEoIC1jb3JyX3JzaGlmdHNbIGsgXSArIGV4
dHJhX3NoaWZ0cyApICovCi0gICAgICAgIGRlbm9tMzIgPSBzaWxrX21heCggZGVub20zMiwgMSAp
OwotICAgICAgICBzaWxrX2Fzc2VydCggKChvcHVzX2ludDY0KVdnaHRfUTE1WyBrIF0gPDwgMTYg
KSA8IHNpbGtfaW50MzJfTUFYICk7ICAgICAgICAgICAgICAgICAgICAgICAvKiBXZ2h0IGFsd2F5
cyA8IDAuNSBpbiBRMCAqLwotICAgICAgICB0ZW1wMzIgPSBzaWxrX0RJVjMyKCBzaWxrX0xTSElG
VCggKG9wdXNfaW50MzIpV2dodF9RMTVbIGsgXSwgMTYgKSwgZGVub20zMiApOyAgICAgICAgICAg
ICAvKiBRKCAxNSArIDE2ICsgY29ycl9yc2hpZnRzW2tdIC0gZXh0cmFfc2hpZnRzICkgKi8KLSAg
ICAgICAgdGVtcDMyID0gc2lsa19SU0hJRlQoIHRlbXAzMiwgMzEgKyBjb3JyX3JzaGlmdHNbIGsg
XSAtIGV4dHJhX3NoaWZ0cyAtIDI2ICk7ICAgICAgICAgICAgICAgLyogUTI2ICovCisgICAgICAg
IHNpbGtfY29yclZlY3Rvcl9GSVgoIGxhZ19wdHIsIHJfcHRyLCBzdWJmcl9sZW5ndGgsIExUUF9P
UkRFUiwgeFhMVFBfUTE3X3B0ciwgeFhfc2hpZnRzLCBhcmNoICk7ICAgIC8qIHhYTFRQX1ExN19w
dHIgaW4gUSggLXhYX3NoaWZ0cyApICovCiAKLSAgICAgICAgLyogTGltaXQgdGVtcCBzdWNoIHRo
YXQgdGhlIGJlbG93IHNjYWxpbmcgbmV2ZXIgd3JhcHMgYXJvdW5kICovCi0gICAgICAgIFdMVFBf
bWF4ID0gMDsKKyAgICAgICAgLyogQXQgdGhpcyBwb2ludCBhbGwgY29ycmVsYXRpb25zIGFyZSBp
biBRKC14WF9zaGlmdHMpICovCisgICAgICAgIHRlbXAgPSBzaWxrX1NNTEFXQiggMSwgbnJnLCBT
SUxLX0ZJWF9DT05TVCggTFRQX0NPUlJfSU5WX01BWCwgMTYgKSApOworICAgICAgICB0ZW1wID0g
c2lsa19tYXgoIHRlbXAsIHh4ICk7CitUSUMoZGl2KQorI2lmIDAKICAgICAgICAgZm9yKCBpID0g
MDsgaSA8IExUUF9PUkRFUiAqIExUUF9PUkRFUjsgaSsrICkgewotICAgICAgICAgICAgV0xUUF9t
YXggPSBzaWxrX21heCggV0xUUF9wdHJbIGkgXSwgV0xUUF9tYXggKTsKKyAgICAgICAgICAgIFhY
TFRQX1ExN19wdHJbIGkgXSA9IHNpbGtfRElWMzJfdmFyUSggWFhMVFBfUTE3X3B0clsgaSBdLCB0
ZW1wLCAxNyApOwogICAgICAgICB9Ci0gICAgICAgIGxzaGlmdCA9IHNpbGtfQ0xaMzIoIFdMVFBf
bWF4ICkgLSAxIC0gMzsgLyoga2VlcCAzIGJpdHMgZnJlZSBmb3IgdnFfbmVhcmVzdF9uZWlnaGJv
cl9maXggKi8KLSAgICAgICAgc2lsa19hc3NlcnQoIDI2IC0gMTggKyBsc2hpZnQgPj0gMCApOwot
ICAgICAgICBpZiggMjYgLSAxOCArIGxzaGlmdCA8IDMxICkgewotICAgICAgICAgICAgdGVtcDMy
ID0gc2lsa19taW5fMzIoIHRlbXAzMiwgc2lsa19MU0hJRlQoIChvcHVzX2ludDMyKTEsIDI2IC0g
MTggKyBsc2hpZnQgKSApOwotICAgICAgICB9Ci0KLSAgICAgICAgc2lsa19zY2FsZV92ZWN0b3Iz
Ml9RMjZfbHNoaWZ0XzE4KCBXTFRQX3B0ciwgdGVtcDMyLCBMVFBfT1JERVIgKiBMVFBfT1JERVIg
KTsgLyogV0xUUF9wdHIgaW4gUSggMTggLSBjb3JyX3JzaGlmdHNbIGsgXSApICovCi0KLSAgICAg
ICAgd1sgayBdID0gbWF0cml4X3B0ciggV0xUUF9wdHIsIExUUF9PUkRFUi8yLCBMVFBfT1JERVIv
MiwgTFRQX09SREVSICk7IC8qIHcgaW4gUSggMTggLSBjb3JyX3JzaGlmdHNbIGsgXSApICovCi0g
ICAgICAgIHNpbGtfYXNzZXJ0KCB3W2tdID49IDAgKTsKLQotICAgICAgICByX3B0ciAgICAgKz0g
c3ViZnJfbGVuZ3RoOwotICAgICAgICBiX1ExNF9wdHIgKz0gTFRQX09SREVSOwotICAgICAgICBX
TFRQX3B0ciAgKz0gTFRQX09SREVSICogTFRQX09SREVSOwotICAgIH0KLQotICAgIG1heFJzaGlm
dHMgPSAwOwotICAgIGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysrICkgewotICAgICAgICBt
YXhSc2hpZnRzID0gc2lsa19tYXhfaW50KCBjb3JyX3JzaGlmdHNbIGsgXSwgbWF4UnNoaWZ0cyAp
OwotICAgIH0KLQotICAgIC8qIENvbXB1dGUgTFRQIGNvZGluZyBnYWluICovCi0gICAgaWYoIExU
UHJlZENvZEdhaW5fUTcgIT0gTlVMTCApIHsKLSAgICAgICAgTFBDX0xUUF9yZXNfbnJnID0gMDsK
LSAgICAgICAgTFBDX3Jlc19ucmcgICAgID0gMDsKLSAgICAgICAgc2lsa19hc3NlcnQoIExUUF9D
T1JSU19IRUFEX1JPT00gPj0gMiApOyAvKiBDaGVjayB0aGF0IG5vIG92ZXJmbG93IHdpbGwgaGFw
cGVuIHdoZW4gYWRkaW5nICovCi0gICAgICAgIGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysr
ICkgewotICAgICAgICAgICAgTFBDX3Jlc19ucmcgICAgID0gc2lsa19BREQzMiggTFBDX3Jlc19u
cmcsICAgICBzaWxrX1JTSElGVCggc2lsa19BREQzMiggc2lsa19TTVVMV0IoICByclsgayBdLCBX
Z2h0X1ExNVsgayBdICksIDEgKSwgMSArICggbWF4UnNoaWZ0cyAtIGNvcnJfcnNoaWZ0c1sgayBd
ICkgKSApOyAvKiBRKCAtbWF4UnNoaWZ0cyApICovCi0gICAgICAgICAgICBMUENfTFRQX3Jlc19u
cmcgPSBzaWxrX0FERDMyKCBMUENfTFRQX3Jlc19ucmcsIHNpbGtfUlNISUZUKCBzaWxrX0FERDMy
KCBzaWxrX1NNVUxXQiggbnJnWyBrIF0sIFdnaHRfUTE1WyBrIF0gKSwgMSApLCAxICsgKCBtYXhS
c2hpZnRzIC0gY29ycl9yc2hpZnRzWyBrIF0gKSApICk7IC8qIFEoIC1tYXhSc2hpZnRzICkgKi8K
LSAgICAgICAgfQotICAgICAgICBMUENfTFRQX3Jlc19ucmcgPSBzaWxrX21heCggTFBDX0xUUF9y
ZXNfbnJnLCAxICk7IC8qIGF2b2lkIGRpdmlzaW9uIGJ5IHplcm8gKi8KLQotICAgICAgICBkaXZf
UTE2ID0gc2lsa19ESVYzMl92YXJRKCBMUENfcmVzX25yZywgTFBDX0xUUF9yZXNfbnJnLCAxNiAp
OwotICAgICAgICAqTFRQcmVkQ29kR2Fpbl9RNyA9ICggb3B1c19pbnQgKXNpbGtfU01VTEJCKCAz
LCBzaWxrX2xpbjJsb2coIGRpdl9RMTYgKSAtICggMTYgPDwgNyApICk7Ci0KLSAgICAgICAgc2ls
a19hc3NlcnQoICpMVFByZWRDb2RHYWluX1E3ID09ICggb3B1c19pbnQgKXNpbGtfU0FUMTYoIHNp
bGtfTVVMKCAzLCBzaWxrX2xpbjJsb2coIGRpdl9RMTYgKSAtICggMTYgPDwgNyApICkgKSApOwot
ICAgIH0KLQotICAgIC8qIHNtb290aGluZyAqLwotICAgIC8qIGQgPSBzdW0oIEIsIDEgKTsgKi8K
LSAgICBiX1ExNF9wdHIgPSBiX1ExNDsKLSAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsr
KyApIHsKLSAgICAgICAgZF9RMTRbIGsgXSA9IDA7CiAgICAgICAgIGZvciggaSA9IDA7IGkgPCBM
VFBfT1JERVI7IGkrKyApIHsKLSAgICAgICAgICAgIGRfUTE0WyBrIF0gKz0gYl9RMTRfcHRyWyBp
IF07Ci0gICAgICAgIH0KLSAgICAgICAgYl9RMTRfcHRyICs9IExUUF9PUkRFUjsKLSAgICB9Ci0K
LSAgICAvKiBtID0gKCB3ICogZCcgKSAvICggc3VtKCB3ICkgKyAxZS0zICk7ICovCi0KLSAgICAv
KiBGaW5kIG1heGltdW0gYWJzb2x1dGUgdmFsdWUgb2YgZF9RMTQgYW5kIHRoZSBiaXRzIHVzZWQg
YnkgdyBpbiBRMCAqLwotICAgIG1heF9hYnNfZF9RMTQgPSAwOwotICAgIG1heF93X2JpdHMgICAg
PSAwOwotICAgIGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysrICkgewotICAgICAgICBtYXhf
YWJzX2RfUTE0ID0gc2lsa19tYXhfMzIoIG1heF9hYnNfZF9RMTQsIHNpbGtfYWJzKCBkX1ExNFsg
ayBdICkgKTsKLSAgICAgICAgLyogd1sgayBdIGlzIGluIFEoIDE4IC0gY29ycl9yc2hpZnRzWyBr
IF0gKSAqLwotICAgICAgICAvKiBGaW5kIGJpdHMgbmVlZGVkIGluIFEoIDE4IC0gbWF4UnNoaWZ0
cyApICovCi0gICAgICAgIG1heF93X2JpdHMgPSBzaWxrX21heF8zMiggbWF4X3dfYml0cywgMzIg
LSBzaWxrX0NMWjMyKCB3WyBrIF0gKSArIGNvcnJfcnNoaWZ0c1sgayBdIC0gbWF4UnNoaWZ0cyAp
OwotICAgIH0KLQotICAgIC8qIG1heF9hYnNfZF9RMTQgPSAoNSA8PCAxNSk7IHdvcnN0IGNhc2Us
IGkuZS4gTFRQX09SREVSICogLXNpbGtfaW50MTZfTUlOICovCi0gICAgc2lsa19hc3NlcnQoIG1h
eF9hYnNfZF9RMTQgPD0gKCA1IDw8IDE1ICkgKTsKLQotICAgIC8qIEhvdyBtYW55IGJpdHMgaXMg
bmVlZGVkIGZvciB3KmQnIGluIFEoIDE4IC0gbWF4UnNoaWZ0cyApIGluIHRoZSB3b3JzdCBjYXNl
LCBvZiBhbGwgZF9RMTQncyBiZWluZyBlcXVhbCB0byBtYXhfYWJzX2RfUTE0ICovCi0gICAgZXh0
cmFfc2hpZnRzID0gbWF4X3dfYml0cyArIDMyIC0gc2lsa19DTFozMiggbWF4X2Fic19kX1ExNCAp
IC0gMTQ7Ci0KLSAgICAvKiBTdWJ0cmFjdCB3aGF0IHdlIGdvdCBhdmFpbGFibGU7IGJpdHMgaW4g
b3V0cHV0IHZhciBwbHVzIG1heFJzaGlmdHMgKi8KLSAgICBleHRyYV9zaGlmdHMgLT0gKCAzMiAt
IDEgLSAyICsgbWF4UnNoaWZ0cyApOyAvKiBLZWVwIHNpZ24gYml0IGZyZWUgYXMgd2VsbCBhcyAy
IGJpdHMgZm9yIGFjY3VtdWxhdGlvbiAqLwotICAgIGV4dHJhX3NoaWZ0cyA9IHNpbGtfbWF4X2lu
dCggZXh0cmFfc2hpZnRzLCAwICk7Ci0KLSAgICBtYXhSc2hpZnRzX3d4dHJhID0gbWF4UnNoaWZ0
cyArIGV4dHJhX3NoaWZ0czsKLQotICAgIHRlbXAzMiA9IHNpbGtfUlNISUZUKCAyNjIsIG1heFJz
aGlmdHMgKyBleHRyYV9zaGlmdHMgKSArIDE7IC8qIDFlLTNmIGluIFEoIDE4IC0gKG1heFJzaGlm
dHMgKyBleHRyYV9zaGlmdHMpICkgKi8KLSAgICB3ZCA9IDA7Ci0gICAgZm9yKCBrID0gMDsgayA8
IG5iX3N1YmZyOyBrKysgKSB7Ci0gICAgICAgIC8qIHcgaGFzIGF0IGxlYXN0IDIgYml0cyBvZiBo
ZWFkcm9vbSBzbyBubyBvdmVyZmxvdyBzaG91bGQgaGFwcGVuICovCi0gICAgICAgIHRlbXAzMiA9
IHNpbGtfQUREMzIoIHRlbXAzMiwgICAgICAgICAgICAgICAgICAgICBzaWxrX1JTSElGVCggd1sg
ayBdLCBtYXhSc2hpZnRzX3d4dHJhIC0gY29ycl9yc2hpZnRzWyBrIF0gKSApOyAgICAgICAgICAg
ICAgICAgICAgICAvKiBRKCAxOCAtIG1heFJzaGlmdHNfd3h0cmEgKSAqLwotICAgICAgICB3ZCAg
ICAgPSBzaWxrX0FERDMyKCB3ZCwgc2lsa19MU0hJRlQoIHNpbGtfU01VTFdXKCBzaWxrX1JTSElG
VCggd1sgayBdLCBtYXhSc2hpZnRzX3d4dHJhIC0gY29ycl9yc2hpZnRzWyBrIF0gKSwgZF9RMTRb
IGsgXSApLCAyICkgKTsgLyogUSggMTggLSBtYXhSc2hpZnRzX3d4dHJhICkgKi8KLSAgICB9Ci0g
ICAgbV9RMTIgPSBzaWxrX0RJVjMyX3ZhclEoIHdkLCB0ZW1wMzIsIDEyICk7Ci0KLSAgICBiX1Ex
NF9wdHIgPSBiX1ExNDsKLSAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKLSAg
ICAgICAgLyogd19maXhbIGsgXSBmcm9tIFEoIDE4IC0gY29ycl9yc2hpZnRzWyBrIF0gKSB0byBR
KCAxNiApICovCi0gICAgICAgIGlmKCAyIC0gY29ycl9yc2hpZnRzW2tdID4gMCApIHsKLSAgICAg
ICAgICAgIHRlbXAzMiA9IHNpbGtfUlNISUZUKCB3WyBrIF0sIDIgLSBjb3JyX3JzaGlmdHNbIGsg
XSApOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgdGVtcDMyID0gc2lsa19MU0hJRlRf
U0FUMzIoIHdbIGsgXSwgY29ycl9yc2hpZnRzWyBrIF0gLSAyICk7CisgICAgICAgICAgICB4WExU
UF9RMTdfcHRyWyBpIF0gPSBzaWxrX0RJVjMyX3ZhclEoIHhYTFRQX1ExN19wdHJbIGkgXSwgdGVt
cCwgMTcgKTsKICAgICAgICAgfQotCi0gICAgICAgIGdfUTI2ID0gc2lsa19NVUwoCi0gICAgICAg
ICAgICBzaWxrX0RJVjMyKAotICAgICAgICAgICAgICAgIFNJTEtfRklYX0NPTlNUKCBMVFBfU01P
T1RISU5HLCAyNiApLAotICAgICAgICAgICAgICAgIHNpbGtfUlNISUZUKCBTSUxLX0ZJWF9DT05T
VCggTFRQX1NNT09USElORywgMjYgKSwgMTAgKSArIHRlbXAzMiApLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogUTEwICovCi0gICAgICAgICAgICBzaWxrX0xTSElGVF9TQVQzMiggc2lsa19T
VUJfU0FUMzIoIChvcHVzX2ludDMyKW1fUTEyLCBzaWxrX1JTSElGVCggZF9RMTRbIGsgXSwgMiAp
ICksIDQgKSApOyAgICAvKiBRMTYgKi8KLQotICAgICAgICB0ZW1wMzIgPSAwOwotICAgICAgICBm
b3IoIGkgPSAwOyBpIDwgTFRQX09SREVSOyBpKysgKSB7Ci0gICAgICAgICAgICBkZWx0YV9iX1Ex
NFsgaSBdID0gc2lsa19tYXhfMTYoIGJfUTE0X3B0clsgaSBdLCAxNjM4ICk7ICAgICAvKiAxNjM4
X1ExNCA9IDAuMV9RMCAqLwotICAgICAgICAgICAgdGVtcDMyICs9IGRlbHRhX2JfUTE0WyBpIF07
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUTE0ICovCisjZWxzZQorICAgICAg
ICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSICogTFRQX09SREVSOyBpKysgKSB7CisgICAgICAg
ICAgICBYWExUUF9RMTdfcHRyWyBpIF0gPSAob3B1c19pbnQzMikoIHNpbGtfTFNISUZUNjQoIChv
cHVzX2ludDY0KVhYTFRQX1ExN19wdHJbIGkgXSwgMTcgKSAvIHRlbXAgKTsKICAgICAgICAgfQot
ICAgICAgICB0ZW1wMzIgPSBzaWxrX0RJVjMyKCBnX1EyNiwgdGVtcDMyICk7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogUTE0IC0+IFExMiAqLwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwg
TFRQX09SREVSOyBpKysgKSB7Ci0gICAgICAgICAgICBiX1ExNF9wdHJbIGkgXSA9IHNpbGtfTElN
SVRfMzIoIChvcHVzX2ludDMyKWJfUTE0X3B0clsgaSBdICsgc2lsa19TTVVMV0IoIHNpbGtfTFNI
SUZUX1NBVDMyKCB0ZW1wMzIsIDQgKSwgZGVsdGFfYl9RMTRbIGkgXSApLCAtMTYwMDAsIDI4MDAw
ICk7CisgICAgICAgICAgICB4WExUUF9RMTdfcHRyWyBpIF0gPSAob3B1c19pbnQzMikoIHNpbGtf
TFNISUZUNjQoIChvcHVzX2ludDY0KXhYTFRQX1ExN19wdHJbIGkgXSwgMTcgKSAvIHRlbXAgKTsK
ICAgICAgICAgfQotICAgICAgICBiX1ExNF9wdHIgKz0gTFRQX09SREVSOwotICAgIH0KLX0KLQot
dm9pZCBzaWxrX2ZpdF9MVFAoCi0gICAgb3B1c19pbnQzMiBMVFBfY29lZnNfUTE2WyBMVFBfT1JE
RVIgXSwKLSAgICBvcHVzX2ludDE2IExUUF9jb2Vmc19RMTRbIExUUF9PUkRFUiBdCi0pCi17Ci0g
ICAgb3B1c19pbnQgaTsKLQotICAgIGZvciggaSA9IDA7IGkgPCBMVFBfT1JERVI7IGkrKyApIHsK
LSAgICAgICAgTFRQX2NvZWZzX1ExNFsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2ls
a19SU0hJRlRfUk9VTkQoIExUUF9jb2Vmc19RMTZbIGkgXSwgMiApICk7CisjZW5kaWYKK1RPQyhk
aXYpCisgICAgICAgIHJfcHRyICAgICAgICAgKz0gc3ViZnJfbGVuZ3RoOworICAgICAgICBYWExU
UF9RMTdfcHRyICs9IExUUF9PUkRFUiAqIExUUF9PUkRFUjsKKyAgICAgICAgeFhMVFBfUTE3X3B0
ciArPSBMVFBfT1JERVI7CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfcGl0
Y2hfbGFnc19GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX3BpdGNoX2xhZ3NfRklYLmMKaW5kZXggYjg0
NDBhODI0N2EzMWNlNGNmNzY4ZjZmMTQ4ZGQ0YTllNzVmMzUzMy4uOTMwM2U5ZGIxZjMzOGNjYzE3
NzFlOTBjYjZiNTNjMDVlNjA1NDdkYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfcGl0Y2hf
bGFnc19GSVguYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9waXRjaF9sYWdzX0ZJWC5jCkBAIC00NCw3
ICs0NCw3IEBAIHZvaWQgc2lsa19maW5kX3BpdGNoX2xhZ3NfRklYKAogewogICAgIG9wdXNfaW50
ICAgYnVmX2xlbiwgaSwgc2NhbGU7CiAgICAgb3B1c19pbnQzMiB0aHJobGRfUTEzLCByZXNfbnJn
OwotICAgIGNvbnN0IG9wdXNfaW50MTYgKnhfYnVmLCAqeF9idWZfcHRyOworICAgIGNvbnN0IG9w
dXNfaW50MTYgKnhfcHRyOwogICAgIFZBUkRFQ0woIG9wdXNfaW50MTYsIFdzaWcgKTsKICAgICBv
cHVzX2ludDE2ICpXc2lnX3B0cjsKICAgICBvcHVzX2ludDMyIGF1dG9fY29yclsgTUFYX0ZJTkRf
UElUQ0hfTFBDX09SREVSICsgMSBdOwpAQCAtNjEsOCArNjEsNiBAQCB2b2lkIHNpbGtfZmluZF9w
aXRjaF9sYWdzX0ZJWCgKICAgICAvKiBTYWZldHkgY2hlY2sgKi8KICAgICBzaWxrX2Fzc2VydCgg
YnVmX2xlbiA+PSBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCApOwogCi0gICAgeF9i
dWYgPSB4IC0gcHNFbmMtPnNDbW4ubHRwX21lbV9sZW5ndGg7Ci0KICAgICAvKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBFc3RpbWF0ZSBMUEMgQVIgY29lZmZp
Y2llbnRzICAgICAgKi8KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
Ki8KQEAgLTcyLDE5ICs3MCwxOSBAQCB2b2lkIHNpbGtfZmluZF9waXRjaF9sYWdzX0ZJWCgKICAg
ICBBTExPQyggV3NpZywgcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGgsIG9wdXNfaW50
MTYgKTsKIAogICAgIC8qIEZpcnN0IExBX0xUUCBzYW1wbGVzICovCi0gICAgeF9idWZfcHRyID0g
eF9idWYgKyBidWZfbGVuIC0gcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGg7CisgICAg
eF9wdHIgPSB4ICsgYnVmX2xlbiAtIHBzRW5jLT5zQ21uLnBpdGNoX0xQQ193aW5fbGVuZ3RoOwog
ICAgIFdzaWdfcHRyICA9IFdzaWc7Ci0gICAgc2lsa19hcHBseV9zaW5lX3dpbmRvdyggV3NpZ19w
dHIsIHhfYnVmX3B0ciwgMSwgcHNFbmMtPnNDbW4ubGFfcGl0Y2ggKTsKKyAgICBzaWxrX2FwcGx5
X3NpbmVfd2luZG93KCBXc2lnX3B0ciwgeF9wdHIsIDEsIHBzRW5jLT5zQ21uLmxhX3BpdGNoICk7
CiAKICAgICAvKiBNaWRkbGUgdW4gLSB3aW5kb3dlZCBzYW1wbGVzICovCiAgICAgV3NpZ19wdHIg
ICs9IHBzRW5jLT5zQ21uLmxhX3BpdGNoOwotICAgIHhfYnVmX3B0ciArPSBwc0VuYy0+c0Ntbi5s
YV9waXRjaDsKLSAgICBzaWxrX21lbWNweSggV3NpZ19wdHIsIHhfYnVmX3B0ciwgKCBwc0VuYy0+
c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCAtIHNpbGtfTFNISUZUKCBwc0VuYy0+c0Ntbi5sYV9w
aXRjaCwgMSApICkgKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOworICAgIHhfcHRyICs9IHBzRW5j
LT5zQ21uLmxhX3BpdGNoOworICAgIHNpbGtfbWVtY3B5KCBXc2lnX3B0ciwgeF9wdHIsICggcHNF
bmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGggLSBzaWxrX0xTSElGVCggcHNFbmMtPnNDbW4u
bGFfcGl0Y2gsIDEgKSApICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKIAogICAgIC8qIExhc3Qg
TEFfTFRQIHNhbXBsZXMgKi8KICAgICBXc2lnX3B0ciAgKz0gcHNFbmMtPnNDbW4ucGl0Y2hfTFBD
X3dpbl9sZW5ndGggLSBzaWxrX0xTSElGVCggcHNFbmMtPnNDbW4ubGFfcGl0Y2gsIDEgKTsKLSAg
ICB4X2J1Zl9wdHIgKz0gcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGggLSBzaWxrX0xT
SElGVCggcHNFbmMtPnNDbW4ubGFfcGl0Y2gsIDEgKTsKLSAgICBzaWxrX2FwcGx5X3NpbmVfd2lu
ZG93KCBXc2lnX3B0ciwgeF9idWZfcHRyLCAyLCBwc0VuYy0+c0Ntbi5sYV9waXRjaCApOworICAg
IHhfcHRyICs9IHBzRW5jLT5zQ21uLnBpdGNoX0xQQ193aW5fbGVuZ3RoIC0gc2lsa19MU0hJRlQo
IHBzRW5jLT5zQ21uLmxhX3BpdGNoLCAxICk7CisgICAgc2lsa19hcHBseV9zaW5lX3dpbmRvdygg
V3NpZ19wdHIsIHhfcHRyLCAyLCBwc0VuYy0+c0Ntbi5sYV9waXRjaCApOwogCiAgICAgLyogQ2Fs
Y3VsYXRlIGF1dG9jb3JyZWxhdGlvbiBzZXF1ZW5jZSAqLwogICAgIHNpbGtfYXV0b2NvcnIoIGF1
dG9fY29yciwgJnNjYWxlLCBXc2lnLCBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCwg
cHNFbmMtPnNDbW4ucGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIgKyAxLCBhcmNoICk7CkBAIC0xMTIs
NyArMTEwLDcgQEAgdm9pZCBzaWxrX2ZpbmRfcGl0Y2hfbGFnc19GSVgoCiAgICAgLyoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIExQQyBhbmFseXNpcyBm
aWx0ZXJpbmcgICAgICAgICAgICAgICAgKi8KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCi0gICAgc2lsa19MUENfYW5hbHlzaXNfZmlsdGVyKCByZXMsIHhf
YnVmLCBBX1ExMiwgYnVmX2xlbiwgcHNFbmMtPnNDbW4ucGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIs
IHBzRW5jLT5zQ21uLmFyY2ggKTsKKyAgICBzaWxrX0xQQ19hbmFseXNpc19maWx0ZXIoIHJlcywg
eCwgQV9RMTIsIGJ1Zl9sZW4sIHBzRW5jLT5zQ21uLnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyLCBw
c0VuYy0+c0Ntbi5hcmNoICk7CiAKICAgICBpZiggcHNFbmMtPnNDbW4uaW5kaWNlcy5zaWduYWxU
eXBlICE9IFRZUEVfTk9fVk9JQ0VfQUNUSVZJVFkgJiYgcHNFbmMtPnNDbW4uZmlyc3RfZnJhbWVf
YWZ0ZXJfcmVzZXQgPT0gMCApIHsKICAgICAgICAgLyogVGhyZXNob2xkIGZvciBwaXRjaCBlc3Rp
bWF0b3IgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX3ByZWRfY29lZnNfRklYLmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZml4ZWQvZmluZF9wcmVkX2NvZWZzX0ZJWC5jCmluZGV4IGQzMDhlOWNmNWZlNjA5ZTE3YjA2
YjRkMTMzOTE5MzEzNGNjY2YzZjguLjI0YzZhYWIzYTc3Yzk1ZTFjOTA0NjZlM2NmYjEzMWU1MmI4
MWUxMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX3ByZWRfY29lZnNfRklYLmMKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2ZpeGVkL2ZpbmRfcHJlZF9jb2Vmc19GSVguYwpAQCAtNDEsMTMgKzQxLDEyIEBAIHZvaWQg
c2lsa19maW5kX3ByZWRfY29lZnNfRklYKAogKQogewogICAgIG9wdXNfaW50ICAgICAgICAgaTsK
LSAgICBvcHVzX2ludDMyICAgICAgIGludkdhaW5zX1ExNlsgTUFYX05CX1NVQkZSIF0sIGxvY2Fs
X2dhaW5zWyBNQVhfTkJfU1VCRlIgXSwgV2dodF9RMTVbIE1BWF9OQl9TVUJGUiBdOworICAgIG9w
dXNfaW50MzIgICAgICAgaW52R2FpbnNfUTE2WyBNQVhfTkJfU1VCRlIgXSwgbG9jYWxfZ2FpbnNb
IE1BWF9OQl9TVUJGUiBdOwogICAgIG9wdXNfaW50MTYgICAgICAgTkxTRl9RMTVbIE1BWF9MUENf
T1JERVIgXTsKICAgICBjb25zdCBvcHVzX2ludDE2ICp4X3B0cjsKICAgICBvcHVzX2ludDE2ICAg
ICAgICp4X3ByZV9wdHI7CiAgICAgVkFSREVDTCggb3B1c19pbnQxNiwgTFBDX2luX3ByZSApOwot
ICAgIG9wdXNfaW50MzIgICAgICAgdG1wLCBtaW5fZ2Fpbl9RMTYsIG1pbkludkdhaW5fUTMwOwot
ICAgIG9wdXNfaW50ICAgICAgICAgTFRQX2NvcnJzX3JzaGlmdFsgTUFYX05CX1NVQkZSIF07Cisg
ICAgb3B1c19pbnQzMiAgICAgICBtaW5fZ2Fpbl9RMTYsIG1pbkludkdhaW5fUTMwOwogICAgIFNB
VkVfU1RBQ0s7CiAKICAgICAvKiB3ZWlnaHRpbmcgZm9yIHdlaWdodGVkIGxlYXN0IHNxdWFyZXMg
Ki8KQEAgLTYxLDEzICs2MCwxMSBAQCB2b2lkIHNpbGtfZmluZF9wcmVkX2NvZWZzX0ZJWCgKICAg
ICAgICAgLyogSW52ZXJ0IGFuZCBub3JtYWxpemUgZ2FpbnMsIGFuZCBlbnN1cmUgdGhhdCBtYXhp
bXVtIGludkdhaW5zX1ExNiBpcyB3aXRoaW4gcmFuZ2Ugb2YgYSAxNiBiaXQgaW50ICovCiAgICAg
ICAgIGludkdhaW5zX1ExNlsgaSBdID0gc2lsa19ESVYzMl92YXJRKCBtaW5fZ2Fpbl9RMTYsIHBz
RW5jQ3RybC0+R2FpbnNfUTE2WyBpIF0sIDE2IC0gMiApOwogCi0gICAgICAgIC8qIEVuc3VyZSBX
Z2h0X1ExNSBhIG1pbmltdW0gdmFsdWUgMSAqLwotICAgICAgICBpbnZHYWluc19RMTZbIGkgXSA9
IHNpbGtfbWF4KCBpbnZHYWluc19RMTZbIGkgXSwgMzYzICk7CisgICAgICAgIC8qIExpbWl0IGlu
dmVyc2UgKi8KKyAgICAgICAgaW52R2FpbnNfUTE2WyBpIF0gPSBzaWxrX21heCggaW52R2FpbnNf
UTE2WyBpIF0sIDEwMCApOwogCiAgICAgICAgIC8qIFNxdWFyZSB0aGUgaW52ZXJ0ZWQgZ2FpbnMg
Ki8KICAgICAgICAgc2lsa19hc3NlcnQoIGludkdhaW5zX1ExNlsgaSBdID09IHNpbGtfU0FUMTYo
IGludkdhaW5zX1ExNlsgaSBdICkgKTsKLSAgICAgICAgdG1wID0gc2lsa19TTVVMV0IoIGludkdh
aW5zX1ExNlsgaSBdLCBpbnZHYWluc19RMTZbIGkgXSApOwotICAgICAgICBXZ2h0X1ExNVsgaSBd
ID0gc2lsa19SU0hJRlQoIHRtcCwgMSApOwogCiAgICAgICAgIC8qIEludmVydCB0aGUgaW52ZXJ0
ZWQgYW5kIG5vcm1hbGl6ZWQgZ2FpbnMgKi8KICAgICAgICAgbG9jYWxfZ2FpbnNbIGkgXSA9IHNp
bGtfRElWMzIoICggKG9wdXNfaW50MzIpMSA8PCAxNiApLCBpbnZHYWluc19RMTZbIGkgXSApOwpA
QCAtNzcsMjQgKzc0LDI0IEBAIHZvaWQgc2lsa19maW5kX3ByZWRfY29lZnNfRklYKAogICAgICAg
ICAgICBwc0VuYy0+c0Ntbi5uYl9zdWJmciAqIHBzRW5jLT5zQ21uLnByZWRpY3RMUENPcmRlcgog
ICAgICAgICAgICAgICAgKyBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGgsIG9wdXNfaW50MTYgKTsK
ICAgICBpZiggcHNFbmMtPnNDbW4uaW5kaWNlcy5zaWduYWxUeXBlID09IFRZUEVfVk9JQ0VEICkg
ewotICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBXTFRQICk7CisgICAgICAgIFZBUkRFQ0wo
IG9wdXNfaW50MzIsIHhYTFRQX1ExNyApOworICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBY
WExUUF9RMTcgKTsKIAogICAgICAgICAvKioqKioqKioqKi8KICAgICAgICAgLyogVk9JQ0VEICov
CiAgICAgICAgIC8qKioqKioqKioqLwogICAgICAgICBzaWxrX2Fzc2VydCggcHNFbmMtPnNDbW4u
bHRwX21lbV9sZW5ndGggLSBwc0VuYy0+c0Ntbi5wcmVkaWN0TFBDT3JkZXIgPj0gcHNFbmNDdHJs
LT5waXRjaExbIDAgXSArIExUUF9PUkRFUiAvIDIgKTsKIAotICAgICAgICBBTExPQyggV0xUUCwg
cHNFbmMtPnNDbW4ubmJfc3ViZnIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIsIG9wdXNfaW50MzIg
KTsKKyAgICAgICAgQUxMT0MoIHhYTFRQX1ExNywgcHNFbmMtPnNDbW4ubmJfc3ViZnIgKiBMVFBf
T1JERVIsIG9wdXNfaW50MzIgKTsKKyAgICAgICAgQUxMT0MoIFhYTFRQX1ExNywgcHNFbmMtPnND
bW4ubmJfc3ViZnIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIsIG9wdXNfaW50MzIgKTsKIAogICAg
ICAgICAvKiBMVFAgYW5hbHlzaXMgKi8KLSAgICAgICAgc2lsa19maW5kX0xUUF9GSVgoIHBzRW5j
Q3RybC0+TFRQQ29lZl9RMTQsIFdMVFAsICZwc0VuY0N0cmwtPkxUUHJlZENvZEdhaW5fUTcsCi0g
ICAgICAgICAgICByZXNfcGl0Y2gsIHBzRW5jQ3RybC0+cGl0Y2hMLCBXZ2h0X1ExNSwgcHNFbmMt
PnNDbW4uc3ViZnJfbGVuZ3RoLAotICAgICAgICAgICAgcHNFbmMtPnNDbW4ubmJfc3ViZnIsIHBz
RW5jLT5zQ21uLmx0cF9tZW1fbGVuZ3RoLCBMVFBfY29ycnNfcnNoaWZ0LCBwc0VuYy0+c0Ntbi5h
cmNoICk7CisgICAgICAgIHNpbGtfZmluZF9MVFBfRklYKCBYWExUUF9RMTcsIHhYTFRQX1ExNywg
cmVzX3BpdGNoLAorICAgICAgICAgICAgcHNFbmNDdHJsLT5waXRjaEwsIHBzRW5jLT5zQ21uLnN1
YmZyX2xlbmd0aCwgcHNFbmMtPnNDbW4ubmJfc3ViZnIsIHBzRW5jLT5zQ21uLmFyY2ggKTsKIAog
ICAgICAgICAvKiBRdWFudGl6ZSBMVFAgZ2FpbiBwYXJhbWV0ZXJzICovCiAgICAgICAgIHNpbGtf
cXVhbnRfTFRQX2dhaW5zKCBwc0VuY0N0cmwtPkxUUENvZWZfUTE0LCBwc0VuYy0+c0Ntbi5pbmRp
Y2VzLkxUUEluZGV4LCAmcHNFbmMtPnNDbW4uaW5kaWNlcy5QRVJJbmRleCwKLSAgICAgICAgICAg
ICZwc0VuYy0+c0Ntbi5zdW1fbG9nX2dhaW5fUTcsIFdMVFAsIHBzRW5jLT5zQ21uLm11X0xUUF9R
OSwgcHNFbmMtPnNDbW4uTFRQUXVhbnRMb3dDb21wbGV4aXR5LCBwc0VuYy0+c0Ntbi5uYl9zdWJm
ciwKLSAgICAgICAgICAgIHBzRW5jLT5zQ21uLmFyY2gpOworICAgICAgICAgICAgJnBzRW5jLT5z
Q21uLnN1bV9sb2dfZ2Fpbl9RNywgJnBzRW5jQ3RybC0+TFRQcmVkQ29kR2Fpbl9RNywgWFhMVFBf
UTE3LCB4WExUUF9RMTcsIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCwgcHNFbmMtPnNDbW4ubmJf
c3ViZnIsIHBzRW5jLT5zQ21uLmFyY2ggKTsKIAogICAgICAgICAvKiBDb250cm9sIExUUCBzY2Fs
aW5nICovCiAgICAgICAgIHNpbGtfTFRQX3NjYWxlX2N0cmxfRklYKCBwc0VuYywgcHNFbmNDdHJs
LCBjb25kQ29kaW5nICk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvazJhX0ZJWC5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zp
eGVkL2syYV9GSVguYwppbmRleCA1ZmVlNTk5YmNiNzQzMDVhMWQ0NWM0MWU4Nzk1YTBlZTNmOWNi
NWQ5Li41NDlmNmVhZGFhMjlkZTg1YmZkNGMyNjdjNzkyNTljNmMxMTRhOWQ5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZml4ZWQvazJhX0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9rMmFfRklYLmMKQEAgLTM5LDE0
ICszOSwxNSBAQCB2b2lkIHNpbGtfazJhKAogKQogewogICAgIG9wdXNfaW50ICAgaywgbjsKLSAg
ICBvcHVzX2ludDMyIEF0bXBbIFNJTEtfTUFYX09SREVSX0xQQyBdOworICAgIG9wdXNfaW50MzIg
cmMsIHRtcDEsIHRtcDI7CiAKICAgICBmb3IoIGsgPSAwOyBrIDwgb3JkZXI7IGsrKyApIHsKLSAg
ICAgICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyApIHsKLSAgICAgICAgICAgIEF0bXBbIG4gXSA9
IEFfUTI0WyBuIF07Ci0gICAgICAgIH0KLSAgICAgICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyAp
IHsKLSAgICAgICAgICAgIEFfUTI0WyBuIF0gPSBzaWxrX1NNTEFXQiggQV9RMjRbIG4gXSwgc2ls
a19MU0hJRlQoIEF0bXBbIGsgLSBuIC0gMSBdLCAxICksIHJjX1ExNVsgayBdICk7CisgICAgICAg
IHJjID0gcmNfUTE1WyBrIF07CisgICAgICAgIGZvciggbiA9IDA7IG4gPCAoayArIDEpID4+IDE7
IG4rKyApIHsKKyAgICAgICAgICAgIHRtcDEgPSBBX1EyNFsgbiBdOworICAgICAgICAgICAgdG1w
MiA9IEFfUTI0WyBrIC0gbiAtIDEgXTsKKyAgICAgICAgICAgIEFfUTI0WyBuIF0gICAgICAgICA9
IHNpbGtfU01MQVdCKCB0bXAxLCBzaWxrX0xTSElGVCggdG1wMiwgMSApLCByYyApOworICAgICAg
ICAgICAgQV9RMjRbIGsgLSBuIC0gMSBdID0gc2lsa19TTUxBV0IoIHRtcDIsIHNpbGtfTFNISUZU
KCB0bXAxLCAxICksIHJjICk7CiAgICAgICAgIH0KICAgICAgICAgQV9RMjRbIGsgXSA9IC1zaWxr
X0xTSElGVCggKG9wdXNfaW50MzIpcmNfUTE1WyBrIF0sIDkgKTsKICAgICB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZml4ZWQvazJhX1ExNl9GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9rMmFfUTE2X0ZJWC5jCmluZGV4
IDNiMDM5ODc1NDQ2YTEzODg2YTliMjJlYTFlMmIwZjU0YzIwNjJhMDUuLjE1OTVhYTYyMTI2NjI1
NzUwNzA1YjVkNDdiNDJiZGM1ODZmMDU5NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9rMmFfUTE2
X0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9maXhlZC9rMmFfUTE2X0ZJWC5jCkBAIC0zOSwxNSArMzksMTYgQEAg
dm9pZCBzaWxrX2syYV9RMTYoCiApCiB7CiAgICAgb3B1c19pbnQgICBrLCBuOwotICAgIG9wdXNf
aW50MzIgQXRtcFsgU0lMS19NQVhfT1JERVJfTFBDIF07CisgICAgb3B1c19pbnQzMiByYywgdG1w
MSwgdG1wMjsKIAogICAgIGZvciggayA9IDA7IGsgPCBvcmRlcjsgaysrICkgewotICAgICAgICBm
b3IoIG4gPSAwOyBuIDwgazsgbisrICkgewotICAgICAgICAgICAgQXRtcFsgbiBdID0gQV9RMjRb
IG4gXTsKKyAgICAgICAgcmMgPSByY19RMTZbIGsgXTsKKyAgICAgICAgZm9yKCBuID0gMDsgbiA8
IChrICsgMSkgPj4gMTsgbisrICkgeworICAgICAgICAgICAgdG1wMSA9IEFfUTI0WyBuIF07Cisg
ICAgICAgICAgICB0bXAyID0gQV9RMjRbIGsgLSBuIC0gMSBdOworICAgICAgICAgICAgQV9RMjRb
IG4gXSAgICAgICAgID0gc2lsa19TTUxBV1coIHRtcDEsIHRtcDIsIHJjICk7CisgICAgICAgICAg
ICBBX1EyNFsgayAtIG4gLSAxIF0gPSBzaWxrX1NNTEFXVyggdG1wMiwgdG1wMSwgcmMgKTsKICAg
ICAgICAgfQotICAgICAgICBmb3IoIG4gPSAwOyBuIDwgazsgbisrICkgewotICAgICAgICAgICAg
QV9RMjRbIG4gXSA9IHNpbGtfU01MQVdXKCBBX1EyNFsgbiBdLCBBdG1wWyBrIC0gbiAtIDEgXSwg
cmNfUTE2WyBrIF0gKTsKLSAgICAgICAgfQotICAgICAgICBBX1EyNFsgayBdID0gLXNpbGtfTFNI
SUZUKCByY19RMTZbIGsgXSwgOCApOworICAgICAgICBBX1EyNFsgayBdID0gLXNpbGtfTFNISUZU
KCByYywgOCApOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9tYWluX0ZJWC5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2ZpeGVkL21haW5fRklYLmgKaW5kZXggMzc1YjVlYjMyZWU2YzZhZWM2MjQ3YmY2ODBiNGU5
MzMyYzgyZDM0Yi4uNmQyMTEyZTUxMWQwYWVmNDQ1ODJkNTJkNjUwMmRjYjVjOTRlZDA2OCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2ZpeGVkL21haW5fRklYLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21haW5fRklYLmgK
QEAgLTM2LDYgKzM2LDExIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUg
ImRlYnVnLmgiCiAjaW5jbHVkZSAiZW50ZW5jLmgiCiAKKyNpZiAoKGRlZmluZWQoT1BVU19BUk1f
QVNNKSAmJiBkZWZpbmVkKEZJWEVEX1BPSU5UKSkgXAorICAgfHwgZGVmaW5lZChPUFVTX0FSTV9N
QVlfSEFWRV9ORU9OX0lOVFIpKQorI2luY2x1ZGUgImZpeGVkL2FybS93YXJwZWRfYXV0b2NvcnJl
bGF0aW9uX0ZJWF9hcm0uaCIKKyNlbmRpZgorCiAjaWZuZGVmIEZPUkNFX0NQUF9CVUlMRAogI2lm
ZGVmIF9fY3BsdXNwbHVzCiBleHRlcm4gIkMiCkBAIC00Nyw2ICs1Miw5IEBAIGV4dGVybiAiQyIK
ICNkZWZpbmUgc2lsa19lbmNvZGVfZG9fVkFEX0Z4eCAgICAgIHNpbGtfZW5jb2RlX2RvX1ZBRF9G
SVgKICNkZWZpbmUgc2lsa19lbmNvZGVfZnJhbWVfRnh4ICAgICAgIHNpbGtfZW5jb2RlX2ZyYW1l
X0ZJWAogCisjZGVmaW5lIFFDICAxMAorI2RlZmluZSBRUyAgMTMKKwogLyoqKioqKioqKioqKioq
KioqKioqKi8KIC8qIEVuY29kZXIgRnVuY3Rpb25zICovCiAvKioqKioqKioqKioqKioqKioqKioq
LwpAQCAtNTgsNyArNjYsOCBAQCB2b2lkIHNpbGtfSFBfdmFyaWFibGVfY3V0b2ZmKAogCiAvKiBF
bmNvZGVyIG1haW4gZnVuY3Rpb24gKi8KIHZvaWQgc2lsa19lbmNvZGVfZG9fVkFEX0ZJWCgKLSAg
ICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAgICpwc0VuYyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU2lsayBGSVggZW5jb2RlciBzdGF0
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNpbGtf
ZW5jb2Rlcl9zdGF0ZV9GSVggICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIEZJWCBlbmNvZGVyIHN0YXRlICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICAgICAgICBhY3Rpdml0eSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBEZWNpc2lvbiBvZiBPcHVzIHZvaWNlIGFjdGl2aXR5IGRldGVjdG9yICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKIC8qIEVuY29kZXIgbWFpbiBm
dW5jdGlvbiAqLwpAQCAtODEsMzMgKzkwLDExIEBAIG9wdXNfaW50IHNpbGtfaW5pdF9lbmNvZGVy
KAogb3B1c19pbnQgc2lsa19jb250cm9sX2VuY29kZXIoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRl
X0Z4eCAgICAgICAgICAqcHNFbmMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SS9PICBQb2ludGVyIHRvIFNpbGsgZW5jb2RlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX0VuY0NvbnRyb2xTdHJ1Y3QgICAg
ICAgICAgICplbmNDb250cm9sLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENv
bnRyb2wgc3RydWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAgICAg
VGFyZ2V0UmF0ZV9icHMsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgVGFyZ2V0IG1h
eCBiaXRyYXRlIChicHMpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBhbGxvd19i
d19zd2l0Y2gsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBGbGFnIHRvIGFsbG93IHN3
aXRjaGluZyBhdWRpbyBiYW5kd2lkdGggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGNoYW5uZWxOYiwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENoYW5uZWwgbnVtYmVyICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgZm9yY2VfZnNfa0h6CiApOwogCi0v
KioqKioqKioqKioqKioqKi8KLS8qIFByZWZpbHRlcmluZyAqLwotLyoqKioqKioqKioqKioqKiov
Ci12b2lkIHNpbGtfcHJlZmlsdGVyX0ZJWCgKLSAgICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAg
ICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIEVu
Y29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZJWCAg
KnBzRW5jQ3RybCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBj
b250cm9sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICB4d19RMTBb
XSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBXZWlnaHRlZCBzaWduYWwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgIHhbXSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNwZWVjaCBzaWduYWwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
KTsKLQotdm9pZCBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWF9jKAotICAgICAg
ICAgIG9wdXNfaW50MzIgICAgICAgICAgICBzdGF0ZVtdLCAgICAgICAgICAgICAgICAgICAgLyog
SS9PICBTdGF0ZSBbb3JkZXIgKyAxXSAgICAgICAgICAgICAgICAgICAqLwotICAgICAgICAgIG9w
dXNfaW50MzIgICAgICAgICAgICByZXNfUTJbXSwgICAgICAgICAgICAgICAgICAgLyogTyAgICBS
ZXNpZHVhbCBzaWduYWwgW2xlbmd0aF0gICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgICAgICAgICBjb2VmX1ExM1tdLCAgICAgICAgICAgICAgICAgLyogSSAgICBDb2VmZmlj
aWVudHMgW29yZGVyXSAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAg
ICAgICAgICBpbnB1dFtdLCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwg
W2xlbmd0aF0gICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAg
ICBsYW1iZGFfUTE2LCAgICAgICAgICAgICAgICAgLyogSSAgICBXYXJwaW5nIGZhY3RvciAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBsZW5n
dGgsICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGggb2YgaW5wdXQgc2lnbmFsICAg
ICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBvcmRlciAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBGaWx0ZXIgb3JkZXIgKGV2ZW4pICAgICAgICAgICAg
ICAgICAqLwotKTsKLQotCiAvKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAvKiBOb2lzZSBz
aGFwaW5nIGFuYWx5c2lzICovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0xMjEs
NyArMTA4LDcgQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWCgKICk7CiAKIC8q
IEF1dG9jb3JyZWxhdGlvbnMgZm9yIGEgd2FycGVkIGZyZXF1ZW5jeSBheGlzICovCi12b2lkIHNp
bGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoCit2b2lkIHNpbGtfd2FycGVkX2F1dG9jb3Jy
ZWxhdGlvbl9GSVhfYygKICAgICAgICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICpjb3Jy
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJlc3VsdCBbb3JkZXIg
KyAxXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwogICAgICAgICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgKnNjYWxlLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgU2NhbGluZyBvZiB0aGUgY29ycmVs
YXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAqaW5wdXQsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBkYXRhIHRvIGNvcnJlbGF0ZSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KQEAgLTEz
MCw2ICsxMTcsMTEgQEAgdm9pZCBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKAogICAg
IGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgQ29ycmVsYXRpb24gb3JkZXIgKGV2ZW4pICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCisjaWYg
IWRlZmluZWQoT1ZFUlJJREVfc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCkKKyNkZWZp
bmUgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWChjb3JyLCBzY2FsZSwgaW5wdXQsIHdh
cnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVyLCBhcmNoKSBcCisgICAgICAgICgodm9pZCkoYXJjaCks
IHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYyhjb3JyLCBzY2FsZSwgaW5wdXQsIHdh
cnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVyKSkKKyNlbmRpZgorCiAvKiBDYWxjdWxhdGlvbiBvZiBM
VFAgc3RhdGUgc2NhbGluZyAqLwogdm9pZCBzaWxrX0xUUF9zY2FsZV9jdHJsX0ZJWCgKICAgICBz
aWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJL08gIGVuY29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtMTY4LDE2ICsx
NjAsMTIgQEAgdm9pZCBzaWxrX2ZpbmRfTFBDX0ZJWCgKIAogLyogTFRQIGFuYWx5c2lzICovCiB2
b2lkIHNpbGtfZmluZF9MVFBfRklYKAotICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAg
ICAgYl9RMTRbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdLCAgICAgIC8qIE8gICAgTFRQIGNv
ZWZzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICBXTFRQ
WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyogTyAgICBXZWlnaHQg
Zm9yIExUUCBxdWFudGl6YXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgICpMVFByZWRDb2RH
YWluX1E3LCAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIExUUCBjb2RpbmcgZ2FpbiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgcl9scGNbXSwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgcmVzaWR1YWwgc2lnbmFsIGFmdGVyIExQQyBz
aWduYWwgKyBzdGF0ZSBmb3IgZmlyc3QgMTAgbXMgICAgICAgICAgICAgICAgICAgICovCisgICAg
b3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICBYWExUUF9RMTdbIE1BWF9OQl9TVUJGUiAq
IExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBPICAgIENvcnJlbGF0aW9uIG1hdHJpeCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2lu
dDMyICAgICAgICAgICAgICAgICAgICAgIHhYTFRQX1ExN1sgTUFYX05CX1NVQkZSICogTFRQX09S
REVSIF0sICAvKiBPICAgIENvcnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgICAgICAgICAgICAgcl9scGNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgUmVzaWR1YWwgc2lnbmFsIGFmdGVyIExQQyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICBsYWdbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBMVFAgbGFncyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAg
ICAgIFdnaHRfUTE1WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAvKiBJICAgIHdlaWdo
dHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgc3Vi
ZnJfbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgc3ViZnJhbWUgbGVu
Z3RoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBuYl9zdWJmciwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2Ygc3ViZnJhbWVz
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG1lbV9vZmZzZXQsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzYW1wbGVzIGluIExUUCBt
ZW1vcnkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgY29ycl9yc2hpZnRzWyBNQVhfTkJfU1VC
RlIgXSwgICAgICAgICAgIC8qIE8gICAgcmlnaHQgc2hpZnRzIGFwcGxpZWQgdG8gY29ycmVsYXRp
b25zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgICAgICBzdWJmcl9sZW5ndGgsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBTdWJmcmFtZSBsZW5ndGggICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIE51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGludCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCkBAIC0yMzEsOSArMjE5LDkgQEAgdm9pZCBz
aWxrX2NvcnJNYXRyaXhfRklYKAogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAg
KngsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgeCB2ZWN0b3Ig
W0wgKyBvcmRlciAtIDFdIHVzZWQgdG8gZm9ybSBkYXRhIG1hdHJpeCBYICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBMLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGggb2YgdmVjdG9y
cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG9yZGVyLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE1heCBsYWcgZm9yIGNvcnJlbGF0aW9u
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgaGVhZF9yb29tLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRGVzaXJlZCBoZWFkcm9vbSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1
c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAqWFgsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogTyAgICBQb2ludGVyIHRvIFgnKlggY29ycmVsYXRpb24gbWF0cml4IFsg
b3JkZXIgeCBvcmRlciBdICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgICAgICAgICpyc2hpZnRzLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJL08gIFJpZ2h0IHNoaWZ0cyBvZiBjb3JyZWxhdGlvbnMgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAg
ICAgICAgICAgICAgICAgKm5yZywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IE8gICAgRW5lcmd5IG9mIHggdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICAgICAgICAqcnNoaWZ0cywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBS
aWdodCBzaGlmdHMgb2YgY29ycmVsYXRpb25zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1l
IGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogKTsKIApAQCAtMjQ4LDIyICsyMzYsNiBAQCB2b2lkIHNpbGtfY29yclZl
Y3Rvcl9GSVgoCiAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1
cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICk7CiAKLS8qIEFkZCBub2lzZSB0byBtYXRyaXggZGlhZ29uYWwgKi8KLXZvaWQgc2lsa19y
ZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GSVgoCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAg
ICAgICAgICAqWFgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBD
b3JyZWxhdGlvbiBtYXRyaWNlcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAg
ICp4eCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIENvcnJlbGF0
aW9uIHZhbHVlcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgbm9pc2Us
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTm9pc2UgdG8gYWRkICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBEICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBEaW1lbnNpb24gb2YgWFggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
LSk7Ci0KLS8qIFNvbHZlcyBBeCA9IGIsIGFzc3VtaW5nIEEgaXMgc3ltbWV0cmljICovCi12b2lk
IHNpbGtfc29sdmVfTERMX0ZJWCgKLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAg
ICpBLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFBvaW50ZXIg
dG8gc3ltZXRyaWMgc3F1YXJlIG1hdHJpeCBBICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgTSwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU2l6ZSBvZiBtYXRyaXgg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAqYiwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQb2ludGVyIHRvIGIgdmVjdG9yICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
LSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgICp4X1ExNiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFBvaW50ZXIgdG8geCBzb2x1dGlvbiB2ZWN0b3Ig
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsKLQog
I2lmbmRlZiBGT1JDRV9DUFBfQlVJTEQKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2ZpeGVkL21pcHMvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYX21pcHNyMS5oIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2ZpeGVkL21pcHMvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYX21pcHNyMS5oCmluZGV4IGMzMDQ4
MWU0Mzc1MWRjMDBmZWEwMjU5M2NmMzQzMDJlZDYzOTc3OWYuLjM5OTliNWJkMDlkZDhhOTQ2NGVk
MjI3ODBkNTQ1NzhmM2RiY2RlZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9taXBzL25vaXNlX3No
YXBlX2FuYWx5c2lzX0ZJWF9taXBzcjEuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbWlwcy9ub2lzZV9zaGFw
ZV9hbmFseXNpc19GSVhfbWlwc3IxLmgKQEAgLTE2OSw3ICsxNjksNyBAQCB2b2lkIHNpbGtfbm9p
c2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogCiAgICAgICAgIGlmKCBwc0VuYy0+c0Ntbi53YXJwaW5n
X1ExNiA+IDAgKSB7CiAgICAgICAgICAgICAvKiBDYWxjdWxhdGUgd2FycGVkIGF1dG8gY29ycmVs
YXRpb24gKi8KLSAgICAgICAgICAgIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoIGF1
dG9fY29yciwgJnNjYWxlLCB4X3dpbmRvd2VkLCB3YXJwaW5nX1ExNiwgcHNFbmMtPnNDbW4uc2hh
cGVXaW5MZW5ndGgsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOworICAgICAgICAgICAg
c2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCggYXV0b19jb3JyLCAmc2NhbGUsIHhfd2lu
ZG93ZWQsIHdhcnBpbmdfUTE2LCBwc0VuYy0+c0Ntbi5zaGFwZVdpbkxlbmd0aCwgcHNFbmMtPnND
bW4uc2hhcGluZ0xQQ09yZGVyLCBhcmNoICk7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAg
ICAvKiBDYWxjdWxhdGUgcmVndWxhciBhdXRvIGNvcnJlbGF0aW9uICovCiAgICAgICAgICAgICBz
aWxrX2F1dG9jb3JyKCBhdXRvX2NvcnIsICZzY2FsZSwgeF93aW5kb3dlZCwgcHNFbmMtPnNDbW4u
c2hhcGVXaW5MZW5ndGgsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciArIDEsIGFyY2ggKTsK
QEAgLTIyNCw4ICsyMjQsOCBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAog
ICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfMzIoIEFSMV9RMjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdM
UENPcmRlciwgQldFeHAxX1ExNiApOwogCiAgICAgICAgIC8qIFJhdGlvIG9mIHByZWRpY3Rpb24g
Z2FpbnMsIGluIGVuZXJneSBkb21haW4gKi8KLSAgICAgICAgcHJlX25yZ19RMzAgPSBzaWxrX0xQ
Q19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoIEFSMl9RMjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENP
cmRlciApOwotICAgICAgICBucmcgICAgICAgICA9IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWlu
X1EyNCggQVIxX1EyNCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAgICAgIHBy
ZV9ucmdfUTMwID0gc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fUTI0KCBBUjJfUTI0LCBwc0Vu
Yy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIGFyY2ggKTsKKyAgICAgICAgbnJnICAgICAgICAgPSBz
aWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoIEFSMV9RMjQsIHBzRW5jLT5zQ21uLnNoYXBp
bmdMUENPcmRlciwgYXJjaCApOwogCiAgICAgICAgIC8qcHNFbmNDdHJsLT5HYWluc1ByZVsgayBd
ID0gMS4wZiAtIDAuN2YgKiAoIDEuMGYgLSBwcmVfbnJnIC8gbnJnICkgPSAwLjNmICsgMC43ZiAq
IHByZV9ucmcgLyBucmc7Ki8KICAgICAgICAgcHJlX25yZ19RMzAgPSBzaWxrX0xTSElGVDMyKCBz
aWxrX1NNVUxXQiggcHJlX25yZ19RMzAsIFNJTEtfRklYX0NPTlNUKCAwLjcsIDE1ICkgKSwgMSAp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21pcHMvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhf
bWlwc3IxLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZml4ZWQvbWlwcy93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9taXBz
cjEuaAppbmRleCBlODAzZWYwZmNlYjA0YjNjYTE1MjY0Y2IzYTVlZGQ4ZTk3MTg4N2I5Li5mY2Jk
OTZjODhkOThhYWEwNWIzZTRhNWM5NTZlMmVhYjA5YjZiYzQ1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4
ZWQvbWlwcy93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9taXBzcjEuaAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4
ZWQvbWlwcy93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9taXBzcjEuaApAQCAtNDgsNyArNDgs
OCBAQCB2b2lkIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoCiAgICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgICAgICAqaW5wdXQsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBJbnB1dCBkYXRhIHRvIGNvcnJlbGF0ZSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIFdhcnBpbmcgY29lZmZpY2llbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
TGVuZ3RoIG9mIGlucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb3JyZWxh
dGlvbiBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG9yZGVy
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvcnJlbGF0aW9uIG9y
ZGVyIChldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJl
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiApCiB7CiAgICAgb3B1c19pbnQgICBuLCBpLCBsc2g7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQv
bm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbm9pc2Vfc2hhcGVfYW5hbHlz
aXNfRklYLmMKaW5kZXggMjJhODlmNzVhZWMwZmM4ZDYyNDQwOWRmODYxY2JiNmMyY2EzODU5NS4u
ODVmZWEwYmYwOTYwMDU5NDYyODAwMWQ3NDEwNzEyYzRlZThjMjYxMiAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2ZpeGVkL25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9ub2lzZV9z
aGFwZV9hbmFseXNpc19GSVguYwpAQCAtNTcsODggKzU3LDc5IEBAIHN0YXRpYyBPUFVTX0lOTElO
RSBvcHVzX2ludDMyIHdhcnBlZF9nYWluKCAvKiBnYWluIGluIFExNiovCiAvKiBDb252ZXJ0IHdh
cnBlZCBmaWx0ZXIgY29lZmZpY2llbnRzIHRvIG1vbmljIHBzZXVkby13YXJwZWQgY29lZmZpY2ll
bnRzIGFuZCBsaW1pdCBtYXhpbXVtICAgICAqLwogLyogYW1wbGl0dWRlIG9mIG1vbmljIHdhcnBl
ZCBjb2VmZmljaWVudHMgYnkgdXNpbmcgYmFuZHdpZHRoIGV4cGFuc2lvbiBvbiB0aGUgdHJ1ZSBj
b2VmZmljaWVudHMgKi8KIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIGxpbWl0X3dhcnBlZF9jb2Vm
cygKLSAgICBvcHVzX2ludDMyICAgICAgICAgICAqY29lZnNfc3luX1EyNCwKLSAgICBvcHVzX2lu
dDMyICAgICAgICAgICAqY29lZnNfYW5hX1EyNCwKKyAgICBvcHVzX2ludDMyICAgICAgICAgICAq
Y29lZnNfUTI0LAogICAgIG9wdXNfaW50ICAgICAgICAgICAgIGxhbWJkYV9RMTYsCiAgICAgb3B1
c19pbnQzMiAgICAgICAgICAgbGltaXRfUTI0LAogICAgIG9wdXNfaW50ICAgICAgICAgICAgIG9y
ZGVyCiApIHsKICAgICBvcHVzX2ludCAgIGksIGl0ZXIsIGluZCA9IDA7Ci0gICAgb3B1c19pbnQz
MiB0bXAsIG1heGFic19RMjQsIGNoaXJwX1ExNiwgZ2Fpbl9zeW5fUTE2LCBnYWluX2FuYV9RMTY7
CisgICAgb3B1c19pbnQzMiB0bXAsIG1heGFic19RMjQsIGNoaXJwX1ExNiwgZ2Fpbl9RMTY7CiAg
ICAgb3B1c19pbnQzMiBub21fUTE2LCBkZW5fUTI0OworICAgIG9wdXNfaW50MzIgbGltaXRfUTIw
LCBtYXhhYnNfUTIwOwogCiAgICAgLyogQ29udmVydCB0byBtb25pYyBjb2VmZmljaWVudHMgKi8K
ICAgICBsYW1iZGFfUTE2ID0gLWxhbWJkYV9RMTY7CiAgICAgZm9yKCBpID0gb3JkZXIgLSAxOyBp
ID4gMDsgaS0tICkgewotICAgICAgICBjb2Vmc19zeW5fUTI0WyBpIC0gMSBdID0gc2lsa19TTUxB
V0IoIGNvZWZzX3N5bl9RMjRbIGkgLSAxIF0sIGNvZWZzX3N5bl9RMjRbIGkgXSwgbGFtYmRhX1Ex
NiApOwotICAgICAgICBjb2Vmc19hbmFfUTI0WyBpIC0gMSBdID0gc2lsa19TTUxBV0IoIGNvZWZz
X2FuYV9RMjRbIGkgLSAxIF0sIGNvZWZzX2FuYV9RMjRbIGkgXSwgbGFtYmRhX1ExNiApOworICAg
ICAgICBjb2Vmc19RMjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNfUTI0WyBpIC0gMSBd
LCBjb2Vmc19RMjRbIGkgXSwgbGFtYmRhX1ExNiApOwogICAgIH0KICAgICBsYW1iZGFfUTE2ID0g
LWxhbWJkYV9RMTY7Ci0gICAgbm9tX1ExNiAgPSBzaWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1Qo
IDEuMCwgMTYgKSwgLShvcHVzX2ludDMyKWxhbWJkYV9RMTYsICAgICAgICBsYW1iZGFfUTE2ICk7
Ci0gICAgZGVuX1EyNCAgPSBzaWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1QoIDEuMCwgMjQgKSwg
Y29lZnNfc3luX1EyNFsgMCBdLCBsYW1iZGFfUTE2ICk7Ci0gICAgZ2Fpbl9zeW5fUTE2ID0gc2ls
a19ESVYzMl92YXJRKCBub21fUTE2LCBkZW5fUTI0LCAyNCApOwotICAgIGRlbl9RMjQgID0gc2ls
a19TTUxBV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDI0ICksIGNvZWZzX2FuYV9RMjRbIDAgXSwg
bGFtYmRhX1ExNiApOwotICAgIGdhaW5fYW5hX1ExNiA9IHNpbGtfRElWMzJfdmFyUSggbm9tX1Ex
NiwgZGVuX1EyNCwgMjQgKTsKKyAgICBub21fUTE2ICA9IHNpbGtfU01MQVdCKCBTSUxLX0ZJWF9D
T05TVCggMS4wLCAxNiApLCAtKG9wdXNfaW50MzIpbGFtYmRhX1ExNiwgbGFtYmRhX1ExNiApOwor
ICAgIGRlbl9RMjQgID0gc2lsa19TTUxBV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDI0ICksIGNv
ZWZzX1EyNFsgMCBdLCBsYW1iZGFfUTE2ICk7CisgICAgZ2Fpbl9RMTYgPSBzaWxrX0RJVjMyX3Zh
clEoIG5vbV9RMTYsIGRlbl9RMjQsIDI0ICk7CiAgICAgZm9yKCBpID0gMDsgaSA8IG9yZGVyOyBp
KysgKSB7Ci0gICAgICAgIGNvZWZzX3N5bl9RMjRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX3N5
bl9RMTYsIGNvZWZzX3N5bl9RMjRbIGkgXSApOwotICAgICAgICBjb2Vmc19hbmFfUTI0WyBpIF0g
PSBzaWxrX1NNVUxXVyggZ2Fpbl9hbmFfUTE2LCBjb2Vmc19hbmFfUTI0WyBpIF0gKTsKKyAgICAg
ICAgY29lZnNfUTI0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9RMTYsIGNvZWZzX1EyNFsgaSBd
ICk7CiAgICAgfQotCisgICAgbGltaXRfUTIwID0gc2lsa19SU0hJRlQobGltaXRfUTI0LCA0KTsK
ICAgICBmb3IoIGl0ZXIgPSAwOyBpdGVyIDwgMTA7IGl0ZXIrKyApIHsKICAgICAgICAgLyogRmlu
ZCBtYXhpbXVtIGFic29sdXRlIHZhbHVlICovCiAgICAgICAgIG1heGFic19RMjQgPSAtMTsKICAg
ICAgICAgZm9yKCBpID0gMDsgaSA8IG9yZGVyOyBpKysgKSB7Ci0gICAgICAgICAgICB0bXAgPSBz
aWxrX21heCggc2lsa19hYnNfaW50MzIoIGNvZWZzX3N5bl9RMjRbIGkgXSApLCBzaWxrX2Fic19p
bnQzMiggY29lZnNfYW5hX1EyNFsgaSBdICkgKTsKKyAgICAgICAgICAgIHRtcCA9IHNpbGtfYWJz
X2ludDMyKCBjb2Vmc19RMjRbIGkgXSApOwogICAgICAgICAgICAgaWYoIHRtcCA+IG1heGFic19R
MjQgKSB7CiAgICAgICAgICAgICAgICAgbWF4YWJzX1EyNCA9IHRtcDsKICAgICAgICAgICAgICAg
ICBpbmQgPSBpOwogICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgIGlmKCBtYXhhYnNf
UTI0IDw9IGxpbWl0X1EyNCApIHsKKyAgICAgICAgLyogVXNlIFEyMCB0byBhdm9pZCBhbnkgb3Zl
cmZsb3cgd2hlbiBtdWx0aXBseWluZyBieSAoaW5kICsgMSkgbGF0ZXIuICovCisgICAgICAgIG1h
eGFic19RMjAgPSBzaWxrX1JTSElGVChtYXhhYnNfUTI0LCA0KTsKKyAgICAgICAgaWYoIG1heGFi
c19RMjAgPD0gbGltaXRfUTIwICkgewogICAgICAgICAgICAgLyogQ29lZmZpY2llbnRzIGFyZSB3
aXRoaW4gcmFuZ2UgLSBkb25lICovCiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KIAog
ICAgICAgICAvKiBDb252ZXJ0IGJhY2sgdG8gdHJ1ZSB3YXJwZWQgY29lZmZpY2llbnRzICovCiAg
ICAgICAgIGZvciggaSA9IDE7IGkgPCBvcmRlcjsgaSsrICkgewotICAgICAgICAgICAgY29lZnNf
c3luX1EyNFsgaSAtIDEgXSA9IHNpbGtfU01MQVdCKCBjb2Vmc19zeW5fUTI0WyBpIC0gMSBdLCBj
b2Vmc19zeW5fUTI0WyBpIF0sIGxhbWJkYV9RMTYgKTsKLSAgICAgICAgICAgIGNvZWZzX2FuYV9R
MjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNfYW5hX1EyNFsgaSAtIDEgXSwgY29lZnNf
YW5hX1EyNFsgaSBdLCBsYW1iZGFfUTE2ICk7CisgICAgICAgICAgICBjb2Vmc19RMjRbIGkgLSAx
IF0gPSBzaWxrX1NNTEFXQiggY29lZnNfUTI0WyBpIC0gMSBdLCBjb2Vmc19RMjRbIGkgXSwgbGFt
YmRhX1ExNiApOwogICAgICAgICB9Ci0gICAgICAgIGdhaW5fc3luX1ExNiA9IHNpbGtfSU5WRVJT
RTMyX3ZhclEoIGdhaW5fc3luX1ExNiwgMzIgKTsKLSAgICAgICAgZ2Fpbl9hbmFfUTE2ID0gc2ls
a19JTlZFUlNFMzJfdmFyUSggZ2Fpbl9hbmFfUTE2LCAzMiApOworICAgICAgICBnYWluX1ExNiA9
IHNpbGtfSU5WRVJTRTMyX3ZhclEoIGdhaW5fUTE2LCAzMiApOwogICAgICAgICBmb3IoIGkgPSAw
OyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAgICAgIGNvZWZzX3N5bl9RMjRbIGkgXSA9IHNp
bGtfU01VTFdXKCBnYWluX3N5bl9RMTYsIGNvZWZzX3N5bl9RMjRbIGkgXSApOwotICAgICAgICAg
ICAgY29lZnNfYW5hX1EyNFsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fYW5hX1ExNiwgY29lZnNf
YW5hX1EyNFsgaSBdICk7CisgICAgICAgICAgICBjb2Vmc19RMjRbIGkgXSA9IHNpbGtfU01VTFdX
KCBnYWluX1ExNiwgY29lZnNfUTI0WyBpIF0gKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIEFw
cGx5IGJhbmR3aWR0aCBleHBhbnNpb24gKi8KICAgICAgICAgY2hpcnBfUTE2ID0gU0lMS19GSVhf
Q09OU1QoIDAuOTksIDE2ICkgLSBzaWxrX0RJVjMyX3ZhclEoCi0gICAgICAgICAgICBzaWxrX1NN
VUxXQiggbWF4YWJzX1EyNCAtIGxpbWl0X1EyNCwgc2lsa19TTUxBQkIoIFNJTEtfRklYX0NPTlNU
KCAwLjgsIDEwICksIFNJTEtfRklYX0NPTlNUKCAwLjEsIDEwICksIGl0ZXIgKSApLAotICAgICAg
ICAgICAgc2lsa19NVUwoIG1heGFic19RMjQsIGluZCArIDEgKSwgMjIgKTsKLSAgICAgICAgc2ls
a19id2V4cGFuZGVyXzMyKCBjb2Vmc19zeW5fUTI0LCBvcmRlciwgY2hpcnBfUTE2ICk7Ci0gICAg
ICAgIHNpbGtfYndleHBhbmRlcl8zMiggY29lZnNfYW5hX1EyNCwgb3JkZXIsIGNoaXJwX1ExNiAp
OworICAgICAgICAgICAgc2lsa19TTVVMV0IoIG1heGFic19RMjAgLSBsaW1pdF9RMjAsIHNpbGtf
U01MQUJCKCBTSUxLX0ZJWF9DT05TVCggMC44LCAxMCApLCBTSUxLX0ZJWF9DT05TVCggMC4xLCAx
MCApLCBpdGVyICkgKSwKKyAgICAgICAgICAgIHNpbGtfTVVMKCBtYXhhYnNfUTIwLCBpbmQgKyAx
ICksIDIyICk7CisgICAgICAgIHNpbGtfYndleHBhbmRlcl8zMiggY29lZnNfUTI0LCBvcmRlciwg
Y2hpcnBfUTE2ICk7CiAKICAgICAgICAgLyogQ29udmVydCB0byBtb25pYyB3YXJwZWQgY29lZmZp
Y2llbnRzICovCiAgICAgICAgIGxhbWJkYV9RMTYgPSAtbGFtYmRhX1ExNjsKICAgICAgICAgZm9y
KCBpID0gb3JkZXIgLSAxOyBpID4gMDsgaS0tICkgewotICAgICAgICAgICAgY29lZnNfc3luX1Ey
NFsgaSAtIDEgXSA9IHNpbGtfU01MQVdCKCBjb2Vmc19zeW5fUTI0WyBpIC0gMSBdLCBjb2Vmc19z
eW5fUTI0WyBpIF0sIGxhbWJkYV9RMTYgKTsKLSAgICAgICAgICAgIGNvZWZzX2FuYV9RMjRbIGkg
LSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNfYW5hX1EyNFsgaSAtIDEgXSwgY29lZnNfYW5hX1Ey
NFsgaSBdLCBsYW1iZGFfUTE2ICk7CisgICAgICAgICAgICBjb2Vmc19RMjRbIGkgLSAxIF0gPSBz
aWxrX1NNTEFXQiggY29lZnNfUTI0WyBpIC0gMSBdLCBjb2Vmc19RMjRbIGkgXSwgbGFtYmRhX1Ex
NiApOwogICAgICAgICB9CiAgICAgICAgIGxhbWJkYV9RMTYgPSAtbGFtYmRhX1ExNjsKICAgICAg
ICAgbm9tX1ExNiAgPSBzaWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1QoIDEuMCwgMTYgKSwgLShv
cHVzX2ludDMyKWxhbWJkYV9RMTYsICAgICAgICBsYW1iZGFfUTE2ICk7Ci0gICAgICAgIGRlbl9R
MjQgID0gc2lsa19TTUxBV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDI0ICksIGNvZWZzX3N5bl9R
MjRbIDAgXSwgbGFtYmRhX1ExNiApOwotICAgICAgICBnYWluX3N5bl9RMTYgPSBzaWxrX0RJVjMy
X3ZhclEoIG5vbV9RMTYsIGRlbl9RMjQsIDI0ICk7Ci0gICAgICAgIGRlbl9RMjQgID0gc2lsa19T
TUxBV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDI0ICksIGNvZWZzX2FuYV9RMjRbIDAgXSwgbGFt
YmRhX1ExNiApOwotICAgICAgICBnYWluX2FuYV9RMTYgPSBzaWxrX0RJVjMyX3ZhclEoIG5vbV9R
MTYsIGRlbl9RMjQsIDI0ICk7CisgICAgICAgIGRlbl9RMjQgID0gc2lsa19TTUxBV0IoIFNJTEtf
RklYX0NPTlNUKCAxLjAsIDI0ICksIGNvZWZzX1EyNFsgMCBdLCBsYW1iZGFfUTE2ICk7CisgICAg
ICAgIGdhaW5fUTE2ID0gc2lsa19ESVYzMl92YXJRKCBub21fUTE2LCBkZW5fUTI0LCAyNCApOwog
ICAgICAgICBmb3IoIGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAgICAgIGNvZWZz
X3N5bl9RMjRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX3N5bl9RMTYsIGNvZWZzX3N5bl9RMjRb
IGkgXSApOwotICAgICAgICAgICAgY29lZnNfYW5hX1EyNFsgaSBdID0gc2lsa19TTVVMV1coIGdh
aW5fYW5hX1ExNiwgY29lZnNfYW5hX1EyNFsgaSBdICk7CisgICAgICAgICAgICBjb2Vmc19RMjRb
IGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX1ExNiwgY29lZnNfUTI0WyBpIF0gKTsKICAgICAgICAg
fQogICAgIH0KICAgICBzaWxrX2Fzc2VydCggMCApOwogfQogCi0jaWYgZGVmaW5lZChNSVBTcjFf
QVNNKQorLyogRGlzYWJsZSBNSVBTIHZlcnNpb24gdW50aWwgaXQncyB1cGRhdGVkLiAqLworI2lm
IDAgJiYgZGVmaW5lZChNSVBTcjFfQVNNKQogI2luY2x1ZGUgIm1pcHMvbm9pc2Vfc2hhcGVfYW5h
bHlzaXNfRklYX21pcHNyMS5oIgogI2VuZGlmCiAKQEAgLTE1NSwxNCArMTQ2LDEzIEBAIHZvaWQg
c2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiApCiB7CiAgICAgc2lsa19zaGFwZV9zdGF0
ZV9GSVggKnBzU2hhcGVTdCA9ICZwc0VuYy0+c1NoYXBlOwotICAgIG9wdXNfaW50ICAgICBrLCBp
LCBuU2FtcGxlcywgUW5yZywgYl9RMTQsIHdhcnBpbmdfUTE2LCBzY2FsZSA9IDA7Ci0gICAgb3B1
c19pbnQzMiAgIFNOUl9hZGpfZEJfUTcsIEhhcm1Cb29zdF9RMTYsIEhhcm1TaGFwZUdhaW5fUTE2
LCBUaWx0X1ExNiwgdG1wMzI7Ci0gICAgb3B1c19pbnQzMiAgIG5yZywgcHJlX25yZ19RMzAsIGxv
Z19lbmVyZ3lfUTcsIGxvZ19lbmVyZ3lfcHJldl9RNywgZW5lcmd5X3ZhcmlhdGlvbl9RNzsKLSAg
ICBvcHVzX2ludDMyICAgZGVsdGFfUTE2LCBCV0V4cDFfUTE2LCBCV0V4cDJfUTE2LCBnYWluX211
bHRfUTE2LCBnYWluX2FkZF9RMTYsIHN0cmVuZ3RoX1ExNiwgYl9RODsKKyAgICBvcHVzX2ludCAg
ICAgaywgaSwgblNhbXBsZXMsIG5TZWdzLCBRbnJnLCBiX1ExNCwgd2FycGluZ19RMTYsIHNjYWxl
ID0gMDsKKyAgICBvcHVzX2ludDMyICAgU05SX2Fkal9kQl9RNywgSGFybVNoYXBlR2Fpbl9RMTYs
IFRpbHRfUTE2LCB0bXAzMjsKKyAgICBvcHVzX2ludDMyICAgbnJnLCBsb2dfZW5lcmd5X1E3LCBs
b2dfZW5lcmd5X3ByZXZfUTcsIGVuZXJneV92YXJpYXRpb25fUTc7CisgICAgb3B1c19pbnQzMiAg
IEJXRXhwX1ExNiwgZ2Fpbl9tdWx0X1ExNiwgZ2Fpbl9hZGRfUTE2LCBzdHJlbmd0aF9RMTYsIGJf
UTg7CiAgICAgb3B1c19pbnQzMiAgIGF1dG9fY29yclsgICAgIE1BWF9TSEFQRV9MUENfT1JERVIg
KyAxIF07CiAgICAgb3B1c19pbnQzMiAgIHJlZmxfY29lZl9RMTZbIE1BWF9TSEFQRV9MUENfT1JE
RVIgXTsKLSAgICBvcHVzX2ludDMyICAgQVIxX1EyNFsgICAgICAgTUFYX1NIQVBFX0xQQ19PUkRF
UiBdOwotICAgIG9wdXNfaW50MzIgICBBUjJfUTI0WyAgICAgICBNQVhfU0hBUEVfTFBDX09SREVS
IF07CisgICAgb3B1c19pbnQzMiAgIEFSX1EyNFsgICAgICAgTUFYX1NIQVBFX0xQQ19PUkRFUiBd
OwogICAgIFZBUkRFQ0woIG9wdXNfaW50MTYsIHhfd2luZG93ZWQgKTsKICAgICBjb25zdCBvcHVz
X2ludDE2ICp4X3B0ciwgKnBpdGNoX3Jlc19wdHI7CiAgICAgU0FWRV9TVEFDSzsKQEAgLTIwOSwx
NCArMTk5LDE0IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAgICAgaWYo
IHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9PSBUWVBFX1ZPSUNFRCApIHsKICAgICAg
ICAgLyogSW5pdGlhbGx5IHNldCB0byAwOyBtYXkgYmUgb3ZlcnJ1bGVkIGluIHByb2Nlc3NfZ2Fp
bnMoLi4pICovCiAgICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMucXVhbnRPZmZzZXRUeXBlID0g
MDsKLSAgICAgICAgcHNFbmNDdHJsLT5zcGFyc2VuZXNzX1E4ID0gMDsKICAgICB9IGVsc2Ugewog
ICAgICAgICAvKiBTcGFyc2VuZXNzIG1lYXN1cmUsIGJhc2VkIG9uIHJlbGF0aXZlIGZsdWN0dWF0
aW9ucyBvZiBlbmVyZ3kgcGVyIDIgbWlsbGlzZWNvbmRzICovCiAgICAgICAgIG5TYW1wbGVzID0g
c2lsa19MU0hJRlQoIHBzRW5jLT5zQ21uLmZzX2tIeiwgMSApOwogICAgICAgICBlbmVyZ3lfdmFy
aWF0aW9uX1E3ID0gMDsKICAgICAgICAgbG9nX2VuZXJneV9wcmV2X1E3ICA9IDA7CiAgICAgICAg
IHBpdGNoX3Jlc19wdHIgPSBwaXRjaF9yZXM7Ci0gICAgICAgIGZvciggayA9IDA7IGsgPCBzaWxr
X1NNVUxCQiggU1VCX0ZSQU1FX0xFTkdUSF9NUywgcHNFbmMtPnNDbW4ubmJfc3ViZnIgKSAvIDI7
IGsrKyApIHsKKyAgICAgICAgblNlZ3MgPSBzaWxrX1NNVUxCQiggU1VCX0ZSQU1FX0xFTkdUSF9N
UywgcHNFbmMtPnNDbW4ubmJfc3ViZnIgKSAvIDI7CisgICAgICAgIGZvciggayA9IDA7IGsgPCBu
U2VnczsgaysrICkgewogICAgICAgICAgICAgc2lsa19zdW1fc3FyX3NoaWZ0KCAmbnJnLCAmc2Nh
bGUsIHBpdGNoX3Jlc19wdHIsIG5TYW1wbGVzICk7CiAgICAgICAgICAgICBucmcgKz0gc2lsa19S
U0hJRlQoIG5TYW1wbGVzLCBzY2FsZSApOyAgICAgICAgICAgLyogUSgtc2NhbGUpKi8KIApAQCAt
MjI4LDE4ICsyMTgsMTIgQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWCgKICAg
ICAgICAgICAgIHBpdGNoX3Jlc19wdHIgKz0gblNhbXBsZXM7CiAgICAgICAgIH0KIAotICAgICAg
ICBwc0VuY0N0cmwtPnNwYXJzZW5lc3NfUTggPSBzaWxrX1JTSElGVCggc2lsa19zaWdtX1ExNSgg
c2lsa19TTVVMV0IoIGVuZXJneV92YXJpYXRpb25fUTcgLQotICAgICAgICAgICAgU0lMS19GSVhf
Q09OU1QoIDUuMCwgNyApLCBTSUxLX0ZJWF9DT05TVCggMC4xLCAxNiApICkgKSwgNyApOwotCiAg
ICAgICAgIC8qIFNldCBxdWFudGl6YXRpb24gb2Zmc2V0IGRlcGVuZGluZyBvbiBzcGFyc2VuZXNz
IG1lYXN1cmUgKi8KLSAgICAgICAgaWYoIHBzRW5jQ3RybC0+c3BhcnNlbmVzc19ROCA+IFNJTEtf
RklYX0NPTlNUKCBTUEFSU0VORVNTX1RIUkVTSE9MRF9RTlRfT0ZGU0VULCA4ICkgKSB7CisgICAg
ICAgIGlmKCBlbmVyZ3lfdmFyaWF0aW9uX1E3ID4gU0lMS19GSVhfQ09OU1QoIEVORVJHWV9WQVJJ
QVRJT05fVEhSRVNIT0xEX1FOVF9PRkZTRVQsIDcgKSAqIChuU2Vncy0xKSApIHsKICAgICAgICAg
ICAgIHBzRW5jLT5zQ21uLmluZGljZXMucXVhbnRPZmZzZXRUeXBlID0gMDsKICAgICAgICAgfSBl
bHNlIHsKICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMucXVhbnRPZmZzZXRUeXBlID0g
MTsKICAgICAgICAgfQotCi0gICAgICAgIC8qIEluY3JlYXNlIGNvZGluZyBTTlIgZm9yIHNwYXJz
ZSBzaWduYWxzICovCi0gICAgICAgIFNOUl9hZGpfZEJfUTcgPSBzaWxrX1NNTEFXQiggU05SX2Fk
al9kQl9RNywgU0lMS19GSVhfQ09OU1QoIFNQQVJTRV9TTlJfSU5DUl9kQiwgMTUgKSwgcHNFbmND
dHJsLT5zcGFyc2VuZXNzX1E4IC0gU0lMS19GSVhfQ09OU1QoIDAuNSwgOCApICk7CiAgICAgfQog
CiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0yNDcsMTQgKzIzMSw4
IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAgICAgLyoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKiovCiAgICAgLyogTW9yZSBCV0UgZm9yIHNpZ25hbHMgd2l0aCBo
aWdoIHByZWRpY3Rpb24gZ2FpbiAqLwogICAgIHN0cmVuZ3RoX1ExNiA9IHNpbGtfU01VTFdCKCBw
c0VuY0N0cmwtPnByZWRHYWluX1ExNiwgU0lMS19GSVhfQ09OU1QoIEZJTkRfUElUQ0hfV0hJVEVf
Tk9JU0VfRlJBQ1RJT04sIDE2ICkgKTsKLSAgICBCV0V4cDFfUTE2ID0gQldFeHAyX1ExNiA9IHNp
bGtfRElWMzJfdmFyUSggU0lMS19GSVhfQ09OU1QoIEJBTkRXSURUSF9FWFBBTlNJT04sIDE2ICks
CisgICAgQldFeHBfUTE2ID0gc2lsa19ESVYzMl92YXJRKCBTSUxLX0ZJWF9DT05TVCggQkFORFdJ
RFRIX0VYUEFOU0lPTiwgMTYgKSwKICAgICAgICAgc2lsa19TTUxBV1coIFNJTEtfRklYX0NPTlNU
KCAxLjAsIDE2ICksIHN0cmVuZ3RoX1ExNiwgc3RyZW5ndGhfUTE2ICksIDE2ICk7Ci0gICAgZGVs
dGFfUTE2ICA9IHNpbGtfU01VTFdCKCBTSUxLX0ZJWF9DT05TVCggMS4wLCAxNiApIC0gc2lsa19T
TVVMQkIoIDMsIHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxpdHlfUTE0ICksCi0gICAgICAgIFNJTEtf
RklYX0NPTlNUKCBMT1dfUkFURV9CQU5EV0lEVEhfRVhQQU5TSU9OX0RFTFRBLCAxNiApICk7Ci0g
ICAgQldFeHAxX1ExNiA9IHNpbGtfU1VCMzIoIEJXRXhwMV9RMTYsIGRlbHRhX1ExNiApOwotICAg
IEJXRXhwMl9RMTYgPSBzaWxrX0FERDMyKCBCV0V4cDJfUTE2LCBkZWx0YV9RMTYgKTsKLSAgICAv
KiBCV0V4cDEgd2lsbCBiZSBhcHBsaWVkIGFmdGVyIEJXRXhwMiwgc28gbWFrZSBpdCByZWxhdGl2
ZSAqLwotICAgIEJXRXhwMV9RMTYgPSBzaWxrX0RJVjMyXzE2KCBzaWxrX0xTSElGVCggQldFeHAx
X1ExNiwgMTQgKSwgc2lsa19SU0hJRlQoIEJXRXhwMl9RMTYsIDIgKSApOwogCiAgICAgaWYoIHBz
RW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKICAgICAgICAgLyogU2xpZ2h0bHkgbW9yZSB3
YXJwaW5nIGluIGFuYWx5c2lzIHdpbGwgbW92ZSBxdWFudGl6YXRpb24gbm9pc2UgdXAgaW4gZnJl
cXVlbmN5LCB3aGVyZSBpdCdzIGJldHRlciBtYXNrZWQgKi8KQEAgLTI4NCw3ICsyNjIsNyBAQCB2
b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogCiAgICAgICAgIGlmKCBwc0VuYy0+
c0Ntbi53YXJwaW5nX1ExNiA+IDAgKSB7CiAgICAgICAgICAgICAvKiBDYWxjdWxhdGUgd2FycGVk
IGF1dG8gY29ycmVsYXRpb24gKi8KLSAgICAgICAgICAgIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxh
dGlvbl9GSVgoIGF1dG9fY29yciwgJnNjYWxlLCB4X3dpbmRvd2VkLCB3YXJwaW5nX1ExNiwgcHNF
bmMtPnNDbW4uc2hhcGVXaW5MZW5ndGgsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwor
ICAgICAgICAgICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCggYXV0b19jb3JyLCAm
c2NhbGUsIHhfd2luZG93ZWQsIHdhcnBpbmdfUTE2LCBwc0VuYy0+c0Ntbi5zaGFwZVdpbkxlbmd0
aCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBhcmNoICk7CiAgICAgICAgIH0gZWxzZSB7
CiAgICAgICAgICAgICAvKiBDYWxjdWxhdGUgcmVndWxhciBhdXRvIGNvcnJlbGF0aW9uICovCiAg
ICAgICAgICAgICBzaWxrX2F1dG9jb3JyKCBhdXRvX2NvcnIsICZzY2FsZSwgeF93aW5kb3dlZCwg
cHNFbmMtPnNDbW4uc2hhcGVXaW5MZW5ndGgsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciAr
IDEsIGFyY2ggKTsKQEAgLTI5OSw3ICsyNzcsNyBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5h
bHlzaXNfRklYKAogICAgICAgICBzaWxrX2Fzc2VydCggbnJnID49IDAgKTsKIAogICAgICAgICAv
KiBDb252ZXJ0IHJlZmxlY3Rpb24gY29lZmZpY2llbnRzIHRvIHByZWRpY3Rpb24gY29lZmZpY2ll
bnRzICovCi0gICAgICAgIHNpbGtfazJhX1ExNiggQVIyX1EyNCwgcmVmbF9jb2VmX1ExNiwgcHNF
bmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAgICAgIHNpbGtfazJhX1ExNiggQVJfUTI0
LCByZWZsX2NvZWZfUTE2LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKIAogICAgICAg
ICBRbnJnID0gLXNjYWxlOyAgICAgICAgICAvKiByYW5nZTogLTEyLi4uMzAqLwogICAgICAgICBz
aWxrX2Fzc2VydCggUW5yZyA+PSAtMTIgKTsKQEAgLTMxOCw0MCArMjk2LDM0IEBAIHZvaWQgc2ls
a19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAKICAgICAgICAgaWYoIHBzRW5jLT5zQ21uLndh
cnBpbmdfUTE2ID4gMCApIHsKICAgICAgICAgICAgIC8qIEFkanVzdCBnYWluIGZvciB3YXJwaW5n
ICovCi0gICAgICAgICAgICBnYWluX211bHRfUTE2ID0gd2FycGVkX2dhaW4oIEFSMl9RMjQsIHdh
cnBpbmdfUTE2LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKLSAgICAgICAgICAgIHNp
bGtfYXNzZXJ0KCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID49IDAgKTsKLSAgICAgICAgICAg
IGlmICggc2lsa19TTVVMV1coIHNpbGtfUlNISUZUX1JPVU5EKCBwc0VuY0N0cmwtPkdhaW5zX1Ex
NlsgayBdLCAxICksIGdhaW5fbXVsdF9RMTYgKSA+PSAoIHNpbGtfaW50MzJfTUFYID4+IDEgKSAp
IHsKLSAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0gPSBzaWxrX2ludDMy
X01BWDsKKyAgICAgICAgICAgIGdhaW5fbXVsdF9RMTYgPSB3YXJwZWRfZ2FpbiggQVJfUTI0LCB3
YXJwaW5nX1ExNiwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAgICAgICAgICBz
aWxrX2Fzc2VydCggcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSA+IDAgKTsKKyAgICAgICAgICAg
IGlmKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdIDwgU0lMS19GSVhfQ09OU1QoIDAuMjUsIDE2
ICkgKSB7CisgICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSA9IHNpbGtf
U01VTFdXKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdLCBnYWluX211bHRfUTE2ICk7CiAgICAg
ICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5HYWluc19RMTZbIGsg
XSA9IHNpbGtfU01VTFdXKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdLCBnYWluX211bHRfUTE2
ICk7CisgICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSA9IHNpbGtfU01V
TFdXKCBzaWxrX1JTSElGVF9ST1VORCggcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSwgMSApLCBn
YWluX211bHRfUTE2ICk7CisgICAgICAgICAgICAgICAgaWYgKCBwc0VuY0N0cmwtPkdhaW5zX1Ex
NlsgayBdID49ICggc2lsa19pbnQzMl9NQVggPj4gMSApICkgeworICAgICAgICAgICAgICAgICAg
ICBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID0gc2lsa19pbnQzMl9NQVg7CisgICAgICAgICAg
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5HYWluc19RMTZb
IGsgXSA9IHNpbGtfTFNISUZUMzIoIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0sIDEgKTsKKyAg
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CisgICAgICAgICAgICBzaWxrX2Fzc2VydCgg
cHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSA+IDAgKTsKICAgICAgICAgfQogCi0gICAgICAgIC8q
IEJhbmR3aWR0aCBleHBhbnNpb24gZm9yIHN5bnRoZXNpcyBmaWx0ZXIgc2hhcGluZyAqLwotICAg
ICAgICBzaWxrX2J3ZXhwYW5kZXJfMzIoIEFSMl9RMjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENP
cmRlciwgQldFeHAyX1ExNiApOwotCi0gICAgICAgIC8qIENvbXB1dGUgbm9pc2Ugc2hhcGluZyBm
aWx0ZXIgY29lZmZpY2llbnRzICovCi0gICAgICAgIHNpbGtfbWVtY3B5KCBBUjFfUTI0LCBBUjJf
UTI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKiBzaXplb2YoIG9wdXNfaW50MzIgKSAp
OwotCi0gICAgICAgIC8qIEJhbmR3aWR0aCBleHBhbnNpb24gZm9yIGFuYWx5c2lzIGZpbHRlciBz
aGFwaW5nICovCi0gICAgICAgIHNpbGtfYXNzZXJ0KCBCV0V4cDFfUTE2IDw9IFNJTEtfRklYX0NP
TlNUKCAxLjAsIDE2ICkgKTsKLSAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBBUjFfUTI0LCBw
c0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIEJXRXhwMV9RMTYgKTsKLQotICAgICAgICAvKiBS
YXRpbyBvZiBwcmVkaWN0aW9uIGdhaW5zLCBpbiBlbmVyZ3kgZG9tYWluICovCi0gICAgICAgIHBy
ZV9ucmdfUTMwID0gc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fUTI0KCBBUjJfUTI0LCBwc0Vu
Yy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKLSAgICAgICAgbnJnICAgICAgICAgPSBzaWxrX0xQ
Q19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoIEFSMV9RMjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENP
cmRlciApOwotCi0gICAgICAgIC8qcHNFbmNDdHJsLT5HYWluc1ByZVsgayBdID0gMS4wZiAtIDAu
N2YgKiAoIDEuMGYgLSBwcmVfbnJnIC8gbnJnICkgPSAwLjNmICsgMC43ZiAqIHByZV9ucmcgLyBu
cmc7Ki8KLSAgICAgICAgcHJlX25yZ19RMzAgPSBzaWxrX0xTSElGVDMyKCBzaWxrX1NNVUxXQigg
cHJlX25yZ19RMzAsIFNJTEtfRklYX0NPTlNUKCAwLjcsIDE1ICkgKSwgMSApOwotICAgICAgICBw
c0VuY0N0cmwtPkdhaW5zUHJlX1ExNFsgayBdID0gKCBvcHVzX2ludCApIFNJTEtfRklYX0NPTlNU
KCAwLjMsIDE0ICkgKyBzaWxrX0RJVjMyX3ZhclEoIHByZV9ucmdfUTMwLCBucmcsIDE0ICk7Cisg
ICAgICAgIC8qIEJhbmR3aWR0aCBleHBhbnNpb24gKi8KKyAgICAgICAgc2lsa19id2V4cGFuZGVy
XzMyKCBBUl9RMjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciwgQldFeHBfUTE2ICk7CiAK
LSAgICAgICAgLyogQ29udmVydCB0byBtb25pYyB3YXJwZWQgcHJlZGljdGlvbiBjb2VmZmljaWVu
dHMgYW5kIGxpbWl0IGFic29sdXRlIHZhbHVlcyAqLwotICAgICAgICBsaW1pdF93YXJwZWRfY29l
ZnMoIEFSMl9RMjQsIEFSMV9RMjQsIHdhcnBpbmdfUTE2LCBTSUxLX0ZJWF9DT05TVCggMy45OTks
IDI0ICksIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOworICAgICAgICBpZiggcHNFbmMt
PnNDbW4ud2FycGluZ19RMTYgPiAwICkgeworICAgICAgICAgICAgLyogQ29udmVydCB0byBtb25p
YyB3YXJwZWQgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgYW5kIGxpbWl0IGFic29sdXRlIHZhbHVl
cyAqLworICAgICAgICAgICAgbGltaXRfd2FycGVkX2NvZWZzKCBBUl9RMjQsIHdhcnBpbmdfUTE2
LCBTSUxLX0ZJWF9DT05TVCggMy45OTksIDI0ICksIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRl
ciApOwogCi0gICAgICAgIC8qIENvbnZlcnQgZnJvbSBRMjQgdG8gUTEzIGFuZCBzdG9yZSBpbiBp
bnQxNiAqLwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09y
ZGVyOyBpKysgKSB7Ci0gICAgICAgICAgICBwc0VuY0N0cmwtPkFSMV9RMTNbIGsgKiBNQVhfU0hB
UEVfTFBDX09SREVSICsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRf
Uk9VTkQoIEFSMV9RMjRbIGkgXSwgMTEgKSApOwotICAgICAgICAgICAgcHNFbmNDdHJsLT5BUjJf
UTEzWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiArIGkgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FU
MTYoIHNpbGtfUlNISUZUX1JPVU5EKCBBUjJfUTI0WyBpIF0sIDExICkgKTsKKyAgICAgICAgICAg
IC8qIENvbnZlcnQgZnJvbSBRMjQgdG8gUTEzIGFuZCBzdG9yZSBpbiBpbnQxNiAqLworICAgICAg
ICAgICAgZm9yKCBpID0gMDsgaSA8IHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlcjsgaSsrICkg
eworICAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+QVJfUTEzWyBrICogTUFYX1NIQVBFX0xQQ19P
UkRFUiArIGkgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKCBB
Ul9RMjRbIGkgXSwgMTEgKSApOworICAgICAgICAgICAgfQorICAgICAgICB9IGVsc2UgeworICAg
ICAgICAgICAgc2lsa19MUENfZml0KCAmcHNFbmNDdHJsLT5BUl9RMTNbIGsgKiBNQVhfU0hBUEVf
TFBDX09SREVSIF0sIEFSX1EyNCwgMTMsIDI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIg
KTsKICAgICAgICAgfQogICAgIH0KIApAQCAtMzY4LDExICszNDAsNiBAQCB2b2lkIHNpbGtfbm9p
c2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBd
ID0gc2lsa19BRERfUE9TX1NBVDMyKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdLCBnYWluX2Fk
ZF9RMTYgKTsKICAgICB9CiAKLSAgICBnYWluX211bHRfUTE2ID0gU0lMS19GSVhfQ09OU1QoIDEu
MCwgMTYgKSArIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX01MQSggU0lMS19GSVhfQ09OU1QoIElO
UFVUX1RJTFQsIDI2ICksCi0gICAgICAgIHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxpdHlfUTE0LCBT
SUxLX0ZJWF9DT05TVCggSElHSF9SQVRFX0lOUFVUX1RJTFQsIDEyICkgKSwgMTAgKTsKLSAgICBm
b3IoIGsgPSAwOyBrIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgcHNF
bmNDdHJsLT5HYWluc1ByZV9RMTRbIGsgXSA9IHNpbGtfU01VTFdCKCBnYWluX211bHRfUTE2LCBw
c0VuY0N0cmwtPkdhaW5zUHJlX1ExNFsgayBdICk7Ci0gICAgfQogCiAgICAgLyoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBDb250cm9sIGxv
dy1mcmVxdWVuY3kgc2hhcGluZyBhbmQgbm9pc2UgdGlsdCAqLwpAQCAtNDEwLDE0ICszNzcsNiBA
QCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogICAgIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwogICAgIC8qIEhBUk1PTklDIFNIQVBJTkcgQ09OVFJPTCAqLwogICAg
IC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgIC8qIENvbnRyb2wgYm9vc3Rpbmcg
b2YgaGFybW9uaWMgZnJlcXVlbmNpZXMgKi8KLSAgICBIYXJtQm9vc3RfUTE2ID0gc2lsa19TTVVM
V0IoIHNpbGtfU01VTFdCKCBTSUxLX0ZJWF9DT05TVCggMS4wLCAxNyApIC0gc2lsa19MU0hJRlQo
IHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxpdHlfUTE0LCAzICksCi0gICAgICAgIHBzRW5jLT5MVFBD
b3JyX1ExNSApLCBTSUxLX0ZJWF9DT05TVCggTE9XX1JBVEVfSEFSTU9OSUNfQk9PU1QsIDE2ICkg
KTsKLQotICAgIC8qIE1vcmUgaGFybW9uaWMgYm9vc3QgZm9yIG5vaXN5IGlucHV0IHNpZ25hbHMg
Ki8KLSAgICBIYXJtQm9vc3RfUTE2ID0gc2lsa19TTUxBV0IoIEhhcm1Cb29zdF9RMTYsCi0gICAg
ICAgIFNJTEtfRklYX0NPTlNUKCAxLjAsIDE2ICkgLSBzaWxrX0xTSElGVCggcHNFbmNDdHJsLT5p
bnB1dF9xdWFsaXR5X1ExNCwgMiApLCBTSUxLX0ZJWF9DT05TVCggTE9XX0lOUFVUX1FVQUxJVFlf
SEFSTU9OSUNfQk9PU1QsIDE2ICkgKTsKLQogICAgIGlmKCBVU0VfSEFSTV9TSEFQSU5HICYmIHBz
RW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9PSBUWVBFX1ZPSUNFRCApIHsKICAgICAgICAg
LyogTW9yZSBoYXJtb25pYyBub2lzZSBzaGFwaW5nIGZvciBoaWdoIGJpdHJhdGVzIG9yIG5vaXN5
IGlucHV0ICovCiAgICAgICAgIEhhcm1TaGFwZUdhaW5fUTE2ID0gc2lsa19TTUxBV0IoIFNJTEtf
RklYX0NPTlNUKCBIQVJNT05JQ19TSEFQSU5HLCAxNiApLApAQCAtNDM1LDE0ICszOTQsMTEgQEAg
dm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWCgKICAgICAvKiBTbW9vdGggb3ZlciBz
dWJmcmFtZXMgKi8KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICBmb3IoIGsg
PSAwOyBrIDwgTUFYX05CX1NVQkZSOyBrKysgKSB7Ci0gICAgICAgIHBzU2hhcGVTdC0+SGFybUJv
b3N0X3NtdGhfUTE2ID0KLSAgICAgICAgICAgIHNpbGtfU01MQVdCKCBwc1NoYXBlU3QtPkhhcm1C
b29zdF9zbXRoX1ExNiwgICAgIEhhcm1Cb29zdF9RMTYgICAgIC0gcHNTaGFwZVN0LT5IYXJtQm9v
c3Rfc210aF9RMTYsICAgICBTSUxLX0ZJWF9DT05TVCggU1VCRlJfU01USF9DT0VGLCAxNiApICk7
CiAgICAgICAgIHBzU2hhcGVTdC0+SGFybVNoYXBlR2Fpbl9zbXRoX1ExNiA9CiAgICAgICAgICAg
ICBzaWxrX1NNTEFXQiggcHNTaGFwZVN0LT5IYXJtU2hhcGVHYWluX3NtdGhfUTE2LCBIYXJtU2hh
cGVHYWluX1ExNiAtIHBzU2hhcGVTdC0+SGFybVNoYXBlR2Fpbl9zbXRoX1ExNiwgU0lMS19GSVhf
Q09OU1QoIFNVQkZSX1NNVEhfQ09FRiwgMTYgKSApOwogICAgICAgICBwc1NoYXBlU3QtPlRpbHRf
c210aF9RMTYgPQogICAgICAgICAgICAgc2lsa19TTUxBV0IoIHBzU2hhcGVTdC0+VGlsdF9zbXRo
X1ExNiwgICAgICAgICAgVGlsdF9RMTYgICAgICAgICAgLSBwc1NoYXBlU3QtPlRpbHRfc210aF9R
MTYsICAgICAgICAgIFNJTEtfRklYX0NPTlNUKCBTVUJGUl9TTVRIX0NPRUYsIDE2ICkgKTsKIAot
ICAgICAgICBwc0VuY0N0cmwtPkhhcm1Cb29zdF9RMTRbIGsgXSAgICAgPSAoIG9wdXNfaW50IClz
aWxrX1JTSElGVF9ST1VORCggcHNTaGFwZVN0LT5IYXJtQm9vc3Rfc210aF9RMTYsICAgICAyICk7
CiAgICAgICAgIHBzRW5jQ3RybC0+SGFybVNoYXBlR2Fpbl9RMTRbIGsgXSA9ICggb3B1c19pbnQg
KXNpbGtfUlNISUZUX1JPVU5EKCBwc1NoYXBlU3QtPkhhcm1TaGFwZUdhaW5fc210aF9RMTYsIDIg
KTsKICAgICAgICAgcHNFbmNDdHJsLT5UaWx0X1ExNFsgayBdICAgICAgICAgID0gKCBvcHVzX2lu
dCApc2lsa19SU0hJRlRfUk9VTkQoIHBzU2hhcGVTdC0+VGlsdF9zbXRoX1ExNiwgICAgICAgICAg
MiApOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9waXRjaF9hbmFseXNpc19jb3JlX0ZJ
WC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2ZpeGVkL3BpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmMKaW5kZXggMDFiYjlmYzBh
ODM3YjZjMzQ5MzNmY2IwNjZhNzkxODczNTQwZGVhMy4uOGRmMTA5ZTZjZjUxMTA3ZTQ3NzZjNzAz
ZTJhNTYyZDg5YjgyNmZlZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3BpdGNoX2FuYWx5c2lzX2Nv
cmVfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3BpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmMKQEAgLTgw
LDcgKzgwLDcgQEAgc3RhdGljIHZvaWQgc2lsa19QX0FuYV9jYWxjX2VuZXJneV9zdDMoCiAvKiAg
ICAgIEZJWEVEIFBPSU5UIENPUkUgUElUQ0ggQU5BTFlTSVMgRlVOQ1RJT04gICAgICAgICAgICAg
Ki8KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqLwogb3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19jb3JlKCAgICAgICAgICAg
ICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMCB2b2ljZWQsIDEgdW52b2ljZWQgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmZy
YW1lLCAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCBvZiBsZW5ndGggUEVfRlJBTUVfTEVOR1RI
X01TKkZzX2tIeiAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgICpmcmFtZV91bnNjYWxlZCwgICAgLyogSSAgICBTaWduYWwgb2YgbGVuZ3RoIFBFX0ZS
QU1FX0xFTkdUSF9NUypGc19rSHogICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgICAqcGl0Y2hfb3V0LCAgICAgICAgIC8qIE8gICAgNCBwaXRjaCBsYWcg
dmFsdWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBv
cHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKmxhZ0luZGV4LCAgICAgICAgICAvKiBPICAgIExh
ZyBJbmRleCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgICpjb250b3VySW5kZXgsICAgICAg
LyogTyAgICBQaXRjaCBjb250b3VyIEluZGV4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwpAQCAtOTQsMTYgKzk0LDE3IEBAIG9wdXNfaW50IHNpbGtfcGl0Y2hfYW5h
bHlzaXNfY29yZSggICAgICAgICAgICAgICAgICAvKiBPICAgIFZvaWNpbmcgZXN0aW1hdGU6IDAK
ICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAvKiBJ
ICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCiApCiB7Ci0gICAgVkFSREVDTCggb3B1c19pbnQxNiwgZnJhbWVfOGtIeiApOwor
ICAgIFZBUkRFQ0woIG9wdXNfaW50MTYsIGZyYW1lXzhrSHpfYnVmICk7CiAgICAgVkFSREVDTCgg
b3B1c19pbnQxNiwgZnJhbWVfNGtIeiApOworICAgIFZBUkRFQ0woIG9wdXNfaW50MTYsIGZyYW1l
X3NjYWxlZCApOwogICAgIG9wdXNfaW50MzIgZmlsdF9zdGF0ZVsgNiBdOwotICAgIGNvbnN0IG9w
dXNfaW50MTYgKmlucHV0X2ZyYW1lX3B0cjsKKyAgICBjb25zdCBvcHVzX2ludDE2ICpmcmFtZSwg
KmZyYW1lXzhrSHo7CiAgICAgb3B1c19pbnQgICBpLCBrLCBkLCBqOwogICAgIFZBUkRFQ0woIG9w
dXNfaW50MTYsIEMgKTsKICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCB4Y29ycjMyICk7CiAgICAg
Y29uc3Qgb3B1c19pbnQxNiAqdGFyZ2V0X3B0ciwgKmJhc2lzX3B0cjsKLSAgICBvcHVzX2ludDMy
IGNyb3NzX2NvcnIsIG5vcm1hbGl6ZXIsIGVuZXJneSwgc2hpZnQsIGVuZXJneV9iYXNpcywgZW5l
cmd5X3RhcmdldDsKLSAgICBvcHVzX2ludCAgIGRfc3JjaFsgUEVfRF9TUkNIX0xFTkdUSCBdLCBD
bWF4LCBsZW5ndGhfZF9zcmNoLCBsZW5ndGhfZF9jb21wOworICAgIG9wdXNfaW50MzIgY3Jvc3Nf
Y29yciwgbm9ybWFsaXplciwgZW5lcmd5LCBlbmVyZ3lfYmFzaXMsIGVuZXJneV90YXJnZXQ7Cisg
ICAgb3B1c19pbnQgICBkX3NyY2hbIFBFX0RfU1JDSF9MRU5HVEggXSwgQ21heCwgbGVuZ3RoX2Rf
c3JjaCwgbGVuZ3RoX2RfY29tcCwgc2hpZnQ7CiAgICAgVkFSREVDTCggb3B1c19pbnQxNiwgZF9j
b21wICk7CiAgICAgb3B1c19pbnQzMiBzdW0sIHRocmVzaG9sZCwgbGFnX2NvdW50ZXI7CiAgICAg
b3B1c19pbnQgICBDQmltYXgsIENCaW1heF9uZXcsIENCaW1heF9vbGQsIGxhZywgc3RhcnRfbGFn
LCBlbmRfbGFnLCBsYWdfbmV3OwpAQCAtMTE5LDYgKzEyMCw3IEBAIG9wdXNfaW50IHNpbGtfcGl0
Y2hfYW5hbHlzaXNfY29yZSggICAgICAgICAgICAgICAgICAvKiBPICAgIFZvaWNpbmcgZXN0aW1h
dGU6IDAKICAgICBvcHVzX2ludDMyIGRlbHRhX2xhZ19sb2cyX3Nxcl9RNywgbGFnX2xvZzJfUTcs
IHByZXZMYWdfbG9nMl9RNywgcHJldl9sYWdfYmlhc19RMTM7CiAgICAgY29uc3Qgb3B1c19pbnQ4
ICpMYWdfQ0JfcHRyOwogICAgIFNBVkVfU1RBQ0s7CisKICAgICAvKiBDaGVjayBmb3IgdmFsaWQg
c2FtcGxpbmcgZnJlcXVlbmN5ICovCiAgICAgc2lsa19hc3NlcnQoIEZzX2tIeiA9PSA4IHx8IEZz
X2tIeiA9PSAxMiB8fCBGc19rSHogPT0gMTYgKTsKIApAQCAtMTM3LDE3ICsxMzksMzMgQEAgb3B1
c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19jb3JlKCAgICAgICAgICAgICAgICAgIC8qIE8gICAg
Vm9pY2luZyBlc3RpbWF0ZTogMAogICAgIG1pbl9sYWcgICAgICAgICAgID0gUEVfTUlOX0xBR19N
UyAqIEZzX2tIejsKICAgICBtYXhfbGFnICAgICAgICAgICA9IFBFX01BWF9MQUdfTVMgKiBGc19r
SHogLSAxOwogCisgICAgLyogRG93bnNjYWxlIGlucHV0IGlmIG5lY2Vzc2FyeSAqLworICAgIHNp
bGtfc3VtX3Nxcl9zaGlmdCggJmVuZXJneSwgJnNoaWZ0LCBmcmFtZV91bnNjYWxlZCwgZnJhbWVf
bGVuZ3RoICk7CisgICAgc2hpZnQgKz0gMyAtIHNpbGtfQ0xaMzIoIGVuZXJneSApOyAgICAgICAg
LyogYXQgbGVhc3QgdHdvIGJpdHMgaGVhZHJvb20gKi8KKyAgICBBTExPQyggZnJhbWVfc2NhbGVk
LCBmcmFtZV9sZW5ndGgsIG9wdXNfaW50MTYgKTsKKyAgICBpZiggc2hpZnQgPiAwICkgeworICAg
ICAgICBzaGlmdCA9IHNpbGtfUlNISUZUKCBzaGlmdCArIDEsIDEgKTsKKyAgICAgICAgZm9yKCBp
ID0gMDsgaSA8IGZyYW1lX2xlbmd0aDsgaSsrICkgeworICAgICAgICAgICAgZnJhbWVfc2NhbGVk
WyBpIF0gPSBzaWxrX1JTSElGVCggZnJhbWVfdW5zY2FsZWRbIGkgXSwgc2hpZnQgKTsKKyAgICAg
ICAgfQorICAgICAgICBmcmFtZSA9IGZyYW1lX3NjYWxlZDsKKyAgICB9IGVsc2UgeworICAgICAg
ICBmcmFtZSA9IGZyYW1lX3Vuc2NhbGVkOworICAgIH0KKworICAgIEFMTE9DKCBmcmFtZV84a0h6
X2J1ZiwgKCBGc19rSHogPT0gOCApID8gMSA6IGZyYW1lX2xlbmd0aF84a0h6LCBvcHVzX2ludDE2
ICk7CiAgICAgLyogUmVzYW1wbGUgZnJvbSBpbnB1dCBzYW1wbGVkIGF0IEZzX2tIeiB0byA4IGtI
eiAqLwotICAgIEFMTE9DKCBmcmFtZV84a0h6LCBmcmFtZV9sZW5ndGhfOGtIeiwgb3B1c19pbnQx
NiApOwogICAgIGlmKCBGc19rSHogPT0gMTYgKSB7CiAgICAgICAgIHNpbGtfbWVtc2V0KCBmaWx0
X3N0YXRlLCAwLCAyICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKLSAgICAgICAgc2lsa19yZXNh
bXBsZXJfZG93bjIoIGZpbHRfc3RhdGUsIGZyYW1lXzhrSHosIGZyYW1lLCBmcmFtZV9sZW5ndGgg
KTsKKyAgICAgICAgc2lsa19yZXNhbXBsZXJfZG93bjIoIGZpbHRfc3RhdGUsIGZyYW1lXzhrSHpf
YnVmLCBmcmFtZSwgZnJhbWVfbGVuZ3RoICk7CisgICAgICAgIGZyYW1lXzhrSHogPSBmcmFtZV84
a0h6X2J1ZjsKICAgICB9IGVsc2UgaWYoIEZzX2tIeiA9PSAxMiApIHsKICAgICAgICAgc2lsa19t
ZW1zZXQoIGZpbHRfc3RhdGUsIDAsIDYgKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOwotICAgICAg
ICBzaWxrX3Jlc2FtcGxlcl9kb3duMl8zKCBmaWx0X3N0YXRlLCBmcmFtZV84a0h6LCBmcmFtZSwg
ZnJhbWVfbGVuZ3RoICk7CisgICAgICAgIHNpbGtfcmVzYW1wbGVyX2Rvd24yXzMoIGZpbHRfc3Rh
dGUsIGZyYW1lXzhrSHpfYnVmLCBmcmFtZSwgZnJhbWVfbGVuZ3RoICk7CisgICAgICAgIGZyYW1l
XzhrSHogPSBmcmFtZV84a0h6X2J1ZjsKICAgICB9IGVsc2UgewogICAgICAgICBzaWxrX2Fzc2Vy
dCggRnNfa0h6ID09IDggKTsKLSAgICAgICAgc2lsa19tZW1jcHkoIGZyYW1lXzhrSHosIGZyYW1l
LCBmcmFtZV9sZW5ndGhfOGtIeiAqIHNpemVvZihvcHVzX2ludDE2KSApOworICAgICAgICBmcmFt
ZV84a0h6ID0gZnJhbWU7CiAgICAgfQogCiAgICAgLyogRGVjaW1hdGUgYWdhaW4gdG8gNCBrSHog
Ki8KQEAgLTE2MCwxOSArMTc4LDYgQEAgb3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19jb3Jl
KCAgICAgICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMAogICAgICAgICBm
cmFtZV80a0h6WyBpIF0gPSBzaWxrX0FERF9TQVQxNiggZnJhbWVfNGtIelsgaSBdLCBmcmFtZV80
a0h6WyBpIC0gMSBdICk7CiAgICAgfQogCi0gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAg
ICAqKiBTY2FsZSA0IGtIeiBzaWduYWwgZG93biB0byBwcmV2ZW50IGNvcnJlbGF0aW9ucyBtZWFz
dXJlcyBmcm9tIG92ZXJmbG93aW5nCi0gICAgKiogZmluZCBzY2FsaW5nIGFzIG1heCBzY2FsaW5n
IGZvciBlYWNoIDhrSHooPykgc3ViZnJhbWUKLSAgICAqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwot
Ci0gICAgLyogSW5uZXIgcHJvZHVjdCBpcyBjYWxjdWxhdGVkIHdpdGggZGlmZmVyZW50IGxlbmd0
aHMsIHNvIHNjYWxlIGZvciB0aGUgd29yc3QgY2FzZSAqLwotICAgIHNpbGtfc3VtX3Nxcl9zaGlm
dCggJmVuZXJneSwgJnNoaWZ0LCBmcmFtZV80a0h6LCBmcmFtZV9sZW5ndGhfNGtIeiApOwotICAg
IGlmKCBzaGlmdCA+IDAgKSB7Ci0gICAgICAgIHNoaWZ0ID0gc2lsa19SU0hJRlQoIHNoaWZ0LCAx
ICk7Ci0gICAgICAgIGZvciggaSA9IDA7IGkgPCBmcmFtZV9sZW5ndGhfNGtIejsgaSsrICkgewot
ICAgICAgICAgICAgZnJhbWVfNGtIelsgaSBdID0gc2lsa19SU0hJRlQoIGZyYW1lXzRrSHpbIGkg
XSwgc2hpZnQgKTsKLSAgICAgICAgfQotICAgIH0KIAogICAgIC8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioKICAgICAqIEZJUlNUIFNUQUdFLCBvcGVyYXRpbmcgaW4gNCBraHoKQEAgLTMxMSwxOCArMzE2
LDYgQEAgb3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19jb3JlKCAgICAgICAgICAgICAgICAg
IC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMAogICAgICoqIFNFQ09ORCBTVEFHRSwgb3BlcmF0
aW5nIGF0IDgga0h6LCBvbiBsYWcgc2VjdGlvbnMgd2l0aCBoaWdoIGNvcnJlbGF0aW9uCiAgICAg
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIAotICAgIC8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioKLSAgICAqKiBTY2FsZSBzaWduYWwgZG93biB0byBhdm9pZCBjb3JyZWxhdGlvbnMgbWVhc3Vy
ZXMgZnJvbSBvdmVyZmxvd2luZwotICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgLyog
ZmluZCBzY2FsaW5nIGFzIG1heCBzY2FsaW5nIGZvciBlYWNoIHN1YmZyYW1lICovCi0gICAgc2ls
a19zdW1fc3FyX3NoaWZ0KCAmZW5lcmd5LCAmc2hpZnQsIGZyYW1lXzhrSHosIGZyYW1lX2xlbmd0
aF84a0h6ICk7Ci0gICAgaWYoIHNoaWZ0ID4gMCApIHsKLSAgICAgICAgc2hpZnQgPSBzaWxrX1JT
SElGVCggc2hpZnQsIDEgKTsKLSAgICAgICAgZm9yKCBpID0gMDsgaSA8IGZyYW1lX2xlbmd0aF84
a0h6OyBpKysgKSB7Ci0gICAgICAgICAgICBmcmFtZV84a0h6WyBpIF0gPSBzaWxrX1JTSElGVCgg
ZnJhbWVfOGtIelsgaSBdLCBzaGlmdCApOwotICAgICAgICB9Ci0gICAgfQotCiAgICAgLyoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKgogICAgICogRmluZCBlbmVyZ3kgb2YgZWFjaCBzdWJmcmFtZSBw
cm9qZWN0ZWQgb250byBpdHMgaGlzdG9yeSwgZm9yIGEgcmFuZ2Ugb2YgZGVsYXlzCiAgICAgKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqLwpAQCAtNDYyLDI0ICs0NTUsNiBAQCBvcHVzX2ludCBzaWxr
X3BpdGNoX2FuYWx5c2lzX2NvcmUoICAgICAgICAgICAgICAgICAgLyogTyAgICBWb2ljaW5nIGVz
dGltYXRlOiAwCiAgICAgc2lsa19hc3NlcnQoICpMVFBDb3JyX1ExNSA+PSAwICk7CiAKICAgICBp
ZiggRnNfa0h6ID4gOCApIHsKLSAgICAgICAgVkFSREVDTCggb3B1c19pbnQxNiwgc2NyYXRjaF9t
ZW0gKTsKLSAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgLyogU2NhbGUgaW5w
dXQgc2lnbmFsIGRvd24gdG8gYXZvaWQgY29ycmVsYXRpb25zIG1lYXN1cmVzIGZyb20gb3ZlcmZs
b3dpbmcgKi8KLSAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgLyogZmluZCBz
Y2FsaW5nIGFzIG1heCBzY2FsaW5nIGZvciBlYWNoIHN1YmZyYW1lICovCi0gICAgICAgIHNpbGtf
c3VtX3Nxcl9zaGlmdCggJmVuZXJneSwgJnNoaWZ0LCBmcmFtZSwgZnJhbWVfbGVuZ3RoICk7Ci0g
ICAgICAgIEFMTE9DKCBzY3JhdGNoX21lbSwgc2hpZnQgPiAwID8gZnJhbWVfbGVuZ3RoIDogQUxM
T0NfTk9ORSwgb3B1c19pbnQxNiApOwotICAgICAgICBpZiggc2hpZnQgPiAwICkgewotICAgICAg
ICAgICAgLyogTW92ZSBzaWduYWwgdG8gc2NyYXRjaCBtZW0gYmVjYXVzZSB0aGUgaW5wdXQgc2ln
bmFsIHNob3VsZCBiZSB1bmNoYW5nZWQgKi8KLSAgICAgICAgICAgIHNoaWZ0ID0gc2lsa19SU0hJ
RlQoIHNoaWZ0LCAxICk7Ci0gICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgZnJhbWVfbGVuZ3Ro
OyBpKysgKSB7Ci0gICAgICAgICAgICAgICAgc2NyYXRjaF9tZW1bIGkgXSA9IHNpbGtfUlNISUZU
KCBmcmFtZVsgaSBdLCBzaGlmdCApOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgaW5wdXRf
ZnJhbWVfcHRyID0gc2NyYXRjaF9tZW07Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBp
bnB1dF9mcmFtZV9wdHIgPSBmcmFtZTsKLSAgICAgICAgfQotCiAgICAgICAgIC8qIFNlYXJjaCBp
biBvcmlnaW5hbCBzaWduYWwgKi8KIAogICAgICAgICBDQmltYXhfb2xkID0gQ0JpbWF4OwpAQCAt
NTE5LDE0ICs0OTQsMTQgQEAgb3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19jb3JlKCAgICAg
ICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMAogICAgICAgICAvKiBDYWxj
dWxhdGUgdGhlIGNvcnJlbGF0aW9ucyBhbmQgZW5lcmdpZXMgbmVlZGVkIGluIHN0YWdlIDMgKi8K
ICAgICAgICAgQUxMT0MoIGVuZXJnaWVzX3N0MywgbmJfc3ViZnIgKiBuYl9jYmtfc2VhcmNoLCBz
aWxrX3BlX3N0YWdlM192YWxzICk7CiAgICAgICAgIEFMTE9DKCBjcm9zc19jb3JyX3N0MywgbmJf
c3ViZnIgKiBuYl9jYmtfc2VhcmNoLCBzaWxrX3BlX3N0YWdlM192YWxzICk7Ci0gICAgICAgIHNp
bGtfUF9BbmFfY2FsY19jb3JyX3N0MyggIGNyb3NzX2NvcnJfc3QzLCBpbnB1dF9mcmFtZV9wdHIs
IHN0YXJ0X2xhZywgc2ZfbGVuZ3RoLCBuYl9zdWJmciwgY29tcGxleGl0eSwgYXJjaCApOwotICAg
ICAgICBzaWxrX1BfQW5hX2NhbGNfZW5lcmd5X3N0MyggZW5lcmdpZXNfc3QzLCBpbnB1dF9mcmFt
ZV9wdHIsIHN0YXJ0X2xhZywgc2ZfbGVuZ3RoLCBuYl9zdWJmciwgY29tcGxleGl0eSwgYXJjaCAp
OworICAgICAgICBzaWxrX1BfQW5hX2NhbGNfY29ycl9zdDMoICBjcm9zc19jb3JyX3N0MywgZnJh
bWUsIHN0YXJ0X2xhZywgc2ZfbGVuZ3RoLCBuYl9zdWJmciwgY29tcGxleGl0eSwgYXJjaCApOwor
ICAgICAgICBzaWxrX1BfQW5hX2NhbGNfZW5lcmd5X3N0MyggZW5lcmdpZXNfc3QzLCBmcmFtZSwg
c3RhcnRfbGFnLCBzZl9sZW5ndGgsIG5iX3N1YmZyLCBjb21wbGV4aXR5LCBhcmNoICk7CiAKICAg
ICAgICAgbGFnX2NvdW50ZXIgPSAwOwogICAgICAgICBzaWxrX2Fzc2VydCggbGFnID09IHNpbGtf
U0FUMTYoIGxhZyApICk7CiAgICAgICAgIGNvbnRvdXJfYmlhc19RMTUgPSBzaWxrX0RJVjMyXzE2
KCBTSUxLX0ZJWF9DT05TVCggUEVfRkxBVENPTlRPVVJfQklBUywgMTUgKSwgbGFnICk7CiAKLSAg
ICAgICAgdGFyZ2V0X3B0ciA9ICZpbnB1dF9mcmFtZV9wdHJbIFBFX0xUUF9NRU1fTEVOR1RIX01T
ICogRnNfa0h6IF07CisgICAgICAgIHRhcmdldF9wdHIgPSAmZnJhbWVbIFBFX0xUUF9NRU1fTEVO
R1RIX01TICogRnNfa0h6IF07CiAgICAgICAgIGVuZXJneV90YXJnZXQgPSBzaWxrX0FERDMyKCBz
aWxrX2lubmVyX3Byb2RfYWxpZ25lZCggdGFyZ2V0X3B0ciwgdGFyZ2V0X3B0ciwgbmJfc3ViZnIg
KiBzZl9sZW5ndGgsIGFyY2ggKSwgMSApOwogICAgICAgICBmb3IoIGQgPSBzdGFydF9sYWc7IGQg
PD0gZW5kX2xhZzsgZCsrICkgewogICAgICAgICAgICAgZm9yKCBqID0gMDsgaiA8IG5iX2Nia19z
ZWFyY2g7IGorKyApIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9wcmVmaWx0ZXJfRklYLmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZml4ZWQvcHJlZmlsdGVyX0ZJWC5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2
YThlMzUxNTJlZmJkNmQwYjE3MjI3YWE3NTI1YTNhMjNkZWU5MjU0Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9wcmVmaWx0ZXJfRklYLmMK
KysrIC9kZXYvbnVsbApAQCAtMSwyMjEgKzAsMCBAQAotLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi1Db3B5cmln
aHQgKGMpIDIwMDYtMjAxMSwgU2t5cGUgTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLVJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCi1hcmUgbWV0OgotLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCi10aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotLSBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAot
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQotZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLS0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBT
b2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKLW5hbWVzIG9mIHNwZWNpZmljIGNv
bnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCi1wcm9kdWN0cyBk
ZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4K
LXBlcm1pc3Npb24uCi1USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKLUFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLUlNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFCi1BUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKLUxJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLUNPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi1T
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKLUlOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi1DT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUKLVBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0K
LSNpZmRlZiBIQVZFX0NPTkZJR19ICi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jZW5kaWYKLQotI2lu
Y2x1ZGUgIm1haW5fRklYLmgiCi0jaW5jbHVkZSAic3RhY2tfYWxsb2MuaCIKLSNpbmNsdWRlICJ0
dW5pbmdfcGFyYW1ldGVycy5oIgotCi0jaWYgZGVmaW5lZChNSVBTcjFfQVNNKQotI2luY2x1ZGUg
Im1pcHMvcHJlZmlsdGVyX0ZJWF9taXBzcjEuaCIKLSNlbmRpZgotCi0KLSNpZiAhZGVmaW5lZChP
VkVSUklERV9zaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWCkKLSNkZWZpbmUgc2ls
a193YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GSVgoc3RhdGUsIHJlc19RMiwgY29lZl9RMTMs
IGlucHV0LCBsYW1iZGFfUTE2LCBsZW5ndGgsIG9yZGVyLCBhcmNoKSBcCi0gICAgKCh2b2lkKShh
cmNoKSxzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWF9jKHN0YXRlLCByZXNfUTIs
IGNvZWZfUTEzLCBpbnB1dCwgbGFtYmRhX1ExNiwgbGVuZ3RoLCBvcmRlcikpCi0jZW5kaWYKLQot
LyogUHJlZmlsdGVyIGZvciBmaW5kaW5nIFF1YW50aXplciBpbnB1dCBzaWduYWwgKi8KLXN0YXRp
YyBPUFVTX0lOTElORSB2b2lkIHNpbGtfcHJlZmlsdF9GSVgoCi0gICAgc2lsa19wcmVmaWx0ZXJf
c3RhdGVfRklYICAgICpQLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIHN0YXRlICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAg
ICAgICAgIHN0X3Jlc19RMTJbXSwgICAgICAgICAgICAgICAvKiBJICAgIHNob3J0IHRlcm0gcmVz
aWR1YWwgc2lnbmFsICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAg
IHh3X1EzW10sICAgICAgICAgICAgICAgICAgICAvKiBPICAgIHByZWZpbHRlcmVkIHNpZ25hbCAg
ICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIEhhcm1T
aGFwZUZJUlBhY2tlZF9RMTIsICAgICAvKiBJICAgIEhhcm1vbmljIHNoYXBpbmcgY29lZmljaWVu
dHMgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIFRpbHRfUTE0LCAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIFRpbHQgc2hhcGluZyBjb2VmaWNpZW50ICAgICAgICAg
ICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIExGX3NocF9RMTQsICAgICAg
ICAgICAgICAgICAvKiBJICAgIExvdy1mcmVxdWFuY3kgc2hhcGluZyBjb2VmaWNpZW50cyAgICov
Ci0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxhZywgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIExhZyBmb3IgaGFybW9uaWMgc2hhcGluZyAgICAgICAgICAgICovCi0gICAg
b3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0aCAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIExlbmd0aCBvZiBzaWduYWxzICAgICAgICAgICAgICAgICAgICovCi0pOwotCi12b2lk
IHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYX2MoCi0gICAgICAgICAgb3B1c19p
bnQzMiAgICAgICAgICAgIHN0YXRlW10sICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFN0YXRl
IFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgb3B1c19pbnQzMiAg
ICAgICAgICAgIHJlc19RMltdLCAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJlc2lkdWFsIHNp
Z25hbCBbbGVuZ3RoXSAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAg
ICAgIGNvZWZfUTEzW10sICAgICAgICAgICAgICAgICAvKiBJICAgIENvZWZmaWNpZW50cyBbb3Jk
ZXJdICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGlu
cHV0W10sICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IHNpZ25hbCBbbGVuZ3RoXSAg
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGxhbWJkYV9R
MTYsICAgICAgICAgICAgICAgICAvKiBJICAgIFdhcnBpbmcgZmFjdG9yICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1dCBzaWduYWwgICAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICovCi0p
Ci17Ci0gICAgb3B1c19pbnQgICAgIG4sIGk7Ci0gICAgb3B1c19pbnQzMiAgIGFjY19RMTEsIHRt
cDEsIHRtcDI7Ci0KLSAgICAvKiBPcmRlciBtdXN0IGJlIGV2ZW4gKi8KLSAgICBzaWxrX2Fzc2Vy
dCggKCBvcmRlciAmIDEgKSA9PSAwICk7Ci0KLSAgICBmb3IoIG4gPSAwOyBuIDwgbGVuZ3RoOyBu
KysgKSB7Ci0gICAgICAgIC8qIE91dHB1dCBvZiBsb3dwYXNzIHNlY3Rpb24gKi8KLSAgICAgICAg
dG1wMiA9IHNpbGtfU01MQVdCKCBzdGF0ZVsgMCBdLCBzdGF0ZVsgMSBdLCBsYW1iZGFfUTE2ICk7
Ci0gICAgICAgIHN0YXRlWyAwIF0gPSBzaWxrX0xTSElGVCggaW5wdXRbIG4gXSwgMTQgKTsKLSAg
ICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwotICAgICAgICB0bXAxID0gc2ls
a19TTUxBV0IoIHN0YXRlWyAxIF0sIHN0YXRlWyAyIF0gLSB0bXAyLCBsYW1iZGFfUTE2ICk7Ci0g
ICAgICAgIHN0YXRlWyAxIF0gPSB0bXAyOwotICAgICAgICBhY2NfUTExID0gc2lsa19SU0hJRlQo
IG9yZGVyLCAxICk7Ci0gICAgICAgIGFjY19RMTEgPSBzaWxrX1NNTEFXQiggYWNjX1ExMSwgdG1w
MiwgY29lZl9RMTNbIDAgXSApOwotICAgICAgICAvKiBMb29wIG92ZXIgYWxscGFzcyBzZWN0aW9u
cyAqLwotICAgICAgICBmb3IoIGkgPSAyOyBpIDwgb3JkZXI7IGkgKz0gMiApIHsKLSAgICAgICAg
ICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNlY3Rpb24gKi8KLSAgICAgICAgICAgIHRtcDIgPSBz
aWxrX1NNTEFXQiggc3RhdGVbIGkgXSwgc3RhdGVbIGkgKyAxIF0gLSB0bXAxLCBsYW1iZGFfUTE2
ICk7Ci0gICAgICAgICAgICBzdGF0ZVsgaSBdID0gdG1wMTsKLSAgICAgICAgICAgIGFjY19RMTEg
PSBzaWxrX1NNTEFXQiggYWNjX1ExMSwgdG1wMSwgY29lZl9RMTNbIGkgLSAxIF0gKTsKLSAgICAg
ICAgICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNlY3Rpb24gKi8KLSAgICAgICAgICAgIHRtcDEg
PSBzaWxrX1NNTEFXQiggc3RhdGVbIGkgKyAxIF0sIHN0YXRlWyBpICsgMiBdIC0gdG1wMiwgbGFt
YmRhX1ExNiApOwotICAgICAgICAgICAgc3RhdGVbIGkgKyAxIF0gPSB0bXAyOwotICAgICAgICAg
ICAgYWNjX1ExMSA9IHNpbGtfU01MQVdCKCBhY2NfUTExLCB0bXAyLCBjb2VmX1ExM1sgaSBdICk7
Ci0gICAgICAgIH0KLSAgICAgICAgc3RhdGVbIG9yZGVyIF0gPSB0bXAxOwotICAgICAgICBhY2Nf
UTExID0gc2lsa19TTUxBV0IoIGFjY19RMTEsIHRtcDEsIGNvZWZfUTEzWyBvcmRlciAtIDEgXSAp
OwotICAgICAgICByZXNfUTJbIG4gXSA9IHNpbGtfTFNISUZUKCAob3B1c19pbnQzMilpbnB1dFsg
biBdLCAyICkgLSBzaWxrX1JTSElGVF9ST1VORCggYWNjX1ExMSwgOSApOwotICAgIH0KLX0KLQot
dm9pZCBzaWxrX3ByZWZpbHRlcl9GSVgoCi0gICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZJWCAgICAg
ICAgICAqcHNFbmMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNv
ZGVyIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2VuY29kZXJfY29udHJvbF9GSVggICpw
c0VuY0N0cmwsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEVuY29kZXIgY29u
dHJvbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgeHdfUTNbXSwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgV2VpZ2h0ZWQgc2lnbmFsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICB4W10gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTcGVlY2ggc2lnbmFsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSkK
LXsKLSAgICBzaWxrX3ByZWZpbHRlcl9zdGF0ZV9GSVggKlAgPSAmcHNFbmMtPnNQcmVmaWx0Owot
ICAgIG9wdXNfaW50ICAgaiwgaywgbGFnOwotICAgIG9wdXNfaW50MzIgdG1wXzMyOwotICAgIGNv
bnN0IG9wdXNfaW50MTYgKkFSMV9zaHBfUTEzOwotICAgIGNvbnN0IG9wdXNfaW50MTYgKnB4Owot
ICAgIG9wdXNfaW50MzIgKnB4d19RMzsKLSAgICBvcHVzX2ludCAgIEhhcm1TaGFwZUdhaW5fUTEy
LCBUaWx0X1ExNDsKLSAgICBvcHVzX2ludDMyIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTIsIExGX3No
cF9RMTQ7Ci0gICAgVkFSREVDTCggb3B1c19pbnQzMiwgeF9maWx0X1ExMiApOwotICAgIFZBUkRF
Q0woIG9wdXNfaW50MzIsIHN0X3Jlc19RMiApOwotICAgIG9wdXNfaW50MTYgQl9RMTBbIDIgXTsK
LSAgICBTQVZFX1NUQUNLOwotCi0gICAgLyogU2V0IHVwIHBvaW50ZXJzICovCi0gICAgcHggID0g
eDsKLSAgICBweHdfUTMgPSB4d19RMzsKLSAgICBsYWcgPSBQLT5sYWdQcmV2OwotICAgIEFMTE9D
KCB4X2ZpbHRfUTEyLCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGgsIG9wdXNfaW50MzIgKTsKLSAg
ICBBTExPQyggc3RfcmVzX1EyLCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGgsIG9wdXNfaW50MzIg
KTsKLSAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGsrKyApIHsKLSAg
ICAgICAgLyogVXBkYXRlIFZhcmlhYmxlcyB0aGF0IGNoYW5nZSBwZXIgc3ViIGZyYW1lICovCi0g
ICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQg
KSB7Ci0gICAgICAgICAgICBsYWcgPSBwc0VuY0N0cmwtPnBpdGNoTFsgayBdOwotICAgICAgICB9
Ci0KLSAgICAgICAgLyogTm9pc2Ugc2hhcGUgcGFyYW1ldGVycyAqLwotICAgICAgICBIYXJtU2hh
cGVHYWluX1ExMiA9IHNpbGtfU01VTFdCKCAob3B1c19pbnQzMilwc0VuY0N0cmwtPkhhcm1TaGFw
ZUdhaW5fUTE0WyBrIF0sIDE2Mzg0IC0gcHNFbmNDdHJsLT5IYXJtQm9vc3RfUTE0WyBrIF0gKTsK
LSAgICAgICAgc2lsa19hc3NlcnQoIEhhcm1TaGFwZUdhaW5fUTEyID49IDAgKTsKLSAgICAgICAg
SGFybVNoYXBlRklSUGFja2VkX1ExMiAgPSAgICAgICAgICAgICAgICAgICAgICAgICAgc2lsa19S
U0hJRlQoIEhhcm1TaGFwZUdhaW5fUTEyLCAyICk7Ci0gICAgICAgIEhhcm1TaGFwZUZJUlBhY2tl
ZF9RMTIgfD0gc2lsa19MU0hJRlQoIChvcHVzX2ludDMyKXNpbGtfUlNISUZUKCBIYXJtU2hhcGVH
YWluX1ExMiwgMSApLCAxNiApOwotICAgICAgICBUaWx0X1ExNCAgICA9IHBzRW5jQ3RybC0+VGls
dF9RMTRbICAgayBdOwotICAgICAgICBMRl9zaHBfUTE0ICA9IHBzRW5jQ3RybC0+TEZfc2hwX1Ex
NFsgayBdOwotICAgICAgICBBUjFfc2hwX1ExMyA9ICZwc0VuY0N0cmwtPkFSMV9RMTNbICAgayAq
IE1BWF9TSEFQRV9MUENfT1JERVIgXTsKLQotICAgICAgICAvKiBTaG9ydCB0ZXJtIEZJUiBmaWx0
ZXJpbmcqLwotICAgICAgICBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWCggUC0+
c0FSX3NocCwgc3RfcmVzX1EyLCBBUjFfc2hwX1ExMywgcHgsCi0gICAgICAgICAgICBwc0VuYy0+
c0Ntbi53YXJwaW5nX1ExNiwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoLCBwc0VuYy0+c0Ntbi5z
aGFwaW5nTFBDT3JkZXIsIHBzRW5jLT5zQ21uLmFyY2ggKTsKLQotICAgICAgICAvKiBSZWR1Y2Ug
KG1haW5seSkgbG93IGZyZXF1ZW5jaWVzIGR1cmluZyBoYXJtb25pYyBlbXBoYXNpcyAqLwotICAg
ICAgICBCX1ExMFsgMCBdID0gc2lsa19SU0hJRlRfUk9VTkQoIHBzRW5jQ3RybC0+R2FpbnNQcmVf
UTE0WyBrIF0sIDQgKTsKLSAgICAgICAgdG1wXzMyID0gc2lsa19TTUxBQkIoIFNJTEtfRklYX0NP
TlNUKCBJTlBVVF9USUxULCAyNiApLCBwc0VuY0N0cmwtPkhhcm1Cb29zdF9RMTRbIGsgXSwgSGFy
bVNoYXBlR2Fpbl9RMTIgKTsgICAvKiBRMjYgKi8KLSAgICAgICAgdG1wXzMyID0gc2lsa19TTUxB
QkIoIHRtcF8zMiwgcHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eV9RMTQsIFNJTEtfRklYX0NPTlNU
KCBISUdIX1JBVEVfSU5QVVRfVElMVCwgMTIgKSApOyAgICAvKiBRMjYgKi8KLSAgICAgICAgdG1w
XzMyID0gc2lsa19TTVVMV0IoIHRtcF8zMiwgLXBzRW5jQ3RybC0+R2FpbnNQcmVfUTE0WyBrIF0g
KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBRMjQg
Ki8KLSAgICAgICAgdG1wXzMyID0gc2lsa19SU0hJRlRfUk9VTkQoIHRtcF8zMiwgMTQgKTsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBRMTAgKi8KLSAgICAgICAgQl9RMTBbIDEgXT0gc2lsa19TQVQxNiggdG1wXzMy
ICk7Ci0gICAgICAgIHhfZmlsdF9RMTJbIDAgXSA9IHNpbGtfTUxBKCBzaWxrX01VTCggc3RfcmVz
X1EyWyAwIF0sIEJfUTEwWyAwIF0gKSwgUC0+c0hhcm1IUF9RMiwgQl9RMTBbIDEgXSApOwotICAg
ICAgICBmb3IoIGogPSAxOyBqIDwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoOyBqKysgKSB7Ci0g
ICAgICAgICAgICB4X2ZpbHRfUTEyWyBqIF0gPSBzaWxrX01MQSggc2lsa19NVUwoIHN0X3Jlc19R
MlsgaiBdLCBCX1ExMFsgMCBdICksIHN0X3Jlc19RMlsgaiAtIDEgXSwgQl9RMTBbIDEgXSApOwot
ICAgICAgICB9Ci0gICAgICAgIFAtPnNIYXJtSFBfUTIgPSBzdF9yZXNfUTJbIHBzRW5jLT5zQ21u
LnN1YmZyX2xlbmd0aCAtIDEgXTsKLQotICAgICAgICBzaWxrX3ByZWZpbHRfRklYKCBQLCB4X2Zp
bHRfUTEyLCBweHdfUTMsIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTIsIFRpbHRfUTE0LCBMRl9zaHBf
UTE0LCBsYWcsIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCApOwotCi0gICAgICAgIHB4ICArPSBw
c0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7Ci0gICAgICAgIHB4d19RMyArPSBwc0VuYy0+c0Ntbi5z
dWJmcl9sZW5ndGg7Ci0gICAgfQotCi0gICAgUC0+bGFnUHJldiA9IHBzRW5jQ3RybC0+cGl0Y2hM
WyBwc0VuYy0+c0Ntbi5uYl9zdWJmciAtIDEgXTsKLSAgICBSRVNUT1JFX1NUQUNLOwotfQotCi0j
aWZuZGVmIE9WRVJSSURFX3NpbGtfcHJlZmlsdF9GSVgKLS8qIFByZWZpbHRlciBmb3IgZmluZGlu
ZyBRdWFudGl6ZXIgaW5wdXQgc2lnbmFsICovCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxr
X3ByZWZpbHRfRklYKAotICAgIHNpbGtfcHJlZmlsdGVyX3N0YXRlX0ZJWCAgICAqUCwgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSS9PICBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBzdF9yZXNfUTEyW10sICAg
ICAgICAgICAgICAgLyogSSAgICBzaG9ydCB0ZXJtIHJlc2lkdWFsIHNpZ25hbCAgICAgICAgICAq
LwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICB4d19RM1tdLCAgICAgICAgICAgICAg
ICAgICAgLyogTyAgICBwcmVmaWx0ZXJlZCBzaWduYWwgICAgICAgICAgICAgICAgICAqLwotICAg
IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVGSVJQYWNrZWRfUTEyLCAgICAg
LyogSSAgICBIYXJtb25pYyBzaGFwaW5nIGNvZWZpY2llbnRzICAgICAgICAqLwotICAgIG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgICBUaWx0X1ExNCwgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBUaWx0IHNoYXBpbmcgY29lZmljaWVudCAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIg
ICAgICAgICAgICAgICAgICBMRl9zaHBfUTE0LCAgICAgICAgICAgICAgICAgLyogSSAgICBMb3ct
ZnJlcXVhbmN5IHNoYXBpbmcgY29lZmljaWVudHMgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgICBsYWcsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMYWcgZm9yIGhh
cm1vbmljIHNoYXBpbmcgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgICBsZW5ndGggICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGggb2Ygc2lnbmFs
cyAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50ICAgaSwgaWR4LCBMVFBf
c2hwX2J1Zl9pZHg7Ci0gICAgb3B1c19pbnQzMiBuX0xUUF9RMTIsIG5fVGlsdF9RMTAsIG5fTEZf
UTEwOwotICAgIG9wdXNfaW50MzIgc0xGX01BX3NocF9RMTIsIHNMRl9BUl9zaHBfUTEyOwotICAg
IG9wdXNfaW50MTYgKkxUUF9zaHBfYnVmOwotCi0gICAgLyogVG8gc3BlZWQgdXAgdXNlIHRlbXAg
dmFyaWFibGVzIGluc3RlYWQgb2YgdXNpbmcgdGhlIHN0cnVjdCAqLwotICAgIExUUF9zaHBfYnVm
ICAgICA9IFAtPnNMVFBfc2hwOwotICAgIExUUF9zaHBfYnVmX2lkeCA9IFAtPnNMVFBfc2hwX2J1
Zl9pZHg7Ci0gICAgc0xGX0FSX3NocF9RMTIgID0gUC0+c0xGX0FSX3NocF9RMTI7Ci0gICAgc0xG
X01BX3NocF9RMTIgID0gUC0+c0xGX01BX3NocF9RMTI7Ci0KLSAgICBmb3IoIGkgPSAwOyBpIDwg
bGVuZ3RoOyBpKysgKSB7Ci0gICAgICAgIGlmKCBsYWcgPiAwICkgewotICAgICAgICAgICAgLyog
dW5yb2xsZWQgbG9vcCAqLwotICAgICAgICAgICAgc2lsa19hc3NlcnQoIEhBUk1fU0hBUEVfRklS
X1RBUFMgPT0gMyApOwotICAgICAgICAgICAgaWR4ID0gbGFnICsgTFRQX3NocF9idWZfaWR4Owot
ICAgICAgICAgICAgbl9MVFBfUTEyID0gc2lsa19TTVVMQkIoICAgICAgICAgICAgTFRQX3NocF9i
dWZbICggaWR4IC0gSEFSTV9TSEFQRV9GSVJfVEFQUyAvIDIgLSAxKSAmIExUUF9NQVNLIF0sIEhh
cm1TaGFwZUZJUlBhY2tlZF9RMTIgKTsKLSAgICAgICAgICAgIG5fTFRQX1ExMiA9IHNpbGtfU01M
QUJUKCBuX0xUUF9RMTIsIExUUF9zaHBfYnVmWyAoIGlkeCAtIEhBUk1fU0hBUEVfRklSX1RBUFMg
LyAyICAgICkgJiBMVFBfTUFTSyBdLCBIYXJtU2hhcGVGSVJQYWNrZWRfUTEyICk7Ci0gICAgICAg
ICAgICBuX0xUUF9RMTIgPSBzaWxrX1NNTEFCQiggbl9MVFBfUTEyLCBMVFBfc2hwX2J1ZlsgKCBp
ZHggLSBIQVJNX1NIQVBFX0ZJUl9UQVBTIC8gMiArIDEpICYgTFRQX01BU0sgXSwgSGFybVNoYXBl
RklSUGFja2VkX1ExMiApOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgbl9MVFBfUTEy
ID0gMDsKLSAgICAgICAgfQotCi0gICAgICAgIG5fVGlsdF9RMTAgPSBzaWxrX1NNVUxXQiggc0xG
X0FSX3NocF9RMTIsIFRpbHRfUTE0ICk7Ci0gICAgICAgIG5fTEZfUTEwICAgPSBzaWxrX1NNTEFX
Qiggc2lsa19TTVVMV1QoIHNMRl9BUl9zaHBfUTEyLCBMRl9zaHBfUTE0ICksIHNMRl9NQV9zaHBf
UTEyLCBMRl9zaHBfUTE0ICk7Ci0KLSAgICAgICAgc0xGX0FSX3NocF9RMTIgPSBzaWxrX1NVQjMy
KCBzdF9yZXNfUTEyWyBpIF0sIHNpbGtfTFNISUZUKCBuX1RpbHRfUTEwLCAyICkgKTsKLSAgICAg
ICAgc0xGX01BX3NocF9RMTIgPSBzaWxrX1NVQjMyKCBzTEZfQVJfc2hwX1ExMiwgIHNpbGtfTFNI
SUZUKCBuX0xGX1ExMCwgICAyICkgKTsKLQotICAgICAgICBMVFBfc2hwX2J1Zl9pZHggPSAoIExU
UF9zaHBfYnVmX2lkeCAtIDEgKSAmIExUUF9NQVNLOwotICAgICAgICBMVFBfc2hwX2J1ZlsgTFRQ
X3NocF9idWZfaWR4IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VO
RCggc0xGX01BX3NocF9RMTIsIDEyICkgKTsKLQotICAgICAgICB4d19RM1tpXSA9IHNpbGtfUlNI
SUZUX1JPVU5EKCBzaWxrX1NVQjMyKCBzTEZfTUFfc2hwX1ExMiwgbl9MVFBfUTEyICksIDkgKTsK
LSAgICB9Ci0KLSAgICAvKiBDb3B5IHRlbXAgdmFyaWFibGUgYmFjayB0byBzdGF0ZSAqLwotICAg
IFAtPnNMRl9BUl9zaHBfUTEyICAgPSBzTEZfQVJfc2hwX1ExMjsKLSAgICBQLT5zTEZfTUFfc2hw
X1ExMiAgID0gc0xGX01BX3NocF9RMTI7Ci0gICAgUC0+c0xUUF9zaHBfYnVmX2lkeCA9IExUUF9z
aHBfYnVmX2lkeDsKLX0KLSNlbmRpZiAvKiBPVkVSUklERV9zaWxrX3ByZWZpbHRfRklYICovCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZml4ZWQvc2NodXI2NF9GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zY2h1cjY0X0ZJ
WC5jCmluZGV4IDc2NGExMGVmM2VhNWQyYTJmNjg1NGYzYWU1MzQxNTFhNTFhMDE4YmMuLmIyY2Ix
MmQ5YjE2MGEwNzE1Zjg4ZTcyNDM5ZTVhMDM2Yjg2MjhhYzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhl
ZC9zY2h1cjY0X0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zY2h1cjY0X0ZJWC5jCkBAIC00Myw3ICs0
Myw3IEBAIG9wdXNfaW50MzIgc2lsa19zY2h1cjY0KCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBPICAgIHJldHVybnMgcmVzaWR1YWwgZW5lCiAgICAgb3B1c19pbnQzMiBDWyBTSUxLX01B
WF9PUkRFUl9MUEMgKyAxIF1bIDIgXTsKICAgICBvcHVzX2ludDMyIEN0bXAxX1EzMCwgQ3RtcDJf
UTMwLCByY190bXBfUTMxOwogCi0gICAgc2lsa19hc3NlcnQoIG9yZGVyPT02fHxvcmRlcj09OHx8
b3JkZXI9PTEwfHxvcmRlcj09MTJ8fG9yZGVyPT0xNHx8b3JkZXI9PTE2ICk7CisgICAgc2lsa19h
c3NlcnQoIG9yZGVyID49IDAgJiYgb3JkZXIgPD0gU0lMS19NQVhfT1JERVJfTFBDICk7CiAKICAg
ICAvKiBDaGVjayBmb3IgaW52YWxpZCBpbnB1dCAqLwogICAgIGlmKCBjWyAwIF0gPD0gMCApIHsK
QEAgLTUxLDkgKzUxLDEwIEBAIG9wdXNfaW50MzIgc2lsa19zY2h1cjY0KCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBPICAgIHJldHVybnMgcmVzaWR1YWwgZW5lCiAgICAgICAgIHJldHVy
biAwOwogICAgIH0KIAotICAgIGZvciggayA9IDA7IGsgPCBvcmRlciArIDE7IGsrKyApIHsKKyAg
ICBrID0gMDsKKyAgICBkbyB7CiAgICAgICAgIENbIGsgXVsgMCBdID0gQ1sgayBdWyAxIF0gPSBj
WyBrIF07Ci0gICAgfQorICAgIH0gd2hpbGUoICsrayA8PSBvcmRlciApOwogCiAgICAgZm9yKCBr
ID0gMDsgayA8IG9yZGVyOyBrKysgKSB7CiAgICAgICAgIC8qIENoZWNrIHRoYXQgd2Ugd29uJ3Qg
YmUgZ2V0dGluZyBhbiB1bnN0YWJsZSByYywgb3RoZXJ3aXNlIHN0b3AgaGVyZS4gKi8KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9maXhlZC9zY2h1cl9GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zY2h1cl9GSVguYwppbmRl
eCBjNGMwZWYyM2I0NzgwNGU1ZjU2YzdjNWQ1OGM2NjU1NmVlZjVhMDFlLi41OWQ0NGE2ZjdmZTg1
OGMyMWVlYmNhMzFiNmJlNDQzMGFjZDQ4MzE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvc2NodXJf
RklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NjaHVyX0ZJWC5jCkBAIC00MywyOCArNDMsMjkgQEAgb3B1
c19pbnQzMiBzaWxrX3NjaHVyKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAg
UmV0dXJucyByZXNpZHVhbCBlbmUKICAgICBvcHVzX2ludDMyICAgIENbIFNJTEtfTUFYX09SREVS
X0xQQyArIDEgXVsgMiBdOwogICAgIG9wdXNfaW50MzIgICAgQ3RtcDEsIEN0bXAyLCByY190bXBf
UTE1OwogCi0gICAgc2lsa19hc3NlcnQoIG9yZGVyPT02fHxvcmRlcj09OHx8b3JkZXI9PTEwfHxv
cmRlcj09MTJ8fG9yZGVyPT0xNHx8b3JkZXI9PTE2ICk7CisgICAgc2lsa19hc3NlcnQoIG9yZGVy
ID49IDAgJiYgb3JkZXIgPD0gU0lMS19NQVhfT1JERVJfTFBDICk7CiAKICAgICAvKiBHZXQgbnVt
YmVyIG9mIGxlYWRpbmcgemVyb3MgKi8KICAgICBseiA9IHNpbGtfQ0xaMzIoIGNbIDAgXSApOwog
CiAgICAgLyogQ29weSBjb3JyZWxhdGlvbnMgYW5kIGFkanVzdCBsZXZlbCB0byBRMzAgKi8KKyAg
ICBrID0gMDsKICAgICBpZiggbHogPCAyICkgewogICAgICAgICAvKiBseiBtdXN0IGJlIDEsIHNv
IHNoaWZ0IG9uZSB0byB0aGUgcmlnaHQgKi8KLSAgICAgICAgZm9yKCBrID0gMDsgayA8IG9yZGVy
ICsgMTsgaysrICkgeworICAgICAgICBkbyB7CiAgICAgICAgICAgICBDWyBrIF1bIDAgXSA9IENb
IGsgXVsgMSBdID0gc2lsa19SU0hJRlQoIGNbIGsgXSwgMSApOwotICAgICAgICB9CisgICAgICAg
IH0gd2hpbGUoICsrayA8PSBvcmRlciApOwogICAgIH0gZWxzZSBpZiggbHogPiAyICkgewogICAg
ICAgICAvKiBTaGlmdCB0byB0aGUgbGVmdCAqLwogICAgICAgICBseiAtPSAyOwotICAgICAgICBm
b3IoIGsgPSAwOyBrIDwgb3JkZXIgKyAxOyBrKysgKSB7CisgICAgICAgIGRvIHsKICAgICAgICAg
ICAgIENbIGsgXVsgMCBdID0gQ1sgayBdWyAxIF0gPSBzaWxrX0xTSElGVCggY1sgayBdLCBseiAp
OwotICAgICAgICB9CisgICAgICAgIH0gd2hpbGUoICsrayA8PSBvcmRlciApOwogICAgIH0gZWxz
ZSB7CiAgICAgICAgIC8qIE5vIG5lZWQgdG8gc2hpZnQgKi8KLSAgICAgICAgZm9yKCBrID0gMDsg
ayA8IG9yZGVyICsgMTsgaysrICkgeworICAgICAgICBkbyB7CiAgICAgICAgICAgICBDWyBrIF1b
IDAgXSA9IENbIGsgXVsgMSBdID0gY1sgayBdOwotICAgICAgICB9CisgICAgICAgIH0gd2hpbGUo
ICsrayA8PSBvcmRlciApOwogICAgIH0KIAogICAgIGZvciggayA9IDA7IGsgPCBvcmRlcjsgaysr
ICkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NvbHZlX0xTX0ZJWC5jIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3Nv
bHZlX0xTX0ZJWC5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MWQ3ZDQ5ZDAyYTVl
N2NiYTkyNDUyOTVlYmE2YWEyNmJjMmJlZTdlLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zb2x2ZV9MU19GSVguYworKysgL2Rldi9udWxs
CkBAIC0xLDI0OSArMCwwIEBACi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLUNvcHlyaWdodCAoYykgMjAwNi0y
MDExLCBTa3lwZSBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci1tb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLWFyZSBtZXQ6Ci0tIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKLXRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0tIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci1ub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi1k
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYg
b3IgSUVURiBUcnVzdCwgbm9yIHRoZQotbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBt
YXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKLXByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgotcGVybWlzc2lvbi4K
LVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMgIkFTIElTIgotQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UK
LUFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRQotTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLVNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UwotSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KLUNPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi1BUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQotUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLQotI2lmZGVmIEhBVkVf
Q09ORklHX0gKLSNpbmNsdWRlICJjb25maWcuaCIKLSNlbmRpZgotCi0jaW5jbHVkZSAibWFpbl9G
SVguaCIKLSNpbmNsdWRlICJzdGFja19hbGxvYy5oIgotI2luY2x1ZGUgInR1bmluZ19wYXJhbWV0
ZXJzLmgiCi0KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qIEludGVybmFsIGZ1
bmN0aW9uIGhlYWRlcnMgKi8KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLQotdHlw
ZWRlZiBzdHJ1Y3QgewotICAgIG9wdXNfaW50MzIgUTM2X3BhcnQ7Ci0gICAgb3B1c19pbnQzMiBR
NDhfcGFydDsKLX0gaW52X0RfdDsKLQotLyogRmFjdG9yaXplIHNxdWFyZSBtYXRyaXggQSBpbnRv
IExETCBmb3JtICovCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xETF9mYWN0b3JpemVf
RklYKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgKkEsICAgICAgICAgLyogSS9PIFBvaW50ZXIg
dG8gU3ltZXRyaWMgU3F1YXJlIE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIG9wdXNfaW50ICAgICAgICAgICAgTSwgICAgICAgICAgLyogSSAgIFNpemUgb2YgTWF0cml4
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9w
dXNfaW50MzIgICAgICAgICAgKkxfUTE2LCAgICAgLyogSS9PIFBvaW50ZXIgdG8gU3F1YXJlIFVw
cGVyIHRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAqLwotICAgIGludl9EX3Qg
ICAgICAgICAgICAgKmludl9EICAgICAgLyogSS9PIFBvaW50ZXIgdG8gdmVjdG9yIGhvbGRpbmcg
aW52ZXJ0ZWQgZGlhZ29uYWwgZWxlbWVudHMgb2YgRCAgICAqLwotKTsKLQotLyogU29sdmUgTHgg
PSBiLCB3aGVuIEwgaXMgbG93ZXIgdHJpYW5ndWxhciBhbmQgaGFzIG9uZXMgb24gdGhlIGRpYWdv
bmFsICovCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xTX1NvbHZlRmlyc3RfRklYKAot
ICAgIGNvbnN0IG9wdXNfaW50MzIgICAgKkxfUTE2LCAgICAgLyogSSAgICBQb2ludGVyIHRvIExv
d2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9w
dXNfaW50ICAgICAgICAgICAgTSwgICAgICAgICAgLyogSSAgICBEaW0gb2YgTWF0cml4IGVxdWF0
aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgKmIsICAgICAgICAgLyogSSAgICBiIFZlY3RvciAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAg
ICAgICAgKnhfUTE2ICAgICAgLyogTyAgICB4IFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsKLQotLyogU29sdmUgTF50KnggPSBi
LCB3aGVyZSBMIGlzIGxvd2VyIHRyaWFuZ3VsYXIgd2l0aCBvbmVzIG9uIHRoZSBkaWFnb25hbCAq
Lwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19MU19Tb2x2ZUxhc3RfRklYKAotICAgIGNv
bnN0IG9wdXNfaW50MzIgICAgKkxfUTE2LCAgICAgLyogSSAgICBQb2ludGVyIHRvIExvd2VyIFRy
aWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgTSwgICAgICAgICAgLyogSSAgICBEaW0gb2YgTWF0cml4IGVxdWF0aW9uICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50
MzIgICAgKmIsICAgICAgICAgLyogSSAgICBiIFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAg
KnhfUTE2ICAgICAgLyogTyAgICB4IFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsKLQotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19MU19kaXZpZGVfUTE2X0ZJWCgKLSAgICBvcHVzX2ludDMyICAgICAgICAgIFRbXSwgICAg
ICAgIC8qIEkvTyAgTnVtZW5hdG9yIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICBpbnZfRF90ICAgICAgICAgICAgICppbnZfRCwgICAgIC8q
IEkgICAgMSAvIEQgdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgIE0gICAgICAgICAgIC8qIEkgICAg
ZGltZW5zaW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSk7Ci0KLS8qIFNvbHZlcyBBeCA9IGIsIGFzc3VtaW5nIEEgaXMgc3ltbWV0cmljICov
Ci12b2lkIHNpbGtfc29sdmVfTERMX0ZJWCgKLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAg
ICAgICAgICpBLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFBv
aW50ZXIgdG8gc3ltZXRyaWMgc3F1YXJlIG1hdHJpeCBBICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAg
TSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU2l6ZSBvZiBt
YXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAqYiwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQb2ludGVyIHRvIGIgdmVj
dG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgICp4X1ExNiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFBvaW50ZXIgdG8geCBzb2x1dGlvbiB2
ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
KQotewotICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIExfUTE2ICk7Ci0gICAgb3B1c19pbnQzMiBZ
WyAgICAgIE1BWF9NQVRSSVhfU0laRSBdOwotICAgIGludl9EX3QgICBpbnZfRFsgIE1BWF9NQVRS
SVhfU0laRSBdOwotICAgIFNBVkVfU1RBQ0s7Ci0KLSAgICBzaWxrX2Fzc2VydCggTSA8PSBNQVhf
TUFUUklYX1NJWkUgKTsKLSAgICBBTExPQyggTF9RMTYsIE0gKiBNLCBvcHVzX2ludDMyICk7Ci0K
LSAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
Ci0gICAgRmFjdG9yaXplIEEgYnkgTERMIHN1Y2ggdGhhdCBBID0gTCpEKkwnLAotICAgIHdoZXJl
IEwgaXMgbG93ZXIgdHJpYW5ndWxhciB3aXRoIG9uZXMgb24gZGlhZ29uYWwKLSAgICAqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgIHNpbGtf
TERMX2ZhY3Rvcml6ZV9GSVgoIEEsIE0sIExfUTE2LCBpbnZfRCApOwotCi0gICAgLyoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAgICAqIHN1YnN0
aXR1dGUgRCpMJyp4ID0gWS4gaWU6Ci0gICAgTCpEKkwnKnggPSBiID0+IEwqWSA9IGIgPD0+IFkg
PSBpbnYoTCkqYgotICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KLSAgICBzaWxrX0xTX1NvbHZlRmlyc3RfRklYKCBMX1ExNiwgTSwgYiwg
WSApOwotCi0gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioKLSAgICBEKkwnKnggPSBZIDw9PiBMJyp4ID0gaW52KEQpKlksIGJlY2F1c2UgRCBp
cwotICAgIGRpYWdvbmFsIGp1c3QgbXVsdGlwbHkgd2l0aCAxL2RfaQotICAgICoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgc2lsa19MU19k
aXZpZGVfUTE2X0ZJWCggWSwgaW52X0QsIE0gKTsKLQotICAgIC8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gICAgeCA9IGludihMJykgKiBpbnYo
RCkgKiBZCi0gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKiovCi0gICAgc2lsa19MU19Tb2x2ZUxhc3RfRklYKCBMX1ExNiwgTSwgWSwgeF9RMTYg
KTsKLSAgICBSRVNUT1JFX1NUQUNLOwotfQotCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxr
X0xETF9mYWN0b3JpemVfRklYKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgKkEsICAgICAgICAg
LyogSS9PIFBvaW50ZXIgdG8gU3ltZXRyaWMgU3F1YXJlIE1hdHJpeCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgTSwgICAgICAgICAgLyogSSAg
IFNpemUgb2YgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgKkxfUTE2LCAgICAgLyogSS9PIFBvaW50
ZXIgdG8gU3F1YXJlIFVwcGVyIHRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAq
LwotICAgIGludl9EX3QgICAgICAgICAgICAgKmludl9EICAgICAgLyogSS9PIFBvaW50ZXIgdG8g
dmVjdG9yIGhvbGRpbmcgaW52ZXJ0ZWQgZGlhZ29uYWwgZWxlbWVudHMgb2YgRCAgICAqLwotKQot
ewotICAgIG9wdXNfaW50ICAgaSwgaiwgaywgc3RhdHVzLCBsb29wX2NvdW50OwotICAgIGNvbnN0
IG9wdXNfaW50MzIgKnB0cjEsICpwdHIyOwotICAgIG9wdXNfaW50MzIgZGlhZ19taW5fdmFsdWUs
IHRtcF8zMiwgZXJyOwotICAgIG9wdXNfaW50MzIgdl9RMFsgTUFYX01BVFJJWF9TSVpFIF0sIERf
UTBbIE1BWF9NQVRSSVhfU0laRSBdOwotICAgIG9wdXNfaW50MzIgb25lX2Rpdl9kaWFnX1EzNiwg
b25lX2Rpdl9kaWFnX1E0MCwgb25lX2Rpdl9kaWFnX1E0ODsKLQotICAgIHNpbGtfYXNzZXJ0KCBN
IDw9IE1BWF9NQVRSSVhfU0laRSApOwotCi0gICAgc3RhdHVzID0gMTsKLSAgICBkaWFnX21pbl92
YWx1ZSA9IHNpbGtfbWF4XzMyKCBzaWxrX1NNTVVMKCBzaWxrX0FERF9TQVQzMiggQVsgMCBdLCBB
WyBzaWxrX1NNVUxCQiggTSwgTSApIC0gMSBdICksIFNJTEtfRklYX0NPTlNUKCBGSU5EX0xUUF9D
T05EX0ZBQywgMzEgKSApLCAxIDw8IDkgKTsKLSAgICBmb3IoIGxvb3BfY291bnQgPSAwOyBsb29w
X2NvdW50IDwgTSAmJiBzdGF0dXMgPT0gMTsgbG9vcF9jb3VudCsrICkgewotICAgICAgICBzdGF0
dXMgPSAwOwotICAgICAgICBmb3IoIGogPSAwOyBqIDwgTTsgaisrICkgewotICAgICAgICAgICAg
cHRyMSA9IG1hdHJpeF9hZHIoIExfUTE2LCBqLCAwLCBNICk7Ci0gICAgICAgICAgICB0bXBfMzIg
PSAwOwotICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IGo7IGkrKyApIHsKLSAgICAgICAgICAg
ICAgICB2X1EwWyBpIF0gPSBzaWxrX1NNVUxXVyggICAgICAgICBEX1EwWyBpIF0sIHB0cjFbIGkg
XSApOyAvKiBRMCAqLwotICAgICAgICAgICAgICAgIHRtcF8zMiAgICA9IHNpbGtfU01MQVdXKCB0
bXBfMzIsIHZfUTBbIGkgXSwgcHRyMVsgaSBdICk7IC8qIFEwICovCi0gICAgICAgICAgICB9Ci0g
ICAgICAgICAgICB0bXBfMzIgPSBzaWxrX1NVQjMyKCBtYXRyaXhfcHRyKCBBLCBqLCBqLCBNICks
IHRtcF8zMiApOwotCi0gICAgICAgICAgICBpZiggdG1wXzMyIDwgZGlhZ19taW5fdmFsdWUgKSB7
Ci0gICAgICAgICAgICAgICAgdG1wXzMyID0gc2lsa19TVUIzMiggc2lsa19TTVVMQkIoIGxvb3Bf
Y291bnQgKyAxLCBkaWFnX21pbl92YWx1ZSApLCB0bXBfMzIgKTsKLSAgICAgICAgICAgICAgICAv
KiBNYXRyaXggbm90IHBvc2l0aXZlIHNlbWktZGVmaW5pdGUsIG9yIGlsbCBjb25kaXRpb25lZCAq
LwotICAgICAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBNOyBpKysgKSB7Ci0gICAgICAgICAg
ICAgICAgICAgIG1hdHJpeF9wdHIoIEEsIGksIGksIE0gKSA9IHNpbGtfQUREMzIoIG1hdHJpeF9w
dHIoIEEsIGksIGksIE0gKSwgdG1wXzMyICk7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAg
ICAgICAgIHN0YXR1cyA9IDE7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgICAgICBEX1EwWyBqIF0gPSB0bXBfMzI7ICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIGFsd2F5cyA8IG1heChDb3JyZWxhdGlvbikgKi8KLQotICAgICAgICAgICAgLyogdHdvLXN0
ZXAgZGl2aXNpb24gKi8KLSAgICAgICAgICAgIG9uZV9kaXZfZGlhZ19RMzYgPSBzaWxrX0lOVkVS
U0UzMl92YXJRKCB0bXBfMzIsIDM2ICk7ICAgICAgICAgICAgICAgICAgICAvKiBRMzYgKi8KLSAg
ICAgICAgICAgIG9uZV9kaXZfZGlhZ19RNDAgPSBzaWxrX0xTSElGVCggb25lX2Rpdl9kaWFnX1Ez
NiwgNCApOyAgICAgICAgICAgICAgICAgICAvKiBRNDAgKi8KLSAgICAgICAgICAgIGVyciA9IHNp
bGtfU1VCMzIoIChvcHVzX2ludDMyKTEgPDwgMjQsIHNpbGtfU01VTFdXKCB0bXBfMzIsIG9uZV9k
aXZfZGlhZ19RNDAgKSApOyAgICAgLyogUTI0ICovCi0gICAgICAgICAgICBvbmVfZGl2X2RpYWdf
UTQ4ID0gc2lsa19TTVVMV1coIGVyciwgb25lX2Rpdl9kaWFnX1E0MCApOyAgICAgICAgICAgICAg
ICAgLyogUTQ4ICovCi0KLSAgICAgICAgICAgIC8qIFNhdmUgMS9EcyAqLwotICAgICAgICAgICAg
aW52X0RbIGogXS5RMzZfcGFydCA9IG9uZV9kaXZfZGlhZ19RMzY7Ci0gICAgICAgICAgICBpbnZf
RFsgaiBdLlE0OF9wYXJ0ID0gb25lX2Rpdl9kaWFnX1E0ODsKLQotICAgICAgICAgICAgbWF0cml4
X3B0ciggTF9RMTYsIGosIGosIE0gKSA9IDY1NTM2OyAvKiAxLjAgaW4gUTE2ICovCi0gICAgICAg
ICAgICBwdHIxID0gbWF0cml4X2FkciggQSwgaiwgMCwgTSApOwotICAgICAgICAgICAgcHRyMiA9
IG1hdHJpeF9hZHIoIExfUTE2LCBqICsgMSwgMCwgTSApOwotICAgICAgICAgICAgZm9yKCBpID0g
aiArIDE7IGkgPCBNOyBpKysgKSB7Ci0gICAgICAgICAgICAgICAgdG1wXzMyID0gMDsKLSAgICAg
ICAgICAgICAgICBmb3IoIGsgPSAwOyBrIDwgajsgaysrICkgewotICAgICAgICAgICAgICAgICAg
ICB0bXBfMzIgPSBzaWxrX1NNTEFXVyggdG1wXzMyLCB2X1EwWyBrIF0sIHB0cjJbIGsgXSApOyAv
KiBRMCAqLwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB0bXBfMzIgPSBzaWxr
X1NVQjMyKCBwdHIxWyBpIF0sIHRtcF8zMiApOyAvKiBhbHdheXMgPCBtYXgoQ29ycmVsYXRpb24p
ICovCi0KLSAgICAgICAgICAgICAgICAvKiB0bXBfMzIgLyBEX1EwW2pdIDogRGl2aWRlIHRvIFEx
NiAqLwotICAgICAgICAgICAgICAgIG1hdHJpeF9wdHIoIExfUTE2LCBpLCBqLCBNICkgPSBzaWxr
X0FERDMyKCBzaWxrX1NNTVVMKCB0bXBfMzIsIG9uZV9kaXZfZGlhZ19RNDggKSwKLSAgICAgICAg
ICAgICAgICAgICAgc2lsa19SU0hJRlQoIHNpbGtfU01VTFdXKCB0bXBfMzIsIG9uZV9kaXZfZGlh
Z19RMzYgKSwgNCApICk7Ci0KLSAgICAgICAgICAgICAgICAvKiBnbyB0byBuZXh0IGNvbHVtbiAq
LwotICAgICAgICAgICAgICAgIHB0cjIgKz0gTTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQot
ICAgIH0KLQotICAgIHNpbGtfYXNzZXJ0KCBzdGF0dXMgPT0gMCApOwotfQotCi1zdGF0aWMgT1BV
U19JTkxJTkUgdm9pZCBzaWxrX0xTX2RpdmlkZV9RMTZfRklYKAotICAgIG9wdXNfaW50MzIgICAg
ICAgICAgVFtdLCAgICAgICAgLyogSS9PICBOdW1lbmF0b3IgdmVjdG9yICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGludl9EX3QgICAgICAgICAgICAg
Kmludl9ELCAgICAgLyogSSAgICAxIC8gRCB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgTSAgICAg
ICAgICAgLyogSSAgICBkaW1lbnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50ICAgaTsKLSAgICBvcHVzX2lu
dDMyIHRtcF8zMjsKLSAgICBvcHVzX2ludDMyIG9uZV9kaXZfZGlhZ19RMzYsIG9uZV9kaXZfZGlh
Z19RNDg7Ci0KLSAgICBmb3IoIGkgPSAwOyBpIDwgTTsgaSsrICkgewotICAgICAgICBvbmVfZGl2
X2RpYWdfUTM2ID0gaW52X0RbIGkgXS5RMzZfcGFydDsKLSAgICAgICAgb25lX2Rpdl9kaWFnX1E0
OCA9IGludl9EWyBpIF0uUTQ4X3BhcnQ7Ci0KLSAgICAgICAgdG1wXzMyID0gVFsgaSBdOwotICAg
ICAgICBUWyBpIF0gPSBzaWxrX0FERDMyKCBzaWxrX1NNTVVMKCB0bXBfMzIsIG9uZV9kaXZfZGlh
Z19RNDggKSwgc2lsa19SU0hJRlQoIHNpbGtfU01VTFdXKCB0bXBfMzIsIG9uZV9kaXZfZGlhZ19R
MzYgKSwgNCApICk7Ci0gICAgfQotfQotCi0vKiBTb2x2ZSBMeCA9IGIsIHdoZW4gTCBpcyBsb3dl
ciB0cmlhbmd1bGFyIGFuZCBoYXMgb25lcyBvbiB0aGUgZGlhZ29uYWwgKi8KLXN0YXRpYyBPUFVT
X0lOTElORSB2b2lkIHNpbGtfTFNfU29sdmVGaXJzdF9GSVgoCi0gICAgY29uc3Qgb3B1c19pbnQz
MiAgICAqTF9RMTYsICAgICAvKiBJICAgIFBvaW50ZXIgdG8gTG93ZXIgVHJpYW5ndWxhciBNYXRy
aXggICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBN
LCAgICAgICAgICAvKiBJICAgIERpbSBvZiBNYXRyaXggZXF1YXRpb24gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAqYiwgICAg
ICAgICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAqeF9RMTYgICAgICAv
KiBPICAgIHggVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgaSwgajsKLSAgICBjb25zdCBvcHVzX2lu
dDMyICpwdHIzMjsKLSAgICBvcHVzX2ludDMyIHRtcF8zMjsKLQotICAgIGZvciggaSA9IDA7IGkg
PCBNOyBpKysgKSB7Ci0gICAgICAgIHB0cjMyID0gbWF0cml4X2FkciggTF9RMTYsIGksIDAsIE0g
KTsKLSAgICAgICAgdG1wXzMyID0gMDsKLSAgICAgICAgZm9yKCBqID0gMDsgaiA8IGk7IGorKyAp
IHsKLSAgICAgICAgICAgIHRtcF8zMiA9IHNpbGtfU01MQVdXKCB0bXBfMzIsIHB0cjMyWyBqIF0s
IHhfUTE2WyBqIF0gKTsKLSAgICAgICAgfQotICAgICAgICB4X1ExNlsgaSBdID0gc2lsa19TVUIz
MiggYlsgaSBdLCB0bXBfMzIgKTsKLSAgICB9Ci19Ci0KLS8qIFNvbHZlIExedCp4ID0gYiwgd2hl
cmUgTCBpcyBsb3dlciB0cmlhbmd1bGFyIHdpdGggb25lcyBvbiB0aGUgZGlhZ29uYWwgKi8KLXN0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTFNfU29sdmVMYXN0X0ZJWCgKLSAgICBjb25zdCBv
cHVzX2ludDMyICAgICpMX1ExNiwgICAgIC8qIEkgICAgUG9pbnRlciB0byBMb3dlciBUcmlhbmd1
bGFyIE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2lu
dCAgICAgIE0sICAgICAgICAgIC8qIEkgICAgRGltIG9mIE1hdHJpeCBlcXVhdGlvbiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAg
ICpiLCAgICAgICAgIC8qIEkgICAgYiBWZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICp4X1Ex
NiAgICAgIC8qIE8gICAgeCBWZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSkKLXsKLSAgICBvcHVzX2ludCBpLCBqOwotICAgIGNvbnN0
IG9wdXNfaW50MzIgKnB0cjMyOwotICAgIG9wdXNfaW50MzIgdG1wXzMyOwotCi0gICAgZm9yKCBp
ID0gTSAtIDE7IGkgPj0gMDsgaS0tICkgewotICAgICAgICBwdHIzMiA9IG1hdHJpeF9hZHIoIExf
UTE2LCAwLCBpLCBNICk7Ci0gICAgICAgIHRtcF8zMiA9IDA7Ci0gICAgICAgIGZvciggaiA9IE0g
LSAxOyBqID4gaTsgai0tICkgewotICAgICAgICAgICAgdG1wXzMyID0gc2lsa19TTUxBV1coIHRt
cF8zMiwgcHRyMzJbIHNpbGtfU01VTEJCKCBqLCBNICkgXSwgeF9RMTZbIGogXSApOwotICAgICAg
ICB9Ci0gICAgICAgIHhfUTE2WyBpIF0gPSBzaWxrX1NVQjMyKCBiWyBpIF0sIHRtcF8zMiApOwot
ICAgIH0KLX0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zdHJ1Y3RzX0ZJWC5oIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVk
L3N0cnVjdHNfRklYLmgKaW5kZXggMzI5NGIyNTEyODFlZDgyNjVkNDIzYzU0ZTBkMDIyNzNmN2Y5
OTQ1Mi4uMjc3NGE5N2IyNGZlNjc3YjdkMTgyYTlhMTIwMjhhN2MxZDg3ZmE4OSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2ZpeGVkL3N0cnVjdHNfRklYLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3N0cnVjdHNfRklYLmgK
QEAgLTQ3LDMxICs0NywxNyBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1c19pbnQzMiAgICAg
ICAgICAgICAgICAgIFRpbHRfc210aF9RMTY7CiB9IHNpbGtfc2hhcGVfc3RhdGVfRklYOwogCi0v
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0vKiBQcmVmaWx0ZXIgc3RhdGUgICAg
ICAgICAgICAgICovCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi10eXBlZGVm
IHN0cnVjdCB7Ci0gICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgIHNMVFBfc2hwWyBMVFBf
QlVGX0xFTkdUSCBdOwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBzQVJfc2hwWyBN
QVhfU0hBUEVfTFBDX09SREVSICsgMSBdOwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
ICBzTFRQX3NocF9idWZfaWR4OwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBzTEZf
QVJfc2hwX1ExMjsKLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgc0xGX01BX3NocF9R
MTI7Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHNIYXJtSFBfUTI7Ci0gICAgb3B1
c19pbnQzMiAgICAgICAgICAgICAgICAgIHJhbmRfc2VlZDsKLSAgICBvcHVzX2ludCAgICAgICAg
ICAgICAgICAgICAgbGFnUHJldjsKLX0gc2lsa19wcmVmaWx0ZXJfc3RhdGVfRklYOwotCiAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAvKiBFbmNvZGVyIHN0YXRlIEZJWCAgICAg
ICAgICAgICovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiB0eXBlZGVmIHN0
cnVjdCB7CiAgICAgc2lsa19lbmNvZGVyX3N0YXRlICAgICAgICAgIHNDbW47ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBDb21tb24gc3RydWN0LCBzaGFyZWQgd2l0aCBmbG9h
dGluZy1wb2ludCBjb2RlICAgICAgICovCiAgICAgc2lsa19zaGFwZV9zdGF0ZV9GSVggICAgICAg
IHNTaGFwZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTaGFwZSBzdGF0ZSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19wcmVm
aWx0ZXJfc3RhdGVfRklYICAgIHNQcmVmaWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBQcmVmaWx0ZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiAKICAgICAvKiBCdWZmZXIgZm9yIGZpbmQgcGl0Y2ggYW5kIG5vaXNlIHNoYXBlIGFuYWx5
c2lzICovCiAgICAgc2lsa19EV09SRF9BTElHTiBvcHVzX2ludDE2IHhfYnVmWyAyICogTUFYX0ZS
QU1FX0xFTkdUSCArIExBX1NIQVBFX01BWCBdOy8qIEJ1ZmZlciBmb3IgZmluZCBwaXRjaCBhbmQg
bm9pc2Ugc2hhcGUgYW5hbHlzaXMgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAg
IExUUENvcnJfUTE1OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBOb3JtYWxpemVkIGNv
cnJlbGF0aW9uIGZyb20gcGl0Y2ggbGFnIGVzdGltYXRvciAgICAgICovCisgICAgb3B1c19pbnQz
MiAgICAgICAgICAgICAgICAgICAgcmVzTnJnU210aDsKIH0gc2lsa19lbmNvZGVyX3N0YXRlX0ZJ
WDsKIAogLyoqKioqKioqKioqKioqKioqKioqKioqKi8KQEAgLTg3LDExICs3Myw4IEBAIHR5cGVk
ZWYgc3RydWN0IHsKIAogICAgIC8qIE5vaXNlIHNoYXBpbmcgcGFyYW1ldGVycyAqLwogICAgIC8q
IFRlc3RpbmcgKi8KLSAgICBzaWxrX0RXT1JEX0FMSUdOIG9wdXNfaW50MTYgQVIxX1ExM1sgTUFY
X05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwotICAgIHNpbGtfRFdPUkRfQUxJR04g
b3B1c19pbnQxNiBBUjJfUTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07
CisgICAgc2lsa19EV09SRF9BTElHTiBvcHVzX2ludDE2IEFSX1ExM1sgTUFYX05CX1NVQkZSICog
TUFYX1NIQVBFX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBM
Rl9zaHBfUTE0WyAgICAgICAgTUFYX05CX1NVQkZSIF07ICAgICAgLyogUGFja3MgdHdvIGludDE2
IGNvZWZmaWNpZW50cyBwZXIgaW50MzIgdmFsdWUgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgICBHYWluc1ByZV9RMTRbICAgICAgTUFYX05CX1NVQkZSIF07Ci0gICAg
b3B1c19pbnQgICAgICAgICAgICAgICAgICAgIEhhcm1Cb29zdF9RMTRbICAgICBNQVhfTkJfU1VC
RlIgXTsKICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgVGlsdF9RMTRbICAgICAgICAg
IE1BWF9OQl9TVUJGUiBdOwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBIYXJtU2hh
cGVHYWluX1ExNFsgTUFYX05CX1NVQkZSIF07CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICAgIExhbWJkYV9RMTA7CkBAIC05OSw3ICs4Miw2IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBv
cHVzX2ludCAgICAgICAgICAgICAgICAgICAgY29kaW5nX3F1YWxpdHlfUTE0OwogCiAgICAgLyog
bWVhc3VyZXMgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgc3BhcnNlbmVzc19R
ODsKICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgcHJlZEdhaW5fUTE2OwogICAgIG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgICBMVFByZWRDb2RHYWluX1E3OwogICAgIG9wdXNfaW50
MzIgICAgICAgICAgICAgICAgICBSZXNOcmdbIE1BWF9OQl9TVUJGUiBdOyAgICAgICAgICAgICAg
ICAgLyogUmVzaWR1YWwgZW5lcmd5IHBlciBzdWJmcmFtZSAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYLmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZml4ZWQvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYwppbmRleCA2Y2E2YzExODRk
ODY1ZjdmYmJjMTViY2M2Y2JiMzI5YjI2Yjg2YTAyLi45OTRjMjk5YWJkMTI0MGNkYjM3NTk3ZTNh
OGFjYTgyMDdlODlhOTc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvd2FycGVkX2F1dG9jb3JyZWxh
dGlvbl9GSVguYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYwpA
QCAtMzEsMTcgKzMxLDEzIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCiAjaW5jbHVk
ZSAibWFpbl9GSVguaCIKIAotI2RlZmluZSBRQyAgMTAKLSNkZWZpbmUgUVMgIDE0Ci0KICNpZiBk
ZWZpbmVkKE1JUFNyMV9BU00pCiAjaW5jbHVkZSAibWlwcy93YXJwZWRfYXV0b2NvcnJlbGF0aW9u
X0ZJWF9taXBzcjEuaCIKICNlbmRpZgogCiAKLSNpZm5kZWYgT1ZFUlJJREVfc2lsa193YXJwZWRf
YXV0b2NvcnJlbGF0aW9uX0ZJWAogLyogQXV0b2NvcnJlbGF0aW9ucyBmb3IgYSB3YXJwZWQgZnJl
cXVlbmN5IGF4aXMgKi8KLXZvaWQgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCgKK3Zv
aWQgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9jKAogICAgICAgICAgIG9wdXNfaW50
MzIgICAgICAgICAgICAgICAgKmNvcnIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIE8gICAgUmVzdWx0IFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICAqc2NhbGUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAg
ICBTY2FsaW5nIG9mIHRoZSBjb3JyZWxhdGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAg
ICAgICppbnB1dCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0
IGRhdGEgdG8gY29ycmVsYXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwpAQCAtOTIsNCArODgsMyBAQCB2b2lkIHNpbGtfd2FycGVkX2F1dG9j
b3JyZWxhdGlvbl9GSVgoCiAgICAgfQogICAgIHNpbGtfYXNzZXJ0KCBjb3JyX1FDWyAwIF0gPj0g
MCApOyAvKiBJZiBicmVha2luZywgZGVjcmVhc2UgUUMqLwogfQotI2VuZGlmIC8qIE9WRVJSSURF
X3NpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhl
ZC94ODYvcHJlZmlsdGVyX0ZJWF9zc2UuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC94ODYvcHJlZmlsdGVyX0ZJWF9z
c2UuYwppbmRleCA0ODhhNjAzZjVkZDAxOTliNzEyZmU0MTYwMWVkZjNhMzhiMDBhZTEwLi5kOGM5
YzJmNTVmMDY2NDUwODI5MzA5ODAyYjgxNTkzYmY1NThhNGVkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4
ZWQveDg2L3ByZWZpbHRlcl9GSVhfc3NlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3g4Ni9wcmVmaWx0ZXJf
RklYX3NzZS5jCkBAIC0xMDcsOCArMTA3LDggQEAgdm9pZCBzaWxrX3dhcnBlZF9MUENfYW5hbHlz
aXNfZmlsdGVyX0ZJWF9zc2U0XzEoCiAgICAgICAgICAgICAgICAgeG1tX3RlbXBiID0gX21tX2Fk
ZF9lcGkzMiggeG1tX3RlbXBiLCB4bW1fcHJvZHVjdDIgKTsKICAgICAgICAgICAgICAgICB4bW1f
dGVtcGEgPSBfbW1fYWRkX2VwaTMyKCB4bW1fdGVtcGEsIHhtbV90ZW1wYiApOwogCi0gICAgICAg
ICAgICAgICAgc3VtICA9IChjb2VmX1ExM184ICogc3RhdGVfOCkgPj4gMTY7Ci0gICAgICAgICAg
ICAgICAgc3VtICs9IChjb2VmX1ExM185ICogc3RhdGVfOSkgPj4gMTY7CisgICAgICAgICAgICAg
ICAgc3VtICA9IChvcHVzX2ludDMyKSgoY29lZl9RMTNfOCAqIHN0YXRlXzgpID4+IDE2KTsKKyAg
ICAgICAgICAgICAgICBzdW0gKz0gKG9wdXNfaW50MzIpKChjb2VmX1ExM185ICogc3RhdGVfOSkg
Pj4gMTYpOwogCiAgICAgICAgICAgICAgICAgeG1tX3RlbXBhID0gX21tX2FkZF9lcGkzMiggeG1t
X3RlbXBhLCBfbW1fc2h1ZmZsZV9lcGkzMiggeG1tX3RlbXBhLCBfTU1fU0hVRkZMRSggMCwgMCwg
MCwgMiApICkgKTsKICAgICAgICAgICAgICAgICBzdW0gKz0gX21tX2N2dHNpMTI4X3NpMzIoIHht
bV90ZW1wYSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvTFBDX2ludl9wcmVkX2dhaW5fRkxQLmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZmxvYXQvTFBDX2ludl9wcmVkX2dhaW5fRkxQLmMKaW5kZXggMjUxNzhiYWNkZGU0NjEw
YmUwOWEzMWI1OWZmZjc5YjM1ZjcxZTAzMy4uMmJlMjEyMmQ2MTQwOGFmZmZiMWRiZmQ4Y2QwNjcy
M2ZiMjgyMjliOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L0xQQ19pbnZfcHJlZF9nYWluX0ZMUC5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9mbG9hdC9MUENfaW52X3ByZWRfZ2Fpbl9GTFAuYwpAQCAtMzEsOCArMzEsNyBA
QCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAogI2luY2x1ZGUgIlNpZ1Byb2NfRklYLmgi
CiAjaW5jbHVkZSAiU2lnUHJvY19GTFAuaCIKLQotI2RlZmluZSBSQ19USFJFU0hPTEQgICAgICAg
IDAuOTk5OWYKKyNpbmNsdWRlICJkZWZpbmUuaCIKIAogLyogY29tcHV0ZSBpbnZlcnNlIG9mIExQ
QyBwcmVkaWN0aW9uIGdhaW4sIGFuZCAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KIC8qIHRl
c3QgaWYgTFBDIGNvZWZmaWNpZW50cyBhcmUgc3RhYmxlIChhbGwgcG9sZXMgd2l0aGluIHVuaXQg
Y2lyY2xlKSAgICovCkBAIC00MywzNCArNDIsMzIgQEAgc2lsa19mbG9hdCBzaWxrX0xQQ19pbnZl
cnNlX3ByZWRfZ2Fpbl9GTFAoICAvKiBPICAgIHJldHVybiBpbnZlcnNlIHByZWRpY3Rpb24gZ2EK
ICkKIHsKICAgICBvcHVzX2ludCAgIGssIG47Ci0gICAgZG91YmxlICAgICBpbnZHYWluLCByYywg
cmNfbXVsdDEsIHJjX211bHQyOwotICAgIHNpbGtfZmxvYXQgQXRtcFsgMiBdWyBTSUxLX01BWF9P
UkRFUl9MUEMgXTsKLSAgICBzaWxrX2Zsb2F0ICpBb2xkLCAqQW5ldzsKKyAgICBkb3VibGUgICAg
IGludkdhaW4sIHJjLCByY19tdWx0MSwgcmNfbXVsdDIsIHRtcDEsIHRtcDI7CisgICAgc2lsa19m
bG9hdCBBdG1wWyBTSUxLX01BWF9PUkRFUl9MUEMgXTsKIAotICAgIEFuZXcgPSBBdG1wWyBvcmRl
ciAmIDEgXTsKLSAgICBzaWxrX21lbWNweSggQW5ldywgQSwgb3JkZXIgKiBzaXplb2Yoc2lsa19m
bG9hdCkgKTsKKyAgICBzaWxrX21lbWNweSggQXRtcCwgQSwgb3JkZXIgKiBzaXplb2Yoc2lsa19m
bG9hdCkgKTsKIAogICAgIGludkdhaW4gPSAxLjA7CiAgICAgZm9yKCBrID0gb3JkZXIgLSAxOyBr
ID4gMDsgay0tICkgewotICAgICAgICByYyA9IC1BbmV3WyBrIF07Ci0gICAgICAgIGlmKCByYyA+
IFJDX1RIUkVTSE9MRCB8fCByYyA8IC1SQ19USFJFU0hPTEQgKSB7CisgICAgICAgIHJjID0gLUF0
bXBbIGsgXTsKKyAgICAgICAgcmNfbXVsdDEgPSAxLjBmIC0gcmMgKiByYzsKKyAgICAgICAgaW52
R2FpbiAqPSByY19tdWx0MTsKKyAgICAgICAgaWYoIGludkdhaW4gKiBNQVhfUFJFRElDVElPTl9Q
T1dFUl9HQUlOIDwgMS4wZiApIHsKICAgICAgICAgICAgIHJldHVybiAwLjBmOwogICAgICAgICB9
Ci0gICAgICAgIHJjX211bHQxID0gMS4wZiAtIHJjICogcmM7CiAgICAgICAgIHJjX211bHQyID0g
MS4wZiAvIHJjX211bHQxOwotICAgICAgICBpbnZHYWluICo9IHJjX211bHQxOwotICAgICAgICAv
KiBzd2FwIHBvaW50ZXJzICovCi0gICAgICAgIEFvbGQgPSBBbmV3OwotICAgICAgICBBbmV3ID0g
QXRtcFsgayAmIDEgXTsKLSAgICAgICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyApIHsKLSAgICAg
ICAgICAgIEFuZXdbIG4gXSA9IChzaWxrX2Zsb2F0KSggKCBBb2xkWyBuIF0gLSBBb2xkWyBrIC0g
biAtIDEgXSAqIHJjICkgKiByY19tdWx0MiApOworICAgICAgICBmb3IoIG4gPSAwOyBuIDwgKGsg
KyAxKSA+PiAxOyBuKysgKSB7CisgICAgICAgICAgICB0bXAxID0gQXRtcFsgbiBdOworICAgICAg
ICAgICAgdG1wMiA9IEF0bXBbIGsgLSBuIC0gMSBdOworICAgICAgICAgICAgQXRtcFsgbiBdICAg
ICAgICAgPSAoc2lsa19mbG9hdCkoICggdG1wMSAtIHRtcDIgKiByYyApICogcmNfbXVsdDIgKTsK
KyAgICAgICAgICAgIEF0bXBbIGsgLSBuIC0gMSBdID0gKHNpbGtfZmxvYXQpKCAoIHRtcDIgLSB0
bXAxICogcmMgKSAqIHJjX211bHQyICk7CiAgICAgICAgIH0KICAgICB9Ci0gICAgcmMgPSAtQW5l
d1sgMCBdOwotICAgIGlmKCByYyA+IFJDX1RIUkVTSE9MRCB8fCByYyA8IC1SQ19USFJFU0hPTEQg
KSB7Ci0gICAgICAgIHJldHVybiAwLjBmOwotICAgIH0KKyAgICByYyA9IC1BdG1wWyAwIF07CiAg
ICAgcmNfbXVsdDEgPSAxLjBmIC0gcmMgKiByYzsKICAgICBpbnZHYWluICo9IHJjX211bHQxOwor
ICAgIGlmKCBpbnZHYWluICogTUFYX1BSRURJQ1RJT05fUE9XRVJfR0FJTiA8IDEuMGYgKSB7Cisg
ICAgICAgIHJldHVybiAwLjBmOworICAgIH0KICAgICByZXR1cm4gKHNpbGtfZmxvYXQpaW52R2Fp
bjsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9TaWdQcm9jX0ZMUC5oIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L1Np
Z1Byb2NfRkxQLmgKaW5kZXggZjBjYjM3MzNiZTZjNzg2NWE4ODMxYjY1MjdiMWIwMTZmZDBiNTY3
Mi4uOTUzZGU4YjA5ZTM3YmQ2OTI0ZDM2NTU0MTAyZTViOWFhNjVhNjZkZCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2Zsb2F0L1NpZ1Byb2NfRkxQLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L1NpZ1Byb2NfRkxQLmgKQEAg
LTY4LDEzICs2OCw2IEBAIHZvaWQgc2lsa19rMmFfRkxQKAogICAgIG9wdXNfaW50MzIgICAgICAg
ICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgICBwcmVkaWN0aW9uIG9yZGVyICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCi0vKiBTb2x2ZSB0aGUg
bm9ybWFsIGVxdWF0aW9ucyB1c2luZyB0aGUgTGV2aW5zb24tRHVyYmluIHJlY3Vyc2lvbiAqLwot
c2lsa19mbG9hdCBzaWxrX2xldmluc29uZHVyYmluX0ZMUCggICAgICAgICAvKiBPICAgIHByZWRp
Y3Rpb24gZXJyb3IgZW5lcmd5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICBBW10sICAgICAgICAgICAgICAgIC8qIE8gICAgcHJl
ZGljdGlvbiBjb2VmZmljaWVudHMgW29yZGVyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgIGNvcnJbXSwgICAgICAgICAgICAgLyogSSAgICBp
bnB1dCBhdXRvLWNvcnJlbGF0aW9ucyBbb3JkZXIgKyAxXSAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAg
IHByZWRpY3Rpb24gb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0pOwotCiAvKiBjb21wdXRlIGF1dG9jb3JyZWxhdGlvbiAqLwogdm9pZCBzaWxrX2F1
dG9jb3JyZWxhdGlvbl9GTFAoCiAgICAgc2lsa19mbG9hdCAgICAgICAgICAqcmVzdWx0cywgICAg
ICAgICAgIC8qIE8gICAgcmVzdWx0IChsZW5ndGggY29ycmVsYXRpb25Db3VudCkgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9lbmNvZGVfZnJhbWVf
RkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZmxvYXQvZW5jb2RlX2ZyYW1lX0ZMUC5jCmluZGV4IDIwOTJhNGQ5ZTI0ODI5
OTYzZTQ3OWJjMDNlY2Y3YWZhOGZkMTNhZDkuLjQ5OTU2YTJkNzUyYzY5MzhiMzAzMzE3OTJiYjUy
ZDcyNGE4OWVjZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9lbmNvZGVfZnJhbWVfRkxQLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2Zsb2F0L2VuY29kZV9mcmFtZV9GTFAuYwpAQCAtMjksNiArMjksNyBAQCBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KICNpbmNsdWRlICJjb25maWcuaCIKICNlbmRpZgogCisjaW5j
bHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSAibWFpbl9GTFAuaCIKICNpbmNsdWRlICJ0dW5pbmdf
cGFyYW1ldGVycy5oIgogCkBAIC00MSwyMSArNDIsMjggQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZv
aWQgc2lsa19MQlJSX2VuY29kZV9GTFAoCiApOwogCiB2b2lkIHNpbGtfZW5jb2RlX2RvX1ZBRF9G
TFAoCi0gICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZMUCAgICAgICAgICAqcHNFbmMgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJL08gIEVuY29kZXIgc3RhdGUgRkxQICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQICAgICAgICAgICpw
c0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0ZSBG
TFAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgICAgICAgYWN0aXZpdHkgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBE
ZWNpc2lvbiBvZiBPcHVzIHZvaWNlIGFjdGl2aXR5IGRldGVjdG9yICAgICovCiApCiB7CisgICAg
Y29uc3Qgb3B1c19pbnQgYWN0aXZpdHlfdGhyZXNob2xkID0gU0lMS19GSVhfQ09OU1QoIFNQRUVD
SF9BQ1RJVklUWV9EVFhfVEhSRVMsIDggKTsKKwogICAgIC8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwogICAgIC8qIFZvaWNlIEFjdGl2aXR5IERldGVjdGlvbiAqLwogICAgIC8qKioqKioq
KioqKioqKioqKioqKioqKioqKioqLwogICAgIHNpbGtfVkFEX0dldFNBX1E4KCAmcHNFbmMtPnND
bW4sIHBzRW5jLT5zQ21uLmlucHV0QnVmICsgMSwgcHNFbmMtPnNDbW4uYXJjaCApOworICAgIC8q
IElmIE9wdXMgVkFEIGlzIGluYWN0aXZlIGFuZCBTaWxrIFZBRCBpcyBhY3RpdmU6IGxvd2VyIFNp
bGsgVkFEIHRvIGp1c3QgdW5kZXIgdGhlIHRocmVzaG9sZCAqLworICAgIGlmKCBhY3Rpdml0eSA9
PSBWQURfTk9fQUNUSVZJVFkgJiYgcHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5X1E4ID49IGFj
dGl2aXR5X3RocmVzaG9sZCApIHsKKyAgICAgICAgcHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5
X1E4ID0gYWN0aXZpdHlfdGhyZXNob2xkIC0gMTsKKyAgICB9CiAKICAgICAvKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgLyogQ29udmVydCBz
cGVlY2ggYWN0aXZpdHkgaW50byBWQUQgYW5kIERUWCBmbGFncyAqLwogICAgIC8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICBpZiggcHNFbmMt
PnNDbW4uc3BlZWNoX2FjdGl2aXR5X1E4IDwgU0lMS19GSVhfQ09OU1QoIFNQRUVDSF9BQ1RJVklU
WV9EVFhfVEhSRVMsIDggKSApIHsKKyAgICBpZiggcHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5
X1E4IDwgYWN0aXZpdHlfdGhyZXNob2xkICkgewogICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2Vz
LnNpZ25hbFR5cGUgPSBUWVBFX05PX1ZPSUNFX0FDVElWSVRZOwogICAgICAgICBwc0VuYy0+c0Nt
bi5ub1NwZWVjaENvdW50ZXIrKzsKLSAgICAgICAgaWYoIHBzRW5jLT5zQ21uLm5vU3BlZWNoQ291
bnRlciA8IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCApIHsKKyAgICAgICAgaWYoIHBzRW5j
LT5zQ21uLm5vU3BlZWNoQ291bnRlciA8PSBOQl9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFggKSB7
CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5pbkRUWCA9IDA7CiAgICAgICAgIH0gZWxzZSBpZigg
cHNFbmMtPnNDbW4ubm9TcGVlY2hDb3VudGVyID4gTUFYX0NPTlNFQ1VUSVZFX0RUWCArIE5CX1NQ
RUVDSF9GUkFNRVNfQkVGT1JFX0RUWCApIHsKICAgICAgICAgICAgIHBzRW5jLT5zQ21uLm5vU3Bl
ZWNoQ291bnRlciA9IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWDsKQEAgLTg1LDcgKzkzLDYg
QEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRkxQKAogICAgIHNpbGtfZW5jb2Rlcl9jb250
cm9sX0ZMUCBzRW5jQ3RybDsKICAgICBvcHVzX2ludCAgICAgaSwgaXRlciwgbWF4SXRlciwgZm91
bmRfdXBwZXIsIGZvdW5kX2xvd2VyLCByZXQgPSAwOwogICAgIHNpbGtfZmxvYXQgICAqeF9mcmFt
ZSwgKnJlc19waXRjaF9mcmFtZTsKLSAgICBzaWxrX2Zsb2F0ICAgeGZ3WyBNQVhfRlJBTUVfTEVO
R1RIIF07CiAgICAgc2lsa19mbG9hdCAgIHJlc19waXRjaFsgMiAqIE1BWF9GUkFNRV9MRU5HVEgg
KyBMQV9QSVRDSF9NQVggXTsKICAgICBlY19lbmMgICAgICAgc1JhbmdlRW5jX2NvcHksIHNSYW5n
ZUVuY19jb3B5MjsKICAgICBzaWxrX25zcV9zdGF0ZSBzTlNRX2NvcHksIHNOU1FfY29weTI7CkBA
IC05Nyw2ICsxMDQsOSBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GTFAoCiAgICAgb3B1
c19pbnQ4ICAgIExhc3RHYWluSW5kZXhfY29weTI7CiAgICAgb3B1c19pbnQzMiAgIHBHYWluc19R
MTZbIE1BWF9OQl9TVUJGUiBdOwogICAgIG9wdXNfdWludDggICBlY19idWZfY29weVsgMTI3NSBd
OworICAgIG9wdXNfaW50ICAgICBnYWluX2xvY2tbIE1BWF9OQl9TVUJGUiBdID0gezB9OworICAg
IG9wdXNfaW50MTYgICBiZXN0X2dhaW5fbXVsdFsgTUFYX05CX1NVQkZSIF07CisgICAgb3B1c19p
bnQgICAgIGJlc3Rfc3VtWyBNQVhfTkJfU1VCRlIgXTsKIAogICAgIC8qIFRoaXMgaXMgdG90YWxs
eSB1bm5lY2Vzc2FyeSBidXQgbWFueSBjb21waWxlcnMgKGluY2x1ZGluZyBnY2MpIGFyZSB0b28g
ZHVtYiB0byByZWFsaXNlIGl0ICovCiAgICAgTGFzdEdhaW5JbmRleF9jb3B5MiA9IG5CaXRzX2xv
d2VyID0gbkJpdHNfdXBwZXIgPSBnYWluTXVsdF9sb3dlciA9IGdhaW5NdWx0X3VwcGVyID0gMDsK
QEAgLTEzOSwyMiArMTQ5LDE3IEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZMUCgKICAg
ICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
Ki8KICAgICAgICAgLyogRmluZCBsaW5lYXIgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgKExQQyAr
IExUUCkgKi8KICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KLSAgICAgICAgc2lsa19maW5kX3ByZWRfY29lZnNfRkxQKCBwc0VuYywg
JnNFbmNDdHJsLCByZXNfcGl0Y2gsIHhfZnJhbWUsIGNvbmRDb2RpbmcgKTsKKyAgICAgICAgc2ls
a19maW5kX3ByZWRfY29lZnNfRkxQKCBwc0VuYywgJnNFbmNDdHJsLCByZXNfcGl0Y2hfZnJhbWUs
IHhfZnJhbWUsIGNvbmRDb2RpbmcgKTsKIAogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogUHJvY2VzcyBnYWlucyAgICAgICAgICAg
ICAgICAgICAgICAgICovCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqLwogICAgICAgICBzaWxrX3Byb2Nlc3NfZ2FpbnNfRkxQKCBwc0VuYywgJnNFbmND
dHJsLCBjb25kQ29kaW5nICk7CiAKLSAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwotICAgICAgICAvKiBQcmVmaWx0ZXJpbmcgZm9yIG5vaXNlIHNoYXBl
ciAgICAgICAgICovCi0gICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKi8KLSAgICAgICAgc2lsa19wcmVmaWx0ZXJfRkxQKCBwc0VuYywgJnNFbmNDdHJsLCB4
ZncsIHhfZnJhbWUgKTsKLQogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KICAgICAgICAgLyogTG93IEJpdHJhdGUgUmVkdW5kYW50IEVuY29kaW5nICAg
ICAgICovCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
LwotICAgICAgICBzaWxrX0xCUlJfZW5jb2RlX0ZMUCggcHNFbmMsICZzRW5jQ3RybCwgeGZ3LCBj
b25kQ29kaW5nICk7CisgICAgICAgIHNpbGtfTEJSUl9lbmNvZGVfRkxQKCBwc0VuYywgJnNFbmND
dHJsLCB4X2ZyYW1lLCBjb25kQ29kaW5nICk7CiAKICAgICAgICAgLyogTG9vcCBvdmVyIHF1YW50
aXplciBhbmQgZW50cm95IGNvZGluZyB0byBjb250cm9sIGJpdHJhdGUgKi8KICAgICAgICAgbWF4
SXRlciA9IDY7CkBAIC0xODgsNyArMTkzLDExIEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1l
X0ZMUCgKICAgICAgICAgICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKiovCiAgICAgICAgICAgICAgICAgLyogTm9pc2Ugc2hhcGluZyBxdWFudGl6YXRpb24g
ICAgICAgICAgICAqLwogICAgICAgICAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKi8KLSAgICAgICAgICAgICAgICBzaWxrX05TUV93cmFwcGVyX0ZMUCgg
cHNFbmMsICZzRW5jQ3RybCwgJnBzRW5jLT5zQ21uLmluZGljZXMsICZwc0VuYy0+c0Ntbi5zTlNR
LCBwc0VuYy0+c0Ntbi5wdWxzZXMsIHhmdyApOworICAgICAgICAgICAgICAgIHNpbGtfTlNRX3dy
YXBwZXJfRkxQKCBwc0VuYywgJnNFbmNDdHJsLCAmcHNFbmMtPnNDbW4uaW5kaWNlcywgJnBzRW5j
LT5zQ21uLnNOU1EsIHBzRW5jLT5zQ21uLnB1bHNlcywgeF9mcmFtZSApOworCisgICAgICAgICAg
ICAgICAgaWYgKCBpdGVyID09IG1heEl0ZXIgJiYgIWZvdW5kX2xvd2VyICkgeworICAgICAgICAg
ICAgICAgICAgICBzaWxrX21lbWNweSggJnNSYW5nZUVuY19jb3B5MiwgcHNSYW5nZUVuYywgc2l6
ZW9mKCBlY19lbmMgKSApOworICAgICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgICAgIC8q
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgICAgICAgICAgICAg
IC8qIEVuY29kZSBQYXJhbWV0ZXJzICAgICAgICAgICAgICAgICAgICAqLwpAQCAtMjAzLDYgKzIx
MiwzMyBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GTFAoCiAKICAgICAgICAgICAgICAg
ICBuQml0cyA9IGVjX3RlbGwoIHBzUmFuZ2VFbmMgKTsKIAorICAgICAgICAgICAgICAgIC8qIElm
IHdlIHN0aWxsIGJ1c3QgYWZ0ZXIgdGhlIGxhc3QgaXRlcmF0aW9uLCBkbyBzb21lIGRhbWFnZSBj
b250cm9sLiAqLworICAgICAgICAgICAgICAgIGlmICggaXRlciA9PSBtYXhJdGVyICYmICFmb3Vu
ZF9sb3dlciAmJiBuQml0cyA+IG1heEJpdHMgKSB7CisgICAgICAgICAgICAgICAgICAgIHNpbGtf
bWVtY3B5KCBwc1JhbmdlRW5jLCAmc1JhbmdlRW5jX2NvcHkyLCBzaXplb2YoIGVjX2VuYyApICk7
CisKKyAgICAgICAgICAgICAgICAgICAgLyogS2VlcCBnYWlucyB0aGUgc2FtZSBhcyB0aGUgbGFz
dCBmcmFtZS4gKi8KKyAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnNTaGFwZS5MYXN0R2Fpbklu
ZGV4ID0gc0VuY0N0cmwubGFzdEdhaW5JbmRleFByZXY7CisgICAgICAgICAgICAgICAgICAgIGZv
ciAoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGkrKyApIHsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMuR2FpbnNJbmRpY2VzWyBpIF0gPSA0Owor
ICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGlmIChjb25kQ29kaW5n
ICE9IENPREVfQ09ORElUSU9OQUxMWSkgeworICAgICAgICAgICAgICAgICAgICAgICBwc0VuYy0+
c0Ntbi5pbmRpY2VzLkdhaW5zSW5kaWNlc1sgMCBdID0gc0VuY0N0cmwubGFzdEdhaW5JbmRleFBy
ZXY7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnND
bW4uZWNfcHJldkxhZ0luZGV4ID0gZWNfcHJldkxhZ0luZGV4X2NvcHk7CisgICAgICAgICAgICAg
ICAgICAgIHBzRW5jLT5zQ21uLmVjX3ByZXZTaWduYWxUeXBlID0gZWNfcHJldlNpZ25hbFR5cGVf
Y29weTsKKyAgICAgICAgICAgICAgICAgICAgLyogQ2xlYXIgYWxsIHB1bHNlcy4gKi8KKyAgICAg
ICAgICAgICAgICAgICAgZm9yICggaSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGg7
IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLnB1bHNlc1sgaSBd
ID0gMDsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgICAgIHNpbGtf
ZW5jb2RlX2luZGljZXMoICZwc0VuYy0+c0NtbiwgcHNSYW5nZUVuYywgcHNFbmMtPnNDbW4ubkZy
YW1lc0VuY29kZWQsIDAsIGNvbmRDb2RpbmcgKTsKKworICAgICAgICAgICAgICAgICAgICBzaWxr
X2VuY29kZV9wdWxzZXMoIHBzUmFuZ2VFbmMsIHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlw
ZSwgcHNFbmMtPnNDbW4uaW5kaWNlcy5xdWFudE9mZnNldFR5cGUsCisgICAgICAgICAgICAgICAg
ICAgICAgICBwc0VuYy0+c0Ntbi5wdWxzZXMsIHBzRW5jLT5zQ21uLmZyYW1lX2xlbmd0aCApOwor
CisgICAgICAgICAgICAgICAgICAgIG5CaXRzID0gZWNfdGVsbCggcHNSYW5nZUVuYyApOworICAg
ICAgICAgICAgICAgIH0KKwogICAgICAgICAgICAgICAgIGlmKCB1c2VDQlIgPT0gMCAmJiBpdGVy
ID09IDAgJiYgbkJpdHMgPD0gbWF4Qml0cyApIHsKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgICAgICAgICAgfQpAQCAtMjIzLDcgKzI1OSw5IEBAIG9wdXNfaW50IHNpbGtfZW5j
b2RlX2ZyYW1lX0ZMUCgKICAgICAgICAgICAgIGlmKCBuQml0cyA+IG1heEJpdHMgKSB7CiAgICAg
ICAgICAgICAgICAgaWYoIGZvdW5kX2xvd2VyID09IDAgJiYgaXRlciA+PSAyICkgewogICAgICAg
ICAgICAgICAgICAgICAvKiBBZGp1c3QgdGhlIHF1YW50aXplcidzIHJhdGUvZGlzdG9ydGlvbiB0
cmFkZW9mZiBhbmQgZGlzY2FyZCBwcmV2aW91cyAidXBwZXIiIHJlc3VsdHMgKi8KLSAgICAgICAg
ICAgICAgICAgICAgc0VuY0N0cmwuTGFtYmRhICo9IDEuNWY7CisgICAgICAgICAgICAgICAgICAg
IHNFbmNDdHJsLkxhbWJkYSA9IHNpbGtfbWF4X2Zsb2F0KHNFbmNDdHJsLkxhbWJkYSoxLjVmLCAx
LjVmKTsKKyAgICAgICAgICAgICAgICAgICAgLyogUmVkdWNpbmcgZGl0aGVyaW5nIGNhbiBoZWxw
IHVzIGhpdCB0aGUgdGFyZ2V0LiAqLworICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5p
bmRpY2VzLnF1YW50T2Zmc2V0VHlwZSA9IDA7CiAgICAgICAgICAgICAgICAgICAgIGZvdW5kX3Vw
cGVyID0gMDsKICAgICAgICAgICAgICAgICAgICAgZ2FpbnNJRF91cHBlciA9IC0xOwogICAgICAg
ICAgICAgICAgIH0gZWxzZSB7CkBAIC0yNTAsMTUgKzI4OCwzNCBAQCBvcHVzX2ludCBzaWxrX2Vu
Y29kZV9mcmFtZV9GTFAoCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CiAK
KyAgICAgICAgICAgIGlmICggIWZvdW5kX2xvd2VyICYmIG5CaXRzID4gbWF4Qml0cyApIHsKKyAg
ICAgICAgICAgICAgICBpbnQgajsKKyAgICAgICAgICAgICAgICBmb3IgKCBpID0gMDsgaSA8IHBz
RW5jLT5zQ21uLm5iX3N1YmZyOyBpKysgKSB7CisgICAgICAgICAgICAgICAgICAgIGludCBzdW09
MDsKKyAgICAgICAgICAgICAgICAgICAgZm9yICggaiA9IGkqcHNFbmMtPnNDbW4uc3ViZnJfbGVu
Z3RoOyBqIDwgKGkrMSkqcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoOyBqKysgKSB7CisgICAgICAg
ICAgICAgICAgICAgICAgICBzdW0gKz0gYWJzKCBwc0VuYy0+c0Ntbi5wdWxzZXNbal0gKTsKKyAg
ICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBpZiAoIGl0ZXIgPT0gMCB8
fCAoc3VtIDwgYmVzdF9zdW1baV0gJiYgIWdhaW5fbG9ja1tpXSkgKSB7CisgICAgICAgICAgICAg
ICAgICAgICAgICBiZXN0X3N1bVtpXSA9IHN1bTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGJl
c3RfZ2Fpbl9tdWx0W2ldID0gZ2Fpbk11bHRfUTg7CisgICAgICAgICAgICAgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBnYWluX2xvY2tbaV0gPSAxOworICAgICAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQogICAgICAgICAg
ICAgaWYoICggZm91bmRfbG93ZXIgJiBmb3VuZF91cHBlciApID09IDAgKSB7CiAgICAgICAgICAg
ICAgICAgLyogQWRqdXN0IGdhaW4gYWNjb3JkaW5nIHRvIGhpZ2gtcmF0ZSByYXRlL2Rpc3RvcnRp
b24gY3VydmUgKi8KLSAgICAgICAgICAgICAgICBvcHVzX2ludDMyIGdhaW5fZmFjdG9yX1ExNjsK
LSAgICAgICAgICAgICAgICBnYWluX2ZhY3Rvcl9RMTYgPSBzaWxrX2xvZzJsaW4oIHNpbGtfTFNI
SUZUKCBuQml0cyAtIG1heEJpdHMsIDcgKSAvIHBzRW5jLT5zQ21uLmZyYW1lX2xlbmd0aCArIFNJ
TEtfRklYX0NPTlNUKCAxNiwgNyApICk7Ci0gICAgICAgICAgICAgICAgZ2Fpbl9mYWN0b3JfUTE2
ID0gc2lsa19taW5fMzIoIGdhaW5fZmFjdG9yX1ExNiwgU0lMS19GSVhfQ09OU1QoIDIsIDE2ICkg
KTsKICAgICAgICAgICAgICAgICBpZiggbkJpdHMgPiBtYXhCaXRzICkgewotICAgICAgICAgICAg
ICAgICAgICBnYWluX2ZhY3Rvcl9RMTYgPSBzaWxrX21heF8zMiggZ2Fpbl9mYWN0b3JfUTE2LCBT
SUxLX0ZJWF9DT05TVCggMS4zLCAxNiApICk7CisgICAgICAgICAgICAgICAgICAgIGlmIChnYWlu
TXVsdF9ROCA8IDE2Mzg0KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBnYWluTXVsdF9ROCAq
PSAyOworICAgICAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICAg
ICAgZ2Fpbk11bHRfUTggPSAzMjc2NzsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIG9wdXNfaW50MzIgZ2Fpbl9mYWN0
b3JfUTE2OworICAgICAgICAgICAgICAgICAgICBnYWluX2ZhY3Rvcl9RMTYgPSBzaWxrX2xvZzJs
aW4oIHNpbGtfTFNISUZUKCBuQml0cyAtIG1heEJpdHMsIDcgKSAvIHBzRW5jLT5zQ21uLmZyYW1l
X2xlbmd0aCArIFNJTEtfRklYX0NPTlNUKCAxNiwgNyApICk7CisgICAgICAgICAgICAgICAgICAg
IGdhaW5NdWx0X1E4ID0gc2lsa19TTVVMV0IoIGdhaW5fZmFjdG9yX1ExNiwgZ2Fpbk11bHRfUTgg
KTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgZ2Fpbk11bHRfUTggPSBzaWxr
X1NNVUxXQiggZ2Fpbl9mYWN0b3JfUTE2LCBnYWluTXVsdF9ROCApOwogICAgICAgICAgICAgfSBl
bHNlIHsKICAgICAgICAgICAgICAgICAvKiBBZGp1c3QgZ2FpbiBieSBpbnRlcnBvbGF0aW5nICov
CiAgICAgICAgICAgICAgICAgZ2Fpbk11bHRfUTggPSBnYWluTXVsdF9sb3dlciArICggKCBnYWlu
TXVsdF91cHBlciAtIGdhaW5NdWx0X2xvd2VyICkgKiAoIG1heEJpdHMgLSBuQml0c19sb3dlciAp
ICkgLyAoIG5CaXRzX3VwcGVyIC0gbkJpdHNfbG93ZXIgKTsKQEAgLTI3Miw3ICszMjksMTMgQEAg
b3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRkxQKAogICAgICAgICAgICAgfQogCiAgICAgICAg
ICAgICBmb3IoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGkrKyApIHsKLSAgICAg
ICAgICAgICAgICBwR2FpbnNfUTE2WyBpIF0gPSBzaWxrX0xTSElGVF9TQVQzMiggc2lsa19TTVVM
V0IoIHNFbmNDdHJsLkdhaW5zVW5xX1ExNlsgaSBdLCBnYWluTXVsdF9ROCApLCA4ICk7CisgICAg
ICAgICAgICAgICAgb3B1c19pbnQxNiB0bXA7CisgICAgICAgICAgICAgICAgaWYgKCBnYWluX2xv
Y2tbaV0gKSB7CisgICAgICAgICAgICAgICAgICAgIHRtcCA9IGJlc3RfZ2Fpbl9tdWx0W2ldOwor
ICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIHRtcCA9IGdhaW5N
dWx0X1E4OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBwR2FpbnNfUTE2WyBp
IF0gPSBzaWxrX0xTSElGVF9TQVQzMiggc2lsa19TTVVMV0IoIHNFbmNDdHJsLkdhaW5zVW5xX1Ex
NlsgaSBdLCB0bXAgKSwgOCApOwogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICAvKiBRdWFu
dGl6ZSBnYWlucyAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2VuZXJneV9GTFAuYyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9m
bG9hdC9lbmVyZ3lfRkxQLmMKaW5kZXggMjRiODE3OWY5ZTNiNGYzYzg4ZTk5MmNmOWZkODFhNGQ5
MDI5NGM3Ni4uN2JjNzE3M2M5Y2YzZjQ2Njk5ZTg5Y2QxM2RiM2IyNzdhZGU2NjA2YSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2Zsb2F0L2VuZXJneV9GTFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZW5lcmd5X0ZMUC5j
CkBAIC0zNywxMyArMzcsMTIgQEAgZG91YmxlIHNpbGtfZW5lcmd5X0ZMUCgKICAgICBvcHVzX2lu
dCAgICAgICAgICAgIGRhdGFTaXplCiApCiB7Ci0gICAgb3B1c19pbnQgIGksIGRhdGFTaXplNDsK
KyAgICBvcHVzX2ludCBpOwogICAgIGRvdWJsZSAgIHJlc3VsdDsKIAogICAgIC8qIDR4IHVucm9s
bGVkIGxvb3AgKi8KICAgICByZXN1bHQgPSAwLjA7Ci0gICAgZGF0YVNpemU0ID0gZGF0YVNpemUg
JiAweEZGRkM7Ci0gICAgZm9yKCBpID0gMDsgaSA8IGRhdGFTaXplNDsgaSArPSA0ICkgeworICAg
IGZvciggaSA9IDA7IGkgPCBkYXRhU2l6ZSAtIDM7IGkgKz0gNCApIHsKICAgICAgICAgcmVzdWx0
ICs9IGRhdGFbIGkgKyAwIF0gKiAoZG91YmxlKWRhdGFbIGkgKyAwIF0gKwogICAgICAgICAgICAg
ICAgICAgZGF0YVsgaSArIDEgXSAqIChkb3VibGUpZGF0YVsgaSArIDEgXSArCiAgICAgICAgICAg
ICAgICAgICBkYXRhWyBpICsgMiBdICogKGRvdWJsZSlkYXRhWyBpICsgMiBdICsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9mbG9hdC9maW5kX0xQQ19GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9maW5kX0xQQ19GTFAuYwpp
bmRleCBmY2ZlMWMzNjgxZWI2MWY0MjczNjM4Y2M0MmUxZTE3MDAwNDkxZWRlLi40ZDYzOTY0ZmVi
YjhiMjkzMmVmOWNmOThmZmU5NmIzOTZhMzdiODI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZmlu
ZF9MUENfRkxQLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfTFBDX0ZMUC5jCkBAIC03Myw3ICs3Myw3
IEBAIHZvaWQgc2lsa19maW5kX0xQQ19GTFAoCiAgICAgICAgICAgICBzaWxrX2ludGVycG9sYXRl
KCBOTFNGMF9RMTUsIHBzRW5jQy0+cHJldl9OTFNGcV9RMTUsIE5MU0ZfUTE1LCBrLCBwc0VuY0Mt
PnByZWRpY3RMUENPcmRlciApOwogCiAgICAgICAgICAgICAvKiBDb252ZXJ0IHRvIExQQyBmb3Ig
cmVzaWR1YWwgZW5lcmd5IGV2YWx1YXRpb24gKi8KLSAgICAgICAgICAgIHNpbGtfTkxTRjJBX0ZM
UCggYV90bXAsIE5MU0YwX1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIgKTsKKyAgICAgICAg
ICAgIHNpbGtfTkxTRjJBX0ZMUCggYV90bXAsIE5MU0YwX1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBD
T3JkZXIsIHBzRW5jQy0+YXJjaCApOwogCiAgICAgICAgICAgICAvKiBDYWxjdWxhdGUgcmVzaWR1
YWwgZW5lcmd5IHdpdGggTFNGIGludGVycG9sYXRpb24gKi8KICAgICAgICAgICAgIHNpbGtfTFBD
X2FuYWx5c2lzX2ZpbHRlcl9GTFAoIExQQ19yZXMsIGFfdG1wLCB4LCAyICogc3ViZnJfbGVuZ3Ro
LCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRf
TFRQX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfTFRQX0ZMUC5jCmluZGV4IDcyMjk5OTYwMTQwOWQz
ZDk0NjM5MjI2YzBhMWYyM2YxOWE3ZTRkNzUuLmY5NzA2NDkzMGU4NDE2Y2ZkZmU5NTJlYWRiYjhi
YTc0YjA5YzhmNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9maW5kX0xUUF9GTFAuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZmxvYXQvZmluZF9MVFBfRkxQLmMKQEAgLTMzLDEwMCArMzMsMzIgQEAgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiAjaW5jbHVkZSAidHVuaW5nX3BhcmFtZXRlcnMuaCIKIAogdm9pZCBz
aWxrX2ZpbmRfTFRQX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIGJb
IE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdLCAgICAgIC8qIE8gICAgTFRQIGNvZWZzICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAg
ICAgICAgICAgICAgV0xUUFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSICogTFRQX09SREVSIF0s
IC8qIE8gICAgV2VpZ2h0IGZvciBMVFAgcXVhbnRpemF0aW9uICAgICAgICovCi0gICAgc2lsa19m
bG9hdCAgICAgICAgICAgICAgICAgICAgICAqTFRQcmVkQ29kR2FpbiwgICAgICAgICAgICAgICAg
ICAgICAvKiBPICAgIExUUCBjb2RpbmcgZ2FpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIHJfbHBjW10sICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFBDIHJlc2lkdWFsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbGFn
WyAgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgLyogSSAgICBMVFAgbGFncyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAg
ICAgICAgICAgICBXZ2h0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAvKiBJICAgIFdl
aWdodHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBzaWxrX2Zs
b2F0ICAgICAgICAgICAgICAgICAgICAgIFhYWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBM
VFBfT1JERVIgXSwgLyogTyAgICBXZWlnaHQgZm9yIExUUCBxdWFudGl6YXRpb24gICAgICAgICAq
LworICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgeFhbIE1BWF9OQl9TVUJGUiAq
IExUUF9PUkRFUiBdLCAgICAgLyogTyAgICBXZWlnaHQgZm9yIExUUCBxdWFudGl6YXRpb24gICAg
ICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICByX3B0
cltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExQQyByZXNpZHVhbCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAg
ICAgICAgICAgIGxhZ1sgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgIC8qIEkgICAgTFRQ
IGxhZ3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgc3ViZnJfbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBTdWJmcmFtZSBsZW5ndGggICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG1lbV9v
ZmZzZXQgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMg
aW4gTFRQIG1lbW9yeSAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgbmJfc3ViZnIgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1i
ZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7Ci0gICAgb3B1
c19pbnQgICBpLCBrOwotICAgIHNpbGtfZmxvYXQgKmJfcHRyLCB0ZW1wLCAqV0xUUF9wdHI7Ci0g
ICAgc2lsa19mbG9hdCBMUENfcmVzX25yZywgTFBDX0xUUF9yZXNfbnJnOwotICAgIHNpbGtfZmxv
YXQgZFsgTUFYX05CX1NVQkZSIF0sIG0sIGcsIGRlbHRhX2JbIExUUF9PUkRFUiBdOwotICAgIHNp
bGtfZmxvYXQgd1sgTUFYX05CX1NVQkZSIF0sIG5yZ1sgTUFYX05CX1NVQkZSIF0sIHJlZ3U7Ci0g
ICAgc2lsa19mbG9hdCBSclsgTFRQX09SREVSIF0sIHJyWyBNQVhfTkJfU1VCRlIgXTsKLSAgICBj
b25zdCBzaWxrX2Zsb2F0ICpyX3B0ciwgKmxhZ19wdHI7CisgICAgb3B1c19pbnQgICBrOworICAg
IHNpbGtfZmxvYXQgKnhYX3B0ciwgKlhYX3B0cjsKKyAgICBjb25zdCBzaWxrX2Zsb2F0ICpsYWdf
cHRyOworICAgIHNpbGtfZmxvYXQgeHgsIHRlbXA7CiAKLSAgICBiX3B0ciAgICA9IGI7Ci0gICAg
V0xUUF9wdHIgPSBXTFRQOwotICAgIHJfcHRyICAgID0gJnJfbHBjWyBtZW1fb2Zmc2V0IF07Cisg
ICAgeFhfcHRyID0geFg7CisgICAgWFhfcHRyID0gWFg7CiAgICAgZm9yKCBrID0gMDsgayA8IG5i
X3N1YmZyOyBrKysgKSB7CiAgICAgICAgIGxhZ19wdHIgPSByX3B0ciAtICggbGFnWyBrIF0gKyBM
VFBfT1JERVIgLyAyICk7CisgICAgICAgIHNpbGtfY29yck1hdHJpeF9GTFAoIGxhZ19wdHIsIHN1
YmZyX2xlbmd0aCwgTFRQX09SREVSLCBYWF9wdHIgKTsKKyAgICAgICAgc2lsa19jb3JyVmVjdG9y
X0ZMUCggbGFnX3B0ciwgcl9wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09SREVSLCB4WF9wdHIgKTsK
KyAgICAgICAgeHggPSAoIHNpbGtfZmxvYXQgKXNpbGtfZW5lcmd5X0ZMUCggcl9wdHIsIHN1YmZy
X2xlbmd0aCArIExUUF9PUkRFUiApOworICAgICAgICB0ZW1wID0gMS4wZiAvIHNpbGtfbWF4KCB4
eCwgTFRQX0NPUlJfSU5WX01BWCAqIDAuNWYgKiAoIFhYX3B0clsgMCBdICsgWFhfcHRyWyAyNCBd
ICkgKyAxLjBmICk7CisgICAgICAgIHNpbGtfc2NhbGVfdmVjdG9yX0ZMUCggWFhfcHRyLCB0ZW1w
LCBMVFBfT1JERVIgKiBMVFBfT1JERVIgKTsKKyAgICAgICAgc2lsa19zY2FsZV92ZWN0b3JfRkxQ
KCB4WF9wdHIsIHRlbXAsIExUUF9PUkRFUiApOwogCi0gICAgICAgIHNpbGtfY29yck1hdHJpeF9G
TFAoIGxhZ19wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09SREVSLCBXTFRQX3B0ciApOwotICAgICAg
ICBzaWxrX2NvcnJWZWN0b3JfRkxQKCBsYWdfcHRyLCByX3B0ciwgc3ViZnJfbGVuZ3RoLCBMVFBf
T1JERVIsIFJyICk7Ci0KLSAgICAgICAgcnJbIGsgXSA9ICggc2lsa19mbG9hdCApc2lsa19lbmVy
Z3lfRkxQKCByX3B0ciwgc3ViZnJfbGVuZ3RoICk7Ci0gICAgICAgIHJlZ3UgPSAxLjBmICsgcnJb
IGsgXSArCi0gICAgICAgICAgICBtYXRyaXhfcHRyKCBXTFRQX3B0ciwgMCwgMCwgTFRQX09SREVS
ICkgKwotICAgICAgICAgICAgbWF0cml4X3B0ciggV0xUUF9wdHIsIExUUF9PUkRFUi0xLCBMVFBf
T1JERVItMSwgTFRQX09SREVSICk7Ci0gICAgICAgIHJlZ3UgKj0gTFRQX0RBTVBJTkcgLyAzOwot
ICAgICAgICBzaWxrX3JlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZMUCggV0xUUF9wdHIsICZyclsg
ayBdLCByZWd1LCBMVFBfT1JERVIgKTsKLSAgICAgICAgc2lsa19zb2x2ZV9MRExfRkxQKCBXTFRQ
X3B0ciwgTFRQX09SREVSLCBSciwgYl9wdHIgKTsKLQotICAgICAgICAvKiBDYWxjdWxhdGUgcmVz
aWR1YWwgZW5lcmd5ICovCi0gICAgICAgIG5yZ1sgayBdID0gc2lsa19yZXNpZHVhbF9lbmVyZ3lf
Y292YXJfRkxQKCBiX3B0ciwgV0xUUF9wdHIsIFJyLCByclsgayBdLCBMVFBfT1JERVIgKTsKLQot
ICAgICAgICB0ZW1wID0gV2dodFsgayBdIC8gKCBucmdbIGsgXSAqIFdnaHRbIGsgXSArIDAuMDFm
ICogc3ViZnJfbGVuZ3RoICk7Ci0gICAgICAgIHNpbGtfc2NhbGVfdmVjdG9yX0ZMUCggV0xUUF9w
dHIsIHRlbXAsIExUUF9PUkRFUiAqIExUUF9PUkRFUiApOwotICAgICAgICB3WyBrIF0gPSBtYXRy
aXhfcHRyKCBXTFRQX3B0ciwgTFRQX09SREVSIC8gMiwgTFRQX09SREVSIC8gMiwgTFRQX09SREVS
ICk7Ci0KLSAgICAgICAgcl9wdHIgICAgKz0gc3ViZnJfbGVuZ3RoOwotICAgICAgICBiX3B0ciAg
ICArPSBMVFBfT1JERVI7Ci0gICAgICAgIFdMVFBfcHRyICs9IExUUF9PUkRFUiAqIExUUF9PUkRF
UjsKLSAgICB9Ci0KLSAgICAvKiBDb21wdXRlIExUUCBjb2RpbmcgZ2FpbiAqLwotICAgIGlmKCBM
VFByZWRDb2RHYWluICE9IE5VTEwgKSB7Ci0gICAgICAgIExQQ19MVFBfcmVzX25yZyA9IDFlLTZm
OwotICAgICAgICBMUENfcmVzX25yZyAgICAgPSAwLjBmOwotICAgICAgICBmb3IoIGsgPSAwOyBr
IDwgbmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgICAgIExQQ19yZXNfbnJnICAgICArPSByclsg
IGsgXSAqIFdnaHRbIGsgXTsKLSAgICAgICAgICAgIExQQ19MVFBfcmVzX25yZyArPSBucmdbIGsg
XSAqIFdnaHRbIGsgXTsKLSAgICAgICAgfQotCi0gICAgICAgIHNpbGtfYXNzZXJ0KCBMUENfTFRQ
X3Jlc19ucmcgPiAwICk7Ci0gICAgICAgICpMVFByZWRDb2RHYWluID0gMy4wZiAqIHNpbGtfbG9n
MiggTFBDX3Jlc19ucmcgLyBMUENfTFRQX3Jlc19ucmcgKTsKLSAgICB9Ci0KLSAgICAvKiBTbW9v
dGhpbmcgKi8KLSAgICAvKiBkID0gc3VtKCBCLCAxICk7ICovCi0gICAgYl9wdHIgPSBiOwotICAg
IGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysrICkgewotICAgICAgICBkWyBrIF0gPSAwOwot
ICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSOyBpKysgKSB7Ci0gICAgICAgICAgICBk
WyBrIF0gKz0gYl9wdHJbIGkgXTsKLSAgICAgICAgfQotICAgICAgICBiX3B0ciArPSBMVFBfT1JE
RVI7Ci0gICAgfQotICAgIC8qIG0gPSAoIHcgKiBkJyApIC8gKCBzdW0oIHcgKSArIDFlLTMgKTsg
Ki8KLSAgICB0ZW1wID0gMWUtM2Y7Ci0gICAgZm9yKCBrID0gMDsgayA8IG5iX3N1YmZyOyBrKysg
KSB7Ci0gICAgICAgIHRlbXAgKz0gd1sgayBdOwotICAgIH0KLSAgICBtID0gMDsKLSAgICBmb3Io
IGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgbSArPSBkWyBrIF0gKiB3WyBr
IF07Ci0gICAgfQotICAgIG0gPSBtIC8gdGVtcDsKLQotICAgIGJfcHRyID0gYjsKLSAgICBmb3Io
IGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgZyA9IExUUF9TTU9PVEhJTkcg
LyAoIExUUF9TTU9PVEhJTkcgKyB3WyBrIF0gKSAqICggbSAtIGRbIGsgXSApOwotICAgICAgICB0
ZW1wID0gMDsKLSAgICAgICAgZm9yKCBpID0gMDsgaSA8IExUUF9PUkRFUjsgaSsrICkgewotICAg
ICAgICAgICAgZGVsdGFfYlsgaSBdID0gc2lsa19tYXhfZmxvYXQoIGJfcHRyWyBpIF0sIDAuMWYg
KTsKLSAgICAgICAgICAgIHRlbXAgKz0gZGVsdGFfYlsgaSBdOwotICAgICAgICB9Ci0gICAgICAg
IHRlbXAgPSBnIC8gdGVtcDsKLSAgICAgICAgZm9yKCBpID0gMDsgaSA8IExUUF9PUkRFUjsgaSsr
ICkgewotICAgICAgICAgICAgYl9wdHJbIGkgXSA9IGJfcHRyWyBpIF0gKyBkZWx0YV9iWyBpIF0g
KiB0ZW1wOwotICAgICAgICB9Ci0gICAgICAgIGJfcHRyICs9IExUUF9PUkRFUjsKKyAgICAgICAg
cl9wdHIgICs9IHN1YmZyX2xlbmd0aDsKKyAgICAgICAgWFhfcHRyICs9IExUUF9PUkRFUiAqIExU
UF9PUkRFUjsKKyAgICAgICAgeFhfcHRyICs9IExUUF9PUkRFUjsKICAgICB9CiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZmxvYXQvZmluZF9wcmVkX2NvZWZzX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfcHJl
ZF9jb2Vmc19GTFAuYwppbmRleCAxYWY0ZmU1ZjFiMmQxNjc2Y2EyNjgyYzAyNmQ5OGMyZTc4MWFl
NTBjLi5jYjJlNzYzYjFkYjAyYmIzZmQwYzE2NmY2YTkwMGQ1N2ZjMjNiODI0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZmxvYXQvZmluZF9wcmVkX2NvZWZzX0ZMUC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9maW5kX3By
ZWRfY29lZnNfRkxQLmMKQEAgLTQxLDggKzQxLDkgQEAgdm9pZCBzaWxrX2ZpbmRfcHJlZF9jb2Vm
c19GTFAoCiApCiB7CiAgICAgb3B1c19pbnQgICAgICAgICBpOwotICAgIHNpbGtfZmxvYXQgICAg
ICAgV0xUUFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSICogTFRQX09SREVSIF07Ci0gICAgc2ls
a19mbG9hdCAgICAgICBpbnZHYWluc1sgTUFYX05CX1NVQkZSIF0sIFdnaHRbIE1BWF9OQl9TVUJG
UiBdOworICAgIHNpbGtfZmxvYXQgICAgICAgWFhMVFBbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRF
UiAqIExUUF9PUkRFUiBdOworICAgIHNpbGtfZmxvYXQgICAgICAgeFhMVFBbIE1BWF9OQl9TVUJG
UiAqIExUUF9PUkRFUiBdOworICAgIHNpbGtfZmxvYXQgICAgICAgaW52R2FpbnNbIE1BWF9OQl9T
VUJGUiBdOwogICAgIG9wdXNfaW50MTYgICAgICAgTkxTRl9RMTVbIE1BWF9MUENfT1JERVIgXTsK
ICAgICBjb25zdCBzaWxrX2Zsb2F0ICp4X3B0cjsKICAgICBzaWxrX2Zsb2F0ICAgICAgICp4X3By
ZV9wdHIsIExQQ19pbl9wcmVbIE1BWF9OQl9TVUJGUiAqIE1BWF9MUENfT1JERVIgKyBNQVhfRlJB
TUVfTEVOR1RIIF07CkBAIC01Miw3ICs1Myw2IEBAIHZvaWQgc2lsa19maW5kX3ByZWRfY29lZnNf
RkxQKAogICAgIGZvciggaSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaSsrICkgewog
ICAgICAgICBzaWxrX2Fzc2VydCggcHNFbmNDdHJsLT5HYWluc1sgaSBdID4gMC4wZiApOwogICAg
ICAgICBpbnZHYWluc1sgaSBdID0gMS4wZiAvIHBzRW5jQ3RybC0+R2FpbnNbIGkgXTsKLSAgICAg
ICAgV2dodFsgaSBdICAgICA9IGludkdhaW5zWyBpIF0gKiBpbnZHYWluc1sgaSBdOwogICAgIH0K
IAogICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQg
KSB7CkBAIC02MiwxMyArNjIsMTEgQEAgdm9pZCBzaWxrX2ZpbmRfcHJlZF9jb2Vmc19GTFAoCiAg
ICAgICAgIHNpbGtfYXNzZXJ0KCBwc0VuYy0+c0Ntbi5sdHBfbWVtX2xlbmd0aCAtIHBzRW5jLT5z
Q21uLnByZWRpY3RMUENPcmRlciA+PSBwc0VuY0N0cmwtPnBpdGNoTFsgMCBdICsgTFRQX09SREVS
IC8gMiApOwogCiAgICAgICAgIC8qIExUUCBhbmFseXNpcyAqLwotICAgICAgICBzaWxrX2ZpbmRf
TFRQX0ZMUCggcHNFbmNDdHJsLT5MVFBDb2VmLCBXTFRQLCAmcHNFbmNDdHJsLT5MVFByZWRDb2RH
YWluLCByZXNfcGl0Y2gsCi0gICAgICAgICAgICBwc0VuY0N0cmwtPnBpdGNoTCwgV2dodCwgcHNF
bmMtPnNDbW4uc3ViZnJfbGVuZ3RoLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciwgcHNFbmMtPnNDbW4u
bHRwX21lbV9sZW5ndGggKTsKKyAgICAgICAgc2lsa19maW5kX0xUUF9GTFAoIFhYTFRQLCB4WExU
UCwgcmVzX3BpdGNoLCBwc0VuY0N0cmwtPnBpdGNoTCwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3Ro
LCBwc0VuYy0+c0Ntbi5uYl9zdWJmciApOwogCiAgICAgICAgIC8qIFF1YW50aXplIExUUCBnYWlu
IHBhcmFtZXRlcnMgKi8KICAgICAgICAgc2lsa19xdWFudF9MVFBfZ2FpbnNfRkxQKCBwc0VuY0N0
cmwtPkxUUENvZWYsIHBzRW5jLT5zQ21uLmluZGljZXMuTFRQSW5kZXgsICZwc0VuYy0+c0Ntbi5p
bmRpY2VzLlBFUkluZGV4LAotICAgICAgICAgICAgJnBzRW5jLT5zQ21uLnN1bV9sb2dfZ2Fpbl9R
NywgV0xUUCwgcHNFbmMtPnNDbW4ubXVfTFRQX1E5LCBwc0VuYy0+c0Ntbi5MVFBRdWFudExvd0Nv
bXBsZXhpdHksIHBzRW5jLT5zQ21uLm5iX3N1YmZyLAotICAgICAgICAgICAgcHNFbmMtPnNDbW4u
YXJjaCApOworICAgICAgICAgICAgJnBzRW5jLT5zQ21uLnN1bV9sb2dfZ2Fpbl9RNywgJnBzRW5j
Q3RybC0+TFRQcmVkQ29kR2FpbiwgWFhMVFAsIHhYTFRQLCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5n
dGgsIHBzRW5jLT5zQ21uLm5iX3N1YmZyLCBwc0VuYy0+c0Ntbi5hcmNoICk7CiAKICAgICAgICAg
LyogQ29udHJvbCBMVFAgc2NhbGluZyAqLwogICAgICAgICBzaWxrX0xUUF9zY2FsZV9jdHJsX0ZM
UCggcHNFbmMsIHBzRW5jQ3RybCwgY29uZENvZGluZyApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0
L2lubmVyX3Byb2R1Y3RfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvaW5uZXJfcHJvZHVjdF9GTFAuYwppbmRl
eCAwMjljMDEyOTExZGFkZDY3MzJmZjEzNzNmYmEwNGIyOTZlM2FjNjllLi5jZGQzOWQyNGNlOTQx
ODkxNmRiMzQ2YmE5M2FkNThjZjBkOWZjMTQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvaW5uZXJf
cHJvZHVjdF9GTFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvaW5uZXJfcHJvZHVjdF9GTFAuYwpAQCAtMzgs
MTMgKzM4LDEyIEBAIGRvdWJsZSBzaWxrX2lubmVyX3Byb2R1Y3RfRkxQKAogICAgIG9wdXNfaW50
ICAgICAgICAgICAgZGF0YVNpemUKICkKIHsKLSAgICBvcHVzX2ludCAgaSwgZGF0YVNpemU0Owor
ICAgIG9wdXNfaW50IGk7CiAgICAgZG91YmxlICAgcmVzdWx0OwogCiAgICAgLyogNHggdW5yb2xs
ZWQgbG9vcCAqLwogICAgIHJlc3VsdCA9IDAuMDsKLSAgICBkYXRhU2l6ZTQgPSBkYXRhU2l6ZSAm
IDB4RkZGQzsKLSAgICBmb3IoIGkgPSAwOyBpIDwgZGF0YVNpemU0OyBpICs9IDQgKSB7CisgICAg
Zm9yKCBpID0gMDsgaSA8IGRhdGFTaXplIC0gMzsgaSArPSA0ICkgewogICAgICAgICByZXN1bHQg
Kz0gZGF0YTFbIGkgKyAwIF0gKiAoZG91YmxlKWRhdGEyWyBpICsgMCBdICsKICAgICAgICAgICAg
ICAgICAgIGRhdGExWyBpICsgMSBdICogKGRvdWJsZSlkYXRhMlsgaSArIDEgXSArCiAgICAgICAg
ICAgICAgICAgICBkYXRhMVsgaSArIDIgXSAqIChkb3VibGUpZGF0YTJbIGkgKyAyIF0gKwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2Zsb2F0L2syYV9GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9rMmFfRkxQLmMKaW5kZXgg
MTJhZjRlNzY2OTdhODY5ODMxYjczZGU1MzNlMzE2YTg4NTliODE2My4uMTQ0ODAwOGRiYmVkMTM5
NzkxMDg5MTMyYjBlMzkxYjJlN2UwN2Y2YiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2syYV9GTFAu
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZmxvYXQvazJhX0ZMUC5jCkBAIC0zOSwxNSArMzksMTYgQEAgdm9pZCBzaWxr
X2syYV9GTFAoCiApCiB7CiAgICAgb3B1c19pbnQgICBrLCBuOwotICAgIHNpbGtfZmxvYXQgQXRt
cFsgU0lMS19NQVhfT1JERVJfTFBDIF07CisgICAgc2lsa19mbG9hdCByY2ssIHRtcDEsIHRtcDI7
CiAKICAgICBmb3IoIGsgPSAwOyBrIDwgb3JkZXI7IGsrKyApIHsKLSAgICAgICAgZm9yKCBuID0g
MDsgbiA8IGs7IG4rKyApIHsKLSAgICAgICAgICAgIEF0bXBbIG4gXSA9IEFbIG4gXTsKKyAgICAg
ICAgcmNrID0gcmNbIGsgXTsKKyAgICAgICAgZm9yKCBuID0gMDsgbiA8IChrICsgMSkgPj4gMTsg
bisrICkgeworICAgICAgICAgICAgdG1wMSA9IEFbIG4gXTsKKyAgICAgICAgICAgIHRtcDIgPSBB
WyBrIC0gbiAtIDEgXTsKKyAgICAgICAgICAgIEFbIG4gXSAgICAgICAgID0gdG1wMSArIHRtcDIg
KiByY2s7CisgICAgICAgICAgICBBWyBrIC0gbiAtIDEgXSA9IHRtcDIgKyB0bXAxICogcmNrOwog
ICAgICAgICB9Ci0gICAgICAgIGZvciggbiA9IDA7IG4gPCBrOyBuKysgKSB7Ci0gICAgICAgICAg
ICBBWyBuIF0gKz0gQXRtcFsgayAtIG4gLSAxIF0gKiByY1sgayBdOwotICAgICAgICB9Ci0gICAg
ICAgIEFbIGsgXSA9IC1yY1sgayBdOworICAgICAgICBBWyBrIF0gPSAtcmNrOwogICAgIH0KIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9mbG9hdC9sZXZpbnNvbmR1cmJpbl9GTFAuYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9s
ZXZpbnNvbmR1cmJpbl9GTFAuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjBiYTYw
Njk4MTJmZDMyYjkyY2JlYTY0OWQ5YmI3ZTBiNTVhNGYwMi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvbGV2aW5zb25kdXJiaW5fRkxQLmMK
KysrIC9kZXYvbnVsbApAQCAtMSw4MSArMCwwIEBACi0vKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLUNvcHlyaWdo
dCAoYykgMjAwNi0yMDExLCBTa3lwZSBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0tIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKLXRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0tIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci1u
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCi1kb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNv
Y2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQotbmFtZXMgb2Ygc3BlY2lmaWMgY29u
dHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKLXByb2R1Y3RzIGRl
cml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgot
cGVybWlzc2lvbi4KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgotQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UKLUFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJ
R0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQotTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLVNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUwotSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLUNPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi1BUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRQotUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLQot
I2lmZGVmIEhBVkVfQ09ORklHX0gKLSNpbmNsdWRlICJjb25maWcuaCIKLSNlbmRpZgotCi0jaW5j
bHVkZSAiU2lnUHJvY19GTFAuaCIKLQotLyogU29sdmUgdGhlIG5vcm1hbCBlcXVhdGlvbnMgdXNp
bmcgdGhlIExldmluc29uLUR1cmJpbiByZWN1cnNpb24gKi8KLXNpbGtfZmxvYXQgc2lsa19sZXZp
bnNvbmR1cmJpbl9GTFAoICAgICAgICAgLyogTyAgICBwcmVkaWN0aW9uIGVycm9yIGVuZXJneSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAg
ICAgICAgQVtdLCAgICAgICAgICAgICAgICAvKiBPICAgIHByZWRpY3Rpb24gY29lZmZpY2llbnRz
ICAgIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19m
bG9hdCAgICBjb3JyW10sICAgICAgICAgICAgIC8qIEkgICAgaW5wdXQgYXV0by1jb3JyZWxhdGlv
bnMgW29yZGVyICsgMV0gICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVz
X2ludCAgICAgIG9yZGVyICAgICAgICAgICAgICAgLyogSSAgICBwcmVkaWN0aW9uIG9yZGVyICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIG9w
dXNfaW50ICAgaSwgbUhhbGYsIG07Ci0gICAgc2lsa19mbG9hdCBtaW5fbnJnLCBucmcsIHQsIGtt
LCBBdG1wMSwgQXRtcDI7Ci0KLSAgICBtaW5fbnJnID0gMWUtMTJmICogY29yclsgMCBdICsgMWUt
OWY7Ci0gICAgbnJnID0gY29yclsgMCBdOwotICAgIG5yZyA9IHNpbGtfbWF4X2Zsb2F0KG1pbl9u
cmcsIG5yZyk7Ci0gICAgQVsgMCBdID0gY29yclsgMSBdIC8gbnJnOwotICAgIG5yZyAtPSBBWyAw
IF0gKiBjb3JyWyAxIF07Ci0gICAgbnJnID0gc2lsa19tYXhfZmxvYXQobWluX25yZywgbnJnKTsK
LQotICAgIGZvciggbSA9IDE7IG0gPCBvcmRlcjsgbSsrICkKLSAgICB7Ci0gICAgICAgIHQgPSBj
b3JyWyBtICsgMSBdOwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgbTsgaSsrICkgewotICAgICAg
ICAgICAgdCAtPSBBWyBpIF0gKiBjb3JyWyBtIC0gaSBdOwotICAgICAgICB9Ci0KLSAgICAgICAg
LyogcmVmbGVjdGlvbiBjb2VmZmljaWVudCAqLwotICAgICAgICBrbSA9IHQgLyBucmc7Ci0KLSAg
ICAgICAgLyogcmVzaWR1YWwgZW5lcmd5ICovCi0gICAgICAgIG5yZyAtPSBrbSAqIHQ7Ci0gICAg
ICAgIG5yZyA9IHNpbGtfbWF4X2Zsb2F0KG1pbl9ucmcsIG5yZyk7Ci0KLSAgICAgICAgbUhhbGYg
PSBtID4+IDE7Ci0gICAgICAgIGZvciggaSA9IDA7IGkgPCBtSGFsZjsgaSsrICkgewotICAgICAg
ICAgICAgQXRtcDEgPSBBWyBpIF07Ci0gICAgICAgICAgICBBdG1wMiA9IEFbIG0gLSBpIC0gMSBd
OwotICAgICAgICAgICAgQVsgbSAtIGkgLSAxIF0gLT0ga20gKiBBdG1wMTsKLSAgICAgICAgICAg
IEFbIGkgXSAgICAgICAgIC09IGttICogQXRtcDI7Ci0gICAgICAgIH0KLSAgICAgICAgaWYoIG0g
JiAxICkgewotICAgICAgICAgICAgQVsgbUhhbGYgXSAgICAgLT0ga20gKiBBWyBtSGFsZiBdOwot
ICAgICAgICB9Ci0gICAgICAgIEFbIG0gXSA9IGttOwotICAgIH0KLQotICAgIC8qIHJldHVybiB0
aGUgcmVzaWR1YWwgZW5lcmd5ICovCi0gICAgcmV0dXJuIG5yZzsKLX0KLQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2Zsb2F0L21haW5fRkxQLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvbWFpbl9GTFAuaAppbmRleCBlNWE3NTk3
MmU1ZjhjMDMwYTEwNzZjNjVkMzM2YTdkMDI4NzYzYzU0Li41ZGMwY2NmNGE0MTNiM2EyZDNlYzc5
MTE0ZmFhMzM0YzQyYjc2NTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvbWFpbl9GTFAuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZmxvYXQvbWFpbl9GTFAuaApAQCAtNTYsNyArNTYsOCBAQCB2b2lkIHNpbGtfSFBfdmFy
aWFibGVfY3V0b2ZmKAogCiAvKiBFbmNvZGVyIG1haW4gZnVuY3Rpb24gKi8KIHZvaWQgc2lsa19l
bmNvZGVfZG9fVkFEX0ZMUCgKLSAgICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQICAgICAgICAgICpw
c0VuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0ZSBG
TFAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9G
TFAgICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBF
bmNvZGVyIHN0YXRlIEZMUCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19p
bnQgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpdml0eSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIERlY2lzaW9uIG9mIE9wdXMgdm9pY2UgYWN0aXZpdHkgZGV0ZWN0b3IgICAg
Ki8KICk7CiAKIC8qIEVuY29kZXIgbWFpbiBmdW5jdGlvbiAqLwpAQCAtNzksMjIgKzgwLDExIEBA
IG9wdXNfaW50IHNpbGtfaW5pdF9lbmNvZGVyKAogb3B1c19pbnQgc2lsa19jb250cm9sX2VuY29k
ZXIoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZMUCAgICAgICAgICAqcHNFbmMsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU2lsayBlbmNvZGVyIHN0YXRl
IEZMUCAgICAgICAgICAgKi8KICAgICBzaWxrX0VuY0NvbnRyb2xTdHJ1Y3QgICAgICAgICAgICpl
bmNDb250cm9sLCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29udHJvbCBzdHJ1Y3R1
cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAg
ICAgICAgICAgICAgVGFyZ2V0UmF0ZV9icHMsICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBU
YXJnZXQgbWF4IGJpdHJhdGUgKGJwcykgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgICAgICBhbGxvd19id19zd2l0Y2gsICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIEZsYWcgdG8gYWxsb3cgc3dpdGNoaW5nIGF1ZGlvIGJhbmR3aWR0aCAgICAg
Ki8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGNoYW5uZWxOYiwgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ2hhbm5lbCBudW1iZXIgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgZm9y
Y2VfZnNfa0h6CiApOwogCi0vKioqKioqKioqKioqKioqKi8KLS8qIFByZWZpbHRlcmluZyAqLwot
LyoqKioqKioqKioqKioqKiovCi12b2lkIHNpbGtfcHJlZmlsdGVyX0ZMUCgKLSAgICBzaWxrX2Vu
Y29kZXJfc3RhdGVfRkxQICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0ZSBGTFAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZMUCAgKnBzRW5jQ3RybCwgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIGNvbnRyb2wgRkxQICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICB4d1td
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFdlaWdodGVkIHNpZ25hbCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAg
ICAgICAgICAgIHhbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3Bl
ZWNoIHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsKLQogLyoqKioq
KioqKioqKioqKioqKioqKioqKioqLwogLyogTm9pc2Ugc2hhcGluZyBhbmFseXNpcyAqLwogLyoq
KioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtMTUzLDE1ICsxNDMsMTIgQEAgdm9pZCBzaWxr
X2ZpbmRfTFBDX0ZMUCgKIAogLyogTFRQIGFuYWx5c2lzICovCiB2b2lkIHNpbGtfZmluZF9MVFBf
RkxQKAotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgYlsgTUFYX05CX1NVQkZS
ICogTFRQX09SREVSIF0sICAgICAgLyogTyAgICBMVFAgY29lZnMgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICBX
TFRQWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyogTyAgICBXZWln
aHQgZm9yIExUUCBxdWFudGl6YXRpb24gICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAg
ICAgICAgICAgICAgICpMVFByZWRDb2RHYWluLCAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAg
TFRQIGNvZGluZyBnYWluICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0
IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgcl9scGNbXSwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBMUEMgcmVzaWR1YWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICBYWFsgTUFYX05CX1NVQkZS
ICogTFRQX09SREVSICogTFRQX09SREVSIF0sIC8qIE8gICAgV2VpZ2h0IGZvciBMVFAgcXVhbnRp
emF0aW9uICAgICAgICAgKi8KKyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIHhY
WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgIC8qIE8gICAgV2VpZ2h0IGZvciBMVFAg
cXVhbnRpemF0aW9uICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZmxvYXQgICAg
ICAgICAgICAgICAgcl9wdHJbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBM
UEMgcmVzaWR1YWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgICAgICBsYWdbICBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAg
ICAgICAvKiBJICAgIExUUCBsYWdzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIFdnaHRbIE1BWF9OQl9TVUJG
UiBdLCAgICAgICAgICAgICAgIC8qIEkgICAgV2VpZ2h0cyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgc3Vi
ZnJfbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTdWJmcmFtZSBsZW5ndGgg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51
bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgICAgIG1lbV9vZmZzZXQgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMgaW4gTFRQIG1lbW9yeSAgICAgICAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbmJfc3ViZnIgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAg
ICAgICAgICAgICAgICovCiApOwogCiB2b2lkIHNpbGtfTFRQX2FuYWx5c2lzX2ZpbHRlcl9GTFAo
CkBAIC0xOTgsMTQgKzE4NSwxNSBAQCB2b2lkIHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GTFAo
CiAKIC8qIExUUCB0YXAgcXVhbnRpemVyICovCiB2b2lkIHNpbGtfcXVhbnRfTFRQX2dhaW5zX0ZM
UCgKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIEJbIE1BWF9OQl9TVUJGUiAq
IExUUF9PUkRFUiBdLCAgICAgIC8qIEkvTyAgKFVuLSlxdWFudGl6ZWQgTFRQIGdhaW5zICAgICAg
ICAgICAgICAgICAgICAqLworICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgQlsg
TUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgLyogTyAgICBRdWFudGl6ZWQgTFRQIGdh
aW5zICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAg
ICAgICAgICAgICBjYmtfaW5kZXhbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAvKiBPICAgIENv
ZGVib29rIGluZGV4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2lu
dDggICAgICAgICAgICAgICAgICAgICAgICpwZXJpb2RpY2l0eV9pbmRleCwgICAgICAgICAgICAg
ICAgIC8qIE8gICAgUGVyaW9kaWNpdHkgaW5kZXggICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgKnN1bV9sb2dfZ2Fpbl9RNywg
ICAgICAgICAgICAgICAgICAgLyogSS9PICBDdW11bGF0aXZlIG1heCBwcmVkaWN0aW9uIGdhaW4g
ICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICBXWyBNQVhfTkJfU1VCRlIg
KiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyogSSAgICBFcnJvciB3ZWlnaHRzICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG11
X1ExMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTXUgdmFsdWUgKFIvRCB0
cmFkZW9mZikgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgbG93Q29tcGxleGl0eSwgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBG
bGFnIGZvciBsb3cgY29tcGxleGl0eSAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgICpwcmVkX2dhaW5fZEIsICAg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIHByZWRpY3Rpb24gZ2FpbiAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgWFhb
IE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBJICAgIENvcnJlbGF0
aW9uIG1hdHJpeCAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19mbG9hdCAgICAg
ICAgICAgICAgICB4WFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAvKiBJICAgIENv
cnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgICAgIHN1YmZyX2xlbiwgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMgcGVyIHN1YmZyYW1lICAgICAgICAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbmJfc3ViZnIsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAg
ICAgICAgICAgICAgICovCiAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmNo
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVj
dHVyZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKQEAgLTI0NSwyMiArMjMzLDYgQEAg
dm9pZCBzaWxrX2NvcnJWZWN0b3JfRkxQKAogICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAg
ICAgICAgKlh0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBYJyp0IGNv
cnJlbGF0aW9uIHZlY3RvciBbb3JkZXJdICAgICAgICAgICAgICovCiApOwogCi0vKiBBZGQgbm9p
c2UgdG8gbWF0cml4IGRpYWdvbmFsICovCi12b2lkIHNpbGtfcmVndWxhcml6ZV9jb3JyZWxhdGlv
bnNfRkxQKAotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgKlhYLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBDb3JyZWxhdGlvbiBtYXRyaWNlcyAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAg
ICAqeHgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIENvcnJlbGF0aW9u
IHZhbHVlcyAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0
ICAgICAgICAgICAgICAgIG5vaXNlLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgTm9pc2UgZW5lcmd5IHRvIGFkZCAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgRCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBEaW1lbnNpb24gb2YgWFggICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0pOwotCi0vKiBGdW5jdGlvbiB0byBzb2x2ZSBsaW5lYXIgZXF1YXRpb24gQXggPSBi
LCB3aGVyZSBBIGlzIGFuIE14TSBzeW1tZXRyaWMgbWF0cml4ICovCi12b2lkIHNpbGtfc29sdmVf
TERMX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgICpBLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgU3ltbWV0cmljIHNxdWFyZSBtYXRyaXgs
IG91dDogcmVnLiAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgTSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTaXplIG9mIG1h
dHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9h
dCAgICAgICAgICAgICAgICAqYiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIFBvaW50ZXIgdG8gYiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBz
aWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgICp4ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIE8gICAgUG9pbnRlciB0byB4IHNvbHV0aW9uIHZlY3RvciAgICAgICAgICAg
ICAgICAqLwotKTsKLQogLyogQXBwbHkgc2luZSB3aW5kb3cgdG8gc2lnbmFsIHZlY3Rvci4gICov
CiAvKiBXaW5kb3cgdHlwZXM6ICAgICAgICAgICAgICAgICAgICAgICAgKi8KIC8qICAxIC0+IHNp
bmUgd2luZG93IGZyb20gMCB0byBwaS8yICAgICAqLwpAQCAtMjg1LDcgKzI1Nyw4IEBAIHZvaWQg
c2lsa19BMk5MU0ZfRkxQKAogdm9pZCBzaWxrX05MU0YyQV9GTFAoCiAgICAgc2lsa19mbG9hdCAg
ICAgICAgICAgICAgICAgICAgICAqcEFSLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBPICAgIExQQyBjb2VmZmljaWVudHMgWyBMUENfb3JkZXIgXSAgICAgICAgICAgICAgKi8KICAg
ICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICpOTFNGX1ExNSwgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgTkxTRiB2ZWN0b3IgICAgICBbIExQQ19vcmRlciBdICAgICAg
ICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgTFBDX29yZGVy
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMUEMgb3JkZXIgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAg
ICAgICBMUENfb3JkZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExQQyBvcmRl
ciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBpbnQgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGFyY2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAqLwogKTsK
IAogLyogTGltaXQsIHN0YWJpbGl6ZSwgYW5kIHF1YW50aXplIE5MU0ZzICovCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZmxvYXQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvbm9pc2Vf
c2hhcGVfYW5hbHlzaXNfRkxQLmMKaW5kZXggNjVmNmVhNTg3MDUzODE5Y2RiMTQxYzA0ZWI3ZGNm
OTBlOGRlZDc1NC4uY2IzZDhhNTBiN2NiNzcwOTViZmMyYmY4NzM1OWE1YjcxY2ZkM2RjNSAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2Zsb2F0L25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9m
bG9hdC9ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAuYwpAQCAtNTUsMjUgKzU1LDIxIEBAIHN0YXRp
YyBPUFVTX0lOTElORSBzaWxrX2Zsb2F0IHdhcnBlZF9nYWluKAogLyogQ29udmVydCB3YXJwZWQg
ZmlsdGVyIGNvZWZmaWNpZW50cyB0byBtb25pYyBwc2V1ZG8td2FycGVkIGNvZWZmaWNpZW50cyBh
bmQgbGltaXQgbWF4aW11bSAgICAgKi8KIC8qIGFtcGxpdHVkZSBvZiBtb25pYyB3YXJwZWQgY29l
ZmZpY2llbnRzIGJ5IHVzaW5nIGJhbmR3aWR0aCBleHBhbnNpb24gb24gdGhlIHRydWUgY29lZmZp
Y2llbnRzICovCiBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCB3YXJwZWRfdHJ1ZTJtb25pY19jb2Vm
cygKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAqY29lZnNfc3luLAotICAgIHNpbGtfZmxvYXQg
ICAgICAgICAgICpjb2Vmc19hbmEsCisgICAgc2lsa19mbG9hdCAgICAgICAgICAgKmNvZWZzLAog
ICAgIHNpbGtfZmxvYXQgICAgICAgICAgIGxhbWJkYSwKICAgICBzaWxrX2Zsb2F0ICAgICAgICAg
ICBsaW1pdCwKICAgICBvcHVzX2ludCAgICAgICAgICAgICBvcmRlcgogKSB7CiAgICAgb3B1c19p
bnQgICBpLCBpdGVyLCBpbmQgPSAwOwotICAgIHNpbGtfZmxvYXQgdG1wLCBtYXhhYnMsIGNoaXJw
LCBnYWluX3N5biwgZ2Fpbl9hbmE7CisgICAgc2lsa19mbG9hdCB0bXAsIG1heGFicywgY2hpcnAs
IGdhaW47CiAKICAgICAvKiBDb252ZXJ0IHRvIG1vbmljIGNvZWZmaWNpZW50cyAqLwogICAgIGZv
ciggaSA9IG9yZGVyIC0gMTsgaSA+IDA7IGktLSApIHsKLSAgICAgICAgY29lZnNfc3luWyBpIC0g
MSBdIC09IGxhbWJkYSAqIGNvZWZzX3N5blsgaSBdOwotICAgICAgICBjb2Vmc19hbmFbIGkgLSAx
IF0gLT0gbGFtYmRhICogY29lZnNfYW5hWyBpIF07CisgICAgICAgIGNvZWZzWyBpIC0gMSBdIC09
IGxhbWJkYSAqIGNvZWZzWyBpIF07CiAgICAgfQotICAgIGdhaW5fc3luID0gKCAxLjBmIC0gbGFt
YmRhICogbGFtYmRhICkgLyAoIDEuMGYgKyBsYW1iZGEgKiBjb2Vmc19zeW5bIDAgXSApOwotICAg
IGdhaW5fYW5hID0gKCAxLjBmIC0gbGFtYmRhICogbGFtYmRhICkgLyAoIDEuMGYgKyBsYW1iZGEg
KiBjb2Vmc19hbmFbIDAgXSApOworICAgIGdhaW4gPSAoIDEuMGYgLSBsYW1iZGEgKiBsYW1iZGEg
KSAvICggMS4wZiArIGxhbWJkYSAqIGNvZWZzWyAwIF0gKTsKICAgICBmb3IoIGkgPSAwOyBpIDwg
b3JkZXI7IGkrKyApIHsKLSAgICAgICAgY29lZnNfc3luWyBpIF0gKj0gZ2Fpbl9zeW47Ci0gICAg
ICAgIGNvZWZzX2FuYVsgaSBdICo9IGdhaW5fYW5hOworICAgICAgICBjb2Vmc1sgaSBdICo9IGdh
aW47CiAgICAgfQogCiAgICAgLyogTGltaXQgKi8KQEAgLTgxLDcgKzc3LDcgQEAgc3RhdGljIE9Q
VVNfSU5MSU5FIHZvaWQgd2FycGVkX3RydWUybW9uaWNfY29lZnMoCiAgICAgICAgIC8qIEZpbmQg
bWF4aW11bSBhYnNvbHV0ZSB2YWx1ZSAqLwogICAgICAgICBtYXhhYnMgPSAtMS4wZjsKICAgICAg
ICAgZm9yKCBpID0gMDsgaSA8IG9yZGVyOyBpKysgKSB7Ci0gICAgICAgICAgICB0bXAgPSBzaWxr
X21heCggc2lsa19hYnNfZmxvYXQoIGNvZWZzX3N5blsgaSBdICksIHNpbGtfYWJzX2Zsb2F0KCBj
b2Vmc19hbmFbIGkgXSApICk7CisgICAgICAgICAgICB0bXAgPSBzaWxrX2Fic19mbG9hdCggY29l
ZnNbIGkgXSApOwogICAgICAgICAgICAgaWYoIHRtcCA+IG1heGFicyApIHsKICAgICAgICAgICAg
ICAgICBtYXhhYnMgPSB0bXA7CiAgICAgICAgICAgICAgICAgaW5kID0gaTsKQEAgLTk0LDM2ICs5
MCw1OSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCB3YXJwZWRfdHJ1ZTJtb25pY19jb2VmcygK
IAogICAgICAgICAvKiBDb252ZXJ0IGJhY2sgdG8gdHJ1ZSB3YXJwZWQgY29lZmZpY2llbnRzICov
CiAgICAgICAgIGZvciggaSA9IDE7IGkgPCBvcmRlcjsgaSsrICkgewotICAgICAgICAgICAgY29l
ZnNfc3luWyBpIC0gMSBdICs9IGxhbWJkYSAqIGNvZWZzX3N5blsgaSBdOwotICAgICAgICAgICAg
Y29lZnNfYW5hWyBpIC0gMSBdICs9IGxhbWJkYSAqIGNvZWZzX2FuYVsgaSBdOworICAgICAgICAg
ICAgY29lZnNbIGkgLSAxIF0gKz0gbGFtYmRhICogY29lZnNbIGkgXTsKICAgICAgICAgfQotICAg
ICAgICBnYWluX3N5biA9IDEuMGYgLyBnYWluX3N5bjsKLSAgICAgICAgZ2Fpbl9hbmEgPSAxLjBm
IC8gZ2Fpbl9hbmE7CisgICAgICAgIGdhaW4gPSAxLjBmIC8gZ2FpbjsKICAgICAgICAgZm9yKCBp
ID0gMDsgaSA8IG9yZGVyOyBpKysgKSB7Ci0gICAgICAgICAgICBjb2Vmc19zeW5bIGkgXSAqPSBn
YWluX3N5bjsKLSAgICAgICAgICAgIGNvZWZzX2FuYVsgaSBdICo9IGdhaW5fYW5hOworICAgICAg
ICAgICAgY29lZnNbIGkgXSAqPSBnYWluOwogICAgICAgICB9CiAKICAgICAgICAgLyogQXBwbHkg
YmFuZHdpZHRoIGV4cGFuc2lvbiAqLwogICAgICAgICBjaGlycCA9IDAuOTlmIC0gKCAwLjhmICsg
MC4xZiAqIGl0ZXIgKSAqICggbWF4YWJzIC0gbGltaXQgKSAvICggbWF4YWJzICogKCBpbmQgKyAx
ICkgKTsKLSAgICAgICAgc2lsa19id2V4cGFuZGVyX0ZMUCggY29lZnNfc3luLCBvcmRlciwgY2hp
cnAgKTsKLSAgICAgICAgc2lsa19id2V4cGFuZGVyX0ZMUCggY29lZnNfYW5hLCBvcmRlciwgY2hp
cnAgKTsKKyAgICAgICAgc2lsa19id2V4cGFuZGVyX0ZMUCggY29lZnMsIG9yZGVyLCBjaGlycCAp
OwogCiAgICAgICAgIC8qIENvbnZlcnQgdG8gbW9uaWMgd2FycGVkIGNvZWZmaWNpZW50cyAqLwog
ICAgICAgICBmb3IoIGkgPSBvcmRlciAtIDE7IGkgPiAwOyBpLS0gKSB7Ci0gICAgICAgICAgICBj
b2Vmc19zeW5bIGkgLSAxIF0gLT0gbGFtYmRhICogY29lZnNfc3luWyBpIF07Ci0gICAgICAgICAg
ICBjb2Vmc19hbmFbIGkgLSAxIF0gLT0gbGFtYmRhICogY29lZnNfYW5hWyBpIF07CisgICAgICAg
ICAgICBjb2Vmc1sgaSAtIDEgXSAtPSBsYW1iZGEgKiBjb2Vmc1sgaSBdOwogICAgICAgICB9Ci0g
ICAgICAgIGdhaW5fc3luID0gKCAxLjBmIC0gbGFtYmRhICogbGFtYmRhICkgLyAoIDEuMGYgKyBs
YW1iZGEgKiBjb2Vmc19zeW5bIDAgXSApOwotICAgICAgICBnYWluX2FuYSA9ICggMS4wZiAtIGxh
bWJkYSAqIGxhbWJkYSApIC8gKCAxLjBmICsgbGFtYmRhICogY29lZnNfYW5hWyAwIF0gKTsKKyAg
ICAgICAgZ2FpbiA9ICggMS4wZiAtIGxhbWJkYSAqIGxhbWJkYSApIC8gKCAxLjBmICsgbGFtYmRh
ICogY29lZnNbIDAgXSApOwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsK
LSAgICAgICAgICAgIGNvZWZzX3N5blsgaSBdICo9IGdhaW5fc3luOwotICAgICAgICAgICAgY29l
ZnNfYW5hWyBpIF0gKj0gZ2Fpbl9hbmE7CisgICAgICAgICAgICBjb2Vmc1sgaSBdICo9IGdhaW47
CiAgICAgICAgIH0KICAgICB9CiAgICAgc2lsa19hc3NlcnQoIDAgKTsKIH0KIAorc3RhdGljIE9Q
VVNfSU5MSU5FIHZvaWQgbGltaXRfY29lZnMoCisgICAgc2lsa19mbG9hdCAgICAgICAgICAgKmNv
ZWZzLAorICAgIHNpbGtfZmxvYXQgICAgICAgICAgIGxpbWl0LAorICAgIG9wdXNfaW50ICAgICAg
ICAgICAgIG9yZGVyCispIHsKKyAgICBvcHVzX2ludCAgIGksIGl0ZXIsIGluZCA9IDA7CisgICAg
c2lsa19mbG9hdCB0bXAsIG1heGFicywgY2hpcnA7CisKKyAgICBmb3IoIGl0ZXIgPSAwOyBpdGVy
IDwgMTA7IGl0ZXIrKyApIHsKKyAgICAgICAgLyogRmluZCBtYXhpbXVtIGFic29sdXRlIHZhbHVl
ICovCisgICAgICAgIG1heGFicyA9IC0xLjBmOworICAgICAgICBmb3IoIGkgPSAwOyBpIDwgb3Jk
ZXI7IGkrKyApIHsKKyAgICAgICAgICAgIHRtcCA9IHNpbGtfYWJzX2Zsb2F0KCBjb2Vmc1sgaSBd
ICk7CisgICAgICAgICAgICBpZiggdG1wID4gbWF4YWJzICkgeworICAgICAgICAgICAgICAgIG1h
eGFicyA9IHRtcDsKKyAgICAgICAgICAgICAgICBpbmQgPSBpOworICAgICAgICAgICAgfQorICAg
ICAgICB9CisgICAgICAgIGlmKCBtYXhhYnMgPD0gbGltaXQgKSB7CisgICAgICAgICAgICAvKiBD
b2VmZmljaWVudHMgYXJlIHdpdGhpbiByYW5nZSAtIGRvbmUgKi8KKyAgICAgICAgICAgIHJldHVy
bjsKKyAgICAgICAgfQorCisgICAgICAgIC8qIEFwcGx5IGJhbmR3aWR0aCBleHBhbnNpb24gKi8K
KyAgICAgICAgY2hpcnAgPSAwLjk5ZiAtICggMC44ZiArIDAuMWYgKiBpdGVyICkgKiAoIG1heGFi
cyAtIGxpbWl0ICkgLyAoIG1heGFicyAqICggaW5kICsgMSApICk7CisgICAgICAgIHNpbGtfYndl
eHBhbmRlcl9GTFAoIGNvZWZzLCBvcmRlciwgY2hpcnAgKTsKKyAgICB9CisgICAgc2lsa19hc3Nl
cnQoIDAgKTsKK30KKwogLyogQ29tcHV0ZSBub2lzZSBzaGFwaW5nIGNvZWZmaWNpZW50cyBhbmQg
aW5pdGlhbCBnYWluIHZhbHVlcyAqLwogdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZM
UCgKICAgICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQICAgICAgICAgICpwc0VuYywgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0ZSBGTFAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwpAQCAtMTMzLDEyICsxNTIsMTMgQEAgdm9pZCBzaWxrX25vaXNlX3No
YXBlX2FuYWx5c2lzX0ZMUCgKICkKIHsKICAgICBzaWxrX3NoYXBlX3N0YXRlX0ZMUCAqcHNTaGFw
ZVN0ID0gJnBzRW5jLT5zU2hhcGU7Ci0gICAgb3B1c19pbnQgICAgIGssIG5TYW1wbGVzOwotICAg
IHNpbGtfZmxvYXQgICBTTlJfYWRqX2RCLCBIYXJtQm9vc3QsIEhhcm1TaGFwZUdhaW4sIFRpbHQ7
Ci0gICAgc2lsa19mbG9hdCAgIG5yZywgcHJlX25yZywgbG9nX2VuZXJneSwgbG9nX2VuZXJneV9w
cmV2LCBlbmVyZ3lfdmFyaWF0aW9uOwotICAgIHNpbGtfZmxvYXQgICBkZWx0YSwgQldFeHAxLCBC
V0V4cDIsIGdhaW5fbXVsdCwgZ2Fpbl9hZGQsIHN0cmVuZ3RoLCBiLCB3YXJwaW5nOworICAgIG9w
dXNfaW50ICAgICBrLCBuU2FtcGxlcywgblNlZ3M7CisgICAgc2lsa19mbG9hdCAgIFNOUl9hZGpf
ZEIsIEhhcm1TaGFwZUdhaW4sIFRpbHQ7CisgICAgc2lsa19mbG9hdCAgIG5yZywgbG9nX2VuZXJn
eSwgbG9nX2VuZXJneV9wcmV2LCBlbmVyZ3lfdmFyaWF0aW9uOworICAgIHNpbGtfZmxvYXQgICBC
V0V4cCwgZ2Fpbl9tdWx0LCBnYWluX2FkZCwgc3RyZW5ndGgsIGIsIHdhcnBpbmc7CiAgICAgc2ls
a19mbG9hdCAgIHhfd2luZG93ZWRbIFNIQVBFX0xQQ19XSU5fTUFYIF07CiAgICAgc2lsa19mbG9h
dCAgIGF1dG9fY29yclsgTUFYX1NIQVBFX0xQQ19PUkRFUiArIDEgXTsKKyAgICBzaWxrX2Zsb2F0
ICAgcmNbIE1BWF9TSEFQRV9MUENfT1JERVIgKyAxIF07CiAgICAgY29uc3Qgc2lsa19mbG9hdCAq
eF9wdHIsICpwaXRjaF9yZXNfcHRyOwogCiAgICAgLyogUG9pbnQgdG8gc3RhcnQgb2YgZmlyc3Qg
TFBDIGFuYWx5c2lzIGJsb2NrICovCkBAIC0xNzYsMTQgKzE5NiwxNCBAQCB2b2lkIHNpbGtfbm9p
c2Vfc2hhcGVfYW5hbHlzaXNfRkxQKAogICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25h
bFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7CiAgICAgICAgIC8qIEluaXRpYWxseSBzZXQgdG8gMDsg
bWF5IGJlIG92ZXJydWxlZCBpbiBwcm9jZXNzX2dhaW5zKC4uKSAqLwogICAgICAgICBwc0VuYy0+
c0Ntbi5pbmRpY2VzLnF1YW50T2Zmc2V0VHlwZSA9IDA7Ci0gICAgICAgIHBzRW5jQ3RybC0+c3Bh
cnNlbmVzcyA9IDAuMGY7CiAgICAgfSBlbHNlIHsKICAgICAgICAgLyogU3BhcnNlbmVzcyBtZWFz
dXJlLCBiYXNlZCBvbiByZWxhdGl2ZSBmbHVjdHVhdGlvbnMgb2YgZW5lcmd5IHBlciAyIG1pbGxp
c2Vjb25kcyAqLwogICAgICAgICBuU2FtcGxlcyA9IDIgKiBwc0VuYy0+c0Ntbi5mc19rSHo7CiAg
ICAgICAgIGVuZXJneV92YXJpYXRpb24gPSAwLjBmOwogICAgICAgICBsb2dfZW5lcmd5X3ByZXYg
ID0gMC4wZjsKICAgICAgICAgcGl0Y2hfcmVzX3B0ciA9IHBpdGNoX3JlczsKLSAgICAgICAgZm9y
KCBrID0gMDsgayA8IHNpbGtfU01VTEJCKCBTVUJfRlJBTUVfTEVOR1RIX01TLCBwc0VuYy0+c0Nt
bi5uYl9zdWJmciApIC8gMjsgaysrICkgeworICAgICAgICBuU2VncyA9IHNpbGtfU01VTEJCKCBT
VUJfRlJBTUVfTEVOR1RIX01TLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciApIC8gMjsKKyAgICAgICAg
Zm9yKCBrID0gMDsgayA8IG5TZWdzOyBrKysgKSB7CiAgICAgICAgICAgICBucmcgPSAoIHNpbGtf
ZmxvYXQgKW5TYW1wbGVzICsgKCBzaWxrX2Zsb2F0IClzaWxrX2VuZXJneV9GTFAoIHBpdGNoX3Jl
c19wdHIsIG5TYW1wbGVzICk7CiAgICAgICAgICAgICBsb2dfZW5lcmd5ID0gc2lsa19sb2cyKCBu
cmcgKTsKICAgICAgICAgICAgIGlmKCBrID4gMCApIHsKQEAgLTE5MiwxNyArMjEyLDEzIEBAIHZv
aWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAoCiAgICAgICAgICAgICBsb2dfZW5lcmd5
X3ByZXYgPSBsb2dfZW5lcmd5OwogICAgICAgICAgICAgcGl0Y2hfcmVzX3B0ciArPSBuU2FtcGxl
czsKICAgICAgICAgfQotICAgICAgICBwc0VuY0N0cmwtPnNwYXJzZW5lc3MgPSBzaWxrX3NpZ21v
aWQoIDAuNGYgKiAoIGVuZXJneV92YXJpYXRpb24gLSA1LjBmICkgKTsKIAogICAgICAgICAvKiBT
ZXQgcXVhbnRpemF0aW9uIG9mZnNldCBkZXBlbmRpbmcgb24gc3BhcnNlbmVzcyBtZWFzdXJlICov
Ci0gICAgICAgIGlmKCBwc0VuY0N0cmwtPnNwYXJzZW5lc3MgPiBTUEFSU0VORVNTX1RIUkVTSE9M
RF9RTlRfT0ZGU0VUICkgeworICAgICAgICBpZiggZW5lcmd5X3ZhcmlhdGlvbiA+IEVORVJHWV9W
QVJJQVRJT05fVEhSRVNIT0xEX1FOVF9PRkZTRVQgKiAoblNlZ3MtMSkgKSB7CiAgICAgICAgICAg
ICBwc0VuYy0+c0Ntbi5pbmRpY2VzLnF1YW50T2Zmc2V0VHlwZSA9IDA7CiAgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2VzLnF1YW50T2Zmc2V0VHlwZSA9IDE7
CiAgICAgICAgIH0KLQotICAgICAgICAvKiBJbmNyZWFzZSBjb2RpbmcgU05SIGZvciBzcGFyc2Ug
c2lnbmFscyAqLwotICAgICAgICBTTlJfYWRqX2RCICs9IFNQQVJTRV9TTlJfSU5DUl9kQiAqICgg
cHNFbmNDdHJsLT5zcGFyc2VuZXNzIC0gMC41ZiApOwogICAgIH0KIAogICAgIC8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqLwpAQCAtMjEwLDE5ICsyMjYsMTAgQEAgdm9pZCBzaWxrX25v
aXNlX3NoYXBlX2FuYWx5c2lzX0ZMUCgKICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KICAgICAvKiBNb3JlIEJXRSBmb3Igc2lnbmFscyB3aXRoIGhpZ2ggcHJlZGljdGlvbiBn
YWluICovCiAgICAgc3RyZW5ndGggPSBGSU5EX1BJVENIX1dISVRFX05PSVNFX0ZSQUNUSU9OICog
cHNFbmNDdHJsLT5wcmVkR2FpbjsgICAgICAgICAgIC8qIGJldHdlZW4gMC4wIGFuZCAxLjAgKi8K
LSAgICBCV0V4cDEgPSBCV0V4cDIgPSBCQU5EV0lEVEhfRVhQQU5TSU9OIC8gKCAxLjBmICsgc3Ry
ZW5ndGggKiBzdHJlbmd0aCApOwotICAgIGRlbHRhICA9IExPV19SQVRFX0JBTkRXSURUSF9FWFBB
TlNJT05fREVMVEEgKiAoIDEuMGYgLSAwLjc1ZiAqIHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxpdHkg
KTsKLSAgICBCV0V4cDEgLT0gZGVsdGE7Ci0gICAgQldFeHAyICs9IGRlbHRhOwotICAgIC8qIEJX
RXhwMSB3aWxsIGJlIGFwcGxpZWQgYWZ0ZXIgQldFeHAyLCBzbyBtYWtlIGl0IHJlbGF0aXZlICov
Ci0gICAgQldFeHAxIC89IEJXRXhwMjsKLQotICAgIGlmKCBwc0VuYy0+c0Ntbi53YXJwaW5nX1Ex
NiA+IDAgKSB7Ci0gICAgICAgIC8qIFNsaWdodGx5IG1vcmUgd2FycGluZyBpbiBhbmFseXNpcyB3
aWxsIG1vdmUgcXVhbnRpemF0aW9uIG5vaXNlIHVwIGluIGZyZXF1ZW5jeSwgd2hlcmUgaXQncyBi
ZXR0ZXIgbWFza2VkICovCi0gICAgICAgIHdhcnBpbmcgPSAoc2lsa19mbG9hdClwc0VuYy0+c0Nt
bi53YXJwaW5nX1ExNiAvIDY1NTM2LjBmICsgMC4wMWYgKiBwc0VuY0N0cmwtPmNvZGluZ19xdWFs
aXR5OwotICAgIH0gZWxzZSB7Ci0gICAgICAgIHdhcnBpbmcgPSAwLjBmOwotICAgIH0KKyAgICBC
V0V4cCA9IEJBTkRXSURUSF9FWFBBTlNJT04gLyAoIDEuMGYgKyBzdHJlbmd0aCAqIHN0cmVuZ3Ro
ICk7CisKKyAgICAvKiBTbGlnaHRseSBtb3JlIHdhcnBpbmcgaW4gYW5hbHlzaXMgd2lsbCBtb3Zl
IHF1YW50aXphdGlvbiBub2lzZSB1cCBpbiBmcmVxdWVuY3ksIHdoZXJlIGl0J3MgYmV0dGVyIG1h
c2tlZCAqLworICAgIHdhcnBpbmcgPSAoc2lsa19mbG9hdClwc0VuYy0+c0Ntbi53YXJwaW5nX1Ex
NiAvIDY1NTM2LjBmICsgMC4wMWYgKiBwc0VuY0N0cmwtPmNvZGluZ19xdWFsaXR5OwogCiAgICAg
LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIENv
bXB1dGUgbm9pc2Ugc2hhcGluZyBBUiBjb2VmcyBhbmQgZ2FpbnMgKi8KQEAgLTI1MiwzNyArMjU5
LDI4IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAoCiAgICAgICAgIH0KIAog
ICAgICAgICAvKiBBZGQgd2hpdGUgbm9pc2UsIGFzIGEgZnJhY3Rpb24gb2YgZW5lcmd5ICovCi0g
ICAgICAgIGF1dG9fY29yclsgMCBdICs9IGF1dG9fY29yclsgMCBdICogU0hBUEVfV0hJVEVfTk9J
U0VfRlJBQ1RJT047CisgICAgICAgIGF1dG9fY29yclsgMCBdICs9IGF1dG9fY29yclsgMCBdICog
U0hBUEVfV0hJVEVfTk9JU0VfRlJBQ1RJT04gKyAxLjBmOwogCiAgICAgICAgIC8qIENvbnZlcnQg
Y29ycmVsYXRpb25zIHRvIHByZWRpY3Rpb24gY29lZmZpY2llbnRzLCBhbmQgY29tcHV0ZSByZXNp
ZHVhbCBlbmVyZ3kgKi8KLSAgICAgICAgbnJnID0gc2lsa19sZXZpbnNvbmR1cmJpbl9GTFAoICZw
c0VuY0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgYXV0b19jb3JyLCBwc0Vu
Yy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAgbnJnID0gc2lsa19zY2h1cl9GTFAo
IHJjLCBhdXRvX2NvcnIsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOworICAgICAgICBz
aWxrX2syYV9GTFAoICZwc0VuY0N0cmwtPkFSWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCBy
YywgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CiAgICAgICAgIHBzRW5jQ3RybC0+R2Fp
bnNbIGsgXSA9ICggc2lsa19mbG9hdCApc3FydCggbnJnICk7CiAKICAgICAgICAgaWYoIHBzRW5j
LT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKICAgICAgICAgICAgIC8qIEFkanVzdCBnYWluIGZv
ciB3YXJwaW5nICovCi0gICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zWyBrIF0gKj0gd2FycGVk
X2dhaW4oICZwc0VuY0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgd2FycGlu
ZywgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAgICAgICAgICBwc0VuY0N0cmwt
PkdhaW5zWyBrIF0gKj0gd2FycGVkX2dhaW4oICZwc0VuY0N0cmwtPkFSWyBrICogTUFYX1NIQVBF
X0xQQ19PUkRFUiBdLCB3YXJwaW5nLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKICAg
ICAgICAgfQogCiAgICAgICAgIC8qIEJhbmR3aWR0aCBleHBhbnNpb24gZm9yIHN5bnRoZXNpcyBm
aWx0ZXIgc2hhcGluZyAqLwotICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfRkxQKCAmcHNFbmNDdHJs
LT5BUjJbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENP
cmRlciwgQldFeHAyICk7Ci0KLSAgICAgICAgLyogQ29tcHV0ZSBub2lzZSBzaGFwaW5nIGZpbHRl
ciBjb2VmZmljaWVudHMgKi8KLSAgICAgICAgc2lsa19tZW1jcHkoCi0gICAgICAgICAgICAmcHNF
bmNDdHJsLT5BUjFbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sCi0gICAgICAgICAgICAmcHNF
bmNDdHJsLT5BUjJbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sCi0gICAgICAgICAgICBwc0Vu
Yy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKiBzaXplb2YoIHNpbGtfZmxvYXQgKSApOworICAgICAg
ICBzaWxrX2J3ZXhwYW5kZXJfRkxQKCAmcHNFbmNDdHJsLT5BUlsgayAqIE1BWF9TSEFQRV9MUENf
T1JERVIgXSwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBCV0V4cCApOwogCi0gICAgICAg
IC8qIEJhbmR3aWR0aCBleHBhbnNpb24gZm9yIGFuYWx5c2lzIGZpbHRlciBzaGFwaW5nICovCi0g
ICAgICAgIHNpbGtfYndleHBhbmRlcl9GTFAoICZwc0VuY0N0cmwtPkFSMVsgayAqIE1BWF9TSEFQ
RV9MUENfT1JERVIgXSwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBCV0V4cDEgKTsKLQot
ICAgICAgICAvKiBSYXRpbyBvZiBwcmVkaWN0aW9uIGdhaW5zLCBpbiBlbmVyZ3kgZG9tYWluICov
Ci0gICAgICAgIHByZV9ucmcgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9GTFAoICZwc0Vu
Y0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgcHNFbmMtPnNDbW4uc2hhcGlu
Z0xQQ09yZGVyICk7Ci0gICAgICAgIG5yZyAgICAgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fp
bl9GTFAoICZwc0VuY0N0cmwtPkFSMVsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgcHNFbmMt
PnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7Ci0gICAgICAgIHBzRW5jQ3RybC0+R2FpbnNQcmVbIGsg
XSA9IDEuMGYgLSAwLjdmICogKCAxLjBmIC0gcHJlX25yZyAvIG5yZyApOwotCi0gICAgICAgIC8q
IENvbnZlcnQgdG8gbW9uaWMgd2FycGVkIHByZWRpY3Rpb24gY29lZmZpY2llbnRzIGFuZCBsaW1p
dCBhYnNvbHV0ZSB2YWx1ZXMgKi8KLSAgICAgICAgd2FycGVkX3RydWUybW9uaWNfY29lZnMoICZw
c0VuY0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgJnBzRW5jQ3RybC0+QVIx
WyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLAotICAgICAgICAgICAgd2FycGluZywgMy45OTlm
LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAgaWYoIHBzRW5jLT5zQ21u
LndhcnBpbmdfUTE2ID4gMCApIHsKKyAgICAgICAgICAgIC8qIENvbnZlcnQgdG8gbW9uaWMgd2Fy
cGVkIHByZWRpY3Rpb24gY29lZmZpY2llbnRzIGFuZCBsaW1pdCBhYnNvbHV0ZSB2YWx1ZXMgKi8K
KyAgICAgICAgICAgIHdhcnBlZF90cnVlMm1vbmljX2NvZWZzKCAmcHNFbmNDdHJsLT5BUlsgayAq
IE1BWF9TSEFQRV9MUENfT1JERVIgXSwgd2FycGluZywgMy45OTlmLCBwc0VuYy0+c0Ntbi5zaGFw
aW5nTFBDT3JkZXIgKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIC8qIExpbWl0IGFi
c29sdXRlIHZhbHVlcyAqLworICAgICAgICAgICAgbGltaXRfY29lZnMoICZwc0VuY0N0cmwtPkFS
WyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAzLjk5OWYsIHBzRW5jLT5zQ21uLnNoYXBpbmdM
UENPcmRlciApOworICAgICAgICB9CiAgICAgfQogCiAgICAgLyoqKioqKioqKioqKioqKioqLwpA
QCAtMjk2LDExICsyOTQsNiBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQKAog
ICAgICAgICBwc0VuY0N0cmwtPkdhaW5zWyBrIF0gKz0gZ2Fpbl9hZGQ7CiAgICAgfQogCi0gICAg
Z2Fpbl9tdWx0ID0gMS4wZiArIElOUFVUX1RJTFQgKyBwc0VuY0N0cmwtPmNvZGluZ19xdWFsaXR5
ICogSElHSF9SQVRFX0lOUFVUX1RJTFQ7Ci0gICAgZm9yKCBrID0gMDsgayA8IHBzRW5jLT5zQ21u
Lm5iX3N1YmZyOyBrKysgKSB7Ci0gICAgICAgIHBzRW5jQ3RybC0+R2FpbnNQcmVbIGsgXSAqPSBn
YWluX211bHQ7Ci0gICAgfQotCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKi8KICAgICAvKiBDb250cm9sIGxvdy1mcmVxdWVuY3kgc2hhcGluZyBh
bmQgbm9pc2UgdGlsdCAqLwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKiovCkBAIC0zMzEsMTIgKzMyNCw2IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFw
ZV9hbmFseXNpc19GTFAoCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAg
LyogSEFSTU9OSUMgU0hBUElORyBDT05UUk9MICovCiAgICAgLyoqKioqKioqKioqKioqKioqKioq
KioqKioqKiovCi0gICAgLyogQ29udHJvbCBib29zdGluZyBvZiBoYXJtb25pYyBmcmVxdWVuY2ll
cyAqLwotICAgIEhhcm1Cb29zdCA9IExPV19SQVRFX0hBUk1PTklDX0JPT1NUICogKCAxLjBmIC0g
cHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eSApICogcHNFbmMtPkxUUENvcnI7Ci0KLSAgICAvKiBN
b3JlIGhhcm1vbmljIGJvb3N0IGZvciBub2lzeSBpbnB1dCBzaWduYWxzICovCi0gICAgSGFybUJv
b3N0ICs9IExPV19JTlBVVF9RVUFMSVRZX0hBUk1PTklDX0JPT1NUICogKCAxLjBmIC0gcHNFbmND
dHJsLT5pbnB1dF9xdWFsaXR5ICk7Ci0KICAgICBpZiggVVNFX0hBUk1fU0hBUElORyAmJiBwc0Vu
Yy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7CiAgICAgICAgIC8q
IEhhcm1vbmljIG5vaXNlIHNoYXBpbmcgKi8KICAgICAgICAgSGFybVNoYXBlR2FpbiA9IEhBUk1P
TklDX1NIQVBJTkc7CkBAIC0zNTUsOCArMzQyLDYgQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2Fu
YWx5c2lzX0ZMUCgKICAgICAvKiBTbW9vdGggb3ZlciBzdWJmcmFtZXMgKi8KICAgICAvKioqKioq
KioqKioqKioqKioqKioqKioqKi8KICAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmMtPnNDbW4ubmJf
c3ViZnI7IGsrKyApIHsKLSAgICAgICAgcHNTaGFwZVN0LT5IYXJtQm9vc3Rfc210aCAgICAgKz0g
U1VCRlJfU01USF9DT0VGICogKCBIYXJtQm9vc3QgLSBwc1NoYXBlU3QtPkhhcm1Cb29zdF9zbXRo
ICk7Ci0gICAgICAgIHBzRW5jQ3RybC0+SGFybUJvb3N0WyBrIF0gICAgICA9IHBzU2hhcGVTdC0+
SGFybUJvb3N0X3NtdGg7CiAgICAgICAgIHBzU2hhcGVTdC0+SGFybVNoYXBlR2Fpbl9zbXRoICs9
IFNVQkZSX1NNVEhfQ09FRiAqICggSGFybVNoYXBlR2FpbiAtIHBzU2hhcGVTdC0+SGFybVNoYXBl
R2Fpbl9zbXRoICk7CiAgICAgICAgIHBzRW5jQ3RybC0+SGFybVNoYXBlR2FpblsgayBdICA9IHBz
U2hhcGVTdC0+SGFybVNoYXBlR2Fpbl9zbXRoOwogICAgICAgICBwc1NoYXBlU3QtPlRpbHRfc210
aCAgICAgICAgICArPSBTVUJGUl9TTVRIX0NPRUYgKiAoIFRpbHQgLSBwc1NoYXBlU3QtPlRpbHRf
c210aCApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3BpdGNoX2FuYWx5c2lzX2NvcmVfRkxQLmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZmxvYXQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYwppbmRleCBkMGU2MzdhMjlkYzk1
ZDVlNjNhZGUxNGQ5OGY5ZTNmNGNlN2UwYmQ4Li5iMzcxNjkzNzhiMWY1MjU2NjBmY2NlZjY1Zjhh
MmZiNDMxZWNjODA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcGl0Y2hfYW5hbHlzaXNfY29yZV9G
TFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZmxvYXQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYwpAQCAtMTU5LDcg
KzE1OSw3IEBAIG9wdXNfaW50IHNpbGtfcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAoICAgICAgLyog
TyAgICBWb2ljaW5nIGVzdGltYXRlOiAwIHZvaWNlZCwKIAogICAgIC8qIExvdy1wYXNzIGZpbHRl
ciAqLwogICAgIGZvciggaSA9IGZyYW1lX2xlbmd0aF80a0h6IC0gMTsgaSA+IDA7IGktLSApIHsK
LSAgICAgICAgZnJhbWVfNGtIelsgaSBdICs9IGZyYW1lXzRrSHpbIGkgLSAxIF07CisgICAgICAg
IGZyYW1lXzRrSHpbIGkgXSA9IHNpbGtfQUREX1NBVDE2KCBmcmFtZV80a0h6WyBpIF0sIGZyYW1l
XzRrSHpbIGkgLSAxIF0gKTsKICAgICB9CiAKICAgICAvKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZmxvYXQvcHJlZmlsdGVyX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3ByZWZpbHRl
cl9GTFAuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGJjMzJmYjQxMDQwZWY3YjRm
MGYxMjI0Njg5YmIwYjA0NDhlYzA1MC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcHJlZmlsdGVyX0ZMUC5jCisrKyAvZGV2L251bGwKQEAg
LTEsMjA2ICswLDAgQEAKLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotQ29weXJpZ2h0IChjKSAyMDA2LTIwMTEs
IFNreXBlIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi1SZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLW1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotYXJlIG1ldDoKLS0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAotdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLS0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLW5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLWRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0tIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJ
RVRGIFRydXN0LCBub3IgdGhlCi1uYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQotcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMg
c29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCi1wZXJtaXNzaW9uLgotVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRS
SUJVVE9SUyAiQVMgSVMiCi1BTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi1JTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFCi1MSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi1DT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi1J
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTgotQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLUFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCi1QT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KLSoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotCi0jaWZkZWYgSEFWRV9DT05G
SUdfSAotI2luY2x1ZGUgImNvbmZpZy5oIgotI2VuZGlmCi0KLSNpbmNsdWRlICJtYWluX0ZMUC5o
IgotI2luY2x1ZGUgInR1bmluZ19wYXJhbWV0ZXJzLmgiCi0KLS8qCi0qIFByZWZpbHRlciBmb3Ig
ZmluZGluZyBRdWFudGl6ZXIgaW5wdXQgc2lnbmFsCi0qLwotc3RhdGljIE9QVVNfSU5MSU5FIHZv
aWQgc2lsa19wcmVmaWx0X0ZMUCgKLSAgICBzaWxrX3ByZWZpbHRlcl9zdGF0ZV9GTFAgICAgKlAs
ICAgICAgICAgICAgICAgICAvKiBJL08gc3RhdGUgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAg
ICAgICAgICAgc3RfcmVzW10sICAgICAgICAgICAvKiBJICovCi0gICAgc2lsa19mbG9hdCAgICAg
ICAgICAgICAgICAgIHh3W10sICAgICAgICAgICAgICAgLyogTyAqLwotICAgIHNpbGtfZmxvYXQg
ICAgICAgICAgICAgICAgICAqSGFybVNoYXBlRklSLCAgICAgIC8qIEkgKi8KLSAgICBzaWxrX2Zs
b2F0ICAgICAgICAgICAgICAgICAgVGlsdCwgICAgICAgICAgICAgICAvKiBJICovCi0gICAgc2ls
a19mbG9hdCAgICAgICAgICAgICAgICAgIExGX01BX3NocCwgICAgICAgICAgLyogSSAqLwotICAg
IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBMRl9BUl9zaHAsICAgICAgICAgIC8qIEkgKi8K
LSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbGFnLCAgICAgICAgICAgICAgICAvKiBJ
ICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0aCAgICAgICAgICAgICAg
LyogSSAqLwotKTsKLQotc3RhdGljIHZvaWQgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRl
cl9GTFAoCi0gICAgICAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgc3RhdGVbXSwgICAg
ICAgICAgICAvKiBJL08gIFN0YXRlIFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgICAgICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgIHJlc1tdLCAgICAgICAgICAg
ICAgLyogTyAgICBSZXNpZHVhbCBzaWduYWwgW2xlbmd0aF0gICAgICAgICAgICAgICAgKi8KLSAg
ICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICBjb2VmW10sICAgICAgICAgICAgIC8q
IEkgICAgQ29lZmZpY2llbnRzIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgaW5wdXRbXSwgICAgICAgICAgICAvKiBJICAg
IElucHV0IHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNp
bGtfZmxvYXQgICAgICAgICAgICAgICAgIGxhbWJkYSwgICAgICAgICAgICAgLyogSSAgICBXYXJw
aW5nIGZhY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgICAgICBsZW5ndGgsICAgICAgICAgICAgIC8qIEkgICAgTGVuZ3RoIG9m
IGlucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAo
ZXZlbikgICAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50ICAgICBuLCBp
OwotICAgIHNpbGtfZmxvYXQgICBhY2MsIHRtcDEsIHRtcDI7Ci0KLSAgICAvKiBPcmRlciBtdXN0
IGJlIGV2ZW4gKi8KLSAgICBzaWxrX2Fzc2VydCggKCBvcmRlciAmIDEgKSA9PSAwICk7Ci0KLSAg
ICBmb3IoIG4gPSAwOyBuIDwgbGVuZ3RoOyBuKysgKSB7Ci0gICAgICAgIC8qIE91dHB1dCBvZiBs
b3dwYXNzIHNlY3Rpb24gKi8KLSAgICAgICAgdG1wMiA9IHN0YXRlWyAwIF0gKyBsYW1iZGEgKiBz
dGF0ZVsgMSBdOwotICAgICAgICBzdGF0ZVsgMCBdID0gaW5wdXRbIG4gXTsKLSAgICAgICAgLyog
T3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwotICAgICAgICB0bXAxID0gc3RhdGVbIDEgXSAr
IGxhbWJkYSAqICggc3RhdGVbIDIgXSAtIHRtcDIgKTsKLSAgICAgICAgc3RhdGVbIDEgXSA9IHRt
cDI7Ci0gICAgICAgIGFjYyA9IGNvZWZbIDAgXSAqIHRtcDI7Ci0gICAgICAgIC8qIExvb3Agb3Zl
ciBhbGxwYXNzIHNlY3Rpb25zICovCi0gICAgICAgIGZvciggaSA9IDI7IGkgPCBvcmRlcjsgaSAr
PSAyICkgewotICAgICAgICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwotICAg
ICAgICAgICAgdG1wMiA9IHN0YXRlWyBpIF0gKyBsYW1iZGEgKiAoIHN0YXRlWyBpICsgMSBdIC0g
dG1wMSApOwotICAgICAgICAgICAgc3RhdGVbIGkgXSA9IHRtcDE7Ci0gICAgICAgICAgICBhY2Mg
Kz0gY29lZlsgaSAtIDEgXSAqIHRtcDE7Ci0gICAgICAgICAgICAvKiBPdXRwdXQgb2YgYWxscGFz
cyBzZWN0aW9uICovCi0gICAgICAgICAgICB0bXAxID0gc3RhdGVbIGkgKyAxIF0gKyBsYW1iZGEg
KiAoIHN0YXRlWyBpICsgMiBdIC0gdG1wMiApOwotICAgICAgICAgICAgc3RhdGVbIGkgKyAxIF0g
PSB0bXAyOwotICAgICAgICAgICAgYWNjICs9IGNvZWZbIGkgXSAqIHRtcDI7Ci0gICAgICAgIH0K
LSAgICAgICAgc3RhdGVbIG9yZGVyIF0gPSB0bXAxOwotICAgICAgICBhY2MgKz0gY29lZlsgb3Jk
ZXIgLSAxIF0gKiB0bXAxOwotICAgICAgICByZXNbIG4gXSA9IGlucHV0WyBuIF0gLSBhY2M7Ci0g
ICAgfQotfQotCi0vKgotKiBzaWxrX3ByZWZpbHRlci4gTWFpbiBwcmVmaWx0ZXIgZnVuY3Rpb24K
LSovCi12b2lkIHNpbGtfcHJlZmlsdGVyX0ZMUCgKLSAgICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQ
ICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5j
b2RlciBzdGF0ZSBGTFAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNp
bGtfZW5jb2Rlcl9jb250cm9sX0ZMUCAgKnBzRW5jQ3RybCwgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBFbmNvZGVyIGNvbnRyb2wgRkxQICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICB4d1tdLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBPICAgIFdlaWdodGVkIHNpZ25hbCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIHhbXSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3BlZWNoIHNpZ25hbCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIHNpbGtfcHJlZmlsdGVyX3N0
YXRlX0ZMUCAqUCA9ICZwc0VuYy0+c1ByZWZpbHQ7Ci0gICAgb3B1c19pbnQgICBqLCBrLCBsYWc7
Ci0gICAgc2lsa19mbG9hdCBIYXJtU2hhcGVHYWluLCBUaWx0LCBMRl9NQV9zaHAsIExGX0FSX3No
cDsKLSAgICBzaWxrX2Zsb2F0IEJbIDIgXTsKLSAgICBjb25zdCBzaWxrX2Zsb2F0ICpBUjFfc2hw
OwotICAgIGNvbnN0IHNpbGtfZmxvYXQgKnB4OwotICAgIHNpbGtfZmxvYXQgKnB4dzsKLSAgICBz
aWxrX2Zsb2F0IEhhcm1TaGFwZUZJUlsgMyBdOwotICAgIHNpbGtfZmxvYXQgc3RfcmVzWyBNQVhf
U1VCX0ZSQU1FX0xFTkdUSCArIE1BWF9MUENfT1JERVIgXTsKLQotICAgIC8qIFNldCB1cCBwb2lu
dGVycyAqLwotICAgIHB4ICA9IHg7Ci0gICAgcHh3ID0geHc7Ci0gICAgbGFnID0gUC0+bGFnUHJl
djsKLSAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGsrKyApIHsKLSAg
ICAgICAgLyogVXBkYXRlIFZhcmlhYmxlcyB0aGF0IGNoYW5nZSBwZXIgc3ViIGZyYW1lICovCi0g
ICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQg
KSB7Ci0gICAgICAgICAgICBsYWcgPSBwc0VuY0N0cmwtPnBpdGNoTFsgayBdOwotICAgICAgICB9
Ci0KLSAgICAgICAgLyogTm9pc2Ugc2hhcGUgcGFyYW1ldGVycyAqLwotICAgICAgICBIYXJtU2hh
cGVHYWluID0gcHNFbmNDdHJsLT5IYXJtU2hhcGVHYWluWyBrIF0gKiAoIDEuMGYgLSBwc0VuY0N0
cmwtPkhhcm1Cb29zdFsgayBdICk7Ci0gICAgICAgIEhhcm1TaGFwZUZJUlsgMCBdID0gMC4yNWYg
ICAgICAgICAgICAgICAqIEhhcm1TaGFwZUdhaW47Ci0gICAgICAgIEhhcm1TaGFwZUZJUlsgMSBd
ID0gMzI3NjcuMGYgLyA2NTUzNi4wZiAqIEhhcm1TaGFwZUdhaW47Ci0gICAgICAgIEhhcm1TaGFw
ZUZJUlsgMiBdID0gMC4yNWYgICAgICAgICAgICAgICAqIEhhcm1TaGFwZUdhaW47Ci0gICAgICAg
IFRpbHQgICAgICA9ICBwc0VuY0N0cmwtPlRpbHRbIGsgXTsKLSAgICAgICAgTEZfTUFfc2hwID0g
IHBzRW5jQ3RybC0+TEZfTUFfc2hwWyBrIF07Ci0gICAgICAgIExGX0FSX3NocCA9ICBwc0VuY0N0
cmwtPkxGX0FSX3NocFsgayBdOwotICAgICAgICBBUjFfc2hwICAgPSAmcHNFbmNDdHJsLT5BUjFb
IGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07Ci0KLSAgICAgICAgLyogU2hvcnQgdGVybSBGSVIg
ZmlsdGVyaW5nICovCi0gICAgICAgIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRkxQ
KCBQLT5zQVJfc2hwLCBzdF9yZXMsIEFSMV9zaHAsIHB4LAotICAgICAgICAgICAgKHNpbGtfZmxv
YXQpcHNFbmMtPnNDbW4ud2FycGluZ19RMTYgLyA2NTUzNi4wZiwgcHNFbmMtPnNDbW4uc3ViZnJf
bGVuZ3RoLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKLQotICAgICAgICAvKiBSZWR1
Y2UgKG1haW5seSkgbG93IGZyZXF1ZW5jaWVzIGR1cmluZyBoYXJtb25pYyBlbXBoYXNpcyAqLwot
ICAgICAgICBCWyAwIF0gPSAgcHNFbmNDdHJsLT5HYWluc1ByZVsgayBdOwotICAgICAgICBCWyAx
IF0gPSAtcHNFbmNDdHJsLT5HYWluc1ByZVsgayBdICoKLSAgICAgICAgICAgICggcHNFbmNDdHJs
LT5IYXJtQm9vc3RbIGsgXSAqIEhhcm1TaGFwZUdhaW4gKyBJTlBVVF9USUxUICsgcHNFbmNDdHJs
LT5jb2RpbmdfcXVhbGl0eSAqIEhJR0hfUkFURV9JTlBVVF9USUxUICk7Ci0gICAgICAgIHB4d1sg
MCBdID0gQlsgMCBdICogc3RfcmVzWyAwIF0gKyBCWyAxIF0gKiBQLT5zSGFybUhQOwotICAgICAg
ICBmb3IoIGogPSAxOyBqIDwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoOyBqKysgKSB7Ci0gICAg
ICAgICAgICBweHdbIGogXSA9IEJbIDAgXSAqIHN0X3Jlc1sgaiBdICsgQlsgMSBdICogc3RfcmVz
WyBqIC0gMSBdOwotICAgICAgICB9Ci0gICAgICAgIFAtPnNIYXJtSFAgPSBzdF9yZXNbIHBzRW5j
LT5zQ21uLnN1YmZyX2xlbmd0aCAtIDEgXTsKLQotICAgICAgICBzaWxrX3ByZWZpbHRfRkxQKCBQ
LCBweHcsIHB4dywgSGFybVNoYXBlRklSLCBUaWx0LCBMRl9NQV9zaHAsIExGX0FSX3NocCwgbGFn
LCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGggKTsKLQotICAgICAgICBweCAgKz0gcHNFbmMtPnND
bW4uc3ViZnJfbGVuZ3RoOwotICAgICAgICBweHcgKz0gcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3Ro
OwotICAgIH0KLSAgICBQLT5sYWdQcmV2ID0gcHNFbmNDdHJsLT5waXRjaExbIHBzRW5jLT5zQ21u
Lm5iX3N1YmZyIC0gMSBdOwotfQotCi0vKgotKiBQcmVmaWx0ZXIgZm9yIGZpbmRpbmcgUXVhbnRp
emVyIGlucHV0IHNpZ25hbAotKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfcHJlZmls
dF9GTFAoCi0gICAgc2lsa19wcmVmaWx0ZXJfc3RhdGVfRkxQICAgICpQLCAgICAgICAgICAgICAg
ICAgLyogSS9PIHN0YXRlICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIHN0X3Jl
c1tdLCAgICAgICAgICAgLyogSSAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICB4
d1tdLCAgICAgICAgICAgICAgIC8qIE8gKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
ICAgKkhhcm1TaGFwZUZJUiwgICAgICAvKiBJICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAg
ICAgICAgIFRpbHQsICAgICAgICAgICAgICAgLyogSSAqLwotICAgIHNpbGtfZmxvYXQgICAgICAg
ICAgICAgICAgICBMRl9NQV9zaHAsICAgICAgICAgIC8qIEkgKi8KLSAgICBzaWxrX2Zsb2F0ICAg
ICAgICAgICAgICAgICAgTEZfQVJfc2hwLCAgICAgICAgICAvKiBJICovCi0gICAgb3B1c19pbnQg
ICAgICAgICAgICAgICAgICAgIGxhZywgICAgICAgICAgICAgICAgLyogSSAqLwotICAgIG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgICBsZW5ndGggICAgICAgICAgICAgIC8qIEkgKi8KLSkKLXsK
LSAgICBvcHVzX2ludCAgIGk7Ci0gICAgb3B1c19pbnQgICBpZHgsIExUUF9zaHBfYnVmX2lkeDsK
LSAgICBzaWxrX2Zsb2F0IG5fVGlsdCwgbl9MRiwgbl9MVFA7Ci0gICAgc2lsa19mbG9hdCBzTEZf
QVJfc2hwLCBzTEZfTUFfc2hwOwotICAgIHNpbGtfZmxvYXQgKkxUUF9zaHBfYnVmOwotCi0gICAg
LyogVG8gc3BlZWQgdXAgdXNlIHRlbXAgdmFyaWFibGVzIGluc3RlYWQgb2YgdXNpbmcgdGhlIHN0
cnVjdCAqLwotICAgIExUUF9zaHBfYnVmICAgICA9IFAtPnNMVFBfc2hwOwotICAgIExUUF9zaHBf
YnVmX2lkeCA9IFAtPnNMVFBfc2hwX2J1Zl9pZHg7Ci0gICAgc0xGX0FSX3NocCAgICAgID0gUC0+
c0xGX0FSX3NocDsKLSAgICBzTEZfTUFfc2hwICAgICAgPSBQLT5zTEZfTUFfc2hwOwotCi0gICAg
Zm9yKCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrICkgewotICAgICAgICBpZiggbGFnID4gMCApIHsK
LSAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBIQVJNX1NIQVBFX0ZJUl9UQVBTID09IDMgKTsKLSAg
ICAgICAgICAgIGlkeCA9IGxhZyArIExUUF9zaHBfYnVmX2lkeDsKLSAgICAgICAgICAgIG5fTFRQ
ICA9IExUUF9zaHBfYnVmWyAoIGlkeCAtIEhBUk1fU0hBUEVfRklSX1RBUFMgLyAyIC0gMSkgJiBM
VFBfTUFTSyBdICogSGFybVNoYXBlRklSWyAwIF07Ci0gICAgICAgICAgICBuX0xUUCArPSBMVFBf
c2hwX2J1ZlsgKCBpZHggLSBIQVJNX1NIQVBFX0ZJUl9UQVBTIC8gMiAgICApICYgTFRQX01BU0sg
XSAqIEhhcm1TaGFwZUZJUlsgMSBdOwotICAgICAgICAgICAgbl9MVFAgKz0gTFRQX3NocF9idWZb
ICggaWR4IC0gSEFSTV9TSEFQRV9GSVJfVEFQUyAvIDIgKyAxKSAmIExUUF9NQVNLIF0gKiBIYXJt
U2hhcGVGSVJbIDIgXTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIG5fTFRQID0gMDsK
LSAgICAgICAgfQotCi0gICAgICAgIG5fVGlsdCA9IHNMRl9BUl9zaHAgKiBUaWx0OwotICAgICAg
ICBuX0xGICAgPSBzTEZfQVJfc2hwICogTEZfQVJfc2hwICsgc0xGX01BX3NocCAqIExGX01BX3No
cDsKLQotICAgICAgICBzTEZfQVJfc2hwID0gc3RfcmVzWyBpIF0gLSBuX1RpbHQ7Ci0gICAgICAg
IHNMRl9NQV9zaHAgPSBzTEZfQVJfc2hwIC0gbl9MRjsKLQotICAgICAgICBMVFBfc2hwX2J1Zl9p
ZHggPSAoIExUUF9zaHBfYnVmX2lkeCAtIDEgKSAmIExUUF9NQVNLOwotICAgICAgICBMVFBfc2hw
X2J1ZlsgTFRQX3NocF9idWZfaWR4IF0gPSBzTEZfTUFfc2hwOwotCi0gICAgICAgIHh3WyBpIF0g
PSBzTEZfTUFfc2hwIC0gbl9MVFA7Ci0gICAgfQotICAgIC8qIENvcHkgdGVtcCB2YXJpYWJsZSBi
YWNrIHRvIHN0YXRlICovCi0gICAgUC0+c0xGX0FSX3NocCAgICAgICA9IHNMRl9BUl9zaHA7Ci0g
ICAgUC0+c0xGX01BX3NocCAgICAgICA9IHNMRl9NQV9zaHA7Ci0gICAgUC0+c0xUUF9zaHBfYnVm
X2lkeCA9IExUUF9zaHBfYnVmX2lkeDsKLX0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9zY2h1cl9G
TFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9mbG9hdC9zY2h1cl9GTFAuYwppbmRleCBlZTQzNmY4MzUxYzhhZGYxZWUzNmZh
NTA1MjYxMmNjZjQ2MmE1NWFlLi5jMWUwYmJiNTQxMWM5OTU5Y2EzZjdmNmMyOTU3NzEzNjE3MDQ4
MWRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvc2NodXJfRkxQLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3Nj
aHVyX0ZMUC5jCkBAIC0zOCwyMiArMzgsMjMgQEAgc2lsa19mbG9hdCBzaWxrX3NjaHVyX0ZMUCgg
ICAgICAgICAgICAgICAgICAvKiBPICAgIHJldHVybnMgcmVzaWR1YWwgZW5lcmd5CiApCiB7CiAg
ICAgb3B1c19pbnQgICBrLCBuOwotICAgIHNpbGtfZmxvYXQgQ1sgU0lMS19NQVhfT1JERVJfTFBD
ICsgMSBdWyAyIF07Ci0gICAgc2lsa19mbG9hdCBDdG1wMSwgQ3RtcDIsIHJjX3RtcDsKKyAgICBk
b3VibGUgQ1sgU0lMS19NQVhfT1JERVJfTFBDICsgMSBdWyAyIF07CisgICAgZG91YmxlIEN0bXAx
LCBDdG1wMiwgcmNfdG1wOwogCi0gICAgc2lsa19hc3NlcnQoIG9yZGVyPT02fHxvcmRlcj09OHx8
b3JkZXI9PTEwfHxvcmRlcj09MTJ8fG9yZGVyPT0xNHx8b3JkZXI9PTE2ICk7CisgICAgc2lsa19h
c3NlcnQoIG9yZGVyID49IDAgJiYgb3JkZXIgPD0gU0lMS19NQVhfT1JERVJfTFBDICk7CiAKICAg
ICAvKiBDb3B5IGNvcnJlbGF0aW9ucyAqLwotICAgIGZvciggayA9IDA7IGsgPCBvcmRlcisxOyBr
KysgKSB7CisgICAgayA9IDA7CisgICAgZG8gewogICAgICAgICBDWyBrIF1bIDAgXSA9IENbIGsg
XVsgMSBdID0gYXV0b19jb3JyWyBrIF07Ci0gICAgfQorICAgIH0gd2hpbGUoICsrayA8PSBvcmRl
ciApOwogCiAgICAgZm9yKCBrID0gMDsgayA8IG9yZGVyOyBrKysgKSB7CiAgICAgICAgIC8qIEdl
dCByZWZsZWN0aW9uIGNvZWZmaWNpZW50ICovCiAgICAgICAgIHJjX3RtcCA9IC1DWyBrICsgMSBd
WyAwIF0gLyBzaWxrX21heF9mbG9hdCggQ1sgMCBdWyAxIF0sIDFlLTlmICk7CiAKICAgICAgICAg
LyogU2F2ZSB0aGUgb3V0cHV0ICovCi0gICAgICAgIHJlZmxfY29lZlsgayBdID0gcmNfdG1wOwor
ICAgICAgICByZWZsX2NvZWZbIGsgXSA9IChzaWxrX2Zsb2F0KXJjX3RtcDsKIAogICAgICAgICAv
KiBVcGRhdGUgY29ycmVsYXRpb25zICovCiAgICAgICAgIGZvciggbiA9IDA7IG4gPCBvcmRlciAt
IGs7IG4rKyApIHsKQEAgLTY1LDYgKzY2LDUgQEAgc2lsa19mbG9hdCBzaWxrX3NjaHVyX0ZMUCgg
ICAgICAgICAgICAgICAgICAvKiBPICAgIHJldHVybnMgcmVzaWR1YWwgZW5lcmd5CiAgICAgfQog
CiAgICAgLyogUmV0dXJuIHJlc2lkdWFsIGVuZXJneSAqLwotICAgIHJldHVybiBDWyAwIF1bIDEg
XTsKKyAgICByZXR1cm4gKHNpbGtfZmxvYXQpQ1sgMCBdWyAxIF07CiB9Ci0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9mbG9hdC9zb2x2ZV9MU19GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9zb2x2ZV9MU19GTFAuYwpkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggN2M5MGQ2NjVhMGYwZDE4YjU3M2I2MzJhOTMyODU2
MDUxMWJmMmE4MS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZmxvYXQvc29sdmVfTFNfRkxQLmMKKysrIC9kZXYvbnVsbApAQCAtMSwyMDcgKzAsMCBA
QAotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqCi1Db3B5cmlnaHQgKGMpIDIwMDYtMjAxMSwgU2t5cGUgTGltaXRl
ZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLVJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi1hcmUgbWV0Ogot
LSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodCBub3RpY2UsCi10aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLS0gTmVp
dGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5v
ciB0aGUKLW5hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlCi1wcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KLXBlcm1pc3Npb24uCi1USElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJ
UyIKLUFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKLUlNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi1BUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUK
LUxJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKLUNPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi1TVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLUlOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
Ci1DT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQotQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKLVBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgotKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKiovCi0KLSNpZmRlZiBIQVZFX0NPTkZJR19ICi0jaW5jbHVk
ZSAiY29uZmlnLmgiCi0jZW5kaWYKLQotI2luY2x1ZGUgIm1haW5fRkxQLmgiCi0jaW5jbHVkZSAi
dHVuaW5nX3BhcmFtZXRlcnMuaCIKLQotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAqIExETCBGYWN0b3Jpc2F0
aW9uLiBGaW5kcyB0aGUgdXBwZXIgdHJpYW5ndWxhciBtYXRyaXggTCBhbmQgdGhlIGRpYWdvbmFs
Ci0gKiBNYXRyaXggRCAob25seSB0aGUgZGlhZ29uYWwgZWxlbWVudHMgcmV0dXJuZWQgaW4gYSB2
ZWN0b3Ipc3VjaCB0aGF0Ci0gKiB0aGUgc3ltbWV0cmljIG1hdHJpYyBBIGlzIGdpdmVuIGJ5IEEg
PSBMKkQqTCcuCi0gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtf
TERMX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICpBLCAgICAgICAgIC8qIEkvTyAgUG9p
bnRlciB0byBTeW1ldHJpYyBTcXVhcmUgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBNLCAgICAgICAgICAvKiBJICAgIFNpemUg
b2YgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgKkwsICAgICAgICAgLyogSS9PICBQb2ludGVy
IHRvIFNxdWFyZSBVcHBlciB0cmlhbmd1bGFyIE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICpEaW52ICAgICAgIC8qIEkvTyAgUG9pbnRlciB0
byB2ZWN0b3IgaG9sZGluZyB0aGUgaW52ZXJzZSBkaWFnb25hbCBlbGVtZW50cyBvZiBEICAgICov
Ci0pOwotCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKgotICogRnVuY3Rpb24gdG8gc29sdmUgbGluZWFyIGVxdWF0
aW9uIEF4ID0gYiwgd2hlbiBBIGlzIGEgTXhNIGxvd2VyCi0gKiB0cmlhbmd1bGFyIG1hdHJpeCwg
d2l0aCBvbmVzIG9uIHRoZSBkaWFnb25hbC4KLSAqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotc3RhdGljIE9QVVNf
SU5MSU5FIHZvaWQgc2lsa19Tb2x2ZVdpdGhMb3dlclRyaWFuZ3VsYXJXZGlhZ09uZXNfRkxQKAot
ICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKkwsICAgICAgICAgLyogSSAgICBQb2ludGVyIHRvIExv
d2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBvcHVzX2ludCAgICAgICAgICAgIE0sICAgICAgICAgIC8qIEkgICAgRGltIG9mIE1hdHJpeCBl
cXVhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAg
Y29uc3Qgc2lsa19mbG9hdCAgICAqYiwgICAgICAgICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNp
bGtfZmxvYXQgICAgICAgICAgKnggICAgICAgICAgLyogTyAgICB4IFZlY3RvciAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSk7Ci0KLS8q
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqCi0gKiBGdW5jdGlvbiB0byBzb2x2ZSBsaW5lYXIgZXF1YXRpb24gKEFeVCl4
ID0gYiwgd2hlbiBBIGlzIGEgTXhNIGxvd2VyCi0gKiB0cmlhbmd1bGFyLCB3aXRoIG9uZXMgb24g
dGhlIGRpYWdvbmFsLiAoaWUgdGhlbiBBXlQgaXMgdXBwZXIgdHJpYW5ndWxhcikKLSAqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19Tb2x2ZVdpdGhVcHBlclRyaWFu
Z3VsYXJGcm9tTG93ZXJXZGlhZ09uZXNfRkxQKAotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKkws
ICAgICAgICAgLyogSSAgICBQb2ludGVyIHRvIExvd2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgIE0sICAg
ICAgICAgIC8qIEkgICAgRGltIG9mIE1hdHJpeCBlcXVhdGlvbiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAqYiwgICAg
ICAgICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgKnggICAgICAg
ICAgLyogTyAgICB4IFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSk7Ci0KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gKiBGdW5jdGlvbiB0
byBzb2x2ZSBsaW5lYXIgZXF1YXRpb24gQXggPSBiLCB3aGVuIEEgaXMgYSBNeE0KLSAqIHN5bW1l
dHJpYyBzcXVhcmUgbWF0cml4IC0gdXNpbmcgTERMIGZhY3RvcmlzYXRpb24KLSAqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqLwotdm9pZCBzaWxrX3NvbHZlX0xETF9GTFAoCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAg
ICAgICAgICAgICAqQSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFN5
bW1ldHJpYyBzcXVhcmUgbWF0cml4LCBvdXQ6IHJlZy4gICAgICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgICAgIE0sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgU2l6ZSBvZiBtYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgKmIsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBQb2ludGVyIHRvIGIgdmVjdG9yICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICAqeCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFBvaW50ZXIgdG8geCBzb2x1
dGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgKi8KLSkKLXsKLSAgICBvcHVzX2ludCAgIGk7Ci0g
ICAgc2lsa19mbG9hdCBMWyAgICBNQVhfTUFUUklYX1NJWkUgXVsgTUFYX01BVFJJWF9TSVpFIF07
Ci0gICAgc2lsa19mbG9hdCBUWyAgICBNQVhfTUFUUklYX1NJWkUgXTsKLSAgICBzaWxrX2Zsb2F0
IERpbnZbIE1BWF9NQVRSSVhfU0laRSBdOyAvKiBpbnZlcnNlIGRpYWdvbmFsIGVsZW1lbnRzIG9m
IEQqLwotCi0gICAgc2lsa19hc3NlcnQoIE0gPD0gTUFYX01BVFJJWF9TSVpFICk7Ci0KLSAgICAv
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gICAg
RmFjdG9yaXplIEEgYnkgTERMIHN1Y2ggdGhhdCBBID0gTCpEKihMXlQpLAotICAgIHdoZXJlIEwg
aXMgbG93ZXIgdHJpYW5ndWxhciB3aXRoIG9uZXMgb24gZGlhZ29uYWwKLSAgICAqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgIHNpbGtfTERM
X0ZMUCggQSwgTSwgJkxbIDAgXVsgMCBdLCBEaW52ICk7Ci0KLSAgICAvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICAgICogc3Vic3RpdHV0ZSBE
KihMXlQpID0gVC4gaWU6Ci0gICAgTCpEKihMXlQpKnggPSBiID0+IEwqVCA9IGIgPD0+IFQgPSBp
bnYoTCkqYgotICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KLSAgICBzaWxrX1NvbHZlV2l0aExvd2VyVHJpYW5ndWxhcldkaWFnT25lc19G
TFAoICZMWyAwIF1bIDAgXSwgTSwgYiwgVCApOwotCi0gICAgLyoqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAgICBEKihMXlQpKnggPSBUIDw9PiAo
TF5UKSp4ID0gaW52KEQpKlQsIGJlY2F1c2UgRCBpcwotICAgIGRpYWdvbmFsIGp1c3QgbXVsdGlw
bHkgd2l0aCAxL2RfaQotICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKiovCi0gICAgZm9yKCBpID0gMDsgaSA8IE07IGkrKyApIHsKLSAgICAgICAg
VFsgaSBdID0gVFsgaSBdICogRGludlsgaSBdOwotICAgIH0KLSAgICAvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICAgIHggPSBpbnYoTCcpICog
aW52KEQpICogVAotICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqLwotICAgIHNpbGtfU29sdmVXaXRoVXBwZXJUcmlhbmd1bGFyRnJvbUxvd2Vy
V2RpYWdPbmVzX0ZMUCggJkxbIDAgXVsgMCBdLCBNLCBULCB4ICk7Ci19Ci0KLXN0YXRpYyBPUFVT
X0lOTElORSB2b2lkIHNpbGtfU29sdmVXaXRoVXBwZXJUcmlhbmd1bGFyRnJvbUxvd2VyV2RpYWdP
bmVzX0ZMUCgKLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICpMLCAgICAgICAgIC8qIEkgICAgUG9p
bnRlciB0byBMb3dlciBUcmlhbmd1bGFyIE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBNLCAgICAgICAgICAvKiBJICAgIERpbSBv
ZiBNYXRyaXggZXF1YXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKmIsICAgICAgICAgLyogSSAgICBiIFZlY3Rv
ciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICp4ICAgICAgICAgIC8qIE8gICAgeCBWZWN0b3Ig
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0pCi17Ci0gICAgb3B1c19pbnQgICBpLCBqOwotICAgIHNpbGtfZmxvYXQgdGVtcDsKLSAgICBj
b25zdCBzaWxrX2Zsb2F0ICpwdHIxOwotCi0gICAgZm9yKCBpID0gTSAtIDE7IGkgPj0gMDsgaS0t
ICkgewotICAgICAgICBwdHIxID0gIG1hdHJpeF9hZHIoIEwsIDAsIGksIE0gKTsKLSAgICAgICAg
dGVtcCA9IDA7Ci0gICAgICAgIGZvciggaiA9IE0gLSAxOyBqID4gaSA7IGotLSApIHsKLSAgICAg
ICAgICAgIHRlbXAgKz0gcHRyMVsgaiAqIE0gXSAqIHhbIGogXTsKLSAgICAgICAgfQotICAgICAg
ICB0ZW1wID0gYlsgaSBdIC0gdGVtcDsKLSAgICAgICAgeFsgaSBdID0gdGVtcDsKLSAgICB9Ci19
Ci0KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfU29sdmVXaXRoTG93ZXJUcmlhbmd1bGFy
V2RpYWdPbmVzX0ZMUCgKLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICpMLCAgICAgICAgIC8qIEkg
ICAgUG9pbnRlciB0byBMb3dlciBUcmlhbmd1bGFyIE1hdHJpeCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBNLCAgICAgICAgICAvKiBJICAg
IERpbSBvZiBNYXRyaXggZXF1YXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKmIsICAgICAgICAgLyogSSAgICBi
IFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICp4ICAgICAgICAgIC8qIE8gICAgeCBW
ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICBpLCBqOwotICAgIHNpbGtfZmxvYXQgdGVtcDsK
LSAgICBjb25zdCBzaWxrX2Zsb2F0ICpwdHIxOwotCi0gICAgZm9yKCBpID0gMDsgaSA8IE07IGkr
KyApIHsKLSAgICAgICAgcHRyMSA9ICBtYXRyaXhfYWRyKCBMLCBpLCAwLCBNICk7Ci0gICAgICAg
IHRlbXAgPSAwOwotICAgICAgICBmb3IoIGogPSAwOyBqIDwgaTsgaisrICkgewotICAgICAgICAg
ICAgdGVtcCArPSBwdHIxWyBqIF0gKiB4WyBqIF07Ci0gICAgICAgIH0KLSAgICAgICAgdGVtcCA9
IGJbIGkgXSAtIHRlbXA7Ci0gICAgICAgIHhbIGkgXSA9IHRlbXA7Ci0gICAgfQotfQotCi1zdGF0
aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xETF9GTFAoCi0gICAgc2lsa19mbG9hdCAgICAgICAg
ICAqQSwgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU3ltZXRyaWMgU3F1YXJlIE1hdHJpeCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAg
TSwgICAgICAgICAgLyogSSAgICBTaXplIG9mIE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICpM
LCAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTcXVhcmUgVXBwZXIgdHJpYW5ndWxhciBNYXRy
aXggICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAqRGlu
diAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gdmVjdG9yIGhvbGRpbmcgdGhlIGludmVyc2UgZGlh
Z29uYWwgZWxlbWVudHMgb2YgRCAgICAqLwotKQotewotICAgIG9wdXNfaW50IGksIGosIGssIGxv
b3BfY291bnQsIGVyciA9IDE7Ci0gICAgc2lsa19mbG9hdCAqcHRyMSwgKnB0cjI7Ci0gICAgZG91
YmxlIHRlbXAsIGRpYWdfbWluX3ZhbHVlOwotICAgIHNpbGtfZmxvYXQgdlsgTUFYX01BVFJJWF9T
SVpFIF0sIERbIE1BWF9NQVRSSVhfU0laRSBdOyAvKiB0ZW1wIGFycmF5cyovCi0KLSAgICBzaWxr
X2Fzc2VydCggTSA8PSBNQVhfTUFUUklYX1NJWkUgKTsKLQotICAgIGRpYWdfbWluX3ZhbHVlID0g
RklORF9MVFBfQ09ORF9GQUMgKiAwLjVmICogKCBBWyAwIF0gKyBBWyBNICogTSAtIDEgXSApOwot
ICAgIGZvciggbG9vcF9jb3VudCA9IDA7IGxvb3BfY291bnQgPCBNICYmIGVyciA9PSAxOyBsb29w
X2NvdW50KysgKSB7Ci0gICAgICAgIGVyciA9IDA7Ci0gICAgICAgIGZvciggaiA9IDA7IGogPCBN
OyBqKysgKSB7Ci0gICAgICAgICAgICBwdHIxID0gbWF0cml4X2FkciggTCwgaiwgMCwgTSApOwot
ICAgICAgICAgICAgdGVtcCA9IG1hdHJpeF9wdHIoIEEsIGosIGosIE0gKTsgLyogZWxlbWVudCBp
biByb3cgaiBjb2x1bW4gaiovCi0gICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgajsgaSsrICkg
ewotICAgICAgICAgICAgICAgIHZbIGkgXSA9IHB0cjFbIGkgXSAqIERbIGkgXTsKLSAgICAgICAg
ICAgICAgICB0ZW1wICAtPSBwdHIxWyBpIF0gKiB2WyBpIF07Ci0gICAgICAgICAgICB9Ci0gICAg
ICAgICAgICBpZiggdGVtcCA8IGRpYWdfbWluX3ZhbHVlICkgewotICAgICAgICAgICAgICAgIC8q
IEJhZGx5IGNvbmRpdGlvbmVkIG1hdHJpeDogYWRkIHdoaXRlIG5vaXNlIGFuZCBydW4gYWdhaW4g
Ki8KLSAgICAgICAgICAgICAgICB0ZW1wID0gKCBsb29wX2NvdW50ICsgMSApICogZGlhZ19taW5f
dmFsdWUgLSB0ZW1wOwotICAgICAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBNOyBpKysgKSB7
Ci0gICAgICAgICAgICAgICAgICAgIG1hdHJpeF9wdHIoIEEsIGksIGksIE0gKSArPSAoIHNpbGtf
ZmxvYXQgKXRlbXA7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGVyciA9IDE7
Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBEWyBq
IF0gICAgPSAoIHNpbGtfZmxvYXQgKXRlbXA7Ci0gICAgICAgICAgICBEaW52WyBqIF0gPSAoIHNp
bGtfZmxvYXQgKSggMS4wZiAvIHRlbXAgKTsKLSAgICAgICAgICAgIG1hdHJpeF9wdHIoIEwsIGos
IGosIE0gKSA9IDEuMGY7Ci0KLSAgICAgICAgICAgIHB0cjEgPSBtYXRyaXhfYWRyKCBBLCBqLCAw
LCBNICk7Ci0gICAgICAgICAgICBwdHIyID0gbWF0cml4X2FkciggTCwgaiArIDEsIDAsIE0pOwot
ICAgICAgICAgICAgZm9yKCBpID0gaiArIDE7IGkgPCBNOyBpKysgKSB7Ci0gICAgICAgICAgICAg
ICAgdGVtcCA9IDAuMDsKLSAgICAgICAgICAgICAgICBmb3IoIGsgPSAwOyBrIDwgajsgaysrICkg
ewotICAgICAgICAgICAgICAgICAgICB0ZW1wICs9IHB0cjJbIGsgXSAqIHZbIGsgXTsKLSAgICAg
ICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgbWF0cml4X3B0ciggTCwgaSwgaiwgTSApID0g
KCBzaWxrX2Zsb2F0ICkoICggcHRyMVsgaSBdIC0gdGVtcCApICogRGludlsgaiBdICk7Ci0gICAg
ICAgICAgICAgICAgcHRyMiArPSBNOyAvKiBnbyB0byBuZXh0IGNvbHVtbiovCi0gICAgICAgICAg
ICB9Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgc2lsa19hc3NlcnQoIGVyciA9PSAwICk7Ci19Ci0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9mbG9hdC9zdHJ1Y3RzX0ZMUC5oIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3N0cnVjdHNf
RkxQLmgKaW5kZXggMTRkNjQ3Y2VkMjdlNmI2YTZkZTU2N2ZhZDM5ODIyZDY3YTNjZDRjOC4uMzE1
MGIzODZlNDc4NTA2ZGM4ODg0YWU2OTE5NzEyOWVmMWM0MTYzMyAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zs
b2F0L3N0cnVjdHNfRkxQLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3N0cnVjdHNfRkxQLmgKQEAgLTQyLDMy
ICs0MiwxNiBAQCBleHRlcm4gIkMiCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
CiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgIExhc3RH
YWluSW5kZXg7Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIEhhcm1Cb29zdF9zbXRo
OwogICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX3NtdGg7CiAg
ICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIFRpbHRfc210aDsKIH0gc2lsa19zaGFwZV9z
dGF0ZV9GTFA7CiAKLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qIFByZWZp
bHRlciBzdGF0ZSAgICAgICAgICAgICAgKi8KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KLXR5cGVkZWYgc3RydWN0IHsKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAg
c0xUUF9zaHBbIExUUF9CVUZfTEVOR1RIIF07Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAg
ICAgIHNBUl9zaHBbIE1BWF9TSEFQRV9MUENfT1JERVIgKyAxIF07Ci0gICAgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICAgIHNMVFBfc2hwX2J1Zl9pZHg7Ci0gICAgc2lsa19mbG9hdCAgICAgICAg
ICAgICAgICAgIHNMRl9BUl9zaHA7Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIHNM
Rl9NQV9zaHA7Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIHNIYXJtSFA7Ci0gICAg
b3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHJhbmRfc2VlZDsKLSAgICBvcHVzX2ludCAgICAg
ICAgICAgICAgICAgICAgbGFnUHJldjsKLX0gc2lsa19wcmVmaWx0ZXJfc3RhdGVfRkxQOwotCiAv
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAvKiBFbmNvZGVyIHN0YXRlIEZMUCAg
ICAgICAgICAgICovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiB0eXBlZGVm
IHN0cnVjdCB7CiAgICAgc2lsa19lbmNvZGVyX3N0YXRlICAgICAgICAgIHNDbW47ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIENvbW1vbiBzdHJ1Y3QsIHNoYXJlZCB3aXRoIGZpeGVk
LXBvaW50IGNvZGUgKi8KICAgICBzaWxrX3NoYXBlX3N0YXRlX0ZMUCAgICAgICAgc1NoYXBlOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTm9pc2Ugc2hhcGluZyBzdGF0ZSAqLwotICAg
IHNpbGtfcHJlZmlsdGVyX3N0YXRlX0ZMUCAgICBzUHJlZmlsdDsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBQcmVmaWx0ZXIgU3RhdGUgKi8KIAogICAgIC8qIEJ1ZmZlciBmb3IgZmluZCBw
aXRjaCBhbmQgbm9pc2Ugc2hhcGUgYW5hbHlzaXMgKi8KICAgICBzaWxrX2Zsb2F0ICAgICAgICAg
ICAgICAgICAgeF9idWZbIDIgKiBNQVhfRlJBTUVfTEVOR1RIICsgTEFfU0hBUEVfTUFYIF07Lyog
QnVmZmVyIGZvciBmaW5kIHBpdGNoIGFuZCBub2lzZSBzaGFwZSBhbmFseXNpcyAqLwpAQCAtODYs
MTIgKzcwLDkgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgICBwaXRjaExbIE1BWF9OQl9TVUJGUiBdOwogCiAgICAgLyogTm9pc2Ugc2hhcGluZyBwYXJh
bWV0ZXJzICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIEFSMVsgTUFYX05CX1NV
QkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAg
ICAgICBBUjJbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKKyAgICBzaWxr
X2Zsb2F0ICAgICAgICAgICAgICAgICAgQVJbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENf
T1JERVIgXTsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgTEZfTUFfc2hwWyAgICAg
TUFYX05CX1NVQkZSIF07CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIExGX0FSX3No
cFsgICAgIE1BWF9OQl9TVUJGUiBdOwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBH
YWluc1ByZVsgICAgICBNQVhfTkJfU1VCRlIgXTsKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAg
ICAgICAgSGFybUJvb3N0WyAgICAgTUFYX05CX1NVQkZSIF07CiAgICAgc2lsa19mbG9hdCAgICAg
ICAgICAgICAgICAgIFRpbHRbICAgICAgICAgIE1BWF9OQl9TVUJGUiBdOwogICAgIHNpbGtfZmxv
YXQgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluWyBNQVhfTkJfU1VCRlIgXTsKICAgICBz
aWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgTGFtYmRhOwpAQCAtOTksNyArODAsNiBAQCB0eXBl
ZGVmIHN0cnVjdCB7CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIGNvZGluZ19xdWFs
aXR5OwogCiAgICAgLyogTWVhc3VyZXMgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
ICAgc3BhcnNlbmVzczsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgcHJlZEdhaW47
CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIExUUHJlZENvZEdhaW47CiAgICAgc2ls
a19mbG9hdCAgICAgICAgICAgICAgICAgIFJlc05yZ1sgTUFYX05CX1NVQkZSIF07ICAgICAgICAg
ICAgIC8qIFJlc2lkdWFsIGVuZXJneSBwZXIgc3ViZnJhbWUgKi8KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9m
bG9hdC93cmFwcGVyc19GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC93cmFwcGVyc19GTFAuYwppbmRleCA2NjY2
YjhlZmFhZGUyZjBjZTllZWYzNzE4MWMwNzY4M2Q1NDMzZWMyLi5hZDkwYjg3NGE0ZDgxNGE2MTVj
OTE0MTc0MjA1ZmRmYjEwZGYwOTc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvd3JhcHBlcnNfRkxQ
LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2Zsb2F0L3dyYXBwZXJzX0ZMUC5jCkBAIC01NCwxMyArNTQsMTQgQEAgdm9p
ZCBzaWxrX0EyTkxTRl9GTFAoCiB2b2lkIHNpbGtfTkxTRjJBX0ZMUCgKICAgICBzaWxrX2Zsb2F0
ICAgICAgICAgICAgICAgICAgICAgICpwQVIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIE8gICAgTFBDIGNvZWZmaWNpZW50cyBbIExQQ19vcmRlciBdICAgICAgICAgICAgICAqLwog
ICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKk5MU0ZfUTE1LCAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBOTFNGIHZlY3RvciAgICAgIFsgTFBDX29yZGVyIF0gICAg
ICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBMUENfb3Jk
ZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExQQyBvcmRlciAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgIExQQ19vcmRlciwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFBDIG9y
ZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGludCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAgICAgICovCiAp
CiB7CiAgICAgb3B1c19pbnQgICBpOwogICAgIG9wdXNfaW50MTYgYV9maXhfUTEyWyBNQVhfTFBD
X09SREVSIF07CiAKLSAgICBzaWxrX05MU0YyQSggYV9maXhfUTEyLCBOTFNGX1ExNSwgTFBDX29y
ZGVyICk7CisgICAgc2lsa19OTFNGMkEoIGFfZml4X1ExMiwgTkxTRl9RMTUsIExQQ19vcmRlciwg
YXJjaCApOwogCiAgICAgZm9yKCBpID0gMDsgaSA8IExQQ19vcmRlcjsgaSsrICkgewogICAgICAg
ICBwQVJbIGkgXSA9ICggc2lsa19mbG9hdCApYV9maXhfUTEyWyBpIF0gKiAoIDEuMGYgLyA0MDk2
LjBmICk7CkBAIC0xMDIsMTQgKzEwMywxNCBAQCB2b2lkIHNpbGtfTlNRX3dyYXBwZXJfRkxQKAog
KQogewogICAgIG9wdXNfaW50ICAgICBpLCBqOwotICAgIG9wdXNfaW50MzIgICB4X1EzWyBNQVhf
RlJBTUVfTEVOR1RIIF07CisgICAgb3B1c19pbnQxNiAgIHgxNlsgTUFYX0ZSQU1FX0xFTkdUSCBd
OwogICAgIG9wdXNfaW50MzIgICBHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdOwogICAgIHNpbGtf
RFdPUkRfQUxJR04gb3B1c19pbnQxNiBQcmVkQ29lZl9RMTJbIDIgXVsgTUFYX0xQQ19PUkRFUiBd
OwogICAgIG9wdXNfaW50MTYgICBMVFBDb2VmX1ExNFsgTFRQX09SREVSICogTUFYX05CX1NVQkZS
IF07CiAgICAgb3B1c19pbnQgICAgIExUUF9zY2FsZV9RMTQ7CiAKICAgICAvKiBOb2lzZSBzaGFw
aW5nIHBhcmFtZXRlcnMgKi8KLSAgICBvcHVzX2ludDE2ICAgQVIyX1ExM1sgTUFYX05CX1NVQkZS
ICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOworICAgIG9wdXNfaW50MTYgICBBUl9RMTNbIE1BWF9O
Ql9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKICAgICBvcHVzX2ludDMyICAgTEZfc2hw
X1ExNFsgTUFYX05CX1NVQkZSIF07ICAgICAgICAgLyogUGFja3MgdHdvIGludDE2IGNvZWZmaWNp
ZW50cyBwZXIgaW50MzIgdmFsdWUgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgTGFt
YmRhX1ExMDsKICAgICBvcHVzX2ludCAgICAgVGlsdF9RMTRbIE1BWF9OQl9TVUJGUiBdOwpAQCAt
MTE5LDcgKzEyMCw3IEBAIHZvaWQgc2lsa19OU1Ffd3JhcHBlcl9GTFAoCiAgICAgLyogTm9pc2Ug
c2hhcGUgcGFyYW1ldGVycyAqLwogICAgIGZvciggaSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5uYl9z
dWJmcjsgaSsrICkgewogICAgICAgICBmb3IoIGogPSAwOyBqIDwgcHNFbmMtPnNDbW4uc2hhcGlu
Z0xQQ09yZGVyOyBqKysgKSB7Ci0gICAgICAgICAgICBBUjJfUTEzWyBpICogTUFYX1NIQVBFX0xQ
Q19PUkRFUiArIGogXSA9IHNpbGtfZmxvYXQyaW50KCBwc0VuY0N0cmwtPkFSMlsgaSAqIE1BWF9T
SEFQRV9MUENfT1JERVIgKyBqIF0gKiA4MTkyLjBmICk7CisgICAgICAgICAgICBBUl9RMTNbIGkg
KiBNQVhfU0hBUEVfTFBDX09SREVSICsgaiBdID0gc2lsa19mbG9hdDJpbnQoIHBzRW5jQ3RybC0+
QVJbIGkgKiBNQVhfU0hBUEVfTFBDX09SREVSICsgaiBdICogODE5Mi4wZiApOwogICAgICAgICB9
CiAgICAgfQogCkBAIC0xNTUsMTYgKzE1NiwxNiBAQCB2b2lkIHNpbGtfTlNRX3dyYXBwZXJfRkxQ
KAogCiAgICAgLyogQ29udmVydCBpbnB1dCB0byBmaXggKi8KICAgICBmb3IoIGkgPSAwOyBpIDwg
cHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoOyBpKysgKSB7Ci0gICAgICAgIHhfUTNbIGkgXSA9IHNp
bGtfZmxvYXQyaW50KCA4LjBmICogeFsgaSBdICk7CisgICAgICAgIHgxNlsgaSBdID0gc2lsa19m
bG9hdDJpbnQoIHhbIGkgXSApOwogICAgIH0KIAogICAgIC8qIENhbGwgTlNRICovCiAgICAgaWYo
IHBzRW5jLT5zQ21uLm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gPiAxIHx8IHBzRW5jLT5zQ21uLndh
cnBpbmdfUTE2ID4gMCApIHsKLSAgICAgICAgc2lsa19OU1FfZGVsX2RlYyggJnBzRW5jLT5zQ21u
LCBwc05TUSwgcHNJbmRpY2VzLCB4X1EzLCBwdWxzZXMsIFByZWRDb2VmX1ExMlsgMCBdLCBMVFBD
b2VmX1ExNCwKLSAgICAgICAgICAgIEFSMl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1Ex
NCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwc0VuY0N0cmwtPnBpdGNoTCwgTGFtYmRhX1ExMCwg
TFRQX3NjYWxlX1ExNCwgcHNFbmMtPnNDbW4uYXJjaCApOworICAgICAgICBzaWxrX05TUV9kZWxf
ZGVjKCAmcHNFbmMtPnNDbW4sIHBzTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29l
Zl9RMTJbIDAgXSwgTFRQQ29lZl9RMTQsCisgICAgICAgICAgICBBUl9RMTMsIEhhcm1TaGFwZUdh
aW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwc0VuY0N0cmwtPnBpdGNo
TCwgTGFtYmRhX1ExMCwgTFRQX3NjYWxlX1ExNCwgcHNFbmMtPnNDbW4uYXJjaCApOwogICAgIH0g
ZWxzZSB7Ci0gICAgICAgIHNpbGtfTlNRKCAmcHNFbmMtPnNDbW4sIHBzTlNRLCBwc0luZGljZXMs
IHhfUTMsIHB1bHNlcywgUHJlZENvZWZfUTEyWyAwIF0sIExUUENvZWZfUTE0LAotICAgICAgICAg
ICAgQVIyX1ExMywgSGFybVNoYXBlR2Fpbl9RMTQsIFRpbHRfUTE0LCBMRl9zaHBfUTE0LCBHYWlu
c19RMTYsIHBzRW5jQ3RybC0+cGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0LCBwc0Vu
Yy0+c0Ntbi5hcmNoICk7CisgICAgICAgIHNpbGtfTlNRKCAmcHNFbmMtPnNDbW4sIHBzTlNRLCBw
c0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTJbIDAgXSwgTFRQQ29lZl9RMTQsCisg
ICAgICAgICAgICBBUl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1Ex
NCwgR2FpbnNfUTE2LCBwc0VuY0N0cmwtPnBpdGNoTCwgTGFtYmRhX1ExMCwgTFRQX3NjYWxlX1Ex
NCwgcHNFbmMtPnNDbW4uYXJjaCApOwogICAgIH0KIH0KIApAQCAtMTcyLDMxICsxNzMsMzUgQEAg
dm9pZCBzaWxrX05TUV93cmFwcGVyX0ZMUCgKIC8qIEZsb2F0aW5nLXBvaW50IFNpbGsgTFRQIHF1
YW50aWF0aW9uIHdyYXBwZXIgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KIHZvaWQgc2lsa19xdWFudF9MVFBfZ2FpbnNfRkxQKAotICAgIHNpbGtf
ZmxvYXQgICAgICAgICAgICAgICAgICAgICAgQlsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0s
ICAgICAgLyogSS9PICAoVW4tKXF1YW50aXplZCBMVFAgZ2FpbnMgICAgICAgICAgICAgICAgICAg
ICovCisgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICBCWyBNQVhfTkJfU1VCRlIg
KiBMVFBfT1JERVIgXSwgICAgICAvKiBPICAgIFF1YW50aXplZCBMVFAgZ2FpbnMgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgICAg
IGNia19pbmRleFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgIC8qIE8gICAgQ29kZWJvb2sgaW5k
ZXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAg
ICAgICAgICAgICAgICAgKnBlcmlvZGljaXR5X2luZGV4LCAgICAgICAgICAgICAgICAgLyogTyAg
ICBQZXJpb2RpY2l0eSBpbmRleCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1
c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAqc3VtX2xvZ19nYWluX1E3LCAgICAgICAgICAg
ICAgICAgICAvKiBJL08gIEN1bXVsYXRpdmUgbWF4IHByZWRpY3Rpb24gZ2FpbiAgKi8KLSAgICBj
b25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIFdbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRF
UiAqIExUUF9PUkRFUiBdLCAvKiBJICAgIEVycm9yIHdlaWdodHMgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbXVfUTEwLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBNdSB2YWx1ZSAoUi9EIHRyYWRlb2ZmKSAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICBsb3dDb21wbGV4aXR5LCAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZsYWcgZm9yIGxv
dyBjb21wbGV4aXR5ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNp
bGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgKnByZWRfZ2Fpbl9kQiwgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBPICAgIExUUCBwcmVkaWN0aW9uIGdhaW4gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIFhYWyBNQVhf
TkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyogSSAgICBDb3JyZWxhdGlvbiBt
YXRyaXggICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAg
ICAgICAgICB4WFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgICAvKiBJICAgIENv
cnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0
IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBzdWJmcl9sZW4sICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMgcGVyIHN1YmZyYW1lICAgICAgICAg
ICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIG5iX3N1YmZy
LCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHN1YmZyYW1lcyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGludCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSdW4t
dGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7Ci0gICAgb3B1
c19pbnQgICBpOworICAgIG9wdXNfaW50ICAgaSwgcHJlZF9nYWluX2RCX1E3OwogICAgIG9wdXNf
aW50MTYgQl9RMTRbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdOwotICAgIG9wdXNfaW50MzIg
V19RMThbIE1BWF9OQl9TVUJGUipMVFBfT1JERVIqTFRQX09SREVSIF07CisgICAgb3B1c19pbnQz
MiBYWF9RMTdbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdOworICAgIG9w
dXNfaW50MzIgeFhfUTE3WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXTsKIAotICAgIGZvcigg
aSA9IDA7IGkgPCBuYl9zdWJmciAqIExUUF9PUkRFUjsgaSsrICkgewotICAgICAgICBCX1ExNFsg
aSBdID0gKG9wdXNfaW50MTYpc2lsa19mbG9hdDJpbnQoIEJbIGkgXSAqIDE2Mzg0LjBmICk7Ci0g
ICAgfQogICAgIGZvciggaSA9IDA7IGkgPCBuYl9zdWJmciAqIExUUF9PUkRFUiAqIExUUF9PUkRF
UjsgaSsrICkgewotICAgICAgICBXX1ExOFsgaSBdID0gKG9wdXNfaW50MzIpc2lsa19mbG9hdDJp
bnQoIFdbIGkgXSAqIDI2MjE0NC4wZiApOworICAgICAgICBYWF9RMTdbIGkgXSA9IChvcHVzX2lu
dDMyKXNpbGtfZmxvYXQyaW50KCBYWFsgaSBdICogMTMxMDcyLjBmICk7CisgICAgfQorICAgIGZv
ciggaSA9IDA7IGkgPCBuYl9zdWJmciAqIExUUF9PUkRFUjsgaSsrICkgeworICAgICAgICB4WF9R
MTdbIGkgXSA9IChvcHVzX2ludDMyKXNpbGtfZmxvYXQyaW50KCB4WFsgaSBdICogMTMxMDcyLjBm
ICk7CiAgICAgfQogCi0gICAgc2lsa19xdWFudF9MVFBfZ2FpbnMoIEJfUTE0LCBjYmtfaW5kZXgs
IHBlcmlvZGljaXR5X2luZGV4LCBzdW1fbG9nX2dhaW5fUTcsIFdfUTE4LCBtdV9RMTAsIGxvd0Nv
bXBsZXhpdHksIG5iX3N1YmZyLCBhcmNoICk7CisgICAgc2lsa19xdWFudF9MVFBfZ2FpbnMoIEJf
UTE0LCBjYmtfaW5kZXgsIHBlcmlvZGljaXR5X2luZGV4LCBzdW1fbG9nX2dhaW5fUTcsICZwcmVk
X2dhaW5fZEJfUTcsIFhYX1ExNywgeFhfUTE3LCBzdWJmcl9sZW4sIG5iX3N1YmZyLCBhcmNoICk7
CiAKICAgICBmb3IoIGkgPSAwOyBpIDwgbmJfc3ViZnIgKiBMVFBfT1JERVI7IGkrKyApIHsKICAg
ICAgICAgQlsgaSBdID0gKHNpbGtfZmxvYXQpQl9RMTRbIGkgXSAqICggMS4wZiAvIDE2Mzg0LjBm
ICk7CiAgICAgfQorCisgICAgKnByZWRfZ2Fpbl9kQiA9IChzaWxrX2Zsb2F0KXByZWRfZ2Fpbl9k
Ql9RNyAqICggMS4wZiAvIDEyOC4wZiApOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2dhaW5fcXVhbnQu
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9nYWluX3F1YW50LmMKaW5kZXggNjRjY2QwNjExYmZmMzY4Y2Y3OWY5NTBkZjVhMTY3
YmFhOGQ0MTBiZC4uZWU2NTI0NWFhMzY3MTA1ZWUxZTBkZmE4YjVmMjYxOWQ4YzIyMzgyMCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2dhaW5fcXVhbnQuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZ2Fpbl9xdWFudC5jCkBAIC03Niw2
ICs3Niw3IEBAIHZvaWQgc2lsa19nYWluc19xdWFudCgKICAgICAgICAgICAgIC8qIEFjY3VtdWxh
dGUgZGVsdGFzICovCiAgICAgICAgICAgICBpZiggaW5kWyBrIF0gPiBkb3VibGVfc3RlcF9zaXpl
X3RocmVzaG9sZCApIHsKICAgICAgICAgICAgICAgICAqcHJldl9pbmQgKz0gc2lsa19MU0hJRlQo
IGluZFsgayBdLCAxICkgLSBkb3VibGVfc3RlcF9zaXplX3RocmVzaG9sZDsKKyAgICAgICAgICAg
ICAgICAqcHJldl9pbmQgPSBzaWxrX21pbl9pbnQoICpwcmV2X2luZCwgTl9MRVZFTFNfUUdBSU4g
LSAxICk7CiAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICpwcmV2X2luZCAr
PSBpbmRbIGsgXTsKICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9pbml0X2RlY29kZXIu
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9pbml0X2RlY29kZXIuYwppbmRleCBmODg3YzY3ODg2ZmI1N2FjZDU0YjAzYTNkYzUy
MTBjM2IwOWJiNGIyLi4xNmMwM2RjZDFjYTFiMzNiNDg0MDk5OWQ4ZGI2YzdmNWIyYjE1ZWJlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvaW5pdF9kZWNvZGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2luaXRfZGVjb2Rlci5jCkBA
IC00NCw2ICs0NCw3IEBAIG9wdXNfaW50IHNpbGtfaW5pdF9kZWNvZGVyKAogICAgIC8qIFVzZWQg
dG8gZGVhY3RpdmF0ZSBMU0YgaW50ZXJwb2xhdGlvbiAqLwogICAgIHBzRGVjLT5maXJzdF9mcmFt
ZV9hZnRlcl9yZXNldCA9IDE7CiAgICAgcHNEZWMtPnByZXZfZ2Fpbl9RMTYgPSA2NTUzNjsKKyAg
ICBwc0RlYy0+YXJjaCA9IG9wdXNfc2VsZWN0X2FyY2goKTsKIAogICAgIC8qIFJlc2V0IENORyBz
dGF0ZSAqLwogICAgIHNpbGtfQ05HX1Jlc2V0KCBwc0RlYyApOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2xp
bjJsb2cuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9saW4ybG9nLmMKaW5kZXggZDRmZTUxNTMyMWYwZDViNzZkNmQzMTRjY2Zm
NGQxNmY5M2Y5MTgzOC4uMGQ1MTU1YWE4NmU0ZDY3NjMwYzU0MWQ2OGZhN2E1ZTFiZjQwMGJjZSAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2xpbjJsb2cuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbGluMmxvZy5jCkBAIC00MSw2ICs0
MSw2IEBAIG9wdXNfaW50MzIgc2lsa19saW4ybG9nKAogICAgIHNpbGtfQ0xaX0ZSQUMoIGluTGlu
LCAmbHosICZmcmFjX1E3ICk7CiAKICAgICAvKiBQaWVjZS13aXNlIHBhcmFib2xpYyBhcHByb3hp
bWF0aW9uICovCi0gICAgcmV0dXJuIHNpbGtfTFNISUZUKCAzMSAtIGx6LCA3ICkgKyBzaWxrX1NN
TEFXQiggZnJhY19RNywgc2lsa19NVUwoIGZyYWNfUTcsIDEyOCAtIGZyYWNfUTcgKSwgMTc5ICk7
CisgICAgcmV0dXJuIHNpbGtfQUREX0xTSElGVDMyKCBzaWxrX1NNTEFXQiggZnJhY19RNywgc2ls
a19NVUwoIGZyYWNfUTcsIDEyOCAtIGZyYWNfUTcgKSwgMTc5ICksIDMxIC0gbHosIDcgKTsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL21hY3Jvcy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21hY3Jvcy5oCmluZGV4IGQzY2EzNDc1
MjAwNDUwNmI2ZmQ2YWU0YmRkODhiNzg2NGFmNjgwNzIuLjNjNjdiNmU1ZDk3YzM2NmY5ODQxZTJi
YTliZGVlZmJmYmZlYjIwZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9tYWNyb3MuaAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWFj
cm9zLmgKQEAgLTM2LDE0ICszNiw2IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2lu
Y2x1ZGUgIm9wdXNfZGVmaW5lcy5oIgogI2luY2x1ZGUgImFyY2guaCIKIAotI2lmIE9QVVNfR05V
Q19QUkVSRVEoMywgMCkKLSNkZWZpbmUgb3B1c19saWtlbHkoeCkgICAgICAgKF9fYnVpbHRpbl9l
eHBlY3QoISEoeCksIDEpKQotI2RlZmluZSBvcHVzX3VubGlrZWx5KHgpICAgICAoX19idWlsdGlu
X2V4cGVjdCghISh4KSwgMCkpCi0jZWxzZQotI2RlZmluZSBvcHVzX2xpa2VseSh4KSAgICAgICAo
ISEoeCkpCi0jZGVmaW5lIG9wdXNfdW5saWtlbHkoeCkgICAgICghISh4KSkKLSNlbmRpZgotCiAv
KiBUaGlzIGlzIGFuIE9QVVNfSU5MSU5FIGhlYWRlciBmaWxlIGZvciBnZW5lcmFsIHBsYXRmb3Jt
LiAqLwogCiAvKiAoYTMyICogKG9wdXNfaW50MzIpKChvcHVzX2ludDE2KShiMzIpKSkgPj4gMTYg
b3V0cHV0IGhhdmUgdG8gYmUgMzJiaXQgaW50ICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWFpbi5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL21haW4uaAppbmRleCAyZjkwZDY4ZjdkYTBjN2Q0YjA5YjcwNmFmNzAxYTY0ZTI3MmFmNTA3
Li4xYTMzZWVkNTQ5YjZhMjA4NWQ2MTIwZDUyMTBhZTFjMmJkNGIyOGI2IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvbWFpbi5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9tYWluLmgKQEAgLTQyLDYgKzQyLDEwIEBAIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgIng4Ni9tYWluX3NzZS5oIgogI2VuZGlmCiAKKyNp
ZiAoZGVmaW5lZChPUFVTX0FSTV9BU00pIHx8IGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVP
Tl9JTlRSKSkKKyNpbmNsdWRlICJhcm0vTlNRX2RlbF9kZWNfYXJtLmgiCisjZW5kaWYKKwogLyog
Q29udmVydCBMZWZ0L1JpZ2h0IHN0ZXJlbyBzaWduYWwgdG8gYWRhcHRpdmUgTWlkL1NpZGUgcmVw
cmVzZW50YXRpb24gKi8KIHZvaWQgc2lsa19zdGVyZW9fTFJfdG9fTVMoCiAgICAgc3RlcmVvX2Vu
Y19zdGF0ZSAgICAgICAgICAgICpzdGF0ZSwgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9P
ICBTdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCkBAIC0xMDks
MjIgKzExMywyMiBAQCB2b2lkIHNpbGtfc3RlcmVvX2RlY29kZV9taWRfb25seSgKIAogLyogRW5j
b2RlcyBzaWducyBvZiBleGNpdGF0aW9uICovCiB2b2lkIHNpbGtfZW5jb2RlX3NpZ25zKAotICAg
IGVjX2VuYyAgICAgICAgICAgICAgICAgICAgICAqcHNSYW5nZUVuYywgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJL08gIENvbXByZXNzb3IgZGF0YSBzdHJ1Y3R1cmUgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDggICAgICAgICAgICAgcHVsc2VzW10sICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBwdWxzZSBzaWduYWwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0aCwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbGVuZ3RoIG9mIGlucHV0ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBzaWduYWxUeXBlLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBl
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgcXVhbnRPZmZzZXRUeXBlLCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBR
dWFudGl6YXRpb24gb2Zmc2V0IHR5cGUgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgIHN1bV9wdWxzZXNbIE1BWF9OQl9TSEVMTF9CTE9DS1MgXSAg
IC8qIEkgICAgU3VtIG9mIGFic29sdXRlIHB1bHNlcyBwZXIgYmxvY2sgICAgICAgICAgICAqLwor
ICAgIGVjX2VuYyAgICAgICAgICAgICAgICAgICAgICAqcHNSYW5nZUVuYywgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJL08gIENvbXByZXNzb3IgZGF0YSBzdHJ1Y3R1cmUgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50OCAgICAgICAgICAgICBwdWxzZXNbXSwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIHB1bHNlIHNpZ25hbCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsZW5ndGgsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIGxlbmd0aCBvZiBpbnB1dCAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzaWduYWxU
eXBlLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBlICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBx
dWFudE9mZnNldFR5cGUsICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFF1YW50aXphdGlvbiBv
ZmZzZXQgdHlwZSAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICBzdW1fcHVsc2VzWyBNQVhfTkJfU0hFTExfQkxPQ0tTIF0gICAvKiBJICAgIFN1bSBvZiBh
YnNvbHV0ZSBwdWxzZXMgcGVyIGJsb2NrICAgICAgICAqLwogKTsKIAogLyogRGVjb2RlcyBzaWdu
cyBvZiBleGNpdGF0aW9uICovCiB2b2lkIHNpbGtfZGVjb2RlX3NpZ25zKAotICAgIGVjX2RlYyAg
ICAgICAgICAgICAgICAgICAgICAqcHNSYW5nZURlYywgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJL08gIENvbXByZXNzb3IgZGF0YSBzdHJ1Y3R1cmUgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgcHVsc2VzW10sICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSS9PICBwdWxzZSBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbGVuZ3RoIG9mIGlucHV0ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzaWduYWxU
eXBlLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBlICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAg
ICAgcXVhbnRPZmZzZXRUeXBlLCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBRdWFudGl6YXRp
b24gb2Zmc2V0IHR5cGUgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQg
ICAgICAgICAgICAgIHN1bV9wdWxzZXNbIE1BWF9OQl9TSEVMTF9CTE9DS1MgXSAgIC8qIEkgICAg
U3VtIG9mIGFic29sdXRlIHB1bHNlcyBwZXIgYmxvY2sgICAgICAgICAgICAqLworICAgIGVjX2Rl
YyAgICAgICAgICAgICAgICAgICAgICAqcHNSYW5nZURlYywgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJL08gIENvbXByZXNzb3IgZGF0YSBzdHJ1Y3R1cmUgICAgICAgICAgICAgICAqLworICAg
IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICBwdWxzZXNbXSwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJL08gIHB1bHNlIHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsZW5ndGgsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIGxlbmd0aCBvZiBpbnB1dCAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzaWduYWxUeXBlLCAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBlICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBxdWFudE9mZnNl
dFR5cGUsICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFF1YW50aXphdGlvbiBvZmZzZXQgdHlw
ZSAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzdW1f
cHVsc2VzWyBNQVhfTkJfU0hFTExfQkxPQ0tTIF0gICAvKiBJICAgIFN1bSBvZiBhYnNvbHV0ZSBw
dWxzZXMgcGVyIGJsb2NrICAgICAgICAqLwogKTsKIAogLyogQ2hlY2sgZW5jb2RlciBjb250cm9s
IHN0cnVjdCAqLwpAQCAtMjA1LDM3ICsyMDksMzcgQEAgdm9pZCBzaWxrX2ludGVycG9sYXRlKAog
CiAvKiBMVFAgdGFwIHF1YW50aXplciAqLwogdm9pZCBzaWxrX3F1YW50X0xUUF9nYWlucygKLSAg
ICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgQl9RMTRbIE1BWF9OQl9TVUJGUiAqIExUUF9P
UkRFUiBdLCAgICAgICAgICAvKiBJL08gICh1bilxdWFudGl6ZWQgTFRQIGdhaW5zICAgICAgICAg
Ki8KKyAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgQl9RMTRbIE1BWF9OQl9TVUJGUiAq
IExUUF9PUkRFUiBdLCAgICAgICAgICAvKiBPICAgIFF1YW50aXplZCBMVFAgZ2FpbnMgICAgICAg
ICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgY2JrX2luZGV4WyBNQVhf
TkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAvKiBPICAgIENvZGVib29rIEluZGV4ICAgICAg
ICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgKnBlcmlvZGlj
aXR5X2luZGV4LCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFBlcmlvZGljaXR5IElu
ZGV4ICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKnN1
bV9nYWluX2RCX1E3LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIEN1bXVsYXRp
dmUgbWF4IHByZWRpY3Rpb24gZ2FpbiAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAg
ICAgV19RMThbIE1BWF9OQl9TVUJGUipMVFBfT1JERVIqTFRQX09SREVSIF0sICAvKiBJICAgIEVy
cm9yIFdlaWdodHMgaW4gUTE4ICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgICAgbXVfUTksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIE11IHZhbHVlIChSL0QgdHJhZGVvZmYpICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAg
ICAgICAgICAgICAgICAgbG93Q29tcGxleGl0eSwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIEZsYWcgZm9yIGxvdyBjb21wbGV4aXR5ICAgICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgbmJfc3ViZnIsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgKi8KKyAgICBv
cHVzX2ludCAgICAgICAgICAgICAgICAgICAgKnByZWRfZ2Fpbl9kQl9RNywgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBPICAgIExUUCBwcmVkaWN0aW9uIGdhaW4gICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgWFhfUTE3WyBNQVhfTkJfU1VCRlIqTFRQ
X09SREVSKkxUUF9PUkRFUiBdLCAvKiBJICAgIENvcnJlbGF0aW9uIG1hdHJpeCBpbiBRMTggICAg
ICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgeFhfUTE3WyBNQVhfTkJfU1VC
RlIqTFRQX09SREVSIF0sICAgICAgICAgICAvKiBJICAgIENvcnJlbGF0aW9uIHZlY3RvciBpbiBR
MTggICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgc3ViZnJfbGVuLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBzYW1wbGVz
IHBlciBzdWJmcmFtZSAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgbmJfc3Vi
ZnIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBz
dWJmcmFtZXMgICAgICAgICAgICAgKi8KICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAg
YXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10
aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgKi8KICk7CiAKIC8qIEVudHJvcHkgY29uc3RyYWlu
ZWQgbWF0cml4LXdlaWdodGVkIFZRLCBmb3IgYSBzaW5nbGUgaW5wdXQgZGF0YSB2ZWN0b3IgKi8K
IHZvaWQgc2lsa19WUV9XTWF0X0VDX2MoCiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAg
ICppbmQsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBpbmRleCBvZiBiZXN0IGNv
ZGVib29rIHZlY3RvciAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAg
ICAgICAgICpyYXRlX2Rpc3RfUTE0LCAgICAgICAgICAgICAgICAgLyogTyAgICBiZXN0IHdlaWdo
dGVkIHF1YW50IGVycm9yICsgbXUgKiByYXRlICAgICAgICovCisgICAgb3B1c19pbnQzMiAgICAg
ICAgICAgICAgICAgICpyZXNfbnJnX1ExNSwgICAgICAgICAgICAgICAgICAgLyogTyAgICBiZXN0
IHJlc2lkdWFsIGVuZXJneSAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQz
MiAgICAgICAgICAgICAgICAgICpyYXRlX2Rpc3RfUTgsICAgICAgICAgICAgICAgICAgLyogTyAg
ICBiZXN0IHRvdGFsIGJpdHJhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1
c19pbnQgICAgICAgICAgICAgICAgICAgICpnYWluX1E3LCAgICAgICAgICAgICAgICAgICAgICAg
LyogTyAgICBzdW0gb2YgYWJzb2x1dGUgTFRQIGNvZWZmaWNpZW50cyAgICAgICAgICAgICovCi0g
ICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICppbl9RMTQsICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBpbnB1dCB2ZWN0b3IgdG8gYmUgcXVhbnRpemVkICAgICAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpXX1ExOCwgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICB3ZWlnaHRpbmcgbWF0cml4ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpYWF9RMTcsICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBjb3JyZWxhdGlvbiBtYXRyaXggICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICp4WF9RMTcs
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb3JyZWxhdGlvbiB2ZWN0b3IgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQ4ICAgICAgICAgICAgICpj
Yl9RNywgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb2RlYm9vayAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c191aW50OCAgICAgICAg
ICAgICpjYl9nYWluX1E3LCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb2RlYm9vayBlZmZl
Y3RpdmUgZ2FpbiAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c191aW50OCAg
ICAgICAgICAgICpjbF9RNSwgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb2RlIGxl
bmd0aCBmb3IgZWFjaCBjb2RlYm9vayB2ZWN0b3IgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19p
bnQgICAgICAgICAgICAgIG11X1E5LCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICB0
cmFkZW9mZiBiZXR3LiB3ZWlnaHRlZCBlcnJvciBhbmQgcmF0ZSAgICAgICovCisgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgIHN1YmZyX2xlbiwgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBudW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3ViZnJhbWUgICAgICAgICAgICAgICovCiAgICAg
Y29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIG1heF9nYWluX1E3LCAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBtYXhpbXVtIHN1bSBvZiBhYnNvbHV0ZSBMVFAgY29lZmZpY2llbnRzICAgICov
Ci0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIEwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBudW1iZXIgb2YgdmVjdG9ycyBpbiBjb2RlYm9vayAgICAgICAgICAg
ICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIEwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2YgdmVjdG9ycyBpbiBjb2RlYm9vayAgICAg
ICAgICAgICAgICovCiApOwogCiAjaWYgIWRlZmluZWQoT1ZFUlJJREVfc2lsa19WUV9XTWF0X0VD
KQotI2RlZmluZSBzaWxrX1ZRX1dNYXRfRUMoaW5kLCByYXRlX2Rpc3RfUTE0LCBnYWluX1E3LCBp
bl9RMTQsIFdfUTE4LCBjYl9RNywgY2JfZ2Fpbl9RNywgY2xfUTUsIFwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgbXVfUTksIG1heF9nYWluX1E3LCBMLCBhcmNoKSBcCi0gICAgKCh2b2lkKShh
cmNoKSxzaWxrX1ZRX1dNYXRfRUNfYyhpbmQsIHJhdGVfZGlzdF9RMTQsIGdhaW5fUTcsIGluX1Ex
NCwgV19RMTgsIGNiX1E3LCBjYl9nYWluX1E3LCBjbF9RNSwgXAotICAgICAgICAgICAgICAgICAg
ICAgICAgICBtdV9ROSwgbWF4X2dhaW5fUTcsIEwpKQorI2RlZmluZSBzaWxrX1ZRX1dNYXRfRUMo
aW5kLCByZXNfbnJnX1ExNSwgcmF0ZV9kaXN0X1E4LCBnYWluX1E3LCBYWF9RMTcsIHhYX1ExNywg
Y2JfUTcsIGNiX2dhaW5fUTcsIGNsX1E1LCBzdWJmcl9sZW4sIG1heF9nYWluX1E3LCBMLCBhcmNo
KSBcCisgICAgKCh2b2lkKShhcmNoKSxzaWxrX1ZRX1dNYXRfRUNfYyhpbmQsIHJlc19ucmdfUTE1
LCByYXRlX2Rpc3RfUTgsIGdhaW5fUTcsIFhYX1ExNywgeFhfUTE3LCBjYl9RNywgY2JfZ2Fpbl9R
NywgY2xfUTUsIHN1YmZyX2xlbiwgbWF4X2dhaW5fUTcsIEwpKQogI2VuZGlmCiAKIC8qKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0yNDMsMTQgKzI0NywxNCBAQCB2b2lk
IHNpbGtfVlFfV01hdF9FQ19jKAogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
Ki8KIAogdm9pZCBzaWxrX05TUV9jKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAq
cHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2Rl
ciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0
ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
RW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAg
ICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5k
aWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwotICAgIGNvbnN0
IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICBwdWxzZXNbXSwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRpemVkIHB1bHNlIHNpZ25hbCAgICAg
ICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBQcmVkQ29lZl9RMTJbIDIg
KiBNQVhfTFBDX09SREVSIF0sICAgICAgICAgIC8qIEkgICAgU2hvcnQgdGVybSBwcmVkaWN0aW9u
IGNvZWZzICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBMVFBDb2VmX1Ex
NFsgTFRQX09SREVSICogTUFYX05CX1NVQkZSIF0sICAgIC8qIEkgICAgTG9uZyB0ZXJtIHByZWRp
Y3Rpb24gY29lZnMgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBBUjJf
UTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sIC8qIEkgTm9pc2Ugc2hh
cGluZyBjb2VmcyAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAg
ICBBUl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSAgTm9p
c2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICBIYXJtU2hhcGVHYWluX1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgIC8qIEkg
ICAgTG9uZyB0ZXJtIHNoYXBpbmcgY29lZnMgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgICBUaWx0X1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgU3BlY3RyYWwgdGlsdCAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICBMRl9zaHBfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAg
ICAgICAgIC8qIEkgICAgTG93IGZyZXF1ZW5jeSBzaGFwaW5nIGNvZWZzICAgICAqLwpAQCAtMjYx
LDIyICsyNjUsMjIgQEAgdm9pZCBzaWxrX05TUV9jKAogKTsKIAogI2lmICFkZWZpbmVkKE9WRVJS
SURFX3NpbGtfTlNRKQotI2RlZmluZSBzaWxrX05TUShwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4
X1EzLCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQQ29lZl9RMTQsIEFSMl9RMTMsIFwKKyNkZWZp
bmUgc2lsa19OU1EocHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2Vm
X1ExMiwgTFRQQ29lZl9RMTQsIEFSX1ExMywgXAogICAgICAgICAgICAgICAgICAgIEhhcm1TaGFw
ZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIExhbWJk
YV9RMTAsIExUUF9zY2FsZV9RMTQsIGFyY2gpIFwKLSAgICAoKHZvaWQpKGFyY2gpLHNpbGtfTlNR
X2MocHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeF9RMywgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExU
UENvZWZfUTE0LCBBUjJfUTEzLCBcCisgICAgKCh2b2lkKShhcmNoKSxzaWxrX05TUV9jKHBzRW5j
QywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0
LCBBUl9RMTMsIFwKICAgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9R
MTQsIExGX3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVf
UTE0KSkKICNlbmRpZgogCiAvKiBOb2lzZSBzaGFwaW5nIHVzaW5nIGRlbGF5ZWQgZGVjaXNpb24g
Ki8KIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0
ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAg
RW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rl
cl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0
YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJ
bmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwotICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICB4MTZbXSwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICBwdWxzZXNbXSwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRpemVkIHB1bHNlIHNpZ25h
bCAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBQcmVkQ29lZl9R
MTJbIDIgKiBNQVhfTFBDX09SREVSIF0sICAgICAgICAgIC8qIEkgICAgU2hvcnQgdGVybSBwcmVk
aWN0aW9uIGNvZWZzICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBMVFBD
b2VmX1ExNFsgTFRQX09SREVSICogTUFYX05CX1NVQkZSIF0sICAgIC8qIEkgICAgTG9uZyB0ZXJt
IHByZWRpY3Rpb24gY29lZnMgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAg
ICBBUjJfUTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sIC8qIEkgTm9p
c2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAg
ICAgICAgICBBUl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyog
SSAgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAg
IC8qIEkgICAgTG9uZyB0ZXJtIHNoYXBpbmcgY29lZnMgICAgICAgICAqLwogICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICBUaWx0X1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgU3BlY3RyYWwgdGlsdCAgICAgICAgICAgICAgICAgICAqLwogICAgIGNv
bnN0IG9wdXNfaW50MzIgICAgICAgICAgICBMRl9zaHBfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAg
ICAgICAgICAgICAgIC8qIEkgICAgTG93IGZyZXF1ZW5jeSBzaGFwaW5nIGNvZWZzICAgICAqLwpA
QCAtMjg3LDkgKzI5MSw5IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAogKTsKIAogI2lmICFk
ZWZpbmVkKE9WRVJSSURFX3NpbGtfTlNRX2RlbF9kZWMpCi0jZGVmaW5lIHNpbGtfTlNRX2RlbF9k
ZWMocHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeF9RMywgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExU
UENvZWZfUTE0LCBBUjJfUTEzLCBcCisjZGVmaW5lIHNpbGtfTlNRX2RlbF9kZWMocHNFbmNDLCBO
U1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQQ29lZl9RMTQsIEFS
X1ExMywgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgSGFybVNoYXBlR2Fpbl9RMTQsIFRp
bHRfUTE0LCBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBpdGNoTCwgTGFtYmRhX1ExMCwgTFRQX3Nj
YWxlX1ExNCwgYXJjaCkgXAotICAgICgodm9pZCkoYXJjaCksc2lsa19OU1FfZGVsX2RlY19jKHBz
RW5jQywgTlNRLCBwc0luZGljZXMsIHhfUTMsIHB1bHNlcywgUHJlZENvZWZfUTEyLCBMVFBDb2Vm
X1ExNCwgQVIyX1ExMywgXAorICAgICgodm9pZCkoYXJjaCksc2lsa19OU1FfZGVsX2RlY19jKHBz
RW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExUUENvZWZf
UTE0LCBBUl9RMTMsIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5f
UTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIExhbWJkYV9RMTAs
IExUUF9zY2FsZV9RMTQpKQogI2VuZGlmCiAKQEAgLTM0Niw2ICszNTAsNyBAQCB2b2lkIHNpbGtf
TkxTRl9WUSgKICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgZXJyX1EyNltdLCAgICAg
ICAgICAgICAgICAgICAgICAvKiBPICAgIFF1YW50aXphdGlvbiBlcnJvcnMgW0tdICAgICAgICAg
ICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgaW5fUTE1W10s
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IHZlY3RvcnMgdG8gYmUgcXVhbnRp
emVkIFtMUENfb3JkZXJdICAgKi8KICAgICBjb25zdCBvcHVzX3VpbnQ4ICAgICAgICAgICAgcENC
X1E4W10sICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvZGVib29rIHZlY3RvcnMgW0sq
TFBDX29yZGVyXSAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAg
ICAgcFdnaHRfUTlbXSwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvZGVib29rIHdlaWdo
dHMgW0sqTFBDX29yZGVyXSAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAg
ICAgICAgICAgSywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE51bWJlciBv
ZiBjb2RlYm9vayB2ZWN0b3JzICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgTFBDX29yZGVyICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE51
bWJlciBvZiBMUENzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvbWlwcy9OU1FfZGVsX2RlY19taXBzcjEuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9taXBzL05TUV9kZWxfZGVj
X21pcHNyMS5oCmluZGV4IGFkMWNmZTJhOWIwODQxMDEyNzAxYjFmZTc3ZDdkYTJmMDQ0ZDBiMjYu
LmNkNzA3MTNhOGY1ZDk0NTNlYzYyZDc3ODZiYzMwYTkwYWJkZGM0MDkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9taXBzL05TUV9kZWxfZGVjX21pcHNyMS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9taXBzL05TUV9kZWxfZGVjX21p
cHNyMS5oCkBAIC02MSw3ICs2MSw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBzaWxrX25vaXNlX3No
YXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgIG9wdXNfaW50ICAgICAgICAgICAgcHJlZGljdExQ
Q09yZGVyLCAgICAgICAgLyogSSAgICBQcmVkaWN0aW9uIGZpbHRlciBvcmRlciAgICAgICAgICAg
ICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgd2FycGluZ19RMTYsICAgICAgICAgICAgLyog
SSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50
ICAgICAgICAgICAgblN0YXRlc0RlbGF5ZWREZWNpc2lvbiwgLyogSSAgICBOdW1iZXIgb2Ygc3Rh
dGVzIGluIGRlY2lzaW9uIHRyZWUgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgKnNtcGxf
YnVmX2lkeCwgICAgICAgICAgLyogSSAgICBJbmRleCB0byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZm
ZXJzICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAg
LyogSS9PICBJbmRleCB0byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZmZXJzICAqLwogICAgIG9wdXNf
aW50ICAgICAgICAgICAgZGVjaXNpb25EZWxheSwgICAgICAgICAgLyogSSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGludCAgICAgICAgICAgICAgICAgYXJj
aCAgICAgICAgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwogKQpAQCAtMzIzLDggKzMyMyw5IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBzaWxr
X25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgICAgICAgICAgcHNTU1sgMSBdLnhx
X1ExNCAgICAgICA9IHhxX1ExNDsKICAgICAgICAgfQogCi0gICAgICAgICpzbXBsX2J1Zl9pZHgg
ID0gKCAqc21wbF9idWZfaWR4IC0gMSApICYgREVDSVNJT05fREVMQVlfTUFTSzsgICAgICAgICAg
ICAgICAgICAgLyogSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgICAgICAgICAgICAgICovCi0gICAg
ICAgIGxhc3Rfc21wbGVfaWR4ID0gKCAqc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheSApICYg
REVDSVNJT05fREVMQVlfTUFTSzsgICAgICAgLyogSW5kZXggdG8gZGVjaXNpb25EZWxheSBvbGQg
c2FtcGxlcyAgICovCisgICAgICAgICpzbXBsX2J1Zl9pZHggID0gKCAqc21wbF9idWZfaWR4IC0g
MSApICUgREVDSVNJT05fREVMQVk7CisgICAgICAgIGlmKCAqc21wbF9idWZfaWR4IDwgMCApICpz
bXBsX2J1Zl9pZHggKz0gREVDSVNJT05fREVMQVk7CisgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0g
KCAqc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheSApICUgREVDSVNJT05fREVMQVk7CiAKICAg
ICAgICAgLyogRmluZCB3aW5uZXIgKi8KICAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0
ZVsgMCBdWyAwIF0uUkRfUTEwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21pcHMvc2lncHJvY19maXhfbWlw
c3IxLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvbWlwcy9zaWdwcm9jX2ZpeF9taXBzcjEuaAppbmRleCAzYjBhNjk1MzY1NmQ5
NzMxOGYzYWE4M2ViYmE5ZjIwOGJlMWJkODhiLi41MTUyMGMwYTZmZDU1MGNiODcyOTA2MjQ0ZTZh
ZmMxYzBjYzEzOGFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWlwcy9zaWdwcm9jX2ZpeF9taXBzcjEuaAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvbWlwcy9zaWdwcm9jX2ZpeF9taXBzcjEuaApAQCAtMjgsMTEgKzI4LDYgQEAgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaWZuZGVmIFNJTEtfU0lHUFJPQ19GSVhfTUlQU1Ix
X0gKICNkZWZpbmUgU0lMS19TSUdQUk9DX0ZJWF9NSVBTUjFfSAogCi0jaWZkZWYgIF9fY3BsdXNw
bHVzCi1leHRlcm4gIkMiCi17Ci0jZW5kaWYKLQogI3VuZGVmIHNpbGtfU0FUMTYKIHN0YXRpYyBp
bmxpbmUgc2hvcnQgaW50IHNpbGtfU0FUMTYoaW50IGEpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvcHJv
Y2Vzc19OTFNGcy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL3Byb2Nlc3NfTkxTRnMuYwppbmRleCAwYWI3MWYwMTYzNDA3Zjg1
NGJjNDJmMDZhNTkwMGU2YjFhYmUyOTM3Li4yZjEwZjhkZjViM2Q3MGU1ODIzZmUyZGI1NWI1YjEx
NzRiMjZhZmJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvcHJvY2Vzc19OTFNGcy5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9wcm9j
ZXNzX05MU0ZzLmMKQEAgLTg5LDcgKzg5LDcgQEAgdm9pZCBzaWxrX3Byb2Nlc3NfTkxTRnMoCiAg
ICAgICAgIE5MU0ZfbXVfUTIwLCBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMsIHBzRW5jQy0+
aW5kaWNlcy5zaWduYWxUeXBlICk7CiAKICAgICAvKiBDb252ZXJ0IHF1YW50aXplZCBOTFNGcyBi
YWNrIHRvIExQQyBjb2VmZmljaWVudHMgKi8KLSAgICBzaWxrX05MU0YyQSggUHJlZENvZWZfUTEy
WyAxIF0sIHBOTFNGX1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIgKTsKKyAgICBzaWxrX05M
U0YyQSggUHJlZENvZWZfUTEyWyAxIF0sIHBOTFNGX1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBDT3Jk
ZXIsIHBzRW5jQy0+YXJjaCApOwogCiAgICAgaWYoIGRvSW50ZXJwb2xhdGUgKSB7CiAgICAgICAg
IC8qIENhbGN1bGF0ZSB0aGUgaW50ZXJwb2xhdGVkLCBxdWFudGl6ZWQgTFNGIHZlY3RvciBmb3Ig
dGhlIGZpcnN0IGhhbGYgKi8KQEAgLTk3LDcgKzk3LDcgQEAgdm9pZCBzaWxrX3Byb2Nlc3NfTkxT
RnMoCiAgICAgICAgICAgICBwc0VuY0MtPmluZGljZXMuTkxTRkludGVycENvZWZfUTIsIHBzRW5j
Qy0+cHJlZGljdExQQ09yZGVyICk7CiAKICAgICAgICAgLyogQ29udmVydCBiYWNrIHRvIExQQyBj
b2VmZmljaWVudHMgKi8KLSAgICAgICAgc2lsa19OTFNGMkEoIFByZWRDb2VmX1ExMlsgMCBdLCBw
TkxTRjBfdGVtcF9RMTUsIHBzRW5jQy0+cHJlZGljdExQQ09yZGVyICk7CisgICAgICAgIHNpbGtf
TkxTRjJBKCBQcmVkQ29lZl9RMTJbIDAgXSwgcE5MU0YwX3RlbXBfUTE1LCBwc0VuY0MtPnByZWRp
Y3RMUENPcmRlciwgcHNFbmNDLT5hcmNoICk7CiAKICAgICB9IGVsc2UgewogICAgICAgICAvKiBD
b3B5IExQQyBjb2VmZmljaWVudHMgZm9yIGZpcnN0IGhhbGYgZnJvbSBzZWNvbmQgaGFsZiAqLwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL3F1YW50X0xUUF9nYWlucy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3F1YW50X0xUUF9nYWlucy5j
CmluZGV4IDUxM2E4YzQ0NjhmZmM0Yzg3YTc0MTQ2MDA2NWY2M2ViZTY3NzUyYTYuLmQ2YjhlZmY4
ZDE4NjRjY2ZhMjFhMjZhNmJjNTk3ZWJjMmRiY2VkYjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9xdWFudF9M
VFBfZ2FpbnMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvcXVhbnRfTFRQX2dhaW5zLmMKQEAgLTMzLDE0ICszMywxNSBA
QCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICNpbmNsdWRlICJ0dW5pbmdfcGFyYW1ldGVy
cy5oIgogCiB2b2lkIHNpbGtfcXVhbnRfTFRQX2dhaW5zKAotICAgIG9wdXNfaW50MTYgICAgICAg
ICAgICAgICAgICBCX1ExNFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgICAgIC8q
IEkvTyAgKHVuKXF1YW50aXplZCBMVFAgZ2FpbnMgICAgICAgICAqLworICAgIG9wdXNfaW50MTYg
ICAgICAgICAgICAgICAgICBCX1ExNFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAg
ICAgIC8qIE8gICAgUXVhbnRpemVkIExUUCBnYWlucyAgICAgICAgICAgICAqLwogICAgIG9wdXNf
aW50OCAgICAgICAgICAgICAgICAgICBjYmtfaW5kZXhbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAg
ICAgICAgICAgIC8qIE8gICAgQ29kZWJvb2sgSW5kZXggICAgICAgICAgICAgICAgICAqLwogICAg
IG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICAqcGVyaW9kaWNpdHlfaW5kZXgsICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIE8gICAgUGVyaW9kaWNpdHkgSW5kZXggICAgICAgICAgICAgICAq
LwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqc3VtX2xvZ19nYWluX1E3LCAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgQ3VtdWxhdGl2ZSBtYXggcHJlZGljdGlvbiBn
YWluICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBXX1ExOFsgTUFYX05CX1NV
QkZSKkxUUF9PUkRFUipMVFBfT1JERVIgXSwgIC8qIEkgICAgRXJyb3IgV2VpZ2h0cyBpbiBRMTgg
ICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBtdV9ROSwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTXUgdmFsdWUgKFIvRCB0
cmFkZW9mZikgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsb3dD
b21wbGV4aXR5LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRmxhZyBmb3Ig
bG93IGNvbXBsZXhpdHkgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVt
YmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgICAqcHJlZF9nYWluX2RCX1E3LCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8g
ICAgTFRQIHByZWRpY3Rpb24gZ2FpbiAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
MzIgICAgICAgICAgICBYWF9RMTdbIE1BWF9OQl9TVUJGUipMVFBfT1JERVIqTFRQX09SREVSIF0s
IC8qIEkgICAgQ29ycmVsYXRpb24gbWF0cml4IGluIFExOCAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICB4WF9RMTdbIE1BWF9OQl9TVUJGUipMVFBfT1JERVIgXSwgICAg
ICAgICAgIC8qIEkgICAgQ29ycmVsYXRpb24gdmVjdG9yIGluIFExOCAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzdWJmcl9sZW4sICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMgcGVyIHN1YmZyYW1lICAqLwor
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAg
ICAqLwogICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAg
ICAgICAgICAqLwogKQogewpAQCAtNDksMTYgKzUwLDE2IEBAIHZvaWQgc2lsa19xdWFudF9MVFBf
Z2FpbnMoCiAgICAgY29uc3Qgb3B1c191aW50OCAgICAgKmNsX3B0cl9RNTsKICAgICBjb25zdCBv
cHVzX2ludDggICAgICAqY2JrX3B0cl9RNzsKICAgICBjb25zdCBvcHVzX3VpbnQ4ICAgICAqY2Jr
X2dhaW5fcHRyX1E3OwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICpiX1ExNF9wdHI7Ci0gICAg
Y29uc3Qgb3B1c19pbnQzMiAgICAgKldfUTE4X3B0cjsKLSAgICBvcHVzX2ludDMyICAgICAgICAg
ICByYXRlX2Rpc3RfUTE0X3N1YmZyLCByYXRlX2Rpc3RfUTE0LCBtaW5fcmF0ZV9kaXN0X1ExNDsK
LSAgICBvcHVzX2ludDMyICAgICAgICAgICBzdW1fbG9nX2dhaW5fdG1wX1E3LCBiZXN0X3N1bV9s
b2dfZ2Fpbl9RNywgbWF4X2dhaW5fUTcsIGdhaW5fUTc7CisgICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgKlhYX1ExN19wdHIsICp4WF9RMTdfcHRyOworICAgIG9wdXNfaW50MzIgICAgICAgICAgIHJl
c19ucmdfUTE1X3N1YmZyLCByZXNfbnJnX1ExNSwgcmF0ZV9kaXN0X1E3X3N1YmZyLCByYXRlX2Rp
c3RfUTcsIG1pbl9yYXRlX2Rpc3RfUTc7CisgICAgb3B1c19pbnQzMiAgICAgICAgICAgc3VtX2xv
Z19nYWluX3RtcF9RNywgYmVzdF9zdW1fbG9nX2dhaW5fUTcsIG1heF9nYWluX1E3OworICAgIG9w
dXNfaW50ICAgICAgICAgICAgIGdhaW5fUTc7CiAKICAgICAvKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIGl0ZXJhdGUgb3ZlciBkaWZm
ZXJlbnQgY29kZWJvb2tzIHdpdGggZGlmZmVyZW50ICovCiAgICAgLyogcmF0ZXMvZGlzdG9ydGlv
bnMsIGFuZCBjaG9vc2UgYmVzdCAqLwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgbWluX3JhdGVfZGlzdF9RMTQgPSBzaWxrX2lu
dDMyX01BWDsKKyAgICBtaW5fcmF0ZV9kaXN0X1E3ID0gc2lsa19pbnQzMl9NQVg7CiAgICAgYmVz
dF9zdW1fbG9nX2dhaW5fUTcgPSAwOwogICAgIGZvciggayA9IDA7IGsgPCAzOyBrKysgKSB7CiAg
ICAgICAgIC8qIFNhZmV0eSBtYXJnaW4gZm9yIHBpdGNoIGdhaW4gY29udHJvbCwgdG8gdGFrZSBp
bnRvIGFjY291bnQgZmFjdG9ycwpAQCAtNzAsNTMgKzcxLDQ3IEBAIHZvaWQgc2lsa19xdWFudF9M
VFBfZ2FpbnMoCiAgICAgICAgIGNia19nYWluX3B0cl9RNyA9IHNpbGtfTFRQX3ZxX2dhaW5fcHRy
c19RN1sgayBdOwogICAgICAgICBjYmtfc2l6ZSAgID0gc2lsa19MVFBfdnFfc2l6ZXNbICAgICAg
ICAgIGsgXTsKIAotICAgICAgICAvKiBTZXQgdXAgcG9pbnRlciB0byBmaXJzdCBzdWJmcmFtZSAq
LwotICAgICAgICBXX1ExOF9wdHIgPSBXX1ExODsKLSAgICAgICAgYl9RMTRfcHRyID0gQl9RMTQ7
CisgICAgICAgIC8qIFNldCB1cCBwb2ludGVycyB0byBmaXJzdCBzdWJmcmFtZSAqLworICAgICAg
ICBYWF9RMTdfcHRyID0gWFhfUTE3OworICAgICAgICB4WF9RMTdfcHRyID0geFhfUTE3OwogCi0g
ICAgICAgIHJhdGVfZGlzdF9RMTQgPSAwOworICAgICAgICByZXNfbnJnX1ExNSA9IDA7CisgICAg
ICAgIHJhdGVfZGlzdF9RNyA9IDA7CiAgICAgICAgIHN1bV9sb2dfZ2Fpbl90bXBfUTcgPSAqc3Vt
X2xvZ19nYWluX1E3OwogICAgICAgICBmb3IoIGogPSAwOyBqIDwgbmJfc3ViZnI7IGorKyApIHsK
ICAgICAgICAgICAgIG1heF9nYWluX1E3ID0gc2lsa19sb2cybGluKCAoIFNJTEtfRklYX0NPTlNU
KCBNQVhfU1VNX0xPR19HQUlOX0RCIC8gNi4wLCA3ICkgLSBzdW1fbG9nX2dhaW5fdG1wX1E3ICkK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIFNJTEtfRklYX0NPTlNU
KCA3LCA3ICkgKSAtIGdhaW5fc2FmZXR5OwotCiAgICAgICAgICAgICBzaWxrX1ZRX1dNYXRfRUMo
CiAgICAgICAgICAgICAgICAgJnRlbXBfaWR4WyBqIF0sICAgICAgICAgLyogTyAgICBpbmRleCBv
ZiBiZXN0IGNvZGVib29rIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAg
ICAgICAgICAgICAgJnJhdGVfZGlzdF9RMTRfc3ViZnIsICAgLyogTyAgICBiZXN0IHdlaWdodGVk
IHF1YW50aXphdGlvbiBlcnJvciArIG11ICogcmF0ZSAgICAgICAgICAgICovCisgICAgICAgICAg
ICAgICAgJnJlc19ucmdfUTE1X3N1YmZyLCAgICAgLyogTyAgICByZXNpZHVhbCBlbmVyZ3kgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgICAgICAgICAg
JnJhdGVfZGlzdF9RN19zdWJmciwgICAgLyogTyAgICBiZXN0IHdlaWdodGVkIHF1YW50aXphdGlv
biBlcnJvciArIG11ICogcmF0ZSAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgJmdhaW5f
UTcsICAgICAgICAgICAgICAgLyogTyAgICBzdW0gb2YgYWJzb2x1dGUgTFRQIGNvZWZmaWNpZW50
cyAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgYl9RMTRfcHRyLCAg
ICAgICAgICAgICAgLyogSSAgICBpbnB1dCB2ZWN0b3IgdG8gYmUgcXVhbnRpemVkICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgV19RMThfcHRyLCAgICAgICAg
ICAgICAgLyogSSAgICB3ZWlnaHRpbmcgbWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgICAgICAgICAgICAgWFhfUTE3X3B0ciwgICAgICAgICAgICAg
LyogSSAgICBjb3JyZWxhdGlvbiBtYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgICAgICAgICAgICAgeFhfUTE3X3B0ciwgICAgICAgICAgICAgLyogSSAg
ICBjb3JyZWxhdGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgICAgICAgICAgICAgY2JrX3B0cl9RNywgICAgICAgICAgICAgLyogSSAgICBjb2Rl
Ym9vayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgICAgICAgICAgICAgY2JrX2dhaW5fcHRyX1E3LCAgICAgICAgLyogSSAgICBjb2RlYm9vayBl
ZmZlY3RpdmUgZ2FpbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAg
ICAgICAgICAgY2xfcHRyX1E1LCAgICAgICAgICAgICAgLyogSSAgICBjb2RlIGxlbmd0aCBmb3Ig
ZWFjaCBjb2RlYm9vayB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgICAg
ICAgbXVfUTksICAgICAgICAgICAgICAgICAgLyogSSAgICB0cmFkZW9mZiBiZXR3ZWVuIHdlaWdo
dGVkIGVycm9yIGFuZCByYXRlICAgICAgICAgICAgICAgICovCisgICAgICAgICAgICAgICAgc3Vi
ZnJfbGVuLCAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3ViZnJh
bWUgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgbWF4X2dhaW5f
UTcsICAgICAgICAgICAgLyogSSAgICBtYXhpbXVtIHN1bSBvZiBhYnNvbHV0ZSBMVFAgY29lZmZp
Y2llbnRzICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgY2JrX3NpemUsICAgICAg
ICAgICAgICAgLyogSSAgICBudW1iZXIgb2YgdmVjdG9ycyBpbiBjb2RlYm9vayAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgICAgICAgICApOwogCi0gICAgICAgICAgICByYXRlX2Rpc3RfUTE0
ID0gc2lsa19BRERfUE9TX1NBVDMyKCByYXRlX2Rpc3RfUTE0LCByYXRlX2Rpc3RfUTE0X3N1YmZy
ICk7CisgICAgICAgICAgICByZXNfbnJnX1ExNSAgPSBzaWxrX0FERF9QT1NfU0FUMzIoIHJlc19u
cmdfUTE1LCByZXNfbnJnX1ExNV9zdWJmciApOworICAgICAgICAgICAgcmF0ZV9kaXN0X1E3ID0g
c2lsa19BRERfUE9TX1NBVDMyKCByYXRlX2Rpc3RfUTcsIHJhdGVfZGlzdF9RN19zdWJmciApOwog
ICAgICAgICAgICAgc3VtX2xvZ19nYWluX3RtcF9RNyA9IHNpbGtfbWF4KDAsIHN1bV9sb2dfZ2Fp
bl90bXBfUTcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBzaWxrX2xpbjJsb2co
IGdhaW5fc2FmZXR5ICsgZ2Fpbl9RNyApIC0gU0lMS19GSVhfQ09OU1QoIDcsIDcgKSk7CiAKLSAg
ICAgICAgICAgIGJfUTE0X3B0ciArPSBMVFBfT1JERVI7Ci0gICAgICAgICAgICBXX1ExOF9wdHIg
Kz0gTFRQX09SREVSICogTFRQX09SREVSOworICAgICAgICAgICAgWFhfUTE3X3B0ciArPSBMVFBf
T1JERVIgKiBMVFBfT1JERVI7CisgICAgICAgICAgICB4WF9RMTdfcHRyICs9IExUUF9PUkRFUjsK
ICAgICAgICAgfQogCi0gICAgICAgIC8qIEF2b2lkIG5ldmVyIGZpbmRpbmcgYSBjb2RlYm9vayAq
LwotICAgICAgICByYXRlX2Rpc3RfUTE0ID0gc2lsa19taW4oIHNpbGtfaW50MzJfTUFYIC0gMSwg
cmF0ZV9kaXN0X1ExNCApOwotCi0gICAgICAgIGlmKCByYXRlX2Rpc3RfUTE0IDwgbWluX3JhdGVf
ZGlzdF9RMTQgKSB7Ci0gICAgICAgICAgICBtaW5fcmF0ZV9kaXN0X1ExNCA9IHJhdGVfZGlzdF9R
MTQ7CisgICAgICAgIGlmKCByYXRlX2Rpc3RfUTcgPD0gbWluX3JhdGVfZGlzdF9RNyApIHsKKyAg
ICAgICAgICAgIG1pbl9yYXRlX2Rpc3RfUTcgPSByYXRlX2Rpc3RfUTc7CiAgICAgICAgICAgICAq
cGVyaW9kaWNpdHlfaW5kZXggPSAob3B1c19pbnQ4KWs7CiAgICAgICAgICAgICBzaWxrX21lbWNw
eSggY2JrX2luZGV4LCB0ZW1wX2lkeCwgbmJfc3ViZnIgKiBzaXplb2YoIG9wdXNfaW50OCApICk7
CiAgICAgICAgICAgICBiZXN0X3N1bV9sb2dfZ2Fpbl9RNyA9IHN1bV9sb2dfZ2Fpbl90bXBfUTc7
CiAgICAgICAgIH0KLQotICAgICAgICAvKiBCcmVhayBlYXJseSBpbiBsb3ctY29tcGxleGl0eSBt
b2RlIGlmIHJhdGUgZGlzdG9ydGlvbiBpcyBiZWxvdyB0aHJlc2hvbGQgKi8KLSAgICAgICAgaWYo
IGxvd0NvbXBsZXhpdHkgJiYgKCByYXRlX2Rpc3RfUTE0IDwgc2lsa19MVFBfZ2Fpbl9taWRkbGVf
YXZnX1JEX1ExNCApICkgewotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KICAgICB9CiAK
ICAgICBjYmtfcHRyX1E3ID0gc2lsa19MVFBfdnFfcHRyc19RN1sgKnBlcmlvZGljaXR5X2luZGV4
IF07CkBAIC0xMjUsNSArMTIwLDEzIEBAIHZvaWQgc2lsa19xdWFudF9MVFBfZ2FpbnMoCiAgICAg
ICAgICAgICBCX1ExNFsgaiAqIExUUF9PUkRFUiArIGsgXSA9IHNpbGtfTFNISUZUKCBjYmtfcHRy
X1E3WyBjYmtfaW5kZXhbIGogXSAqIExUUF9PUkRFUiArIGsgXSwgNyApOwogICAgICAgICB9CiAg
ICAgfQorCisgICAgaWYoIG5iX3N1YmZyID09IDIgKSB7CisgICAgICAgIHJlc19ucmdfUTE1ID0g
c2lsa19SU0hJRlQzMiggcmVzX25yZ19RMTUsIDEgKTsKKyAgICB9IGVsc2UgeworICAgICAgICBy
ZXNfbnJnX1ExNSA9IHNpbGtfUlNISUZUMzIoIHJlc19ucmdfUTE1LCAyICk7CisgICAgfQorCiAg
ICAgKnN1bV9sb2dfZ2Fpbl9RNyA9IGJlc3Rfc3VtX2xvZ19nYWluX1E3OworICAgICpwcmVkX2dh
aW5fZEJfUTcgPSAob3B1c19pbnQpc2lsa19TTVVMQkIoIC0zLCBzaWxrX2xpbjJsb2coIHJlc19u
cmdfUTE1ICkgLSAoIDE1IDw8IDcgKSApOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3N0cnVjdHMuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9zdHJ1Y3RzLmgKaW5kZXggODI3ODI5ZGM2ZjMyY2UxMzQ4NWJlMTdhNzFlZmMzOTYzZDdj
NDIyNC4uNGZmNTkwYjA0Y2FiYTUwODM1ZmNkMTgwMDk0MzdiYzc5MGFhYWFhZSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL3N0cnVjdHMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvc3RydWN0cy5oCkBAIC00OCw2ICs0OCw3IEBAIHR5
cGVkZWYgc3RydWN0IHsKICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgc0xQQ19RMTRb
IE1BWF9TVUJfRlJBTUVfTEVOR1RIICsgTlNRX0xQQ19CVUZfTEVOR1RIIF07CiAgICAgb3B1c19p
bnQzMiAgICAgICAgICAgICAgICAgIHNBUjJfUTE0WyBNQVhfU0hBUEVfTFBDX09SREVSIF07CiAg
ICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHNMRl9BUl9zaHBfUTE0OworICAgIG9wdXNf
aW50MzIgICAgICAgICAgICAgICAgICBzRGlmZl9zaHBfUTE0OwogICAgIG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgICBsYWdQcmV2OwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBz
TFRQX2J1Zl9pZHg7CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIHNMVFBfc2hwX2J1
Zl9pZHg7CkBAIC04Niw2ICs4Nyw3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBjb25zdCBvcHVz
X2ludDE2ICAgICAgICAgICAgIHF1YW50U3RlcFNpemVfUTE2OwogICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgICAgICAgICAgaW52UXVhbnRTdGVwU2l6ZV9RNjsKICAgICBjb25zdCBvcHVzX3VpbnQ4
ICAgICAgICAgICAgICpDQjFfTkxTRl9RODsKKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAg
ICAgICpDQjFfV2dodF9ROTsKICAgICBjb25zdCBvcHVzX3VpbnQ4ICAgICAgICAgICAgICpDQjFf
aUNERjsKICAgICBjb25zdCBvcHVzX3VpbnQ4ICAgICAgICAgICAgICpwcmVkX1E4OwogICAgIGNv
bnN0IG9wdXNfdWludDggICAgICAgICAgICAgKmVjX3NlbDsKQEAgLTE2OSw4ICsxNzEsNiBAQCB0
eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICBwaXRjaEVz
dGltYXRpb25Db21wbGV4aXR5OyAgICAgICAgIC8qIENvbXBsZXhpdHkgbGV2ZWwgZm9yIHBpdGNo
IGVzdGltYXRvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgICAgIHBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyOyAgICAgICAgICAgLyog
V2hpdGVuaW5nIGZpbHRlciBvcmRlciBmb3IgcGl0Y2ggZXN0aW1hdG9yICAgICAgICAgICAgICAg
ICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgcGl0Y2hFc3RpbWF0
aW9uVGhyZXNob2xkX1ExNjsgICAgICAvKiBUaHJlc2hvbGQgZm9yIHBpdGNoIGVzdGltYXRvciAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICAgICBMVFBRdWFudExvd0NvbXBsZXhpdHk7ICAgICAgICAgICAgIC8qIEZsYWcg
Zm9yIGxvdyBjb21wbGV4aXR5IExUUCBxdWFudGl6YXRpb24gICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgIG11X0xUUF9ROTsgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogUmF0ZS1kaXN0b3J0aW9uIHRyYWRlb2ZmIGluIExUUCBxdWFu
dGl6YXRpb24gICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAg
ICAgICAgICAgc3VtX2xvZ19nYWluX1E3OyAgICAgICAgICAgICAgICAgICAvKiBDdW11bGF0aXZl
IG1heCBwcmVkaWN0aW9uIGdhaW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICBOTFNGX01TVlFfU3Vydml2b3JzOyAg
ICAgICAgICAgICAgIC8qIE51bWJlciBvZiBzdXJ2aXZvcnMgaW4gTkxTRiBNU1ZRICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAg
ICAgIGZpcnN0X2ZyYW1lX2FmdGVyX3Jlc2V0OyAgICAgICAgICAgLyogRmxhZyBmb3IgZGVhY3Rp
dmF0aW5nIE5MU0YgaW50ZXJwb2xhdGlvbiwgcGl0Y2ggcHJlZGljdGlvbiAgICAgICAqLwpAQCAt
MzAxLDYgKzMwMSw3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICAvKiBTdHVmZiB1c2VkIGZvciBQ
TEMgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbG9zc0NudDsKICAgICBvcHVz
X2ludCAgICAgICAgICAgICAgICAgICAgcHJldlNpZ25hbFR5cGU7CisgICAgaW50ICAgICAgICAg
ICAgICAgICAgICAgICAgIGFyY2g7CiAKICAgICBzaWxrX1BMQ19zdHJ1Y3Qgc1BMQzsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL3N1bV9zcXJfc2hpZnQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9zdW1fc3FyX3NoaWZ0LmMKaW5kZXgg
MTI5ZGYxOTFkOGRlZDRkODRlMDAzYWVhMzZkOThhNTlhMzQ5ZGQ0Ny4uNGZkMGMzZDdkNTM2YzNi
NWUzYmE1NDlkMTkwNDg4MzNkMDBiNGU2OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3N1bV9zcXJfc2hpZnQu
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvc3VtX3Nxcl9zaGlmdC5jCkBAIC00MSw0MyArNDEsNDAgQEAgdm9pZCBzaWxr
X3N1bV9zcXJfc2hpZnQoCiApCiB7CiAgICAgb3B1c19pbnQgICBpLCBzaGZ0OwotICAgIG9wdXNf
aW50MzIgbnJnX3RtcCwgbnJnOworICAgIG9wdXNfdWludDMyIG5yZ190bXA7CisgICAgb3B1c19p
bnQzMiBucmc7CiAKLSAgICBucmcgID0gMDsKLSAgICBzaGZ0ID0gMDsKLSAgICBsZW4tLTsKLSAg
ICBmb3IoIGkgPSAwOyBpIDwgbGVuOyBpICs9IDIgKSB7Ci0gICAgICAgIG5yZyA9IHNpbGtfU01M
QUJCX292Zmx3KCBucmcsIHhbIGkgXSwgeFsgaSBdICk7Ci0gICAgICAgIG5yZyA9IHNpbGtfU01M
QUJCX292Zmx3KCBucmcsIHhbIGkgKyAxIF0sIHhbIGkgKyAxIF0gKTsKLSAgICAgICAgaWYoIG5y
ZyA8IDAgKSB7Ci0gICAgICAgICAgICAvKiBTY2FsZSBkb3duICovCi0gICAgICAgICAgICBucmcg
PSAob3B1c19pbnQzMilzaWxrX1JTSElGVF91aW50KCAob3B1c191aW50MzIpbnJnLCAyICk7Ci0g
ICAgICAgICAgICBzaGZ0ID0gMjsKLSAgICAgICAgICAgIGkrPTI7Ci0gICAgICAgICAgICBicmVh
azsKLSAgICAgICAgfQorICAgIC8qIERvIGEgZmlyc3QgcnVuIHdpdGggdGhlIG1heGltdW0gc2hp
ZnQgd2UgY291bGQgaGF2ZS4gKi8KKyAgICBzaGZ0ID0gMzEtc2lsa19DTFozMihsZW4pOworICAg
IC8qIExldCdzIGJlIGNvbnNlcnZhdGl2ZSB3aXRoIHJvdW5kaW5nIGFuZCBzdGFydCB3aXRoIG5y
Zz1sZW4uICovCisgICAgbnJnICA9IGxlbjsKKyAgICBmb3IoIGkgPSAwOyBpIDwgbGVuIC0gMTsg
aSArPSAyICkgeworICAgICAgICBucmdfdG1wID0gc2lsa19TTVVMQkIoIHhbIGkgXSwgeFsgaSBd
ICk7CisgICAgICAgIG5yZ190bXAgPSBzaWxrX1NNTEFCQl9vdmZsdyggbnJnX3RtcCwgeFsgaSAr
IDEgXSwgeFsgaSArIDEgXSApOworICAgICAgICBucmcgPSAob3B1c19pbnQzMilzaWxrX0FERF9S
U0hJRlRfdWludCggbnJnLCBucmdfdG1wLCBzaGZ0ICk7CiAgICAgfQotICAgIGZvciggOyBpIDwg
bGVuOyBpICs9IDIgKSB7CisgICAgaWYoIGkgPCBsZW4gKSB7CisgICAgICAgIC8qIE9uZSBzYW1w
bGUgbGVmdCB0byBwcm9jZXNzICovCisgICAgICAgIG5yZ190bXAgPSBzaWxrX1NNVUxCQiggeFsg
aSBdLCB4WyBpIF0gKTsKKyAgICAgICAgbnJnID0gKG9wdXNfaW50MzIpc2lsa19BRERfUlNISUZU
X3VpbnQoIG5yZywgbnJnX3RtcCwgc2hmdCApOworICAgIH0KKyAgICBzaWxrX2Fzc2VydCggbnJn
ID49IDAgKTsKKyAgICAvKiBNYWtlIHN1cmUgdGhlIHJlc3VsdCB3aWxsIGZpdCBpbiBhIDMyLWJp
dCBzaWduZWQgaW50ZWdlciB3aXRoIHR3byBiaXRzCisgICAgICAgb2YgaGVhZHJvb20uICovCisg
ICAgc2hmdCA9IHNpbGtfbWF4XzMyKDAsIHNoZnQrMyAtIHNpbGtfQ0xaMzIobnJnKSk7CisgICAg
bnJnID0gMDsKKyAgICBmb3IoIGkgPSAwIDsgaSA8IGxlbiAtIDE7IGkgKz0gMiApIHsKICAgICAg
ICAgbnJnX3RtcCA9IHNpbGtfU01VTEJCKCB4WyBpIF0sIHhbIGkgXSApOwogICAgICAgICBucmdf
dG1wID0gc2lsa19TTUxBQkJfb3ZmbHcoIG5yZ190bXAsIHhbIGkgKyAxIF0sIHhbIGkgKyAxIF0g
KTsKLSAgICAgICAgbnJnID0gKG9wdXNfaW50MzIpc2lsa19BRERfUlNISUZUX3VpbnQoIG5yZywg
KG9wdXNfdWludDMyKW5yZ190bXAsIHNoZnQgKTsKLSAgICAgICAgaWYoIG5yZyA8IDAgKSB7Ci0g
ICAgICAgICAgICAvKiBTY2FsZSBkb3duICovCi0gICAgICAgICAgICBucmcgPSAob3B1c19pbnQz
MilzaWxrX1JTSElGVF91aW50KCAob3B1c191aW50MzIpbnJnLCAyICk7Ci0gICAgICAgICAgICBz
aGZ0ICs9IDI7Ci0gICAgICAgIH0KKyAgICAgICAgbnJnID0gKG9wdXNfaW50MzIpc2lsa19BRERf
UlNISUZUX3VpbnQoIG5yZywgbnJnX3RtcCwgc2hmdCApOwogICAgIH0KLSAgICBpZiggaSA9PSBs
ZW4gKSB7CisgICAgaWYoIGkgPCBsZW4gKSB7CiAgICAgICAgIC8qIE9uZSBzYW1wbGUgbGVmdCB0
byBwcm9jZXNzICovCiAgICAgICAgIG5yZ190bXAgPSBzaWxrX1NNVUxCQiggeFsgaSBdLCB4WyBp
IF0gKTsKICAgICAgICAgbnJnID0gKG9wdXNfaW50MzIpc2lsa19BRERfUlNISUZUX3VpbnQoIG5y
ZywgbnJnX3RtcCwgc2hmdCApOwogICAgIH0KIAotICAgIC8qIE1ha2Ugc3VyZSB0byBoYXZlIGF0
IGxlYXN0IG9uZSBleHRyYSBsZWFkaW5nIHplcm8gKHR3byBsZWFkaW5nIHplcm9zIGluIHRvdGFs
KSAqLwotICAgIGlmKCBucmcgJiAweEMwMDAwMDAwICkgewotICAgICAgICBucmcgPSBzaWxrX1JT
SElGVF91aW50KCAob3B1c191aW50MzIpbnJnLCAyICk7Ci0gICAgICAgIHNoZnQgKz0gMjsKLSAg
ICB9CisgICAgc2lsa19hc3NlcnQoIG5yZyA+PSAwICk7CiAKICAgICAvKiBPdXRwdXQgYXJndW1l
bnRzICovCiAgICAgKnNoaWZ0ICA9IHNoZnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvdGFibGVzLmgKaW5kZXggN2ZlYTZmZGEzOWRhNDYzMzg0YzMxNWQ1YjY1MmMzMzUyZjY5NjE4
Mi4uOGIwMzgwZWViMDk4NGMxN2IzODI1NjcyOTc4NTFjMmQ1YTI3MGFhZSAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL3RhYmxlcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXMuaApAQCAtNzYsMTAgKzc2LDggQEAgZXh0ZXJu
IGNvbnN0IG9wdXNfdWludDggIHNpbGtfTkxTRl9FWFRfaUNERlsgNyBdOwogZXh0ZXJuIGNvbnN0
IG9wdXNfdWludDggIHNpbGtfTFRQX3Blcl9pbmRleF9pQ0RGWyAzIF07ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qICAgMyAqLwogZXh0ZXJuIGNvbnN0IG9w
dXNfdWludDggICogY29uc3Qgc2lsa19MVFBfZ2Fpbl9pQ0RGX3B0cnNbIE5CX0xUUF9DQktTIF07
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qICAgMyAqLwogZXh0ZXJuIGNvbnN0IG9wdXNf
dWludDggICogY29uc3Qgc2lsa19MVFBfZ2Fpbl9CSVRTX1E1X3B0cnNbIE5CX0xUUF9DQktTIF07
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qICAgMyAqLwotZXh0ZXJuIGNvbnN0IG9wdXNfaW50
MTYgIHNpbGtfTFRQX2dhaW5fbWlkZGxlX2F2Z19SRF9RMTQ7CiBleHRlcm4gY29uc3Qgb3B1c19p
bnQ4ICAgKiBjb25zdCBzaWxrX0xUUF92cV9wdHJzX1E3WyBOQl9MVFBfQ0JLUyBdOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogMTY4ICovCiBleHRlcm4gY29uc3Qgb3B1c191aW50
OCAgKiBjb25zdCBzaWxrX0xUUF92cV9nYWluX3B0cnNfUTdbTkJfTFRQX0NCS1NdOwotCiBleHRl
cm4gY29uc3Qgb3B1c19pbnQ4ICAgc2lsa19MVFBfdnFfc2l6ZXNbIE5CX0xUUF9DQktTIF07ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogICAzICovCiAKIGV4dGVy
biBjb25zdCBvcHVzX3VpbnQ4ICBzaWxrX0xUUHNjYWxlX2lDREZbIDMgXTsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAgIDQgKi8KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay90YWJsZXNfTFRQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX0xUUC5jCmluZGV4IDBlNmEwMjU0ZDVk
YjU1MjYyY2VjZTAyNjk4ZDUzZWI0YjEzMjdkNmIuLjVlMTJjODY0M2U1YjBmMTVjMWM5NDg2YTg4
NDVjODMzZjFkZGYzNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXNfTFRQLmMKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3Rh
Ymxlc19MVFAuYwpAQCAtNTEsOCArNTEsNiBAQCBzdGF0aWMgY29uc3Qgb3B1c191aW50OCBzaWxr
X0xUUF9nYWluX2lDREZfMlszMl0gPSB7CiAgICAgICAgIDI0LCAgICAgMjAsICAgICAxNiwgICAg
IDEyLCAgICAgIDksICAgICAgNSwgICAgICAyLCAgICAgIDAKIH07CiAKLWNvbnN0IG9wdXNfaW50
MTYgc2lsa19MVFBfZ2Fpbl9taWRkbGVfYXZnX1JEX1ExNCA9IDEyMzA0OwotCiBzdGF0aWMgY29u
c3Qgb3B1c191aW50OCBzaWxrX0xUUF9nYWluX0JJVFNfUTVfMFs4XSA9IHsKICAgICAgICAgMTUs
ICAgIDEzMSwgICAgMTM4LCAgICAxMzgsICAgIDE1NSwgICAgMTU1LCAgICAxNzMsICAgIDE3Mwog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXNfTkxTRl9DQl9OQl9NQi5jIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxlc19O
TFNGX0NCX05CX01CLmMKaW5kZXggOGM1OWQyMDdhYTAwODA4NjU3YzY2MmI2NTg4ZDFmY2ZjM2Fj
Nzk1Yi4uMTk1ZDViOTViZDE1NGNjNGE5NGYyZWU2M2I3Njg4YTVlYzA2NzFmNyAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL3RhYmxlc19OTFNGX0NCX05CX01CLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxlc19OTFNGX0NCX05C
X01CLmMKQEAgLTc0LDYgKzc0LDQxIEBAIHN0YXRpYyBjb25zdCBvcHVzX3VpbnQ4IHNpbGtfTkxT
Rl9DQjFfTkJfTUJfUThbIDMyMCBdID0gewogICAgICAgICA2NCwgICAgIDg0LCAgICAxMDQsICAg
IDExOCwgICAgMTU2LCAgICAxNzcsICAgIDIwMSwgICAgMjMwCiB9OwogCitzdGF0aWMgY29uc3Qg
b3B1c19pbnQxNiBzaWxrX05MU0ZfQ0IxX1dnaHRfUTlbIDMyMCBdID0geworICAgICAyODk3LCAy
MzE0LCAyMzE0LCAyMzE0LCAyMjg3LCAyMjg3LCAyMzE0LCAyMzAwLCAyMzI3LCAyMjg3LAorICAg
ICAyODg4LCAyNTgwLCAyMzk0LCAyMzY3LCAyMzE0LCAyMjc0LCAyMjc0LCAyMjc0LCAyMjc0LCAy
MTk0LAorICAgICAyNDg3LCAyMzQwLCAyMzQwLCAyMzE0LCAyMzE0LCAyMzE0LCAyMzQwLCAyMzQw
LCAyMzY3LCAyMzU0LAorICAgICAzMjE2LCAyNzY2LCAyMzQwLCAyMzQwLCAyMzE0LCAyMjc0LCAy
MjIxLCAyMjA3LCAyMjYxLCAyMTk0LAorICAgICAyNDYwLCAyNDc0LCAyMzY3LCAyMzk0LCAyMzk0
LCAyMzk0LCAyMzk0LCAyMzY3LCAyNDA3LCAyMzE0LAorICAgICAzNDc5LCAzMDU2LCAyMTI3LCAy
MjA3LCAyMjc0LCAyMjc0LCAyMjc0LCAyMjg3LCAyMzE0LCAyMjYxLAorICAgICAzMjgyLCAzMTQx
LCAyNTgwLCAyMzk0LCAyMjQ3LCAyMjIxLCAyMjA3LCAyMTk0LCAyMTk0LCAyMTE0LAorICAgICA0
MDk2LCAzODQ1LCAyMjIxLCAyNjIwLCAyNjIwLCAyNDA3LCAyMzE0LCAyMzk0LCAyMzY3LCAyMDc0
LAorICAgICAzMTc4LCAzMjQ0LCAyMzY3LCAyMjIxLCAyNTUzLCAyNDM0LCAyMzQwLCAyMzE0LCAy
MTY3LCAyMjIxLAorICAgICAzMzM4LCAzNDg4LCAyNzI2LCAyMTk0LCAyMjYxLCAyNDYwLCAyMzU0
LCAyMzY3LCAyMjA3LCAyMTAxLAorICAgICAyMzU0LCAyNDIwLCAyMzI3LCAyMzY3LCAyMzk0LCAy
NDIwLCAyNDIwLCAyNDIwLCAyNDYwLCAyMzY3LAorICAgICAzNzc5LCAzNjI5LCAyNDM0LCAyNTI3
LCAyMzY3LCAyMjc0LCAyMjc0LCAyMzAwLCAyMjA3LCAyMDQ4LAorICAgICAzMjU0LCAzMjI1LCAy
NzEzLCAyODQ2LCAyNDQ3LCAyMzI3LCAyMzAwLCAyMzAwLCAyMjc0LCAyMTI3LAorICAgICAzMjYz
LCAzMzAwLCAyNzUzLCAyODA2LCAyNDQ3LCAyMjYxLCAyMjYxLCAyMjQ3LCAyMTI3LCAyMTAxLAor
ICAgICAyODczLCAyOTgxLCAyNjMzLCAyMzY3LCAyNDA3LCAyMzU0LCAyMTk0LCAyMjQ3LCAyMjQ3
LCAyMTE0LAorICAgICAzMjI1LCAzMTk3LCAyNjMzLCAyNTgwLCAyMjc0LCAyMTgxLCAyMjQ3LCAy
MjIxLCAyMjIxLCAyMTQxLAorICAgICAzMTc4LCAzMzEwLCAyNzQwLCAyNDA3LCAyMjc0LCAyMjc0
LCAyMjc0LCAyMjg3LCAyMTk0LCAyMTE0LAorICAgICAzMTQxLCAzMjcyLCAyNDYwLCAyMDYxLCAy
Mjg3LCAyNTAwLCAyMzY3LCAyNDg3LCAyNDM0LCAyMTgxLAorICAgICAzNTA3LCAzMjgyLCAyMzE0
LCAyNzAwLCAyNjQ3LCAyNDc0LCAyMzY3LCAyMzk0LCAyMzQwLCAyMTI3LAorICAgICAzNDIzLCAz
NTM1LCAzMDM4LCAzMDU2LCAyMzAwLCAxOTUwLCAyMjIxLCAyMjc0LCAyMjc0LCAyMjc0LAorICAg
ICAzNDA0LCAzMzY2LCAyMDg3LCAyNjg3LCAyODczLCAyMzU0LCAyNDIwLCAyMjc0LCAyNDc0LCAy
NTQwLAorICAgICAzNzYwLCAzNDg4LCAxOTUwLCAyNjYwLCAyODk3LCAyNTI3LCAyMzk0LCAyMzY3
LCAyNDYwLCAyMjYxLAorICAgICAzMDI4LCAzMjcyLCAyNzQwLCAyODg4LCAyNzQwLCAyMTU0LCAy
MTI3LCAyMjg3LCAyMjM0LCAyMjQ3LAorICAgICAzNjk1LCAzNjU3LCAyMDI1LCAxOTY5LCAyNjYw
LCAyNzAwLCAyNTgwLCAyNTAwLCAyMzI3LCAyMzY3LAorICAgICAzMjA3LCAzNDEzLCAyMzU0LCAy
MDc0LCAyODg4LCAyODg4LCAyMzQwLCAyNDg3LCAyMjQ3LCAyMTY3LAorICAgICAzMzM4LCAzMzY2
LCAyODQ2LCAyNzgwLCAyMzI3LCAyMTU0LCAyMjc0LCAyMjg3LCAyMTE0LCAyMDYxLAorICAgICAy
MzI3LCAyMzAwLCAyMTgxLCAyMTY3LCAyMTgxLCAyMzY3LCAyNjMzLCAyNzAwLCAyNzAwLCAyNTUz
LAorICAgICAyNDA3LCAyNDM0LCAyMjIxLCAyMjYxLCAyMjIxLCAyMjIxLCAyMzQwLCAyNDIwLCAy
NjA3LCAyNzAwLAorICAgICAzMDM4LCAzMjQ0LCAyODA2LCAyODg4LCAyNDc0LCAyMDc0LCAyMzAw
LCAyMzE0LCAyMzU0LCAyMzgwLAorICAgICAyMjIxLCAyMTU0LCAyMTI3LCAyMjg3LCAyNTAwLCAy
NzkzLCAyNzkzLCAyNjIwLCAyNTgwLCAyMzY3LAorICAgICAzNjc2LCAzNzEzLCAyMjM0LCAxODM4
LCAyMTgxLCAyNzUzLCAyNzI2LCAyNjczLCAyNTEzLCAyMjA3LAorICAgICAyNzkzLCAzMTYwLCAy
NzI2LCAyNTUzLCAyODQ2LCAyNTEzLCAyMTgxLCAyMzk0LCAyMjIxLCAyMTgxCit9OworCiBzdGF0
aWMgY29uc3Qgb3B1c191aW50OCBzaWxrX05MU0ZfQ0IxX2lDREZfTkJfTUJbIDY0IF0gPSB7CiAg
ICAgICAgMjEyLCAgICAxNzgsICAgIDE0OCwgICAgMTI5LCAgICAxMDgsICAgICA5NiwgICAgIDg1
LCAgICAgODIsCiAgICAgICAgIDc5LCAgICAgNzcsICAgICA2MSwgICAgIDU5LCAgICAgNTcsICAg
ICA1NiwgICAgIDUxLCAgICAgNDksCkBAIC0xNTAsNiArMTg1LDcgQEAgY29uc3Qgc2lsa19OTFNG
X0NCX3N0cnVjdCBzaWxrX05MU0ZfQ0JfTkJfTUIgPQogICAgIFNJTEtfRklYX0NPTlNUKCAwLjE4
LCAxNiApLAogICAgIFNJTEtfRklYX0NPTlNUKCAxLjAgLyAwLjE4LCA2ICksCiAgICAgc2lsa19O
TFNGX0NCMV9OQl9NQl9ROCwKKyAgICBzaWxrX05MU0ZfQ0IxX1dnaHRfUTksCiAgICAgc2lsa19O
TFNGX0NCMV9pQ0RGX05CX01CLAogICAgIHNpbGtfTkxTRl9QUkVEX05CX01CX1E4LAogICAgIHNp
bGtfTkxTRl9DQjJfU0VMRUNUX05CX01CLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxlc19OTFNGX0NC
X1dCLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvdGFibGVzX05MU0ZfQ0JfV0IuYwppbmRleCA1MGFmODdlYjJlMWMxZDc0Mjg2
MjY5MDc0YjVkOGEwOTI2MjAyN2MzLi41Y2M5ZjU3YmZmY2E3Nzg4NmRlODc2NGQzMmQ2MjIxM2Rh
NWRhZmQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX05MU0ZfQ0JfV0IuYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFi
bGVzX05MU0ZfQ0JfV0IuYwpAQCAtOTgsNiArOTgsNDEgQEAgc3RhdGljIGNvbnN0IG9wdXNfdWlu
dDggc2lsa19OTFNGX0NCMV9XQl9ROFsgNTEyIF0gPSB7CiAgICAgICAgMTEwLCAgICAxMTksICAg
IDEyOSwgICAgMTQxLCAgICAxNzUsICAgIDE5OCwgICAgMjE4LCAgICAyMzcKIH07CiAKK3N0YXRp
YyBjb25zdCBvcHVzX2ludDE2IHNpbGtfTkxTRl9DQjFfV0JfV2dodF9ROVsgNTEyIF0gPSB7Cisg
ICAgIDM2NTcsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUs
IDI5MjUsIDI5MjUsIDI5MjUsIDI5NjMsIDI5NjMsIDI5MjUsIDI4NDYsCisgICAgIDMyMTYsIDMw
ODUsIDI5NzIsIDMwNTYsIDMwNTYsIDMwMTAsIDMwMTAsIDMwMTAsIDI5NjMsIDI5NjMsIDMwMTAs
IDI5NzIsIDI4ODgsIDI4NDYsIDI4NDYsIDI3MjYsCisgICAgIDM5MjAsIDQwMTQsIDI5ODEsIDMy
MDcsIDMyMDcsIDI5MzQsIDMwNTYsIDI4NDYsIDMxMjIsIDMyNDQsIDI5MjUsIDI4NDYsIDI2MjAs
IDI1NTMsIDI3ODAsIDI5MjUsCisgICAgIDM1MTYsIDMxOTcsIDMwMTAsIDMxMDMsIDMwMTksIDI4
ODgsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI4ODgsIDI4ODgsIDI4ODgsIDI4ODgsIDI4ODgs
IDI3NTMsCisgICAgIDUwNTQsIDUwNTQsIDI5MzQsIDM1NzMsIDMzODUsIDMwNTYsIDMwODUsIDI3
OTMsIDMxNjAsIDMxNjAsIDI5NzIsIDI4NDYsIDI1MTMsIDI1NDAsIDI3NTMsIDI4ODgsCisgICAg
IDQ0MjgsIDQxNDksIDI3MDAsIDI3NTMsIDI5NzIsIDMwMTAsIDI5MjUsIDI4NDYsIDI5ODEsIDMw
MTksIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI4ODgsIDI3MjYsCisgICAgIDM2MjAsIDMwMTks
IDI5NzIsIDMwNTYsIDMwNTYsIDI4NzMsIDI4MDYsIDMwNTYsIDMyMTYsIDMwNDcsIDI5ODEsIDMy
OTEsIDMyOTEsIDI5ODEsIDMzMTAsIDI5OTEsCisgICAgIDUyMjcsIDUwMTQsIDI1NDAsIDMzMzgs
IDM1MjYsIDMzODUsIDMxOTcsIDMwOTQsIDMzNzYsIDI5ODEsIDI3MDAsIDI2NDcsIDI2ODcsIDI3
OTMsIDI4NDYsIDI2NzMsCisgICAgIDUwODEsIDUxNzQsIDQ2MTUsIDQ0MjgsIDI0NjAsIDI4OTcs
IDMwNDcsIDMyMDcsIDMxNjksIDI2ODcsIDI3NDAsIDI4ODgsIDI4NDYsIDI3OTMsIDI4NDYsIDI3
MDAsCisgICAgIDMxMjIsIDI4ODgsIDI5NjMsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5NjMs
IDI5NjMsIDI5NjMsIDI5NjMsIDI5MjUsIDI5MjUsIDI5NjMsIDI5NjMsIDI5NjMsCisgICAgIDQy
MDIsIDMyMDcsIDI5ODEsIDMxMDMsIDMwMTAsIDI4ODgsIDI4ODgsIDI5MjUsIDI5NzIsIDI4NzMs
IDI5MTYsIDMwMTksIDI5NzIsIDMwMTAsIDMxOTcsIDI4NzMsCisgICAgIDM3NjAsIDM3NjAsIDMy
NDQsIDMxMDMsIDI5ODEsIDI4ODgsIDI5MjUsIDI4ODgsIDI5NzIsIDI5MzQsIDI3OTMsIDI3OTMs
IDI4NDYsIDI4ODgsIDI4ODgsIDI2NjAsCisgICAgIDM4NTQsIDQwMTQsIDMyMDcsIDMxMjIsIDMy
NDQsIDI5MzQsIDMwNDcsIDI5NjMsIDI5NjMsIDMwODUsIDI4NDYsIDI3OTMsIDI3OTMsIDI3OTMs
IDI3OTMsIDI1ODAsCisgICAgIDM4NDUsIDQwODAsIDMzNTcsIDM1MTYsIDMwOTQsIDI3NDAsIDMw
MTAsIDI5MzQsIDMxMjIsIDMwODUsIDI4NDYsIDI4NDYsIDI2NDcsIDI2NDcsIDI4NDYsIDI4MDYs
CisgICAgIDUxNDcsIDQ4OTQsIDMyMjUsIDM4NDUsIDM0NDEsIDMxNjksIDI4OTcsIDM0MTMsIDM0
NTEsIDI3MDAsIDI1ODAsIDI2NzMsIDI3NDAsIDI4NDYsIDI4MDYsIDI3NTMsCisgICAgIDQxMDks
IDM3ODksIDMyOTEsIDMxNjAsIDI5MjUsIDI4ODgsIDI4ODgsIDI5MjUsIDI3OTMsIDI3NDAsIDI3
OTMsIDI3NDAsIDI3OTMsIDI4NDYsIDI4ODgsIDI4MDYsCisgICAgIDUwODEsIDUwNTQsIDMwNDcs
IDM1NDUsIDMyNDQsIDMwNTYsIDMwODUsIDI5NDQsIDMxMDMsIDI4OTcsIDI3NDAsIDI3NDAsIDI3
NDAsIDI4NDYsIDI3OTMsIDI2MjAsCisgICAgIDQzMDksIDQzMDksIDI4NjAsIDI1MjcsIDMyMDcs
IDMzNzYsIDMzNzYsIDMwNzUsIDMwNzUsIDMzNzYsIDMwNTYsIDI4NDYsIDI2NDcsIDI1ODAsIDI3
MjYsIDI3NTMsCisgICAgIDMwNTYsIDI5MTYsIDI4MDYsIDI4ODgsIDI3NDAsIDI2ODcsIDI4OTcs
IDMxMDMsIDMxNTAsIDMxNTAsIDMyMTYsIDMxNjksIDMwNTYsIDMwMTAsIDI5NjMsIDI4NDYsCisg
ICAgIDQzNzUsIDM4ODIsIDI5MjUsIDI4ODgsIDI4NDYsIDI4ODgsIDI4NDYsIDI4NDYsIDI4ODgs
IDI4ODgsIDI4ODgsIDI4NDYsIDI4ODgsIDI5MjUsIDI4ODgsIDI4NDYsCisgICAgIDI5ODEsIDI5
MTYsIDI5MTYsIDI5ODEsIDI5ODEsIDMwNTYsIDMxMjIsIDMyMTYsIDMxNTAsIDMwNTYsIDMwMTAs
IDI5NzIsIDI5NzIsIDI5NzIsIDI5MjUsIDI3NDAsCisgICAgIDQyMjksIDQxNDksIDMzMTAsIDMz
NDcsIDI5MjUsIDI5NjMsIDI4ODgsIDI5ODEsIDI5ODEsIDI4NDYsIDI3OTMsIDI3NDAsIDI4NDYs
IDI4NDYsIDI4NDYsIDI3OTMsCisgICAgIDQwODAsIDQwMTQsIDMxMDMsIDMwMTAsIDI5MjUsIDI5
MjUsIDI5MjUsIDI4ODgsIDI5MjUsIDI5MjUsIDI4NDYsIDI4NDYsIDI4NDYsIDI3OTMsIDI4ODgs
IDI3ODAsCisgICAgIDQ2MTUsIDQ1NzUsIDMxNjksIDM0NDEsIDMyMDcsIDI5ODEsIDI4OTcsIDMw
MzgsIDMxMjIsIDI3NDAsIDI2ODcsIDI2ODcsIDI2ODcsIDI3NDAsIDI3OTMsIDI3MDAsCisgICAg
IDQxNDksIDQyNjksIDM3ODksIDM2NTcsIDI3MjYsIDI3ODAsIDI4ODgsIDI4ODgsIDMwMTAsIDI5
NzIsIDI5MjUsIDI4NDYsIDI2ODcsIDI2ODcsIDI3OTMsIDI4ODgsCisgICAgIDQyMTUsIDM1NTQs
IDI3NTMsIDI4NDYsIDI4NDYsIDI4ODgsIDI4ODgsIDI4ODgsIDI5MjUsIDI5MjUsIDI4ODgsIDI5
MjUsIDI5MjUsIDI5MjUsIDI5NjMsIDI4ODgsCisgICAgIDUxNzQsIDQ5MjEsIDIyNjEsIDM0MzIs
IDM3ODksIDM0NzksIDMzNDcsIDI4NDYsIDMzMTAsIDM0NzksIDMxNTAsIDI4OTcsIDI0NjAsIDI0
ODcsIDI3NTMsIDI5MjUsCisgICAgIDM0NTEsIDM2ODUsIDMxMjIsIDMxOTcsIDMzNTcsIDMwNDcs
IDMyMDcsIDMyMDcsIDI5ODEsIDMyMTYsIDMwODUsIDI5MjUsIDI5MjUsIDI2ODcsIDI1NDAsIDI0
MzQsCisgICAgIDI5ODEsIDMwMTAsIDI3OTMsIDI3OTMsIDI3NDAsIDI3OTMsIDI4NDYsIDI5NzIs
IDMwNTYsIDMxMDMsIDMxNTAsIDMxNTAsIDMxNTAsIDMxMDMsIDMwMTAsIDMwMTAsCisgICAgIDI5
NDQsIDI4NzMsIDI2ODcsIDI3MjYsIDI3ODAsIDMwMTAsIDM0MzIsIDM1NDUsIDMzNTcsIDMyNDQs
IDMwNTYsIDMwMTAsIDI5NjMsIDI5MjUsIDI4ODgsIDI4NDYsCisgICAgIDMwMTksIDI5NDQsIDI4
OTcsIDMwMTAsIDMwMTAsIDI5NzIsIDMwMTksIDMxMDMsIDMwNTYsIDMwNTYsIDMwMTAsIDI4ODgs
IDI4NDYsIDI5MjUsIDI5MjUsIDI4ODgsCisgICAgIDM5MjAsIDM5NjcsIDMwMTAsIDMxOTcsIDMz
NTcsIDMyMTYsIDMyOTEsIDMyOTEsIDM0NzksIDM3MDQsIDM0NDEsIDI3MjYsIDIxODEsIDI0NjAs
IDI1ODAsIDI2MDcKK307CisKIHN0YXRpYyBjb25zdCBvcHVzX3VpbnQ4IHNpbGtfTkxTRl9DQjFf
aUNERl9XQlsgNjQgXSA9IHsKICAgICAgICAyMjUsICAgIDIwNCwgICAgMjAxLCAgICAxODQsICAg
IDE4MywgICAgMTc1LCAgICAxNTgsICAgIDE1NCwKICAgICAgICAxNTMsICAgIDEzNSwgICAgMTE5
LCAgICAxMTUsICAgIDExMywgICAgMTEwLCAgICAxMDksICAgICA5OSwKQEAgLTE4OCw2ICsyMjMs
NyBAQCBjb25zdCBzaWxrX05MU0ZfQ0Jfc3RydWN0IHNpbGtfTkxTRl9DQl9XQiA9CiAgICAgU0lM
S19GSVhfQ09OU1QoIDAuMTUsIDE2ICksCiAgICAgU0lMS19GSVhfQ09OU1QoIDEuMCAvIDAuMTUs
IDYgKSwKICAgICBzaWxrX05MU0ZfQ0IxX1dCX1E4LAorICAgIHNpbGtfTkxTRl9DQjFfV0JfV2do
dF9ROSwKICAgICBzaWxrX05MU0ZfQ0IxX2lDREZfV0IsCiAgICAgc2lsa19OTFNGX1BSRURfV0Jf
UTgsCiAgICAgc2lsa19OTFNGX0NCMl9TRUxFQ1RfV0IsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGVzdHMv
dGVzdF91bml0X0xQQ19pbnZfcHJlZF9nYWluLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGVzdHMvdGVzdF91bml0X0xQQ19p
bnZfcHJlZF9nYWluLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjcwNjdjZWFkNzAyOTdmZTc3MzYxYWU1NTVhYTli
YzMwNGI4N2ZmNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90ZXN0cy90ZXN0X3VuaXRfTFBDX2lu
dl9wcmVkX2dhaW4uYwpAQCAtMCwwICsxLDEyOSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitDb3B5cmln
aHQgKGMpIDIwMTcgR29vZ2xlIEluYy4sIEplYW4tTWFyYyBWYWxpbgorUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCitk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYg
b3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBt
YXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2ZWQgZnJvbSB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVybWlzc2lvbi4K
K1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UK
K0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2lmZGVmIEhBVkVf
Q09ORklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVkZSA8c3RkaW8u
aD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlICJjZWx0L3N0YWNrX2FsbG9jLmgiCisj
aW5jbHVkZSAiY3B1X3N1cHBvcnQuaCIKKyNpbmNsdWRlICJTaWdQcm9jX0ZJWC5oIgorCisvKiBD
b21wdXRlcyB0aGUgaW1wdWxzZSByZXNwb25zZSBvZiB0aGUgZmlsdGVyIHNvIHdlCisgICBjYW4g
Y2F0Y2ggZmlsdGVycyB0aGF0IGFyZSBkZWZpbml0ZWx5IHVuc3RhYmxlLiBTb21lCisgICB1bnN0
YWJsZSBmaWx0ZXJzIG1heSBiZSBjbGFzc2lmaWVkIGFzIHN0YWJsZSwgYnV0IG5vdAorICAgdGhl
IG90aGVyIHdheSBhcm91bmQuICovCitpbnQgY2hlY2tfc3RhYmlsaXR5KG9wdXNfaW50MTYgKkFf
UTEyLCBpbnQgb3JkZXIpIHsKKyAgICBpbnQgaTsKKyAgICBpbnQgajsKKyAgICBpbnQgc3VtX2Es
IHN1bV9hYnNfYTsKKyAgICBzdW1fYSA9IHN1bV9hYnNfYSA9IDA7CisgICAgZm9yKCBqID0gMDsg
aiA8IG9yZGVyOyBqKysgKSB7CisgICAgICAgIHN1bV9hICs9IEFfUTEyWyBqIF07CisgICAgICAg
IHN1bV9hYnNfYSArPSBzaWxrX2FicyggQV9RMTJbIGogXSApOworICAgIH0KKyAgICAvKiBDaGVj
ayBEQyBzdGFiaWxpdHkuICovCisgICAgaWYoIHN1bV9hID49IDQwOTYgKSB7CisgICAgICAgIHJl
dHVybiAwOworICAgIH0KKyAgICAvKiBJZiB0aGUgc3VtIG9mIGFic29sdXRlIHZhbHVlcyBpcyBs
ZXNzIHRoYW4gMSwgdGhlIGZpbHRlcgorICAgICAgIGhhcyB0byBiZSBzdGFibGUuICovCisgICAg
aWYoIHN1bV9hYnNfYSA8IDQwOTYgKSB7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgICBk
b3VibGUgeVtTSUxLX01BWF9PUkRFUl9MUENdID0gezB9OworICAgIHlbMF0gPSAxOworICAgIGZv
ciggaSA9IDA7IGkgPCAxMDAwMDsgaSsrICkgeworICAgICAgICBkb3VibGUgc3VtID0gMDsKKyAg
ICAgICAgZm9yKCBqID0gMDsgaiA8IG9yZGVyOyBqKysgKSB7CisgICAgICAgICAgICBzdW0gKz0g
eVsgaiBdKkFfUTEyWyBqIF07CisgICAgICAgIH0KKyAgICAgICAgZm9yKCBqID0gb3JkZXIgLSAx
OyBqID4gMDsgai0tICkgeworICAgICAgICAgICAgeVsgaiBdID0geVsgaiAtIDEgXTsKKyAgICAg
ICAgfQorICAgICAgICB5WyAwIF0gPSBzdW0qKDEuLzQwOTYpOworICAgICAgICAvKiBJZiBpbXB1
bHNlIHJlc3BvbnNlIHJlYWNoZXMgKy8tIDEwMDAwLCB0aGUgZmlsdGVyCisgICAgICAgICAgIGlz
IGRlZmluaXRlbHkgdW5zdGFibGUuICovCisgICAgICAgIGlmKCAhKHlbIDAgXSA8IDEwMDAwICYm
IHlbIDAgXSA+IC0xMDAwMCkgKSB7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQor
ICAgICAgICAvKiBUZXN0IGV2ZXJ5IDggc2FtcGxlIGZvciBsb3cgYW1wbGl0dWRlLiAqLworICAg
ICAgICBpZiggKCBpICYgMHg3ICkgPT0gMCApIHsKKyAgICAgICAgICAgIGRvdWJsZSBhbXAgPSAw
OworICAgICAgICAgICAgZm9yKCBqID0gMDsgaiA8IG9yZGVyOyBqKysgKSB7CisgICAgICAgICAg
ICAgICAgYW1wICs9IGZhYnMoeVtqXSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZigg
YW1wIDwgMC4wMDAwMSApIHsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gMTsKK30KKworaW50IG1haW4odm9pZCkg
eworICAgIGNvbnN0IGludCBhcmNoID0gb3B1c19zZWxlY3RfYXJjaCgpOworICAgIC8qIFNldCB0
byAxMDAwMCBzbyBhbGwgYnJhbmNoZXMgaW4gQyBmdW5jdGlvbiBhcmUgdHJpZ2dlcmVkICovCisg
ICAgY29uc3QgaW50IGxvb3BfbnVtID0gMTAwMDA7CisgICAgaW50IGNvdW50ID0gMDsKKyAgICBB
TExPQ19TVEFDSzsKKworICAgIC8qIEZJWE1FOiBNYWtlIHRoZSBzZWVkIHJhbmRvbSAod2l0aCBv
cHRpb24gdG8gc2V0IGl0IGV4cGxpY2l0bHkpCisgICAgICAgc28gd2UgZ2V0IHdpZGVyIGNvdmVy
YWdlLiAqLworICAgIHNyYW5kKDApOworCisgICAgcHJpbnRmKCJUZXN0aW5nIHNpbGtfTFBDX2lu
dmVyc2VfcHJlZF9nYWluKCkgb3B0aW1pemF0aW9uIC4uLlxuIik7CisgICAgZm9yKCBjb3VudCA9
IDA7IGNvdW50IDwgbG9vcF9udW07IGNvdW50KysgKSB7CisgICAgICAgIHVuc2lnbmVkIGludCBp
OworICAgICAgICBvcHVzX2ludCAgICAgb3JkZXI7CisgICAgICAgIHVuc2lnbmVkIGludCBzaGlm
dDsKKyAgICAgICAgb3B1c19pbnQxNiAgIEFfUTEyWyBTSUxLX01BWF9PUkRFUl9MUEMgXTsKKyAg
ICAgICAgb3B1c19pbnQzMiBnYWluOworCisgICAgICAgIGZvciggb3JkZXIgPSAyOyBvcmRlciA8
PSBTSUxLX01BWF9PUkRFUl9MUEM7IG9yZGVyICs9IDIgKSB7IC8qIG9yZGVyIG11c3QgYmUgZXZl
bi4gKi8KKyAgICAgICAgICAgIGZvciggc2hpZnQgPSAwOyBzaGlmdCA8IDE2OyBzaGlmdCsrICkg
eyAvKiBEaWZmZXJlbnQgZHluYW1pYyByYW5nZS4gKi8KKyAgICAgICAgICAgICAgICBmb3IoIGkg
PSAwOyBpIDwgU0lMS19NQVhfT1JERVJfTFBDOyBpKysgKSB7CisgICAgICAgICAgICAgICAgICAg
IEFfUTEyW2ldID0gKChvcHVzX2ludDE2KXJhbmQoKSkgPj4gc2hpZnQ7CisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgIGdhaW4gPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbihB
X1ExMiwgb3JkZXIsIGFyY2gpOworICAgICAgICAgICAgICAgIC8qIExvb2sgZm9yIGZpbHRlcnMg
dGhhdCBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbigpIHRoaW5rcyBhcmUKKyAgICAgICAgICAg
ICAgICAgICBzdGFibGUgYnV0IGRlZmluaXRlbHkgYXJlbid0LiAqLworICAgICAgICAgICAgICAg
IGlmKCBnYWluICE9IDAgJiYgIWNoZWNrX3N0YWJpbGl0eShBX1ExMiwgb3JkZXIpICkgeworICAg
ICAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIioqTG9vcCAlNGQgZmFpbGVkISoqXG4i
LCBjb3VudCk7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOworICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBpZiggIShjb3VudCAlIDUwMCkg
KSB7CisgICAgICAgICAgICBwcmludGYoIkxvb3AgJTRkIHBhc3NlZFxuIiwgY291bnQpOworICAg
ICAgICB9CisgICAgfQorICAgIHByaW50Zigic2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4oKSBv
cHRpbWl6YXRpb24gcGFzc2VkXG4iKTsKKyAgICByZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay90dW5pbmdfcGFyYW1ldGVycy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3R1bmluZ19wYXJhbWV0ZXJzLmgKaW5kZXggNWI4
ZjQwNDIzNWY0OTFkOWI0YmVkYWE0OGYzOTQyMzA3ZTdkMTJhMS4uZDcwMjc1ZmQ4ZjVkZDE1ZTNj
NjhiZDI4ZDMyMTViNDBjNDliYmU1NCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3R1bmluZ19wYXJhbWV0ZXJz
LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL3R1bmluZ19wYXJhbWV0ZXJzLmgKQEAgLTUzLDE5ICs1MywxMiBAQCBleHRl
cm4gIkMiCiAvKiBMUEMgYW5hbHlzaXMgcmVndWxhcml6YXRpb24gKi8KICNkZWZpbmUgRklORF9M
UENfQ09ORF9GQUMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMWUtNWYKIAotLyogTFRQ
IGFuYWx5c2lzIGRlZmluZXMgKi8KLSNkZWZpbmUgRklORF9MVFBfQ09ORF9GQUMgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgMWUtNWYKLSNkZWZpbmUgTFRQX0RBTVBJTkcgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wNWYKLSNkZWZpbmUgTFRQX1NNT09USElORyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4xZgotCi0vKiBMVFAgcXVhbnRpemF0
aW9uIHNldHRpbmdzICovCi0jZGVmaW5lIE1VX0xUUF9RVUFOVF9OQiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDAuMDNmCi0jZGVmaW5lIE1VX0xUUF9RVUFOVF9NQiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDAuMDI1ZgotI2RlZmluZSBNVV9MVFBfUVVBTlRfV0IgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjAyZgotCiAvKiBNYXggY3VtdWxhdGl2ZSBM
VFAgZ2FpbiAqLwogI2RlZmluZSBNQVhfU1VNX0xPR19HQUlOX0RCICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAyNTAuMGYKIAorLyogTFRQIGFuYWx5c2lzIGRlZmluZXMgKi8KKyNkZWZpbmUg
TFRQX0NPUlJfSU5WX01BWCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wM2YKKwog
LyoqKioqKioqKioqKioqKioqKioqKioqLwogLyogSGlnaCBwYXNzIGZpbHRlcmluZyAqLwogLyoq
KioqKioqKioqKioqKioqKioqKioqLwpAQCAtMTAzLDI1ICs5NiwxNiBAQCBleHRlcm4gIkMiCiAj
ZGVmaW5lIFNQQVJTRV9TTlJfSU5DUl9kQiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIu
MGYKIAogLyogdGhyZXNob2xkIGZvciBzcGFyc2VuZXNzIG1lYXN1cmUgYWJvdmUgd2hpY2ggdG8g
dXNlIGxvd2VyIHF1YW50aXphdGlvbiBvZmZzZXQgZHVyaW5nIHVudm9pY2VkICovCi0jZGVmaW5l
IFNQQVJTRU5FU1NfVEhSRVNIT0xEX1FOVF9PRkZTRVQgICAgICAgICAgICAgICAgIDAuNzVmCisj
ZGVmaW5lIEVORVJHWV9WQVJJQVRJT05fVEhSRVNIT0xEX1FOVF9PRkZTRVQgICAgICAgICAgIDAu
NmYKIAogLyogd2FycGluZyBjb250cm9sICovCiAjZGVmaW5lIFdBUlBJTkdfTVVMVElQTElFUiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMDE1ZgogCiAvKiBmcmFjdGlvbiBhZGRlZCB0
byBmaXJzdCBhdXRvY29ycmVsYXRpb24gdmFsdWUgKi8KLSNkZWZpbmUgU0hBUEVfV0hJVEVfTk9J
U0VfRlJBQ1RJT04gICAgICAgICAgICAgICAgICAgICAgNWUtNWYKKyNkZWZpbmUgU0hBUEVfV0hJ
VEVfTk9JU0VfRlJBQ1RJT04gICAgICAgICAgICAgICAgICAgICAgM2UtNWYKIAogLyogbm9pc2Ug
c2hhcGluZyBmaWx0ZXIgY2hpcnAgZmFjdG9yICovCi0jZGVmaW5lIEJBTkRXSURUSF9FWFBBTlNJ
T04gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuOTVmCi0KLS8qIGRpZmZlcmVuY2UgYmV0
d2VlbiBjaGlycCBmYWN0b3JzIGZvciBhbmFseXNpcyBhbmQgc3ludGhlc2lzIG5vaXNlIHNoYXBp
bmcgZmlsdGVycyBhdCBsb3cgYml0cmF0ZXMgKi8KLSNkZWZpbmUgTE9XX1JBVEVfQkFORFdJRFRI
X0VYUEFOU0lPTl9ERUxUQSAgICAgICAgICAgICAgMC4wMWYKLQotLyogZXh0cmEgaGFybW9uaWMg
Ym9vc3RpbmcgKHNpZ25hbCBzaGFwaW5nKSBhdCBsb3cgYml0cmF0ZXMgKi8KLSNkZWZpbmUgTE9X
X1JBVEVfSEFSTU9OSUNfQk9PU1QgICAgICAgICAgICAgICAgICAgICAgICAgMC4xZgotCi0vKiBl
eHRyYSBoYXJtb25pYyBib29zdGluZyAoc2lnbmFsIHNoYXBpbmcpIGZvciBub2lzeSBpbnB1dCBz
aWduYWxzICovCi0jZGVmaW5lIExPV19JTlBVVF9RVUFMSVRZX0hBUk1PTklDX0JPT1NUICAgICAg
ICAgICAgICAgIDAuMWYKKyNkZWZpbmUgQkFORFdJRFRIX0VYUEFOU0lPTiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgMC45NGYKIAogLyogaGFybW9uaWMgbm9pc2Ugc2hhcGluZyAqLwogI2Rl
ZmluZSBIQVJNT05JQ19TSEFQSU5HICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjNm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsveDg2L05TUV9kZWxfZGVjX3NzZS5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni9OU1FfZGVs
X2RlY19zc2UuYwppbmRleCAyMWQ0YThiYzFlOTYwYWY5YTk1YWIyMDJjYzk1MWQxNGMwNDYwMWIz
Li5jNTIxMmJlZThkM2ExYjFjMjE2MmNlODMyNjgxMTQ1YmI3NDdjNzZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsveDg2L05TUV9kZWxfZGVjX3NzZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYvTlNRX2RlbF9kZWNfc3NlLmMK
QEAgLTEwNywxMiArMTA3LDEyIEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbm9pc2Vf
c2hhcGVfcXVhbnRpemVyX2RlbF9kZWNfc3NlNF8xKAogICAgIG9wdXNfaW50ICAgICAgICAgICAg
cHJlZGljdExQQ09yZGVyLCAgICAgICAgLyogSSAgICBQcmVkaWN0aW9uIGZpbHRlciBvcmRlciAg
ICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgd2FycGluZ19RMTYsICAgICAg
ICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IG9wdXNfaW50ICAgICAgICAgICAgblN0YXRlc0RlbGF5ZWREZWNpc2lvbiwgLyogSSAgICBOdW1i
ZXIgb2Ygc3RhdGVzIGluIGRlY2lzaW9uIHRyZWUgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAg
ICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAgLyogSSAgICBJbmRleCB0byBuZXdlc3Qgc2FtcGxl
cyBpbiBidWZmZXJzICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgKnNtcGxfYnVmX2lkeCwg
ICAgICAgICAgLyogSS9PICBJbmRleCB0byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZmZXJzICAqLwog
ICAgIG9wdXNfaW50ICAgICAgICAgICAgZGVjaXNpb25EZWxheSAgICAgICAgICAgLyogSSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKTsKIAogdm9pZCBzaWxrX05T
UV9kZWxfZGVjX3NzZTRfMSgKLSAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgICAgKnBzRW5j
QywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIEVuY29kZXIgU3Rh
dGUgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgICAg
KnBzRW5jQywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEVuY29k
ZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX25zcV9zdGF0ZSAgICAgICAg
ICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08g
IE5TUSBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBTaWRlSW5mb0luZGljZXMg
ICAgICAgICAgICAgKnBzSW5kaWNlcywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJL08gIFF1YW50aXphdGlvbiBJbmRpY2VzICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVz
X2ludDMyICAgICAgICAgICAgeF9RM1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIFByZWZpbHRlcmVkIGlucHV0IHNpZ25hbCAgICAgICAgKi8KQEAgLTIzNCw3
ICsyMzQsOCBAQCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfc3NlNF8xKAogICAgICAgICAgICAgICAg
ICAgICBwc0REID0gJnBzRGVsRGVjWyBXaW5uZXJfaW5kIF07CiAgICAgICAgICAgICAgICAgICAg
IGxhc3Rfc21wbGVfaWR4ID0gc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheTsKICAgICAgICAg
ICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IGRlY2lzaW9uRGVsYXk7IGkrKyApIHsKLSAgICAg
ICAgICAgICAgICAgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEg
KSAmIERFQ0lTSU9OX0RFTEFZX01BU0s7CisgICAgICAgICAgICAgICAgICAgICAgICBsYXN0X3Nt
cGxlX2lkeCA9ICggbGFzdF9zbXBsZV9pZHggLSAxICkgJSBERUNJU0lPTl9ERUxBWTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIGlmKCBsYXN0X3NtcGxlX2lkeCA8IDAgKSBsYXN0X3NtcGxlX2lk
eCArPSBERUNJU0lPTl9ERUxBWTsKICAgICAgICAgICAgICAgICAgICAgICAgIHB1bHNlc1sgICBp
IC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50OClzaWxrX1JTSElGVF9ST1VORCggcHNERC0+
UV9RMTBbIGxhc3Rfc21wbGVfaWR4IF0sIDEwICk7CiAgICAgICAgICAgICAgICAgICAgICAgICBw
eHFbIGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JT
SElGVF9ST1VORCgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWxrX1NNVUxXVyggcHNE
RC0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCBdLCBHYWluc19RMTZbIDEgXSApLCAxNCApICk7CkBA
IC0yODUsNyArMjg2LDggQEAgdm9pZCBzaWxrX05TUV9kZWxfZGVjX3NzZTRfMSgKICAgICBsYXN0
X3NtcGxlX2lkeCA9IHNtcGxfYnVmX2lkeCArIGRlY2lzaW9uRGVsYXk7CiAgICAgR2Fpbl9RMTAg
PSBzaWxrX1JTSElGVDMyKCBHYWluc19RMTZbIHBzRW5jQy0+bmJfc3ViZnIgLSAxIF0sIDYgKTsK
ICAgICBmb3IoIGkgPSAwOyBpIDwgZGVjaXNpb25EZWxheTsgaSsrICkgewotICAgICAgICBsYXN0
X3NtcGxlX2lkeCA9ICggbGFzdF9zbXBsZV9pZHggLSAxICkgJiBERUNJU0lPTl9ERUxBWV9NQVNL
OworICAgICAgICBsYXN0X3NtcGxlX2lkeCA9ICggbGFzdF9zbXBsZV9pZHggLSAxICkgJSBERUNJ
U0lPTl9ERUxBWTsKKyAgICAgICAgaWYoIGxhc3Rfc21wbGVfaWR4IDwgMCApIGxhc3Rfc21wbGVf
aWR4ICs9IERFQ0lTSU9OX0RFTEFZOwogICAgICAgICBwdWxzZXNbICAgaSAtIGRlY2lzaW9uRGVs
YXkgXSA9IChvcHVzX2ludDgpc2lsa19SU0hJRlRfUk9VTkQoIHBzREQtPlFfUTEwWyBsYXN0X3Nt
cGxlX2lkeCBdLCAxMCApOwogICAgICAgICBweHFbIGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1
c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCgKICAgICAgICAgICAgIHNpbGtf
U01VTFdXKCBwc0RELT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IF0sIEdhaW5fUTEwICksIDggKSAp
OwpAQCAtMjk5LDcgKzMwMSw2IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19zc2U0XzEoCiAgICAg
TlNRLT5sYWdQcmV2ICAgICAgICA9IHBpdGNoTFsgcHNFbmNDLT5uYl9zdWJmciAtIDEgXTsKIAog
ICAgIC8qIFNhdmUgcXVhbnRpemVkIHNwZWVjaCBzaWduYWwgKi8KLSAgICAvKiBERUJVR19TVE9S
RV9EQVRBKCBlbmMucGNtLCAmTlNRLT54cVtwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoXSwgcHNFbmND
LT5mcmFtZV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MTYgKSApICovCiAgICAgc2lsa19tZW1t
b3ZlKCBOU1EtPnhxLCAgICAgICAgICAgJk5TUS0+eHFbICAgICAgICAgICBwc0VuY0MtPmZyYW1l
X2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDE2ICkg
KTsKICAgICBzaWxrX21lbW1vdmUoIE5TUS0+c0xUUF9zaHBfUTE0LCAmTlNRLT5zTFRQX3NocF9R
MTRbIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoIF0sIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKiBzaXpl
b2YoIG9wdXNfaW50MzIgKSApOwogICAgIFJFU1RPUkVfU1RBQ0s7CkBAIC0zMzMsNyArMzM0LDcg
QEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVs
X2RlY19zc2U0XzEoCiAgICAgb3B1c19pbnQgICAgICAgICAgICBwcmVkaWN0TFBDT3JkZXIsICAg
ICAgICAvKiBJICAgIFByZWRpY3Rpb24gZmlsdGVyIG9yZGVyICAgICAgICAgICAgICovCiAgICAg
b3B1c19pbnQgICAgICAgICAgICB3YXJwaW5nX1ExNiwgICAgICAgICAgICAvKiBJICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAg
ICBuU3RhdGVzRGVsYXllZERlY2lzaW9uLCAvKiBJICAgIE51bWJlciBvZiBzdGF0ZXMgaW4gZGVj
aXNpb24gdHJlZSAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9idWZfaWR4LCAg
ICAgICAgICAvKiBJICAgIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZlcnMgICovCisg
ICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9idWZfaWR4LCAgICAgICAgICAvKiBJL08gIElu
ZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZlcnMgICovCiAgICAgb3B1c19pbnQgICAgICAg
ICAgICBkZWNpc2lvbkRlbGF5ICAgICAgICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiApCiB7CkBAIC02MzgsOCArNjM5LDkgQEAgc3RhdGljIE9QVVNf
SU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlY19zc2U0XzEoCiAg
ICAgICAgICAgICAgICAgcHNTU1sgMSBdLnhxX1ExNCAgICAgICA9IHhxX1ExNDsKICAgICAgICAg
ICAgIH0KICAgICAgICAgfQotICAgICAgICAqc21wbF9idWZfaWR4ICA9ICggKnNtcGxfYnVmX2lk
eCAtIDEgKSAmIERFQ0lTSU9OX0RFTEFZX01BU0s7ICAgICAgICAgICAgICAgICAgIC8qIEluZGV4
IHRvIG5ld2VzdCBzYW1wbGVzICAgICAgICAgICAgICAqLwotICAgICAgICBsYXN0X3NtcGxlX2lk
eCA9ICggKnNtcGxfYnVmX2lkeCArIGRlY2lzaW9uRGVsYXkgKSAmIERFQ0lTSU9OX0RFTEFZX01B
U0s7ICAgICAgIC8qIEluZGV4IHRvIGRlY2lzaW9uRGVsYXkgb2xkIHNhbXBsZXMgICAqLworICAg
ICAgICAqc21wbF9idWZfaWR4ICA9ICggKnNtcGxfYnVmX2lkeCAtIDEgKSAlIERFQ0lTSU9OX0RF
TEFZOworICAgICAgICBpZiggKnNtcGxfYnVmX2lkeCA8IDAgKSAqc21wbF9idWZfaWR4ICs9IERF
Q0lTSU9OX0RFTEFZOworICAgICAgICBsYXN0X3NtcGxlX2lkeCA9ICggKnNtcGxfYnVmX2lkeCAr
IGRlY2lzaW9uRGVsYXkgKSAlIERFQ0lTSU9OX0RFTEFZOwogCiAgICAgICAgIC8qIEZpbmQgd2lu
bmVyICovCiAgICAgICAgIFJEbWluX1ExMCA9IHBzU2FtcGxlU3RhdGVbIDAgXVsgMCBdLlJEX1Ex
MDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay94ODYvTlNRX3NzZS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni9OU1Ffc3NlLmMKaW5k
ZXggYmIzYzVmMTk1NTcwZWJjZDg3ZGRjNmIwZjZmNDAwYmNjZTNiMjEyNy4uNmE5ZTZlOTZjZmFi
ODVjNDdhZWRkNTJhZGNhNWVjNGI0NjJhYjgxNSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni9OU1Ffc3Nl
LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL3g4Ni9OU1Ffc3NlLmMKQEAgLTcxLDcgKzcxLDcgQEAgc3RhdGljIE9QVVNf
SU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfMTBfMTZfc3NlNF8xKAogKTsK
IAogdm9pZCBzaWxrX05TUV9zc2U0XzEoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAg
ICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNv
ZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0
YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUg
ICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9J
bmRpY2VzICAgICAgICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCiAgICAgY29u
c3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCkBA
IC0yMzMsNyArMjMzLDYgQEAgdm9pZCBzaWxrX05TUV9zc2U0XzEoCiAgICAgTlNRLT5sYWdQcmV2
ID0gcGl0Y2hMWyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBdOwogCiAgICAgLyogU2F2ZSBxdWFudGl6
ZWQgc3BlZWNoIGFuZCBub2lzZSBzaGFwaW5nIHNpZ25hbHMgKi8KLSAgICAvKiBERUJVR19TVE9S
RV9EQVRBKCBlbmMucGNtLCAmTlNRLT54cVsgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCBdLCBwc0Vu
Y0MtPmZyYW1lX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQxNiApICkgKi8KICAgICBzaWxrX21l
bW1vdmUoIE5TUS0+eHEsICAgICAgICAgICAmTlNRLT54cVsgICAgICAgICAgIHBzRW5jQy0+ZnJh
bWVfbGVuZ3RoIF0sIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MTYg
KSApOwogICAgIHNpbGtfbWVtbW92ZSggTlNRLT5zTFRQX3NocF9RMTQsICZOU1EtPnNMVFBfc2hw
X1ExNFsgcHNFbmNDLT5mcmFtZV9sZW5ndGggXSwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAqIHNp
emVvZiggb3B1c19pbnQzMiApICk7CiAgICAgUkVTVE9SRV9TVEFDSzsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay94ODYvbWFpbl9zc2UuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYvbWFpbl9zc2UuaAppbmRleCBkOGQ2MTMxMGVkY2Y5
NmUwMWVhZWQ0MjQ2OGUzMjdiOWRlMmQ0YTM4Li4yZjE1ZDQ0ODY5NzgxYzQzNTAxNGRkMWRkYjJj
MDI0MjNiMTZlM2MxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L21haW5fc3NlLmgKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4
Ni9tYWluX3NzZS5oCkBAIC0zNCw2ICszNCw3IEBACiAKICMgaWYgZGVmaW5lZChPUFVTX1g4Nl9N
QVlfSEFWRV9TU0U0XzEpCiAKKyNpZiAwIC8qIEZJWE1FOiBTU0UgZGlzYWJsZWQgdW50aWwgc2ls
a19WUV9XTWF0X0VDX3NzZTRfMSgpIGdldHMgdXBkYXRlZC4gKi8KICMgIGRlZmluZSBPVkVSUklE
RV9zaWxrX1ZRX1dNYXRfRUMKIAogdm9pZCBzaWxrX1ZRX1dNYXRfRUNfc3NlNF8xKApAQCAtNzks
MTEgKzgwLDEzIEBAIGV4dGVybiB2b2lkICgqY29uc3QgU0lMS19WUV9XTUFUX0VDX0lNUExbT1BV
U19BUkNITUFTSyArIDFdKSgKICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVfUTksIG1heF9n
YWluX1E3LCBMKSkKIAogI2VuZGlmCisjZW5kaWYKIAorI2lmIDAgLyogRklYTUU6IFNTRSBkaXNh
YmxlZCB1bnRpbCB0aGUgTlNRIGNvZGUgZ2V0cyB1cGRhdGVkLiAqLwogIyAgZGVmaW5lIE9WRVJS
SURFX3NpbGtfTlNRCiAKIHZvaWQgc2lsa19OU1Ffc3NlNF8xKAotICAgIGNvbnN0IHNpbGtfZW5j
b2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNp
bGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNp
bGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAg
ICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFs
ICAgICAgICAqLwpAQCAtMTEwLDcgKzExMyw3IEBAIHZvaWQgc2lsa19OU1Ffc3NlNF8xKAogI2Vs
c2UKIAogZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxLX05TUV9JTVBMW09QVVNfQVJDSE1BU0sgKyAx
XSkoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAg
ICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAg
ICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAgICAgICAgICpw
c0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6
YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAg
ICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQ
cmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCkBAIC0xMzcsNyArMTQwLDcgQEAgZXh0
ZXJuIHZvaWQgKCpjb25zdCBTSUxLX05TUV9JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCiAjICBk
ZWZpbmUgT1ZFUlJJREVfc2lsa19OU1FfZGVsX2RlYwogCiB2b2lkIHNpbGtfTlNRX2RlbF9kZWNf
c3NlNF8xKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAg
ICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNR
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRl
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAg
ICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVh
bnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAg
ICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLwpAQCAtMTY0LDcgKzE2Nyw3IEBA
IHZvaWQgc2lsa19OU1FfZGVsX2RlY19zc2U0XzEoCiAjZWxzZQogCiBleHRlcm4gdm9pZCAoKmNv
bnN0IFNJTEtfTlNRX0RFTF9ERUNfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKAotICAgIGNvbnN0
IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAg
IGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAq
LwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAg
ICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMg
ICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5w
dXQgc2lnbmFsICAgICAgICAqLwpAQCAtMTg3LDYgKzE5MCw3IEBAIGV4dGVybiB2b2lkICgqY29u
c3QgU0lMS19OU1FfREVMX0RFQ19JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsIExGX3NocF9RMTQs
IEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0KSkKIAogI2VuZGlm
CisjZW5kaWYKIAogdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcigKICAgICBzaWxrX25z
cV9zdGF0ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAg
ICAgICAgICAgICAgICAgICAgICAqLwpAQCAtMjM4LDM5ICsyNDIsNiBAQCBleHRlcm4gb3B1c19p
bnQgKCpjb25zdCBTSUxLX1ZBRF9HRVRTQV9ROF9JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCiAg
ICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbkMsCiAgICAgIGNvbnN0IG9wdXNfaW50MTYgICBw
SW5bXSk7CiAKLSMgIGRlZmluZSBPVkVSUklERV9zaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmls
dGVyX0ZJWAotCi0jZW5kaWYKLQotdm9pZCBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVy
X0ZJWF9zc2U0XzEoCi0gICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgIHN0YXRlW10sICAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIFN0YXRlIFtvcmRlciArIDFdICAgICAgICAgICAgICAg
ICAgICovCi0gICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgIHJlc19RMltdLCAgICAgICAg
ICAgICAgICAgICAvKiBPICAgIFJlc2lkdWFsIHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICov
Ci0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGNvZWZfUTEzW10sICAgICAgICAgICAg
ICAgICAvKiBJICAgIENvZWZmaWNpZW50cyBbb3JkZXJdICAgICAgICAgICAgICAgICovCi0gICAg
Y29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGlucHV0W10sICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIElucHV0IHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qg
b3B1c19pbnQxNiAgICAgICAgICAgIGxhbWJkYV9RMTYsICAgICAgICAgICAgICAgICAvKiBJICAg
IFdhcnBpbmcgZmFjdG9yICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19p
bnQgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0
aCBvZiBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRl
ciAoZXZlbikgICAgICAgICAgICAgICAgICovCi0pOwotCi0jaWYgZGVmaW5lZChPUFVTX1g4Nl9Q
UkVTVU1FX1NTRTRfMSkKLSNkZWZpbmUgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9G
SVgoc3RhdGUsIHJlc19RMiwgY29lZl9RMTMsIGlucHV0LCBsYW1iZGFfUTE2LCBsZW5ndGgsIG9y
ZGVyLCBhcmNoKSBcCi0gICAgKCh2b2lkKShhcmNoKSxzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNf
ZmlsdGVyX0ZJWF9jKHN0YXRlLCByZXNfUTIsIGNvZWZfUTEzLCBpbnB1dCwgbGFtYmRhX1ExNiwg
bGVuZ3RoLCBvcmRlcikpCi0KLSNlbHNlCi0KLWV4dGVybiB2b2lkICgqY29uc3QgU0lMS19XQVJQ
RURfTFBDX0FOQUxZU0lTX0ZJTFRFUl9GSVhfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKAotICAg
ICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICBzdGF0ZVtdLCAgICAgICAgICAgICAgICAgICAg
LyogSS9PICBTdGF0ZSBbb3JkZXIgKyAxXSAgICAgICAgICAgICAgICAgICAqLwotICAgICAgICAg
IG9wdXNfaW50MzIgICAgICAgICAgICByZXNfUTJbXSwgICAgICAgICAgICAgICAgICAgLyogTyAg
ICBSZXNpZHVhbCBzaWduYWwgW2xlbmd0aF0gICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNf
aW50MTYgICAgICAgICAgICBjb2VmX1ExM1tdLCAgICAgICAgICAgICAgICAgLyogSSAgICBDb2Vm
ZmljaWVudHMgW29yZGVyXSAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYg
ICAgICAgICAgICBpbnB1dFtdLCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWdu
YWwgW2xlbmd0aF0gICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICBsYW1iZGFfUTE2LCAgICAgICAgICAgICAgICAgLyogSSAgICBXYXJwaW5nIGZhY3RvciAg
ICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBs
ZW5ndGgsICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGggb2YgaW5wdXQgc2lnbmFs
ICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBvcmRlciAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBGaWx0ZXIgb3JkZXIgKGV2ZW4pICAgICAgICAg
ICAgICAgICAqLwotKTsKLQotIyAgZGVmaW5lIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0
ZXJfRklYKHN0YXRlLCByZXNfUTIsIGNvZWZfUTEzLCBpbnB1dCwgbGFtYmRhX1ExNiwgbGVuZ3Ro
LCBvcmRlciwgYXJjaCkgXAotICAgICgoKlNJTEtfV0FSUEVEX0xQQ19BTkFMWVNJU19GSUxURVJf
RklYX0lNUExbKGFyY2gpICYgT1BVU19BUkNITUFTS10pKHN0YXRlLCByZXNfUTIsIGNvZWZfUTEz
LCBpbnB1dCwgbGFtYmRhX1ExNiwgbGVuZ3RoLCBvcmRlcikpCi0KICNlbmRpZgogCiAjIGVuZGlm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsveDg2L3g4Nl9zaWxrX21hcC5jIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni94ODZfc2lsa19t
YXAuYwppbmRleCA4MTg4NDFmMmMxOTA3OTlmMzNhM2ZhZDg5ZWRlZjYxYWNlMWFjNzE2Li4zMmRj
YzNjYWI3YTkzYmQ2YzM1MDlhODlkNGI4MDc3MWFhZDJkZGY1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2
L3g4Nl9zaWxrX21hcC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYveDg2X3NpbGtfbWFwLmMKQEAgLTY2LDggKzY2
LDkgQEAgb3B1c19pbnQgKCpjb25zdCBTSUxLX1ZBRF9HRVRTQV9ROF9JTVBMWyBPUFVTX0FSQ0hN
QVNLICsgMSBdICkoCiAgIE1BWV9IQVZFX1NTRTRfMSggc2lsa19WQURfR2V0U0FfUTggKSAgLyog
YXZ4ICovCiB9OwogCisjaWYgMCAvKiBGSVhNRTogU1NFIGRpc2FibGVkIHVudGlsIHRoZSBOU1Eg
Y29kZSBnZXRzIHVwZGF0ZWQuICovCiB2b2lkICgqY29uc3QgU0lMS19OU1FfSU1QTFsgT1BVU19B
UkNITUFTSyArIDEgXSApKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmND
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0
ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAq
cHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2Rl
ciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAg
ICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAg
TlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAg
ICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLwpAQCAtODksNyAr
OTAsOSBAQCB2b2lkICgqY29uc3QgU0lMS19OU1FfSU1QTFsgT1BVU19BUkNITUFTSyArIDEgXSAp
KAogICBNQVlfSEFWRV9TU0U0XzEoIHNpbGtfTlNRICksIC8qIHNzZTQuMSAqLwogICBNQVlfSEFW
RV9TU0U0XzEoIHNpbGtfTlNRICkgIC8qIGF2eCAqLwogfTsKKyNlbmRpZgogCisjaWYgMCAvKiBG
SVhNRTogU1NFIGRpc2FibGVkIHVudGlsIHNpbGtfVlFfV01hdF9FQ19zc2U0XzEoKSBnZXRzIHVw
ZGF0ZWQuICovCiB2b2lkICgqY29uc3QgU0lMS19WUV9XTUFUX0VDX0lNUExbIE9QVVNfQVJDSE1B
U0sgKyAxIF0gKSgKICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgKmluZCwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBPICAgIGluZGV4IG9mIGJlc3QgY29kZWJvb2sgdmVjdG9y
ICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKnJhdGVf
ZGlzdF9RMTQsICAgICAgICAgICAgICAgICAvKiBPICAgIGJlc3Qgd2VpZ2h0ZWQgcXVhbnQgZXJy
b3IgKyBtdSAqIHJhdGUgICAgICAgKi8KQEAgLTEwOSw5ICsxMTIsMTEgQEAgdm9pZCAoKmNvbnN0
IFNJTEtfVlFfV01BVF9FQ19JTVBMWyBPUFVTX0FSQ0hNQVNLICsgMSBdICkoCiAgIE1BWV9IQVZF
X1NTRTRfMSggc2lsa19WUV9XTWF0X0VDICksIC8qIHNzZTQuMSAqLwogICBNQVlfSEFWRV9TU0U0
XzEoIHNpbGtfVlFfV01hdF9FQyApICAvKiBhdnggKi8KIH07CisjZW5kaWYKIAorI2lmIDAgLyog
RklYTUU6IFNTRSBkaXNhYmxlZCB1bnRpbCB0aGUgTlNRIGNvZGUgZ2V0cyB1cGRhdGVkLiAqLwog
dm9pZCAoKmNvbnN0IFNJTEtfTlNRX0RFTF9ERUNfSU1QTFsgT1BVU19BUkNITUFTSyArIDEgXSAp
KAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAg
ICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAg
ICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAg
ICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJ
bmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0
aW9uIEluZGljZXMgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAg
ICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJl
ZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLwpAQCAtMTMzLDI1ICsxMzgsMTAgQEAgdm9p
ZCAoKmNvbnN0IFNJTEtfTlNRX0RFTF9ERUNfSU1QTFsgT1BVU19BUkNITUFTSyArIDEgXSApKAog
ICBNQVlfSEFWRV9TU0U0XzEoIHNpbGtfTlNRX2RlbF9kZWMgKSwgLyogc3NlNC4xICovCiAgIE1B
WV9IQVZFX1NTRTRfMSggc2lsa19OU1FfZGVsX2RlYyApICAvKiBhdnggKi8KIH07CisjZW5kaWYK
IAogI2lmIGRlZmluZWQoRklYRURfUE9JTlQpCiAKLXZvaWQgKCpjb25zdCBTSUxLX1dBUlBFRF9M
UENfQU5BTFlTSVNfRklMVEVSX0ZJWF9JTVBMWyBPUFVTX0FSQ0hNQVNLICsgMSBdICkoCi0gICAg
b3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHN0YXRlW10sICAgICAgICAgICAgICAgICAgICAv
KiBJL08gIFN0YXRlIFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19p
bnQzMiAgICAgICAgICAgICAgICAgIHJlc19RMltdLCAgICAgICAgICAgICAgICAgICAvKiBPICAg
IFJlc2lkdWFsIHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19p
bnQxNiAgICAgICAgICAgIGNvZWZfUTEzW10sICAgICAgICAgICAgICAgICAvKiBJICAgIENvZWZm
aWNpZW50cyBbb3JkZXJdICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAg
ICAgICAgICAgIGlucHV0W10sICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IHNpZ25h
bCBbbGVuZ3RoXSAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAg
ICAgIGxhbWJkYV9RMTYsICAgICAgICAgICAgICAgICAvKiBJICAgIFdhcnBpbmcgZmFjdG9yICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGxl
bmd0aCwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1dCBzaWduYWwg
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG9yZGVyICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAoZXZlbikgICAgICAgICAg
ICAgICAgICovCi0pID0gewotICBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWF9j
LCAgICAgICAgICAgICAgICAgIC8qIG5vbi1zc2UgKi8KLSAgc2lsa193YXJwZWRfTFBDX2FuYWx5
c2lzX2ZpbHRlcl9GSVhfYywKLSAgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GSVhf
YywKLSAgTUFZX0hBVkVfU1NFNF8xKCBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJ
WCApLCAvKiBzc2U0LjEgKi8KLSAgTUFZX0hBVkVfU1NFNF8xKCBzaWxrX3dhcnBlZF9MUENfYW5h
bHlzaXNfZmlsdGVyX0ZJWCApICAvKiBhdnggKi8KLX07Ci0KIHZvaWQgKCpjb25zdCBTSUxLX0JV
UkdfTU9ESUZJRURfSU1QTFsgT1BVU19BUkNITUFTSyArIDEgXSApKAogICAgIG9wdXNfaW50MzIg
ICAgICAgICAgICAgICAgICAqcmVzX25yZywgICAgICAgICAgIC8qIE8gICAgUmVzaWR1YWwgZW5l
cmd5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBv
cHVzX2ludCAgICAgICAgICAgICAgICAgICAgKnJlc19ucmdfUSwgICAgICAgICAvKiBPICAgIFJl
c2lkdWFsIGVuZXJneSBRIHZhbHVlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvYW5hbHlzaXMuYwppbmRleCA2NjM0
MzFhNDM2YTFjODFhOWJhNzNmZjJhNmYyZDdmZmZhZWJiMTU4Li5mNDE2MGU0YjRlZDVjMTE0Y2Y3
ZDYxMGRiZDk3YTE1NjkwNjBhMDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3Jj
L2FuYWx5c2lzLmMKQEAgLTI5LDIwICsyOSwyNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2Vu
ZGlmCiAKKyNkZWZpbmUgQU5BTFlTSVNfQworCisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1
ZGUgIm1hdGhvcHMuaCIKICNpbmNsdWRlICJraXNzX2ZmdC5oIgogI2luY2x1ZGUgImNlbHQuaCIK
ICNpbmNsdWRlICJtb2Rlcy5oIgogI2luY2x1ZGUgImFyY2guaCIKICNpbmNsdWRlICJxdWFudF9i
YW5kcy5oIgotI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSAiYW5hbHlzaXMuaCIKICNpbmNs
dWRlICJtbHAuaCIKICNpbmNsdWRlICJzdGFja19hbGxvYy5oIgorI2luY2x1ZGUgImZsb2F0X2Nh
c3QuaCIKIAogI2lmbmRlZiBNX1BJCiAjZGVmaW5lIE1fUEkgMy4xNDE1OTI2NTMKICNlbmRpZgog
CisjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCisKIHN0YXRpYyBjb25zdCBmbG9hdCBkY3RfdGFi
bGVbMTI4XSA9IHsKICAgICAgICAgMC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4y
NTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1MDAwMGYsCiAgICAg
ICAgIDAuMjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBm
LCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBmLApAQCAtOTYsNTIgKzEwMywxMTggQEAg
c3RhdGljIGNvbnN0IGZsb2F0IGFuYWx5c2lzX3dpbmRvd1syNDBdID0gewogfTsKIAogc3RhdGlj
IGNvbnN0IGludCB0YmFuZHNbTkJfVEJBTkRTKzFdID0gewotICAgICAgIDIsICA0LCAgNiwgIDgs
IDEwLCAxMiwgMTQsIDE2LCAyMCwgMjQsIDI4LCAzMiwgNDAsIDQ4LCA1NiwgNjgsIDgwLCA5Niwg
MTIwCisgICAgICA0LCA4LCAxMiwgMTYsIDIwLCAyNCwgMjgsIDMyLCA0MCwgNDgsIDU2LCA2NCwg
ODAsIDk2LCAxMTIsIDEzNiwgMTYwLCAxOTIsIDI0MAogfTsKIAotc3RhdGljIGNvbnN0IGludCBl
eHRyYV9iYW5kc1tOQl9UT1RfQkFORFMrMV0gPSB7Ci0gICAgICAxLCAyLCAgNCwgIDYsICA4LCAx
MCwgMTIsIDE0LCAxNiwgMjAsIDI0LCAyOCwgMzIsIDQwLCA0OCwgNTYsIDY4LCA4MCwgOTYsIDEy
MCwgMTYwLCAyMDAKLX07Ci0KLS8qc3RhdGljIGNvbnN0IGZsb2F0IHR3ZWlnaHRbTkJfVEJBTkRT
KzFdID0gewotICAgICAgLjMsIC40LCAuNSwgLjYsIC43LCAuOCwgLjksIDEuLCAxLiwgMS4sIDEu
LCAxLiwgMS4sIDEuLCAuOCwgLjcsIC42LCAuNQotfTsqLwotCiAjZGVmaW5lIE5CX1RPTkFMX1NL
SVBfQkFORFMgOQogCi0jZGVmaW5lIGNBIDAuNDMxNTc5NzRmCi0jZGVmaW5lIGNCIDAuNjc4NDg0
MDNmCi0jZGVmaW5lIGNDIDAuMDg1OTU1NDJmCi0jZGVmaW5lIGNFICgoZmxvYXQpTV9QSS8yKQot
c3RhdGljIE9QVVNfSU5MSU5FIGZsb2F0IGZhc3RfYXRhbjJmKGZsb2F0IHksIGZsb2F0IHgpIHsK
LSAgIGZsb2F0IHgyLCB5MjsKLSAgIC8qIFNob3VsZCBhdm9pZCB1bmRlcmZsb3cgb24gdGhlIHZh
bHVlcyB3ZSdsbCBnZXQgKi8KLSAgIGlmIChBQlMxNih4KStBQlMxNih5KTwxZS05ZikKK3N0YXRp
YyBvcHVzX3ZhbDMyIHNpbGtfcmVzYW1wbGVyX2Rvd24yX2hwKAorICAgIG9wdXNfdmFsMzIgICAg
ICAgICAgICAgICAgICAqUywgICAgICAgICAgICAgICAgIC8qIEkvTyAgU3RhdGUgdmVjdG9yIFsg
MiBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVz
X3ZhbDMyICAgICAgICAgICAgICAgICAgKm91dCwgICAgICAgICAgICAgICAvKiBPICAgIE91dHB1
dCBzaWduYWwgWyBmbG9vcihsZW4vMikgXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgY29uc3Qgb3B1c192YWwzMiAgICAgICAgICAgICppbiwgICAgICAgICAgICAgICAgLyog
SSAgICBJbnB1dCBzaWduYWwgWyBsZW4gXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICBpbkxlbiAgICAgICAg
ICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIGlucHV0IHNhbXBsZXMgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyAgICBpbnQgaywgbGVuMiA9IGluTGVuLzI7Cisg
ICAgb3B1c192YWwzMiBpbjMyLCBvdXQzMiwgb3V0MzJfaHAsIFksIFg7CisgICAgb3B1c192YWw2
NCBocF9lbmVyID0gMDsKKyAgICAvKiBJbnRlcm5hbCB2YXJpYWJsZXMgYW5kIHN0YXRlIGFyZSBp
biBRMTAgZm9ybWF0ICovCisgICAgZm9yKCBrID0gMDsgayA8IGxlbjI7IGsrKyApIHsKKyAgICAg
ICAgLyogQ29udmVydCB0byBRMTAgKi8KKyAgICAgICAgaW4zMiA9IGluWyAyICogayBdOworCisg
ICAgICAgIC8qIEFsbC1wYXNzIHNlY3Rpb24gZm9yIGV2ZW4gaW5wdXQgc2FtcGxlICovCisgICAg
ICAgIFkgICAgICA9IFNVQjMyKCBpbjMyLCBTWyAwIF0gKTsKKyAgICAgICAgWCAgICAgID0gTVVM
VDE2XzMyX1ExNShRQ09OU1QxNigwLjYwNzQzNzFmLCAxNSksIFkpOworICAgICAgICBvdXQzMiAg
PSBBREQzMiggU1sgMCBdLCBYICk7CisgICAgICAgIFNbIDAgXSA9IEFERDMyKCBpbjMyLCBYICk7
CisgICAgICAgIG91dDMyX2hwID0gb3V0MzI7CisgICAgICAgIC8qIENvbnZlcnQgdG8gUTEwICov
CisgICAgICAgIGluMzIgPSBpblsgMiAqIGsgKyAxIF07CisKKyAgICAgICAgLyogQWxsLXBhc3Mg
c2VjdGlvbiBmb3Igb2RkIGlucHV0IHNhbXBsZSwgYW5kIGFkZCB0byBvdXRwdXQgb2YgcHJldmlv
dXMgc2VjdGlvbiAqLworICAgICAgICBZICAgICAgPSBTVUIzMiggaW4zMiwgU1sgMSBdICk7Cisg
ICAgICAgIFggICAgICA9IE1VTFQxNl8zMl9RMTUoUUNPTlNUMTYoMC4xNTA2M2YsIDE1KSwgWSk7
CisgICAgICAgIG91dDMyICA9IEFERDMyKCBvdXQzMiwgU1sgMSBdICk7CisgICAgICAgIG91dDMy
ICA9IEFERDMyKCBvdXQzMiwgWCApOworICAgICAgICBTWyAxIF0gPSBBREQzMiggaW4zMiwgWCAp
OworCisgICAgICAgIFkgICAgICA9IFNVQjMyKCAtaW4zMiwgU1sgMiBdICk7CisgICAgICAgIFgg
ICAgICA9IE1VTFQxNl8zMl9RMTUoUUNPTlNUMTYoMC4xNTA2M2YsIDE1KSwgWSk7CisgICAgICAg
IG91dDMyX2hwICA9IEFERDMyKCBvdXQzMl9ocCwgU1sgMiBdICk7CisgICAgICAgIG91dDMyX2hw
ICA9IEFERDMyKCBvdXQzMl9ocCwgWCApOworICAgICAgICBTWyAyIF0gPSBBREQzMiggLWluMzIs
IFggKTsKKworICAgICAgICBocF9lbmVyICs9IG91dDMyX2hwKihvcHVzX3ZhbDY0KW91dDMyX2hw
OworICAgICAgICAvKiBBZGQsIGNvbnZlcnQgYmFjayB0byBpbnQxNiBhbmQgc3RvcmUgdG8gb3V0
cHV0ICovCisgICAgICAgIG91dFsgayBdID0gSEFMRjMyKG91dDMyKTsKKyAgICB9CisjaWZkZWYg
RklYRURfUE9JTlQKKyAgICAvKiBsZW4yIGNhbiBiZSB1cCB0byA0ODAsIHNvIHdlIHNoaWZ0IGJ5
IDggbW9yZSB0byBtYWtlIGl0IGZpdC4gKi8KKyAgICBocF9lbmVyID0gaHBfZW5lciA+PiAoMipT
SUdfU0hJRlQgKyA4KTsKKyNlbmRpZgorICAgIHJldHVybiAob3B1c192YWwzMilocF9lbmVyOwor
fQorCitzdGF0aWMgb3B1c192YWwzMiBkb3dubWl4X2FuZF9yZXNhbXBsZShkb3dubWl4X2Z1bmMg
ZG93bm1peCwgY29uc3Qgdm9pZCAqX3gsIG9wdXNfdmFsMzIgKnksIG9wdXNfdmFsMzIgU1szXSwg
aW50IHN1YmZyYW1lLCBpbnQgb2Zmc2V0LCBpbnQgYzEsIGludCBjMiwgaW50IEMsIGludCBGcykK
K3sKKyAgIFZBUkRFQ0wob3B1c192YWwzMiwgdG1wKTsKKyAgIG9wdXNfdmFsMzIgc2NhbGU7Cisg
ICBpbnQgajsKKyAgIG9wdXNfdmFsMzIgcmV0ID0gMDsKKyAgIFNBVkVfU1RBQ0s7CisKKyAgIGlm
IChzdWJmcmFtZT09MCkgcmV0dXJuIDA7CisgICBpZiAoRnMgPT0gNDgwMDApCiAgICB7Ci0gICAg
ICB4Kj0xZTEyZjsKLSAgICAgIHkqPTFlMTJmOworICAgICAgc3ViZnJhbWUgKj0gMjsKKyAgICAg
IG9mZnNldCAqPSAyOworICAgfSBlbHNlIGlmIChGcyA9PSAxNjAwMCkgeworICAgICAgc3ViZnJh
bWUgPSBzdWJmcmFtZSoyLzM7CisgICAgICBvZmZzZXQgPSBvZmZzZXQqMi8zOwogICAgfQotICAg
eDIgPSB4Kng7Ci0gICB5MiA9IHkqeTsKLSAgIGlmKHgyPHkyKXsKLSAgICAgIGZsb2F0IGRlbiA9
ICh5MiArIGNCKngyKSAqICh5MiArIGNDKngyKTsKLSAgICAgIGlmIChkZW4hPTApCi0gICAgICAg
ICByZXR1cm4gLXgqeSooeTIgKyBjQSp4MikgLyBkZW4gKyAoeTwwID8gLWNFIDogY0UpOwotICAg
ICAgZWxzZQotICAgICAgICAgcmV0dXJuICh5PDAgPyAtY0UgOiBjRSk7Ci0gICB9ZWxzZXsKLSAg
ICAgIGZsb2F0IGRlbiA9ICh4MiArIGNCKnkyKSAqICh4MiArIGNDKnkyKTsKLSAgICAgIGlmIChk
ZW4hPTApCi0gICAgICAgICByZXR1cm4gIHgqeSooeDIgKyBjQSp5MikgLyBkZW4gKyAoeTwwID8g
LWNFIDogY0UpIC0gKHgqeTwwID8gLWNFIDogY0UpOwotICAgICAgZWxzZQotICAgICAgICAgcmV0
dXJuICh5PDAgPyAtY0UgOiBjRSkgLSAoeCp5PDAgPyAtY0UgOiBjRSk7CisgICBBTExPQyh0bXAs
IHN1YmZyYW1lLCBvcHVzX3ZhbDMyKTsKKworICAgZG93bm1peChfeCwgdG1wLCBzdWJmcmFtZSwg
b2Zmc2V0LCBjMSwgYzIsIEMpOworI2lmZGVmIEZJWEVEX1BPSU5UCisgICBzY2FsZSA9ICgxPDxT
SUdfU0hJRlQpOworI2Vsc2UKKyAgIHNjYWxlID0gMS5mLzMyNzY4OworI2VuZGlmCisgICBpZiAo
YzI9PS0yKQorICAgICAgc2NhbGUgLz0gQzsKKyAgIGVsc2UgaWYgKGMyPi0xKQorICAgICAgc2Nh
bGUgLz0gMjsKKyAgIGZvciAoaj0wO2o8c3ViZnJhbWU7aisrKQorICAgICAgdG1wW2pdICo9IHNj
YWxlOworICAgaWYgKEZzID09IDQ4MDAwKQorICAgeworICAgICAgcmV0ID0gc2lsa19yZXNhbXBs
ZXJfZG93bjJfaHAoUywgeSwgdG1wLCBzdWJmcmFtZSk7CisgICB9IGVsc2UgaWYgKEZzID09IDI0
MDAwKSB7CisgICAgICBPUFVTX0NPUFkoeSwgdG1wLCBzdWJmcmFtZSk7CisgICB9IGVsc2UgaWYg
KEZzID09IDE2MDAwKSB7CisgICAgICBWQVJERUNMKG9wdXNfdmFsMzIsIHRtcDN4KTsKKyAgICAg
IEFMTE9DKHRtcDN4LCAzKnN1YmZyYW1lLCBvcHVzX3ZhbDMyKTsKKyAgICAgIC8qIERvbid0IGRv
IHRoaXMgYXQgaG9tZSEgVGhpcyByZXNhbXBsZXIgaXMgaG9ycmlibGUgYW5kIGl0J3Mgb25seSAo
YmFyZWx5KQorICAgICAgICAgdXNhYmxlIGZvciB0aGUgcHVycG9zZSBvZiB0aGUgYW5hbHlzaXMg
YmVjYXVzZSB3ZSBkb24ndCBjYXJlIGFib3V0IGFsbAorICAgICAgICAgdGhlIGFsaWFzaW5nIGJl
dHdlZW4gOCBrSHogYW5kIDEyIGtIei4gKi8KKyAgICAgIGZvciAoaj0wO2o8c3ViZnJhbWU7aisr
KQorICAgICAgeworICAgICAgICAgdG1wM3hbMypqXSA9IHRtcFtqXTsKKyAgICAgICAgIHRtcDN4
WzMqaisxXSA9IHRtcFtqXTsKKyAgICAgICAgIHRtcDN4WzMqaisyXSA9IHRtcFtqXTsKKyAgICAg
IH0KKyAgICAgIHNpbGtfcmVzYW1wbGVyX2Rvd24yX2hwKFMsIHksIHRtcDN4LCAzKnN1YmZyYW1l
KTsKICAgIH0KKyAgIFJFU1RPUkVfU1RBQ0s7CisgICByZXR1cm4gcmV0OwogfQogCi12b2lkIHRv
bmFsaXR5X2FuYWx5c2lzX2luaXQoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCkKK3ZvaWQg
dG9uYWxpdHlfYW5hbHlzaXNfaW5pdChUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBvcHVz
X2ludDMyIEZzKQogewogICAvKiBJbml0aWFsaXplIHJldXNhYmxlIGZpZWxkcy4gKi8KICAgdG9u
YWwtPmFyY2ggPSBvcHVzX3NlbGVjdF9hcmNoKCk7CisgIHRvbmFsLT5GcyA9IEZzOwogICAvKiBD
bGVhciByZW1haW5pbmcgZmllbGRzLiAqLwogICB0b25hbGl0eV9hbmFseXNpc19yZXNldCh0b25h
bCk7CiB9CkBAIC0xNTEsNiArMjI0LDggQEAgdm9pZCB0b25hbGl0eV9hbmFseXNpc19yZXNldChU
b25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsKQogICAvKiBDbGVhciBub24tcmV1c2FibGUgZmll
bGRzLiAqLwogICBjaGFyICpzdGFydCA9IChjaGFyKikmdG9uYWwtPlRPTkFMSVRZX0FOQUxZU0lT
X1JFU0VUX1NUQVJUOwogICBPUFVTX0NMRUFSKHN0YXJ0LCBzaXplb2YoVG9uYWxpdHlBbmFseXNp
c1N0YXRlKSAtIChzdGFydCAtIChjaGFyKil0b25hbCkpOworICB0b25hbC0+bXVzaWNfY29uZmlk
ZW5jZSA9IC45ZjsKKyAgdG9uYWwtPnNwZWVjaF9jb25maWRlbmNlID0gLjFmOwogfQogCiB2b2lk
IHRvbmFsaXR5X2dldF9pbmZvKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIEFuYWx5c2lz
SW5mbyAqaW5mb19vdXQsIGludCBsZW4pCkBAIC0xNTgsNiArMjMzLDkgQEAgdm9pZCB0b25hbGl0
eV9nZXRfaW5mbyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBBbmFseXNpc0luZm8gKmlu
Zm9fb3V0LCBpbnQKICAgIGludCBwb3M7CiAgICBpbnQgY3Vycl9sb29rYWhlYWQ7CiAgICBmbG9h
dCBwc3VtOworICAgZmxvYXQgdG9uYWxpdHlfbWF4OworICAgZmxvYXQgdG9uYWxpdHlfYXZnOwor
ICAgaW50IHRvbmFsaXR5X2NvdW50OwogICAgaW50IGk7CiAKICAgIHBvcyA9IHRvbmFsLT5yZWFk
X3BvczsKQEAgLTE2NSw3ICsyNDMsOCBAQCB2b2lkIHRvbmFsaXR5X2dldF9pbmZvKFRvbmFsaXR5
QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIEFuYWx5c2lzSW5mbyAqaW5mb19vdXQsIGludAogICAgaWYg
KGN1cnJfbG9va2FoZWFkPDApCiAgICAgICBjdXJyX2xvb2thaGVhZCArPSBERVRFQ1RfU0laRTsK
IAotICAgaWYgKGxlbiA+IDQ4MCAmJiBwb3MgIT0gdG9uYWwtPndyaXRlX3BvcykKKyAgIC8qIE9u
IGxvbmcgZnJhbWVzLCBsb29rIGF0IHRoZSBzZWNvbmQgYW5hbHlzaXMgd2luZG93IHJhdGhlciB0
aGFuIHRoZSBmaXJzdC4gKi8KKyAgIGlmIChsZW4gPiB0b25hbC0+RnMvNTAgJiYgcG9zICE9IHRv
bmFsLT53cml0ZV9wb3MpCiAgICB7CiAgICAgICBwb3MrKzsKICAgICAgIGlmIChwb3M9PURFVEVD
VF9TSVpFKQpAQCAtMTc2LDE4ICsyNTUsMzIgQEAgdm9pZCB0b25hbGl0eV9nZXRfaW5mbyhUb25h
bGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBBbmFseXNpc0luZm8gKmluZm9fb3V0LCBpbnQKICAg
IGlmIChwb3M8MCkKICAgICAgIHBvcyA9IERFVEVDVF9TSVpFLTE7CiAgICBPUFVTX0NPUFkoaW5m
b19vdXQsICZ0b25hbC0+aW5mb1twb3NdLCAxKTsKLSAgIHRvbmFsLT5yZWFkX3N1YmZyYW1lICs9
IGxlbi8xMjA7Ci0gICB3aGlsZSAodG9uYWwtPnJlYWRfc3ViZnJhbWU+PTQpCisgICB0b25hbGl0
eV9tYXggPSB0b25hbGl0eV9hdmcgPSBpbmZvX291dC0+dG9uYWxpdHk7CisgICB0b25hbGl0eV9j
b3VudCA9IDE7CisgICAvKiBJZiBwb3NzaWJsZSwgbG9vayBhaGVhZCBmb3IgYSB0b25lIHRvIGNv
bXBlbnNhdGUgZm9yIHRoZSBkZWxheSBpbiB0aGUgdG9uZSBkZXRlY3Rvci4gKi8KKyAgIGZvciAo
aT0wO2k8MztpKyspCiAgICB7Ci0gICAgICB0b25hbC0+cmVhZF9zdWJmcmFtZSAtPSA0OworICAg
ICAgcG9zKys7CisgICAgICBpZiAocG9zPT1ERVRFQ1RfU0laRSkKKyAgICAgICAgIHBvcyA9IDA7
CisgICAgICBpZiAocG9zID09IHRvbmFsLT53cml0ZV9wb3MpCisgICAgICAgICBicmVhazsKKyAg
ICAgIHRvbmFsaXR5X21heCA9IE1BWDMyKHRvbmFsaXR5X21heCwgdG9uYWwtPmluZm9bcG9zXS50
b25hbGl0eSk7CisgICAgICB0b25hbGl0eV9hdmcgKz0gdG9uYWwtPmluZm9bcG9zXS50b25hbGl0
eTsKKyAgICAgIHRvbmFsaXR5X2NvdW50Kys7CisgICB9CisgICBpbmZvX291dC0+dG9uYWxpdHkg
PSBNQVgzMih0b25hbGl0eV9hdmcvdG9uYWxpdHlfY291bnQsIHRvbmFsaXR5X21heC0uMmYpOwor
ICAgdG9uYWwtPnJlYWRfc3ViZnJhbWUgKz0gbGVuLyh0b25hbC0+RnMvNDAwKTsKKyAgIHdoaWxl
ICh0b25hbC0+cmVhZF9zdWJmcmFtZT49OCkKKyAgIHsKKyAgICAgIHRvbmFsLT5yZWFkX3N1YmZy
YW1lIC09IDg7CiAgICAgICB0b25hbC0+cmVhZF9wb3MrKzsKICAgIH0KICAgIGlmICh0b25hbC0+
cmVhZF9wb3M+PURFVEVDVF9TSVpFKQogICAgICAgdG9uYWwtPnJlYWRfcG9zLT1ERVRFQ1RfU0la
RTsKIAotICAgLyogQ29tcGVuc2F0ZSBmb3IgdGhlIGRlbGF5IGluIHRoZSBmZWF0dXJlcyB0aGVt
c2VsdmVzLgotICAgICAgRklYTUU6IE5lZWQgYSBiZXR0ZXIgZXN0aW1hdGUgdGhlIDEwIEkganVz
dCBtYWRlIHVwICovCi0gICBjdXJyX2xvb2thaGVhZCA9IElNQVgoY3Vycl9sb29rYWhlYWQtMTAs
IDApOworICAgLyogVGhlIC0xIGlzIHRvIGNvbXBlbnNhdGUgZm9yIHRoZSBkZWxheSBpbiB0aGUg
ZmVhdHVyZXMgdGhlbXNlbHZlcy4gKi8KKyAgIGN1cnJfbG9va2FoZWFkID0gSU1BWChjdXJyX2xv
b2thaGVhZC0xLCAwKTsKIAogICAgcHN1bT0wOwogICAgLyogU3VtbWluZyB0aGUgcHJvYmFiaWxp
dHkgb2YgdHJhbnNpdGlvbiBwYXR0ZXJucyB0aGF0IGludm9sdmUgbXVzaWMgYXQKQEAgLTE5Nywx
MSArMjkwLDI4IEBAIHZvaWQgdG9uYWxpdHlfZ2V0X2luZm8oVG9uYWxpdHlBbmFseXNpc1N0YXRl
ICp0b25hbCwgQW5hbHlzaXNJbmZvICppbmZvX291dCwgaW50CiAgICBmb3IgKDtpPERFVEVDVF9T
SVpFO2krKykKICAgICAgIHBzdW0gKz0gdG9uYWwtPnBzcGVlY2hbaV07CiAgICBwc3VtID0gcHN1
bSp0b25hbC0+bXVzaWNfY29uZmlkZW5jZSArICgxLXBzdW0pKnRvbmFsLT5zcGVlY2hfY29uZmlk
ZW5jZTsKLSAgIC8qcHJpbnRmKCIlZiAlZiAlZlxuIiwgcHN1bSwgaW5mb19vdXQtPm11c2ljX3By
b2IsIGluZm9fb3V0LT50b25hbGl0eSk7Ki8KKyAgIC8qcHJpbnRmKCIlZiAlZiAlZiAlZiAlZlxu
IiwgcHN1bSwgaW5mb19vdXQtPm11c2ljX3Byb2IsIGluZm9fb3V0LT52YWRfcHJvYiwgaW5mb19v
dXQtPmFjdGl2aXR5X3Byb2JhYmlsaXR5LCBpbmZvX291dC0+dG9uYWxpdHkpOyovCiAKICAgIGlu
Zm9fb3V0LT5tdXNpY19wcm9iID0gcHN1bTsKIH0KIAorc3RhdGljIGNvbnN0IGZsb2F0IHN0ZF9m
ZWF0dXJlX2JpYXNbOV0gPSB7CisgICAgICA1LjY4NDk0N2YsIDMuNDc1Mjg4ZiwgMS43NzA2MzRm
LCAxLjU5OTc4NGYsIDMuNzczMjE1ZiwKKyAgICAgIDIuMTYzMzEzZiwgMS4yNjA3NTZmLCAxLjEx
Njg2OGYsIDEuOTE4Nzk1ZgorfTsKKworI2RlZmluZSBMRUFLQUdFX09GRlNFVCAyLjVmCisjZGVm
aW5lIExFQUtBR0VfU0xPUEUgMi5mCisKKyNpZmRlZiBGSVhFRF9QT0lOVAorLyogRm9yIGZpeGVk
LXBvaW50LCB0aGUgaW5wdXQgaXMgKy8tMl4xNSBzaGlmdGVkIHVwIGJ5IFNJR19TSElGVCwgc28g
d2UgbmVlZCB0bworICAgY29tcGVuc2F0ZSBmb3IgdGhhdCBpbiB0aGUgZW5lcmd5LiAqLworI2Rl
ZmluZSBTQ0FMRV9DT01QRU5TICgxLmYvKChvcHVzX2ludDMyKTE8PCgxNStTSUdfU0hJRlQpKSkK
KyNkZWZpbmUgU0NBTEVfRU5FUihlKSAoKFNDQUxFX0NPTVBFTlMqU0NBTEVfQ09NUEVOUykqKGUp
KQorI2Vsc2UKKyNkZWZpbmUgU0NBTEVfRU5FUihlKSAoZSkKKyNlbmRpZgorCiBzdGF0aWMgdm9p
ZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBD
RUxUTW9kZSAqY2VsdF9tb2RlLCBjb25zdCB2b2lkICp4LCBpbnQgbGVuLCBpbnQgb2Zmc2V0LCBp
bnQgYzEsIGludCBjMiwgaW50IEMsIGludCBsc2JfZGVwdGgsIGRvd25taXhfZnVuYyBkb3dubWl4
KQogewogICAgIGludCBpLCBiOwpAQCAtMjM1LDE5ICszNDUsNDEgQEAgc3RhdGljIHZvaWQgdG9u
YWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1v
ZGUgKmNlbHQKICAgICBmbG9hdCBub2lzZV9mbG9vcjsKICAgICBpbnQgcmVtYWluaW5nOwogICAg
IEFuYWx5c2lzSW5mbyAqaW5mbzsKKyAgICBmbG9hdCBocF9lbmVyOworICAgIGZsb2F0IHRvbmFs
aXR5MlsyNDBdOworICAgIGZsb2F0IG1pZEVbOF07CisgICAgZmxvYXQgc3BlY192YXJpYWJpbGl0
eT0wOworICAgIGZsb2F0IGJhbmRfbG9nMltOQl9UQkFORFMrMV07CisgICAgZmxvYXQgbGVha2Fn
ZV9mcm9tW05CX1RCQU5EUysxXTsKKyAgICBmbG9hdCBsZWFrYWdlX3RvW05CX1RCQU5EUysxXTsK
ICAgICBTQVZFX1NUQUNLOwogCi0gICAgdG9uYWwtPmxhc3RfdHJhbnNpdGlvbisrOwotICAgIGFs
cGhhID0gMS5mL0lNSU4oMjAsIDErdG9uYWwtPmNvdW50KTsKLSAgICBhbHBoYUUgPSAxLmYvSU1J
Tig1MCwgMSt0b25hbC0+Y291bnQpOwotICAgIGFscGhhRTIgPSAxLmYvSU1JTigxMDAwLCAxK3Rv
bmFsLT5jb3VudCk7CisgICAgYWxwaGEgPSAxLmYvSU1JTigxMCwgMSt0b25hbC0+Y291bnQpOwor
ICAgIGFscGhhRSA9IDEuZi9JTUlOKDI1LCAxK3RvbmFsLT5jb3VudCk7CisgICAgYWxwaGFFMiA9
IDEuZi9JTUlOKDUwMCwgMSt0b25hbC0+Y291bnQpOworCisgICAgaWYgKHRvbmFsLT5GcyA9PSA0
ODAwMCkKKyAgICB7CisgICAgICAgLyogbGVuIGFuZCBvZmZzZXQgYXJlIG5vdyBhdCAyNCBrSHou
ICovCisgICAgICAgbGVuLz0gMjsKKyAgICAgICBvZmZzZXQgLz0gMjsKKyAgICB9IGVsc2UgaWYg
KHRvbmFsLT5GcyA9PSAxNjAwMCkgeworICAgICAgIGxlbiA9IDMqbGVuLzI7CisgICAgICAgb2Zm
c2V0ID0gMypvZmZzZXQvMjsKKyAgICB9CiAKLSAgICBpZiAodG9uYWwtPmNvdW50PDQpCi0gICAg
ICAgdG9uYWwtPm11c2ljX3Byb2IgPSAuNTsKKyAgICBpZiAodG9uYWwtPmNvdW50PDQpIHsKKyAg
ICAgICBpZiAodG9uYWwtPmFwcGxpY2F0aW9uID09IE9QVVNfQVBQTElDQVRJT05fVk9JUCkKKyAg
ICAgICAgICB0b25hbC0+bXVzaWNfcHJvYiA9IC4xZjsKKyAgICAgICBlbHNlCisgICAgICAgICAg
dG9uYWwtPm11c2ljX3Byb2IgPSAuNjI1ZjsKKyAgICB9CiAgICAga2ZmdCA9IGNlbHRfbW9kZS0+
bWRjdC5rZmZ0WzBdOwogICAgIGlmICh0b25hbC0+Y291bnQ9PTApCiAgICAgICAgdG9uYWwtPm1l
bV9maWxsID0gMjQwOwotICAgIGRvd25taXgoeCwgJnRvbmFsLT5pbm1lbVt0b25hbC0+bWVtX2Zp
bGxdLCBJTUlOKGxlbiwgQU5BTFlTSVNfQlVGX1NJWkUtdG9uYWwtPm1lbV9maWxsKSwgb2Zmc2V0
LCBjMSwgYzIsIEMpOworICAgIHRvbmFsLT5ocF9lbmVyX2FjY3VtICs9IChmbG9hdClkb3dubWl4
X2FuZF9yZXNhbXBsZShkb3dubWl4LCB4LAorICAgICAgICAgICZ0b25hbC0+aW5tZW1bdG9uYWwt
Pm1lbV9maWxsXSwgdG9uYWwtPmRvd25taXhfc3RhdGUsCisgICAgICAgICAgSU1JTihsZW4sIEFO
QUxZU0lTX0JVRl9TSVpFLXRvbmFsLT5tZW1fZmlsbCksIG9mZnNldCwgYzEsIGMyLCBDLCB0b25h
bC0+RnMpOwogICAgIGlmICh0b25hbC0+bWVtX2ZpbGwrbGVuIDwgQU5BTFlTSVNfQlVGX1NJWkUp
CiAgICAgewogICAgICAgIHRvbmFsLT5tZW1fZmlsbCArPSBsZW47CkBAIC0yNTUsNiArMzg3LDcg
QEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0
b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICBSRVNUT1JFX1NUQUNLOwogICAgICAg
IHJldHVybjsKICAgICB9CisgICAgaHBfZW5lciA9IHRvbmFsLT5ocF9lbmVyX2FjY3VtOwogICAg
IGluZm8gPSAmdG9uYWwtPmluZm9bdG9uYWwtPndyaXRlX3BvcysrXTsKICAgICBpZiAodG9uYWwt
PndyaXRlX3Bvcz49REVURUNUX1NJWkUpCiAgICAgICAgdG9uYWwtPndyaXRlX3Bvcy09REVURUNU
X1NJWkU7CkBAIC0yNzMsNyArNDA2LDkgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMo
VG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICB9
CiAgICAgT1BVU19NT1ZFKHRvbmFsLT5pbm1lbSwgdG9uYWwtPmlubWVtK0FOQUxZU0lTX0JVRl9T
SVpFLTI0MCwgMjQwKTsKICAgICByZW1haW5pbmcgPSBsZW4gLSAoQU5BTFlTSVNfQlVGX1NJWkUt
dG9uYWwtPm1lbV9maWxsKTsKLSAgICBkb3dubWl4KHgsICZ0b25hbC0+aW5tZW1bMjQwXSwgcmVt
YWluaW5nLCBvZmZzZXQrQU5BTFlTSVNfQlVGX1NJWkUtdG9uYWwtPm1lbV9maWxsLCBjMSwgYzIs
IEMpOworICAgIHRvbmFsLT5ocF9lbmVyX2FjY3VtID0gKGZsb2F0KWRvd25taXhfYW5kX3Jlc2Ft
cGxlKGRvd25taXgsIHgsCisgICAgICAgICAgJnRvbmFsLT5pbm1lbVsyNDBdLCB0b25hbC0+ZG93
bm1peF9zdGF0ZSwgcmVtYWluaW5nLAorICAgICAgICAgIG9mZnNldCtBTkFMWVNJU19CVUZfU0la
RS10b25hbC0+bWVtX2ZpbGwsIGMxLCBjMiwgQywgdG9uYWwtPkZzKTsKICAgICB0b25hbC0+bWVt
X2ZpbGwgPSAyNDAgKyByZW1haW5pbmc7CiAgICAgb3B1c19mZnQoa2ZmdCwgaW4sIG91dCwgdG9u
YWwtPmFyY2gpOwogI2lmbmRlZiBGSVhFRF9QT0lOVApAQCAtMzA1LDI0ICs0NDAsMzEgQEAgc3Rh
dGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwg
Y29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICBkX2FuZ2xlMiA9IGFuZ2xlMiAtIGFuZ2xlOwog
ICAgICAgIGQyX2FuZ2xlMiA9IGRfYW5nbGUyIC0gZF9hbmdsZTsKIAotICAgICAgIG1vZDEgPSBk
Ml9hbmdsZSAtIChmbG9hdClmbG9vciguNStkMl9hbmdsZSk7CisgICAgICAgbW9kMSA9IGQyX2Fu
Z2xlIC0gKGZsb2F0KWZsb2F0MmludChkMl9hbmdsZSk7CiAgICAgICAgbm9pc2luZXNzW2ldID0g
QUJTMTYobW9kMSk7CiAgICAgICAgbW9kMSAqPSBtb2QxOwogICAgICAgIG1vZDEgKj0gbW9kMTsK
IAotICAgICAgIG1vZDIgPSBkMl9hbmdsZTIgLSAoZmxvYXQpZmxvb3IoLjUrZDJfYW5nbGUyKTsK
KyAgICAgICBtb2QyID0gZDJfYW5nbGUyIC0gKGZsb2F0KWZsb2F0MmludChkMl9hbmdsZTIpOwog
ICAgICAgIG5vaXNpbmVzc1tpXSArPSBBQlMxNihtb2QyKTsKICAgICAgICBtb2QyICo9IG1vZDI7
CiAgICAgICAgbW9kMiAqPSBtb2QyOwogCi0gICAgICAgYXZnX21vZCA9IC4yNWYqKGQyQVtpXSsy
LmYqbW9kMSttb2QyKTsKKyAgICAgICBhdmdfbW9kID0gLjI1ZiooZDJBW2ldK21vZDErMiptb2Qy
KTsKKyAgICAgICAvKiBUaGlzIGludHJvZHVjZXMgYW4gZXh0cmEgZGVsYXkgb2YgMiBmcmFtZXMg
aW4gdGhlIGRldGVjdGlvbi4gKi8KICAgICAgICB0b25hbGl0eVtpXSA9IDEuZi8oMS5mKzQwLmYq
MTYuZipwaTQqYXZnX21vZCktLjAxNWY7CisgICAgICAgLyogTm8gZGVsYXkgb24gdGhpcyBkZXRl
Y3Rpb24sIGJ1dCBpdCdzIGxlc3MgcmVsaWFibGUuICovCisgICAgICAgdG9uYWxpdHkyW2ldID0g
MS5mLygxLmYrNDAuZioxNi5mKnBpNCptb2QyKS0uMDE1ZjsKIAogICAgICAgIEFbaV0gPSBhbmds
ZTI7CiAgICAgICAgZEFbaV0gPSBkX2FuZ2xlMjsKICAgICAgICBkMkFbaV0gPSBtb2QyOwogICAg
IH0KLQorICAgIGZvciAoaT0yO2k8TjItMTtpKyspCisgICAgeworICAgICAgIGZsb2F0IHR0ID0g
TUlOMzIodG9uYWxpdHkyW2ldLCBNQVgzMih0b25hbGl0eTJbaS0xXSwgdG9uYWxpdHkyW2krMV0p
KTsKKyAgICAgICB0b25hbGl0eVtpXSA9IC45ZipNQVgzMih0b25hbGl0eVtpXSwgdHQtLjFmKTsK
KyAgICB9CiAgICAgZnJhbWVfdG9uYWxpdHkgPSAwOwogICAgIG1heF9mcmFtZV90b25hbGl0eSA9
IDA7CiAgICAgLyp0d19zdW0gPSAwOyovCkBAIC0zMzksNiArNDgxLDIyIEBAIHN0YXRpYyB2b2lk
IHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENF
TFRNb2RlICpjZWx0CiAgICAgfQogICAgIHJlbGF0aXZlRSA9IDA7CiAgICAgZnJhbWVfbG91ZG5l
c3MgPSAwOworICAgIC8qIFRoZSBlbmVyZ3kgb2YgdGhlIHZlcnkgZmlyc3QgYmFuZCBpcyBzcGVj
aWFsIGJlY2F1c2Ugb2YgREMuICovCisgICAgeworICAgICAgIGZsb2F0IEUgPSAwOworICAgICAg
IGZsb2F0IFgxciwgWDJyOworICAgICAgIFgxciA9IDIqKGZsb2F0KW91dFswXS5yOworICAgICAg
IFgyciA9IDIqKGZsb2F0KW91dFswXS5pOworICAgICAgIEUgPSBYMXIqWDFyICsgWDJyKlgycjsK
KyAgICAgICBmb3IgKGk9MTtpPDQ7aSsrKQorICAgICAgIHsKKyAgICAgICAgICBmbG9hdCBiaW5F
ID0gb3V0W2ldLnIqKGZsb2F0KW91dFtpXS5yICsgb3V0W04taV0uciooZmxvYXQpb3V0W04taV0u
cgorICAgICAgICAgICAgICAgICAgICAgKyBvdXRbaV0uaSooZmxvYXQpb3V0W2ldLmkgKyBvdXRb
Ti1pXS5pKihmbG9hdClvdXRbTi1pXS5pOworICAgICAgICAgIEUgKz0gYmluRTsKKyAgICAgICB9
CisgICAgICAgRSA9IFNDQUxFX0VORVIoRSk7CisgICAgICAgYmFuZF9sb2cyWzBdID0gLjVmKjEu
NDQyNjk1ZiooZmxvYXQpbG9nKEUrMWUtMTBmKTsKKyAgICB9CiAgICAgZm9yIChiPTA7YjxOQl9U
QkFORFM7YisrKQogICAgIHsKICAgICAgICBmbG9hdCBFPTAsIHRFPTAsIG5FPTA7CkBAIC0zNDgs
MTIgKzUwNiw5IEBAIHN0YXRpYyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlz
aXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2RlICpjZWx0CiAgICAgICAgewogICAgICAgICAg
IGZsb2F0IGJpbkUgPSBvdXRbaV0uciooZmxvYXQpb3V0W2ldLnIgKyBvdXRbTi1pXS5yKihmbG9h
dClvdXRbTi1pXS5yCiAgICAgICAgICAgICAgICAgICAgICArIG91dFtpXS5pKihmbG9hdClvdXRb
aV0uaSArIG91dFtOLWldLmkqKGZsb2F0KW91dFtOLWldLmk7Ci0jaWZkZWYgRklYRURfUE9JTlQK
LSAgICAgICAgICAvKiBGSVhNRTogSXQncyBwcm9iYWJseSBiZXN0IHRvIGNoYW5nZSB0aGUgQkZD
QyBmaWx0ZXIgaW5pdGlhbCBzdGF0ZSBpbnN0ZWFkICovCi0gICAgICAgICAgYmluRSAqPSA1LjU1
ZS0xN2Y7Ci0jZW5kaWYKKyAgICAgICAgICBiaW5FID0gU0NBTEVfRU5FUihiaW5FKTsKICAgICAg
ICAgICBFICs9IGJpbkU7Ci0gICAgICAgICAgdEUgKz0gYmluRSp0b25hbGl0eVtpXTsKKyAgICAg
ICAgICB0RSArPSBiaW5FKk1BWDMyKDAsIHRvbmFsaXR5W2ldKTsKICAgICAgICAgICBuRSArPSBi
aW5FKjIuZiooLjVmLW5vaXNpbmVzc1tpXSk7CiAgICAgICAgfQogI2lmbmRlZiBGSVhFRF9QT0lO
VApAQCAtMzcxLDE0ICs1MjYsMjcgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9u
YWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKIAogICAgICAg
IGZyYW1lX2xvdWRuZXNzICs9IChmbG9hdClzcXJ0KEUrMWUtMTBmKTsKICAgICAgICBsb2dFW2Jd
ID0gKGZsb2F0KWxvZyhFKzFlLTEwZik7Ci0gICAgICAgdG9uYWwtPmxvd0VbYl0gPSBNSU4zMihs
b2dFW2JdLCB0b25hbC0+bG93RVtiXSsuMDFmKTsKLSAgICAgICB0b25hbC0+aGlnaEVbYl0gPSBN
QVgzMihsb2dFW2JdLCB0b25hbC0+aGlnaEVbYl0tLjFmKTsKLSAgICAgICBpZiAodG9uYWwtPmhp
Z2hFW2JdIDwgdG9uYWwtPmxvd0VbYl0rMS5mKQorICAgICAgIGJhbmRfbG9nMltiKzFdID0gLjVm
KjEuNDQyNjk1ZiooZmxvYXQpbG9nKEUrMWUtMTBmKTsKKyAgICAgICB0b25hbC0+bG9nRVt0b25h
bC0+RV9jb3VudF1bYl0gPSBsb2dFW2JdOworICAgICAgIGlmICh0b25hbC0+Y291bnQ9PTApCisg
ICAgICAgICAgdG9uYWwtPmhpZ2hFW2JdID0gdG9uYWwtPmxvd0VbYl0gPSBsb2dFW2JdOworICAg
ICAgIGlmICh0b25hbC0+aGlnaEVbYl0gPiB0b25hbC0+bG93RVtiXSArIDcuNSkKKyAgICAgICB7
CisgICAgICAgICAgaWYgKHRvbmFsLT5oaWdoRVtiXSAtIGxvZ0VbYl0gPiBsb2dFW2JdIC0gdG9u
YWwtPmxvd0VbYl0pCisgICAgICAgICAgICAgdG9uYWwtPmhpZ2hFW2JdIC09IC4wMWY7CisgICAg
ICAgICAgZWxzZQorICAgICAgICAgICAgIHRvbmFsLT5sb3dFW2JdICs9IC4wMWY7CisgICAgICAg
fQorICAgICAgIGlmIChsb2dFW2JdID4gdG9uYWwtPmhpZ2hFW2JdKQogICAgICAgIHsKLSAgICAg
ICAgICB0b25hbC0+aGlnaEVbYl0rPS41ZjsKLSAgICAgICAgICB0b25hbC0+bG93RVtiXS09LjVm
OworICAgICAgICAgIHRvbmFsLT5oaWdoRVtiXSA9IGxvZ0VbYl07CisgICAgICAgICAgdG9uYWwt
Pmxvd0VbYl0gPSBNQVgzMih0b25hbC0+aGlnaEVbYl0tMTUsIHRvbmFsLT5sb3dFW2JdKTsKKyAg
ICAgICB9IGVsc2UgaWYgKGxvZ0VbYl0gPCB0b25hbC0+bG93RVtiXSkKKyAgICAgICB7CisgICAg
ICAgICAgdG9uYWwtPmxvd0VbYl0gPSBsb2dFW2JdOworICAgICAgICAgIHRvbmFsLT5oaWdoRVti
XSA9IE1JTjMyKHRvbmFsLT5sb3dFW2JdKzE1LCB0b25hbC0+aGlnaEVbYl0pOwogICAgICAgIH0K
LSAgICAgICByZWxhdGl2ZUUgKz0gKGxvZ0VbYl0tdG9uYWwtPmxvd0VbYl0pLygxZS0xNWYrdG9u
YWwtPmhpZ2hFW2JdLXRvbmFsLT5sb3dFW2JdKTsKKyAgICAgICByZWxhdGl2ZUUgKz0gKGxvZ0Vb
Yl0tdG9uYWwtPmxvd0VbYl0pLygxZS0xNWYgKyAodG9uYWwtPmhpZ2hFW2JdLXRvbmFsLT5sb3dF
W2JdKSk7CiAKICAgICAgICBMMT1MMj0wOwogICAgICAgIGZvciAoaT0wO2k8TkJfRlJBTUVTO2kr
KykKQEAgLTQxMCwyNyArNTc4LDc0IEBAIHN0YXRpYyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRv
bmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2RlICpjZWx0CiAgICAgICAg
dG9uYWwtPnByZXZfYmFuZF90b25hbGl0eVtiXSA9IGJhbmRfdG9uYWxpdHlbYl07CiAgICAgfQog
CisgICAgbGVha2FnZV9mcm9tWzBdID0gYmFuZF9sb2cyWzBdOworICAgIGxlYWthZ2VfdG9bMF0g
PSBiYW5kX2xvZzJbMF0gLSBMRUFLQUdFX09GRlNFVDsKKyAgICBmb3IgKGI9MTtiPE5CX1RCQU5E
UysxO2IrKykKKyAgICB7CisgICAgICAgZmxvYXQgbGVha19zbG9wZSA9IExFQUtBR0VfU0xPUEUq
KHRiYW5kc1tiXS10YmFuZHNbYi0xXSkvNDsKKyAgICAgICBsZWFrYWdlX2Zyb21bYl0gPSBNSU4x
NihsZWFrYWdlX2Zyb21bYi0xXStsZWFrX3Nsb3BlLCBiYW5kX2xvZzJbYl0pOworICAgICAgIGxl
YWthZ2VfdG9bYl0gPSBNQVgxNihsZWFrYWdlX3RvW2ItMV0tbGVha19zbG9wZSwgYmFuZF9sb2cy
W2JdLUxFQUtBR0VfT0ZGU0VUKTsKKyAgICB9CisgICAgZm9yIChiPU5CX1RCQU5EUy0yO2I+PTA7
Yi0tKQorICAgIHsKKyAgICAgICBmbG9hdCBsZWFrX3Nsb3BlID0gTEVBS0FHRV9TTE9QRSoodGJh
bmRzW2IrMV0tdGJhbmRzW2JdKS80OworICAgICAgIGxlYWthZ2VfZnJvbVtiXSA9IE1JTjE2KGxl
YWthZ2VfZnJvbVtiKzFdK2xlYWtfc2xvcGUsIGxlYWthZ2VfZnJvbVtiXSk7CisgICAgICAgbGVh
a2FnZV90b1tiXSA9IE1BWDE2KGxlYWthZ2VfdG9bYisxXS1sZWFrX3Nsb3BlLCBsZWFrYWdlX3Rv
W2JdKTsKKyAgICB9CisgICAgY2VsdF9hc3NlcnQoTkJfVEJBTkRTKzEgPD0gTEVBS19CQU5EUyk7
CisgICAgZm9yIChiPTA7YjxOQl9UQkFORFMrMTtiKyspCisgICAgeworICAgICAgIC8qIGxlYWtf
Ym9vc3RbXSBpcyBtYWRlIHVwIG9mIHR3byB0ZXJtcy4gVGhlIGZpcnN0LCBiYXNlZCBvbiBsZWFr
YWdlX3RvW10sCisgICAgICAgICAgcmVwcmVzZW50cyB0aGUgYm9vc3QgbmVlZGVkIHRvIG92ZXJj
b21lIHRoZSBhbW91bnQgb2YgYW5hbHlzaXMgbGVha2FnZQorICAgICAgICAgIGNhdXNlIGluIGEg
d2Vha2VyIGJhbmQgYiBieSBsb3VkZXIgbmVpZ2hib3VyaW5nIGJhbmRzLgorICAgICAgICAgIFRo
ZSBzZWNvbmQsIGJhc2VkIG9uIGxlYWthZ2VfZnJvbVtdLCBhcHBsaWVzIHRvIGEgbG91ZCBiYW5k
IGIgZm9yCisgICAgICAgICAgd2hpY2ggdGhlIHF1YW50aXphdGlvbiBub2lzZSBjYXVzZXMgc3lu
dGhlc2lzIGxlYWthZ2UgdG8gdGhlIHdlYWtlcgorICAgICAgICAgIG5laWdoYm91cmluZyBiYW5k
cy4gKi8KKyAgICAgICBmbG9hdCBib29zdCA9IE1BWDE2KDAsIGxlYWthZ2VfdG9bYl0gLSBiYW5k
X2xvZzJbYl0pICsKKyAgICAgICAgICAgICBNQVgxNigwLCBiYW5kX2xvZzJbYl0gLSAobGVha2Fn
ZV9mcm9tW2JdK0xFQUtBR0VfT0ZGU0VUKSk7CisgICAgICAgaW5mby0+bGVha19ib29zdFtiXSA9
IElNSU4oMjU1LCAoaW50KWZsb29yKC41ICsgNjQuZipib29zdCkpOworICAgIH0KKyAgICBmb3Ig
KDtiPExFQUtfQkFORFM7YisrKSBpbmZvLT5sZWFrX2Jvb3N0W2JdID0gMDsKKworICAgIGZvciAo
aT0wO2k8TkJfRlJBTUVTO2krKykKKyAgICB7CisgICAgICAgaW50IGo7CisgICAgICAgZmxvYXQg
bWluZGlzdCA9IDFlMTVmOworICAgICAgIGZvciAoaj0wO2o8TkJfRlJBTUVTO2orKykKKyAgICAg
ICB7CisgICAgICAgICAgaW50IGs7CisgICAgICAgICAgZmxvYXQgZGlzdD0wOworICAgICAgICAg
IGZvciAoaz0wO2s8TkJfVEJBTkRTO2srKykKKyAgICAgICAgICB7CisgICAgICAgICAgICAgZmxv
YXQgdG1wOworICAgICAgICAgICAgIHRtcCA9IHRvbmFsLT5sb2dFW2ldW2tdIC0gdG9uYWwtPmxv
Z0Vbal1ba107CisgICAgICAgICAgICAgZGlzdCArPSB0bXAqdG1wOworICAgICAgICAgIH0KKyAg
ICAgICAgICBpZiAoaiE9aSkKKyAgICAgICAgICAgICBtaW5kaXN0ID0gTUlOMzIobWluZGlzdCwg
ZGlzdCk7CisgICAgICAgfQorICAgICAgIHNwZWNfdmFyaWFiaWxpdHkgKz0gbWluZGlzdDsKKyAg
ICB9CisgICAgc3BlY192YXJpYWJpbGl0eSA9IChmbG9hdClzcXJ0KHNwZWNfdmFyaWFiaWxpdHkv
TkJfRlJBTUVTL05CX1RCQU5EUyk7CiAgICAgYmFuZHdpZHRoX21hc2sgPSAwOwogICAgIGJhbmR3
aWR0aCA9IDA7CiAgICAgbWF4RSA9IDA7CiAgICAgbm9pc2VfZmxvb3IgPSA1LjdlLTRmLygxPDwo
SU1BWCgwLGxzYl9kZXB0aC04KSkpOwotI2lmZGVmIEZJWEVEX1BPSU5UCi0gICAgbm9pc2VfZmxv
b3IgKj0gMTw8KDE1K1NJR19TSElGVCk7Ci0jZW5kaWYKICAgICBub2lzZV9mbG9vciAqPSBub2lz
ZV9mbG9vcjsKLSAgICBmb3IgKGI9MDtiPE5CX1RPVF9CQU5EUztiKyspCisgICAgZm9yIChiPTA7
YjxOQl9UQkFORFM7YisrKQogICAgIHsKICAgICAgICBmbG9hdCBFPTA7CiAgICAgICAgaW50IGJh
bmRfc3RhcnQsIGJhbmRfZW5kOwogICAgICAgIC8qIEtlZXAgYSBtYXJnaW4gb2YgMzAwIEh6IGZv
ciBhbGlhc2luZyAqLwotICAgICAgIGJhbmRfc3RhcnQgPSBleHRyYV9iYW5kc1tiXTsKLSAgICAg
ICBiYW5kX2VuZCA9IGV4dHJhX2JhbmRzW2IrMV07CisgICAgICAgYmFuZF9zdGFydCA9IHRiYW5k
c1tiXTsKKyAgICAgICBiYW5kX2VuZCA9IHRiYW5kc1tiKzFdOwogICAgICAgIGZvciAoaT1iYW5k
X3N0YXJ0O2k8YmFuZF9lbmQ7aSsrKQogICAgICAgIHsKICAgICAgICAgICBmbG9hdCBiaW5FID0g
b3V0W2ldLnIqKGZsb2F0KW91dFtpXS5yICsgb3V0W04taV0uciooZmxvYXQpb3V0W04taV0ucgog
ICAgICAgICAgICAgICAgICAgICAgKyBvdXRbaV0uaSooZmxvYXQpb3V0W2ldLmkgKyBvdXRbTi1p
XS5pKihmbG9hdClvdXRbTi1pXS5pOwogICAgICAgICAgIEUgKz0gYmluRTsKICAgICAgICB9Cisg
ICAgICAgRSA9IFNDQUxFX0VORVIoRSk7CiAgICAgICAgbWF4RSA9IE1BWDMyKG1heEUsIEUpOwog
ICAgICAgIHRvbmFsLT5tZWFuRVtiXSA9IE1BWDMyKCgxLWFscGhhRTIpKnRvbmFsLT5tZWFuRVti
XSwgRSk7CiAgICAgICAgRSA9IE1BWDMyKEUsIHRvbmFsLT5tZWFuRVtiXSk7CkBAIC00NDEsMTQg
KzY1NiwzNiBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lz
U3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgICAgICAgIDIpIGxlc3MgdGhh
biA5MCBkQiBiZWxvdyB0aGUgcGVhayBiYW5kIChtYXhpbWFsIG1hc2tpbmcgcG9zc2libGUgY29u
c2lkZXJpbmcKICAgICAgICAgICAgICBib3RoIHRoZSBBVEggYW5kIHRoZSBsb3VkbmVzcy1kZXBl
bmRlbnQgc2xvcGUgb2YgdGhlIHNwcmVhZGluZyBmdW5jdGlvbikKICAgICAgICAgICAzKSBhYm92
ZSB0aGUgUENNIHF1YW50aXphdGlvbiBub2lzZSBmbG9vcgorICAgICAgICAgIFdlIHVzZSBiKzEg
YmVjYXVzZSB0aGUgZmlyc3QgQ0VMVCBiYW5kIGlzbid0IGluY2x1ZGVkIGluIHRiYW5kc1tdCiAg
ICAgICAgKi8KICAgICAgICBpZiAoRT4uMSpiYW5kd2lkdGhfbWFzayAmJiBFKjFlOWYgPiBtYXhF
ICYmIEUgPiBub2lzZV9mbG9vciooYmFuZF9lbmQtYmFuZF9zdGFydCkpCi0gICAgICAgICAgYmFu
ZHdpZHRoID0gYjsKKyAgICAgICAgICBiYW5kd2lkdGggPSBiKzE7CisgICAgfQorICAgIC8qIFNw
ZWNpYWwgY2FzZSBmb3IgdGhlIGxhc3QgdHdvIGJhbmRzLCBmb3Igd2hpY2ggd2UgZG9uJ3QgaGF2
ZSBzcGVjdHJ1bSBidXQgb25seQorICAgICAgIHRoZSBlbmVyZ3kgYWJvdmUgMTIga0h6LiAqLwor
ICAgIGlmICh0b25hbC0+RnMgPT0gNDgwMDApIHsKKyAgICAgICBmbG9hdCByYXRpbzsKKyAgICAg
ICBmbG9hdCBFID0gaHBfZW5lciooMS5mLygyNDAqMjQwKSk7CisgICAgICAgcmF0aW8gPSB0b25h
bC0+cHJldl9iYW5kd2lkdGg9PTIwID8gMC4wM2YgOiAwLjA3ZjsKKyNpZmRlZiBGSVhFRF9QT0lO
VAorICAgICAgIC8qIHNpbGtfcmVzYW1wbGVyX2Rvd24yX2hwKCkgc2hpZnRlZCByaWdodCBieSBh
biBleHRyYSA4IGJpdHMuICovCisgICAgICAgRSAqPSAyNTYuZiooMS5mL1ExNU9ORSkqKDEuZi9R
MTVPTkUpOworI2VuZGlmCisgICAgICAgbWF4RSA9IE1BWDMyKG1heEUsIEUpOworICAgICAgIHRv
bmFsLT5tZWFuRVtiXSA9IE1BWDMyKCgxLWFscGhhRTIpKnRvbmFsLT5tZWFuRVtiXSwgRSk7Cisg
ICAgICAgRSA9IE1BWDMyKEUsIHRvbmFsLT5tZWFuRVtiXSk7CisgICAgICAgLyogVXNlIGEgc2lt
cGxlIGZvbGxvd2VyIHdpdGggMTMgZEIvQmFyayBzbG9wZSBmb3Igc3ByZWFkaW5nIGZ1bmN0aW9u
ICovCisgICAgICAgYmFuZHdpZHRoX21hc2sgPSBNQVgzMiguMDVmKmJhbmR3aWR0aF9tYXNrLCBF
KTsKKyAgICAgICBpZiAoRT5yYXRpbypiYW5kd2lkdGhfbWFzayAmJiBFKjFlOWYgPiBtYXhFICYm
IEUgPiBub2lzZV9mbG9vcioxNjApCisgICAgICAgICAgYmFuZHdpZHRoID0gMjA7CisgICAgICAg
LyogVGhpcyBkZXRlY3RvciBpcyB1bnJlbGlhYmxlLCBzbyBpZiB0aGUgYmFuZHdpZHRoIGlzIGNs
b3NlIHRvIFNXQiwgYXNzdW1lIGl0J3MgRkIuICovCisgICAgICAgaWYgKGJhbmR3aWR0aCA+PSAx
NykKKyAgICAgICAgICBiYW5kd2lkdGggPSAyMDsKICAgICB9CiAgICAgaWYgKHRvbmFsLT5jb3Vu
dDw9MikKICAgICAgICBiYW5kd2lkdGggPSAyMDsKICAgICBmcmFtZV9sb3VkbmVzcyA9IDIwKihm
bG9hdClsb2cxMChmcmFtZV9sb3VkbmVzcyk7Ci0gICAgdG9uYWwtPkV0cmFja2VyID0gTUFYMzIo
dG9uYWwtPkV0cmFja2VyLS4wM2YsIGZyYW1lX2xvdWRuZXNzKTsKKyAgICB0b25hbC0+RXRyYWNr
ZXIgPSBNQVgzMih0b25hbC0+RXRyYWNrZXItLjAwM2YsIGZyYW1lX2xvdWRuZXNzKTsKICAgICB0
b25hbC0+bG93RUNvdW50ICo9ICgxLWFscGhhRSk7CiAgICAgaWYgKGZyYW1lX2xvdWRuZXNzIDwg
dG9uYWwtPkV0cmFja2VyLTMwKQogICAgICAgIHRvbmFsLT5sb3dFQ291bnQgKz0gYWxwaGFFOwpA
QCAtNDYwLDExICs2OTcsMTggQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxp
dHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICAgICBz
dW0gKz0gZGN0X3RhYmxlW2kqMTYrYl0qbG9nRVtiXTsKICAgICAgICBCRkNDW2ldID0gc3VtOwog
ICAgIH0KKyAgICBmb3IgKGk9MDtpPDg7aSsrKQorICAgIHsKKyAgICAgICBmbG9hdCBzdW09MDsK
KyAgICAgICBmb3IgKGI9MDtiPDE2O2IrKykKKyAgICAgICAgICBzdW0gKz0gZGN0X3RhYmxlW2kq
MTYrYl0qLjVmKih0b25hbC0+aGlnaEVbYl0rdG9uYWwtPmxvd0VbYl0pOworICAgICAgIG1pZEVb
aV0gPSBzdW07CisgICAgfQogCiAgICAgZnJhbWVfc3RhdGlvbmFyaXR5IC89IE5CX1RCQU5EUzsK
ICAgICByZWxhdGl2ZUUgLz0gTkJfVEJBTkRTOwogICAgIGlmICh0b25hbC0+Y291bnQ8MTApCi0g
ICAgICAgcmVsYXRpdmVFID0gLjU7CisgICAgICAgcmVsYXRpdmVFID0gLjVmOwogICAgIGZyYW1l
X25vaXNpbmVzcyAvPSBOQl9UQkFORFM7CiAjaWYgMQogICAgIGluZm8tPmFjdGl2aXR5ID0gZnJh
bWVfbm9pc2luZXNzICsgKDEtZnJhbWVfbm9pc2luZXNzKSpyZWxhdGl2ZUU7CkBAIC00NzksNyAr
NzIzLDcgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0
YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICBpbmZvLT50b25hbGl0eV9zbG9w
ZSA9IHNsb3BlOwogCiAgICAgdG9uYWwtPkVfY291bnQgPSAodG9uYWwtPkVfY291bnQrMSklTkJf
RlJBTUVTOwotICAgIHRvbmFsLT5jb3VudCsrOworICAgIHRvbmFsLT5jb3VudCA9IElNSU4odG9u
YWwtPmNvdW50KzEsIEFOQUxZU0lTX0NPVU5UX01BWCk7CiAgICAgaW5mby0+dG9uYWxpdHkgPSBm
cmFtZV90b25hbGl0eTsKIAogICAgIGZvciAoaT0wO2k8NDtpKyspCkBAIC00OTgsNiArNzQyLDgg
QEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0
b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICBmb3IgKGk9MDtpPDk7aSsrKQogICAg
ICAgICAgIHRvbmFsLT5zdGRbaV0gPSAoMS1hbHBoYSkqdG9uYWwtPnN0ZFtpXSArIGFscGhhKmZl
YXR1cmVzW2ldKmZlYXR1cmVzW2ldOwogICAgIH0KKyAgICBmb3IgKGk9MDtpPDQ7aSsrKQorICAg
ICAgIGZlYXR1cmVzW2ldID0gQkZDQ1tpXS1taWRFW2ldOwogCiAgICAgZm9yIChpPTA7aTw4O2kr
KykKICAgICB7CkBAIC01MDcsMjQgKzc1MywyNiBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFs
eXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAog
ICAgICAgIHRvbmFsLT5tZW1baV0gPSBCRkNDW2ldOwogICAgIH0KICAgICBmb3IgKGk9MDtpPDk7
aSsrKQotICAgICAgIGZlYXR1cmVzWzExK2ldID0gKGZsb2F0KXNxcnQodG9uYWwtPnN0ZFtpXSk7
Ci0gICAgZmVhdHVyZXNbMjBdID0gaW5mby0+dG9uYWxpdHk7Ci0gICAgZmVhdHVyZXNbMjFdID0g
aW5mby0+YWN0aXZpdHk7Ci0gICAgZmVhdHVyZXNbMjJdID0gZnJhbWVfc3RhdGlvbmFyaXR5Owot
ICAgIGZlYXR1cmVzWzIzXSA9IGluZm8tPnRvbmFsaXR5X3Nsb3BlOwotICAgIGZlYXR1cmVzWzI0
XSA9IHRvbmFsLT5sb3dFQ291bnQ7CisgICAgICAgZmVhdHVyZXNbMTEraV0gPSAoZmxvYXQpc3Fy
dCh0b25hbC0+c3RkW2ldKSAtIHN0ZF9mZWF0dXJlX2JpYXNbaV07CisgICAgZmVhdHVyZXNbMThd
ID0gc3BlY192YXJpYWJpbGl0eSAtIDAuNzhmOworICAgIGZlYXR1cmVzWzIwXSA9IGluZm8tPnRv
bmFsaXR5IC0gMC4xNTQ3MjNmOworICAgIGZlYXR1cmVzWzIxXSA9IGluZm8tPmFjdGl2aXR5IC0g
MC43MjQ2NDNmOworICAgIGZlYXR1cmVzWzIyXSA9IGZyYW1lX3N0YXRpb25hcml0eSAtIDAuNzQz
NzE3ZjsKKyAgICBmZWF0dXJlc1syM10gPSBpbmZvLT50b25hbGl0eV9zbG9wZSArIDAuMDY5MjE2
ZjsKKyAgICBmZWF0dXJlc1syNF0gPSB0b25hbC0+bG93RUNvdW50IC0gMC4wNjc5MzBmOwogCi0j
aWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCiAgICAgbWxwX3Byb2Nlc3MoJm5ldCwgZmVhdHVyZXMs
IGZyYW1lX3Byb2JzKTsKICAgICBmcmFtZV9wcm9ic1swXSA9IC41ZiooZnJhbWVfcHJvYnNbMF0r
MSk7CiAgICAgLyogQ3VydmUgZml0dGluZyBiZXR3ZWVuIHRoZSBNTFAgcHJvYmFiaWxpdHkgYW5k
IHRoZSBhY3R1YWwgcHJvYmFiaWxpdHkgKi8KLSAgICBmcmFtZV9wcm9ic1swXSA9IC4wMWYgKyAx
LjIxZipmcmFtZV9wcm9ic1swXSpmcmFtZV9wcm9ic1swXSAtIC4yM2YqKGZsb2F0KXBvdyhmcmFt
ZV9wcm9ic1swXSwgMTApOworICAgIC8qZnJhbWVfcHJvYnNbMF0gPSAuMDFmICsgMS4yMWYqZnJh
bWVfcHJvYnNbMF0qZnJhbWVfcHJvYnNbMF0gLSAuMjNmKihmbG9hdClwb3coZnJhbWVfcHJvYnNb
MF0sIDEwKTsqLwogICAgIC8qIFByb2JhYmlsaXR5IG9mIGFjdGl2ZSBhdWRpbyAoYXMgb3Bwb3Nl
ZCB0byBzaWxlbmNlKSAqLwogICAgIGZyYW1lX3Byb2JzWzFdID0gLjVmKmZyYW1lX3Byb2JzWzFd
Ky41ZjsKLSAgICAvKiBDb25zaWRlciB0aGF0IHNpbGVuY2UgaGFzIGEgNTAtNTAgcHJvYmFiaWxp
dHkuICovCi0gICAgZnJhbWVfcHJvYnNbMF0gPSBmcmFtZV9wcm9ic1sxXSpmcmFtZV9wcm9ic1sw
XSArICgxLWZyYW1lX3Byb2JzWzFdKSouNWY7CisgICAgZnJhbWVfcHJvYnNbMV0gKj0gZnJhbWVf
cHJvYnNbMV07CisKKyAgICAvKiBQcm9iYWJpbGl0eSBvZiBzcGVlY2ggb3IgbXVzaWMgdnMgbm9p
c2UgKi8KKyAgICBpbmZvLT5hY3Rpdml0eV9wcm9iYWJpbGl0eSA9IGZyYW1lX3Byb2JzWzFdOwog
Ci0gICAgLypwcmludGYoIiVmICVmICIsIGZyYW1lX3Byb2JzWzBdLCBmcmFtZV9wcm9ic1sxXSk7
Ki8KKyAgICAvKnByaW50ZigiJWYgJWZcbiIsIGZyYW1lX3Byb2JzWzBdLCBmcmFtZV9wcm9ic1sx
XSk7Ki8KICAgICB7CiAgICAgICAgLyogUHJvYmFiaWxpdHkgb2Ygc3RhdGUgdHJhbnNpdGlvbiAq
LwogICAgICAgIGZsb2F0IHRhdTsKQEAgLTU0MiwxMiArNzkwLDMyIEBAIHN0YXRpYyB2b2lkIHRv
bmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRN
b2RlICpjZWx0CiAgICAgICAgZmxvYXQgbXVzaWMwOwogICAgICAgIGZsb2F0IHAsIHE7CiAKKyAg
ICAgICAvKiBNb3JlIHNpbGVuY2UgdHJhbnNpdGlvbnMgZm9yIHNwZWVjaCB0aGFuIGZvciBtdXNp
Yy4gKi8KKyAgICAgICB0YXUgPSAuMDAxZip0b25hbC0+bXVzaWNfcHJvYiArIC4wMWYqKDEtdG9u
YWwtPm11c2ljX3Byb2IpOworICAgICAgIHAgPSBNQVgxNiguMDVmLE1JTjE2KC45NWYsZnJhbWVf
cHJvYnNbMV0pKTsKKyAgICAgICBxID0gTUFYMTYoLjA1ZixNSU4xNiguOTVmLHRvbmFsLT52YWRf
cHJvYikpOworICAgICAgIGJldGEgPSAuMDJmKy4wNWYqQUJTMTYocC1xKS8ocCooMS1xKStxKigx
LXApKTsKKyAgICAgICAvKiBwMCBhbmQgcDEgYXJlIHRoZSBwcm9iYWJpbGl0aWVzIG9mIHNwZWVj
aCBhbmQgbXVzaWMgYXQgdGhpcyBmcmFtZQorICAgICAgICAgIHVzaW5nIG9ubHkgaW5mb3JtYXRp
b24gZnJvbSBwcmV2aW91cyBmcmFtZSBhbmQgYXBwbHlpbmcgdGhlCisgICAgICAgICAgc3RhdGUg
dHJhbnNpdGlvbiBtb2RlbCAqLworICAgICAgIHAwID0gKDEtdG9uYWwtPnZhZF9wcm9iKSooMS10
YXUpICsgICAgdG9uYWwtPnZhZF9wcm9iICp0YXU7CisgICAgICAgcDEgPSAgICB0b25hbC0+dmFk
X3Byb2IgKigxLXRhdSkgKyAoMS10b25hbC0+dmFkX3Byb2IpKnRhdTsKKyAgICAgICAvKiBXZSBh
cHBseSB0aGUgY3VycmVudCBwcm9iYWJpbGl0eSB3aXRoIGV4cG9uZW50IGJldGEgdG8gd29yayBh
cm91bmQKKyAgICAgICAgICB0aGUgZmFjdCB0aGF0IHRoZSBwcm9iYWJpbGl0eSBlc3RpbWF0ZXMg
YXJlbid0IGluZGVwZW5kZW50LiAqLworICAgICAgIHAwICo9IChmbG9hdClwb3coMS1mcmFtZV9w
cm9ic1sxXSwgYmV0YSk7CisgICAgICAgcDEgKj0gKGZsb2F0KXBvdyhmcmFtZV9wcm9ic1sxXSwg
YmV0YSk7CisgICAgICAgLyogTm9ybWFsaXNlIHRoZSBwcm9iYWJpbGl0aWVzIHRvIGdldCB0aGUg
TWFyb2t2IHByb2JhYmlsaXR5IG9mIG11c2ljLiAqLworICAgICAgIHRvbmFsLT52YWRfcHJvYiA9
IHAxLyhwMCtwMSk7CisgICAgICAgaW5mby0+dmFkX3Byb2IgPSB0b25hbC0+dmFkX3Byb2I7Cisg
ICAgICAgLyogQ29uc2lkZXIgdGhhdCBzaWxlbmNlIGhhcyBhIDUwLTUwIHByb2JhYmlsaXR5IG9m
IGJlaW5nIHNwZWVjaCBvciBtdXNpYy4gKi8KKyAgICAgICBmcmFtZV9wcm9ic1swXSA9IHRvbmFs
LT52YWRfcHJvYipmcmFtZV9wcm9ic1swXSArICgxLXRvbmFsLT52YWRfcHJvYikqLjVmOworCiAg
ICAgICAgLyogT25lIHRyYW5zaXRpb24gZXZlcnkgMyBtaW51dGVzIG9mIGFjdGl2ZSBhdWRpbyAq
LwotICAgICAgIHRhdSA9IC4wMDAwNWYqZnJhbWVfcHJvYnNbMV07CisgICAgICAgdGF1ID0gLjAw
MDFmOwogICAgICAgIC8qIEFkYXB0IGJldGEgYmFzZWQgb24gaG93ICJ1bmV4cGVjdGVkIiB0aGUg
bmV3IHByb2IgaXMgKi8KICAgICAgICBwID0gTUFYMTYoLjA1ZixNSU4xNiguOTVmLGZyYW1lX3By
b2JzWzBdKSk7CiAgICAgICAgcSA9IE1BWDE2KC4wNWYsTUlOMTYoLjk1Zix0b25hbC0+bXVzaWNf
cHJvYikpOwotICAgICAgIGJldGEgPSAuMDFmKy4wNWYqQUJTMTYocC1xKS8ocCooMS1xKStxKigx
LXApKTsKKyAgICAgICBiZXRhID0gLjAyZisuMDVmKkFCUzE2KHAtcSkvKHAqKDEtcSkrcSooMS1w
KSk7CiAgICAgICAgLyogcDAgYW5kIHAxIGFyZSB0aGUgcHJvYmFiaWxpdGllcyBvZiBzcGVlY2gg
YW5kIG11c2ljIGF0IHRoaXMgZnJhbWUKICAgICAgICAgICB1c2luZyBvbmx5IGluZm9ybWF0aW9u
IGZyb20gcHJldmlvdXMgZnJhbWUgYW5kIGFwcGx5aW5nIHRoZQogICAgICAgICAgIHN0YXRlIHRy
YW5zaXRpb24gbW9kZWwgKi8KQEAgLTU2MSw2ICs4MjksNyBAQCBzdGF0aWMgdm9pZCB0b25hbGl0
eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAq
Y2VsdAogICAgICAgIHRvbmFsLT5tdXNpY19wcm9iID0gcDEvKHAwK3AxKTsKICAgICAgICBpbmZv
LT5tdXNpY19wcm9iID0gdG9uYWwtPm11c2ljX3Byb2I7CiAKKyAgICAgICAvKnByaW50ZigiJWYg
JWYgJWYgJWZcbiIsIGZyYW1lX3Byb2JzWzBdLCBmcmFtZV9wcm9ic1sxXSwgdG9uYWwtPm11c2lj
X3Byb2IsIHRvbmFsLT52YWRfcHJvYik7Ki8KICAgICAgICAvKiBUaGlzIGNodW5rIG9mIGNvZGUg
ZGVhbHMgd2l0aCBkZWxheWVkIGRlY2lzaW9uLiAqLwogICAgICAgIHBzdW09MWUtMjBmOwogICAg
ICAgIC8qIEluc3RhbnRhbmVvdXMgcHJvYmFiaWxpdHkgb2Ygc3BlZWNoIGFuZCBtdXNpYywgd2l0
aCBiZXRhIHByZS1hcHBsaWVkLiAqLwpAQCAtNTY4LDggKzgzNywxMSBAQCBzdGF0aWMgdm9pZCB0
b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxU
TW9kZSAqY2VsdAogICAgICAgIG11c2ljMCAgPSAoZmxvYXQpcG93KGZyYW1lX3Byb2JzWzBdLCBi
ZXRhKTsKICAgICAgICBpZiAodG9uYWwtPmNvdW50PT0xKQogICAgICAgIHsKLSAgICAgICAgICB0
b25hbC0+cHNwZWVjaFswXT0uNTsKLSAgICAgICAgICB0b25hbC0+cG11c2ljIFswXT0uNTsKKyAg
ICAgICAgICBpZiAodG9uYWwtPmFwcGxpY2F0aW9uID09IE9QVVNfQVBQTElDQVRJT05fVk9JUCkK
KyAgICAgICAgICAgICB0b25hbC0+cG11c2ljWzBdID0gLjFmOworICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICB0b25hbC0+cG11c2ljWzBdID0gLjYyNWY7CisgICAgICAgICAgdG9uYWwtPnBz
cGVlY2hbMF0gPSAxLXRvbmFsLT5wbXVzaWNbMF07CiAgICAgICAgfQogICAgICAgIC8qIFVwZGF0
ZWQgcHJvYmFiaWxpdHkgb2YgaGF2aW5nIG9ubHkgc3BlZWNoIChzMCkgb3Igb25seSBtdXNpYyAo
bTApLAogICAgICAgICAgIGJlZm9yZSBjb25zaWRlcmluZyB0aGUgbmV3IG9ic2VydmF0aW9uLiAq
LwpAQCAtNjE5LDI0ICs4OTEsMTcgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9u
YWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICAg
ICAgICB0b25hbC0+c3BlZWNoX2NvbmZpZGVuY2VfY291bnQgPSBJTUlOKHRvbmFsLT5zcGVlY2hf
Y29uZmlkZW5jZV9jb3VudCwgNTAwKTsKICAgICAgICAgICAgICB0b25hbC0+c3BlZWNoX2NvbmZp
ZGVuY2UgKz0gYWRhcHQqTUlOMTYoLjJmLGZyYW1lX3Byb2JzWzBdLXRvbmFsLT5zcGVlY2hfY29u
ZmlkZW5jZSk7CiAgICAgICAgICAgfQotICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgaWYgKHRv
bmFsLT5tdXNpY19jb25maWRlbmNlX2NvdW50PT0wKQotICAgICAgICAgICAgIHRvbmFsLT5tdXNp
Y19jb25maWRlbmNlID0gLjlmOwotICAgICAgICAgIGlmICh0b25hbC0+c3BlZWNoX2NvbmZpZGVu
Y2VfY291bnQ9PTApCi0gICAgICAgICAgICAgdG9uYWwtPnNwZWVjaF9jb25maWRlbmNlID0gLjFm
OwogICAgICAgIH0KICAgICB9Ci0gICAgaWYgKHRvbmFsLT5sYXN0X211c2ljICE9ICh0b25hbC0+
bXVzaWNfcHJvYj4uNWYpKQotICAgICAgIHRvbmFsLT5sYXN0X3RyYW5zaXRpb249MDsKICAgICB0
b25hbC0+bGFzdF9tdXNpYyA9IHRvbmFsLT5tdXNpY19wcm9iPi41ZjsKLSNlbHNlCi0gICAgaW5m
by0+bXVzaWNfcHJvYiA9IDA7Ci0jZW5kaWYKLSAgICAvKmZvciAoaT0wO2k8MjU7aSsrKQorI2lm
ZGVmIE1MUF9UUkFJTklORworICAgIGZvciAoaT0wO2k8MjU7aSsrKQogICAgICAgIHByaW50Zigi
JWYgIiwgZmVhdHVyZXNbaV0pOwotICAgIHByaW50ZigiXG4iKTsqLworICAgIHByaW50ZigiXG4i
KTsKKyNlbmRpZgogCiAgICAgaW5mby0+YmFuZHdpZHRoID0gYmFuZHdpZHRoOworICAgIHRvbmFs
LT5wcmV2X2JhbmR3aWR0aCA9IGJhbmR3aWR0aDsKICAgICAvKnByaW50ZigiJWQgJWRcbiIsIGlu
Zm8tPmJhbmR3aWR0aCwgaW5mby0+b3B1c19iYW5kd2lkdGgpOyovCiAgICAgaW5mby0+bm9pc2lu
ZXNzID0gZnJhbWVfbm9pc2luZXNzOwogICAgIGluZm8tPnZhbGlkID0gMTsKQEAgLTY1MCwxOCAr
OTE1LDE5IEBAIHZvaWQgcnVuX2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqYW5hbHlz
aXMsIGNvbnN0IENFTFRNb2RlICpjZWx0X21vZGUsIGNvCiAgICBpbnQgb2Zmc2V0OwogICAgaW50
IHBjbV9sZW47CiAKKyAgIGFuYWx5c2lzX2ZyYW1lX3NpemUgLT0gYW5hbHlzaXNfZnJhbWVfc2l6
ZSYxOwogICAgaWYgKGFuYWx5c2lzX3BjbSAhPSBOVUxMKQogICAgewogICAgICAgLyogQXZvaWQg
b3ZlcmZsb3cvd3JhcC1hcm91bmQgb2YgdGhlIGFuYWx5c2lzIGJ1ZmZlciAqLwotICAgICAgYW5h
bHlzaXNfZnJhbWVfc2l6ZSA9IElNSU4oKERFVEVDVF9TSVpFLTUpKkZzLzEwMCwgYW5hbHlzaXNf
ZnJhbWVfc2l6ZSk7CisgICAgICBhbmFseXNpc19mcmFtZV9zaXplID0gSU1JTigoREVURUNUX1NJ
WkUtNSkqRnMvNTAsIGFuYWx5c2lzX2ZyYW1lX3NpemUpOwogCiAgICAgICBwY21fbGVuID0gYW5h
bHlzaXNfZnJhbWVfc2l6ZSAtIGFuYWx5c2lzLT5hbmFseXNpc19vZmZzZXQ7CiAgICAgICBvZmZz
ZXQgPSBhbmFseXNpcy0+YW5hbHlzaXNfb2Zmc2V0OwotICAgICAgZG8gewotICAgICAgICAgdG9u
YWxpdHlfYW5hbHlzaXMoYW5hbHlzaXMsIGNlbHRfbW9kZSwgYW5hbHlzaXNfcGNtLCBJTUlOKDQ4
MCwgcGNtX2xlbiksIG9mZnNldCwgYzEsIGMyLCBDLCBsc2JfZGVwdGgsIGRvd25taXgpOwotICAg
ICAgICAgb2Zmc2V0ICs9IDQ4MDsKLSAgICAgICAgIHBjbV9sZW4gLT0gNDgwOwotICAgICAgfSB3
aGlsZSAocGNtX2xlbj4wKTsKKyAgICAgIHdoaWxlIChwY21fbGVuPjApIHsKKyAgICAgICAgIHRv
bmFsaXR5X2FuYWx5c2lzKGFuYWx5c2lzLCBjZWx0X21vZGUsIGFuYWx5c2lzX3BjbSwgSU1JTihG
cy81MCwgcGNtX2xlbiksIG9mZnNldCwgYzEsIGMyLCBDLCBsc2JfZGVwdGgsIGRvd25taXgpOwor
ICAgICAgICAgb2Zmc2V0ICs9IEZzLzUwOworICAgICAgICAgcGNtX2xlbiAtPSBGcy81MDsKKyAg
ICAgIH0KICAgICAgIGFuYWx5c2lzLT5hbmFseXNpc19vZmZzZXQgPSBhbmFseXNpc19mcmFtZV9z
aXplOwogCiAgICAgICBhbmFseXNpcy0+YW5hbHlzaXNfb2Zmc2V0IC09IGZyYW1lX3NpemU7CkBA
IC02NzAsMyArOTM2LDUgQEAgdm9pZCBydW5fYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRl
ICphbmFseXNpcywgY29uc3QgQ0VMVE1vZGUgKmNlbHRfbW9kZSwgY28KICAgIGFuYWx5c2lzX2lu
Zm8tPnZhbGlkID0gMDsKICAgIHRvbmFsaXR5X2dldF9pbmZvKGFuYWx5c2lzLCBhbmFseXNpc19p
bmZvLCBmcmFtZV9zaXplKTsKIH0KKworI2VuZGlmIC8qIERJU0FCTEVfRkxPQVRfQVBJICovCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NyYy9hbmFseXNpcy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvYW5hbHlzaXMuaAppbmRleCA5ZWFlNTZhNTI1
Mzc4YTM2MDI0NDRjZTk2MDk1N2Q0NGJmOTFmYTYxLi5jYWM1MWRmYTRlYjU1ZDhkMWFiYmIwZGVl
OWYwNzA0NjM1NDJkZjFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL2FuYWx5
c2lzLmgKQEAgLTMzLDEzICszMywyMCBAQAogCiAjZGVmaW5lIE5CX0ZSQU1FUyA4CiAjZGVmaW5l
IE5CX1RCQU5EUyAxOAotI2RlZmluZSBOQl9UT1RfQkFORFMgMjEKLSNkZWZpbmUgQU5BTFlTSVNf
QlVGX1NJWkUgNzIwIC8qIDE1IG1zIGF0IDQ4IGtIeiAqLworI2RlZmluZSBBTkFMWVNJU19CVUZf
U0laRSA3MjAgLyogMzAgbXMgYXQgMjQga0h6ICovCiAKLSNkZWZpbmUgREVURUNUX1NJWkUgMjAw
CisvKiBBdCB0aGF0IHBvaW50IHdlIGNhbiBzdG9wIGNvdW50aW5nIGZyYW1lcyBiZWNhdXNlIGl0
IG5vIGxvbmdlciBtYXR0ZXJzLiAqLworI2RlZmluZSBBTkFMWVNJU19DT1VOVF9NQVggMTAwMDAK
KworI2RlZmluZSBERVRFQ1RfU0laRSAxMDAKKworLyogVW5jb21tZW50IHRoaXMgdG8gcHJpbnQg
dGhlIE1MUCBmZWF0dXJlcyBvbiBzdGRvdXQuICovCisvKiNkZWZpbmUgTUxQX1RSQUlOSU5HKi8K
IAogdHlwZWRlZiBzdHJ1Y3QgewogICAgaW50IGFyY2g7CisgICBpbnQgYXBwbGljYXRpb247Cisg
ICBvcHVzX2ludDMyIEZzOwogI2RlZmluZSBUT05BTElUWV9BTkFMWVNJU19SRVNFVF9TVEFSVCBh
bmdsZQogICAgZmxvYXQgYW5nbGVbMjQwXTsKICAgIGZsb2F0IGRfYW5nbGVbMjQwXTsKQEAgLTQ4
LDIxICs1NSwyMiBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICBpbnQgICBtZW1fZmlsbDsgICAgICAg
ICAgICAgICAgICAgICAgLyogbnVtYmVyIG9mIHVzYWJsZSBzYW1wbGVzIGluIHRoZSBidWZmZXIg
Ki8KICAgIGZsb2F0IHByZXZfYmFuZF90b25hbGl0eVtOQl9UQkFORFNdOwogICAgZmxvYXQgcHJl
dl90b25hbGl0eTsKKyAgIGludCBwcmV2X2JhbmR3aWR0aDsKICAgIGZsb2F0IEVbTkJfRlJBTUVT
XVtOQl9UQkFORFNdOworICAgZmxvYXQgbG9nRVtOQl9GUkFNRVNdW05CX1RCQU5EU107CiAgICBm
bG9hdCBsb3dFW05CX1RCQU5EU107CiAgICBmbG9hdCBoaWdoRVtOQl9UQkFORFNdOwotICAgZmxv
YXQgbWVhbkVbTkJfVE9UX0JBTkRTXTsKKyAgIGZsb2F0IG1lYW5FW05CX1RCQU5EUysxXTsKICAg
IGZsb2F0IG1lbVszMl07CiAgICBmbG9hdCBjbWVhbls4XTsKICAgIGZsb2F0IHN0ZFs5XTsKICAg
IGZsb2F0IG11c2ljX3Byb2I7CisgICBmbG9hdCB2YWRfcHJvYjsKICAgIGZsb2F0IEV0cmFja2Vy
OwogICAgZmxvYXQgbG93RUNvdW50OwogICAgaW50IEVfY291bnQ7CiAgICBpbnQgbGFzdF9tdXNp
YzsKLSAgIGludCBsYXN0X3RyYW5zaXRpb247CiAgICBpbnQgY291bnQ7Ci0gICBmbG9hdCBzdWJm
cmFtZV9tZW1bM107CiAgICBpbnQgYW5hbHlzaXNfb2Zmc2V0OwogICAgLyoqIFByb2JhYmlsaXR5
IG9mIGhhdmluZyBzcGVlY2ggZm9yIHRpbWUgaSB0byBERVRFQ1RfU0laRS0xIChhbmQgbXVzaWMg
YmVmb3JlKS4KICAgICAgICBwc3BlZWNoWzBdIGlzIHRoZSBwcm9iYWJpbGl0eSB0aGF0IGFsbCBm
cmFtZXMgaW4gdGhlIHdpbmRvdyBhcmUgc3BlZWNoLiAqLwpAQCAtNzcsNiArODUsOCBAQCB0eXBl
ZGVmIHN0cnVjdCB7CiAgICBpbnQgd3JpdGVfcG9zOwogICAgaW50IHJlYWRfcG9zOwogICAgaW50
IHJlYWRfc3ViZnJhbWU7CisgICBmbG9hdCBocF9lbmVyX2FjY3VtOworICAgb3B1c192YWwzMiBk
b3dubWl4X3N0YXRlWzNdOwogICAgQW5hbHlzaXNJbmZvIGluZm9bREVURUNUX1NJWkVdOwogfSBU
b25hbGl0eUFuYWx5c2lzU3RhdGU7CiAKQEAgLTg2LDcgKzk2LDcgQEAgdHlwZWRlZiBzdHJ1Y3Qg
ewogICogbm90IGJlIHJlcGVhdGVkIGV2ZXJ5IGFuYWx5c2lzIHN0ZXAuIE5vIGFsbG9jYXRlZCBt
ZW1vcnkgaXMgcmV0YWluZWQKICAqIGJ5IHRoZSBzdGF0ZSBzdHJ1Y3QsIHNvIG5vIGNsZWFudXAg
Y2FsbCBpcyByZXF1aXJlZC4KICAqLwotdm9pZCB0b25hbGl0eV9hbmFseXNpc19pbml0KFRvbmFs
aXR5QW5hbHlzaXNTdGF0ZSAqYW5hbHlzaXMpOwordm9pZCB0b25hbGl0eV9hbmFseXNpc19pbml0
KFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqYW5hbHlzaXMsIG9wdXNfaW50MzIgRnMpOwogCiAvKiog
UmVzZXQgYSBUb25hbGl0eUFuYWx5c2lzU3RhdGUgc3R1Y3QuCiAgKgpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMv
bWxwX2RhdGEuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc3JjL21scF9kYXRhLmMKaW5kZXggYzJmZGE0ZTJlNTkzZmQzNzI4NjNkNDMz
NzU5NDc4NjJiMjc3ZTQ4OC4uYTgxOTg4MGJmZjVhODk5NWQyMTFiN2JiMzQzYTcwMzNjOWM3MTY5
MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zcmMvbWxwX2RhdGEuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9tbHBfZGF0YS5jCkBAIC0xLDEw
NiArMSwxMDkgQEAKLS8qIFRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgd2FzIGF1dG9tYXRpY2Fs
bHkgZ2VuZXJhdGVkIGJ5IG1scF90cmFpbi5jCi0gICBJdCBjb250YWlucyBtdWx0aS1sYXllciBw
ZXJjZXB0cm9uIChNTFApIHdlaWdodHMuICovCi0KICNpZmRlZiBIQVZFX0NPTkZJR19ICiAjaW5j
bHVkZSAiY29uZmlnLmgiCiAjZW5kaWYKIAogI2luY2x1ZGUgIm1scC5oIgogCi0vKiBSTVMgZXJy
b3Igd2FzIDAuMTM4MzIwLCBzZWVkIHdhcyAxMzYxNTM1NjYzICovCisvKiBSTVMgZXJyb3Igd2Fz
IDAuMjgwNDkyLCBzZWVkIHdhcyAxNDgwNDc4MTczICovCisvKiAwLjAwNTk3NiAwLjAzMTgyMSAo
MC4yODA0OTQgMC4yODA0OTIpIGRvbmUgKi8KIAotc3RhdGljIGNvbnN0IGZsb2F0IHdlaWdodHNb
NDIyXSA9IHsKK3N0YXRpYyBjb25zdCBmbG9hdCB3ZWlnaHRzWzQ1MF0gPSB7CiAKIC8qIGhpZGRl
biBsYXllciAqLwotLTAuMDk0MTEyNWYsIC0wLjMwMjk3NmYsIC0wLjYwMzU1NWYsIC0wLjE5Mzkz
ZiwgLTAuMTg1OTgzZiwKLS0wLjYwMTYxN2YsIC0wLjA0NjUzMTdmLCAtMC4xMTQ1NjNmLCAtMC4x
MDM1OTlmLCAtMC42MTg5MzhmLAotLTAuMzE3ODU5ZiwgLTAuMTY5OTQ5ZiwgLTAuMDcwMjg4NWYs
IDAuMTQ4MDY1ZiwgMC40MDk1MjRmLAotMC41NDg0MzJmLCAwLjM2NzY0OWYsIC0wLjQ5NDM5M2Ys
IDAuNzY0MzA2ZiwgLTEuODM5NTdmLAotMC4xNzA4NDlmLCAxMi43ODZmLCAtMS4wODg0OGYsIC0x
LjI3Mjg0ZiwgLTE2LjI2MDZmLAotMjQuMTc3M2YsIC01LjU3NDU0ZiwgLTAuMTcyNzZmLCAtMC4x
NjMzODhmLCAtMC4yMjQ0MjFmLAotLTAuMDk0ODk0NGYsIC0wLjA3Mjg2OTVmLCAtMC4yNjU1N2Ys
IC0wLjEwMDI4M2YsIC0wLjA1MTU0NTlmLAotLTAuMTQ2MTQyZiwgLTAuMTIwNjc0ZiwgLTAuMTgw
NjU1ZiwgMC4xMjg1N2YsIDAuNDQyMTM4ZiwKLS0wLjQ5MzczNWYsIDAuMTY3NzY3ZiwgMC4yMDY2
OTlmLCAtMC4xOTc1NjdmLCAwLjQxNzk5OWYsCi0xLjUwMzY0ZiwgLTAuNzczMzQxZiwgLTEwLjA0
MDFmLCAwLjQwMTg3MmYsIDIuOTc5NjZmLAotMTUuMjE2NWYsIC0xLjg4OTA1ZiwgLTEuMTkyNTRm
LCAwLjAyODUzOTdmLCAtMC4wMDQwNTEzOWYsCi0wLjA3MDc1NjVmLCAwLjAwODI1Njk5ZiwgLTAu
MDkyNzI2OWYsIC0wLjAxMDM5M2YsIC0wLjAwNDI4ODgyZiwKLS0wLjAwNDg5NzQzZiwgLTAuMDcw
OTczMWYsIC0wLjAwMjU1OTkyZiwgMC4wMzk1NjE5ZiwgMC4yMjY0MjRmLAotMC4wMzI1MjMxZiwg
MC4xNjIxNzVmLCAtMC4xMDAxMThmLCAwLjQ4NTc4OWYsIDAuMTI2OTdmLAotMC4yODU5MzdmLCAw
LjAxNTU2MzdmLCAwLjEwNTQ2ZiwgMy4wNTU1OGYsIDEuMTUwNTlmLAotLTEuMDA5MDRmLCAtMS44
MzA4OGYsIDMuMzE3NjZmLCAtMy40MjUxNmYsIC0wLjExOTEzNWYsCi0tMC4wNDA1NjU0ZiwgMC4w
MDY5MDA2OGYsIDAuMDE3OTg3N2YsIC0wLjAzODI0ODdmLCAwLjAwNTk3OTQxZiwKLS0wLjAxODM2
MTFmLCAwLjAwMTkwMzk1ZiwgLTAuMTQ0MzIyZiwgLTAuMDQzNTY3MWYsIDAuMDAwOTkwNTk0ZiwK
LTAuMjIxMDg3ZiwgMC4xNDI0MDVmLCAwLjQ4NDA2NmYsIDAuNDA0Mzk1ZiwgMC41MTE5NTVmLAot
LTAuMjM3MjU1ZiwgMC4yNDE3NDJmLCAwLjM1MDQ1ZiwgLTAuNjk5NDI4ZiwgMTAuMzk5M2YsCi0y
LjY1MDdmLCAtMi40MzQ1OWYsIC00LjE4ODM4ZiwgMS4wNTkyOGYsIDEuNzEwNjdmLAotMC4wMDY2
NzgxMWYsIC0wLjA3MjEzMzVmLCAtMC4wMzk3MzQ2ZiwgMC4wMzYyNzA0ZiwgLTAuMTE0OTZmLAot
LTAuMDIzNTc3NmYsIDAuMDA4MjE2MWYsIC0wLjAxNDE3NDFmLCAtMC4wMzI5Njk5ZiwgLTAuMDM1
NDI1M2YsCi0wLjAwMjc3NDA0ZiwgLTAuMjkwNjU0ZiwgLTEuMTQ3NjdmLCAtMC4zMTkxNTdmLCAt
MC42ODY1NDRmLAotMC4zNjg5N2YsIDAuNDc4ODk5ZiwgMC4xODI1NzlmLCAtMC40MTEwNjlmLCAw
Ljg4MTEwNGYsCi0tNC42MDY4M2YsIDEuNDY5N2YsIDAuMzM1ODQ1ZiwgLTEuODE5MDVmLCAtMzAu
MTY5OWYsCi01LjU1MjI1ZiwgMC4wMDE5NTA4ZiwgLTAuMTIzNTc2ZiwgLTAuMDcyNzMzMmYsIC0w
LjA2NDE1OTdmLAotLTAuMDUzNDQ1OGYsIC0wLjEwODE2NmYsIC0wLjA5MzczNjhmLCAtMC4wNjk3
ODgzZiwgLTAuMDI3NTQ3NWYsCi0tMC4xOTIzMDlmLCAtMC4xMTAwNzRmLCAwLjI4NTM3NWYsIC0w
LjQwNTU5N2YsIDAuMDkyNjcyNGYsCi0tMC4yODc4ODFmLCAtMC44NTExOTNmLCAtMC4wOTk0OTNm
LCAtMC4yMzM3NjRmLCAtMS4yODUyZiwKLTEuMTM2MTFmLCAzLjEyMTY4ZiwgLTAuMDY5OWYsIC0x
Ljg2MjE2ZiwgMi42NTI5MmYsCi0tNy4zMTAzNmYsIDIuNDQ3NzZmLCAtMC4wMDExMTgwMmYsIC0w
LjA2MzI3ODZmLCAtMC4wMzc2Mjk2ZiwKLS0wLjE0OTg1MWYsIDAuMTQyOTYzZiwgMC4xODQzNjhm
LCAwLjEyMzQzM2YsIDAuMDc1NjE1OGYsCi0wLjExNzMxMmYsIDAuMDkzMzM5NWYsIDAuMDY5MjE2
M2YsIDAuMDg0MjU5MmYsIDAuMDcwNDY4M2YsCi0wLjA1ODk5NjNmLCAwLjA5NDIyMDVmLCAtMC40
NDg4NjJmLCAwLjAyNjI2NzdmLCAwLjI3MDM1MmYsCi0tMC4yNjIzMTdmLCAwLjE3MjU4NmYsIDIu
MDAyMjdmLCAtMC4xNTkyMTZmLCAwLjAzODQyMmYsCi0xMC4yMDczZiwgNC4xNTUzNmYsIC0yLjM0
MDdmLCAtMC4wNTUwMjY1ZiwgMC4wMDk2NDc5MmYsCi0tMC4xNDEzMzZmLCAwLjAyNzQ1MDFmLCAw
LjAzNDM5MjFmLCAtMC4wNDg3NDI4ZiwgMC4wOTUwMTcyZiwKLS0wLjAwNzc1MDE3ZiwgLTAuMDM3
MjQ5MmYsIC0wLjAwNTQ4MTIxZiwgLTAuMDY2MzY5NWYsIDAuMDk2MDUwNmYsCi0tMC4yMDAwMDhm
LCAtMC4wNDEyODI3ZiwgMC41ODcyOGYsIDAuMDUxNTc4N2YsIDAuMzM3MjU0ZiwKLTAuODU1MDI0
ZiwgMC42NjgzNzFmLCAtMC4xMTQ5MDRmLCAtMy42Mjk2MmYsIC0wLjQ2NzQ3N2YsCi0tMC4yMTU0
NzJmLCAyLjYxNTM3ZiwgMC40MDYxMTdmLCAtMS4zNjM3M2YsIDAuMDQyNTM5NGYsCi0wLjEyMjA4
ZiwgMC4wOTM0NTAyZiwgMC4xMjMwNTVmLCAwLjAzNDA5MzVmLCAtMC4xNDI0NjZmLAotMC4wMzUw
MzdmLCAtMC4wNDkwNjY2ZiwgMC4wNzMzMjA4ZiwgMC4wNTc2NjcyZiwgMC4xMjM5ODRmLAotLTAu
MDUxNzE5NGYsIC0wLjI1MzAxOGYsIDAuNTkwNTY1ZiwgMC4xNDU4NDlmLCAwLjMxNTE4NWYsCi0w
LjIyMTUzNGYsIC0wLjE0OTA4MWYsIDAuMjE2MTYxZiwgLTAuMzQ5NTc1ZiwgMjQuNTY2NGYsCi0t
MC45OTQxOTZmLCAwLjYxNDI4OWYsIC0xOC43OTA1ZiwgLTIuODMyNzdmLCAtMC43MTY4MDFmLAot
LTAuMzQ3MjAxZiwgMC40Nzk1MTVmLCAtMC4yNDYwMjdmLCAwLjA3NTg2ODNmLCAwLjEzNzI5M2Ys
Ci0tMC4xNzc4MWYsIDAuMTE4NzUxZiwgLTAuMDAxMDgzMjlmLCAtMC4yMzczMzRmLCAwLjM1NTcz
MmYsCi0tMC4xMjk5MWYsIC0wLjA1NDc2MjdmLCAtMC4zMTg1NzZmLCAtMC4zMjU1MjRmLCAwLjE4
MDQ5NGYsCi0tMC4wNjI1NjA0ZiwgMC4xNDEyMTlmLCAwLjM0NDA2NGYsIDAuMzc2NThmLCAtMC41
OTE3NzJmLAotNS44NDI3ZiwgLTAuMzgwNzVmLCAwLjIyMTg5NGYsIC0xLjQxOTM0ZiwgLTEuODc5
NDNlKzA2ZiwKLTEuMzQxMTRmLCAwLjAyODMzNTVmLCAtMC4wNDQ3ODU2ZiwgLTAuMDIxMTQ2NmYs
IC0wLjAyNTY5MjdmLAotMC4wMTM5NjE4ZiwgMC4wMjA3OTM0ZiwgLTAuMDEwNzY2NmYsIDAuMDEx
MDk2OWYsIDAuMDU4NjA2OWYsCi0tMC4wMjUzNTQ1ZiwgLTAuMDMyODQzM2YsIDAuMTE4NzJmLCAt
MC4yMTY5NDNmLCAwLjE0NTc0OGYsCi0wLjExOTgwOGYsIC0wLjA5MTUyMTFmLCAtMC4xMjA2NDdm
LCAtMC4wNzg3NzE5ZiwgLTAuMTQzNjQ0ZiwKLS0wLjU5NTExNmYsIC0xLjE1MmYsIC0xLjI1MzM1
ZiwgLTEuMTcwOTJmLCA0LjM0MDIzZiwKLS05NzUyNjguZiwgLTEuMzcwMzNmLCAtMC4wNDAxMTIz
ZiwgMC4yMTA2MDJmLCAtMC4xMzY2NTZmLAotMC4xMzU5NjJmLCAtMC4wNTIzMjkzZiwgMC4wNDQ0
NjA0ZiwgMC4wMTQzOTI4ZiwgMC4wMDQxMjY2NmYsCi0tMC4wMTkzMDAzZiwgMC4yMTg0NTJmLCAt
MC4xMTAyMDRmLCAtMi4wMjU2M2YsIDAuOTE4MjM4ZiwKLS0yLjQ1MzYyZiwgMS4xOTU0MmYsIC0w
LjA2MTM2MmYsIC0xLjkyMjQzZiwgMC4zMDgxMTFmLAotMC40OTc2NGYsIDAuOTEyMzU2ZiwgMC4y
MDkyNzJmLCAtMi4zNDUyNWYsIDIuMTkzMjZmLAotLTYuNDcxMjFmLCAxLjY5NzcxZiwgLTAuNzI1
MTIzZiwgMC4wMTE4OTI5ZiwgMC4wMzc3OTQ0ZiwKLTAuMDU1NDAwM2YsIDAuMDIyNjQ1MmYsIC0w
LjA3MDQ0MjFmLCAtMC4wMzAwMzA5ZiwgMC4wMTIyOTc4ZiwKLS0wLjAwNDE3ODJmLCAtMC4wNjg2
NjEyZiwgMC4wMzEzMTE1ZiwgMC4wMzkxMTFmLCAwLjM2NDExMWYsCi0tMC4wOTQ1NTQ4ZiwgMC4w
MjI5ODc2ZiwgLTAuMTc0MTRmLCAwLjMyOTc5NWYsIDAuMTE0NzE0ZiwKLTAuMzAwMjJmLCAwLjEw
Njk5N2YsIDAuMTMyMzU1ZiwgNS43OTkzMmYsIDAuOTA4MDU4ZiwKLS0wLjkwNTMyNGYsIC0zLjM1
NjFmLCAwLjE5MDY0N2YsIDAuMTg0MjExZiwgLTAuNjczNjQ4ZiwKLTAuMjMxODA3ZiwgLTAuMDU4
NjIyMmYsIDAuMjMwNzUyZiwgLTAuNDM4Mjc3ZiwgMC4yNDU4NTdmLAotLTAuMTcyMTVmLCAwLjA4
NzYzODNmLCAtMC43MjA1MTJmLCAwLjE2MjUxNWYsIDAuMDE3MDU3MWYsCi0wLjEwMTc4MWYsIDAu
Mzg4NDc3ZiwgMS4zMjkzMWYsIDEuMDg1NDhmLCAtMC45MzYzMDFmLAotLTIuMzY5NThmLCAtNi43
MTk4OGYsIC0zLjQ0Mzc2ZiwgMi4xMzgxOGYsIDE0LjIzMThmLAotNC45MTQ1OWYsIC0zLjA5MDUy
ZiwgLTkuNjkxOTFmLCAtMC43NjgyMzRmLCAxLjc5NjA0ZiwKLTAuMDU0OTY1M2YsIDAuMTYzMzk5
ZiwgMC4wNzk3MDI1ZiwgMC4wMzQzOTMzZiwgLTAuMDU1NTg3NmYsCi0tMC4wMDUwNTY3M2YsIDAu
MDE4NzI1OGYsIDAuMDMyNjYyOGYsIDAuMDIzMTQ4NmYsIDAuMTU1NzNmLAotMC4wNDc2MjIzZiwg
LTAuMjU0ODI0ZiwgMS42MDE1NWYsIC0wLjgwMTIyMWYsIDIuNTU0OTZmLAotMC43Mzc2MjlmLCAt
MS4zNjI0OWYsIC0wLjY5NTQ2M2YsIC0yLjQ0MzAxZiwgLTEuNzMxODhmLAotMy45NTI3OWYsIDEu
ODkwNjhmLCAwLjQ4NjA4N2YsIC0xMS4zMzQzZiwgMy45NDE2ZSswNmYsCi0KKy0wLjUxNDYyNGYs
IDAuMDIzNDIyN2YsIC0wLjE0MzI5ZiwgLTAuMDg3ODIxNmYsIC0wLjAwMTg3ODI3ZiwKKy0wLjAy
NTc0NDNmLCAwLjEwODUyNGYsIDAuMDAzMzM4ODFmLCAwLjAwNTg1MDE3ZiwgLTAuMDI0NjEzMmYs
CiswLjE0MjcyM2YsIC0wLjAwNDM2NDk0ZiwgMC4wMTAxMzU0ZiwgLTAuMTExMjRmLCAtMC4wODA5
MzY3ZiwKKy0wLjA3NTA3NzJmLCAwLjAyOTU1MjRmLCAwLjAwODIzOTQ0ZiwgMC4xNTAzOTJmLCAw
LjAzMjA4NzZmLAorLTAuMDcxMDU2NGYsIC0xLjQzODE4ZiwgMC42NTIwNzZmLCAwLjA2NTA3NDRm
LCAtMS41NDgyMWYsCiswLjE2ODk0OWYsIC0xLjkyNzI0ZiwgMC4wNTE3OTc2ZiwgLTAuMDY3MDcz
N2YsIC0wLjA2OTAxMjFmLAorMC4wMDI0NzUyOGYsIC0wLjA1MjIwMjRmLCAwLjA2MzEzNjhmLCAw
LjA1MzI3NzZmLCAwLjA0Nzc1MWYsCistMC4wMTE3MTVmLCAwLjE0MjM3NGYsIC0wLjAyOTA4ODVm
LCAtMC4yNzkyNjNmLCAtMC40MzM0OTlmLAorLTAuMDc5NTE3NGYsIC0wLjM4MDQ1OGYsIC0wLjA1
MTI2M2YsIDAuMjE4NTM3ZiwgLTAuMzIyNDc4ZiwKKzEuMDY2NjdmLCAtMC4xMDQ2MDdmLCAtNC43
MDEwOGYsIDAuMzEyMDM3ZiwgMC4yNzczOTdmLAorLTIuNzE4NTlmLCAxLjcwMDM3ZiwgLTAuMTQx
ODQ1ZiwgMC4wMTE1NjE4ZiwgMC4wNjI5ODgzZiwKKzAuMDQwMzg3MWYsIDAuMDEzOTQyOGYsIC0w
LjAwNDMwNzMzZiwgLTAuMDQyOTAzOGYsIC0wLjA1OTAzMThmLAorLTAuMDUwMTUyNmYsIC0wLjAy
ODQ4MDJmLCAtMC4wNDE1Njg2ZiwgLTAuMDQzODk5OWYsIDAuMDgyMjY2NmYsCiswLjE5NzE5NGYs
IDAuMDM2MzI3NWYsIC0wLjA1ODQzMDdmLCAwLjA3NTIzNjRmLCAtMC4wNzk5Nzk2ZiwKKy0wLjE0
NjI3NWYsIDAuMTYxNjYxZiwgLTAuMTg0NTg1ZiwgMC4xNDU1NjhmLCAwLjQ0MjgyM2YsCisxLjYx
MjIxZiwgMS4xMTE2MmYsIDIuNjIxNzdmLCAtMi40ODJmLCAtMC4xMTI1OTlmLAorLTAuMTEwMzY2
ZiwgLTAuMTQwNzk0ZiwgLTAuMTgxNjk0ZiwgMC4wNjQ4Njc0ZiwgMC4wODQyMjQ4ZiwKKzAuMDkz
Mzk5M2YsIDAuMTUwMTIyZiwgMC4xMjkxNzFmLCAwLjE3Njg0OGYsIDAuMTQxNzU4ZiwKKy0wLjI3
MTgyMmYsIDAuMjM1MTEzZiwgMC4wNjY4NTc5ZiwgLTAuNDMzOTU3ZiwgMC4xMTM2MzNmLAorLTAu
MTY5MzQ4ZiwgLTEuNDAwOTFmLCAwLjYyODYxZiwgLTAuMTM0MjM2ZiwgMC40MDIxNzNmLAorMS44
NjM3M2YsIDEuNTM5OThmLCAtNC4zMjA4NGYsIDAuNzM1MzQzZiwgMC44MDAyMTRmLAorLTAuMDA5
Njg0MTVmLCAwLjA0MjU5MDRmLCAwLjAxOTY4MTFmLCAtMC4wMTg0MjZmLCAtMC4wMDAzNDM5NTNm
LAorLTAuMDA0MTYzODlmLCAwLjAwMTExNTU4ZiwgMC4wMTczMDY5ZiwgLTAuMDA5OTg1OTZmLCAt
MC4wMjU4OThmLAorMC4wMDEyMzc2NGYsIC0wLjAwNTIwMzczZiwgLTAuMDU2NTAzM2YsIDAuMDYz
NzM5NGYsIDAuMDA1MTIxM2YsCiswLjAyMjEzNjFmLCAwLjAwODE5OTYyZiwgLTAuMDQ2NzA2MWYs
IC0wLjA1NDgyNThmLCAtMC4wMDMxNDA2M2YsCistMS4xODMzMmYsIDEuODgwOTFmLCAtMC40MTE0
OGYsIC0yLjk1NzI3ZiwgLTAuNTIxNDQ5ZiwKKy0wLjI3MTY0MWYsIDAuMTI0OTQ2ZiwgLTAuMDUz
MjkzNmYsIDAuMTAxNTE1ZiwgMC4wMDAyMDg1NjRmLAorLTAuMDQ4ODc0OGYsIDAuMDY0MjM4OGYs
IC0wLjAzODM4NDhmLCAwLjAxMzUwNDZmLCAtMC4wNDEzNTkyZiwKKy0wLjAzMjY0MDJmLCAtMC4w
MTM3NDIxZiwgLTAuMDIyNTIxOWYsIC0wLjA5MTcyOTRmLCAtMC4yNzc3NTlmLAorLTAuMTg1NDE4
ZiwgMC4wNDcxMTI4ZiwgLTAuMTI1ODc5ZiwgMC4yNjI0NjdmLCAtMC4yMTI3OTRmLAorLTAuMTEy
OTMxZiwgLTEuOTk4ODVmLCAtMC40MDQ3ODdmLCAwLjIyNDQwMmYsIDAuNjM3OTYyZiwKKy0wLjI3
ODA4ZiwgLTAuMDcyMzk1M2YsIC0wLjA1Mzc2NTVmLCAtMC4wMzM2MzU5ZiwgLTAuMDkwNjYwMWYs
CistMC4wNjQxMzA5ZiwgLTAuMDcxMzU0MmYsIDAuMDUyNDMxN2YsIDAuMDA2MDg4MTlmLCAwLjA3
NTQxMDFmLAorLTAuMDQ4ODQwMWYsIC0wLjAwNjcxODY1ZiwgMC4wNDE4MjM5ZiwgMC4wNTM2Mjg0
ZiwgLTAuMTMyNjM5ZiwKKzAuMDI2NzY0OGYsIC0wLjI0ODQzMmYsIC0wLjAxMDQxNTNmLCAwLjAz
NTU0NGYsIC0wLjIxMjc1M2YsCistMC4zMDI4OTVmLCAtMC4wMzU3ODU0ZiwgMC4zNzY4MzhmLCAw
LjU5NzAyNWYsIC0wLjY2NDY0N2YsCiswLjI2ODQyMmYsIC0wLjM3Njc3MmYsIC0xLjA1NDcyZiwg
MC4wMTQ0MTc4ZiwgMC4xNzkxMjJmLAorMC4wMzYwMTU1ZiwgMC4yMjAyNjJmLCAtMC4wMDU2Mzgx
ZiwgMC4wMzE3MTk3ZiwgMC4wNjIxMDY2ZiwKKy0wLjAwNzc5Mjk4ZiwgMC4wMDc4OTM3OGYsIDAu
MDAzNTA2MDVmLCAwLjAxMDQ4MDlmLCAwLjAzNjI4NzFmLAorLTAuMTU3NzA4ZiwgLTAuMDY1OTc3
OWYsIC0wLjA5MjYyNzhmLCAwLjAwNzcwNzkxZiwgMC4wNjMxNjIxZiwKKzAuMDgxNzM0M2YsIC0w
LjQyNDI5NWYsIC0wLjA0Mzc3MjdmLCAtMC4yNDI1MWYsIDAuNzExMjE3ZiwKKy0wLjczNjQ1NWYs
IC0yLjE5NGYsIC0wLjEwNzYxMmYsIC0wLjE3NTE1NmYsIC0wLjAzNjY1NzNmLAorLTAuMDEyMzE1
NmYsIC0wLjA2Mjg1MTZmLCAtMC4wMjE4OTc3ZiwgLTAuMDA2OTM2OTlmLCAwLjAwNjk1MTg1ZiwK
KzAuMDA1MDczNjJmLCAwLjAwMzU5MzM0ZiwgMC4wMDUyNjYxZiwgMC4wMzU1NjFmLCAwLjAzODI3
MDFmLAorMC4wMzQyMTc5ZiwgLTAuMDA3OTAyNzFmLCAtMC4wMTcwOTI1ZiwgMC4wNDcwMjlmLCAw
LjAxOTczNjJmLAorLTAuMDE1MzQzNWYsIDAuMDY0NDE1MmYsIC0wLjM2ODYyZiwgLTAuMDY3NDg3
NmYsIC0yLjgyNjcyZiwKKzEuMzQxMjJmLCAtMC4wNzg4MDI5ZiwgLTMuNDc3OTJmLCAwLjUwNzI0
NmYsIC0wLjgxNjM3OGYsCistMC4wMTQyMzgzZiwgLTAuMTI3MzQ5ZiwgLTAuMTA2OTI2ZiwgLTAu
MDM1OTUyNGYsIDAuMTA1MDQ1ZiwKKzAuMjkxNTU0ZiwgMC4xOTU0MTNmLCAwLjA4NjYyMTRmLCAt
MC4wNjY1NzdmLCAtMC4xMDIxODhmLAorMC4wOTc5NDY2ZiwgLTAuMTI5ODJmLCAwLjQwMDE4MWYs
IC0wLjQwOTMzNmYsIC0wLjA1OTMzMjZmLAorLTAuMDY1NjIwM2YsIC0wLjIwNDQ3NGYsIDAuMTc5
ODAyZiwgMC4wMDA1MDkwODRmLCAwLjA5OTU5NTRmLAorLTIuMzc3ZiwgLTAuNjg2MzU5ZiwgMC45
MzQ4NjFmLCAxLjEwMjYxZiwgMS4zOTAxZiwKKy00LjMzNjE2ZiwgLTAuMDAyNjQwMTdmLCAwLjAw
NzEzMDQ1ZiwgMC4xMDYyNjRmLCAwLjE0MzcyNmYsCistMC4wNjg1MzA1ZiwgLTAuMDU0NjU2Ziwg
LTAuMDE3NjcyNWYsIC0wLjA3NzI2NjlmLCAtMC4wMjY0NTI2ZiwKKy0wLjAxMDM4MjRmLCAtMC4w
MjY5ODcyZiwgLTAuMDA2ODdmLCAwLjIyNTgwNGYsIDAuNDA3NzUxZiwKKy0wLjA2MTI2MTFmLCAt
MC4wNTc2ODYzZiwgLTAuMTgwMTMxZiwgLTAuMjIyNzcyZiwgLTAuNDYxNzQyZiwKKzAuMzM1MjM2
ZiwgMS4wMzM5OWYsIDQuMjQxMTJmLCAtMC4zNDU3OTZmLCAtMC41OTQ1NDlmLAorLTc2LjE0MDdm
LCAtMC4yNjUyNzZmLCAwLjA1MDc3MTlmLCAwLjA2NDMwNDRmLCAwLjAzODQ4MzJmLAorMC4wNDI0
NDU5ZiwgLTAuMDM4NzgxN2YsIC0wLjAyMzU5OTZmLCAtMC4wNzQwNTU2ZiwgLTAuMDI3MDAyOWYs
CiswLjAwODgyMTc3ZiwgLTAuMDU1MjM3MWYsIC0wLjAwNDg1ODUxZiwgMC4zMTQyOTVmLCAwLjM2
MDQzMWYsCistMC4wNzg3MDg1ZiwgMC4xMTAzNTVmLCAtMC40MTU5NThmLCAtMC4zODUwODhmLCAt
MC4yNzIyMjRmLAorLTEuNTUxMDhmLCAtMC4xNDE4NDhmLCAwLjQ0ODg3N2YsIC0wLjU2MzQ0N2Ys
IC0yLjMxNDAzZiwKKy0wLjEyMDA3N2YsIC0xLjQ5OTE4ZiwgLTAuODE3NzI2ZiwgLTAuMDQ5NTg1
NGYsIC0wLjAyMzA3ODJmLAorLTAuMDIyNDAxNGYsIDAuMTE3MDc2ZiwgMC4wMzkzMjE2ZiwgMC4w
NTE5OTdmLCAwLjAzMzA3NjNmLAorLTAuMTEwNzk2ZiwgMC4wMjExMTE3ZiwgLTAuMDE5NzI1OGYs
IDAuMDE4NzQ2MWYsIDAuMDEyNTE4M2YsCiswLjE0ODc2ZiwgMC4wOTIwNTY1ZiwgLTAuMzQyNDc1
ZiwgMC4xMzUyNzJmLCAtMC4xNjgxNTVmLAorLTAuMDMzNDIzZiwgLTAuMDYwNDYxMWYsIC0wLjEy
ODgzNWYsIDAuNjY0OTQ3ZiwgLTAuMTQ0OTk3ZiwKKzIuMjc2NDlmLCAxLjI4NjYzZiwgMC44NDEy
MTdmLCAtMi40MjgwN2YsIDAuMDIzMDQ3MWYsCiswLjIyNjcwOWYsIC0wLjAzNzQ4MDNmLCAwLjE1
NTQzNmYsIDAuMDQwMDM0MmYsIC0wLjE4NDY4NmYsCiswLjEyODQ4OGYsIC0wLjA5Mzk1MThmLCAt
MC4wNTc4NTU5ZiwgMC4wMjY1OTY3ZiwgLTAuMDk5OTMyMmYsCistMC4wMzIyNzY4ZiwgLTAuMzIy
OTk0ZiwgLTAuMTg5MzcxZiwgLTAuNzM4MDY5ZiwgLTAuMDc1NDkxNGYsCiswLjIxNDcxN2YsIC0w
LjA5MzcyOGYsIC0wLjY5NTc0MWYsIDAuMDg5OTI5OGYsIC0yLjA2MTg4ZiwKKy0wLjI3MzcxOWYs
IC0wLjg5Njk3N2YsIDAuMTMwNTUzZiwgMC4xMzQ2MzhmLCAxLjI5MzU1ZiwKKzAuMDA1MjA3NDlm
LCAtMC4wMzI0MjI0ZiwgMC4wMDUzMDQ1MWYsIDAuMDE5MjM4NWYsIDAuMDAzMjg3MDhmLAorMC4w
MjUwODM4ZiwgMC4wMDUzMzY1ZiwgLTAuMDE3NzMyMWYsIDAuMDA2MTg3ODlmLCAwLjAwNTI1MzY0
ZiwKKzAuMDAxMDQ1OTZmLCAtMC4wMzYwNDU5ZiwgMC4wNDAyNDAzZiwgLTAuMDQwNjM1MWYsIDAu
MDEzNjg4M2YsCiswLjA4ODA3MjJmLCAtMC4wMTk3NDQ5ZiwgMC4wODk5MzhmLCAwLjAxMDA0NTZm
LCAtMC4wNDc1NjM4ZiwKKy0wLjczMjY3ZiwgMC4wMzc0MzNmLCAtMC4xNDY1NTFmLCAtMC4yMzAy
MjFmLCAtMy4wNjQ4OWYsCistMS40MDE5NGYsIDAuMDE5ODQ4M2YsIDAuMDM5Nzk1M2YsIC0wLjAx
OTAyMzlmLCAwLjA0NzA3MTVmLAorLTAuMTMxMzYzZiwgLTAuMTkxNzIxZiwgLTAuMDE3NjIyNGYs
IC0wLjA0ODAzNTJmLCAtMC4yMjE3OTlmLAorLTAuMjY3OTRmLCAtMC4wMjkyNjE1ZiwgMC4wNjEy
MTI3ZiwgLTAuMTI5ODc3ZiwgMC4wMDYyODMzMmYsCistMC4wODU5MThmLCAwLjAxNzUzNzlmLCAw
LjA1NDEwMTFmLCAtMC4wODEwODc0ZiwgLTAuMzgwODA5ZiwKKy0wLjIyMjA1NmYsIC0wLjUwODg1
OWYsIC0wLjQ3MzM2OWYsIDAuNDg0OTU4ZiwgLTIuMjg0MTFmLAorMC4wMTM5NTE2ZiwKIC8qIG91
dHB1dCBsYXllciAqLwotLTAuMzgxNDM5ZiwgMC4xMjExNWYsIC0wLjkwNjkyN2YsIDIuOTM4Nzhm
LCAxLjYzODhmLAotMC44ODI4MTFmLCAwLjg3NDM0NGYsIDEuMjE3MjZmLCAtMC44NzQ1NDVmLCAw
LjMyMTcwNmYsCi0wLjc4NTA1NWYsIDAuOTQ2NTU4ZiwgLTAuNTc1MDY2ZiwgLTMuNDY1NTNmLCAw
Ljg4NDkwNWYsCi0wLjA5MjQwNDdmLCAtOS45MDcxMmYsIDAuMzkxMzM4ZiwgMC4xNjAxMDNmLCAt
Mi4wNDk1NGYsCi00LjE0NTVmLCAwLjA2ODQwMjlmLCAtMC4xNDQ3NjFmLCAtMC4yODUyODJmLCAw
LjM3OTI0NGYsCi0tMS4xNTg0ZiwgLTAuMDI3NzI0MWYsIC05Ljg1ZiwgLTQuODIzODZmLCAzLjcx
MzMzZiwKLTMuODczMDhmLCAzLjUyNTU4Zn07CiszLjkwMDE3ZiwgMS43MTc4OWYsIC0xLjQzMzcy
ZiwgLTIuNzA4MzlmLCAxLjc3MTA3ZiwKKzUuNDgwMDZmLCAxLjQ0NjYxZiwgMi4wMTEzNGYsIC0x
Ljg4MzgzZiwgLTMuNjQ5NThmLAorLTEuMjYzNTFmLCAwLjc3OTQyMWYsIDIuMTEzNTdmLCAzLjEw
NDA5ZiwgMS42ODg0NmYsCistNC40NjE5N2YsIC0xLjYxNDU1ZiwgMy41OTgzMmYsIDIuNDM1MzFm
LCAtMS4yNjQ1OGYsCiswLjQxNzk0MWYsIDEuNDc0MzdmLCAyLjE2NjM1ZiwgLTEuOTA5ZiwgLTAu
ODI4ODY5ZiwKKzEuMzg4MDVmLCAtMi42Nzk3NWYsIC0wLjExMDA0NGYsIDEuOTU1OTZmLCAwLjY5
NzkzMWYsCistMC4zMTMyMjZmLCAtMC44ODkzMTVmLCAwLjI4MzIzNmYsIDAuOTQ2MTAyZiwgfTsK
IAotc3RhdGljIGNvbnN0IGludCB0b3BvWzNdID0gezI1LCAxNSwgMn07CitzdGF0aWMgY29uc3Qg
aW50IHRvcG9bM10gPSB7MjUsIDE2LCAyfTsKIAogY29uc3QgTUxQIG5ldCA9IHsKICAgICAzLApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zcmMvbWxwX3RyYWluLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9tbHBfdHJhaW4uYwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44
ZDlkMTI3YTZkYmJiNGU1OTZlOWZkMjhiNWMxYWIxYWM1MzA3ZjE5Ci0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zcmMvbWxwX3RyYWluLmMKQEAgLTAsMCArMSw1MDEgQEAKKy8qIENvcHlyaWdodCAoYykgMjAw
OC0yMDExIE9jdGFzaWMgSW5jLgorICAgV3JpdHRlbiBieSBKZWFuLU1hcmMgVmFsaW4gKi8KKy8q
CisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKworICAgLSBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
CisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAgIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEZP
VU5EQVRJT04gT1IKKyAgIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
CisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworICAgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyovCisKKworI2luY2x1ZGUgIm1scF90cmFpbi5oIgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2lu
Y2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c2VtYXBob3Jl
Lmg+CisjaW5jbHVkZSA8cHRocmVhZC5oPgorI2luY2x1ZGUgPHRpbWUuaD4KKyNpbmNsdWRlIDxz
aWduYWwuaD4KKworaW50IHN0b3BwZWQgPSAwOworCit2b2lkIGhhbmRsZXIoaW50IHNpZykKK3sK
KyAgICBzdG9wcGVkID0gMTsKKyAgICBzaWduYWwoc2lnLCBoYW5kbGVyKTsKK30KKworTUxQVHJh
aW4gKiBtbHBfaW5pdChpbnQgKnRvcG8sIGludCBuYkxheWVycywgZmxvYXQgKmlucHV0cywgZmxv
YXQgKm91dHB1dHMsIGludCBuYlNhbXBsZXMpCit7CisgICAgaW50IGksIGosIGs7CisgICAgTUxQ
VHJhaW4gKm5ldDsKKyAgICBpbnQgaW5EaW0sIG91dERpbTsKKyAgICBuZXQgPSBtYWxsb2Moc2l6
ZW9mKCpuZXQpKTsKKyAgICBuZXQtPnRvcG8gPSBtYWxsb2MobmJMYXllcnMqc2l6ZW9mKG5ldC0+
dG9wb1swXSkpOworICAgIGZvciAoaT0wO2k8bmJMYXllcnM7aSsrKQorICAgICAgICBuZXQtPnRv
cG9baV0gPSB0b3BvW2ldOworICAgIGluRGltID0gdG9wb1swXTsKKyAgICBvdXREaW0gPSB0b3Bv
W25iTGF5ZXJzLTFdOworICAgIG5ldC0+aW5fcmF0ZSA9IG1hbGxvYygoaW5EaW0rMSkqc2l6ZW9m
KG5ldC0+aW5fcmF0ZVswXSkpOworICAgIG5ldC0+d2VpZ2h0cyA9IG1hbGxvYygobmJMYXllcnMt
MSkqc2l6ZW9mKG5ldC0+d2VpZ2h0cykpOworICAgIG5ldC0+YmVzdF93ZWlnaHRzID0gbWFsbG9j
KChuYkxheWVycy0xKSpzaXplb2YobmV0LT53ZWlnaHRzKSk7CisgICAgZm9yIChpPTA7aTxuYkxh
eWVycy0xO2krKykKKyAgICB7CisgICAgICAgIG5ldC0+d2VpZ2h0c1tpXSA9IG1hbGxvYygodG9w
b1tpXSsxKSp0b3BvW2krMV0qc2l6ZW9mKG5ldC0+d2VpZ2h0c1swXVswXSkpOworICAgICAgICBu
ZXQtPmJlc3Rfd2VpZ2h0c1tpXSA9IG1hbGxvYygodG9wb1tpXSsxKSp0b3BvW2krMV0qc2l6ZW9m
KG5ldC0+d2VpZ2h0c1swXVswXSkpOworICAgIH0KKyAgICBkb3VibGUgaW5NZWFuW2luRGltXTsK
KyAgICBmb3IgKGo9MDtqPGluRGltO2orKykKKyAgICB7CisgICAgICAgIGRvdWJsZSBzdGQ9MDsK
KyAgICAgICAgaW5NZWFuW2pdID0gMDsKKyAgICAgICAgZm9yIChpPTA7aTxuYlNhbXBsZXM7aSsr
KQorICAgICAgICB7CisgICAgICAgICAgICBpbk1lYW5bal0gKz0gaW5wdXRzW2kqaW5EaW0ral07
CisgICAgICAgICAgICBzdGQgKz0gaW5wdXRzW2kqaW5EaW0ral0qaW5wdXRzW2kqaW5EaW0ral07
CisgICAgICAgIH0KKyAgICAgICAgaW5NZWFuW2pdIC89IG5iU2FtcGxlczsKKyAgICAgICAgc3Rk
IC89IG5iU2FtcGxlczsKKyAgICAgICAgbmV0LT5pbl9yYXRlWzEral0gPSAuNS8oLjAwMDErc3Rk
KTsKKyAgICAgICAgc3RkID0gc3RkLWluTWVhbltqXSppbk1lYW5bal07CisgICAgICAgIGlmIChz
dGQ8LjAwMSkKKyAgICAgICAgICAgIHN0ZCA9IC4wMDE7CisgICAgICAgIHN0ZCA9IDEvc3FydChp
bkRpbSpzdGQpOworICAgICAgICBmb3IgKGs9MDtrPHRvcG9bMV07aysrKQorICAgICAgICAgICAg
bmV0LT53ZWlnaHRzWzBdW2sqKHRvcG9bMF0rMSkraisxXSA9IHJhbmRuKHN0ZCk7CisgICAgfQor
ICAgIG5ldC0+aW5fcmF0ZVswXSA9IDE7CisgICAgZm9yIChqPTA7ajx0b3BvWzFdO2orKykKKyAg
ICB7CisgICAgICAgIGRvdWJsZSBzdW0gPSAwOworICAgICAgICBmb3IgKGs9MDtrPGluRGltO2sr
KykKKyAgICAgICAgICAgIHN1bSArPSBpbk1lYW5ba10qbmV0LT53ZWlnaHRzWzBdW2oqKHRvcG9b
MF0rMSkraysxXTsKKyAgICAgICAgbmV0LT53ZWlnaHRzWzBdW2oqKHRvcG9bMF0rMSldID0gLXN1
bTsKKyAgICB9CisgICAgZm9yIChqPTA7ajxvdXREaW07aisrKQorICAgIHsKKyAgICAgICAgZG91
YmxlIG1lYW4gPSAwOworICAgICAgICBkb3VibGUgc3RkOworICAgICAgICBmb3IgKGk9MDtpPG5i
U2FtcGxlcztpKyspCisgICAgICAgICAgICBtZWFuICs9IG91dHB1dHNbaSpvdXREaW0ral07Cisg
ICAgICAgIG1lYW4gLz0gbmJTYW1wbGVzOworICAgICAgICBzdGQgPSAxL3NxcnQodG9wb1tuYkxh
eWVycy0yXSk7CisgICAgICAgIG5ldC0+d2VpZ2h0c1tuYkxheWVycy0yXVtqKih0b3BvW25iTGF5
ZXJzLTJdKzEpXSA9IG1lYW47CisgICAgICAgIGZvciAoaz0wO2s8dG9wb1tuYkxheWVycy0yXTtr
KyspCisgICAgICAgICAgICBuZXQtPndlaWdodHNbbmJMYXllcnMtMl1baioodG9wb1tuYkxheWVy
cy0yXSsxKStrKzFdID0gcmFuZG4oc3RkKTsKKyAgICB9CisgICAgcmV0dXJuIG5ldDsKK30KKwor
I2RlZmluZSBNQVhfTkVVUk9OUyAxMDAKKyNkZWZpbmUgTUFYX09VVCAxMAorCitkb3VibGUgY29t
cHV0ZV9ncmFkaWVudChNTFBUcmFpbiAqbmV0LCBmbG9hdCAqaW5wdXRzLCBmbG9hdCAqb3V0cHV0
cywgaW50IG5iU2FtcGxlcywgZG91YmxlICpXMF9ncmFkLCBkb3VibGUgKlcxX2dyYWQsIGRvdWJs
ZSAqZXJyb3JfcmF0ZSkKK3sKKyAgICBpbnQgaSxqOworICAgIGludCBzOworICAgIGludCBpbkRp
bSwgb3V0RGltLCBoaWRkZW5EaW07CisgICAgaW50ICp0b3BvOworICAgIGRvdWJsZSAqVzAsICpX
MTsKKyAgICBkb3VibGUgcm1zPTA7CisgICAgaW50IFcwX3NpemUsIFcxX3NpemU7CisgICAgZG91
YmxlIGhpZGRlbltNQVhfTkVVUk9OU107CisgICAgZG91YmxlIG5ldE91dFtNQVhfTkVVUk9OU107
CisgICAgZG91YmxlIGVycm9yW01BWF9ORVVST05TXTsKKworICAgIHRvcG8gPSBuZXQtPnRvcG87
CisgICAgaW5EaW0gPSBuZXQtPnRvcG9bMF07CisgICAgaGlkZGVuRGltID0gbmV0LT50b3BvWzFd
OworICAgIG91dERpbSA9IG5ldC0+dG9wb1syXTsKKyAgICBXMF9zaXplID0gKHRvcG9bMF0rMSkq
dG9wb1sxXTsKKyAgICBXMV9zaXplID0gKHRvcG9bMV0rMSkqdG9wb1syXTsKKyAgICBXMCA9IG5l
dC0+d2VpZ2h0c1swXTsKKyAgICBXMSA9IG5ldC0+d2VpZ2h0c1sxXTsKKyAgICBtZW1zZXQoVzBf
Z3JhZCwgMCwgVzBfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgbWVtc2V0KFcxX2dyYWQsIDAs
IFcxX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIGZvciAoaT0wO2k8b3V0RGltO2krKykKKyAg
ICAgICAgbmV0T3V0W2ldID0gb3V0cHV0c1tpXTsKKyAgICBmb3IgKGk9MDtpPG91dERpbTtpKysp
CisgICAgICAgIGVycm9yX3JhdGVbaV0gPSAwOworICAgIGZvciAocz0wO3M8bmJTYW1wbGVzO3Mr
KykKKyAgICB7CisgICAgICAgIGZsb2F0ICppbiwgKm91dDsKKyAgICAgICAgZmxvYXQgaW5wW2lu
RGltXTsKKyAgICAgICAgaW4gPSBpbnB1dHMrcyppbkRpbTsKKyAgICAgICAgb3V0ID0gb3V0cHV0
cyArIHMqb3V0RGltOworICAgICAgICBmb3IgKGo9MDtqPGluRGltO2orKykKKyAgICAgICAgICAg
aW5wW2pdID0gaW5bal07CisgICAgICAgIGZvciAoaT0wO2k8aGlkZGVuRGltO2krKykKKyAgICAg
ICAgeworICAgICAgICAgICAgZG91YmxlIHN1bSA9IFcwW2kqKGluRGltKzEpXTsKKyAgICAgICAg
ICAgIGZvciAoaj0wO2o8aW5EaW07aisrKQorICAgICAgICAgICAgICAgIHN1bSArPSBXMFtpKihp
bkRpbSsxKStqKzFdKmlucFtqXTsKKyAgICAgICAgICAgIGhpZGRlbltpXSA9IHRhbnNpZ19hcHBy
b3goc3VtKTsKKyAgICAgICAgfQorICAgICAgICBmb3IgKGk9MDtpPG91dERpbTtpKyspCisgICAg
ICAgIHsKKyAgICAgICAgICAgIGRvdWJsZSBzdW0gPSBXMVtpKihoaWRkZW5EaW0rMSldOworICAg
ICAgICAgICAgZm9yIChqPTA7ajxoaWRkZW5EaW07aisrKQorICAgICAgICAgICAgICAgIHN1bSAr
PSBXMVtpKihoaWRkZW5EaW0rMSkraisxXSpoaWRkZW5bal07CisgICAgICAgICAgICBuZXRPdXRb
aV0gPSB0YW5zaWdfYXBwcm94KHN1bSk7CisgICAgICAgICAgICBlcnJvcltpXSA9IG91dFtpXSAt
IG5ldE91dFtpXTsKKyAgICAgICAgICAgIGlmIChvdXRbaV0gPT0gMCkgZXJyb3JbaV0gKj0gLjA7
CisgICAgICAgICAgICBlcnJvcl9yYXRlW2ldICs9IGZhYnMoZXJyb3JbaV0pPjE7CisgICAgICAg
ICAgICBpZiAoaT09MCkgZXJyb3JbaV0gKj0gNTsKKyAgICAgICAgICAgIHJtcyArPSBlcnJvcltp
XSplcnJvcltpXTsKKyAgICAgICAgICAgIC8qZXJyb3JbaV0gPSBlcnJvcltpXS8oMStmYWJzKGVy
cm9yW2ldKSk7Ki8KKyAgICAgICAgfQorICAgICAgICAvKiBCYWNrLXByb3BhZ2F0ZSBlcnJvciAq
LworICAgICAgICBmb3IgKGk9MDtpPG91dERpbTtpKyspCisgICAgICAgIHsKKyAgICAgICAgICAg
IGRvdWJsZSBncmFkID0gMS1uZXRPdXRbaV0qbmV0T3V0W2ldOworICAgICAgICAgICAgVzFfZ3Jh
ZFtpKihoaWRkZW5EaW0rMSldICs9IGVycm9yW2ldKmdyYWQ7CisgICAgICAgICAgICBmb3IgKGo9
MDtqPGhpZGRlbkRpbTtqKyspCisgICAgICAgICAgICAgICAgVzFfZ3JhZFtpKihoaWRkZW5EaW0r
MSkraisxXSArPSBncmFkKmVycm9yW2ldKmhpZGRlbltqXTsKKyAgICAgICAgfQorICAgICAgICBm
b3IgKGk9MDtpPGhpZGRlbkRpbTtpKyspCisgICAgICAgIHsKKyAgICAgICAgICAgIGRvdWJsZSBn
cmFkOworICAgICAgICAgICAgZ3JhZCA9IDA7CisgICAgICAgICAgICBmb3IgKGo9MDtqPG91dERp
bTtqKyspCisgICAgICAgICAgICAgICAgZ3JhZCArPSBlcnJvcltqXSpXMVtqKihoaWRkZW5EaW0r
MSkraSsxXTsKKyAgICAgICAgICAgIGdyYWQgKj0gMS1oaWRkZW5baV0qaGlkZGVuW2ldOworICAg
ICAgICAgICAgVzBfZ3JhZFtpKihpbkRpbSsxKV0gKz0gZ3JhZDsKKyAgICAgICAgICAgIGZvciAo
aj0wO2o8aW5EaW07aisrKQorICAgICAgICAgICAgICAgIFcwX2dyYWRbaSooaW5EaW0rMSkraisx
XSArPSBncmFkKmlucFtqXTsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gcm1zOworfQor
CisjZGVmaW5lIE5CX1RIUkVBRFMgOAorCitzZW1fdCBzZW1fYmVnaW5bTkJfVEhSRUFEU107Citz
ZW1fdCBzZW1fZW5kW05CX1RIUkVBRFNdOworCitzdHJ1Y3QgR3JhZGllbnRBcmcgeworICAgIGlu
dCBpZDsKKyAgICBpbnQgZG9uZTsKKyAgICBNTFBUcmFpbiAqbmV0OworICAgIGZsb2F0ICppbnB1
dHM7CisgICAgZmxvYXQgKm91dHB1dHM7CisgICAgaW50IG5iU2FtcGxlczsKKyAgICBkb3VibGUg
KlcwX2dyYWQ7CisgICAgZG91YmxlICpXMV9ncmFkOworICAgIGRvdWJsZSBybXM7CisgICAgZG91
YmxlIGVycm9yX3JhdGVbTUFYX09VVF07Cit9OworCit2b2lkICpncmFkaWVudF90aHJlYWRfcHJv
Y2Vzcyh2b2lkICpfYXJnKQoreworICAgIGludCBXMF9zaXplLCBXMV9zaXplOworICAgIHN0cnVj
dCBHcmFkaWVudEFyZyAqYXJnID0gX2FyZzsKKyAgICBpbnQgKnRvcG8gPSBhcmctPm5ldC0+dG9w
bzsKKyAgICBXMF9zaXplID0gKHRvcG9bMF0rMSkqdG9wb1sxXTsKKyAgICBXMV9zaXplID0gKHRv
cG9bMV0rMSkqdG9wb1syXTsKKyAgICBkb3VibGUgVzBfZ3JhZFtXMF9zaXplXTsKKyAgICBkb3Vi
bGUgVzFfZ3JhZFtXMV9zaXplXTsKKyAgICBhcmctPlcwX2dyYWQgPSBXMF9ncmFkOworICAgIGFy
Zy0+VzFfZ3JhZCA9IFcxX2dyYWQ7CisgICAgd2hpbGUgKDEpCisgICAgeworICAgICAgICBzZW1f
d2FpdCgmc2VtX2JlZ2luW2FyZy0+aWRdKTsKKyAgICAgICAgaWYgKGFyZy0+ZG9uZSkKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBhcmctPnJtcyA9IGNvbXB1dGVfZ3JhZGllbnQoYXJnLT5u
ZXQsIGFyZy0+aW5wdXRzLCBhcmctPm91dHB1dHMsIGFyZy0+bmJTYW1wbGVzLCBhcmctPlcwX2dy
YWQsIGFyZy0+VzFfZ3JhZCwgYXJnLT5lcnJvcl9yYXRlKTsKKyAgICAgICAgc2VtX3Bvc3QoJnNl
bV9lbmRbYXJnLT5pZF0pOworICAgIH0KKyAgICBmcHJpbnRmKHN0ZGVyciwgImRvbmVcbiIpOwor
ICAgIHJldHVybiBOVUxMOworfQorCitmbG9hdCBtbHBfdHJhaW5fYmFja3Byb3AoTUxQVHJhaW4g
Km5ldCwgZmxvYXQgKmlucHV0cywgZmxvYXQgKm91dHB1dHMsIGludCBuYlNhbXBsZXMsIGludCBu
YkVwb2NoLCBmbG9hdCByYXRlKQoreworICAgIGludCBpLCBqOworICAgIGludCBlOworICAgIGZs
b2F0IGJlc3Rfcm1zID0gMWUxMDsKKyAgICBpbnQgaW5EaW0sIG91dERpbSwgaGlkZGVuRGltOwor
ICAgIGludCAqdG9wbzsKKyAgICBkb3VibGUgKlcwLCAqVzEsICpiZXN0X1cwLCAqYmVzdF9XMTsK
KyAgICBkb3VibGUgKlcwX2dyYWQsICpXMV9ncmFkOworICAgIGRvdWJsZSAqVzBfb2xkZ3JhZCwg
KlcxX29sZGdyYWQ7CisgICAgZG91YmxlICpXMF9yYXRlLCAqVzFfcmF0ZTsKKyAgICBkb3VibGUg
KmJlc3RfVzBfcmF0ZSwgKmJlc3RfVzFfcmF0ZTsKKyAgICBpbnQgVzBfc2l6ZSwgVzFfc2l6ZTsK
KyAgICB0b3BvID0gbmV0LT50b3BvOworICAgIFcwX3NpemUgPSAodG9wb1swXSsxKSp0b3BvWzFd
OworICAgIFcxX3NpemUgPSAodG9wb1sxXSsxKSp0b3BvWzJdOworICAgIHN0cnVjdCBHcmFkaWVu
dEFyZyBhcmdzW05CX1RIUkVBRFNdOworICAgIHB0aHJlYWRfdCB0aHJlYWRbTkJfVEhSRUFEU107
CisgICAgaW50IHNhbXBsZVBlclBhcnQgPSBuYlNhbXBsZXMvTkJfVEhSRUFEUzsKKyAgICBpbnQg
Y291bnRfd29yc2U9MDsKKyAgICBpbnQgY291bnRfcmV0cmllcz0wOworCisgICAgdG9wbyA9IG5l
dC0+dG9wbzsKKyAgICBpbkRpbSA9IG5ldC0+dG9wb1swXTsKKyAgICBoaWRkZW5EaW0gPSBuZXQt
PnRvcG9bMV07CisgICAgb3V0RGltID0gbmV0LT50b3BvWzJdOworICAgIFcwID0gbmV0LT53ZWln
aHRzWzBdOworICAgIFcxID0gbmV0LT53ZWlnaHRzWzFdOworICAgIGJlc3RfVzAgPSBuZXQtPmJl
c3Rfd2VpZ2h0c1swXTsKKyAgICBiZXN0X1cxID0gbmV0LT5iZXN0X3dlaWdodHNbMV07CisgICAg
VzBfZ3JhZCA9IG1hbGxvYyhXMF9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBXMV9ncmFkID0g
bWFsbG9jKFcxX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIFcwX29sZGdyYWQgPSBtYWxsb2Mo
VzBfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgVzFfb2xkZ3JhZCA9IG1hbGxvYyhXMV9zaXpl
KnNpemVvZihkb3VibGUpKTsKKyAgICBXMF9yYXRlID0gbWFsbG9jKFcwX3NpemUqc2l6ZW9mKGRv
dWJsZSkpOworICAgIFcxX3JhdGUgPSBtYWxsb2MoVzFfc2l6ZSpzaXplb2YoZG91YmxlKSk7Cisg
ICAgYmVzdF9XMF9yYXRlID0gbWFsbG9jKFcwX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIGJl
c3RfVzFfcmF0ZSA9IG1hbGxvYyhXMV9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBtZW1zZXQo
VzBfZ3JhZCwgMCwgVzBfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgbWVtc2V0KFcwX29sZGdy
YWQsIDAsIFcwX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIG1lbXNldChXMV9ncmFkLCAwLCBX
MV9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBtZW1zZXQoVzFfb2xkZ3JhZCwgMCwgVzFfc2l6
ZSpzaXplb2YoZG91YmxlKSk7CisKKyAgICByYXRlIC89IG5iU2FtcGxlczsKKyAgICBmb3IgKGk9
MDtpPGhpZGRlbkRpbTtpKyspCisgICAgICAgIGZvciAoaj0wO2o8aW5EaW0rMTtqKyspCisgICAg
ICAgICAgICBXMF9yYXRlW2kqKGluRGltKzEpK2pdID0gcmF0ZSpuZXQtPmluX3JhdGVbal07Cisg
ICAgZm9yIChpPTA7aTxXMV9zaXplO2krKykKKyAgICAgICAgVzFfcmF0ZVtpXSA9IHJhdGU7CisK
KyAgICBmb3IgKGk9MDtpPE5CX1RIUkVBRFM7aSsrKQorICAgIHsKKyAgICAgICAgYXJnc1tpXS5u
ZXQgPSBuZXQ7CisgICAgICAgIGFyZ3NbaV0uaW5wdXRzID0gaW5wdXRzK2kqc2FtcGxlUGVyUGFy
dCppbkRpbTsKKyAgICAgICAgYXJnc1tpXS5vdXRwdXRzID0gb3V0cHV0cytpKnNhbXBsZVBlclBh
cnQqb3V0RGltOworICAgICAgICBhcmdzW2ldLm5iU2FtcGxlcyA9IHNhbXBsZVBlclBhcnQ7Cisg
ICAgICAgIGFyZ3NbaV0uaWQgPSBpOworICAgICAgICBhcmdzW2ldLmRvbmUgPSAwOworICAgICAg
ICBzZW1faW5pdCgmc2VtX2JlZ2luW2ldLCAwLCAwKTsKKyAgICAgICAgc2VtX2luaXQoJnNlbV9l
bmRbaV0sIDAsIDApOworICAgICAgICBwdGhyZWFkX2NyZWF0ZSgmdGhyZWFkW2ldLCBOVUxMLCBn
cmFkaWVudF90aHJlYWRfcHJvY2VzcywgJmFyZ3NbaV0pOworICAgIH0KKyAgICBmb3IgKGU9MDtl
PG5iRXBvY2g7ZSsrKQorICAgIHsKKyAgICAgICAgZG91YmxlIHJtcz0wOworICAgICAgICBkb3Vi
bGUgZXJyb3JfcmF0ZVsyXSA9IHswLDB9OworICAgICAgICBmb3IgKGk9MDtpPE5CX1RIUkVBRFM7
aSsrKQorICAgICAgICB7CisgICAgICAgICAgICBzZW1fcG9zdCgmc2VtX2JlZ2luW2ldKTsKKyAg
ICAgICAgfQorICAgICAgICBtZW1zZXQoVzBfZ3JhZCwgMCwgVzBfc2l6ZSpzaXplb2YoZG91Ymxl
KSk7CisgICAgICAgIG1lbXNldChXMV9ncmFkLCAwLCBXMV9zaXplKnNpemVvZihkb3VibGUpKTsK
KyAgICAgICAgZm9yIChpPTA7aTxOQl9USFJFQURTO2krKykKKyAgICAgICAgeworICAgICAgICAg
ICAgc2VtX3dhaXQoJnNlbV9lbmRbaV0pOworICAgICAgICAgICAgcm1zICs9IGFyZ3NbaV0ucm1z
OworICAgICAgICAgICAgZXJyb3JfcmF0ZVswXSArPSBhcmdzW2ldLmVycm9yX3JhdGVbMF07Cisg
ICAgICAgICAgICBlcnJvcl9yYXRlWzFdICs9IGFyZ3NbaV0uZXJyb3JfcmF0ZVsxXTsKKyAgICAg
ICAgICAgIGZvciAoaj0wO2o8VzBfc2l6ZTtqKyspCisgICAgICAgICAgICAgICAgVzBfZ3JhZFtq
XSArPSBhcmdzW2ldLlcwX2dyYWRbal07CisgICAgICAgICAgICBmb3IgKGo9MDtqPFcxX3NpemU7
aisrKQorICAgICAgICAgICAgICAgIFcxX2dyYWRbal0gKz0gYXJnc1tpXS5XMV9ncmFkW2pdOwor
ICAgICAgICB9CisKKyAgICAgICAgZmxvYXQgbWVhbl9yYXRlID0gMCwgbWluX3JhdGUgPSAxZTEw
OworICAgICAgICBybXMgPSAocm1zLyhvdXREaW0qbmJTYW1wbGVzKSk7CisgICAgICAgIGVycm9y
X3JhdGVbMF0gPSAoZXJyb3JfcmF0ZVswXS8obmJTYW1wbGVzKSk7CisgICAgICAgIGVycm9yX3Jh
dGVbMV0gPSAoZXJyb3JfcmF0ZVsxXS8obmJTYW1wbGVzKSk7CisgICAgICAgIGZwcmludGYgKHN0
ZGVyciwgIiVmICVmICglZiAlZikgIiwgZXJyb3JfcmF0ZVswXSwgZXJyb3JfcmF0ZVsxXSwgcm1z
LCBiZXN0X3Jtcyk7CisgICAgICAgIGlmIChybXMgPCBiZXN0X3JtcykKKyAgICAgICAgeworICAg
ICAgICAgICAgYmVzdF9ybXMgPSBybXM7CisgICAgICAgICAgICBmb3IgKGk9MDtpPFcwX3NpemU7
aSsrKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGJlc3RfVzBbaV0gPSBXMFtpXTsK
KyAgICAgICAgICAgICAgICBiZXN0X1cwX3JhdGVbaV0gPSBXMF9yYXRlW2ldOworICAgICAgICAg
ICAgfQorICAgICAgICAgICAgZm9yIChpPTA7aTxXMV9zaXplO2krKykKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICBiZXN0X1cxW2ldID0gVzFbaV07CisgICAgICAgICAgICAgICAgYmVz
dF9XMV9yYXRlW2ldID0gVzFfcmF0ZVtpXTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGNv
dW50X3dvcnNlPTA7CisgICAgICAgICAgICBjb3VudF9yZXRyaWVzPTA7CisgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICBjb3VudF93b3JzZSsrOworICAgICAgICAgICAgaWYgKGNvdW50X3dv
cnNlPjMwKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGNvdW50X3JldHJpZXMrKzsK
KyAgICAgICAgICAgICAgICBjb3VudF93b3JzZT0wOworICAgICAgICAgICAgICAgIGZvciAoaT0w
O2k8VzBfc2l6ZTtpKyspCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBX
MFtpXSA9IGJlc3RfVzBbaV07CisgICAgICAgICAgICAgICAgICAgIGJlc3RfVzBfcmF0ZVtpXSAq
PSAuNzsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGJlc3RfVzBfcmF0ZVtpXTwxZS0xNSkgYmVz
dF9XMF9yYXRlW2ldPTFlLTE1OworICAgICAgICAgICAgICAgICAgICBXMF9yYXRlW2ldID0gYmVz
dF9XMF9yYXRlW2ldOworICAgICAgICAgICAgICAgICAgICBXMF9ncmFkW2ldID0gMDsKKyAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZm9yIChpPTA7aTxXMV9zaXplO2krKykKKyAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIFcxW2ldID0gYmVzdF9XMVtpXTsK
KyAgICAgICAgICAgICAgICAgICAgYmVzdF9XMV9yYXRlW2ldICo9IC44OworICAgICAgICAgICAg
ICAgICAgICBpZiAoYmVzdF9XMV9yYXRlW2ldPDFlLTE1KSBiZXN0X1cxX3JhdGVbaV09MWUtMTU7
CisgICAgICAgICAgICAgICAgICAgIFcxX3JhdGVbaV0gPSBiZXN0X1cxX3JhdGVbaV07CisgICAg
ICAgICAgICAgICAgICAgIFcxX2dyYWRbaV0gPSAwOworICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBpZiAoY291bnRfcmV0cmllcz4xMCkKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBmb3IgKGk9MDtpPFcwX3NpemU7aSsrKQorICAgICAgICB7
CisgICAgICAgICAgICBpZiAoVzBfb2xkZ3JhZFtpXSpXMF9ncmFkW2ldID4gMCkKKyAgICAgICAg
ICAgICAgICBXMF9yYXRlW2ldICo9IDEuMDE7CisgICAgICAgICAgICBlbHNlIGlmIChXMF9vbGRn
cmFkW2ldKlcwX2dyYWRbaV0gPCAwKQorICAgICAgICAgICAgICAgIFcwX3JhdGVbaV0gKj0gLjk7
CisgICAgICAgICAgICBtZWFuX3JhdGUgKz0gVzBfcmF0ZVtpXTsKKyAgICAgICAgICAgIGlmIChX
MF9yYXRlW2ldIDwgbWluX3JhdGUpCisgICAgICAgICAgICAgICAgbWluX3JhdGUgPSBXMF9yYXRl
W2ldOworICAgICAgICAgICAgaWYgKFcwX3JhdGVbaV0gPCAxZS0xNSkKKyAgICAgICAgICAgICAg
ICBXMF9yYXRlW2ldID0gMWUtMTU7CisgICAgICAgICAgICAvKmlmIChXMF9yYXRlW2ldID4gLjAx
KQorICAgICAgICAgICAgICAgIFcwX3JhdGVbaV0gPSAuMDE7Ki8KKyAgICAgICAgICAgIFcwX29s
ZGdyYWRbaV0gPSBXMF9ncmFkW2ldOworICAgICAgICAgICAgVzBbaV0gKz0gVzBfZ3JhZFtpXSpX
MF9yYXRlW2ldOworICAgICAgICB9CisgICAgICAgIGZvciAoaT0wO2k8VzFfc2l6ZTtpKyspCisg
ICAgICAgIHsKKyAgICAgICAgICAgIGlmIChXMV9vbGRncmFkW2ldKlcxX2dyYWRbaV0gPiAwKQor
ICAgICAgICAgICAgICAgIFcxX3JhdGVbaV0gKj0gMS4wMTsKKyAgICAgICAgICAgIGVsc2UgaWYg
KFcxX29sZGdyYWRbaV0qVzFfZ3JhZFtpXSA8IDApCisgICAgICAgICAgICAgICAgVzFfcmF0ZVtp
XSAqPSAuOTsKKyAgICAgICAgICAgIG1lYW5fcmF0ZSArPSBXMV9yYXRlW2ldOworICAgICAgICAg
ICAgaWYgKFcxX3JhdGVbaV0gPCBtaW5fcmF0ZSkKKyAgICAgICAgICAgICAgICBtaW5fcmF0ZSA9
IFcxX3JhdGVbaV07CisgICAgICAgICAgICBpZiAoVzFfcmF0ZVtpXSA8IDFlLTE1KQorICAgICAg
ICAgICAgICAgIFcxX3JhdGVbaV0gPSAxZS0xNTsKKyAgICAgICAgICAgIFcxX29sZGdyYWRbaV0g
PSBXMV9ncmFkW2ldOworICAgICAgICAgICAgVzFbaV0gKz0gVzFfZ3JhZFtpXSpXMV9yYXRlW2ld
OworICAgICAgICB9CisgICAgICAgIG1lYW5fcmF0ZSAvPSAodG9wb1swXSsxKSp0b3BvWzFdICsg
KHRvcG9bMV0rMSkqdG9wb1syXTsKKyAgICAgICAgZnByaW50ZiAoc3RkZXJyLCAiJWcgJWQiLCBt
ZWFuX3JhdGUsIGUpOworICAgICAgICBpZiAoY291bnRfcmV0cmllcykKKyAgICAgICAgICAgIGZw
cmludGYoc3RkZXJyLCAiICVkIiwgY291bnRfcmV0cmllcyk7CisgICAgICAgIGZwcmludGYoc3Rk
ZXJyLCAiXG4iKTsKKyAgICAgICAgaWYgKHN0b3BwZWQpCisgICAgICAgICAgICBicmVhazsKKyAg
ICB9CisgICAgZm9yIChpPTA7aTxOQl9USFJFQURTO2krKykKKyAgICB7CisgICAgICAgIGFyZ3Nb
aV0uZG9uZSA9IDE7CisgICAgICAgIHNlbV9wb3N0KCZzZW1fYmVnaW5baV0pOworICAgICAgICBw
dGhyZWFkX2pvaW4odGhyZWFkW2ldLCBOVUxMKTsKKyAgICAgICAgZnByaW50ZiAoc3RkZXJyLCAi
am9pbmVkICVkXG4iLCBpKTsKKyAgICB9CisgICAgZnJlZShXMF9ncmFkKTsKKyAgICBmcmVlKFcw
X29sZGdyYWQpOworICAgIGZyZWUoVzFfZ3JhZCk7CisgICAgZnJlZShXMV9vbGRncmFkKTsKKyAg
ICBmcmVlKFcwX3JhdGUpOworICAgIGZyZWUoYmVzdF9XMF9yYXRlKTsKKyAgICBmcmVlKFcxX3Jh
dGUpOworICAgIGZyZWUoYmVzdF9XMV9yYXRlKTsKKyAgICByZXR1cm4gYmVzdF9ybXM7Cit9CisK
K2ludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKK3sKKyAgICBpbnQgaSwgajsKKyAgICBp
bnQgbmJJbnB1dHM7CisgICAgaW50IG5iT3V0cHV0czsKKyAgICBpbnQgbmJIaWRkZW47CisgICAg
aW50IG5iU2FtcGxlczsKKyAgICBpbnQgbmJFcG9jaDsKKyAgICBpbnQgbmJSZWFsSW5wdXRzOwor
ICAgIHVuc2lnbmVkIGludCBzZWVkOworICAgIGludCByZXQ7CisgICAgZmxvYXQgcm1zOworICAg
IGZsb2F0ICppbnB1dHM7CisgICAgZmxvYXQgKm91dHB1dHM7CisgICAgaWYgKGFyZ2MhPTYpCisg
ICAgeworICAgICAgICBmcHJpbnRmIChzdGRlcnIsICJ1c2FnZTogbWxwX3RyYWluIDxpbnB1dHM+
IDxoaWRkZW4+IDxvdXRwdXRzPiA8bmIgc2FtcGxlcz4gPG5iIGVwb2NoPlxuIik7CisgICAgICAg
IHJldHVybiAxOworICAgIH0KKyAgICBuYklucHV0cyA9IGF0b2koYXJndlsxXSk7CisgICAgbmJI
aWRkZW4gPSBhdG9pKGFyZ3ZbMl0pOworICAgIG5iT3V0cHV0cyA9IGF0b2koYXJndlszXSk7Cisg
ICAgbmJTYW1wbGVzID0gYXRvaShhcmd2WzRdKTsKKyAgICBuYkVwb2NoID0gYXRvaShhcmd2WzVd
KTsKKyAgICBuYlJlYWxJbnB1dHMgPSBuYklucHV0czsKKyAgICBpbnB1dHMgPSBtYWxsb2MobmJJ
bnB1dHMqbmJTYW1wbGVzKnNpemVvZigqaW5wdXRzKSk7CisgICAgb3V0cHV0cyA9IG1hbGxvYyhu
Yk91dHB1dHMqbmJTYW1wbGVzKnNpemVvZigqb3V0cHV0cykpOworCisgICAgc2VlZCA9IHRpbWUo
TlVMTCk7CisgICAgLypzZWVkID0gMTQ1MjIwOTA0MDsqLworICAgIGZwcmludGYgKHN0ZGVyciwg
IlNlZWQgaXMgJXVcbiIsIHNlZWQpOworICAgIHNyYW5kKHNlZWQpOworICAgIGJ1aWxkX3RhbnNp
Z190YWJsZSgpOworICAgIHNpZ25hbChTSUdURVJNLCBoYW5kbGVyKTsKKyAgICBzaWduYWwoU0lH
SU5ULCBoYW5kbGVyKTsKKyAgICBzaWduYWwoU0lHSFVQLCBoYW5kbGVyKTsKKyAgICBmb3IgKGk9
MDtpPG5iU2FtcGxlcztpKyspCisgICAgeworICAgICAgICBmb3IgKGo9MDtqPG5iUmVhbElucHV0
cztqKyspCisgICAgICAgICAgICByZXQgPSBzY2FuZigiICVmIiwgJmlucHV0c1tpKm5iSW5wdXRz
K2pdKTsKKyAgICAgICAgZm9yIChqPTA7ajxuYk91dHB1dHM7aisrKQorICAgICAgICAgICAgcmV0
ID0gc2NhbmYoIiAlZiIsICZvdXRwdXRzW2kqbmJPdXRwdXRzK2pdKTsKKyAgICAgICAgaWYgKGZl
b2Yoc3RkaW4pKQorICAgICAgICB7CisgICAgICAgICAgICBuYlNhbXBsZXMgPSBpOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisgICAgaW50IHRvcG9bM10gPSB7bmJJbnB1
dHMsIG5iSGlkZGVuLCBuYk91dHB1dHN9OworICAgIE1MUFRyYWluICpuZXQ7CisKKyAgICBmcHJp
bnRmIChzdGRlcnIsICJHb3QgJWQgc2FtcGxlc1xuIiwgbmJTYW1wbGVzKTsKKyAgICBuZXQgPSBt
bHBfaW5pdCh0b3BvLCAzLCBpbnB1dHMsIG91dHB1dHMsIG5iU2FtcGxlcyk7CisgICAgcm1zID0g
bWxwX3RyYWluX2JhY2twcm9wKG5ldCwgaW5wdXRzLCBvdXRwdXRzLCBuYlNhbXBsZXMsIG5iRXBv
Y2gsIDEpOworICAgIHByaW50ZiAoIiNpZmRlZiBIQVZFX0NPTkZJR19IXG4iKTsKKyAgICBwcmlu
dGYgKCIjaW5jbHVkZSBcImNvbmZpZy5oXCJcbiIpOworICAgIHByaW50ZiAoIiNlbmRpZlxuXG4i
KTsKKyAgICBwcmludGYgKCIjaW5jbHVkZSBcIm1scC5oXCJcblxuIik7CisgICAgcHJpbnRmICgi
LyogUk1TIGVycm9yIHdhcyAlZiwgc2VlZCB3YXMgJXUgKi9cblxuIiwgcm1zLCBzZWVkKTsKKyAg
ICBwcmludGYgKCJzdGF0aWMgY29uc3QgZmxvYXQgd2VpZ2h0c1slZF0gPSB7XG4iLCAodG9wb1sw
XSsxKSp0b3BvWzFdICsgKHRvcG9bMV0rMSkqdG9wb1syXSk7CisgICAgcHJpbnRmICgiXG4vKiBo
aWRkZW4gbGF5ZXIgKi9cbiIpOworICAgIGZvciAoaT0wO2k8KHRvcG9bMF0rMSkqdG9wb1sxXTtp
KyspCisgICAgeworICAgICAgICBwcmludGYgKCIlZ2YsIiwgbmV0LT53ZWlnaHRzWzBdW2ldKTsK
KyAgICAgICAgaWYgKGklNT09NCkKKyAgICAgICAgICAgIHByaW50ZigiXG4iKTsKKyAgICAgICAg
ZWxzZQorICAgICAgICAgICAgcHJpbnRmKCIgIik7CisgICAgfQorICAgIHByaW50ZiAoIlxuLyog
b3V0cHV0IGxheWVyICovXG4iKTsKKyAgICBmb3IgKGk9MDtpPCh0b3BvWzFdKzEpKnRvcG9bMl07
aSsrKQorICAgIHsKKyAgICAgICAgcHJpbnRmICgiJWdmLCIsIG5ldC0+d2VpZ2h0c1sxXVtpXSk7
CisgICAgICAgIGlmIChpJTU9PTQpCisgICAgICAgICAgICBwcmludGYoIlxuIik7CisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgIHByaW50ZigiICIpOworICAgIH0KKyAgICBwcmludGYgKCJ9O1xu
XG4iKTsKKyAgICBwcmludGYgKCJzdGF0aWMgY29uc3QgaW50IHRvcG9bM10gPSB7JWQsICVkLCAl
ZH07XG5cbiIsIHRvcG9bMF0sIHRvcG9bMV0sIHRvcG9bMl0pOworICAgIHByaW50ZiAoImNvbnN0
IE1MUCBuZXQgPSB7XG4iKTsKKyAgICBwcmludGYgKCIgICAgMyxcbiIpOworICAgIHByaW50ZiAo
IiAgICB0b3BvLFxuIik7CisgICAgcHJpbnRmICgiICAgIHdlaWdodHNcbn07XG4iKTsKKyAgICBy
ZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL21scF90cmFpbi5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvbWxwX3RyYWluLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNDk0MDQxNTg1YTNmOWNiNjQzMzQ4YTk5MjE0NWFiY2UwNmZlN2ViZAotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc3JjL21scF90cmFpbi5oCkBAIC0wLDAgKzEsODYgQEAKKy8qIENvcHly
aWdodCAoYykgMjAwOC0yMDExIE9jdGFzaWMgSW5jLgorICAgV3JpdHRlbiBieSBKZWFuLU1hcmMg
VmFsaW4gKi8KKy8qCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKwor
ICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IKKyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIEZPVU5EQVRJT04gT1IKKyAgIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICAgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SCisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworICAgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTCisgICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyovCisKKyNpZm5kZWYgX01MUF9UUkFJTl9IXworI2RlZmluZSBfTUxQX1RS
QUlOX0hfCisKKyNpbmNsdWRlIDxtYXRoLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKK2RvdWJs
ZSB0YW5zaWdfdGFibGVbNTAxXTsKK3N0YXRpYyBpbmxpbmUgZG91YmxlIHRhbnNpZ19kb3VibGUo
ZG91YmxlIHgpCit7CisgICAgcmV0dXJuIDIuLygxLitleHAoLTIuKngpKSAtIDEuOworfQorc3Rh
dGljIGlubGluZSB2b2lkIGJ1aWxkX3RhbnNpZ190YWJsZSh2b2lkKQoreworICAgIGludCBpOwor
ICAgIGZvciAoaT0wO2k8NTAxO2krKykKKyAgICAgICAgdGFuc2lnX3RhYmxlW2ldID0gdGFuc2ln
X2RvdWJsZSguMDQqKGktMjUwKSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgZG91YmxlIHRhbnNpZ19h
cHByb3goZG91YmxlIHgpCit7CisgICAgaW50IGk7CisgICAgZG91YmxlIHksIGR5OworICAgIGlm
ICh4Pj0xMCkKKyAgICAgICAgcmV0dXJuIDE7CisgICAgaWYgKHg8PS0xMCkKKyAgICAgICAgcmV0
dXJuIC0xOworICAgIGkgPSBscmludCgyNSp4KTsKKyAgICB4IC09IC4wNCppOworICAgIHkgPSB0
YW5zaWdfdGFibGVbMjUwK2ldOworICAgIGR5ID0gMS15Knk7CisgICAgeSA9IHkgKyB4KmR5Kigx
IC0geSp4KTsKKyAgICByZXR1cm4geTsKK30KKworc3RhdGljIGlubGluZSBmbG9hdCByYW5kbihm
bG9hdCBzZCkKK3sKKyAgIGZsb2F0IFUxLCBVMiwgUywgeDsKKyAgIGRvIHsKKyAgICAgIFUxID0g
KChmbG9hdClyYW5kKCkpL1JBTkRfTUFYOworICAgICAgVTIgPSAoKGZsb2F0KXJhbmQoKSkvUkFO
RF9NQVg7CisgICAgICBVMSA9IDIqVTEtMTsKKyAgICAgIFUyID0gMipVMi0xOworICAgICAgUyA9
IFUxKlUxICsgVTIqVTI7CisgICB9IHdoaWxlIChTID49IDEgfHwgUyA9PSAwLjBmKTsKKyAgIHgg
PSBzZCpzcXJ0KC0yICogbG9nKFMpIC8gUykgKiBVMTsKKyAgIHJldHVybiB4OworfQorCisKK3R5
cGVkZWYgc3RydWN0IHsKKyAgICBpbnQgbGF5ZXJzOworICAgIGludCAqdG9wbzsKKyAgICBkb3Vi
bGUgKip3ZWlnaHRzOworICAgIGRvdWJsZSAqKmJlc3Rfd2VpZ2h0czsKKyAgICBkb3VibGUgKmlu
X3JhdGU7Cit9IE1MUFRyYWluOworCisKKyNlbmRpZiAvKiBfTUxQX1RSQUlOX0hfICovCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NyYy9vcHVzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzLmMKaW5kZXggZjc2ZjEyNWNmYTMwMDQyNjc5OGVj
MmMyYTFhOGM0YTkzNDIwNGQ1OC4uY2RiZDEzYTExY2Q3OGQ0NzBhOTgxNTRmYzFlYTFlOGE2YzNk
Y2VmMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1cy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXMuYwpAQCAtMTA3LDcgKzEw
Nyw3IEBAIE9QVVNfRVhQT1JUIHZvaWQgb3B1c19wY21fc29mdF9jbGlwKGZsb2F0ICpfeCwgaW50
IE4sIGludCBDLCBmbG9hdCAqZGVjbGlwX21lbSkKICAgICAgICAgIC8qIFNsaWdodGx5IGJvb3N0
ICJhIiBieSAyXi0yMi4gVGhpcyBpcyBqdXN0IGVub3VnaCB0byBlbnN1cmUgLWZmYXN0LW1hdGgK
ICAgICAgICAgICAgIGRvZXMgbm90IGNhdXNlIG91dHB1dCB2YWx1ZXMgbGFyZ2VyIHRoYW4gKy8t
MSwgYnV0IHNtYWxsIGVub3VnaCBub3QKICAgICAgICAgICAgIHRvIG1hdHRlciBldmVuIGZvciAy
NC1iaXQgb3V0cHV0LiAgKi8KLSAgICAgICAgIGEgKz0gYSoyLjRlLTc7CisgICAgICAgICBhICs9
IGEqMi40ZS03ZjsKICAgICAgICAgIGlmICh4W2kqQ10+MCkKICAgICAgICAgICAgIGEgPSAtYTsK
ICAgICAgICAgIC8qIEFwcGx5IHNvZnQgY2xpcHBpbmcgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNf
Y29tcGFyZS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zcmMvb3B1c19jb21wYXJlLmMKaW5kZXggNjY4MjhmZDhjYWVmNmM4ZjdjYzkw
Zjg3ZTM3OWUyY2ZiMDdkMGNlOC4uMTk1NmUwOGZhNWNlZTBlOWI4N2U1ZjJhYjUyMTdlMjRlYWM5
OGQ1MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19jb21wYXJlLmMKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19jb21wYXJl
LmMKQEAgLTIzOCwxNSArMjM4LDExIEBAIGludCBtYWluKGludCBfYXJnYyxjb25zdCBjaGFyICoq
X2FyZ3YpewogICBpZih4bGVuZ3RoIT15bGVuZ3RoKmRvd25zYW1wbGUpewogICAgIGZwcmludGYo
c3RkZXJyLCJTYW1wbGUgY291bnRzIGRvIG5vdCBtYXRjaCAoJWx1IT0lbHUpLlxuIiwKICAgICAg
KHVuc2lnbmVkIGxvbmcpeGxlbmd0aCwodW5zaWduZWQgbG9uZyl5bGVuZ3RoKmRvd25zYW1wbGUp
OwotICAgIGZyZWUoeCk7Ci0gICAgZnJlZSh5KTsKICAgICByZXR1cm4gRVhJVF9GQUlMVVJFOwog
ICB9CiAgIGlmKHhsZW5ndGg8VEVTVF9XSU5fU0laRSl7CiAgICAgZnByaW50ZihzdGRlcnIsIklu
c3VmZmljaWVudCBzYW1wbGUgZGF0YSAoJWx1PCVpKS5cbiIsCiAgICAgICh1bnNpZ25lZCBsb25n
KXhsZW5ndGgsVEVTVF9XSU5fU0laRSk7Ci0gICAgZnJlZSh4KTsKLSAgICBmcmVlKHkpOwogICAg
IHJldHVybiBFWElUX0ZBSUxVUkU7CiAgIH0KICAgbmZyYW1lcz0oeGxlbmd0aC1URVNUX1dJTl9T
SVpFK1RFU1RfV0lOX1NURVApL1RFU1RfV0lOX1NURVA7CkBAIC0zNjcsNiArMzYzLDkgQEAgaW50
IG1haW4oaW50IF9hcmdjLGNvbnN0IGNoYXIgKipfYXJndil7CiAgICAgRWYqPUVmOwogICAgIGVy
cis9RWYqRWY7CiAgIH0KKyAgZnJlZSh4Yik7CisgIGZyZWUoWCk7CisgIGZyZWUoWSk7CiAgIGVy
cj1wb3coZXJyL25mcmFtZXMsMS4wLzE2KTsKICAgUT0xMDAqKDEtMC41KmxvZygxK2VycikvbG9n
KDEuMTMpKTsKICAgaWYoUTwwKXsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfZGVjb2Rlci5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMv
b3B1c19kZWNvZGVyLmMKaW5kZXggOWEwODk2YjU1MGQzNDY1MTgxNGU0YmRlMmZkMzQ3OTIxYTU4
YzE2Zi4uMTQ5YWU3ZjIxZDhiYjQxNjdmY2M5MjYyZDMyZDQzOTNiMzE5ZjQ2MCAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zcmMvb3B1c19kZWNvZGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19kZWNvZGVyLmMKQEAgLTMzLDcgKzMz
LDcgQEAKICMgZXJyb3IgIk9QVVNfQlVJTEQgX01VU1RfIGJlIGRlZmluZWQgdG8gYnVpbGQgT3B1
cy4gVGhpcyBwcm9iYWJseSBtZWFucyB5b3UgbmVlZCBvdGhlciBkZWZpbmVzIGFzIHdlbGwsIGFz
IGluIGEgY29uZmlnLmguIFNlZSB0aGUgaW5jbHVkZWQgYnVpbGQgZmlsZXMgZm9yIGRldGFpbHMu
IgogI2VuZGlmCiAKLSNpZiBkZWZpbmVkKF9fR05VQ19fKSAmJiAoX19HTlVDX18gPj0gMikgJiYg
IWRlZmluZWQoX19PUFRJTUlaRV9fKSAmJiAhZGVmaW5lZChPUFVTX1dJTExfQkVfU0xPVykgJiYg
ZGVmaW5lZChOREVCVUcpCisjaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgKF9fR05VQ19fID49IDIp
ICYmICFkZWZpbmVkKF9fT1BUSU1JWkVfXykgJiYgIWRlZmluZWQoT1BVU19XSUxMX0JFX1NMT1cp
CiAjIHByYWdtYSBtZXNzYWdlICJZb3UgYXBwZWFyIHRvIGJlIGNvbXBpbGluZyB3aXRob3V0IG9w
dGltaXphdGlvbiwgaWYgc28gb3B1cyB3aWxsIGJlIHZlcnkgc2xvdy4iCiAjZW5kaWYKIApAQCAt
ODkxLDcgKzg5MSw3IEBAIGludCBvcHVzX2RlY29kZXJfY3RsKE9wdXNEZWNvZGVyICpzdCwgaW50
IHJlcXVlc3QsIC4uLikKICAgIGJyZWFrOwogICAgY2FzZSBPUFVTX0dFVF9MQVNUX1BBQ0tFVF9E
VVJBVElPTl9SRVFVRVNUOgogICAgewotICAgICAgb3B1c191aW50MzIgKnZhbHVlID0gdmFfYXJn
KGFwLCBvcHVzX3VpbnQzMiopOworICAgICAgb3B1c19pbnQzMiAqdmFsdWUgPSB2YV9hcmcoYXAs
IG9wdXNfaW50MzIqKTsKICAgICAgIGlmICghdmFsdWUpCiAgICAgICB7CiAgICAgICAgICBnb3Rv
IGJhZF9hcmc7CkBAIC04OTksNiArODk5LDI2IEBAIGludCBvcHVzX2RlY29kZXJfY3RsKE9wdXNE
ZWNvZGVyICpzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICp2YWx1ZSA9IHN0LT5sYXN0X3Bh
Y2tldF9kdXJhdGlvbjsKICAgIH0KICAgIGJyZWFrOworICAgY2FzZSBPUFVTX1NFVF9QSEFTRV9J
TlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgIHsKKyAgICAgICBvcHVzX2ludDMyIHZhbHVl
ID0gdmFfYXJnKGFwLCBvcHVzX2ludDMyKTsKKyAgICAgICBpZih2YWx1ZTwwIHx8IHZhbHVlPjEp
CisgICAgICAgeworICAgICAgICAgIGdvdG8gYmFkX2FyZzsKKyAgICAgICB9CisgICAgICAgY2Vs
dF9kZWNvZGVyX2N0bChjZWx0X2RlYywgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVE
KHZhbHVlKSk7CisgICB9CisgICBicmVhazsKKyAgIGNhc2UgT1BVU19HRVRfUEhBU0VfSU5WRVJT
SU9OX0RJU0FCTEVEX1JFUVVFU1Q6CisgICB7CisgICAgICAgb3B1c19pbnQzMiAqdmFsdWUgPSB2
YV9hcmcoYXAsIG9wdXNfaW50MzIqKTsKKyAgICAgICBpZiAoIXZhbHVlKQorICAgICAgIHsKKyAg
ICAgICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAgfQorICAgICAgIGNlbHRfZGVjb2Rlcl9jdGwo
Y2VsdF9kZWMsIE9QVVNfR0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCh2YWx1ZSkpOworICAg
fQorICAgYnJlYWs7CiAgICBkZWZhdWx0OgogICAgICAgLypmcHJpbnRmKHN0ZGVyciwgInVua25v
d24gb3B1c19kZWNvZGVyX2N0bCgpIHJlcXVlc3Q6ICVkIiwgcmVxdWVzdCk7Ki8KICAgICAgIHJl
dCA9IE9QVVNfVU5JTVBMRU1FTlRFRDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfZGVtby5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMv
b3B1c19kZW1vLmMKaW5kZXggNjk4OGE4Y2IxNWQ2ZTYwOGY1ODY1Mjc3MTc4ZTFjMDRjNjk2MWQ0
Yi4uNTA5ODdjOTZmMjY1ZjYwNjA3NjJmOWMwNGU2Mjg3Y2I5YjVhYWI2YiAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
cmMvb3B1c19kZW1vLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19kZW1vLmMKQEAgLTU0LDkgKzU0LDkgQEAgdm9p
ZCBwcmludF91c2FnZSggY2hhciogYXJndltdICkKICAgICBmcHJpbnRmKHN0ZGVyciwgIi1kICAg
ICAgICAgICAgICAgICAgIDogb25seSBydW5zIHRoZSBkZWNvZGVyIChyZWFkcyB0aGUgYml0LXN0
cmVhbSBhcyBpbnB1dClcbiIgKTsKICAgICBmcHJpbnRmKHN0ZGVyciwgIi1jYnIgICAgICAgICAg
ICAgICAgIDogZW5hYmxlIGNvbnN0YW50IGJpdHJhdGU7IGRlZmF1bHQ6IHZhcmlhYmxlIGJpdHJh
dGVcbiIgKTsKICAgICBmcHJpbnRmKHN0ZGVyciwgIi1jdmJyICAgICAgICAgICAgICAgIDogZW5h
YmxlIGNvbnN0cmFpbmVkIHZhcmlhYmxlIGJpdHJhdGU7IGRlZmF1bHQ6IHVuY29uc3RyYWluZWRc
biIgKTsKLSAgICBmcHJpbnRmKHN0ZGVyciwgIi12YXJpYWJsZS1kdXJhdGlvbiAgIDogZW5hYmxl
IGZyYW1lcyBvZiB2YXJpYWJsZSBkdXJhdGlvbiAoZXhwZXJ0cyBvbmx5KTsgZGVmYXVsdDogZGlz
YWJsZWRcbiIgKTsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIi1kZWxheWVkLWRlY2lzaW9uICAgIDog
dXNlIGxvb2stYWhlYWQgZm9yIHNwZWVjaC9tdXNpYyBkZXRlY3Rpb24gKGV4cGVydHMgb25seSk7
IGRlZmF1bHQ6IGRpc2FibGVkXG4iICk7CiAgICAgZnByaW50ZihzdGRlcnIsICItYmFuZHdpZHRo
IDxOQnxNQnxXQnxTV0J8RkI+IDogYXVkaW8gYmFuZHdpZHRoIChmcm9tIG5hcnJvd2JhbmQgdG8g
ZnVsbGJhbmQpOyBkZWZhdWx0OiBzYW1wbGluZyByYXRlXG4iICk7Ci0gICAgZnByaW50ZihzdGRl
cnIsICItZnJhbWVzaXplIDwyLjV8NXwxMHwyMHw0MHw2MD4gOiBmcmFtZSBzaXplIGluIG1zOyBk
ZWZhdWx0OiAyMCBcbiIgKTsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIi1mcmFtZXNpemUgPDIuNXw1
fDEwfDIwfDQwfDYwfDgwfDEwMHwxMjA+IDogZnJhbWUgc2l6ZSBpbiBtczsgZGVmYXVsdDogMjAg
XG4iICk7CiAgICAgZnByaW50ZihzdGRlcnIsICItbWF4X3BheWxvYWQgPGJ5dGVzPiA6IG1heGlt
dW0gcGF5bG9hZCBzaXplIGluIGJ5dGVzLCBkZWZhdWx0OiAxMDI0XG4iICk7CiAgICAgZnByaW50
ZihzdGRlcnIsICItY29tcGxleGl0eSA8Y29tcD4gICA6IGNvbXBsZXhpdHksIDAgKGxvd2VzdCkg
Li4uIDEwIChoaWdoZXN0KTsgZGVmYXVsdDogMTBcbiIgKTsKICAgICBmcHJpbnRmKHN0ZGVyciwg
Ii1pbmJhbmRmZWMgICAgICAgICAgIDogZW5hYmxlIFNJTEsgaW5iYW5kIEZFQ1xuIiApOwpAQCAt
MjUzLDYgKzI1Myw3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgb3B1
c191aW50MzIgZGVjX2ZpbmFsX3JhbmdlOwogICAgIGludCBlbmNvZGVfb25seT0wLCBkZWNvZGVf
b25seT0wOwogICAgIGludCBtYXhfZnJhbWVfc2l6ZSA9IDQ4MDAwKjI7CisgICAgc2l6ZV90IG51
bV9yZWFkOwogICAgIGludCBjdXJyX3JlYWQ9MDsKICAgICBpbnQgc3dlZXBfYnBzID0gMDsKICAg
ICBpbnQgcmFuZG9tX2ZyYW1lc2l6ZT0wLCBuZXdzaXplPTAsIGRlbGF5ZWRfY2VsdD0wOwpAQCAt
MzgyLDkgKzM4MywxNSBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAg
ICAgICAgICAgIGZyYW1lX3NpemUgPSBzYW1wbGluZ19yYXRlLzI1OwogICAgICAgICAgICAgZWxz
ZSBpZiAoc3RyY21wKGFyZ3ZbIGFyZ3MgKyAxIF0sICI2MCIpPT0wKQogICAgICAgICAgICAgICAg
IGZyYW1lX3NpemUgPSAzKnNhbXBsaW5nX3JhdGUvNTA7CisgICAgICAgICAgICBlbHNlIGlmIChz
dHJjbXAoYXJndlsgYXJncyArIDEgXSwgIjgwIik9PTApCisgICAgICAgICAgICAgICAgZnJhbWVf
c2l6ZSA9IDQqc2FtcGxpbmdfcmF0ZS81MDsKKyAgICAgICAgICAgIGVsc2UgaWYgKHN0cmNtcChh
cmd2WyBhcmdzICsgMSBdLCAiMTAwIik9PTApCisgICAgICAgICAgICAgICAgZnJhbWVfc2l6ZSA9
IDUqc2FtcGxpbmdfcmF0ZS81MDsKKyAgICAgICAgICAgIGVsc2UgaWYgKHN0cmNtcChhcmd2WyBh
cmdzICsgMSBdLCAiMTIwIik9PTApCisgICAgICAgICAgICAgICAgZnJhbWVfc2l6ZSA9IDYqc2Ft
cGxpbmdfcmF0ZS81MDsKICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgIGZwcmlu
dGYoc3RkZXJyLCAiVW5zdXBwb3J0ZWQgZnJhbWUgc2l6ZTogJXMgbXMuICIKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIlN1cHBvcnRlZCBhcmUgMi41LCA1LCAxMCwgMjAsIDQwLCA2
MC5cbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTdXBwb3J0ZWQgYXJlIDIu
NSwgNSwgMTAsIDIwLCA0MCwgNjAsIDgwLCAxMDAsIDEyMC5cbiIsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGFyZ3ZbIGFyZ3MgKyAxIF0pOwogICAgICAgICAgICAgICAgIHJldHVy
biBFWElUX0ZBSUxVUkU7CiAgICAgICAgICAgICB9CkBAIC00MDgsMTAgKzQxNSw2IEBAIGludCBt
YWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICBjaGVja19lbmNvZGVyX29w
dGlvbihkZWNvZGVfb25seSwgIi1jdmJyIik7CiAgICAgICAgICAgICBjdmJyID0gMTsKICAgICAg
ICAgICAgIGFyZ3MrKzsKLSAgICAgICAgfSBlbHNlIGlmKCBzdHJjbXAoIGFyZ3ZbIGFyZ3MgXSwg
Ii12YXJpYWJsZS1kdXJhdGlvbiIgKSA9PSAwICkgewotICAgICAgICAgICAgY2hlY2tfZW5jb2Rl
cl9vcHRpb24oZGVjb2RlX29ubHksICItdmFyaWFibGUtZHVyYXRpb24iKTsKLSAgICAgICAgICAg
IHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfVkFSSUFCTEU7Ci0gICAgICAgICAg
ICBhcmdzKys7CiAgICAgICAgIH0gZWxzZSBpZiggc3RyY21wKCBhcmd2WyBhcmdzIF0sICItZGVs
YXllZC1kZWNpc2lvbiIgKSA9PSAwICkgewogICAgICAgICAgICAgY2hlY2tfZW5jb2Rlcl9vcHRp
b24oZGVjb2RlX29ubHksICItZGVsYXllZC1kZWNpc2lvbiIpOwogICAgICAgICAgICAgZGVsYXll
ZF9kZWNpc2lvbiA9IDE7CkBAIC01OTksMjIgKzYwMiwyNSBAQCBpbnQgbWFpbihpbnQgYXJnYywg
Y2hhciAqYXJndltdKQogICAgIH0KICAgICBpZihkZWxheWVkX2RlY2lzaW9uKQogICAgIHsKLSAg
ICAgICBpZiAodmFyaWFibGVfZHVyYXRpb24hPU9QVVNfRlJBTUVTSVpFX1ZBUklBQkxFKQotICAg
ICAgIHsKLSAgICAgICAgICBpZiAoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS80MDApCi0gICAg
ICAgICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV8yXzVfTVM7Ci0gICAg
ICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS8yMDApCi0gICAgICAgICAg
ICAgdmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV81X01TOwotICAgICAgICAgIGVs
c2UgaWYgKGZyYW1lX3NpemU9PXNhbXBsaW5nX3JhdGUvMTAwKQotICAgICAgICAgICAgIHZhcmlh
YmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfMTBfTVM7Ci0gICAgICAgICAgZWxzZSBpZiAo
ZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS81MCkKLSAgICAgICAgICAgICB2YXJpYWJsZV9kdXJh
dGlvbiA9IE9QVVNfRlJBTUVTSVpFXzIwX01TOwotICAgICAgICAgIGVsc2UgaWYgKGZyYW1lX3Np
emU9PXNhbXBsaW5nX3JhdGUvMjUpCi0gICAgICAgICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBP
UFVTX0ZSQU1FU0laRV80MF9NUzsKLSAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgdmFyaWFi
bGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV82MF9NUzsKLSAgICAgICAgICBvcHVzX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKHZhcmlhYmxlX2R1cmF0
aW9uKSk7Ci0gICAgICAgfQorICAgICAgIGlmIChmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzQw
MCkKKyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzJfNV9NUzsK
KyAgICAgICBlbHNlIGlmIChmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzIwMCkKKyAgICAgICAg
ICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzVfTVM7CisgICAgICAgZWxzZSBp
ZiAoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS8xMDApCisgICAgICAgICAgdmFyaWFibGVfZHVy
YXRpb24gPSBPUFVTX0ZSQU1FU0laRV8xMF9NUzsKKyAgICAgICBlbHNlIGlmIChmcmFtZV9zaXpl
PT1zYW1wbGluZ19yYXRlLzUwKQorICAgICAgICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19G
UkFNRVNJWkVfMjBfTVM7CisgICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0
ZS8yNSkKKyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzQwX01T
OworICAgICAgIGVsc2UgaWYgKGZyYW1lX3NpemU9PTMqc2FtcGxpbmdfcmF0ZS81MCkKKyAgICAg
ICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzYwX01TOworICAgICAgIGVs
c2UgaWYgKGZyYW1lX3NpemU9PTQqc2FtcGxpbmdfcmF0ZS81MCkKKyAgICAgICAgICB2YXJpYWJs
ZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzgwX01TOworICAgICAgIGVsc2UgaWYgKGZyYW1l
X3NpemU9PTUqc2FtcGxpbmdfcmF0ZS81MCkKKyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9
IE9QVVNfRlJBTUVTSVpFXzEwMF9NUzsKKyAgICAgICBlbHNlCisgICAgICAgICAgdmFyaWFibGVf
ZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV8xMjBfTVM7CisgICAgICAgb3B1c19lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTih2YXJpYWJsZV9kdXJhdGlvbikp
OwogICAgICAgIGZyYW1lX3NpemUgPSAyKjQ4MDAwOwogICAgIH0KICAgICB3aGlsZSAoIXN0b3Ap
CkBAIC02NTIsOCArNjU4LDggQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAg
ICAgICAgaWYgKGRlY29kZV9vbmx5KQogICAgICAgICB7CiAgICAgICAgICAgICB1bnNpZ25lZCBj
aGFyIGNoWzRdOwotICAgICAgICAgICAgZXJyID0gZnJlYWQoY2gsIDEsIDQsIGZpbik7Ci0gICAg
ICAgICAgICBpZiAoZmVvZihmaW4pKQorICAgICAgICAgICAgbnVtX3JlYWQgPSBmcmVhZChjaCwg
MSwgNCwgZmluKTsKKyAgICAgICAgICAgIGlmIChudW1fcmVhZCE9NCkKICAgICAgICAgICAgICAg
ICBicmVhazsKICAgICAgICAgICAgIGxlblt0b2dnbGVdID0gY2hhcl90b19pbnQoY2gpOwogICAg
ICAgICAgICAgaWYgKGxlblt0b2dnbGVdPm1heF9wYXlsb2FkX2J5dGVzIHx8IGxlblt0b2dnbGVd
PDApCkBAIC02NjEsMTQgKzY2NywxNiBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltd
KQogICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiSW52YWxpZCBwYXlsb2FkIGxlbmd0
aDogJWRcbiIsbGVuW3RvZ2dsZV0pOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAg
ICAgfQotICAgICAgICAgICAgZXJyID0gZnJlYWQoY2gsIDEsIDQsIGZpbik7CisgICAgICAgICAg
ICBudW1fcmVhZCA9IGZyZWFkKGNoLCAxLCA0LCBmaW4pOworICAgICAgICAgICAgaWYgKG51bV9y
ZWFkIT00KQorICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgZW5jX2ZpbmFsX3Jh
bmdlW3RvZ2dsZV0gPSBjaGFyX3RvX2ludChjaCk7Ci0gICAgICAgICAgICBlcnIgPSBmcmVhZChk
YXRhW3RvZ2dsZV0sIDEsIGxlblt0b2dnbGVdLCBmaW4pOwotICAgICAgICAgICAgaWYgKGVycjxs
ZW5bdG9nZ2xlXSkKKyAgICAgICAgICAgIG51bV9yZWFkID0gZnJlYWQoZGF0YVt0b2dnbGVdLCAx
LCBsZW5bdG9nZ2xlXSwgZmluKTsKKyAgICAgICAgICAgIGlmIChudW1fcmVhZCE9KHNpemVfdCls
ZW5bdG9nZ2xlXSkKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVy
ciwgIlJhbiBvdXQgb2YgaW5wdXQsICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ImV4cGVjdGluZyAlZCBieXRlcyBnb3QgJWRcbiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGxlblt0b2dnbGVdLGVycik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGxlblt0b2dnbGVdLChpbnQpbnVtX3JlYWQpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICAgICAgfQogICAgICAgICB9IGVsc2UgewpAQCAtNjgwLDggKzY4OCw4IEBAIGludCBtYWlu
KGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICAgICAgb3B1c19lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX0ZPUkNFX0NIQU5ORUxTKG1vZGVfbGlzdFtjdXJyX21vZGVdWzNdKSk7
CiAgICAgICAgICAgICAgICAgZnJhbWVfc2l6ZSA9IG1vZGVfbGlzdFtjdXJyX21vZGVdWzJdOwog
ICAgICAgICAgICAgfQotICAgICAgICAgICAgZXJyID0gZnJlYWQoZmJ5dGVzLCBzaXplb2Yoc2hv
cnQpKmNoYW5uZWxzLCBmcmFtZV9zaXplLXJlbWFpbmluZywgZmluKTsKLSAgICAgICAgICAgIGN1
cnJfcmVhZCA9IGVycjsKKyAgICAgICAgICAgIG51bV9yZWFkID0gZnJlYWQoZmJ5dGVzLCBzaXpl
b2Yoc2hvcnQpKmNoYW5uZWxzLCBmcmFtZV9zaXplLXJlbWFpbmluZywgZmluKTsKKyAgICAgICAg
ICAgIGN1cnJfcmVhZCA9IChpbnQpbnVtX3JlYWQ7CiAgICAgICAgICAgICB0b3RfaW4gKz0gY3Vy
cl9yZWFkOwogICAgICAgICAgICAgZm9yKGk9MDtpPGN1cnJfcmVhZCpjaGFubmVscztpKyspCiAg
ICAgICAgICAgICB7CkBAIC03MjEsMTQgKzcyOSw4IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFy
ICphcmd2W10pCiAgICAgICAgICAgICBpZiAobGVuW3RvZ2dsZV0gPCAwKQogICAgICAgICAgICAg
ewogICAgICAgICAgICAgICAgIGZwcmludGYgKHN0ZGVyciwgIm9wdXNfZW5jb2RlKCkgcmV0dXJu
ZWQgJWRcbiIsIGxlblt0b2dnbGVdKTsKLSAgICAgICAgICAgICAgICBmcmVlKGRhdGFbMF0pOwot
ICAgICAgICAgICAgICAgIGlmICh1c2VfaW5iYW5kZmVjKQotICAgICAgICAgICAgICAgICAgICBm
cmVlKGRhdGFbMV0pOwogICAgICAgICAgICAgICAgIGZjbG9zZShmaW4pOwogICAgICAgICAgICAg
ICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAgICAgICAgICBmcmVlKGluKTsKLSAgICAgICAgICAg
ICAgICBmcmVlKG91dCk7Ci0gICAgICAgICAgICAgICAgZnJlZShmYnl0ZXMpOwogICAgICAgICAg
ICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBj
dXJyX21vZGVfY291bnQgKz0gZnJhbWVfc2l6ZTsKQEAgLTc0NiwxNCArNzQ4LDYgQEAgaW50IG1h
aW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgaWYgKChlcnIgPSBvcHVzX3Bh
Y2tldF9wYWQoZGF0YVt0b2dnbGVdLCBsZW5bdG9nZ2xlXSwgbmV3X2xlbikpICE9IE9QVVNfT0sp
CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJwYWRkaW5nIGZh
aWxlZDogJXNcbiIsIG9wdXNfc3RyZXJyb3IoZXJyKSk7Ci0gICAgICAgICAgICAgIGZyZWUoZGF0
YVswXSk7Ci0gICAgICAgICAgICAgIGlmICh1c2VfaW5iYW5kZmVjKQotICAgICAgICAgICAgICAg
ICAgZnJlZShkYXRhWzFdKTsKLSAgICAgICAgICAgICAgZmNsb3NlKGZpbik7Ci0gICAgICAgICAg
ICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAgICAgICAgZnJlZShpbik7Ci0gICAgICAgICAgICAg
IGZyZWUob3V0KTsKLSAgICAgICAgICAgICAgZnJlZShmYnl0ZXMpOwogICAgICAgICAgICAgICBy
ZXR1cm4gRVhJVF9GQUlMVVJFOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxlblt0b2dnbGVd
ID0gbmV3X2xlbjsKQEAgLTc2NSw0NCArNzU5LDIwIEBAIGludCBtYWluKGludCBhcmdjLCBjaGFy
ICphcmd2W10pCiAgICAgICAgICAgICBpbnRfdG9fY2hhcihsZW5bdG9nZ2xlXSwgaW50X2ZpZWxk
KTsKICAgICAgICAgICAgIGlmIChmd3JpdGUoaW50X2ZpZWxkLCAxLCA0LCBmb3V0KSAhPSA0KSB7
CiAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkVycm9yIHdyaXRpbmcuXG4iKTsKLSAg
ICAgICAgICAgICAgIGZyZWUoZGF0YVswXSk7Ci0gICAgICAgICAgICAgICBpZiAodXNlX2luYmFu
ZGZlYykKLSAgICAgICAgICAgICAgICAgICBmcmVlKGRhdGFbMV0pOwotICAgICAgICAgICAgICAg
ZmNsb3NlKGZpbik7Ci0gICAgICAgICAgICAgICBmY2xvc2UoZm91dCk7Ci0gICAgICAgICAgICAg
ICBmcmVlKGluKTsKLSAgICAgICAgICAgICAgIGZyZWUob3V0KTsKLSAgICAgICAgICAgICAgIGZy
ZWUoZmJ5dGVzKTsKICAgICAgICAgICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICBpbnRfdG9fY2hhcihlbmNfZmluYWxfcmFuZ2VbdG9nZ2xlXSwg
aW50X2ZpZWxkKTsKICAgICAgICAgICAgIGlmIChmd3JpdGUoaW50X2ZpZWxkLCAxLCA0LCBmb3V0
KSAhPSA0KSB7CiAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkVycm9yIHdyaXRpbmcu
XG4iKTsKLSAgICAgICAgICAgICAgIGZyZWUoZGF0YVswXSk7Ci0gICAgICAgICAgICAgICBpZiAo
dXNlX2luYmFuZGZlYykKLSAgICAgICAgICAgICAgICAgICBmcmVlKGRhdGFbMV0pOwotICAgICAg
ICAgICAgICAgZmNsb3NlKGZpbik7Ci0gICAgICAgICAgICAgICBmY2xvc2UoZm91dCk7Ci0gICAg
ICAgICAgICAgICBmcmVlKGluKTsKLSAgICAgICAgICAgICAgIGZyZWUob3V0KTsKLSAgICAgICAg
ICAgICAgIGZyZWUoZmJ5dGVzKTsKICAgICAgICAgICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7
CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAoZndyaXRlKGRhdGFbdG9nZ2xlXSwgMSwg
bGVuW3RvZ2dsZV0sIGZvdXQpICE9ICh1bnNpZ25lZClsZW5bdG9nZ2xlXSkgewogICAgICAgICAg
ICAgICAgZnByaW50ZihzdGRlcnIsICJFcnJvciB3cml0aW5nLlxuIik7Ci0gICAgICAgICAgICAg
ICBmcmVlKGRhdGFbMF0pOwotICAgICAgICAgICAgICAgaWYgKHVzZV9pbmJhbmRmZWMpCi0gICAg
ICAgICAgICAgICAgICAgZnJlZShkYXRhWzFdKTsKLSAgICAgICAgICAgICAgIGZjbG9zZShmaW4p
OwotICAgICAgICAgICAgICAgZmNsb3NlKGZvdXQpOwotICAgICAgICAgICAgICAgZnJlZShpbik7
Ci0gICAgICAgICAgICAgICBmcmVlKG91dCk7Ci0gICAgICAgICAgICAgICBmcmVlKGZieXRlcyk7
CiAgICAgICAgICAgICAgICByZXR1cm4gRVhJVF9GQUlMVVJFOwogICAgICAgICAgICAgfQogICAg
ICAgICAgICAgdG90X3NhbXBsZXMgKz0gbmJfZW5jb2RlZDsKICAgICAgICAgfSBlbHNlIHsKLSAg
ICAgICAgICAgIGludCBvdXRwdXRfc2FtcGxlczsKKyAgICAgICAgICAgIG9wdXNfaW50MzIgb3V0
cHV0X3NhbXBsZXM7CiAgICAgICAgICAgICBsb3N0ID0gbGVuW3RvZ2dsZV09PTAgfHwgKHBhY2tl
dF9sb3NzX3BlcmM+MCAmJiByYW5kKCklMTAwIDwgcGFja2V0X2xvc3NfcGVyYyk7CiAgICAgICAg
ICAgICBpZiAobG9zdCkKICAgICAgICAgICAgICAgIG9wdXNfZGVjb2Rlcl9jdGwoZGVjLCBPUFVT
X0dFVF9MQVNUX1BBQ0tFVF9EVVJBVElPTigmb3V0cHV0X3NhbXBsZXMpKTsKQEAgLTgyOCw3ICs3
OTgsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICAgICAgICAg
ICAgICBpZiAoIWRlY29kZV9vbmx5ICYmIHRvdF9vdXQgKyBvdXRwdXRfc2FtcGxlcyA+IHRvdF9p
bikKICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBzdG9wPTE7
Ci0gICAgICAgICAgICAgICAgICAgICAgIG91dHB1dF9zYW1wbGVzICA9IHRvdF9pbi10b3Rfb3V0
OworICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXRfc2FtcGxlcyA9IChvcHVzX2ludDMyKSh0
b3RfaW4gLSB0b3Rfb3V0KTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
ICAgICBpZiAob3V0cHV0X3NhbXBsZXM+c2tpcCkgewogICAgICAgICAgICAgICAgICAgICAgICBp
bnQgaTsKQEAgLTg0MSwxNCArODExLDYgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3Zb
XSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBpZiAo
ZndyaXRlKGZieXRlcywgc2l6ZW9mKHNob3J0KSpjaGFubmVscywgb3V0cHV0X3NhbXBsZXMtc2tp
cCwgZm91dCkgIT0gKHVuc2lnbmVkKShvdXRwdXRfc2FtcGxlcy1za2lwKSl7CiAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiRXJyb3Igd3JpdGluZy5cbiIpOwotICAg
ICAgICAgICAgICAgICAgICAgICAgICBmcmVlKGRhdGFbMF0pOwotICAgICAgICAgICAgICAgICAg
ICAgICAgICBpZiAodXNlX2luYmFuZGZlYykKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGZyZWUoZGF0YVsxXSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGZjbG9zZShmaW4pOwot
ICAgICAgICAgICAgICAgICAgICAgICAgICBmY2xvc2UoZm91dCk7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgIGZyZWUoaW4pOwotICAgICAgICAgICAgICAgICAgICAgICAgICBmcmVlKG91dCk7
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGZyZWUoZmJ5dGVzKTsKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKICAgICAgICAgICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgICAgICAgICAgICB0b3Rfb3V0ICs9IG91dHB1dF9zYW1wbGVzLXNraXA7
CkBAIC04NzUsMTQgKzgzNyw4IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgKGxvbmcpY291bnQsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgKHVuc2lnbmVkIGxvbmcpZW5jX2ZpbmFsX3JhbmdlW3RvZ2dsZV51c2VfaW5iYW5kZmVj
XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgbG9uZylkZWNfZmluYWxfcmFu
Z2UpOwotICAgICAgICAgICAgZnJlZShkYXRhWzBdKTsKLSAgICAgICAgICAgIGlmICh1c2VfaW5i
YW5kZmVjKQotICAgICAgICAgICAgICAgIGZyZWUoZGF0YVsxXSk7CiAgICAgICAgICAgICBmY2xv
c2UoZmluKTsKICAgICAgICAgICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAgICAgIGZyZWUoaW4p
OwotICAgICAgICAgICAgZnJlZShvdXQpOwotICAgICAgICAgICAgZnJlZShmYnl0ZXMpOwogICAg
ICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKICAgICAgICAgfQogCkBAIC05MjIsOCArODc4
LDYgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgICAgIDFl
LTMqYml0c19hY3Qqc2FtcGxpbmdfcmF0ZS8oMWUtMTUrZnJhbWVfc2l6ZSooZG91YmxlKWNvdW50
X2FjdCkpOwogICAgIGZwcmludGYgKHN0ZGVyciwgImJpdHJhdGUgc3RhbmRhcmQgZGV2aWF0aW9u
OiAgJTcuM2Yga2Ivc1xuIiwKICAgICAgICAgICAgIDFlLTMqc3FydChiaXRzMi9jb3VudCAtIGJp
dHMqYml0cy8oY291bnQqKGRvdWJsZSljb3VudCkpKnNhbXBsaW5nX3JhdGUvZnJhbWVfc2l6ZSk7
Ci0gICAgLyogQ2xvc2UgYW55IGZpbGVzIHRvIHdoaWNoIGludGVybWVkaWF0ZSByZXN1bHRzIHdl
cmUgc3RvcmVkICovCi0gICAgU0lMS19ERUJVR19TVE9SRV9DTE9TRV9GSUxFUwogICAgIHNpbGtf
VGltZXJTYXZlKCJvcHVzX3RpbWluZy50eHQiKTsKICAgICBvcHVzX2VuY29kZXJfZGVzdHJveShl
bmMpOwogICAgIG9wdXNfZGVjb2Rlcl9kZXN0cm95KGRlYyk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVz
X2VuY29kZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc3JjL29wdXNfZW5jb2Rlci5jCmluZGV4IDlhNTE2YTg4NGFhNzc3OGU4NTc3
YTU1OTgxOTE1MzBiYzY5MDY3YjIuLjIxNDljMjBiNDE5MGEwNDdjYjQ0ZmY2M2UyZGFhYzFjNzkz
OTU2ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfZW5jb2Rlci5jCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfZW5jb2Rl
ci5jCkBAIC01Myw2ICs1MywxMCBAQAogCiAjZGVmaW5lIE1BWF9FTkNPREVSX0JVRkZFUiA0ODAK
IAorI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQorI2RlZmluZSBQU0VVRE9fU05SX1RIUkVTSE9M
RCAzMTYuMjNmICAgIC8qIDEwXigyNS8xMCkgKi8KKyNlbmRpZgorCiB0eXBlZGVmIHN0cnVjdCB7
CiAgICBvcHVzX3ZhbDMyIFhYLCBYWSwgWVk7CiAgICBvcHVzX3ZhbDE2IHNtb290aGVkX3dpZHRo
OwpAQCAtODIsNiArODYsNyBAQCBzdHJ1Y3QgT3B1c0VuY29kZXIgewogICAgIGludCAgICAgICAg
ICBlbmNvZGVyX2J1ZmZlcjsKICAgICBpbnQgICAgICAgICAgbGZlOwogICAgIGludCAgICAgICAg
ICBhcmNoOworICAgIGludCAgICAgICAgICB1c2VfZHR4OyAgICAgICAgICAgICAgICAgLyogZ2Vu
ZXJhbCBEVFggZm9yIGJvdGggU0lMSyBhbmQgQ0VMVCAqLwogI2lmbmRlZiBESVNBQkxFX0ZMT0FU
X0FQSQogICAgIFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSBhbmFseXNpczsKICNlbmRpZgpAQCAtOTcs
NiArMTAyLDggQEAgc3RydWN0IE9wdXNFbmNvZGVyIHsKICAgICBpbnQgICAgICAgICAgcHJldl9j
aGFubmVsczsKICAgICBpbnQgICAgICAgICAgcHJldl9mcmFtZXNpemU7CiAgICAgaW50ICAgICAg
ICAgIGJhbmR3aWR0aDsKKyAgICAvKiBCYW5kd2lkdGggZGV0ZXJtaW5lZCBhdXRvbWF0aWNhbGx5
IGZyb20gdGhlIHJhdGUgKGJlZm9yZSBhbnkgb3RoZXIgYWRqdXN0bWVudCkgKi8KKyAgICBpbnQg
ICAgICAgICAgYXV0b19iYW5kd2lkdGg7CiAgICAgaW50ICAgICAgICAgIHNpbGtfYndfc3dpdGNo
OwogICAgIC8qIFNhbXBsaW5nIHJhdGUgKGF0IHRoZSBBUEkgbGV2ZWwpICovCiAgICAgaW50ICAg
ICAgICAgIGZpcnN0OwpAQCAtMTA1LDcgKzExMiwxMCBAQCBzdHJ1Y3QgT3B1c0VuY29kZXIgewog
ICAgIG9wdXNfdmFsMTYgICBkZWxheV9idWZmZXJbTUFYX0VOQ09ERVJfQlVGRkVSKjJdOwogI2lm
bmRlZiBESVNBQkxFX0ZMT0FUX0FQSQogICAgIGludCAgICAgICAgICBkZXRlY3RlZF9iYW5kd2lk
dGg7CisgICAgaW50ICAgICAgICAgIG5iX25vX2FjdGl2aXR5X2ZyYW1lczsKKyAgICBvcHVzX3Zh
bDMyICAgcGVha19zaWduYWxfZW5lcmd5OwogI2VuZGlmCisgICAgaW50ICAgICAgICAgIG5vbmZp
bmFsX2ZyYW1lOyAvKiBjdXJyZW50IGZyYW1lIGlzIG5vdCB0aGUgZmluYWwgaW4gYSBwYWNrZXQg
Ki8KICAgICBvcHVzX3VpbnQzMiAgcmFuZ2VGaW5hbDsKIH07CiAKQEAgLTExMywzMiArMTIzLDMy
IEBAIHN0cnVjdCBPcHVzRW5jb2RlciB7CiAgICBtaWRkbGUgKG1lbW9yaWxlc3MpIHRocmVzaG9s
ZC4gVGhlIHNlY29uZCBjb2x1bW4gaXMgdGhlIGh5c3RlcmVzaXMKICAgIChkaWZmZXJlbmNlIHdp
dGggdGhlIG1pZGRsZSkgKi8KIHN0YXRpYyBjb25zdCBvcHVzX2ludDMyIG1vbm9fdm9pY2VfYmFu
ZHdpZHRoX3RocmVzaG9sZHNbOF0gPSB7Ci0gICAgICAgIDExMDAwLCAxMDAwLCAvKiBOQjwtPk1C
ICovCi0gICAgICAgIDE0MDAwLCAxMDAwLCAvKiBNQjwtPldCICovCi0gICAgICAgIDE3MDAwLCAx
MDAwLCAvKiBXQjwtPlNXQiAqLwotICAgICAgICAyMTAwMCwgMjAwMCwgLyogU1dCPC0+RkIgKi8K
KyAgICAgICAgMTAwMDAsIDEwMDAsIC8qIE5CPC0+TUIgKi8KKyAgICAgICAgMTEwMDAsIDEwMDAs
IC8qIE1CPC0+V0IgKi8KKyAgICAgICAgMTM1MDAsIDEwMDAsIC8qIFdCPC0+U1dCICovCisgICAg
ICAgIDE0MDAwLCAyMDAwLCAvKiBTV0I8LT5GQiAqLwogfTsKIHN0YXRpYyBjb25zdCBvcHVzX2lu
dDMyIG1vbm9fbXVzaWNfYmFuZHdpZHRoX3RocmVzaG9sZHNbOF0gPSB7Ci0gICAgICAgIDEyMDAw
LCAxMDAwLCAvKiBOQjwtPk1CICovCi0gICAgICAgIDE1MDAwLCAxMDAwLCAvKiBNQjwtPldCICov
Ci0gICAgICAgIDE4MDAwLCAyMDAwLCAvKiBXQjwtPlNXQiAqLwotICAgICAgICAyMjAwMCwgMjAw
MCwgLyogU1dCPC0+RkIgKi8KKyAgICAgICAgMTAwMDAsIDEwMDAsIC8qIE5CPC0+TUIgKi8KKyAg
ICAgICAgMTEwMDAsIDEwMDAsIC8qIE1CPC0+V0IgKi8KKyAgICAgICAgMTM1MDAsIDEwMDAsIC8q
IFdCPC0+U1dCICovCisgICAgICAgIDE0MDAwLCAyMDAwLCAvKiBTV0I8LT5GQiAqLwogfTsKIHN0
YXRpYyBjb25zdCBvcHVzX2ludDMyIHN0ZXJlb192b2ljZV9iYW5kd2lkdGhfdGhyZXNob2xkc1s4
XSA9IHsKLSAgICAgICAgMTEwMDAsIDEwMDAsIC8qIE5CPC0+TUIgKi8KLSAgICAgICAgMTQwMDAs
IDEwMDAsIC8qIE1CPC0+V0IgKi8KLSAgICAgICAgMjEwMDAsIDIwMDAsIC8qIFdCPC0+U1dCICov
Ci0gICAgICAgIDI4MDAwLCAyMDAwLCAvKiBTV0I8LT5GQiAqLworICAgICAgICAxMDAwMCwgMTAw
MCwgLyogTkI8LT5NQiAqLworICAgICAgICAxMTAwMCwgMTAwMCwgLyogTUI8LT5XQiAqLworICAg
ICAgICAxMzUwMCwgMTAwMCwgLyogV0I8LT5TV0IgKi8KKyAgICAgICAgMTQwMDAsIDIwMDAsIC8q
IFNXQjwtPkZCICovCiB9Owogc3RhdGljIGNvbnN0IG9wdXNfaW50MzIgc3RlcmVvX211c2ljX2Jh
bmR3aWR0aF90aHJlc2hvbGRzWzhdID0gewotICAgICAgICAxMjAwMCwgMTAwMCwgLyogTkI8LT5N
QiAqLwotICAgICAgICAxODAwMCwgMjAwMCwgLyogTUI8LT5XQiAqLwotICAgICAgICAyMTAwMCwg
MjAwMCwgLyogV0I8LT5TV0IgKi8KLSAgICAgICAgMzAwMDAsIDIwMDAsIC8qIFNXQjwtPkZCICov
CisgICAgICAgIDEwMDAwLCAxMDAwLCAvKiBOQjwtPk1CICovCisgICAgICAgIDExMDAwLCAxMDAw
LCAvKiBNQjwtPldCICovCisgICAgICAgIDEzNTAwLCAxMDAwLCAvKiBXQjwtPlNXQiAqLworICAg
ICAgICAxNDAwMCwgMjAwMCwgLyogU1dCPC0+RkIgKi8KIH07CiAvKiBUaHJlc2hvbGQgYml0LXJh
dGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBtb25vIGFuZCBzdGVyZW8gKi8KLXN0YXRpYyBjb25z
dCBvcHVzX2ludDMyIHN0ZXJlb192b2ljZV90aHJlc2hvbGQgPSAzMDAwMDsKLXN0YXRpYyBjb25z
dCBvcHVzX2ludDMyIHN0ZXJlb19tdXNpY190aHJlc2hvbGQgPSAzMDAwMDsKK3N0YXRpYyBjb25z
dCBvcHVzX2ludDMyIHN0ZXJlb192b2ljZV90aHJlc2hvbGQgPSAyNDAwMDsKK3N0YXRpYyBjb25z
dCBvcHVzX2ludDMyIHN0ZXJlb19tdXNpY190aHJlc2hvbGQgPSAyNDAwMDsKIAogLyogVGhyZXNo
b2xkIGJpdC1yYXRlIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBTSUxLL2h5YnJpZCBhbmQgQ0VMVC1v
bmx5ICovCiBzdGF0aWMgY29uc3Qgb3B1c19pbnQzMiBtb2RlX3RocmVzaG9sZHNbMl1bMl0gPSB7
CkBAIC0xNDcsNiArMTU3LDE0IEBAIHN0YXRpYyBjb25zdCBvcHVzX2ludDMyIG1vZGVfdGhyZXNo
b2xkc1syXVsyXSA9IHsKICAgICAgIHsgIDM2MDAwLCAgICAgIDE2MDAwfSwgLyogc3RlcmVvICov
CiB9OwogCitzdGF0aWMgY29uc3Qgb3B1c19pbnQzMiBmZWNfdGhyZXNob2xkc1tdID0geworICAg
ICAgICAxMjAwMCwgMTAwMCwgLyogTkIgKi8KKyAgICAgICAgMTQwMDAsIDEwMDAsIC8qIE1CICov
CisgICAgICAgIDE2MDAwLCAxMDAwLCAvKiBXQiAqLworICAgICAgICAyMDAwMCwgMTAwMCwgLyog
U1dCICovCisgICAgICAgIDIyMDAwLCAxMDAwLCAvKiBGQiAqLworfTsKKwogaW50IG9wdXNfZW5j
b2Rlcl9nZXRfc2l6ZShpbnQgY2hhbm5lbHMpCiB7CiAgICAgaW50IHNpbGtFbmNTaXplQnl0ZXMs
IGNlbHRFbmNTaXplQnl0ZXM7CkBAIC0yNDUsNyArMjYzLDggQEAgaW50IG9wdXNfZW5jb2Rlcl9p
bml0KE9wdXNFbmNvZGVyKiBzdCwgb3B1c19pbnQzMiBGcywgaW50IGNoYW5uZWxzLCBpbnQgYXBw
bGljYXQKICAgICBzdC0+YmFuZHdpZHRoID0gT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQ7CiAKICNp
Zm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKLSAgICB0b25hbGl0eV9hbmFseXNpc19pbml0KCZzdC0+
YW5hbHlzaXMpOworICAgIHRvbmFsaXR5X2FuYWx5c2lzX2luaXQoJnN0LT5hbmFseXNpcywgc3Qt
PkZzKTsKKyAgICBzdC0+YW5hbHlzaXMuYXBwbGljYXRpb24gPSBzdC0+YXBwbGljYXRpb247CiAj
ZW5kaWYKIAogICAgIHJldHVybiBPUFVTX09LOwpAQCAtMzIzLDEwICszNDIsMTEgQEAgc3RhdGlj
IHZvaWQgc2lsa19iaXF1YWRfZmxvYXQoCiB9CiAjZW5kaWYKIAotc3RhdGljIHZvaWQgaHBfY3V0
b2ZmKGNvbnN0IG9wdXNfdmFsMTYgKmluLCBvcHVzX2ludDMyIGN1dG9mZl9Ieiwgb3B1c192YWwx
NiAqb3V0LCBvcHVzX3ZhbDMyICpocF9tZW0sIGludCBsZW4sIGludCBjaGFubmVscywgb3B1c19p
bnQzMiBGcykKK3N0YXRpYyB2b2lkIGhwX2N1dG9mZihjb25zdCBvcHVzX3ZhbDE2ICppbiwgb3B1
c19pbnQzMiBjdXRvZmZfSHosIG9wdXNfdmFsMTYgKm91dCwgb3B1c192YWwzMiAqaHBfbWVtLCBp
bnQgbGVuLCBpbnQgY2hhbm5lbHMsIG9wdXNfaW50MzIgRnMsIGludCBhcmNoKQogewogICAgb3B1
c19pbnQzMiBCX1EyOFsgMyBdLCBBX1EyOFsgMiBdOwogICAgb3B1c19pbnQzMiBGY19RMTksIHJf
UTI4LCByX1EyMjsKKyAgICh2b2lkKWFyY2g7CiAKICAgIHNpbGtfYXNzZXJ0KCBjdXRvZmZfSHog
PD0gc2lsa19pbnQzMl9NQVggLyBTSUxLX0ZJWF9DT05TVCggMS41ICogMy4xNDE1OSAvIDEwMDAs
IDE5ICkgKTsKICAgIEZjX1ExOSA9IHNpbGtfRElWMzJfMTYoIHNpbGtfU01VTEJCKCBTSUxLX0ZJ
WF9DT05TVCggMS41ICogMy4xNDE1OSAvIDEwMDAsIDE5ICksIGN1dG9mZl9IeiApLCBGcy8xMDAw
ICk7CkBAIC0zNDYsOSArMzY2LDEwIEBAIHN0YXRpYyB2b2lkIGhwX2N1dG9mZihjb25zdCBvcHVz
X3ZhbDE2ICppbiwgb3B1c19pbnQzMiBjdXRvZmZfSHosIG9wdXNfdmFsMTYgKm91CiAgICBBX1Ey
OFsgMSBdID0gc2lsa19TTVVMV1coIHJfUTIyLCByX1EyMiApOwogCiAjaWZkZWYgRklYRURfUE9J
TlQKLSAgIHNpbGtfYmlxdWFkX2FsdCggaW4sIEJfUTI4LCBBX1EyOCwgaHBfbWVtLCBvdXQsIGxl
biwgY2hhbm5lbHMgKTsKLSAgIGlmKCBjaGFubmVscyA9PSAyICkgewotICAgICAgIHNpbGtfYmlx
dWFkX2FsdCggaW4rMSwgQl9RMjgsIEFfUTI4LCBocF9tZW0rMiwgb3V0KzEsIGxlbiwgY2hhbm5l
bHMgKTsKKyAgIGlmKCBjaGFubmVscyA9PSAxICkgeworICAgICAgc2lsa19iaXF1YWRfYWx0X3N0
cmlkZTEoIGluLCBCX1EyOCwgQV9RMjgsIGhwX21lbSwgb3V0LCBsZW4gKTsKKyAgIH0gZWxzZSB7
CisgICAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMiggaW4sIEJfUTI4LCBBX1EyOCwgaHBfbWVt
LCBvdXQsIGxlbiwgYXJjaCApOwogICAgfQogI2Vsc2UKICAgIHNpbGtfYmlxdWFkX2Zsb2F0KCBp
biwgQl9RMjgsIEFfUTI4LCBocF9tZW0sIG91dCwgbGVuLCBjaGFubmVscyApOwpAQCAtMzcxLDE0
ICszOTIsMTQgQEAgc3RhdGljIHZvaWQgZGNfcmVqZWN0KGNvbnN0IG9wdXNfdmFsMTYgKmluLCBv
cHVzX2ludDMyIGN1dG9mZl9Ieiwgb3B1c192YWwxNiAqb3UKICAgICAgIGZvciAoaT0wO2k8bGVu
O2krKykKICAgICAgIHsKICAgICAgICAgIG9wdXNfdmFsMzIgeCwgdG1wLCB5OwotICAgICAgICAg
eCA9IFNITDMyKEVYVEVORDMyKGluW2NoYW5uZWxzKmkrY10pLCAxNSk7CisgICAgICAgICB4ID0g
U0hMMzIoRVhURU5EMzIoaW5bY2hhbm5lbHMqaStjXSksIDE0KTsKICAgICAgICAgIC8qIEZpcnN0
IHN0YWdlICovCiAgICAgICAgICB0bXAgPSB4LWhwX21lbVsyKmNdOwogICAgICAgICAgaHBfbWVt
WzIqY10gPSBocF9tZW1bMipjXSArIFBTSFIzMih4IC0gaHBfbWVtWzIqY10sIHNoaWZ0KTsKICAg
ICAgICAgIC8qIFNlY29uZCBzdGFnZSAqLwogICAgICAgICAgeSA9IHRtcCAtIGhwX21lbVsyKmMr
MV07CiAgICAgICAgICBocF9tZW1bMipjKzFdID0gaHBfbWVtWzIqYysxXSArIFBTSFIzMih0bXAg
LSBocF9tZW1bMipjKzFdLCBzaGlmdCk7Ci0gICAgICAgICBvdXRbY2hhbm5lbHMqaStjXSA9IEVY
VFJBQ1QxNihTQVRVUkFURShQU0hSMzIoeSwgMTUpLCAzMjc2NykpOworICAgICAgICAgb3V0W2No
YW5uZWxzKmkrY10gPSBFWFRSQUNUMTYoU0FUVVJBVEUoUFNIUjMyKHksIDE0KSwgMzI3NjcpKTsK
ICAgICAgIH0KICAgIH0KIH0KQEAgLTM4NiwyNCArNDA3LDU3IEBAIHN0YXRpYyB2b2lkIGRjX3Jl
amVjdChjb25zdCBvcHVzX3ZhbDE2ICppbiwgb3B1c19pbnQzMiBjdXRvZmZfSHosIG9wdXNfdmFs
MTYgKm91CiAjZWxzZQogc3RhdGljIHZvaWQgZGNfcmVqZWN0KGNvbnN0IG9wdXNfdmFsMTYgKmlu
LCBvcHVzX2ludDMyIGN1dG9mZl9Ieiwgb3B1c192YWwxNiAqb3V0LCBvcHVzX3ZhbDMyICpocF9t
ZW0sIGludCBsZW4sIGludCBjaGFubmVscywgb3B1c19pbnQzMiBGcykKIHsKLSAgIGludCBjLCBp
OwotICAgZmxvYXQgY29lZjsKLQorICAgaW50IGk7CisgICBmbG9hdCBjb2VmLCBjb2VmMjsKICAg
IGNvZWYgPSA0LjBmKmN1dG9mZl9Iei9GczsKLSAgIGZvciAoYz0wO2M8Y2hhbm5lbHM7YysrKQor
ICAgY29lZjIgPSAxLWNvZWY7CisgICBpZiAoY2hhbm5lbHM9PTIpCiAgICB7CisgICAgICBmbG9h
dCBtMCwgbTEsIG0yLCBtMzsKKyAgICAgIG0wID0gaHBfbWVtWzBdOworICAgICAgbTEgPSBocF9t
ZW1bMV07CisgICAgICBtMiA9IGhwX21lbVsyXTsKKyAgICAgIG0zID0gaHBfbWVtWzNdOworICAg
ICAgZm9yIChpPTA7aTxsZW47aSsrKQorICAgICAgeworICAgICAgICAgb3B1c192YWwzMiB4MCwg
eDEsIHRtcDAsIHRtcDEsIG91dDAsIG91dDE7CisgICAgICAgICB4MCA9IGluWzIqaSswXTsKKyAg
ICAgICAgIHgxID0gaW5bMippKzFdOworICAgICAgICAgLyogRmlyc3Qgc3RhZ2UgKi8KKyAgICAg
ICAgIHRtcDAgPSB4MC1tMDsKKyAgICAgICAgIHRtcDEgPSB4MS1tMjsKKyAgICAgICAgIG0wID0g
Y29lZip4MCArIFZFUllfU01BTEwgKyBjb2VmMiptMDsKKyAgICAgICAgIG0yID0gY29lZip4MSAr
IFZFUllfU01BTEwgKyBjb2VmMiptMjsKKyAgICAgICAgIC8qIFNlY29uZCBzdGFnZSAqLworICAg
ICAgICAgb3V0MCA9IHRtcDAgLSBtMTsKKyAgICAgICAgIG91dDEgPSB0bXAxIC0gbTM7CisgICAg
ICAgICBtMSA9IGNvZWYqdG1wMCArIFZFUllfU01BTEwgKyBjb2VmMiptMTsKKyAgICAgICAgIG0z
ID0gY29lZip0bXAxICsgVkVSWV9TTUFMTCArIGNvZWYyKm0zOworICAgICAgICAgb3V0WzIqaSsw
XSA9IG91dDA7CisgICAgICAgICBvdXRbMippKzFdID0gb3V0MTsKKyAgICAgIH0KKyAgICAgIGhw
X21lbVswXSA9IG0wOworICAgICAgaHBfbWVtWzFdID0gbTE7CisgICAgICBocF9tZW1bMl0gPSBt
MjsKKyAgICAgIGhwX21lbVszXSA9IG0zOworICAgfSBlbHNlIHsKKyAgICAgIGZsb2F0IG0wLCBt
MTsKKyAgICAgIG0wID0gaHBfbWVtWzBdOworICAgICAgbTEgPSBocF9tZW1bMV07CiAgICAgICBm
b3IgKGk9MDtpPGxlbjtpKyspCiAgICAgICB7CiAgICAgICAgICBvcHVzX3ZhbDMyIHgsIHRtcCwg
eTsKLSAgICAgICAgIHggPSBpbltjaGFubmVscyppK2NdOworICAgICAgICAgeCA9IGluW2ldOwog
ICAgICAgICAgLyogRmlyc3Qgc3RhZ2UgKi8KLSAgICAgICAgIHRtcCA9IHgtaHBfbWVtWzIqY107
Ci0gICAgICAgICBocF9tZW1bMipjXSA9IGhwX21lbVsyKmNdICsgY29lZiooeCAtIGhwX21lbVsy
KmNdKSArIFZFUllfU01BTEw7CisgICAgICAgICB0bXAgPSB4LW0wOworICAgICAgICAgbTAgPSBj
b2VmKnggKyBWRVJZX1NNQUxMICsgY29lZjIqbTA7CiAgICAgICAgICAvKiBTZWNvbmQgc3RhZ2Ug
Ki8KLSAgICAgICAgIHkgPSB0bXAgLSBocF9tZW1bMipjKzFdOwotICAgICAgICAgaHBfbWVtWzIq
YysxXSA9IGhwX21lbVsyKmMrMV0gKyBjb2VmKih0bXAgLSBocF9tZW1bMipjKzFdKSArIFZFUllf
U01BTEw7Ci0gICAgICAgICBvdXRbY2hhbm5lbHMqaStjXSA9IHk7CisgICAgICAgICB5ID0gdG1w
IC0gbTE7CisgICAgICAgICBtMSA9IGNvZWYqdG1wICsgVkVSWV9TTUFMTCArIGNvZWYyKm0xOwor
ICAgICAgICAgb3V0W2ldID0geTsKICAgICAgIH0KKyAgICAgIGhwX21lbVswXSA9IG0wOworICAg
ICAgaHBfbWVtWzFdID0gbTE7CiAgICB9CiB9CiAjZW5kaWYKQEAgLTUyMCwyODggKzU3NCw1OCBA
QCBzdGF0aWMgb3B1c19pbnQzMiB1c2VyX2JpdHJhdGVfdG9fYml0cmF0ZShPcHVzRW5jb2RlciAq
c3QsIGludCBmcmFtZV9zaXplLCBpbnQgbQogICAgIHJldHVybiBzdC0+dXNlcl9iaXRyYXRlX2Jw
czsKIH0KIAotI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQotLyogRG9uJ3QgdXNlIG1vcmUgdGhh
biA2MCBtcyBmb3IgdGhlIGZyYW1lIHNpemUgYW5hbHlzaXMgKi8KLSNkZWZpbmUgTUFYX0RZTkFN
SUNfRlJBTUVTSVpFIDI0Ci0vKiBFc3RpbWF0ZXMgaG93IG11Y2ggdGhlIGJpdHJhdGUgd2lsbCBi
ZSBib29zdGVkIGJhc2VkIG9uIHRoZSBzdWItZnJhbWUgZW5lcmd5ICovCi1zdGF0aWMgZmxvYXQg
dHJhbnNpZW50X2Jvb3N0KGNvbnN0IGZsb2F0ICpFLCBjb25zdCBmbG9hdCAqRV8xLCBpbnQgTE0s
IGludCBtYXhNKQotewotICAgaW50IGk7Ci0gICBpbnQgTTsKLSAgIGZsb2F0IHN1bUU9MCwgc3Vt
RV8xPTA7Ci0gICBmbG9hdCBtZXRyaWM7Ci0KLSAgIE0gPSBJTUlOKG1heE0sICgxPDxMTSkrMSk7
Ci0gICBmb3IgKGk9MDtpPE07aSsrKQotICAgewotICAgICAgc3VtRSArPSBFW2ldOwotICAgICAg
c3VtRV8xICs9IEVfMVtpXTsKLSAgIH0KLSAgIG1ldHJpYyA9IHN1bUUqc3VtRV8xLyhNKk0pOwot
ICAgLyppZiAoTE09PTMpCi0gICAgICBwcmludGYoIiVmXG4iLCBtZXRyaWMpOyovCi0gICAvKnJl
dHVybiBtZXRyaWM+MTAgPyAxIDogMDsqLwotICAgLypyZXR1cm4gTUFYMTYoMCwxLWV4cCgtLjI1
KihtZXRyaWMtMi4pKSk7Ki8KLSAgIHJldHVybiBNSU4xNigxLChmbG9hdClzcXJ0KE1BWDE2KDAs
LjA1ZioobWV0cmljLTIpKSkpOwotfQotCi0vKiBWaXRlcmJpIGRlY29kaW5nIHRyeWluZyB0byBm
aW5kIHRoZSBiZXN0IGZyYW1lIHNpemUgY29tYmluYXRpb24gdXNpbmcgbG9vay1haGVhZAotCi0g
ICBTdGF0ZSBudW1iZXJpbmc6Ci0gICAgMDogdW51c2VkCi0gICAgMTogIDIuNSBtcwotICAgIDI6
ICA1IG1zICgjMSkKLSAgICAzOiAgNSBtcyAoIzIpCi0gICAgNDogMTAgbXMgKCMxKQotICAgIDU6
IDEwIG1zICgjMikKLSAgICA2OiAxMCBtcyAoIzMpCi0gICAgNzogMTAgbXMgKCM0KQotICAgIDg6
IDIwIG1zICgjMSkKLSAgICA5OiAyMCBtcyAoIzIpCi0gICAxMDogMjAgbXMgKCMzKQotICAgMTE6
IDIwIG1zICgjNCkKLSAgIDEyOiAyMCBtcyAoIzUpCi0gICAxMzogMjAgbXMgKCM2KQotICAgMTQ6
IDIwIG1zICgjNykKLSAgIDE1OiAyMCBtcyAoIzgpCi0qLwotc3RhdGljIGludCB0cmFuc2llbnRf
dml0ZXJiaShjb25zdCBmbG9hdCAqRSwgY29uc3QgZmxvYXQgKkVfMSwgaW50IE4sIGludCBmcmFt
ZV9jb3N0LCBpbnQgcmF0ZSkKLXsKLSAgIGludCBpOwotICAgZmxvYXQgY29zdFtNQVhfRFlOQU1J
Q19GUkFNRVNJWkVdWzE2XTsKLSAgIGludCBzdGF0ZXNbTUFYX0RZTkFNSUNfRlJBTUVTSVpFXVsx
Nl07Ci0gICBmbG9hdCBiZXN0X2Nvc3Q7Ci0gICBpbnQgYmVzdF9zdGF0ZTsKLSAgIGZsb2F0IGZh
Y3RvcjsKLSAgIC8qIFRha2UgaW50byBhY2NvdW50IHRoYXQgd2UgZGFtcCBWQlIgaW4gdGhlIDMy
IGtiL3MgdG8gNjQga2IvcyByYW5nZS4gKi8KLSAgIGlmIChyYXRlPDgwKQotICAgICAgZmFjdG9y
PTA7Ci0gICBlbHNlIGlmIChyYXRlPjE2MCkKLSAgICAgIGZhY3Rvcj0xOwotICAgZWxzZQotICAg
ICAgZmFjdG9yID0gKHJhdGUtODAuZikvODAuZjsKLSAgIC8qIE1ha2VzIHZhcmlhYmxlIGZyYW1l
c2l6ZSBsZXNzIGFnZ3Jlc3NpdmUgYXQgbG93ZXIgYml0cmF0ZXMsIGJ1dCBJIGNhbid0Ci0gICAg
ICBmaW5kIGFueSB2YWxpZCB0aGVvcmV0aWNhbCBqdXN0aWZpY2F0aW9uIGZvciB0aGlzIChvdGhl
ciB0aGFuIGl0IHNlZW1zCi0gICAgICB0byBoZWxwKSAqLwotICAgZm9yIChpPTA7aTwxNjtpKysp
Ci0gICB7Ci0gICAgICAvKiBJbXBvc3NpYmxlIHN0YXRlICovCi0gICAgICBzdGF0ZXNbMF1baV0g
PSAtMTsKLSAgICAgIGNvc3RbMF1baV0gPSAxZTEwOwotICAgfQotICAgZm9yIChpPTA7aTw0O2kr
KykKLSAgIHsKLSAgICAgIGNvc3RbMF1bMTw8aV0gPSAoZnJhbWVfY29zdCArIHJhdGUqKDE8PGkp
KSooMStmYWN0b3IqdHJhbnNpZW50X2Jvb3N0KEUsIEVfMSwgaSwgTisxKSk7Ci0gICAgICBzdGF0
ZXNbMF1bMTw8aV0gPSBpOwotICAgfQotICAgZm9yIChpPTE7aTxOO2krKykKLSAgIHsKLSAgICAg
IGludCBqOwotCi0gICAgICAvKiBGb2xsb3cgY29udGludWF0aW9ucyAqLwotICAgICAgZm9yIChq
PTI7ajwxNjtqKyspCi0gICAgICB7Ci0gICAgICAgICBjb3N0W2ldW2pdID0gY29zdFtpLTFdW2ot
MV07Ci0gICAgICAgICBzdGF0ZXNbaV1bal0gPSBqLTE7Ci0gICAgICB9Ci0KLSAgICAgIC8qIE5l
dyBmcmFtZXMgKi8KLSAgICAgIGZvcihqPTA7ajw0O2orKykKLSAgICAgIHsKLSAgICAgICAgIGlu
dCBrOwotICAgICAgICAgZmxvYXQgbWluX2Nvc3Q7Ci0gICAgICAgICBmbG9hdCBjdXJyX2Nvc3Q7
Ci0gICAgICAgICBzdGF0ZXNbaV1bMTw8al0gPSAxOwotICAgICAgICAgbWluX2Nvc3QgPSBjb3N0
W2ktMV1bMV07Ci0gICAgICAgICBmb3Ioaz0xO2s8NDtrKyspCi0gICAgICAgICB7Ci0gICAgICAg
ICAgICBmbG9hdCB0bXAgPSBjb3N0W2ktMV1bKDE8PChrKzEpKS0xXTsKLSAgICAgICAgICAgIGlm
ICh0bXAgPCBtaW5fY29zdCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgIHN0YXRlc1tp
XVsxPDxqXSA9ICgxPDwoaysxKSktMTsKLSAgICAgICAgICAgICAgIG1pbl9jb3N0ID0gdG1wOwot
ICAgICAgICAgICAgfQotICAgICAgICAgfQotICAgICAgICAgY3Vycl9jb3N0ID0gKGZyYW1lX2Nv
c3QgKyByYXRlKigxPDxqKSkqKDErZmFjdG9yKnRyYW5zaWVudF9ib29zdChFK2ksIEVfMStpLCBq
LCBOLWkrMSkpOwotICAgICAgICAgY29zdFtpXVsxPDxqXSA9IG1pbl9jb3N0OwotICAgICAgICAg
LyogSWYgcGFydCBvZiB0aGUgZnJhbWUgaXMgb3V0c2lkZSB0aGUgYW5hbHlzaXMgd2luZG93LCBv
bmx5IGNvdW50IHBhcnQgb2YgdGhlIGNvc3QgKi8KLSAgICAgICAgIGlmIChOLWkgPCAoMTw8aikp
Ci0gICAgICAgICAgICBjb3N0W2ldWzE8PGpdICs9IGN1cnJfY29zdCooZmxvYXQpKE4taSkvKDE8
PGopOwotICAgICAgICAgZWxzZQotICAgICAgICAgICAgY29zdFtpXVsxPDxqXSArPSBjdXJyX2Nv
c3Q7Ci0gICAgICB9Ci0gICB9Ci0KLSAgIGJlc3Rfc3RhdGU9MTsKLSAgIGJlc3RfY29zdCA9IGNv
c3RbTi0xXVsxXTsKLSAgIC8qIEZpbmQgYmVzdCBlbmQgc3RhdGUgKGRvZXNuJ3QgZm9yY2UgYSBm
cmFtZSB0byBlbmQgYXQgTi0xKSAqLwotICAgZm9yIChpPTI7aTwxNjtpKyspCi0gICB7Ci0gICAg
ICBpZiAoY29zdFtOLTFdW2ldPGJlc3RfY29zdCkKLSAgICAgIHsKLSAgICAgICAgIGJlc3RfY29z
dCA9IGNvc3RbTi0xXVtpXTsKLSAgICAgICAgIGJlc3Rfc3RhdGUgPSBpOwotICAgICAgfQotICAg
fQotCi0gICAvKiBGb2xsb3cgdHJhbnNpdGlvbnMgYmFjayAqLwotICAgZm9yIChpPU4tMTtpPj0w
O2ktLSkKLSAgIHsKLSAgICAgIC8qcHJpbnRmKCIlZCAiLCBiZXN0X3N0YXRlKTsqLwotICAgICAg
YmVzdF9zdGF0ZSA9IHN0YXRlc1tpXVtiZXN0X3N0YXRlXTsKLSAgIH0KLSAgIC8qcHJpbnRmKCIl
ZFxuIiwgYmVzdF9zdGF0ZSk7Ki8KLSAgIHJldHVybiBiZXN0X3N0YXRlOwotfQotCi1zdGF0aWMg
aW50IG9wdGltaXplX2ZyYW1lc2l6ZShjb25zdCB2b2lkICp4LCBpbnQgbGVuLCBpbnQgQywgb3B1
c19pbnQzMiBGcywKLSAgICAgICAgICAgICAgICBpbnQgYml0cmF0ZSwgb3B1c192YWwxNiB0b25h
bGl0eSwgZmxvYXQgKm1lbSwgaW50IGJ1ZmZlcmluZywKLSAgICAgICAgICAgICAgICBkb3dubWl4
X2Z1bmMgZG93bm1peCkKLXsKLSAgIGludCBOOwotICAgaW50IGk7Ci0gICBmbG9hdCBlW01BWF9E
WU5BTUlDX0ZSQU1FU0laRSs0XTsKLSAgIGZsb2F0IGVfMVtNQVhfRFlOQU1JQ19GUkFNRVNJWkUr
M107Ci0gICBvcHVzX3ZhbDMyIG1lbXg7Ci0gICBpbnQgYmVzdExNPTA7Ci0gICBpbnQgc3ViZnJh
bWU7Ci0gICBpbnQgcG9zOwotICAgaW50IG9mZnNldDsKLSAgIFZBUkRFQ0wob3B1c192YWwzMiwg
c3ViKTsKLQotICAgc3ViZnJhbWUgPSBGcy80MDA7Ci0gICBBTExPQyhzdWIsIHN1YmZyYW1lLCBv
cHVzX3ZhbDMyKTsKLSAgIGVbMF09bWVtWzBdOwotICAgZV8xWzBdPTEuZi8oRVBTSUxPTittZW1b
MF0pOwotICAgaWYgKGJ1ZmZlcmluZykKLSAgIHsKLSAgICAgIC8qIENvbnNpZGVyIHRoZSBDRUxU
IGRlbGF5IHdoZW4gbm90IGluIHJlc3RyaWN0ZWQtbG93ZGVsYXkgKi8KLSAgICAgIC8qIFdlIGFz
c3VtZSB0aGUgYnVmZmVyaW5nIGlzIGJldHdlZW4gMi41IGFuZCA1IG1zICovCi0gICAgICBvZmZz
ZXQgPSAyKnN1YmZyYW1lIC0gYnVmZmVyaW5nOwotICAgICAgY2VsdF9hc3NlcnQob2Zmc2V0Pj0w
ICYmIG9mZnNldCA8PSBzdWJmcmFtZSk7Ci0gICAgICBsZW4gLT0gb2Zmc2V0OwotICAgICAgZVsx
XT1tZW1bMV07Ci0gICAgICBlXzFbMV09MS5mLyhFUFNJTE9OK21lbVsxXSk7Ci0gICAgICBlWzJd
PW1lbVsyXTsKLSAgICAgIGVfMVsyXT0xLmYvKEVQU0lMT04rbWVtWzJdKTsKLSAgICAgIHBvcyA9
IDM7Ci0gICB9IGVsc2UgewotICAgICAgcG9zPTE7Ci0gICAgICBvZmZzZXQ9MDsKLSAgIH0KLSAg
IE49SU1JTihsZW4vc3ViZnJhbWUsIE1BWF9EWU5BTUlDX0ZSQU1FU0laRSk7Ci0gICAvKiBKdXN0
IHNpbGVuY2luZyBhIHdhcm5pbmcsIGl0J3MgcmVhbGx5IGluaXRpYWxpemVkIGxhdGVyICovCi0g
ICBtZW14ID0gMDsKLSAgIGZvciAoaT0wO2k8TjtpKyspCi0gICB7Ci0gICAgICBmbG9hdCB0bXA7
Ci0gICAgICBvcHVzX3ZhbDMyIHRtcHg7Ci0gICAgICBpbnQgajsKLSAgICAgIHRtcD1FUFNJTE9O
OwotCi0gICAgICBkb3dubWl4KHgsIHN1Yiwgc3ViZnJhbWUsIGkqc3ViZnJhbWUrb2Zmc2V0LCAw
LCAtMiwgQyk7Ci0gICAgICBpZiAoaT09MCkKLSAgICAgICAgIG1lbXggPSBzdWJbMF07Ci0gICAg
ICBmb3IgKGo9MDtqPHN1YmZyYW1lO2orKykKLSAgICAgIHsKLSAgICAgICAgIHRtcHggPSBzdWJb
al07Ci0gICAgICAgICB0bXAgKz0gKHRtcHgtbWVteCkqKGZsb2F0KSh0bXB4LW1lbXgpOwotICAg
ICAgICAgbWVteCA9IHRtcHg7Ci0gICAgICB9Ci0gICAgICBlW2krcG9zXSA9IHRtcDsKLSAgICAg
IGVfMVtpK3Bvc10gPSAxLmYvdG1wOwotICAgfQotICAgLyogSGFjayB0byBnZXQgMjAgbXMgd29y
a2luZyB3aXRoIEFQUExJQ0FUSU9OX0FVRElPCi0gICAgICBUaGUgcmVhbCBwcm9ibGVtIGlzIHRo
YXQgdGhlIGNvcnJlc3BvbmRpbmcgbWVtb3J5IG5lZWRzIHRvIHVzZSAxLjUgbXMKLSAgICAgIGZy
b20gdGhpcyBmcmFtZSBhbmQgMSBtcyBmcm9tIHRoZSBuZXh0IGZyYW1lICovCi0gICBlW2krcG9z
XSA9IGVbaStwb3MtMV07Ci0gICBpZiAoYnVmZmVyaW5nKQotICAgICAgTj1JTUlOKE1BWF9EWU5B
TUlDX0ZSQU1FU0laRSwgTisyKTsKLSAgIGJlc3RMTSA9IHRyYW5zaWVudF92aXRlcmJpKGUsIGVf
MSwgTiwgKGludCkoKDEuZisuNWYqdG9uYWxpdHkpKig2MCpDKzQwKSksIGJpdHJhdGUvNDAwKTsK
LSAgIG1lbVswXSA9IGVbMTw8YmVzdExNXTsKLSAgIGlmIChidWZmZXJpbmcpCi0gICB7Ci0gICAg
ICBtZW1bMV0gPSBlWygxPDxiZXN0TE0pKzFdOwotICAgICAgbWVtWzJdID0gZVsoMTw8YmVzdExN
KSsyXTsKLSAgIH0KLSAgIHJldHVybiBiZXN0TE07Ci19Ci0KLSNlbmRpZgotCiAjaWZuZGVmIERJ
U0FCTEVfRkxPQVRfQVBJCiAjaWZkZWYgRklYRURfUE9JTlQKICNkZWZpbmUgUENNMlZBTCh4KSBG
TE9BVDJJTlQxNih4KQogI2Vsc2UKICNkZWZpbmUgUENNMlZBTCh4KSBTQ0FMRUlOKHgpCiAjZW5k
aWYKLXZvaWQgZG93bm1peF9mbG9hdChjb25zdCB2b2lkICpfeCwgb3B1c192YWwzMiAqc3ViLCBp
bnQgc3ViZnJhbWUsIGludCBvZmZzZXQsIGludCBjMSwgaW50IGMyLCBpbnQgQykKKwordm9pZCBk
b3dubWl4X2Zsb2F0KGNvbnN0IHZvaWQgKl94LCBvcHVzX3ZhbDMyICp5LCBpbnQgc3ViZnJhbWUs
IGludCBvZmZzZXQsIGludCBjMSwgaW50IGMyLCBpbnQgQykKIHsKICAgIGNvbnN0IGZsb2F0ICp4
OwotICAgb3B1c192YWwzMiBzY2FsZTsKICAgIGludCBqOworCiAgICB4ID0gKGNvbnN0IGZsb2F0
ICopX3g7CiAgICBmb3IgKGo9MDtqPHN1YmZyYW1lO2orKykKLSAgICAgIHN1YltqXSA9IFBDTTJW
QUwoeFsoaitvZmZzZXQpKkMrYzFdKTsKKyAgICAgIHlbal0gPSBQQ00yVkFMKHhbKGorb2Zmc2V0
KSpDK2MxXSk7CiAgICBpZiAoYzI+LTEpCiAgICB7CiAgICAgICBmb3IgKGo9MDtqPHN1YmZyYW1l
O2orKykKLSAgICAgICAgIHN1YltqXSArPSBQQ00yVkFMKHhbKGorb2Zmc2V0KSpDK2MyXSk7Cisg
ICAgICAgICB5W2pdICs9IFBDTTJWQUwoeFsoaitvZmZzZXQpKkMrYzJdKTsKICAgIH0gZWxzZSBp
ZiAoYzI9PS0yKQogICAgewogICAgICAgaW50IGM7CiAgICAgICBmb3IgKGM9MTtjPEM7YysrKQog
ICAgICAgewogICAgICAgICAgZm9yIChqPTA7ajxzdWJmcmFtZTtqKyspCi0gICAgICAgICAgICBz
dWJbal0gKz0gUENNMlZBTCh4WyhqK29mZnNldCkqQytjXSk7CisgICAgICAgICAgICB5W2pdICs9
IFBDTTJWQUwoeFsoaitvZmZzZXQpKkMrY10pOwogICAgICAgfQogICAgfQotI2lmZGVmIEZJWEVE
X1BPSU5UCi0gICBzY2FsZSA9ICgxPDxTSUdfU0hJRlQpOwotI2Vsc2UKLSAgIHNjYWxlID0gMS5m
OwotI2VuZGlmCi0gICBpZiAoQz09LTIpCi0gICAgICBzY2FsZSAvPSBDOwotICAgZWxzZQotICAg
ICAgc2NhbGUgLz0gMjsKLSAgIGZvciAoaj0wO2o8c3ViZnJhbWU7aisrKQotICAgICAgc3ViW2pd
ICo9IHNjYWxlOwogfQogI2VuZGlmCiAKLXZvaWQgZG93bm1peF9pbnQoY29uc3Qgdm9pZCAqX3gs
IG9wdXNfdmFsMzIgKnN1YiwgaW50IHN1YmZyYW1lLCBpbnQgb2Zmc2V0LCBpbnQgYzEsIGludCBj
MiwgaW50IEMpCit2b2lkIGRvd25taXhfaW50KGNvbnN0IHZvaWQgKl94LCBvcHVzX3ZhbDMyICp5
LCBpbnQgc3ViZnJhbWUsIGludCBvZmZzZXQsIGludCBjMSwgaW50IGMyLCBpbnQgQykKIHsKICAg
IGNvbnN0IG9wdXNfaW50MTYgKng7Ci0gICBvcHVzX3ZhbDMyIHNjYWxlOwogICAgaW50IGo7CisK
ICAgIHggPSAoY29uc3Qgb3B1c19pbnQxNiAqKV94OwogICAgZm9yIChqPTA7ajxzdWJmcmFtZTtq
KyspCi0gICAgICBzdWJbal0gPSB4WyhqK29mZnNldCkqQytjMV07CisgICAgICB5W2pdID0geFso
aitvZmZzZXQpKkMrYzFdOwogICAgaWYgKGMyPi0xKQogICAgewogICAgICAgZm9yIChqPTA7ajxz
dWJmcmFtZTtqKyspCi0gICAgICAgICBzdWJbal0gKz0geFsoaitvZmZzZXQpKkMrYzJdOworICAg
ICAgICAgeVtqXSArPSB4WyhqK29mZnNldCkqQytjMl07CiAgICB9IGVsc2UgaWYgKGMyPT0tMikK
ICAgIHsKICAgICAgIGludCBjOwogICAgICAgZm9yIChjPTE7YzxDO2MrKykKICAgICAgIHsKICAg
ICAgICAgIGZvciAoaj0wO2o8c3ViZnJhbWU7aisrKQotICAgICAgICAgICAgc3ViW2pdICs9IHhb
KGorb2Zmc2V0KSpDK2NdOworICAgICAgICAgICAgeVtqXSArPSB4WyhqK29mZnNldCkqQytjXTsK
ICAgICAgIH0KICAgIH0KLSNpZmRlZiBGSVhFRF9QT0lOVAotICAgc2NhbGUgPSAoMTw8U0lHX1NI
SUZUKTsKLSNlbHNlCi0gICBzY2FsZSA9IDEuZi8zMjc2ODsKLSNlbmRpZgotICAgaWYgKEM9PS0y
KQotICAgICAgc2NhbGUgLz0gQzsKLSAgIGVsc2UKLSAgICAgIHNjYWxlIC89IDI7Ci0gICBmb3Ig
KGo9MDtqPHN1YmZyYW1lO2orKykKLSAgICAgIHN1YltqXSAqPSBzY2FsZTsKIH0KIAogb3B1c19p
bnQzMiBmcmFtZV9zaXplX3NlbGVjdChvcHVzX2ludDMyIGZyYW1lX3NpemUsIGludCB2YXJpYWJs
ZV9kdXJhdGlvbiwgb3B1c19pbnQzMiBGcykKQEAgLTgxMSw1MyArNjM1LDI0IEBAIG9wdXNfaW50
MzIgZnJhbWVfc2l6ZV9zZWxlY3Qob3B1c19pbnQzMiBmcmFtZV9zaXplLCBpbnQgdmFyaWFibGVf
ZHVyYXRpb24sIG9wdXNfCiAgICAgICByZXR1cm4gLTE7CiAgICBpZiAodmFyaWFibGVfZHVyYXRp
b24gPT0gT1BVU19GUkFNRVNJWkVfQVJHKQogICAgICAgbmV3X3NpemUgPSBmcmFtZV9zaXplOwot
ICAgZWxzZSBpZiAodmFyaWFibGVfZHVyYXRpb24gPT0gT1BVU19GUkFNRVNJWkVfVkFSSUFCTEUp
Ci0gICAgICBuZXdfc2l6ZSA9IEZzLzUwOwotICAgZWxzZSBpZiAodmFyaWFibGVfZHVyYXRpb24g
Pj0gT1BVU19GUkFNRVNJWkVfMl81X01TICYmIHZhcmlhYmxlX2R1cmF0aW9uIDw9IE9QVVNfRlJB
TUVTSVpFXzYwX01TKQotICAgICAgbmV3X3NpemUgPSBJTUlOKDMqRnMvNTAsIChGcy80MDApPDwo
dmFyaWFibGVfZHVyYXRpb24tT1BVU19GUkFNRVNJWkVfMl81X01TKSk7CisgICBlbHNlIGlmICh2
YXJpYWJsZV9kdXJhdGlvbiA+PSBPUFVTX0ZSQU1FU0laRV8yXzVfTVMgJiYgdmFyaWFibGVfZHVy
YXRpb24gPD0gT1BVU19GUkFNRVNJWkVfMTIwX01TKQorICAgeworICAgICAgaWYgKHZhcmlhYmxl
X2R1cmF0aW9uIDw9IE9QVVNfRlJBTUVTSVpFXzQwX01TKQorICAgICAgICAgbmV3X3NpemUgPSAo
RnMvNDAwKTw8KHZhcmlhYmxlX2R1cmF0aW9uLU9QVVNfRlJBTUVTSVpFXzJfNV9NUyk7CisgICAg
ICBlbHNlCisgICAgICAgICBuZXdfc2l6ZSA9ICh2YXJpYWJsZV9kdXJhdGlvbi1PUFVTX0ZSQU1F
U0laRV8yXzVfTVMtMikqRnMvNTA7CisgICB9CiAgICBlbHNlCiAgICAgICByZXR1cm4gLTE7CiAg
ICBpZiAobmV3X3NpemU+ZnJhbWVfc2l6ZSkKICAgICAgIHJldHVybiAtMTsKLSAgIGlmICg0MDAq
bmV3X3NpemUhPUZzICYmIDIwMCpuZXdfc2l6ZSE9RnMgJiYgMTAwKm5ld19zaXplIT1GcyAmJgot
ICAgICAgICAgICAgNTAqbmV3X3NpemUhPUZzICYmIDI1Km5ld19zaXplIT1GcyAmJiA1MCpuZXdf
c2l6ZSE9MypGcykKKyAgIGlmICg0MDAqbmV3X3NpemUhPUZzICAgJiYgMjAwKm5ld19zaXplIT1G
cyAgICYmIDEwMCpuZXdfc2l6ZSE9RnMgICAmJgorICAgICAgICA1MCpuZXdfc2l6ZSE9RnMgICAm
JiAgMjUqbmV3X3NpemUhPUZzICAgJiYgIDUwKm5ld19zaXplIT0zKkZzICYmCisgICAgICAgIDUw
Km5ld19zaXplIT00KkZzICYmICA1MCpuZXdfc2l6ZSE9NSpGcyAmJiAgNTAqbmV3X3NpemUhPTYq
RnMpCiAgICAgICByZXR1cm4gLTE7CiAgICByZXR1cm4gbmV3X3NpemU7CiB9CiAKLW9wdXNfaW50
MzIgY29tcHV0ZV9mcmFtZV9zaXplKGNvbnN0IHZvaWQgKmFuYWx5c2lzX3BjbSwgaW50IGZyYW1l
X3NpemUsCi0gICAgICBpbnQgdmFyaWFibGVfZHVyYXRpb24sIGludCBDLCBvcHVzX2ludDMyIEZz
LCBpbnQgYml0cmF0ZV9icHMsCi0gICAgICBpbnQgZGVsYXlfY29tcGVuc2F0aW9uLCBkb3dubWl4
X2Z1bmMgZG93bm1peAotI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQotICAgICAgLCBmbG9hdCAq
c3ViZnJhbWVfbWVtCi0jZW5kaWYKLSAgICAgICkKLXsKLSNpZm5kZWYgRElTQUJMRV9GTE9BVF9B
UEkKLSAgIGlmICh2YXJpYWJsZV9kdXJhdGlvbiA9PSBPUFVTX0ZSQU1FU0laRV9WQVJJQUJMRSAm
JiBmcmFtZV9zaXplID49IEZzLzIwMCkKLSAgIHsKLSAgICAgIGludCBMTSA9IDM7Ci0gICAgICBM
TSA9IG9wdGltaXplX2ZyYW1lc2l6ZShhbmFseXNpc19wY20sIGZyYW1lX3NpemUsIEMsIEZzLCBi
aXRyYXRlX2JwcywKLSAgICAgICAgICAgIDAsIHN1YmZyYW1lX21lbSwgZGVsYXlfY29tcGVuc2F0
aW9uLCBkb3dubWl4KTsKLSAgICAgIHdoaWxlICgoRnMvNDAwPDxMTSk+ZnJhbWVfc2l6ZSkKLSAg
ICAgICAgIExNLS07Ci0gICAgICBmcmFtZV9zaXplID0gKEZzLzQwMDw8TE0pOwotICAgfSBlbHNl
Ci0jZWxzZQotICAgKHZvaWQpYW5hbHlzaXNfcGNtOwotICAgKHZvaWQpQzsKLSAgICh2b2lkKWJp
dHJhdGVfYnBzOwotICAgKHZvaWQpZGVsYXlfY29tcGVuc2F0aW9uOwotICAgKHZvaWQpZG93bm1p
eDsKLSNlbmRpZgotICAgewotICAgICAgZnJhbWVfc2l6ZSA9IGZyYW1lX3NpemVfc2VsZWN0KGZy
YW1lX3NpemUsIHZhcmlhYmxlX2R1cmF0aW9uLCBGcyk7Ci0gICB9Ci0gICBpZiAoZnJhbWVfc2l6
ZTwwKQotICAgICAgcmV0dXJuIC0xOwotICAgcmV0dXJuIGZyYW1lX3NpemU7Ci19Ci0KIG9wdXNf
dmFsMTYgY29tcHV0ZV9zdGVyZW9fd2lkdGgoY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJh
bWVfc2l6ZSwgb3B1c19pbnQzMiBGcywgU3RlcmVvV2lkdGhTdGF0ZSAqbWVtKQogewogICAgb3B1
c192YWwzMiB4eCwgeHksIHl5OwpAQCAtOTM0LDYgKzcyOSwzNDcgQEAgb3B1c192YWwxNiBjb21w
dXRlX3N0ZXJlb193aWR0aChjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV9zaXplLCBv
cHVzX2ludDMKICAgIHJldHVybiBFWFRSQUNUMTYoTUlOMzIoUTE1T05FLCBNVUxUMTZfMTYoMjAs
IG1lbS0+bWF4X2ZvbGxvd2VyKSkpOwogfQogCitzdGF0aWMgaW50IGRlY2lkZV9mZWMoaW50IHVz
ZUluQmFuZEZFQywgaW50IFBhY2tldExvc3NfcGVyYywgaW50IGxhc3RfZmVjLCBpbnQgbW9kZSwg
aW50ICpiYW5kd2lkdGgsIG9wdXNfaW50MzIgcmF0ZSkKK3sKKyAgIGludCBvcmlnX2JhbmR3aWR0
aDsKKyAgIGlmICghdXNlSW5CYW5kRkVDIHx8IFBhY2tldExvc3NfcGVyYyA9PSAwIHx8IG1vZGUg
PT0gTU9ERV9DRUxUX09OTFkpCisgICAgICByZXR1cm4gMDsKKyAgIG9yaWdfYmFuZHdpZHRoID0g
KmJhbmR3aWR0aDsKKyAgIGZvciAoOzspCisgICB7CisgICAgICBvcHVzX2ludDMyIGh5c3RlcmVz
aXM7CisgICAgICBvcHVzX2ludDMyIExCUlJfcmF0ZV90aHJlc19icHM7CisgICAgICAvKiBDb21w
dXRlIHRocmVzaG9sZCBmb3IgdXNpbmcgRkVDIGF0IHRoZSBjdXJyZW50IGJhbmR3aWR0aCBzZXR0
aW5nICovCisgICAgICBMQlJSX3JhdGVfdGhyZXNfYnBzID0gZmVjX3RocmVzaG9sZHNbMiooKmJh
bmR3aWR0aCAtIE9QVVNfQkFORFdJRFRIX05BUlJPV0JBTkQpXTsKKyAgICAgIGh5c3RlcmVzaXMg
PSBmZWNfdGhyZXNob2xkc1syKigqYmFuZHdpZHRoIC0gT1BVU19CQU5EV0lEVEhfTkFSUk9XQkFO
RCkgKyAxXTsKKyAgICAgIGlmIChsYXN0X2ZlYyA9PSAxKSBMQlJSX3JhdGVfdGhyZXNfYnBzIC09
IGh5c3RlcmVzaXM7CisgICAgICBpZiAobGFzdF9mZWMgPT0gMCkgTEJSUl9yYXRlX3RocmVzX2Jw
cyArPSBoeXN0ZXJlc2lzOworICAgICAgTEJSUl9yYXRlX3RocmVzX2JwcyA9IHNpbGtfU01VTFdC
KCBzaWxrX01VTCggTEJSUl9yYXRlX3RocmVzX2JwcywKKyAgICAgICAgICAgIDEyNSAtIHNpbGtf
bWluKCBQYWNrZXRMb3NzX3BlcmMsIDI1ICkgKSwgU0lMS19GSVhfQ09OU1QoIDAuMDEsIDE2ICkg
KTsKKyAgICAgIC8qIElmIGxvc3MgPD0gNSUsIHdlIGxvb2sgYXQgd2hldGhlciB3ZSBoYXZlIGVu
b3VnaCByYXRlIHRvIGVuYWJsZSBGRUMuCisgICAgICAgICBJZiBsb3NzID4gNSUsIHdlIGRlY3Jl
YXNlIHRoZSBiYW5kd2lkdGggdW50aWwgd2UgY2FuIGVuYWJsZSBGRUMuICovCisgICAgICBpZiAo
cmF0ZSA+IExCUlJfcmF0ZV90aHJlc19icHMpCisgICAgICAgICByZXR1cm4gMTsKKyAgICAgIGVs
c2UgaWYgKFBhY2tldExvc3NfcGVyYyA8PSA1KQorICAgICAgICAgcmV0dXJuIDA7CisgICAgICBl
bHNlIGlmICgqYmFuZHdpZHRoID4gT1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORCkKKyAgICAgICAg
ICgqYmFuZHdpZHRoKS0tOworICAgICAgZWxzZQorICAgICAgICAgYnJlYWs7CisgICB9CisgICAv
KiBDb3VsZG4ndCBmaW5kIGFueSBiYW5kd2lkdGggdG8gZW5hYmxlIEZFQywga2VlcCBvcmlnaW5h
bCBiYW5kd2lkdGguICovCisgICAqYmFuZHdpZHRoID0gb3JpZ19iYW5kd2lkdGg7CisgICByZXR1
cm4gMDsKK30KKworc3RhdGljIGludCBjb21wdXRlX3NpbGtfcmF0ZV9mb3JfaHlicmlkKGludCBy
YXRlLCBpbnQgYmFuZHdpZHRoLCBpbnQgZnJhbWUyMG1zLCBpbnQgdmJyLCBpbnQgZmVjKSB7Cisg
ICBpbnQgZW50cnk7CisgICBpbnQgaTsKKyAgIGludCBOOworICAgaW50IHNpbGtfcmF0ZTsKKyAg
IHN0YXRpYyBpbnQgcmF0ZV90YWJsZVtdWzVdID0geworICAvKiAgfHRvdGFsfCB8LS0tLS0tLS0g
U0lMSy0tLS0tLS0tLS0tLXwKKyAgICAgICAgICAgICAgfC0tIE5vIEZFQyAtfCB8LS0tIEZFQyAt
LS18CisgICAgICAgICAgICAgICAxMG1zICAgMjBtcyAgIDEwbXMgICAyMG1zICovCisgICAgICB7
ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwfSwKKyAgICAgIHsxMjAwMCwgMTAwMDAs
IDEwMDAwLCAxMTAwMCwgMTEwMDB9LAorICAgICAgezE2MDAwLCAxMzUwMCwgMTM1MDAsIDE1MDAw
LCAxNTAwMH0sCisgICAgICB7MjAwMDAsIDE2MDAwLCAxNjAwMCwgMTgwMDAsIDE4MDAwfSwKKyAg
ICAgIHsyNDAwMCwgMTgwMDAsIDE4MDAwLCAyMTAwMCwgMjEwMDB9LAorICAgICAgezMyMDAwLCAy
MjAwMCwgMjIwMDAsIDI4MDAwLCAyODAwMH0sCisgICAgICB7NjQwMDAsIDM4MDAwLCAzODAwMCwg
NTAwMDAsIDUwMDAwfQorICAgfTsKKyAgIGVudHJ5ID0gMSArIGZyYW1lMjBtcyArIDIqZmVjOwor
ICAgTiA9IHNpemVvZihyYXRlX3RhYmxlKS9zaXplb2YocmF0ZV90YWJsZVswXSk7CisgICBmb3Ig
KGk9MTtpPE47aSsrKQorICAgeworICAgICAgaWYgKHJhdGVfdGFibGVbaV1bMF0gPiByYXRlKSBi
cmVhazsKKyAgIH0KKyAgIGlmIChpID09IE4pCisgICB7CisgICAgICBzaWxrX3JhdGUgPSByYXRl
X3RhYmxlW2ktMV1bZW50cnldOworICAgICAgLyogRm9yIG5vdywganVzdCBnaXZlIDUwJSBvZiB0
aGUgZXh0cmEgYml0cyB0byBTSUxLLiAqLworICAgICAgc2lsa19yYXRlICs9IChyYXRlLXJhdGVf
dGFibGVbaS0xXVswXSkvMjsKKyAgIH0gZWxzZSB7CisgICAgICBvcHVzX2ludDMyIGxvLCBoaSwg
eDAsIHgxOworICAgICAgbG8gPSByYXRlX3RhYmxlW2ktMV1bZW50cnldOworICAgICAgaGkgPSBy
YXRlX3RhYmxlW2ldW2VudHJ5XTsKKyAgICAgIHgwID0gcmF0ZV90YWJsZVtpLTFdWzBdOworICAg
ICAgeDEgPSByYXRlX3RhYmxlW2ldWzBdOworICAgICAgc2lsa19yYXRlID0gKGxvKih4MS1yYXRl
KSArIGhpKihyYXRlLXgwKSkvKHgxLXgwKTsKKyAgIH0KKyAgIGlmICghdmJyKQorICAgeworICAg
ICAgLyogVGlueSBib29zdCB0byBTSUxLIGZvciBDQlIuIFdlIHNob3VsZCBwcm9iYWJseSB0dW5l
IHRoaXMgYmV0dGVyLiAqLworICAgICAgc2lsa19yYXRlICs9IDEwMDsKKyAgIH0KKyAgIGlmIChi
YW5kd2lkdGg9PU9QVVNfQkFORFdJRFRIX1NVUEVSV0lERUJBTkQpCisgICAgICBzaWxrX3JhdGUg
Kz0gMzAwOworICAgcmV0dXJuIHNpbGtfcmF0ZTsKK30KKworLyogUmV0dXJucyB0aGUgZXF1aXZh
bGVudCBiaXRyYXRlIGNvcnJlc3BvbmRpbmcgdG8gMjAgbXMgZnJhbWVzLAorICAgY29tcGxleGl0
eSAxMCBWQlIgb3BlcmF0aW9uLiAqLworc3RhdGljIG9wdXNfaW50MzIgY29tcHV0ZV9lcXVpdl9y
YXRlKG9wdXNfaW50MzIgYml0cmF0ZSwgaW50IGNoYW5uZWxzLAorICAgICAgaW50IGZyYW1lX3Jh
dGUsIGludCB2YnIsIGludCBtb2RlLCBpbnQgY29tcGxleGl0eSwgaW50IGxvc3MpCit7CisgICBv
cHVzX2ludDMyIGVxdWl2OworICAgZXF1aXYgPSBiaXRyYXRlOworICAgLyogVGFrZSBpbnRvIGFj
Y291bnQgb3ZlcmhlYWQgZnJvbSBzbWFsbGVyIGZyYW1lcy4gKi8KKyAgIGVxdWl2IC09ICg0MCpj
aGFubmVscysyMCkqKGZyYW1lX3JhdGUgLSA1MCk7CisgICAvKiBDQlIgaXMgYWJvdXQgYSA4JSBw
ZW5hbHR5IGZvciBib3RoIFNJTEsgYW5kIENFTFQuICovCisgICBpZiAoIXZicikKKyAgICAgIGVx
dWl2IC09IGVxdWl2LzEyOworICAgLyogQ29tcGxleGl0eSBtYWtlcyBhYm91dCAxMCUgZGlmZmVy
ZW5jZSAoZnJvbSAwIHRvIDEwKSBpbiBnZW5lcmFsLiAqLworICAgZXF1aXYgPSBlcXVpdiAqICg5
MCtjb21wbGV4aXR5KS8xMDA7CisgICBpZiAobW9kZSA9PSBNT0RFX1NJTEtfT05MWSB8fCBtb2Rl
ID09IE1PREVfSFlCUklEKQorICAgeworICAgICAgLyogU0lMSyBjb21wbGV4aXR5IDAtMSB1c2Vz
IHRoZSBub24tZGVsYXllZC1kZWNpc2lvbiBOU1EsIHdoaWNoCisgICAgICAgICBjb3N0cyBhYm91
dCAyMCUuICovCisgICAgICBpZiAoY29tcGxleGl0eTwyKQorICAgICAgICAgZXF1aXYgPSBlcXVp
dio0LzU7CisgICAgICBlcXVpdiAtPSBlcXVpdipsb3NzLyg2Kmxvc3MgKyAxMCk7CisgICB9IGVs
c2UgaWYgKG1vZGUgPT0gTU9ERV9DRUxUX09OTFkpIHsKKyAgICAgIC8qIENFTFQgY29tcGxleGl0
eSAwLTQgZG9lc24ndCBoYXZlIHRoZSBwaXRjaCBmaWx0ZXIsIHdoaWNoIGNvc3RzCisgICAgICAg
ICBhYm91dCAxMCUuICovCisgICAgICBpZiAoY29tcGxleGl0eTw1KQorICAgICAgICAgZXF1aXYg
PSBlcXVpdio5LzEwOworICAgfSBlbHNlIHsKKyAgICAgIC8qIE1vZGUgbm90IGtub3duIHlldCAq
LworICAgICAgLyogSGFsZiB0aGUgU0lMSyBsb3NzKi8KKyAgICAgIGVxdWl2IC09IGVxdWl2Kmxv
c3MvKDEyKmxvc3MgKyAyMCk7CisgICB9CisgICByZXR1cm4gZXF1aXY7Cit9CisKKyNpZm5kZWYg
RElTQUJMRV9GTE9BVF9BUEkKKworc3RhdGljIGludCBpc19kaWdpdGFsX3NpbGVuY2UoY29uc3Qg
b3B1c192YWwxNiogcGNtLCBpbnQgZnJhbWVfc2l6ZSwgaW50IGNoYW5uZWxzLCBpbnQgbHNiX2Rl
cHRoKQoreworICAgaW50IHNpbGVuY2UgPSAwOworICAgb3B1c192YWwzMiBzYW1wbGVfbWF4ID0g
MDsKKyNpZmRlZiBNTFBfVFJBSU5JTkcKKyAgIHJldHVybiAwOworI2VuZGlmCisgICBzYW1wbGVf
bWF4ID0gY2VsdF9tYXhhYnMxNihwY20sIGZyYW1lX3NpemUqY2hhbm5lbHMpOworCisjaWZkZWYg
RklYRURfUE9JTlQKKyAgIHNpbGVuY2UgPSAoc2FtcGxlX21heCA9PSAwKTsKKyAgICh2b2lkKWxz
Yl9kZXB0aDsKKyNlbHNlCisgICBzaWxlbmNlID0gKHNhbXBsZV9tYXggPD0gKG9wdXNfdmFsMTYp
IDEgLyAoMSA8PCBsc2JfZGVwdGgpKTsKKyNlbmRpZgorCisgICByZXR1cm4gc2lsZW5jZTsKK30K
KworI2lmZGVmIEZJWEVEX1BPSU5UCitzdGF0aWMgb3B1c192YWwzMiBjb21wdXRlX2ZyYW1lX2Vu
ZXJneShjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV9zaXplLCBpbnQgY2hhbm5lbHMs
IGludCBhcmNoKQoreworICAgaW50IGk7CisgICBvcHVzX3ZhbDMyIHNhbXBsZV9tYXg7CisgICBp
bnQgbWF4X3NoaWZ0OworICAgaW50IHNoaWZ0OworICAgb3B1c192YWwzMiBlbmVyZ3kgPSAwOwor
ICAgaW50IGxlbiA9IGZyYW1lX3NpemUqY2hhbm5lbHM7CisgICAodm9pZClhcmNoOworICAgLyog
TWF4IGFtcGxpdHVkZSBpbiB0aGUgc2lnbmFsICovCisgICBzYW1wbGVfbWF4ID0gY2VsdF9tYXhh
YnMxNihwY20sIGxlbik7CisKKyAgIC8qIENvbXB1dGUgdGhlIHJpZ2h0IHNoaWZ0IHJlcXVpcmVk
IGluIHRoZSBNQUMgdG8gYXZvaWQgYW4gb3ZlcmZsb3cgKi8KKyAgIG1heF9zaGlmdCA9IGNlbHRf
aWxvZzIobGVuKTsKKyAgIHNoaWZ0ID0gSU1BWCgwLCAoY2VsdF9pbG9nMihzYW1wbGVfbWF4KSA8
PCAxKSArIG1heF9zaGlmdCAtIDI4KTsKKworICAgLyogQ29tcHV0ZSB0aGUgZW5lcmd5ICovCisg
ICBmb3IgKGk9MDsgaTxsZW47IGkrKykKKyAgICAgIGVuZXJneSArPSBTSFIzMihNVUxUMTZfMTYo
cGNtW2ldLCBwY21baV0pLCBzaGlmdCk7CisKKyAgIC8qIE5vcm1hbGl6ZSBlbmVyZ3kgYnkgdGhl
IGZyYW1lIHNpemUgYW5kIGxlZnQtc2hpZnQgYmFjayB0byB0aGUgb3JpZ2luYWwgcG9zaXRpb24g
Ki8KKyAgIGVuZXJneSAvPSBsZW47CisgICBlbmVyZ3kgPSBTSEwzMihlbmVyZ3ksIHNoaWZ0KTsK
KworICAgcmV0dXJuIGVuZXJneTsKK30KKyNlbHNlCitzdGF0aWMgb3B1c192YWwzMiBjb21wdXRl
X2ZyYW1lX2VuZXJneShjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV9zaXplLCBpbnQg
Y2hhbm5lbHMsIGludCBhcmNoKQoreworICAgaW50IGxlbiA9IGZyYW1lX3NpemUqY2hhbm5lbHM7
CisgICByZXR1cm4gY2VsdF9pbm5lcl9wcm9kKHBjbSwgcGNtLCBsZW4sIGFyY2gpL2xlbjsKK30K
KyNlbmRpZgorCisvKiBEZWNpZGVzIGlmIERUWCBzaG91bGQgYmUgdHVybmVkIG9uICg9MSkgb3Ig
b2ZmICg9MCkgKi8KK3N0YXRpYyBpbnQgZGVjaWRlX2R0eF9tb2RlKGZsb2F0IGFjdGl2aXR5X3By
b2JhYmlsaXR5LCAgICAvKiBwcm9iYWJpbGl0eSB0aGF0IGN1cnJlbnQgZnJhbWUgY29udGFpbnMg
c3BlZWNoL211c2ljICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKm5iX25vX2Fj
dGl2aXR5X2ZyYW1lcywgICAgLyogbnVtYmVyIG9mIGNvbnNlY3V0aXZlIGZyYW1lcyB3aXRoIG5v
IGFjdGl2aXR5ICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHVzX3ZhbDMyIHBlYWtf
c2lnbmFsX2VuZXJneSwgLyogcGVhayBlbmVyZ3kgb2YgZGVzaXJlZCBzaWduYWwgZGV0ZWN0ZWQg
c28gZmFyICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBvcHVzX3ZhbDE2ICpw
Y20sICAgICAgICAgLyogaW5wdXQgcGNtIHNpZ25hbCAqLworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IGZyYW1lX3NpemUsICAgICAgICAgICAgICAgIC8qIGZyYW1lIHNpemUgKi8KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGludCBjaGFubmVscywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCBpc19zaWxlbmNlLCAgICAgICAgICAgICAgICAgLyogb25seSBkaWdpdGFs
IHNpbGVuY2UgZGV0ZWN0ZWQgaW4gdGhpcyBmcmFtZSAqLworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IGFyY2gKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKQoreworICAgb3B1c192
YWwzMiBub2lzZV9lbmVyZ3k7CisKKyAgIGlmICghaXNfc2lsZW5jZSkKKyAgIHsKKyAgICAgIGlm
IChhY3Rpdml0eV9wcm9iYWJpbGl0eSA8IERUWF9BQ1RJVklUWV9USFJFU0hPTEQpICAvKiBpcyBu
b2lzZSAqLworICAgICAgeworICAgICAgICAgbm9pc2VfZW5lcmd5ID0gY29tcHV0ZV9mcmFtZV9l
bmVyZ3kocGNtLCBmcmFtZV9zaXplLCBjaGFubmVscywgYXJjaCk7CisKKyAgICAgICAgIC8qIGJ1
dCBpcyBzdWZmaWNpZW50bHkgcXVpZXQgKi8KKyAgICAgICAgIGlzX3NpbGVuY2UgPSBwZWFrX3Np
Z25hbF9lbmVyZ3kgPj0gKFBTRVVET19TTlJfVEhSRVNIT0xEICogbm9pc2VfZW5lcmd5KTsKKyAg
ICAgIH0KKyAgIH0KKworICAgaWYgKGlzX3NpbGVuY2UpCisgICB7CisgICAgICAvKiBUaGUgbnVt
YmVyIG9mIGNvbnNlY3V0aXZlIERUWCBmcmFtZXMgc2hvdWxkIGJlIHdpdGhpbiB0aGUgYWxsb3dl
ZCBib3VuZHMgKi8KKyAgICAgICgqbmJfbm9fYWN0aXZpdHlfZnJhbWVzKSsrOworCisgICAgICBp
ZiAoKm5iX25vX2FjdGl2aXR5X2ZyYW1lcyA+IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCkK
KyAgICAgIHsKKyAgICAgICAgIGlmICgqbmJfbm9fYWN0aXZpdHlfZnJhbWVzIDw9IChOQl9TUEVF
Q0hfRlJBTUVTX0JFRk9SRV9EVFggKyBNQVhfQ09OU0VDVVRJVkVfRFRYKSkKKyAgICAgICAgICAg
IC8qIFZhbGlkIGZyYW1lIGZvciBEVFghICovCisgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgICgqbmJfbm9fYWN0aXZpdHlfZnJhbWVzKSA9IE5CX1NQRUVD
SF9GUkFNRVNfQkVGT1JFX0RUWDsKKyAgICAgIH0KKyAgIH0gZWxzZQorICAgICAgKCpuYl9ub19h
Y3Rpdml0eV9mcmFtZXMpID0gMDsKKworICAgcmV0dXJuIDA7Cit9CisKKyNlbmRpZgorCitzdGF0
aWMgb3B1c19pbnQzMiBlbmNvZGVfbXVsdGlmcmFtZV9wYWNrZXQoT3B1c0VuY29kZXIgKnN0LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG9wdXNfdmFs
MTYgKnBjbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
bmJfZnJhbWVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dCBmcmFtZV9zaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVuc2lnbmVkIGNoYXIgKmRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgb3B1c19pbnQzMiBvdXRfZGF0YV9ieXRlcywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQgdG9fY2VsdCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQgbHNiX2RlcHRoLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGludCBmbG9hdF9hcGkpCit7CisgICBpbnQgaTsKKyAg
IGludCByZXQgPSAwOworICAgVkFSREVDTCh1bnNpZ25lZCBjaGFyLCB0bXBfZGF0YSk7CisgICBp
bnQgYmFrX21vZGUsIGJha19iYW5kd2lkdGgsIGJha19jaGFubmVscywgYmFrX3RvX21vbm87Cisg
ICBWQVJERUNMKE9wdXNSZXBhY2tldGl6ZXIsIHJwKTsKKyAgIGludCBtYXhfaGVhZGVyX2J5dGVz
OworICAgb3B1c19pbnQzMiBieXRlc19wZXJfZnJhbWU7CisgICBvcHVzX2ludDMyIGNicl9ieXRl
czsKKyAgIG9wdXNfaW50MzIgcmVwYWNrZXRpemVfbGVuOworICAgaW50IHRtcF9sZW47CisgICBB
TExPQ19TVEFDSzsKKworICAgLyogV29yc3QgY2FzZXM6CisgICAgKiAyIGZyYW1lczogQ29kZSAy
IHdpdGggZGlmZmVyZW50IGNvbXByZXNzZWQgc2l6ZXMKKyAgICAqID4yIGZyYW1lczogQ29kZSAz
IFZCUiAqLworICAgbWF4X2hlYWRlcl9ieXRlcyA9IG5iX2ZyYW1lcyA9PSAyID8gMyA6ICgyKyhu
Yl9mcmFtZXMtMSkqMik7CisKKyAgIGlmIChzdC0+dXNlX3ZiciB8fCBzdC0+dXNlcl9iaXRyYXRl
X2Jwcz09T1BVU19CSVRSQVRFX01BWCkKKyAgICAgIHJlcGFja2V0aXplX2xlbiA9IG91dF9kYXRh
X2J5dGVzOworICAgZWxzZSB7CisgICAgICBjYnJfYnl0ZXMgPSAzKnN0LT5iaXRyYXRlX2Jwcy8o
Myo4KnN0LT5Gcy8oZnJhbWVfc2l6ZSpuYl9mcmFtZXMpKTsKKyAgICAgIHJlcGFja2V0aXplX2xl
biA9IElNSU4oY2JyX2J5dGVzLCBvdXRfZGF0YV9ieXRlcyk7CisgICB9CisgICBieXRlc19wZXJf
ZnJhbWUgPSBJTUlOKDEyNzYsIDErKHJlcGFja2V0aXplX2xlbi1tYXhfaGVhZGVyX2J5dGVzKS9u
Yl9mcmFtZXMpOworCisgICBBTExPQyh0bXBfZGF0YSwgbmJfZnJhbWVzKmJ5dGVzX3Blcl9mcmFt
ZSwgdW5zaWduZWQgY2hhcik7CisgICBBTExPQyhycCwgMSwgT3B1c1JlcGFja2V0aXplcik7Cisg
ICBvcHVzX3JlcGFja2V0aXplcl9pbml0KHJwKTsKKworICAgYmFrX21vZGUgPSBzdC0+dXNlcl9m
b3JjZWRfbW9kZTsKKyAgIGJha19iYW5kd2lkdGggPSBzdC0+dXNlcl9iYW5kd2lkdGg7CisgICBi
YWtfY2hhbm5lbHMgPSBzdC0+Zm9yY2VfY2hhbm5lbHM7CisKKyAgIHN0LT51c2VyX2ZvcmNlZF9t
b2RlID0gc3QtPm1vZGU7CisgICBzdC0+dXNlcl9iYW5kd2lkdGggPSBzdC0+YmFuZHdpZHRoOwor
ICAgc3QtPmZvcmNlX2NoYW5uZWxzID0gc3QtPnN0cmVhbV9jaGFubmVsczsKKworICAgYmFrX3Rv
X21vbm8gPSBzdC0+c2lsa19tb2RlLnRvTW9ubzsKKyAgIGlmIChiYWtfdG9fbW9ubykKKyAgICAg
IHN0LT5mb3JjZV9jaGFubmVscyA9IDE7CisgICBlbHNlCisgICAgICBzdC0+cHJldl9jaGFubmVs
cyA9IHN0LT5zdHJlYW1fY2hhbm5lbHM7CisKKyAgIGZvciAoaT0wO2k8bmJfZnJhbWVzO2krKykK
KyAgIHsKKyAgICAgIHN0LT5zaWxrX21vZGUudG9Nb25vID0gMDsKKyAgICAgIHN0LT5ub25maW5h
bF9mcmFtZSA9IGk8KG5iX2ZyYW1lcy0xKTsKKworICAgICAgLyogV2hlbiBzd2l0Y2hpbmcgZnJv
bSBTSUxLL0h5YnJpZCB0byBDRUxULCBvbmx5IGFzayBmb3IgYSBzd2l0Y2ggYXQgdGhlIGxhc3Qg
ZnJhbWUgKi8KKyAgICAgIGlmICh0b19jZWx0ICYmIGk9PW5iX2ZyYW1lcy0xKQorICAgICAgICAg
c3QtPnVzZXJfZm9yY2VkX21vZGUgPSBNT0RFX0NFTFRfT05MWTsKKworICAgICAgdG1wX2xlbiA9
IG9wdXNfZW5jb2RlX25hdGl2ZShzdCwgcGNtK2kqKHN0LT5jaGFubmVscypmcmFtZV9zaXplKSwg
ZnJhbWVfc2l6ZSwKKyAgICAgICAgIHRtcF9kYXRhK2kqYnl0ZXNfcGVyX2ZyYW1lLCBieXRlc19w
ZXJfZnJhbWUsIGxzYl9kZXB0aCwgTlVMTCwgMCwgMCwgMCwgMCwKKyAgICAgICAgIE5VTEwsIGZs
b2F0X2FwaSk7CisKKyAgICAgIGlmICh0bXBfbGVuPDApCisgICAgICB7CisgICAgICAgICBSRVNU
T1JFX1NUQUNLOworICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJOQUxfRVJST1I7CisgICAgICB9
CisKKyAgICAgIHJldCA9IG9wdXNfcmVwYWNrZXRpemVyX2NhdChycCwgdG1wX2RhdGEraSpieXRl
c19wZXJfZnJhbWUsIHRtcF9sZW4pOworCisgICAgICBpZiAocmV0PDApCisgICAgICB7CisgICAg
ICAgICBSRVNUT1JFX1NUQUNLOworICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJOQUxfRVJST1I7
CisgICAgICB9CisgICB9CisKKyAgIHJldCA9IG9wdXNfcmVwYWNrZXRpemVyX291dF9yYW5nZV9p
bXBsKHJwLCAwLCBuYl9mcmFtZXMsIGRhdGEsIHJlcGFja2V0aXplX2xlbiwgMCwgIXN0LT51c2Vf
dmJyKTsKKworICAgaWYgKHJldDwwKQorICAgeworICAgICAgUkVTVE9SRV9TVEFDSzsKKyAgICAg
IHJldHVybiBPUFVTX0lOVEVSTkFMX0VSUk9SOworICAgfQorCisgICAvKiBEaXNjYXJkIGNvbmZp
Z3MgdGhhdCB3ZXJlIGZvcmNlZCBsb2NhbGx5IGZvciB0aGUgcHVycG9zZSBvZiByZXBhY2tldGl6
YXRpb24gKi8KKyAgIHN0LT51c2VyX2ZvcmNlZF9tb2RlID0gYmFrX21vZGU7CisgICBzdC0+dXNl
cl9iYW5kd2lkdGggPSBiYWtfYmFuZHdpZHRoOworICAgc3QtPmZvcmNlX2NoYW5uZWxzID0gYmFr
X2NoYW5uZWxzOworICAgc3QtPnNpbGtfbW9kZS50b01vbm8gPSBiYWtfdG9fbW9ubzsKKworICAg
UkVTVE9SRV9TVEFDSzsKKyAgIHJldHVybiByZXQ7Cit9CisKK3N0YXRpYyBpbnQgY29tcHV0ZV9y
ZWR1bmRhbmN5X2J5dGVzKG9wdXNfaW50MzIgbWF4X2RhdGFfYnl0ZXMsIG9wdXNfaW50MzIgYml0
cmF0ZV9icHMsIGludCBmcmFtZV9yYXRlLCBpbnQgY2hhbm5lbHMpCit7CisgICBpbnQgcmVkdW5k
YW5jeV9ieXRlc19jYXA7CisgICBpbnQgcmVkdW5kYW5jeV9ieXRlczsKKyAgIG9wdXNfaW50MzIg
cmVkdW5kYW5jeV9yYXRlOworICAgaW50IGJhc2VfYml0czsKKyAgIG9wdXNfaW50MzIgYXZhaWxh
YmxlX2JpdHM7CisgICBiYXNlX2JpdHMgPSAoNDAqY2hhbm5lbHMrMjApOworCisgICAvKiBFcXVp
dmFsZW50IHJhdGUgZm9yIDUgbXMgZnJhbWVzLiAqLworICAgcmVkdW5kYW5jeV9yYXRlID0gYml0
cmF0ZV9icHMgKyBiYXNlX2JpdHMqKDIwMCAtIGZyYW1lX3JhdGUpOworICAgLyogRm9yIFZCUiwg
ZnVydGhlciBpbmNyZWFzZSB0aGUgYml0cmF0ZSBpZiB3ZSBjYW4gYWZmb3JkIGl0LiBJdCdzIHBy
ZXR0eSBzaG9ydAorICAgICAgYW5kIHdlJ2xsIGF2b2lkIGFydGVmYWN0cy4gKi8KKyAgIHJlZHVu
ZGFuY3lfcmF0ZSA9IDMqcmVkdW5kYW5jeV9yYXRlLzI7CisgICByZWR1bmRhbmN5X2J5dGVzID0g
cmVkdW5kYW5jeV9yYXRlLzE2MDA7CisKKyAgIC8qIENvbXB1dGUgdGhlIG1heCByYXRlIHdlIGNh
biB1c2UgZ2l2ZW4gQ0JSIG9yIFZCUiB3aXRoIGNhcC4gKi8KKyAgIGF2YWlsYWJsZV9iaXRzID0g
bWF4X2RhdGFfYnl0ZXMqOCAtIDIqYmFzZV9iaXRzOworICAgcmVkdW5kYW5jeV9ieXRlc19jYXAg
PSAoYXZhaWxhYmxlX2JpdHMqMjQwLygyNDArNDgwMDAvZnJhbWVfcmF0ZSkgKyBiYXNlX2JpdHMp
Lzg7CisgICByZWR1bmRhbmN5X2J5dGVzID0gSU1JTihyZWR1bmRhbmN5X2J5dGVzLCByZWR1bmRh
bmN5X2J5dGVzX2NhcCk7CisgICAvKiBJdCB3ZSBjYW4ndCBnZXQgZW5vdWdoIGJpdHMgZm9yIHJl
ZHVuZGFuY3kgdG8gYmUgd29ydGggaXQsIHJlbHkgb24gdGhlIGRlY29kZXIgUExDLiAqLworICAg
aWYgKHJlZHVuZGFuY3lfYnl0ZXMgPiA0ICsgOCpjaGFubmVscykKKyAgICAgIHJlZHVuZGFuY3lf
Ynl0ZXMgPSBJTUlOKDI1NywgcmVkdW5kYW5jeV9ieXRlcyk7CisgICBlbHNlCisgICAgICByZWR1
bmRhbmN5X2J5dGVzID0gMDsKKyAgIHJldHVybiByZWR1bmRhbmN5X2J5dGVzOworfQorCiBvcHVz
X2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFs
MTYgKnBjbSwgaW50IGZyYW1lX3NpemUsCiAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAq
ZGF0YSwgb3B1c19pbnQzMiBvdXRfZGF0YV9ieXRlcywgaW50IGxzYl9kZXB0aCwKICAgICAgICAg
ICAgICAgICBjb25zdCB2b2lkICphbmFseXNpc19wY20sIG9wdXNfaW50MzIgYW5hbHlzaXNfc2l6
ZSwgaW50IGMxLCBpbnQgYzIsCkBAIC05NzEsNiArMTEwNyw3IEBAIG9wdXNfaW50MzIgb3B1c19l
bmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQg
ZnJhbWVfCiAgICAgQW5hbHlzaXNJbmZvIGFuYWx5c2lzX2luZm87CiAgICAgaW50IGFuYWx5c2lz
X3JlYWRfcG9zX2Jhaz0tMTsKICAgICBpbnQgYW5hbHlzaXNfcmVhZF9zdWJmcmFtZV9iYWs9LTE7
CisgICAgaW50IGlzX3NpbGVuY2UgPSAwOwogI2VuZGlmCiAgICAgVkFSREVDTChvcHVzX3ZhbDE2
LCB0bXBfcHJlZmlsbCk7CiAKQEAgLTk3OSwxNSArMTExNiwxOSBAQCBvcHVzX2ludDMyIG9wdXNf
ZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50
IGZyYW1lXwogICAgIG1heF9kYXRhX2J5dGVzID0gSU1JTigxMjc2LCBvdXRfZGF0YV9ieXRlcyk7
CiAKICAgICBzdC0+cmFuZ2VGaW5hbCA9IDA7Ci0gICAgaWYgKCghc3QtPnZhcmlhYmxlX2R1cmF0
aW9uICYmIDQwMCpmcmFtZV9zaXplICE9IHN0LT5GcyAmJiAyMDAqZnJhbWVfc2l6ZSAhPSBzdC0+
RnMgJiYgMTAwKmZyYW1lX3NpemUgIT0gc3QtPkZzICYmCi0gICAgICAgICA1MCpmcmFtZV9zaXpl
ICE9IHN0LT5GcyAmJiAgMjUqZnJhbWVfc2l6ZSAhPSBzdC0+RnMgJiYgIDUwKmZyYW1lX3NpemUg
IT0gMypzdC0+RnMpCi0gICAgICAgICB8fCAoNDAwKmZyYW1lX3NpemUgPCBzdC0+RnMpCi0gICAg
ICAgICB8fCBtYXhfZGF0YV9ieXRlczw9MAotICAgICAgICAgKQorICAgIGlmIChmcmFtZV9zaXpl
IDw9IDAgfHwgbWF4X2RhdGFfYnl0ZXMgPD0gMCkKICAgICB7CiAgICAgICAgUkVTVE9SRV9TVEFD
SzsKICAgICAgICByZXR1cm4gT1BVU19CQURfQVJHOwogICAgIH0KKworICAgIC8qIENhbm5vdCBl
bmNvZGUgMTAwIG1zIGluIDEgYnl0ZSAqLworICAgIGlmIChtYXhfZGF0YV9ieXRlcz09MSAmJiBz
dC0+RnM9PShmcmFtZV9zaXplKjEwKSkKKyAgICB7CisgICAgICBSRVNUT1JFX1NUQUNLOworICAg
ICAgcmV0dXJuIE9QVVNfQlVGRkVSX1RPT19TTUFMTDsKKyAgICB9CisKICAgICBzaWxrX2VuYyA9
IChjaGFyKilzdCtzdC0+c2lsa19lbmNfb2Zmc2V0OwogICAgIGNlbHRfZW5jID0gKENFTFRFbmNv
ZGVyKikoKGNoYXIqKXN0K3N0LT5jZWx0X2VuY19vZmZzZXQpOwogICAgIGlmIChzdC0+YXBwbGlj
YXRpb24gPT0gT1BVU19BUFBMSUNBVElPTl9SRVNUUklDVEVEX0xPV0RFTEFZKQpAQCAtMTAwMSwy
NSArMTE0Miw0MiBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAq
c3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogI2lmbmRlZiBESVNBQkxFX0ZM
T0FUX0FQSQogICAgIGFuYWx5c2lzX2luZm8udmFsaWQgPSAwOwogI2lmZGVmIEZJWEVEX1BPSU5U
Ci0gICAgaWYgKHN0LT5zaWxrX21vZGUuY29tcGxleGl0eSA+PSAxMCAmJiBzdC0+RnM9PTQ4MDAw
KQorICAgIGlmIChzdC0+c2lsa19tb2RlLmNvbXBsZXhpdHkgPj0gMTAgJiYgc3QtPkZzPj0xNjAw
MCkKICNlbHNlCi0gICAgaWYgKHN0LT5zaWxrX21vZGUuY29tcGxleGl0eSA+PSA3ICYmIHN0LT5G
cz09NDgwMDApCisgICAgaWYgKHN0LT5zaWxrX21vZGUuY29tcGxleGl0eSA+PSA3ICYmIHN0LT5G
cz49MTYwMDApCiAjZW5kaWYKICAgICB7Ci0gICAgICAgYW5hbHlzaXNfcmVhZF9wb3NfYmFrID0g
c3QtPmFuYWx5c2lzLnJlYWRfcG9zOwotICAgICAgIGFuYWx5c2lzX3JlYWRfc3ViZnJhbWVfYmFr
ID0gc3QtPmFuYWx5c2lzLnJlYWRfc3ViZnJhbWU7Ci0gICAgICAgcnVuX2FuYWx5c2lzKCZzdC0+
YW5hbHlzaXMsIGNlbHRfbW9kZSwgYW5hbHlzaXNfcGNtLCBhbmFseXNpc19zaXplLCBmcmFtZV9z
aXplLAotICAgICAgICAgICAgIGMxLCBjMiwgYW5hbHlzaXNfY2hhbm5lbHMsIHN0LT5GcywKLSAg
ICAgICAgICAgICBsc2JfZGVwdGgsIGRvd25taXgsICZhbmFseXNpc19pbmZvKTsKKyAgICAgICBp
ZiAoaXNfZGlnaXRhbF9zaWxlbmNlKHBjbSwgZnJhbWVfc2l6ZSwgc3QtPmNoYW5uZWxzLCBsc2Jf
ZGVwdGgpKQorICAgICAgIHsKKyAgICAgICAgICBpc19zaWxlbmNlID0gMTsKKyAgICAgICB9IGVs
c2UgeworICAgICAgICAgIGFuYWx5c2lzX3JlYWRfcG9zX2JhayA9IHN0LT5hbmFseXNpcy5yZWFk
X3BvczsKKyAgICAgICAgICBhbmFseXNpc19yZWFkX3N1YmZyYW1lX2JhayA9IHN0LT5hbmFseXNp
cy5yZWFkX3N1YmZyYW1lOworICAgICAgICAgIHJ1bl9hbmFseXNpcygmc3QtPmFuYWx5c2lzLCBj
ZWx0X21vZGUsIGFuYWx5c2lzX3BjbSwgYW5hbHlzaXNfc2l6ZSwgZnJhbWVfc2l6ZSwKKyAgICAg
ICAgICAgICAgICBjMSwgYzIsIGFuYWx5c2lzX2NoYW5uZWxzLCBzdC0+RnMsCisgICAgICAgICAg
ICAgICAgbHNiX2RlcHRoLCBkb3dubWl4LCAmYW5hbHlzaXNfaW5mbyk7CisgICAgICAgfQorCisg
ICAgICAgLyogVHJhY2sgdGhlIHBlYWsgc2lnbmFsIGVuZXJneSAqLworICAgICAgIGlmICghaXNf
c2lsZW5jZSAmJiBhbmFseXNpc19pbmZvLmFjdGl2aXR5X3Byb2JhYmlsaXR5ID4gRFRYX0FDVElW
SVRZX1RIUkVTSE9MRCkKKyAgICAgICAgICBzdC0+cGVha19zaWduYWxfZW5lcmd5ID0gTUFYMzIo
TVVMVDE2XzMyX1ExNShRQ09OU1QxNigwLjk5OWYsIDE1KSwgc3QtPnBlYWtfc2lnbmFsX2VuZXJn
eSksCisgICAgICAgICAgICAgICAgY29tcHV0ZV9mcmFtZV9lbmVyZ3kocGNtLCBmcmFtZV9zaXpl
LCBzdC0+Y2hhbm5lbHMsIHN0LT5hcmNoKSk7CiAgICAgfQogI2Vsc2UKICAgICAodm9pZClhbmFs
eXNpc19wY207CiAgICAgKHZvaWQpYW5hbHlzaXNfc2l6ZTsKKyAgICAodm9pZCljMTsKKyAgICAo
dm9pZCljMjsKKyAgICAodm9pZClhbmFseXNpc19jaGFubmVsczsKKyAgICAodm9pZClkb3dubWl4
OwogI2VuZGlmCiAKLSAgICBzdC0+dm9pY2VfcmF0aW8gPSAtMTsKLQogI2lmbmRlZiBESVNBQkxF
X0ZMT0FUX0FQSQorICAgIC8qIFJlc2V0IHZvaWNlX3JhdGlvIGlmIHRoaXMgZnJhbWUgaXMgbm90
IHNpbGVudCBvciBpZiBhbmFseXNpcyBpcyBkaXNhYmxlZC4KKyAgICAgKiBPdGhlcndpc2UsIHBy
ZXNlcnZlIHZvaWNlX3JhdGlvIGZyb20gdGhlIGxhc3Qgbm9uLXNpbGVudCBmcmFtZSAqLworICAg
IGlmICghaXNfc2lsZW5jZSkKKyAgICAgIHN0LT52b2ljZV9yYXRpbyA9IC0xOworCiAgICAgc3Qt
PmRldGVjdGVkX2JhbmR3aWR0aCA9IDA7CiAgICAgaWYgKGFuYWx5c2lzX2luZm8udmFsaWQpCiAg
ICAgewpAQCAtMTAzOSw2ICsxMTk3LDggQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUo
T3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAg
ICBlbHNlCiAgICAgICAgICAgc3QtPmRldGVjdGVkX2JhbmR3aWR0aCA9IE9QVVNfQkFORFdJRFRI
X0ZVTExCQU5EOwogICAgIH0KKyNlbHNlCisgICAgc3QtPnZvaWNlX3JhdGlvID0gLTE7CiAjZW5k
aWYKIAogICAgIGlmIChzdC0+Y2hhbm5lbHM9PTIgJiYgc3QtPmZvcmNlX2NoYW5uZWxzIT0xKQpA
QCAtMTA1MiwxMiArMTIxMiwxMyBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVz
RW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgIGlmICgh
c3QtPnVzZV92YnIpCiAgICAgewogICAgICAgIGludCBjYnJCeXRlczsKLSAgICAgICAvKiBNdWx0
aXBseSBieSAzIHRvIG1ha2Ugc3VyZSB0aGUgZGl2aXNpb24gaXMgZXhhY3QuICovCi0gICAgICAg
aW50IGZyYW1lX3JhdGUzID0gMypzdC0+RnMvZnJhbWVfc2l6ZTsKKyAgICAgICAvKiBNdWx0aXBs
eSBieSAxMiB0byBtYWtlIHN1cmUgdGhlIGRpdmlzaW9uIGlzIGV4YWN0LiAqLworICAgICAgIGlu
dCBmcmFtZV9yYXRlMTIgPSAxMipzdC0+RnMvZnJhbWVfc2l6ZTsKICAgICAgICAvKiBXZSBuZWVk
IHRvIG1ha2Ugc3VyZSB0aGF0ICJpbnQiIHZhbHVlcyBhbHdheXMgZml0IGluIDE2IGJpdHMuICov
Ci0gICAgICAgY2JyQnl0ZXMgPSBJTUlOKCAoMypzdC0+Yml0cmF0ZV9icHMvOCArIGZyYW1lX3Jh
dGUzLzIpL2ZyYW1lX3JhdGUzLCBtYXhfZGF0YV9ieXRlcyk7Ci0gICAgICAgc3QtPmJpdHJhdGVf
YnBzID0gY2JyQnl0ZXMqKG9wdXNfaW50MzIpZnJhbWVfcmF0ZTMqOC8zOwotICAgICAgIG1heF9k
YXRhX2J5dGVzID0gY2JyQnl0ZXM7CisgICAgICAgY2JyQnl0ZXMgPSBJTUlOKCAoMTIqc3QtPmJp
dHJhdGVfYnBzLzggKyBmcmFtZV9yYXRlMTIvMikvZnJhbWVfcmF0ZTEyLCBtYXhfZGF0YV9ieXRl
cyk7CisgICAgICAgc3QtPmJpdHJhdGVfYnBzID0gY2JyQnl0ZXMqKG9wdXNfaW50MzIpZnJhbWVf
cmF0ZTEyKjgvMTI7CisgICAgICAgLyogTWFrZSBzdXJlIHdlIHByb3ZpZGUgYXQgbGVhc3Qgb25l
IGJ5dGUgdG8gYXZvaWQgZmFpbGluZy4gKi8KKyAgICAgICBtYXhfZGF0YV9ieXRlcyA9IElNQVgo
MSwgY2JyQnl0ZXMpOwogICAgIH0KICAgICBpZiAobWF4X2RhdGFfYnl0ZXM8MyB8fCBzdC0+Yml0
cmF0ZV9icHMgPCAzKmZyYW1lX3JhdGUqOAogICAgICAgIHx8IChmcmFtZV9yYXRlPDUwICYmICht
YXhfZGF0YV9ieXRlcypmcmFtZV9yYXRlPDMwMCB8fCBzdC0+Yml0cmF0ZV9icHMgPCAyNDAwKSkp
CkBAIC0xMDY1LDI1ICsxMjI2LDYzIEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9w
dXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAg
LypJZiB0aGUgc3BhY2UgaXMgdG9vIGxvdyB0byBkbyBzb21ldGhpbmcgdXNlZnVsLCBlbWl0ICdQ
TEMnIGZyYW1lcy4qLwogICAgICAgIGludCB0b2Ntb2RlID0gc3QtPm1vZGU7CiAgICAgICAgaW50
IGJ3ID0gc3QtPmJhbmR3aWR0aCA9PSAwID8gT1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORCA6IHN0
LT5iYW5kd2lkdGg7CisgICAgICAgaW50IHBhY2tldF9jb2RlID0gMDsKKyAgICAgICBpbnQgbnVt
X211bHRpZnJhbWVzID0gMDsKKwogICAgICAgIGlmICh0b2Ntb2RlPT0wKQogICAgICAgICAgIHRv
Y21vZGUgPSBNT0RFX1NJTEtfT05MWTsKICAgICAgICBpZiAoZnJhbWVfcmF0ZT4xMDApCiAgICAg
ICAgICAgdG9jbW9kZSA9IE1PREVfQ0VMVF9PTkxZOwotICAgICAgIGlmIChmcmFtZV9yYXRlIDwg
NTApCi0gICAgICAgICAgdG9jbW9kZSA9IE1PREVfU0lMS19PTkxZOworICAgICAgIC8qIDQwIG1z
IC0+IDIgeCAyMCBtcyBpZiBpbiBDRUxUX09OTFkgb3IgSFlCUklEIG1vZGUgKi8KKyAgICAgICBp
ZiAoZnJhbWVfcmF0ZT09MjUgJiYgdG9jbW9kZSE9TU9ERV9TSUxLX09OTFkpCisgICAgICAgewor
ICAgICAgICAgIGZyYW1lX3JhdGUgPSA1MDsKKyAgICAgICAgICBwYWNrZXRfY29kZSA9IDE7Cisg
ICAgICAgfQorCisgICAgICAgLyogPj0gNjAgbXMgZnJhbWVzICovCisgICAgICAgaWYgKGZyYW1l
X3JhdGU8PTE2KQorICAgICAgIHsKKyAgICAgICAgICAvKiAxIHggNjAgbXMsIDIgeCA0MCBtcywg
MiB4IDYwIG1zICovCisgICAgICAgICAgaWYgKG91dF9kYXRhX2J5dGVzPT0xIHx8ICh0b2Ntb2Rl
PT1NT0RFX1NJTEtfT05MWSAmJiBmcmFtZV9yYXRlIT0xMCkpCisgICAgICAgICAgeworICAgICAg
ICAgICAgIHRvY21vZGUgPSBNT0RFX1NJTEtfT05MWTsKKworICAgICAgICAgICAgIHBhY2tldF9j
b2RlID0gZnJhbWVfcmF0ZSA8PSAxMjsKKyAgICAgICAgICAgICBmcmFtZV9yYXRlID0gZnJhbWVf
cmF0ZSA9PSAxMiA/IDI1IDogMTY7CisgICAgICAgICAgfQorICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICB7CisgICAgICAgICAgICAgbnVtX211bHRpZnJhbWVzID0gNTAvZnJhbWVfcmF0ZTsKKyAg
ICAgICAgICAgICBmcmFtZV9yYXRlID0gNTA7CisgICAgICAgICAgICAgcGFja2V0X2NvZGUgPSAz
OworICAgICAgICAgIH0KKyAgICAgICB9CisKICAgICAgICBpZih0b2Ntb2RlPT1NT0RFX1NJTEtf
T05MWSYmYnc+T1BVU19CQU5EV0lEVEhfV0lERUJBTkQpCiAgICAgICAgICAgYnc9T1BVU19CQU5E
V0lEVEhfV0lERUJBTkQ7CiAgICAgICAgZWxzZSBpZiAodG9jbW9kZT09TU9ERV9DRUxUX09OTFkm
JmJ3PT1PUFVTX0JBTkRXSURUSF9NRURJVU1CQU5EKQogICAgICAgICAgIGJ3PU9QVVNfQkFORFdJ
RFRIX05BUlJPV0JBTkQ7CiAgICAgICAgZWxzZSBpZiAodG9jbW9kZT09TU9ERV9IWUJSSUQmJmJ3
PD1PUFVTX0JBTkRXSURUSF9TVVBFUldJREVCQU5EKQogICAgICAgICAgIGJ3PU9QVVNfQkFORFdJ
RFRIX1NVUEVSV0lERUJBTkQ7CisKICAgICAgICBkYXRhWzBdID0gZ2VuX3RvYyh0b2Ntb2RlLCBm
cmFtZV9yYXRlLCBidywgc3QtPnN0cmVhbV9jaGFubmVscyk7Ci0gICAgICAgcmV0ID0gMTsKKyAg
ICAgICBkYXRhWzBdIHw9IHBhY2tldF9jb2RlOworCisgICAgICAgcmV0ID0gcGFja2V0X2NvZGUg
PD0gMSA/IDEgOiAyOworCisgICAgICAgbWF4X2RhdGFfYnl0ZXMgPSBJTUFYKG1heF9kYXRhX2J5
dGVzLCByZXQpOworCisgICAgICAgaWYgKHBhY2tldF9jb2RlPT0zKQorICAgICAgICAgIGRhdGFb
MV0gPSBudW1fbXVsdGlmcmFtZXM7CisKICAgICAgICBpZiAoIXN0LT51c2VfdmJyKQogICAgICAg
IHsKICAgICAgICAgICByZXQgPSBvcHVzX3BhY2tldF9wYWQoZGF0YSwgcmV0LCBtYXhfZGF0YV9i
eXRlcyk7CiAgICAgICAgICAgaWYgKHJldCA9PSBPUFVTX09LKQogICAgICAgICAgICAgIHJldCA9
IG1heF9kYXRhX2J5dGVzOworICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICByZXQgPSBPUFVT
X0lOVEVSTkFMX0VSUk9SOwogICAgICAgIH0KICAgICAgICBSRVNUT1JFX1NUQUNLOwogICAgICAg
IHJldHVybiByZXQ7CkBAIC0xMDkxLDcgKzEyOTAsOCBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2Rl
X25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1l
XwogICAgIG1heF9yYXRlID0gZnJhbWVfcmF0ZSptYXhfZGF0YV9ieXRlcyo4OwogCiAgICAgLyog
RXF1aXZhbGVudCAyMC1tcyByYXRlIGZvciBtb2RlL2NoYW5uZWwvYmFuZHdpZHRoIGRlY2lzaW9u
cyAqLwotICAgIGVxdWl2X3JhdGUgPSBzdC0+Yml0cmF0ZV9icHMgLSAoNDAqc3QtPmNoYW5uZWxz
KzIwKSooc3QtPkZzL2ZyYW1lX3NpemUgLSA1MCk7CisgICAgZXF1aXZfcmF0ZSA9IGNvbXB1dGVf
ZXF1aXZfcmF0ZShzdC0+Yml0cmF0ZV9icHMsIHN0LT5jaGFubmVscywgc3QtPkZzL2ZyYW1lX3Np
emUsCisgICAgICAgICAgc3QtPnVzZV92YnIsIDAsIHN0LT5zaWxrX21vZGUuY29tcGxleGl0eSwg
c3QtPnNpbGtfbW9kZS5wYWNrZXRMb3NzUGVyY2VudGFnZSk7CiAKICAgICBpZiAoc3QtPnNpZ25h
bF90eXBlID09IE9QVVNfU0lHTkFMX1ZPSUNFKQogICAgICAgIHZvaWNlX2VzdCA9IDEyNzsKQEAg
LTExMzIsNyArMTMzMiw5IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNv
ZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAgfQogI2Vu
ZGlmCiAgICAgfQotICAgIGVxdWl2X3JhdGUgPSBzdC0+Yml0cmF0ZV9icHMgLSAoNDAqc3QtPnN0
cmVhbV9jaGFubmVscysyMCkqKHN0LT5Gcy9mcmFtZV9zaXplIC0gNTApOworICAgIC8qIFVwZGF0
ZSBlcXVpdmFsZW50IHJhdGUgZm9yIGNoYW5uZWxzIGRlY2lzaW9uLiAqLworICAgIGVxdWl2X3Jh
dGUgPSBjb21wdXRlX2VxdWl2X3JhdGUoc3QtPmJpdHJhdGVfYnBzLCBzdC0+c3RyZWFtX2NoYW5u
ZWxzLCBzdC0+RnMvZnJhbWVfc2l6ZSwKKyAgICAgICAgICBzdC0+dXNlX3ZiciwgMCwgc3QtPnNp
bGtfbW9kZS5jb21wbGV4aXR5LCBzdC0+c2lsa19tb2RlLnBhY2tldExvc3NQZXJjZW50YWdlKTsK
IAogICAgIC8qIE1vZGUgc2VsZWN0aW9uIGRlcGVuZGluZyBvbiBhcHBsaWNhdGlvbiBhbmQgc2ln
bmFsIHR5cGUgKi8KICAgICBpZiAoc3QtPmFwcGxpY2F0aW9uID09IE9QVVNfQVBQTElDQVRJT05f
UkVTVFJJQ1RFRF9MT1dERUxBWSkKQEAgLTExODEsMTAgKzEzODMsMjEgQEAgb3B1c19pbnQzMiBv
cHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20s
IGludCBmcmFtZV8KICAgICAgICAvKiBXaGVuIEZFQyBpcyBlbmFibGVkIGFuZCB0aGVyZSdzIGVu
b3VnaCBwYWNrZXQgbG9zcywgdXNlIFNJTEsgKi8KICAgICAgICBpZiAoc3QtPnNpbGtfbW9kZS51
c2VJbkJhbmRGRUMgJiYgc3QtPnNpbGtfbW9kZS5wYWNrZXRMb3NzUGVyY2VudGFnZSA+ICgxMjgt
dm9pY2VfZXN0KT4+NCkKICAgICAgICAgICBzdC0+bW9kZSA9IE1PREVfU0lMS19PTkxZOwotICAg
ICAgIC8qIFdoZW4gZW5jb2Rpbmcgdm9pY2UgYW5kIERUWCBpcyBlbmFibGVkLCBzZXQgdGhlIGVu
Y29kZXIgdG8gU0lMSyBtb2RlIChhdCBsZWFzdCBmb3Igbm93KSAqLworICAgICAgIC8qIFdoZW4g
ZW5jb2Rpbmcgdm9pY2UgYW5kIERUWCBpcyBlbmFibGVkIGJ1dCB0aGUgZ2VuZXJhbGl6ZWQgRFRY
IGNhbm5vdCBiZSB1c2VkLAorICAgICAgICAgIGJlY2F1c2Ugb2YgY29tcGxleGl0eSBhbmQgc2Ft
cGxpbmcgZnJlcXVlbmN5IHNldHRpbmdzLCBzd2l0Y2ggdG8gU0lMSyBEVFggYW5kCisgICAgICAg
ICAgc2V0IHRoZSBlbmNvZGVyIHRvIFNJTEsgbW9kZSAqLworI2lmbmRlZiBESVNBQkxFX0ZMT0FU
X0FQSQorICAgICAgIHN0LT5zaWxrX21vZGUudXNlRFRYID0gc3QtPnVzZV9kdHggJiYgIShhbmFs
eXNpc19pbmZvLnZhbGlkIHx8IGlzX3NpbGVuY2UpOworI2Vsc2UKKyAgICAgICBzdC0+c2lsa19t
b2RlLnVzZURUWCA9IHN0LT51c2VfZHR4OworI2VuZGlmCiAgICAgICAgaWYgKHN0LT5zaWxrX21v
ZGUudXNlRFRYICYmIHZvaWNlX2VzdCA+IDEwMCkKICAgICAgICAgICBzdC0+bW9kZSA9IE1PREVf
U0lMS19PTkxZOwogI2VuZGlmCisKKyAgICAgICAvKiBJZiBtYXhfZGF0YV9ieXRlcyByZXByZXNl
bnRzIGxlc3MgdGhhbiA2IGtiL3MsIHN3aXRjaCB0byBDRUxULW9ubHkgbW9kZSAqLworICAgICAg
IGlmIChtYXhfZGF0YV9ieXRlcyA8IChmcmFtZV9yYXRlID4gNTAgPyA5MDAwIDogNjAwMCkqZnJh
bWVfc2l6ZSAvIChzdC0+RnMgKiA4KSkKKyAgICAgICAgICBzdC0+bW9kZSA9IE1PREVfQ0VMVF9P
TkxZOwogICAgIH0gZWxzZSB7CiAgICAgICAgc3QtPm1vZGUgPSBzdC0+dXNlcl9mb3JjZWRfbW9k
ZTsKICAgICB9CkBAIC0xMTk0LDE5ICsxNDA3LDYgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9u
YXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8K
ICAgICAgICBzdC0+bW9kZSA9IE1PREVfQ0VMVF9PTkxZOwogICAgIGlmIChzdC0+bGZlKQogICAg
ICAgIHN0LT5tb2RlID0gTU9ERV9DRUxUX09OTFk7Ci0gICAgLyogSWYgbWF4X2RhdGFfYnl0ZXMg
cmVwcmVzZW50cyBsZXNzIHRoYW4gOCBrYi9zLCBzd2l0Y2ggdG8gQ0VMVC1vbmx5IG1vZGUgKi8K
LSAgICBpZiAobWF4X2RhdGFfYnl0ZXMgPCAoZnJhbWVfcmF0ZSA+IDUwID8gMTIwMDAgOiA4MDAw
KSpmcmFtZV9zaXplIC8gKHN0LT5GcyAqIDgpKQotICAgICAgIHN0LT5tb2RlID0gTU9ERV9DRUxU
X09OTFk7Ci0KLSAgICBpZiAoc3QtPnN0cmVhbV9jaGFubmVscyA9PSAxICYmIHN0LT5wcmV2X2No
YW5uZWxzID09MiAmJiBzdC0+c2lsa19tb2RlLnRvTW9ubz09MAotICAgICAgICAgICYmIHN0LT5t
b2RlICE9IE1PREVfQ0VMVF9PTkxZICYmIHN0LT5wcmV2X21vZGUgIT0gTU9ERV9DRUxUX09OTFkp
Ci0gICAgewotICAgICAgIC8qIERlbGF5IHN0ZXJlby0+bW9ubyB0cmFuc2l0aW9uIGJ5IHR3byBm
cmFtZXMgc28gdGhhdCBTSUxLIGNhbiBkbyBhIHNtb290aCBkb3dubWl4ICovCi0gICAgICAgc3Qt
PnNpbGtfbW9kZS50b01vbm8gPSAxOwotICAgICAgIHN0LT5zdHJlYW1fY2hhbm5lbHMgPSAyOwot
ICAgIH0gZWxzZSB7Ci0gICAgICAgc3QtPnNpbGtfbW9kZS50b01vbm8gPSAwOwotICAgIH0KIAog
ICAgIGlmIChzdC0+cHJldl9tb2RlID4gMCAmJgogICAgICAgICAoKHN0LT5tb2RlICE9IE1PREVf
Q0VMVF9PTkxZICYmIHN0LT5wcmV2X21vZGUgPT0gTU9ERV9DRUxUX09OTFkpIHx8CkBAIC0xMjI2
LDI0ICsxNDI2LDIzIEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVy
ICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAgICAgICB9CiAg
ICAgICAgIH0KICAgICB9Ci0gICAgLyogRm9yIHRoZSBmaXJzdCBmcmFtZSBhdCBhIG5ldyBTSUxL
IGJhbmR3aWR0aCAqLwotICAgIGlmIChzdC0+c2lsa19id19zd2l0Y2gpCi0gICAgewotICAgICAg
IHJlZHVuZGFuY3kgPSAxOwotICAgICAgIGNlbHRfdG9fc2lsayA9IDE7Ci0gICAgICAgc3QtPnNp
bGtfYndfc3dpdGNoID0gMDsKLSAgICAgICBwcmVmaWxsPTE7Ci0gICAgfQogCi0gICAgaWYgKHJl
ZHVuZGFuY3kpCisgICAgLyogV2hlbiBlbmNvZGluZyBtdWx0aWZyYW1lcywgd2UgY2FuIGFzayBm
b3IgYSBzd2l0Y2ggdG8gQ0VMVCBvbmx5IGluIHRoZSBsYXN0IGZyYW1lLiBUaGlzIHN3aXRjaAor
ICAgICAqIGlzIHByb2Nlc3NlZCBhYm92ZSBhcyB0aGUgcmVxdWVzdGVkIG1vZGUgc2hvdWxkbid0
IGludGVycnVwdCBzdGVyZW8tPm1vbm8gdHJhbnNpdGlvbi4gKi8KKyAgICBpZiAoc3QtPnN0cmVh
bV9jaGFubmVscyA9PSAxICYmIHN0LT5wcmV2X2NoYW5uZWxzID09MiAmJiBzdC0+c2lsa19tb2Rl
LnRvTW9ubz09MAorICAgICAgICAgICYmIHN0LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZICYmIHN0
LT5wcmV2X21vZGUgIT0gTU9ERV9DRUxUX09OTFkpCiAgICAgewotICAgICAgIC8qIEZhaXIgc2hh
cmUgb2YgdGhlIG1heCBzaXplIGFsbG93ZWQgKi8KLSAgICAgICByZWR1bmRhbmN5X2J5dGVzID0g
SU1JTigyNTcsIG1heF9kYXRhX2J5dGVzKihvcHVzX2ludDMyKShzdC0+RnMvMjAwKS8oZnJhbWVf
c2l6ZStzdC0+RnMvMjAwKSk7Ci0gICAgICAgLyogRm9yIFZCUiwgdGFyZ2V0IHRoZSBhY3R1YWwg
Yml0cmF0ZSAoc3ViamVjdCB0byB0aGUgbGltaXQgYWJvdmUpICovCi0gICAgICAgaWYgKHN0LT51
c2VfdmJyKQotICAgICAgICAgIHJlZHVuZGFuY3lfYnl0ZXMgPSBJTUlOKHJlZHVuZGFuY3lfYnl0
ZXMsIHN0LT5iaXRyYXRlX2Jwcy8xNjAwKTsKKyAgICAgICAvKiBEZWxheSBzdGVyZW8tPm1vbm8g
dHJhbnNpdGlvbiBieSB0d28gZnJhbWVzIHNvIHRoYXQgU0lMSyBjYW4gZG8gYSBzbW9vdGggZG93
bm1peCAqLworICAgICAgIHN0LT5zaWxrX21vZGUudG9Nb25vID0gMTsKKyAgICAgICBzdC0+c3Ry
ZWFtX2NoYW5uZWxzID0gMjsKKyAgICB9IGVsc2UgeworICAgICAgIHN0LT5zaWxrX21vZGUudG9N
b25vID0gMDsKICAgICB9CiAKKyAgICAvKiBVcGRhdGUgZXF1aXZhbGVudCByYXRlIHdpdGggbW9k
ZSBkZWNpc2lvbi4gKi8KKyAgICBlcXVpdl9yYXRlID0gY29tcHV0ZV9lcXVpdl9yYXRlKHN0LT5i
aXRyYXRlX2Jwcywgc3QtPnN0cmVhbV9jaGFubmVscywgc3QtPkZzL2ZyYW1lX3NpemUsCisgICAg
ICAgICAgc3QtPnVzZV92YnIsIHN0LT5tb2RlLCBzdC0+c2lsa19tb2RlLmNvbXBsZXhpdHksIHN0
LT5zaWxrX21vZGUucGFja2V0TG9zc1BlcmNlbnRhZ2UpOworCiAgICAgaWYgKHN0LT5tb2RlICE9
IE1PREVfQ0VMVF9PTkxZICYmIHN0LT5wcmV2X21vZGUgPT0gTU9ERV9DRUxUX09OTFkpCiAgICAg
ewogICAgICAgICBzaWxrX0VuY0NvbnRyb2xTdHJ1Y3QgZHVtbXk7CkBAIC0xMjU3LDE3ICsxNDU2
LDcgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25z
dCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAq
dm9pY2VfYmFuZHdpZHRoX3RocmVzaG9sZHMsICptdXNpY19iYW5kd2lkdGhfdGhyZXNob2xkczsK
ICAgICAgICAgb3B1c19pbnQzMiBiYW5kd2lkdGhfdGhyZXNob2xkc1s4XTsKICAgICAgICAgaW50
IGJhbmR3aWR0aCA9IE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EOwotICAgICAgICBvcHVzX2ludDMy
IGVxdWl2X3JhdGUyOwogCi0gICAgICAgIGVxdWl2X3JhdGUyID0gZXF1aXZfcmF0ZTsKLSAgICAg
ICAgaWYgKHN0LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZKQotICAgICAgICB7Ci0gICAgICAgICAg
IC8qIEFkanVzdCB0aGUgdGhyZXNob2xkICsvLSAxMCUgZGVwZW5kaW5nIG9uIGNvbXBsZXhpdHkg
Ki8KLSAgICAgICAgICAgZXF1aXZfcmF0ZTIgPSBlcXVpdl9yYXRlMiAqICg0NStzdC0+c2lsa19t
b2RlLmNvbXBsZXhpdHkpLzUwOwotICAgICAgICAgICAvKiBDQlIgaXMgbGVzcyBlZmZpY2llbnQg
YnkgfjEga2IvcyAqLwotICAgICAgICAgICBpZiAoIXN0LT51c2VfdmJyKQotICAgICAgICAgICAg
ICBlcXVpdl9yYXRlMiAtPSAxMDAwOwotICAgICAgICB9CiAgICAgICAgIGlmIChzdC0+Y2hhbm5l
bHM9PTIgJiYgc3QtPmZvcmNlX2NoYW5uZWxzIT0xKQogICAgICAgICB7CiAgICAgICAgICAgIHZv
aWNlX2JhbmR3aWR0aF90aHJlc2hvbGRzID0gc3RlcmVvX3ZvaWNlX2JhbmR3aWR0aF90aHJlc2hv
bGRzOwpAQCAtMTI4OCwxNSArMTQ3NywxNSBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2
ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAg
ICAgICAgICAgaHlzdGVyZXNpcyA9IGJhbmR3aWR0aF90aHJlc2hvbGRzWzIqKGJhbmR3aWR0aC1P
UFVTX0JBTkRXSURUSF9NRURJVU1CQU5EKSsxXTsKICAgICAgICAgICAgIGlmICghc3QtPmZpcnN0
KQogICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIGlmIChzdC0+YmFuZHdpZHRoID49IGJh
bmR3aWR0aCkKKyAgICAgICAgICAgICAgICBpZiAoc3QtPmF1dG9fYmFuZHdpZHRoID49IGJhbmR3
aWR0aCkKICAgICAgICAgICAgICAgICAgICAgdGhyZXNob2xkIC09IGh5c3RlcmVzaXM7CiAgICAg
ICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICB0aHJlc2hvbGQgKz0gaHlzdGVy
ZXNpczsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChlcXVpdl9yYXRlMiA+PSB0aHJl
c2hvbGQpCisgICAgICAgICAgICBpZiAoZXF1aXZfcmF0ZSA+PSB0aHJlc2hvbGQpCiAgICAgICAg
ICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0gd2hpbGUgKC0tYmFuZHdpZHRoPk9QVVNfQkFORFdJ
RFRIX05BUlJPV0JBTkQpOwotICAgICAgICBzdC0+YmFuZHdpZHRoID0gYmFuZHdpZHRoOworICAg
ICAgICBzdC0+YmFuZHdpZHRoID0gc3QtPmF1dG9fYmFuZHdpZHRoID0gYmFuZHdpZHRoOwogICAg
ICAgICAvKiBQcmV2ZW50cyBhbnkgdHJhbnNpdGlvbiB0byBTV0IvRkIgdW50aWwgdGhlIFNJTEsg
bGF5ZXIgaGFzIGZ1bGx5CiAgICAgICAgICAgIHN3aXRjaGVkIHRvIFdCIG1vZGUgYW5kIHR1cm5l
ZCB0aGUgdmFyaWFibGUgTFAgZmlsdGVyIG9mZiAqLwogICAgICAgICBpZiAoIXN0LT5maXJzdCAm
JiBzdC0+bW9kZSAhPSBNT0RFX0NFTFRfT05MWSAmJiAhc3QtPnNpbGtfbW9kZS5pbldCbW9kZVdp
dGhvdXRWYXJpYWJsZUxQICYmIHN0LT5iYW5kd2lkdGggPiBPUFVTX0JBTkRXSURUSF9XSURFQkFO
RCkKQEAgLTEzNDksNiArMTUzOCw4IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9w
dXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAg
c3QtPmJhbmR3aWR0aCA9IElNSU4oc3QtPmJhbmR3aWR0aCwgc3QtPmRldGVjdGVkX2JhbmR3aWR0
aCk7CiAgICAgfQogI2VuZGlmCisgICAgc3QtPnNpbGtfbW9kZS5MQlJSX2NvZGVkID0gZGVjaWRl
X2ZlYyhzdC0+c2lsa19tb2RlLnVzZUluQmFuZEZFQywgc3QtPnNpbGtfbW9kZS5wYWNrZXRMb3Nz
UGVyY2VudGFnZSwKKyAgICAgICAgICBzdC0+c2lsa19tb2RlLkxCUlJfY29kZWQsIHN0LT5tb2Rl
LCAmc3QtPmJhbmR3aWR0aCwgZXF1aXZfcmF0ZSk7CiAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0
X2VuYywgT1BVU19TRVRfTFNCX0RFUFRIKGxzYl9kZXB0aCkpOwogCiAgICAgLyogQ0VMVCBtb2Rl
IGRvZXNuJ3Qgc3VwcG9ydCBtZWRpdW1iYW5kLCB1c2Ugd2lkZWJhbmQgaW5zdGVhZCAqLwpAQCAt
MTM1NywxNSArMTU0OCwzNCBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5j
b2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgIGlmIChzdC0+
bGZlKQogICAgICAgIHN0LT5iYW5kd2lkdGggPSBPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EOwog
Ci0gICAgLyogQ2FuJ3Qgc3VwcG9ydCBoaWdoZXIgdGhhbiB3aWRlYmFuZCBmb3IgPjIwIG1zIGZy
YW1lcyAqLwotICAgIGlmIChmcmFtZV9zaXplID4gc3QtPkZzLzUwICYmIChzdC0+bW9kZSA9PSBN
T0RFX0NFTFRfT05MWSB8fCBzdC0+YmFuZHdpZHRoID4gT1BVU19CQU5EV0lEVEhfV0lERUJBTkQp
KQorICAgIGN1cnJfYmFuZHdpZHRoID0gc3QtPmJhbmR3aWR0aDsKKworICAgIC8qIENob29zZXMg
dGhlIGFwcHJvcHJpYXRlIG1vZGUgZm9yIHNwZWVjaAorICAgICAgICpORVZFUiogc3dpdGNoIHRv
L2Zyb20gQ0VMVC1vbmx5IG1vZGUgaGVyZSBhcyB0aGlzIHdpbGwgaW52YWxpZGF0ZSBzb21lIGFz
c3VtcHRpb25zICovCisgICAgaWYgKHN0LT5tb2RlID09IE1PREVfU0lMS19PTkxZICYmIGN1cnJf
YmFuZHdpZHRoID4gT1BVU19CQU5EV0lEVEhfV0lERUJBTkQpCisgICAgICAgIHN0LT5tb2RlID0g
TU9ERV9IWUJSSUQ7CisgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEICYmIGN1cnJfYmFu
ZHdpZHRoIDw9IE9QVVNfQkFORFdJRFRIX1dJREVCQU5EKQorICAgICAgICBzdC0+bW9kZSA9IE1P
REVfU0lMS19PTkxZOworCisgICAgLyogQ2FuJ3Qgc3VwcG9ydCBoaWdoZXIgdGhhbiA+NjAgbXMg
ZnJhbWVzLCBhbmQgPjIwIG1zIHdoZW4gaW4gSHlicmlkIG9yIENFTFQtb25seSBtb2RlcyAqLwor
ICAgIGlmICgoZnJhbWVfc2l6ZSA+IHN0LT5Gcy81MCAmJiAoc3QtPm1vZGUgIT0gTU9ERV9TSUxL
X09OTFkpKSB8fCBmcmFtZV9zaXplID4gMypzdC0+RnMvNTApCiAgICAgewotICAgICAgIFZBUkRF
Q0wodW5zaWduZWQgY2hhciwgdG1wX2RhdGEpOworICAgICAgIGludCBlbmNfZnJhbWVfc2l6ZTsK
ICAgICAgICBpbnQgbmJfZnJhbWVzOwotICAgICAgIGludCBiYWtfbW9kZSwgYmFrX2JhbmR3aWR0
aCwgYmFrX2NoYW5uZWxzLCBiYWtfdG9fbW9ubzsKLSAgICAgICBWQVJERUNMKE9wdXNSZXBhY2tl
dGl6ZXIsIHJwKTsKLSAgICAgICBvcHVzX2ludDMyIGJ5dGVzX3Blcl9mcmFtZTsKLSAgICAgICBv
cHVzX2ludDMyIHJlcGFja2V0aXplX2xlbjsKKworICAgICAgIGlmIChzdC0+bW9kZSA9PSBNT0RF
X1NJTEtfT05MWSkKKyAgICAgICB7CisgICAgICAgICBpZiAoZnJhbWVfc2l6ZSA9PSAyKnN0LT5G
cy8yNSkgIC8qIDgwIG1zIC0+IDJ4IDQwIG1zICovCisgICAgICAgICAgIGVuY19mcmFtZV9zaXpl
ID0gc3QtPkZzLzI1OworICAgICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZSA9PSAzKnN0LT5Gcy8y
NSkgIC8qIDEyMCBtcyAtPiAyeCA2MCBtcyAqLworICAgICAgICAgICBlbmNfZnJhbWVfc2l6ZSA9
IDMqc3QtPkZzLzUwOworICAgICAgICAgZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiAxMDAgbXMgLT4gNXggMjAgbXMgKi8KKyAgICAgICAgICAgZW5jX2ZyYW1lX3NpemUgPSBzdC0+
RnMvNTA7CisgICAgICAgfQorICAgICAgIGVsc2UKKyAgICAgICAgIGVuY19mcmFtZV9zaXplID0g
c3QtPkZzLzUwOworCisgICAgICAgbmJfZnJhbWVzID0gZnJhbWVfc2l6ZS9lbmNfZnJhbWVfc2l6
ZTsKIAogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQogICAgICAgIGlmIChhbmFseXNpc19yZWFk
X3Bvc19iYWshPSAtMSkKQEAgLTEzNzUsNzQgKzE1ODUsMzMgQEAgb3B1c19pbnQzMiBvcHVzX2Vu
Y29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBm
cmFtZV8KICAgICAgICB9CiAjZW5kaWYKIAotICAgICAgIG5iX2ZyYW1lcyA9IGZyYW1lX3NpemUg
PiBzdC0+RnMvMjUgPyAzIDogMjsKLSAgICAgICBieXRlc19wZXJfZnJhbWUgPSBJTUlOKDEyNzYs
KG91dF9kYXRhX2J5dGVzLTMpL25iX2ZyYW1lcyk7Ci0KLSAgICAgICBBTExPQyh0bXBfZGF0YSwg
bmJfZnJhbWVzKmJ5dGVzX3Blcl9mcmFtZSwgdW5zaWduZWQgY2hhcik7Ci0KLSAgICAgICBBTExP
QyhycCwgMSwgT3B1c1JlcGFja2V0aXplcik7Ci0gICAgICAgb3B1c19yZXBhY2tldGl6ZXJfaW5p
dChycCk7Ci0KLSAgICAgICBiYWtfbW9kZSA9IHN0LT51c2VyX2ZvcmNlZF9tb2RlOwotICAgICAg
IGJha19iYW5kd2lkdGggPSBzdC0+dXNlcl9iYW5kd2lkdGg7Ci0gICAgICAgYmFrX2NoYW5uZWxz
ID0gc3QtPmZvcmNlX2NoYW5uZWxzOworICAgICAgIHJldCA9IGVuY29kZV9tdWx0aWZyYW1lX3Bh
Y2tldChzdCwgcGNtLCBuYl9mcmFtZXMsIGVuY19mcmFtZV9zaXplLCBkYXRhLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRfZGF0YV9ieXRlcywgdG9fY2VsdCwgbHNi
X2RlcHRoLCBmbG9hdF9hcGkpOwogCi0gICAgICAgc3QtPnVzZXJfZm9yY2VkX21vZGUgPSBzdC0+
bW9kZTsKLSAgICAgICBzdC0+dXNlcl9iYW5kd2lkdGggPSBzdC0+YmFuZHdpZHRoOwotICAgICAg
IHN0LT5mb3JjZV9jaGFubmVscyA9IHN0LT5zdHJlYW1fY2hhbm5lbHM7Ci0gICAgICAgYmFrX3Rv
X21vbm8gPSBzdC0+c2lsa19tb2RlLnRvTW9ubzsKLQotICAgICAgIGlmIChiYWtfdG9fbW9ubykK
LSAgICAgICAgICBzdC0+Zm9yY2VfY2hhbm5lbHMgPSAxOwotICAgICAgIGVsc2UKLSAgICAgICAg
ICBzdC0+cHJldl9jaGFubmVscyA9IHN0LT5zdHJlYW1fY2hhbm5lbHM7Ci0gICAgICAgZm9yIChp
PTA7aTxuYl9mcmFtZXM7aSsrKQotICAgICAgIHsKLSAgICAgICAgICBpbnQgdG1wX2xlbjsKLSAg
ICAgICAgICBzdC0+c2lsa19tb2RlLnRvTW9ubyA9IDA7Ci0gICAgICAgICAgLyogV2hlbiBzd2l0
Y2hpbmcgZnJvbSBTSUxLL0h5YnJpZCB0byBDRUxULCBvbmx5IGFzayBmb3IgYSBzd2l0Y2ggYXQg
dGhlIGxhc3QgZnJhbWUgKi8KLSAgICAgICAgICBpZiAodG9fY2VsdCAmJiBpPT1uYl9mcmFtZXMt
MSkKLSAgICAgICAgICAgICBzdC0+dXNlcl9mb3JjZWRfbW9kZSA9IE1PREVfQ0VMVF9PTkxZOwot
ICAgICAgICAgIHRtcF9sZW4gPSBvcHVzX2VuY29kZV9uYXRpdmUoc3QsIHBjbStpKihzdC0+Y2hh
bm5lbHMqc3QtPkZzLzUwKSwgc3QtPkZzLzUwLAotICAgICAgICAgICAgICAgIHRtcF9kYXRhK2kq
Ynl0ZXNfcGVyX2ZyYW1lLCBieXRlc19wZXJfZnJhbWUsIGxzYl9kZXB0aCwKLSAgICAgICAgICAg
ICAgICBOVUxMLCAwLCBjMSwgYzIsIGFuYWx5c2lzX2NoYW5uZWxzLCBkb3dubWl4LCBmbG9hdF9h
cGkpOwotICAgICAgICAgIGlmICh0bXBfbGVuPDApCi0gICAgICAgICAgewotICAgICAgICAgICAg
IFJFU1RPUkVfU1RBQ0s7Ci0gICAgICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJOQUxfRVJST1I7
Ci0gICAgICAgICAgfQotICAgICAgICAgIHJldCA9IG9wdXNfcmVwYWNrZXRpemVyX2NhdChycCwg
dG1wX2RhdGEraSpieXRlc19wZXJfZnJhbWUsIHRtcF9sZW4pOwotICAgICAgICAgIGlmIChyZXQ8
MCkKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgUkVTVE9SRV9TVEFDSzsKLSAgICAgICAgICAg
ICByZXR1cm4gT1BVU19JTlRFUk5BTF9FUlJPUjsKLSAgICAgICAgICB9Ci0gICAgICAgfQotICAg
ICAgIGlmIChzdC0+dXNlX3ZicikKLSAgICAgICAgICByZXBhY2tldGl6ZV9sZW4gPSBvdXRfZGF0
YV9ieXRlczsKLSAgICAgICBlbHNlCi0gICAgICAgICAgcmVwYWNrZXRpemVfbGVuID0gSU1JTigz
KnN0LT5iaXRyYXRlX2Jwcy8oMyo4KjUwL25iX2ZyYW1lcyksIG91dF9kYXRhX2J5dGVzKTsKLSAg
ICAgICByZXQgPSBvcHVzX3JlcGFja2V0aXplcl9vdXRfcmFuZ2VfaW1wbChycCwgMCwgbmJfZnJh
bWVzLCBkYXRhLCByZXBhY2tldGl6ZV9sZW4sIDAsICFzdC0+dXNlX3Zicik7Ci0gICAgICAgaWYg
KHJldDwwKQotICAgICAgIHsKLSAgICAgICAgICBSRVNUT1JFX1NUQUNLOwotICAgICAgICAgIHJl
dHVybiBPUFVTX0lOVEVSTkFMX0VSUk9SOwotICAgICAgIH0KLSAgICAgICBzdC0+dXNlcl9mb3Jj
ZWRfbW9kZSA9IGJha19tb2RlOwotICAgICAgIHN0LT51c2VyX2JhbmR3aWR0aCA9IGJha19iYW5k
d2lkdGg7Ci0gICAgICAgc3QtPmZvcmNlX2NoYW5uZWxzID0gYmFrX2NoYW5uZWxzOwotICAgICAg
IHN0LT5zaWxrX21vZGUudG9Nb25vID0gYmFrX3RvX21vbm87CiAgICAgICAgUkVTVE9SRV9TVEFD
SzsKICAgICAgICByZXR1cm4gcmV0OwogICAgIH0KLSAgICBjdXJyX2JhbmR3aWR0aCA9IHN0LT5i
YW5kd2lkdGg7CiAKLSAgICAvKiBDaG9vc2VzIHRoZSBhcHByb3ByaWF0ZSBtb2RlIGZvciBzcGVl
Y2gKLSAgICAgICAqTkVWRVIqIHN3aXRjaCB0by9mcm9tIENFTFQtb25seSBtb2RlIGhlcmUgYXMg
dGhpcyB3aWxsIGludmFsaWRhdGUgc29tZSBhc3N1bXB0aW9ucyAqLwotICAgIGlmIChzdC0+bW9k
ZSA9PSBNT0RFX1NJTEtfT05MWSAmJiBjdXJyX2JhbmR3aWR0aCA+IE9QVVNfQkFORFdJRFRIX1dJ
REVCQU5EKQotICAgICAgICBzdC0+bW9kZSA9IE1PREVfSFlCUklEOwotICAgIGlmIChzdC0+bW9k
ZSA9PSBNT0RFX0hZQlJJRCAmJiBjdXJyX2JhbmR3aWR0aCA8PSBPUFVTX0JBTkRXSURUSF9XSURF
QkFORCkKLSAgICAgICAgc3QtPm1vZGUgPSBNT0RFX1NJTEtfT05MWTsKKyAgICAvKiBGb3IgdGhl
IGZpcnN0IGZyYW1lIGF0IGEgbmV3IFNJTEsgYmFuZHdpZHRoICovCisgICAgaWYgKHN0LT5zaWxr
X2J3X3N3aXRjaCkKKyAgICB7CisgICAgICAgcmVkdW5kYW5jeSA9IDE7CisgICAgICAgY2VsdF90
b19zaWxrID0gMTsKKyAgICAgICBzdC0+c2lsa19id19zd2l0Y2ggPSAwOworICAgICAgIHByZWZp
bGw9MTsKKyAgICB9CisKKyAgICAvKiBJZiB3ZSBkZWNpZGVkIHRvIGdvIHdpdGggQ0VMVCwgbWFr
ZSBzdXJlIHJlZHVuZGFuY3kgaXMgb2ZmLCBubyBtYXR0ZXIgd2hhdAorICAgICAgIHdlIGRlY2lk
ZWQgZWFybGllci4gKi8KKyAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9DRUxUX09OTFkpCisgICAg
ICAgIHJlZHVuZGFuY3kgPSAwOworCisgICAgaWYgKHJlZHVuZGFuY3kpCisgICAgeworICAgICAg
IHJlZHVuZGFuY3lfYnl0ZXMgPSBjb21wdXRlX3JlZHVuZGFuY3lfYnl0ZXMobWF4X2RhdGFfYnl0
ZXMsIHN0LT5iaXRyYXRlX2JwcywgZnJhbWVfcmF0ZSwgc3QtPnN0cmVhbV9jaGFubmVscyk7Cisg
ICAgICAgaWYgKHJlZHVuZGFuY3lfYnl0ZXMgPT0gMCkKKyAgICAgICAgICByZWR1bmRhbmN5ID0g
MDsKKyAgICB9CiAKICAgICAvKiBwcmludGYoIiVkICVkICVkICVkXG4iLCBzdC0+Yml0cmF0ZV9i
cHMsIHN0LT5zdHJlYW1fY2hhbm5lbHMsIHN0LT5tb2RlLCBjdXJyX2JhbmR3aWR0aCk7ICovCiAg
ICAgYnl0ZXNfdGFyZ2V0ID0gSU1JTihtYXhfZGF0YV9ieXRlcy1yZWR1bmRhbmN5X2J5dGVzLCBz
dC0+Yml0cmF0ZV9icHMgKiBmcmFtZV9zaXplIC8gKHN0LT5GcyAqIDgpKSAtIDE7CkBAIC0xNDY3
LDcgKzE2MzYsNyBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAq
c3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogCiAgICAgaWYgKHN0LT5hcHBs
aWNhdGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9OX1ZPSVApCiAgICAgewotICAgICAgIGhwX2N1dG9m
ZihwY20sIGN1dG9mZl9IeiwgJnBjbV9idWZbdG90YWxfYnVmZmVyKnN0LT5jaGFubmVsc10sIHN0
LT5ocF9tZW0sIGZyYW1lX3NpemUsIHN0LT5jaGFubmVscywgc3QtPkZzKTsKKyAgICAgICBocF9j
dXRvZmYocGNtLCBjdXRvZmZfSHosICZwY21fYnVmW3RvdGFsX2J1ZmZlcipzdC0+Y2hhbm5lbHNd
LCBzdC0+aHBfbWVtLCBmcmFtZV9zaXplLCBzdC0+Y2hhbm5lbHMsIHN0LT5Gcywgc3QtPmFyY2gp
OwogICAgIH0gZWxzZSB7CiAgICAgICAgZGNfcmVqZWN0KHBjbSwgMywgJnBjbV9idWZbdG90YWxf
YnVmZmVyKnN0LT5jaGFubmVsc10sIHN0LT5ocF9tZW0sIGZyYW1lX3NpemUsIHN0LT5jaGFubmVs
cywgc3QtPkZzKTsKICAgICB9CkBAIC0xNDkyLDYgKzE2NjEsNyBAQCBvcHVzX2ludDMyIG9wdXNf
ZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50
IGZyYW1lXwogICAgIGlmIChzdC0+bW9kZSAhPSBNT0RFX0NFTFRfT05MWSkKICAgICB7CiAgICAg
ICAgIG9wdXNfaW50MzIgdG90YWxfYml0UmF0ZSwgY2VsdF9yYXRlOworICAgICAgICBvcHVzX2lu
dCBhY3Rpdml0eTsKICNpZmRlZiBGSVhFRF9QT0lOVAogICAgICAgIGNvbnN0IG9wdXNfaW50MTYg
KnBjbV9zaWxrOwogI2Vsc2UKQEAgLTE0OTksMzAgKzE2NjksMzEgQEAgb3B1c19pbnQzMiBvcHVz
X2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGlu
dCBmcmFtZV8KICAgICAgICBBTExPQyhwY21fc2lsaywgc3QtPmNoYW5uZWxzKmZyYW1lX3NpemUs
IG9wdXNfaW50MTYpOwogI2VuZGlmCiAKKyAgICAgICAgYWN0aXZpdHkgPSBWQURfTk9fREVDSVNJ
T047CisjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCisgICAgICAgIGlmKCBhbmFseXNpc19pbmZv
LnZhbGlkICkgeworICAgICAgICAgICAgLyogSW5mb3JtIFNJTEsgYWJvdXQgdGhlIE9wdXMgVkFE
IGRlY2lzaW9uICovCisgICAgICAgICAgICBhY3Rpdml0eSA9ICggYW5hbHlzaXNfaW5mby5hY3Rp
dml0eV9wcm9iYWJpbGl0eSA+PSBEVFhfQUNUSVZJVFlfVEhSRVNIT0xEICk7CisgICAgICAgIH0K
KyNlbmRpZgorCiAgICAgICAgIC8qIERpc3RyaWJ1dGUgYml0cyBiZXR3ZWVuIFNJTEsgYW5kIENF
TFQgKi8KICAgICAgICAgdG90YWxfYml0UmF0ZSA9IDggKiBieXRlc190YXJnZXQgKiBmcmFtZV9y
YXRlOwogICAgICAgICBpZiggc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQgKSB7Ci0gICAgICAgICAg
ICBpbnQgSEJfZ2Fpbl9yZWY7CiAgICAgICAgICAgICAvKiBCYXNlIHJhdGUgZm9yIFNJTEsgKi8K
LSAgICAgICAgICAgIHN0LT5zaWxrX21vZGUuYml0UmF0ZSA9IHN0LT5zdHJlYW1fY2hhbm5lbHMg
KiAoIDUwMDAgKyAxMDAwICogKCBzdC0+RnMgPT0gMTAwICogZnJhbWVfc2l6ZSApICk7Ci0gICAg
ICAgICAgICBpZiggY3Vycl9iYW5kd2lkdGggPT0gT1BVU19CQU5EV0lEVEhfU1VQRVJXSURFQkFO
RCApIHsKLSAgICAgICAgICAgICAgICAvKiBTSUxLIGdldHMgMi8zIG9mIHRoZSByZW1haW5pbmcg
Yml0cyAqLwotICAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUuYml0UmF0ZSArPSAoIHRvdGFs
X2JpdFJhdGUgLSBzdC0+c2lsa19tb2RlLmJpdFJhdGUgKSAqIDIgLyAzOwotICAgICAgICAgICAg
fSBlbHNlIHsgLyogRlVMTEJBTkQgKi8KLSAgICAgICAgICAgICAgICAvKiBTSUxLIGdldHMgMy81
IG9mIHRoZSByZW1haW5pbmcgYml0cyAqLwotICAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUu
Yml0UmF0ZSArPSAoIHRvdGFsX2JpdFJhdGUgLSBzdC0+c2lsa19tb2RlLmJpdFJhdGUgKSAqIDMg
LyA1OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLyogRG9uJ3QgbGV0IFNJTEsgdXNlIG1v
cmUgdGhhbiA4MCUgKi8KLSAgICAgICAgICAgIGlmKCBzdC0+c2lsa19tb2RlLmJpdFJhdGUgPiB0
b3RhbF9iaXRSYXRlICogNC81ICkgewotICAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUuYml0
UmF0ZSA9IHRvdGFsX2JpdFJhdGUgKiA0LzU7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICBz
dC0+c2lsa19tb2RlLmJpdFJhdGUgPSBjb21wdXRlX3NpbGtfcmF0ZV9mb3JfaHlicmlkKHRvdGFs
X2JpdFJhdGUsCisgICAgICAgICAgICAgICAgICBjdXJyX2JhbmR3aWR0aCwgc3QtPkZzID09IDUw
ICogZnJhbWVfc2l6ZSwgc3QtPnVzZV92YnIsIHN0LT5zaWxrX21vZGUuTEJSUl9jb2RlZCk7CiAg
ICAgICAgICAgICBpZiAoIXN0LT5lbmVyZ3lfbWFza2luZykKICAgICAgICAgICAgIHsKICAgICAg
ICAgICAgICAgIC8qIEluY3JlYXNpbmdseSBhdHRlbnVhdGUgaGlnaCBiYW5kIHdoZW4gaXQgZ2V0
cyBhbGxvY2F0ZWQgZmV3ZXIgYml0cyAqLwogICAgICAgICAgICAgICAgY2VsdF9yYXRlID0gdG90
YWxfYml0UmF0ZSAtIHN0LT5zaWxrX21vZGUuYml0UmF0ZTsKLSAgICAgICAgICAgICAgIEhCX2dh
aW5fcmVmID0gKGN1cnJfYmFuZHdpZHRoID09IE9QVVNfQkFORFdJRFRIX1NVUEVSV0lERUJBTkQp
ID8gMzAwMCA6IDM2MDA7Ci0gICAgICAgICAgICAgICBIQl9nYWluID0gU0hMMzIoKG9wdXNfdmFs
MzIpY2VsdF9yYXRlLCA5KSAvIFNIUjMyKChvcHVzX3ZhbDMyKWNlbHRfcmF0ZSArIHN0LT5zdHJl
YW1fY2hhbm5lbHMgKiBIQl9nYWluX3JlZiwgNik7Ci0gICAgICAgICAgICAgICBIQl9nYWluID0g
SEJfZ2FpbiA8IChvcHVzX3ZhbDMyKVExNU9ORSo2LzcgPyBIQl9nYWluICsgUTE1T05FLzcgOiBR
MTVPTkU7CisgICAgICAgICAgICAgICBIQl9nYWluID0gUTE1T05FIC0gU0hSMzIoY2VsdF9leHAy
KC1jZWx0X3JhdGUgKiBRQ09OU1QxNigxLmYvMTAyNCwgMTApKSwgMSk7CisjaWZuZGVmIEZJWEVE
X1BPSU5UCisgICAgICAgICAgICAgICAvKiBTYW5pdHkgY2hlY2sgb2YgaGlnaCBiYW5kIGdhaW4g
Ki8KKyAgICAgICAgICAgICAgIGlmIChjZWx0X2lzbmFuKEhCX2dhaW4pKSB7CisgICAgICAgICAg
ICAgICAgICAgSEJfZ2FpbiA9IFExNU9ORTsKKyAgICAgICAgICAgICAgIH0KKyNlbmRpZgogICAg
ICAgICAgICAgfQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLyogU0lMSyBnZXRzIGFs
bCBiaXRzICovCkBAIC0xNTY5LDcgKzE3NDAsNiBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25h
dGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwog
ICAgICAgICAgICAgICBzdC0+c2lsa19tb2RlLmJpdFJhdGUgKz0gMypyYXRlX29mZnNldC81Owog
ICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUuYml0UmF0ZSArPSBy
YXRlX29mZnNldDsKLSAgICAgICAgICAgYnl0ZXNfdGFyZ2V0ICs9IHJhdGVfb2Zmc2V0ICogZnJh
bWVfc2l6ZSAvICg4ICogc3QtPkZzKTsKICAgICAgICAgfQogCiAgICAgICAgIHN0LT5zaWxrX21v
ZGUucGF5bG9hZFNpemVfbXMgPSAxMDAwICogZnJhbWVfc2l6ZSAvIHN0LT5GczsKQEAgLTE1OTAs
NDAgKzE3NjAsNTIgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIg
KnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAgICAgIHN0LT5z
aWxrX21vZGUubWluSW50ZXJuYWxTYW1wbGVSYXRlID0gODAwMDsKICAgICAgICAgfQogCisgICAg
ICAgIHN0LT5zaWxrX21vZGUubWF4SW50ZXJuYWxTYW1wbGVSYXRlID0gMTYwMDA7CiAgICAgICAg
IGlmIChzdC0+bW9kZSA9PSBNT0RFX1NJTEtfT05MWSkKICAgICAgICAgewogICAgICAgICAgICBv
cHVzX2ludDMyIGVmZmVjdGl2ZV9tYXhfcmF0ZSA9IG1heF9yYXRlOwotICAgICAgICAgICBzdC0+
c2lsa19tb2RlLm1heEludGVybmFsU2FtcGxlUmF0ZSA9IDE2MDAwOwogICAgICAgICAgICBpZiAo
ZnJhbWVfcmF0ZSA+IDUwKQogICAgICAgICAgICAgICBlZmZlY3RpdmVfbWF4X3JhdGUgPSBlZmZl
Y3RpdmVfbWF4X3JhdGUqMi8zOwotICAgICAgICAgICBpZiAoZWZmZWN0aXZlX21heF9yYXRlIDwg
MTMwMDApCisgICAgICAgICAgIGlmIChlZmZlY3RpdmVfbWF4X3JhdGUgPCA4MDAwKQogICAgICAg
ICAgICB7CiAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4SW50ZXJuYWxTYW1wbGVSYXRl
ID0gMTIwMDA7CiAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUuZGVzaXJlZEludGVybmFsU2Ft
cGxlUmF0ZSA9IElNSU4oMTIwMDAsIHN0LT5zaWxrX21vZGUuZGVzaXJlZEludGVybmFsU2FtcGxl
UmF0ZSk7CiAgICAgICAgICAgIH0KLSAgICAgICAgICAgaWYgKGVmZmVjdGl2ZV9tYXhfcmF0ZSA8
IDk2MDApCisgICAgICAgICAgIGlmIChlZmZlY3RpdmVfbWF4X3JhdGUgPCA3MDAwKQogICAgICAg
ICAgICB7CiAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4SW50ZXJuYWxTYW1wbGVSYXRl
ID0gODAwMDsKICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5kZXNpcmVkSW50ZXJuYWxTYW1w
bGVSYXRlID0gSU1JTig4MDAwLCBzdC0+c2lsa19tb2RlLmRlc2lyZWRJbnRlcm5hbFNhbXBsZVJh
dGUpOwogICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgIHN0LT5zaWxr
X21vZGUubWF4SW50ZXJuYWxTYW1wbGVSYXRlID0gMTYwMDA7CiAgICAgICAgIH0KIAogICAgICAg
ICBzdC0+c2lsa19tb2RlLnVzZUNCUiA9ICFzdC0+dXNlX3ZicjsKIAogICAgICAgICAvKiBDYWxs
IFNJTEsgZW5jb2RlciBmb3IgdGhlIGxvdyBiYW5kICovCi0gICAgICAgIG5CeXRlcyA9IElNSU4o
MTI3NSwgbWF4X2RhdGFfYnl0ZXMtMS1yZWR1bmRhbmN5X2J5dGVzKTsKIAotICAgICAgICBzdC0+
c2lsa19tb2RlLm1heEJpdHMgPSBuQnl0ZXMqODsKLSAgICAgICAgLyogT25seSBhbGxvdyB1cCB0
byA5MCUgb2YgdGhlIGJpdHMgZm9yIGh5YnJpZCBtb2RlKi8KLSAgICAgICAgaWYgKHN0LT5tb2Rl
ID09IE1PREVfSFlCUklEKQotICAgICAgICAgICBzdC0+c2lsa19tb2RlLm1heEJpdHMgPSAob3B1
c19pbnQzMilzdC0+c2lsa19tb2RlLm1heEJpdHMqOS8xMDsKKyAgICAgICAgLyogTWF4IGJpdHMg
Zm9yIFNJTEssIGNvdW50aW5nIFRvQywgcmVkdW5kYW5jeSBieXRlcywgYW5kIG9wdGlvbmFsbHkg
cmVkdW5kYW5jeS4gKi8KKyAgICAgICAgc3QtPnNpbGtfbW9kZS5tYXhCaXRzID0gKG1heF9kYXRh
X2J5dGVzLTEpKjg7CisgICAgICAgIGlmIChyZWR1bmRhbmN5ICYmIHJlZHVuZGFuY3lfYnl0ZXMg
Pj0gMikKKyAgICAgICAgeworICAgICAgICAgICAvKiBDb3VudGluZyAxIGJpdCBmb3IgcmVkdW5k
YW5jeSBwb3NpdGlvbiBhbmQgMjAgYml0cyBmb3IgZmxhZytzaXplIChvbmx5IGZvciBoeWJyaWQp
LiAqLworICAgICAgICAgICBzdC0+c2lsa19tb2RlLm1heEJpdHMgLT0gcmVkdW5kYW5jeV9ieXRl
cyo4ICsgMTsKKyAgICAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQorICAgICAg
ICAgICAgICBzdC0+c2lsa19tb2RlLm1heEJpdHMgLT0gMjA7CisgICAgICAgIH0KICAgICAgICAg
aWYgKHN0LT5zaWxrX21vZGUudXNlQ0JSKQogICAgICAgICB7Ci0gICAgICAgICAgIHN0LT5zaWxr
X21vZGUubWF4Qml0cyA9IChzdC0+c2lsa19tb2RlLmJpdFJhdGUgKiBmcmFtZV9zaXplIC8gKHN0
LT5GcyAqIDgpKSo4OwotICAgICAgICAgICAvKiBSZWR1Y2UgdGhlIGluaXRpYWwgdGFyZ2V0IHRv
IG1ha2UgaXQgZWFzaWVyIHRvIHJlYWNoIHRoZSBDQlIgcmF0ZSAqLwotICAgICAgICAgICBzdC0+
c2lsa19tb2RlLmJpdFJhdGUgPSBJTUFYKDEsIHN0LT5zaWxrX21vZGUuYml0UmF0ZS0yMDAwKTsK
KyAgICAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQorICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4Qml0cyA9IElNSU4oc3QtPnNpbGtfbW9kZS5t
YXhCaXRzLCBzdC0+c2lsa19tb2RlLmJpdFJhdGUgKiBmcmFtZV9zaXplIC8gc3QtPkZzKTsKKyAg
ICAgICAgICAgfQorICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAvKiBDb25zdHJhaW5lZCBW
QlIuICovCisgICAgICAgICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCkKKyAgICAgICAg
ICAgeworICAgICAgICAgICAgICAvKiBDb21wdXRlIFNJTEsgYml0cmF0ZSBjb3JyZXNwb25kaW5n
IHRvIHRoZSBtYXggdG90YWwgYml0cyBhdmFpbGFibGUgKi8KKyAgICAgICAgICAgICAgb3B1c19p
bnQzMiBtYXhCaXRSYXRlID0gY29tcHV0ZV9zaWxrX3JhdGVfZm9yX2h5YnJpZChzdC0+c2lsa19t
b2RlLm1heEJpdHMqc3QtPkZzIC8gZnJhbWVfc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgY3Vy
cl9iYW5kd2lkdGgsIHN0LT5GcyA9PSA1MCAqIGZyYW1lX3NpemUsIHN0LT51c2VfdmJyLCBzdC0+
c2lsa19tb2RlLkxCUlJfY29kZWQpOworICAgICAgICAgICAgICBzdC0+c2lsa19tb2RlLm1heEJp
dHMgPSBtYXhCaXRSYXRlICogZnJhbWVfc2l6ZSAvIHN0LT5GczsKKyAgICAgICAgICAgfQogICAg
ICAgICB9CiAKICAgICAgICAgaWYgKHByZWZpbGwpCkBAIC0xNjQ2LDcgKzE4MjgsNyBAQCBvcHVz
X2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFs
MTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAgICAgICAgZm9yIChpPTA7aTxzdC0+ZW5jb2Rlcl9i
dWZmZXIqc3QtPmNoYW5uZWxzO2krKykKICAgICAgICAgICAgICAgICBwY21fc2lsa1tpXSA9IEZM
T0FUMklOVDE2KHN0LT5kZWxheV9idWZmZXJbaV0pOwogI2VuZGlmCi0gICAgICAgICAgICBzaWxr
X0VuY29kZSggc2lsa19lbmMsICZzdC0+c2lsa19tb2RlLCBwY21fc2lsaywgc3QtPmVuY29kZXJf
YnVmZmVyLCBOVUxMLCAmemVybywgMSApOworICAgICAgICAgICAgc2lsa19FbmNvZGUoIHNpbGtf
ZW5jLCAmc3QtPnNpbGtfbW9kZSwgcGNtX3NpbGssIHN0LT5lbmNvZGVyX2J1ZmZlciwgTlVMTCwg
Jnplcm8sIDEsIGFjdGl2aXR5ICk7CiAgICAgICAgIH0KIAogI2lmZGVmIEZJWEVEX1BPSU5UCkBA
IC0xNjU1LDIwICsxODM3LDE0IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNF
bmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAgIGZv
ciAoaT0wO2k8ZnJhbWVfc2l6ZSpzdC0+Y2hhbm5lbHM7aSsrKQogICAgICAgICAgICAgcGNtX3Np
bGtbaV0gPSBGTE9BVDJJTlQxNihwY21fYnVmW3RvdGFsX2J1ZmZlcipzdC0+Y2hhbm5lbHMgKyBp
XSk7CiAjZW5kaWYKLSAgICAgICAgcmV0ID0gc2lsa19FbmNvZGUoIHNpbGtfZW5jLCAmc3QtPnNp
bGtfbW9kZSwgcGNtX3NpbGssIGZyYW1lX3NpemUsICZlbmMsICZuQnl0ZXMsIDAgKTsKKyAgICAg
ICAgcmV0ID0gc2lsa19FbmNvZGUoIHNpbGtfZW5jLCAmc3QtPnNpbGtfbW9kZSwgcGNtX3NpbGss
IGZyYW1lX3NpemUsICZlbmMsICZuQnl0ZXMsIDAsIGFjdGl2aXR5ICk7CiAgICAgICAgIGlmKCBy
ZXQgKSB7CiAgICAgICAgICAgICAvKmZwcmludGYgKHN0ZGVyciwgIlNJTEsgZW5jb2RlIGVycm9y
OiAlZFxuIiwgcmV0KTsqLwogICAgICAgICAgICAgLyogSGFuZGxlIGVycm9yICovCiAgICAgICAg
ICAgIFJFU1RPUkVfU1RBQ0s7CiAgICAgICAgICAgIHJldHVybiBPUFVTX0lOVEVSTkFMX0VSUk9S
OwogICAgICAgICB9Ci0gICAgICAgIGlmIChuQnl0ZXM9PTApCi0gICAgICAgIHsKLSAgICAgICAg
ICAgc3QtPnJhbmdlRmluYWwgPSAwOwotICAgICAgICAgICBkYXRhWy0xXSA9IGdlbl90b2Moc3Qt
Pm1vZGUsIHN0LT5Gcy9mcmFtZV9zaXplLCBjdXJyX2JhbmR3aWR0aCwgc3QtPnN0cmVhbV9jaGFu
bmVscyk7Ci0gICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7Ci0gICAgICAgICAgIHJldHVybiAxOwot
ICAgICAgICB9CisKICAgICAgICAgLyogRXh0cmFjdCBTSUxLIGludGVybmFsIGJhbmR3aWR0aCBm
b3Igc2lnbmFsaW5nIGluIGZpcnN0IGJ5dGUgKi8KICAgICAgICAgaWYoIHN0LT5tb2RlID09IE1P
REVfU0lMS19PTkxZICkgewogICAgICAgICAgICAgaWYoIHN0LT5zaWxrX21vZGUuaW50ZXJuYWxT
YW1wbGVSYXRlID09IDgwMDAgKSB7CkBAIC0xNjgyLDExICsxODU4LDIxIEBAIG9wdXNfaW50MzIg
b3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNt
LCBpbnQgZnJhbWVfCiAgICAgICAgICAgICBzaWxrX2Fzc2VydCggc3QtPnNpbGtfbW9kZS5pbnRl
cm5hbFNhbXBsZVJhdGUgPT0gMTYwMDAgKTsKICAgICAgICAgfQogCi0gICAgICAgIHN0LT5zaWxr
X21vZGUub3B1c0NhblN3aXRjaCA9IHN0LT5zaWxrX21vZGUuc3dpdGNoUmVhZHk7CisgICAgICAg
IHN0LT5zaWxrX21vZGUub3B1c0NhblN3aXRjaCA9IHN0LT5zaWxrX21vZGUuc3dpdGNoUmVhZHkg
JiYgIXN0LT5ub25maW5hbF9mcmFtZTsKKworICAgICAgICBpZiAobkJ5dGVzPT0wKQorICAgICAg
ICB7CisgICAgICAgICAgIHN0LT5yYW5nZUZpbmFsID0gMDsKKyAgICAgICAgICAgZGF0YVstMV0g
PSBnZW5fdG9jKHN0LT5tb2RlLCBzdC0+RnMvZnJhbWVfc2l6ZSwgY3Vycl9iYW5kd2lkdGgsIHN0
LT5zdHJlYW1fY2hhbm5lbHMpOworICAgICAgICAgICBSRVNUT1JFX1NUQUNLOworICAgICAgICAg
ICByZXR1cm4gMTsKKyAgICAgICAgfQorCiAgICAgICAgIC8qIEZJWE1FOiBIb3cgZG8gd2UgYWxs
b2NhdGUgdGhlIHJlZHVuZGFuY3kgZm9yIENCUj8gKi8KICAgICAgICAgaWYgKHN0LT5zaWxrX21v
ZGUub3B1c0NhblN3aXRjaCkKICAgICAgICAgewotICAgICAgICAgICByZWR1bmRhbmN5ID0gMTsK
KyAgICAgICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9IGNvbXB1dGVfcmVkdW5kYW5jeV9ieXRlcyht
YXhfZGF0YV9ieXRlcywgc3QtPmJpdHJhdGVfYnBzLCBmcmFtZV9yYXRlLCBzdC0+c3RyZWFtX2No
YW5uZWxzKTsKKyAgICAgICAgICAgcmVkdW5kYW5jeSA9IChyZWR1bmRhbmN5X2J5dGVzICE9IDAp
OwogICAgICAgICAgICBjZWx0X3RvX3NpbGsgPSAwOwogICAgICAgICAgICBzdC0+c2lsa19id19z
d2l0Y2ggPSAxOwogICAgICAgICB9CkBAIC0xNzI3LDQwICsxOTEzLDE4IEBAIG9wdXNfaW50MzIg
b3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNt
LCBpbnQgZnJhbWVfCiAKICAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQogICAg
ICAgICB7Ci0gICAgICAgICAgICBpbnQgbGVuOwotCi0gICAgICAgICAgICBsZW4gPSAoZWNfdGVs
bCgmZW5jKSs3KT4+MzsKLSAgICAgICAgICAgIGlmIChyZWR1bmRhbmN5KQotICAgICAgICAgICAg
ICAgbGVuICs9IHN0LT5tb2RlID09IE1PREVfSFlCUklEID8gMyA6IDE7CiAgICAgICAgICAgICBp
Ziggc3QtPnVzZV92YnIgKSB7Ci0gICAgICAgICAgICAgICAgbmJfY29tcHJfYnl0ZXMgPSBsZW4g
KyBieXRlc190YXJnZXQgLSAoc3QtPnNpbGtfbW9kZS5iaXRSYXRlICogZnJhbWVfc2l6ZSkgLyAo
OCAqIHN0LT5Gcyk7Ci0gICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgIC8qIGNo
ZWNrIGlmIFNJTEsgdXNlZCB1cCB0b28gbXVjaCAqLwotICAgICAgICAgICAgICAgIG5iX2NvbXBy
X2J5dGVzID0gbGVuID4gYnl0ZXNfdGFyZ2V0ID8gbGVuIDogYnl0ZXNfdGFyZ2V0OworICAgICAg
ICAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX0JJVFJBVEUoc3Qt
PmJpdHJhdGVfYnBzLXN0LT5zaWxrX21vZGUuYml0UmF0ZSkpOworICAgICAgICAgICAgICAgIGNl
bHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX1ZCUl9DT05TVFJBSU5UKDApKTsKICAg
ICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGlmIChzdC0+dXNlX3Zi
cikKICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBvcHVzX2ludDMyIGJvbnVzPTA7Ci0j
aWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCi0gICAgICAgICAgICAgICAgaWYgKHN0LT52YXJpYWJs
ZV9kdXJhdGlvbj09T1BVU19GUkFNRVNJWkVfVkFSSUFCTEUgJiYgZnJhbWVfc2l6ZSAhPSBzdC0+
RnMvNTApCi0gICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgIGJvbnVzID0gKDYw
KnN0LT5zdHJlYW1fY2hhbm5lbHMrNDApKihzdC0+RnMvZnJhbWVfc2l6ZS01MCk7Ci0gICAgICAg
ICAgICAgICAgICAgaWYgKGFuYWx5c2lzX2luZm8udmFsaWQpCi0gICAgICAgICAgICAgICAgICAg
ICAgYm9udXMgPSAob3B1c19pbnQzMikoYm9udXMqKDEuZisuNWYqYW5hbHlzaXNfaW5mby50b25h
bGl0eSkpOwotICAgICAgICAgICAgICAgIH0KLSNlbmRpZgogICAgICAgICAgICAgICAgIGNlbHRf
ZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX1ZCUigxKSk7CiAgICAgICAgICAgICAgICAg
Y2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoc3QtPnZi
cl9jb25zdHJhaW50KSk7Ci0gICAgICAgICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2Vu
YywgT1BVU19TRVRfQklUUkFURShzdC0+Yml0cmF0ZV9icHMrYm9udXMpKTsKLSAgICAgICAgICAg
ICAgICBuYl9jb21wcl9ieXRlcyA9IG1heF9kYXRhX2J5dGVzLTEtcmVkdW5kYW5jeV9ieXRlczsK
LSAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgbmJfY29tcHJfYnl0ZXMgPSBi
eXRlc190YXJnZXQ7CisgICAgICAgICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywg
T1BVU19TRVRfQklUUkFURShzdC0+Yml0cmF0ZV9icHMpKTsKICAgICAgICAgICAgIH0KICAgICAg
ICAgfQotCi0gICAgfSBlbHNlIHsKLSAgICAgICAgbmJfY29tcHJfYnl0ZXMgPSAwOwogICAgIH0K
IAogICAgIEFMTE9DKHRtcF9wcmVmaWxsLCBzdC0+Y2hhbm5lbHMqc3QtPkZzLzQwMCwgb3B1c192
YWwxNik7CkBAIC0xNzg2LDcgKzE5NTAsNyBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2
ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAg
IH0KICAgICBzdC0+cHJldl9IQl9nYWluID0gSEJfZ2FpbjsKICAgICBpZiAoc3QtPm1vZGUgIT0g
TU9ERV9IWUJSSUQgfHwgc3QtPnN0cmVhbV9jaGFubmVscz09MSkKLSAgICAgICBzdC0+c2lsa19t
b2RlLnN0ZXJlb1dpZHRoX1ExNCA9IElNSU4oKDE8PDE0KSwyKklNQVgoMCxlcXVpdl9yYXRlLTMw
MDAwKSk7CisgICAgICAgc3QtPnNpbGtfbW9kZS5zdGVyZW9XaWR0aF9RMTQgPSBJTUlOKCgxPDwx
NCksMipJTUFYKDAsZXF1aXZfcmF0ZS0yNDAwMCkpOwogICAgIGlmKCAhc3QtPmVuZXJneV9tYXNr
aW5nICYmIHN0LT5jaGFubmVscyA9PSAyICkgewogICAgICAgICAvKiBBcHBseSBzdGVyZW8gd2lk
dGggcmVkdWN0aW9uIChhdCBsb3cgYml0cmF0ZXMpICovCiAgICAgICAgIGlmKCBzdC0+aHlicmlk
X3N0ZXJlb193aWR0aF9RMTQgPCAoMSA8PCAxNCkgfHwgc3QtPnNpbGtfbW9kZS5zdGVyZW9XaWR0
aF9RMTQgPCAoMSA8PCAxNCkgKSB7CkBAIC0xODA5LDE5ICsxOTczLDIzIEBAIG9wdXNfaW50MzIg
b3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNt
LCBpbnQgZnJhbWVfCiAgICAgaWYgKCBzdC0+bW9kZSAhPSBNT0RFX0NFTFRfT05MWSAmJiBlY190
ZWxsKCZlbmMpKzE3KzIwKihzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCkgPD0gOCoobWF4X2RhdGFf
Ynl0ZXMtMSkpCiAgICAgewogICAgICAgICAvKiBGb3IgU0lMSyBtb2RlLCB0aGUgcmVkdW5kYW5j
eSBpcyBpbmZlcnJlZCBmcm9tIHRoZSBsZW5ndGggKi8KLSAgICAgICAgaWYgKHN0LT5tb2RlID09
IE1PREVfSFlCUklEICYmIChyZWR1bmRhbmN5IHx8IGVjX3RlbGwoJmVuYykrMzcgPD0gOCpuYl9j
b21wcl9ieXRlcykpCisgICAgICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCkKICAgICAg
ICAgICAgZWNfZW5jX2JpdF9sb2dwKCZlbmMsIHJlZHVuZGFuY3ksIDEyKTsKICAgICAgICAgaWYg
KHJlZHVuZGFuY3kpCiAgICAgICAgIHsKICAgICAgICAgICAgIGludCBtYXhfcmVkdW5kYW5jeTsK
ICAgICAgICAgICAgIGVjX2VuY19iaXRfbG9ncCgmZW5jLCBjZWx0X3RvX3NpbGssIDEpOwogICAg
ICAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQotICAgICAgICAgICAgICAgbWF4
X3JlZHVuZGFuY3kgPSAobWF4X2RhdGFfYnl0ZXMtMSktbmJfY29tcHJfYnl0ZXM7CisgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAvKiBSZXNlcnZlIHRoZSA4IGJpdHMgbmVlZGVkIGZvciB0
aGUgcmVkdW5kYW5jeSBsZW5ndGgsCisgICAgICAgICAgICAgICAgICBhbmQgYXQgbGVhc3QgYSBm
ZXcgYml0cyBmb3IgQ0VMVCBpZiBwb3NzaWJsZSAqLworICAgICAgICAgICAgICAgbWF4X3JlZHVu
ZGFuY3kgPSAobWF4X2RhdGFfYnl0ZXMtMSktKChlY190ZWxsKCZlbmMpKzgrMys3KT4+Myk7Cisg
ICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICBtYXhfcmVkdW5k
YW5jeSA9IChtYXhfZGF0YV9ieXRlcy0xKS0oKGVjX3RlbGwoJmVuYykrNyk+PjMpOwogICAgICAg
ICAgICAgLyogVGFyZ2V0IHRoZSBzYW1lIGJpdC1yYXRlIGZvciByZWR1bmRhbmN5IGFzIGZvciB0
aGUgcmVzdCwKICAgICAgICAgICAgICAgIHVwIHRvIGEgbWF4IG9mIDI1NyBieXRlcyAqLwotICAg
ICAgICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9IElNSU4obWF4X3JlZHVuZGFuY3ksIHN0LT5iaXRy
YXRlX2Jwcy8xNjAwKTsKKyAgICAgICAgICAgIHJlZHVuZGFuY3lfYnl0ZXMgPSBJTUlOKG1heF9y
ZWR1bmRhbmN5LCByZWR1bmRhbmN5X2J5dGVzKTsKICAgICAgICAgICAgIHJlZHVuZGFuY3lfYnl0
ZXMgPSBJTUlOKDI1NywgSU1BWCgyLCByZWR1bmRhbmN5X2J5dGVzKSk7CiAgICAgICAgICAgICBp
ZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQpCiAgICAgICAgICAgICAgICAgZWNfZW5jX3VpbnQo
JmVuYywgcmVkdW5kYW5jeV9ieXRlcy0yLCAyNTYpOwpAQCAtMTg0Myw3ICsyMDExLDcgQEAgb3B1
c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3Zh
bDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAgZWNfZW5jX2RvbmUoJmVuYyk7CiAgICAgICAg
IG5iX2NvbXByX2J5dGVzID0gcmV0OwogICAgIH0gZWxzZSB7Ci0gICAgICAgbmJfY29tcHJfYnl0
ZXMgPSBJTUlOKChtYXhfZGF0YV9ieXRlcy0xKS1yZWR1bmRhbmN5X2J5dGVzLCBuYl9jb21wcl9i
eXRlcyk7CisgICAgICAgbmJfY29tcHJfYnl0ZXMgPSAobWF4X2RhdGFfYnl0ZXMtMSktcmVkdW5k
YW5jeV9ieXRlczsKICAgICAgICBlY19lbmNfc2hyaW5rKCZlbmMsIG5iX2NvbXByX2J5dGVzKTsK
ICAgICB9CiAKQEAgLTE4NTEsNiArMjAxOSwxNCBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25h
dGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwog
ICAgIGlmIChyZWR1bmRhbmN5IHx8IHN0LT5tb2RlICE9IE1PREVfU0lMS19PTkxZKQogICAgICAg
IGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIENFTFRfU0VUX0FOQUxZU0lTKCZhbmFseXNpc19p
bmZvKSk7CiAjZW5kaWYKKyAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQpIHsKKyAgICAg
ICBTSUxLSW5mbyBpbmZvOworICAgICAgIGluZm8uc2lnbmFsVHlwZSA9IHN0LT5zaWxrX21vZGUu
c2lnbmFsVHlwZTsKKyAgICAgICBpbmZvLm9mZnNldCA9IHN0LT5zaWxrX21vZGUub2Zmc2V0Owor
ICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIENFTFRfU0VUX1NJTEtfSU5GTygmaW5m
bykpOworICAgIH0gZWxzZSB7CisgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgQ0VM
VF9TRVRfU0lMS19JTkZPKChTSUxLSW5mbyopTlVMTCkpOworICAgIH0KIAogICAgIC8qIDUgbXMg
cmVkdW5kYW50IGZyYW1lIGZvciBDRUxULT5TSUxLICovCiAgICAgaWYgKHJlZHVuZGFuY3kgJiYg
Y2VsdF90b19zaWxrKQpAQCAtMTg1OCw2ICsyMDM0LDcgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29k
ZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFt
ZV8KICAgICAgICAgaW50IGVycjsKICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywg
Q0VMVF9TRVRfU1RBUlRfQkFORCgwKSk7CiAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9l
bmMsIE9QVVNfU0VUX1ZCUigwKSk7CisgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMs
IE9QVVNfU0VUX0JJVFJBVEUoT1BVU19CSVRSQVRFX01BWCkpOwogICAgICAgICBlcnIgPSBjZWx0
X2VuY29kZV93aXRoX2VjKGNlbHRfZW5jLCBwY21fYnVmLCBzdC0+RnMvMjAwLCBkYXRhK25iX2Nv
bXByX2J5dGVzLCByZWR1bmRhbmN5X2J5dGVzLCBOVUxMKTsKICAgICAgICAgaWYgKGVyciA8IDAp
CiAgICAgICAgIHsKQEAgLTE4ODEsMTUgKzIwNTgsMjUgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29k
ZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFt
ZV8KICAgICAgICAgICAgY2VsdF9lbmNvZGVfd2l0aF9lYyhjZWx0X2VuYywgdG1wX3ByZWZpbGws
IHN0LT5Gcy80MDAsIGR1bW15LCAyLCBOVUxMKTsKICAgICAgICAgICAgY2VsdF9lbmNvZGVyX2N0
bChjZWx0X2VuYywgQ0VMVF9TRVRfUFJFRElDVElPTigwKSk7CiAgICAgICAgIH0KLSAgICAgICAg
LyogSWYgZmFsc2UsIHdlIGFscmVhZHkgYnVzdGVkIHRoZSBidWRnZXQgYW5kIHdlJ2xsIGVuZCB1
cCB3aXRoIGEgIlBMQyBwYWNrZXQiICovCisgICAgICAgIC8qIElmIGZhbHNlLCB3ZSBhbHJlYWR5
IGJ1c3RlZCB0aGUgYnVkZ2V0IGFuZCB3ZSdsbCBlbmQgdXAgd2l0aCBhICJQTEMgZnJhbWUiICov
CiAgICAgICAgIGlmIChlY190ZWxsKCZlbmMpIDw9IDgqbmJfY29tcHJfYnl0ZXMpCiAgICAgICAg
IHsKKyAgICAgICAgICAgLyogU2V0IHRoZSBiaXRyYXRlIGFnYWluIGlmIGl0IHdhcyBvdmVycmlk
ZGVuIGluIHRoZSByZWR1bmRhbmN5IGNvZGUgYWJvdmUqLworICAgICAgICAgICBpZiAocmVkdW5k
YW5jeSAmJiBjZWx0X3RvX3NpbGsgJiYgc3QtPm1vZGU9PU1PREVfSFlCUklEICYmIHN0LT51c2Vf
dmJyKQorICAgICAgICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBPUFVTX1NFVF9C
SVRSQVRFKHN0LT5iaXRyYXRlX2Jwcy1zdC0+c2lsa19tb2RlLmJpdFJhdGUpKTsKKyAgICAgICAg
ICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfVkJSKHN0LT51c2VfdmJyKSk7
CiAgICAgICAgICAgIHJldCA9IGNlbHRfZW5jb2RlX3dpdGhfZWMoY2VsdF9lbmMsIHBjbV9idWYs
IGZyYW1lX3NpemUsIE5VTEwsIG5iX2NvbXByX2J5dGVzLCAmZW5jKTsKICAgICAgICAgICAgaWYg
KHJldCA8IDApCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgUkVTVE9SRV9TVEFDSzsKICAg
ICAgICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJOQUxfRVJST1I7CiAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgLyogUHV0IENFTFQtPlNJTEsgcmVkdW5kYW5jeSBkYXRhIGluIHRoZSByaWdodCBw
bGFjZS4gKi8KKyAgICAgICAgICAgaWYgKHJlZHVuZGFuY3kgJiYgY2VsdF90b19zaWxrICYmIHN0
LT5tb2RlPT1NT0RFX0hZQlJJRCAmJiBzdC0+dXNlX3ZicikKKyAgICAgICAgICAgeworICAgICAg
ICAgICAgICBPUFVTX01PVkUoZGF0YStyZXQsIGRhdGErbmJfY29tcHJfYnl0ZXMsIHJlZHVuZGFu
Y3lfYnl0ZXMpOworICAgICAgICAgICAgICBuYl9jb21wcl9ieXRlcyA9IG5iX2NvbXByX2J5dGVz
K3JlZHVuZGFuY3lfYnl0ZXM7CisgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KIApAQCAt
MTkwNSw3ICsyMDkyLDE1IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNv
ZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAgIGNlbHRf
ZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfUkVTRVRfU1RBVEUpOwogICAgICAgICBjZWx0X2Vu
Y29kZXJfY3RsKGNlbHRfZW5jLCBDRUxUX1NFVF9TVEFSVF9CQU5EKDApKTsKICAgICAgICAgY2Vs
dF9lbmNvZGVyX2N0bChjZWx0X2VuYywgQ0VMVF9TRVRfUFJFRElDVElPTigwKSk7CisgICAgICAg
IGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX1ZCUigwKSk7CisgICAgICAgIGNl
bHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX0JJVFJBVEUoT1BVU19CSVRSQVRFX01B
WCkpOwogCisgICAgICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCkKKyAgICAgICAgewor
ICAgICAgICAgICAvKiBTaHJpbmsgcGFja2V0IHRvIHdoYXQgdGhlIGVuY29kZXIgYWN0dWFsbHkg
dXNlZC4gKi8KKyAgICAgICAgICAgbmJfY29tcHJfYnl0ZXMgPSByZXQ7CisgICAgICAgICAgIGVj
X2VuY19zaHJpbmsoJmVuYywgbmJfY29tcHJfYnl0ZXMpOworICAgICAgICB9CiAgICAgICAgIC8q
IE5PVEU6IFdlIGNvdWxkIHNwZWVkIHRoaXMgdXAgc2xpZ2h0bHkgKGF0IHRoZSBleHBlbnNlIG9m
IGNvZGUgc2l6ZSkgYnkganVzdCBhZGRpbmcgYSBmdW5jdGlvbiB0aGF0IHByZWZpbGxzIHRoZSBi
dWZmZXIgKi8KICAgICAgICAgY2VsdF9lbmNvZGVfd2l0aF9lYyhjZWx0X2VuYywgcGNtX2J1Zitz
dC0+Y2hhbm5lbHMqKGZyYW1lX3NpemUtTjItTjQpLCBONCwgZHVtbXksIDIsIE5VTEwpOwogCkBA
IC0xOTM1LDYgKzIxMzAsMjEgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0Vu
Y29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KIAogICAgIHN0LT5m
aXJzdCA9IDA7CiAKKyAgICAvKiBEVFggZGVjaXNpb24gKi8KKyNpZm5kZWYgRElTQUJMRV9GTE9B
VF9BUEkKKyAgICBpZiAoc3QtPnVzZV9kdHggJiYgKGFuYWx5c2lzX2luZm8udmFsaWQgfHwgaXNf
c2lsZW5jZSkpCisgICAgeworICAgICAgIGlmIChkZWNpZGVfZHR4X21vZGUoYW5hbHlzaXNfaW5m
by5hY3Rpdml0eV9wcm9iYWJpbGl0eSwgJnN0LT5uYl9ub19hY3Rpdml0eV9mcmFtZXMsCisgICAg
ICAgICAgICAgc3QtPnBlYWtfc2lnbmFsX2VuZXJneSwgcGNtLCBmcmFtZV9zaXplLCBzdC0+Y2hh
bm5lbHMsIGlzX3NpbGVuY2UsIHN0LT5hcmNoKSkKKyAgICAgICB7CisgICAgICAgICAgc3QtPnJh
bmdlRmluYWwgPSAwOworICAgICAgICAgIGRhdGFbMF0gPSBnZW5fdG9jKHN0LT5tb2RlLCBzdC0+
RnMvZnJhbWVfc2l6ZSwgY3Vycl9iYW5kd2lkdGgsIHN0LT5zdHJlYW1fY2hhbm5lbHMpOworICAg
ICAgICAgIFJFU1RPUkVfU1RBQ0s7CisgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgfQorICAg
IH0KKyNlbmRpZgorCiAgICAgLyogSW4gdGhlIHVubGlrZWx5IGNhc2UgdGhhdCB0aGUgU0lMSyBl
bmNvZGVyIGJ1c3RlZCBpdHMgdGFyZ2V0LCB0ZWxsCiAgICAgICAgdGhlIGRlY29kZXIgdG8gY2Fs
bCB0aGUgUExDICovCiAgICAgaWYgKGVjX3RlbGwoJmVuYykgPiAobWF4X2RhdGFfYnl0ZXMtMSkq
OCkKQEAgLTE5NjIsNyArMjE3Miw2IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9w
dXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgaWYg
KCFzdC0+dXNlX3ZicikKICAgICB7CiAgICAgICAgaWYgKG9wdXNfcGFja2V0X3BhZChkYXRhLCBy
ZXQsIG1heF9kYXRhX2J5dGVzKSAhPSBPUFVTX09LKQotCiAgICAgICAgewogICAgICAgICAgIFJF
U1RPUkVfU1RBQ0s7CiAgICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJOQUxfRVJST1I7CkBAIC0x
OTgxLDE4ICsyMTkwLDE1IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfZmxvYXQoT3B1c0VuY29k
ZXIgKnN0LCBjb25zdCBmbG9hdCAqcGNtLCBpbnQgYW5hbHlzaXNfZnJhCiB7CiAgICBpbnQgaSwg
cmV0OwogICAgaW50IGZyYW1lX3NpemU7Ci0gICBpbnQgZGVsYXlfY29tcGVuc2F0aW9uOwogICAg
VkFSREVDTChvcHVzX2ludDE2LCBpbik7CiAgICBBTExPQ19TVEFDSzsKIAotICAgaWYgKHN0LT5h
cHBsaWNhdGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVMQVkpCi0gICAg
ICBkZWxheV9jb21wZW5zYXRpb24gPSAwOwotICAgZWxzZQotICAgICAgZGVsYXlfY29tcGVuc2F0
aW9uID0gc3QtPmRlbGF5X2NvbXBlbnNhdGlvbjsKLSAgIGZyYW1lX3NpemUgPSBjb21wdXRlX2Zy
YW1lX3NpemUocGNtLCBhbmFseXNpc19mcmFtZV9zaXplLAotICAgICAgICAgc3QtPnZhcmlhYmxl
X2R1cmF0aW9uLCBzdC0+Y2hhbm5lbHMsIHN0LT5Gcywgc3QtPmJpdHJhdGVfYnBzLAotICAgICAg
ICAgZGVsYXlfY29tcGVuc2F0aW9uLCBkb3dubWl4X2Zsb2F0LCBzdC0+YW5hbHlzaXMuc3ViZnJh
bWVfbWVtKTsKLQorICAgZnJhbWVfc2l6ZSA9IGZyYW1lX3NpemVfc2VsZWN0KGFuYWx5c2lzX2Zy
YW1lX3NpemUsIHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgc3QtPkZzKTsKKyAgIGlmIChmcmFtZV9z
aXplIDw9IDApCisgICB7CisgICAgICBSRVNUT1JFX1NUQUNLOworICAgICAgcmV0dXJuIE9QVVNf
QkFEX0FSRzsKKyAgIH0KICAgIEFMTE9DKGluLCBmcmFtZV9zaXplKnN0LT5jaGFubmVscywgb3B1
c19pbnQxNik7CiAKICAgIGZvciAoaT0wO2k8ZnJhbWVfc2l6ZSpzdC0+Y2hhbm5lbHM7aSsrKQpA
QCAtMjAwOCwxOCArMjIxNCw3IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGUoT3B1c0VuY29kZXIg
KnN0LCBjb25zdCBvcHVzX2ludDE2ICpwY20sIGludCBhbmFseXNpc19mcmFtCiAgICAgICAgICAg
ICAgICAgdW5zaWduZWQgY2hhciAqZGF0YSwgb3B1c19pbnQzMiBvdXRfZGF0YV9ieXRlcykKIHsK
ICAgIGludCBmcmFtZV9zaXplOwotICAgaW50IGRlbGF5X2NvbXBlbnNhdGlvbjsKLSAgIGlmIChz
dC0+YXBwbGljYXRpb24gPT0gT1BVU19BUFBMSUNBVElPTl9SRVNUUklDVEVEX0xPV0RFTEFZKQot
ICAgICAgZGVsYXlfY29tcGVuc2F0aW9uID0gMDsKLSAgIGVsc2UKLSAgICAgIGRlbGF5X2NvbXBl
bnNhdGlvbiA9IHN0LT5kZWxheV9jb21wZW5zYXRpb247Ci0gICBmcmFtZV9zaXplID0gY29tcHV0
ZV9mcmFtZV9zaXplKHBjbSwgYW5hbHlzaXNfZnJhbWVfc2l6ZSwKLSAgICAgICAgIHN0LT52YXJp
YWJsZV9kdXJhdGlvbiwgc3QtPmNoYW5uZWxzLCBzdC0+RnMsIHN0LT5iaXRyYXRlX2JwcywKLSAg
ICAgICAgIGRlbGF5X2NvbXBlbnNhdGlvbiwgZG93bm1peF9pbnQKLSNpZm5kZWYgRElTQUJMRV9G
TE9BVF9BUEkKLSAgICAgICAgICwgc3QtPmFuYWx5c2lzLnN1YmZyYW1lX21lbQotI2VuZGlmCi0g
ICAgICAgICApOworICAgZnJhbWVfc2l6ZSA9IGZyYW1lX3NpemVfc2VsZWN0KGFuYWx5c2lzX2Zy
YW1lX3NpemUsIHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgc3QtPkZzKTsKICAgIHJldHVybiBvcHVz
X2VuY29kZV9uYXRpdmUoc3QsIHBjbSwgZnJhbWVfc2l6ZSwgZGF0YSwgb3V0X2RhdGFfYnl0ZXMs
IDE2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwY20sIGFuYWx5c2lzX2ZyYW1lX3Np
emUsIDAsIC0yLCBzdC0+Y2hhbm5lbHMsIGRvd25taXhfaW50LCAwKTsKIH0KQEAgLTIwMzAsMTgg
KzIyMjUsMTUgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0
IG9wdXNfaW50MTYgKnBjbSwgaW50IGFuYWx5c2lzX2ZyYW0KIHsKICAgIGludCBpLCByZXQ7CiAg
ICBpbnQgZnJhbWVfc2l6ZTsKLSAgIGludCBkZWxheV9jb21wZW5zYXRpb247CiAgICBWQVJERUNM
KGZsb2F0LCBpbik7CiAgICBBTExPQ19TVEFDSzsKIAotICAgaWYgKHN0LT5hcHBsaWNhdGlvbiA9
PSBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVMQVkpCi0gICAgICBkZWxheV9jb21w
ZW5zYXRpb24gPSAwOwotICAgZWxzZQotICAgICAgZGVsYXlfY29tcGVuc2F0aW9uID0gc3QtPmRl
bGF5X2NvbXBlbnNhdGlvbjsKLSAgIGZyYW1lX3NpemUgPSBjb21wdXRlX2ZyYW1lX3NpemUocGNt
LCBhbmFseXNpc19mcmFtZV9zaXplLAotICAgICAgICAgc3QtPnZhcmlhYmxlX2R1cmF0aW9uLCBz
dC0+Y2hhbm5lbHMsIHN0LT5Gcywgc3QtPmJpdHJhdGVfYnBzLAotICAgICAgICAgZGVsYXlfY29t
cGVuc2F0aW9uLCBkb3dubWl4X2ludCwgc3QtPmFuYWx5c2lzLnN1YmZyYW1lX21lbSk7Ci0KKyAg
IGZyYW1lX3NpemUgPSBmcmFtZV9zaXplX3NlbGVjdChhbmFseXNpc19mcmFtZV9zaXplLCBzdC0+
dmFyaWFibGVfZHVyYXRpb24sIHN0LT5Gcyk7CisgICBpZiAoZnJhbWVfc2l6ZSA8PSAwKQorICAg
eworICAgICAgUkVTVE9SRV9TVEFDSzsKKyAgICAgIHJldHVybiBPUFVTX0JBRF9BUkc7CisgICB9
CiAgICBBTExPQyhpbiwgZnJhbWVfc2l6ZSpzdC0+Y2hhbm5lbHMsIGZsb2F0KTsKIAogICAgZm9y
IChpPTA7aTxmcmFtZV9zaXplKnN0LT5jaGFubmVscztpKyspCkBAIC0yMDU1LDE0ICsyMjQ3LDcg
QEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9mbG9hdChPcHVzRW5jb2RlciAqc3QsIGNvbnN0IGZs
b2F0ICpwY20sIGludCBhbmFseXNpc19mcmEKICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l
ZCBjaGFyICpkYXRhLCBvcHVzX2ludDMyIG91dF9kYXRhX2J5dGVzKQogewogICAgaW50IGZyYW1l
X3NpemU7Ci0gICBpbnQgZGVsYXlfY29tcGVuc2F0aW9uOwotICAgaWYgKHN0LT5hcHBsaWNhdGlv
biA9PSBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVMQVkpCi0gICAgICBkZWxheV9j
b21wZW5zYXRpb24gPSAwOwotICAgZWxzZQotICAgICAgZGVsYXlfY29tcGVuc2F0aW9uID0gc3Qt
PmRlbGF5X2NvbXBlbnNhdGlvbjsKLSAgIGZyYW1lX3NpemUgPSBjb21wdXRlX2ZyYW1lX3NpemUo
cGNtLCBhbmFseXNpc19mcmFtZV9zaXplLAotICAgICAgICAgc3QtPnZhcmlhYmxlX2R1cmF0aW9u
LCBzdC0+Y2hhbm5lbHMsIHN0LT5Gcywgc3QtPmJpdHJhdGVfYnBzLAotICAgICAgICAgZGVsYXlf
Y29tcGVuc2F0aW9uLCBkb3dubWl4X2Zsb2F0LCBzdC0+YW5hbHlzaXMuc3ViZnJhbWVfbWVtKTsK
KyAgIGZyYW1lX3NpemUgPSBmcmFtZV9zaXplX3NlbGVjdChhbmFseXNpc19mcmFtZV9zaXplLCBz
dC0+dmFyaWFibGVfZHVyYXRpb24sIHN0LT5Gcyk7CiAgICByZXR1cm4gb3B1c19lbmNvZGVfbmF0
aXZlKHN0LCBwY20sIGZyYW1lX3NpemUsIGRhdGEsIG91dF9kYXRhX2J5dGVzLCAyNCwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcGNtLCBhbmFseXNpc19mcmFtZV9zaXplLCAwLCAtMiwg
c3QtPmNoYW5uZWxzLCBkb3dubWl4X2Zsb2F0LCAxKTsKIH0KQEAgLTIwOTMsNiArMjI3OCw5IEBA
IGludCBvcHVzX2VuY29kZXJfY3RsKE9wdXNFbmNvZGVyICpzdCwgaW50IHJlcXVlc3QsIC4uLikK
ICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgc3QtPmFw
cGxpY2F0aW9uID0gdmFsdWU7CisjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCisgICAgICAgICAg
ICBzdC0+YW5hbHlzaXMuYXBwbGljYXRpb24gPSB2YWx1ZTsKKyNlbmRpZgogICAgICAgICB9CiAg
ICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIE9QVVNfR0VUX0FQUExJQ0FUSU9OX1JFUVVFU1Q6
CkBAIC0yMjExLDcgKzIzOTksNyBAQCBpbnQgb3B1c19lbmNvZGVyX2N0bChPcHVzRW5jb2RlciAq
c3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBnb3Rv
IGJhZF9hcmc7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBzdC0+c2lsa19tb2RlLnVzZURU
WCA9IHZhbHVlOworICAgICAgICAgICAgc3QtPnVzZV9kdHggPSB2YWx1ZTsKICAgICAgICAgfQog
ICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBPUFVTX0dFVF9EVFhfUkVRVUVTVDoKQEAgLTIy
MjEsNyArMjQwOSw3IEBAIGludCBvcHVzX2VuY29kZXJfY3RsKE9wdXNFbmNvZGVyICpzdCwgaW50
IHJlcXVlc3QsIC4uLikKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGdvdG8gYmFkX2Fy
ZzsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICp2YWx1ZSA9IHN0LT5zaWxrX21vZGUudXNl
RFRYOworICAgICAgICAgICAgKnZhbHVlID0gc3QtPnVzZV9kdHg7CiAgICAgICAgIH0KICAgICAg
ICAgYnJlYWs7CiAgICAgICAgIGNhc2UgT1BVU19TRVRfQ09NUExFWElUWV9SRVFVRVNUOgpAQCAt
MjQyMiwxMCArMjYxMCwxMSBAQCBpbnQgb3B1c19lbmNvZGVyX2N0bChPcHVzRW5jb2RlciAqc3Qs
IGludCByZXF1ZXN0LCAuLi4pCiAgICAgICAgIGNhc2UgT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RV
UkFUSU9OX1JFUVVFU1Q6CiAgICAgICAgIHsKICAgICAgICAgICAgIG9wdXNfaW50MzIgdmFsdWUg
PSB2YV9hcmcoYXAsIG9wdXNfaW50MzIpOwotICAgICAgICAgICAgaWYgKHZhbHVlICE9IE9QVVNf
RlJBTUVTSVpFX0FSRyAgICYmIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzJfNV9NUyAmJgotICAg
ICAgICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzVfTVMgICYmIHZhbHVlICE9IE9Q
VVNfRlJBTUVTSVpFXzEwX01TICAmJgotICAgICAgICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJB
TUVTSVpFXzIwX01TICYmIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzQwX01TICAmJgotICAgICAg
ICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzYwX01TICYmIHZhbHVlICE9IE9QVVNf
RlJBTUVTSVpFX1ZBUklBQkxFKQorICAgICAgICAgICAgaWYgKHZhbHVlICE9IE9QVVNfRlJBTUVT
SVpFX0FSRyAgICAmJiB2YWx1ZSAhPSBPUFVTX0ZSQU1FU0laRV8yXzVfTVMgJiYKKyAgICAgICAg
ICAgICAgICB2YWx1ZSAhPSBPUFVTX0ZSQU1FU0laRV81X01TICAgJiYgdmFsdWUgIT0gT1BVU19G
UkFNRVNJWkVfMTBfTVMgICYmCisgICAgICAgICAgICAgICAgdmFsdWUgIT0gT1BVU19GUkFNRVNJ
WkVfMjBfTVMgICYmIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzQwX01TICAmJgorICAgICAgICAg
ICAgICAgIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzYwX01TICAmJiB2YWx1ZSAhPSBPUFVTX0ZS
QU1FU0laRV84MF9NUyAgJiYKKyAgICAgICAgICAgICAgICB2YWx1ZSAhPSBPUFVTX0ZSQU1FU0la
RV8xMDBfTVMgJiYgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfMTIwX01TKQogICAgICAgICAgICAg
ewogICAgICAgICAgICAgICAgZ290byBiYWRfYXJnOwogICAgICAgICAgICAgfQpAQCAtMjQ1OSw2
ICsyNjQ4LDI2IEBAIGludCBvcHVzX2VuY29kZXJfY3RsKE9wdXNFbmNvZGVyICpzdCwgaW50IHJl
cXVlc3QsIC4uLikKICAgICAgICAgICAgKnZhbHVlID0gc3QtPnNpbGtfbW9kZS5yZWR1Y2VkRGVw
ZW5kZW5jeTsKICAgICAgICAgfQogICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBPUFVTX1NF
VF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgICAgICAgeworICAgICAgICAg
ICAgb3B1c19pbnQzMiB2YWx1ZSA9IHZhX2FyZyhhcCwgb3B1c19pbnQzMik7CisgICAgICAgICAg
ICBpZih2YWx1ZTwwIHx8IHZhbHVlPjEpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICBn
b3RvIGJhZF9hcmc7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBjZWx0X2VuY29kZXJfY3Rs
KGNlbHRfZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQodmFsdWUpKTsKKyAg
ICAgICAgfQorICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBPUFVTX0dFVF9QSEFTRV9JTlZF
UlNJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgICAgICAgeworICAgICAgICAgICAgb3B1c19pbnQz
MiAqdmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50MzIqKTsKKyAgICAgICAgICAgIGlmICghdmFs
dWUpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAg
ICAgICB9CisgICAgICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBPUFVTX0dFVF9Q
SEFTRV9JTlZFUlNJT05fRElTQUJMRUQodmFsdWUpKTsKKyAgICAgICAgfQorICAgICAgICBicmVh
azsKICAgICAgICAgY2FzZSBPUFVTX1JFU0VUX1NUQVRFOgogICAgICAgICB7CiAgICAgICAgICAg
IHZvaWQgKnNpbGtfZW5jOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19tdWx0aXN0cmVhbV9kZWNvZGVy
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NyYy9vcHVzX211bHRpc3RyZWFtX2RlY29kZXIuYwppbmRleCBiOTVlYWE2ZWFjMTJmMDM2
YWI5ZjBhNGRlNjU2MjFiZjU3ZTViOGMwLi5lNDIxNzI2ZjJiNDI3ZGQyZGRkNGQyMGYxZGZiOTlj
MmFmYjcwMDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX211bHRpc3RyZWFtX2RlY29kZXIuYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NyYy9vcHVzX211bHRpc3RyZWFtX2RlY29kZXIuYwpAQCAtMjM3LDcgKzIzNyw4IEBAIHN0YXRp
YyBpbnQgb3B1c19tdWx0aXN0cmVhbV9kZWNvZGVfbmF0aXZlKAogICAgZm9yIChzPTA7czxzdC0+
bGF5b3V0Lm5iX3N0cmVhbXM7cysrKQogICAgewogICAgICAgT3B1c0RlY29kZXIgKmRlYzsKLSAg
ICAgIGludCBwYWNrZXRfb2Zmc2V0LCByZXQ7CisgICAgICBvcHVzX2ludDMyIHBhY2tldF9vZmZz
ZXQ7CisgICAgICBpbnQgcmV0OwogCiAgICAgICBkZWMgPSAoT3B1c0RlY29kZXIqKXB0cjsKICAg
ICAgIHB0ciArPSAocyA8IHN0LT5sYXlvdXQubmJfY291cGxlZF9zdHJlYW1zKSA/IGFsaWduKGNv
dXBsZWRfc2l6ZSkgOiBhbGlnbihtb25vX3NpemUpOwpAQCAtNDI1LDYgKzQyNiw3IEBAIGludCBv
cHVzX211bHRpc3RyZWFtX2RlY29kZXJfY3RsKE9wdXNNU0RlY29kZXIgKnN0LCBpbnQgcmVxdWVz
dCwgLi4uKQogICAgICAgIGNhc2UgT1BVU19HRVRfU0FNUExFX1JBVEVfUkVRVUVTVDoKICAgICAg
ICBjYXNlIE9QVVNfR0VUX0dBSU5fUkVRVUVTVDoKICAgICAgICBjYXNlIE9QVVNfR0VUX0xBU1Rf
UEFDS0VUX0RVUkFUSU9OX1JFUVVFU1Q6CisgICAgICAgY2FzZSBPUFVTX0dFVF9QSEFTRV9JTlZF
UlNJT05fRElTQUJMRURfUkVRVUVTVDoKICAgICAgICB7CiAgICAgICAgICAgT3B1c0RlY29kZXIg
KmRlYzsKICAgICAgICAgICAvKiBGb3IgaW50MzIqIEdFVCBwYXJhbXMsIGp1c3QgcXVlcnkgdGhl
IGZpcnN0IHN0cmVhbSAqLwpAQCAtNDk5LDYgKzUwMSw3IEBAIGludCBvcHVzX211bHRpc3RyZWFt
X2RlY29kZXJfY3RsKE9wdXNNU0RlY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgICAg
IH0KICAgICAgICBicmVhazsKICAgICAgICBjYXNlIE9QVVNfU0VUX0dBSU5fUkVRVUVTVDoKKyAg
ICAgICBjYXNlIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUOgogICAg
ICAgIHsKICAgICAgICAgICBpbnQgczsKICAgICAgICAgICAvKiBUaGlzIHdvcmtzIGZvciBpbnQz
MiBwYXJhbXMgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlci5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
cmMvb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyLmMKaW5kZXggZTcyMmUzMWFiOGVlOWYxMDI0Mjk0
NDk1NGVhNmY1YWMyMDE4YTEzYi4uMDMyZmMwMDM5YjkxMzEyZTc1NmJmODljNmJmMGRlMDUyZjY4
YWNmMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyLmMKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMv
b3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyLmMKQEAgLTg3LDcgKzg3LDYgQEAgc3RydWN0IE9wdXNN
U0VuY29kZXIgewogICAgaW50IHZhcmlhYmxlX2R1cmF0aW9uOwogICAgTWFwcGluZ1R5cGUgbWFw
cGluZ190eXBlOwogICAgb3B1c19pbnQzMiBiaXRyYXRlX2JwczsKLSAgIGZsb2F0IHN1YmZyYW1l
X21lbVszXTsKICAgIC8qIEVuY29kZXIgc3RhdGVzIGdvIGhlcmUgKi8KICAgIC8qIHRoZW4gb3B1
c192YWwzMiB3aW5kb3dfbWVtW2NoYW5uZWxzKjEyMF07ICovCiAgICAvKiB0aGVuIG9wdXNfdmFs
MzIgcHJlZW1waF9tZW1bY2hhbm5lbHNdOyAqLwpAQCAtMTMzLDYgKzEzMiwyOSBAQCBzdGF0aWMg
b3B1c192YWwzMiAqbXNfZ2V0X3dpbmRvd19tZW0oT3B1c01TRW5jb2RlciAqc3QpCiAgICByZXR1
cm4gKG9wdXNfdmFsMzIqKSh2b2lkKilwdHI7CiB9CiAKKyNpZmRlZiBFTkFCTEVfRVhQRVJJTUVO
VEFMX0FNQklTT05JQ1MKK3N0YXRpYyBpbnQgdmFsaWRhdGVfYW1iaXNvbmljcyhpbnQgbmJfY2hh
bm5lbHMsIGludCAqbmJfc3RyZWFtcywgaW50ICpuYl9jb3VwbGVkX3N0cmVhbXMpCit7CisgICBp
bnQgb3JkZXJfcGx1c19vbmU7CisgICBpbnQgYWNuX2NoYW5uZWxzOworICAgaW50IG5vbmRpZWdl
dGljX2NoYW5uZWxzOworCisgICBvcmRlcl9wbHVzX29uZSA9IGlzcXJ0MzIobmJfY2hhbm5lbHMp
OworICAgYWNuX2NoYW5uZWxzID0gb3JkZXJfcGx1c19vbmUgKiBvcmRlcl9wbHVzX29uZTsKKyAg
IG5vbmRpZWdldGljX2NoYW5uZWxzID0gbmJfY2hhbm5lbHMgLSBhY25fY2hhbm5lbHM7CisKKyAg
IGlmIChvcmRlcl9wbHVzX29uZSA8IDEgfHwgb3JkZXJfcGx1c19vbmUgPiAxNSB8fAorICAgICAg
IChub25kaWVnZXRpY19jaGFubmVscyAhPSAwICYmIG5vbmRpZWdldGljX2NoYW5uZWxzICE9IDIp
KQorICAgICAgcmV0dXJuIDA7CisKKyAgIGlmIChuYl9zdHJlYW1zKQorICAgICAgKm5iX3N0cmVh
bXMgPSBhY25fY2hhbm5lbHMgKyAobm9uZGllZ2V0aWNfY2hhbm5lbHMgIT0gMCk7CisgICBpZiAo
bmJfY291cGxlZF9zdHJlYW1zKQorICAgICAgKm5iX2NvdXBsZWRfc3RyZWFtcyA9IG5vbmRpZWdl
dGljX2NoYW5uZWxzICE9IDA7CisgICByZXR1cm4gMTsKK30KKyNlbmRpZgorCiBzdGF0aWMgaW50
IHZhbGlkYXRlX2VuY29kZXJfbGF5b3V0KGNvbnN0IENoYW5uZWxMYXlvdXQgKmxheW91dCkKIHsK
ICAgIGludCBzOwpAQCAtMjQwLDYgKzI2Miw3IEBAIHZvaWQgc3Vycm91bmRfYW5hbHlzaXMoY29u
c3QgQ0VMVE1vZGUgKmNlbHRfbW9kZSwgY29uc3Qgdm9pZCAqcGNtLCBvcHVzX3ZhbDE2ICpiCiAg
ICBpbnQgcG9zWzhdID0gezB9OwogICAgaW50IHVwc2FtcGxlOwogICAgaW50IGZyYW1lX3NpemU7
CisgICBpbnQgZnJlcV9zaXplOwogICAgb3B1c192YWwxNiBjaGFubmVsX29mZnNldDsKICAgIG9w
dXNfdmFsMzIgYmFuZEVbMjFdOwogICAgb3B1c192YWwxNiBtYXNrTG9nRVszXVsyMV07CkBAIC0y
NTAsNiArMjczLDcgQEAgdm9pZCBzdXJyb3VuZF9hbmFseXNpcyhjb25zdCBDRUxUTW9kZSAqY2Vs
dF9tb2RlLCBjb25zdCB2b2lkICpwY20sIG9wdXNfdmFsMTYgKmIKIAogICAgdXBzYW1wbGUgPSBy
ZXNhbXBsaW5nX2ZhY3RvcihyYXRlKTsKICAgIGZyYW1lX3NpemUgPSBsZW4qdXBzYW1wbGU7Cisg
ICBmcmVxX3NpemUgPSBJTUlOKDk2MCwgZnJhbWVfc2l6ZSk7CiAKICAgIC8qIExNID0gbG9nMihm
cmFtZV9zaXplIC8gMTIwKSAqLwogICAgZm9yIChMTT0wO0xNPGNlbHRfbW9kZS0+bWF4TE07TE0r
KykKQEAgLTI1OCw3ICsyODIsNyBAQCB2b2lkIHN1cnJvdW5kX2FuYWx5c2lzKGNvbnN0IENFTFRN
b2RlICpjZWx0X21vZGUsIGNvbnN0IHZvaWQgKnBjbSwgb3B1c192YWwxNiAqYgogCiAgICBBTExP
QyhpbiwgZnJhbWVfc2l6ZStvdmVybGFwLCBvcHVzX3ZhbDMyKTsKICAgIEFMTE9DKHgsIGxlbiwg
b3B1c192YWwxNik7Ci0gICBBTExPQyhmcmVxLCBmcmFtZV9zaXplLCBvcHVzX3ZhbDMyKTsKKyAg
IEFMTE9DKGZyZXEsIGZyZXFfc2l6ZSwgb3B1c192YWwzMik7CiAKICAgIGNoYW5uZWxfcG9zKGNo
YW5uZWxzLCBwb3MpOwogCkBAIC0yNjgsNiArMjkyLDkgQEAgdm9pZCBzdXJyb3VuZF9hbmFseXNp
cyhjb25zdCBDRUxUTW9kZSAqY2VsdF9tb2RlLCBjb25zdCB2b2lkICpwY20sIG9wdXNfdmFsMTYg
KmIKIAogICAgZm9yIChjPTA7YzxjaGFubmVscztjKyspCiAgICB7CisgICAgICBpbnQgZnJhbWU7
CisgICAgICBpbnQgbmJfZnJhbWVzID0gZnJhbWVfc2l6ZS9mcmVxX3NpemU7CisgICAgICBjZWx0
X2Fzc2VydChuYl9mcmFtZXMqZnJlcV9zaXplID09IGZyYW1lX3NpemUpOwogICAgICAgT1BVU19D
T1BZKGluLCBtZW0rYypvdmVybGFwLCBvdmVybGFwKTsKICAgICAgICgqY29weV9jaGFubmVsX2lu
KSh4LCAxLCBwY20sIGNoYW5uZWxzLCBjLCBsZW4pOwogICAgICAgY2VsdF9wcmVlbXBoYXNpcyh4
LCBpbitvdmVybGFwLCBmcmFtZV9zaXplLCAxLCB1cHNhbXBsZSwgY2VsdF9tb2RlLT5wcmVlbXBo
LCBwcmVlbXBoX21lbStjLCAwKTsKQEAgLTI3NywyNSArMzA0LDMzIEBAIHZvaWQgc3Vycm91bmRf
YW5hbHlzaXMoY29uc3QgQ0VMVE1vZGUgKmNlbHRfbW9kZSwgY29uc3Qgdm9pZCAqcGNtLCBvcHVz
X3ZhbDE2ICpiCiAgICAgICAgICBzdW0gPSBjZWx0X2lubmVyX3Byb2QoaW4sIGluLCBmcmFtZV9z
aXplK292ZXJsYXAsIDApOwogICAgICAgICAgLyogVGhpcyBzaG91bGQgZmlsdGVyIG91dCBib3Ro
IE5hTnMgYW5kIHJpZGljdWxvdXMgc2lnbmFscyB0aGF0IGNvdWxkCiAgICAgICAgICAgICBjYXVz
ZSBOYU5zIGZ1cnRoZXIgZG93bi4gKi8KLSAgICAgICAgIGlmICghKHN1bSA8IDFlOWYpIHx8IGNl
bHRfaXNuYW4oc3VtKSkKKyAgICAgICAgIGlmICghKHN1bSA8IDFlMThmKSB8fCBjZWx0X2lzbmFu
KHN1bSkpCiAgICAgICAgICB7CiAgICAgICAgICAgICBPUFVTX0NMRUFSKGluLCBmcmFtZV9zaXpl
K292ZXJsYXApOwogICAgICAgICAgICAgcHJlZW1waF9tZW1bY10gPSAwOwogICAgICAgICAgfQog
ICAgICAgfQogI2VuZGlmCi0gICAgICBjbHRfbWRjdF9mb3J3YXJkKCZjZWx0X21vZGUtPm1kY3Qs
IGluLCBmcmVxLCBjZWx0X21vZGUtPndpbmRvdywKLSAgICAgICAgICAgIG92ZXJsYXAsIGNlbHRf
bW9kZS0+bWF4TE0tTE0sIDEsIGFyY2gpOwotICAgICAgaWYgKHVwc2FtcGxlICE9IDEpCisgICAg
ICBPUFVTX0NMRUFSKGJhbmRFLCAyMSk7CisgICAgICBmb3IgKGZyYW1lPTA7ZnJhbWU8bmJfZnJh
bWVzO2ZyYW1lKyspCiAgICAgICB7Ci0gICAgICAgICBpbnQgYm91bmQgPSBsZW47Ci0gICAgICAg
ICBmb3IgKGk9MDtpPGJvdW5kO2krKykKLSAgICAgICAgICAgIGZyZXFbaV0gKj0gdXBzYW1wbGU7
Ci0gICAgICAgICBmb3IgKDtpPGZyYW1lX3NpemU7aSsrKQotICAgICAgICAgICAgZnJlcVtpXSA9
IDA7Ci0gICAgICB9CisgICAgICAgICBvcHVzX3ZhbDMyIHRtcEVbMjFdOworICAgICAgICAgY2x0
X21kY3RfZm9yd2FyZCgmY2VsdF9tb2RlLT5tZGN0LCBpbis5NjAqZnJhbWUsIGZyZXEsIGNlbHRf
bW9kZS0+d2luZG93LAorICAgICAgICAgICAgICAgb3ZlcmxhcCwgY2VsdF9tb2RlLT5tYXhMTS1M
TSwgMSwgYXJjaCk7CisgICAgICAgICBpZiAodXBzYW1wbGUgIT0gMSkKKyAgICAgICAgIHsKKyAg
ICAgICAgICAgIGludCBib3VuZCA9IGZyZXFfc2l6ZS91cHNhbXBsZTsKKyAgICAgICAgICAgIGZv
ciAoaT0wO2k8Ym91bmQ7aSsrKQorICAgICAgICAgICAgICAgZnJlcVtpXSAqPSB1cHNhbXBsZTsK
KyAgICAgICAgICAgIGZvciAoO2k8ZnJlcV9zaXplO2krKykKKyAgICAgICAgICAgICAgIGZyZXFb
aV0gPSAwOworICAgICAgICAgfQogCi0gICAgICBjb21wdXRlX2JhbmRfZW5lcmdpZXMoY2VsdF9t
b2RlLCBmcmVxLCBiYW5kRSwgMjEsIDEsIExNKTsKKyAgICAgICAgIGNvbXB1dGVfYmFuZF9lbmVy
Z2llcyhjZWx0X21vZGUsIGZyZXEsIHRtcEUsIDIxLCAxLCBMTSwgYXJjaCk7CisgICAgICAgICAv
KiBJZiB3ZSBoYXZlIG11bHRpcGxlIGZyYW1lcywgdGFrZSB0aGUgbWF4IGVuZXJneS4gKi8KKyAg
ICAgICAgIGZvciAoaT0wO2k8MjE7aSsrKQorICAgICAgICAgICAgYmFuZEVbaV0gPSBNQVgzMihi
YW5kRVtpXSwgdG1wRVtpXSk7CisgICAgICB9CiAgICAgICBhbXAyTG9nMihjZWx0X21vZGUsIDIx
LCAyMSwgYmFuZEUsIGJhbmRMb2dFKzIxKmMsIDEpOwogICAgICAgLyogQXBwbHkgc3ByZWFkaW5n
IGZ1bmN0aW9uIHdpdGggLTYgZEIvYmFuZCBnb2luZyB1cCBhbmQgLTEyIGRCL2JhbmQgZ29pbmcg
ZG93bi4gKi8KICAgICAgIGZvciAoaT0xO2k8MjE7aSsrKQpAQCAtNDExLDggKzQ0Niw4IEBAIG9w
dXNfaW50MzIgb3B1c19tdWx0aXN0cmVhbV9zdXJyb3VuZF9lbmNvZGVyX2dldF9zaXplKGludCBj
aGFubmVscywgaW50IG1hcHBpbmdfCiAjaWZkZWYgRU5BQkxFX0VYUEVSSU1FTlRBTF9BTUJJU09O
SUNTCiAgICB9IGVsc2UgaWYgKG1hcHBpbmdfZmFtaWx5PT0yNTQpCiAgICB7Ci0gICAgICBuYl9z
dHJlYW1zPWNoYW5uZWxzOwotICAgICAgbmJfY291cGxlZF9zdHJlYW1zPTA7CisgICAgICBpZiAo
IXZhbGlkYXRlX2FtYmlzb25pY3MoY2hhbm5lbHMsICZuYl9zdHJlYW1zLCAmbmJfY291cGxlZF9z
dHJlYW1zKSkKKyAgICAgICAgIHJldHVybiAwOwogI2VuZGlmCiAgICB9IGVsc2UKICAgICAgIHJl
dHVybiAwOwpAQCAtNDQ4LDcgKzQ4Myw2IEBAIHN0YXRpYyBpbnQgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2luaXRfaW1wbCgKICAgIHN0LT5sYXlvdXQubmJfY2hhbm5lbHMgPSBjaGFubmVsczsK
ICAgIHN0LT5sYXlvdXQubmJfc3RyZWFtcyA9IHN0cmVhbXM7CiAgICBzdC0+bGF5b3V0Lm5iX2Nv
dXBsZWRfc3RyZWFtcyA9IGNvdXBsZWRfc3RyZWFtczsKLSAgIHN0LT5zdWJmcmFtZV9tZW1bMF09
c3QtPnN1YmZyYW1lX21lbVsxXT1zdC0+c3ViZnJhbWVfbWVtWzJdPTA7CiAgICBpZiAobWFwcGlu
Z190eXBlICE9IE1BUFBJTkdfVFlQRV9TVVJST1VORCkKICAgICAgIHN0LT5sZmVfc3RyZWFtID0g
LTE7CiAgICBzdC0+Yml0cmF0ZV9icHMgPSBPUFVTX0FVVE87CkBAIC00NTYsOCArNDkwLDE2IEBA
IHN0YXRpYyBpbnQgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2luaXRfaW1wbCgKICAgIHN0LT52
YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFX0FSRzsKICAgIGZvciAoaT0wO2k8c3Qt
PmxheW91dC5uYl9jaGFubmVscztpKyspCiAgICAgICBzdC0+bGF5b3V0Lm1hcHBpbmdbaV0gPSBt
YXBwaW5nW2ldOwotICAgaWYgKCF2YWxpZGF0ZV9sYXlvdXQoJnN0LT5sYXlvdXQpIHx8ICF2YWxp
ZGF0ZV9lbmNvZGVyX2xheW91dCgmc3QtPmxheW91dCkpCisgICBpZiAoIXZhbGlkYXRlX2xheW91
dCgmc3QtPmxheW91dCkpCiAgICAgICByZXR1cm4gT1BVU19CQURfQVJHOworICAgaWYgKG1hcHBp
bmdfdHlwZSA9PSBNQVBQSU5HX1RZUEVfU1VSUk9VTkQgJiYKKyAgICAgICAhdmFsaWRhdGVfZW5j
b2Rlcl9sYXlvdXQoJnN0LT5sYXlvdXQpKQorICAgICAgcmV0dXJuIE9QVVNfQkFEX0FSRzsKKyNp
ZmRlZiBFTkFCTEVfRVhQRVJJTUVOVEFMX0FNQklTT05JQ1MKKyAgIGlmIChtYXBwaW5nX3R5cGUg
PT0gTUFQUElOR19UWVBFX0FNQklTT05JQ1MgJiYKKyAgICAgICAhdmFsaWRhdGVfYW1iaXNvbmlj
cyhzdC0+bGF5b3V0Lm5iX2NoYW5uZWxzLCBOVUxMLCBOVUxMKSkKKyAgICAgIHJldHVybiBPUFVT
X0JBRF9BUkc7CisjZW5kaWYKICAgIHB0ciA9IChjaGFyKilzdCArIGFsaWduKHNpemVvZihPcHVz
TVNFbmNvZGVyKSk7CiAgICBjb3VwbGVkX3NpemUgPSBvcHVzX2VuY29kZXJfZ2V0X3NpemUoMik7
CiAgICBtb25vX3NpemUgPSBvcHVzX2VuY29kZXJfZ2V0X3NpemUoMSk7CkBAIC01NTMsMTAgKzU5
NSwxMiBAQCBpbnQgb3B1c19tdWx0aXN0cmVhbV9zdXJyb3VuZF9lbmNvZGVyX2luaXQoCiAgICB9
IGVsc2UgaWYgKG1hcHBpbmdfZmFtaWx5PT0yNTQpCiAgICB7CiAgICAgICBpbnQgaTsKLSAgICAg
ICpzdHJlYW1zPWNoYW5uZWxzOwotICAgICAgKmNvdXBsZWRfc3RyZWFtcz0wOwotICAgICAgZm9y
KGk9MDtpPGNoYW5uZWxzO2krKykKLSAgICAgICAgIG1hcHBpbmdbaV0gPSBpOworICAgICAgaWYg
KCF2YWxpZGF0ZV9hbWJpc29uaWNzKGNoYW5uZWxzLCBzdHJlYW1zLCBjb3VwbGVkX3N0cmVhbXMp
KQorICAgICAgICAgcmV0dXJuIE9QVVNfQkFEX0FSRzsKKyAgICAgIGZvcihpID0gMDsgaSA8ICgq
c3RyZWFtcyAtICpjb3VwbGVkX3N0cmVhbXMpOyBpKyspCisgICAgICAgICBtYXBwaW5nW2ldID0g
aSArICgqY291cGxlZF9zdHJlYW1zICogMik7CisgICAgICBmb3IoaSA9IDA7IGkgPCAqY291cGxl
ZF9zdHJlYW1zICogMjsgaSsrKQorICAgICAgICAgbWFwcGluZ1tpICsgKCpzdHJlYW1zIC0gKmNv
dXBsZWRfc3RyZWFtcyldID0gaTsKICNlbmRpZgogICAgfSBlbHNlCiAgICAgICByZXR1cm4gT1BV
U19VTklNUExFTUVOVEVEOwpAQCAtNjcyLDU4ICs3MTYsNTkgQEAgc3RhdGljIHZvaWQgc3Vycm91
bmRfcmF0ZV9hbGxvY2F0aW9uKAogICAgaW50IGxmZV9vZmZzZXQ7CiAgICBpbnQgY291cGxlZF9y
YXRpbzsgLyogUTggKi8KICAgIGludCBsZmVfcmF0aW87ICAgICAvKiBROCAqLworICAgaW50IG5i
X2xmZTsKKyAgIGludCBuYl91bmNvdXBsZWQ7CisgICBpbnQgbmJfY291cGxlZDsKKyAgIGludCBu
Yl9ub3JtYWw7CisgICBvcHVzX2ludDMyIGNoYW5uZWxfb2Zmc2V0OworICAgb3B1c19pbnQzMiBi
aXRyYXRlOworICAgaW50IHRvdGFsOworCisgICBuYl9sZmUgPSAoc3QtPmxmZV9zdHJlYW0hPS0x
KTsKKyAgIG5iX2NvdXBsZWQgPSBzdC0+bGF5b3V0Lm5iX2NvdXBsZWRfc3RyZWFtczsKKyAgIG5i
X3VuY291cGxlZCA9IHN0LT5sYXlvdXQubmJfc3RyZWFtcy1uYl9jb3VwbGVkLW5iX2xmZTsKKyAg
IG5iX25vcm1hbCA9IDIqbmJfY291cGxlZCArIG5iX3VuY291cGxlZDsKKworICAgLyogR2l2ZSBl
YWNoIG5vbi1MRkUgY2hhbm5lbCBlbm91Z2ggYml0cyBwZXIgY2hhbm5lbCBmb3IgY29kaW5nIGJh
bmQgZW5lcmd5LiAqLworICAgY2hhbm5lbF9vZmZzZXQgPSA0MCpJTUFYKDUwLCBGcy9mcmFtZV9z
aXplKTsKIAotICAgaWYgKHN0LT5iaXRyYXRlX2JwcyA+IHN0LT5sYXlvdXQubmJfY2hhbm5lbHMq
NDAwMDApCi0gICAgICBzdHJlYW1fb2Zmc2V0ID0gMjAwMDA7Ci0gICBlbHNlCi0gICAgICBzdHJl
YW1fb2Zmc2V0ID0gc3QtPmJpdHJhdGVfYnBzL3N0LT5sYXlvdXQubmJfY2hhbm5lbHMvMjsKLSAg
IHN0cmVhbV9vZmZzZXQgKz0gNjAqKEZzL2ZyYW1lX3NpemUtNTApOwotICAgLyogV2Ugc3RhcnQg
YnkgZ2l2aW5nIGVhY2ggc3RyZWFtIChjb3VwbGVkIG9yIHVuY291cGxlZCkgdGhlIHNhbWUgYml0
cmF0ZS4KLSAgICAgIFRoaXMgbW9kZWxzIHRoZSBtYWluIHNhdmluZyBvZiBjb3VwbGVkIGNoYW5u
ZWxzIG92ZXIgdW5jb3VwbGVkLiAqLwotICAgLyogVGhlIExGRSBzdHJlYW0gaXMgYW4gZXhjZXB0
aW9uIHRvIHRoZSBhYm92ZSBhbmQgZ2V0cyBmZXdlciBiaXRzLiAqLwotICAgbGZlX29mZnNldCA9
IDM1MDAgKyA2MCooRnMvZnJhbWVfc2l6ZS01MCk7Ci0gICAvKiBDb3VwbGVkIHN0cmVhbXMgZ2V0
IHR3aWNlIHRoZSBtb25vIHJhdGUgYWZ0ZXIgdGhlIGZpcnN0IDIwIGtiL3MuICovCi0gICBjb3Vw
bGVkX3JhdGlvID0gNTEyOwotICAgLyogU2hvdWxkIGRlcGVuZCBvbiB0aGUgYml0cmF0ZSwgZm9y
IG5vdyB3ZSBhc3N1bWUgTEZFIGdldHMgMS84IHRoZSBiaXRzIG9mIG1vbm8gKi8KLSAgIGxmZV9y
YXRpbyA9IDMyOwotCi0gICAvKiBDb21wdXRlIGJpdHJhdGUgYWxsb2NhdGlvbiBiZXR3ZWVuIHN0
cmVhbXMgKi8KICAgIGlmIChzdC0+Yml0cmF0ZV9icHM9PU9QVVNfQVVUTykKICAgIHsKLSAgICAg
IGNoYW5uZWxfcmF0ZSA9IEZzKzYwKkZzL2ZyYW1lX3NpemU7CisgICAgICBiaXRyYXRlID0gbmJf
bm9ybWFsKihjaGFubmVsX29mZnNldCArIEZzICsgMTAwMDApICsgODAwMCpuYl9sZmU7CiAgICB9
IGVsc2UgaWYgKHN0LT5iaXRyYXRlX2Jwcz09T1BVU19CSVRSQVRFX01BWCkKICAgIHsKLSAgICAg
IGNoYW5uZWxfcmF0ZSA9IDMwMDAwMDsKKyAgICAgIGJpdHJhdGUgPSBuYl9ub3JtYWwqMzAwMDAw
ICsgbmJfbGZlKjEyODAwMDsKICAgIH0gZWxzZSB7Ci0gICAgICBpbnQgbmJfbGZlOwotICAgICAg
aW50IG5iX3VuY291cGxlZDsKLSAgICAgIGludCBuYl9jb3VwbGVkOwotICAgICAgaW50IHRvdGFs
OwotICAgICAgbmJfbGZlID0gKHN0LT5sZmVfc3RyZWFtIT0tMSk7Ci0gICAgICBuYl9jb3VwbGVk
ID0gc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXM7Ci0gICAgICBuYl91bmNvdXBsZWQgPSBz
dC0+bGF5b3V0Lm5iX3N0cmVhbXMtbmJfY291cGxlZC1uYl9sZmU7Ci0gICAgICB0b3RhbCA9IChu
Yl91bmNvdXBsZWQ8PDgpICAgICAgICAgLyogbW9ubyAqLwotICAgICAgICAgICAgKyBjb3VwbGVk
X3JhdGlvKm5iX2NvdXBsZWQgLyogc3RlcmVvICovCi0gICAgICAgICAgICArIG5iX2xmZSpsZmVf
cmF0aW87Ci0gICAgICBjaGFubmVsX3JhdGUgPSAyNTYqKHN0LT5iaXRyYXRlX2Jwcy1sZmVfb2Zm
c2V0Km5iX2xmZS1zdHJlYW1fb2Zmc2V0KihuYl9jb3VwbGVkK25iX3VuY291cGxlZCkpL3RvdGFs
OworICAgICAgYml0cmF0ZSA9IHN0LT5iaXRyYXRlX2JwczsKICAgIH0KLSNpZm5kZWYgRklYRURf
UE9JTlQKLSAgIGlmIChzdC0+dmFyaWFibGVfZHVyYXRpb249PU9QVVNfRlJBTUVTSVpFX1ZBUklB
QkxFICYmIGZyYW1lX3NpemUgIT0gRnMvNTApCi0gICB7Ci0gICAgICBvcHVzX2ludDMyIGJvbnVz
OwotICAgICAgYm9udXMgPSA2MCooRnMvZnJhbWVfc2l6ZS01MCk7Ci0gICAgICBjaGFubmVsX3Jh
dGUgKz0gYm9udXM7Ci0gICB9Ci0jZW5kaWYKKworICAgLyogR2l2ZSBMRkUgc29tZSBiYXNpYyBz
dHJlYW1fY2hhbm5lbCBhbGxvY2F0aW9uIGJ1dCBuZXZlciBleGNlZWQgMS8yMCBvZiB0aGUKKyAg
ICAgIHRvdGFsIHJhdGUgZm9yIHRoZSBub24tZW5lcmd5IHBhcnQgdG8gYXZvaWQgcHJvYmxlbXMg
YXQgcmVhbGx5IGxvdyByYXRlLiAqLworICAgbGZlX29mZnNldCA9IElNSU4oYml0cmF0ZS8yMCwg
MzAwMCkgKyAxNSpJTUFYKDUwLCBGcy9mcmFtZV9zaXplKTsKKworICAgLyogV2UgZ2l2ZSBlYWNo
IHN0cmVhbSAoY291cGxlZCBvciB1bmNvdXBsZWQpIGEgc3RhcnRpbmcgYml0cmF0ZS4KKyAgICAg
IFRoaXMgbW9kZWxzIHRoZSBtYWluIHNhdmluZyBvZiBjb3VwbGVkIGNoYW5uZWxzIG92ZXIgdW5j
b3VwbGVkLiAqLworICAgc3RyZWFtX29mZnNldCA9IChiaXRyYXRlIC0gY2hhbm5lbF9vZmZzZXQq
bmJfbm9ybWFsIC0gbGZlX29mZnNldCpuYl9sZmUpL25iX25vcm1hbC8yOworICAgc3RyZWFtX29m
ZnNldCA9IElNQVgoMCwgSU1JTigyMDAwMCwgc3RyZWFtX29mZnNldCkpOworCisgICAvKiBDb3Vw
bGVkIHN0cmVhbXMgZ2V0IHR3aWNlIHRoZSBtb25vIHJhdGUgYWZ0ZXIgdGhlIG9mZnNldCBpcyBh
bGxvY2F0ZWQuICovCisgICBjb3VwbGVkX3JhdGlvID0gNTEyOworICAgLyogU2hvdWxkIGRlcGVu
ZCBvbiB0aGUgYml0cmF0ZSwgZm9yIG5vdyB3ZSBhc3N1bWUgTEZFIGdldHMgMS84IHRoZSBiaXRz
IG9mIG1vbm8gKi8KKyAgIGxmZV9yYXRpbyA9IDMyOworCisgICB0b3RhbCA9IChuYl91bmNvdXBs
ZWQ8PDgpICAgICAgICAgLyogbW9ubyAqLworICAgICAgICAgKyBjb3VwbGVkX3JhdGlvKm5iX2Nv
dXBsZWQgLyogc3RlcmVvICovCisgICAgICAgICArIG5iX2xmZSpsZmVfcmF0aW87CisgICBjaGFu
bmVsX3JhdGUgPSAyNTYqKG9wdXNfaW50NjQpKGJpdHJhdGUgLSBsZmVfb2Zmc2V0Km5iX2xmZSAt
IHN0cmVhbV9vZmZzZXQqKG5iX2NvdXBsZWQrbmJfdW5jb3VwbGVkKSAtIGNoYW5uZWxfb2Zmc2V0
Km5iX25vcm1hbCkvdG90YWw7CiAKICAgIGZvciAoaT0wO2k8c3QtPmxheW91dC5uYl9zdHJlYW1z
O2krKykKICAgIHsKICAgICAgIGlmIChpPHN0LT5sYXlvdXQubmJfY291cGxlZF9zdHJlYW1zKQot
ICAgICAgICAgcmF0ZVtpXSA9IHN0cmVhbV9vZmZzZXQrKGNoYW5uZWxfcmF0ZSpjb3VwbGVkX3Jh
dGlvPj44KTsKKyAgICAgICAgIHJhdGVbaV0gPSAyKmNoYW5uZWxfb2Zmc2V0ICsgSU1BWCgwLCBz
dHJlYW1fb2Zmc2V0KyhjaGFubmVsX3JhdGUqY291cGxlZF9yYXRpbz4+OCkpOwogICAgICAgZWxz
ZSBpZiAoaSE9c3QtPmxmZV9zdHJlYW0pCi0gICAgICAgICByYXRlW2ldID0gc3RyZWFtX29mZnNl
dCtjaGFubmVsX3JhdGU7CisgICAgICAgICByYXRlW2ldID0gY2hhbm5lbF9vZmZzZXQgKyBJTUFY
KDAsIHN0cmVhbV9vZmZzZXQgKyBjaGFubmVsX3JhdGUpOwogICAgICAgZWxzZQotICAgICAgICAg
cmF0ZVtpXSA9IGxmZV9vZmZzZXQrKGNoYW5uZWxfcmF0ZSpsZmVfcmF0aW8+PjgpOworICAgICAg
ICAgcmF0ZVtpXSA9IElNQVgoMCwgbGZlX29mZnNldCsoY2hhbm5lbF9yYXRlKmxmZV9yYXRpbz4+
OCkpOwogICAgfQogfQogCkBAIC03MzYsNDcgKzc4MSw3MiBAQCBzdGF0aWMgdm9pZCBhbWJpc29u
aWNzX3JhdGVfYWxsb2NhdGlvbigKICAgICAgICkKIHsKICAgIGludCBpOwotICAgaW50IG5vbl9t
b25vX3JhdGU7CiAgICBpbnQgdG90YWxfcmF0ZTsKKyAgIGludCBkaXJlY3Rpb25hbF9yYXRlOwor
ICAgaW50IG5vbmRpcmVjdGlvbmFsX3JhdGU7CisgICBpbnQgbGVmdG92ZXJfYml0czsKIAotICAg
LyogVGhlIG1vbm8gY2hhbm5lbCBnZXRzIChyYXRlX3JhdGlvX251bSAvIHJhdGVfcmF0aW9fZGVu
KSB0aW1lcyBhcyBtYW55IGJpdHMKLSAgICAqIGFzIGFsbCBvdGhlciBjaGFubmVscyAqLworICAg
LyogRWFjaCBub25kaXJlY3Rpb25hbCBjaGFubmVsIGdldHMgKHJhdGVfcmF0aW9fbnVtIC8gcmF0
ZV9yYXRpb19kZW4pIHRpbWVzCisgICAgKiBhcyBtYW55IGJpdHMgYXMgYWxsIG90aGVyIGFtYmlz
b25pY3MgY2hhbm5lbHMuCisgICAgKi8KICAgIGNvbnN0IGludCByYXRlX3JhdGlvX251bSA9IDQ7
CiAgICBjb25zdCBpbnQgcmF0ZV9yYXRpb19kZW4gPSAzOwotICAgY29uc3QgaW50IG51bV9jaGFu
bmVscyA9IHN0LT5sYXlvdXQubmJfc3RyZWFtczsKKyAgIGNvbnN0IGludCBuYl9jaGFubmVscyA9
IHN0LT5sYXlvdXQubmJfc3RyZWFtcyArIHN0LT5sYXlvdXQubmJfY291cGxlZF9zdHJlYW1zOwor
ICAgY29uc3QgaW50IG5iX25vbmRpcmVjdGlvbmFsX2NoYW5uZWxzID0gc3QtPmxheW91dC5uYl9j
b3VwbGVkX3N0cmVhbXMgKiAyICsgMTsKKyAgIGNvbnN0IGludCBuYl9kaXJlY3Rpb25hbF9jaGFu
bmVscyA9IHN0LT5sYXlvdXQubmJfc3RyZWFtcyAtIDE7CiAKICAgIGlmIChzdC0+Yml0cmF0ZV9i
cHM9PU9QVVNfQVVUTykKICAgIHsKLSAgICAgIHRvdGFsX3JhdGUgPSBudW1fY2hhbm5lbHMgKiAo
MjAwMDAgKyBzdC0+bGF5b3V0Lm5iX3N0cmVhbXMqKEZzKzYwKkZzL2ZyYW1lX3NpemUpKTsKKyAg
ICAgIHRvdGFsX3JhdGUgPSAoc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXMgKyBzdC0+bGF5
b3V0Lm5iX3N0cmVhbXMpICoKKyAgICAgICAgIChGcys2MCpGcy9mcmFtZV9zaXplKSArIHN0LT5s
YXlvdXQubmJfc3RyZWFtcyAqIDE1MDAwOwogICAgfSBlbHNlIGlmIChzdC0+Yml0cmF0ZV9icHM9
PU9QVVNfQklUUkFURV9NQVgpCiAgICB7Ci0gICAgICB0b3RhbF9yYXRlID0gbnVtX2NoYW5uZWxz
ICogMzIwMDAwOwotICAgfSBlbHNlIHsKKyAgICAgIHRvdGFsX3JhdGUgPSBuYl9jaGFubmVscyAq
IDMyMDAwMDsKKyAgIH0gZWxzZQorICAgewogICAgICAgdG90YWxfcmF0ZSA9IHN0LT5iaXRyYXRl
X2JwczsKICAgIH0KIAotICAgLyogTGV0IHkgYmUgdGhlIG5vbi1tb25vIHJhdGUgYW5kIGxldCBw
LCBxIGJlIGludGVnZXJzIHN1Y2ggdGhhdCB0aGUgbW9ubwotICAgICogY2hhbm5lbCByYXRlIGlz
IChwL3EpICogeS4KKyAgIC8qIExldCB5IGJlIHRoZSBkaXJlY3Rpb25hbCByYXRlLCBtIGJlIHRo
ZSBudW0gb2Ygbm9uZGlyZWN0aW9uYWwgY2hhbm5lbHMKKyAgICAqICAgbSA9IChzICsgMSkKKyAg
ICAqIGFuZCBsZXQgcCwgcSBiZSBpbnRlZ2VycyBzdWNoIHRoYXQgdGhlIG5vbmRpcmVjdGlvbmFs
IHJhdGUgaXMKKyAgICAqICAgbV9yYXRlID0gKHAgLyBxKSAqIHkKICAgICAqIEFsc28gbGV0IFQg
YmUgdGhlIHRvdGFsIGJpdHJhdGUgdG8gYWxsb2NhdGUuIFRoZW4KLSAgICAqICAgKG4gLSAxKSB5
ICsgKHAvcSkgeSA9IFQKLSAgICAqICAgeSA9IChUIHEpIC8gKHFuIC0gcSArIHApCisgICAgKiAg
IFQgPSAobiAtIG0pICogeSArIG0gKiBtX3JhdGUKKyAgICAqIFNvbHZpbmcgZm9yIHksCisgICAg
KiAgIHkgPSAocSAqIFQpIC8gKG0gKiAocCAtIHEpICsgbiAqIHEpCiAgICAgKi8KLSAgIG5vbl9t
b25vX3JhdGUgPQotICAgICAgICAgdG90YWxfcmF0ZSAqIHJhdGVfcmF0aW9fZGVuCi0gICAgICAg
ICAvIChyYXRlX3JhdGlvX2RlbipudW1fY2hhbm5lbHMgKyByYXRlX3JhdGlvX251bSAtIHJhdGVf
cmF0aW9fZGVuKTsKKyAgIGRpcmVjdGlvbmFsX3JhdGUgPQorICAgICAgdG90YWxfcmF0ZSAqIHJh
dGVfcmF0aW9fZGVuCisgICAgICAvIChuYl9ub25kaXJlY3Rpb25hbF9jaGFubmVscyAqIChyYXRl
X3JhdGlvX251bSAtIHJhdGVfcmF0aW9fZGVuKQorICAgICAgICsgbmJfY2hhbm5lbHMgKiByYXRl
X3JhdGlvX2Rlbik7CiAKLSNpZm5kZWYgRklYRURfUE9JTlQKLSAgIGlmIChzdC0+dmFyaWFibGVf
ZHVyYXRpb249PU9QVVNfRlJBTUVTSVpFX1ZBUklBQkxFICYmIGZyYW1lX3NpemUgIT0gRnMvNTAp
Ci0gICB7Ci0gICAgICBvcHVzX2ludDMyIGJvbnVzID0gNjAqKEZzL2ZyYW1lX3NpemUtNTApOwot
ICAgICAgbm9uX21vbm9fcmF0ZSArPSBib251czsKLSAgIH0KLSNlbmRpZgorICAgLyogQ2FsY3Vs
YXRlIHRoZSBub25kaXJlY3Rpb25hbCByYXRlLgorICAgICogICBtX3JhdGUgPSB5ICogKHAgLyBx
KQorICAgICovCisgICBub25kaXJlY3Rpb25hbF9yYXRlID0gZGlyZWN0aW9uYWxfcmF0ZSAqIHJh
dGVfcmF0aW9fbnVtIC8gcmF0ZV9yYXRpb19kZW47CiAKLSAgIHJhdGVbMF0gPSB0b3RhbF9yYXRl
IC0gKG51bV9jaGFubmVscyAtIDEpICogbm9uX21vbm9fcmF0ZTsKLSAgIGZvciAoaT0xO2k8c3Qt
PmxheW91dC5uYl9zdHJlYW1zO2krKykKKyAgIC8qIENhbGN1bGF0ZSB0aGUgbGVmdG92ZXIgZnJv
bSB0cnVuY2F0aW9uIGVycm9yLgorICAgICogICBsZWZ0b3ZlciA9IFQgLSB5ICogKG4gLSBtKSAt
IG1fcmF0ZSAqIG0KKyAgICAqIFBsYWNlIGxlZnRvdmVyIGJpdHMgaW4gb21uaWRpcmVjdGlvbmFs
IGNoYW5uZWwuCisgICAgKi8KKyAgIGxlZnRvdmVyX2JpdHMgPSB0b3RhbF9yYXRlCisgICAgICAt
IGRpcmVjdGlvbmFsX3JhdGUgKiBuYl9kaXJlY3Rpb25hbF9jaGFubmVscworICAgICAgLSBub25k
aXJlY3Rpb25hbF9yYXRlICogbmJfbm9uZGlyZWN0aW9uYWxfY2hhbm5lbHM7CisKKyAgIC8qIENh
bGN1bGF0ZSByYXRlcyBmb3IgZWFjaCBjaGFubmVsICovCisgICBmb3IgKGkgPSAwOyBpIDwgc3Qt
PmxheW91dC5uYl9zdHJlYW1zOyBpKyspCiAgICB7Ci0gICAgICByYXRlW2ldID0gbm9uX21vbm9f
cmF0ZTsKKyAgICAgIGlmIChpIDwgc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXMpCisgICAg
ICB7CisgICAgICAgICByYXRlW2ldID0gbm9uZGlyZWN0aW9uYWxfcmF0ZSAqIDI7CisgICAgICB9
IGVsc2UgaWYgKGkgPT0gc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXMpCisgICAgICB7Cisg
ICAgICAgICByYXRlW2ldID0gbm9uZGlyZWN0aW9uYWxfcmF0ZSArIGxlZnRvdmVyX2JpdHM7Cisg
ICAgICB9IGVsc2UKKyAgICAgIHsKKyAgICAgICAgIHJhdGVbaV0gPSBkaXJlY3Rpb25hbF9yYXRl
OworICAgICAgfQogICAgfQogfQogI2VuZGlmIC8qIEVOQUJMRV9FWFBFUklNRU5UQUxfQU1CSVNP
TklDUyAqLwpAQCAtODEyLDggKzg4Miw4IEBAIHN0YXRpYyBvcHVzX2ludDMyIHJhdGVfYWxsb2Nh
dGlvbigKICAgIHJldHVybiByYXRlX3N1bTsKIH0KIAotLyogTWF4IHNpemUgaW4gY2FzZSB0aGUg
ZW5jb2RlciBkZWNpZGVzIHRvIHJldHVybiB0aHJlZSBmcmFtZXMgKi8KLSNkZWZpbmUgTVNfRlJB
TUVfVE1QICgzKjEyNzUrNykKKy8qIE1heCBzaXplIGluIGNhc2UgdGhlIGVuY29kZXIgZGVjaWRl
cyB0byByZXR1cm4gc2l4IGZyYW1lcyAoNiB4IDIwIG1zID0gMTIwIG1zKSAqLworI2RlZmluZSBN
U19GUkFNRV9UTVAgKDYqMTI3NSsxMikKIHN0YXRpYyBpbnQgb3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGVfbmF0aXZlCiAoCiAgICAgT3B1c01TRW5jb2RlciAqc3QsCkBAIC04NTksMzIgKzkyOSw4IEBA
IHN0YXRpYyBpbnQgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVfbmF0aXZlCiAgICBvcHVzX2VuY29k
ZXJfY3RsKChPcHVzRW5jb2RlciopcHRyLCBPUFVTX0dFVF9WQlIoJnZicikpOwogICAgb3B1c19l
bmNvZGVyX2N0bCgoT3B1c0VuY29kZXIqKXB0ciwgQ0VMVF9HRVRfTU9ERSgmY2VsdF9tb2RlKSk7
CiAKLSAgIHsKLSAgICAgIG9wdXNfaW50MzIgZGVsYXlfY29tcGVuc2F0aW9uOwotICAgICAgaW50
IGNoYW5uZWxzOwotCi0gICAgICBjaGFubmVscyA9IHN0LT5sYXlvdXQubmJfc3RyZWFtcyArIHN0
LT5sYXlvdXQubmJfY291cGxlZF9zdHJlYW1zOwotICAgICAgb3B1c19lbmNvZGVyX2N0bCgoT3B1
c0VuY29kZXIqKXB0ciwgT1BVU19HRVRfTE9PS0FIRUFEKCZkZWxheV9jb21wZW5zYXRpb24pKTsK
LSAgICAgIGRlbGF5X2NvbXBlbnNhdGlvbiAtPSBGcy80MDA7Ci0gICAgICBmcmFtZV9zaXplID0g
Y29tcHV0ZV9mcmFtZV9zaXplKHBjbSwgYW5hbHlzaXNfZnJhbWVfc2l6ZSwKLSAgICAgICAgICAg
IHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgY2hhbm5lbHMsIEZzLCBzdC0+Yml0cmF0ZV9icHMsCi0g
ICAgICAgICAgICBkZWxheV9jb21wZW5zYXRpb24sIGRvd25taXgKLSNpZm5kZWYgRElTQUJMRV9G
TE9BVF9BUEkKLSAgICAgICAgICAgICwgc3QtPnN1YmZyYW1lX21lbQotI2VuZGlmCi0gICAgICAg
ICAgICApOwotICAgfQotCi0gICBpZiAoNDAwKmZyYW1lX3NpemUgPCBGcykKLSAgIHsKLSAgICAg
IFJFU1RPUkVfU1RBQ0s7Ci0gICAgICByZXR1cm4gT1BVU19CQURfQVJHOwotICAgfQotICAgLyog
VmFsaWRhdGUgZnJhbWVfc2l6ZSBiZWZvcmUgdXNpbmcgaXQgdG8gYWxsb2NhdGUgc3RhY2sgc3Bh
Y2UuCi0gICAgICBUaGlzIG1pcnJvcnMgdGhlIGNoZWNrcyBpbiBvcHVzX2VuY29kZVtfZmxvYXRd
KCkuICovCi0gICBpZiAoNDAwKmZyYW1lX3NpemUgIT0gRnMgJiYgMjAwKmZyYW1lX3NpemUgIT0g
RnMgJiYKLSAgICAgICAxMDAqZnJhbWVfc2l6ZSAhPSBGcyAmJiAgNTAqZnJhbWVfc2l6ZSAhPSBG
cyAmJgotICAgICAgICAyNSpmcmFtZV9zaXplICE9IEZzICYmICA1MCpmcmFtZV9zaXplICE9IDMq
RnMpCisgICBmcmFtZV9zaXplID0gZnJhbWVfc2l6ZV9zZWxlY3QoYW5hbHlzaXNfZnJhbWVfc2l6
ZSwgc3QtPnZhcmlhYmxlX2R1cmF0aW9uLCBGcyk7CisgICBpZiAoZnJhbWVfc2l6ZSA8PSAwKQog
ICAgewogICAgICAgUkVTVE9SRV9TVEFDSzsKICAgICAgIHJldHVybiBPUFVTX0JBRF9BUkc7CkBA
IC04OTIsNiArOTM4LDkgQEAgc3RhdGljIGludCBvcHVzX211bHRpc3RyZWFtX2VuY29kZV9uYXRp
dmUKIAogICAgLyogU21hbGxlc3QgcGFja2V0IHRoZSBlbmNvZGVyIGNhbiBwcm9kdWNlLiAqLwog
ICAgc21hbGxlc3RfcGFja2V0ID0gc3QtPmxheW91dC5uYl9zdHJlYW1zKjItMTsKKyAgIC8qIDEw
MCBtcyBuZWVkcyBhbiBleHRyYSBieXRlIHBlciBzdHJlYW0gZm9yIHRoZSBUb0MuICovCisgICBp
ZiAoRnMvZnJhbWVfc2l6ZSA9PSAxMCkKKyAgICAgc21hbGxlc3RfcGFja2V0ICs9IHN0LT5sYXlv
dXQubmJfc3RyZWFtczsKICAgIGlmIChtYXhfZGF0YV9ieXRlcyA8IHNtYWxsZXN0X3BhY2tldCkK
ICAgIHsKICAgICAgIFJFU1RPUkVfU1RBQ0s7CkBAIC0xMDEzLDYgKzEwNjIsOSBAQCBzdGF0aWMg
aW50IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlX25hdGl2ZQogICAgICAgY3Vycl9tYXggPSBtYXhf
ZGF0YV9ieXRlcyAtIHRvdF9zaXplOwogICAgICAgLyogUmVzZXJ2ZSBvbmUgYnl0ZSBmb3IgdGhl
IGxhc3Qgc3RyZWFtIGFuZCB0d28gZm9yIHRoZSBvdGhlcnMgKi8KICAgICAgIGN1cnJfbWF4IC09
IElNQVgoMCwyKihzdC0+bGF5b3V0Lm5iX3N0cmVhbXMtcy0xKS0xKTsKKyAgICAgIC8qIEZvciAx
MDAgbXMsIHJlc2VydmUgYW4gZXh0cmEgYnl0ZSBwZXIgc3RyZWFtIGZvciB0aGUgVG9DICovCisg
ICAgICBpZiAoRnMvZnJhbWVfc2l6ZSA9PSAxMCkKKyAgICAgICAgY3Vycl9tYXggLT0gc3QtPmxh
eW91dC5uYl9zdHJlYW1zLXMtMTsKICAgICAgIGN1cnJfbWF4ID0gSU1JTihjdXJyX21heCxNU19G
UkFNRV9UTVApOwogICAgICAgLyogUmVwYWNrZXRpemVyIHdpbGwgYWRkIG9uZSBvciB0d28gYnl0
ZXMgZm9yIHNlbGYtZGVsaW1pdGVkIGZyYW1lcyAqLwogICAgICAgaWYgKHMgIT0gc3QtPmxheW91
dC5uYl9zdHJlYW1zLTEpIGN1cnJfbWF4IC09ICBjdXJyX21heD4yNTMgPyAyIDogMTsKQEAgLTEx
NjEsOSArMTIxMywxMSBAQCBpbnQgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChPcHVzTVNF
bmNvZGVyICpzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgIGNhc2UgT1BVU19TRVRfQklUUkFURV9S
RVFVRVNUOgogICAgewogICAgICAgb3B1c19pbnQzMiB2YWx1ZSA9IHZhX2FyZyhhcCwgb3B1c19p
bnQzMik7Ci0gICAgICBpZiAodmFsdWU8MCAmJiB2YWx1ZSE9T1BVU19BVVRPICYmIHZhbHVlIT1P
UFVTX0JJVFJBVEVfTUFYKQorICAgICAgaWYgKHZhbHVlICE9IE9QVVNfQVVUTyAmJiB2YWx1ZSAh
PSBPUFVTX0JJVFJBVEVfTUFYKQogICAgICAgewotICAgICAgICAgZ290byBiYWRfYXJnOworICAg
ICAgICAgaWYgKHZhbHVlIDw9IDApCisgICAgICAgICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAg
ICB2YWx1ZSA9IElNSU4oMzAwMDAwKnN0LT5sYXlvdXQubmJfY2hhbm5lbHMsIElNQVgoNTAwKnN0
LT5sYXlvdXQubmJfY2hhbm5lbHMsIHZhbHVlKSk7CiAgICAgICB9CiAgICAgICBzdC0+Yml0cmF0
ZV9icHMgPSB2YWx1ZTsKICAgIH0KQEAgLTEyMDYsNiArMTI2MCw3IEBAIGludCBvcHVzX211bHRp
c3RyZWFtX2VuY29kZXJfY3RsKE9wdXNNU0VuY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwgLi4uKQog
ICAgY2FzZSBPUFVTX0dFVF9JTkJBTkRfRkVDX1JFUVVFU1Q6CiAgICBjYXNlIE9QVVNfR0VUX0ZP
UkNFX0NIQU5ORUxTX1JFUVVFU1Q6CiAgICBjYXNlIE9QVVNfR0VUX1BSRURJQ1RJT05fRElTQUJM
RURfUkVRVUVTVDoKKyAgIGNhc2UgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JF
UVVFU1Q6CiAgICB7CiAgICAgICBPcHVzRW5jb2RlciAqZW5jOwogICAgICAgLyogRm9yIGludDMy
KiBHRVQgcGFyYW1zLCBqdXN0IHF1ZXJ5IHRoZSBmaXJzdCBzdHJlYW0gKi8KQEAgLTEyNTIsNiAr
MTMwNyw3IEBAIGludCBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKE9wdXNNU0VuY29kZXIg
KnN0LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgY2FzZSBPUFVTX1NFVF9GT1JDRV9NT0RFX1JFUVVF
U1Q6CiAgICBjYXNlIE9QVVNfU0VUX0ZPUkNFX0NIQU5ORUxTX1JFUVVFU1Q6CiAgICBjYXNlIE9Q
VVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgIGNhc2UgT1BVU19TRVRfUEhB
U0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1Q6CiAgICB7CiAgICAgICBpbnQgczsKICAgICAg
IC8qIFRoaXMgd29ya3MgZm9yIGludDMyIHBhcmFtcyAqLwpAQCAtMTMxMyw3ICsxMzY5LDYgQEAg
aW50IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoT3B1c01TRW5jb2RlciAqc3QsIGludCBy
ZXF1ZXN0LCAuLi4pCiAgICBjYXNlIE9QVVNfUkVTRVRfU1RBVEU6CiAgICB7CiAgICAgICBpbnQg
czsKLSAgICAgIHN0LT5zdWJmcmFtZV9tZW1bMF0gPSBzdC0+c3ViZnJhbWVfbWVtWzFdID0gc3Qt
PnN1YmZyYW1lX21lbVsyXSA9IDA7CiAgICAgICBpZiAoc3QtPm1hcHBpbmdfdHlwZSA9PSBNQVBQ
SU5HX1RZUEVfU1VSUk9VTkQpCiAgICAgICB7CiAgICAgICAgICBPUFVTX0NMRUFSKG1zX2dldF9w
cmVlbXBoX21lbShzdCksIHN0LT5sYXlvdXQubmJfY2hhbm5lbHMpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMv
b3B1c19wcml2YXRlLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX3ByaXZhdGUuaAppbmRleCAzYjYyZWVkMDk2NGYwNTM1
ZWYxMjAxN2MzODlhYmI2MjdlM2M0ZDBhLi5hNzMxY2M1NTBlYTQzNzI0ZDUyYmViNjUwYzQ5NzBk
YTlhZGJkYTAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX3ByaXZhdGUuaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX3By
aXZhdGUuaApAQCAtOTIsMTQgKzkyLDYgQEAgaW50IGVuY29kZV9zaXplKGludCBzaXplLCB1bnNp
Z25lZCBjaGFyICpkYXRhKTsKIAogb3B1c19pbnQzMiBmcmFtZV9zaXplX3NlbGVjdChvcHVzX2lu
dDMyIGZyYW1lX3NpemUsIGludCB2YXJpYWJsZV9kdXJhdGlvbiwgb3B1c19pbnQzMiBGcyk7CiAK
LW9wdXNfaW50MzIgY29tcHV0ZV9mcmFtZV9zaXplKGNvbnN0IHZvaWQgKmFuYWx5c2lzX3BjbSwg
aW50IGZyYW1lX3NpemUsCi0gICAgICBpbnQgdmFyaWFibGVfZHVyYXRpb24sIGludCBDLCBvcHVz
X2ludDMyIEZzLCBpbnQgYml0cmF0ZV9icHMsCi0gICAgICBpbnQgZGVsYXlfY29tcGVuc2F0aW9u
LCBkb3dubWl4X2Z1bmMgZG93bm1peAotI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQotICAgICAg
LCBmbG9hdCAqc3ViZnJhbWVfbWVtCi0jZW5kaWYKLSAgICAgICk7Ci0KIG9wdXNfaW50MzIgb3B1
c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBp
bnQgZnJhbWVfc2l6ZSwKICAgICAgIHVuc2lnbmVkIGNoYXIgKmRhdGEsIG9wdXNfaW50MzIgb3V0
X2RhdGFfYnl0ZXMsIGludCBsc2JfZGVwdGgsCiAgICAgICBjb25zdCB2b2lkICphbmFseXNpc19w
Y20sIG9wdXNfaW50MzIgYW5hbHlzaXNfc2l6ZSwgaW50IGMxLCBpbnQgYzIsCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3Rlc3RzL29wdXNfZGVjb2RlX2Z1enplci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9vcHVzX2RlY29kZV9mdXp6ZXIuYwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi45MDAyNjIyMWNlYWYyOTliM2YwNDE0NWZkNDk3MTZmYjViMTQ2ZDIyCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy90ZXN0cy9vcHVzX2RlY29kZV9mdXp6ZXIuYwpAQCAtMCwwICsxLDEyNiBA
QAorLyogQ29weXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuICovCisvKgorICAgUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAg
LSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVAorICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgor
ICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lm
ZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVk
ZSA8c3RkaW50Lmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+Cisj
aW5jbHVkZSAib3B1cy5oIgorI2luY2x1ZGUgIm9wdXNfdHlwZXMuaCIKKworI2RlZmluZSBNQVhf
RlJBTUVfU0FNUCA1NzYwCisjZGVmaW5lIE1BWF9QQUNLRVQgMTUwMAorCisvKiA0IGJ5dGVzOiBw
YWNrZXQgbGVuZ3RoLCA0IGJ5dGVzOiBlbmNvZGVyIGZpbmFsIHJhbmdlICovCisjZGVmaW5lIFNF
VFVQX0JZVEVfQ09VTlQgOAorCit0eXBlZGVmIHN0cnVjdCB7CisgICAgaW50IGZzOworICAgIGlu
dCBjaGFubmVsczsKK30gVG9jSW5mbzsKKworc3RhdGljIHZvaWQgUGFyc2VUb2MoY29uc3QgdWlu
dDhfdCAqdG9jLCBUb2NJbmZvICpjb25zdCBpbmZvKSB7CisgICAgY29uc3QgaW50IHNhbXBfZnJl
cXNbNV0gPSB7ODAwMCwgMTIwMDAsIDE2MDAwLCAyNDAwMCwgNDgwMDB9OworICAgIGNvbnN0IGlu
dCBiYW5kd2lkdGggPSBvcHVzX3BhY2tldF9nZXRfYmFuZHdpZHRoKHRvYyk7CisKKyAgICBpbmZv
LT5mcyA9IHNhbXBfZnJlcXNbYmFuZHdpZHRoIC0gT1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORF07
CisgICAgaW5mby0+Y2hhbm5lbHMgPSBvcHVzX3BhY2tldF9nZXRfbmJfY2hhbm5lbHModG9jKTsK
K30KKworLyogVHJlYXRzIHRoZSBpbnB1dCBkYXRhIGFzIGNvbmNhdGVuYXRlZCBwYWNrZXRzIGVu
Y29kZWQgYnkgb3B1c19kZW1vLAorICogc3RydWN0dXJlZCBhcworICogICAgYnl0ZXMgMC4uMzog
cGFja2V0IGxlbmd0aAorICogICAgYnl0ZXMgNC4uNzogZW5jb2RlciBmaW5hbCByYW5nZQorICog
ICAgYnl0ZXMgOCsgIDogT3B1cyBwYWNrZXQsIGluY2x1ZGluZyBUb0MKKyAqLworaW50IExMVk1G
dXp6ZXJUZXN0T25lSW5wdXQoY29uc3QgdWludDhfdCAqZGF0YSwgc2l6ZV90IHNpemUpIHsKKyAg
ICBPcHVzRGVjb2RlciAqZGVjOworICAgIG9wdXNfaW50MTYgKnBjbTsKKyAgICB1aW50OF90ICpw
YWNrZXQ7CisgICAgVG9jSW5mbyB0b2M7CisgICAgaW50IGksIGVycjsKKworICAgIC8qIE5vdCBl
bm91Z2ggZGF0YSB0byBzZXR1cCB0aGUgZGVjb2RlciAoKzEgZm9yIHRoZSBUb0MpICovCisgICAg
aWYgKHNpemUgPCBTRVRVUF9CWVRFX0NPVU5UICsgMSkgeworICAgICAgICByZXR1cm4gMDsKKyAg
ICB9CisKKyAgICAvKiBDcmVhdGUgZGVjb2RlciBiYXNlZCBvbiBpbmZvIGZyb20gdGhlIGZpcnN0
IFRvQyBhdmFpbGFibGUgKi8KKyAgICBQYXJzZVRvYygmZGF0YVtTRVRVUF9CWVRFX0NPVU5UXSwg
JnRvYyk7CisKKyAgICBkZWMgPSBvcHVzX2RlY29kZXJfY3JlYXRlKHRvYy5mcywgdG9jLmNoYW5u
ZWxzLCAmZXJyKTsKKyAgICBpZiAoZXJyICE9IE9QVVNfT0sgfCBkZWMgPT0gTlVMTCkgeworICAg
ICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBwY20gPSAob3B1c19pbnQxNiopIG1hbGxvYyhz
aXplb2YoKnBjbSkgKiBNQVhfRlJBTUVfU0FNUCAqIHRvYy5jaGFubmVscyk7CisgICAgcGFja2V0
ID0gKHVpbnQ4X3QqKSBjYWxsb2MoTUFYX1BBQ0tFVCwgc2l6ZW9mKCpwYWNrZXQpKTsKKworICAg
IGkgPSAwOworICAgIHdoaWxlICgxKSB7CisgICAgICAgIGludCBsZW4sIGZlYzsKKworICAgICAg
ICBpZiAoaSArIFNFVFVQX0JZVEVfQ09VTlQgPj0gc2l6ZSkgeworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIH0KKworICAgICAgICBsZW4gPSAob3B1c191aW50MzIpIGRhdGFbaSAgICBdIDw8
IDI0IHwKKyAgICAgICAgICAgICAgKG9wdXNfdWludDMyKSBkYXRhW2kgKyAxXSA8PCAxNiB8Cisg
ICAgICAgICAgICAgIChvcHVzX3VpbnQzMikgZGF0YVtpICsgMl0gPDwgIDggfAorICAgICAgICAg
ICAgICAob3B1c191aW50MzIpIGRhdGFbaSArIDNdOworICAgICAgICBpZiAobGVuID4gTUFYX1BB
Q0tFVCB8fCBsZW4gPCAwKSB7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorCisgICAg
ICAgIC8qIEJ5dGVzIDQuLjcgcmVwcmVzZW50IGVuY29kZXIgZmluYWwgcmFuZ2UsIGJ1dCBhcmUg
dW51c2VkIGhlcmUuCisgICAgICAgICAqIEluc3RlYWQsIGJ5dGUgNCBpcyByZXB1cnBvc2VkIHRv
IGRldGVybWluZSBpZiBGRUMgaXMgdXNlZC4gKi8KKyAgICAgICAgZmVjID0gZGF0YVtpICsgNF0g
JiAxOworCisgICAgICAgIC8qIExvc3QgcGFja2V0ICovCisgICAgICAgIGlmIChsZW4gPT0gMCkg
eworICAgICAgICAgICAgaW50IGZyYW1lX3NpemU7CisgICAgICAgICAgICBvcHVzX2RlY29kZXJf
Y3RsKGRlYywgT1BVU19HRVRfTEFTVF9QQUNLRVRfRFVSQVRJT04oJmZyYW1lX3NpemUpKTsKKyAg
ICAgICAgICAgICh2b2lkKSBvcHVzX2RlY29kZShkZWMsIE5VTEwsIHNpemUsIHBjbSwgZnJhbWVf
c2l6ZSwgZmVjKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGlmIChpICsgU0VUVVBf
QllURV9DT1VOVCArIGxlbiA+IHNpemUpIHsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIG1lbWNweShwY20sICZkYXRhW2kgKyBTRVRVUF9CWVRFX0NP
VU5UXSwgbGVuKTsKKyAgICAgICAgICAgICh2b2lkKSBvcHVzX2RlY29kZShkZWMsIGRhdGEsIHNp
emUsIHBjbSwgTUFYX0ZSQU1FX1NBTVAsIGZlYyk7CisgICAgICAgIH0KKworICAgICAgICBpICs9
IFNFVFVQX0JZVEVfQ09VTlQgKyBsZW47CisgICAgfQorCisgICAgb3B1c19kZWNvZGVyX2Rlc3Ry
b3koZGVjKTsKKyAgICBmcmVlKHBjbSk7CisgICAgZnJlZShwYWNrZXQpOworCisgICAgcmV0dXJu
IDA7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNfZGVjb2RlX2Z1enplci5vcHRpb25zIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0
cy9vcHVzX2RlY29kZV9mdXp6ZXIub3B0aW9ucwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNWFlNzFiOTM3YTRlMzU1
N2YwNDc1NDUwODBmMmU1Mzg3MzZkNzBmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9vcHVzX2Rl
Y29kZV9mdXp6ZXIub3B0aW9ucwpAQCAtMCwwICsxLDIgQEAKK1tsaWJmdXp6ZXJdCittYXhfbGVu
ID0gMTAwMDAwMApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9vcHVzX2VuY29kZV9yZWdyZXNzaW9ucy5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90
ZXN0cy9vcHVzX2VuY29kZV9yZWdyZXNzaW9ucy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI5MjM0NzMwMTQ0Mzk5
MzQxYjUwYThiMzI4MmM2MjkxMjIzYjY2OTEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNf
ZW5jb2RlX3JlZ3Jlc3Npb25zLmMKQEAgLTAsMCArMSwxMDM1IEBACisvKiBDb3B5cmlnaHQgKGMp
IDIwMTYgTWFyayBIYXJyaXMsIEplYW4tTWFyYyBWYWxpbiAqLworLyoKKyAgIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgICBhcmUgbWV0OgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgIC0g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMK
KyAgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QKKyAgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICAgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyAg
IE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgICBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GCisgICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORworICAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKworI2lm
ZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVk
ZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNp
bmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxtYXRoLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+
CisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSAib3B1c19tdWx0aXN0cmVhbS5oIgorI2lu
Y2x1ZGUgIm9wdXMuaCIKKyNpbmNsdWRlICJ0ZXN0X29wdXNfY29tbW9uLmgiCisKKworc3RhdGlj
IGludCBjZWx0X2VjX2ludGVybmFsX2Vycm9yKHZvaWQpCit7CisgICAgT3B1c01TRW5jb2RlciAq
ZW5jOworICAgIGludCBlcnI7CisgICAgdW5zaWduZWQgY2hhciBkYXRhWzI0NjBdOworICAgIGlu
dCBzdHJlYW1zOworICAgIGludCBjb3VwbGVkX3N0cmVhbXM7CisgICAgdW5zaWduZWQgY2hhciBt
YXBwaW5nWzFdOworCisgICAgZW5jID0gb3B1c19tdWx0aXN0cmVhbV9zdXJyb3VuZF9lbmNvZGVy
X2NyZWF0ZSgxNjAwMCwgMSwgMSwgJnN0cmVhbXMsCisgICAgICAgICZjb3VwbGVkX3N0cmVhbXMs
IG1hcHBpbmcsIE9QVVNfQVBQTElDQVRJT05fVk9JUCwgJmVycik7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJQykp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09O
U1RSQUlOVCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMCkpOworICAgIG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMCkpOworICAgIG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDApKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRX
SURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0FVVE8pKTsKKyAgICBvcHVz
X211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTFNCX0RFUFRIKDgpKTsKKyAg
ICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfSU5CQU5EX0ZFQygw
KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BBQ0tF
VF9MT1NTX1BFUkMoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9CSVRSQVRFKE9QVVNfQVVUTykpOworICAgIHsKKyAgICAgICAgc3RhdGljIGNvbnN0
IHNob3J0IHBjbVszMjBdID0KKyAgICAgICAgeworICAgICAgICAgICAgICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAg
ICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgIDE3OTIsICAx
Nzk5LCAgMTc5OSwKKyAgICAgICAgICAgICAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3
OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LAorICAgICAgICAgICAgICAxNzk5LCAgMTc5
OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgICAgIDAsIDI1NjAwLCAgMTc5OSwgIDE3OTksCisgICAg
ICAgICAgICAgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTks
ICAxNzk5LCAgMTc5OSwKKyAgICAgICAgICAgICAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwg
ICAgIDcsICAgICAwLCAgIDI1NSwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAzMjc2NywgICAgLTEsCisg
ICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAxMDAsICAgICAwLCAxNjM4NCwgICAg
IDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
NCwgICAgIDAsICAgICAwLCAgLTI1NiwgICAyNTUsICAgICAwLAorICAgICAgICAgICAgICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAs
CisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsLTMyNzY4LCAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAxMjgsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAg
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgLTI1NiwgICAgIDAsICAgICAwLCAgICAzMiwg
ICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwgIDQzNTIsICAgICA0LCAgIDIyOCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAg
ICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICA1NjMyLCAgICAg
MCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLC0zMjc2OCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAg
ICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAyNTYsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAg
ICAgICAgICAgIC0zOTQ0LCAxMDUwMCwgIDQyODUsIDEwNDU5LCAtNjQ3NCwgMTAyMDQsIC02NTM5
LCAxMTYwMSwgLTY4MjQsCisgICAgICAgICAgICAgMTMzODUsIC03MTQyLCAxMzg3MiwtMTE1NTMs
IDEzNjcwLCAtNzcyNSwgMTM0NjMsIC02ODg3LCAgNzg3NCwKKyAgICAgICAgICAgICAtNTU4MCwg
MTI2MDAsIC00OTY0LCAxMjQ4MCwgIDMyNTQsIDExNzQxLCAtNDIxMCwgIDk3NDEsIC0zMTU1LAor
ICAgICAgICAgICAgICA3NTU4LCAtNTQ2OCwgIDU0MzEsIC0xMDczLCAgMzY0MSwgLTEzMDQsICAg
ICAwLCAgICAtMSwgICAzNDMsCisgICAgICAgICAgICAgICAgMjYsICAgICAwLCAgICAgMCwgICAx
NTAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAxNzk5LCAgMTc5OSwgIDE3
OTksICAxNzk5LCAgMTc5OSwgLTI1NTMsCisgICAgICAgICAgICAgICAgIDcsICAxNzkyLCAgMTc5
OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwKKyAgICAgICAgICAg
ICAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgLTk3MjEKKyAgICAgICAgfTsKKyAgICAgICAg
ZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNvZGUoZW5jLCBwY20sIDMyMCwgZGF0YSwgMjQ2MCk7
CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICB9CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJQykpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlO
VCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BS
RURJQ1RJT05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMCkpOworICAgIG9wdXNfbXVs
dGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMSkpOworICAgIG9wdXNfbXVs
dGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDEwKSk7CisgICAg
b3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9CQU5EV0lEVEgo
T1BVU19CQU5EV0lEVEhfRlVMTEJBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSCgx
OCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9JTkJB
TkRfRkVDKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19T
RVRfUEFDS0VUX0xPU1NfUEVSQyg5MCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDI4MDEzMCkpOworICAgIHsKKyAgICAgICAgc3RhdGlj
IGNvbnN0IHNob3J0IHBjbVsxNjBdID0KKyAgICAgICAgeworICAgICAgICAgICAgIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisg
ICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MjYsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
CisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIDI1NjAwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAg
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAg
ICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAg
ICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMAorICAgICAgICB9OworICAgICAg
ICBlcnIgPSBvcHVzX211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBjbSwgMTYwLCBkYXRhLCAyNDYw
KTsKKyAgICAgICAgYXNzZXJ0KGVyciA+IDApOworICAgIH0KKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX01VU0lDKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUigwKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUl9DT05TVFJB
SU5UKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
UFJFRElDVElPTl9ESVNBQkxFRCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgwKSk7CisgICAgb3B1c19t
dWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgxKSk7CisgICAgb3B1c19t
dWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMTApKTsKKyAg
ICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRXSURU
SChPUFVTX0JBTkRXSURUSF9GVUxMQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQpKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTFNCX0RFUFRI
KDE4KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0lO
QkFORF9GRUMoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVT
X1NFVF9QQUNLRVRfTE9TU19QRVJDKDkwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVy
X2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMjgwMTMwKSk7CisgICAgeworICAgICAgICBzdGF0
aWMgY29uc3Qgc2hvcnQgcGNtWzE2MF0gPQorICAgICAgICB7CisgICAgICAgICAgICAgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwK
KyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAg
ICAgLTk1MTAsIC05NDk0LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAg
ICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAg
ICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwCisgICAgICAgIH07CisgICAg
ICAgIGVyciA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlKGVuYywgcGNtLCAxNjAsIGRhdGEsIDI0
NjApOworICAgICAgICBhc3NlcnQoZXJyID4gMCk7CisgICAgfQorICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfTVVTSUMpKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSKDApKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSX0NPTlNU
UkFJTlQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9QUkVESUNUSU9OX0RJU0FCTEVEKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKDApKTsKKyAgICBvcHVz
X211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRFRYKDEpKTsKKyAgICBvcHVz
X211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElUWSgxMCkpOwor
ICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJ
RFRIKE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9GVUxMQkFORCkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9MU0JfREVQ
VEgoMTgpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
SU5CQU5EX0ZFQygxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX1BBQ0tFVF9MT1NTX1BFUkMoOTApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURSgyODAxMzApKTsKKyAgICB7CisgICAgICAgIHN0
YXRpYyBjb25zdCBzaG9ydCBwY21bMTYwXSA9CisgICAgICAgIHsKKyAgICAgICAgICAgICAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAg
ICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAg
ICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAg
ICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NDc5LCAtOTUxMCwKKyAg
ICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAKKyAgICAgICAgfTsKKyAg
ICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNvZGUoZW5jLCBwY20sIDE2MCwgZGF0YSwg
MjQ2MCk7CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICB9CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJQykp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09O
U1RSQUlOVCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMCkpOworICAgIG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMSkpOworICAgIG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDEwKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9CQU5E
V0lEVEgoT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2Vu
Y29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX0ZVTExCQU5E
KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xTQl9E
RVBUSCgxOCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9JTkJBTkRfRkVDKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfUEFDS0VUX0xPU1NfUEVSQyg5MCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDI4MDEzMCkpOworICAgIHsKKyAgICAgICAg
c3RhdGljIGNvbnN0IHNob3J0IHBjbVsxNjBdID0KKyAgICAgICAgeworICAgICAgICAgICAgIC05
NTEwLCAtOTUxMCwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3
OTksCisgICAgICAgICAgICAgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5
OSwgIDE3OTksICAxNzk5LCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAg
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwg
ICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgLTI1NiwgICAyNTUsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAg
ICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAg
ICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgMTI4LCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAg
ICAgICAgICAgICAgICAwLCAgICAzMiwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgIDQzNTIsICAgICA0LCAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwgICAxNDgsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAor
ICAgICAgICAgICAgICA1NjMyCisgICAgICAgIH07CisgICAgICAgIGVyciA9IG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2RlKGVuYywgcGNtLCAxNjAsIGRhdGEsIDI0NjApOworICAgICAgICBhc3NlcnQo
ZXJyID4gMCk7CisgICAgfQorICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfVk9JQ0UpKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoMSkpOworICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVE
KDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEhB
U0VfSU5WRVJTSU9OX0RJU0FCTEVEKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfRFRYKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElUWSgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfTkFS
Uk9XQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9CQU5EV0lEVEgoT1BVU19BVVRPKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSCgxMikpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9JTkJBTkRfRkVDKDApKTsKKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEFDS0VUX0xPU1NfUEVSQyg0MSkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDIxNDI1
KSk7CisgICAgeworICAgICAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtWzQwXSA9CisgICAgICAg
IHsKKyAgICAgICAgICAgICAxMDQ1OSwgLTY0NzQsIDEwMjA0LCAtNjUzOSwgMTE2MDEsIC02ODI0
LCAxMzM4NSwgLTcxNDIsIDEzODcyLAorICAgICAgICAgICAgLTExNTUzLCAxMzY3MCwgLTc3MjUs
IDEzNDYzLCAtNjg4NywgMTI0ODIsIC01NTgwLCAxMjYwMCwgLTQ5NjQsCisgICAgICAgICAgICAg
MTI0ODAsICAzMjU0LCAxMTc0MSwgLTQyMTAsICA5NzQxLCAtMzE1NSwgIDc1NTgsIC01NDY4LCAg
NTQzMSwKKyAgICAgICAgICAgICAtMTA3MywgIDM2NDEsIC0xMzA0LCAgICAgMCwgICAgLTEsICAg
MzQzLCAgICAyNiwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgIC0y
NTYsICAgMjI2CisgICAgICAgIH07CisgICAgICAgIGVyciA9IG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2RlKGVuYywgcGNtLCA0MCwgZGF0YSwgMjQ2MCk7CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsK
KyAgICAgICAgLyogcmV0dXJucyAtMyAqLworICAgIH0KKyAgICBvcHVzX211bHRpc3RyZWFtX2Vu
Y29kZXJfZGVzdHJveShlbmMpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50IG1zY2Jy
X2VuY29kZV9mYWlsMTAodm9pZCkKK3sKKyAgICBPcHVzTVNFbmNvZGVyICplbmM7CisgICAgaW50
IGVycjsKKyAgICB1bnNpZ25lZCBjaGFyIGRhdGFbNjI3MzAwXTsKKyAgICBzdGF0aWMgY29uc3Qg
dW5zaWduZWQgY2hhciBtYXBwaW5nWzI1NV0gPQorICAgIHsKKyAgICAgICAgICAwLCAgMSwgIDIs
ICAzLCAgNCwgIDUsICA2LCAgNywgIDgsICA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwK
KyAgICAgICAgIDE3LCAxOCwgMTksIDIwLCAyMSwgMjIsIDIzLCAyNCwgMjUsIDI2LCAyNywgMjgs
IDI5LCAzMCwgMzEsIDMyLCAzMywKKyAgICAgICAgIDM0LCAzNSwgMzYsIDM3LCAzOCwgMzksIDQw
LCA0MSwgNDIsIDQzLCA0NCwgNDUsIDQ2LCA0NywgNDgsIDQ5LCA1MCwKKyAgICAgICAgIDUxLCA1
MiwgNTMsIDU0LCA1NSwgNTYsIDU3LCA1OCwgNTksIDYwLCA2MSwgNjIsIDYzLCA2NCwgNjUsIDY2
LCA2NywKKyAgICAgICAgIDY4LCA2OSwgNzAsIDcxLCA3MiwgNzMsIDc0LCA3NSwgNzYsIDc3LCA3
OCwgNzksIDgwLCA4MSwgODIsIDgzLCA4NCwKKyAgICAgICAgIDg1LCA4NiwgODcsIDg4LCA4OSwg
OTAsIDkxLCA5MiwgOTMsIDk0LCA5NSwgOTYsIDk3LCA5OCwgOTksMTAwLDEwMSwKKyAgICAgICAg
MTAyLDEwMywxMDQsMTA1LDEwNiwxMDcsMTA4LDEwOSwxMTAsMTExLDExMiwxMTMsMTE0LDExNSwx
MTYsMTE3LDExOCwKKyAgICAgICAgMTE5LDEyMCwxMjEsMTIyLDEyMywxMjQsMTI1LDEyNiwxMjcs
MTI4LDEyOSwxMzAsMTMxLDEzMiwxMzMsMTM0LDEzNSwKKyAgICAgICAgMTM2LDEzNywxMzgsMTM5
LDE0MCwxNDEsMTQyLDE0MywxNDQsMTQ1LDE0NiwxNDcsMTQ4LDE0OSwxNTAsMTUxLDE1MiwKKyAg
ICAgICAgMTUzLDE1NCwxNTUsMTU2LDE1NywxNTgsMTU5LDE2MCwxNjEsMTYyLDE2MywxNjQsMTY1
LDE2NiwxNjcsMTY4LDE2OSwKKyAgICAgICAgMTcwLDE3MSwxNzIsMTczLDE3NCwxNzUsMTc2LDE3
NywxNzgsMTc5LDE4MCwxODEsMTgyLDE4MywxODQsMTg1LDE4NiwKKyAgICAgICAgMTg3LDE4OCwx
ODksMTkwLDE5MSwxOTIsMTkzLDE5NCwxOTUsMTk2LDE5NywxOTgsMTk5LDIwMCwyMDEsMjAyLDIw
MywKKyAgICAgICAgMjA0LDIwNSwyMDYsMjA3LDIwOCwyMDksMjEwLDIxMSwyMTIsMjEzLDIxNCwy
MTUsMjE2LDIxNywyMTgsMjE5LDIyMCwKKyAgICAgICAgMjIxLDIyMiwyMjMsMjI0LDIyNSwyMjYs
MjI3LDIyOCwyMjksMjMwLDIzMSwyMzIsMjMzLDIzNCwyMzUsMjM2LDIzNywKKyAgICAgICAgMjM4
LDIzOSwyNDAsMjQxLDI0MiwyNDMsMjQ0LDI0NSwyNDYsMjQ3LDI0OCwyNDksMjUwLDI1MSwyNTIs
MjUzLDI1NAorICAgIH07CisKKyAgICBlbmMgPSBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3Jl
YXRlKDgwMDAsIDI1NSwgMjU0LCAxLCBtYXBwaW5nLAorICAgICAgICBPUFVTX0FQUExJQ0FUSU9O
X1JFU1RSSUNURURfTE9XREVMQVksICZlcnIpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfVk9JQ0UpKTsKKyAgICBvcHVz
X211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSKDApKTsKKyAgICBvcHVz
X211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoMCkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNU
SU9OX0RJU0FCTEVEKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfRk9SQ0VfQ0hBTk5FTFMoMikpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMSkpOworICAgIG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMSkpOworICAgIG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDIpKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRX
SURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0FVVE8pKTsKKyAgICBvcHVz
X211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTFNCX0RFUFRIKDE0KSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0lOQkFORF9GRUMo
MCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNL
RVRfTE9TU19QRVJDKDU3KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMs
IE9QVVNfU0VUX0JJVFJBVEUoMzY0MjY3NSkpOworICAgIHsKKyAgICAgICAgc3RhdGljIGNvbnN0
IHNob3J0IHBjbVsyMCoyNTVdID0KKyAgICAgICAgeworICAgICAgICAgICAgICAgICAwCisgICAg
ICAgIH07CisgICAgICAgIGVyciA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlKGVuYywgcGNtLCAy
MCwgZGF0YSwgNjI3MzAwKTsKKyAgICAgICAgYXNzZXJ0KGVyciA+IDApOworICAgICAgICAvKiBy
ZXR1cm5zIC0xICovCisgICAgfQorICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9kZXN0cm95
KGVuYyk7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgbXNjYnJfZW5jb2RlX2ZhaWwo
dm9pZCkKK3sKKyAgICBPcHVzTVNFbmNvZGVyICplbmM7CisgICAgaW50IGVycjsKKyAgICB1bnNp
Z25lZCBjaGFyIGRhdGFbNDcyMzIwXTsKKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBt
YXBwaW5nWzE5Ml0gPQorICAgIHsKKyAgICAgICAgICAwLCAgMSwgIDIsICAzLCAgNCwgIDUsICA2
LCAgNywgIDgsICA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwKKyAgICAgICAgIDE3LCAx
OCwgMTksIDIwLCAyMSwgMjIsIDIzLCAyNCwgMjUsIDI2LCAyNywgMjgsIDI5LCAzMCwgMzEsIDMy
LCAzMywKKyAgICAgICAgIDM0LCAzNSwgMzYsIDM3LCAzOCwgMzksIDQwLCA0MSwgNDIsIDQzLCA0
NCwgNDUsIDQ2LCA0NywgNDgsIDQ5LCA1MCwKKyAgICAgICAgIDUxLCA1MiwgNTMsIDU0LCA1NSwg
NTYsIDU3LCA1OCwgNTksIDYwLCA2MSwgNjIsIDYzLCA2NCwgNjUsIDY2LCA2NywKKyAgICAgICAg
IDY4LCA2OSwgNzAsIDcxLCA3MiwgNzMsIDc0LCA3NSwgNzYsIDc3LCA3OCwgNzksIDgwLCA4MSwg
ODIsIDgzLCA4NCwKKyAgICAgICAgIDg1LCA4NiwgODcsIDg4LCA4OSwgOTAsIDkxLCA5MiwgOTMs
IDk0LCA5NSwgOTYsIDk3LCA5OCwgOTksMTAwLDEwMSwKKyAgICAgICAgMTAyLDEwMywxMDQsMTA1
LDEwNiwxMDcsMTA4LDEwOSwxMTAsMTExLDExMiwxMTMsMTE0LDExNSwxMTYsMTE3LDExOCwKKyAg
ICAgICAgMTE5LDEyMCwxMjEsMTIyLDEyMywxMjQsMTI1LDEyNiwxMjcsMTI4LDEyOSwxMzAsMTMx
LDEzMiwxMzMsMTM0LDEzNSwKKyAgICAgICAgMTM2LDEzNywxMzgsMTM5LDE0MCwxNDEsMTQyLDE0
MywxNDQsMTQ1LDE0NiwxNDcsMTQ4LDE0OSwxNTAsMTUxLDE1MiwKKyAgICAgICAgMTUzLDE1NCwx
NTUsMTU2LDE1NywxNTgsMTU5LDE2MCwxNjEsMTYyLDE2MywxNjQsMTY1LDE2NiwxNjcsMTY4LDE2
OSwKKyAgICAgICAgMTcwLDE3MSwxNzIsMTczLDE3NCwxNzUsMTc2LDE3NywxNzgsMTc5LDE4MCwx
ODEsMTgyLDE4MywxODQsMTg1LDE4NiwKKyAgICAgICAgMTg3LDE4OCwxODksMTkwLDE5MQorICAg
IH07CisKKyAgICBlbmMgPSBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3JlYXRlKDgwMDAsIDE5
MiwgMTg5LCAzLCBtYXBwaW5nLAorICAgICAgICBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURf
TE9XREVMQVksICZlcnIpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfTVVTSUMpKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoMCkpOworICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVE
KDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRk9S
Q0VfQ0hBTk5FTFMoT1BVU19BVVRPKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgwKSk7CisgICAgb3B1c19t
dWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgwKSk7CisgICAgb3B1c19t
dWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMCkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJRFRI
KE9QVVNfQkFORFdJRFRIX01FRElVTUJBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQVVUTykpOworICAgIG9wdXNfbXVs
dGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9MU0JfREVQVEgoOCkpOworICAgIG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9JTkJBTkRfRkVDKDApKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEFDS0VUX0xP
U1NfUEVSQygwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX0JJVFJBVEUoMTUzNjApKTsKKyAgICB7CisgICAgICAgIHN0YXRpYyBjb25zdCBzaG9ydCBw
Y21bMjAqMTkyXSA9CisgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgMAorICAgICAgICB9Owor
ICAgICAgICBlcnIgPSBvcHVzX211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBjbSwgMjAsIGRhdGEs
IDQ3MjMyMCk7CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICAgICAgLyogcmV0dXJucyAt
MSAqLworICAgIH0KKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfZGVzdHJveShlbmMpOwor
ICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50IHN1cnJvdW5kX2FuYWx5c2lzX3VuaW5pdCh2
b2lkKQoreworICAgIE9wdXNNU0VuY29kZXIgKmVuYzsKKyAgICBpbnQgZXJyOworICAgIHVuc2ln
bmVkIGNoYXIgZGF0YVs3MzgwXTsKKyAgICBpbnQgc3RyZWFtczsKKyAgICBpbnQgY291cGxlZF9z
dHJlYW1zOworICAgIHVuc2lnbmVkIGNoYXIgbWFwcGluZ1szXTsKKworICAgIGVuYyA9IG9wdXNf
bXVsdGlzdHJlYW1fc3Vycm91bmRfZW5jb2Rlcl9jcmVhdGUoMjQwMDAsIDMsIDEsICZzdHJlYW1z
LAorICAgICAgICAmY291cGxlZF9zdHJlYW1zLCBtYXBwaW5nLCBPUFVTX0FQUExJQ0FUSU9OX0FV
RElPLCAmZXJyKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19T
RVRfU0lHTkFMKE9QVVNfU0lHTkFMX1ZPSUNFKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUigxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUl9DT05TVFJBSU5UKDEpKTsKKyAgICBvcHVzX211bHRp
c3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUFJFRElDVElPTl9ESVNBQkxFRCgwKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0ZPUkNFX0NI
QU5ORUxTKE9QVVNfQVVUTykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMCkpOworICAgIG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMCkpOworICAgIG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDApKTsKKyAgICBvcHVz
X211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRXSURUSChPUFVT
X0JBTkRXSURUSF9OQVJST1dCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSCg4
KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0lOQkFO
RF9GRUMoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9CSVRSQVRFKDg0MzE1KSk7CisgICAgeworICAgICAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNt
Wzk2MCozXSA9CisgICAgICAgIHsKKyAgICAgICAgICAgICAtNjg5NiwgIDQ5MDEsIC02MTU4LCAg
NDEyMCwgLTUxNjQsICAzNjMxLCAtNDQ0MiwgIDMxNTMsIC00MDcwLAorICAgICAgICAgICAgICAz
MzQ5LCAtNDU3NywgIDQ0NzQsIC01NTQxLCAgNTA1OCwgLTY3MDEsICAzODgxLCAtNzkzMywgIDE4
NjMsCisgICAgICAgICAgICAgLTgwNDEsICAgNjk3LCAtNjczOCwtMzE0NjQsIDE0MzMwLC0xMjUy
MywgIDQwOTYsIC02MTMwLCAyOTE3OCwKKyAgICAgICAgICAgICAgLTI1MCwtMjEyNTIsIDEwNDY3
LCAxNjkwNywgLTMzNTksIC02NjQ0LCAzMTk2NSwgMTQ2MDcsLTIxNTQ0LAorICAgICAgICAgICAg
LTMyNDk3LCAyNDAyMCwgMTI1NTcsLTI2OTI2LC0xODQyMSwgLTE4NDIsIDI0NTg3LCAxOTY1OSwg
IDQ4NzgsCisgICAgICAgICAgICAgMTA5NTQsIDIzMDYwLCAgODkwNywtMTAyMTUsLTE2MTc5LCAz
MTc3MiwtMTE4MjUsLTE1NTkwLC0yMzA4OSwKKyAgICAgICAgICAgICAxNzE3MywtMjU5MDMsLTE3
Mzg3LCAxMTczMywgIDQ4ODQsIDEwMjA0LC0xNjQ3NiwtMTQzNjcsICAgNTE2LAorICAgICAgICAg
ICAgIDIwNDUzLC0xNjg5OCwgMjA5NjcsLTIzODEzLCAgIC0yMCwgMjIwMTEsLTE3MTY3LCAgOTQ1
OSwgMzI0OTksCisgICAgICAgICAgICAtMjU4NTUsICAtNTIzLCAtMzg4MywgIC0zOTAsIC00MjA2
LCAgIDYzNCwgLTM3NjcsICAyMzI1LCAtMjc1MSwKKyAgICAgICAgICAgICAgMzExNSwgLTIzOTIs
ICAyNzQ2LCAtMjE3MywgIDIzMTcsIC0xMTQ3LCAgMjMyNiwgMjMxNDIsIDExMzE0LAorICAgICAg
ICAgICAgLTE1MzUwLC0yNDUyOSwgIDMwMjYsICA2MTQ2LCAgMjE1MCwgIDI0NzYsICAxMTA1LCAg
LTgzMCwgIDE3NzUsCisgICAgICAgICAgICAgLTM0MjUsICAzNjc0LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgICAgNDI5MywtMTQw
MjMsICAzODc5LC0xNTU1MywgIDMxNTgsLTE2MTYxLCAgMjYyOSwgMTg0MzMsLTEyNTM1LAorICAg
ICAgICAgICAgIC02NjQ1LC0yMDczNSwtMzI3NjMsLTEzODI0LC0yMDk5MiwgMjU4NTksIDEzMDUy
LCAtODczMSwgIDIyOTIsCisgICAgICAgICAgICAgLTM4NjAsIDI0MDQ5LCAxMDIyNSwtMTkyMjAs
IDEwNDc4LC0yMjI5NCwgMjI3NzMsIDI4MTM3LCAxMzgxNiwKKyAgICAgICAgICAgICAzMDk1Mywt
MjU4NjMsLTI0NTk4LCAxNjg4OCwtMTQ2MTIsLTI4OTQyLCAyMDk3NCwtMjczOTcsLTE4OTQ0LAor
ICAgICAgICAgICAgLTE4NjkwLCAyMDk5MSwtMTY2MzgsICA1NjMyLC0xNDMzMCwgMjg5MTEsLTI1
NTk0LCAxNzQwOCwgMjk5NTgsCisgICAgICAgICAgICAgIC01MTcsLTIwOTg0LCAtMTgwMCwgMTEy
ODEsICA5OTc3LC0yMTIyMSwtMTQ4NTQsIDIzODQwLCAtOTQ3NywKKyAgICAgICAgICAgICAgMzM2
MiwtMTI4MDUsLTIyNDkzLCAzMjUwNywgICAxNTYsIDE2Mzg0LCAtMTE2MywgIDIzMDEsIC0xODc0
LAorICAgICAgICAgICAgICA0NjAwLCAtMTc0OCwgIDY5NTAsIDE2NTU3LCAgODE5MiwgLTczNzIs
IC0xMDMzLCAtMzI3OCwgIDI4MDYsCisgICAgICAgICAgICAgMjAyNzUsICAzMzE3LCAgLTcxNywg
IDk3OTIsICAtNzY3LCAgOTA5OSwgIC02MTMsICA4MzYyLCAgNTAyNywKKyAgICAgICAgICAgICAg
Nzc3NCwgIDI1OTcsICA4NTQ5LCAgNTI3OCwgIDg3NDMsICA5MzQzLCAgNjk0MCwgMTMwMzgsICA0
ODI2LAorICAgICAgICAgICAgIDE0MDg2LCAgMjk2NCwgMTMyMTUsICAxMzU1LCAxMTU5NiwgICA0
NTUsICA5ODUwLCAgLTUxOSwgMTA2ODAsCisgICAgICAgICAgICAgLTIyODcsIDEyNTUxLCAtMzcz
NiwgMTM2MzksIC00MjkxLCAxMzc5MCwgLTI3MjIsIDE0NTQ0LCAgLTg2NiwKKyAgICAgICAgICAg
ICAxNTA1MCwgIC0zMDQsIDIyODMzLCAtMTE5NiwgMTM1MjAsIC0yMDYzLCAxMzA1MSwgLTIzMTcs
IDEzMDY2LAorICAgICAgICAgICAgIC0yNzM3LCAxMzc3MywgLTI2NjQsIDE0MTA1LCAtMzQ0Nywg
MTM4NTQsIDI0NTg5LCAyNDY3MiwgLTUyODAsCisgICAgICAgICAgICAgMTAzODgsIC00OTMzLCAg
NzU0MywgLTQxNDksICAzNjU0LCAtMTU1MiwgIDE3MjYsICAgNjYxLCAgICA1NywKKyAgICAgICAg
ICAgICAgMjkyMiwgIC03NTEsICAzOTE3LCAgODQxOSwgIDM4NDAsIC01MjE4LCAgMzQzNSwgIDU1
NDAsIC0xMDczLAorICAgICAgICAgICAgICA0MTUzLCAtNjY1NiwgIDE2NDksICAtNzY5LCAtNzI3
NiwtMTMwNzIsICA2MzgwLCAtNzk0OCwgMjA3MTcsCisgICAgICAgICAgICAgMTg0MjUsIDE3Mzky
LCAxNDMzNSwtMTgxOTAsIC0xODQyLCAyNDU4NywgMTk2NTksIDExNzkwLCAxMDk1NCwKKyAgICAg
ICAgICAgICAyMzA2MCwgIDg5MDcsLTEwMjE1LC0xNjE3OSwgMzE3NzIsLTExODI1LC0xNTU5MCwt
MjMxMDEsIDE3MTczLAorICAgICAgICAgICAgLTI1OTAzLC0xNzM4NywgMTE3MzMsICA0ODg0LCAx
MDE5MiwtMTY2MjcsLTE0MzY3LCAgIDUxNiwgMjA0NTMsCisgICAgICAgICAgICAtMTY4OTgsIDIw
OTY3LC0yMzgxMywgICAtMjAsIDIyMDExLC0xNzE2NywgIDk0NjgsIDMyNDk5LC0yNTYwNywKKyAg
ICAgICAgICAgICAgLTUyMywgLTM4ODMsICAtMzkwLCAtNDIwNiwgICA2MzQsIC0zNzY3LCAgMjMy
NSwgLTI3NTEsICAzMTE1LAorICAgICAgICAgICAgIC0yMzkyLCAgMjc0NiwgLTIxNjEsICAyMzE3
LCAtMTE0NywgIDIzMjYsIDIzMTQyLCAxMTMxNCwtMTUzNTAsCisgICAgICAgICAgICAtMjkxMzcs
ICAzMDI2LC0xNTA1NiwgIC00OTEsLTE1MTcwLCAgLTM4NiwtMTYwMTUsICAtNjQxLC0xNjUwNSwK
KyAgICAgICAgICAgICAgLTkzMCwtMTYyMDYsICAtNzE3LC0xNjE3NSwgLTI4MzksLTE2Mzc0LCAt
NDU1OCwtMTYyMzcsIC01MjA3LAorICAgICAgICAgICAgLTE1OTAzLCAtNjQyMSwgIDYzNzMsIC0x
NDAzLCAgNTQzMSwgLTEwNzMsICAzNjQxLCAtMTMwNCwgLTQ0OTUsCisgICAgICAgICAgICAgIC03
NjksIC03Mjc2LCAgMjg1NiwgLTc4NzAsICAzMzE0LCAtODczMCwgIDM5NjQsLTEwMTgzLCAgNDAx
MSwKKyAgICAgICAgICAgIC0xMTEzNSwgIDM0MjEsLTExNzI3LCAgMjk2NiwtMTIzNjAsICAyODE4
LC0xMzQ3MiwgIDM2NjAsLTEzODA1LAorICAgICAgICAgICAgICA1MTYyLC0xMzQ3OCwgIDY0MzQs
LTEyODQwLCAgNzMzNSwtMTI0MjAsICA2ODY1LC0xMjM0OSwgIDU1NDEsCisgICAgICAgICAgICAt
MTE5NjUsICA1NTMwLC0xMDgyMCwgIDUxMzIsIC05MTk3LCAgMzM2NywgLTc3NDUsICAxMjIzLCAt
NjkxMCwKKyAgICAgICAgICAgICAgLTQzMywgLTYyMTEsIC0xNzExLCAtNDk1OCwgLTEwMjUsIC0z
NzU1LCAgLTgzNiwgLTMyOTIsIC0xNjY2LAorICAgICAgICAgICAgIC0yNjYxLC0xMDc1NSwgMzE0
NzIsLTI3OTA2LCAzMTQ3MSwgMTg2OTAsICA1NjE3LCAxNjY0OSwgMTEyNTMsCisgICAgICAgICAg
ICAtMjI1MTYsLTE3Njc0LC0zMTk5MCwgIDM1NzUsLTMxNDc5LCAgNTg4MywgMjYxMjEsIDEyODkw
LCAtNjYxMiwKKyAgICAgICAgICAgICAxMjIyOCwtMTE2MzQsICAgNTIzLCAyNjEzNiwtMjE0OTYs
IDIwNzQ1LC0xNTg2OCwgLTQxMDAsLTI0ODI2LAorICAgICAgICAgICAgIDIzMjgyLCAyMjc5OCwg
ICA0OTEsIC0xNzc0LCAxNTA3NSwtMjczNzMsLTEzMDk0LCAgNjQxNywtMjk0ODcsCisgICAgICAg
ICAgICAgMTQ2MDgsIDEwMTg1LCAxNjE0MywgMjIyMTEsIC04NDM2LCAgNDI4OCwgLTg2OTQsICAy
Mzc1LCAgMzAyMywKKyAgICAgICAgICAgICAgIDQ4NiwgIDE0NTUsICAgMTI4LCAgIDIwMiwgICA5
NDIsICAtOTIzLCAgMjA2OCwgLTEyMzMsICAtNzE3LAorICAgICAgICAgICAgIC0xMDQyLCAtMjE2
NywgMzIyNTUsIC00NjMyLCAgIDMxMCwgLTQ0NTgsIC0zNjM5LCAtNTI1OCwgIDIxMDYsCisgICAg
ICAgICAgICAgLTY4NTcsICAyNjgxLCAtNzQ5NywgIDI3NjUsIC02NjAxLCAgMTk0NSwgLTUyMTks
IDE5MTU0LCAtNDg3NywKKyAgICAgICAgICAgICAgIDYxOSwgLTU3MTksIC0xOTI4LCAtNjIwOCwg
IC0xMjEsICAgNTkzLCAgIDE4OCwgIDE1NTgsIC00MTUyLAorICAgICAgICAgICAgICAxNjQ4LCAg
IDE1NiwgIDE2MDQsIC0zNjY0LCAtNjg2MiwgLTI4NTEsIC01MTEyLCAtMzYwMCwgLTM3NDcsCisg
ICAgICAgICAgICAgLTUwODEsIC00NDI4LCAtNTU5MiwgMjA5NzQsLTI3Mzk3LC0xODk0NCwtMTg2
OTAsIDIwOTkxLC0xNzQwNiwKKyAgICAgICAgICAgICAgNTYzMiwtMTQzMzAsIDI4OTExLCAxNTkz
NCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LAorICAgICAgICAgICAgIDE1OTM0
LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsLTI1NTk0LCAxNzQwOCwgMjk5NTgs
CisgICAgICAgICAgICAgLTcxNzMsLTE2ODg4LCAgOTA5OCwgIC02MTMsICA4MzYyLCAgIDY3NSwg
IDc3NzQsICAyNTk3LCAgODU0OSwKKyAgICAgICAgICAgICAgNTI3OCwgIDg3NDMsICA5Mzc1LCAg
Njk0MCwgMTMwMzgsICA0ODI2LCAxNDU5OCwgIDc3MjEsLTI0MzA4LAorICAgICAgICAgICAgLTI5
OTA1LC0xOTcwMywtMTcxMDYsLTE2MTI0LCAtMzI4NywtMjYxMTgsLTE5NzA5LC0xMDc2OSwgMjQz
NTMsCisgICAgICAgICAgICAgMjg2NDgsICA2OTQ2LCAtMTM2MywgMTI0ODUsIC0xMTg3LCAyNjA3
NCwtMjUwNTUsIDEwMDA0LC0yNDc5OCwKKyAgICAgICAgICAgICAgNzIwNCwgLTQ1ODEsIC05Njc4
LCAgMTU1NCwgMTA1NTMsICAzMTAyLCAxMjE5MywgIDI0NDMsIDExOTU1LAorICAgICAgICAgICAg
ICAxMjEzLCAxMDY4OSwgLTEyOTMsICAgOTIxLCAtNDE3MywgMTA3MDksIC02MDQ5LCAgODgxNSwg
LTcxMjgsCisgICAgICAgICAgICAgIDgxNDcsIC04MzA4LCAgNjg0NywgLTI5NzcsICA0OTIwLC0x
MTQ0NywtMjI0MjYsLTExNzk0LCAgMzUxNCwKKyAgICAgICAgICAgIC0xMDIyMCwgIDM0MzAsIC03
OTkzLCAgMTkyNiwgLTcwNzIsICAgMzI3LCAtNzU2OSwgIC02MDgsIC03NjA1LAorICAgICAgICAg
ICAgICAzNjk1LCAtNjI3MSwgLTE1NzksIC00ODc3LCAtMTQxOSwgLTMxMDMsIC0yMTk3LCAgIDEy
OCwgLTM5MDQsCisgICAgICAgICAgICAgIDM3NjAsIC01NDAxLCAgNDkwNiwgLTYwNTEsICA0MjUw
LCAtNjI3MiwgIDM0OTIsIC02MzQzLCAgMzE5NywKKyAgICAgICAgICAgICAtNjM5NywgIDQwNDEs
IC02MzQxLCAgNjI1NSwgLTYzODEsICA3OTA1LCAxNjUwNCwgICAgIDAsIC02MTQ0LAorICAgICAg
ICAgICAgICA4MDYyLCAtNTYwNiwgIDg2MjIsIC01NTU1LCAgICAtOSwgICAgLTEsICA3NDIzLCAg
ICAgMCwgICAgIDEsCisgICAgICAgICAgICAgICAyMzgsICA1MTQ4LCAgMTMwOSwgIDQ3MDAsICAy
MjE4LCAgNDQwMywgIDI1NzMsICAzNTY4LCAyODMwMywKKyAgICAgICAgICAgICAgMTc1OCwgIDM0
NTQsIC0xMjQ3LCAgMzQzNCwgLTQ5MTIsICAyODYyLCAtNzg0NCwgIDE3MTgsLTEwMDk1LAorICAg
ICAgICAgICAgICAgMzY5LC0xMjYzMSwgICAxMjgsIC0zOTA0LCAgMzYzMiwgLTU0MDEsICA0OTA2
LCAtNjA1MSwgIDQyNTAsCisgICAgICAgICAgICAgLTYyNzIsICAzNDkyLCAtNjM0MywgIDMxOTcs
IC02Mzk3LCAgNDA0MSwgLTYzNDEsICA2MjU1LCAtNjM4MSwKKyAgICAgICAgICAgICAgNzkwNSwg
MTY1MDQsICAgICAwLCAtNjE0NCwgIDgwNjIsIC01NjA2LCAgODYyMiwgLTU1NTUsICA4NDM5LAor
ICAgICAgICAgICAgIC0zMzgyLCAgNzM5OCwgLTExNzAsICA2MTMyLCAgIDIzOCwgIDUxNDgsICAx
MzA5LCAgNDcwMCwgIDIyMTgsCisgICAgICAgICAgICAgIDQ0MDMsICAyNTczLCAgMzU2OCwgIDI3
MDMsICAxNzU4LCAgMzQ1NCwgLTEyNDcsICAzNDM0LCAtNDkxMiwKKyAgICAgICAgICAgICAgMjg2
MiwgLTc4NDQsICAxNzE4LC0xMDA5NSwgICAzNjksLTEyNjMxLCAgLTI1OSwtMTQ2MzIsICAgMjM0
LAorICAgICAgICAgICAgLTE1MDU2LCAgLTUyMSwtMTUxNzAsICAtMzg2LC0xNjAxNSwgIC02NDEs
LTE2NTA1LCAgLTkzMCwtMTYyMDYsCisgICAgICAgICAgICAgLTEyMDksLTE2MTQ2LCAtMjgzOSwt
MTYzNzQsIC00NTU4LC0xNjIxOCwgLTUyMDcsLTE1OTAzLCAtNjQyMSwKKyAgICAgICAgICAgIC0x
NTYxNSwgLTY5MjUsLTE0ODcxLCAtNjE0OSwtMTM3NTksIC01MjMzLC0xMjg0NCwgMTgzMTMsIC00
MzU3LAorICAgICAgICAgICAgIC01Njk2LCAgMjgwNCwgMTI5OTIsLTIyODAyLCAtNjcyMCwgLTk3
NzAsIC03MDg4LCAtODk5OCwgMTQzMzAsCisgICAgICAgICAgICAtMTI1MjMsIDE0ODQzLCAtNjEz
MCwgMjkxNzgsICAtMjUwLC0yNzM5NiwgMTA0NjcsIDE2OTA3LCAtMzM1OSwKKyAgICAgICAgICAg
ICAtNjY0NCwgMzE5NjUsIDE0NjA3LC0yMTU0NCwtMzI0OTcsIDI0MDIwLCAxMjU1NywtMjY5MjYs
ICAtMTczLAorICAgICAgICAgICAgICAtMTI5LCAtNjQwMSwgIC0xMzAsLTI1MDg5LCAtMzg0MSwg
LTQ5MTYsIC0zMDQ4LCAgIDIyNCwgIC0yMzcsCisgICAgICAgICAgICAgLTM5NjksICAtMTg5LCAt
MzUyOSwgIC01MzUsIC0zNDY0LC0xNDg2MywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAg
ICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDM5NSwtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAg
ICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAg
ICAgICAgICAgIC0xNDkwNywtMTQ5MDcsICAgICAwLCAzMjUxMiwtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywK
KyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAgOTkyNSwgIC03MTgsICA5NzUzLCAgLTc2
NywKKyAgICAgICAgICAgICAgOTA5OSwgIC02MTMsICA4MzYyLCAgIDY3NSwgIDc3NzQsICAyNTk3
LCAgODU0OSwgIDUyNzgsICA4NzQzLAorICAgICAgICAgICAgICA5Mzc1LCAgNjk0MCwgMTMwMzgs
ICA0ODI2LCAxNDU5OCwgIDc3MjEsLTI0MzA4LC0yOTkwNSwtMTk3MDMsCisgICAgICAgICAgICAt
MTcxMDYsLTE2MTI0LCAtMzI4NywtMjYxMTgsLTE5NzA5LCAgICAgMCwgMjQzNTMsIDI4NjQ4LCAx
MDI3NCwKKyAgICAgICAgICAgIC0xMTI5MiwtMjk2NjUsLTE2NDE3LCAyNDM0NiwgMTQ1NTMsIDE4
NzA3LCAyNjMyMywgLTQ1OTYsLTE3NzExLAorICAgICAgICAgICAgICA1MTMzLCAyNjMyOCwgICAg
MTMsLTMxMTY4LCAyNDU4MywgMTg0MDQsLTI4OTI3LC0yNDM1MCwgMTk0NTMsCisgICAgICAgICAg
ICAgMjg2NDIsICAxMDE5LC0xMDc3NywgLTMwNzksIDMwMTg4LCAtNzY4NiwgMjc2MzUsLTMyNTIx
LC0xNjM4NCwKKyAgICAgICAgICAgICAxMjUyOCwgLTYzODYsIDEwOTg2LCAyMzgyNywtMjU4ODAs
LTMyNzUyLC0yMzMyMSwgMTQ2MDUsIDMyMjMxLAorICAgICAgICAgICAgICAgNzgwLC0xMzg0OSwg
MTUxMTksIDI4NjQ3LCAgNDg4OCwgLTc3MDUsIDMwNzUwLCAgICA2NCwgICAgIDAsCisgICAgICAg
ICAgICAgMzI0ODgsICA2Njg3LC0yMDc1OCwgMTk3NDUsIC0yMDcwLC0xMzc5MiwgLTY0MTQsIDI4
MTg4LCAtMjgyMSwKKyAgICAgICAgICAgICAtNDU4NSwgIDcxNjgsICA3NDQ0LCAyMzU1NywtMjE5
OTgsIDEzMDY0LCAgMzM0NSwgLTQwODYsLTI4OTE1LAorICAgICAgICAgICAgIC04Njk0LCAzMjI2
MiwgIDg0NjEsIDI3Mzg3LC0xMjI3NSwgMTIwMTIsIDIzNTYzLC0xODcxOSwtMjg0MTAsCisgICAg
ICAgICAgICAgMjkxNDQsLTIyMjcxLCAgLTU2MiwgLTk5ODYsIC01NDM0LCAxMjI4OCwgIDU1NzMs
LTE2NjQyLCAzMjQ0OCwKKyAgICAgICAgICAgICAyOTE4MiwgMzI3MDUsLTMwNzIzLCAyNDI1NSwt
MTk3MTYsIDE4MzY4LCAtNDM1NywgLTU2OTYsICAyODA0LAorICAgICAgICAgICAgIDEyOTkyLC0y
MjgwMiwtMjIwODAsIC03NzAxLCAtNTE4MywgICA0ODYsIC0zMTMzLCAtNTY2MCwgLTEwODMsCisg
ICAgICAgICAgICAgMTY4NzEsLTI4NzI2LC0xMTAyOSwtMzAyNTksIC0xMjA5LC0xNjE0NiwgLTI4
MzksLTE2Mzc0LCAtNDU1OCwKKyAgICAgICAgICAgIC0xNjIxOCwtMTA1MjMsIDIwNjk3LCAtOTUw
MCwgLTEzMTYsICA1NDMxLCAtMTA3MywgIDM2NDEsIC0xMzA0LAorICAgICAgICAgICAgICAxNjQ5
LCAgLTc2OSwgLTcyNzYsICAyODU2LCAtNzg3MCwgIDMzMTQsIC04NzMwLCAgMzk2NCwtMTAxODMs
CisgICAgICAgICAgICAgIDQwMTEsLTExMTM1LCAgMzQyMSwtMTE3MjcsIDIxMzk4LCAzMjc2Nywg
ICAgLTEsIDMyNDg2LCAgICAtMSwKKyAgICAgICAgICAgICAgNjMwMSwtMTMwNzEsICA2MzgwLCAt
Nzk0OCwgICAgLTEsIDMyNzY3LCAgIDI0MCwgMTQwODEsIC01NjQ2LAorICAgICAgICAgICAgIDMw
OTczLCAtMzU5OCwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAzMjc2NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywgIDg5MDEsICA5
Mzc1LCAgNjk0MCwgMTMwMzgsICA0ODI2LCAxNDU5OCwgIDc3MjEsLTI0MzA4LAorICAgICAgICAg
ICAgLTI5OTA1LC0xOTcwMywtMTcxMDYsLTE2MTI0LCAtMzI4NywtMjYxMTgsLTE5NzA5LC0xMDc2
OSwgMjQzNjEsCisgICAgICAgICAgICAgMjg2NDgsIDEwMjc0LC0xMTI5MiwtMjk2NjUsLTE2NDE3
LCAyNDM0NiwgMTQ1ODAsIDE4NzA3LCAyNjMyMywKKyAgICAgICAgICAgICAtNDQ0MCwtMTc3MTEs
ICA1MTMzLCAyNjMyOCwtMTQ1NzksLTMxMDA4LCAyNDU4MywgMTg0MDQsIDI4NDE3LAorICAgICAg
ICAgICAgLTI0MzUwLCAxOTQ1MywgMjg2NDIsLTMyNTEzLC0xMDc3NywgLTMwNzksIDMwMTg4LCAt
NzY4NiwgMjc2MzUsCisgICAgICAgICAgICAtMzI1MjEsLTE2Mzg0LC0yMDI0MCwgLTYzODYsIDEw
OTg2LCAyMzgyNywtMjU4ODAsLTMyNzUyLC0yMzMyMSwKKyAgICAgICAgICAgICAxNDYwNSwgMzIy
MzEsICAgNzgwLC0xMzg0OSwgMTUxMTksIDI4NjQ3LCAgNDg4OCwgLTc3MDUsLTE1MDc0LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywt
MTQ5MDcsLTE0OTA3LCAgODE5MiwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAor
ICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0ODk3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgLTE1OTMxLC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAg
IC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAg
ICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywgMjYxMjEsIDEyODkwLCAgMjYwNCwKKyAgICAg
ICAgICAgICAxMjIyOCwtMTE2MzQsIDEyMjk5LCAgNTU3MywtMTY2NDIsIDMyNDUyLCAyOTE4Miwg
MzI3MDUsLTMwNzIzLAorICAgICAgICAgICAgIDI0MjU1LC0xOTcxNiwgMTMyNDgsLTExNzc5LCAt
NTY5NiwgIDI4MDQsIDEyOTkyLC0yNzY2NiwtMjIwODAsCisgICAgICAgICAgICAgLTc3MDEsIC01
MTgzLCAtNjY4MiwtMzE0NjQsIDE0MzMwLC0xMjUyMywgMTQ4NDMsIC02MTMwLCAyOTE3OCwKKyAg
ICAgICAgICAgICAgIC0xOCwtMjczOTYsIDEwNDY3LCAxNjkwNywgLTMzNTksIC02NjQ0LCAzMTk2
NSwgMTQ2MDcsLTIxNTQ0LAorICAgICAgICAgICAgLTMyNDk3LCAyNDAyMCwgMTI1NTcsLTI2OTI2
LC0xODQyMSwgICA3MDYsIDI0NTg3LCAxOTY1OSwgIDQ4NzgsCisgICAgICAgICAgICAgMTA5NTQs
IDIzMDYwLCAgODkwNywtMTAyMTUsLTIyNTc5LCAzMTc3MiwtMTE4MjUsLTE1NTkwLC0yMzA4OSwK
KyAgICAgICAgICAgICAxNzE3MywtMjU5MDMsLTE3Mzg3LCAgMzI4NSwgIDQ4ODQsIDEwMjA0LC0x
NjYyNywtMTQzNjcsICAgNTE2LAorICAgICAgICAgICAgIDIwNDUzLC0xNjg5OCwgMjA5NjcsLTIz
ODE1LCAgIC0yMCwgMjIwMTEsLTE3MTY3LCAgOTQ2OCwgMzI0OTksCisgICAgICAgICAgICAtMjU2
MDcsICAtNTIzLCAtMzg4MywgIC0zOTAsIC00MjA2LCAgIDYzNCwgLTM3NjcsICAyMzI1LCAtMjc1
MSwKKyAgICAgICAgICAgICAgMzExNSwgLTIzOTIsICAyNzQ2LCAtMjE3MywgIDIzMTcsIC0xMTQ3
LCAgMjMyNiwgMjMxNDIsIDExMzE0LAorICAgICAgICAgICAgLTE1MTMwLC0yOTEzNywgIDMwMjYs
ICA2MTQ2LCAgMjE1MCwgIDI0NzYsICAxMTA1LCAgLTgzMCwgIDE3NzUsCisgICAgICAgICAgICAg
LTM0MjUsICAzNjc0LCAtNTI4NywgIDQ2MDksIC03MTc1LCAgNDkyMiwgLTk1NzksICA0NTU2LC0x
MjAwNywKKyAgICAgICAgICAgICAgNDIzNiwtMTQwMjMsICAzODc5LC0xNTU1MywgIDMxNTgsLTE2
MTYxLCAgMjU3NiwgMTgzOTgsLTEyNTM1LAorICAgICAgICAgICAgIC02NjQ1LC0yMDczNSwtMzI3
NjMsLTEzODI0LC0yMDk5MiwgMjU4NTksICA1MzcyLCAxMjA0MCwgMTMzMDcsCisgICAgICAgICAg
ICAgLTQzNTUsLTMwMjEzLCAgICAtOSwgLTYwMTksIDE0MDYxLC0zMTQ4NywtMTM4NDIsIDMwNDQ5
LCAxNTA4MywKKyAgICAgICAgICAgICAxNDA4OCwgMzEyMDUsLTE4Njc4LC0xMjgzMCwgMTQwOTAs
LTI2MTM4LC0yNTMzNywtMTE1NDEsIC0zMjU0LAorICAgICAgICAgICAgIDI3NjI4LC0yMjI3MCwg
MzA5NTMsLTE2MTM2LC0zMDc0NSwgMjA5OTEsLTE3NDA2LCAgNTYzMiwtMTQzMzAsCisgICAgICAg
ICAgICAgMjg5MTEsLTI1NTk0LCAxNzQwOCwtMjA0NzQsIDEzMDQxLCAtODczMSwgIDIyOTIsIC0z
ODYwLCAyNDA0OSwKKyAgICAgICAgICAgICAxMDIyNSwtMTkyMjAsIDEwNDc4LCAtNDM3NCwgLTEx
OTksICAgMTQ4LCAgLTMzMCwgICAtNzQsICAgNTkzLAorICAgICAgICAgICAgICAgMTg4LCAgMTU1
OCwgLTQxNTIsIDE1OTg0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsCisgICAg
ICAgICAgICAgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgIDE1OTgs
ICAgMTU2LCAgMTYwNCwKKyAgICAgICAgICAgICAtMTE2MywgIDIyNzgsLTMwMDE4LC0yNTgyMSwt
MjE3NjMsLTIzNzc2LCAyNDA2NiwgIDk1MDIsIDI1ODY2LAorICAgICAgICAgICAgLTI1MDU1LCAx
MDAwNCwtMjQ3OTgsICA3MjA0LCAtNDU4MSwgLTk2NzgsICAxNTU0LCAxMDU1MywgIDMxMDIsCisg
ICAgICAgICAgICAgMTIxOTMsICAyNDQzLCAxMTk1NSwgIDEyMTMsIDEwNjg5LCAtMTI5MywgICA5
MjEsIC00MTczLCAgODY2MSwKKyAgICAgICAgICAgICAtNjA0OSwgIDg4MTUsLTIxMjIxLC0xNDg1
NCwgMjM4NDAsIC05NDc3LCAgODU0OSwgIDUyNzgsICA4NzQzLAorICAgICAgICAgICAgICA5Mzc1
LCAgNjk0MCwgMTMwMzgsICA0ODI2LCAxNDU5OCwgIDc3MjEsLTI0MzA4LC0yOTkwNSwtMTk3MDMs
CisgICAgICAgICAgICAtMTcxMDYsLTE2MTI0LCAtMzI4NywtMjYxMTgsLTE5NzA5LC0xMDc2OSwg
MjQzNjEsIDI4NjQ4LCAxMDI3NCwKKyAgICAgICAgICAgIC0xMTI5MiwtMjk2NjUsLTE2NDE3LCAy
NDM0NiwgMTQ1ODAsIDE4NzA3LCAyNjMyMywgLTQ0MTAsLTE3NzExLAorICAgICAgICAgICAgICA1
MTMzLCAyNjMyOCwtMTQ1NzksLTMxMDA4LCAyNDU4MywgMTg0MDQsIDI4NDE3LC0yNDM1MCwgMTk0
NTMsCisgICAgICAgICAgICAgMjg2NDIsLTMyNTEzLC0xMDc3NywgLTMwNzksIDMwMTg4LCAtNzY4
NiwgMjc2MzUsLTMyNTIxLC0xNjM4NCwKKyAgICAgICAgICAgIC0yMDI0MCwgLTYzODYsIDEwOTg2
LCAyMzgyNywtMjU4ODAsLTMyNzUyLC0yMzMyMSwgMTQ2MDUsIDMyMjMxLAorICAgICAgICAgICAg
ICAgNzgwLC0xMzg0OSwgMTUxMTksIDI4NjQ3LCAgNDg4OCwgLTc3MDUsIDMwNzUwLCAgICA2NCwg
ICAgIDAsCisgICAgICAgICAgICAgMzI0ODgsICA2Njg3LC0yMDc1OCwgMTk3NDUsIC0yMDcwLCAg
ICAtMSwgICAgLTEsICAgIDI4LCAgIDI1NiwKKyAgICAgICAgICAgICAtNDYwOCwgIDcxNjgsICA3
NDQ0LCAyMzU1NywtMjE5OTgsIDEzMDY0LCAgMzM0NSwgLTQwODYsLTI4OTE1LAorICAgICAgICAg
ICAgIC04NTk0LCAzMjI2MiwgIDg0NjEsIDI3Mzg3LC0xMjI3NSwgMTIwMTIsIDIzNTYzLC0xODcx
OSwtMjg0MTAsCisgICAgICAgICAgICAgMjkxNDQsLTIyMjcxLC0zMjU2MiwtMTYzODQsIDEyNTI4
LCAtNjM4NiwgMTA5ODYsIDIzODI3LC0yNTg4MCwKKyAgICAgICAgICAgIC0zMjc1MiwtMjMzMjEs
IDE0NjA1LCAzMjIzMSwgICA3ODAsLTEzODQ5LCAxNTExOSwgMjg2NDcsICA0ODg4LAorICAgICAg
ICAgICAgIC03NzA1LCAzMDc1MCwgICAgNjQsICAgICAwLCAzMjQ4OCwgIDY2ODcsLTIwNzU4LCAx
OTc0NSwgLTIwNzAsCisgICAgICAgICAgICAtMTM3OTIsIC02NDE0LCAyODE4OCwgLTI4MjEsIC00
NTg1LCAgNzE2OCwgIDc0NDQsIDIzNTU3LC0yMTk5OCwKKyAgICAgICAgICAgICAxMzA2NCwgIDMz
NDUsIC00MDg2LC0yODkxNSwgLTg2OTQsIDMyMjYyLCAgODQ2MSwgMjczODcsLTEyMjc1LAorICAg
ICAgICAgICAgIDEyMDEyLCAyMzU2MywtMTg3MTksLTI4NDEwLCAyOTE0NCwtMjIyNzEsICAtNTYy
LCAtOTk4NiwgLTU0MzQsCisgICAgICAgICAgICAgMTIyODgsIC0yMTA3LC0xNjY0MywgMzI0NTIs
IDI5MTgyLCAzMjcwNSwtMzA3MjMsIDI0MjU1LC0xOTcxNiwKKyAgICAgICAgICAgICAxODM2OCwg
LTQzNTcsIC01Njk2LCAgMjgwNCwgMTI5OTIsLTIyODAyLC0yMjA4MCwgLTc3MDEsIC01MTgzLAor
ICAgICAgICAgICAgICAgNDg2LCAtMzEzMywgLTU2NjAsIC0xMDgzLCAxNjg3MSwtMjg3MjYsLTEx
MDI5LC0zMDI1OSwgLTEyMDksCisgICAgICAgICAgICAtMTYxNDYsIC0yODM5LC0xNjM3NCwgLTQ1
NTgsLTE2MjE4LC0xMDUyMywgMjA2OTcsIC05NTAwLCAtMTMxNiwKKyAgICAgICAgICAgICAgNTQz
MSwgLTEwNzMsICAzNjQxLCAtMTMwNCwgIDE2NDksICAtNzY5LCAtNzI3NiwgIDI4NTYsIC03ODcw
LAorICAgICAgICAgICAgICAzMzE0LCAtODczMCwgIDM5NjQsLTEwMTgzLCAgNDAxMSwtMTExMzUs
ICAzNDIxLC0xMTcyNywgMjEzOTgsCisgICAgICAgICAgICAgMzI3NjcsICAgIC0xLCAzMjQ4Niwg
ICAgLTEsICAgLTk5LC0xMzA3MiwgIDYzODAsIC03OTQ4LCAgNDg2NCwKKyAgICAgICAgICAgICAz
Mjc2NywgMTczOTIsIDE0MzM1LCAtNTY0NiwgMzA5NzMsIC0zNTk4LC0xMDI5OSwtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkw
NSwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAg
IC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xOTc3MSwtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAg
ICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE2NDQzLC0xNDkwNywtMTQ5
MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAg
ICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAg
ICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywK
KyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTU5MzEsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAg
ICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsICAgIC0xLC0xNDkwNywtMTQ5MDcsCisgICAg
ICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisg
ICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LCAgNzg3NywgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
CisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAg
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICAtOTk0LCAtNzI3NiwgIDI4NTYsIC03ODcwLAorICAgICAgICAg
ICAgICAzMzE0LCAtODczMCwgIDM5NjQsLTEwMTgzLCAgNDAxMSwtMTExMzUsICAzNDIxLC0xMTcy
NywgMjEzOTgsCisgICAgICAgICAgICAgMzI3NjcsICAgIC0xLCAzMjQ4NiwgICAgLTEsICAgLTk5
LC0xMzA3MiwgIDYzODAsIC03OTQ4LCAgNDg2NCwKKyAgICAgICAgICAgICAzMjc2NywgMTczOTIs
IDE0MzM1LCAtNTY0NiwgMzA5NzMsIC0zNTk4LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAg
ICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNSwtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAor
ICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywgICAxOTcsICAgICAwLC0xNDk3NywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAxMjgzOCwgIDY2NTMsICAg
Mjk0LAorICAgICAgICAgICAgLTI5Njk5LC0yNTgyMSwtMjE3NjMsLTIzNzc2LCAyNDA2NiwgIDk1
MDIsIDI1ODY2LC0yNTA1NSwgMTAwMDQsCisgICAgICAgICAgICAtMjQ3OTgsICA3MjA0LCAtNDU4
MSwgLTk2NzgsICAxNTU0LCAxMDU1MywgIDMxMDIsIDEyMTkzLCAgMjQ0MywKKyAgICAgICAgICAg
ICAxMTk1NSwgIDEyMTMsIDEwNjg5LCAtMTI5MywgICA5MjEsICAgMTc5LCAgODQ0OCwgLTYwNDks
ICA4ODE1LAorICAgICAgICAgICAgIC03MTI4LCAgODE0NywgLTgzMDgsICA2ODQ3LCAtOTg4OSwg
IDQ5MjAsLTExNDQ3LCAgMzE3NCwtMTE3OTQsCisgICAgICAgICAgICAgIDM1MTQsLTEwMjIwLCAg
MzQzMCwgMTYzODQsICAxOTI2LCAtNzA3MiwgICAzMjcsIC03NTM3LCAgLTYwOCwKKyAgICAgICAg
ICAgICAtNzYwNSwgLTExNjksIC02Mzk3LCAtMTU3OSwgLTQ4NzcsIC0xNDE5LCAtMzEwMywgLTIx
OTcsICAgMTI4LAorICAgICAgICAgICAgIC0zOTA0LCAgMzYzMiwgLTU0MDEsICA0OTA2LCAtNjA1
MSwgIDQyNTAsIC02MjcyLCAgMzQ5MiwgLTYzNDMsCisgICAgICAgICAgICAgIDMxOTcsIC02Mzk3
LCAgNDA0MSwgLTYzNDEsICA2MjU1LCAtNjM4MSwgIDc5MDUsIDE2NTA0LCAgICAgMCwKKyAgICAg
ICAgICAgICAtNjE0NCwgIDgwNjIsIC01NjA2LCAgODYyMiwgLTU1NTUsICA4NDM5LCAtMzM4Miwg
IDczOTgsIC0xMTcwLAorICAgICAgICAgICAgICA2MTMyLCAgIDIzOCwgIDUxNDgsICAxMzA5LCAg
NDcwMCwgIDIyMTgsICA0NDAzLCAgMjU3MywgIDM1NjgsCisgICAgICAgICAgICAgIDI3MDMsICAx
NzU4LCAgMzQ1NCwgLTEyNDcsICAzNDM0LCAtNDkxMiwgIDI4NjIsIC03ODQ0LCAgMTcxOCwKKyAg
ICAgICAgICAgIC0xMDA5NSwgICAzNjksLTEyNjMxLCAgLTI1OSwtMTQ2MzIsICAgMjM0LC0xNTA1
NiwgIC00OTEsLTE2MTk0LAorICAgICAgICAgICAgICAtMzg2LC0xNjAxNSwgIC02NDEsLTE2NTA1
LCAgLTkzMCwtMTYyMDYsIC0xMjA5LC0xNjE0NiwgLTI4MzksCisgICAgICAgICAgICAtMTYzNzQs
IC00NTU4LC0xNjIxOCwgLTUyMDcsLTE1OTAzLCAtNjQyMSwtMTU2MTUsIC02OTI1LC0xNDg3MSwK
KyAgICAgICAgICAgICAtNjE0OSwtMTM3NTksIC01MjMzLC0xMjg0NCwgMTgzMTMsIC00MzU3LCAt
NTY5NiwgIDI4MDQsIDEyOTkyLAorICAgICAgICAgICAgLTIyODAyLCAtNjcyMCwgLTk3NzAsIC03
MDg4LCAtODk5OCwgMTQzMzAsLTEyNTIzLCAxNDg0MywgLTYxMzAsCisgICAgICAgICAgICAgMjkx
NzgsICAtMjUwLC0yNzM5NiwgMTA0NjcsIDE2OTA3LCAtMzM1OSwgLTY2NDQsIDMxOTY1LCAxNDYw
NywKKyAgICAgICAgICAgIC0yMTU0NCwtMzI0OTcsIDI0MDIwLCAxMjU1NywtMjY5MjYsICAtMTcz
LCAgLTEyOSwgLTY0MDEsICAtMTMwLAorICAgICAgICAgICAgLTI1MDg5LCAtMzgxNiwgLTQ5MTYs
IC0zMDQ4LCAgIC0zMiwgICAgLTEsIC0zOTY5LCAgIDI1NiwgLTM1MjksCisgICAgICAgICAgICAg
IC01MzUsIC0zNDY0LC0xNDg2MywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAg
ICAgLTEyMDksLTE2MTQ2LCAtMjgzOSwtMTYzNzQsIC00NTU4LC0xNjIxOCwtMTA1MjMsIDIwNjk3
LCAtOTUwMCwKKyAgICAgICAgICAgICAtMTMxNiwgIDU0MzEsIC0xMDczLCAgMzY0MSwgLTEzMDQs
ICAxNjQ5LCAgLTc2OSwgLTcyNzYsICAyODU2LAorICAgICAgICAgICAgIC03ODcwLCAgMzMxNCwg
LTg3MzAsICAzOTY0LC0xMDE4MywgIDQwMTEsLTExMTM1LCAgMzQyMSwtMTE3MjcsCisgICAgICAg
ICAgICAgMjEzOTgsIDMyNzY3LCAgICAtMSwgMzI0ODYsICAgIC0xLCAgNjMwMSwtMTMwNzEsICA2
MzgwLCAtNzk0OCwKKyAgICAgICAgICAgICAgICAtMSwgMzI3NjcsICAgMjQwLCAxNDA4MSwgLTU2
NDYsIDMwOTczLCAtMzU5OCwtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAg
ICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgIDMyNzY3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisg
ICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywgIDg5
MDEsICA5Mzc1LCAgNjk0MCwKKyAgICAgICAgICAgICAxMzAzOCwgIDQ4MjYsIDE0NTk4LCAgNzcy
MSwtMjQzMDgsLTI5OTA1LC0xOTcwMywtMTcxMDYsLTE2MTI0LAorICAgICAgICAgICAgIC0zMjg3
LC0yNjExOCwtMTk3MDksLTEwNzY5LCAyNDM2MSwgMjg2NDgsIDEwMjc0LC0xMTI5MiwtMjk2NjUs
CisgICAgICAgICAgICAtMTY0MTcsIDI0MzQ2LCAxNDU4MCwgMTg3MDcsIDI2MzIzLCAtNDQ0MCwt
MTc3MTEsICA1MTMzLCAyNjMyOCwKKyAgICAgICAgICAgIC0xNDU3OSwtMzEwMDgsIDI0NTgzLCAx
ODQwNCwgMjg0MTcsLTI0MzUwLCAxOTQ1MywgMjg2NDIsLTMyNTEzLAorICAgICAgICAgICAgLTEw
Nzc3LCAtMzA3OSwgMzAxODgsIC03Njg2LCAyNzYzNSwtMzI1MjEsLTE2Mzg0LC0yMDI0MCwgLTYz
ODYsCisgICAgICAgICAgICAgMTA5ODYsIDIzODI3LC0yNTg4MCwtMzI3NTIsLTIzMzIxLCAxNDYw
NSwgMzIyMzEsICAgNzgwLC0xMzg0OSwKKyAgICAgICAgICAgICAxNTExOSwgMjg2NDcsICA0ODg4
LCAtNzcwNSwtMTUwNzQsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LCAgODE5MiwKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAg
ICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0ODk3LAorICAgICAg
ICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE1OTMxLC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAor
ICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LCAyNjEyMSwg
MTI4OTAsICAyNjA0LCAxMjIyOCwtMTE2MzQsIDEyMjk5LCAgNTU3MywKKyAgICAgICAgICAgIC0x
NjY0MiwgMzI0NTIsIDI5MTgyLCAzMjcwNSwtMzA3MjMsIDI0MjU1LC0xOTcxNiwgMTMyNDgsLTEx
Nzc5LAorICAgICAgICAgICAgIC01Njk2LCAgMjgwNCwgMTI5OTIsLTI3NjY2LC0yMjA4MCwgLTc3
MDEsIC01MTgzLCAtNjY4MiwtMzE0NjQsCisgICAgICAgICAgICAgMTQzMzAsLTEyNTIzLCAxNDg0
MywgLTYxMzAsIDI5MTc4LCAgIC0xOCwtMjczOTYsIDEwNDY3LCAxNjkwNywKKyAgICAgICAgICAg
ICAtMzM1OSwgLTY2NDQsIDMxOTY1LCAxNDYwNywtMjE1NDQsLTMyNDk3LCAyNDAyMCwgMTI1NTcs
LTI2OTI2LAorICAgICAgICAgICAgLTE4NDIxLCAgIDcwNiwgMjQ1ODcsIDE5NjU5LCAgNDg3OCwg
MTA5NTQsIDIzMDYwLCAgODkwNywtMTAyMTUsCisgICAgICAgICAgICAtMjI1NzksIDMxNzcyLC0x
MTgyNSwtMTU1OTAsLTIzMDg5LCAxNzE3MywtMjU5MDMsLTE3Mzg3LCAgMzI4NSwKKyAgICAgICAg
ICAgICAgNDg4NCwgMTAyMDQsLTE2NjI3LC0xNDM2NywgICA1MTYsIDIwNDUzLC0xNjg5OCwgMjA5
NjcsLTIzODE1LAorICAgICAgICAgICAgICAgLTIwLCAyMjAxMSwtMTcxNjcsICA5NDY4LCAzMjQ5
OSwtMjU2MDcsICAtNTIzLCAtMzg4MywgIC0zOTAsCisgICAgICAgICAgICAgLTQyMDYsICAgNjM0
LCAtMzc2NywgIDIzMjUsIC0yNzUxLCAgMzExNSwgLTIzOTIsICAyNzQ2LCAtMjE3MywKKyAgICAg
ICAgICAgICAgMjMxNywgLTExNDcsICAyMzI2LCAyMzE0MiwgMTEzMTQsLTE1MTMwLC0yOTEzNywg
IDMwMjYsICA2MTQ2LAorICAgICAgICAgICAgICAyMTUwLCAgMjQ3NiwgIDExMDUsICAtODMwLCAg
MTc3NSwgLTM0MjUsICAzNjc0LCAtNTI4NywgIDQ2MDksCisgICAgICAgICAgICAgLTcxNzUsICA0
OTIyLCAtOTU3OSwgIDQ1NTYsLTEyMDA3LCAgNDIzNiwtMTQwMjMsICAzODc5LC0xNTU1MywKKyAg
ICAgICAgICAgICAgMzE1OCwtMTYxNjEsICAyNTc2LCAxODM5OCwtMTI1MzUsIC02NjQ1LC0yMDcz
NSwtMzI3NjMsLTEzODI0LAorICAgICAgICAgICAgLTIwOTkyLCAyNTg1OSwgIDUzNzIsIDEyMDQw
LCAxMzMwNywgLTQzNTUsLTMwMjEzLCAgICAtOSwgLTYwMTkKKyAgICAgICAgfTsKKyAgICAgICAg
ZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNvZGUoZW5jLCBwY20sIDk2MCwgZGF0YSwgNzM4MCk7
CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICB9CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJQykpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMSkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlO
VCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BS
RURJQ1RJT05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9GT1JDRV9DSEFOTkVMUyhPUFVTX0FVVE8pKTsKKyAgICBvcHVzX211bHRp
c3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVE
KDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRFRY
KDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQ09N
UExFWElUWSg2KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX01BWF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORCkpOworICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19BVVRP
KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xTQl9E
RVBUSCg5KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VU
X0lOQkFORF9GRUMoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDUpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURSg3NzU0MTApKTsKKyAgICB7CisgICAgICAgIHN0
YXRpYyBjb25zdCBzaG9ydCBwY21bMTQ0MCozXSA9CisgICAgICAgIHsKKyAgICAgICAgICAgICAz
MDQ0OSwgMTUwODMsIDE0MDg4LCAzMTIwNSwtMTg2NzgsLTEyODMwLCAxNDA5MCwtMjYxMzgsLTI1
MzM3LAorICAgICAgICAgICAgLTExNTQxLCAtMzI1NCwgMjc2MjgsLTIyMjcwLCAzMDk1MywtMTYx
MzYsLTMwNzQ1LCAyMDk5MSwtMTc0MDYsCisgICAgICAgICAgICAgIDU2MzIsLTE0MzMwLCAyODkx
MSwtMjU1OTQsIDE3NDA4LC0yMDQ3NCwgMTMwNDEsIC04NzMxLCAgMjI5MiwKKyAgICAgICAgICAg
ICAtMzg2MCwgMjQwNDksIDEwMjI1LC0xOTIyMCwgMTA0NzgsIC00Mzc0LCAtMTE5OSwgICAxNDgs
ICAtMzMwLAorICAgICAgICAgICAgICAgLTc0LCAgIDU5MywgICAxODgsICAxNTU4LCAtNDE1Miwg
MTU5ODQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsCisgICAgICAgICAgICAgMTU5MzQsIDE1OTM0LCAx
NTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAgMTU5OCwKKyAgICAgICAg
ICAgICAgIDE1NiwgIDE2MDQsIC0xMTYzLCAgMjI3OCwtMzAwMTgsLTI1ODIxLC0yMTc2MywtMjM3
NzYsIDI0MDY2LAorICAgICAgICAgICAgICA5NTAyLCAyNTg2NiwtMjUwNTUsIDEwMDA0LC0yNDc5
OCwgIDcyMDQsIC00NTgxLCAtOTY3OCwgIDE1NTQsCisgICAgICAgICAgICAgMTA1NTMsICAzMTAy
LCAxMjE5MywgIDI0NDMsIDExOTU1LCAgMTIxMywgMTA2ODksIC0xMjkzLCAgIDkyMSwKKyAgICAg
ICAgICAgICAtNDE3MywgIDg2NjEsIC02MDQ5LCAgODgxNSwtMjEyMjEsLTE0ODU0LCAyMzg0MCwg
LTk0NzcsICA4NTQ5LAorICAgICAgICAgICAgICA1Mjc4LCAgODc0MywgIDkzNzUsICA2OTQwLCAx
MzAzOCwgIDQ4MjYsIDE0NTk4LCAgNzcyMSwtMjQzMDgsCisgICAgICAgICAgICAtMjk5MDUsLTE5
NzAzLC0xNzEwNiwtMTYxMjQsIC0zMjg3LC0yNjExOCwtMTk3MDksLTEwNzY5LCAyNDM2MSwKKyAg
ICAgICAgICAgICAyODY0OCwgMTAyNzQsLTExMjkyLC0yOTY2NSwtMTY0MTcsIDI0MzQ2LCAxNDU4
MCwgMTg3MDcsIDI2MzIzLAorICAgICAgICAgICAgIC00NDEwLC0xNzcxMSwgIDUxMzMsIDI2MzI4
LC0xNDU3OSwtMzEwMDgsIDI0NTgzLCAxODQwNCwgMjg0MTcsCisgICAgICAgICAgICAtMjQzNTAs
IDE5NDUzLCAyODY0MiwtMzI1MTMsLTEwNzc3LCAtMzA3OSwgMzAxODgsIC03Njg2LCAyNzYzNSwK
KyAgICAgICAgICAgIC0zMjUyMSwtMTYzODQsLTIwMjQwLCAtNjM4NiwgMTA5ODYsIDIzODI3LC0y
NTg4MCwtMzI3NTIsLTIzMzIxLAorICAgICAgICAgICAgIDE0NjA1LCAzMjIzMSwgICA3ODAsLTEz
ODQ5LCAxNTExOSwgMjg2NDcsICA0ODg4LCAtNzcwNSwgMzA3NTAsCisgICAgICAgICAgICAgICAg
NjQsICAgICAwLCAzMjQ4OCwgIDY2ODcsLTIwNzU4LCAxOTc0NSwgLTIwNzAsICAgIC0xLCAgICAt
MSwKKyAgICAgICAgICAgICAgICAyOCwgICAyNTYsIC00NjA4LCAgNzE2OCwgIDc0NDQsIDIzNTU3
LC0yMTk5OCwgMTMwNjQsICAzMzQ1LAorICAgICAgICAgICAgIC00MDg2LC0yODkxNSwgLTg1OTQs
IDMyMjYyLCAgODQ2MSwgMjczODcsLTEyMjc1LCAxMjAxMiwgMjM1NjMsCisgICAgICAgICAgICAt
MTg3MTksLTI4NDEwLCAyOTE0NCwtMjIyNzEsLTMyNTYyLC0xNjM4NCwgMTI1MjgsIC02Mzg2LCAx
MDk4NiwKKyAgICAgICAgICAgICAyMzgyNywtMjU4ODAsLTMyNzUyLC0yMzMyMSwgMTQ2MDUsIDMy
MjMxLCAgIDc4MCwtMTM4NDksIDE1MTE5LAorICAgICAgICAgICAgIDI4NjQ3LCAgNDg4OCwgLTc3
MDUsIDMwNzUwLCAgICA2NCwgICAgIDAsIDMyNDg4LCAgNjY4NywtMjA3NTgsCisgICAgICAgICAg
ICAgMTk3NDUsIC0yMDcwLC0xMzc5MiwgLTY0MTQsIDI4MTg4LCAtMjgyMSwgLTQ1ODUsICA3MTY4
LCAgNzQ0NCwKKyAgICAgICAgICAgICAyMzU1NywtMjE5OTgsIDEzMDY0LCAgMzM0NSwgLTQwODYs
LTI4OTE1LCAtODY5NCwgMzIyNjIsICA4NDYxLAorICAgICAgICAgICAgLTE0ODUzLC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywgMzI3NjcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDg5MSwtMTQ5MDcsLTE0
OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsICA4OTAxLCAgOTM3NSwgIDY5
NDAsIDEzMDM4LCAgNDgyNiwgMTQ1OTgsICA3NzIxLAorICAgICAgICAgICAgLTI0MzA4LC0yOTkw
NSwtMTk3MDMsLTE3MTA2LC0xNjEyNCwgLTMyODcsLTI2MTE4LC0xOTcwOSwtMTA3NjksCisgICAg
ICAgICAgICAgMjQzNjEsIDI4NjQ4LCAxMDI3NCwtMTEyOTIsLTI5NjY1LC0xNjQxNywgMjQzNDYs
IDE0NTgwLCAxODcwNywKKyAgICAgICAgICAgICAyNjMyMywgLTQ0NDAsLTE3NzExLCAgNTEzMywg
MjYzMjgsLTE0NTc5LC0zMTAwOCwgMjQ1ODMsIDE4NDA0LAorICAgICAgICAgICAgIDI4NDE3LC0y
NDM1MCwgMTk0NTMsIDI4NjQyLC0zMjUxMywtMTA3NzcsIC0zMDc5LCAzMDE4OCwgLTc2ODYsCisg
ICAgICAgICAgICAgMjc2MzUsLTMyNTIxLC0xNjM4NCwtMjAyNDAsIC02Mzg2LCAxMDk4NiwgMjM4
MjcsLTI1ODgwLC0zMjc1MiwKKyAgICAgICAgICAgIC0yMzMyMSwgMTQ2MDUsIDMyMjMxLCAgIDc4
MCwtMTM4NDksIDE1MTE5LCAyODY0NywgIDQ4ODgsIC03NzA1LAorICAgICAgICAgICAgLTE1MDc0
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywgIDgxOTIsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDg5NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAg
ICAgLTE0OTA3LC0xNTkzMSwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAg
ICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsIDI2MTIxLCAxMjg5MCwKKyAgICAgICAgICAgICAgMjYwNCwg
MTIyMjgsLTExNjM0LCAxMjI5OSwgIDU1NzMsLTE2NjQyLCAzMjQ1MiwgMjkxODIsICA3NzEwLAor
ICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAg
ICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAg
ICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAg
ICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAg
ICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwK
KyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAg
ICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xMDgxMSwtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTE3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTM4LC0xNDkwNywtMTQ5MDcsCisgICAg
ICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LCAgLTU3MSwgLTk5ODYsICAgLTU4LCAxMjU0MiwtMTg0OTEsCisg
ICAgICAgICAgICAgMzI1MDcsIDEyODM4LCAgNjY1MywgICAyOTQsICAgIC0xLCAgICAgMCwtMTk5
NjgsIDE4MzY4LCAtNDM1NywKKyAgICAgICAgICAgICAtNTY5NiwgIDI4MDQsIDEyOTk4LC0yMjgw
MiwtMjIwODAsIC03NzAxLCAtNTE4MywgICA0ODYsIC0zMTMzLAorICAgICAgICAgICAgIC01NjYw
LCAtMTA4MywgMTM3OTksLTI4NzI2LC0xMTAyOSwgICAyMDUsLTE0ODQ4LCAzMjQ2NCwgICAgLTEs
CisgICAgICAgICAgICAgIC0xMjksLTEzMDcyLCAgNjM4MCwgLTc5NDgsIDIwNzE3LCAxODQyNSwg
MTczOTIsIDE0MzM1LCAtNTY0NiwKKyAgICAgICAgICAgICAzMDk3MywgLTM1OTgsICA3MTg4LCAt
Mzg2NywgIDMwNTUsIC00MjQ3LCAgNTU5NywgLTQwMTEsLTI2NDI3LAorICAgICAgICAgICAgICAg
LTExLC0zMDQxOCwgIDc5MjIsICAyNjE0LCAgIDIzNywgLTU4MzksLTI3NDEzLC0xNzYyNCwtMjk3
MTYsCisgICAgICAgICAgICAtMTM1MzksICAgMjM5LCAyMDk5MSwgMTgxNjQsIC00MDgyLC0xNjY0
NywtMjczODYsIDE5NDU4LCAyMDIyNCwKKyAgICAgICAgICAgICAgNDYxOSwgMTk3MjgsIC03NDA5
LC0xODE4NiwtMjUwNzMsIDI3NjI3LC0yMzUzOSwgLTc5NDUsLTMxNDY0LAorICAgICAgICAgICAg
IDE0MzMwLC0xMjUyMywtMjIwMjEsIC03NzAxLCAtNTE4MywgICA0ODYsIC0zMTMzLCAtNTY2MCwg
LTEwODMsCisgICAgICAgICAgICAgMTM3OTksLTI4NzI2LC0xMTAyOSwgICAyMDUsLTE0ODQ4LCAz
MjQ2NCwgICAgLTEsICAtMTI5LC0xMzA3MiwKKyAgICAgICAgICAgICAgNjM4MCwgLTc5NDgsIDIw
NzE3LCAxODQyNSwgMTczOTIsIDE0MDkzLCAtNTY0NiwgMzA5NzMsIC0zNTk4LAorICAgICAgICAg
ICAgICA3MTg4LCAtMzg2NywgIDMwNTUsICAzNjg5LCAtNTQwMSwgIDQ5MDYsIC02MDUxLCAgNDI1
MCwgLTYyNzIsCisgICAgICAgICAgICAgIDM0OTIsIC02MzQzLCAgMzE5NywgLTYzOTcsICA0MDQx
LCAtNjM0MSwgIDYyNTUsIC02MzgxLCAgIDIzOSwKKyAgICAgICAgICAgICAyMDk5MSwgMTgxNjQs
IC00MDgyLC0xNjY0NywtMjczODYsIDE5NDU4LCAyMDIyNCwgIDQ2MTksIDE5NzI4LAorICAgICAg
ICAgICAgIC03NDA5LC0xODE4NiwtMjUwNzMsIDI3NjI3LC0yMzUzOSwgLTc5NDUsLTMxNDY0LCAx
NDMzMCwtMTI1MjMsCisgICAgICAgICAgICAgMTQ4NDMsIC02MTMwLCAzMDIwMiwgIC0yNTAsLTI4
NDIwLCAxMDQ2NywgMTY5MDcsIC0zMzU5LCAtNjY0NCwKKyAgICAgICAgICAgICAzMTk2NSwgIDMz
NDMsLTExNzI3LCAgMjk2NiwtMTI2MTYsICAzMDY0LC0xMzQ3MiwgIDY3MzIsLTEyMzQ5LAorICAg
ICAgICAgICAgICA1NTQxLC0xMTk2NSwgIDU1MzAsLTEwODIwLCAtMTkxMiwgLTM2MzcsIDMyMjg1
LCAtNDYwNywgICAzMTAsCisgICAgICAgICAgICAtMzI3NjgsICAgICAwLCAtNTI1OCwgIDIxMDYs
IC02ODU3LCAgMjY4MSwgLTU0NDksIC0zNjA2LCAtNjcxNywKKyAgICAgICAgICAgICAtNTQ4Miwg
LTM2MDYsIC0xODUzLCAgNDA4MiwgLTc2MzEsIC05ODA4LCAtMTc0MiwgLTI4NTEsIC01MTEyLAor
ICAgICAgICAgICAgICAgIDY0LCAgLTg2OCwtMTM1NDYsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEz
MzY1LC0xMzM2NSwtMTMzNjUsCisgICAgICAgICAgICAtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMz
NjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwKKyAgICAgICAgICAgIC0xMzM2
NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1
LAorICAgICAgICAgICAgLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUs
LTEzMzY1LC0xMzM2NSwtMTMzNjUsCisgICAgICAgICAgICAtMTMzNjUsLTEzMzY1LC0xMzM2NSwt
MTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsICA3ODgzLCAtMjMxNiwKKyAgICAgICAgICAgICAg
OTA4NiwgLTM5NDQsIDEwNTAwLCAgNDI4NSwgMTA0NTksIC02NDc0LCAxMDIwNCwgLTY1MzksIDEx
NjAxLAorICAgICAgICAgICAgIC02ODI0LCAxMzM4NSwgLTcxNDIsIDEzODcyLCAtNzQ1NywgMTM2
NzAsIC03NzI1LCAxMzQ2MywgLTY4ODcsCisgICAgICAgICAgICAgMTI0ODIsIC01NTgwLCAxMjYw
MCwgLTQ5NjQsIDEyNDgwLCAgMzI1NCwgMTE3NDEsIC00MjEwLC0yNDgxOSwKKyAgICAgICAgICAg
ICAyMzI4MiwgMjI3OTgsICAgNDkxLCAtMTc3NCwgLTEwNzMsICAzNjQxLCAtMTMwNCwgMjg5Mjgs
ICAtMjUwLAorICAgICAgICAgICAgLTI3Mzk2LCAgNjY1NywgLTg5NjEsIDIyNTI0LCAxOTk4Nywg
MTAyMzEsICAxNzkxLCAgODk0NywtMzI3NjMsCisgICAgICAgICAgICAtMjYzODUsLTMxMjI3LCAg
LTc5MiwtMzA0NjEsICA4OTI2LCAgNDg2NiwgMjc4NjMsIDI3NzU2LCAyNzc1NiwKKyAgICAgICAg
ICAgICAyNzc1NiwgMjc3NTYsIDI3NzU2LCAyNzc1NiwgMjc3NTYsIDI3NzU2LCAgNTYzMCwtMTEw
NzAsLTE2MTM2LAorICAgICAgICAgICAgIDIwNjcxLC0xMTUzMCwgMjczMjgsICA4MTc5LCAgNTA1
OSwtMzE1MDMsLTI0Mzc5LC0xOTQ3MiwgMTc4NjMsCisgICAgICAgICAgICAtMjkyMDIsIDIyOTg2
LCAgIC0yMywgIDg5MDksICA4NDIyLCAxMDQ1MAorICAgICAgICB9OworICAgICAgICBlcnIgPSBv
cHVzX211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBjbSwgMTQ0MCwgZGF0YSwgNzM4MCk7CisgICAg
ICAgIC8qIHJlYWRzIHVuaW5pdGlhbGl6ZWQgZGF0YSBhdCBzcmMvb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyLmM6MjkzICovCisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICB9CisgICAgb3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2Rlc3Ryb3koZW5jKTsKKyAgICByZXR1cm4gMDsKK30KKwor
c3RhdGljIGludCBlY19lbmNfc2hyaW5rX2Fzc2VydCh2b2lkKQoreworICAgIE9wdXNFbmNvZGVy
ICplbmM7CisgICAgaW50IGVycjsKKyAgICBpbnQgZGF0YV9sZW47CisgICAgdW5zaWduZWQgY2hh
ciBkYXRhWzIwMDBdOworICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY20xWzk2MF0gPSB7IDUxNDAg
fTsKKyAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtMlsyODgwXSA9CisgICAgeworICAgICAgICAg
IC0yNTYsLTEyMDMzLCAgICAgMCwgLTI4MTcsICA2OTEyLCAgICAgMCwgLTUzNTksICA1MjAwLCAg
MzA2MSwKKyAgICAgICAgICAgICAwLCAtMjkwMywgIDU2NTIsIC0xMjgxLC0yNDY1NiwtMTQ0MzMs
LTI0Njc4LCAgICAzMiwtMjk3OTMsCisgICAgICAgICAgMjg3MCwgICAgIDAsICA0MDk2LCAgNTEy
MCwgIDUxNDAsICAtMjM0LC0yMDIzMCwtMjQ2NzMsLTI0NjMzLAorICAgICAgICAtMjQ2NzMsLTI0
NzA1LCAgICAgMCwtMzI3NjgsLTI1NDQ0LC0yNTQ0NCwgICAgIDAsLTI1NDQ0LC0yNTQ0NCwKKyAg
ICAgICAgICAgMTU2LC0yMDQ4MCwgLTc5NDgsIC01OTIwLCAtNzk2OCwgLTc5NjgsICAgMjI0LCAg
ICAgMCwgMjA0ODAsCisgICAgICAgICAgICAxMSwgMjA0OTYsICAgIDEzLCAyMDQ5NiwgICAgMTEs
LTIwNDgwLCAgMjI5MiwtMjAyNDAsICAgMjQ0LAorICAgICAgICAgMjA0ODAsICAgIDExLCAyMDQ5
NiwgICAgMTEsLTIwNDgwLCAgIDI0NCwtMjAyNDAsICA3MTU2LCAyMDQ1NiwKKyAgICAgICAgICAt
MjQ2LC0yMDI0MywgICAyNDQsICAgMTI4LCAgIDI0NCwgMjA0ODAsICAgIDExLCAyMDQ5NiwgICAg
MTEsCisgICAgICAgIC0yMDQ4MCwgICAyNDQsLTIwMjU2LCAgIDI0NCwgMjA0ODAsICAgMjU2LCAg
ICAgMCwgIC0yNDYsIDE2NjA5LAorICAgICAgICAgIC0xNzYsICAgICAwLCAyOTg3MiwgLTQwOTYs
IC0yODg4LCAgIDUxNiwgIDI4OTYsICA0MDk2LCAgMjg5NiwKKyAgICAgICAgLTIwNDgwLCAtMzg1
MiwgLTI4OTYsIC0xMDI1LC0zMTA1NiwtMTQ0MzMsICAgMjQ0LCAgMTc5MiwgIC0yNTYsCisgICAg
ICAgIC0xMjAzMywgICAgIDAsIC0yODE3LCAgICAgMCwgICAgIDAsIC01MzU5LCAgNTIwMCwgIDMw
NjEsICAgIDE2LAorICAgICAgICAgLTI5MDMsICA1NjUyLCAtMTI4MSwtMjQ2NTYsLTE0NDMzLC0y
NDY3OCwgICAgMzIsLTI5NzkzLCAgMjg3MCwKKyAgICAgICAgICAgICAwLCAgNDA5NiwgIDUxMjAs
ICA1MTQwLCAgLTIzNCwtMjAyMzAsLTI0NjczLC0yNDYzMywtMjQ2NzMsCisgICAgICAgIC0yNDcw
NSwgICAgIDAsLTMyNzY4LC0yNTQ0NCwtMjU0NDQsICAgICAwLC0yNTQ0NCwtMjU0NDQsICAgMTU2
LAorICAgICAgICAtMjA0ODAsIC03OTczLCAtNTkyMCwgLTc5NjgsIC03OTY4LCAgIDIyNCwgICAg
IDAsIDIwNDgwLCAgICAxMSwKKyAgICAgICAgIDIwNDk2LCAgICAxMSwgMjA0OTYsICAgIDExLC0y
MDQ4MCwgIDIyOTIsLTIwMjEzLCAgIDI0NCwgMjA0ODAsCisgICAgICAgICAgICAxMSwgMjA0OTYs
ICAgIDExLC0yNDY5OCwgLTI4NzMsICAgICAwLCAgICAgNywgICAgLTEsICAgMjA4LAorICAgICAg
ICAgIC0yNTYsICAgMjQ0LCAgICAgMCwgIDQzNTIsIDIwNzE1LCAtMjc5NiwgICAgMTEsLTIyMjcy
LCAgNTM2NCwKKyAgICAgICAgICAtMjM0LC0yMDIzMCwtMjQ2NzMsLTI1OTEzLCAgODM1MSwtMjQ4
MzIsIDEzOTYzLCAgICAxMSwgICAgIDAsCisgICAgICAgICAgICAxNiwgIDUxNDAsICA1NjUyLCAt
MTI4MSwtMjQ2NTYsLTE0NDMzLC0yNDY3MywgMzI2NzEsICAgMTU5LAorICAgICAgICAgICAgIDAs
LTI1NDcyLC0yNTQ0NCwgICAxNTYsLTI1NjAwLC0yNTQ0NCwtMjU0NDQsICAgICAwLCAtMjg5NiwK
KyAgICAgICAgIC03OTY4LCAtNzk2MCwgLTc5NjgsIC03OTY4LCAgICAgMCwgICAgIDAsICAyODk2
LCAgNDA5NiwgIDI4OTYsCisgICAgICAgICAgNDA5NiwgIDI4OTYsICAgICAwLCAtMjg5NiwgLTQw
ODgsIC0yODk2LCAgICAgMCwgIDI4OTYsICAgICAwLAorICAgICAgICAgLTI4OTYsIC00MDk2LCAt
Mjg5NiwgICAgMTEsICAyNjQwLCAtNDYwOSwgLTI4OTYsLTMyNzY4LCAtMzA3MiwKKyAgICAgICAg
ICAgICAwLCAgMjg5NiwgIDQwOTYsICAyODk2LCAgICAgMCwgLTI4OTYsIC00MDk2LCAtMjg5Niwg
ICAgIDAsCisgICAgICAgICAgICA4MCwgICAgIDEsICAyODE2LCAgICAgMCwgMjA2NTYsICAgMjU1
LC0yMDQ4MCwgICAxMTYsLTE4MTkyCisgICAgfTsKKyAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNt
M1syODgwXSA9IHsgMCB9OworCisgICAgZW5jID0gb3B1c19lbmNvZGVyX2NyZWF0ZSg0ODAwMCwg
MSwgT1BVU19BUFBMSUNBVElPTl9BVURJTywgJmVycik7CisgICAgb3B1c19lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMTApKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfUEFDS0VUX0xPU1NfUEVSQyg2KSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMs
IE9QVVNfU0VUX0JJVFJBVEUoNjAwMCkpOworICAgIGRhdGFfbGVuID0gb3B1c19lbmNvZGUoZW5j
LCBwY20xLCA5NjAsIGRhdGEsIDIwMDApOworICAgIGFzc2VydChkYXRhX2xlbiA+IDApOworCisg
ICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9WT0lD
RSkpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FC
TEVEKDEpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9Q
VVNfQkFORFdJRFRIX1NVUEVSV0lERUJBTkQpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfSU5CQU5EX0ZFQygxKSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX0JJVFJBVEUoMTU2MDApKTsKKyAgICBkYXRhX2xlbiA9IG9wdXNfZW5jb2RlKGVuYywgcGNt
MiwgMjg4MCwgZGF0YSwgMTIyKTsKKyAgICBhc3NlcnQoZGF0YV9sZW4gPiAwKTsKKworICAgIG9w
dXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfTVVTSUMpKTsK
KyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURSgyNzAwMCkpOworICAg
IGRhdGFfbGVuID0gb3B1c19lbmNvZGUoZW5jLCBwY20zLCAyODgwLCBkYXRhLCAxMjIpOyAvKiBh
c3NlcnRpb24gZmFpbHVyZSAqLworICAgIGFzc2VydChkYXRhX2xlbiA+IDApOworCisgICAgb3B1
c19lbmNvZGVyX2Rlc3Ryb3koZW5jKTsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludCBl
Y19lbmNfc2hyaW5rX2Fzc2VydDIodm9pZCkKK3sKKyAgICBPcHVzRW5jb2RlciAqZW5jOworICAg
IGludCBlcnI7CisgICAgaW50IGRhdGFfbGVuOworICAgIHVuc2lnbmVkIGNoYXIgZGF0YVsyMDAw
XTsKKworICAgIGVuYyA9IG9wdXNfZW5jb2Rlcl9jcmVhdGUoNDgwMDAsIDEsIE9QVVNfQVBQTElD
QVRJT05fQVVESU8sICZlcnIpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9D
T01QTEVYSVRZKDYpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFM
KE9QVVNfU0lHTkFMX1ZPSUNFKSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VU
X0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9GVUxMQkFORCkpOworICAgIG9wdXNfZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDI2KSk7CisgICAgb3B1c19lbmNvZGVy
X2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMjcwMDApKTsKKyAgICB7CisgICAgICAgIHN0YXRp
YyBjb25zdCBzaG9ydCBwY21bOTYwXSA9IHsgMCB9OworICAgICAgICBkYXRhX2xlbiA9IG9wdXNf
ZW5jb2RlKGVuYywgcGNtLCA5NjAsIGRhdGEsIDIwMDApOworICAgICAgICBhc3NlcnQoZGF0YV9s
ZW4gPiAwKTsKKyAgICB9CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05B
TChPUFVTX1NJR05BTF9NVVNJQykpOworICAgIHsKKyAgICAgICAgc3RhdGljIGNvbnN0IHNob3J0
IHBjbVs0ODBdID0KKyAgICAgICAgeworICAgICAgICAgICAgMzI3NjcsIDMyNzY3LCAwLCAwLCAz
Mjc2NywgMzI3NjcsIDAsIDAsIDMyNzY3LCAzMjc2NywKKyAgICAgICAgICAgIC0zMjc2OCwgLTMy
NzY4LCAwLCAwLCAtMzI3NjgsIC0zMjc2OCwgMCwgMCwgLTMyNzY4LCAtMzI3NjgKKyAgICAgICAg
fTsKKyAgICAgICAgZGF0YV9sZW4gPSBvcHVzX2VuY29kZShlbmMsIHBjbSwgNDgwLCBkYXRhLCAx
OSk7CisgICAgICAgIGFzc2VydChkYXRhX2xlbiA+IDApOworICAgIH0KKyAgICBvcHVzX2VuY29k
ZXJfZGVzdHJveShlbmMpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50IHNpbGtfZ2Fp
bl9hc3NlcnQodm9pZCkKK3sKKyAgICBPcHVzRW5jb2RlciAqZW5jOworICAgIGludCBlcnI7Cisg
ICAgaW50IGRhdGFfbGVuOworICAgIHVuc2lnbmVkIGNoYXIgZGF0YVsxMDAwXTsKKyAgICBzdGF0
aWMgY29uc3Qgc2hvcnQgcGNtMVsxNjBdID0geyAwIH07CisgICAgc3RhdGljIGNvbnN0IHNob3J0
IHBjbTJbOTYwXSA9CisgICAgeworICAgICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAorICAgICAgICAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAorICAgICAgICAwLCAw
LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAor
ICAgICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLAorICAgICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwLCAwLAorICAgICAgICAzMjc2NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwg
MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwKKyAgICAgICAgMCwgMCwgMCwgMCwgMzI3NjcKKyAg
ICB9OworCisgICAgZW5jID0gb3B1c19lbmNvZGVyX2NyZWF0ZSg4MDAwLCAxLCBPUFVTX0FQUExJ
Q0FUSU9OX0FVRElPLCAmZXJyKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
Q09NUExFWElUWSgzKSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9C
QU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORCkpOworICAgIG9wdXNfZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDYwMDApKTsKKyAgICBkYXRhX2xlbiA9IG9wdXNfZW5j
b2RlKGVuYywgcGNtMSwgMTYwLCBkYXRhLCAxMDAwKTsKKyAgICBhc3NlcnQoZGF0YV9sZW4gPiAw
KTsKKworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkpOworICAgIG9w
dXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDApKTsKKyAgICBvcHVzX2Vu
Y29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9NRURJ
VU1CQU5EKSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMjg2
NykpOworICAgIGRhdGFfbGVuID0gb3B1c19lbmNvZGUoZW5jLCBwY20yLCA5NjAsIGRhdGEsIDEw
MDApOworICAgIGFzc2VydChkYXRhX2xlbiA+IDApOworCisgICAgb3B1c19lbmNvZGVyX2Rlc3Ry
b3koZW5jKTsKKyAgICByZXR1cm4gMDsKK30KKwordm9pZCByZWdyZXNzaW9uX3Rlc3Qodm9pZCkK
K3sKKyAgIGZwcmludGYoc3RkZXJyLCAiUnVubmluZyBzaW1wbGUgdGVzdHMgZm9yIGJ1Z3MgdGhh
dCBoYXZlIGJlZW4gZml4ZWQgcHJldmlvdXNseVxuIik7CisgICBjZWx0X2VjX2ludGVybmFsX2Vy
cm9yKCk7CisgICBtc2Nicl9lbmNvZGVfZmFpbDEwKCk7CisgICBtc2Nicl9lbmNvZGVfZmFpbCgp
OworICAgc3Vycm91bmRfYW5hbHlzaXNfdW5pbml0KCk7CisgICBlY19lbmNfc2hyaW5rX2Fzc2Vy
dCgpOworICAgZWNfZW5jX3Nocmlua19hc3NlcnQyKCk7CisgICBzaWxrX2dhaW5fYXNzZXJ0KCk7
Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3Rlc3RzL3J1bl92ZWN0b3JzLnNoIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9ydW5fdmVjdG9ycy5z
aAppbmRleCAxZDQ0N2M0M2Y1OTY3NzA2YmQzMDllYmJmMjIwMzhhMWYzYTExZjI1Li5kY2I3NmNm
MTg3OWVmMDgwMWQ1YTVjMzNmYzY3NmVkNzliZjQxZTg3IDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3J1bl92
ZWN0b3JzLnNoCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvdGVzdHMvcnVuX3ZlY3RvcnMuc2gKQEAgLTMzLDggKzMzLDggQEAKICMg
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUwogIyAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAKLXJtIGxvZ3NfbW9uby50eHQKLXJtIGxvZ3Nfc3RlcmVvLnR4
dAorcm0gLWYgbG9nc19tb25vLnR4dCBsb2dzX21vbm8yLnR4dAorcm0gLWYgbG9nc19zdGVyZW8u
dHh0IGxvZ3Nfc3RlcmVvMi50eHQKIAogaWYgWyAiJCMiIC1uZSAiMyIgXTsgdGhlbgogICAgIGVj
aG8gInVzYWdlOiBydW5fdmVjdG9ycy5zaCA8ZXhlYyBwYXRoPiA8dmVjdG9yIHBhdGg+IDxyYXRl
PiIKQEAgLTQ4LDUxICs0OCw1MyBAQCBSQVRFPSQzCiA6ICR7T1BVU19ERU1POj0kQ01EX1BBVEgv
b3B1c19kZW1vfQogOiAke09QVVNfQ09NUEFSRTo9JENNRF9QQVRIL29wdXNfY29tcGFyZX0KIAot
aWYgWyAtZCAkVkVDVE9SX1BBVEggXTsgdGhlbgotICAgIGVjaG8gVGVzdCB2ZWN0b3JzIGZvdW5k
IGluICRWRUNUT1JfUEFUSAoraWYgWyAtZCAiJFZFQ1RPUl9QQVRIIiBdOyB0aGVuCisgICAgZWNo
byAiVGVzdCB2ZWN0b3JzIGZvdW5kIGluICRWRUNUT1JfUEFUSCIKIGVsc2UKLSAgICBlY2hvIE5v
IHRlc3QgdmVjdG9ycyBmb3VuZAorICAgIGVjaG8gIk5vIHRlc3QgdmVjdG9ycyBmb3VuZCIKICAg
ICAjRG9uJ3QgbWFrZSB0aGUgdGVzdCBmYWlsIGhlcmUgYmVjYXVzZSB0aGUgdGVzdCB2ZWN0b3Jz
CiAgICAgI3dpbGwgYmUgZGlzdHJpYnV0ZWQgc2VwYXJhdGVseQogICAgIGV4aXQgMAogZmkKIAot
aWYgWyAhIC14ICRPUFVTX0NPTVBBUkUgXTsgdGhlbgotICAgIGVjaG8gRVJST1I6IENvbXBhcmUg
cHJvZ3JhbSBub3QgZm91bmQ6ICRPUFVTX0NPTVBBUkUKK2lmIFsgISAteCAiJE9QVVNfQ09NUEFS
RSIgXTsgdGhlbgorICAgIGVjaG8gIkVSUk9SOiBDb21wYXJlIHByb2dyYW0gbm90IGZvdW5kOiAk
T1BVU19DT01QQVJFIgogICAgIGV4aXQgMQogZmkKIAotaWYgWyAteCAkT1BVU19ERU1PIF07IHRo
ZW4KLSAgICBlY2hvIERlY29kaW5nIHdpdGggJE9QVVNfREVNTworaWYgWyAteCAiJE9QVVNfREVN
TyIgXTsgdGhlbgorICAgIGVjaG8gIkRlY29kaW5nIHdpdGggJE9QVVNfREVNTyIKIGVsc2UKLSAg
ICBlY2hvIEVSUk9SOiBEZWNvZGVyIG5vdCBmb3VuZDogJE9QVVNfREVNTworICAgIGVjaG8gIkVS
Uk9SOiBEZWNvZGVyIG5vdCBmb3VuZDogJE9QVVNfREVNTyIKICAgICBleGl0IDEKIGZpCiAKIGVj
aG8gIj09PT09PT09PT09PT09IgotZWNobyBUZXN0aW5nIG1vbm8KK2VjaG8gIlRlc3RpbmcgbW9u
byIKIGVjaG8gIj09PT09PT09PT09PT09IgogZWNobwogCiBmb3IgZmlsZSBpbiAwMSAwMiAwMyAw
NCAwNSAwNiAwNyAwOCAwOSAxMCAxMSAxMgogZG8KLSAgICBpZiBbIC1lICRWRUNUT1JfUEFUSC90
ZXN0dmVjdG9yJGZpbGUuYml0IF07IHRoZW4KLSAgICAgICAgZWNobyBUZXN0aW5nIHRlc3R2ZWN0
b3IkZmlsZQorICAgIGlmIFsgLWUgIiRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuYml0IiBd
OyB0aGVuCisgICAgICAgIGVjaG8gIlRlc3RpbmcgdGVzdHZlY3RvciRmaWxlIgogICAgIGVsc2UK
LSAgICAgICAgZWNobyBCaXRzdHJlYW0gZmlsZSBub3QgZm91bmQ6IHRlc3R2ZWN0b3IkZmlsZS5i
aXQKKyAgICAgICAgZWNobyAiQml0c3RyZWFtIGZpbGUgbm90IGZvdW5kOiB0ZXN0dmVjdG9yJGZp
bGUuYml0IgogICAgIGZpCi0gICAgaWYgJE9QVVNfREVNTyAtZCAkUkFURSAxICRWRUNUT1JfUEFU
SC90ZXN0dmVjdG9yJGZpbGUuYml0IHRtcC5vdXQgPj4gbG9nc19tb25vLnR4dCAyPiYxOyB0aGVu
Ci0gICAgICAgIGVjaG8gc3VjY2Vzc2Z1bGx5IGRlY29kZWQKKyAgICBpZiAiJE9QVVNfREVNTyIg
LWQgIiRSQVRFIiAxICIkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciRmaWxlLmJpdCIgdG1wLm91dCA+
PiBsb2dzX21vbm8udHh0IDI+JjE7IHRoZW4KKyAgICAgICAgZWNobyAic3VjY2Vzc2Z1bGx5IGRl
Y29kZWQiCiAgICAgZWxzZQotICAgICAgICBlY2hvIEVSUk9SOiBkZWNvZGluZyBmYWlsZWQKKyAg
ICAgICAgZWNobyAiRVJST1I6IGRlY29kaW5nIGZhaWxlZCIKICAgICAgICAgZXhpdCAxCiAgICAg
ZmkKLSAgICAkT1BVU19DT01QQVJFIC1yICRSQVRFICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZp
bGUuZGVjIHRtcC5vdXQgPj4gbG9nc19tb25vLnR4dCAyPiYxCisgICAgIiRPUFVTX0NPTVBBUkUi
IC1yICIkUkFURSIgIiRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJHtmaWxlfS5kZWMiIHRtcC5vdXQg
Pj4gbG9nc19tb25vLnR4dCAyPiYxCiAgICAgZmxvYXRfcmV0PSQ/Ci0gICAgaWYgWyAiJGZsb2F0
X3JldCIgLWVxICIwIiBdOyB0aGVuCi0gICAgICAgIGVjaG8gb3V0cHV0IG1hdGNoZXMgcmVmZXJl
bmNlCisgICAgIiRPUFVTX0NPTVBBUkUiIC1yICIkUkFURSIgIiRWRUNUT1JfUEFUSC90ZXN0dmVj
dG9yJHtmaWxlfW0uZGVjIiB0bXAub3V0ID4+IGxvZ3NfbW9ubzIudHh0IDI+JjEKKyAgICBmbG9h
dF9yZXQyPSQ/CisgICAgaWYgWyAiJGZsb2F0X3JldCIgLWVxICIwIiBdIHx8IFsgIiRmbG9hdF9y
ZXQyIiAtZXEgIjAiIF07IHRoZW4KKyAgICAgICAgZWNobyAib3V0cHV0IG1hdGNoZXMgcmVmZXJl
bmNlIgogICAgIGVsc2UKLSAgICAgICAgZWNobyBFUlJPUjogb3V0cHV0IGRvZXMgbm90IG1hdGNo
IHJlZmVyZW5jZQorICAgICAgICBlY2hvICJFUlJPUjogb3V0cHV0IGRvZXMgbm90IG1hdGNoIHJl
ZmVyZW5jZSIKICAgICAgICAgZXhpdCAxCiAgICAgZmkKICAgICBlY2hvCkBAIC0xMDUsMjMgKzEw
NywyNSBAQCBlY2hvCiAKIGZvciBmaWxlIGluIDAxIDAyIDAzIDA0IDA1IDA2IDA3IDA4IDA5IDEw
IDExIDEyCiBkbwotICAgIGlmIFsgLWUgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3IkZmlsZS5iaXQg
XTsgdGhlbgotICAgICAgICBlY2hvIFRlc3RpbmcgdGVzdHZlY3RvciRmaWxlCisgICAgaWYgWyAt
ZSAiJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3IkZmlsZS5iaXQiIF07IHRoZW4KKyAgICAgICAgZWNo
byAiVGVzdGluZyB0ZXN0dmVjdG9yJGZpbGUiCiAgICAgZWxzZQotICAgICAgICBlY2hvIEJpdHN0
cmVhbSBmaWxlIG5vdCBmb3VuZDogdGVzdHZlY3RvciRmaWxlCisgICAgICAgIGVjaG8gIkJpdHN0
cmVhbSBmaWxlIG5vdCBmb3VuZDogdGVzdHZlY3RvciRmaWxlIgogICAgIGZpCi0gICAgaWYgJE9Q
VVNfREVNTyAtZCAkUkFURSAyICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuYml0IHRtcC5v
dXQgPj4gbG9nc19zdGVyZW8udHh0IDI+JjE7IHRoZW4KLSAgICAgICAgZWNobyBzdWNjZXNzZnVs
bHkgZGVjb2RlZAorICAgIGlmICIkT1BVU19ERU1PIiAtZCAiJFJBVEUiIDIgIiRWRUNUT1JfUEFU
SC90ZXN0dmVjdG9yJGZpbGUuYml0IiB0bXAub3V0ID4+IGxvZ3Nfc3RlcmVvLnR4dCAyPiYxOyB0
aGVuCisgICAgICAgIGVjaG8gInN1Y2Nlc3NmdWxseSBkZWNvZGVkIgogICAgIGVsc2UKLSAgICAg
ICAgZWNobyBFUlJPUjogZGVjb2RpbmcgZmFpbGVkCisgICAgICAgIGVjaG8gIkVSUk9SOiBkZWNv
ZGluZyBmYWlsZWQiCiAgICAgICAgIGV4aXQgMQogICAgIGZpCi0gICAgJE9QVVNfQ09NUEFSRSAt
cyAtciAkUkFURSAkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciRmaWxlLmRlYyB0bXAub3V0ID4+IGxv
Z3Nfc3RlcmVvLnR4dCAyPiYxCisgICAgIiRPUFVTX0NPTVBBUkUiIC1zIC1yICIkUkFURSIgIiRW
RUNUT1JfUEFUSC90ZXN0dmVjdG9yJHtmaWxlfS5kZWMiIHRtcC5vdXQgPj4gbG9nc19zdGVyZW8u
dHh0IDI+JjEKICAgICBmbG9hdF9yZXQ9JD8KLSAgICBpZiBbICIkZmxvYXRfcmV0IiAtZXEgIjAi
IF07IHRoZW4KLSAgICAgICAgZWNobyBvdXRwdXQgbWF0Y2hlcyByZWZlcmVuY2UKKyAgICAiJE9Q
VVNfQ09NUEFSRSIgLXMgLXIgIiRSQVRFIiAiJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3Ike2ZpbGV9
bS5kZWMiIHRtcC5vdXQgPj4gbG9nc19zdGVyZW8yLnR4dCAyPiYxCisgICAgZmxvYXRfcmV0Mj0k
PworICAgIGlmIFsgIiRmbG9hdF9yZXQiIC1lcSAiMCIgXSB8fCBbICIkZmxvYXRfcmV0MiIgLWVx
ICIwIiBdOyB0aGVuCisgICAgICAgIGVjaG8gIm91dHB1dCBtYXRjaGVzIHJlZmVyZW5jZSIKICAg
ICBlbHNlCi0gICAgICAgIGVjaG8gRVJST1I6IG91dHB1dCBkb2VzIG5vdCBtYXRjaCByZWZlcmVu
Y2UKKyAgICAgICAgZWNobyAiRVJST1I6IG91dHB1dCBkb2VzIG5vdCBtYXRjaCByZWZlcmVuY2Ui
CiAgICAgICAgIGV4aXQgMQogICAgIGZpCiAgICAgZWNobwpAQCAtMTI5LDYgKzEzMywxMSBAQCBk
b25lCiAKIAogCi1lY2hvIEFsbCB0ZXN0cyBoYXZlIHBhc3NlZCBzdWNjZXNzZnVsbHkKLWdyZXAg
cXVhbGl0eSBsb2dzX21vbm8udHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7cHJpbnQgIkF2ZXJhZ2Ug
bW9ubyBxdWFsaXR5IGlzIiwgc3VtL05SLCAiJSJ9JwotZ3JlcCBxdWFsaXR5IGxvZ3Nfc3RlcmVv
LnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee3ByaW50ICJBdmVyYWdlIHN0ZXJlbyBxdWFsaXR5IGlz
Iiwgc3VtL05SLCAiJSJ9JworZWNobyAiQWxsIHRlc3RzIGhhdmUgcGFzc2VkIHN1Y2Nlc3NmdWxs
eSIKK21vbm8xPWBncmVwIHF1YWxpdHkgbG9nc19tb25vLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5E
e2lmIChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNlIHN1bSA9IDA7IHByaW50IHN1bX0nYAorbW9u
bzI9YGdyZXAgcXVhbGl0eSBsb2dzX21vbm8yLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee2lmIChO
UiA9PSAxMikgc3VtIC89IDEyOyBlbHNlIHN1bSA9IDA7IHByaW50IHN1bX0nYAorZWNobyAkbW9u
bzEgJG1vbm8yIHwgYXdrICd7aWYgKCQyID4gJDEpICQxID0gJDI7IHByaW50ICJBdmVyYWdlIG1v
bm8gcXVhbGl0eSBpcyIsICQxLCAiJSJ9JworCitzdGVyZW8xPWBncmVwIHF1YWxpdHkgbG9nc19z
dGVyZW8udHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7aWYgKE5SID09IDEyKSBzdW0gLz0gMTI7IGVs
c2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdgCitzdGVyZW8yPWBncmVwIHF1YWxpdHkgbG9nc19zdGVy
ZW8yLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee2lmIChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNl
IHN1bSA9IDA7IHByaW50IHN1bX0nYAorZWNobyAkc3RlcmVvMSAkc3RlcmVvMiB8IGF3ayAne2lm
ICgkMiA+ICQxKSAkMSA9ICQyOyBwcmludCAiQXZlcmFnZSBzdGVyZW8gcXVhbGl0eSBpcyIsICQx
LCAiJSJ9JwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy90ZXN0X29wdXNfYXBpLmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1
c19hcGkuYwppbmRleCA0ODkwNTJkMjFmYjMwYmI4YjBmZjljMzNjZWZmZjBmMWE1MDBmZWRhLi4x
ZDAwOTUwNThmODBhMTIxM2IwMTU1NjE5ODRjM2JjYzdjZjhlNTQyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3Rz
L3Rlc3Rfb3B1c19hcGkuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19hcGkuYwpAQCAtMTM4Myw2ICsx
MzgzLDE1IEBAIG9wdXNfaW50MzIgdGVzdF9lbmNfYXBpKHZvaWQpCiAgICBlcnI9b3B1c19lbmNv
ZGVyX2N0bChlbmMsT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKE9QVVNfRlJBTUVTSVpF
XzYwX01TKSk7CiAgICBpZihlcnIhPU9QVVNfT0spdGVzdF9mYWlsZWQoKTsKICAgIGNmZ3MrKzsK
KyAgIGVycj1vcHVzX2VuY29kZXJfY3RsKGVuYyxPUFVTX1NFVF9FWFBFUlRfRlJBTUVfRFVSQVRJ
T04oT1BVU19GUkFNRVNJWkVfODBfTVMpKTsKKyAgIGlmKGVyciE9T1BVU19PSyl0ZXN0X2ZhaWxl
ZCgpOworICAgY2ZncysrOworICAgZXJyPW9wdXNfZW5jb2Rlcl9jdGwoZW5jLE9QVVNfU0VUX0VY
UEVSVF9GUkFNRV9EVVJBVElPTihPUFVTX0ZSQU1FU0laRV8xMDBfTVMpKTsKKyAgIGlmKGVyciE9
T1BVU19PSyl0ZXN0X2ZhaWxlZCgpOworICAgY2ZncysrOworICAgZXJyPW9wdXNfZW5jb2Rlcl9j
dGwoZW5jLE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTihPUFVTX0ZSQU1FU0laRV8xMjBf
TVMpKTsKKyAgIGlmKGVyciE9T1BVU19PSyl0ZXN0X2ZhaWxlZCgpOworICAgY2ZncysrOwogICAg
Q0hFQ0tfU0VUR0VUKE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTihpKSxPUFVTX0dFVF9F
WFBFUlRfRlJBTUVfRFVSQVRJT04oJmkpLDAsLTEsCiAgICAgICAgICBPUFVTX0ZSQU1FU0laRV82
MF9NUyxPUFVTX0ZSQU1FU0laRV9BUkcsCiAgICAgICIgICAgT1BVU19TRVRfRVhQRVJUX0ZSQU1F
X0RVUkFUSU9OIC4uLi4uLi4uLi4uLi4uLiBPSy5cbiIsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rf
b3B1c19jb21tb24uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCmluZGV4IDY2Yjk2OTAwMTg5
M2M5ODhjOGNlZGUzYTVlMjliMGYwM2NkMGQ2MmIuLjIzNWNmMWMxMDE2ODkxMTBhMDAxMzViYmNl
MmMzYTJiNTFmZGEwYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
dGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCkBAIC02NCw2ICs2NCw4IEBAIHN0YXRpYyBvcHVzX3Vp
bnQzMiBpc2VlZDsKIAogI2lmZGVmIF9fR05VQ19fCiBfX2F0dHJpYnV0ZV9fKChub3JldHVybikp
CisjZWxpZiBkZWZpbmVkKF9NU0NfVkVSKQorX19kZWNsc3BlYyhub3JldHVybikKICNlbmRpZgog
c3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgX3Rlc3RfZmFpbGVkKGNvbnN0IGNoYXIgKmZpbGUsIGlu
dCBsaW5lKQogewpAQCAtNzYsMyArNzgsNSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBfdGVz
dF9mYWlsZWQoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUpCiAgIGFib3J0KCk7CiB9CiAjZGVm
aW5lIHRlc3RfZmFpbGVkKCkgX3Rlc3RfZmFpbGVkKF9fRklMRV9fLCBfX0xJTkVfXyk7CisKK3Zv
aWQgcmVncmVzc2lvbl90ZXN0KHZvaWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy90ZXN0X29wdXNfZGVj
b2RlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19kZWNvZGUuYwppbmRleCA5YzBlYjljNzI4NThkNWE4ZjRk
YzRkYTZiOWYzMWViMmNhZWJjNDFlLi41MTk3ZmExZGQyY2YxMGI1ZTUwMzdkMmIyMTUzZDZlZjY2
NDQ3N2I3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19kZWNvZGUuYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rl
c3Rfb3B1c19kZWNvZGUuYwpAQCAtMTA0LDcgKzEwNCw3IEBAIGludCB0ZXN0X2RlY29kZXJfY29k
ZTAoaW50IG5vX2Z1enopCiAgICAgICBpbnQgZmFjdG9yPTQ4MDAwL2Zzdlt0Pj4xXTsKICAgICAg
IGZvcihmZWM9MDtmZWM8MjtmZWMrKykKICAgICAgIHsKLSAgICAgICAgIGludCBkdXI7CisgICAg
ICAgICBvcHVzX2ludDMyIGR1cjsKICAgICAgICAgIC8qVGVzdCBQTEMgb24gYSBmcmVzaCBkZWNv
ZGVyKi8KICAgICAgICAgIG91dF9zYW1wbGVzID0gb3B1c19kZWNvZGUoZGVjW3RdLCAwLCAwLCBv
dXRidWYsIDEyMC9mYWN0b3IsIGZlYyk7CiAgICAgICAgICBpZihvdXRfc2FtcGxlcyE9MTIwL2Zh
Y3Rvcil0ZXN0X2ZhaWxlZCgpOwpAQCAtMTM1LDcgKzEzNSwxNCBAQCBpbnQgdGVzdF9kZWNvZGVy
X2NvZGUwKGludCBub19mdXp6KQogICAgICAgICAgb3V0YnVmWzBdPTMyNzQ5OwogICAgICAgICAg
b3V0X3NhbXBsZXMgPSBvcHVzX2RlY29kZShkZWNbdF0sIHBhY2tldCwgMCwgb3V0YnVmLCAwLCBm
ZWMpOwogICAgICAgICAgaWYob3V0X3NhbXBsZXM+MCl0ZXN0X2ZhaWxlZCgpOworI2lmICFkZWZp
bmVkKE9QVVNfQlVJTEQpICYmIChPUFVTX0dOVUNfUFJFUkVRKDQsIDYpIHx8IChkZWZpbmVkKF9f
Y2xhbmdfbWFqb3JfXykgJiYgX19jbGFuZ19tYWpvcl9fID49IDMpKQorI3ByYWdtYSBHQ0MgZGlh
Z25vc3RpYyBwdXNoCisjcHJhZ21hIEdDQyBkaWFnbm9zdGljIGlnbm9yZWQgIi1Xbm9ubnVsbCIK
KyNlbmRpZgogICAgICAgICAgb3V0X3NhbXBsZXMgPSBvcHVzX2RlY29kZShkZWNbdF0sIHBhY2tl
dCwgMCwgMCwgMCwgZmVjKTsKKyNpZiAhZGVmaW5lZChPUFVTX0JVSUxEKSAmJiAoT1BVU19HTlVD
X1BSRVJFUSg0LCA2KSB8fCAoZGVmaW5lZChfX2NsYW5nX21ham9yX18pICYmIF9fY2xhbmdfbWFq
b3JfXyA+PSAzKSkKKyNwcmFnbWEgR0NDIGRpYWdub3N0aWMgcG9wCisjZW5kaWYKICAgICAgICAg
IGlmKG91dF9zYW1wbGVzPjApdGVzdF9mYWlsZWQoKTsKICAgICAgICAgIGlmKG91dGJ1ZlswXSE9
MzI3NDkpdGVzdF9mYWlsZWQoKTsKIApAQCAtMTYwLDcgKzE2Nyw3IEBAIGludCB0ZXN0X2RlY29k
ZXJfY29kZTAoaW50IG5vX2Z1enopCiAgICAvKkNvdW50IGNvZGUgMCB0ZXN0cyovCiAgICBmb3Io
aT0wO2k8NjQ7aSsrKQogICAgewotICAgICAgaW50IGR1cjsKKyAgICAgIG9wdXNfaW50MzIgZHVy
OwogICAgICAgaW50IGosZXhwZWN0ZWRbNSoyXTsKICAgICAgIHBhY2tldFswXT1pPDwyOwogICAg
ICAgcGFja2V0WzFdPTI1NTsKQEAgLTMxNCw3ICszMjEsNyBAQCBpbnQgdGVzdF9kZWNvZGVyX2Nv
ZGUwKGludCBub19mdXp6KQogICAgICAgaWYob3B1c19kZWNvZGUoZGVjYmFrLCAgMCwgMCwgb3V0
YnVmLCBNQVhfRlJBTUVfU0FNUCwgMCk8MjApdGVzdF9mYWlsZWQoKTsKICAgICAgIGZvcih0PTA7
dDw1KjI7dCsrKQogICAgICAgewotICAgICAgICAgaW50IGR1cjsKKyAgICAgICAgIG9wdXNfaW50
MzIgZHVyOwogICAgICAgICAgb3V0X3NhbXBsZXMgPSBvcHVzX2RlY29kZShkZWNbdF0sIHBhY2tl
dCwgcGxlbisxLCBvdXRidWYsIE1BWF9GUkFNRV9TQU1QLCAwKTsKICAgICAgICAgIGlmKG91dF9z
YW1wbGVzIT1leHBlY3RlZFt0XSl0ZXN0X2ZhaWxlZCgpOwogICAgICAgICAgaWYodD09MClkZWNf
ZmluYWxfcmFuZ2UyPWRlY19maW5hbF9yYW5nZTE7CkBAIC0zODQsMjYgKzM5MSwyNiBAQCB2b2lk
IHRlc3Rfc29mdF9jbGlwKHZvaWQpCiAgICB7CiAgICAgICBmb3IgKGo9MDtqPDEwMjQ7aisrKQog
ICAgICAgewotICAgICAgICB4W2pdPShpJjI1NSkqKDEvMzIuZiktNC5mOworICAgICAgICB4W2pd
PShqJjI1NSkqKDEvMzIuZiktNC5mOwogICAgICAgfQogICAgICAgb3B1c19wY21fc29mdF9jbGlw
KCZ4W2ldLDEwMjQtaSwxLHMpOwogICAgICAgZm9yIChqPWk7ajwxMDI0O2orKykKICAgICAgIHsK
LSAgICAgICAgaWYoeFtpXT4xLmYpdGVzdF9mYWlsZWQoKTsKLSAgICAgICAgaWYoeFtpXTwtMS5m
KXRlc3RfZmFpbGVkKCk7CisgICAgICAgIGlmKHhbal0+MS5mKXRlc3RfZmFpbGVkKCk7CisgICAg
ICAgIGlmKHhbal08LTEuZil0ZXN0X2ZhaWxlZCgpOwogICAgICAgfQogICAgfQogICAgZm9yKGk9
MTtpPDk7aSsrKQogICAgewogICAgICAgZm9yIChqPTA7ajwxMDI0O2orKykKICAgICAgIHsKLSAg
ICAgICAgeFtqXT0oaSYyNTUpKigxLzMyLmYpLTQuZjsKKyAgICAgICAgeFtqXT0oaiYyNTUpKigx
LzMyLmYpLTQuZjsKICAgICAgIH0KICAgICAgIG9wdXNfcGNtX3NvZnRfY2xpcCh4LDEwMjQvaSxp
LHMpOwogICAgICAgZm9yIChqPTA7ajwoMTAyNC9pKSppO2orKykKICAgICAgIHsKLSAgICAgICAg
aWYoeFtpXT4xLmYpdGVzdF9mYWlsZWQoKTsKLSAgICAgICAgaWYoeFtpXTwtMS5mKXRlc3RfZmFp
bGVkKCk7CisgICAgICAgIGlmKHhbal0+MS5mKXRlc3RfZmFpbGVkKCk7CisgICAgICAgIGlmKHhb
al08LTEuZil0ZXN0X2ZhaWxlZCgpOwogICAgICAgfQogICAgfQogICAgb3B1c19wY21fc29mdF9j
bGlwKHgsMCwxLHMpOwpAQCAtNDM2LDcgKzQ0Myw3IEBAIGludCBtYWluKGludCBfYXJnYywgY2hh
ciAqKl9hcmd2KQogICAgICAgaXNlZWQ9YXRvaShlbnZfc2VlZCk7CiAgICAgICBlbnZfdXNlZD0x
OwogICAgfQotICAgZWxzZSBpc2VlZD0ob3B1c191aW50MzIpdGltZShOVUxMKV4oKGdldHBpZCgp
JjY1NTM1KTw8MTYpOworICAgZWxzZSBpc2VlZD0ob3B1c191aW50MzIpdGltZShOVUxMKV4oKChv
cHVzX3VpbnQzMilnZXRwaWQoKSY2NTUzNSk8PDE2KTsKICAgIFJ3PVJ6PWlzZWVkOwogCiAgICBv
dmVyc2lvbj1vcHVzX2dldF92ZXJzaW9uX3N0cmluZygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy90ZXN0
X29wdXNfZW5jb2RlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYwppbmRleCAxMzJkMDc0ZDMw
MjU0NTZmOWQyMjk3ZTc5ODhlODVhYzUxNjEwYjg1Li5kYWU0OWMzZDUzNTFiZDU1NmMwM2Q3NGVk
OGFlNjljMjE5NTIwNjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3Rlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYwpAQCAtNTEsOCArNTEsOCBAQAogI2RlZmluZSBTQU1Q
TEVTICg0ODAwMCozMCkKICNkZWZpbmUgU1NBTVBMRVMgKFNBTVBMRVMvMykKICNkZWZpbmUgTUFY
X0ZSQU1FX1NBTVAgKDU3NjApCi0KICNkZWZpbmUgUEkgKDMuMTQxNTkyNjUzNTg5NzkzMjM4NDYy
NjQzZikKKyNkZWZpbmUgUkFORF9TQU1QTEUoYSkgKGFbZmFzdF9yYW5kKCkgJSBzaXplb2YoYSkv
c2l6ZW9mKGFbMF0pXSkKIAogdm9pZCBnZW5lcmF0ZV9tdXNpYyhzaG9ydCAqYnVmLCBvcHVzX2lu
dDMyIGxlbikKIHsKQEAgLTExMiwxNCArMTEyLDE2OSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9p
ZCBzYXZlX3BhY2tldCh1bnNpZ25lZCBjaGFyKiBwLCBpbnQgbGVuLCBvcHVzX3VpbnQzMiBybmcp
CiB9CiAjZW5kaWYKIAoraW50IGdldF9mcmFtZV9zaXplX2VudW0oaW50IGZyYW1lX3NpemUsIGlu
dCBzYW1wbGluZ19yYXRlKQoreworICAgaW50IGZyYW1lX3NpemVfZW51bTsKKworICAgaWYoZnJh
bWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS80MDApCisgICAgICBmcmFtZV9zaXplX2VudW0gPSBPUFVT
X0ZSQU1FU0laRV8yXzVfTVM7CisgICBlbHNlIGlmKGZyYW1lX3NpemU9PXNhbXBsaW5nX3JhdGUv
MjAwKQorICAgICAgZnJhbWVfc2l6ZV9lbnVtID0gT1BVU19GUkFNRVNJWkVfNV9NUzsKKyAgIGVs
c2UgaWYoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS8xMDApCisgICAgICBmcmFtZV9zaXplX2Vu
dW0gPSBPUFVTX0ZSQU1FU0laRV8xMF9NUzsKKyAgIGVsc2UgaWYoZnJhbWVfc2l6ZT09c2FtcGxp
bmdfcmF0ZS81MCkKKyAgICAgIGZyYW1lX3NpemVfZW51bSA9IE9QVVNfRlJBTUVTSVpFXzIwX01T
OworICAgZWxzZSBpZihmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzI1KQorICAgICAgZnJhbWVf
c2l6ZV9lbnVtID0gT1BVU19GUkFNRVNJWkVfNDBfTVM7CisgICBlbHNlIGlmKGZyYW1lX3NpemU9
PTMqc2FtcGxpbmdfcmF0ZS81MCkKKyAgICAgIGZyYW1lX3NpemVfZW51bSA9IE9QVVNfRlJBTUVT
SVpFXzYwX01TOworICAgZWxzZSBpZihmcmFtZV9zaXplPT00KnNhbXBsaW5nX3JhdGUvNTApCisg
ICAgICBmcmFtZV9zaXplX2VudW0gPSBPUFVTX0ZSQU1FU0laRV84MF9NUzsKKyAgIGVsc2UgaWYo
ZnJhbWVfc2l6ZT09NSpzYW1wbGluZ19yYXRlLzUwKQorICAgICAgZnJhbWVfc2l6ZV9lbnVtID0g
T1BVU19GUkFNRVNJWkVfMTAwX01TOworICAgZWxzZSBpZihmcmFtZV9zaXplPT02KnNhbXBsaW5n
X3JhdGUvNTApCisgICAgICBmcmFtZV9zaXplX2VudW0gPSBPUFVTX0ZSQU1FU0laRV8xMjBfTVM7
CisgICBlbHNlCisgICAgICB0ZXN0X2ZhaWxlZCgpOworCisgICByZXR1cm4gZnJhbWVfc2l6ZV9l
bnVtOworfQorCit2b2lkIHRlc3RfZW5jb2RlKE9wdXNFbmNvZGVyICplbmMsIGludCBjaGFubmVs
cywgaW50IGZyYW1lX3NpemUsIE9wdXNEZWNvZGVyICpkZWMsIGNvbnN0IGNoYXIqIGRlYnVnX2lu
Zm8pCit7CisgICBpbnQgc2FtcF9jb3VudCA9IDA7CisgICBvcHVzX2ludDE2ICppbmJ1ZjsKKyAg
IHVuc2lnbmVkIGNoYXIgcGFja2V0W01BWF9QQUNLRVQrMjU3XTsKKyAgIGludCBsZW47CisgICBv
cHVzX2ludDE2ICpvdXRidWY7CisgICBpbnQgb3V0X3NhbXBsZXM7CisKKyAgIC8qIEdlbmVyYXRl
IGlucHV0IGRhdGEgKi8KKyAgIGluYnVmID0gKG9wdXNfaW50MTYqKW1hbGxvYyhzaXplb2YoKmlu
YnVmKSpTU0FNUExFUyk7CisgICBnZW5lcmF0ZV9tdXNpYyhpbmJ1ZiwgU1NBTVBMRVMvMik7CisK
KyAgIC8qIEFsbG9jYXRlIG1lbW9yeSBmb3Igb3V0cHV0IGRhdGEgKi8KKyAgIG91dGJ1ZiA9IChv
cHVzX2ludDE2KiltYWxsb2Moc2l6ZW9mKCpvdXRidWYpKk1BWF9GUkFNRV9TQU1QKjMpOworCisg
ICAvKiBFbmNvZGUgZGF0YSwgdGhlbiBkZWNvZGUgZm9yIHNhbml0eSBjaGVjayAqLworICAgZG8g
eworICAgICAgbGVuID0gb3B1c19lbmNvZGUoZW5jLCAmaW5idWZbc2FtcF9jb3VudCpjaGFubmVs
c10sIGZyYW1lX3NpemUsIHBhY2tldCwgTUFYX1BBQ0tFVCk7CisgICAgICBpZihsZW48MCB8fCBs
ZW4+TUFYX1BBQ0tFVCkgeworICAgICAgICAgZnByaW50ZihzdGRlcnIsIiVzXG4iLGRlYnVnX2lu
Zm8pOworICAgICAgICAgZnByaW50ZihzdGRlcnIsIm9wdXNfZW5jb2RlKCkgcmV0dXJuZWQgJWRc
biIsbGVuKTsKKyAgICAgICAgIHRlc3RfZmFpbGVkKCk7CisgICAgICB9CisKKyAgICAgIG91dF9z
YW1wbGVzID0gb3B1c19kZWNvZGUoZGVjLCBwYWNrZXQsIGxlbiwgb3V0YnVmLCBNQVhfRlJBTUVf
U0FNUCwgMCk7CisgICAgICBpZihvdXRfc2FtcGxlcyE9ZnJhbWVfc2l6ZSkgeworICAgICAgICAg
ZnByaW50ZihzdGRlcnIsIiVzXG4iLGRlYnVnX2luZm8pOworICAgICAgICAgZnByaW50ZihzdGRl
cnIsIm9wdXNfZGVjb2RlKCkgcmV0dXJuZWQgJWRcbiIsb3V0X3NhbXBsZXMpOworICAgICAgICAg
dGVzdF9mYWlsZWQoKTsKKyAgICAgIH0KKworICAgICAgc2FtcF9jb3VudCArPSBmcmFtZV9zaXpl
OworICAgfSB3aGlsZSAoc2FtcF9jb3VudCA8ICgoU1NBTVBMRVMvMiktTUFYX0ZSQU1FX1NBTVAp
KTsKKworICAgLyogQ2xlYW4gdXAgKi8KKyAgIGZyZWUoaW5idWYpOworICAgZnJlZShvdXRidWYp
OworfQorCit2b2lkIGZ1enpfZW5jb2Rlcl9zZXR0aW5ncyhjb25zdCBpbnQgbnVtX2VuY29kZXJz
LCBjb25zdCBpbnQgbnVtX3NldHRpbmdfY2hhbmdlcykKK3sKKyAgIE9wdXNFbmNvZGVyICplbmM7
CisgICBPcHVzRGVjb2RlciAqZGVjOworICAgaW50IGksaixlcnI7CisKKyAgIC8qIFBhcmFtZXRl
cnMgdG8gZnV6ei4gU29tZSB2YWx1ZXMgYXJlIGR1cGxpY2F0ZWQgdG8gaW5jcmVhc2UgdGhlaXIg
cHJvYmFiaWxpdHkgb2YgYmVpbmcgdGVzdGVkLiAqLworICAgaW50IHNhbXBsaW5nX3JhdGVzWzVd
ID0gezgwMDAsIDEyMDAwLCAxNjAwMCwgMjQwMDAsIDQ4MDAwfTsKKyAgIGludCBjaGFubmVsc1sy
XSA9IHsxLCAyfTsKKyAgIGludCBhcHBsaWNhdGlvbnNbM10gPSB7T1BVU19BUFBMSUNBVElPTl9B
VURJTywgT1BVU19BUFBMSUNBVElPTl9WT0lQLCBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURf
TE9XREVMQVl9OworICAgaW50IGJpdHJhdGVzWzExXSA9IHs2MDAwLCAxMjAwMCwgMTYwMDAsIDI0
MDAwLCAzMjAwMCwgNDgwMDAsIDY0MDAwLCA5NjAwMCwgNTEwMDAwLCBPUFVTX0FVVE8sIE9QVVNf
QklUUkFURV9NQVh9OworICAgaW50IGZvcmNlX2NoYW5uZWxzWzRdID0ge09QVVNfQVVUTywgT1BV
U19BVVRPLCAxLCAyfTsKKyAgIGludCB1c2VfdmJyWzNdID0gezAsIDEsIDF9OworICAgaW50IHZi
cl9jb25zdHJhaW50c1szXSA9IHswLCAxLCAxfTsKKyAgIGludCBjb21wbGV4aXRpZXNbMTFdID0g
ezAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwfTsKKyAgIGludCBtYXhfYmFuZHdpZHRo
c1s2XSA9IHtPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5ELCBPUFVTX0JBTkRXSURUSF9NRURJVU1C
QU5ELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9QVVNfQkFORFdJRFRIX1dJREVCQU5E
LCBPUFVTX0JBTkRXSURUSF9TVVBFUldJREVCQU5ELAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIE9QVVNfQkFORFdJRFRIX0ZVTExCQU5ELCBPUFVTX0JBTkRXSURUSF9GVUxMQkFORH07Cisg
ICBpbnQgc2lnbmFsc1s0XSA9IHtPUFVTX0FVVE8sIE9QVVNfQVVUTywgT1BVU19TSUdOQUxfVk9J
Q0UsIE9QVVNfU0lHTkFMX01VU0lDfTsKKyAgIGludCBpbmJhbmRfZmVjc1szXSA9IHswLCAwLCAx
fTsKKyAgIGludCBwYWNrZXRfbG9zc19wZXJjWzRdID0gezAsIDEsIDIsIDV9OworICAgaW50IGxz
Yl9kZXB0aHNbMl0gPSB7OCwgMjR9OworICAgaW50IHByZWRpY3Rpb25fZGlzYWJsZWRbM10gPSB7
MCwgMCwgMX07CisgICBpbnQgdXNlX2R0eFsyXSA9IHswLCAxfTsKKyAgIGludCBmcmFtZV9zaXpl
c19tc194Mls5XSA9IHs1LCAxMCwgMjAsIDQwLCA4MCwgMTIwLCAxNjAsIDIwMCwgMjQwfTsgIC8q
IHgyIHRvIGF2b2lkIDIuNSBtcyAqLworICAgY2hhciBkZWJ1Z19pbmZvWzUxMl07CisKKyAgIGZv
ciAoaT0wOyBpPG51bV9lbmNvZGVyczsgaSsrKSB7CisgICAgICBpbnQgc2FtcGxpbmdfcmF0ZSA9
IFJBTkRfU0FNUExFKHNhbXBsaW5nX3JhdGVzKTsKKyAgICAgIGludCBudW1fY2hhbm5lbHMgPSBS
QU5EX1NBTVBMRShjaGFubmVscyk7CisgICAgICBpbnQgYXBwbGljYXRpb24gPSBSQU5EX1NBTVBM
RShhcHBsaWNhdGlvbnMpOworCisgICAgICBkZWMgPSBvcHVzX2RlY29kZXJfY3JlYXRlKHNhbXBs
aW5nX3JhdGUsIG51bV9jaGFubmVscywgJmVycik7CisgICAgICBpZihlcnIhPU9QVVNfT0sgfHwg
ZGVjPT1OVUxMKXRlc3RfZmFpbGVkKCk7CisKKyAgICAgIGVuYyA9IG9wdXNfZW5jb2Rlcl9jcmVh
dGUoc2FtcGxpbmdfcmF0ZSwgbnVtX2NoYW5uZWxzLCBhcHBsaWNhdGlvbiwgJmVycik7CisgICAg
ICBpZihlcnIhPU9QVVNfT0sgfHwgZW5jPT1OVUxMKXRlc3RfZmFpbGVkKCk7CisKKyAgICAgIGZv
ciAoaj0wOyBqPG51bV9zZXR0aW5nX2NoYW5nZXM7IGorKykgeworICAgICAgICAgaW50IGJpdHJh
dGUgPSBSQU5EX1NBTVBMRShiaXRyYXRlcyk7CisgICAgICAgICBpbnQgZm9yY2VfY2hhbm5lbCA9
IFJBTkRfU0FNUExFKGZvcmNlX2NoYW5uZWxzKTsKKyAgICAgICAgIGludCB2YnIgPSBSQU5EX1NB
TVBMRSh1c2VfdmJyKTsKKyAgICAgICAgIGludCB2YnJfY29uc3RyYWludCA9IFJBTkRfU0FNUExF
KHZicl9jb25zdHJhaW50cyk7CisgICAgICAgICBpbnQgY29tcGxleGl0eSA9IFJBTkRfU0FNUExF
KGNvbXBsZXhpdGllcyk7CisgICAgICAgICBpbnQgbWF4X2J3ID0gUkFORF9TQU1QTEUobWF4X2Jh
bmR3aWR0aHMpOworICAgICAgICAgaW50IHNpZyA9IFJBTkRfU0FNUExFKHNpZ25hbHMpOworICAg
ICAgICAgaW50IGluYmFuZF9mZWMgPSBSQU5EX1NBTVBMRShpbmJhbmRfZmVjcyk7CisgICAgICAg
ICBpbnQgcGt0X2xvc3MgPSBSQU5EX1NBTVBMRShwYWNrZXRfbG9zc19wZXJjKTsKKyAgICAgICAg
IGludCBsc2JfZGVwdGggPSBSQU5EX1NBTVBMRShsc2JfZGVwdGhzKTsKKyAgICAgICAgIGludCBw
cmVkX2Rpc2FibGVkID0gUkFORF9TQU1QTEUocHJlZGljdGlvbl9kaXNhYmxlZCk7CisgICAgICAg
ICBpbnQgZHR4ID0gUkFORF9TQU1QTEUodXNlX2R0eCk7CisgICAgICAgICBpbnQgZnJhbWVfc2l6
ZV9tc194MiA9IFJBTkRfU0FNUExFKGZyYW1lX3NpemVzX21zX3gyKTsKKyAgICAgICAgIGludCBm
cmFtZV9zaXplID0gZnJhbWVfc2l6ZV9tc194MipzYW1wbGluZ19yYXRlLzIwMDA7CisgICAgICAg
ICBpbnQgZnJhbWVfc2l6ZV9lbnVtID0gZ2V0X2ZyYW1lX3NpemVfZW51bShmcmFtZV9zaXplLCBz
YW1wbGluZ19yYXRlKTsKKyAgICAgICAgIGZvcmNlX2NoYW5uZWwgPSBJTUlOKGZvcmNlX2NoYW5u
ZWwsIG51bV9jaGFubmVscyk7CisKKyAgICAgICAgIHNwcmludGYoZGVidWdfaW5mbywKKyAgICAg
ICAgICAgICAgICAgImZ1enpfZW5jb2Rlcl9zZXR0aW5nczogJWQga0h6LCAlZCBjaCwgYXBwbGlj
YXRpb246ICVkLCAiCisgICAgICAgICAgICAgICAgICIlZCBicHMsIGZvcmNlIGNoOiAlZCwgdmJy
OiAlZCwgdmJyIGNvbnN0cmFpbnQ6ICVkLCBjb21wbGV4aXR5OiAlZCwgIgorICAgICAgICAgICAg
ICAgICAibWF4IGJ3OiAlZCwgc2lnbmFsOiAlZCwgaW5iYW5kIGZlYzogJWQsIHBrdCBsb3NzOiAl
ZCUlLCBsc2IgZGVwdGg6ICVkLCAiCisgICAgICAgICAgICAgICAgICJwcmVkIGRpc2FibGVkOiAl
ZCwgZHR4OiAlZCwgKCVkLzIpIG1zXG4iLAorICAgICAgICAgICAgICAgICBzYW1wbGluZ19yYXRl
LzEwMDAsIG51bV9jaGFubmVscywgYXBwbGljYXRpb24sIGJpdHJhdGUsCisgICAgICAgICAgICAg
ICAgIGZvcmNlX2NoYW5uZWwsIHZiciwgdmJyX2NvbnN0cmFpbnQsIGNvbXBsZXhpdHksIG1heF9i
dywgc2lnLCBpbmJhbmRfZmVjLAorICAgICAgICAgICAgICAgICBwa3RfbG9zcywgbHNiX2RlcHRo
LCBwcmVkX2Rpc2FibGVkLCBkdHgsIGZyYW1lX3NpemVfbXNfeDIpOworCisgICAgICAgICBpZihv
cHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURShiaXRyYXRlKSkgIT0gT1BVU19P
SykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVT
X1NFVF9GT1JDRV9DSEFOTkVMUyhmb3JjZV9jaGFubmVsKSkgIT0gT1BVU19PSykgdGVzdF9mYWls
ZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIodmJy
KSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVCh2YnJfY29uc3RyYWludCkpICE9IE9QVVNf
T0spIHRlc3RfZmFpbGVkKCk7CisgICAgICAgICBpZihvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfQ09NUExFWElUWShjb21wbGV4aXR5KSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsK
KyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJRFRI
KG1heF9idykpICE9IE9QVVNfT0spIHRlc3RfZmFpbGVkKCk7CisgICAgICAgICBpZihvcHVzX2Vu
Y29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKHNpZykpICE9IE9QVVNfT0spIHRlc3RfZmFp
bGVkKCk7CisgICAgICAgICBpZihvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfSU5CQU5E
X0ZFQyhpbmJhbmRfZmVjKSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlm
KG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKHBrdF9sb3Nz
KSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9MU0JfREVQVEgobHNiX2RlcHRoKSkgIT0gT1BVU19PSykgdGVzdF9m
YWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVE
SUNUSU9OX0RJU0FCTEVEKHByZWRfZGlzYWJsZWQpKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgp
OworICAgICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWChkdHgpKSAh
PSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTihmcmFtZV9zaXplX2VudW0pKSAhPSBP
UFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworCisgICAgICAgICB0ZXN0X2VuY29kZShlbmMsIG51bV9j
aGFubmVscywgZnJhbWVfc2l6ZSwgZGVjLCBkZWJ1Z19pbmZvKTsKKyAgICAgIH0KKworICAgICAg
b3B1c19lbmNvZGVyX2Rlc3Ryb3koZW5jKTsKKyAgICAgIG9wdXNfZGVjb2Rlcl9kZXN0cm95KGRl
Yyk7CisgICB9Cit9CisKIGludCBydW5fdGVzdDEoaW50IG5vX2Z1enopCiB7CiAgICBzdGF0aWMg
Y29uc3QgaW50IGZzaXplc1s2XT17OTYwKjMsOTYwKjIsMTIwLDI0MCw0ODAsOTYwfTsKICAgIHN0
YXRpYyBjb25zdCBjaGFyICptc3RyaW5nc1szXSA9IHsiICAgIExQIiwiSHlicmlkIiwiICBNRENU
In07CiAgICB1bnNpZ25lZCBjaGFyIG1hcHBpbmdbMjU2XSA9IHswLDEsMjU1fTsKICAgIHVuc2ln
bmVkIGNoYXIgZGI2MlszNl07Ci0gICBvcHVzX2ludDMyIGk7Ci0gICBpbnQgcmMsaixlcnI7Cisg
ICBvcHVzX2ludDMyIGksajsKKyAgIGludCByYyxlcnI7CiAgICBPcHVzRW5jb2RlciAqZW5jOwog
ICAgT3B1c01TRW5jb2RlciAqTVNlbmM7CiAgICBPcHVzRGVjb2RlciAqZGVjOwpAQCAtMjI5LDYg
KzM4NCw3IEBAIGludCBydW5fdGVzdDEoaW50IG5vX2Z1enopCiAKICAgIGlmKG9wdXNfZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19BVVRPKSkhPU9QVVNfT0spdGVzdF9m
YWlsZWQoKTsKICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9GT1JDRV9NT0RF
KC0yKSkhPU9QVVNfQkFEX0FSRyl0ZXN0X2ZhaWxlZCgpOworICAgaWYob3B1c19lbmNvZGUoZW5j
LCBpbmJ1ZiwgNTAwLCBwYWNrZXQsIE1BWF9QQUNLRVQpIT1PUFVTX0JBRF9BUkcpdGVzdF9mYWls
ZWQoKTsKIAogICAgZm9yKHJjPTA7cmM8MztyYysrKQogICAgewpAQCAtMzM1LDcgKzQ5MSw4IEBA
IGludCBydW5fdGVzdDEoaW50IG5vX2Z1enopCiAgICAgICAgICBpZihvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKE1TZW5jLCBPUFVTX1NFVF9CSVRSQVRFKHJhdGUpKSE9T1BVU19PSyl0ZXN0
X2ZhaWxlZCgpOwogICAgICAgICAgY291bnQ9aT0wOwogICAgICAgICAgZG8gewotICAgICAgICAg
ICAgaW50IHByZWQsbGVuLG91dF9zYW1wbGVzLGZyYW1lX3NpemUsbG9zczsKKyAgICAgICAgICAg
IGludCBsZW4sb3V0X3NhbXBsZXMsZnJhbWVfc2l6ZSxsb3NzOworICAgICAgICAgICAgb3B1c19p
bnQzMiBwcmVkOwogICAgICAgICAgICAgaWYob3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChN
U2VuYywgT1BVU19HRVRfUFJFRElDVElPTl9ESVNBQkxFRCgmcHJlZCkpIT1PUFVTX09LKXRlc3Rf
ZmFpbGVkKCk7CiAgICAgICAgICAgICBpZihvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKE1T
ZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKChpbnQpKGZhc3RfcmFuZCgpJjE1KTwo
cHJlZD8xMTo0KSkpIT1PUFVTX09LKXRlc3RfZmFpbGVkKCk7CiAgICAgICAgICAgICBmcmFtZV9z
aXplPWZyYW1lW2pdOwpAQCAtNDI1LDcgKzU4Miw3IEBAIGludCBydW5fdGVzdDEoaW50IG5vX2Z1
enopCiAgICAgICAgICB0aGUgZGVjb2RlcnMgaW4gb3JkZXIgdG8gY29tcGFyZSB0aGVtLiAqLwog
ICAgICAgaWYob3B1c19wYWNrZXRfcGFyc2UocGFja2V0LGxlbiwmdG9jLGZyYW1lcyxzaXplLCZw
YXlsb2FkX29mZnNldCk8PTApdGVzdF9mYWlsZWQoKTsKICAgICAgIGlmKChmYXN0X3JhbmQoKSYx
MDIzKT09MClsZW49MDsKLSAgICAgIGZvcihqPShmcmFtZXNbMF0tcGFja2V0KTtqPGxlbjtqKysp
Zm9yKGpqPTA7amo8ODtqaisrKXBhY2tldFtqXV49KCghbm9fZnV6eikmJigoZmFzdF9yYW5kKCkm
MTAyMyk9PTApKTw8amo7CisgICAgICBmb3Ioaj0ob3B1c19pbnQzMikoZnJhbWVzWzBdLXBhY2tl
dCk7ajxsZW47aisrKWZvcihqaj0wO2pqPDg7amorKylwYWNrZXRbal1ePSgoIW5vX2Z1enopJiYo
KGZhc3RfcmFuZCgpJjEwMjMpPT0wKSk8PGpqOwogICAgICAgb3V0X3NhbXBsZXMgPSBvcHVzX2Rl
Y29kZShkZWNfZXJyWzBdLCBsZW4+MD9wYWNrZXQ6TlVMTCwgbGVuLCBvdXQyYnVmLCBNQVhfRlJB
TUVfU0FNUCwgMCk7CiAgICAgICBpZihvdXRfc2FtcGxlczwwfHxvdXRfc2FtcGxlcz5NQVhfRlJB
TUVfU0FNUCl0ZXN0X2ZhaWxlZCgpOwogICAgICAgaWYoKGxlbj4wJiZvdXRfc2FtcGxlcyE9ZnJh
bWVfc2l6ZSkpdGVzdF9mYWlsZWQoKTsgLypGSVhNRSB1c2UgbGFzdGZyYW1lKi8KQEAgLTQ3MCwz
OSArNjI3LDc0IEBAIGludCBydW5fdGVzdDEoaW50IG5vX2Z1enopCiAgICByZXR1cm4gMDsKIH0K
IAordm9pZCBwcmludF91c2FnZShjaGFyKiBfYXJndltdKQoreworICAgZnByaW50ZihzdGRlcnIs
IlVzYWdlOiAlcyBbPHNlZWQ+XSBbLWZ1enogPG51bV9lbmNvZGVycz4gPG51bV9zZXR0aW5nc19w
ZXJfZW5jb2Rlcj5dXG4iLF9hcmd2WzBdKTsKK30KKwogaW50IG1haW4oaW50IF9hcmdjLCBjaGFy
ICoqX2FyZ3YpCiB7CisgICBpbnQgYXJncz0xOworICAgY2hhciAqIHN0cnRvbF9zdHI9TlVMTDsK
ICAgIGNvbnN0IGNoYXIgKiBvdmVyc2lvbjsKICAgIGNvbnN0IGNoYXIgKiBlbnZfc2VlZDsKICAg
IGludCBlbnZfdXNlZDsKLQotICAgaWYoX2FyZ2M+MikKLSAgIHsKLSAgICAgIGZwcmludGYoc3Rk
ZXJyLCJVc2FnZTogJXMgWzxzZWVkPl1cbiIsX2FyZ3ZbMF0pOwotICAgICAgcmV0dXJuIDE7Ci0g
ICB9CisgICBpbnQgbnVtX2VuY29kZXJzX3RvX2Z1eno9NTsKKyAgIGludCBudW1fc2V0dGluZ19j
aGFuZ2VzPTQwOwogCiAgICBlbnZfdXNlZD0wOwogICAgZW52X3NlZWQ9Z2V0ZW52KCJTRUVEIik7
Ci0gICBpZihfYXJnYz4xKWlzZWVkPWF0b2koX2FyZ3ZbMV0pOwotICAgZWxzZSBpZihlbnZfc2Vl
ZCkKLSAgIHsKKyAgIGlmKF9hcmdjPjEpCisgICAgICBpc2VlZD1zdHJ0b2woX2FyZ3ZbMV0sICZz
dHJ0b2xfc3RyLCAxMCk7ICAvKiB0aGUgZmlyc3QgaW5wdXQgYXJndW1lbnQgbWlnaHQgYmUgdGhl
IHNlZWQgKi8KKyAgIGlmKHN0cnRvbF9zdHIhPU5VTEwgJiYgc3RydG9sX3N0clswXT09J1wwJykg
ICAvKiBpc2VlZCBpcyBhIHZhbGlkIG51bWJlciAqLworICAgICAgYXJncysrOworICAgZWxzZSBp
ZihlbnZfc2VlZCkgewogICAgICAgaXNlZWQ9YXRvaShlbnZfc2VlZCk7CiAgICAgICBlbnZfdXNl
ZD0xOwogICAgfQotICAgZWxzZSBpc2VlZD0ob3B1c191aW50MzIpdGltZShOVUxMKV4oKGdldHBp
ZCgpJjY1NTM1KTw8MTYpOworICAgZWxzZSBpc2VlZD0ob3B1c191aW50MzIpdGltZShOVUxMKV4o
KChvcHVzX3VpbnQzMilnZXRwaWQoKSY2NTUzNSk8PDE2KTsKICAgIFJ3PVJ6PWlzZWVkOwogCisg
ICB3aGlsZShhcmdzPF9hcmdjKQorICAgeworICAgICAgaWYoc3RyY21wKF9hcmd2W2FyZ3NdLCAi
LWZ1enoiKT09MCAmJiBfYXJnYz09KGFyZ3MrMykpIHsKKyAgICAgICAgIG51bV9lbmNvZGVyc190
b19mdXp6PXN0cnRvbChfYXJndlthcmdzKzFdLCAmc3RydG9sX3N0ciwgMTApOworICAgICAgICAg
aWYoc3RydG9sX3N0clswXSE9J1wwJyB8fCBudW1fZW5jb2RlcnNfdG9fZnV6ejw9MCkgeworICAg
ICAgICAgICAgcHJpbnRfdXNhZ2UoX2FyZ3YpOworICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJ
TFVSRTsKKyAgICAgICAgIH0KKyAgICAgICAgIG51bV9zZXR0aW5nX2NoYW5nZXM9c3RydG9sKF9h
cmd2W2FyZ3MrMl0sICZzdHJ0b2xfc3RyLCAxMCk7CisgICAgICAgICBpZihzdHJ0b2xfc3RyWzBd
IT0nXDAnIHx8IG51bV9zZXR0aW5nX2NoYW5nZXM8PTApIHsKKyAgICAgICAgICAgIHByaW50X3Vz
YWdlKF9hcmd2KTsKKyAgICAgICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CisgICAgICAgICB9
CisgICAgICAgICBhcmdzKz0zOworICAgICAgfQorICAgICAgZWxzZSB7CisgICAgICAgIHByaW50
X3VzYWdlKF9hcmd2KTsKKyAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKKyAgICAgIH0KKyAg
IH0KKwogICAgb3ZlcnNpb249b3B1c19nZXRfdmVyc2lvbl9zdHJpbmcoKTsKICAgIGlmKCFvdmVy
c2lvbil0ZXN0X2ZhaWxlZCgpOwogICAgZnByaW50ZihzdGRlcnIsIlRlc3RpbmcgJXMgZW5jb2Rl
ci4gUmFuZG9tIHNlZWQ6ICV1ICglLjRYKVxuIiwgb3ZlcnNpb24sIGlzZWVkLCBmYXN0X3JhbmQo
KSAlIDY1NTM1KTsKICAgIGlmKGVudl91c2VkKWZwcmludGYoc3RkZXJyLCIgIFJhbmRvbSBzZWVk
IHNldCBmcm9tIHRoZSBlbnZpcm9ubWVudCAoU0VFRD0lcykuXG4iLCBlbnZfc2VlZCk7CiAKKyAg
IHJlZ3Jlc3Npb25fdGVzdCgpOworCiAgICAvKlNldHRpbmcgVEVTVF9PUFVTX05PRlVaWiB0ZWxs
cyB0aGUgdG9vbCBub3QgdG8gc2VuZCBnYXJiYWdlIGRhdGEKICAgICAgaW50byB0aGUgZGVjb2Rl
cnMuIFRoaXMgaXMgaGVscGZ1bCBiZWNhdXNlIGdhcmJhZ2UgZGF0YQogICAgICBtYXkgY2F1c2Ug
dGhlIGRlY29kZXJzIHRvIGNsaXAsIHdoaWNoIGFuZ2VycyBDTEFORyBJT0MuKi8KICAgIHJ1bl90
ZXN0MShnZXRlbnYoIlRFU1RfT1BVU19OT0ZVWloiKSE9TlVMTCk7CiAKKyAgIC8qIEZ1enogZW5j
b2RlciBzZXR0aW5ncyBvbmxpbmUgKi8KKyAgIGlmKGdldGVudigiVEVTVF9PUFVTX05PRlVaWiIp
PT1OVUxMKSB7CisgICAgICBmcHJpbnRmKHN0ZGVyciwiUnVubmluZyBmdXp6X2VuY29kZXJfc2V0
dGluZ3Mgd2l0aCAlZCBlbmNvZGVyKHMpIGFuZCAlZCBzZXR0aW5nIGNoYW5nZShzKSBlYWNoLlxu
IiwKKyAgICAgICAgICAgICAgbnVtX2VuY29kZXJzX3RvX2Z1enosIG51bV9zZXR0aW5nX2NoYW5n
ZXMpOworICAgICAgZnV6el9lbmNvZGVyX3NldHRpbmdzKG51bV9lbmNvZGVyc190b19mdXp6LCBu
dW1fc2V0dGluZ19jaGFuZ2VzKTsKKyAgIH0KKwogICAgZnByaW50ZihzdGRlcnIsIlRlc3RzIGNv
bXBsZXRlZCBzdWNjZXNzZnVsbHkuXG4iKTsKIAogICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Vw
ZGF0ZV92ZXJzaW9uIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy91cGRhdGVfdmVyc2lvbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hOTk5OTkxOGQwZjdlM2Nk
NTJlYjFjMmNkYmM3MGMxZDg1Y2NiMjI2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy91cGRhdGVfdmVyc2lv
bgpAQCAtMCwwICsxLDY1IEBACisjIS9iaW4vYmFzaAorCisjIENyZWF0ZXMgYW5kIHVwZGF0ZXMg
dGhlIHBhY2thZ2VfdmVyc2lvbiBpbmZvcm1hdGlvbiB1c2VkIGJ5IGNvbmZpZ3VyZS5hYworIyAo
b3Igb3RoZXIgbWFrZWZpbGVzKS4gIFdoZW4gcnVuIGluc2lkZSBhIGdpdCByZXBvc2l0b3J5IGl0
IHdpbGwgdXNlIHRoZQorIyB2ZXJzaW9uIGluZm9ybWF0aW9uIHRoYXQgY2FuIGJlIHF1ZXJpZWQg
ZnJvbSBpdCB1bmxlc3MgQVVUT19VUERBVEUgaXMgc2V0CisjIHRvICdubycuICBJZiBubyB2ZXJz
aW9uIGlzIGN1cnJlbnRseSBrbm93biBpdCB3aWxsIGJlIHNldCB0byAndW5rbm93bicuCisjCisj
IElmIGNhbGxlZCB3aXRoIHRoZSBhcmd1bWVudCAncmVsZWFzZScsIHRoZSBQQUNLQUdFX1ZFUlNJ
T04gd2lsbCBiZSB1cGRhdGVkCisjIGV2ZW4gaWYgQVVUT19VUERBVEU9bm8sIGJ1dCB0aGUgdmFs
dWUgb2YgQVVUT19VUERBVEUgc2hhbGwgYmUgcHJlc2VydmVkLgorIyBUaGlzIGlzIHVzZWQgdG8g
Zm9yY2UgYSB2ZXJzaW9uIHVwZGF0ZSB3aGVuZXZlciBgbWFrZSBkaXN0YCBpcyBydW4uCisjCisj
IFRoZSBleGl0IHN0YXR1cyBpcyAxIGlmIHBhY2thZ2VfdmVyc2lvbiBpcyBub3QgbW9kaWZpZWQs
IGVsc2UgMCBpcyByZXR1cm5lZC4KKyMKKyMgVGhpcyBzY3JpcHQgc2hvdWxkIE5PVCBiZSBpbmNs
dWRlZCBpbiBkaXN0cmlidXRlZCB0YXJiYWxscywgYmVjYXVzZSBpZiBhCisjIHBhcmVudCBkaXJl
Y3RvcnkgY29udGFpbnMgYSBnaXQgcmVwb3NpdG9yeSB3ZSBkbyBub3Qgd2FudCB0byBhY2NpZGVu
dGFsbHkKKyMgcmV0cmlldmUgdGhlIHZlcnNpb24gaW5mb3JtYXRpb24gZnJvbSBpdCBpbnN0ZWFk
LiAgVGFyYmFsbHMgc2hvdWxkIHNoaXAKKyMgd2l0aCBvbmx5IHRoZSBwYWNrYWdlX3ZlcnNpb24g
ZmlsZS4KKyMKKyMgUm9uIDxyb25AZGViaWFuLm9yZz4sIDIwMTIuCisKK1NSQ0RJUj0kKGRpcm5h
bWUgJDApCisKK2lmIFsgLWUgIiRTUkNESVIvcGFja2FnZV92ZXJzaW9uIiBdOyB0aGVuCisgICAg
LiAiJFNSQ0RJUi9wYWNrYWdlX3ZlcnNpb24iCitmaQorCitpZiBbICIkQVVUT19VUERBVEUiID0g
bm8gXTsgdGhlbgorICAgIFsgIiQxIiA9IHJlbGVhc2UgXSB8fCBleGl0IDEKK2Vsc2UKKyAgICBB
VVRPX1VQREFURT15ZXMKK2ZpCisKKyMgV2UgcnVuIGBnaXQgc3RhdHVzYCBiZWZvcmUgZGVzY3Jp
YmUgaGVyZSB0byBlbnN1cmUgdGhhdCB3ZSBkb24ndCBnZXQgYSBmYWxzZQorIyAtZGlydHkgZnJv
bSBmaWxlcyB0aGF0IGhhdmUgYmVlbiB0b3VjaGVkIGJ1dCBhcmUgbm90IGFjdHVhbGx5IGFsdGVy
ZWQgaW4gdGhlCisjIHdvcmtpbmcgZGlyLgorR0lUX1ZFUlNJT049JChjZCAiJFNSQ0RJUiIgJiYg
Z2l0IHN0YXR1cyA+IC9kZXYvbnVsbCAyPiYxIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICYmIGdpdCBkZXNjcmliZSAtLXRhZ3MgLS1tYXRjaCAndionIC0tZGlydHkgMj4gL2Rldi9udWxs
KQorR0lUX1ZFUlNJT049JHtHSVRfVkVSU0lPTiN2fQorCitpZiBbIC1uICIkR0lUX1ZFUlNJT04i
IF07IHRoZW4KKworICAgIFsgIiRHSVRfVkVSU0lPTiIgIT0gIiRQQUNLQUdFX1ZFUlNJT04iIF0g
fHwgZXhpdCAxCisgICAgUEFDS0FHRV9WRVJTSU9OPSIkR0lUX1ZFUlNJT04iCisKK2VsaWYgWyAt
eiAiJFBBQ0tBR0VfVkVSU0lPTiIgXTsgdGhlbgorICAgICMgTm8gY3VycmVudCBwYWNrYWdlX3Zl
cnNpb24gYW5kIG5vIGdpdCAuLi4KKyAgICAjIFdlIHJlYWxseSBzaG91bGRuJ3QgZXZlciBnZXQg
aGVyZSwgYmVjYXVzZSB0aGlzIHNjcmlwdCBzaG91bGQgb25seSBiZQorICAgICMgaW5jbHVkZWQg
aW4gdGhlIGdpdCByZXBvc2l0b3J5LCBhbmQgc2hvdWxkIHVzdWFsbHkgYmUgZXhwb3J0LWlnbm9y
ZWQuCisgICAgUEFDS0FHRV9WRVJTSU9OPSJ1bmtub3duIgorZWxzZQorICAgIGV4aXQgMQorZmkK
KworY2F0ID4gIiRTUkNESVIvcGFja2FnZV92ZXJzaW9uIiA8PC1FT0YKKwkjIEF1dG9tYXRpY2Fs
bHkgZ2VuZXJhdGVkIGJ5IHVwZGF0ZV92ZXJzaW9uLgorCSMgVGhpcyBmaWxlIG1heSBiZSBzb3Vy
Y2VkIGludG8gYSBzaGVsbCBzY3JpcHQgb3IgbWFrZWZpbGUuCisKKwkjIFNldCB0aGlzIHRvICdu
bycgaWYgeW91IGRvIG5vdCB3aXNoIHRoZSB2ZXJzaW9uIGluZm9ybWF0aW9uCisJIyB0byBiZSBj
aGVja2VkIGFuZCB1cGRhdGVkIGZvciBldmVyeSBidWlsZC4gIE1vc3QgcGVvcGxlIHdpbGwKKwkj
IG5ldmVyIHdhbnQgdG8gY2hhbmdlIHRoaXMsIGl0IGlzIGFuIG9wdGlvbiBmb3IgZGV2ZWxvcGVy
cworCSMgbWFraW5nIGZyZXF1ZW50IGNoYW5nZXMgdGhhdCB0aGV5IGtub3cgd2lsbCBub3QgYmUg
cmVsZWFzZWQuCisJQVVUT19VUERBVEU9JEFVVE9fVVBEQVRFCisKKwlQQUNLQUdFX1ZFUlNJT049
IiRQQUNLQUdFX1ZFUlNJT04iCitFT0YKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvd2luMzIvLmdpdGlnbm9yZSBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvd2lu
MzIvLmdpdGlnbm9yZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMTdmZWFiNzNkMzQ5MmNlODY2MmVlNjk1NDZkZWMw
ZDllZWJiZDdkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy93aW4zMi8uZ2l0aWdub3JlCkBAIC0wLDAgKzEs
MjYgQEAKKyMgVmlzdWFsIFN0dWRpbyBpZ25vcmVzCitbRGRdZWJ1Zy8KK1tEZF1lYnVnRExMLwor
W0RkXWVidWdETExfZml4ZWQvCitbRGRdZWJ1Z1B1YmxpYy8KK1tScl1lbGVhc2UvCitbUnJdZWxl
YXNlRExMLworW1JyXWVsZWFzZURMTF9maXhlZC8KK1tScl1lbGVhc2VzLworKi5tYW5pZmVzdAor
Ki5sYXN0YnVpbGRzdGF0ZQorKi5saWIKKyoubG9nCisqLmlkYgorKi5pcGRiCisqLmlsaworKi5p
b2JqCisqLm9iagorKi5vcGVuc2RmCisqLnBkYgorKi5zZGYKKyouc3VvCisqLnRsb2cKKyoudmN4
cHJvai51c2VyCisqLnZjLmRiCisqLnZjLm9wZW5kYgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy93aW4zMi9nZW52ZXJz
aW9uLmJhdCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvd2luMzIvZ2VudmVyc2lvbi5iYXQKaW5kZXggY2QxZDRkY2U2ZWQ4ZjU0ODZlZTMx
YTNmNWExNGRhYjhiYzAzOGUwYy4uMWRlZjc0NjBiNWUwMmZhMTg5OThhNTdlMGUwZWZjNWFiMzEz
NGVkNSAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy93aW4zMi9nZW52ZXJzaW9uLmJhdAorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3dpbjMyL2dlbnZlcnNp
b24uYmF0CkBAIC0yLDEzICsyLDEzIEBACiAKIHNldGxvY2FsIGVuYWJsZWV4dGVuc2lvbnMgZW5h
YmxlZGVsYXllZGV4cGFuc2lvbgogCi1mb3IgL2YgJSV2IGluICgnZ2l0IC0tZ2l0LWRpcj0iJX5k
cDAuLlwuZ2l0IiBkZXNjcmliZSAtLXRhZ3MgLS1tYXRjaCAidioiJykgZG8gc2V0IHZlcnNpb249
JSV2Citmb3IgL2YgJSV2IGluICgnY2QgIiV+ZHAwLi4iIF4mXiYgZ2l0IHN0YXR1cyBePk5VTCAy
Xj5OVUwgXiZeJiBnaXQgZGVzY3JpYmUgLS10YWdzIC0tbWF0Y2ggInYqIiAtLWRpcnR5IDJePk5V
TCcpIGRvIHNldCB2ZXJzaW9uPSUldgogCi1pZiBub3QgIiV2ZXJzaW9uJSI9PSIiIGdvdG8gOmdv
dHZlcnNpb24KK2lmIG5vdCAiJXZlcnNpb24lIj09IiIgc2V0IHZlcnNpb249IXZlcnNpb246fjEh
ICYmIGdvdG8gOmdvdHZlcnNpb24KIAotaWYgZXhpc3QgIiV+ZHAwLi5cdmVyc2lvbi5tayIgZ290
byA6Z2V0dmVyc2lvbgoraWYgZXhpc3QgIiV+ZHAwLi5ccGFja2FnZV92ZXJzaW9uIiBnb3RvIDpn
ZXR2ZXJzaW9uCiAKLWVjaG8gR2l0IGNhbm5vdCBiZSBmb3VuZCwgbm9yIGNhbiB2ZXJzaW9uLm1r
LiBHZW5lcmF0aW5nIHVua25vd24gdmVyc2lvbi4KK2VjaG8gR2l0IGNhbm5vdCBiZSBmb3VuZCwg
bm9yIGNhbiBwYWNrYWdlX3ZlcnNpb24uIEdlbmVyYXRpbmcgdW5rbm93biB2ZXJzaW9uLgogCiBz
ZXQgdmVyc2lvbj11bmtub3duCiAKQEAgLTE2LDI1ICsxNiwxNiBAQCBnb3RvIDpnb3R2ZXJzaW9u
CiAKIDpnZXR2ZXJzaW9uCiAKLWZvciAvZiAiZGVsaW1zPT0gdG9rZW5zPTIiICUldiBpbiAoJX5k
cHMwLi5cdmVyc2lvbi5taykgZG8gc2V0IHZlcnNpb249JSV2Ci0KLXNldCB2ZXJzaW9uPSF2ZXJz
aW9uOl4iPSEKLXNldCB2ZXJzaW9uPSF2ZXJzaW9uOiA9IQorZm9yIC9mICJkZWxpbXM9PSB0b2tl
bnM9MiIgJSV2IGluICglfmRwczAuLlxwYWNrYWdlX3ZlcnNpb24pIGRvIHNldCB2ZXJzaW9uPSUl
dgorc2V0IHZlcnNpb249IXZlcnNpb246Ij0hCiAKIDpnb3R2ZXJzaW9uCiAKK3NldCB2ZXJzaW9u
PSF2ZXJzaW9uOiA9IQogc2V0IHZlcnNpb25fb3V0PSNkZWZpbmUgJX4yICIldmVyc2lvbiUiCi1z
ZXQgdmVyc2lvbl9taz0lfjIgPSAiJXZlcnNpb24lIgogCiBlY2hvICV2ZXJzaW9uX291dCU+ICIl
fjFfdGVtcCIKIAotaWYgJXZlcnNpb24lPT11bmtub3duIGdvdG8gOnNraXBnZW5lcmF0ZQotCi1l
Y2hvICMgc3RhdGljIHZlcnNpb24gc3RyaW5nOyB1cGRhdGUgbWFudWFsbHkgZXZlcnkgcmVsZWFz
ZS4+ICIlfmRwMC4uXHZlcnNpb24ubWsiCi1lY2hvICV2ZXJzaW9uX21rJT4+ICIlfmRwMC4uXHZl
cnNpb24ubWsiCi0KLTpza2lwZ2VuZXJhdGUKLQogZWNobyBuIHwgY29tcCAiJX4xX3RlbXAiICIl
fjEiID4gTlVMIDI+IE5VTAogCiBpZiBub3QgZXJyb3JsZXZlbCAxIGdvdG8gZXhpdApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndlYnJ0Yy54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndlYnJ0Yy54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDJiMWVhYTkxM2FmNmMyMmFjMjBkMTlmYjljYjM1
MTIwNmRiNzAzYzIuLmEwYzk4ZGZlMjdkMTU1NzcwMjRhOTM1YmZmZTg4MzVlODNhYjMxNGEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9saWJ3ZWJydGMueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvbGlid2Vi
cnRjLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIxLDYgKzIxLDE1IEBACiAvKiBFbmQg
UEJYQWdncmVnYXRlVGFyZ2V0IHNlY3Rpb24gKi8KIAogLyogQmVnaW4gUEJYQnVpbGRGaWxlIHNl
Y3Rpb24gKi8KKwkJNDEwMENERTYyMUNBQ0ZEMDAwRjlCODdEIC8qIExQQ19maXQuYyBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMDBDREU1MjFDQUNGRDAw
MEY5Qjg3RCAvKiBMUENfZml0LmMgKi87IH07CisJCTQxMDBDREVBMjFDQUQwMzQwMEY5Qjg3RCAv
KiB2cV9zc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDQxMDBDREU4MjFDQUQwMzMwMEY5Qjg3RCAvKiB2cV9zc2UuaCAqLzsgfTsKKwkJNDEwMENERjIy
MUNBRDFGNzAwRjlCODdEIC8qIHBpdGNoX3NzZTRfMS5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEwMENERUIyMUNBRDFGNTAwRjlCODdEIC8qIHBpdGNo
X3NzZTRfMS5jICovOyB9OworCQk0MTAwQ0RGMzIxQ0FEMUY3MDBGOUI4N0QgLyogY2VsdF9scGNf
c3NlLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTAw
Q0RFQzIxQ0FEMUY1MDBGOUI4N0QgLyogY2VsdF9scGNfc3NlLmMgKi87IH07CisJCTQxMDBDREY0
MjFDQUQxRjcwMEY5Qjg3RCAvKiB2cV9zc2UyLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0MTAwQ0RFRDIxQ0FEMUY1MDBGOUI4N0QgLyogdnFfc3NlMi5j
ICovOyB9OworCQk0MTAwQ0RGNTIxQ0FEMUY3MDBGOUI4N0QgLyogcGl0Y2hfc3NlLmMgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTAwQ0RFRTIxQ0FEMUY2
MDBGOUI4N0QgLyogcGl0Y2hfc3NlLmMgKi87IH07CisJCTQxMDBDREY2MjFDQUQxRjcwMEY5Qjg3
RCAvKiBwaXRjaF9zc2UyLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0MTAwQ0RFRjIxQ0FEMUY2MDBGOUI4N0QgLyogcGl0Y2hfc3NlMi5jICovOyB9Owor
CQk0MTAwQ0RGNzIxQ0FEMUY3MDBGOUI4N0QgLyogY2VsdF9scGNfc3NlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTAwQ0RGMDIxQ0FEMUY2MDBGOUI4
N0QgLyogY2VsdF9scGNfc3NlLmggKi87IH07CisJCTQxMDBDREY4MjFDQUQxRjcwMEY5Qjg3RCAv
KiBwaXRjaF9zc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQxMDBDREYxMjFDQUQxRjcwMEY5Qjg3RCAvKiBwaXRjaF9zc2UuaCAqLzsgfTsKIAkJNDEw
MkY2OEQyMTI3MzIwNjAwNkFFOEQ3IC8qIHJ0Y3N0YXRzdHJhdmVyc2FsLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTAyRjY4NDIxMjczMjA0MDA2QUU4
RDcgLyogcnRjc3RhdHN0cmF2ZXJzYWwuaCAqLzsgfTsKIAkJNDEwMkY2OEUyMTI3MzIwNjAwNkFF
OEQ3IC8qIGpzZXB0cmFuc3BvcnRjb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTAyRjY4NTIxMjczMjA0MDA2QUU4RDcgLyoganNlcHRy
YW5zcG9ydGNvbnRyb2xsZXIuaCAqLzsgfTsKIAkJNDEwMkY2OEYyMTI3MzIwNjAwNkFFOEQ3IC8q
IHRyYW5zcG9ydHN0YXRzLmNjIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDEwMkY2ODYyMTI3MzIwNTAwNkFFOEQ3IC8qIHRyYW5zcG9ydHN0YXRzLmNjICov
OyB9OwpAQCAtMzI1MSw3ICszMjYwLDYgQEAKIAkJNUNERDhFRUExRTQzQzlGNjAwNjIxRTkyIC8q
IGZpbmRfcHJlZF9jb2Vmc19GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDVDREQ4RUE2MUU0M0M5QzEwMDYyMUU5MiAvKiBmaW5kX3ByZWRfY29lZnNf
RkxQLmMgKi87IH07CiAJCTVDREQ4RUVCMUU0M0M5RjYwMDYyMUU5MiAvKiBpbm5lcl9wcm9kdWN0
X0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNE
RDhFQTcxRTQzQzlDMTAwNjIxRTkyIC8qIGlubmVyX3Byb2R1Y3RfRkxQLmMgKi87IH07CiAJCTVD
REQ4RUVDMUU0M0M5RjYwMDYyMUU5MiAvKiBrMmFfRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVBODFFNDNDOUMxMDA2MjFFOTIgLyogazJh
X0ZMUC5jICovOyB9OwotCQk1Q0REOEVFRDFFNDNDOUY2MDA2MjFFOTIgLyogbGV2aW5zb25kdXJi
aW5fRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
Q0REOEVBOTFFNDNDOUMxMDA2MjFFOTIgLyogbGV2aW5zb25kdXJiaW5fRkxQLmMgKi87IH07CiAJ
CTVDREQ4RUVFMUU0M0M5RjYwMDYyMUU5MiAvKiBMUENfYW5hbHlzaXNfZmlsdGVyX0ZMUC5jIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQUExRTQz
QzlDMTAwNjIxRTkyIC8qIExQQ19hbmFseXNpc19maWx0ZXJfRkxQLmMgKi87IH07CiAJCTVDREQ4
RUVGMUU0M0M5RjYwMDYyMUU5MiAvKiBMUENfaW52X3ByZWRfZ2Fpbl9GTFAuYyBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUFCMUU0M0M5QzEwMDYy
MUU5MiAvKiBMUENfaW52X3ByZWRfZ2Fpbl9GTFAuYyAqLzsgfTsKIAkJNUNERDhFRjAxRTQzQzlG
NjAwNjIxRTkyIC8qIExUUF9hbmFseXNpc19maWx0ZXJfRkxQLmMgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVBQzFFNDNDOUMxMDA2MjFFOTIgLyog
TFRQX2FuYWx5c2lzX2ZpbHRlcl9GTFAuYyAqLzsgfTsKQEAgLTMyNTksNyArMzI2Nyw2IEBACiAJ
CTVDREQ4RUYyMUU0M0M5RjYwMDYyMUU5MiAvKiBtYWluX0ZMUC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQUUxRTQzQzlDMTAwNjIxRTkyIC8q
IG1haW5fRkxQLmggKi87IH07CiAJCTVDREQ4RUYzMUU0M0M5RjYwMDYyMUU5MiAvKiBub2lzZV9z
aGFwZV9hbmFseXNpc19GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDVDREQ4RUFGMUU0M0M5QzEwMDYyMUU5MiAvKiBub2lzZV9zaGFwZV9hbmFseXNp
c19GTFAuYyAqLzsgfTsKIAkJNUNERDhFRjQxRTQzQzlGNjAwNjIxRTkyIC8qIHBpdGNoX2FuYWx5
c2lzX2NvcmVfRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1Q0REOEVCMDFFNDNDOUMxMDA2MjFFOTIgLyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAu
YyAqLzsgfTsKLQkJNUNERDhFRjUxRTQzQzlGNjAwNjIxRTkyIC8qIHByZWZpbHRlcl9GTFAuYyBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUIxMUU0
M0M5QzEwMDYyMUU5MiAvKiBwcmVmaWx0ZXJfRkxQLmMgKi87IH07CiAJCTVDREQ4RUY2MUU0M0M5
RjYwMDYyMUU5MiAvKiBwcm9jZXNzX2dhaW5zX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQjIxRTQzQzlDMTAwNjIxRTkyIC8qIHByb2Nl
c3NfZ2FpbnNfRkxQLmMgKi87IH07CiAJCTVDREQ4RUY3MUU0M0M5RjYwMDYyMUU5MiAvKiByZWd1
bGFyaXplX2NvcnJlbGF0aW9uc19GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDVDREQ4RUIzMUU0M0M5QzEwMDYyMUU5MiAvKiByZWd1bGFyaXplX2Nv
cnJlbGF0aW9uc19GTFAuYyAqLzsgfTsKIAkJNUNERDhFRjgxRTQzQzlGNjAwNjIxRTkyIC8qIHJl
c2lkdWFsX2VuZXJneV9GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDVDREQ4RUI0MUU0M0M5QzEwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3lfRkxQ
LmMgKi87IH07CkBAIC0zMjY3LDcgKzMyNzQsNiBAQAogCQk1Q0REOEVGQTFFNDNDOUY2MDA2MjFF
OTIgLyogc2NhbGVfdmVjdG9yX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNUNERDhFQjYxRTQzQzlDMTAwNjIxRTkyIC8qIHNjYWxlX3ZlY3Rvcl9G
TFAuYyAqLzsgfTsKIAkJNUNERDhFRkIxRTQzQzlGNjAwNjIxRTkyIC8qIHNjaHVyX0ZMUC5jIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQjcxRTQz
QzlDMTAwNjIxRTkyIC8qIHNjaHVyX0ZMUC5jICovOyB9OwogCQk1Q0REOEVGQzFFNDNDOUY2MDA2
MjFFOTIgLyogU2lnUHJvY19GTFAuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDVDREQ4RUI4MUU0M0M5QzEwMDYyMUU5MiAvKiBTaWdQcm9jX0ZMUC5oICov
OyB9OwotCQk1Q0REOEVGRDFFNDNDOUY2MDA2MjFFOTIgLyogc29sdmVfTFNfRkxQLmMgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVCOTFFNDNDOUMx
MDA2MjFFOTIgLyogc29sdmVfTFNfRkxQLmMgKi87IH07CiAJCTVDREQ4RUZFMUU0M0M5RjYwMDYy
MUU5MiAvKiBzb3J0X0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNUNERDhFQkExRTQzQzlDMTAwNjIxRTkyIC8qIHNvcnRfRkxQLmMgKi87IH07CiAJ
CTVDREQ4RUZGMUU0M0M5RjYwMDYyMUU5MiAvKiBzdHJ1Y3RzX0ZMUC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQkIxRTQzQzlDMTAwNjIxRTky
IC8qIHN0cnVjdHNfRkxQLmggKi87IH07CiAJCTVDREQ4RjAwMUU0M0M5RjYwMDYyMUU5MiAvKiB3
YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQkMxRTQzQzlDMTAwNjIxRTkyIC8qIHdhcnBlZF9hdXRv
Y29ycmVsYXRpb25fRkxQLmMgKi87IH07CkBAIC0zMjg4LDE0ICszMjk0LDEyIEBACiAJCTVDREQ4
RjQ3MUU0M0NCMUUwMDYyMUU5MiAvKiBtYWluX0ZJWC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMTAxRTQzQ0FGOTAwNjIxRTkyIC8qIG1haW5f
RklYLmggKi87IH07CiAJCTVDREQ4RjQ4MUU0M0NCMUUwMDYyMUU5MiAvKiBub2lzZV9zaGFwZV9h
bmFseXNpc19GSVguYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDVDREQ4RjEyMUU0M0NBRjkwMDYyMUU5MiAvKiBub2lzZV9zaGFwZV9hbmFseXNpc19GSVgu
YyAqLzsgfTsKIAkJNUNERDhGNDkxRTQzQ0IxRTAwNjIxRTkyIC8qIHBpdGNoX2FuYWx5c2lzX2Nv
cmVfRklYLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
Q0REOEYxMzFFNDNDQUY5MDA2MjFFOTIgLyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYyAqLzsg
fTsKLQkJNUNERDhGNEExRTQzQ0IxRTAwNjIxRTkyIC8qIHByZWZpbHRlcl9GSVguYyBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RjE0MUU0M0NBRjkw
MDYyMUU5MiAvKiBwcmVmaWx0ZXJfRklYLmMgKi87IH07CiAJCTVDREQ4RjRCMUU0M0NCMUUwMDYy
MUU5MiAvKiBwcm9jZXNzX2dhaW5zX0ZJWC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMTUxRTQzQ0FGOTAwNjIxRTkyIC8qIHByb2Nlc3NfZ2Fp
bnNfRklYLmMgKi87IH07CiAJCTVDREQ4RjRDMUU0M0NCMUUwMDYyMUU5MiAvKiByZWd1bGFyaXpl
X2NvcnJlbGF0aW9uc19GSVguYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDVDREQ4RjE2MUU0M0NBRjkwMDYyMUU5MiAvKiByZWd1bGFyaXplX2NvcnJlbGF0
aW9uc19GSVguYyAqLzsgfTsKIAkJNUNERDhGNEQxRTQzQ0IxRTAwNjIxRTkyIC8qIHJlc2lkdWFs
X2VuZXJneV9GSVguYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDVDREQ4RjE3MUU0M0NBRjkwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3lfRklYLmMgKi87
IH07CiAJCTVDREQ4RjRFMUU0M0NCMUUwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3kxNl9GSVgu
YyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RjE4
MUU0M0NBRjkwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3kxNl9GSVguYyAqLzsgfTsKIAkJNUNE
RDhGNEYxRTQzQ0IxRTAwNjIxRTkyIC8qIHNjaHVyX0ZJWC5jIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMTkxRTQzQ0FGOTAwNjIxRTkyIC8qIHNj
aHVyX0ZJWC5jICovOyB9OwogCQk1Q0REOEY1MDFFNDNDQjFFMDA2MjFFOTIgLyogc2NodXI2NF9G
SVguYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4
RjFBMUU0M0NBRjkwMDYyMUU5MiAvKiBzY2h1cjY0X0ZJWC5jICovOyB9OwotCQk1Q0REOEY1MTFF
NDNDQjFFMDA2MjFFOTIgLyogc29sdmVfTFNfRklYLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYxQjFFNDNDQUY5MDA2MjFFOTIgLyogc29sdmVf
TFNfRklYLmMgKi87IH07CiAJCTVDREQ4RjUyMUU0M0NCMUUwMDYyMUU5MiAvKiBzdHJ1Y3RzX0ZJ
WC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhG
MUMxRTQzQ0FGOTAwNjIxRTkyIC8qIHN0cnVjdHNfRklYLmggKi87IH07CiAJCTVDREQ4RjUzMUU0
M0NCMUUwMDYyMUU5MiAvKiB2ZWN0b3Jfb3BzX0ZJWC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMUQxRTQzQ0FGOTAwNjIxRTkyIC8qIHZlY3Rv
cl9vcHNfRklYLmMgKi87IH07CiAJCTVDREQ4RjU0MUU0M0NCMUUwMDYyMUU5MiAvKiB3YXJwZWRf
YXV0b2NvcnJlbGF0aW9uX0ZJWC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNUNERDhGMUUxRTQzQ0FGOTAwNjIxRTkyIC8qIHdhcnBlZF9hdXRvY29ycmVs
YXRpb25fRklYLmMgKi87IH07CkBAIC0zNjYwLDYgKzM2NjQsMTUgQEAKIC8qIEJlZ2luIFBCWEZp
bGVSZWZlcmVuY2Ugc2VjdGlvbiAqLwogCQkzNzExOUE4MDIwQ0NCNkREMDAyQzZEQzkgLyogVmVy
c2lvbi54Y2NvbmZpZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBWZXJzaW9uLnhjY29uZmlnOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkzNzExOUE4MTIwQ0NCNkREMDAyQzZEQzkgLyogV2ViS2l0VGFy
Z2V0Q29uZGl0aW9uYWxzLnhjY29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IFdlYktpdFRhcmdldENvbmRp
dGlvbmFscy54Y2NvbmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENERTUy
MUNBQ0ZEMDAwRjlCODdEIC8qIExQQ19maXQuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBu
YW1lID0gTFBDX2ZpdC5jOyBwYXRoID0gc2lsay9MUENfZml0LmM7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxMDBDREU4MjFDQUQwMzMwMEY5Qjg3RCAvKiB2cV9zc2UuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gdnFfc3NlLmg7IHBhdGggPSB4ODYvdnFfc3NlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMDBDREVCMjFDQUQxRjUwMEY5Qjg3RCAv
KiBwaXRjaF9zc2U0XzEuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcGl0Y2hf
c3NlNF8xLmM7IHBhdGggPSB4ODYvcGl0Y2hfc3NlNF8xLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQxMDBDREVDMjFDQUQxRjUwMEY5Qjg3RCAvKiBjZWx0X2xwY19zc2UuYyAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gY2VsdF9scGNfc3NlLmM7IHBhdGggPSB4ODYv
Y2VsdF9scGNfc3NlLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMDBDREVEMjFD
QUQxRjUwMEY5Qjg3RCAvKiB2cV9zc2UyLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFt
ZSA9IHZxX3NzZTIuYzsgcGF0aCA9IHg4Ni92cV9zc2UyLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQxMDBDREVFMjFDQUQxRjYwMEY5Qjg3RCAvKiBwaXRjaF9zc2UuYyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcGl0Y2hfc3NlLmM7IHBhdGggPSB4ODYvcGl0Y2hf
c3NlLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMDBDREVGMjFDQUQxRjYwMEY5
Qjg3RCAvKiBwaXRjaF9zc2UyLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHBp
dGNoX3NzZTIuYzsgcGF0aCA9IHg4Ni9waXRjaF9zc2UyLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQxMDBDREYwMjFDQUQxRjYwMEY5Qjg3RCAvKiBjZWx0X2xwY19zc2UuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gY2VsdF9scGNfc3NlLmg7IHBhdGggPSB4ODYv
Y2VsdF9scGNfc3NlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMDBDREYxMjFD
QUQxRjcwMEY5Qjg3RCAvKiBwaXRjaF9zc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBu
YW1lID0gcGl0Y2hfc3NlLmg7IHBhdGggPSB4ODYvcGl0Y2hfc3NlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTQxMDJGNjg0MjEyNzMyMDQwMDZBRThENyAvKiBydGNzdGF0c3RyYXZl
cnNhbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBydGNzdGF0c3RyYXZlcnNh
bC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTAyRjY4NTIxMjczMjA0MDA2QUU4
RDcgLyoganNlcHRyYW5zcG9ydGNvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0ganNlcHRyYW5zcG9ydGNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNDEwMkY2ODYyMTI3MzIwNTAwNkFFOEQ3IC8qIHRyYW5zcG9ydHN0YXRzLmNjICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gdHJhbnNwb3J0c3RhdHMuY2M7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03MTY5LDcgKzcxODIsNiBAQAogCQk1Q0REOEVB
NjFFNDNDOUMxMDA2MjFFOTIgLyogZmluZF9wcmVkX2NvZWZzX0ZMUC5jICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmM7IG5hbWUgPSBmaW5kX3ByZWRfY29lZnNfRkxQLmM7IHBhdGggPSBzaWxrL2Zs
b2F0L2ZpbmRfcHJlZF9jb2Vmc19GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NUNERDhFQTcxRTQzQzlDMTAwNjIxRTkyIC8qIGlubmVyX3Byb2R1Y3RfRkxQLmMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IGlubmVyX3Byb2R1Y3RfRkxQLmM7IHBhdGggPSBzaWxr
L2Zsb2F0L2lubmVyX3Byb2R1Y3RfRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTVDREQ4RUE4MUU0M0M5QzEwMDYyMUU5MiAvKiBrMmFfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuYzsgbmFtZSA9IGsyYV9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvazJhX0ZMUC5jOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1Q0REOEVBOTFFNDNDOUMxMDA2MjFFOTIgLyog
bGV2aW5zb25kdXJiaW5fRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IGxl
dmluc29uZHVyYmluX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9sZXZpbnNvbmR1cmJpbl9GTFAu
Yzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQUExRTQzQzlDMTAwNjIxRTky
IC8qIExQQ19hbmFseXNpc19maWx0ZXJfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsg
bmFtZSA9IExQQ19hbmFseXNpc19maWx0ZXJfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L0xQQ19h
bmFseXNpc19maWx0ZXJfRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4
RUFCMUU0M0M5QzEwMDYyMUU5MiAvKiBMUENfaW52X3ByZWRfZ2Fpbl9GTFAuYyAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gTFBDX2ludl9wcmVkX2dhaW5fRkxQLmM7IHBhdGggPSBz
aWxrL2Zsb2F0L0xQQ19pbnZfcHJlZF9nYWluX0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk1Q0REOEVBQzFFNDNDOUMxMDA2MjFFOTIgLyogTFRQX2FuYWx5c2lzX2ZpbHRlcl9G
TFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gTFRQX2FuYWx5c2lzX2ZpbHRl
cl9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvTFRQX2FuYWx5c2lzX2ZpbHRlcl9GTFAuYzsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTcxNzcsNyArNzE4OSw2IEBACiAJCTVDREQ4RUFF
MUU0M0M5QzEwMDYyMUU5MiAvKiBtYWluX0ZMUC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSBtYWluX0ZMUC5oOyBwYXRoID0gc2lsay9mbG9hdC9tYWluX0ZMUC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVBRjFFNDNDOUMxMDA2MjFFOTIgLyogbm9pc2Vf
c2hhcGVfYW5hbHlzaXNfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IG5v
aXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9ub2lzZV9zaGFwZV9h
bmFseXNpc19GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQjAxRTQz
QzlDMTAwNjIxRTkyIC8qIHBpdGNoX2FuYWx5c2lzX2NvcmVfRkxQLmMgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuYzsgbmFtZSA9IHBpdGNoX2FuYWx5c2lzX2NvcmVfRkxQLmM7IHBhdGggPSBzaWxr
L2Zsb2F0L3BpdGNoX2FuYWx5c2lzX2NvcmVfRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCTVDREQ4RUIxMUU0M0M5QzEwMDYyMUU5MiAvKiBwcmVmaWx0ZXJfRkxQLmMgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHByZWZpbHRlcl9GTFAuYzsgcGF0aCA9IHNpbGsv
ZmxvYXQvcHJlZmlsdGVyX0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0RE
OEVCMjFFNDNDOUMxMDA2MjFFOTIgLyogcHJvY2Vzc19nYWluc19GTFAuYyAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5jOyBuYW1lID0gcHJvY2Vzc19nYWluc19GTFAuYzsgcGF0aCA9IHNpbGsvZmxv
YXQvcHJvY2Vzc19nYWluc19GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNE
RDhFQjMxRTQzQzlDMTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZMUC5jICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSByZWd1bGFyaXplX2NvcnJlbGF0aW9uc19G
TFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRkxQLmM7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUI0MUU0M0M5QzEwMDYyMUU5MiAvKiBy
ZXNpZHVhbF9lbmVyZ3lfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHJl
c2lkdWFsX2VuZXJneV9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvcmVzaWR1YWxfZW5lcmd5X0ZM
UC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzE4NSw3ICs3MTk2LDYgQEAKIAkJ
NUNERDhFQjYxRTQzQzlDMTAwNjIxRTkyIC8qIHNjYWxlX3ZlY3Rvcl9GTFAuYyAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gc2NhbGVfdmVjdG9yX0ZMUC5jOyBwYXRoID0gc2lsay9m
bG9hdC9zY2FsZV92ZWN0b3JfRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVD
REQ4RUI3MUU0M0M5QzEwMDYyMUU5MiAvKiBzY2h1cl9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5jOyBuYW1lID0gc2NodXJfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L3NjaHVyX0ZMUC5j
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVCODFFNDNDOUMxMDA2MjFFOTIg
LyogU2lnUHJvY19GTFAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gU2lnUHJv
Y19GTFAuaDsgcGF0aCA9IHNpbGsvZmxvYXQvU2lnUHJvY19GTFAuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJNUNERDhFQjkxRTQzQzlDMTAwNjIxRTkyIC8qIHNvbHZlX0xTX0ZMUC5j
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBzb2x2ZV9MU19GTFAuYzsgcGF0aCA9
IHNpbGsvZmxvYXQvc29sdmVfTFNfRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTVDREQ4RUJBMUU0M0M5QzEwMDYyMUU5MiAvKiBzb3J0X0ZMUC5jICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmM7IG5hbWUgPSBzb3J0X0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9zb3J0X0ZMUC5j
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVCQjFFNDNDOUMxMDA2MjFFOTIg
Lyogc3RydWN0c19GTFAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gc3RydWN0
c19GTFAuaDsgcGF0aCA9IHNpbGsvZmxvYXQvc3RydWN0c19GTFAuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNUNERDhFQkMxRTQzQzlDMTAwNjIxRTkyIC8qIHdhcnBlZF9hdXRvY29y
cmVsYXRpb25fRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHdhcnBlZF9h
dXRvY29ycmVsYXRpb25fRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L3dhcnBlZF9hdXRvY29ycmVs
YXRpb25fRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03MjA2LDE0ICs3MjE2
LDEyIEBACiAJCTVDREQ4RjEwMUU0M0NBRjkwMDYyMUU5MiAvKiBtYWluX0ZJWC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBtYWluX0ZJWC5oOyBwYXRoID0gc2lsay9maXhlZC9t
YWluX0ZJWC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEYxMjFFNDNDQUY5
MDA2MjFFOTIgLyogbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYLmMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuYzsgbmFtZSA9IG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWC5jOyBwYXRoID0gc2lsay9m
aXhlZC9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVguYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNUNERDhGMTMxRTQzQ0FGOTAwNjIxRTkyIC8qIHBpdGNoX2FuYWx5c2lzX2NvcmVfRklY
LmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHBpdGNoX2FuYWx5c2lzX2NvcmVf
RklYLmM7IHBhdGggPSBzaWxrL2ZpeGVkL3BpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTVDREQ4RjE0MUU0M0NBRjkwMDYyMUU5MiAvKiBwcmVm
aWx0ZXJfRklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHByZWZpbHRlcl9G
SVguYzsgcGF0aCA9IHNpbGsvZml4ZWQvcHJlZmlsdGVyX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk1Q0REOEYxNTFFNDNDQUY5MDA2MjFFOTIgLyogcHJvY2Vzc19nYWluc19G
SVguYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcHJvY2Vzc19nYWluc19GSVgu
YzsgcGF0aCA9IHNpbGsvZml4ZWQvcHJvY2Vzc19nYWluc19GSVguYzsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNUNERDhGMTYxRTQzQ0FGOTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29y
cmVsYXRpb25zX0ZJWC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSByZWd1bGFy
aXplX2NvcnJlbGF0aW9uc19GSVguYzsgcGF0aCA9IHNpbGsvZml4ZWQvcmVndWxhcml6ZV9jb3Jy
ZWxhdGlvbnNfRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjE3MUU0
M0NBRjkwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3lfRklYLmMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuYzsgbmFtZSA9IHJlc2lkdWFsX2VuZXJneV9GSVguYzsgcGF0aCA9IHNpbGsvZml4ZWQv
cmVzaWR1YWxfZW5lcmd5X0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0RE
OEYxODFFNDNDQUY5MDA2MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5MTZfRklYLmMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHJlc2lkdWFsX2VuZXJneTE2X0ZJWC5jOyBwYXRoID0g
c2lsay9maXhlZC9yZXNpZHVhbF9lbmVyZ3kxNl9GSVguYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNUNERDhGMTkxRTQzQ0FGOTAwNjIxRTkyIC8qIHNjaHVyX0ZJWC5jICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBzY2h1cl9GSVguYzsgcGF0aCA9IHNpbGsvZml4ZWQv
c2NodXJfRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjFBMUU0M0NB
RjkwMDYyMUU5MiAvKiBzY2h1cjY0X0ZJWC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5h
bWUgPSBzY2h1cjY0X0ZJWC5jOyBwYXRoID0gc2lsay9maXhlZC9zY2h1cjY0X0ZJWC5jOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1Q0REOEYxQjFFNDNDQUY5MDA2MjFFOTIgLyogc29s
dmVfTFNfRklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHNvbHZlX0xTX0ZJ
WC5jOyBwYXRoID0gc2lsay9maXhlZC9zb2x2ZV9MU19GSVguYzsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNUNERDhGMUMxRTQzQ0FGOTAwNjIxRTkyIC8qIHN0cnVjdHNfRklYLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IHN0cnVjdHNfRklYLmg7IHBhdGggPSBzaWxr
L2ZpeGVkL3N0cnVjdHNfRklYLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4
RjFEMUU0M0NBRjkwMDYyMUU5MiAvKiB2ZWN0b3Jfb3BzX0ZJWC5jICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmM7IG5hbWUgPSB2ZWN0b3Jfb3BzX0ZJWC5jOyBwYXRoID0gc2lsay9maXhlZC92ZWN0
b3Jfb3BzX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEYxRTFFNDND
QUY5MDA2MjFFOTIgLyogd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYyAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5jOyBuYW1lID0gd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYzsgcGF0aCA9
IHNpbGsvZml4ZWQvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYzsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKQEAgLTEzMDcyLDYgKzEzMDgwLDE0IEBACiAJCTVDREQ4RDEzMUU0M0M3NTUw
MDYyMUU5MiAvKiB4ODYgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0g
KAorCQkJCTQxMDBDREVDMjFDQUQxRjUwMEY5Qjg3RCAvKiBjZWx0X2xwY19zc2UuYyAqLywKKwkJ
CQk0MTAwQ0RGMDIxQ0FEMUY2MDBGOUI4N0QgLyogY2VsdF9scGNfc3NlLmggKi8sCisJCQkJNDEw
MENERUUyMUNBRDFGNjAwRjlCODdEIC8qIHBpdGNoX3NzZS5jICovLAorCQkJCTQxMDBDREYxMjFD
QUQxRjcwMEY5Qjg3RCAvKiBwaXRjaF9zc2UuaCAqLywKKwkJCQk0MTAwQ0RFRjIxQ0FEMUY2MDBG
OUI4N0QgLyogcGl0Y2hfc3NlMi5jICovLAorCQkJCTQxMDBDREVCMjFDQUQxRjUwMEY5Qjg3RCAv
KiBwaXRjaF9zc2U0XzEuYyAqLywKKwkJCQk0MTAwQ0RFODIxQ0FEMDMzMDBGOUI4N0QgLyogdnFf
c3NlLmggKi8sCisJCQkJNDEwMENERUQyMUNBRDFGNTAwRjlCODdEIC8qIHZxX3NzZTIuYyAqLywK
IAkJCQk1Q0REOEQxQTFFNDNDNzY0MDA2MjFFOTIgLyogeDg2X2NlbHRfbWFwLmMgKi8sCiAJCQkJ
NUNERDhEMUIxRTQzQzc2NDAwNjIxRTkyIC8qIHg4NmNwdS5jICovLAogCQkJCTVDREQ4RDFDMUU0
M0M3NjQwMDYyMUU5MiAvKiB4ODZjcHUuaCAqLywKQEAgLTEzMTI0LDYgKzEzMTQwLDcgQEAKIAkJ
CQk1Q0REOEQ4NTFFNDNDN0Q5MDA2MjFFOTIgLyogbG9nMmxpbi5jICovLAogCQkJCTVDREQ4RDg2
MUU0M0M3RDkwMDYyMUU5MiAvKiBMUF92YXJpYWJsZV9jdXRvZmYuYyAqLywKIAkJCQk1Q0REOEQ4
NzFFNDNDN0Q5MDA2MjFFOTIgLyogTFBDX2FuYWx5c2lzX2ZpbHRlci5jICovLAorCQkJCTQxMDBD
REU1MjFDQUNGRDAwMEY5Qjg3RCAvKiBMUENfZml0LmMgKi8sCiAJCQkJNUNERDhEODgxRTQzQzdE
OTAwNjIxRTkyIC8qIExQQ19pbnZfcHJlZF9nYWluLmMgKi8sCiAJCQkJNUNERDhEODkxRTQzQzdE
OTAwNjIxRTkyIC8qIE1hY3JvQ291bnQuaCAqLywKIAkJCQk1Q0REOEQ4QTFFNDNDN0Q5MDA2MjFF
OTIgLyogTWFjcm9EZWJ1Zy5oICovLApAQCAtMTMyMTYsNyArMTMyMzMsNiBAQAogCQkJCTVDREQ4
RUE2MUU0M0M5QzEwMDYyMUU5MiAvKiBmaW5kX3ByZWRfY29lZnNfRkxQLmMgKi8sCiAJCQkJNUNE
RDhFQTcxRTQzQzlDMTAwNjIxRTkyIC8qIGlubmVyX3Byb2R1Y3RfRkxQLmMgKi8sCiAJCQkJNUNE
RDhFQTgxRTQzQzlDMTAwNjIxRTkyIC8qIGsyYV9GTFAuYyAqLywKLQkJCQk1Q0REOEVBOTFFNDND
OUMxMDA2MjFFOTIgLyogbGV2aW5zb25kdXJiaW5fRkxQLmMgKi8sCiAJCQkJNUNERDhFQUExRTQz
QzlDMTAwNjIxRTkyIC8qIExQQ19hbmFseXNpc19maWx0ZXJfRkxQLmMgKi8sCiAJCQkJNUNERDhF
QUIxRTQzQzlDMTAwNjIxRTkyIC8qIExQQ19pbnZfcHJlZF9nYWluX0ZMUC5jICovLAogCQkJCTVD
REQ4RUFDMUU0M0M5QzEwMDYyMUU5MiAvKiBMVFBfYW5hbHlzaXNfZmlsdGVyX0ZMUC5jICovLApA
QCAtMTMyMjQsNyArMTMyNDAsNiBAQAogCQkJCTVDREQ4RUFFMUU0M0M5QzEwMDYyMUU5MiAvKiBt
YWluX0ZMUC5oICovLAogCQkJCTVDREQ4RUFGMUU0M0M5QzEwMDYyMUU5MiAvKiBub2lzZV9zaGFw
ZV9hbmFseXNpc19GTFAuYyAqLywKIAkJCQk1Q0REOEVCMDFFNDNDOUMxMDA2MjFFOTIgLyogcGl0
Y2hfYW5hbHlzaXNfY29yZV9GTFAuYyAqLywKLQkJCQk1Q0REOEVCMTFFNDNDOUMxMDA2MjFFOTIg
LyogcHJlZmlsdGVyX0ZMUC5jICovLAogCQkJCTVDREQ4RUIyMUU0M0M5QzEwMDYyMUU5MiAvKiBw
cm9jZXNzX2dhaW5zX0ZMUC5jICovLAogCQkJCTVDREQ4RUIzMUU0M0M5QzEwMDYyMUU5MiAvKiBy
ZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GTFAuYyAqLywKIAkJCQk1Q0REOEVCNDFFNDNDOUMxMDA2
MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5X0ZMUC5jICovLApAQCAtMTMyMzIsNyArMTMyNDcsNiBA
QAogCQkJCTVDREQ4RUI2MUU0M0M5QzEwMDYyMUU5MiAvKiBzY2FsZV92ZWN0b3JfRkxQLmMgKi8s
CiAJCQkJNUNERDhFQjcxRTQzQzlDMTAwNjIxRTkyIC8qIHNjaHVyX0ZMUC5jICovLAogCQkJCTVD
REQ4RUI4MUU0M0M5QzEwMDYyMUU5MiAvKiBTaWdQcm9jX0ZMUC5oICovLAotCQkJCTVDREQ4RUI5
MUU0M0M5QzEwMDYyMUU5MiAvKiBzb2x2ZV9MU19GTFAuYyAqLywKIAkJCQk1Q0REOEVCQTFFNDND
OUMxMDA2MjFFOTIgLyogc29ydF9GTFAuYyAqLywKIAkJCQk1Q0REOEVCQjFFNDNDOUMxMDA2MjFF
OTIgLyogc3RydWN0c19GTFAuaCAqLywKIAkJCQk1Q0REOEVCQzFFNDNDOUMxMDA2MjFFOTIgLyog
d2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GTFAuYyAqLywKQEAgLTEzMjYwLDE0ICsxMzI3NCwxMiBA
QAogCQkJCTVDREQ4RjEwMUU0M0NBRjkwMDYyMUU5MiAvKiBtYWluX0ZJWC5oICovLAogCQkJCTVD
REQ4RjEyMUU0M0NBRjkwMDYyMUU5MiAvKiBub2lzZV9zaGFwZV9hbmFseXNpc19GSVguYyAqLywK
IAkJCQk1Q0REOEYxMzFFNDNDQUY5MDA2MjFFOTIgLyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVgu
YyAqLywKLQkJCQk1Q0REOEYxNDFFNDNDQUY5MDA2MjFFOTIgLyogcHJlZmlsdGVyX0ZJWC5jICov
LAogCQkJCTVDREQ4RjE1MUU0M0NBRjkwMDYyMUU5MiAvKiBwcm9jZXNzX2dhaW5zX0ZJWC5jICov
LAogCQkJCTVDREQ4RjE2MUU0M0NBRjkwMDYyMUU5MiAvKiByZWd1bGFyaXplX2NvcnJlbGF0aW9u
c19GSVguYyAqLywKIAkJCQk1Q0REOEYxODFFNDNDQUY5MDA2MjFFOTIgLyogcmVzaWR1YWxfZW5l
cmd5MTZfRklYLmMgKi8sCiAJCQkJNUNERDhGMTcxRTQzQ0FGOTAwNjIxRTkyIC8qIHJlc2lkdWFs
X2VuZXJneV9GSVguYyAqLywKIAkJCQk1Q0REOEYxQTFFNDNDQUY5MDA2MjFFOTIgLyogc2NodXI2
NF9GSVguYyAqLywKIAkJCQk1Q0REOEYxOTFFNDNDQUY5MDA2MjFFOTIgLyogc2NodXJfRklYLmMg
Ki8sCi0JCQkJNUNERDhGMUIxRTQzQ0FGOTAwNjIxRTkyIC8qIHNvbHZlX0xTX0ZJWC5jICovLAog
CQkJCTVDREQ4RjFDMUU0M0NBRjkwMDYyMUU5MiAvKiBzdHJ1Y3RzX0ZJWC5oICovLAogCQkJCTVD
REQ4RjFEMUU0M0NBRjkwMDYyMUU5MiAvKiB2ZWN0b3Jfb3BzX0ZJWC5jICovLAogCQkJCTVDREQ4
RjFFMUU0M0NBRjkwMDYyMUU5MiAvKiB3YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jICovLApA
QCAtMTM3MjksNiArMTM3NDEsNyBAQAogCQkJCTVDREQ4RDMyMUU0M0M3OUMwMDYyMUU5MiAvKiBi
YW5kcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNERDhEMzgxRTQzQzc5QzAwNjIxRTkyIC8qIGNl
bHQuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDREQ4RDM2MUU0M0M3OUMwMDYyMUU5MiAvKiBjZWx0
X2xwYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDEwMENERjcyMUNBRDFGNzAwRjlCODdEIC8qIGNl
bHRfbHBjX3NzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNERDhFNDYxRTQzQzgwQzAwNjIxRTky
IC8qIGNvbnRyb2wuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDREQ4RDM5MUU0M0M3OUMwMDYyMUU5
MiAvKiBjcHVfc3VwcG9ydC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNERDhEM0IxRTQzQzc5QzAw
NjIxRTkyIC8qIGN3cnMuaCBpbiBIZWFkZXJzICovLApAQCAtMTM3NjIsNiArMTM3NzUsNyBAQAog
CQkJCTVDREQ4RDUxMUU0M0M3OUMwMDYyMUU5MiAvKiBvc19zdXBwb3J0LmggaW4gSGVhZGVycyAq
LywKIAkJCQk1Q0REOEQ1MzFFNDNDNzlDMDA2MjFFOTIgLyogcGl0Y2guaCBpbiBIZWFkZXJzICov
LAogCQkJCTVDREQ4RTcxMUU0M0M4MEMwMDYyMUU5MiAvKiBwaXRjaF9lc3RfZGVmaW5lcy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNDEwMENERjgyMUNBRDFGNzAwRjlCODdEIC8qIHBpdGNoX3NzZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJNUNERDhFNzQxRTQzQzgwQzAwNjIxRTkyIC8qIFBMQy5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJNUNERDhENTUxRTQzQzc5QzAwNjIxRTkyIC8qIHF1YW50X2JhbmRz
LmggaW4gSGVhZGVycyAqLywKIAkJCQk1Q0REOEQ1NzFFNDNDNzlDMDA2MjFFOTIgLyogcmF0ZS5o
IGluIEhlYWRlcnMgKi8sCkBAIC0xNTA3Nyw2ICsxNTA5MSw3IEBACiAJCQkJNDE3OTUzRUUyMTY5
ODQyMTAwMjgyNjZCIC8qIHZwOV9wcm9maWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQk1Q0REOEJG
NDFFNDNDMkI1MDA2MjFFOTIgLyogdnEzLmggaW4gSGVhZGVycyAqLywKIAkJCQk1Q0REOEJGNjFF
NDNDMkI1MDA2MjFFOTIgLyogdnE0LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTAwQ0RFQTIxQ0FE
MDM0MDBGOUI4N0QgLyogdnFfc3NlLmggaW4gSGVhZGVycyAqLywKIAkJCQk1QzRCNEM4MTFFNDMx
RjlDMDAyNjUxQzggLyogd2F2X2ZpbGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDNEI0Qzg0MUU0
MzFGOUMwMDI2NTFDOCAvKiB3YXZfaGVhZGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk0MUUwMkNC
RjIxMjczNTZBMDBDMjdDRDYgLyogd2Vha19wdHIuaCBpbiBIZWFkZXJzICovLApAQCAtMTU4MDks
NiArMTU4MjQsNyBAQAogCQkJCTVDREQ4RDMzMUU0M0M3OUMwMDYyMUU5MiAvKiBjZWx0X2RlY29k
ZXIuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RDM0MUU0M0M3OUMwMDYyMUU5MiAvKiBjZWx0
X2VuY29kZXIuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RDM1MUU0M0M3OUMwMDYyMUU5MiAv
KiBjZWx0X2xwYy5jIGluIFNvdXJjZXMgKi8sCisJCQkJNDEwMENERjMyMUNBRDFGNzAwRjlCODdE
IC8qIGNlbHRfbHBjX3NzZS5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFNDAxRTQzQzgwQzAw
NjIxRTkyIC8qIGNoZWNrX2NvbnRyb2xfaW5wdXQuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4
RTQxMUU0M0M4MEMwMDYyMUU5MiAvKiBDTkcuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTQy
MUU0M0M4MEMwMDYyMUU5MiAvKiBjb2RlX3NpZ25zLmMgaW4gU291cmNlcyAqLywKQEAgLTE1ODU2
LDcgKzE1ODcyLDYgQEAKIAkJCQk1Q0REOEY0NDFFNDNDQjFFMDA2MjFFOTIgLyogazJhX1ExNl9G
SVguYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RDQ2MUU0M0M3OUMwMDYyMUU5MiAvKiBraXNz
X2ZmdC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhENDgxRTQzQzc5QzAwNjIxRTkyIC8qIGxh
cGxhY2UuYyBpbiBTb3VyY2VzICovLAotCQkJCTVDREQ4RUVEMUU0M0M5RjYwMDYyMUU5MiAvKiBs
ZXZpbnNvbmR1cmJpbl9GTFAuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTVEMUU0M0M4MEMw
MDYyMUU5MiAvKiBsaW4ybG9nLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEU1RTFFNDNDODBD
MDA2MjFFOTIgLyogbG9nMmxpbi5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFNUYxRTQzQzgw
QzAwNjIxRTkyIC8qIExQX3ZhcmlhYmxlX2N1dG9mZi5jIGluIFNvdXJjZXMgKi8sCkBAIC0xNTg5
Nyw5ICsxNTkxMiwxMCBAQAogCQkJCTVDREQ4RjQ5MUU0M0NCMUUwMDYyMUU5MiAvKiBwaXRjaF9h
bmFseXNpc19jb3JlX0ZJWC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFRjQxRTQzQzlGNjAw
NjIxRTkyIC8qIHBpdGNoX2FuYWx5c2lzX2NvcmVfRkxQLmMgaW4gU291cmNlcyAqLywKIAkJCQk1
Q0REOEU3MjFFNDNDODBDMDA2MjFFOTIgLyogcGl0Y2hfZXN0X3RhYmxlcy5jIGluIFNvdXJjZXMg
Ki8sCisJCQkJNDEwMENERjUyMUNBRDFGNzAwRjlCODdEIC8qIHBpdGNoX3NzZS5jIGluIFNvdXJj
ZXMgKi8sCisJCQkJNDEwMENERjYyMUNBRDFGNzAwRjlCODdEIC8qIHBpdGNoX3NzZTIuYyBpbiBT
b3VyY2VzICovLAorCQkJCTQxMDBDREYyMjFDQUQxRjcwMEY5Qjg3RCAvKiBwaXRjaF9zc2U0XzEu
YyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTczMUU0M0M4MEMwMDYyMUU5MiAvKiBQTEMuYyBp
biBTb3VyY2VzICovLAotCQkJCTVDREQ4RjRBMUU0M0NCMUUwMDYyMUU5MiAvKiBwcmVmaWx0ZXJf
RklYLmMgaW4gU291cmNlcyAqLywKLQkJCQk1Q0REOEVGNTFFNDNDOUY2MDA2MjFFOTIgLyogcHJl
ZmlsdGVyX0ZMUC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhGNEIxRTQzQ0IxRTAwNjIxRTky
IC8qIHByb2Nlc3NfZ2FpbnNfRklYLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEVGNjFFNDND
OUY2MDA2MjFFOTIgLyogcHJvY2Vzc19nYWluc19GTFAuYyBpbiBTb3VyY2VzICovLAogCQkJCTVD
REQ4RTc1MUU0M0M4MEMwMDYyMUU5MiAvKiBwcm9jZXNzX05MU0ZzLmMgaW4gU291cmNlcyAqLywK
QEAgLTE1OTI3LDggKzE1OTQzLDYgQEAKIAkJCQk1Q0REOEVGQjFFNDNDOUY2MDA2MjFFOTIgLyog
c2NodXJfRkxQLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEU4MjFFNDNDODBDMDA2MjFFOTIg
Lyogc2hlbGxfY29kZXIuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTgzMUU0M0M4MEMwMDYy
MUU5MiAvKiBzaWdtX1ExNS5jIGluIFNvdXJjZXMgKi8sCi0JCQkJNUNERDhGNTExRTQzQ0IxRTAw
NjIxRTkyIC8qIHNvbHZlX0xTX0ZJWC5jIGluIFNvdXJjZXMgKi8sCi0JCQkJNUNERDhFRkQxRTQz
QzlGNjAwNjIxRTkyIC8qIHNvbHZlX0xTX0ZMUC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhF
ODUxRTQzQzgwQzAwNjIxRTkyIC8qIHNvcnQuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RUZF
MUU0M0M5RjYwMDYyMUU5MiAvKiBzb3J0X0ZMUC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhF
ODYxRTQzQzgwQzAwNjIxRTkyIC8qIHN0ZXJlb19kZWNvZGVfcHJlZC5jIGluIFNvdXJjZXMgKi8s
CkBAIC0xNTk1MCw2ICsxNTk2NCw3IEBACiAJCQkJNUM1RjQwOUExRTk3OEZEQjAwRDk0Mjc5IC8q
IFZBRF9zc2UuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RjUzMUU0M0NCMUUwMDYyMUU5MiAv
KiB2ZWN0b3Jfb3BzX0ZJWC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhENUIxRTQzQzc5QzAw
NjIxRTkyIC8qIHZxLmMgaW4gU291cmNlcyAqLywKKwkJCQk0MTAwQ0RGNDIxQ0FEMUY3MDBGOUI4
N0QgLyogdnFfc3NlMi5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFOUExRTQzQzgwQzAwNjIx
RTkyIC8qIFZRX1dNYXRfRUMuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDNUY0MDlCMUU5NzhGREIw
MEQ5NDI3OSAvKiBWUV9XTWF0X0VDX3NzZS5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhGNTQx
RTQzQ0IxRTAwNjIxRTkyIC8qIHdhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYLmMgaW4gU291cmNl
cyAqLywKQEAgLTE2NzE2LDYgKzE2NzMxLDcgQEAKIAkJCQk0MTkyNDEzRTIxMjczNzI0MDA2MzRG
Q0YgLyogbHBfcmVzaWR1YWwuY2MgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REODdDNTFFNDNCQzA1
MDA2MjFFOTIgLyogbHBjX2FuYWx5c2lzLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEJDMTFF
NDNDMkI1MDA2MjFFOTIgLyogbHBjX2VuY29kZS5jIGluIFNvdXJjZXMgKi8sCisJCQkJNDEwMENE
RTYyMUNBQ0ZEMDAwRjlCODdEIC8qIExQQ19maXQuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4
N0M3MUU0M0JDMDUwMDYyMUU5MiAvKiBscGNfZ2Fpbl9zd2JfdGFibGVzLmMgaW4gU291cmNlcyAq
LywKIAkJCQk0MTQzM0NFRTFGNzlCMzM0MDAzODdCNEQgLyogbHBjX21hc2tpbmdfbW9kZWwuYyBp
biBTb3VyY2VzICovLAogCQkJCTVDREQ4N0M5MUU0M0JDMDUwMDYyMUU5MiAvKiBscGNfc2hhcGVf
c3diMTJfdGFibGVzLmMgaW4gU291cmNlcyAqLywK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357709</attachid>
            <date>2018-12-19 12:34:17 -0800</date>
            <delta_ts>2018-12-20 16:20:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192867-20181219123414.patch</filename>
            <type>text/plain</type>
            <size>1687220</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5MjgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCAzMDhlNDQ3ZTlmODJiMjYxMTRiYThiMmM0ODhhOWUzOWY2MjQ1MDExLi44ZTRi
NjFkMDBjMGQ1MWMwY2NkNjA0NTAyOTlkNTIwZjk2Mzg5ZTcwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxOC0xMi0xOSAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzeW5jIG9wdXMgdG8gTTcyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI4NjcKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL29wdXMueGNjb25maWc6IFVwZGF0ZWQgY29tcGlsYXRpb24gZmxhZy4KKyAgICAgICAg
KiBTb3VyY2UvdGhpcmRfcGFydHkvb3B1czogUmVzeW5jZWQgdG8gQ2hyb21lIE03MiBicmFuY2gu
CisKIDIwMTgtMTItMTkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFJlZnJlc2ggbGlieXV2IHRvIE03MgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL0NvbmZpZ3VyYXRpb25zL29wdXMueGNjb25maWcgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvb3B1cy54Y2NvbmZpZwppbmRleCBkMDU4Yzc2NDA2
YWI0Mzg3NjU3NjdhZjFhMTg4MzYzOWJhOGZiOWNmLi43N2YzNGZmNzZiNzk4YzFiNTRjYzY0NTNl
ZWE3MzU5M2FkMzU2NGUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
Q29uZmlndXJhdGlvbnMvb3B1cy54Y2NvbmZpZworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvQ29uZmlndXJhdGlvbnMvb3B1cy54Y2NvbmZpZwpAQCAtMTMsMTEgKzEzLDEyIEBAIElO
U1RBTExfUEFUSCA9IC91c3IvbG9jYWwvbGliOwogUFVCTElDX0hFQURFUlNfRk9MREVSX1BBVEgg
PSAvdXNyL2xvY2FsL2luY2x1ZGUvbGlid2VicnRjOwogVVNFX0hFQURFUk1BUCA9IE5POwogV0FS
TklOR19DRkxBR1MgPSAtV25vLWluY29tcGF0aWJsZS1wb2ludGVyLXR5cGVzICQoaW5oZXJpdGVk
KQotR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9IFZBUl9BUlJBWVMgT1BVU19CVUlMRCBP
UFVTX0VYUE9SVD0gSEFWRV9MUklOVCBIQVZFX0xSSU5URiBPUFVTX1g4Nl9NQVlfSEFWRV9TU0Uy
ICQoaW5oZXJpdGVkKTsKK0dDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSBWQVJfQVJSQVlT
IE9QVVNfQlVJTEQgT1BVU19FWFBPUlQ9IEhBVkVfTFJJTlQgSEFWRV9MUklOVEYgT1BVU19YODZf
TUFZX0hBVkVfU1NFMiBPUFVTX1g4Nl9QUkVTVU1FX1NTRTIgJChpbmhlcml0ZWQpOwogR0NDX1BS
RVBST0NFU1NPUl9ERUZJTklUSU9OU1thcmNoPWFybTY0Kl0gPSAkKGluaGVyaXRlZCkgT1BVU19B
Uk1fUFJFU1VNRV9BQVJDSDY0X05FT05fSU5UUjsKIEdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElP
TlNbYXJjaD14ODZfNjRdID0gJChpbmhlcml0ZWQpICQoU1NFNF9GTEFHKTsKIAotRVhDTFVERURf
U09VUkNFX0ZJTEVfTkFNRVNbc2RrPWlwaG9uZSpdID0gKl9zc2UuYyAqX3NzZTIuYzsKK0VYQ0xV
REVEX1NPVVJDRV9GSUxFX05BTUVTW3Nkaz1pcGhvbmVzaW11bGF0b3IqXSA9ICpfc3NlLmMgKl9z
c2U0XzEuYyB4ODZfc2lsa19tYXAuYzsKK0VYQ0xVREVEX1NPVVJDRV9GSUxFX05BTUVTW3Nkaz1p
cGhvbmVvcypdID0gKl9zc2UuYyAqX3NzZTIuYyAqX3NzZTRfMS5jIHg4Nl9zaWxrX21hcC5jOwog
RVhDTFVERURfU09VUkNFX0ZJTEVfTkFNRVNbc2RrPW1hY29zeCpdID0gJChFWENMVURFRF9TT1VS
Q0VfRklMRV9OQU1FU19tYWNvc3hfJChUQVJHRVRfTUFDX09TX1hfVkVSU0lPTl9NQUpPUikpOwog
CiAvLyBUaGUgaU9TIFNpbXVsYXRvciBjYW4ndCB1c2UgU1NFNCBpbnRyaW5zaWNzLCBidXQgbWFj
T1MgY2FuLgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL0JVSUxELmduIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL0JVSUxELmduCmluZGV4IDNiYjVlMGRmNDk5ZTkyYzI2OWZm
ODQ1MzYzMzNmYmY3YWE0NWJhMjUuLmI1NGY4NTY4ODIzMGUzYjE3YzFhZGZlMDEzMGU4NWZhZDQ5
ZTBhMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9CVUlMRC5nbgorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvQlVJTEQuZ24KQEAgLTksMTIgKzksMTkgQEAgaW1wb3J0
KCIvL3Rlc3RpbmcvdGVzdC5nbmkiKQogdXNlX29wdXNfZml4ZWRfcG9pbnQgPSBjdXJyZW50X2Nw
dSA9PSAiYXJtIiB8fCBjdXJyZW50X2NwdSA9PSAiYXJtNjQiCiAKICMgSWYgQVJNIG9wdGltaXph
dGlvbnMgc2hhbGwgYmUgdXNlZCB0byBhY2NlbGVyYXRlIHBlcmZvcm1hbmNlLgotdXNlX29wdXNf
YXJtX29wdGltaXphdGlvbiA9IGN1cnJlbnRfY3B1ID09ICJhcm0iCisjIFRPRE8oc2NvdHRtZyk6
IERpc2FibGVkIG9uIEZ1Y2hzaWEgZm9yIG5vdywgc2VlIGh0dHBzOi8vY3JidWcuY29tLzc3NTI3
Mi4KK3VzZV9vcHVzX2FybV9vcHRpbWl6YXRpb24gPQorICAgIGN1cnJlbnRfY3B1ID09ICJhcm0i
IHx8IChjdXJyZW50X2NwdSA9PSAiYXJtNjQiICYmIGlzX2lvcykKKworIyBOYUNsLCB1bmxpa2Ug
Q2hyb21lLCBkb2Vzbid0IHRhcmdldCBTU0UyIG1pbmltdW0sIHNvIHNraXAgb3B0aW1pemF0aW9u
cyBmb3IKKyMgdGhlIHNha2Ugb2Ygc2ltcGxpY2l0eS4KK3VzZV9vcHVzX3g4Nl9vcHRpbWl6YXRp
b24gPQorICAgICFpc19uYWNsICYmIChjdXJyZW50X2NwdSA9PSAieDg2IiB8fCBjdXJyZW50X2Nw
dSA9PSAieDY0IikKIAogIyBJZiBPUFVTIFJ1biBUaW1lIENQVSBEZXRlY3Rpb25zIChSVENEKSBz
aGFsbCBiZSB1c2VkLgogIyBCYXNlZCBvbiB0aGUgY29uZGl0aW9ucyBpbiBjZWx0L2FybS9hcm1j
cHUuYzoKICMgZGVmaW5lZChfTVNDX1ZFUikgfHwgZGVmaW5lZChfX2xpbnV4X18pLgotdXNlX29w
dXNfcnRjZCA9IGN1cnJlbnRfY3B1ID09ICJhcm0iICYmIChpc193aW4gfHwgaXNfYW5kcm9pZCB8
fCBpc19saW51eCkKK3VzZV9vcHVzX2FybV9ydGNkID0gY3VycmVudF9jcHUgPT0gImFybSIgJiYg
KGlzX3dpbiB8fCBpc19hbmRyb2lkIHx8IGlzX2xpbnV4KQogCiBjb25maWcoIm9wdXNfY29uZmln
IikgewogICBpbmNsdWRlX2RpcnMgPSBbICJzcmMvaW5jbHVkZSIgXQpAQCAtMjQsNiArMzEsMTA2
IEBAIGNvbmZpZygib3B1c19jb25maWciKSB7CiAgIH0KIH0KIAorY29uZmlnKCJvcHVzX3ByaXZh
dGVfY29uZmlnIikgeworICBkZWZpbmVzID0gWworICAgICJPUFVTX0JVSUxEIiwKKyAgICAiT1BV
U19FWFBPUlQ9IiwKKworICAgICMgUHJlZmVyIGFsbG9jYSgpIG92ZXIgdmFyaWFibGUgbGVuZ3Ro
IGFycmF5cyB3aGljaCBhcmUgb2Z0ZW4gaW5lZmZpY2llbnQ7CisgICAgIyB0aGUgb3B1cyBjb2Rl
IHdpbGwgYXV0b21hdGljYWxseSBoYW5kbGUgdGhpcyBjb3JyZWN0bHkgcGVyLXBsYXRmb3JtLgor
ICAgICJVU0VfQUxMT0NBIiwKKyAgICAiSEFWRV9BTExPQ0FfSCIsCisgIF0KKworICBpbmNsdWRl
X2RpcnMgPSBbCisgICAgInNyYyIsCisgICAgInNyYy9jZWx0IiwKKyAgICAic3JjL3NpbGsiLAor
ICBdCisKKyAgY2ZsYWdzID0gW10KKworICBpZiAoaXNfd2luKSB7CisgICAgZGVmaW5lcyArPSBb
ICJpbmxpbmU9X19pbmxpbmUiIF0KKworICAgIGNmbGFncyArPSBbCisgICAgICAiL3dkNDMwNSIs
ICAjIERpc2FibGUgdHJ1bmNhdGlvbiB3YXJuaW5nIGluIGNlbHQvcGl0Y2guYyAuCisgICAgICAi
L3dkNDMzNCIsICAjIERpc2FibGUgMzItYml0IHNoaWZ0IHdhcm5pbmcgaW4gc3JjL29wdXNfZW5j
b2Rlci5jIC4KKyAgICBdCisgIH0gZWxzZSB7CisgICAgZGVmaW5lcyArPSBbCisgICAgICAiSEFW
RV9MUklOVCIsCisgICAgICAiSEFWRV9MUklOVEYiLAorICAgIF0KKyAgfQorCisgIGlmIChpc19k
ZWJ1ZykgeworICAgICMgVHVybiBvZmYgYSB3YXJuaW5nIGluIG9wdXNfZGVjb2Rlci5jIHdoZW4g
Y29tcGlsaW5nIHdpdGhvdXQgb3B0aW1pemF0aW9uLgorICAgIGRlZmluZXMgKz0gWyAiT1BVU19X
SUxMX0JFX1NMT1ciIF0KKyAgfQorCisgIGlmICh1c2Vfb3B1c194ODZfb3B0aW1pemF0aW9uKSB7
CisgICAgZGVmaW5lcyArPSBbCisgICAgICAjIFJ1biBUaW1lIENQVSBEZXRlY3Rpb25zIChSVENE
KSBpcyBhbHdheXMgZW5hYmxlZCBmb3IgeDg2LgorICAgICAgIk9QVVNfSEFWRV9SVENEIiwKKyAg
ICAgICJDUFVfSU5GT19CWV9BU00iLAorCisgICAgICAjIENocm9tZSBhbHdheXMgdGFyZ2V0cyBT
U0UyKy4KKyAgICAgICJPUFVTX1g4Nl9NQVlfSEFWRV9TU0UiLAorICAgICAgIk9QVVNfWDg2X01B
WV9IQVZFX1NTRTIiLAorICAgICAgIk9QVVNfWDg2X1BSRVNVTUVfU1NFIiwKKyAgICAgICJPUFVT
X1g4Nl9QUkVTVU1FX1NTRTIiLAorCisgICAgICAjIFNvbWUgc3lzdGVtcyBtYXkgaGF2ZSBTU0U0
LjErIHN1cHBvcnQuCisgICAgICAiT1BVU19YODZfTUFZX0hBVkVfU1NFNF8xIiwKKworICAgICAg
IyBBdCBwcmVzZW50IGxpYm9wdXMgaGFzIG5vIEFWWCBmdW5jdGlvbnMgc28gbm8gc291cmNlcyBh
cmUgYWRkIGZvciB0aGlzLAorICAgICAgIyBpZiB5b3Ugc2VlIGxpbmtlciBlcnJvcnMgb24gQVZY
IGNvZGUgdGhlIHRoaXMgZmxhZyBpcyB3aHkuCisgICAgICAiT1BVU19YODZfTUFZX0hBVkVfQVZY
IiwKKyAgICBdCisgIH0KKworICBpZiAodXNlX29wdXNfZml4ZWRfcG9pbnQpIHsKKyAgICBkZWZp
bmVzICs9IFsgIkZJWEVEX1BPSU5UIiBdCisgICAgaW5jbHVkZV9kaXJzICs9IFsgInNyYy9zaWxr
L2ZpeGVkIiBdCisgIH0gZWxzZSB7CisgICAgaW5jbHVkZV9kaXJzICs9IFsgInNyYy9zaWxrL2Zs
b2F0IiBdCisgIH0KKworICBpZiAodXNlX29wdXNfYXJtX29wdGltaXphdGlvbikgeworICAgIGlm
IChjdXJyZW50X2NwdSA9PSAiYXJtIikgeworICAgICAgZGVmaW5lcyArPSBbCisgICAgICAgICJP
UFVTX0FSTV9BU00iLAorICAgICAgICAiT1BVU19BUk1fSU5MSU5FX0FTTSIsCisgICAgICAgICJP
UFVTX0FSTV9JTkxJTkVfRURTUCIsCisgICAgICBdCisgICAgfQorCisgICAgaWYgKHVzZV9vcHVz
X2FybV9ydGNkKSB7CisgICAgICBkZWZpbmVzICs9IFsKKyAgICAgICAgIk9QVVNfQVJNX01BWV9I
QVZFX0VEU1AiLAorICAgICAgICAiT1BVU19BUk1fTUFZX0hBVkVfTUVESUEiLAorICAgICAgICAi
T1BVU19IQVZFX1JUQ0QiLAorICAgICAgXQorICAgIH0KKworICAgIGlmIChhcm1fdXNlX25lb24p
IHsKKyAgICAgIGRlZmluZXMgKz0gWworICAgICAgICAiT1BVU19BUk1fTUFZX0hBVkVfTkVPTiIs
CisgICAgICAgICJPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIiLAorICAgICAgXQorICAgIH0K
KworICAgIGlmIChpc19pb3MgJiYgY3VycmVudF9jcHUgPT0gImFybTY0IikgeworICAgICAgIyBS
dW50aW1lIGRldGVjdGlvbiBvZiBDUFUgZmVhdHVyZXMgbm90IGF2YWlsYWJsZSBvbiBpT1MuCisg
ICAgICBkZWZpbmVzICs9IFsKKyAgICAgICAgIk9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSIiwK
KyAgICAgICAgIk9QVVNfQVJNX1BSRVNVTUVfQUFSQ0g2NF9ORU9OX0lOVFIiLAorICAgICAgXQor
ICAgIH0KKyAgfQorfQorCiBjb25maWcoIm9wdXNfdGVzdF9jb25maWciKSB7CiAgIGluY2x1ZGVf
ZGlycyA9IFsKICAgICAic3JjL2NlbHQiLApAQCAtNDEsNyArMTQ4LDcgQEAgY29uZmlnKCJvcHVz
X3Rlc3RfY29uZmlnIikgewogICB9CiB9CiAKLWlmICh1c2Vfb3B1c19ydGNkKSB7CitpZiAodXNl
X29wdXNfYXJtX3J0Y2QpIHsKICAgYWN0aW9uKCJjb252ZXJ0X3J0Y2RfYXNzZW1ibGVyIikgewog
ICAgIHNjcmlwdCA9ICJjb252ZXJ0X3J0Y2RfYXNzZW1ibGVyLnB5IgogICAgIG91dHB1dHMgPSBb
CkBAIC01Niw2ICsxNjMsMzEgQEAgaWYgKHVzZV9vcHVzX3J0Y2QpIHsKICAgfQogfQogCitpZiAo
dXNlX29wdXNfeDg2X29wdGltaXphdGlvbikgeworICBzb3VyY2Vfc2V0KCJvcHVzX3NzZTQxIikg
eworICAgIHNvdXJjZXMgPSBbCisgICAgICAic3JjL2NlbHQveDg2L3BpdGNoX3NzZTRfMS5jIiwK
KyAgICAgICJzcmMvc2lsay94ODYvTlNRX2RlbF9kZWNfc3NlLmMiLAorICAgICAgInNyYy9zaWxr
L3g4Ni9OU1Ffc3NlLmMiLAorICAgICAgInNyYy9zaWxrL3g4Ni9WQURfc3NlLmMiLAorICAgIF0K
KworICAgIGNvbmZpZ3MgLT0gWyAiLy9idWlsZC9jb25maWcvY29tcGlsZXI6Y2hyb21pdW1fY29k
ZSIgXQorICAgIGNvbmZpZ3MgKz0gWyAiLy9idWlsZC9jb25maWcvY29tcGlsZXI6bm9fY2hyb21p
dW1fY29kZSIgXQorICAgIGNvbmZpZ3MgKz0gWworICAgICAgIjpvcHVzX3ByaXZhdGVfY29uZmln
IiwKKyAgICAgICI6b3B1c19jb25maWciLAorICAgIF0KKworICAgIGlmICghaXNfd2luIHx8IGlz
X2NsYW5nKSB7CisgICAgICBjZmxhZ3MgPSBbICItbXNzZTQuMSIgXQorICAgIH0KKyAgfQorICAj
IFRPRE8oZGFsZWN1cnRpcyk6IElmIGxpYm9wdXMgZXZlciBhZGRzIEFWWCBzdXBwb3J0LCBhZGQg
YW4gb3B1c19hdnggYmxvY2suCit9CisKKyMgTm90ZTogRG8gbm90IGFkZCBhbnkgZGVmaW5lcyBv
ciBpbmNsdWRlX2RpcnMgdG8gdGhpcyB0YXJnZXQsIHRob3NlIHNob3VsZCBhbGwKKyMgZ28gaW4g
dGhlIG9wdXNfcHJpdmF0ZV9jb25maWcgc28gdGhleSBjYW4gYmUgc2hhcmVkIHdpdGggaW50cmlu
c2ljIHRhcmdldHMuCiBzdGF0aWNfbGlicmFyeSgib3B1cyIpIHsKICAgc291cmNlcyA9IFsKICAg
ICAic3JjL2NlbHQvX2tpc3NfZmZ0X2d1dHMuaCIsCkBAIC0xMTUsNiArMjQ3LDcgQEAgc3RhdGlj
X2xpYnJhcnkoIm9wdXMiKSB7CiAgICAgInNyYy9zaWxrL0hQX3ZhcmlhYmxlX2N1dG9mZi5jIiwK
ICAgICAic3JjL3NpbGsvSW5saW5lcy5oIiwKICAgICAic3JjL3NpbGsvTFBDX2FuYWx5c2lzX2Zp
bHRlci5jIiwKKyAgICAic3JjL3NpbGsvTFBDX2ZpdC5jIiwKICAgICAic3JjL3NpbGsvTFBDX2lu
dl9wcmVkX2dhaW4uYyIsCiAgICAgInNyYy9zaWxrL0xQX3ZhcmlhYmxlX2N1dG9mZi5jIiwKICAg
ICAic3JjL3NpbGsvTWFjcm9Db3VudC5oIiwKQEAgLTIyMSw0NyArMzU0LDE0IEBAIHN0YXRpY19s
aWJyYXJ5KCJvcHVzIikgewogICAgICJzcmMvc3JjL3RhbnNpZ190YWJsZS5oIiwKICAgXQogCi0g
IGRlZmluZXMgPSBbCi0gICAgIk9QVVNfQlVJTEQiLAotICAgICJPUFVTX0VYUE9SVD0iLAotICBd
Ci0KLSAgaW5jbHVkZV9kaXJzID0gWwotICAgICJzcmMvY2VsdCIsCi0gICAgInNyYy9zaWxrIiwK
LSAgXQotCiAgIGNvbmZpZ3MgLT0gWyAiLy9idWlsZC9jb25maWcvY29tcGlsZXI6Y2hyb21pdW1f
Y29kZSIgXQotICBjb25maWdzICs9IFsgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVyOm5vX2Nocm9t
aXVtX2NvZGUiIF0KKyAgY29uZmlncyArPSBbCisgICAgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVy
Om5vX2Nocm9taXVtX2NvZGUiLAorICAgICI6b3B1c19wcml2YXRlX2NvbmZpZyIsCisgIF0KICAg
cHVibGljX2NvbmZpZ3MgPSBbICI6b3B1c19jb25maWciIF0KLSAgY2ZsYWdzID0gW10KLQotICBp
ZiAoaXNfd2luKSB7Ci0gICAgZGVmaW5lcyArPSBbCi0gICAgICAiVVNFX0FMTE9DQSIsCi0gICAg
ICAiaW5saW5lPV9faW5saW5lIiwKLSAgICBdCiAKLSAgICBjZmxhZ3MgKz0gWwotICAgICAgIi93
ZDQzMDUiLCAgIyBEaXNhYmxlIHRydW5jYXRpb24gd2FybmluZyBpbiBjZWx0L3BpdGNoLmMgLgot
ICAgICAgIi93ZDQzMzQiLCAgIyBEaXNhYmxlIDMyLWJpdCBzaGlmdCB3YXJuaW5nIGluIHNyYy9v
cHVzX2VuY29kZXIuYyAuCi0gICAgXQotICB9IGVsc2UgewotICAgIGRlZmluZXMgKz0gWwotICAg
ICAgIkhBVkVfTFJJTlQiLAotICAgICAgIkhBVkVfTFJJTlRGIiwKLSAgICAgICJWQVJfQVJSQVlT
IiwKLSAgICBdCi0gIH0KLQotICBpZiAoaXNfcG9zaXggJiYgIWlzX2FuZHJvaWQpIHsKLSAgICAj
IFN1cHByZXNzIGEgd2FybmluZyBnaXZlbiBieSBvcHVzX2RlY29kZXIuYyB0aGF0IHRlbGxzIHVz
Ci0gICAgIyBvcHRpbWl6YXRpb25zIGFyZSB0dXJuZWQgb2ZmLgotICAgIGNmbGFncyArPSBbICIt
V25vLSNwcmFnbWEtbWVzc2FnZXMiIF0KLSAgfQotCi0gIGlmICghaXNfZGVidWcgJiYgaXNfcG9z
aXggJiYKLSAgICAgIChjdXJyZW50X2NwdSA9PSAiYXJtIiB8fCBjdXJyZW50X2NwdSA9PSAiYXJt
NjQiKSkgeworICBpZiAoIWlzX2RlYnVnICYmIChjdXJyZW50X2NwdSA9PSAiYXJtIiB8fCBjdXJy
ZW50X2NwdSA9PSAiYXJtNjQiKSkgewogICAgIGNvbmZpZ3MgLT0gWyAiLy9idWlsZC9jb25maWcv
Y29tcGlsZXI6ZGVmYXVsdF9vcHRpbWl6YXRpb24iIF0KIAogICAgICMgVE9ETyhjcmJ1Zy5jb20v
NjIxMzM1KSBSZXdvcmsgdGhpcyBzbyB0aGF0IHdlIGRvbid0IGhhdmUgdGhlIGNvbmZ1c2lvbgpA
QCAtMjY5LDYgKzM2OSwyNiBAQCBzdGF0aWNfbGlicmFyeSgib3B1cyIpIHsKICAgICBjb25maWdz
ICs9IFsgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVyOm9wdGltaXplX3NwZWVkIiBdCiAgIH0KIAor
ICBkZXBzID0gW10KKworICBpZiAodXNlX29wdXNfeDg2X29wdGltaXphdGlvbikgeworICAgIHNv
dXJjZXMgKz0gWworICAgICAgInNyYy9jZWx0L3g4Ni9jZWx0X2xwY19zc2UuaCIsCisgICAgICAi
c3JjL2NlbHQveDg2L3BpdGNoX3NzZS5jIiwKKyAgICAgICJzcmMvY2VsdC94ODYvcGl0Y2hfc3Nl
LmgiLAorICAgICAgInNyYy9jZWx0L3g4Ni9waXRjaF9zc2UyLmMiLAorICAgICAgInNyYy9jZWx0
L3g4Ni92cV9zc2UuaCIsCisgICAgICAic3JjL2NlbHQveDg2L3ZxX3NzZTIuYyIsCisgICAgICAi
c3JjL2NlbHQveDg2L3g4Nl9jZWx0X21hcC5jIiwKKyAgICAgICJzcmMvY2VsdC94ODYveDg2Y3B1
LmMiLAorICAgICAgInNyYy9jZWx0L3g4Ni94ODZjcHUuaCIsCisgICAgICAic3JjL3NpbGsveDg2
L1NpZ1Byb2NfRklYX3NzZS5oIiwKKyAgICAgICJzcmMvc2lsay94ODYvbWFpbl9zc2UuaCIsCisg
ICAgICAic3JjL3NpbGsveDg2L3g4Nl9zaWxrX21hcC5jIiwKKyAgICBdCisgICAgZGVwcyArPSBb
ICI6b3B1c19zc2U0MSIgXQorICB9CisKICAgaWYgKHVzZV9vcHVzX2ZpeGVkX3BvaW50KSB7CiAg
ICAgc291cmNlcyArPSBbCiAgICAgICAic3JjL3NpbGsvZml4ZWQvTFRQX2FuYWx5c2lzX2ZpbHRl
cl9GSVguYyIsCkBAIC0yODcsMjIgKzQwNywxNiBAQCBzdGF0aWNfbGlicmFyeSgib3B1cyIpIHsK
ICAgICAgICJzcmMvc2lsay9maXhlZC9tYWluX0ZJWC5oIiwKICAgICAgICJzcmMvc2lsay9maXhl
ZC9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvcGl0
Y2hfYW5hbHlzaXNfY29yZV9GSVguYyIsCi0gICAgICAic3JjL3NpbGsvZml4ZWQvcHJlZmlsdGVy
X0ZJWC5jIiwKICAgICAgICJzcmMvc2lsay9maXhlZC9wcm9jZXNzX2dhaW5zX0ZJWC5jIiwKICAg
ICAgICJzcmMvc2lsay9maXhlZC9yZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GSVguYyIsCiAgICAg
ICAic3JjL3NpbGsvZml4ZWQvcmVzaWR1YWxfZW5lcmd5MTZfRklYLmMiLAogICAgICAgInNyYy9z
aWxrL2ZpeGVkL3Jlc2lkdWFsX2VuZXJneV9GSVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQv
c2NodXI2NF9GSVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvc2NodXJfRklYLmMiLAotICAg
ICAgInNyYy9zaWxrL2ZpeGVkL3NvbHZlX0xTX0ZJWC5jIiwKICAgICAgICJzcmMvc2lsay9maXhl
ZC9zdHJ1Y3RzX0ZJWC5oIiwKICAgICAgICJzcmMvc2lsay9maXhlZC92ZWN0b3Jfb3BzX0ZJWC5j
IiwKICAgICAgICJzcmMvc2lsay9maXhlZC93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jIiwK
ICAgICBdCi0KLSAgICBkZWZpbmVzICs9IFsgIkZJWEVEX1BPSU5UIiBdCi0KLSAgICBpbmNsdWRl
X2RpcnMgKz0gWyAic3JjL3NpbGsvZml4ZWQiIF0KICAgfSBlbHNlIHsKICAgICBzb3VyY2VzICs9
IFsKICAgICAgICJzcmMvc2lsay9mbG9hdC9MUENfYW5hbHlzaXNfZmlsdGVyX0ZMUC5jIiwKQEAg
LTMyMywyNSArNDM3LDIwIEBAIHN0YXRpY19saWJyYXJ5KCJvcHVzIikgewogICAgICAgInNyYy9z
aWxrL2Zsb2F0L2ZpbmRfcHJlZF9jb2Vmc19GTFAuYyIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQv
aW5uZXJfcHJvZHVjdF9GTFAuYyIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvazJhX0ZMUC5jIiwK
LSAgICAgICJzcmMvc2lsay9mbG9hdC9sZXZpbnNvbmR1cmJpbl9GTFAuYyIsCiAgICAgICAic3Jj
L3NpbGsvZmxvYXQvbWFpbl9GTFAuaCIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvbm9pc2Vfc2hh
cGVfYW5hbHlzaXNfRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L3BpdGNoX2FuYWx5c2lz
X2NvcmVfRkxQLmMiLAotICAgICAgInNyYy9zaWxrL2Zsb2F0L3ByZWZpbHRlcl9GTFAuYyIsCiAg
ICAgICAic3JjL3NpbGsvZmxvYXQvcHJvY2Vzc19nYWluc19GTFAuYyIsCiAgICAgICAic3JjL3Np
bGsvZmxvYXQvcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRkxQLmMiLAogICAgICAgInNyYy9zaWxr
L2Zsb2F0L3Jlc2lkdWFsX2VuZXJneV9GTFAuYyIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvc2Nh
bGVfY29weV92ZWN0b3JfRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L3NjYWxlX3ZlY3Rv
cl9GTFAuYyIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvc2NodXJfRkxQLmMiLAotICAgICAgInNy
Yy9zaWxrL2Zsb2F0L3NvbHZlX0xTX0ZMUC5jIiwKICAgICAgICJzcmMvc2lsay9mbG9hdC9zb3J0
X0ZMUC5jIiwKICAgICAgICJzcmMvc2lsay9mbG9hdC9zdHJ1Y3RzX0ZMUC5oIiwKICAgICAgICJz
cmMvc2lsay9mbG9hdC93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZMUC5jIiwKICAgICAgICJzcmMv
c2lsay9mbG9hdC93cmFwcGVyc19GTFAuYyIsCiAgICAgXQotCi0gICAgaW5jbHVkZV9kaXJzICs9
IFsgInNyYy9zaWxrL2Zsb2F0IiBdCiAgIH0KIAogICBpZiAodXNlX29wdXNfYXJtX29wdGltaXph
dGlvbikgewpAQCAtMzU5LDM5ICs0NjgsMzQgQEAgc3RhdGljX2xpYnJhcnkoIm9wdXMiKSB7CiAg
ICAgICAic3JjL3NpbGsvYXJtL21hY3Jvc19hcm12NWUuaCIsCiAgICAgXQogCi0gICAgZGVmaW5l
cyArPSBbCi0gICAgICAiT1BVU19BUk1fQVNNIiwKLSAgICAgICJPUFVTX0FSTV9JTkxJTkVfQVNN
IiwKLSAgICAgICJPUFVTX0FSTV9JTkxJTkVfRURTUCIsCi0gICAgXQotCi0gICAgaWYgKHVzZV9v
cHVzX3J0Y2QpIHsKKyAgICBpZiAodXNlX29wdXNfYXJtX3J0Y2QpIHsKICAgICAgIHNvdXJjZXMg
Kz0gWwogICAgICAgICAiJHRhcmdldF9nZW5fZGlyL2NlbHRfcGl0Y2hfeGNvcnJfYXJtX2dudS5T
IiwKICAgICAgICAgInNyYy9jZWx0L2FybS9hcm1fY2VsdF9tYXAuYyIsCiAgICAgICAgICJzcmMv
Y2VsdC9hcm0vYXJtY3B1LmMiLAogICAgICAgICAic3JjL2NlbHQvYXJtL2FybWNwdS5oIiwKLSAg
ICAgICAgInNyYy9jZWx0L2FybS9jZWx0X25lb25faW50ci5jIiwKICAgICAgICAgInNyYy9jZWx0
L2FybS9mZnRfYXJtLmgiLAogICAgICAgICAic3JjL2NlbHQvYXJtL21kY3RfYXJtLmgiLAogICAg
ICAgICAic3JjL2NlbHQvYXJtL3BpdGNoX2FybS5oIiwKLSAgICAgICAgInNyYy9zaWxrL2FybS9O
U1FfbmVvbi5jIiwKLSAgICAgICAgInNyYy9zaWxrL2FybS9OU1FfbmVvbi5oIiwKICAgICAgICAg
InNyYy9zaWxrL2FybS9hcm1fc2lsa19tYXAuYyIsCiAgICAgICBdCisgICAgICBkZXBzICs9IFsg
Ijpjb252ZXJ0X3J0Y2RfYXNzZW1ibGVyIiBdCisgICAgfQogCi0gICAgICBpbmNsdWRlX2RpcnMg
Kz0gWyAic3JjIiBdCi0KLSAgICAgIGRlZmluZXMgKz0gWwotICAgICAgICAiT1BVU19BUk1fTUFZ
X0hBVkVfRURTUCIsCi0gICAgICAgICJPUFVTX0FSTV9NQVlfSEFWRV9NRURJQSIsCi0gICAgICAg
ICJPUFVTX0FSTV9NQVlfSEFWRV9ORU9OIiwKLSAgICAgICAgIk9QVVNfQVJNX01BWV9IQVZFX05F
T05fSU5UUiIsCi0gICAgICAgICJPUFVTX0hBVkVfUlRDRCIsCi0gICAgICBdCi0KLSAgICAgIGRl
cHMgPSBbCi0gICAgICAgICI6Y29udmVydF9ydGNkX2Fzc2VtYmxlciIsCisgICAgaWYgKGFybV91
c2VfbmVvbikgeworICAgICAgc291cmNlcyArPSBbCisgICAgICAgICJzcmMvY2VsdC9hcm0vY2Vs
dF9uZW9uX2ludHIuYyIsCisgICAgICAgICJzcmMvY2VsdC9hcm0vcGl0Y2hfbmVvbl9pbnRyLmMi
LAorICAgICAgICAic3JjL3NpbGsvYXJtL0xQQ19pbnZfcHJlZF9nYWluX2FybS5oIiwKKyAgICAg
ICAgInNyYy9zaWxrL2FybS9MUENfaW52X3ByZWRfZ2Fpbl9uZW9uX2ludHIuYyIsCisgICAgICAg
ICJzcmMvc2lsay9hcm0vTlNRX2RlbF9kZWNfYXJtLmgiLAorICAgICAgICAic3JjL3NpbGsvYXJt
L05TUV9kZWxfZGVjX25lb25faW50ci5jIiwKKyAgICAgICAgInNyYy9zaWxrL2FybS9OU1FfbmVv
bi5jIiwKKyAgICAgICAgInNyYy9zaWxrL2FybS9OU1FfbmVvbi5oIiwKKyAgICAgICAgInNyYy9z
aWxrL2FybS9iaXF1YWRfYWx0X2FybS5oIiwKKyAgICAgICAgInNyYy9zaWxrL2FybS9iaXF1YWRf
YWx0X25lb25faW50ci5jIiwKKyAgICAgICAgInNyYy9zaWxrL2ZpeGVkL2FybS93YXJwZWRfYXV0
b2NvcnJlbGF0aW9uX0ZJWF9hcm0uaCIsCisgICAgICAgICJzcmMvc2lsay9maXhlZC9hcm0vd2Fy
cGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfbmVvbl9pbnRyLmMiLAogICAgICAgXQogICAgIH0KICAg
fQpAQCAtNDEwLDcgKzUxNCw2IEBAIGV4ZWN1dGFibGUoIm9wdXNfY29tcGFyZSIpIHsKIAogICBk
ZXBzID0gWwogICAgICI6b3B1cyIsCi0gICAgIi8vYnVpbGQvY29uZmlnL3Nhbml0aXplcnM6ZGVw
cyIsCiAgICAgIi8vYnVpbGQvd2luOmRlZmF1bHRfZXhlX21hbmlmZXN0IiwKICAgXQogfQpAQCAt
NDI4LDcgKzUzMSw2IEBAIGV4ZWN1dGFibGUoIm9wdXNfZGVtbyIpIHsKIAogICBkZXBzID0gWwog
ICAgICI6b3B1cyIsCi0gICAgIi8vYnVpbGQvY29uZmlnL3Nhbml0aXplcnM6ZGVwcyIsCiAgICAg
Ii8vYnVpbGQvd2luOmRlZmF1bHRfZXhlX21hbmlmZXN0IiwKICAgXQogfQpAQCAtNDUxLDYgKzU1
Myw3IEBAIHRlc3QoInRlc3Rfb3B1c19hcGkiKSB7CiAKIHRlc3QoInRlc3Rfb3B1c19lbmNvZGUi
KSB7CiAgIHNvdXJjZXMgPSBbCisgICAgInNyYy90ZXN0cy9vcHVzX2VuY29kZV9yZWdyZXNzaW9u
cy5jIiwKICAgICAic3JjL3Rlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYyIsCiAgIF0KIApAQCAtNDcz
LDcgKzU3Niw3IEBAIGNvbmZpZygidGVzdF9vcHVzX2RlY29kZV9jb25maWciKSB7CiAgICMgbWFy
a2VkIGFzIHJlcXVpcmluZyBhIG5vbi1udWxsIHZhbHVlIGJ5IHRoZSBub25udWxsIGZ1bmN0aW9u
IGF0dHJpYnV0ZSwKICAgIyBhbmQgZXhwZWN0cyBvcHVzX2RlY29kZSgpIHRvIGZhaWwuIERpc2Fi
bGUgdGhlIC1Xbm9ubnVsbCBvcHRpb24gdG8gYXZvaWQKICAgIyBhIGNvbXBpbGF0aW9uIGVycm9y
IGlmIC1XZXJyb3IgaXMgc3BlY2lmaWVkLgotICBpZiAoaXNfcG9zaXgpIHsKKyAgaWYgKGlzX2Ns
YW5nKSB7CiAgICAgY2ZsYWdzID0gWyAiLVduby1ub25udWxsIiBdCiAgIH0KIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9E
RVBTIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L0RFUFMKaW5kZXggN2U1YmQyNmVlNjkyOGFjYzk2ZTAzNTJhNDU3NjU2MmVlYTA2MTI4ZS4uZmZm
Y2FhNWZmYzM1MjU4MjdkNGM4N2IyMmVhNzIyY2U5YzAyM2E4ZiAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL0RFUFMKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL0RFUFMK
QEAgLTEsNSArMSw3IEBACiBpbmNsdWRlX3J1bGVzID0gWwogICAiK2FybSIsCisgICIrY2VsdCIs
CisgICIrZml4ZWQiLAogICAiK21pcHMiLAogICAiK3g4NiIsCiBdCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvUkVBRE1FLmNo
cm9taXVtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL1JFQURNRS5jaHJvbWl1bQppbmRleCA3MTExZDAyOGMwZDZmNjcwMjkxZGM3MTE1YzllNWM2
YjM4YzNkZThmLi44YmQzMTk3YWYyNzMyMDAwYzM1MWRlM2Y3OTg2MWYzZTk4MjRlZGQxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvUkVBRE1FLmNocm9taXVtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9SRUFETUUuY2hyb21pdW0KQEAgLTEsNiArMSw2IEBACiBOYW1l
OiBvcHVzCi1VUkw6IGh0dHA6Ly9kb3dubG9hZHMueGlwaC5vcmcvcmVsZWFzZXMvb3B1cy9vcHVz
LTEuMS4zLnRhci5negotVmVyc2lvbjogMS4xLjMKK1VSTDogaHR0cHM6Ly9naXQueGlwaC5vcmcv
P3A9b3B1cy5naXQ7YT1zbmFwc2hvdDtoPTNmZTc0NGVhMDRmZGNjNDE4ZmI4NWMyYzEzM2QxMzM3
MmViYjAxOWI7c2Y9dGd6CitWZXJzaW9uOiAzZmU3NDRlYTA0ZmRjYzQxOGZiODVjMmMxMzNkMTMz
NzJlYmIwMTliCiBMaWNlbnNlOiBCU0QKIExpY2Vuc2UgRmlsZTogc3JjL0NPUFlJTkcKIFNlY3Vy
aXR5IENyaXRpY2FsOiB5ZXMKQEAgLTE0LDcgKzE0LDkgQEAgZW5jb2RpbmcvZGVjb2RpbmcuCiBM
b2NhbCBjaGFuZ2VzOgogKiBjb3B5IC5naXRpZ25vcmUgZnJvbSBodHRwczovL2dpdC54aXBoLm9y
Zy8/cD1vcHVzLmdpdDthPXRyZWUKICogc2V0ICd4JyBmbGFnczogImNobW9kIDc1MCB3aW4zMi9n
ZW52ZXJzaW9uLmJhdCIKLSogQXBwbHkgcGF0Y2hlcyBmcm9tCi0gIGh0dHBzOi8vZ2l0LnhpcGgu
b3JnLz9wPW9wdXMuZ2l0O2E9Y29tbWl0O2g9NzllOGY1MjdiMDM0NGIwODk3YTY1YmUzNWU3N2Y3
ODg1YmQ5OTQwOQotICBodHRwczovL2dpdC54aXBoLm9yZy8/cD1vcHVzLmdpdDthPWNvbW1pdGRp
ZmY7aD1lNWFkMjYxNjk1MDJjMWYwYjA2NzkxNmU3ODJjMmIzZmRlYTZmYmE5Ci0gIGh0dHBzOi8v
Z2l0LnhpcGgub3JnLz9wPW9wdXMuZ2l0O2E9Y29tbWl0ZGlmZjtoPTVkYTA0OThhM2UyMzMzOWFh
Y2ViYTY1OWE5N2U5MzUwMzFkNTY5M2QKKyogQXBwbHkgaHR0cHM6Ly9naXQueGlwaC5vcmcvP3A9
b3B1cy5naXQ7YT1jb21taXRkaWZmO2g9NDY1NjA1MzRmY2I1NzEwYTg5NGEzNDFjMmY5NTI2ZGI1
OGZkNzA4NyNwYXRjaDEKKyogQXBwbHkgaHR0cHM6Ly9naXRodWIuY29tL3hpcGgvb3B1cy9wdWxs
LzczCisqIEFwcGx5IGh0dHBzOi8vZ2l0aHViLmNvbS94aXBoL29wdXMvcHVsbC84NworKiBNYWtl
IHN1cmUgSEJfZ2FpbiBpcyBub3QgTmFOIGluIGFuIGF0dGVtcHQgdG8gZml4IGNocm9taXVtOjgy
NjkxNAorKiBTYXR1cmF0ZSBhZGQgdG8gYXZvaWQgaW50IG92ZXJmbG93IHRvIGZpeCBjaHJvbWl1
bTo4NDI1MjguIFRoaXMgc2hvdWxkIGJlCisgIHJldmVydGVkIHdoZW4gdXBkYXRpbmcgdG8gdjEu
MwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL2NvbnZlcnRfcnRjZF9hc3NlbWJsZXIucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvY29udmVydF9ydGNkX2Fzc2VtYmxlci5w
eQppbmRleCBkYzYzYzY0MWY1N2Y0YzdjZTQ5YmRhN2YzMmJmOTc2Zjg3MjI1ZWM3Li4yZjYwNzFm
NDEyMTg2MWJjMGQwNzk4OTM1NzJkZDcwOTJhYzFjMDQyIDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvY29udmVydF9ydGNkX2Fz
c2VtYmxlci5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvY29udmVydF9ydGNkX2Fzc2VtYmxlci5weQpAQCAtNDUsNyArNDUsNiBAQCBk
ZWYgbWFpbihhcmd2KToKICAgICAgICAgICdzZWQgInMvT1BVU19BUk1fTUFZX0hBVkVfW0EtWl0q
LzEvZyIgfCAnCiAgICAgICAgICAnc2VkICIvLmluY2x1ZGUvZCIgJwogICAgICAgICAgJz4gJXMn
KSAlIChhcm0yZ251X3NjcmlwdCwgaW5wdXRfZmlsZSwgb3V0cHV0X2ZpbGUpCi0gIHByaW50IGNt
ZAogICByZXR1cm4gb3Muc3lzdGVtKGNtZCkKIAogaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvLmdpdGlnbm9yZSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvLmdpdGlnbm9yZQpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMzEyN2M5ZmUw
YTY2M2I2MDY2OTUzMGI3YmRiNjVhNjdkMWJlY2E1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy8uZ2l0aWdu
b3JlCkBAIC0wLDAgKzEsODMgQEAKK0RveHlmaWxlCitNYWtlZmlsZQorTWFrZWZpbGUuaW4KK1RB
R1MKK2FjbG9jYWwubTQKK2F1dG9tNHRlLmNhY2hlCisqLmtkZXZlbG9wLnBjcworKi5rZGV2c2Vz
Citjb21waWxlCitjb25maWcuZ3Vlc3MKK2NvbmZpZy5oCitjb25maWcuaC5pbgorY29uZmlnLmxv
ZworY29uZmlnLnN0YXR1cworY29uZmlnLnN1YgorY29uZmlndXJlCitkZXBjb21wCitJTlNUQUxM
CitpbnN0YWxsLXNoCisuZGVwcworLmxpYnMKKy5kaXJzdGFtcAorKi5hCisqLmV4ZQorKi5sYQor
Ki1nbnUuUwordGVzdGNlbHQKK2xpYnRvb2wKK2x0bWFpbi5zaAorbWlzc2luZworbTQvbGlidG9v
bC5tNAorbTQvbHRvcHRpb25zLm00CittNC9sdHN1Z2FyLm00CittNC9sdHZlcnNpb24ubTQKK200
L2x0fm9ic29sZXRlLm00CitvcHVzX2NvbXBhcmUKK29wdXNfZGVtbworcmVwYWNrZXRpemVyX2Rl
bW8KK3N0YW1wLWgxCit0ZXN0LWRyaXZlcgorKi5zdyoKKyoubworKi5sbworKi5wYworKi50YXIu
Z3oKKyp+Cit0ZXN0cy8qdGVzdAordGVzdHMvdGVzdF9vcHVzX2FwaQordGVzdHMvdGVzdF9vcHVz
X2RlY29kZQordGVzdHMvdGVzdF9vcHVzX2VuY29kZQordGVzdHMvdGVzdF9vcHVzX3BhZGRpbmcK
K2NlbHQvYXJtL2FybW9wdHMucworY2VsdC9kdW1wX21vZGVzL2R1bXBfbW9kZXMKK2NlbHQvdGVz
dHMvdGVzdF91bml0X2N3cnMzMgorY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0CitjZWx0L3Rlc3Rz
L3Rlc3RfdW5pdF9lbnRyb3B5CitjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9sYXBsYWNlCitjZWx0L3Rl
c3RzL3Rlc3RfdW5pdF9tYXRob3BzCitjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tZGN0CitjZWx0L3Rl
c3RzL3Rlc3RfdW5pdF9yb3RhdGlvbgorY2VsdC90ZXN0cy90ZXN0X3VuaXRfdHlwZXMKK2RvYy9k
b3h5Z2VuX3NxbGl0ZTMuZGIKK2RvYy9kb3h5Z2VuLWJ1aWxkLnN0YW1wCitkb2MvaHRtbAorZG9j
L2xhdGV4Citkb2MvbWFuCitwYWNrYWdlX3ZlcnNpb24KK3ZlcnNpb24uaAorY2VsdC9EZWJ1Zwor
Y2VsdC9SZWxlYXNlCitjZWx0L3g2NAorc2lsay9EZWJ1Zworc2lsay9SZWxlYXNlCitzaWxrL3g2
NAorc2lsay9maXhlZC9EZWJ1Zworc2lsay9maXhlZC9SZWxlYXNlCitzaWxrL2ZpeGVkL3g2NAor
c2lsay9mbG9hdC9EZWJ1Zworc2lsay9mbG9hdC9SZWxlYXNlCitzaWxrL2Zsb2F0L3g2NAorc3Jj
L0RlYnVnCitzcmMvUmVsZWFzZQorc3JjL3g2NApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9MSUNFTlNFX1BMRUFTRV9S
RUFELnR4dCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvTElDRU5TRV9QTEVBU0VfUkVBRC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmM4OGVmYTZjYjA1
Nzg5YTZhNmU2OTc1NzdhZTZkOGU1NTMyZTVkZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTElDRU5TRV9Q
TEVBU0VfUkVBRC50eHQKQEAgLTAsMCArMSwyMiBAQAorQ29udHJpYnV0aW9ucyB0byB0aGUgY29s
bGFib3JhdGlvbiBzaGFsbCBub3QgYmUgY29uc2lkZXJlZCBjb25maWRlbnRpYWwuCisKK0VhY2gg
Y29udHJpYnV0b3IgcmVwcmVzZW50cyBhbmQgd2FycmFudHMgdGhhdCBpdCBoYXMgdGhlIHJpZ2h0
IGFuZAorYXV0aG9yaXR5IHRvIGxpY2Vuc2UgY29weXJpZ2h0IGluIGl0cyBjb250cmlidXRpb25z
IHRvIHRoZSBjb2xsYWJvcmF0aW9uLgorCitFYWNoIGNvbnRyaWJ1dG9yIGFncmVlcyB0byBsaWNl
bnNlIHRoZSBjb3B5cmlnaHQgaW4gdGhlIGNvbnRyaWJ1dGlvbnMKK3VuZGVyIHRoZSBNb2RpZmll
ZCAoMi1jbGF1c2Ugb3IgMy1jbGF1c2UpIEJTRCBMaWNlbnNlIG9yIHRoZSBDbGVhciBCU0QgTGlj
ZW5zZS4KKworUGxlYXNlIHNlZSB0aGUgSVBSIHN0YXRlbWVudHMgc3VibWl0dGVkIHRvIHRoZSBJ
RVRGIGZvciB0aGUgY29tcGxldGUKK3BhdGVudCBsaWNlbnNpbmcgZGV0YWlsczoKKworWGlwaC5P
cmcgRm91bmRhdGlvbjoKK2h0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvaXByLzE1MjQvCisK
K01pY3Jvc29mdCBDb3Jwb3JhdGlvbjoKK2h0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvaXBy
LzE5MTQvCisKK1NreXBlIExpbWl0ZWQ6CitodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2lw
ci8xNjAyLworCitCcm9hZGNvbSBDb3Jwb3JhdGlvbjoKK2h0dHBzOi8vZGF0YXRyYWNrZXIuaWV0
Zi5vcmcvaXByLzE1MjYvCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLmFtIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS5hbQppbmRl
eCA3YTY5MTE0MGU1NTNkNDU1NGM2ZWMyYjdjYmFjMDI5OGUzZDE2YjJjLi41YjU3YjMzNzJlNTZj
Y2E1OTljNGQ0NWFhYTAxZmUzZDM3MTg2MjMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLmFtCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
TWFrZWZpbGUuYW0KQEAgLTIxLDYgKzIxLDkgQEAgU0lMS19TT1VSQ0VTICs9ICQoU0lMS19TT1VS
Q0VTX0ZJWEVEKQogaWYgSEFWRV9TU0U0XzEKIFNJTEtfU09VUkNFUyArPSAkKFNJTEtfU09VUkNF
U19TU0U0XzEpICQoU0lMS19TT1VSQ0VTX0ZJWEVEX1NTRTRfMSkKIGVuZGlmCitpZiBIQVZFX0FS
TV9ORU9OX0lOVFIKK1NJTEtfU09VUkNFUyArPSAkKFNJTEtfU09VUkNFU19GSVhFRF9BUk1fTkVP
Tl9JTlRSKQorZW5kaWYKIGVsc2UKIFNJTEtfU09VUkNFUyArPSAkKFNJTEtfU09VUkNFU19GTE9B
VCkKIGlmIEhBVkVfU1NFNF8xCkBAIC04NCw5ICs4NywzNiBAQCBwa2dpbmNsdWRlX0hFQURFUlMg
PSBpbmNsdWRlL29wdXMuaCBpbmNsdWRlL29wdXNfbXVsdGlzdHJlYW0uaCBpbmNsdWRlL29wdXNf
dHlwZQogbm9pbnN0X0hFQURFUlMgPSAkKE9QVVNfSEVBRCkgJChTSUxLX0hFQUQpICQoQ0VMVF9I
RUFEKQogCiBpZiBFWFRSQV9QUk9HUkFNUwotbm9pbnN0X1BST0dSQU1TID0gb3B1c19kZW1vIHJl
cGFja2V0aXplcl9kZW1vIG9wdXNfY29tcGFyZSB0ZXN0cy90ZXN0X29wdXNfYXBpIHRlc3RzL3Rl
c3Rfb3B1c19lbmNvZGUgdGVzdHMvdGVzdF9vcHVzX2RlY29kZSB0ZXN0cy90ZXN0X29wdXNfcGFk
ZGluZyBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9jd3JzMzIgY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0
IGNlbHQvdGVzdHMvdGVzdF91bml0X2VudHJvcHkgY2VsdC90ZXN0cy90ZXN0X3VuaXRfbGFwbGFj
ZSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tYXRob3BzIGNlbHQvdGVzdHMvdGVzdF91bml0X21kY3Qg
Y2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24gY2VsdC90ZXN0cy90ZXN0X3VuaXRfdHlwZXMK
LQotVEVTVFMgPSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF90eXBlcyBjZWx0L3Rlc3RzL3Rlc3RfdW5p
dF9tYXRob3BzIGNlbHQvdGVzdHMvdGVzdF91bml0X2VudHJvcHkgY2VsdC90ZXN0cy90ZXN0X3Vu
aXRfbGFwbGFjZSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9kZnQgY2VsdC90ZXN0cy90ZXN0X3VuaXRf
bWRjdCBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9yb3RhdGlvbiBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9j
d3JzMzIgdGVzdHMvdGVzdF9vcHVzX2FwaSB0ZXN0cy90ZXN0X29wdXNfZGVjb2RlIHRlc3RzL3Rl
c3Rfb3B1c19lbmNvZGUgdGVzdHMvdGVzdF9vcHVzX3BhZGRpbmcKK25vaW5zdF9QUk9HUkFNUyA9
IGNlbHQvdGVzdHMvdGVzdF91bml0X2N3cnMzMiBcCisgICAgICAgICAgICAgICAgICBjZWx0L3Rl
c3RzL3Rlc3RfdW5pdF9kZnQgXAorICAgICAgICAgICAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3Vu
aXRfZW50cm9weSBcCisgICAgICAgICAgICAgICAgICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9sYXBs
YWNlIFwKKyAgICAgICAgICAgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0X21hdGhvcHMgXAor
ICAgICAgICAgICAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWRjdCBcCisgICAgICAgICAg
ICAgICAgICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9yb3RhdGlvbiBcCisgICAgICAgICAgICAgICAg
ICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF90eXBlcyBcCisgICAgICAgICAgICAgICAgICBvcHVzX2Nv
bXBhcmUgXAorICAgICAgICAgICAgICAgICAgb3B1c19kZW1vIFwKKyAgICAgICAgICAgICAgICAg
IHJlcGFja2V0aXplcl9kZW1vIFwKKyAgICAgICAgICAgICAgICAgIHNpbGsvdGVzdHMvdGVzdF91
bml0X0xQQ19pbnZfcHJlZF9nYWluIFwKKyAgICAgICAgICAgICAgICAgIHRlc3RzL3Rlc3Rfb3B1
c19hcGkgXAorICAgICAgICAgICAgICAgICAgdGVzdHMvdGVzdF9vcHVzX2RlY29kZSBcCisgICAg
ICAgICAgICAgICAgICB0ZXN0cy90ZXN0X29wdXNfZW5jb2RlIFwKKyAgICAgICAgICAgICAgICAg
IHRlc3RzL3Rlc3Rfb3B1c19wYWRkaW5nCisKK1RFU1RTID0gY2VsdC90ZXN0cy90ZXN0X3VuaXRf
Y3dyczMyIFwKKyAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0IFwKKyAgICAgICAgY2Vs
dC90ZXN0cy90ZXN0X3VuaXRfZW50cm9weSBcCisgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0
X2xhcGxhY2UgXAorICAgICAgICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tYXRob3BzIFwKKyAgICAg
ICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWRjdCBcCisgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91
bml0X3JvdGF0aW9uIFwKKyAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfdHlwZXMgXAorICAg
ICAgICBzaWxrL3Rlc3RzL3Rlc3RfdW5pdF9MUENfaW52X3ByZWRfZ2FpbiBcCisgICAgICAgIHRl
c3RzL3Rlc3Rfb3B1c19hcGkgXAorICAgICAgICB0ZXN0cy90ZXN0X29wdXNfZGVjb2RlIFwKKyAg
ICAgICAgdGVzdHMvdGVzdF9vcHVzX2VuY29kZSBcCisgICAgICAgIHRlc3RzL3Rlc3Rfb3B1c19w
YWRkaW5nCiAKIG9wdXNfZGVtb19TT1VSQ0VTID0gc3JjL29wdXNfZGVtby5jCiAKQEAgLTEwMiw3
ICsxMzIsNyBAQCBvcHVzX2NvbXBhcmVfTERBREQgPSAkKExJQk0pCiB0ZXN0c190ZXN0X29wdXNf
YXBpX1NPVVJDRVMgPSB0ZXN0cy90ZXN0X29wdXNfYXBpLmMgdGVzdHMvdGVzdF9vcHVzX2NvbW1v
bi5oCiB0ZXN0c190ZXN0X29wdXNfYXBpX0xEQUREID0gbGlib3B1cy5sYSAkKE5FMTBfTElCUykg
JChMSUJNKQogCi10ZXN0c190ZXN0X29wdXNfZW5jb2RlX1NPVVJDRVMgPSB0ZXN0cy90ZXN0X29w
dXNfZW5jb2RlLmMgdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCit0ZXN0c190ZXN0X29wdXNfZW5j
b2RlX1NPVVJDRVMgPSB0ZXN0cy90ZXN0X29wdXNfZW5jb2RlLmMgdGVzdHMvb3B1c19lbmNvZGVf
cmVncmVzc2lvbnMuYyB0ZXN0cy90ZXN0X29wdXNfY29tbW9uLmgKIHRlc3RzX3Rlc3Rfb3B1c19l
bmNvZGVfTERBREQgPSBsaWJvcHVzLmxhICQoTkUxMF9MSUJTKSAkKExJQk0pCiAKIHRlc3RzX3Rl
c3Rfb3B1c19kZWNvZGVfU09VUkNFUyA9IHRlc3RzL3Rlc3Rfb3B1c19kZWNvZGUuYyB0ZXN0cy90
ZXN0X29wdXNfY29tbW9uLmgKQEAgLTExMSwxMSArMTQxLDIwIEBAIHRlc3RzX3Rlc3Rfb3B1c19k
ZWNvZGVfTERBREQgPSBsaWJvcHVzLmxhICQoTkUxMF9MSUJTKSAkKExJQk0pCiB0ZXN0c190ZXN0
X29wdXNfcGFkZGluZ19TT1VSQ0VTID0gdGVzdHMvdGVzdF9vcHVzX3BhZGRpbmcuYyB0ZXN0cy90
ZXN0X29wdXNfY29tbW9uLmgKIHRlc3RzX3Rlc3Rfb3B1c19wYWRkaW5nX0xEQUREID0gbGlib3B1
cy5sYSAkKE5FMTBfTElCUykgJChMSUJNKQogCitDRUxUX09CSiA9ICQoQ0VMVF9TT1VSQ0VTOi5j
PS5sbykKK1NJTEtfT0JKID0gJChTSUxLX1NPVVJDRVM6LmM9LmxvKQorCitzaWxrX3Rlc3RzX3Rl
c3RfdW5pdF9MUENfaW52X3ByZWRfZ2Fpbl9TT1VSQ0VTID0gc2lsay90ZXN0cy90ZXN0X3VuaXRf
TFBDX2ludl9wcmVkX2dhaW4uYworc2lsa190ZXN0c190ZXN0X3VuaXRfTFBDX2ludl9wcmVkX2dh
aW5fTERBREQgPSAkKFNJTEtfT0JKKSAkKENFTFRfT0JKKSAkKE5FMTBfTElCUykgJChMSUJNKQor
aWYgT1BVU19BUk1fRVhURVJOQUxfQVNNCitzaWxrX3Rlc3RzX3Rlc3RfdW5pdF9MUENfaW52X3By
ZWRfZ2Fpbl9MREFERCArPSBsaWJhcm1hc20ubGEKK2VuZGlmCisKIGNlbHRfdGVzdHNfdGVzdF91
bml0X2N3cnMzMl9TT1VSQ0VTID0gY2VsdC90ZXN0cy90ZXN0X3VuaXRfY3dyczMyLmMKIGNlbHRf
dGVzdHNfdGVzdF91bml0X2N3cnMzMl9MREFERCA9ICQoTElCTSkKIAogY2VsdF90ZXN0c190ZXN0
X3VuaXRfZGZ0X1NPVVJDRVMgPSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9kZnQuYwotY2VsdF90ZXN0
c190ZXN0X3VuaXRfZGZ0X0xEQUREID0gJChORTEwX0xJQlMpICQoTElCTSkKK2NlbHRfdGVzdHNf
dGVzdF91bml0X2RmdF9MREFERCA9ICQoQ0VMVF9PQkopICQoTkUxMF9MSUJTKSAkKExJQk0pCiBp
ZiBPUFVTX0FSTV9FWFRFUk5BTF9BU00KIGNlbHRfdGVzdHNfdGVzdF91bml0X2RmdF9MREFERCAr
PSBsaWJhcm1hc20ubGEKIGVuZGlmCkBAIC0xMjcsMTkgKzE2NiwxOSBAQCBjZWx0X3Rlc3RzX3Rl
c3RfdW5pdF9sYXBsYWNlX1NPVVJDRVMgPSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9sYXBsYWNlLmMK
IGNlbHRfdGVzdHNfdGVzdF91bml0X2xhcGxhY2VfTERBREQgPSAkKExJQk0pCiAKIGNlbHRfdGVz
dHNfdGVzdF91bml0X21hdGhvcHNfU09VUkNFUyA9IGNlbHQvdGVzdHMvdGVzdF91bml0X21hdGhv
cHMuYwotY2VsdF90ZXN0c190ZXN0X3VuaXRfbWF0aG9wc19MREFERCA9ICQoTkUxMF9MSUJTKSAk
KExJQk0pCitjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tYXRob3BzX0xEQUREID0gJChDRUxUX09CSikg
JChORTEwX0xJQlMpICQoTElCTSkKIGlmIE9QVVNfQVJNX0VYVEVSTkFMX0FTTQogY2VsdF90ZXN0
c190ZXN0X3VuaXRfbWF0aG9wc19MREFERCArPSBsaWJhcm1hc20ubGEKIGVuZGlmCiAKIGNlbHRf
dGVzdHNfdGVzdF91bml0X21kY3RfU09VUkNFUyA9IGNlbHQvdGVzdHMvdGVzdF91bml0X21kY3Qu
YwotY2VsdF90ZXN0c190ZXN0X3VuaXRfbWRjdF9MREFERCA9ICQoTkUxMF9MSUJTKSAkKExJQk0p
CitjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tZGN0X0xEQUREID0gJChDRUxUX09CSikgJChORTEwX0xJ
QlMpICQoTElCTSkKIGlmIE9QVVNfQVJNX0VYVEVSTkFMX0FTTQogY2VsdF90ZXN0c190ZXN0X3Vu
aXRfbWRjdF9MREFERCArPSBsaWJhcm1hc20ubGEKIGVuZGlmCiAKIGNlbHRfdGVzdHNfdGVzdF91
bml0X3JvdGF0aW9uX1NPVVJDRVMgPSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9yb3RhdGlvbi5jCi1j
ZWx0X3Rlc3RzX3Rlc3RfdW5pdF9yb3RhdGlvbl9MREFERCA9ICQoTkUxMF9MSUJTKSAkKExJQk0p
CitjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9yb3RhdGlvbl9MREFERCA9ICQoQ0VMVF9PQkopICQoTkUx
MF9MSUJTKSAkKExJQk0pCiBpZiBPUFVTX0FSTV9FWFRFUk5BTF9BU00KIGNlbHRfdGVzdHNfdGVz
dF91bml0X3JvdGF0aW9uX0xEQUREICs9IGxpYmFybWFzbS5sYQogZW5kaWYKQEAgLTE1Nyw4ICsx
OTYsNyBAQCBvcHVzX2N1c3RvbV9kZW1vX0xEQUREID0gbGlib3B1cy5sYSAkKExJQk0pCiBlbmRp
ZgogZW5kaWYKIAotRVhUUkFfRElTVCA9IHZlcnNpb24ubWsgXAotICAgICAgICAgICAgIG9wdXMu
cGMuaW4gXAorRVhUUkFfRElTVCA9IG9wdXMucGMuaW4gXAogICAgICAgICAgICAgIG9wdXMtdW5p
bnN0YWxsZWQucGMuaW4gXAogICAgICAgICAgICAgIG9wdXMubTQgXAogICAgICAgICAgICAgIE1h
a2VmaWxlLm1pcHMgXApAQCAtMTY2LDI1ICsyMDQsMTggQEAgRVhUUkFfRElTVCA9IHZlcnNpb24u
bWsgXAogICAgICAgICAgICAgIHRlc3RzL3J1bl92ZWN0b3JzLnNoIFwKICAgICAgICAgICAgICBj
ZWx0L2FybS9hcm0yZ251LnBsIFwKICAgICAgICAgICAgICBjZWx0L2FybS9jZWx0X3BpdGNoX3hj
b3JyX2FybS5zIFwKLSAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvc2lsa19mbG9hdC52Y3hwcm9q
IFwKLSAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvY2VsdC52Y3hwcm9qLmZpbHRlcnMgXAogICAg
ICAgICAgICAgIHdpbjMyL1ZTMjAxNS9vcHVzLnZjeHByb2ogXAotICAgICAgICAgICAgIHdpbjMy
L1ZTMjAxNS9zaWxrX2NvbW1vbi52Y3hwcm9qLmZpbHRlcnMgXAotICAgICAgICAgICAgIHdpbjMy
L1ZTMjAxNS9zaWxrX2Zsb2F0LnZjeHByb2ouZmlsdGVycyBcCiAgICAgICAgICAgICAgd2luMzIv
VlMyMDE1L3Rlc3Rfb3B1c19lbmNvZGUudmN4cHJvai5maWx0ZXJzIFwKLSAgICAgICAgICAgICB3
aW4zMi9WUzIwMTUvc2lsa19jb21tb24udmN4cHJvaiBcCiAgICAgICAgICAgICAgd2luMzIvVlMy
MDE1L3Rlc3Rfb3B1c19lbmNvZGUudmN4cHJvaiBcCiAgICAgICAgICAgICAgd2luMzIvVlMyMDE1
L29wdXNfZGVtby52Y3hwcm9qIFwKICAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvdGVzdF9vcHVz
X2FwaS52Y3hwcm9qLmZpbHRlcnMgXAogICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS90ZXN0X29w
dXNfYXBpLnZjeHByb2ogXAogICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS90ZXN0X29wdXNfZGVj
b2RlLnZjeHByb2ouZmlsdGVycyBcCi0gICAgICAgICAgICAgd2luMzIvVlMyMDE1L3NpbGtfZml4
ZWQudmN4cHJvai5maWx0ZXJzIFwKICAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvb3B1c19kZW1v
LnZjeHByb2ouZmlsdGVycyBcCi0gICAgICAgICAgICAgd2luMzIvVlMyMDE1L3NpbGtfZml4ZWQu
dmN4cHJvaiBcCiAgICAgICAgICAgICAgd2luMzIvVlMyMDE1L29wdXMudmN4cHJvai5maWx0ZXJz
IFwKICAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvdGVzdF9vcHVzX2RlY29kZS52Y3hwcm9qIFwK
LSAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvY2VsdC52Y3hwcm9qIFwKICAgICAgICAgICAgICB3
aW4zMi9WUzIwMTUvb3B1cy5zbG4gXAorICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS9jb21tb24u
cHJvcHMgXAogICAgICAgICAgICAgIHdpbjMyL2dlbnZlcnNpb24uYmF0IFwKICAgICAgICAgICAg
ICB3aW4zMi9jb25maWcuaAogCkBAIC0yNzYsMjcgKzMwNywzMCBAQCAkKENFTFRfU09VUkNFU19B
Uk1fQVNNOiUucz0lLWdudS5TKTogJCh0b3Bfc3JjZGlyKS9jZWx0L2FybS9hcm0yZ251LnBsCiBP
UFRfVU5JVF9URVNUX09CSiA9ICQoY2VsdF90ZXN0c190ZXN0X3VuaXRfbWF0aG9wc19TT1VSQ0VT
Oi5jPS5vKSBcCiAgICAgICAgICAgICAgICAgICAgICQoY2VsdF90ZXN0c190ZXN0X3VuaXRfcm90
YXRpb25fU09VUkNFUzouYz0ubykgXAogICAgICAgICAgICAgICAgICAgICAkKGNlbHRfdGVzdHNf
dGVzdF91bml0X21kY3RfU09VUkNFUzouYz0ubykgXAotICAgICAgICAgICAgICAgICAgICAkKGNl
bHRfdGVzdHNfdGVzdF91bml0X2RmdF9TT1VSQ0VTOi5jPS5vKQorICAgICAgICAgICAgICAgICAg
ICAkKGNlbHRfdGVzdHNfdGVzdF91bml0X2RmdF9TT1VSQ0VTOi5jPS5vKSBcCisgICAgICAgICAg
ICAgICAgICAgICQoc2lsa190ZXN0c190ZXN0X3VuaXRfTFBDX2ludl9wcmVkX2dhaW5fU09VUkNF
UzouYz0ubykKIAogaWYgSEFWRV9TU0UKIFNTRV9PQkogPSAkKENFTFRfU09VUkNFU19TU0U6LmM9
LmxvKQotJChTU0VfT0JKKSAkKE9QVF9VTklUX1RFU1RfT0JKKTogQ0ZMQUdTICs9ICQoT1BVU19Y
ODZfU1NFX0NGTEFHUykKKyQoU1NFX09CSik6IENGTEFHUyArPSAkKE9QVVNfWDg2X1NTRV9DRkxB
R1MpCiBlbmRpZgogCiBpZiBIQVZFX1NTRTIKIFNTRTJfT0JKID0gJChDRUxUX1NPVVJDRVNfU1NF
MjouYz0ubG8pCi0kKFNTRTJfT0JKKSAkKE9QVF9VTklUX1RFU1RfT0JKKTogQ0ZMQUdTICs9ICQo
T1BVU19YODZfU1NFMl9DRkxBR1MpCiskKFNTRTJfT0JKKTogQ0ZMQUdTICs9ICQoT1BVU19YODZf
U1NFMl9DRkxBR1MpCiBlbmRpZgogCiBpZiBIQVZFX1NTRTRfMQogU1NFNF8xX09CSiA9ICQoQ0VM
VF9TT1VSQ0VTX1NTRTRfMTouYz0ubG8pIFwKICAgICAgICAgICAgICAkKFNJTEtfU09VUkNFU19T
U0U0XzE6LmM9LmxvKSBcCiAgICAgICAgICAgICAgJChTSUxLX1NPVVJDRVNfRklYRURfU1NFNF8x
Oi5jPS5sbykKLSQoU1NFNF8xX09CSikgJChPUFRfVU5JVF9URVNUX09CSik6IENGTEFHUyArPSAk
KE9QVVNfWDg2X1NTRTRfMV9DRkxBR1MpCiskKFNTRTRfMV9PQkopOiBDRkxBR1MgKz0gJChPUFVT
X1g4Nl9TU0U0XzFfQ0ZMQUdTKQogZW5kaWYKIAogaWYgSEFWRV9BUk1fTkVPTl9JTlRSCi1BUk1f
TkVPTl9JTlRSX09CSiA9ICQoQ0VMVF9TT1VSQ0VTX0FSTV9ORU9OX0lOVFI6LmM9LmxvKSAkKFNJ
TEtfU09VUkNFU19BUk1fTkVPTl9JTlRSOi5jPS5sbykKLSQoQVJNX05FT05fSU5UUl9PQkopICQo
T1BUX1VOSVRfVEVTVF9PQkopOiBDRkxBR1MgKz0gXAorQVJNX05FT05fSU5UUl9PQkogPSAkKENF
TFRfU09VUkNFU19BUk1fTkVPTl9JTlRSOi5jPS5sbykgXAorICAgICAgICAgICAgICAgICAgICAk
KFNJTEtfU09VUkNFU19BUk1fTkVPTl9JTlRSOi5jPS5sbykgXAorICAgICAgICAgICAgICAgICAg
ICAkKFNJTEtfU09VUkNFU19GSVhFRF9BUk1fTkVPTl9JTlRSOi5jPS5sbykKKyQoQVJNX05FT05f
SU5UUl9PQkopOiBDRkxBR1MgKz0gXAogICQoT1BVU19BUk1fTkVPTl9JTlRSX0NGTEFHUykgICQo
TkUxMF9DRkxBR1MpCiBlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS5taXBzIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS5t
aXBzCmluZGV4IDU2YTUwNjIzOGY2NDZhNjcyNTQ3YzM0NTZhNGQ1YWFhZjM0MjgyNjcuLmQyNWFm
OGNiYzI4ZTVlNjlmNTNmZTg3YjI1ZjI1OGJhMzg1ZjVkMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTWFrZWZpbGUu
bWlwcworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL01ha2VmaWxlLm1pcHMKQEAgLTk5LDcgKzk5LDcgQEAgVEVTVE9QVVNBUElfT0JK
UyA6PSAkKHBhdHN1YnN0ICUuYywlJChPQkpTVUZGSVgpLCQoVEVTVE9QVVNBUElfU1JDU19DKSkK
IFRFU1RPUFVTREVDT0RFX1NSQ1NfQyA9IHRlc3RzL3Rlc3Rfb3B1c19kZWNvZGUuYwogVEVTVE9Q
VVNERUNPREVfT0JKUyA6PSAkKHBhdHN1YnN0ICUuYywlJChPQkpTVUZGSVgpLCQoVEVTVE9QVVNE
RUNPREVfU1JDU19DKSkKIAotVEVTVE9QVVNFTkNPREVfU1JDU19DID0gdGVzdHMvdGVzdF9vcHVz
X2VuY29kZS5jCitURVNUT1BVU0VOQ09ERV9TUkNTX0MgPSB0ZXN0cy90ZXN0X29wdXNfZW5jb2Rl
LmMgdGVzdHMvb3B1c19lbmNvZGVfcmVncmVzc2lvbnMuYwogVEVTVE9QVVNFTkNPREVfT0JKUyA6
PSAkKHBhdHN1YnN0ICUuYywlJChPQkpTVUZGSVgpLCQoVEVTVE9QVVNFTkNPREVfU1JDU19DKSkK
IAogVEVTVE9QVVNQQURESU5HX1NSQ1NfQyA9IHRlc3RzL3Rlc3Rfb3B1c19wYWRkaW5nLmMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvTWFrZWZpbGUudW5peCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTWFrZWZpbGUudW5peAppbmRleCBiMTMyMzBlOGZiZWJm
NWVhOTRhNTU3ZTE5M2MwZDVhNTcyNGZkNDVjLi45MGE0OGYwY2MwZTkyZTUxNGYyNzBiYjJhZjU1
MmZlNmY2NmIzZTRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLnVuaXgKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS51bml4
CkBAIC05Nyw3ICs5Nyw3IEBAIFRFU1RPUFVTQVBJX09CSlMgOj0gJChwYXRzdWJzdCAlLmMsJSQo
T0JKU1VGRklYKSwkKFRFU1RPUFVTQVBJX1NSQ1NfQykpCiBURVNUT1BVU0RFQ09ERV9TUkNTX0Mg
PSB0ZXN0cy90ZXN0X29wdXNfZGVjb2RlLmMKIFRFU1RPUFVTREVDT0RFX09CSlMgOj0gJChwYXRz
dWJzdCAlLmMsJSQoT0JKU1VGRklYKSwkKFRFU1RPUFVTREVDT0RFX1NSQ1NfQykpCiAKLVRFU1RP
UFVTRU5DT0RFX1NSQ1NfQyA9IHRlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYworVEVTVE9QVVNFTkNP
REVfU1JDU19DID0gdGVzdHMvdGVzdF9vcHVzX2VuY29kZS5jIHRlc3RzL29wdXNfZW5jb2RlX3Jl
Z3Jlc3Npb25zLmMKIFRFU1RPUFVTRU5DT0RFX09CSlMgOj0gJChwYXRzdWJzdCAlLmMsJSQoT0JK
U1VGRklYKSwkKFRFU1RPUFVTRU5DT0RFX1NSQ1NfQykpCiAKIFRFU1RPUFVTUEFERElOR19TUkNT
X0MgPSB0ZXN0cy90ZXN0X29wdXNfcGFkZGluZy5jCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL1JFQURNRSBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvUkVBRE1F
CmluZGV4IGFjNjI2NGVjMjkyMzgzOWUwMjk0NWU4ZWFhMjY4NGUzNTgwZTRjZjEuLjlhMDY4MTE2
NTRiNWMyMzM4MjNhMDk3NDI2NjgzNTMxMzQxYTZkMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvUkVBRE1FCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
UkVBRE1FCkBAIC00MywyNSArNDMsNDMgQEAgb3Igb24gdGhlIG1haW4gT3B1cyB3ZWJzaXRlOgog
CiBUbyBidWlsZCBmcm9tIGEgZGlzdHJpYnV0aW9uIHRhcmJhbGwsIHlvdSBvbmx5IG5lZWQgdG8g
ZG8gdGhlIGZvbGxvd2luZzoKIAotJSAuL2NvbmZpZ3VyZQotJSBtYWtlCisgICAgJSAuL2NvbmZp
Z3VyZQorICAgICUgbWFrZQogCiBUbyBidWlsZCBmcm9tIHRoZSBnaXQgcmVwb3NpdG9yeSwgdGhl
IGZvbGxvd2luZyBzdGVwcyBhcmUgbmVjZXNzYXJ5OgogCiswKSBTZXQgdXAgYSBkZXZlbG9wbWVu
dCBlbnZpcm9ubWVudDoKKworT24gYW4gVWJ1bnR1IG9yIERlYmlhbiBmYW1pbHkgTGludXggZGlz
dHJpYnV0aW9uOgorCisgICAgJSBzdWRvIGFwdC1nZXQgaW5zdGFsbCBnaXQgYXV0b2NvbmYgYXV0
b21ha2UgbGlidG9vbCBnY2MgbWFrZQorCitPbiBhIEZlZG9yYS9SZWRoYXQgYmFzZWQgTGludXg6
CisKKyAgICAlIHN1ZG8gZG5mIGluc3RhbGwgZ2l0IGF1dG9jb25mIGF1dG9tYWtlIGxpYnRvb2wg
Z2NjIG1ha2UKKworT3IgZm9yIG9sZGVyIFJlZGhhdC9DZW50b3MgTGludXggcmVsZWFzZXM6CisK
KyAgICAlIHN1ZG8geXVtIGluc3RhbGwgZ2l0IGF1dG9jb25mIGF1dG9tYWtlIGxpYnRvb2wgZ2Nj
IG1ha2UKKworT24gQXBwbGUgbWFjT1MsIGluc3RhbGwgWGNvZGUgYW5kIGJyZXcuc2gsIHRoZW4g
aW4gdGhlIFRlcm1pbmFsIGVudGVyOgorCisgICAgJSBicmV3IGluc3RhbGwgYXV0b2NvbmYgYXV0
b21ha2UgbGlidG9vbAorCiAxKSBDbG9uZSB0aGUgcmVwb3NpdG9yeToKIAotJSBnaXQgY2xvbmUg
aHR0cHM6Ly9naXQueGlwaC5vcmcvb3B1cy5naXQKLSUgY2Qgb3B1cworICAgICUgZ2l0IGNsb25l
IGh0dHBzOi8vZ2l0LnhpcGgub3JnL29wdXMuZ2l0CisgICAgJSBjZCBvcHVzCiAKIDIpIENvbXBp
bGluZyB0aGUgc291cmNlCiAKLSUgLi9hdXRvZ2VuLnNoCi0lIC4vY29uZmlndXJlCi0lIG1ha2UK
KyAgICAlIC4vYXV0b2dlbi5zaAorICAgICUgLi9jb25maWd1cmUKKyAgICAlIG1ha2UKIAogMykg
SW5zdGFsbCB0aGUgY29kZWMgbGlicmFyaWVzIChvcHRpb25hbCkKIAotJSBzdWRvIG1ha2UgaW5z
dGFsbAorICAgICUgc3VkbyBtYWtlIGluc3RhbGwKIAogT25jZSB5b3UgaGF2ZSBjb21waWxlZCB0
aGUgY29kZWMsIHRoZXJlIHdpbGwgYmUgYSBvcHVzX2RlbW8gZXhlY3V0YWJsZQogaW4gdGhlIHRv
cCBkaXJlY3RvcnkuCkBAIC0xMDIsNyArMTIwLDggQEAgd2hpY2ggU0hPVUxEIGJlIHJ1biBhZnRl
ciBjb21waWxpbmcgdGhlIHBhY2thZ2UgZXNwZWNpYWxseSB0aGUgZmlyc3QKIHRpbWUgaXQgaXMg
cnVuIG9uIGEgbmV3IHBsYXRmb3JtLgogCiBUbyBydW4gdGhlIGludGVncmF0ZWQgdGVzdHM6Ci0l
IG1ha2UgY2hlY2sKKworICAgICUgbWFrZSBjaGVjawogCiBUaGVyZSBpcyBhbHNvIGNvbGxlY3Rp
b24gb2Ygc3RhbmRhcmQgdGVzdCB2ZWN0b3JzIHdoaWNoIGFyZSBub3QKIGluY2x1ZGVkIGluIHRo
aXMgcGFja2FnZSBmb3Igc2l6ZSByZWFzb25zIGJ1dCBjYW4gYmUgb2J0YWluZWQgZnJvbToKQEAg
LTExMCw5ICsxMjksOSBAQCBodHRwczovL29wdXMtY29kZWMub3JnL3Rlc3R2ZWN0b3JzL29wdXNf
dGVzdHZlY3RvcnMudGFyLmd6CiAKIFRvIHJ1biBjb21wYXJlIHRoZSBjb2RlIHRvIHRoZXNlIHRl
c3QgdmVjdG9yczoKIAotJSBjdXJsIC1PIGh0dHBzOi8vb3B1cy1jb2RlYy5vcmcvdGVzdHZlY3Rv
cnMvb3B1c190ZXN0dmVjdG9ycy50YXIuZ3oKLSUgdGFyIC16eGYgb3B1c190ZXN0dmVjdG9ycy50
YXIuZ3oKLSUgLi90ZXN0cy9ydW5fdmVjdG9ycy5zaCAuLyBvcHVzX3Rlc3R2ZWN0b3JzIDQ4MDAw
CisgICAgJSBjdXJsIC1PTCBodHRwczovL29wdXMtY29kZWMub3JnL3Rlc3R2ZWN0b3JzL29wdXNf
dGVzdHZlY3RvcnMudGFyLmd6CisgICAgJSB0YXIgLXp4ZiBvcHVzX3Rlc3R2ZWN0b3JzLnRhci5n
egorICAgICUgLi90ZXN0cy9ydW5fdmVjdG9ycy5zaCAuLyBvcHVzX3Rlc3R2ZWN0b3JzIDQ4MDAw
CiAKID09IFBvcnRhYmlsaXR5IG5vdGVzID09CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvUkVBRE1FLmRyYWZ0IGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9S
RUFETUUuZHJhZnQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGQ4ZTI0ZGYyMmZmODRhNmQxYTJiOWFlNjY5MTg3ZmIy
ODdhMzI0YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvUkVBRE1FLmRyYWZ0CkBAIC0wLDAgKzEsNTQgQEAK
K1RvIGJ1aWxkIHRoaXMgc291cmNlIGNvZGUsIHNpbXBseSB0eXBlOgorCislIG1ha2UKKworSWYg
dGhpcyBkb2VzIG5vdCB3b3JrLCBvciBpZiB5b3Ugd2FudCB0byBjaGFuZ2UgdGhlIGRlZmF1bHQg
Y29uZmlndXJhdGlvbgorKGUuZy4sIHRvIGNvbXBpbGUgZm9yIGEgZml4ZWQtcG9pbnQgYXJjaGl0
ZWN0dXJlKSwgc2ltcGx5IGVkaXQgdGhlIG9wdGlvbnMKK2luIHRoZSBNYWtlZmlsZS4KKworQW4g
dXAtdG8tZGF0ZSBpbXBsZW1lbnRhdGlvbiBjb25mb3JtaW5nIHRvIHRoaXMgc3RhbmRhcmQgaXMg
YXZhaWxhYmxlIGluIGEKK0dpdCByZXBvc2l0b3J5IGF0IGh0dHBzOi8vZ2l0LnhpcGgub3JnL29w
dXMuZ2l0IG9yIG9uIGEgd2Vic2l0ZSBhdDoKK2h0dHBzOi8vb3B1cy1jb2RlYy5vcmcvCitIb3dl
dmVyLCBhbHRob3VnaCB0aGF0IGltcGxlbWVudGF0aW9uIGlzIGV4cGVjdGVkIHRvIHJlbWFpbiBj
b25mb3JtYW50Cit3aXRoIHRoZSBzdGFuZGFyZCwgaXQgaXMgdGhlIGNvZGUgaW4gdGhpcyBSRkMg
dGhhdCBzaGFsbCByZW1haW4gbm9ybWF0aXZlLgorVG8gYnVpbGQgZnJvbSB0aGUgZ2l0IHJlcG9z
aXRvcnkgaW5zdGVhZCBvZiB1c2luZyB0aGlzIFJGQywgZm9sbG93IHRoZXNlCitzdGVwczoKKwor
MSkgQ2xvbmUgdGhlIHJlcG9zaXRvcnkgKGxhdGVzdCBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzIHN0
YW5kYXJkIGF0IHRoZSB0aW1lCitvZiBwdWJsaWNhdGlvbikKKworJSBnaXQgY2xvbmUgaHR0cHM6
Ly9naXQueGlwaC5vcmcvb3B1cy5naXQKKyUgY2Qgb3B1cworCisyKSBDb21waWxlCisKKyUgLi9h
dXRvZ2VuLnNoCislIC4vY29uZmlndXJlCislIG1ha2UKKworT25jZSB5b3UgaGF2ZSBjb21waWxl
ZCB0aGUgY29kZWMsIHRoZXJlIHdpbGwgYmUgYSBvcHVzX2RlbW8gZXhlY3V0YWJsZSBpbgordGhl
IHRvcCBkaXJlY3RvcnkuCisKK1VzYWdlOiBvcHVzX2RlbW8gWy1lXSA8YXBwbGljYXRpb24+IDxz
YW1wbGluZyByYXRlIChIeik+IDxjaGFubmVscyAoMS8yKT4KKyAgICAgICAgIDxiaXRzIHBlciBz
ZWNvbmQ+IFtvcHRpb25zXSA8aW5wdXQ+IDxvdXRwdXQ+CisgICAgICAgb3B1c19kZW1vIC1kIDxz
YW1wbGluZyByYXRlIChIeik+IDxjaGFubmVscyAoMS8yKT4gW29wdGlvbnNdCisgICAgICAgICA8
aW5wdXQ+IDxvdXRwdXQ+CisKK21vZGU6IHZvaXAgfCBhdWRpbyB8IHJlc3RyaWN0ZWQtbG93ZGVs
YXkKK29wdGlvbnM6CistZSAgICAgICAgICAgICAgICAgICA6IG9ubHkgcnVucyB0aGUgZW5jb2Rl
ciAob3V0cHV0IHRoZSBiaXQtc3RyZWFtKQorLWQgICAgICAgICAgICAgICAgICAgOiBvbmx5IHJ1
bnMgdGhlIGRlY29kZXIgKHJlYWRzIHRoZSBiaXQtc3RyZWFtIGFzIGlucHV0KQorLWNiciAgICAg
ICAgICAgICAgICAgOiBlbmFibGUgY29uc3RhbnQgYml0cmF0ZTsgZGVmYXVsdDogdmFyaWFibGUg
Yml0cmF0ZQorLWN2YnIgICAgICAgICAgICAgICAgOiBlbmFibGUgY29uc3RyYWluZWQgdmFyaWFi
bGUgYml0cmF0ZTsgZGVmYXVsdDogdW5jb25zdHJhaW5lZAorLWJhbmR3aWR0aCA8TkJ8TUJ8V0J8
U1dCfEZCPiA6IGF1ZGlvIGJhbmR3aWR0aCAoZnJvbSBuYXJyb3diYW5kIHRvIGZ1bGxiYW5kKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OiBzYW1wbGluZyByYXRlCist
ZnJhbWVzaXplIDwyLjV8NXwxMHwyMHw0MHw2MD4gOiBmcmFtZSBzaXplIGluIG1zOyBkZWZhdWx0
OiAyMAorLW1heF9wYXlsb2FkIDxieXRlcz4gOiBtYXhpbXVtIHBheWxvYWQgc2l6ZSBpbiBieXRl
cywgZGVmYXVsdDogMTAyNAorLWNvbXBsZXhpdHkgPGNvbXA+ICAgOiBjb21wbGV4aXR5LCAwIChs
b3dlc3QpIC4uLiAxMCAoaGlnaGVzdCk7IGRlZmF1bHQ6IDEwCistaW5iYW5kZmVjICAgICAgICAg
ICA6IGVuYWJsZSBTSUxLIGluYmFuZCBGRUMKKy1mb3JjZW1vbm8gICAgICAgICAgIDogZm9yY2Ug
bW9ubyBlbmNvZGluZywgZXZlbiBmb3Igc3RlcmVvIGlucHV0CistZHR4ICAgICAgICAgICAgICAg
ICA6IGVuYWJsZSBTSUxLIERUWAorLWxvc3MgPHBlcmM+ICAgICAgICAgOiBzaW11bGF0ZSBwYWNr
ZXQgbG9zcywgaW4gcGVyY2VudCAoMC0xMDApOyBkZWZhdWx0OiAwCisKK2lucHV0IGFuZCBvdXRw
dXQgYXJlIGxpdHRsZSBlbmRpYW4gc2lnbmVkIDE2LWJpdCBQQ00gZmlsZXMgb3Igb3B1cyBiaXRz
dHJlYW1zCit3aXRoIHNpbXBsZSBvcHVzX2RlbW8gcHJvcHJpZXRhcnkgZnJhbWluZy4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvYXV0b2dlbi5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvYXV0b2dlbi5zaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zODBkMWYzY2E2ZGNjYmM0
NzFlY2YyZGVhZGU4MzZkOGVkOGYyYTIwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9hdXRvZ2VuLnNoCkBA
IC0wLDAgKzEsMTQgQEAKKyMhL2Jpbi9zaAorIyBDb3B5cmlnaHQgKGMpIDIwMTAtMjAxNSBYaXBo
Lk9yZyBGb3VuZGF0aW9uIGFuZCBjb250cmlidXRvcnMuCisjIFVzZSBvZiB0aGlzIHNvdXJjZSBj
b2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKyMgZm91
bmQgaW4gdGhlIENPUFlJTkcgZmlsZS4KKworIyBSdW4gdGhpcyB0byBzZXQgdXAgdGhlIGJ1aWxk
IHN5c3RlbTogY29uZmlndXJlLCBtYWtlZmlsZXMsIGV0Yy4KK3NldCAtZQorCitzcmNkaXI9YGRp
cm5hbWUgJDBgCit0ZXN0IC1uICIkc3JjZGlyIiAmJiBjZCAiJHNyY2RpciIKKworZWNobyAiVXBk
YXRpbmcgYnVpbGQgY29uZmlndXJhdGlvbiBmaWxlcywgcGxlYXNlIHdhaXQuLi4uIgorCithdXRv
cmVjb25mIC1pc2YKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9fa2lzc19mZnRfZ3V0cy5oIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L19raXNz
X2ZmdF9ndXRzLmgKaW5kZXggNWUzZDU4ZmQ2NjQxZTUzZGZiNTZhMmYzMmQ1OGM4Y2Q5NzE3YTQ3
Zi4uMTczOTJiM2U5MDk3N2I3NDA0OTA0OWI3ZmEwMWE5ZjhjYjBmYzA5MyAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L19raXNzX2ZmdF9ndXRzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L19raXNzX2ZmdF9ndXRzLmgKQEAgLTU4LDEy
ICs1OCwxMiBAQAogIyAgIGRlZmluZSBTX01VTChhLGIpIE1VTFQxNl8zMl9RMTUoYiwgYSkKIAog
IyAgIGRlZmluZSBDX01VTChtLGEsYikgXAotICAgICAgZG97IChtKS5yID0gU1VCMzIoU19NVUwo
KGEpLnIsKGIpLnIpICwgU19NVUwoKGEpLmksKGIpLmkpKTsgXAotICAgICAgICAgIChtKS5pID0g
QUREMzIoU19NVUwoKGEpLnIsKGIpLmkpICwgU19NVUwoKGEpLmksKGIpLnIpKTsgfXdoaWxlKDAp
CisgICAgICBkb3sgKG0pLnIgPSBTVUIzMl9vdmZsdyhTX01VTCgoYSkuciwoYikucikgLCBTX01V
TCgoYSkuaSwoYikuaSkpOyBcCisgICAgICAgICAgKG0pLmkgPSBBREQzMl9vdmZsdyhTX01VTCgo
YSkuciwoYikuaSkgLCBTX01VTCgoYSkuaSwoYikucikpOyB9d2hpbGUoMCkKIAogIyAgIGRlZmlu
ZSBDX01VTEMobSxhLGIpIFwKLSAgICAgIGRveyAobSkuciA9IEFERDMyKFNfTVVMKChhKS5yLChi
KS5yKSAsIFNfTVVMKChhKS5pLChiKS5pKSk7IFwKLSAgICAgICAgICAobSkuaSA9IFNVQjMyKFNf
TVVMKChhKS5pLChiKS5yKSAsIFNfTVVMKChhKS5yLChiKS5pKSk7IH13aGlsZSgwKQorICAgICAg
ZG97IChtKS5yID0gQUREMzJfb3ZmbHcoU19NVUwoKGEpLnIsKGIpLnIpICwgU19NVUwoKGEpLmks
KGIpLmkpKTsgXAorICAgICAgICAgIChtKS5pID0gU1VCMzJfb3ZmbHcoU19NVUwoKGEpLmksKGIp
LnIpICwgU19NVUwoKGEpLnIsKGIpLmkpKTsgfXdoaWxlKDApCiAKICMgICBkZWZpbmUgQ19NVUxC
WVNDQUxBUiggYywgcyApIFwKICAgICAgIGRveyAoYykuciA9ICBTX01VTCggKGMpLnIgLCBzICkg
O1wKQEAgLTc3LDE3ICs3NywxNyBAQAogICAgICAgICAgICAgICAgIERJVlNDQUxBUiggKGMpLmkg
ICwgZGl2KTsgfXdoaWxlICgwKQogCiAjZGVmaW5lICBDX0FERCggcmVzLCBhLGIpXAotICAgIGRv
IHsocmVzKS5yPUFERDMyKChhKS5yLChiKS5yKTsgIChyZXMpLmk9QUREMzIoKGEpLmksKGIpLmkp
OyBcCisgICAgZG8geyhyZXMpLnI9QUREMzJfb3ZmbHcoKGEpLnIsKGIpLnIpOyAgKHJlcykuaT1B
REQzMl9vdmZsdygoYSkuaSwoYikuaSk7IFwKICAgICB9d2hpbGUoMCkKICNkZWZpbmUgIENfU1VC
KCByZXMsIGEsYilcCi0gICAgZG8geyhyZXMpLnI9U1VCMzIoKGEpLnIsKGIpLnIpOyAgKHJlcyku
aT1TVUIzMigoYSkuaSwoYikuaSk7IFwKKyAgICBkbyB7KHJlcykucj1TVUIzMl9vdmZsdygoYSku
ciwoYikucik7ICAocmVzKS5pPVNVQjMyX292Zmx3KChhKS5pLChiKS5pKTsgXAogICAgIH13aGls
ZSgwKQogI2RlZmluZSBDX0FERFRPKCByZXMgLCBhKVwKLSAgICBkbyB7KHJlcykuciA9IEFERDMy
KChyZXMpLnIsIChhKS5yKTsgIChyZXMpLmkgPSBBREQzMigocmVzKS5pLChhKS5pKTtcCisgICAg
ZG8geyhyZXMpLnIgPSBBREQzMl9vdmZsdygocmVzKS5yLCAoYSkucik7ICAocmVzKS5pID0gQURE
MzJfb3ZmbHcoKHJlcykuaSwoYSkuaSk7XAogICAgIH13aGlsZSgwKQogCiAjZGVmaW5lIENfU1VC
RlJPTSggcmVzICwgYSlcCi0gICAgZG8geyhyZXMpLnIgPSBBREQzMigocmVzKS5yLChhKS5yKTsg
IChyZXMpLmkgPSBTVUIzMigocmVzKS5pLChhKS5pKTsgXAorICAgIGRvIHsocmVzKS5yID0gQURE
MzJfb3ZmbHcoKHJlcykuciwoYSkucik7ICAocmVzKS5pID0gU1VCMzJfb3ZmbHcoKHJlcykuaSwo
YSkuaSk7IFwKICAgICB9d2hpbGUoMCkKIAogI2lmIGRlZmluZWQoT1BVU19BUk1fSU5MSU5FX0FT
TSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC9hcmNoLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJjaC5oCmluZGV4IDhjZWFiNWZlMTBl
OTM0MTEzNTkyYWRlOTMzOTkzOTc3MWY0YTJhMDEuLmQxZTY0NTdjNTRhMDdjNmVjNWMzYTAzMDUx
MGRhOGFiNDIzNTUwMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcmNoLmgKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FyY2guaApA
QCAtNDYsNiArNDYsMTQgQEAKICMgIGVuZGlmCiAjIGVuZGlmCiAKKyNpZiBPUFVTX0dOVUNfUFJF
UkVRKDMsIDApCisjZGVmaW5lIG9wdXNfbGlrZWx5KHgpICAgICAgIChfX2J1aWx0aW5fZXhwZWN0
KCEhKHgpLCAxKSkKKyNkZWZpbmUgb3B1c191bmxpa2VseSh4KSAgICAgKF9fYnVpbHRpbl9leHBl
Y3QoISEoeCksIDApKQorI2Vsc2UKKyNkZWZpbmUgb3B1c19saWtlbHkoeCkgICAgICAgKCEhKHgp
KQorI2RlZmluZSBvcHVzX3VubGlrZWx5KHgpICAgICAoISEoeCkpCisjZW5kaWYKKwogI2RlZmlu
ZSBDRUxUX1NJR19TQ0FMRSAzMjc2OC5mCiAKICNkZWZpbmUgY2VsdF9mYXRhbChzdHIpIF9jZWx0
X2ZhdGFsKHN0ciwgX19GSUxFX18sIF9fTElORV9fKTsKQEAgLTkzLDYgKzEwMSw3IEBAIHN0YXRp
YyBPUFVTX0lOTElORSB2b2lkIF9jZWx0X2ZhdGFsKGNvbnN0IGNoYXIgKnN0ciwgY29uc3QgY2hh
ciAqZmlsZSwgaW50IGxpbmUpCiAKIHR5cGVkZWYgb3B1c19pbnQxNiBvcHVzX3ZhbDE2OwogdHlw
ZWRlZiBvcHVzX2ludDMyIG9wdXNfdmFsMzI7Cit0eXBlZGVmIG9wdXNfaW50NjQgb3B1c192YWw2
NDsKIAogdHlwZWRlZiBvcHVzX3ZhbDMyIGNlbHRfc2lnOwogdHlwZWRlZiBvcHVzX3ZhbDE2IGNl
bHRfbm9ybTsKQEAgLTEwMSw2ICsxMTAsOSBAQCB0eXBlZGVmIG9wdXNfdmFsMzIgY2VsdF9lbmVy
OwogI2RlZmluZSBRMTVPTkUgMzI3NjcKIAogI2RlZmluZSBTSUdfU0hJRlQgMTIKKy8qIFNhZmUg
c2F0dXJhdGlvbiB2YWx1ZSBmb3IgMzItYml0IHNpZ25hbHMuIFNob3VsZCBiZSBsZXNzIHRoYW4K
KyAgIDJeMzEqKDEtMC44NSkgdG8gYXZvaWQgYmxvd2luZyB1cCBvbiBEQyBhdCBkZWVtcGhhc2lz
LiovCisjZGVmaW5lIFNJR19TQVQgKDMwMDAwMDAwMCkKIAogI2RlZmluZSBOT1JNX1NDQUxJTkcg
MTYzODQKIApAQCAtMTQ3LDYgKzE1OSw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDE2
IFNBVDE2KG9wdXNfaW50MzIgeCkgewogCiB0eXBlZGVmIGZsb2F0IG9wdXNfdmFsMTY7CiB0eXBl
ZGVmIGZsb2F0IG9wdXNfdmFsMzI7Cit0eXBlZGVmIGZsb2F0IG9wdXNfdmFsNjQ7CiAKIHR5cGVk
ZWYgZmxvYXQgY2VsdF9zaWc7CiB0eXBlZGVmIGZsb2F0IGNlbHRfbm9ybTsKQEAgLTE4Niw2ICsx
OTksNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgaW50IGNlbHRfaXNuYW4oZmxvYXQgeCkKIAogI2Rl
ZmluZSBORUcxNih4KSAoLSh4KSkKICNkZWZpbmUgTkVHMzIoeCkgKC0oeCkpCisjZGVmaW5lIE5F
RzMyX292Zmx3KHgpICgtKHgpKQogI2RlZmluZSBFWFRSQUNUMTYoeCkgKHgpCiAjZGVmaW5lIEVY
VEVORDMyKHgpICh4KQogI2RlZmluZSBTSFIxNihhLHNoaWZ0KSAoYSkKQEAgLTIwMiw2ICsyMTYs
NyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgaW50IGNlbHRfaXNuYW4oZmxvYXQgeCkKICNkZWZpbmUg
U0FUVVJBVEUxNih4KSAgICh4KQogCiAjZGVmaW5lIFJPVU5EMTYoYSxzaGlmdCkgIChhKQorI2Rl
ZmluZSBTUk9VTkQxNihhLHNoaWZ0KSAoYSkKICNkZWZpbmUgSEFMRjE2KHgpICAgICAgICguNWYq
KHgpKQogI2RlZmluZSBIQUxGMzIoeCkgICAgICAgKC41ZiooeCkpCiAKQEAgLTIwOSw2ICsyMjQs
OCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgaW50IGNlbHRfaXNuYW4oZmxvYXQgeCkKICNkZWZpbmUg
U1VCMTYoYSxiKSAoKGEpLShiKSkKICNkZWZpbmUgQUREMzIoYSxiKSAoKGEpKyhiKSkKICNkZWZp
bmUgU1VCMzIoYSxiKSAoKGEpLShiKSkKKyNkZWZpbmUgQUREMzJfb3ZmbHcoYSxiKSAoKGEpKyhi
KSkKKyNkZWZpbmUgU1VCMzJfb3ZmbHcoYSxiKSAoKGEpLShiKSkKICNkZWZpbmUgTVVMVDE2XzE2
XzE2KGEsYikgICAgICgoYSkqKGIpKQogI2RlZmluZSBNVUxUMTZfMTYoYSxiKSAgICAgKChvcHVz
X3ZhbDMyKShhKSoob3B1c192YWwzMikoYikpCiAjZGVmaW5lIE1BQzE2XzE2KGMsYSxiKSAgICAg
KChjKSsob3B1c192YWwzMikoYSkqKG9wdXNfdmFsMzIpKGIpKQpAQCAtMjQzLDkgKzI2MCw5IEBA
IHN0YXRpYyBPUFVTX0lOTElORSBpbnQgY2VsdF9pc25hbihmbG9hdCB4KQogCiAjaWZuZGVmIEdM
T0JBTF9TVEFDS19TSVpFCiAjaWZkZWYgRklYRURfUE9JTlQKLSNkZWZpbmUgR0xPQkFMX1NUQUNL
X1NJWkUgMTAwMDAwCisjZGVmaW5lIEdMT0JBTF9TVEFDS19TSVpFIDEyMDAwMAogI2Vsc2UKLSNk
ZWZpbmUgR0xPQkFMX1NUQUNLX1NJWkUgMTAwMDAwCisjZGVmaW5lIEdMT0JBTF9TVEFDS19TSVpF
IDEyMDAwMAogI2VuZGlmCiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9hcm0yZ251LnBs
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L2FybS9hcm0yZ251LnBsCmluZGV4IDZjOTIyYWM4MTlkN2UwODg5YmRiYjcyYzRlOGJl
YzljZjZiZTVkNGIuLmEyODk1Zjc0NDVlODk0MzM2NjkxNTJlM2M0ODkxMTZkMDg2MGE3YjkgMTAw
NzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9hcm0vYXJtMmdudS5wbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2FybTJnbnUucGwKQEAg
LTE2NCwxMSArMTY0LDExIEBAIHdoaWxlICg8PikgewogICAgICAgICAkcHJlZml4ID0gIiI7CiAg
ICAgICAgIGlmICgkcHJvYykKICAgICAgICAgewotICAgICAgICAgICAgJHByZWZpeCA9ICRwcmVm
aXguc3ByaW50ZigiXHQudHlwZVx0JXMsICUlZnVuY3Rpb247ICIsJHByb2MpIHVubGVzcyAoJGFw
cGxlKTsKKyAgICAgICAgICAgICRwcmVmaXggPSAkcHJlZml4LnNwcmludGYoIlx0LnR5cGVcdCVz
LCAlJWZ1bmN0aW9uIiwgJHByb2MpIHVubGVzcyAoJGFwcGxlKTsKICAgICAgICAgICAgICMgTWFr
ZSBzdXJlIHdlICRwcmVmaXggaXNuJ3QgZW1wdHkgaGVyZSAoZm9yIHRoZSAkYXBwbGUgY2FzZSku
CiAgICAgICAgICAgICAjIFdlIGhhbmRsZSBtYW5nbGluZyB0aGUgbGFiZWwgaGVyZSwgbWFrZSBz
dXJlIGl0IGRvZXNuJ3QgbWF0Y2gKICAgICAgICAgICAgICMgdGhlIGxhYmVsIGhhbmRsaW5nIGJl
bG93IChpZiAkcHJlZml4IHdvdWxkIGJlIGVtcHR5KS4KLSAgICAgICAgICAgICRwcmVmaXggPSAi
OyAiOworICAgICAgICAgICAgJHByZWZpeCA9ICRwcmVmaXguIjsgIjsKICAgICAgICAgICAgIHB1
c2goQHByb2Nfc3RhY2ssICRwcm9jKTsKICAgICAgICAgICAgIHMvXltBLVphLXpfXC5dXHcrLyRz
eW1wcmVmaXgkJjovOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2FybV9jZWx0X21h
cC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L2FybS9hcm1fY2VsdF9tYXAuYwppbmRleCA0ZDRkMDY5YTg2ZmMyNzdhYTYyYTA5
MDRlMzEyNTYwNGZjOTY5Y2M5Li5jYTk4OGI2NmY1NWQxN2MxMTZmMGI3YTE5ZGIxYzZhMWJjYjRi
NjIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2FybV9jZWx0X21hcC5jCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vYXJt
X2NlbHRfbWFwLmMKQEAgLTM1LDEyICszNSwyOSBAQAogCiAjaWYgZGVmaW5lZChPUFVTX0hBVkVf
UlRDRCkKIAorIyBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikgJiYgIWRl
ZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpCitvcHVzX3ZhbDMyICgqY29uc3QgQ0VM
VF9JTk5FUl9QUk9EX0lNUExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qgb3B1c192YWwxNiAqeCwg
Y29uc3Qgb3B1c192YWwxNiAqeSwgaW50IE4pID0geworICBjZWx0X2lubmVyX3Byb2RfYywgICAv
KiBBUk12NCAqLworICBjZWx0X2lubmVyX3Byb2RfYywgICAvKiBFRFNQICovCisgIGNlbHRfaW5u
ZXJfcHJvZF9jLCAgIC8qIE1lZGlhICovCisgIGNlbHRfaW5uZXJfcHJvZF9uZW9uIC8qIE5FT04g
Ki8KK307CisKK3ZvaWQgKCpjb25zdCBEVUFMX0lOTkVSX1BST0RfSU1QTFtPUFVTX0FSQ0hNQVNL
KzFdKShjb25zdCBvcHVzX3ZhbDE2ICp4LCBjb25zdCBvcHVzX3ZhbDE2ICp5MDEsIGNvbnN0IG9w
dXNfdmFsMTYgKnkwMiwKKyAgICAgIGludCBOLCBvcHVzX3ZhbDMyICp4eTEsIG9wdXNfdmFsMzIg
Knh5MikgPSB7CisgIGR1YWxfaW5uZXJfcHJvZF9jLCAgIC8qIEFSTXY0ICovCisgIGR1YWxfaW5u
ZXJfcHJvZF9jLCAgIC8qIEVEU1AgKi8KKyAgZHVhbF9pbm5lcl9wcm9kX2MsICAgLyogTWVkaWEg
Ki8KKyAgZHVhbF9pbm5lcl9wcm9kX25lb24gLyogTkVPTiAqLworfTsKKyMgZW5kaWYKKwogIyBp
ZiBkZWZpbmVkKEZJWEVEX1BPSU5UKQogIyAgaWYgKChkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZF
X05FT04pICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTikpIHx8IFwKICAgICAoZGVm
aW5lZChPUFVTX0FSTV9NQVlfSEFWRV9NRURJQSkgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VN
RV9NRURJQSkpIHx8IFwKICAgICAoZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9FRFNQKSAmJiAh
ZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX0VEU1ApKSkKIG9wdXNfdmFsMzIgKCpjb25zdCBDRUxU
X1BJVENIX1hDT1JSX0lNUExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qgb3B1c192YWwxNiAqLAot
ICAgIGNvbnN0IG9wdXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQgLCBpbnQpID0geworICAg
IGNvbnN0IG9wdXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQsIGludCwgaW50KSA9IHsKICAg
Y2VsdF9waXRjaF94Y29ycl9jLCAgICAgICAgICAgICAgIC8qIEFSTXY0ICovCiAgIE1BWV9IQVZF
X0VEU1AoY2VsdF9waXRjaF94Y29yciksICAvKiBFRFNQICovCiAgIE1BWV9IQVZFX01FRElBKGNl
bHRfcGl0Y2hfeGNvcnIpLCAvKiBNZWRpYSAqLwpAQCAtNTEsNyArNjgsNyBAQCBvcHVzX3ZhbDMy
ICgqY29uc3QgQ0VMVF9QSVRDSF9YQ09SUl9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9w
dXNfdmFsMTYgKiwKICMgZWxzZSAvKiAhRklYRURfUE9JTlQgKi8KICMgIGlmIGRlZmluZWQoT1BV
U19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05F
T05fSU5UUikKIHZvaWQgKCpjb25zdCBDRUxUX1BJVENIX1hDT1JSX0lNUExbT1BVU19BUkNITUFT
SysxXSkoY29uc3Qgb3B1c192YWwxNiAqLAotICAgIGNvbnN0IG9wdXNfdmFsMTYgKiwgb3B1c192
YWwzMiAqLCBpbnQsIGludCkgPSB7CisgICAgY29uc3Qgb3B1c192YWwxNiAqLCBvcHVzX3ZhbDMy
ICosIGludCwgaW50LCBpbnQpID0gewogICBjZWx0X3BpdGNoX3hjb3JyX2MsICAgICAgICAgICAg
ICAvKiBBUk12NCAqLwogICBjZWx0X3BpdGNoX3hjb3JyX2MsICAgICAgICAgICAgICAvKiBFRFNQ
ICovCiAgIGNlbHRfcGl0Y2hfeGNvcnJfYywgICAgICAgICAgICAgIC8qIE1lZGlhICovCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvYXJtL2NlbHRfbmUxMF9mZnQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vY2VsdF9uZTEwX2ZmdC5j
CmluZGV4IDQyZDk2YTcxMTc2MGUzYTZkZGY0YmU2MWNkZjdiZjk3MWFhNzhhYTMuLmI4YzYwYWJl
OThiODM1NzFhMGJjODU4NTA4MWE1N2ZhY2I1YTU2YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vY2Vs
dF9uZTEwX2ZmdC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vY2VsdF9uZTEwX2ZmdC5jCkBAIC0zNiw3ICszNiw2
IEBACiAjZW5kaWYKICNlbmRpZgogCi0jaW5jbHVkZSA8TkUxMF9pbml0Lmg+CiAjaW5jbHVkZSA8
TkUxMF9kc3AuaD4KICNpbmNsdWRlICJvc19zdXBwb3J0LmgiCiAjaW5jbHVkZSAia2lzc19mZnQu
aCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vY2VsdF9uZW9uX2ludHIuYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vY2VsdF9u
ZW9uX2ludHIuYwppbmRleCA0N2JiZTNkYzIyZWM5M2NmZWI5Mzk4MjQ4YmQxNDQxMjhjMzMzOTc1
Li5jZjQ0Mzk4OGNlNWZlNTMyM2I4NDQ1Y2I2NTZhOTkxYTk4ZGE1MTRmIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvYXJtL2NlbHRfbmVvbl9pbnRyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0X25lb25faW50ci5jCkBA
IC0xOTEsMTA3ICsxOTEsMTAgQEAgc3RhdGljIHZvaWQgeGNvcnJfa2VybmVsX25lb25fZmxvYXQo
Y29uc3QgZmxvYXQzMl90ICp4LCBjb25zdCBmbG9hdDMyX3QgKnksCiAgICB2c3QxcV9mMzIoc3Vt
LCBTVU1NKTsKIH0KIAotLyoKLSAqIEZ1bmN0aW9uOiB4Y29ycl9rZXJuZWxfbmVvbl9mbG9hdF9w
cm9jZXNzMQotICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gKiBDb21wdXRl
cyBzaW5nbGUgY29ycmVsYXRpb24gdmFsdWVzIGFuZCBzdG9yZXMgaW4gKnN1bQotICovCi1zdGF0
aWMgdm9pZCB4Y29ycl9rZXJuZWxfbmVvbl9mbG9hdF9wcm9jZXNzMShjb25zdCBmbG9hdDMyX3Qg
KngsCi0gICAgICBjb25zdCBmbG9hdDMyX3QgKnksIGZsb2F0MzJfdCAqc3VtLCBpbnQgbGVuKSB7
Ci0gICBmbG9hdDMyeDRfdCBYWFs0XTsKLSAgIGZsb2F0MzJ4NF90IFlZWzRdOwotICAgZmxvYXQz
MngyX3QgWFhfMjsKLSAgIGZsb2F0MzJ4Ml90IFlZXzI7Ci0gICBmbG9hdDMyeDRfdCBTVU1NOwot
ICAgZmxvYXQzMngyX3QgU1VNTV8yWzJdOwotICAgY29uc3QgZmxvYXQzMl90ICp4aSA9IHg7Ci0g
ICBjb25zdCBmbG9hdDMyX3QgKnlpID0geTsKLQotICAgU1VNTSA9IHZkdXBxX25fZjMyKDApOwot
Ci0gICAvKiBXb3JrIG9uIDE2IHZhbHVlcyBwZXIgaXRlcmF0aW9uICovCi0gICB3aGlsZSAobGVu
ID49IDE2KSB7Ci0gICAgICBYWFswXSA9IHZsZDFxX2YzMih4aSk7Ci0gICAgICB4aSArPSA0Owot
ICAgICAgWFhbMV0gPSB2bGQxcV9mMzIoeGkpOwotICAgICAgeGkgKz0gNDsKLSAgICAgIFhYWzJd
ID0gdmxkMXFfZjMyKHhpKTsKLSAgICAgIHhpICs9IDQ7Ci0gICAgICBYWFszXSA9IHZsZDFxX2Yz
Mih4aSk7Ci0gICAgICB4aSArPSA0OwotCi0gICAgICBZWVswXSA9IHZsZDFxX2YzMih5aSk7Ci0g
ICAgICB5aSArPSA0OwotICAgICAgWVlbMV0gPSB2bGQxcV9mMzIoeWkpOwotICAgICAgeWkgKz0g
NDsKLSAgICAgIFlZWzJdID0gdmxkMXFfZjMyKHlpKTsKLSAgICAgIHlpICs9IDQ7Ci0gICAgICBZ
WVszXSA9IHZsZDFxX2YzMih5aSk7Ci0gICAgICB5aSArPSA0OwotCi0gICAgICBTVU1NID0gdm1s
YXFfZjMyKFNVTU0sIFlZWzBdLCBYWFswXSk7Ci0gICAgICBTVU1NID0gdm1sYXFfZjMyKFNVTU0s
IFlZWzFdLCBYWFsxXSk7Ci0gICAgICBTVU1NID0gdm1sYXFfZjMyKFNVTU0sIFlZWzJdLCBYWFsy
XSk7Ci0gICAgICBTVU1NID0gdm1sYXFfZjMyKFNVTU0sIFlZWzNdLCBYWFszXSk7Ci0gICAgICBs
ZW4gLT0gMTY7Ci0gICB9Ci0KLSAgIC8qIFdvcmsgb24gOCB2YWx1ZXMgKi8KLSAgIGlmIChsZW4g
Pj0gOCkgewotICAgICAgWFhbMF0gPSB2bGQxcV9mMzIoeGkpOwotICAgICAgeGkgKz0gNDsKLSAg
ICAgIFhYWzFdID0gdmxkMXFfZjMyKHhpKTsKLSAgICAgIHhpICs9IDQ7Ci0KLSAgICAgIFlZWzBd
ID0gdmxkMXFfZjMyKHlpKTsKLSAgICAgIHlpICs9IDQ7Ci0gICAgICBZWVsxXSA9IHZsZDFxX2Yz
Mih5aSk7Ci0gICAgICB5aSArPSA0OwotCi0gICAgICBTVU1NID0gdm1sYXFfZjMyKFNVTU0sIFlZ
WzBdLCBYWFswXSk7Ci0gICAgICBTVU1NID0gdm1sYXFfZjMyKFNVTU0sIFlZWzFdLCBYWFsxXSk7
Ci0gICAgICBsZW4gLT0gODsKLSAgIH0KLQotICAgLyogV29yayBvbiA0IHZhbHVlcyAqLwotICAg
aWYgKGxlbiA+PSA0KSB7Ci0gICAgICBYWFswXSA9IHZsZDFxX2YzMih4aSk7Ci0gICAgICB4aSAr
PSA0OwotICAgICAgWVlbMF0gPSB2bGQxcV9mMzIoeWkpOwotICAgICAgeWkgKz0gNDsKLSAgICAg
IFNVTU0gPSB2bWxhcV9mMzIoU1VNTSwgWVlbMF0sIFhYWzBdKTsKLSAgICAgIGxlbiAtPSA0Owot
ICAgfQotCi0gICAvKiBTdGFydCBhY2N1bXVsYXRpbmcgcmVzdWx0cyAqLwotICAgU1VNTV8yWzBd
ID0gdmdldF9sb3dfZjMyKFNVTU0pOwotICAgaWYgKGxlbiA+PSAyKSB7Ci0gICAgICAvKiBXaGls
ZSBhdCBpdCwgY29uc3VtZSAyIG1vcmUgdmFsdWVzIGlmIGF2YWlsYWJsZSAqLwotICAgICAgWFhf
MiA9IHZsZDFfZjMyKHhpKTsKLSAgICAgIHhpICs9IDI7Ci0gICAgICBZWV8yID0gdmxkMV9mMzIo
eWkpOwotICAgICAgeWkgKz0gMjsKLSAgICAgIFNVTU1fMlswXSA9IHZtbGFfZjMyKFNVTU1fMlsw
XSwgWVlfMiwgWFhfMik7Ci0gICAgICBsZW4gLT0gMjsKLSAgIH0KLSAgIFNVTU1fMlsxXSA9IHZn
ZXRfaGlnaF9mMzIoU1VNTSk7Ci0gICBTVU1NXzJbMF0gPSB2YWRkX2YzMihTVU1NXzJbMF0sIFNV
TU1fMlsxXSk7Ci0gICBTVU1NXzJbMF0gPSB2cGFkZF9mMzIoU1VNTV8yWzBdLCBTVU1NXzJbMF0p
OwotICAgLyogT2ssIG5vdyB3ZSBoYXZlIHJlc3VsdCBhY2N1bXVsYXRlZCBpbiBTVU1NXzJbMF0u
MCAqLwotCi0gICBpZiAobGVuID4gMCkgewotICAgICAgLyogQ2FzZSB3aGVuIHlvdSBoYXZlIG9u
ZSB2YWx1ZSBsZWZ0ICovCi0gICAgICBYWF8yID0gdmxkMV9kdXBfZjMyKHhpKTsKLSAgICAgIFlZ
XzIgPSB2bGQxX2R1cF9mMzIoeWkpOwotICAgICAgU1VNTV8yWzBdID0gdm1sYV9mMzIoU1VNTV8y
WzBdLCBYWF8yLCBZWV8yKTsKLSAgIH0KLQotICAgdnN0MV9sYW5lX2YzMihzdW0sIFNVTU1fMlsw
XSwgMCk7Ci19Ci0KIHZvaWQgY2VsdF9waXRjaF94Y29ycl9mbG9hdF9uZW9uKGNvbnN0IG9wdXNf
dmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKLSAgICAgICAgICAgICAgICAgICAgICAg
IG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3BpdGNoKSB7CisgICAgICAgICAg
ICAgICAgICAgICAgICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCwg
aW50IGFyY2gpIHsKICAgIGludCBpOworICAgKHZvaWQpYXJjaDsKICAgIGNlbHRfYXNzZXJ0KG1h
eF9waXRjaCA+IDApOwogICAgY2VsdF9hc3NlcnQoKCgodW5zaWduZWQgY2hhciAqKV94LSh1bnNp
Z25lZCBjaGFyICopTlVMTCkmMyk9PTApOwogCkBAIC0zMDAsMTIgKzIwMyw5IEBAIHZvaWQgY2Vs
dF9waXRjaF94Y29ycl9mbG9hdF9uZW9uKGNvbnN0IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVz
X3ZhbDE2ICpfeSwKICAgICAgICAgICAgIChmbG9hdDMyX3QgKil4Y29ycitpLCBsZW4pOwogICAg
fQogCi0gICAvKiBJbiBjYXNlIG1heF9waXRjaCBpc24ndCBtdWx0aXBsZSBvZiA0Ci0gICAgKiBj
b21wdXRlIHNpbmdsZSBjb3JyZWxhdGlvbiB2YWx1ZSBwZXIgaXRlcmF0aW9uCi0gICAgKi8KKyAg
IC8qIEluIGNhc2UgbWF4X3BpdGNoIGlzbid0IGEgbXVsdGlwbGUgb2YgNCwgZG8gbm9uLXVucm9s
bGVkIHZlcnNpb24uICovCiAgICBmb3IgKDsgaSA8IG1heF9waXRjaDsgaSsrKSB7Ci0gICAgICB4
Y29ycl9rZXJuZWxfbmVvbl9mbG9hdF9wcm9jZXNzMSgoY29uc3QgZmxvYXQzMl90ICopX3gsCi0g
ICAgICAgICAgICAoY29uc3QgZmxvYXQzMl90ICopX3kraSwgKGZsb2F0MzJfdCAqKXhjb3JyK2ks
IGxlbik7CisgICAgICB4Y29ycltpXSA9IGNlbHRfaW5uZXJfcHJvZF9uZW9uKF94LCBfeStpLCBs
ZW4pOwogICAgfQogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfcGl0Y2hfeGNv
cnJfYXJtLnMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfcGl0Y2hfeGNvcnJfYXJtLnMKaW5kZXggZjk2ZTBhODhi
YmU2MDllZDYzOGIxYTQ0YjY3ZTkwMzhhM2VkMzQ0Ny4uNmU4NzNhZmMzNzEyNzI0ZmVkODM3MzRi
NGIzY2U4MTg0ZTE5MTlmNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0X3BpdGNoX3hjb3JyX2Fy
bS5zCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9hcm0vY2VsdF9waXRjaF94Y29ycl9hcm0ucwpAQCAtMTUzLDcgKzE1Myw3
IEBAIHhjb3JyX2tlcm5lbF9uZW9uX3Byb2Nlc3MxCiAgIEVORFAKIAogOyBvcHVzX3ZhbDMyIGNl
bHRfcGl0Y2hfeGNvcnJfbmVvbihvcHVzX3ZhbDE2ICpfeCwgb3B1c192YWwxNiAqX3ksCi07ICBv
cHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCkKKzsgIG9wdXNfdmFsMzIg
Knhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3BpdGNoLCBpbnQgYXJjaCkKIGNlbHRfcGl0Y2hfeGNv
cnJfbmVvbiBQUk9DCiAgIDsgaW5wdXQ6CiAgIDsgICByMCAgPSBvcHVzX3ZhbDE2ICpfeApAQCAt
MTY4LDYgKzE2OCw4IEBAIGNlbHRfcGl0Y2hfeGNvcnJfbmVvbiBQUk9DCiAgIDsgICByNiAgPSBp
bnQgICAgICAgICBtYXhfcGl0Y2gKICAgOyAgIHIxMiA9IGludCAgICAgICAgIGoKICAgOyAgIHEx
NSA9IGludCAgICAgICAgIG1heGNvcnJbNF0gKHExNSBpcyBub3QgdXNlZCBieSB4Y29ycl9rZXJu
ZWxfbmVvbigpKQorICA7IGlnbm9yZWQ6CisgIDsgICAgICAgICBpbnQgICAgICAgICBhcmNoCiAg
IFNUTUZEICAgICAgICBzcCEsIHtyNC1yNiwgbHJ9CiAgIExEUiAgICAgICAgICByNiwgW3NwLCAj
MTZdCiAgIFZNT1YuUzMyICAgICBxMTUsICMxCkBAIC0zNTgsNiArMzYwLDggQEAgY2VsdF9waXRj
aF94Y29ycl9lZHNwIFBST0MKICAgOyAgIHI5ICA9IG9wdXNfdmFsMzIgIHN1bTMKICAgOyAgIHIx
ICA9IGludCAgICAgICAgIG1heF9waXRjaAogICA7ICAgcjEyID0gaW50ICAgICAgICAgagorICA7
IGlnbm9yZWQ6CisgIDsgICAgICAgICBpbnQgICAgICAgICBhcmNoCiAgIFNUTUZEICAgICAgICBz
cCEsIHtyNC1yMTEsIGxyfQogICBNT1YgICAgICAgICAgcjUsIHIxCiAgIExEUiAgICAgICAgICBy
MSwgW3NwLCAjMzZdCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZmdF9hcm0uaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vZmZ0
X2FybS5oCmluZGV4IDBjYjU1ZDhlMjJkMmI4N2U2OWMwZTU1ODA2ZGE0OWU1OGE1OGRmZDQuLjBi
NzgxNzVmM2E5YWE2MzIwNDVmMTNmYWZiMjBkNGU5MTc5OWQyYjUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9h
cm0vZmZ0X2FybS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vZmZ0X2FybS5oCkBAIC0zNCw3ICszNCw2IEBACiAj
aWYgIWRlZmluZWQoRkZUX0FSTV9IKQogI2RlZmluZSBGRlRfQVJNX0gKIAotI2luY2x1ZGUgImNv
bmZpZy5oIgogI2luY2x1ZGUgImtpc3NfZmZ0LmgiCiAKICNpZiBkZWZpbmVkKEhBVkVfQVJNX05F
MTApCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZpeGVkX2FybXY0LmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZpeGVkX2Fy
bXY0LmgKaW5kZXggZWZiM2IxODk2YTg2NmIxZDVlYzg2MWZlZGJiMzM0NTc1YTQ2NGM0ZC4uZDg0
ODg4YTc3MmFjZjliODUzNGI4ZTAzMGYyMDQxODlkZmZlNzQ4YyAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Fy
bS9maXhlZF9hcm12NC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vZml4ZWRfYXJtdjQuaApAQCAtMzcsNyArMzcs
NyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c192YWwzMiBNVUxUMTZfMzJfUTE2X2FybXY0KG9w
dXNfdmFsMTYgYSwgb3B1c192YWwzMiBiKQogICAgICAgIiNNVUxUMTZfMzJfUTE2XG5cdCIKICAg
ICAgICJzbXVsbCAlMCwgJTEsICUyLCAlM1xuXHQiCiAgICAgICA6ICI9JnIiKHJkX2xvKSwgIj0m
ciIocmRfaGkpCi0gICAgICA6ICIlciIoYiksInIiKGE8PDE2KQorICAgICAgOiAiJXIiKGIpLCJy
IihTSEwzMihhLDE2KSkKICAgKTsKICAgcmV0dXJuIHJkX2hpOwogfQpAQCAtNTQsMTAgKzU0LDEw
IEBAIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX3ZhbDMyIE1VTFQxNl8zMl9RMTVfYXJtdjQob3B1
c192YWwxNiBhLCBvcHVzX3ZhbDMyIGIpCiAgICAgICAiI01VTFQxNl8zMl9RMTVcblx0IgogICAg
ICAgInNtdWxsICUwLCAlMSwgJTIsICUzXG5cdCIKICAgICAgIDogIj0mciIocmRfbG8pLCAiPSZy
IihyZF9oaSkKLSAgICAgIDogIiVyIihiKSwgInIiKGE8PDE2KQorICAgICAgOiAiJXIiKGIpLCAi
ciIoU0hMMzIoYSwxNikpCiAgICk7CiAgIC8qV2UgaW50ZW50aW9uYWxseSBkb24ndCBPUiBpbiB0
aGUgaGlnaCBiaXQgb2YgcmRfbG8gZm9yIHNwZWVkLiovCi0gIHJldHVybiByZF9oaTw8MTsKKyAg
cmV0dXJuIFNITDMyKHJkX2hpLDEpOwogfQogI2RlZmluZSBNVUxUMTZfMzJfUTE1KGEsIGIpIChN
VUxUMTZfMzJfUTE1X2FybXY0KGEsIGIpKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZpeGVkX2Fy
bXY1ZS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L2FybS9maXhlZF9hcm12NWUuaAppbmRleCAzNmE2MzIxMTAxMzU3ZTQ0N2Qy
OTlkMzdkMmE1NWQ3NTFjMzBkOTA5Li42YmY3M2NiYWNlMzQ2YmYzYzI4ODdkMjM5OWI1MDhiNmI4
YmE1ZDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZpeGVkX2FybXY1ZS5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0v
Zml4ZWRfYXJtdjVlLmgKQEAgLTU5LDcgKzU5LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNf
dmFsMzIgTVVMVDE2XzMyX1ExNV9hcm12NWUob3B1c192YWwxNiBhLCBvcHVzX3ZhbDMyIGIpCiAg
ICAgICA6ICI9ciIocmVzKQogICAgICAgOiAiciIoYiksICJyIihhKQogICApOwotICByZXR1cm4g
cmVzPDwxOworICByZXR1cm4gU0hMMzIocmVzLDEpOwogfQogI2RlZmluZSBNVUxUMTZfMzJfUTE1
KGEsIGIpIChNVUxUMTZfMzJfUTE1X2FybXY1ZShhLCBiKSkKIApAQCAtNzYsNyArNzYsNyBAQCBz
dGF0aWMgT1BVU19JTkxJTkUgb3B1c192YWwzMiBNQUMxNl8zMl9RMTVfYXJtdjVlKG9wdXNfdmFs
MzIgYywgb3B1c192YWwxNiBhLAogICAgICAgIiNNQUMxNl8zMl9RMTVcblx0IgogICAgICAgInNt
bGF3YiAlMCwgJTEsICUyLCAlMztcbiIKICAgICAgIDogIj1yIihyZXMpCi0gICAgICA6ICJyIihi
PDwxKSwgInIiKGEpLCAiciIoYykKKyAgICAgIDogInIiKFNITDMyKGIsMSkpLCAiciIoYSksICJy
IihjKQogICApOwogICByZXR1cm4gcmVzOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9tZGN0X2Fy
bS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L2FybS9tZGN0X2FybS5oCmluZGV4IDQ5Y2JiNDQ1NzYwMjg5MWU0YzMwNmI1N2Q3
YTA5OTc5NDUyZDRmYzIuLjE0MjAwYmFjNGIzNDYzYzZlNzIyZWNmMmEyMWU5OGM5ZmRhMzNkMDkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY2VsdC9hcm0vbWRjdF9hcm0uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL21kY3RfYXJtLmgK
QEAgLTMzLDcgKzMzLDYgQEAKICNpZiAhZGVmaW5lZChNRENUX0FSTV9IKQogI2RlZmluZSBNRENU
X0FSTV9ICiAKLSNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJtZGN0LmgiCiAKICNpZiBk
ZWZpbmVkKEhBVkVfQVJNX05FMTApCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL3BpdGNoX2FybS5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L2FybS9waXRjaF9hcm0uaAppbmRleCAxNDMzMTE2OWVlYjdiMjdhNWFkYjMxNTJiMWJjODEz
ZjNhZmQyNDIxLi5iZWQ4YjA0ZWFjMTFmYzZlZDc3OWZjYTk3ZDA0YjRkMmQwMWU0YjUxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvYXJtL3BpdGNoX2FybS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vcGl0Y2hfYXJtLmgKQEAg
LTMwLDExICszMCw0NyBAQAogCiAjIGluY2x1ZGUgImFybWNwdS5oIgogCisjIGlmIGRlZmluZWQo
T1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKQorb3B1c192YWwzMiBjZWx0X2lubmVyX3Byb2Rf
bmVvbihjb25zdCBvcHVzX3ZhbDE2ICp4LCBjb25zdCBvcHVzX3ZhbDE2ICp5LCBpbnQgTik7Cit2
b2lkIGR1YWxfaW5uZXJfcHJvZF9uZW9uKGNvbnN0IG9wdXNfdmFsMTYgKngsIGNvbnN0IG9wdXNf
dmFsMTYgKnkwMSwKKyAgICAgICAgY29uc3Qgb3B1c192YWwxNiAqeTAyLCBpbnQgTiwgb3B1c192
YWwzMiAqeHkxLCBvcHVzX3ZhbDMyICp4eTIpOworCisjICBpZiAhZGVmaW5lZChPUFVTX0hBVkVf
UlRDRCkgJiYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT04pCisjICAgZGVmaW5lIE9WRVJS
SURFX0NFTFRfSU5ORVJfUFJPRCAoMSkKKyMgICBkZWZpbmUgT1ZFUlJJREVfRFVBTF9JTk5FUl9Q
Uk9EICgxKQorIyAgIGRlZmluZSBjZWx0X2lubmVyX3Byb2QoeCwgeSwgTiwgYXJjaCkgKCh2b2lk
KShhcmNoKSwgUFJFU1VNRV9ORU9OKGNlbHRfaW5uZXJfcHJvZCkoeCwgeSwgTikpCisjICAgZGVm
aW5lIGR1YWxfaW5uZXJfcHJvZCh4LCB5MDEsIHkwMiwgTiwgeHkxLCB4eTIsIGFyY2gpICgodm9p
ZCkoYXJjaCksIFBSRVNVTUVfTkVPTihkdWFsX2lubmVyX3Byb2QpKHgsIHkwMSwgeTAyLCBOLCB4
eTEsIHh5MikpCisjICBlbmRpZgorIyBlbmRpZgorCisjIGlmICFkZWZpbmVkKE9WRVJSSURFX0NF
TFRfSU5ORVJfUFJPRCkKKyMgIGlmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpICYmIChkZWZpbmVk
KE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VN
RV9ORU9OX0lOVFIpKQorZXh0ZXJuIG9wdXNfdmFsMzIgKCpjb25zdCBDRUxUX0lOTkVSX1BST0Rf
SU1QTFtPUFVTX0FSQ0hNQVNLKzFdKShjb25zdCBvcHVzX3ZhbDE2ICp4LCBjb25zdCBvcHVzX3Zh
bDE2ICp5LCBpbnQgTik7CisjICAgZGVmaW5lIE9WRVJSSURFX0NFTFRfSU5ORVJfUFJPRCAoMSkK
KyMgICBkZWZpbmUgY2VsdF9pbm5lcl9wcm9kKHgsIHksIE4sIGFyY2gpICgoKkNFTFRfSU5ORVJf
UFJPRF9JTVBMWyhhcmNoKSZPUFVTX0FSQ0hNQVNLXSkoeCwgeSwgTikpCisjICBlbGlmIGRlZmlu
ZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpCisjICAgZGVmaW5lIE9WRVJSSURFX0NFTFRf
SU5ORVJfUFJPRCAoMSkKKyMgICBkZWZpbmUgY2VsdF9pbm5lcl9wcm9kKHgsIHksIE4sIGFyY2gp
ICgodm9pZCkoYXJjaCksIGNlbHRfaW5uZXJfcHJvZF9uZW9uKHgsIHksIE4pKQorIyAgZW5kaWYK
KyMgZW5kaWYKKworIyBpZiAhZGVmaW5lZChPVkVSUklERV9EVUFMX0lOTkVSX1BST0QpCisjICBp
ZiBkZWZpbmVkKE9QVVNfSEFWRV9SVENEKSAmJiAoZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9O
RU9OX0lOVFIpICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKSkKK2V4dGVy
biB2b2lkICgqY29uc3QgRFVBTF9JTk5FUl9QUk9EX0lNUExbT1BVU19BUkNITUFTSysxXSkoY29u
c3Qgb3B1c192YWwxNiAqeCwKKyAgICAgICAgY29uc3Qgb3B1c192YWwxNiAqeTAxLCBjb25zdCBv
cHVzX3ZhbDE2ICp5MDIsIGludCBOLCBvcHVzX3ZhbDMyICp4eTEsIG9wdXNfdmFsMzIgKnh5Mik7
CisjICAgZGVmaW5lIE9WRVJSSURFX0RVQUxfSU5ORVJfUFJPRCAoMSkKKyMgICBkZWZpbmUgZHVh
bF9pbm5lcl9wcm9kKHgsIHkwMSwgeTAyLCBOLCB4eTEsIHh5MiwgYXJjaCkgKCgqRFVBTF9JTk5F
Ul9QUk9EX0lNUExbKGFyY2gpJk9QVVNfQVJDSE1BU0tdKSh4LCB5MDEsIHkwMiwgTiwgeHkxLCB4
eTIpKQorIyAgZWxpZiBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKQorIyAgIGRl
ZmluZSBPVkVSUklERV9EVUFMX0lOTkVSX1BST0QgKDEpCisjICAgZGVmaW5lIGR1YWxfaW5uZXJf
cHJvZCh4LCB5MDEsIHkwMiwgTiwgeHkxLCB4eTIsIGFyY2gpICgodm9pZCkoYXJjaCksIGR1YWxf
aW5uZXJfcHJvZF9uZW9uKHgsIHkwMSwgeTAyLCBOLCB4eTEsIHh5MikpCisjICBlbmRpZgorIyBl
bmRpZgorCiAjIGlmIGRlZmluZWQoRklYRURfUE9JTlQpCiAKICMgIGlmIGRlZmluZWQoT1BVU19B
Uk1fTUFZX0hBVkVfTkVPTikKIG9wdXNfdmFsMzIgY2VsdF9waXRjaF94Y29ycl9uZW9uKGNvbnN0
IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKLSAgICBvcHVzX3ZhbDMyICp4
Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCk7CisgICAgb3B1c192YWwzMiAqeGNvcnIsIGlu
dCBsZW4sIGludCBtYXhfcGl0Y2gsIGludCBhcmNoKTsKICMgIGVuZGlmCiAKICMgIGlmIGRlZmlu
ZWQoT1BVU19BUk1fTUFZX0hBVkVfTUVESUEpCkBAIC00Myw3ICs3OSw3IEBAIG9wdXNfdmFsMzIg
Y2VsdF9waXRjaF94Y29ycl9uZW9uKGNvbnN0IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVzX3Zh
bDE2ICpfeSwKIAogIyAgaWYgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9FRFNQKQogb3B1c192
YWwzMiBjZWx0X3BpdGNoX3hjb3JyX2Vkc3AoY29uc3Qgb3B1c192YWwxNiAqX3gsIGNvbnN0IG9w
dXNfdmFsMTYgKl95LAotICAgIG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3Bp
dGNoKTsKKyAgICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCwgaW50
IGFyY2gpOwogIyAgZW5kaWYKIAogIyAgaWYgZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgXApA
QCAtNTIsMTggKzg4LDE3IEBAIG9wdXNfdmFsMzIgY2VsdF9waXRjaF94Y29ycl9lZHNwKGNvbnN0
IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKICAgICAgKGRlZmluZWQoT1BV
U19BUk1fTUFZX0hBVkVfRURTUCkgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9FRFNQKSkp
CiBleHRlcm4gb3B1c192YWwzMgogKCpjb25zdCBDRUxUX1BJVENIX1hDT1JSX0lNUExbT1BVU19B
UkNITUFTSysxXSkoY29uc3Qgb3B1c192YWwxNiAqLAotICAgICAgY29uc3Qgb3B1c192YWwxNiAq
LCBvcHVzX3ZhbDMyICosIGludCwgaW50KTsKKyAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKiwgb3B1
c192YWwzMiAqLCBpbnQsIGludCwgaW50KTsKICMgICBkZWZpbmUgT1ZFUlJJREVfUElUQ0hfWENP
UlIgKDEpCiAjICAgZGVmaW5lIGNlbHRfcGl0Y2hfeGNvcnIoX3gsIF95LCB4Y29yciwgbGVuLCBt
YXhfcGl0Y2gsIGFyY2gpIFwKICAgKCgqQ0VMVF9QSVRDSF9YQ09SUl9JTVBMWyhhcmNoKSZPUFVT
X0FSQ0hNQVNLXSkoX3gsIF95LCBcCi0gICAgICAgIHhjb3JyLCBsZW4sIG1heF9waXRjaCkpCisg
ICAgICAgIHhjb3JyLCBsZW4sIG1heF9waXRjaCwgYXJjaCkpCiAKICMgIGVsaWYgZGVmaW5lZChP
UFVTX0FSTV9QUkVTVU1FX0VEU1ApIHx8IFwKICAgICBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVf
TUVESUEpIHx8IFwKICAgICBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTikKICMgICBkZWZp
bmUgT1ZFUlJJREVfUElUQ0hfWENPUlIgKDEpCi0jICAgZGVmaW5lIGNlbHRfcGl0Y2hfeGNvcnIo
X3gsIF95LCB4Y29yciwgbGVuLCBtYXhfcGl0Y2gsIGFyY2gpIFwKLSAgKCh2b2lkKShhcmNoKSxQ
UkVTVU1FX05FT04oY2VsdF9waXRjaF94Y29ycikoX3gsIF95LCB4Y29yciwgbGVuLCBtYXhfcGl0
Y2gpKQorIyAgIGRlZmluZSBjZWx0X3BpdGNoX3hjb3JyIChQUkVTVU1FX05FT04oY2VsdF9waXRj
aF94Y29ycikpCiAKICMgIGVuZGlmCiAKQEAgLTk5LDI1ICsxMzQsMjQgQEAgZXh0ZXJuIHZvaWQg
KCpjb25zdCBYQ09SUl9LRVJORUxfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKAogLyogRmxvYXQg
Y2FzZSAqLwogI2lmIGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKQogdm9pZCBj
ZWx0X3BpdGNoX3hjb3JyX2Zsb2F0X25lb24oY29uc3Qgb3B1c192YWwxNiAqX3gsIGNvbnN0IG9w
dXNfdmFsMTYgKl95LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B1c192YWwz
MiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gpOworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gsIGlu
dCBhcmNoKTsKICNlbmRpZgogCiAjICBpZiBkZWZpbmVkKE9QVVNfSEFWRV9SVENEKSAmJiBcCiAg
ICAgKGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSAmJiAhZGVmaW5lZChPUFVT
X0FSTV9QUkVTVU1FX05FT05fSU5UUikpCiBleHRlcm4gdm9pZAogKCpjb25zdCBDRUxUX1BJVENI
X1hDT1JSX0lNUExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qgb3B1c192YWwxNiAqLAotICAgICAg
Y29uc3Qgb3B1c192YWwxNiAqLCBvcHVzX3ZhbDMyICosIGludCwgaW50KTsKKyAgICAgIGNvbnN0
IG9wdXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQsIGludCwgaW50KTsKIAogIyAgZGVmaW5l
IE9WRVJSSURFX1BJVENIX1hDT1JSICgxKQogIyAgZGVmaW5lIGNlbHRfcGl0Y2hfeGNvcnIoX3gs
IF95LCB4Y29yciwgbGVuLCBtYXhfcGl0Y2gsIGFyY2gpIFwKICAgKCgqQ0VMVF9QSVRDSF9YQ09S
Ul9JTVBMWyhhcmNoKSZPUFVTX0FSQ0hNQVNLXSkoX3gsIF95LCBcCi0gICAgICAgIHhjb3JyLCBs
ZW4sIG1heF9waXRjaCkpCisgICAgICAgIHhjb3JyLCBsZW4sIG1heF9waXRjaCwgYXJjaCkpCiAK
ICMgIGVsaWYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikKIAogIyAgIGRlZmlu
ZSBPVkVSUklERV9QSVRDSF9YQ09SUiAoMSkKLSMgICBkZWZpbmUgY2VsdF9waXRjaF94Y29ycihf
eCwgX3ksIHhjb3JyLCBsZW4sIG1heF9waXRjaCwgYXJjaCkgXAotICAgKCh2b2lkKShhcmNoKSxj
ZWx0X3BpdGNoX3hjb3JyX2Zsb2F0X25lb24oX3gsIF95LCB4Y29yciwgbGVuLCBtYXhfcGl0Y2gp
KQorIyAgIGRlZmluZSBjZWx0X3BpdGNoX3hjb3JyIGNlbHRfcGl0Y2hfeGNvcnJfZmxvYXRfbmVv
bgogCiAjICBlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL3BpdGNoX25lb25faW50ci5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L2FybS9waXRjaF9uZW9uX2ludHIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYWMzOGM0MzNhOGE3ODU1MzVm
OTVmOTNhZWZjZTFkNDM2MTNmYTgwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9waXRjaF9u
ZW9uX2ludHIuYwpAQCAtMCwwICsxLDI5MCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitDb3B5cmlnaHQg
KGMpIDIwMTcgR29vZ2xlIEluYy4KK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0OgorLSBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodCBub3RpY2UsCit0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKy0gTmVpdGhl
ciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0
aGUKK25hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlCitwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0
IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KK3Blcm1pc3Npb24uCitUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIK
K0FORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUKK0lNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKK0xJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKK0NPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCitD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKiovCisKKyNpZmRlZiBIQVZFX0NPTkZJR19ICisjaW5jbHVkZSAi
Y29uZmlnLmgiCisjZW5kaWYKKworI2luY2x1ZGUgPGFybV9uZW9uLmg+CisjaW5jbHVkZSAicGl0
Y2guaCIKKworI2lmZGVmIEZJWEVEX1BPSU5UCisKK29wdXNfdmFsMzIgY2VsdF9pbm5lcl9wcm9k
X25lb24oY29uc3Qgb3B1c192YWwxNiAqeCwgY29uc3Qgb3B1c192YWwxNiAqeSwgaW50IE4pCit7
CisgICAgaW50IGk7CisgICAgb3B1c192YWwzMiB4eTsKKyAgICBpbnQxNng4X3QgeF9zMTZ4OCwg
eV9zMTZ4ODsKKyAgICBpbnQzMng0X3QgeHlfczMyeDQgPSB2ZHVwcV9uX3MzMigwKTsKKyAgICBp
bnQ2NHgyX3QgeHlfczY0eDI7CisgICAgaW50NjR4MV90IHh5X3M2NHgxOworCisgICAgZm9yIChp
ID0gMDsgaSA8IE4gLSA3OyBpICs9IDgpIHsKKyAgICAgICAgeF9zMTZ4OCAgPSB2bGQxcV9zMTYo
JnhbaV0pOworICAgICAgICB5X3MxNng4ICA9IHZsZDFxX3MxNigmeVtpXSk7CisgICAgICAgIHh5
X3MzMng0ID0gdm1sYWxfczE2KHh5X3MzMng0LCB2Z2V0X2xvd19zMTYgKHhfczE2eDgpLCB2Z2V0
X2xvd19zMTYgKHlfczE2eDgpKTsKKyAgICAgICAgeHlfczMyeDQgPSB2bWxhbF9zMTYoeHlfczMy
eDQsIHZnZXRfaGlnaF9zMTYoeF9zMTZ4OCksIHZnZXRfaGlnaF9zMTYoeV9zMTZ4OCkpOworICAg
IH0KKworICAgIGlmIChOIC0gaSA+PSA0KSB7CisgICAgICAgIGNvbnN0IGludDE2eDRfdCB4X3Mx
Nng0ID0gdmxkMV9zMTYoJnhbaV0pOworICAgICAgICBjb25zdCBpbnQxNng0X3QgeV9zMTZ4NCA9
IHZsZDFfczE2KCZ5W2ldKTsKKyAgICAgICAgeHlfczMyeDQgPSB2bWxhbF9zMTYoeHlfczMyeDQs
IHhfczE2eDQsIHlfczE2eDQpOworICAgICAgICBpICs9IDQ7CisgICAgfQorCisgICAgeHlfczY0
eDIgPSB2cGFkZGxxX3MzMih4eV9zMzJ4NCk7CisgICAgeHlfczY0eDEgPSB2YWRkX3M2NCh2Z2V0
X2xvd19zNjQoeHlfczY0eDIpLCB2Z2V0X2hpZ2hfczY0KHh5X3M2NHgyKSk7CisgICAgeHkgICAg
ICAgPSB2Z2V0X2xhbmVfczMyKHZyZWludGVycHJldF9zMzJfczY0KHh5X3M2NHgxKSwgMCk7CisK
KyAgICBmb3IgKDsgaSA8IE47IGkrKykgeworICAgICAgICB4eSA9IE1BQzE2XzE2KHh5LCB4W2ld
LCB5W2ldKTsKKyAgICB9CisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIGNlbHRfYXNzZXJ0
KGNlbHRfaW5uZXJfcHJvZF9jKHgsIHksIE4pID09IHh5KTsKKyNlbmRpZgorCisgICAgcmV0dXJu
IHh5OworfQorCit2b2lkIGR1YWxfaW5uZXJfcHJvZF9uZW9uKGNvbnN0IG9wdXNfdmFsMTYgKngs
IGNvbnN0IG9wdXNfdmFsMTYgKnkwMSwgY29uc3Qgb3B1c192YWwxNiAqeTAyLAorICAgICAgICBp
bnQgTiwgb3B1c192YWwzMiAqeHkxLCBvcHVzX3ZhbDMyICp4eTIpCit7CisgICAgaW50IGk7Cisg
ICAgb3B1c192YWwzMiB4eTAxLCB4eTAyOworICAgIGludDE2eDhfdCB4X3MxNng4LCB5MDFfczE2
eDgsIHkwMl9zMTZ4ODsKKyAgICBpbnQzMng0X3QgeHkwMV9zMzJ4NCA9IHZkdXBxX25fczMyKDAp
OworICAgIGludDMyeDRfdCB4eTAyX3MzMng0ID0gdmR1cHFfbl9zMzIoMCk7CisgICAgaW50NjR4
Ml90IHh5MDFfczY0eDIsIHh5MDJfczY0eDI7CisgICAgaW50NjR4MV90IHh5MDFfczY0eDEsIHh5
MDJfczY0eDE7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgTiAtIDc7IGkgKz0gOCkgeworICAgICAg
ICB4X3MxNng4ICAgID0gdmxkMXFfczE2KCZ4W2ldKTsKKyAgICAgICAgeTAxX3MxNng4ICA9IHZs
ZDFxX3MxNigmeTAxW2ldKTsKKyAgICAgICAgeTAyX3MxNng4ICA9IHZsZDFxX3MxNigmeTAyW2ld
KTsKKyAgICAgICAgeHkwMV9zMzJ4NCA9IHZtbGFsX3MxNih4eTAxX3MzMng0LCB2Z2V0X2xvd19z
MTYgKHhfczE2eDgpLCB2Z2V0X2xvd19zMTYgKHkwMV9zMTZ4OCkpOworICAgICAgICB4eTAyX3Mz
Mng0ID0gdm1sYWxfczE2KHh5MDJfczMyeDQsIHZnZXRfbG93X3MxNiAoeF9zMTZ4OCksIHZnZXRf
bG93X3MxNiAoeTAyX3MxNng4KSk7CisgICAgICAgIHh5MDFfczMyeDQgPSB2bWxhbF9zMTYoeHkw
MV9zMzJ4NCwgdmdldF9oaWdoX3MxNih4X3MxNng4KSwgdmdldF9oaWdoX3MxNih5MDFfczE2eDgp
KTsKKyAgICAgICAgeHkwMl9zMzJ4NCA9IHZtbGFsX3MxNih4eTAyX3MzMng0LCB2Z2V0X2hpZ2hf
czE2KHhfczE2eDgpLCB2Z2V0X2hpZ2hfczE2KHkwMl9zMTZ4OCkpOworICAgIH0KKworICAgIGlm
IChOIC0gaSA+PSA0KSB7CisgICAgICAgIGNvbnN0IGludDE2eDRfdCB4X3MxNng0ICAgPSB2bGQx
X3MxNigmeFtpXSk7CisgICAgICAgIGNvbnN0IGludDE2eDRfdCB5MDFfczE2eDQgPSB2bGQxX3Mx
NigmeTAxW2ldKTsKKyAgICAgICAgY29uc3QgaW50MTZ4NF90IHkwMl9zMTZ4NCA9IHZsZDFfczE2
KCZ5MDJbaV0pOworICAgICAgICB4eTAxX3MzMng0ID0gdm1sYWxfczE2KHh5MDFfczMyeDQsIHhf
czE2eDQsIHkwMV9zMTZ4NCk7CisgICAgICAgIHh5MDJfczMyeDQgPSB2bWxhbF9zMTYoeHkwMl9z
MzJ4NCwgeF9zMTZ4NCwgeTAyX3MxNng0KTsKKyAgICAgICAgaSArPSA0OworICAgIH0KKworICAg
IHh5MDFfczY0eDIgPSB2cGFkZGxxX3MzMih4eTAxX3MzMng0KTsKKyAgICB4eTAyX3M2NHgyID0g
dnBhZGRscV9zMzIoeHkwMl9zMzJ4NCk7CisgICAgeHkwMV9zNjR4MSA9IHZhZGRfczY0KHZnZXRf
bG93X3M2NCh4eTAxX3M2NHgyKSwgdmdldF9oaWdoX3M2NCh4eTAxX3M2NHgyKSk7CisgICAgeHkw
Ml9zNjR4MSA9IHZhZGRfczY0KHZnZXRfbG93X3M2NCh4eTAyX3M2NHgyKSwgdmdldF9oaWdoX3M2
NCh4eTAyX3M2NHgyKSk7CisgICAgeHkwMSAgICAgICA9IHZnZXRfbGFuZV9zMzIodnJlaW50ZXJw
cmV0X3MzMl9zNjQoeHkwMV9zNjR4MSksIDApOworICAgIHh5MDIgICAgICAgPSB2Z2V0X2xhbmVf
czMyKHZyZWludGVycHJldF9zMzJfczY0KHh5MDJfczY0eDEpLCAwKTsKKworICAgIGZvciAoOyBp
IDwgTjsgaSsrKSB7CisgICAgICAgIHh5MDEgPSBNQUMxNl8xNih4eTAxLCB4W2ldLCB5MDFbaV0p
OworICAgICAgICB4eTAyID0gTUFDMTZfMTYoeHkwMiwgeFtpXSwgeTAyW2ldKTsKKyAgICB9Cisg
ICAgKnh5MSA9IHh5MDE7CisgICAgKnh5MiA9IHh5MDI7CisKKyNpZmRlZiBPUFVTX0NIRUNLX0FT
TQorICAgIHsKKyAgICAgICAgb3B1c192YWwzMiB4eTFfYywgeHkyX2M7CisgICAgICAgIGR1YWxf
aW5uZXJfcHJvZF9jKHgsIHkwMSwgeTAyLCBOLCAmeHkxX2MsICZ4eTJfYyk7CisgICAgICAgIGNl
bHRfYXNzZXJ0KHh5MV9jID09ICp4eTEpOworICAgICAgICBjZWx0X2Fzc2VydCh4eTJfYyA9PSAq
eHkyKTsKKyAgICB9CisjZW5kaWYKK30KKworI2Vsc2UgLyogIUZJWEVEX1BPSU5UICovCisKKy8q
ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09ICovCisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorCisvKiBUaGlz
IHBhcnQgb2YgY29kZSBzaW11bGF0ZXMgZmxvYXRpbmctcG9pbnQgTkVPTiBvcGVyYXRpb25zLiAq
LworCisvKiBjZWx0X2lubmVyX3Byb2RfbmVvbl9mbG9hdF9jX3NpbXVsYXRpb24oKSBzaW11bGF0
ZXMgdGhlIGZsb2F0aW5nLXBvaW50ICAgKi8KKy8qIG9wZXJhdGlvbnMgb2YgY2VsdF9pbm5lcl9w
cm9kX25lb24oKSwgYW5kIGJvdGggZnVuY3Rpb25zIHNob3VsZCBoYXZlIGJpdCAqLworLyogZXhh
Y3Qgb3V0cHV0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCitzdGF0aWMgb3B1c192YWwzMiBjZWx0X2lubmVyX3Byb2RfbmVvbl9m
bG9hdF9jX3NpbXVsYXRpb24oY29uc3Qgb3B1c192YWwxNiAqeCwgY29uc3Qgb3B1c192YWwxNiAq
eSwgaW50IE4pCit7CisgICBpbnQgaTsKKyAgIG9wdXNfdmFsMzIgeHksIHh5MCA9IDAsIHh5MSA9
IDAsIHh5MiA9IDAsIHh5MyA9IDA7CisgICBmb3IgKGkgPSAwOyBpIDwgTiAtIDM7IGkgKz0gNCkg
eworICAgICAgeHkwID0gTUFDMTZfMTYoeHkwLCB4W2kgKyAwXSwgeVtpICsgMF0pOworICAgICAg
eHkxID0gTUFDMTZfMTYoeHkxLCB4W2kgKyAxXSwgeVtpICsgMV0pOworICAgICAgeHkyID0gTUFD
MTZfMTYoeHkyLCB4W2kgKyAyXSwgeVtpICsgMl0pOworICAgICAgeHkzID0gTUFDMTZfMTYoeHkz
LCB4W2kgKyAzXSwgeVtpICsgM10pOworICAgfQorICAgeHkwICs9IHh5MjsKKyAgIHh5MSArPSB4
eTM7CisgICB4eSA9IHh5MCArIHh5MTsKKyAgIGZvciAoOyBpIDwgTjsgaSsrKSB7CisgICAgICB4
eSA9IE1BQzE2XzE2KHh5LCB4W2ldLCB5W2ldKTsKKyAgIH0KKyAgIHJldHVybiB4eTsKK30KKwor
LyogZHVhbF9pbm5lcl9wcm9kX25lb25fZmxvYXRfY19zaW11bGF0aW9uKCkgc2ltdWxhdGVzIHRo
ZSBmbG9hdGluZy1wb2ludCAgICovCisvKiBvcGVyYXRpb25zIG9mIGR1YWxfaW5uZXJfcHJvZF9u
ZW9uKCksIGFuZCBib3RoIGZ1bmN0aW9ucyBzaG91bGQgaGF2ZSBiaXQgKi8KKy8qIGV4YWN0IG91
dHB1dC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworc3RhdGljIHZvaWQgZHVhbF9pbm5lcl9wcm9kX25lb25fZmxvYXRfY19zaW11
bGF0aW9uKGNvbnN0IG9wdXNfdmFsMTYgKngsIGNvbnN0IG9wdXNfdmFsMTYgKnkwMSwgY29uc3Qg
b3B1c192YWwxNiAqeTAyLAorICAgICAgaW50IE4sIG9wdXNfdmFsMzIgKnh5MSwgb3B1c192YWwz
MiAqeHkyKQoreworICAgaW50IGk7CisgICBvcHVzX3ZhbDMyIHh5MDEsIHh5MDIsIHh5MDFfMCA9
IDAsIHh5MDFfMSA9IDAsIHh5MDFfMiA9IDAsIHh5MDFfMyA9IDAsIHh5MDJfMCA9IDAsIHh5MDJf
MSA9IDAsIHh5MDJfMiA9IDAsIHh5MDJfMyA9IDA7CisgICBmb3IgKGkgPSAwOyBpIDwgTiAtIDM7
IGkgKz0gNCkgeworICAgICAgeHkwMV8wID0gTUFDMTZfMTYoeHkwMV8wLCB4W2kgKyAwXSwgeTAx
W2kgKyAwXSk7CisgICAgICB4eTAxXzEgPSBNQUMxNl8xNih4eTAxXzEsIHhbaSArIDFdLCB5MDFb
aSArIDFdKTsKKyAgICAgIHh5MDFfMiA9IE1BQzE2XzE2KHh5MDFfMiwgeFtpICsgMl0sIHkwMVtp
ICsgMl0pOworICAgICAgeHkwMV8zID0gTUFDMTZfMTYoeHkwMV8zLCB4W2kgKyAzXSwgeTAxW2kg
KyAzXSk7CisgICAgICB4eTAyXzAgPSBNQUMxNl8xNih4eTAyXzAsIHhbaSArIDBdLCB5MDJbaSAr
IDBdKTsKKyAgICAgIHh5MDJfMSA9IE1BQzE2XzE2KHh5MDJfMSwgeFtpICsgMV0sIHkwMltpICsg
MV0pOworICAgICAgeHkwMl8yID0gTUFDMTZfMTYoeHkwMl8yLCB4W2kgKyAyXSwgeTAyW2kgKyAy
XSk7CisgICAgICB4eTAyXzMgPSBNQUMxNl8xNih4eTAyXzMsIHhbaSArIDNdLCB5MDJbaSArIDNd
KTsKKyAgIH0KKyAgIHh5MDFfMCArPSB4eTAxXzI7CisgICB4eTAyXzAgKz0geHkwMl8yOworICAg
eHkwMV8xICs9IHh5MDFfMzsKKyAgIHh5MDJfMSArPSB4eTAyXzM7CisgICB4eTAxID0geHkwMV8w
ICsgeHkwMV8xOworICAgeHkwMiA9IHh5MDJfMCArIHh5MDJfMTsKKyAgIGZvciAoOyBpIDwgTjsg
aSsrKSB7CisgICAgICB4eTAxID0gTUFDMTZfMTYoeHkwMSwgeFtpXSwgeTAxW2ldKTsKKyAgICAg
IHh5MDIgPSBNQUMxNl8xNih4eTAyLCB4W2ldLCB5MDJbaV0pOworICAgfQorICAgKnh5MSA9IHh5
MDE7CisgICAqeHkyID0geHkwMjsKK30KKworI2VuZGlmIC8qIE9QVVNfQ0hFQ0tfQVNNICovCisK
Ky8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09ICovCisKK29wdXNfdmFsMzIgY2VsdF9pbm5lcl9wcm9kX25l
b24oY29uc3Qgb3B1c192YWwxNiAqeCwgY29uc3Qgb3B1c192YWwxNiAqeSwgaW50IE4pCit7Cisg
ICAgaW50IGk7CisgICAgb3B1c192YWwzMiB4eTsKKyAgICBmbG9hdDMyeDRfdCB4eV9mMzJ4NCA9
IHZkdXBxX25fZjMyKDApOworICAgIGZsb2F0MzJ4Ml90IHh5X2YzMngyOworCisgICAgZm9yIChp
ID0gMDsgaSA8IE4gLSA3OyBpICs9IDgpIHsKKyAgICAgICAgZmxvYXQzMng0X3QgeF9mMzJ4NCwg
eV9mMzJ4NDsKKyAgICAgICAgeF9mMzJ4NCAgPSB2bGQxcV9mMzIoJnhbaV0pOworICAgICAgICB5
X2YzMng0ICA9IHZsZDFxX2YzMigmeVtpXSk7CisgICAgICAgIHh5X2YzMng0ID0gdm1sYXFfZjMy
KHh5X2YzMng0LCB4X2YzMng0LCB5X2YzMng0KTsKKyAgICAgICAgeF9mMzJ4NCAgPSB2bGQxcV9m
MzIoJnhbaSArIDRdKTsKKyAgICAgICAgeV9mMzJ4NCAgPSB2bGQxcV9mMzIoJnlbaSArIDRdKTsK
KyAgICAgICAgeHlfZjMyeDQgPSB2bWxhcV9mMzIoeHlfZjMyeDQsIHhfZjMyeDQsIHlfZjMyeDQp
OworICAgIH0KKworICAgIGlmIChOIC0gaSA+PSA0KSB7CisgICAgICAgIGNvbnN0IGZsb2F0MzJ4
NF90IHhfZjMyeDQgPSB2bGQxcV9mMzIoJnhbaV0pOworICAgICAgICBjb25zdCBmbG9hdDMyeDRf
dCB5X2YzMng0ID0gdmxkMXFfZjMyKCZ5W2ldKTsKKyAgICAgICAgeHlfZjMyeDQgPSB2bWxhcV9m
MzIoeHlfZjMyeDQsIHhfZjMyeDQsIHlfZjMyeDQpOworICAgICAgICBpICs9IDQ7CisgICAgfQor
CisgICAgeHlfZjMyeDIgPSB2YWRkX2YzMih2Z2V0X2xvd19mMzIoeHlfZjMyeDQpLCB2Z2V0X2hp
Z2hfZjMyKHh5X2YzMng0KSk7CisgICAgeHlfZjMyeDIgPSB2cGFkZF9mMzIoeHlfZjMyeDIsIHh5
X2YzMngyKTsKKyAgICB4eSAgICAgICA9IHZnZXRfbGFuZV9mMzIoeHlfZjMyeDIsIDApOworCisg
ICAgZm9yICg7IGkgPCBOOyBpKyspIHsKKyAgICAgICAgeHkgPSBNQUMxNl8xNih4eSwgeFtpXSwg
eVtpXSk7CisgICAgfQorCisjaWZkZWYgT1BVU19DSEVDS19BU00KKyAgICBjZWx0X2Fzc2VydChB
QlMzMihjZWx0X2lubmVyX3Byb2RfbmVvbl9mbG9hdF9jX3NpbXVsYXRpb24oeCwgeSwgTikgLSB4
eSkgPD0gVkVSWV9TTUFMTCk7CisjZW5kaWYKKworICAgIHJldHVybiB4eTsKK30KKwordm9pZCBk
dWFsX2lubmVyX3Byb2RfbmVvbihjb25zdCBvcHVzX3ZhbDE2ICp4LCBjb25zdCBvcHVzX3ZhbDE2
ICp5MDEsIGNvbnN0IG9wdXNfdmFsMTYgKnkwMiwKKyAgICAgICAgaW50IE4sIG9wdXNfdmFsMzIg
Knh5MSwgb3B1c192YWwzMiAqeHkyKQoreworICAgIGludCBpOworICAgIG9wdXNfdmFsMzIgeHkw
MSwgeHkwMjsKKyAgICBmbG9hdDMyeDRfdCB4eTAxX2YzMng0ID0gdmR1cHFfbl9mMzIoMCk7Cisg
ICAgZmxvYXQzMng0X3QgeHkwMl9mMzJ4NCA9IHZkdXBxX25fZjMyKDApOworICAgIGZsb2F0MzJ4
Ml90IHh5MDFfZjMyeDIsIHh5MDJfZjMyeDI7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgTiAtIDc7
IGkgKz0gOCkgeworICAgICAgICBmbG9hdDMyeDRfdCB4X2YzMng0LCB5MDFfZjMyeDQsIHkwMl9m
MzJ4NDsKKyAgICAgICAgeF9mMzJ4NCAgICA9IHZsZDFxX2YzMigmeFtpXSk7CisgICAgICAgIHkw
MV9mMzJ4NCAgPSB2bGQxcV9mMzIoJnkwMVtpXSk7CisgICAgICAgIHkwMl9mMzJ4NCAgPSB2bGQx
cV9mMzIoJnkwMltpXSk7CisgICAgICAgIHh5MDFfZjMyeDQgPSB2bWxhcV9mMzIoeHkwMV9mMzJ4
NCwgeF9mMzJ4NCwgeTAxX2YzMng0KTsKKyAgICAgICAgeHkwMl9mMzJ4NCA9IHZtbGFxX2YzMih4
eTAyX2YzMng0LCB4X2YzMng0LCB5MDJfZjMyeDQpOworICAgICAgICB4X2YzMng0ICAgID0gdmxk
MXFfZjMyKCZ4W2kgKyA0XSk7CisgICAgICAgIHkwMV9mMzJ4NCAgPSB2bGQxcV9mMzIoJnkwMVtp
ICsgNF0pOworICAgICAgICB5MDJfZjMyeDQgID0gdmxkMXFfZjMyKCZ5MDJbaSArIDRdKTsKKyAg
ICAgICAgeHkwMV9mMzJ4NCA9IHZtbGFxX2YzMih4eTAxX2YzMng0LCB4X2YzMng0LCB5MDFfZjMy
eDQpOworICAgICAgICB4eTAyX2YzMng0ID0gdm1sYXFfZjMyKHh5MDJfZjMyeDQsIHhfZjMyeDQs
IHkwMl9mMzJ4NCk7CisgICAgfQorCisgICAgaWYgKE4gLSBpID49IDQpIHsKKyAgICAgICAgY29u
c3QgZmxvYXQzMng0X3QgeF9mMzJ4NCAgID0gdmxkMXFfZjMyKCZ4W2ldKTsKKyAgICAgICAgY29u
c3QgZmxvYXQzMng0X3QgeTAxX2YzMng0ID0gdmxkMXFfZjMyKCZ5MDFbaV0pOworICAgICAgICBj
b25zdCBmbG9hdDMyeDRfdCB5MDJfZjMyeDQgPSB2bGQxcV9mMzIoJnkwMltpXSk7CisgICAgICAg
IHh5MDFfZjMyeDQgPSB2bWxhcV9mMzIoeHkwMV9mMzJ4NCwgeF9mMzJ4NCwgeTAxX2YzMng0KTsK
KyAgICAgICAgeHkwMl9mMzJ4NCA9IHZtbGFxX2YzMih4eTAyX2YzMng0LCB4X2YzMng0LCB5MDJf
ZjMyeDQpOworICAgICAgICBpICs9IDQ7CisgICAgfQorCisgICAgeHkwMV9mMzJ4MiA9IHZhZGRf
ZjMyKHZnZXRfbG93X2YzMih4eTAxX2YzMng0KSwgdmdldF9oaWdoX2YzMih4eTAxX2YzMng0KSk7
CisgICAgeHkwMl9mMzJ4MiA9IHZhZGRfZjMyKHZnZXRfbG93X2YzMih4eTAyX2YzMng0KSwgdmdl
dF9oaWdoX2YzMih4eTAyX2YzMng0KSk7CisgICAgeHkwMV9mMzJ4MiA9IHZwYWRkX2YzMih4eTAx
X2YzMngyLCB4eTAxX2YzMngyKTsKKyAgICB4eTAyX2YzMngyID0gdnBhZGRfZjMyKHh5MDJfZjMy
eDIsIHh5MDJfZjMyeDIpOworICAgIHh5MDEgICAgICAgPSB2Z2V0X2xhbmVfZjMyKHh5MDFfZjMy
eDIsIDApOworICAgIHh5MDIgICAgICAgPSB2Z2V0X2xhbmVfZjMyKHh5MDJfZjMyeDIsIDApOwor
CisgICAgZm9yICg7IGkgPCBOOyBpKyspIHsKKyAgICAgICAgeHkwMSA9IE1BQzE2XzE2KHh5MDEs
IHhbaV0sIHkwMVtpXSk7CisgICAgICAgIHh5MDIgPSBNQUMxNl8xNih4eTAyLCB4W2ldLCB5MDJb
aV0pOworICAgIH0KKyAgICAqeHkxID0geHkwMTsKKyAgICAqeHkyID0geHkwMjsKKworI2lmZGVm
IE9QVVNfQ0hFQ0tfQVNNCisgICAgeworICAgICAgICBvcHVzX3ZhbDMyIHh5MV9jLCB4eTJfYzsK
KyAgICAgICAgZHVhbF9pbm5lcl9wcm9kX25lb25fZmxvYXRfY19zaW11bGF0aW9uKHgsIHkwMSwg
eTAyLCBOLCAmeHkxX2MsICZ4eTJfYyk7CisgICAgICAgIGNlbHRfYXNzZXJ0KEFCUzMyKHh5MV9j
IC0gKnh5MSkgPD0gVkVSWV9TTUFMTCk7CisgICAgICAgIGNlbHRfYXNzZXJ0KEFCUzMyKHh5Ml9j
IC0gKnh5MikgPD0gVkVSWV9TTUFMTCk7CisgICAgfQorI2VuZGlmCit9CisKKyNlbmRpZiAvKiBG
SVhFRF9QT0lOVCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2JhbmRzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYmFuZHMuYwppbmRl
eCBmNTMwN2FlMmVkYjY3YTAzYTk3NGJiNWRlY2U2NDg1ZDgwNjk2NWM2Li4zYjFmNWNmYmJlOGE4
MWM3ZjQ3YjcwMGFjODc4OTlkODA5OTA2Mjg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYmFuZHMuYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvYmFuZHMuYwpAQCAtNjUsNyArNjUsNyBAQCBvcHVzX3VpbnQzMiBjZWx0X2xjZ19yYW5k
KG9wdXNfdWludDMyIHNlZWQpCiAKIC8qIFRoaXMgaXMgYSBjb3MoKSBhcHByb3hpbWF0aW9uIGRl
c2lnbmVkIHRvIGJlIGJpdC1leGFjdCBvbiBhbnkgcGxhdGZvcm0uIEJpdCBleGFjdG5lc3MKICAg
IHdpdGggdGhpcyBhcHByb3hpbWF0aW9uIGlzIGltcG9ydGFudCBiZWNhdXNlIGl0IGhhcyBhbiBp
bXBhY3Qgb24gdGhlIGJpdCBhbGxvY2F0aW9uICovCi1zdGF0aWMgb3B1c19pbnQxNiBiaXRleGFj
dF9jb3Mob3B1c19pbnQxNiB4KQorb3B1c19pbnQxNiBiaXRleGFjdF9jb3Mob3B1c19pbnQxNiB4
KQogewogICAgb3B1c19pbnQzMiB0bXA7CiAgICBvcHVzX2ludDE2IHgyOwpAQCAtNzcsNyArNzcs
NyBAQCBzdGF0aWMgb3B1c19pbnQxNiBiaXRleGFjdF9jb3Mob3B1c19pbnQxNiB4KQogICAgcmV0
dXJuIDEreDI7CiB9CiAKLXN0YXRpYyBpbnQgYml0ZXhhY3RfbG9nMnRhbihpbnQgaXNpbixpbnQg
aWNvcykKK2ludCBiaXRleGFjdF9sb2cydGFuKGludCBpc2luLGludCBpY29zKQogewogICAgaW50
IGxjOwogICAgaW50IGxzOwpAQCAtOTIsMTAgKzkyLDExIEBAIHN0YXRpYyBpbnQgYml0ZXhhY3Rf
bG9nMnRhbihpbnQgaXNpbixpbnQgaWNvcykKIAogI2lmZGVmIEZJWEVEX1BPSU5UCiAvKiBDb21w
dXRlIHRoZSBhbXBsaXR1ZGUgKHNxcnQgZW5lcmd5KSBpbiBlYWNoIG9mIHRoZSBiYW5kcyAqLwot
dm9pZCBjb21wdXRlX2JhbmRfZW5lcmdpZXMoY29uc3QgQ0VMVE1vZGUgKm0sIGNvbnN0IGNlbHRf
c2lnICpYLCBjZWx0X2VuZXIgKmJhbmRFLCBpbnQgZW5kLCBpbnQgQywgaW50IExNKQordm9pZCBj
b21wdXRlX2JhbmRfZW5lcmdpZXMoY29uc3QgQ0VMVE1vZGUgKm0sIGNvbnN0IGNlbHRfc2lnICpY
LCBjZWx0X2VuZXIgKmJhbmRFLCBpbnQgZW5kLCBpbnQgQywgaW50IExNLCBpbnQgYXJjaCkKIHsK
ICAgIGludCBpLCBjLCBOOwogICAgY29uc3Qgb3B1c19pbnQxNiAqZUJhbmRzID0gbS0+ZUJhbmRz
OworICAgKHZvaWQpYXJjaDsKICAgIE4gPSBtLT5zaG9ydE1kY3RTaXplPDxMTTsKICAgIGM9MDsg
ZG8gewogICAgICAgZm9yIChpPTA7aTxlbmQ7aSsrKQpAQCAtMTU1LDcgKzE1Niw3IEBAIHZvaWQg
bm9ybWFsaXNlX2JhbmRzKGNvbnN0IENFTFRNb2RlICptLCBjb25zdCBjZWx0X3NpZyAqIE9QVVNf
UkVTVFJJQ1QgZnJlcSwgY2VsCiAKICNlbHNlIC8qIEZJWEVEX1BPSU5UICovCiAvKiBDb21wdXRl
IHRoZSBhbXBsaXR1ZGUgKHNxcnQgZW5lcmd5KSBpbiBlYWNoIG9mIHRoZSBiYW5kcyAqLwotdm9p
ZCBjb21wdXRlX2JhbmRfZW5lcmdpZXMoY29uc3QgQ0VMVE1vZGUgKm0sIGNvbnN0IGNlbHRfc2ln
ICpYLCBjZWx0X2VuZXIgKmJhbmRFLCBpbnQgZW5kLCBpbnQgQywgaW50IExNKQordm9pZCBjb21w
dXRlX2JhbmRfZW5lcmdpZXMoY29uc3QgQ0VMVE1vZGUgKm0sIGNvbnN0IGNlbHRfc2lnICpYLCBj
ZWx0X2VuZXIgKmJhbmRFLCBpbnQgZW5kLCBpbnQgQywgaW50IExNLCBpbnQgYXJjaCkKIHsKICAg
IGludCBpLCBjLCBOOwogICAgY29uc3Qgb3B1c19pbnQxNiAqZUJhbmRzID0gbS0+ZUJhbmRzOwpA
QCAtMTY0LDcgKzE2NSw3IEBAIHZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNvbnN0IENFTFRN
b2RlICptLCBjb25zdCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kCiAgICAgICBmb3IgKGk9
MDtpPGVuZDtpKyspCiAgICAgICB7CiAgICAgICAgICBvcHVzX3ZhbDMyIHN1bTsKLSAgICAgICAg
IHN1bSA9IDFlLTI3ZiArIGNlbHRfaW5uZXJfcHJvZF9jKCZYW2MqTisoZUJhbmRzW2ldPDxMTSld
LCAmWFtjKk4rKGVCYW5kc1tpXTw8TE0pXSwgKGVCYW5kc1tpKzFdLWVCYW5kc1tpXSk8PExNKTsK
KyAgICAgICAgIHN1bSA9IDFlLTI3ZiArIGNlbHRfaW5uZXJfcHJvZCgmWFtjKk4rKGVCYW5kc1tp
XTw8TE0pXSwgJlhbYypOKyhlQmFuZHNbaV08PExNKV0sIChlQmFuZHNbaSsxXS1lQmFuZHNbaV0p
PDxMTSwgYXJjaCk7CiAgICAgICAgICBiYW5kRVtpK2MqbS0+bmJFQmFuZHNdID0gY2VsdF9zcXJ0
KHN1bSk7CiAgICAgICAgICAvKnByaW50ZiAoIiVmICIsIGJhbmRFW2krYyptLT5uYkVCYW5kc10p
OyovCiAgICAgICB9CkBAIC0yMjQsNyArMjI1LDcgQEAgdm9pZCBkZW5vcm1hbGlzZV9iYW5kcyhj
b25zdCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9ub3JtICogT1BVU19SRVNUUklDVCBYLAogI2Vu
ZGlmCiAgICAgICBqPU0qZUJhbmRzW2ldOwogICAgICAgYmFuZF9lbmQgPSBNKmVCYW5kc1tpKzFd
OwotICAgICAgbGcgPSBBREQxNihiYW5kTG9nRVtpXSwgU0hMMTYoKG9wdXNfdmFsMTYpZU1lYW5z
W2ldLDYpKTsKKyAgICAgIGxnID0gU0FUVVJBVEUxNihBREQzMihiYW5kTG9nRVtpXSwgU0hMMzIo
KG9wdXNfdmFsMzIpZU1lYW5zW2ldLDYpKSk7CiAjaWZuZGVmIEZJWEVEX1BPSU5UCiAgICAgICBn
ID0gY2VsdF9leHAyKE1JTjMyKDMyLmYsIGxnKSk7CiAjZWxzZQpAQCAtMjQxLDEyICsyNDIsMTIg
QEAgdm9pZCBkZW5vcm1hbGlzZV9iYW5kcyhjb25zdCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9u
b3JtICogT1BVU19SRVNUUklDVCBYLAogICAgICAgLyogSGFuZGxlIGV4dHJlbWUgZ2FpbnMgd2l0
aCBuZWdhdGl2ZSBzaGlmdC4gKi8KICAgICAgIGlmIChzaGlmdDwwKQogICAgICAgewotICAgICAg
ICAgLyogRm9yIHNoaWZ0IDwgLTIgd2UnZCBiZSBsaWtlbHkgdG8gb3ZlcmZsb3csIHNvIHdlJ3Jl
IGNhcHBpbmcKLSAgICAgICAgICAgICAgIHRoZSBnYWluIGhlcmUuIFRoaXMgc2hvdWxkbid0IGhh
cHBlbiB1bmxlc3MgdGhlIGJpdHN0cmVhbSBpcwotICAgICAgICAgICAgICAgYWxyZWFkeSBjb3Jy
dXB0ZWQuICovCi0gICAgICAgICBpZiAoc2hpZnQgPCAtMikKKyAgICAgICAgIC8qIEZvciBzaGlm
dCA8PSAtMiBhbmQgZyA+IDE2Mzg0IHdlJ2QgYmUgbGlrZWx5IHRvIG92ZXJmbG93LCBzbyB3ZSdy
ZQorICAgICAgICAgICAgY2FwcGluZyB0aGUgZ2FpbiBoZXJlLCB3aGljaCBpcyBlcXVpdmFsZW50
IHRvIGEgY2FwIG9mIDE4IG9uIGxnLgorICAgICAgICAgICAgVGhpcyBzaG91bGRuJ3QgdHJpZ2dl
ciB1bmxlc3MgdGhlIGJpdHN0cmVhbSBpcyBhbHJlYWR5IGNvcnJ1cHRlZC4gKi8KKyAgICAgICAg
IGlmIChzaGlmdCA8PSAtMikKICAgICAgICAgIHsKLSAgICAgICAgICAgIGcgPSAzMjc2NzsKKyAg
ICAgICAgICAgIGcgPSAxNjM4NDsKICAgICAgICAgICAgIHNoaWZ0ID0gLTI7CiAgICAgICAgICB9
CiAgICAgICAgICBkbyB7CkBAIC0zNjAsNiArMzYxLDMwIEBAIHZvaWQgYW50aV9jb2xsYXBzZShj
b25zdCBDRUxUTW9kZSAqbSwgY2VsdF9ub3JtICpYXywgdW5zaWduZWQgY2hhciAqY29sbGFwc2Vf
bWFzCiAgICB9CiB9CiAKKy8qIENvbXB1dGUgdGhlIHdlaWdodHMgdG8gdXNlIGZvciBvcHRpbWl6
aW5nIG5vcm1hbGl6ZWQgZGlzdG9ydGlvbiBhY3Jvc3MKKyAgIGNoYW5uZWxzLiBXZSB1c2UgdGhl
IGFtcGxpdHVkZSB0byB3ZWlnaHQgc3F1YXJlIGRpc3RvcnRpb24sIHdoaWNoIG1lYW5zCisgICB0
aGF0IHdlIHVzZSB0aGUgc3F1YXJlIHJvb3Qgb2YgdGhlIHZhbHVlIHdlIHdvdWxkIGhhdmUgYmVl
biB1c2luZyBpZiB3ZQorICAgd2FudGVkIHRvIG1pbmltaXplIHRoZSBNU0UgaW4gdGhlIG5vbi1u
b3JtYWxpemVkIGRvbWFpbi4gVGhpcyByb3VnaGx5CisgICBjb3JyZXNwb25kcyB0byBzb21lIHF1
aWNrLWFuZC1kaXJ0eSBwZXJjZXB0dWFsIGV4cGVyaW1lbnRzIEkgcmFuIHRvCisgICBtZWFzdXJl
IGludGVyLWF1cmFsIG1hc2tpbmcgKHRoZXJlIGRvZXNuJ3Qgc2VlbSB0byBiZSBhbnkgcHVibGlz
aGVkIGRhdGEKKyAgIG9uIHRoZSB0b3BpYykuICovCitzdGF0aWMgdm9pZCBjb21wdXRlX2NoYW5u
ZWxfd2VpZ2h0cyhjZWx0X2VuZXIgRXgsIGNlbHRfZW5lciBFeSwgb3B1c192YWwxNiB3WzJdKQor
eworICAgY2VsdF9lbmVyIG1pbkU7CisjaWYgRklYRURfUE9JTlQKKyAgIGludCBzaGlmdDsKKyNl
bmRpZgorICAgbWluRSA9IE1JTjMyKEV4LCBFeSk7CisgICAvKiBBZGp1c3RtZW50IHRvIG1ha2Ug
dGhlIHdlaWdodHMgYSBiaXQgbW9yZSBjb25zZXJ2YXRpdmUuICovCisgICBFeCA9IEFERDMyKEV4
LCBtaW5FLzMpOworICAgRXkgPSBBREQzMihFeSwgbWluRS8zKTsKKyNpZiBGSVhFRF9QT0lOVAor
ICAgc2hpZnQgPSBjZWx0X2lsb2cyKEVQU0lMT04rTUFYMzIoRXgsIEV5KSktMTQ7CisjZW5kaWYK
KyAgIHdbMF0gPSBWU0hSMzIoRXgsIHNoaWZ0KTsKKyAgIHdbMV0gPSBWU0hSMzIoRXksIHNoaWZ0
KTsKK30KKwogc3RhdGljIHZvaWQgaW50ZW5zaXR5X3N0ZXJlbyhjb25zdCBDRUxUTW9kZSAqbSwg
Y2VsdF9ub3JtICogT1BVU19SRVNUUklDVCBYLCBjb25zdCBjZWx0X25vcm0gKiBPUFVTX1JFU1RS
SUNUIFksIGNvbnN0IGNlbHRfZW5lciAqYmFuZEUsIGludCBiYW5kSUQsIGludCBOKQogewogICAg
aW50IGkgPSBiYW5kSUQ7CkBAIC02NDcsNiArNjcyLDcgQEAgc3RhdGljIGludCBjb21wdXRlX3Fu
KGludCBOLCBpbnQgYiwgaW50IG9mZnNldCwgaW50IHB1bHNlX2NhcCwgaW50IHN0ZXJlbykKIAog
c3RydWN0IGJhbmRfY3R4IHsKICAgIGludCBlbmNvZGU7CisgICBpbnQgcmVzeW50aDsKICAgIGNv
bnN0IENFTFRNb2RlICptOwogICAgaW50IGk7CiAgICBpbnQgaW50ZW5zaXR5OwpAQCAtNjU3LDYg
KzY4Myw5IEBAIHN0cnVjdCBiYW5kX2N0eCB7CiAgICBjb25zdCBjZWx0X2VuZXIgKmJhbmRFOwog
ICAgb3B1c191aW50MzIgc2VlZDsKICAgIGludCBhcmNoOworICAgaW50IHRoZXRhX3JvdW5kOwor
ICAgaW50IGRpc2FibGVfaW52OworICAgaW50IGF2b2lkX3NwbGl0X25vaXNlOwogfTsKIAogc3Ry
dWN0IHNwbGl0X2N0eCB7CkBAIC03MTQsOCArNzQzLDM1IEBAIHN0YXRpYyB2b2lkIGNvbXB1dGVf
dGhldGEoc3RydWN0IGJhbmRfY3R4ICpjdHgsIHN0cnVjdCBzcGxpdF9jdHggKnNjdHgsCiAgICBp
ZiAocW4hPTEpCiAgICB7CiAgICAgICBpZiAoZW5jb2RlKQotICAgICAgICAgaXRoZXRhID0gKGl0
aGV0YSoob3B1c19pbnQzMilxbis4MTkyKT4+MTQ7Ci0KKyAgICAgIHsKKyAgICAgICAgIGlmICgh
c3RlcmVvIHx8IGN0eC0+dGhldGFfcm91bmQgPT0gMCkKKyAgICAgICAgIHsKKyAgICAgICAgICAg
IGl0aGV0YSA9IChpdGhldGEqKG9wdXNfaW50MzIpcW4rODE5Mik+PjE0OworICAgICAgICAgICAg
aWYgKCFzdGVyZW8gJiYgY3R4LT5hdm9pZF9zcGxpdF9ub2lzZSAmJiBpdGhldGEgPiAwICYmIGl0
aGV0YSA8IHFuKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgLyogQ2hlY2sgaWYgdGhl
IHNlbGVjdGVkIHZhbHVlIG9mIHRoZXRhIHdpbGwgY2F1c2UgdGhlIGJpdCBhbGxvY2F0aW9uCisg
ICAgICAgICAgICAgICAgICB0byBpbmplY3Qgbm9pc2Ugb24gb25lIHNpZGUuIElmIHNvLCBtYWtl
IHN1cmUgdGhlIGVuZXJneSBvZiB0aGF0IHNpZGUKKyAgICAgICAgICAgICAgICAgIGlzIHplcm8u
ICovCisgICAgICAgICAgICAgICBpbnQgdW5xdWFudGl6ZWQgPSBjZWx0X3VkaXYoKG9wdXNfaW50
MzIpaXRoZXRhKjE2Mzg0LCBxbik7CisgICAgICAgICAgICAgICBpbWlkID0gYml0ZXhhY3RfY29z
KChvcHVzX2ludDE2KXVucXVhbnRpemVkKTsKKyAgICAgICAgICAgICAgIGlzaWRlID0gYml0ZXhh
Y3RfY29zKChvcHVzX2ludDE2KSgxNjM4NC11bnF1YW50aXplZCkpOworICAgICAgICAgICAgICAg
ZGVsdGEgPSBGUkFDX01VTDE2KChOLTEpPDw3LGJpdGV4YWN0X2xvZzJ0YW4oaXNpZGUsaW1pZCkp
OworICAgICAgICAgICAgICAgaWYgKGRlbHRhID4gKmIpCisgICAgICAgICAgICAgICAgICBpdGhl
dGEgPSBxbjsKKyAgICAgICAgICAgICAgIGVsc2UgaWYgKGRlbHRhIDwgLSpiKQorICAgICAgICAg
ICAgICAgICAgaXRoZXRhID0gMDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICBpbnQgZG93bjsKKyAgICAgICAgICAgIC8qIEJpYXMgcXVhbnRpemF0aW9uIHRv
d2FyZHMgaXRoZXRhPTAgYW5kIGl0aGV0YT0xNjM4NC4gKi8KKyAgICAgICAgICAgIGludCBiaWFz
ID0gaXRoZXRhID4gODE5MiA/IDMyNzY3L3FuIDogLTMyNzY3L3FuOworICAgICAgICAgICAgZG93
biA9IElNSU4ocW4tMSwgSU1BWCgwLCAoaXRoZXRhKihvcHVzX2ludDMyKXFuICsgYmlhcyk+PjE0
KSk7CisgICAgICAgICAgICBpZiAoY3R4LT50aGV0YV9yb3VuZCA8IDApCisgICAgICAgICAgICAg
ICBpdGhldGEgPSBkb3duOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgaXRoZXRh
ID0gZG93bisxOworICAgICAgICAgfQorICAgICAgfQogICAgICAgLyogRW50cm9weSBjb2Rpbmcg
b2YgdGhlIGFuZ2xlLiBXZSB1c2UgYSB1bmlmb3JtIHBkZiBmb3IgdGhlCiAgICAgICAgICB0aW1l
IHNwbGl0LCBhIHN0ZXAgZm9yIHN0ZXJlbywgYW5kIGEgdHJpYW5ndWxhciBvbmUgZm9yIHRoZSBy
ZXN0LiAqLwogICAgICAgaWYgKHN0ZXJlbyAmJiBOPjIpCkBAIC03OTMsNyArODQ5LDcgQEAgc3Rh
dGljIHZvaWQgY29tcHV0ZV90aGV0YShzdHJ1Y3QgYmFuZF9jdHggKmN0eCwgc3RydWN0IHNwbGl0
X2N0eCAqc2N0eCwKICAgIH0gZWxzZSBpZiAoc3RlcmVvKSB7CiAgICAgICBpZiAoZW5jb2RlKQog
ICAgICAgewotICAgICAgICAgaW52ID0gaXRoZXRhID4gODE5MjsKKyAgICAgICAgIGludiA9IGl0
aGV0YSA+IDgxOTIgJiYgIWN0eC0+ZGlzYWJsZV9pbnY7CiAgICAgICAgICBpZiAoaW52KQogICAg
ICAgICAgewogICAgICAgICAgICAgaW50IGo7CkBAIC04MTAsNiArODY2LDkgQEAgc3RhdGljIHZv
aWQgY29tcHV0ZV90aGV0YShzdHJ1Y3QgYmFuZF9jdHggKmN0eCwgc3RydWN0IHNwbGl0X2N0eCAq
c2N0eCwKICAgICAgICAgICAgIGludiA9IGVjX2RlY19iaXRfbG9ncChlYywgMik7CiAgICAgICB9
IGVsc2UKICAgICAgICAgIGludiA9IDA7CisgICAgICAvKiBpbnYgZmxhZyBvdmVycmlkZSB0byBh
dm9pZCBwcm9ibGVtcyB3aXRoIGRvd25taXhpbmcuICovCisgICAgICBpZiAoY3R4LT5kaXNhYmxl
X2ludikKKyAgICAgICAgIGludiA9IDA7CiAgICAgICBpdGhldGEgPSAwOwogICAgfQogICAgcWFs
bG9jID0gZWNfdGVsbF9mcmFjKGVjKSAtIHRlbGw7CkBAIC04NDUsMTEgKzkwNCw2IEBAIHN0YXRp
YyB2b2lkIGNvbXB1dGVfdGhldGEoc3RydWN0IGJhbmRfY3R4ICpjdHgsIHN0cnVjdCBzcGxpdF9j
dHggKnNjdHgsCiBzdGF0aWMgdW5zaWduZWQgcXVhbnRfYmFuZF9uMShzdHJ1Y3QgYmFuZF9jdHgg
KmN0eCwgY2VsdF9ub3JtICpYLCBjZWx0X25vcm0gKlksIGludCBiLAogICAgICAgY2VsdF9ub3Jt
ICpsb3diYW5kX291dCkKIHsKLSNpZmRlZiBSRVNZTlRICi0gICBpbnQgcmVzeW50aCA9IDE7Ci0j
ZWxzZQotICAgaW50IHJlc3ludGggPSAhY3R4LT5lbmNvZGU7Ci0jZW5kaWYKICAgIGludCBjOwog
ICAgaW50IHN0ZXJlbzsKICAgIGNlbHRfbm9ybSAqeCA9IFg7CkBAIC04NzQsNyArOTI4LDcgQEAg
c3RhdGljIHVuc2lnbmVkIHF1YW50X2JhbmRfbjEoc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRf
bm9ybSAqWCwgY2VsdF9ub3JtICpZLAogICAgICAgICAgY3R4LT5yZW1haW5pbmdfYml0cyAtPSAx
PDxCSVRSRVM7CiAgICAgICAgICBiLT0xPDxCSVRSRVM7CiAgICAgICB9Ci0gICAgICBpZiAocmVz
eW50aCkKKyAgICAgIGlmIChjdHgtPnJlc3ludGgpCiAgICAgICAgICB4WzBdID0gc2lnbiA/IC1O
T1JNX1NDQUxJTkcgOiBOT1JNX1NDQUxJTkc7CiAgICAgICB4ID0gWTsKICAgIH0gd2hpbGUgKCsr
YzwxK3N0ZXJlbyk7CkBAIC04OTksMTEgKzk1Myw2IEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFudF9w
YXJ0aXRpb24oc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwKICAgIGludCBCMD1C
OwogICAgb3B1c192YWwxNiBtaWQ9MCwgc2lkZT0wOwogICAgdW5zaWduZWQgY209MDsKLSNpZmRl
ZiBSRVNZTlRICi0gICBpbnQgcmVzeW50aCA9IDE7Ci0jZWxzZQotICAgaW50IHJlc3ludGggPSAh
Y3R4LT5lbmNvZGU7Ci0jZW5kaWYKICAgIGNlbHRfbm9ybSAqWT1OVUxMOwogICAgaW50IGVuY29k
ZTsKICAgIGNvbnN0IENFTFRNb2RlICptOwpAQCAtOTM1LDggKzk4NCw3IEBAIHN0YXRpYyB1bnNp
Z25lZCBxdWFudF9wYXJ0aXRpb24oc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwK
ICAgICAgICAgIGZpbGwgPSAoZmlsbCYxKXwoZmlsbDw8MSk7CiAgICAgICBCID0gKEIrMSk+PjE7
CiAKLSAgICAgIGNvbXB1dGVfdGhldGEoY3R4LCAmc2N0eCwgWCwgWSwgTiwgJmIsIEIsIEIwLAot
ICAgICAgICAgICAgTE0sIDAsICZmaWxsKTsKKyAgICAgIGNvbXB1dGVfdGhldGEoY3R4LCAmc2N0
eCwgWCwgWSwgTiwgJmIsIEIsIEIwLCBMTSwgMCwgJmZpbGwpOwogICAgICAgaW1pZCA9IHNjdHgu
aW1pZDsKICAgICAgIGlzaWRlID0gc2N0eC5pc2lkZTsKICAgICAgIGRlbHRhID0gc2N0eC5kZWx0
YTsKQEAgLTk3MCwyNCArMTAxOCwyMCBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfcGFydGl0aW9u
KHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsCiAgICAgICByZWJhbGFuY2UgPSBj
dHgtPnJlbWFpbmluZ19iaXRzOwogICAgICAgaWYgKG1iaXRzID49IHNiaXRzKQogICAgICAgewot
ICAgICAgICAgY20gPSBxdWFudF9wYXJ0aXRpb24oY3R4LCBYLCBOLCBtYml0cywgQiwKLSAgICAg
ICAgICAgICAgIGxvd2JhbmQsIExNLAorICAgICAgICAgY20gPSBxdWFudF9wYXJ0aXRpb24oY3R4
LCBYLCBOLCBtYml0cywgQiwgbG93YmFuZCwgTE0sCiAgICAgICAgICAgICAgICBNVUxUMTZfMTZf
UDE1KGdhaW4sbWlkKSwgZmlsbCk7CiAgICAgICAgICByZWJhbGFuY2UgPSBtYml0cyAtIChyZWJh
bGFuY2UtY3R4LT5yZW1haW5pbmdfYml0cyk7CiAgICAgICAgICBpZiAocmViYWxhbmNlID4gMzw8
QklUUkVTICYmIGl0aGV0YSE9MCkKICAgICAgICAgICAgIHNiaXRzICs9IHJlYmFsYW5jZSAtICgz
PDxCSVRSRVMpOwotICAgICAgICAgY20gfD0gcXVhbnRfcGFydGl0aW9uKGN0eCwgWSwgTiwgc2Jp
dHMsIEIsCi0gICAgICAgICAgICAgICBuZXh0X2xvd2JhbmQyLCBMTSwKKyAgICAgICAgIGNtIHw9
IHF1YW50X3BhcnRpdGlvbihjdHgsIFksIE4sIHNiaXRzLCBCLCBuZXh0X2xvd2JhbmQyLCBMTSwK
ICAgICAgICAgICAgICAgIE1VTFQxNl8xNl9QMTUoZ2FpbixzaWRlKSwgZmlsbD4+Qik8PChCMD4+
MSk7CiAgICAgICB9IGVsc2UgewotICAgICAgICAgY20gPSBxdWFudF9wYXJ0aXRpb24oY3R4LCBZ
LCBOLCBzYml0cywgQiwKLSAgICAgICAgICAgICAgIG5leHRfbG93YmFuZDIsIExNLAorICAgICAg
ICAgY20gPSBxdWFudF9wYXJ0aXRpb24oY3R4LCBZLCBOLCBzYml0cywgQiwgbmV4dF9sb3diYW5k
MiwgTE0sCiAgICAgICAgICAgICAgICBNVUxUMTZfMTZfUDE1KGdhaW4sc2lkZSksIGZpbGw+PkIp
PDwoQjA+PjEpOwogICAgICAgICAgcmViYWxhbmNlID0gc2JpdHMgLSAocmViYWxhbmNlLWN0eC0+
cmVtYWluaW5nX2JpdHMpOwogICAgICAgICAgaWYgKHJlYmFsYW5jZSA+IDM8PEJJVFJFUyAmJiBp
dGhldGEhPTE2Mzg0KQogICAgICAgICAgICAgbWJpdHMgKz0gcmViYWxhbmNlIC0gKDM8PEJJVFJF
Uyk7Ci0gICAgICAgICBjbSB8PSBxdWFudF9wYXJ0aXRpb24oY3R4LCBYLCBOLCBtYml0cywgQiwK
LSAgICAgICAgICAgICAgIGxvd2JhbmQsIExNLAorICAgICAgICAgY20gfD0gcXVhbnRfcGFydGl0
aW9uKGN0eCwgWCwgTiwgbWJpdHMsIEIsIGxvd2JhbmQsIExNLAogICAgICAgICAgICAgICAgTVVM
VDE2XzE2X1AxNShnYWluLG1pZCksIGZpbGwpOwogICAgICAgfQogICAgfSBlbHNlIHsKQEAgLTEw
MTIsMTggKzEwNTYsMTQgQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50X3BhcnRpdGlvbihzdHJ1Y3Qg
YmFuZF9jdHggKmN0eCwgY2VsdF9ub3JtICpYLAogICAgICAgICAgLyogRmluYWxseSBkbyB0aGUg
YWN0dWFsIHF1YW50aXphdGlvbiAqLwogICAgICAgICAgaWYgKGVuY29kZSkKICAgICAgICAgIHsK
LSAgICAgICAgICAgIGNtID0gYWxnX3F1YW50KFgsIE4sIEssIHNwcmVhZCwgQiwgZWMKLSNpZmRl
ZiBSRVNZTlRICi0gICAgICAgICAgICAgICAgICwgZ2FpbgotI2VuZGlmCi0gICAgICAgICAgICAg
ICAgICk7CisgICAgICAgICAgICBjbSA9IGFsZ19xdWFudChYLCBOLCBLLCBzcHJlYWQsIEIsIGVj
LCBnYWluLCBjdHgtPnJlc3ludGgsIGN0eC0+YXJjaCk7CiAgICAgICAgICB9IGVsc2UgewogICAg
ICAgICAgICAgY20gPSBhbGdfdW5xdWFudChYLCBOLCBLLCBzcHJlYWQsIEIsIGVjLCBnYWluKTsK
ICAgICAgICAgIH0KICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAvKiBJZiB0aGVyZSdzIG5vIHB1
bHNlLCBmaWxsIHRoZSBiYW5kIGFueXdheSAqLwogICAgICAgICAgaW50IGo7Ci0gICAgICAgICBp
ZiAocmVzeW50aCkKKyAgICAgICAgIGlmIChjdHgtPnJlc3ludGgpCiAgICAgICAgICB7CiAgICAg
ICAgICAgICB1bnNpZ25lZCBjbV9tYXNrOwogICAgICAgICAgICAgLyogQiBjYW4gYmUgYXMgbGFy
Z2UgYXMgMTYsIHNvIHRoaXMgc2hpZnQgbWlnaHQgb3ZlcmZsb3cgYW4gaW50IG9uIGEKQEAgLTEw
ODAsMTEgKzExMjAsNiBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfYmFuZChzdHJ1Y3QgYmFuZF9j
dHggKmN0eCwgY2VsdF9ub3JtICpYLAogICAgaW50IHJlY29tYmluZT0wOwogICAgaW50IGxvbmdC
bG9ja3M7CiAgICB1bnNpZ25lZCBjbT0wOwotI2lmZGVmIFJFU1lOVEgKLSAgIGludCByZXN5bnRo
ID0gMTsKLSNlbHNlCi0gICBpbnQgcmVzeW50aCA9ICFjdHgtPmVuY29kZTsKLSNlbmRpZgogICAg
aW50IGs7CiAgICBpbnQgZW5jb2RlOwogICAgaW50IHRmX2NoYW5nZTsKQEAgLTExNTEsMTEgKzEx
ODYsMTAgQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50X2JhbmQoc3RydWN0IGJhbmRfY3R4ICpjdHgs
IGNlbHRfbm9ybSAqWCwKICAgICAgICAgIGRlaW50ZXJsZWF2ZV9oYWRhbWFyZChsb3diYW5kLCBO
X0I+PnJlY29tYmluZSwgQjA8PHJlY29tYmluZSwgbG9uZ0Jsb2Nrcyk7CiAgICB9CiAKLSAgIGNt
ID0gcXVhbnRfcGFydGl0aW9uKGN0eCwgWCwgTiwgYiwgQiwgbG93YmFuZCwKLSAgICAgICAgIExN
LCBnYWluLCBmaWxsKTsKKyAgIGNtID0gcXVhbnRfcGFydGl0aW9uKGN0eCwgWCwgTiwgYiwgQiwg
bG93YmFuZCwgTE0sIGdhaW4sIGZpbGwpOwogCiAgICAvKiBUaGlzIGNvZGUgaXMgdXNlZCBieSB0
aGUgZGVjb2RlciBhbmQgYnkgdGhlIHJlc3ludGhlc2lzLWVuYWJsZWQgZW5jb2RlciAqLwotICAg
aWYgKHJlc3ludGgpCisgICBpZiAoY3R4LT5yZXN5bnRoKQogICAgewogICAgICAgLyogVW5kbyB0
aGUgc2FtcGxlIHJlb3JnYW5pemF0aW9uIGdvaW5nIGZyb20gdGltZSBvcmRlciB0byBmcmVxdWVu
Y3kgb3JkZXIgKi8KICAgICAgIGlmIChCMD4xKQpAQCAtMTIwOCwxMSArMTI0Miw2IEBAIHN0YXRp
YyB1bnNpZ25lZCBxdWFudF9iYW5kX3N0ZXJlbyhzdHJ1Y3QgYmFuZF9jdHggKmN0eCwgY2VsdF9u
b3JtICpYLCBjZWx0X25vcm0KICAgIGludCBpbnYgPSAwOwogICAgb3B1c192YWwxNiBtaWQ9MCwg
c2lkZT0wOwogICAgdW5zaWduZWQgY209MDsKLSNpZmRlZiBSRVNZTlRICi0gICBpbnQgcmVzeW50
aCA9IDE7Ci0jZWxzZQotICAgaW50IHJlc3ludGggPSAhY3R4LT5lbmNvZGU7Ci0jZW5kaWYKICAg
IGludCBtYml0cywgc2JpdHMsIGRlbHRhOwogICAgaW50IGl0aGV0YTsKICAgIGludCBxYWxsb2M7
CkBAIC0xMjMyLDggKzEyNjEsNyBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfYmFuZF9zdGVyZW8o
c3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwgY2VsdF9ub3JtCiAKICAgIG9yaWdf
ZmlsbCA9IGZpbGw7CiAKLSAgIGNvbXB1dGVfdGhldGEoY3R4LCAmc2N0eCwgWCwgWSwgTiwgJmIs
IEIsIEIsCi0gICAgICAgICBMTSwgMSwgJmZpbGwpOworICAgY29tcHV0ZV90aGV0YShjdHgsICZz
Y3R4LCBYLCBZLCBOLCAmYiwgQiwgQiwgTE0sIDEsICZmaWxsKTsKICAgIGludiA9IHNjdHguaW52
OwogICAgaW1pZCA9IHNjdHguaW1pZDsKICAgIGlzaWRlID0gc2N0eC5pc2lkZTsKQEAgLTEyODEs
MTMgKzEzMDksMTMgQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50X2JhbmRfc3RlcmVvKHN0cnVjdCBi
YW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsIGNlbHRfbm9ybQogICAgICAgc2lnbiA9IDEtMipz
aWduOwogICAgICAgLyogV2UgdXNlIG9yaWdfZmlsbCBoZXJlIGJlY2F1c2Ugd2Ugd2FudCB0byBm
b2xkIHRoZSBzaWRlLCBidXQgaWYKICAgICAgICAgIGl0aGV0YT09MTYzODQsIHdlJ2xsIGhhdmUg
Y2xlYXJlZCB0aGUgbG93IGJpdHMgb2YgZmlsbC4gKi8KLSAgICAgIGNtID0gcXVhbnRfYmFuZChj
dHgsIHgyLCBOLCBtYml0cywgQiwgbG93YmFuZCwKLSAgICAgICAgICAgIExNLCBsb3diYW5kX291
dCwgUTE1T05FLCBsb3diYW5kX3NjcmF0Y2gsIG9yaWdfZmlsbCk7CisgICAgICBjbSA9IHF1YW50
X2JhbmQoY3R4LCB4MiwgTiwgbWJpdHMsIEIsIGxvd2JhbmQsIExNLCBsb3diYW5kX291dCwgUTE1
T05FLAorICAgICAgICAgICAgbG93YmFuZF9zY3JhdGNoLCBvcmlnX2ZpbGwpOwogICAgICAgLyog
V2UgZG9uJ3Qgc3BsaXQgTj0yIGJhbmRzLCBzbyBjbSBpcyBlaXRoZXIgMSBvciAwIChmb3IgYSBm
b2xkLWNvbGxhcHNlKSwKICAgICAgICAgIGFuZCB0aGVyZSdzIG5vIG5lZWQgdG8gd29ycnkgYWJv
dXQgbWl4aW5nIHdpdGggdGhlIG90aGVyIGNoYW5uZWwuICovCiAgICAgICB5MlswXSA9IC1zaWdu
KngyWzFdOwogICAgICAgeTJbMV0gPSBzaWduKngyWzBdOwotICAgICAgaWYgKHJlc3ludGgpCisg
ICAgICBpZiAoY3R4LT5yZXN5bnRoKQogICAgICAgewogICAgICAgICAgY2VsdF9ub3JtIHRtcDsK
ICAgICAgICAgIFhbMF0gPSBNVUxUMTZfMTZfUTE1KG1pZCwgWFswXSk7CkBAIC0xMzE0LDM4ICsx
MzQyLDMyIEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFudF9iYW5kX3N0ZXJlbyhzdHJ1Y3QgYmFuZF9j
dHggKmN0eCwgY2VsdF9ub3JtICpYLCBjZWx0X25vcm0KICAgICAgIHsKICAgICAgICAgIC8qIElu
IHN0ZXJlbyBtb2RlLCB3ZSBkbyBub3QgYXBwbHkgYSBzY2FsaW5nIHRvIHRoZSBtaWQgYmVjYXVz
ZSB3ZSBuZWVkIHRoZSBub3JtYWxpemVkCiAgICAgICAgICAgICBtaWQgZm9yIGZvbGRpbmcgbGF0
ZXIuICovCi0gICAgICAgICBjbSA9IHF1YW50X2JhbmQoY3R4LCBYLCBOLCBtYml0cywgQiwKLSAg
ICAgICAgICAgICAgIGxvd2JhbmQsIExNLCBsb3diYW5kX291dCwKLSAgICAgICAgICAgICAgIFEx
NU9ORSwgbG93YmFuZF9zY3JhdGNoLCBmaWxsKTsKKyAgICAgICAgIGNtID0gcXVhbnRfYmFuZChj
dHgsIFgsIE4sIG1iaXRzLCBCLCBsb3diYW5kLCBMTSwgbG93YmFuZF9vdXQsIFExNU9ORSwKKyAg
ICAgICAgICAgICAgIGxvd2JhbmRfc2NyYXRjaCwgZmlsbCk7CiAgICAgICAgICByZWJhbGFuY2Ug
PSBtYml0cyAtIChyZWJhbGFuY2UtY3R4LT5yZW1haW5pbmdfYml0cyk7CiAgICAgICAgICBpZiAo
cmViYWxhbmNlID4gMzw8QklUUkVTICYmIGl0aGV0YSE9MCkKICAgICAgICAgICAgIHNiaXRzICs9
IHJlYmFsYW5jZSAtICgzPDxCSVRSRVMpOwogCiAgICAgICAgICAvKiBGb3IgYSBzdGVyZW8gc3Bs
aXQsIHRoZSBoaWdoIGJpdHMgb2YgZmlsbCBhcmUgYWx3YXlzIHplcm8sIHNvIG5vCiAgICAgICAg
ICAgICBmb2xkaW5nIHdpbGwgYmUgZG9uZSB0byB0aGUgc2lkZS4gKi8KLSAgICAgICAgIGNtIHw9
IHF1YW50X2JhbmQoY3R4LCBZLCBOLCBzYml0cywgQiwKLSAgICAgICAgICAgICAgIE5VTEwsIExN
LCBOVUxMLAotICAgICAgICAgICAgICAgc2lkZSwgTlVMTCwgZmlsbD4+Qik7CisgICAgICAgICBj
bSB8PSBxdWFudF9iYW5kKGN0eCwgWSwgTiwgc2JpdHMsIEIsIE5VTEwsIExNLCBOVUxMLCBzaWRl
LCBOVUxMLCBmaWxsPj5CKTsKICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAvKiBGb3IgYSBzdGVy
ZW8gc3BsaXQsIHRoZSBoaWdoIGJpdHMgb2YgZmlsbCBhcmUgYWx3YXlzIHplcm8sIHNvIG5vCiAg
ICAgICAgICAgICBmb2xkaW5nIHdpbGwgYmUgZG9uZSB0byB0aGUgc2lkZS4gKi8KLSAgICAgICAg
IGNtID0gcXVhbnRfYmFuZChjdHgsIFksIE4sIHNiaXRzLCBCLAotICAgICAgICAgICAgICAgTlVM
TCwgTE0sIE5VTEwsCi0gICAgICAgICAgICAgICBzaWRlLCBOVUxMLCBmaWxsPj5CKTsKKyAgICAg
ICAgIGNtID0gcXVhbnRfYmFuZChjdHgsIFksIE4sIHNiaXRzLCBCLCBOVUxMLCBMTSwgTlVMTCwg
c2lkZSwgTlVMTCwgZmlsbD4+Qik7CiAgICAgICAgICByZWJhbGFuY2UgPSBzYml0cyAtIChyZWJh
bGFuY2UtY3R4LT5yZW1haW5pbmdfYml0cyk7CiAgICAgICAgICBpZiAocmViYWxhbmNlID4gMzw8
QklUUkVTICYmIGl0aGV0YSE9MTYzODQpCiAgICAgICAgICAgICBtYml0cyArPSByZWJhbGFuY2Ug
LSAoMzw8QklUUkVTKTsKICAgICAgICAgIC8qIEluIHN0ZXJlbyBtb2RlLCB3ZSBkbyBub3QgYXBw
bHkgYSBzY2FsaW5nIHRvIHRoZSBtaWQgYmVjYXVzZSB3ZSBuZWVkIHRoZSBub3JtYWxpemVkCiAg
ICAgICAgICAgICBtaWQgZm9yIGZvbGRpbmcgbGF0ZXIuICovCi0gICAgICAgICBjbSB8PSBxdWFu
dF9iYW5kKGN0eCwgWCwgTiwgbWJpdHMsIEIsCi0gICAgICAgICAgICAgICBsb3diYW5kLCBMTSwg
bG93YmFuZF9vdXQsCi0gICAgICAgICAgICAgICBRMTVPTkUsIGxvd2JhbmRfc2NyYXRjaCwgZmls
bCk7CisgICAgICAgICBjbSB8PSBxdWFudF9iYW5kKGN0eCwgWCwgTiwgbWJpdHMsIEIsIGxvd2Jh
bmQsIExNLCBsb3diYW5kX291dCwgUTE1T05FLAorICAgICAgICAgICAgICAgbG93YmFuZF9zY3Jh
dGNoLCBmaWxsKTsKICAgICAgIH0KICAgIH0KIAogCiAgICAvKiBUaGlzIGNvZGUgaXMgdXNlZCBi
eSB0aGUgZGVjb2RlciBhbmQgYnkgdGhlIHJlc3ludGhlc2lzLWVuYWJsZWQgZW5jb2RlciAqLwot
ICAgaWYgKHJlc3ludGgpCisgICBpZiAoY3R4LT5yZXN5bnRoKQogICAgewogICAgICAgaWYgKE4h
PTIpCiAgICAgICAgICBzdGVyZW9fbWVyZ2UoWCwgWSwgbWlkLCBOLCBjdHgtPmFyY2gpOwpAQCAt
MTM1OSwxOSArMTM4MSwzOCBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfYmFuZF9zdGVyZW8oc3Ry
dWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwgY2VsdF9ub3JtCiAgICByZXR1cm4gY207
CiB9CiAKK3N0YXRpYyB2b2lkIHNwZWNpYWxfaHlicmlkX2ZvbGRpbmcoY29uc3QgQ0VMVE1vZGUg
Km0sIGNlbHRfbm9ybSAqbm9ybSwgY2VsdF9ub3JtICpub3JtMiwgaW50IHN0YXJ0LCBpbnQgTSwg
aW50IGR1YWxfc3RlcmVvKQoreworICAgaW50IG4xLCBuMjsKKyAgIGNvbnN0IG9wdXNfaW50MTYg
KiBPUFVTX1JFU1RSSUNUIGVCYW5kcyA9IG0tPmVCYW5kczsKKyAgIG4xID0gTSooZUJhbmRzW3N0
YXJ0KzFdLWVCYW5kc1tzdGFydF0pOworICAgbjIgPSBNKihlQmFuZHNbc3RhcnQrMl0tZUJhbmRz
W3N0YXJ0KzFdKTsKKyAgIC8qIER1cGxpY2F0ZSBlbm91Z2ggb2YgdGhlIGZpcnN0IGJhbmQgZm9s
ZGluZyBkYXRhIHRvIGJlIGFibGUgdG8gZm9sZCB0aGUgc2Vjb25kIGJhbmQuCisgICAgICBDb3Bp
ZXMgbm8gZGF0YSBmb3IgQ0VMVC1vbmx5IG1vZGUuICovCisgICBPUFVTX0NPUFkoJm5vcm1bbjFd
LCAmbm9ybVsyKm4xIC0gbjJdLCBuMi1uMSk7CisgICBpZiAoZHVhbF9zdGVyZW8pCisgICAgICBP
UFVTX0NPUFkoJm5vcm0yW24xXSwgJm5vcm0yWzIqbjEgLSBuMl0sIG4yLW4xKTsKK30KIAogdm9p
ZCBxdWFudF9hbGxfYmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFy
dCwgaW50IGVuZCwKICAgICAgIGNlbHRfbm9ybSAqWF8sIGNlbHRfbm9ybSAqWV8sIHVuc2lnbmVk
IGNoYXIgKmNvbGxhcHNlX21hc2tzLAogICAgICAgY29uc3QgY2VsdF9lbmVyICpiYW5kRSwgaW50
ICpwdWxzZXMsIGludCBzaG9ydEJsb2NrcywgaW50IHNwcmVhZCwKICAgICAgIGludCBkdWFsX3N0
ZXJlbywgaW50IGludGVuc2l0eSwgaW50ICp0Zl9yZXMsIG9wdXNfaW50MzIgdG90YWxfYml0cywK
ICAgICAgIG9wdXNfaW50MzIgYmFsYW5jZSwgZWNfY3R4ICplYywgaW50IExNLCBpbnQgY29kZWRC
YW5kcywKLSAgICAgIG9wdXNfdWludDMyICpzZWVkLCBpbnQgYXJjaCkKKyAgICAgIG9wdXNfdWlu
dDMyICpzZWVkLCBpbnQgY29tcGxleGl0eSwgaW50IGFyY2gsIGludCBkaXNhYmxlX2ludikKIHsK
ICAgIGludCBpOwogICAgb3B1c19pbnQzMiByZW1haW5pbmdfYml0czsKICAgIGNvbnN0IG9wdXNf
aW50MTYgKiBPUFVTX1JFU1RSSUNUIGVCYW5kcyA9IG0tPmVCYW5kczsKICAgIGNlbHRfbm9ybSAq
IE9QVVNfUkVTVFJJQ1Qgbm9ybSwgKiBPUFVTX1JFU1RSSUNUIG5vcm0yOwogICAgVkFSREVDTChj
ZWx0X25vcm0sIF9ub3JtKTsKKyAgIFZBUkRFQ0woY2VsdF9ub3JtLCBfbG93YmFuZF9zY3JhdGNo
KTsKKyAgIFZBUkRFQ0woY2VsdF9ub3JtLCBYX3NhdmUpOworICAgVkFSREVDTChjZWx0X25vcm0s
IFlfc2F2ZSk7CisgICBWQVJERUNMKGNlbHRfbm9ybSwgWF9zYXZlMik7CisgICBWQVJERUNMKGNl
bHRfbm9ybSwgWV9zYXZlMik7CisgICBWQVJERUNMKGNlbHRfbm9ybSwgbm9ybV9zYXZlMik7Cisg
ICBpbnQgcmVzeW50aF9hbGxvYzsKICAgIGNlbHRfbm9ybSAqbG93YmFuZF9zY3JhdGNoOwogICAg
aW50IEI7CiAgICBpbnQgTTsKQEAgLTEzNzksMTAgKzE0MjAsMTEgQEAgdm9pZCBxdWFudF9hbGxf
YmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwK
ICAgIGludCB1cGRhdGVfbG93YmFuZCA9IDE7CiAgICBpbnQgQyA9IFlfICE9IE5VTEwgPyAyIDog
MTsKICAgIGludCBub3JtX29mZnNldDsKKyAgIGludCB0aGV0YV9yZG8gPSBlbmNvZGUgJiYgWV8h
PU5VTEwgJiYgIWR1YWxfc3RlcmVvICYmIGNvbXBsZXhpdHk+PTg7CiAjaWZkZWYgUkVTWU5USAog
ICAgaW50IHJlc3ludGggPSAxOwogI2Vsc2UKLSAgIGludCByZXN5bnRoID0gIWVuY29kZTsKKyAg
IGludCByZXN5bnRoID0gIWVuY29kZSB8fCB0aGV0YV9yZG87CiAjZW5kaWYKICAgIHN0cnVjdCBi
YW5kX2N0eCBjdHg7CiAgICBTQVZFX1NUQUNLOwpAQCAtMTM5NSw5ICsxNDM3LDI0IEBAIHZvaWQg
cXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQs
IGludCBlbmQsCiAgICBBTExPQyhfbm9ybSwgQyooTSplQmFuZHNbbS0+bmJFQmFuZHMtMV0tbm9y
bV9vZmZzZXQpLCBjZWx0X25vcm0pOwogICAgbm9ybSA9IF9ub3JtOwogICAgbm9ybTIgPSBub3Jt
ICsgTSplQmFuZHNbbS0+bmJFQmFuZHMtMV0tbm9ybV9vZmZzZXQ7Ci0gICAvKiBXZSBjYW4gdXNl
IHRoZSBsYXN0IGJhbmQgYXMgc2NyYXRjaCBzcGFjZSBiZWNhdXNlIHdlIGRvbid0IG5lZWQgdGhh
dAotICAgICAgc2NyYXRjaCBzcGFjZSBmb3IgdGhlIGxhc3QgYmFuZC4gKi8KLSAgIGxvd2JhbmRf
c2NyYXRjaCA9IFhfK00qZUJhbmRzW20tPm5iRUJhbmRzLTFdOworCisgICAvKiBGb3IgZGVjb2Rp
bmcsIHdlIGNhbiB1c2UgdGhlIGxhc3QgYmFuZCBhcyBzY3JhdGNoIHNwYWNlIGJlY2F1c2Ugd2Ug
ZG9uJ3QgbmVlZCB0aGF0CisgICAgICBzY3JhdGNoIHNwYWNlIGZvciB0aGUgbGFzdCBiYW5kIGFu
ZCB3ZSBkb24ndCBjYXJlIGFib3V0IHRoZSBkYXRhIHRoZXJlIHVudGlsIHdlJ3JlCisgICAgICBk
ZWNvZGluZyB0aGUgbGFzdCBiYW5kLiAqLworICAgaWYgKGVuY29kZSAmJiByZXN5bnRoKQorICAg
ICAgcmVzeW50aF9hbGxvYyA9IE0qKGVCYW5kc1ttLT5uYkVCYW5kc10tZUJhbmRzW20tPm5iRUJh
bmRzLTFdKTsKKyAgIGVsc2UKKyAgICAgIHJlc3ludGhfYWxsb2MgPSBBTExPQ19OT05FOworICAg
QUxMT0MoX2xvd2JhbmRfc2NyYXRjaCwgcmVzeW50aF9hbGxvYywgY2VsdF9ub3JtKTsKKyAgIGlm
IChlbmNvZGUgJiYgcmVzeW50aCkKKyAgICAgIGxvd2JhbmRfc2NyYXRjaCA9IF9sb3diYW5kX3Nj
cmF0Y2g7CisgICBlbHNlCisgICAgICBsb3diYW5kX3NjcmF0Y2ggPSBYXytNKmVCYW5kc1ttLT5u
YkVCYW5kcy0xXTsKKyAgIEFMTE9DKFhfc2F2ZSwgcmVzeW50aF9hbGxvYywgY2VsdF9ub3JtKTsK
KyAgIEFMTE9DKFlfc2F2ZSwgcmVzeW50aF9hbGxvYywgY2VsdF9ub3JtKTsKKyAgIEFMTE9DKFhf
c2F2ZTIsIHJlc3ludGhfYWxsb2MsIGNlbHRfbm9ybSk7CisgICBBTExPQyhZX3NhdmUyLCByZXN5
bnRoX2FsbG9jLCBjZWx0X25vcm0pOworICAgQUxMT0Mobm9ybV9zYXZlMiwgcmVzeW50aF9hbGxv
YywgY2VsdF9ub3JtKTsKIAogICAgbG93YmFuZF9vZmZzZXQgPSAwOwogICAgY3R4LmJhbmRFID0g
YmFuZEU7CkBAIC0xNDA4LDYgKzE0NjUsMTEgQEAgdm9pZCBxdWFudF9hbGxfYmFuZHMoaW50IGVu
Y29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwKICAgIGN0eC5zZWVk
ID0gKnNlZWQ7CiAgICBjdHguc3ByZWFkID0gc3ByZWFkOwogICAgY3R4LmFyY2ggPSBhcmNoOwor
ICAgY3R4LmRpc2FibGVfaW52ID0gZGlzYWJsZV9pbnY7CisgICBjdHgucmVzeW50aCA9IHJlc3lu
dGg7CisgICBjdHgudGhldGFfcm91bmQgPSAwOworICAgLyogQXZvaWQgaW5qZWN0aW5nIG5vaXNl
IGluIHRoZSBmaXJzdCBiYW5kIG9uIHRyYW5zaWVudHMuICovCisgICBjdHguYXZvaWRfc3BsaXRf
bm9pc2UgPSBCID4gMTsKICAgIGZvciAoaT1zdGFydDtpPGVuZDtpKyspCiAgICB7CiAgICAgICBv
cHVzX2ludDMyIHRlbGw7CkBAIC0xNDQ1LDggKzE1MDcsMTUgQEAgdm9pZCBxdWFudF9hbGxfYmFu
ZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwKICAg
ICAgICAgIGIgPSAwOwogICAgICAgfQogCisjaWZkZWYgRU5BQkxFX1VQREFURV9EUkFGVAorICAg
ICAgaWYgKHJlc3ludGggJiYgKE0qZUJhbmRzW2ldLU4gPj0gTSplQmFuZHNbc3RhcnRdIHx8IGk9
PXN0YXJ0KzEpICYmICh1cGRhdGVfbG93YmFuZCB8fCBsb3diYW5kX29mZnNldD09MCkpCisgICAg
ICAgICAgICBsb3diYW5kX29mZnNldCA9IGk7CisgICAgICBpZiAoaSA9PSBzdGFydCsxKQorICAg
ICAgICAgc3BlY2lhbF9oeWJyaWRfZm9sZGluZyhtLCBub3JtLCBub3JtMiwgc3RhcnQsIE0sIGR1
YWxfc3RlcmVvKTsKKyNlbHNlCiAgICAgICBpZiAocmVzeW50aCAmJiBNKmVCYW5kc1tpXS1OID49
IE0qZUJhbmRzW3N0YXJ0XSAmJiAodXBkYXRlX2xvd2JhbmQgfHwgbG93YmFuZF9vZmZzZXQ9PTAp
KQogICAgICAgICAgICAgbG93YmFuZF9vZmZzZXQgPSBpOworI2VuZGlmCiAKICAgICAgIHRmX2No
YW5nZSA9IHRmX3Jlc1tpXTsKICAgICAgIGN0eC50Zl9jaGFuZ2UgPSB0Zl9jaGFuZ2U7CkBAIC0x
NDU3LDcgKzE1MjYsNyBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhpbnQgZW5jb2RlLCBjb25zdCBD
RUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAogICAgICAgICAgICAgWSA9IG5vcm07CiAg
ICAgICAgICBsb3diYW5kX3NjcmF0Y2ggPSBOVUxMOwogICAgICAgfQotICAgICAgaWYgKGk9PWVu
ZC0xKQorICAgICAgaWYgKGxhc3QgJiYgIXRoZXRhX3JkbykKICAgICAgICAgIGxvd2JhbmRfc2Ny
YXRjaCA9IE5VTEw7CiAKICAgICAgIC8qIEdldCBhIGNvbnNlcnZhdGl2ZSBlc3RpbWF0ZSBvZiB0
aGUgY29sbGFwc2VfbWFzaydzIGZvciB0aGUgYmFuZHMgd2UncmUKQEAgLTE0NzIsNyArMTU0MSwx
MSBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhpbnQgZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAqbSwg
aW50IHN0YXJ0LCBpbnQgZW5kLAogICAgICAgICAgZm9sZF9zdGFydCA9IGxvd2JhbmRfb2Zmc2V0
OwogICAgICAgICAgd2hpbGUoTSplQmFuZHNbLS1mb2xkX3N0YXJ0XSA+IGVmZmVjdGl2ZV9sb3di
YW5kK25vcm1fb2Zmc2V0KTsKICAgICAgICAgIGZvbGRfZW5kID0gbG93YmFuZF9vZmZzZXQtMTsK
KyNpZmRlZiBFTkFCTEVfVVBEQVRFX0RSQUZUCisgICAgICAgICB3aGlsZSgrK2ZvbGRfZW5kIDwg
aSAmJiBNKmVCYW5kc1tmb2xkX2VuZF0gPCBlZmZlY3RpdmVfbG93YmFuZCtub3JtX29mZnNldCtO
KTsKKyNlbHNlCiAgICAgICAgICB3aGlsZShNKmVCYW5kc1srK2ZvbGRfZW5kXSA8IGVmZmVjdGl2
ZV9sb3diYW5kK25vcm1fb2Zmc2V0K04pOworI2VuZGlmCiAgICAgICAgICB4X2NtID0geV9jbSA9
IDA7CiAgICAgICAgICBmb2xkX2kgPSBmb2xkX3N0YXJ0OyBkbyB7CiAgICAgICAgICAgIHhfY20g
fD0gY29sbGFwc2VfbWFza3NbZm9sZF9pKkMrMF07CkBAIC0xNTA1LDEzICsxNTc4LDc3IEBAIHZv
aWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3Rh
cnQsIGludCBlbmQsCiAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKFkhPU5VTEwpCiAgICAg
ICAgICB7Ci0gICAgICAgICAgICB4X2NtID0gcXVhbnRfYmFuZF9zdGVyZW8oJmN0eCwgWCwgWSwg
TiwgYiwgQiwKLSAgICAgICAgICAgICAgICAgIGVmZmVjdGl2ZV9sb3diYW5kICE9IC0xID8gbm9y
bStlZmZlY3RpdmVfbG93YmFuZCA6IE5VTEwsIExNLAotICAgICAgICAgICAgICAgICAgICAgICAg
bGFzdD9OVUxMOm5vcm0rTSplQmFuZHNbaV0tbm9ybV9vZmZzZXQsIGxvd2JhbmRfc2NyYXRjaCwg
eF9jbXx5X2NtKTsKKyAgICAgICAgICAgIGlmICh0aGV0YV9yZG8gJiYgaSA8IGludGVuc2l0eSkK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIGVjX2N0eCBlY19zYXZlLCBlY19zYXZlMjsK
KyAgICAgICAgICAgICAgIHN0cnVjdCBiYW5kX2N0eCBjdHhfc2F2ZSwgY3R4X3NhdmUyOworICAg
ICAgICAgICAgICAgb3B1c192YWwzMiBkaXN0MCwgZGlzdDE7CisgICAgICAgICAgICAgICB1bnNp
Z25lZCBjbSwgY20yOworICAgICAgICAgICAgICAgaW50IG5zdGFydF9ieXRlcywgbmVuZF9ieXRl
cywgc2F2ZV9ieXRlczsKKyAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKmJ5dGVzX2J1ZjsK
KyAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgYnl0ZXNfc2F2ZVsxMjc1XTsKKyAgICAgICAg
ICAgICAgIG9wdXNfdmFsMTYgd1syXTsKKyAgICAgICAgICAgICAgIGNvbXB1dGVfY2hhbm5lbF93
ZWlnaHRzKGJhbmRFW2ldLCBiYW5kRVtpK20tPm5iRUJhbmRzXSwgdyk7CisgICAgICAgICAgICAg
ICAvKiBNYWtlIGEgY29weS4gKi8KKyAgICAgICAgICAgICAgIGNtID0geF9jbXx5X2NtOworICAg
ICAgICAgICAgICAgZWNfc2F2ZSA9ICplYzsKKyAgICAgICAgICAgICAgIGN0eF9zYXZlID0gY3R4
OworICAgICAgICAgICAgICAgT1BVU19DT1BZKFhfc2F2ZSwgWCwgTik7CisgICAgICAgICAgICAg
ICBPUFVTX0NPUFkoWV9zYXZlLCBZLCBOKTsKKyAgICAgICAgICAgICAgIC8qIEVuY29kZSBhbmQg
cm91bmQgZG93bi4gKi8KKyAgICAgICAgICAgICAgIGN0eC50aGV0YV9yb3VuZCA9IC0xOworICAg
ICAgICAgICAgICAgeF9jbSA9IHF1YW50X2JhbmRfc3RlcmVvKCZjdHgsIFgsIFksIE4sIGIsIEIs
CisgICAgICAgICAgICAgICAgICAgICBlZmZlY3RpdmVfbG93YmFuZCAhPSAtMSA/IG5vcm0rZWZm
ZWN0aXZlX2xvd2JhbmQgOiBOVUxMLCBMTSwKKyAgICAgICAgICAgICAgICAgICAgIGxhc3Q/TlVM
TDpub3JtK00qZUJhbmRzW2ldLW5vcm1fb2Zmc2V0LCBsb3diYW5kX3NjcmF0Y2gsIGNtKTsKKyAg
ICAgICAgICAgICAgIGRpc3QwID0gTVVMVDE2XzMyX1ExNSh3WzBdLCBjZWx0X2lubmVyX3Byb2Qo
WF9zYXZlLCBYLCBOLCBhcmNoKSkgKyBNVUxUMTZfMzJfUTE1KHdbMV0sIGNlbHRfaW5uZXJfcHJv
ZChZX3NhdmUsIFksIE4sIGFyY2gpKTsKKworICAgICAgICAgICAgICAgLyogU2F2ZSBmaXJzdCBy
ZXN1bHQuICovCisgICAgICAgICAgICAgICBjbTIgPSB4X2NtOworICAgICAgICAgICAgICAgZWNf
c2F2ZTIgPSAqZWM7CisgICAgICAgICAgICAgICBjdHhfc2F2ZTIgPSBjdHg7CisgICAgICAgICAg
ICAgICBPUFVTX0NPUFkoWF9zYXZlMiwgWCwgTik7CisgICAgICAgICAgICAgICBPUFVTX0NPUFko
WV9zYXZlMiwgWSwgTik7CisgICAgICAgICAgICAgICBpZiAoIWxhc3QpCisgICAgICAgICAgICAg
ICAgICBPUFVTX0NPUFkobm9ybV9zYXZlMiwgbm9ybStNKmVCYW5kc1tpXS1ub3JtX29mZnNldCwg
Tik7CisgICAgICAgICAgICAgICBuc3RhcnRfYnl0ZXMgPSBlY19zYXZlLm9mZnM7CisgICAgICAg
ICAgICAgICBuZW5kX2J5dGVzID0gZWNfc2F2ZS5zdG9yYWdlOworICAgICAgICAgICAgICAgYnl0
ZXNfYnVmID0gZWNfc2F2ZS5idWYrbnN0YXJ0X2J5dGVzOworICAgICAgICAgICAgICAgc2F2ZV9i
eXRlcyA9IG5lbmRfYnl0ZXMtbnN0YXJ0X2J5dGVzOworICAgICAgICAgICAgICAgT1BVU19DT1BZ
KGJ5dGVzX3NhdmUsIGJ5dGVzX2J1Ziwgc2F2ZV9ieXRlcyk7CisKKyAgICAgICAgICAgICAgIC8q
IFJlc3RvcmUgKi8KKyAgICAgICAgICAgICAgICplYyA9IGVjX3NhdmU7CisgICAgICAgICAgICAg
ICBjdHggPSBjdHhfc2F2ZTsKKyAgICAgICAgICAgICAgIE9QVVNfQ09QWShYLCBYX3NhdmUsIE4p
OworICAgICAgICAgICAgICAgT1BVU19DT1BZKFksIFlfc2F2ZSwgTik7CisgICAgICAgICAgICAg
ICBpZiAoaSA9PSBzdGFydCsxKQorICAgICAgICAgICAgICAgICAgc3BlY2lhbF9oeWJyaWRfZm9s
ZGluZyhtLCBub3JtLCBub3JtMiwgc3RhcnQsIE0sIGR1YWxfc3RlcmVvKTsKKyAgICAgICAgICAg
ICAgIC8qIEVuY29kZSBhbmQgcm91bmQgdXAuICovCisgICAgICAgICAgICAgICBjdHgudGhldGFf
cm91bmQgPSAxOworICAgICAgICAgICAgICAgeF9jbSA9IHF1YW50X2JhbmRfc3RlcmVvKCZjdHgs
IFgsIFksIE4sIGIsIEIsCisgICAgICAgICAgICAgICAgICAgICBlZmZlY3RpdmVfbG93YmFuZCAh
PSAtMSA/IG5vcm0rZWZmZWN0aXZlX2xvd2JhbmQgOiBOVUxMLCBMTSwKKyAgICAgICAgICAgICAg
ICAgICAgIGxhc3Q/TlVMTDpub3JtK00qZUJhbmRzW2ldLW5vcm1fb2Zmc2V0LCBsb3diYW5kX3Nj
cmF0Y2gsIGNtKTsKKyAgICAgICAgICAgICAgIGRpc3QxID0gTVVMVDE2XzMyX1ExNSh3WzBdLCBj
ZWx0X2lubmVyX3Byb2QoWF9zYXZlLCBYLCBOLCBhcmNoKSkgKyBNVUxUMTZfMzJfUTE1KHdbMV0s
IGNlbHRfaW5uZXJfcHJvZChZX3NhdmUsIFksIE4sIGFyY2gpKTsKKyAgICAgICAgICAgICAgIGlm
IChkaXN0MCA+PSBkaXN0MSkgeworICAgICAgICAgICAgICAgICAgeF9jbSA9IGNtMjsKKyAgICAg
ICAgICAgICAgICAgICplYyA9IGVjX3NhdmUyOworICAgICAgICAgICAgICAgICAgY3R4ID0gY3R4
X3NhdmUyOworICAgICAgICAgICAgICAgICAgT1BVU19DT1BZKFgsIFhfc2F2ZTIsIE4pOworICAg
ICAgICAgICAgICAgICAgT1BVU19DT1BZKFksIFlfc2F2ZTIsIE4pOworICAgICAgICAgICAgICAg
ICAgaWYgKCFsYXN0KQorICAgICAgICAgICAgICAgICAgICAgT1BVU19DT1BZKG5vcm0rTSplQmFu
ZHNbaV0tbm9ybV9vZmZzZXQsIG5vcm1fc2F2ZTIsIE4pOworICAgICAgICAgICAgICAgICAgT1BV
U19DT1BZKGJ5dGVzX2J1ZiwgYnl0ZXNfc2F2ZSwgc2F2ZV9ieXRlcyk7CisgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgY3R4LnRoZXRhX3JvdW5k
ID0gMDsKKyAgICAgICAgICAgICAgIHhfY20gPSBxdWFudF9iYW5kX3N0ZXJlbygmY3R4LCBYLCBZ
LCBOLCBiLCBCLAorICAgICAgICAgICAgICAgICAgICAgZWZmZWN0aXZlX2xvd2JhbmQgIT0gLTEg
PyBub3JtK2VmZmVjdGl2ZV9sb3diYW5kIDogTlVMTCwgTE0sCisgICAgICAgICAgICAgICAgICAg
ICBsYXN0P05VTEw6bm9ybStNKmVCYW5kc1tpXS1ub3JtX29mZnNldCwgbG93YmFuZF9zY3JhdGNo
LCB4X2NtfHlfY20pOworICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAg
ICAgIHhfY20gPSBxdWFudF9iYW5kKCZjdHgsIFgsIE4sIGIsIEIsCiAgICAgICAgICAgICAgICAg
ICBlZmZlY3RpdmVfbG93YmFuZCAhPSAtMSA/IG5vcm0rZWZmZWN0aXZlX2xvd2JhbmQgOiBOVUxM
LCBMTSwKLSAgICAgICAgICAgICAgICAgICAgICAgIGxhc3Q/TlVMTDpub3JtK00qZUJhbmRzW2ld
LW5vcm1fb2Zmc2V0LCBRMTVPTkUsIGxvd2JhbmRfc2NyYXRjaCwgeF9jbXx5X2NtKTsKKyAgICAg
ICAgICAgICAgICAgIGxhc3Q/TlVMTDpub3JtK00qZUJhbmRzW2ldLW5vcm1fb2Zmc2V0LCBRMTVP
TkUsIGxvd2JhbmRfc2NyYXRjaCwgeF9jbXx5X2NtKTsKICAgICAgICAgIH0KICAgICAgICAgIHlf
Y20gPSB4X2NtOwogICAgICAgfQpAQCAtMTUyMSw2ICsxNjU4LDkgQEAgdm9pZCBxdWFudF9hbGxf
YmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwK
IAogICAgICAgLyogVXBkYXRlIHRoZSBmb2xkaW5nIHBvc2l0aW9uIG9ubHkgYXMgbG9uZyBhcyB3
ZSBoYXZlIDEgYml0L3NhbXBsZSBkZXB0aC4gKi8KICAgICAgIHVwZGF0ZV9sb3diYW5kID0gYj4o
Tjw8QklUUkVTKTsKKyAgICAgIC8qIFdlIG9ubHkgbmVlZCB0byBhdm9pZCBub2lzZSBvbiBhIHNw
bGl0IGZvciB0aGUgZmlyc3QgYmFuZC4gQWZ0ZXIgdGhhdCwgd2UKKyAgICAgICAgIGhhdmUgZm9s
ZGluZy4gKi8KKyAgICAgIGN0eC5hdm9pZF9zcGxpdF9ub2lzZSA9IDA7CiAgICB9CiAgICAqc2Vl
ZCA9IGN0eC5zZWVkOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYmFuZHMuaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9iYW5kcy5oCmlu
ZGV4IGU4YmVmNGJhZDBlMGIyNTRkOTEwNjJjMzZiN2FhZTI1ZDMxZGM3OGEuLjI0ODhjMTg1MjEz
MGQ2NWMxZTc2MGJmNTdlZTg1ZjY1ZWMxYmIzYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9iYW5kcy5oCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9iYW5kcy5oCkBAIC0zNiwxMiArMzYsMTUgQEAKICNpbmNsdWRlICJlbnRkZWMuaCIK
ICNpbmNsdWRlICJyYXRlLmgiCiAKK29wdXNfaW50MTYgYml0ZXhhY3RfY29zKG9wdXNfaW50MTYg
eCk7CitpbnQgYml0ZXhhY3RfbG9nMnRhbihpbnQgaXNpbixpbnQgaWNvcyk7CisKIC8qKiBDb21w
dXRlIHRoZSBhbXBsaXR1ZGUgKHNxcnQgZW5lcmd5KSBpbiBlYWNoIG9mIHRoZSBiYW5kcwogICog
QHBhcmFtIG0gTW9kZSBkYXRhCiAgKiBAcGFyYW0gWCBTcGVjdHJ1bQogICogQHBhcmFtIGJhbmRF
IFNxdWFyZSByb290IG9mIHRoZSBlbmVyZ3kgZm9yIGVhY2ggYmFuZCAocmV0dXJuZWQpCiAgKi8K
LXZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNvbnN0IENFTFRNb2RlICptLCBjb25zdCBjZWx0
X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kRSwgaW50IGVuZCwgaW50IEMsIGludCBMTSk7Cit2b2lk
IGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhjb25zdCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9zaWcg
KlgsIGNlbHRfZW5lciAqYmFuZEUsIGludCBlbmQsIGludCBDLCBpbnQgTE0sIGludCBhcmNoKTsK
IAogLyp2b2lkIGNvbXB1dGVfbm9pc2VfZW5lcmdpZXMoY29uc3QgQ0VMVE1vZGUgKm0sIGNvbnN0
IGNlbHRfc2lnICpYLCBjb25zdCBvcHVzX3ZhbDE2ICp0b25hbGl0eSwgY2VsdF9lbmVyICpiYW5k
RSk7Ki8KIApAQCAtMTA1LDcgKzEwOCw3IEBAIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNv
ZGUsIGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQsCiAgICAgICBjb25zdCBj
ZWx0X2VuZXIgKmJhbmRFLCBpbnQgKnB1bHNlcywgaW50IHNob3J0QmxvY2tzLCBpbnQgc3ByZWFk
LAogICAgICAgaW50IGR1YWxfc3RlcmVvLCBpbnQgaW50ZW5zaXR5LCBpbnQgKnRmX3Jlcywgb3B1
c19pbnQzMiB0b3RhbF9iaXRzLAogICAgICAgb3B1c19pbnQzMiBiYWxhbmNlLCBlY19jdHggKmVj
LCBpbnQgTSwgaW50IGNvZGVkQmFuZHMsIG9wdXNfdWludDMyICpzZWVkLAotICAgICAgaW50IGFy
Y2gpOworICAgICAgaW50IGNvbXBsZXhpdHksIGludCBhcmNoLCBpbnQgZGlzYWJsZV9pbnYpOwog
CiB2b2lkIGFudGlfY29sbGFwc2UoY29uc3QgQ0VMVE1vZGUgKm0sIGNlbHRfbm9ybSAqWF8sCiAg
ICAgICB1bnNpZ25lZCBjaGFyICpjb2xsYXBzZV9tYXNrcywgaW50IExNLCBpbnQgQywgaW50IHNp
emUsIGludCBzdGFydCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdC5jCmluZGV4
IGIxMjFjNTFhMWZhYTY0ODYwNzE5NTBlZTRhNDU5NWVkYTA1ZThiYzkuLjljZTIzNDY5NWNlMGQz
MTQyNzkwMjI4NjFkZjE1Y2FiYTUxOTBkODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0LmMKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L2NlbHQuYwpAQCAtMTExLDI2ICsxMTEsMzEgQEAgdm9pZCBjb21iX2ZpbHRlcl9jb25zdF9j
KG9wdXNfdmFsMzIgKnksIG9wdXNfdmFsMzIgKngsIGludCBULCBpbnQgTiwKICAgICAgIHQgPSBN
QUMxNl8zMl9RMTYoeFtpXSwgZzEwLCB4Mik7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcx
MSwgQUREMzIoeDEseDMpKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYodCwgZzEyLCBBREQzMih4
MCx4NCkpOworICAgICAgdCA9IFNBVFVSQVRFKHQsIFNJR19TQVQpOwogICAgICAgeVtpXSA9IHQ7
CiAgICAgICB4ND1TSEwzMih4W2ktVCszXSwxKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYoeFtp
KzFdLCBnMTAsIHgxKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYodCwgZzExLCBBREQzMih4MCx4
MikpOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTIsIEFERDMyKHg0LHgzKSk7CisgICAg
ICB0ID0gU0FUVVJBVEUodCwgU0lHX1NBVCk7CiAgICAgICB5W2krMV0gPSB0OwogICAgICAgeDM9
U0hMMzIoeFtpLVQrNF0sMSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHhbaSsyXSwgZzEwLCB4
MCk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcxMSwgQUREMzIoeDQseDEpKTsKICAgICAg
IHQgPSBNQUMxNl8zMl9RMTYodCwgZzEyLCBBREQzMih4Myx4MikpOworICAgICAgdCA9IFNBVFVS
QVRFKHQsIFNJR19TQVQpOwogICAgICAgeVtpKzJdID0gdDsKICAgICAgIHgyPVNITDMyKHhbaS1U
KzVdLDEpOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih4W2krM10sIGcxMCwgeDQpOwogICAgICAg
dCA9IE1BQzE2XzMyX1ExNih0LCBnMTEsIEFERDMyKHgzLHgwKSk7CiAgICAgICB0ID0gTUFDMTZf
MzJfUTE2KHQsIGcxMiwgQUREMzIoeDIseDEpKTsKKyAgICAgIHQgPSBTQVRVUkFURSh0LCBTSUdf
U0FUKTsKICAgICAgIHlbaSszXSA9IHQ7CiAgICAgICB4MT1TSEwzMih4W2ktVCs2XSwxKTsKICAg
ICAgIHQgPSBNQUMxNl8zMl9RMTYoeFtpKzRdLCBnMTAsIHgzKTsKICAgICAgIHQgPSBNQUMxNl8z
Ml9RMTYodCwgZzExLCBBREQzMih4Mix4NCkpOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBn
MTIsIEFERDMyKHgxLHgwKSk7CisgICAgICB0ID0gU0FUVVJBVEUodCwgU0lHX1NBVCk7CiAgICAg
ICB5W2krNF0gPSB0OwogICAgfQogI2lmZGVmIENVU1RPTV9NT0RFUwpAQCAtMTQxLDYgKzE0Niw3
IEBAIHZvaWQgY29tYl9maWx0ZXJfY29uc3RfYyhvcHVzX3ZhbDMyICp5LCBvcHVzX3ZhbDMyICp4
LCBpbnQgVCwgaW50IE4sCiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHhbaV0sIGcxMCwgeDIpOwog
ICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTEsIEFERDMyKHgxLHgzKSk7CiAgICAgICB0ID0g
TUFDMTZfMzJfUTE2KHQsIGcxMiwgQUREMzIoeDAseDQpKTsKKyAgICAgIHQgPSBTQVRVUkFURSh0
LCBTSUdfU0FUKTsKICAgICAgIHlbaV0gPSB0OwogICAgICAgeDQ9eDM7CiAgICAgICB4Mz14MjsK
QEAgLTE2OSw2ICsxNzUsNyBAQCB2b2lkIGNvbWJfZmlsdGVyX2NvbnN0X2Mob3B1c192YWwzMiAq
eSwgb3B1c192YWwzMiAqeCwgaW50IFQsIGludCBOLAogICAgICAgICAgICAgICAgKyBNVUxUMTZf
MzJfUTE1KGcxMCx4MikKICAgICAgICAgICAgICAgICsgTVVMVDE2XzMyX1ExNShnMTEsQUREMzIo
eDEseDMpKQogICAgICAgICAgICAgICAgKyBNVUxUMTZfMzJfUTE1KGcxMixBREQzMih4MCx4NCkp
OworICAgICAgeVtpXSA9IFNBVFVSQVRFKHlbaV0sIFNJR19TQVQpOwogICAgICAgeDQ9eDM7CiAg
ICAgICB4Mz14MjsKICAgICAgIHgyPXgxOwpAQCAtMjAwLDYgKzIwNywxMCBAQCB2b2lkIGNvbWJf
ZmlsdGVyKG9wdXNfdmFsMzIgKnksIG9wdXNfdmFsMzIgKngsIGludCBUMCwgaW50IFQxLCBpbnQg
TiwKICAgICAgICAgIE9QVVNfTU9WRSh5LCB4LCBOKTsKICAgICAgIHJldHVybjsKICAgIH0KKyAg
IC8qIFdoZW4gdGhlIGdhaW4gaXMgemVybywgVDAgYW5kL29yIFQxIGlzIHNldCB0byB6ZXJvLiBX
ZSBuZWVkCisgICAgICB0byBoYXZlIHRoZW4gYmUgYXQgbGVhc3QgMiB0byBhdm9pZCBwcm9jZXNz
aW5nIGdhcmJhZ2UgZGF0YS4gKi8KKyAgIFQwID0gSU1BWChUMCwgQ09NQkZJTFRFUl9NSU5QRVJJ
T0QpOworICAgVDEgPSBJTUFYKFQxLCBDT01CRklMVEVSX01JTlBFUklPRCk7CiAgICBnMDAgPSBN
VUxUMTZfMTZfUDE1KGcwLCBnYWluc1t0YXBzZXQwXVswXSk7CiAgICBnMDEgPSBNVUxUMTZfMTZf
UDE1KGcwLCBnYWluc1t0YXBzZXQwXVsxXSk7CiAgICBnMDIgPSBNVUxUMTZfMTZfUDE1KGcwLCBn
YWluc1t0YXBzZXQwXVsyXSk7CkBAIC0yMjUsNiArMjM2LDcgQEAgdm9pZCBjb21iX2ZpbHRlcihv
cHVzX3ZhbDMyICp5LCBvcHVzX3ZhbDMyICp4LCBpbnQgVDAsIGludCBUMSwgaW50IE4sCiAgICAg
ICAgICAgICAgICArIE1VTFQxNl8zMl9RMTUoTVVMVDE2XzE2X1ExNShmLGcxMCkseDIpCiAgICAg
ICAgICAgICAgICArIE1VTFQxNl8zMl9RMTUoTVVMVDE2XzE2X1ExNShmLGcxMSksQUREMzIoeDEs
eDMpKQogICAgICAgICAgICAgICAgKyBNVUxUMTZfMzJfUTE1KE1VTFQxNl8xNl9RMTUoZixnMTIp
LEFERDMyKHgwLHg0KSk7CisgICAgICB5W2ldID0gU0FUVVJBVEUoeVtpXSwgU0lHX1NBVCk7CiAg
ICAgICB4ND14MzsKICAgICAgIHgzPXgyOwogICAgICAgeDI9eDE7CkBAIC0yNDQsMTEgKzI1Niwx
NiBAQCB2b2lkIGNvbWJfZmlsdGVyKG9wdXNfdmFsMzIgKnksIG9wdXNfdmFsMzIgKngsIGludCBU
MCwgaW50IFQxLCBpbnQgTiwKIH0KICNlbmRpZiAvKiBPVkVSUklERV9jb21iX2ZpbHRlciAqLwog
CisvKiBURiBjaGFuZ2UgdGFibGUuIFBvc2l0aXZlIHZhbHVlcyBtZWFuIGJldHRlciBmcmVxdWVu
Y3kgcmVzb2x1dGlvbiAobG9uZ2VyCisgICBlZmZlY3RpdmUgd2luZG93KSwgd2hlcmVhcyBuZWdh
dGl2ZSB2YWx1ZXMgbWVhbiBiZXR0ZXIgdGltZSByZXNvbHV0aW9uCisgICAoc2hvcnRlciBlZmZl
Y3RpdmUgd2luZG93KS4gVGhlIHNlY29uZCBpbmRleCBpcyBjb21wdXRlZCBhczoKKyAgIDQqaXNU
cmFuc2llbnQgKyAyKnRmX3NlbGVjdCArIHBlcl9iYW5kX2ZsYWcgKi8KIGNvbnN0IHNpZ25lZCBj
aGFyIHRmX3NlbGVjdF90YWJsZVs0XVs4XSA9IHsKLSAgICAgIHswLCAtMSwgMCwgLTEsICAgIDAs
LTEsIDAsLTF9LAotICAgICAgezAsIC0xLCAwLCAtMiwgICAgMSwgMCwgMSwtMX0sCi0gICAgICB7
MCwgLTIsIDAsIC0zLCAgICAyLCAwLCAxLC0xfSwKLSAgICAgIHswLCAtMiwgMCwgLTMsICAgIDMs
IDAsIDEsLTF9LAorICAgIC8qaXNUcmFuc2llbnQ9MCAgICAgaXNUcmFuc2llbnQ9MSAqLworICAg
ICAgezAsIC0xLCAwLCAtMSwgICAgMCwtMSwgMCwtMX0sIC8qIDIuNSBtcyAqLworICAgICAgezAs
IC0xLCAwLCAtMiwgICAgMSwgMCwgMSwtMX0sIC8qIDUgbXMgKi8KKyAgICAgIHswLCAtMiwgMCwg
LTMsICAgIDIsIDAsIDEsLTF9LCAvKiAxMCBtcyAqLworICAgICAgezAsIC0yLCAwLCAtMywgICAg
MywgMCwgMSwtMX0sIC8qIDIwIG1zICovCiB9OwogCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0Lmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvY2VsdC5oCmluZGV4IGQxZjdlYjY5MGRiM2Y2NDEwNDdiMzFiYWM3YzQxMzI4Y2ZiYTMw
NTguLjcwMTc1MzAxMDBhM2Q5MDQ1NmI3NjZhNTU4NDQ1ZGI5YWU0MzA4NmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9jZWx0LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHQuaApAQCAtNTAsNiArNTAsOCBAQCBleHRlcm4gIkMi
IHsKICNkZWZpbmUgQ0VMVERlY29kZXIgT3B1c0N1c3RvbURlY29kZXIKICNkZWZpbmUgQ0VMVE1v
ZGUgT3B1c0N1c3RvbU1vZGUKIAorI2RlZmluZSBMRUFLX0JBTkRTIDE5CisKIHR5cGVkZWYgc3Ry
dWN0IHsKICAgIGludCB2YWxpZDsKICAgIGZsb2F0IHRvbmFsaXR5OwpAQCAtNTcsMTcgKzU5LDI1
IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgIGZsb2F0IG5vaXNpbmVzczsKICAgIGZsb2F0IGFjdGl2
aXR5OwogICAgZmxvYXQgbXVzaWNfcHJvYjsKLSAgIGludCAgICAgICAgYmFuZHdpZHRoOwotfUFu
YWx5c2lzSW5mbzsKKyAgIGZsb2F0IHZhZF9wcm9iOworICAgaW50ICAgYmFuZHdpZHRoOworICAg
ZmxvYXQgYWN0aXZpdHlfcHJvYmFiaWxpdHk7CisgICAvKiBTdG9yZSBhcyBRNiBjaGFyIHRvIHNh
dmUgc3BhY2UuICovCisgICB1bnNpZ25lZCBjaGFyIGxlYWtfYm9vc3RbTEVBS19CQU5EU107Cit9
IEFuYWx5c2lzSW5mbzsKKwordHlwZWRlZiBzdHJ1Y3QgeworICAgaW50IHNpZ25hbFR5cGU7Cisg
ICBpbnQgb2Zmc2V0OworfSBTSUxLSW5mbzsKIAogI2RlZmluZSBfX2NlbHRfY2hlY2tfbW9kZV9w
dHJfcHRyKHB0cikgKChwdHIpICsgKChwdHIpIC0gKGNvbnN0IENFTFRNb2RlKiopKHB0cikpKQog
CiAjZGVmaW5lIF9fY2VsdF9jaGVja19hbmFseXNpc19wdHIocHRyKSAoKHB0cikgKyAoKHB0cikg
LSAoY29uc3QgQW5hbHlzaXNJbmZvKikocHRyKSkpCiAKLS8qIEVuY29kZXIvZGVjb2RlciBSZXF1
ZXN0cyAqLworI2RlZmluZSBfX2NlbHRfY2hlY2tfc2lsa2luZm9fcHRyKHB0cikgKChwdHIpICsg
KChwdHIpIC0gKGNvbnN0IFNJTEtJbmZvKikocHRyKSkpCiAKLS8qIEV4cG9zZSB0aGlzIG9wdGlv
biBhZ2FpbiB3aGVuIHZhcmlhYmxlIGZyYW1lc2l6ZSBhY3R1YWxseSB3b3JrcyAqLwotI2RlZmlu
ZSBPUFVTX0ZSQU1FU0laRV9WQVJJQUJMRSAgICAgICAgICAgICAgNTAxMCAvKio8IE9wdGltaXpl
IHRoZSBmcmFtZSBzaXplIGR5bmFtaWNhbGx5ICovCisvKiBFbmNvZGVyL2RlY29kZXIgUmVxdWVz
dHMgKi8KIAogCiAjZGVmaW5lIENFTFRfU0VUX1BSRURJQ1RJT05fUkVRVUVTVCAgICAxMDAwMgpA
QCAtMTE2LDYgKzEyNiw5IEBAIHR5cGVkZWYgc3RydWN0IHsKICNkZWZpbmUgT1BVU19TRVRfRU5F
UkdZX01BU0tfUkVRVUVTVCAgICAxMDAyNgogI2RlZmluZSBPUFVTX1NFVF9FTkVSR1lfTUFTSyh4
KSBPUFVTX1NFVF9FTkVSR1lfTUFTS19SRVFVRVNULCBfX29wdXNfY2hlY2tfdmFsMTZfcHRyKHgp
CiAKKyNkZWZpbmUgQ0VMVF9TRVRfU0lMS19JTkZPX1JFUVVFU1QgICAgMTAwMjgKKyNkZWZpbmUg
Q0VMVF9TRVRfU0lMS19JTkZPKHgpIENFTFRfU0VUX1NJTEtfSU5GT19SRVFVRVNULCBfX2NlbHRf
Y2hlY2tfc2lsa2luZm9fcHRyKHgpCisKIC8qIEVuY29kZXIgc3R1ZmYgKi8KIAogaW50IGNlbHRf
ZW5jb2Rlcl9nZXRfc2l6ZShpbnQgY2hhbm5lbHMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfZGVj
b2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L2NlbHRfZGVjb2Rlci5jCmluZGV4IGI5NzhiYjM0ZDFiNzAxNTgxNzYzN2Nk
MDE3MjQyNWFhOGZhYmI2MGIuLjU2N2Q3NDU2NDliOThhZDljNjYxZmJmNTNmNzNkMGE3ZGEwYTc4
YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2RlY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9kZWNvZGVy
LmMKQEAgLTczLDYgKzczLDcgQEAgc3RydWN0IE9wdXNDdXN0b21EZWNvZGVyIHsKICAgIGludCBk
b3duc2FtcGxlOwogICAgaW50IHN0YXJ0LCBlbmQ7CiAgICBpbnQgc2lnbmFsbGluZzsKKyAgIGlu
dCBkaXNhYmxlX2ludjsKICAgIGludCBhcmNoOwogCiAgICAvKiBFdmVyeXRoaW5nIGJleW9uZCB0
aGlzIHBvaW50IGdldHMgY2xlYXJlZCBvbiBhIHJlc2V0ICovCkBAIC0xNjMsNiArMTY0LDExIEBA
IE9QVVNfQ1VTVE9NX05PU1RBVElDIGludCBvcHVzX2N1c3RvbV9kZWNvZGVyX2luaXQoQ0VMVERl
Y29kZXIgKnN0LCBjb25zdCBDRUxUTW9kCiAgICBzdC0+c3RhcnQgPSAwOwogICAgc3QtPmVuZCA9
IHN0LT5tb2RlLT5lZmZFQmFuZHM7CiAgICBzdC0+c2lnbmFsbGluZyA9IDE7CisjaWZkZWYgRU5B
QkxFX1VQREFURV9EUkFGVAorICAgc3QtPmRpc2FibGVfaW52ID0gY2hhbm5lbHMgPT0gMTsKKyNl
bHNlCisgICBzdC0+ZGlzYWJsZV9pbnYgPSAwOworI2VuZGlmCiAgICBzdC0+YXJjaCA9IG9wdXNf
c2VsZWN0X2FyY2goKTsKIAogICAgb3B1c19jdXN0b21fZGVjb2Rlcl9jdGwoc3QsIE9QVVNfUkVT
RVRfU1RBVEUpOwpAQCAtMTc3LDYgKzE4MywzNiBAQCB2b2lkIG9wdXNfY3VzdG9tX2RlY29kZXJf
ZGVzdHJveShDRUxURGVjb2RlciAqc3QpCiB9CiAjZW5kaWYgLyogQ1VTVE9NX01PREVTICovCiAK
KyNpZm5kZWYgQ1VTVE9NX01PREVTCisvKiBTcGVjaWFsIGNhc2UgZm9yIHN0ZXJlbyB3aXRoIG5v
IGRvd25zYW1wbGluZyBhbmQgbm8gYWNjdW11bGF0aW9uLiBUaGlzIGlzCisgICBxdWl0ZSBjb21t
b24gYW5kIHdlIGNhbiBtYWtlIGl0IGZhc3RlciBieSBwcm9jZXNzaW5nIGJvdGggY2hhbm5lbHMg
aW4gdGhlCisgICBzYW1lIGxvb3AsIHJlZHVjaW5nIG92ZXJoZWFkIGR1ZSB0byB0aGUgZGVwZW5k
ZW5jeSBsb29wIGluIHRoZSBJSVIgZmlsdGVyLiAqLworc3RhdGljIHZvaWQgZGVlbXBoYXNpc19z
dGVyZW9fc2ltcGxlKGNlbHRfc2lnICppbltdLCBvcHVzX3ZhbDE2ICpwY20sIGludCBOLCBjb25z
dCBvcHVzX3ZhbDE2IGNvZWYwLAorICAgICAgY2VsdF9zaWcgKm1lbSkKK3sKKyAgIGNlbHRfc2ln
ICogT1BVU19SRVNUUklDVCB4MDsKKyAgIGNlbHRfc2lnICogT1BVU19SRVNUUklDVCB4MTsKKyAg
IGNlbHRfc2lnIG0wLCBtMTsKKyAgIGludCBqOworICAgeDA9aW5bMF07CisgICB4MT1pblsxXTsK
KyAgIG0wID0gbWVtWzBdOworICAgbTEgPSBtZW1bMV07CisgICBmb3IgKGo9MDtqPE47aisrKQor
ICAgeworICAgICAgY2VsdF9zaWcgdG1wMCwgdG1wMTsKKyAgICAgIC8qIEFkZCBWRVJZX1NNQUxM
IHRvIHhbXSBmaXJzdCB0byByZWR1Y2UgZGVwZW5kZW5jeSBjaGFpbi4gKi8KKyAgICAgIHRtcDAg
PSB4MFtqXSArIFZFUllfU01BTEwgKyBtMDsKKyAgICAgIHRtcDEgPSB4MVtqXSArIFZFUllfU01B
TEwgKyBtMTsKKyAgICAgIG0wID0gTVVMVDE2XzMyX1ExNShjb2VmMCwgdG1wMCk7CisgICAgICBt
MSA9IE1VTFQxNl8zMl9RMTUoY29lZjAsIHRtcDEpOworICAgICAgcGNtWzIqaiAgXSA9IFNDQUxF
T1VUKFNJRzJXT1JEMTYodG1wMCkpOworICAgICAgcGNtWzIqaisxXSA9IFNDQUxFT1VUKFNJRzJX
T1JEMTYodG1wMSkpOworICAgfQorICAgbWVtWzBdID0gbTA7CisgICBtZW1bMV0gPSBtMTsKK30K
KyNlbmRpZgogCiAjaWZuZGVmIFJFU1lOVEgKIHN0YXRpYwpAQCAtMTkwLDYgKzIyNiwxNCBAQCB2
b2lkIGRlZW1waGFzaXMoY2VsdF9zaWcgKmluW10sIG9wdXNfdmFsMTYgKnBjbSwgaW50IE4sIGlu
dCBDLCBpbnQgZG93bnNhbXBsZSwgYwogICAgb3B1c192YWwxNiBjb2VmMDsKICAgIFZBUkRFQ0wo
Y2VsdF9zaWcsIHNjcmF0Y2gpOwogICAgU0FWRV9TVEFDSzsKKyNpZm5kZWYgQ1VTVE9NX01PREVT
CisgICAvKiBTaG9ydCB2ZXJzaW9uIGZvciBjb21tb24gY2FzZS4gKi8KKyAgIGlmIChkb3duc2Ft
cGxlID09IDEgJiYgQyA9PSAyICYmICFhY2N1bSkKKyAgIHsKKyAgICAgIGRlZW1waGFzaXNfc3Rl
cmVvX3NpbXBsZShpbiwgcGNtLCBOLCBjb2VmWzBdLCBtZW0pOworICAgICAgcmV0dXJuOworICAg
fQorI2VuZGlmCiAjaWZuZGVmIEZJWEVEX1BPSU5UCiAgICAodm9pZClhY2N1bTsKICAgIGNlbHRf
YXNzZXJ0KGFjY3VtPT0wKTsKQEAgLTIyNSw3ICsyNjksNyBAQCB2b2lkIGRlZW1waGFzaXMoY2Vs
dF9zaWcgKmluW10sIG9wdXNfdmFsMTYgKnBjbSwgaW50IE4sIGludCBDLCBpbnQgZG93bnNhbXBs
ZSwgYwogICAgICAgICAgLyogU2hvcnRjdXQgZm9yIHRoZSBzdGFuZGFyZCAobm9uLWN1c3RvbSBt
b2RlcykgY2FzZSAqLwogICAgICAgICAgZm9yIChqPTA7ajxOO2orKykKICAgICAgICAgIHsKLSAg
ICAgICAgICAgIGNlbHRfc2lnIHRtcCA9IHhbal0gKyBtICsgVkVSWV9TTUFMTDsKKyAgICAgICAg
ICAgIGNlbHRfc2lnIHRtcCA9IHhbal0gKyBWRVJZX1NNQUxMICsgbTsKICAgICAgICAgICAgIG0g
PSBNVUxUMTZfMzJfUTE1KGNvZWYwLCB0bXApOwogICAgICAgICAgICAgc2NyYXRjaFtqXSA9IHRt
cDsKICAgICAgICAgIH0KQEAgLTI0Niw3ICsyOTAsNyBAQCB2b2lkIGRlZW1waGFzaXMoY2VsdF9z
aWcgKmluW10sIG9wdXNfdmFsMTYgKnBjbSwgaW50IE4sIGludCBDLCBpbnQgZG93bnNhbXBsZSwg
YwogICAgICAgICAgewogICAgICAgICAgICAgZm9yIChqPTA7ajxOO2orKykKICAgICAgICAgICAg
IHsKLSAgICAgICAgICAgICAgIGNlbHRfc2lnIHRtcCA9IHhbal0gKyBtICsgVkVSWV9TTUFMTDsK
KyAgICAgICAgICAgICAgIGNlbHRfc2lnIHRtcCA9IHhbal0gKyBWRVJZX1NNQUxMICsgbTsKICAg
ICAgICAgICAgICAgIG0gPSBNVUxUMTZfMzJfUTE1KGNvZWYwLCB0bXApOwogICAgICAgICAgICAg
ICAgeVtqKkNdID0gU0NBTEVPVVQoU0lHMldPUkQxNih0bXApKTsKICAgICAgICAgICAgIH0KQEAg
LTMzMyw3ICszNzcsNyBAQCB2b2lkIGNlbHRfc3ludGhlc2lzKGNvbnN0IENFTFRNb2RlICptb2Rl
LCBjZWx0X25vcm0gKlgsIGNlbHRfc2lnICogb3V0X3N5bltdLAogICAgICAgZGVub3JtYWxpc2Vf
YmFuZHMobW9kZSwgWCtOLCBmcmVxMiwgb2xkQmFuZEUrbmJFQmFuZHMsIHN0YXJ0LCBlZmZFbmQs
IE0sCiAgICAgICAgICAgICBkb3duc2FtcGxlLCBzaWxlbmNlKTsKICAgICAgIGZvciAoaT0wO2k8
TjtpKyspCi0gICAgICAgICBmcmVxW2ldID0gSEFMRjMyKEFERDMyKGZyZXFbaV0sZnJlcTJbaV0p
KTsKKyAgICAgICAgIGZyZXFbaV0gPSBBREQzMihIQUxGMzIoZnJlcVtpXSksIEhBTEYzMihmcmVx
MltpXSkpOwogICAgICAgZm9yIChiPTA7YjxCO2IrKykKICAgICAgICAgIGNsdF9tZGN0X2JhY2t3
YXJkKCZtb2RlLT5tZGN0LCAmZnJlcVtiXSwgb3V0X3N5blswXStOQipiLCBtb2RlLT53aW5kb3cs
IG92ZXJsYXAsIHNoaWZ0LCBCLCBhcmNoKTsKICAgIH0gZWxzZSB7CkBAIC0zNDUsNiArMzg5LDEy
IEBAIHZvaWQgY2VsdF9zeW50aGVzaXMoY29uc3QgQ0VMVE1vZGUgKm1vZGUsIGNlbHRfbm9ybSAq
WCwgY2VsdF9zaWcgKiBvdXRfc3luW10sCiAgICAgICAgICAgICBjbHRfbWRjdF9iYWNrd2FyZCgm
bW9kZS0+bWRjdCwgJmZyZXFbYl0sIG91dF9zeW5bY10rTkIqYiwgbW9kZS0+d2luZG93LCBvdmVy
bGFwLCBzaGlmdCwgQiwgYXJjaCk7CiAgICAgICB9IHdoaWxlICgrK2M8Q0MpOwogICAgfQorICAg
LyogU2F0dXJhdGUgSU1EQ1Qgb3V0cHV0IHNvIHRoYXQgd2UgY2FuJ3Qgb3ZlcmZsb3cgaW4gdGhl
IHBpdGNoIHBvc3RmaWx0ZXIKKyAgICAgIG9yIGluIHRoZSAqLworICAgYz0wOyBkbyB7CisgICAg
ICBmb3IgKGk9MDtpPE47aSsrKQorICAgICAgICAgb3V0X3N5bltjXVtpXSA9IFNBVFVSQVRFKG91
dF9zeW5bY11baV0sIFNJR19TQVQpOworICAgfSB3aGlsZSAoKytjPENDKTsKICAgIFJFU1RPUkVf
U1RBQ0s7CiB9CiAKQEAgLTUwNiwxMCArNTU2LDExIEBAIHN0YXRpYyB2b2lkIGNlbHRfZGVjb2Rl
X2xvc3QoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQgTiwgaW50IExNKQogICAg
fSBlbHNlIHsKICAgICAgIC8qIFBpdGNoLWJhc2VkIFBMQyAqLwogICAgICAgY29uc3Qgb3B1c192
YWwxNiAqd2luZG93OworICAgICAgb3B1c192YWwxNiAqZXhjOwogICAgICAgb3B1c192YWwxNiBm
YWRlID0gUTE1T05FOwogICAgICAgaW50IHBpdGNoX2luZGV4OwogICAgICAgVkFSREVDTChvcHVz
X3ZhbDMyLCBldG1wKTsKLSAgICAgIFZBUkRFQ0wob3B1c192YWwxNiwgZXhjKTsKKyAgICAgIFZB
UkRFQ0wob3B1c192YWwxNiwgX2V4Yyk7CiAKICAgICAgIGlmIChsb3NzX2NvdW50ID09IDApCiAg
ICAgICB7CkBAIC01MjAsNyArNTcxLDggQEAgc3RhdGljIHZvaWQgY2VsdF9kZWNvZGVfbG9zdChD
RUxURGVjb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCBOLCBpbnQgTE0pCiAgICAgICB9CiAK
ICAgICAgIEFMTE9DKGV0bXAsIG92ZXJsYXAsIG9wdXNfdmFsMzIpOwotICAgICAgQUxMT0MoZXhj
LCBNQVhfUEVSSU9ELCBvcHVzX3ZhbDE2KTsKKyAgICAgIEFMTE9DKF9leGMsIE1BWF9QRVJJT0Qr
TFBDX09SREVSLCBvcHVzX3ZhbDE2KTsKKyAgICAgIGV4YyA9IF9leGMrTFBDX09SREVSOwogICAg
ICAgd2luZG93ID0gbW9kZS0+d2luZG93OwogICAgICAgYz0wOyBkbyB7CiAgICAgICAgICBvcHVz
X3ZhbDE2IGRlY2F5OwpAQCAtNTYxLDYgKzYxMywyMyBAQCBzdGF0aWMgdm9pZCBjZWx0X2RlY29k
ZV9sb3N0KENFTFREZWNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgaW50IE4sIGludCBMTSkKICNl
bmRpZgogICAgICAgICAgICAgfQogICAgICAgICAgICAgX2NlbHRfbHBjKGxwYytjKkxQQ19PUkRF
UiwgYWMsIExQQ19PUkRFUik7CisjaWZkZWYgRklYRURfUE9JTlQKKyAgICAgICAgIC8qIEZvciBm
aXhlZC1wb2ludCwgYXBwbHkgYmFuZHdpZHRoIGV4cGFuc2lvbiB1bnRpbCB3ZSBjYW4gZ3VhcmFu
dGVlIHRoYXQKKyAgICAgICAgICAgIG5vIG92ZXJmbG93IGNhbiBoYXBwZW4gaW4gdGhlIElJUiBm
aWx0ZXIuIFRoaXMgbWVhbnM6CisgICAgICAgICAgICAzMjc2OCpzdW0oYWJzKGZpbHRlcikpIDwg
Ml4zMSAqLworICAgICAgICAgd2hpbGUgKDEpIHsKKyAgICAgICAgICAgIG9wdXNfdmFsMTYgdG1w
PVExNU9ORTsKKyAgICAgICAgICAgIG9wdXNfdmFsMzIgc3VtPVFDT05TVDE2KDEuLCBTSUdfU0hJ
RlQpOworICAgICAgICAgICAgZm9yIChpPTA7aTxMUENfT1JERVI7aSsrKQorICAgICAgICAgICAg
ICAgc3VtICs9IEFCUzE2KGxwY1tjKkxQQ19PUkRFUitpXSk7CisgICAgICAgICAgICBpZiAoc3Vt
IDwgNjU1MzUpIGJyZWFrOworICAgICAgICAgICAgZm9yIChpPTA7aTxMUENfT1JERVI7aSsrKQor
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgdG1wID0gTVVMVDE2XzE2X1ExNShRQ09OU1Qx
NiguOTlmLDE1KSwgdG1wKTsKKyAgICAgICAgICAgICAgIGxwY1tjKkxQQ19PUkRFUitpXSA9IE1V
TFQxNl8xNl9RMTUobHBjW2MqTFBDX09SREVSK2ldLCB0bXApOworICAgICAgICAgICAgfQorICAg
ICAgICAgfQorI2VuZGlmCiAgICAgICAgICB9CiAgICAgICAgICAvKiBXZSB3YW50IHRoZSBleGNp
dGF0aW9uIGZvciAyIHBpdGNoIHBlcmlvZHMgaW4gb3JkZXIgdG8gbG9vayBmb3IgYQogICAgICAg
ICAgICAgZGVjYXlpbmcgc2lnbmFsLCBidXQgd2UgY2FuJ3QgZ2V0IG1vcmUgdGhhbiBNQVhfUEVS
SU9ELiAqLwpAQCAtNTY4LDE1ICs2MzcsMTQgQEAgc3RhdGljIHZvaWQgY2VsdF9kZWNvZGVfbG9z
dChDRUxURGVjb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCBOLCBpbnQgTE0pCiAgICAgICAg
ICAvKiBJbml0aWFsaXplIHRoZSBMUEMgaGlzdG9yeSB3aXRoIHRoZSBzYW1wbGVzIGp1c3QgYmVm
b3JlIHRoZSBzdGFydAogICAgICAgICAgICAgb2YgdGhlIHJlZ2lvbiBmb3Igd2hpY2ggd2UncmUg
Y29tcHV0aW5nIHRoZSBleGNpdGF0aW9uLiAqLwogICAgICAgICAgewotICAgICAgICAgICAgb3B1
c192YWwxNiBscGNfbWVtW0xQQ19PUkRFUl07CiAgICAgICAgICAgICBmb3IgKGk9MDtpPExQQ19P
UkRFUjtpKyspCiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICBscGNfbWVtW2ldID0KLSAg
ICAgICAgICAgICAgICAgICAgIFJPVU5EMTYoYnVmW0RFQ09ERV9CVUZGRVJfU0laRS1leGNfbGVu
Z3RoLTEtaV0sIFNJR19TSElGVCk7CisgICAgICAgICAgICAgICBleGNbTUFYX1BFUklPRC1leGNf
bGVuZ3RoLUxQQ19PUkRFUitpXSA9CisgICAgICAgICAgICAgICAgICAgICBST1VORDE2KGJ1ZltE
RUNPREVfQlVGRkVSX1NJWkUtZXhjX2xlbmd0aC1MUENfT1JERVIraV0sIFNJR19TSElGVCk7CiAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICAvKiBDb21wdXRlIHRoZSBleGNpdGF0aW9uIGZvciBl
eGNfbGVuZ3RoIHNhbXBsZXMgYmVmb3JlIHRoZSBsb3NzLiAqLwogICAgICAgICAgICAgY2VsdF9m
aXIoZXhjK01BWF9QRVJJT0QtZXhjX2xlbmd0aCwgbHBjK2MqTFBDX09SREVSLAotICAgICAgICAg
ICAgICAgICAgZXhjK01BWF9QRVJJT0QtZXhjX2xlbmd0aCwgZXhjX2xlbmd0aCwgTFBDX09SREVS
LCBscGNfbWVtLCBzdC0+YXJjaCk7CisgICAgICAgICAgICAgICAgICBleGMrTUFYX1BFUklPRC1l
eGNfbGVuZ3RoLCBleGNfbGVuZ3RoLCBMUENfT1JERVIsIHN0LT5hcmNoKTsKICAgICAgICAgIH0K
IAogICAgICAgICAgLyogQ2hlY2sgaWYgdGhlIHdhdmVmb3JtIGlzIGRlY2F5aW5nLCBhbmQgaWYg
c28gaG93IGZhc3QuCkBAIC02MzAsOSArNjk4LDggQEAgc3RhdGljIHZvaWQgY2VsdF9kZWNvZGVf
bG9zdChDRUxURGVjb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCBOLCBpbnQgTE0pCiAgICAg
ICAgICAgICB0bXAgPSBST1VORDE2KAogICAgICAgICAgICAgICAgICAgYnVmW0RFQ09ERV9CVUZG
RVJfU0laRS1NQVhfUEVSSU9ELU4rZXh0cmFwb2xhdGlvbl9vZmZzZXQral0sCiAgICAgICAgICAg
ICAgICAgICBTSUdfU0hJRlQpOwotICAgICAgICAgICAgUzEgKz0gU0hSMzIoTVVMVDE2XzE2KHRt
cCwgdG1wKSwgOCk7CisgICAgICAgICAgICBTMSArPSBTSFIzMihNVUxUMTZfMTYodG1wLCB0bXAp
LCAxMCk7CiAgICAgICAgICB9Ci0KICAgICAgICAgIHsKICAgICAgICAgICAgIG9wdXNfdmFsMTYg
bHBjX21lbVtMUENfT1JERVJdOwogICAgICAgICAgICAgLyogQ29weSB0aGUgbGFzdCBkZWNvZGVk
IHNhbXBsZXMgKHByaW9yIHRvIHRoZSBvdmVybGFwIHJlZ2lvbikgdG8KQEAgLTY0NCw2ICs3MTEs
MTAgQEAgc3RhdGljIHZvaWQgY2VsdF9kZWNvZGVfbG9zdChDRUxURGVjb2RlciAqIE9QVVNfUkVT
VFJJQ1Qgc3QsIGludCBOLCBpbnQgTE0pCiAgICAgICAgICAgICBjZWx0X2lpcihidWYrREVDT0RF
X0JVRkZFUl9TSVpFLU4sIGxwYytjKkxQQ19PUkRFUiwKICAgICAgICAgICAgICAgICAgIGJ1ZitE
RUNPREVfQlVGRkVSX1NJWkUtTiwgZXh0cmFwb2xhdGlvbl9sZW4sIExQQ19PUkRFUiwKICAgICAg
ICAgICAgICAgICAgIGxwY19tZW0sIHN0LT5hcmNoKTsKKyNpZmRlZiBGSVhFRF9QT0lOVAorICAg
ICAgICAgICAgZm9yIChpPTA7IGkgPCBleHRyYXBvbGF0aW9uX2xlbjsgaSsrKQorICAgICAgICAg
ICAgICAgYnVmW0RFQ09ERV9CVUZGRVJfU0laRS1OK2ldID0gU0FUVVJBVEUoYnVmW0RFQ09ERV9C
VUZGRVJfU0laRS1OK2ldLCBTSUdfU0FUKTsKKyNlbmRpZgogICAgICAgICAgfQogCiAgICAgICAg
ICAvKiBDaGVjayBpZiB0aGUgc3ludGhlc2lzIGVuZXJneSBpcyBoaWdoZXIgdGhhbiBleHBlY3Rl
ZCwgd2hpY2ggY2FuCkBAIC02NTQsNyArNzI1LDcgQEAgc3RhdGljIHZvaWQgY2VsdF9kZWNvZGVf
bG9zdChDRUxURGVjb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCBOLCBpbnQgTE0pCiAgICAg
ICAgICAgICBmb3IgKGk9MDtpPGV4dHJhcG9sYXRpb25fbGVuO2krKykKICAgICAgICAgICAgIHsK
ICAgICAgICAgICAgICAgIG9wdXNfdmFsMTYgdG1wID0gUk9VTkQxNihidWZbREVDT0RFX0JVRkZF
Ul9TSVpFLU4raV0sIFNJR19TSElGVCk7Ci0gICAgICAgICAgICAgICBTMiArPSBTSFIzMihNVUxU
MTZfMTYodG1wLCB0bXApLCA4KTsKKyAgICAgICAgICAgICAgIFMyICs9IFNIUjMyKE1VTFQxNl8x
Nih0bXAsIHRtcCksIDEwKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIC8qIFRoaXMgY2hl
Y2tzIGZvciBhbiAiZXhwbG9zaW9uIiBpbiB0aGUgc3ludGhlc2lzLiAqLwogI2lmZGVmIEZJWEVE
X1BPSU5UCkBAIC05NzksNyArMTA1MCw4IEBAIGludCBjZWx0X2RlY29kZV93aXRoX2VjKENFTFRE
ZWNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3QgdW5zaWduZWQgY2hhciAqZGF0CiAKICAg
IHF1YW50X2FsbF9iYW5kcygwLCBtb2RlLCBzdGFydCwgZW5kLCBYLCBDPT0yID8gWCtOIDogTlVM
TCwgY29sbGFwc2VfbWFza3MsCiAgICAgICAgICBOVUxMLCBwdWxzZXMsIHNob3J0QmxvY2tzLCBz
cHJlYWRfZGVjaXNpb24sIGR1YWxfc3RlcmVvLCBpbnRlbnNpdHksIHRmX3JlcywKLSAgICAgICAg
IGxlbiooODw8QklUUkVTKS1hbnRpX2NvbGxhcHNlX3JzdiwgYmFsYW5jZSwgZGVjLCBMTSwgY29k
ZWRCYW5kcywgJnN0LT5ybmcsIHN0LT5hcmNoKTsKKyAgICAgICAgIGxlbiooODw8QklUUkVTKS1h
bnRpX2NvbGxhcHNlX3JzdiwgYmFsYW5jZSwgZGVjLCBMTSwgY29kZWRCYW5kcywgJnN0LT5ybmcs
IDAsCisgICAgICAgICBzdC0+YXJjaCwgc3QtPmRpc2FibGVfaW52KTsKIAogICAgaWYgKGFudGlf
Y29sbGFwc2VfcnN2ID4gMCkKICAgIHsKQEAgLTEyMzQsNiArMTMwNiwyNiBAQCBpbnQgb3B1c19j
dXN0b21fZGVjb2Rlcl9jdGwoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQgcmVx
dWVzdCwgLi4uKQogICAgICAgICAgKnZhbHVlPXN0LT5ybmc7CiAgICAgICB9CiAgICAgICBicmVh
azsKKyAgICAgIGNhc2UgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1Q6
CisgICAgICB7CisgICAgICAgICAgb3B1c19pbnQzMiB2YWx1ZSA9IHZhX2FyZyhhcCwgb3B1c19p
bnQzMik7CisgICAgICAgICAgaWYodmFsdWU8MCB8fCB2YWx1ZT4xKQorICAgICAgICAgIHsKKyAg
ICAgICAgICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAgICAgfQorICAgICAgICAgIHN0LT5kaXNh
YmxlX2ludiA9IHZhbHVlOworICAgICAgfQorICAgICAgYnJlYWs7CisgICAgICBjYXNlIE9QVVNf
R0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUOgorICAgICAgeworICAgICAgICAg
IG9wdXNfaW50MzIgKnZhbHVlID0gdmFfYXJnKGFwLCBvcHVzX2ludDMyKik7CisgICAgICAgICAg
aWYgKCF2YWx1ZSkKKyAgICAgICAgICB7CisgICAgICAgICAgICAgZ290byBiYWRfYXJnOworICAg
ICAgICAgIH0KKyAgICAgICAgICAqdmFsdWUgPSBzdC0+ZGlzYWJsZV9pbnY7CisgICAgICB9Cisg
ICAgICBicmVhazsKICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICBnb3RvIGJhZF9yZXF1ZXN0Owog
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfZW5jb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfZW5jb2Rlci5j
CmluZGV4IDNlZTdhNGQzZjdhMWRjZWI3MWU2YTFiZWYxNDMwNmFjOWQyMTdhMzIuLjA1M2U1YTNi
MjkwMGMxNmYyOTA3ZmIwM2JlNTM3Y2UzYjViMTA5MmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2Vu
Y29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvY2VsdF9lbmNvZGVyLmMKQEAgLTczLDggKzczLDggQEAgc3RydWN0
IE9wdXNDdXN0b21FbmNvZGVyIHsKICAgIGludCBjb25zdHJhaW5lZF92YnI7ICAgICAgLyogSWYg
emVybywgVkJSIGNhbiBkbyB3aGF0ZXZlciBpdCBsaWtlcyB3aXRoIHRoZSByYXRlICovCiAgICBp
bnQgbG9zc19yYXRlOwogICAgaW50IGxzYl9kZXB0aDsKLSAgIGludCB2YXJpYWJsZV9kdXJhdGlv
bjsKICAgIGludCBsZmU7CisgICBpbnQgZGlzYWJsZV9pbnY7CiAgICBpbnQgYXJjaDsKIAogICAg
LyogRXZlcnl0aGluZyBiZXlvbmQgdGhpcyBwb2ludCBnZXRzIGNsZWFyZWQgb24gYSByZXNldCAq
LwpAQCAtOTgsNiArOTgsNyBAQCBzdHJ1Y3QgT3B1c0N1c3RvbUVuY29kZXIgewogI2VuZGlmCiAg
ICBpbnQgY29uc2VjX3RyYW5zaWVudDsKICAgIEFuYWx5c2lzSW5mbyBhbmFseXNpczsKKyAgIFNJ
TEtJbmZvIHNpbGtfaW5mbzsKIAogICAgb3B1c192YWwzMiBwcmVlbXBoX21lbUVbMl07CiAgICBv
cHVzX3ZhbDMyIHByZWVtcGhfbWVtRFsyXTsKQEAgLTEyMyw2ICsxMjQsNyBAQCBzdHJ1Y3QgT3B1
c0N1c3RvbUVuY29kZXIgewogICAgLyogb3B1c192YWwxNiBvbGRCYW5kRVtdLCAgICAgU2l6ZSA9
IGNoYW5uZWxzKm1vZGUtPm5iRUJhbmRzICovCiAgICAvKiBvcHVzX3ZhbDE2IG9sZExvZ0VbXSwg
ICAgICBTaXplID0gY2hhbm5lbHMqbW9kZS0+bmJFQmFuZHMgKi8KICAgIC8qIG9wdXNfdmFsMTYg
b2xkTG9nRTJbXSwgICAgIFNpemUgPSBjaGFubmVscyptb2RlLT5uYkVCYW5kcyAqLworICAgLyog
b3B1c192YWwxNiBlbmVyZ3lFcnJvcltdLCAgU2l6ZSA9IGNoYW5uZWxzKm1vZGUtPm5iRUJhbmRz
ICovCiB9OwogCiBpbnQgY2VsdF9lbmNvZGVyX2dldF9zaXplKGludCBjaGFubmVscykKQEAgLTEz
Niw5ICsxMzgsMTAgQEAgT1BVU19DVVNUT01fTk9TVEFUSUMgaW50IG9wdXNfY3VzdG9tX2VuY29k
ZXJfZ2V0X3NpemUoY29uc3QgQ0VMVE1vZGUgKm1vZGUsIGludAogICAgaW50IHNpemUgPSBzaXpl
b2Yoc3RydWN0IENFTFRFbmNvZGVyKQogICAgICAgICAgKyAoY2hhbm5lbHMqbW9kZS0+b3Zlcmxh
cC0xKSpzaXplb2YoY2VsdF9zaWcpICAgIC8qIGNlbHRfc2lnIGluX21lbVtjaGFubmVscyptb2Rl
LT5vdmVybGFwXTsgKi8KICAgICAgICAgICsgY2hhbm5lbHMqQ09NQkZJTFRFUl9NQVhQRVJJT0Qq
c2l6ZW9mKGNlbHRfc2lnKSAvKiBjZWx0X3NpZyBwcmVmaWx0ZXJfbWVtW2NoYW5uZWxzKkNPTUJG
SUxURVJfTUFYUEVSSU9EXTsgKi8KLSAgICAgICAgICsgMypjaGFubmVscyptb2RlLT5uYkVCYW5k
cypzaXplb2Yob3B1c192YWwxNik7ICAvKiBvcHVzX3ZhbDE2IG9sZEJhbmRFW2NoYW5uZWxzKm1v
ZGUtPm5iRUJhbmRzXTsgKi8KKyAgICAgICAgICsgNCpjaGFubmVscyptb2RlLT5uYkVCYW5kcypz
aXplb2Yob3B1c192YWwxNik7ICAvKiBvcHVzX3ZhbDE2IG9sZEJhbmRFW2NoYW5uZWxzKm1vZGUt
Pm5iRUJhbmRzXTsgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBvcHVzX3ZhbDE2IG9sZExvZ0VbY2hhbm5lbHMqbW9kZS0+bmJF
QmFuZHNdOyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIG9wdXNfdmFsMTYgb2xkTG9nRTJbY2hhbm5lbHMqbW9kZS0+bmJFQmFu
ZHNdOyAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIG9wdXNfdmFsMTYgZW5lcmd5RXJyb3JbY2hhbm5lbHMqbW9kZS0+bmJFQmFu
ZHNdOyAqLwogICAgcmV0dXJuIHNpemU7CiB9CiAKQEAgLTE3OCw3ICsxODEsNiBAQCBzdGF0aWMg
aW50IG9wdXNfY3VzdG9tX2VuY29kZXJfaW5pdF9hcmNoKENFTFRFbmNvZGVyICpzdCwgY29uc3Qg
Q0VMVE1vZGUgKm1vZGUsCiAgICBzdC0+c3RhcnQgPSAwOwogICAgc3QtPmVuZCA9IHN0LT5tb2Rl
LT5lZmZFQmFuZHM7CiAgICBzdC0+c2lnbmFsbGluZyA9IDE7Ci0KICAgIHN0LT5hcmNoID0gYXJj
aDsKIAogICAgc3QtPmNvbnN0cmFpbmVkX3ZiciA9IDE7CkBAIC0yMjMsNyArMjI1LDggQEAgdm9p
ZCBvcHVzX2N1c3RvbV9lbmNvZGVyX2Rlc3Ryb3koQ0VMVEVuY29kZXIgKnN0KQogCiAKIHN0YXRp
YyBpbnQgdHJhbnNpZW50X2FuYWx5c2lzKGNvbnN0IG9wdXNfdmFsMzIgKiBPUFVTX1JFU1RSSUNU
IGluLCBpbnQgbGVuLCBpbnQgQywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdXNf
dmFsMTYgKnRmX2VzdGltYXRlLCBpbnQgKnRmX2NoYW4pCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBvcHVzX3ZhbDE2ICp0Zl9lc3RpbWF0ZSwgaW50ICp0Zl9jaGFuLCBpbnQgYWxsb3df
d2Vha190cmFuc2llbnRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICp3ZWFr
X3RyYW5zaWVudCkKIHsKICAgIGludCBpOwogICAgVkFSREVDTChvcHVzX3ZhbDE2LCB0bXApOwpA
QCAtMjMzLDYgKzIzNiwxMiBAQCBzdGF0aWMgaW50IHRyYW5zaWVudF9hbmFseXNpcyhjb25zdCBv
cHVzX3ZhbDMyICogT1BVU19SRVNUUklDVCBpbiwgaW50IGxlbiwgaW50CiAgICBpbnQgYzsKICAg
IG9wdXNfdmFsMTYgdGZfbWF4OwogICAgaW50IGxlbjI7CisgICAvKiBGb3J3YXJkIG1hc2tpbmc6
IDYuNyBkQi9tcy4gKi8KKyNpZmRlZiBGSVhFRF9QT0lOVAorICAgaW50IGZvcndhcmRfc2hpZnQg
PSA0OworI2Vsc2UKKyAgIG9wdXNfdmFsMTYgZm9yd2FyZF9kZWNheSA9IFFDT05TVDE2KC4wNjI1
ZiwxNSk7CisjZW5kaWYKICAgIC8qIFRhYmxlIG9mIDYqNjQveCwgdHJhaW5lZCBvbiByZWFsIGRh
dGEgdG8gbWluaW1pemUgdGhlIGF2ZXJhZ2UgZXJyb3IgKi8KICAgIHN0YXRpYyBjb25zdCB1bnNp
Z25lZCBjaGFyIGludl90YWJsZVsxMjhdID0gewogICAgICAgICAgMjU1LDI1NSwxNTYsMTEwLCA4
NiwgNzAsIDU5LCA1MSwgNDUsIDQwLCAzNywgMzMsIDMxLCAyOCwgMjYsIDI1LApAQCAtMjQ3LDYg
KzI1NiwxOSBAQCBzdGF0aWMgaW50IHRyYW5zaWVudF9hbmFseXNpcyhjb25zdCBvcHVzX3ZhbDMy
ICogT1BVU19SRVNUUklDVCBpbiwgaW50IGxlbiwgaW50CiAgICBTQVZFX1NUQUNLOwogICAgQUxM
T0ModG1wLCBsZW4sIG9wdXNfdmFsMTYpOwogCisgICAqd2Vha190cmFuc2llbnQgPSAwOworICAg
LyogRm9yIGxvd2VyIGJpdHJhdGVzLCBsZXQncyBiZSBtb3JlIGNvbnNlcnZhdGl2ZSBhbmQgaGF2
ZSBhIGZvcndhcmQgbWFza2luZworICAgICAgZGVjYXkgb2YgMy4zIGRCL21zLiBUaGlzIGF2b2lk
cyBoYXZpbmcgdG8gY29kZSB0cmFuc2llbnRzIGF0IHZlcnkgbG93CisgICAgICBiaXRyYXRlICht
b3N0bHkgZm9yIGh5YnJpZCksIHdoaWNoIGNhbiByZXN1bHQgaW4gdW5zdGFibGUgZW5lcmd5IGFu
ZC9vcgorICAgICAgcGFydGlhbCBjb2xsYXBzZS4gKi8KKyAgIGlmIChhbGxvd193ZWFrX3RyYW5z
aWVudHMpCisgICB7CisjaWZkZWYgRklYRURfUE9JTlQKKyAgICAgIGZvcndhcmRfc2hpZnQgPSA1
OworI2Vsc2UKKyAgICAgIGZvcndhcmRfZGVjYXkgPSBRQ09OU1QxNiguMDMxMjVmLDE1KTsKKyNl
bmRpZgorICAgfQogICAgbGVuMj1sZW4vMjsKICAgIGZvciAoYz0wO2M8QztjKyspCiAgICB7CkBA
IC0yNjksNyArMjkxLDcgQEAgc3RhdGljIGludCB0cmFuc2llbnRfYW5hbHlzaXMoY29uc3Qgb3B1
c192YWwzMiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGludCBsZW4sIGludAogICAgICAgICAgbWVtMCA9
IG1lbTEgKyB5IC0gMip4OwogICAgICAgICAgbWVtMSA9IHggLSAuNWYqeTsKICNlbmRpZgotICAg
ICAgICAgdG1wW2ldID0gRVhUUkFDVDE2KFNIUjMyKHksMikpOworICAgICAgICAgdG1wW2ldID0g
U1JPVU5EMTYoeSwgMik7CiAgICAgICAgICAvKnByaW50ZigiJWYgIiwgdG1wW2ldKTsqLwogICAg
ICAgfQogICAgICAgLypwcmludGYoIlxuIik7Ki8KQEAgLTI4MCw3ICszMDIsNyBAQCBzdGF0aWMg
aW50IHRyYW5zaWVudF9hbmFseXNpcyhjb25zdCBvcHVzX3ZhbDMyICogT1BVU19SRVNUUklDVCBp
biwgaW50IGxlbiwgaW50CiAgICAgICAvKiBOb3JtYWxpemUgdG1wIHRvIG1heCByYW5nZSAqLwog
ICAgICAgewogICAgICAgICAgaW50IHNoaWZ0PTA7Ci0gICAgICAgICBzaGlmdCA9IDE0LWNlbHRf
aWxvZzIoMStjZWx0X21heGFiczE2KHRtcCwgbGVuKSk7CisgICAgICAgICBzaGlmdCA9IDE0LWNl
bHRfaWxvZzIoTUFYMTYoMSwgY2VsdF9tYXhhYnMxNih0bXAsIGxlbikpKTsKICAgICAgICAgIGlm
IChzaGlmdCE9MCkKICAgICAgICAgIHsKICAgICAgICAgICAgIGZvciAoaT0wO2k8bGVuO2krKykK
QEAgLTI5OSw5ICszMjEsOSBAQCBzdGF0aWMgaW50IHRyYW5zaWVudF9hbmFseXNpcyhjb25zdCBv
cHVzX3ZhbDMyICogT1BVU19SRVNUUklDVCBpbiwgaW50IGxlbiwgaW50CiAgICAgICAgICBtZWFu
ICs9IHgyOwogI2lmZGVmIEZJWEVEX1BPSU5UCiAgICAgICAgICAvKiBGSVhNRTogVXNlIFBTSFIx
NigpIGluc3RlYWQgKi8KLSAgICAgICAgIHRtcFtpXSA9IG1lbTAgKyBQU0hSMzIoeDItbWVtMCw0
KTsKKyAgICAgICAgIHRtcFtpXSA9IG1lbTAgKyBQU0hSMzIoeDItbWVtMCxmb3J3YXJkX3NoaWZ0
KTsKICNlbHNlCi0gICAgICAgICB0bXBbaV0gPSBtZW0wICsgTVVMVDE2XzE2X1AxNShRQ09OU1Qx
NiguMDYyNWYsMTUpLHgyLW1lbTApOworICAgICAgICAgdG1wW2ldID0gbWVtMCArIE1VTFQxNl8x
Nl9QMTUoZm9yd2FyZF9kZWNheSx4Mi1tZW0wKTsKICNlbmRpZgogICAgICAgICAgbWVtMCA9IHRt
cFtpXTsKICAgICAgIH0KQEAgLTMxMSw2ICszMzMsNyBAQCBzdGF0aWMgaW50IHRyYW5zaWVudF9h
bmFseXNpcyhjb25zdCBvcHVzX3ZhbDMyICogT1BVU19SRVNUUklDVCBpbiwgaW50IGxlbiwgaW50
CiAgICAgICAvKiBCYWNrd2FyZCBwYXNzIHRvIGNvbXB1dGUgdGhlIHByZS1lY2hvIHRocmVzaG9s
ZCAqLwogICAgICAgZm9yIChpPWxlbjItMTtpPj0wO2ktLSkKICAgICAgIHsKKyAgICAgICAgIC8q
IEJhY2t3YXJkIG1hc2tpbmc6IDEzLjkgZEIvbXMuICovCiAjaWZkZWYgRklYRURfUE9JTlQKICAg
ICAgICAgIC8qIEZJWE1FOiBVc2UgUFNIUjE2KCkgaW5zdGVhZCAqLwogICAgICAgICAgdG1wW2ld
ID0gbWVtMCArIFBTSFIzMih0bXBbaV0tbWVtMCwzKTsKQEAgLTM1OSw3ICszODIsMTIgQEAgc3Rh
dGljIGludCB0cmFuc2llbnRfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVTVFJJ
Q1QgaW4sIGludCBsZW4sIGludAogICAgICAgfQogICAgfQogICAgaXNfdHJhbnNpZW50ID0gbWFz
a19tZXRyaWM+MjAwOwotCisgICAvKiBGb3IgbG93IGJpdHJhdGVzLCBkZWZpbmUgIndlYWsgdHJh
bnNpZW50cyIgdGhhdCBuZWVkIHRvIGJlCisgICAgICBoYW5kbGVkIGRpZmZlcmVudGx5IHRvIGF2
b2lkIHBhcnRpYWwgY29sbGFwc2UuICovCisgICBpZiAoYWxsb3dfd2Vha190cmFuc2llbnRzICYm
IGlzX3RyYW5zaWVudCAmJiBtYXNrX21ldHJpYzw2MDApIHsKKyAgICAgIGlzX3RyYW5zaWVudCA9
IDA7CisgICAgICAqd2Vha190cmFuc2llbnQgPSAxOworICAgfQogICAgLyogQXJiaXRyYXJ5IG1l
dHJpYyBmb3IgVkJSIGJvb3N0ICovCiAgICB0Zl9tYXggPSBNQVgxNigwLGNlbHRfc3FydCgyNypt
YXNrX21ldHJpYyktNDIpOwogICAgLyogKnRmX2VzdGltYXRlID0gMSArIE1JTjE2KDEsIHNxcnQo
TUFYMTYoMCwgdGZfbWF4LTMwKSkvMjApOyAqLwpAQCAtNTQ5LDcgKzU3Nyw3IEBAIHN0YXRpYyBv
cHVzX3ZhbDMyIGwxX21ldHJpYyhjb25zdCBjZWx0X25vcm0gKnRtcCwgaW50IE4sIGludCBMTSwg
b3B1c192YWwxNiBiaWFzCiAKIHN0YXRpYyBpbnQgdGZfYW5hbHlzaXMoY29uc3QgQ0VMVE1vZGUg
Km0sIGludCBsZW4sIGludCBpc1RyYW5zaWVudCwKICAgICAgIGludCAqdGZfcmVzLCBpbnQgbGFt
YmRhLCBjZWx0X25vcm0gKlgsIGludCBOMCwgaW50IExNLAotICAgICAgaW50ICp0Zl9zdW0sIG9w
dXNfdmFsMTYgdGZfZXN0aW1hdGUsIGludCB0Zl9jaGFuKQorICAgICAgb3B1c192YWwxNiB0Zl9l
c3RpbWF0ZSwgaW50IHRmX2NoYW4pCiB7CiAgICBpbnQgaTsKICAgIFZBUkRFQ0woaW50LCBtZXRy
aWMpOwpAQCAtNTc0LDcgKzYwMiw2IEBAIHN0YXRpYyBpbnQgdGZfYW5hbHlzaXMoY29uc3QgQ0VM
VE1vZGUgKm0sIGludCBsZW4sIGludCBpc1RyYW5zaWVudCwKICAgIEFMTE9DKHBhdGgwLCBsZW4s
IGludCk7CiAgICBBTExPQyhwYXRoMSwgbGVuLCBpbnQpOwogCi0gICAqdGZfc3VtID0gMDsKICAg
IGZvciAoaT0wO2k8bGVuO2krKykKICAgIHsKICAgICAgIGludCBrLCBOOwpAQCAtNjI5LDcgKzY1
Niw2IEBAIHN0YXRpYyBpbnQgdGZfYW5hbHlzaXMoY29uc3QgQ0VMVE1vZGUgKm0sIGludCBsZW4s
IGludCBpc1RyYW5zaWVudCwKICAgICAgICAgIG1ldHJpY1tpXSA9IDIqYmVzdF9sZXZlbDsKICAg
ICAgIGVsc2UKICAgICAgICAgIG1ldHJpY1tpXSA9IC0yKmJlc3RfbGV2ZWw7Ci0gICAgICAqdGZf
c3VtICs9IChpc1RyYW5zaWVudCA/IExNIDogMCkgLSBtZXRyaWNbaV0vMjsKICAgICAgIC8qIEZv
ciBiYW5kcyB0aGF0IGNhbid0IGJlIHNwbGl0IHRvIC0xLCBzZXQgdGhlIG1ldHJpYyB0byB0aGUg
aGFsZi13YXkgcG9pbnQgdG8gYXZvaWQKICAgICAgICAgIGJpYXNpbmcgdGhlIGRlY2lzaW9uICov
CiAgICAgICBpZiAobmFycm93ICYmIChtZXRyaWNbaV09PTAgfHwgbWV0cmljW2ldPT0tMipMTSkp
CkBAIC03NTQsNyArNzgwLDcgQEAgc3RhdGljIHZvaWQgdGZfZW5jb2RlKGludCBzdGFydCwgaW50
IGVuZCwgaW50IGlzVHJhbnNpZW50LCBpbnQgKnRmX3JlcywgaW50IExNLAogc3RhdGljIGludCBh
bGxvY190cmltX2FuYWx5c2lzKGNvbnN0IENFTFRNb2RlICptLCBjb25zdCBjZWx0X25vcm0gKlgs
CiAgICAgICBjb25zdCBvcHVzX3ZhbDE2ICpiYW5kTG9nRSwgaW50IGVuZCwgaW50IExNLCBpbnQg
QywgaW50IE4wLAogICAgICAgQW5hbHlzaXNJbmZvICphbmFseXNpcywgb3B1c192YWwxNiAqc3Rl
cmVvX3NhdmluZywgb3B1c192YWwxNiB0Zl9lc3RpbWF0ZSwKLSAgICAgIGludCBpbnRlbnNpdHks
IG9wdXNfdmFsMTYgc3Vycm91bmRfdHJpbSwgaW50IGFyY2gpCisgICAgICBpbnQgaW50ZW5zaXR5
LCBvcHVzX3ZhbDE2IHN1cnJvdW5kX3RyaW0sIG9wdXNfaW50MzIgZXF1aXZfcmF0ZSwgaW50IGFy
Y2gpCiB7CiAgICBpbnQgaTsKICAgIG9wdXNfdmFsMzIgZGlmZj0wOwpAQCAtNzYyLDYgKzc4OCwx
NCBAQCBzdGF0aWMgaW50IGFsbG9jX3RyaW1fYW5hbHlzaXMoY29uc3QgQ0VMVE1vZGUgKm0sIGNv
bnN0IGNlbHRfbm9ybSAqWCwKICAgIGludCB0cmltX2luZGV4OwogICAgb3B1c192YWwxNiB0cmlt
ID0gUUNPTlNUMTYoNS5mLCA4KTsKICAgIG9wdXNfdmFsMTYgbG9nWEMsIGxvZ1hDMjsKKyAgIC8q
IEF0IGxvdyBiaXRyYXRlLCByZWR1Y2luZyB0aGUgdHJpbSBzZWVtcyB0byBoZWxwLiBBdCBoaWdo
ZXIgYml0cmF0ZXMsIGl0J3MgbGVzcworICAgICAgY2xlYXIgd2hhdCdzIGJlc3QsIHNvIHdlJ3Jl
IGtlZXBpbmcgaXQgYXMgaXQgd2FzIGJlZm9yZSwgYXQgbGVhc3QgZm9yIG5vdy4gKi8KKyAgIGlm
IChlcXVpdl9yYXRlIDwgNjQwMDApIHsKKyAgICAgIHRyaW0gPSBRQ09OU1QxNig0LmYsIDgpOwor
ICAgfSBlbHNlIGlmIChlcXVpdl9yYXRlIDwgODAwMDApIHsKKyAgICAgIG9wdXNfaW50MzIgZnJh
YyA9IChlcXVpdl9yYXRlLTY0MDAwKSA+PiAxMDsKKyAgICAgIHRyaW0gPSBRQ09OU1QxNig0LmYs
IDgpICsgUUNPTlNUMTYoMS5mLzE2LmYsIDgpKmZyYWM7CisgICB9CiAgICBpZiAoQz09MikKICAg
IHsKICAgICAgIG9wdXNfdmFsMTYgc3VtID0gMDsgLyogUTEwICovCkBAIC04MDksNyArODQzLDcg
QEAgc3RhdGljIGludCBhbGxvY190cmltX2FuYWx5c2lzKGNvbnN0IENFTFRNb2RlICptLCBjb25z
dCBjZWx0X25vcm0gKlgsCiAgICB9IHdoaWxlICgrK2M8Qyk7CiAgICBkaWZmIC89IEMqKGVuZC0x
KTsKICAgIC8qcHJpbnRmKCIlZlxuIiwgZGlmZik7Ki8KLSAgIHRyaW0gLT0gTUFYMTYoLVFDT05T
VDE2KDIuZiwgOCksIE1JTjE2KFFDT05TVDE2KDIuZiwgOCksIFNIUjE2KGRpZmYrUUNPTlNUMTYo
MS5mLCBEQl9TSElGVCksREJfU0hJRlQtOCkvNiApKTsKKyAgIHRyaW0gLT0gTUFYMzIoLVFDT05T
VDE2KDIuZiwgOCksIE1JTjMyKFFDT05TVDE2KDIuZiwgOCksIFNIUjMyKGRpZmYrUUNPTlNUMTYo
MS5mLCBEQl9TSElGVCksREJfU0hJRlQtOCkvNiApKTsKICAgIHRyaW0gLT0gU0hSMTYoc3Vycm91
bmRfdHJpbSwgREJfU0hJRlQtOCk7CiAgICB0cmltIC09IDIqU0hSMTYodGZfZXN0aW1hdGUsIDE0
LTgpOwogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQpAQCAtOTMwLDcgKzk2NCw3IEBAIHN0YXRp
YyBvcHVzX3ZhbDE2IG1lZGlhbl9vZl8zKGNvbnN0IG9wdXNfdmFsMTYgKngpCiBzdGF0aWMgb3B1
c192YWwxNiBkeW5hbGxvY19hbmFseXNpcyhjb25zdCBvcHVzX3ZhbDE2ICpiYW5kTG9nRSwgY29u
c3Qgb3B1c192YWwxNiAqYmFuZExvZ0UyLAogICAgICAgaW50IG5iRUJhbmRzLCBpbnQgc3RhcnQs
IGludCBlbmQsIGludCBDLCBpbnQgKm9mZnNldHMsIGludCBsc2JfZGVwdGgsIGNvbnN0IG9wdXNf
aW50MTYgKmxvZ04sCiAgICAgICBpbnQgaXNUcmFuc2llbnQsIGludCB2YnIsIGludCBjb25zdHJh
aW5lZF92YnIsIGNvbnN0IG9wdXNfaW50MTYgKmVCYW5kcywgaW50IExNLAotICAgICAgaW50IGVm
ZmVjdGl2ZUJ5dGVzLCBvcHVzX2ludDMyICp0b3RfYm9vc3RfLCBpbnQgbGZlLCBvcHVzX3ZhbDE2
ICpzdXJyb3VuZF9keW5hbGxvYykKKyAgICAgIGludCBlZmZlY3RpdmVCeXRlcywgb3B1c19pbnQz
MiAqdG90X2Jvb3N0XywgaW50IGxmZSwgb3B1c192YWwxNiAqc3Vycm91bmRfZHluYWxsb2MsIEFu
YWx5c2lzSW5mbyAqYW5hbHlzaXMpCiB7CiAgICBpbnQgaSwgYzsKICAgIG9wdXNfaW50MzIgdG90
X2Jvb3N0PTA7CkBAIC0xMDIwLDE0ICsxMDU0LDI2IEBAIHN0YXRpYyBvcHVzX3ZhbDE2IGR5bmFs
bG9jX2FuYWx5c2lzKGNvbnN0IG9wdXNfdmFsMTYgKmJhbmRMb2dFLCBjb25zdCBvcHVzX3ZhbDE2
CiAgICAgICB9CiAgICAgICBmb3IgKGk9c3RhcnQ7aTxlbmQ7aSsrKQogICAgICAgewotICAgICAg
ICAgaW50IHdpZHRoOwotICAgICAgICAgaW50IGJvb3N0OwotICAgICAgICAgaW50IGJvb3N0X2Jp
dHM7Ci0KICAgICAgICAgIGlmIChpPDgpCiAgICAgICAgICAgICBmb2xsb3dlcltpXSAqPSAyOwog
ICAgICAgICAgaWYgKGk+PTEyKQogICAgICAgICAgICAgZm9sbG93ZXJbaV0gPSBIQUxGMTYoZm9s
bG93ZXJbaV0pOworICAgICAgfQorI2lmZGVmIERJU0FCTEVfRkxPQVRfQVBJCisgICAgICAodm9p
ZClhbmFseXNpczsKKyNlbHNlCisgICAgICBpZiAoYW5hbHlzaXMtPnZhbGlkKQorICAgICAgewor
ICAgICAgICAgZm9yIChpPXN0YXJ0O2k8SU1JTihMRUFLX0JBTkRTLCBlbmQpO2krKykKKyAgICAg
ICAgICAgIGZvbGxvd2VyW2ldID0gZm9sbG93ZXJbaV0gKyAgUUNPTlNUMTYoMS5mLzY0LmYsIERC
X1NISUZUKSphbmFseXNpcy0+bGVha19ib29zdFtpXTsKKyAgICAgIH0KKyNlbmRpZgorICAgICAg
Zm9yIChpPXN0YXJ0O2k8ZW5kO2krKykKKyAgICAgIHsKKyAgICAgICAgIGludCB3aWR0aDsKKyAg
ICAgICAgIGludCBib29zdDsKKyAgICAgICAgIGludCBib29zdF9iaXRzOworCiAgICAgICAgICBm
b2xsb3dlcltpXSA9IE1JTjE2KGZvbGxvd2VyW2ldLCBRQ09OU1QxNig0LCBEQl9TSElGVCkpOwog
CiAgICAgICAgICB3aWR0aCA9IEMqKGVCYW5kc1tpKzFdLWVCYW5kc1tpXSk8PExNOwpAQCAtMTA0
MiwxMSArMTA4OCwxMSBAQCBzdGF0aWMgb3B1c192YWwxNiBkeW5hbGxvY19hbmFseXNpcyhjb25z
dCBvcHVzX3ZhbDE2ICpiYW5kTG9nRSwgY29uc3Qgb3B1c192YWwxNgogICAgICAgICAgICAgYm9v
c3QgPSAoaW50KVNIUjMyKEVYVEVORDMyKGZvbGxvd2VyW2ldKSp3aWR0aC82LERCX1NISUZUKTsK
ICAgICAgICAgICAgIGJvb3N0X2JpdHMgPSBib29zdCo2PDxCSVRSRVM7CiAgICAgICAgICB9Ci0g
ICAgICAgICAvKiBGb3IgQ0JSIGFuZCBub24tdHJhbnNpZW50IENWQlIgZnJhbWVzLCBsaW1pdCBk
eW5hbGxvYyB0byAxLzQgb2YgdGhlIGJpdHMgKi8KKyAgICAgICAgIC8qIEZvciBDQlIgYW5kIG5v
bi10cmFuc2llbnQgQ1ZCUiBmcmFtZXMsIGxpbWl0IGR5bmFsbG9jIHRvIDIvMyBvZiB0aGUgYml0
cyAqLwogICAgICAgICAgaWYgKCghdmJyIHx8IChjb25zdHJhaW5lZF92YnImJiFpc1RyYW5zaWVu
dCkpCi0gICAgICAgICAgICAgICAmJiAodG90X2Jvb3N0K2Jvb3N0X2JpdHMpPj5CSVRSRVM+PjMg
PiBlZmZlY3RpdmVCeXRlcy80KQorICAgICAgICAgICAgICAgJiYgKHRvdF9ib29zdCtib29zdF9i
aXRzKT4+QklUUkVTPj4zID4gMiplZmZlY3RpdmVCeXRlcy8zKQogICAgICAgICAgewotICAgICAg
ICAgICAgb3B1c19pbnQzMiBjYXAgPSAoKGVmZmVjdGl2ZUJ5dGVzLzQpPDxCSVRSRVM8PDMpOwor
ICAgICAgICAgICAgb3B1c19pbnQzMiBjYXAgPSAoKDIqZWZmZWN0aXZlQnl0ZXMvMyk8PEJJVFJF
Uzw8Myk7CiAgICAgICAgICAgICBvZmZzZXRzW2ldID0gY2FwLXRvdF9ib29zdDsKICAgICAgICAg
ICAgIHRvdF9ib29zdCA9IGNhcDsKICAgICAgICAgICAgIGJyZWFrOwpAQCAtMTE5Myw3ICsxMjM5
LDcgQEAgc3RhdGljIGludCBjb21wdXRlX3Zicihjb25zdCBDRUxUTW9kZSAqbW9kZSwgQW5hbHlz
aXNJbmZvICphbmFseXNpcywgb3B1c19pbnQzMgogICAgICAgaW50IExNLCBvcHVzX2ludDMyIGJp
dHJhdGUsIGludCBsYXN0Q29kZWRCYW5kcywgaW50IEMsIGludCBpbnRlbnNpdHksCiAgICAgICBp
bnQgY29uc3RyYWluZWRfdmJyLCBvcHVzX3ZhbDE2IHN0ZXJlb19zYXZpbmcsIGludCB0b3RfYm9v
c3QsCiAgICAgICBvcHVzX3ZhbDE2IHRmX2VzdGltYXRlLCBpbnQgcGl0Y2hfY2hhbmdlLCBvcHVz
X3ZhbDE2IG1heERlcHRoLAotICAgICAgaW50IHZhcmlhYmxlX2R1cmF0aW9uLCBpbnQgbGZlLCBp
bnQgaGFzX3N1cnJvdW5kX21hc2ssIG9wdXNfdmFsMTYgc3Vycm91bmRfbWFza2luZywKKyAgICAg
IGludCBsZmUsIGludCBoYXNfc3Vycm91bmRfbWFzaywgb3B1c192YWwxNiBzdXJyb3VuZF9tYXNr
aW5nLAogICAgICAgb3B1c192YWwxNiB0ZW1wb3JhbF92YnIpCiB7CiAgICAvKiBUaGUgdGFyZ2V0
IHJhdGUgaW4gOHRoIGJpdHMgcGVyIGZyYW1lICovCkBAIC0xMjM1LDEwICsxMjgxLDkgQEAgc3Rh
dGljIGludCBjb21wdXRlX3Zicihjb25zdCBDRUxUTW9kZSAqbW9kZSwgQW5hbHlzaXNJbmZvICph
bmFseXNpcywgb3B1c19pbnQzMgogICAgICAgICAgICAgICAgICAgICAgIFNIUjMyKE1VTFQxNl8x
NihzdGVyZW9fc2F2aW5nLVFDT05TVDE2KDAuMWYsOCksKGNvZGVkX3N0ZXJlb19kb2Y8PEJJVFJF
UykpLDgpKTsKICAgIH0KICAgIC8qIEJvb3N0IHRoZSByYXRlIGFjY29yZGluZyB0byBkeW5hbGxv
YyAobWludXMgdGhlIGR5bmFsbG9jIGF2ZXJhZ2UgZm9yIGNhbGlicmF0aW9uKS4gKi8KLSAgIHRh
cmdldCArPSB0b3RfYm9vc3QtKDE2PDxMTSk7CisgICB0YXJnZXQgKz0gdG90X2Jvb3N0LSgxOTw8
TE0pOwogICAgLyogQXBwbHkgdHJhbnNpZW50IGJvb3N0LCBjb21wZW5zYXRpbmcgZm9yIGF2ZXJh
Z2UgYm9vc3QuICovCi0gICB0Zl9jYWxpYnJhdGlvbiA9IHZhcmlhYmxlX2R1cmF0aW9uPT1PUFVT
X0ZSQU1FU0laRV9WQVJJQUJMRSA/Ci0gICAgICAgICAgICAgICAgICAgIFFDT05TVDE2KDAuMDJm
LDE0KSA6IFFDT05TVDE2KDAuMDRmLDE0KTsKKyAgIHRmX2NhbGlicmF0aW9uID0gUUNPTlNUMTYo
MC4wNDRmLDE0KTsKICAgIHRhcmdldCArPSAob3B1c19pbnQzMilTSEwzMihNVUxUMTZfMzJfUTE1
KHRmX2VzdGltYXRlLXRmX2NhbGlicmF0aW9uLCB0YXJnZXQpLDEpOwogCiAjaWZuZGVmIERJU0FC
TEVfRkxPQVRfQVBJCkBAIC0xMjQ5LDcgKzEyOTQsNyBAQCBzdGF0aWMgaW50IGNvbXB1dGVfdmJy
KGNvbnN0IENFTFRNb2RlICptb2RlLCBBbmFseXNpc0luZm8gKmFuYWx5c2lzLCBvcHVzX2ludDMy
CiAgICAgICBmbG9hdCB0b25hbDsKIAogICAgICAgLyogVG9uYWxpdHkgYm9vc3QgKGNvbXBlbnNh
dGluZyBmb3IgdGhlIGF2ZXJhZ2UpLiAqLwotICAgICAgdG9uYWwgPSBNQVgxNigwLmYsYW5hbHlz
aXMtPnRvbmFsaXR5LS4xNWYpLTAuMDlmOworICAgICAgdG9uYWwgPSBNQVgxNigwLmYsYW5hbHlz
aXMtPnRvbmFsaXR5LS4xNWYpLTAuMTJmOwogICAgICAgdG9uYWxfdGFyZ2V0ID0gdGFyZ2V0ICsg
KG9wdXNfaW50MzIpKChjb2RlZF9iaW5zPDxCSVRSRVMpKjEuMmYqdG9uYWwpOwogICAgICAgaWYg
KHBpdGNoX2NoYW5nZSkKICAgICAgICAgIHRvbmFsX3RhcmdldCArPSAgKG9wdXNfaW50MzIpKChj
b2RlZF9iaW5zPDxCSVRSRVMpKi44Zik7CkBAIC0xMjc5LDIxICsxMzI0LDExIEBAIHN0YXRpYyBp
bnQgY29tcHV0ZV92YnIoY29uc3QgQ0VMVE1vZGUgKm1vZGUsIEFuYWx5c2lzSW5mbyAqYW5hbHlz
aXMsIG9wdXNfaW50MzIKICAgICAgIC8qcHJpbnRmKCIlZiAlZFxuIiwgbWF4RGVwdGgsIGZsb29y
X2RlcHRoKTsqLwogICAgfQogCi0gICBpZiAoKCFoYXNfc3Vycm91bmRfbWFza3x8bGZlKSAmJiAo
Y29uc3RyYWluZWRfdmJyIHx8IGJpdHJhdGU8NjQwMDApKQorICAgLyogTWFrZSBWQlIgbGVzcyBh
Z2dyZXNzaXZlIGZvciBjb25zdHJhaW5lZCBWQlIgYmVjYXVzZSB3ZSBjYW4ndCBrZWVwIGEgaGln
aGVyIGJpdHJhdGUKKyAgICAgIGZvciBsb25nLiBOZWVkcyB0dW5pbmcuICovCisgICBpZiAoKCFo
YXNfc3Vycm91bmRfbWFza3x8bGZlKSAmJiBjb25zdHJhaW5lZF92YnIpCiAgICB7Ci0gICAgICBv
cHVzX3ZhbDE2IHJhdGVfZmFjdG9yID0gUTE1T05FOwotICAgICAgaWYgKGJpdHJhdGUgPCA2NDAw
MCkKLSAgICAgIHsKLSNpZmRlZiBGSVhFRF9QT0lOVAotICAgICAgICAgcmF0ZV9mYWN0b3IgPSBN
QVgxNigwLChiaXRyYXRlLTMyMDAwKSk7Ci0jZWxzZQotICAgICAgICAgcmF0ZV9mYWN0b3IgPSBN
QVgxNigwLCgxLmYvMzI3NjgpKihiaXRyYXRlLTMyMDAwKSk7Ci0jZW5kaWYKLSAgICAgIH0KLSAg
ICAgIGlmIChjb25zdHJhaW5lZF92YnIpCi0gICAgICAgICByYXRlX2ZhY3RvciA9IE1JTjE2KHJh
dGVfZmFjdG9yLCBRQ09OU1QxNigwLjY3ZiwgMTUpKTsKLSAgICAgIHRhcmdldCA9IGJhc2VfdGFy
Z2V0ICsgKG9wdXNfaW50MzIpTVVMVDE2XzMyX1ExNShyYXRlX2ZhY3RvciwgdGFyZ2V0LWJhc2Vf
dGFyZ2V0KTsKLQorICAgICAgdGFyZ2V0ID0gYmFzZV90YXJnZXQgKyAob3B1c19pbnQzMilNVUxU
MTZfMzJfUTE1KFFDT05TVDE2KDAuNjdmLCAxNSksIHRhcmdldC1iYXNlX3RhcmdldCk7CiAgICB9
CiAKICAgIGlmICghaGFzX3N1cnJvdW5kX21hc2sgJiYgdGZfZXN0aW1hdGUgPCBRQ09OU1QxNigu
MmYsIDE0KSkKQEAgLTEzMzEsNyArMTM2Niw3IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENF
TFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAg
IFZBUkRFQ0woaW50LCB0Zl9yZXMpOwogICAgVkFSREVDTCh1bnNpZ25lZCBjaGFyLCBjb2xsYXBz
ZV9tYXNrcyk7CiAgICBjZWx0X3NpZyAqcHJlZmlsdGVyX21lbTsKLSAgIG9wdXNfdmFsMTYgKm9s
ZEJhbmRFLCAqb2xkTG9nRSwgKm9sZExvZ0UyOworICAgb3B1c192YWwxNiAqb2xkQmFuZEUsICpv
bGRMb2dFLCAqb2xkTG9nRTIsICplbmVyZ3lFcnJvcjsKICAgIGludCBzaG9ydEJsb2Nrcz0wOwog
ICAgaW50IGlzVHJhbnNpZW50PTA7CiAgICBjb25zdCBpbnQgQ0MgPSBzdC0+Y2hhbm5lbHM7CkBA
IC0xMzQzLDcgKzEzNzgsNiBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAq
IE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBpbnQgZW5kOwog
ICAgaW50IGVmZkVuZDsKICAgIGludCBjb2RlZEJhbmRzOwotICAgaW50IHRmX3N1bTsKICAgIGlu
dCBhbGxvY190cmltOwogICAgaW50IHBpdGNoX2luZGV4PUNPTUJGSUxURVJfTUlOUEVSSU9EOwog
ICAgb3B1c192YWwxNiBnYWluMSA9IDA7CkBAIC0xMzU1LDYgKzEzODksNyBAQCBpbnQgY2VsdF9l
bmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNf
dmFsMTYgKiBwY20sCiAgICBvcHVzX2ludDMyIHRvdGFsX2Jvb3N0OwogICAgb3B1c19pbnQzMiBi
YWxhbmNlOwogICAgb3B1c19pbnQzMiB0ZWxsOworICAgb3B1c19pbnQzMiB0ZWxsMF9mcmFjOwog
ICAgaW50IHByZWZpbHRlcl90YXBzZXQ9MDsKICAgIGludCBwZl9vbjsKICAgIGludCBhbnRpX2Nv
bGxhcHNlX3JzdjsKQEAgLTEzNzYsNyArMTQxMSw5IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2Vj
KENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwK
ICAgIG9wdXNfdmFsMTYgc3Vycm91bmRfbWFza2luZz0wOwogICAgb3B1c192YWwxNiB0ZW1wb3Jh
bF92YnI9MDsKICAgIG9wdXNfdmFsMTYgc3Vycm91bmRfdHJpbSA9IDA7Ci0gICBvcHVzX2ludDMy
IGVxdWl2X3JhdGUgPSA1MTAwMDA7CisgICBvcHVzX2ludDMyIGVxdWl2X3JhdGU7CisgICBpbnQg
aHlicmlkOworICAgaW50IHdlYWtfdHJhbnNpZW50ID0gMDsKICAgIFZBUkRFQ0wob3B1c192YWwx
Niwgc3Vycm91bmRfZHluYWxsb2MpOwogICAgQUxMT0NfU1RBQ0s7CiAKQEAgLTEzODYsNiArMTQy
Myw3IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklD
VCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgIGVCYW5kcyA9IG1vZGUtPmVCYW5kczsK
ICAgIHN0YXJ0ID0gc3QtPnN0YXJ0OwogICAgZW5kID0gc3QtPmVuZDsKKyAgIGh5YnJpZCA9IHN0
YXJ0ICE9IDA7CiAgICB0Zl9lc3RpbWF0ZSA9IDA7CiAgICBpZiAobmJDb21wcmVzc2VkQnl0ZXM8
MiB8fCBwY209PU5VTEwpCiAgICB7CkBAIC0xNDA5LDEyICsxNDQ3LDE0IEBAIGludCBjZWx0X2Vu
Y29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192
YWwxNiAqIHBjbSwKICAgIG9sZEJhbmRFID0gKG9wdXNfdmFsMTYqKShzdC0+aW5fbWVtK0NDKihv
dmVybGFwK0NPTUJGSUxURVJfTUFYUEVSSU9EKSk7CiAgICBvbGRMb2dFID0gb2xkQmFuZEUgKyBD
QypuYkVCYW5kczsKICAgIG9sZExvZ0UyID0gb2xkTG9nRSArIENDKm5iRUJhbmRzOworICAgZW5l
cmd5RXJyb3IgPSBvbGRMb2dFMiArIENDKm5iRUJhbmRzOwogCiAgICBpZiAoZW5jPT1OVUxMKQog
ICAgewotICAgICAgdGVsbD0xOworICAgICAgdGVsbDBfZnJhYz10ZWxsPTE7CiAgICAgICBuYkZp
bGxlZEJ5dGVzPTA7CiAgICB9IGVsc2UgeworICAgICAgdGVsbDBfZnJhYz10ZWxsPWVjX3RlbGxf
ZnJhYyhlbmMpOwogICAgICAgdGVsbD1lY190ZWxsKGVuYyk7CiAgICAgICBuYkZpbGxlZEJ5dGVz
PSh0ZWxsKzQpPj4zOwogICAgfQpAQCAtMTQ2NywxMCArMTUwNywxMSBAQCBpbnQgY2VsdF9lbmNv
ZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFs
MTYgKiBwY20sCiAgICAgICBpZiAoc3QtPmJpdHJhdGUhPU9QVVNfQklUUkFURV9NQVgpCiAgICAg
ICAgICBuYkNvbXByZXNzZWRCeXRlcyA9IElNQVgoMiwgSU1JTihuYkNvbXByZXNzZWRCeXRlcywK
ICAgICAgICAgICAgICAgICh0bXArNCptb2RlLT5GcykvKDgqbW9kZS0+RnMpLSEhc3QtPnNpZ25h
bGxpbmcpKTsKLSAgICAgIGVmZmVjdGl2ZUJ5dGVzID0gbmJDb21wcmVzc2VkQnl0ZXM7CisgICAg
ICBlZmZlY3RpdmVCeXRlcyA9IG5iQ29tcHJlc3NlZEJ5dGVzIC0gbmJGaWxsZWRCeXRlczsKICAg
IH0KKyAgIGVxdWl2X3JhdGUgPSAoKG9wdXNfaW50MzIpbmJDb21wcmVzc2VkQnl0ZXMqOCo1MCA+
PiAoMy1MTSkpIC0gKDQwKkMrMjApKigoNDAwPj5MTSkgLSA1MCk7CiAgICBpZiAoc3QtPmJpdHJh
dGUgIT0gT1BVU19CSVRSQVRFX01BWCkKLSAgICAgIGVxdWl2X3JhdGUgPSBzdC0+Yml0cmF0ZSAt
ICg0MCpDKzIwKSooKDQwMD4+TE0pIC0gNTApOworICAgICAgZXF1aXZfcmF0ZSA9IElNSU4oZXF1
aXZfcmF0ZSwgc3QtPmJpdHJhdGUgLSAoNDAqQysyMCkqKCg0MDA+PkxNKSAtIDUwKSk7CiAKICAg
IGlmIChlbmM9PU5VTEwpCiAgICB7CkBAIC0xNTU4LDggKzE1OTksOCBAQCBpbnQgY2VsdF9lbmNv
ZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFs
MTYgKiBwY20sCiAgICB7CiAgICAgICBpbnQgZW5hYmxlZDsKICAgICAgIGludCBxZzsKLSAgICAg
IGVuYWJsZWQgPSAoKHN0LT5sZmUmJm5iQXZhaWxhYmxlQnl0ZXM+MykgfHwgbmJBdmFpbGFibGVC
eXRlcz4xMipDKSAmJiBzdGFydD09MCAmJiAhc2lsZW5jZSAmJiAhc3QtPmRpc2FibGVfcGYKLSAg
ICAgICAgICAgICYmIHN0LT5jb21wbGV4aXR5ID49IDUgJiYgIShzdC0+Y29uc2VjX3RyYW5zaWVu
dCAmJiBMTSE9MyAmJiBzdC0+dmFyaWFibGVfZHVyYXRpb249PU9QVVNfRlJBTUVTSVpFX1ZBUklB
QkxFKTsKKyAgICAgIGVuYWJsZWQgPSAoKHN0LT5sZmUmJm5iQXZhaWxhYmxlQnl0ZXM+MykgfHwg
bmJBdmFpbGFibGVCeXRlcz4xMipDKSAmJiAhaHlicmlkICYmICFzaWxlbmNlICYmICFzdC0+ZGlz
YWJsZV9wZgorICAgICAgICAgICAgJiYgc3QtPmNvbXBsZXhpdHkgPj0gNTsKIAogICAgICAgcHJl
ZmlsdGVyX3RhcHNldCA9IHN0LT50YXBzZXRfZGVjaXNpb247CiAgICAgICBwZl9vbiA9IHJ1bl9w
cmVmaWx0ZXIoc3QsIGluLCBwcmVmaWx0ZXJfbWVtLCBDQywgTiwgcHJlZmlsdGVyX3RhcHNldCwg
JnBpdGNoX2luZGV4LCAmZ2FpbjEsICZxZywgZW5hYmxlZCwgbmJBdmFpbGFibGVCeXRlcyk7CkBA
IC0xNTY4LDcgKzE2MDksNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAq
IE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICAgICAgICBwaXRj
aF9jaGFuZ2UgPSAxOwogICAgICAgaWYgKHBmX29uPT0wKQogICAgICAgewotICAgICAgICAgaWYo
c3RhcnQ9PTAgJiYgdGVsbCsxNjw9dG90YWxfYml0cykKKyAgICAgICAgIGlmKCFoeWJyaWQgJiYg
dGVsbCsxNjw9dG90YWxfYml0cykKICAgICAgICAgICAgIGVjX2VuY19iaXRfbG9ncChlbmMsIDAs
IDEpOwogICAgICAgfSBlbHNlIHsKICAgICAgICAgIC8qVGhpcyBibG9jayBpcyBub3QgZ2F0ZWQg
YnkgYSB0b3RhbCBiaXRzIGNoZWNrIG9ubHkgYmVjYXVzZQpAQCAtMTU4OSw4ICsxNjMwLDEyIEBA
IGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwg
Y29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgIHNob3J0QmxvY2tzID0gMDsKICAgIGlmIChzdC0+
Y29tcGxleGl0eSA+PSAxICYmICFzdC0+bGZlKQogICAgeworICAgICAgLyogUmVkdWNlcyB0aGUg
bGlrZWxpaG9vZCBvZiBlbmVyZ3kgaW5zdGFiaWxpdHkgb24gZnJpY2F0aXZlcyBhdCBsb3cgYml0
cmF0ZQorICAgICAgICAgaW4gaHlicmlkIG1vZGUuIEl0IHNlZW1zIGxpa2Ugd2Ugc3RpbGwgd2Fu
dCB0byBoYXZlIHJlYWwgdHJhbnNpZW50cyBvbiB2b3dlbHMKKyAgICAgICAgIHRob3VnaCAoc21h
bGwgU0lMSyBxdWFudGl6YXRpb24gb2Zmc2V0IHZhbHVlKS4gKi8KKyAgICAgIGludCBhbGxvd193
ZWFrX3RyYW5zaWVudHMgPSBoeWJyaWQgJiYgZWZmZWN0aXZlQnl0ZXM8MTUgJiYgc3QtPnNpbGtf
aW5mby5vZmZzZXQgPj0gMTAwOwogICAgICAgaXNUcmFuc2llbnQgPSB0cmFuc2llbnRfYW5hbHlz
aXMoaW4sIE4rb3ZlcmxhcCwgQ0MsCi0gICAgICAgICAgICAmdGZfZXN0aW1hdGUsICZ0Zl9jaGFu
KTsKKyAgICAgICAgICAgICZ0Zl9lc3RpbWF0ZSwgJnRmX2NoYW4sIGFsbG93X3dlYWtfdHJhbnNp
ZW50cywgJndlYWtfdHJhbnNpZW50KTsKICAgIH0KICAgIGlmIChMTT4wICYmIGVjX3RlbGwoZW5j
KSszPD10b3RhbF9iaXRzKQogICAgewpAQCAtMTYxMCw3ICsxNjU1LDcgQEAgaW50IGNlbHRfZW5j
b2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3Zh
bDE2ICogcGNtLAogICAgaWYgKHNlY29uZE1kY3QpCiAgICB7CiAgICAgICBjb21wdXRlX21kY3Rz
KG1vZGUsIDAsIGluLCBmcmVxLCBDLCBDQywgTE0sIHN0LT51cHNhbXBsZSwgc3QtPmFyY2gpOwot
ICAgICAgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKG1vZGUsIGZyZXEsIGJhbmRFLCBlZmZFbmQsIEMs
IExNKTsKKyAgICAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhtb2RlLCBmcmVxLCBiYW5kRSwgZWZm
RW5kLCBDLCBMTSwgc3QtPmFyY2gpOwogICAgICAgYW1wMkxvZzIobW9kZSwgZWZmRW5kLCBlbmQs
IGJhbmRFLCBiYW5kTG9nRTIsIEMpOwogICAgICAgZm9yIChpPTA7aTxDKm5iRUJhbmRzO2krKykK
ICAgICAgICAgIGJhbmRMb2dFMltpXSArPSBIQUxGMTYoU0hMMTYoTE0sIERCX1NISUZUKSk7CkBA
IC0xNjE5LDcgKzE2NjQsNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAq
IE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBjb21wdXRlX21k
Y3RzKG1vZGUsIHNob3J0QmxvY2tzLCBpbiwgZnJlcSwgQywgQ0MsIExNLCBzdC0+dXBzYW1wbGUs
IHN0LT5hcmNoKTsKICAgIGlmIChDQz09MiYmQz09MSkKICAgICAgIHRmX2NoYW4gPSAwOwotICAg
Y29tcHV0ZV9iYW5kX2VuZXJnaWVzKG1vZGUsIGZyZXEsIGJhbmRFLCBlZmZFbmQsIEMsIExNKTsK
KyAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhtb2RlLCBmcmVxLCBiYW5kRSwgZWZmRW5kLCBDLCBM
TSwgc3QtPmFyY2gpOwogCiAgICBpZiAoc3QtPmxmZSkKICAgIHsKQEAgLTE2MzQsNyArMTY3OSw3
IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBz
dCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgIEFMTE9DKHN1cnJvdW5kX2R5bmFsbG9jLCBD
Km5iRUJhbmRzLCBvcHVzX3ZhbDE2KTsKICAgIE9QVVNfQ0xFQVIoc3Vycm91bmRfZHluYWxsb2Ms
IGVuZCk7CiAgICAvKiBUaGlzIGNvbXB1dGVzIGhvdyBtdWNoIG1hc2tpbmcgdGFrZXMgcGxhY2Ug
YmV0d2VlbiBzdXJyb3VuZCBjaGFubmVscyAqLwotICAgaWYgKHN0YXJ0PT0wJiZzdC0+ZW5lcmd5
X21hc2smJiFzdC0+bGZlKQorICAgaWYgKCFoeWJyaWQmJnN0LT5lbmVyZ3lfbWFzayYmIXN0LT5s
ZmUpCiAgICB7CiAgICAgICBpbnQgbWFza19lbmQ7CiAgICAgICBpbnQgbWlkYmFuZDsKQEAgLTE3
MzYsMTQgKzE3ODEsMTQgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBP
UFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogCiAgICAvKiBMYXN0IGNo
YW5jZSB0byBjYXRjaCBhbnkgdHJhbnNpZW50IHdlIG1pZ2h0IGhhdmUgbWlzc2VkIGluIHRoZQog
ICAgICAgdGltZS1kb21haW4gYW5hbHlzaXMgKi8KLSAgIGlmIChMTT4wICYmIGVjX3RlbGwoZW5j
KSszPD10b3RhbF9iaXRzICYmICFpc1RyYW5zaWVudCAmJiBzdC0+Y29tcGxleGl0eT49NSAmJiAh
c3QtPmxmZSkKKyAgIGlmIChMTT4wICYmIGVjX3RlbGwoZW5jKSszPD10b3RhbF9iaXRzICYmICFp
c1RyYW5zaWVudCAmJiBzdC0+Y29tcGxleGl0eT49NSAmJiAhc3QtPmxmZSAmJiAhaHlicmlkKQog
ICAgewogICAgICAgaWYgKHBhdGNoX3RyYW5zaWVudF9kZWNpc2lvbihiYW5kTG9nRSwgb2xkQmFu
ZEUsIG5iRUJhbmRzLCBzdGFydCwgZW5kLCBDKSkKICAgICAgIHsKICAgICAgICAgIGlzVHJhbnNp
ZW50ID0gMTsKICAgICAgICAgIHNob3J0QmxvY2tzID0gTTsKICAgICAgICAgIGNvbXB1dGVfbWRj
dHMobW9kZSwgc2hvcnRCbG9ja3MsIGluLCBmcmVxLCBDLCBDQywgTE0sIHN0LT51cHNhbXBsZSwg
c3QtPmFyY2gpOwotICAgICAgICAgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKG1vZGUsIGZyZXEsIGJh
bmRFLCBlZmZFbmQsIEMsIExNKTsKKyAgICAgICAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhtb2Rl
LCBmcmVxLCBiYW5kRSwgZWZmRW5kLCBDLCBMTSwgc3QtPmFyY2gpOwogICAgICAgICAgYW1wMkxv
ZzIobW9kZSwgZWZmRW5kLCBlbmQsIGJhbmRFLCBiYW5kTG9nRSwgQyk7CiAgICAgICAgICAvKiBD
b21wZW5zYXRlIGZvciB0aGUgc2NhbGluZyBvZiBzaG9ydCB2cyBsb25nIG1kY3RzICovCiAgICAg
ICAgICBmb3IgKGk9MDtpPEMqbmJFQmFuZHM7aSsrKQpAQCAtMTc2MiwyOSArMTgwNyw0NyBAQCBp
bnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNv
bnN0IG9wdXNfdmFsMTYgKiBwY20sCiAKICAgIEFMTE9DKHRmX3JlcywgbmJFQmFuZHMsIGludCk7
CiAgICAvKiBEaXNhYmxlIHZhcmlhYmxlIHRmIHJlc29sdXRpb24gZm9yIGh5YnJpZCBhbmQgYXQg
dmVyeSBsb3cgYml0cmF0ZSAqLwotICAgaWYgKGVmZmVjdGl2ZUJ5dGVzPj0xNSpDICYmIHN0YXJ0
PT0wICYmIHN0LT5jb21wbGV4aXR5Pj0yICYmICFzdC0+bGZlKQorICAgaWYgKGVmZmVjdGl2ZUJ5
dGVzPj0xNSpDICYmICFoeWJyaWQgJiYgc3QtPmNvbXBsZXhpdHk+PTIgJiYgIXN0LT5sZmUpCiAg
ICB7CiAgICAgICBpbnQgbGFtYmRhOwotICAgICAgaWYgKGVmZmVjdGl2ZUJ5dGVzPDQwKQotICAg
ICAgICAgbGFtYmRhID0gMTI7Ci0gICAgICBlbHNlIGlmIChlZmZlY3RpdmVCeXRlczw2MCkKLSAg
ICAgICAgIGxhbWJkYSA9IDY7Ci0gICAgICBlbHNlIGlmIChlZmZlY3RpdmVCeXRlczwxMDApCi0g
ICAgICAgICBsYW1iZGEgPSA0OwotICAgICAgZWxzZQotICAgICAgICAgbGFtYmRhID0gMzsKLSAg
ICAgIGxhbWJkYSo9MjsKLSAgICAgIHRmX3NlbGVjdCA9IHRmX2FuYWx5c2lzKG1vZGUsIGVmZkVu
ZCwgaXNUcmFuc2llbnQsIHRmX3JlcywgbGFtYmRhLCBYLCBOLCBMTSwgJnRmX3N1bSwgdGZfZXN0
aW1hdGUsIHRmX2NoYW4pOworICAgICAgbGFtYmRhID0gSU1BWCg1LCAxMjgwL2VmZmVjdGl2ZUJ5
dGVzICsgMik7CisgICAgICB0Zl9zZWxlY3QgPSB0Zl9hbmFseXNpcyhtb2RlLCBlZmZFbmQsIGlz
VHJhbnNpZW50LCB0Zl9yZXMsIGxhbWJkYSwgWCwgTiwgTE0sIHRmX2VzdGltYXRlLCB0Zl9jaGFu
KTsKICAgICAgIGZvciAoaT1lZmZFbmQ7aTxlbmQ7aSsrKQogICAgICAgICAgdGZfcmVzW2ldID0g
dGZfcmVzW2VmZkVuZC0xXTsKKyAgIH0gZWxzZSBpZiAoaHlicmlkICYmIHdlYWtfdHJhbnNpZW50
KQorICAgeworICAgICAgLyogRm9yIHdlYWsgdHJhbnNpZW50cywgd2UgcmVseSBvbiB0aGUgZmFj
dCB0aGF0IGltcHJvdmluZyB0aW1lIHJlc29sdXRpb24gdXNpbmcKKyAgICAgICAgIFRGIG9uIGEg
bG9uZyB3aW5kb3cgaXMgaW1wZXJmZWN0IGFuZCB3aWxsIG5vdCByZXN1bHQgaW4gYW4gZW5lcmd5
IGNvbGxhcHNlIGF0CisgICAgICAgICBsb3cgYml0cmF0ZS4gKi8KKyAgICAgIGZvciAoaT0wO2k8
ZW5kO2krKykKKyAgICAgICAgIHRmX3Jlc1tpXSA9IDE7CisgICAgICB0Zl9zZWxlY3Q9MDsKKyAg
IH0gZWxzZSBpZiAoaHlicmlkICYmIGVmZmVjdGl2ZUJ5dGVzPDE1KQorICAgeworICAgICAgLyog
Rm9yIGxvdyBiaXRyYXRlIGh5YnJpZCwgd2UgZm9yY2UgdGVtcG9yYWwgcmVzb2x1dGlvbiB0byA1
IG1zIHJhdGhlciB0aGFuIDIuNSBtcy4gKi8KKyAgICAgIGZvciAoaT0wO2k8ZW5kO2krKykKKyAg
ICAgICAgIHRmX3Jlc1tpXSA9IDA7CisgICAgICB0Zl9zZWxlY3Q9aXNUcmFuc2llbnQ7CiAgICB9
IGVsc2UgewotICAgICAgdGZfc3VtID0gMDsKICAgICAgIGZvciAoaT0wO2k8ZW5kO2krKykKICAg
ICAgICAgIHRmX3Jlc1tpXSA9IGlzVHJhbnNpZW50OwogICAgICAgdGZfc2VsZWN0PTA7CiAgICB9
CiAKICAgIEFMTE9DKGVycm9yLCBDKm5iRUJhbmRzLCBvcHVzX3ZhbDE2KTsKKyAgIGM9MDsKKyAg
IGRvIHsKKyAgICAgIGZvciAoaT1zdGFydDtpPGVuZDtpKyspCisgICAgICB7CisgICAgICAgICAv
KiBXaGVuIHRoZSBlbmVyZ3kgaXMgc3RhYmxlLCBzbGlnaHRseSBiaWFzIGVuZXJneSBxdWFudGl6
YXRpb24gdG93YXJkcworICAgICAgICAgICAgdGhlIHByZXZpb3VzIGVycm9yIHRvIG1ha2UgdGhl
IGdhaW4gbW9yZSBzdGFibGUgKGEgY29uc3RhbnQgb2Zmc2V0IGlzCisgICAgICAgICAgICBiZXR0
ZXIgdGhhbiBmbHVjdHVhdGlvbnMpLiAqLworICAgICAgICAgaWYgKEFCUzMyKFNVQjMyKGJhbmRM
b2dFW2krYypuYkVCYW5kc10sIG9sZEJhbmRFW2krYypuYkVCYW5kc10pKSA8IFFDT05TVDE2KDIu
ZiwgREJfU0hJRlQpKQorICAgICAgICAgeworICAgICAgICAgICAgYmFuZExvZ0VbaStjKm5iRUJh
bmRzXSAtPSBNVUxUMTZfMTZfUTE1KGVuZXJneUVycm9yW2krYypuYkVCYW5kc10sIFFDT05TVDE2
KDAuMjVmLCAxNSkpOworICAgICAgICAgfQorICAgICAgfQorICAgfSB3aGlsZSAoKytjIDwgQyk7
CiAgICBxdWFudF9jb2Fyc2VfZW5lcmd5KG1vZGUsIHN0YXJ0LCBlbmQsIGVmZkVuZCwgYmFuZExv
Z0UsCiAgICAgICAgICBvbGRCYW5kRSwgdG90YWxfYml0cywgZXJyb3IsIGVuYywKICAgICAgICAg
IEMsIExNLCBuYkF2YWlsYWJsZUJ5dGVzLCBzdC0+Zm9yY2VfaW50cmEsCkBAIC0xNzk4LDcgKzE4
NjEsMTUgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RS
SUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgICAgewogICAgICAgICAgc3QtPnRh
cHNldF9kZWNpc2lvbiA9IDA7CiAgICAgICAgICBzdC0+c3ByZWFkX2RlY2lzaW9uID0gU1BSRUFE
X05PUk1BTDsKLSAgICAgIH0gZWxzZSBpZiAoc2hvcnRCbG9ja3MgfHwgc3QtPmNvbXBsZXhpdHkg
PCAzIHx8IG5iQXZhaWxhYmxlQnl0ZXMgPCAxMCpDIHx8IHN0YXJ0ICE9IDApCisgICAgICB9IGVs
c2UgaWYgKGh5YnJpZCkKKyAgICAgIHsKKyAgICAgICAgIGlmIChzdC0+Y29tcGxleGl0eSA9PSAw
KQorICAgICAgICAgICAgc3QtPnNwcmVhZF9kZWNpc2lvbiA9IFNQUkVBRF9OT05FOworICAgICAg
ICAgZWxzZSBpZiAoaXNUcmFuc2llbnQpCisgICAgICAgICAgICBzdC0+c3ByZWFkX2RlY2lzaW9u
ID0gU1BSRUFEX05PUk1BTDsKKyAgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHN0LT5zcHJlYWRf
ZGVjaXNpb24gPSBTUFJFQURfQUdHUkVTU0lWRTsKKyAgICAgIH0gZWxzZSBpZiAoc2hvcnRCbG9j
a3MgfHwgc3QtPmNvbXBsZXhpdHkgPCAzIHx8IG5iQXZhaWxhYmxlQnl0ZXMgPCAxMCpDKQogICAg
ICAgewogICAgICAgICAgaWYgKHN0LT5jb21wbGV4aXR5ID09IDApCiAgICAgICAgICAgICBzdC0+
c3ByZWFkX2RlY2lzaW9uID0gU1BSRUFEX05PTkU7CkBAIC0xODM0LDcgKzE5MDUsNyBAQCBpbnQg
Y2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0
IG9wdXNfdmFsMTYgKiBwY20sCiAKICAgIG1heERlcHRoID0gZHluYWxsb2NfYW5hbHlzaXMoYmFu
ZExvZ0UsIGJhbmRMb2dFMiwgbmJFQmFuZHMsIHN0YXJ0LCBlbmQsIEMsIG9mZnNldHMsCiAgICAg
ICAgICBzdC0+bHNiX2RlcHRoLCBtb2RlLT5sb2dOLCBpc1RyYW5zaWVudCwgc3QtPnZiciwgc3Qt
PmNvbnN0cmFpbmVkX3ZiciwKLSAgICAgICAgIGVCYW5kcywgTE0sIGVmZmVjdGl2ZUJ5dGVzLCAm
dG90X2Jvb3N0LCBzdC0+bGZlLCBzdXJyb3VuZF9keW5hbGxvYyk7CisgICAgICAgICBlQmFuZHMs
IExNLCBlZmZlY3RpdmVCeXRlcywgJnRvdF9ib29zdCwgc3QtPmxmZSwgc3Vycm91bmRfZHluYWxs
b2MsICZzdC0+YW5hbHlzaXMpOwogICAgLyogRm9yIExGRSwgZXZlcnl0aGluZyBpbnRlcmVzdGlu
ZyBpcyBpbiB0aGUgZmlyc3QgYmFuZCAqLwogICAgaWYgKHN0LT5sZmUpCiAgICAgICBvZmZzZXRz
WzBdID0gSU1JTig4LCBlZmZlY3RpdmVCeXRlcy8zKTsKQEAgLTE4OTYsMTIgKzE5NjcsMTUgQEAg
aW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBj
b25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgYWxsb2NfdHJpbSA9IDU7CiAgICBpZiAodGVsbCso
Njw8QklUUkVTKSA8PSB0b3RhbF9iaXRzIC0gdG90YWxfYm9vc3QpCiAgICB7Ci0gICAgICBpZiAo
c3QtPmxmZSkKKyAgICAgIGlmIChzdGFydCA+IDAgfHwgc3QtPmxmZSkKKyAgICAgIHsKKyAgICAg
ICAgIHN0LT5zdGVyZW9fc2F2aW5nID0gMDsKICAgICAgICAgIGFsbG9jX3RyaW0gPSA1OwotICAg
ICAgZWxzZQorICAgICAgfSBlbHNlIHsKICAgICAgICAgIGFsbG9jX3RyaW0gPSBhbGxvY190cmlt
X2FuYWx5c2lzKG1vZGUsIFgsIGJhbmRMb2dFLAogICAgICAgICAgICAgZW5kLCBMTSwgQywgTiwg
JnN0LT5hbmFseXNpcywgJnN0LT5zdGVyZW9fc2F2aW5nLCB0Zl9lc3RpbWF0ZSwKLSAgICAgICAg
ICAgIHN0LT5pbnRlbnNpdHksIHN1cnJvdW5kX3RyaW0sIHN0LT5hcmNoKTsKKyAgICAgICAgICAg
IHN0LT5pbnRlbnNpdHksIHN1cnJvdW5kX3RyaW0sIGVxdWl2X3JhdGUsIHN0LT5hcmNoKTsKKyAg
ICAgIH0KICAgICAgIGVjX2VuY19pY2RmKGVuYywgYWxsb2NfdHJpbSwgdHJpbV9pY2RmLCA3KTsK
ICAgICAgIHRlbGwgPSBlY190ZWxsX2ZyYWMoZW5jKTsKICAgIH0KQEAgLTE5MTksMTcgKzE5OTMs
MzYgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNU
IHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgICAvKiBEb24ndCBhdHRlbXB0IHRvIHVz
ZSBtb3JlIHRoYW4gNTEwIGtiL3MsIGV2ZW4gZm9yIGZyYW1lcyBzbWFsbGVyIHRoYW4gMjAgbXMu
CiAgICAgICAgIFRoZSBDRUxUIGFsbG9jYXRvciB3aWxsIGp1c3Qgbm90IGJlIGFibGUgdG8gdXNl
IG1vcmUgdGhhbiB0aGF0IGFueXdheS4gKi8KICAgICAgbmJDb21wcmVzc2VkQnl0ZXMgPSBJTUlO
KG5iQ29tcHJlc3NlZEJ5dGVzLDEyNzU+PigzLUxNKSk7Ci0gICAgIGJhc2VfdGFyZ2V0ID0gdmJy
X3JhdGUgLSAoKDQwKkMrMjApPDxCSVRSRVMpOworICAgICBpZiAoIWh5YnJpZCkKKyAgICAgewor
ICAgICAgICBiYXNlX3RhcmdldCA9IHZicl9yYXRlIC0gKCg0MCpDKzIwKTw8QklUUkVTKTsKKyAg
ICAgfSBlbHNlIHsKKyAgICAgICAgYmFzZV90YXJnZXQgPSBJTUFYKDAsIHZicl9yYXRlIC0gKCg5
KkMrNCk8PEJJVFJFUykpOworICAgICB9CiAKICAgICAgaWYgKHN0LT5jb25zdHJhaW5lZF92YnIp
CiAgICAgICAgIGJhc2VfdGFyZ2V0ICs9IChzdC0+dmJyX29mZnNldD4+bG1fZGlmZik7CiAKLSAg
ICAgdGFyZ2V0ID0gY29tcHV0ZV92YnIobW9kZSwgJnN0LT5hbmFseXNpcywgYmFzZV90YXJnZXQs
IExNLCBlcXVpdl9yYXRlLAorICAgICBpZiAoIWh5YnJpZCkKKyAgICAgeworICAgICAgICB0YXJn
ZXQgPSBjb21wdXRlX3Zicihtb2RlLCAmc3QtPmFuYWx5c2lzLCBiYXNlX3RhcmdldCwgTE0sIGVx
dWl2X3JhdGUsCiAgICAgICAgICAgIHN0LT5sYXN0Q29kZWRCYW5kcywgQywgc3QtPmludGVuc2l0
eSwgc3QtPmNvbnN0cmFpbmVkX3ZiciwKICAgICAgICAgICAgc3QtPnN0ZXJlb19zYXZpbmcsIHRv
dF9ib29zdCwgdGZfZXN0aW1hdGUsIHBpdGNoX2NoYW5nZSwgbWF4RGVwdGgsCi0gICAgICAgICAg
IHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgc3QtPmxmZSwgc3QtPmVuZXJneV9tYXNrIT1OVUxMLCBz
dXJyb3VuZF9tYXNraW5nLAorICAgICAgICAgICBzdC0+bGZlLCBzdC0+ZW5lcmd5X21hc2shPU5V
TEwsIHN1cnJvdW5kX21hc2tpbmcsCiAgICAgICAgICAgIHRlbXBvcmFsX3Zicik7Ci0KKyAgICAg
fSBlbHNlIHsKKyAgICAgICAgdGFyZ2V0ID0gYmFzZV90YXJnZXQ7CisgICAgICAgIC8qIFRvbmFs
IGZyYW1lcyAob2Zmc2V0PDEwMCkgbmVlZCBtb3JlIGJpdHMgdGhhbiBub2lzeSAob2Zmc2V0PjEw
MCkgb25lcy4gKi8KKyAgICAgICAgaWYgKHN0LT5zaWxrX2luZm8ub2Zmc2V0IDwgMTAwKSB0YXJn
ZXQgKz0gMTIgPDwgQklUUkVTID4+ICgzLUxNKTsKKyAgICAgICAgaWYgKHN0LT5zaWxrX2luZm8u
b2Zmc2V0ID4gMTAwKSB0YXJnZXQgLT0gMTggPDwgQklUUkVTID4+ICgzLUxNKTsKKyAgICAgICAg
LyogQm9vc3RpbmcgYml0cmF0ZSBvbiB0cmFuc2llbnRzIGFuZCB2b3dlbHMgd2l0aCBzaWduaWZp
Y2FudCB0ZW1wb3JhbAorICAgICAgICAgICBzcGlrZXMuICovCisgICAgICAgIHRhcmdldCArPSAo
b3B1c19pbnQzMilNVUxUMTZfMTZfUTE0KHRmX2VzdGltYXRlLVFDT05TVDE2KC4yNWYsMTQpLCAo
NTA8PEJJVFJFUykpOworICAgICAgICAvKiBJZiB3ZSBoYXZlIGEgc3Ryb25nIHRyYW5zaWVudCwg
bGV0J3MgbWFrZSBzdXJlIGl0IGhhcyBlbm91Z2ggYml0cyB0byBjb2RlCisgICAgICAgICAgIHRo
ZSBmaXJzdCB0d28gYmFuZHMsIHNvIHRoYXQgaXQgY2FuIHVzZSBmb2xkaW5nIHJhdGhlciB0aGFu
IG5vaXNlLiAqLworICAgICAgICBpZiAodGZfZXN0aW1hdGUgPiBRQ09OU1QxNiguN2YsMTQpKQor
ICAgICAgICAgICB0YXJnZXQgPSBJTUFYKHRhcmdldCwgNTA8PEJJVFJFUyk7CisgICAgIH0KICAg
ICAgLyogVGhlIGN1cnJlbnQgb2Zmc2V0IGlzIHJlbW92ZWQgZnJvbSB0aGUgdGFyZ2V0IGFuZCB0
aGUgc3BhY2UgdXNlZAogICAgICAgICBzbyBmYXIgaXMgYWRkZWQqLwogICAgICB0YXJnZXQ9dGFy
Z2V0K3RlbGw7CkBAIC0xOTM3LDExICsyMDMwLDE2IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2Vj
KENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwK
ICAgICAgICAgIHJlc3VsdCBpbiB0aGUgZW5jb2RlciBydW5uaW5nIG91dCBvZiBiaXRzLgogICAg
ICAgICBUaGUgbWFyZ2luIG9mIDIgYnl0ZXMgZW5zdXJlcyB0aGF0IG5vbmUgb2YgdGhlIGJ1c3Qt
cHJldmVudGlvbiBsb2dpYwogICAgICAgICAgaW4gdGhlIGRlY29kZXIgd2lsbCBoYXZlIHRyaWdn
ZXJlZCBzbyBmYXIuICovCi0gICAgIG1pbl9hbGxvd2VkID0gKCh0ZWxsK3RvdGFsX2Jvb3N0Kygx
PDwoQklUUkVTKzMpKS0xKT4+KEJJVFJFUyszKSkgKyAyIC0gbmJGaWxsZWRCeXRlczsKKyAgICAg
bWluX2FsbG93ZWQgPSAoKHRlbGwrdG90YWxfYm9vc3QrKDE8PChCSVRSRVMrMykpLTEpPj4oQklU
UkVTKzMpKSArIDI7CisgICAgIC8qIFRha2UgaW50byBhY2NvdW50IHRoZSAzNyBiaXRzIHdlIG5l
ZWQgdG8gaGF2ZSBsZWZ0IGluIHRoZSBwYWNrZXQgdG8KKyAgICAgICAgc2lnbmFsIGEgcmVkdW5k
YW50IGZyYW1lIGluIGh5YnJpZCBtb2RlLiBDcmVhdGluZyBhIHNob3J0ZXIgcGFja2V0IHdvdWxk
CisgICAgICAgIGNyZWF0ZSBhbiBlbnRyb3B5IGNvZGVyIGRlc3luYy4gKi8KKyAgICAgaWYgKGh5
YnJpZCkKKyAgICAgICAgbWluX2FsbG93ZWQgPSBJTUFYKG1pbl9hbGxvd2VkLCAodGVsbDBfZnJh
YysoMzc8PEJJVFJFUykrdG90YWxfYm9vc3QrKDE8PChCSVRSRVMrMykpLTEpPj4oQklUUkVTKzMp
KTsKIAogICAgICBuYkF2YWlsYWJsZUJ5dGVzID0gKHRhcmdldCsoMTw8KEJJVFJFUysyKSkpPj4o
QklUUkVTKzMpOwogICAgICBuYkF2YWlsYWJsZUJ5dGVzID0gSU1BWChtaW5fYWxsb3dlZCxuYkF2
YWlsYWJsZUJ5dGVzKTsKLSAgICAgbmJBdmFpbGFibGVCeXRlcyA9IElNSU4obmJDb21wcmVzc2Vk
Qnl0ZXMsbmJBdmFpbGFibGVCeXRlcytuYkZpbGxlZEJ5dGVzKSAtIG5iRmlsbGVkQnl0ZXM7Cisg
ICAgIG5iQXZhaWxhYmxlQnl0ZXMgPSBJTUlOKG5iQ29tcHJlc3NlZEJ5dGVzLG5iQXZhaWxhYmxl
Qnl0ZXMpOwogCiAgICAgIC8qIEJ5IGhvdyBtdWNoIGRpZCB3ZSAibWlzcyIgdGhlIHRhcmdldCBv
biB0aGF0IGZyYW1lICovCiAgICAgIGRlbHRhID0gdGFyZ2V0IC0gdmJyX3JhdGU7CkBAIC0xOTg4
LDcgKzIwODYsNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNf
UkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICAgICAgIHN0LT52YnJfcmVz
ZXJ2b2lyID0gMDsKICAgICAgICAgLypwcmludGYgKCIrJWRcbiIsIGFkanVzdCk7Ki8KICAgICAg
fQotICAgICBuYkNvbXByZXNzZWRCeXRlcyA9IElNSU4obmJDb21wcmVzc2VkQnl0ZXMsbmJBdmFp
bGFibGVCeXRlcytuYkZpbGxlZEJ5dGVzKTsKKyAgICAgbmJDb21wcmVzc2VkQnl0ZXMgPSBJTUlO
KG5iQ29tcHJlc3NlZEJ5dGVzLG5iQXZhaWxhYmxlQnl0ZXMpOwogICAgICAvKnByaW50ZigiJWRc
biIsIG5iQ29tcHJlc3NlZEJ5dGVzKjUwKjgpOyovCiAgICAgIC8qIFRoaXMgbW92ZXMgdGhlIHJh
dyBiaXRzIHRvIHRha2UgaW50byBhY2NvdW50IHRoZSBuZXcgY29tcHJlc3NlZCBzaXplICovCiAg
ICAgIGVjX2VuY19zaHJpbmsoZW5jLCBuYkNvbXByZXNzZWRCeXRlcyk7CkBAIC0yMDM4LDcgKzIx
MzYsNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJ
Q1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBxdWFudF9hbGxfYmFuZHMoMSwgbW9k
ZSwgc3RhcnQsIGVuZCwgWCwgQz09MiA/IFgrTiA6IE5VTEwsIGNvbGxhcHNlX21hc2tzLAogICAg
ICAgICAgYmFuZEUsIHB1bHNlcywgc2hvcnRCbG9ja3MsIHN0LT5zcHJlYWRfZGVjaXNpb24sCiAg
ICAgICAgICBkdWFsX3N0ZXJlbywgc3QtPmludGVuc2l0eSwgdGZfcmVzLCBuYkNvbXByZXNzZWRC
eXRlcyooODw8QklUUkVTKS1hbnRpX2NvbGxhcHNlX3JzdiwKLSAgICAgICAgIGJhbGFuY2UsIGVu
YywgTE0sIGNvZGVkQmFuZHMsICZzdC0+cm5nLCBzdC0+YXJjaCk7CisgICAgICAgICBiYWxhbmNl
LCBlbmMsIExNLCBjb2RlZEJhbmRzLCAmc3QtPnJuZywgc3QtPmNvbXBsZXhpdHksIHN0LT5hcmNo
LCBzdC0+ZGlzYWJsZV9pbnYpOwogCiAgICBpZiAoYW50aV9jb2xsYXBzZV9yc3YgPiAwKQogICAg
ewpAQCAtMjA0OSw2ICsyMTQ3LDE0IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNv
ZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgICAgIGVj
X2VuY19iaXRzKGVuYywgYW50aV9jb2xsYXBzZV9vbiwgMSk7CiAgICB9CiAgICBxdWFudF9lbmVy
Z3lfZmluYWxpc2UobW9kZSwgc3RhcnQsIGVuZCwgb2xkQmFuZEUsIGVycm9yLCBmaW5lX3F1YW50
LCBmaW5lX3ByaW9yaXR5LCBuYkNvbXByZXNzZWRCeXRlcyo4LWVjX3RlbGwoZW5jKSwgZW5jLCBD
KTsKKyAgIE9QVVNfQ0xFQVIoZW5lcmd5RXJyb3IsIG5iRUJhbmRzKkNDKTsKKyAgIGM9MDsKKyAg
IGRvIHsKKyAgICAgIGZvciAoaT1zdGFydDtpPGVuZDtpKyspCisgICAgICB7CisgICAgICAgICBl
bmVyZ3lFcnJvcltpK2MqbmJFQmFuZHNdID0gTUFYMTYoLVFDT05TVDE2KDAuNWYsIDE1KSwgTUlO
MTYoUUNPTlNUMTYoMC41ZiwgMTUpLCBlcnJvcltpK2MqbmJFQmFuZHNdKSk7CisgICAgICB9Cisg
ICB9IHdoaWxlICgrK2MgPCBDKTsKIAogICAgaWYgKHNpbGVuY2UpCiAgICB7CkBAIC0yMzIxLDEw
ICsyNDI3LDI0IEBAIGludCBvcHVzX2N1c3RvbV9lbmNvZGVyX2N0bChDRUxURW5jb2RlciAqIE9Q
VVNfUkVTVFJJQ1Qgc3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICAgICAgICAgKnZhbHVlPXN0LT5s
c2JfZGVwdGg7CiAgICAgICB9CiAgICAgICBicmVhazsKLSAgICAgIGNhc2UgT1BVU19TRVRfRVhQ
RVJUX0ZSQU1FX0RVUkFUSU9OX1JFUVVFU1Q6CisgICAgICBjYXNlIE9QVVNfU0VUX1BIQVNFX0lO
VkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUOgogICAgICAgewogICAgICAgICAgIG9wdXNfaW50MzIg
dmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50MzIpOwotICAgICAgICAgIHN0LT52YXJpYWJsZV9k
dXJhdGlvbiA9IHZhbHVlOworICAgICAgICAgIGlmKHZhbHVlPDAgfHwgdmFsdWU+MSkKKyAgICAg
ICAgICB7CisgICAgICAgICAgICAgZ290byBiYWRfYXJnOworICAgICAgICAgIH0KKyAgICAgICAg
ICBzdC0+ZGlzYWJsZV9pbnYgPSB2YWx1ZTsKKyAgICAgIH0KKyAgICAgIGJyZWFrOworICAgICAg
Y2FzZSBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgICAgIHsK
KyAgICAgICAgICBvcHVzX2ludDMyICp2YWx1ZSA9IHZhX2FyZyhhcCwgb3B1c19pbnQzMiopOwor
ICAgICAgICAgIGlmICghdmFsdWUpCisgICAgICAgICAgeworICAgICAgICAgICAgIGdvdG8gYmFk
X2FyZzsKKyAgICAgICAgICB9CisgICAgICAgICAgKnZhbHVlID0gc3QtPmRpc2FibGVfaW52Owog
ICAgICAgfQogICAgICAgYnJlYWs7CiAgICAgICBjYXNlIE9QVVNfUkVTRVRfU1RBVEU6CkBAIC0y
MzY4LDYgKzI0ODgsMTMgQEAgaW50IG9wdXNfY3VzdG9tX2VuY29kZXJfY3RsKENFTFRFbmNvZGVy
ICogT1BVU19SRVNUUklDVCBzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICAgICAgIE9QVVNf
Q09QWSgmc3QtPmFuYWx5c2lzLCBpbmZvLCAxKTsKICAgICAgIH0KICAgICAgIGJyZWFrOworICAg
ICAgY2FzZSBDRUxUX1NFVF9TSUxLX0lORk9fUkVRVUVTVDoKKyAgICAgIHsKKyAgICAgICAgIFNJ
TEtJbmZvICppbmZvID0gdmFfYXJnKGFwLCBTSUxLSW5mbyAqKTsKKyAgICAgICAgIGlmIChpbmZv
KQorICAgICAgICAgICAgT1BVU19DT1BZKCZzdC0+c2lsa19pbmZvLCBpbmZvLCAxKTsKKyAgICAg
IH0KKyAgICAgIGJyZWFrOwogICAgICAgY2FzZSBDRUxUX0dFVF9NT0RFX1JFUVVFU1Q6CiAgICAg
ICB7CiAgICAgICAgICBjb25zdCBDRUxUTW9kZSAqKiB2YWx1ZSA9IHZhX2FyZyhhcCwgY29uc3Qg
Q0VMVE1vZGUqKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9scGMuYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2xwYy5j
CmluZGV4IGI0MTBhMjFjNWY2YmYwOTVmMmYxNmM3MzUwYTliNDcxMTQxZmVkODkuLjU3YmM1ZjNk
ZDNmZDg4NjE2MmZlNGMzYTdmZGI4NzE5N2ZjNTNlYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2xw
Yy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9jZWx0X2xwYy5jCkBAIC04OSw1OCArODksNDAgQEAgaW50ICAgICAgICAg
IHAKIAogCiB2b2lkIGNlbHRfZmlyX2MoCi0gICAgICAgICBjb25zdCBvcHVzX3ZhbDE2ICpfeCwK
KyAgICAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKngsCiAgICAgICAgICBjb25zdCBvcHVzX3ZhbDE2
ICpudW0sCi0gICAgICAgICBvcHVzX3ZhbDE2ICpfeSwKKyAgICAgICAgIG9wdXNfdmFsMTYgKnks
CiAgICAgICAgICBpbnQgTiwKICAgICAgICAgIGludCBvcmQsCi0gICAgICAgICBvcHVzX3ZhbDE2
ICptZW0sCiAgICAgICAgICBpbnQgYXJjaCkKIHsKICAgIGludCBpLGo7CiAgICBWQVJERUNMKG9w
dXNfdmFsMTYsIHJudW0pOwotICAgVkFSREVDTChvcHVzX3ZhbDE2LCB4KTsKICAgIFNBVkVfU1RB
Q0s7CiAKICAgIEFMTE9DKHJudW0sIG9yZCwgb3B1c192YWwxNik7Ci0gICBBTExPQyh4LCBOK29y
ZCwgb3B1c192YWwxNik7CiAgICBmb3IoaT0wO2k8b3JkO2krKykKICAgICAgIHJudW1baV0gPSBu
dW1bb3JkLWktMV07Ci0gICBmb3IoaT0wO2k8b3JkO2krKykKLSAgICAgIHhbaV0gPSBtZW1bb3Jk
LWktMV07Ci0gICBmb3IgKGk9MDtpPE47aSsrKQotICAgICAgeFtpK29yZF09X3hbaV07Ci0gICBm
b3IoaT0wO2k8b3JkO2krKykKLSAgICAgIG1lbVtpXSA9IF94W04taS0xXTsKLSNpZmRlZiBTTUFM
TF9GT09UUFJJTlQKLSAgICh2b2lkKWFyY2g7Ci0gICBmb3IgKGk9MDtpPE47aSsrKQotICAgewot
ICAgICAgb3B1c192YWwzMiBzdW0gPSBTSEwzMihFWFRFTkQzMihfeFtpXSksIFNJR19TSElGVCk7
Ci0gICAgICBmb3IgKGo9MDtqPG9yZDtqKyspCi0gICAgICB7Ci0gICAgICAgICBzdW0gPSBNQUMx
Nl8xNihzdW0scm51bVtqXSx4W2kral0pOwotICAgICAgfQotICAgICAgX3lbaV0gPSBTQVRVUkFU
RTE2KFBTSFIzMihzdW0sIFNJR19TSElGVCkpOwotICAgfQotI2Vsc2UKICAgIGZvciAoaT0wO2k8
Ti0zO2krPTQpCiAgICB7Ci0gICAgICBvcHVzX3ZhbDMyIHN1bVs0XT17MCwwLDAsMH07Ci0gICAg
ICB4Y29ycl9rZXJuZWwocm51bSwgeCtpLCBzdW0sIG9yZCwgYXJjaCk7Ci0gICAgICBfeVtpICBd
ID0gU0FUVVJBVEUxNihBREQzMihFWFRFTkQzMihfeFtpICBdKSwgUFNIUjMyKHN1bVswXSwgU0lH
X1NISUZUKSkpOwotICAgICAgX3lbaSsxXSA9IFNBVFVSQVRFMTYoQUREMzIoRVhURU5EMzIoX3hb
aSsxXSksIFBTSFIzMihzdW1bMV0sIFNJR19TSElGVCkpKTsKLSAgICAgIF95W2krMl0gPSBTQVRV
UkFURTE2KEFERDMyKEVYVEVORDMyKF94W2krMl0pLCBQU0hSMzIoc3VtWzJdLCBTSUdfU0hJRlQp
KSk7Ci0gICAgICBfeVtpKzNdID0gU0FUVVJBVEUxNihBREQzMihFWFRFTkQzMihfeFtpKzNdKSwg
UFNIUjMyKHN1bVszXSwgU0lHX1NISUZUKSkpOworICAgICAgb3B1c192YWwzMiBzdW1bNF07Cisg
ICAgICBzdW1bMF0gPSBTSEwzMihFWFRFTkQzMih4W2kgIF0pLCBTSUdfU0hJRlQpOworICAgICAg
c3VtWzFdID0gU0hMMzIoRVhURU5EMzIoeFtpKzFdKSwgU0lHX1NISUZUKSwKKyAgICAgIHN1bVsy
XSA9IFNITDMyKEVYVEVORDMyKHhbaSsyXSksIFNJR19TSElGVCk7CisgICAgICBzdW1bM10gPSBT
SEwzMihFWFRFTkQzMih4W2krM10pLCBTSUdfU0hJRlQpOworICAgICAgeGNvcnJfa2VybmVsKHJu
dW0sIHgraS1vcmQsIHN1bSwgb3JkLCBhcmNoKTsKKyAgICAgIHlbaSAgXSA9IFJPVU5EMTYoc3Vt
WzBdLCBTSUdfU0hJRlQpOworICAgICAgeVtpKzFdID0gUk9VTkQxNihzdW1bMV0sIFNJR19TSElG
VCk7CisgICAgICB5W2krMl0gPSBST1VORDE2KHN1bVsyXSwgU0lHX1NISUZUKTsKKyAgICAgIHlb
aSszXSA9IFJPVU5EMTYoc3VtWzNdLCBTSUdfU0hJRlQpOwogICAgfQogICAgZm9yICg7aTxOO2kr
KykKICAgIHsKLSAgICAgIG9wdXNfdmFsMzIgc3VtID0gMDsKKyAgICAgIG9wdXNfdmFsMzIgc3Vt
ID0gU0hMMzIoRVhURU5EMzIoeFtpXSksIFNJR19TSElGVCk7CiAgICAgICBmb3IgKGo9MDtqPG9y
ZDtqKyspCi0gICAgICAgICBzdW0gPSBNQUMxNl8xNihzdW0scm51bVtqXSx4W2kral0pOwotICAg
ICAgX3lbaV0gPSBTQVRVUkFURTE2KEFERDMyKEVYVEVORDMyKF94W2ldKSwgUFNIUjMyKHN1bSwg
U0lHX1NISUZUKSkpOworICAgICAgICAgc3VtID0gTUFDMTZfMTYoc3VtLHJudW1bal0seFtpK2ot
b3JkXSk7CisgICAgICB5W2ldID0gUk9VTkQxNihzdW0sIFNJR19TSElGVCk7CiAgICB9Ci0jZW5k
aWYKICAgIFJFU1RPUkVfU1RBQ0s7CiB9CiAKQEAgLTE2Niw3ICsxNDgsNyBAQCB2b2lkIGNlbHRf
aWlyKGNvbnN0IG9wdXNfdmFsMzIgKl94LAogICAgICAgewogICAgICAgICAgbWVtW2pdPW1lbVtq
LTFdOwogICAgICAgfQotICAgICAgbWVtWzBdID0gUk9VTkQxNihzdW0sU0lHX1NISUZUKTsKKyAg
ICAgIG1lbVswXSA9IFNST1VORDE2KHN1bSwgU0lHX1NISUZUKTsKICAgICAgIF95W2ldID0gc3Vt
OwogICAgfQogI2Vsc2UKQEAgLTE5NSwyMCArMTc3LDIwIEBAIHZvaWQgY2VsdF9paXIoY29uc3Qg
b3B1c192YWwzMiAqX3gsCiAgICAgICB4Y29ycl9rZXJuZWwocmRlbiwgeStpLCBzdW0sIG9yZCwg
YXJjaCk7CiAKICAgICAgIC8qIFBhdGNoIHVwIHRoZSByZXN1bHQgdG8gY29tcGVuc2F0ZSBmb3Ig
dGhlIGZhY3QgdGhhdCB0aGlzIGlzIGFuIElJUiAqLwotICAgICAgeVtpK29yZCAgXSA9IC1ST1VO
RDE2KHN1bVswXSxTSUdfU0hJRlQpOworICAgICAgeVtpK29yZCAgXSA9IC1TUk9VTkQxNihzdW1b
MF0sU0lHX1NISUZUKTsKICAgICAgIF95W2kgIF0gPSBzdW1bMF07CiAgICAgICBzdW1bMV0gPSBN
QUMxNl8xNihzdW1bMV0sIHlbaStvcmQgIF0sIGRlblswXSk7Ci0gICAgICB5W2krb3JkKzFdID0g
LVJPVU5EMTYoc3VtWzFdLFNJR19TSElGVCk7CisgICAgICB5W2krb3JkKzFdID0gLVNST1VORDE2
KHN1bVsxXSxTSUdfU0hJRlQpOwogICAgICAgX3lbaSsxXSA9IHN1bVsxXTsKICAgICAgIHN1bVsy
XSA9IE1BQzE2XzE2KHN1bVsyXSwgeVtpK29yZCsxXSwgZGVuWzBdKTsKICAgICAgIHN1bVsyXSA9
IE1BQzE2XzE2KHN1bVsyXSwgeVtpK29yZCAgXSwgZGVuWzFdKTsKLSAgICAgIHlbaStvcmQrMl0g
PSAtUk9VTkQxNihzdW1bMl0sU0lHX1NISUZUKTsKKyAgICAgIHlbaStvcmQrMl0gPSAtU1JPVU5E
MTYoc3VtWzJdLFNJR19TSElGVCk7CiAgICAgICBfeVtpKzJdID0gc3VtWzJdOwogCiAgICAgICBz
dW1bM10gPSBNQUMxNl8xNihzdW1bM10sIHlbaStvcmQrMl0sIGRlblswXSk7CiAgICAgICBzdW1b
M10gPSBNQUMxNl8xNihzdW1bM10sIHlbaStvcmQrMV0sIGRlblsxXSk7CiAgICAgICBzdW1bM10g
PSBNQUMxNl8xNihzdW1bM10sIHlbaStvcmQgIF0sIGRlblsyXSk7Ci0gICAgICB5W2krb3JkKzNd
ID0gLVJPVU5EMTYoc3VtWzNdLFNJR19TSElGVCk7CisgICAgICB5W2krb3JkKzNdID0gLVNST1VO
RDE2KHN1bVszXSxTSUdfU0hJRlQpOwogICAgICAgX3lbaSszXSA9IHN1bVszXTsKICAgIH0KICAg
IGZvciAoO2k8TjtpKyspCkBAIC0yMTYsNyArMTk4LDcgQEAgdm9pZCBjZWx0X2lpcihjb25zdCBv
cHVzX3ZhbDMyICpfeCwKICAgICAgIG9wdXNfdmFsMzIgc3VtID0gX3hbaV07CiAgICAgICBmb3Ig
KGo9MDtqPG9yZDtqKyspCiAgICAgICAgICBzdW0gLT0gTVVMVDE2XzE2KHJkZW5bal0seVtpK2pd
KTsKLSAgICAgIHlbaStvcmRdID0gUk9VTkQxNihzdW0sU0lHX1NISUZUKTsKKyAgICAgIHlbaStv
cmRdID0gU1JPVU5EMTYoc3VtLFNJR19TSElGVCk7CiAgICAgICBfeVtpXSA9IHN1bTsKICAgIH0K
ICAgIGZvcihpPTA7aTxvcmQ7aSsrKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfbHBjLmggYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
Y2VsdF9scGMuaAppbmRleCAzMjM0NTllYjFhODMxNTY2NjQ3ODQ3NDJkZGNhNzhlMWM0NGU2ZGMw
Li5hNGM1ZmQ2ZWE1ZGNhMzEyZmFkYjljMzYxZGIyYWJkNWUxYmU3ZjY4IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvY2VsdF9scGMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9scGMuaApAQCAtNDUsMTIgKzQ1LDExIEBAIHZv
aWQgY2VsdF9maXJfYygKICAgICAgICAgIG9wdXNfdmFsMTYgKnksCiAgICAgICAgICBpbnQgTiwK
ICAgICAgICAgIGludCBvcmQsCi0gICAgICAgICBvcHVzX3ZhbDE2ICptZW0sCiAgICAgICAgICBp
bnQgYXJjaCk7CiAKICNpZiAhZGVmaW5lZChPVkVSUklERV9DRUxUX0ZJUikKLSNkZWZpbmUgY2Vs
dF9maXIoeCwgbnVtLCB5LCBOLCBvcmQsIG1lbSwgYXJjaCkgXAotICAgIChjZWx0X2Zpcl9jKHgs
IG51bSwgeSwgTiwgb3JkLCBtZW0sIGFyY2gpKQorI2RlZmluZSBjZWx0X2Zpcih4LCBudW0sIHks
IE4sIG9yZCwgYXJjaCkgXAorICAgIChjZWx0X2Zpcl9jKHgsIG51bSwgeSwgTiwgb3JkLCBhcmNo
KSkKICNlbmRpZgogCiB2b2lkIGNlbHRfaWlyKGNvbnN0IG9wdXNfdmFsMzIgKngsCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21v
ZGVzLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uOTEwNWE1MzQ0ZTNiZjM0YWVmOWNhYzI0N2MxMDYyZjY5YmY0NDcx
ZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9kdW1wX21vZGVzL2R1bXBfbW9kZXMuYwpAQCAtMCww
ICsxLDM1MyBAQAorLyogQ29weXJpZ2h0IChjKSAyMDA4IENTSVJPCisgICBDb3B5cmlnaHQgKGMp
IDIwMDgtMjAwOSBYaXBoLk9yZyBGb3VuZGF0aW9uCisgICBXcml0dGVuIGJ5IEplYW4tTWFyYyBW
YWxpbiAqLworLyoKKyAgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgICBhcmUgbWV0OgorCisg
ICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisKKyAgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisKKyAgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAgIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UgorICAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyAgIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICAgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAorICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SCisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworICAgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTCisgICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyovCisKKyNpZmRlZiBIQVZFX0NPTkZJR19ICisjaW5jbHVkZSAiY29u
ZmlnLmgiCisjZW5kaWYKKworI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+
CisjaW5jbHVkZSAibW9kZXMuaCIKKyNpbmNsdWRlICJjZWx0LmgiCisjaW5jbHVkZSAicmF0ZS5o
IgorI2luY2x1ZGUgImR1bXBfbW9kZXNfYXJjaC5oIgorCisjZGVmaW5lIElOVDE2ICIlZCIKKyNk
ZWZpbmUgSU5UMzIgIiVkIgorI2RlZmluZSBGTE9BVCAiJSMwLjhnZiIKKworI2lmZGVmIEZJWEVE
X1BPSU5UCisjZGVmaW5lIFdPUkQxNiBJTlQxNgorI2RlZmluZSBXT1JEMzIgSU5UMzIKKyNlbHNl
CisjZGVmaW5lIFdPUkQxNiBGTE9BVAorI2RlZmluZSBXT1JEMzIgRkxPQVQKKyNlbmRpZgorCit2
b2lkIGR1bXBfbW9kZXMoRklMRSAqZmlsZSwgQ0VMVE1vZGUgKiptb2RlcywgaW50IG5iX21vZGVz
KQoreworICAgaW50IGksIGosIGs7CisgICBpbnQgbWRjdF90d2lkZGxlc19zaXplOworICAgZnBy
aW50ZihmaWxlLCAiLyogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZmlsZSB3YXMgYXV0b21hdGljYWxs
eSBnZW5lcmF0ZWQgYnkgZHVtcF9tb2Rlcy5jXG4iKTsKKyAgIGZwcmludGYoZmlsZSwgIiAgIHdp
dGggYXJndW1lbnRzOiIpOworICAgZm9yIChpPTA7aTxuYl9tb2RlcztpKyspCisgICB7CisgICAg
ICBDRUxUTW9kZSAqbW9kZSA9IG1vZGVzW2ldOworICAgICAgZnByaW50ZihmaWxlLCAiICVkICVk
Iixtb2RlLT5Gcyxtb2RlLT5zaG9ydE1kY3RTaXplKm1vZGUtPm5iU2hvcnRNZGN0cyk7CisgICB9
CisgICBmcHJpbnRmKGZpbGUsICJcbiAgIEl0IGNvbnRhaW5zIHN0YXRpYyBkZWZpbml0aW9ucyBm
b3Igc29tZSBwcmUtZGVmaW5lZCBtb2Rlcy4gKi9cbiIpOworICAgZnByaW50ZihmaWxlLCAiI2lu
Y2x1ZGUgXCJtb2Rlcy5oXCJcbiIpOworICAgZnByaW50ZihmaWxlLCAiI2luY2x1ZGUgXCJyYXRl
LmhcIlxuIik7CisgICBmcHJpbnRmKGZpbGUsICJcbiNpZmRlZiBIQVZFX0FSTV9ORTEwXG4iKTsK
KyAgIGZwcmludGYoZmlsZSwgIiNkZWZpbmUgT1ZFUlJJREVfRkZUIDFcbiIpOworICAgZnByaW50
ZihmaWxlLCAiI2luY2x1ZGUgXCIlc1wiXG4iLCBBUk1fTkUxMF9BUkNIX0ZJTEVfTkFNRSk7Cisg
ICBmcHJpbnRmKGZpbGUsICIjZW5kaWZcbiIpOworCisgICBmcHJpbnRmKGZpbGUsICJcbiIpOwor
CisgICBmb3IgKGk9MDtpPG5iX21vZGVzO2krKykKKyAgIHsKKyAgICAgIENFTFRNb2RlICptb2Rl
ID0gbW9kZXNbaV07CisgICAgICBpbnQgbWRjdFNpemU7CisgICAgICBpbnQgc3RhbmRhcmQsIGZy
YW1lcmF0ZTsKKworICAgICAgbWRjdFNpemUgPSBtb2RlLT5zaG9ydE1kY3RTaXplKm1vZGUtPm5i
U2hvcnRNZGN0czsKKyAgICAgIHN0YW5kYXJkID0gKG1vZGUtPkZzID09IDQwMCoob3B1c19pbnQz
Miltb2RlLT5zaG9ydE1kY3RTaXplKTsKKyAgICAgIGZyYW1lcmF0ZSA9IG1vZGUtPkZzL21vZGUt
PnNob3J0TWRjdFNpemU7CisKKyAgICAgIGlmICghc3RhbmRhcmQpCisgICAgICB7CisgICAgICAg
ICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIERFRl9FQkFORFMlZF8lZFxuIiwgbW9kZS0+RnMsIG1k
Y3RTaXplKTsKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiNkZWZpbmUgREVGX0VCQU5EUyVkXyVk
XG4iLCBtb2RlLT5GcywgbWRjdFNpemUpOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgInN0YXRp
YyBjb25zdCBvcHVzX2ludDE2IGVCYW5kcyVkXyVkWyVkXSA9IHtcbiIsIG1vZGUtPkZzLCBtZGN0
U2l6ZSwgbW9kZS0+bmJFQmFuZHMrMik7CisgICAgICAgICBmb3IgKGo9MDtqPG1vZGUtPm5iRUJh
bmRzKzI7aisrKQorICAgICAgICAgICAgZnByaW50ZiAoZmlsZSwgIiVkLCAiLCBtb2RlLT5lQmFu
ZHNbal0pOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgICAgICAgIGZwcmlu
dGYoZmlsZSwgIiNlbmRpZlxuIik7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworICAg
ICAgfQorCisgICAgICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIERFRl9XSU5ET1clZFxuIiwgbW9k
ZS0+b3ZlcmxhcCk7CisgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIERFRl9XSU5ET1clZFxu
IiwgbW9kZS0+b3ZlcmxhcCk7CisgICAgICBmcHJpbnRmIChmaWxlLCAic3RhdGljIGNvbnN0IG9w
dXNfdmFsMTYgd2luZG93JWRbJWRdID0ge1xuIiwgbW9kZS0+b3ZlcmxhcCwgbW9kZS0+b3Zlcmxh
cCk7CisgICAgICBmb3IgKGo9MDtqPG1vZGUtPm92ZXJsYXA7aisrKQorICAgICAgICAgZnByaW50
ZiAoZmlsZSwgV09SRDE2ICIsJWMiLCBtb2RlLT53aW5kb3dbal0sKGorNiklNT09MD8nXG4nOicg
Jyk7CisgICAgICBmcHJpbnRmIChmaWxlLCAifTtcbiIpOworICAgICAgZnByaW50ZihmaWxlLCAi
I2VuZGlmXG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIlxuIik7CisKKyAgICAgIGlmICghc3Rh
bmRhcmQpCisgICAgICB7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIERFRl9BTExP
Q19WRUNUT1JTJWRfJWRcbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7CisgICAgICAgICBmcHJpbnRm
KGZpbGUsICIjZGVmaW5lIERFRl9BTExPQ19WRUNUT1JTJWRfJWRcbiIsIG1vZGUtPkZzLCBtZGN0
U2l6ZSk7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAic3RhdGljIGNvbnN0IHVuc2lnbmVkIGNo
YXIgYWxsb2NWZWN0b3JzJWRfJWRbJWRdID0ge1xuIiwgbW9kZS0+RnMsIG1kY3RTaXplLCBtb2Rl
LT5uYkVCYW5kcyptb2RlLT5uYkFsbG9jVmVjdG9ycyk7CisgICAgICAgICBmb3IgKGo9MDtqPG1v
ZGUtPm5iQWxsb2NWZWN0b3JzO2orKykKKyAgICAgICAgIHsKKyAgICAgICAgICAgIGZvciAoaz0w
O2s8bW9kZS0+bmJFQmFuZHM7aysrKQorICAgICAgICAgICAgICAgZnByaW50ZiAoZmlsZSwgIiUy
ZCwgIiwgbW9kZS0+YWxsb2NWZWN0b3JzW2oqbW9kZS0+bmJFQmFuZHMra10pOworICAgICAgICAg
ICAgZnByaW50ZiAoZmlsZSwgIlxuIik7CisgICAgICAgICB9CisgICAgICAgICBmcHJpbnRmIChm
aWxlLCAifTtcbiIpOworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2VuZGlmXG4iKTsKKyAgICAg
ICAgIGZwcmludGYoZmlsZSwgIlxuIik7CisgICAgICB9CisKKyAgICAgIGZwcmludGYoZmlsZSwg
IiNpZm5kZWYgREVGX0xPR04lZFxuIiwgZnJhbWVyYXRlKTsKKyAgICAgIGZwcmludGYoZmlsZSwg
IiNkZWZpbmUgREVGX0xPR04lZFxuIiwgZnJhbWVyYXRlKTsKKyAgICAgIGZwcmludGYgKGZpbGUs
ICJzdGF0aWMgY29uc3Qgb3B1c19pbnQxNiBsb2dOJWRbJWRdID0ge1xuIiwgZnJhbWVyYXRlLCBt
b2RlLT5uYkVCYW5kcyk7CisgICAgICBmb3IgKGo9MDtqPG1vZGUtPm5iRUJhbmRzO2orKykKKyAg
ICAgICAgIGZwcmludGYgKGZpbGUsICIlZCwgIiwgbW9kZS0+bG9nTltqXSk7CisgICAgICBmcHJp
bnRmIChmaWxlLCAifTtcbiIpOworICAgICAgZnByaW50ZihmaWxlLCAiI2VuZGlmXG4iKTsKKyAg
ICAgIGZwcmludGYoZmlsZSwgIlxuIik7CisKKyAgICAgIC8qIFB1bHNlIGNhY2hlICovCisgICAg
ICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIERFRl9QVUxTRV9DQUNIRSVkXG4iLCBtb2RlLT5Gcy9t
ZGN0U2l6ZSk7CisgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIERFRl9QVUxTRV9DQUNIRSVk
XG4iLCBtb2RlLT5Gcy9tZGN0U2l6ZSk7CisgICAgICBmcHJpbnRmIChmaWxlLCAic3RhdGljIGNv
bnN0IG9wdXNfaW50MTYgY2FjaGVfaW5kZXglZFslZF0gPSB7XG4iLCBtb2RlLT5Gcy9tZGN0U2l6
ZSwgKG1vZGUtPm1heExNKzIpKm1vZGUtPm5iRUJhbmRzKTsKKyAgICAgIGZvciAoaj0wO2o8bW9k
ZS0+bmJFQmFuZHMqKG1vZGUtPm1heExNKzIpO2orKykKKyAgICAgICAgIGZwcmludGYgKGZpbGUs
ICIlZCwlYyIsIG1vZGUtPmNhY2hlLmluZGV4W2pdLChqKzE2KSUxNT09MD8nXG4nOicgJyk7Cisg
ICAgICBmcHJpbnRmIChmaWxlLCAifTtcbiIpOworICAgICAgZnByaW50ZiAoZmlsZSwgInN0YXRp
YyBjb25zdCB1bnNpZ25lZCBjaGFyIGNhY2hlX2JpdHMlZFslZF0gPSB7XG4iLCBtb2RlLT5Gcy9t
ZGN0U2l6ZSwgbW9kZS0+Y2FjaGUuc2l6ZSk7CisgICAgICBmb3IgKGo9MDtqPG1vZGUtPmNhY2hl
LnNpemU7aisrKQorICAgICAgICAgZnByaW50ZiAoZmlsZSwgIiVkLCVjIiwgbW9kZS0+Y2FjaGUu
Yml0c1tqXSwoaisxNiklMTU9PTA/J1xuJzonICcpOworICAgICAgZnByaW50ZiAoZmlsZSwgIn07
XG4iKTsKKyAgICAgIGZwcmludGYgKGZpbGUsICJzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBj
YWNoZV9jYXBzJWRbJWRdID0ge1xuIiwgbW9kZS0+RnMvbWRjdFNpemUsIChtb2RlLT5tYXhMTSsx
KSoyKm1vZGUtPm5iRUJhbmRzKTsKKyAgICAgIGZvciAoaj0wO2o8KG1vZGUtPm1heExNKzEpKjIq
bW9kZS0+bmJFQmFuZHM7aisrKQorICAgICAgICAgZnByaW50ZiAoZmlsZSwgIiVkLCVjIiwgbW9k
ZS0+Y2FjaGUuY2Fwc1tqXSwoaisxNiklMTU9PTA/J1xuJzonICcpOworICAgICAgZnByaW50ZiAo
ZmlsZSwgIn07XG4iKTsKKworICAgICAgZnByaW50ZihmaWxlLCAiI2VuZGlmXG4iKTsKKyAgICAg
IGZwcmludGYoZmlsZSwgIlxuIik7CisKKyAgICAgIC8qIEZGVCB0d2lkZGxlcyAqLworICAgICAg
ZnByaW50ZihmaWxlLCAiI2lmbmRlZiBGRlRfVFdJRERMRVMlZF8lZFxuIiwgbW9kZS0+RnMsIG1k
Y3RTaXplKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiNkZWZpbmUgRkZUX1RXSURETEVTJWRfJWRc
biIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7CisgICAgICBmcHJpbnRmIChmaWxlLCAic3RhdGljIGNv
bnN0IGtpc3NfdHdpZGRsZV9jcHggZmZ0X3R3aWRkbGVzJWRfJWRbJWRdID0ge1xuIiwKKyAgICAg
ICAgICAgIG1vZGUtPkZzLCBtZGN0U2l6ZSwgbW9kZS0+bWRjdC5rZmZ0WzBdLT5uZmZ0KTsKKyAg
ICAgIGZvciAoaj0wO2o8bW9kZS0+bWRjdC5rZmZ0WzBdLT5uZmZ0O2orKykKKyAgICAgICAgIGZw
cmludGYgKGZpbGUsICJ7IiBXT1JEMTYgIiwgIiBXT1JEMTYgIn0sJWMiLCBtb2RlLT5tZGN0Lmtm
ZnRbMF0tPnR3aWRkbGVzW2pdLnIsIG1vZGUtPm1kY3Qua2ZmdFswXS0+dHdpZGRsZXNbal0uaSwo
aiszKSUyPT0wPydcbic6JyAnKTsKKyAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xuIik7CisKKyNp
ZmRlZiBPVkVSUklERV9GRlQKKyAgICAgIGR1bXBfbW9kZV9hcmNoKG1vZGUpOworI2VuZGlmCisg
ICAgICAvKiBGRlQgQml0cmV2IHRhYmxlcyAqLworICAgICAgZm9yIChrPTA7azw9bW9kZS0+bWRj
dC5tYXhzaGlmdDtrKyspCisgICAgICB7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjaWZuZGVm
IEZGVF9CSVRSRVYlZFxuIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgICAgIGZw
cmludGYoZmlsZSwgIiNkZWZpbmUgRkZUX0JJVFJFViVkXG4iLCBtb2RlLT5tZGN0LmtmZnRba10t
Pm5mZnQpOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgInN0YXRpYyBjb25zdCBvcHVzX2ludDE2
IGZmdF9iaXRyZXYlZFslZF0gPSB7XG4iLAorICAgICAgICAgICAgICAgbW9kZS0+bWRjdC5rZmZ0
W2tdLT5uZmZ0LCBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQpOworICAgICAgICAgZm9yIChqPTA7
ajxtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQ7aisrKQorICAgICAgICAgICAgZnByaW50ZiAoZmls
ZSwgIiVkLCVjIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5iaXRyZXZbal0sKGorMTYpJTE1PT0wPydc
bic6JyAnKTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xuIik7CisKKyAgICAgICAgIGZw
cmludGYoZmlsZSwgIiNlbmRpZlxuIik7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOwor
ICAgICAgfQorCisgICAgICAvKiBGRlQgU3RhdGVzICovCisgICAgICBmb3IgKGs9MDtrPD1tb2Rl
LT5tZGN0Lm1heHNoaWZ0O2srKykKKyAgICAgIHsKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiNp
Zm5kZWYgRkZUX1NUQVRFJWRfJWRfJWRcbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSwgayk7CisgICAg
ICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIEZGVF9TVEFURSVkXyVkXyVkXG4iLCBtb2RlLT5G
cywgbWRjdFNpemUsIGspOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgInN0YXRpYyBjb25zdCBr
aXNzX2ZmdF9zdGF0ZSBmZnRfc3RhdGUlZF8lZF8lZCA9IHtcbiIsCisgICAgICAgICAgICAgICBt
b2RlLT5GcywgbWRjdFNpemUsIGspOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgIiVkLCAgICAv
KiBuZmZ0ICovXG4iLCBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQpOworICAgICAgICAgZnByaW50
ZiAoZmlsZSwgV09SRDE2ICIsICAgIC8qIHNjYWxlICovXG4iLCBtb2RlLT5tZGN0LmtmZnRba10t
PnNjYWxlKTsKKyNpZmRlZiBGSVhFRF9QT0lOVAorICAgICAgICAgZnByaW50ZiAoZmlsZSwgIiVk
LCAgICAvKiBzY2FsZV9zaGlmdCAqL1xuIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5zY2FsZV9zaGlm
dCk7CisjZW5kaWYKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICIlZCwgICAgLyogc2hpZnQgKi9c
biIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+c2hpZnQpOworICAgICAgICAgZnByaW50ZiAoZmlsZSwg
InsiKTsKKyAgICAgICAgIGZvciAoaj0wO2o8MipNQVhGQUNUT1JTO2orKykKKyAgICAgICAgICAg
IGZwcmludGYgKGZpbGUsICIlZCwgIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5mYWN0b3JzW2pdKTsK
KyAgICAgICAgIGZwcmludGYgKGZpbGUsICJ9LCAgICAvKiBmYWN0b3JzICovXG4iKTsKKyAgICAg
ICAgIGZwcmludGYgKGZpbGUsICJmZnRfYml0cmV2JWQsICAgIC8qIGJpdHJldiAqL1xuIiwgbW9k
ZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJmZnRfdHdp
ZGRsZXMlZF8lZCwgICAgLyogYml0cmV2ICovXG4iLCBtb2RlLT5GcywgbWRjdFNpemUpOworCisg
ICAgICAgICBmcHJpbnRmIChmaWxlLCAiI2lmZGVmIE9WRVJSSURFX0ZGVFxuIik7CisgICAgICAg
ICBmcHJpbnRmIChmaWxlLCAiKGFyY2hfZmZ0X3N0YXRlICopJmNmZ19hcmNoXyVkLFxuIiwgbW9k
ZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICIjZWxzZVxu
Iik7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiTlVMTCxcbiIpOworICAgICAgICAgZnByaW50
ZihmaWxlLCAiI2VuZGlmXG4iKTsKKworICAgICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsK
KworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2VuZGlmXG4iKTsKKyAgICAgICAgIGZwcmludGYo
ZmlsZSwgIlxuIik7CisgICAgICB9CisKKyAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7
CisgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworCisgICAgICAvKiBNRENUIHR3aWRkbGVzICov
CisgICAgICBtZGN0X3R3aWRkbGVzX3NpemUgPSBtb2RlLT5tZGN0Lm4tKG1vZGUtPm1kY3Qubi8y
Pj5tb2RlLT5tZGN0Lm1heHNoaWZ0KTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiNpZm5kZWYgTURD
VF9UV0lERExFUyVkXG4iLCBtZGN0U2l6ZSk7CisgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5l
IE1EQ1RfVFdJRERMRVMlZFxuIiwgbWRjdFNpemUpOworICAgICAgZnByaW50ZiAoZmlsZSwgInN0
YXRpYyBjb25zdCBvcHVzX3ZhbDE2IG1kY3RfdHdpZGRsZXMlZFslZF0gPSB7XG4iLAorICAgICAg
ICAgICAgbWRjdFNpemUsIG1kY3RfdHdpZGRsZXNfc2l6ZSk7CisgICAgICBmb3IgKGo9MDtqPG1k
Y3RfdHdpZGRsZXNfc2l6ZTtqKyspCisgICAgICAgICBmcHJpbnRmIChmaWxlLCBXT1JEMTYgIiwl
YyIsIG1vZGUtPm1kY3QudHJpZ1tqXSwoais2KSU1PT0wPydcbic6JyAnKTsKKyAgICAgIGZwcmlu
dGYgKGZpbGUsICJ9O1xuIik7CisKKyAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7Cisg
ICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworCisKKyAgICAgIC8qIFByaW50IHRoZSBhY3R1YWwg
bW9kZSBkYXRhICovCisgICAgICBmcHJpbnRmKGZpbGUsICJzdGF0aWMgY29uc3QgQ0VMVE1vZGUg
bW9kZSVkXyVkXyVkID0ge1xuIiwgbW9kZS0+RnMsIG1kY3RTaXplLCBtb2RlLT5vdmVybGFwKTsK
KyAgICAgIGZwcmludGYoZmlsZSwgSU5UMzIgIiwgICAgLyogRnMgKi9cbiIsIG1vZGUtPkZzKTsK
KyAgICAgIGZwcmludGYoZmlsZSwgIiVkLCAgICAvKiBvdmVybGFwICovXG4iLCBtb2RlLT5vdmVy
bGFwKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiVkLCAgICAvKiBuYkVCYW5kcyAqL1xuIiwgbW9k
ZS0+bmJFQmFuZHMpOworICAgICAgZnByaW50ZihmaWxlLCAiJWQsICAgIC8qIGVmZkVCYW5kcyAq
L1xuIiwgbW9kZS0+ZWZmRUJhbmRzKTsKKyAgICAgIGZwcmludGYoZmlsZSwgInsiKTsKKyAgICAg
IGZvciAoaj0wO2o8NDtqKyspCisgICAgICAgICBmcHJpbnRmKGZpbGUsIFdPUkQxNiAiLCAiLCBt
b2RlLT5wcmVlbXBoW2pdKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIn0sICAgIC8qIHByZWVtcGgg
Ki9cbiIpOworICAgICAgaWYgKHN0YW5kYXJkKQorICAgICAgICAgZnByaW50ZihmaWxlLCAiZWJh
bmQ1bXMsICAgIC8qIGVCYW5kcyAqL1xuIik7CisgICAgICBlbHNlCisgICAgICAgICBmcHJpbnRm
KGZpbGUsICJlQmFuZHMlZF8lZCwgICAgLyogZUJhbmRzICovXG4iLCBtb2RlLT5GcywgbWRjdFNp
emUpOworCisgICAgICBmcHJpbnRmKGZpbGUsICIlZCwgICAgLyogbWF4TE0gKi9cbiIsIG1vZGUt
Pm1heExNKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiVkLCAgICAvKiBuYlNob3J0TWRjdHMgKi9c
biIsIG1vZGUtPm5iU2hvcnRNZGN0cyk7CisgICAgICBmcHJpbnRmKGZpbGUsICIlZCwgICAgLyog
c2hvcnRNZGN0U2l6ZSAqL1xuIiwgbW9kZS0+c2hvcnRNZGN0U2l6ZSk7CisKKyAgICAgIGZwcmlu
dGYoZmlsZSwgIiVkLCAgICAvKiBuYkFsbG9jVmVjdG9ycyAqL1xuIiwgbW9kZS0+bmJBbGxvY1Zl
Y3RvcnMpOworICAgICAgaWYgKHN0YW5kYXJkKQorICAgICAgICAgZnByaW50ZihmaWxlLCAiYmFu
ZF9hbGxvY2F0aW9uLCAgICAvKiBhbGxvY1ZlY3RvcnMgKi9cbiIpOworICAgICAgZWxzZQorICAg
ICAgICAgZnByaW50ZihmaWxlLCAiYWxsb2NWZWN0b3JzJWRfJWQsICAgIC8qIGFsbG9jVmVjdG9y
cyAqL1xuIiwgbW9kZS0+RnMsIG1kY3RTaXplKTsKKworICAgICAgZnByaW50ZihmaWxlLCAibG9n
TiVkLCAgICAvKiBsb2dOICovXG4iLCBmcmFtZXJhdGUpOworICAgICAgZnByaW50ZihmaWxlLCAi
d2luZG93JWQsICAgIC8qIHdpbmRvdyAqL1xuIiwgbW9kZS0+b3ZlcmxhcCk7CisgICAgICBmcHJp
bnRmKGZpbGUsICJ7JWQsICVkLCB7IiwgbW9kZS0+bWRjdC5uLCBtb2RlLT5tZGN0Lm1heHNoaWZ0
KTsKKyAgICAgIGZvciAoaz0wO2s8PW1vZGUtPm1kY3QubWF4c2hpZnQ7aysrKQorICAgICAgICAg
ZnByaW50ZihmaWxlLCAiJmZmdF9zdGF0ZSVkXyVkXyVkLCAiLCBtb2RlLT5GcywgbWRjdFNpemUs
IGspOworICAgICAgZnByaW50ZiAoZmlsZSwgIn0sIG1kY3RfdHdpZGRsZXMlZH0sICAgIC8qIG1k
Y3QgKi9cbiIsIG1kY3RTaXplKTsKKworICAgICAgZnByaW50ZihmaWxlLCAieyVkLCBjYWNoZV9p
bmRleCVkLCBjYWNoZV9iaXRzJWQsIGNhY2hlX2NhcHMlZH0sICAgIC8qIGNhY2hlICovXG4iLAor
ICAgICAgICAgICAgbW9kZS0+Y2FjaGUuc2l6ZSwgbW9kZS0+RnMvbWRjdFNpemUsIG1vZGUtPkZz
L21kY3RTaXplLCBtb2RlLT5Gcy9tZGN0U2l6ZSk7CisgICAgICBmcHJpbnRmKGZpbGUsICJ9O1xu
Iik7CisgICB9CisgICBmcHJpbnRmKGZpbGUsICJcbiIpOworICAgZnByaW50ZihmaWxlLCAiLyog
TGlzdCBvZiBhbGwgdGhlIGF2YWlsYWJsZSBtb2RlcyAqL1xuIik7CisgICBmcHJpbnRmKGZpbGUs
ICIjZGVmaW5lIFRPVEFMX01PREVTICVkXG4iLCBuYl9tb2Rlcyk7CisgICBmcHJpbnRmKGZpbGUs
ICJzdGF0aWMgY29uc3QgQ0VMVE1vZGUgKiBjb25zdCBzdGF0aWNfbW9kZV9saXN0W1RPVEFMX01P
REVTXSA9IHtcbiIpOworICAgZm9yIChpPTA7aTxuYl9tb2RlcztpKyspCisgICB7CisgICAgICBD
RUxUTW9kZSAqbW9kZSA9IG1vZGVzW2ldOworICAgICAgaW50IG1kY3RTaXplOworICAgICAgbWRj
dFNpemUgPSBtb2RlLT5zaG9ydE1kY3RTaXplKm1vZGUtPm5iU2hvcnRNZGN0czsKKyAgICAgIGZw
cmludGYoZmlsZSwgIiZtb2RlJWRfJWRfJWQsXG4iLCBtb2RlLT5GcywgbWRjdFNpemUsIG1vZGUt
Pm92ZXJsYXApOworICAgfQorICAgZnByaW50ZihmaWxlLCAifTtcbiIpOworfQorCit2b2lkIGR1
bXBfaGVhZGVyKEZJTEUgKmZpbGUsIENFTFRNb2RlICoqbW9kZXMsIGludCBuYl9tb2RlcykKK3sK
KyAgIGludCBpOworICAgaW50IGNoYW5uZWxzID0gMDsKKyAgIGludCBmcmFtZV9zaXplID0gMDsK
KyAgIGludCBvdmVybGFwID0gMDsKKyAgIGZwcmludGYgKGZpbGUsICIvKiBUaGlzIGhlYWRlciBm
aWxlIGlzIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5Ki9cbiIpOworICAgZm9yIChpPTA7aTxuYl9t
b2RlcztpKyspCisgICB7CisgICAgICBDRUxUTW9kZSAqbW9kZSA9IG1vZGVzW2ldOworICAgICAg
aWYgKGZyYW1lX3NpemU9PTApCisgICAgICAgICBmcmFtZV9zaXplID0gbW9kZS0+c2hvcnRNZGN0
U2l6ZSptb2RlLT5uYlNob3J0TWRjdHM7CisgICAgICBlbHNlIGlmIChmcmFtZV9zaXplICE9IG1v
ZGUtPnNob3J0TWRjdFNpemUqbW9kZS0+bmJTaG9ydE1kY3RzKQorICAgICAgICAgZnJhbWVfc2l6
ZSA9IC0xOworICAgICAgaWYgKG92ZXJsYXA9PTApCisgICAgICAgICBvdmVybGFwID0gbW9kZS0+
b3ZlcmxhcDsKKyAgICAgIGVsc2UgaWYgKG92ZXJsYXAgIT0gbW9kZS0+b3ZlcmxhcCkKKyAgICAg
ICAgIG92ZXJsYXAgPSAtMTsKKyAgIH0KKyAgIGlmIChjaGFubmVscz4wKQorICAgeworICAgICAg
ZnByaW50ZiAoZmlsZSwgIiNkZWZpbmUgQ0hBTk5FTFMobW9kZSkgJWRcbiIsIGNoYW5uZWxzKTsK
KyAgICAgIGlmIChjaGFubmVscz09MSkKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICIjZGVmaW5l
IERJU0FCTEVfU1RFUkVPXG4iKTsKKyAgIH0KKyAgIGlmIChmcmFtZV9zaXplPjApCisgICB7Cisg
ICAgICBmcHJpbnRmIChmaWxlLCAiI2RlZmluZSBGUkFNRVNJWkUobW9kZSkgJWRcbiIsIGZyYW1l
X3NpemUpOworICAgfQorICAgaWYgKG92ZXJsYXA+MCkKKyAgIHsKKyAgICAgIGZwcmludGYgKGZp
bGUsICIjZGVmaW5lIE9WRVJMQVAobW9kZSkgJWRcbiIsIG92ZXJsYXApOworICAgfQorfQorCisj
aWZkZWYgRklYRURfUE9JTlQKKyNkZWZpbmUgQkFTRU5BTUUgInN0YXRpY19tb2Rlc19maXhlZCIK
KyNlbHNlCisjZGVmaW5lIEJBU0VOQU1FICJzdGF0aWNfbW9kZXNfZmxvYXQiCisjZW5kaWYKKwor
aW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQoreworICAgaW50IGksIG5iOworICAgRklM
RSAqZmlsZTsKKyAgIENFTFRNb2RlICoqbTsKKyAgIGlmIChhcmdjJTIgIT0gMSB8fCBhcmdjPDMp
CisgICB7CisgICAgICBmcHJpbnRmIChzdGRlcnIsICJVc2FnZTogJXMgcmF0ZSBmcmFtZV9zaXpl
IFtyYXRlIGZyYW1lX3NpemVdIFtyYXRlIGZyYW1lX3NpemVdLi4uXG4iLGFyZ3ZbMF0pOworICAg
ICAgcmV0dXJuIDE7CisgICB9CisgICBuYiA9IChhcmdjLTEpLzI7CisgICBtID0gbWFsbG9jKG5i
KnNpemVvZihDRUxUTW9kZSopKTsKKyAgIGZvciAoaT0wO2k8bmI7aSsrKQorICAgeworICAgICAg
aW50IEZzLCBmcmFtZTsKKyAgICAgIEZzICAgICAgPSBhdG9pKGFyZ3ZbMippKzFdKTsKKyAgICAg
IGZyYW1lICAgPSBhdG9pKGFyZ3ZbMippKzJdKTsKKyAgICAgIG1baV0gPSBvcHVzX2N1c3RvbV9t
b2RlX2NyZWF0ZShGcywgZnJhbWUsIE5VTEwpOworICAgICAgaWYgKG1baV09PU5VTEwpCisgICAg
ICB7CisgICAgICAgICBmcHJpbnRmKHN0ZGVyciwiRXJyb3IgY3JlYXRpbmcgbW9kZSB3aXRoIEZz
PSVzLCBmcmFtZV9zaXplPSVzXG4iLAorICAgICAgICAgICAgICAgYXJndlsyKmkrMV0sYXJndlsy
KmkrMl0pOworICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKKyAgICAgIH0KKyAgIH0KKyAg
IGZpbGUgPSBmb3BlbihCQVNFTkFNRSAiLmgiLCAidyIpOworI2lmZGVmIE9WRVJSSURFX0ZGVAor
ICAgZHVtcF9tb2Rlc19hcmNoX2luaXQobSwgbmIpOworI2VuZGlmCisgICBkdW1wX21vZGVzKGZp
bGUsIG0sIG5iKTsKKyAgIGZjbG9zZShmaWxlKTsKKyNpZmRlZiBPVkVSUklERV9GRlQKKyAgIGR1
bXBfbW9kZXNfYXJjaF9maW5hbGl6ZSgpOworI2VuZGlmCisgICBmb3IgKGk9MDtpPG5iO2krKykK
KyAgICAgIG9wdXNfY3VzdG9tX21vZGVfZGVzdHJveShtW2ldKTsKKyAgIGZyZWUobSk7CisgICBy
ZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9kdW1wX21vZGVzL2R1bXBfbW9kZXNfYXJjaC5o
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L2R1bXBfbW9kZXMvZHVtcF9tb2Rlc19hcmNoLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2MwZDRiZTFl
YzczMDhkYWNkODUzZjY1MjE5NDY1ODIwZWM3MWMxNAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9k
dW1wX21vZGVzL2R1bXBfbW9kZXNfYXJjaC5oCkBAIC0wLDAgKzEsNDUgQEAKKy8qIENvcHlyaWdo
dCAoYykgMjAxNSBYaXBoLk9yZyBGb3VuZGF0aW9uCisgICBXcml0dGVuIGJ5IFZpc3dhbmF0aCBQ
dXR0YWd1bnRhICovCisvKgorICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6
CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICAgTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisg
ICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lmbmRlZiBEVU1QX01PREVfQVJDSF9ICisjZGVm
aW5lIERVTVBfTU9ERV9BUkNIX0gKKwordm9pZCBkdW1wX21vZGVzX2FyY2hfaW5pdCgpOwordm9p
ZCBkdW1wX21vZGVfYXJjaChDRUxUTW9kZSAqbW9kZSk7Cit2b2lkIGR1bXBfbW9kZXNfYXJjaF9m
aW5hbGl6ZSgpOworCisjaWYgIWRlZmluZWQoRklYRURfUE9JTlQpCisjZGVmaW5lIEFSTV9ORTEw
X0FSQ0hfRklMRV9OQU1FICJzdGF0aWNfbW9kZXNfZmxvYXRfYXJtX25lMTAuaCIKKyNlbHNlCisj
ZGVmaW5lIEFSTV9ORTEwX0FSQ0hfRklMRV9OQU1FICJzdGF0aWNfbW9kZXNfZml4ZWRfYXJtX25l
MTAuaCIKKyNlbmRpZgorCisjaWYgZGVmaW5lZChIQVZFX0FSTV9ORTEwKQorI2RlZmluZSBPVkVS
UklERV9GRlQgKDEpCisjZW5kaWYKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rl
cy9kdW1wX21vZGVzX2FybV9uZTEwLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVzX2FybV9u
ZTEwLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uODI4ZTdiOWZmZjMxZjgxYmQ3NjE2OTVhMjQ3OTI2ZGYwNTZhNDFh
ZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9kdW1wX21vZGVzL2R1bXBfbW9kZXNfYXJtX25lMTAu
YwpAQCAtMCwwICsxLDE1MiBAQAorLyogQ29weXJpZ2h0IChjKSAyMDE1IFhpcGguT3JnIEZvdW5k
YXRpb24KKyAgIFdyaXR0ZW4gYnkgVmlzd2FuYXRoIFB1dHRhZ3VudGEgKi8KKy8qCisgICBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
CisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJ
QlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9X
TkVSCisgICBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAgIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAgIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICAg
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRgorICAgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcKKyAgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICAgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLwor
CisjaWYgZGVmaW5lZChIQVZFX0NPTkZJR19IKQorIyBpbmNsdWRlICJjb25maWcuaCIKKyNlbmRp
ZgorCisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlICJt
b2Rlcy5oIgorI2luY2x1ZGUgImR1bXBfbW9kZXNfYXJjaC5oIgorI2luY2x1ZGUgPE5FMTBfZHNw
Lmg+CisKKyNpZiAhZGVmaW5lZChGSVhFRF9QT0lOVCkKKyMgZGVmaW5lIE5FMTBfRkZUX0NGR19U
WVBFX1QgbmUxMF9mZnRfY2ZnX2Zsb2F0MzJfdAorIyBkZWZpbmUgTkUxMF9GRlRfQ1BYX1RZUEVf
VF9TVFIgIm5lMTBfZmZ0X2NweF9mbG9hdDMyX3QiCisjIGRlZmluZSBORTEwX0ZGVF9TVEFURV9U
WVBFX1RfU1RSICJuZTEwX2ZmdF9zdGF0ZV9mbG9hdDMyX3QiCisjZWxzZQorIyBkZWZpbmUgTkUx
MF9GRlRfQ0ZHX1RZUEVfVCBuZTEwX2ZmdF9jZmdfaW50MzJfdAorIyBkZWZpbmUgTkUxMF9GRlRf
Q1BYX1RZUEVfVF9TVFIgIm5lMTBfZmZ0X2NweF9pbnQzMl90IgorIyBkZWZpbmUgTkUxMF9GRlRf
U1RBVEVfVFlQRV9UX1NUUiAibmUxMF9mZnRfc3RhdGVfaW50MzJfdCIKKyNlbmRpZgorCitzdGF0
aWMgRklMRSAqZmlsZTsKKwordm9pZCBkdW1wX21vZGVzX2FyY2hfaW5pdChDRUxUTW9kZSAqKm1v
ZGVzLCBpbnQgbmJfbW9kZXMpCit7CisgICBpbnQgaTsKKworICAgZmlsZSA9IGZvcGVuKEFSTV9O
RTEwX0FSQ0hfRklMRV9OQU1FLCAidyIpOworICAgZnByaW50ZihmaWxlLCAiLyogVGhlIGNvbnRl
bnRzIG9mIHRoaXMgZmlsZSB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgYnlcbiIpOworICAg
ZnByaW50ZihmaWxlLCAiICogZHVtcF9tb2RlX2FybV9uZTEwLmMgd2l0aCBhcmd1bWVudHM6Iik7
CisgICBmb3IgKGk9MDtpPG5iX21vZGVzO2krKykKKyAgIHsKKyAgICAgIENFTFRNb2RlICptb2Rl
ID0gbW9kZXNbaV07CisgICAgICBmcHJpbnRmKGZpbGUsICIgJWQgJWQiLG1vZGUtPkZzLG1vZGUt
PnNob3J0TWRjdFNpemUqbW9kZS0+bmJTaG9ydE1kY3RzKTsKKyAgIH0KKyAgIGZwcmludGYoZmls
ZSwgIlxuICogSXQgY29udGFpbnMgc3RhdGljIGRlZmluaXRpb25zIGZvciBzb21lIHByZS1kZWZp
bmVkIG1vZGVzLiAqL1xuIik7CisgICBmcHJpbnRmKGZpbGUsICIjaW5jbHVkZSA8TkUxMF90eXBl
cy5oPlxuXG4iKTsKK30KKwordm9pZCBkdW1wX21vZGVzX2FyY2hfZmluYWxpemUoKQoreworICAg
ZmNsb3NlKGZpbGUpOworfQorCit2b2lkIGR1bXBfbW9kZV9hcmNoKENFTFRNb2RlICptb2RlKQor
eworICAgaW50IGssIGo7CisgICBpbnQgbWRjdFNpemU7CisKKyAgIG1kY3RTaXplID0gbW9kZS0+
c2hvcnRNZGN0U2l6ZSptb2RlLT5uYlNob3J0TWRjdHM7CisKKyAgIGZwcmludGYoZmlsZSwgIiNp
Zm5kZWYgTkUxMF9GRlRfUEFSQU1TJWRfJWRcbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7CisgICBm
cHJpbnRmKGZpbGUsICIjZGVmaW5lIE5FMTBfRkZUX1BBUkFNUyVkXyVkXG4iLCBtb2RlLT5Gcywg
bWRjdFNpemUpOworICAgLyogY2ZnLT5mYWN0b3JzICovCisgICBmb3Ioaz0wO2s8PW1vZGUtPm1k
Y3QubWF4c2hpZnQ7aysrKSB7CisgICAgICBORTEwX0ZGVF9DRkdfVFlQRV9UIGNmZzsKKyAgICAg
IGNmZyA9IChORTEwX0ZGVF9DRkdfVFlQRV9UKW1vZGUtPm1kY3Qua2ZmdFtrXS0+YXJjaF9mZnQt
PnByaXY7CisgICAgICBpZiAoIWNmZykKKyAgICAgICAgIGNvbnRpbnVlOworICAgICAgZnByaW50
ZihmaWxlLCAic3RhdGljIGNvbnN0IG5lMTBfaW50MzJfdCBuZTEwX2ZhY3RvcnNfJWRbJWRdID0g
e1xuIiwKKyAgICAgICAgICAgICAgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0LCAoTkUxMF9NQVhG
QUNUT1JTICogMikpOworICAgICAgZm9yKGo9MDtqPChORTEwX01BWEZBQ1RPUlMgKiAyKTtqKysp
IHsKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiVkLCVjIiwgY2ZnLT5mYWN0b3JzW2pdLChqKzE2
KSUxNT09MD8nXG4nOicgJyk7CisgICAgICB9CisgICAgICBmcHJpbnRmIChmaWxlLCAifTtcbiIp
OworICAgfQorCisgICAvKiBjZmctPnR3aWRkbGVzICovCisgICBmb3Ioaz0wO2s8PW1vZGUtPm1k
Y3QubWF4c2hpZnQ7aysrKSB7CisgICAgICBORTEwX0ZGVF9DRkdfVFlQRV9UIGNmZzsKKyAgICAg
IGNmZyA9IChORTEwX0ZGVF9DRkdfVFlQRV9UKW1vZGUtPm1kY3Qua2ZmdFtrXS0+YXJjaF9mZnQt
PnByaXY7CisgICAgICBpZiAoIWNmZykKKyAgICAgICAgIGNvbnRpbnVlOworICAgICAgZnByaW50
ZihmaWxlLCAic3RhdGljIGNvbnN0ICVzIG5lMTBfdHdpZGRsZXNfJWRbJWRdID0ge1xuIiwKKyAg
ICAgICAgICAgICAgTkUxMF9GRlRfQ1BYX1RZUEVfVF9TVFIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+
bmZmdCwKKyAgICAgICAgICAgICAgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgIGZv
cihqPTA7ajxtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQ7aisrKSB7CisjaWYgIWRlZmluZWQoRklY
RURfUE9JTlQpCisgICAgICAgICBmcHJpbnRmKGZpbGUsICJ7JSMwLjhnZiwlIzAuOGdmfSwlYyIs
CisgICAgICAgICAgICAgICAgIGNmZy0+dHdpZGRsZXNbal0uciwgY2ZnLT50d2lkZGxlc1tqXS5p
LChqKzQpJTM9PTA/J1xuJzonICcpOworI2Vsc2UKKyAgICAgICAgIGZwcmludGYoZmlsZSwgInsl
ZCwlZH0sJWMiLAorICAgICAgICAgICAgICAgICBjZmctPnR3aWRkbGVzW2pdLnIsIGNmZy0+dHdp
ZGRsZXNbal0uaSwoais0KSUzPT0wPydcbic6JyAnKTsKKyNlbmRpZgorICAgICAgfQorICAgICAg
ZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgIH0KKworICAgZm9yKGs9MDtrPD1tb2RlLT5tZGN0
Lm1heHNoaWZ0O2srKykgeworICAgICAgTkUxMF9GRlRfQ0ZHX1RZUEVfVCBjZmc7CisgICAgICBj
ZmcgPSAoTkUxMF9GRlRfQ0ZHX1RZUEVfVCltb2RlLT5tZGN0LmtmZnRba10tPmFyY2hfZmZ0LT5w
cml2OworICAgICAgaWYgKCFjZmcpIHsKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIi8qIE5lMTAg
ZG9lcyBub3Qgc3VwcG9ydCBzY2FsZWQgRkZUIGZvciBsZW5ndGggPSAlZCAqL1xuIiwKKyAgICAg
ICAgICAgICAgICAgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgICAgIGZwcmludGYo
ZmlsZSwgInN0YXRpYyBjb25zdCBhcmNoX2ZmdF9zdGF0ZSBjZmdfYXJjaF8lZCA9IHtcbiIsIG1v
ZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIwLFxuIik7
CisgICAgICAgICBmcHJpbnRmKGZpbGUsICJOVUxMXG4iKTsKKyAgICAgICAgIGZwcmludGYoZmls
ZSwgIn07XG4iKTsKKyAgICAgICAgIGNvbnRpbnVlOworICAgICAgfQorICAgICAgZnByaW50Zihm
aWxlLCAic3RhdGljIGNvbnN0ICVzICVzXyVkID0ge1xuIiwgTkUxMF9GRlRfU1RBVEVfVFlQRV9U
X1NUUiwKKyAgICAgICAgICAgICAgTkUxMF9GRlRfU1RBVEVfVFlQRV9UX1NUUiwgbW9kZS0+bWRj
dC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiVkLFxuIiwgY2ZnLT5uZmZ0
KTsKKyAgICAgIGZwcmludGYoZmlsZSwgIihuZTEwX2ludDMyX3QgKiluZTEwX2ZhY3RvcnNfJWQs
XG4iLCBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQpOworICAgICAgZnByaW50ZihmaWxlLCAiKCVz
ICopbmUxMF90d2lkZGxlc18lZCxcbiIsCisgICAgICAgICAgICAgIE5FMTBfRkZUX0NQWF9UWVBF
X1RfU1RSLCBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQpOworICAgICAgZnByaW50ZihmaWxlLCAi
TlVMTCxcbiIpOyAgLyogYnVmZmVyICovCisgICAgICBmcHJpbnRmKGZpbGUsICIoJXMgKikmbmUx
MF90d2lkZGxlc18lZFslZF0sXG4iLAorICAgICAgICAgICAgICBORTEwX0ZGVF9DUFhfVFlQRV9U
X1NUUiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0LCBjZmctPm5mZnQpOworI2lmICFkZWZpbmVk
KEZJWEVEX1BPSU5UKQorICAgICAgZnByaW50ZihmaWxlLCAiLyogaXNfZm9yd2FyZF9zY2FsZWQg
PSB0cnVlICovXG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIihuZTEwX2ludDMyX3QpIDEsXG4i
KTsKKyAgICAgIGZwcmludGYoZmlsZSwgIi8qIGlzX2JhY2t3YXJkX3NjYWxlZCA9IGZhbHNlICov
XG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIihuZTEwX2ludDMyX3QpIDAsXG4iKTsKKyNlbmRp
ZgorICAgICAgZnByaW50ZihmaWxlLCAifTtcbiIpOworCisgICAgICBmcHJpbnRmKGZpbGUsICJz
dGF0aWMgY29uc3QgYXJjaF9mZnRfc3RhdGUgY2ZnX2FyY2hfJWQgPSB7XG4iLAorICAgICAgICAg
ICAgICBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQpOworICAgICAgZnByaW50ZihmaWxlLCAiMSxc
biIpOworICAgICAgZnByaW50ZihmaWxlLCAiKHZvaWQgKikmJXNfJWQsXG4iLAorICAgICAgICAg
ICAgICBORTEwX0ZGVF9TVEFURV9UWVBFX1RfU1RSLCBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQp
OworICAgICAgZnByaW50ZihmaWxlLCAifTtcblxuIik7CisgICB9CisgICBmcHJpbnRmKGZpbGUs
ICIjZW5kaWYgIC8qIGVuZCBORTEwX0ZGVF9QQVJBTVMlZF8lZCAqL1xuIiwgbW9kZS0+RnMsIG1k
Y3RTaXplKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9jNXguaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9jNXgu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5lYTk1YTk5OGMzYzNmODc5ZTEwY2NkNzJlZmYyMDBkMWNlY2U5NzIwCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2ZpeGVkX2M1eC5oCkBAIC0wLDAgKzEsNzkgQEAKKy8qIENv
cHlyaWdodCAoQykgMjAwMyBKZWFuLU1hcmMgVmFsaW4gKi8KKy8qKgorICAgQGZpbGUgZml4ZWRf
YzV4LmgKKyAgIEBicmllZiBGaXhlZC1wb2ludCBvcGVyYXRpb25zIGZvciB0aGUgVEkgQzV4IERT
UCBmYW1pbHkKKyovCisvKgorICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6
CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICAgTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisg
ICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lmbmRlZiBGSVhFRF9DNVhfSAorI2RlZmluZSBG
SVhFRF9DNVhfSAorCisjaW5jbHVkZSAiZHNwbGliLmgiCisKKyN1bmRlZiBJTVVMMzIKK3N0YXRp
YyBPUFVTX0lOTElORSBsb25nIElNVUwzMihsb25nIGksIGxvbmcgaikKK3sKKyAgIGxvbmcgYWMw
LCBhYzE7CisgICBhYzAgPSBfbG1weShpPj4xNixqKTsKKyAgIGFjMSA9IGFjMCArIF9sbXB5KGks
aj4+MTYpOworICAgcmV0dXJuIF9sbXB5dShpLGopICsgKGFjMTw8MTYpOworfQorCisjdW5kZWYg
TUFYMTYKKyNkZWZpbmUgTUFYMTYoYSxiKSBfbWF4KGEsYikKKworI3VuZGVmIE1JTjE2CisjZGVm
aW5lIE1JTjE2KGEsYikgX21pbihhLGIpCisKKyN1bmRlZiBNQVgzMgorI2RlZmluZSBNQVgzMihh
LGIpIF9sbWF4KGEsYikKKworI3VuZGVmIE1JTjMyCisjZGVmaW5lIE1JTjMyKGEsYikgX2xtaW4o
YSxiKQorCisjdW5kZWYgVlNIUjMyCisjZGVmaW5lIFZTSFIzMihhLCBzaGlmdCkgX2xzaGwoYSwt
KHNoaWZ0KSkKKworI3VuZGVmIE1VTFQxNl8xNl9RMTUKKyNkZWZpbmUgTVVMVDE2XzE2X1ExNShh
LGIpIChfc21weShhLGIpKQorCisjdW5kZWYgTVVMVDE2XzE2U1UKKyNkZWZpbmUgTVVMVDE2XzE2
U1UoYSxiKSBfbG1weXN1KGEsYikKKworI3VuZGVmIE1VTFRfMTZfMTYKKyNkZWZpbmUgTVVMVF8x
Nl8xNihhLGIpIF9sbXB5KGEsYikKKworLyogRklYTUU6IFRoaXMgaXMgdGVjaG5pY2FsbHkgaW5j
b3JyZWN0IGFuZCBpcyBib3VuZCB0byBjYXVzZSBwcm9ibGVtcy4gSXMgdGhlcmUgYW55IGNsZWFu
ZXIgc29sdXRpb24/ICovCisjdW5kZWYgTVVMVDE2XzMyX1ExNQorI2RlZmluZSBNVUxUMTZfMzJf
UTE1KGEsYikgQUREMzIoU0hMKE1VTFQxNl8xNigoYSksU0hSKChiKSwxNikpLDEpLCBTSFIoTVVM
VDE2XzE2U1UoKGEpLChiKSksMTUpKQorCisjZGVmaW5lIGNlbHRfaWxvZzIoeCkgKDMwIC0gX2xu
b3JtKHgpKQorI2RlZmluZSBPVkVSUklERV9DRUxUX0lMT0cyCisKKyNkZWZpbmUgY2VsdF9tYXhh
YnMxNih4LCBsZW4pIE1BWDMyKEVYVEVORDMyKG1heHZhbCgoREFUQSAqKXgsIGxlbikpLC1FWFRF
TkQzMihtaW52YWwoKERBVEEgKil4LCBsZW4pKSkKKyNkZWZpbmUgT1ZFUlJJREVfQ0VMVF9NQVhB
QlMxNgorCisjZW5kaWYgLyogRklYRURfQzVYX0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9j
NnguaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC9maXhlZF9jNnguaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iYjZhZDkyNzgwM2Y5ZmFiYzE1NWUx
MGJkN2RhODQ1ZmNlMmU4Y2U4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2ZpeGVkX2M2eC5oCkBA
IC0wLDAgKzEsNzAgQEAKKy8qIENvcHlyaWdodCAoQykgMjAwOCBDU0lSTyAqLworLyoqCisgICBA
ZmlsZSBmaXhlZF9jNnguaAorICAgQGJyaWVmIEZpeGVkLXBvaW50IG9wZXJhdGlvbnMgZm9yIHRo
ZSBUSSBDNnggRFNQIGZhbWlseQorKi8KKy8qCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICAgYXJlIG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
CisgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSCisgICBPUiBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwKKyAgIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAgIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICAgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgorICAgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcKKyAgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaWZuZGVmIEZJWEVEX0M2WF9I
CisjZGVmaW5lIEZJWEVEX0M2WF9ICisKKyN1bmRlZiBNVUxUMTZfMTZTVQorI2RlZmluZSBNVUxU
MTZfMTZTVShhLGIpIF9tcHlzdShhLGIpCisKKyN1bmRlZiBNVUxUXzE2XzE2CisjZGVmaW5lIE1V
TFRfMTZfMTYoYSxiKSBfbXB5KGEsYikKKworI2RlZmluZSBjZWx0X2lsb2cyKHgpICgzMCAtIF9u
b3JtKHgpKQorI2RlZmluZSBPVkVSUklERV9DRUxUX0lMT0cyCisKKyN1bmRlZiBNVUxUMTZfMzJf
UTE1CisjZGVmaW5lIE1VTFQxNl8zMl9RMTUoYSxiKSAoX21weWxpbGwoYSwgYikgPj4gMTUpCisK
KyNpZiAwCisjaW5jbHVkZSAiZHNwbGliLmgiCisKKyN1bmRlZiBNQVgxNgorI2RlZmluZSBNQVgx
NihhLGIpIF9tYXgoYSxiKQorCisjdW5kZWYgTUlOMTYKKyNkZWZpbmUgTUlOMTYoYSxiKSBfbWlu
KGEsYikKKworI3VuZGVmIE1BWDMyCisjZGVmaW5lIE1BWDMyKGEsYikgX2xtYXgoYSxiKQorCisj
dW5kZWYgTUlOMzIKKyNkZWZpbmUgTUlOMzIoYSxiKSBfbG1pbihhLGIpCisKKyN1bmRlZiBWU0hS
MzIKKyNkZWZpbmUgVlNIUjMyKGEsIHNoaWZ0KSBfbHNobChhLC0oc2hpZnQpKQorCisjdW5kZWYg
TVVMVDE2XzE2X1ExNQorI2RlZmluZSBNVUxUMTZfMTZfUTE1KGEsYikgKF9zbXB5KGEsYikpCisK
KyNkZWZpbmUgY2VsdF9tYXhhYnMxNih4LCBsZW4pIE1BWDMyKEVYVEVORDMyKG1heHZhbCgoREFU
QSAqKXgsIGxlbikpLC1FWFRFTkQzMihtaW52YWwoKERBVEEgKil4LCBsZW4pKSkKKyNkZWZpbmUg
T1ZFUlJJREVfQ0VMVF9NQVhBQlMxNgorCisjZW5kaWYgLyogRklYRURfQzZYX0ggKi8KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC9maXhlZF9kZWJ1Zy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2ZpeGVkX2RlYnVnLmgKaW5kZXggZDI4MjI3
ZjVkYzcyODc5Y2VkOTQ0ZDhiNWRiODg4MGJhMzQ2NWYwMy4uZjQzNTI5NTIzNGNmZmI1M2NiMDU0
ZmNkZDBjYTA4ODVmNzg2ZDBmYSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2ZpeGVkX2RlYnVnLmgKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L2ZpeGVkX2RlYnVnLmgKQEAgLTU5LDYgKzU5LDE0IEBAIGV4dGVybiBvcHVzX2ludDY0IGNl
bHRfbWlwczsKICNkZWZpbmUgU0hSKGEsYikgU0hSMzIoYSxiKQogI2RlZmluZSBQU0hSKGEsYikg
UFNIUjMyKGEsYikKIAorLyoqIEFkZCB0d28gMzItYml0IHZhbHVlcywgaWdub3JlIGFueSBvdmVy
Zmxvd3MgKi8KKyNkZWZpbmUgQUREMzJfb3ZmbHcoYSxiKSAoY2VsdF9taXBzKz0yLChvcHVzX3Zh
bDMyKSgob3B1c191aW50MzIpKGEpKyhvcHVzX3VpbnQzMikoYikpKQorLyoqIFN1YnRyYWN0IHR3
byAzMi1iaXQgdmFsdWVzLCBpZ25vcmUgYW55IG92ZXJmbG93cyAqLworI2RlZmluZSBTVUIzMl9v
dmZsdyhhLGIpIChjZWx0X21pcHMrPTIsKG9wdXNfdmFsMzIpKChvcHVzX3VpbnQzMikoYSktKG9w
dXNfdWludDMyKShiKSkpCisvKiBBdm9pZCBNU1ZDIHdhcm5pbmcgQzQxNDY6IHVuYXJ5IG1pbnVz
IG9wZXJhdG9yIGFwcGxpZWQgdG8gdW5zaWduZWQgdHlwZSAqLworLyoqIE5lZ2F0ZSAzMi1iaXQg
dmFsdWUsIGlnbm9yZSBhbnkgb3ZlcmZsb3dzICovCisjZGVmaW5lIE5FRzMyX292Zmx3KGEpIChj
ZWx0X21pcHMrPTIsKG9wdXNfdmFsMzIpKDAtKG9wdXNfdWludDMyKShhKSkpCisKIHN0YXRpYyBP
UFVTX0lOTElORSBzaG9ydCBORUcxNihpbnQgeCkKIHsKICAgIGludCByZXM7CkBAIC0yMjcsMTIg
KzIzNSwxMSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgaW50IFNITDMyXyhvcHVzX2ludDY0IGEsIGlu
dCBzaGlmdCwgY2hhciAqZmlsZSwgaW50IGxpbmUpCiAjZGVmaW5lIFZTSFIzMihhLCBzaGlmdCkg
KCgoc2hpZnQpPjApID8gU0hSMzIoYSwgc2hpZnQpIDogU0hMMzIoYSwgLShzaGlmdCkpKQogCiAj
ZGVmaW5lIFJPVU5EMTYoeCxhKSAoY2VsdF9taXBzLS0sRVhUUkFDVDE2KFBTSFIzMigoeCksKGEp
KSkpCisjZGVmaW5lIFNST1VORDE2KHgsYSkgKGNlbHRfbWlwcy0tLEVYVFJBQ1QxNihTQVRVUkFU
RShQU0hSMzIoeCxhKSwgMzI3NjcpKSk7CisKICNkZWZpbmUgSEFMRjE2KHgpICAoU0hSMTYoeCwx
KSkKICNkZWZpbmUgSEFMRjMyKHgpICAoU0hSMzIoeCwxKSkKIAotLy8jZGVmaW5lIFNIUihhLHNo
aWZ0KSAoKGEpID4+IChzaGlmdCkpCi0vLyNkZWZpbmUgU0hMKGEsc2hpZnQpICgoYSkgPDwgKHNo
aWZ0KSkKLQogI2RlZmluZSBBREQxNihhLCBiKSBBREQxNl8oYSwgYiwgX19GSUxFX18sIF9fTElO
RV9fKQogc3RhdGljIE9QVVNfSU5MSU5FIHNob3J0IEFERDE2XyhpbnQgYSwgaW50IGIsIGNoYXIg
KmZpbGUsIGludCBsaW5lKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2ZpeGVkX2dlbmVyaWMuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9maXhlZF9nZW5lcmljLmgKaW5kZXggMWNmZDZkNjk4OTA2YmQ0ZmRlODdhMGJhMGU4NzQ2OWJk
YzNmZmRlNS4uNWY0YWJkYTc2ZWQ4YzA5NmZkMzBmOTU3ZGYyMDBlZjcwOTE1ZTdlMyAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L2ZpeGVkX2dlbmVyaWMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfZ2VuZXJpYy5oCkBAIC0x
MDQsNiArMTA0LDkgQEAKIAogLyoqIFNoaWZ0IGJ5IGEgYW5kIHJvdW5kLXRvLW5lYXJlYXN0IDMy
LWJpdCB2YWx1ZS4gUmVzdWx0IGlzIGEgMTYtYml0IHZhbHVlICovCiAjZGVmaW5lIFJPVU5EMTYo
eCxhKSAoRVhUUkFDVDE2KFBTSFIzMigoeCksKGEpKSkpCisvKiogU2hpZnQgYnkgYSBhbmQgcm91
bmQtdG8tbmVhcmVhc3QgMzItYml0IHZhbHVlLiBSZXN1bHQgaXMgYSBzYXR1cmF0ZWQgMTYtYml0
IHZhbHVlICovCisjZGVmaW5lIFNST1VORDE2KHgsYSkgRVhUUkFDVDE2KFNBVFVSQVRFKFBTSFIz
Mih4LGEpLCAzMjc2NykpOworCiAvKiogRGl2aWRlIGJ5IHR3byAqLwogI2RlZmluZSBIQUxGMTYo
eCkgIChTSFIxNih4LDEpKQogI2RlZmluZSBIQUxGMzIoeCkgIChTSFIzMih4LDEpKQpAQCAtMTE3
LDYgKzEyMCwxNCBAQAogLyoqIFN1YnRyYWN0IHR3byAzMi1iaXQgdmFsdWVzICovCiAjZGVmaW5l
IFNVQjMyKGEsYikgKChvcHVzX3ZhbDMyKShhKS0ob3B1c192YWwzMikoYikpCiAKKy8qKiBBZGQg
dHdvIDMyLWJpdCB2YWx1ZXMsIGlnbm9yZSBhbnkgb3ZlcmZsb3dzICovCisjZGVmaW5lIEFERDMy
X292Zmx3KGEsYikgKChvcHVzX3ZhbDMyKSgob3B1c191aW50MzIpKGEpKyhvcHVzX3VpbnQzMiko
YikpKQorLyoqIFN1YnRyYWN0IHR3byAzMi1iaXQgdmFsdWVzLCBpZ25vcmUgYW55IG92ZXJmbG93
cyAqLworI2RlZmluZSBTVUIzMl9vdmZsdyhhLGIpICgob3B1c192YWwzMikoKG9wdXNfdWludDMy
KShhKS0ob3B1c191aW50MzIpKGIpKSkKKy8qIEF2b2lkIE1TVkMgd2FybmluZyBDNDE0NjogdW5h
cnkgbWludXMgb3BlcmF0b3IgYXBwbGllZCB0byB1bnNpZ25lZCB0eXBlICovCisvKiogTmVnYXRl
IDMyLWJpdCB2YWx1ZSwgaWdub3JlIGFueSBvdmVyZmxvd3MgKi8KKyNkZWZpbmUgTkVHMzJfb3Zm
bHcoYSkgKChvcHVzX3ZhbDMyKSgwLShvcHVzX3VpbnQzMikoYSkpKQorCiAvKiogMTZ4MTYgbXVs
dGlwbGljYXRpb24gd2hlcmUgdGhlIHJlc3VsdCBmaXRzIGluIDE2IGJpdHMgKi8KICNkZWZpbmUg
TVVMVDE2XzE2XzE2KGEsYikgICAgICgoKChvcHVzX3ZhbDE2KShhKSkqKChvcHVzX3ZhbDE2KShi
KSkpKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZmxvYXRfY2FzdC5oIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Zsb2F0X2Nhc3QuaApp
bmRleCBlZDVhMzliNTQzM2I1OGYyZmEwODQzMmQyZWI2MTg5ZDZjYmU4ZjZjLi45OGI0MGFiY2Y2
NWY1ZGY3YTUxZDNkOWQ2N2Q2MTg2OWE1NTM1ZmU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZmxvYXRfY2Fz
dC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9mbG9hdF9jYXN0LmgKQEAgLTYxLDcgKzYxLDEzIEBACiAqKiAgICAgIHRo
ZSBjb25maWcuaCBmaWxlLgogKi8KIAotI2lmIChIQVZFX0xSSU5URikKKy8qIFdpdGggR0NDLCB3
aGVuIFNTRSBpcyBhdmFpbGFibGUsIHRoZSBmYXN0ZXN0IGNvbnZlcnNpb24gaXMgY3Z0c3Myc2ku
ICovCisjaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgZGVmaW5lZChfX1NTRV9fKQorCisjaW5jbHVk
ZSA8eG1taW50cmluLmg+CitzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQzMiBmbG9hdDJpbnQo
ZmxvYXQgeCkge3JldHVybiBfbW1fY3Z0X3NzMnNpKF9tbV9zZXRfc3MoeCkpO30KKworI2VsaWYg
ZGVmaW5lZChIQVZFX0xSSU5URikKIAogLyogICAgICBUaGVzZSBkZWZpbmVzIGVuYWJsZSBmdW5j
dGlvbmFsaXR5IGludHJvZHVjZWQgd2l0aCB0aGUgMTk5OSBJU08gQwogKiogICAgICBzdGFuZGFy
ZC4gVGhleSBtdXN0IGJlIGRlZmluZWQgYmVmb3JlIHRoZSBpbmNsdXNpb24gb2YgbWF0aC5oIHRv
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQva2lzc19mZnQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9raXNzX2ZmdC5jCmluZGV4IDFmOGZk
MDUzMjFhNDAyMDRhM2E2NmFkNTU4MThlNDY0YWFjOWE5OWMuLjgzNzc1MTY1ZDg2NmZiMDFkNThi
Y2E3MWZjZjU2M2NmOWRiOGM4ZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9raXNzX2ZmdC5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9raXNzX2ZmdC5jCkBAIC04Miw4ICs4Miw4IEBAIHN0YXRpYyB2b2lkIGtmX2JmbHkyKAogICAg
ICAgICAgQ19TVUIoIEZvdXQyWzBdICwgIEZvdXRbMF0gLCB0ICk7CiAgICAgICAgICBDX0FERFRP
KCBGb3V0WzBdICwgIHQgKTsKIAotICAgICAgICAgdC5yID0gU19NVUwoRm91dDJbMV0ucitGb3V0
MlsxXS5pLCB0dyk7Ci0gICAgICAgICB0LmkgPSBTX01VTChGb3V0MlsxXS5pLUZvdXQyWzFdLnIs
IHR3KTsKKyAgICAgICAgIHQuciA9IFNfTVVMKEFERDMyX292Zmx3KEZvdXQyWzFdLnIsIEZvdXQy
WzFdLmkpLCB0dyk7CisgICAgICAgICB0LmkgPSBTX01VTChTVUIzMl9vdmZsdyhGb3V0MlsxXS5p
LCBGb3V0MlsxXS5yKSwgdHcpOwogICAgICAgICAgQ19TVUIoIEZvdXQyWzFdICwgIEZvdXRbMV0g
LCB0ICk7CiAgICAgICAgICBDX0FERFRPKCBGb3V0WzFdICwgIHQgKTsKIApAQCAtOTIsOCArOTIs
OCBAQCBzdGF0aWMgdm9pZCBrZl9iZmx5MigKICAgICAgICAgIENfU1VCKCBGb3V0MlsyXSAsICBG
b3V0WzJdICwgdCApOwogICAgICAgICAgQ19BRERUTyggRm91dFsyXSAsICB0ICk7CiAKLSAgICAg
ICAgIHQuciA9IFNfTVVMKEZvdXQyWzNdLmktRm91dDJbM10uciwgdHcpOwotICAgICAgICAgdC5p
ID0gU19NVUwoLUZvdXQyWzNdLmktRm91dDJbM10uciwgdHcpOworICAgICAgICAgdC5yID0gU19N
VUwoU1VCMzJfb3ZmbHcoRm91dDJbM10uaSwgRm91dDJbM10uciksIHR3KTsKKyAgICAgICAgIHQu
aSA9IFNfTVVMKE5FRzMyX292Zmx3KEFERDMyX292Zmx3KEZvdXQyWzNdLmksIEZvdXQyWzNdLnIp
KSwgdHcpOwogICAgICAgICAgQ19TVUIoIEZvdXQyWzNdICwgIEZvdXRbM10gLCB0ICk7CiAgICAg
ICAgICBDX0FERFRPKCBGb3V0WzNdICwgIHQgKTsKICAgICAgICAgIEZvdXQgKz0gODsKQEAgLTEy
NiwxMCArMTI2LDEwIEBAIHN0YXRpYyB2b2lkIGtmX2JmbHk0KAogICAgICAgICAgQ19BRERUTygg
KkZvdXQgLCBzY3JhdGNoMSApOwogICAgICAgICAgQ19TVUIoIHNjcmF0Y2gxICwgRm91dFsxXSAs
IEZvdXRbM10gKTsKIAotICAgICAgICAgRm91dFsxXS5yID0gc2NyYXRjaDAuciArIHNjcmF0Y2gx
Lmk7Ci0gICAgICAgICBGb3V0WzFdLmkgPSBzY3JhdGNoMC5pIC0gc2NyYXRjaDEucjsKLSAgICAg
ICAgIEZvdXRbM10uciA9IHNjcmF0Y2gwLnIgLSBzY3JhdGNoMS5pOwotICAgICAgICAgRm91dFsz
XS5pID0gc2NyYXRjaDAuaSArIHNjcmF0Y2gxLnI7CisgICAgICAgICBGb3V0WzFdLnIgPSBBREQz
Ml9vdmZsdyhzY3JhdGNoMC5yLCBzY3JhdGNoMS5pKTsKKyAgICAgICAgIEZvdXRbMV0uaSA9IFNV
QjMyX292Zmx3KHNjcmF0Y2gwLmksIHNjcmF0Y2gxLnIpOworICAgICAgICAgRm91dFszXS5yID0g
U1VCMzJfb3ZmbHcoc2NyYXRjaDAuciwgc2NyYXRjaDEuaSk7CisgICAgICAgICBGb3V0WzNdLmkg
PSBBREQzMl9vdmZsdyhzY3JhdGNoMC5pLCBzY3JhdGNoMS5yKTsKICAgICAgICAgIEZvdXQrPTQ7
CiAgICAgICB9CiAgICB9IGVsc2UgewpAQCAtMTYwLDEwICsxNjAsMTAgQEAgc3RhdGljIHZvaWQg
a2ZfYmZseTQoCiAgICAgICAgICAgICB0dzMgKz0gZnN0cmlkZSozOwogICAgICAgICAgICAgQ19B
RERUTyggKkZvdXQgLCBzY3JhdGNoWzNdICk7CiAKLSAgICAgICAgICAgIEZvdXRbbV0uciA9IHNj
cmF0Y2hbNV0uciArIHNjcmF0Y2hbNF0uaTsKLSAgICAgICAgICAgIEZvdXRbbV0uaSA9IHNjcmF0
Y2hbNV0uaSAtIHNjcmF0Y2hbNF0ucjsKLSAgICAgICAgICAgIEZvdXRbbTNdLnIgPSBzY3JhdGNo
WzVdLnIgLSBzY3JhdGNoWzRdLmk7Ci0gICAgICAgICAgICBGb3V0W20zXS5pID0gc2NyYXRjaFs1
XS5pICsgc2NyYXRjaFs0XS5yOworICAgICAgICAgICAgRm91dFttXS5yID0gQUREMzJfb3ZmbHco
c2NyYXRjaFs1XS5yLCBzY3JhdGNoWzRdLmkpOworICAgICAgICAgICAgRm91dFttXS5pID0gU1VC
MzJfb3ZmbHcoc2NyYXRjaFs1XS5pLCBzY3JhdGNoWzRdLnIpOworICAgICAgICAgICAgRm91dFtt
M10uciA9IFNVQjMyX292Zmx3KHNjcmF0Y2hbNV0uciwgc2NyYXRjaFs0XS5pKTsKKyAgICAgICAg
ICAgIEZvdXRbbTNdLmkgPSBBREQzMl9vdmZsdyhzY3JhdGNoWzVdLmksIHNjcmF0Y2hbNF0ucik7
CiAgICAgICAgICAgICArK0ZvdXQ7CiAgICAgICAgICB9CiAgICAgICB9CkBAIC0yMTIsMTggKzIx
MiwxOCBAQCBzdGF0aWMgdm9pZCBrZl9iZmx5MygKICAgICAgICAgIHR3MSArPSBmc3RyaWRlOwog
ICAgICAgICAgdHcyICs9IGZzdHJpZGUqMjsKIAotICAgICAgICAgRm91dFttXS5yID0gRm91dC0+
ciAtIEhBTEZfT0Yoc2NyYXRjaFszXS5yKTsKLSAgICAgICAgIEZvdXRbbV0uaSA9IEZvdXQtPmkg
LSBIQUxGX09GKHNjcmF0Y2hbM10uaSk7CisgICAgICAgICBGb3V0W21dLnIgPSBTVUIzMl9vdmZs
dyhGb3V0LT5yLCBIQUxGX09GKHNjcmF0Y2hbM10ucikpOworICAgICAgICAgRm91dFttXS5pID0g
U1VCMzJfb3ZmbHcoRm91dC0+aSwgSEFMRl9PRihzY3JhdGNoWzNdLmkpKTsKIAogICAgICAgICAg
Q19NVUxCWVNDQUxBUiggc2NyYXRjaFswXSAsIGVwaTMuaSApOwogCiAgICAgICAgICBDX0FERFRP
KCpGb3V0LHNjcmF0Y2hbM10pOwogCi0gICAgICAgICBGb3V0W20yXS5yID0gRm91dFttXS5yICsg
c2NyYXRjaFswXS5pOwotICAgICAgICAgRm91dFttMl0uaSA9IEZvdXRbbV0uaSAtIHNjcmF0Y2hb
MF0ucjsKKyAgICAgICAgIEZvdXRbbTJdLnIgPSBBREQzMl9vdmZsdyhGb3V0W21dLnIsIHNjcmF0
Y2hbMF0uaSk7CisgICAgICAgICBGb3V0W20yXS5pID0gU1VCMzJfb3ZmbHcoRm91dFttXS5pLCBz
Y3JhdGNoWzBdLnIpOwogCi0gICAgICAgICBGb3V0W21dLnIgLT0gc2NyYXRjaFswXS5pOwotICAg
ICAgICAgRm91dFttXS5pICs9IHNjcmF0Y2hbMF0ucjsKKyAgICAgICAgIEZvdXRbbV0uciA9IFNV
QjMyX292Zmx3KEZvdXRbbV0uciwgc2NyYXRjaFswXS5pKTsKKyAgICAgICAgIEZvdXRbbV0uaSA9
IEFERDMyX292Zmx3KEZvdXRbbV0uaSwgc2NyYXRjaFswXS5yKTsKIAogICAgICAgICAgKytGb3V0
OwogICAgICAgfSB3aGlsZSgtLWspOwpAQCAtMjgyLDIyICsyODIsMjIgQEAgc3RhdGljIHZvaWQg
a2ZfYmZseTUoCiAgICAgICAgICBDX0FERCggc2NyYXRjaFs4XSxzY3JhdGNoWzJdLHNjcmF0Y2hb
M10pOwogICAgICAgICAgQ19TVUIoIHNjcmF0Y2hbOV0sc2NyYXRjaFsyXSxzY3JhdGNoWzNdKTsK
IAotICAgICAgICAgRm91dDAtPnIgKz0gc2NyYXRjaFs3XS5yICsgc2NyYXRjaFs4XS5yOwotICAg
ICAgICAgRm91dDAtPmkgKz0gc2NyYXRjaFs3XS5pICsgc2NyYXRjaFs4XS5pOworICAgICAgICAg
Rm91dDAtPnIgPSBBREQzMl9vdmZsdyhGb3V0MC0+ciwgQUREMzJfb3ZmbHcoc2NyYXRjaFs3XS5y
LCBzY3JhdGNoWzhdLnIpKTsKKyAgICAgICAgIEZvdXQwLT5pID0gQUREMzJfb3ZmbHcoRm91dDAt
PmksIEFERDMyX292Zmx3KHNjcmF0Y2hbN10uaSwgc2NyYXRjaFs4XS5pKSk7CiAKLSAgICAgICAg
IHNjcmF0Y2hbNV0uciA9IHNjcmF0Y2hbMF0uciArIFNfTVVMKHNjcmF0Y2hbN10ucix5YS5yKSAr
IFNfTVVMKHNjcmF0Y2hbOF0ucix5Yi5yKTsKLSAgICAgICAgIHNjcmF0Y2hbNV0uaSA9IHNjcmF0
Y2hbMF0uaSArIFNfTVVMKHNjcmF0Y2hbN10uaSx5YS5yKSArIFNfTVVMKHNjcmF0Y2hbOF0uaSx5
Yi5yKTsKKyAgICAgICAgIHNjcmF0Y2hbNV0uciA9IEFERDMyX292Zmx3KHNjcmF0Y2hbMF0uciwg
QUREMzJfb3ZmbHcoU19NVUwoc2NyYXRjaFs3XS5yLHlhLnIpLCBTX01VTChzY3JhdGNoWzhdLnIs
eWIucikpKTsKKyAgICAgICAgIHNjcmF0Y2hbNV0uaSA9IEFERDMyX292Zmx3KHNjcmF0Y2hbMF0u
aSwgQUREMzJfb3ZmbHcoU19NVUwoc2NyYXRjaFs3XS5pLHlhLnIpLCBTX01VTChzY3JhdGNoWzhd
LmkseWIucikpKTsKIAotICAgICAgICAgc2NyYXRjaFs2XS5yID0gIFNfTVVMKHNjcmF0Y2hbMTBd
LmkseWEuaSkgKyBTX01VTChzY3JhdGNoWzldLmkseWIuaSk7Ci0gICAgICAgICBzY3JhdGNoWzZd
LmkgPSAtU19NVUwoc2NyYXRjaFsxMF0ucix5YS5pKSAtIFNfTVVMKHNjcmF0Y2hbOV0ucix5Yi5p
KTsKKyAgICAgICAgIHNjcmF0Y2hbNl0uciA9ICBBREQzMl9vdmZsdyhTX01VTChzY3JhdGNoWzEw
XS5pLHlhLmkpLCBTX01VTChzY3JhdGNoWzldLmkseWIuaSkpOworICAgICAgICAgc2NyYXRjaFs2
XS5pID0gTkVHMzJfb3ZmbHcoQUREMzJfb3ZmbHcoU19NVUwoc2NyYXRjaFsxMF0ucix5YS5pKSwg
U19NVUwoc2NyYXRjaFs5XS5yLHliLmkpKSk7CiAKICAgICAgICAgIENfU1VCKCpGb3V0MSxzY3Jh
dGNoWzVdLHNjcmF0Y2hbNl0pOwogICAgICAgICAgQ19BREQoKkZvdXQ0LHNjcmF0Y2hbNV0sc2Ny
YXRjaFs2XSk7CiAKLSAgICAgICAgIHNjcmF0Y2hbMTFdLnIgPSBzY3JhdGNoWzBdLnIgKyBTX01V
TChzY3JhdGNoWzddLnIseWIucikgKyBTX01VTChzY3JhdGNoWzhdLnIseWEucik7Ci0gICAgICAg
ICBzY3JhdGNoWzExXS5pID0gc2NyYXRjaFswXS5pICsgU19NVUwoc2NyYXRjaFs3XS5pLHliLnIp
ICsgU19NVUwoc2NyYXRjaFs4XS5pLHlhLnIpOwotICAgICAgICAgc2NyYXRjaFsxMl0uciA9IC0g
U19NVUwoc2NyYXRjaFsxMF0uaSx5Yi5pKSArIFNfTVVMKHNjcmF0Y2hbOV0uaSx5YS5pKTsKLSAg
ICAgICAgIHNjcmF0Y2hbMTJdLmkgPSBTX01VTChzY3JhdGNoWzEwXS5yLHliLmkpIC0gU19NVUwo
c2NyYXRjaFs5XS5yLHlhLmkpOworICAgICAgICAgc2NyYXRjaFsxMV0uciA9IEFERDMyX292Zmx3
KHNjcmF0Y2hbMF0uciwgQUREMzJfb3ZmbHcoU19NVUwoc2NyYXRjaFs3XS5yLHliLnIpLCBTX01V
TChzY3JhdGNoWzhdLnIseWEucikpKTsKKyAgICAgICAgIHNjcmF0Y2hbMTFdLmkgPSBBREQzMl9v
dmZsdyhzY3JhdGNoWzBdLmksIEFERDMyX292Zmx3KFNfTVVMKHNjcmF0Y2hbN10uaSx5Yi5yKSwg
U19NVUwoc2NyYXRjaFs4XS5pLHlhLnIpKSk7CisgICAgICAgICBzY3JhdGNoWzEyXS5yID0gU1VC
MzJfb3ZmbHcoU19NVUwoc2NyYXRjaFs5XS5pLHlhLmkpLCBTX01VTChzY3JhdGNoWzEwXS5pLHli
LmkpKTsKKyAgICAgICAgIHNjcmF0Y2hbMTJdLmkgPSBTVUIzMl9vdmZsdyhTX01VTChzY3JhdGNo
WzEwXS5yLHliLmkpLCBTX01VTChzY3JhdGNoWzldLnIseWEuaSkpOwogCiAgICAgICAgICBDX0FE
RCgqRm91dDIsc2NyYXRjaFsxMV0sc2NyYXRjaFsxMl0pOwogICAgICAgICAgQ19TVUIoKkZvdXQz
LHNjcmF0Y2hbMTFdLHNjcmF0Y2hbMTJdKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9tYXRob3BzLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvbWF0aG9wcy5oCmluZGV4IGEwNTI1YTk2MTAzMGFlNWRmMTY3NGZmNTk2MTJmMjA1NDQ1M2E5
MjEuLjFmOGEyMGNiNDU0MDI1NWZmYzRlYTBhNWY2NzE2YTMxNzk4YzZhNmYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9tYXRob3BzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21hdGhvcHMuaApAQCAtMzgsMTEgKzM4LDQ0IEBACiAj
aW5jbHVkZSAiZW50Y29kZS5oIgogI2luY2x1ZGUgIm9zX3N1cHBvcnQuaCIKIAorI2RlZmluZSBQ
SSAzLjE0MTU5MjY1M2YKKwogLyogTXVsdGlwbGllcyB0d28gMTYtYml0IGZyYWN0aW9uYWwgdmFs
dWVzLiBCaXQtZXhhY3RuZXNzIG9mIHRoaXMgbWFjcm8gaXMgaW1wb3J0YW50ICovCiAjZGVmaW5l
IEZSQUNfTVVMMTYoYSxiKSAoKDE2Mzg0Kygob3B1c19pbnQzMikob3B1c19pbnQxNikoYSkqKG9w
dXNfaW50MTYpKGIpKSk+PjE1KQogCiB1bnNpZ25lZCBpc3FydDMyKG9wdXNfdWludDMyIF92YWwp
OwogCisvKiBDRUxUIGRvZXNuJ3QgbmVlZCBpdCBmb3IgZml4ZWQtcG9pbnQsIGJ5IGFuYWx5c2lz
LmMgZG9lcy4gKi8KKyNpZiAhZGVmaW5lZChGSVhFRF9QT0lOVCkgfHwgZGVmaW5lZChBTkFMWVNJ
U19DKQorI2RlZmluZSBjQSAwLjQzMTU3OTc0ZgorI2RlZmluZSBjQiAwLjY3ODQ4NDAzZgorI2Rl
ZmluZSBjQyAwLjA4NTk1NTQyZgorI2RlZmluZSBjRSAoKGZsb2F0KVBJLzIpCitzdGF0aWMgT1BV
U19JTkxJTkUgZmxvYXQgZmFzdF9hdGFuMmYoZmxvYXQgeSwgZmxvYXQgeCkgeworICAgZmxvYXQg
eDIsIHkyOworICAgeDIgPSB4Kng7CisgICB5MiA9IHkqeTsKKyAgIC8qIEZvciB2ZXJ5IHNtYWxs
IHZhbHVlcywgd2UgZG9uJ3QgY2FyZSBhYm91dCB0aGUgYW5zd2VyLCBzbworICAgICAgd2UgY2Fu
IGp1c3QgcmV0dXJuIDAuICovCisgICBpZiAoeDIgKyB5MiA8IDFlLTE4ZikKKyAgIHsKKyAgICAg
IHJldHVybiAwOworICAgfQorICAgaWYoeDI8eTIpeworICAgICAgZmxvYXQgZGVuID0gKHkyICsg
Y0IqeDIpICogKHkyICsgY0MqeDIpOworICAgICAgcmV0dXJuIC14KnkqKHkyICsgY0EqeDIpIC8g
ZGVuICsgKHk8MCA/IC1jRSA6IGNFKTsKKyAgIH1lbHNleworICAgICAgZmxvYXQgZGVuID0gKHgy
ICsgY0IqeTIpICogKHgyICsgY0MqeTIpOworICAgICAgcmV0dXJuICB4KnkqKHgyICsgY0EqeTIp
IC8gZGVuICsgKHk8MCA/IC1jRSA6IGNFKSAtICh4Knk8MCA/IC1jRSA6IGNFKTsKKyAgIH0KK30K
KyN1bmRlZiBjQQorI3VuZGVmIGNCCisjdW5kZWYgY0MKKyN1bmRlZiBjRAorI2VuZGlmCisKKwog
I2lmbmRlZiBPVkVSUklERV9DRUxUX01BWEFCUzE2CiBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c192
YWwzMiBjZWx0X21heGFiczE2KGNvbnN0IG9wdXNfdmFsMTYgKngsIGludCBsZW4pCiB7CkBAIC04
MCw3ICsxMTMsNiBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c192YWwzMiBjZWx0X21heGFiczMy
KGNvbnN0IG9wdXNfdmFsMzIgKngsIGludCBsZW4pCiAKICNpZm5kZWYgRklYRURfUE9JTlQKIAot
I2RlZmluZSBQSSAzLjE0MTU5MjY1M2YKICNkZWZpbmUgY2VsdF9zcXJ0KHgpICgoZmxvYXQpc3Fy
dCh4KSkKICNkZWZpbmUgY2VsdF9yc3FydCh4KSAoMS5mL2NlbHRfc3FydCh4KSkKICNkZWZpbmUg
Y2VsdF9yc3FydF9ub3JtKHgpIChjZWx0X3JzcXJ0KHgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21kY3Qu
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9tZGN0LmMKaW5kZXggNTMxNWFkMTFhMzdiYmE5MjExZDQ5YjU1ZGVmNTVlZTdmMTUy
YzIyYy4uNWM2ZGFiNWI3NTdhNjRhZjkxMjkzNmYwY2U2ZmUyMmI4ZmMxMTJlMiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L21kY3QuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbWRjdC5jCkBAIC0yNzAsOCArMjcwLDggQEAgdm9pZCBj
bHRfbWRjdF9iYWNrd2FyZF9jKGNvbnN0IG1kY3RfbG9va3VwICpsLCBraXNzX2ZmdF9zY2FsYXIg
KmluLCBraXNzX2ZmdF9zY2EKICAgICAgICAgIGludCByZXY7CiAgICAgICAgICBraXNzX2ZmdF9z
Y2FsYXIgeXIsIHlpOwogICAgICAgICAgcmV2ID0gKmJpdHJldisrOwotICAgICAgICAgeXIgPSBT
X01VTCgqeHAyLCB0W2ldKSArIFNfTVVMKCp4cDEsIHRbTjQraV0pOwotICAgICAgICAgeWkgPSBT
X01VTCgqeHAxLCB0W2ldKSAtIFNfTVVMKCp4cDIsIHRbTjQraV0pOworICAgICAgICAgeXIgPSBB
REQzMl9vdmZsdyhTX01VTCgqeHAyLCB0W2ldKSwgU19NVUwoKnhwMSwgdFtONCtpXSkpOworICAg
ICAgICAgeWkgPSBTVUIzMl9vdmZsdyhTX01VTCgqeHAxLCB0W2ldKSwgU19NVUwoKnhwMiwgdFtO
NCtpXSkpOwogICAgICAgICAgLyogV2Ugc3dhcCByZWFsIGFuZCBpbWFnIGJlY2F1c2Ugd2UgdXNl
IGFuIEZGVCBpbnN0ZWFkIG9mIGFuIElGRlQuICovCiAgICAgICAgICB5cFsyKnJldisxXSA9IHly
OwogICAgICAgICAgeXBbMipyZXZdID0geWk7CkBAIC0zMDEsOCArMzAxLDggQEAgdm9pZCBjbHRf
bWRjdF9iYWNrd2FyZF9jKGNvbnN0IG1kY3RfbG9va3VwICpsLCBraXNzX2ZmdF9zY2FsYXIgKmlu
LCBraXNzX2ZmdF9zY2EKICAgICAgICAgIHQwID0gdFtpXTsKICAgICAgICAgIHQxID0gdFtONCtp
XTsKICAgICAgICAgIC8qIFdlJ2Qgc2NhbGUgdXAgYnkgMiBoZXJlLCBidXQgaW5zdGVhZCBpdCdz
IGRvbmUgd2hlbiBtaXhpbmcgdGhlIHdpbmRvd3MgKi8KLSAgICAgICAgIHlyID0gU19NVUwocmUs
dDApICsgU19NVUwoaW0sdDEpOwotICAgICAgICAgeWkgPSBTX01VTChyZSx0MSkgLSBTX01VTChp
bSx0MCk7CisgICAgICAgICB5ciA9IEFERDMyX292Zmx3KFNfTVVMKHJlLHQwKSwgU19NVUwoaW0s
dDEpKTsKKyAgICAgICAgIHlpID0gU1VCMzJfb3ZmbHcoU19NVUwocmUsdDEpLCBTX01VTChpbSx0
MCkpOwogICAgICAgICAgLyogV2Ugc3dhcCByZWFsIGFuZCBpbWFnIGJlY2F1c2Ugd2UncmUgdXNp
bmcgYW4gRkZUIGluc3RlYWQgb2YgYW4gSUZGVC4gKi8KICAgICAgICAgIHJlID0geXAxWzFdOwog
ICAgICAgICAgaW0gPSB5cDFbMF07CkBAIC0zMTIsOCArMzEyLDggQEAgdm9pZCBjbHRfbWRjdF9i
YWNrd2FyZF9jKGNvbnN0IG1kY3RfbG9va3VwICpsLCBraXNzX2ZmdF9zY2FsYXIgKmluLCBraXNz
X2ZmdF9zY2EKICAgICAgICAgIHQwID0gdFsoTjQtaS0xKV07CiAgICAgICAgICB0MSA9IHRbKE4y
LWktMSldOwogICAgICAgICAgLyogV2UnZCBzY2FsZSB1cCBieSAyIGhlcmUsIGJ1dCBpbnN0ZWFk
IGl0J3MgZG9uZSB3aGVuIG1peGluZyB0aGUgd2luZG93cyAqLwotICAgICAgICAgeXIgPSBTX01V
TChyZSx0MCkgKyBTX01VTChpbSx0MSk7Ci0gICAgICAgICB5aSA9IFNfTVVMKHJlLHQxKSAtIFNf
TVVMKGltLHQwKTsKKyAgICAgICAgIHlyID0gQUREMzJfb3ZmbHcoU19NVUwocmUsdDApLCBTX01V
TChpbSx0MSkpOworICAgICAgICAgeWkgPSBTVUIzMl9vdmZsdyhTX01VTChyZSx0MSksIFNfTVVM
KGltLHQwKSk7CiAgICAgICAgICB5cDFbMF0gPSB5cjsKICAgICAgICAgIHlwMFsxXSA9IHlpOwog
ICAgICAgICAgeXAwICs9IDI7CkBAIC0zMzMsOCArMzMzLDggQEAgdm9pZCBjbHRfbWRjdF9iYWNr
d2FyZF9jKGNvbnN0IG1kY3RfbG9va3VwICpsLCBraXNzX2ZmdF9zY2FsYXIgKmluLCBraXNzX2Zm
dF9zY2EKICAgICAgICAgIGtpc3NfZmZ0X3NjYWxhciB4MSwgeDI7CiAgICAgICAgICB4MSA9ICp4
cDE7CiAgICAgICAgICB4MiA9ICp5cDE7Ci0gICAgICAgICAqeXAxKysgPSBNVUxUMTZfMzJfUTE1
KCp3cDIsIHgyKSAtIE1VTFQxNl8zMl9RMTUoKndwMSwgeDEpOwotICAgICAgICAgKnhwMS0tID0g
TVVMVDE2XzMyX1ExNSgqd3AxLCB4MikgKyBNVUxUMTZfMzJfUTE1KCp3cDIsIHgxKTsKKyAgICAg
ICAgICp5cDErKyA9IFNVQjMyX292Zmx3KE1VTFQxNl8zMl9RMTUoKndwMiwgeDIpLCBNVUxUMTZf
MzJfUTE1KCp3cDEsIHgxKSk7CisgICAgICAgICAqeHAxLS0gPSBBREQzMl9vdmZsdyhNVUxUMTZf
MzJfUTE1KCp3cDEsIHgyKSwgTVVMVDE2XzMyX1ExNSgqd3AyLCB4MSkpOwogICAgICAgICAgd3Ax
Kys7CiAgICAgICAgICB3cDItLTsKICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9taXBzL3ZxX21p
cHNyMS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L21pcHMvdnFfbWlwc3IxLmgKaW5kZXggNTRjZWY4NjEzMzc1NDA5NzE3Yjg2
ZWVhYWZiNzM0NmQxMmVhYTgwMC4uZmQxOGVhYjdhOTY2MDQ2NTM5YTYwYjhhMjJkZGVlZDJmMWEw
YTViNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21pcHMvdnFfbWlwc3IxLmgKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21pcHMvdnFf
bWlwc3IxLmgKQEAgLTM2LDkgKzM2LDYgQEAKICNpbmNsdWRlICJtYXRob3BzLmgiCiAjaW5jbHVk
ZSAiYXJjaC5oIgogCi1zdGF0aWMgdW5zaWduZWQgZXh0cmFjdF9jb2xsYXBzZV9tYXNrKGludCAq
aXksIGludCBOLCBpbnQgQik7Ci1zdGF0aWMgdm9pZCBub3JtYWxpc2VfcmVzaWR1YWwoaW50ICog
T1BVU19SRVNUUklDVCBpeSwgY2VsdF9ub3JtICogT1BVU19SRVNUUklDVCBYLCBpbnQgTiwgb3B1
c192YWwzMiBSeXksIG9wdXNfdmFsMTYgZ2Fpbik7Ci1zdGF0aWMgdm9pZCBleHBfcm90YXRpb24o
Y2VsdF9ub3JtICpYLCBpbnQgbGVuLCBpbnQgZGlyLCBpbnQgc3RyaWRlLCBpbnQgSywgaW50IHNw
cmVhZCk7CiBzdGF0aWMgdm9pZCByZW5vcm1hbGlzZV92ZWN0b3JfbWlwcyhjZWx0X25vcm0gKlgs
IGludCBOLCBvcHVzX3ZhbDE2IGdhaW4sIGludCBhcmNoKTsKIAogI2RlZmluZSBPVkVSUklERV92
cV9leHBfcm90YXRpb24xCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbW9kZXMuYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9tb2Rlcy5jCmlu
ZGV4IDkxMTY4NmU5MDU1MjI5ODZiMzRmNGRiNTdkMTYyM2FlNDIzYWFjZDguLjM5MGM1ZThhZWIz
NmFhNDhiMTZkMmZmYTIwMjU1NGRjMTc0ZGE2NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9tb2Rlcy5jCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9tb2Rlcy5jCkBAIC00MjcsNyArNDI3LDcgQEAgdm9pZCBvcHVzX2N1c3RvbV9tb2Rl
X2Rlc3Ryb3koQ0VMVE1vZGUgKm1vZGUpCiAgICB9CiAjZW5kaWYgLyogQ1VTVE9NX01PREVTX09O
TFkgKi8KICAgIG9wdXNfZnJlZSgob3B1c19pbnQxNiopbW9kZS0+ZUJhbmRzKTsKLSAgIG9wdXNf
ZnJlZSgob3B1c19pbnQxNiopbW9kZS0+YWxsb2NWZWN0b3JzKTsKKyAgIG9wdXNfZnJlZSgodW5z
aWduZWQgY2hhciopbW9kZS0+YWxsb2NWZWN0b3JzKTsKIAogICAgb3B1c19mcmVlKChvcHVzX3Zh
bDE2Kiltb2RlLT53aW5kb3cpOwogICAgb3B1c19mcmVlKChvcHVzX2ludDE2Kiltb2RlLT5sb2dO
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC9waXRjaC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3BpdGNoLmMKaW5kZXggYmY0NmU3ZDU2
MmIzOWY2Mjc1MmMzMDA5MWU5MDA2NGU0MzQ0YjM3Mi4uNWIwNjFkODYwZjQ1MmI4YzM1MzlmNTBi
ODZkZmQxMjMwYjdlYzUyMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3BpdGNoLmMKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3BpdGNo
LmMKQEAgLTIyMCwxMyArMjIwLDggQEAgb3B1c192YWwzMgogI2Vsc2UKIHZvaWQKICNlbmRpZgot
I2lmIGRlZmluZWQoT1ZFUlJJREVfUElUQ0hfWENPUlIpCiBjZWx0X3BpdGNoX3hjb3JyX2MoY29u
c3Qgb3B1c192YWwxNiAqX3gsIGNvbnN0IG9wdXNfdmFsMTYgKl95LAotICAgICAgb3B1c192YWwz
MiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gpCi0jZWxzZQotY2VsdF9waXRjaF94Y29y
cihjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCiAgICAgICBvcHVz
X3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCwgaW50IGFyY2gpCi0jZW5kaWYK
IHsKIAogI2lmIDAgLyogVGhpcyBpcyBhIHNpbXBsZSB2ZXJzaW9uIG9mIHRoZSBwaXRjaCBjb3Jy
ZWxhdGlvbiB0aGF0IHNob3VsZCB3b3JrCkBAIC0yNjUsMTEgKzI2MCw3IEBAIGNlbHRfcGl0Y2hf
eGNvcnIoY29uc3Qgb3B1c192YWwxNiAqX3gsIGNvbnN0IG9wdXNfdmFsMTYgKl95LAogICAgZm9y
IChpPTA7aTxtYXhfcGl0Y2gtMztpKz00KQogICAgewogICAgICAgb3B1c192YWwzMiBzdW1bNF09
ezAsMCwwLDB9OwotI2lmIGRlZmluZWQoT1ZFUlJJREVfUElUQ0hfWENPUlIpCi0gICAgICB4Y29y
cl9rZXJuZWxfYyhfeCwgX3kraSwgc3VtLCBsZW4pOwotI2Vsc2UKICAgICAgIHhjb3JyX2tlcm5l
bChfeCwgX3kraSwgc3VtLCBsZW4sIGFyY2gpOwotI2VuZGlmCiAgICAgICB4Y29ycltpXT1zdW1b
MF07CiAgICAgICB4Y29ycltpKzFdPXN1bVsxXTsKICAgICAgIHhjb3JyW2krMl09c3VtWzJdOwpA
QCAtMjg1LDExICsyNzYsNyBAQCBjZWx0X3BpdGNoX3hjb3JyKGNvbnN0IG9wdXNfdmFsMTYgKl94
LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKICAgIGZvciAoO2k8bWF4X3BpdGNoO2krKykKICAgIHsK
ICAgICAgIG9wdXNfdmFsMzIgc3VtOwotI2lmIGRlZmluZWQoT1ZFUlJJREVfUElUQ0hfWENPUlIp
Ci0gICAgICBzdW0gPSBjZWx0X2lubmVyX3Byb2RfYyhfeCwgX3kraSwgbGVuKTsKLSNlbHNlCiAg
ICAgICBzdW0gPSBjZWx0X2lubmVyX3Byb2QoX3gsIF95K2ksIGxlbiwgYXJjaCk7Ci0jZW5kaWYK
ICAgICAgIHhjb3JyW2ldID0gc3VtOwogI2lmZGVmIEZJWEVEX1BPSU5UCiAgICAgICBtYXhjb3Jy
ID0gTUFYMzIobWF4Y29yciwgc3VtKTsKQEAgLTM3OCw3ICszNjUsNyBAQCB2b2lkIHBpdGNoX3Nl
YXJjaChjb25zdCBvcHVzX3ZhbDE2ICogT1BVU19SRVNUUklDVCB4X2xwLCBvcHVzX3ZhbDE2ICog
T1BVU19SRVNUUgogICAgICAgZm9yIChqPTA7ajxsZW4+PjE7aisrKQogICAgICAgICAgc3VtICs9
IFNIUjMyKE1VTFQxNl8xNih4X2xwW2pdLHlbaStqXSksIHNoaWZ0KTsKICNlbHNlCi0gICAgICBz
dW0gPSBjZWx0X2lubmVyX3Byb2RfYyh4X2xwLCB5K2ksIGxlbj4+MSk7CisgICAgICBzdW0gPSBj
ZWx0X2lubmVyX3Byb2QoeF9scCwgeStpLCBsZW4+PjEsIGFyY2gpOwogI2VuZGlmCiAgICAgICB4
Y29ycltpXSA9IE1BWDMyKC0xLCBzdW0pOwogI2lmZGVmIEZJWEVEX1BPSU5UCkBAIC00MjQsNyAr
NDExLDcgQEAgc3RhdGljIG9wdXNfdmFsMTYgY29tcHV0ZV9waXRjaF9nYWluKG9wdXNfdmFsMzIg
eHksIG9wdXNfdmFsMzIgeHgsIG9wdXNfdmFsMzIgeXkKICAgIHN4ID0gY2VsdF9pbG9nMih4eCkt
MTQ7CiAgICBzeSA9IGNlbHRfaWxvZzIoeXkpLTE0OwogICAgc2hpZnQgPSBzeCArIHN5OwotICAg
eDJ5MiA9IE1VTFQxNl8xNl9RMTQoVlNIUjMyKHh4LCBzeCksIFZTSFIzMih5eSwgc3kpKTsKKyAg
IHgyeTIgPSBTSFIzMihNVUxUMTZfMTYoVlNIUjMyKHh4LCBzeCksIFZTSFIzMih5eSwgc3kpKSwg
MTQpOwogICAgaWYgKHNoaWZ0ICYgMSkgewogICAgICAgaWYgKHgyeTIgPCAzMjc2OCkKICAgICAg
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC9waXRjaC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3BpdGNoLmgKaW5kZXggZDM1MDM1MzJh
MDgwYjM3ODc1NWRjMDFiYTI2YzA1NWRkYWIyMjVjNS4uZTQyNWY1NmFlYWE4OTJhOWFjZGM3YTZi
YzU4ZDllNTdkZGNlNzI0NiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3BpdGNoLmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3BpdGNo
LmgKQEAgLTQ2LDggKzQ2LDcgQEAKICNpbmNsdWRlICJtaXBzL3BpdGNoX21pcHNyMS5oIgogI2Vu
ZGlmCiAKLSNpZiAoKGRlZmluZWQoT1BVU19BUk1fQVNNKSAmJiBkZWZpbmVkKEZJWEVEX1BPSU5U
KSkgXAotICB8fCBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikpCisjaWYgKGRl
ZmluZWQoT1BVU19BUk1fQVNNKSB8fCBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5U
UikpCiAjIGluY2x1ZGUgImFybS9waXRjaF9hcm0uaCIKICNlbmRpZgogCkBAIC0xODQsMTcgKzE4
MywxMCBAQCBvcHVzX3ZhbDMyCiB2b2lkCiAjZW5kaWYKIGNlbHRfcGl0Y2hfeGNvcnJfYyhjb25z
dCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCi0gICAgICBvcHVzX3ZhbDMy
ICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCk7Ci0KLSNpZiAhZGVmaW5lZChPVkVSUklE
RV9QSVRDSF9YQ09SUikKLSNpZmRlZiBGSVhFRF9QT0lOVAotb3B1c192YWwzMgotI2Vsc2UKLXZv
aWQKLSNlbmRpZgotY2VsdF9waXRjaF94Y29ycihjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qg
b3B1c192YWwxNiAqX3ksCiAgICAgICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1h
eF9waXRjaCwgaW50IGFyY2gpOwogCisjaWZuZGVmIE9WRVJSSURFX1BJVENIX1hDT1JSCisjIGRl
ZmluZSBjZWx0X3BpdGNoX3hjb3JyIGNlbHRfcGl0Y2hfeGNvcnJfYwogI2VuZGlmCiAKICNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L3F1YW50X2JhbmRzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvcXVhbnRfYmFuZHMuYwppbmRl
eCA5NTA3NmUwYWYyZDRlZTA3YjI1YjViMzMzMDU0Mjc3M2UyNDQ5N2IyLi41NjEwMWIxY2ZlY2I4
ZjU4MTFjMDc2MTg4MzBkN2VlMzg0MmFlYjQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvcXVhbnRfYmFuZHMu
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvcXVhbnRfYmFuZHMuYwpAQCAtNDE4LDYgKzQxOCw3IEBAIHZvaWQgcXVhbnRf
ZW5lcmd5X2ZpbmFsaXNlKGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQsIG9w
dXNfdmFsMTYgKm9sCiAgICAgICAgICAgICBvZmZzZXQgPSAocTItLjVmKSooMTw8KDE0LWZpbmVf
cXVhbnRbaV0tMSkpKigxLmYvMTYzODQpOwogI2VuZGlmCiAgICAgICAgICAgICBvbGRFQmFuZHNb
aStjKm0tPm5iRUJhbmRzXSArPSBvZmZzZXQ7CisgICAgICAgICAgICBlcnJvcltpK2MqbS0+bmJF
QmFuZHNdIC09IG9mZnNldDsKICAgICAgICAgICAgIGJpdHNfbGVmdC0tOwogICAgICAgICAgfSB3
aGlsZSAoKytjIDwgQyk7CiAgICAgICB9CkBAIC01NDcsOSArNTQ4LDE1IEBAIHZvaWQgYW1wMkxv
ZzIoY29uc3QgQ0VMVE1vZGUgKm0sIGludCBlZmZFbmQsIGludCBlbmQsCiAgICBjPTA7CiAgICBk
byB7CiAgICAgICBmb3IgKGk9MDtpPGVmZkVuZDtpKyspCisgICAgICB7CiAgICAgICAgICBiYW5k
TG9nRVtpK2MqbS0+bmJFQmFuZHNdID0KLSAgICAgICAgICAgICAgIGNlbHRfbG9nMihTSEwzMihi
YW5kRVtpK2MqbS0+bmJFQmFuZHNdLDIpKQorICAgICAgICAgICAgICAgY2VsdF9sb2cyKGJhbmRF
W2krYyptLT5uYkVCYW5kc10pCiAgICAgICAgICAgICAgICAtIFNITDE2KChvcHVzX3ZhbDE2KWVN
ZWFuc1tpXSw2KTsKKyNpZmRlZiBGSVhFRF9QT0lOVAorICAgICAgICAgLyogQ29tcGVuc2F0ZSBm
b3IgYmFuZEVbXSBiZWluZyBRMTIgYnV0IGNlbHRfbG9nMigpIHRha2luZyBhIFExNCBpbnB1dC4g
Ki8KKyAgICAgICAgIGJhbmRMb2dFW2krYyptLT5uYkVCYW5kc10gKz0gUUNPTlNUMTYoMi5mLCBE
Ql9TSElGVCk7CisjZW5kaWYKKyAgICAgIH0KICAgICAgIGZvciAoaT1lZmZFbmQ7aTxlbmQ7aSsr
KQogICAgICAgICAgYmFuZExvZ0VbYyptLT5uYkVCYW5kcytpXSA9IC1RQ09OU1QxNigxNC5mLERC
X1NISUZUKTsKICAgIH0gd2hpbGUgKCsrYyA8IEMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3JhdGUuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9yYXRlLmMKaW5kZXggN2RmYTViZThhNjM5MjY4NDE1ZWExY2Y0NmI2ZTQ5NzMwZTM4OTQ5
Ni4uY2E0Y2M4NzBlYWE0MTJmNTJhNDVmNDFhOTM4MjgyYjVhMGM3ZDRlOSAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L3JhdGUuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NlbHQvcmF0ZS5jCkBAIC0zNDgsMTIgKzM0OCwxNyBAQCBzdGF0aWMg
T1BVU19JTkxJTkUgaW50IGludGVycF9iaXRzMnB1bHNlcyhjb25zdCBDRUxUTW9kZSAqbSwgaW50
IHN0YXJ0LCBpbnQgZW5kLAogICAgICAgICAgICAgLypUaGlzIGlmKCkgYmxvY2sgaXMgdGhlIG9u
bHkgcGFydCBvZiB0aGUgYWxsb2NhdGlvbiBmdW5jdGlvbiB0aGF0CiAgICAgICAgICAgICAgICBp
cyBub3QgYSBtYW5kYXRvcnkgcGFydCBvZiB0aGUgYml0c3RyZWFtOiBhbnkgYmFuZHMgd2UgY2hv
b3NlIHRvCiAgICAgICAgICAgICAgICBza2lwIGhlcmUgbXVzdCBiZSBleHBsaWNpdGx5IHNpZ25h
bGVkLiovCi0gICAgICAgICAgICAvKkNob29zZSBhIHRocmVzaG9sZCB3aXRoIHNvbWUgaHlzdGVy
ZXNpcyB0byBrZWVwIGJhbmRzIGZyb20KLSAgICAgICAgICAgICAgIGZsdWN0dWF0aW5nIGluIGFu
ZCBvdXQuKi8KKyAgICAgICAgICAgIGludCBkZXB0aF90aHJlc2hvbGQ7CisgICAgICAgICAgICAv
KldlIGNob29zZSBhIHRocmVzaG9sZCB3aXRoIHNvbWUgaHlzdGVyZXNpcyB0byBrZWVwIGJhbmRz
IGZyb20KKyAgICAgICAgICAgICAgIGZsdWN0dWF0aW5nIGluIGFuZCBvdXQsIGJ1dCB3ZSB0cnkg
bm90IHRvIGZvbGQgYmVsb3cgYSBjZXJ0YWluIHBvaW50LiAqLworICAgICAgICAgICAgaWYgKGNv
ZGVkQmFuZHMgPiAxNykKKyAgICAgICAgICAgICAgIGRlcHRoX3RocmVzaG9sZCA9IGo8cHJldiA/
IDcgOiA5OworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgZGVwdGhfdGhyZXNob2xk
ID0gMDsKICNpZmRlZiBGVVpaSU5HCiAgICAgICAgICAgICBpZiAoKHJhbmQoKSYweDEpID09IDAp
CiAjZWxzZQotICAgICAgICAgICAgaWYgKGNvZGVkQmFuZHM8PXN0YXJ0KzIgfHwgKGJhbmRfYml0
cyA+ICgoajxwcmV2Pzc6OSkqYmFuZF93aWR0aDw8TE08PEJJVFJFUyk+PjQgJiYgajw9c2lnbmFs
QmFuZHdpZHRoKSkKKyAgICAgICAgICAgIGlmIChjb2RlZEJhbmRzPD1zdGFydCsyIHx8IChiYW5k
X2JpdHMgPiAoZGVwdGhfdGhyZXNob2xkKmJhbmRfd2lkdGg8PExNPDxCSVRSRVMpPj40ICYmIGo8
PXNpZ25hbEJhbmR3aWR0aCkpCiAjZW5kaWYKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
IGVjX2VuY19iaXRfbG9ncChlYywgMSwgMSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvc3RhdGljX21vZGVz
X2ZpeGVkX2FybV9uZTEwLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvc3RhdGljX21vZGVzX2ZpeGVkX2FybV9uZTEwLmgKaW5k
ZXggYjhlZjBjZWU5ODM4YzM0NWNmYmRkYmE3ODVlMzgzZjAwYzYzOTcyMi4uNzYyMzA5MjE5MjUw
N2VkZTM2ODJiMTE4YWJiODA0NjQ2NmM0MjE3OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3N0YXRpY19tb2Rl
c19maXhlZF9hcm1fbmUxMC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9zdGF0aWNfbW9kZXNfZml4ZWRfYXJtX25lMTAu
aApAQCAtMSw3ICsxLDcgQEAKIC8qIFRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgd2FzIGF1dG9t
YXRpY2FsbHkgZ2VuZXJhdGVkIGJ5CiAgKiBkdW1wX21vZGVfYXJtX25lMTAuYyB3aXRoIGFyZ3Vt
ZW50czogNDgwMDAgOTYwCiAgKiBJdCBjb250YWlucyBzdGF0aWMgZGVmaW5pdGlvbnMgZm9yIHNv
bWUgcHJlLWRlZmluZWQgbW9kZXMuICovCi0jaW5jbHVkZSA8TkUxMF9pbml0Lmg+CisjaW5jbHVk
ZSA8TkUxMF90eXBlcy5oPgogCiAjaWZuZGVmIE5FMTBfRkZUX1BBUkFNUzQ4MDAwXzk2MAogI2Rl
ZmluZSBORTEwX0ZGVF9QQVJBTVM0ODAwMF85NjAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9zdGF0aWNfbW9k
ZXNfZmxvYXRfYXJtX25lMTAuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9zdGF0aWNfbW9kZXNfZmxvYXRfYXJtX25lMTAuaApp
bmRleCA5MzRhODJhNDIwYTI5NmMyZmI1ZWMwNzk0ZjljNmZkZTViYjc2MDQ5Li42NmUxYWJiMTAx
MzI3OTMwMmU0NTNkZDEwNzg1Y2YyOWZhMWM2ZGNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvc3RhdGljX21v
ZGVzX2Zsb2F0X2FybV9uZTEwLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3N0YXRpY19tb2Rlc19mbG9hdF9hcm1fbmUx
MC5oCkBAIC0xLDcgKzEsNyBAQAogLyogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZmlsZSB3YXMgYXV0
b21hdGljYWxseSBnZW5lcmF0ZWQgYnkKICAqIGR1bXBfbW9kZV9hcm1fbmUxMC5jIHdpdGggYXJn
dW1lbnRzOiA0ODAwMCA5NjAKICAqIEl0IGNvbnRhaW5zIHN0YXRpYyBkZWZpbml0aW9ucyBmb3Ig
c29tZSBwcmUtZGVmaW5lZCBtb2Rlcy4gKi8KLSNpbmNsdWRlIDxORTEwX2luaXQuaD4KKyNpbmNs
dWRlIDxORTEwX3R5cGVzLmg+CiAKICNpZm5kZWYgTkUxMF9GRlRfUEFSQU1TNDgwMDBfOTYwCiAj
ZGVmaW5lIE5FMTBfRkZUX1BBUkFNUzQ4MDAwXzk2MApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3RzL3Rl
c3RfdW5pdF9kZnQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0LmMKaW5kZXggNjE2NmViMGU0
ZmE5M2MzZTBkMGY1MjIyZjE5ZThjYzNmNzExNDY3NC4uNzBmOGY0OTM3YmE4ZDBiY2E2NzBlYTk1
ZDFkNzUxMjRlOTE0ZDViNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9kZnQuYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X2RmdC5jCkBAIC0yOSwzOCArMjksMTIgQEAKICNpbmNs
dWRlICJjb25maWcuaCIKICNlbmRpZgogCi0jZGVmaW5lIFNLSVBfQ09ORklHX0gKLQotI2lmbmRl
ZiBDVVNUT01fTU9ERVMKLSNkZWZpbmUgQ1VTVE9NX01PREVTCi0jZW5kaWYKLQogI2luY2x1ZGUg
PHN0ZGlvLmg+CiAKLSNkZWZpbmUgQ0VMVF9DCi0jZGVmaW5lIFRFU1RfVU5JVF9ERlRfQwogI2lu
Y2x1ZGUgInN0YWNrX2FsbG9jLmgiCiAjaW5jbHVkZSAia2lzc19mZnQuaCIKLSNpbmNsdWRlICJr
aXNzX2ZmdC5jIgotI2luY2x1ZGUgIm1hdGhvcHMuYyIKLSNpbmNsdWRlICJlbnRjb2RlLmMiCi0K
LSNpZiBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpIHx8IGRlZmluZWQoT1BVU19YODZf
TUFZX0hBVkVfU1NFNF8xKQotIyBpbmNsdWRlICJ4ODYveDg2Y3B1LmMiCi0jZWxpZiBkZWZpbmVk
KE9QVVNfQVJNX0FTTSkgfHwgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpCi0j
IGluY2x1ZGUgImFybS9hcm1jcHUuYyIKLSMgaW5jbHVkZSAiY2VsdF9scGMuYyIKLSMgaW5jbHVk
ZSAicGl0Y2guYyIKLSMgaWYgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpCi0j
ICBpbmNsdWRlICJhcm0vY2VsdF9uZW9uX2ludHIuYyIKLSMgIGlmIGRlZmluZWQoSEFWRV9BUk1f
TkUxMCkKLSMgICBpbmNsdWRlICJtZGN0LmMiCi0jICAgaW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9m
ZnQuYyIKLSMgICBpbmNsdWRlICJhcm0vY2VsdF9uZTEwX21kY3QuYyIKLSMgIGVuZGlmCi0jIGVu
ZGlmCi0jIGluY2x1ZGUgImFybS9hcm1fY2VsdF9tYXAuYyIKLSNlbmRpZgorI2luY2x1ZGUgIm1h
dGhvcHMuaCIKKyNpbmNsdWRlICJtb2Rlcy5oIgogCiAjaWZuZGVmIE1fUEkKICNkZWZpbmUgTV9Q
SSAzLjE0MTU5MjY1MwpAQCAtMTEyLDExICs4NiwyNSBAQCB2b2lkIGNoZWNrKGtpc3NfZmZ0X2Nw
eCAgKiBpbixraXNzX2ZmdF9jcHggICogb3V0LGludCBuZmZ0LGludCBpc2ludmVyc2UpCiB2b2lk
IHRlc3QxZChpbnQgbmZmdCxpbnQgaXNpbnZlcnNlLGludCBhcmNoKQogewogICAgIHNpemVfdCBi
dWZsZW4gPSBzaXplb2Yoa2lzc19mZnRfY3B4KSpuZmZ0OwotCi0gICAga2lzc19mZnRfY3B4ICAq
IGluID0gKGtpc3NfZmZ0X2NweCopbWFsbG9jKGJ1Zmxlbik7Ci0gICAga2lzc19mZnRfY3B4ICAq
IG91dD0gKGtpc3NfZmZ0X2NweCopbWFsbG9jKGJ1Zmxlbik7Ci0gICAga2lzc19mZnRfc3RhdGUg
KmNmZyA9IG9wdXNfZmZ0X2FsbG9jKG5mZnQsMCwwLGFyY2gpOworICAgIGtpc3NfZmZ0X2NweCAq
aW47CisgICAga2lzc19mZnRfY3B4ICpvdXQ7CiAgICAgaW50IGs7CisjaWZkZWYgQ1VTVE9NX01P
REVTCisgICAga2lzc19mZnRfc3RhdGUgKmNmZyA9IG9wdXNfZmZ0X2FsbG9jKG5mZnQsMCwwLGFy
Y2gpOworI2Vsc2UKKyAgICBpbnQgaWQ7CisgICAgY29uc3Qga2lzc19mZnRfc3RhdGUgKmNmZzsK
KyAgICBDRUxUTW9kZSAqbW9kZSA9IG9wdXNfY3VzdG9tX21vZGVfY3JlYXRlKDQ4MDAwLCA5NjAs
IE5VTEwpOworICAgIGlmIChuZmZ0ID09IDQ4MCkgaWQgPSAwOworICAgIGVsc2UgaWYgKG5mZnQg
PT0gMjQwKSBpZCA9IDE7CisgICAgZWxzZSBpZiAobmZmdCA9PSAxMjApIGlkID0gMjsKKyAgICBl
bHNlIGlmIChuZmZ0ID09IDYwKSBpZCA9IDM7CisgICAgZWxzZSByZXR1cm47CisgICAgY2ZnID0g
bW9kZS0+bWRjdC5rZmZ0W2lkXTsKKyNlbmRpZgorCisgICAgaW4gPSAoa2lzc19mZnRfY3B4Kilt
YWxsb2MoYnVmbGVuKTsKKyAgICBvdXQgPSAoa2lzc19mZnRfY3B4KiltYWxsb2MoYnVmbGVuKTsK
IAogICAgIGZvciAoaz0wO2s8bmZmdDsrK2spIHsKICAgICAgICAgaW5ba10uciA9IChyYW5kKCkg
JSAzMjc2NykgLSAxNjM4NDsKQEAgLTE0OSw3ICsxMzcsOSBAQCB2b2lkIHRlc3QxZChpbnQgbmZm
dCxpbnQgaXNpbnZlcnNlLGludCBhcmNoKQogCiAgICAgZnJlZShpbik7CiAgICAgZnJlZShvdXQp
OworI2lmZGVmIENVU1RPTV9NT0RFUwogICAgIG9wdXNfZmZ0X2ZyZWUoY2ZnLCBhcmNoKTsKKyNl
bmRpZgogfQogCiBpbnQgbWFpbihpbnQgYXJnYyxjaGFyICoqIGFyZ3YpCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvdGVzdHMvdGVzdF91bml0X21hdGhvcHMuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWF0aG9w
cy5jCmluZGV4IGZkMzMxOWRhOTFjZWIzZWNmYTk0YzcwMmQxZWZmM2RhYjczOGM4N2EuLjg3NGU5
YWRmMGZiZjE2MWY3NDE3ZjNhZTUxMWI4YTlmZTc1MTVkNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0
cy90ZXN0X3VuaXRfbWF0aG9wcy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWF0aG9wcy5j
CkBAIC0zNCw0OCArMzQsMTAgQEAKICNkZWZpbmUgQ1VTVE9NX01PREVTCiAjZW5kaWYKIAotI2Rl
ZmluZSBDRUxUX0MKLQogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8bWF0aC5oPgotI2lu
Y2x1ZGUgIm1hdGhvcHMuYyIKLSNpbmNsdWRlICJlbnRlbmMuYyIKLSNpbmNsdWRlICJlbnRkZWMu
YyIKLSNpbmNsdWRlICJlbnRjb2RlLmMiCi0jaW5jbHVkZSAiYmFuZHMuYyIKLSNpbmNsdWRlICJx
dWFudF9iYW5kcy5jIgotI2luY2x1ZGUgImxhcGxhY2UuYyIKLSNpbmNsdWRlICJ2cS5jIgotI2lu
Y2x1ZGUgImN3cnMuYyIKLSNpbmNsdWRlICJwaXRjaC5jIgotI2luY2x1ZGUgImNlbHRfbHBjLmMi
Ci0jaW5jbHVkZSAiY2VsdC5jIgotCi0jaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0Up
IHx8IGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFMikgfHwgZGVmaW5lZChPUFVTX1g4Nl9N
QVlfSEFWRV9TU0U0XzEpCi0jIGlmIGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFKQotIyAg
aW5jbHVkZSAieDg2L3BpdGNoX3NzZS5jIgotIyBlbmRpZgotIyBpZiBkZWZpbmVkKE9QVVNfWDg2
X01BWV9IQVZFX1NTRTIpCi0jICBpbmNsdWRlICJ4ODYvcGl0Y2hfc3NlMi5jIgotIyBlbmRpZgot
IyBpZiBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTRfMSkKLSMgIGluY2x1ZGUgIng4Ni9w
aXRjaF9zc2U0XzEuYyIKLSMgIGluY2x1ZGUgIng4Ni9jZWx0X2xwY19zc2UuYyIKLSMgZW5kaWYK
LSMgaW5jbHVkZSAieDg2L3g4Nl9jZWx0X21hcC5jIgotI2VsaWYgZGVmaW5lZChPUFVTX0FSTV9B
U00pIHx8IGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKQotIyBpbmNsdWRlICJh
cm0vYXJtY3B1LmMiCi0jIGlmIGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKQot
IyAgaW5jbHVkZSAiYXJtL2NlbHRfbmVvbl9pbnRyLmMiCi0jICBpZiBkZWZpbmVkKEhBVkVfQVJN
X05FMTApCi0jICAgaW5jbHVkZSAia2lzc19mZnQuYyIKLSMgICBpbmNsdWRlICJtZGN0LmMiCi0j
ICAgaW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9mZnQuYyIKLSMgICBpbmNsdWRlICJhcm0vY2VsdF9u
ZTEwX21kY3QuYyIKLSMgIGVuZGlmCi0jIGVuZGlmCi0jIGluY2x1ZGUgImFybS9hcm1fY2VsdF9t
YXAuYyIKLSNlbmRpZgorI2luY2x1ZGUgIm1hdGhvcHMuaCIKKyNpbmNsdWRlICJiYW5kcy5oIgog
CiAjaWZkZWYgRklYRURfUE9JTlQKICNkZWZpbmUgV09SRCAiJWQiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
dGVzdHMvdGVzdF91bml0X21kY3QuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWRjdC5jCmluZGV4
IDhkYmI5Y2FhMmU4Y2ZlODViOGZjMzhlNDEzYjI5MDM4MTFjMzdjODQuLjRhNTYzY2NmZTNjOTI4
NzhiZTAwMThmZTkzYmI1MmM4ZmQ1OGY4YTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3Vu
aXRfbWRjdC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWRjdC5jCkBAIC0yOSwzOCArMjks
MTMgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNlbmRpZgogCi0jZGVmaW5lIFNLSVBfQ09ORklH
X0gKLQotI2lmbmRlZiBDVVNUT01fTU9ERVMKLSNkZWZpbmUgQ1VTVE9NX01PREVTCi0jZW5kaWYK
LQogI2luY2x1ZGUgPHN0ZGlvLmg+CiAKLSNkZWZpbmUgQ0VMVF9DCiAjaW5jbHVkZSAibWRjdC5o
IgogI2luY2x1ZGUgInN0YWNrX2FsbG9jLmgiCi0KLSNpbmNsdWRlICJraXNzX2ZmdC5jIgotI2lu
Y2x1ZGUgIm1kY3QuYyIKLSNpbmNsdWRlICJtYXRob3BzLmMiCi0jaW5jbHVkZSAiZW50Y29kZS5j
IgotCi0jaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0UyKSB8fCBkZWZpbmVkKE9QVVNf
WDg2X01BWV9IQVZFX1NTRTRfMSkKLSMgaW5jbHVkZSAieDg2L3g4NmNwdS5jIgotI2VsaWYgZGVm
aW5lZChPUFVTX0FSTV9BU00pIHx8IGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRS
KQotIyBpbmNsdWRlICJhcm0vYXJtY3B1LmMiCi0jIGluY2x1ZGUgInBpdGNoLmMiCi0jIGluY2x1
ZGUgImNlbHRfbHBjLmMiCi0jIGlmIGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRS
KQotIyAgaW5jbHVkZSAiYXJtL2NlbHRfbmVvbl9pbnRyLmMiCi0jICBpZiBkZWZpbmVkKEhBVkVf
QVJNX05FMTApCi0jICAgaW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9mZnQuYyIKLSMgICBpbmNsdWRl
ICJhcm0vY2VsdF9uZTEwX21kY3QuYyIKLSMgIGVuZGlmCi0jIGVuZGlmCi0jIGluY2x1ZGUgImFy
bS9hcm1fY2VsdF9tYXAuYyIKLSNlbmRpZgorI2luY2x1ZGUgImtpc3NfZmZ0LmgiCisjaW5jbHVk
ZSAibWRjdC5oIgorI2luY2x1ZGUgIm1vZGVzLmgiCiAKICNpZm5kZWYgTV9QSQogI2RlZmluZSBN
X1BJIDMuMTQxNTkyNjUzCkBAIC0xMzAsMTYgKzEwNSwzNiBAQCB2b2lkIGNoZWNrX2ludihraXNz
X2ZmdF9zY2FsYXIgICogaW4sa2lzc19mZnRfc2NhbGFyICAqIG91dCxpbnQgbmZmdCxpbnQgaXNp
bnZlcgogCiB2b2lkIHRlc3QxZChpbnQgbmZmdCxpbnQgaXNpbnZlcnNlLGludCBhcmNoKQogewot
ICAgIG1kY3RfbG9va3VwIGNmZzsKICAgICBzaXplX3QgYnVmbGVuID0gc2l6ZW9mKGtpc3NfZmZ0
X3NjYWxhcikqbmZmdDsKLQotICAgIGtpc3NfZmZ0X3NjYWxhciAgKiBpbiA9IChraXNzX2ZmdF9z
Y2FsYXIqKW1hbGxvYyhidWZsZW4pOwotICAgIGtpc3NfZmZ0X3NjYWxhciAgKiBpbl9jb3B5ID0g
KGtpc3NfZmZ0X3NjYWxhciopbWFsbG9jKGJ1Zmxlbik7Ci0gICAga2lzc19mZnRfc2NhbGFyICAq
IG91dD0gKGtpc3NfZmZ0X3NjYWxhciopbWFsbG9jKGJ1Zmxlbik7Ci0gICAgb3B1c192YWwxNiAg
KiB3aW5kb3c9IChvcHVzX3ZhbDE2KiltYWxsb2Moc2l6ZW9mKG9wdXNfdmFsMTYpKm5mZnQvMik7
CisgICAga2lzc19mZnRfc2NhbGFyICppbjsKKyAgICBraXNzX2ZmdF9zY2FsYXIgKmluX2NvcHk7
CisgICAga2lzc19mZnRfc2NhbGFyICpvdXQ7CisgICAgb3B1c192YWwxNiAqd2luZG93OwogICAg
IGludCBrOwogCi0gICAgY2x0X21kY3RfaW5pdCgmY2ZnLCBuZmZ0LCAwLCBhcmNoKTsKKyNpZmRl
ZiBDVVNUT01fTU9ERVMKKyAgICBpbnQgc2hpZnQgPSAwOworICAgIGNvbnN0IG1kY3RfbG9va3Vw
ICpjZmc7CisgICAgbWRjdF9sb29rdXAgX2NmZzsKKyAgICBjbHRfbWRjdF9pbml0KCZfY2ZnLCBu
ZmZ0LCAwLCBhcmNoKTsKKyAgICBjZmcgPSAmX2NmZzsKKyNlbHNlCisgICAgaW50IHNoaWZ0Owor
ICAgIGNvbnN0IG1kY3RfbG9va3VwICpjZmc7CisgICAgQ0VMVE1vZGUgKm1vZGUgPSBvcHVzX2N1
c3RvbV9tb2RlX2NyZWF0ZSg0ODAwMCwgOTYwLCBOVUxMKTsKKyAgICBpZiAobmZmdCA9PSAxOTIw
KSBzaGlmdCA9IDA7CisgICAgZWxzZSBpZiAobmZmdCA9PSA5NjApIHNoaWZ0ID0gMTsKKyAgICBl
bHNlIGlmIChuZmZ0ID09IDQ4MCkgc2hpZnQgPSAyOworICAgIGVsc2UgaWYgKG5mZnQgPT0gMjQw
KSBzaGlmdCA9IDM7CisgICAgZWxzZSByZXR1cm47CisgICAgY2ZnID0gJm1vZGUtPm1kY3Q7Cisj
ZW5kaWYKKworICAgIGluID0gKGtpc3NfZmZ0X3NjYWxhciopbWFsbG9jKGJ1Zmxlbik7CisgICAg
aW5fY29weSA9IChraXNzX2ZmdF9zY2FsYXIqKW1hbGxvYyhidWZsZW4pOworICAgIG91dCA9IChr
aXNzX2ZmdF9zY2FsYXIqKW1hbGxvYyhidWZsZW4pOworICAgIHdpbmRvdyA9IChvcHVzX3ZhbDE2
KiltYWxsb2Moc2l6ZW9mKG9wdXNfdmFsMTYpKm5mZnQvMik7CisKICAgICBmb3IgKGs9MDtrPG5m
ZnQ7KytrKSB7CiAgICAgICAgIGluW2tdID0gKHJhbmQoKSAlIDMyNzY4KSAtIDE2Mzg0OwogICAg
IH0KQEAgLTE2NiwxMyArMTYxLDEzIEBAIHZvaWQgdGVzdDFkKGludCBuZmZ0LGludCBpc2ludmVy
c2UsaW50IGFyY2gpCiAgICAgewogICAgICAgIGZvciAoaz0wO2s8bmZmdDsrK2spCiAgICAgICAg
ICAgb3V0W2tdID0gMDsKLSAgICAgICBjbHRfbWRjdF9iYWNrd2FyZCgmY2ZnLGluLG91dCwgd2lu
ZG93LCBuZmZ0LzIsIDAsIDEsIGFyY2gpOworICAgICAgIGNsdF9tZGN0X2JhY2t3YXJkKGNmZyxp
bixvdXQsIHdpbmRvdywgbmZmdC8yLCBzaGlmdCwgMSwgYXJjaCk7CiAgICAgICAgLyogYXBwbHkg
VERBQyBiZWNhdXNlIGNsdF9tZGN0X2JhY2t3YXJkKCkgbm8gbG9uZ2VyIGRvZXMgdGhhdCAqLwog
ICAgICAgIGZvciAoaz0wO2s8bmZmdC80OysraykKICAgICAgICAgICBvdXRbbmZmdC1rLTFdID0g
b3V0W25mZnQvMitrXTsKICAgICAgICBjaGVja19pbnYoaW4sb3V0LG5mZnQsaXNpbnZlcnNlKTsK
ICAgICB9IGVsc2UgewotICAgICAgIGNsdF9tZGN0X2ZvcndhcmQoJmNmZyxpbixvdXQsd2luZG93
LCBuZmZ0LzIsIDAsIDEsIGFyY2gpOworICAgICAgIGNsdF9tZGN0X2ZvcndhcmQoY2ZnLGluLG91
dCx3aW5kb3csIG5mZnQvMiwgc2hpZnQsIDEsIGFyY2gpOwogICAgICAgIGNoZWNrKGluX2NvcHks
b3V0LG5mZnQsaXNpbnZlcnNlKTsKICAgICB9CiAgICAgLypmb3IgKGs9MDtrPG5mZnQ7KytrKSBw
cmludGYoIiVkICVkICIsIG91dFtrXS5yLCBvdXRba10uaSk7cHJpbnRmKCJcbiIpOyovCkBAIC0x
ODIsNyArMTc3LDkgQEAgdm9pZCB0ZXN0MWQoaW50IG5mZnQsaW50IGlzaW52ZXJzZSxpbnQgYXJj
aCkKICAgICBmcmVlKGluX2NvcHkpOwogICAgIGZyZWUob3V0KTsKICAgICBmcmVlKHdpbmRvdyk7
Ci0gICAgY2x0X21kY3RfY2xlYXIoJmNmZywgYXJjaCk7CisjaWZkZWYgQ1VTVE9NX01PREVTCisg
ICAgY2x0X21kY3RfY2xlYXIoJl9jZmcsIGFyY2gpOworI2VuZGlmCiB9CiAKIGludCBtYWluKGlu
dCBhcmdjLGNoYXIgKiogYXJndikKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90
YXRpb24uYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24uYwppbmRleCAxMDgwYzIwODVk
MDJjNWM5NzVmZDBmNWVmOWRkODMyMzAzYWQ5ZTQ1Li4yNjdiOTgzMDFhYzgzOGNjY2MzZjU4MmI1
YjIyOTMzYTY2ZDZjMWU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X3JvdGF0aW9u
LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9yb3RhdGlvbi5jCkBAIC0zNyw0MyArMzcsMTEg
QEAKIAogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+Ci0jaW5jbHVkZSAi
dnEuYyIKLSNpbmNsdWRlICJjd3JzLmMiCi0jaW5jbHVkZSAiZW50Y29kZS5jIgotI2luY2x1ZGUg
ImVudGVuYy5jIgotI2luY2x1ZGUgImVudGRlYy5jIgotI2luY2x1ZGUgIm1hdGhvcHMuYyIKKyNp
bmNsdWRlICJ2cS5oIgogI2luY2x1ZGUgImJhbmRzLmgiCi0jaW5jbHVkZSAicGl0Y2guYyIKLSNp
bmNsdWRlICJjZWx0X2xwYy5jIgotI2luY2x1ZGUgImNlbHQuYyIKKyNpbmNsdWRlICJzdGFja19h
bGxvYy5oIgogI2luY2x1ZGUgPG1hdGguaD4KIAotI2lmIGRlZmluZWQoT1BVU19YODZfTUFZX0hB
VkVfU1NFKSB8fCBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpIHx8IGRlZmluZWQoT1BV
U19YODZfTUFZX0hBVkVfU1NFNF8xKQotIyBpZiBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NT
RSkKLSMgIGluY2x1ZGUgIng4Ni9waXRjaF9zc2UuYyIKLSMgZW5kaWYKLSMgaWYgZGVmaW5lZChP
UFVTX1g4Nl9NQVlfSEFWRV9TU0UyKQotIyAgaW5jbHVkZSAieDg2L3BpdGNoX3NzZTIuYyIKLSMg
ZW5kaWYKLSMgaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0U0XzEpCi0jICBpbmNsdWRl
ICJ4ODYvcGl0Y2hfc3NlNF8xLmMiCi0jICBpbmNsdWRlICJ4ODYvY2VsdF9scGNfc3NlLmMiCi0j
IGVuZGlmCi0jIGluY2x1ZGUgIng4Ni94ODZfY2VsdF9tYXAuYyIKLSNlbGlmIGRlZmluZWQoT1BV
U19BUk1fQVNNKSB8fCBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikKLSMgaW5j
bHVkZSAiYXJtL2FybWNwdS5jIgotIyBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05f
SU5UUikKLSMgIGluY2x1ZGUgImFybS9jZWx0X25lb25faW50ci5jIgotIyAgaWYgZGVmaW5lZChI
QVZFX0FSTV9ORTEwKQotIyAgIGluY2x1ZGUgImtpc3NfZmZ0LmMiCi0jICAgaW5jbHVkZSAibWRj
dC5jIgotIyAgIGluY2x1ZGUgImFybS9jZWx0X25lMTBfZmZ0LmMiCi0jICAgaW5jbHVkZSAiYXJt
L2NlbHRfbmUxMF9tZGN0LmMiCi0jICBlbmRpZgotIyBlbmRpZgotIyBpbmNsdWRlICJhcm0vYXJt
X2NlbHRfbWFwLmMiCi0jZW5kaWYKIAogI2RlZmluZSBNQVhfU0laRSAxMDAKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L3ZxLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvdnEuYwppbmRleCBkMjlmMzhmZDhlZjc5MDE1YjYzZDg4MTlhNDhk
NDc4Y2E4YmNlNmU2Li44ZWY4MGU1MDdmMjYyZGFkNTVlNWViNmRiYmY1YWUyYjE0M2FkMTA3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQvdnEuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdnEuYwpAQCAtNjcsNyArNjcsNyBAQCBzdGF0
aWMgdm9pZCBleHBfcm90YXRpb24xKGNlbHRfbm9ybSAqWCwgaW50IGxlbiwgaW50IHN0cmlkZSwg
b3B1c192YWwxNiBjLCBvcHVzXwogfQogI2VuZGlmIC8qIE9WRVJSSURFX3ZxX2V4cF9yb3RhdGlv
bjEgKi8KIAotc3RhdGljIHZvaWQgZXhwX3JvdGF0aW9uKGNlbHRfbm9ybSAqWCwgaW50IGxlbiwg
aW50IGRpciwgaW50IHN0cmlkZSwgaW50IEssIGludCBzcHJlYWQpCit2b2lkIGV4cF9yb3RhdGlv
bihjZWx0X25vcm0gKlgsIGludCBsZW4sIGludCBkaXIsIGludCBzdHJpZGUsIGludCBLLCBpbnQg
c3ByZWFkKQogewogICAgc3RhdGljIGNvbnN0IGludCBTUFJFQURfRkFDVE9SWzNdPXsxNSwxMCw1
fTsKICAgIGludCBpOwpAQCAtMTU4LDQyICsxNTgsMjcgQEAgc3RhdGljIHVuc2lnbmVkIGV4dHJh
Y3RfY29sbGFwc2VfbWFzayhpbnQgKml5LCBpbnQgTiwgaW50IEIpCiAgICByZXR1cm4gY29sbGFw
c2VfbWFzazsKIH0KIAotdW5zaWduZWQgYWxnX3F1YW50KGNlbHRfbm9ybSAqWCwgaW50IE4sIGlu
dCBLLCBpbnQgc3ByZWFkLCBpbnQgQiwgZWNfZW5jICplbmMKLSNpZmRlZiBSRVNZTlRICi0gICAs
IG9wdXNfdmFsMTYgZ2FpbgotI2VuZGlmCi0gICApCitvcHVzX3ZhbDE2IG9wX3B2cV9zZWFyY2hf
YyhjZWx0X25vcm0gKlgsIGludCAqaXksIGludCBLLCBpbnQgTiwgaW50IGFyY2gpCiB7CiAgICBW
QVJERUNMKGNlbHRfbm9ybSwgeSk7Ci0gICBWQVJERUNMKGludCwgaXkpOwotICAgVkFSREVDTChv
cHVzX3ZhbDE2LCBzaWdueCk7CisgICBWQVJERUNMKGludCwgc2lnbngpOwogICAgaW50IGksIGo7
Ci0gICBvcHVzX3ZhbDE2IHM7CiAgICBpbnQgcHVsc2VzTGVmdDsKICAgIG9wdXNfdmFsMzIgc3Vt
OwogICAgb3B1c192YWwzMiB4eTsKICAgIG9wdXNfdmFsMTYgeXk7Ci0gICB1bnNpZ25lZCBjb2xs
YXBzZV9tYXNrOwogICAgU0FWRV9TVEFDSzsKIAotICAgY2VsdF9hc3NlcnQyKEs+MCwgImFsZ19x
dWFudCgpIG5lZWRzIGF0IGxlYXN0IG9uZSBwdWxzZSIpOwotICAgY2VsdF9hc3NlcnQyKE4+MSwg
ImFsZ19xdWFudCgpIG5lZWRzIGF0IGxlYXN0IHR3byBkaW1lbnNpb25zIik7Ci0KKyAgICh2b2lk
KWFyY2g7CiAgICBBTExPQyh5LCBOLCBjZWx0X25vcm0pOwotICAgQUxMT0MoaXksIE4sIGludCk7
Ci0gICBBTExPQyhzaWdueCwgTiwgb3B1c192YWwxNik7Ci0KLSAgIGV4cF9yb3RhdGlvbihYLCBO
LCAxLCBCLCBLLCBzcHJlYWQpOworICAgQUxMT0Moc2lnbngsIE4sIGludCk7CiAKICAgIC8qIEdl
dCByaWQgb2YgdGhlIHNpZ24gKi8KICAgIHN1bSA9IDA7CiAgICBqPTA7IGRvIHsKLSAgICAgIGlm
IChYW2pdPjApCi0gICAgICAgICBzaWdueFtqXT0xOwotICAgICAgZWxzZSB7Ci0gICAgICAgICBz
aWdueFtqXT0tMTsKLSAgICAgICAgIFhbal09LVhbal07Ci0gICAgICB9CisgICAgICBzaWdueFtq
XSA9IFhbal08MDsKKyAgICAgIC8qIE9QVDogTWFrZSBzdXJlIHRoZSBjb21waWxlciBkb2Vzbid0
IHVzZSBhIGJyYW5jaCBvbiBBQlMxNigpLiAqLworICAgICAgWFtqXSA9IEFCUzE2KFhbal0pOwog
ICAgICAgaXlbal0gPSAwOwogICAgICAgeVtqXSA9IDA7CiAgICB9IHdoaWxlICgrK2o8Tik7CkBA
IC0yMjUsNyArMjEwLDEyIEBAIHVuc2lnbmVkIGFsZ19xdWFudChjZWx0X25vcm0gKlgsIGludCBO
LCBpbnQgSywgaW50IHNwcmVhZCwgaW50IEIsIGVjX2VuYyAqZW5jCiAgICAgICAgICB3aGlsZSAo
KytqPE4pOwogICAgICAgICAgc3VtID0gUUNPTlNUMTYoMS5mLDE0KTsKICAgICAgIH0KLSAgICAg
IHJjcCA9IEVYVFJBQ1QxNihNVUxUMTZfMzJfUTE2KEstMSwgY2VsdF9yY3Aoc3VtKSkpOworI2lm
ZGVmIEZJWEVEX1BPSU5UCisgICAgICByY3AgPSBFWFRSQUNUMTYoTVVMVDE2XzMyX1ExNihLLCBj
ZWx0X3JjcChzdW0pKSk7CisjZWxzZQorICAgICAgLyogVXNpbmcgSytlIHdpdGggZSA8IDEgZ3Vh
cmFudGVlcyB3ZSBjYW5ub3QgZ2V0IG1vcmUgdGhhbiBLIHB1bHNlcy4gKi8KKyAgICAgIHJjcCA9
IEVYVFJBQ1QxNihNVUxUMTZfMzJfUTE2KEsrMC44ZiwgY2VsdF9yY3Aoc3VtKSkpOworI2VuZGlm
CiAgICAgICBqPTA7IGRvIHsKICNpZmRlZiBGSVhFRF9QT0lOVAogICAgICAgICAgLyogSXQncyBy
ZWFsbHkgaW1wb3J0YW50IHRvIHJvdW5kICp0b3dhcmRzIHplcm8qIGhlcmUgKi8KQEAgLTI0MCw3
ICsyMzAsNyBAQCB1bnNpZ25lZCBhbGdfcXVhbnQoY2VsdF9ub3JtICpYLCBpbnQgTiwgaW50IEss
IGludCBzcHJlYWQsIGludCBCLCBlY19lbmMgKmVuYwogICAgICAgICAgcHVsc2VzTGVmdCAtPSBp
eVtqXTsKICAgICAgIH0gIHdoaWxlICgrK2o8Tik7CiAgICB9Ci0gICBjZWx0X2Fzc2VydDIocHVs
c2VzTGVmdD49MSwgIkFsbG9jYXRlZCB0b28gbWFueSBwdWxzZXMgaW4gdGhlIHF1aWNrIHBhc3Mi
KTsKKyAgIGNlbHRfYXNzZXJ0MihwdWxzZXNMZWZ0Pj0wLCAiQWxsb2NhdGVkIHRvbyBtYW55IHB1
bHNlcyBpbiB0aGUgcXVpY2sgcGFzcyIpOwogCiAgICAvKiBUaGlzIHNob3VsZCBuZXZlciBoYXBw
ZW4sIGJ1dCBqdXN0IGluIGNhc2UgaXQgZG9lcyAoZS5nLiBvbiBzaWxlbmNlKQogICAgICAgd2Ug
ZmlsbCB0aGUgZmlyc3QgYmluIHdpdGggcHVsc2VzLiAqLwpAQCAtMjU2LDEyICsyNDYsMTIgQEAg
dW5zaWduZWQgYWxnX3F1YW50KGNlbHRfbm9ybSAqWCwgaW50IE4sIGludCBLLCBpbnQgc3ByZWFk
LCBpbnQgQiwgZWNfZW5jICplbmMKICAgICAgIHB1bHNlc0xlZnQ9MDsKICAgIH0KIAotICAgcyA9
IDE7CiAgICBmb3IgKGk9MDtpPHB1bHNlc0xlZnQ7aSsrKQogICAgeworICAgICAgb3B1c192YWwx
NiBSeHksIFJ5eTsKICAgICAgIGludCBiZXN0X2lkOwotICAgICAgb3B1c192YWwzMiBiZXN0X251
bSA9IC1WRVJZX0xBUkdFMTY7Ci0gICAgICBvcHVzX3ZhbDE2IGJlc3RfZGVuID0gMDsKKyAgICAg
IG9wdXNfdmFsMzIgYmVzdF9udW07CisgICAgICBvcHVzX3ZhbDE2IGJlc3RfZGVuOwogI2lmZGVm
IEZJWEVEX1BPSU5UCiAgICAgICBpbnQgcnNoaWZ0OwogI2VuZGlmCkBAIC0yNzIsOSArMjYyLDIy
IEBAIHVuc2lnbmVkIGFsZ19xdWFudChjZWx0X25vcm0gKlgsIGludCBOLCBpbnQgSywgaW50IHNw
cmVhZCwgaW50IEIsIGVjX2VuYyAqZW5jCiAgICAgICAvKiBUaGUgc3F1YXJlZCBtYWduaXR1ZGUg
dGVybSBnZXRzIGFkZGVkIGFueXdheSwgc28gd2UgbWlnaHQgYXMgd2VsbAogICAgICAgICAgYWRk
IGl0IG91dHNpZGUgdGhlIGxvb3AgKi8KICAgICAgIHl5ID0gQUREMTYoeXksIDEpOwotICAgICAg
aj0wOworCisgICAgICAvKiBDYWxjdWxhdGlvbnMgZm9yIHBvc2l0aW9uIDAgYXJlIG91dCBvZiB0
aGUgbG9vcCwgaW4gcGFydCB0byByZWR1Y2UKKyAgICAgICAgIG1pc3ByZWRpY3RlZCBicmFuY2hl
cyAoc2luY2UgdGhlIGlmIGNvbmRpdGlvbiBpcyB1c3VhbGx5IGZhbHNlKQorICAgICAgICAgaW4g
dGhlIGxvb3AuICovCisgICAgICAvKiBUZW1wb3Jhcnkgc3VtcyBvZiB0aGUgbmV3IHB1bHNlKHMp
ICovCisgICAgICBSeHkgPSBFWFRSQUNUMTYoU0hSMzIoQUREMzIoeHksIEVYVEVORDMyKFhbMF0p
KSxyc2hpZnQpKTsKKyAgICAgIC8qIFdlJ3JlIG11bHRpcGx5aW5nIHlbal0gYnkgdHdvIHNvIHdl
IGRvbid0IGhhdmUgdG8gZG8gaXQgaGVyZSAqLworICAgICAgUnl5ID0gQUREMTYoeXksIHlbMF0p
OworCisgICAgICAvKiBBcHByb3hpbWF0ZSBzY29yZTogd2UgbWF4aW1pc2UgUnh5L3NxcnQoUnl5
KSAod2UncmUgZ3VhcmFudGVlZCB0aGF0CisgICAgICAgICBSeHkgaXMgcG9zaXRpdmUgYmVjYXVz
ZSB0aGUgc2lnbiBpcyBwcmUtY29tcHV0ZWQpICovCisgICAgICBSeHkgPSBNVUxUMTZfMTZfUTE1
KFJ4eSxSeHkpOworICAgICAgYmVzdF9kZW4gPSBSeXk7CisgICAgICBiZXN0X251bSA9IFJ4eTsK
KyAgICAgIGo9MTsKICAgICAgIGRvIHsKLSAgICAgICAgIG9wdXNfdmFsMTYgUnh5LCBSeXk7CiAg
ICAgICAgICAvKiBUZW1wb3Jhcnkgc3VtcyBvZiB0aGUgbmV3IHB1bHNlKHMpICovCiAgICAgICAg
ICBSeHkgPSBFWFRSQUNUMTYoU0hSMzIoQUREMzIoeHksIEVYVEVORDMyKFhbal0pKSxyc2hpZnQp
KTsKICAgICAgICAgIC8qIFdlJ3JlIG11bHRpcGx5aW5nIHlbal0gYnkgdHdvIHNvIHdlIGRvbid0
IGhhdmUgdG8gZG8gaXQgaGVyZSAqLwpAQCAtMjg1LDggKzI4OCwxMSBAQCB1bnNpZ25lZCBhbGdf
cXVhbnQoY2VsdF9ub3JtICpYLCBpbnQgTiwgaW50IEssIGludCBzcHJlYWQsIGludCBCLCBlY19l
bmMgKmVuYwogICAgICAgICAgUnh5ID0gTVVMVDE2XzE2X1ExNShSeHksUnh5KTsKICAgICAgICAg
IC8qIFRoZSBpZGVhIGlzIHRvIGNoZWNrIGZvciBudW0vZGVuID49IGJlc3RfbnVtL2Jlc3RfZGVu
LCBidXQgdGhhdCB3YXkKICAgICAgICAgICAgIHdlIGNhbiBkbyBpdCB3aXRob3V0IGFueSBkaXZp
c2lvbiAqLwotICAgICAgICAgLyogT1BUOiBNYWtlIHN1cmUgdG8gdXNlIGNvbmRpdGlvbmFsIG1v
dmVzIGhlcmUgKi8KLSAgICAgICAgIGlmIChNVUxUMTZfMTYoYmVzdF9kZW4sIFJ4eSkgPiBNVUxU
MTZfMTYoUnl5LCBiZXN0X251bSkpCisgICAgICAgICAvKiBPUFQ6IEl0J3Mgbm90IGNsZWFyIHdo
ZXRoZXIgYSBjbW92IGlzIGZhc3RlciB0aGFuIGEgYnJhbmNoIGhlcmUKKyAgICAgICAgICAgIHNp
bmNlIHRoZSBjb25kaXRpb24gaXMgbW9yZSBvZnRlbiBmYWxzZSB0aGFuIHRydWUgYW5kIHVzaW5n
CisgICAgICAgICAgICBhIGNtb3YgaW50cm9kdWNlcyBkYXRhIGRlcGVuZGVuY2llcyBhY3Jvc3Mg
aXRlcmF0aW9ucy4gVGhlIG9wdGltYWwKKyAgICAgICAgICAgIGNob2ljZSBtYXkgYmUgYXJjaGl0
ZWN0dXJlLWRlcGVuZGVudC4gKi8KKyAgICAgICAgIGlmIChvcHVzX3VubGlrZWx5KE1VTFQxNl8x
NihiZXN0X2RlbiwgUnh5KSA+IE1VTFQxNl8xNihSeXksIGJlc3RfbnVtKSkpCiAgICAgICAgICB7
CiAgICAgICAgICAgICBiZXN0X2RlbiA9IFJ5eTsKICAgICAgICAgICAgIGJlc3RfbnVtID0gUnh5
OwpAQCAtMzAxLDIzICszMDcsNDcgQEAgdW5zaWduZWQgYWxnX3F1YW50KGNlbHRfbm9ybSAqWCwg
aW50IE4sIGludCBLLCBpbnQgc3ByZWFkLCBpbnQgQiwgZWNfZW5jICplbmMKIAogICAgICAgLyog
T25seSBub3cgdGhhdCB3ZSd2ZSBtYWRlIHRoZSBmaW5hbCBjaG9pY2UsIHVwZGF0ZSB5L2l5ICov
CiAgICAgICAvKiBNdWx0aXBseWluZyB5W2pdIGJ5IDIgc28gd2UgZG9uJ3QgaGF2ZSB0byBkbyBp
dCBldmVyeXdoZXJlIGVsc2UgKi8KLSAgICAgIHlbYmVzdF9pZF0gKz0gMipzOworICAgICAgeVti
ZXN0X2lkXSArPSAyOwogICAgICAgaXlbYmVzdF9pZF0rKzsKICAgIH0KIAogICAgLyogUHV0IHRo
ZSBvcmlnaW5hbCBzaWduIGJhY2sgKi8KICAgIGo9MDsKICAgIGRvIHsKLSAgICAgIFhbal0gPSBN
VUxUMTZfMTYoc2lnbnhbal0sWFtqXSk7Ci0gICAgICBpZiAoc2lnbnhbal0gPCAwKQotICAgICAg
ICAgaXlbal0gPSAtaXlbal07CisgICAgICAvKml5W2pdID0gc2lnbnhbal0gPyAtaXlbal0gOiBp
eVtqXTsqLworICAgICAgLyogT1BUOiBUaGUgaXMgbW9yZSBsaWtlbHkgdG8gYmUgY29tcGlsZWQg
d2l0aG91dCBhIGJyYW5jaCB0aGFuIHRoZSBjb2RlIGFib3ZlCisgICAgICAgICBidXQgaGFzIHRo
ZSBzYW1lIHBlcmZvcm1hbmNlIG90aGVyd2lzZS4gKi8KKyAgICAgIGl5W2pdID0gKGl5W2pdXi1z
aWdueFtqXSkgKyBzaWdueFtqXTsKICAgIH0gd2hpbGUgKCsrajxOKTsKKyAgIFJFU1RPUkVfU1RB
Q0s7CisgICByZXR1cm4geXk7Cit9CisKK3Vuc2lnbmVkIGFsZ19xdWFudChjZWx0X25vcm0gKlgs
IGludCBOLCBpbnQgSywgaW50IHNwcmVhZCwgaW50IEIsIGVjX2VuYyAqZW5jLAorICAgICAgb3B1
c192YWwxNiBnYWluLCBpbnQgcmVzeW50aCwgaW50IGFyY2gpCit7CisgICBWQVJERUNMKGludCwg
aXkpOworICAgb3B1c192YWwxNiB5eTsKKyAgIHVuc2lnbmVkIGNvbGxhcHNlX21hc2s7CisgICBT
QVZFX1NUQUNLOworCisgICBjZWx0X2Fzc2VydDIoSz4wLCAiYWxnX3F1YW50KCkgbmVlZHMgYXQg
bGVhc3Qgb25lIHB1bHNlIik7CisgICBjZWx0X2Fzc2VydDIoTj4xLCAiYWxnX3F1YW50KCkgbmVl
ZHMgYXQgbGVhc3QgdHdvIGRpbWVuc2lvbnMiKTsKKworICAgLyogQ292ZXJzIHZlY3Rvcml6YXRp
b24gYnkgdXAgdG8gNC4gKi8KKyAgIEFMTE9DKGl5LCBOKzMsIGludCk7CisKKyAgIGV4cF9yb3Rh
dGlvbihYLCBOLCAxLCBCLCBLLCBzcHJlYWQpOworCisgICB5eSA9IG9wX3B2cV9zZWFyY2goWCwg
aXksIEssIE4sIGFyY2gpOworCiAgICBlbmNvZGVfcHVsc2VzKGl5LCBOLCBLLCBlbmMpOwogCi0j
aWZkZWYgUkVTWU5USAotICAgbm9ybWFsaXNlX3Jlc2lkdWFsKGl5LCBYLCBOLCB5eSwgZ2Fpbik7
Ci0gICBleHBfcm90YXRpb24oWCwgTiwgLTEsIEIsIEssIHNwcmVhZCk7Ci0jZW5kaWYKKyAgIGlm
IChyZXN5bnRoKQorICAgeworICAgICAgbm9ybWFsaXNlX3Jlc2lkdWFsKGl5LCBYLCBOLCB5eSwg
Z2Fpbik7CisgICAgICBleHBfcm90YXRpb24oWCwgTiwgLTEsIEIsIEssIHNwcmVhZCk7CisgICB9
CiAKICAgIGNvbGxhcHNlX21hc2sgPSBleHRyYWN0X2NvbGxhcHNlX21hc2soaXksIE4sIEIpOwog
ICAgUkVTVE9SRV9TVEFDSzsKQEAgLTQwMSw3ICs0MzEsNyBAQCBpbnQgc3RlcmVvX2l0aGV0YShj
b25zdCBjZWx0X25vcm0gKlgsIGNvbnN0IGNlbHRfbm9ybSAqWSwgaW50IHN0ZXJlbywgaW50IE4s
IGludAogICAgLyogMC42MzY2MiA9IDIvcGkgKi8KICAgIGl0aGV0YSA9IE1VTFQxNl8xNl9RMTUo
UUNPTlNUMTYoMC42MzY2MmYsMTUpLGNlbHRfYXRhbjJwKHNpZGUsIG1pZCkpOwogI2Vsc2UKLSAg
IGl0aGV0YSA9IChpbnQpZmxvb3IoLjVmKzE2Mzg0KjAuNjM2NjJmKmF0YW4yKHNpZGUsbWlkKSk7
CisgICBpdGhldGEgPSAoaW50KWZsb29yKC41ZisxNjM4NCowLjYzNjYyZipmYXN0X2F0YW4yZihz
aWRlLG1pZCkpOwogI2VuZGlmCiAKICAgIHJldHVybiBpdGhldGE7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
dnEuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC92cS5oCmluZGV4IDVjZmNiZTUwZWEwNWUwNzIxZDExNGEyODMzMzliNWRjYTQ5
Mjg1MjcuLjBkZmU2YWYwNTgyMzk4NmNhZDI3ZjExZWFkNjAxMjUyYTMwNDg1NjMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC92cS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC92cS5oCkBAIC0zNywxMCArMzcsMjIgQEAKICNpbmNsdWRl
ICJlbnRkZWMuaCIKICNpbmNsdWRlICJtb2Rlcy5oIgogCisjaWYgKGRlZmluZWQoT1BVU19YODZf
TUFZX0hBVkVfU1NFMikgJiYgIWRlZmluZWQoRklYRURfUE9JTlQpKQorI2luY2x1ZGUgIng4Ni92
cV9zc2UuaCIKKyNlbmRpZgorCiAjaWYgZGVmaW5lZChNSVBTcjFfQVNNKQogI2luY2x1ZGUgIm1p
cHMvdnFfbWlwc3IxLmgiCiAjZW5kaWYKIAordm9pZCBleHBfcm90YXRpb24oY2VsdF9ub3JtICpY
LCBpbnQgbGVuLCBpbnQgZGlyLCBpbnQgc3RyaWRlLCBpbnQgSywgaW50IHNwcmVhZCk7CisKK29w
dXNfdmFsMTYgb3BfcHZxX3NlYXJjaF9jKGNlbHRfbm9ybSAqWCwgaW50ICppeSwgaW50IEssIGlu
dCBOLCBpbnQgYXJjaCk7CisKKyNpZiAhZGVmaW5lZChPVkVSUklERV9PUF9QVlFfU0VBUkNIKQor
I2RlZmluZSBvcF9wdnFfc2VhcmNoKHgsIGl5LCBLLCBOLCBhcmNoKSBcCisgICAgKG9wX3B2cV9z
ZWFyY2hfYyh4LCBpeSwgSywgTiwgYXJjaCkpCisjZW5kaWYKIAogLyoqIEFsZ2VicmFpYyBwdWxz
ZS12ZWN0b3IgcXVhbnRpc2VyLiBUaGUgc2lnbmFsIHggaXMgcmVwbGFjZWQgYnkgdGhlIHN1bSBv
ZgogICAqIHRoZSBwaXRjaCBhbmQgYSBjb21iaW5hdGlvbiBvZiBwdWxzZXMgc3VjaCB0aGF0IGl0
cyBub3JtIGlzIHN0aWxsIGVxdWFsCkBAIC01MSwxMiArNjMsOCBAQAogICogQHBhcmFtIGVuYyBF
bnRyb3B5IGVuY29kZXIgc3RhdGUKICAqIEByZXQgQSBtYXNrIGluZGljYXRpbmcgd2hpY2ggYmxv
Y2tzIGluIHRoZSBiYW5kIHJlY2VpdmVkIHB1bHNlcwogKi8KLXVuc2lnbmVkIGFsZ19xdWFudChj
ZWx0X25vcm0gKlgsIGludCBOLCBpbnQgSywgaW50IHNwcmVhZCwgaW50IEIsCi0gICAgICBlY19l
bmMgKmVuYwotI2lmZGVmIFJFU1lOVEgKLSAgICAgICwgb3B1c192YWwxNiBnYWluCi0jZW5kaWYK
LSAgICAgICk7Cit1bnNpZ25lZCBhbGdfcXVhbnQoY2VsdF9ub3JtICpYLCBpbnQgTiwgaW50IEss
IGludCBzcHJlYWQsIGludCBCLCBlY19lbmMgKmVuYywKKyAgICAgIG9wdXNfdmFsMTYgZ2Fpbiwg
aW50IHJlc3ludGgsIGludCBhcmNoKTsKIAogLyoqIEFsZ2VicmFpYyBwdWxzZSBkZWNvZGVyCiAg
KiBAcGFyYW0gWCBEZWNvZGVkIG5vcm1hbGlzZWQgc3BlY3RydW0gKHJldHVybmVkKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L3g4Ni9jZWx0X2xwY19zc2UuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvY2VsdF9scGNfc3NlLmMKaW5k
ZXggNjdlNTU5MmFjZjNjYTZiN2Y4MTdkNmRkOWYxN2Q5OWRlMWRhMjViMC4uNTQ3ODU2ODg0OWFh
NDJlYTc4ZGI2ZGIyNjgyYWJmN2VkMTUwZmZhNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni9jZWx0X2xw
Y19zc2UuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQveDg2L2NlbHRfbHBjX3NzZS5jCkBAIC00MCw2NSArNDAsMjMgQEAK
IAogI2lmIGRlZmluZWQoRklYRURfUE9JTlQpCiAKLXZvaWQgY2VsdF9maXJfc3NlNF8xKGNvbnN0
IG9wdXNfdmFsMTYgKl94LAordm9pZCBjZWx0X2Zpcl9zc2U0XzEoY29uc3Qgb3B1c192YWwxNiAq
eCwKICAgICAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKm51bSwKLSAgICAgICAgIG9wdXNfdmFsMTYg
Kl95LAorICAgICAgICAgb3B1c192YWwxNiAqeSwKICAgICAgICAgIGludCBOLAogICAgICAgICAg
aW50IG9yZCwKLSAgICAgICAgIG9wdXNfdmFsMTYgKm1lbSwKICAgICAgICAgIGludCBhcmNoKQog
ewogICAgIGludCBpLGo7CiAgICAgVkFSREVDTChvcHVzX3ZhbDE2LCBybnVtKTsKLSAgICBWQVJE
RUNMKG9wdXNfdmFsMTYsIHgpOwogCiAgICAgX19tMTI4aSB2ZWNOb0E7CiAgICAgb3B1c19pbnQz
MiBub0EgOwogICAgIFNBVkVfU1RBQ0s7CiAKICAgIEFMTE9DKHJudW0sIG9yZCwgb3B1c192YWwx
Nik7Ci0gICBBTExPQyh4LCBOK29yZCwgb3B1c192YWwxNik7CiAgICBmb3IoaT0wO2k8b3JkO2kr
KykKICAgICAgIHJudW1baV0gPSBudW1bb3JkLWktMV07Ci0gICBmb3IoaT0wO2k8b3JkO2krKykK
LSAgICAgIHhbaV0gPSBtZW1bb3JkLWktMV07Ci0KLSAgIGZvciAoaT0wO2k8Ti03O2krPTgpCi0g
ICB7Ci0gICAgICAgeFtpK29yZCAgXT1feFtpICBdOwotICAgICAgIHhbaStvcmQrMV09X3hbaSsx
XTsKLSAgICAgICB4W2krb3JkKzJdPV94W2krMl07Ci0gICAgICAgeFtpK29yZCszXT1feFtpKzNd
OwotICAgICAgIHhbaStvcmQrNF09X3hbaSs0XTsKLSAgICAgICB4W2krb3JkKzVdPV94W2krNV07
Ci0gICAgICAgeFtpK29yZCs2XT1feFtpKzZdOwotICAgICAgIHhbaStvcmQrN109X3hbaSs3XTsK
LSAgIH0KLQotICAgZm9yICg7aTxOLTM7aSs9NCkKLSAgIHsKLSAgICAgICB4W2krb3JkICBdPV94
W2kgIF07Ci0gICAgICAgeFtpK29yZCsxXT1feFtpKzFdOwotICAgICAgIHhbaStvcmQrMl09X3hb
aSsyXTsKLSAgICAgICB4W2krb3JkKzNdPV94W2krM107Ci0gICB9Ci0KLSAgIGZvciAoO2k8Tjtp
KyspCi0gICAgICAgICB4W2krb3JkXT1feFtpXTsKLQotICAgZm9yKGk9MDtpPG9yZDtpKyspCi0g
ICAgICBtZW1baV0gPSBfeFtOLWktMV07Ci0jaWZkZWYgU01BTExfRk9PVFBSSU5UCi0gICBmb3Ig
KGk9MDtpPE47aSsrKQotICAgewotICAgICAgb3B1c192YWwzMiBzdW0gPSBTSEwzMihFWFRFTkQz
MihfeFtpXSksIFNJR19TSElGVCk7Ci0gICAgICBmb3IgKGo9MDtqPG9yZDtqKyspCi0gICAgICB7
Ci0gICAgICAgICBzdW0gPSBNQUMxNl8xNihzdW0scm51bVtqXSx4W2kral0pOwotICAgICAgfQot
ICAgICAgX3lbaV0gPSBTQVRVUkFURTE2KFBTSFIzMihzdW0sIFNJR19TSElGVCkpOwotICAgfQot
I2Vsc2UKICAgIG5vQSA9IEVYVEVORDMyKDEpIDw8IFNJR19TSElGVCA+PiAxOwogICAgdmVjTm9B
ID0gX21tX3NldF9lcGkzMihub0EsIG5vQSwgbm9BLCBub0EpOwogCkBAIC0xMDcsMjUgKzY1LDI0
IEBAIHZvaWQgY2VsdF9maXJfc3NlNF8xKGNvbnN0IG9wdXNfdmFsMTYgKl94LAogICAgICAgb3B1
c192YWwzMiBzdW1zWzRdID0gezB9OwogICAgICAgX19tMTI4aSB2ZWNTdW0sIHZlY1g7CiAKLSAg
ICAgIHhjb3JyX2tlcm5lbChybnVtLCB4K2ksIHN1bXMsIG9yZCwgYXJjaCk7CisgICAgICB4Y29y
cl9rZXJuZWwocm51bSwgeCtpLW9yZCwgc3Vtcywgb3JkLCBhcmNoKTsKIAogICAgICAgdmVjU3Vt
ID0gX21tX2xvYWR1X3NpMTI4KChfX20xMjhpICopc3Vtcyk7CiAgICAgICB2ZWNTdW0gPSBfbW1f
YWRkX2VwaTMyKHZlY1N1bSwgdmVjTm9BKTsKICAgICAgIHZlY1N1bSA9IF9tbV9zcmFpX2VwaTMy
KHZlY1N1bSwgU0lHX1NISUZUKTsKLSAgICAgIHZlY1ggPSBPUF9DVlRFUEkxNl9FUEkzMl9NNjQo
X3ggKyBpKTsKKyAgICAgIHZlY1ggPSBPUF9DVlRFUEkxNl9FUEkzMl9NNjQoeCArIGkpOwogICAg
ICAgdmVjU3VtID0gX21tX2FkZF9lcGkzMih2ZWNTdW0sIHZlY1gpOwogICAgICAgdmVjU3VtID0g
X21tX3BhY2tzX2VwaTMyKHZlY1N1bSwgdmVjU3VtKTsKLSAgICAgIF9tbV9zdG9yZWxfZXBpNjQo
KF9fbTEyOGkgKikoX3kgKyBpKSwgdmVjU3VtKTsKKyAgICAgIF9tbV9zdG9yZWxfZXBpNjQoKF9f
bTEyOGkgKikoeSArIGkpLCB2ZWNTdW0pOwogICAgfQogICAgZm9yICg7aTxOO2krKykKICAgIHsK
ICAgICAgIG9wdXNfdmFsMzIgc3VtID0gMDsKICAgICAgIGZvciAoaj0wO2o8b3JkO2orKykKLSAg
ICAgICAgIHN1bSA9IE1BQzE2XzE2KHN1bSwgcm51bVtqXSwgeFtpICsgal0pOwotICAgICAgX3lb
aV0gPSBTQVRVUkFURTE2KEFERDMyKEVYVEVORDMyKF94W2ldKSwgUFNIUjMyKHN1bSwgU0lHX1NI
SUZUKSkpOworICAgICAgICAgc3VtID0gTUFDMTZfMTYoc3VtLCBybnVtW2pdLCB4W2krai1vcmRd
KTsKKyAgICAgIHlbaV0gPSBTQVRVUkFURTE2KEFERDMyKEVYVEVORDMyKHhbaV0pLCBQU0hSMzIo
c3VtLCBTSUdfU0hJRlQpKSk7CiAgICB9CiAKLSNlbmRpZgogICAgUkVTVE9SRV9TVEFDSzsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni9jZWx0X2xwY19zc2UuaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvY2VsdF9scGNf
c3NlLmgKaW5kZXggYzVlYzc5NmVkNTI1ZTBmZjYxNGI2NWIxZDNmMzkyOGU3Yzk0MWYzZS4uN2Qx
ZWNmNzUzMzI4MmRiYzc4MmZlNWJlNTQ1OTNmNGUyMzVhNDBkNSAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4
Ni9jZWx0X2xwY19zc2UuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L2NlbHRfbHBjX3NzZS5oCkBAIC00MSwxMiAr
NDEsMTEgQEAgdm9pZCBjZWx0X2Zpcl9zc2U0XzEoCiAgICAgICAgICBvcHVzX3ZhbDE2ICp5LAog
ICAgICAgICAgaW50IE4sCiAgICAgICAgICBpbnQgb3JkLAotICAgICAgICAgb3B1c192YWwxNiAq
bWVtLAogICAgICAgICAgaW50IGFyY2gpOwogCiAjaWYgZGVmaW5lZChPUFVTX1g4Nl9QUkVTVU1F
X1NTRTRfMSkKLSNkZWZpbmUgY2VsdF9maXIoeCwgbnVtLCB5LCBOLCBvcmQsIG1lbSwgYXJjaCkg
XAotICAgICgodm9pZClhcmNoLCBjZWx0X2Zpcl9zc2U0XzEoeCwgbnVtLCB5LCBOLCBvcmQsIG1l
bSwgYXJjaCkpCisjZGVmaW5lIGNlbHRfZmlyKHgsIG51bSwgeSwgTiwgb3JkLCBhcmNoKSBcCisg
ICAgKCh2b2lkKWFyY2gsIGNlbHRfZmlyX3NzZTRfMSh4LCBudW0sIHksIE4sIG9yZCwgYXJjaCkp
CiAKICNlbHNlCiAKQEAgLTU2LDExICs1NSwxMCBAQCBleHRlcm4gdm9pZCAoKmNvbnN0IENFTFRf
RklSX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKICAgICAgICAgIG9wdXNfdmFsMTYgKnksCiAg
ICAgICAgICBpbnQgTiwKICAgICAgICAgIGludCBvcmQsCi0gICAgICAgICBvcHVzX3ZhbDE2ICpt
ZW0sCiAgICAgICAgICBpbnQgYXJjaCk7CiAKLSMgIGRlZmluZSBjZWx0X2Zpcih4LCBudW0sIHks
IE4sIG9yZCwgbWVtLCBhcmNoKSBcCi0gICAgKCgqQ0VMVF9GSVJfSU1QTFsoYXJjaCkgJiBPUFVT
X0FSQ0hNQVNLXSkoeCwgbnVtLCB5LCBOLCBvcmQsIG1lbSwgYXJjaCkpCisjICBkZWZpbmUgY2Vs
dF9maXIoeCwgbnVtLCB5LCBOLCBvcmQsIGFyY2gpIFwKKyAgICAoKCpDRUxUX0ZJUl9JTVBMWyhh
cmNoKSAmIE9QVVNfQVJDSE1BU0tdKSh4LCBudW0sIHksIE4sIG9yZCwgYXJjaCkpCiAKICNlbmRp
ZgogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L3ZxX3NzZS5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni92cV9zc2Uu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5iNGVmZThmMjQ5Zjg5M2VkMTYwMDQwZWM4MjViMmE3NjQ3ZTE5MmJiCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni92cV9zc2UuaApAQCAtMCwwICsxLDUwIEBACisvKiBD
b3B5cmlnaHQgKGMpIDIwMTYgIEplYW4tTWFyYyBWYWxpbiAqLworLyoKKyAgIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgICBhcmUgbWV0OgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgIC0g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMK
KyAgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QKKyAgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICAgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyAg
IE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgICBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GCisgICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORworICAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpZm5k
ZWYgVlFfU1NFX0gKKyNkZWZpbmUgVlFfU1NFX0gKKworI2lmIGRlZmluZWQoT1BVU19YODZfTUFZ
X0hBVkVfU1NFMikgJiYgIWRlZmluZWQoRklYRURfUE9JTlQpCisjZGVmaW5lIE9WRVJSSURFX09Q
X1BWUV9TRUFSQ0gKKworb3B1c192YWwxNiBvcF9wdnFfc2VhcmNoX3NzZTIoY2VsdF9ub3JtICpf
WCwgaW50ICppeSwgaW50IEssIGludCBOLCBpbnQgYXJjaCk7CisKKyNpZiBkZWZpbmVkKE9QVVNf
WDg2X1BSRVNVTUVfU1NFMikKKyNkZWZpbmUgb3BfcHZxX3NlYXJjaCh4LCBpeSwgSywgTiwgYXJj
aCkgXAorICAgIChvcF9wdnFfc2VhcmNoX3NzZTIoeCwgaXksIEssIE4sIGFyY2gpKQorCisjZWxz
ZQorCitleHRlcm4gb3B1c192YWwxNiAoKmNvbnN0IE9QX1BWUV9TRUFSQ0hfSU1QTFtPUFVTX0FS
Q0hNQVNLICsgMV0pKAorICAgICAgY2VsdF9ub3JtICpfWCwgaW50ICppeSwgaW50IEssIGludCBO
LCBpbnQgYXJjaCk7CisKKyMgIGRlZmluZSBvcF9wdnFfc2VhcmNoKFgsIGl5LCBLLCBOLCBhcmNo
KSBcCisgICAgKCgqT1BfUFZRX1NFQVJDSF9JTVBMWyhhcmNoKSAmIE9QVVNfQVJDSE1BU0tdKShY
LCBpeSwgSywgTiwgYXJjaCkpCisKKyNlbmRpZgorI2VuZGlmCisKKyNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L3g4Ni92cV9zc2UyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L3ZxX3NzZTIuYwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42YTMx
NzcwMzU4YjdkNDE2NDcxZTE1NzZkZDg1MmM4YjIwODc4YmU3Ci0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L3g4Ni92cV9zc2UyLmMKQEAgLTAsMCArMSwyMTcgQEAKKy8qIENvcHlyaWdodCAoYykgMjAw
Ny0yMDA4IENTSVJPCisgICBDb3B5cmlnaHQgKGMpIDIwMDctMjAwOSBYaXBoLk9yZyBGb3VuZGF0
aW9uCisgICBDb3B5cmlnaHQgKGMpIDIwMDctMjAxNiBKZWFuLU1hcmMgVmFsaW4gKi8KKy8qCisg
ICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKworICAgLSBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisg
ICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAgIEEgUEFSVElD
VUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJ
R0hUIE9XTkVSCisgICBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAgIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAgIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UgorICAgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRgorICAgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcKKyAgIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICAgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisqLworCisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlm
CisKKyNpbmNsdWRlIDx4bW1pbnRyaW4uaD4KKyNpbmNsdWRlIDxlbW1pbnRyaW4uaD4KKyNpbmNs
dWRlICJjZWx0X2xwYy5oIgorI2luY2x1ZGUgInN0YWNrX2FsbG9jLmgiCisjaW5jbHVkZSAibWF0
aG9wcy5oIgorI2luY2x1ZGUgInZxLmgiCisjaW5jbHVkZSAieDg2Y3B1LmgiCisKKworI2lmbmRl
ZiBGSVhFRF9QT0lOVAorCitvcHVzX3ZhbDE2IG9wX3B2cV9zZWFyY2hfc3NlMihjZWx0X25vcm0g
Kl9YLCBpbnQgKml5LCBpbnQgSywgaW50IE4sIGludCBhcmNoKQoreworICAgaW50IGksIGo7Cisg
ICBpbnQgcHVsc2VzTGVmdDsKKyAgIGZsb2F0IHh5LCB5eTsKKyAgIFZBUkRFQ0woY2VsdF9ub3Jt
LCB5KTsKKyAgIFZBUkRFQ0woY2VsdF9ub3JtLCBYKTsKKyAgIFZBUkRFQ0woZmxvYXQsIHNpZ255
KTsKKyAgIF9fbTEyOCBzaWdubWFzazsKKyAgIF9fbTEyOCBzdW1zOworICAgX19tMTI4aSBmb3Vy
czsKKyAgIFNBVkVfU1RBQ0s7CisKKyAgICh2b2lkKWFyY2g7CisgICAvKiBBbGwgYml0cyBzZXQg
dG8gemVybywgZXhjZXB0IGZvciB0aGUgc2lnbiBiaXQuICovCisgICBzaWdubWFzayA9IF9tbV9z
ZXRfcHMxKC0wLmYpOworICAgZm91cnMgPSBfbW1fc2V0X2VwaTMyKDQsIDQsIDQsIDQpOworICAg
QUxMT0MoeSwgTiszLCBjZWx0X25vcm0pOworICAgQUxMT0MoWCwgTiszLCBjZWx0X25vcm0pOwor
ICAgQUxMT0Moc2lnbnksIE4rMywgZmxvYXQpOworCisgICBPUFVTX0NPUFkoWCwgX1gsIE4pOwor
ICAgWFtOXSA9IFhbTisxXSA9IFhbTisyXSA9IDA7CisgICBzdW1zID0gX21tX3NldHplcm9fcHMo
KTsKKyAgIGZvciAoaj0wO2o8TjtqKz00KQorICAgeworICAgICAgX19tMTI4IHg0LCBzNDsKKyAg
ICAgIHg0ID0gX21tX2xvYWR1X3BzKCZYW2pdKTsKKyAgICAgIHM0ID0gX21tX2NtcGx0X3BzKHg0
LCBfbW1fc2V0emVyb19wcygpKTsKKyAgICAgIC8qIEdldCByaWQgb2YgdGhlIHNpZ24gKi8KKyAg
ICAgIHg0ID0gX21tX2FuZG5vdF9wcyhzaWdubWFzaywgeDQpOworICAgICAgc3VtcyA9IF9tbV9h
ZGRfcHMoc3VtcywgeDQpOworICAgICAgLyogQ2xlYXIgeSBhbmQgaXkgaW4gY2FzZSB3ZSBkb24n
dCBkbyB0aGUgcHJvamVjdGlvbi4gKi8KKyAgICAgIF9tbV9zdG9yZXVfcHMoJnlbal0sIF9tbV9z
ZXR6ZXJvX3BzKCkpOworICAgICAgX21tX3N0b3JldV9zaTEyOCgoX19tMTI4aSopJml5W2pdLCBf
bW1fc2V0emVyb19zaTEyOCgpKTsKKyAgICAgIF9tbV9zdG9yZXVfcHMoJlhbal0sIHg0KTsKKyAg
ICAgIF9tbV9zdG9yZXVfcHMoJnNpZ255W2pdLCBzNCk7CisgICB9CisgICBzdW1zID0gX21tX2Fk
ZF9wcyhzdW1zLCBfbW1fc2h1ZmZsZV9wcyhzdW1zLCBzdW1zLCBfTU1fU0hVRkZMRSgxLCAwLCAz
LCAyKSkpOworICAgc3VtcyA9IF9tbV9hZGRfcHMoc3VtcywgX21tX3NodWZmbGVfcHMoc3Vtcywg
c3VtcywgX01NX1NIVUZGTEUoMiwgMywgMCwgMSkpKTsKKworICAgeHkgPSB5eSA9IDA7CisKKyAg
IHB1bHNlc0xlZnQgPSBLOworCisgICAvKiBEbyBhIHByZS1zZWFyY2ggYnkgcHJvamVjdGluZyBv
biB0aGUgcHlyYW1pZCAqLworICAgaWYgKEsgPiAoTj4+MSkpCisgICB7CisgICAgICBfX20xMjhp
IHB1bHNlc19zdW07CisgICAgICBfX20xMjggeXk0LCB4eTQ7CisgICAgICBfX20xMjggcmNwNDsK
KyAgICAgIG9wdXNfdmFsMzIgc3VtID0gX21tX2N2dHNzX2YzMihzdW1zKTsKKyAgICAgIC8qIElm
IFggaXMgdG9vIHNtYWxsLCBqdXN0IHJlcGxhY2UgaXQgd2l0aCBhIHB1bHNlIGF0IDAgKi8KKyAg
ICAgIC8qIFByZXZlbnRzIGluZmluaXRpZXMgYW5kIE5hTnMgZnJvbSBjYXVzaW5nIHRvbyBtYW55
IHB1bHNlcworICAgICAgICAgdG8gYmUgYWxsb2NhdGVkLiA2NCBpcyBhbiBhcHByb3hpbWF0aW9u
IG9mIGluZmluaXR5IGhlcmUuICovCisgICAgICBpZiAoIShzdW0gPiBFUFNJTE9OICYmIHN1bSA8
IDY0KSkKKyAgICAgIHsKKyAgICAgICAgIFhbMF0gPSBRQ09OU1QxNigxLmYsMTQpOworICAgICAg
ICAgaj0xOyBkbworICAgICAgICAgICAgWFtqXT0wOworICAgICAgICAgd2hpbGUgKCsrajxOKTsK
KyAgICAgICAgIHN1bXMgPSBfbW1fc2V0X3BzMSgxLmYpOworICAgICAgfQorICAgICAgLyogVXNp
bmcgSytlIHdpdGggZSA8IDEgZ3VhcmFudGVlcyB3ZSBjYW5ub3QgZ2V0IG1vcmUgdGhhbiBLIHB1
bHNlcy4gKi8KKyAgICAgIHJjcDQgPSBfbW1fbXVsX3BzKF9tbV9zZXRfcHMxKChmbG9hdCkoSysu
OCkpLCBfbW1fcmNwX3BzKHN1bXMpKTsKKyAgICAgIHh5NCA9IHl5NCA9IF9tbV9zZXR6ZXJvX3Bz
KCk7CisgICAgICBwdWxzZXNfc3VtID0gX21tX3NldHplcm9fc2kxMjgoKTsKKyAgICAgIGZvciAo
aj0wO2o8TjtqKz00KQorICAgICAgeworICAgICAgICAgX19tMTI4IHJ4NCwgeDQsIHk0OworICAg
ICAgICAgX19tMTI4aSBpeTQ7CisgICAgICAgICB4NCA9IF9tbV9sb2FkdV9wcygmWFtqXSk7Cisg
ICAgICAgICByeDQgPSBfbW1fbXVsX3BzKHg0LCByY3A0KTsKKyAgICAgICAgIGl5NCA9IF9tbV9j
dnR0cHNfZXBpMzIocng0KTsKKyAgICAgICAgIHB1bHNlc19zdW0gPSBfbW1fYWRkX2VwaTMyKHB1
bHNlc19zdW0sIGl5NCk7CisgICAgICAgICBfbW1fc3RvcmV1X3NpMTI4KChfX20xMjhpKikmaXlb
al0sIGl5NCk7CisgICAgICAgICB5NCA9IF9tbV9jdnRlcGkzMl9wcyhpeTQpOworICAgICAgICAg
eHk0ID0gX21tX2FkZF9wcyh4eTQsIF9tbV9tdWxfcHMoeDQsIHk0KSk7CisgICAgICAgICB5eTQg
PSBfbW1fYWRkX3BzKHl5NCwgX21tX211bF9wcyh5NCwgeTQpKTsKKyAgICAgICAgIC8qIGRvdWJs
ZSB0aGUgeVtdIHZlY3RvciBzbyB3ZSBkb24ndCBoYXZlIHRvIGRvIGl0IGluIHRoZSBzZWFyY2gg
bG9vcC4gKi8KKyAgICAgICAgIF9tbV9zdG9yZXVfcHMoJnlbal0sIF9tbV9hZGRfcHMoeTQsIHk0
KSk7CisgICAgICB9CisgICAgICBwdWxzZXNfc3VtID0gX21tX2FkZF9lcGkzMihwdWxzZXNfc3Vt
LCBfbW1fc2h1ZmZsZV9lcGkzMihwdWxzZXNfc3VtLCBfTU1fU0hVRkZMRSgxLCAwLCAzLCAyKSkp
OworICAgICAgcHVsc2VzX3N1bSA9IF9tbV9hZGRfZXBpMzIocHVsc2VzX3N1bSwgX21tX3NodWZm
bGVfZXBpMzIocHVsc2VzX3N1bSwgX01NX1NIVUZGTEUoMiwgMywgMCwgMSkpKTsKKyAgICAgIHB1
bHNlc0xlZnQgLT0gX21tX2N2dHNpMTI4X3NpMzIocHVsc2VzX3N1bSk7CisgICAgICB4eTQgPSBf
bW1fYWRkX3BzKHh5NCwgX21tX3NodWZmbGVfcHMoeHk0LCB4eTQsIF9NTV9TSFVGRkxFKDEsIDAs
IDMsIDIpKSk7CisgICAgICB4eTQgPSBfbW1fYWRkX3BzKHh5NCwgX21tX3NodWZmbGVfcHMoeHk0
LCB4eTQsIF9NTV9TSFVGRkxFKDIsIDMsIDAsIDEpKSk7CisgICAgICB4eSA9IF9tbV9jdnRzc19m
MzIoeHk0KTsKKyAgICAgIHl5NCA9IF9tbV9hZGRfcHMoeXk0LCBfbW1fc2h1ZmZsZV9wcyh5eTQs
IHl5NCwgX01NX1NIVUZGTEUoMSwgMCwgMywgMikpKTsKKyAgICAgIHl5NCA9IF9tbV9hZGRfcHMo
eXk0LCBfbW1fc2h1ZmZsZV9wcyh5eTQsIHl5NCwgX01NX1NIVUZGTEUoMiwgMywgMCwgMSkpKTsK
KyAgICAgIHl5ID0gX21tX2N2dHNzX2YzMih5eTQpOworICAgfQorICAgWFtOXSA9IFhbTisxXSA9
IFhbTisyXSA9IC0xMDA7CisgICB5W05dID0geVtOKzFdID0geVtOKzJdID0gMTAwOworICAgY2Vs
dF9hc3NlcnQyKHB1bHNlc0xlZnQ+PTAsICJBbGxvY2F0ZWQgdG9vIG1hbnkgcHVsc2VzIGluIHRo
ZSBxdWljayBwYXNzIik7CisKKyAgIC8qIFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbiwgYnV0IGp1
c3QgaW4gY2FzZSBpdCBkb2VzIChlLmcuIG9uIHNpbGVuY2UpCisgICAgICB3ZSBmaWxsIHRoZSBm
aXJzdCBiaW4gd2l0aCBwdWxzZXMuICovCisgICBpZiAocHVsc2VzTGVmdCA+IE4rMykKKyAgIHsK
KyAgICAgIG9wdXNfdmFsMTYgdG1wID0gKG9wdXNfdmFsMTYpcHVsc2VzTGVmdDsKKyAgICAgIHl5
ID0gTUFDMTZfMTYoeXksIHRtcCwgdG1wKTsKKyAgICAgIHl5ID0gTUFDMTZfMTYoeXksIHRtcCwg
eVswXSk7CisgICAgICBpeVswXSArPSBwdWxzZXNMZWZ0OworICAgICAgcHVsc2VzTGVmdD0wOwor
ICAgfQorCisgICBmb3IgKGk9MDtpPHB1bHNlc0xlZnQ7aSsrKQorICAgeworICAgICAgaW50IGJl
c3RfaWQ7CisgICAgICBfX20xMjggeHk0LCB5eTQ7CisgICAgICBfX20xMjggbWF4LCBtYXgyOwor
ICAgICAgX19tMTI4aSBjb3VudDsKKyAgICAgIF9fbTEyOGkgcG9zOworICAgICAgLyogVGhlIHNx
dWFyZWQgbWFnbml0dWRlIHRlcm0gZ2V0cyBhZGRlZCBhbnl3YXksIHNvIHdlIG1pZ2h0IGFzIHdl
bGwKKyAgICAgICAgIGFkZCBpdCBvdXRzaWRlIHRoZSBsb29wICovCisgICAgICB5eSA9IEFERDE2
KHl5LCAxKTsKKyAgICAgIHh5NCA9IF9tbV9sb2FkMV9wcygmeHkpOworICAgICAgeXk0ID0gX21t
X2xvYWQxX3BzKCZ5eSk7CisgICAgICBtYXggPSBfbW1fc2V0emVyb19wcygpOworICAgICAgcG9z
ID0gX21tX3NldHplcm9fc2kxMjgoKTsKKyAgICAgIGNvdW50ID0gX21tX3NldF9lcGkzMigzLCAy
LCAxLCAwKTsKKyAgICAgIGZvciAoaj0wO2o8TjtqKz00KQorICAgICAgeworICAgICAgICAgX19t
MTI4IHg0LCB5NCwgcjQ7CisgICAgICAgICB4NCA9IF9tbV9sb2FkdV9wcygmWFtqXSk7CisgICAg
ICAgICB5NCA9IF9tbV9sb2FkdV9wcygmeVtqXSk7CisgICAgICAgICB4NCA9IF9tbV9hZGRfcHMo
eDQsIHh5NCk7CisgICAgICAgICB5NCA9IF9tbV9hZGRfcHMoeTQsIHl5NCk7CisgICAgICAgICB5
NCA9IF9tbV9yc3FydF9wcyh5NCk7CisgICAgICAgICByNCA9IF9tbV9tdWxfcHMoeDQsIHk0KTsK
KyAgICAgICAgIC8qIFVwZGF0ZSB0aGUgaW5kZXggb2YgdGhlIG1heC4gKi8KKyAgICAgICAgIHBv
cyA9IF9tbV9tYXhfZXBpMTYocG9zLCBfbW1fYW5kX3NpMTI4KGNvdW50LCBfbW1fY2FzdHBzX3Np
MTI4KF9tbV9jbXBndF9wcyhyNCwgbWF4KSkpKTsKKyAgICAgICAgIC8qIFVwZGF0ZSB0aGUgbWF4
LiAqLworICAgICAgICAgbWF4ID0gX21tX21heF9wcyhtYXgsIHI0KTsKKyAgICAgICAgIC8qIFVw
ZGF0ZSB0aGUgaW5kaWNlcyAoKzQpICovCisgICAgICAgICBjb3VudCA9IF9tbV9hZGRfZXBpMzIo
Y291bnQsIGZvdXJzKTsKKyAgICAgIH0KKyAgICAgIC8qIEhvcml6b250YWwgbWF4ICovCisgICAg
ICBtYXgyID0gX21tX21heF9wcyhtYXgsIF9tbV9zaHVmZmxlX3BzKG1heCwgbWF4LCBfTU1fU0hV
RkZMRSgxLCAwLCAzLCAyKSkpOworICAgICAgbWF4MiA9IF9tbV9tYXhfcHMobWF4MiwgX21tX3No
dWZmbGVfcHMobWF4MiwgbWF4MiwgX01NX1NIVUZGTEUoMiwgMywgMCwgMSkpKTsKKyAgICAgIC8q
IE5vdyB0aGF0IG1heDIgY29udGFpbnMgdGhlIG1heCBhdCBhbGwgcG9zaXRpb25zLCBsb29rIGF0
IHdoaWNoIHZhbHVlKHMpIG9mIHRoZQorICAgICAgICAgcGFydGlhbCBtYXggaXMgZXF1YWwgdG8g
dGhlIGdsb2JhbCBtYXguICovCisgICAgICBwb3MgPSBfbW1fYW5kX3NpMTI4KHBvcywgX21tX2Nh
c3Rwc19zaTEyOChfbW1fY21wZXFfcHMobWF4LCBtYXgyKSkpOworICAgICAgcG9zID0gX21tX21h
eF9lcGkxNihwb3MsIF9tbV91bnBhY2toaV9lcGk2NChwb3MsIHBvcykpOworICAgICAgcG9zID0g
X21tX21heF9lcGkxNihwb3MsIF9tbV9zaHVmZmxlbG9fZXBpMTYocG9zLCBfTU1fU0hVRkZMRSgx
LCAwLCAzLCAyKSkpOworICAgICAgYmVzdF9pZCA9IF9tbV9jdnRzaTEyOF9zaTMyKHBvcyk7CisK
KyAgICAgIC8qIFVwZGF0aW5nIHRoZSBzdW1zIG9mIHRoZSBuZXcgcHVsc2UocykgKi8KKyAgICAg
IHh5ID0gQUREMzIoeHksIEVYVEVORDMyKFhbYmVzdF9pZF0pKTsKKyAgICAgIC8qIFdlJ3JlIG11
bHRpcGx5aW5nIHlbal0gYnkgdHdvIHNvIHdlIGRvbid0IGhhdmUgdG8gZG8gaXQgaGVyZSAqLwor
ICAgICAgeXkgPSBBREQxNih5eSwgeVtiZXN0X2lkXSk7CisKKyAgICAgIC8qIE9ubHkgbm93IHRo
YXQgd2UndmUgbWFkZSB0aGUgZmluYWwgY2hvaWNlLCB1cGRhdGUgeS9peSAqLworICAgICAgLyog
TXVsdGlwbHlpbmcgeVtqXSBieSAyIHNvIHdlIGRvbid0IGhhdmUgdG8gZG8gaXQgZXZlcnl3aGVy
ZSBlbHNlICovCisgICAgICB5W2Jlc3RfaWRdICs9IDI7CisgICAgICBpeVtiZXN0X2lkXSsrOwor
ICAgfQorCisgICAvKiBQdXQgdGhlIG9yaWdpbmFsIHNpZ24gYmFjayAqLworICAgZm9yIChqPTA7
ajxOO2orPTQpCisgICB7CisgICAgICBfX20xMjhpIHk0OworICAgICAgX19tMTI4aSBzNDsKKyAg
ICAgIHk0ID0gX21tX2xvYWR1X3NpMTI4KChfX20xMjhpKikmaXlbal0pOworICAgICAgczQgPSBf
bW1fY2FzdHBzX3NpMTI4KF9tbV9sb2FkdV9wcygmc2lnbnlbal0pKTsKKyAgICAgIHk0ID0gX21t
X3hvcl9zaTEyOChfbW1fYWRkX2VwaTMyKHk0LCBzNCksIHM0KTsKKyAgICAgIF9tbV9zdG9yZXVf
c2kxMjgoKF9fbTEyOGkqKSZpeVtqXSwgeTQpOworICAgfQorICAgUkVTVE9SRV9TVEFDSzsKKyAg
IHJldHVybiB5eTsKK30KKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L3g4Nl9jZWx0X21h
cC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L3g4Ni94ODZfY2VsdF9tYXAuYwppbmRleCA0N2JhNDFiOWVlZmQ1ZTNkY2Y0ZTRm
OGY1OTA4YjFjYjBjNWVhZTVhLi5kMzlkODhlZGVjZDU3MTkzOTczMTU3MDFhZTNiOTNkYmNmMGE3
NjdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L3g4Nl9jZWx0X21hcC5jCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYveDg2
X2NlbHRfbWFwLmMKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJjZWx0X2xwYy5oIgogI2lu
Y2x1ZGUgInBpdGNoLmgiCiAjaW5jbHVkZSAicGl0Y2hfc3NlLmgiCisjaW5jbHVkZSAidnEuaCIK
IAogI2lmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpCiAKQEAgLTQ2LDcgKzQ3LDYgQEAgdm9pZCAo
KmNvbnN0IENFTFRfRklSX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKICAgICAgICAgIG9wdXNf
dmFsMTYgICAgICAgKnksCiAgICAgICAgICBpbnQgICAgICAgICAgICAgIE4sCiAgICAgICAgICBp
bnQgICAgICAgICAgICAgIG9yZCwKLSAgICAgICAgIG9wdXNfdmFsMTYgICAgICAgKm1lbSwKICAg
ICAgICAgIGludCAgICAgICAgICAgICAgYXJjaAogKSA9IHsKICAgY2VsdF9maXJfYywgICAgICAg
ICAgICAgICAgLyogbm9uLXNzZSAqLwpAQCAtMTUxLDUgKzE1MSwxNyBAQCB2b2lkICgqY29uc3Qg
Q09NQl9GSUxURVJfQ09OU1RfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKAogCiAjZW5kaWYKIAor
I2lmIGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFMikgJiYgIWRlZmluZWQoT1BVU19YODZf
UFJFU1VNRV9TU0UyKQorb3B1c192YWwxNiAoKmNvbnN0IE9QX1BWUV9TRUFSQ0hfSU1QTFtPUFVT
X0FSQ0hNQVNLICsgMV0pKAorICAgICAgY2VsdF9ub3JtICpfWCwgaW50ICppeSwgaW50IEssIGlu
dCBOLCBpbnQgYXJjaAorKSA9IHsKKyAgb3BfcHZxX3NlYXJjaF9jLCAgICAgICAgICAgICAgICAv
KiBub24tc3NlICovCisgIG9wX3B2cV9zZWFyY2hfYywKKyAgTUFZX0hBVkVfU1NFMihvcF9wdnFf
c2VhcmNoKSwKKyAgTUFZX0hBVkVfU1NFMihvcF9wdnFfc2VhcmNoKSwKKyAgTUFZX0hBVkVfU1NF
MihvcF9wdnFfc2VhcmNoKQorfTsKKyNlbmRpZgorCiAjZW5kaWYKICNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jb25maWd1cmUuYWMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NvbmZpZ3VyZS5hYwppbmRleCBjNTI3ZTM2ODRkNmNmNWVhY2ZjMjc4
MDVhZmUzZTNkN2Y4MjNhMTA3Li41ZmZhMmQzOGU3MGNlNjVjMzkwZDkwMjBiNDExMzRiOWY1N2Qy
MDkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NvbmZpZ3VyZS5hYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NvbmZpZ3VyZS5hYwpAQCAtMjIsOSAr
MjIsOSBAQCBtNF9pZmRlZihbQU1fU0lMRU5UX1JVTEVTXSwgW0FNX1NJTEVOVF9SVUxFUyhbeWVz
XSldKQogCiAjIEZvciBsaWJ0b29sLgogZG5sIFBsZWFzZSB1cGRhdGUgdGhlc2UgZm9yIHJlbGVh
c2VzLgotT1BVU19MVF9DVVJSRU5UPTUKLU9QVVNfTFRfUkVWSVNJT049MwotT1BVU19MVF9BR0U9
NQorT1BVU19MVF9DVVJSRU5UPTYKK09QVVNfTFRfUkVWSVNJT049MQorT1BVU19MVF9BR0U9Ngog
CiBBQ19TVUJTVChPUFVTX0xUX0NVUlJFTlQpCiBBQ19TVUJTVChPUFVTX0xUX1JFVklTSU9OKQpA
QCAtNDIxLDEyICs0MjEsMTIgQEAgQUNfREVGVU4oW09QVVNfUEFUSF9ORTEwXSwKICAgICAgIGZp
CiAKICAgICAgIEFDX01TR19DSEVDS0lORyhmb3IgTkUxMCkKLSAgICAgIHNhdmVfQ0ZMQUdTPSIk
Q0ZMQUdTIjsgQ0ZMQUdTPSIkTkUxMF9DRkxBR1MiCi0gICAgICBzYXZlX0xJQlM9IiRMSUJTIjsg
TElCUz0iJE5FMTBfTElCUyAkTElCTSIKKyAgICAgIHNhdmVfQ0ZMQUdTPSIkQ0ZMQUdTIjsgQ0ZM
QUdTPSIkQ0ZMQUdTICRORTEwX0NGTEFHUyIKKyAgICAgIHNhdmVfTElCUz0iJExJQlMiOyBMSUJT
PSIkTElCUyAkTkUxMF9MSUJTICRMSUJNIgogICAgICAgQUNfTElOS19JRkVMU0UoCiAgICAgICAg
ICBbCiAgICAgICAgICAgICBBQ19MQU5HX1BST0dSQU0oCi0gICAgICAgICAgICAgICBbWyNpbmNs
dWRlIDxORTEwX2luaXQuaD4KKyAgICAgICAgICAgICAgIFtbI2luY2x1ZGUgPE5FMTBfZHNwLmg+
CiAgICAgICAgICAgICAgICBdXSwKICAgICAgICAgICAgICAgIFtbCiAgICAgICAgICAgICAgICAg
ICBuZTEwX2ZmdF9jZmdfZmxvYXQzMl90IGNmZzsKQEAgLTcxNSw3ICs3MTUsNyBAQCBBU19JRihb
dGVzdCB4IiRlbmFibGVfaW50cmluc2ljcyIgPSB4InllcyJdLFsKICAgICAgICAgICAgIF1dKV0s
CiAgICAgICAgICAgICBbQUNfTVNHX1JFU1VMVChbQyBtZXRob2RdKQogICAgICAgICAgICAgICAg
ICBBQ19ERUZJTkUoW0NQVV9JTkZPX0JZX0NdLCBbMV0sIFtHZXQgQ1BVIEluZm8gYnkgYyBtZXRo
b2RdKV0sCi0gICAgICAgICAgICBbQUNfTVNHX0VSUk9SKFtubyBzdXBwb3J0ZWQgR2V0IENQVSBJ
bmZvIG1ldGhvZCwgcGxlYXNlIGRpc2FibGUgaW50cmluc2ljc10pXSldKV0pCisgICAgICAgICAg
ICBbQUNfTVNHX0VSUk9SKFtubyBzdXBwb3J0ZWQgR2V0IENQVSBJbmZvIG1ldGhvZCwgcGxlYXNl
IGRpc2FibGUgcnVuLXRpbWUgQ1BVIGNhcGFiaWxpdGllcyBkZXRlY3Rpb24gb3IgaW50cmluc2lj
c10pXSldKV0pCiAgICBdLAogICAgWwogICAgICAgQUNfTVNHX1dBUk4oW05vIGludHJpbnNpY3Mg
c3VwcG9ydCBmb3IgeW91ciBhcmNoaXRlY3R1cmVdKQpAQCAtNzY3LDYgKzc2NywxNSBAQCBBU19J
RihbdGVzdCAiJGVuYWJsZV9mdXp6aW5nIiA9ICJ5ZXMiXSwgWwogICBBQ19ERUZJTkUoW0ZVWlpJ
TkddLCBbMV0sIFtGdXp6aW5nXSkKIF0pCiAKK0FDX0FSR19FTkFCTEUoW2NoZWNrLWFzbV0sCisg
ICAgW0FTX0hFTFBfU1RSSU5HKFstLWVuYWJsZS1jaGVjay1hc21dLAorICAgICAgICAgICAgICAg
ICAgICBbZW5hYmxlIGJpdC1leGFjdG5lc3MgY2hlY2tzIGJldHdlZW4gb3B0aW1pemVkIGFuZCBj
IGltcGxlbWVudGF0aW9uc10pXSwsCisgICAgW2VuYWJsZV9jaGVja19hc209bm9dKQorCitBU19J
RihbdGVzdCAiJGVuYWJsZV9jaGVja19hc20iID0gInllcyJdLCBbCisgIEFDX0RFRklORShbT1BV
U19DSEVDS19BU01dLCBbMV0sIFtSdW4gYml0LWV4YWN0bmVzcyBjaGVja3MgYmV0d2VlbiBvcHRp
bWl6ZWQgYW5kIGMgaW1wbGVtZW50YXRpb25zXSkKK10pCisKIEFDX0FSR19FTkFCTEUoW2FtYmlz
b25pY3NdLAogICAgIFtBU19IRUxQX1NUUklORyhbLS1lbmFibGUtYW1iaXNvbmljc10sW2VuYWJs
ZSBleHBlcmltZW50YWwgYW1iaXNvbmljIGVuY29kaW5nIGFuZCBkZWNvZGluZyBzdXBwb3J0XSld
LCwKICAgICBbZW5hYmxlX2FtYmlzb25pY3M9bm9dKQpAQCAtNzgxLDYgKzc5MCw3IEBAIEFDX0FS
R19FTkFCTEUoW2RvY10sCiAKIEFTX0lGKFt0ZXN0ICIkZW5hYmxlX2RvYyIgPSAieWVzIl0sIFsK
ICAgQUNfQ0hFQ0tfUFJPRyhIQVZFX0RPWFlHRU4sIFtkb3h5Z2VuXSwgW3llc10sIFtub10pCisg
IEFDX0NIRUNLX1BST0coSEFWRV9ET1QsIFtkb3RdLCBbeWVzXSwgW25vXSkKIF0sWwogICBIQVZF
X0RPWFlHRU49bm8KIF0pCkBAIC03OTQsNiArODA0LDE1IEBAIEFDX0FSR19FTkFCTEUoW2V4dHJh
LXByb2dyYW1zXSwKIEFNX0NPTkRJVElPTkFMKFtFWFRSQV9QUk9HUkFNU10sIFt0ZXN0ICIkZW5h
YmxlX2V4dHJhX3Byb2dyYW1zIiA9ICJ5ZXMiXSkKIAogCitBQ19BUkdfRU5BQkxFKFt1cGRhdGUt
ZHJhZnRdLAorICBBU19IRUxQX1NUUklORyhbLS1lbmFibGUtdXBkYXRlLWRyYWZ0XSwgW0VuYWJs
ZSBiaXRzdHJlYW0gY2hhbmdlcyBmcm9tIGRyYWZ0LWlldGYtY29kZWMtb3B1cy11cGRhdGVdKSws
CisgIFtlbmFibGVfdXBkYXRlX2RyYWZ0PW5vXSkKKworQVNfSUYoW3Rlc3QgIiRlbmFibGVfdXBk
YXRlX2RyYWZ0IiA9ICJ5ZXMiXSwgWworICBBQ19ERUZJTkUoW0VOQUJMRV9VUERBVEVfRFJBRlRd
LCBbMV0sIFtFbmFibGUgYml0c3RyZWFtIGNoYW5nZXMgZnJvbSBkcmFmdC1pZXRmLWNvZGVjLW9w
dXMtdXBkYXRlXSkKK10pCisKKwogc2F2ZWRfQ0ZMQUdTPSIkQ0ZMQUdTIgogQ0ZMQUdTPSIkQ0ZM
QUdTIC1mdmlzaWJpbGl0eT1oaWRkZW4iCiBBQ19NU0dfQ0hFQ0tJTkcoW2lmICR7Q0N9IHN1cHBv
cnRzIC1mdmlzaWJpbGl0eT1oaWRkZW5dKQpAQCAtODU5LDcgKzg3OCw4IEBAIEFDX01TR19OT1RJ
Q0UoWwogICAgICAgQ3VzdG9tIG1vZGVzOiAuLi4uLi4uLi4uLi4uLi4uLi4gJHtlbmFibGVfY3Vz
dG9tX21vZGVzfQogICAgICAgQXNzZXJ0aW9uIGNoZWNraW5nOiAuLi4uLi4uLi4uLi4gJHtlbmFi
bGVfYXNzZXJ0aW9uc30KICAgICAgIEZ1enppbmc6IC4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICR7
ZW5hYmxlX2Z1enppbmd9Ci0gICAgICBBbWJpc29uaWNzIHN1cHBvcnQ6IC4uLi4uLi4uLi4uLi4k
e2VuYWJsZV9hbWJpc29uaWNzfQorICAgICAgQ2hlY2sgQVNNOiAuLi4uLi4uLi4uLi4uLi4uLi4u
Li4gJHtlbmFibGVfY2hlY2tfYXNtfQorICAgICAgQW1iaXNvbmljcyBzdXBwb3J0OiAuLi4uLi4u
Li4uLi4gJHtlbmFibGVfYW1iaXNvbmljc30KIAogICAgICAgQVBJIGRvY3VtZW50YXRpb246IC4u
Li4uLi4uLi4uLi4gJHtlbmFibGVfZG9jfQogICAgICAgRXh0cmEgcHJvZ3JhbXM6IC4uLi4uLi4u
Li4uLi4uLi4gJHtlbmFibGVfZXh0cmFfcHJvZ3JhbXN9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9Eb3h5Zmls
ZS5pbiBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvZG9jL0RveHlmaWxlLmluCmluZGV4IGNkNzc2NzUyZDQ5NjdkZGU2MThmOTAwNzI3ZDY3
MDVlNWRjODdhMGYuLjM2ZWVlMGI1MzgwYjgwNDMyNzk2MzEwMjY3ODUyY2IxNjJhNDZiZDEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvZG9jL0RveHlmaWxlLmluCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL0RveHlmaWxlLmluCkBAIC0zMTgsMyAr
MzE4LDE4IEBAIFBSRURFRklORUQgICAgICAgICAgICAgPSBPUFVTX0VYUE9SVD0gXAogICAgICAg
ICAgICAgICAgICAgICAgICAgIE9QVVNfQ1VTVE9NX0VYUE9SVF9TVEFUSUM9IFwKICAgICAgICAg
ICAgICAgICAgICAgICAgICBPUFVTX1dBUk5fVU5VU0VEX1JFU1VMVD0gXAogICAgICAgICAgICAg
ICAgICAgICAgICAgIE9QVVNfQVJHX05PTk5VTEwoX3gpPQorCisjLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
CisjIENvbmZpZ3VyYXRpb24gb3B0aW9ucyByZWxhdGVkIHRvIHRoZSBkb3QgdG9vbAorIy0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLQorCisjIElmIHlvdSBzZXQgdGhlIEhBVkVfRE9UIHRhZyB0byBZRVMgdGhl
biBkb3h5Z2VuIHdpbGwgYXNzdW1lIHRoZSBkb3QgdG9vbCBpcworIyBhdmFpbGFibGUgZnJvbSB0
aGUgcGF0aC4gVGhpcyB0b29sIGlzIHBhcnQgb2YgR3JhcGh2aXogKHNlZToKKyMgaHR0cDovL3d3
dy5ncmFwaHZpei5vcmcvKSwgYSBncmFwaCB2aXN1YWxpemF0aW9uIHRvb2xraXQgZnJvbSBBVCZU
IGFuZCBMdWNlbnQKKyMgQmVsbCBMYWJzLgorCisjIERlYmlhbiBkZWZhdWx0cyB0byBZRVMgaGVy
ZSwgd2hpbGUgRmVkb3JhIGFuZCBIb21lYnJldyBkZWZhdWx0IHRvIE5PLgorIyBTbyB3ZSBzZXQg
dGhpcyBiYXNlZCBvbiB3aGV0aGVyIHRoZSBncmFwaHZpeiBwYWNrYWdlIGlzIGF2YWlsYWJsZSBh
dAorIyBjb25maWd1cmUgdGltZS4KKyMKK0hBVkVfRE9UID0gQEhBVkVfRE9UQApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9kb2MvVE9ETyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvZG9jL1RPRE8KZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDllMWMy
ZDUxM2M0ZDQ5ZjRhMWQyZWJmMTIzZWNjMWI1ZjdjMWE2NjcuLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvVE9ETworKysgL2Rldi9udWxsCkBAIC0xLDcg
KzAsMCBAQAotZGVmaW5lIGF1ZGlvIGJhbmR3aWR0aCBhcyBmcmVxdWVuY3kgcmFuZ2UKLQotcmVw
ZWF0IHBhZGRpbmcgcmVjb21tZW5kYXRpb24KLQotcHRpbWU6IHJlZmVyIHRvIFJGQwotCi1PcHVz
IGRvZXMgbm90IHByb3ZpZGUgYW55IGNvbmZpZGVudGlhbGl0eSBvciBpbnRlZ3JpdHkgcHJvdGVj
dGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9kb2MvYnVpbGRfZHJhZnQuc2ggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9idWlsZF9kcmFmdC5zaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5kMTViMjJhNzliMzQ2YzBlYWZkMDQ0ZWUxZTBiNGEyNjI3NTg0ZDkyCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9kb2MvYnVpbGRfZHJhZnQuc2gKQEAgLTAsMCArMSwxMDQgQEAKKyMhL2Jp
bi9zaAorCisjIENvcHlyaWdodCAoYykgMjAxMS0yMDEyIFhpcGguT3JnIEZvdW5kYXRpb24gYW5k
IE1vemlsbGEgQ29ycG9yYXRpb24KKyMKKyMgIFRoaXMgZmlsZSBpcyBleHRyYWN0ZWQgZnJvbSBS
RkM2NzE2LiBQbGVhc2Ugc2VlIHRoYXQgUkZDIGZvciBhZGRpdGlvbmFsCisjICBpbmZvcm1hdGlv
bi4KKyMKKyMgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorIyAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjICBhcmUgbWV0OgorIworIyAgLSBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorIyAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorIworIyAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorIyAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyMKKyMgIC0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRG
IG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKKyMgIG5hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9y
cywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCisjICBwcm9kdWN0cyBkZXJpdmVk
IGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KKyMgIHBl
cm1pc3Npb24uCisjCisjICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisjICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisjICBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IKKyMgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSCisjICBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyMgIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyMgIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUgorIyAgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgorIyAgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcKKyMgIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUworIyAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisKKyNTdG9wIG9uIGVycm9ycworc2V0IC1lCisjU2V0IHRoZSBDV0Qg
dG8gdGhlIGxvY2F0aW9uIG9mIHRoaXMgc2NyaXB0CitbIC1uICIkezAlLyp9IiBdICYmIGNkICIk
ezAlLyp9IgorCit0b3BsZXZlbD0iLi4iCitkZXN0ZGlyPSJvcHVzX3NvdXJjZSIKKworZWNobyBw
YWNrYWdpbmcgc291cmNlIGNvZGUKK3JtIC1yZiAiJHtkZXN0ZGlyfSIKK21rZGlyICIke2Rlc3Rk
aXJ9IgorbWtkaXIgIiR7ZGVzdGRpcn0vc3JjIgorbWtkaXIgIiR7ZGVzdGRpcn0vc2lsayIKK21r
ZGlyICIke2Rlc3RkaXJ9L3NpbGsvZmxvYXQiCitta2RpciAiJHtkZXN0ZGlyfS9zaWxrL2ZpeGVk
IgorbWtkaXIgIiR7ZGVzdGRpcn0vY2VsdCIKK21rZGlyICIke2Rlc3RkaXJ9L2luY2x1ZGUiCitm
b3IgZiBpbiBgY2F0ICIke3RvcGxldmVsfSIvb3B1c19zb3VyY2VzLm1rICIke3RvcGxldmVsfSIv
Y2VsdF9zb3VyY2VzLm1rIFwKKyAiJHt0b3BsZXZlbH0iL3NpbGtfc291cmNlcy5tayAiJHt0b3Bs
ZXZlbH0iL29wdXNfaGVhZGVycy5tayBcCisgIiR7dG9wbGV2ZWx9Ii9jZWx0X2hlYWRlcnMubWsg
IiR7dG9wbGV2ZWx9Ii9zaWxrX2hlYWRlcnMubWsgXAorIHwgZ3JlcCAnXC5bY2hdJyB8IHNlZCAt
ZSAncy9eLio9Ly8nIC1lICdzL1xcXFwvLydgIDsgZG8KKyAgY3AgLWEgIiR7dG9wbGV2ZWx9LyR7
Zn0iICIke2Rlc3RkaXJ9LyR7Zn0iCitkb25lCitjcCAtYSAiJHt0b3BsZXZlbH0iL3NyYy9vcHVz
X2RlbW8uYyAiJHtkZXN0ZGlyfSIvc3JjLworY3AgLWEgIiR7dG9wbGV2ZWx9Ii9zcmMvb3B1c19j
b21wYXJlLmMgIiR7ZGVzdGRpcn0iL3NyYy8KK2NwIC1hICIke3RvcGxldmVsfSIvY2VsdC9vcHVz
X2N1c3RvbV9kZW1vLmMgIiR7ZGVzdGRpcn0iL2NlbHQvCitjcCAtYSAiJHt0b3BsZXZlbH0iL01h
a2VmaWxlLnVuaXggIiR7ZGVzdGRpcn0iL01ha2VmaWxlCitjcCAtYSAiJHt0b3BsZXZlbH0iL29w
dXNfc291cmNlcy5tayAiJHtkZXN0ZGlyfSIvCitjcCAtYSAiJHt0b3BsZXZlbH0iL2NlbHRfc291
cmNlcy5tayAiJHtkZXN0ZGlyfSIvCitjcCAtYSAiJHt0b3BsZXZlbH0iL3NpbGtfc291cmNlcy5t
ayAiJHtkZXN0ZGlyfSIvCitjcCAtYSAiJHt0b3BsZXZlbH0iL1JFQURNRS5kcmFmdCAiJHtkZXN0
ZGlyfSIvUkVBRE1FCitjcCAtYSAiJHt0b3BsZXZlbH0iL0NPUFlJTkcgIiR7ZGVzdGRpcn0iL0NP
UFlJTkcKK2NwIC1hICIke3RvcGxldmVsfSIvdGVzdHMvcnVuX3ZlY3RvcnMuc2ggIiR7ZGVzdGRp
cn0iLworCitHWklQPS05IHRhciAtLW93bmVyPXJvb3QgLS1ncm91cD1yb290IC0tZm9ybWF0PXY3
IC1jemYgb3B1c19zb3VyY2UudGFyLmd6ICIke2Rlc3RkaXJ9IgorZWNobyBidWlsZGluZyBiYXNl
NjQgdmVyc2lvbgorY2F0IG9wdXNfc291cmNlLnRhci5nenwgYmFzZTY0IHwgdHIgLWQgJ1xuJyB8
IGZvbGQgLXcgNjQgfCBcCisgc2VkIC1lICdzL14vXDxzcGFueCBzdHlsZT0idmJhcmUiXD4jIyMv
JyAtZSAncy8kL1w8XC9zcGFueFw+XDx2c3BhY2VcL1w+LycgPiBcCisgb3B1c19zb3VyY2UuYmFz
ZTY0CisKKworI2VjaG8gJzxmaWd1cmU+JyA+IG9wdXNfY29tcGFyZV9lc2NhcGVkLmMKKyNlY2hv
ICc8YXJ0d29yaz4nID4+IG9wdXNfY29tcGFyZV9lc2NhcGVkLmMKKyNlY2hvICc8IVtDREFUQVsn
ID4+IG9wdXNfY29tcGFyZV9lc2NhcGVkLmMKKyNjYXQgb3B1c19jb21wYXJlLmMgPj4gb3B1c19j
b21wYXJlX2VzY2FwZWQuYworI2VjaG8gJ11dPicgPj4gb3B1c19jb21wYXJlX2VzY2FwZWQuYwor
I2VjaG8gJzwvYXJ0d29yaz4nID4+IG9wdXNfY29tcGFyZV9lc2NhcGVkLmMKKyNlY2hvICc8L2Zp
Z3VyZT4nID4+IG9wdXNfY29tcGFyZV9lc2NhcGVkLmMKKworaWYgW1sgISAtZCAuLi9vcHVzX3Rl
c3R2ZWN0b3JzIF1dIDsgdGhlbgorICBlY2hvICJEb3dubG9hZGluZyB0ZXN0IHZlY3RvcnMuLi4i
CisgIHdnZXQgJ2h0dHA6Ly9vcHVzLWNvZGVjLm9yZy90ZXN0dmVjdG9ycy9vcHVzX3Rlc3R2ZWN0
b3JzLnRhci5neicKKyAgdGFyIC1DIC4uIC14dnpmIG9wdXNfdGVzdHZlY3RvcnMudGFyLmd6Citm
aQorZWNobyAnPGZpZ3VyZT4nID4gdGVzdHZlY3RvcnNfc2hhMQorZWNobyAnPGFydHdvcms+JyA+
PiB0ZXN0dmVjdG9yc19zaGExCitlY2hvICc8IVtDREFUQVsnID4+IHRlc3R2ZWN0b3JzX3NoYTEK
KyhjZCAuLi9vcHVzX3Rlc3R2ZWN0b3JzOyBzaGExc3VtICouYml0ICouZGVjKSA+PiB0ZXN0dmVj
dG9yc19zaGExCisjY2Qgb3B1c190ZXN0dmVjdG9ycworI3NoYTFzdW0gKi5iaXQgKi5kZWMgPj4g
Li4vdGVzdHZlY3RvcnNfc2hhMQorI2NkIC4uCitlY2hvICddXT4nID4+IHRlc3R2ZWN0b3JzX3No
YTEKK2VjaG8gJzwvYXJ0d29yaz4nID4+IHRlc3R2ZWN0b3JzX3NoYTEKK2VjaG8gJzwvZmlndXJl
PicgPj4gdGVzdHZlY3RvcnNfc2hhMQorCitlY2hvIHJ1bm5pbmcgeG1sMnJmYworeG1sMnJmYyBk
cmFmdC1pZXRmLWNvZGVjLW9wdXMueG1sIGRyYWZ0LWlldGYtY29kZWMtb3B1cy5odG1sICYKK3ht
bDJyZmMgZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLnhtbAord2FpdApkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvYnVp
bGRfaXNvYm1mZi5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvZG9jL2J1aWxkX2lzb2JtZmYuc2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTVlYTIwMmU0
YWZlZWRmNDk1Y2ZlMjhhYTMyOGM4YjllYmVmNWNmOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1
aWxkX2lzb2JtZmYuc2gKQEAgLTAsMCArMSw1MCBAQAorIyEvYmluL3NoCisKKyMgQ29weXJpZ2h0
IChjKSAyMDE0IFhpcGguT3JnIEZvdW5kYXRpb24gYW5kIE1vemlsbGEgRm91bmRhdGlvbgorIwor
IyAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisjICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyMgIGFyZSBtZXQ6CisjCisjICAtIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisj
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisjCisjICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisjICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisjICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
IworIyAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUworIyAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyAgTElNSVRFRCBUTywgVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisjICBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVCBPV05FUgorIyAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisjICBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisjICBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IKKyMgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyMgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisjICBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyMg
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorCisjU3RvcCBvbiBlcnJvcnMKK3NldCAtZQorI1NldCB0aGUgQ1dEIHRvIHRoZSBsb2Nh
dGlvbiBvZiB0aGlzIHNjcmlwdAorWyAtbiAiJHswJS8qfSIgXSAmJiBjZCAiJHswJS8qfSIKKwor
SFRNTD1vcHVzX2luX2lzb2JtZmYuaHRtbAorCitlY2hvIGRvd25sb2FkaW5nIHVwZGF0ZXMuLi4K
K0NTUz0ke0hUTUwlJS5odG1sfS5jc3MKK3dnZXQgLXEgaHR0cDovL3Zmcm1hbmlhYy5mdXNoaXpl
bi5ldS9jb250ZW50cy8ke0hUTUx9IC1PICR7SFRNTH0KK3dnZXQgLXEgaHR0cDovL3Zmcm1hbmlh
Yy5mdXNoaXplbi5ldS9zdHlsZS5jc3MgLU8gJHtDU1N9CisKK2VjaG8gdXBkYXRpbmcgbGlua3Mu
Li4KK2NhdCAke0hUTUx9IHwgc2VkIC1lICJzL1xcLlxcLlxcL3N0eWxlLmNzcy8ke0NTU30vIiA+
ICR7SFRNTH0rICYmIG12ICR7SFRNTH0rICR7SFRNTH0KKworZWNobyBzdHJpcHBpbmcuLi4KK2Nh
dCAke0hUTUx9IHwgc2VkIC1lICdzLzwhLS0uKi0tPi8vZycgPiAke0hUTUx9KyAmJiBtdiAke0hU
TUx9KyAke0hUTUx9CitjYXQgJHtIVE1MfSB8IHNlZCAtZSAncy8gKiQvL2cnID4gJHtIVE1MfSsg
JiYgbXYgJHtIVE1MfSsgJHtIVE1MfQorY2F0ICR7Q1NTfSAgfCBzZWQgLWUgJ3MvICokLy9nJyA+
ICR7Q1NTfSsgJiYgbXYgJHtDU1N9KyAke0NTU30KKworCitWRVJTSU9OPSQoZmdyZXAgVmVyc2lv
biAke0hUTUx9IHwgc2VkICdzLy4qVmVyc2lvbiBcKFswLTldXC5bMC05XVwuWzAtOV1cKS4qL1wx
LycpCitlY2hvIE5vdyBhdCB2ZXJzaW9uICR7VkVSU0lPTn0KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1aWxk
X29nZ2RyYWZ0LnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9kb2MvYnVpbGRfb2dnZHJhZnQuc2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzBlZTUzNGIw
ZDYwNjc1MDNmNDRhMmRkNDcyMjc0Y2I3MDIzZDU0OAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1
aWxkX29nZ2RyYWZ0LnNoCkBAIC0wLDAgKzEsNTIgQEAKKyMhL2Jpbi9zaAorCisjIENvcHlyaWdo
dCAoYykgMjAxMiBYaXBoLk9yZyBGb3VuZGF0aW9uIGFuZCBNb3ppbGxhIENvcnBvcmF0aW9uCisj
CisjICBUaGlzIGZpbGUgaXMgZXh0cmFjdGVkIGZyb20gUkZDNjcxNi4gUGxlYXNlIHNlZSB0aGF0
IFJGQyBmb3IgYWRkaXRpb25hbAorIyAgaW5mb3JtYXRpb24uCisjCisjICBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMg
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworIyAgYXJlIG1ldDoKKyMKKyMgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMKKyMgIC0g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyMgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisjCisjICAtIE5laXRoZXIg
dGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhl
CisjICBuYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZQorIyAgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCisjICBwZXJtaXNzaW9uLgorIworIyAgVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUworIyAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVAorIyAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisjICBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05F
UgorIyAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsCisjICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisjICBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyMgIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YKKyMgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisjICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyMgIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCisjU3Rv
cCBvbiBlcnJvcnMKK3NldCAtZQorI1NldCB0aGUgQ1dEIHRvIHRoZSBsb2NhdGlvbiBvZiB0aGlz
IHNjcmlwdAorWyAtbiAiJHswJS8qfSIgXSAmJiBjZCAiJHswJS8qfSIKKworaWYgdGVzdCAteiBg
d2hpY2ggeG1sMnJmYyAyPiAvZGV2L251bGxgOyB0aGVuCisgIGVjaG8gIkVycm9yOiBjb3VsZG4n
dCBmaW5kIHhtbDJyZmMuIgorICBlY2hvCisgIGVjaG8gIlBsZWFzZSBpbnN0YWxsIHhtbDJyZmMg
dmVyc2lvbiAyIG9yIGxhdGVyLiIKKyAgZWNobyAiRS5nLiAncGlwIGluc3RhbGwgeG1sMnJmYycg
b3IgZm9sbG93IHRoZSBpbnN0cnVjdGlvbnMiCisgIGVjaG8gIm9uIGh0dHA6Ly9weXBpLnB5dGhv
bi5vcmcvcHlwaS94bWwycmZjLyBvciB0b29scy5pZXRmLm9yZy4iCisgIGV4aXQgMQorZmkKKwor
ZWNobyBydW5uaW5nIHhtbDJyZmMKKyMgdmVyc2lvbiAyIHN5bnRheAoreG1sMnJmYyBkcmFmdC1p
ZXRmLWNvZGVjLW9nZ29wdXMueG1sIC0tdGV4dCAtLWh0bWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2RyYWZ0
LWlldGYtY29kZWMtb2dnb3B1cy54bWwgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9kcmFmdC1pZXRmLWNvZGVjLW9nZ29wdXMueG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjEyODgxNmU5MzVlODU5YzYzMDM1Y2Q5NWZmMDRhNzVkZDVmNWVlMTgKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2RvYy9kcmFmdC1pZXRmLWNvZGVjLW9nZ29wdXMueG1sCkBAIC0wLDAg
KzEsMTg3MyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KKzwhLS0K
KyAgIENvcHlyaWdodCAoYykgMjAxMi0yMDE2IFhpcGguT3JnIEZvdW5kYXRpb24gYW5kIGNvbnRy
aWJ1dG9ycworCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKworICAg
LSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IK
KyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUIE9XTkVSCisgICBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAgIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
KyAgIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgorICAgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgorICAgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcKKyAgIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg
VEhJUworICAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisKKyAgIFNwZWNpYWwgcGVybWlzc2lvbiBpcyBncmFudGVkIHRvIHJlbW92
ZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgbGlzdCBvZgorICAgY29uZGl0aW9ucywgYW5k
IGRpc2NsYWltZXIgd2hlbiBzdWJtaXR0aW5nIHRoaXMgZG9jdW1lbnQsIHdpdGggb3Igd2l0aG91
dAorICAgbW9kaWZpY2F0aW9uLCB0byB0aGUgSUVURi4KKy0tPgorPCFET0NUWVBFIHJmYyBTWVNU
RU0gJ3JmYzI2MjkuZHRkJyBbCis8IUVOVElUWSByZmMyMTE5IFBVQkxJQyAnJyAnaHR0cDovL3ht
bC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy4yMTE5LnhtbCc+
Cis8IUVOVElUWSByZmMzNTMzIFBVQkxJQyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVi
bGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy4zNTMzLnhtbCc+Cis8IUVOVElUWSByZmMzNjI5
IFBVQkxJQyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwvcmVm
ZXJlbmNlLlJGQy4zNjI5LnhtbCc+Cis8IUVOVElUWSByZmM0NzMyIFBVQkxJQyAnJyAnaHR0cDov
L3htbC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy40NzMyLnht
bCc+Cis8IUVOVElUWSByZmM1MjI2IFBVQkxJQyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5vcmcv
cHVibGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy41MjI2LnhtbCc+Cis8IUVOVElUWSByZmM1
MzM0IFBVQkxJQyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwv
cmVmZXJlbmNlLlJGQy41MzM0LnhtbCc+Cis8IUVOVElUWSByZmM2MzgxIFBVQkxJQyAnJyAnaHR0
cDovL3htbC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy42Mzgx
LnhtbCc+Cis8IUVOVElUWSByZmM2NzE2IFBVQkxJQyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5v
cmcvcHVibGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy42NzE2LnhtbCc+Cis8IUVOVElUWSBy
ZmM2OTgyIFBVQkxJQyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4
bWwvcmVmZXJlbmNlLlJGQy42OTgyLnhtbCc+Cis8IUVOVElUWSByZmM3NTg3IFBVQkxJQyAnJyAn
aHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy43
NTg3LnhtbCc+CitdPgorPD9yZmMgdG9jPSJ5ZXMiIHN5bXJlZnM9InllcyIgPz4KKworPHJmYyBp
cHI9InRydXN0MjAwOTAyIiBjYXRlZ29yeT0ic3RkIiBkb2NOYW1lPSJkcmFmdC1pZXRmLWNvZGVj
LW9nZ29wdXMtMTQiCisgdXBkYXRlcz0iNTMzNCI+CisKKzxmcm9udD4KKzx0aXRsZSBhYmJyZXY9
Ik9nZyBPcHVzIj5PZ2cgRW5jYXBzdWxhdGlvbiBmb3IgdGhlIE9wdXMgQXVkaW8gQ29kZWM8L3Rp
dGxlPgorPGF1dGhvciBpbml0aWFscz0iVC5CLiIgc3VybmFtZT0iVGVycmliZXJyeSIgZnVsbG5h
bWU9IlRpbW90aHkgQi4gVGVycmliZXJyeSI+Cis8b3JnYW5pemF0aW9uPk1vemlsbGEgQ29ycG9y
YXRpb248L29yZ2FuaXphdGlvbj4KKzxhZGRyZXNzPgorPHBvc3RhbD4KKzxzdHJlZXQ+NjUwIENh
c3RybyBTdHJlZXQ8L3N0cmVldD4KKzxjaXR5Pk1vdW50YWluIFZpZXc8L2NpdHk+Cis8cmVnaW9u
PkNBPC9yZWdpb24+Cis8Y29kZT45NDA0MTwvY29kZT4KKzxjb3VudHJ5PlVTQTwvY291bnRyeT4K
KzwvcG9zdGFsPgorPHBob25lPisxIDY1MCA5MDMtMDgwMDwvcGhvbmU+Cis8ZW1haWw+dHRlcnJp
YmVAeGlwaC5vcmc8L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisKKzxhdXRob3IgaW5p
dGlhbHM9IlIuIiBzdXJuYW1lPSJMZWUiIGZ1bGxuYW1lPSJSb24gTGVlIj4KKzxvcmdhbml6YXRp
b24+Vm9pY2V0cm9uaXg8L29yZ2FuaXphdGlvbj4KKzxhZGRyZXNzPgorPHBvc3RhbD4KKzxzdHJl
ZXQ+MjQ2IFB1bHRlbmV5IFN0cmVldCwgTGV2ZWwgMTwvc3RyZWV0PgorPGNpdHk+QWRlbGFpZGU8
L2NpdHk+Cis8cmVnaW9uPlNBPC9yZWdpb24+Cis8Y29kZT41MDAwPC9jb2RlPgorPGNvdW50cnk+
QXVzdHJhbGlhPC9jb3VudHJ5PgorPC9wb3N0YWw+Cis8cGhvbmU+KzYxIDggODIzMiA5MTEyPC9w
aG9uZT4KKzxlbWFpbD5yb25AZGViaWFuLm9yZzwvZW1haWw+Cis8L2FkZHJlc3M+Cis8L2F1dGhv
cj4KKworPGF1dGhvciBpbml0aWFscz0iUi4iIHN1cm5hbWU9IkdpbGVzIiBmdWxsbmFtZT0iUmFs
cGggR2lsZXMiPgorPG9yZ2FuaXphdGlvbj5Nb3ppbGxhIENvcnBvcmF0aW9uPC9vcmdhbml6YXRp
b24+Cis8YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3RyZWV0PjE2MyBXZXN0IEhhc3RpbmdzIFN0cmVl
dDwvc3RyZWV0PgorPGNpdHk+VmFuY291dmVyPC9jaXR5PgorPHJlZ2lvbj5CQzwvcmVnaW9uPgor
PGNvZGU+VjZCIDFINTwvY29kZT4KKzxjb3VudHJ5PkNhbmFkYTwvY291bnRyeT4KKzwvcG9zdGFs
PgorPHBob25lPisxIDc3OCA3ODUgMTU0MDwvcGhvbmU+Cis8ZW1haWw+Z2lsZXNAeGlwaC5vcmc8
L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisKKzxkYXRlIGRheT0iMjIiIG1vbnRoPSJG
ZWJydWFyeSIgeWVhcj0iMjAxNiIvPgorPGFyZWE+UkFJPC9hcmVhPgorPHdvcmtncm91cD5jb2Rl
Yzwvd29ya2dyb3VwPgorCis8YWJzdHJhY3Q+Cis8dD4KK1RoaXMgZG9jdW1lbnQgZGVmaW5lcyB0
aGUgT2dnIGVuY2Fwc3VsYXRpb24gZm9yIHRoZSBPcHVzIGludGVyYWN0aXZlIHNwZWVjaCBhbmQK
KyBhdWRpbyBjb2RlYy4KK1RoaXMgYWxsb3dzIGRhdGEgZW5jb2RlZCBpbiB0aGUgT3B1cyBmb3Jt
YXQgdG8gYmUgc3RvcmVkIGluIGFuIE9nZyBsb2dpY2FsCisgYml0c3RyZWFtLgorPC90PgorPC9h
YnN0cmFjdD4KKzwvZnJvbnQ+CisKKzxtaWRkbGU+Cis8c2VjdGlvbiBhbmNob3I9ImludHJvIiB0
aXRsZT0iSW50cm9kdWN0aW9uIj4KKzx0PgorVGhlIElFVEYgT3B1cyBjb2RlYyBpcyBhIGxvdy1s
YXRlbmN5IGF1ZGlvIGNvZGVjIG9wdGltaXplZCBmb3IgYm90aCB2b2ljZSBhbmQKKyBnZW5lcmFs
LXB1cnBvc2UgYXVkaW8uCitTZWUgPHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+IGZvciB0ZWNobmlj
YWwgZGV0YWlscy4KK1RoaXMgZG9jdW1lbnQgZGVmaW5lcyB0aGUgZW5jYXBzdWxhdGlvbiBvZiBP
cHVzIGluIGEgY29udGludW91cywgbG9naWNhbCBPZ2cKKyBiaXRzdHJlYW0mbmJzcDs8eHJlZiB0
YXJnZXQ9IlJGQzM1MzMiLz4uCitPZ2cgZW5jYXBzdWxhdGlvbiBwcm92aWRlcyBPcHVzIHdpdGgg
YSBsb25nLXRlcm0gc3RvcmFnZSBmb3JtYXQgc3VwcG9ydGluZworIGFsbCBvZiB0aGUgZXNzZW50
aWFsIGZlYXR1cmVzLCBpbmNsdWRpbmcgbWV0YWRhdGEsIGZhc3QgYW5kIGFjY3VyYXRlIHNlZWtp
bmcsCisgY29ycnVwdGlvbiBkZXRlY3Rpb24sIHJlY2FwdHVyZSBhZnRlciBlcnJvcnMsIGxvdyBv
dmVyaGVhZCwgYW5kIHRoZSBhYmlsaXR5IHRvCisgbXVsdGlwbGV4IE9wdXMgd2l0aCBvdGhlciBj
b2RlY3MgKGluY2x1ZGluZyB2aWRlbykgd2l0aCBtaW5pbWFsIGJ1ZmZlcmluZy4KK0l0IGFsc28g
cHJvdmlkZXMgYSBsaXZlIHN0cmVhbWFibGUgZm9ybWF0LCBjYXBhYmxlIG9mIGRlbGl2ZXJ5IG92
ZXIgYSByZWxpYWJsZQorIHN0cmVhbS1vcmllbnRlZCB0cmFuc3BvcnQsIHdpdGhvdXQgcmVxdWly
aW5nIGFsbCB0aGUgZGF0YSwgb3IgZXZlbiB0aGUgdG90YWwKKyBsZW5ndGggb2YgdGhlIGRhdGEs
IHVwLWZyb250LCBpbiBhIGZvcm0gdGhhdCBpcyBpZGVudGljYWwgdG8gdGhlIG9uLWRpc2sKKyBz
dG9yYWdlIGZvcm1hdC4KKzwvdD4KKzx0PgorT2dnIGJpdHN0cmVhbXMgYXJlIG1hZGUgdXAgb2Yg
YSBzZXJpZXMgb2YgJ3BhZ2VzJywgZWFjaCBvZiB3aGljaCBjb250YWlucyBkYXRhCisgZnJvbSBv
bmUgb3IgbW9yZSAncGFja2V0cycuCitQYWdlcyBhcmUgdGhlIGZ1bmRhbWVudGFsIHVuaXQgb2Yg
bXVsdGlwbGV4aW5nIGluIGFuIE9nZyBzdHJlYW0uCitFYWNoIHBhZ2UgaXMgYXNzb2NpYXRlZCB3
aXRoIGEgcGFydGljdWxhciBsb2dpY2FsIHN0cmVhbSBhbmQgY29udGFpbnMgYSBjYXB0dXJlCisg
cGF0dGVybiBhbmQgY2hlY2tzdW0sIGZsYWdzIHRvIG1hcmsgdGhlIGJlZ2lubmluZyBhbmQgZW5k
IG9mIHRoZSBsb2dpY2FsCisgc3RyZWFtLCBhbmQgYSAnZ3JhbnVsZSBwb3NpdGlvbicgdGhhdCBy
ZXByZXNlbnRzIGFuIGFic29sdXRlIHBvc2l0aW9uIGluIHRoZQorIHN0cmVhbSwgdG8gYWlkIHNl
ZWtpbmcuCitBIHNpbmdsZSBwYWdlIGNhbiBjb250YWluIHVwIHRvIDY1LDAyNSBvY3RldHMgb2Yg
cGFja2V0IGRhdGEgZnJvbSB1cCB0byAyNTUKKyBkaWZmZXJlbnQgcGFja2V0cy4KK1BhY2tldHMg
Y2FuIGJlIHNwbGl0IGFyYml0cmFyaWx5IGFjcm9zcyBwYWdlcywgYW5kIGNvbnRpbnVlZCBmcm9t
IG9uZSBwYWdlIHRvCisgdGhlIG5leHQgKGFsbG93aW5nIHBhY2tldHMgbXVjaCBsYXJnZXIgdGhh
biB3b3VsZCBmaXQgb24gYSBzaW5nbGUgcGFnZSkuCitFYWNoIHBhZ2UgY29udGFpbnMgJ2xhY2lu
ZyB2YWx1ZXMnIHRoYXQgaW5kaWNhdGUgaG93IHRoZSBkYXRhIGlzIHBhcnRpdGlvbmVkCisgaW50
byBwYWNrZXRzLCBhbGxvd2luZyBhIGRlbXVsdGlwbGV4ZXIgKGRlbXV4ZXIpIHRvIHJlY292ZXIg
dGhlIHBhY2tldAorIGJvdW5kYXJpZXMgd2l0aG91dCBleGFtaW5pbmcgdGhlIGVuY29kZWQgZGF0
YS4KK0EgcGFja2V0IGlzIHNhaWQgdG8gJ2NvbXBsZXRlJyBvbiBhIHBhZ2Ugd2hlbiB0aGUgcGFn
ZSBjb250YWlucyB0aGUgZmluYWwKKyBsYWNpbmcgdmFsdWUgY29ycmVzcG9uZGluZyB0byB0aGF0
IHBhY2tldC4KKzwvdD4KKzx0PgorVGhpcyBlbmNhcHN1bGF0aW9uIGRlZmluZXMgdGhlIGNvbnRl
bnRzIG9mIHRoZSBwYWNrZXQgZGF0YSwgaW5jbHVkaW5nCisgdGhlIG5lY2Vzc2FyeSBoZWFkZXJz
LCB0aGUgb3JnYW5pemF0aW9uIG9mIHRob3NlIHBhY2tldHMgaW50byBhIGxvZ2ljYWwKKyBzdHJl
YW0sIGFuZCB0aGUgaW50ZXJwcmV0YXRpb24gb2YgdGhlIGNvZGVjLXNwZWNpZmljIGdyYW51bGUg
cG9zaXRpb24gZmllbGQuCitJdCBkb2VzIG5vdCBhdHRlbXB0IHRvIGRlc2NyaWJlIG9yIHNwZWNp
ZnkgdGhlIGV4aXN0aW5nIE9nZyBjb250YWluZXIgZm9ybWF0LgorUmVhZGVycyB1bmZhbWlsaWFy
IHdpdGggdGhlIGJhc2ljIGNvbmNlcHRzIG1lbnRpb25lZCBhYm92ZSBhcmUgZW5jb3VyYWdlZCB0
bworIHJldmlldyB0aGUgZGV0YWlscyBpbiA8eHJlZiB0YXJnZXQ9IlJGQzM1MzMiLz4uCis8L3Q+
CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJ0ZXJtaW5vbG9neSIgdGl0bGU9IlRl
cm1pbm9sb2d5Ij4KKzx0PgorVGhlIGtleSB3b3JkcyAiTVVTVCIsICJNVVNUIE5PVCIsICJSRVFV
SVJFRCIsICJTSEFMTCIsICJTSEFMTCBOT1QiLCAiU0hPVUxEIiwKKyAiU0hPVUxEIE5PVCIsICJS
RUNPTU1FTkRFRCIsICJOT1QgUkVDT01NRU5ERUQiLCAiTUFZIiwgYW5kICJPUFRJT05BTCIgaW4g
dGhpcworIGRvY3VtZW50IGFyZSB0byBiZSBpbnRlcnByZXRlZCBhcyBkZXNjcmliZWQgaW4gPHhy
ZWYgdGFyZ2V0PSJSRkMyMTE5Ii8+LgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFu
Y2hvcj0icGFja2V0X29yZ2FuaXphdGlvbiIgdGl0bGU9IlBhY2tldCBPcmdhbml6YXRpb24iPgor
PHQ+CitBbiBPZ2cgT3B1cyBzdHJlYW0gaXMgb3JnYW5pemVkIGFzIGZvbGxvd3MgKHNlZQorIDx4
cmVmIHRhcmdldD0icGFja2V0LW9yZy1leGFtcGxlIi8+IGZvciBhbiBleGFtcGxlKS4KKzwvdD4K
KworPGZpZ3VyZSBhbmNob3I9InBhY2tldC1vcmctZXhhbXBsZSIKKyB0aXRsZT0iRXhhbXBsZSBw
YWNrZXQgb3JnYW5pemF0aW9uIGZvciBhIGxvZ2ljYWwgT2dnIE9wdXMgc3RyZWFtIgorIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgUGFnZSAw
ICAgICAgICAgUGFnZXMgMSAuLi4gbiAgICAgICAgUGFnZXMgKG4rMSkgLi4uCisgKy0tLS0tLS0t
LS0tLSsgKy0tLSsgKy0tLSsgLi4uICstLS0rICstLS0tLS0tLS0tLSsgKy0tLS0tLS0tLSsgKy0t
CisgfCAgICAgICAgICAgIHwgfCAgIHwgfCAgIHwgICAgIHwgICB8IHwgICAgICAgICAgIHwgfCAg
ICAgICAgIHwgfAorIHwrLS0tLS0tLS0tLSt8IHwrLS0tLS0tLS0tLS0tLS0tLS0rfCB8Ky0tLS0t
LS0tLS0tLS0tLS0tLS0rICstLS0tLQorIHx8fElEIEhlYWRlcnx8IHx8ICBDb21tZW50IEhlYWRl
ciB8fCB8fEF1ZGlvIERhdGEgUGFja2V0IDF8IHwgLi4uCisgfCstLS0tLS0tLS0tK3wgfCstLS0t
LS0tLS0tLS0tLS0tLSt8IHwrLS0tLS0tLS0tLS0tLS0tLS0tLSsgKy0tLS0tCisgfCAgICAgICAg
ICAgIHwgfCAgIHwgfCAgIHwgICAgIHwgICB8IHwgICAgICAgICAgIHwgfCAgICAgICAgIHwgfAor
ICstLS0tLS0tLS0tLS0rICstLS0rICstLS0rIC4uLiArLS0tKyArLS0tLS0tLS0tLS0rICstLS0t
LS0tLS0rICstLQorIF4gICAgICBeICAgICAgICAgICAgICAgICAgICAgICAgICAgXgorIHwgICAg
ICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorIHwgICAgICB8ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgTWFuZGF0b3J5IFBhZ2UgQnJlYWsKKyB8ICAgICAgfAorIHwgICAgICBJRCBo
ZWFkZXIgaXMgY29udGFpbmVkIG9uIGEgc2luZ2xlIHBhZ2UKKyB8CisgJ0JlZ2lubmluZyBPZiBT
dHJlYW0nCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitUaGVyZSBhcmUgdHdvIG1h
bmRhdG9yeSBoZWFkZXIgcGFja2V0cy4KK1RoZSBmaXJzdCBwYWNrZXQgaW4gdGhlIGxvZ2ljYWwg
T2dnIGJpdHN0cmVhbSBNVVNUIGNvbnRhaW4gdGhlIGlkZW50aWZpY2F0aW9uCisgKElEKSBoZWFk
ZXIsIHdoaWNoIHVuaXF1ZWx5IGlkZW50aWZpZXMgYSBzdHJlYW0gYXMgT3B1cyBhdWRpby4KK1Ro
ZSBmb3JtYXQgb2YgdGhpcyBoZWFkZXIgaXMgZGVmaW5lZCBpbiA8eHJlZiB0YXJnZXQ9ImlkX2hl
YWRlciIvPi4KK0l0IGlzIHBsYWNlZCBhbG9uZSAod2l0aG91dCBhbnkgb3RoZXIgcGFja2V0IGRh
dGEpIG9uIHRoZSBmaXJzdCBwYWdlIG9mCisgdGhlIGxvZ2ljYWwgT2dnIGJpdHN0cmVhbSwgYW5k
IGNvbXBsZXRlcyBvbiB0aGF0IHBhZ2UuCitUaGlzIHBhZ2UgaGFzIGl0cyAnYmVnaW5uaW5nIG9m
IHN0cmVhbScgZmxhZyBzZXQuCis8L3Q+Cis8dD4KK1RoZSBzZWNvbmQgcGFja2V0IGluIHRoZSBs
b2dpY2FsIE9nZyBiaXRzdHJlYW0gTVVTVCBjb250YWluIHRoZSBjb21tZW50IGhlYWRlciwKKyB3
aGljaCBjb250YWlucyB1c2VyLXN1cHBsaWVkIG1ldGFkYXRhLgorVGhlIGZvcm1hdCBvZiB0aGlz
IGhlYWRlciBpcyBkZWZpbmVkIGluIDx4cmVmIHRhcmdldD0iY29tbWVudF9oZWFkZXIiLz4uCitJ
dCBNQVkgc3BhbiBtdWx0aXBsZSBwYWdlcywgYmVnaW5uaW5nIG9uIHRoZSBzZWNvbmQgcGFnZSBv
ZiB0aGUgbG9naWNhbAorIHN0cmVhbS4KK0hvd2V2ZXIgbWFueSBwYWdlcyBpdCBzcGFucywgdGhl
IGNvbW1lbnQgaGVhZGVyIHBhY2tldCBNVVNUIGZpbmlzaCB0aGUgcGFnZSBvbgorIHdoaWNoIGl0
IGNvbXBsZXRlcy4KKzwvdD4KKzx0PgorQWxsIHN1YnNlcXVlbnQgcGFnZXMgYXJlIGF1ZGlvIGRh
dGEgcGFnZXMsIGFuZCB0aGUgT2dnIHBhY2tldHMgdGhleSBjb250YWluIGFyZQorIGF1ZGlvIGRh
dGEgcGFja2V0cy4KK0VhY2ggYXVkaW8gZGF0YSBwYWNrZXQgY29udGFpbnMgb25lIE9wdXMgcGFj
a2V0IGZvciBlYWNoIG9mIE4gZGlmZmVyZW50Cisgc3RyZWFtcywgd2hlcmUgTiBpcyB0eXBpY2Fs
bHkgb25lIGZvciBtb25vIG9yIHN0ZXJlbywgYnV0IE1BWSBiZSBncmVhdGVyIHRoYW4KKyBvbmUg
Zm9yIG11bHRpY2hhbm5lbCBhdWRpby4KK1RoZSB2YWx1ZSBOIGlzIHNwZWNpZmllZCBpbiB0aGUg
SUQgaGVhZGVyIChzZWUKKyA8eHJlZiB0YXJnZXQ9ImNoYW5uZWxfbWFwcGluZyIvPiksIGFuZCBp
cyBmaXhlZCBvdmVyIHRoZSBlbnRpcmUgbGVuZ3RoIG9mIHRoZQorIGxvZ2ljYWwgT2dnIGJpdHN0
cmVhbS4KKzwvdD4KKzx0PgorVGhlIGZpcnN0IChOJm5ic3A7LSZuYnNwOzEpIE9wdXMgcGFja2V0
cywgaWYgYW55LCBhcmUgcGFja2VkIG9uZSBhZnRlciBhbm90aGVyCisgaW50byB0aGUgT2dnIHBh
Y2tldCwgdXNpbmcgdGhlIHNlbGYtZGVsaW1pdGluZyBmcmFtaW5nIGZyb20gQXBwZW5kaXgmbmJz
cDtCIG9mCisgPHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+LgorVGhlIHJlbWFpbmluZyBPcHVzIHBh
Y2tldCBpcyBwYWNrZWQgYXQgdGhlIGVuZCBvZiB0aGUgT2dnIHBhY2tldCB1c2luZyB0aGUKKyBy
ZWd1bGFyLCB1bmRlbGltaXRlZCBmcmFtaW5nIGZyb20gU2VjdGlvbiZuYnNwOzMgb2YgPHhyZWYg
dGFyZ2V0PSJSRkM2NzE2Ii8+LgorQWxsIG9mIHRoZSBPcHVzIHBhY2tldHMgaW4gYSBzaW5nbGUg
T2dnIHBhY2tldCBNVVNUIGJlIGNvbnN0cmFpbmVkIHRvIGhhdmUgdGhlCisgc2FtZSBkdXJhdGlv
bi4KK0FuIGltcGxlbWVudGF0aW9uIG9mIHRoaXMgc3BlY2lmaWNhdGlvbiBTSE9VTEQgdHJlYXQg
YW55IE9wdXMgcGFja2V0IHdob3NlCisgZHVyYXRpb24gaXMgZGlmZmVyZW50IGZyb20gdGhhdCBv
ZiB0aGUgZmlyc3QgT3B1cyBwYWNrZXQgaW4gYW4gT2dnIHBhY2tldCBhcworIGlmIGl0IHdlcmUg
YSBtYWxmb3JtZWQgT3B1cyBwYWNrZXQgd2l0aCBhbiBpbnZhbGlkIFRhYmxlIE9mIENvbnRlbnRz
IChUT0MpCisgc2VxdWVuY2UuCis8L3Q+Cis8dD4KK1RoZSBUT0Mgc2VxdWVuY2UgYXQgdGhlIGJl
Z2lubmluZyBvZiBlYWNoIE9wdXMgcGFja2V0IGluZGljYXRlcyB0aGUgY29kaW5nCisgbW9kZSwg
YXVkaW8gYmFuZHdpZHRoLCBjaGFubmVsIGNvdW50LCBkdXJhdGlvbiAoZnJhbWUgc2l6ZSksIGFu
ZCBudW1iZXIgb2YKKyBmcmFtZXMgcGVyIHBhY2tldCwgYXMgZGVzY3JpYmVkIGluIFNlY3Rpb24m
bmJzcDszLjEKKyBvZiZuYnNwOzx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPi4KK1RoZSBjb2Rpbmcg
bW9kZSBpcyBvbmUgb2YgU0lMSywgSHlicmlkLCBvciBDb25zdHJhaW5lZCBFbmVyZ3kgTGFwcGVk
IFRyYW5zZm9ybQorIChDRUxUKS4KK1RoZSBjb21iaW5hdGlvbiBvZiBjb2RpbmcgbW9kZSwgYXVk
aW8gYmFuZHdpZHRoLCBhbmQgZnJhbWUgc2l6ZSBpcyByZWZlcnJlZCB0bworIGFzIHRoZSBjb25m
aWd1cmF0aW9uIG9mIGFuIE9wdXMgcGFja2V0LgorPC90PgorPHQ+CitQYWNrZXRzIGFyZSBwbGFj
ZWQgaW50byBPZ2cgcGFnZXMgaW4gb3JkZXIgdW50aWwgdGhlIGVuZCBvZiBzdHJlYW0uCitBdWRp
byBkYXRhIHBhY2tldHMgbWlnaHQgc3BhbiBwYWdlIGJvdW5kYXJpZXMuCitUaGUgZmlyc3QgYXVk
aW8gZGF0YSBwYWdlIGNvdWxkIGhhdmUgdGhlICdjb250aW51ZWQgcGFja2V0JyBmbGFnIHNldAor
IChpbmRpY2F0aW5nIHRoZSBmaXJzdCBhdWRpbyBkYXRhIHBhY2tldCBpcyBjb250aW51ZWQgZnJv
bSBhIHByZXZpb3VzIHBhZ2UpIGlmLAorIGZvciBleGFtcGxlLCBpdCB3YXMgYSBsaXZlIHN0cmVh
bSBqb2luZWQgbWlkLWJyb2FkY2FzdCwgd2l0aCB0aGUgaGVhZGVycworIHBhc3RlZCBvbiB0aGUg
ZnJvbnQuCitJZiBhIHBhZ2UgaGFzIHRoZSAnY29udGludWVkIHBhY2tldCcgZmxhZyBzZXQgYW5k
IG9uZSBvZiB0aGUgZm9sbG93aW5nCisgY29uZGl0aW9ucyBpcyBhbHNvIHRydWU6Cis8bGlzdCBz
dHlsZT0ic3ltYm9scyI+Cis8dD50aGUgcHJldmlvdXMgcGFnZSB3aXRoIHBhY2tldCBkYXRhIGRv
ZXMgbm90IGVuZCBpbiBhIGNvbnRpbnVlZCBwYWNrZXQgKGRvZXMKKyBub3QgZW5kIHdpdGggYSBs
YWNpbmcgdmFsdWUgb2YgMjU1KSBPUjwvdD4KKzx0PnRoZSBwYWdlIHNlcXVlbmNlIG51bWJlcnMg
YXJlIG5vdCBjb25zZWN1dGl2ZSw8L3Q+Cis8L2xpc3Q+CisgdGhlbiBhIGRlbXV4ZXIgTVVTVCBO
T1QgYXR0ZW1wdCB0byBkZWNvZGUgdGhlIGRhdGEgZm9yIHRoZSBmaXJzdCBwYWNrZXQgb24gdGhl
CisgcGFnZSB1bmxlc3MgdGhlIGRlbXV4ZXIgaGFzIHNvbWUgc3BlY2lhbCBrbm93bGVkZ2UgdGhh
dCB3b3VsZCBhbGxvdyBpdCB0bworIGludGVycHJldCB0aGlzIGRhdGEgZGVzcGl0ZSB0aGUgbWlz
c2luZyBwaWVjZXMuCitBbiBpbXBsZW1lbnRhdGlvbiBNVVNUIHRyZWF0IGEgemVyby1vY3RldCBh
dWRpbyBkYXRhIHBhY2tldCBhcyBpZiBpdCB3ZXJlIGEKKyBtYWxmb3JtZWQgT3B1cyBwYWNrZXQg
YXMgZGVzY3JpYmVkIGluCisgU2VjdGlvbiZuYnNwOzMuNCBvZiZuYnNwOzx4cmVmIHRhcmdldD0i
UkZDNjcxNiIvPi4KKzwvdD4KKzx0PgorQSBsb2dpY2FsIHN0cmVhbSBlbmRzIHdpdGggYSBwYWdl
IHdpdGggdGhlICdlbmQgb2Ygc3RyZWFtJyBmbGFnIHNldCwgYnV0CisgaW1wbGVtZW50YXRpb25z
IG5lZWQgdG8gYmUgcHJlcGFyZWQgdG8gZGVhbCB3aXRoIHRydW5jYXRlZCBzdHJlYW1zIHRoYXQg
ZG8gbm90CisgaGF2ZSBhIHBhZ2UgbWFya2VkICdlbmQgb2Ygc3RyZWFtJy4KK1RoZXJlIGlzIG5v
IHJlYXNvbiBmb3IgdGhlIGZpbmFsIHBhY2tldCBvbiB0aGUgbGFzdCBwYWdlIHRvIGJlIGEgY29u
dGludWVkCisgcGFja2V0LCBpLmUuLCBmb3IgdGhlIGZpbmFsIGxhY2luZyB2YWx1ZSB0byBiZSAy
NTUuCitIb3dldmVyLCBkZW11eGVycyBtaWdodCBlbmNvdW50ZXIgc3VjaCBzdHJlYW1zLCBwb3Nz
aWJseSBhcyB0aGUgcmVzdWx0IG9mIGEKKyB0cmFuc2ZlciB0aGF0IGRpZCBub3QgY29tcGxldGUg
b3Igb2YgY29ycnVwdGlvbi4KK0lmIGEgcGFja2V0IGNvbnRpbnVlcyBvbnRvIGEgc3Vic2VxdWVu
dCBwYWdlIChpLmUuLCB3aGVuIHRoZSBwYWdlIGVuZHMgd2l0aCBhCisgbGFjaW5nIHZhbHVlIG9m
IDI1NSkgYW5kIG9uZSBvZiB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgaXMgYWxzbyB0cnVlOgor
PGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+dGhlIG5leHQgcGFnZSB3aXRoIHBhY2tldCBkYXRh
IGRvZXMgbm90IGhhdmUgdGhlICdjb250aW51ZWQgcGFja2V0JyBmbGFnCisgc2V0IE9SPC90Pgor
PHQ+dGhlcmUgaXMgbm8gbmV4dCBwYWdlIHdpdGggcGFja2V0IGRhdGEgT1I8L3Q+Cis8dD50aGUg
cGFnZSBzZXF1ZW5jZSBudW1iZXJzIGFyZSBub3QgY29uc2VjdXRpdmUsPC90PgorPC9saXN0Pgor
IHRoZW4gYSBkZW11eGVyIE1VU1QgTk9UIGF0dGVtcHQgdG8gZGVjb2RlIHRoZSBkYXRhIGZyb20g
dGhhdCBwYWNrZXQgdW5sZXNzIHRoZQorIGRlbXV4ZXIgaGFzIHNvbWUgc3BlY2lhbCBrbm93bGVk
Z2UgdGhhdCB3b3VsZCBhbGxvdyBpdCB0byBpbnRlcnByZXQgdGhpcyBkYXRhCisgZGVzcGl0ZSB0
aGUgbWlzc2luZyBwaWVjZXMuCitUaGVyZSBNVVNUIE5PVCBiZSBhbnkgbW9yZSBwYWdlcyBpbiBh
biBPcHVzIGxvZ2ljYWwgYml0c3RyZWFtIGFmdGVyIGEgcGFnZQorIG1hcmtlZCAnZW5kIG9mIHN0
cmVhbScuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZ3JhbnBvcyIgdGl0
bGU9IkdyYW51bGUgUG9zaXRpb24iPgorPHQ+CitUaGUgZ3JhbnVsZSBwb3NpdGlvbiBNVVNUIGJl
IHplcm8gZm9yIHRoZSBJRCBoZWFkZXIgcGFnZSBhbmQgdGhlCisgcGFnZSB3aGVyZSB0aGUgY29t
bWVudCBoZWFkZXIgY29tcGxldGVzLgorVGhhdCBpcywgdGhlIGZpcnN0IHBhZ2UgaW4gdGhlIGxv
Z2ljYWwgc3RyZWFtLCBhbmQgdGhlIGxhc3QgaGVhZGVyCisgcGFnZSBiZWZvcmUgdGhlIGZpcnN0
IGF1ZGlvIGRhdGEgcGFnZSBib3RoIGhhdmUgYSBncmFudWxlIHBvc2l0aW9uIG9mIHplcm8uCis8
L3Q+Cis8dD4KK1RoZSBncmFudWxlIHBvc2l0aW9uIG9mIGFuIGF1ZGlvIGRhdGEgcGFnZSBlbmNv
ZGVzIHRoZSB0b3RhbCBudW1iZXIgb2YgUENNCisgc2FtcGxlcyBpbiB0aGUgc3RyZWFtIHVwIHRv
IGFuZCBpbmNsdWRpbmcgdGhlIGxhc3QgZnVsbHktZGVjb2RhYmxlIHNhbXBsZSBmcm9tCisgdGhl
IGxhc3QgcGFja2V0IGNvbXBsZXRlZCBvbiB0aGF0IHBhZ2UuCitUaGUgZ3JhbnVsZSBwb3NpdGlv
biBvZiB0aGUgZmlyc3QgYXVkaW8gZGF0YSBwYWdlIHdpbGwgdXN1YWxseSBiZSBsYXJnZXIgdGhh
bgorIHplcm8sIGFzIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9InN0YXJ0X2dyYW5wb3NfcmVz
dHJpY3Rpb25zIi8+LgorPC90PgorCis8dD4KK0EgcGFnZSB0aGF0IGlzIGVudGlyZWx5IHNwYW5u
ZWQgYnkgYSBzaW5nbGUgcGFja2V0ICh0aGF0IGNvbXBsZXRlcyBvbiBhCisgc3Vic2VxdWVudCBw
YWdlKSBoYXMgbm8gZ3JhbnVsZSBwb3NpdGlvbiwgYW5kIHRoZSBncmFudWxlIHBvc2l0aW9uIGZp
ZWxkIGlzCisgc2V0IHRvIHRoZSBzcGVjaWFsIHZhbHVlICctMScgaW4gdHdvJ3MgY29tcGxlbWVu
dC4KKzwvdD4KKworPHQ+CitUaGUgZ3JhbnVsZSBwb3NpdGlvbiBvZiBhbiBhdWRpbyBkYXRhIHBh
Z2UgaXMgaW4gdW5pdHMgb2YgUENNIGF1ZGlvIHNhbXBsZXMgYXQKKyBhIGZpeGVkIHJhdGUgb2Yg
NDgmbmJzcDtrSHogKHBlciBjaGFubmVsOyBhIHN0ZXJlbyBzdHJlYW0ncyBncmFudWxlIHBvc2l0
aW9uCisgZG9lcyBub3QgaW5jcmVtZW50IGF0IHR3aWNlIHRoZSBzcGVlZCBvZiBhIG1vbm8gc3Ry
ZWFtKS4KK0l0IGlzIHBvc3NpYmxlIHRvIHJ1biBhbiBPcHVzIGRlY29kZXIgYXQgb3RoZXIgc2Ft
cGxpbmcgcmF0ZXMsCisgYnV0IGFsbCBPcHVzIHBhY2tldHMgZW5jb2RlIHNhbXBsZXMgYXQgYSBz
YW1wbGluZyByYXRlIHRoYXQgZXZlbmx5IGRpdmlkZXMKKyA0OCZuYnNwO2tIei4KK1RoZXJlZm9y
ZSwgdGhlIHZhbHVlIGluIHRoZSBncmFudWxlIHBvc2l0aW9uIGZpZWxkIGFsd2F5cyBjb3VudHMg
c2FtcGxlcworIGFzc3VtaW5nIGEgNDgmbmJzcDtrSHogZGVjb2RpbmcgcmF0ZSwgYW5kIHRoZSBy
ZXN0IG9mIHRoaXMgc3BlY2lmaWNhdGlvbiBtYWtlcworIHRoZSBzYW1lIGFzc3VtcHRpb24uCis8
L3Q+CisKKzx0PgorVGhlIGR1cmF0aW9uIG9mIGFuIE9wdXMgcGFja2V0IGFzIGRlZmluZWQgaW4g
PHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+IGNhbiBiZQorIGFueSBtdWx0aXBsZSBvZiAyLjUmbmJz
cDttcywgdXAgdG8gYSBtYXhpbXVtIG9mIDEyMCZuYnNwO21zLgorVGhpcyBkdXJhdGlvbiBpcyBl
bmNvZGVkIGluIHRoZSBUT0Mgc2VxdWVuY2UgYXQgdGhlIGJlZ2lubmluZyBvZiBlYWNoIHBhY2tl
dC4KK1RoZSBudW1iZXIgb2Ygc2FtcGxlcyByZXR1cm5lZCBieSBhIGRlY29kZXIgY29ycmVzcG9u
ZHMgdG8gdGhpcyBkdXJhdGlvbgorIGV4YWN0bHksIGV2ZW4gZm9yIHRoZSBmaXJzdCBmZXcgcGFj
a2V0cy4KK0ZvciBleGFtcGxlLCBhIDIwJm5ic3A7bXMgcGFja2V0IGZlZCB0byBhIGRlY29kZXIg
cnVubmluZyBhdCA0OCZuYnNwO2tIeiB3aWxsCisgYWx3YXlzIHJldHVybiA5NjAmbmJzcDtzYW1w
bGVzLgorQSBkZW11eGVyIGNhbiBwYXJzZSB0aGUgVE9DIHNlcXVlbmNlIGF0IHRoZSBiZWdpbm5p
bmcgb2YgZWFjaCBPZ2cgcGFja2V0IHRvCisgd29yayBiYWNrd2FyZHMgb3IgZm9yd2FyZHMgZnJv
bSBhIHBhY2tldCB3aXRoIGEga25vd24gZ3JhbnVsZSBwb3NpdGlvbiAoaS5lLiwKKyB0aGUgbGFz
dCBwYWNrZXQgY29tcGxldGVkIG9uIHNvbWUgcGFnZSkgaW4gb3JkZXIgdG8gYXNzaWduIGdyYW51
bGUgcG9zaXRpb25zCisgdG8gZXZlcnkgcGFja2V0LCBvciBldmVuIGV2ZXJ5IGluZGl2aWR1YWwg
c2FtcGxlLgorVGhlIG9uZSBleGNlcHRpb24gaXMgdGhlIGxhc3QgcGFnZSBpbiB0aGUgc3RyZWFt
LCBhcyBkZXNjcmliZWQgYmVsb3cuCis8L3Q+CisKKzx0PgorQWxsIG90aGVyIHBhZ2VzIHdpdGgg
Y29tcGxldGVkIHBhY2tldHMgYWZ0ZXIgdGhlIGZpcnN0IE1VU1QgaGF2ZSBhIGdyYW51bGUKKyBw
b3NpdGlvbiBlcXVhbCB0byB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgY29udGFpbmVkIGluIHBhY2tl
dHMgdGhhdCBjb21wbGV0ZSBvbgorIHRoYXQgcGFnZSBwbHVzIHRoZSBncmFudWxlIHBvc2l0aW9u
IG9mIHRoZSBtb3N0IHJlY2VudCBwYWdlIHdpdGggY29tcGxldGVkCisgcGFja2V0cy4KK1RoaXMg
Z3VhcmFudGVlcyB0aGF0IGEgZGVtdXhlciBjYW4gYXNzaWduIGluZGl2aWR1YWwgcGFja2V0cyB0
aGUgc2FtZSBncmFudWxlCisgcG9zaXRpb24gd2hlbiB3b3JraW5nIGZvcndhcmRzIGFzIHdoZW4g
d29ya2luZyBiYWNrd2FyZHMuCitGb3IgdGhpcyB0byB3b3JrLCB0aGVyZSBjYW5ub3QgYmUgYW55
IGdhcHMuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0iZ2FwLXJlcGFpciIgdGl0bGU9IlJlcGFp
cmluZyBHYXBzIGluIFJlYWwtdGltZSBTdHJlYW1zIj4KKzx0PgorSW4gb3JkZXIgdG8gc3VwcG9y
dCBjYXB0dXJpbmcgYSByZWFsLXRpbWUgc3RyZWFtIHRoYXQgaGFzIGxvc3Qgb3Igbm90CisgdHJh
bnNtaXR0ZWQgcGFja2V0cywgYSBtdWx0aXBsZXhlciAobXV4ZXIpIFNIT1VMRCBlbWl0IHBhY2tl
dHMgdGhhdCBleHBsaWNpdGx5CisgcmVxdWVzdCB0aGUgdXNlIG9mIFBhY2tldCBMb3NzIENvbmNl
YWxtZW50IChQTEMpIGluIHBsYWNlIG9mIHRoZSBtaXNzaW5nCisgcGFja2V0cy4KK0ltcGxlbWVu
dGF0aW9ucyB0aGF0IGZhaWwgdG8gZG8gc28gc3RpbGwgTVVTVCBOT1QgaW5jcmVtZW50IHRoZSBn
cmFudWxlCisgcG9zaXRpb24gZm9yIGEgcGFnZSBieSBhbnl0aGluZyBvdGhlciB0aGFuIHRoZSBu
dW1iZXIgb2Ygc2FtcGxlcyBjb250YWluZWQgaW4KKyBwYWNrZXRzIHRoYXQgYWN0dWFsbHkgY29t
cGxldGUgb24gdGhhdCBwYWdlLgorPC90PgorPHQ+CitPbmx5IGdhcHMgdGhhdCBhcmUgYSBtdWx0
aXBsZSBvZiAyLjUmbmJzcDttcyBhcmUgcmVwYWlyYWJsZSwgYXMgdGhlc2UgYXJlIHRoZQorIG9u
bHkgZHVyYXRpb25zIHRoYXQgY2FuIGJlIGNyZWF0ZWQgYnkgcGFja2V0IGxvc3Mgb3IgZGlzY29u
dGludW91cworIHRyYW5zbWlzc2lvbi4KK011eGVycyBuZWVkIG5vdCBoYW5kbGUgb3RoZXIgZ2Fw
IHNpemVzLgorQ3JlYXRpbmcgdGhlIG5lY2Vzc2FyeSBwYWNrZXRzIGludm9sdmVzIHN5bnRoZXNp
emluZyBhIFRPQyBieXRlIChkZWZpbmVkIGluCitTZWN0aW9uJm5ic3A7My4xIG9mJm5ic3A7PHhy
ZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+KSZtZGFzaDthbmQgd2hhdGV2ZXIKKyBhZGRpdGlvbmFsIGlu
dGVybmFsIGZyYW1pbmcgaXMgbmVlZGVkJm1kYXNoO3RvIGluZGljYXRlIHRoZSBwYWNrZXQgZHVy
YXRpb24KKyBmb3IgZWFjaCBzdHJlYW0uCitUaGUgYWN0dWFsIGxlbmd0aCBvZiBlYWNoIG1pc3Np
bmcgT3B1cyBmcmFtZSBpbnNpZGUgdGhlIHBhY2tldCBpcyB6ZXJvIGJ5dGVzLAorIGFzIGRlZmlu
ZWQgaW4gU2VjdGlvbiZuYnNwOzMuMi4xIG9mJm5ic3A7PHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+
LgorPC90PgorCis8dD4KK1plcm8tYnl0ZSBmcmFtZXMgTUFZIGJlIHBhY2tlZCBpbnRvIHBhY2tl
dHMgdXNpbmcgYW55IG9mIGNvZGVzJm5ic3A7MCwgMSwKKyAyLCBvciZuYnNwOzMuCitXaGVuIHN1
Y2Nlc3NpdmUgZnJhbWVzIGhhdmUgdGhlIHNhbWUgY29uZmlndXJhdGlvbiwgdGhlIGhpZ2hlciBj
b2RlIHBhY2tpbmdzCisgcmVkdWNlIG92ZXJoZWFkLgorTGlrZXdpc2UsIGlmIHRoZSBUT0MgY29u
ZmlndXJhdGlvbiBtYXRjaGVzLCB0aGUgbXV4ZXIgTUFZIGZ1cnRoZXIgY29tYmluZSB0aGUKKyBl
bXB0eSBmcmFtZXMgd2l0aCBwcmV2aW91cyBvciBzdWJzZXF1ZW50IG5vbi16ZXJvLWxlbmd0aCBm
cmFtZXMgKHVzaW5nCisgY29kZSZuYnNwOzIgb3IgVkJSIGNvZGUmbmJzcDszKS4KKzwvdD4KKwor
PHQ+Cis8eHJlZiB0YXJnZXQ9IlJGQzY3MTYiLz4gZG9lcyBub3QgaW1wb3NlIGFueSByZXF1aXJl
bWVudHMgb24gdGhlIFBMQywgYnV0IHRoaXMKKyBzZWN0aW9uIG91dGxpbmVzIGNob2ljZXMgdGhh
dCBhcmUgZXhwZWN0ZWQgdG8gaGF2ZSBhIHBvc2l0aXZlIGluZmx1ZW5jZSBvbgorIG1vc3QgUExD
IGltcGxlbWVudGF0aW9ucywgaW5jbHVkaW5nIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24u
CitTeW50aGVzaXplZCBUT0Mgc2VxdWVuY2VzIFNIT1VMRCBtYWludGFpbiB0aGUgc2FtZSBtb2Rl
LCBhdWRpbyBiYW5kd2lkdGgsCisgY2hhbm5lbCBjb3VudCwgYW5kIGZyYW1lIHNpemUgYXMgdGhl
IHByZXZpb3VzIHBhY2tldCAoaWYgYW55KS4KK1RoaXMgaXMgdGhlIHNpbXBsZXN0IGFuZCB1c3Vh
bGx5IHRoZSBtb3N0IHdlbGwtdGVzdGVkIGNhc2UgZm9yIHRoZSBQTEMgdG8KKyBoYW5kbGUgYW5k
IGl0IGNvdmVycyBhbGwgbG9zc2VzIHRoYXQgZG8gbm90IGluY2x1ZGUgYSBjb25maWd1cmF0aW9u
IHN3aXRjaCwKKyBhcyBkZWZpbmVkIGluIFNlY3Rpb24mbmJzcDs0LjUgb2YmbmJzcDs8eHJlZiB0
YXJnZXQ9IlJGQzY3MTYiLz4uCis8L3Q+CisKKzx0PgorV2hlbiBhIHByZXZpb3VzIHBhY2tldCBp
cyBhdmFpbGFibGUsIGtlZXBpbmcgdGhlIGF1ZGlvIGJhbmR3aWR0aCBhbmQgY2hhbm5lbAorIGNv
dW50IHRoZSBzYW1lIGFsbG93cyB0aGUgUExDIHRvIHByb3ZpZGUgbWF4aW11bSBjb250aW51aXR5
IGluIHRoZSBjb25jZWFsbWVudAorIGRhdGEgaXQgZ2VuZXJhdGVzLgorSG93ZXZlciwgaWYgdGhl
IHNpemUgb2YgdGhlIGdhcCBpcyBub3QgYSBtdWx0aXBsZSBvZiB0aGUgbW9zdCByZWNlbnQgZnJh
bWUKKyBzaXplLCB0aGVuIHRoZSBmcmFtZSBzaXplIHdpbGwgaGF2ZSB0byBjaGFuZ2UgZm9yIGF0
IGxlYXN0IHNvbWUgZnJhbWVzLgorU3VjaCBjaGFuZ2VzIFNIT1VMRCBiZSBkZWxheWVkIGFzIGxv
bmcgYXMgcG9zc2libGUgdG8gc2ltcGxpZnkKKyB0aGluZ3MgZm9yIFBMQyBpbXBsZW1lbnRhdGlv
bnMuCis8L3Q+CisKKzx0PgorQXMgYW4gZXhhbXBsZSwgYSA5NSZuYnNwO21zIGdhcCBjb3VsZCBi
ZSBlbmNvZGVkIGFzIG5pbmV0ZWVuIDUmbmJzcDttcyBmcmFtZXMKKyBpbiB0d28gYnl0ZXMgd2l0
aCBhIHNpbmdsZSBDQlIgY29kZSZuYnNwOzMgcGFja2V0LgorSWYgdGhlIHByZXZpb3VzIGZyYW1l
IHNpemUgd2FzIDIwJm5ic3A7bXMsIHVzaW5nIGZvdXIgMjAmbmJzcDttcyBmcmFtZXMKKyBmb2xs
b3dlZCBieSB0aHJlZSA1Jm5ic3A7bXMgZnJhbWVzIHJlcXVpcmVzIDQmbmJzcDtieXRlcyAocGx1
cyBhbiBleHRyYSBieXRlCisgb2YgT2dnIGxhY2luZyBvdmVyaGVhZCksIGJ1dCBhbGxvd3MgdGhl
IFBMQyB0byB1c2UgaXRzIHdlbGwtdGVzdGVkIHN0ZWFkeQorIHN0YXRlIGJlaGF2aW9yIGZvciBh
cyBsb25nIGFzIHBvc3NpYmxlLgorVGhlIHRvdGFsIGJpdHJhdGUgb2YgdGhlIGxhdHRlciBhcHBy
b2FjaCwgaW5jbHVkaW5nIE9nZyBvdmVyaGVhZCwgaXMgYWJvdXQKKyAwLjQmbmJzcDtrYnBzLCBz
byB0aGUgaW1wYWN0IG9uIGZpbGUgc2l6ZSBpcyBtaW5pbWFsLgorPC90PgorCis8dD4KK0NoYW5n
aW5nIG1vZGVzIGlzIGRpc2NvdXJhZ2VkLCBzaW5jZSB0aGlzIGNhdXNlcyBzb21lIGRlY29kZXIg
aW1wbGVtZW50YXRpb25zCisgdG8gcmVzZXQgdGhlaXIgUExDIHN0YXRlLgorSG93ZXZlciwgU0lM
SyBhbmQgSHlicmlkIG1vZGUgZnJhbWVzIGNhbm5vdCBmaWxsIGdhcHMgdGhhdCBhcmUgbm90IGEg
bXVsdGlwbGUKKyBvZiAxMCZuYnNwO21zLgorSWYgc3dpdGNoaW5nIHRvIENFTFQgbW9kZSBpcyBu
ZWVkZWQgdG8gbWF0Y2ggdGhlIGdhcCBzaXplLCBhIG11eGVyIFNIT1VMRCBkbworIHNvIGF0IHRo
ZSBlbmQgb2YgdGhlIGdhcCB0byBhbGxvdyB0aGUgUExDIHRvIGZ1bmN0aW9uIGZvciBhcyBsb25n
IGFzIHBvc3NpYmxlLgorPC90PgorCis8dD4KK0luIHRoZSBleGFtcGxlIGFib3ZlLCBpZiB0aGUg
cHJldmlvdXMgZnJhbWUgd2FzIGEgMjAmbmJzcDttcyBTSUxLIG1vZGUgZnJhbWUsCisgdGhlIGJl
dHRlciBzb2x1dGlvbiBpcyB0byBzeW50aGVzaXplIGEgcGFja2V0IGRlc2NyaWJpbmcgZm91ciAy
MCZuYnNwO21zIFNJTEsKKyBmcmFtZXMsIGZvbGxvd2VkIGJ5IGEgcGFja2V0IHdpdGggYSBzaW5n
bGUgMTAmbmJzcDttcyBTSUxLCisgZnJhbWUsIGFuZCBmaW5hbGx5IGEgcGFja2V0IHdpdGggYSA1
Jm5ic3A7bXMgQ0VMVCBmcmFtZSwgdG8gZmlsbCB0aGUgOTUmbmJzcDttcworIGdhcC4KK1RoaXMg
YWxzbyByZXF1aXJlcyBmb3VyIGJ5dGVzIHRvIGRlc2NyaWJlIHRoZSBzeW50aGVzaXplZCBwYWNr
ZXQgZGF0YSAodHdvCisgYnl0ZXMgZm9yIGEgQ0JSIGNvZGUgMyBhbmQgb25lIGJ5dGUgZWFjaCBm
b3IgdHdvIGNvZGUgMCBwYWNrZXRzKSBidXQgdGhyZWUKKyBieXRlcyBvZiBPZ2cgbGFjaW5nIG92
ZXJoZWFkIGFyZSBuZWVkZWQgdG8gbWFyayB0aGUgcGFja2V0IGJvdW5kYXJpZXMuCitBdCAwLjYg
a2JwcywgdGhpcyBpcyBzdGlsbCBhIG1pbmltYWwgYml0cmF0ZSBpbXBhY3Qgb3ZlciBhIG5haXZl
LCBsb3cgcXVhbGl0eQorIHNvbHV0aW9uLgorPC90PgorCis8dD4KK1NpbmNlIG1lZGl1bS1iYW5k
IGF1ZGlvIGlzIGFuIG9wdGlvbiBvbmx5IGluIHRoZSBTSUxLIG1vZGUsIHdpZGViYW5kIGZyYW1l
cworIFNIT1VMRCBiZSBnZW5lcmF0ZWQgaWYgc3dpdGNoaW5nIGZyb20gdGhhdCBjb25maWd1cmF0
aW9uIHRvIENFTFQgbW9kZSwgdG8KKyBlbnN1cmUgdGhhdCBhbnkgUExDIGltcGxlbWVudGF0aW9u
IHdoaWNoIGRvZXMgdHJ5IHRvIG1pZ3JhdGUgc3RhdGUgYmV0d2VlbgorIHRoZSBtb2RlcyB3aWxs
IGJlIGFibGUgdG8gcHJlc2VydmUgYWxsIG9mIHRoZSBhdmFpbGFibGUgYXVkaW8gYmFuZHdpZHRo
LgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0icHJlc2tpcCIgdGl0bGU9
IlByZS1za2lwIj4KKzx0PgorVGhlcmUgaXMgc29tZSBhbW91bnQgb2YgbGF0ZW5jeSBpbnRyb2R1
Y2VkIGR1cmluZyB0aGUgZGVjb2RpbmcgcHJvY2VzcywgdG8KKyBhbGxvdyBmb3Igb3ZlcmxhcCBp
biB0aGUgQ0VMVCBtb2RlLCBzdGVyZW8gbWl4aW5nIGluIHRoZSBTSUxLIG1vZGUsIGFuZAorIHJl
c2FtcGxpbmcuCitUaGUgZW5jb2RlciBtaWdodCBoYXZlIGludHJvZHVjZWQgYWRkaXRpb25hbCBs
YXRlbmN5IHRocm91Z2ggaXRzIG93biByZXNhbXBsaW5nCisgYW5kIGFuYWx5c2lzICh0aG91Z2gg
dGhlIGV4YWN0IGFtb3VudCBpcyBub3Qgc3BlY2lmaWVkKS4KK1RoZXJlZm9yZSwgdGhlIGZpcnN0
IGZldyBzYW1wbGVzIHByb2R1Y2VkIGJ5IHRoZSBkZWNvZGVyIGRvIG5vdCBjb3JyZXNwb25kIHRv
CisgcmVhbCBpbnB1dCBhdWRpbywgYnV0IGFyZSBpbnN0ZWFkIGNvbXBvc2VkIG9mIHBhZGRpbmcg
aW5zZXJ0ZWQgYnkgdGhlIGVuY29kZXIKKyB0byBjb21wZW5zYXRlIGZvciB0aGlzIGxhdGVuY3ku
CitUaGVzZSBzYW1wbGVzIG5lZWQgdG8gYmUgc3RvcmVkIGFuZCBkZWNvZGVkLCBhcyBPcHVzIGlz
IGFuIGFzeW1wdG90aWNhbGx5CisgY29udmVyZ2VudCBwcmVkaWN0aXZlIGNvZGVjLCBtZWFuaW5n
IHRoZSBkZWNvZGVkIGNvbnRlbnRzIG9mIGVhY2ggZnJhbWUgZGVwZW5kCisgb24gdGhlIHJlY2Vu
dCBoaXN0b3J5IG9mIGRlY29kZXIgaW5wdXRzLgorSG93ZXZlciwgYSBwbGF5ZXIgd2lsbCB3YW50
IHRvIHNraXAgdGhlc2Ugc2FtcGxlcyBhZnRlciBkZWNvZGluZyB0aGVtLgorPC90PgorCis8dD4K
K0EgJ3ByZS1za2lwJyBmaWVsZCBpbiB0aGUgSUQgaGVhZGVyIChzZWUgPHhyZWYgdGFyZ2V0PSJp
ZF9oZWFkZXIiLz4pIHNpZ25hbHMKKyB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgdGhhdCBTSE9VTEQg
YmUgc2tpcHBlZCAoZGVjb2RlZCBidXQgZGlzY2FyZGVkKSBhdCB0aGUKKyBiZWdpbm5pbmcgb2Yg
dGhlIHN0cmVhbSwgdGhvdWdoIHNvbWUgc3BlY2lmaWMgYXBwbGljYXRpb25zIG1pZ2h0IGhhdmUg
YSByZWFzb24KKyBmb3IgbG9va2luZyBhdCB0aGF0IGRhdGEuCitUaGlzIGFtb3VudCBuZWVkIG5v
dCBiZSBhIG11bHRpcGxlIG9mIDIuNSZuYnNwO21zLCBNQVkgYmUgc21hbGxlciB0aGFuIGEgc2lu
Z2xlCisgcGFja2V0LCBvciBNQVkgc3BhbiB0aGUgY29udGVudHMgb2Ygc2V2ZXJhbCBwYWNrZXRz
LgorVGhlc2Ugc2FtcGxlcyBhcmUgbm90IHZhbGlkIGF1ZGlvLgorPC90PgorCis8dD4KK0ZvciBl
eGFtcGxlLCBpZiB0aGUgZmlyc3QgT3B1cyBmcmFtZSB1c2VzIHRoZSBDRUxUIG1vZGUsIGl0IHdp
bGwgYWx3YXlzCisgcHJvZHVjZSAxMjAgc2FtcGxlcyBvZiB3aW5kb3dlZCBvdmVybGFwLWFkZCBk
YXRhLgorSG93ZXZlciwgdGhlIG92ZXJsYXAgZGF0YSBpcyBpbml0aWFsbHkgYWxsIHplcm9zIChz
aW5jZSB0aGVyZSBpcyBubyBwcmlvcgorIGZyYW1lKSwgbWVhbmluZyB0aGlzIGNhbm5vdCwgaW4g
Z2VuZXJhbCwgYWNjdXJhdGVseSByZXByZXNlbnQgdGhlIG9yaWdpbmFsCisgYXVkaW8uCitUaGUg
U0lMSyBtb2RlIHJlcXVpcmVzIGFkZGl0aW9uYWwgZGVsYXkgdG8gYWNjb3VudCBmb3IgaXRzIGFu
YWx5c2lzIGFuZAorIHJlc2FtcGxpbmcgbGF0ZW5jeS4KK1RoZSBlbmNvZGVyIGRlbGF5cyB0aGUg
b3JpZ2luYWwgYXVkaW8gdG8gYXZvaWQgdGhpcyBwcm9ibGVtLgorPC90PgorCis8dD4KK1RoZSBw
cmUtc2tpcCBmaWVsZCBNQVkgYWxzbyBiZSB1c2VkIHRvIHBlcmZvcm0gc2FtcGxlLWFjY3VyYXRl
IGNyb3BwaW5nIG9mCisgYWxyZWFkeSBlbmNvZGVkIHN0cmVhbXMuCitJbiB0aGlzIGNhc2UsIGEg
dmFsdWUgb2YgYXQgbGVhc3QgMzg0MCZuYnNwO3NhbXBsZXMgKDgwJm5ic3A7bXMpIHByb3ZpZGVz
Cisgc3VmZmljaWVudCBoaXN0b3J5IHRvIHRoZSBkZWNvZGVyIHRoYXQgaXQgd2lsbCBoYXZlIGNv
bnZlcmdlZAorIGJlZm9yZSB0aGUgc3RyZWFtJ3Mgb3V0cHV0IGJlZ2lucy4KKzwvdD4KKworPC9z
ZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InBjbV9zYW1wbGVfcG9zaXRpb24iIHRpdGxlPSJQ
Q00gU2FtcGxlIFBvc2l0aW9uIj4KKzx0PgorVGhlIFBDTSBzYW1wbGUgcG9zaXRpb24gaXMgZGV0
ZXJtaW5lZCBmcm9tIHRoZSBncmFudWxlIHBvc2l0aW9uIHVzaW5nIHRoZQorIGZvcm11bGEKKzwv
dD4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKKydQQ00gc2FtcGxlIHBvc2l0aW9uJyA9ICdncmFudWxlIHBvc2l0aW9uJyAtICdwcmUt
c2tpcCcgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0PgorRm9yIGV4YW1wbGUsIGlm
IHRoZSBncmFudWxlIHBvc2l0aW9uIG9mIHRoZSBmaXJzdCBhdWRpbyBkYXRhIHBhZ2UgaXMgNTks
OTcxLAorIGFuZCB0aGUgcHJlLXNraXAgaXMgMTEsOTcxLCB0aGVuIHRoZSBQQ00gc2FtcGxlIHBv
c2l0aW9uIG9mIHRoZSBsYXN0IGRlY29kZWQKKyBzYW1wbGUgZnJvbSB0aGF0IHBhZ2UgaXMgNDgs
MDAwLgorPC90PgorPHQ+CitUaGlzIGNhbiBiZSBjb252ZXJ0ZWQgaW50byBhIHBsYXliYWNrIHRp
bWUgdXNpbmcgdGhlIGZvcm11bGEKKzwvdD4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICdQQ00gc2Ft
cGxlIHBvc2l0aW9uJworJ3BsYXliYWNrIHRpbWUnID0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC4K
KyAgICAgICAgICAgICAgICAgICAgICAgICA0ODAwMC4wCitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KKworPHQ+CitUaGUgaW5pdGlhbCBQQ00gc2FtcGxlIHBvc2l0aW9uIGJlZm9yZSBhbnkgc2Ft
cGxlcyBhcmUgcGxheWVkIGlzIG5vcm1hbGx5ICcwJy4KK0luIHRoaXMgY2FzZSwgdGhlIFBDTSBz
YW1wbGUgcG9zaXRpb24gb2YgdGhlIGZpcnN0IGF1ZGlvIHNhbXBsZSB0byBiZSBwbGF5ZWQKKyBz
dGFydHMgYXQgJzEnLCBiZWNhdXNlIGl0IG1hcmtzIHRoZSB0aW1lIG9uIHRoZSBjbG9jaworIDxz
cGFueCBzdHlsZT0iZW1waCI+YWZ0ZXI8L3NwYW54PiB0aGF0IHNhbXBsZSBoYXMgYmVlbiBwbGF5
ZWQsIGFuZCBhIHN0cmVhbQorIHRoYXQgaXMgZXhhY3RseSBvbmUgc2Vjb25kIGxvbmcgaGFzIGEg
ZmluYWwgUENNIHNhbXBsZSBwb3NpdGlvbiBvZiAnNDgwMDAnLAorIGFzIGluIHRoZSBleGFtcGxl
IGhlcmUuCis8L3Q+CisKKzx0PgorVm9yYmlzIHN0cmVhbXMgdXNlIGEgZ3JhbnVsZSBwb3NpdGlv
biBzbWFsbGVyIHRoYW4gdGhlIG51bWJlciBvZiBhdWRpbyBzYW1wbGVzCisgY29udGFpbmVkIGlu
IHRoZSBmaXJzdCBhdWRpbyBkYXRhIHBhZ2UgdG8gaW5kaWNhdGUgdGhhdCBzb21lIG9mIHRob3Nl
IHNhbXBsZXMKKyBhcmUgdHJpbW1lZCBmcm9tIHRoZSBvdXRwdXQgKHNlZSA8eHJlZiB0YXJnZXQ9
InZvcmJpcy10cmltIi8+KS4KK0hvd2V2ZXIsIHRvIGRvIHNvLCBWb3JiaXMgcmVxdWlyZXMgdGhh
dCB0aGUgZmlyc3QgYXVkaW8gZGF0YSBwYWdlIGNvbnRhaW5zCisgZXhhY3RseSB0d28gcGFja2V0
cywgaW4gb3JkZXIgdG8gYWxsb3cgdGhlIGRlY29kZXIgdG8gcGVyZm9ybSBQQ00gcG9zaXRpb24K
KyBhZGp1c3RtZW50cyBiZWZvcmUgbmVlZGluZyB0byByZXR1cm4gYW55IFBDTSBkYXRhLgorT3B1
cyB1c2VzIHRoZSBwcmUtc2tpcCBtZWNoYW5pc20gZm9yIHRoaXMgcHVycG9zZSBpbnN0ZWFkLCBz
aW5jZSB0aGUgZW5jb2RlcgorIG1pZ2h0IGludHJvZHVjZSBtb3JlIHRoYW4gYSBzaW5nbGUgcGFj
a2V0J3Mgd29ydGggb2YgbGF0ZW5jeSwgYW5kIHNpbmNlIHZlcnkKKyBsYXJnZSBwYWNrZXRzIGlu
IHN0cmVhbXMgd2l0aCBhIHZlcnkgbGFyZ2UgbnVtYmVyIG9mIGNoYW5uZWxzIG1pZ2h0IG5vdCBm
aXQKKyBvbiBhIHNpbmdsZSBwYWdlLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9ImVuZF90cmltbWluZyIgdGl0bGU9IkVuZCBUcmltbWluZyI+Cis8dD4KK1RoZSBwYWdlIHdp
dGggdGhlICdlbmQgb2Ygc3RyZWFtJyBmbGFnIHNldCBNQVkgaGF2ZSBhIGdyYW51bGUgcG9zaXRp
b24gdGhhdAorIGluZGljYXRlcyB0aGUgcGFnZSBjb250YWlucyBsZXNzIGF1ZGlvIGRhdGEgdGhh
biB3b3VsZCBub3JtYWxseSBiZSByZXR1cm5lZCBieQorIGRlY29kaW5nIHVwIHRocm91Z2ggdGhl
IGZpbmFsIHBhY2tldC4KK1RoaXMgaXMgdXNlZCB0byBlbmQgdGhlIHN0cmVhbSBzb21ld2hlcmUg
b3RoZXIgdGhhbiBhbiBldmVuIGZyYW1lIGJvdW5kYXJ5LgorVGhlIGdyYW51bGUgcG9zaXRpb24g
b2YgdGhlIG1vc3QgcmVjZW50IGF1ZGlvIGRhdGEgcGFnZSB3aXRoIGNvbXBsZXRlZCBwYWNrZXRz
CisgaXMgdXNlZCB0byBtYWtlIHRoaXMgZGV0ZXJtaW5hdGlvbiwgb3IgJzAnIGlzIHVzZWQgaWYg
dGhlcmUgd2VyZSBubyBwcmV2aW91cworIGF1ZGlvIGRhdGEgcGFnZXMgd2l0aCBhIGNvbXBsZXRl
ZCBwYWNrZXQuCitUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZXNlIGdyYW51bGUgcG9zaXRpb25z
IGluZGljYXRlcyBob3cgbWFueSBzYW1wbGVzIHRvCisga2VlcCBhZnRlciBkZWNvZGluZyB0aGUg
cGFja2V0cyB0aGF0IGNvbXBsZXRlZCBvbiB0aGUgZmluYWwgcGFnZS4KK1RoZSByZW1haW5pbmcg
c2FtcGxlcyBhcmUgZGlzY2FyZGVkLgorVGhlIG51bWJlciBvZiBkaXNjYXJkZWQgc2FtcGxlcyBT
SE9VTEQgYmUgbm8gbGFyZ2VyIHRoYW4gdGhlIG51bWJlciBkZWNvZGVkCisgZnJvbSB0aGUgbGFz
dCBwYWNrZXQuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic3RhcnRfZ3Jh
bnBvc19yZXN0cmljdGlvbnMiCisgdGl0bGU9IlJlc3RyaWN0aW9ucyBvbiB0aGUgSW5pdGlhbCBH
cmFudWxlIFBvc2l0aW9uIj4KKzx0PgorVGhlIGdyYW51bGUgcG9zaXRpb24gb2YgdGhlIGZpcnN0
IGF1ZGlvIGRhdGEgcGFnZSB3aXRoIGEgY29tcGxldGVkIHBhY2tldCBNQVkKKyBiZSBsYXJnZXIg
dGhhbiB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgY29udGFpbmVkIGluIHBhY2tldHMgdGhhdCBjb21w
bGV0ZSBvbgorIHRoYXQgcGFnZSwgaG93ZXZlciBpdCBNVVNUIE5PVCBiZSBzbWFsbGVyLCB1bmxl
c3MgdGhhdCBwYWdlIGhhcyB0aGUgJ2VuZCBvZgorIHN0cmVhbScgZmxhZyBzZXQuCitBbGxvd2lu
ZyBhIGdyYW51bGUgcG9zaXRpb24gbGFyZ2VyIHRoYW4gdGhlIG51bWJlciBvZiBzYW1wbGVzIGFs
bG93cyB0aGUKKyBiZWdpbm5pbmcgb2YgYSBzdHJlYW0gdG8gYmUgY3JvcHBlZCBvciBhIGxpdmUg
c3RyZWFtIHRvIGJlIGpvaW5lZCB3aXRob3V0CisgcmV3cml0aW5nIHRoZSBncmFudWxlIHBvc2l0
aW9uIG9mIGFsbCB0aGUgcmVtYWluaW5nIHBhZ2VzLgorVGhpcyBtZWFucyB0aGF0IHRoZSBQQ00g
c2FtcGxlIHBvc2l0aW9uIGp1c3QgYmVmb3JlIHRoZSBmaXJzdCBzYW1wbGUgdG8gYmUKKyBwbGF5
ZWQgTUFZIGJlIGxhcmdlciB0aGFuICcwJy4KK1N5bmNocm9uaXphdGlvbiB3aGVuIG11bHRpcGxl
eGluZyB3aXRoIG90aGVyIGxvZ2ljYWwgc3RyZWFtcyBzdGlsbCB1c2VzIHRoZSBQQ00KKyBzYW1w
bGUgcG9zaXRpb24gcmVsYXRpdmUgdG8gJzAnIHRvIGNvbXB1dGUgc2FtcGxlIHRpbWVzLgorVGhp
cyBkb2VzIG5vdCBhZmZlY3QgdGhlIGJlaGF2aW9yIG9mIHByZS1za2lwOiBleGFjdGx5ICdwcmUt
c2tpcCcgc2FtcGxlcworIFNIT1VMRCBiZSBza2lwcGVkIGZyb20gdGhlIGJlZ2lubmluZyBvZiB0
aGUgZGVjb2RlZCBvdXRwdXQsIGV2ZW4gaWYgdGhlCisgaW5pdGlhbCBQQ00gc2FtcGxlIHBvc2l0
aW9uIGlzIGdyZWF0ZXIgdGhhbiB6ZXJvLgorPC90PgorCis8dD4KK09uIHRoZSBvdGhlciBoYW5k
LCBhIGdyYW51bGUgcG9zaXRpb24gdGhhdCBpcyBzbWFsbGVyIHRoYW4gdGhlIG51bWJlciBvZgor
IGRlY29kZWQgc2FtcGxlcyBwcmV2ZW50cyBhIGRlbXV4ZXIgZnJvbSB3b3JraW5nIGJhY2t3YXJk
cyB0byBhc3NpZ24gZWFjaAorIHBhY2tldCBvciBlYWNoIGluZGl2aWR1YWwgc2FtcGxlIGEgdmFs
aWQgZ3JhbnVsZSBwb3NpdGlvbiwgc2luY2UgZ3JhbnVsZQorIHBvc2l0aW9ucyBhcmUgbm9uLW5l
Z2F0aXZlLgorQW4gaW1wbGVtZW50YXRpb24gTVVTVCB0cmVhdCBhbnkgc3RyZWFtIGFzIGludmFs
aWQgaWYgdGhlIGdyYW51bGUgcG9zaXRpb24KKyBpcyBzbWFsbGVyIHRoYW4gdGhlIG51bWJlciBv
ZiBzYW1wbGVzIGNvbnRhaW5lZCBpbiBwYWNrZXRzIHRoYXQgY29tcGxldGUgb24KKyB0aGUgZmly
c3QgYXVkaW8gZGF0YSBwYWdlIHdpdGggYSBjb21wbGV0ZWQgcGFja2V0LCB1bmxlc3MgdGhhdCBw
YWdlIGhhcyB0aGUKKyAnZW5kIG9mIHN0cmVhbScgZmxhZyBzZXQuCitJdCBNQVkgZGVmZXIgdGhp
cyBhY3Rpb24gdW50aWwgaXQgZGVjb2RlcyB0aGUgbGFzdCBwYWNrZXQgY29tcGxldGVkIG9uIHRo
YXQKKyBwYWdlLgorPC90PgorCis8dD4KK0lmIHRoYXQgcGFnZSBoYXMgdGhlICdlbmQgb2Ygc3Ry
ZWFtJyBmbGFnIHNldCwgYSBkZW11eGVyIE1VU1QgdHJlYXQgYW55IHN0cmVhbQorIGFzIGludmFs
aWQgaWYgaXRzIGdyYW51bGUgcG9zaXRpb24gaXMgc21hbGxlciB0aGFuIHRoZSAncHJlLXNraXAn
IGFtb3VudC4KK1RoaXMgd291bGQgaW5kaWNhdGUgdGhhdCB0aGVyZSBhcmUgbW9yZSBzYW1wbGVz
IHRvIGJlIHNraXBwZWQgZnJvbSB0aGUgaW5pdGlhbAorIGRlY29kZWQgb3V0cHV0IHRoYW4gZXhp
c3QgaW4gdGhlIHN0cmVhbS4KK0lmIHRoZSBncmFudWxlIHBvc2l0aW9uIGlzIHNtYWxsZXIgdGhh
biB0aGUgbnVtYmVyIG9mIGRlY29kZWQgc2FtcGxlcyBwcm9kdWNlZAorIGJ5IHRoZSBwYWNrZXRz
IHRoYXQgY29tcGxldGUgb24gdGhhdCBwYWdlLCB0aGVuIGEgZGVtdXhlciBNVVNUIHVzZSBhbiBp
bml0aWFsCisgZ3JhbnVsZSBwb3NpdGlvbiBvZiAnMCcsIGFuZCBjYW4gd29yayBmb3J3YXJkcyBm
cm9tICcwJyB0byB0aW1lc3RhbXAKKyBpbmRpdmlkdWFsIHBhY2tldHMuCitJZiB0aGUgZ3JhbnVs
ZSBwb3NpdGlvbiBpcyBsYXJnZXIgdGhhbiB0aGUgbnVtYmVyIG9mIGRlY29kZWQgc2FtcGxlcyBh
dmFpbGFibGUsCisgdGhlbiB0aGUgZGVtdXhlciBNVVNUIHN0aWxsIHdvcmsgYmFja3dhcmRzIGFz
IGRlc2NyaWJlZCBhYm92ZSwgZXZlbiBpZiB0aGUKKyAnZW5kIG9mIHN0cmVhbScgZmxhZyBpcyBz
ZXQsIHRvIGRldGVybWluZSB0aGUgaW5pdGlhbCBncmFudWxlIHBvc2l0aW9uLCBhbmQKKyB0aHVz
IHRoZSBpbml0aWFsIFBDTSBzYW1wbGUgcG9zaXRpb24uCitCb3RoIG9mIHRoZXNlIHdpbGwgYmUg
Z3JlYXRlciB0aGFuICcwJyBpbiB0aGlzIGNhc2UuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0
aW9uIGFuY2hvcj0ic2Vla2luZ19hbmRfcHJlcm9sbCIgdGl0bGU9IlNlZWtpbmcgYW5kIFByZS1y
b2xsIj4KKzx0PgorU2Vla2luZyBpbiBPZ2cgZmlsZXMgaXMgYmVzdCBwZXJmb3JtZWQgdXNpbmcg
YSBiaXNlY3Rpb24gc2VhcmNoIGZvciBhIHBhZ2UKKyB3aG9zZSBncmFudWxlIHBvc2l0aW9uIGNv
cnJlc3BvbmRzIHRvIGEgUENNIHBvc2l0aW9uIGF0IG9yIGJlZm9yZSB0aGUgc2VlaworIHRhcmdl
dC4KK1dpdGggYXBwcm9wcmlhdGVseSB3ZWlnaHRlZCBiaXNlY3Rpb24sIGFjY3VyYXRlIHNlZWtp
bmcgY2FuIGJlIHBlcmZvcm1lZCBpbgorIGp1c3Qgb25lIG9yIHR3byBiaXNlY3Rpb25zIG9uIGF2
ZXJhZ2UsIGV2ZW4gaW4gbXVsdGktZ2lnYWJ5dGUgZmlsZXMuCitTZWUgPHhyZWYgdGFyZ2V0PSJz
ZWVraW5nIi8+IGZvciBhbiBleGFtcGxlIG9mIGdlbmVyYWwgaW1wbGVtZW50YXRpb24gZ3VpZGFu
Y2UuCis8L3Q+CisKKzx0PgorV2hlbiBzZWVraW5nIHdpdGhpbiBhbiBPZ2cgT3B1cyBzdHJlYW0s
IGFuIGltcGxlbWVudGF0aW9uIFNIT1VMRCBzdGFydCBkZWNvZGluZworIChhbmQgZGlzY2FyZGlu
ZyB0aGUgb3V0cHV0KSBhdCBsZWFzdCAzODQwJm5ic3A7c2FtcGxlcyAoODAmbmJzcDttcykgcHJp
b3IgdG8KKyB0aGUgc2VlayB0YXJnZXQgaW4gb3JkZXIgdG8gZW5zdXJlIHRoYXQgdGhlIG91dHB1
dCBhdWRpbyBpcyBjb3JyZWN0IGJ5IHRoZQorIHRpbWUgaXQgcmVhY2hlcyB0aGUgc2VlayB0YXJn
ZXQuCitUaGlzICdwcmUtcm9sbCcgaXMgc2VwYXJhdGUgZnJvbSwgYW5kIHVucmVsYXRlZCB0bywg
dGhlICdwcmUtc2tpcCcgdXNlZCBhdCB0aGUKKyBiZWdpbm5pbmcgb2YgdGhlIHN0cmVhbS4KK0lm
IHRoZSBwb2ludCA4MCZuYnNwO21zIHByaW9yIHRvIHRoZSBzZWVrIHRhcmdldCBjb21lcyBiZWZv
cmUgdGhlIGluaXRpYWwgUENNCisgc2FtcGxlIHBvc2l0aW9uLCBhbiBpbXBsZW1lbnRhdGlvbiBT
SE9VTEQgc3RhcnQgZGVjb2RpbmcgZnJvbSB0aGUgYmVnaW5uaW5nIG9mCisgdGhlIHN0cmVhbSwg
YXBwbHlpbmcgcHJlLXNraXAgYXMgbm9ybWFsLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIHBy
ZS1za2lwIGlzCisgbGFyZ2VyIG9yIHNtYWxsZXIgdGhhbiA4MCZuYnNwO21zLCBhbmQgdGhlbiBj
b250aW51ZSB0byBkaXNjYXJkIHNhbXBsZXMKKyB0byByZWFjaCB0aGUgc2VlayB0YXJnZXQgKGlm
IGFueSkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9y
PSJoZWFkZXJzIiB0aXRsZT0iSGVhZGVyIFBhY2tldHMiPgorPHQ+CitBbiBPZ2cgT3B1cyBsb2dp
Y2FsIHN0cmVhbSBjb250YWlucyBleGFjdGx5IHR3byBtYW5kYXRvcnkgaGVhZGVyIHBhY2tldHM6
CisgYW4gaWRlbnRpZmljYXRpb24gaGVhZGVyIGFuZCBhIGNvbW1lbnQgaGVhZGVyLgorPC90Pgor
Cis8c2VjdGlvbiBhbmNob3I9ImlkX2hlYWRlciIgdGl0bGU9IklkZW50aWZpY2F0aW9uIEhlYWRl
ciI+CisKKzxmaWd1cmUgYW5jaG9yPSJpZF9oZWFkZXJfcGFja2V0IiB0aXRsZT0iSUQgSGVhZGVy
IFBhY2tldCIgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAg
ICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAy
IDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICdPJyAgICAgIHwgICAgICAncCcg
ICAgICB8ICAgICAgJ3UnICAgICAgfCAgICAgICdzJyAgICAgIHwKKystKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAg
J0gnICAgICAgfCAgICAgICdlJyAgICAgIHwgICAgICAnYScgICAgICB8ICAgICAgJ2QnICAgICAg
fAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSsKK3wgIFZlcnNpb24gPSAxICB8IENoYW5uZWwgQ291bnQgfCAgICAgICAgICAg
UHJlLXNraXAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgIElu
cHV0IFNhbXBsZSBSYXRlIChIeikgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAg
T3V0cHV0IEdhaW4gKFE3LjggaW4gZEIpICAgIHwgTWFwcGluZyBGYW1pbHl8ICAgICAgICAgICAg
ICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKyAg
ICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgT3B0aW9uYWwgQ2hhbm5l
bCBNYXBwaW5nIFRhYmxlLi4uICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitUaGUgZmllbGRzIGluIHRoZSBpZGVudGlm
aWNhdGlvbiAoSUQpIGhlYWRlciBoYXZlIHRoZSBmb2xsb3dpbmcgbWVhbmluZzoKKzxsaXN0IHN0
eWxlPSJudW1iZXJzIj4KKzx0Pk1hZ2ljIFNpZ25hdHVyZToKKzx2c3BhY2UgYmxhbmtMaW5lcz0i
MSIvPgorVGhpcyBpcyBhbiA4LW9jdGV0ICg2NC1iaXQpIGZpZWxkIHRoYXQgYWxsb3dzIGNvZGVj
IGlkZW50aWZpY2F0aW9uIGFuZCBpcworIGh1bWFuLXJlYWRhYmxlLgorSXQgY29udGFpbnMsIGlu
IG9yZGVyLCB0aGUgbWFnaWMgbnVtYmVyczoKKzxsaXN0IHN0eWxlPSJlbXB0eSI+Cis8dD4weDRG
ICdPJzwvdD4KKzx0PjB4NzAgJ3AnPC90PgorPHQ+MHg3NSAndSc8L3Q+Cis8dD4weDczICdzJzwv
dD4KKzx0PjB4NDggJ0gnPC90PgorPHQ+MHg2NSAnZSc8L3Q+Cis8dD4weDYxICdhJzwvdD4KKzx0
PjB4NjQgJ2QnPC90PgorPC9saXN0PgorU3RhcnRpbmcgd2l0aCAiT3AiIGhlbHBzIGRpc3Rpbmd1
aXNoIGl0IGZyb20gYXVkaW8gZGF0YSBwYWNrZXRzLCBhcyB0aGlzIGlzIGFuCisgaW52YWxpZCBU
T0Mgc2VxdWVuY2UuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0PlZlcnNpb24g
KDggYml0cywgdW5zaWduZWQpOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGUgdmVyc2lv
biBudW1iZXIgTVVTVCBhbHdheXMgYmUgJzEnIGZvciB0aGlzIHZlcnNpb24gb2YgdGhlIGVuY2Fw
c3VsYXRpb24KKyBzcGVjaWZpY2F0aW9uLgorSW1wbGVtZW50YXRpb25zIFNIT1VMRCB0cmVhdCBz
dHJlYW1zIHdoZXJlIHRoZSB1cHBlciBmb3VyIGJpdHMgb2YgdGhlIHZlcnNpb24KKyBudW1iZXIg
bWF0Y2ggdGhhdCBvZiBhIHJlY29nbml6ZWQgc3BlY2lmaWNhdGlvbiBhcyBiYWNrd2FyZHMtY29t
cGF0aWJsZSB3aXRoCisgdGhhdCBzcGVjaWZpY2F0aW9uLgorVGhhdCBpcywgdGhlIHZlcnNpb24g
bnVtYmVyIGNhbiBiZSBzcGxpdCBpbnRvICJtYWpvciIgYW5kICJtaW5vciIgdmVyc2lvbgorIHN1
Yi1maWVsZHMsIHdpdGggY2hhbmdlcyB0byB0aGUgIm1pbm9yIiBzdWItZmllbGQgKGluIHRoZSBs
b3dlciBmb3VyIGJpdHMpCisgc2lnbmFsaW5nIGNvbXBhdGlibGUgY2hhbmdlcy4KK0ZvciBleGFt
cGxlLCBhbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzIHNwZWNpZmljYXRpb24gU0hPVUxEIGFjY2Vw
dCBhbnkgc3RyZWFtCisgd2l0aCBhIHZlcnNpb24gbnVtYmVyIG9mICcxNScgb3IgbGVzcywgYW5k
IFNIT1VMRCBhc3N1bWUgYW55IHN0cmVhbSB3aXRoIGEKKyB2ZXJzaW9uIG51bWJlciAnMTYnIG9y
IGdyZWF0ZXIgaXMgaW5jb21wYXRpYmxlLgorVGhlIGluaXRpYWwgdmVyc2lvbiAnMScgd2FzIGNo
b3NlbiB0byBrZWVwIGltcGxlbWVudGF0aW9ucyBmcm9tIHJlbHlpbmcgb24gdGhpcworIG9jdGV0
IGFzIGEgbnVsbCB0ZXJtaW5hdG9yIGZvciB0aGUgIk9wdXNIZWFkIiBzdHJpbmcuCis8dnNwYWNl
IGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0Pk91dHB1dCBDaGFubmVsIENvdW50ICdDJyAoOCBi
aXRzLCB1bnNpZ25lZCk6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgdGhlIG51
bWJlciBvZiBvdXRwdXQgY2hhbm5lbHMuCitUaGlzIG1pZ2h0IGJlIGRpZmZlcmVudCB0aGFuIHRo
ZSBudW1iZXIgb2YgZW5jb2RlZCBjaGFubmVscywgd2hpY2ggY2FuIGNoYW5nZQorIG9uIGEgcGFj
a2V0LWJ5LXBhY2tldCBiYXNpcy4KK1RoaXMgdmFsdWUgTVVTVCBOT1QgYmUgemVyby4KK1RoZSBt
YXhpbXVtIGFsbG93YWJsZSB2YWx1ZSBkZXBlbmRzIG9uIHRoZSBjaGFubmVsIG1hcHBpbmcgZmFt
aWx5LCBhbmQgbWlnaHQgYmUKKyBhcyBsYXJnZSBhcyAyNTUuCitTZWUgPHhyZWYgdGFyZ2V0PSJj
aGFubmVsX21hcHBpbmciLz4gZm9yIGRldGFpbHMuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4K
KzwvdD4KKzx0PlByZS1za2lwICgxNiBiaXRzLCB1bnNpZ25lZCwgbGl0dGxlCisgZW5kaWFuKToK
Kzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhpcyBpcyB0aGUgbnVtYmVyIG9mIHNhbXBsZXMg
KGF0IDQ4Jm5ic3A7a0h6KSB0byBkaXNjYXJkIGZyb20gdGhlIGRlY29kZXIKKyBvdXRwdXQgd2hl
biBzdGFydGluZyBwbGF5YmFjaywgYW5kIGFsc28gdGhlIG51bWJlciB0byBzdWJ0cmFjdCBmcm9t
IGEgcGFnZSdzCisgZ3JhbnVsZSBwb3NpdGlvbiB0byBjYWxjdWxhdGUgaXRzIFBDTSBzYW1wbGUg
cG9zaXRpb24uCitXaGVuIGNyb3BwaW5nIHRoZSBiZWdpbm5pbmcgb2YgZXhpc3RpbmcgT2dnIE9w
dXMgc3RyZWFtcywgYSBwcmUtc2tpcCBvZiBhdAorIGxlYXN0IDMsODQwJm5ic3A7c2FtcGxlcyAo
ODAmbmJzcDttcykgaXMgUkVDT01NRU5ERUQgdG8gZW5zdXJlIGNvbXBsZXRlCisgY29udmVyZ2Vu
Y2UgaW4gdGhlIGRlY29kZXIuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0Pklu
cHV0IFNhbXBsZSBSYXRlICgzMiBiaXRzLCB1bnNpZ25lZCwgbGl0dGxlCisgZW5kaWFuKToKKzx2
c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhpcyBpcyB0aGUgc2FtcGxlIHJhdGUgb2YgdGhlIG9y
aWdpbmFsIGlucHV0IChiZWZvcmUgZW5jb2RpbmcpLCBpbiBIei4KK1RoaXMgZmllbGQgaXMgPHNw
YW54IHN0eWxlPSJlbXBoIj5ub3Q8L3NwYW54PiB0aGUgc2FtcGxlIHJhdGUgdG8gdXNlIGZvcgor
IHBsYXliYWNrIG9mIHRoZSBlbmNvZGVkIGRhdGEuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4K
K09wdXMgY2FuIHN3aXRjaCBiZXR3ZWVuIGludGVybmFsIGF1ZGlvIGJhbmR3aWR0aHMgb2YgNCwg
NiwgOCwgMTIsIGFuZAorIDIwJm5ic3A7a0h6LgorRWFjaCBwYWNrZXQgaW4gdGhlIHN0cmVhbSBj
YW4gaGF2ZSBhIGRpZmZlcmVudCBhdWRpbyBiYW5kd2lkdGguCitSZWdhcmRsZXNzIG9mIHRoZSBh
dWRpbyBiYW5kd2lkdGgsIHRoZSByZWZlcmVuY2UgZGVjb2RlciBzdXBwb3J0cyBkZWNvZGluZyBh
bnkKKyBzdHJlYW0gYXQgYSBzYW1wbGUgcmF0ZSBvZiA4LCAxMiwgMTYsIDI0LCBvciA0OCZuYnNw
O2tIei4KK1RoZSBvcmlnaW5hbCBzYW1wbGUgcmF0ZSBvZiB0aGUgYXVkaW8gcGFzc2VkIHRvIHRo
ZSBlbmNvZGVyIGlzIG5vdCBwcmVzZXJ2ZWQKKyBieSB0aGUgbG9zc3kgY29tcHJlc3Npb24uCis8
dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0FuIE9nZyBPcHVzIHBsYXllciBTSE9VTEQgc2VsZWN0
IHRoZSBwbGF5YmFjayBzYW1wbGUgcmF0ZSBhY2NvcmRpbmcgdG8gdGhlCisgZm9sbG93aW5nIHBy
b2NlZHVyZToKKzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0PklmIHRoZSBoYXJkd2FyZSBzdXBw
b3J0cyA0OCZuYnNwO2tIeiBwbGF5YmFjaywgZGVjb2RlIGF0IDQ4Jm5ic3A7a0h6LjwvdD4KKzx0
Pk90aGVyd2lzZSwgaWYgdGhlIGhhcmR3YXJlJ3MgaGlnaGVzdCBhdmFpbGFibGUgc2FtcGxlIHJh
dGUgaXMgYSBzdXBwb3J0ZWQKKyByYXRlLCBkZWNvZGUgYXQgdGhpcyBzYW1wbGUgcmF0ZS48L3Q+
Cis8dD5PdGhlcndpc2UsIGlmIHRoZSBoYXJkd2FyZSdzIGhpZ2hlc3QgYXZhaWxhYmxlIHNhbXBs
ZSByYXRlIGlzIGxlc3MgdGhhbgorIDQ4Jm5ic3A7a0h6LCBkZWNvZGUgYXQgdGhlIG5leHQgaGln
aGVyIE9wdXMgc3VwcG9ydGVkIHJhdGUgYWJvdmUgdGhlIGhpZ2hlc3QKKyBhdmFpbGFibGUgaGFy
ZHdhcmUgcmF0ZSBhbmQgcmVzYW1wbGUuPC90PgorPHQ+T3RoZXJ3aXNlLCBkZWNvZGUgYXQgNDgm
bmJzcDtrSHogYW5kIHJlc2FtcGxlLjwvdD4KKzwvbGlzdD4KK0hvd2V2ZXIsIHRoZSAnSW5wdXQg
U2FtcGxlIFJhdGUnIGZpZWxkIGFsbG93cyB0aGUgbXV4ZXIgdG8gcGFzcyB0aGUgc2FtcGxlCisg
cmF0ZSBvZiB0aGUgb3JpZ2luYWwgaW5wdXQgc3RyZWFtIGFzIG1ldGFkYXRhLgorVGhpcyBpcyB1
c2VmdWwgd2hlbiB0aGUgdXNlciByZXF1aXJlcyB0aGUgb3V0cHV0IHNhbXBsZSByYXRlIHRvIG1h
dGNoIHRoZQorIGlucHV0IHNhbXBsZSByYXRlLgorRm9yIGV4YW1wbGUsIHdoZW4gbm90IHBsYXlp
bmcgdGhlIG91dHB1dCwgYW4gaW1wbGVtZW50YXRpb24gd3JpdGluZyBQQ00gZm9ybWF0Cisgc2Ft
cGxlcyB0byBkaXNrIG1pZ2h0IGNob29zZSB0byByZXNhbXBsZSB0aGUgYXVkaW8gYmFjayB0byB0
aGUgb3JpZ2luYWwgaW5wdXQKKyBzYW1wbGUgcmF0ZSB0byByZWR1Y2Ugc3VycHJpc2UgdG8gdGhl
IHVzZXIsIHdobyBtaWdodCByZWFzb25hYmx5IGV4cGVjdCB0byBnZXQKKyBiYWNrIGEgZmlsZSB3
aXRoIHRoZSBzYW1lIHNhbXBsZSByYXRlLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitBIHZh
bHVlIG9mIHplcm8gaW5kaWNhdGVzICd1bnNwZWNpZmllZCcuCitNdXhlcnMgU0hPVUxEIHdyaXRl
IHRoZSBhY3R1YWwgaW5wdXQgc2FtcGxlIHJhdGUgb3IgemVybywgYnV0IGltcGxlbWVudGF0aW9u
cworIHdoaWNoIGRvIHNvbWV0aGluZyB3aXRoIHRoaXMgZmllbGQgU0hPVUxEIHRha2UgY2FyZSB0
byBiZWhhdmUgc2FuZWx5IGlmIGdpdmVuCisgY3JhenkgdmFsdWVzIChlLmcuLCBkbyBub3QgYWN0
dWFsbHkgdXBzYW1wbGUgdGhlIG91dHB1dCB0byAxMCBNSHogaWYKKyByZXF1ZXN0ZWQpLgorSW1w
bGVtZW50YXRpb25zIFNIT1VMRCBzdXBwb3J0IGlucHV0IHNhbXBsZSByYXRlcyBiZXR3ZWVuIDgm
bmJzcDtrSHogYW5kCisgMTkyJm5ic3A7a0h6IChpbmNsdXNpdmUpLgorUmF0ZXMgb3V0c2lkZSB0
aGlzIHJhbmdlIE1BWSBiZSBpZ25vcmVkIGJ5IGZhbGxpbmcgYmFjayB0byB0aGUgZGVmYXVsdCBy
YXRlIG9mCisgNDgmbmJzcDtrSHogaW5zdGVhZC4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgor
PC90PgorPHQ+T3V0cHV0IEdhaW4gKDE2IGJpdHMsIHNpZ25lZCwgbGl0dGxlIGVuZGlhbik6Cis8
dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgYSBnYWluIHRvIGJlIGFwcGxpZWQgd2hl
biBkZWNvZGluZy4KK0l0IGlzIDIwKmxvZzEwIG9mIHRoZSBmYWN0b3IgYnkgd2hpY2ggdG8gc2Nh
bGUgdGhlIGRlY29kZXIgb3V0cHV0IHRvIGFjaGlldmUKKyB0aGUgZGVzaXJlZCBwbGF5YmFjayB2
b2x1bWUsIHN0b3JlZCBpbiBhIDE2LWJpdCwgc2lnbmVkLCB0d28ncyBjb21wbGVtZW50CisgZml4
ZWQtcG9pbnQgdmFsdWUgd2l0aCA4IGZyYWN0aW9uYWwgYml0cyAoaS5lLiwKKyBRNy44Jm5ic3A7
PHhyZWYgdGFyZ2V0PSJxLW5vdGF0aW9uIi8+KS4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgor
VG8gYXBwbHkgdGhlIGdhaW4sIGFuIGltcGxlbWVudGF0aW9uIGNvdWxkIHVzZQorPGZpZ3VyZSBh
bGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworc2FtcGxl
ICo9IHBvdygxMCwgb3V0cHV0X2dhaW4vKDIwLjAqMjU2KSkgLAorXV0+PC9hcnR3b3JrPgorPC9m
aWd1cmU+Cisgd2hlcmUgb3V0cHV0X2dhaW4gaXMgdGhlIHJhdyAxNi1iaXQgdmFsdWUgZnJvbSB0
aGUgaGVhZGVyLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitQbGF5ZXJzIGFuZCBtZWRpYSBm
cmFtZXdvcmtzIFNIT1VMRCBhcHBseSBpdCBieSBkZWZhdWx0LgorSWYgYSBwbGF5ZXIgY2hvb3Nl
cyB0byBhcHBseSBhbnkgdm9sdW1lIGFkanVzdG1lbnQgb3IgZ2FpbiBtb2RpZmljYXRpb24sIHN1
Y2gKKyBhcyB0aGUgUjEyOF9UUkFDS19HQUlOIChzZWUgPHhyZWYgdGFyZ2V0PSJjb21tZW50X2hl
YWRlciIvPiksIHRoZSBhZGp1c3RtZW50CisgTVVTVCBiZSBhcHBsaWVkIGluIGFkZGl0aW9uIHRv
IHRoaXMgb3V0cHV0IGdhaW4gaW4gb3JkZXIgdG8gYWNoaWV2ZSBwbGF5YmFjaworIGF0IHRoZSBu
b3JtYWxpemVkIHZvbHVtZS4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorQSBtdXhlciBTSE9V
TEQgc2V0IHRoaXMgZmllbGQgdG8gemVybywgYW5kIGluc3RlYWQgYXBwbHkgYW55IGdhaW4gcHJp
b3IgdG8KKyBlbmNvZGluZywgd2hlbiB0aGlzIGlzIHBvc3NpYmxlIGFuZCBkb2VzIG5vdCBjb25m
bGljdCB3aXRoIHRoZSB1c2VyJ3Mgd2lzaGVzLgorQSBub256ZXJvIG91dHB1dCBnYWluIGluZGlj
YXRlcyB0aGUgZ2FpbiB3YXMgYWRqdXN0ZWQgYWZ0ZXIgZW5jb2RpbmcsIG9yIHRoYXQKKyBhIHVz
ZXIgd2lzaGVkIHRvIGFkanVzdCB0aGUgZ2FpbiBmb3IgcGxheWJhY2sgd2hpbGUgcHJlc2Vydmlu
ZyB0aGUgYWJpbGl0eQorIHRvIHJlY292ZXIgdGhlIG9yaWdpbmFsIHNpZ25hbCBhbXBsaXR1ZGUu
Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0FsdGhvdWdoIHRoZSBvdXRwdXQgZ2FpbiBoYXMg
ZW5vcm1vdXMgcmFuZ2UgKCsvLSAxMjggZEIsIGVub3VnaCB0byBhbXBsaWZ5CisgaW5hdWRpYmxl
IHNvdW5kcyB0byB0aGUgdGhyZXNob2xkIG9mIHBoeXNpY2FsIHBhaW4pLCBtb3N0IGFwcGxpY2F0
aW9ucyBjYW4KKyBvbmx5IHJlYXNvbmFibHkgdXNlIGEgc21hbGwgcG9ydGlvbiBvZiB0aGlzIHJh
bmdlIGFyb3VuZCB6ZXJvLgorVGhlIGxhcmdlIHJhbmdlIHNlcnZlcyBpbiBwYXJ0IHRvIGVuc3Vy
ZSB0aGF0IGdhaW4gY2FuIGFsd2F5cyBiZSBsb3NzbGVzc2x5CisgdHJhbnNmZXJyZWQgYmV0d2Vl
biBPcHVzSGVhZCBhbmQgUjEyOCBnYWluIHRhZ3MgKHNlZSBiZWxvdykgd2l0aG91dAorIHNhdHVy
YXRpbmcuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0PkNoYW5uZWwgTWFwcGlu
ZyBGYW1pbHkgKDggYml0cywgdW5zaWduZWQpOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitU
aGlzIG9jdGV0IGluZGljYXRlcyB0aGUgb3JkZXIgYW5kIHNlbWFudGljIG1lYW5pbmcgb2YgdGhl
IG91dHB1dCBjaGFubmVscy4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorRWFjaCBjdXJyZW50
bHkgc3BlY2lmaWVkIHZhbHVlIG9mIHRoaXMgb2N0ZXQgaW5kaWNhdGVzIGEgbWFwcGluZyBmYW1p
bHksIHdoaWNoCisgZGVmaW5lcyBhIHNldCBvZiBhbGxvd2VkIGNoYW5uZWwgY291bnRzLCBhbmQg
dGhlIG9yZGVyZWQgc2V0IG9mIGNoYW5uZWwgbmFtZXMKKyBmb3IgZWFjaCBhbGxvd2VkIGNoYW5u
ZWwgY291bnQuCitUaGUgZGV0YWlscyBhcmUgZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0iY2hh
bm5lbF9tYXBwaW5nIi8+LgorPC90PgorPHQ+Q2hhbm5lbCBNYXBwaW5nIFRhYmxlOgorVGhpcyB0
YWJsZSBkZWZpbmVzIHRoZSBtYXBwaW5nIGZyb20gZW5jb2RlZCBzdHJlYW1zIHRvIG91dHB1dCBj
aGFubmVscy4KK0l0cyBjb250ZW50cyBhcmUgc3BlY2lmaWVkIGluIDx4cmVmIHRhcmdldD0iY2hh
bm5lbF9tYXBwaW5nIi8+LgorPC90PgorPC9saXN0PgorPC90PgorCis8dD4KK0FsbCBmaWVsZHMg
aW4gdGhlIElEIGhlYWRlcnMgYXJlIFJFUVVJUkVELCBleGNlcHQgZm9yIHRoZSBjaGFubmVsIG1h
cHBpbmcKKyB0YWJsZSwgd2hpY2ggTVVTVCBiZSBvbWl0dGVkIHdoZW4gdGhlIGNoYW5uZWwgbWFw
cGluZyBmYW1pbHkgaXMgMCwgYnV0CisgaXMgUkVRVUlSRUQgb3RoZXJ3aXNlLgorSW1wbGVtZW50
YXRpb25zIFNIT1VMRCB0cmVhdCBhIHN0cmVhbSBhcyBpbnZhbGlkIGlmIGl0IGNvbnRhaW5zIGFu
IElEIGhlYWRlcgorIHRoYXQgZG9lcyBub3QgaGF2ZSBlbm91Z2ggZGF0YSBmb3IgdGhlc2UgZmll
bGRzLCBldmVuIGlmIGl0IGNvbnRhaW4gYSB2YWxpZAorIE1hZ2ljIFNpZ25hdHVyZS4KK0Z1dHVy
ZSB2ZXJzaW9ucyBvZiB0aGlzIHNwZWNpZmljYXRpb24sIGV2ZW4gYmFja3dhcmRzLWNvbXBhdGli
bGUgdmVyc2lvbnMsCisgbWlnaHQgaW5jbHVkZSBhZGRpdGlvbmFsIGZpZWxkcyBpbiB0aGUgSUQg
aGVhZGVyLgorSWYgYW4gSUQgaGVhZGVyIGhhcyBhIGNvbXBhdGlibGUgbWFqb3IgdmVyc2lvbiwg
YnV0IGEgbGFyZ2VyIG1pbm9yIHZlcnNpb24sCisgYW4gaW1wbGVtZW50YXRpb24gTVVTVCBOT1Qg
dHJlYXQgaXQgYXMgaW52YWxpZCBmb3IgY29udGFpbmluZyBhZGRpdGlvbmFsIGRhdGEKKyBub3Qg
c3BlY2lmaWVkIGhlcmUsIHByb3ZpZGVkIGl0IHN0aWxsIGNvbXBsZXRlcyBvbiB0aGUgZmlyc3Qg
cGFnZS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJjaGFubmVsX21hcHBpbmciIHRpdGxlPSJD
aGFubmVsIE1hcHBpbmciPgorPHQ+CitBbiBPZ2cgT3B1cyBzdHJlYW0gYWxsb3dzIG1hcHBpbmcg
b25lIG51bWJlciBvZiBPcHVzIHN0cmVhbXMgKE4pIHRvIGEgcG9zc2libHkKKyBsYXJnZXIgbnVt
YmVyIG9mIGRlY29kZWQgY2hhbm5lbHMgKE0mbmJzcDsrJm5ic3A7TikgdG8geWV0IGFub3RoZXIg
bnVtYmVyIG9mCisgb3V0cHV0IGNoYW5uZWxzIChDKSwgd2hpY2ggbWlnaHQgYmUgbGFyZ2VyIG9y
IHNtYWxsZXIgdGhhbiB0aGUgbnVtYmVyIG9mCisgZGVjb2RlZCBjaGFubmVscy4KK1RoZSBvcmRl
ciBhbmQgbWVhbmluZyBvZiB0aGVzZSBjaGFubmVscyBhcmUgZGVmaW5lZCBieSBhIGNoYW5uZWwg
bWFwcGluZywKKyB3aGljaCBjb25zaXN0cyBvZiB0aGUgJ2NoYW5uZWwgbWFwcGluZyBmYW1pbHkn
IG9jdGV0IGFuZCwgZm9yIGNoYW5uZWwgbWFwcGluZworIGZhbWlsaWVzIG90aGVyIHRoYW4gZmFt
aWx5Jm5ic3A7MCwgYSBjaGFubmVsIG1hcHBpbmcgdGFibGUsIGFzIGlsbHVzdHJhdGVkIGluCisg
PHhyZWYgdGFyZ2V0PSJjaGFubmVsX21hcHBpbmdfdGFibGUiLz4uCis8L3Q+CisKKzxmaWd1cmUg
YW5jaG9yPSJjaGFubmVsX21hcHBpbmdfdGFibGUiIHRpdGxlPSJDaGFubmVsIE1hcHBpbmcgVGFi
bGUiCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsK
KyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAg
ICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMg
NCA1IDYgNyA4IDkgMCAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICArLSstKy0rLSstKy0rLSstKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCBTdHJlYW0gQ291bnQgIHwKKystKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8IENvdXBsZWQg
Q291bnQgfCAgICAgICAgICAgICAgQ2hhbm5lbCBNYXBwaW5nLi4uICAgICAgICAgICAgICAgOgor
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8dD4KK1RoZSBmaWVsZHMgaW4g
dGhlIGNoYW5uZWwgbWFwcGluZyB0YWJsZSBoYXZlIHRoZSBmb2xsb3dpbmcgbWVhbmluZzoKKzxs
aXN0IHN0eWxlPSJudW1iZXJzIiBjb3VudGVyPSI4Ij4KKzx0PlN0cmVhbSBDb3VudCAnTicgKDgg
Yml0cywgdW5zaWduZWQpOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGlzIGlzIHRoZSB0
b3RhbCBudW1iZXIgb2Ygc3RyZWFtcyBlbmNvZGVkIGluIGVhY2ggT2dnIHBhY2tldC4KK1RoaXMg
dmFsdWUgaXMgbmVjZXNzYXJ5IHRvIGNvcnJlY3RseSBwYXJzZSB0aGUgcGFja2VkIE9wdXMgcGFj
a2V0cyBpbnNpZGUgYW4KKyBPZ2cgcGFja2V0LCBhcyBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0
PSJwYWNrZXRfb3JnYW5pemF0aW9uIi8+LgorVGhpcyB2YWx1ZSBNVVNUIE5PVCBiZSB6ZXJvLCBh
cyB3aXRob3V0IGF0IGxlYXN0IG9uZSBPcHVzIHBhY2tldCB3aXRoIGEgdmFsaWQKKyBUT0Mgc2Vx
dWVuY2UsIGEgZGVtdXhlciBjYW5ub3QgcmVjb3ZlciB0aGUgZHVyYXRpb24gb2YgYW4gT2dnIHBh
Y2tldC4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorRm9yIGNoYW5uZWwgbWFwcGluZyBmYW1p
bHkmbmJzcDswLCB0aGlzIHZhbHVlIGRlZmF1bHRzIHRvIDEsIGFuZCBpcyBub3QgY29kZWQuCis8
dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0PkNvdXBsZWQgU3RyZWFtIENvdW50ICdN
JyAoOCBiaXRzLCB1bnNpZ25lZCk6CitUaGlzIGlzIHRoZSBudW1iZXIgb2Ygc3RyZWFtcyB3aG9z
ZSBkZWNvZGVycyBhcmUgdG8gYmUgY29uZmlndXJlZCB0byBwcm9kdWNlCisgdHdvIGNoYW5uZWxz
IChzdGVyZW8pLgorVGhpcyBNVVNUIGJlIG5vIGxhcmdlciB0aGFuIHRoZSB0b3RhbCBudW1iZXIg
b2Ygc3RyZWFtcywgTi4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorRWFjaCBwYWNrZXQgaW4g
YW4gT3B1cyBzdHJlYW0gaGFzIGFuIGludGVybmFsIGNoYW5uZWwgY291bnQgb2YgMSBvciAyLCB3
aGljaAorIGNhbiBjaGFuZ2UgZnJvbSBwYWNrZXQgdG8gcGFja2V0LgorVGhpcyBpcyBzZWxlY3Rl
ZCBieSB0aGUgZW5jb2RlciBkZXBlbmRpbmcgb24gdGhlIGJpdHJhdGUgYW5kIHRoZSBhdWRpbyBi
ZWluZworIGVuY29kZWQuCitUaGUgb3JpZ2luYWwgY2hhbm5lbCBjb3VudCBvZiB0aGUgYXVkaW8g
cGFzc2VkIHRvIHRoZSBlbmNvZGVyIGlzIG5vdAorIG5lY2Vzc2FyaWx5IHByZXNlcnZlZCBieSB0
aGUgbG9zc3kgY29tcHJlc3Npb24uCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1JlZ2FyZGxl
c3Mgb2YgdGhlIGludGVybmFsIGNoYW5uZWwgY291bnQsIGFueSBPcHVzIHN0cmVhbSBjYW4gYmUg
ZGVjb2RlZCBhcworIG1vbm8gKGEgc2luZ2xlIGNoYW5uZWwpIG9yIHN0ZXJlbyAodHdvIGNoYW5u
ZWxzKSBieSBhcHByb3ByaWF0ZSBpbml0aWFsaXphdGlvbgorIG9mIHRoZSBkZWNvZGVyLgorVGhl
ICdjb3VwbGVkIHN0cmVhbSBjb3VudCcgZmllbGQgaW5kaWNhdGVzIHRoYXQgdGhlIGRlY29kZXJz
IGZvciB0aGUgZmlyc3QgTQorIE9wdXMgc3RyZWFtcyBhcmUgdG8gYmUgaW5pdGlhbGl6ZWQgZm9y
IHN0ZXJlbyAodHdvLWNoYW5uZWwpIG91dHB1dCwgYW5kIHRoZQorIHJlbWFpbmluZyAoTiZuYnNw
Oy0mbmJzcDtNKSBkZWNvZGVycyBhcmUgdG8gYmUgaW5pdGlhbGl6ZWQgZm9yIG1vbm8gKGEgc2lu
Z2xlCisgY2hhbm5lbCkgb25seS4KK1RoZSB0b3RhbCBudW1iZXIgb2YgZGVjb2RlZCBjaGFubmVs
cywgKE0mbmJzcDsrJm5ic3A7TiksIE1VU1QgYmUgbm8gbGFyZ2VyIHRoYW4KKyAyNTUsIGFzIHRo
ZXJlIGlzIG5vIHdheSB0byBpbmRleCBtb3JlIGNoYW5uZWxzIHRoYW4gdGhhdCBpbiB0aGUgY2hh
bm5lbAorIG1hcHBpbmcuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0ZvciBjaGFubmVsIG1h
cHBpbmcgZmFtaWx5Jm5ic3A7MCwgdGhpcyB2YWx1ZSBkZWZhdWx0cyB0byAoQyZuYnNwOy0mbmJz
cDsxKQorIChpLmUuLCAwIGZvciBtb25vIGFuZCAxIGZvciBzdGVyZW8pLCBhbmQgaXMgbm90IGNv
ZGVkLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5DaGFubmVsIE1hcHBpbmcg
KDgqQyBiaXRzKToKK1RoaXMgY29udGFpbnMgb25lIG9jdGV0IHBlciBvdXRwdXQgY2hhbm5lbCwg
aW5kaWNhdGluZyB3aGljaCBkZWNvZGVkIGNoYW5uZWwKKyBpcyB0byBiZSB1c2VkIGZvciBlYWNo
IG9uZS4KK0xldCAnaW5kZXgnIGJlIHRoZSB2YWx1ZSBvZiB0aGlzIG9jdGV0IGZvciBhIHBhcnRp
Y3VsYXIgb3V0cHV0IGNoYW5uZWwuCitUaGlzIHZhbHVlIE1VU1QgZWl0aGVyIGJlIHNtYWxsZXIg
dGhhbiAoTSZuYnNwOysmbmJzcDtOKSwgb3IgYmUgdGhlIHNwZWNpYWwKKyB2YWx1ZSAyNTUuCitJ
ZiAnaW5kZXgnIGlzIGxlc3MgdGhhbiAyKk0sIHRoZSBvdXRwdXQgTVVTVCBiZSB0YWtlbiBmcm9t
IGRlY29kaW5nIHN0cmVhbQorICgnaW5kZXgnLzIpIGFzIHN0ZXJlbyBhbmQgc2VsZWN0aW5nIHRo
ZSBsZWZ0IGNoYW5uZWwgaWYgJ2luZGV4JyBpcyBldmVuLCBhbmQKKyB0aGUgcmlnaHQgY2hhbm5l
bCBpZiAnaW5kZXgnIGlzIG9kZC4KK0lmICdpbmRleCcgaXMgMipNIG9yIGxhcmdlciwgYnV0IGxl
c3MgdGhhbiAyNTUsIHRoZSBvdXRwdXQgTVVTVCBiZSB0YWtlbiBmcm9tCisgZGVjb2Rpbmcgc3Ry
ZWFtICgnaW5kZXgnJm5ic3A7LSZuYnNwO00pIGFzIG1vbm8uCitJZiAnaW5kZXgnIGlzIDI1NSwg
dGhlIGNvcnJlc3BvbmRpbmcgb3V0cHV0IGNoYW5uZWwgTVVTVCBjb250YWluIHB1cmUgc2lsZW5j
ZS4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhlIG51bWJlciBvZiBvdXRwdXQgY2hhbm5l
bHMsIEMsIGlzIG5vdCBjb25zdHJhaW5lZCB0byBtYXRjaCB0aGUgbnVtYmVyIG9mCisgZGVjb2Rl
ZCBjaGFubmVscyAoTSZuYnNwOysmbmJzcDtOKS4KK0Egc2luZ2xlIGluZGV4IHZhbHVlIE1BWSBh
cHBlYXIgbXVsdGlwbGUgdGltZXMsIGkuZS4sIHRoZSBzYW1lIGRlY29kZWQgY2hhbm5lbAorIG1p
Z2h0IGJlIG1hcHBlZCB0byBtdWx0aXBsZSBvdXRwdXQgY2hhbm5lbHMuCitTb21lIGRlY29kZWQg
Y2hhbm5lbHMgbWlnaHQgbm90IGJlIGFzc2lnbmVkIHRvIGFueSBvdXRwdXQgY2hhbm5lbCwgYXMg
d2VsbC4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorRm9yIGNoYW5uZWwgbWFwcGluZyBmYW1p
bHkmbmJzcDswLCB0aGUgZmlyc3QgaW5kZXggZGVmYXVsdHMgdG8gMCwgYW5kIGlmCisgQyZuYnNw
Oz09Jm5ic3A7MiwgdGhlIHNlY29uZCBpbmRleCBkZWZhdWx0cyB0byAxLgorTmVpdGhlciBpbmRl
eCBpcyBjb2RlZC4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitBZnRlciBwcm9kdWNpbmcg
dGhlIG91dHB1dCBjaGFubmVscywgdGhlIGNoYW5uZWwgbWFwcGluZyBmYW1pbHkgZGV0ZXJtaW5l
cyB0aGUKKyBzZW1hbnRpYyBtZWFuaW5nIG9mIGVhY2ggb25lLgorVGhlcmUgYXJlIHRocmVlIGRl
ZmluZWQgbWFwcGluZyBmYW1pbGllcyBpbiB0aGlzIHNwZWNpZmljYXRpb24uCis8L3Q+CisKKzxz
ZWN0aW9uIGFuY2hvcj0iY2hhbm5lbF9tYXBwaW5nXzAiIHRpdGxlPSJDaGFubmVsIE1hcHBpbmcg
RmFtaWx5IDAiPgorPHQ+CitBbGxvd2VkIG51bWJlcnMgb2YgY2hhbm5lbHM6IDEgb3IgMi4KK1JU
UCBtYXBwaW5nLgorVGhpcyBpcyB0aGUgc2FtZSBjaGFubmVsIGludGVycHJldGF0aW9uIGFzIDx4
cmVmIHRhcmdldD0iUkZDNzU4NyIvPi4KKzwvdD4KKzx0PgorPGxpc3Qgc3R5bGU9InN5bWJvbHMi
PgorPHQ+MSBjaGFubmVsOiBtb25vcGhvbmljIChtb25vKS48L3Q+Cis8dD4yIGNoYW5uZWxzOiBz
dGVyZW8gKGxlZnQsIHJpZ2h0KS48L3Q+Cis8L2xpc3Q+CitTcGVjaWFsIG1hcHBpbmc6IFRoaXMg
Y2hhbm5lbCBtYXBwaW5nIHZhbHVlIGFsc28KKyBpbmRpY2F0ZXMgdGhhdCB0aGUgY29udGVudHMg
Y29uc2lzdHMgb2YgYSBzaW5nbGUgT3B1cyBzdHJlYW0gdGhhdCBpcyBzdGVyZW8gaWYKKyBhbmQg
b25seSBpZiBDJm5ic3A7PT0mbmJzcDsyLCB3aXRoIHN0cmVhbSBpbmRleCZuYnNwOzAgbWFwcGVk
IHRvIG91dHB1dAorIGNoYW5uZWwmbmJzcDswIChtb25vLCBvciBsZWZ0IGNoYW5uZWwpIGFuZCBz
dHJlYW0gaW5kZXgmbmJzcDsxIG1hcHBlZCB0bworIG91dHB1dCBjaGFubmVsJm5ic3A7MSAocmln
aHQgY2hhbm5lbCkgaWYgc3RlcmVvLgorV2hlbiB0aGUgJ2NoYW5uZWwgbWFwcGluZyBmYW1pbHkn
IG9jdGV0IGhhcyB0aGlzIHZhbHVlLCB0aGUgY2hhbm5lbCBtYXBwaW5nCisgdGFibGUgTVVTVCBi
ZSBvbWl0dGVkIGZyb20gdGhlIElEIGhlYWRlciBwYWNrZXQuCis8L3Q+Cis8L3NlY3Rpb24+CisK
KzxzZWN0aW9uIGFuY2hvcj0iY2hhbm5lbF9tYXBwaW5nXzEiIHRpdGxlPSJDaGFubmVsIE1hcHBp
bmcgRmFtaWx5IDEiPgorPHQ+CitBbGxvd2VkIG51bWJlcnMgb2YgY2hhbm5lbHM6IDEuLi44Lgor
Vm9yYmlzIGNoYW5uZWwgb3JkZXIgKHNlZSBiZWxvdykuCis8L3Q+Cis8dD4KK0VhY2ggY2hhbm5l
bCBpcyBhc3NpZ25lZCB0byBhIHNwZWFrZXIgbG9jYXRpb24gaW4gYSBjb252ZW50aW9uYWwgc3Vy
cm91bmQKKyBhcnJhbmdlbWVudC4KK1NwZWNpZmljIGxvY2F0aW9ucyBkZXBlbmQgb24gdGhlIG51
bWJlciBvZiBjaGFubmVscywgYW5kIGFyZSBnaXZlbiBiZWxvdworIGluIG9yZGVyIG9mIHRoZSBj
b3JyZXNwb25kaW5nIGNoYW5uZWwgaW5kaWNlcy4KKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKyAg
PHQ+MSBjaGFubmVsOiBtb25vcGhvbmljIChtb25vKS48L3Q+CisgIDx0PjIgY2hhbm5lbHM6IHN0
ZXJlbyAobGVmdCwgcmlnaHQpLjwvdD4KKyAgPHQ+MyBjaGFubmVsczogbGluZWFyIHN1cnJvdW5k
IChsZWZ0LCBjZW50ZXIsIHJpZ2h0KTwvdD4KKyAgPHQ+NCBjaGFubmVsczogcXVhZHJhcGhvbmlj
IChmcm9udCZuYnNwO2xlZnQsIGZyb250Jm5ic3A7cmlnaHQsIHJlYXImbmJzcDtsZWZ0LCByZWFy
Jm5ic3A7cmlnaHQpLjwvdD4KKyAgPHQ+NSBjaGFubmVsczogNS4wIHN1cnJvdW5kIChmcm9udCZu
YnNwO2xlZnQsIGZyb250Jm5ic3A7Y2VudGVyLCBmcm9udCZuYnNwO3JpZ2h0LCByZWFyJm5ic3A7
bGVmdCwgcmVhciZuYnNwO3JpZ2h0KS48L3Q+CisgIDx0PjYgY2hhbm5lbHM6IDUuMSBzdXJyb3Vu
ZCAoZnJvbnQmbmJzcDtsZWZ0LCBmcm9udCZuYnNwO2NlbnRlciwgZnJvbnQmbmJzcDtyaWdodCwg
cmVhciZuYnNwO2xlZnQsIHJlYXImbmJzcDtyaWdodCwgTEZFKS48L3Q+CisgIDx0PjcgY2hhbm5l
bHM6IDYuMSBzdXJyb3VuZCAoZnJvbnQmbmJzcDtsZWZ0LCBmcm9udCZuYnNwO2NlbnRlciwgZnJv
bnQmbmJzcDtyaWdodCwgc2lkZSZuYnNwO2xlZnQsIHNpZGUmbmJzcDtyaWdodCwgcmVhciZuYnNw
O2NlbnRlciwgTEZFKS48L3Q+CisgIDx0PjggY2hhbm5lbHM6IDcuMSBzdXJyb3VuZCAoZnJvbnQm
bmJzcDtsZWZ0LCBmcm9udCZuYnNwO2NlbnRlciwgZnJvbnQmbmJzcDtyaWdodCwgc2lkZSZuYnNw
O2xlZnQsIHNpZGUmbmJzcDtyaWdodCwgcmVhciZuYnNwO2xlZnQsIHJlYXImbmJzcDtyaWdodCwg
TEZFKTwvdD4KKzwvbGlzdD4KKzwvdD4KKzx0PgorVGhpcyBzZXQgb2Ygc3Vycm91bmQgb3B0aW9u
cyBhbmQgc3BlYWtlciBsb2NhdGlvbiBvcmRlcmluZ3MgaXMgdGhlIHNhbWUKKyBhcyB0aG9zZSB1
c2VkIGJ5IHRoZSBWb3JiaXMgY29kZWMgPHhyZWYgdGFyZ2V0PSJ2b3JiaXMtbWFwcGluZyIvPi4K
K1RoZSBvcmRlcmluZyBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgb25lIHVzZWQgYnkgdGhlCisgV0FW
RSA8eHJlZiB0YXJnZXQ9IndhdmUtbXVsdGljaGFubmVsIi8+IGFuZAorIEZyZWUgTG9zc2xlc3Mg
QXVkaW8gQ29kZWMgKEZMQUMpIDx4cmVmIHRhcmdldD0iZmxhYyIvPiBmb3JtYXRzLAorIHNvIGNv
cnJlY3Qgb3JkZXJpbmcgcmVxdWlyZXMgcGVybXV0YXRpb24gb2YgdGhlIG91dHB1dCBjaGFubmVs
cyB3aGVuIGRlY29kaW5nCisgdG8gb3IgZW5jb2RpbmcgZnJvbSB0aG9zZSBmb3JtYXRzLgorJ0xG
RScgaGVyZSByZWZlcnMgdG8gYSBMb3cgRnJlcXVlbmN5IEVmZmVjdHMgY2hhbm5lbCwgb2Z0ZW4g
bWFwcGVkIHRvIGEKKyAgc3Vid29vZmVyIHdpdGggbm8gcGFydGljdWxhciBzcGF0aWFsIHBvc2l0
aW9uLgorSW1wbGVtZW50YXRpb25zIFNIT1VMRCBpZGVudGlmeSAnc2lkZScgb3IgJ3JlYXInIHNw
ZWFrZXIgbG9jYXRpb25zIHdpdGgKKyAnc3Vycm91bmQnIGFuZCAnYmFjaycgYXMgYXBwcm9wcmlh
dGUgd2hlbiBpbnRlcmZhY2luZyB3aXRoIGF1ZGlvIGZvcm1hdHMKKyBvciBzeXN0ZW1zIHdoaWNo
IHByZWZlciB0aGF0IHRlcm1pbm9sb2d5LgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBh
bmNob3I9ImNoYW5uZWxfbWFwcGluZ18yNTUiCisgdGl0bGU9IkNoYW5uZWwgTWFwcGluZyBGYW1p
bHkgMjU1Ij4KKzx0PgorQWxsb3dlZCBudW1iZXJzIG9mIGNoYW5uZWxzOiAxLi4uMjU1LgorTm8g
ZGVmaW5lZCBjaGFubmVsIG1lYW5pbmcuCis8L3Q+Cis8dD4KK0NoYW5uZWxzIGFyZSB1bmlkZW50
aWZpZWQuCitHZW5lcmFsLXB1cnBvc2UgcGxheWVycyBTSE9VTEQgTk9UIGF0dGVtcHQgdG8gcGxh
eSB0aGVzZSBzdHJlYW1zLgorT2ZmbGluZSBpbXBsZW1lbnRhdGlvbnMgTUFZIGRlaW50ZXJsZWF2
ZSB0aGUgb3V0cHV0IGludG8gc2VwYXJhdGUgUENNIGZpbGVzLAorIG9uZSBwZXIgY2hhbm5lbC4K
K0ltcGxlbWVudGF0aW9ucyBTSE9VTEQgTk9UIHByb2R1Y2Ugb3V0cHV0IGZvciBjaGFubmVscyBt
YXBwZWQgdG8gc3RyZWFtIGluZGV4CisgMjU1IChwdXJlIHNpbGVuY2UpIHVubGVzcyB0aGV5IGhh
dmUgbm8gb3RoZXIgd2F5IHRvIGluZGljYXRlIHRoZSBpbmRleCBvZgorIG5vbi1zaWxlbnQgY2hh
bm5lbHMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iY2hhbm5lbF9tYXBw
aW5nX3VuZGVmaW5lZCIKKyB0aXRsZT0iVW5kZWZpbmVkIENoYW5uZWwgTWFwcGluZ3MiPgorPHQ+
CitUaGUgcmVtYWluaW5nIGNoYW5uZWwgbWFwcGluZyBmYW1pbGllcyAoMi4uLjI1NCkgYXJlIHJl
c2VydmVkLgorQSBkZW11eGVyIGltcGxlbWVudGF0aW9uIGVuY291bnRlcmluZyBhIHJlc2VydmVk
IGNoYW5uZWwgbWFwcGluZyBmYW1pbHkgdmFsdWUKKyBTSE9VTEQgYWN0IGFzIHRob3VnaCB0aGUg
dmFsdWUgaXMgMjU1LgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImRvd25t
aXgiIHRpdGxlPSJEb3dubWl4aW5nIj4KKzx0PgorQW4gT2dnIE9wdXMgcGxheWVyIE1VU1Qgc3Vw
cG9ydCBhbnkgdmFsaWQgY2hhbm5lbCBtYXBwaW5nIHdpdGggYSBjaGFubmVsCisgbWFwcGluZyBm
YW1pbHkgb2YgMCBvciAxLCBldmVuIGlmIHRoZSBudW1iZXIgb2YgY2hhbm5lbHMgZG9lcyBub3Qg
bWF0Y2ggdGhlCisgcGh5c2ljYWxseSBjb25uZWN0ZWQgYXVkaW8gaGFyZHdhcmUuCitQbGF5ZXJz
IFNIT1VMRCBwZXJmb3JtIGNoYW5uZWwgbWl4aW5nIHRvIGluY3JlYXNlIG9yIHJlZHVjZSB0aGUg
bnVtYmVyIG9mCisgY2hhbm5lbHMgYXMgbmVlZGVkLgorPC90PgorCis8dD4KK0ltcGxlbWVudGF0
aW9ucyBNQVkgdXNlIHRoZSBtYXRyaWNlcyBpbgorIEZpZ3VyZXMmbmJzcDs8eHJlZiB0YXJnZXQ9
ImRvd25taXgtbWF0cml4LTMiIGZvcm1hdD0iY291bnRlciIvPgorIHRocm91Z2gmbmJzcDs8eHJl
ZiB0YXJnZXQ9ImRvd25taXgtbWF0cml4LTgiIGZvcm1hdD0iY291bnRlciIvPiB0byBpbXBsZW1l
bnQKKyBkb3dubWl4aW5nIGZyb20gbXVsdGljaGFubmVsIGZpbGVzIHVzaW5nCisgPHhyZWYgdGFy
Z2V0PSJjaGFubmVsX21hcHBpbmdfMSI+Q2hhbm5lbCBNYXBwaW5nIEZhbWlseSAxPC94cmVmPiwg
d2hpY2ggYXJlCisga25vd24gdG8gZ2l2ZSBhY2NlcHRhYmxlIHJlc3VsdHMgZm9yIHN0ZXJlby4K
K01hdHJpY2VzIGZvciAzIGFuZCA0IGNoYW5uZWxzIGFyZSBub3JtYWxpemVkIHNvIGVhY2ggY29l
ZmZpY2llbnQgcm93IHN1bXMKKyB0byAxIHRvIGF2b2lkIGNsaXBwaW5nLgorRm9yIDUgb3IgbW9y
ZSBjaGFubmVscyB0aGV5IGFyZSBub3JtYWxpemVkIHRvIDIgYXMgYSBjb21wcm9taXNlIGJldHdl
ZW4KKyBjbGlwcGluZyBhbmQgZHluYW1pYyByYW5nZSByZWR1Y3Rpb24uCis8L3Q+Cis8dD4KK0lu
IHRoZXNlIG1hdHJpY2VzIHRoZSBmcm9udCBsZWZ0IGFuZCBmcm9udCByaWdodCBjaGFubmVscyBh
cmUgZ2VuZXJhbGx5CitwYXNzZWQgdGhyb3VnaCBkaXJlY3RseS4KK1doZW4gYSBzdXJyb3VuZCBj
aGFubmVsIGlzIHNwbGl0IGJldHdlZW4gYm90aCB0aGUgbGVmdCBhbmQgcmlnaHQgc3RlcmVvCisg
Y2hhbm5lbHMsIGNvZWZmaWNpZW50cyBhcmUgY2hvc2VuIHNvIHRoZWlyIHNxdWFyZXMgc3VtIHRv
IDEsIHdoaWNoCisgaGVscHMgcHJlc2VydmUgdGhlIHBlcmNlaXZlZCBpbnRlbnNpdHkuCitSZWFy
IGNoYW5uZWxzIGFyZSBtaXhlZCBtb3JlIGRpZmZ1c2VseSBvciBhdHRlbnVhdGVkIHRvIG1haW50
YWluIGZvY3VzCisgb24gdGhlIGZyb250IGNoYW5uZWxzLgorPC90PgorCis8ZmlndXJlIGFuY2hv
cj0iZG93bm1peC1tYXRyaXgtMyIKKyB0aXRsZT0iU3RlcmVvIGRvd25taXggbWF0cml4IGZvciB0
aGUgbGluZWFyIHN1cnJvdW5kIGNoYW5uZWwgbWFwcGluZyIKKyBhbGlnbj0iY2VudGVyIj4KKzxh
cnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworTCBvdXRwdXQgPSAoIDAuNTg1Nzg2ICog
bGVmdCArIDAuNDE0MjE0ICogY2VudGVyICAgICAgICAgICAgICAgICAgICApCitSIG91dHB1dCA9
ICggICAgICAgICAgICAgICAgICAgMC40MTQyMTQgKiBjZW50ZXIgKyAwLjU4NTc4NiAqIHJpZ2h0
ICkKK11dPjwvYXJ0d29yaz4KKzxwb3N0YW1ibGU+CitFeGFjdCBjb2VmZmljaWVudCB2YWx1ZXMg
YXJlIDEgYW5kIDEvc3FydCgyKSwgbXVsdGlwbGllZCBieQorIDEvKDEmbmJzcDsrJm5ic3A7MS9z
cXJ0KDIpKSBmb3Igbm9ybWFsaXphdGlvbi4KKzwvcG9zdGFtYmxlPgorPC9maWd1cmU+CisKKzxm
aWd1cmUgYW5jaG9yPSJkb3dubWl4LW1hdHJpeC00IgorIHRpdGxlPSJTdGVyZW8gZG93bm1peCBt
YXRyaXggZm9yIHRoZSBxdWFkcmFwaG9uaWMgY2hhbm5lbCBtYXBwaW5nIgorIGFsaWduPSJjZW50
ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisvICAgICAgICAgIFwgICAv
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgLyBGTCBcCit8IEwgb3V0cHV0
IHwgICB8IDAuNDIyNjUwIDAuMDAwMDAwIDAuMzY2MDI1IDAuMjExMzI1IHwgfCBGUiB8Cit8IFIg
b3V0cHV0IHwgPSB8IDAuMDAwMDAwIDAuNDIyNjUwIDAuMjExMzI1IDAuMzY2MDI1IHwgfCBSTCB8
CitcICAgICAgICAgIC8gICBcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8g
XCBSUiAvCitdXT48L2FydHdvcms+Cis8cG9zdGFtYmxlPgorRXhhY3QgY29lZmZpY2llbnQgdmFs
dWVzIGFyZSAxLCBzcXJ0KDMpLzIgYW5kIDEvMiwgbXVsdGlwbGllZCBieQorIDEvKDEmbmJzcDsr
Jm5ic3A7c3FydCgzKS8yJm5ic3A7KyZuYnNwOzEvMikgZm9yIG5vcm1hbGl6YXRpb24uCis8L3Bv
c3RhbWJsZT4KKzwvZmlndXJlPgorCis8ZmlndXJlIGFuY2hvcj0iZG93bm1peC1tYXRyaXgtNSIK
KyB0aXRsZT0iU3RlcmVvIGRvd25taXggbWF0cml4IGZvciB0aGUgNS4wIHN1cnJvdW5kIG1hcHBp
bmciCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8gRkwgXAorLyAgIFwgICAvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwgfCBGQyB8Cit8IEwgfCAgIHwgMC42NTA4MDIgMC40NjAxODYgMC4wMDAwMDAgMC41
NjM2MTEgMC4zMjU0MDEgfCB8IEZSIHwKK3wgUiB8ID0gfCAwLjAwMDAwMCAwLjQ2MDE4NiAwLjY1
MDgwMiAwLjMyNTQwMSAwLjU2MzYxMSB8IHwgUkwgfAorXCAgIC8gICBcICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gfCBSUiB8CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcICAgIC8KK11dPjwvYXJ0
d29yaz4KKzxwb3N0YW1ibGU+CitFeGFjdCBjb2VmZmljaWVudCB2YWx1ZXMgYXJlIDEsIDEvc3Fy
dCgyKSwgc3FydCgzKS8yIGFuZCAxLzIsIG11bHRpcGxpZWQgYnkKKyAyLygxJm5ic3A7KyZuYnNw
OzEvc3FydCgyKSZuYnNwOysmbmJzcDtzcXJ0KDMpLzImbmJzcDsrJm5ic3A7MS8yKQorIGZvciBu
b3JtYWxpemF0aW9uLgorPC9wb3N0YW1ibGU+Cis8L2ZpZ3VyZT4KKworPGZpZ3VyZSBhbmNob3I9
ImRvd25taXgtbWF0cml4LTYiCisgdGl0bGU9IlN0ZXJlbyBkb3dubWl4IG1hdHJpeCBmb3IgdGhl
IDUuMSBzdXJyb3VuZCBtYXBwaW5nIgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgL0ZMIFwKKy8gXCAgIC8gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCB8RkMgfAorfEx8ICAgfCAw
LjUyOTA2NyAwLjM3NDEwNyAwLjAwMDAwMCAwLjQ1ODE4NiAwLjI2NDUzNCAwLjM3NDEwNyB8IHxG
UiB8Cit8UnwgPSB8IDAuMDAwMDAwIDAuMzc0MTA3IDAuNTI5MDY3IDAuMjY0NTM0IDAuNDU4MTg2
IDAuMzc0MTA3IHwgfFJMIHwKK1wgLyAgIFwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyB8UlIgfAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxMRkUvCitdXT48L2FydHdv
cms+Cis8cG9zdGFtYmxlPgorRXhhY3QgY29lZmZpY2llbnQgdmFsdWVzIGFyZSAxLCAxL3NxcnQo
MiksIHNxcnQoMykvMiBhbmQgMS8yLCBtdWx0aXBsaWVkIGJ5CisyLygxJm5ic3A7KyZuYnNwOzEv
c3FydCgyKSZuYnNwOysmbmJzcDtzcXJ0KDMpLzImbmJzcDsrJm5ic3A7MS8yICsgMS9zcXJ0KDIp
KQorIGZvciBub3JtYWxpemF0aW9uLgorPC9wb3N0YW1ibGU+Cis8L2ZpZ3VyZT4KKworPGZpZ3Vy
ZSBhbmNob3I9ImRvd25taXgtbWF0cml4LTciCisgdGl0bGU9IlN0ZXJlbyBkb3dubWl4IG1hdHJp
eCBmb3IgdGhlIDYuMSBzdXJyb3VuZCBtYXBwaW5nIgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgLyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgfCAwLjQ1NTMxMCAwLjMy
MTk1MyAwLjAwMDAwMCAwLjM5NDMxMCAwLjIyNzY1NSAwLjI3ODgxOSAwLjMyMTk1MyB8CisgfCAw
LjAwMDAwMCAwLjMyMTk1MyAwLjQ1NTMxMCAwLjIyNzY1NSAwLjM5NDMxMCAwLjI3ODgxOSAwLjMy
MTk1MyB8CisgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvCitdXT48L2FydHdvcms+Cis8cG9zdGFtYmxlPgorRXhhY3QgY29l
ZmZpY2llbnQgdmFsdWVzIGFyZSAxLCAxL3NxcnQoMiksIHNxcnQoMykvMiwgMS8yIGFuZAorIHNx
cnQoMykvMi9zcXJ0KDIpLCBtdWx0aXBsaWVkIGJ5CisgMi8oMSZuYnNwOysmbmJzcDsxL3NxcnQo
MikmbmJzcDsrJm5ic3A7c3FydCgzKS8yJm5ic3A7KyZuYnNwOzEvMiArCisgc3FydCgzKS8yL3Nx
cnQoMikgKyAxL3NxcnQoMikpIGZvciBub3JtYWxpemF0aW9uLgorVGhlIGNvZWZmaWNpZW50cyBh
cmUgaW4gdGhlIHNhbWUgb3JkZXIgYXMgaW4gPHhyZWYgdGFyZ2V0PSJjaGFubmVsX21hcHBpbmdf
MSIgLz4sCisgYW5kIHRoZSBtYXRyaWNlcyBhYm92ZS4KKzwvcG9zdGFtYmxlPgorPC9maWd1cmU+
CisKKzxmaWd1cmUgYW5jaG9yPSJkb3dubWl4LW1hdHJpeC04IgorIHRpdGxlPSJTdGVyZW8gZG93
bm1peCBtYXRyaXggZm9yIHRoZSA3LjEgc3Vycm91bmQgbWFwcGluZyIKKyBhbGlnbj0iY2VudGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworLyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorfCAuMzg4
NjMxIC4yNzQ4MDQgLjAwMDAwMCAuMzM2NTY1IC4xOTQzMTYgLjMzNjU2NSAuMTk0MzE2IC4yNzQ4
MDQgfAorfCAuMDAwMDAwIC4yNzQ4MDQgLjM4ODYzMSAuMTk0MzE2IC4zMzY1NjUgLjE5NDMxNiAu
MzM2NTY1IC4yNzQ4MDQgfAorXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLworXV0+PC9hcnR3b3JrPgorPHBvc3RhbWJsZT4K
K0V4YWN0IGNvZWZmaWNpZW50IHZhbHVlcyBhcmUgMSwgMS9zcXJ0KDIpLCBzcXJ0KDMpLzIgYW5k
IDEvMiwgbXVsdGlwbGllZCBieQorIDIvKDImbmJzcDsrJm5ic3A7Mi9zcXJ0KDIpJm5ic3A7KyZu
YnNwO3NxcnQoMykpIGZvciBub3JtYWxpemF0aW9uLgorVGhlIGNvZWZmaWNpZW50cyBhcmUgaW4g
dGhlIHNhbWUgb3JkZXIgYXMgaW4gPHhyZWYgdGFyZ2V0PSJjaGFubmVsX21hcHBpbmdfMSIgLz4s
CisgYW5kIHRoZSBtYXRyaWNlcyBhYm92ZS4KKzwvcG9zdGFtYmxlPgorPC9maWd1cmU+CisKKzwv
c2VjdGlvbj4KKworPC9zZWN0aW9uPiA8IS0tIGVuZCBjaGFubmVsX21hcHBpbmdfdGFibGUgLS0+
CisKKzwvc2VjdGlvbj4gPCEtLSBlbmQgaWRfaGVhZGVyIC0tPgorCis8c2VjdGlvbiBhbmNob3I9
ImNvbW1lbnRfaGVhZGVyIiB0aXRsZT0iQ29tbWVudCBIZWFkZXIiPgorCis8ZmlndXJlIGFuY2hv
cj0iY29tbWVudF9oZWFkZXJfcGFja2V0IiB0aXRsZT0iQ29tbWVudCBIZWFkZXIgUGFja2V0Igor
IGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAg
ICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAg
MworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2
IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAnTycgICAgICB8ICAgICAgJ3AnICAgICAgfCAg
ICAgICd1JyAgICAgIHwgICAgICAncycgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICdUJyAgICAg
IHwgICAgICAnYScgICAgICB8ICAgICAgJ2cnICAgICAgfCAgICAgICdzJyAgICAgIHwKKystKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rCit8ICAgICAgICAgICAgICAgICAgICAgVmVuZG9yIFN0cmluZyBMZW5ndGggICAgICAgICAg
ICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAgICAg
ICAgVmVuZG9yIFN0cmluZy4uLiAgICAgICAgICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rCit8ICAgICAgICAgICAgICAgICAgIFVzZXIgQ29tbWVudCBMaXN0IExlbmd0aCAgICAg
ICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgIFVzZXIgQ29tbWVu
dCAjMCBTdHJpbmcgTGVuZ3RoICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwK
KzogICAgICAgICAgICAgICAgICAgVXNlciBDb21tZW50ICMwIFN0cmluZy4uLiAgICAgICAgICAg
ICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgIFVzZXIgQ29t
bWVudCAjMSBTdHJpbmcgTGVuZ3RoICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworOiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDoKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8dD4KK1RoZSBjb21tZW50IGhlYWRlciBj
b25zaXN0cyBvZiBhIDY0LWJpdCBtYWdpYyBzaWduYXR1cmUsIGZvbGxvd2VkIGJ5IGRhdGEgaW4K
KyB0aGUgc2FtZSBmb3JtYXQgYXMgdGhlIDx4cmVmIHRhcmdldD0idm9yYmlzLWNvbW1lbnQiLz4g
aGVhZGVyIHVzZWQgaW4gT2dnCisgVm9yYmlzLCBleGNlcHQgKGxpa2UgT2dnIFRoZW9yYSBhbmQg
U3BlZXgpIHRoZSBmaW5hbCAiZnJhbWluZyBiaXQiIHNwZWNpZmllZAorIGluIHRoZSBWb3JiaXMg
c3BlYyBpcyBub3QgcHJlc2VudC4KKzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0Pk1hZ2ljIFNp
Z25hdHVyZToKKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhpcyBpcyBhbiA4LW9jdGV0ICg2
NC1iaXQpIGZpZWxkIHRoYXQgYWxsb3dzIGNvZGVjIGlkZW50aWZpY2F0aW9uIGFuZCBpcworIGh1
bWFuLXJlYWRhYmxlLgorSXQgY29udGFpbnMsIGluIG9yZGVyLCB0aGUgbWFnaWMgbnVtYmVyczoK
KzxsaXN0IHN0eWxlPSJlbXB0eSI+Cis8dD4weDRGICdPJzwvdD4KKzx0PjB4NzAgJ3AnPC90Pgor
PHQ+MHg3NSAndSc8L3Q+Cis8dD4weDczICdzJzwvdD4KKzx0PjB4NTQgJ1QnPC90PgorPHQ+MHg2
MSAnYSc8L3Q+Cis8dD4weDY3ICdnJzwvdD4KKzx0PjB4NzMgJ3MnPC90PgorPC9saXN0PgorU3Rh
cnRpbmcgd2l0aCAiT3AiIGhlbHBzIGRpc3Rpbmd1aXNoIGl0IGZyb20gYXVkaW8gZGF0YSBwYWNr
ZXRzLCBhcyB0aGlzIGlzIGFuCisgaW52YWxpZCBUT0Mgc2VxdWVuY2UuCis8dnNwYWNlIGJsYW5r
TGluZXM9IjEiLz4KKzwvdD4KKzx0PlZlbmRvciBTdHJpbmcgTGVuZ3RoICgzMiBiaXRzLCB1bnNp
Z25lZCwgbGl0dGxlIGVuZGlhbik6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgZmll
bGQgZ2l2ZXMgdGhlIGxlbmd0aCBvZiB0aGUgZm9sbG93aW5nIHZlbmRvciBzdHJpbmcsIGluIG9j
dGV0cy4KK0l0IE1VU1QgTk9UIGluZGljYXRlIHRoYXQgdGhlIHZlbmRvciBzdHJpbmcgaXMgbG9u
Z2VyIHRoYW4gdGhlIHJlc3Qgb2YgdGhlCisgcGFja2V0LgorPHZzcGFjZSBibGFua0xpbmVzPSIx
Ii8+Cis8L3Q+Cis8dD5WZW5kb3IgU3RyaW5nICh2YXJpYWJsZSBsZW5ndGgsIFVURi04IHZlY3Rv
cik6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgYSBzaW1wbGUgaHVtYW4tcmVh
ZGFibGUgdGFnIGZvciB2ZW5kb3IgaW5mb3JtYXRpb24sIGVuY29kZWQgYXMgYSBVVEYtOAorIHN0
cmluZyZuYnNwOzx4cmVmIHRhcmdldD0iUkZDMzYyOSIvPi4KK05vIHRlcm1pbmF0aW5nIG51bGwg
b2N0ZXQgaXMgbmVjZXNzYXJ5LgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGlzIHRhZyBp
cyBpbnRlbmRlZCB0byBpZGVudGlmeSB0aGUgY29kZWMgZW5jb2RlciBhbmQgZW5jYXBzdWxhdGlv
bgorIGltcGxlbWVudGF0aW9ucywgZm9yIHRyYWNpbmcgZGlmZmVyZW5jZXMgaW4gdGVjaG5pY2Fs
IGJlaGF2aW9yLgorVXNlci1mYWNpbmcgYXBwbGljYXRpb25zIGNhbiB1c2UgdGhlICdFTkNPREVS
JyB1c2VyIGNvbW1lbnQgdGFnIHRvIGlkZW50aWZ5CisgdGhlbXNlbHZlcy4KKzx2c3BhY2UgYmxh
bmtMaW5lcz0iMSIvPgorPC90PgorPHQ+VXNlciBDb21tZW50IExpc3QgTGVuZ3RoICgzMiBiaXRz
LCB1bnNpZ25lZCwgbGl0dGxlIGVuZGlhbik6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1Ro
aXMgZmllbGQgaW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgdXNlci1zdXBwbGllZCBjb21tZW50cy4K
K0l0IE1BWSBpbmRpY2F0ZSB0aGVyZSBhcmUgemVybyB1c2VyLXN1cHBsaWVkIGNvbW1lbnRzLCBp
biB3aGljaCBjYXNlIHRoZXJlIGFyZQorIG5vIGFkZGl0aW9uYWwgZmllbGRzIGluIHRoZSBwYWNr
ZXQuCitJdCBNVVNUIE5PVCBpbmRpY2F0ZSB0aGF0IHRoZXJlIGFyZSBzbyBtYW55IGNvbW1lbnRz
IHRoYXQgdGhlIGNvbW1lbnQgc3RyaW5nCisgbGVuZ3RocyB3b3VsZCByZXF1aXJlIG1vcmUgZGF0
YSB0aGFuIGlzIGF2YWlsYWJsZSBpbiB0aGUgcmVzdCBvZiB0aGUgcGFja2V0LgorPHZzcGFjZSBi
bGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5Vc2VyIENvbW1lbnQgI2kgU3RyaW5nIExlbmd0aCAo
MzIgYml0cywgdW5zaWduZWQsIGxpdHRsZSBlbmRpYW4pOgorPHZzcGFjZSBibGFua0xpbmVzPSIx
Ii8+CitUaGlzIGZpZWxkIGdpdmVzIHRoZSBsZW5ndGggb2YgdGhlIGZvbGxvd2luZyB1c2VyIGNv
bW1lbnQgc3RyaW5nLCBpbiBvY3RldHMuCitUaGVyZSBpcyBvbmUgZm9yIGVhY2ggdXNlciBjb21t
ZW50IGluZGljYXRlZCBieSB0aGUgJ3VzZXIgY29tbWVudCBsaXN0IGxlbmd0aCcKKyBmaWVsZC4K
K0l0IE1VU1QgTk9UIGluZGljYXRlIHRoYXQgdGhlIHN0cmluZyBpcyBsb25nZXIgdGhhbiB0aGUg
cmVzdCBvZiB0aGUgcGFja2V0LgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5V
c2VyIENvbW1lbnQgI2kgU3RyaW5nICh2YXJpYWJsZSBsZW5ndGgsIFVURi04IHZlY3Rvcik6Cis8
dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgZmllbGQgY29udGFpbnMgYSBzaW5nbGUgdXNl
ciBjb21tZW50IGVuY29kZWQgYXMgYSBVVEYtOAorIHN0cmluZyZuYnNwOzx4cmVmIHRhcmdldD0i
UkZDMzYyOSIvPi4KK1RoZXJlIGlzIG9uZSBmb3IgZWFjaCB1c2VyIGNvbW1lbnQgaW5kaWNhdGVk
IGJ5IHRoZSAndXNlciBjb21tZW50IGxpc3QgbGVuZ3RoJworIGZpZWxkLgorPC90PgorPC9saXN0
PgorPC90PgorCis8dD4KK1RoZSB2ZW5kb3Igc3RyaW5nIGxlbmd0aCBhbmQgdXNlciBjb21tZW50
IGxpc3QgbGVuZ3RoIGFyZSBSRVFVSVJFRCwgYW5kCisgaW1wbGVtZW50YXRpb25zIFNIT1VMRCB0
cmVhdCBhIHN0cmVhbSBhcyBpbnZhbGlkIGlmIGl0IGNvbnRhaW5zIGEgY29tbWVudAorIGhlYWRl
ciB0aGF0IGRvZXMgbm90IGhhdmUgZW5vdWdoIGRhdGEgZm9yIHRoZXNlIGZpZWxkcywgb3IgdGhh
dCBkb2VzIG5vdAorIGNvbnRhaW4gZW5vdWdoIGRhdGEgZm9yIHRoZSBjb3JyZXNwb25kaW5nIHZl
bmRvciBzdHJpbmcgb3IgdXNlciBjb21tZW50cyB0aGV5CisgZGVzY3JpYmUuCitNYWtpbmcgdGhp
cyBjaGVjayBiZWZvcmUgYWxsb2NhdGluZyB0aGUgYXNzb2NpYXRlZCBtZW1vcnkgdG8gY29udGFp
biB0aGUgZGF0YQorIGhlbHBzIHByZXZlbnQgYSBwb3NzaWJsZSBEZW5pYWwtb2YtU2VydmljZSAo
RG9TKSBhdHRhY2sgZnJvbSBzbWFsbCBjb21tZW50CisgaGVhZGVycyB0aGF0IGNsYWltIHRvIGNv
bnRhaW4gc3RyaW5ncyBsb25nZXIgdGhhbiB0aGUgZW50aXJlIHBhY2tldCBvciBtb3JlCisgdXNl
ciBjb21tZW50cyB0aGFuIHRoYW4gY291bGQgcG9zc2libHkgZml0IGluIHRoZSBwYWNrZXQuCis8
L3Q+CisKKzx0PgorSW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSB1c2VyIGNvbW1lbnQgbGlzdCwg
dGhlIGNvbW1lbnQgaGVhZGVyIE1BWQorIGNvbnRhaW4gemVyby1wYWRkaW5nIG9yIG90aGVyIGJp
bmFyeSBkYXRhIHdoaWNoIGlzIG5vdCBzcGVjaWZpZWQgaGVyZS4KK0lmIHRoZSBsZWFzdC1zaWdu
aWZpY2FudCBiaXQgb2YgdGhlIGZpcnN0IGJ5dGUgb2YgdGhpcyBkYXRhIGlzIDEsIHRoZW4gZWRp
dG9ycworIFNIT1VMRCBwcmVzZXJ2ZSB0aGUgY29udGVudHMgb2YgdGhpcyBkYXRhIHdoZW4gdXBk
YXRpbmcgdGhlIHRhZ3MsIGJ1dCBpZiB0aGlzCisgYml0IGlzIDAsIGFsbCBzdWNoIGRhdGEgTUFZ
IGJlIHRyZWF0ZWQgYXMgcGFkZGluZywgYW5kIHRydW5jYXRlZCBvciBkaXNjYXJkZWQKKyBhcyBk
ZXNpcmVkLgorVGhpcyBhbGxvd3MgaW5mb3JtYWwgZXhwZXJpbWVudGF0aW9uIHdpdGggdGhlIGZv
cm1hdCBvZiB0aGlzIGJpbmFyeSBkYXRhIHVudGlsCisgaXQgY2FuIGJlIHNwZWNpZmllZCBsYXRl
ci4KKzwvdD4KKworPHQ+CitUaGUgY29tbWVudCBoZWFkZXIgY2FuIGJlIGFyYml0cmFyaWx5IGxh
cmdlIGFuZCBtaWdodCBiZSBzcHJlYWQgb3ZlciBhIGxhcmdlCisgbnVtYmVyIG9mIE9nZyBwYWdl
cy4KK0ltcGxlbWVudGF0aW9ucyBNVVNUIGF2b2lkIGF0dGVtcHRpbmcgdG8gYWxsb2NhdGUgZXhj
ZXNzaXZlIGFtb3VudHMgb2YgbWVtb3J5Cisgd2hlbiBwcmVzZW50ZWQgd2l0aCBhIHZlcnkgbGFy
Z2UgY29tbWVudCBoZWFkZXIuCitUbyBhY2NvbXBsaXNoIHRoaXMsIGltcGxlbWVudGF0aW9ucyBN
QVkgdHJlYXQgYSBzdHJlYW0gYXMgaW52YWxpZCBpZiBpdCBoYXMgYQorIGNvbW1lbnQgaGVhZGVy
IGxhcmdlciB0aGFuIDEyNSw4MjksMTIwJm5ic3A7b2N0ZXRzICgxMjAmbmJzcDtNQiksIGFuZCBN
QVkKKyBpZ25vcmUgaW5kaXZpZHVhbCBjb21tZW50cyB0aGF0IGFyZSBub3QgZnVsbHkgY29udGFp
bmVkIHdpdGhpbiB0aGUgZmlyc3QKKyA2MSw0NDAmbmJzcDtvY3RldHMgb2YgdGhlIGNvbW1lbnQg
aGVhZGVyLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImNvbW1lbnRfZm9ybWF0IiB0aXRsZT0i
VGFnIERlZmluaXRpb25zIj4KKzx0PgorVGhlIHVzZXIgY29tbWVudCBzdHJpbmdzIGZvbGxvdyB0
aGUgTkFNRT12YWx1ZSBmb3JtYXQgZGVzY3JpYmVkIGJ5CisgPHhyZWYgdGFyZ2V0PSJ2b3JiaXMt
Y29tbWVudCIvPiB3aXRoIHRoZSBzYW1lIHJlY29tbWVuZGVkIHRhZyBuYW1lczoKKyBBUlRJU1Qs
IFRJVExFLCBEQVRFLCBBTEJVTSwgYW5kIHNvIG9uLgorPC90PgorPHQ+CitUd28gbmV3IGNvbW1l
bnQgdGFncyBhcmUgaW50cm9kdWNlZCBoZXJlOgorPC90PgorCis8dD5GaXJzdCwgYW4gb3B0aW9u
YWwgZ2FpbiBmb3IgdHJhY2sgbm9ybWFsaXphdGlvbjo8L3Q+Cis8ZmlndXJlIGFsaWduPSJjZW50
ZXIiPgorPGFydHdvcmsgYWxpZ249ImxlZnQiPjwhW0NEQVRBWworUjEyOF9UUkFDS19HQUlOPS01
NzMKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPHQ+CisgcmVwcmVzZW50aW5nIHRoZSB2b2x1
bWUgc2hpZnQgbmVlZGVkIHRvIG5vcm1hbGl6ZSB0aGUgdHJhY2sncyB2b2x1bWUKKyBkdXJpbmcg
aXNvbGF0ZWQgcGxheWJhY2ssIGluIHJhbmRvbSBzaHVmZmxlLCBhbmQgc28gb24uCitUaGUgZ2Fp
biBpcyBhIFE3LjggZml4ZWQgcG9pbnQgbnVtYmVyIGluIGRCLCBhcyBpbiB0aGUgSUQgaGVhZGVy
J3MgJ291dHB1dAorIGdhaW4nIGZpZWxkLgorVGhpcyB0YWcgaXMgc2ltaWxhciB0byB0aGUgUkVQ
TEFZR0FJTl9UUkFDS19HQUlOIHRhZyBpbgorIFZvcmJpcyZuYnNwOzx4cmVmIHRhcmdldD0icmVw
bGF5LWdhaW4iLz4sIGV4Y2VwdCB0aGF0IHRoZSBub3JtYWwgdm9sdW1lCisgcmVmZXJlbmNlIGlz
IHRoZSA8eHJlZiB0YXJnZXQ9IkVCVS1SMTI4Ii8+IHN0YW5kYXJkLgorPC90PgorPHQ+U2Vjb25k
LCBhbiBvcHRpb25hbCBnYWluIGZvciBhbGJ1bSBub3JtYWxpemF0aW9uOjwvdD4KKzxmaWd1cmUg
YWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0ibGVmdCI+PCFbQ0RBVEFbCitSMTI4X0FM
QlVNX0dBSU49MTExCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx0PgorIHJlcHJlc2VudGlu
ZyB0aGUgdm9sdW1lIHNoaWZ0IG5lZWRlZCB0byBub3JtYWxpemUgdGhlIG92ZXJhbGwgdm9sdW1l
IHdoZW4KKyBwbGF5ZWQgYXMgcGFydCBvZiBhIHBhcnRpY3VsYXIgY29sbGVjdGlvbiBvZiB0cmFj
a3MuCitUaGUgZ2FpbiBpcyBhbHNvIGEgUTcuOCBmaXhlZCBwb2ludCBudW1iZXIgaW4gZEIsIGFz
IGluIHRoZSBJRCBoZWFkZXIncworICdvdXRwdXQgZ2FpbicgZmllbGQuCitUaGUgdmFsdWVzICct
NTczJyBhbmQgJzExMScgZ2l2ZW4gaGVyZSBhcmUganVzdCBleGFtcGxlcy4KKzwvdD4KKzx0Pgor
QW4gT2dnIE9wdXMgc3RyZWFtIE1VU1QgTk9UIGhhdmUgbW9yZSB0aGFuIG9uZSBvZiBlYWNoIG9m
IHRoZXNlIHRhZ3MsIGFuZCBpZgorIHByZXNlbnQgdGhlaXIgdmFsdWVzIE1VU1QgYmUgYW4gaW50
ZWdlciBmcm9tIC0zMjc2OCB0byAzMjc2NywgaW5jbHVzaXZlLAorIHJlcHJlc2VudGVkIGluIEFT
Q0lJIGFzIGEgYmFzZSAxMCBudW1iZXIgd2l0aCBubyB3aGl0ZXNwYWNlLgorQSBsZWFkaW5nICcr
JyBvciAnLScgY2hhcmFjdGVyIGlzIHZhbGlkLgorTGVhZGluZyB6ZXJvcyBhcmUgYWxzbyBwZXJt
aXR0ZWQsIGJ1dCB0aGUgdmFsdWUgTVVTVCBiZSByZXByZXNlbnRlZCBieQorIG5vIG1vcmUgdGhh
biA2IGNoYXJhY3RlcnMuCitPdGhlciBub24tZGlnaXQgY2hhcmFjdGVycyBNVVNUIE5PVCBiZSBw
cmVzZW50LgorPC90PgorPHQ+CitJZiBwcmVzZW50LCBSMTI4X1RSQUNLX0dBSU4gYW5kIFIxMjhf
QUxCVU1fR0FJTiBNVVNUIGNvcnJlY3RseSByZXByZXNlbnQKKyB0aGUgUjEyOCBub3JtYWxpemF0
aW9uIGdhaW4gcmVsYXRpdmUgdG8gdGhlICdvdXRwdXQgZ2FpbicgZmllbGQgc3BlY2lmaWVkCisg
aW4gdGhlIElEIGhlYWRlci4KK0lmIGEgcGxheWVyIGNob29zZXMgdG8gbWFrZSB1c2Ugb2YgdGhl
IFIxMjhfVFJBQ0tfR0FJTiB0YWcgb3IgdGhlCisgUjEyOF9BTEJVTV9HQUlOIHRhZywgaXQgTVVT
VCBhcHBseSB0aG9zZSBnYWlucworIDxzcGFueCBzdHlsZT0iZW1waCI+aW4gYWRkaXRpb248L3Nw
YW54PiB0byB0aGUgJ291dHB1dCBnYWluJyB2YWx1ZS4KK0lmIGEgdG9vbCBtb2RpZmllcyB0aGUg
SUQgaGVhZGVyJ3MgJ291dHB1dCBnYWluJyBmaWVsZCwgaXQgTVVTVCBhbHNvIHVwZGF0ZSBvcgor
IHJlbW92ZSB0aGUgUjEyOF9UUkFDS19HQUlOIGFuZCBSMTI4X0FMQlVNX0dBSU4gY29tbWVudCB0
YWdzIGlmIHByZXNlbnQuCitBIG11eGVyIFNIT1VMRCBwbGFjZSB0aGUgZ2FpbiBpdCB3YW50cyBv
dGhlciB0b29scyB0byB1c2UgYnkgZGVmYXVsdCBpbnRvIHRoZQorICdvdXRwdXQgZ2FpbicgZmll
bGQsIGFuZCBub3QgdGhlIGNvbW1lbnQgdGFnLgorPC90PgorPHQ+CitUbyBhdm9pZCBjb25mdXNp
b24gd2l0aCBtdWx0aXBsZSBub3JtYWxpemF0aW9uIHNjaGVtZXMsIGFuIE9wdXMgY29tbWVudCBo
ZWFkZXIKKyBTSE9VTEQgTk9UIGNvbnRhaW4gYW55IG9mIHRoZSBSRVBMQVlHQUlOX1RSQUNLX0dB
SU4sIFJFUExBWUdBSU5fVFJBQ0tfUEVBSywKKyBSRVBMQVlHQUlOX0FMQlVNX0dBSU4sIG9yIFJF
UExBWUdBSU5fQUxCVU1fUEVBSyB0YWdzLCB1bmxlc3MgdGhleSBhcmUgb25seQorIHRvIGJlIHVz
ZWQgaW4gc29tZSBjb250ZXh0IHdoZXJlIHRoZXJlIGlzIGd1YXJhbnRlZWQgdG8gYmUgbm8gc3Vj
aCBjb25mdXNpb24uCis8eHJlZiB0YXJnZXQ9IkVCVS1SMTI4Ii8+IG5vcm1hbGl6YXRpb24gaXMg
cHJlZmVycmVkIHRvIHRoZSBlYXJsaWVyCisgUkVQTEFZR0FJTiBzY2hlbWVzIGJlY2F1c2Ugb2Yg
aXRzIGNsZWFyIGRlZmluaXRpb24gYW5kIGFkb3B0aW9uIGJ5IGluZHVzdHJ5LgorUGVhayBub3Jt
YWxpemF0aW9ucyBhcmUgZGlmZmljdWx0IHRvIGNhbGN1bGF0ZSByZWxpYWJseSBmb3IgbG9zc3kg
Y29kZWNzCisgYmVjYXVzZSBvZiB2YXJpYXRpb24gaW4gZXhjdXJzaW9uIGhlaWdodHMgZHVlIHRv
IGRlY29kZXIgZGlmZmVyZW5jZXMuCitJbiB0aGUgYXV0aG9ycycgaW52ZXN0aWdhdGlvbnMgdGhl
eSB3ZXJlIG5vdCBhcHBsaWVkIGNvbnNpc3RlbnRseSBvciBicm9hZGx5CisgZW5vdWdoIHRvIG1l
cml0IGluY2x1c2lvbiBoZXJlLgorPC90PgorPC9zZWN0aW9uPiA8IS0tIGVuZCBjb21tZW50X2Zv
cm1hdCAtLT4KKzwvc2VjdGlvbj4gPCEtLSBlbmQgY29tbWVudF9oZWFkZXIgLS0+CisKKzwvc2Vj
dGlvbj4gPCEtLSBlbmQgaGVhZGVycyAtLT4KKworPHNlY3Rpb24gYW5jaG9yPSJwYWNrZXRfc2l6
ZV9saW1pdHMiIHRpdGxlPSJQYWNrZXQgU2l6ZSBMaW1pdHMiPgorPHQ+CitUZWNobmljYWxseSwg
dmFsaWQgT3B1cyBwYWNrZXRzIGNhbiBiZSBhcmJpdHJhcmlseSBsYXJnZSBkdWUgdG8gdGhlIHBh
ZGRpbmcKKyBmb3JtYXQsIGFsdGhvdWdoIHRoZSBhbW91bnQgb2Ygbm9uLXBhZGRpbmcgZGF0YSB0
aGV5IGNhbiBjb250YWluIGlzIGJvdW5kZWQuCitUaGVzZSBwYWNrZXRzIG1pZ2h0IGJlIHNwcmVh
ZCBvdmVyIGEgc2ltaWxhcmx5IGVub3Jtb3VzIG51bWJlciBvZiBPZ2cgcGFnZXMuCitXaGVuIGVu
Y29kaW5nLCBpbXBsZW1lbnRhdGlvbnMgU0hPVUxEIGxpbWl0IHRoZSB1c2Ugb2YgcGFkZGluZyBp
biBhdWRpbyBkYXRhCisgcGFja2V0cyB0byBubyBtb3JlIHRoYW4gaXMgbmVjZXNzYXJ5IHRvIG1h
a2UgYSB2YXJpYWJsZSBiaXRyYXRlIChWQlIpIHN0cmVhbQorIGNvbnN0YW50IGJpdHJhdGUgKENC
UiksIHVubGVzcyB0aGV5IGhhdmUgbm8gcmVhc29uYWJsZSB3YXkgdG8gZGV0ZXJtaW5lIHdoYXQK
KyBpcyBuZWNlc3NhcnkuCitEZW11eGVycyBTSE9VTEQgdHJlYXQgYXVkaW8gZGF0YSBwYWNrZXRz
IGFzIGludmFsaWQgKHRyZWF0IHRoZW0gYXMgaWYgdGhleSB3ZXJlCisgbWFsZm9ybWVkIE9wdXMg
cGFja2V0cyB3aXRoIGFuIGludmFsaWQgVE9DIHNlcXVlbmNlKSBpZiB0aGV5IGFyZSBsYXJnZXIg
dGhhbgorIDYxLDQ0MCZuYnNwO29jdGV0cyBwZXIgT3B1cyBzdHJlYW0sIHVubGVzcyB0aGV5IGhh
dmUgYSBzcGVjaWZpYyByZWFzb24gZm9yCisgYWxsb3dpbmcgZXh0cmEgcGFkZGluZy4KK1N1Y2gg
cGFja2V0cyBuZWNlc3NhcmlseSBjb250YWluIG1vcmUgcGFkZGluZyB0aGFuIG5lZWRlZCB0byBt
YWtlIGEgc3RyZWFtIENCUi4KK0RlbXV4ZXJzIE1VU1QgYXZvaWQgYXR0ZW1wdGluZyB0byBhbGxv
Y2F0ZSBleGNlc3NpdmUgYW1vdW50cyBvZiBtZW1vcnkgd2hlbgorIHByZXNlbnRlZCB3aXRoIGEg
dmVyeSBsYXJnZSBwYWNrZXQuCitEZW11eGVycyBNQVkgdHJlYXQgYXVkaW8gZGF0YSBwYWNrZXRz
IGFzIGludmFsaWQgb3IgcGFydGlhbGx5IHByb2Nlc3MgdGhlbSBpZgorIHRoZXkgYXJlIGxhcmdl
ciB0aGFuIDYxLDQ0MCZuYnNwO29jdGV0cyBpbiBhbiBPZ2cgT3B1cyBzdHJlYW0gd2l0aCBjaGFu
bmVsCisgbWFwcGluZyBmYW1pbGllcyZuYnNwOzAgb3ImbmJzcDsxLgorRGVtdXhlcnMgTUFZIHRy
ZWF0IGF1ZGlvIGRhdGEgcGFja2V0cyBhcyBpbnZhbGlkIG9yIHBhcnRpYWxseSBwcm9jZXNzIHRo
ZW0gaW4KKyBhbnkgT2dnIE9wdXMgc3RyZWFtIGlmIHRoZSBwYWNrZXQgaXMgbGFyZ2VyIHRoYW4g
NjEsNDQwJm5ic3A7b2N0ZXRzIGFuZCBhbHNvCisgbGFyZ2VyIHRoYW4gNyw2ODAmbmJzcDtvY3Rl
dHMgcGVyIE9wdXMgc3RyZWFtLgorVGhlIHByZXNlbmNlIG9mIGFuIGV4dHJlbWVseSBsYXJnZSBw
YWNrZXQgaW4gdGhlIHN0cmVhbSBjb3VsZCBpbmRpY2F0ZSBhCisgbWVtb3J5IGV4aGF1c3Rpb24g
YXR0YWNrIG9yIHN0cmVhbSBjb3JydXB0aW9uLgorPC90PgorPHQ+CitJbiBhbiBPZ2cgT3B1cyBz
dHJlYW0sIHRoZSBsYXJnZXN0IHBvc3NpYmxlIHZhbGlkIHBhY2tldCB0aGF0IGRvZXMgbm90IHVz
ZQorIHBhZGRpbmcgaGFzIGEgc2l6ZSBvZiAoNjEsMjk4Kk4mbmJzcDstJm5ic3A7Mikgb2N0ZXRz
LgorV2l0aCAyNTUmbmJzcDtzdHJlYW1zLCB0aGlzIGlzIDE1LDYzMCw5ODgmbmJzcDtvY3RldHMg
YW5kIGNhbgorIHNwYW4gdXAgdG8gNjEsMjk4Jm5ic3A7T2dnIHBhZ2VzLCBhbGwgYnV0IG9uZSBv
ZiB3aGljaCB3aWxsIGhhdmUgYSBncmFudWxlCisgcG9zaXRpb24gb2YgLTEuCitUaGlzIGlzIG9m
IGNvdXJzZSBhIHZlcnkgZXh0cmVtZSBwYWNrZXQsIGNvbnNpc3Rpbmcgb2YgMjU1Jm5ic3A7c3Ry
ZWFtcywgZWFjaAorIGNvbnRhaW5pbmcgMTIwJm5ic3A7bXMgb2YgYXVkaW8gZW5jb2RlZCBhcyAy
LjUmbmJzcDttcyBmcmFtZXMsIGVhY2ggZnJhbWUKKyB1c2luZyB0aGUgbWF4aW11bSBwb3NzaWJs
ZSBudW1iZXIgb2Ygb2N0ZXRzICgxMjc1KSBhbmQgc3RvcmVkIGluIHRoZSBsZWFzdAorIGVmZmlj
aWVudCBtYW5uZXIgYWxsb3dlZCAoYSBWQlIgY29kZSZuYnNwOzMgT3B1cyBwYWNrZXQpLgorRXZl
biBpbiBzdWNoIGEgcGFja2V0LCBtb3N0IG9mIHRoZSBkYXRhIHdpbGwgYmUgemVyb3MgYXMgMi41
Jm5ic3A7bXMgZnJhbWVzCisgY2Fubm90IGFjdHVhbGx5IHVzZSBhbGwgMTI3NSZuYnNwO29jdGV0
cy4KKzwvdD4KKzx0PgorVGhlIGxhcmdlc3QgcGFja2V0IGNvbnNpc3Rpbmcgb2YgZW50aXJlbHkg
dXNlZnVsIGRhdGEgaXMKKyAoMTUsMzI2Kk4mbmJzcDstJm5ic3A7Mikgb2N0ZXRzLgorVGhpcyBj
b3JyZXNwb25kcyB0byAxMjAmbmJzcDttcyBvZiBhdWRpbyBlbmNvZGVkIGFzIDEwJm5ic3A7bXMg
ZnJhbWVzIGluIGVpdGhlcgorIFNJTEsgb3IgSHlicmlkIG1vZGUsIGJ1dCBhdCBhIGRhdGEgcmF0
ZSBvZiBvdmVyIDEmbmJzcDtNYnBzLCB3aGljaCBtYWtlcyBsaXR0bGUKKyBzZW5zZSBmb3IgdGhl
IHF1YWxpdHkgYWNoaWV2ZWQuCis8L3Q+Cis8dD4KK0EgbW9yZSByZWFzb25hYmxlIGxpbWl0IGlz
ICg3LDY2NCpOJm5ic3A7LSZuYnNwOzIpIG9jdGV0cy4KK1RoaXMgY29ycmVzcG9uZHMgdG8gMTIw
Jm5ic3A7bXMgb2YgYXVkaW8gZW5jb2RlZCBhcyAyMCZuYnNwO21zIHN0ZXJlbyBDRUxUIG1vZGUK
KyBmcmFtZXMsIHdpdGggYSB0b3RhbCBiaXRyYXRlIGp1c3QgdW5kZXIgNTExJm5ic3A7a2JwcyAo
bm90IGNvdW50aW5nIHRoZSBPZ2cKKyBlbmNhcHN1bGF0aW9uIG92ZXJoZWFkKS4KK0ZvciBjaGFu
bmVsIG1hcHBpbmcgZmFtaWx5IDEsIE49OCBwcm92aWRlcyBhIHJlYXNvbmFibGUgdXBwZXIgYm91
bmQsIGFzIGl0CisgYWxsb3dzIGZvciBlYWNoIG9mIHRoZSA4IHBvc3NpYmxlIG91dHB1dCBjaGFu
bmVscyB0byBiZSBkZWNvZGVkIGZyb20gYQorIHNlcGFyYXRlIHN0ZXJlbyBPcHVzIHN0cmVhbS4K
K1RoaXMgZ2l2ZXMgYSBzaXplIG9mIDYxLDMxMCZuYnNwO29jdGV0cywgd2hpY2ggaXMgcm91bmRl
ZCB1cCB0byBhIG11bHRpcGxlIG9mCisgMSwwMjQmbmJzcDtvY3RldHMgdG8geWllbGQgdGhlIGF1
ZGlvIGRhdGEgcGFja2V0IHNpemUgb2YgNjEsNDQwJm5ic3A7b2N0ZXRzCisgdGhhdCBhbnkgaW1w
bGVtZW50YXRpb24gaXMgZXhwZWN0ZWQgdG8gYmUgYWJsZSB0byBwcm9jZXNzIHN1Y2Nlc3NmdWxs
eS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJlbmNvZGVyIiB0aXRsZT0i
RW5jb2RlciBHdWlkZWxpbmVzIj4KKzx0PgorV2hlbiBlbmNvZGluZyBPcHVzIHN0cmVhbXMsIE9n
ZyBtdXhlcnMgU0hPVUxEIHRha2UgaW50byBhY2NvdW50IHRoZQorIGFsZ29yaXRobWljIGRlbGF5
IG9mIHRoZSBPcHVzIGVuY29kZXIuCis8L3Q+Cis8dD4KK0luIGVuY29kZXJzIGRlcml2ZWQgZnJv
bSB0aGUgcmVmZXJlbmNlCisgaW1wbGVtZW50YXRpb24mbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzY3
MTYiLz4sIHRoZSBudW1iZXIgb2Ygc2FtcGxlcyBjYW4gYmUKKyBxdWVyaWVkIHdpdGg6Cis8L3Q+
Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RB
VEFbCisgb3B1c19lbmNvZGVyX2N0bChlbmNvZGVyX3N0YXRlLCBPUFVTX0dFVF9MT09LQUhFQUQo
JmRlbGF5X3NhbXBsZXMpKTsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPHQ+CitUbyBhY2hp
ZXZlIGdvb2QgcXVhbGl0eSBpbiB0aGUgdmVyeSBmaXJzdCBzYW1wbGVzIG9mIGEgc3RyZWFtLCBp
bXBsZW1lbnRhdGlvbnMKKyBNQVkgdXNlIGxpbmVhciBwcmVkaWN0aXZlIGNvZGluZyAoTFBDKSBl
eHRyYXBvbGF0aW9uIHRvIGdlbmVyYXRlIGF0IGxlYXN0IDEyMAorIGV4dHJhIHNhbXBsZXMgYXQg
dGhlIGJlZ2lubmluZyB0byBhdm9pZCB0aGUgT3B1cyBlbmNvZGVyIGhhdmluZyB0byBlbmNvZGUg
YQorIGRpc2NvbnRpbnVvdXMgc2lnbmFsLgorRm9yIG1vcmUgaW5mb3JtYXRpb24gb24gbGluZWFy
IHByZWRpY3Rpb24sIHNlZQorIDx4cmVmIHRhcmdldD0ibGluZWFyLXByZWRpY3Rpb24iLz4uCitG
b3IgYW4gaW5wdXQgZmlsZSBjb250YWluaW5nICdsZW5ndGgnIHNhbXBsZXMsIHRoZSBpbXBsZW1l
bnRhdGlvbiBTSE9VTEQgc2V0CisgdGhlIHByZS1za2lwIGhlYWRlciB2YWx1ZSB0byAoZGVsYXlf
c2FtcGxlcyZuYnNwOysmbmJzcDtleHRyYV9zYW1wbGVzKSwgZW5jb2RlCisgYXQgbGVhc3QgKGxl
bmd0aCZuYnNwOysmbmJzcDtkZWxheV9zYW1wbGVzJm5ic3A7KyZuYnNwO2V4dHJhX3NhbXBsZXMp
Cisgc2FtcGxlcywgYW5kIHNldCB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBvZiB0aGUgbGFzdCBwYWdl
IHRvCisgKGxlbmd0aCZuYnNwOysmbmJzcDtkZWxheV9zYW1wbGVzJm5ic3A7KyZuYnNwO2V4dHJh
X3NhbXBsZXMpLgorVGhpcyBlbnN1cmVzIHRoYXQgdGhlIGVuY29kZWQgZmlsZSBoYXMgdGhlIHNh
bWUgZHVyYXRpb24gYXMgdGhlIG9yaWdpbmFsLCB3aXRoCisgbm8gdGltZSBvZmZzZXQuIFRoZSBi
ZXN0IHdheSB0byBwYWQgdGhlIGVuZCBvZiB0aGUgc3RyZWFtIGlzIHRvIGFsc28gdXNlIExQQwor
IGV4dHJhcG9sYXRpb24sIGJ1dCB6ZXJvLXBhZGRpbmcgaXMgYWxzbyBhY2NlcHRhYmxlLgorPC90
PgorCis8c2VjdGlvbiBhbmNob3I9ImxwYyIgdGl0bGU9IkxQQyBFeHRyYXBvbGF0aW9uIj4KKzx0
PgorVGhlIGZpcnN0IHN0ZXAgaW4gTFBDIGV4dHJhcG9sYXRpb24gaXMgdG8gY29tcHV0ZSBsaW5l
YXIgcHJlZGljdGlvbgorIGNvZWZmaWNpZW50cy4gPHhyZWYgdGFyZ2V0PSJscGMtc2FtcGxlIi8+
CitXaGVuIGV4dGVuZGluZyB0aGUgZW5kIG9mIHRoZSBzaWduYWwsIG9yZGVyLU4gKHR5cGljYWxs
eSB3aXRoIE4gcmFuZ2luZyBmcm9tIDgKKyB0byA0MCkgTFBDIGFuYWx5c2lzIGlzIHBlcmZvcm1l
ZCBvbiBhIHdpbmRvdyBuZWFyIHRoZSBlbmQgb2YgdGhlIHNpZ25hbC4KK1RoZSBsYXN0IE4gc2Ft
cGxlcyBhcmUgdXNlZCBhcyBtZW1vcnkgdG8gYW4gaW5maW5pdGUgaW1wdWxzZSByZXNwb25zZSAo
SUlSKQorIGZpbHRlci4KKzwvdD4KKzx0PgorVGhlIGZpbHRlciBpcyB0aGVuIGFwcGxpZWQgb24g
YSB6ZXJvIGlucHV0IHRvIGV4dHJhcG9sYXRlIHRoZSBlbmQgb2YgdGhlIHNpZ25hbC4KK0xldCBh
KGspIGJlIHRoZSBrdGggTFBDIGNvZWZmaWNpZW50IGFuZCB4KG4pIGJlIHRoZSBudGggc2FtcGxl
IG9mIHRoZSBzaWduYWwsCisgZWFjaCBuZXcgc2FtcGxlIHBhc3QgdGhlIGVuZCBvZiB0aGUgc2ln
bmFsIGlzIGNvbXB1dGVkIGFzOgorPC90PgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICBOCisgICAgICAgLS0tCit4KG4p
ID0gXCAgIGEoaykqeChuLWspCisgICAgICAgLworICAgICAgIC0tLQorICAgICAgIGs9MQorXV0+
PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8dD4KK1RoZSBwcm9jZXNzIGlzIHJlcGVhdGVkIGluZGVw
ZW5kZW50bHkgZm9yIGVhY2ggY2hhbm5lbC4KK0l0IGlzIHBvc3NpYmxlIHRvIGV4dGVuZCB0aGUg
YmVnaW5uaW5nIG9mIHRoZSBzaWduYWwgYnkgYXBwbHlpbmcgdGhlIHNhbWUKKyBwcm9jZXNzIGJh
Y2t3YXJkIGluIHRpbWUuCitXaGVuIGV4dGVuZGluZyB0aGUgYmVnaW5uaW5nIG9mIHRoZSBzaWdu
YWwsIGl0IGlzIGJlc3QgdG8gYXBwbHkgYSAiZmFkZSBpbiIgdG8KKyB0aGUgZXh0cmFwb2xhdGVk
IHNpZ25hbCwgZS5nLiBieSBtdWx0aXBseWluZyBpdCBieSBhIGhhbGYtSGFubmluZyB3aW5kb3cK
KyA8eHJlZiB0YXJnZXQ9Imhhbm5pbmciLz4uCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rp
b24gYW5jaG9yPSJjb250aW51b3VzX2NoYWluaW5nIiB0aXRsZT0iQ29udGludW91cyBDaGFpbmlu
ZyI+Cis8dD4KK0luIHNvbWUgYXBwbGljYXRpb25zLCBzdWNoIGFzIEludGVybmV0IHJhZGlvLCBp
dCBpcyBkZXNpcmFibGUgdG8gY3V0IGEgbG9uZworIHN0cmVhbSBpbnRvIHNtYWxsZXIgY2hhaW5z
LCBlLmcuIHNvIHRoZSBjb21tZW50IGhlYWRlciBjYW4gYmUgdXBkYXRlZC4KK1RoaXMgY2FuIGJl
IGRvbmUgc2ltcGx5IGJ5IHNlcGFyYXRpbmcgdGhlIGlucHV0IHN0cmVhbXMgaW50byBzZWdtZW50
cyBhbmQKKyBlbmNvZGluZyBlYWNoIHNlZ21lbnQgaW5kZXBlbmRlbnRseS4KK1RoZSBkcmF3YmFj
ayBvZiB0aGlzIGFwcHJvYWNoIGlzIHRoYXQgaXQgY3JlYXRlcyBhIHNtYWxsIGRpc2NvbnRpbnVp
dHkKKyBhdCB0aGUgYm91bmRhcnkgZHVlIHRvIHRoZSBsb3NzeSBuYXR1cmUgb2YgT3B1cy4KK0Eg
bXV4ZXIgTUFZIGF2b2lkIHRoaXMgZGlzY29udGludWl0eSBieSB1c2luZyB0aGUgZm9sbG93aW5n
IHByb2NlZHVyZToKKzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0PkVuY29kZSB0aGUgbGFzdCBm
cmFtZSBvZiB0aGUgZmlyc3Qgc2VnbWVudCBhcyBhbiBpbmRlcGVuZGVudCBmcmFtZSBieQorIHR1
cm5pbmcgb2ZmIGFsbCBmb3JtcyBvZiBpbnRlci1mcmFtZSBwcmVkaWN0aW9uLgorRGUtZW1waGFz
aXMgaXMgYWxsb3dlZC48L3Q+Cis8dD5TZXQgdGhlIGdyYW51bGUgcG9zaXRpb24gb2YgdGhlIGxh
c3QgcGFnZSB0byBhIHBvaW50IG5lYXIgdGhlIGVuZCBvZiB0aGUKKyBsYXN0IGZyYW1lLjwvdD4K
Kzx0PkJlZ2luIHRoZSBzZWNvbmQgc2VnbWVudCB3aXRoIGEgY29weSBvZiB0aGUgbGFzdCBmcmFt
ZSBvZiB0aGUgZmlyc3QKKyBzZWdtZW50LjwvdD4KKzx0PlNldCB0aGUgcHJlLXNraXAgdmFsdWUg
b2YgdGhlIHNlY29uZCBzdHJlYW0gaW4gc3VjaCBhIHdheSBhcyB0byBwcm9wZXJseQorIGpvaW4g
dGhlIHR3byBzdHJlYW1zLjwvdD4KKzx0PkNvbnRpbnVlIHRoZSBlbmNvZGluZyBwcm9jZXNzIG5v
cm1hbGx5IGZyb20gdGhlcmUsIHdpdGhvdXQgYW55IHJlc2V0IHRvCisgdGhlIGVuY29kZXIuPC90
PgorPC9saXN0PgorPC90PgorPHQ+CitJbiBlbmNvZGVycyBkZXJpdmVkIGZyb20gdGhlIHJlZmVy
ZW5jZSBpbXBsZW1lbnRhdGlvbiwgaW50ZXItZnJhbWUgcHJlZGljdGlvbgorIGNhbiBiZSB0dXJu
ZWQgb2ZmIGJ5IGNhbGxpbmc6Cis8L3Q+Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgb3B1c19lbmNvZGVyX2N0bChlbmNvZGVyX3N0
YXRlLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKDEpKTsKK11dPjwvYXJ0d29yaz4KKzwv
ZmlndXJlPgorPHQ+CitGb3IgYmVzdCByZXN1bHRzLCB0aGlzIGltcGxlbWVudGF0aW9uIHJlcXVp
cmVzIHRoYXQgcHJlZGljdGlvbiBiZSBleHBsaWNpdGx5CisgZW5hYmxlZCBhZ2FpbiBiZWZvcmUg
cmVzdW1pbmcgbm9ybWFsIGVuY29kaW5nLCBldmVuIGFmdGVyIGEgcmVzZXQuCis8L3Q+CisKKzwv
c2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImltcGxlbWVudGF0aW9u
IiB0aXRsZT0iSW1wbGVtZW50YXRpb24gU3RhdHVzIj4KKzx0PgorQSBicmllZiBzdW1tYXJ5IG9m
IG1ham9yIGltcGxlbWVudGF0aW9ucyBvZiB0aGlzIGRyYWZ0IGlzIGF2YWlsYWJsZQorIGF0IDxl
cmVmIHRhcmdldD0iaHR0cHM6Ly93aWtpLnhpcGgub3JnL09nZ09wdXNJbXBsZW1lbnRhdGlvbiIv
PiwKKyBhbG9uZyB3aXRoIHRoZWlyIHN0YXR1cy4KKzwvdD4KKzx0PgorW05vdGUgdG8gUkZDIEVk
aXRvcjogcGxlYXNlIHJlbW92ZSB0aGlzIGVudGlyZSBzZWN0aW9uIGJlZm9yZQorIGZpbmFsIHB1
YmxpY2F0aW9uIHBlciA8eHJlZiB0YXJnZXQ9IlJGQzY5ODIiLz4sIGFsb25nIHdpdGgKKyBpdHMg
cmVmZXJlbmNlcy5dCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2VjdXJp
dHkiIHRpdGxlPSJTZWN1cml0eSBDb25zaWRlcmF0aW9ucyI+Cis8dD4KK0ltcGxlbWVudGF0aW9u
cyBvZiB0aGUgT3B1cyBjb2RlYyBuZWVkIHRvIHRha2UgYXBwcm9wcmlhdGUgc2VjdXJpdHkKKyBj
b25zaWRlcmF0aW9ucyBpbnRvIGFjY291bnQsIGFzIG91dGxpbmVkIGluIDx4cmVmIHRhcmdldD0i
UkZDNDczMiIvPi4KK1RoaXMgaXMganVzdCBhcyBtdWNoIGEgcHJvYmxlbSBmb3IgdGhlIGNvbnRh
aW5lciBhcyBpdCBpcyBmb3IgdGhlIGNvZGVjIGl0c2VsZi4KK01hbGljaW91cyBwYXlsb2FkcyBh
bmQvb3IgaW5wdXQgc3RyZWFtcyBjYW4gYmUgdXNlZCB0byBhdHRhY2sgY29kZWMKKyBpbXBsZW1l
bnRhdGlvbnMuCitJbXBsZW1lbnRhdGlvbnMgTVVTVCBOT1Qgb3ZlcnJ1biB0aGVpciBhbGxvY2F0
ZWQgbWVtb3J5IG5vciBjb25zdW1lIGV4Y2Vzc2l2ZQorIHJlc291cmNlcyB3aGVuIGRlY29kaW5n
IHBheWxvYWRzIG9yIHByb2Nlc3NpbmcgaW5wdXQgc3RyZWFtcy4KK0FsdGhvdWdoIHByb2JsZW1z
IGluIGVuY29kaW5nIGFwcGxpY2F0aW9ucyBhcmUgdHlwaWNhbGx5IHJhcmVyLCB0aGlzIHN0aWxs
CisgYXBwbGllcyB0byBhIG11eGVyLCBhcyB2dWxuZXJhYmlsaXRpZXMgd291bGQgYWxsb3cgYW4g
YXR0YWNrZXIgdG8gYXR0YWNrCisgdHJhbnNjb2RpbmcgZ2F0ZXdheXMuCis8L3Q+CisKKzx0Pgor
SGVhZGVyIHBhcnNpbmcgY29kZSBjb250YWlucyB0aGUgbW9zdCBsaWtlbHkgYXJlYSBmb3IgcG90
ZW50aWFsIG92ZXJydW5zLgorSXQgaXMgaW1wb3J0YW50IGZvciBpbXBsZW1lbnRhdGlvbnMgdG8g
ZW5zdXJlIHRoZWlyIGJ1ZmZlcnMgY29udGFpbiBlbm91Z2gKKyBkYXRhIGZvciBhbGwgb2YgdGhl
IHJlcXVpcmVkIGZpZWxkcyBiZWZvcmUgYXR0ZW1wdGluZyB0byByZWFkIGl0IChmb3IgZXhhbXBs
ZSwKKyBmb3IgYWxsIG9mIHRoZSBjaGFubmVsIG1hcCBkYXRhIGluIHRoZSBJRCBoZWFkZXIpLgor
SW1wbGVtZW50YXRpb25zIHdvdWxkIGRvIHdlbGwgdG8gdmFsaWRhdGUgdGhlIGluZGljZXMgb2Yg
dGhlIGNoYW5uZWwgbWFwLCBhbHNvLAorIHRvIGVuc3VyZSB0aGV5IG1lZXQgYWxsIG9mIHRoZSBy
ZXN0cmljdGlvbnMgb3V0bGluZWQgaW4KKyA8eHJlZiB0YXJnZXQ9ImNoYW5uZWxfbWFwcGluZyIv
PiwgaW4gb3JkZXIgdG8gYXZvaWQgYXR0ZW1wdGluZyB0byByZWFkIGRhdGEKKyBmcm9tIGNoYW5u
ZWxzIHRoYXQgZG8gbm90IGV4aXN0LgorPC90PgorCis8dD4KK1RvIGF2b2lkIGV4Y2Vzc2l2ZSBy
ZXNvdXJjZSB1c2FnZSwgd2UgYWR2aXNlIGltcGxlbWVudGF0aW9ucyB0byBiZSBlc3BlY2lhbGx5
Cisgd2FyeSBvZiBzdHJlYW1zIHRoYXQgbWlnaHQgY2F1c2UgdGhlbSB0byBwcm9jZXNzIGZhciBt
b3JlIGRhdGEgdGhhbiB3YXMKKyBhY3R1YWxseSB0cmFuc21pdHRlZC4KK0ZvciBleGFtcGxlLCBh
IHJlbGF0aXZlbHkgc21hbGwgY29tbWVudCBoZWFkZXIgbWF5IGNvbnRhaW4gdmFsdWVzIGZvciB0
aGUKKyBzdHJpbmcgbGVuZ3RocyBvciB1c2VyIGNvbW1lbnQgbGlzdCBsZW5ndGggdGhhdCBpbXBs
eSB0aGF0IGl0IGlzIG1hbnkKKyBnaWdhYnl0ZXMgaW4gc2l6ZS4KK0V2ZW4gY29tcHV0aW5nIHRo
ZSBzaXplIG9mIHRoZSByZXF1aXJlZCBidWZmZXIgY291bGQgb3ZlcmZsb3cgYSAzMi1iaXQgaW50
ZWdlciwKKyBhbmQgYWN0dWFsbHkgYXR0ZW1wdGluZyB0byBhbGxvY2F0ZSBzdWNoIGEgYnVmZmVy
IGJlZm9yZSB2ZXJpZnlpbmcgaXQgd291bGQgYmUKKyBhIHJlYXNvbmFibGUgc2l6ZSBpcyBhIGJh
ZCBpZGVhLgorQWZ0ZXIgcmVhZGluZyB0aGUgdXNlciBjb21tZW50IGxpc3QgbGVuZ3RoLCBpbXBs
ZW1lbnRhdGlvbnMgbWlnaHQgd2lzaCB0bworIHZlcmlmeSB0aGF0IHRoZSBoZWFkZXIgY29udGFp
bnMgYXQgbGVhc3QgdGhlIG1pbmltdW0gYW1vdW50IG9mIGRhdGEgZm9yIHRoYXQKKyBtYW55IGNv
bW1lbnRzICg0Jm5ic3A7YWRkaXRpb25hbCBvY3RldHMgcGVyIGNvbW1lbnQsIHRvIGluZGljYXRl
IGVhY2ggaGFzIGEKKyBsZW5ndGggb2YgemVybykgYmVmb3JlIHByb2NlZWRpbmcgYW55IGZ1cnRo
ZXIsIGFnYWluIHRha2luZyBjYXJlIHRvIGF2b2lkCisgb3ZlcmZsb3cgaW4gdGhlc2UgY2FsY3Vs
YXRpb25zLgorSWYgYWxsb2NhdGluZyBhbiBhcnJheSBvZiBwb2ludGVycyB0byBwb2ludCBhdCB0
aGVzZSBzdHJpbmdzLCB0aGUgc2l6ZSBvZiB0aGUKKyBwb2ludGVycyBtYXkgYmUgbGFyZ2VyIHRo
YW4gNCZuYnNwO29jdGV0cywgcG90ZW50aWFsbHkgcmVxdWlyaW5nIGEgc2VwYXJhdGUKKyBvdmVy
ZmxvdyBjaGVjay4KKzwvdD4KKworPHQ+CitBbm90aGVyIGJ1ZyBpbiB0aGlzIGNsYXNzIHdlIGhh
dmUgb2JzZXJ2ZWQgbW9yZSB0aGFuIG9uY2UgaW52b2x2ZXMgdGhlIGhhbmRsaW5nCisgb2YgaW52
YWxpZCBkYXRhIGF0IHRoZSBlbmQgb2YgYSBzdHJlYW0uCitPZnRlbiwgaW1wbGVtZW50YXRpb25z
IHdpbGwgc2VlayB0byB0aGUgZW5kIG9mIGEgc3RyZWFtIHRvIGxvY2F0ZSB0aGUgbGFzdAorIHRp
bWVzdGFtcCBpbiBvcmRlciB0byBjb21wdXRlIGl0cyB0b3RhbCBkdXJhdGlvbi4KK0lmIHRoZXkg
ZG8gbm90IGZpbmQgYSB2YWxpZCBjYXB0dXJlIHBhdHRlcm4gYW5kIE9nZyBwYWdlIGZyb20gdGhl
IGRlc2lyZWQKKyBsb2dpY2FsIHN0cmVhbSwgdGhleSB3aWxsIGJhY2sgdXAgYW5kIHRyeSBhZ2Fp
bi4KK0lmIGNhcmUgaXMgbm90IHRha2VuIHRvIGF2b2lkIHJlLXNjYW5uaW5nIGRhdGEgdGhhdCB3
YXMgYWxyZWFkeSBzY2FubmVkLCB0aGlzCisgc2VhcmNoIGNhbiBxdWlja2x5IGRldm9sdmUgaW50
byBzb21ldGhpbmcgd2l0aCBhIGNvbXBsZXhpdHkgdGhhdCBpcyBxdWFkcmF0aWMKKyBpbiB0aGUg
YW1vdW50IG9mIGludmFsaWQgZGF0YS4KKzwvdD4KKworPHQ+CitJbiBnZW5lcmFsIHdoZW4gc2Vl
a2luZywgaW1wbGVtZW50YXRpb25zIHdpbGwgd2lzaCB0byBiZSBjYXV0aW91cyBhYm91dCB0aGUK
KyBlZmZlY3RzIG9mIGludmFsaWQgZ3JhbnVsZSBwb3NpdGlvbiB2YWx1ZXMsIGFuZCBlbnN1cmUg
YWxsIGFsZ29yaXRobXMgd2lsbAorIGNvbnRpbnVlIHRvIG1ha2UgcHJvZ3Jlc3MgYW5kIGV2ZW50
dWFsbHkgdGVybWluYXRlLCBldmVuIGlmIHRoZXNlIGFyZSBtaXNzaW5nCisgb3Igb3V0LW9mLW9y
ZGVyLgorPC90PgorCis8dD4KK0xpa2UgbW9zdCBvdGhlciBjb250YWluZXIgZm9ybWF0cywgT2dn
IE9wdXMgc3RyZWFtcyBTSE9VTEQgTk9UIGJlIHVzZWQgd2l0aAorIGluc2VjdXJlIGNpcGhlcnMg
b3IgY2lwaGVyIG1vZGVzIHRoYXQgYXJlIHZ1bG5lcmFibGUgdG8ga25vd24tcGxhaW50ZXh0Cisg
YXR0YWNrcy4KK0VsZW1lbnRzIHN1Y2ggYXMgdGhlIE9nZyBwYWdlIGNhcHR1cmUgcGF0dGVybiBh
bmQgdGhlIG1hZ2ljIHNpZ25hdHVyZXMgaW4gdGhlCisgSUQgaGVhZGVyIGFuZCB0aGUgY29tbWVu
dCBoZWFkZXIgYWxsIGhhdmUgZWFzaWx5IHByZWRpY3RhYmxlIHZhbHVlcywgaW4KKyBhZGRpdGlv
biB0byB2YXJpb3VzIGVsZW1lbnRzIG9mIHRoZSBjb2RlYyBkYXRhIGl0c2VsZi4KKzwvdD4KKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJjb250ZW50X3R5cGUiIHRpdGxlPSJDb250ZW50
IFR5cGUiPgorPHQ+CitBbiAiT2dnIE9wdXMgZmlsZSIgY29uc2lzdHMgb2Ygb25lIG9yIG1vcmUg
c2VxdWVudGlhbGx5IG11bHRpcGxleGVkIHNlZ21lbnRzLAorIGVhY2ggY29udGFpbmluZyBleGFj
dGx5IG9uZSBPZ2cgT3B1cyBzdHJlYW0uCitUaGUgUkVDT01NRU5ERUQgbWltZS10eXBlIGZvciBP
Z2cgT3B1cyBmaWxlcyBpcyAiYXVkaW8vb2dnIi4KKzwvdD4KKworPHQ+CitJZiBtb3JlIHNwZWNp
ZmljaXR5IGlzIGRlc2lyZWQsIG9uZSBNQVkgaW5kaWNhdGUgdGhlIHByZXNlbmNlIG9mIE9wdXMg
c3RyZWFtcworIHVzaW5nIHRoZSBjb2RlY3MgcGFyYW1ldGVyIGRlZmluZWQgaW4gPHhyZWYgdGFy
Z2V0PSJSRkM2MzgxIi8+IGFuZAorIDx4cmVmIHRhcmdldD0iUkZDNTMzNCIvPiwgZS5nLiwKKzwv
dD4KKzxmaWd1cmU+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICBhdWRp
by9vZ2c7IGNvZGVjcz1vcHVzCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx0PgorIGZvciBh
biBPZ2cgT3B1cyBmaWxlLgorPC90PgorCis8dD4KK1RoZSBSRUNPTU1FTkRFRCBmaWxlbmFtZSBl
eHRlbnNpb24gZm9yIE9nZyBPcHVzIGZpbGVzIGlzICcub3B1cycuCis8L3Q+CisKKzx0PgorV2hl
biBPcHVzIGlzIGNvbmN1cnJlbnRseSBtdWx0aXBsZXhlZCB3aXRoIG90aGVyIHN0cmVhbXMgaW4g
YW4gT2dnIGNvbnRhaW5lciwKKyBvbmUgU0hPVUxEIHVzZSBvbmUgb2YgdGhlICJhdWRpby9vZ2ci
LCAidmlkZW8vb2dnIiwgb3IgImFwcGxpY2F0aW9uL29nZyIKKyBtaW1lLXR5cGVzLCBhcyBkZWZp
bmVkIGluIDx4cmVmIHRhcmdldD0iUkZDNTMzNCIvPi4KK1N1Y2ggc3RyZWFtcyBhcmUgbm90IHN0
cmljdGx5ICJPZ2cgT3B1cyBmaWxlcyIgYXMgZGVzY3JpYmVkIGFib3ZlLAorIHNpbmNlIHRoZXkg
Y29udGFpbiBtb3JlIHRoYW4gYSBzaW5nbGUgT3B1cyBzdHJlYW0gcGVyIHNlcXVlbnRpYWxseQor
IG11bHRpcGxleGVkIHNlZ21lbnQsIGUuZy4gdmlkZW8gb3IgbXVsdGlwbGUgYXVkaW8gdHJhY2tz
LgorSW4gc3VjaCBjYXNlcyB0aGUgdGhlICcub3B1cycgZmlsZW5hbWUgZXh0ZW5zaW9uIGlzIE5P
VCBSRUNPTU1FTkRFRC4KKzwvdD4KKworPHQ+CitJbiBlaXRoZXIgY2FzZSwgdGhpcyBkb2N1bWVu
dCB1cGRhdGVzIDx4cmVmIHRhcmdldD0iUkZDNTMzNCIvPgorIHRvIGFkZCAnb3B1cycgYXMgYSBj
b2RlY3MgcGFyYW1ldGVyIHZhbHVlIHdpdGggY2hhcls4XTogJ09wdXNIZWFkJworIGFzIENvZGVj
IElkZW50aWZpZXIuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iaWFuYSIg
dGl0bGU9IklBTkEgQ29uc2lkZXJhdGlvbnMiPgorPHQ+CitUaGlzIGRvY3VtZW50IHVwZGF0ZXMg
dGhlIElBTkEgTWVkaWEgVHlwZXMgcmVnaXN0cnkgdG8gYWRkIC5vcHVzCisgYXMgYSBmaWxlIGV4
dGVuc2lvbiBmb3IgImF1ZGlvL29nZyIsIGFuZCB0byBhZGQgaXRzZWxmIGFzIGEgcmVmZXJlbmNl
CisgYWxvbmdzaWRlIDx4cmVmIHRhcmdldD0iUkZDNTMzNCIvPiBmb3IgImF1ZGlvL29nZyIsICJ2
aWRlby9vZ2ciLCBhbmQKKyAiYXBwbGljYXRpb24vb2dnIiBNZWRpYSBUeXBlcy4KKzwvdD4KKzx0
PgorVGhpcyBkb2N1bWVudCBkZWZpbmVzIGEgbmV3IHJlZ2lzdHJ5ICJPcHVzIENoYW5uZWwgTWFw
cGluZyBGYW1pbGllcyIgdG8KKyBpbmRpY2F0ZSBob3cgdGhlIHNlbWFudGljIG1lYW5pbmdzIG9m
IHRoZSBjaGFubmVscyBpbiBhIG11bHRpLWNoYW5uZWwgT3B1cworIHN0cmVhbSBhcmUgZGVzY3Jp
YmVkLgorSUFOQSBpcyByZXF1ZXN0ZWQgdG8gY3JlYXRlIGEgbmV3IG5hbWUgc3BhY2Ugb2YgIk9w
dXMgQ2hhbm5lbCBNYXBwaW5nCisgRmFtaWxpZXMiLgorVGhpcyB3aWxsIGJlIGEgbmV3IHJlZ2lz
dHJ5IG9uIHRoZSBJQU5BIE1hdHJpeCwgYW5kIG5vdCBhIHN1YnJlZ2lzdHJ5IG9mIGFuCisgZXhp
c3RpbmcgcmVnaXN0cnkuCitNb2RpZmljYXRpb25zIHRvIHRoaXMgcmVnaXN0cnkgZm9sbG93IHRo
ZSAiU3BlY2lmaWNhdGlvbiBSZXF1aXJlZCIgcmVnaXN0cmF0aW9uCisgcG9saWN5IGFzIGRlZmlu
ZWQgaW4gPHhyZWYgdGFyZ2V0PSJSRkM1MjI2Ii8+LgorRWFjaCByZWdpc3RyeSBlbnRyeSBjb25z
aXN0cyBvZiBhIENoYW5uZWwgTWFwcGluZyBGYW1pbHkgTnVtYmVyLCB3aGljaCBpcworIHNwZWNp
ZmllZCBpbiBkZWNpbWFsIGluIHRoZSByYW5nZSAwIHRvIDI1NSwgaW5jbHVzaXZlLCBhbmQgYSBS
ZWZlcmVuY2UgKG9yCisgbGlzdCBvZiByZWZlcmVuY2VzKQorRWFjaCBSZWZlcmVuY2UgbXVzdCBw
b2ludCB0byBzdWZmaWNpZW50IGRvY3VtZW50YXRpb24gdG8gZGVzY3JpYmUgd2hhdAorIGluZm9y
bWF0aW9uIGlzIGNvZGVkIGluIHRoZSBPcHVzIGlkZW50aWZpY2F0aW9uIGhlYWRlciBmb3IgdGhp
cyBjaGFubmVsCisgbWFwcGluZyBmYW1pbHksIGhvdyBhIGRlbXV4ZXIgZGV0ZXJtaW5lcyB0aGUg
U3RyZWFtIENvdW50ICgnTicpIGFuZCBDb3VwbGVkCisgU3RyZWFtIENvdW50ICgnTScpIGZyb20g
dGhpcyBpbmZvcm1hdGlvbiwgYW5kIGhvdyBpdCBkZXRlcm1pbmVzIHRoZSBwcm9wZXIKKyBpbnRl
cnByZXRhdGlvbiBvZiBlYWNoIG9mIHRoZSBkZWNvZGVkIGNoYW5uZWxzLgorPC90PgorPHQ+CitU
aGlzIGRvY3VtZW50IGRlZmluZXMgdGhyZWUgaW5pdGlhbCBhc3NpZ25tZW50cyBmb3IgdGhpcyBy
ZWdpc3RyeS4KKzwvdD4KKzx0ZXh0dGFibGU+Cis8dHRjb2w+VmFsdWU8L3R0Y29sPjx0dGNvbD5S
ZWZlcmVuY2U8L3R0Y29sPgorPGM+MDwvYz48Yz5bUkZDWFhYWF0gPHhyZWYgdGFyZ2V0PSJjaGFu
bmVsX21hcHBpbmdfMCIvPjwvYz4KKzxjPjE8L2M+PGM+W1JGQ1hYWFhdIDx4cmVmIHRhcmdldD0i
Y2hhbm5lbF9tYXBwaW5nXzEiLz48L2M+Cis8Yz4yNTU8L2M+PGM+W1JGQ1hYWFhdIDx4cmVmIHRh
cmdldD0iY2hhbm5lbF9tYXBwaW5nXzI1NSIvPjwvYz4KKzwvdGV4dHRhYmxlPgorPHQ+CitUaGUg
ZGVzaWduYXRlZCBleHBlcnQgd2lsbCBkZXRlcm1pbmUgaWYgdGhlIFJlZmVyZW5jZSBwb2ludHMg
dG8gYSBzcGVjaWZpY2F0aW9uCisgdGhhdCBtZWV0cyB0aGUgcmVxdWlyZW1lbnRzIGZvciBwZXJt
YW5lbmNlIGFuZCByZWFkeSBhdmFpbGFiaWxpdHkgbGFpZCBvdXQKKyBpbiZuYnNwOzx4cmVmIHRh
cmdldD0iUkZDNTIyNiIvPiBhbmQgdGhhdCBpdCBzcGVjaWZpZXMgdGhlIGluZm9ybWF0aW9uCisg
ZGVzY3JpYmVkIGFib3ZlIHdpdGggc3VmZmljaWVudCBjbGFyaXR5IHRvIGFsbG93IGludGVyb3Bl
cmFibGUKKyBpbXBsZW1lbnRhdGlvbnMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFu
Y2hvcj0iQWNrbm93bGVkZ21lbnRzIiB0aXRsZT0iQWNrbm93bGVkZ21lbnRzIj4KKzx0PgorVGhh
bmtzIHRvIEJlbiBDYW1wYmVsbCwgSm9lbCBNLiBIYWxwZXJuLCBNYXJrIEhhcnJpcywgR3JlZyBN
YXh3ZWxsLAorIENocmlzdG9waGVyICJNb250eSIgTW9udGdvbWVyeSwgSmVhbi1NYXJjIFZhbGlu
LCBTdGVwaGFuIFdlbmdlciwgYW5kIE1vIFphbmF0eQorIGZvciB0aGVpciB2YWx1YWJsZSBjb250
cmlidXRpb25zIHRvIHRoaXMgZG9jdW1lbnQuCitBZGRpdGlvbmFsIHRoYW5rcyB0byBBbmRyZXcg
RCdBZGRlc2lvLCBHcmVnIE1heHdlbGwsIGFuZCBWaW5jZW50IFBlbnF1ZXJjJ2ggZm9yCisgdGhl
aXIgZmVlZGJhY2sgYmFzZWQgb24gZWFybHkgaW1wbGVtZW50YXRpb25zLgorPC90PgorPC9zZWN0
aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iUkZDIEVkaXRvciBOb3RlcyI+Cis8dD4KK0luJm5ic3A7
PHhyZWYgdGFyZ2V0PSJpYW5hIi8+LCAiUkZDWFhYWCIgaXMgdG8gYmUgcmVwbGFjZWQgd2l0aCB0
aGUgUkZDIG51bWJlcgorIGFzc2lnbmVkIHRvIHRoaXMgZHJhZnQuCis8L3Q+Cis8L3NlY3Rpb24+
CisKKzwvbWlkZGxlPgorPGJhY2s+Cis8cmVmZXJlbmNlcyB0aXRsZT0iTm9ybWF0aXZlIFJlZmVy
ZW5jZXMiPgorICZyZmMyMTE5OworICZyZmMzNTMzOworICZyZmMzNjI5OworICZyZmM1MjI2Owor
ICZyZmM1MzM0OworICZyZmM2MzgxOworICZyZmM2NzE2OworCis8cmVmZXJlbmNlIGFuY2hvcj0i
RUJVLVIxMjgiIHRhcmdldD0iaHR0cHM6Ly90ZWNoLmVidS5jaC9sb3VkbmVzcyI+Cis8ZnJvbnQ+
CisgIDx0aXRsZT5Mb3VkbmVzcyBSZWNvbW1lbmRhdGlvbiBFQlUgUjEyODwvdGl0bGU+CisgIDxh
dXRob3I+CisgICAgPG9yZ2FuaXphdGlvbj5FQlUgVGVjaG5pY2FsIENvbW1pdHRlZTwvb3JnYW5p
emF0aW9uPgorICA8L2F1dGhvcj4KKyAgPGRhdGUgbW9udGg9IkF1Z3VzdCIgeWVhcj0iMjAxMSIv
PgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0idm9yYmlzLWNv
bW1lbnQiCisgdGFyZ2V0PSJodHRwczovL3d3dy54aXBoLm9yZy92b3JiaXMvZG9jL3YtY29tbWVu
dC5odG1sIj4KKzxmcm9udD4KKzx0aXRsZT5PZ2cgVm9yYmlzIEkgRm9ybWF0IFNwZWNpZmljYXRp
b246IENvbW1lbnQgRmllbGQgYW5kIEhlYWRlcgorIFNwZWNpZmljYXRpb248L3RpdGxlPgorPGF1
dGhvciBpbml0aWFscz0iQy4iIHN1cm5hbWU9Ik1vbnRnb21lcnkiCisgZnVsbG5hbWU9IkNocmlz
dG9waGVyICZxdW90O01vbnR5JnF1b3Q7IE1vbnRnb21lcnkiLz4KKzxkYXRlIG1vbnRoPSJKdWx5
IiB5ZWFyPSIyMDAyIi8+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzwvcmVmZXJlbmNlcz4K
KworPHJlZmVyZW5jZXMgdGl0bGU9IkluZm9ybWF0aXZlIFJlZmVyZW5jZXMiPgorCis8IS0tP3Jm
YyBpbmNsdWRlPSJodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZl
cmVuY2UuUkZDLjM1NTAueG1sIj8tLT4KKyAmcmZjNDczMjsKKyAmcmZjNjk4MjsKKyAmcmZjNzU4
NzsKKworPHJlZmVyZW5jZSBhbmNob3I9ImZsYWMiCisgdGFyZ2V0PSJodHRwczovL3hpcGgub3Jn
L2ZsYWMvZm9ybWF0Lmh0bWwiPgorICA8ZnJvbnQ+CisgICAgPHRpdGxlPkZMQUMgLSBGcmVlIExv
c3NsZXNzIEF1ZGlvIENvZGVjIEZvcm1hdCBEZXNjcmlwdGlvbjwvdGl0bGU+CisgICAgPGF1dGhv
ciBpbml0aWFscz0iSi4iIHN1cm5hbWU9IkNvYWxzb24iIGZ1bGxuYW1lPSJKb3NoIENvYWxzb24i
Lz4KKyAgICA8ZGF0ZSBtb250aD0iSmFudWFyeSIgeWVhcj0iMjAwOCIvPgorICA8L2Zyb250Pgor
PC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJoYW5uaW5nIgorIHRhcmdldD0iaHR0
cHM6Ly9lbi53aWtpcGVkaWEub3JnL3cvaW5kZXgucGhwP3RpdGxlPVdpbmRvd19mdW5jdGlvbiZh
bXA7b2xkaWQ9NzAzMDc0NDY3I0hhbm5fLjI4SGFubmluZy4yOV93aW5kb3ciPgorICA8ZnJvbnQ+
CisgICAgPHRpdGxlPkhhbm4gd2luZG93PC90aXRsZT4KKyAgICA8YXV0aG9yPgorICAgICAgPG9y
Z2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlvbj4KKyAgICA8L2F1dGhvcj4KKyAgICA8
ZGF0ZSBtb250aD0iRmVicnVhcnkiIHllYXI9IjIwMTYiLz4KKyAgPC9mcm9udD4KKzwvcmVmZXJl
bmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0ibGluZWFyLXByZWRpY3Rpb24iCisgdGFyZ2V0PSJo
dHRwczovL2VuLndpa2lwZWRpYS5vcmcvdy9pbmRleC5waHA/dGl0bGU9TGluZWFyX3ByZWRpY3Rp
dmVfY29kaW5nJmFtcDtvbGRpZD02ODc0OTg5NjIiPgorICA8ZnJvbnQ+CisgICAgPHRpdGxlPkxp
bmVhciBQcmVkaWN0aXZlIENvZGluZzwvdGl0bGU+CisgICAgPGF1dGhvcj4KKyAgICAgIDxvcmdh
bml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+CisgICAgPC9hdXRob3I+CisgICAgPGRh
dGUgbW9udGg9Ik9jdG9iZXIiIHllYXI9IjIwMTUiLz4KKyAgPC9mcm9udD4KKzwvcmVmZXJlbmNl
PgorCis8cmVmZXJlbmNlIGFuY2hvcj0ibHBjLXNhbXBsZSIKKyAgdGFyZ2V0PSJodHRwczovL3N2
bi54aXBoLm9yZy90cnVuay92b3JiaXMvbGliL2xwYy5jIj4KKzxmcm9udD4KKyAgPHRpdGxlPkF1
dG9jb3JyZWxhdGlvbiBMUEMgY29lZmYgZ2VuZXJhdGlvbiBhbGdvcml0aG0KKyAgICAoVm9yYmlz
IHNvdXJjZSBjb2RlKTwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSJKLiIgc3VybmFtZT0iRGVn
ZW5lciIgZnVsbG5hbWU9Ikp1dHRhIERlZ2VuZXIiLz4KKzxhdXRob3IgaW5pdGlhbHM9IkMuIiBz
dXJuYW1lPSJCb3JtYW5uIiBmdWxsbmFtZT0iQ2Fyc3RlbiBCb3JtYW5uIi8+Cis8ZGF0ZSBtb250
aD0iTm92ZW1iZXIiIHllYXI9IjE5OTQiLz4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJl
ZmVyZW5jZSBhbmNob3I9InEtbm90YXRpb24iCisgdGFyZ2V0PSJodHRwczovL2VuLndpa2lwZWRp
YS5vcmcvdy9pbmRleC5waHA/dGl0bGU9UV8lMjhudW1iZXJfZm9ybWF0JTI5JmFtcDtvbGRpZD02
OTcyNTI2MTUiPgorPGZyb250PgorPHRpdGxlPlEgKG51bWJlciBmb3JtYXQpPC90aXRsZT4KKzxh
dXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzxk
YXRlIG1vbnRoPSJEZWNlbWJlciIgeWVhcj0iMjAxNSIvPgorPC9mcm9udD4KKzwvcmVmZXJlbmNl
PgorCis8cmVmZXJlbmNlIGFuY2hvcj0icmVwbGF5LWdhaW4iCisgdGFyZ2V0PSJodHRwczovL3dp
a2kueGlwaC5vcmcvVm9yYmlzQ29tbWVudCNSZXBsYXlfR2FpbiI+Cis8ZnJvbnQ+Cis8dGl0bGU+
Vm9yYmlzQ29tbWVudDogUmVwbGF5IEdhaW48L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0iQy4i
IHN1cm5hbWU9IlBhcmtlciIgZnVsbG5hbWU9IkNvbnJhZCBQYXJrZXIiLz4KKzxhdXRob3IgaW5p
dGlhbHM9Ik0uIiBzdXJuYW1lPSJMZWVzZSIgZnVsbG5hbWU9Ik1hcnRpbiBMZWVzZSIvPgorPGRh
dGUgbW9udGg9Ikp1bmUiIHllYXI9IjIwMDkiLz4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKwor
PHJlZmVyZW5jZSBhbmNob3I9InNlZWtpbmciCisgdGFyZ2V0PSJodHRwczovL3dpa2kueGlwaC5v
cmcvU2Vla2luZyI+Cis8ZnJvbnQ+Cis8dGl0bGU+R3JhbnVsZXBvcyBFbmNvZGluZyBhbmQgSG93
IFNlZWtpbmcgUmVhbGx5IFdvcmtzPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IlMuIiBzdXJu
YW1lPSJQZmVpZmZlciIgZnVsbG5hbWU9IlNpbHZpYSBQZmVpZmZlciIvPgorPGF1dGhvciBpbml0
aWFscz0iQy4iIHN1cm5hbWU9IlBhcmtlciIgZnVsbG5hbWU9IkNvbnJhZCBQYXJrZXIiLz4KKzxh
dXRob3IgaW5pdGlhbHM9IkcuIiBzdXJuYW1lPSJNYXh3ZWxsIiBmdWxsbmFtZT0iR3JlZyBNYXh3
ZWxsIi8+Cis8ZGF0ZSBtb250aD0iTWF5IiB5ZWFyPSIyMDEyIi8+Cis8L2Zyb250PgorPC9yZWZl
cmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJ2b3JiaXMtbWFwcGluZyIKKyB0YXJnZXQ9Imh0
dHBzOi8vd3d3LnhpcGgub3JnL3ZvcmJpcy9kb2MvVm9yYmlzX0lfc3BlYy5odG1sI3gxLTgxMDAw
NC4zLjkiPgorPGZyb250PgorPHRpdGxlPlRoZSBWb3JiaXMgSSBTcGVjaWZpY2F0aW9uLCBTZWN0
aW9uIDQuMy45IE91dHB1dCBDaGFubmVsIE9yZGVyPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9
IkMuIiBzdXJuYW1lPSJNb250Z29tZXJ5IgorIGZ1bGxuYW1lPSJDaHJpc3RvcGhlciAmcXVvdDtN
b250eSZxdW90OyBNb250Z29tZXJ5Ii8+Cis8ZGF0ZSBtb250aD0iSmFudWFyeSIgeWVhcj0iMjAx
MCIvPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0idm9yYmlz
LXRyaW0iCisgdGFyZ2V0PSJodHRwczovL3hpcGgub3JnL3ZvcmJpcy9kb2MvVm9yYmlzX0lfc3Bl
Yy5odG1sI3gxLTEzMjAwMEEuMiI+CisgIDxmcm9udD4KKyAgICA8dGl0bGU+VGhlIFZvcmJpcyBJ
IFNwZWNpZmljYXRpb24sIEFwcGVuZGl4Jm5ic3A7QTogRW1iZWRkaW5nIFZvcmJpcworICAgICAg
aW50byBhbiBPZ2cgc3RyZWFtPC90aXRsZT4KKyAgICA8YXV0aG9yIGluaXRpYWxzPSJDLiIgc3Vy
bmFtZT0iTW9udGdvbWVyeSIKKyAgICAgZnVsbG5hbWU9IkNocmlzdG9waGVyICZxdW90O01vbnR5
JnF1b3Q7IE1vbnRnb21lcnkiLz4KKyAgICA8ZGF0ZSBtb250aD0iTm92ZW1iZXIiIHllYXI9IjIw
MDgiLz4KKyAgPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0id2F2
ZS1tdWx0aWNoYW5uZWwiCisgdGFyZ2V0PSJodHRwOi8vbXNkbi5taWNyb3NvZnQuY29tL2VuLXVz
L3dpbmRvd3MvaGFyZHdhcmUvZ2c0NjMwMDYuYXNweCI+CisgIDxmcm9udD4KKyAgICA8dGl0bGU+
TXVsdGlwbGUgQ2hhbm5lbCBBdWRpbyBEYXRhIGFuZCBXQVZFIEZpbGVzPC90aXRsZT4KKyAgICA8
YXV0aG9yPgorICAgICAgPG9yZ2FuaXphdGlvbj5NaWNyb3NvZnQgQ29ycG9yYXRpb248L29yZ2Fu
aXphdGlvbj4KKyAgICA8L2F1dGhvcj4KKyAgICA8ZGF0ZSBtb250aD0iTWFyY2giIHllYXI9IjIw
MDciLz4KKyAgPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8L3JlZmVyZW5jZXM+CisKKzwvYmFj
az4KKzwvcmZjPgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLXVwZGF0ZS54
bWwgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2RvYy9kcmFmdC1pZXRmLWNvZGVjLW9wdXMtdXBkYXRlLnhtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZTUy
YTE2NjhkOTA1OTc4MTVmY2E3YTlkYmVmMzhiODg5NmM1MzYyCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9k
b2MvZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLXVwZGF0ZS54bWwKQEAgLTAsMCArMSw1MTkgQEAKKzw/
eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVTLUFTQ0lJIj8+Cis8IURPQ1RZUEUgcmZjIFNZ
U1RFTSAicmZjMjYyOS5kdGQiPgorPD9yZmMgdG9jPSJ5ZXMiPz4KKzw/cmZjIHRvY29tcGFjdD0i
eWVzIj8+Cis8P3JmYyB0b2NkZXB0aD0iMyI/PgorPD9yZmMgdG9jaW5kZW50PSJ5ZXMiPz4KKzw/
cmZjIHN5bXJlZnM9InllcyI/PgorPD9yZmMgc29ydHJlZnM9InllcyI/PgorPD9yZmMgY29tbWVu
dHM9InllcyI/PgorPD9yZmMgaW5saW5lPSJ5ZXMiPz4KKzw/cmZjIGNvbXBhY3Q9InllcyI/Pgor
PD9yZmMgc3ViY29tcGFjdD0ibm8iPz4KKzxyZmMgY2F0ZWdvcnk9InN0ZCIgZG9jTmFtZT0iZHJh
ZnQtaWV0Zi1jb2RlYy1vcHVzLXVwZGF0ZS0wOCIKKyAgICAgaXByPSJ0cnVzdDIwMDkwMiIgdXBk
YXRlcz0iNjcxNiI+CisgIDxmcm9udD4KKyAgICA8dGl0bGUgYWJicmV2PSJPcHVzIFVwZGF0ZSI+
VXBkYXRlcyB0byB0aGUgT3B1cyBBdWRpbyBDb2RlYzwvdGl0bGU+CisKKzxhdXRob3IgaW5pdGlh
bHM9IkpNIiBzdXJuYW1lPSJWYWxpbiIgZnVsbG5hbWU9IkplYW4tTWFyYyBWYWxpbiI+Cis8b3Jn
YW5pemF0aW9uPk1vemlsbGEgQ29ycG9yYXRpb248L29yZ2FuaXphdGlvbj4KKzxhZGRyZXNzPgor
PHBvc3RhbD4KKzxzdHJlZXQ+MzMxIEUuIEV2ZWx5biBBdmVudWU8L3N0cmVldD4KKzxjaXR5Pk1v
dW50YWluIFZpZXc8L2NpdHk+Cis8cmVnaW9uPkNBPC9yZWdpb24+Cis8Y29kZT45NDA0MTwvY29k
ZT4KKzxjb3VudHJ5PlVTQTwvY291bnRyeT4KKzwvcG9zdGFsPgorPHBob25lPisxIDY1MCA5MDMt
MDgwMDwvcGhvbmU+Cis8ZW1haWw+am12YWxpbkBqbXZhbGluLmNhPC9lbWFpbD4KKzwvYWRkcmVz
cz4KKzwvYXV0aG9yPgorCis8YXV0aG9yIGluaXRpYWxzPSJLLiIgc3VybmFtZT0iVm9zIiBmdWxs
bmFtZT0iS29lbiBWb3MiPgorPG9yZ2FuaXphdGlvbj52b2NUb25lPC9vcmdhbml6YXRpb24+Cis8
YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3RyZWV0Pjwvc3RyZWV0PgorPGNpdHk+PC9jaXR5PgorPHJl
Z2lvbj48L3JlZ2lvbj4KKzxjb2RlPjwvY29kZT4KKzxjb3VudHJ5PjwvY291bnRyeT4KKzwvcG9z
dGFsPgorPHBob25lPjwvcGhvbmU+Cis8ZW1haWw+a29lbnZvczc0QGdtYWlsLmNvbTwvZW1haWw+
Cis8L2FkZHJlc3M+Cis8L2F1dGhvcj4KKworCisKKyAgICA8ZGF0ZSBkYXk9IjI2IiBtb250aD0i
SnVseSIgeWVhcj0iMjAxNyIgLz4KKworICAgIDxhYnN0cmFjdD4KKyAgICAgIDx0PlRoaXMgZG9j
dW1lbnQgYWRkcmVzc2VzIG1pbm9yIGlzc3VlcyB0aGF0IHdlcmUgZm91bmQgaW4gdGhlIHNwZWNp
ZmljYXRpb24KKyAgICAgIG9mIHRoZSBPcHVzIGF1ZGlvIGNvZGVjIGluIFJGQyA2NzE2LjwvdD4K
KyAgICA8L2Fic3RyYWN0PgorICA8L2Zyb250PgorCisgIDxtaWRkbGU+CisgICAgPHNlY3Rpb24g
dGl0bGU9IkludHJvZHVjdGlvbiI+CisgICAgICA8dD5UaGlzIGRvY3VtZW50IGFkZHJlc3NlcyBt
aW5vciBpc3N1ZXMgdGhhdCB3ZXJlIGRpc2NvdmVyZWQgaW4gdGhlIHJlZmVyZW5jZQorICAgICAg
aW1wbGVtZW50YXRpb24gb2YgdGhlIE9wdXMgY29kZWMuIFVubGlrZSBtb3N0IElFVEYgc3BlY2lm
aWNhdGlvbnMsIE9wdXMgaXMgZGVmaW5lZAorICAgICAgaW4gPHhyZWYgdGFyZ2V0PSJSRkM2NzE2
Ij5SRkMgNjcxNjwveHJlZj4gaW4gdGVybXMgb2YgYSBub3JtYXRpdmUgcmVmZXJlbmNlCisgICAg
ICBkZWNvZGVyIGltcGxlbWVudGF0aW9uIHJhdGhlciB0aGFuIGZyb20gdGhlIGFzc29jaWF0ZWQg
dGV4dCBkZXNjcmlwdGlvbi4KKyAgICAgIFRoYXQgUkZDIGluY2x1ZGVzIHRoZSByZWZlcmVuY2Ug
ZGVjb2RlciBpbXBsZW1lbnRhdGlvbiBhcyBBcHBlbmRpeCBBLgorICAgICAgVGhhdCdzIHdoeSBv
bmx5IGlzc3VlcyBhZmZlY3RpbmcgdGhlIGRlY29kZXIgYXJlCisgICAgICBsaXN0ZWQgaGVyZS4g
QW4gdXAtdG8tZGF0ZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgT3B1cyBlbmNvZGVyIGNhbiBiZSBm
b3VuZCBhdAorICAgICAgPGVyZWYgdGFyZ2V0PSJodHRwczovL29wdXMtY29kZWMub3JnLyIvPi48
L3Q+CisgICAgPHQ+CisgICAgICBTb21lIG9mIHRoZSBjaGFuZ2VzIGluIHRoaXMgZG9jdW1lbnQg
dXBkYXRlIG5vcm1hdGl2ZSBiZWhhdmlvdXIgaW4gYSB3YXkgdGhhdCByZXF1aXJlcworICAgICAg
bmV3IHRlc3QgdmVjdG9ycy4gVGhlIEVuZ2xpc2ggdGV4dCBvZiB0aGUgc3BlY2lmaWNhdGlvbiBp
cyB1bmFmZmVjdGVkLCBvbmx5CisgICAgICB0aGUgQyBpbXBsZW1lbnRhdGlvbiBpcy4gVGhlIHVw
ZGF0ZWQgc3BlY2lmaWNhdGlvbiByZW1haW5zIGZ1bGx5IGNvbXBhdGlibGUgd2l0aAorICAgICAg
dGhlIG9yaWdpbmFsIHNwZWNpZmljYXRpb24uCisgICAgPC90PgorCisgICAgPHQ+CisgICAgTm90
ZTogZHVlIHRvIFJGQyBmb3JtYXR0aW5nIGNvbnZlbnRpb25zLCBsaW5lcyBleGNlZWRpbmcgdGhl
IGNvbHVtbiB3aWR0aAorICAgIGluIHRoZSBwYXRjaCBhcmUgc3BsaXQgdXNpbmcgYSBiYWNrc2xh
c2ggY2hhcmFjdGVyLiBUaGUgYmFja3NsYXNoZXMKKyAgICBhdCB0aGUgZW5kIG9mIGEgbGluZSBh
bmQgdGhlIHdoaXRlIHNwYWNlIGF0IHRoZSBiZWdpbm5pbmcKKyAgICBvZiB0aGUgZm9sbG93aW5n
IGxpbmUgYXJlIG5vdCBwYXJ0IG9mIHRoZSBwYXRjaC4gQSBwcm9wZXJseSBmb3JtYXR0ZWQgcGF0
Y2gKKyAgICBpbmNsdWRpbmcgYWxsIGNoYW5nZXMgaXMgYXZhaWxhYmxlIGF0CisgICAgPGVyZWYg
dGFyZ2V0PSJodHRwczovL3d3dy5pZXRmLm9yZy9wcm9jZWVkaW5ncy85OC9zbGlkZXMvbWF0ZXJp
YWxzLTk4LWNvZGVjLW9wdXMtdXBkYXRlLTAwLnBhdGNoIi8+CisgICAgYW5kIGhhcyBhIFNIQTEg
MDI5ZTNhYTg4ZmMzNDJjOTFlNjdhMjFlN2JmYmM5NDU4NjYxY2Q1Zi4KKyAgICA8L3Q+CisKKyAg
ICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0iVGVybWlub2xvZ3kiPgorICAgICAg
PHQ+VGhlIGtleSB3b3JkcyAiTVVTVCIsICJNVVNUIE5PVCIsICJSRVFVSVJFRCIsICJTSEFMTCIs
ICJTSEFMTCBOT1QiLAorICAgICAgIlNIT1VMRCIsICJTSE9VTEQgTk9UIiwgIlJFQ09NTUVOREVE
IiwgIk1BWSIsIGFuZCAiT1BUSU9OQUwiIGluIHRoaXMKKyAgICAgIGRvY3VtZW50IGFyZSB0byBi
ZSBpbnRlcnByZXRlZCBhcyBkZXNjcmliZWQgaW4gPHhyZWYKKyAgICAgIHRhcmdldD0iUkZDMjEx
OSI+UkZDIDIxMTk8L3hyZWY+LjwvdD4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0
aXRsZT0iU3RlcmVvIFN0YXRlIFJlc2V0IGluIFNJTEsiPgorICAgICAgPHQ+VGhlIHJlZmVyZW5j
ZSBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCByZWluaXRpYWxpemUgdGhlIHN0ZXJlbyBzdGF0ZQor
ICAgICAgZHVyaW5nIGEgbW9kZSBzd2l0Y2guIFRoZSBvbGQgc3RlcmVvIG1lbW9yeSBjYW4gcHJv
ZHVjZSBhIGJyaWVmIGltcHVsc2UKKyAgICAgIChpLmUuIHNpbmdsZSBzYW1wbGUpIGluIHRoZSBk
ZWNvZGVkIGF1ZGlvLiBUaGlzIGNhbiBiZSBmaXhlZCBieSBjaGFuZ2luZworICAgICAgc2lsay9k
ZWNfQVBJLmMgYXQgbGluZSA3MjoKKyAgICA8L3Q+Cis8ZmlndXJlPgorPGFydHdvcms+PCFbQ0RB
VEFbCis8Q09ERSBCRUdJTlM+CisgICAgIGZvciggbiA9IDA7IG4gPCBERUNPREVSX05VTV9DSEFO
TkVMUzsgbisrICkgeworICAgICAgICAgcmV0ICA9IHNpbGtfaW5pdF9kZWNvZGVyKCAmY2hhbm5l
bF9zdGF0ZVsgbiBdICk7CisgICAgIH0KKysgICAgc2lsa19tZW1zZXQoJigoc2lsa19kZWNvZGVy
ICopZGVjU3RhdGUpLT5zU3RlcmVvLCAwLAorKyAgICAgICAgICAgICAgICBzaXplb2YoKChzaWxr
X2RlY29kZXIgKilkZWNTdGF0ZSktPnNTdGVyZW8pKTsKKysgICAgLyogTm90IHN0cmljdGx5IG5l
ZWRlZCwgYnV0IGl0J3MgY2xlYW5lciB0aGF0IHdheSAqLworKyAgICAoKHNpbGtfZGVjb2RlciAq
KWRlY1N0YXRlKS0+cHJldl9kZWNvZGVfb25seV9taWRkbGUgPSAwOworIAorICAgICByZXR1cm4g
cmV0OworIH0KKzxDT0RFIEVORFM+CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyAgICAgPHQ+
CisgICAgIFRoaXMgY2hhbmdlIGFmZmVjdHMgdGhlIG5vcm1hdGl2ZSBvdXRwdXQgb2YgdGhlIGRl
Y29kZXIsIGJ1dCB0aGUKKyAgICAgYW1vdW50IG9mIGNoYW5nZSBpcyB3aXRoaW4gdGhlIHRvbGVy
YW5jZSBhbmQgdG9vIHNtYWxsIHRvIG1ha2UgdGhlIHRlc3R2ZWN0b3IgY2hlY2sgZmFpbC4KKyAg
ICAgIDwvdD4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiBhbmNob3I9InBhZGRpbmci
IHRpdGxlPSJQYXJzaW5nIG9mIHRoZSBPcHVzIFBhY2tldCBQYWRkaW5nIj4KKyAgICAgIDx0Pkl0
IHdhcyBkaXNjb3ZlcmVkIHRoYXQgc29tZSBpbnZhbGlkIHBhY2tldHMgb2YgdmVyeSBsYXJnZSBz
aXplIGNvdWxkIHRyaWdnZXIKKyAgICAgIGFuIG91dC1vZi1ib3VuZHMgcmVhZCBpbiB0aGUgT3B1
cyBwYWNrZXQgcGFyc2luZyBjb2RlIHJlc3BvbnNpYmxlIGZvciBwYWRkaW5nLgorICAgICAgVGhp
cyBpcyBkdWUgdG8gYW4gaW50ZWdlciBvdmVyZmxvdyBpZiB0aGUgc2lnbmFsZWQgcGFkZGluZyBl
eGNlZWRzIDJeMzEtMSBieXRlcworICAgICAgKHRoZSBhY3R1YWwgcGFja2V0IG1heSBiZSBzbWFs
bGVyKS4gVGhlIGNvZGUgY2FuIGJlIGZpeGVkIGJ5IGFwcGx5aW5nIHRoZSBmb2xsb3dpbmcKKyAg
ICAgIGNoYW5nZXMgYXQgbGluZSA1OTYgb2Ygc3JjL29wdXNfZGVjb2Rlci5jOgorICAgIDwvdD4K
KzxmaWd1cmU+Cis8YXJ0d29yaz48IVtDREFUQVsKKzxDT0RFIEJFR0lOUz4KKyAgICAgICAvKiBQ
YWRkaW5nIGZsYWcgaXMgYml0IDYgKi8KKyAgICAgICBpZiAoY2gmMHg0MCkKKyAgICAgICB7Cist
ICAgICAgICAgaW50IHBhZGRpbmc9MDsKKyAgICAgICAgICBpbnQgcDsKKyAgICAgICAgICBkbyB7
CisgICAgICAgICAgICAgaWYgKGxlbjw9MCkKKyAgICAgICAgICAgICAgICByZXR1cm4gT1BVU19J
TlZBTElEX1BBQ0tFVDsKKyAgICAgICAgICAgICBwID0gKmRhdGErKzsKKyAgICAgICAgICAgICBs
ZW4tLTsKKy0gICAgICAgICAgICBwYWRkaW5nICs9IHA9PTI1NSA/IDI1NDogcDsKKysgICAgICAg
ICAgICBsZW4gLT0gcD09MjU1ID8gMjU0OiBwOworICAgICAgICAgIH0gd2hpbGUgKHA9PTI1NSk7
CistICAgICAgICAgbGVuIC09IHBhZGRpbmc7CisgICAgICAgfQorPENPREUgRU5EUz4KK11dPjwv
YXJ0d29yaz4KKzwvZmlndXJlPgorICAgICAgPHQ+VGhpcyBwYWNrZXQgcGFyc2luZyBpc3N1ZSBp
cyBsaW1pdGVkIHRvIHJlYWRpbmcgbWVtb3J5IHVwCisgICAgICAgICB0byBhYm91dCA2MCBrQiBi
ZXlvbmQgdGhlIGNvbXByZXNzZWQgYnVmZmVyLiBUaGlzIGNhbiBvbmx5IGJlIHRyaWdnZXJlZAor
ICAgICAgICAgYnkgYSBjb21wcmVzc2VkIHBhY2tldCBtb3JlIHRoYW4gYWJvdXQgMTYgTUIgbG9u
Zywgc28gaXQncyBub3QgYSBwcm9ibGVtCisgICAgICAgICBmb3IgUlRQLiBJbiB0aGVvcnksIGl0
IGNvdWxkIGNyYXNoIGEgZmlsZQorICAgICAgICAgZGVjb2RlciAoZS5nLiBPcHVzIGluIE9nZykg
aWYgdGhlIG1lbW9yeSBqdXN0IGFmdGVyIHRoZSBpbmNvbWluZyBwYWNrZXQKKyAgICAgICAgIGlz
IG91dC1vZi1yYW5nZSwgYnV0IG91ciBhdHRlbXB0cyB0byB0cmlnZ2VyIHN1Y2ggYSBjcmFzaCBp
biBhIHByb2R1Y3Rpb24KKyAgICAgICAgIGFwcGxpY2F0aW9uIGJ1aWx0IHVzaW5nIGFuIGFmZmVj
dGVkIHZlcnNpb24gb2YgdGhlIE9wdXMgZGVjb2RlciBmYWlsZWQuPC90PgorICAgIDwvc2VjdGlv
bj4KKworICAgIDxzZWN0aW9uIGFuY2hvcj0icmVzYW1wbGVyIiB0aXRsZT0iUmVzYW1wbGVyIGJ1
ZmZlciI+CisgICAgICA8dD5UaGUgU0lMSyByZXNhbXBsZXIgaGFkIHRoZSBmb2xsb3dpbmcgaXNz
dWVzOgorICAgICAgICA8bGlzdCBzdHlsZT0ibnVtYmVycyI+CisgICAgPHQ+VGhlIGNhbGxzIHRv
IG1lbWNweSgpIHdlcmUgdXNpbmcgc2l6ZW9mKG9wdXNfaW50MzIpLCBidXQgdGhlIHR5cGUgb2Yg
dGhlCisgICAgICAgIGxvY2FsIGJ1ZmZlciB3YXMgb3B1c19pbnQxNi48L3Q+CisgICAgPHQ+QmVj
YXVzZSB0aGUgc2l6ZSB3YXMgd3JvbmcsIHRoaXMgcG90ZW50aWFsbHkgYWxsb3dlZCB0aGUgc291
cmNlCisgICAgICAgIGFuZCBkZXN0aW5hdGlvbiByZWdpb25zIG9mIHRoZSBtZW1jcHkoKSB0byBv
dmVybGFwLgorICAgICAgICAgIFdlIGJlbGlldmUgdGhhdCBuU2FtcGxlc0luIChudW1iZXIgb2Yg
aW5wdXQgc2FtcGxlcykgaXMgYXQgbGVhc3QgZnNfaW5fa2haIChzYW1wbGluZyByYXRlIGluIGtI
eiksCisgICAgICAgICAgd2hpY2ggaXMgYXQgbGVhc3QgOC4KKyAgICAgICBTaW5jZSBSRVNBTVBM
RVJfT1JERVJfRklSXzEyIGlzIG9ubHkgOCwgdGhhdCBzaG91bGQgbm90IGJlIGEgcHJvYmxlbSBv
bmNlCisgICAgICAgdGhlIHR5cGUgc2l6ZSBpcyBmaXhlZC48L3Q+CisgICAgICAgICAgPHQ+VGhl
IHNpemUgb2YgdGhlIGJ1ZmZlciB1c2VkIFJFU0FNUExFUl9NQVhfQkFUQ0hfU0laRV9JTiwgYnV0
IHRoZQorICAgICAgICBkYXRhIHN0b3JlZCBpbiBpdCB3YXMgYWN0dWFsbHkgdHdpY2UgdGhlIGlu
cHV0IGJhdGNoIHNpemUKKyAgICAgICAgKG5TYW1wbGVzSW4mbHQ7Jmx0OzEpLjwvdD4KKyAgICAg
IDwvbGlzdD48L3Q+CisgICAgICA8dD4KKyAgICAgIFRoZSBmYWN0IHRoYXQgdGhlIGNvZGUgbmV2
ZXIgcHJvZHVjZWQgYW55IGVycm9yIGluIHRlc3RpbmcgKGluY2x1ZGluZyB3aGVuIHJ1biB1bmRl
ciB0aGUKKyAgICAgIFZhbGdyaW5kIG1lbW9yeSBkZWJ1Z2dlciksIHN1Z2dlc3RzIHRoYXQgaW4g
cHJhY3RpY2UKKyAgICAgdGhlIGJhdGNoIHNpemVzIGFyZSByZWFzb25hYmxlIGVub3VnaCB0aGF0
IG5vbmUgb2YgdGhlIGlzc3VlcyBhYm92ZQorICAgICB3YXMgZXZlciBhIHByb2JsZW0uIEhvd2V2
ZXIsIHRoZSBhdXRob3JzIGtub3cgb2Ygbm8gb2J2aW91cyBhcHByb2FjaCB0byBwcm92aW5nIHRo
YXQuCisgICAgPC90PgorICAgIDx0PlRoZSBjb2RlIGNhbiBiZSBmaXhlZCBieSBhcHBseWluZyB0
aGUgZm9sbG93aW5nIGNoYW5nZXMgdG8gbGluZSA3OCBvZiBzaWxrL3Jlc2FtcGxlcl9wcml2YXRl
X0lJUl9GSVIuYzoKKyAgICA8L3Q+Cis8ZmlndXJlPgorPGFydHdvcms+PCFbQ0RBVEFbCis8Q09E
RSBCRUdJTlM+CisgKQorIHsKKyAgICAgc2lsa19yZXNhbXBsZXJfc3RhdGVfc3RydWN0ICpTID0g
XAorKHNpbGtfcmVzYW1wbGVyX3N0YXRlX3N0cnVjdCAqKVNTOworICAgICBvcHVzX2ludDMyIG5T
YW1wbGVzSW47CisgICAgIG9wdXNfaW50MzIgbWF4X2luZGV4X1ExNiwgaW5kZXhfaW5jcmVtZW50
X1ExNjsKKy0gICAgb3B1c19pbnQxNiBidWZbIFJFU0FNUExFUl9NQVhfQkFUQ0hfU0laRV9JTiAr
IFwKK1JFU0FNUExFUl9PUkRFUl9GSVJfMTIgXTsKKysgICAgb3B1c19pbnQxNiBidWZbIDIqUkVT
QU1QTEVSX01BWF9CQVRDSF9TSVpFX0lOICsgXAorUkVTQU1QTEVSX09SREVSX0ZJUl8xMiBdOwor
IAorICAgICAvKiBDb3B5IGJ1ZmZlcmVkIHNhbXBsZXMgdG8gc3RhcnQgb2YgYnVmZmVyICovCist
ICAgIHNpbGtfbWVtY3B5KCBidWYsIFMtPnNGSVIsIFJFU0FNUExFUl9PUkRFUl9GSVJfMTIgXAor
KiBzaXplb2YoIG9wdXNfaW50MzIgKSApOworKyAgICBzaWxrX21lbWNweSggYnVmLCBTLT5zRklS
LCBSRVNBTVBMRVJfT1JERVJfRklSXzEyIFwKKyogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKKyAK
KyAgICAgLyogSXRlcmF0ZSBvdmVyIGJsb2NrcyBvZiBmcmFtZVNpemVJbiBpbnB1dCBzYW1wbGVz
ICovCisgICAgIGluZGV4X2luY3JlbWVudF9RMTYgPSBTLT5pbnZSYXRpb19RMTY7CisgICAgIHdo
aWxlKCAxICkgeworICAgICAgICAgblNhbXBsZXNJbiA9IHNpbGtfbWluKCBpbkxlbiwgUy0+YmF0
Y2hTaXplICk7CisgCisgICAgICAgICAvKiBVcHNhbXBsZSAyeCAqLworICAgICAgICAgc2lsa19y
ZXNhbXBsZXJfcHJpdmF0ZV91cDJfSFEoIFMtPnNJSVIsICZidWZbIFwKK1JFU0FNUExFUl9PUkRF
Ul9GSVJfMTIgXSwgaW4sIG5TYW1wbGVzSW4gKTsKKyAKKyAgICAgICAgIG1heF9pbmRleF9RMTYg
PSBzaWxrX0xTSElGVDMyKCBuU2FtcGxlc0luLCAxNiArIDEgXAorKTsgICAgICAgICAvKiArIDEg
YmVjYXVzZSAyeCB1cHNhbXBsaW5nICovCisgICAgICAgICBvdXQgPSBzaWxrX3Jlc2FtcGxlcl9w
cml2YXRlX0lJUl9GSVJfSU5URVJQT0woIG91dCwgXAorYnVmLCBtYXhfaW5kZXhfUTE2LCBpbmRl
eF9pbmNyZW1lbnRfUTE2ICk7CisgICAgICAgICBpbiArPSBuU2FtcGxlc0luOworICAgICAgICAg
aW5MZW4gLT0gblNhbXBsZXNJbjsKKyAKKyAgICAgICAgIGlmKCBpbkxlbiA+IDAgKSB7CisgICAg
ICAgICAgICAgLyogTW9yZSBpdGVyYXRpb25zIHRvIGRvOyBjb3B5IGxhc3QgcGFydCBvZiBcCitm
aWx0ZXJlZCBzaWduYWwgdG8gYmVnaW5uaW5nIG9mIGJ1ZmZlciAqLworLSAgICAgICAgICAgIHNp
bGtfbWVtY3B5KCBidWYsICZidWZbIG5TYW1wbGVzSW4gPDwgMSBdLCBcCitSRVNBTVBMRVJfT1JE
RVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKKysgICAgICAgICAgICBzaWxrX21l
bW1vdmUoIGJ1ZiwgJmJ1ZlsgblNhbXBsZXNJbiA8PCAxIF0sIFwKK1JFU0FNUExFUl9PUkRFUl9G
SVJfMTIgKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOworICAgICAgICAgfSBlbHNlIHsKKyAgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgIH0KKyAgICAgfQorIAorICAgICAvKiBDb3B5IGxhc3Qg
cGFydCBvZiBmaWx0ZXJlZCBzaWduYWwgdG8gdGhlIHN0YXRlIGZvciBcCit0aGUgbmV4dCBjYWxs
ICovCistICAgIHNpbGtfbWVtY3B5KCBTLT5zRklSLCAmYnVmWyBuU2FtcGxlc0luIDw8IDEgXSwg
XAorUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQzMiApICk7CisrICAg
IHNpbGtfbWVtY3B5KCBTLT5zRklSLCAmYnVmWyBuU2FtcGxlc0luIDw8IDEgXSwgXAorUkVTQU1Q
TEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CisgfQorPENPREUgRU5E
Uz4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0
aW9uIHRpdGxlPSJJbnRlZ2VyIHdyYXAtYXJvdW5kIGluIGludmVyc2UgZ2FpbiBjb21wdXRhdGlv
biI+CisgICAgICA8dD4KKyAgICAgICAgSXQgd2FzIGRpc2NvdmVyZWQgdGhyb3VnaCBkZWNvZGVy
IGZ1enppbmcgdGhhdCBzb21lIGJpdHN0cmVhbXMgY291bGQgcHJvZHVjZQorICAgICAgICBpbnRl
Z2VyIHZhbHVlcyBleGNlZWRpbmcgMzItYml0cyBpbiBMUENfaW52ZXJzZV9wcmVkX2dhaW5fUUEo
KSwgY2F1c2luZworICAgICAgICBhIHdyYXAtYXJvdW5kLiBBbHRob3VnaCB0aGUgZXJyb3IgaXMg
aGFybWxlc3MgaW4gcHJhY3RpY2UsIHRoZSBDIHN0YW5kYXJkIGNvbnNpZGVycworICAgICAgICB0
aGUgYmVoYXZpb3IgYXMgdW5kZWZpbmVkLCBzbyB0aGUgZm9sbG93aW5nIHBhdGNoIHRvIGxpbmUg
ODcgb2Ygc2lsay9MUENfaW52X3ByZWRfZ2Fpbi5jCisgICAgICAgIGRldGVjdHMgdmFsdWVzIHRo
YXQgZG8gbm90IGZpdCBpbiBhIDMyLWJpdCBpbnRlZ2VyIGFuZCBjb25zaWRlcnMgdGhlIGNvcnJl
c3BvbmRpbmcgZmlsdGVycyB1bnN0YWJsZToKKyAgICAgIDwvdD4KKzxmaWd1cmU+Cis8YXJ0d29y
az48IVtDREFUQVsKKzxDT0RFIEJFR0lOUz4KKyAgICAgICAgIC8qIFVwZGF0ZSBBUiBjb2VmZmlj
aWVudCAqLworICAgICAgICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyApIHsKKy0gICAgICAgICAg
ICB0bXBfUUEgPSBBb2xkX1FBWyBuIF0gLSBNVUwzMl9GUkFDX1EoIFwKK0FvbGRfUUFbIGsgLSBu
IC0gMSBdLCByY19RMzEsIDMxICk7CistICAgICAgICAgICAgQW5ld19RQVsgbiBdID0gTVVMMzJf
RlJBQ19RKCB0bXBfUUEsIHJjX211bHQyICwgbXVsdDJRICk7CisrICAgICAgICAgICAgb3B1c19p
bnQ2NCB0bXA2NDsKKysgICAgICAgICAgICB0bXBfUUEgPSBzaWxrX1NVQl9TQVQzMiggQW9sZF9R
QVsgbiBdLCBNVUwzMl9GUkFDX1EoIFwKK0FvbGRfUUFbIGsgLSBuIC0gMSBdLCByY19RMzEsIDMx
ICkgKTsKKysgICAgICAgICAgICB0bXA2NCA9IHNpbGtfUlNISUZUX1JPVU5ENjQoIHNpbGtfU01V
TEwoIHRtcF9RQSwgXAorcmNfbXVsdDIgKSwgbXVsdDJRKTsKKysgICAgICAgICAgICBpZiggdG1w
NjQgPiBzaWxrX2ludDMyX01BWCB8fCB0bXA2NCA8IHNpbGtfaW50MzJfTUlOICkgeworKyAgICAg
ICAgICAgICAgIHJldHVybiAwOworKyAgICAgICAgICAgIH0KKysgICAgICAgICAgICBBbmV3X1FB
WyBuIF0gPSAoIG9wdXNfaW50MzIgKXRtcDY0OworICAgICAgICAgfQorPENPREUgRU5EUz4KK11d
PjwvYXJ0d29yaz4KKzwvZmlndXJlPgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIHRp
dGxlPSJJbnRlZ2VyIHdyYXAtYXJvdW5kIGluIExTRiBkZWNvZGluZyIgYW5jaG9yPSJsc2Zfb3Zl
cmZsb3ciPgorICAgICAgPHQ+CisgICAgICAgIEl0IHdhcyBkaXNjb3ZlcmVkIC0tIGFsc28gZnJv
bSBkZWNvZGVyIGZ1enppbmcgLS0gdGhhdCBhbiBpbnRlZ2VyIHdyYXAtYXJvdW5kIGNvdWxkCisg
ICAgICAgIG9jY3VyIHdoZW4gZGVjb2RpbmcgbGluZSBzcGVjdHJhbCBmcmVxdWVuY3kgY29lZmZp
Y2llbnRzIGZyb20gZXh0cmVtZSBiaXRzdHJlYW1zLgorICAgICAgICBUaGUgZW5kIHJlc3VsdCBv
ZiB0aGUgd3JhcC1hcm91bmQgaXMgYW4gaWxsZWdhbCByZWFkIGFjY2VzcyBvbiB0aGUgc3RhY2ss
IHdoaWNoCisgICAgICAgIHRoZSBhdXRob3JzIGRvIG5vdCBiZWxpZXZlIGlzIGV4cGxvaXRhYmxl
IGJ1dCBzaG91bGQgbm9uZXRoZWxlc3MgYmUgZml4ZWQuIFRoZSBmb2xsb3dpbmcKKyAgICAgICAg
cGF0Y2ggdG8gbGluZSAxMzcgb2Ygc2lsay9OTFNGX3N0YWJpbGl6ZS5jIHByZXZlbnRzIHRoZSBw
cm9ibGVtOgorICAgICAgPC90PgorPGZpZ3VyZT4KKzxhcnR3b3JrPjwhW0NEQVRBWworPENPREUg
QkVHSU5TPgorICAgICAgICAgICAvKiBLZWVwIGRlbHRhX21pbiBkaXN0YW5jZSBiZXR3ZWVuIHRo
ZSBOTFNGcyAqLworICAgICAgICAgZm9yKCBpID0gMTsgaSA8IEw7IGkrKyApCistICAgICAgICAg
ICAgTkxTRl9RMTVbaV0gPSBzaWxrX21heF9pbnQoIE5MU0ZfUTE1W2ldLCBcCitOTFNGX1ExNVtp
LTFdICsgTkRlbHRhTWluX1ExNVtpXSApOworKyAgICAgICAgICAgIE5MU0ZfUTE1W2ldID0gc2ls
a19tYXhfaW50KCBOTFNGX1ExNVtpXSwgXAorc2lsa19BRERfU0FUMTYoIE5MU0ZfUTE1W2ktMV0s
IE5EZWx0YU1pbl9RMTVbaV0gKSApOworIAorICAgICAgICAgLyogTGFzdCBOTFNGIHNob3VsZCBi
ZSBubyBoaWdoZXIgdGhhbiAxIC0gTkRlbHRhTWluW0xdICovCis8Q09ERSBFTkRTPgorXV0+PC9h
cnR3b3JrPgorPC9maWd1cmU+CisKKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRs
ZT0iQ2FwIG9uIEJhbmQgRW5lcmd5Ij4KKyAgICAgIDx0Pk9uIGV4dHJlbWUgYml0LXN0cmVhbXMs
IGl0IGlzIHBvc3NpYmxlIGZvciBsb2ctZG9tYWluIGJhbmQgZW5lcmd5IGxldmVscworICAgICAg
ICB0byBleGNlZWQgdGhlIG1heGltdW0gc2luZ2xlLXByZWNpc2lvbiBmbG9hdGluZyBwb2ludCB2
YWx1ZSBvbmNlIGNvbnZlcnRlZAorICAgICAgICB0byBhIGxpbmVhciBzY2FsZS4gVGhpcyB3b3Vs
ZCBsYXRlciBjYXVzZSB0aGUgZGVjb2RlZCB2YWx1ZXMgdG8gYmUgTmFOIChub3QgYSBudW1iZXIp
LAorICAgICAgICBwb3NzaWJseSBjYXVzaW5nIHByb2JsZW1zIGluIHRoZSBzb2Z0d2FyZSB1c2lu
ZyB0aGUgUENNIHZhbHVlcy4gVGhpcyBjYW4gYmUKKyAgICAgICAgYXZvaWRlZCB3aXRoIHRoZSBm
b2xsb3dpbmcgcGF0Y2ggdG8gbGluZSA1NTIgb2YgY2VsdC9xdWFudF9iYW5kcy5jOgorICAgICAg
PC90PgorPGZpZ3VyZT4KKzxhcnR3b3JrPjwhW0NEQVRBWworPENPREUgQkVHSU5TPgorICAgICAg
IHsKKyAgICAgICAgICBvcHVzX3ZhbDE2IGxnID0gQUREMTYob2xkRUJhbmRzW2krYyptLT5uYkVC
YW5kc10sCisgICAgICAgICAgICAgICAgICAgICAgICAgIFNITDE2KChvcHVzX3ZhbDE2KWVNZWFu
c1tpXSw2KSk7CisrICAgICAgICAgbGcgPSBNSU4zMihRQ09OU1QzMigzMi5mLCAxNiksIGxnKTsK
KyAgICAgICAgICBlQmFuZHNbaStjKm0tPm5iRUJhbmRzXSA9IFBTSFIzMihjZWx0X2V4cDIobGcp
LDQpOworICAgICAgIH0KKyAgICAgICBmb3IgKDtpPG0tPm5iRUJhbmRzO2krKykKKzxDT0RFIEVO
RFM+CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2Vj
dGlvbiB0aXRsZT0iSHlicmlkIEZvbGRpbmciIGFuY2hvcj0iZm9sZGluZyI+CisgICAgICA8dD5X
aGVuIGVuY29kaW5nIGluIGh5YnJpZCBtb2RlIGF0IGxvdyBiaXRyYXRlLCB3ZSBzb21ldGltZXMg
b25seSBoYXZlCisgICAgICAgIGVub3VnaCBiaXRzIHRvIGNvZGUgYSBzaW5nbGUgQ0VMVCBiYW5k
ICg4IC0gOS42IGtIeikuIFdoZW4gdGhhdCBoYXBwZW5zLAorICAgICAgICB0aGUgc2Vjb25kIGJh
bmQgKENFTFQgYmFuZCAxOCwgZnJvbSA5LjYgdG8gMTIga0h6KSBjYW5ub3QgdXNlIGZvbGRpbmcK
KyAgICAgICAgYmVjYXVzZSBpdCBpcyB3aWRlciB0aGFuIHRoZSBhbW91bnQgYWxyZWFkeSBjb2Rl
ZCwgYW5kIGZhbGxzIGJhY2sgdG8KKyAgICAgICAgd2hpdGUgbm9pc2UuIEJlY2F1c2UgaXQgY2Fu
IGFsc28gaGFwcGVuIG9uIHRyYW5zaWVudHMgKGUuZy4gc3RvcHMpLCBpdAorICAgICAgICBjYW4g
Y2F1c2UgYXVkaWJsZSBwcmUtZWNoby4KKyAgICAgIDwvdD4KKyAgICAgIDx0PgorICAgICAgICBU
byBhZGRyZXNzIHRoZSBpc3N1ZSwgd2UgY2hhbmdlIHRoZSBmb2xkaW5nIGJlaGF2aW9yIHNvIHRo
YXQgaXQgaXMKKyAgICAgICAgbmV2ZXIgZm9yY2VkIHRvIGZhbGwgYmFjayB0byBMQ0cgZHVlIHRv
IHRoZSBmaXJzdCBiYW5kIG5vdCBjb250YWluaW5nCisgICAgICAgIGVub3VnaCBjb2VmZmljaWVu
dHMgdG8gZm9sZCBvbnRvIHRoZSBzZWNvbmQgYmFuZC4gVGhpcworICAgICAgICBpcyBhY2hpZXZl
ZCBieSBzaW1wbHkgcmVwZWF0aW5nIHBhcnQgb2YgdGhlIGZpcnN0IGJhbmQgaW4gdGhlIGZvbGRp
bmcKKyAgICAgICAgb2YgdGhlIHNlY29uZCBiYW5kLiBUaGlzIGNoYW5nZXMgdGhlIGNvZGUgaW4g
Y2VsdC9iYW5kcy5jIGFyb3VuZCBsaW5lIDEyMzc6CisgICAgICA8L3Q+Cis8ZmlndXJlPgorPGFy
dHdvcms+PCFbQ0RBVEFbCis8Q09ERSBCRUdJTlM+CisgICAgICAgICAgYiA9IDA7CisgICAgICAg
fQorIAorLSAgICAgIGlmIChyZXN5bnRoICYmIE0qZUJhbmRzW2ldLU4gPj0gTSplQmFuZHNbc3Rh
cnRdICYmIFwKKyh1cGRhdGVfbG93YmFuZCB8fCBsb3diYW5kX29mZnNldD09MCkpCisrICAgICAg
aWYgKHJlc3ludGggJiYgKE0qZUJhbmRzW2ldLU4gPj0gTSplQmFuZHNbc3RhcnRdIHx8IFwKK2k9
PXN0YXJ0KzEpICYmICh1cGRhdGVfbG93YmFuZCB8fCBsb3diYW5kX29mZnNldD09MCkpCisgICAg
ICAgICAgICAgbG93YmFuZF9vZmZzZXQgPSBpOworIAorKyAgICAgIGlmIChpID09IHN0YXJ0KzEp
CisrICAgICAgeworKyAgICAgICAgIGludCBuMSwgbjI7CisrICAgICAgICAgaW50IG9mZnNldDsK
KysgICAgICAgICBuMSA9IE0qKGVCYW5kc1tzdGFydCsxXS1lQmFuZHNbc3RhcnRdKTsKKysgICAg
ICAgICBuMiA9IE0qKGVCYW5kc1tzdGFydCsyXS1lQmFuZHNbc3RhcnQrMV0pOworKyAgICAgICAg
IG9mZnNldCA9IE0qZUJhbmRzW3N0YXJ0XTsKKysgICAgICAgICAvKiBEdXBsaWNhdGUgZW5vdWdo
IG9mIHRoZSBmaXJzdCBiYW5kIGZvbGRpbmcgZGF0YSB0byBcCitiZSBhYmxlIHRvIGZvbGQgdGhl
IHNlY29uZCBiYW5kLgorKyAgICAgICAgICAgIENvcGllcyBubyBkYXRhIGZvciBDRUxULW9ubHkg
bW9kZS4gKi8KKysgICAgICAgICBPUFVTX0NPUFkoJm5vcm1bb2Zmc2V0K24xXSwgJm5vcm1bb2Zm
c2V0KzIqbjEgLSBuMl0sIG4yLW4xKTsKKysgICAgICAgICBpZiAoQz09MikKKysgICAgICAgICAg
ICBPUFVTX0NPUFkoJm5vcm0yW29mZnNldCtuMV0sICZub3JtMltvZmZzZXQrMipuMSAtIG4yXSwg
XAorbjItbjEpOworKyAgICAgIH0KKysKKyAgICAgICB0Zl9jaGFuZ2UgPSB0Zl9yZXNbaV07Cisg
ICAgICAgaWYgKGk+PW0tPmVmZkVCYW5kcykKKyAgICAgICB7Cis8Q09ERSBFTkRTPgorXV0+PC9h
cnR3b3JrPgorPC9maWd1cmU+CisKKyAgICAgIDx0PgorICAgICAgIGFzIHdlbGwgYXMgbGluZSAx
MjYwOgorICAgICAgPC90PgorCis8ZmlndXJlPgorPGFydHdvcms+PCFbQ0RBVEFbCis8Q09ERSBC
RUdJTlM+CisgICAgICAgICAgZm9sZF9zdGFydCA9IGxvd2JhbmRfb2Zmc2V0OworICAgICAgICAg
IHdoaWxlKE0qZUJhbmRzWy0tZm9sZF9zdGFydF0gPiBlZmZlY3RpdmVfbG93YmFuZCk7CisgICAg
ICAgICAgZm9sZF9lbmQgPSBsb3diYW5kX29mZnNldC0xOworLSAgICAgICAgIHdoaWxlKE0qZUJh
bmRzWysrZm9sZF9lbmRdIDwgZWZmZWN0aXZlX2xvd2JhbmQrTik7CisrICAgICAgICAgd2hpbGUo
Kytmb2xkX2VuZCA8IGkgJiYgTSplQmFuZHNbZm9sZF9lbmRdIDwgXAorZWZmZWN0aXZlX2xvd2Jh
bmQrTik7CisgICAgICAgICAgeF9jbSA9IHlfY20gPSAwOworICAgICAgICAgIGZvbGRfaSA9IGZv
bGRfc3RhcnQ7IGRvIHsKKyAgICAgICAgICAgIHhfY20gfD0gY29sbGFwc2VfbWFza3NbZm9sZF9p
KkMrMF07CisKKzxDT0RFIEVORFM+CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyAgICAgIDx0
PgorICAgICAgICBUaGUgZml4IGRvZXMgbm90IGltcGFjdCBjb21wYXRpYmlsaXR5LCBiZWNhdXNl
IHRoZSBpbXByb3ZlbWVudCBkb2VzCisgICAgICAgIG5vdCBkZXBlbmQgb24gdGhlIGVuY29kZXIg
ZG9pbmcgYW55dGhpbmcgc3BlY2lhbC4gVGhlcmUgaXMgYWxzbyBubworICAgICAgICByZWFzb25h
YmxlIHdheSBmb3IgYW4gZW5jb2RlciB0byB1c2UgdGhlIG9yaWdpbmFsIGJlaGF2aW9yIHRvCisg
ICAgICAgIGltcHJvdmUgcXVhbGl0eSBvdmVyIHRoZSBwcm9wb3NlZCBjaGFuZ2UuCisgICAgICA8
L3Q+CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24gdGl0bGU9IkRvd25taXggdG8gTW9u
byIgYW5jaG9yPSJzdGVyZW8iPgorICAgICAgPHQ+VGhlIGxhc3QgaXNzdWUgaXMgbm90IHN0cmlj
dGx5IGEgYnVnLCBidXQgaXQgaXMgYW4gaXNzdWUgdGhhdCBoYXMgYmVlbiByZXBvcnRlZAorICAg
ICAgd2hlbiBkb3dubWl4aW5nIGFuIE9wdXMgZGVjb2RlZCBzdHJlYW0gdG8gbW9ubywgd2hldGhl
ciB0aGlzIGlzIGRvbmUgaW5zaWRlIHRoZSBkZWNvZGVyCisgICAgICBvciBhcyBhIHBvc3QtcHJv
Y2Vzc2luZyBzdGVwIG9uIHRoZSBzdGVyZW8gZGVjb2RlciBvdXRwdXQuIE9wdXMgaW50ZW5zaXR5
IHN0ZXJlbyBhbGxvd3MKKyAgICAgIG9wdGlvbmFsbHkgY29kaW5nIHRoZSB0d28gY2hhbm5lbHMg
MTgwLWRlZ3JlZXMgb3V0IG9mIHBoYXNlIG9uIGEgcGVyLWJhbmQgYmFzaXMuCisgICAgICBUaGlz
IHByb3ZpZGVzIGJldHRlciBzdGVyZW8gcXVhbGl0eSB0aGFuIGZvcmNpbmcgdGhlIHR3byBjaGFu
bmVscyB0byBiZSBpbiBwaGFzZSwKKyAgICAgIGJ1dCB3aGVuIHRoZSBvdXRwdXQgaXMgZG93bm1p
eGVkIHRvIG1vbm8sIHRoZSBlbmVyZ3kgaW4gdGhlIGFmZmVjdGVkIGJhbmRzIGlzIGNhbmNlbGxl
ZAorICAgICAgc29tZXRpbWVzIHJlc3VsdGluZyBpbiBhdWRpYmxlIGFydGVmYWN0cy4KKyAgICAg
IDwvdD4KKyAgICAgIDx0PkFzIGEgd29yay1hcm91bmQgZm9yIHRoaXMgaXNzdWUsIHRoZSBkZWNv
ZGVyIE1BWSBjaG9vc2Ugbm90IHRvIGFwcGx5IHRoZSAxODAtZGVncmVlCisgICAgICBwaGFzZSBz
aGlmdCB3aGVuIHRoZSBvdXRwdXQgaXMgbWVhbnQgdG8gYmUgZG93bm1peGVkIChpbnNpZGUgb3IK
KyAgICAgIG91dHNpZGUgb2YgdGhlIGRlY29kZXIpLgorICAgICAgPC90PgorICAgIDwvc2VjdGlv
bj4KKworCisgICAgPHNlY3Rpb24gdGl0bGU9Ik5ldyBUZXN0IFZlY3RvcnMiPgorICAgICAgPHQ+
Q2hhbmdlcyBpbiA8eHJlZiB0YXJnZXQ9ImZvbGRpbmciLz4gYW5kIDx4cmVmIHRhcmdldD0ic3Rl
cmVvIi8+IGhhdmUKKyAgICAgICAgc3VmZmljaWVudCBpbXBhY3Qgb24gdGhlIHRlc3R2ZWN0b3Jz
IHRvIG1ha2UgdGhlbSBmYWlsLiBGb3IgdGhpcyByZWFzb24sCisgICAgICAgIHRoaXMgZG9jdW1l
bnQgYWxzbyB1cGRhdGVzIHRoZSBPcHVzIHRlc3QgdmVjdG9ycy4gVGhlIG5ldyB0ZXN0IHZlY3Rv
cnMgbm93CisgICAgICAgIGluY2x1ZGUgdHdvIGRlY29kZWQgb3V0cHV0cyBmb3IgdGhlIHNhbWUg
Yml0c3RyZWFtLiBUaGUgb3V0cHV0cyB3aXRoCisgICAgICAgIHN1ZmZpeCAnbScgZG8gbm90IGFw
cGx5IHRoZSBDRUxUIDE4MC1kZWdyZWUgcGhhc2Ugc2hpZnQgYXMgYWxsb3dlZCBpbgorICAgICAg
ICA8eHJlZiB0YXJnZXQ9InN0ZXJlbyIvPiwgd2hpbGUgdGhlIG91dHB1dHMgd2l0aG91dCB0aGUg
c3VmZml4IGRvLiBBbgorICAgICAgICBpbXBsZW1lbnRhdGlvbiBpcyBjb21wbGlhbnQgYXMgbG9u
ZyBhcyBpdCBwYXNzZXMgZWl0aGVyIHNldCBvZiB2ZWN0b3JzLgorICAgICAgPC90PgorICAgICAg
PHQ+CisgICAgICAgIEluIGFkZGl0aW9uLCBhbnkgT3B1cyBpbXBsZW1lbnRhdGlvbgorICAgICAg
ICB0aGF0IHBhc3NlcyB0aGUgb3JpZ2luYWwgdGVzdCB2ZWN0b3JzIGZyb20gPHhyZWYgdGFyZ2V0
PSJSRkM2NzE2Ij5SRkMgNjcxNjwveHJlZj4KKyAgICAgICAgaXMgc3RpbGwgY29tcGxpYW50IHdp
dGggdGhlIE9wdXMgc3BlY2lmaWNhdGlvbi4gSG93ZXZlciwgbmV3ZXIgaW1wbGVtZW50YXRpb25z
CisgICAgICAgIFNIT1VMRCBiZSBiYXNlZCBvbiB0aGUgbmV3IHRlc3QgdmVjdG9ycyByYXRoZXIg
dGhhbiB0aGUgb2xkIG9uZXMuCisgICAgICA8L3Q+CisgICAgICA8dD5UaGUgbmV3IHRlc3QgdmVj
dG9ycyBhcmUgbG9jYXRlZCBhdAorICAgICAgICA8ZXJlZiB0YXJnZXQ9Imh0dHBzOi8vd3d3Lmll
dGYub3JnL3Byb2NlZWRpbmdzLzk4L3NsaWRlcy9tYXRlcmlhbHMtOTgtY29kZWMtb3B1cy1uZXd2
ZWN0b3JzLTAwLnRhci5neiIvPi4KKyAgICAgICAgVGhlIFNIQTEgaGFzaCBvZiB0aGUgdGVzdCB2
ZWN0b3JzIGFyZToKKzxmaWd1cmU+Cis8YXJ0d29yaz4KKzwhW0NEQVRBWworZTQ5YjI4NjJjZWVj
NzMyNDc5MGVkODAxOWViOTc0NDU5NmQ1YmUwMSAgdGVzdHZlY3RvcjAxLmJpdAorYjgwOTc5NWFl
MWJjZDYwNjA0OWQ3NmRlNGFkMjQyMzYyNTcxMzVlMCAgdGVzdHZlY3RvcjAyLmJpdAorZTBjNGVj
YWVhYjQ0ZDM1YTJmNWI2NTc1Y2Q5OTY4NDhlNWVlMmFjYyAgdGVzdHZlY3RvcjAzLmJpdAorYTBm
ODcwY2JlMTRlYmI3MWZhOTA2NmVmM2VlOTZlNTljOWE3NTE4NyAgdGVzdHZlY3RvcjA0LmJpdAor
OWIzZDkyYjQ4Yjk2NWRmZTllZGY3YjhhODVlZGQ0MzA5ZjhjZjdjOCAgdGVzdHZlY3RvcjA1LmJp
dAorMjhlNjY3NjlhYjE3ZTE3ZjcyODc1MjgzYzE0YjE5NjkwY2JjNGU1NyAgdGVzdHZlY3RvcjA2
LmJpdAorYmFjZjQ2N2JlMzIxNWZjN2VjMjg4ZjI5ZTI0NzdkZTExOTI5NDdhNiAgdGVzdHZlY3Rv
cjA3LmJpdAorZGRiZTA4YjY4OGJiZjkzNDA3MWYzODkzY2QwMDMwY2U0OGRiYTEyZiAgdGVzdHZl
Y3RvcjA4LmJpdAorMzkzMmQ5ZDYxOTQ0ZGFiMTIwMTY0NWI4ZWVhYWQ1OTVkNTcwNWVjYiAgdGVz
dHZlY3RvcjA5LmJpdAorNTIxZWIyYTFlMGNjOWMzMWI4Yjc0MDY3MzMwN2MyZDNiMTBjMTkwMCAg
dGVzdHZlY3RvcjEwLmJpdAorNmJjOGYzMTQ2ZmNiOTY0NTBjOTAxYjE2YzNkNDY0Y2NkZjRkNWQ5
NiAgdGVzdHZlY3RvcjExLmJpdAorMzM4YzNmMWI0Yjk3MjI2YmM2MGJjNDEwMzhiZWNiYzZkZTA2
YjI4ZiAgdGVzdHZlY3RvcjEyLmJpdAorZjVlZjkzODg0ZGE2YTgxNGQzMTEwMjc5MThlOWFmYzZm
MmU1YzJjOCAgdGVzdHZlY3RvcjAxLmRlYworNDhhYzFmZjE5OTUyNTBhNzU2ZTFlMTdiZDMyYWNl
ZmE4Y2QyYjgyMCAgdGVzdHZlY3RvcjAyLmRlYworZDE1NTY3ZTkxOWRiMmQwZTgxODcyNzA5MmMw
YWY4ZGQ5ZGYyM2M5NSAgdGVzdHZlY3RvcjAzLmRlYworMTI0OWRkMjhmNWJkMWUzOWE2NmZkNmQ5
OTQ0OWRjYTdhODMxNjM0MiAgdGVzdHZlY3RvcjA0LmRlYworYjg1Njc1ZDgxZGVlZjg0YTExMmM0
NjZjZGZmM2I3YWFhMWQyZmM3NiAgdGVzdHZlY3RvcjA1LmRlYworNTVmMGIxOTFlOTBiZmE2Zjk4
YjUwZDAxYTY0YjQ0MjU1Y2I0ODEzZSAgdGVzdHZlY3RvcjA2LmRlYworNjFlOGIzNTdhYjA5MGIx
ODAxZWViNTc4YTI4YTZhZTkzNWUyNWI3YiAgdGVzdHZlY3RvcjA3LmRlYworYTU4NTM5ZWU1MzIx
NDUzYjJkZGY0YzBmMjUwMGU4NTZiMzk2Njg2MiAgdGVzdHZlY3RvcjA4LmRlYworYmI5NmFhZDJj
ZGUxODg1NTU4NjJiN2JiYjNhZjYxMzM4NTFlZjhmNCAgdGVzdHZlY3RvcjA5LmRlYworMWI2Y2Rm
MDQxM2FjOTk2NWIxNjE4NGIxYmVhMTI5YjVjMGIyYTM3YSAgdGVzdHZlY3RvcjEwLmRlYworYjFm
ZmY3MmI3NDY2NmUzMDI3ODAxYjI5ZGJjNDhiMzFmODBkZWUwZCAgdGVzdHZlY3RvcjExLmRlYwor
OThlMDliYmFmZWQzMjllMzQxYzNiNDA1MmU5YzRiYTVmYzgzZjliMSAgdGVzdHZlY3RvcjEyLmRl
YworMWU3ZDk4NGVhM2ZiYjE2YmE5OThhZWE3NjFmNDg5M2ZiZGIzMDE1NyAgdGVzdHZlY3RvcjAx
bS5kZWMKKzQ4YWMxZmYxOTk1MjUwYTc1NmUxZTE3YmQzMmFjZWZhOGNkMmI4MjAgIHRlc3R2ZWN0
b3IwMm0uZGVjCitkMTU1NjdlOTE5ZGIyZDBlODE4NzI3MDkyYzBhZjhkZDlkZjIzYzk1ICB0ZXN0
dmVjdG9yMDNtLmRlYworMTI0OWRkMjhmNWJkMWUzOWE2NmZkNmQ5OTQ0OWRjYTdhODMxNjM0MiAg
dGVzdHZlY3RvcjA0bS5kZWMKK2Q3MGIwYmFkNDMxZTdkNDYzYmMzZGE0OWJkMmQ0OWYxYzZkMGE1
MzAgIHRlc3R2ZWN0b3IwNW0uZGVjCis2YWMxNjQ4YzMxNzRjOTVmYWRhNTY1MTYxYTZjNzhiZGJl
NTljNzdkICB0ZXN0dmVjdG9yMDZtLmRlYworZmM1ZTJmNzA5NjkzNzM4MzI0ZmI0YzhiZGMwZGFk
NmRkYTA0ZTcxMyAgdGVzdHZlY3RvcjA3bS5kZWMKK2FhZDJiYTM5N2JmMWI2YTE4ZThlMDliNTBl
NGIxOTYyN2Q0NzlmMDAgIHRlc3R2ZWN0b3IwOG0uZGVjCis2ZmViN2E3YjlkN2NkYzEzODNiYWY4
ZDU3MzllMmE1MTRiZDBiYTA4ICB0ZXN0dmVjdG9yMDltLmRlYworMWI2Y2RmMDQxM2FjOTk2NWIx
NjE4NGIxYmVhMTI5YjVjMGIyYTM3YSAgdGVzdHZlY3RvcjEwbS5kZWMKK2ZkM2QzYTdiMGRmYmRh
Yjk4ZDM3ZWQ5YWEwNGI2NTliOWZlZmJkMTggIHRlc3R2ZWN0b3IxMW0uZGVjCis5OGUwOWJiYWZl
ZDMyOWUzNDFjM2I0MDUyZTljNGJhNWZjODNmOWIxICB0ZXN0dmVjdG9yMTJtLmRlYworXV0+Cis8
L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyAgICAgIE5vdGUgdGhhdCB0aGUgZGVjb2RlciBpbnB1dCBi
aXRzdHJlYW0gZmlsZXMgKC5iaXQpIGFyZSB1bmNoYW5nZWQuCisgICAgICA8L3Q+CisgICAgPC9z
ZWN0aW9uPgorCisgICAgPHNlY3Rpb24gYW5jaG9yPSJzZWN1cml0eSIgdGl0bGU9IlNlY3VyaXR5
IENvbnNpZGVyYXRpb25zIj4KKyAgICAgIDx0PlRoaXMgZG9jdW1lbnQgZml4ZXMgdHdvIHNlY3Vy
aXR5IGlzc3VlcyByZXBvcnRlZCBvbiBPcHVzIGFuZCB0aGF0IGFmZmVjdCB0aGUKKyAgICAgICAg
cmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGluIDx4cmVmIHRhcmdldD0iUkZDNjcxNiI+UkZDIDY3
MTY8L3hyZWY+OiBDVkUtMjAxMy0wODk5CisgICAgICAgIDxlcmVmIHRhcmdldD0iaHR0cHM6Ly9u
dmQubmlzdC5nb3YvdnVsbi9kZXRhaWwvQ1ZFLTIwMTMtMDg5OSIvPgorICAgICAgICBhbmQgQ1ZF
LTIwMTctMDM4MSA8ZXJlZiB0YXJnZXQ9Imh0dHBzOi8vbnZkLm5pc3QuZ292L3Z1bG4vZGV0YWls
L0NWRS0yMDE3LTAzODEiLz4uCisgICAgICAgIENWRS0yMDEzLTA4OTkgaXMgZml4ZWQgYnkgPHhy
ZWYgdGFyZ2V0PSJwYWRkaW5nIi8+IGFuZAorICAgICAgICBjb3VsZCB0aGVvcmV0aWNhbGx5IGNh
dXNlIGluZm9ybWF0aW9uIGxlYWssIGJ1dCB0aGUKKyAgICAgICAgbGVha2VkIGluZm9ybWF0aW9u
IHdvdWxkIGF0IHRoZSB2ZXJ5IGxlYXN0IGdvIHRocm91Z2ggdGhlIGRlY29kZXIgcHJvY2VzcyBi
ZWZvcmUKKyAgICAgICAgYmVpbmcgYWNjZXNzaWJsZSB0byB0aGUgYXR0YWNrZXIuIEFsc28sIHRo
ZSBidWcgY2FuIG9ubHkgYmUgdHJpZ2dlcmVkIGJ5IE9wdXMgcGFja2V0cworICAgICAgICBhdCBs
ZWFzdCAyNCBNQiBpbiBzaXplLiBDVkUtMjAxNy0wMzgxIGlzIGZpeGVkIGJ5IDx4cmVmIHRhcmdl
dD0ibHNmX292ZXJmbG93Ii8+IGFuZCwgYXMgZmFyCisgICAgICAgIGFzIHRoZSBhdXRob3JzIGFy
ZSBhd2FyZSwgY291bGQgbm90IGJlIGV4cGxvaXRlZCBpbiBhbnkgd2F5IChkZXNwaXRlIHRoZSBj
bGFpbXMgaW4KKyAgICAgICAgdGhlIENWRSkgdW5sZXNzIHRoZSByZWFkLW9ubHkgdGFibGUKKyAg
ICAgICAgd2FzIHNvbWVob3cgcGxhY2VkIHZlcnkgY2xvc2UgdG8gc2Vuc2l0aXZlIGRhdGEsIHdo
aWNoIGlzIGhpZ2hseSB1bmxpa2VseS4KKyAgICAgICAgQmV5b25kIHRoZSB0d28gZml4ZWQgQ1ZF
cywgdGhpcyBkb2N1bWVudCBhZGRzIG5vIG5ldyBzZWN1cml0eSBjb25zaWRlcmF0aW9ucyBvbiB0
b3Agb2YKKyAgICAgICAgPHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ij5SRkMgNjcxNjwveHJlZj4uCisg
ICAgICA8L3Q+CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24gYW5jaG9yPSJJQU5BIiB0
aXRsZT0iSUFOQSBDb25zaWRlcmF0aW9ucyI+CisgICAgICA8dD5UaGlzIGRvY3VtZW50IG1ha2Vz
IG5vIHJlcXVlc3Qgb2YgSUFOQS48L3Q+CisKKyAgICAgIDx0Pk5vdGUgdG8gUkZDIEVkaXRvcjog
dGhpcyBzZWN0aW9uIG1heSBiZSByZW1vdmVkIG9uIHB1YmxpY2F0aW9uIGFzIGFuCisgICAgICBS
RkMuPC90PgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIGFuY2hvcj0iQWNrbm93bGVk
Z2VtZW50cyIgdGl0bGU9IkFja25vd2xlZGdlbWVudHMiPgorICAgICAgPHQ+V2Ugd291bGQgbGlr
ZSB0byB0aGFuayBKdXJpIEFlZGxhIGZvciByZXBvcnRpbmcgdGhlIGlzc3VlIHdpdGggdGhlIHBh
cnNpbmcgb2YKKyAgICAgIHRoZSBPcHVzIHBhZGRpbmcuIFRoYW5rcyB0byBGZWxpY2lhIExpbSBm
b3IgcmVwb3J0aW5nIHRoZSBMU0YgaW50ZWdlciBvdmVyZmxvdyBpc3N1ZS4KKyAgICAgIEFsc28s
IHRoYW5rcyB0byBUaW5hIGxlIEdyYW5kLCBKb25hdGhhbiBMZW5ub3gsIGFuZCBNYXJrIEhhcnJp
cyBmb3IgdGhlaXIKKyAgICAgIGZlZWRiYWNrIG9uIHRoaXMgZG9jdW1lbnQuPC90PgorICAgIDwv
c2VjdGlvbj4KKyAgPC9taWRkbGU+CisKKyAgPGJhY2s+CisgICAgPHJlZmVyZW5jZXMgdGl0bGU9
Ik5vcm1hdGl2ZSBSZWZlcmVuY2VzIj4KKyAgICAgIDw/cmZjIGluY2x1ZGU9Imh0dHA6Ly94bWwu
cmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMjExOS54bWwiPz4K
KyAgICAgIDw/cmZjIGluY2x1ZGU9Imh0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMv
YmlieG1sL3JlZmVyZW5jZS5SRkMuNjcxNi54bWwiPz4KKworCisgICAgPC9yZWZlcmVuY2VzPgor
ICA8L2JhY2s+Cis8L3JmYz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2RyYWZ0LWlldGYtY29kZWMtb3B1cy54
bWwgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2RvYy9kcmFmdC1pZXRmLWNvZGVjLW9wdXMueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMzNGNhZDk3YTI3
ZDdlN2JmMWNkZDA5ZjQ5MTRjYjZhOTZhZTQ3MTEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9kcmFm
dC1pZXRmLWNvZGVjLW9wdXMueG1sCkBAIC0wLDAgKzEsODI3NiBAQAorPD94bWwgdmVyc2lvbj0i
MS4wIiBlbmNvZGluZz0idXRmLTgiPz4KKzwhRE9DVFlQRSByZmMgU1lTVEVNICdyZmMyNjI5LmR0
ZCc+Cis8P3JmYyB0b2M9InllcyIgc3ltcmVmcz0ieWVzIiA/PgorCis8cmZjIGlwcj0idHJ1c3Qy
MDA5MDIiIGNhdGVnb3J5PSJzdGQiIGRvY05hbWU9ImRyYWZ0LWlldGYtY29kZWMtb3B1cy0xNCI+
CisKKzxmcm9udD4KKzx0aXRsZSBhYmJyZXY9IkludGVyYWN0aXZlIEF1ZGlvIENvZGVjIj5EZWZp
bml0aW9uIG9mIHRoZSBPcHVzIEF1ZGlvIENvZGVjPC90aXRsZT4KKworCis8YXV0aG9yIGluaXRp
YWxzPSJKTSIgc3VybmFtZT0iVmFsaW4iIGZ1bGxuYW1lPSJKZWFuLU1hcmMgVmFsaW4iPgorPG9y
Z2FuaXphdGlvbj5Nb3ppbGxhIENvcnBvcmF0aW9uPC9vcmdhbml6YXRpb24+Cis8YWRkcmVzcz4K
Kzxwb3N0YWw+Cis8c3RyZWV0PjY1MCBDYXN0cm8gU3RyZWV0PC9zdHJlZXQ+Cis8Y2l0eT5Nb3Vu
dGFpbiBWaWV3PC9jaXR5PgorPHJlZ2lvbj5DQTwvcmVnaW9uPgorPGNvZGU+OTQwNDE8L2NvZGU+
Cis8Y291bnRyeT5VU0E8L2NvdW50cnk+Cis8L3Bvc3RhbD4KKzxwaG9uZT4rMSA2NTAgOTAzLTA4
MDA8L3Bob25lPgorPGVtYWlsPmptdmFsaW5Aam12YWxpbi5jYTwvZW1haWw+Cis8L2FkZHJlc3M+
Cis8L2F1dGhvcj4KKworPGF1dGhvciBpbml0aWFscz0iSy4iIHN1cm5hbWU9IlZvcyIgZnVsbG5h
bWU9IktvZW4gVm9zIj4KKzxvcmdhbml6YXRpb24+U2t5cGUgVGVjaG5vbG9naWVzIFMuQS48L29y
Z2FuaXphdGlvbj4KKzxhZGRyZXNzPgorPHBvc3RhbD4KKzxzdHJlZXQ+U29kZXIgTWFsYXJzdHJh
bmQgNDM8L3N0cmVldD4KKzxjaXR5PlN0b2NraG9sbTwvY2l0eT4KKzxyZWdpb24+PC9yZWdpb24+
Cis8Y29kZT4xMTgyNTwvY29kZT4KKzxjb3VudHJ5PlNFPC9jb3VudHJ5PgorPC9wb3N0YWw+Cis8
cGhvbmU+KzQ2IDczIDA4NSA3NjE5PC9waG9uZT4KKzxlbWFpbD5rb2VuLnZvc0Bza3lwZS5uZXQ8
L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisKKzxhdXRob3IgaW5pdGlhbHM9IlQuIiBz
dXJuYW1lPSJUZXJyaWJlcnJ5IiBmdWxsbmFtZT0iVGltb3RoeSBCLiBUZXJyaWJlcnJ5Ij4KKzxv
cmdhbml6YXRpb24+TW96aWxsYSBDb3Jwb3JhdGlvbjwvb3JnYW5pemF0aW9uPgorPGFkZHJlc3M+
Cis8cG9zdGFsPgorPHN0cmVldD42NTAgQ2FzdHJvIFN0cmVldDwvc3RyZWV0PgorPGNpdHk+TW91
bnRhaW4gVmlldzwvY2l0eT4KKzxyZWdpb24+Q0E8L3JlZ2lvbj4KKzxjb2RlPjk0MDQxPC9jb2Rl
PgorPGNvdW50cnk+VVNBPC9jb3VudHJ5PgorPC9wb3N0YWw+Cis8cGhvbmU+KzEgNjUwIDkwMy0w
ODAwPC9waG9uZT4KKzxlbWFpbD50dGVycmliZXJyeUBtb3ppbGxhLmNvbTwvZW1haWw+Cis8L2Fk
ZHJlc3M+Cis8L2F1dGhvcj4KKworPGRhdGUgZGF5PSIxNyIgbW9udGg9Ik1heSIgeWVhcj0iMjAx
MiIgLz4KKworPGFyZWE+R2VuZXJhbDwvYXJlYT4KKworPHdvcmtncm91cD48L3dvcmtncm91cD4K
KworPGFic3RyYWN0PgorPHQ+CitUaGlzIGRvY3VtZW50IGRlZmluZXMgdGhlIE9wdXMgaW50ZXJh
Y3RpdmUgc3BlZWNoIGFuZCBhdWRpbyBjb2RlYy4KK09wdXMgaXMgZGVzaWduZWQgdG8gaGFuZGxl
IGEgd2lkZSByYW5nZSBvZiBpbnRlcmFjdGl2ZSBhdWRpbyBhcHBsaWNhdGlvbnMsCisgaW5jbHVk
aW5nIFZvaWNlIG92ZXIgSVAsIHZpZGVvY29uZmVyZW5jaW5nLCBpbi1nYW1lIGNoYXQsIGFuZCBl
dmVuIGxpdmUsCisgZGlzdHJpYnV0ZWQgbXVzaWMgcGVyZm9ybWFuY2VzLgorSXQgc2NhbGVzIGZy
b20gbG93IGJpdHJhdGUgbmFycm93YmFuZCBzcGVlY2ggYXQgNiBrYi9zIHRvIHZlcnkgaGlnaCBx
dWFsaXR5Cisgc3RlcmVvIG11c2ljIGF0IDUxMCBrYi9zLgorT3B1cyB1c2VzIGJvdGggbGluZWFy
IHByZWRpY3Rpb24gKExQKSBhbmQgdGhlIE1vZGlmaWVkIERpc2NyZXRlIENvc2luZQorIFRyYW5z
Zm9ybSAoTURDVCkgdG8gYWNoaWV2ZSBnb29kIGNvbXByZXNzaW9uIG9mIGJvdGggc3BlZWNoIGFu
ZCBtdXNpYy4KKzwvdD4KKzwvYWJzdHJhY3Q+Cis8L2Zyb250PgorCis8bWlkZGxlPgorCis8c2Vj
dGlvbiBhbmNob3I9ImludHJvZHVjdGlvbiIgdGl0bGU9IkludHJvZHVjdGlvbiI+Cis8dD4KK1Ro
ZSBPcHVzIGNvZGVjIGlzIGEgcmVhbC10aW1lIGludGVyYWN0aXZlIGF1ZGlvIGNvZGVjIGRlc2ln
bmVkIHRvIG1lZXQgdGhlIHJlcXVpcmVtZW50cworZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0i
cmVxdWlyZW1lbnRzIj48L3hyZWY+LgorSXQgaXMgY29tcG9zZWQgb2YgYSBsaW5lYXIKKyBwcmVk
aWN0aW9uIChMUCktYmFzZWQgPHhyZWYgdGFyZ2V0PSJMUEMiLz4gbGF5ZXIgYW5kIGEgTW9kaWZp
ZWQgRGlzY3JldGUgQ29zaW5lIFRyYW5zZm9ybQorIChNRENUKS1iYXNlZCA8eHJlZiB0YXJnZXQ9
Ik1EQ1QiLz4gbGF5ZXIuCitUaGUgbWFpbiBpZGVhIGJlaGluZCB1c2luZyB0d28gbGF5ZXJzIGlz
IHRoYXQgaW4gc3BlZWNoLCBsaW5lYXIgcHJlZGljdGlvbgorIHRlY2huaXF1ZXMgKHN1Y2ggYXMg
Q29kZS1FeGNpdGVkIExpbmVhciBQcmVkaWN0aW9uLCBvciBDRUxQKSBjb2RlIGxvdyBmcmVxdWVu
Y2llcyBtb3JlIGVmZmljaWVudGx5IHRoYW4gdHJhbnNmb3JtCisgKGUuZy4sIE1EQ1QpIGRvbWFp
biB0ZWNobmlxdWVzLCB3aGlsZSB0aGUgc2l0dWF0aW9uIGlzIHJldmVyc2VkIGZvciBtdXNpYyBh
bmQKKyBoaWdoZXIgc3BlZWNoIGZyZXF1ZW5jaWVzLgorVGh1cyBhIGNvZGVjIHdpdGggYm90aCBs
YXllcnMgYXZhaWxhYmxlIGNhbiBvcGVyYXRlIG92ZXIgYSB3aWRlciByYW5nZSB0aGFuCisgZWl0
aGVyIG9uZSBhbG9uZSBhbmQsIGJ5IGNvbWJpbmluZyB0aGVtLCBhY2hpZXZlIGJldHRlciBxdWFs
aXR5IHRoYW4gZWl0aGVyCisgb25lIGluZGl2aWR1YWxseS4KKzwvdD4KKworPHQ+CitUaGUgcHJp
bWFyeSBub3JtYXRpdmUgcGFydCBvZiB0aGlzIHNwZWNpZmljYXRpb24gaXMgcHJvdmlkZWQgYnkg
dGhlIHNvdXJjZSBjb2RlCisgaW4gPHhyZWYgdGFyZ2V0PSJyZWYtaW1wbGVtZW50YXRpb24iPjwv
eHJlZj4uCitPbmx5IHRoZSBkZWNvZGVyIHBvcnRpb24gb2YgdGhpcyBzb2Z0d2FyZSBpcyBub3Jt
YXRpdmUsIHRob3VnaCBhCisgc2lnbmlmaWNhbnQgYW1vdW50IG9mIGNvZGUgaXMgc2hhcmVkIGJ5
IGJvdGggdGhlIGVuY29kZXIgYW5kIGRlY29kZXIuCis8eHJlZiB0YXJnZXQ9ImNvbmZvcm1hbmNl
Ii8+IHByb3ZpZGVzIGEgZGVjb2RlciBjb25mb3JtYW5jZSB0ZXN0LgorVGhlIGRlY29kZXIgY29u
dGFpbnMgYSBncmVhdCBkZWFsIG9mIGludGVnZXIgYW5kIGZpeGVkLXBvaW50IGFyaXRobWV0aWMg
d2hpY2gKKyBuZWVkcyB0byBiZSBwZXJmb3JtZWQgZXhhY3RseSwgaW5jbHVkaW5nIGFsbCByb3Vu
ZGluZyBjb25zaWRlcmF0aW9ucywgc28gYW55CisgdXNlZnVsIHNwZWNpZmljYXRpb24gcmVxdWly
ZXMgZG9tYWluLXNwZWNpZmljIHN5bWJvbGljIGxhbmd1YWdlIHRvIGFkZXF1YXRlbHkKKyBkZWZp
bmUgdGhlc2Ugb3BlcmF0aW9ucy4KK0FkZGl0aW9uYWxseSwgYW55Citjb25mbGljdCBiZXR3ZWVu
IHRoZSBzeW1ib2xpYyByZXByZXNlbnRhdGlvbiBhbmQgdGhlIGluY2x1ZGVkIHJlZmVyZW5jZQor
aW1wbGVtZW50YXRpb24gbXVzdCBiZSByZXNvbHZlZC4gRm9yIHRoZSBwcmFjdGljYWwgcmVhc29u
cyBvZiBjb21wYXRpYmlsaXR5IGFuZAordGVzdGFiaWxpdHkgaXQgd291bGQgYmUgYWR2YW50YWdl
b3VzIHRvIGdpdmUgdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbgorcHJpb3JpdHkgaW4gYW55
IGRpc2FncmVlbWVudC4gVGhlIEMgbGFuZ3VhZ2UgaXMgYWxzbyBvbmUgb2YgdGhlIG1vc3QKK3dp
ZGVseSB1bmRlcnN0b29kIGh1bWFuLXJlYWRhYmxlIHN5bWJvbGljIHJlcHJlc2VudGF0aW9ucyBm
b3IgbWFjaGluZQorYmVoYXZpb3IuCitGb3IgdGhlc2UgcmVhc29ucyB0aGlzIFJGQyB1c2VzIHRo
ZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gYXMgdGhlIHNvbGUKKyBzeW1ib2xpYyByZXByZXNl
bnRhdGlvbiBvZiB0aGUgY29kZWMuCis8L3Q+CisKKzx0PldoaWxlIHRoZSBzeW1ib2xpYyByZXBy
ZXNlbnRhdGlvbiBpcyB1bmFtYmlndW91cyBhbmQgY29tcGxldGUgaXQgaXMgbm90CithbHdheXMg
dGhlIGVhc2llc3Qgd2F5IHRvIHVuZGVyc3RhbmQgdGhlIGNvZGVjJ3Mgb3BlcmF0aW9uLiBGb3Ig
dGhpcyByZWFzb24KK3RoaXMgZG9jdW1lbnQgYWxzbyBkZXNjcmliZXMgc2lnbmlmaWNhbnQgcGFy
dHMgb2YgdGhlIGNvZGVjIGluIEVuZ2xpc2ggYW5kCit0YWtlcyB0aGUgb3Bwb3J0dW5pdHkgdG8g
ZXhwbGFpbiB0aGUgcmF0aW9uYWxlIGJlaGluZCBtYW55IG9mIHRoZSBtb3JlCitzdXJwcmlzaW5n
IGVsZW1lbnRzIG9mIHRoZSBkZXNpZ24uIFRoZXNlIGRlc2NyaXB0aW9ucyBhcmUgaW50ZW5kZWQg
dG8gYmUKK2FjY3VyYXRlIGFuZCBpbmZvcm1hdGl2ZSwgYnV0IHRoZSBsaW1pdGF0aW9ucyBvZiBj
b21tb24gRW5nbGlzaCBzb21ldGltZXMKK3Jlc3VsdCBpbiBhbWJpZ3VpdHksIHNvIGl0IGlzIGV4
cGVjdGVkIHRoYXQgdGhlIHJlYWRlciB3aWxsIGFsd2F5cyByZWFkCit0aGVtIGFsb25nc2lkZSB0
aGUgc3ltYm9saWMgcmVwcmVzZW50YXRpb24uIE51bWVyb3VzIHJlZmVyZW5jZXMgdG8gdGhlCitp
bXBsZW1lbnRhdGlvbiBhcmUgcHJvdmlkZWQgZm9yIHRoaXMgcHVycG9zZS4gVGhlIGRlc2NyaXB0
aW9ucyBzb21ldGltZXMKK2RpZmZlciBmcm9tIHRoZSByZWZlcmVuY2UgaW4gb3JkZXJpbmcgb3Ig
dGhyb3VnaCBtYXRoZW1hdGljYWwgc2ltcGxpZmljYXRpb24KK3doZXJldmVyIHN1Y2ggZGV2aWF0
aW9uIG1ha2VzIGFuIGV4cGxhbmF0aW9uIGVhc2llciB0byB1bmRlcnN0YW5kLgorRm9yIGV4YW1w
bGUsIHRoZSByaWdodCBzaGlmdCBhbmQgbGVmdCBzaGlmdCBvcGVyYXRpb25zIGluIHRoZSByZWZl
cmVuY2UKK2ltcGxlbWVudGF0aW9uIGFyZSBvZnRlbiBkZXNjcmliZWQgdXNpbmcgZGl2aXNpb24g
YW5kIG11bHRpcGxpY2F0aW9uIGluIHRoZSB0ZXh0LgorSW4gZ2VuZXJhbCwgdGhlIHRleHQgaXMg
Zm9jdXNlZCBvbiB0aGUgIndoYXQiIGFuZCAid2h5IiB3aGlsZSB0aGUgc3ltYm9saWMKK3JlcHJl
c2VudGF0aW9uIG1vc3QgY2xlYXJseSBwcm92aWRlcyB0aGUgImhvdyIuCis8L3Q+CisKKzxzZWN0
aW9uIGFuY2hvcj0ibm90YXRpb24iIHRpdGxlPSJOb3RhdGlvbiBhbmQgQ29udmVudGlvbnMiPgor
PHQ+CitUaGUga2V5IHdvcmRzICJNVVNUIiwgIk1VU1QgTk9UIiwgIlJFUVVJUkVEIiwgIlNIQUxM
IiwgIlNIQUxMIE5PVCIsICJTSE9VTEQiLAorICJTSE9VTEQgTk9UIiwgIlJFQ09NTUVOREVEIiwg
Ik1BWSIsIGFuZCAiT1BUSU9OQUwiIGluIHRoaXMgZG9jdW1lbnQgYXJlIHRvIGJlCisgaW50ZXJw
cmV0ZWQgYXMgZGVzY3JpYmVkIGluIFJGQyAyMTE5IDx4cmVmIHRhcmdldD0icmZjMjExOSI+PC94
cmVmPi4KKzwvdD4KKzx0PgorVmFyaW91cyBvcGVyYXRpb25zIGluIHRoZSBjb2RlYyByZXF1aXJl
IGJpdC1leGFjdCBmaXhlZC1wb2ludCBiZWhhdmlvciwgZXZlbgorIHdoZW4gd3JpdGluZyBhIGZs
b2F0aW5nIHBvaW50IGltcGxlbWVudGF0aW9uLgorVGhlIG5vdGF0aW9uICJRJmx0O24mZ3Q7Iiwg
d2hlcmUgbiBpcyBhbiBpbnRlZ2VyLCBkZW5vdGVzIHRoZSBudW1iZXIgb2YgYmluYXJ5CisgZGln
aXRzIHRvIHRoZSByaWdodCBvZiB0aGUgZGVjaW1hbCBwb2ludCBpbiBhIGZpeGVkLXBvaW50IG51
bWJlci4KK0ZvciBleGFtcGxlLCBhIHNpZ25lZCBRMTQgdmFsdWUgaW4gYSAxNi1iaXQgd29yZCBj
YW4gcmVwcmVzZW50IHZhbHVlcyBmcm9tCisgLTIuMCB0byAxLjk5OTkzODk2NDg0Mzc1LCBpbmNs
dXNpdmUuCitUaGlzIG5vdGF0aW9uIGlzIGZvciBpbmZvcm1hdGlvbmFsIHB1cnBvc2VzIG9ubHku
CitBcml0aG1ldGljLCB3aGVuIGRlc2NyaWJlZCwgYWx3YXlzIG9wZXJhdGVzIG9uIHRoZSB1bmRl
cmx5aW5nIGludGVnZXIuCitFLmcuLCB0aGUgdGV4dCB3aWxsIGV4cGxpY2l0bHkgaW5kaWNhdGUg
YW55IHNoaWZ0cyByZXF1aXJlZCBhZnRlciBhCisgbXVsdGlwbGljYXRpb24uCis8L3Q+Cis8dD4K
K0V4cHJlc3Npb25zLCB3aGVyZSBpbmNsdWRlZCBpbiB0aGUgdGV4dCwgZm9sbG93IEMgb3BlcmF0
b3IgcnVsZXMgYW5kCisgcHJlY2VkZW5jZSwgd2l0aCB0aGUgZXhjZXB0aW9uIHRoYXQgdGhlIHN5
bnRheCAieCoqeSIgaW5kaWNhdGVzIHggcmFpc2VkIHRvCisgdGhlIHBvd2VyIHkuCitUaGUgdGV4
dCBhbHNvIG1ha2VzIHVzZSBvZiB0aGUgZm9sbG93aW5nIGZ1bmN0aW9uczoKKzwvdD4KKworPHNl
Y3Rpb24gYW5jaG9yPSJtaW4iIHRvYz0iZXhjbHVkZSIgdGl0bGU9Im1pbih4LHkpIj4KKzx0Pgor
VGhlIHNtYWxsZXN0IG9mIHR3byB2YWx1ZXMgeCBhbmQgeS4KKzwvdD4KKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gYW5jaG9yPSJtYXgiIHRvYz0iZXhjbHVkZSIgdGl0bGU9Im1heCh4LHkpIj4KKzx0
PgorVGhlIGxhcmdlc3Qgb2YgdHdvIHZhbHVlcyB4IGFuZCB5LgorPC90PgorPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiBhbmNob3I9ImNsYW1wIiB0b2M9ImV4Y2x1ZGUiIHRpdGxlPSJjbGFtcChsbyx4
LGhpKSI+Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCitjbGFtcChsbyx4LGhpKSA9IG1heChsbyxtaW4oeCxoaSkpCitdXT48L2FydHdv
cms+Cis8L2ZpZ3VyZT4KKzx0PgorV2l0aCB0aGlzIGRlZmluaXRpb24sIGlmIGxvJm5ic3A7Jmd0
OyZuYnNwO2hpLCB0aGUgbG93ZXIgYm91bmQgaXMgdGhlIG9uZSB0aGF0CisgaXMgZW5mb3JjZWQu
Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lnbiIgdG9jPSJleGNsdWRl
IiB0aXRsZT0ic2lnbih4KSI+Cis8dD4KK1RoZSBzaWduIG9mIHgsIGkuZS4sCis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAg
ICAgKCAtMSwgIHggPCAwICwKK3NpZ24oeCkgPSA8ICAwLCAgeCA9PSAwICwKKyAgICAgICAgICAo
ICAxLCAgeCA+IDAgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0iYWJzIiB0b2M9ImV4Y2x1ZGUiIHRpdGxlPSJhYnMoeCkiPgor
PHQ+CitUaGUgYWJzb2x1dGUgdmFsdWUgb2YgeCwgaS5lLiwKKzxmaWd1cmUgYWxpZ249ImNlbnRl
ciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2Ficyh4KSA9IHNpZ24oeCkq
eCAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rp
b24gYW5jaG9yPSJmbG9vciIgdG9jPSJleGNsdWRlIiB0aXRsZT0iZmxvb3IoZikiPgorPHQ+CitU
aGUgbGFyZ2VzdCBpbnRlZ2VyIHogc3VjaCB0aGF0IHogJmx0Oz0gZi4KKzwvdD4KKzwvc2VjdGlv
bj4KKworPHNlY3Rpb24gYW5jaG9yPSJjZWlsIiB0b2M9ImV4Y2x1ZGUiIHRpdGxlPSJjZWlsKGYp
Ij4KKzx0PgorVGhlIHNtYWxsZXN0IGludGVnZXIgeiBzdWNoIHRoYXQgeiAmZ3Q7PSBmLgorPC90
PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InJvdW5kIiB0b2M9ImV4Y2x1ZGUiIHRp
dGxlPSJyb3VuZChmKSI+Cis8dD4KK1RoZSBpbnRlZ2VyIHogbmVhcmVzdCB0byBmLCB3aXRoIHRp
ZXMgcm91bmRlZCB0b3dhcmRzIG5lZ2F0aXZlIGluZmluaXR5LAorIGkuZS4sCis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgcm91bmQo
ZikgPSBjZWlsKGYgLSAwLjUpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorPC9z
ZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImxvZzIiIHRvYz0iZXhjbHVkZSIgdGl0bGU9Imxv
ZzIoZikiPgorPHQ+CitUaGUgYmFzZS10d28gbG9nYXJpdGhtIG9mIGYuCis8L3Q+Cis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIGFuY2hvcj0iaWxvZyIgdG9jPSJleGNsdWRlIiB0aXRsZT0iaWxvZyhu
KSI+Cis8dD4KK1RoZSBtaW5pbXVtIG51bWJlciBvZiBiaXRzIHJlcXVpcmVkIHRvIHN0b3JlIGEg
cG9zaXRpdmUgaW50ZWdlciBuIGluIHR3bydzCisgY29tcGxlbWVudCBub3RhdGlvbiwgb3IgMCBm
b3IgYSBub24tcG9zaXRpdmUgaW50ZWdlciBuLgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxh
cnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICggMCwgICAgICAgICAg
ICAgICAgIG4gPD0gMCwKK2lsb2cobikgPSA8CisgICAgICAgICAgKCBmbG9vcihsb2cyKG4pKSsx
LCAgbiA+IDAKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorRXhhbXBsZXM6Cis8bGlzdCBzdHls
ZT0ic3ltYm9scyI+Cis8dD5pbG9nKC0xKSA9IDA8L3Q+Cis8dD5pbG9nKDApID0gMDwvdD4KKzx0
Pmlsb2coMSkgPSAxPC90PgorPHQ+aWxvZygyKSA9IDI8L3Q+Cis8dD5pbG9nKDMpID0gMjwvdD4K
Kzx0Pmlsb2coNCkgPSAzPC90PgorPHQ+aWxvZyg3KSA9IDM8L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8
L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9
Im92ZXJ2aWV3IiB0aXRsZT0iT3B1cyBDb2RlYyBPdmVydmlldyI+CisKKzx0PgorVGhlIE9wdXMg
Y29kZWMgc2NhbGVzIGZyb20gNiZuYnNwO2tiL3MgbmFycm93YmFuZCBtb25vIHNwZWVjaCB0byA1
MTAmbmJzcDtrYi9zCisgZnVsbGJhbmQgc3RlcmVvIG11c2ljLCB3aXRoIGFsZ29yaXRobWljIGRl
bGF5cyByYW5naW5nIGZyb20gNSZuYnNwO21zIHRvCisgNjUuMiZuYnNwO21zLgorQXQgYW55IGdp
dmVuIHRpbWUsIGVpdGhlciB0aGUgTFAgbGF5ZXIsIHRoZSBNRENUIGxheWVyLCBvciBib3RoLCBt
YXkgYmUgYWN0aXZlLgorSXQgY2FuIHNlYW1sZXNzbHkgc3dpdGNoIGJldHdlZW4gYWxsIG9mIGl0
cyB2YXJpb3VzIG9wZXJhdGluZyBtb2RlcywgZ2l2aW5nIGl0CisgYSBncmVhdCBkZWFsIG9mIGZs
ZXhpYmlsaXR5IHRvIGFkYXB0IHRvIHZhcnlpbmcgY29udGVudCBhbmQgbmV0d29yaworIGNvbmRp
dGlvbnMgd2l0aG91dCByZW5lZ290aWF0aW5nIHRoZSBjdXJyZW50IHNlc3Npb24uCitUaGUgY29k
ZWMgYWxsb3dzIGlucHV0IGFuZCBvdXRwdXQgb2YgdmFyaW91cyBhdWRpbyBiYW5kd2lkdGhzLCBk
ZWZpbmVkIGFzCisgZm9sbG93czoKKzwvdD4KKzx0ZXh0dGFibGUgYW5jaG9yPSJhdWRpby1iYW5k
d2lkdGgiPgorPHR0Y29sPkFiYnJldmlhdGlvbjwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0
Ij5BdWRpbyBCYW5kd2lkdGg8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+U2FtcGxlIFJh
dGUgKEVmZmVjdGl2ZSk8L3R0Y29sPgorPGM+TkIgKG5hcnJvd2JhbmQpPC9jPiAgICAgICA8Yz40
Jm5ic3A7a0h6PC9jPiAgPGM+OCZuYnNwO2tIejwvYz4KKzxjPk1CIChtZWRpdW0tYmFuZCk8L2M+
ICAgICAgPGM+NiZuYnNwO2tIejwvYz4gPGM+MTImbmJzcDtrSHo8L2M+Cis8Yz5XQiAod2lkZWJh
bmQpPC9jPiAgICAgICAgIDxjPjgmbmJzcDtrSHo8L2M+IDxjPjE2Jm5ic3A7a0h6PC9jPgorPGM+
U1dCIChzdXBlci13aWRlYmFuZCk8L2M+IDxjPjEyJm5ic3A7a0h6PC9jPiA8Yz4yNCZuYnNwO2tI
ejwvYz4KKzxjPkZCIChmdWxsYmFuZCk8L2M+ICAgICAgICA8Yz4yMCZuYnNwO2tIeiAoKik8L2M+
IDxjPjQ4Jm5ic3A7a0h6PC9jPgorPC90ZXh0dGFibGU+Cis8dD4KKygqKSBBbHRob3VnaCB0aGUg
c2FtcGxpbmcgdGhlb3JlbSBhbGxvd3MgYSBiYW5kd2lkdGggYXMgbGFyZ2UgYXMgaGFsZiB0aGUK
KyBzYW1wbGluZyByYXRlLCBPcHVzIG5ldmVyIGNvZGVzIGF1ZGlvIGFib3ZlIDIwJm5ic3A7a0h6
LCBhcyB0aGF0IGlzIHRoZQorIGdlbmVyYWxseSBhY2NlcHRlZCB1cHBlciBsaW1pdCBvZiBodW1h
biBoZWFyaW5nLgorPC90PgorCis8dD4KK09wdXMgZGVmaW5lcyBzdXBlci13aWRlYmFuZCAoU1dC
KSB3aXRoIGFuIGVmZmVjdGl2ZSBzYW1wbGUgcmF0ZSBvZiAyNCZuYnNwO2tIeiwKKyB1bmxpa2Ug
c29tZSBvdGhlciBhdWRpbyBjb2Rpbmcgc3RhbmRhcmRzIHRoYXQgdXNlIDMyJm5ic3A7a0h6Lgor
VGhpcyB3YXMgY2hvc2VuIGZvciBhIG51bWJlciBvZiByZWFzb25zLgorVGhlIGJhbmQgbGF5b3V0
IGluIHRoZSBNRENUIGxheWVyIG5hdHVyYWxseSBhbGxvd3Mgc2tpcHBpbmcgY29lZmZpY2llbnRz
IGZvcgorIGZyZXF1ZW5jaWVzIG92ZXIgMTImbmJzcDtrSHosIGJ1dCBkb2VzIG5vdCBhbGxvdyBj
bGVhbmx5IGRyb3BwaW5nIGp1c3QgdGhvc2UKKyBmcmVxdWVuY2llcyBvdmVyIDE2Jm5ic3A7a0h6
LgorQSBzYW1wbGUgcmF0ZSBvZiAyNCZuYnNwO2tIeiBhbHNvIG1ha2VzIHJlc2FtcGxpbmcgaW4g
dGhlIE1EQ1QgbGF5ZXIgZWFzaWVyLAorIGFzIDI0IGV2ZW5seSBkaXZpZGVzIDQ4LCBhbmQgd2hl
biAyNCZuYnNwO2tIeiBpcyBzdWZmaWNpZW50LCBpdCBjYW4gc2F2ZQorIGNvbXB1dGF0aW9uIGlu
IG90aGVyIHByb2Nlc3NpbmcsIHN1Y2ggYXMgQWNvdXN0aWMgRWNobyBDYW5jZWxsYXRpb24gKEFF
QykuCitFeHBlcmltZW50YWwgY2hhbmdlcyB0byB0aGUgYmFuZCBsYXlvdXQgdG8gYWxsb3cgYSAx
NiZuYnNwO2tIeiBjdXRvZmYKKyAoMzImbmJzcDtrSHogZWZmZWN0aXZlIHNhbXBsZSByYXRlKSBz
aG93ZWQgcG90ZW50aWFsIHF1YWxpdHkgZGVncmFkYXRpb25zIGF0Cisgb3RoZXIgc2FtcGxlIHJh
dGVzLCBhbmQgYXQgdHlwaWNhbCBiaXRyYXRlcyB0aGUgbnVtYmVyIG9mIGJpdHMgc2F2ZWQgYnkg
dXNpbmcKKyBzdWNoIGEgY3V0b2ZmIGluc3RlYWQgb2YgY29kaW5nIGluIGZ1bGxiYW5kIChGQikg
bW9kZSBpcyB2ZXJ5IHNtYWxsLgorVGhlcmVmb3JlLCBpZiBhbiBhcHBsaWNhdGlvbiB3aXNoZXMg
dG8gcHJvY2VzcyBhIHNpZ25hbCBzYW1wbGVkIGF0IDMyJm5ic3A7a0h6LAorIGl0IHNob3VsZCBq
dXN0IHVzZSBGQi4KKzwvdD4KKworPHQ+CitUaGUgTFAgbGF5ZXIgaXMgYmFzZWQgb24gdGhlIFNJ
TEsgY29kZWMKKyA8eHJlZiB0YXJnZXQ9IlNJTEsiPjwveHJlZj4uCitJdCBzdXBwb3J0cyBOQiwg
TUIsIG9yIFdCIGF1ZGlvIGFuZCBmcmFtZSBzaXplcyBmcm9tIDEwJm5ic3A7bXMgdG8gNjAmbmJz
cDttcywKKyBhbmQgcmVxdWlyZXMgYW4gYWRkaXRpb25hbCA1Jm5ic3A7bXMgbG9vay1haGVhZCBm
b3Igbm9pc2Ugc2hhcGluZyBlc3RpbWF0aW9uLgorQSBzbWFsbCBhZGRpdGlvbmFsIGRlbGF5ICh1
cCB0byAxLjUgbXMpIG1heSBiZSByZXF1aXJlZCBmb3Igc2FtcGxpbmcgcmF0ZQorIGNvbnZlcnNp
b24uCitMaWtlIFZvcmJpcyA8eHJlZiB0YXJnZXQ9J1ZvcmJpcy13ZWJzaXRlJy8+IGFuZCBtYW55
IG90aGVyIG1vZGVybiBjb2RlY3MsIFNJTEsgaXMgaW5oZXJlbnRseSBkZXNpZ25lZCBmb3IKKyB2
YXJpYWJsZS1iaXRyYXRlIChWQlIpIGNvZGluZywgdGhvdWdoIHRoZSBlbmNvZGVyIGNhbiBhbHNv
IHByb2R1Y2UKKyBjb25zdGFudC1iaXRyYXRlIChDQlIpIHN0cmVhbXMuCitUaGUgdmVyc2lvbiBv
ZiBTSUxLIHVzZWQgaW4gT3B1cyBpcyBzdWJzdGFudGlhbGx5IG1vZGlmaWVkIGZyb20sIGFuZCBu
b3QKKyBjb21wYXRpYmxlIHdpdGgsIHRoZSBzdGFuZC1hbG9uZSBTSUxLIGNvZGVjIHByZXZpb3Vz
bHkgZGVwbG95ZWQgYnkgU2t5cGUuCitUaGlzIGRvY3VtZW50IGRvZXMgbm90IHNlcnZlIHRvIGRl
ZmluZSB0aGF0IGZvcm1hdCwgYnV0IHRob3NlIGludGVyZXN0ZWQgaW4gdGhlCisgb3JpZ2luYWwg
U0lMSyBjb2RlYyBzaG91bGQgc2VlIDx4cmVmIHRhcmdldD0iU0lMSyIvPiBpbnN0ZWFkLgorPC90
PgorCis8dD4KK1RoZSBNRENUIGxheWVyIGlzIGJhc2VkIG9uIHRoZSBDRUxUICBjb2RlYyA8eHJl
ZiB0YXJnZXQ9IkNFTFQiPjwveHJlZj4uCitJdCBzdXBwb3J0cyBOQiwgV0IsIFNXQiwgb3IgRkIg
YXVkaW8gYW5kIGZyYW1lIHNpemVzIGZyb20gMi41Jm5ic3A7bXMgdG8KKyAyMCZuYnNwO21zLCBh
bmQgcmVxdWlyZXMgYW4gYWRkaXRpb25hbCAyLjUmbmJzcDttcyBsb29rLWFoZWFkIGR1ZSB0byB0
aGUKKyBvdmVybGFwcGluZyBNRENUIHdpbmRvd3MuCitUaGUgQ0VMVCBjb2RlYyBpcyBpbmhlcmVu
dGx5IGRlc2lnbmVkIGZvciBDQlIgY29kaW5nLCBidXQgdW5saWtlIG1hbnkgQ0JSCisgY29kZWNz
IGl0IGlzIG5vdCBsaW1pdGVkIHRvIGEgc2V0IG9mIHByZWRldGVybWluZWQgcmF0ZXMuCitJdCBp
bnRlcm5hbGx5IGFsbG9jYXRlcyBiaXRzIHRvIGV4YWN0bHkgZmlsbCBhbnkgZ2l2ZW4gdGFyZ2V0
IGJ1ZGdldCwgYW5kIGFuCisgZW5jb2RlciBjYW4gcHJvZHVjZSBhIFZCUiBzdHJlYW0gYnkgdmFy
eWluZyB0aGUgdGFyZ2V0IG9uIGEgcGVyLWZyYW1lIGJhc2lzLgorVGhlIE1EQ1QgbGF5ZXIgaXMg
bm90IHVzZWQgZm9yIHNwZWVjaCB3aGVuIHRoZSBhdWRpbyBiYW5kd2lkdGggaXMgV0Igb3IgbGVz
cywKKyBhcyBpdCBpcyBub3QgdXNlZnVsIHRoZXJlLgorT24gdGhlIG90aGVyIGhhbmQsIG5vbi1z
cGVlY2ggc2lnbmFscyBhcmUgbm90IGFsd2F5cyBhZGVxdWF0ZWx5IGNvZGVkIHVzaW5nCisgbGlu
ZWFyIHByZWRpY3Rpb24sIHNvIGZvciBtdXNpYyBvbmx5IHRoZSBNRENUIGxheWVyIHNob3VsZCBi
ZSB1c2VkLgorPC90PgorCis8dD4KK0EgIkh5YnJpZCIgbW9kZSBhbGxvd3MgdGhlIHVzZSBvZiBi
b3RoIGxheWVycyBzaW11bHRhbmVvdXNseSB3aXRoIGEgZnJhbWUgc2l6ZQorIG9mIDEwJm5ic3A7
b3IgMjAmbmJzcDttcyBhbmQgYSBTV0Igb3IgRkIgYXVkaW8gYmFuZHdpZHRoLgorVGhlIExQIGxh
eWVyIGNvZGVzIHRoZSBsb3cgZnJlcXVlbmNpZXMgYnkgcmVzYW1wbGluZyB0aGUgc2lnbmFsIGRv
d24gdG8gV0IuCitUaGUgTURDVCBsYXllciBmb2xsb3dzLCBjb2RpbmcgdGhlIGhpZ2ggZnJlcXVl
bmN5IHBvcnRpb24gb2YgdGhlIHNpZ25hbC4KK1RoZSBjdXRvZmYgYmV0d2VlbiB0aGUgdHdvIGxp
ZXMgYXQgOCZuYnNwO2tIeiwgdGhlIG1heGltdW0gV0IgYXVkaW8gYmFuZHdpZHRoLgorSW4gdGhl
IE1EQ1QgbGF5ZXIsIGFsbCBiYW5kcyBiZWxvdyA4Jm5ic3A7a0h6IGFyZSBkaXNjYXJkZWQsIHNv
IHRoZXJlIGlzIG5vCisgY29kaW5nIHJlZHVuZGFuY3kgYmV0d2VlbiB0aGUgdHdvIGxheWVycy4K
KzwvdD4KKworPHQ+CitUaGUgc2FtcGxlIHJhdGUgKGluIGNvbnRyYXN0IHRvIHRoZSBhY3R1YWwg
YXVkaW8gYmFuZHdpZHRoKSBjYW4gYmUgY2hvc2VuCisgaW5kZXBlbmRlbnRseSBvbiB0aGUgZW5j
b2RlciBhbmQgZGVjb2RlciBzaWRlLCBlLmcuLCBhIGZ1bGxiYW5kIHNpZ25hbCBjYW4gYmUKKyBk
ZWNvZGVkIGFzIHdpZGViYW5kLCBvciB2aWNlIHZlcnNhLgorVGhpcyBhcHByb2FjaCBlbnN1cmVz
IGEgc2VuZGVyIGFuZCByZWNlaXZlciBjYW4gYWx3YXlzIGludGVyb3BlcmF0ZSwgcmVnYXJkbGVz
cworIG9mIHRoZSBjYXBhYmlsaXRpZXMgb2YgdGhlaXIgYWN0dWFsIGF1ZGlvIGhhcmR3YXJlLgor
SW50ZXJuYWxseSwgdGhlIExQIGxheWVyIGFsd2F5cyBvcGVyYXRlcyBhdCBhIHNhbXBsZSByYXRl
IG9mIHR3aWNlIHRoZSBhdWRpbworIGJhbmR3aWR0aCwgdXAgdG8gYSBtYXhpbXVtIG9mIDE2Jm5i
c3A7a0h6LCB3aGljaCBpdCBjb250aW51ZXMgdG8gdXNlIGZvciBTV0IKKyBhbmQgRkIuCitUaGUg
ZGVjb2RlciBzaW1wbHkgcmVzYW1wbGVzIGl0cyBvdXRwdXQgdG8gc3VwcG9ydCBkaWZmZXJlbnQg
c2FtcGxlIHJhdGVzLgorVGhlIE1EQ1QgbGF5ZXIgYWx3YXlzIG9wZXJhdGVzIGludGVybmFsbHkg
YXQgYSBzYW1wbGUgcmF0ZSBvZiA0OCZuYnNwO2tIei4KK1NpbmNlIGFsbCB0aGUgc3VwcG9ydGVk
IHNhbXBsZSByYXRlcyBldmVubHkgZGl2aWRlIHRoaXMgcmF0ZSwgYW5kIHNpbmNlIHRoZQorIHRo
ZSBkZWNvZGVyIG1heSBlYXNpbHkgemVybyBvdXQgdGhlIGhpZ2ggZnJlcXVlbmN5IHBvcnRpb24g
b2YgdGhlIHNwZWN0cnVtIGluCisgdGhlIGZyZXF1ZW5jeSBkb21haW4sIGl0IGNhbiBzaW1wbHkg
ZGVjaW1hdGUgdGhlIE1EQ1QgbGF5ZXIgb3V0cHV0IHRvIGFjaGlldmUKKyB0aGUgb3RoZXIgc3Vw
cG9ydGVkIHNhbXBsZSByYXRlcyB2ZXJ5IGNoZWFwbHkuCis8L3Q+CisKKzx0PgorQWZ0ZXIgY29u
dmVyc2lvbiB0byB0aGUgY29tbW9uLCBkZXNpcmVkIG91dHB1dCBzYW1wbGUgcmF0ZSwgdGhlIGRl
Y29kZXIgc2ltcGx5CisgYWRkcyB0aGUgb3V0cHV0IGZyb20gdGhlIHR3byBsYXllcnMgdG9nZXRo
ZXIuCitUbyBjb21wZW5zYXRlIGZvciB0aGUgZGlmZmVyZW50IGxvb2stYWhlYWQgcmVxdWlyZWQg
YnkgZWFjaCBsYXllciwgdGhlIENFTFQKKyBlbmNvZGVyIGlucHV0IGlzIGRlbGF5ZWQgYnkgYW4g
YWRkaXRpb25hbCAyLjcmbmJzcDttcy4KK1RoaXMgZW5zdXJlcyB0aGF0IGxvdyBmcmVxdWVuY2ll
cyBhbmQgaGlnaCBmcmVxdWVuY2llcyBhcnJpdmUgYXQgdGhlIHNhbWUgdGltZS4KK1RoaXMgZXh0
cmEgZGVsYXkgbWF5IGJlIHJlZHVjZWQgYnkgYW4gZW5jb2RlciBieSB1c2luZyBsZXNzIGxvb2st
YWhlYWQgZm9yIG5vaXNlCisgc2hhcGluZyBvciB1c2luZyBhIHNpbXBsZXIgcmVzYW1wbGVyIGlu
IHRoZSBMUCBsYXllciwgYnV0IHRoaXMgd2lsbCByZWR1Y2UKKyBxdWFsaXR5LgorSG93ZXZlciwg
dGhlIGJhc2UgMi41Jm5ic3A7bXMgbG9vay1haGVhZCBpbiB0aGUgQ0VMVCBsYXllciBjYW5ub3Qg
YmUgcmVkdWNlZCBpbgorIHRoZSBlbmNvZGVyIGJlY2F1c2UgaXQgaXMgbmVlZGVkIGZvciB0aGUg
TURDVCBvdmVybGFwLCB3aG9zZSBzaXplIGlzIGZpeGVkIGJ5CisgdGhlIGRlY29kZXIuCis8L3Q+
CisKKzx0PgorQm90aCBsYXllcnMgdXNlIHRoZSBzYW1lIGVudHJvcHkgY29kZXIsIGF2b2lkaW5n
IGFueSB3YXN0ZSBmcm9tICJwYWRkaW5nIGJpdHMiCisgYmV0d2VlbiB0aGVtLgorVGhlIGh5YnJp
ZCBhcHByb2FjaCBtYWtlcyBpdCBlYXN5IHRvIHN1cHBvcnQgYm90aCBDQlIgYW5kIFZCUiBjb2Rp
bmcuCitBbHRob3VnaCB0aGUgTFAgbGF5ZXIgaXMgVkJSLCB0aGUgYml0IGFsbG9jYXRpb24gb2Yg
dGhlIE1EQ1QgbGF5ZXIgY2FuIHByb2R1Y2UKKyBhIGZpbmFsIHN0cmVhbSB0aGF0IGlzIENCUiBi
eSB1c2luZyBhbGwgdGhlIGJpdHMgbGVmdCB1bnVzZWQgYnkgdGhlIExQIGxheWVyLgorPC90Pgor
Cis8c2VjdGlvbiB0aXRsZT0iQ29udHJvbCBQYXJhbWV0ZXJzIj4KKzx0PgorVGhlIE9wdXMgY29k
ZWMgaW5jbHVkZXMgYSBudW1iZXIgb2YgY29udHJvbCBwYXJhbWV0ZXJzIHdoaWNoIGNhbiBiZSBj
aGFuZ2VkIGR5bmFtaWNhbGx5IGR1cmluZworcmVndWxhciBvcGVyYXRpb24gb2YgdGhlIGNvZGVj
LCB3aXRob3V0IGludGVycnVwdGluZyB0aGUgYXVkaW8gc3RyZWFtIGZyb20gdGhlIGVuY29kZXIg
dG8gdGhlIGRlY29kZXIuCitUaGVzZSBwYXJhbWV0ZXJzIG9ubHkgYWZmZWN0IHRoZSBlbmNvZGVy
IHNpbmNlIGFueSBpbXBhY3QgdGhleSBoYXZlIG9uIHRoZSBiaXQtc3RyZWFtIGlzIHNpZ25hbGVk
Citpbi1iYW5kIHN1Y2ggdGhhdCBhIGRlY29kZXIgY2FuIGRlY29kZSBhbnkgT3B1cyBzdHJlYW0g
d2l0aG91dCBhbnkgb3V0LW9mLWJhbmQgc2lnbmFsaW5nLiBBbnkgT3B1cworaW1wbGVtZW50YXRp
b24gY2FuIGFkZCBvciBtb2RpZnkgdGhlc2UgY29udHJvbCBwYXJhbWV0ZXJzIHdpdGhvdXQgYWZm
ZWN0aW5nIGludGVyb3BlcmFiaWxpdHkuIFRoZSBtb3N0CitpbXBvcnRhbnQgZW5jb2RlciBjb250
cm9sIHBhcmFtZXRlcnMgaW4gdGhlIHJlZmVyZW5jZSBlbmNvZGVyIGFyZSBsaXN0ZWQgYmVsb3cu
Cis8L3Q+CisKKzxzZWN0aW9uIHRpdGxlPSJCaXRyYXRlIiB0b2M9ImV4bGN1ZGUiPgorPHQ+CitP
cHVzIHN1cHBvcnRzIGFsbCBiaXRyYXRlcyBmcm9tIDYmbmJzcDtrYi9zIHRvIDUxMCZuYnNwO2ti
L3MuIEFsbCBvdGhlciBwYXJhbWV0ZXJzIGJlaW5nCitlcXVhbCwgaGlnaGVyIGJpdHJhdGUgcmVz
dWx0cyBpbiBoaWdoZXIgcXVhbGl0eS4gRm9yIGEgZnJhbWUgc2l6ZSBvZiAyMCZuYnNwO21zLCB0
aGVzZQorYXJlIHRoZSBiaXRyYXRlICJzd2VldCBzcG90cyIgZm9yIE9wdXMgaW4gdmFyaW91cyBj
b25maWd1cmF0aW9uczoKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PjgtMTIga2IvcyBmb3Ig
TkIgc3BlZWNoLDwvdD4KKzx0PjE2LTIwIGtiL3MgZm9yIFdCIHNwZWVjaCw8L3Q+Cis8dD4yOC00
MCBrYi9zIGZvciBGQiBzcGVlY2gsPC90PgorPHQ+NDgtNjQga2IvcyBmb3IgRkIgbW9ubyBtdXNp
YywgYW5kPC90PgorPHQ+NjQtMTI4IGtiL3MgZm9yIEZCIHN0ZXJlbyBtdXNpYy48L3Q+Cis8L2xp
c3Q+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJOdW1iZXIgb2YgQ2hhbm5l
bHMgKE1vbm8vU3RlcmVvKSIgdG9jPSJleGxjdWRlIj4KKzx0PgorT3B1cyBjYW4gdHJhbnNtaXQg
ZWl0aGVyIG1vbm8gb3Igc3RlcmVvIGZyYW1lcyB3aXRoaW4gYSBzaW5nbGUgc3RyZWFtLgorV2hl
biBkZWNvZGluZyBhIG1vbm8gZnJhbWUgaW4gYSBzdGVyZW8gZGVjb2RlciwgdGhlIGxlZnQgYW5k
IHJpZ2h0IGNoYW5uZWxzIGFyZQorIGlkZW50aWNhbCwgYW5kIHdoZW4gZGVjb2RpbmcgYSBzdGVy
ZW8gZnJhbWUgaW4gYSBtb25vIGRlY29kZXIsIHRoZSBtb25vIG91dHB1dAorIGlzIHRoZSBhdmVy
YWdlIG9mIHRoZSBsZWZ0IGFuZCByaWdodCBjaGFubmVscy4KK0luIHNvbWUgY2FzZXMsIGl0IGlz
IGRlc2lyYWJsZSB0byBlbmNvZGUgYSBzdGVyZW8gaW5wdXQgc3RyZWFtIGluIG1vbm8gKGUuZy4s
CisgYmVjYXVzZSB0aGUgYml0cmF0ZSBpcyB0b28gbG93IHRvIGVuY29kZSBzdGVyZW8gd2l0aCBz
dWZmaWNpZW50IHF1YWxpdHkpLgorVGhlIG51bWJlciBvZiBjaGFubmVscyBlbmNvZGVkIGNhbiBi
ZSBzZWxlY3RlZCBpbiByZWFsLXRpbWUsIGJ1dCBieSBkZWZhdWx0IHRoZQorIHJlZmVyZW5jZSBl
bmNvZGVyIGF0dGVtcHRzIHRvIG1ha2UgdGhlIGJlc3QgZGVjaXNpb24gcG9zc2libGUgZ2l2ZW4g
dGhlCisgY3VycmVudCBiaXRyYXRlLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRs
ZT0iQXVkaW8gQmFuZHdpZHRoIiB0b2M9ImV4bGN1ZGUiPgorPHQ+CitUaGUgYXVkaW8gYmFuZHdp
ZHRocyBzdXBwb3J0ZWQgYnkgT3B1cyBhcmUgbGlzdGVkIGluCisgPHhyZWYgdGFyZ2V0PSJhdWRp
by1iYW5kd2lkdGgiLz4uCitKdXN0IGxpa2UgZm9yIHRoZSBudW1iZXIgb2YgY2hhbm5lbHMsIGFu
eSBkZWNvZGVyIGNhbiBkZWNvZGUgYXVkaW8gZW5jb2RlZCBhdAorIGFueSBiYW5kd2lkdGguCitG
b3IgZXhhbXBsZSwgYW55IE9wdXMgZGVjb2RlciBvcGVyYXRpbmcgYXQgOCZuYnNwO2tIeiBjYW4g
ZGVjb2RlIGEgRkIgT3B1cworIGZyYW1lLCBhbmQgYW55IE9wdXMgZGVjb2RlciBvcGVyYXRpbmcg
YXQgNDgmbmJzcDtrSHogY2FuIGRlY29kZSBhIE5CIGZyYW1lLgorU2ltaWxhcmx5LCB0aGUgcmVm
ZXJlbmNlIGVuY29kZXIgY2FuIHRha2UgYSA0OCZuYnNwO2tIeiBpbnB1dCBzaWduYWwgYW5kCisg
ZW5jb2RlIGl0IGFzIE5CLgorVGhlIGhpZ2hlciB0aGUgYXVkaW8gYmFuZHdpZHRoLCB0aGUgaGln
aGVyIHRoZSByZXF1aXJlZCBiaXRyYXRlIHRvIGFjaGlldmUKKyBhY2NlcHRhYmxlIHF1YWxpdHku
CitUaGUgYXVkaW8gYmFuZHdpZHRoIGNhbiBiZSBleHBsaWNpdGx5IHNwZWNpZmllZCBpbiByZWFs
LXRpbWUsIGJ1dCBieSBkZWZhdWx0CisgdGhlIHJlZmVyZW5jZSBlbmNvZGVyIGF0dGVtcHRzIHRv
IG1ha2UgdGhlIGJlc3QgYmFuZHdpZHRoIGRlY2lzaW9uIHBvc3NpYmxlCisgZ2l2ZW4gdGhlIGN1
cnJlbnQgYml0cmF0ZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworCis8c2VjdGlvbiB0aXRsZT0iRnJh
bWUgRHVyYXRpb24iIHRvYz0iZXhsY3VkZSI+Cis8dD4KK09wdXMgY2FuIGVuY29kZSBmcmFtZXMg
b2YgMi41LCA1LCAxMCwgMjAsIDQwIG9yIDYwJm5ic3A7bXMuCitJdCBjYW4gYWxzbyBjb21iaW5l
IG11bHRpcGxlIGZyYW1lcyBpbnRvIHBhY2tldHMgb2YgdXAgdG8gMTIwJm5ic3A7bXMuCitGb3Ig
cmVhbC10aW1lIGFwcGxpY2F0aW9ucywgc2VuZGluZyBmZXdlciBwYWNrZXRzIHBlciBzZWNvbmQg
cmVkdWNlcyB0aGUKKyBiaXRyYXRlLCBzaW5jZSBpdCByZWR1Y2VzIHRoZSBvdmVyaGVhZCBmcm9t
IElQLCBVRFAsIGFuZCBSVFAgaGVhZGVycy4KK0hvd2V2ZXIsIGl0IGluY3JlYXNlcyBsYXRlbmN5
IGFuZCBzZW5zaXRpdml0eSB0byBwYWNrZXQgbG9zc2VzLCBhcyBsb3Npbmcgb25lCisgcGFja2V0
IGNvbnN0aXR1dGVzIGEgbG9zcyBvZiBhIGJpZ2dlciBjaHVuayBvZiBhdWRpby4KK0luY3JlYXNp
bmcgdGhlIGZyYW1lIGR1cmF0aW9uIGFsc28gc2xpZ2h0bHkgaW1wcm92ZXMgY29kaW5nIGVmZmlj
aWVuY3ksIGJ1dCB0aGUKKyBnYWluIGJlY29tZXMgc21hbGwgZm9yIGZyYW1lIHNpemVzIGFib3Zl
IDIwJm5ic3A7bXMuCitGb3IgdGhpcyByZWFzb24sIDIwJm5ic3A7bXMgZnJhbWVzIGFyZSBhIGdv
b2QgY2hvaWNlIGZvciBtb3N0IGFwcGxpY2F0aW9ucy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNl
Y3Rpb24gdGl0bGU9IkNvbXBsZXhpdHkiIHRvYz0iZXhsY3VkZSI+Cis8dD4KK1RoZXJlIGFyZSB2
YXJpb3VzIGFzcGVjdHMgb2YgdGhlIE9wdXMgZW5jb2RpbmcgcHJvY2VzcyB3aGVyZSB0cmFkZS1v
ZmZzCitjYW4gYmUgbWFkZSBiZXR3ZWVuIENQVSBjb21wbGV4aXR5IGFuZCBxdWFsaXR5L2JpdHJh
dGUuIEluIHRoZSByZWZlcmVuY2UKK2VuY29kZXIsIHRoZSBjb21wbGV4aXR5IGlzIHNlbGVjdGVk
IHVzaW5nIGFuIGludGVnZXIgZnJvbSAwIHRvIDEwLCB3aGVyZQorMCBpcyB0aGUgbG93ZXN0IGNv
bXBsZXhpdHkgYW5kIDEwIGlzIHRoZSBoaWdoZXN0LiBFeGFtcGxlcyBvZgorY29tcHV0YXRpb25z
IGZvciB3aGljaCBzdWNoIHRyYWRlLW9mZnMgbWF5IG9jY3VyIGFyZToKKzxsaXN0IHN0eWxlPSJz
eW1ib2xzIj4KKzx0PlRoZSBvcmRlciBvZiB0aGUgcGl0Y2ggYW5hbHlzaXMgd2hpdGVuaW5nIGZp
bHRlciA8eHJlZiB0YXJnZXQ9IldoaXRlbmluZyIvPiw8L3Q+Cis8dD5UaGUgb3JkZXIgb2YgdGhl
IHNob3J0LXRlcm0gbm9pc2Ugc2hhcGluZyBmaWx0ZXIsPC90PgorPHQ+VGhlIG51bWJlciBvZiBz
dGF0ZXMgaW4gZGVsYXllZCBkZWNpc2lvbiBxdWFudGl6YXRpb24gb2YgdGhlCityZXNpZHVhbCBz
aWduYWwsIGFuZDwvdD4KKzx0PlRoZSB1c2Ugb2YgY2VydGFpbiBiaXQtc3RyZWFtIGZlYXR1cmVz
IHN1Y2ggYXMgdmFyaWFibGUgdGltZS1mcmVxdWVuY3kKK3Jlc29sdXRpb24gYW5kIHRoZSBwaXRj
aCBwb3N0LWZpbHRlci48L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9u
IHRpdGxlPSJQYWNrZXQgTG9zcyBSZXNpbGllbmNlIiB0b2M9ImV4bGN1ZGUiPgorPHQ+CitBdWRp
byBjb2RlY3Mgb2Z0ZW4gZXhwbG9pdCBpbnRlci1mcmFtZSBjb3JyZWxhdGlvbnMgdG8gcmVkdWNl
IHRoZQorYml0cmF0ZSBhdCBhIGNvc3QgaW4gZXJyb3IgcHJvcGFnYXRpb246IGFmdGVyIGxvc2lu
ZyBvbmUgcGFja2V0CitzZXZlcmFsIHBhY2tldHMgbmVlZCB0byBiZSByZWNlaXZlZCBiZWZvcmUg
dGhlIGRlY29kZXIgaXMgYWJsZSB0bworYWNjdXJhdGVseSByZWNvbnN0cnVjdCB0aGUgc3BlZWNo
IHNpZ25hbC4gIFRoZSBleHRlbnQgdG8gd2hpY2ggT3B1cworZXhwbG9pdHMgaW50ZXItZnJhbWUg
ZGVwZW5kZW5jaWVzIGNhbiBiZSBhZGp1c3RlZCBvbiB0aGUgZmx5IHRvCitjaG9vc2UgYSB0cmFk
ZS1vZmYgYmV0d2VlbiBiaXRyYXRlIGFuZCBhbW91bnQgb2YgZXJyb3IgcHJvcGFnYXRpb24uCis8
L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJGb3J3YXJkIEVycm9yIENvcnJlY3Rp
b24gKEZFQykiIHRvYz0iZXhsY3VkZSI+Cis8dD4KKyAgIEFub3RoZXIgbWVjaGFuaXNtIHByb3Zp
ZGluZyByb2J1c3RuZXNzIGFnYWluc3QgcGFja2V0IGxvc3MgaXMgdGhlIGluLWJhbmQKKyAgIEZv
cndhcmQgRXJyb3IgQ29ycmVjdGlvbiAoRkVDKS4gIFBhY2tldHMgdGhhdCBhcmUgZGV0ZXJtaW5l
ZCB0bworICAgY29udGFpbiBwZXJjZXB0dWFsbHkgaW1wb3J0YW50IHNwZWVjaCBpbmZvcm1hdGlv
biwgc3VjaCBhcyBvbnNldHMgb3IKKyAgIHRyYW5zaWVudHMsIGFyZSBlbmNvZGVkIGFnYWluIGF0
IGEgbG93ZXIgYml0cmF0ZSBhbmQgdGhpcyByZS1lbmNvZGVkCisgICBpbmZvcm1hdGlvbiBpcyBh
ZGRlZCB0byBhIHN1YnNlcXVlbnQgcGFja2V0LgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlv
biB0aXRsZT0iQ29uc3RhbnQvVmFyaWFibGUgQml0cmF0ZSIgdG9jPSJleGxjdWRlIj4KKzx0Pgor
T3B1cyBpcyBtb3JlIGVmZmljaWVudCB3aGVuIG9wZXJhdGluZyB3aXRoIHZhcmlhYmxlIGJpdHJh
dGUgKFZCUiksIHdoaWNoIGlzCit0aGUgZGVmYXVsdC4gSG93ZXZlciwgaW4gc29tZSAocmFyZSkg
YXBwbGljYXRpb25zLCBjb25zdGFudCBiaXRyYXRlIChDQlIpCitpcyByZXF1aXJlZC4gVGhlcmUg
YXJlIHR3byBtYWluIHJlYXNvbnMgdG8gb3BlcmF0ZSBpbiBDQlIgbW9kZToKKzxsaXN0IHN0eWxl
PSJzeW1ib2xzIj4KKzx0PldoZW4gdGhlIHRyYW5zcG9ydCBvbmx5IHN1cHBvcnRzIGEgZml4ZWQg
c2l6ZSBmb3IgZWFjaCBjb21wcmVzc2VkIGZyYW1lPC90PgorPHQ+V2hlbiBlbmNyeXB0aW9uIGlz
IHVzZWQgZm9yIGFuIGF1ZGlvIHN0cmVhbSB0aGF0IGlzIGVpdGhlciBoaWdobHkgY29uc3RyYWlu
ZWQKKyAgIChlLmcuIHllcy9ubywgcmVjb3JkZWQgcHJvbXB0cykgb3IgaGlnaGx5IHNlbnNpdGl2
ZSA8eHJlZiB0YXJnZXQ9IlNSVFAtVkJSIj48L3hyZWY+IDwvdD4KKzwvbGlzdD4KKworV2hlbiBs
b3ctbGF0ZW5jeSB0cmFuc21pc3Npb24gaXMgcmVxdWlyZWQgb3ZlciBhIHJlbGF0aXZlbHkgc2xv
dyBjb25uZWN0aW9uLCB0aGVuCitjb25zdHJhaW5lZCBWQlIgY2FuIGFsc28gYmUgdXNlZC4gVGhp
cyB1c2VzIFZCUiBpbiBhIHdheSB0aGF0IHNpbXVsYXRlcyBhCisiYml0IHJlc2Vydm9pciIgYW5k
IGlzIGVxdWl2YWxlbnQgdG8gd2hhdCBNUDMgKE1QRUcgMSwgTGF5ZXIgMykgYW5kCitBQUMgKEFk
dmFuY2VkIEF1ZGlvIENvZGluZykgY2FsbCBDQlIgKGkuZS4sIG5vdCB0cnVlCitDQlIgZHVlIHRv
IHRoZSBiaXQgcmVzZXJ2b2lyKS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9
IkRpc2NvbnRpbnVvdXMgVHJhbnNtaXNzaW9uIChEVFgpIiB0b2M9ImV4bGN1ZGUiPgorPHQ+Cisg
ICBEaXNjb250aW51b3VzIFRyYW5zbWlzc2lvbiAoRFRYKSByZWR1Y2VzIHRoZSBiaXRyYXRlIGR1
cmluZyBzaWxlbmNlCisgICBvciBiYWNrZ3JvdW5kIG5vaXNlLiAgV2hlbiBEVFggaXMgZW5hYmxl
ZCwgb25seSBvbmUgZnJhbWUgaXMgZW5jb2RlZAorICAgZXZlcnkgNDAwIG1pbGxpc2Vjb25kcy4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9u
IGFuY2hvcj0ibW9kZXMiIHRpdGxlPSJJbnRlcm5hbCBGcmFtaW5nIj4KKworPHQ+CitUaGUgT3B1
cyBlbmNvZGVyIHByb2R1Y2VzICJwYWNrZXRzIiwgd2hpY2ggYXJlIGVhY2ggYSBjb250aWd1b3Vz
IHNldCBvZiBieXRlcworIG1lYW50IHRvIGJlIHRyYW5zbWl0dGVkIGFzIGEgc2luZ2xlIHVuaXQu
CitUaGUgcGFja2V0cyBkZXNjcmliZWQgaGVyZSBkbyBub3QgaW5jbHVkZSBzdWNoIHRoaW5ncyBh
cyBJUCwgVURQLCBvciBSVFAKKyBoZWFkZXJzIHdoaWNoIGFyZSBub3JtYWxseSBmb3VuZCBpbiBh
IHRyYW5zcG9ydC1sYXllciBwYWNrZXQuCitBIHNpbmdsZSBwYWNrZXQgbWF5IGNvbnRhaW4gbXVs
dGlwbGUgYXVkaW8gZnJhbWVzLCBzbyBsb25nIGFzIHRoZXkgc2hhcmUgYQorIGNvbW1vbiBzZXQg
b2YgcGFyYW1ldGVycywgaW5jbHVkaW5nIHRoZSBvcGVyYXRpbmcgbW9kZSwgYXVkaW8gYmFuZHdp
ZHRoLCBmcmFtZQorIHNpemUsIGFuZCBjaGFubmVsIGNvdW50IChtb25vIHZzLiBzdGVyZW8pLgor
VGhpcyBzZWN0aW9uIGRlc2NyaWJlcyB0aGUgcG9zc2libGUgY29tYmluYXRpb25zIG9mIHRoZXNl
IHBhcmFtZXRlcnMgYW5kIHRoZQorIGludGVybmFsIGZyYW1pbmcgdXNlZCB0byBwYWNrIG11bHRp
cGxlIGZyYW1lcyBpbnRvIGEgc2luZ2xlIHBhY2tldC4KK1RoaXMgZnJhbWluZyBpcyBub3Qgc2Vs
Zi1kZWxpbWl0aW5nLgorSW5zdGVhZCwgaXQgYXNzdW1lcyB0aGF0IGEgaGlnaGVyIGxheWVyIChz
dWNoIGFzIFVEUCBvciBSVFAgPHhyZWYgdGFyZ2V0PSdSRkMzNTUwJy8+CitvciBPZ2cgPHhyZWYg
dGFyZ2V0PSdSRkMzNTMzJy8+IG9yIE1hdHJvc2thIDx4cmVmIHRhcmdldD0nTWF0cm9za2Etd2Vi
c2l0ZScvPikKKyB3aWxsIGNvbW11bmljYXRlIHRoZSBsZW5ndGgsIGluIGJ5dGVzLCBvZiB0aGUg
cGFja2V0LCBhbmQgaXQgdXNlcyB0aGlzCisgaW5mb3JtYXRpb24gdG8gcmVkdWNlIHRoZSBmcmFt
aW5nIG92ZXJoZWFkIGluIHRoZSBwYWNrZXQgaXRzZWxmLgorQSBkZWNvZGVyIGltcGxlbWVudGF0
aW9uIE1VU1Qgc3VwcG9ydCB0aGUgZnJhbWluZyBkZXNjcmliZWQgaW4gdGhpcyBzZWN0aW9uLgor
QW4gYWx0ZXJuYXRpdmUsIHNlbGYtZGVsaW1pdGluZyB2YXJpYW50IG9mIHRoZSBmcmFtaW5nIGlz
IGRlc2NyaWJlZCBpbgorIDx4cmVmIHRhcmdldD0ic2VsZi1kZWxpbWl0aW5nLWZyYW1pbmciLz4u
CitTdXBwb3J0IGZvciB0aGF0IHZhcmlhbnQgaXMgT1BUSU9OQUwuCis8L3Q+CisKKzx0PgorQWxs
IGJpdCBkaWFncmFtcyBpbiB0aGlzIGRvY3VtZW50IG51bWJlciB0aGUgYml0cyBzbyB0aGF0IGJp
dCAwIGlzIHRoZSBtb3N0Cisgc2lnbmlmaWNhbnQgYml0IG9mIHRoZSBmaXJzdCBieXRlLCBhbmQg
Yml0IDcgaXMgdGhlIGxlYXN0IHNpZ25pZmljYW50LgorQml0IDggaXMgdGh1cyB0aGUgbW9zdCBz
aWduaWZpY2FudCBiaXQgb2YgdGhlIHNlY29uZCBieXRlLCBldGMuCitXZWxsLWZvcm1lZCBPcHVz
IHBhY2tldHMgb2JleSBjZXJ0YWluIHJlcXVpcmVtZW50cywgbWFya2VkIFtSMV0gdGhyb3VnaCBb
UjddCisgYmVsb3cuCitUaGVzZSBhcmUgc3VtbWFyaXplZCBpbiA8eHJlZiB0YXJnZXQ9Im1hbGZv
cm1lZC1wYWNrZXRzIi8+IGFsb25nIHdpdGgKKyBhcHByb3ByaWF0ZSBtZWFucyBvZiBoYW5kbGlu
ZyBtYWxmb3JtZWQgcGFja2V0cy4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJ0b2NfYnl0ZSIg
dGl0bGU9IlRoZSBUT0MgQnl0ZSI+Cis8dCBhbmNob3I9IlIxIj4KK0Egd2VsbC1mb3JtZWQgT3B1
cyBwYWNrZXQgTVVTVCBjb250YWluIGF0IGxlYXN0IG9uZSBieXRlJm5ic3A7W1IxXS4KK1RoaXMg
Ynl0ZSBmb3JtcyBhIHRhYmxlLW9mLWNvbnRlbnRzIChUT0MpIGhlYWRlciB0aGF0IHNpZ25hbHMg
d2hpY2ggb2YgdGhlCisgdmFyaW91cyBtb2RlcyBhbmQgY29uZmlndXJhdGlvbnMgYSBnaXZlbiBw
YWNrZXQgdXNlcy4KK0l0IGlzIGNvbXBvc2VkIG9mIGEgY29uZmlndXJhdGlvbiBudW1iZXIsICJj
b25maWciLCBhIHN0ZXJlbyBmbGFnLCAicyIsIGFuZCBhCisgZnJhbWUgY291bnQgY29kZSwgImMi
LCBhcnJhbmdlZCBhcyBpbGx1c3RyYXRlZCBpbgorIDx4cmVmIHRhcmdldD0idG9jX2J5dGVfZmln
Ii8+LgorQSBkZXNjcmlwdGlvbiBvZiBlYWNoIG9mIHRoZXNlIGZpZWxkcyBmb2xsb3dzLgorPC90
PgorCis8ZmlndXJlIGFuY2hvcj0idG9jX2J5dGVfZmlnIiB0aXRsZT0iVGhlIFRPQyBCeXRlIj4K
KzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAKKyAwIDEgMiAzIDQgNSA2IDcK
KystKy0rLSstKy0rLSstKy0rCit8IGNvbmZpZyAgfHN8IGMgfAorKy0rLSstKy0rLSstKy0rLSsK
K11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8dD4KK1RoZSB0b3AgZml2ZSBiaXRzIG9mIHRo
ZSBUT0MgYnl0ZSwgbGFiZWxlZCAiY29uZmlnIiwgZW5jb2RlIG9uZSBvZiAzMiBwb3NzaWJsZQor
IGNvbmZpZ3VyYXRpb25zIG9mIG9wZXJhdGluZyBtb2RlLCBhdWRpbyBiYW5kd2lkdGgsIGFuZCBm
cmFtZSBzaXplLgorQXMgZGVzY3JpYmVkLCB0aGUgTFAgKFNJTEspIGxheWVyIGFuZCBNRENUIChD
RUxUKSBsYXllciBjYW4gYmUgY29tYmluZWQgaW4gdGhyZWUgcG9zc2libGUKKyBvcGVyYXRpbmcg
bW9kZXM6Cis8bGlzdCBzdHlsZT0ibnVtYmVycyI+Cis8dD5BIFNJTEstb25seSBtb2RlIGZvciB1
c2UgaW4gbG93IGJpdHJhdGUgY29ubmVjdGlvbnMgd2l0aCBhbiBhdWRpbyBiYW5kd2lkdGgKKyBv
ZiBXQiBvciBsZXNzLDwvdD4KKzx0PkEgSHlicmlkIChTSUxLK0NFTFQpIG1vZGUgZm9yIFNXQiBv
ciBGQiBzcGVlY2ggYXQgbWVkaXVtIGJpdHJhdGVzLCBhbmQ8L3Q+Cis8dD5BIENFTFQtb25seSBt
b2RlIGZvciB2ZXJ5IGxvdyBkZWxheSBzcGVlY2ggdHJhbnNtaXNzaW9uIGFzIHdlbGwgYXMgbXVz
aWMKKyB0cmFuc21pc3Npb24gKE5CIHRvIEZCKS48L3Q+Cis8L2xpc3Q+CitUaGUgMzIgcG9zc2li
bGUgY29uZmlndXJhdGlvbnMgZWFjaCBpZGVudGlmeSB3aGljaCBvbmUgb2YgdGhlc2Ugb3BlcmF0
aW5nIG1vZGVzCisgdGhlIHBhY2tldCB1c2VzLCBhcyB3ZWxsIGFzIHRoZSBhdWRpbyBiYW5kd2lk
dGggYW5kIHRoZSBmcmFtZSBzaXplLgorPHhyZWYgdGFyZ2V0PSJjb25maWdfYml0cyIvPiBsaXN0
cyB0aGUgcGFyYW1ldGVycyBmb3IgZWFjaCBjb25maWd1cmF0aW9uLgorPC90PgorPHRleHR0YWJs
ZSBhbmNob3I9ImNvbmZpZ19iaXRzIiB0aXRsZT0iVE9DIEJ5dGUgQ29uZmlndXJhdGlvbiBQYXJh
bWV0ZXJzIj4KKzx0dGNvbD5Db25maWd1cmF0aW9uIE51bWJlcihzKTwvdHRjb2w+Cis8dHRjb2w+
TW9kZTwvdHRjb2w+Cis8dHRjb2w+QmFuZHdpZHRoPC90dGNvbD4KKzx0dGNvbD5GcmFtZSBTaXpl
czwvdHRjb2w+Cis8Yz4wLi4uMzwvYz4gICA8Yz5TSUxLLW9ubHk8L2M+IDxjPk5CPC9jPiAgPGM+
MTAsIDIwLCA0MCwgNjAmbmJzcDttczwvYz4KKzxjPjQuLi43PC9jPiAgIDxjPlNJTEstb25seTwv
Yz4gPGM+TUI8L2M+ICA8Yz4xMCwgMjAsIDQwLCA2MCZuYnNwO21zPC9jPgorPGM+OC4uLjExPC9j
PiAgPGM+U0lMSy1vbmx5PC9jPiA8Yz5XQjwvYz4gIDxjPjEwLCAyMCwgNDAsIDYwJm5ic3A7bXM8
L2M+Cis8Yz4xMi4uLjEzPC9jPiA8Yz5IeWJyaWQ8L2M+ICAgIDxjPlNXQjwvYz4gPGM+MTAsIDIw
Jm5ic3A7bXM8L2M+Cis8Yz4xNC4uLjE1PC9jPiA8Yz5IeWJyaWQ8L2M+ICAgIDxjPkZCPC9jPiAg
PGM+MTAsIDIwJm5ic3A7bXM8L2M+Cis8Yz4xNi4uLjE5PC9jPiA8Yz5DRUxULW9ubHk8L2M+IDxj
Pk5CPC9jPiAgPGM+Mi41LCA1LCAxMCwgMjAmbmJzcDttczwvYz4KKzxjPjIwLi4uMjM8L2M+IDxj
PkNFTFQtb25seTwvYz4gPGM+V0I8L2M+ICA8Yz4yLjUsIDUsIDEwLCAyMCZuYnNwO21zPC9jPgor
PGM+MjQuLi4yNzwvYz4gPGM+Q0VMVC1vbmx5PC9jPiA8Yz5TV0I8L2M+IDxjPjIuNSwgNSwgMTAs
IDIwJm5ic3A7bXM8L2M+Cis8Yz4yOC4uLjMxPC9jPiA8Yz5DRUxULW9ubHk8L2M+IDxjPkZCPC9j
PiAgPGM+Mi41LCA1LCAxMCwgMjAmbmJzcDttczwvYz4KKzwvdGV4dHRhYmxlPgorPHQ+CitUaGUg
Y29uZmlndXJhdGlvbiBudW1iZXJzIGluIGVhY2ggcmFuZ2UgKGUuZy4sIDAuLi4zIGZvciBOQiBT
SUxLLW9ubHkpCisgY29ycmVzcG9uZCB0byB0aGUgdmFyaW91cyBjaG9pY2VzIG9mIGZyYW1lIHNp
emUsIGluIHRoZSBzYW1lIG9yZGVyLgorRm9yIGV4YW1wbGUsIGNvbmZpZ3VyYXRpb24gMCBoYXMg
YSAxMCZuYnNwO21zIGZyYW1lIHNpemUgYW5kIGNvbmZpZ3VyYXRpb24gMworIGhhcyBhIDYwJm5i
c3A7bXMgZnJhbWUgc2l6ZS4KKzwvdD4KKworPHQ+CitPbmUgYWRkaXRpb25hbCBiaXQsIGxhYmVs
ZWQgInMiLCBzaWduYWxzIG1vbm8gdnMuIHN0ZXJlbywgd2l0aCAwIGluZGljYXRpbmcKKyBtb25v
IGFuZCAxIGluZGljYXRpbmcgc3RlcmVvLgorPC90PgorCis8dD4KK1RoZSByZW1haW5pbmcgdHdv
IGJpdHMgb2YgdGhlIFRPQyBieXRlLCBsYWJlbGVkICJjIiwgY29kZSB0aGUgbnVtYmVyIG9mIGZy
YW1lcworIHBlciBwYWNrZXQgKGNvZGVzIDAgdG8gMykgYXMgZm9sbG93czoKKzxsaXN0IHN0eWxl
PSJzeW1ib2xzIj4KKzx0PjA6ICAgIDEgZnJhbWUgaW4gdGhlIHBhY2tldDwvdD4KKzx0PjE6ICAg
IDIgZnJhbWVzIGluIHRoZSBwYWNrZXQsIGVhY2ggd2l0aCBlcXVhbCBjb21wcmVzc2VkIHNpemU8
L3Q+Cis8dD4yOiAgICAyIGZyYW1lcyBpbiB0aGUgcGFja2V0LCB3aXRoIGRpZmZlcmVudCBjb21w
cmVzc2VkIHNpemVzPC90PgorPHQ+MzogICAgYW4gYXJiaXRyYXJ5IG51bWJlciBvZiBmcmFtZXMg
aW4gdGhlIHBhY2tldDwvdD4KKzwvbGlzdD4KK1RoaXMgZHJhZnQgcmVmZXJzIHRvIGEgcGFja2V0
IGFzIGEgY29kZSAwIHBhY2tldCwgY29kZSAxIHBhY2tldCwgZXRjLiwgYmFzZWQgb24KKyB0aGUg
dmFsdWUgb2YgImMiLgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJGcmFt
ZSBQYWNraW5nIj4KKworPHQ+CitUaGlzIHNlY3Rpb24gZGVzY3JpYmVzIGhvdyBmcmFtZXMgYXJl
IHBhY2tlZCBhY2NvcmRpbmcgdG8gZWFjaCBwb3NzaWJsZSB2YWx1ZQorIG9mICJjIiBpbiB0aGUg
VE9DIGJ5dGUuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0iZnJhbWUtbGVuZ3RoLWNvZGluZyIg
dGl0bGU9IkZyYW1lIExlbmd0aCBDb2RpbmciPgorPHQ+CitXaGVuIGEgcGFja2V0IGNvbnRhaW5z
IG11bHRpcGxlIFZCUiBmcmFtZXMgKGkuZS4sIGNvZGUgMiBvciAzKSwgdGhlIGNvbXByZXNzZWQK
KyBsZW5ndGggb2Ygb25lIG9yIG1vcmUgb2YgdGhlc2UgZnJhbWVzIGlzIGluZGljYXRlZCB3aXRo
IGEgb25lLSBvciB0d28tYnl0ZQorIHNlcXVlbmNlLCB3aXRoIHRoZSBtZWFuaW5nIG9mIHRoZSBm
aXJzdCBieXRlIGFzIGZvbGxvd3M6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD4wOiAgICAg
ICAgICBObyBmcmFtZSAoZGlzY29udGludW91cyB0cmFuc21pc3Npb24gKERUWCkgb3IgbG9zdCBw
YWNrZXQpPC90PgorPHQ+MS4uLjI1MTogICAgTGVuZ3RoIG9mIHRoZSBmcmFtZSBpbiBieXRlczwv
dD4KKzx0PjI1Mi4uLjI1NTogIEEgc2Vjb25kIGJ5dGUgaXMgbmVlZGVkLiBUaGUgdG90YWwgbGVu
Z3RoIGlzIChzZWNvbmRfYnl0ZSo0KStmaXJzdF9ieXRlPC90PgorPC9saXN0PgorPC90PgorCis8
dD4KK1RoZSBzcGVjaWFsIGxlbmd0aCAwIGluZGljYXRlcyB0aGF0IG5vIGZyYW1lIGlzIGF2YWls
YWJsZSwgZWl0aGVyIGJlY2F1c2UgaXQKKyB3YXMgZHJvcHBlZCBkdXJpbmcgdHJhbnNtaXNzaW9u
IGJ5IHNvbWUgaW50ZXJtZWRpYXJ5IG9yIGJlY2F1c2UgdGhlIGVuY29kZXIKKyBjaG9zZSBub3Qg
dG8gdHJhbnNtaXQgaXQuCitBbnkgT3B1cyBmcmFtZSBpbiBhbnkgbW9kZSBNQVkgaGF2ZSBhIGxl
bmd0aCBvZiAwLgorPC90PgorCis8dD4KK1RoZSBtYXhpbXVtIHJlcHJlc2VudGFibGUgbGVuZ3Ro
IGlzIDI1NSo0KzI1NT0xMjc1Jm5ic3A7Ynl0ZXMuCitGb3IgMjAmbmJzcDttcyBmcmFtZXMsIHRo
aXMgcmVwcmVzZW50cyBhIGJpdHJhdGUgb2YgNTEwJm5ic3A7a2Ivcywgd2hpY2ggaXMKKyBhcHBy
b3hpbWF0ZWx5IHRoZSBoaWdoZXN0IHVzZWZ1bCByYXRlIGZvciBsb3NzaWx5IGNvbXByZXNzZWQg
ZnVsbGJhbmQgc3RlcmVvCisgbXVzaWMuCitCZXlvbmQgdGhpcyBwb2ludCwgbG9zc2xlc3MgY29k
ZWNzIGFyZSBtb3JlIGFwcHJvcHJpYXRlLgorSXQgaXMgYWxzbyByb3VnaGx5IHRoZSBtYXhpbXVt
IHVzZWZ1bCByYXRlIG9mIHRoZSBNRENUIGxheWVyLCBhcyBzaG9ydGx5CisgdGhlcmVhZnRlciBx
dWFsaXR5IG5vIGxvbmdlciBpbXByb3ZlcyB3aXRoIGFkZGl0aW9uYWwgYml0cyBkdWUgdG8gbGlt
aXRhdGlvbnMKKyBvbiB0aGUgY29kZWJvb2sgc2l6ZXMuCis8L3Q+CisKKzx0IGFuY2hvcj0iUjIi
PgorTm8gbGVuZ3RoIGlzIHRyYW5zbWl0dGVkIGZvciB0aGUgbGFzdCBmcmFtZSBpbiBhIFZCUiBw
YWNrZXQsIG9yIGZvciBhbnkgb2YgdGhlCisgZnJhbWVzIGluIGEgQ0JSIHBhY2tldCwgYXMgaXQg
Y2FuIGJlIGluZmVycmVkIGZyb20gdGhlIHRvdGFsIHNpemUgb2YgdGhlCisgcGFja2V0IGFuZCB0
aGUgc2l6ZSBvZiBhbGwgb3RoZXIgZGF0YSBpbiB0aGUgcGFja2V0LgorSG93ZXZlciwgdGhlIGxl
bmd0aCBvZiBhbnkgaW5kaXZpZHVhbCBmcmFtZSBNVVNUIE5PVCBleGNlZWQKKyAxMjc1Jm5ic3A7
Ynl0ZXMmbmJzcDtbUjJdLCB0byBhbGxvdyBmb3IgcmVwYWNrZXRpemF0aW9uIGJ5IGdhdGV3YXlz
LAorIGNvbmZlcmVuY2UgYnJpZGdlcywgb3Igb3RoZXIgc29mdHdhcmUuCis8L3Q+Cis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIHRpdGxlPSJDb2RlIDA6IE9uZSBGcmFtZSBpbiB0aGUgUGFja2V0Ij4K
KworPHQ+CitGb3IgY29kZSZuYnNwOzAgcGFja2V0cywgdGhlIFRPQyBieXRlIGlzIGltbWVkaWF0
ZWx5IGZvbGxvd2VkIGJ5IE4tMSZuYnNwO2J5dGVzCisgb2YgY29tcHJlc3NlZCBkYXRhIGZvciBh
IHNpbmdsZSBmcmFtZSAod2hlcmUgTiBpcyB0aGUgc2l6ZSBvZiB0aGUgcGFja2V0KSwKKyBhcyBp
bGx1c3RyYXRlZCBpbiA8eHJlZiB0YXJnZXQ9ImNvZGUwX3BhY2tldCIvPi4KKzwvdD4KKzxmaWd1
cmUgYW5jaG9yPSJjb2RlMF9wYWNrZXQiIHRpdGxlPSJBIENvZGUgMCBQYWNrZXQiIGFsaWduPSJj
ZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAg
ICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAy
IDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAg
MQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSsKK3wgY29uZmlnICB8c3wwfDB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgICAgICAgICAgQ29t
cHJlc3NlZCBmcmFtZSAxIChOLTEgYnl0ZXMpLi4uICAgICAgICAgIDoKKzogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC9zZWN0aW9uPgorCis8
c2VjdGlvbiB0aXRsZT0iQ29kZSAxOiBUd28gRnJhbWVzIGluIHRoZSBQYWNrZXQsIEVhY2ggd2l0
aCBFcXVhbCBDb21wcmVzc2VkIFNpemUiPgorPHQgYW5jaG9yPSJSMyI+CitGb3IgY29kZSAxIHBh
Y2tldHMsIHRoZSBUT0MgYnl0ZSBpcyBpbW1lZGlhdGVseSBmb2xsb3dlZCBieSB0aGUKKyAoTi0x
KS8yJm5ic3A7Ynl0ZXMgb2YgY29tcHJlc3NlZCBkYXRhIGZvciB0aGUgZmlyc3QgZnJhbWUsIGZv
bGxvd2VkIGJ5CisgKE4tMSkvMiZuYnNwO2J5dGVzIG9mIGNvbXByZXNzZWQgZGF0YSBmb3IgdGhl
IHNlY29uZCBmcmFtZSwgYXMgaWxsdXN0cmF0ZWQgaW4KKyA8eHJlZiB0YXJnZXQ9ImNvZGUxX3Bh
Y2tldCIvPi4KK1RoZSBudW1iZXIgb2YgcGF5bG9hZCBieXRlcyBhdmFpbGFibGUgZm9yIGNvbXBy
ZXNzZWQgZGF0YSwgTi0xLCBNVVNUIGJlIGV2ZW4KKyBmb3IgYWxsIGNvZGUgMSBwYWNrZXRzJm5i
c3A7W1IzXS4KKzwvdD4KKzxmaWd1cmUgYW5jaG9yPSJjb2RlMV9wYWNrZXQiIHRpdGxlPSJBIENv
ZGUgMSBQYWNrZXQiIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFb
Q0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAg
ICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAw
IDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgY29uZmlnICB8c3wwfDF8ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0r
LSstKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOgorfCAg
ICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDEgKChOLTEpLzIgYnl0ZXMpLi4uICAgICAgICAg
ICAgIHwKKzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgQ29tcHJl
c3NlZCBmcmFtZSAyICgoTi0xKS8yIGJ5dGVzKS4uLiAgICAgICAgICAgICB8Cis6ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArLSstKy0rLSstKy0rLSstKwor
fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3Jr
PgorPC9maWd1cmU+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJDb2RlIDI6IFR3byBG
cmFtZXMgaW4gdGhlIFBhY2tldCwgd2l0aCBEaWZmZXJlbnQgQ29tcHJlc3NlZCBTaXplcyI+Cis8
dCBhbmNob3I9IlI0Ij4KK0ZvciBjb2RlIDIgcGFja2V0cywgdGhlIFRPQyBieXRlIGlzIGZvbGxv
d2VkIGJ5IGEgb25lLSBvciB0d28tYnl0ZSBzZXF1ZW5jZQorIGluZGljYXRpbmcgdGhlIGxlbmd0
aCBvZiB0aGUgZmlyc3QgZnJhbWUgKG1hcmtlZCBOMSBpbiA8eHJlZiB0YXJnZXQ9J2NvZGUyX3Bh
Y2tldCcvPiksCisgZm9sbG93ZWQgYnkgTjEgYnl0ZXMgb2YgY29tcHJlc3NlZCBkYXRhIGZvciB0
aGUgZmlyc3QgZnJhbWUuCitUaGUgcmVtYWluaW5nIE4tTjEtMiBvciBOLU4xLTMmbmJzcDtieXRl
cyBhcmUgdGhlIGNvbXByZXNzZWQgZGF0YSBmb3IgdGhlCisgc2Vjb25kIGZyYW1lLgorVGhpcyBp
cyBpbGx1c3RyYXRlZCBpbiA8eHJlZiB0YXJnZXQ9ImNvZGUyX3BhY2tldCIvPi4KK0EgY29kZSAy
IHBhY2tldCBNVVNUIGNvbnRhaW4gZW5vdWdoIGJ5dGVzIHRvIHJlcHJlc2VudCBhIHZhbGlkIGxl
bmd0aC4KK0ZvciBleGFtcGxlLCBhIDEtYnl0ZSBjb2RlIDIgcGFja2V0IGlzIGFsd2F5cyBpbnZh
bGlkLCBhbmQgYSAyLWJ5dGUgY29kZSAyCisgcGFja2V0IHdob3NlIHNlY29uZCBieXRlIGlzIGlu
IHRoZSByYW5nZSAyNTIuLi4yNTUgaXMgYWxzbyBpbnZhbGlkLgorVGhlIGxlbmd0aCBvZiB0aGUg
Zmlyc3QgZnJhbWUsIE4xLCBNVVNUIGFsc28gYmUgbm8gbGFyZ2VyIHRoYW4gdGhlIHNpemUgb2Yg
dGhlCisgcGF5bG9hZCByZW1haW5pbmcgYWZ0ZXIgZGVjb2RpbmcgdGhhdCBsZW5ndGggZm9yIGFs
bCBjb2RlIDIgcGFja2V0cyZuYnNwO1tSNF0uCitUaGlzIG1ha2VzLCBmb3IgZXhhbXBsZSwgYSAy
LWJ5dGUgY29kZSAyIHBhY2tldCB3aXRoIGEgc2Vjb25kIGJ5dGUgaW4gdGhlIHJhbmdlCisgMS4u
LjI1MSBpbnZhbGlkIGFzIHdlbGwgKHRoZSBvbmx5IHZhbGlkIDItYnl0ZSBjb2RlIDIgcGFja2V0
IGlzIG9uZSB3aGVyZSB0aGUKKyBsZW5ndGggb2YgYm90aCBmcmFtZXMgaXMgemVybykuCis8L3Q+
Cis8ZmlndXJlIGFuY2hvcj0iY29kZTJfcGFja2V0IiB0aXRsZT0iQSBDb2RlIDIgUGFja2V0IiBh
bGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAg
ICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMK
KyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3
IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rCit8IGNvbmZpZyAgfHN8MXwwfCBOMSAoMS0yIGJ5dGVzKTogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICBD
b21wcmVzc2VkIGZyYW1lIDEgKE4xIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICB8Cis6ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
KworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBm
cmFtZSAyLi4uICAgICAgICAgICAgICAgICAgICAgOgorOiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRp
dGxlPSJDb2RlIDM6IEEgU2lnbmFsZWQgTnVtYmVyIG9mIEZyYW1lcyBpbiB0aGUgUGFja2V0Ij4K
Kzx0IGFuY2hvcj0iUjUiPgorQ29kZSAzIHBhY2tldHMgc2lnbmFsIHRoZSBudW1iZXIgb2YgZnJh
bWVzLCBhcyB3ZWxsIGFzIGFkZGl0aW9uYWwKKyBwYWRkaW5nLCBjYWxsZWQgIk9wdXMgcGFkZGlu
ZyIgdG8gaW5kaWNhdGUgdGhhdCB0aGlzIHBhZGRpbmcgaXMgYWRkZWQgYXQgdGhlCisgT3B1cyBs
YXllciwgcmF0aGVyIHRoYW4gYXQgdGhlIHRyYW5zcG9ydCBsYXllci4KK0NvZGUgMyBwYWNrZXRz
IE1VU1QgaGF2ZSBhdCBsZWFzdCAyIGJ5dGVzJm5ic3A7W1I2LFI3XS4KK1RoZSBUT0MgYnl0ZSBp
cyBmb2xsb3dlZCBieSBhIGJ5dGUgZW5jb2RpbmcgdGhlIG51bWJlciBvZiBmcmFtZXMgaW4gdGhl
IHBhY2tldAorIGluIGJpdHMgMiB0byA3IChtYXJrZWQgIk0iIGluIDx4cmVmIHRhcmdldD0nZnJh
bWVfY291bnRfYnl0ZScvPiksIHdpdGggYml0IDEgaW5kaWNhdGluZyB3aGV0aGVyCisgb3Igbm90
IE9wdXMgcGFkZGluZyBpcyBpbnNlcnRlZCAobWFya2VkICJwIiBpbiA8eHJlZiB0YXJnZXQ9J2Zy
YW1lX2NvdW50X2J5dGUnLz4pLCBhbmQgYml0IDAKKyBpbmRpY2F0aW5nIFZCUiAobWFya2VkICJ2
IiBpbiA8eHJlZiB0YXJnZXQ9J2ZyYW1lX2NvdW50X2J5dGUnLz4pLgorTSBNVVNUIE5PVCBiZSB6
ZXJvLCBhbmQgdGhlIGF1ZGlvIGR1cmF0aW9uIGNvbnRhaW5lZCB3aXRoaW4gYSBwYWNrZXQgTVVT
VCBOT1QKKyBleGNlZWQgMTIwJm5ic3A7bXMmbmJzcDtbUjVdLgorVGhpcyBsaW1pdHMgdGhlIG1h
eGltdW0gZnJhbWUgY291bnQgZm9yIGFueSBmcmFtZSBzaXplIHRvIDQ4IChmb3IgMi41Jm5ic3A7
bXMKKyBmcmFtZXMpLCB3aXRoIGxvd2VyIGxpbWl0cyBmb3IgbG9uZ2VyIGZyYW1lIHNpemVzLgor
PHhyZWYgdGFyZ2V0PSJmcmFtZV9jb3VudF9ieXRlIi8+IGlsbHVzdHJhdGVzIHRoZSBsYXlvdXQg
b2YgdGhlIGZyYW1lIGNvdW50CisgYnl0ZS4KKzwvdD4KKzxmaWd1cmUgYW5jaG9yPSJmcmFtZV9j
b3VudF9ieXRlIiB0aXRsZT0iVGhlIGZyYW1lIGNvdW50IGJ5dGUiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCisgMAorIDAgMSAyIDMgNCA1IDYgNworKy0rLSstKy0rLSstKy0r
LSsKK3x2fHB8ICAgICBNICAgICB8CisrLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgor
PC9maWd1cmU+Cis8dD4KK1doZW4gT3B1cyBwYWRkaW5nIGlzIHVzZWQsIHRoZSBudW1iZXIgb2Yg
Ynl0ZXMgb2YgcGFkZGluZyBpcyBlbmNvZGVkIGluIHRoZQorIGJ5dGVzIGZvbGxvd2luZyB0aGUg
ZnJhbWUgY291bnQgYnl0ZS4KK1ZhbHVlcyBmcm9tIDAuLi4yNTQgaW5kaWNhdGUgdGhhdCAwLi4u
MjU0Jm5ic3A7Ynl0ZXMgb2YgcGFkZGluZyBhcmUgaW5jbHVkZWQsCisgaW4gYWRkaXRpb24gdG8g
dGhlIGJ5dGUocykgdXNlZCB0byBpbmRpY2F0ZSB0aGUgc2l6ZSBvZiB0aGUgcGFkZGluZy4KK0lm
IHRoZSB2YWx1ZSBpcyAyNTUsIHRoZW4gdGhlIHNpemUgb2YgdGhlIGFkZGl0aW9uYWwgcGFkZGlu
ZyBpcyAyNTQmbmJzcDtieXRlcywKKyBwbHVzIHRoZSBwYWRkaW5nIHZhbHVlIGVuY29kZWQgaW4g
dGhlIG5leHQgYnl0ZS4KK1RoZXJlIE1VU1QgYmUgYXQgbGVhc3Qgb25lIG1vcmUgYnl0ZSBpbiB0
aGUgcGFja2V0IGluIHRoaXMgY2FzZSZuYnNwO1tSNixSN10uCitUaGUgYWRkaXRpb25hbCBwYWRk
aW5nIGJ5dGVzIGFwcGVhciBhdCB0aGUgZW5kIG9mIHRoZSBwYWNrZXQsIGFuZCBNVVNUIGJlIHNl
dAorIHRvIHplcm8gYnkgdGhlIGVuY29kZXIgdG8gYXZvaWQgY3JlYXRpbmcgYSBjb3ZlcnQgY2hh
bm5lbC4KK1RoZSBkZWNvZGVyIE1VU1QgYWNjZXB0IGFueSB2YWx1ZSBmb3IgdGhlIHBhZGRpbmcg
Ynl0ZXMsIGhvd2V2ZXIuCis8L3Q+Cis8dD4KK0FsdGhvdWdoIHRoaXMgZW5jb2RpbmcgcHJvdmlk
ZXMgbXVsdGlwbGUgd2F5cyB0byBpbmRpY2F0ZSBhIGdpdmVuIG51bWJlciBvZgorIHBhZGRpbmcg
Ynl0ZXMsIGVhY2ggdXNlcyBhIGRpZmZlcmVudCBudW1iZXIgb2YgYnl0ZXMgdG8gaW5kaWNhdGUg
dGhlIHBhZGRpbmcKKyBzaXplLCBhbmQgdGh1cyB3aWxsIGluY3JlYXNlIHRoZSB0b3RhbCBwYWNr
ZXQgc2l6ZSBieSBhIGRpZmZlcmVudCBhbW91bnQuCitGb3IgZXhhbXBsZSwgdG8gYWRkIDI1NSBi
eXRlcyB0byBhIHBhY2tldCwgc2V0IHRoZSBwYWRkaW5nIGJpdCwgcCwgdG8gMSwgaW5zZXJ0Cisg
YSBzaW5nbGUgYnl0ZSBhZnRlciB0aGUgZnJhbWUgY291bnQgYnl0ZSB3aXRoIGEgdmFsdWUgb2Yg
MjU0LCBhbmQgYXBwZW5kIDI1NAorIHBhZGRpbmcgYnl0ZXMgd2l0aCB0aGUgdmFsdWUgemVybyB0
byB0aGUgZW5kIG9mIHRoZSBwYWNrZXQuCitUbyBhZGQgMjU2IGJ5dGVzIHRvIGEgcGFja2V0LCBz
ZXQgdGhlIHBhZGRpbmcgYml0IHRvIDEsIGluc2VydCB0d28gYnl0ZXMgYWZ0ZXIKKyB0aGUgZnJh
bWUgY291bnQgYnl0ZSB3aXRoIHRoZSB2YWx1ZXMgMjU1IGFuZCAwLCByZXNwZWN0aXZlbHksIGFu
ZCBhcHBlbmQgMjU0CisgcGFkZGluZyBieXRlcyB3aXRoIHRoZSB2YWx1ZSB6ZXJvIHRvIHRoZSBl
bmQgb2YgdGhlIHBhY2tldC4KK0J5IHVzaW5nIHRoZSB2YWx1ZSAyNTUgbXVsdGlwbGUgdGltZXMs
IGl0IGlzIHBvc3NpYmxlIHRvIGNyZWF0ZSBhIHBhY2tldCBvZiBhbnkKKyBzcGVjaWZpYywgZGVz
aXJlZCBzaXplLgorTGV0IFAgYmUgdGhlIG51bWJlciBvZiBoZWFkZXIgYnl0ZXMgdXNlZCB0byBp
bmRpY2F0ZSB0aGUgcGFkZGluZyBzaXplIHBsdXMgdGhlCisgbnVtYmVyIG9mIHBhZGRpbmcgYnl0
ZXMgdGhlbXNlbHZlcyAoaS5lLiwgUCBpcyB0aGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIGFkZGVk
CisgdG8gdGhlIHBhY2tldCkuCitUaGVuIFAgTVVTVCBiZSBubyBtb3JlIHRoYW4gTi0yJm5ic3A7
W1I2LFI3XS4KKzwvdD4KKzx0IGFuY2hvcj0iUjYiPgorSW4gdGhlIENCUiBjYXNlLCBsZXQgUj1O
LTItUCBiZSB0aGUgbnVtYmVyIG9mIGJ5dGVzIHJlbWFpbmluZyBpbiB0aGUgcGFja2V0CisgYWZ0
ZXIgc3VidHJhY3RpbmcgdGhlIChvcHRpb25hbCkgcGFkZGluZy4KK1RoZW4gdGhlIGNvbXByZXNz
ZWQgbGVuZ3RoIG9mIGVhY2ggZnJhbWUgaW4gYnl0ZXMgaXMgZXF1YWwgdG8gUi9NLgorVGhlIHZh
bHVlIFIgTVVTVCBiZSBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIG11bHRpcGxlIG9mIE0mbmJzcDtb
UjZdLgorVGhlIGNvbXByZXNzZWQgZGF0YSBmb3IgYWxsIE0gZnJhbWVzIGZvbGxvd3MsIGVhY2gg
b2Ygc2l6ZQorIFIvTSZuYnNwO2J5dGVzLCBhcyBpbGx1c3RyYXRlZCBpbiA8eHJlZiB0YXJnZXQ9
ImNvZGUzY2JyX3BhY2tldCIvPi4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9ImNvZGUzY2JyX3Bh
Y2tldCIgdGl0bGU9IkEgQ0JSIENvZGUgMyBQYWNrZXQiIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAg
ICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkg
MCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wg
Y29uZmlnICB8c3wxfDF8MHxwfCAgICAgTSAgICAgfCAgUGFkZGluZyBsZW5ndGggKE9wdGlvbmFs
KSAgICA6CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICBDb21wcmVzc2VkIGZy
YW1lIDEgKFIvTSBieXRlcykuLi4gICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsK
K3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8Cis6ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAyIChSL00gYnl0ZXMp
Li4uICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC4uLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICBDb21wcmVz
c2VkIGZyYW1lIE0gKFIvTSBieXRlcykuLi4gICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSsKKzogICAgICAgICAgICAgICAgICBPcHVzIFBhZGRpbmcgKE9wdGlvbmFsKS4uLiAgICAg
ICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0
IGFuY2hvcj0iUjciPgorSW4gdGhlIFZCUiBjYXNlLCB0aGUgKG9wdGlvbmFsKSBwYWRkaW5nIGxl
bmd0aCBpcyBmb2xsb3dlZCBieSBNLTEgZnJhbWUKKyBsZW5ndGhzIChpbmRpY2F0ZWQgYnkgIk4x
IiB0byAiTltNLTFdIiBpbiA8eHJlZiB0YXJnZXQ9J2NvZGUzdmJyX3BhY2tldCcvPiksIGVhY2gg
ZW5jb2RlZCBpbiBhCisgb25lLSBvciB0d28tYnl0ZSBzZXF1ZW5jZSBhcyBkZXNjcmliZWQgYWJv
dmUuCitUaGUgcGFja2V0IE1VU1QgY29udGFpbiBlbm91Z2ggZGF0YSBmb3IgdGhlIE0tMSBsZW5n
dGhzIGFmdGVyIHJlbW92aW5nIHRoZQorIChvcHRpb25hbCkgcGFkZGluZywgYW5kIHRoZSBzdW0g
b2YgdGhlc2UgbGVuZ3RocyBNVVNUIGJlIG5vIGxhcmdlciB0aGFuIHRoZQorIG51bWJlciBvZiBi
eXRlcyByZW1haW5pbmcgaW4gdGhlIHBhY2tldCBhZnRlciBkZWNvZGluZyB0aGVtJm5ic3A7W1I3
XS4KK1RoZSBjb21wcmVzc2VkIGRhdGEgZm9yIGFsbCBNIGZyYW1lcyBmb2xsb3dzLCBlYWNoIGZy
YW1lIGNvbnNpc3Rpbmcgb2YgdGhlCisgaW5kaWNhdGVkIG51bWJlciBvZiBieXRlcywgd2l0aCB0
aGUgZmluYWwgZnJhbWUgY29uc3VtaW5nIGFueSByZW1haW5pbmcgYnl0ZXMKKyBiZWZvcmUgdGhl
IGZpbmFsIHBhZGRpbmcsIGFzIGlsbHVzdHJhdGVkIGluIDx4cmVmIHRhcmdldD0iY29kZTNjYnJf
cGFja2V0Ii8+LgorVGhlIG51bWJlciBvZiBoZWFkZXIgYnl0ZXMgKFRPQyBieXRlLCBmcmFtZSBj
b3VudCBieXRlLCBwYWRkaW5nIGxlbmd0aCBieXRlcywKKyBhbmQgZnJhbWUgbGVuZ3RoIGJ5dGVz
KSwgcGx1cyB0aGUgc2lnbmFsZWQgbGVuZ3RoIG9mIHRoZSBmaXJzdCBNLTEgZnJhbWVzIHRoZW1z
ZWx2ZXMsCisgcGx1cyB0aGUgc2lnbmFsZWQgbGVuZ3RoIG9mIHRoZSBwYWRkaW5nIE1VU1QgYmUg
bm8gbGFyZ2VyIHRoYW4gTiwgdGhlIHRvdGFsIHNpemUgb2YgdGhlCisgcGFja2V0LgorPC90Pgor
Cis8ZmlndXJlIGFuY2hvcj0iY29kZTN2YnJfcGFja2V0IiB0aXRsZT0iQSBWQlIgQ29kZSAzIFBh
Y2tldCIgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsK
KyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAg
ICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMg
NCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxzfDF8MXwxfHB8ICAgICBNICAg
ICB8IFBhZGRpbmcgbGVuZ3RoIChPcHRpb25hbCkgICAgIDoKKystKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCis6IE4xICgxLTIg
Ynl0ZXMpOiBOMiAoMS0yIGJ5dGVzKTogICAgIC4uLiAgICAgICA6ICAgICBOW00tMV0gICAgfAor
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxIChO
MSBieXRlcykuLi4gICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fAorOiAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMiAoTjIgYnl0ZXMpLi4uICAgICAg
ICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAuLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Cit8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAgICAgQ29tcHJlc3Nl
ZCBmcmFtZSBNLi4uICAgICAgICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCis6
ICAgICAgICAgICAgICAgICAgT3B1cyBQYWRkaW5nIChPcHRpb25hbCkuLi4gICAgICAgICAgICAg
ICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC9zZWN0aW9uPgor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImV4YW1wbGVzIiB0aXRsZT0iRXhhbXBsZXMi
PgorPHQ+CitTaW1wbGVzdCBjYXNlLCBvbmUgTkIgbW9ubyAyMCZuYnNwO21zIFNJTEsgZnJhbWU6
Cis8L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSdmcmFtaW5nX2V4YW1wbGVfMSc+Cis8YXJ0d29yaz48
IVtDREFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAg
ICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5
IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAxICAgIHwwfDB8MHwgICAg
ICAgICAgICAgICBjb21wcmVzc2VkIGRhdGEuLi4gICAgICAgICAgICAgIDoKKystKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitUd28gRkIgbW9ubyA1Jm5ic3A7bXMgQ0VM
VCBmcmFtZXMgb2YgdGhlIHNhbWUgY29tcHJlc3NlZCBzaXplOgorPC90PgorCis8ZmlndXJlIGFu
Y2hvcj0nZnJhbWluZ19leGFtcGxlXzInPgorPGFydHdvcms+PCFbQ0RBVEFbCisgMCAgICAgICAg
ICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAg
MSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5
IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSsKK3wgICAyOSAgICB8MHwwfDF8ICAgICAgICAgICAgICAgY29tcHJlc3Nl
ZCBkYXRhLi4uICAgICAgICAgICAgICA6CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1
cmU+CisKKzx0PgorVHdvIEZCIG1vbm8gMjAmbmJzcDttcyBIeWJyaWQgZnJhbWVzIG9mIGRpZmZl
cmVudCBjb21wcmVzc2VkIHNpemU6Cis8L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSdmcmFtaW5nX2V4
YW1wbGVfMyc+Cis8YXJ0d29yaz48IVtDREFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAg
ICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDgg
OSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwor
fCAgIDE1ICAgIHwwfDF8MXwxfDB8ICAgICAyICAgICB8ICAgICAgTjEgICAgICAgfCAgICAgICAg
ICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSsgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAgICAgICAgICBjb21wcmVzc2VkIGRh
dGEuLi4gICAgICAgICAgICAgICAgICAgICAgOgorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwv
ZmlndXJlPgorCis8dD4KK0ZvdXIgRkIgc3RlcmVvIDIwJm5ic3A7bXMgQ0VMVCBmcmFtZXMgb2Yg
dGhlIHNhbWUgY29tcHJlc3NlZCBzaXplOgorPC90PgorCis8ZmlndXJlIGFuY2hvcj0nZnJhbWlu
Z19leGFtcGxlXzQnPgorPGFydHdvcms+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAx
ICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYg
NyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSsKK3wgICAzMSAgICB8MXwxfDF8MHwwfCAgICAgNCAgICAgfCAgICAgIGNvbXByZXNzZWQgZGF0
YS4uLiAgICAgICA6CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIGFuY2hvcj0ibWFsZm9ybWVkLXBhY2tldHMiIHRpdGxlPSJSZWNlaXZp
bmcgTWFsZm9ybWVkIFBhY2tldHMiPgorPHQ+CitBIHJlY2VpdmVyIE1VU1QgTk9UIHByb2Nlc3Mg
cGFja2V0cyB3aGljaCB2aW9sYXRlIGFueSBvZiB0aGUgcnVsZXMgYWJvdmUgYXMKKyBub3JtYWwg
T3B1cyBwYWNrZXRzLgorVGhleSBhcmUgcmVzZXJ2ZWQgZm9yIGZ1dHVyZSBhcHBsaWNhdGlvbnMs
IHN1Y2ggYXMgaW4tYmFuZCBoZWFkZXJzIChjb250YWluaW5nCisgbWV0YWRhdGEsIGV0Yy4pLgor
UGFja2V0cyB3aGljaCB2aW9sYXRlIHRoZXNlIGNvbnN0cmFpbnRzIG1heSBjYXVzZSBpbXBsZW1l
bnRhdGlvbnMgb2YKKyA8c3Bhbnggc3R5bGU9ImVtcGgiPnRoaXM8L3NwYW54PiBzcGVjaWZpY2F0
aW9uIHRvIHRyZWF0IHRoZW0gYXMgbWFsZm9ybWVkLCBhbmQKKyBkaXNjYXJkIHRoZW0uCis8L3Q+
Cis8dD4KK1RoZXNlIGNvbnN0cmFpbnRzIGFyZSBzdW1tYXJpemVkIGhlcmUgZm9yIHJlZmVyZW5j
ZToKKzxsaXN0IHN0eWxlPSJmb3JtYXQgW1IlZF0iPgorPHQ+UGFja2V0cyBhcmUgYXQgbGVhc3Qg
b25lIGJ5dGUuPC90PgorPHQ+Tm8gaW1wbGljaXQgZnJhbWUgbGVuZ3RoIGlzIGxhcmdlciB0aGFu
IDEyNzUgYnl0ZXMuPC90PgorPHQ+Q29kZSAxIHBhY2tldHMgaGF2ZSBhbiBvZGQgdG90YWwgbGVu
Z3RoLCBOLCBzbyB0aGF0IChOLTEpLzIgaXMgYW4KKyBpbnRlZ2VyLjwvdD4KKzx0PkNvZGUgMiBw
YWNrZXRzIGhhdmUgZW5vdWdoIGJ5dGVzIGFmdGVyIHRoZSBUT0MgZm9yIGEgdmFsaWQgZnJhbWUK
KyBsZW5ndGgsIGFuZCB0aGF0IGxlbmd0aCBpcyBubyBsYXJnZXIgdGhhbiB0aGUgbnVtYmVyIG9m
IGJ5dGVzIHJlbWFpbmluZyBpbiB0aGUKKyBwYWNrZXQuPC90PgorPHQ+Q29kZSAzIHBhY2tldHMg
Y29udGFpbiBhdCBsZWFzdCBvbmUgZnJhbWUsIGJ1dCBubyBtb3JlIHRoYW4gMTIwJm5ic3A7bXMK
KyBvZiBhdWRpbyB0b3RhbC48L3Q+Cis8dD5UaGUgbGVuZ3RoIG9mIGEgQ0JSIGNvZGUgMyBwYWNr
ZXQsIE4sIGlzIGF0IGxlYXN0IHR3byBieXRlcywgdGhlIG51bWJlciBvZgorIGJ5dGVzIGFkZGVk
IHRvIGluZGljYXRlIHRoZSBwYWRkaW5nIHNpemUgcGx1cyB0aGUgdHJhaWxpbmcgcGFkZGluZyBi
eXRlcworIHRoZW1zZWx2ZXMsIFAsIGlzIG5vIG1vcmUgdGhhbiBOLTIsIGFuZCB0aGUgZnJhbWUg
Y291bnQsIE0sIHNhdGlzZmllcworIHRoZSBjb25zdHJhaW50IHRoYXQgKE4tMi1QKSBpcyBhIG5v
bi1uZWdhdGl2ZSBpbnRlZ2VyIG11bHRpcGxlIG9mIE0uPC90PgorPHQ+VkJSIGNvZGUgMyBwYWNr
ZXRzIGFyZSBsYXJnZSBlbm91Z2ggdG8gY29udGFpbiBhbGwgdGhlIGhlYWRlciBieXRlcyAoVE9D
CisgYnl0ZSwgZnJhbWUgY291bnQgYnl0ZSwgYW55IHBhZGRpbmcgbGVuZ3RoIGJ5dGVzLCBhbmQg
YW55IGZyYW1lIGxlbmd0aCBieXRlcyksCisgcGx1cyB0aGUgbGVuZ3RoIG9mIHRoZSBmaXJzdCBN
LTEgZnJhbWVzLCBwbHVzIGFueSB0cmFpbGluZyBwYWRkaW5nIGJ5dGVzLjwvdD4KKzwvbGlzdD4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iT3B1cyBE
ZWNvZGVyIj4KKzx0PgorVGhlIE9wdXMgZGVjb2RlciBjb25zaXN0cyBvZiB0d28gbWFpbiBibG9j
a3M6IHRoZSBTSUxLIGRlY29kZXIgYW5kIHRoZSBDRUxUCisgZGVjb2Rlci4KK0F0IGFueSBnaXZl
biB0aW1lLCBvbmUgb3IgYm90aCBvZiB0aGUgU0lMSyBhbmQgQ0VMVCBkZWNvZGVycyBtYXkgYmUg
YWN0aXZlLgorVGhlIG91dHB1dCBvZiB0aGUgT3B1cyBkZWNvZGUgaXMgdGhlIHN1bSBvZiB0aGUg
b3V0cHV0cyBmcm9tIHRoZSBTSUxLIGFuZCBDRUxUCisgZGVjb2RlcnMgd2l0aCBwcm9wZXIgc2Ft
cGxlIHJhdGUgY29udmVyc2lvbiBhbmQgZGVsYXkgY29tcGVuc2F0aW9uIG9uIHRoZSBTSUxLCisg
c2lkZSwgYW5kIG9wdGlvbmFsIGRlY2ltYXRpb24gKHdoZW4gZGVjb2RpbmcgdG8gc2FtcGxlIHJh
dGVzIGxlc3MgdGhhbgorIDQ4Jm5ic3A7a0h6KSBvbiB0aGUgQ0VMVCBzaWRlLCBhcyBpbGx1c3Ry
YXRlZCBpbiB0aGUgYmxvY2sgZGlhZ3JhbSBiZWxvdy4KKzwvdD4KKzxmaWd1cmU+Cis8YXJ0d29y
az4KKzwhW0NEQVRBWworICAgICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0rICAgICst
LS0tLS0tLS0tLS0rCisgICAgICAgICAgICAgICAgICAgICAgICAgfCAgU0lMSyAgIHwgICAgfCAg
IFNhbXBsZSAgIHwKKyAgICAgICAgICAgICAgICAgICAgICArLT58IERlY29kZXIgfC0tLT58ICAg
IFJhdGUgICAgfC0tLS0rCitCaXQtICAgICstLS0tLS0tLS0rICAgfCAgfCAgICAgICAgIHwgICAg
fCBDb252ZXJzaW9uIHwgICAgdgorc3RyZWFtICB8ICBSYW5nZSAgfC0tLSsgICstLS0tLS0tLS0r
ICAgICstLS0tLS0tLS0tLS0rICAvLS0tXCAgQXVkaW8KKy0tLS0tLS0+fCBEZWNvZGVyIHwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCArIHwtLS0tLS0+CisgICAgICAgIHwg
ICAgICAgICB8LS0tKyAgKy0tLS0tLS0tLSsgICAgKy0tLS0tLS0tLS0tLSsgIFwtLS0vCisgICAg
ICAgICstLS0tLS0tLS0rICAgfCAgfCAgQ0VMVCAgIHwgICAgfCBEZWNpbWF0aW9uIHwgICAgXgor
ICAgICAgICAgICAgICAgICAgICAgICstPnwgRGVjb2RlciB8LS0tPnwgKE9wdGlvbmFsKSB8LS0t
LSsKKyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfCAgICB8ICAgICAgICAgICAg
fAorICAgICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0rICAgICstLS0tLS0tLS0tLS0r
CitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8c2VjdGlvbiBhbmNob3I9InJhbmdlLWRl
Y29kZXIiIHRpdGxlPSJSYW5nZSBEZWNvZGVyIj4KKzx0PgorT3B1cyB1c2VzIGFuIGVudHJvcHkg
Y29kZXIgYmFzZWQgb24gcmFuZ2UgY29kaW5nIDx4cmVmIHRhcmdldD0icmFuZ2UtY29kaW5nIj48
L3hyZWY+Cis8eHJlZiB0YXJnZXQ9Ik1hcnRpbjc5Ij48L3hyZWY+LAord2hpY2ggaXMgaXRzZWxm
IGEgcmVkaXNjb3Zlcnkgb2YgdGhlIEZJRk8gYXJpdGhtZXRpYyBjb2RlIGludHJvZHVjZWQgYnkg
PHhyZWYgdGFyZ2V0PSJjb2RpbmctdGhlc2lzIj48L3hyZWY+LgorSXQgaXMgdmVyeSBzaW1pbGFy
IHRvIGFyaXRobWV0aWMgZW5jb2RpbmcsIGV4Y2VwdCB0aGF0IGVuY29kaW5nIGlzIGRvbmUgd2l0
aAorZGlnaXRzIGluIGFueSBiYXNlIGluc3RlYWQgb2Ygd2l0aCBiaXRzLAorc28gaXQgaXMgZmFz
dGVyIHdoZW4gdXNpbmcgbGFyZ2VyIGJhc2VzIChpLmUuLCBhIGJ5dGUpLiBBbGwgb2YgdGhlCitj
YWxjdWxhdGlvbnMgaW4gdGhlIHJhbmdlIGNvZGVyIG11c3QgdXNlIGJpdC1leGFjdCBpbnRlZ2Vy
IGFyaXRobWV0aWMuCis8L3Q+Cis8dD4KK1N5bWJvbHMgbWF5IGFsc28gYmUgY29kZWQgYXMgInJh
dyBiaXRzIiBwYWNrZWQgZGlyZWN0bHkgaW50byB0aGUgYml0c3RyZWFtLAorIGJ5cGFzc2luZyB0
aGUgcmFuZ2UgY29kZXIuCitUaGVzZSBhcmUgcGFja2VkIGJhY2t3YXJkcyBzdGFydGluZyBhdCB0
aGUgZW5kIG9mIHRoZSBmcmFtZSwgYXMgaWxsdXN0cmF0ZWQgaW4KKyA8eHJlZiB0YXJnZXQ9InJh
d2JpdHMtZXhhbXBsZSIvPi4KK1RoaXMgcmVkdWNlcyBjb21wbGV4aXR5IGFuZCBtYWtlcyB0aGUg
c3RyZWFtIG1vcmUgcmVzaWxpZW50IHRvIGJpdCBlcnJvcnMsIGFzCisgY29ycnVwdGlvbiBpbiB0
aGUgcmF3IGJpdHMgd2lsbCBub3QgZGVzeW5jaHJvbml6ZSB0aGUgZGVjb2RpbmcgcHJvY2Vzcywg
dW5saWtlCisgY29ycnVwdGlvbiBpbiB0aGUgaW5wdXQgdG8gdGhlIHJhbmdlIGRlY29kZXIuCitS
YXcgYml0cyBhcmUgb25seSB1c2VkIGluIHRoZSBDRUxUIGxheWVyLgorPC90PgorCis8ZmlndXJl
IGFuY2hvcj0icmF3Yml0cy1leGFtcGxlIiB0aXRsZT0iSWxsdXN0cmF0aXZlIGV4YW1wbGUgb2Yg
cGFja2luZyByYW5nZQorIGNvZGVyIGFuZCByYXcgYml0cyBkYXRhIj4KKzxhcnR3b3JrIGFsaWdu
PSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAg
ICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMg
NCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8IFJhbmdlIGNv
ZGVyIGRhdGEgKHBhY2tlZCBNU0IgdG8gTFNCKSAtPiAgICAgICAgICAgICAgICAgICAgICAgOgor
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICsKKzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA6CisrICAgICArLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworOiAgICAgfCA8LSBCb3VuZGFyeSBvY2N1cnMg
YXQgYW4gYXJiaXRyYXJ5IGJpdCBwb3NpdGlvbiAgICAgICAgIDoKKystKy0rLSsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCis6ICAgICAg
ICAgICAgICAgICAgICAgICAgICA8LSBSYXcgYml0cyBkYXRhIChwYWNrZWQgTFNCIHRvIE1TQikg
fAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8dD4KK0VhY2ggc3ltYm9s
IGNvZGVkIGJ5IHRoZSByYW5nZSBjb2RlciBpcyBkcmF3biBmcm9tIGEgZmluaXRlIGFscGhhYmV0
IGFuZCBjb2RlZAorIGluIGEgc2VwYXJhdGUgImNvbnRleHQiLCB3aGljaCBkZXNjcmliZXMgdGhl
IHNpemUgb2YgdGhlIGFscGhhYmV0IGFuZCB0aGUKKyByZWxhdGl2ZSBmcmVxdWVuY3kgb2YgZWFj
aCBzeW1ib2wgaW4gdGhhdCBhbHBoYWJldC4KKzwvdD4KKzx0PgorU3VwcG9zZSB0aGVyZSBpcyBh
IGNvbnRleHQgd2l0aCBuIHN5bWJvbHMsIGlkZW50aWZpZWQgd2l0aCBhbiBpbmRleCB0aGF0IHJh
bmdlcworIGZyb20gMCB0byBuLTEuCitUaGUgcGFyYW1ldGVycyBuZWVkZWQgdG8gZW5jb2RlIG9y
IGRlY29kZSBzeW1ib2wgayBpbiB0aGlzIGNvbnRleHQgYXJlCisgcmVwcmVzZW50ZWQgYnkgYSB0
aHJlZS10dXBsZSAoZmxba10sJm5ic3A7Zmhba10sJm5ic3A7ZnQpLCB3aXRoCisgMCZuYnNwOyZs
dDs9Jm5ic3A7Zmxba10mbmJzcDsmbHQ7Jm5ic3A7Zmhba10mbmJzcDsmbHQ7PSZuYnNwO2Z0Jm5i
c3A7Jmx0Oz0mbmJzcDs2NTUzNS4KK1RoZSB2YWx1ZXMgb2YgdGhpcyB0dXBsZSBhcmUgZGVyaXZl
ZCBmcm9tIHRoZSBwcm9iYWJpbGl0eSBtb2RlbCBmb3IgdGhlCisgc3ltYm9sLCByZXByZXNlbnRl
ZCBieSB0cmFkaXRpb25hbCAiZnJlcXVlbmN5IGNvdW50cyIuCitCZWNhdXNlIE9wdXMgdXNlcyBz
dGF0aWMgY29udGV4dHMgdGhlc2UgYXJlIG5vdCB1cGRhdGVkIGFzIHN5bWJvbHMgYXJlIGRlY29k
ZWQuCitMZXQgZltpXSBiZSB0aGUgZnJlcXVlbmN5IG9mIHN5bWJvbCBpLgorVGhlbiB0aGUgdGhy
ZWUtdHVwbGUgY29ycmVzcG9uZGluZyB0byBzeW1ib2wgayBpcyBnaXZlbiBieQorPC90PgorPGZp
Z3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
ICAgICAgICBrLTEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG4tMQorICAgICAg
ICBfXyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fCitmbFtrXSA9IFwgIGZb
aV0sICBmaFtrXSA9IGZsW2tdICsgZltrXSwgIGZ0ID0gXCAgZltpXQorICAgICAgICAvXyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9fCisgICAgICAgIGk9MCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaT0wCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx0
PgorVGhlIHJhbmdlIGRlY29kZXIgZXh0cmFjdHMgdGhlIHN5bWJvbHMgYW5kIGludGVnZXJzIGVu
Y29kZWQgdXNpbmcgdGhlIHJhbmdlCisgZW5jb2RlciBpbiA8eHJlZiB0YXJnZXQ9InJhbmdlLWVu
Y29kZXIiLz4uCitUaGUgcmFuZ2UgZGVjb2RlciBtYWludGFpbnMgYW4gaW50ZXJuYWwgc3RhdGUg
dmVjdG9yIGNvbXBvc2VkIG9mIHRoZSB0d28tdHVwbGUKKyAodmFsLCZuYnNwO3JuZyksIHJlcHJl
c2VudGluZyB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSBoaWdoIGVuZCBvZiB0aGUKKyBjdXJy
ZW50IHJhbmdlIGFuZCB0aGUgYWN0dWFsIGNvZGVkIHZhbHVlLCBtaW51cyBvbmUsIGFuZCB0aGUg
c2l6ZSBvZiB0aGUKKyBjdXJyZW50IHJhbmdlLCByZXNwZWN0aXZlbHkuCitCb3RoIHZhbCBhbmQg
cm5nIGFyZSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlciB2YWx1ZXMuCis8L3Q+CisKKzxzZWN0aW9u
IGFuY2hvcj0icmFuZ2UtZGVjb2Rlci1pbml0IiB0aXRsZT0iUmFuZ2UgRGVjb2RlciBJbml0aWFs
aXphdGlvbiI+Cis8dD4KK0xldCBiMCBiZSB0aGUgZmlyc3QgaW5wdXQgYnl0ZSAob3IgemVybyBp
ZiB0aGVyZSBhcmUgbm8gYnl0ZXMgaW4gdGhpcyBPcHVzCisgZnJhbWUpLgorVGhlIGRlY29kZXIg
aW5pdGlhbGl6ZXMgcm5nIHRvIDEyOCBhbmQgaW5pdGlhbGl6ZXMgdmFsIHRvCisgKDEyNyZuYnNw
Oy0mbmJzcDsoYjAmZ3Q7Jmd0OzEpKSwgd2hlcmUgKGIwJmd0OyZndDsxKSBpcyB0aGUgdG9wIDcg
Yml0cyBvZiB0aGUKKyBmaXJzdCBpbnB1dCBieXRlLgorSXQgc2F2ZXMgdGhlIHJlbWFpbmluZyBi
aXQsIChiMCZhbXA7MSksIGZvciB1c2UgaW4gdGhlIHJlbm9ybWFsaXphdGlvbgorIHByb2NlZHVy
ZSBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJyYW5nZS1kZWNvZGVyLXJlbm9ybSIvPiwgd2hp
Y2ggdGhlCisgZGVjb2RlciBpbnZva2VzIGltbWVkaWF0ZWx5IGFmdGVyIGluaXRpYWxpemF0aW9u
IHRvIHJlYWQgYWRkaXRpb25hbCBiaXRzIGFuZAorIGVzdGFibGlzaCB0aGUgaW52YXJpYW50IHRo
YXQgcm5nJm5ic3A7Jmd0OyZuYnNwOzIqKjIzLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlv
biBhbmNob3I9ImRlY29kaW5nLXN5bWJvbHMiIHRpdGxlPSJEZWNvZGluZyBTeW1ib2xzIj4KKzx0
PgorRGVjb2RpbmcgYSBzeW1ib2wgaXMgYSB0d28tc3RlcCBwcm9jZXNzLgorVGhlIGZpcnN0IHN0
ZXAgZGV0ZXJtaW5lcyBhIDE2LWJpdCB1bnNpZ25lZCB2YWx1ZSBmcywgd2hpY2ggbGllcyB3aXRo
aW4gdGhlCisgcmFuZ2Ugb2Ygc29tZSBzeW1ib2wgaW4gdGhlIGN1cnJlbnQgY29udGV4dC4KK1Ro
ZSBzZWNvbmQgc3RlcCB1cGRhdGVzIHRoZSByYW5nZSBkZWNvZGVyIHN0YXRlIHdpdGggdGhlIHRo
cmVlLXR1cGxlCisgKGZsW2tdLCZuYnNwO2ZoW2tdLCZuYnNwO2Z0KSBjb3JyZXNwb25kaW5nIHRv
IHRoYXQgc3ltYm9sLgorPC90PgorPHQ+CitUaGUgZmlyc3Qgc3RlcCBpcyBpbXBsZW1lbnRlZCBi
eSBlY19kZWNvZGUoKSAoZW50ZGVjLmMpLCB3aGljaCBjb21wdXRlcworPGZpZ3VyZSBhbGlnbj0i
Y2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAg
ICAgdmFsCitmcyA9IGZ0IC0gbWluKC0tLS0tLSArIDEsIGZ0KSAuCisgICAgICAgICAgICAgIHJu
Zy9mdAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGUgZGl2aXNpb25zIGhlcmUgYXJlIGlu
dGVnZXIgZGl2aXNpb24uCis8L3Q+Cis8dD4KK1RoZSBkZWNvZGVyIHRoZW4gaWRlbnRpZmllcyB0
aGUgc3ltYm9sIGluIHRoZSBjdXJyZW50IGNvbnRleHQgY29ycmVzcG9uZGluZyB0bworIGZzOyBp
LmUuLCB0aGUgdmFsdWUgb2YgayB3aG9zZSB0aHJlZS10dXBsZSAoZmxba10sJm5ic3A7Zmhba10s
Jm5ic3A7ZnQpCisgc2F0aXNmaWVzIGZsW2tdJm5ic3A7Jmx0Oz0mbmJzcDtmcyZuYnNwOyZsdDsm
bmJzcDtmaFtrXS4KK0l0IHVzZXMgdGhpcyB0dXBsZSB0byB1cGRhdGUgdmFsIGFjY29yZGluZyB0
bworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NE
QVRBWworICAgICAgICAgICAgcm5nCit2YWwgPSB2YWwgLSAtLS0gKiAoZnQgLSBmaFtrXSkgLgor
ICAgICAgICAgICAgZnQKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorSWYgZmxba10gaXMgZ3Jl
YXRlciB0aGFuIHplcm8sIHRoZW4gdGhlIGRlY29kZXIgdXBkYXRlcyBybmcgdXNpbmcKKzxmaWd1
cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAg
ICAgIHJuZworcm5nID0gLS0tICogKGZoW2tdIC0gZmxba10pIC4KKyAgICAgIGZ0CitdXT48L2Fy
dHdvcms+Cis8L2ZpZ3VyZT4KK090aGVyd2lzZSwgaXQgdXBkYXRlcyBybmcgdXNpbmcKKzxmaWd1
cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAg
ICAgICAgICAgIHJuZworcm5nID0gcm5nIC0gLS0tICogKGZ0IC0gZmhba10pIC4KKyAgICAgICAg
ICAgIGZ0CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKzx0PgorVXNpbmcgYSBzcGVj
aWFsIGNhc2UgZm9yIHRoZSBmaXJzdCBzeW1ib2wgKHJhdGhlciB0aGFuIHRoZSBsYXN0IHN5bWJv
bCwgYXMgaXMKKyBjb21tb25seSBkb25lIGluIG90aGVyIGFyaXRobWV0aWMgY29kZXJzKSBlbnN1
cmVzIHRoYXQgYWxsIHRoZSB0cnVuY2F0aW9uCisgZXJyb3IgZnJvbSB0aGUgZmluaXRlIHByZWNp
c2lvbiBhcml0aG1ldGljIGFjY3VtdWxhdGVzIGluIHN5bWJvbCAwLgorVGhpcyBtYWtlcyB0aGUg
Y29zdCBvZiBjb2RpbmcgYSAwIHNsaWdodGx5IHNtYWxsZXIsIG9uIGF2ZXJhZ2UsIHRoYW4gaXRz
CisgZXN0aW1hdGVkIHByb2JhYmlsaXR5IGluZGljYXRlcyBhbmQgbWFrZXMgdGhlIGNvc3Qgb2Yg
Y29kaW5nIGFueSBvdGhlciBzeW1ib2wKKyBzbGlnaHRseSBsYXJnZXIuCitXaGVuIGNvbnRleHRz
IGFyZSBkZXNpZ25lZCBzbyB0aGF0IDAgaXMgdGhlIG1vc3QgcHJvYmFibGUgc3ltYm9sLCB3aGlj
aCBpcworIG9mdGVuIHRoZSBjYXNlLCB0aGlzIHN0cmF0ZWd5IG1pbmltaXplcyB0aGUgaW5lZmZp
Y2llbmN5IGludHJvZHVjZWQgYnkgdGhlCisgZmluaXRlIHByZWNpc2lvbi4KK0l0IGFsc28gbWFr
ZXMgc29tZSBvZiB0aGUgc3BlY2lhbC1jYXNlIGRlY29kaW5nIHJvdXRpbmVzIGluCisgPHhyZWYg
dGFyZ2V0PSJkZWNvZGluZy1hbHRlcm5hdGUiLz4gcGFydGljdWxhcmx5IHNpbXBsZS4KKzwvdD4K
Kzx0PgorQWZ0ZXIgdGhlIHVwZGF0ZXMsIGltcGxlbWVudGVkIGJ5IGVjX2RlY191cGRhdGUoKSAo
ZW50ZGVjLmMpLCB0aGUgZGVjb2RlcgorIG5vcm1hbGl6ZXMgdGhlIHJhbmdlIHVzaW5nIHRoZSBw
cm9jZWR1cmUgaW4gdGhlIG5leHQgc2VjdGlvbiwgYW5kIHJldHVybnMgdGhlCisgaW5kZXggay4K
KzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJyYW5nZS1kZWNvZGVyLXJlbm9ybSIgdGl0bGU9IlJl
bm9ybWFsaXphdGlvbiI+Cis8dD4KK1RvIG5vcm1hbGl6ZSB0aGUgcmFuZ2UsIHRoZSBkZWNvZGVy
IHJlcGVhdHMgdGhlIGZvbGxvd2luZyBwcm9jZXNzLCBpbXBsZW1lbnRlZAorIGJ5IGVjX2RlY19u
b3JtYWxpemUoKSAoZW50ZGVjLmMpLCB1bnRpbCBybmcmbmJzcDsmZ3Q7Jm5ic3A7MioqMjMuCitJ
ZiBybmcgaXMgYWxyZWFkeSBncmVhdGVyIHRoYW4gMioqMjMsIHRoZSBlbnRpcmUgcHJvY2VzcyBp
cyBza2lwcGVkLgorRmlyc3QsIGl0IHNldHMgcm5nIHRvIChybmcmbHQ7Jmx0OzgpLgorVGhlbiBp
dCByZWFkcyB0aGUgbmV4dCBieXRlIG9mIHRoZSBPcHVzIGZyYW1lIGFuZCBmb3JtcyBhbiA4LWJp
dCB2YWx1ZSBzeW0sCisgdXNpbmcgdGhlIGxlZnQtb3ZlciBiaXQgYnVmZmVyZWQgZnJvbSB0aGUg
cHJldmlvdXMgYnl0ZSBhcyB0aGUgaGlnaCBiaXQKKyBhbmQgdGhlIHRvcCA3IGJpdHMgb2YgdGhl
IGJ5dGUganVzdCByZWFkIGFzIHRoZSBvdGhlciA3IGJpdHMgb2Ygc3ltLgorVGhlIHJlbWFpbmlu
ZyBiaXQgaW4gdGhlIGJ5dGUganVzdCByZWFkIGlzIGJ1ZmZlcmVkIGZvciB1c2UgaW4gdGhlIG5l
eHQKKyBpdGVyYXRpb24uCitJZiBubyBtb3JlIGlucHV0IGJ5dGVzIHJlbWFpbiwgaXQgdXNlcyB6
ZXJvIGJpdHMgaW5zdGVhZC4KK1NlZSA8eHJlZiB0YXJnZXQ9InJhbmdlLWRlY29kZXItaW5pdCIv
PiBmb3IgdGhlIGluaXRpYWxpemF0aW9uIHVzZWQgdG8gcHJvY2VzcworIHRoZSBmaXJzdCBieXRl
LgorVGhlbiwgaXQgc2V0cworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWdu
PSJjZW50ZXIiPjwhW0NEQVRBWwordmFsID0gKCh2YWw8PDgpICsgKDI1NS1zeW0pKSAmIDB4N0ZG
RkZGRkYgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8dD4KK0l0IGlzIG5vcm1h
bCBhbmQgZXhwZWN0ZWQgdGhhdCB0aGUgcmFuZ2UgZGVjb2RlciB3aWxsIHJlYWQgc2V2ZXJhbCBi
eXRlcworIGludG8gdGhlIHJhdyBiaXRzIGRhdGEgKGlmIGFueSkgYXQgdGhlIGVuZCBvZiB0aGUg
cGFja2V0IGJ5IHRoZSB0aW1lIHRoZSBmcmFtZQorIGlzIGNvbXBsZXRlbHkgZGVjb2RlZCwgYXMg
aWxsdXN0cmF0ZWQgaW4gPHhyZWYgdGFyZ2V0PSJmaW5hbGl6ZS1leGFtcGxlIi8+LgorVGhpcyBz
YW1lIGRhdGEgTVVTVCBhbHNvIGJlIHJldHVybmVkIGFzIHJhdyBiaXRzIHdoZW4gcmVxdWVzdGVk
LgorVGhlIGVuY29kZXIgaXMgZXhwZWN0ZWQgdG8gdGVybWluYXRlIHRoZSBzdHJlYW0gaW4gc3Vj
aCBhIHdheSB0aGF0IHRoZSBkZWNvZGVyCisgd2lsbCBkZWNvZGUgdGhlIGludGVuZGVkIHZhbHVl
cyByZWdhcmRsZXNzIG9mIHRoZSBkYXRhIGNvbnRhaW5lZCBpbiB0aGUgcmF3CisgYml0cy4KKzx4
cmVmIHRhcmdldD0iZW5jb2Rlci1maW5hbGl6aW5nIi8+IGRlc2NyaWJlcyBhIHByb2NlZHVyZSBm
b3IgZG9pbmcgdGhpcy4KK0lmIHRoZSByYW5nZSBkZWNvZGVyIGNvbnN1bWVzIGFsbCBvZiB0aGUg
Ynl0ZXMgYmVsb25naW5nIHRvIHRoZSBjdXJyZW50IGZyYW1lLAorIGl0IE1VU1QgY29udGludWUg
dG8gdXNlIHplcm8gd2hlbiBhbnkgZnVydGhlciBpbnB1dCBieXRlcyBhcmUgcmVxdWlyZWQsIGV2
ZW4KKyBpZiB0aGVyZSBpcyBhZGRpdGlvbmFsIGRhdGEgaW4gdGhlIGN1cnJlbnQgcGFja2V0IGZy
b20gcGFkZGluZyBvciBvdGhlcgorIGZyYW1lcy4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9ImZp
bmFsaXplLWV4YW1wbGUiIHRpdGxlPSJJbGx1c3RyYXRpdmUgZXhhbXBsZSBvZiByYXcgYml0cwor
IG92ZXJsYXBwaW5nIHJhbmdlIGNvZGVyIGRhdGEiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCisgbiAgICAgICAgICAgICAgbisxICAgICAgICAgICAgIG4rMiAgICAgICAgICAg
ICBuKzMKKyAwIDEgMiAzIDQgNSA2IDcgMCAxIDIgMyA0IDUgNiA3IDAgMSAyIDMgNCA1IDYgNyAw
IDEgMiAzIDQgNSA2IDcKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rCis6ICAgICB8IDwtLS0tLS0tLS0tLSBPdmVybGFwIHJl
Z2lvbiAtLS0tLS0tLS0tLS0+IHwgICAgICAgICAgICAgOgorKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKKyAgICAgIF4gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgorICAgICAgfCAgIEVuZCBv
ZiBkYXRhIGJ1ZmZlcmVkIGJ5IHRoZSByYW5nZSBjb2RlciB8CisuLi4tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgIHwKKyAgICAgIHwgRW5kIG9m
IGRhdGEgY29uc3VtZWQgYnkgcmF3IGJpdHMKKyAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLi4uCitdXT48L2FydHdvcms+Cis8L2Zp
Z3VyZT4KKzwvc2VjdGlvbj4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJkZWNvZGlu
Zy1hbHRlcm5hdGUiIHRpdGxlPSJBbHRlcm5hdGUgRGVjb2RpbmcgTWV0aG9kcyI+Cis8dD4KK1Ro
ZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gdXNlcyB0aHJlZSBhZGRpdGlvbmFsIGRlY29kaW5n
IG1ldGhvZHMgdGhhdCBhcmUKKyBleGFjdGx5IGVxdWl2YWxlbnQgdG8gdGhlIGFib3ZlLCBidXQg
bWFrZSBhc3N1bXB0aW9ucyBhbmQgc2ltcGxpZmljYXRpb25zIHRoYXQKKyBhbGxvdyBmb3IgYSBt
b3JlIGVmZmljaWVudCBpbXBsZW1lbnRhdGlvbi4KKzwvdD4KKzxzZWN0aW9uIGFuY2hvcj0iZWNf
ZGVjb2RlX2JpbiIgdGl0bGU9ImVjX2RlY29kZV9iaW4oKSI+Cis8dD4KK1RoZSBmaXJzdCBpcyBl
Y19kZWNvZGVfYmluKCkgKGVudGRlYy5jKSwgZGVmaW5lZCB1c2luZyB0aGUgcGFyYW1ldGVyIGZ0
YgorIGluc3RlYWQgb2YgZnQuCitJdCBpcyBtYXRoZW1hdGljYWxseSBlcXVpdmFsZW50IHRvIGNh
bGxpbmcgZWNfZGVjb2RlKCkgd2l0aAorIGZ0Jm5ic3A7PSZuYnNwOygxJmx0OyZsdDtmdGIpLCBi
dXQgYXZvaWRzIG9uZSBvZiB0aGUgZGl2aXNpb25zLgorPC90PgorPC9zZWN0aW9uPgorPHNlY3Rp
b24gYW5jaG9yPSJlY19kZWNfYml0X2xvZ3AiIHRpdGxlPSJlY19kZWNfYml0X2xvZ3AoKSI+Cis8
dD4KK1RoZSBuZXh0IGlzIGVjX2RlY19iaXRfbG9ncCgpIChlbnRkZWMuYyksIHdoaWNoIGRlY29k
ZXMgYSBzaW5nbGUgYmluYXJ5IHN5bWJvbCwKKyByZXBsYWNpbmcgYm90aCB0aGUgZWNfZGVjb2Rl
KCkgYW5kIGVjX2RlY191cGRhdGUoKSBzdGVwcy4KK1RoZSBjb250ZXh0IGlzIGRlc2NyaWJlZCBi
eSBhIHNpbmdsZSBwYXJhbWV0ZXIsIGxvZ3AsIHdoaWNoIGlzIHRoZSBhYnNvbHV0ZQorIHZhbHVl
IG9mIHRoZSBiYXNlLTIgbG9nYXJpdGhtIG9mIHRoZSBwcm9iYWJpbGl0eSBvZiBhICIxIi4KK0l0
IGlzIG1hdGhlbWF0aWNhbGx5IGVxdWl2YWxlbnQgdG8gY2FsbGluZyBlY19kZWNvZGUoKSB3aXRo
CisgZnQmbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2xvZ3ApLCBmb2xsb3dlZCBieSBlY19kZWNfdXBk
YXRlKCkgd2l0aAorIHRoZSAzLXR1cGxlIChmbFtrXSZuYnNwOz0mbmJzcDswLAorIGZoW2tdJm5i
c3A7PSZuYnNwOygxJmx0OyZsdDtsb2dwKSZuYnNwOy0mbmJzcDsxLAorIGZ0Jm5ic3A7PSZuYnNw
OygxJmx0OyZsdDtsb2dwKSkgaWYgdGhlIHJldHVybmVkIHZhbHVlCisgb2YgZnMgaXMgbGVzcyB0
aGFuICgxJmx0OyZsdDtsb2dwKSZuYnNwOy0mbmJzcDsxIChhICIwIiB3YXMgZGVjb2RlZCksIGFu
ZCB3aXRoCisgKGZsW2tdJm5ic3A7PSZuYnNwOygxJmx0OyZsdDtsb2dwKSZuYnNwOy0mbmJzcDsx
LAorIGZoW2tdJm5ic3A7PSZuYnNwO2Z0Jm5ic3A7PSZuYnNwOygxJmx0OyZsdDtsb2dwKSkgb3Ro
ZXJ3aXNlIChhICIxIiB3YXMKKyBkZWNvZGVkKS4KK1RoZSBpbXBsZW1lbnRhdGlvbiByZXF1aXJl
cyBubyBtdWx0aXBsaWNhdGlvbnMgb3IgZGl2aXNpb25zLgorPC90PgorPC9zZWN0aW9uPgorPHNl
Y3Rpb24gYW5jaG9yPSJlY19kZWNfaWNkZiIgdGl0bGU9ImVjX2RlY19pY2RmKCkiPgorPHQ+CitU
aGUgbGFzdCBpcyBlY19kZWNfaWNkZigpIChlbnRkZWMuYyksIHdoaWNoIGRlY29kZXMgYSBzaW5n
bGUgc3ltYm9sIHdpdGggYQorIHRhYmxlLWJhc2VkIGNvbnRleHQgb2YgdXAgdG8gOCBiaXRzLCBh
bHNvIHJlcGxhY2luZyBib3RoIHRoZSBlY19kZWNvZGUoKSBhbmQKKyBlY19kZWNfdXBkYXRlKCkg
c3RlcHMsIGFzIHdlbGwgYXMgdGhlIHNlYXJjaCBmb3IgdGhlIGRlY29kZWQgc3ltYm9sIGluIGJl
dHdlZW4uCitUaGUgY29udGV4dCBpcyBkZXNjcmliZWQgYnkgdHdvIHBhcmFtZXRlcnMsIGFuIGlj
ZGYKKyAoImludmVyc2UiIGN1bXVsYXRpdmUgZGlzdHJpYnV0aW9uIGZ1bmN0aW9uKSB0YWJsZSBh
bmQgZnRiLgorQXMgd2l0aCBlY19kZWNvZGVfYmluKCksICgxJmx0OyZsdDtmdGIpIGlzIGVxdWl2
YWxlbnQgdG8gZnQuCitpZGNmW2tdLCBvbiB0aGUgb3RoZXIgaGFuZCwgc3RvcmVzICgxJmx0OyZs
dDtmdGIpLWZoW2tdLCB3aGljaCBpcyBlcXVhbCB0bworICgxJmx0OyZsdDtmdGIpJm5ic3A7LSZu
YnNwO2ZsW2srMV0uCitmbFswXSBpcyBhc3N1bWVkIHRvIGJlIDAsIGFuZCB0aGUgdGFibGUgaXMg
dGVybWluYXRlZCBieSBhIHZhbHVlIG9mIDAgKHdoZXJlCisgZmhba10mbmJzcDs9PSZuYnNwO2Z0
KS4KKzwvdD4KKzx0PgorVGhlIGZ1bmN0aW9uIGlzIG1hdGhlbWF0aWNhbGx5IGVxdWl2YWxlbnQg
dG8gY2FsbGluZyBlY19kZWNvZGUoKSB3aXRoCisgZnQmbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2Z0
YiksIHVzaW5nIHRoZSByZXR1cm5lZCB2YWx1ZSBmcyB0byBzZWFyY2ggdGhlIHRhYmxlCisgZm9y
IHRoZSBmaXJzdCBlbnRyeSB3aGVyZSBmcyZuYnNwOyZsdDsmbmJzcDsoMSZsdDsmbHQ7ZnRiKS1p
Y2RmW2tdLCBhbmQKKyBjYWxsaW5nIGVjX2RlY191cGRhdGUoKSB3aXRoCisgZmxba10mbmJzcDs9
Jm5ic3A7KDEmbHQ7Jmx0O2Z0YikmbmJzcDstJm5ic3A7aWNkZltrLTFdIChvciAwCisgaWYgayZu
YnNwOz09Jm5ic3A7MCksIGZoW2tdJm5ic3A7PSZuYnNwOygxJmx0OyZsdDtmdGIpJm5ic3A7LSZu
YnNwO2lkY2Zba10sCisgYW5kIGZ0Jm5ic3A7PSZuYnNwOygxJmx0OyZsdDtmdGIpLgorQ29tYmlu
aW5nIHRoZSBzZWFyY2ggd2l0aCB0aGUgdXBkYXRlIGFsbG93cyB0aGUgZGl2aXNpb24gdG8gYmUg
cmVwbGFjZWQgYnkgYQorIHNlcmllcyBvZiBtdWx0aXBsaWNhdGlvbnMgKHdoaWNoIGFyZSB1c3Vh
bGx5IG11Y2ggY2hlYXBlciksIGFuZCB1c2luZyBhbgorIGludmVyc2UgQ0RGIGFsbG93cyB0aGUg
dXNlIG9mIGFuIGZ0YiBhcyBsYXJnZSBhcyA4IGluIGFuIDgtYml0IHRhYmxlIHdpdGhvdXQKKyBh
bnkgc3BlY2lhbCBjYXNlcy4KK1RoaXMgaXMgdGhlIHByaW1hcnkgaW50ZXJmYWNlIHdpdGggdGhl
IHJhbmdlIGRlY29kZXIgaW4gdGhlIFNJTEsgbGF5ZXIsIHRob3VnaAorIGl0IGlzIHVzZWQgaW4g
YSBmZXcgcGxhY2VzIGluIHRoZSBDRUxUIGxheWVyIGFzIHdlbGwuCis8L3Q+Cis8dD4KK0FsdGhv
dWdoIGljZGZba10gaXMgbW9yZSBjb252ZW5pZW50IGZvciB0aGUgY29kZSwgdGhlIGZyZXF1ZW5j
eSBjb3VudHMsIGZba10sCisgYXJlIGEgbW9yZSBuYXR1cmFsIHJlcHJlc2VudGF0aW9uIG9mIHRo
ZSBwcm9iYWJpbGl0eSBkaXN0cmlidXRpb24gZnVuY3Rpb24KKyAoUERGKSBmb3IgYSBnaXZlbiBz
eW1ib2wuCitUaGVyZWZvcmUgdGhpcyBkcmFmdCBsaXN0cyB0aGUgbGF0dGVyLCBub3QgdGhlIGZv
cm1lciwgd2hlbiBkZXNjcmliaW5nIHRoZQorIGNvbnRleHQgaW4gd2hpY2ggYSBzeW1ib2wgaXMg
Y29kZWQgYXMgYSBsaXN0LCBlLmcuLCB7NCwgNCwgNCwgNH0vMTYgZm9yIGEKKyB1bmlmb3JtIGNv
bnRleHQgd2l0aCBmb3VyIHBvc3NpYmxlIHZhbHVlcyBhbmQgZnQmbmJzcDs9Jm5ic3A7MTYuCitU
aGUgdmFsdWUgb2YgZnQgYWZ0ZXIgdGhlIHNsYXNoIGlzIGFsd2F5cyB0aGUgc3VtIG9mIHRoZSBl
bnRyaWVzIGluIHRoZSBQREYsCisgYnV0IGlzIGluY2x1ZGVkIGZvciBjb252ZW5pZW5jZS4KK0Nv
bnRleHRzIHdpdGggaWRlbnRpY2FsIHByb2JhYmlsaXRpZXMsIGZba10vZnQsIGJ1dCBkaWZmZXJl
bnQgdmFsdWVzIG9mIGZ0CisgKG9yIGVxdWl2YWxlbnRseSwgZnRiKSBhcmUgbm90IHRoZSBzYW1l
LCBhbmQgY2Fubm90LCBpbiBnZW5lcmFsLCBiZSB1c2VkIGluCisgcGxhY2Ugb2Ygb25lIGFub3Ro
ZXIuCitBbiBpY2RmIHRhYmxlIGlzIGFsc28gbm90IGNhcGFibGUgb2YgcmVwcmVzZW50aW5nIGEg
UERGIHdoZXJlIHRoZSBmaXJzdCBzeW1ib2wKKyBoYXMgMCBwcm9iYWJpbGl0eS4KK0luIHN1Y2gg
Y29udGV4dHMsIGVjX2RlY19pY2RmKCkgY2FuIGRlY29kZSB0aGUgc3ltYm9sIGJ5IHVzaW5nIGEg
dGFibGUgdGhhdAorIGRyb3BzIHRoZSBlbnRyaWVzIGZvciBhbnkgaW5pdGlhbCB6ZXJvLXByb2Jh
YmlsaXR5IHZhbHVlcyBhbmQgYWRkaW5nIHRoZQorIGNvbnN0YW50IG9mZnNldCBvZiB0aGUgZmly
c3QgdmFsdWUgd2l0aCBhIG5vbi16ZXJvIHByb2JhYmlsaXR5IHRvIGl0cyByZXR1cm4KKyB2YWx1
ZS4KKzwvdD4KKzwvc2VjdGlvbj4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJkZWNv
ZGluZy1iaXRzIiB0aXRsZT0iRGVjb2RpbmcgUmF3IEJpdHMiPgorPHQ+CitUaGUgcmF3IGJpdHMg
dXNlZCBieSB0aGUgQ0VMVCBsYXllciBhcmUgcGFja2VkIGF0IHRoZSBlbmQgb2YgdGhlIHBhY2tl
dCwgd2l0aAorIHRoZSBsZWFzdCBzaWduaWZpY2FudCBiaXQgb2YgdGhlIGZpcnN0IHZhbHVlIHBh
Y2tlZCBpbiB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQKKyBiaXQgb2YgdGhlIGxhc3QgYnl0ZSwgZmls
bGluZyB1cCB0byB0aGUgbW9zdCBzaWduaWZpY2FudCBiaXQgaW4gdGhlIGxhc3QgYnl0ZSwKKyBj
b250aW51aW5nIG9uIHRvIHRoZSBsZWFzdCBzaWduaWZpY2FudCBiaXQgb2YgdGhlIHBlbnVsdGlt
YXRlIGJ5dGUsIGFuZCBzbyBvbi4KK1RoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gcmVhZHMg
dGhlbSB1c2luZyBlY19kZWNfYml0cygpIChlbnRkZWMuYykuCitCZWNhdXNlIHRoZSByYW5nZSBk
ZWNvZGVyIG11c3QgcmVhZCBzZXZlcmFsIGJ5dGVzIGFoZWFkIGluIHRoZSBzdHJlYW0sIGFzCisg
ZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0icmFuZ2UtZGVjb2Rlci1yZW5vcm0iLz4sIHRoZSBp
bnB1dCBjb25zdW1lZCBieSB0aGUKKyByYXcgYml0cyBtYXkgb3ZlcmxhcCB3aXRoIHRoZSBpbnB1
dCBjb25zdW1lZCBieSB0aGUgcmFuZ2UgY29kZXIsIGFuZCBhIGRlY29kZXIKKyBNVVNUIGFsbG93
IHRoaXMuCitUaGUgZm9ybWF0IHNob3VsZCByZW5kZXIgaXQgaW1wb3NzaWJsZSB0byBhdHRlbXB0
IHRvIHJlYWQgbW9yZSByYXcgYml0cyB0aGFuCisgdGhlcmUgYXJlIGFjdHVhbCBiaXRzIGluIHRo
ZSBmcmFtZSwgdGhvdWdoIGEgZGVjb2RlciBtYXkgd2lzaCB0byBjaGVjayBmb3IKKyB0aGlzIGFu
ZCByZXBvcnQgYW4gZXJyb3IuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0i
ZWNfZGVjX3VpbnQiIHRpdGxlPSJEZWNvZGluZyBVbmlmb3JtbHkgRGlzdHJpYnV0ZWQgSW50ZWdl
cnMiPgorPHQ+CitUaGUgZnVuY3Rpb24gZWNfZGVjX3VpbnQoKSAoZW50ZGVjLmMpIGRlY29kZXMg
b25lIG9mIGZ0IGVxdWlwcm9iYWJsZSB2YWx1ZXMgaW4KKyB0aGUgcmFuZ2UgMCB0byAoZnQmbmJz
cDstJm5ic3A7MSksIGluY2x1c2l2ZSwgZWFjaCB3aXRoIGEgZnJlcXVlbmN5IG9mIDEsCisgd2hl
cmUgZnQgbWF5IGJlIGFzIGxhcmdlIGFzICgyKiozMiZuYnNwOy0mbmJzcDsxKS4KK0JlY2F1c2Ug
ZWNfZGVjb2RlKCkgaXMgbGltaXRlZCB0byBhIHRvdGFsIGZyZXF1ZW5jeSBvZiAoMioqMTYmbmJz
cDstJm5ic3A7MSksCisgaXQgc3BsaXRzIHVwIHRoZSB2YWx1ZSBpbnRvIGEgcmFuZ2UgY29kZWQg
c3ltYm9sIHJlcHJlc2VudGluZyB1cCB0byA4IG9mIHRoZQorIGhpZ2ggYml0cywgYW5kLCBpZiBu
ZWNlc3NhcnksIHJhdyBiaXRzIHJlcHJlc2VudGluZyB0aGUgcmVtYWluZGVyIG9mIHRoZQorIHZh
bHVlLgorVGhlIGxpbWl0IG9mIDggYml0cyBpbiB0aGUgcmFuZ2UgY29kZWQgc3ltYm9sIGlzIGEg
dHJhZGUtb2ZmIGJldHdlZW4KKyBpbXBsZW1lbnRhdGlvbiBjb21wbGV4aXR5LCBtb2RlbGluZyBl
cnJvciAoc2luY2UgdGhlIHN5bWJvbHMgbm8gbG9uZ2VyIHRydWx5CisgaGF2ZSBlcXVhbCBjb2Rp
bmcgY29zdCksIGFuZCByb3VuZGluZyBlcnJvciBpbnRyb2R1Y2VkIGJ5IHRoZSByYW5nZSBjb2Rl
cgorIGl0c2VsZiAod2hpY2ggZ2V0cyBsYXJnZXIgYXMgbW9yZSBiaXRzIGFyZSBpbmNsdWRlZCku
CitVc2luZyByYXcgYml0cyByZWR1Y2VzIHRoZSBtYXhpbXVtIG51bWJlciBvZiBkaXZpc2lvbnMg
cmVxdWlyZWQgaW4gdGhlIHdvcnN0CisgY2FzZSwgYnV0IG1lYW5zIHRoYXQgaXQgbWF5IGJlIHBv
c3NpYmxlIHRvIGRlY29kZSBhIHZhbHVlIG91dHNpZGUgdGhlIHJhbmdlCisgMCB0byAoZnQmbmJz
cDstJm5ic3A7MSksIGluY2x1c2l2ZS4KKzwvdD4KKworPHQ+CitlY19kZWNfdWludCgpIHRha2Vz
IGEgc2luZ2xlLCBwb3NpdGl2ZSBwYXJhbWV0ZXIsIGZ0LCB3aGljaCBpcyBub3QgbmVjZXNzYXJp
bHkKKyBhIHBvd2VyIG9mIHR3bywgYW5kIHJldHVybnMgYW4gaW50ZWdlciwgdCwgd2hvc2UgdmFs
dWUgbGllcyBiZXR3ZWVuIDAgYW5kCisgKGZ0Jm5ic3A7LSZuYnNwOzEpLCBpbmNsdXNpdmUuCitM
ZXQgZnRiJm5ic3A7PSZuYnNwO2lsb2coZnQmbmJzcDstJm5ic3A7MSksIGkuZS4sIHRoZSBudW1i
ZXIgb2YgYml0cyByZXF1aXJlZAorIHRvIHN0b3JlIChmdCZuYnNwOy0mbmJzcDsxKSBpbiB0d28n
cyBjb21wbGVtZW50IG5vdGF0aW9uLgorSWYgZnRiIGlzIDggb3IgbGVzcywgdGhlbiB0IGlzIGRl
Y29kZWQgd2l0aCB0Jm5ic3A7PSZuYnNwO2VjX2RlY29kZShmdCksIGFuZAorIHRoZSByYW5nZSBj
b2RlciBzdGF0ZSBpcyB1cGRhdGVkIHVzaW5nIHRoZSB0aHJlZS10dXBsZSAodCwgdCZuYnNwOysm
bmJzcDsxLAorIGZ0KS4KKzwvdD4KKzx0PgorSWYgZnRiIGlzIGdyZWF0ZXIgdGhhbiA4LCB0aGVu
IHRoZSB0b3AgOCBiaXRzIG9mIHQgYXJlIGRlY29kZWQgdXNpbmcKKzxmaWd1cmUgYWxpZ249ImNl
bnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3QgPSBlY19kZWNvZGUo
KChmdCAtIDEpID4+IChmdGIgLSA4KSkgKyAxKSAsCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4K
KyB0aGUgZGVjb2RlciBzdGF0ZSBpcyB1cGRhdGVkIHVzaW5nIHRoZSB0aHJlZS10dXBsZQorICh0
LCB0Jm5ic3A7KyZuYnNwOzEsCisgKChmdCZuYnNwOy0mbmJzcDsxKSZuYnNwOyZndDsmZ3Q7Jm5i
c3A7KGZ0YiZuYnNwOy0mbmJzcDs4KSkmbmJzcDsrJm5ic3A7MSksCisgYW5kIHRoZSByZW1haW5p
bmcgYml0cyBhcmUgZGVjb2RlZCBhcyByYXcgYml0cywgc2V0dGluZworPGZpZ3VyZSBhbGlnbj0i
Y2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwordCA9ICh0IDw8IChm
dGIgLSA4KSkgfCBlY19kZWNfYml0cyhmdGIgLSA4KSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KK0lmLCBhdCB0aGlzIHBvaW50LCB0ID49IGZ0LCB0aGVuIHRoZSBjdXJyZW50IGZyYW1lIGlz
IGNvcnJ1cHQuCitJbiB0aGF0IGNhc2UsIHRoZSBkZWNvZGVyIHNob3VsZCBhc3N1bWUgdGhlcmUg
aGFzIGJlZW4gYW4gZXJyb3IgaW4gdGhlIGNvZGluZywKKyBkZWNvZGluZywgb3IgdHJhbnNtaXNz
aW9uIGFuZCBTSE9VTEQgdGFrZSBtZWFzdXJlcyB0byBjb25jZWFsIHRoZQorIGVycm9yIGFuZC9v
ciByZXBvcnQgdG8gdGhlIGFwcGxpY2F0aW9uIHRoYXQgdGhlIGVycm9yIGhhcyBvY2N1cnJlZC4K
KzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImRlY29kZXItdGVsbCIgdGl0
bGU9IkN1cnJlbnQgQml0IFVzYWdlIj4KKzx0PgorVGhlIGJpdCBhbGxvY2F0aW9uIHJvdXRpbmVz
IGluIHRoZSBDRUxUIGRlY29kZXIgbmVlZCBhIGNvbnNlcnZhdGl2ZSB1cHBlciBib3VuZAorIG9u
IHRoZSBudW1iZXIgb2YgYml0cyB0aGF0IGhhdmUgYmVlbiB1c2VkIGZyb20gdGhlIGN1cnJlbnQg
ZnJhbWUgdGh1cyBmYXIsCisgaW5jbHVkaW5nIGJvdGggcmFuZ2UgY29kZXIgYml0cyBhbmQgcmF3
IGJpdHMuCitUaGlzIGRyaXZlcyBhbGxvY2F0aW9uIGRlY2lzaW9ucyB0aGF0IG11c3QgbWF0Y2gg
dGhvc2UgbWFkZSBpbiB0aGUgZW5jb2Rlci4KK1RoZSB1cHBlciBib3VuZCBpcyBjb21wdXRlZCBp
biB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIHRvIHdob2xlLWJpdAorIHByZWNpc2lvbiBi
eSB0aGUgZnVuY3Rpb24gZWNfdGVsbCgpIChlbnRjb2RlLmgpIGFuZCB0byBmcmFjdGlvbmFsIDEv
OHRoIGJpdAorIHByZWNpc2lvbiBieSB0aGUgZnVuY3Rpb24gZWNfdGVsbF9mcmFjKCkgKGVudGNv
ZGUuYykuCitMaWtlIGFsbCBvcGVyYXRpb25zIGluIHRoZSByYW5nZSBjb2RlciwgaXQgbXVzdCBi
ZSBpbXBsZW1lbnRlZCBpbiBhIGJpdC1leGFjdAorIG1hbm5lciwgYW5kIG11c3QgcHJvZHVjZSBl
eGFjdGx5IHRoZSBzYW1lIHZhbHVlIHJldHVybmVkIGJ5IHRoZSBzYW1lIGZ1bmN0aW9ucworIGlu
IHRoZSBlbmNvZGVyIGFmdGVyIGVuY29kaW5nIHRoZSBzYW1lIHN5bWJvbHMuCis8L3Q+Cis8dD4K
K2VjX3RlbGwoKSBpcyBndWFyYW50ZWVkIHRvIHJldHVybiBjZWlsKGVjX3RlbGxfZnJhYygpLzgu
MCkuCitJbiB2YXJpb3VzIHBsYWNlcyB0aGUgY29kZWMgd2lsbCBjaGVjayB0byBlbnN1cmUgdGhl
cmUgaXMgZW5vdWdoIHJvb20gdG8KKyBjb250YWluIGEgc3ltYm9sIGJlZm9yZSBhdHRlbXB0aW5n
IHRvIGRlY29kZSBpdC4KK0luIHByYWN0aWNlLCBhbHRob3VnaCB0aGUgbnVtYmVyIG9mIGJpdHMg
dXNlZCBzbyBmYXIgaXMgYW4gdXBwZXIgYm91bmQsCisgZGVjb2RpbmcgYSBzeW1ib2wgd2hvc2Ug
cHJvYmFiaWxpdHkgbW9kZWwgc3VnZ2VzdHMgaXQgaGFzIGEgd29yc3QtY2FzZSBjb3N0IG9mCisg
cCAxLzh0aCBiaXRzIG1heSBhY3R1YWxseSBhZHZhbmNlIHRoZSByZXR1cm4gdmFsdWUgb2YgZWNf
dGVsbF9mcmFjKCkgYnkKKyBwLTEsIHAsIG9yIHArMSAxLzh0aCBiaXRzLCBkdWUgdG8gYXBwcm94
aW1hdGlvbiBlcnJvciBpbiB0aGF0IHVwcGVyIGJvdW5kLAorIHRydW5jYXRpb24gZXJyb3IgaW4g
dGhlIHJhbmdlIGNvZGVyLCBhbmQgZm9yIGxhcmdlIHZhbHVlcyBvZiBmdCwgbW9kZWxpbmcKKyBl
cnJvciBpbiBlY19kZWNfdWludCgpLgorPC90PgorPHQ+CitIb3dldmVyLCB0aGlzIGVycm9yIGlz
IGJvdW5kZWQsIGFuZCBwZXJpb2RpYyBjYWxscyB0byBlY190ZWxsKCkgb3IKKyBlY190ZWxsX2Zy
YWMoKSBhdCBwcmVjaXNlbHkgZGVmaW5lZCBwb2ludHMgaW4gdGhlIGRlY29kaW5nIHByb2Nlc3Mg
cHJldmVudCBpdAorIGZyb20gYWNjdW11bGF0aW5nLgorRm9yIGEgcmFuZ2UgY29kZXIgc3ltYm9s
IHRoYXQgcmVxdWlyZXMgYSB3aG9sZSBudW1iZXIgb2YgYml0cyAoaS5lLiwKKyBmb3Igd2hpY2gg
ZnQvKGZoW2tdJm5ic3A7LSZuYnNwO2ZsW2tdKSBpcyBhIHBvd2VyIG9mIHR3byksIHdoZXJlIHRo
ZXJlIGFyZSBhdAorIGxlYXN0IHAgMS84dGggYml0cyBhdmFpbGFibGUsIGRlY29kaW5nIHRoZSBz
eW1ib2wgd2lsbCBuZXZlciBjYXVzZSBlY190ZWxsKCkgb3IKKyBlY190ZWxsX2ZyYWMoKSB0byBl
eGNlZWQgdGhlIHNpemUgb2YgdGhlIGZyYW1lICgiYnVzdCB0aGUgYnVkZ2V0IikuCitJbiB0aGlz
IGNhc2UgdGhlIHJldHVybiB2YWx1ZSBvZiBlY190ZWxsX2ZyYWMoKSB3aWxsIG9ubHkgYWR2YW5j
ZSBieSBtb3JlIHRoYW4KKyBwIDEvOHRoIGJpdHMgaWYgdGhlcmUgd2FzIGFuIGFkZGl0aW9uYWws
IGZyYWN0aW9uYWwgbnVtYmVyIG9mIGJpdHMgcmVtYWluaW5nLAorIGFuZCBpdCB3aWxsIG5ldmVy
IGFkdmFuY2UgYmV5b25kIHRoZSBuZXh0IHdob2xlLWJpdCBib3VuZGFyeSwgd2hpY2ggaXMgc2Fm
ZSwKKyBzaW5jZSBmcmFtZXMgYWx3YXlzIGNvbnRhaW4gYSB3aG9sZSBudW1iZXIgb2YgYml0cy4K
K0hvd2V2ZXIsIHdoZW4gcCBpcyBub3QgYSB3aG9sZSBudW1iZXIgb2YgYml0cywgYW4gZXh0cmEg
MS84dGggYml0IGlzIHJlcXVpcmVkCisgdG8gZW5zdXJlIHRoYXQgZGVjb2RpbmcgdGhlIHN5bWJv
bCB3aWxsIG5vdCBidXN0IHRoZSBidWRnZXQuCis8L3Q+Cis8dD4KK1RoZSByZWZlcmVuY2UgaW1w
bGVtZW50YXRpb24ga2VlcHMgdHJhY2sgb2YgdGhlIHRvdGFsIG51bWJlciBvZiB3aG9sZSBiaXRz
IHRoYXQKKyBoYXZlIGJlZW4gcHJvY2Vzc2VkIGJ5IHRoZSBkZWNvZGVyIHNvIGZhciBpbiB0aGUg
dmFyaWFibGUgbmJpdHNfdG90YWwsCisgaW5jbHVkaW5nIHRoZSAocG9zc2libHkgZnJhY3Rpb25h
bCkgbnVtYmVyIG9mIGJpdHMgdGhhdCBhcmUgY3VycmVudGx5CisgYnVmZmVyZWQsIGJ1dCBub3Qg
Y29uc3VtZWQsIGluc2lkZSB0aGUgcmFuZ2UgY29kZXIuCituYml0c190b3RhbCBpcyBpbml0aWFs
aXplZCB0byA5IGp1c3QgYmVmb3JlIHRoZSBpbml0aWFsIHJhbmdlIHJlbm9ybWFsaXphdGlvbgor
IHByb2Nlc3MgY29tcGxldGVzIChvciBlcXVpdmFsZW50bHksIGl0IGNhbiBiZSBpbml0aWFsaXpl
ZCB0byAzMyBhZnRlciB0aGUKKyBmaXJzdCByZW5vcm1hbGl6YXRpb24pLgorVGhlIGV4dHJhIHR3
byBiaXRzIG92ZXIgdGhlIGFjdHVhbCBhbW91bnQgYnVmZmVyZWQgYnkgdGhlIHJhbmdlIGNvZGVy
CisgZ3VhcmFudGVlcyB0aGF0IGl0IGlzIGFuIHVwcGVyIGJvdW5kIGFuZCB0aGF0IHRoZXJlIGlz
IGVub3VnaCByb29tIGZvciB0aGUKKyBlbmNvZGVyIHRvIHRlcm1pbmF0ZSB0aGUgc3RyZWFtLgor
RWFjaCBpdGVyYXRpb24gdGhyb3VnaCB0aGUgcmFuZ2UgY29kZXIncyByZW5vcm1hbGl6YXRpb24g
bG9vcCBpbmNyZWFzZXMKKyBuYml0c190b3RhbCBieSA4LgorUmVhZGluZyByYXcgYml0cyBpbmNy
ZWFzZXMgbmJpdHNfdG90YWwgYnkgdGhlIG51bWJlciBvZiByYXcgYml0cyByZWFkLgorPC90Pgor
Cis8c2VjdGlvbiBhbmNob3I9ImVjX3RlbGwiIHRpdGxlPSJlY190ZWxsKCkiPgorPHQ+CitUaGUg
d2hvbGUgbnVtYmVyIG9mIGJpdHMgYnVmZmVyZWQgaW4gcm5nIG1heSBiZSBlc3RpbWF0ZWQgdmlh
IGxnID0gaWxvZyhybmcpLgorZWNfdGVsbCgpIHRoZW4gYmVjb21lcyBhIHNpbXBsZSBtYXR0ZXIg
b2YgcmVtb3ZpbmcgdGhlc2UgYml0cyBmcm9tIHRoZSB0b3RhbC4KK0l0IHJldHVybnMgKG5iaXRz
X3RvdGFsIC0gbGcpLgorPC90PgorPHQ+CitJbiBhIG5ld2x5IGluaXRpYWxpemVkIGRlY29kZXIs
IGJlZm9yZSBhbnkgc3ltYm9scyBoYXZlIGJlZW4gcmVhZCwgdGhpcyByZXBvcnRzCisgdGhhdCAx
IGJpdCBoYXMgYmVlbiB1c2VkLgorVGhpcyBpcyB0aGUgYml0IHJlc2VydmVkIGZvciB0ZXJtaW5h
dGlvbiBvZiB0aGUgZW5jb2Rlci4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9y
PSJlY190ZWxsX2ZyYWMiIHRpdGxlPSJlY190ZWxsX2ZyYWMoKSI+Cis8dD4KK2VjX3RlbGxfZnJh
YygpIGVzdGltYXRlcyB0aGUgbnVtYmVyIG9mIGJpdHMgYnVmZmVyZWQgaW4gcm5nIHRvIGZyYWN0
aW9uYWwKKyBwcmVjaXNpb24uCitTaW5jZSBybmcgbXVzdCBiZSBncmVhdGVyIHRoYW4gMioqMjMg
YWZ0ZXIgcmVub3JtYWxpemF0aW9uLCBsZyBtdXN0IGJlIGF0IGxlYXN0CisgMjQuCitMZXQKKzxm
aWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRB
Wworcl9RMTUgPSBybmcgPj4gKGxnLTE2KSAsCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyBz
byB0aGF0IDMyNzY4ICZsdDs9IHJfUTE1ICZsdDsgNjU1MzYsIGFuIHVuc2lnbmVkIFExNSB2YWx1
ZSByZXByZXNlbnRpbmcgdGhlCisgZnJhY3Rpb25hbCBwYXJ0IG9mIHJuZy4KK1RoZW4gdGhlIGZv
bGxvd2luZyBwcm9jZWR1cmUgY2FuIGJlIHVzZWQgdG8gYWRkIG9uZSBiaXQgb2YgcHJlY2lzaW9u
IHRvIGxnLgorRmlyc3QsIHVwZGF0ZQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3Jr
IGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCityX1ExNSA9IChyX1ExNSpyX1ExNSkgPj4gMTUg
LgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGVuIGFkZCB0aGUgMTZ0aCBiaXQgb2Ygcl9R
MTUgdG8gbGcgdmlhCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNl
bnRlciI+Cis8IVtDREFUQVsKK2xnID0gMipsZyArIChyX1ExNSA+PiAxNikgLgorXV0+PC9hcnR3
b3JrPgorPC9maWd1cmU+CitGaW5hbGx5LCBpZiB0aGlzIGJpdCB3YXMgYSAxLCByZWR1Y2Ugcl9R
MTUgYnkgYSBmYWN0b3Igb2YgdHdvIHZpYQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCityX1ExNSA9IHJfUTE1ID4+IDEgLAorXV0+
PC9hcnR3b3JrPgorPC9maWd1cmU+Cisgc28gdGhhdCBpdCBvbmNlIGFnYWluIGxpZXMgaW4gdGhl
IHJhbmdlIDMyNzY4ICZsdDs9IHJfUTE1ICZsdDsgNjU1MzYuCis8L3Q+Cis8dD4KK1RoaXMgcHJv
Y2VkdXJlIGlzIHJlcGVhdGVkIHRocmVlIHRpbWVzIHRvIGV4dGVuZCBsZyB0byAxLzh0aCBiaXQg
cHJlY2lzaW9uLgorZWNfdGVsbF9mcmFjKCkgdGhlbiByZXR1cm5zIChuYml0c190b3RhbCo4IC0g
bGcpLgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNl
Y3Rpb24gYW5jaG9yPSJzaWxrX2RlY29kZXJfb3V0bGluZSIgdGl0bGU9IlNJTEsgRGVjb2RlciI+
Cis8dD4KK1RoZSBkZWNvZGVyJ3MgTFAgbGF5ZXIgdXNlcyBhIG1vZGlmaWVkIHZlcnNpb24gb2Yg
dGhlIFNJTEsgY29kZWMgKGhlcmVpbiBzaW1wbHkKKyBjYWxsZWQgIlNJTEsiKSwgd2hpY2ggcnVu
cyBhIGRlY29kZWQgZXhjaXRhdGlvbiBzaWduYWwgdGhyb3VnaCBhZGFwdGl2ZQorIGxvbmctdGVy
bSBhbmQgc2hvcnQtdGVybSBwcmVkaWN0aW9uIHN5bnRoZXNpcyBmaWx0ZXJzLgorSXQgcnVucyBh
dCBOQiwgTUIsIGFuZCBXQiBzYW1wbGUgcmF0ZXMgaW50ZXJuYWxseS4KK1doZW4gdXNlZCBpbiBh
IFNXQiBvciBGQiBIeWJyaWQgZnJhbWUsIHRoZSBMUCBsYXllciBpdHNlbGYgc3RpbGwgb25seSBy
dW5zIGluCisgV0IuCis8L3Q+CisKKzxzZWN0aW9uIHRpdGxlPSJTSUxLIERlY29kZXIgTW9kdWxl
cyI+Cis8dD4KK0FuIG92ZXJ2aWV3IG9mIHRoZSBkZWNvZGVyIGlzIGdpdmVuIGluIDx4cmVmIHRh
cmdldD0ic2lsa19kZWNvZGVyX2ZpZ3VyZSIvPi4KKzwvdD4KKzxmaWd1cmUgYWxpZ249ImNlbnRl
ciIgYW5jaG9yPSJzaWxrX2RlY29kZXJfZmlndXJlIiB0aXRsZT0iU0lMSyBEZWNvZGVyIj4KKzxh
cnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisgICArLS0tLS0tLS0tKyAgICArLS0t
LS0tLS0tLS0tKworLS0+fCBSYW5nZSAgIHwtLS0+fCBEZWNvZGUgICAgIHwtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0rCisgMSB8IERlY29kZXIgfCAyICB8IFBhcmFtZXRlcnMgfC0tLS0tLS0t
LS0rICAgICAgIDUgICAgICAgIHwKKyAgICstLS0tLS0tLS0rICAgICstLS0tLS0tLS0tLS0rICAg
ICA0ICAgIHwgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgICAgICAgICAgICAzIHwgICAg
ICAgICAgICAgICAgfCAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICAgICAgICAgICAgICBc
LyAgICAgICAgICAgICAgIFwvICAgICAgICAgICAgICAgXC8KKyAgICAgICAgICAgICAgICAgICst
LS0tLS0tLS0tLS0rICAgKy0tLS0tLS0tLS0tLSsgICArLS0tLS0tLS0tLS0tKworICAgICAgICAg
ICAgICAgICAgfCBHZW5lcmF0ZSAgIHwtLT58IExUUCAgICAgICAgfC0tPnwgTFBDICAgICAgICB8
CisgICAgICAgICAgICAgICAgICB8IEV4Y2l0YXRpb24gfCAgIHwgU3ludGhlc2lzICB8ICAgfCBT
eW50aGVzaXMgIHwKKyAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLS0rICAgKy0tLS0tLS0t
LS0tLSsgICArLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXiAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICAgICAgICAgICAr
LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgICAgICAg
ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDYKKyAgICAgICAgICAg
ICAgICAgICAgICB8ICAgKy0tLS0tLS0tLS0tLSsgICArLS0tLS0tLS0tLS0tLSsKKyAgICAgICAg
ICAgICAgICAgICAgICArLS0+fCBTdGVyZW8gICAgIHwtLT58IFNhbXBsZSBSYXRlIHwtLT4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCBVbm1peGluZyAgIHwgNyB8IENvbnZlcnNpb24gIHwg
OAorICAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tKyAgICstLS0tLS0tLS0t
LS0tKworCisxOiBSYW5nZSBlbmNvZGVkIGJpdHN0cmVhbQorMjogQ29kZWQgcGFyYW1ldGVycwor
MzogUHVsc2VzLCBMU0JzLCBhbmQgc2lnbnMKKzQ6IFBpdGNoIGxhZ3MsIExvbmctVGVybSBQcmVk
aWN0aW9uIChMVFApIGNvZWZmaWNpZW50cworNTogTGluZWFyIFByZWRpY3RpdmUgQ29kaW5nIChM
UEMpIGNvZWZmaWNpZW50cyBhbmQgZ2FpbnMKKzY6IERlY29kZWQgc2lnbmFsIChtb25vIG9yIG1p
ZC1zaWRlIHN0ZXJlbykKKzc6IFVubWl4ZWQgc2lnbmFsIChtb25vIG9yIGxlZnQtcmlnaHQgc3Rl
cmVvKQorODogUmVzYW1wbGVkIHNpZ25hbAorXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KKwor
PHQ+CitUaGUgZGVjb2RlciBmZWVkcyB0aGUgYml0c3RyZWFtICgxKSB0byB0aGUgcmFuZ2UgZGVj
b2RlciBmcm9tCisgPHhyZWYgdGFyZ2V0PSJyYW5nZS1kZWNvZGVyIi8+LCBhbmQgdGhlbiBkZWNv
ZGVzIHRoZSBwYXJhbWV0ZXJzIGluIGl0ICgyKQorIHVzaW5nIHRoZSBwcm9jZWR1cmVzIGRldGFp
bGVkIGluCisgU2VjdGlvbnMmbmJzcDs8eHJlZiBmb3JtYXQ9ImNvdW50ZXIiIHRhcmdldD0ic2ls
a19oZWFkZXJfYml0cyIvPgorIHRocm91Z2gmbmJzcDs8eHJlZiBmb3JtYXQ9ImNvdW50ZXIiIHRh
cmdldD0ic2lsa19zaWducyIvPi4KK1RoZXNlIHBhcmFtZXRlcnMgKDMsIDQsIDUpIGFyZSB1c2Vk
IHRvIGdlbmVyYXRlIGFuIGV4Y2l0YXRpb24gc2lnbmFsIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNp
bGtfZXhjaXRhdGlvbl9yZWNvbnN0cnVjdGlvbiIvPiksIHdoaWNoIGlzIGZlZCB0byBhbiBvcHRp
b25hbAorIGxvbmctdGVybSBwcmVkaWN0aW9uIChMVFApIGZpbHRlciAodm9pY2VkIGZyYW1lcyBv
bmx5LCBzZWUKKyA8eHJlZiB0YXJnZXQ9InNpbGtfbHRwX3N5bnRoZXNpcyIvPikgYW5kIHRoZW4g
YSBzaG9ydC10ZXJtIHByZWRpY3Rpb24gZmlsdGVyCisgKHNlZSA8eHJlZiB0YXJnZXQ9InNpbGtf
bHBjX3N5bnRoZXNpcyIvPiksIHByb2R1Y2luZyB0aGUgZGVjb2RlZCBzaWduYWwgKDYpLgorRm9y
IHN0ZXJlbyBzdHJlYW1zLCB0aGUgbWlkLXNpZGUgcmVwcmVzZW50YXRpb24gaXMgY29udmVydGVk
IHRvIHNlcGFyYXRlIGxlZnQKKyBhbmQgcmlnaHQgY2hhbm5lbHMgKDcpLgorVGhlIHJlc3VsdCBp
cyBmaW5hbGx5IHJlc2FtcGxlZCB0byB0aGUgZGVzaXJlZCBvdXRwdXQgc2FtcGxlIHJhdGUgKGUu
Zy4sCisgNDgmbmJzcDtrSHopIHNvIHRoYXQgdGhlIHJlc2FtcGxlZCBzaWduYWwgKDgpIGNhbiBi
ZSBtaXhlZCB3aXRoIHRoZSBDRUxUCisgbGF5ZXIuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNl
Y3Rpb24gYW5jaG9yPSJzaWxrX2xheWVyX29yZ2FuaXphdGlvbiIgdGl0bGU9IkxQIExheWVyIE9y
Z2FuaXphdGlvbiI+CisKKzx0PgorSW50ZXJuYWxseSwgdGhlIExQIGxheWVyIG9mIGEgc2luZ2xl
IE9wdXMgZnJhbWUgaXMgY29tcG9zZWQgb2YgZWl0aGVyIGEgc2luZ2xlCisgMTAmbmJzcDttcyBy
ZWd1bGFyIFNJTEsgZnJhbWUgb3IgYmV0d2VlbiBvbmUgYW5kIHRocmVlIDIwJm5ic3A7bXMgcmVn
dWxhciBTSUxLCisgZnJhbWVzLgorQSBzdGVyZW8gT3B1cyBmcmFtZSBtYXkgZG91YmxlIHRoZSBu
dW1iZXIgb2YgcmVndWxhciBTSUxLIGZyYW1lcyAodXAgdG8gYSB0b3RhbAorIG9mIHNpeCksIHNp
bmNlIGl0IGluY2x1ZGVzIHNlcGFyYXRlIGZyYW1lcyBmb3IgYSBtaWQgY2hhbm5lbCBhbmQsIG9w
dGlvbmFsbHksCisgYSBzaWRlIGNoYW5uZWwuCitPcHRpb25hbCBMb3cgQml0LVJhdGUgUmVkdW5k
YW5jeSAoTEJSUikgZnJhbWVzLCB3aGljaCBhcmUgcmVkdWNlZC1iaXRyYXRlCisgZW5jb2Rpbmdz
IG9mIHByZXZpb3VzIFNJTEsgZnJhbWVzLCBtYXkgYmUgaW5jbHVkZWQgdG8gYWlkIGluIHJlY292
ZXJ5IGZyb20KKyBwYWNrZXQgbG9zcy4KK0lmIHByZXNlbnQsIHRoZXNlIGFwcGVhciBiZWZvcmUg
dGhlIHJlZ3VsYXIgU0lMSyBmcmFtZXMuCitUaGV5IGFyZSBpbiBtb3N0IHJlc3BlY3RzIGlkZW50
aWNhbCB0byByZWd1bGFyLCBhY3RpdmUgU0lMSyBmcmFtZXMsIGV4Y2VwdCB0aGF0CisgdGhleSBh
cmUgdXN1YWxseSBlbmNvZGVkIHdpdGggYSBsb3dlciBiaXRyYXRlLgorVGhpcyBkcmFmdCB1c2Vz
ICJTSUxLIGZyYW1lIiB0byByZWZlciB0byBlaXRoZXIgb25lIGFuZCAicmVndWxhciBTSUxLIGZy
YW1lIiBpZgorIGl0IG5lZWRzIHRvIGRyYXcgYSBkaXN0aW5jdGlvbiBiZXR3ZWVuIHRoZSB0d28u
Cis8L3Q+Cis8dD4KK0xvZ2ljYWxseSwgZWFjaCBTSUxLIGZyYW1lIGlzIGluIHR1cm4gY29tcG9z
ZWQgb2YgZWl0aGVyIHR3byBvciBmb3VyIDUmbmJzcDttcworIHN1YmZyYW1lcy4KK1ZhcmlvdXMg
cGFyYW1ldGVycywgc3VjaCBhcyB0aGUgcXVhbnRpemF0aW9uIGdhaW4gb2YgdGhlIGV4Y2l0YXRp
b24gYW5kIHRoZQorIHBpdGNoIGxhZyBhbmQgZmlsdGVyIGNvZWZmaWNpZW50cyBjYW4gdmFyeSBv
biBhIHN1YmZyYW1lLWJ5LXN1YmZyYW1lIGJhc2lzLgorUGh5c2ljYWxseSwgdGhlIHBhcmFtZXRl
cnMgZm9yIGVhY2ggc3ViZnJhbWUgYXJlIGludGVybGVhdmVkIGluIHRoZSBiaXRzdHJlYW0sCisg
YXMgZGVzY3JpYmVkIGluIHRoZSByZWxldmFudCBzZWN0aW9ucyBmb3IgZWFjaCBwYXJhbWV0ZXIu
Cis8L3Q+Cis8dD4KK0FsbCBvZiB0aGVzZSBmcmFtZXMgYW5kIHN1YmZyYW1lcyBhcmUgZGVjb2Rl
ZCBmcm9tIHRoZSBzYW1lIHJhbmdlIGNvZGVyLCB3aXRoCisgbm8gcGFkZGluZyBiZXR3ZWVuIHRo
ZW0uCitUaHVzIHBhY2tpbmcgbXVsdGlwbGUgU0lMSyBmcmFtZXMgaW4gYSBzaW5nbGUgT3B1cyBm
cmFtZSBzYXZlcywgb24gYXZlcmFnZSwKKyBoYWxmIGEgYnl0ZSBwZXIgU0lMSyBmcmFtZS4KK0l0
IGFsc28gYWxsb3dzIHNvbWUgcGFyYW1ldGVycyB0byBiZSBwcmVkaWN0ZWQgZnJvbSBwcmlvciBT
SUxLIGZyYW1lcyBpbiB0aGUKKyBzYW1lIE9wdXMgZnJhbWUsIHNpbmNlIHRoaXMgZG9lcyBub3Qg
ZGVncmFkZSBwYWNrZXQgbG9zcyByb2J1c3RuZXNzIChiZXlvbmQKKyBhbnkgcGVuYWx0eSBmb3Ig
bWVyZWx5IHVzaW5nIGZld2VyLCBsYXJnZXIgcGFja2V0cyB0byBzdG9yZSBtdWx0aXBsZSBmcmFt
ZXMpLgorPC90PgorCis8dD4KK1N0ZXJlbyBzdXBwb3J0IGluIFNJTEsgdXNlcyBhIHZhcmlhbnQg
b2YgbWlkLXNpZGUgY29kaW5nLCBhbGxvd2luZyBhIG1vbm8KKyBkZWNvZGVyIHRvIHNpbXBseSBk
ZWNvZGUgdGhlIG1pZCBjaGFubmVsLgorSG93ZXZlciwgdGhlIGRhdGEgZm9yIHRoZSB0d28gY2hh
bm5lbHMgaXMgaW50ZXJsZWF2ZWQsIHNvIGEgbW9ubyBkZWNvZGVyIG11c3QKKyBzdGlsbCB1bnBh
Y2sgdGhlIGRhdGEgZm9yIHRoZSBzaWRlIGNoYW5uZWwuCitJdCB3b3VsZCBiZSByZXF1aXJlZCB0
byBkbyBzbyBhbnl3YXkgZm9yIEh5YnJpZCBPcHVzIGZyYW1lcywgb3IgdG8gc3VwcG9ydAorIGRl
Y29kaW5nIGluZGl2aWR1YWwgMjAmbmJzcDttcyBmcmFtZXMuCis8L3Q+CisKKzx0PgorPHhyZWYg
dGFyZ2V0PSJzaWxrX3N5bWJvbHMiLz4gc3VtbWFyaXplcyB0aGUgb3ZlcmFsbCBncm91cGluZyBv
ZiB0aGUgY29udGVudHMgb2YKKyB0aGUgTFAgbGF5ZXIuCitGaWd1cmVzJm5ic3A7PHhyZWYgZm9y
bWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfbW9ub182MG1zX2ZyYW1lIi8+CisgYW5kJm5ic3A7
PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfc3RlcmVvXzYwbXNfZnJhbWUiLz4g
aWxsdXN0cmF0ZQorIHRoZSBvcmRlcmluZyBvZiB0aGUgdmFyaW91cyBTSUxLIGZyYW1lcyBmb3Ig
YSA2MCZuYnNwO21zIE9wdXMgZnJhbWUsIGZvciBib3RoCisgbW9ubyBhbmQgc3RlcmVvLCByZXNw
ZWN0aXZlbHkuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3N5bWJvbHMiCisgdGl0
bGU9Ik9yZ2FuaXphdGlvbiBvZiB0aGUgU0lMSyBsYXllciBvZiBhbiBPcHVzIGZyYW1lIj4KKzx0
dGNvbCBhbGlnbj0iY2VudGVyIj5TeW1ib2wocyk8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJjZW50
ZXIiPlBERihzKTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+Q29uZGl0aW9uPC90dGNv
bD4KKworPGM+Vm9pY2UgQWN0aXZpdHkgRGV0ZWN0aW9uIChWQUQpIGZsYWdzPC9jPgorPGM+ezEs
IDF9LzI8L2M+Cis8Yy8+CisKKzxjPkxCUlIgZmxhZzwvYz4KKzxjPnsxLCAxfS8yPC9jPgorPGMv
PgorCis8Yz5QZXItZnJhbWUgTEJSUiBmbGFnczwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19s
YnJyX2ZsYWdfcGRmcyIvPjwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19sYnJyX2ZsYWdzIi8+
PC9jPgorCis8Yz5MQlJSIEZyYW1lKHMpPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1l
Ii8+PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2xicnJfZmxhZ3MiLz48L2M+CisKKzxjPlJl
Z3VsYXIgU0lMSyBGcmFtZShzKTwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19mcmFtZSIvPjwv
Yz4KKzxjLz4KKworPC90ZXh0dGFibGU+CisKKzxmaWd1cmUgYWxpZ249ImNlbnRlciIgYW5jaG9y
PSJzaWxrX21vbm9fNjBtc19mcmFtZSIKKyB0aXRsZT0iQSA2MCZuYnNwO21zIE1vbm8gRnJhbWUi
PgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisrLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tKworfCAgICAgICAgICAgIFZBRCBGbGFncyAgICAgICAgICAgIHwKKyst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAgICAgICAgTEJSUiBGbGFn
ICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgUGVy
LUZyYW1lIExCUlIgRmxhZ3MgKE9wdGlvbmFsKSB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tKworfCAgICAgTEJSUiBGcmFtZSAxIChPcHRpb25hbCkgICAgIHwKKystLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICBMQlJSIEZyYW1lIDIgKE9wdGlvbmFs
KSAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgIExCUlIg
RnJhbWUgMyAoT3B0aW9uYWwpICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tKworfCAgICAgIFJlZ3VsYXIgU0lMSyBGcmFtZSAxICAgICAgIHwKKystLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAgUmVndWxhciBTSUxLIEZyYW1lIDIgICAgICAg
fAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgICBSZWd1bGFyIFNJ
TEsgRnJhbWUgMyAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwor
XV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzxmaWd1cmUgYWxpZ249ImNlbnRlciIgYW5jaG9y
PSJzaWxrX3N0ZXJlb182MG1zX2ZyYW1lIgorIHRpdGxlPSJBIDYwJm5ic3A7bXMgU3RlcmVvIEZy
YW1lIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworKy0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgICAgICAgICAgTWlkIFZBRCBGbGFncyAg
ICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwor
fCAgICAgICAgICAgICBNaWQgTEJSUiBGbGFnICAgICAgICAgICAgIHwKKystLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAgICAgICAgIFNpZGUgVkFEIEZsYWdz
ICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsK
K3wgICAgICAgICAgICAgU2lkZSBMQlJSIEZsYWcgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgTWlkIFBlci1GcmFtZSBMQlJSIEZsYWdz
IChPcHRpb25hbCkgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r
Cit8IFNpZGUgUGVyLUZyYW1lIExCUlIgRmxhZ3MgKE9wdGlvbmFsKSAgfAorKy0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgIE1pZCBMQlJSIEZyYW1lIDEgKE9w
dGlvbmFsKSAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
KworfCAgICAgU2lkZSBMQlJSIEZyYW1lIDEgKE9wdGlvbmFsKSAgICAgIHwKKystLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICBNaWQgTEJSUiBGcmFtZSAyIChP
cHRpb25hbCkgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSsKK3wgICAgIFNpZGUgTEJSUiBGcmFtZSAyIChPcHRpb25hbCkgICAgICB8CisrLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgTWlkIExCUlIgRnJhbWUgMyAo
T3B0aW9uYWwpICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0rCit8ICAgICBTaWRlIExCUlIgRnJhbWUgMyAoT3B0aW9uYWwpICAgICAgfAorKy0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgICBNaWQgUmVndWxhciBTSUxL
IEZyYW1lIDEgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tKworfCBTaWRlIFJlZ3VsYXIgU0lMSyBGcmFtZSAxIChPcHRpb25hbCkgIHwKKystLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAgTWlkIFJlZ3VsYXIgU0lM
SyBGcmFtZSAyICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLSsKK3wgU2lkZSBSZWd1bGFyIFNJTEsgRnJhbWUgMiAoT3B0aW9uYWwpICB8CisrLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgIE1pZCBSZWd1bGFyIFNJ
TEsgRnJhbWUgMyAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0rCit8IFNpZGUgUmVndWxhciBTSUxLIEZyYW1lIDMgKE9wdGlvbmFsKSAgfAorKy0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK11dPjwvYXJ0d29yaz4KKzwvZmln
dXJlPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19oZWFkZXJfYml0cyIg
dGl0bGU9IkhlYWRlciBCaXRzIj4KKzx0PgorVGhlIExQIGxheWVyIGJlZ2lucyB3aXRoIHR3byB0
byBlaWdodCBoZWFkZXIgYml0cywgZGVjb2RlZCBpbiBzaWxrX0RlY29kZSgpCisgKGRlY19BUEku
YykuCitUaGVzZSBjb25zaXN0IG9mIG9uZSBWb2ljZSBBY3Rpdml0eSBEZXRlY3Rpb24gKFZBRCkg
Yml0IHBlciBmcmFtZSAodXAgdG8gMyksCisgZm9sbG93ZWQgYnkgYSBzaW5nbGUgZmxhZyBpbmRp
Y2F0aW5nIHRoZSBwcmVzZW5jZSBvZiBMQlJSIGZyYW1lcy4KK0ZvciBhIHN0ZXJlbyBwYWNrZXQs
IHRoZXNlIGZpcnN0IGZsYWdzIGNvcnJlc3BvbmQgdG8gdGhlIG1pZCBjaGFubmVsLCBhbmQgYQor
IHNlY29uZCBzZXQgb2YgZmxhZ3MgaXMgaW5jbHVkZWQgZm9yIHRoZSBzaWRlIGNoYW5uZWwuCis8
L3Q+Cis8dD4KK0JlY2F1c2UgdGhlc2UgYXJlIHRoZSBmaXJzdCBzeW1ib2xzIGRlY29kZWQgYnkg
dGhlIHJhbmdlIGNvZGVyIGFuZCBiZWNhdXNlIHRoZXkKKyBhcmUgY29kZWQgYXMgYmluYXJ5IHZh
bHVlcyB3aXRoIHVuaWZvcm0gcHJvYmFiaWxpdHksIHRoZXkgY2FuIGJlIGV4dHJhY3RlZAorIGRp
cmVjdGx5IGZyb20gdGhlIG1vc3Qgc2lnbmlmaWNhbnQgYml0cyBvZiB0aGUgZmlyc3QgYnl0ZSBv
ZiBjb21wcmVzc2VkIGRhdGEuCitUaHVzLCBhIHJlY2VpdmVyIGNhbiBkZXRlcm1pbmUgaWYgYW4g
T3B1cyBmcmFtZSBjb250YWlucyBhbnkgYWN0aXZlIFNJTEsgZnJhbWVzCisgd2l0aG91dCB0aGUg
b3ZlcmhlYWQgb2YgdXNpbmcgdGhlIHJhbmdlIGRlY29kZXIuCis8L3Q+Cis8L3NlY3Rpb24+CisK
KzxzZWN0aW9uIGFuY2hvcj0ic2lsa19sYnJyX2ZsYWdzIiB0aXRsZT0iUGVyLUZyYW1lIExCUlIg
RmxhZ3MiPgorPHQ+CitGb3IgT3B1cyBmcmFtZXMgbG9uZ2VyIHRoYW4gMjAmbmJzcDttcywgYSBz
ZXQgb2YgTEJSUiBmbGFncyBpcworIGRlY29kZWQgZm9yIGVhY2ggY2hhbm5lbCB0aGF0IGhhcyBp
dHMgTEJSUiBmbGFnIHNldC4KK0VhY2ggc2V0IGNvbnRhaW5zIG9uZSBmbGFnIHBlciAyMCZuYnNw
O21zIFNJTEsgZnJhbWUuCis0MCZuYnNwO21zIE9wdXMgZnJhbWVzIHVzZSB0aGUgMi1mcmFtZSBM
QlJSIGZsYWcgUERGIGZyb20KKyA8eHJlZiB0YXJnZXQ9InNpbGtfbGJycl9mbGFnX3BkZnMiLz4s
IGFuZCA2MCZuYnNwO21zIE9wdXMgZnJhbWVzIHVzZSB0aGUKKyAzLWZyYW1lIExCUlIgZmxhZyBQ
REYuCitGb3IgZWFjaCBjaGFubmVsLCB0aGUgcmVzdWx0aW5nIDItIG9yIDMtYml0IGludGVnZXIg
Y29udGFpbnMgdGhlIGNvcnJlc3BvbmRpbmcKKyBMQlJSIGZsYWcgZm9yIGVhY2ggZnJhbWUsIHBh
Y2tlZCBpbiBvcmRlciBmcm9tIHRoZSBMU0IgdG8gdGhlIE1TQi4KKzwvdD4KKworPHRleHR0YWJs
ZSBhbmNob3I9InNpbGtfbGJycl9mbGFnX3BkZnMiIHRpdGxlPSJMQlJSIEZsYWcgUERGcyI+Cis8
dHRjb2w+RnJhbWUgU2l6ZTwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPjQwJm5ic3A7
bXM8L2M+IDxjPnswLCA1MywgNTMsIDE1MH0vMjU2PC9jPgorPGM+NjAmbmJzcDttczwvYz4gPGM+
ezAsIDQxLCAyMCwgMjksIDQxLCAxNSwgMjgsIDgyfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKwor
PHQ+CitBIDEwJm5ic3A7b3IgMjAmbmJzcDttcyBPcHVzIGZyYW1lIGRvZXMgbm90IGNvbnRhaW4g
YW55IHBlci1mcmFtZSBMQlJSIGZsYWdzLAorIGFzIHRoZXJlIG1heSBiZSBhdCBtb3N0IG9uZSBM
QlJSIGZyYW1lIHBlciBjaGFubmVsLgorVGhlIGdsb2JhbCBMQlJSIGZsYWcgaW4gdGhlIGhlYWRl
ciBiaXRzIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2hlYWRlcl9iaXRzIi8+KQorIGlzIGFscmVh
ZHkgc3VmZmljaWVudCB0byBpbmRpY2F0ZSB0aGUgcHJlc2VuY2Ugb2YgdGhhdCBzaW5nbGUgTEJS
UiBmcmFtZS4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbGJy
cl9mcmFtZXMiIHRpdGxlPSJMQlJSIEZyYW1lcyI+Cis8dD4KK1RoZSBMQlJSIGZyYW1lcywgaWYg
cHJlc2VudCwgY29udGFpbiBhbiBlbmNvZGVkIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBzaWduYWwK
KyBpbW1lZGlhdGVseSBwcmlvciB0byB0aGUgY3VycmVudCBPcHVzIGZyYW1lIGFzIGlmIGl0IHdl
cmUgZW5jb2RlZCB3aXRoIHRoZQorIGN1cnJlbnQgbW9kZSwgZnJhbWUgc2l6ZSwgYXVkaW8gYmFu
ZHdpZHRoLCBhbmQgY2hhbm5lbCBjb3VudCwgZXZlbiBpZiB0aG9zZQorIGRpZmZlciBmcm9tIHRo
ZSBwcmlvciBPcHVzIGZyYW1lLgorV2hlbiBvbmUgb2YgdGhlc2UgcGFyYW1ldGVycyBjaGFuZ2Vz
IGZyb20gb25lIE9wdXMgZnJhbWUgdG8gdGhlIG5leHQsIHRoaXMKKyBpbXBsaWVzIHRoYXQgdGhl
IExCUlIgZnJhbWVzIG9mIHRoZSBjdXJyZW50IE9wdXMgZnJhbWUgbWF5IG5vdCBiZSBzaW1wbGUK
KyBkcm9wLWluIHJlcGxhY2VtZW50cyBmb3IgdGhlIGNvbnRlbnRzIG9mIHRoZSBwcmV2aW91cyBP
cHVzIGZyYW1lLgorPC90PgorCis8dD4KK0ZvciBleGFtcGxlLCB3aGVuIHN3aXRjaGluZyBmcm9t
IDIwJm5ic3A7bXMgdG8gNjAmbmJzcDttcywgdGhlIDYwJm5ic3A7bXMgT3B1cworIGZyYW1lIG1h
eSBjb250YWluIExCUlIgZnJhbWVzIGNvdmVyaW5nIHVwIHRvIHRocmVlIHByaW9yIDIwJm5ic3A7
bXMgT3B1cworIGZyYW1lcywgZXZlbiBpZiB0aG9zZSBmcmFtZXMgYWxyZWFkeSBjb250YWluZWQg
TEJSUiBmcmFtZXMgY292ZXJpbmcgc29tZSBvZgorIHRoZSBzYW1lIHRpbWUgcGVyaW9kcy4KK1do
ZW4gc3dpdGNoaW5nIGZyb20gMjAmbmJzcDttcyB0byAxMCZuYnNwO21zLCB0aGUgMTAmbmJzcDtt
cyBPcHVzIGZyYW1lIGNhbgorIGNvbnRhaW4gYW4gTEJSUiBmcmFtZSBjb3ZlcmluZyBhdCBtb3N0
IGhhbGYgdGhlIHByaW9yIDIwJm5ic3A7bXMgT3B1cyBmcmFtZSwKKyBwb3RlbnRpYWxseSBsZWF2
aW5nIGEgaG9sZSB0aGF0IG5lZWRzIHRvIGJlIGNvbmNlYWxlZCBmcm9tIGV2ZW4gYSBzaW5nbGUK
KyBwYWNrZXQgbG9zcyAoc2VlIDx4cmVmIHRhcmdldD0iUGFja2V0IExvc3MgQ29uY2VhbG1lbnQi
Lz4pLgorV2hlbiBzd2l0Y2hpbmcgZnJvbSBtb25vIHRvIHN0ZXJlbywgdGhlIExCUlIgZnJhbWVz
IGluIHRoZSBmaXJzdCBzdGVyZW8gT3B1cworIGZyYW1lIE1BWSBjb250YWluIGEgbm9uLXRyaXZp
YWwgc2lkZSBjaGFubmVsLgorPC90PgorCis8dD4KK0luIG9yZGVyIHRvIHByb3Blcmx5IHByb2R1
Y2UgTEJSUiBmcmFtZXMgdW5kZXIgYWxsIGNvbmRpdGlvbnMsIGFuIGVuY29kZXIgbWlnaHQKKyBu
ZWVkIHRvIGJ1ZmZlciB1cCB0byA2MCZuYnNwO21zIG9mIGF1ZGlvIGFuZCByZS1lbmNvZGUgaXQg
ZHVyaW5nIHRoZXNlCisgdHJhbnNpdGlvbnMuCitIb3dldmVyLCB0aGUgcmVmZXJlbmNlIGltcGxl
bWVudGF0aW9uIG9wdHMgdG8gZGlzYWJsZSBMQlJSIGZyYW1lcyBhdCB0aGUKKyB0cmFuc2l0aW9u
IHBvaW50IGZvciBzaW1wbGljaXR5LgorU2luY2UgdHJhbnNpdGlvbnMgYXJlIHJlbGF0aXZlbHkg
aW5mcmVxdWVudCBpbiBub3JtYWwgdXNhZ2UsIHRoaXMgZG9lcyBub3QgaGF2ZQorIGEgc2lnbmlm
aWNhbnQgaW1wYWN0IG9uIHBhY2tldCBsb3NzIHJvYnVzdG5lc3MuCis8L3Q+CisKKzx0PgorVGhl
IExCUlIgZnJhbWVzIGltbWVkaWF0ZWx5IGZvbGxvdyB0aGUgTEJSUiBmbGFncywgcHJpb3IgdG8g
YW55IHJlZ3VsYXIgU0lMSworIGZyYW1lcy4KKzx4cmVmIHRhcmdldD0ic2lsa19mcmFtZSIvPiBk
ZXNjcmliZXMgdGhlaXIgZXhhY3QgY29udGVudHMuCitMQlJSIGZyYW1lcyBkbyBub3QgaW5jbHVk
ZSB0aGVpciBvd24gc2VwYXJhdGUgVkFEIGZsYWdzLgorTEJSUiBmcmFtZXMgYXJlIG9ubHkgbWVh
bnQgdG8gYmUgdHJhbnNtaXR0ZWQgZm9yIGFjdGl2ZSBzcGVlY2gsIHRodXMgYWxsIExCUlIKKyBm
cmFtZXMgYXJlIHRyZWF0ZWQgYXMgYWN0aXZlLgorPC90PgorCis8dD4KK0luIGEgc3RlcmVvIE9w
dXMgZnJhbWUgbG9uZ2VyIHRoYW4gMjAmbmJzcDttcywgYWx0aG91Z2ggdGhlIHBlci1mcmFtZSBM
QlJSCisgZmxhZ3MgZm9yIHRoZSBtaWQgY2hhbm5lbCBhcmUgY29kZWQgYXMgYSB1bml0IGJlZm9y
ZSB0aGUgcGVyLWZyYW1lIExCUlIgZmxhZ3MKKyBmb3IgdGhlIHNpZGUgY2hhbm5lbCwgdGhlIExC
UlIgZnJhbWVzIHRoZW1zZWx2ZXMgYXJlIGludGVybGVhdmVkLgorVGhlIGRlY29kZXIgcGFyc2Vz
IGFuIExCUlIgZnJhbWUgZm9yIHRoZSBtaWQgY2hhbm5lbCBvZiBhIGdpdmVuIDIwJm5ic3A7bXMK
KyBpbnRlcnZhbCAoaWYgcHJlc2VudCkgYW5kIHRoZW4gaW1tZWRpYXRlbHkgcGFyc2VzIHRoZSBj
b3JyZXNwb25kaW5nIExCUlIKKyBmcmFtZSBmb3IgdGhlIHNpZGUgY2hhbm5lbCAoaWYgcHJlc2Vu
dCksIGJlZm9yZSBwcm9jZWVkaW5nIHRvIHRoZSBuZXh0CisgMjAmbmJzcDttcyBpbnRlcnZhbC4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX3JlZ3VsYXJfZnJhbWVz
IiB0aXRsZT0iUmVndWxhciBTSUxLIEZyYW1lcyI+Cis8dD4KK1RoZSByZWd1bGFyIFNJTEsgZnJh
bWUocykgZm9sbG93IHRoZSBMQlJSIGZyYW1lcyAoaWYgYW55KS4KKzx4cmVmIHRhcmdldD0ic2ls
a19mcmFtZSIvPiBkZXNjcmliZXMgdGhlaXIgY29udGVudHMsIGFzIHdlbGwuCitVbmxpa2UgdGhl
IExCUlIgZnJhbWVzLCBhIHJlZ3VsYXIgU0lMSyBmcmFtZSBpcyBjb2RlZCBmb3IgZWFjaCB0aW1l
IGludGVydmFsIGluCisgYW4gT3B1cyBmcmFtZSwgZXZlbiBpZiB0aGUgY29ycmVzcG9uZGluZyBW
QUQgZmxhZ3MgYXJlIHVuc2V0LgorRm9yIHN0ZXJlbyBPcHVzIGZyYW1lcyBsb25nZXIgdGhhbiAy
MCZuYnNwO21zLCB0aGUgcmVndWxhciBtaWQgYW5kIHNpZGUgU0lMSworIGZyYW1lcyBmb3IgZWFj
aCAyMCZuYnNwO21zIGludGVydmFsIGFyZSBpbnRlcmxlYXZlZCwganVzdCBhcyB3aXRoIHRoZSBM
QlJSCisgZnJhbWVzLgorVGhlIHNpZGUgZnJhbWUgbWF5IGJlIHNraXBwZWQgYnkgY29kaW5nIGFu
IGFwcHJvcHJpYXRlIGZsYWcsIGFzIGRldGFpbGVkIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX21p
ZF9vbmx5X2ZsYWciLz4uCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2ls
a19mcmFtZSIgdGl0bGU9IlNJTEsgRnJhbWUgQ29udGVudHMiPgorPHQ+CitFYWNoIFNJTEsgZnJh
bWUgaW5jbHVkZXMgYSBzZXQgb2Ygc2lkZSBpbmZvcm1hdGlvbiB0aGF0IGVuY29kZXMKKzxsaXN0
IHN0eWxlPSJzeW1ib2xzIj4KKzx0PlRoZSBmcmFtZSB0eXBlIGFuZCBxdWFudGl6YXRpb24gdHlw
ZSAoPHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pLDwvdD4KKzx0PlF1YW50aXphdGlv
biBnYWlucyAoPHhyZWYgdGFyZ2V0PSJzaWxrX2dhaW5zIi8+KSw8L3Q+Cis8dD5TaG9ydC10ZXJt
IHByZWRpY3Rpb24gZmlsdGVyIGNvZWZmaWNpZW50cyAoPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zz
Ii8+KSw8L3Q+Cis8dD5BIExpbmUgU3BlY3RyYWwgRnJlcXVlbmNpZXMgKExTRikgaW50ZXJwb2xh
dGlvbiB3ZWlnaHQgKDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX2ludGVycG9sYXRpb24iLz4pLDwv
dD4KKzx0PgorTG9uZy10ZXJtIHByZWRpY3Rpb24gZmlsdGVyIGxhZ3MgYW5kIGdhaW5zICg8eHJl
ZiB0YXJnZXQ9InNpbGtfbHRwX3BhcmFtcyIvPiksCisgYW5kCis8L3Q+Cis8dD5BIGxpbmVhciBj
b25ncnVlbnRpYWwgZ2VuZXJhdG9yIChMQ0cpIHNlZWQgKDx4cmVmIHRhcmdldD0ic2lsa19zZWVk
Ii8+KS48L3Q+Cis8L2xpc3Q+CitUaGUgcXVhbnRpemVkIGV4Y2l0YXRpb24gc2lnbmFsIChzZWUg
PHhyZWYgdGFyZ2V0PSJzaWxrX2V4Y2l0YXRpb24iLz4pIGZvbGxvd3MKKyB0aGVzZSBhdCB0aGUg
ZW5kIG9mIHRoZSBmcmFtZS4KKzx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV9zeW1ib2xzIi8+IGRl
dGFpbHMgdGhlIG92ZXJhbGwgb3JnYW5pemF0aW9uIG9mIGEKKyBTSUxLIGZyYW1lLgorPC90Pgor
Cis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19mcmFtZV9zeW1ib2xzIgorIHRpdGxlPSJPcmRlciBv
ZiB0aGUgc3ltYm9scyBpbiBhbiBpbmRpdmlkdWFsIFNJTEsgZnJhbWUiPgorPHR0Y29sIGFsaWdu
PSJjZW50ZXIiPlN5bWJvbChzKTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+UERGKHMp
PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0iY2VudGVyIj5Db25kaXRpb248L3R0Y29sPgorCis8Yz5T
dGVyZW8gUHJlZGljdGlvbiBXZWlnaHRzPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX3N0ZXJl
b19wcmVkX3BkZnMiLz48L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfc3RlcmVvX3ByZWQiLz48
L2M+CisKKzxjPk1pZC1vbmx5IEZsYWc8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbWlkX29u
bHlfcGRmIi8+PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX21pZF9vbmx5X2ZsYWciLz48L2M+
CisKKzxjPkZyYW1lIFR5cGU8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWVfdHlwZSIv
PjwvYz4KKzxjLz4KKworPGM+U3ViZnJhbWUgR2FpbnM8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNp
bGtfZ2FpbnMiLz48L2M+Cis8Yy8+CisKKzxjPk5vcm1hbGl6ZWQgTFNGIFN0YWdlLTEgSW5kZXg8
L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFnZTFfcGRmcyIvPjwvYz4KKzxjLz4K
KworPGM+Tm9ybWFsaXplZCBMU0YgU3RhZ2UtMiBSZXNpZHVhbDwvYz4KKzxjPjx4cmVmIHRhcmdl
dD0ic2lsa19ubHNmX3N0YWdlMiIvPjwvYz4KKzxjLz4KKworPGM+Tm9ybWFsaXplZCBMU0YgSW50
ZXJwb2xhdGlvbiBXZWlnaHQ8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9pbnRlcnBf
cGRmIi8+PC9jPgorPGM+MjAmbmJzcDttcyBmcmFtZTwvYz4KKworPGM+UHJpbWFyeSBQaXRjaCBM
YWc8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbHRwX2xhZ3MiLz48L2M+Cis8Yz5Wb2ljZWQg
ZnJhbWU8L2M+CisKKzxjPlN1YmZyYW1lIFBpdGNoIENvbnRvdXI8L2M+Cis8Yz48eHJlZiB0YXJn
ZXQ9InNpbGtfcGl0Y2hfY29udG91cl9wZGZzIi8+PC9jPgorPGM+Vm9pY2VkIGZyYW1lPC9jPgor
Cis8Yz5QZXJpb2RpY2l0eSBJbmRleDwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19wZXJpbmRl
eF9wZGYiLz48L2M+Cis8Yz5Wb2ljZWQgZnJhbWU8L2M+CisKKzxjPkxUUCBGaWx0ZXI8L2M+Cis8
Yz48eHJlZiB0YXJnZXQ9InNpbGtfbHRwX2ZpbHRlcl9wZGZzIi8+PC9jPgorPGM+Vm9pY2VkIGZy
YW1lPC9jPgorCis8Yz5MVFAgU2NhbGluZzwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19sdHBf
c2NhbGluZ19wZGYiLz48L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbHRwX3NjYWxpbmciLz48
L2M+CisKKzxjPkxDRyBTZWVkPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX3NlZWRfcGRmIi8+
PC9jPgorPGMvPgorCis8Yz5FeGNpdGF0aW9uIFJhdGUgTGV2ZWw8L2M+Cis8Yz48eHJlZiB0YXJn
ZXQ9InNpbGtfcmF0ZV9sZXZlbF9wZGZzIi8+PC9jPgorPGMvPgorCis8Yz5FeGNpdGF0aW9uIFB1
bHNlIENvdW50czwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19wdWxzZV9jb3VudF9wZGZzIi8+
PC9jPgorPGMvPgorCis8Yz5FeGNpdGF0aW9uIFB1bHNlIExvY2F0aW9uczwvYz4KKzxjPjx4cmVm
IHRhcmdldD0ic2lsa19wdWxzZV9sb2NhdGlvbnMiLz48L2M+Cis8Yz5Ob24temVybyBwdWxzZSBj
b3VudDwvYz4KKworPGM+RXhjaXRhdGlvbiBMU0JzPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxr
X3NoZWxsX2xzYl9wZGYiLz48L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfcHVsc2VfY291bnRz
Ii8+PC9jPgorCis8Yz5FeGNpdGF0aW9uIFNpZ25zPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxr
X3NpZ25fcGRmcyIvPjwvYz4KKzxjLz4KKworPC90ZXh0dGFibGU+CisKKzxzZWN0aW9uIGFuY2hv
cj0ic2lsa19zdGVyZW9fcHJlZCIgdG9jPSJpbmNsdWRlIgorIHRpdGxlPSJTdGVyZW8gUHJlZGlj
dGlvbiBXZWlnaHRzIj4KKzx0PgorQSBTSUxLIGZyYW1lIGNvcnJlc3BvbmRpbmcgdG8gdGhlIG1p
ZCBjaGFubmVsIG9mIGEgc3RlcmVvIE9wdXMgZnJhbWUgYmVnaW5zCisgd2l0aCBhIHBhaXIgb2Yg
c2lkZSBjaGFubmVsIHByZWRpY3Rpb24gd2VpZ2h0cywgZGVzaWduZWQgc3VjaCB0aGF0IHplcm9z
CisgaW5kaWNhdGUgbm9ybWFsIG1pZC1zaWRlIGNvdXBsaW5nLgorU2luY2UgdGhlc2Ugd2VpZ2h0
cyBjYW4gY2hhbmdlIG9uIGV2ZXJ5IGZyYW1lLCB0aGUgZmlyc3QgcG9ydGlvbiBvZiBlYWNoIGZy
YW1lCisgbGluZWFybHkgaW50ZXJwb2xhdGVzIGJldHdlZW4gdGhlIHByZXZpb3VzIHdlaWdodHMg
YW5kIHRoZSBjdXJyZW50IG9uZXMsIHVzaW5nCisgemVyb3MgZm9yIHRoZSBwcmV2aW91cyB3ZWln
aHRzIGlmIG5vbmUgYXJlIGF2YWlsYWJsZS4KK1RoZXNlIHByZWRpY3Rpb24gd2VpZ2h0cyBhcmUg
bmV2ZXIgaW5jbHVkZWQgaW4gYSBtb25vIE9wdXMgZnJhbWUsIGFuZCB0aGUKKyBwcmV2aW91cyB3
ZWlnaHRzIGFyZSByZXNldCB0byB6ZXJvcyBvbiBhbnkgdHJhbnNpdGlvbiBmcm9tIG1vbm8gdG8g
c3RlcmVvLgorVGhleSBhcmUgYWxzbyBub3QgaW5jbHVkZWQgaW4gYW4gTEJSUiBmcmFtZSBmb3Ig
dGhlIHNpZGUgY2hhbm5lbCwgZXZlbiBpZiB0aGUKKyBMQlJSIGZsYWdzIGluZGljYXRlIHRoZSBj
b3JyZXNwb25kaW5nIG1pZCBjaGFubmVsIHdhcyBub3QgY29kZWQuCitJbiB0aGF0IGNhc2UsIHRo
ZSBwcmV2aW91cyB3ZWlnaHRzIGFyZSB1c2VkLCBhZ2FpbiBzdWJzdGl0dXRpbmcgaW4gemVyb3Mg
aWYgbm8KKyBwcmV2aW91cyB3ZWlnaHRzIGFyZSBhdmFpbGFibGUgc2luY2UgdGhlIGxhc3QgZGVj
b2RlciByZXNldAorIChzZWUgPHhyZWYgdGFyZ2V0PSJkZWNvZGVyLXJlc2V0Ii8+KS4KKzwvdD4K
KworPHQ+CitUbyBzdW1tYXJpemUsIHRoZXNlIHdlaWdodHMgYXJlIGNvZGVkIGlmIGFuZCBvbmx5
IGlmCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5UaGlzIGlzIGEgc3RlcmVvIE9wdXMgZnJh
bWUgKDx4cmVmIHRhcmdldD0idG9jX2J5dGUiLz4pLCBhbmQ8L3Q+Cis8dD5UaGUgY3VycmVudCBT
SUxLIGZyYW1lIGNvcnJlc3BvbmRzIHRvIHRoZSBtaWQgY2hhbm5lbC48L3Q+Cis8L2xpc3Q+Cis8
L3Q+CisKKzx0PgorVGhlIHByZWRpY3Rpb24gd2VpZ2h0cyBhcmUgY29kZWQgaW4gdGhyZWUgc2Vw
YXJhdGUgcGllY2VzLCB3aGljaCBhcmUgZGVjb2RlZAorIGJ5IHNpbGtfc3RlcmVvX2RlY29kZV9w
cmVkKCkgKGRlY29kZV9zdGVyZW9fcHJlZC5jKS4KK1RoZSBmaXJzdCBwaWVjZSBqb2ludGx5IGNv
ZGVzIHRoZSBoaWdoLW9yZGVyIHBhcnQgb2YgYSB0YWJsZSBpbmRleCBmb3IgYm90aAorIHdlaWdo
dHMuCitUaGUgc2Vjb25kIHBpZWNlIGNvZGVzIHRoZSBsb3ctb3JkZXIgcGFydCBvZiBlYWNoIHRh
YmxlIGluZGV4LgorVGhlIHRoaXJkIHBpZWNlIGNvZGVzIGFuIG9mZnNldCB1c2VkIHRvIGxpbmVh
cmx5IGludGVycG9sYXRlIGJldHdlZW4gdGFibGUKKyBpbmRpY2VzLgorVGhlIGRldGFpbHMgYXJl
IGFzIGZvbGxvd3MuCis8L3Q+CisKKzx0PgorTGV0IG4gYmUgYW4gaW5kZXggZGVjb2RlZCB3aXRo
IHRoZSAyNS1lbGVtZW50IHN0YWdlLTEgUERGIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX3N0ZXJl
b19wcmVkX3BkZnMiLz4uCitUaGVuIGxldCBpMCBhbmQgaTEgYmUgaW5kaWNlcyBkZWNvZGVkIHdp
dGggdGhlIHN0YWdlLTIgYW5kIHN0YWdlLTMgUERGcyBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19z
dGVyZW9fcHJlZF9wZGZzIi8+LCByZXNwZWN0aXZlbHksIGFuZCBsZXQgaTIgYW5kIGkzCisgYmUg
dHdvIG1vcmUgaW5kaWNlcyBkZWNvZGVkIHdpdGggdGhlIHN0YWdlLTIgYW5kIHN0YWdlLTMgUERG
cywgYWxsIGluIHRoYXQKKyBvcmRlci4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtf
c3RlcmVvX3ByZWRfcGRmcyIgdGl0bGU9IlN0ZXJlbyBXZWlnaHQgUERGcyI+Cis8dHRjb2wgYWxp
Z249ImxlZnQiPlN0YWdlPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0ibGVmdCI+UERGPC90dGNvbD4K
KzxjPlN0YWdlIDE8L2M+Cis8Yz57NywgIDIsICAxLCAgMSwgIDEsCisgICAxMCwgMjQsICA4LCAg
MSwgIDEsCisgICAgMywgMjMsIDkyLCAyMywgIDMsCisgICAgMSwgIDEsICA4LCAyNCwgMTAsCisg
ICAgMSwgIDEsICAxLCAgMiwgIDd9LzI1NjwvYz4KKworPGM+U3RhZ2UgMjwvYz4KKzxjPns4NSwg
ODYsIDg1fS8yNTY8L2M+CisKKzxjPlN0YWdlIDM8L2M+Cis8Yz57NTEsIDUxLCA1MiwgNTEsIDUx
fS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitUaGVuIHVzZSBuLCBpMCwgYW5kIGkyIHRv
IGZvcm0gdHdvIHRhYmxlIGluZGljZXMsIHdpMCBhbmQgd2kxLCBhY2NvcmRpbmcgdG8KKzxmaWd1
cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3dp
MCA9IGkwICsgMyoobi81KQord2kxID0gaTIgKyAzKihuJTUpCitdXT48L2FydHdvcms+Cis8L2Zp
Z3VyZT4KKyB3aGVyZSB0aGUgZGl2aXNpb24gaXMgaW50ZWdlciBkaXZpc2lvbi4KK1RoZSByYW5n
ZSBvZiB0aGVzZSBpbmRpY2VzIGlzIDAgdG8gMTQsIGluY2x1c2l2ZS4KK0xldCB3W2ldIGJlIHRo
ZSBpJ3RoIHdlaWdodCBmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19zdGVyZW9fd2VpZ2h0c190YWJs
ZSIvPi4KK1RoZW4gdGhlIHR3byBwcmVkaWN0aW9uIHdlaWdodHMsIHcwX1ExMyBhbmQgdzFfUTEz
LCBhcmUKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48
IVtDREFUQVsKK3cxX1ExMyA9IHdfUTEzW3dpMV0KKyAgICAgICAgICsgKCh3X1ExM1t3aTErMV0g
LSB3X1ExM1t3aTFdKSo2NTU0KSA+PiAxNikqKDIqaTMgKyAxKQorCit3MF9RMTMgPSB3X1ExM1t3
aTBdCisgICAgICAgICArICgod19RMTNbd2kwKzFdIC0gd19RMTNbd2kwXSkqNjU1NCkgPj4gMTYp
KigyKmkxICsgMSkKKyAgICAgICAgIC0gdzFfUTEzCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4K
K04uYi4sIHcxX1ExMyBpcyBjb21wdXRlZCBmaXJzdCBoZXJlLCBiZWNhdXNlIHcwX1ExMyBkZXBl
bmRzIG9uIGl0LgorVGhlIGNvbnN0YW50IDY1NTQgaXMgYXBwcm94aW1hdGVseSAwLjEgaW4gUTE2
LgorQWx0aG91Z2ggd2kwIGFuZCB3aTEgb25seSBoYXZlIDE1IHBvc3NpYmxlIHZhbHVlcywKKyA8
eHJlZiB0YXJnZXQ9InNpbGtfc3RlcmVvX3dlaWdodHNfdGFibGUiLz4gY29udGFpbnMgMTYgZW50
cmllcyB0byBhbGxvdworIGludGVycG9sYXRpb24gYmV0d2VlbiBlbnRyeSB3aTAgYW5kICh3aTAm
bmJzcDsrJm5ic3A7MSkgKGFuZCBsaWtld2lzZSBmb3Igd2kxKS4KKzwvdD4KKworPHRleHR0YWJs
ZSBhbmNob3I9InNpbGtfc3RlcmVvX3dlaWdodHNfdGFibGUiCisgdGl0bGU9IlN0ZXJlbyBXZWln
aHQgVGFibGUiPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5JbmRleDwvdHRjb2w+Cis8dHRjb2wgYWxp
Z249InJpZ2h0Ij5XZWlnaHQgKFExMyk8L3R0Y29sPgorIDxjPjA8L2M+IDxjPi0xMzczMjwvYz4K
KyA8Yz4xPC9jPiA8Yz4tMTAwNTA8L2M+CisgPGM+MjwvYz4gIDxjPi04MjY2PC9jPgorIDxjPjM8
L2M+ICA8Yz4tNzUyNjwvYz4KKyA8Yz40PC9jPiAgPGM+LTY1MDA8L2M+CisgPGM+NTwvYz4gIDxj
Pi01MDAwPC9jPgorIDxjPjY8L2M+ICA8Yz4tMjk1MDwvYz4KKyA8Yz43PC9jPiAgIDxjPi04MjA8
L2M+CisgPGM+ODwvYz4gICAgPGM+ODIwPC9jPgorIDxjPjk8L2M+ICAgPGM+Mjk1MDwvYz4KKzxj
PjEwPC9jPiAgIDxjPjUwMDA8L2M+Cis8Yz4xMTwvYz4gICA8Yz42NTAwPC9jPgorPGM+MTI8L2M+
ICAgPGM+NzUyNjwvYz4KKzxjPjEzPC9jPiAgIDxjPjgyNjY8L2M+Cis8Yz4xNDwvYz4gIDxjPjEw
MDUwPC9jPgorPGM+MTU8L2M+ICA8Yz4xMzczMjwvYz4KKzwvdGV4dHRhYmxlPgorCis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19taWRfb25seV9mbGFnIiB0b2M9ImluY2x1ZGUi
IHRpdGxlPSJNaWQtb25seSBGbGFnIj4KKzx0PgorQSBmbGFnIGFwcGVhcnMgYWZ0ZXIgdGhlIHN0
ZXJlbyBwcmVkaWN0aW9uIHdlaWdodHMgdGhhdCBpbmRpY2F0ZXMgaWYgb25seSB0aGUKKyBtaWQg
Y2hhbm5lbCBpcyBjb2RlZCBmb3IgdGhpcyB0aW1lIGludGVydmFsLgorSXQgYXBwZWFycyBvbmx5
IHdoZW4KKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PlRoaXMgaXMgYSBzdGVyZW8gT3B1cyBm
cmFtZSAoc2VlIDx4cmVmIHRhcmdldD0idG9jX2J5dGUiLz4pLDwvdD4KKzx0PlRoZSBjdXJyZW50
IFNJTEsgZnJhbWUgY29ycmVzcG9uZHMgdG8gdGhlIG1pZCBjaGFubmVsLCBhbmQ8L3Q+Cis8dD5F
aXRoZXIKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PlRoaXMgaXMgYSByZWd1bGFyIFNJTEsg
ZnJhbWUgd2hlcmUgdGhlIFZBRCBmbGFncworIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2hlYWRl
cl9iaXRzIi8+KSBpbmRpY2F0ZSB0aGF0IHRoZSBjb3JyZXNwb25kaW5nIHNpZGUKKyBjaGFubmVs
IGlzIG5vdCBhY3RpdmUuPC90PgorPHQ+CitUaGlzIGlzIGFuIExCUlIgZnJhbWUgd2hlcmUgdGhl
IExCUlIgZmxhZ3MKKyAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19oZWFkZXJfYml0cyIvPiBhbmQg
PHhyZWYgdGFyZ2V0PSJzaWxrX2xicnJfZmxhZ3MiLz4pCisgaW5kaWNhdGUgdGhhdCB0aGUgY29y
cmVzcG9uZGluZyBzaWRlIGNoYW5uZWwgaXMgbm90IGNvZGVkLgorPC90PgorPC9saXN0PgorPC90
PgorPC9saXN0PgorSXQgaXMgb21pdHRlZCB3aGVuIHRoZXJlIGFyZSBubyBzdGVyZW8gd2VpZ2h0
cywgZm9yIGFsbCBvZiB0aGUgc2FtZSByZWFzb25zLgorSXQgaXMgYWxzbyBvbWl0dGVkIGZvciBh
IHJlZ3VsYXIgU0lMSyBmcmFtZSB3aGVuIHRoZSBWQUQgZmxhZyBvZiB0aGUKKyBjb3JyZXNwb25k
aW5nIHNpZGUgY2hhbm5lbCBmcmFtZSBpcyBzZXQgKGluZGljYXRpbmcgaXQgaXMgYWN0aXZlKS4K
K1RoZSBzaWRlIGNoYW5uZWwgbXVzdCBiZSBjb2RlZCBpbiB0aGlzIGNhc2UsIG1ha2luZyB0aGUg
bWlkLW9ubHkgZmxhZworIHJlZHVuZGFudC4KK0l0IGlzIGFsc28gb21pdHRlZCBmb3IgYW4gTEJS
UiBmcmFtZSB3aGVuIHRoZSBjb3JyZXNwb25kaW5nIExCUlIgZmxhZ3MKKyBpbmRpY2F0ZSB0aGUg
c2lkZSBjaGFubmVsIGlzIGNvZGVkLgorPC90PgorCis8dD4KK1doZW4gdGhlIGZsYWcgaXMgcHJl
c2VudCwgdGhlIGRlY29kZXIgcmVhZHMgYSBzaW5nbGUgdmFsdWUgdXNpbmcgdGhlIFBERiBpbgor
IDx4cmVmIHRhcmdldD0ic2lsa19taWRfb25seV9wZGYiLz4sIGFzIGltcGxlbWVudGVkIGluCisg
c2lsa19zdGVyZW9fZGVjb2RlX21pZF9vbmx5KCkgKGRlY29kZV9zdGVyZW9fcHJlZC5jKS4KK0lm
IHRoZSBmbGFnIGlzIHNldCwgdGhlbiB0aGVyZSBpcyBubyBjb3JyZXNwb25kaW5nIFNJTEsgZnJh
bWUgZm9yIHRoZSBzaWRlCisgY2hhbm5lbCwgdGhlIGVudGlyZSBkZWNvZGluZyBwcm9jZXNzIGZv
ciB0aGUgc2lkZSBjaGFubmVsIGlzIHNraXBwZWQsIGFuZAorIHplcm9zIGFyZSBmZWQgdG8gdGhl
IHN0ZXJlbyB1bm1peGluZyBwcm9jZXNzIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNpbGtfc3RlcmVv
X3VubWl4aW5nIi8+KSBpbnN0ZWFkLgorQXMgc3RhdGVkIGFib3ZlLCBMQlJSIGZyYW1lcyBzdGls
bCBpbmNsdWRlIHRoaXMgZmxhZyB3aGVuIHRoZSBMQlJSIGZsYWcKKyBpbmRpY2F0ZXMgdGhhdCB0
aGUgc2lkZSBjaGFubmVsIGlzIG5vdCBjb2RlZC4KK0luIHRoYXQgY2FzZSwgaWYgdGhpcyBmbGFn
IGlzIHplcm8gKGluZGljYXRpbmcgdGhhdCB0aGVyZSBzaG91bGQgYmUgYSBzaWRlCisgY2hhbm5l
bCksIHRoZW4gUGFja2V0IExvc3MgQ29uY2VhbG1lbnQgKFBMQywgc2VlCisgPHhyZWYgdGFyZ2V0
PSJQYWNrZXQgTG9zcyBDb25jZWFsbWVudCIvPikgU0hPVUxEIGJlIGludm9rZWQgdG8gcmVjb3Zl
ciBhCisgc2lkZSBjaGFubmVsIHNpZ25hbC4KK090aGVyd2lzZSwgdGhlIHN0ZXJlbyBpbWFnZSB3
aWxsIGNvbGxhcHNlLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19taWRfb25seV9w
ZGYiIHRpdGxlPSJNaWQtb25seSBGbGFnIFBERiI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwv
dHRjb2w+Cis8Yz57MTkyLCA2NH0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzwvc2VjdGlvbj4K
KworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2ZyYW1lX3R5cGUiIHRvYz0iaW5jbHVkZSIgdGl0bGU9
IkZyYW1lIFR5cGUiPgorPHQ+CitFYWNoIFNJTEsgZnJhbWUgY29udGFpbnMgYSBzaW5nbGUgImZy
YW1lIHR5cGUiIHN5bWJvbCB0aGF0IGpvaW50bHkgY29kZXMgdGhlCisgc2lnbmFsIHR5cGUgYW5k
IHF1YW50aXphdGlvbiBvZmZzZXQgdHlwZSBvZiB0aGUgY29ycmVzcG9uZGluZyBmcmFtZS4KK0lm
IHRoZSBjdXJyZW50IGZyYW1lIGlzIGEgcmVndWxhciBTSUxLIGZyYW1lIHdob3NlIFZBRCBiaXQg
d2FzIG5vdCBzZXQgKGFuCisgImluYWN0aXZlIiBmcmFtZSksIHRoZW4gdGhlIGZyYW1lIHR5cGUg
c3ltYm9sIHRha2VzIG9uIGEgdmFsdWUgb2YgZWl0aGVyIDAgb3IKKyAxIGFuZCBpcyBkZWNvZGVk
IHVzaW5nIHRoZSBmaXJzdCBQREYgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGVfcGRm
cyIvPi4KK0lmIHRoZSBmcmFtZSBpcyBhbiBMQlJSIGZyYW1lIG9yIGEgcmVndWxhciBTSUxLIGZy
YW1lIHdob3NlIFZBRCBmbGFnIHdhcyBzZXQKKyAoYW4gImFjdGl2ZSIgZnJhbWUpLCB0aGVuIHRo
ZSB2YWx1ZSBvZiB0aGUgc3ltYm9sIG1heSByYW5nZSBmcm9tIDIgdG8gNSwKKyBpbmNsdXNpdmUs
IGFuZCBpcyBkZWNvZGVkIHVzaW5nIHRoZSBzZWNvbmQgUERGIGluCisgPHhyZWYgdGFyZ2V0PSJz
aWxrX2ZyYW1lX3R5cGVfcGRmcyIvPi4KKzx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV90eXBlX3Rh
YmxlIi8+IHRyYW5zbGF0ZXMgYmV0d2VlbiB0aGUgdmFsdWUgb2YgdGhlCisgZnJhbWUgdHlwZSBz
eW1ib2wgYW5kIHRoZSBjb3JyZXNwb25kaW5nIHNpZ25hbCB0eXBlIGFuZCBxdWFudGl6YXRpb24g
b2Zmc2V0CisgdHlwZS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfZnJhbWVfdHlw
ZV9wZGZzIiB0aXRsZT0iRnJhbWUgVHlwZSBQREZzIj4KKzx0dGNvbD5WQUQgRmxhZzwvdHRjb2w+
Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPkluYWN0aXZlPC9jPiA8Yz57MjYsIDIzMCwgMCwgMCwg
MCwgMH0vMjU2PC9jPgorPGM+QWN0aXZlPC9jPiAgIDxjPnswLCAwLCAyNCwgNzQsIDE0OCwgMTB9
LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19mcmFtZV90
eXBlX3RhYmxlIgorIHRpdGxlPSJTaWduYWwgVHlwZSBhbmQgUXVhbnRpemF0aW9uIE9mZnNldCBU
eXBlIGZyb20gRnJhbWUgVHlwZSI+Cis8dHRjb2w+RnJhbWUgVHlwZTwvdHRjb2w+Cis8dHRjb2w+
U2lnbmFsIFR5cGU8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+UXVhbnRpemF0aW9uIE9m
ZnNldCBUeXBlPC90dGNvbD4KKzxjPjA8L2M+IDxjPkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+Cis8
Yz4xPC9jPiA8Yz5JbmFjdGl2ZTwvYz4gPGM+SGlnaDwvYz4KKzxjPjI8L2M+IDxjPlVudm9pY2Vk
PC9jPiA8Yz5Mb3c8L2M+Cis8Yz4zPC9jPiA8Yz5VbnZvaWNlZDwvYz4gPGM+SGlnaDwvYz4KKzxj
PjQ8L2M+IDxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+Cis8Yz41PC9jPiA8Yz5Wb2ljZWQ8L2M+
ICAgPGM+SGlnaDwvYz4KKzwvdGV4dHRhYmxlPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFu
Y2hvcj0ic2lsa19nYWlucyIgdG9jPSJpbmNsdWRlIiB0aXRsZT0iU3ViZnJhbWUgR2FpbnMiPgor
PHQ+CitBIHNlcGFyYXRlIHF1YW50aXphdGlvbiBnYWluIGlzIGNvZGVkIGZvciBlYWNoIDUmbmJz
cDttcyBzdWJmcmFtZS4KK1RoZXNlIGdhaW5zIGNvbnRyb2wgdGhlIHN0ZXAgc2l6ZSBiZXR3ZWVu
IHF1YW50aXphdGlvbiBsZXZlbHMgb2YgdGhlIGV4Y2l0YXRpb24KKyBzaWduYWwgYW5kLCB0aGVy
ZWZvcmUsIHRoZSBxdWFsaXR5IG9mIHRoZSByZWNvbnN0cnVjdGlvbi4KK1RoZXkgYXJlIGluZGVw
ZW5kZW50IG9mIGFuZCB1bnJlbGF0ZWQgdG8gdGhlIHBpdGNoIGNvbnRvdXJzIGNvZGVkIGZvciB2
b2ljZWQKKyBmcmFtZXMuCitUaGUgcXVhbnRpemF0aW9uIGdhaW5zIGFyZSB0aGVtc2VsdmVzIHVu
aWZvcm1seSBxdWFudGl6ZWQgdG8gNiZuYnNwO2JpdHMgb24gYQorIGxvZyBzY2FsZSwgZ2l2aW5n
IHRoZW0gYSByZXNvbHV0aW9uIG9mIGFwcHJveGltYXRlbHkgMS4zNjkmbmJzcDtkQiBhbmQgYSBy
YW5nZQorIG9mIGFwcHJveGltYXRlbHkgMS45NCZuYnNwO2RCIHRvIDg4LjIxJm5ic3A7ZEIuCis8
L3Q+Cis8dD4KK1RoZSBzdWJmcmFtZSBnYWlucyBhcmUgZWl0aGVyIGNvZGVkIGluZGVwZW5kZW50
bHksIG9yIHJlbGF0aXZlIHRvIHRoZSBnYWluIGZyb20KKyB0aGUgbW9zdCByZWNlbnQgY29kZWQg
c3ViZnJhbWUgaW4gdGhlIHNhbWUgY2hhbm5lbC4KK0luZGVwZW5kZW50IGNvZGluZyBpcyB1c2Vk
IGlmIGFuZCBvbmx5IGlmCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD4KK1RoaXMgaXMgdGhl
IGZpcnN0IHN1YmZyYW1lIGluIHRoZSBjdXJyZW50IFNJTEsgZnJhbWUsIGFuZAorPC90PgorPHQ+
RWl0aGVyCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD4KK1RoaXMgaXMgdGhlIGZpcnN0IFNJ
TEsgZnJhbWUgb2YgaXRzIHR5cGUgKExCUlIgb3IgcmVndWxhcikgZm9yIHRoaXMgY2hhbm5lbCBp
bgorIHRoZSBjdXJyZW50IE9wdXMgZnJhbWUsIG9yCisgPC90PgorPHQ+CitUaGUgcHJldmlvdXMg
U0lMSyBmcmFtZSBvZiB0aGUgc2FtZSB0eXBlIChMQlJSIG9yIHJlZ3VsYXIpIGZvciB0aGlzIGNo
YW5uZWwgaW4KKyB0aGUgc2FtZSBPcHVzIGZyYW1lIHdhcyBub3QgY29kZWQuCis8L3Q+Cis8L2xp
c3Q+Cis8L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzx0PgorSW4gYW4gaW5kZXBlbmRlbnRseSBjb2Rl
ZCBzdWJmcmFtZSBnYWluLCB0aGUgMyBtb3N0IHNpZ25pZmljYW50IGJpdHMgb2YgdGhlCisgcXVh
bnRpemF0aW9uIGdhaW4gYXJlIGRlY29kZWQgdXNpbmcgYSBQREYgc2VsZWN0ZWQgZnJvbQorIDx4
cmVmIHRhcmdldD0ic2lsa19pbmRlcGVuZGVudF9nYWluX21zYl9wZGZzIi8+IGJhc2VkIG9uIHRo
ZSBkZWNvZGVkIHNpZ25hbAorIHR5cGUgKHNlZSA8eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWVfdHlw
ZSIvPikuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX2luZGVwZW5kZW50X2dhaW5f
bXNiX3BkZnMiCisgdGl0bGU9IlBERnMgZm9yIEluZGVwZW5kZW50IFF1YW50aXphdGlvbiBHYWlu
IE1TQiBDb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5TaWduYWwgVHlwZTwvdHRjb2w+Cis8
dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+ezMyLCAx
MTIsIDY4LCAyOSwgMTIsICAxLCAgMSwgMX0vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+ICA8Yz57
MiwgIDE3LCA0NSwgNjAsIDYyLCA0NywgMTksIDR9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICAg
PGM+ezEsICAgMywgMjYsIDcxLCA5NCwgNTAsICA5LCAyfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4K
KworPHQ+CitUaGUgMyBsZWFzdCBzaWduaWZpY2FudCBiaXRzIGFyZSBkZWNvZGVkIHVzaW5nIGEg
dW5pZm9ybSBQREY6Cis8L3Q+Cis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19pbmRlcGVuZGVudF9n
YWluX2xzYl9wZGYiCisgdGl0bGU9IlBERiBmb3IgSW5kZXBlbmRlbnQgUXVhbnRpemF0aW9uIEdh
aW4gTFNCIENvZGluZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz57MzIs
IDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+
CitUaGVzZSA2IGJpdHMgYXJlIGNvbWJpbmVkIHRvIGZvcm0gYSB2YWx1ZSwgZ2Fpbl9pbmRleCwg
YmV0d2VlbiAwIGFuZCA2My4KK1doZW4gdGhlIGdhaW4gZm9yIHRoZSBwcmV2aW91cyBzdWJmcmFt
ZSBpcyBhdmFpbGFibGUsIHRoZW4gdGhlIGN1cnJlbnQgZ2FpbiBpcworIGxpbWl0ZWQgYXMgZm9s
bG93czoKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48
IVtDREFUQVsKK2xvZ19nYWluID0gbWF4KGdhaW5faW5kZXgsIHByZXZpb3VzX2xvZ19nYWluIC0g
MTYpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhpcyBtYXkgaGVscCBzb21lIGltcGxl
bWVudGF0aW9ucyBsaW1pdCB0aGUgY2hhbmdlIGluIHByZWNpc2lvbiBvZiB0aGVpcgorIGludGVy
bmFsIExUUCBoaXN0b3J5LgorVGhlIGluZGljZXMgd2hpY2ggdGhpcyBjbGFtcCBhcHBsaWVzIHRv
IGNhbm5vdCBzaW1wbHkgYmUgcmVtb3ZlZCBmcm9tIHRoZQorIGNvZGVib29rLCBiZWNhdXNlIHBy
ZXZpb3VzX2xvZ19nYWluIHdpbGwgbm90IGJlIGF2YWlsYWJsZSBhZnRlciBwYWNrZXQgbG9zcy4K
K1RoZSBjbGFtcGluZyBpcyBza2lwcGVkIGFmdGVyIGEgZGVjb2RlciByZXNldCwgYW5kIGluIHRo
ZSBzaWRlIGNoYW5uZWwgaWYgdGhlCisgcHJldmlvdXMgZnJhbWUgaW4gdGhlIHNpZGUgY2hhbm5l
bCB3YXMgbm90IGNvZGVkLCBzaW5jZSB0aGVyZSBpcyBubyB2YWx1ZSBmb3IKKyBwcmV2aW91c19s
b2dfZ2FpbiBhdmFpbGFibGUuCitJdCBNQVkgYWxzbyBiZSBza2lwcGVkIGFmdGVyIHBhY2tldCBs
b3NzLgorPC90PgorCis8dD4KK0ZvciBzdWJmcmFtZXMgd2hpY2ggZG8gbm90IGhhdmUgYW4gaW5k
ZXBlbmRlbnQgZ2FpbiAoaW5jbHVkaW5nIHRoZSBmaXJzdAorIHN1YmZyYW1lIG9mIGZyYW1lcyBu
b3QgbGlzdGVkIGFzIHVzaW5nIGluZGVwZW5kZW50IGNvZGluZyBhYm92ZSksIHRoZQorIHF1YW50
aXphdGlvbiBnYWluIGlzIGNvZGVkIHJlbGF0aXZlIHRvIHRoZSBnYWluIGZyb20gdGhlIHByZXZp
b3VzIHN1YmZyYW1lIChpbgorIHRoZSBzYW1lIGNoYW5uZWwpLgorVGhlIFBERiBpbiA8eHJlZiB0
YXJnZXQ9InNpbGtfZGVsdGFfZ2Fpbl9wZGYiLz4geWllbGRzIGEgZGVsdGFfZ2Fpbl9pbmRleCB2
YWx1ZQorIGJldHdlZW4gMCBhbmQgNDAsIGluY2x1c2l2ZS4KKzwvdD4KKzx0ZXh0dGFibGUgYW5j
aG9yPSJzaWxrX2RlbHRhX2dhaW5fcGRmIgorIHRpdGxlPSJQREYgZm9yIERlbHRhIFF1YW50aXph
dGlvbiBHYWluIENvZGluZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz57
NiwgICA1LCAgMTEsICAzMSwgMTMyLCAgMjEsICAgOCwgICA0LAorICAgIDMsICAgMiwgICAyLCAg
IDIsICAgMSwgICAxLCAgIDEsICAgMSwKKyAgICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwg
ICAxLCAgIDEsCisgICAgMSwgICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAxLAorICAg
IDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAxfS8yNTY8L2M+Cis8L3Rl
eHR0YWJsZT4KKzx0PgorVGhlIGZvbGxvd2luZyBmb3JtdWxhIHRyYW5zbGF0ZXMgdGhpcyBpbmRl
eCBpbnRvIGEgcXVhbnRpemF0aW9uIGdhaW4gZm9yIHRoZQorIGN1cnJlbnQgc3ViZnJhbWUgdXNp
bmcgdGhlIGdhaW4gZnJvbSB0aGUgcHJldmlvdXMgc3ViZnJhbWU6Cis8ZmlndXJlIGFsaWduPSJj
ZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitsb2dfZ2FpbiA9IGNs
YW1wKDAsIG1heCgyKmRlbHRhX2dhaW5faW5kZXggLSAxNiwKKyAgICAgICAgICAgICAgICAgICBw
cmV2aW91c19sb2dfZ2FpbiArIGRlbHRhX2dhaW5faW5kZXggLSA0KSwgNjMpIC4KK11dPjwvYXJ0
d29yaz4KKzwvZmlndXJlPgorPC90PgorPHQ+CitzaWxrX2dhaW5zX2RlcXVhbnQoKSAoZ2Fpbl9x
dWFudC5jKSBkZXF1YW50aXplcyBsb2dfZ2FpbiBmb3IgdGhlIGsndGggc3ViZnJhbWUKKyBhbmQg
Y29udmVydHMgaXQgaW50byBhIGxpbmVhciBRMTYgc2NhbGUgZmFjdG9yIHZpYQorPGZpZ3VyZSBh
bGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworZ2Fpbl9R
MTZba10gPSBzaWxrX2xvZzJsaW4oKDB4MUQxQzcxKmxvZ19nYWluPj4xNikgKyAyMDkwKQorXV0+
PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8dD4KK1RoZSBmdW5jdGlvbiBzaWxrX2xvZzJs
aW4oKSAobG9nMmxpbi5jKSBjb21wdXRlcyBhbiBhcHByb3hpbWF0aW9uIG9mCisgMioqKGluTG9n
X1E3LzEyOC4wKSwgd2hlcmUgaW5Mb2dfUTcgaXMgaXRzIFE3IGlucHV0LgorTGV0IGkgPSBpbkxv
Z19RNyZndDsmZ3Q7NyBiZSB0aGUgaW50ZWdlciBwYXJ0IG9mIGluTG9nUTcgYW5kCisgZiA9IGlu
TG9nX1E3JmFtcDsxMjcgYmUgdGhlIGZyYWN0aW9uYWwgcGFydC4KK1RoZW4KKzxmaWd1cmUgYWxp
Z249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKygxPDxpKSAr
ICgoLTE3NCpmKigxMjgtZik+PjE2KStmKSooKDE8PGkpPj43KQorXV0+PC9hcnR3b3JrPgorPC9m
aWd1cmU+CisgeWllbGRzIHRoZSBhcHByb3hpbWF0ZSBleHBvbmVudGlhbC4KK1RoZSBmaW5hbCBR
MTYgZ2FpbiB2YWx1ZXMgbGllcyBiZXR3ZWVuIDgxOTIwIGFuZCAxNjg2MTEwMjA4LCBpbmNsdXNp
dmUKKyAocmVwcmVzZW50aW5nIHNjYWxlIGZhY3RvcnMgb2YgMS4yNSB0byAyNTcyOCwgcmVzcGVj
dGl2ZWx5KS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX25sc2Zz
IiB0b2M9ImluY2x1ZGUiIHRpdGxlPSJOb3JtYWxpemVkIExpbmUgU3BlY3RyYWwKKyBGcmVxdWVu
Y3kgKExTRikgYW5kIExpbmVhciBQcmVkaWN0aXZlIENvZGluZyAoTFBDKSBDb2VmZmljaWVudHMi
PgorPHQ+CitBIHNldCBvZiBub3JtYWxpemVkIExpbmUgU3BlY3RyYWwgRnJlcXVlbmN5IChMU0Yp
IGNvZWZmaWNpZW50cyBmb2xsb3cgdGhlCisgcXVhbnRpemF0aW9uIGdhaW5zIGluIHRoZSBiaXRz
dHJlYW0sIGFuZCByZXByZXNlbnQgdGhlIExpbmVhciBQcmVkaWN0aXZlCisgQ29kaW5nIChMUEMp
IGNvZWZmaWNpZW50cyBmb3IgdGhlIGN1cnJlbnQgU0lMSyBmcmFtZS4KK09uY2UgZGVjb2RlZCwg
dGhlIG5vcm1hbGl6ZWQgTFNGcyBmb3JtIGFuIGluY3JlYXNpbmcgbGlzdCBvZiBRMTUgdmFsdWVz
IGJldHdlZW4KKyAwIGFuZCAxLgorVGhlc2UgcmVwcmVzZW50IHRoZSBpbnRlcmxlYXZlZCB6ZXJv
cyBvbiB0aGUgdXBwZXIgaGFsZiBvZiB0aGUgdW5pdCBjaXJjbGUKKyAoYmV0d2VlbiAwIGFuZCBw
aSwgaGVuY2UgIm5vcm1hbGl6ZWQiKSBpbiB0aGUgc3RhbmRhcmQgZGVjb21wb3NpdGlvbgorIDx4
cmVmIHRhcmdldD0ibGluZS1zcGVjdHJhbC1wYWlycyIvPiBvZiB0aGUgTFBDIGZpbHRlciBpbnRv
IGEgc3ltbWV0cmljIHBhcnQKKyBhbmQgYW4gYW50aS1zeW1tZXRyaWMgcGFydCAoUCBhbmQgUSBp
biA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZjJscGMiLz4pLgorQmVjYXVzZSBvZiBub24tbGluZWFy
IGVmZmVjdHMgaW4gdGhlIGRlY29kaW5nIHByb2Nlc3MsIGFuIGltcGxlbWVudGF0aW9uIFNIT1VM
RAorIG1hdGNoIHRoZSBmaXhlZC1wb2ludCBhcml0aG1ldGljIGRlc2NyaWJlZCBpbiB0aGlzIHNl
Y3Rpb24gZXhhY3RseS4KK0FuIGVuY29kZXIgU0hPVUxEIGFsc28gdXNlIHRoZSBzYW1lIHByb2Nl
c3MuCis8L3Q+Cis8dD4KK1RoZSBub3JtYWxpemVkIExTRnMgYXJlIGNvZGVkIHVzaW5nIGEgdHdv
LXN0YWdlIHZlY3RvciBxdWFudGl6ZXIgKFZRKQorICg8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9z
dGFnZTEiLz4gYW5kIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3N0YWdlMiIvPikuCitOQiBhbmQg
TUIgZnJhbWVzIHVzZSBhbiBvcmRlci0xMCBwcmVkaWN0b3IsIHdoaWxlIFdCIGZyYW1lcyB1c2Ug
YW4gb3JkZXItMTYKKyBwcmVkaWN0b3IsIGFuZCB0aHVzIGhhdmUgZGlmZmVyZW50IHNldHMgb2Yg
dGFibGVzLgorQWZ0ZXIgcmVjb25zdHJ1Y3RpbmcgdGhlIG5vcm1hbGl6ZWQgTFNGcworICg8eHJl
ZiB0YXJnZXQ9InNpbGtfbmxzZl9yZWNvbnN0cnVjdGlvbiIvPiksIHRoZSBkZWNvZGVyIHJ1bnMg
dGhlbSB0aHJvdWdoIGEKKyBzdGFiaWxpemF0aW9uIHByb2Nlc3MgKDx4cmVmIHRhcmdldD0ic2ls
a19ubHNmX3N0YWJpbGl6YXRpb24iLz4pLCBpbnRlcnBvbGF0ZXMKKyB0aGVtIGJldHdlZW4gZnJh
bWVzICg8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9pbnRlcnBvbGF0aW9uIi8+KSwgY29udmVydHMg
dGhlbQorIGJhY2sgaW50byBMUEMgY29lZmZpY2llbnRzICg8eHJlZiB0YXJnZXQ9InNpbGtfbmxz
ZjJscGMiLz4pLCBhbmQgdGhlbiBydW5zCisgdGhlbSB0aHJvdWdoIGZ1cnRoZXIgcHJvY2Vzc2Vz
IHRvIGxpbWl0IHRoZSByYW5nZSBvZiB0aGUgY29lZmZpY2llbnRzCisgKDx4cmVmIHRhcmdldD0i
c2lsa19scGNfcmFuZ2VfbGltaXQiLz4pIGFuZCB0aGUgZ2FpbiBvZiB0aGUgZmlsdGVyCisgKDx4
cmVmIHRhcmdldD0ic2lsa19scGNfZ2Fpbl9saW1pdCIvPikuCitBbGwgb2YgdGhpcyBpcyBuZWNl
c3NhcnkgdG8gZW5zdXJlIHRoZSByZWNvbnN0cnVjdGlvbiBwcm9jZXNzIGlzIHN0YWJsZS4KKzwv
dD4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX25sc2Zfc3RhZ2UxIiB0aXRsZT0iTm9ybWFsaXpl
ZCBMU0YgU3RhZ2UgMSBEZWNvZGluZyI+Cis8dD4KK1RoZSBmaXJzdCBWUSBzdGFnZSB1c2VzIGEg
MzItZWxlbWVudCBjb2RlYm9vaywgY29kZWQgd2l0aCBvbmUgb2YgdGhlIFBERnMgaW4KKyA8eHJl
ZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFnZTFfcGRmcyIvPiwgZGVwZW5kaW5nIG9uIHRoZSBhdWRp
byBiYW5kd2lkdGggYW5kCisgdGhlIHNpZ25hbCB0eXBlIG9mIHRoZSBjdXJyZW50IFNJTEsgZnJh
bWUuCitUaGlzIHlpZWxkcyBhIHNpbmdsZSBpbmRleCwgSTEsIGZvciB0aGUgZW50aXJlIGZyYW1l
LCB3aGljaAorPGxpc3Qgc3R5bGU9Im51bWJlcnMiPgorPHQ+SW5kZXhlcyBhbiBlbGVtZW50IGlu
IGEgY29hcnNlIGNvZGVib29rLDwvdD4KKzx0PlNlbGVjdHMgdGhlIFBERnMgZm9yIHRoZSBzZWNv
bmQgc3RhZ2Ugb2YgdGhlIFZRLCBhbmQ8L3Q+Cis8dD5TZWxlY3RzIHRoZSBwcmVkaWN0aW9uIHdl
aWdodHMgdXNlZCB0byByZW1vdmUgaW50cmEtZnJhbWUgcmVkdW5kYW5jeSBmcm9tCisgdGhlIHNl
Y29uZCBzdGFnZS48L3Q+Cis8L2xpc3Q+CitUaGUgYWN0dWFsIGNvZGVib29rIGVsZW1lbnRzIGFy
ZSBsaXN0ZWQgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9uYm1iX2NvZGVib29rIi8+IGFu
ZAorIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3diX2NvZGVib29rIi8+LCBidXQgdGhleSBhcmUg
bm90IG5lZWRlZCB1bnRpbCB0aGUgbGFzdAorIHN0YWdlcyBvZiByZWNvbnN0cnVjdGluZyB0aGUg
TFNGIGNvZWZmaWNpZW50cy4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl9z
dGFnZTFfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgTm9ybWFsaXplZCBMU0YgU3RhZ2UtMSBJbmRl
eCBEZWNvZGluZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPkF1ZGlvIEJhbmR3aWR0aDwvdHRjb2w+
Cis8dHRjb2wgYWxpZ249ImxlZnQiPlNpZ25hbCBUeXBlPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0i
bGVmdCI+UERGPC90dGNvbD4KKzxjPk5CIG9yIE1CPC9jPiA8Yz5JbmFjdGl2ZSBvciB1bnZvaWNl
ZDwvYz4KKzxjPgorezQ0LCAzNCwgMzAsIDE5LCAyMSwgMTIsIDExLCAgMywKKyAgMywgIDIsIDE2
LCAgMiwgIDIsICAxLCAgNSwgIDIsCisgIDEsICAzLCAgMywgIDEsICAxLCAgMiwgIDIsICAyLAor
ICAzLCAgMSwgIDksICA5LCAgMiwgIDcsICAyLCAgMX0vMjU2Cis8L2M+Cis8Yz5OQiBvciBNQjwv
Yz4gPGM+Vm9pY2VkPC9jPgorPGM+Cit7MSwgMTAsICAxLCAgOCwgIDMsICA4LCAgOCwgMTQsCisx
MywgMTQsICAxLCAxNCwgMTIsIDEzLCAxMSwgMTEsCisxMiwgMTEsIDEwLCAxMCwgMTEsICA4LCAg
OSwgIDgsCisgNywgIDgsICAxLCAgMSwgIDYsICAxLCAgNiwgIDV9LzI1NgorPC9jPgorPGM+V0I8
L2M+IDxjPkluYWN0aXZlIG9yIHVudm9pY2VkPC9jPgorPGM+Cit7MzEsIDIxLCAgMywgMTcsICAx
LCAgOCwgMTcsICA0LAorICAxLCAxOCwgMTYsICA0LCAgMiwgIDMsICAxLCAxMCwKKyAgMSwgIDMs
IDE2LCAxMSwgMTYsICAyLCAgMiwgIDMsCisgIDIsIDExLCAgMSwgIDQsICA5LCAgOCwgIDcsICAz
fS8yNTYKKzwvYz4KKzxjPldCPC9jPiA8Yz5Wb2ljZWQ8L2M+Cis8Yz4KK3sxLCAgNCwgMTYsICA1
LCAxOCwgMTEsICA1LCAxNCwKKzE1LCAgMSwgIDMsIDEyLCAxMywgMTQsIDE0LCAgNiwKKzE0LCAx
MiwgIDIsICA2LCAgMSwgMTIsIDEyLCAxMSwKKzEwLCAgMywgMTAsICA1LCAgMSwgIDEsICAxLCAg
M30vMjU2Cis8L2M+Cis8L3RleHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9InNpbGtfbmxzZl9zdGFnZTIiIHRpdGxlPSJOb3JtYWxpemVkIExTRiBTdGFnZSAyIERlY29k
aW5nIj4KKzx0PgorQSB0b3RhbCBvZiAxNiBQREZzIGFyZSBhdmFpbGFibGUgZm9yIHRoZSBMU0Yg
cmVzaWR1YWwgaW4gdGhlIHNlY29uZCBzdGFnZTogdGhlCisgOCAoYS4uLmgpIGZvciBOQiBhbmQg
TUIgZnJhbWVzIGdpdmVuIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zfc3RhZ2UyX25ibWJf
cGRmcyIvPiwgYW5kIHRoZSA4IChpLi4ucCkgZm9yIFdCIGZyYW1lcworIGdpdmVuIGluIDx4cmVm
IHRhcmdldD0ic2lsa19ubHNmX3N0YWdlMl93Yl9wZGZzIi8+LgorV2hpY2ggUERGIGlzIHVzZWQg
Zm9yIHdoaWNoIGNvZWZmaWNpZW50IGlzIGRyaXZlbiBieSB0aGUgaW5kZXgsIEkxLAorIGRlY29k
ZWQgaW4gdGhlIGZpcnN0IHN0YWdlLgorPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfbmJtYl9zdGFn
ZTJfY2Jfc2VsIi8+IGxpc3RzIHRoZSBsZXR0ZXIgb2YgdGhlCisgY29ycmVzcG9uZGluZyBQREYg
Zm9yIGVhY2ggbm9ybWFsaXplZCBMU0YgY29lZmZpY2llbnQgZm9yIE5CIGFuZCBNQiwgYW5kCisg
PHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zfd2Jfc3RhZ2UyX2NiX3NlbCIvPiBsaXN0cyB0aGUgc2Ft
ZSBpbmZvcm1hdGlvbiBmb3IgV0IuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25s
c2Zfc3RhZ2UyX25ibWJfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgTkIvTUIgTm9ybWFsaXplZCBM
U0YgU3RhZ2UtMiBJbmRleCBEZWNvZGluZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPkNvZGVib29r
PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0ibGVmdCI+UERGPC90dGNvbD4KKzxjPmE8L2M+IDxjPnsx
LCAgIDEsICAgMSwgIDE1LCAyMjQsICAxMSwgICAxLCAgIDEsICAgMX0vMjU2PC9jPgorPGM+Yjwv
Yz4gPGM+ezEsICAgMSwgICAyLCAgMzQsIDE4MywgIDMyLCAgIDEsICAgMSwgICAxfS8yNTY8L2M+
Cis8Yz5jPC9jPiA8Yz57MSwgICAxLCAgIDQsICA0MiwgMTQ5LCAgNTUsICAgMiwgICAxLCAgIDF9
LzI1NjwvYz4KKzxjPmQ8L2M+IDxjPnsxLCAgIDEsICAgOCwgIDUyLCAxMjMsICA2MSwgICA4LCAg
IDEsICAgMX0vMjU2PC9jPgorPGM+ZTwvYz4gPGM+ezEsICAgMywgIDE2LCAgNTMsIDEwMSwgIDc0
LCAgIDYsICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5mPC9jPiA8Yz57MSwgICAzLCAgMTcsICA1NSwg
IDkwLCAgNzMsICAxNSwgICAxLCAgIDF9LzI1NjwvYz4KKzxjPmc8L2M+IDxjPnsxLCAgIDcsICAy
NCwgIDUzLCAgNzQsICA2NywgIDI2LCAgIDMsICAgMX0vMjU2PC9jPgorPGM+aDwvYz4gPGM+ezEs
ICAgMSwgIDE4LCAgNjMsICA3OCwgIDU4LCAgMzAsICAgNiwgICAxfS8yNTY8L2M+Cis8L3RleHR0
YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl9zdGFnZTJfd2JfcGRmcyIKKyB0
aXRsZT0iUERGcyBmb3IgV0IgTm9ybWFsaXplZCBMU0YgU3RhZ2UtMiBJbmRleCBEZWNvZGluZyI+
Cis8dHRjb2wgYWxpZ249ImxlZnQiPkNvZGVib29rPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0ibGVm
dCI+UERGPC90dGNvbD4KKzxjPmk8L2M+IDxjPnsxLCAgIDEsICAgMSwgICA5LCAyMzIsICAgOSwg
ICAxLCAgIDEsICAgMX0vMjU2PC9jPgorPGM+ajwvYz4gPGM+ezEsICAgMSwgICAyLCAgMjgsIDE4
NiwgIDM1LCAgIDEsICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5rPC9jPiA8Yz57MSwgICAxLCAgIDMs
ICA0MiwgMTUyLCAgNTMsICAgMiwgICAxLCAgIDF9LzI1NjwvYz4KKzxjPmw8L2M+IDxjPnsxLCAg
IDEsICAxMCwgIDQ5LCAxMjYsICA2NSwgICAyLCAgIDEsICAgMX0vMjU2PC9jPgorPGM+bTwvYz4g
PGM+ezEsICAgNCwgIDE5LCAgNDgsIDEwMCwgIDc3LCAgIDUsICAgMSwgICAxfS8yNTY8L2M+Cis8
Yz5uPC9jPiA8Yz57MSwgICAxLCAgMTQsICA1NCwgMTAwLCAgNzIsICAxMiwgICAxLCAgIDF9LzI1
NjwvYz4KKzxjPm88L2M+IDxjPnsxLCAgIDEsICAxNSwgIDYxLCAgODcsICA2MSwgIDI1LCAgIDQs
ICAgMX0vMjU2PC9jPgorPGM+cDwvYz4gPGM+ezEsICAgNywgIDIxLCAgNTAsICA3NywgIDgxLCAg
MTcsICAgMSwgICAxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9
InNpbGtfbmxzZl9uYm1iX3N0YWdlMl9jYl9zZWwiCisgdGl0bGU9IkNvZGVib29rIFNlbGVjdGlv
biBmb3IgTkIvTUIgTm9ybWFsaXplZCBMU0YgU3RhZ2UtMiBJbmRleCBEZWNvZGluZyI+Cis8dHRj
b2w+STE8L3R0Y29sPgorPHR0Y29sPkNvZWZmaWNpZW50PC90dGNvbD4KKzxjLz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPjAmbmJzcDsxJm5ic3A7MiZuYnNwOzMmbmJzcDs0Jm5ic3A7NSZuYnNw
OzYmbmJzcDs3Jm5ic3A7OCZuYnNwOzk8L3NwYW54PjwvYz4KKzxjPiAwPC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+YSZuYnNwO2EmbmJzcDthJm5ic3A7YSZuYnNwO2EmbmJzcDthJm5ic3A7
YSZuYnNwO2EmbmJzcDthJm5ic3A7YTwvc3Bhbng+PC9jPgorPGM+IDE8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5iJm5ic3A7ZCZuYnNwO2ImbmJzcDtjJm5ic3A7YyZuYnNwO2ImbmJzcDtj
Jm5ic3A7YiZuYnNwO2ImbmJzcDtiPC9zcGFueD48L2M+Cis8Yz4gMjwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPmMmbmJzcDtiJm5ic3A7YiZuYnNwO2ImbmJzcDtiJm5ic3A7YiZuYnNwO2Im
bmJzcDtiJm5ic3A7YiZuYnNwO2I8L3NwYW54PjwvYz4KKzxjPiAzPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+YiZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtiJm5ic3A7YyZu
YnNwO2ImbmJzcDtiJm5ic3A7Yjwvc3Bhbng+PC9jPgorPGM+IDQ8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5jJm5ic3A7ZCZuYnNwO2QmbmJzcDtkJm5ic3A7ZCZuYnNwO2MmbmJzcDtjJm5i
c3A7YyZuYnNwO2MmbmJzcDtjPC9zcGFueD48L2M+Cis8Yz4gNTwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPmEmbmJzcDtmJm5ic3A7ZCZuYnNwO2QmbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJz
cDtjJm5ic3A7YiZuYnNwO2I8L3NwYW54PjwvYz4KKzxjPiBnPC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+YSZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNw
O2MmbmJzcDtjJm5ic3A7Yjwvc3Bhbng+PC9jPgorPGM+IDc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj5jJm5ic3A7ZCZuYnNwO2cmbmJzcDtlJm5ic3A7ZSZuYnNwO2UmbmJzcDtmJm5ic3A7
ZSZuYnNwO2YmbmJzcDtmPC9zcGFueD48L2M+Cis8Yz4gODwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPmMmbmJzcDtlJm5ic3A7ZiZuYnNwO2YmbmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtn
Jm5ic3A7ZSZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPiA5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+YyZuYnNwO2UmbmJzcDtlJm5ic3A7aCZuYnNwO2UmbmJzcDtmJm5ic3A7ZSZuYnNwO2Ym
bmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MTA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj5lJm5ic3A7ZCZuYnNwO2QmbmJzcDtkJm5ic3A7YyZuYnNwO2QmbmJzcDtjJm5ic3A7YyZu
YnNwO2MmbmJzcDtjPC9zcGFueD48L2M+Cis8Yz4xMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPmImbmJzcDtmJm5ic3A7ZiZuYnNwO2cmbmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtmJm5i
c3A7ZiZuYnNwO2Y8L3NwYW54PjwvYz4KKzxjPjEyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+YyZuYnNwO2gmbmJzcDtlJm5ic3A7ZyZuYnNwO2YmbmJzcDtmJm5ic3A7ZiZuYnNwO2YmbmJz
cDtmJm5ic3A7Zjwvc3Bhbng+PC9jPgorPGM+MTM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij5jJm5ic3A7aCZuYnNwO2YmbmJzcDtmJm5ic3A7ZiZuYnNwO2YmbmJzcDtmJm5ic3A7ZyZuYnNw
O2YmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4xNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PmQmbmJzcDtkJm5ic3A7ZiZuYnNwO2UmbmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtmJm5ic3A7
ZSZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjE1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
YyZuYnNwO2QmbmJzcDtkJm5ic3A7ZiZuYnNwO2YmbmJzcDtlJm5ic3A7ZSZuYnNwO2UmbmJzcDtl
Jm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MTY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5j
Jm5ic3A7ZSZuYnNwO2UmbmJzcDtnJm5ic3A7ZSZuYnNwO2YmbmJzcDtlJm5ic3A7ZiZuYnNwO2Ym
bmJzcDtmPC9zcGFueD48L2M+Cis8Yz4xNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmMm
bmJzcDtmJm5ic3A7ZSZuYnNwO2cmbmJzcDtmJm5ic3A7ZiZuYnNwO2YmbmJzcDtlJm5ic3A7ZiZu
YnNwO2U8L3NwYW54PjwvYz4KKzxjPjE4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZu
YnNwO2gmbmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtmJm5ic3A7ZSZuYnNwO2YmbmJzcDtmJm5i
c3A7Zjwvc3Bhbng+PC9jPgorPGM+MTk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5jJm5i
c3A7ZiZuYnNwO2UmbmJzcDtnJm5ic3A7aCZuYnNwO2cmbmJzcDtmJm5ic3A7ZyZuYnNwO2YmbmJz
cDtlPC9zcGFueD48L2M+Cis8Yz4yMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmQmbmJz
cDtnJm5ic3A7aCZuYnNwO2UmbmJzcDtnJm5ic3A7ZiZuYnNwO2YmbmJzcDtnJm5ic3A7ZSZuYnNw
O2Y8L3NwYW54PjwvYz4KKzxjPjIxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNw
O2gmbmJzcDtnJm5ic3A7ZSZuYnNwO2UmbmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtmJm5ic3A7
Zjwvc3Bhbng+PC9jPgorPGM+MjI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5lJm5ic3A7
ZiZuYnNwO2YmbmJzcDtlJm5ic3A7ZyZuYnNwO2cmbmJzcDtmJm5ic3A7ZyZuYnNwO2YmbmJzcDtl
PC9zcGFueD48L2M+Cis8Yz4yMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtm
Jm5ic3A7ZiZuYnNwO2cmbmJzcDtmJm5ic3A7ZyZuYnNwO2UmbmJzcDtnJm5ic3A7ZSZuYnNwO2U8
L3NwYW54PjwvYz4KKzxjPjI0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ZSZuYnNwO2Ym
bmJzcDtmJm5ic3A7ZiZuYnNwO2QmbmJzcDtoJm5ic3A7ZSZuYnNwO2YmbmJzcDtmJm5ic3A7ZTwv
c3Bhbng+PC9jPgorPGM+MjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5jJm5ic3A7ZCZu
YnNwO2UmbmJzcDtmJm5ic3A7ZiZuYnNwO2cmbmJzcDtlJm5ic3A7ZiZuYnNwO2YmbmJzcDtlPC9z
cGFueD48L2M+Cis8Yz4yNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtkJm5i
c3A7YyZuYnNwO2QmbmJzcDtkJm5ic3A7ZSZuYnNwO2MmbmJzcDtkJm5ic3A7ZCZuYnNwO2Q8L3Nw
YW54PjwvYz4KKzxjPjI3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YiZuYnNwO2ImbmJz
cDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2QmbmJzcDtjJm5ic3A7Yzwvc3Bh
bng+PC9jPgorPGM+Mjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5lJm5ic3A7ZiZuYnNw
O2YmbmJzcDtnJm5ic3A7ZyZuYnNwO2cmbmJzcDtmJm5ic3A7ZyZuYnNwO2UmbmJzcDtmPC9zcGFu
eD48L2M+Cis8Yz4yOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmQmbmJzcDtmJm5ic3A7
ZiZuYnNwO2UmbmJzcDtlJm5ic3A7ZSZuYnNwO2UmbmJzcDtkJm5ic3A7ZCZuYnNwO2M8L3NwYW54
PjwvYz4KKzxjPjMwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2YmbmJzcDtk
Jm5ic3A7aCZuYnNwO2YmbmJzcDtmJm5ic3A7ZSZuYnNwO2UmbmJzcDtmJm5ic3A7ZTwvc3Bhbng+
PC9jPgorPGM+MzE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5lJm5ic3A7ZSZuYnNwO2Ym
bmJzcDtlJm5ic3A7ZiZuYnNwO2cmbmJzcDtmJm5ic3A7ZyZuYnNwO2YmbmJzcDtlPC9zcGFueD48
L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl93Yl9zdGFn
ZTJfY2Jfc2VsIgorIHRpdGxlPSJDb2RlYm9vayBTZWxlY3Rpb24gZm9yIFdCIE5vcm1hbGl6ZWQg
TFNGIFN0YWdlLTIgSW5kZXggRGVjb2RpbmciPgorPHR0Y29sPkkxPC90dGNvbD4KKzx0dGNvbD5D
b2VmZmljaWVudDwvdHRjb2w+Cis8Yy8+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4wJm5ic3A7
Jm5ic3A7MSZuYnNwOyZuYnNwOzImbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7NCZuYnNwOyZuYnNw
OzUmbmJzcDsmbmJzcDs2Jm5ic3A7Jm5ic3A7NyZuYnNwOyZuYnNwOzgmbmJzcDsmbmJzcDs5Jm5i
c3A7MTAmbmJzcDsxMSZuYnNwOzEyJm5ic3A7MTMmbmJzcDsxNCZuYnNwOzE1PC9zcGFueD48L2M+
Cis8Yz4gMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtpJm5ic3A7
Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNw
O2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5i
c3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZu
YnNwO2k8L3NwYW54PjwvYz4KKzxjPiAxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ayZu
YnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7
ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJz
cDsmbmJzcDtpJm5ic3A7Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+IDI8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5i
c3A7Jm5ic3A7cCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZu
YnNwO2smbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtu
Jm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4g
MzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7
aiZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJz
cDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtpJm5ic3A7Jm5i
c3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2o8
L3NwYW54PjwvYz4KKzxjPiA0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZu
YnNwO28mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtt
Jm5ic3A7Jm5ic3A7cCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNw
OyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJz
cDttJm5ic3A7Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+IDU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj5pJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtuJm5ic3A7Jm5i
c3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wm
bmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7
Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDttPC9zcGFueD48L2M+Cis8Yz4gNjwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNw
OyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJz
cDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZu
YnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2k8L3NwYW54
PjwvYz4KKzxjPiA3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO2sm
bmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDtrJm5ic3A7
Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNw
O24mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5i
c3A7Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+IDg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij5pJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7byZu
YnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO28mbmJzcDsm
bmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7
bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4gOTwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPmsmbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNw
O2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5i
c3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZu
YnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2k8L3NwYW54PjwvYz4K
KzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO2ombmJzcDsm
bmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7
aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJz
cDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5i
c3A7ajwvc3Bhbng+PC9jPgorPGM+MTE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5rJm5i
c3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZu
YnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDts
Jm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNw
OyZuYnNwO2ombmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4xMjwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPmsmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJz
cDsmbmJzcDttJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5i
c3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wm
bmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2w8L3NwYW54PjwvYz4KKzxjPjEz
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+bCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtt
Jm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNw
OyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJz
cDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bTwv
c3Bhbng+PC9jPgorPGM+MTQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5i
c3A7byZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO3Am
bmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtuJm5ic3A7
Jm5ic3A7cCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNw
O24mbmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4xNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPmkmbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2ombmJzcDsmbmJz
cDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZu
YnNwOyZuYnNwO2ombmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsm
bmJzcDtpJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2k8L3NwYW54PjwvYz4KKzxjPjE2PC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aiZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtuJm5ic3A7
Jm5ic3A7cCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNw
O2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5i
c3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bTwvc3Bhbng+
PC9jPgorPGM+MTc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5qJm5ic3A7Jm5ic3A7bCZu
YnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7
bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJz
cDsmbmJzcDttPC9zcGFueD48L2M+Cis8Yz4xODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PmsmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5i
c3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZu
YnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtq
Jm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO208L3NwYW54PjwvYz4KKzxjPjE5PC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7
biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJz
cDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtpJm5ic3A7Jm5i
c3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aTwvc3Bhbng+PC9jPgor
PGM+MjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5sJm5ic3A7Jm5ic3A7bSZuYnNwOyZu
YnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtr
Jm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNw
OyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJz
cDttPC9zcGFueD48L2M+Cis8Yz4yMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmsmbmJz
cDsmbmJzcDtvJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDtwJm5ic3A7Jm5i
c3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wm
bmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7
Jm5ic3A7bCZuYnNwOyZuYnNwO2w8L3NwYW54PjwvYz4KKzxjPjIyPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7byZuYnNw
OyZuYnNwO28mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJz
cDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZu
YnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bTwvc3Bhbng+PC9jPgorPGM+MjM8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5qJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wm
bmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7
Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNw
O2wmbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqPC9z
cGFueD48L2M+Cis8Yz4yNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmsmbmJzcDsmbmJz
cDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7bSZu
YnNwOyZuYnNwO3AmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7
bCZuYnNwOyZuYnNwO2w8L3NwYW54PjwvYz4KKzxjPjI1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+aSZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNw
O2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5i
c3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZu
YnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aTwvc3Bhbng+PC9jPgorPGM+MjY8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO28mbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7
biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO3AmbmJz
cDsmbmJzcDtwJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttPC9zcGFueD48
L2M+Cis8Yz4yNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmwmbmJzcDsmbmJzcDtsJm5i
c3A7Jm5ic3A7cCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZu
YnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtr
Jm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNw
OyZuYnNwO2w8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJz
cDsmbmJzcDtpJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtrJm5ic3A7Jm5i
c3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2sm
bmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7ajwvc3Bhbng+PC9jPgorPGM+Mjk8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtu
Jm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bCZuYnNw
OyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJz
cDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtqPC9zcGFueD48L2M+Cis8
Yz4zMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmwmbmJzcDsmbmJzcDtuJm5ic3A7Jm5i
c3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtwJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wm
bmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7
Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNw
O2k8L3NwYW54PjwvYz4KKzxjPjMxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ayZuYnNw
OyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO20mbmJzcDsmbmJz
cDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZu
YnNwOyZuYnNwO2smbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2kmbmJzcDsm
bmJzcDtpJm5ic3A7Jm5ic3A7aTwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorRGVj
b2RpbmcgdGhlIHNlY29uZCBzdGFnZSByZXNpZHVhbCBwcm9jZWVkcyBhcyBmb2xsb3dzLgorRm9y
IGVhY2ggY29lZmZpY2llbnQsIHRoZSBkZWNvZGVyIHJlYWRzIGEgc3ltYm9sIHVzaW5nIHRoZSBQ
REYgY29ycmVzcG9uZGluZyB0bworIEkxIGZyb20gZWl0aGVyIDx4cmVmIHRhcmdldD0ic2lsa19u
bHNmX25ibWJfc3RhZ2UyX2NiX3NlbCIvPiBvcgorIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3di
X3N0YWdlMl9jYl9zZWwiLz4sIGFuZCBzdWJ0cmFjdHMgNCBmcm9tIHRoZSByZXN1bHQKKyB0byBn
aXZlIGFuIGluZGV4IGluIHRoZSByYW5nZSAtNCB0byA0LCBpbmNsdXNpdmUuCitJZiB0aGUgaW5k
ZXggaXMgZWl0aGVyIC00IG9yIDQsIGl0IHJlYWRzIGEgc2Vjb25kIHN5bWJvbCB1c2luZyB0aGUg
UERGIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfZXh0X3BkZiIvPiwgYW5kIGFkZHMgdGhl
IHZhbHVlIG9mIHRoaXMgc2Vjb25kIHN5bWJvbAorIHRvIHRoZSBpbmRleCwgdXNpbmcgdGhlIHNh
bWUgc2lnbi4KK1RoaXMgZ2l2ZXMgdGhlIGluZGV4LCBJMltrXSwgYSB0b3RhbCByYW5nZSBvZiAt
MTAgdG8gMTAsIGluY2x1c2l2ZS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbmxz
Zl9leHRfcGRmIgorIHRpdGxlPSJQREYgZm9yIE5vcm1hbGl6ZWQgTFNGIEluZGV4IEV4dGVuc2lv
biBEZWNvZGluZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz57MTU2LCA2
MCwgMjQsICA5LCAgNCwgIDIsICAxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitUaGUg
ZGVjb2RlZCBpbmRpY2VzIGZyb20gYm90aCBzdGFnZXMgYXJlIHRyYW5zbGF0ZWQgYmFjayBpbnRv
IG5vcm1hbGl6ZWQgTFNGCisgY29lZmZpY2llbnRzIGluIHNpbGtfTkxTRl9kZWNvZGUoKSAoTkxT
Rl9kZWNvZGUuYykuCitUaGUgc3RhZ2UtMiBpbmRpY2VzIHJlcHJlc2VudCByZXNpZHVhbHMgYWZ0
ZXIgYm90aCB0aGUgZmlyc3Qgc3RhZ2Ugb2YgdGhlIFZRCisgYW5kIGEgc2VwYXJhdGUgYmFja3dh
cmRzLXByZWRpY3Rpb24gc3RlcC4KK1RoZSBiYWNrd2FyZHMgcHJlZGljdGlvbiBwcm9jZXNzIGlu
IHRoZSBlbmNvZGVyIHN1YnRyYWN0cyBhIHByZWRpY3Rpb24gZnJvbQorIGVhY2ggcmVzaWR1YWwg
Zm9ybWVkIGJ5IGEgbXVsdGlwbGUgb2YgdGhlIGNvZWZmaWNpZW50IHRoYXQgZm9sbG93cyBpdC4K
K1RoZSBkZWNvZGVyIG11c3QgdW5kbyB0aGlzIHByb2Nlc3MuCis8eHJlZiB0YXJnZXQ9InNpbGtf
bmxzZl9wcmVkX3dlaWdodHMiLz4gY29udGFpbnMgbGlzdHMgb2YgcHJlZGljdGlvbiB3ZWlnaHRz
CisgZm9yIGVhY2ggY29lZmZpY2llbnQuCitUaGVyZSBhcmUgdHdvIGxpc3RzIGZvciBOQiBhbmQg
TUIsIGFuZCBhbm90aGVyIHR3byBsaXN0cyBmb3IgV0IsIGdpdmluZyB0d28KKyBwb3NzaWJsZSBw
cmVkaWN0aW9uIHdlaWdodHMgZm9yIGVhY2ggY29lZmZpY2llbnQuCis8L3Q+CisKKzx0ZXh0dGFi
bGUgYW5jaG9yPSJzaWxrX25sc2ZfcHJlZF93ZWlnaHRzIgorIHRpdGxlPSJQcmVkaWN0aW9uIFdl
aWdodHMgZm9yIE5vcm1hbGl6ZWQgTFNGIERlY29kaW5nIj4KKzx0dGNvbCBhbGlnbj0ibGVmdCI+
Q29lZmZpY2llbnQ8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+QTwvdHRjb2w+Cis8dHRj
b2wgYWxpZ249InJpZ2h0Ij5CPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPkM8L3R0Y29s
PgorPHR0Y29sIGFsaWduPSJyaWdodCI+RDwvdHRjb2w+CisgPGM+MDwvYz4gPGM+MTc5PC9jPiA8
Yz4xMTY8L2M+IDxjPjE3NTwvYz4gIDxjPjY4PC9jPgorIDxjPjE8L2M+IDxjPjEzODwvYz4gIDxj
PjY3PC9jPiA8Yz4xNDg8L2M+ICA8Yz42MjwvYz4KKyA8Yz4yPC9jPiA8Yz4xNDA8L2M+ICA8Yz44
MjwvYz4gPGM+MTYwPC9jPiAgPGM+NjY8L2M+CisgPGM+MzwvYz4gPGM+MTQ4PC9jPiAgPGM+NTk8
L2M+IDxjPjE3NjwvYz4gIDxjPjYwPC9jPgorIDxjPjQ8L2M+IDxjPjE1MTwvYz4gIDxjPjkyPC9j
PiA8Yz4xNzg8L2M+ICA8Yz43MjwvYz4KKyA8Yz41PC9jPiA8Yz4xNDk8L2M+ICA8Yz43MjwvYz4g
PGM+MTczPC9jPiA8Yz4xMTc8L2M+CisgPGM+NjwvYz4gPGM+MTUzPC9jPiA8Yz4xMDA8L2M+IDxj
PjE3NDwvYz4gIDxjPjg1PC9jPgorIDxjPjc8L2M+IDxjPjE1MTwvYz4gIDxjPjg5PC9jPiA8Yz4x
NjQ8L2M+ICA8Yz45MDwvYz4KKyA8Yz44PC9jPiA8Yz4xNjM8L2M+ICA8Yz45MjwvYz4gPGM+MTc3
PC9jPiA8Yz4xMTg8L2M+CisgPGM+OTwvYz4gPGMvPiAgICAgICAgPGMvPiAgICAgIDxjPjE3NDwv
Yz4gPGM+MTM2PC9jPgorPGM+MTA8L2M+IDxjLz4gICAgICAgIDxjLz4gICAgICA8Yz4xOTY8L2M+
IDxjPjE1MTwvYz4KKzxjPjExPC9jPiA8Yy8+ICAgICAgICA8Yy8+ICAgICAgPGM+MTgyPC9jPiA8
Yz4xNDI8L2M+Cis8Yz4xMjwvYz4gPGMvPiAgICAgICAgPGMvPiAgICAgIDxjPjE5ODwvYz4gPGM+
MTYwPC9jPgorPGM+MTM8L2M+IDxjLz4gICAgICAgIDxjLz4gICAgICA8Yz4xOTI8L2M+IDxjPjE0
MjwvYz4KKzxjPjE0PC9jPiA8Yy8+ICAgICAgICA8Yy8+ICAgICAgPGM+MTgyPC9jPiA8Yz4xNTU8
L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitUaGUgcHJlZGljdGlvbiBpcyB1bmRvbmUgdXNpbmcg
dGhlIHByb2NlZHVyZSBpbXBsZW1lbnRlZCBpbgorIHNpbGtfTkxTRl9yZXNpZHVhbF9kZXF1YW50
KCkgKE5MU0ZfZGVjb2RlLmMpLCB3aGljaCBpcyBhcyBmb2xsb3dzLgorRWFjaCBjb2VmZmljaWVu
dCBzZWxlY3RzIGl0cyBwcmVkaWN0aW9uIHdlaWdodCBmcm9tIG9uZSBvZiB0aGUgdHdvIGxpc3Rz
IGJhc2VkCisgb24gdGhlIHN0YWdlLTEgaW5kZXgsIEkxLgorPHhyZWYgdGFyZ2V0PSJzaWxrX25s
c2ZfbmJtYl93ZWlnaHRfc2VsIi8+IGdpdmVzIHRoZSBzZWxlY3Rpb25zIGZvciBlYWNoCisgY29l
ZmZpY2llbnQgZm9yIE5CIGFuZCBNQiwgYW5kIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3diX3dl
aWdodF9zZWwiLz4gZ2l2ZXMKKyB0aGUgc2VsZWN0aW9ucyBmb3IgV0IuCitMZXQgZF9MUEMgYmUg
dGhlIG9yZGVyIG9mIHRoZSBjb2RlYm9vaywgaS5lLiwgMTAgZm9yIE5CIGFuZCBNQiwgYW5kIDE2
IGZvciBXQiwKKyBhbmQgbGV0IHByZWRfUThba10gYmUgdGhlIHdlaWdodCBmb3IgdGhlIGsndGgg
Y29lZmZpY2llbnQgc2VsZWN0ZWQgYnkgdGhpcworIHByb2Nlc3MgZm9yIDAmbmJzcDsmbHQ7PSZu
YnNwO2smbmJzcDsmbHQ7Jm5ic3A7ZF9MUEMtMS4KK1RoZW4sIHRoZSBzdGFnZS0yIHJlc2lkdWFs
IGZvciBlYWNoIGNvZWZmaWNpZW50IGlzIGNvbXB1dGVkIHZpYQorPGZpZ3VyZSBhbGlnbj0iY2Vu
dGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworcmVzX1ExMFtrXSA9IChr
KzEgPCBkX0xQQyA/IChyZXNfUTEwW2srMV0qcHJlZF9ROFtrXSk+PjggOiAwKQorICAgICAgICAg
ICAgICsgKCgoKEkyW2tdPDwxMCkgLSBzaWduKEkyW2tdKSoxMDIpKnFzdGVwKT4+MTYpICwKK11d
PjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdoZXJlIHFzdGVwIGlzIHRoZSBRMTYgcXVhbnRpemF0
aW9uIHN0ZXAgc2l6ZSwgd2hpY2ggaXMgMTE3OTYgZm9yIE5CIGFuZCBNQgorIGFuZCA5ODMwIGZv
ciBXQiAocmVwcmVzZW50aW5nIHN0ZXAgc2l6ZXMgb2YgYXBwcm94aW1hdGVseSAwLjE4IGFuZCAw
LjE1LAorIHJlc3BlY3RpdmVseSkuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25s
c2ZfbmJtYl93ZWlnaHRfc2VsIgorIHRpdGxlPSJQcmVkaWN0aW9uIFdlaWdodCBTZWxlY3Rpb24g
Zm9yIE5CL01CIE5vcm1hbGl6ZWQgTFNGIERlY29kaW5nIj4KKzx0dGNvbD5JMTwvdHRjb2w+Cis8
dHRjb2w+Q29lZmZpY2llbnQ8L3R0Y29sPgorPGMvPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
MCZuYnNwOzEmbmJzcDsyJm5ic3A7MyZuYnNwOzQmbmJzcDs1Jm5ic3A7NiZuYnNwOzcmbmJzcDs4
PC9zcGFueD48L2M+Cis8Yz4gMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtC
Jm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QTwvc3Bhbng+
PC9jPgorPGM+IDE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5CJm5ic3A7QSZuYnNwO0Em
bmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0E8L3NwYW54PjwvYz4KKzxj
PiAyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZu
YnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4gMzwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkImbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5i
c3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+IDQ8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJz
cDtBJm5ic3A7QSZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPiA1PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNw
O0EmbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4gNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PkImbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7
QTwvc3Bhbng+PC9jPgorPGM+IDc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7
QiZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0E8L3NwYW54
PjwvYz4KKzxjPiA4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtC
Jm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtCPC9zcGFueD48L2M+Cis8
Yz4gOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5ic3A7QiZuYnNwO0Im
bmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7Qjwvc3Bhbng+PC9jPgorPGM+MTA8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZu
YnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjExPC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5i
c3A7QiZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4xMjwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJz
cDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+MTM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij5BJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNw
O0E8L3NwYW54PjwvYz4KKzxjPjE0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QiZuYnNw
O0EmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtCPC9zcGFu
eD48L2M+Cis8Yz4xNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7
QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QTwvc3Bhbng+PC9jPgor
PGM+MTY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNwO0ImbmJzcDtC
Jm5ic3A7QSZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjE3PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0Im
bmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtCPC9zcGFueD48L2M+Cis8Yz4xODwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5ic3A7QiZu
YnNwO0ImbmJzcDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+MTk8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5i
c3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjIwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJz
cDtBPC9zcGFueD48L2M+Cis8Yz4yMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJz
cDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QTwvc3Bh
bng+PC9jPgorPGM+MjI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNw
O0EmbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0I8L3NwYW54PjwvYz4K
KzxjPjIzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtCJm5ic3A7
QiZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtCPC9zcGFueD48L2M+Cis8Yz4yNDwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtB
Jm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7Qjwvc3Bhbng+PC9jPgorPGM+MjU8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0Im
bmJzcDtCJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjI2PC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZu
YnNwO0EmbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4yNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPkEmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5i
c3A7QTwvc3Bhbng+PC9jPgorPGM+Mjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5i
c3A7QSZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0E8L3Nw
YW54PjwvYz4KKzxjPjI5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QiZuYnNwO0EmbmJz
cDtBJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBPC9zcGFueD48L2M+
Cis8Yz4zMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5ic3A7QSZuYnNw
O0ImbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtBJm5ic3A7Qjwvc3Bhbng+PC9jPgorPGM+MzE8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5CJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7
QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0I8L3NwYW54PjwvYz4KKzwvdGV4dHRhYmxlPgor
Cis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNmX3diX3dlaWdodF9zZWwiCisgdGl0bGU9IlBy
ZWRpY3Rpb24gV2VpZ2h0IFNlbGVjdGlvbiBmb3IgV0IgTm9ybWFsaXplZCBMU0YgRGVjb2Rpbmci
PgorPHR0Y29sPkkxPC90dGNvbD4KKzx0dGNvbD5Db2VmZmljaWVudDwvdHRjb2w+Cis8Yy8+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4wJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzImbmJzcDsm
bmJzcDszJm5ic3A7Jm5ic3A7NCZuYnNwOyZuYnNwOzUmbmJzcDsmbmJzcDs2Jm5ic3A7Jm5ic3A7
NyZuYnNwOyZuYnNwOzgmbmJzcDsmbmJzcDs5Jm5ic3A7MTAmbmJzcDsxMSZuYnNwOzEyJm5ic3A7
MTMmbmJzcDsxNDwvc3Bhbng+PC9jPgorPGM+IDA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPiAxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4gMjwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+IDM8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPiA0PC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4gNTwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+IDY8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5EJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Qm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPiA3
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8
Yz4gODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Qm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RDwvc3Bhbng+PC9j
PgorPGM+IDk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Q8L3NwYW54
PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0Qm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9z
cGFueD48L2M+Cis8Yz4xMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
Qzwvc3Bhbng+PC9jPgorPGM+MTI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0M8L3NwYW54PjwvYz4KKzxjPjEzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4xNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PkMmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZu
YnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7RDwvc3Bhbng+PC9jPgorPGM+MTU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7RCZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPjE2PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4xNzwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Qm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MTg8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPjE5PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4yMDwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MjE8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxj
PjIyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+
Cis8Yz4yMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+
PC9jPgorPGM+MjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Q8L3Nw
YW54PjwvYz4KKzxjPjI1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtE
PC9zcGFueD48L2M+Cis8Yz4yNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7RDwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNw
OyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4yOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7RDwvc3Bhbng+PC9jPgorPGM+MzA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj5EJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPjMxPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKworPC9z
ZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbmxzZl9yZWNvbnN0cnVjdGlvbiIKKyB0
aXRsZT0iUmVjb25zdHJ1Y3RpbmcgdGhlIE5vcm1hbGl6ZWQgTFNGIENvZWZmaWNpZW50cyI+Cis8
dD4KK09uY2UgdGhlIHN0YWdlLTEgaW5kZXggSTEgYW5kIHRoZSBzdGFnZS0yIHJlc2lkdWFsIHJl
c19RMTBbXSBoYXZlIGJlZW4gZGVjb2RlZCwKKyB0aGUgZmluYWwgbm9ybWFsaXplZCBMU0YgY29l
ZmZpY2llbnRzIGNhbiBiZSByZWNvbnN0cnVjdGVkLgorPC90PgorPHQ+CitUaGUgc3BlY3RyYWwg
ZGlzdG9ydGlvbiBpbnRyb2R1Y2VkIGJ5IHRoZSBxdWFudGl6YXRpb24gb2YgZWFjaCBMU0YgY29l
ZmZpY2llbnQKKyB2YXJpZXMsIHNvIHRoZSBzdGFnZS0yIHJlc2lkdWFsIGlzIHdlaWdodGVkIGFj
Y29yZGluZ2x5LCB1c2luZyB0aGUKKyBsb3ctY29tcGxleGl0eSBJbnZlcnNlIEhhcm1vbmljIE1l
YW4gV2VpZ2h0aW5nIChJSE1XKSBmdW5jdGlvbiBwcm9wb3NlZCBpbgorIDx4cmVmIHRhcmdldD0i
bGFyb2lhLWljYXNzcCIvPi4KK1RoZSB3ZWlnaHRzIGFyZSBkZXJpdmVkIGRpcmVjdGx5IGZyb20g
dGhlIHN0YWdlLTEgY29kZWJvb2sgdmVjdG9yLgorTGV0IGNiMV9ROFtrXSBiZSB0aGUgayd0aCBl
bnRyeSBvZiB0aGUgc3RhZ2UtMSBjb2RlYm9vayB2ZWN0b3IgZnJvbQorIDx4cmVmIHRhcmdldD0i
c2lsa19ubHNmX25ibWJfY29kZWJvb2siLz4gb3IKKyA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl93
Yl9jb2RlYm9vayIvPi4KK1RoZW4gZm9yIDAmbmJzcDsmbHQ7PSZuYnNwO2smbmJzcDsmbHQ7Jm5i
c3A7ZF9MUEMgdGhlIGZvbGxvd2luZyBleHByZXNzaW9uCisgY29tcHV0ZXMgdGhlIHNxdWFyZSBv
ZiB0aGUgd2VpZ2h0IGFzIGEgUTE4IHZhbHVlOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxh
cnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCit3Ml9RMThba10gPSAoMTAyNC8oY2Ix
X1E4W2tdIC0gY2IxX1E4W2stMV0pCisgICAgICAgICAgICAgKyAxMDI0LyhjYjFfUThbaysxXSAt
IGNiMV9ROFtrXSkpIDw8IDE2ICwKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+Cisgd2hlcmUg
Y2IxX1E4Wy0xXSZuYnNwOz0mbmJzcDswIGFuZCBjYjFfUThbZF9MUENdJm5ic3A7PSZuYnNwOzI1
NiwgYW5kIHRoZQorIGRpdmlzaW9uIGlzIGludGVnZXIgZGl2aXNpb24uCitUaGlzIGlzIHJlZHVj
ZWQgdG8gYW4gdW5zcXVhcmVkLCBROSB2YWx1ZSB1c2luZyB0aGUgZm9sbG93aW5nIHNxdWFyZS1y
b290CisgYXBwcm94aW1hdGlvbjoKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBh
bGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2kgPSBpbG9nKHcyX1ExOFtrXSkKK2YgPSAodzJfUTE4
W2tdPj4oaS04KSkgJiAxMjcKK3kgPSAoKGkmMSkgPyAzMjc2OCA6IDQ2MjE0KSA+PiAoKDMyLWkp
Pj4xKQord19ROVtrXSA9IHkgKyAoKDIxMypmKnkpPj4xNikKK11dPjwvYXJ0d29yaz4KKzwvZmln
dXJlPgorVGhlIGNvbnN0YW50IDQ2MjE0IGhlcmUgaXMgYXBwcm94aW1hdGVseSB0aGUgc3F1YXJl
IHJvb3Qgb2YgMiBpbiBRMTUuCitUaGUgY2IxX1E4W10gdmVjdG9yIGNvbXBsZXRlbHkgZGV0ZXJt
aW5lcyB0aGVzZSB3ZWlnaHRzLCBhbmQgdGhleSBtYXkgYmUKKyB0YWJ1bGF0ZWQgYW5kIHN0b3Jl
ZCBhcyAxMy1iaXQgdW5zaWduZWQgdmFsdWVzICh3aXRoIGEgcmFuZ2Ugb2YgMTgxOSB0byA1MjI3
LAorIGluY2x1c2l2ZSkgdG8gYXZvaWQgY29tcHV0aW5nIHRoZW0gd2hlbiBkZWNvZGluZy4KK1Ro
ZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gYWxyZWFkeSByZXF1aXJlcyBjb2RlIHRvIGNvbXB1
dGUgdGhlc2Ugd2VpZ2h0cyBvbgorIHVucXVhbnRpemVkIGNvZWZmaWNpZW50cyBpbiB0aGUgZW5j
b2RlciwgaW4gc2lsa19OTFNGX1ZRX3dlaWdodHNfbGFyb2lhKCkKKyAoTkxTRl9WUV93ZWlnaHRz
X2xhcm9pYS5jKSBhbmQgaXRzIGNhbGxlcnMsIHNvIGl0IHJldXNlcyB0aGF0IGNvZGUgaW4gdGhl
CisgZGVjb2RlciBpbnN0ZWFkIG9mIHVzaW5nIGEgcHJlLWNvbXB1dGVkIHRhYmxlIHRvIHJlZHVj
ZSB0aGUgYW1vdW50IG9mIFJPTQorIHJlcXVpcmVkLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hv
cj0ic2lsa19ubHNmX25ibWJfY29kZWJvb2siCisgICAgICAgICAgIHRpdGxlPSJOQi9NQiBOb3Jt
YWxpemVkIExTRiBTdGFnZS0xIENvZGVib29rIFZlY3RvcnMiPgorPHR0Y29sPkkxPC90dGNvbD4K
Kzx0dGNvbD5Db2RlYm9vayAoUTgpPC90dGNvbD4KKzxjLz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPiZuYnNwOzAmbmJzcDsmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7Jm5ic3A7MiZuYnNwOyZu
YnNwOyZuYnNwOzMmbmJzcDsmbmJzcDsmbmJzcDs0Jm5ic3A7Jm5ic3A7Jm5ic3A7NSZuYnNwOyZu
YnNwOyZuYnNwOzYmbmJzcDsmbmJzcDsmbmJzcDs3Jm5ic3A7Jm5ic3A7Jm5ic3A7OCZuYnNwOyZu
YnNwOyZuYnNwOzk8L3NwYW54PjwvYz4KKzxjPjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4xMiZuYnNwOyZuYnNwOzM1Jm5ic3A7Jm5ic3A7NjAmbmJzcDsmbmJzcDs4MyZuYnNwOzEwOCZu
YnNwOzEzMiZuYnNwOzE1NyZuYnNwOzE4MCZuYnNwOzIwNiZuYnNwOzIyODwvc3Bhbng+PC9jPgor
PGM+MTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE1Jm5ic3A7Jm5ic3A7MzImbmJzcDsm
bmJzcDs1NSZuYnNwOyZuYnNwOzc3Jm5ic3A7MTAxJm5ic3A7MTI1Jm5ic3A7MTUxJm5ic3A7MTc1
Jm5ic3A7MjAxJm5ic3A7MjI1PC9zcGFueD48L2M+Cis8Yz4yPC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+MTkmbmJzcDsmbmJzcDs0MiZuYnNwOyZuYnNwOzY2Jm5ic3A7Jm5ic3A7ODkmbmJz
cDsxMTQmbmJzcDsxMzcmbmJzcDsxNjImbmJzcDsxODQmbmJzcDsyMDkmbmJzcDsyMzA8L3NwYW54
PjwvYz4KKzxjPjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xMiZuYnNwOyZuYnNwOzI1
Jm5ic3A7Jm5ic3A7NTAmbmJzcDsmbmJzcDs3MiZuYnNwOyZuYnNwOzk3Jm5ic3A7MTIwJm5ic3A7
MTQ3Jm5ic3A7MTcyJm5ic3A7MjAwJm5ic3A7MjIzPC9zcGFueD48L2M+Cis8Yz40PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjYmbmJzcDsmbmJzcDs0NCZuYnNwOyZuYnNwOzY5Jm5ic3A7
Jm5ic3A7OTAmbmJzcDsxMTQmbmJzcDsxMzUmbmJzcDsxNTkmbmJzcDsxODAmbmJzcDsyMDUmbmJz
cDsyMjU8L3NwYW54PjwvYz4KKzxjPjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xMyZu
YnNwOyZuYnNwOzIyJm5ic3A7Jm5ic3A7NTMmbmJzcDsmbmJzcDs4MCZuYnNwOzEwNiZuYnNwOzEz
MCZuYnNwOzE1NiZuYnNwOzE4MCZuYnNwOzIwNSZuYnNwOzIyODwvc3Bhbng+PC9jPgorPGM+Njwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE1Jm5ic3A7Jm5ic3A7MjUmbmJzcDsmbmJzcDs0
NCZuYnNwOyZuYnNwOzY0Jm5ic3A7Jm5ic3A7OTAmbmJzcDsxMTUmbmJzcDsxNDImbmJzcDsxNjgm
bmJzcDsxOTYmbmJzcDsyMjI8L3NwYW54PjwvYz4KKzxjPjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4xOSZuYnNwOyZuYnNwOzI0Jm5ic3A7Jm5ic3A7NjImbmJzcDsmbmJzcDs4MiZuYnNw
OzEwMCZuYnNwOzEyMCZuYnNwOzE0NSZuYnNwOzE2OCZuYnNwOzE5MCZuYnNwOzIxNDwvc3Bhbng+
PC9jPgorPGM+ODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjIyJm5ic3A7Jm5ic3A7MzEm
bmJzcDsmbmJzcDs1MCZuYnNwOyZuYnNwOzc5Jm5ic3A7MTAzJm5ic3A7MTIwJm5ic3A7MTUxJm5i
c3A7MTcwJm5ic3A7MjAzJm5ic3A7MjI3PC9zcGFueD48L2M+Cis8Yz45PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+MjEmbmJzcDsmbmJzcDsyOSZuYnNwOyZuYnNwOzQ1Jm5ic3A7Jm5ic3A7
NjUmbmJzcDsxMDYmbmJzcDsxMjQmbmJzcDsxNTAmbmJzcDsxNzEmbmJzcDsxOTYmbmJzcDsyMjQ8
L3NwYW54PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MzAmbmJzcDsm
bmJzcDs0OSZuYnNwOyZuYnNwOzc1Jm5ic3A7Jm5ic3A7OTcmbmJzcDsxMjEmbmJzcDsxNDImbmJz
cDsxNjUmbmJzcDsxODYmbmJzcDsyMDkmbmJzcDsyMjk8L3NwYW54PjwvYz4KKzxjPjExPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTkmbmJzcDsmbmJzcDsyNSZuYnNwOyZuYnNwOzUyJm5i
c3A7Jm5ic3A7NzAmbmJzcDsmbmJzcDs5MyZuYnNwOzExNiZuYnNwOzE0MyZuYnNwOzE2NiZuYnNw
OzE5MiZuYnNwOzIxOTwvc3Bhbng+PC9jPgorPGM+MTI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4yNiZuYnNwOyZuYnNwOzM0Jm5ic3A7Jm5ic3A7NjImbmJzcDsmbmJzcDs3NSZuYnNwOyZu
YnNwOzk3Jm5ic3A7MTE4Jm5ic3A7MTQ1Jm5ic3A7MTY3Jm5ic3A7MTk0Jm5ic3A7MjE3PC9zcGFu
eD48L2M+Cis8Yz4xMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjI1Jm5ic3A7Jm5ic3A7
MzMmbmJzcDsmbmJzcDs1NiZuYnNwOyZuYnNwOzcwJm5ic3A7Jm5ic3A7OTEmbmJzcDsxMTMmbmJz
cDsxNDMmbmJzcDsxNjUmbmJzcDsxOTYmbmJzcDsyMjM8L3NwYW54PjwvYz4KKzxjPjE0PC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjEmbmJzcDsmbmJzcDszNCZuYnNwOyZuYnNwOzUxJm5i
c3A7Jm5ic3A7NzImbmJzcDsmbmJzcDs5NyZuYnNwOzExNyZuYnNwOzE0NSZuYnNwOzE3MSZuYnNw
OzE5NiZuYnNwOzIyMjwvc3Bhbng+PC9jPgorPGM+MTU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4yMCZuYnNwOyZuYnNwOzI5Jm5ic3A7Jm5ic3A7NTAmbmJzcDsmbmJzcDs2NyZuYnNwOyZu
YnNwOzkwJm5ic3A7MTE3Jm5ic3A7MTQ0Jm5ic3A7MTY4Jm5ic3A7MTk3Jm5ic3A7MjIxPC9zcGFu
eD48L2M+Cis8Yz4xNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjIyJm5ic3A7Jm5ic3A7
MzEmbmJzcDsmbmJzcDs0OCZuYnNwOyZuYnNwOzY2Jm5ic3A7Jm5ic3A7OTUmbmJzcDsxMTcmbmJz
cDsxNDYmbmJzcDsxNjgmbmJzcDsxOTYmbmJzcDsyMjI8L3NwYW54PjwvYz4KKzxjPjE3PC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjQmbmJzcDsmbmJzcDszMyZuYnNwOyZuYnNwOzUxJm5i
c3A7Jm5ic3A7NzcmbmJzcDsxMTYmbmJzcDsxMzQmbmJzcDsxNTgmbmJzcDsxODAmbmJzcDsyMDAm
bmJzcDsyMjQ8L3NwYW54PjwvYz4KKzxjPjE4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
MjEmbmJzcDsmbmJzcDsyOCZuYnNwOyZuYnNwOzcwJm5ic3A7Jm5ic3A7ODcmbmJzcDsxMDYmbmJz
cDsxMjQmbmJzcDsxNDkmbmJzcDsxNzAmbmJzcDsxOTQmbmJzcDsyMTc8L3NwYW54PjwvYz4KKzxj
PjE5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjYmbmJzcDsmbmJzcDszMyZuYnNwOyZu
YnNwOzUzJm5ic3A7Jm5ic3A7NjQmbmJzcDsmbmJzcDs4MyZuYnNwOzExNyZuYnNwOzE1MiZuYnNw
OzE3MyZuYnNwOzIwNCZuYnNwOzIyNTwvc3Bhbng+PC9jPgorPGM+MjA8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4yNyZuYnNwOyZuYnNwOzM0Jm5ic3A7Jm5ic3A7NjUmbmJzcDsmbmJzcDs5
NSZuYnNwOzEwOCZuYnNwOzEyOSZuYnNwOzE1NSZuYnNwOzE3NCZuYnNwOzIxMCZuYnNwOzIyNTwv
c3Bhbng+PC9jPgorPGM+MjE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yMCZuYnNwOyZu
YnNwOzI2Jm5ic3A7Jm5ic3A7NzImbmJzcDsmbmJzcDs5OSZuYnNwOzExMyZuYnNwOzEzMSZuYnNw
OzE1NCZuYnNwOzE3NiZuYnNwOzIwMCZuYnNwOzIxOTwvc3Bhbng+PC9jPgorPGM+MjI8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4zNCZuYnNwOyZuYnNwOzQzJm5ic3A7Jm5ic3A7NjEmbmJz
cDsmbmJzcDs3OCZuYnNwOyZuYnNwOzkzJm5ic3A7MTE0Jm5ic3A7MTU1Jm5ic3A7MTc3Jm5ic3A7
MjA1Jm5ic3A7MjI5PC9zcGFueD48L2M+Cis8Yz4yMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPjIzJm5ic3A7Jm5ic3A7MjkmbmJzcDsmbmJzcDs1NCZuYnNwOyZuYnNwOzk3Jm5ic3A7MTI0
Jm5ic3A7MTM4Jm5ic3A7MTYzJm5ic3A7MTc5Jm5ic3A7MjA5Jm5ic3A7MjI5PC9zcGFueD48L2M+
Cis8Yz4yNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjMwJm5ic3A7Jm5ic3A7MzgmbmJz
cDsmbmJzcDs1NiZuYnNwOyZuYnNwOzg5Jm5ic3A7MTE4Jm5ic3A7MTI5Jm5ic3A7MTU4Jm5ic3A7
MTc4Jm5ic3A7MjAwJm5ic3A7MjMxPC9zcGFueD48L2M+Cis8Yz4yNTwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPjIxJm5ic3A7Jm5ic3A7MjkmbmJzcDsmbmJzcDs0OSZuYnNwOyZuYnNwOzYz
Jm5ic3A7Jm5ic3A7ODUmbmJzcDsxMTEmbmJzcDsxNDImbmJzcDsxNjMmbmJzcDsxOTMmbmJzcDsy
MjI8L3NwYW54PjwvYz4KKzxjPjI2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjcmbmJz
cDsmbmJzcDs0OCZuYnNwOyZuYnNwOzc3Jm5ic3A7MTAzJm5ic3A7MTMzJm5ic3A7MTU4Jm5ic3A7
MTc5Jm5ic3A7MTk2Jm5ic3A7MjE1Jm5ic3A7MjMyPC9zcGFueD48L2M+Cis8Yz4yNzwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPjI5Jm5ic3A7Jm5ic3A7NDcmbmJzcDsmbmJzcDs3NCZuYnNw
OyZuYnNwOzk5Jm5ic3A7MTI0Jm5ic3A7MTUxJm5ic3A7MTc2Jm5ic3A7MTk4Jm5ic3A7MjIwJm5i
c3A7MjM3PC9zcGFueD48L2M+Cis8Yz4yODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjMz
Jm5ic3A7Jm5ic3A7NDImbmJzcDsmbmJzcDs2MSZuYnNwOyZuYnNwOzc2Jm5ic3A7Jm5ic3A7OTMm
bmJzcDsxMjEmbmJzcDsxNTUmbmJzcDsxNzQmbmJzcDsyMDcmbmJzcDsyMjU8L3NwYW54PjwvYz4K
KzxjPjI5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjkmbmJzcDsmbmJzcDs1MyZuYnNw
OyZuYnNwOzg3Jm5ic3A7MTEyJm5ic3A7MTM2Jm5ic3A7MTU0Jm5ic3A7MTcwJm5ic3A7MTg4Jm5i
c3A7MjA4Jm5ic3A7MjI3PC9zcGFueD48L2M+Cis8Yz4zMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPjI0Jm5ic3A7Jm5ic3A7MzAmbmJzcDsmbmJzcDs1MiZuYnNwOyZuYnNwOzg0Jm5ic3A7
MTMxJm5ic3A7MTUwJm5ic3A7MTY2Jm5ic3A7MTg2Jm5ic3A7MjAzJm5ic3A7MjI5PC9zcGFueD48
L2M+Cis8Yz4zMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjM3Jm5ic3A7Jm5ic3A7NDgm
bmJzcDsmbmJzcDs2NCZuYnNwOyZuYnNwOzg0Jm5ic3A7MTA0Jm5ic3A7MTE4Jm5ic3A7MTU2Jm5i
c3A7MTc3Jm5ic3A7MjAxJm5ic3A7MjMwPC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKworPHRl
eHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl93Yl9jb2RlYm9vayIKKyAgICAgICAgICAgdGl0bGU9
IldCIE5vcm1hbGl6ZWQgTFNGIFN0YWdlLTEgQ29kZWJvb2sgVmVjdG9ycyI+Cis8dHRjb2w+STE8
L3R0Y29sPgorPHR0Y29sPkNvZGVib29rIChROCk8L3R0Y29sPgorPGMvPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7
MyZuYnNwOyZuYnNwOzQmbmJzcDsmbmJzcDsmbmJzcDs1Jm5ic3A7Jm5ic3A7Jm5ic3A7NiZuYnNw
OyZuYnNwOyZuYnNwOzcmbmJzcDsmbmJzcDsmbmJzcDs4Jm5ic3A7Jm5ic3A7Jm5ic3A7OSZuYnNw
OyZuYnNwOzEwJm5ic3A7Jm5ic3A7MTEmbmJzcDsmbmJzcDsxMiZuYnNwOyZuYnNwOzEzJm5ic3A7
Jm5ic3A7MTQmbmJzcDsmbmJzcDsxNTwvc3Bhbng+PC9jPgorPGM+MDwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPiZuYnNwOzcmbmJzcDsyMyZuYnNwOzM4Jm5ic3A7NTQmbmJzcDs2OSZuYnNw
OyZuYnNwOzg1Jm5ic3A7MTAwJm5ic3A7MTE2Jm5ic3A7MTMxJm5ic3A7MTQ3Jm5ic3A7MTYyJm5i
c3A7MTc4Jm5ic3A7MTkzJm5ic3A7MjA4Jm5ic3A7MjIzJm5ic3A7MjM5PC9zcGFueD48L2M+Cis8
Yz4xPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTMmbmJzcDsyNSZuYnNwOzQxJm5ic3A7
NTUmbmJzcDs2OSZuYnNwOyZuYnNwOzgzJm5ic3A7Jm5ic3A7OTgmbmJzcDsxMTImbmJzcDsxMjcm
bmJzcDsxNDImbmJzcDsxNTcmbmJzcDsxNzEmbmJzcDsxODcmbmJzcDsyMDMmbmJzcDsyMjAmbmJz
cDsyMzY8L3NwYW54PjwvYz4KKzxjPjI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNSZu
YnNwOzIxJm5ic3A7MzQmbmJzcDs1MSZuYnNwOzYxJm5ic3A7Jm5ic3A7NzgmbmJzcDsmbmJzcDs5
MiZuYnNwOzEwNiZuYnNwOzEyNiZuYnNwOzEzNiZuYnNwOzE1MiZuYnNwOzE2NyZuYnNwOzE4NSZu
YnNwOzIwNSZuYnNwOzIyNSZuYnNwOzI0MDwvc3Bhbng+PC9jPgorPGM+MzwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPjEwJm5ic3A7MjEmbmJzcDszNiZuYnNwOzUwJm5ic3A7NjMmbmJzcDsm
bmJzcDs3OSZuYnNwOyZuYnNwOzk1Jm5ic3A7MTEwJm5ic3A7MTI2Jm5ic3A7MTQxJm5ic3A7MTU3
Jm5ic3A7MTczJm5ic3A7MTg5Jm5ic3A7MjA1Jm5ic3A7MjIxJm5ic3A7MjM3PC9zcGFueD48L2M+
Cis8Yz40PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTcmbmJzcDsyMCZuYnNwOzM3Jm5i
c3A7NTEmbmJzcDs1OSZuYnNwOyZuYnNwOzc4Jm5ic3A7Jm5ic3A7ODkmbmJzcDsxMDcmbmJzcDsx
MjMmbmJzcDsxMzQmbmJzcDsxNTAmbmJzcDsxNjQmbmJzcDsxODQmbmJzcDsyMDUmbmJzcDsyMjQm
bmJzcDsyNDA8L3NwYW54PjwvYz4KKzxjPjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4x
MCZuYnNwOzE1Jm5ic3A7MzImbmJzcDs1MSZuYnNwOzY3Jm5ic3A7Jm5ic3A7ODEmbmJzcDsmbmJz
cDs5NiZuYnNwOzExMiZuYnNwOzEyOSZuYnNwOzE0MiZuYnNwOzE1OCZuYnNwOzE3MyZuYnNwOzE4
OSZuYnNwOzIwNCZuYnNwOzIyMCZuYnNwOzIzNjwvc3Bhbng+PC9jPgorPGM+NjwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzgmbmJzcDsyMSZuYnNwOzM3Jm5ic3A7NTEmbmJzcDs2
NSZuYnNwOyZuYnNwOzc5Jm5ic3A7Jm5ic3A7OTgmbmJzcDsxMTMmbmJzcDsxMjYmbmJzcDsxMzgm
bmJzcDsxNTUmbmJzcDsxNjgmbmJzcDsxNzkmbmJzcDsxOTImbmJzcDsyMDkmbmJzcDsyMTg8L3Nw
YW54PjwvYz4KKzxjPjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xMiZuYnNwOzE1Jm5i
c3A7MzQmbmJzcDs1NSZuYnNwOzYzJm5ic3A7Jm5ic3A7NzgmbmJzcDsmbmJzcDs4NyZuYnNwOzEw
OCZuYnNwOzExOCZuYnNwOzEzMSZuYnNwOzE0OCZuYnNwOzE2NyZuYnNwOzE4NSZuYnNwOzIwMyZu
YnNwOzIxOSZuYnNwOzIzNjwvc3Bhbng+PC9jPgorPGM+ODwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPjE2Jm5ic3A7MTkmbmJzcDszMiZuYnNwOzM2Jm5ic3A7NTYmbmJzcDsmbmJzcDs3OSZu
YnNwOyZuYnNwOzkxJm5ic3A7MTA4Jm5ic3A7MTE4Jm5ic3A7MTM2Jm5ic3A7MTU0Jm5ic3A7MTcx
Jm5ic3A7MTg2Jm5ic3A7MjA0Jm5ic3A7MjIwJm5ic3A7MjM3PC9zcGFueD48L2M+Cis8Yz45PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTEmbmJzcDsyOCZuYnNwOzQzJm5ic3A7NTgmbmJz
cDs3NCZuYnNwOyZuYnNwOzg5Jm5ic3A7MTA1Jm5ic3A7MTIwJm5ic3A7MTM1Jm5ic3A7MTUwJm5i
c3A7MTY1Jm5ic3A7MTgwJm5ic3A7MTk2Jm5ic3A7MjExJm5ic3A7MjI2Jm5ic3A7MjQxPC9zcGFu
eD48L2M+Cis8Yz4xMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzYmbmJzcDsx
NiZuYnNwOzMzJm5ic3A7NDYmbmJzcDs2MCZuYnNwOyZuYnNwOzc1Jm5ic3A7Jm5ic3A7OTImbmJz
cDsxMDcmbmJzcDsxMjMmbmJzcDsxMzcmbmJzcDsxNTYmbmJzcDsxNjkmbmJzcDsxODUmbmJzcDsx
OTkmbmJzcDsyMTQmbmJzcDsyMjU8L3NwYW54PjwvYz4KKzxjPjExPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+MTEmbmJzcDsxOSZuYnNwOzMwJm5ic3A7NDQmbmJzcDs1NyZuYnNwOyZuYnNw
Ozc0Jm5ic3A7Jm5ic3A7ODkmbmJzcDsxMDUmbmJzcDsxMjEmbmJzcDsxMzUmbmJzcDsxNTImbmJz
cDsxNjkmbmJzcDsxODYmbmJzcDsyMDImbmJzcDsyMTgmbmJzcDsyMzQ8L3NwYW54PjwvYz4KKzxj
PjEyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTImbmJzcDsxOSZuYnNwOzI5Jm5ic3A7
NDYmbmJzcDs1NyZuYnNwOyZuYnNwOzcxJm5ic3A7Jm5ic3A7ODgmbmJzcDsxMDAmbmJzcDsxMjAm
bmJzcDsxMzImbmJzcDsxNDgmbmJzcDsxNjUmbmJzcDsxODImbmJzcDsxOTkmbmJzcDsyMTYmbmJz
cDsyMzM8L3NwYW54PjwvYz4KKzxjPjEzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTcm
bmJzcDsyMyZuYnNwOzM1Jm5ic3A7NDYmbmJzcDs1NiZuYnNwOyZuYnNwOzc3Jm5ic3A7Jm5ic3A7
OTImbmJzcDsxMDYmbmJzcDsxMjMmbmJzcDsxMzQmbmJzcDsxNTImbmJzcDsxNjcmbmJzcDsxODUm
bmJzcDsyMDQmbmJzcDsyMjImbmJzcDsyMzc8L3NwYW54PjwvYz4KKzxjPjE0PC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+MTQmbmJzcDsxNyZuYnNwOzQ1Jm5ic3A7NTMmbmJzcDs2MyZuYnNw
OyZuYnNwOzc1Jm5ic3A7Jm5ic3A7ODkmbmJzcDsxMDcmbmJzcDsxMTUmbmJzcDsxMzImbmJzcDsx
NTEmbmJzcDsxNzEmbmJzcDsxODgmbmJzcDsyMDYmbmJzcDsyMjEmbmJzcDsyNDA8L3NwYW54Pjwv
Yz4KKzxjPjE1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7OSZuYnNwOzE2Jm5i
c3A7MjkmbmJzcDs0MCZuYnNwOzU2Jm5ic3A7Jm5ic3A7NzEmbmJzcDsmbmJzcDs4OCZuYnNwOzEw
MyZuYnNwOzExOSZuYnNwOzEzNyZuYnNwOzE1NCZuYnNwOzE3MSZuYnNwOzE4OSZuYnNwOzIwNSZu
YnNwOzIyMiZuYnNwOzIzNzwvc3Bhbng+PC9jPgorPGM+MTY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4xNiZuYnNwOzE5Jm5ic3A7MzYmbmJzcDs0OCZuYnNwOzU3Jm5ic3A7Jm5ic3A7NzYm
bmJzcDsmbmJzcDs4NyZuYnNwOzEwNSZuYnNwOzExOCZuYnNwOzEzMiZuYnNwOzE1MCZuYnNwOzE2
NyZuYnNwOzE4NSZuYnNwOzIwMiZuYnNwOzIxOCZuYnNwOzIzNjwvc3Bhbng+PC9jPgorPGM+MTc8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xMiZuYnNwOzE3Jm5ic3A7MjkmbmJzcDs1NCZu
YnNwOzcxJm5ic3A7Jm5ic3A7ODEmbmJzcDsmbmJzcDs5NCZuYnNwOzEwNCZuYnNwOzEyNiZuYnNw
OzEzNiZuYnNwOzE0OSZuYnNwOzE2NCZuYnNwOzE4MiZuYnNwOzIwMSZuYnNwOzIyMSZuYnNwOzIz
Nzwvc3Bhbng+PC9jPgorPGM+MTg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNSZuYnNw
OzI4Jm5ic3A7NDcmbmJzcDs2MiZuYnNwOzc5Jm5ic3A7Jm5ic3A7OTcmbmJzcDsxMTUmbmJzcDsx
MjkmbmJzcDsxNDImbmJzcDsxNTUmbmJzcDsxNjgmbmJzcDsxODAmbmJzcDsxOTQmbmJzcDsyMDgm
bmJzcDsyMjMmbmJzcDsyMzg8L3NwYW54PjwvYz4KKzxjPjE5PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+Jm5ic3A7OCZuYnNwOzE0Jm5ic3A7MzAmbmJzcDs0NSZuYnNwOzYyJm5ic3A7Jm5i
c3A7NzgmbmJzcDsmbmJzcDs5NCZuYnNwOzExMSZuYnNwOzEyNyZuYnNwOzE0MyZuYnNwOzE1OSZu
YnNwOzE3NSZuYnNwOzE5MiZuYnNwOzIwNyZuYnNwOzIyMyZuYnNwOzIzOTwvc3Bhbng+PC9jPgor
PGM+MjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNyZuYnNwOzMwJm5ic3A7NDkmbmJz
cDs2MiZuYnNwOzc5Jm5ic3A7Jm5ic3A7OTImbmJzcDsxMDcmbmJzcDsxMTkmbmJzcDsxMzImbmJz
cDsxNDUmbmJzcDsxNjAmbmJzcDsxNzQmbmJzcDsxOTAmbmJzcDsyMDQmbmJzcDsyMjAmbmJzcDsy
MzU8L3NwYW54PjwvYz4KKzxjPjIxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTQmbmJz
cDsxOSZuYnNwOzM2Jm5ic3A7NDUmbmJzcDs2MSZuYnNwOyZuYnNwOzc2Jm5ic3A7Jm5ic3A7OTEm
bmJzcDsxMDgmbmJzcDsxMjEmbmJzcDsxMzgmbmJzcDsxNTQmbmJzcDsxNzImbmJzcDsxODkmbmJz
cDsyMDUmbmJzcDsyMjImbmJzcDsyMzg8L3NwYW54PjwvYz4KKzxjPjIyPC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+MTImbmJzcDsxOCZuYnNwOzMxJm5ic3A7NDUmbmJzcDs2MCZuYnNwOyZu
YnNwOzc2Jm5ic3A7Jm5ic3A7OTEmbmJzcDsxMDcmbmJzcDsxMjMmbmJzcDsxMzgmbmJzcDsxNTQm
bmJzcDsxNzEmbmJzcDsxODcmbmJzcDsyMDQmbmJzcDsyMjEmbmJzcDsyMzY8L3NwYW54PjwvYz4K
KzxjPjIzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTMmbmJzcDsxNyZuYnNwOzMxJm5i
c3A7NDMmbmJzcDs1MyZuYnNwOyZuYnNwOzcwJm5ic3A7Jm5ic3A7ODMmbmJzcDsxMDMmbmJzcDsx
MTQmbmJzcDsxMzEmbmJzcDsxNDkmbmJzcDsxNjcmbmJzcDsxODUmbmJzcDsyMDMmbmJzcDsyMjAm
bmJzcDsyMzc8L3NwYW54PjwvYz4KKzxjPjI0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
MTcmbmJzcDsyMiZuYnNwOzM1Jm5ic3A7NDImbmJzcDs1OCZuYnNwOyZuYnNwOzc4Jm5ic3A7Jm5i
c3A7OTMmbmJzcDsxMTAmbmJzcDsxMjUmbmJzcDsxMzkmbmJzcDsxNTUmbmJzcDsxNzAmbmJzcDsx
ODgmbmJzcDsyMDYmbmJzcDsyMjQmbmJzcDsyNDA8L3NwYW54PjwvYz4KKzxjPjI1PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7OCZuYnNwOzE1Jm5ic3A7MzQmbmJzcDs1MCZuYnNw
OzY3Jm5ic3A7Jm5ic3A7ODMmbmJzcDsmbmJzcDs5OSZuYnNwOzExNSZuYnNwOzEzMSZuYnNwOzE0
NiZuYnNwOzE2MiZuYnNwOzE3OCZuYnNwOzE5MyZuYnNwOzIwOSZuYnNwOzIyNCZuYnNwOzIzOTwv
c3Bhbng+PC9jPgorPGM+MjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xMyZuYnNwOzE2
Jm5ic3A7NDEmbmJzcDs2NiZuYnNwOzczJm5ic3A7Jm5ic3A7ODYmbmJzcDsmbmJzcDs5NSZuYnNw
OzExMSZuYnNwOzEyOCZuYnNwOzEzNyZuYnNwOzE1MCZuYnNwOzE2MyZuYnNwOzE4MyZuYnNwOzIw
NiZuYnNwOzIyNSZuYnNwOzI0MTwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4xNyZuYnNwOzI1Jm5ic3A7MzcmbmJzcDs1MiZuYnNwOzYzJm5ic3A7Jm5ic3A7
NzUmbmJzcDsmbmJzcDs5MiZuYnNwOzEwMiZuYnNwOzExOSZuYnNwOzEzMiZuYnNwOzE0NCZuYnNw
OzE2MCZuYnNwOzE3NSZuYnNwOzE5MSZuYnNwOzIxMiZuYnNwOzIzMTwvc3Bhbng+PC9jPgorPGM+
Mjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xOSZuYnNwOzMxJm5ic3A7NDkmbmJzcDs2
NSZuYnNwOzgzJm5ic3A7MTAwJm5ic3A7MTE3Jm5ic3A7MTMzJm5ic3A7MTQ3Jm5ic3A7MTYxJm5i
c3A7MTc0Jm5ic3A7MTg3Jm5ic3A7MjAwJm5ic3A7MjEzJm5ic3A7MjI3Jm5ic3A7MjQyPC9zcGFu
eD48L2M+Cis8Yz4yOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE4Jm5ic3A7MzEmbmJz
cDs1MiZuYnNwOzY4Jm5ic3A7ODgmbmJzcDsxMDMmbmJzcDsxMTcmbmJzcDsxMjYmbmJzcDsxMzgm
bmJzcDsxNDkmbmJzcDsxNjMmbmJzcDsxNzcmbmJzcDsxOTImbmJzcDsyMDcmbmJzcDsyMjMmbmJz
cDsyMzk8L3NwYW54PjwvYz4KKzxjPjMwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTYm
bmJzcDsyOSZuYnNwOzQ3Jm5ic3A7NjEmbmJzcDs3NiZuYnNwOyZuYnNwOzkwJm5ic3A7MTA2Jm5i
c3A7MTE5Jm5ic3A7MTMzJm5ic3A7MTQ3Jm5ic3A7MTYxJm5ic3A7MTc2Jm5ic3A7MTkzJm5ic3A7
MjA5Jm5ic3A7MjI0Jm5ic3A7MjQwPC9zcGFueD48L2M+Cis8Yz4zMTwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPjE1Jm5ic3A7MjEmbmJzcDszNSZuYnNwOzUwJm5ic3A7NjEmbmJzcDsmbmJz
cDs3MyZuYnNwOyZuYnNwOzg2Jm5ic3A7Jm5ic3A7OTcmbmJzcDsxMTAmbmJzcDsxMTkmbmJzcDsx
MjkmbmJzcDsxNDEmbmJzcDsxNzUmbmJzcDsxOTgmbmJzcDsyMTgmbmJzcDsyMzc8L3NwYW54Pjwv
Yz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK0dpdmVuIHRoZSBzdGFnZS0xIGNvZGVib29rIGVudHJ5
IGNiMV9ROFtdLCB0aGUgc3RhZ2UtMiByZXNpZHVhbCByZXNfUTEwW10sIGFuZAorIHRoZWlyIGNv
cnJlc3BvbmRpbmcgd2VpZ2h0cywgd19ROVtdLCB0aGUgcmVjb25zdHJ1Y3RlZCBub3JtYWxpemVk
IExTRgorIGNvZWZmaWNpZW50cyBhcmUKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29y
ayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK05MU0ZfUTE1W2tdID0gY2xhbXAoMCwKKyAgICAg
ICAgICAgICAgIChjYjFfUThba108PDcpICsgKHJlc19RMTBba108PDE0KS93X1E5W2tdLCAzMjc2
NykgLAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cisgd2hlcmUgdGhlIGRpdmlzaW9uIGlzIGlu
dGVnZXIgZGl2aXNpb24uCitIb3dldmVyLCBub3RoaW5nIGluIGVpdGhlciB0aGUgcmVjb25zdHJ1
Y3Rpb24gcHJvY2VzcyBvciB0aGUKKyBxdWFudGl6YXRpb24gcHJvY2VzcyBpbiB0aGUgZW5jb2Rl
ciB0aHVzIGZhciBndWFyYW50ZWVzIHRoYXQgdGhlIGNvZWZmaWNpZW50cworIGFyZSBtb25vdG9u
aWNhbGx5IGluY3JlYXNpbmcgYW5kIHNlcGFyYXRlZCB3ZWxsIGVub3VnaCB0byBlbnN1cmUgYSBz
dGFibGUKKyBmaWx0ZXIgPHhyZWYgdGFyZ2V0PSJLYWJhbDg2Ii8+LgorV2hlbiB1c2luZyB0aGUg
cmVmZXJlbmNlIGVuY29kZXIsIHJvdWdobHkgMiUgb2YgZnJhbWVzIHZpb2xhdGUgdGhpcyBjb25z
dHJhaW50LgorVGhlIG5leHQgc2VjdGlvbiBkZXNjcmliZXMgYSBzdGFiaWxpemF0aW9uIHByb2Nl
ZHVyZSB1c2VkIHRvIG1ha2UgdGhlc2UKKyBndWFyYW50ZWVzLgorPC90PgorCis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19ubHNmX3N0YWJpbGl6YXRpb24iIHRpdGxlPSJOb3Jt
YWxpemVkIExTRiBTdGFiaWxpemF0aW9uIj4KKzx0PgorVGhlIG5vcm1hbGl6ZWQgTFNGIHN0YWJp
bGl6YXRpb24gcHJvY2VkdXJlIGlzIGltcGxlbWVudGVkIGluCisgc2lsa19OTFNGX3N0YWJpbGl6
ZSgpIChOTFNGX3N0YWJpbGl6ZS5jKS4KK1RoaXMgcHJvY2VzcyBlbnN1cmVzIHRoYXQgY29uc2Vj
dXRpdmUgdmFsdWVzIG9mIHRoZSBub3JtYWxpemVkIExTRgorIGNvZWZmaWNpZW50cywgTkxTRl9R
MTVbXSwgYXJlIHNwYWNlZCBzb21lIG1pbmltdW0gZGlzdGFuY2UgYXBhcnQKKyAocHJlZGV0ZXJt
aW5lZCB0byBiZSB0aGUgMC4wMSBwZXJjZW50aWxlIG9mIGEgbGFyZ2UgdHJhaW5pbmcgc2V0KS4K
Kzx4cmVmIHRhcmdldD0ic2lsa19ubHNmX21pbl9zcGFjaW5nIi8+IGdpdmVzIHRoZSBtaW5pbXVt
IHNwYWNpbmdzIGZvciBOQiBhbmQgTUIKKyBhbmQgdGhvc2UgZm9yIFdCLCB3aGVyZSByb3cgayBp
cyB0aGUgbWluaW11bSBhbGxvd2VkIHZhbHVlIG9mCisgTkxTRl9RW2tdLU5MU0ZfUVtrLTFdLgor
Rm9yIHRoZSBwdXJwb3NlcyBvZiBjb21wdXRpbmcgdGhpcyBzcGFjaW5nIGZvciB0aGUgZmlyc3Qg
YW5kIGxhc3QgY29lZmZpY2llbnQsCisgTkxTRl9RMTVbLTFdIGlzIHRha2VuIHRvIGJlIDAsIGFu
ZCBOTFNGX1ExNVtkX0xQQ10gaXMgdGFrZW4gdG8gYmUgMzI3NjguCis8L3Q+CisKKzx0ZXh0dGFi
bGUgYW5jaG9yPSJzaWxrX25sc2ZfbWluX3NwYWNpbmciCisgICAgICAgICAgIHRpdGxlPSJNaW5p
bXVtIFNwYWNpbmcgZm9yIE5vcm1hbGl6ZWQgTFNGIENvZWZmaWNpZW50cyI+Cis8dHRjb2w+Q29l
ZmZpY2llbnQ8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+TkIgYW5kIE1CPC90dGNvbD4K
Kzx0dGNvbCBhbGlnbj0icmlnaHQiPldCPC90dGNvbD4KKyA8Yz4wPC9jPiA8Yz4yNTA8L2M+IDxj
PjEwMDwvYz4KKyA8Yz4xPC9jPiAgIDxjPjM8L2M+ICAgPGM+MzwvYz4KKyA8Yz4yPC9jPiAgIDxj
PjY8L2M+ICA8Yz40MDwvYz4KKyA8Yz4zPC9jPiAgIDxjPjM8L2M+ICAgPGM+MzwvYz4KKyA8Yz40
PC9jPiAgIDxjPjM8L2M+ICAgPGM+MzwvYz4KKyA8Yz41PC9jPiAgIDxjPjM8L2M+ICAgPGM+Mzwv
Yz4KKyA8Yz42PC9jPiAgIDxjPjQ8L2M+ICAgPGM+NTwvYz4KKyA8Yz43PC9jPiAgIDxjPjM8L2M+
ICA8Yz4xNDwvYz4KKyA8Yz44PC9jPiAgIDxjPjM8L2M+ICA8Yz4xNDwvYz4KKyA8Yz45PC9jPiAg
IDxjPjM8L2M+ICA8Yz4xMDwvYz4KKzxjPjEwPC9jPiA8Yz40NjE8L2M+ICA8Yz4xMTwvYz4KKzxj
PjExPC9jPiAgICAgICA8Yy8+ICAgPGM+MzwvYz4KKzxjPjEyPC9jPiAgICAgICA8Yy8+ICAgPGM+
ODwvYz4KKzxjPjEzPC9jPiAgICAgICA8Yy8+ICAgPGM+OTwvYz4KKzxjPjE0PC9jPiAgICAgICA8
Yy8+ICAgPGM+NzwvYz4KKzxjPjE1PC9jPiAgICAgICA8Yy8+ICAgPGM+MzwvYz4KKzxjPjE2PC9j
PiAgICAgICA8Yy8+IDxjPjM0NzwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK1RoZSBwcm9jZWR1
cmUgc3RhcnRzIG9mZiBieSB0cnlpbmcgdG8gbWFrZSBzbWFsbCBhZGp1c3RtZW50cyB3aGljaCBh
dHRlbXB0IHRvCisgbWluaW1pemUgdGhlIGFtb3VudCBvZiBkaXN0b3J0aW9uIGludHJvZHVjZWQu
CitBZnRlciAyMCBzdWNoIGFkanVzdG1lbnRzLCBpdCBmYWxscyBiYWNrIHRvIGEgbW9yZSBkaXJl
Y3QgbWV0aG9kIHdoaWNoCisgZ3VhcmFudGVlcyB0aGUgY29uc3RyYWludHMgYXJlIGVuZm9yY2Vk
IGJ1dCBtYXkgcmVxdWlyZSBsYXJnZSBhZGp1c3RtZW50cy4KKzwvdD4KKzx0PgorTGV0IE5EZWx0
YU1pbl9RMTVba10gYmUgdGhlIG1pbmltdW0gcmVxdWlyZWQgc3BhY2luZyBmb3IgdGhlIGN1cnJl
bnQgYXVkaW8KKyBiYW5kd2lkdGggZnJvbSA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9taW5fc3Bh
Y2luZyIvPi4KK0ZpcnN0LCB0aGUgcHJvY2VkdXJlIGZpbmRzIHRoZSBpbmRleCBpIHdoZXJlCisg
TkxTRl9RMTVbaV0mbmJzcDstJm5ic3A7TkxTRl9RMTVbaS0xXSZuYnNwOy0mbmJzcDtORGVsdGFN
aW5fUTE1W2ldIGlzIHRoZQorIHNtYWxsZXN0LCBicmVha2luZyB0aWVzIGJ5IHVzaW5nIHRoZSBs
b3dlciB2YWx1ZSBvZiBpLgorSWYgdGhpcyB2YWx1ZSBpcyBub24tbmVnYXRpdmUsIHRoZW4gdGhl
IHN0YWJpbGl6YXRpb24gc3RvcHM7IHRoZSBjb2VmZmljaWVudHMKKyBzYXRpc2Z5IGFsbCB0aGUg
Y29uc3RyYWludHMuCitPdGhlcndpc2UsIGlmIGkmbmJzcDs9PSZuYnNwOzAsIGl0IHNldHMgTkxT
Rl9RMTVbMF0gdG8gTkRlbHRhTWluX1ExNVswXSwgYW5kIGlmCisgaSZuYnNwOz09Jm5ic3A7ZF9M
UEMsIGl0IHNldHMgTkxTRl9RMTVbZF9MUEMtMV0gdG8KKyAoMzI3NjgmbmJzcDstJm5ic3A7TkRl
bHRhTWluX1ExNVtkX0xQQ10pLgorRm9yIGFsbCBvdGhlciB2YWx1ZXMgb2YgaSwgYm90aCBOTFNG
X1ExNVtpLTFdIGFuZCBOTFNGX1ExNVtpXSBhcmUgdXBkYXRlZCBhcworIGZvbGxvd3M6Cis8Zmln
dXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpLTEKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fCisgbWluX2NlbnRlcl9RMTUgPSAoTkRl
bHRhTWluX1ExNVtpXT4+MSkgKyBcICBORGVsdGFNaW5fUTE1W2tdCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvXworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaz0wCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZF9MUEMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgX18KKyBtYXhfY2VudGVyX1ExNSA9IDMyNzY4IC0gKE5EZWx0YU1pbl9RMTVb
aV0+PjEpIC0gXCAgTkRlbHRhTWluX1ExNVtrXQorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvXworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGs9aSsxCitjZW50ZXJfZnJlcV9RMTUgPSBjbGFtcChtaW5fY2Vu
dGVyX1ExNVtpXSwKKyAgICAgICAgICAgICAgICAgICAgICAgIChOTFNGX1ExNVtpLTFdICsgTkxT
Rl9RMTVbaV0gKyAxKT4+MSwKKyAgICAgICAgICAgICAgICAgICAgICAgIG1heF9jZW50ZXJfUTE1
W2ldKQorCisgTkxTRl9RMTVbaS0xXSA9IGNlbnRlcl9mcmVxX1ExNSAtIChORGVsdGFNaW5fUTE1
W2ldPj4xKQorCisgICBOTFNGX1ExNVtpXSA9IE5MU0ZfUTE1W2ktMV0gKyBORGVsdGFNaW5fUTE1
W2ldIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlbiB0aGUgcHJvY2VkdXJlIHJlcGVh
dHMgYWdhaW4sIHVudGlsIGl0IGhhcyBlaXRoZXIgZXhlY3V0ZWQgMjAgdGltZXMgb3IKKyBoYXMg
c3RvcHBlZCBiZWNhdXNlIHRoZSBjb2VmZmljaWVudHMgc2F0aXNmeSBhbGwgdGhlIGNvbnN0cmFp
bnRzLgorPC90PgorPHQ+CitBZnRlciB0aGUgMjB0aCByZXBldGl0aW9uIG9mIHRoZSBhYm92ZSBw
cm9jZWR1cmUsIHRoZSBmb2xsb3dpbmcgZmFsbGJhY2sKKyBwcm9jZWR1cmUgZXhlY3V0ZXMgb25j
ZS4KK0ZpcnN0LCB0aGUgdmFsdWVzIG9mIE5MU0ZfUTE1W2tdIGZvciAwJm5ic3A7Jmx0Oz0mbmJz
cDtrJm5ic3A7Jmx0OyZuYnNwO2RfTFBDCisgYXJlIHNvcnRlZCBpbiBhc2NlbmRpbmcgb3JkZXIu
CitUaGVuIGZvciBlYWNoIHZhbHVlIG9mIGsgZnJvbSAwIHRvIGRfTFBDLTEsIE5MU0ZfUTE1W2td
IGlzIHNldCB0bworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50
ZXIiPjwhW0NEQVRBWworbWF4KE5MU0ZfUTE1W2tdLCBOTFNGX1ExNVtrLTFdICsgTkRlbHRhTWlu
X1ExNVtrXSkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitOZXh0LCBmb3IgZWFjaCB2YWx1
ZSBvZiBrIGZyb20gZF9MUEMtMSBkb3duIHRvIDAsIE5MU0ZfUTE1W2tdIGlzIHNldCB0bworPGZp
Z3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
bWluKE5MU0ZfUTE1W2tdLCBOTFNGX1ExNVtrKzFdIC0gTkRlbHRhTWluX1ExNVtrKzFdKSAuCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBh
bmNob3I9InNpbGtfbmxzZl9pbnRlcnBvbGF0aW9uIiB0aXRsZT0iTm9ybWFsaXplZCBMU0YgSW50
ZXJwb2xhdGlvbiI+Cis8dD4KK0ZvciAyMCZuYnNwO21zIFNJTEsgZnJhbWVzLCB0aGUgZmlyc3Qg
aGFsZiBvZiB0aGUgZnJhbWUgKGkuZS4sIHRoZSBmaXJzdCB0d28KKyBzdWJmcmFtZXMpIG1heSB1
c2Ugbm9ybWFsaXplZCBMU0YgY29lZmZpY2llbnRzIHRoYXQgYXJlIGludGVycG9sYXRlZCBiZXR3
ZWVuCisgdGhlIGRlY29kZWQgTFNGcyBmb3IgdGhlIG1vc3QgcmVjZW50IGNvZGVkIGZyYW1lIChp
biB0aGUgc2FtZSBjaGFubmVsKSBhbmQgdGhlCisgY3VycmVudCBmcmFtZS4KK0EgUTIgaW50ZXJw
b2xhdGlvbiBmYWN0b3IgZm9sbG93cyB0aGUgTFNGIGNvZWZmaWNpZW50IGluZGljZXMgaW4gdGhl
IGJpdHN0cmVhbSwKKyB3aGljaCBpcyBkZWNvZGVkIHVzaW5nIHRoZSBQREYgaW4gPHhyZWYgdGFy
Z2V0PSJzaWxrX25sc2ZfaW50ZXJwX3BkZiIvPi4KK1RoaXMgaGFwcGVucyBpbiBzaWxrX2RlY29k
ZV9pbmRpY2VzKCkgKGRlY29kZV9pbmRpY2VzLmMpLgorQWZ0ZXIgZWl0aGVyCis8bGlzdCBzdHls
ZT0ic3ltYm9scyI+Cis8dD5BbiB1bmNvZGVkIHJlZ3VsYXIgU0lMSyBmcmFtZSBpbiB0aGUgc2lk
ZSBjaGFubmVsLCBvcjwvdD4KKzx0PkEgZGVjb2RlciByZXNldCAoc2VlIDx4cmVmIHRhcmdldD0i
ZGVjb2Rlci1yZXNldCIvPiksPC90PgorPC9saXN0PgorIHRoZSBkZWNvZGVyIHN0aWxsIGRlY29k
ZXMgdGhpcyBmYWN0b3IsIGJ1dCBpZ25vcmVzIGl0cyB2YWx1ZSBhbmQgYWx3YXlzIHVzZXMKKyA0
IGluc3RlYWQuCitGb3IgMTAmbmJzcDttcyBTSUxLIGZyYW1lcywgdGhpcyBmYWN0b3IgaXMgbm90
IHN0b3JlZCBhdCBhbGwuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25sc2ZfaW50
ZXJwX3BkZiIKKyAgICAgICAgICAgdGl0bGU9IlBERiBmb3IgTm9ybWFsaXplZCBMU0YgSW50ZXJw
b2xhdGlvbiBJbmRleCI+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPnsxMywgMjIsIDI5LCAxMSwg
MTgxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitMZXQgbjJfUTE1W2tdIGJlIHRoZSBu
b3JtYWxpemVkIExTRiBjb2VmZmljaWVudHMgZGVjb2RlZCBieSB0aGUgcHJvY2VkdXJlIGluCisg
PHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZzIi8+LCBuMF9RMTVba10gYmUgdGhlIExTRiBjb2VmZmlj
aWVudHMKKyBkZWNvZGVkIGZvciB0aGUgcHJpb3IgZnJhbWUsIGFuZCB3X1EyIGJlIHRoZSBpbnRl
cnBvbGF0aW9uIGZhY3Rvci4KK1RoZW4gdGhlIG5vcm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50cyB1
c2VkIGZvciB0aGUgZmlyc3QgaGFsZiBvZiBhIDIwJm5ic3A7bXMKKyBmcmFtZSwgbjFfUTE1W2td
LCBhcmUKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48
IVtDREFUQVsKK24xX1ExNVtrXSA9IG4wX1ExNVtrXSArICh3X1EyKihuMl9RMTVba10gLSBuMF9R
MTVba10pID4+IDIpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhpcyBpbnRlcnBvbGF0
aW9uIGlzIHBlcmZvcm1lZCBpbiBzaWxrX2RlY29kZV9wYXJhbWV0ZXJzKCkKKyAoZGVjb2RlX3Bh
cmFtZXRlcnMuYykuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19u
bHNmMmxwYyIKKyB0aXRsZT0iQ29udmVydGluZyBOb3JtYWxpemVkIExTRnMgdG8gTFBDIENvZWZm
aWNpZW50cyI+Cis8dD4KK0FueSBMUEMgZmlsdGVyIEEoeikgY2FuIGJlIHNwbGl0IGludG8gYSBz
eW1tZXRyaWMgcGFydCBQKHopIGFuZCBhbgorIGFudGktc3ltbWV0cmljIHBhcnQgUSh6KSBzdWNo
IHRoYXQKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48
IVtDREFUQVsKKyAgICAgICAgICBkX0xQQworICAgICAgICAgICBfXyAgICAgICAgIC1rICAgMQor
QSh6KSA9IDEgLSBcICBhW2tdICogeiAgID0gLSAqIChQKHopICsgUSh6KSkKKyAgICAgICAgICAg
L18gICAgICAgICAgICAgIDIKKyAgICAgICAgICAgaz0xCitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KK3dpdGgKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij48IVtDREFUQVsKKyAgICAgICAgICAgICAgIC1kX0xQQy0xICAgICAgLTEKK1AoeikgPSBBKHop
ICsgeiAgICAgICAgICogQSh6ICApCisKKyAgICAgICAgICAgICAgIC1kX0xQQy0xICAgICAgLTEK
K1EoeikgPSBBKHopIC0geiAgICAgICAgICogQSh6ICApIC4KK11dPjwvYXJ0d29yaz4KKzwvZmln
dXJlPgorVGhlIGV2ZW4gbm9ybWFsaXplZCBMU0YgY29lZmZpY2llbnRzIGNvcnJlc3BvbmQgdG8g
YSBwYWlyIG9mIGNvbmp1Z2F0ZSByb290cyBvZgorIFAoeiksIHdoaWxlIHRoZSBvZGQgY29lZmZp
Y2llbnRzIGNvcnJlc3BvbmQgdG8gYSBwYWlyIG9mIGNvbmp1Z2F0ZSByb290cyBvZgorIFEoeiks
IGFsbCBvZiB3aGljaCBsaWUgb24gdGhlIHVuaXQgY2lyY2xlLgorSW4gYWRkaXRpb24sIFAoeikg
aGFzIGEgcm9vdCBhdCBwaSBhbmQgUSh6KSBoYXMgYSByb290IGF0IDAuCitUaHVzLCB0aGV5IG1h
eSBiZSByZWNvbnN0cnVjdGVkIG1hdGhlbWF0aWNhbGx5IGZyb20gYSBzZXQgb2Ygbm9ybWFsaXpl
ZCBMU0YKKyBjb2VmZmljaWVudHMsIG5ba10sIGFzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgIGRfTFBD
LzItMQorICAgICAgICAgICAgIC0xICAgICBfX18gICAgICAgICAgICAgICAgICAgICAgICAtMSAg
ICAtMgorUCh6KSA9ICgxICsgeiAgKSAqICB8IHwgICgxIC0gMipjb3MocGkqblsyKmtdKSp6ICAr
IHogICkKKyAgICAgICAgICAgICAgICAgICAgaz0wCisKKyAgICAgICAgICAgICAgICAgZF9MUEMv
Mi0xCisgICAgICAgICAgICAgLTEgICAgIF9fXyAgICAgICAgICAgICAgICAgICAgICAgICAgLTEg
ICAgLTIKK1EoeikgPSAoMSAtIHogICkgKiAgfCB8ICAoMSAtIDIqY29zKHBpKm5bMiprKzFdKSp6
ICArIHogICkKKyAgICAgICAgICAgICAgICAgICAgaz0wCitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KKzwvdD4KKzx0PgorSG93ZXZlciwgU0lMSyBwZXJmb3JtcyB0aGlzIHJlY29uc3RydWN0aW9u
IHVzaW5nIGEgZml4ZWQtcG9pbnQgYXBwcm94aW1hdGlvbiBzbworIHRoYXQgYWxsIGRlY29kZXJz
IGNhbiByZXByb2R1Y2UgaXQgaW4gYSBiaXQtZXhhY3QgbWFubmVyIHRvIGF2b2lkIHByZWRpY3Rp
b24KKyBkcmlmdC4KK1RoZSBmdW5jdGlvbiBzaWxrX05MU0YyQSgpIChOTFNGMkEuYykgaW1wbGVt
ZW50cyB0aGlzIHByb2NlZHVyZS4KKzwvdD4KKzx0PgorVG8gc3RhcnQsIGl0IGFwcHJveGltYXRl
cyBjb3MocGkqbltrXSkgdXNpbmcgYSB0YWJsZSBsb29rdXAgd2l0aCBsaW5lYXIKKyBpbnRlcnBv
bGF0aW9uLgorVGhlIGVuY29kZXIgU0hPVUxEIHVzZSB0aGUgaW52ZXJzZSBvZiB0aGlzIHBpZWNl
d2lzZSBsaW5lYXIgYXBwcm94aW1hdGlvbiwKKyByYXRoZXIgdGhhbiB0aGUgdHJ1ZSBpbnZlcnNl
IG9mIHRoZSBjb3NpbmUgZnVuY3Rpb24sIHdoZW4gZGVyaXZpbmcgdGhlCisgbm9ybWFsaXplZCBM
U0YgY29lZmZpY2llbnRzLgorVGhlc2UgdmFsdWVzIGFyZSBhbHNvIHJlLW9yZGVyZWQgdG8gaW1w
cm92ZSBudW1lcmljYWwgYWNjdXJhY3kgd2hlbgorIGNvbnN0cnVjdGluZyB0aGUgTFBDIHBvbHlu
b21pYWxzLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNmX29yZGVyaW5ncyIK
KyAgICAgICAgICAgdGl0bGU9IkxTRiBPcmRlcmluZyBmb3IgUG9seW5vbWlhbCBFdmFsdWF0aW9u
Ij4KKzx0dGNvbD5Db2VmZmljaWVudDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5OQiBh
bmQgTUI8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+V0I8L3R0Y29sPgorIDxjPjA8L2M+
ICA8Yz4wPC9jPiAgPGM+MDwvYz4KKyA8Yz4xPC9jPiAgPGM+OTwvYz4gPGM+MTU8L2M+CisgPGM+
MjwvYz4gIDxjPjY8L2M+ICA8Yz44PC9jPgorIDxjPjM8L2M+ICA8Yz4zPC9jPiAgPGM+NzwvYz4K
KyA8Yz40PC9jPiAgPGM+NDwvYz4gIDxjPjQ8L2M+CisgPGM+NTwvYz4gIDxjPjU8L2M+IDxjPjEx
PC9jPgorIDxjPjY8L2M+ICA8Yz44PC9jPiA8Yz4xMjwvYz4KKyA8Yz43PC9jPiAgPGM+MTwvYz4g
IDxjPjM8L2M+CisgPGM+ODwvYz4gIDxjPjI8L2M+ICA8Yz4yPC9jPgorIDxjPjk8L2M+ICA8Yz43
PC9jPiA8Yz4xMzwvYz4KKzxjPjEwPC9jPiAgICAgIDxjLz4gPGM+MTA8L2M+Cis8Yz4xMTwvYz4g
ICAgICA8Yy8+ICA8Yz41PC9jPgorPGM+MTI8L2M+ICAgICAgPGMvPiAgPGM+NjwvYz4KKzxjPjEz
PC9jPiAgICAgIDxjLz4gIDxjPjk8L2M+Cis8Yz4xNDwvYz4gICAgICA8Yy8+IDxjPjE0PC9jPgor
PGM+MTU8L2M+ICAgICAgPGMvPiAgPGM+MTwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK1RoZSB0
b3AgNyBiaXRzIG9mIGVhY2ggbm9ybWFsaXplZCBMU0YgY29lZmZpY2llbnQgaW5kZXggYSB2YWx1
ZSBpbiB0aGUgdGFibGUsCisgYW5kIHRoZSBuZXh0IDggYml0cyBpbnRlcnBvbGF0ZSBiZXR3ZWVu
IGl0IGFuZCB0aGUgbmV4dCB2YWx1ZS4KK0xldCBpJm5ic3A7PSZuYnNwOyhuW2tdJm5ic3A7Jmd0
OyZndDsmbmJzcDs4KSBiZSB0aGUgaW50ZWdlciBpbmRleCBhbmQKKyBmJm5ic3A7PSZuYnNwOyhu
W2tdJm5ic3A7JmFtcDsmbmJzcDsyNTUpIGJlIHRoZSBmcmFjdGlvbmFsIHBhcnQgb2YgYSBnaXZl
bgorIGNvZWZmaWNpZW50LgorVGhlbiB0aGUgcmUtb3JkZXJlZCwgYXBwcm94aW1hdGVkIGNvc2lu
ZSwgY19RMTdbb3JkZXJpbmdba11dLCBpcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworY19RMTdbb3JkZXJpbmdba11dID0gKGNvc19R
MTJbaV0qMjU2CisgICAgICAgICAgICAgICAgICAgICAgKyAoY29zX1ExMltpKzFdLWNvc19RMTJb
aV0pKmYgKyA0KSA+PiAzICwKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdoZXJlIG9yZGVy
aW5nW2tdIGlzIHRoZSBrJ3RoIGVudHJ5IG9mIHRoZSBjb2x1bW4gb2YKKyA8eHJlZiB0YXJnZXQ9
InNpbGtfbmxzZl9vcmRlcmluZ3MiLz4gY29ycmVzcG9uZGluZyB0byB0aGUgY3VycmVudCBhdWRp
bworIGJhbmR3aWR0aCBhbmQgY29zX1ExMltpXSBpcyB0aGUgaSd0aCBlbnRyeSBvZiA8eHJlZiB0
YXJnZXQ9InNpbGtfY29zX3RhYmxlIi8+LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2ls
a19jb3NfdGFibGUiCisgICAgICAgICAgIHRpdGxlPSJRMTIgQ29zaW5lIFRhYmxlIGZvciBMU0Yg
Q29udmVyc2lvbiI+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5pPC90dGNvbD4KKzx0dGNvbCBhbGln
bj0icmlnaHQiPiswPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPisxPC90dGNvbD4KKzx0
dGNvbCBhbGlnbj0icmlnaHQiPisyPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPiszPC90
dGNvbD4KKzxjPjA8L2M+CisgPGM+NDA5NjwvYz4gPGM+NDA5NTwvYz4gPGM+NDA5MTwvYz4gPGM+
NDA4NTwvYz4KKzxjPjQ8L2M+CisgPGM+NDA3NjwvYz4gPGM+NDA2NTwvYz4gPGM+NDA1MjwvYz4g
PGM+NDAzNjwvYz4KKzxjPjg8L2M+CisgPGM+NDAxNzwvYz4gPGM+Mzk5NzwvYz4gPGM+Mzk3Mzwv
Yz4gPGM+Mzk0ODwvYz4KKzxjPjEyPC9jPgorIDxjPjM5MjA8L2M+IDxjPjM4ODk8L2M+IDxjPjM4
NTc8L2M+IDxjPjM4MjI8L2M+Cis8Yz4xNjwvYz4KKyA8Yz4zNzg0PC9jPiA8Yz4zNzQ1PC9jPiA8
Yz4zNzAzPC9jPiA8Yz4zNjU5PC9jPgorPGM+MjA8L2M+CisgPGM+MzYxMzwvYz4gPGM+MzU2NDwv
Yz4gPGM+MzUxMzwvYz4gPGM+MzQ2MTwvYz4KKzxjPjI0PC9jPgorIDxjPjM0MDY8L2M+IDxjPjMz
NDk8L2M+IDxjPjMyOTA8L2M+IDxjPjMyMjk8L2M+Cis8Yz4yODwvYz4KKyA8Yz4zMTY2PC9jPiA8
Yz4zMTAyPC9jPiA8Yz4zMDM1PC9jPiA8Yz4yOTY3PC9jPgorPGM+MzI8L2M+CisgPGM+Mjg5Njwv
Yz4gPGM+MjgyNDwvYz4gPGM+Mjc1MTwvYz4gPGM+MjY3NjwvYz4KKzxjPjM2PC9jPgorIDxjPjI1
OTk8L2M+IDxjPjI1MjA8L2M+IDxjPjI0NDA8L2M+IDxjPjIzNTk8L2M+Cis8Yz40MDwvYz4KKyA8
Yz4yMjc2PC9jPiA8Yz4yMTkxPC9jPiA8Yz4yMTA2PC9jPiA8Yz4yMDE5PC9jPgorPGM+NDQ8L2M+
CisgPGM+MTkzMTwvYz4gPGM+MTg0MjwvYz4gPGM+MTc1MTwvYz4gPGM+MTY2MDwvYz4KKzxjPjQ4
PC9jPgorIDxjPjE1Njg8L2M+IDxjPjE0NzQ8L2M+IDxjPjEzODA8L2M+IDxjPjEyODU8L2M+Cis8
Yz41MjwvYz4KKyA8Yz4xMTg5PC9jPiA8Yz4xMDkzPC9jPiAgPGM+OTk1PC9jPiAgPGM+ODk3PC9j
PgorPGM+NTY8L2M+CisgIDxjPjc5OTwvYz4gIDxjPjcwMDwvYz4gIDxjPjYwMTwvYz4gIDxjPjUw
MTwvYz4KKzxjPjYwPC9jPgorICA8Yz40MDE8L2M+ICA8Yz4zMDE8L2M+ICA8Yz4yMDE8L2M+ICA8
Yz4xMDE8L2M+Cis8Yz42NDwvYz4KKyAgICA8Yz4wPC9jPiA8Yz4tMTAxPC9jPiA8Yz4tMjAxPC9j
PiA8Yz4tMzAxPC9jPgorPGM+Njg8L2M+CisgPGM+LTQwMTwvYz4gPGM+LTUwMTwvYz4gPGM+LTYw
MTwvYz4gPGM+LTcwMDwvYz4KKzxjPjcyPC9jPgorIDxjPi03OTk8L2M+IDxjPi04OTc8L2M+IDxj
Pi05OTU8L2M+IDxjPi0xMDkzPC9jPgorPGM+NzY8L2M+Cis8Yz4tMTE4OTwvYz48Yz4tMTI4NTwv
Yz48Yz4tMTM4MDwvYz48Yz4tMTQ3NDwvYz4KKzxjPjgwPC9jPgorPGM+LTE1Njg8L2M+PGM+LTE2
NjA8L2M+PGM+LTE3NTE8L2M+PGM+LTE4NDI8L2M+Cis8Yz44NDwvYz4KKzxjPi0xOTMxPC9jPjxj
Pi0yMDE5PC9jPjxjPi0yMTA2PC9jPjxjPi0yMTkxPC9jPgorPGM+ODg8L2M+Cis8Yz4tMjI3Njwv
Yz48Yz4tMjM1OTwvYz48Yz4tMjQ0MDwvYz48Yz4tMjUyMDwvYz4KKzxjPjkyPC9jPgorPGM+LTI1
OTk8L2M+PGM+LTI2NzY8L2M+PGM+LTI3NTE8L2M+PGM+LTI4MjQ8L2M+Cis8Yz45NjwvYz4KKzxj
Pi0yODk2PC9jPjxjPi0yOTY3PC9jPjxjPi0zMDM1PC9jPjxjPi0zMTAyPC9jPgorPGM+MTAwPC9j
PgorPGM+LTMxNjY8L2M+PGM+LTMyMjk8L2M+PGM+LTMyOTA8L2M+PGM+LTMzNDk8L2M+Cis8Yz4x
MDQ8L2M+Cis8Yz4tMzQwNjwvYz48Yz4tMzQ2MTwvYz48Yz4tMzUxMzwvYz48Yz4tMzU2NDwvYz4K
KzxjPjEwODwvYz4KKzxjPi0zNjEzPC9jPjxjPi0zNjU5PC9jPjxjPi0zNzAzPC9jPjxjPi0zNzQ1
PC9jPgorPGM+MTEyPC9jPgorPGM+LTM3ODQ8L2M+PGM+LTM4MjI8L2M+PGM+LTM4NTc8L2M+PGM+
LTM4ODk8L2M+Cis8Yz4xMTY8L2M+Cis8Yz4tMzkyMDwvYz48Yz4tMzk0ODwvYz48Yz4tMzk3Mzwv
Yz48Yz4tMzk5NzwvYz4KKzxjPjEyMDwvYz4KKzxjPi00MDE3PC9jPjxjPi00MDM2PC9jPjxjPi00
MDUyPC9jPjxjPi00MDY1PC9jPgorPGM+MTI0PC9jPgorPGM+LTQwNzY8L2M+PGM+LTQwODU8L2M+
PGM+LTQwOTE8L2M+PGM+LTQwOTU8L2M+Cis8Yz4xMjg8L2M+Cis8Yz4tNDA5NjwvYz4gICAgICAg
IDxjLz4gICAgICAgIDxjLz4gICAgICAgIDxjLz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK0dpdmVu
IHRoZSBsaXN0IG9mIGNvc2luZSB2YWx1ZXMsIHNpbGtfTkxTRjJBX2ZpbmRfcG9seSgpIChOTFNG
MkEuYykKKyBjb21wdXRlcyB0aGUgY29lZmZpY2llbnRzIG9mIFAgYW5kIFEsIGRlc2NyaWJlZCBo
ZXJlIHZpYSBhIHNpbXBsZSByZWN1cnJlbmNlLgorTGV0IHBfUTE2W2tdW2pdIGFuZCBxX1ExNltr
XVtqXSBiZSB0aGUgY29lZmZpY2llbnRzIG9mIHRoZSBwcm9kdWN0cyBvZiB0aGUKKyBmaXJzdCAo
aysxKSByb290IHBhaXJzIGZvciBQIGFuZCBRLCB3aXRoIGogaW5kZXhpbmcgdGhlIGNvZWZmaWNp
ZW50IG51bWJlci4KK09ubHkgdGhlIGZpcnN0IChrKzIpIGNvZWZmaWNpZW50cyBhcmUgbmVlZGVk
LCBhcyB0aGUgcHJvZHVjdHMgYXJlIHN5bW1ldHJpYy4KK0xldCBwX1ExNlswXVswXSZuYnNwOz0m
bmJzcDtxX1ExNlswXVswXSZuYnNwOz0mbmJzcDsxJmx0OyZsdDsxNiwKKyBwX1ExNlswXVsxXSZu
YnNwOz0mbmJzcDstY19RMTdbMF0sIHFfUTE2WzBdWzFdJm5ic3A7PSZuYnNwOy1jX1ExN1sxXSwg
YW5kCisgZDImbmJzcDs9Jm5ic3A7ZF9MUEMvMi4KK0FzIGJvdW5kYXJ5IGNvbmRpdGlvbnMsIGFz
c3VtZQorIHBfUTE2W2tdW2pdJm5ic3A7PSZuYnNwO3FfUTE2W2tdW2pdJm5ic3A7PSZuYnNwOzAg
Zm9yIGFsbAorIGombmJzcDsmbHQ7Jm5ic3A7MC4KK0Fsc28sIGFzc3VtZSBwX1ExNltrXVtrKzJd
Jm5ic3A7PSZuYnNwO3BfUTE2W2tdW2tdIGFuZAorIHFfUTE2W2tdW2srMl0mbmJzcDs9Jm5ic3A7
cV9RMTZba11ba10gKGJlY2F1c2Ugb2YgdGhlIHN5bW1ldHJ5KS4KK1RoZW4sIGZvciAwJm5ic3A7
Jmx0OyZuYnNwO2smbmJzcDsmbHQ7Jm5ic3A7ZDIgYW5kIDAmbmJzcDsmbHQ7PSZuYnNwO2ombmJz
cDsmbHQ7PSZuYnNwO2srMSwKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGln
bj0iY2VudGVyIj48IVtDREFUQVsKK3BfUTE2W2tdW2pdID0gcF9RMTZbay0xXVtqXSArIHBfUTE2
W2stMV1bai0yXQorICAgICAgICAgICAgICAtICgoY19RMTdbMiprXSpwX1ExNltrLTFdW2otMV0g
KyAzMjc2OCk+PjE2KSAsCisKK3FfUTE2W2tdW2pdID0gcV9RMTZbay0xXVtqXSArIHFfUTE2W2st
MV1bai0yXQorICAgICAgICAgICAgICAtICgoY19RMTdbMiprKzFdKnFfUTE2W2stMV1bai0xXSAr
IDMyNzY4KT4+MTYpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlIHVzZSBvZiBRMTcg
dmFsdWVzIGZvciB0aGUgY29zaW5lIHRlcm1zIGluIGFuIG90aGVyd2lzZSBRMTYgZXhwcmVzc2lv
bgorIGltcGxpY2l0bHkgc2NhbGVzIHRoZW0gYnkgYSBmYWN0b3Igb2YgMi4KK1RoZSBtdWx0aXBs
aWNhdGlvbnMgaW4gdGhpcyByZWN1cnJlbmNlIG1heSByZXF1aXJlIHVwIHRvIDQ4IGJpdHMgb2Yg
cHJlY2lzaW9uCisgaW4gdGhlIHJlc3VsdCB0byBhdm9pZCBvdmVyZmxvdy4KK0luIHByYWN0aWNl
LCBlYWNoIHJvdyBvZiB0aGUgcmVjdXJyZW5jZSBvbmx5IGRlcGVuZHMgb24gdGhlIHByZXZpb3Vz
IHJvdywgc28gYW4KKyBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCBuZWVkIHRvIHN0b3JlIGFsbCBv
ZiB0aGVtLgorPC90PgorPHQ+CitzaWxrX05MU0YyQSgpIHVzZXMgdGhlIHZhbHVlcyBmcm9tIHRo
ZSBsYXN0IHJvdyBvZiB0aGlzIHJlY3VycmVuY2UgdG8KKyByZWNvbnN0cnVjdCBhIDMyLWJpdCB2
ZXJzaW9uIG9mIHRoZSBMUEMgZmlsdGVyICh3aXRob3V0IHRoZSBsZWFkaW5nIDEuMAorIGNvZWZm
aWNpZW50KSwgYTMyX1ExN1trXSwgMCZuYnNwOyZsdDs9Jm5ic3A7ayZuYnNwOyZsdDsmbmJzcDtk
MjoKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKK2EzMl9RMTdba10gICAgICAgICA9IC0ocV9RMTZbZDItMV1baysxXSAtIHFfUTE2W2Qy
LTFdW2tdKQorICAgICAgICAgICAgICAgICAgICAgLSAocF9RMTZbZDItMV1baysxXSArIHBfUTE2
W2QyLTFdW2tdKSkgLAorCithMzJfUTE3W2RfTFBDLWstMV0gPSAgKHFfUTE2W2QyLTFdW2srMV0g
LSBxX1ExNltkMi0xXVtrXSkKKyAgICAgICAgICAgICAgICAgICAgIC0gKHBfUTE2W2QyLTFdW2sr
MV0gKyBwX1ExNltkMi0xXVtrXSkpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlIHN1
bSBhbmQgZGlmZmVyZW5jZSBvZiB0d28gdGVybXMgZnJvbSBlYWNoIG9mIHRoZSBwX1ExNiBhbmQg
cV9RMTYKKyBjb2VmZmljaWVudCBsaXN0cyByZWZsZWN0IHRoZSAoMSZuYnNwOysmbmJzcDt6Kiot
MSkgYW5kCisgKDEmbmJzcDstJm5ic3A7eioqLTEpIGZhY3RvcnMgb2YgUCBhbmQgUSwgcmVzcGVj
dGl2ZWx5LgorVGhlIHByb21vdGlvbiBvZiB0aGUgZXhwcmVzc2lvbiBmcm9tIFExNiB0byBRMTcg
aW1wbGljaXRseSBzY2FsZXMgdGhlIHJlc3VsdAorIGJ5IDEvMi4KKzwvdD4KKzwvc2VjdGlvbj4K
KworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2xwY19yYW5nZV9saW1pdCIKKyB0aXRsZT0iTGltaXRp
bmcgdGhlIFJhbmdlIG9mIHRoZSBMUEMgQ29lZmZpY2llbnRzIj4KKzx0PgorVGhlIGEzMl9RMTdb
XSBjb2VmZmljaWVudHMgYXJlIHRvbyBsYXJnZSB0byBmaXQgaW4gYSAxNi1iaXQgdmFsdWUsIHdo
aWNoCisgc2lnbmlmaWNhbnRseSBpbmNyZWFzZXMgdGhlIGNvc3Qgb2YgYXBwbHlpbmcgdGhpcyBm
aWx0ZXIgaW4gZml4ZWQtcG9pbnQKKyBkZWNvZGVycy4KK1JlZHVjaW5nIHRoZW0gdG8gUTEyIHBy
ZWNpc2lvbiBkb2Vzbid0IGluY3VyIGFueSBzaWduaWZpY2FudCBxdWFsaXR5IGxvc3MsCisgYnV0
IHN0aWxsIGRvZXMgbm90IGd1YXJhbnRlZSB0aGV5IHdpbGwgZml0Lgorc2lsa19OTFNGMkEoKSBh
cHBsaWVzIHVwIHRvIDEwIHJvdW5kcyBvZiBiYW5kd2lkdGggZXhwYW5zaW9uIHRvIGxpbWl0Cisg
dGhlIGR5bmFtaWMgcmFuZ2Ugb2YgdGhlc2UgY29lZmZpY2llbnRzLgorRXZlbiBmbG9hdGluZy1w
b2ludCBkZWNvZGVycyBTSE9VTEQgcGVyZm9ybSB0aGVzZSBzdGVwcywgdG8gYXZvaWQgbWlzbWF0
Y2guCis8L3Q+Cis8dD4KK0ZvciBlYWNoIHJvdW5kLCB0aGUgcHJvY2VzcyBmaXJzdCBmaW5kcyB0
aGUgaW5kZXggayBzdWNoIHRoYXQgYWJzKGEzMl9RMTdba10pCisgaXMgbGFyZ2VzdCwgYnJlYWtp
bmcgdGllcyBieSBjaG9vc2luZyB0aGUgbG93ZXN0IHZhbHVlIG9mIGsuCitUaGVuLCBpdCBjb21w
dXRlcyB0aGUgY29ycmVzcG9uZGluZyBRMTIgcHJlY2lzaW9uIHZhbHVlLCBtYXhhYnNfUTEyLCBz
dWJqZWN0IHRvCisgYW4gdXBwZXIgYm91bmQgdG8gYXZvaWQgb3ZlcmZsb3cgaW4gc3Vic2VxdWVu
dCBjb21wdXRhdGlvbnM6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCittYXhhYnNfUTEyID0gbWluKChtYXhhYnNfUTE3ICsgMTYpID4+
IDUsIDE2MzgzOCkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitJZiB0aGlzIGlzIGxhcmdl
ciB0aGFuIDMyNzY3LCB0aGUgcHJvY2VkdXJlIGRlcml2ZXMgdGhlIGNoaXJwIGZhY3RvciwKKyBz
Y19RMTZbMF0sIHRvIHVzZSBpbiB0aGUgYmFuZHdpZHRoIGV4cGFuc2lvbiBhcworPGZpZ3VyZSBh
bGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAg
ICAgICAgICAgICAgICAobWF4YWJzX1ExMiAtIDMyNzY3KSA8PCAxNAorc2NfUTE2WzBdID0gNjU0
NzAgLSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAsCisgICAgICAgICAgICAgICAgICAgICht
YXhhYnNfUTEyICogKGsrMSkpID4+IDIKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdoZXJl
IHRoZSBkaXZpc2lvbiBoZXJlIGlzIGludGVnZXIgZGl2aXNpb24uCitUaGlzIGlzIGFuIGFwcHJv
eGltYXRpb24gb2YgdGhlIGNoaXJwIGZhY3RvciBuZWVkZWQgdG8gcmVkdWNlIHRoZSB0YXJnZXQK
KyBjb2VmZmljaWVudCB0byAzMjc2NywgdGhvdWdoIGl0IGlzIGJvdGggbGVzcyB0aGFuIDAuOTk5
IGFuZCwgZm9yCisgayZuYnNwOyZndDsmbmJzcDswIHdoZW4gbWF4YWJzX1ExMiBpcyBtdWNoIGdy
ZWF0ZXIgdGhhbiAzMjc2Nywgc3RpbGwgc2xpZ2h0bHkKKyB0b28gbGFyZ2UuCitUaGUgdXBwZXIg
Ym91bmQgb24gbWF4YWJzX1ExMiwgMTYzODM4LCB3YXMgY2hvc2VuIGJlY2F1c2UgaXQgaXMgZXF1
YWwgdG8KKyAoKDIqKjMxJm5ic3A7LSZuYnNwOzEpJm5ic3A7Jmd0OyZndDsmbmJzcDsxNCkmbmJz
cDsrJm5ic3A7MzI3NjcsIGkuZS4sIHRoZQorIGxhcmdlc3QgdmFsdWUgb2YgbWF4YWJzX1ExMiB0
aGF0IHdvdWxkIG5vdCBvdmVyZmxvdyB0aGUgbnVtZXJhdG9yIGluIHRoZQorIGVxdWF0aW9uIGFi
b3ZlIHdoZW4gc3RvcmVkIGluIGEgc2lnbmVkIDMyLWJpdCBpbnRlZ2VyLgorPC90PgorPHQ+Citz
aWxrX2J3ZXhwYW5kZXJfMzIoKSAoYndleHBhbmRlcl8zMi5jKSBwZXJmb3JtcyB0aGUgYmFuZHdp
ZHRoIGV4cGFuc2lvbiAoYWdhaW4sCisgb25seSB3aGVuIG1heGFic19RMTIgaXMgZ3JlYXRlciB0
aGFuIDMyNzY3KSB1c2luZyB0aGUgZm9sbG93aW5nIHJlY3VycmVuY2U6Cis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgYTMyX1ExN1tr
XSA9IChhMzJfUTE3W2tdKnNjX1ExNltrXSkgPj4gMTYKKworc2NfUTE2W2srMV0gPSAoc2NfUTE2
WzBdKnNjX1ExNltrXSArIDMyNzY4KSA+PiAxNgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitU
aGUgZmlyc3QgbXVsdGlwbHkgbWF5IHJlcXVpcmUgdXAgdG8gNDggYml0cyBvZiBwcmVjaXNpb24g
aW4gdGhlIHJlc3VsdCB0bworIGF2b2lkIG92ZXJmbG93LgorVGhlIHNlY29uZCBtdWx0aXBseSBt
dXN0IGJlIHVuc2lnbmVkIHRvIGF2b2lkIG92ZXJmbG93IHdpdGggb25seSAzMiBiaXRzIG9mCisg
cHJlY2lzaW9uLgorVGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiB1c2VzIGEgc2xpZ2h0bHkg
bW9yZSBjb21wbGV4IGZvcm11bGF0aW9uIHRoYXQKKyBhdm9pZHMgdGhlIDMyLWJpdCBvdmVyZmxv
dyB1c2luZyBzaWduZWQgbXVsdGlwbGljYXRpb24sIGJ1dCBpcyBvdGhlcndpc2UKKyBlcXVpdmFs
ZW50LgorPC90PgorPHQ+CitBZnRlciAxMCByb3VuZHMgb2YgYmFuZHdpZHRoIGV4cGFuc2lvbiBh
cmUgcGVyZm9ybWVkLCB0aGV5IGFyZSBzaW1wbHkgc2F0dXJhdGVkCisgdG8gMTYgYml0czoKKzxm
aWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsK
K2EzMl9RMTdba10gPSBjbGFtcCgtMzI3NjgsIChhMzJfUTE3W2tdICsgMTYpID4+IDUsIDMyNzY3
KSA8PCA1IC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorQmVjYXVzZSB0aGlzIHBlcmZvcm1z
IHRoZSBhY3R1YWwgc2F0dXJhdGlvbiBpbiB0aGUgUTEyIGRvbWFpbiwgYnV0IGNvbnZlcnRzIHRo
ZQorIGNvZWZmaWNpZW50cyBiYWNrIHRvIHRoZSBRMTcgZG9tYWluIGZvciB0aGUgcHVycG9zZXMg
b2YgcHJlZGljdGlvbiBnYWluCisgbGltaXRpbmcsIHRoaXMgc3RlcCBtdXN0IGJlIHBlcmZvcm1l
ZCBhZnRlciB0aGUgMTB0aCByb3VuZCBvZiBiYW5kd2lkdGgKKyBleHBhbnNpb24sIHJlZ2FyZGxl
c3Mgb2Ygd2hldGhlciBvciBub3QgdGhlIFExMiB2ZXJzaW9uIG9mIGFueSBjb2VmZmljaWVudAor
IHN0aWxsIG92ZXJmbG93cyBhIDE2LWJpdCBpbnRlZ2VyLgorVGhpcyBzYXR1cmF0aW9uIGlzIG5v
dCBwZXJmb3JtZWQgaWYgbWF4YWJzX1ExMiBkcm9wcyB0byAzMjc2NyBvciBsZXNzIHByaW9yIHRv
CisgdGhlIDEwdGggcm91bmQuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0i
c2lsa19scGNfZ2Fpbl9saW1pdCIKKyB0aXRsZT0iTGltaXRpbmcgdGhlIFByZWRpY3Rpb24gR2Fp
biBvZiB0aGUgTFBDIEZpbHRlciI+Cis8dD4KK1RoZSBwcmVkaWN0aW9uIGdhaW4gb2YgYW4gTFBD
IHN5bnRoZXNpcyBmaWx0ZXIgaXMgdGhlIHNxdWFyZS1yb290IG9mIHRoZSBvdXRwdXQKKyBlbmVy
Z3kgd2hlbiB0aGUgZmlsdGVyIGlzIGV4Y2l0ZWQgYnkgYSB1bml0LWVuZXJneSBpbXB1bHNlLgor
RXZlbiBpZiB0aGUgUTEyIGNvZWZmaWNpZW50cyB3b3VsZCBmaXQsIHRoZSByZXN1bHRpbmcgZmls
dGVyIG1heSBzdGlsbCBoYXZlIGEKKyBzaWduaWZpY2FudCBnYWluIChlc3BlY2lhbGx5IGZvciB2
b2ljZWQgc291bmRzKSwgbWFraW5nIHRoZSBmaWx0ZXIgdW5zdGFibGUuCitzaWxrX05MU0YyQSgp
IGFwcGxpZXMgdXAgdG8gMTggYWRkaXRpb25hbCByb3VuZHMgb2YgYmFuZHdpZHRoIGV4cGFuc2lv
biB0bworIGxpbWl0IHRoZSBwcmVkaWN0aW9uIGdhaW4uCitJbnN0ZWFkIG9mIGNvbnRyb2xsaW5n
IHRoZSBhbW91bnQgb2YgYmFuZHdpZHRoIGV4cGFuc2lvbiB1c2luZyB0aGUgcHJlZGljdGlvbgor
IGdhaW4gaXRzZWxmICh3aGljaCBtYXkgZGl2ZXJnZSB0byBpbmZpbml0eSBmb3IgYW4gdW5zdGFi
bGUgZmlsdGVyKSwKKyBzaWxrX05MU0YyQSgpIHVzZXMgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dh
aW5fUUEoKSAoTFBDX2ludl9wcmVkX2dhaW4uYykgdG8KKyBjb21wdXRlIHRoZSByZWZsZWN0aW9u
IGNvZWZmaWNpZW50cyBhc3NvY2lhdGVkIHdpdGggdGhlIGZpbHRlci4KK1RoZSBmaWx0ZXIgaXMg
c3RhYmxlIGlmIGFuZCBvbmx5IGlmIHRoZSBtYWduaXR1ZGUgb2YgdGhlc2UgY29lZmZpY2llbnRz
IGlzCisgc3VmZmljaWVudGx5IGxlc3MgdGhhbiBvbmUuCitUaGUgcmVmbGVjdGlvbiBjb2VmZmlj
aWVudHMsIHJjW2tdLCBjYW4gYmUgY29tcHV0ZWQgdXNpbmcgYSBzaW1wbGUgTGV2aW5zb24KKyBy
ZWN1cnJlbmNlLCBpbml0aWFsaXplZCB3aXRoIHRoZSBMUEMgY29lZmZpY2llbnRzCisgYVtkX0xQ
Qy0xXVtuXSZuYnNwOz0mbmJzcDthW25dLCBhbmQgdGhlbiB1cGRhdGVkIHZpYQorPGZpZ3VyZSBh
bGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgIHJj
W2tdID0gLWFba11ba10gLAorCisgICAgICAgICAgICBhW2tdW25dIC0gYVtrXVtrLW4tMV0qcmNb
a10KK2Fbay0xXVtuXSA9IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAuCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDIKKyAgICAgICAgICAgICAgICAgICAgMSAtIHJjW2tdCitdXT48
L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKzx0PgorSG93ZXZlciwgc2lsa19MUENfaW52ZXJz
ZV9wcmVkX2dhaW5fUUEoKSBhcHByb3hpbWF0ZXMgdGhpcyB1c2luZyBmaXhlZC1wb2ludAorIGFy
aXRobWV0aWMgdG8gZ3VhcmFudGVlIHJlcHJvZHVjaWJsZSByZXN1bHRzIGFjcm9zcyBwbGF0Zm9y
bXMgYW5kCisgaW1wbGVtZW50YXRpb25zLgorU2luY2Ugc21hbGwgY2hhbmdlcyBpbiB0aGUgY29l
ZmZpY2llbnRzIGNhbiBtYWtlIGEgc3RhYmxlIGZpbHRlciB1bnN0YWJsZSwgaXQKKyB0YWtlcyB0
aGUgcmVhbCBRMTIgY29lZmZpY2llbnRzIHRoYXQgd2lsbCBiZSB1c2VkIGR1cmluZyByZWNvbnN0
cnVjdGlvbiBhcworIGlucHV0LgorVGh1cywgbGV0Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCithMzJfUTEyW25dID0gKGEzMl9RMTdb
bl0gKyAxNikgPj4gNQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisgYmUgdGhlIFExMiB2ZXJz
aW9uIG9mIHRoZSBMUEMgY29lZmZpY2llbnRzIHRoYXQgd2lsbCBldmVudHVhbGx5IGJlIHVzZWQu
CitBcyBhIHNpbXBsZSBpbml0aWFsIGNoZWNrLCB0aGUgZGVjb2RlciBjb21wdXRlcyB0aGUgREMg
cmVzcG9uc2UgYXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2Vu
dGVyIj48IVtDREFUQVsKKyAgICAgICAgZF9QTEMtMQorICAgICAgICAgIF9fCitEQ19yZXNwID0g
XCAgIGEzMl9RMTJbbl0KKyAgICAgICAgICAvXworICAgICAgICAgIG49MAorXV0+PC9hcnR3b3Jr
PgorPC9maWd1cmU+CisgYW5kIGlmIERDX3Jlc3AmbmJzcDsmZ3Q7Jm5ic3A7NDA5NiwgdGhlIGZp
bHRlciBpcyB1bnN0YWJsZS4KKzwvdD4KKzx0PgorSW5jcmVhc2luZyB0aGUgcHJlY2lzaW9uIG9m
IHRoZXNlIFExMiBjb2VmZmljaWVudHMgdG8gUTI0IGZvciBpbnRlcm1lZGlhdGUKKyBjb21wdXRh
dGlvbnMgYWxsb3dzIG1vcmUgYWNjdXJhdGUgY29tcHV0YXRpb24gb2YgdGhlIHJlZmxlY3Rpb24g
Y29lZmZpY2llbnRzLAorIHNvIHRoZSBkZWNvZGVyIGluaXRpYWxpemVzIHRoZSByZWN1cnJlbmNl
IHZpYQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworYTMyX1EyNFtkX0xQQy0xXVtuXSA9IGEzMl9RMTJbbl0gPDwgMTIgLgorXV0+PC9h
cnR3b3JrPgorPC9maWd1cmU+CitUaGVuIGZvciBlYWNoIGsgZnJvbSBkX0xQQy0xIGRvd24gdG8g
MCwgaWYKKyBhYnMoYTMyX1EyNFtrXVtrXSkmbmJzcDsmZ3Q7Jm5ic3A7MTY3NzMwMjIsIHRoZSBm
aWx0ZXIgaXMgdW5zdGFibGUgYW5kIHRoZQorIHJlY3VycmVuY2Ugc3RvcHMuCitUaGUgY29uc3Rh
bnQgMTY3NzMwMjIgaGVyZSBpcyBhcHByb3hpbWF0ZWx5IDAuOTk5NzUgaW4gUTI0LgorT3RoZXJ3
aXNlLCByb3cgay0xIG9mIGEzMl9RMjQgaXMgY29tcHV0ZWQgZnJvbSByb3cgayBhcworPGZpZ3Vy
ZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAg
ICAgcmNfUTMxW2tdID0gLWEzMl9RMjRba11ba10gPDwgNyAsCisKKyAgICAgZGl2X1EzMFtrXSA9
ICgxPDwzMCkgLSAocmNfUTMxW2tdKnJjX1EzMVtrXSA+PiAzMikgLAorCisgICAgICAgICAgYjFb
a10gPSBpbG9nKGRpdl9RMzBba10pICwKKworICAgICAgICAgIGIyW2tdID0gYjFba10gLSAxNiAs
CisKKyAgICAgICAgICAgICAgICAgICAgICAgICgxPDwyOSkgLSAxCisgICAgIGludl9RYjJba10g
PSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAsCisgICAgICAgICAgICAgICAgICBkaXZfUTMwW2td
ID4+IChiMltrXSsxKQorCisgICAgIGVycl9RMjlba10gPSAoMTw8MjkpCisgICAgICAgICAgICAg
ICAgICAtICgoZGl2X1EzMFtrXTw8KDE1LWIyW2tdKSkqaW52X1FiMltrXSA+PiAxNikgLAorCisg
ICAgZ2Fpbl9RYjFba10gPSAoKGludl9RYjJba10gPDwgMTYpCisgICAgICAgICAgICAgICAgICAg
KyAoZXJyX1EyOVtrXSppbnZfUWIyW2tdID4+IDEzKSkgLAorCitudW1fUTI0W2stMV1bbl0gPSBh
MzJfUTI0W2tdW25dCisgICAgICAgICAgICAgICAgICAtICgoYTMyX1EyNFtrXVtrLW4tMV0qcmNf
UTMxW2tdICsgKDE8PDMwKSkgPj4gMzEpICwKKworYTMyX1EyNFtrLTFdW25dID0gKG51bV9RMjRb
ay0xXVtuXSpnYWluX1FiMVtrXQorICAgICAgICAgICAgICAgICAgICsgKDE8PChiMVtrXS0xKSkp
ID4+IGIxW2tdICwKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdoZXJlIDAmbmJzcDsmbHQ7
PSZuYnNwO24mbmJzcDsmbHQ7Jm5ic3A7ay4KK0hlcmUsIHJjX1EzMFtrXSBhcmUgdGhlIHJlZmxl
Y3Rpb24gY29lZmZpY2llbnRzLgorZGl2X1EzMFtrXSBpcyB0aGUgZGVub21pbmF0b3IgZm9yIGVh
Y2ggaXRlcmF0aW9uLCBhbmQgZ2Fpbl9RYjFba10gaXMgaXRzCisgbXVsdGlwbGljYXRpdmUgaW52
ZXJzZSAod2l0aCBiMVtrXSBmcmFjdGlvbmFsIGJpdHMsIHdoZXJlIGIxW2tdIHJhbmdlcyBmcm9t
CisgMjAgdG8gMzEpLgoraW52X1FiMltrXSwgd2hpY2ggcmFuZ2VzIGZyb20gMTYzODQgdG8gMzI3
NjcsIGlzIGEgbG93LXByZWNpc2lvbiB2ZXJzaW9uIG9mCisgdGhhdCBpbnZlcnNlICh3aXRoIGIy
W2tdIGZyYWN0aW9uYWwgYml0cykuCitlcnJfUTI5W2tdIGlzIHRoZSByZXNpZHVhbCBlcnJvciwg
cmFuZ2luZyBmcm9tIC0zMjc2MyB0byAzMjM5Miwgd2hpY2ggaXMgdXNlZAorIHRvIGltcHJvdmUg
dGhlIGFjY3VyYWN5LgorVGhlIHZhbHVlcyB0X1EyNFtrLTFdW25dIGZvciBlYWNoIG4gYXJlIHRo
ZSBudW1lcmF0b3JzIGZvciB0aGUgbmV4dCByb3cgb2YKKyBjb2VmZmljaWVudHMgaW4gdGhlIHJl
Y3Vyc2lvbiwgYW5kIGEzMl9RMjRbay0xXVtuXSBpcyB0aGUgZmluYWwgdmVyc2lvbiBvZgorIHRo
YXQgcm93LgorRXZlcnkgbXVsdGlwbHkgaW4gdGhpcyBwcm9jZWR1cmUgZXhjZXB0IHRoZSBvbmUg
dXNlZCB0byBjb21wdXRlIGdhaW5fUWIxW2tdCisgcmVxdWlyZXMgbW9yZSB0aGFuIDMyIGJpdHMg
b2YgcHJlY2lzaW9uLCBidXQgb3RoZXJ3aXNlIGFsbCBpbnRlcm1lZGlhdGUKKyByZXN1bHRzIGZp
dCBpbiAzMiBiaXRzIG9yIGxlc3MuCitJbiBwcmFjdGljZSwgYmVjYXVzZSBlYWNoIHJvdyBvbmx5
IGRlcGVuZHMgb24gdGhlIG5leHQgb25lLCBhbiBpbXBsZW1lbnRhdGlvbgorIGRvZXMgbm90IG5l
ZWQgdG8gc3RvcmUgdGhlbSBhbGwuCis8L3Q+Cis8dD4KK0lmIGFicyhhMzJfUTI0W2tdW2tdKSZu
YnNwOyZsdDs9Jm5ic3A7MTY3NzMwMjIgZm9yCisgMCZuYnNwOyZsdDs9Jm5ic3A7ayZuYnNwOyZs
dDsmbmJzcDtkX0xQQywgdGhlbiB0aGUgZmlsdGVyIGlzIGNvbnNpZGVyZWQgc3RhYmxlLgorSG93
ZXZlciwgdGhlIHByb2JsZW0gb2YgZGV0ZXJtaW5pbmcgc3RhYmlsaXR5IGlzIGlsbC1jb25kaXRp
b25lZCB3aGVuIHRoZQorIGZpbHRlciBjb250YWlucyBzZXZlcmFsIHJlZmxlY3Rpb24gY29lZmZp
Y2llbnRzIHdob3NlIG1hZ25pdHVkZSBpcyB2ZXJ5IGNsb3NlCisgdG8gb25lLgorVGhpcyBmaXhl
ZC1wb2ludCBhbGdvcml0aG0gaXMgbm90IG1hdGhlbWF0aWNhbGx5IGd1YXJhbnRlZWQgdG8gY29y
cmVjdGx5CisgY2xhc3NpZnkgZmlsdGVycyBhcyBzdGFibGUgb3IgdW5zdGFibGUgaW4gdGhpcyBj
YXNlLCB0aG91Z2ggaXQgZG9lcyB2ZXJ5IHdlbGwKKyBpbiBwcmFjdGljZS4KKzwvdD4KKzx0Pgor
T24gcm91bmQgaSwgMSZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDs9Jm5ic3A7MTgsIGlmIHRo
ZSBmaWx0ZXIgcGFzc2VzIHRoZXNlCisgc3RhYmlsaXR5IGNoZWNrcywgdGhlbiB0aGlzIHByb2Nl
ZHVyZSBzdG9wcywgYW5kIHRoZSBmaW5hbCBMUEMgY29lZmZpY2llbnRzIHRvCisgdXNlIGZvciBy
ZWNvbnN0cnVjdGlvbiBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfbHBjX3N5bnRoZXNpcyIvPiBhcmUK
KzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKK2FfUTEyW2tdID0gKGEzMl9RMTdba10gKyAxNikgPj4gNSAuCitdXT48L2FydHdvcms+Cis8
L2ZpZ3VyZT4KK090aGVyd2lzZSwgYSByb3VuZCBvZiBiYW5kd2lkdGggZXhwYW5zaW9uIGlzIGFw
cGxpZWQgdXNpbmcgdGhlIHNhbWUgcHJvY2VkdXJlCisgYXMgaW4gPHhyZWYgdGFyZ2V0PSJzaWxr
X2xwY19yYW5nZV9saW1pdCIvPiwgd2l0aAorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworc2NfUTE2WzBdID0gNjU1MzYgLSAoMjw8aSkg
LgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitEdXJpbmcgdGhlIDE1dGggcm91bmQsIHNjX1Ex
NlswXSBiZWNvbWVzIDAgaW4gdGhlIGFib3ZlIGVxdWF0aW9uLCBzbyBhX1ExMltrXQorIGlzIHNl
dCB0byAwIGZvciBhbGwgaywgZ3VhcmFudGVlaW5nIGEgc3RhYmxlIGZpbHRlci4KKzwvdD4KKzwv
c2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbHRwX3BhcmFt
cyIgdG9jPSJpbmNsdWRlIgorIHRpdGxlPSJMb25nLVRlcm0gUHJlZGljdGlvbiAoTFRQKSBQYXJh
bWV0ZXJzIj4KKzx0PgorQWZ0ZXIgdGhlIG5vcm1hbGl6ZWQgTFNGIGluZGljZXMgYW5kLCBmb3Ig
MjAmbmJzcDttcyBmcmFtZXMsIHRoZSBMU0YKKyBpbnRlcnBvbGF0aW9uIGluZGV4LCB2b2ljZWQg
ZnJhbWVzIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pCisgaW5jbHVkZSBh
ZGRpdGlvbmFsIExUUCBwYXJhbWV0ZXJzLgorVGhlcmUgaXMgb25lIHByaW1hcnkgbGFnIGluZGV4
IGZvciBlYWNoIFNJTEsgZnJhbWUsIGJ1dCB0aGlzIGlzIHJlZmluZWQgdG8KKyBwcm9kdWNlIGEg
c2VwYXJhdGUgbGFnIGluZGV4IHBlciBzdWJmcmFtZSB1c2luZyBhIHZlY3RvciBxdWFudGl6ZXIu
CitFYWNoIHN1YmZyYW1lIGFsc28gZ2V0cyBpdHMgb3duIHByZWRpY3Rpb24gZ2FpbiBjb2VmZmlj
aWVudC4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2x0cF9sYWdzIiB0aXRsZT0iUGl0
Y2ggTGFncyI+Cis8dD4KK1RoZSBwcmltYXJ5IGxhZyBpbmRleCBpcyBjb2RlZCBlaXRoZXIgcmVs
YXRpdmUgdG8gdGhlIHByaW1hcnkgbGFnIG9mIHRoZSBwcmlvcgorIGZyYW1lIGluIHRoZSBzYW1l
IGNoYW5uZWwsIG9yIGFzIGFuIGFic29sdXRlIGluZGV4LgorQWJzb2x1dGUgY29kaW5nIGlzIHVz
ZWQgaWYgYW5kIG9ubHkgaWYKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PgorVGhpcyBpcyB0
aGUgZmlyc3QgU0lMSyBmcmFtZSBvZiBpdHMgdHlwZSAoTEJSUiBvciByZWd1bGFyKSBmb3IgdGhp
cyBjaGFubmVsIGluCisgdGhlIGN1cnJlbnQgT3B1cyBmcmFtZSwKKzwvdD4KKzx0PgorVGhlIHBy
ZXZpb3VzIFNJTEsgZnJhbWUgb2YgdGhlIHNhbWUgdHlwZSAoTEJSUiBvciByZWd1bGFyKSBmb3Ig
dGhpcyBjaGFubmVsIGluCisgdGhlIHNhbWUgT3B1cyBmcmFtZSB3YXMgbm90IGNvZGVkLCBvcgor
PC90PgorPHQ+CitUaGF0IHByZXZpb3VzIFNJTEsgZnJhbWUgd2FzIGNvZGVkLCBidXQgd2FzIG5v
dCB2b2ljZWQgKHNlZQorIDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV90eXBlIi8+KS4KKzwvdD4K
KzwvbGlzdD4KKzwvdD4KKworPHQ+CitXaXRoIGFic29sdXRlIGNvZGluZywgdGhlIHByaW1hcnkg
cGl0Y2ggbGFnIG1heSByYW5nZSBmcm9tIDImbmJzcDttcworIChpbmNsdXNpdmUpIHVwIHRvIDE4
Jm5ic3A7bXMgKGV4Y2x1c2l2ZSksIGNvcnJlc3BvbmRpbmcgdG8gcGl0Y2hlcyBmcm9tCisgNTAw
Jm5ic3A7SHogZG93biB0byA1NS42Jm5ic3A7SHosIHJlc3BlY3RpdmVseS4KK0l0IGlzIGNvbXBy
aXNlZCBvZiBhIGhpZ2ggcGFydCBhbmQgYSBsb3cgcGFydCwgd2hlcmUgdGhlIGRlY29kZXIgcmVh
ZHMgdGhlIGhpZ2gKKyBwYXJ0IHVzaW5nIHRoZSAzMi1lbnRyeSBjb2RlYm9vayBpbiA8eHJlZiB0
YXJnZXQ9InNpbGtfYWJzX3BpdGNoX2hpZ2hfcGRmIi8+CisgYW5kIHRoZSBsb3cgcGFydCB1c2lu
ZyB0aGUgY29kZWJvb2sgY29ycmVzcG9uZGluZyB0byB0aGUgY3VycmVudCBhdWRpbworIGJhbmR3
aWR0aCBmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19hYnNfcGl0Y2hfbG93X3BkZiIvPi4KK1RoZSBm
aW5hbCBwcmltYXJ5IHBpdGNoIGxhZyBpcyB0aGVuCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitsYWcgPSBsYWdfaGlnaCpsYWdfc2Nh
bGUgKyBsYWdfbG93ICsgbGFnX21pbgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cisgd2hlcmUg
bGFnX2hpZ2ggaXMgdGhlIGhpZ2ggcGFydCwgbGFnX2xvdyBpcyB0aGUgbG93IHBhcnQsIGFuZCBs
YWdfc2NhbGUKKyBhbmQgbGFnX21pbiBhcmUgdGhlIHZhbHVlcyBmcm9tIHRoZSAiU2NhbGUiIGFu
ZCAiTWluaW11bSBMYWciIGNvbHVtbnMgb2YKKyA8eHJlZiB0YXJnZXQ9InNpbGtfYWJzX3BpdGNo
X2xvd19wZGYiLz4sIHJlc3BlY3RpdmVseS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNp
bGtfYWJzX3BpdGNoX2hpZ2hfcGRmIgorIHRpdGxlPSJQREYgZm9yIEhpZ2ggUGFydCBvZiBQcmlt
YXJ5IFBpdGNoIExhZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz57Mywg
ICAzLCAgIDYsICAxMSwgIDIxLCAgMzAsICAzMiwgIDE5LAorICAgMTEsICAxMCwgIDEyLCAgMTMs
ICAxMywgIDEyLCAgMTEsICAgOSwKKyAgICA4LCAgIDcsICAgNiwgICA0LCAgIDIsICAgMiwgICAy
LCAgIDEsCisgICAgMSwgICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAxfS8yNTY8L2M+
Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfYWJzX3BpdGNoX2xvd19w
ZGYiCisgdGl0bGU9IlBERiBmb3IgTG93IFBhcnQgb2YgUHJpbWFyeSBQaXRjaCBMYWciPgorPHR0
Y29sPkF1ZGlvIEJhbmR3aWR0aDwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNvbD4KKzx0dGNvbD5T
Y2FsZTwvdHRjb2w+Cis8dHRjb2w+TWluaW11bSBMYWc8L3R0Y29sPgorPHR0Y29sPk1heGltdW0g
TGFnPC90dGNvbD4KKzxjPk5CPC9jPiA8Yz57NjQsIDY0LCA2NCwgNjR9LzI1NjwvYz4gICAgICAg
ICAgICAgICAgIDxjPjQ8L2M+IDxjPjE2PC9jPiA8Yz4xNDQ8L2M+Cis8Yz5NQjwvYz4gPGM+ezQz
LCA0MiwgNDMsIDQzLCA0MiwgNDN9LzI1NjwvYz4gICAgICAgICA8Yz42PC9jPiA8Yz4yNDwvYz4g
PGM+MjE2PC9jPgorPGM+V0I8L2M+IDxjPnszMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzJ9
LzI1NjwvYz4gPGM+ODwvYz4gPGM+MzI8L2M+IDxjPjI4ODwvYz4KKzwvdGV4dHRhYmxlPgorCis8
dD4KK0FsbCBmcmFtZXMgdGhhdCBkbyBub3QgdXNlIGFic29sdXRlIGNvZGluZyBmb3IgdGhlIHBy
aW1hcnkgbGFnIGluZGV4IHVzZQorIHJlbGF0aXZlIGNvZGluZyBpbnN0ZWFkLgorVGhlIGRlY29k
ZXIgcmVhZHMgYSBzaW5nbGUgZGVsdGEgdmFsdWUgdXNpbmcgdGhlIDIxLWVudHJ5IFBERiBpbgor
IDx4cmVmIHRhcmdldD0ic2lsa19yZWxfcGl0Y2hfcGRmIi8+LgorSWYgdGhlIHJlc3VsdGluZyB2
YWx1ZSBpcyB6ZXJvLCBpdCBmYWxscyBiYWNrIHRvIHRoZSBhYnNvbHV0ZSBjb2RpbmcgcHJvY2Vk
dXJlCisgZnJvbSB0aGUgcHJpb3IgcGFyYWdyYXBoLgorT3RoZXJ3aXNlLCB0aGUgZmluYWwgcHJp
bWFyeSBwaXRjaCBsYWcgaXMgdGhlbgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3Jr
IGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworbGFnID0gcHJldmlvdXNfbGFnICsgKGRlbHRhX2xh
Z19pbmRleCAtIDkpCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyB3aGVyZSBwcmV2aW91c19s
YWcgaXMgdGhlIHByaW1hcnkgcGl0Y2ggbGFnIGZyb20gdGhlIG1vc3QgcmVjZW50IGZyYW1lIGlu
IHRoZQorIHNhbWUgY2hhbm5lbCBhbmQgZGVsdGFfbGFnX2luZGV4IGlzIHRoZSB2YWx1ZSBqdXN0
IGRlY29kZWQuCitUaGlzIGFsbG93cyBhIHBlci1mcmFtZSBjaGFuZ2UgaW4gdGhlIHBpdGNoIGxh
ZyBvZiAtOCB0byArMTEgc2FtcGxlcy4KK1RoZSBkZWNvZGVyIGRvZXMgbm8gY2xhbXBpbmcgYXQg
dGhpcyBwb2ludCwgc28gdGhpcyB2YWx1ZSBjYW4gZmFsbCBvdXRzaWRlIHRoZQorIHJhbmdlIG9m
IDImbmJzcDttcyB0byAxOCZuYnNwO21zLCBhbmQgdGhlIGRlY29kZXIgbXVzdCB1c2UgdGhpcyB1
bmNsYW1wZWQKKyB2YWx1ZSB3aGVuIHVzaW5nIHJlbGF0aXZlIGNvZGluZyBpbiB0aGUgbmV4dCBT
SUxLIGZyYW1lIChpZiBhbnkpLgorSG93ZXZlciwgYmVjYXVzZSBhbiBPcHVzIGZyYW1lIGNhbiB1
c2UgcmVsYXRpdmUgY29kaW5nIGZvciBhdCBtb3N0IHR3bworIGNvbnNlY3V0aXZlIFNJTEsgZnJh
bWVzLCBpbnRlZ2VyIG92ZXJmbG93IHNob3VsZCBub3QgYmUgYW4gaXNzdWUuCis8L3Q+CisKKzx0
ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3JlbF9waXRjaF9wZGYiCisgdGl0bGU9IlBERiBmb3IgUHJp
bWFyeSBQaXRjaCBMYWcgQ2hhbmdlIj4KKzx0dGNvbCBhbGlnbj0ibGVmdCI+UERGPC90dGNvbD4K
KzxjPns0NiwgIDIsICAyLCAgMywgIDQsICA2LCAxMCwgMTUsCisgICAgMjYsIDM4LCAzMCwgMjIs
IDE1LCAxMCwgIDcsICA2LAorICAgICA0LCAgNCwgIDIsICAyLCAgMn0vMjU2PC9jPgorPC90ZXh0
dGFibGU+CisKKzx0PgorQWZ0ZXIgdGhlIHByaW1hcnkgcGl0Y2ggbGFnLCBhICJwaXRjaCBjb250
b3VyIiwgc3RvcmVkIGFzIGEgc2luZ2xlIGVudHJ5IGZyb20KKyBvbmUgb2YgZm91ciBzbWFsbCBW
USBjb2RlYm9va3MsIGdpdmVzIGxhZyBvZmZzZXRzIGZvciBlYWNoIHN1YmZyYW1lIGluIHRoZQor
IGN1cnJlbnQgU0lMSyBmcmFtZS4KK1RoZSBjb2RlYm9vayBpbmRleCBpcyBkZWNvZGVkIHVzaW5n
IG9uZSBvZiB0aGUgUERGcyBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19waXRjaF9jb250b3VyX3Bk
ZnMiLz4gZGVwZW5kaW5nIG9uIHRoZSBjdXJyZW50IGZyYW1lIHNpemUKKyBhbmQgYXVkaW8gYmFu
ZHdpZHRoLgorVGFibGVzJm5ic3A7PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtf
cGl0Y2hfY29udG91cl9jYl9uYjEwbXMiLz4KKyB0aHJvdWdoJm5ic3A7PHhyZWYgZm9ybWF0PSJj
b3VudGVyIiB0YXJnZXQ9InNpbGtfcGl0Y2hfY29udG91cl9jYl9tYndiMjBtcyIvPgorIGdpdmUg
dGhlIGNvcnJlc3BvbmRpbmcgb2Zmc2V0cyB0byBhcHBseSB0byB0aGUgcHJpbWFyeSBwaXRjaCBs
YWcgZm9yIGVhY2gKKyBzdWJmcmFtZSBnaXZlbiB0aGUgZGVjb2RlZCBjb2RlYm9vayBpbmRleC4K
KzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfcGl0Y2hfY29udG91cl9wZGZzIgorIHRp
dGxlPSJQREZzIGZvciBTdWJmcmFtZSBQaXRjaCBDb250b3VyIj4KKzx0dGNvbD5BdWRpbyBCYW5k
d2lkdGg8L3R0Y29sPgorPHR0Y29sPlNJTEsgRnJhbWUgU2l6ZTwvdHRjb2w+Cis8dHRjb2wgYWxp
Z249InJpZ2h0Ij5Db2RlYm9vayBTaXplPC90dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29sPgorPGM+
TkI8L2M+ICAgICAgIDxjPjEwJm5ic3A7bXM8L2M+ICA8Yz4zPC9jPgorPGM+ezE0MywgNTAsIDYz
fS8yNTY8L2M+Cis8Yz5OQjwvYz4gICAgICAgPGM+MjAmbmJzcDttczwvYz4gPGM+MTE8L2M+Cis8
Yz57NjgsIDEyLCAyMSwgMTcsIDE5LCAyMiwgMzAsIDI0LAorICAgIDE3LCAxNiwgMTB9LzI1Njwv
Yz4KKzxjPk1CIG9yIFdCPC9jPiA8Yz4xMCZuYnNwO21zPC9jPiA8Yz4xMjwvYz4KKzxjPns5MSwg
NDYsIDM5LCAxOSwgMTQsIDEyLCAgOCwgIDcsCisgICAgIDYsICA1LCAgNSwgIDR9LzI1NjwvYz4K
KzxjPk1CIG9yIFdCPC9jPiA8Yz4yMCZuYnNwO21zPC9jPiA8Yz4zNDwvYz4KKzxjPnszMywgMjIs
IDE4LCAxNiwgMTUsIDE0LCAxNCwgMTMsCisgICAgMTMsIDEwLCAgOSwgIDksICA4LCAgNiwgIDYs
ICA2LAorICAgICA1LCAgNCwgIDQsICA0LCAgMywgIDMsICAzLCAgMiwKKyAgICAgMiwgIDIsICAy
LCAgMiwgIDIsICAyLCAgMSwgIDEsCisgICAgIDEsICAxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4K
KworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfcGl0Y2hfY29udG91cl9jYl9uYjEwbXMiCisgdGl0
bGU9IkNvZGVib29rIFZlY3RvcnMgZm9yIFN1YmZyYW1lIFBpdGNoIENvbnRvdXI6IE5CLCAxMCZu
YnNwO21zIEZyYW1lcyI+Cis8dHRjb2w+SW5kZXg8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdo
dCI+U3ViZnJhbWUgT2Zmc2V0czwvdHRjb2w+Cis8Yz4wPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorPGM+MTwvYz4gPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKzxjPjI8L2M+
IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDsxPC9zcGFueD48L2M+
Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfcGl0Y2hfY29udG91cl9j
Yl9uYjIwbXMiCisgdGl0bGU9IkNvZGVib29rIFZlY3RvcnMgZm9yIFN1YmZyYW1lIFBpdGNoIENv
bnRvdXI6IE5CLCAyMCZuYnNwO21zIEZyYW1lcyI+Cis8dHRjb2w+SW5kZXg8L3R0Y29sPgorPHR0
Y29sIGFsaWduPSJyaWdodCI+U3ViZnJhbWUgT2Zmc2V0czwvdHRjb2w+CisgPGM+MDwvYz4gPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5i
c3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxjPjE8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PiZuYnNwOzImbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7MCZuYnNwOy0xPC9zcGFueD48L2M+Cisg
PGM+MjwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEmbmJzcDsmbmJzcDswJm5ic3A7Jm5i
c3A7MSZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4KKyA8Yz4zPC9jPiA8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4tMSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MTwvc3Bhbng+
PC9jPgorIDxjPjQ8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xJm5ic3A7Jm5ic3A7MCZu
YnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+CisgPGM+NTwvYz4gPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5i
c3A7MTwvc3Bhbng+PC9jPgorIDxjPjY8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNw
OzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8
Yz43PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsxJm5ic3A7Jm5ic3A7MSZuYnNw
OyZuYnNwOzAmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+CisgPGM+ODwvYz4gPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7
MDwvc3Bhbng+PC9jPgorIDxjPjk8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAm
bmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOy0xPC9zcGFueD48L2M+Cis8Yz4xMDwvYz4g
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsw
Jm5ic3A7LTE8L3NwYW54PjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0i
c2lsa19waXRjaF9jb250b3VyX2NiX21id2IxMG1zIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0b3Jz
IGZvciBTdWJmcmFtZSBQaXRjaCBDb250b3VyOiBNQiBvciBXQiwgMTAmbmJzcDttcyBGcmFtZXMi
PgorPHR0Y29sPkluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPlN1YmZyYW1lIE9m
ZnNldHM8L3R0Y29sPgorIDxjPjA8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAm
bmJzcDsmbmJzcDswPC9zcGFueD48L2M+CisgPGM+MTwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8Yz4yPC9jPiA8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4mbmJzcDsxJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxjPjM8L2M+
IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xJm5ic3A7Jm5ic3A7MTwvc3Bhbng+PC9jPgorIDxj
PjQ8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEmbmJzcDstMTwvc3Bhbng+PC9j
PgorIDxjPjU8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xJm5ic3A7Jm5ic3A7Mjwvc3Bh
bng+PC9jPgorIDxjPjY8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzImbmJzcDst
MTwvc3Bhbng+PC9jPgorIDxjPjc8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0yJm5ic3A7
Jm5ic3A7Mjwvc3Bhbng+PC9jPgorIDxjPjg8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZu
YnNwOzImbmJzcDstMjwvc3Bhbng+PC9jPgorIDxjPjk8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPi0yJm5ic3A7Jm5ic3A7Mzwvc3Bhbng+PC9jPgorPGM+MTA8L2M+IDxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPiZuYnNwOzMmbmJzcDstMjwvc3Bhbng+PC9jPgorPGM+MTE8L2M+IDxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPi0zJm5ic3A7Jm5ic3A7Mzwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+
CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3BpdGNoX2NvbnRvdXJfY2JfbWJ3YjIwbXMiCisg
dGl0bGU9IkNvZGVib29rIFZlY3RvcnMgZm9yIFN1YmZyYW1lIFBpdGNoIENvbnRvdXI6IE1CIG9y
IFdCLCAyMCZuYnNwO21zIEZyYW1lcyI+Cis8dHRjb2w+SW5kZXg8L3R0Y29sPgorPHR0Y29sIGFs
aWduPSJyaWdodCI+U3ViZnJhbWUgT2Zmc2V0czwvdHRjb2w+CisgPGM+MDwvYz4gPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5i
c3A7MDwvc3Bhbng+PC9jPgorIDxjPjE8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNw
OzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8
Yz4yPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsxJm5ic3A7Jm5ic3A7MSZuYnNw
OyZuYnNwOzAmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+CisgPGM+MzwvYz4gPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+LTEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3Nw
YW54PjwvYz4KKyA8Yz40PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7
Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsxPC9zcGFueD48L2M+CisgPGM+NTwvYz4g
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsw
Jm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxjPjY8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPi0xJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsxPC9zcGFueD48L2M+
CisgPGM+NzwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzAm
bmJzcDsmbmJzcDswJm5ic3A7LTE8L3NwYW54PjwvYz4KKyA8Yz44PC9jPiA8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4tMSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7Mjwvc3Bh
bng+PC9jPgorIDxjPjk8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEmbmJzcDsm
bmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOy0xPC9zcGFueD48L2M+Cis8Yz4xMDwvYz4gPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+LTImbmJzcDstMSZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsyPC9z
cGFueD48L2M+Cis8Yz4xMTwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MiZuYnNw
OyZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7LTE8L3NwYW54PjwvYz4KKzxjPjEyPC9jPiA8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4tMiZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5i
c3A7Mjwvc3Bhbng+PC9jPgorPGM+MTM8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0yJm5i
c3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDszPC9zcGFueD48L2M+Cis8Yz4xNDwv
Yz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MiZuYnNwOyZuYnNwOzEmbmJzcDstMSZu
YnNwOy0yPC9zcGFueD48L2M+Cis8Yz4xNTwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTMm
bmJzcDstMSZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDszPC9zcGFueD48L2M+Cis8Yz4xNjwvYz4g
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MiZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsw
Jm5ic3A7LTI8L3NwYW54PjwvYz4KKzxjPjE3PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4m
bmJzcDszJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzAmbmJzcDstMjwvc3Bhbng+PC9jPgorPGM+
MTg8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0zJm5ic3A7LTEmbmJzcDsmbmJzcDsyJm5i
c3A7Jm5ic3A7NDwvc3Bhbng+PC9jPgorPGM+MTk8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUi
Pi00Jm5ic3A7LTEmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7NDwvc3Bhbng+PC9jPgorPGM+MjA8
L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzMmbmJzcDsmbmJzcDsxJm5ic3A7LTEm
bmJzcDstMzwvc3Bhbng+PC9jPgorPGM+MjE8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi00
Jm5ic3A7LTEmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7NTwvc3Bhbng+PC9jPgorPGM+MjI8L2M+
IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzQmbmJzcDsmbmJzcDsyJm5ic3A7LTEmbmJz
cDstMzwvc3Bhbng+PC9jPgorPGM+MjM8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNw
OzQmbmJzcDsmbmJzcDsxJm5ic3A7LTEmbmJzcDstNDwvc3Bhbng+PC9jPgorPGM+MjQ8L2M+IDxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPi01Jm5ic3A7LTEmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7
Njwvc3Bhbng+PC9jPgorPGM+MjU8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzUm
bmJzcDsmbmJzcDsyJm5ic3A7LTEmbmJzcDstNDwvc3Bhbng+PC9jPgorPGM+MjY8L2M+IDxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPi02Jm5ic3A7LTImbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7Njwv
c3Bhbng+PC9jPgorPGM+Mjc8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi01Jm5ic3A7LTIm
bmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7NTwvc3Bhbng+PC9jPgorPGM+Mjg8L2M+IDxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPiZuYnNwOzYmbmJzcDsmbmJzcDsyJm5ic3A7LTEmbmJzcDstNTwvc3Bh
bng+PC9jPgorPGM+Mjk8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi03Jm5ic3A7LTImbmJz
cDsmbmJzcDszJm5ic3A7Jm5ic3A7ODwvc3Bhbng+PC9jPgorPGM+MzA8L2M+IDxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPiZuYnNwOzYmbmJzcDsmbmJzcDsyJm5ic3A7LTImbmJzcDstNjwvc3Bhbng+
PC9jPgorPGM+MzE8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzUmbmJzcDsmbmJz
cDsyJm5ic3A7LTImbmJzcDstNTwvc3Bhbng+PC9jPgorPGM+MzI8L2M+IDxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPiZuYnNwOzgmbmJzcDsmbmJzcDszJm5ic3A7LTImbmJzcDstNzwvc3Bhbng+PC9j
PgorPGM+MzM8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi05Jm5ic3A7LTMmbmJzcDsmbmJz
cDszJm5ic3A7Jm5ic3A7OTwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlIGZp
bmFsIHBpdGNoIGxhZyBmb3IgZWFjaCBzdWJmcmFtZSBpcyBhc3NlbWJsZWQgaW4gc2lsa19kZWNv
ZGVfcGl0Y2goKQorIChkZWNvZGVfcGl0Y2guYykuCitMZXQgbGFnIGJlIHRoZSBwcmltYXJ5IHBp
dGNoIGxhZyBmb3IgdGhlIGN1cnJlbnQgU0lMSyBmcmFtZSwgY29udG91cl9pbmRleCBiZQorIGlu
ZGV4IG9mIHRoZSBWUSBjb2RlYm9vaywgYW5kIGxhZ19jYltjb250b3VyX2luZGV4XVtrXSBiZSB0
aGUgY29ycmVzcG9uZGluZworIGVudHJ5IG9mIHRoZSBjb2RlYm9vayBmcm9tIHRoZSBhcHByb3By
aWF0ZSB0YWJsZSBnaXZlbiBhYm92ZSBmb3IgdGhlIGsndGgKKyBzdWJmcmFtZS4KK1RoZW4gdGhl
IGZpbmFsIHBpdGNoIGxhZyBmb3IgdGhhdCBzdWJmcmFtZSBpcworPGZpZ3VyZSBhbGlnbj0iY2Vu
dGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworcGl0Y2hfbGFnc1trXSA9
IGNsYW1wKGxhZ19taW4sIGxhZyArIGxhZ19jYltjb250b3VyX2luZGV4XVtrXSwKKyAgICAgICAg
ICAgICAgICAgICAgICBsYWdfbWF4KQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cisgd2hlcmUg
bGFnX21pbiBhbmQgbGFnX21heCBhcmUgdGhlIHZhbHVlcyBmcm9tIHRoZSAiTWluaW11bSBMYWci
IGFuZAorICJNYXhpbXVtIExhZyIgY29sdW1ucyBvZiA8eHJlZiB0YXJnZXQ9InNpbGtfYWJzX3Bp
dGNoX2xvd19wZGYiLz4sCisgcmVzcGVjdGl2ZWx5LgorPC90PgorCis8L3NlY3Rpb24+CisKKzxz
ZWN0aW9uIGFuY2hvcj0ic2lsa19sdHBfZmlsdGVyIiB0aXRsZT0iTFRQIEZpbHRlciBDb2VmZmlj
aWVudHMiPgorPHQ+CitTSUxLIHVzZXMgYSBzZXBhcmF0ZSA1LXRhcCBwaXRjaCBmaWx0ZXIgZm9y
IGVhY2ggc3ViZnJhbWUsIHNlbGVjdGVkIGZyb20gb25lCisgb2YgdGhyZWUgY29kZWJvb2tzLgor
VGhlIHRocmVlIGNvZGVib29rcyBlYWNoIHJlcHJlc2VudCBkaWZmZXJlbnQgcmF0ZS1kaXN0b3J0
aW9uIHRyYWRlLW9mZnMsIHdpdGgKKyBhdmVyYWdlIHJhdGVzIG9mIDEuNjEmbmJzcDtiaXRzL3N1
YmZyYW1lLCAzLjY4Jm5ic3A7Yml0cy9zdWJmcmFtZSwgYW5kCisgNC44NSZuYnNwO2JpdHMvc3Vi
ZnJhbWUsIHJlc3BlY3RpdmVseS4KKzwvdD4KKworPHQ+CitUaGUgaW1wb3J0YW5jZSBvZiB0aGUg
ZmlsdGVyIGNvZWZmaWNpZW50cyBnZW5lcmFsbHkgZGVwZW5kcyBvbiB0d28gZmFjdG9yczogdGhl
CisgcGVyaW9kaWNpdHkgb2YgdGhlIHNpZ25hbCBhbmQgcmVsYXRpdmUgZW5lcmd5IGJldHdlZW4g
dGhlIGN1cnJlbnQgc3ViZnJhbWUgYW5kCisgdGhlIHNpZ25hbCBmcm9tIG9uZSBwZXJpb2QgZWFy
bGllci4KK0dyZWF0ZXIgcGVyaW9kaWNpdHkgYW5kIGRlY2F5aW5nIGVuZXJneSBib3RoIGxlYWQg
dG8gbW9yZSBpbXBvcnRhbnQgZmlsdGVyCisgY29lZmZpY2llbnRzLCBhbmQgdGh1cyBzaG91bGQg
YmUgY29kZWQgd2l0aCBsb3dlciBkaXN0b3J0aW9uIGFuZCBoaWdoZXIgcmF0ZS4KK1RoZXNlIHBy
b3BlcnRpZXMgYXJlIHJlbGF0aXZlbHkgc3RhYmxlIG92ZXIgdGhlIGR1cmF0aW9uIG9mIGEgc2lu
Z2xlIFNJTEsKKyBmcmFtZSwgaGVuY2UgYWxsIG9mIHRoZSBzdWJmcmFtZXMgaW4gYSBTSUxLIGZy
YW1lIGNob29zZSB0aGVpciBmaWx0ZXIgZnJvbSB0aGUKKyBzYW1lIGNvZGVib29rLgorVGhpcyBp
cyBzaWduYWxlZCB3aXRoIGFuIGV4cGxpY2l0bHktY29kZWQgInBlcmlvZGljaXR5IGluZGV4Ii4K
K1RoaXMgaW1tZWRpYXRlbHkgZm9sbG93cyB0aGUgc3ViZnJhbWUgcGl0Y2ggbGFncywgYW5kIGlz
IGNvZGVkIHVzaW5nIHRoZQorIDMtZW50cnkgUERGIGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxrX3Bl
cmluZGV4X3BkZiIvPi4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfcGVyaW5kZXhf
cGRmIiB0aXRsZT0iUGVyaW9kaWNpdHkgSW5kZXggUERGIj4KKzx0dGNvbD5QREY8L3R0Y29sPgor
PGM+ezc3LCA4MCwgOTl9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK1RoZSBpbmRpY2Vz
IG9mIHRoZSBmaWx0ZXJzIGZvciBlYWNoIHN1YmZyYW1lIGZvbGxvdy4KK1RoZXkgYXJlIGFsbCBj
b2RlZCB1c2luZyB0aGUgUERGIGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9maWx0ZXJfcGRm
cyIvPgorIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHBlcmlvZGljaXR5IGluZGV4LgorVGFibGVzJm5i
c3A7PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfbHRwX2ZpbHRlcl9jb2VmZnMw
Ii8+CisgdGhyb3VnaCZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX2x0
cF9maWx0ZXJfY29lZmZzMiIvPgorIGNvbnRhaW4gdGhlIGNvcnJlc3BvbmRpbmcgZmlsdGVyIHRh
cHMgYXMgc2lnbmVkIFE3IGludGVnZXJzLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2ls
a19sdHBfZmlsdGVyX3BkZnMiIHRpdGxlPSJMVFAgRmlsdGVyIFBERnMiPgorPHR0Y29sPlBlcmlv
ZGljaXR5IEluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPkNvZGVib29rIFNpemU8
L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz4wPC9jPiAgPGM+ODwvYz4gPGM+ezE4NSwg
MTUsIDEzLCAxMywgOSwgOSwgNiwgNn0vMjU2PC9jPgorPGM+MTwvYz4gPGM+MTY8L2M+IDxjPns1
NywgMzQsIDIxLCAyMCwgMTUsIDEzLCAxMiwgMTMsCisgICAgICAgICAgICAgICAgICAgICAgIDEw
LCAxMCwgIDksIDEwLCAgOSwgIDgsICA3LCAgOH0vMjU2PC9jPgorPGM+MjwvYz4gPGM+MzI8L2M+
IDxjPnsxNSwgMTYsIDE0LCAxMiwgMTIsIDEyLCAxMSwgMTEsCisgICAgICAgICAgICAgICAgICAg
ICAgIDExLCAxMCwgIDksICA5LCAgOSwgIDksICA4LCAgOCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgIDgsICA4LCAgNywgIDcsICA2LCAgNiwgIDUsICA0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgNSwgIDQsICA0LCAgNCwgIDMsICA0LCAgMywgIDJ9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgor
Cis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19sdHBfZmlsdGVyX2NvZWZmczAiCisgdGl0bGU9IkNv
ZGVib29rIFZlY3RvcnMgZm9yIExUUCBGaWx0ZXIsIFBlcmlvZGljaXR5IEluZGV4IDAiPgorPHR0
Y29sPkluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPkZpbHRlciBUYXBzIChRNyk8
L3R0Y29sPgorIDxjPjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDs0
Jm5ic3A7Jm5ic3A7Jm5ic3A7NiZuYnNwOyZuYnNwOzI0Jm5ic3A7Jm5ic3A7Jm5ic3A7NyZuYnNw
OyZuYnNwOyZuYnNwOzU8L3NwYW54PjwvYz4KKyA8Yz4xPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+Jm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsmbmJzcDsy
Jm5ic3A7Jm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8Yz4y
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MTImbmJzcDsmbmJzcDsyOCZuYnNw
OyZuYnNwOzQxJm5ic3A7Jm5ic3A7MTMmbmJzcDsmbmJzcDstNDwvc3Bhbng+PC9jPgorIDxjPjM8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDstOSZuYnNwOyZuYnNwOzE1Jm5ic3A7
Jm5ic3A7NDImbmJzcDsmbmJzcDsyNSZuYnNwOyZuYnNwOzE0PC9zcGFueD48L2M+CisgPGM+NDwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDstMiZu
YnNwOyZuYnNwOzYyJm5ic3A7Jm5ic3A7NDEmbmJzcDsmbmJzcDstOTwvc3Bhbng+PC9jPgorIDxj
PjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMTAmbmJzcDsmbmJzcDszNyZuYnNwOyZu
YnNwOzY1Jm5ic3A7Jm5ic3A7LTQmbmJzcDsmbmJzcDsmbmJzcDszPC9zcGFueD48L2M+CisgPGM+
NjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy02Jm5ic3A7Jm5ic3A7Jm5ic3A7
NCZuYnNwOyZuYnNwOzY2Jm5ic3A7Jm5ic3A7Jm5ic3A7NyZuYnNwOyZuYnNwOy04PC9zcGFueD48
L2M+CisgPGM+NzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzE2Jm5ic3A7Jm5i
c3A7MTQmbmJzcDsmbmJzcDszOCZuYnNwOyZuYnNwOy0zJm5ic3A7Jm5ic3A7MzM8L3NwYW54Pjwv
Yz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19sdHBfZmlsdGVyX2Nv
ZWZmczEiCisgdGl0bGU9IkNvZGVib29rIFZlY3RvcnMgZm9yIExUUCBGaWx0ZXIsIFBlcmlvZGlj
aXR5IEluZGV4IDEiPgorPHR0Y29sPkluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQi
PkZpbHRlciBUYXBzIChRNyk8L3R0Y29sPgorCisgPGM+MDwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPiZuYnNwOzEzJm5ic3A7Jm5ic3A7MjImbmJzcDsmbmJzcDszOSZuYnNwOyZuYnNwOzIz
Jm5ic3A7Jm5ic3A7MTI8L3NwYW54PjwvYz4KKyA8Yz4xPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+Jm5ic3A7LTEmbmJzcDsmbmJzcDszNiZuYnNwOyZuYnNwOzY0Jm5ic3A7Jm5ic3A7Mjcm
bmJzcDsmbmJzcDstNjwvc3Bhbng+PC9jPgorIDxjPjI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDstNyZuYnNwOyZuYnNwOzEwJm5ic3A7Jm5ic3A7NTUmbmJzcDsmbmJzcDs0MyZu
YnNwOyZuYnNwOzE3PC9zcGFueD48L2M+CisgPGM+MzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPiZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7Jm5ic3A7OCZu
YnNwOyZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsmbmJzcDsxPC9zcGFueD48L2M+CisgPGM+NDwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzYmbmJzcDstMTEmbmJzcDsm
bmJzcDs3NCZuYnNwOyZuYnNwOzUzJm5ic3A7Jm5ic3A7LTk8L3NwYW54PjwvYz4KKyA8Yz41PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEyJm5ic3A7Jm5ic3A7NTUmbmJzcDsmbmJzcDs3
NiZuYnNwOy0xMiZuYnNwOyZuYnNwOyZuYnNwOzg8L3NwYW54PjwvYz4KKyA8Yz42PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTMmbmJzcDsmbmJzcDsmbmJzcDszJm5ic3A7Jm5i
c3A7OTMmbmJzcDsmbmJzcDsyNyZuYnNwOyZuYnNwOy00PC9zcGFueD48L2M+CisgPGM+NzwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzI2Jm5ic3A7Jm5ic3A7MzkmbmJzcDsmbmJz
cDs1OSZuYnNwOyZuYnNwOyZuYnNwOzMmbmJzcDsmbmJzcDstODwvc3Bhbng+PC9jPgorIDxjPjg8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7Jm5i
c3A7MCZuYnNwOyZuYnNwOzc3Jm5ic3A7Jm5ic3A7MTEmbmJzcDsmbmJzcDsmbmJzcDs5PC9zcGFu
eD48L2M+CisgPGM+OTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy04Jm5ic3A7
Jm5ic3A7MjImbmJzcDsmbmJzcDs0NCZuYnNwOyZuYnNwOy02Jm5ic3A7Jm5ic3A7Jm5ic3A7Nzwv
c3Bhbng+PC9jPgorPGM+MTA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs0MCZu
YnNwOyZuYnNwOyZuYnNwOzkmbmJzcDsmbmJzcDsyNiZuYnNwOyZuYnNwOyZuYnNwOzMmbmJzcDsm
bmJzcDsmbmJzcDs5PC9zcGFueD48L2M+Cis8Yz4xMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPiZuYnNwOy03Jm5ic3A7Jm5ic3A7MjAmbmJzcDsxMDEmbmJzcDsmbmJzcDstNyZuYnNwOyZu
YnNwOyZuYnNwOzQ8L3NwYW54PjwvYz4KKzxjPjEyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+Jm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOy04Jm5ic3A7Jm5ic3A7NDImbmJzcDsmbmJzcDsy
NiZuYnNwOyZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKzxjPjEzPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+LTE1Jm5ic3A7Jm5ic3A7MzMmbmJzcDsmbmJzcDs2OCZuYnNwOyZuYnNwOyZu
YnNwOzImbmJzcDsmbmJzcDsyMzwvc3Bhbng+PC9jPgorPGM+MTQ8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4mbmJzcDstMiZuYnNwOyZuYnNwOzU1Jm5ic3A7Jm5ic3A7NDYmbmJzcDsmbmJz
cDstMiZuYnNwOyZuYnNwOzE1PC9zcGFueD48L2M+Cis8Yz4xNTwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPiZuYnNwOyZuYnNwOzMmbmJzcDsmbmJzcDstMSZuYnNwOyZuYnNwOzIxJm5ic3A7
Jm5ic3A7MTYmbmJzcDsmbmJzcDs0MTwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0
dGFibGUgYW5jaG9yPSJzaWxrX2x0cF9maWx0ZXJfY29lZmZzMiIKKyB0aXRsZT0iQ29kZWJvb2sg
VmVjdG9ycyBmb3IgTFRQIEZpbHRlciwgUGVyaW9kaWNpdHkgSW5kZXggMiI+Cis8dHRjb2w+SW5k
ZXg8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+RmlsdGVyIFRhcHMgKFE3KTwvdHRjb2w+
CisgPGM+MDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy02Jm5ic3A7Jm5ic3A7
MjcmbmJzcDsmbmJzcDs2MSZuYnNwOyZuYnNwOzM5Jm5ic3A7Jm5ic3A7Jm5ic3A7NTwvc3Bhbng+
PC9jPgorIDxjPjE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMTEmbmJzcDsmbmJzcDs0
MiZuYnNwOyZuYnNwOzg4Jm5ic3A7Jm5ic3A7Jm5ic3A7NCZuYnNwOyZuYnNwOyZuYnNwOzE8L3Nw
YW54PjwvYz4KKyA8Yz4yPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTImbmJz
cDsmbmJzcDs2MCZuYnNwOyZuYnNwOzY1Jm5ic3A7Jm5ic3A7Jm5ic3A7NiZuYnNwOyZuYnNwOy00
PC9zcGFueD48L2M+CisgPGM+MzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy0x
Jm5ic3A7Jm5ic3A7LTUmbmJzcDsmbmJzcDs3MyZuYnNwOyZuYnNwOzU2Jm5ic3A7Jm5ic3A7Jm5i
c3A7MTwvc3Bhbng+PC9jPgorIDxjPjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJz
cDstOSZuYnNwOyZuYnNwOzE5Jm5ic3A7Jm5ic3A7OTQmbmJzcDsmbmJzcDsyOSZuYnNwOyZuYnNw
Oy05PC9zcGFueD48L2M+CisgPGM+NTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNw
OyZuYnNwOzAmbmJzcDsmbmJzcDsxMiZuYnNwOyZuYnNwOzk5Jm5ic3A7Jm5ic3A7Jm5ic3A7NiZu
YnNwOyZuYnNwOyZuYnNwOzQ8L3NwYW54PjwvYz4KKyA8Yz42PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7OCZuYnNwOy0xOSZuYnNwOzEwMiZuYnNwOyZuYnNwOzQ2Jm5i
c3A7LTEzPC9zcGFueD48L2M+CisgPGM+NzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZu
YnNwOyZuYnNwOzMmbmJzcDsmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7MTMmbmJzcDsmbmJzcDsm
bmJzcDszJm5ic3A7Jm5ic3A7Jm5ic3A7Mjwvc3Bhbng+PC9jPgorIDxjPjg8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDs5Jm5ic3A7LTIxJm5ic3A7Jm5ic3A7ODQmbmJz
cDsmbmJzcDs3MiZuYnNwOy0xODwvc3Bhbng+PC9jPgorIDxjPjk8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4tMTEmbmJzcDsmbmJzcDs0NiZuYnNwOzEwNCZuYnNwOy0yMiZuYnNwOyZuYnNw
OyZuYnNwOzg8L3NwYW54PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
Jm5ic3A7MTgmbmJzcDsmbmJzcDszOCZuYnNwOyZuYnNwOzQ4Jm5ic3A7Jm5ic3A7MjMmbmJzcDsm
bmJzcDsmbmJzcDswPC9zcGFueD48L2M+Cis8Yz4xMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPi0xNiZuYnNwOyZuYnNwOzcwJm5ic3A7Jm5ic3A7ODMmbmJzcDstMjEmbmJzcDsmbmJzcDsx
MTwvc3Bhbng+PC9jPgorPGM+MTI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsm
bmJzcDs1Jm5ic3A7LTExJm5ic3A7MTE3Jm5ic3A7Jm5ic3A7MjImbmJzcDsmbmJzcDstODwvc3Bh
bng+PC9jPgorPGM+MTM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDstNiZuYnNw
OyZuYnNwOzIzJm5ic3A7MTE3Jm5ic3A7LTEyJm5ic3A7Jm5ic3A7Jm5ic3A7Mzwvc3Bhbng+PC9j
PgorPGM+MTQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDszJm5ic3A7
Jm5ic3A7LTgmbmJzcDsmbmJzcDs5NSZuYnNwOyZuYnNwOzI4Jm5ic3A7Jm5ic3A7Jm5ic3A7NDwv
c3Bhbng+PC9jPgorPGM+MTU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMTAmbmJzcDsm
bmJzcDsxNSZuYnNwOyZuYnNwOzc3Jm5ic3A7Jm5ic3A7NjAmbmJzcDstMTU8L3NwYW54PjwvYz4K
KzxjPjE2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTEmbmJzcDsmbmJzcDsm
bmJzcDs0Jm5ic3A7MTI0Jm5ic3A7Jm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOy00PC9zcGFueD48
L2M+Cis8Yz4xNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzMmbmJz
cDsmbmJzcDszOCZuYnNwOyZuYnNwOzg0Jm5ic3A7Jm5ic3A7MjQmbmJzcDstMjU8L3NwYW54Pjwv
Yz4KKzxjPjE4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7MiZuYnNw
OyZuYnNwOzEzJm5ic3A7Jm5ic3A7NDImbmJzcDsmbmJzcDsxMyZuYnNwOyZuYnNwOzMxPC9zcGFu
eD48L2M+Cis8Yz4xOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzIxJm5ic3A7
Jm5ic3A7LTQmbmJzcDsmbmJzcDs1NiZuYnNwOyZuYnNwOzQ2Jm5ic3A7Jm5ic3A7LTE8L3NwYW54
PjwvYz4KKzxjPjIwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTEmbmJzcDsm
bmJzcDszNSZuYnNwOyZuYnNwOzc5Jm5ic3A7LTEzJm5ic3A7Jm5ic3A7MTk8L3NwYW54PjwvYz4K
KzxjPjIxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTcmbmJzcDsmbmJzcDs2
NSZuYnNwOyZuYnNwOzg4Jm5ic3A7Jm5ic3A7LTkmbmJzcDstMTQ8L3NwYW54PjwvYz4KKzxjPjIy
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MjAmbmJzcDsmbmJzcDsmbmJzcDs0
Jm5ic3A7Jm5ic3A7ODEmbmJzcDsmbmJzcDs0OSZuYnNwOy0yOTwvc3Bhbng+PC9jPgorPGM+MjM8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsyMCZuYnNwOyZuYnNwOyZuYnNwOzAm
bmJzcDsmbmJzcDs3NSZuYnNwOyZuYnNwOyZuYnNwOzMmbmJzcDstMTc8L3NwYW54PjwvYz4KKzxj
PjI0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7NSZuYnNwOyZuYnNw
Oy05Jm5ic3A7Jm5ic3A7NDQmbmJzcDsmbmJzcDs5MiZuYnNwOyZuYnNwOy04PC9zcGFueD48L2M+
Cis8Yz4yNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzEmbmJzcDsm
bmJzcDstMyZuYnNwOyZuYnNwOzIyJm5ic3A7Jm5ic3A7NjkmbmJzcDsmbmJzcDszMTwvc3Bhbng+
PC9jPgorPGM+MjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDstNiZuYnNwOyZu
YnNwOzk1Jm5ic3A7Jm5ic3A7NDEmbmJzcDstMTImbmJzcDsmbmJzcDsmbmJzcDs1PC9zcGFueD48
L2M+Cis8Yz4yNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzM5Jm5ic3A7Jm5i
c3A7NjcmbmJzcDsmbmJzcDsxNiZuYnNwOyZuYnNwOy00Jm5ic3A7Jm5ic3A7Jm5ic3A7MTwvc3Bh
bng+PC9jPgorPGM+Mjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDsw
Jm5ic3A7Jm5ic3A7LTYmbmJzcDsxMjAmbmJzcDsmbmJzcDs1NSZuYnNwOy0zNjwvc3Bhbng+PC9j
PgorPGM+Mjk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMTMmbmJzcDsmbmJzcDs0NCZu
YnNwOzEyMiZuYnNwOyZuYnNwOyZuYnNwOzQmbmJzcDstMjQ8L3NwYW54PjwvYz4KKzxjPjMwPC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7ODEmbmJzcDsmbmJzcDsmbmJzcDs1Jm5i
c3A7Jm5ic3A7MTEmbmJzcDsmbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7Jm5ic3A7Nzwvc3Bhbng+
PC9jPgorPGM+MzE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDsyJm5i
c3A7Jm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOyZuYnNwOzkmbmJzcDsmbmJzcDsxMCZuYnNwOyZu
YnNwOzg4PC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlv
biBhbmNob3I9InNpbGtfbHRwX3NjYWxpbmciIHRpdGxlPSJMVFAgU2NhbGluZyBQYXJhbWV0ZXIi
PgorPHQ+CitBbiBMVFAgc2NhbGluZyBwYXJhbWV0ZXIgYXBwZWFycyBhZnRlciB0aGUgTFRQIGZp
bHRlciBjb2VmZmljaWVudHMgaWYgYW5kIG9ubHkKKyBpZgorPGxpc3Qgc3R5bGU9InN5bWJvbHMi
PgorPHQ+VGhpcyBpcyBhIHZvaWNlZCBmcmFtZSAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19mcmFt
ZV90eXBlIi8+KSwgYW5kPC90PgorPHQ+RWl0aGVyCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8
dD4KK1RoaXMgU0lMSyBmcmFtZSBjb3JyZXNwb25kcyB0byB0aGUgZmlyc3QgdGltZSBpbnRlcnZh
bCBvZiB0aGUKKyBjdXJyZW50IE9wdXMgZnJhbWUgZm9yIGl0cyB0eXBlIChMQlJSIG9yIHJlZ3Vs
YXIpLCBvcgorPC90PgorPHQ+CitUaGlzIGlzIGFuIExCUlIgZnJhbWUgd2hlcmUgdGhlIExCUlIg
ZmxhZ3MgKHNlZQorIDx4cmVmIHRhcmdldD0ic2lsa19sYnJyX2ZsYWdzIi8+KSBpbmRpY2F0ZSB0
aGUgcHJldmlvdXMgTEJSUiBmcmFtZSBpbiB0aGUgc2FtZQorIGNoYW5uZWwgaXMgbm90IGNvZGVk
LgorPC90PgorPC9saXN0PgorPC90PgorPC9saXN0PgorVGhpcyBhbGxvd3MgdGhlIGVuY29kZXIg
dG8gdHJhZGUgb2ZmIHRoZSBwcmVkaWN0aW9uIGdhaW4gYmV0d2VlbgorIHBhY2tldHMgYWdhaW5z
dCB0aGUgcmVjb3ZlcnkgdGltZSBhZnRlciBwYWNrZXQgbG9zcy4KK1VubGlrZSBhYnNvbHV0ZS1j
b2RpbmcgZm9yIHBpdGNoIGxhZ3MsIHJlZ3VsYXIgU0lMSyBmcmFtZXMgdGhhdCBhcmUgbm90IGF0
IHRoZQorIHN0YXJ0IG9mIGFuIE9wdXMgZnJhbWUgKGkuZS4sIHRoYXQgZG8gbm90IGNvcnJlc3Bv
bmQgdG8gdGhlIGZpcnN0IDIwJm5ic3A7bXMKKyB0aW1lIGludGVydmFsIGluIE9wdXMgZnJhbWVz
IG9mIDQwJm5ic3A7b3IgNjAmbmJzcDttcykgZG8gbm90IGluY2x1ZGUgdGhpcworIGZpZWxkLCBl
dmVuIGlmIHRoZSBwcmlvciBmcmFtZSB3YXMgbm90IHZvaWNlZCwgb3IgKGluIHRoZSBjYXNlIG9m
IHRoZSBzaWRlCisgY2hhbm5lbCkgbm90IGV2ZW4gY29kZWQuCitBZnRlciBhbiB1bmNvZGVkIGZy
YW1lIGluIHRoZSBzaWRlIGNoYW5uZWwsIHRoZSBMVFAgYnVmZmVyIChzZWUKKyA8eHJlZiB0YXJn
ZXQ9InNpbGtfbHRwX3N5bnRoZXNpcyIvPikgaXMgY2xlYXJlZCB0byB6ZXJvLCBhbmQgaXMgdGh1
cyBpbiBhCisga25vd24gc3RhdGUuCitJbiBjb250cmFzdCwgTEJSUiBmcmFtZXMgZG8gaW5jbHVk
ZSB0aGlzIGZpZWxkIHdoZW4gdGhlIHByaW9yIGZyYW1lIHdhcyBub3QKKyBjb2RlZCwgc2luY2Ug
dGhlIExUUCBidWZmZXIgY29udGFpbnMgdGhlIG91dHB1dCBvZiB0aGUgUExDLCB3aGljaCBpcwor
IG5vbi1ub3JtYXRpdmUuCis8L3Q+Cis8dD4KK0lmIHByZXNlbnQsIHRoZSBkZWNvZGVyIHJlYWRz
IGEgdmFsdWUgdXNpbmcgdGhlIDMtZW50cnkgUERGIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX2x0
cF9zY2FsaW5nX3BkZiIvPi4KK1RoZSB0aHJlZSBwb3NzaWJsZSB2YWx1ZXMgcmVwcmVzZW50IFEx
NCBzY2FsZSBmYWN0b3JzIG9mIDE1NTY1LCAxMjI4OCwgYW5kCisgODE5MiwgcmVzcGVjdGl2ZWx5
IChjb3JyZXNwb25kaW5nIHRvIGFwcHJveGltYXRlbHkgMC45NSwgMC43NSwgYW5kIDAuNSkuCitG
cmFtZXMgdGhhdCBkbyBub3QgY29kZSB0aGUgc2NhbGluZyBwYXJhbWV0ZXIgdXNlIHRoZSBkZWZh
dWx0IGZhY3RvciBvZiAxNTU2NQorIChhcHByb3hpbWF0ZWx5IDAuOTUpLgorPC90PgorCis8dGV4
dHRhYmxlIGFuY2hvcj0ic2lsa19sdHBfc2NhbGluZ19wZGYiCisgdGl0bGU9IlBERiBmb3IgTFRQ
IFNjYWxpbmcgUGFyYW1ldGVyIj4KKzx0dGNvbCBhbGlnbj0ibGVmdCI+UERGPC90dGNvbD4KKzxj
PnsxMjgsIDY0LCA2NH0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzwvc2VjdGlvbj4KKworPC9z
ZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfc2VlZCIgdG9jPSJpbmNsdWRlIgorIHRp
dGxlPSJMaW5lYXIgQ29uZ3J1ZW50aWFsIEdlbmVyYXRvciAoTENHKSBTZWVkIj4KKzx0PgorQXMg
ZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0ic2lsa19leGNpdGF0aW9uX3JlY29uc3RydWN0aW9u
Ii8+LCBTSUxLIHVzZXMgYQorIGxpbmVhciBjb25ncnVlbnRpYWwgZ2VuZXJhdG9yIChMQ0cpIHRv
IGluamVjdCBwc2V1ZG9yYW5kb20gbm9pc2UgaW50byB0aGUKKyBxdWFudGl6ZWQgZXhjaXRhdGlv
bi4KK1RvIGVuc3VyZSBzeW5jaHJvbml6YXRpb24gb2YgdGhpcyBwcm9jZXNzIGJldHdlZW4gdGhl
IGVuY29kZXIgYW5kIGRlY29kZXIsIGVhY2gKKyBTSUxLIGZyYW1lIHN0b3JlcyBhIDItYml0IHNl
ZWQgYWZ0ZXIgdGhlIExUUCBwYXJhbWV0ZXJzIChpZiBhbnkpLgorVGhlIGVuY29kZXIgbWF5IGNv
bnNpZGVyIHRoZSBjaG9pY2Ugb2Ygc2VlZCBkdXJpbmcgcXVhbnRpemF0aW9uLCBhbmQgdGhlCisg
ZmxleGliaWxpdHkgb2YgdGhpcyBjaG9pY2UgbGV0cyBpdCByZWR1Y2UgZGlzdG9ydGlvbiwgaGVs
cGluZyB0byBwYXkgZm9yIHRoZQorIGJpdCBjb3N0IHJlcXVpcmVkIHRvIHNpZ25hbCBpdC4KK1Ro
ZSBkZWNvZGVyIHJlYWRzIHRoZSBzZWVkIHVzaW5nIHRoZSB1bmlmb3JtIDQtZW50cnkgUERGIGlu
CisgPHhyZWYgdGFyZ2V0PSJzaWxrX3NlZWRfcGRmIi8+LCB5aWVsZGluZyBhIHZhbHVlIGJldHdl
ZW4gMCBhbmQgMywgaW5jbHVzaXZlLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19z
ZWVkX3BkZiIKKyB0aXRsZT0iUERGIGZvciBMQ0cgU2VlZCI+Cis8dHRjb2wgYWxpZ249ImxlZnQi
PlBERjwvdHRjb2w+Cis8Yz57NjQsIDY0LCA2NCwgNjR9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgor
Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19leGNpdGF0aW9uIiB0b2M9Imlu
Y2x1ZGUiIHRpdGxlPSJFeGNpdGF0aW9uIj4KKzx0PgorU0lMSyBjb2RlcyB0aGUgZXhjaXRhdGlv
biB1c2luZyBhIG1vZGlmaWVkIHZlcnNpb24gb2YgdGhlIFB5cmFtaWQgVmVjdG9yCisgUXVhbnRp
emF0aW9uIChQVlEpIGNvZGVib29rIDx4cmVmIHRhcmdldD0iUFZRIi8+LgorVGhlIFBWUSBjb2Rl
Ym9vayBpcyBkZXNpZ25lZCBmb3IgTGFwbGFjZS1kaXN0cmlidXRlZCB2YWx1ZXMgYW5kIGNvbnNp
c3RzIG9mIGFsbAorIHN1bXMgb2YgSyBzaWduZWQsIHVuaXQgcHVsc2VzIGluIGEgdmVjdG9yIG9m
IGRpbWVuc2lvbiBOLCB3aGVyZSB0d28gcHVsc2VzIGF0CisgdGhlIHNhbWUgcG9zaXRpb24gYXJl
IHJlcXVpcmVkIHRvIGhhdmUgdGhlIHNhbWUgc2lnbi4KK1RodXMgdGhlIGNvZGVib29rIGluY2x1
ZGVzIGFsbCBpbnRlZ2VyIGNvZGV2ZWN0b3JzIHkgb2YgZGltZW5zaW9uIE4gdGhhdAorIHNhdGlz
ZnkKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKK04tMQorX18KK1wgIGFicyh5W2pdKSA9IEsgLgorL18KK2o9MAorXV0+PC9hcnR3b3Jr
PgorPC9maWd1cmU+CitVbmxpa2UgcmVndWxhciBQVlEsIFNJTEsgdXNlcyBhIHZhcmlhYmxlLWxl
bmd0aCwgcmF0aGVyIHRoYW4gZml4ZWQtbGVuZ3RoLAorIGVuY29kaW5nLgorVGhpcyBlbmNvZGlu
ZyBpcyBiZXR0ZXIgc3VpdGVkIHRvIHRoZSBtb3JlIEdhdXNzaWFuLWxpa2UgZGlzdHJpYnV0aW9u
IG9mIHRoZQorIGNvZWZmaWNpZW50IG1hZ25pdHVkZXMgYW5kIHRoZSBub24tdW5pZm9ybSBkaXN0
cmlidXRpb24gb2YgdGhlaXIgc2lnbnMgKGNhdXNlZAorIGJ5IHRoZSBxdWFudGl6YXRpb24gb2Zm
c2V0IGRlc2NyaWJlZCBiZWxvdykuCitTSUxLIGFsc28gaGFuZGxlcyBsYXJnZSBjb2RlYm9va3Mg
YnkgY29kaW5nIHRoZSBsZWFzdCBzaWduaWZpY2FudCBiaXRzIChMU0JzKQorIG9mIGVhY2ggY29l
ZmZpY2llbnQgZGlyZWN0bHkuCitUaGlzIGFkZHMgYSBzbWFsbCBjb2RpbmcgZWZmaWNpZW5jeSBs
b3NzLCBidXQgZ3JlYXRseSByZWR1Y2VzIHRoZSBjb21wdXRhdGlvbgorIHRpbWUgYW5kIFJPTSBz
aXplIHJlcXVpcmVkIGZvciBkZWNvZGluZywgYXMgaW1wbGVtZW50ZWQgaW4KKyBzaWxrX2RlY29k
ZV9wdWxzZXMoKSAoZGVjb2RlX3B1bHNlcy5jKS4KKzwvdD4KKworPHQ+CitTSUxLIGZpeGVzIHRo
ZSBkaW1lbnNpb24gb2YgdGhlIGNvZGVib29rIHRvIE4mbmJzcDs9Jm5ic3A7MTYuCitUaGUgZXhj
aXRhdGlvbiBpcyBtYWRlIHVwIG9mIGEgbnVtYmVyIG9mICJzaGVsbCBibG9ja3MiLCBlYWNoIDE2
IHNhbXBsZXMgaW4KKyBzaXplLgorPHhyZWYgdGFyZ2V0PSJzaWxrX3NoZWxsX2Jsb2NrX3RhYmxl
Ii8+IGxpc3RzIHRoZSBudW1iZXIgb2Ygc2hlbGwgYmxvY2tzCisgcmVxdWlyZWQgZm9yIGEgU0lM
SyBmcmFtZSBmb3IgZWFjaCBwb3NzaWJsZSBhdWRpbyBiYW5kd2lkdGggYW5kIGZyYW1lIHNpemUu
CisxMCZuYnNwO21zIE1CIGZyYW1lcyBub21pbmFsbHkgY29udGFpbiAxMjAmbmJzcDtzYW1wbGVz
ICgxMCZuYnNwO21zIGF0CisgMTImbmJzcDtrSHopLCB3aGljaCBpcyBub3QgYSBtdWx0aXBsZSBv
ZiAxNi4KK1RoaXMgaXMgaGFuZGxlZCBieSBjb2RpbmcgOCBzaGVsbCBibG9ja3MgKDEyOCBzYW1w
bGVzKSBhbmQgZGlzY2FyZGluZyB0aGUgZmluYWwKKyA4IHNhbXBsZXMgb2YgdGhlIGxhc3QgYmxv
Y2suCitUaGUgZGVjb2RlciBjb250YWlucyBubyBzcGVjaWFsIGNhc2UgdGhhdCBwcmV2ZW50cyBh
biBlbmNvZGVyIGZyb20gcGxhY2luZworIHB1bHNlcyBpbiB0aGVzZSBzYW1wbGVzLCBhbmQgdGhl
eSBtdXN0IGJlIGNvcnJlY3RseSBwYXJzZWQgZnJvbSB0aGUgYml0c3RyZWFtCisgaWYgcHJlc2Vu
dCwgYnV0IHRoZXkgYXJlIG90aGVyd2lzZSBpZ25vcmVkLgorPC90PgorCis8dGV4dHRhYmxlIGFu
Y2hvcj0ic2lsa19zaGVsbF9ibG9ja190YWJsZSIKKyB0aXRsZT0iTnVtYmVyIG9mIFNoZWxsIEJs
b2NrcyBQZXIgU0lMSyBGcmFtZSI+Cis8dHRjb2w+QXVkaW8gQmFuZHdpZHRoPC90dGNvbD4KKzx0
dGNvbD5GcmFtZSBTaXplPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPk51bWJlciBvZiBT
aGVsbCBCbG9ja3M8L3R0Y29sPgorPGM+TkI8L2M+IDxjPjEwJm5ic3A7bXM8L2M+ICA8Yz41PC9j
PgorPGM+TUI8L2M+IDxjPjEwJm5ic3A7bXM8L2M+ICA8Yz44PC9jPgorPGM+V0I8L2M+IDxjPjEw
Jm5ic3A7bXM8L2M+IDxjPjEwPC9jPgorPGM+TkI8L2M+IDxjPjIwJm5ic3A7bXM8L2M+IDxjPjEw
PC9jPgorPGM+TUI8L2M+IDxjPjIwJm5ic3A7bXM8L2M+IDxjPjE1PC9jPgorPGM+V0I8L2M+IDxj
PjIwJm5ic3A7bXM8L2M+IDxjPjIwPC9jPgorPC90ZXh0dGFibGU+CisKKzxzZWN0aW9uIGFuY2hv
cj0ic2lsa19yYXRlX2xldmVsIiB0aXRsZT0iUmF0ZSBMZXZlbCI+Cis8dD4KK1RoZSBmaXJzdCBz
eW1ib2wgaW4gdGhlIGV4Y2l0YXRpb24gaXMgYSAicmF0ZSBsZXZlbCIsIHdoaWNoIGlzIGFuIGlu
ZGV4IGZyb20gMAorIHRvIDgsIGluY2x1c2l2ZSwgY29kZWQgdXNpbmcgdGhlIFBERiBpbiA8eHJl
ZiB0YXJnZXQ9InNpbGtfcmF0ZV9sZXZlbF9wZGZzIi8+CisgY29ycmVzcG9uZGluZyB0byB0aGUg
c2lnbmFsIHR5cGUgb2YgdGhlIGN1cnJlbnQgZnJhbWUgKGZyb20KKyA8eHJlZiB0YXJnZXQ9InNp
bGtfZnJhbWVfdHlwZSIvPikuCitUaGUgcmF0ZSBsZXZlbCBzZWxlY3RzIHRoZSBQREYgdXNlZCB0
byBkZWNvZGUgdGhlIG51bWJlciBvZiBwdWxzZXMgaW4KKyB0aGUgaW5kaXZpZHVhbCBzaGVsbCBi
bG9ja3MuCitJdCBkb2VzIG5vdCBkaXJlY3RseSBjb252ZXkgYW55IGluZm9ybWF0aW9uIGFib3V0
IHRoZSBiaXRyYXRlIG9yIHRoZSBudW1iZXIgb2YKKyBwdWxzZXMgaXRzZWxmLCBidXQgbWVyZWx5
IGNoYW5nZXMgdGhlIHByb2JhYmlsaXR5IG9mIHRoZSBzeW1ib2xzIGluCisgPHhyZWYgdGFyZ2V0
PSJzaWxrX3B1bHNlX2NvdW50cyIvPi4KK0xldmVsJm5ic3A7MCBwcm92aWRlcyBhIG1vcmUgZWZm
aWNpZW50IGVuY29kaW5nIGF0IGxvdyByYXRlcyBnZW5lcmFsbHksIGFuZAorIGxldmVsJm5ic3A7
OCBwcm92aWRlcyBhIG1vcmUgZWZmaWNpZW50IGVuY29kaW5nIGF0IGhpZ2ggcmF0ZXMgZ2VuZXJh
bGx5LAorIHRob3VnaCB0aGUgbW9zdCBlZmZpY2llbnQgbGV2ZWwgZm9yIGEgcGFydGljdWxhciBT
SUxLIGZyYW1lIG1heSBkZXBlbmQgb24gdGhlCisgZXhhY3QgZGlzdHJpYnV0aW9uIG9mIHRoZSBj
b2RlZCBzeW1ib2xzLgorQW4gZW5jb2RlciBzaG91bGQsIGJ1dCBpcyBub3QgcmVxdWlyZWQgdG8s
IHVzZSB0aGUgbW9zdCBlZmZpY2llbnQgcmF0ZSBsZXZlbC4KKzwvdD4KKworPHRleHR0YWJsZSBh
bmNob3I9InNpbGtfcmF0ZV9sZXZlbF9wZGZzIgorIHRpdGxlPSJQREZzIGZvciB0aGUgUmF0ZSBM
ZXZlbCI+Cis8dHRjb2w+U2lnbmFsIFR5cGU8L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8
Yz5JbmFjdGl2ZSBvciBVbnZvaWNlZDwvYz4KKzxjPnsxNSwgNTEsIDEyLCA0NiwgNDUsIDEzLCAz
MywgMjcsIDE0fS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+Cis8Yz57MzMsIDMwLCAzNiwgMTcsIDM0
LCA0OSwgMTgsIDIxLCAxOH0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gYW5jaG9yPSJzaWxrX3B1bHNlX2NvdW50cyIgdGl0bGU9IlB1bHNlcyBQZXIgU2hl
bGwgQmxvY2siPgorPHQ+CitUaGUgdG90YWwgbnVtYmVyIG9mIHB1bHNlcyBpbiBlYWNoIG9mIHRo
ZSBzaGVsbCBibG9ja3MgZm9sbG93cyB0aGUgcmF0ZSBsZXZlbC4KK1RoZSBwdWxzZSBjb3VudHMg
Zm9yIGFsbCBvZiB0aGUgc2hlbGwgYmxvY2tzIGFyZSBjb2RlZCBjb25zZWN1dGl2ZWx5LCBiZWZv
cmUKKyB0aGUgY29udGVudCBvZiBhbnkgb2YgdGhlIGJsb2Nrcy4KK0VhY2ggYmxvY2sgbWF5IGhh
dmUgYW55d2hlcmUgZnJvbSAwIHRvIDE2IHB1bHNlcywgaW5jbHVzaXZlLCBjb2RlZCB1c2luZyB0
aGUKKyAxOC1lbnRyeSBQREYgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX3B1bHNlX2NvdW50X3BkZnMi
Lz4gY29ycmVzcG9uZGluZyB0byB0aGUKKyByYXRlIGxldmVsIGZyb20gPHhyZWYgdGFyZ2V0PSJz
aWxrX3JhdGVfbGV2ZWwiLz4uCitUaGUgc3BlY2lhbCB2YWx1ZSAxNyBpbmRpY2F0ZXMgdGhhdCB0
aGlzIGJsb2NrIGhhcyBvbmUgb3IgbW9yZSBhZGRpdGlvbmFsCisgTFNCcyB0byBkZWNvZGUgZm9y
IGVhY2ggY29lZmZpY2llbnQuCitJZiB0aGUgZGVjb2RlciBlbmNvdW50ZXJzIHRoaXMgdmFsdWUs
IGl0IGRlY29kZXMgYW5vdGhlciB2YWx1ZSBmb3IgdGhlIGFjdHVhbAorIHB1bHNlIGNvdW50IG9m
IHRoZSBibG9jaywgYnV0IHVzZXMgdGhlIFBERiBjb3JyZXNwb25kaW5nIHRvIHRoZSBzcGVjaWFs
IHJhdGUKKyBsZXZlbCZuYnNwOzkgaW5zdGVhZCBvZiB0aGUgbm9ybWFsIHJhdGUgbGV2ZWwuCitU
aGlzIHByb2Nlc3MgcmVwZWF0cyB1bnRpbCB0aGUgZGVjb2RlciByZWFkcyBhIHZhbHVlIGxlc3Mg
dGhhbiAxNywgYW5kIGl0IHRoZW4KKyBzZXRzIHRoZSBudW1iZXIgb2YgZXh0cmEgTFNCcyB1c2Vk
IHRvIHRoZSBudW1iZXIgb2YgMTcncyBkZWNvZGVkIGZvciB0aGF0CisgYmxvY2suCitJZiBpdCBy
ZWFkcyB0aGUgdmFsdWUgMTcgdGVuIHRpbWVzLCB0aGVuIHRoZSBuZXh0IGl0ZXJhdGlvbiB1c2Vz
IHRoZSBzcGVjaWFsCisgcmF0ZSBsZXZlbCZuYnNwOzEwIGluc3RlYWQgb2YgOS4KK1RoZSBwcm9i
YWJpbGl0eSBvZiBkZWNvZGluZyBhIDE3IHdoZW4gdXNpbmcgdGhlIFBERiBmb3IgcmF0ZSBsZXZl
bCZuYnNwOzEwIGlzCisgemVybywgZW5zdXJpbmcgdGhhdCB0aGUgbnVtYmVyIG9mIExTQnMgZm9y
IGEgYmxvY2sgd2lsbCBub3QgZXhjZWVkIDEwLgorVGhlIGN1bXVsYXRpdmUgZGlzdHJpYnV0aW9u
IGZvciByYXRlIGxldmVsJm5ic3A7MTAgaXMganVzdCBhIHNoaWZ0ZWQgdmVyc2lvbiBvZgorIHRo
YXQgZm9yIDkgYW5kIHRodXMgZG9lcyBub3QgcmVxdWlyZSBhbnkgYWRkaXRpb25hbCBzdG9yYWdl
LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19wdWxzZV9jb3VudF9wZGZzIgorIHRp
dGxlPSJQREZzIGZvciB0aGUgUHVsc2UgQ291bnQiPgorPHR0Y29sPlJhdGUgTGV2ZWw8L3R0Y29s
PgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz4wPC9jPgorPGM+ezEzMSwgNzQsIDI1LCA4LCAzLCAz
LCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxfS8yNTY8L2M+Cis8Yz4xPC9jPgor
PGM+ezU4LCA5MywgNjAsIDIzLCA3LCAzLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAx
LCAxfS8yNTY8L2M+Cis8Yz4yPC9jPgorPGM+ezQzLCA1MSwgNDYsIDMzLCAyNCwgMTYsIDExLCA4
LCA2LCAzLCAzLCAzLCAyLCAxLCAxLCAyLCAxLCAyfS8yNTY8L2M+Cis8Yz4zPC9jPgorPGM+ezE3
LCA1MiwgNzEsIDU3LCAzMSwgMTIsIDUsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDF9
LzI1NjwvYz4KKzxjPjQ8L2M+Cis8Yz57NiwgMjEsIDQxLCA1MywgNDksIDM1LCAyMSwgMTEsIDYs
IDMsIDIsIDIsIDEsIDEsIDEsIDEsIDEsIDF9LzI1NjwvYz4KKzxjPjU8L2M+Cis8Yz57NywgMTQs
IDIyLCAyOCwgMjksIDI4LCAyNSwgMjAsIDE3LCAxMywgMTEsIDksIDcsIDUsIDQsIDQsIDMsIDEw
fS8yNTY8L2M+Cis8Yz42PC9jPgorPGM+ezIsIDUsIDE0LCAyOSwgNDIsIDQ2LCA0MSwgMzEsIDE5
LCAxMSwgNiwgMywgMiwgMSwgMSwgMSwgMSwgMX0vMjU2PC9jPgorPGM+NzwvYz4KKzxjPnsxLCAy
LCA0LCAxMCwgMTksIDI5LCAzNSwgMzcsIDM0LCAyOCwgMjAsIDE0LCA4LCA1LCA0LCAyLCAyLCAy
fS8yNTY8L2M+Cis8Yz44PC9jPgorPGM+ezEsIDIsIDIsIDUsIDksIDE0LCAyMCwgMjQsIDI3LCAy
OCwgMjYsIDIzLCAyMCwgMTUsIDExLCA4LCA2LCAxNX0vMjU2PC9jPgorPGM+OTwvYz4KKzxjPnsx
LCAxLCAxLCA2LCAyNywgNTgsIDU2LCAzOSwgMjUsIDE0LCAxMCwgNiwgMywgMywgMiwgMSwgMSwg
Mn0vMjU2PC9jPgorPGM+MTA8L2M+Cis8Yz57MiwgMSwgNiwgMjcsIDU4LCA1NiwgMzksIDI1LCAx
NCwgMTAsIDYsIDMsIDMsIDIsIDEsIDEsIDIsIDB9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8
L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19wdWxzZV9sb2NhdGlvbnMiIHRpdGxl
PSJQdWxzZSBMb2NhdGlvbiBEZWNvZGluZyI+Cis8dD4KK1RoZSBsb2NhdGlvbnMgb2YgdGhlIHB1
bHNlcyBpbiBlYWNoIHNoZWxsIGJsb2NrIGZvbGxvdyB0aGUgcHVsc2UgY291bnRzLAorIGFzIGRl
Y29kZWQgYnkgc2lsa19zaGVsbF9kZWNvZGVyKCkgKHNoZWxsX2NvZGVyLmMpLgorQXMgd2l0aCB0
aGUgcHVsc2UgY291bnRzLCB0aGVzZSBsb2NhdGlvbnMgYXJlIGNvZGVkIGZvciBhbGwgdGhlIHNo
ZWxsIGJsb2NrcworIGJlZm9yZSBhbnkgb2YgdGhlIHJlbWFpbmluZyBpbmZvcm1hdGlvbiBmb3Ig
ZWFjaCBibG9jay4KK1VubGlrZSBtYW55IG90aGVyIGNvZGVjcywgU0lMSyBwbGFjZXMgbm8gcmVz
dHJpY3Rpb24gb24gdGhlIGRpc3RyaWJ1dGlvbiBvZgorIHB1bHNlcyB3aXRoaW4gYSBzaGVsbCBi
bG9jay4KK0FsbCBvZiB0aGUgcHVsc2VzIG1heSBiZSBwbGFjZWQgaW4gYSBzaW5nbGUgbG9jYXRp
b24sIG9yIGVhY2ggb25lIGluIGEgdW5pcXVlCisgbG9jYXRpb24sIG9yIGFueXRoaW5nIGluIGJl
dHdlZW4uCis8L3Q+CisKKzx0PgorVGhlIGxvY2F0aW9uIG9mIHB1bHNlcyBpcyBjb2RlZCBieSBy
ZWN1cnNpdmVseSBwYXJ0aXRpb25pbmcgZWFjaCBibG9jayBpbnRvCisgaGFsdmVzLCBhbmQgY29k
aW5nIGhvdyBtYW55IHB1bHNlcyBmYWxsIG9uIHRoZSBsZWZ0IHNpZGUgb2YgdGhlIHNwbGl0Lgor
QWxsIHJlbWFpbmluZyBwdWxzZXMgbXVzdCBmYWxsIG9uIHRoZSByaWdodCBzaWRlIG9mIHRoZSBz
cGxpdC4KK1RoZSBwcm9jZXNzIHRoZW4gcmVjdXJzZXMgaW50byB0aGUgbGVmdCBoYWxmLCBhbmQg
YWZ0ZXIgdGhhdCByZXR1cm5zLCB0aGUKKyByaWdodCBoYWxmIChwcmVvcmRlciB0cmF2ZXJzYWwp
LgorVGhlIFBERiB0byB1c2UgaXMgY2hvc2VuIGJ5IHRoZSBzaXplIG9mIHRoZSBjdXJyZW50IHBh
cnRpdGlvbiAoMTYsIDgsIDQsIG9yIDIpCisgYW5kIHRoZSBudW1iZXIgb2YgcHVsc2VzIGluIHRo
ZSBwYXJ0aXRpb24gKDEgdG8gMTYsIGluY2x1c2l2ZSkuCitUYWJsZXMmbmJzcDs8eHJlZiBmb3Jt
YXQ9ImNvdW50ZXIiIHRhcmdldD0ic2lsa19zaGVsbF9jb2RlM19wZGZzIi8+CisgdGhyb3VnaCZu
YnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX3NoZWxsX2NvZGUwX3BkZnMi
Lz4gbGlzdCB0aGUKKyBQREZzIHVzZWQgZm9yIGVhY2ggcGFydGl0aW9uIHNpemUgYW5kIHB1bHNl
IGNvdW50LgorVGhpcyBwcm9jZXNzIHNraXBzIHBhcnRpdGlvbnMgd2l0aG91dCBhbnkgcHVsc2Vz
LCBpLmUuLCB3aGVyZSB0aGUgaW5pdGlhbCBwdWxzZQorIGNvdW50IGZyb20gPHhyZWYgdGFyZ2V0
PSJzaWxrX3B1bHNlX2NvdW50cyIvPiB3YXMgemVybywgb3Igd2hlcmUgdGhlIHNwbGl0IGluCisg
dGhlIHByaW9yIGxldmVsIGluZGljYXRlZCB0aGF0IGFsbCBvZiB0aGUgcHVsc2VzIGZlbGwgb24g
dGhlIG90aGVyIHNpZGUuCitUaGVzZSBwYXJ0aXRpb25zIGhhdmUgbm90aGluZyB0byBjb2RlLCBz
byB0aGV5IHJlcXVpcmUgbm8gUERGLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19z
aGVsbF9jb2RlM19wZGZzIgorIHRpdGxlPSJQREZzIGZvciBQdWxzZSBDb3VudCBTcGxpdCwgMTYg
U2FtcGxlIFBhcnRpdGlvbnMiPgorPHR0Y29sPlB1bHNlIENvdW50PC90dGNvbD4KKzx0dGNvbD5Q
REY8L3R0Y29sPgorIDxjPjE8L2M+IDxjPnsxMjYsIDEzMH0vMjU2PC9jPgorIDxjPjI8L2M+IDxj
Pns1NiwgMTQyLCA1OH0vMjU2PC9jPgorIDxjPjM8L2M+IDxjPnsyNSwgMTAxLCAxMDQsIDI2fS8y
NTY8L2M+CisgPGM+NDwvYz4gPGM+ezEyLCA2MCwgMTA4LCA2NCwgMTJ9LzI1NjwvYz4KKyA8Yz41
PC9jPiA8Yz57NywgMzUsIDg0LCA4NywgMzcsIDZ9LzI1NjwvYz4KKyA8Yz42PC9jPiA8Yz57NCwg
MjAsIDU5LCA4NiwgNjMsIDIxLCAzfS8yNTY8L2M+CisgPGM+NzwvYz4gPGM+ezMsIDEyLCAzOCwg
NzIsIDc1LCA0MiwgMTIsIDJ9LzI1NjwvYz4KKyA8Yz44PC9jPiA8Yz57MiwgOCwgMjUsIDU0LCA3
MywgNTksIDI3LCA3LCAxfS8yNTY8L2M+CisgPGM+OTwvYz4gPGM+ezIsIDUsIDE3LCAzOSwgNjMs
IDY1LCA0MiwgMTgsIDQsIDF9LzI1NjwvYz4KKzxjPjEwPC9jPiA8Yz57MSwgNCwgMTIsIDI4LCA0
OSwgNjMsIDU0LCAzMCwgMTEsIDMsIDF9LzI1NjwvYz4KKzxjPjExPC9jPiA8Yz57MSwgNCwgOCwg
MjAsIDM3LCA1NSwgNTcsIDQxLCAyMiwgOCwgMiwgMX0vMjU2PC9jPgorPGM+MTI8L2M+IDxjPnsx
LCAzLCA3LCAxNSwgMjgsIDQ0LCA1MywgNDgsIDMzLCAxNiwgNiwgMSwgMX0vMjU2PC9jPgorPGM+
MTM8L2M+IDxjPnsxLCAyLCA2LCAxMiwgMjEsIDM1LCA0NywgNDgsIDQwLCAyNSwgMTIsIDUsIDEs
IDF9LzI1NjwvYz4KKzxjPjE0PC9jPiA8Yz57MSwgMSwgNCwgMTAsIDE3LCAyNywgMzcsIDQ3LCA0
MywgMzMsIDIxLCA5LCA0LCAxLCAxfS8yNTY8L2M+Cis8Yz4xNTwvYz4gPGM+ezEsIDEsIDEsIDgs
IDE0LCAyMiwgMzMsIDQwLCA0MywgMzgsIDI4LCAxNiwgOCwgMSwgMSwgMX0vMjU2PC9jPgorPGM+
MTY8L2M+IDxjPnsxLCAxLCAxLCAxLCAxMywgMTgsIDI3LCAzNiwgNDEsIDQxLCAzNCwgMjQsIDE0
LCAxLCAxLCAxLCAxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9
InNpbGtfc2hlbGxfY29kZTJfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgUHVsc2UgQ291bnQgU3Bs
aXQsIDggU2FtcGxlIFBhcnRpdGlvbnMiPgorPHR0Y29sPlB1bHNlIENvdW50PC90dGNvbD4KKzx0
dGNvbD5QREY8L3R0Y29sPgorIDxjPjE8L2M+IDxjPnsxMjcsIDEyOX0vMjU2PC9jPgorIDxjPjI8
L2M+IDxjPns1MywgMTQ5LCA1NH0vMjU2PC9jPgorIDxjPjM8L2M+IDxjPnsyMiwgMTA1LCAxMDYs
IDIzfS8yNTY8L2M+CisgPGM+NDwvYz4gPGM+ezExLCA2MSwgMTExLCA2MywgMTB9LzI1NjwvYz4K
KyA8Yz41PC9jPiA8Yz57NiwgMzUsIDg2LCA4OCwgMzYsIDV9LzI1NjwvYz4KKyA8Yz42PC9jPiA8
Yz57NCwgMjAsIDU5LCA4NywgNjIsIDIxLCAzfS8yNTY8L2M+CisgPGM+NzwvYz4gPGM+ezMsIDEz
LCA0MCwgNzEsIDczLCA0MSwgMTMsIDJ9LzI1NjwvYz4KKyA8Yz44PC9jPiA8Yz57MywgOSwgMjcs
IDUzLCA3MCwgNTYsIDI4LCA5LCAxfS8yNTY8L2M+CisgPGM+OTwvYz4gPGM+ezMsIDgsIDE5LCAz
NywgNTcsIDYxLCA0NCwgMjAsIDYsIDF9LzI1NjwvYz4KKzxjPjEwPC9jPiA8Yz57MywgNywgMTUs
IDI4LCA0NCwgNTQsIDQ5LCAzMywgMTcsIDUsIDF9LzI1NjwvYz4KKzxjPjExPC9jPiA8Yz57MSwg
NywgMTMsIDIyLCAzNCwgNDYsIDQ4LCAzOCwgMjgsIDE0LCA0LCAxfS8yNTY8L2M+Cis8Yz4xMjwv
Yz4gPGM+ezEsIDEsIDExLCAyMiwgMjcsIDM1LCA0MiwgNDcsIDMzLCAyNSwgMTAsIDEsIDF9LzI1
NjwvYz4KKzxjPjEzPC9jPiA8Yz57MSwgMSwgNiwgMTQsIDI2LCAzNywgNDMsIDQzLCAzNywgMjYs
IDE0LCA2LCAxLCAxfS8yNTY8L2M+Cis8Yz4xNDwvYz4gPGM+ezEsIDEsIDQsIDEwLCAyMCwgMzEs
IDQwLCA0MiwgNDAsIDMxLCAyMCwgMTAsIDQsIDEsIDF9LzI1NjwvYz4KKzxjPjE1PC9jPiA8Yz57
MSwgMSwgMywgOCwgMTYsIDI2LCAzNSwgMzgsIDM4LCAzNSwgMjYsIDE2LCA4LCAzLCAxLCAxfS8y
NTY8L2M+Cis8Yz4xNjwvYz4gPGM+ezEsIDEsIDIsIDYsIDEyLCAyMSwgMzAsIDM2LCAzOCwgMzYs
IDMwLCAyMSwgMTIsIDYsIDIsIDEsIDF9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRh
YmxlIGFuY2hvcj0ic2lsa19zaGVsbF9jb2RlMV9wZGZzIgorIHRpdGxlPSJQREZzIGZvciBQdWxz
ZSBDb3VudCBTcGxpdCwgNCBTYW1wbGUgUGFydGl0aW9ucyI+Cis8dHRjb2w+UHVsc2UgQ291bnQ8
L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+CisgPGM+MTwvYz4gPGM+ezEyNywgMTI5fS8yNTY8
L2M+CisgPGM+MjwvYz4gPGM+ezQ5LCAxNTcsIDUwfS8yNTY8L2M+CisgPGM+MzwvYz4gPGM+ezIw
LCAxMDcsIDEwOSwgMjB9LzI1NjwvYz4KKyA8Yz40PC9jPiA8Yz57MTEsIDYwLCAxMTMsIDYyLCAx
MH0vMjU2PC9jPgorIDxjPjU8L2M+IDxjPns3LCAzNiwgODQsIDg3LCAzNiwgNn0vMjU2PC9jPgor
IDxjPjY8L2M+IDxjPns2LCAyNCwgNTcsIDgyLCA2MCwgMjMsIDR9LzI1NjwvYz4KKyA8Yz43PC9j
PiA8Yz57NSwgMTgsIDM5LCA2NCwgNjgsIDQyLCAxNiwgNH0vMjU2PC9jPgorIDxjPjg8L2M+IDxj
Pns2LCAxNCwgMjksIDQ3LCA2MSwgNTIsIDMwLCAxNCwgM30vMjU2PC9jPgorIDxjPjk8L2M+IDxj
PnsxLCAxNSwgMjMsIDM1LCA1MSwgNTAsIDQwLCAzMCwgMTAsIDF9LzI1NjwvYz4KKzxjPjEwPC9j
PiA8Yz57MSwgMSwgMjEsIDMyLCA0MiwgNTIsIDQ2LCA0MSwgMTgsIDEsIDF9LzI1NjwvYz4KKzxj
PjExPC9jPiA8Yz57MSwgNiwgMTYsIDI3LCAzNiwgNDIsIDQyLCAzNiwgMjcsIDE2LCA2LCAxfS8y
NTY8L2M+Cis8Yz4xMjwvYz4gPGM+ezEsIDUsIDEyLCAyMSwgMzEsIDM4LCA0MCwgMzgsIDMxLCAy
MSwgMTIsIDUsIDF9LzI1NjwvYz4KKzxjPjEzPC9jPiA8Yz57MSwgMywgOSwgMTcsIDI2LCAzNCwg
MzgsIDM4LCAzNCwgMjYsIDE3LCA5LCAzLCAxfS8yNTY8L2M+Cis8Yz4xNDwvYz4gPGM+ezEsIDMs
IDcsIDE0LCAyMiwgMjksIDM0LCAzNiwgMzQsIDI5LCAyMiwgMTQsIDcsIDMsIDF9LzI1NjwvYz4K
KzxjPjE1PC9jPiA8Yz57MSwgMiwgNSwgMTEsIDE4LCAyNSwgMzEsIDM1LCAzNSwgMzEsIDI1LCAx
OCwgMTEsIDUsIDIsIDF9LzI1NjwvYz4KKzxjPjE2PC9jPiA8Yz57MSwgMSwgNCwgOSwgMTUsIDIx
LCAyOCwgMzIsIDM0LCAzMiwgMjgsIDIxLCAxNSwgOSwgNCwgMSwgMX0vMjU2PC9jPgorPC90ZXh0
dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3NoZWxsX2NvZGUwX3BkZnMiCisgdGl0
bGU9IlBERnMgZm9yIFB1bHNlIENvdW50IFNwbGl0LCAyIFNhbXBsZSBQYXJ0aXRpb25zIj4KKzx0
dGNvbD5QdWxzZSBDb3VudDwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNvbD4KKyA8Yz4xPC9jPiA8
Yz57MTI4LCAxMjh9LzI1NjwvYz4KKyA8Yz4yPC9jPiA8Yz57NDIsIDE3MiwgNDJ9LzI1NjwvYz4K
KyA8Yz4zPC9jPiA8Yz57MjEsIDEwNywgMTA3LCAyMX0vMjU2PC9jPgorIDxjPjQ8L2M+IDxjPnsx
MiwgNjAsIDExMiwgNjEsIDExfS8yNTY8L2M+CisgPGM+NTwvYz4gPGM+ezgsIDM0LCA4NiwgODYs
IDM1LCA3fS8yNTY8L2M+CisgPGM+NjwvYz4gPGM+ezgsIDIzLCA1NSwgOTAsIDU1LCAyMCwgNX0v
MjU2PC9jPgorIDxjPjc8L2M+IDxjPns1LCAxNSwgMzgsIDcyLCA3MiwgMzYsIDE1LCAzfS8yNTY8
L2M+CisgPGM+ODwvYz4gPGM+ezYsIDEyLCAyNywgNTIsIDc3LCA0NywgMjAsIDEwLCA1fS8yNTY8
L2M+CisgPGM+OTwvYz4gPGM+ezYsIDE5LCAyOCwgMzUsIDQwLCA0MCwgMzUsIDI4LCAxOSwgNn0v
MjU2PC9jPgorPGM+MTA8L2M+IDxjPns0LCAxNCwgMjIsIDMxLCAzNywgNDAsIDM3LCAzMSwgMjIs
IDE0LCA0fS8yNTY8L2M+Cis8Yz4xMTwvYz4gPGM+ezMsIDEwLCAxOCwgMjYsIDMzLCAzOCwgMzgs
IDMzLCAyNiwgMTgsIDEwLCAzfS8yNTY8L2M+Cis8Yz4xMjwvYz4gPGM+ezIsIDgsIDEzLCAyMSwg
MjksIDM2LCAzOCwgMzYsIDI5LCAyMSwgMTMsIDgsIDJ9LzI1NjwvYz4KKzxjPjEzPC9jPiA8Yz57
MSwgNSwgMTAsIDE3LCAyNSwgMzIsIDM4LCAzOCwgMzIsIDI1LCAxNywgMTAsIDUsIDF9LzI1Njwv
Yz4KKzxjPjE0PC9jPiA8Yz57MSwgNCwgNywgMTMsIDIxLCAyOSwgMzUsIDM2LCAzNSwgMjksIDIx
LCAxMywgNywgNCwgMX0vMjU2PC9jPgorPGM+MTU8L2M+IDxjPnsxLCAyLCA1LCAxMCwgMTcsIDI1
LCAzMiwgMzYsIDM2LCAzMiwgMjUsIDE3LCAxMCwgNSwgMiwgMX0vMjU2PC9jPgorPGM+MTY8L2M+
IDxjPnsxLCAyLCA0LCA3LCAxMywgMjEsIDI4LCAzNCwgMzYsIDM0LCAyOCwgMjEsIDEzLCA3LCA0
LCAyLCAxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBh
bmNob3I9InNpbGtfc2hlbGxfbHNiIiB0aXRsZT0iTFNCIERlY29kaW5nIj4KKzx0PgorQWZ0ZXIg
dGhlIGRlY29kZXIgcmVhZHMgdGhlIHB1bHNlIGxvY2F0aW9ucyBmb3IgYWxsIGJsb2NrcywgaXQg
cmVhZHMgdGhlIExTQnMKKyAoaWYgYW55KSBmb3IgZWFjaCBibG9jayBpbiB0dXJuLgorSW5zaWRl
IGVhY2ggYmxvY2ssIGl0IHJlYWRzIGFsbCB0aGUgTFNCcyBmb3IgZWFjaCBjb2VmZmljaWVudCBp
biB0dXJuLCBldmVuCisgdGhvc2Ugd2hlcmUgbm8gcHVsc2VzIHdlcmUgYWxsb2NhdGVkLCBiZWZv
cmUgcHJvY2VlZGluZyB0byB0aGUgbmV4dCBvbmUuCitGb3IgMTAmbmJzcDttcyBNQiBmcmFtZXMs
IGl0IHJlYWRzIExTQnMgZXZlbiBmb3IgdGhlIGV4dHJhIDgmbmJzcDtzYW1wbGVzIGluCisgdGhl
IGxhc3QgYmxvY2suCitUaGUgTFNCcyBhcmUgY29kZWQgZnJvbSBtb3N0IHNpZ25pZmljYW50IHRv
IGxlYXN0IHNpZ25pZmljYW50LCBhbmQgdGhleSBhbGwgdXNlCisgdGhlIFBERiBpbiA8eHJlZiB0
YXJnZXQ9InNpbGtfc2hlbGxfbHNiX3BkZiIvPi4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9
InNpbGtfc2hlbGxfbHNiX3BkZiIgdGl0bGU9IlBERiBmb3IgRXhjaXRhdGlvbiBMU0JzIj4KKzx0
dGNvbD5QREY8L3R0Y29sPgorPGM+ezEzNiwgMTIwfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKwor
PHQ+CitUaGUgbnVtYmVyIG9mIExTQnMgcmVhZCBmb3IgZWFjaCBjb2VmZmljaWVudCBpbiBhIGJs
b2NrIGlzIGRldGVybWluZWQgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtfcHVsc2VfY291bnRzIi8+
LgorVGhlIG1hZ25pdHVkZSBvZiB0aGUgY29lZmZpY2llbnQgaXMgaW5pdGlhbGx5IGVxdWFsIHRv
IHRoZSBudW1iZXIgb2YgcHVsc2VzCisgcGxhY2VkIGF0IHRoYXQgbG9jYXRpb24gaW4gPHhyZWYg
dGFyZ2V0PSJzaWxrX3B1bHNlX2xvY2F0aW9ucyIvPi4KK0FzIGVhY2ggTFNCIGlzIGRlY29kZWQs
IHRoZSBtYWduaXR1ZGUgaXMgZG91YmxlZCwgYW5kIHRoZW4gdGhlIHZhbHVlIG9mIHRoZSBMU0IK
KyBhZGRlZCB0byBpdCwgdG8gb2J0YWluIGFuIHVwZGF0ZWQgbWFnbml0dWRlLgorPC90PgorPC9z
ZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfc2lnbnMiIHRpdGxlPSJTaWduIERlY29k
aW5nIj4KKzx0PgorQWZ0ZXIgZGVjb2RpbmcgdGhlIHB1bHNlIGxvY2F0aW9ucyBhbmQgdGhlIExT
QnMsIHRoZSBkZWNvZGVyIGtub3dzIHRoZQorIG1hZ25pdHVkZSBvZiBlYWNoIGNvZWZmaWNpZW50
IGluIHRoZSBleGNpdGF0aW9uLgorSXQgdGhlbiBkZWNvZGVzIGEgc2lnbiBmb3IgYWxsIGNvZWZm
aWNpZW50cyB3aXRoIGEgbm9uLXplcm8gbWFnbml0dWRlLCB1c2luZworIG9uZSBvZiB0aGUgUERG
cyBmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19zaWduX3BkZnMiLz4uCitJZiB0aGUgdmFsdWUgZGVj
b2RlZCBpcyAwLCB0aGVuIHRoZSBjb2VmZmljaWVudCBtYWduaXR1ZGUgaXMgbmVnYXRlZC4KK090
aGVyd2lzZSwgaXQgcmVtYWlucyBwb3NpdGl2ZS4KKzwvdD4KKworPHQ+CitUaGUgZGVjb2RlciBj
aG9vc2VzIHRoZSBQREYgZm9yIHRoZSBzaWduIGJhc2VkIG9uIHRoZSBzaWduYWwgdHlwZSBhbmQK
KyBxdWFudGl6YXRpb24gb2Zmc2V0IHR5cGUgKGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1l
X3R5cGUiLz4pIGFuZCB0aGUKKyBudW1iZXIgb2YgcHVsc2VzIGluIHRoZSBibG9jayAoZnJvbSA8
eHJlZiB0YXJnZXQ9InNpbGtfcHVsc2VfY291bnRzIi8+KS4KK1RoZSBudW1iZXIgb2YgcHVsc2Vz
IGluIHRoZSBibG9jayBkb2VzIG5vdCB0YWtlIGludG8gYWNjb3VudCBhbnkgTFNCcy4KK01vc3Qg
UERGcyBhcmUgc2tld2VkIHRvd2FyZHMgbmVnYXRpdmUgc2lnbnMgYmVjYXVzZSBvZiB0aGUgcXVh
bnRpemF0aW9uIG9mZnNldCwKKyBidXQgdGhlIFBERnMgZm9yIHplcm8gcHVsc2VzIGFyZSBoaWdo
bHkgc2tld2VkIHRvd2FyZHMgcG9zaXRpdmUgc2lnbnMuCitJZiBhIGJsb2NrIGNvbnRhaW5zIG1h
bnkgcG9zaXRpdmUgY29lZmZpY2llbnRzLCBpdCBpcyBzb21ldGltZXMgYmVuZWZpY2lhbCB0bwor
IGNvZGUgaXQgc29sZWx5IHVzaW5nIExTQnMgKGkuZS4sIHdpdGggemVybyBwdWxzZXMpLCBzaW5j
ZSB0aGUgZW5jb2RlciBtYXkgYmUKKyBhYmxlIHRvIHNhdmUgZW5vdWdoIGJpdHMgb24gdGhlIHNp
Z25zIHRvIGp1c3RpZnkgdGhlIGxlc3MgZWZmaWNpZW50CisgY29lZmZpY2llbnQgbWFnbml0dWRl
IGVuY29kaW5nLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19zaWduX3BkZnMiCisg
dGl0bGU9IlBERnMgZm9yIEV4Y2l0YXRpb24gU2lnbnMiPgorPHR0Y29sPlNpZ25hbCBUeXBlPC90
dGNvbD4KKzx0dGNvbD5RdWFudGl6YXRpb24gT2Zmc2V0IFR5cGU8L3R0Y29sPgorPHR0Y29sPlB1
bHNlIENvdW50PC90dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29sPgorPGM+SW5hY3RpdmU8L2M+IDxj
PkxvdzwvYz4gIDxjPjA8L2M+ICAgICAgICAgPGM+ezIsIDI1NH0vMjU2PC9jPgorPGM+SW5hY3Rp
dmU8L2M+IDxjPkxvdzwvYz4gIDxjPjE8L2M+ICAgICAgICAgPGM+ezIwNywgNDl9LzI1NjwvYz4K
KzxjPkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4yPC9jPiAgICAgICAgIDxjPnsxODksIDY3
fS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+TG93PC9jPiAgPGM+MzwvYz4gICAgICAgICA8
Yz57MTc5LCA3N30vMjU2PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkxvdzwvYz4gIDxjPjQ8L2M+
ICAgICAgICAgPGM+ezE3NCwgODJ9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+
ICA8Yz41PC9jPiAgICAgICAgIDxjPnsxNjMsIDkzfS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4g
PGM+TG93PC9jPiAgPGM+NiBvciBtb3JlPC9jPiA8Yz57MTU3LCA5OX0vMjU2PC9jPgorPGM+SW5h
Y3RpdmU8L2M+IDxjPkhpZ2g8L2M+IDxjPjA8L2M+ICAgICAgICAgPGM+ezU4LCAxOTh9LzI1Njwv
Yz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5IaWdoPC9jPiA8Yz4xPC9jPiAgICAgICAgIDxjPnsyNDUs
IDExfS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+SGlnaDwvYz4gPGM+MjwvYz4gICAgICAg
ICA8Yz57MjM4LCAxOH0vMjU2PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkhpZ2g8L2M+IDxjPjM8
L2M+ICAgICAgICAgPGM+ezIzMiwgMjR9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5IaWdo
PC9jPiA8Yz40PC9jPiAgICAgICAgIDxjPnsyMjUsIDMxfS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwv
Yz4gPGM+SGlnaDwvYz4gPGM+NTwvYz4gICAgICAgICA8Yz57MjIwLCAzNn0vMjU2PC9jPgorPGM+
SW5hY3RpdmU8L2M+IDxjPkhpZ2g8L2M+IDxjPjYgb3IgbW9yZTwvYz4gPGM+ezIxMSwgNDV9LzI1
NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4wPC9jPiAgICAgICAgIDxjPnsx
LCAyNTV9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4xPC9jPiAgICAg
ICAgIDxjPnsyMTAsIDQ2fS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+TG93PC9jPiAgPGM+
MjwvYz4gICAgICAgICA8Yz57MTkwLCA2Nn0vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkxv
dzwvYz4gIDxjPjM8L2M+ICAgICAgICAgPGM+ezE3OCwgNzh9LzI1NjwvYz4KKzxjPlVudm9pY2Vk
PC9jPiA8Yz5Mb3c8L2M+ICA8Yz40PC9jPiAgICAgICAgIDxjPnsxNjksIDg3fS8yNTY8L2M+Cis8
Yz5VbnZvaWNlZDwvYz4gPGM+TG93PC9jPiAgPGM+NTwvYz4gICAgICAgICA8Yz57MTYyLCA5NH0v
MjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkxvdzwvYz4gIDxjPjYgb3IgbW9yZTwvYz4gPGM+
ezE1MiwgMTA0fS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+SGlnaDwvYz4gPGM+MDwvYz4g
ICAgICAgICA8Yz57NDgsIDIwOH0vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkhpZ2g8L2M+
IDxjPjE8L2M+ICAgICAgICAgPGM+ezI0MiwgMTR9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8
Yz5IaWdoPC9jPiA8Yz4yPC9jPiAgICAgICAgIDxjPnsyMzUsIDIxfS8yNTY8L2M+Cis8Yz5VbnZv
aWNlZDwvYz4gPGM+SGlnaDwvYz4gPGM+MzwvYz4gICAgICAgICA8Yz57MjI0LCAzMn0vMjU2PC9j
PgorPGM+VW52b2ljZWQ8L2M+IDxjPkhpZ2g8L2M+IDxjPjQ8L2M+ICAgICAgICAgPGM+ezIxNCwg
NDJ9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5IaWdoPC9jPiA8Yz41PC9jPiAgICAgICAg
IDxjPnsyMDUsIDUxfS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+SGlnaDwvYz4gPGM+NiBv
ciBtb3JlPC9jPiA8Yz57MTkwLCA2Nn0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkxvdzwv
Yz4gIDxjPjA8L2M+ICAgICAgICAgPGM+ezEsIDI1NX0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAg
IDxjPkxvdzwvYz4gIDxjPjE8L2M+ICAgICAgICAgPGM+ezE2MiwgOTR9LzI1NjwvYz4KKzxjPlZv
aWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICA8Yz4yPC9jPiAgICAgICAgIDxjPnsxNTIsIDEwNH0vMjU2
PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkxvdzwvYz4gIDxjPjM8L2M+ICAgICAgICAgPGM+ezE0
NywgMTA5fS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+TG93PC9jPiAgPGM+NDwvYz4gICAg
ICAgICA8Yz57MTQ0LCAxMTJ9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICA8
Yz41PC9jPiAgICAgICAgIDxjPnsxNDEsIDExNX0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxj
PkxvdzwvYz4gIDxjPjYgb3IgbW9yZTwvYz4gPGM+ezEzOCwgMTE4fS8yNTY8L2M+Cis8Yz5Wb2lj
ZWQ8L2M+ICAgPGM+SGlnaDwvYz4gPGM+MDwvYz4gICAgICAgICA8Yz57OCwgMjQ4fS8yNTY8L2M+
Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+SGlnaDwvYz4gPGM+MTwvYz4gICAgICAgICA8Yz57MjAzLCA1
M30vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+IDxjPjI8L2M+ICAgICAgICAg
PGM+ezE4NywgNjl9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5IaWdoPC9jPiA8Yz4zPC9j
PiAgICAgICAgIDxjPnsxNzYsIDgwfS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+SGlnaDwv
Yz4gPGM+NDwvYz4gICAgICAgICA8Yz57MTY4LCA4OH0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAg
IDxjPkhpZ2g8L2M+IDxjPjU8L2M+ICAgICAgICAgPGM+ezE2MSwgOTV9LzI1NjwvYz4KKzxjPlZv
aWNlZDwvYz4gICA8Yz5IaWdoPC9jPiA8Yz42IG9yIG1vcmU8L2M+IDxjPnsxNTQsIDEwMn0vMjU2
PC9jPgorPC90ZXh0dGFibGU+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxr
X2V4Y2l0YXRpb25fcmVjb25zdHJ1Y3Rpb24iCisgdGl0bGU9IlJlY29uc3RydWN0aW5nIHRoZSBF
eGNpdGF0aW9uIj4KKworPHQ+CitBZnRlciB0aGUgc2lnbnMgaGF2ZSBiZWVuIHJlYWQsIHRoZXJl
IGlzIGVub3VnaCBpbmZvcm1hdGlvbiB0byByZWNvbnN0cnVjdCB0aGUKKyBjb21wbGV0ZSBleGNp
dGF0aW9uIHNpZ25hbC4KK1RoaXMgcmVxdWlyZXMgYWRkaW5nIGEgY29uc3RhbnQgcXVhbnRpemF0
aW9uIG9mZnNldCB0byBlYWNoIG5vbi16ZXJvIHNhbXBsZSwKKyBhbmQgdGhlbiBwc2V1ZG9yYW5k
b21seSBpbnZlcnRpbmcgYW5kIG9mZnNldHRpbmcgZXZlcnkgc2FtcGxlLgorVGhlIGNvbnN0YW50
IHF1YW50aXphdGlvbiBvZmZzZXQgdmFyaWVzIGRlcGVuZGluZyBvbiB0aGUgc2lnbmFsIHR5cGUg
YW5kCisgcXVhbnRpemF0aW9uIG9mZnNldCB0eXBlIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2Zy
YW1lX3R5cGUiLz4pLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19xdWFudGl6YXRp
b25fb2Zmc2V0cyIKKyB0aXRsZT0iRXhjaXRhdGlvbiBRdWFudGl6YXRpb24gT2Zmc2V0cyI+Cis8
dHRjb2wgYWxpZ249ImxlZnQiPlNpZ25hbCBUeXBlPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0ibGVm
dCI+UXVhbnRpemF0aW9uIE9mZnNldCBUeXBlPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQi
PlF1YW50aXphdGlvbiBPZmZzZXQgKFEyMyk8L3R0Y29sPgorPGM+SW5hY3RpdmU8L2M+IDxjPkxv
dzwvYz4gIDxjPjI1PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkhpZ2g8L2M+IDxjPjYwPC9jPgor
PGM+VW52b2ljZWQ8L2M+IDxjPkxvdzwvYz4gIDxjPjI1PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxj
PkhpZ2g8L2M+IDxjPjYwPC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkxvdzwvYz4gICA8Yz44PC9j
PgorPGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+IDxjPjI1PC9jPgorPC90ZXh0dGFibGU+CisK
Kzx0PgorTGV0IGVfcmF3W2ldIGJlIHRoZSByYXcgZXhjaXRhdGlvbiB2YWx1ZSBhdCBwb3NpdGlv
biBpLCB3aXRoIGEgbWFnbml0dWRlCisgY29tcG9zZWQgb2YgdGhlIHB1bHNlcyBhdCB0aGF0IGxv
Y2F0aW9uIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNpbGtfcHVsc2VfbG9jYXRpb25zIi8+KSBjb21i
aW5lZCB3aXRoIGFueSBhZGRpdGlvbmFsIExTQnMgKHNlZQorIDx4cmVmIHRhcmdldD0ic2lsa19z
aGVsbF9sc2IiLz4pLCBhbmQgd2l0aCB0aGUgY29ycmVzcG9uZGluZyBzaWduIGRlY29kZWQgaW4K
KyA8eHJlZiB0YXJnZXQ9InNpbGtfc2lnbnMiLz4uCitBZGRpdGlvbmFsbHksIGxldCBzZWVkIGJl
IHRoZSBjdXJyZW50IHBzZXVkb3JhbmRvbSBzZWVkLCB3aGljaCBpcyBpbml0aWFsaXplZAorIHRv
IHRoZSB2YWx1ZSBkZWNvZGVkIGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxrX3NlZWQiLz4gZm9yIHRo
ZSBmaXJzdCBzYW1wbGUgaW4KKyB0aGUgY3VycmVudCBTSUxLIGZyYW1lLCBhbmQgdXBkYXRlZCBm
b3IgZWFjaCBzdWJzZXF1ZW50IHNhbXBsZSBhY2NvcmRpbmcgdG8KKyB0aGUgcHJvY2VkdXJlIGJl
bG93LgorRmluYWxseSwgbGV0IG9mZnNldF9RMjMgYmUgdGhlIHF1YW50aXphdGlvbiBvZmZzZXQg
ZnJvbQorIDx4cmVmIHRhcmdldD0ic2lsa19xdWFudGl6YXRpb25fb2Zmc2V0cyIvPi4KK1RoZW4g
dGhlIGZvbGxvd2luZyBwcm9jZWR1cmUgcHJvZHVjZXMgdGhlIGZpbmFsIHJlY29uc3RydWN0ZWQg
ZXhjaXRhdGlvbiB2YWx1ZSwKKyBlX1EyM1tpXToKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8
YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2VfUTIzW2ldID0gKGVfcmF3W2ldIDw8
IDgpIC0gc2lnbihlX3Jhd1tpXSkqMjAgKyBvZmZzZXRfUTIzOworICAgIHNlZWQgPSAoMTk2MzE0
MTY1KnNlZWQgKyA5MDc2MzM1MTUpICYgMHhGRkZGRkZGRjsKK2VfUTIzW2ldID0gKHNlZWQgJiAw
eDgwMDAwMDAwKSA/IC1lX1EyM1tpXSA6IGVfUTIzW2ldOworICAgIHNlZWQgPSAoc2VlZCArIGVf
cmF3W2ldKSAmIDB4RkZGRkZGRkY7CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1doZW4gZV9y
YXdbaV0gaXMgemVybywgc2lnbigpIHJldHVybnMgMCBieSB0aGUgZGVmaW5pdGlvbiBpbgorIDx4
cmVmIHRhcmdldD0ic2lnbiIvPiwgc28gdGhlIGZhY3RvciBvZiAyMCBkb2VzIG5vdCBnZXQgYWRk
ZWQuCitUaGUgZmluYWwgZV9RMjNbaV0gdmFsdWUgbWF5IHJlcXVpcmUgbW9yZSB0aGFuIDE2IGJp
dHMgcGVyIHNhbXBsZSwgYnV0IHdpbGwgbm90CisgcmVxdWlyZSBtb3JlIHRoYW4gMjMsIGluY2x1
ZGluZyB0aGUgc2lnbi4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0
aW9uIGFuY2hvcj0ic2lsa19mcmFtZV9yZWNvbnN0cnVjdGlvbiIgdG9jPSJpbmNsdWRlIgorIHRp
dGxlPSJTSUxLIEZyYW1lIFJlY29uc3RydWN0aW9uIj4KKworPHQ+CitUaGUgcmVtYWluZGVyIG9m
IHRoZSByZWNvbnN0cnVjdGlvbiBwcm9jZXNzIGZvciB0aGUgZnJhbWUgZG9lcyBub3QgbmVlZCB0
byBiZQorIGJpdC1leGFjdCwgYXMgc21hbGwgZXJyb3JzIHNob3VsZCBvbmx5IGludHJvZHVjZSBw
cm9wb3J0aW9uYWxseSBzbWFsbAorIGRpc3RvcnRpb25zLgorQWx0aG91Z2ggdGhlIHJlZmVyZW5j
ZSBpbXBsZW1lbnRhdGlvbiBvbmx5IGluY2x1ZGVzIGEgZml4ZWQtcG9pbnQgdmVyc2lvbiBvZgor
IHRoZSByZW1haW5pbmcgc3RlcHMsIHRoaXMgc2VjdGlvbiBkZXNjcmliZXMgdGhlbSBpbiB0ZXJt
cyBvZiBhIGZsb2F0aW5nLXBvaW50CisgdmVyc2lvbiBmb3Igc2ltcGxpY2l0eS4KK1RoaXMgcHJv
ZHVjZXMgYSBzaWduYWwgd2l0aCBhIG5vbWluYWwgcmFuZ2Ugb2YgLTEuMCB0byAxLjAuCis8L3Q+
CisKKzx0Pgorc2lsa19kZWNvZGVfY29yZSgpIChkZWNvZGVfY29yZS5jKSBjb250YWlucyB0aGUg
Y29kZSBmb3IgdGhlIG1haW4KKyByZWNvbnN0cnVjdGlvbiBwcm9jZXNzLgorSXQgcHJvY2VlZHMg
c3ViZnJhbWUtYnktc3ViZnJhbWUsIHNpbmNlIHF1YW50aXphdGlvbiBnYWlucywgTFRQIHBhcmFt
ZXRlcnMsIGFuZAorIChpbiAyMCZuYnNwO21zIFNJTEsgZnJhbWVzKSBMUEMgY29lZmZpY2llbnRz
IGNhbiB2YXJ5IGZyb20gb25lIHRvIHRoZQorIG5leHQuCis8L3Q+CisKKzx0PgorTGV0IGFfUTEy
W2tdIGJlIHRoZSBMUEMgY29lZmZpY2llbnRzIGZvciB0aGUgY3VycmVudCBzdWJmcmFtZS4KK0lm
IHRoaXMgaXMgdGhlIGZpcnN0IG9yIHNlY29uZCBzdWJmcmFtZSBvZiBhIDIwJm5ic3A7bXMgU0lM
SyBmcmFtZSBhbmQgdGhlIExTRgorIGludGVycG9sYXRpb24gZmFjdG9yLCB3X1EyIChzZWUgPHhy
ZWYgdGFyZ2V0PSJzaWxrX25sc2ZfaW50ZXJwb2xhdGlvbiIvPiksIGlzCisgbGVzcyB0aGFuIDQs
IHRoZW4gdGhlc2UgY29ycmVzcG9uZCB0byB0aGUgZmluYWwgTFBDIGNvZWZmaWNpZW50cyBwcm9k
dWNlZCBieQorIDx4cmVmIHRhcmdldD0ic2lsa19scGNfZ2Fpbl9saW1pdCIvPiBmcm9tIHRoZSBp
bnRlcnBvbGF0ZWQgTFNGIGNvZWZmaWNpZW50cywKKyBuMV9RMTVba10gKGNvbXB1dGVkIGluIDx4
cmVmIHRhcmdldD0ic2lsa19ubHNmX2ludGVycG9sYXRpb24iLz4pLgorT3RoZXJ3aXNlLCB0aGV5
IGNvcnJlc3BvbmQgdG8gdGhlIGZpbmFsIExQQyBjb2VmZmljaWVudHMgcHJvZHVjZWQgZnJvbSB0
aGUKKyB1bmludGVycG9sYXRlZCBMU0YgY29lZmZpY2llbnRzIGZvciB0aGUgY3VycmVudCBmcmFt
ZSwgbjJfUTE1W2tdLgorPC90PgorCis8dD4KK0Fsc28sIGxldCBuIGJlIHRoZSBudW1iZXIgb2Yg
c2FtcGxlcyBpbiBhIHN1YmZyYW1lICg0MCBmb3IgTkIsIDYwIGZvciBNQiwgYW5kCisgODAgZm9y
IFdCKSwgcyBiZSB0aGUgaW5kZXggb2YgdGhlIGN1cnJlbnQgc3ViZnJhbWUgaW4gdGhpcyBTSUxL
IGZyYW1lICgwIG9yIDEKKyBmb3IgMTAmbmJzcDttcyBmcmFtZXMsIG9yIDAgdG8gMyBmb3IgMjAm
bmJzcDttcyBmcmFtZXMpLCBhbmQgaiBiZSB0aGUgaW5kZXggb2YKKyB0aGUgZmlyc3Qgc2FtcGxl
IGluIHRoZSByZXNpZHVhbCBjb3JyZXNwb25kaW5nIHRvIHRoZSBjdXJyZW50IHN1YmZyYW1lLgor
PC90PgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbHRwX3N5bnRoZXNpcyIgdGl0bGU9IkxUUCBT
eW50aGVzaXMiPgorPHQ+CitWb2ljZWQgU0lMSyBmcmFtZXMgKHNlZSA8eHJlZiB0YXJnZXQ9InNp
bGtfZnJhbWVfdHlwZSIvPikgcGFzcyB0aGUgZXhjaXRhdGlvbgorIHRocm91Z2ggYW4gTFRQIGZp
bHRlciB1c2luZyB0aGUgcGFyYW1ldGVycyBkZWNvZGVkIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxr
X2x0cF9wYXJhbXMiLz4gdG8gcHJvZHVjZSBhbiBMUEMgcmVzaWR1YWwuCitUaGUgTFRQIGZpbHRl
ciByZXF1aXJlcyBMUEMgcmVzaWR1YWwgdmFsdWVzIGZyb20gYmVmb3JlIHRoZSBjdXJyZW50IHN1
YmZyYW1lIGFzCisgaW5wdXQuCitIb3dldmVyLCBzaW5jZSB0aGUgTFBDIGNvZWZmaWNpZW50cyBt
YXkgaGF2ZSBjaGFuZ2VkLCBpdCBvYnRhaW5zIHRoaXMgcmVzaWR1YWwKKyBieSAicmV3aGl0ZW5p
bmciIHRoZSBjb3JyZXNwb25kaW5nIG91dHB1dCBzaWduYWwgdXNpbmcgdGhlIExQQyBjb2VmZmlj
aWVudHMKKyBmcm9tIHRoZSBjdXJyZW50IHN1YmZyYW1lLgorTGV0IG91dFtpXSBmb3IKKyAoaiZu
YnNwOy0mbmJzcDtwaXRjaF9sYWdzW3NdJm5ic3A7LSZuYnNwO2RfTFBDJm5ic3A7LSZuYnNwOzIp
Jm5ic3A7Jmx0Oz0mbmJzcDtpJm5ic3A7Jmx0OyZuYnNwO2oKKyBiZSB0aGUgZnVsbHkgcmVjb25z
dHJ1Y3RlZCBvdXRwdXQgc2lnbmFsIGZyb20gdGhlIGxhc3QKKyAocGl0Y2hfbGFnc1tzXSZuYnNw
OysmbmJzcDtkX0xQQyZuYnNwOysmbmJzcDsyKSBzYW1wbGVzIG9mIHByZXZpb3VzIHN1YmZyYW1l
cworIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2xwY19zeW50aGVzaXMiLz4pLCB3aGVyZSBwaXRj
aF9sYWdzW3NdIGlzIHRoZSBwaXRjaAorIGxhZyBmb3IgdGhlIGN1cnJlbnQgc3ViZnJhbWUgZnJv
bSA8eHJlZiB0YXJnZXQ9InNpbGtfbHRwX2xhZ3MiLz4uCitEdXJpbmcgcmVjb25zdHJ1Y3Rpb24g
b2YgdGhlIGZpcnN0IHN1YmZyYW1lIGZvciB0aGlzIGNoYW5uZWwgYWZ0ZXIgZWl0aGVyCis8bGlz
dCBzdHlsZT0ic3ltYm9scyI+Cis8dD5BbiB1bmNvZGVkIHJlZ3VsYXIgU0lMSyBmcmFtZSAoaWYg
dGhpcyBpcyB0aGUgc2lkZSBjaGFubmVsKSwgb3I8L3Q+Cis8dD5BIGRlY29kZXIgcmVzZXQgKHNl
ZSA8eHJlZiB0YXJnZXQ9ImRlY29kZXItcmVzZXQiLz4pLDwvdD4KKzwvbGlzdD4KKyBvdXRbXSBp
cyByZXdoaXRlbmVkIGludG8gYW4gTFBDIHJlc2lkdWFsLAorIHJlc1tpXSwgdmlhCis8ZmlndXJl
IGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAg
ICAgICA0LjAqTFRQX3NjYWxlX1ExNAorcmVzW2ldID0gLS0tLS0tLS0tLS0tLS0tLS0gKiBjbGFt
cCgtMS4wLAorICAgICAgICAgICAgZ2Fpbl9RMTZbc10KKworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBkX0xQQy0xCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgX18gICAgICAgICAgICAgIGFfUTEyW2tdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
b3V0W2ldIC0gXCAgb3V0W2ktay0xXSAqIC0tLS0tLS0tLCAxLjApIC4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvXyAgICAgICAgICAgICAgIDQwOTYuMAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGs9MAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+
CitUaGlzIHJlcXVpcmVzIHN0b3JhZ2UgdG8gYnVmZmVyIHVwIHRvIDMwNiB2YWx1ZXMgb2Ygb3V0
W2ldIGZyb20gcHJldmlvdXMKKyBzdWJmcmFtZXMuCitUaGlzIGNvcnJlc3BvbmRzIHRvIFdCIHdp
dGggYSBtYXhpbXVtIHBpdGNoIGxhZyBvZgorIDE4Jm5ic3A7bXMmbmJzcDsqJm5ic3A7MTYmbmJz
cDtrSHogc2FtcGxlcywgcGx1cyAxNiBzYW1wbGVzIGZvciBkX0xQQywgcGx1cyAyCisgc2FtcGxl
cyBmb3IgdGhlIHdpZHRoIG9mIHRoZSBMVFAgZmlsdGVyLgorPC90PgorCis8dD4KK0xldCBlX1Ey
M1tpXSBmb3IgaiZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsmbmJzcDsoaiZuYnNwOysmbmJz
cDtuKSBiZSB0aGUKKyBleGNpdGF0aW9uIGZvciB0aGUgY3VycmVudCBzdWJmcmFtZSwgYW5kIGJf
UTdba10gZm9yCisgMCZuYnNwOyZsdDs9Jm5ic3A7ayZuYnNwOyZsdDsmbmJzcDs1IGJlIHRoZSBj
b2VmZmljaWVudHMgb2YgdGhlIExUUCBmaWx0ZXIKKyB0YWtlbiBmcm9tIHRoZSBjb2RlYm9vayBl
bnRyeSBpbiBvbmUgb2YKKyBUYWJsZXMmbmJzcDs8eHJlZiBmb3JtYXQ9ImNvdW50ZXIiIHRhcmdl
dD0ic2lsa19sdHBfZmlsdGVyX2NvZWZmczAiLz4KKyB0aHJvdWdoJm5ic3A7PHhyZWYgZm9ybWF0
PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfbHRwX2ZpbHRlcl9jb2VmZnMyIi8+CisgY29ycmVzcG9u
ZGluZyB0byB0aGUgaW5kZXggZGVjb2RlZCBmb3IgdGhlIGN1cnJlbnQgc3ViZnJhbWUgaW4KKyA8
eHJlZiB0YXJnZXQ9InNpbGtfbHRwX2ZpbHRlciIvPi4KK1RoZW4gZm9yIGkgc3VjaCB0aGF0IGom
bmJzcDsmbHQ7PSZuYnNwO2kmbmJzcDsmbHQ7Jm5ic3A7KGombmJzcDsrJm5ic3A7biksCisgdGhl
IExQQyByZXNpZHVhbCBpcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWdu
PSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgICAgICAgICAgIDQKKyAgICAgICAgICBl
X1EyM1tpXSAgIF9fICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJfUTdba10KK3Jl
c1tpXSA9IC0tLS0tLS0tLSArIFwgIHJlc1tpIC0gcGl0Y2hfbGFnc1tzXSArIDIgLSBrXSAqIC0t
LS0tLS0gLgorICAgICAgICAgIDIuMCoqMjMgICAgL18gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDEyOC4wCisgICAgICAgICAgICAgICAgICAgICBrPTAKK11dPjwvYXJ0d29yaz4K
KzwvZmlndXJlPgorPC90PgorCis8dD4KK0ZvciB1bnZvaWNlZCBmcmFtZXMsIHRoZSBMUEMgcmVz
aWR1YWwgZm9yCisgaiZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsmbmJzcDsoaiZuYnNwOysm
bmJzcDtuKSBpcyBzaW1wbHkgYSBub3JtYWxpemVkCisgY29weSBvZiB0aGUgZXhjaXRhdGlvbiBz
aWduYWwsIGkuZS4sCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNl
bnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgZV9RMjNbaV0KK3Jlc1tpXSA9IC0tLS0tLS0tLQor
ICAgICAgICAgIDIuMCoqMjMKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorPC9zZWN0
aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbHBjX3N5bnRoZXNpcyIgdGl0bGU9IkxQQyBT
eW50aGVzaXMiPgorPHQ+CitMUEMgc3ludGhlc2lzIHVzZXMgdGhlIHNob3J0LXRlcm0gTFBDIGZp
bHRlciB0byBwcmVkaWN0IHRoZSBuZXh0IG91dHB1dAorIGNvZWZmaWNpZW50LgorRm9yIGkgc3Vj
aCB0aGF0IChqJm5ic3A7LSZuYnNwO2RfTFBDKSZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsm
bmJzcDtqLCBsZXQKKyBscGNbaV0gYmUgdGhlIHJlc3VsdCBvZiBMUEMgc3ludGhlc2lzIGZyb20g
dGhlIGxhc3QgZF9MUEMgc2FtcGxlcyBvZiB0aGUKKyBwcmV2aW91cyBzdWJmcmFtZSwgb3IgemVy
b3MgaW4gdGhlIGZpcnN0IHN1YmZyYW1lIGZvciB0aGlzIGNoYW5uZWwgYWZ0ZXIKKyBlaXRoZXIK
KzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PkFuIHVuY29kZWQgcmVndWxhciBTSUxLIGZyYW1l
IChpZiB0aGlzIGlzIHRoZSBzaWRlIGNoYW5uZWwpLCBvcjwvdD4KKzx0PkEgZGVjb2RlciByZXNl
dCAoc2VlIDx4cmVmIHRhcmdldD0iZGVjb2Rlci1yZXNldCIvPikuPC90PgorPC9saXN0PgorVGhl
biBmb3IgaSBzdWNoIHRoYXQgaiZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsmbmJzcDsoaiZu
YnNwOysmbmJzcDtuKSwgdGhlCisgcmVzdWx0IG9mIExQQyBzeW50aGVzaXMgZm9yIHRoZSBjdXJy
ZW50IHN1YmZyYW1lIGlzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkX0xQQy0x
CisgICAgICAgICBnYWluX1ExNltpXSAgICAgICAgICAgIF9fICAgICAgICAgICAgICBhX1ExMltr
XQorbHBjW2ldID0gLS0tLS0tLS0tLS0gKiByZXNbaV0gKyBcICBscGNbaS1rLTFdICogLS0tLS0t
LS0gLgorICAgICAgICAgICA2NTUzNi4wICAgICAgICAgICAgICAvXyAgICAgICAgICAgICAgIDQw
OTYuMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrPTAKK11dPjwvYXJ0d29yaz4K
KzwvZmlndXJlPgorVGhlIGRlY29kZXIgc2F2ZXMgdGhlIGZpbmFsIGRfTFBDIHZhbHVlcywgaS5l
LiwgbHBjW2ldIHN1Y2ggdGhhdAorIChqJm5ic3A7KyZuYnNwO24mbmJzcDstJm5ic3A7ZF9MUEMp
Jm5ic3A7Jmx0Oz0mbmJzcDtpJm5ic3A7Jmx0OyZuYnNwOyhqJm5ic3A7KyZuYnNwO24pLAorIHRv
IGZlZWQgaW50byB0aGUgTFBDIHN5bnRoZXNpcyBvZiB0aGUgbmV4dCBzdWJmcmFtZS4KK1RoaXMg
cmVxdWlyZXMgc3RvcmFnZSBmb3IgdXAgdG8gMTYgdmFsdWVzIG9mIGxwY1tpXSAoZm9yIFdCIGZy
YW1lcykuCis8L3Q+CisKKzx0PgorVGhlbiwgdGhlIHNpZ25hbCBpcyBjbGFtcGVkIGludG8gdGhl
IGZpbmFsIG5vbWluYWwgcmFuZ2U6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsg
YWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitvdXRbaV0gPSBjbGFtcCgtMS4wLCBscGNbaV0sIDEu
MCkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGlzIGNsYW1waW5nIG9jY3VycyBlbnRp
cmVseSBhZnRlciB0aGUgTFBDIHN5bnRoZXNpcyBmaWx0ZXIgaGFzIHJ1bi4KK1RoZSBkZWNvZGVy
IHNhdmVzIHRoZSB1bmNsYW1wZWQgdmFsdWVzLCBscGNbaV0sIHRvIGZlZWQgaW50byB0aGUgTFBD
IGZpbHRlciBmb3IKKyB0aGUgbmV4dCBzdWJmcmFtZSwgYnV0IHNhdmVzIHRoZSBjbGFtcGVkIHZh
bHVlcywgb3V0W2ldLCBmb3IgcmV3aGl0ZW5pbmcgaW4KKyB2b2ljZWQgZnJhbWVzLgorPC90Pgor
PC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9y
PSJzaWxrX3N0ZXJlb191bm1peGluZyIgdGl0bGU9IlN0ZXJlbyBVbm1peGluZyI+Cis8dD4KK0Zv
ciBzdGVyZW8gc3RyZWFtcywgYWZ0ZXIgZGVjb2RpbmcgYSBmcmFtZSBmcm9tIGVhY2ggY2hhbm5l
bCwgdGhlIGRlY29kZXIgbXVzdAorIGNvbnZlcnQgdGhlIG1pZC1zaWRlIChNUykgcmVwcmVzZW50
YXRpb24gaW50byBhIGxlZnQtcmlnaHQgKExSKQorIHJlcHJlc2VudGF0aW9uLgorVGhlIGZ1bmN0
aW9uIHNpbGtfc3RlcmVvX01TX3RvX0xSIChzdGVyZW9fTVNfdG9fTFIuYykgaW1wbGVtZW50cyB0
aGlzIHByb2Nlc3MuCitJbiBpdCwgdGhlIGRlY29kZXIgcHJlZGljdHMgdGhlIHNpZGUgY2hhbm5l
bCB1c2luZyBhKSBhIHNpbXBsZSBsb3ctcGFzc2VkCisgdmVyc2lvbiBvZiB0aGUgbWlkIGNoYW5u
ZWwsIGFuZCBiKSB0aGUgdW5maWx0ZXJlZCBtaWQgY2hhbm5lbCwgdXNpbmcgdGhlCisgcHJlZGlj
dGlvbiB3ZWlnaHRzIGRlY29kZWQgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX3N0ZXJlb19wcmVkIi8+
LgorVGhpcyBzaW1wbGUgbG93LXBhc3MgZmlsdGVyIGltcG9zZXMgYSBvbmUtc2FtcGxlIGRlbGF5
LCBhbmQgdGhlIHVuZmlsdGVyZWQKK21pZCBjaGFubmVsIGlzIGFsc28gZGVsYXllZCBieSBvbmUg
c2FtcGxlLgorSW4gb3JkZXIgdG8gYWxsb3cgc2VhbWxlc3Mgc3dpdGNoaW5nIGJldHdlZW4gc3Rl
cmVvIGFuZCBtb25vLCBtb25vIHN0cmVhbXMgbXVzdAorIGFsc28gaW1wb3NlIHRoZSBzYW1lIG9u
ZS1zYW1wbGUgZGVsYXkuCitUaGUgZW5jb2RlciByZXF1aXJlcyBhbiBhZGRpdGlvbmFsIG9uZS1z
YW1wbGUgZGVsYXkgZm9yIGJvdGggbW9ubyBhbmQgc3RlcmVvCisgc3RyZWFtcywgdGhvdWdoIGFu
IGVuY29kZXIgbWF5IG9taXQgdGhlIGRlbGF5IGZvciBtb25vIGlmIGl0IGtub3dzIGl0IHdpbGwK
KyBuZXZlciBzd2l0Y2ggdG8gc3RlcmVvLgorPC90PgorCis8dD4KK1RoZSB1bm1peGluZyBwcm9j
ZXNzIG9wZXJhdGVzIGluIHR3byBwaGFzZXMuCitUaGUgZmlyc3QgcGhhc2UgbGFzdHMgZm9yIDgm
bmJzcDttcywgZHVyaW5nIHdoaWNoIGl0IGludGVycG9sYXRlcyB0aGUKKyBwcmVkaWN0aW9uIHdl
aWdodHMgZnJvbSB0aGUgcHJldmlvdXMgZnJhbWUsIHByZXZfdzBfUTEzIGFuZCBwcmV2X3cxX1Ex
MywgdG8KKyB0aGUgdmFsdWVzIGZvciB0aGUgY3VycmVudCBmcmFtZSwgdzBfUTEzIGFuZCB3MV9R
MTMuCitUaGUgc2Vjb25kIHBoYXNlIHNpbXBseSB1c2VzIHRoZXNlIHdlaWdodHMgZm9yIHRoZSBy
ZW1haW5kZXIgb2YgdGhlIGZyYW1lLgorPC90PgorCis8dD4KK0xldCBtaWRbaV0gYW5kIHNpZGVb
aV0gYmUgdGhlIGNvbnRlbnRzIG9mIG91dFtpXSAoZnJvbQorIDx4cmVmIHRhcmdldD0ic2lsa19s
cGNfc3ludGhlc2lzIi8+KSBmb3IgdGhlIGN1cnJlbnQgbWlkIGFuZCBzaWRlIGNoYW5uZWxzLAor
IHJlc3BlY3RpdmVseSwgYW5kIGxldCBsZWZ0W2ldIGFuZCByaWdodFtpXSBiZSB0aGUgY29ycmVz
cG9uZGluZyBzdGVyZW8gb3V0cHV0CisgY2hhbm5lbHMuCitJZiB0aGUgc2lkZSBjaGFubmVsIGlz
IG5vdCBjb2RlZCAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19taWRfb25seV9mbGFnIi8+KSwKKyB0
aGVuIHNpZGVbaV0gaXMgc2V0IHRvIHplcm8uCitBbHNvIGxldCBqIGJlIGRlZmluZWQgYXMgaW4g
PHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3JlY29uc3RydWN0aW9uIi8+LCBuMSBiZQorIHRoZSBu
dW1iZXIgb2Ygc2FtcGxlcyBpbiBwaGFzZSZuYnNwOzEgKDY0IGZvciBOQiwgOTYgZm9yIE1CLCBh
bmQgMTI4IGZvciBXQiksCisgYW5kIG4yIGJlIHRoZSB0b3RhbCBudW1iZXIgb2Ygc2FtcGxlcyBp
biB0aGUgZnJhbWUuCitUaGVuIGZvciBpIHN1Y2ggdGhhdCBqJm5ic3A7Jmx0Oz0mbmJzcDtpJm5i
c3A7Jmx0OyZuYnNwOyhqJm5ic3A7KyZuYnNwO24yKSwKKyB0aGUgbGVmdCBhbmQgcmlnaHQgY2hh
bm5lbCBvdXRwdXQgaXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0i
Y2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgcHJldl93MF9RMTMgICAgICAgICAgICAg
ICAgICAodzBfUTEzIC0gcHJldl93MF9RMTMpCisgICAgICAgIHcwID0gIC0tLS0tLS0tLS0tICsg
bWluKGkgLSBqLCBuMSkqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAsCisgICAgICAgICAgICAgICAg
ODE5Mi4wICAgICAgICAgICAgICAgICAgICAgICAgICAgODE5Mi4wKm4xCisKKyAgICAgICAgICAg
ICAgcHJldl93MV9RMTMgICAgICAgICAgICAgICAgICAodzFfUTEzIC0gcHJldl93MV9RMTMpCisg
ICAgICAgIHcxID0gIC0tLS0tLS0tLS0tICsgbWluKGkgLSBqLCBuMSkqLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSAsCisgICAgICAgICAgICAgICAgODE5Mi4wICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDgxOTIuMCpuMQorCisgICAgICAgICAgICAgbWlkW2ktMl0gKyAyKm1pZFtpLTFdICsgbWlk
W2ldCisgICAgICAgIHAwID0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgNC4wCisKKyBsZWZ0W2ldID0gY2xhbXAoLTEuMCwgKDEgKyB3
MSkqbWlkW2ktMV0gKyBzaWRlW2ktMV0gKyB3MCpwMCwgMS4wKSAsCisKK3JpZ2h0W2ldID0gY2xh
bXAoLTEuMCwgKDEgLSB3MSkqbWlkW2ktMV0gLSBzaWRlW2ktMV0gLSB3MCpwMCwgMS4wKSAuCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZXNlIGZvcm11bGFzIHJlcXVpcmUgdHdvIHNhbXBs
ZXMgcHJpb3IgdG8gaW5kZXgmbmJzcDtqLCB0aGUgc3RhcnQgb2YgdGhlCisgZnJhbWUsIGZvciB0
aGUgbWlkIGNoYW5uZWwsIGFuZCBvbmUgcHJpb3Igc2FtcGxlIGZvciB0aGUgc2lkZSBjaGFubmVs
LgorRm9yIHRoZSBmaXJzdCBmcmFtZSBhZnRlciBhIGRlY29kZXIgcmVzZXQsIHplcm9zIGFyZSB1
c2VkIGluc3RlYWQuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IlJlc2Ft
cGxpbmciPgorPHQ+CitBZnRlciBzdGVyZW8gdW5taXhpbmcgKGlmIGFueSksIHRoZSBkZWNvZGVy
IGFwcGxpZXMgcmVzYW1wbGluZyB0byBjb252ZXJ0IHRoZQorIGRlY29kZWQgU0lMSyBvdXRwdXQg
dG8gdGhlIHNhbXBsZSByYXRlIGRlc2lyZWQgYnkgdGhlIGFwcGxpY2F0aW9uLgorVGhpcyBpcyBu
ZWNlc3Nhcnkgd2hlbiBkZWNvZGluZyBhIEh5YnJpZCBmcmFtZSBhdCBTV0Igb3IgRkIgc2FtcGxl
IHJhdGVzLCBvcgorIHdoZW5ldmVyIHRoZSBkZWNvZGVyIHdhbnRzIHRoZSBvdXRwdXQgYXQgYSBk
aWZmZXJlbnQgc2FtcGxlIHJhdGUgdGhhbiB0aGUKKyBpbnRlcm5hbCBTSUxLIHNhbXBsaW5nIHJh
dGUgKGUuZy4sIHRvIGFsbG93IGEgY29uc3RhbnQgc2FtcGxlIHJhdGUgd2hlbiB0aGUKKyBhdWRp
byBiYW5kd2lkdGggY2hhbmdlcywgb3IgdG8gYWxsb3cgbWl4aW5nIHdpdGggYXVkaW8gZnJvbSBv
dGhlcgorIGFwcGxpY2F0aW9ucykuCitUaGUgcmVzYW1wbGVyIGl0c2VsZiBpcyBub24tbm9ybWF0
aXZlLCBhbmQgYSBkZWNvZGVyIGNhbiB1c2UgYW55IG1ldGhvZCBpdAorIHdhbnRzIHRvIHBlcmZv
cm0gdGhlIHJlc2FtcGxpbmcuCis8L3Q+CisKKzx0PgorSG93ZXZlciwgYSBtaW5pbXVtIGFtb3Vu
dCBvZiBkZWxheSBpcyBpbXBvc2VkIHRvIGFsbG93IHRoZSByZXNhbXBsZXIgdG8KKyBvcGVyYXRl
LCBhbmQgdGhpcyBkZWxheSBpcyBub3JtYXRpdmUsIHNvIHRoYXQgdGhlIGNvcnJlc3BvbmRpbmcg
ZGVsYXkgY2FuIGJlCisgYXBwbGllZCB0byB0aGUgTURDVCBsYXllciBpbiB0aGUgZW5jb2Rlci4K
K0EgZGVjb2RlciBpcyBhbHdheXMgZnJlZSB0byB1c2UgYSByZXNhbXBsZXIgd2hpY2ggcmVxdWly
ZXMgbW9yZSBkZWxheSB0aGFuCisgYWxsb3dlZCBmb3IgaGVyZSAoZS5nLiwgdG8gaW1wcm92ZSBx
dWFsaXR5KSwgYnV0IGl0IG11c3QgdGhlbiBkZWxheSB0aGUgb3V0cHV0Cisgb2YgdGhlIE1EQ1Qg
bGF5ZXIgYnkgdGhpcyBleHRyYSBhbW91bnQuCitLZWVwaW5nIGFzIG11Y2ggZGVsYXkgYXMgcG9z
c2libGUgb24gdGhlIGVuY29kZXIgc2lkZSBhbGxvd3MgYW4gZW5jb2RlciB3aGljaAorIGtub3dz
IGl0IHdpbGwgbmV2ZXIgdXNlIGFueSBvZiB0aGUgU0lMSyBvciBIeWJyaWQgbW9kZXMgdG8gc2tp
cCB0aGlzIGRlbGF5LgorQnkgY29udHJhc3QsIGlmIGl0IHdlcmUgYWxsIGFwcGxpZWQgYnkgdGhl
IGRlY29kZXIsIHRoZW4gYSBkZWNvZGVyIHdoaWNoCisgcHJvY2Vzc2VzIGF1ZGlvIGluIGZpeGVk
LXNpemUgYmxvY2tzIHdvdWxkIGJlIGZvcmNlZCB0byBkZWxheSB0aGUgb3V0cHV0IG9mCisgQ0VM
VCBmcmFtZXMganVzdCBpbiBjYXNlIG9mIGEgbGF0ZXIgc3dpdGNoIHRvIGEgU0lMSyBvciBIeWJy
aWQgbW9kZS4KKzwvdD4KKworPHQ+Cis8eHJlZiB0YXJnZXQ9InNpbGtfcmVzYW1wbGVyX2RlbGF5
X2FsbG9jIi8+IGdpdmVzIHRoZSBtYXhpbXVtIHJlc2FtcGxlciBkZWxheQorIGluIHNhbXBsZXMg
YXQgNDgmbmJzcDtrSHogZm9yIGVhY2ggU0lMSyBhdWRpbyBiYW5kd2lkdGguCitCZWNhdXNlIHRo
ZSBhY3R1YWwgb3V0cHV0IHJhdGUgbWF5IG5vdCBiZSA0OCZuYnNwO2tIeiwgaXQgbWF5IG5vdCBi
ZSBwb3NzaWJsZQorIHRvIGFjaGlldmUgZXhhY3RseSB0aGVzZSBkZWxheXMgd2hpbGUgdXNpbmcg
YSB3aG9sZSBudW1iZXIgb2YgaW5wdXQgb3Igb3V0cHV0Cisgc2FtcGxlcy4KK1RoZSByZWZlcmVu
Y2UgaW1wbGVtZW50YXRpb24gaXMgYWJsZSB0byByZXNhbXBsZSB0byBhbnkgb2YgdGhlIHN1cHBv
cnRlZAorIG91dHB1dCBzYW1wbGluZyByYXRlcyAoOCwgMTIsIDE2LCAyNCwgb3IgNDgmbmJzcDtr
SHopIHdpdGhpbiBvciBuZWFyIHRoaXMKKyBkZWxheSBjb25zdHJhaW50LgorU29tZSByZXNhbXBs
aW5nIGZpbHRlcnMgKGluY2x1ZGluZyB0aG9zZSB1c2VkIGJ5IHRoZSByZWZlcmVuY2UgaW1wbGVt
ZW50YXRpb24pCisgbWF5IGFkZCBhIGRlbGF5IHRoYXQgaXMgbm90IGFuIGV4YWN0IGludGVnZXIs
IG9yIGlzIG5vdCBsaW5lYXItcGhhc2UsIGFuZCBzbworIGNhbm5vdCBiZSByZXByZXNlbnRlZCBi
eSBhIHNpbmdsZSBkZWxheSBhdCBhbGwgZnJlcXVlbmNpZXMuCitIb3dldmVyLCBzdWNoIGRldmlh
dGlvbnMgYXJlIHVubGlrZWx5IHRvIGJlIHBlcmNlcHRpYmxlLCBhbmQgdGhlIGNvbXBhcmlzb24K
KyB0b29sIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9ImNvbmZvcm1hbmNlIi8+IGlzIGRlc2ln
bmVkIHRvIGJlIHJlbGF0aXZlbHkKKyBpbnNlbnNpdGl2ZSB0byB0aGVtLgorVGhlIGRlbGF5cyBs
aXN0ZWQgaGVyZSBhcmUgdGhlIG9uZXMgdGhhdCBzaG91bGQgYmUgdGFyZ2V0ZWQgYnkgdGhlIGVu
Y29kZXIuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3Jlc2FtcGxlcl9kZWxheV9h
bGxvYyIKKyB0aXRsZT0iU0lMSyBSZXNhbXBsZXIgRGVsYXkgQWxsb2NhdGlvbnMiPgorPHR0Y29s
PkF1ZGlvIEJhbmR3aWR0aDwvdHRjb2w+Cis8dHRjb2w+RGVsYXkgaW4gbWlsbGlzZWNvbmQ8L3R0
Y29sPgorPGM+TkI8L2M+IDxjPjAuNTM4PC9jPgorPGM+TUI8L2M+IDxjPjAuNjkyPC9jPgorPGM+
V0I8L2M+IDxjPjAuNzA2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorTkIgaXMgZ2l2ZW4gYSBz
bWFsbGVyIGRlY29kZXIgZGVsYXkgYWxsb2NhdGlvbiB0aGFuIE1CIGFuZCBXQiB0byBhbGxvdyBh
CisgaGlnaGVyLW9yZGVyIGZpbHRlciB3aGVuIHJlc2FtcGxpbmcgdG8gOCZuYnNwO2tIeiBpbiBi
b3RoIHRoZSBlbmNvZGVyIGFuZAorIGRlY29kZXIuCitUaGlzIGltcGxpZXMgdGhhdCB0aGUgYXVk
aW8gY29udGVudCBvZiB0d28gU0lMSyBmcmFtZXMgb3BlcmF0aW5nIGF0IGRpZmZlcmVudAorIGJh
bmR3aWR0aHMgYXJlIG5vdCBwZXJmZWN0bHkgYWxpZ25lZCBpbiB0aW1lLgorVGhpcyBpcyBub3Qg
YW4gaXNzdWUgZm9yIGFueSB0cmFuc2l0aW9ucyBkZXNjcmliZWQgaW4KKyA8eHJlZiB0YXJnZXQ9
InN3aXRjaGluZyIvPiwgYmVjYXVzZSB0aGV5IGFsbCBpbnZvbHZlIGEgU0lMSyBkZWNvZGVyIHJl
c2V0LgorV2hlbiB0aGUgZGVjb2RlciBpcyByZXNldCwgYW55IHNhbXBsZXMgcmVtYWluaW5nIGlu
IHRoZSByZXNhbXBsaW5nIGJ1ZmZlcgorIGFyZSBkaXNjYXJkZWQsIGFuZCB0aGUgcmVzYW1wbGVy
IGlzIHJlLWluaXRpYWxpemVkIHdpdGggc2lsZW5jZS4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8
L3NlY3Rpb24+CisKKworPHNlY3Rpb24gdGl0bGU9IkNFTFQgRGVjb2RlciI+CisKKzx0PgorVGhl
IENFTFQgbGF5ZXIgb2YgT3B1cyBpcyBiYXNlZCBvbiB0aGUgTW9kaWZpZWQgRGlzY3JldGUgQ29z
aW5lIFRyYW5zZm9ybQorPHhyZWYgdGFyZ2V0PSdNRENUJy8+IHdpdGggcGFydGlhbGx5IG92ZXJs
YXBwaW5nIHdpbmRvd3Mgb2YgNSB0byAyMi41IG1zLgorVGhlIG1haW4gcHJpbmNpcGxlIGJlaGlu
ZCBDRUxUIGlzIHRoYXQgdGhlIE1EQ1Qgc3BlY3RydW0gaXMgZGl2aWRlZCBpbnRvCitiYW5kcyB0
aGF0IChyb3VnaGx5KSBmb2xsb3cgdGhlIEJhcmsgc2NhbGUsIGkuZS4sIHRoZSBzY2FsZSBvZiB0
aGUgZWFyJ3MKK2NyaXRpY2FsIGJhbmRzJm5ic3A7PHhyZWYgdGFyZ2V0PSJad2lja2VyNjEiLz4u
IFRoZSBub3JtYWwgQ0VMVCBsYXllciB1c2VzIDIxIG9mIHRob3NlIGJhbmRzLCB0aG91Z2ggT3B1
cworIEN1c3RvbSAoc2VlIDx4cmVmIHRhcmdldD0ib3B1cy1jdXN0b20iLz4pIG1heSB1c2UgYSBk
aWZmZXJlbnQgbnVtYmVyIG9mIGJhbmRzLgorSW4gSHlicmlkIG1vZGUsIHRoZSBmaXJzdCAxNyBi
YW5kcyAodXAgdG8gOCZuYnNwO2tIeikgYXJlIG5vdCBjb2RlZC4KK0EgYmFuZCBjYW4gY29udGFp
biBhcyBsaXR0bGUgYXMgb25lIE1EQ1QgYmluIHBlciBjaGFubmVsLCBhbmQgYXMgbWFueSBhcyAx
NzYKK2JpbnMgcGVyIGNoYW5uZWwsIGFzIGRldGFpbGVkIGluIDx4cmVmIHRhcmdldD0iY2VsdF9i
YW5kX3NpemVzIi8+LgorSW4gZWFjaCBiYW5kLCB0aGUgZ2FpbiAoZW5lcmd5KSBpcyBjb2RlZCBz
ZXBhcmF0ZWx5IGZyb20KK3RoZSBzaGFwZSBvZiB0aGUgc3BlY3RydW0uIENvZGluZyB0aGUgZ2Fp
biBleHBsaWNpdGx5IG1ha2VzIGl0IGVhc3kgdG8KK3ByZXNlcnZlIHRoZSBzcGVjdHJhbCBlbnZl
bG9wZSBvZiB0aGUgc2lnbmFsLiBUaGUgcmVtYWluaW5nIHVuaXQtbm9ybSBzaGFwZQordmVjdG9y
IGlzIGVuY29kZWQgdXNpbmcgYSBQeXJhbWlkIFZlY3RvciBRdWFudGl6ZXIgKFBWUSkmbmJzcDs8
eHJlZiB0YXJnZXQ9J1BWUS1kZWNvZGVyJy8+LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0i
Y2VsdF9iYW5kX3NpemVzIgorIHRpdGxlPSJNRENUIEJpbnMgUGVyIENoYW5uZWwgUGVyIEJhbmQg
Zm9yIEVhY2ggRnJhbWUgU2l6ZSI+Cis8dHRjb2w+RnJhbWUgU2l6ZTo8L3R0Y29sPgorPHR0Y29s
IGFsaWduPSJyaWdodCI+Mi41Jm5ic3A7bXM8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+
NSZuYnNwO21zPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjEwJm5ic3A7bXM8L3R0Y29s
PgorPHR0Y29sIGFsaWduPSJyaWdodCI+MjAmbmJzcDttczwvdHRjb2w+Cis8dHRjb2wgYWxpZ249
InJpZ2h0Ij5TdGFydCBGcmVxdWVuY3k8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+U3Rv
cCBGcmVxdWVuY3k8L3R0Y29sPgorPGM+QmFuZDwvYz4gPGM+Qmluczo8L2M+IDxjLz4gPGMvPiA8
Yy8+IDxjLz4gPGMvPgorIDxjPjA8L2M+ICA8Yz4xPC9jPiAgPGM+MjwvYz4gIDxjPjQ8L2M+ICAg
PGM+ODwvYz4gICAgIDxjPjAmbmJzcDtIejwvYz4gICA8Yz4yMDAmbmJzcDtIejwvYz4KKyA8Yz4x
PC9jPiAgPGM+MTwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgIDxjPjg8L2M+ICAgPGM+MjAwJm5i
c3A7SHo8L2M+ICAgPGM+NDAwJm5ic3A7SHo8L2M+CisgPGM+MjwvYz4gIDxjPjE8L2M+ICA8Yz4y
PC9jPiAgPGM+NDwvYz4gICA8Yz44PC9jPiAgIDxjPjQwMCZuYnNwO0h6PC9jPiAgIDxjPjYwMCZu
YnNwO0h6PC9jPgorIDxjPjM8L2M+ICA8Yz4xPC9jPiAgPGM+MjwvYz4gIDxjPjQ8L2M+ICAgPGM+
ODwvYz4gICA8Yz42MDAmbmJzcDtIejwvYz4gICA8Yz44MDAmbmJzcDtIejwvYz4KKyA8Yz40PC9j
PiAgPGM+MTwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgIDxjPjg8L2M+ICAgPGM+ODAwJm5ic3A7
SHo8L2M+ICA8Yz4xMDAwJm5ic3A7SHo8L2M+CisgPGM+NTwvYz4gIDxjPjE8L2M+ICA8Yz4yPC9j
PiAgPGM+NDwvYz4gICA8Yz44PC9jPiAgPGM+MTAwMCZuYnNwO0h6PC9jPiAgPGM+MTIwMCZuYnNw
O0h6PC9jPgorIDxjPjY8L2M+ICA8Yz4xPC9jPiAgPGM+MjwvYz4gIDxjPjQ8L2M+ICAgPGM+ODwv
Yz4gIDxjPjEyMDAmbmJzcDtIejwvYz4gIDxjPjE0MDAmbmJzcDtIejwvYz4KKyA8Yz43PC9jPiAg
PGM+MTwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgIDxjPjg8L2M+ICA8Yz4xNDAwJm5ic3A7SHo8
L2M+ICA8Yz4xNjAwJm5ic3A7SHo8L2M+CisgPGM+ODwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAg
PGM+ODwvYz4gIDxjPjE2PC9jPiAgPGM+MTYwMCZuYnNwO0h6PC9jPiAgPGM+MjAwMCZuYnNwO0h6
PC9jPgorIDxjPjk8L2M+ICA8Yz4yPC9jPiAgPGM+NDwvYz4gIDxjPjg8L2M+ICA8Yz4xNjwvYz4g
IDxjPjIwMDAmbmJzcDtIejwvYz4gIDxjPjI0MDAmbmJzcDtIejwvYz4KKzxjPjEwPC9jPiAgPGM+
MjwvYz4gIDxjPjQ8L2M+ICA8Yz44PC9jPiAgPGM+MTY8L2M+ICA8Yz4yNDAwJm5ic3A7SHo8L2M+
ICA8Yz4yODAwJm5ic3A7SHo8L2M+Cis8Yz4xMTwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgPGM+
ODwvYz4gIDxjPjE2PC9jPiAgPGM+MjgwMCZuYnNwO0h6PC9jPiAgPGM+MzIwMCZuYnNwO0h6PC9j
PgorPGM+MTI8L2M+ICA8Yz40PC9jPiAgPGM+ODwvYz4gPGM+MTY8L2M+ICA8Yz4zMjwvYz4gIDxj
PjMyMDAmbmJzcDtIejwvYz4gIDxjPjQwMDAmbmJzcDtIejwvYz4KKzxjPjEzPC9jPiAgPGM+NDwv
Yz4gIDxjPjg8L2M+IDxjPjE2PC9jPiAgPGM+MzI8L2M+ICA8Yz40MDAwJm5ic3A7SHo8L2M+ICA8
Yz40ODAwJm5ic3A7SHo8L2M+Cis8Yz4xNDwvYz4gIDxjPjQ8L2M+ICA8Yz44PC9jPiA8Yz4xNjwv
Yz4gIDxjPjMyPC9jPiAgPGM+NDgwMCZuYnNwO0h6PC9jPiAgPGM+NTYwMCZuYnNwO0h6PC9jPgor
PGM+MTU8L2M+ICA8Yz42PC9jPiA8Yz4xMjwvYz4gPGM+MjQ8L2M+ICA8Yz40ODwvYz4gIDxjPjU2
MDAmbmJzcDtIejwvYz4gIDxjPjY4MDAmbmJzcDtIejwvYz4KKzxjPjE2PC9jPiAgPGM+NjwvYz4g
PGM+MTI8L2M+IDxjPjI0PC9jPiAgPGM+NDg8L2M+ICA8Yz42ODAwJm5ic3A7SHo8L2M+ICA8Yz44
MDAwJm5ic3A7SHo8L2M+Cis8Yz4xNzwvYz4gIDxjPjg8L2M+IDxjPjE2PC9jPiA8Yz4zMjwvYz4g
IDxjPjY0PC9jPiAgPGM+ODAwMCZuYnNwO0h6PC9jPiAgPGM+OTYwMCZuYnNwO0h6PC9jPgorPGM+
MTg8L2M+IDxjPjEyPC9jPiA8Yz4yNDwvYz4gPGM+NDg8L2M+ICA8Yz45NjwvYz4gIDxjPjk2MDAm
bmJzcDtIejwvYz4gPGM+MTIwMDAmbmJzcDtIejwvYz4KKzxjPjE5PC9jPiA8Yz4xODwvYz4gPGM+
MzY8L2M+IDxjPjcyPC9jPiA8Yz4xNDQ8L2M+IDxjPjEyMDAwJm5ic3A7SHo8L2M+IDxjPjE1NjAw
Jm5ic3A7SHo8L2M+Cis8Yz4yMDwvYz4gPGM+MjI8L2M+IDxjPjQ0PC9jPiA8Yz44ODwvYz4gPGM+
MTc2PC9jPiA8Yz4xNTYwMCZuYnNwO0h6PC9jPiA8Yz4yMDAwMCZuYnNwO0h6PC9jPgorPC90ZXh0
dGFibGU+CisKKzx0PgorVHJhbnNpZW50cyBhcmUgbm90b3Jpb3VzbHkgZGlmZmljdWx0IGZvciB0
cmFuc2Zvcm0gY29kZWNzIHRvIGNvZGUuCitDRUxUIHVzZXMgdHdvIGRpZmZlcmVudCBzdHJhdGVn
aWVzIGZvciB0aGVtOgorPGxpc3Qgc3R5bGU9Im51bWJlcnMiPgorPHQ+VXNpbmcgbXVsdGlwbGUg
c21hbGxlciBNRENUcyBpbnN0ZWFkIG9mIGEgc2luZ2xlIGxhcmdlIE1EQ1QsIGFuZDwvdD4KKzx0
PkR5bmFtaWMgdGltZS1mcmVxdWVuY3kgcmVzb2x1dGlvbiBjaGFuZ2VzIChTZWUgPHhyZWYgdGFy
Z2V0PSd0Zi1jaGFuZ2UnLz4pLjwvdD4KKzwvbGlzdD4KK1RvIGltcHJvdmUgcXVhbGl0eSBvbiBo
aWdobHkgdG9uYWwgYW5kIHBlcmlvZGljIHNpZ25hbHMsIENFTFQgaW5jbHVkZXMKK2EgcHJlZmls
dGVyL3Bvc3RmaWx0ZXIgY29tYmluYXRpb24uIFRoZSBwcmVmaWx0ZXIgb24gdGhlIGVuY29kZXIg
c2lkZQorYXR0ZW51YXRlcyB0aGUgc2lnbmFsJ3MgaGFybW9uaWNzLiBUaGUgcG9zdGZpbHRlciBv
biB0aGUgZGVjb2RlciBzaWRlCityZXN0b3JlcyB0aGUgb3JpZ2luYWwgZ2FpbiBvZiB0aGUgaGFy
bW9uaWNzLCB3aGlsZSBzaGFwaW5nIHRoZSBjb2Rpbmcgbm9pc2UKK3RvIHJvdWdobHkgZm9sbG93
IHRoZSBoYXJtb25pY3MuIFN1Y2ggbm9pc2Ugc2hhcGluZyByZWR1Y2VzIHRoZSBwZXJjZXB0aW9u
CitvZiB0aGUgbm9pc2UuCis8L3Q+CisKKzx0PgorV2hlbiBjb2RpbmcgYSBzdGVyZW8gc2lnbmFs
LCB0aHJlZSBjb2RpbmcgbWV0aG9kcyBhcmUgYXZhaWxhYmxlOgorPGxpc3Qgc3R5bGU9InN5bWJv
bHMiPgorPHQ+bWlkLXNpZGUgc3RlcmVvOiBlbmNvZGVzIHRoZSBtZWFuIGFuZCB0aGUgZGlmZmVy
ZW5jZSBvZiB0aGUgbGVmdCBhbmQgcmlnaHQgY2hhbm5lbHMsPC90PgorPHQ+aW50ZW5zaXR5IHN0
ZXJlbzogb25seSBlbmNvZGVzIHRoZSBtZWFuIG9mIHRoZSBsZWZ0IGFuZCByaWdodCBjaGFubmVs
cyAoZGlzY2FyZHMgdGhlIGRpZmZlcmVuY2UpLDwvdD4KKzx0PmR1YWwgc3RlcmVvOiBlbmNvZGVz
IHRoZSBsZWZ0IGFuZCByaWdodCBjaGFubmVscyBzZXBhcmF0ZWx5LjwvdD4KKzwvbGlzdD4KKzwv
dD4KKworPHQ+CitBbiBvdmVydmlldyBvZiB0aGUgZGVjb2RlciBpcyBnaXZlbiBpbiA8eHJlZiB0
YXJnZXQ9ImNlbHQtZGVjb2Rlci1vdmVydmlldyIvPi4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9
ImNlbHQtZGVjb2Rlci1vdmVydmlldyIgdGl0bGU9IlN0cnVjdHVyZSBvZiB0aGUgQ0VMVCBkZWNv
ZGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgICAg
Ky0tLS0tLS0tLSsKKyAgICAgICAgICAgICAgIHwgQ29hcnNlICB8CisgICAgICAgICAgICArLT58
IGRlY29kZXIgfC0tLS0rCisgICAgICAgICAgICB8ICArLS0tLS0tLS0tKyAgICB8CisgICAgICAg
ICAgICB8ICAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICB8ICArLS0tLS0tLS0tKyAgICB2
CisgICAgICAgICAgICB8ICB8ICBGaW5lICAgfCAgKy0tLSsKKyAgICAgICAgICAgICstPnwgZGVj
b2RlciB8LT58ICsgfAorICAgICAgICAgICAgfCAgKy0tLS0tLS0tLSsgICstLS0rCisgICAgICAg
ICAgICB8ICAgICAgIF4gICAgICAgICB8CisrLS0tLS0tLS0tKyB8ICAgICAgIHwgICAgICAgICB8
Cit8ICBSYW5nZSAgfCB8ICstLS0tLS0tLS0tKyAgICB2Cit8IERlY29kZXIgfC0rIHwgICBCaXQg
ICAgfCArLS0tLS0tKworKy0tLS0tLS0tLSsgfCB8QWxsb2NhdGlvbnwgfCAyKip4IHwKKyAgICAg
ICAgICAgIHwgKy0tLS0tLS0tLS0rICstLS0tLS0rCisgICAgICAgICAgICB8ICAgICAgIHwgICAg
ICAgICB8CisgICAgICAgICAgICB8ICAgICAgIHYgICAgICAgICB2ICAgICAgICAgICAgICAgKy0t
LS0tLS0tKworICAgICAgICAgICAgfCAgKy0tLS0tLS0tLSsgICstLS0rICArLS0tLS0tLSsgIHwg
cGl0Y2ggIHwKKyAgICAgICAgICAgICstPnwgICBQVlEgICB8LT58ICogfC0+fCBJTURDVCB8LT58
IHBvc3QtICB8LS0tPgorICAgICAgICAgICAgfCAgfCBkZWNvZGVyIHwgICstLS0rICArLS0tLS0t
LSsgIHwgZmlsdGVyIHwKKyAgICAgICAgICAgIHwgICstLS0tLS0tLS0rICAgICAgICAgICAgICAg
ICAgICArLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBeCisgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitUaGUgZGVjb2RlciBp
cyBiYXNlZCBvbiB0aGUgZm9sbG93aW5nIHN5bWJvbHMgYW5kIHNldHMgb2Ygc3ltYm9sczoKKzwv
dD4KKworPHRleHR0YWJsZSBhbmNob3I9ImNlbHRfc3ltYm9scyIKKyB0aXRsZT0iT3JkZXIgb2Yg
dGhlIFN5bWJvbHMgaW4gdGhlIENFTFQgU2VjdGlvbiBvZiB0aGUgQml0c3RyZWFtIj4KKzx0dGNv
bCBhbGlnbj0iY2VudGVyIj5TeW1ib2wocyk8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJjZW50ZXIi
PlBERjwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+Q29uZGl0aW9uPC90dGNvbD4KKzxj
PnNpbGVuY2U8L2M+ICAgICAgPGM+ezMyNzY3LCAxfS8zMjc2ODwvYz4gPGM+PC9jPgorPGM+cG9z
dC1maWx0ZXI8L2M+ICA8Yz57MSwgMX0vMjwvYz4gPGM+PC9jPgorPGM+b2N0YXZlPC9jPiAgICAg
ICA8Yz51bmlmb3JtICg2KTwvYz48Yz5wb3N0LWZpbHRlcjwvYz4KKzxjPnBlcmlvZDwvYz4gICAg
ICAgPGM+cmF3IGJpdHMgKDQrb2N0YXZlKTwvYz48Yz5wb3N0LWZpbHRlcjwvYz4KKzxjPmdhaW48
L2M+ICAgICAgICAgPGM+cmF3IGJpdHMgKDMpPC9jPjxjPnBvc3QtZmlsdGVyPC9jPgorPGM+dGFw
c2V0PC9jPiAgICAgICA8Yz57MiwgMSwgMX0vNDwvYz48Yz5wb3N0LWZpbHRlcjwvYz4KKzxjPnRy
YW5zaWVudDwvYz4gICAgPGM+ezcsIDF9Lzg8L2M+PGM+PC9jPgorPGM+aW50cmE8L2M+ICAgICAg
ICA8Yz57NywgMX0vODwvYz48Yz48L2M+Cis8Yz5jb2Fyc2UgZW5lcmd5PC9jPjxjPjx4cmVmIHRh
cmdldD0iZW5lcmd5LWRlY29kaW5nIi8+PC9jPjxjPjwvYz4KKzxjPnRmX2NoYW5nZTwvYz4gICAg
PGM+PHhyZWYgdGFyZ2V0PSJ0cmFuc2llbnQtZGVjb2RpbmciLz48L2M+PGM+PC9jPgorPGM+dGZf
c2VsZWN0PC9jPiAgICA8Yz57MSwgMX0vMjwvYz48Yz48eHJlZiB0YXJnZXQ9InRyYW5zaWVudC1k
ZWNvZGluZyIvPjwvYz4KKzxjPnNwcmVhZDwvYz4gICAgICAgPGM+ezcsIDIsIDIxLCAyfS8zMjwv
Yz48Yz48L2M+Cis8Yz5keW4uIGFsbG9jLjwvYz4gIDxjPjx4cmVmIHRhcmdldD0iYWxsb2NhdGlv
biIvPjwvYz48Yz48L2M+Cis8Yz5hbGxvYy4gdHJpbTwvYz4gIDxjPnsyLCAyLCA1LCAxMCwgMjIs
IDQ2LCAyMiwgMTAsIDUsIDIsIDJ9LzEyODwvYz48Yz48L2M+Cis8Yz5za2lwPC9jPiAgICAgICAg
IDxjPnsxLCAxfS8yPC9jPjxjPjx4cmVmIHRhcmdldD0iYWxsb2NhdGlvbiIvPjwvYz4KKzxjPmlu
dGVuc2l0eTwvYz4gICAgPGM+dW5pZm9ybTwvYz48Yz48eHJlZiB0YXJnZXQ9ImFsbG9jYXRpb24i
Lz48L2M+Cis8Yz5kdWFsPC9jPiAgICAgICAgIDxjPnsxLCAxfS8yPC9jPjxjPjwvYz4KKzxjPmZp
bmUgZW5lcmd5PC9jPiAgPGM+PHhyZWYgdGFyZ2V0PSJlbmVyZ3ktZGVjb2RpbmciLz48L2M+PGM+
PC9jPgorPGM+cmVzaWR1YWw8L2M+ICAgICA8Yz48eHJlZiB0YXJnZXQ9IlBWUS1kZWNvZGVyIi8+
PC9jPjxjPjwvYz4KKzxjPmFudGktY29sbGFwc2U8L2M+PGM+ezEsIDF9LzI8L2M+PGM+PHhyZWYg
dGFyZ2V0PSJhbnRpLWNvbGxhcHNlIi8+PC9jPgorPGM+ZmluYWxpemU8L2M+ICAgICA8Yz48eHJl
ZiB0YXJnZXQ9ImVuZXJneS1kZWNvZGluZyIvPjwvYz48Yz48L2M+Cis8L3RleHR0YWJsZT4KKwor
PHQ+CitUaGUgZGVjb2RlciBleHRyYWN0cyBpbmZvcm1hdGlvbiBmcm9tIHRoZSByYW5nZS1jb2Rl
ZCBiaXRzdHJlYW0gaW4gdGhlIG9yZGVyCitkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSdjZWx0
X3N5bWJvbHMnLz4uIEluIHNvbWUgY2lyY3Vtc3RhbmNlcywgaXQgaXMKK3Bvc3NpYmxlIGZvciBh
IGRlY29kZWQgdmFsdWUgdG8gYmUgb3V0IG9mIHJhbmdlIGR1ZSB0byBhIHZlcnkgc21hbGwgYW1v
dW50IG9mIHJlZHVuZGFuY3kKK2luIHRoZSBlbmNvZGluZyBvZiBsYXJnZSBpbnRlZ2VycyBieSB0
aGUgcmFuZ2UgY29kZXIuCitJbiB0aGF0IGNhc2UsIHRoZSBkZWNvZGVyIHNob3VsZCBhc3N1bWUg
dGhlcmUgaGFzIGJlZW4gYW4gZXJyb3IgaW4gdGhlIGNvZGluZywKK2RlY29kaW5nLCBvciB0cmFu
c21pc3Npb24gYW5kIFNIT1VMRCB0YWtlIG1lYXN1cmVzIHRvIGNvbmNlYWwgdGhlIGVycm9yIGFu
ZC9vciByZXBvcnQKK3RvIHRoZSBhcHBsaWNhdGlvbiB0aGF0IGEgcHJvYmxlbSBoYXMgb2NjdXJy
ZWQuIFN1Y2ggb3V0IG9mIHJhbmdlIGVycm9ycyBjYW5ub3Qgb2NjdXIKK2luIHRoZSBTSUxLIGxh
eWVyLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9InRyYW5zaWVudC1kZWNvZGluZyIgdGl0bGU9
IlRyYW5zaWVudCBEZWNvZGluZyI+Cis8dD4KK1RoZSAidHJhbnNpZW50IiBmbGFnIGluZGljYXRl
cyB3aGV0aGVyIHRoZSBmcmFtZSB1c2VzIGEgc2luZ2xlIGxvbmcgTURDVCBvciBzZXZlcmFsIHNo
b3J0IE1EQ1RzLgorV2hlbiBpdCBpcyBzZXQsIHRoZW4gdGhlIE1EQ1QgY29lZmZpY2llbnRzIHJl
cHJlc2VudCBtdWx0aXBsZQorc2hvcnQgTURDVHMgaW4gdGhlIGZyYW1lLiBXaGVuIG5vdCBzZXQs
IHRoZSBjb2VmZmljaWVudHMgcmVwcmVzZW50IGEgc2luZ2xlCitsb25nIE1EQ1QgZm9yIHRoZSBm
cmFtZS4gVGhlIGZsYWcgaXMgZW5jb2RlZCBpbiB0aGUgYml0c3RyZWFtIHdpdGggYSBwcm9iYWJp
bGl0eSBvZiAxLzguCitJbiBhZGRpdGlvbiB0byB0aGUgZ2xvYmFsIHRyYW5zaWVudCBmbGFnIGlz
IGEgcGVyLWJhbmQKK2JpbmFyeSBmbGFnIHRvIGNoYW5nZSB0aGUgdGltZS1mcmVxdWVuY3kgKHRm
KSByZXNvbHV0aW9uIGluZGVwZW5kZW50bHkgaW4gZWFjaCBiYW5kLiBUaGUKK2NoYW5nZSBpbiB0
ZiByZXNvbHV0aW9uIGlzIGRlZmluZWQgaW4gdGZfc2VsZWN0X3RhYmxlW11bXSBpbiBjZWx0LmMg
YW5kIGRlcGVuZHMKK29uIHRoZSBmcmFtZSBzaXplLCB3aGV0aGVyIHRoZSB0cmFuc2llbnQgZmxh
ZyBpcyBzZXQsIGFuZCB0aGUgdmFsdWUgb2YgdGZfc2VsZWN0LgorVGhlIHRmX3NlbGVjdCBmbGFn
IHVzZXMgYSAxLzIgcHJvYmFiaWxpdHksIGJ1dCBpcyBvbmx5IGRlY29kZWQKK2lmIGl0IGNhbiBo
YXZlIGFuIGltcGFjdCBvbiB0aGUgcmVzdWx0IGtub3dpbmcgdGhlIHZhbHVlIG9mIGFsbCBwZXIt
YmFuZAordGZfY2hhbmdlIGZsYWdzLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9ImVuZXJneS1kZWNvZGluZyIgdGl0bGU9IkVuZXJneSBFbnZlbG9wZSBEZWNvZGluZyI+CisK
Kzx0PgorSXQgaXMgaW1wb3J0YW50IHRvIHF1YW50aXplIHRoZSBlbmVyZ3kgd2l0aCBzdWZmaWNp
ZW50IHJlc29sdXRpb24gYmVjYXVzZQorYW55IGVuZXJneSBxdWFudGl6YXRpb24gZXJyb3IgY2Fu
bm90IGJlIGNvbXBlbnNhdGVkIGZvciBhdCBhIGxhdGVyCitzdGFnZS4gUmVnYXJkbGVzcyBvZiB0
aGUgcmVzb2x1dGlvbiB1c2VkIGZvciBlbmNvZGluZyB0aGUgc3BlY3RyYWwgc2hhcGUgb2YgYSBi
YW5kLAoraXQgaXMgcGVyY2VwdHVhbGx5IGltcG9ydGFudCB0byBwcmVzZXJ2ZSB0aGUgZW5lcmd5
IGluIGVhY2ggYmFuZC4gQ0VMVCB1c2VzIGEKK3RocmVlLXN0ZXAgY29hcnNlLWZpbmUtZmluZSBz
dHJhdGVneSBmb3IgZW5jb2RpbmcgdGhlIGVuZXJneSBpbiB0aGUgYmFzZS0yIGxvZworZG9tYWlu
LCBhcyBpbXBsZW1lbnRlZCBpbiBxdWFudF9iYW5kcy5jPC90PgorCis8c2VjdGlvbiBhbmNob3I9
ImNvYXJzZS1lbmVyZ3ktZGVjb2RpbmciIHRpdGxlPSJDb2Fyc2UgZW5lcmd5IGRlY29kaW5nIj4K
Kzx0PgorQ29hcnNlIHF1YW50aXphdGlvbiBvZiB0aGUgZW5lcmd5IHVzZXMgYSBmaXhlZCByZXNv
bHV0aW9uIG9mIDYgZEIKKyhpbnRlZ2VyIHBhcnQgb2YgYmFzZS0yIGxvZykuIFRvIG1pbmltaXpl
IHRoZSBiaXRyYXRlLCBwcmVkaWN0aW9uIGlzIGFwcGxpZWQKK2JvdGggaW4gdGltZSAodXNpbmcg
dGhlIHByZXZpb3VzIGZyYW1lKSBhbmQgaW4gZnJlcXVlbmN5ICh1c2luZyB0aGUgcHJldmlvdXMK
K2JhbmRzKS4gVGhlIHBhcnQgb2YgdGhlIHByZWRpY3Rpb24gdGhhdCBpcyBiYXNlZCBvbiB0aGUK
K3ByZXZpb3VzIGZyYW1lIGNhbiBiZSBkaXNhYmxlZCwgY3JlYXRpbmcgYW4gImludHJhIiBmcmFt
ZSB3aGVyZSB0aGUgZW5lcmd5CitpcyBjb2RlZCB3aXRob3V0IHJlZmVyZW5jZSB0byBwcmlvciBm
cmFtZXMuIFRoZSBkZWNvZGVyIGZpcnN0IHJlYWRzIHRoZSBpbnRyYSBmbGFnCit0byBkZXRlcm1p
bmUgd2hhdCBwcmVkaWN0aW9uIGlzIHVzZWQuCitUaGUgMi1EIHotdHJhbnNmb3JtIDx4cmVmIHRh
cmdldD0nei10cmFuc2Zvcm0nLz4gb2YKK3RoZSBwcmVkaWN0aW9uIGZpbHRlciBpczoKKzxmaWd1
cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAtMSAgICAgICAgICAtMQorICAgICAgICAgICAgICAo
MSAtIGFscGhhKnpfbCAgKSooMSAtIHpfYiAgKQorQSh6X2wsIHpfYikgPSAtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTEKKyAg
ICAgICAgICAgICAgICAgICAgIDEgLSBiZXRhKnpfYgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+
Cit3aGVyZSBiIGlzIHRoZSBiYW5kIGluZGV4IGFuZCBsIGlzIHRoZSBmcmFtZSBpbmRleC4gVGhl
IHByZWRpY3Rpb24gY29lZmZpY2llbnRzCithcHBsaWVkIGRlcGVuZCBvbiB0aGUgZnJhbWUgc2l6
ZSBpbiB1c2Ugd2hlbiBub3QgdXNpbmcgaW50cmEgZW5lcmd5IGFuZCBhcmUgYWxwaGE9MCwgYmV0
YT00OTE1LzMyNzY4Cit3aGVuIHVzaW5nIGludHJhIGVuZXJneS4KK1RoZSB0aW1lLWRvbWFpbiBw
cmVkaWN0aW9uIGlzIGJhc2VkIG9uIHRoZSBmaW5hbCBmaW5lIHF1YW50aXphdGlvbiBvZiB0aGUg
cHJldmlvdXMKK2ZyYW1lLCB3aGlsZSB0aGUgZnJlcXVlbmN5IGRvbWFpbiAod2l0aGluIHRoZSBj
dXJyZW50IGZyYW1lKSBwcmVkaWN0aW9uIGlzIGJhc2VkCitvbiBjb2Fyc2UgcXVhbnRpemF0aW9u
IG9ubHkgKGJlY2F1c2UgdGhlIGZpbmUgcXVhbnRpemF0aW9uIGhhcyBub3QgYmVlbiBjb21wdXRl
ZAoreWV0KS4gVGhlIHByZWRpY3Rpb24gaXMgY2xhbXBlZCBpbnRlcm5hbGx5IHNvIHRoYXQgZml4
ZWQgcG9pbnQgaW1wbGVtZW50YXRpb25zIHdpdGgKK2xpbWl0ZWQgZHluYW1pYyByYW5nZSBhbHdh
eXMgcmVtYWluIGluIHRoZSBzYW1lIHN0YXRlIGFzIGZsb2F0aW5nIHBvaW50IGltcGxlbWVudGF0
aW9ucy4KK1dlIGFwcHJveGltYXRlIHRoZSBpZGVhbAorcHJvYmFiaWxpdHkgZGlzdHJpYnV0aW9u
IG9mIHRoZSBwcmVkaWN0aW9uIGVycm9yIHVzaW5nIGEgTGFwbGFjZSBkaXN0cmlidXRpb24KK3dp
dGggc2VwYXJhdGUgcGFyYW1ldGVycyBmb3IgZWFjaCBmcmFtZSBzaXplIGluIGludHJhLSBhbmQg
aW50ZXItZnJhbWUgbW9kZXMuIFRoZXNlCitwYXJhbWV0ZXJzIGFyZSBoZWxkIGluIHRoZSBlX3By
b2JfbW9kZWwgdGFibGUgaW4gcXVhbnRfYmFuZHMuYy4KK1RoZQorY29hcnNlIGVuZXJneSBxdWFu
dGl6YXRpb24gaXMgcGVyZm9ybWVkIGJ5IHVucXVhbnRfY29hcnNlX2VuZXJneSgpIGFuZAordW5x
dWFudF9jb2Fyc2VfZW5lcmd5X2ltcGwoKSAocXVhbnRfYmFuZHMuYykuIFRoZSBlbmNvZGluZyBv
ZiB0aGUgTGFwbGFjZS1kaXN0cmlidXRlZCB2YWx1ZXMgaXMKK2ltcGxlbWVudGVkIGluIGVjX2xh
cGxhY2VfZGVjb2RlKCkgKGxhcGxhY2UuYykuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rp
b24gYW5jaG9yPSJmaW5lLWVuZXJneS1kZWNvZGluZyIgdGl0bGU9IkZpbmUgZW5lcmd5IHF1YW50
aXphdGlvbiI+Cis8dD4KK1RoZSBudW1iZXIgb2YgYml0cyBhc3NpZ25lZCB0byBmaW5lIGVuZXJn
eSBxdWFudGl6YXRpb24gaW4gZWFjaCBiYW5kIGlzIGRldGVybWluZWQKK2J5IHRoZSBiaXQgYWxs
b2NhdGlvbiBjb21wdXRhdGlvbiBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJhbGxvY2F0aW9u
Ij48L3hyZWY+LgorTGV0IEJfaSBiZSB0aGUgbnVtYmVyIG9mIGZpbmUgZW5lcmd5IGJpdHMKK2Zv
ciBiYW5kIGk7IHRoZSByZWZpbmVtZW50IGlzIGFuIGludGVnZXIgZiBpbiB0aGUgcmFuZ2UgWzAs
MioqQl9pLTFdLiBUaGUgbWFwcGluZyBiZXR3ZWVuIGYKK2FuZCB0aGUgY29ycmVjdGlvbiBhcHBs
aWVkIHRvIHRoZSBjb2Fyc2UgZW5lcmd5IGlzIGVxdWFsIHRvIChmKzEvMikvMioqQl9pIC0gMS8y
LiBGaW5lCitlbmVyZ3kgcXVhbnRpemF0aW9uIGlzIGltcGxlbWVudGVkIGluIHF1YW50X2ZpbmVf
ZW5lcmd5KCkgKHF1YW50X2JhbmRzLmMpLgorPC90PgorPHQ+CitXaGVuIHNvbWUgYml0cyBhcmUg
bGVmdCAidW51c2VkIiBhZnRlciBhbGwgb3RoZXIgZmxhZ3MgaGF2ZSBiZWVuIGRlY29kZWQsIHRo
ZXNlIGJpdHMKK2FyZSBhc3NpZ25lZCB0byBhICJmaW5hbCIgc3RlcCBvZiBmaW5lIGFsbG9jYXRp
b24uIEluIGVmZmVjdCwgdGhlc2UgYml0cyBhcmUgdXNlZAordG8gYWRkIG9uZSBleHRyYSBmaW5l
IGVuZXJneSBiaXQgcGVyIGJhbmQgcGVyIGNoYW5uZWwuIFRoZSBhbGxvY2F0aW9uIHByb2Nlc3MK
K2RldGVybWluZXMgdHdvICJwcmlvcml0aWVzIiBmb3IgdGhlIGZpbmFsIGZpbmUgYml0cy4KK0Fu
eSByZW1haW5pbmcgYml0cyBhcmUgZmlyc3QgYXNzaWduZWQgb25seSB0byBiYW5kcyBvZiBwcmlv
cml0eSAwLCBzdGFydGluZworZnJvbSBiYW5kIDAgYW5kIGdvaW5nIHVwLiBJZiBhbGwgYmFuZHMg
b2YgcHJpb3JpdHkgMCBoYXZlIHJlY2VpdmVkIG9uZSBiaXQgcGVyCitjaGFubmVsLCB0aGVuIGJh
bmRzIG9mIHByaW9yaXR5IDEgYXJlIGFzc2lnbmVkIGFuIGV4dHJhIGJpdCBwZXIgY2hhbm5lbCwK
K3N0YXJ0aW5nIGZyb20gYmFuZCAwLiBJZiBhbnkgYml0cyBhcmUgbGVmdCBhZnRlciB0aGlzLCB0
aGV5IGFyZSBsZWZ0IHVudXNlZC4KK1RoaXMgaXMgaW1wbGVtZW50ZWQgaW4gdW5xdWFudF9lbmVy
Z3lfZmluYWxpc2UoKSAocXVhbnRfYmFuZHMuYykuCis8L3Q+CisKKzwvc2VjdGlvbj4gPCEtLSBm
aW5lIGVuZXJneSAtLT4KKworPC9zZWN0aW9uPiA8IS0tIEVuZXJneSBkZWNvZGUgLS0+CisKKzxz
ZWN0aW9uIGFuY2hvcj0iYWxsb2NhdGlvbiIgdGl0bGU9IkJpdCBBbGxvY2F0aW9uIj4KKworPHQ+
QmVjYXVzZSB0aGUgYml0IGFsbG9jYXRpb24gZHJpdmVzIHRoZSBkZWNvZGluZyBvZiB0aGUgcmFu
Z2UtY29kZXIKK3N0cmVhbSwgaXQgTVVTVCBiZSByZWNvdmVyZWQgZXhhY3RseSBzbyB0aGF0IGlk
ZW50aWNhbCBjb2RpbmcgZGVjaXNpb25zIGFyZQorbWFkZSBpbiB0aGUgZW5jb2RlciBhbmQgZGVj
b2Rlci4gQW55IGRldmlhdGlvbiBmcm9tIHRoZSByZWZlcmVuY2UncyByZXN1bHRpbmcKK2JpdCBh
bGxvY2F0aW9uIHdpbGwgcmVzdWx0IGluIGNvcnJ1cHRlZCBvdXRwdXQsIHRob3VnaCBpbXBsZW1l
bnRlcnMgYXJlCitmcmVlIHRvIGltcGxlbWVudCB0aGUgcHJvY2VkdXJlIGluIGFueSB3YXkgd2hp
Y2ggcHJvZHVjZXMgaWRlbnRpY2FsIHJlc3VsdHMuPC90PgorCis8dD5UaGUgcGVyLWJhbmQgZ2Fp
bi1zaGFwZSBzdHJ1Y3R1cmUgb2YgdGhlIENFTFQgbGF5ZXIgZW5zdXJlcyB0aGF0IHVzaW5nCisg
dGhlIHNhbWUgbnVtYmVyIG9mIGJpdHMgZm9yIHRoZSBzcGVjdHJhbCBzaGFwZSBvZiBhIGJhbmQg
aW4gZXZlcnkgZnJhbWUgd2lsbAorIHJlc3VsdCBpbiBhIHJvdWdobHkgY29uc3RhbnQgc2lnbmFs
LXRvLW5vaXNlIHJhdGlvIGluIHRoYXQgYmFuZC4KK1RoaXMgcmVzdWx0cyBpbiBjb2Rpbmcgbm9p
c2UgdGhhdCBoYXMgdGhlIHNhbWUgc3BlY3RyYWwgZW52ZWxvcGUgYXMgdGhlIHNpZ25hbC4KK1Ro
ZSBtYXNraW5nIGN1cnZlIHByb2R1Y2VkIGJ5IGEgc3RhbmRhcmQgcHN5Y2hvYWNvdXN0aWMgbW9k
ZWwgYWxzbyBjbG9zZWx5CisgZm9sbG93cyB0aGUgc3BlY3RyYWwgZW52ZWxvcGUgb2YgdGhlIHNp
Z25hbC4KK1RoaXMgc3RydWN0dXJlIG1lYW5zIHRoYXQgdGhlIGlkZWFsIGFsbG9jYXRpb24gaXMg
bW9yZSBjb25zaXN0ZW50IGZyb20gZnJhbWUgdG8KKyBmcmFtZSB0aGFuIGl0IGlzIGZvciBvdGhl
ciBjb2RlY3Mgd2l0aG91dCBhbiBlcXVpdmFsZW50IHN0cnVjdHVyZSwgYW5kIHRoYXQgYQorIGZp
eGVkIGFsbG9jYXRpb24gcHJvdmlkZXMgZmFpcmx5IGNvbnNpc3RlbnQgcGVyY2VwdHVhbAorIHBl
cmZvcm1hbmNlJm5ic3A7PHhyZWYgdGFyZ2V0PSdWYWxpbjIwMTAnLz4uPC90PgorCis8dD5NYW55
IGNvZGVjcyB0cmFuc21pdCBzaWduaWZpY2FudCBhbW91bnRzIG9mIHNpZGUgaW5mb3JtYXRpb24g
dG8gY29udHJvbCB0aGUKKyBiaXQgYWxsb2NhdGlvbiB3aXRoaW4gYSBmcmFtZS4KK09mdGVuIHRo
aXMgY29udHJvbCBpcyBvbmx5IGluZGlyZWN0LCBhbmQgbXVzdCBiZSBleGVyY2lzZWQgY2FyZWZ1
bGx5IHRvCisgYWNoaWV2ZSB0aGUgZGVzaXJlZCByYXRlIGNvbnN0cmFpbnRzLgorVGhlIENFTFQg
bGF5ZXIsIGhvd2V2ZXIsIGNhbiBhZGFwdCBvdmVyIGEgdmVyeSB3aWRlIHJhbmdlIG9mIHJhdGVz
LCBhbmQgdGh1cworIGhhcyBhIGxhcmdlIG51bWJlciBvZiBjb2RlYm9vayBzaXplcyB0byBjaG9v
c2UgZnJvbSBmb3IgZWFjaCBiYW5kLgorRXhwbGljaXRseSBzaWduYWxpbmcgdGhlIHNpemUgb2Yg
ZWFjaCBvZiB0aGVzZSBjb2RlYm9va3Mgd291bGQgaW1wb3NlCisgY29uc2lkZXJhYmxlIG92ZXJo
ZWFkLCBldmVuIHRob3VnaCB0aGUgYWxsb2NhdGlvbiBpcyByZWxhdGl2ZWx5IHN0YXRpYyBmcm9t
CisgZnJhbWUgdG8gZnJhbWUuCitUaGlzIGlzIGJlY2F1c2UgYWxsIG9mIHRoZSBpbmZvcm1hdGlv
biByZXF1aXJlZCB0byBjb21wdXRlIHRoZXNlIGNvZGVib29rIHNpemVzCisgbXVzdCBiZSBkZXJp
dmVkIGZyb20gYSBzaW5nbGUgZnJhbWUgYnkgaXRzZWxmLCBpbiBvcmRlciB0byByZXRhaW4gcm9i
dXN0bmVzcworIHRvIHBhY2tldCBsb3NzLCBzbyB0aGUgc2lnbmFsaW5nIGNhbm5vdCB0YWtlIGFk
dmFudGFnZSBvZiBrbm93bGVkZ2Ugb2YgdGhlCisgYWxsb2NhdGlvbiBpbiBuZWlnaGJvcmluZyBm
cmFtZXMuCitUaGlzIHByb2JsZW0gaXMgZXhhY2VyYmF0ZWQgaW4gbG93LWxhdGVuY3kgKHNtYWxs
IGZyYW1lIHNpemUpIGFwcGxpY2F0aW9ucywKKyB3aGljaCB3b3VsZCBpbmNsdWRlIHRoaXMgb3Zl
cmhlYWQgaW4gZXZlcnkgZnJhbWUuPC90PgorCis8dD5Gb3IgdGhpcyByZWFzb24sIGluIHRoZSBN
RENUIG1vZGUgT3B1cyB1c2VzIGEgcHJpbWFyaWx5IGltcGxpY2l0IGJpdAorYWxsb2NhdGlvbi4g
VGhlIGF2YWlsYWJsZSBiaXRzdHJlYW0gY2FwYWNpdHkgaXMga25vd24gaW4gYWR2YW5jZSB0byBi
b3RoCit0aGUgZW5jb2RlciBhbmQgZGVjb2RlciB3aXRob3V0IGFkZGl0aW9uYWwgc2lnbmFsaW5n
LCB1bHRpbWF0ZWx5IGZyb20gdGhlCitwYWNrZXQgc2l6ZXMgZXhwcmVzc2VkIGJ5IGEgaGlnaGVy
LWxldmVsIHByb3RvY29sLiBVc2luZyB0aGlzIGluZm9ybWF0aW9uLAordGhlIGNvZGVjIGludGVy
cG9sYXRlcyBhbiBhbGxvY2F0aW9uIGZyb20gYSBoYXJkLWNvZGVkIHRhYmxlLjwvdD4KKworPHQ+
V2hpbGUgdGhlIGJhbmQtZW5lcmd5IHN0cnVjdHVyZSBlZmZlY3RpdmVseSBtb2RlbHMgaW50cmEt
YmFuZCBtYXNraW5nLAoraXQgaWdub3JlcyB0aGUgd2Vha2VyIGludGVyLWJhbmQgbWFza2luZywg
YmFuZC10ZW1wb3JhbCBtYXNraW5nLCBhbmQKK290aGVyIGxlc3Mgc2lnbmlmaWNhbnQgcGVyY2Vw
dHVhbCBlZmZlY3RzLiBXaGlsZSB0aGVzZSBlZmZlY3RzIGNhbgorb2Z0ZW4gYmUgaWdub3JlZCwg
dGhleSBjYW4gYmVjb21lIHNpZ25pZmljYW50IGZvciBwYXJ0aWN1bGFyIHNhbXBsZXMuIE9uZQor
bWVjaGFuaXNtIGF2YWlsYWJsZSB0byBlbmNvZGVycyB3b3VsZCBiZSB0byBzaW1wbHkgaW5jcmVh
c2UgdGhlIG92ZXJhbGwKK3JhdGUgZm9yIHRoZXNlIGZyYW1lcywgYnV0IHRoaXMgaXMgbm90IHBv
c3NpYmxlIGluIGEgY29uc3RhbnQgcmF0ZSBtb2RlCithbmQgY2FuIGJlIGZhaXJseSBpbmVmZmlj
aWVudC4gQXMgYSByZXN1bHQgdGhyZWUgZXhwbGljaXRseSBzaWduYWxlZAorbWVjaGFuaXNtcyBh
cmUgcHJvdmlkZWQgdG8gYWx0ZXIgdGhlIGltcGxpY2l0IGFsbG9jYXRpb246PC90PgorCis8dD4K
KzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PkJhbmQgYm9vc3Q8L3Q+Cis8dD5BbGxvY2F0aW9u
IHRyaW08L3Q+Cis8dD5CYW5kIHNraXBwaW5nPC90PgorPC9saXN0PgorPC90PgorCis8dD5UaGUg
Zmlyc3Qgb2YgdGhlc2UgbWVjaGFuaXNtcywgYmFuZCBib29zdCwgYWxsb3dzIGFuIGVuY29kZXIg
dG8gYm9vc3QKK3RoZSBhbGxvY2F0aW9uIGluIHNwZWNpZmljIGJhbmRzLiBUaGUgc2Vjb25kLCBh
bGxvY2F0aW9uIHRyaW0sIHdvcmtzIGJ5CitiaWFzaW5nIHRoZSBvdmVyYWxsIGFsbG9jYXRpb24g
dG93YXJkcyBoaWdoZXIgb3IgbG93ZXIgZnJlcXVlbmN5IGJhbmRzLiBUaGUgdGhpcmQsIGJhbmQK
K3NraXBwaW5nLCBzZWxlY3RzIHdoaWNoIGxvdy1wcmVjaXNpb24gaGlnaCBmcmVxdWVuY3kgYmFu
ZHMKK3dpbGwgYmUgYWxsb2NhdGVkIG5vIHNoYXBlIGJpdHMgYXQgYWxsLjwvdD4KKworPHQ+SW4g
c3RlcmVvIG1vZGUgdGhlcmUgYXJlIHR3byBhZGRpdGlvbmFsIHBhcmFtZXRlcnMKK3BvdGVudGlh
bGx5IGNvZGVkIGFzIHBhcnQgb2YgdGhlIGFsbG9jYXRpb24gcHJvY2VkdXJlOiBhIHBhcmFtZXRl
ciB0byBhbGxvdyB0aGUKK3NlbGVjdGl2ZSBlbGltaW5hdGlvbiBvZiBhbGxvY2F0aW9uIGZvciB0
aGUgJ3NpZGUnIChpLmUuLCBpbnRlbnNpdHkgc3RlcmVvKSBpbiBqb2ludGx5IGNvZGVkIGJhbmRz
LAorYW5kIGEgZmxhZyB0byBkZWFjdGl2YXRlIGpvaW50IGNvZGluZyAoaS5lLiwgZHVhbCBzdGVy
ZW8pLiBUaGVzZSB2YWx1ZXMgYXJlIG5vdCBzaWduYWxlZCBpZgordGhleSB3b3VsZCBiZSBtZWFu
aW5nbGVzcyBpbiB0aGUgb3ZlcmFsbCBjb250ZXh0IG9mIHRoZSBhbGxvY2F0aW9uLjwvdD4KKwor
PHQ+QmVjYXVzZSBldmVyeSBzaWduYWxlZCBhZGp1c3RtZW50IGluY3JlYXNlcyBvdmVyaGVhZCBh
bmQgaW1wbGVtZW50YXRpb24KK2NvbXBsZXhpdHksIG5vbmUgd2VyZSBpbmNsdWRlZCBzcGVjdWxh
dGl2ZWx5OiB0aGUgcmVmZXJlbmNlIGVuY29kZXIgbWFrZXMgdXNlCitvZiBhbGwgb2YgdGhlc2Ug
bWVjaGFuaXNtcy4gV2hpbGUgdGhlIGRlY2lzaW9uIGxvZ2ljIGluIHRoZSByZWZlcmVuY2Ugd2Fz
Citmb3VuZCB0byBiZSBlZmZlY3RpdmUgZW5vdWdoIHRvIGp1c3RpZnkgdGhlIG92ZXJoZWFkIGFu
ZCBjb21wbGV4aXR5LCBmdXJ0aGVyCithbmFseXNpcyB0ZWNobmlxdWVzIG1heSBiZSBkaXNjb3Zl
cmVkIHdoaWNoIGluY3JlYXNlIHRoZSBlZmZlY3RpdmVuZXNzIG9mIHRoZXNlCitwYXJhbWV0ZXJz
LiBBcyB3aXRoIG90aGVyIHNpZ25hbGVkIHBhcmFtZXRlcnMsIGFuIGVuY29kZXIgaXMgZnJlZSB0
byBjaG9vc2UgdGhlCit2YWx1ZXMgaW4gYW55IG1hbm5lciwgYnV0IHVubGVzcyBhIHRlY2huaXF1
ZSBpcyBrbm93biB0byBkZWxpdmVyIHN1cGVyaW9yCitwZXJjZXB0dWFsIHJlc3VsdHMgdGhlIG1l
dGhvZHMgdXNlZCBieSB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIHNob3VsZCBiZQordXNl
ZC48L3Q+CisKKzx0PlRoZSBhbGxvY2F0aW9uIHByb2Nlc3MgY29uc2lzdHMgb2YgdGhlIGZvbGxv
d2luZyBzdGVwczogZGV0ZXJtaW5pbmcgdGhlIHBlci1iYW5kCittYXhpbXVtIGFsbG9jYXRpb24g
dmVjdG9yLCBkZWNvZGluZyB0aGUgYm9vc3RzLCBkZWNvZGluZyB0aGUgdGlsdCwgZGV0ZXJtaW5p
bmcKK3RoZSByZW1haW5pbmcgY2FwYWNpdHkgb2YgdGhlIGZyYW1lLCBzZWFyY2hpbmcgdGhlIG1v
ZGUgdGFibGUgZm9yIHRoZQorZW50cnkgbmVhcmVzdCBidXQgbm90IGV4Y2VlZGluZyB0aGUgYXZh
aWxhYmxlIHNwYWNlIChzdWJqZWN0IHRvIHRoZSB0aWx0LCBib29zdHMsIGJhbmQKK21heGltdW1z
LCBhbmQgYmFuZCBtaW5pbXVtcyksIGxpbmVhciBpbnRlcnBvbGF0aW9uLCByZWFsbG9jYXRpb24g
b2YKK3VudXNlZCBiaXRzIHdpdGggY29uY3VycmVudCBza2lwIGRlY29kaW5nLCBkZXRlcm1pbmF0
aW9uIG9mIHRoZQorZmluZS1lbmVyZ3kgdnMuIHNoYXBlIHNwbGl0LCBhbmQgZmluYWwgcmVhbGxv
Y2F0aW9uLiBUaGlzIHByb2Nlc3MgcmVzdWx0cworaW4gYSBwZXItYmFuZCBzaGFwZSBhbGxvY2F0
aW9uIChpbiAxLzh0aCBiaXQgdW5pdHMpLCBhIHBlci1iYW5kIGZpbmUtZW5lcmd5CithbGxvY2F0
aW9uIChpbiAxIGJpdCBwZXIgY2hhbm5lbCB1bml0cyksIGEgc2V0IG9mIGJhbmQgcHJpb3JpdGll
cyBmb3IKK2NvbnRyb2xsaW5nIHRoZSB1c2Ugb2YgcmVtYWluaW5nIGJpdHMgYXQgdGhlIGVuZCBv
ZiB0aGUgZnJhbWUsIGFuZCBhCityZW1haW5pbmcgYmFsYW5jZSBvZiB1bmFsbG9jYXRlZCBzcGFj
ZSwgd2hpY2ggaXMgdXN1YWxseSB6ZXJvIGV4Y2VwdAorYXQgdmVyeSBoaWdoIHJhdGVzLjwvdD4K
KworPHQ+CitUaGUgInN0YXRpYyIgYml0IGFsbG9jYXRpb24gKGluIDEvOCBiaXRzKSBmb3IgYSBx
dWFsaXR5IHEsIGV4Y2x1ZGluZyB0aGUgbWluaW11bXMsIG1heGltdW1zLAordGlsdCBhbmQgYm9v
c3RzLCBpcyBlcXVhbCB0byBjaGFubmVscypOKmFsbG9jW2JhbmRdW3FdJmx0OyZsdDtMTSZndDsm
Z3Q7Miwgd2hlcmUKK2FsbG9jW11bXSBpcyBnaXZlbiBpbiA8eHJlZiB0YXJnZXQ9InN0YXRpY19h
bGxvYyIvPiBhbmQgTE09bG9nMihmcmFtZV9zaXplLzEyMCkuIFRoZSBhbGxvY2F0aW9uCitpcyBv
YnRhaW5lZCBieSBsaW5lYXJseSBpbnRlcnBvbGF0aW5nIGJldHdlZW4gdHdvIHZhbHVlcyBvZiBx
IChpbiBzdGVwcyBvZiAxLzY0KSB0byBmaW5kIHRoZQoraGlnaGVzdCBhbGxvY2F0aW9uIHRoYXQg
ZG9lcyBub3QgZXhjZWVkIHRoZSBudW1iZXIgb2YgYml0cyByZW1haW5pbmcuCis8L3Q+CisKKzx0
ZXh0dGFibGUgYW5jaG9yPSJzdGF0aWNfYWxsb2MiCisgdGl0bGU9IkNFTFQgU3RhdGljIEFsbG9j
YXRpb24gVGFibGUiPgorIDxwcmVhbWJsZT5Sb3dzIGluZGljYXRlIHRoZSBNRENUIGJhbmRzLCBj
b2x1bW5zIGFyZSB0aGUgZGlmZmVyZW50IHF1YWxpdHkgKHEpIHBhcmFtZXRlcnMuIFRoZSB1bml0
cyBhcmUgMS8zMiBiaXQgcGVyIE1EQ1QgYmluLjwvcHJlYW1ibGU+Cis8dHRjb2wgYWxpZ249InJp
Z2h0Ij4wPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjE8L3R0Y29sPgorPHR0Y29sIGFs
aWduPSJyaWdodCI+MjwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4zPC90dGNvbD4KKzx0
dGNvbCBhbGlnbj0icmlnaHQiPjQ8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+NTwvdHRj
b2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij42PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQi
Pjc8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+ODwvdHRjb2w+Cis8dHRjb2wgYWxpZ249
InJpZ2h0Ij45PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjEwPC90dGNvbD4KKzxjPjA8
L2M+PGM+OTA8L2M+PGM+MTEwPC9jPjxjPjExODwvYz48Yz4xMjY8L2M+PGM+MTM0PC9jPjxjPjE0
NDwvYz48Yz4xNTI8L2M+PGM+MTYyPC9jPjxjPjE3MjwvYz48Yz4yMDA8L2M+Cis8Yz4wPC9jPjxj
PjgwPC9jPjxjPjEwMDwvYz48Yz4xMTA8L2M+PGM+MTE5PC9jPjxjPjEyNzwvYz48Yz4xMzc8L2M+
PGM+MTQ1PC9jPjxjPjE1NTwvYz48Yz4xNjU8L2M+PGM+MjAwPC9jPgorPGM+MDwvYz48Yz43NTwv
Yz48Yz45MDwvYz48Yz4xMDM8L2M+PGM+MTEyPC9jPjxjPjEyMDwvYz48Yz4xMzA8L2M+PGM+MTM4
PC9jPjxjPjE0ODwvYz48Yz4xNTg8L2M+PGM+MjAwPC9jPgorPGM+MDwvYz48Yz42OTwvYz48Yz44
NDwvYz48Yz45MzwvYz48Yz4xMDQ8L2M+PGM+MTE0PC9jPjxjPjEyNDwvYz48Yz4xMzI8L2M+PGM+
MTQyPC9jPjxjPjE1MjwvYz48Yz4yMDA8L2M+Cis8Yz4wPC9jPjxjPjYzPC9jPjxjPjc4PC9jPjxj
Pjg2PC9jPjxjPjk1PC9jPjxjPjEwMzwvYz48Yz4xMTM8L2M+PGM+MTIzPC9jPjxjPjEzMzwvYz48
Yz4xNDM8L2M+PGM+MjAwPC9jPgorPGM+MDwvYz48Yz41NjwvYz48Yz43MTwvYz48Yz44MDwvYz48
Yz44OTwvYz48Yz45NzwvYz48Yz4xMDc8L2M+PGM+MTE3PC9jPjxjPjEyNzwvYz48Yz4xMzc8L2M+
PGM+MjAwPC9jPgorPGM+MDwvYz48Yz40OTwvYz48Yz42NTwvYz48Yz43NTwvYz48Yz44MzwvYz48
Yz45MTwvYz48Yz4xMDE8L2M+PGM+MTExPC9jPjxjPjEyMTwvYz48Yz4xMzE8L2M+PGM+MjAwPC9j
PgorPGM+MDwvYz48Yz40MDwvYz48Yz41ODwvYz48Yz43MDwvYz48Yz43ODwvYz48Yz44NTwvYz48
Yz45NTwvYz48Yz4xMDU8L2M+PGM+MTE1PC9jPjxjPjEyNTwvYz48Yz4yMDA8L2M+Cis8Yz4wPC9j
PjxjPjM0PC9jPjxjPjUxPC9jPjxjPjY1PC9jPjxjPjcyPC9jPjxjPjc4PC9jPjxjPjg4PC9jPjxj
Pjk4PC9jPjxjPjEwODwvYz48Yz4xMTg8L2M+PGM+MTk4PC9jPgorPGM+MDwvYz48Yz4yOTwvYz48
Yz40NTwvYz48Yz41OTwvYz48Yz42NjwvYz48Yz43MjwvYz48Yz44MjwvYz48Yz45MjwvYz48Yz4x
MDI8L2M+PGM+MTEyPC9jPjxjPjE5MzwvYz4KKzxjPjA8L2M+PGM+MjA8L2M+PGM+Mzk8L2M+PGM+
NTM8L2M+PGM+NjA8L2M+PGM+NjY8L2M+PGM+NzY8L2M+PGM+ODY8L2M+PGM+OTY8L2M+PGM+MTA2
PC9jPjxjPjE4ODwvYz4KKzxjPjA8L2M+PGM+MTg8L2M+PGM+MzI8L2M+PGM+NDc8L2M+PGM+NTQ8
L2M+PGM+NjA8L2M+PGM+NzA8L2M+PGM+ODA8L2M+PGM+OTA8L2M+PGM+MTAwPC9jPjxjPjE4Mzwv
Yz4KKzxjPjA8L2M+PGM+MTA8L2M+PGM+MjY8L2M+PGM+NDA8L2M+PGM+NDc8L2M+PGM+NTQ8L2M+
PGM+NjQ8L2M+PGM+NzQ8L2M+PGM+ODQ8L2M+PGM+OTQ8L2M+PGM+MTc4PC9jPgorPGM+MDwvYz48
Yz4wPC9jPjxjPjIwPC9jPjxjPjMxPC9jPjxjPjM5PC9jPjxjPjQ3PC9jPjxjPjU3PC9jPjxjPjY3
PC9jPjxjPjc3PC9jPjxjPjg3PC9jPjxjPjE3MzwvYz4KKzxjPjA8L2M+PGM+MDwvYz48Yz4xMjwv
Yz48Yz4yMzwvYz48Yz4zMjwvYz48Yz40MTwvYz48Yz41MTwvYz48Yz42MTwvYz48Yz43MTwvYz48
Yz44MTwvYz48Yz4xNjg8L2M+Cis8Yz4wPC9jPjxjPjA8L2M+PGM+MDwvYz48Yz4xNTwvYz48Yz4y
NTwvYz48Yz4zNTwvYz48Yz40NTwvYz48Yz41NTwvYz48Yz42NTwvYz48Yz43NTwvYz48Yz4xNjM8
L2M+Cis8Yz4wPC9jPjxjPjA8L2M+PGM+MDwvYz48Yz40PC9jPjxjPjE3PC9jPjxjPjI5PC9jPjxj
PjM5PC9jPjxjPjQ5PC9jPjxjPjU5PC9jPjxjPjY5PC9jPjxjPjE1ODwvYz4KKzxjPjA8L2M+PGM+
MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+MTI8L2M+PGM+MjM8L2M+PGM+MzM8L2M+PGM+NDM8L2M+
PGM+NTM8L2M+PGM+NjM8L2M+PGM+MTUzPC9jPgorPGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+
MDwvYz48Yz4xPC9jPjxjPjE2PC9jPjxjPjI2PC9jPjxjPjM2PC9jPjxjPjQ2PC9jPjxjPjU2PC9j
PjxjPjE0ODwvYz4KKzxjPjA8L2M+PGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+MDwvYz48Yz4x
MDwvYz48Yz4xNTwvYz48Yz4yMDwvYz48Yz4zMDwvYz48Yz40NTwvYz48Yz4xMjk8L2M+Cis8Yz4w
PC9jPjxjPjA8L2M+PGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+MTwvYz48Yz4xPC9jPjxjPjE8
L2M+PGM+MTwvYz48Yz4yMDwvYz48Yz4xMDQ8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+VGhlIG1h
eGltdW0gYWxsb2NhdGlvbiB2ZWN0b3IgaXMgYW4gYXBwcm94aW1hdGlvbiBvZiB0aGUgbWF4aW11
bSBzcGFjZQordGhhdCBjYW4gYmUgdXNlZCBieSBlYWNoIGJhbmQgZm9yIGEgZ2l2ZW4gbW9kZS4g
VGhlIHZhbHVlIGlzCithcHByb3hpbWF0ZSBiZWNhdXNlIHRoZSBzaGFwZSBlbmNvZGluZyBpcyB2
YXJpYWJsZSByYXRlIChkdWUKK3RvIGVudHJvcHkgY29kaW5nIG9mIHNwbGl0dGluZyBwYXJhbWV0
ZXJzKS4gU2V0dGluZyB0aGUgbWF4aW11bSB0b28gbG93IHJlZHVjZXMgdGhlCittYXhpbXVtIGFj
aGlldmFibGUgcXVhbGl0eSBpbiBhIGJhbmQgd2hpbGUgc2V0dGluZyBpdCB0b28gaGlnaAorbWF5
IHJlc3VsdCBpbiB3YXN0ZTogYml0c3RyZWFtIGNhcGFjaXR5IGF2YWlsYWJsZSBhdCB0aGUgZW5k
CitvZiB0aGUgZnJhbWUgd2hpY2ggY2FuIG5vdCBiZSBwdXQgdG8gYW55IHVzZS4gVGhlIG1heGlt
dW1zCitzcGVjaWZpZWQgYnkgdGhlIGNvZGVjIHJlZmxlY3QgdGhlIGF2ZXJhZ2UgbWF4aW11bS4g
SW4gdGhlIHJlZmVyZW5jZQoraW1wbGVtZW50YXRpb24sIHRoZSBtYXhpbXVtcyBpbiBiaXRzL3Nh
bXBsZSBhcmUgcHJlY29tcHV0ZWQgaW4gYSBzdGF0aWMgdGFibGUKKyhzZWUgY2FjaGVfY2FwczUw
W10gaW4gc3RhdGljX21vZGVzX2Zsb2F0LmgpIGZvciBlYWNoIGJhbmQsCitmb3IgZWFjaCB2YWx1
ZSBvZiBMTSwgYW5kIGZvciBib3RoIG1vbm8gYW5kIHN0ZXJlby4KKworSW1wbGVtZW50YXRpb25z
IGFyZSBleHBlY3RlZAordG8gc2ltcGx5IHVzZSB0aGUgc2FtZSB0YWJsZSBkYXRhLCBidXQgdGhl
IHByb2NlZHVyZSBmb3IgZ2VuZXJhdGluZwordGhpcyB0YWJsZSBpcyBpbmNsdWRlZCBpbiByYXRl
LmMgYXMgcGFydCBvZiBjb21wdXRlX3B1bHNlX2NhY2hlKCkuPC90PgorCis8dD5UbyBjb252ZXJ0
IHRoZSB2YWx1ZXMgaW4gY2FjaGUuY2FwcyBpbnRvIHRoZSBhY3R1YWwgbWF4aW11bXM6IGZpcnN0
CitzZXQgbmJCYW5kcyB0byB0aGUgbWF4aW11bSBudW1iZXIgb2YgYmFuZHMgZm9yIHRoaXMgbW9k
ZSwgYW5kIHN0ZXJlbyB0bworemVybyBpZiBzdGVyZW8gaXMgbm90IGluIHVzZSBhbmQgb25lIG90
aGVyd2lzZS4gRm9yIGVhY2ggYmFuZCBzZXQgTgordG8gdGhlIG51bWJlciBvZiBNRENUIGJpbnMg
Y292ZXJlZCBieSB0aGUgYmFuZCAoZm9yIG9uZSBjaGFubmVsKSwgc2V0IExNCit0byB0aGUgc2hp
ZnQgdmFsdWUgZm9yIHRoZSBmcmFtZSBzaXplLAordGhlbiBzZXQgaSB0byBuYkJhbmRzKigyKkxN
K3N0ZXJlbykuIFRoZW4gc2V0IHRoZSBtYXhpbXVtIGZvciB0aGUgYmFuZCB0bwordGhlIGktdGgg
aW5kZXggb2YgY2FjaGUuY2FwcyArIDY0IGFuZCBtdWx0aXBseSBieSB0aGUgbnVtYmVyIG9mIGNo
YW5uZWxzCitpbiB0aGUgY3VycmVudCBmcmFtZSAob25lIG9yIHR3bykgYW5kIGJ5IE4sIHRoZW4g
ZGl2aWRlIHRoZSByZXN1bHQgYnkgNAordXNpbmcgaW50ZWdlciBkaXZpc2lvbi4gVGhlIHJlc3Vs
dGluZyB2ZWN0b3Igd2lsbCBiZSBjYWxsZWQKK2NhcFtdLiBUaGUgZWxlbWVudHMgZml0IGluIHNp
Z25lZCAxNi1iaXQgaW50ZWdlcnMgYnV0IGRvIG5vdCBmaXQgaW4gOCBiaXRzLgorVGhpcyBwcm9j
ZWR1cmUgaXMgaW1wbGVtZW50ZWQgaW4gdGhlIHJlZmVyZW5jZSBpbiB0aGUgZnVuY3Rpb24gaW5p
dF9jYXBzKCkgaW4gY2VsdC5jLgorPC90PgorCis8dD5UaGUgYmFuZCBib29zdHMgYXJlIHJlcHJl
c2VudGVkIGJ5IGEgc2VyaWVzIG9mIGJpbmFyeSBzeW1ib2xzIHdoaWNoCithcmUgZW50cm9weSBj
b2RlZCB3aXRoIHZlcnkgbG93IHByb2JhYmlsaXR5LiBFYWNoIGJhbmQgY2FuIHBvdGVudGlhbGx5
IGJlIGJvb3N0ZWQKK211bHRpcGxlIHRpbWVzLCBzdWJqZWN0IHRvIHRoZSBmcmFtZSBhY3R1YWxs
eSBoYXZpbmcgZW5vdWdoIHJvb20gdG8gb2JleQordGhlIGJvb3N0IGFuZCBoYXZpbmcgZW5vdWdo
IHJvb20gdG8gY29kZSB0aGUgYm9vc3Qgc3ltYm9sLiBUaGUgZGVmYXVsdAorY29kaW5nIGNvc3Qg
Zm9yIGEgYm9vc3Qgc3RhcnRzIG91dCBhdCBzaXggYml0cyAocHJvYmFiaWxpdHkgcD0xLzY0KSwg
YnV0IHN1YnNlcXVlbnQgYm9vc3RzCitpbiBhIGJhbmQgY29zdCBvbmx5IGEgc2luZ2xlIGJpdCBh
bmQgZXZlcnkgdGltZSBhIGJhbmQgaXMgYm9vc3RlZCB0aGUKK2luaXRpYWwgY29zdCBpcyByZWR1
Y2VkIChkb3duIHRvIGEgbWluaW11bSBvZiB0d28gYml0cywgb3IgcD0xLzQpLiBTaW5jZSB0aGUg
aW5pdGlhbAorY29zdCBvZiBjb2RpbmcgYSBib29zdCBpcyA2IGJpdHMsIHRoZSBjb2RpbmcgY29z
dCBvZiB0aGUgYm9vc3Qgc3ltYm9scyB3aGVuCitjb21wbGV0ZWx5IHVudXNlZCBpcyAwLjQ4IGJp
dHMvZnJhbWUgZm9yIGEgMjEgYmFuZCBtb2RlICgyMSotbG9nMigxLTEvMioqNikpLjwvdD4KKwor
PHQ+VG8gZGVjb2RlIHRoZSBiYW5kIGJvb3N0czogRmlyc3Qgc2V0ICdkeW5hbGxvY19sb2dwJyB0
byA2LCB0aGUgaW5pdGlhbAorYW1vdW50IG9mIHN0b3JhZ2UgcmVxdWlyZWQgdG8gc2lnbmFsIGEg
Ym9vc3QgaW4gYml0cywgJ3RvdGFsX2JpdHMnIHRvIHRoZQorc2l6ZSBvZiB0aGUgZnJhbWUgaW4g
OHRoIGJpdHMsICd0b3RhbF9ib29zdCcgdG8gemVybywgYW5kICd0ZWxsJyB0byB0aGUgdG90YWwg
bnVtYmVyCitvZiA4dGggYml0cyBkZWNvZGVkCitzbyBmYXIuIEZvciBlYWNoIGJhbmQgZnJvbSB0
aGUgY29kaW5nIHN0YXJ0ICgwIG5vcm1hbGx5LCBidXQgMTcgaW4gSHlicmlkIG1vZGUpCit0byB0
aGUgY29kaW5nIGVuZCAod2hpY2ggY2hhbmdlcyBkZXBlbmRpbmcgb24gdGhlIHNpZ25hbGVkIGJh
bmR3aWR0aCksIHRoZSBib29zdCBxdWFudGEKK2luIHVuaXRzIG9mIDEvOCBiaXQgaXMgY2FsY3Vs
YXRlZCBhcyBxdWFudGEgPSBtaW4oOCpOLCBtYXgoNDgsIE4pKS4KK1RoaXMgcmVwcmVzZW50cyBh
IGJvb3N0IHN0ZXAgc2l6ZSBvZiBzaXggYml0cywgc3ViamVjdCB0byBhIGxvd2VyIGxpbWl0IG9m
CisxLzh0aCZuYnNwO2JpdC9zYW1wbGUgYW5kIGFuIHVwcGVyIGxpbWl0IG9mIDEmbmJzcDtiaXQv
c2FtcGxlLgorU2V0ICdib29zdCcgdG8gemVybyBhbmQgJ2R5bmFsbG9jX2xvb3BfbG9ncCcKK3Rv
IGR5bmFsbG9jX2xvZ3AuIFdoaWxlIGR5bmFsbG9jX2xvb3BfbG9nICh0aGUgY3VycmVudCB3b3Jz
dCBjYXNlIHN5bWJvbCBjb3N0KSBpbgorOHRoIGJpdHMgcGx1cyB0ZWxsIGlzIGxlc3MgdGhhbiB0
b3RhbF9iaXRzIHBsdXMgdG90YWxfYm9vc3QgYW5kIGJvb3N0IGlzIGxlc3MgdGhhbiBjYXBbXSBm
b3IgdGhpcworYmFuZDogRGVjb2RlIGEgYml0IGZyb20gdGhlIGJpdHN0cmVhbSB3aXRoIGEgd2l0
aCBkeW5hbGxvY19sb29wX2xvZ3AgYXMgdGhlIGNvc3QKK29mIGEgb25lLCB1cGRhdGUgdGVsbCB0
byByZWZsZWN0IHRoZSBjdXJyZW50IHVzZWQgY2FwYWNpdHksIGlmIHRoZSBkZWNvZGVkIHZhbHVl
CitpcyB6ZXJvIGJyZWFrIHRoZSAgbG9vcCBvdGhlcndpc2UgYWRkIHF1YW50YSB0byBib29zdCBh
bmQgdG90YWxfYm9vc3QsIHN1YnRyYWN0IHF1YW50YSBmcm9tCit0b3RhbF9iaXRzLCBhbmQgc2V0
IGR5bmFsbG9jX2xvb3BfbG9nIHRvIDEuIFdoZW4gdGhlIHdoaWxlIGxvb3AgZmluaXNoZXMKK2Jv
b3N0IGNvbnRhaW5zIHRoZSBib29zdCBmb3IgdGhpcyBiYW5kLiBJZiBib29zdCBpcyBub24temVy
byBhbmQgZHluYWxsb2NfbG9ncAoraXMgZ3JlYXRlciB0aGFuIDIsIGRlY3JlYXNlIGR5bmFsbG9j
X2xvZ3AuICBPbmNlIHRoaXMgcHJvY2VzcyBoYXMgYmVlbgorZXhlY3V0ZWQgb24gYWxsIGJhbmRz
LCB0aGUgYmFuZCBib29zdHMgaGF2ZSBiZWVuIGRlY29kZWQuIFRoaXMgcHJvY2VkdXJlCitpcyBp
bXBsZW1lbnRlZCBhcm91bmQgbGluZSAyNDc0IG9mIGNlbHQuYy48L3Q+CisKKzx0PkF0IHZlcnkg
bG93IHJhdGVzIGl0IGlzIHBvc3NpYmxlIHRoYXQgdGhlcmUgd29uJ3QgYmUgZW5vdWdoIGF2YWls
YWJsZQorc3BhY2UgdG8gZXhlY3V0ZSB0aGUgaW5uZXIgbG9vcCBldmVuIG9uY2UuIEluIHRoZXNl
IGNhc2VzIGJhbmQgYm9vc3QKK2lzIG5vdCBwb3NzaWJsZSBidXQgaXRzIG92ZXJoZWFkIGlzIGNv
bXBsZXRlbHkgZWxpbWluYXRlZC4gQmVjYXVzZSBvZiB0aGUKK2hpZ2ggY29zdCBvZiBiYW5kIGJv
b3N0IHdoZW4gYWN0aXZhdGVkLCBhIHJlYXNvbmFibGUgZW5jb2RlciBzaG91bGQgbm90IGJlCit1
c2luZyBpdCBhdCB2ZXJ5IGxvdyByYXRlcy4gVGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRzIGl0cyBk
eW5hbGxvYyBkZWNpc2lvbgorbG9naWMgYXJvdW5kIGxpbmUgMTMwNCBvZiBjZWx0LmMuPC90Pgor
Cis8dD5UaGUgYWxsb2NhdGlvbiB0cmltIGlzIGEgaW50ZWdlciB2YWx1ZSBmcm9tIDAtMTAuIFRo
ZSBkZWZhdWx0IHZhbHVlIG9mCis1IGluZGljYXRlcyBubyB0cmltLiBUaGUgdHJpbSBwYXJhbWV0
ZXIgaXMgZW50cm9weSBjb2RlZCBpbiBvcmRlciB0bworbG93ZXIgdGhlIGNvZGluZyBjb3N0IG9m
IGxlc3MgZXh0cmVtZSBhZGp1c3RtZW50cy4gVmFsdWVzIGxvd2VyIHRoYW4KKzUgYmlhcyB0aGUg
YWxsb2NhdGlvbiB0b3dhcmRzIGxvd2VyIGZyZXF1ZW5jaWVzIGFuZCB2YWx1ZXMgYWJvdmUgNQor
YmlhcyBpdCB0b3dhcmRzIGhpZ2hlciBmcmVxdWVuY2llcy4gTGlrZSBvdGhlciBzaWduYWxlZCBw
YXJhbWV0ZXJzLCBzaWduYWxpbmcKK29mIHRoZSB0cmltIGlzIGdhdGVkIHNvIHRoYXQgaXQgaXMg
bm90IGluY2x1ZGVkIGlmIHRoZXJlIGlzIGluc3VmZmljaWVudCBzcGFjZQorYXZhaWxhYmxlIGlu
IHRoZSBiaXRzdHJlYW0uIFRvIGRlY29kZSB0aGUgdHJpbSwgZmlyc3Qgc2V0Cit0aGUgdHJpbSB2
YWx1ZSB0byA1LCB0aGVuIGlmIGFuZCBvbmx5IGlmIHRoZSBjb3VudCBvZiBkZWNvZGVkIDh0aCBi
aXRzIHNvIGZhciAoZWNfdGVsbF9mcmFjKQorcGx1cyA0OCAoNiBiaXRzKSBpcyBsZXNzIHRoYW4g
b3IgZXF1YWwgdG8gdGhlIHRvdGFsIGZyYW1lIHNpemUgaW4gOHRoCitiaXRzIG1pbnVzIHRvdGFs
X2Jvb3N0IChhIHByb2R1Y3Qgb2YgdGhlIGFib3ZlIGJhbmQgYm9vc3QgcHJvY2VkdXJlKSwKK2Rl
Y29kZSB0aGUgdHJpbSB2YWx1ZSB1c2luZyB0aGUgUERGIGluIDx4cmVmIHRhcmdldD0iY2VsdF90
cmltX3BkZiIvPi48L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJjZWx0X3RyaW1fcGRmIiB0aXRs
ZT0iUERGIGZvciB0aGUgVHJpbSI+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPnsxLCAxLCAyLCA1
LCAxMCwgMjIsIDQ2LCAyMiwgMTAsIDUsIDIsIDJ9LzEyODwvYz4KKzwvdGV4dHRhYmxlPgorCis8
dD5Gb3IgMTAgbXMgYW5kIDIwIG1zIGZyYW1lcyB1c2luZyBzaG9ydCBibG9ja3MgYW5kIHRoYXQg
aGF2ZSBhdCBsZWFzdCBMTSsyIGJpdHMgbGVmdCBwcmlvciB0bwordGhlIGFsbG9jYXRpb24gcHJv
Y2VzcywgdGhlbiBvbmUgYW50aS1jb2xsYXBzZSBiaXQgaXMgcmVzZXJ2ZWQgaW4gdGhlIGFsbG9j
YXRpb24gcHJvY2VzcyBzbyBpdCBjYW4KK2JlIGRlY29kZWQgbGF0ZXIuIEZvbGxvd2luZyB0aGUg
dGhlIGFudGktY29sbGFwc2UgcmVzZXJ2YXRpb24sIG9uZSBiaXQgaXMgcmVzZXJ2ZWQgZm9yIHNr
aXAgaWYgYXZhaWxhYmxlLjwvdD4KKworPHQ+Rm9yIHN0ZXJlbyBmcmFtZXMsIGJpdHMgYXJlIHJl
c2VydmVkIGZvciBpbnRlbnNpdHkgc3RlcmVvIGFuZCBmb3IgZHVhbCBzdGVyZW8uIEludGVuc2l0
eSBzdGVyZW8KK3JlcXVpcmVzIGlsb2cyKGVuZC1zdGFydCkgYml0cy4gVGhvc2UgYml0cyBhcmUg
cmVzZXJ2ZWQgaWYgdGhlcmUgaXMgZW5vdWdoIGJpdHMgbGVmdC4gRm9sbG93aW5nIHRoaXMsIG9u
ZQorYml0IGlzIHJlc2VydmVkIGZvciBkdWFsIHN0ZXJlbyBpZiBhdmFpbGFibGUuPC90PgorCisK
Kzx0PlRoZSBhbGxvY2F0aW9uIGNvbXB1dGF0aW9uIGJlZ2lucyBieSBzZXR0aW5nIHVwIHNvbWUg
aW5pdGlhbCBjb25kaXRpb25zLgorJ3RvdGFsJyBpcyBzZXQgdG8gdGhlIHJlbWFpbmluZyBhdmFp
bGFibGUgOHRoIGJpdHMsIGNvbXB1dGVkIGJ5IHRha2luZyB0aGUKK3NpemUgb2YgdGhlIGNvZGVk
IGZyYW1lIHRpbWVzIDggYW5kIHN1YnRyYWN0aW5nIGVjX3RlbGxfZnJhYygpLiBGcm9tIHRoaXMg
dmFsdWUsIG9uZSAoOHRoIGJpdCkKK2lzIHN1YnRyYWN0ZWQgdG8gZW5zdXJlIHRoYXQgdGhlIHJl
c3VsdGluZyBhbGxvY2F0aW9uIHdpbGwgYmUgY29uc2VydmF0aXZlLiAnYW50aV9jb2xsYXBzZV9y
c3YnCitpcyBzZXQgdG8gOCAoOHRoIGJpdHMpIGlmIGFuZCBvbmx5IGlmIHRoZSBmcmFtZSBpcyBh
IHRyYW5zaWVudCwgTE0gaXMgZ3JlYXRlciB0aGFuIDEsIGFuZCB0b3RhbCBpcworZ3JlYXRlciB0
aGFuIG9yIGVxdWFsIHRvIChMTSsyKSAqIDguIFRvdGFsIGlzIHRoZW4gZGVjcmVtZW50ZWQgYnkg
YW50aV9jb2xsYXBzZV9yc3YgYW5kIGNsYW1wZWQKK3RvIGJlIGVxdWFsIHRvIG9yIGdyZWF0ZXIg
dGhhbiB6ZXJvLiAnc2tpcF9yc3YnIGlzIHNldCB0byA4ICg4dGggYml0cykgaWYgdG90YWwgaXMg
Z3JlYXRlciB0aGFuCis4LCBvdGhlcndpc2UgaXQgaXMgemVyby4gVG90YWwgaXMgdGhlbiBkZWNy
ZW1lbnRlZCBieSBza2lwX3Jzdi4gVGhpcyByZXNlcnZlcyBzcGFjZSBmb3IgdGhlCitmaW5hbCBz
a2lwcGluZyBmbGFnLjwvdD4KKworPHQ+SWYgdGhlIGN1cnJlbnQgZnJhbWUgaXMgc3RlcmVvLCBp
bnRlbnNpdHlfcnN2IGlzIHNldCB0byB0aGUgY29uc2VydmF0aXZlIGxvZzIgaW4gOHRoIGJpdHMK
K29mIHRoZSBudW1iZXIgb2YgY29kZWQgYmFuZHMgZm9yIHRoaXMgZnJhbWUgKGdpdmVuIGJ5IHRo
ZSB0YWJsZSBMT0cyX0ZSQUNfVEFCTEUgaW4gcmF0ZS5jKS4gSWYKK2ludGVuc2l0eV9yc3YgaXMg
Z3JlYXRlciB0aGFuIHRvdGFsIHRoZW4gaW50ZW5zaXR5X3JzdiBpcyBzZXQgdG8gemVyby4gT3Ro
ZXJ3aXNlIHRvdGFsIGlzCitkZWNyZW1lbnRlZCBieSBpbnRlbnNpdHlfcnN2LCBhbmQgaWYgdG90
YWwgaXMgc3RpbGwgZ3JlYXRlciB0aGFuIDgsIGR1YWxfc3RlcmVvX3JzdiBpcworc2V0IHRvIDgg
YW5kIHRvdGFsIGlzIGRlY3JlbWVudGVkIGJ5IGR1YWxfc3RlcmVvX3Jzdi48L3Q+CisKKzx0PlRo
ZSBhbGxvY2F0aW9uIHByb2Nlc3MgdGhlbiBjb21wdXRlcyBhIHZlY3RvciByZXByZXNlbnRpbmcg
dGhlIGhhcmQgbWluaW11bSBhbW91bnRzIGFsbG9jYXRpb24KK2FueSBiYW5kIHdpbGwgcmVjZWl2
ZSBmb3Igc2hhcGUuIFRoaXMgbWluaW11bSBpcyBoaWdoZXIgdGhhbiB0aGUgdGVjaG5pY2FsIGxp
bWl0IG9mIHRoZSBQVlEKK3Byb2Nlc3MsIGJ1dCB2ZXJ5IGxvdyByYXRlIGFsbG9jYXRpb25zIHBy
b2R1Y2UgYW4gZXhjZXNzaXZlbHkgc3BhcnNlIHNwZWN0cnVtIGFuZCB0aGVzZSBiYW5kcworYXJl
IGJldHRlciBzZXJ2ZWQgYnkgaGF2aW5nIG5vIGFsbG9jYXRpb24gYXQgYWxsLiBGb3IgZWFjaCBj
b2RlZCBiYW5kLCBzZXQgdGhyZXNoW2JhbmRdIHRvCit0d2VudHktZm91ciB0aW1lcyB0aGUgbnVt
YmVyIG9mIE1EQ1QgYmlucyBpbiB0aGUgYmFuZCBhbmQgZGl2aWRlIGJ5IDE2LiBJZiA4IHRpbWVz
IHRoZSBudW1iZXIKK29mIGNoYW5uZWxzIGlzIGdyZWF0ZXIsIHVzZSB0aGF0IGluc3RlYWQuIFRo
aXMgc2V0cyB0aGUgbWluaW11bSBhbGxvY2F0aW9uIHRvIG9uZSBiaXQgcGVyIGNoYW5uZWwKK29y
IDQ4IDEyOHRoIGJpdHMgcGVyIE1EQ1QgYmluLCB3aGljaGV2ZXIgaXMgZ3JlYXRlci4gVGhlIGJh
bmQtc2l6ZSBkZXBlbmRlbnQgcGFydCBvZiB0aGlzCit2YWx1ZSBpcyBub3Qgc2NhbGVkIGJ5IHRo
ZSBjaGFubmVsIGNvdW50LCBiZWNhdXNlIGF0IHRoZSB2ZXJ5IGxvdyByYXRlcyB3aGVyZSB0aGlz
IGxpbWl0IGlzCithcHBsaWNhYmxlIHRoZXJlIHdpbGwgdXN1YWxseSBiZSBubyBiaXRzIGFsbG9j
YXRlZCB0byB0aGUgc2lkZS48L3Q+CisKKzx0PlRoZSBwcmV2aW91c2x5IGRlY29kZWQgYWxsb2Nh
dGlvbiB0cmltIGlzIHVzZWQgdG8gZGVyaXZlIGEgdmVjdG9yIG9mIHBlci1iYW5kIGFkanVzdG1l
bnRzLAorJ3RyaW1fb2Zmc2V0c1tdJy4gRm9yIGVhY2ggY29kZWQgYmFuZCB0YWtlIHRoZSBhbGxv
Y190cmltIGFuZCBzdWJ0cmFjdCA1IGFuZCBMTS4gVGhlbiBtdWx0aXBseQordGhlIHJlc3VsdCBi
eSB0aGUgbnVtYmVyIG9mIGNoYW5uZWxzLCB0aGUgbnVtYmVyIG9mIE1EQ1QgYmlucyBpbiB0aGUg
c2hvcnRlc3QgZnJhbWUgc2l6ZSBmb3IgdGhpcyBtb2RlLAordGhlIG51bWJlciBvZiByZW1haW5p
bmcgYmFuZHMsIDIqKkxNLCBhbmQgOC4gVGhlbiBkaXZpZGUgdGhpcyB2YWx1ZSBieSA2NC4gRmlu
YWxseSwgaWYgdGhlCitudW1iZXIgb2YgTURDVCBiaW5zIGluIHRoZSBiYW5kIHBlciBjaGFubmVs
IGlzIG9ubHkgb25lLCA4IHRpbWVzIHRoZSBudW1iZXIgb2YgY2hhbm5lbHMgaXMgc3VidHJhY3Rl
ZAoraW4gb3JkZXIgdG8gZGltaW5pc2ggdGhlIGFsbG9jYXRpb24gYnkgb25lIGJpdCwgYmVjYXVz
ZSB3aWR0aCAxIGJhbmRzIHJlY2VpdmUgZ3JlYXRlciBiZW5lZml0Citmcm9tIHRoZSBjb2Fyc2Ug
ZW5lcmd5IGNvZGluZy48L3Q+CisKKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9IlBW
US1kZWNvZGVyIiB0aXRsZT0iU2hhcGUgRGVjb2RpbmciPgorPHQ+CitJbiBlYWNoIGJhbmQsIHRo
ZSBub3JtYWxpemVkICJzaGFwZSIgaXMgZW5jb2RlZAordXNpbmcgYSB2ZWN0b3IgcXVhbnRpemF0
aW9uIHNjaGVtZSBjYWxsZWQgYSAicHlyYW1pZCB2ZWN0b3IgcXVhbnRpemVyIi4KKzwvdD4KKwor
PHQ+SW4KK3RoZSBzaW1wbGVzdCBjYXNlLCB0aGUgbnVtYmVyIG9mIGJpdHMgYWxsb2NhdGVkIGlu
Cis8eHJlZiB0YXJnZXQ9ImFsbG9jYXRpb24iPjwveHJlZj4gaXMgY29udmVydGVkIHRvIGEgbnVt
YmVyIG9mIHB1bHNlcyBhcyBkZXNjcmliZWQKK2J5IDx4cmVmIHRhcmdldD0iYml0cy1wdWxzZXMi
PjwveHJlZj4uIEtub3dpbmcgdGhlIG51bWJlciBvZiBwdWxzZXMgYW5kIHRoZQorbnVtYmVyIG9m
IHNhbXBsZXMgaW4gdGhlIGJhbmQsIHRoZSBkZWNvZGVyIGNhbGN1bGF0ZXMgdGhlIHNpemUgb2Yg
dGhlIGNvZGVib29rCithcyBkZXRhaWxlZCBpbiA8eHJlZiB0YXJnZXQ9ImN3cnMtZGVjb2RlciI+
PC94cmVmPi4gVGhlIHNpemUgaXMgdXNlZCB0byBkZWNvZGUKK2FuIHVuc2lnbmVkIGludGVnZXIg
KHVuaWZvcm0gcHJvYmFiaWxpdHkgbW9kZWwpLCB3aGljaCBpcyB0aGUgY29kZXdvcmQgaW5kZXgu
CitUaGlzIGluZGV4IGlzIGNvbnZlcnRlZCBpbnRvIHRoZSBjb3JyZXNwb25kaW5nIHZlY3RvciBh
cyBleHBsYWluZWQgaW4KKzx4cmVmIHRhcmdldD0iY3dycy1kZWNvZGVyIj48L3hyZWY+LiBUaGlz
IHZlY3RvciBpcyB0aGVuIHNjYWxlZCB0byB1bml0IG5vcm0uCis8L3Q+CisKKzxzZWN0aW9uIGFu
Y2hvcj0iYml0cy1wdWxzZXMiIHRpdGxlPSJCaXRzIHRvIFB1bHNlcyI+Cis8dD4KK0FsdGhvdWdo
IHRoZSBhbGxvY2F0aW9uIGlzIHBlcmZvcm1lZCBpbiAxLzh0aCBiaXQgdW5pdHMsIHRoZSBxdWFu
dGl6YXRpb24gcmVxdWlyZXMKK2FuIGludGVnZXIgbnVtYmVyIG9mIHB1bHNlcyBLLiBUbyBkbyB0
aGlzLCB0aGUgZW5jb2RlciBzZWFyY2hlcyBmb3IgdGhlIHZhbHVlCitvZiBLIHRoYXQgcHJvZHVj
ZXMgdGhlIG51bWJlciBvZiBiaXRzIG5lYXJlc3QgdG8gdGhlIGFsbG9jYXRlZCB2YWx1ZQorKHJv
dW5kaW5nIGRvd24gaWYgZXhhY3RseSBoYWxmd2F5IGJldHdlZW4gdHdvIHZhbHVlcyksIG5vdCB0
byBleGNlZWQKK3RoZSB0b3RhbCBudW1iZXIgb2YgYml0cyBhdmFpbGFibGUuIEZvciBlZmZpY2ll
bmN5IHJlYXNvbnMsIHRoZSBzZWFyY2ggaXMgcGVyZm9ybWVkIGFnYWluc3QgYQorcHJlY29tcHV0
ZWQgYWxsb2NhdGlvbiB0YWJsZSB3aGljaCBvbmx5IHBlcm1pdHMgc29tZSBLIHZhbHVlcyBmb3Ig
ZWFjaCBOLiBUaGUgbnVtYmVyIG9mCitjb2RlYm9vayBlbnRyaWVzIGNhbiBiZSBjb21wdXRlZCBh
cyBleHBsYWluZWQgaW4gPHhyZWYgdGFyZ2V0PSJjd3JzLWRlY29kZXIiPjwveHJlZj4uIFRoZSBk
aWZmZXJlbmNlCitiZXR3ZWVuIHRoZSBudW1iZXIgb2YgYml0cyBhbGxvY2F0ZWQgYW5kIHRoZSBu
dW1iZXIgb2YgYml0cyB1c2VkIGlzIGFjY3VtdWxhdGVkIHRvIGEKKyJiYWxhbmNlIiAoaW5pdGlh
bGl6ZWQgdG8gemVybykgdGhhdCBoZWxwcyBhZGp1c3QgdGhlCithbGxvY2F0aW9uIGZvciB0aGUg
bmV4dCBiYW5kcy4gT25lIHRoaXJkIG9mIHRoZSBiYWxhbmNlIGlzIGFwcGxpZWQgdG8gdGhlCiti
aXQgYWxsb2NhdGlvbiBvZiBlYWNoIGJhbmQgdG8gaGVscCBhY2hpZXZlIHRoZSB0YXJnZXQgYWxs
b2NhdGlvbi4gVGhlIG9ubHkKK2V4Y2VwdGlvbnMgYXJlIHRoZSBiYW5kIGJlZm9yZSB0aGUgbGFz
dCBhbmQgdGhlIGxhc3QgYmFuZCwgZm9yIHdoaWNoIGhhbGYgdGhlIGJhbGFuY2UKK2FuZCB0aGUg
d2hvbGUgYmFsYW5jZSBhcmUgYXBwbGllZCwgcmVzcGVjdGl2ZWx5LgorPC90PgorPC9zZWN0aW9u
PgorCis8c2VjdGlvbiBhbmNob3I9ImN3cnMtZGVjb2RlciIgdGl0bGU9IlBWUSBEZWNvZGluZyI+
CisKKzx0PgorRGVjb2Rpbmcgb2YgUFZRIHZlY3RvcnMgaXMgaW1wbGVtZW50ZWQgaW4gZGVjb2Rl
X3B1bHNlcygpIChjd3JzLmMpLgorVGhlIHVuaXF1ZSBjb2Rld29yZCBpbmRleCBpcyBkZWNvZGVk
IGFzIGEgdW5pZm9ybWx5LWRpc3RyaWJ1dGVkIGludGVnZXIgdmFsdWUgYmV0d2VlbiAwIGFuZAor
VihOLEspLTEsIHdoZXJlIFYoTixLKSBpcyB0aGUgbnVtYmVyIG9mIHBvc3NpYmxlIGNvbWJpbmF0
aW9ucyBvZiBLIHB1bHNlcyBpbgorTiBzYW1wbGVzLiBUaGUgaW5kZXggaXMgdGhlbiBjb252ZXJ0
ZWQgdG8gYSB2ZWN0b3IgaW4gdGhlIHNhbWUgd2F5IHNwZWNpZmllZCBpbgorPHhyZWYgdGFyZ2V0
PSJQVlEiPjwveHJlZj4uIFRoZSBpbmRleGluZyBpcyBiYXNlZCBvbiB0aGUgY2FsY3VsYXRpb24g
b2YgVihOLEspCisoZGVub3RlZCBOKEwsSykgaW4gPHhyZWYgdGFyZ2V0PSJQVlEiPjwveHJlZj4p
LgorPC90PgorCis8dD4KKyBUaGUgbnVtYmVyIG9mIGNvbWJpbmF0aW9ucyBjYW4gYmUgY29tcHV0
ZWQgcmVjdXJzaXZlbHkgYXMKK1YoTixLKSA9IFYoTi0xLEspICsgVihOLEstMSkgKyBWKE4tMSxL
LTEpLCB3aXRoIFYoTiwwKSA9IDEgYW5kIFYoMCxLKSA9IDAsIEsgIT0gMC4KK1RoZXJlIGFyZSBt
YW55IGRpZmZlcmVudCB3YXlzIHRvIGNvbXB1dGUgVihOLEspLCBpbmNsdWRpbmcgcHJlY29tcHV0
ZWQgdGFibGVzIGFuZCBkaXJlY3QKK3VzZSBvZiB0aGUgcmVjdXJzaXZlIGZvcm11bGF0aW9uLiBU
aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGFwcGxpZXMgdGhlIHJlY3Vyc2l2ZQorZm9ybXVs
YXRpb24gb25lIGxpbmUgKG9yIGNvbHVtbikgYXQgYSB0aW1lIHRvIHNhdmUgb24gbWVtb3J5IHVz
ZSwKK2Fsb25nIHdpdGggYW4gYWx0ZXJuYXRlLAordW5pdmFyaWF0ZSByZWN1cnJlbmNlIHRvIGlu
aXRpYWxpemUgYW4gYXJiaXRyYXJ5IGxpbmUsIGFuZCBkaXJlY3QKK3BvbHlub21pYWwgc29sdXRp
b25zIGZvciBzbWFsbCBOLiBBbGwgb2YgdGhlc2UgbWV0aG9kcyBhcmUKK2VxdWl2YWxlbnQsIGFu
ZCBoYXZlIGRpZmZlcmVudCB0cmFkZS1vZmZzIGluIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIGFuZAor
Y29kZSBzaXplLiBJbXBsZW1lbnRhdGlvbnMgTUFZIHVzZSBhbnkgbWV0aG9kcyB0aGV5IGxpa2Us
IGFzIGxvbmcgYXMKK3RoZXkgYXJlIGVxdWl2YWxlbnQgdG8gdGhlIG1hdGhlbWF0aWNhbCBkZWZp
bml0aW9uLgorPC90PgorCis8dD4KK1RoZSBkZWNvZGVkIHZlY3RvciBYIGlzIHJlY292ZXJlZCBh
cyBmb2xsb3dzLgorTGV0IGkgYmUgdGhlIGluZGV4IGRlY29kZWQgd2l0aCB0aGUgcHJvY2VkdXJl
IGluIDx4cmVmIHRhcmdldD0iZWNfZGVjX3VpbnQiLz4KKyB3aXRoIGZ0Jm5ic3A7PSZuYnNwO1Yo
TixLKSwgc28gdGhhdCAwJm5ic3A7Jmx0Oz0mbmJzcDtpJm5ic3A7Jmx0OyZuYnNwO1YoTixLKS4K
K0xldCBrJm5ic3A7PSZuYnNwO0suCitUaGVuIGZvciBqJm5ic3A7PSZuYnNwOzAgdG8gKE4mbmJz
cDstJm5ic3A7MSksIGluY2x1c2l2ZSwgZG86Cis8bGlzdCBzdHlsZT0ibnVtYmVycyI+Cis8dD5M
ZXQgcCZuYnNwOz0mbmJzcDsoVihOLWotMSxrKSZuYnNwOysmbmJzcDtWKE4taixrKSkvMi48L3Q+
Cis8dD4KK0lmIGkmbmJzcDsmbHQ7Jm5ic3A7cCwgdGhlbiBsZXQgc2duJm5ic3A7PSZuYnNwOzEs
IGVsc2UgbGV0IHNnbiZuYnNwOz0mbmJzcDstMQorIGFuZCBzZXQgaSZuYnNwOz0mbmJzcDtpJm5i
c3A7LSZuYnNwO3AuCis8L3Q+Cis8dD5MZXQgazAmbmJzcDs9Jm5ic3A7ayBhbmQgc2V0IHAmbmJz
cDs9Jm5ic3A7cCZuYnNwOy0mbmJzcDtWKE4tai0xLGspLjwvdD4KKzx0PgorV2hpbGUgcCZuYnNw
OyZndDsmbmJzcDtpLCBzZXQgayZuYnNwOz0mbmJzcDtrJm5ic3A7LSZuYnNwOzEgYW5kCisgcCZu
YnNwOz0mbmJzcDtwJm5ic3A7LSZuYnNwO1YoTi1qLTEsaykuCis8L3Q+Cis8dD4KK1NldCBYW2pd
Jm5ic3A7PSZuYnNwO3NnbiooazAmbmJzcDstJm5ic3A7aykgYW5kIGkmbmJzcDs9Jm5ic3A7aSZu
YnNwOy0mbmJzcDtwLgorPC90PgorPC9saXN0PgorPC90PgorCis8dD4KK1RoZSBkZWNvZGVkIHZl
Y3RvciBYIGlzIHRoZW4gbm9ybWFsaXplZCBzdWNoIHRoYXQgaXRzCitMMi1ub3JtIGVxdWFscyBv
bmUuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic3ByZWFkaW5nIiB0aXRs
ZT0iU3ByZWFkaW5nIj4KKzx0PgorVGhlIG5vcm1hbGl6ZWQgdmVjdG9yIGRlY29kZWQgaW4gPHhy
ZWYgdGFyZ2V0PSJjd3JzLWRlY29kZXIiLz4gaXMgdGhlbiByb3RhdGVkCitmb3IgdGhlIHB1cnBv
c2Ugb2YgYXZvaWRpbmcgdG9uYWwgYXJ0aWZhY3RzLiBUaGUgcm90YXRpb24gZ2FpbiBpcyBlcXVh
bCB0bworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworZ19yID0gTiAvIChOICsgZl9yKkspCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4K
Kword2hlcmUgTiBpcyB0aGUgbnVtYmVyIG9mIGRpbWVuc2lvbnMsIEsgaXMgdGhlIG51bWJlciBv
ZiBwdWxzZXMsIGFuZCBmX3IgZGVwZW5kcyBvbgordGhlIHZhbHVlIG9mIHRoZSAic3ByZWFkIiBw
YXJhbWV0ZXIgaW4gdGhlIGJpdC1zdHJlYW0uCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJz
cHJlYWQgdmFsdWVzIiB0aXRsZT0iU3ByZWFkaW5nIFZhbHVlcyI+Cis8dHRjb2w+U3ByZWFkIHZh
bHVlPC90dGNvbD4KKzx0dGNvbD5mX3I8L3R0Y29sPgorIDxjPjA8L2M+IDxjPmluZmluaXRlIChu
byByb3RhdGlvbik8L2M+CisgPGM+MTwvYz4gPGM+MTU8L2M+CisgPGM+MjwvYz4gPGM+MTA8L2M+
CisgPGM+MzwvYz4gPGM+NTwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK1RoZSByb3RhdGlvbiBh
bmdsZSBpcyB0aGVuIGNhbGN1bGF0ZWQgYXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgMgorICAgICAg
ICBwaSAqICBnX3IKK3RoZXRhID0gLS0tLS0tLS0tLQorICAgICAgICAgICAgNAorXV0+PC9hcnR3
b3JrPgorPC9maWd1cmU+CitBIDItRCByb3RhdGlvbiBSKGksaikgYmV0d2VlbiBwb2ludHMgeF9p
IGFuZCB4X2ogaXMgZGVmaW5lZCBhczoKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29y
ayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3hfaScgPSAgY29zKHRoZXRhKSp4X2kgKyBzaW4o
dGhldGEpKnhfagoreF9qJyA9IC1zaW4odGhldGEpKnhfaSArIGNvcyh0aGV0YSkqeF9qCitdXT48
L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworQW4gTi1EIHJvdGF0aW9uIGlzIHRoZW4gYWNoaWV2ZWQg
YnkgYXBwbHlpbmcgYSBzZXJpZXMgb2YgMi1EIHJvdGF0aW9ucyBiYWNrIGFuZCBmb3J0aCwgaW4g
dGhlCitmb2xsb3dpbmcgb3JkZXI6IFIoeF8xLCB4XzIpLCBSKHhfMiwgeF8zKSwgLi4uLCBSKHhf
Ti0yLCBYX04tMSksIFIoeF9OLTEsIFhfTiksCitSKHhfTi0yLCBYX04tMSksIC4uLiwgUih4XzEs
IHhfMikuCis8L3Q+CisKKzx0PgorSWYgdGhlIGRlY29kZWQgdmVjdG9yIHJlcHJlc2VudHMgbW9y
ZQordGhhbiBvbmUgdGltZSBibG9jaywgdGhlbiB0aGlzIHNwcmVhZGluZyBwcm9jZXNzIGlzIGFw
cGxpZWQgc2VwYXJhdGVseSBvbiBlYWNoIHRpbWUgYmxvY2suCitBbHNvLCBpZiBlYWNoIGJsb2Nr
IHJlcHJlc2VudHMgOCBzYW1wbGVzIG9yIG1vcmUsIHRoZW4gYW5vdGhlciBOLUQgcm90YXRpb24s
IGJ5CisocGkvMi10aGV0YSksIGlzIGFwcGxpZWQgPHNwYW54IHN0eWxlPSJlbXBoIj5iZWZvcmU8
L3NwYW54PiB0aGUgcm90YXRpb24gZGVzY3JpYmVkIGFib3ZlLiBUaGlzCitleHRyYSByb3RhdGlv
biBpcyBhcHBsaWVkIGluIGFuIGludGVybGVhdmVkIG1hbm5lciB3aXRoIGEgc3RyaWRlIGVxdWFs
IHRvIHJvdW5kKHNxcnQoTi9uYl9ibG9ja3MpKSwKK2kuZS4sIGl0IGlzIGFwcGxpZWQgaW5kZXBl
bmRlbnRseSBmb3IgZWFjaCBzZXQgb2Ygc2FtcGxlIFNfayA9IHtzdHJpZGUqbiArIGt9LCBuPTAu
Lk4vc3RyaWRlLTEuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic3BsaXQi
IHRpdGxlPSJTcGxpdCBkZWNvZGluZyI+Cis8dD4KK1RvIGF2b2lkIHRoZSBuZWVkIGZvciBtdWx0
aS1wcmVjaXNpb24gY2FsY3VsYXRpb25zIHdoZW4gZGVjb2RpbmcgUFZRIGNvZGV2ZWN0b3JzLAor
dGhlIG1heGltdW0gc2l6ZSBhbGxvd2VkIGZvciBjb2RlYm9va3MgaXMgMzIgYml0cy4gV2hlbiBs
YXJnZXIgY29kZWJvb2tzIGFyZQorbmVlZGVkLCB0aGUgdmVjdG9yIGlzIGluc3RlYWQgc3BsaXQg
aW4gdHdvIHN1Yi12ZWN0b3JzIG9mIHNpemUgTi8yLgorQSBxdWFudGl6ZWQgZ2FpbiBwYXJhbWV0
ZXIgd2l0aCBwcmVjaXNpb24KK2Rlcml2ZWQgZnJvbSB0aGUgY3VycmVudCBhbGxvY2F0aW9uIGlz
IGVudHJvcHkgY29kZWQgdG8gcmVwcmVzZW50IHRoZSByZWxhdGl2ZQorZ2FpbnMgb2YgZWFjaCBz
aWRlIG9mIHRoZSBzcGxpdCwgYW5kIHRoZSBlbnRpcmUgZGVjb2RpbmcgcHJvY2VzcyBpcyByZWN1
cnNpdmVseQorYXBwbGllZC4gTXVsdGlwbGUgbGV2ZWxzIG9mIHNwbGl0dGluZyBtYXkgYmUgYXBw
bGllZCB1cCB0byBhIGxpbWl0IG9mIExNKzEgc3BsaXRzLgorVGhlIHNhbWUgcmVjdXJzaXZlIG1l
Y2hhbmlzbSBpcyBhcHBsaWVkIGZvciB0aGUgam9pbnQgY29kaW5nCitvZiBzdGVyZW8gYXVkaW8u
Cis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJ0Zi1jaGFuZ2UiIHRpdGxl
PSJUaW1lLUZyZXF1ZW5jeSBjaGFuZ2UiPgorPHQ+CitUaGUgdGltZS1mcmVxdWVuY3kgKFRGKSBw
YXJhbWV0ZXJzIGFyZSB1c2VkIHRvIGNvbnRyb2wgdGhlIHRpbWUtZnJlcXVlbmN5IHJlc29sdXRp
b24gdHJhZGVvZmYKK2luIGVhY2ggY29kZWQgYmFuZC4gRm9yIGVhY2ggYmFuZCwgdGhlcmUgYXJl
IHR3byBwb3NzaWJsZSBURiBjaG9pY2VzLiBGb3IgdGhlIGZpcnN0CitiYW5kIGNvZGVkLCB0aGUg
UERGIGlzIHszLCAxfS80IGZvciBmcmFtZXMgbWFya2VkIGFzIHRyYW5zaWVudCBhbmQgezE1LCAx
fS8xNiBmb3IKK3RoZSBvdGhlciBmcmFtZXMuIEZvciBzdWJzZXF1ZW50IGJhbmRzLCB0aGUgVEYg
Y2hvaWNlIGlzIGNvZGVkIHJlbGF0aXZlIHRvIHRoZQorcHJldmlvdXMgVEYgY2hvaWNlIHdpdGgg
cHJvYmFiaWxpdHkgezE1LCAxfS8xNSBmb3IgdHJhbnNpZW50IGZyYW1lcyBhbmQgezMxLCAxfS8z
Mgorb3RoZXJ3aXNlLiBUaGUgbWFwcGluZyBiZXR3ZWVuIHRoZSBkZWNvZGVkIFRGIGNob2ljZXMg
YW5kIHRoZSBhZGp1c3RtZW50IGluIFRGCityZXNvbHV0aW9uIGlzIHNob3duIGluIHRoZSB0YWJs
ZXMgYmVsb3cuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSd0Zl8wMCcKKyB0aXRsZT0iVEYg
QWRqdXN0bWVudHMgZm9yIE5vbi10cmFuc2llbnQgRnJhbWVzIGFuZCB0Zl9zZWxlY3Q9MCI+Cis8
dHRjb2wgYWxpZ249J2NlbnRlcic+RnJhbWUgc2l6ZSAobXMpPC90dGNvbD4KKzx0dGNvbCBhbGln
bj0nY2VudGVyJz4wPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0nY2VudGVyJz4xPC90dGNvbD4KKzxj
PjIuNTwvYz4gICAgICA8Yz4wPC9jPiA8Yz4tMTwvYz4KKzxjPjU8L2M+ICAgICAgPGM+MDwvYz4g
PGM+LTE8L2M+Cis8Yz4xMDwvYz4gICAgICA8Yz4wPC9jPiA8Yz4tMjwvYz4KKzxjPjIwPC9jPiAg
ICAgIDxjPjA8L2M+IDxjPi0yPC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9y
PSd0Zl8wMScKKyB0aXRsZT0iVEYgQWRqdXN0bWVudHMgZm9yIE5vbi10cmFuc2llbnQgRnJhbWVz
IGFuZCB0Zl9zZWxlY3Q9MSI+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+RnJhbWUgc2l6ZSAobXMp
PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0nY2VudGVyJz4wPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0n
Y2VudGVyJz4xPC90dGNvbD4KKzxjPjIuNTwvYz4gICAgICA8Yz4wPC9jPiA8Yz4tMTwvYz4KKzxj
PjU8L2M+ICAgICAgPGM+MDwvYz4gPGM+LTI8L2M+Cis8Yz4xMDwvYz4gICAgICA8Yz4wPC9jPiA8
Yz4tMzwvYz4KKzxjPjIwPC9jPiAgICAgIDxjPjA8L2M+IDxjPi0zPC9jPgorPC90ZXh0dGFibGU+
CisKKworPHRleHR0YWJsZSBhbmNob3I9J3RmXzEwJworIHRpdGxlPSJURiBBZGp1c3RtZW50cyBm
b3IgVHJhbnNpZW50IEZyYW1lcyBhbmQgdGZfc2VsZWN0PTAiPgorPHR0Y29sIGFsaWduPSdjZW50
ZXInPkZyYW1lIHNpemUgKG1zKTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MDwvdHRj
b2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MTwvdHRjb2w+Cis8Yz4yLjU8L2M+ICAgICAgPGM+
MDwvYz4gPGM+LTE8L2M+Cis8Yz41PC9jPiAgICAgIDxjPjE8L2M+IDxjPjA8L2M+Cis8Yz4xMDwv
Yz4gICAgICA8Yz4yPC9jPiA8Yz4wPC9jPgorPGM+MjA8L2M+ICAgICAgPGM+MzwvYz4gPGM+MDwv
Yz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ndGZfMTEnCisgdGl0bGU9IlRG
IEFkanVzdG1lbnRzIGZvciBUcmFuc2llbnQgRnJhbWVzIGFuZCB0Zl9zZWxlY3Q9MSI+Cis8dHRj
b2wgYWxpZ249J2NlbnRlcic+RnJhbWUgc2l6ZSAobXMpPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0n
Y2VudGVyJz4wPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0nY2VudGVyJz4xPC90dGNvbD4KKzxjPjIu
NTwvYz4gICAgICA8Yz4wPC9jPiA8Yz4tMTwvYz4KKzxjPjU8L2M+ICAgICAgPGM+MTwvYz4gPGM+
LTE8L2M+Cis8Yz4xMDwvYz4gICAgICA8Yz4xPC9jPiA8Yz4tMTwvYz4KKzxjPjIwPC9jPiAgICAg
IDxjPjE8L2M+IDxjPi0xPC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorQSBuZWdhdGl2ZSBURiBh
ZGp1c3RtZW50IG1lYW5zIHRoYXQgdGhlIHRlbXBvcmFsIHJlc29sdXRpb24gaXMgaW5jcmVhc2Vk
LAord2hpbGUgYSBwb3NpdGl2ZSBURiBhZGp1c3RtZW50IG1lYW5zIHRoYXQgdGhlIGZyZXF1ZW5j
eSByZXNvbHV0aW9uIGlzIGluY3JlYXNlZC4KK0NoYW5nZXMgaW4gVEYgcmVzb2x1dGlvbiBhcmUg
aW1wbGVtZW50ZWQgdXNpbmcgdGhlIEhhZGFtYXJkIHRyYW5zZm9ybSA8eHJlZiB0YXJnZXQ9Ikhh
ZGFtYXJkIi8+LiBUbyBpbmNyZWFzZQordGhlIHRpbWUgcmVzb2x1dGlvbiBieSBOLCBOICJsZXZl
bHMiIG9mIHRoZSBIYWRhbWFyZCB0cmFuc2Zvcm0gYXJlIGFwcGxpZWQgdG8gdGhlCitkZWNvZGVk
IHZlY3RvciBmb3IgZWFjaCBpbnRlcmxlYXZlZCBNRENUIHZlY3Rvci4gVG8gaW5jcmVhc2UgdGhl
IGZyZXF1ZW5jeSByZXNvbHV0aW9uCisoYXNzdW1lcyBhIHRyYW5zaWVudCBmcmFtZSksIHRoZW4g
TiBsZXZlbHMgb2YgdGhlIEhhZGFtYXJkIHRyYW5zZm9ybSBhcmUgYXBwbGllZAorPHNwYW54IHN0
eWxlPSJlbXBoIj5hY3Jvc3M8L3NwYW54PiB0aGUgaW50ZXJsZWF2ZWQgTURDVCB2ZWN0b3IuIElu
IHRoZSBjYXNlIG9mIGluY3JlYXNlZAordGltZSByZXNvbHV0aW9uIHRoZSBkZWNvZGVyIHVzZXMg
dGhlICJzZXF1ZW5jeSBvcmRlciIgYmVjYXVzZSB0aGUgaW5wdXQgdmVjdG9yCitpcyBzb3J0ZWQg
aW4gdGltZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFu
Y2hvcj0iYW50aS1jb2xsYXBzZSIgdGl0bGU9IkFudGktQ29sbGFwc2UgUHJvY2Vzc2luZyI+Cis8
dD4KK1RoZSBhbnRpLWNvbGxhcHNlIGZlYXR1cmUgaXMgZGVzaWduZWQgdG8gYXZvaWQgdGhlIHNp
dHVhdGlvbiB3aGVyZSB0aGUgdXNlIG9mIG11bHRpcGxlCitzaG9ydCBNRENUcyBjYXVzZXMgdGhl
IGVuZXJneSBpbiBvbmUgb3IgbW9yZSBvZiB0aGUgTURDVHMgdG8gYmUgemVybyBmb3IKK3NvbWUg
YmFuZHMsIGNhdXNpbmcgdW5wbGVhc2FudCBhcnRpZmFjdHMuCitXaGVuIHRoZSBmcmFtZSBoYXMg
dGhlIHRyYW5zaWVudCBiaXQgc2V0LCBhbiBhbnRpLWNvbGxhcHNlIGJpdCBpcyBkZWNvZGVkLgor
V2hlbiBhbnRpLWNvbGxhcHNlIGlzIHNldCwgdGhlIGVuZXJneSBpbiBlYWNoIHNtYWxsIE1EQ1Qg
aXMgcHJldmVudGVkCitmcm9tIGNvbGxhcHNpbmcgdG8gemVyby4gRm9yIGVhY2ggYmFuZCBvZiBl
YWNoIE1EQ1Qgd2hlcmUgYSBjb2xsYXBzZSBpcworZGV0ZWN0ZWQsIGEgcHNldWRvLXJhbmRvbSBz
aWduYWwgaXMgaW5zZXJ0ZWQgd2l0aCBhbiBlbmVyZ3kgY29ycmVzcG9uZGluZwordG8gdGhlIG1p
bmltdW0gZW5lcmd5IG92ZXIgdGhlIHR3byBwcmV2aW91cyBmcmFtZXMuIEEgcmVub3JtYWxpemF0
aW9uIHN0ZXAgaXMKK3RoZW4gcmVxdWlyZWQgdG8gZW5zdXJlIHRoYXQgdGhlIGFudGktY29sbGFw
c2Ugc3RlcCBkaWQgbm90IGFsdGVyIHRoZQorZW5lcmd5IHByZXNlcnZhdGlvbiBwcm9wZXJ0eS4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJkZW5vcm1hbGl6YXRpb24iIHRp
dGxlPSJEZW5vcm1hbGl6YXRpb24iPgorPHQ+CitKdXN0IGFzIGVhY2ggYmFuZCB3YXMgbm9ybWFs
aXplZCBpbiB0aGUgZW5jb2RlciwgdGhlIGxhc3Qgc3RlcCBvZiB0aGUgZGVjb2RlciBiZWZvcmUK
K3RoZSBpbnZlcnNlIE1EQ1QgaXMgdG8gZGVub3JtYWxpemUgdGhlIGJhbmRzLiBFYWNoIGRlY29k
ZWQgbm9ybWFsaXplZCBiYW5kIGlzCittdWx0aXBsaWVkIGJ5IHRoZSBzcXVhcmUgcm9vdCBvZiB0
aGUgZGVjb2RlZCBlbmVyZ3kuIFRoaXMgaXMgZG9uZSBieSBkZW5vcm1hbGlzZV9iYW5kcygpCiso
YmFuZHMuYykuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iaW52ZXJzZS1t
ZGN0IiB0aXRsZT0iSW52ZXJzZSBNRENUIj4KKworCis8dD5UaGUgaW52ZXJzZSBNRENUIGltcGxl
bWVudGF0aW9uIGhhcyBubyBzcGVjaWFsIGNoYXJhY3RlcmlzdGljcy4gVGhlCitpbnB1dCBpcyBO
IGZyZXF1ZW5jeS1kb21haW4gc2FtcGxlcyBhbmQgdGhlIG91dHB1dCBpcyAyKk4gdGltZS1kb21h
aW4KK3NhbXBsZXMsIHdoaWxlIHNjYWxpbmcgYnkgMS8yLiBBICJsb3ctb3ZlcmxhcCIgd2luZG93
IHJlZHVjZXMgdGhlIGFsZ29yaXRobWljIGRlbGF5LgorSXQgaXMgZGVyaXZlZCBmcm9tIGEgYmFz
aWMgKGZ1bGwgb3ZlcmxhcCkgMjQwLXNhbXBsZSB2ZXJzaW9uIG9mIHRoZSB3aW5kb3cgdXNlZCBi
eSB0aGUgVm9yYmlzIGNvZGVjOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFs
aWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAyCisgICAgICAgLyAgIC9waSAgICAgIC9waSAgIG4gKyAxLzJcIFwgXAorVyhuKSA9IHxz
aW58LS0gKiBzaW58LS0gKiAtLS0tLS0tfCB8IHwgLgorICAgICAgIFwgICBcMiAgICAgICBcMiAg
ICAgICBMICAgLyAvIC8KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlIGxvdy1vdmVybGFw
IHdpbmRvdyBpcyBjcmVhdGVkIGJ5IHplcm8tcGFkZGluZyB0aGUgYmFzaWMgd2luZG93IGFuZCBp
bnNlcnRpbmcgb25lcyBpbiB0aGUKK21pZGRsZSwgc3VjaCB0aGF0IHRoZSByZXN1bHRpbmcgd2lu
ZG93IHN0aWxsIHNhdGlzZmllcyBwb3dlciBjb21wbGVtZW50YXJpdHkgPHhyZWYgdGFyZ2V0PSdQ
cmluY2VuODYnLz4uCitUaGUgSU1EQ1QgYW5kCit3aW5kb3dpbmcgYXJlIHBlcmZvcm1lZCBieSBt
ZGN0X2JhY2t3YXJkIChtZGN0LmMpLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9InBvc3QtZmls
dGVyIiB0aXRsZT0iUG9zdC1maWx0ZXIiPgorPHQ+CitUaGUgb3V0cHV0IG9mIHRoZSBpbnZlcnNl
IE1EQ1QgKGFmdGVyIHdlaWdodGVkIG92ZXJsYXAtYWRkKSBpcyBzZW50IHRvIHRoZQorcG9zdC1m
aWx0ZXIuIEFsdGhvdWdoIHRoZSBwb3N0LWZpbHRlciBpcyBhcHBsaWVkIGF0IHRoZSBlbmQsIHRo
ZSBwb3N0LWZpbHRlcgorcGFyYW1ldGVycyBhcmUgZW5jb2RlZCBhdCB0aGUgYmVnaW5uaW5nLCBq
dXN0IGFmdGVyIHRoZSBzaWxlbmNlIGZsYWcuCitUaGUgcG9zdC1maWx0ZXIgY2FuIGJlIHN3aXRj
aGVkIG9uIG9yIG9mZiB1c2luZyBvbmUgYml0IChsb2dwPTEpLgorSWYgdGhlIHBvc3QtZmlsdGVy
IGlzIGVuYWJsZWQsIHRoZW4gdGhlIG9jdGF2ZSBpcyBkZWNvZGVkIGFzIGFuIGludGVnZXIgdmFs
dWUKK2JldHdlZW4gMCBhbmQgNiBvZiB1bmlmb3JtIHByb2JhYmlsaXR5LiBPbmNlIHRoZSBvY3Rh
dmUgaXMga25vd24sIHRoZSBmaW5lIHBpdGNoCit3aXRoaW4gdGhlIG9jdGF2ZSBpcyBkZWNvZGVk
IHVzaW5nIDQrb2N0YXZlIHJhdyBiaXRzLiBUaGUgZmluYWwgcGl0Y2ggcGVyaW9kCitpcyBlcXVh
bCB0byAoMTYmbHQ7Jmx0O29jdGF2ZSkrZmluZV9waXRjaC0xIHNvIGl0IGlzIGJvdW5kZWQgYmV0
d2VlbiAxNSBhbmQgMTAyMiwKK2luY2x1c2l2ZWx5LiBOZXh0LCB0aGUgZ2FpbiBpcyBkZWNvZGVk
IGFzIHRocmVlIHJhdyBiaXRzIGFuZCBpcyBlcXVhbCB0bworRz0zKihpbnRfZ2FpbisxKS8zMi4g
VGhlIHNldCBvZiBwb3N0LWZpbHRlciB0YXBzIGlzIGRlY29kZWQgbGFzdCwgdXNpbmcKK2EgcGRm
IGVxdWFsIHRvIHsyLCAxLCAxfS80LiBUYXBzZXQgemVybyBjb3JyZXNwb25kcyB0byB0aGUgZmls
dGVyIGNvZWZmaWNpZW50cworZzAgPSAwLjMwNjY0MDYyNTAsIGcxID0gMC4yMTcwNDEwMTU2LCBn
MiA9IDAuMTI5NjM4NjcxOS4gVGFwc2V0IG9uZQorY29ycmVzcG9uZHMgdG8gdGhlIGZpbHRlciBj
b2VmZmljaWVudHMgZzAgPSAwLjQ2Mzg2NzE4NzUsIGcxID0gMC4yNjgwNjY0MDYyLAorZzIgPSAw
LCBhbmQgdGFwc2V0IHR3byB1c2VzIGZpbHRlciBjb2VmZmljaWVudHMgZzAgPSAwLjc5OTgwNDY4
NzUsCitnMSA9IDAuMTAwMDk3NjU2MiwgZzIgPSAwLgorPC90PgorCis8dD4KK1RoZSBwb3N0LWZp
bHRlciByZXNwb25zZSBpcyB0aHVzIGNvbXB1dGVkIGFzOgorICAgICAgICAgICAgICA8ZmlndXJl
IGFsaWduPSJjZW50ZXIiPgorICAgICAgICAgICAgICAgIDxhcnR3b3JrIGFsaWduPSJjZW50ZXIi
PgorICAgICAgICAgICAgICAgICAgPCFbQ0RBVEFbCisgICB5KG4pID0geChuKSArIEcqKGcwKnko
bi1UKSArIGcxKih5KG4tVCsxKSt5KG4tVCsxKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICsgZzIqKHkobi1UKzIpK3kobi1UKzIpKSkKK11dPgorICAgICAgICAgICAgICAgIDwvYXJ0
d29yaz4KKyAgICAgICAgICAgICAgPC9maWd1cmU+CisKK0R1cmluZyBhIHRyYW5zaXRpb24gYmV0
d2VlbiBkaWZmZXJlbnQgZ2FpbnMsIGEgc21vb3RoIHRyYW5zaXRpb24gaXMgY2FsY3VsYXRlZAor
dXNpbmcgdGhlIHNxdWFyZSBvZiB0aGUgTURDVCB3aW5kb3cuIEl0IGlzIGltcG9ydGFudCB0aGF0
IHZhbHVlcyBvZiB5KG4pIGJlCitpbnRlcnBvbGF0ZWQgb25lIGF0IGEgdGltZSBzdWNoIHRoYXQg
dGhlIHBhc3QgdmFsdWUgb2YgeShuKSB1c2VkIGlzIGludGVycG9sYXRlZC4KKzwvdD4KKzwvc2Vj
dGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJkZWVtcGhhc2lzIiB0aXRsZT0iRGUtZW1waGFzaXMi
PgorPHQ+CitBZnRlciB0aGUgcG9zdC1maWx0ZXIsCit0aGUgc2lnbmFsIGlzIGRlLWVtcGhhc2l6
ZWQgdXNpbmcgdGhlIGludmVyc2Ugb2YgdGhlIHByZS1lbXBoYXNpcyBmaWx0ZXIKK3VzZWQgaW4g
dGhlIGVuY29kZXI6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNl
bnRlciI+PCFbQ0RBVEFbCisgMSAgICAgICAgICAgIDEKKy0tLS0gPSAtLS0tLS0tLS0tLS0tLS0g
LAorQSh6KSAgICAgICAgICAgICAgICAtMQorICAgICAgIDEgLSBhbHBoYV9wKnoKK11dPjwvYXJ0
d29yaz4KKzwvZmlndXJlPgord2hlcmUgYWxwaGFfcD0wLjg1MDAwNjEwMzUuCis8L3Q+Cis8L3Nl
Y3Rpb24+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9IlBh
Y2tldCBMb3NzIENvbmNlYWxtZW50IiB0aXRsZT0iUGFja2V0IExvc3MgQ29uY2VhbG1lbnQgKFBM
QykiPgorPHQ+CitQYWNrZXQgbG9zcyBjb25jZWFsbWVudCAoUExDKSBpcyBhbiBvcHRpb25hbCBk
ZWNvZGVyLXNpZGUgZmVhdHVyZSB0aGF0CitTSE9VTEQgYmUgaW5jbHVkZWQgd2hlbiByZWNlaXZp
bmcgZnJvbSBhbiB1bnJlbGlhYmxlIGNoYW5uZWwuIEJlY2F1c2UKK1BMQyBpcyBub3QgcGFydCBv
ZiB0aGUgYml0c3RyZWFtLCB0aGVyZSBhcmUgbWFueSBhY2NlcHRhYmxlIHdheXMgdG8KK2ltcGxl
bWVudCBQTEMgd2l0aCBkaWZmZXJlbnQgY29tcGxleGl0eS9xdWFsaXR5IHRyYWRlLW9mZnMuCis8
L3Q+CisKKzx0PgorVGhlIFBMQyBpbgordGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBkZXBl
bmRzIG9uIHRoZSBtb2RlIG9mIGxhc3QgcGFja2V0IHJlY2VpdmVkLgorSW4gQ0VMVCBtb2RlLCB0
aGUgUExDIGZpbmRzIGEgcGVyaW9kaWNpdHkgaW4gdGhlIGRlY29kZWQKK3NpZ25hbCBhbmQgcmVw
ZWF0cyB0aGUgd2luZG93ZWQgd2F2ZWZvcm0gdXNpbmcgdGhlIHBpdGNoIG9mZnNldC4gVGhlIHdp
bmRvd2VkCit3YXZlZm9ybSBpcyBvdmVybGFwcGVkIGluIHN1Y2ggYSB3YXkgYXMgdG8gcHJlc2Vy
dmUgdGhlIHRpbWUtZG9tYWluIGFsaWFzaW5nCitjYW5jZWxsYXRpb24gd2l0aCB0aGUgcHJldmlv
dXMgZnJhbWUgYW5kIHRoZSBuZXh0IGZyYW1lLiBUaGlzIGlzIGltcGxlbWVudGVkCitpbiBjZWx0
X2RlY29kZV9sb3N0KCkgKG1kY3QuYykuICBJbiBTSUxLIG1vZGUsIHRoZSBQTEMgdXNlcyBMUEMg
ZXh0cmFwb2xhdGlvbgorZnJvbSB0aGUgcHJldmlvdXMgZnJhbWUsIGltcGxlbWVudGVkIGluIHNp
bGtfUExDKCkgKFBMQy5jKS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJjbG9jay1kcmlmdCIg
dGl0bGU9IkNsb2NrIERyaWZ0IENvbXBlbnNhdGlvbiI+Cis8dD4KK0Nsb2NrIGRyaWZ0IHJlZmVy
cyB0byB0aGUgZ3JhZHVhbCBkZXN5bmNocm9uaXphdGlvbiBvZiB0d28gZW5kcG9pbnRzCit3aG9z
ZSBzYW1wbGUgY2xvY2tzIHJ1biBhdCBkaWZmZXJlbnQgZnJlcXVlbmNpZXMgd2hpbGUgdGhleSBh
cmUgc3RyZWFtaW5nCitsaXZlIGF1ZGlvLiAgRGlmZmVyZW5jZXMgaW4gY2xvY2sgZnJlcXVlbmNp
ZXMgYXJlIGdlbmVyYWxseSBhdHRyaWJ1dGFibGUgdG8KK21hbnVmYWN0dXJpbmcgdmFyaWF0aW9u
IGluIHRoZSBlbmRwb2ludHMnIGNsb2NrIGhhcmR3YXJlLiAgRm9yIGxvbmctbGl2ZWQKK3N0cmVh
bXMsIHRoZSB0aW1lIGRpZmZlcmVuY2UgYmV0d2VlbiBzZW5kZXIgYW5kIHJlY2VpdmVyIGNhbiBn
cm93IHdpdGhvdXQKK2JvdW5kLgorPC90PgorCis8dD4KK1doZW4gdGhlIHNlbmRlcidzIGNsb2Nr
IHJ1bnMgc2xvd2VyIHRoYW4gdGhlIHJlY2VpdmVyJ3MsIHRoZSBlZmZlY3QgaXMgc2ltaWxhcgor
dG8gcGFja2V0IGxvc3M6IHRvbyBmZXcgcGFja2V0cyBhcmUgcmVjZWl2ZWQuICBUaGUgcmVjZWl2
ZXIgY2FuIGRpc3Rpbmd1aXNoCitiZXR3ZWVuIGRyaWZ0IGFuZCBsb3NzIGlmIHRoZSB0cmFuc3Bv
cnQgcHJvdmlkZXMgcGFja2V0IHRpbWVzdGFtcHMuICBBIHJlY2VpdmVyCitmb3IgbGl2ZSBzdHJl
YW1zIFNIT1VMRCBjb25jZWFsIHRoZSBlZmZlY3RzIG9mIGRyaWZ0LCBhbmQgTUFZIGRvIHNvIGJ5
IGludm9raW5nCit0aGUgUExDLgorPC90PgorCis8dD4KK1doZW4gdGhlIHNlbmRlcidzIGNsb2Nr
IHJ1bnMgZmFzdGVyIHRoYW4gdGhlIHJlY2VpdmVyJ3MsIHRvbyBtYW55IHBhY2tldHMgd2lsbAor
YmUgcmVjZWl2ZWQuICBUaGUgcmVjZWl2ZXIgTUFZIHJlc3BvbmQgYnkgc2tpcHBpbmcgYW55IHBh
Y2tldCAoaS5lLiwgbm90CitzdWJtaXR0aW5nIHRoZSBwYWNrZXQgZm9yIGRlY29kaW5nKS4gIFRo
aXMgaXMgbGlrZWx5IHRvIHByb2R1Y2UgYSBsZXNzIHNldmVyZQorYXJ0aWZhY3QgdGhhbiBpZiB0
aGUgZnJhbWUgd2VyZSBkcm9wcGVkIGFmdGVyIGRlY29kaW5nLgorPC90PgorCis8dD4KK0EgZGVj
b2RlciBNQVkgZW1wbG95IGEgbW9yZSBzb3BoaXN0aWNhdGVkIGRyaWZ0IGNvbXBlbnNhdGlvbiBt
ZXRob2QuIEZvcgorZXhhbXBsZSwgdGhlCis8eHJlZiB0YXJnZXQ9J0dvb2dsZS1OZXRFUSc+TmV0
RVEgY29tcG9uZW50PC94cmVmPgorb2YgdGhlCis8eHJlZiB0YXJnZXQ9J0dvb2dsZS1XZWJSVEMn
Pkdvb2dsZSBXZWJSVEMgY29kZWJhc2U8L3hyZWY+Citjb21wZW5zYXRlcyBmb3IgZHJpZnQgYnkg
YWRkaW5nIG9yIHJlbW92aW5nCitvbmUgcGVyaW9kIHdoZW4gdGhlIHNpZ25hbCBpcyBoaWdobHkg
cGVyaW9kaWMuIFRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gb2YKK09wdXMgYWxsb3dzIGEg
Y2FsbGVyIHRvIGxlYXJuIHdoZXRoZXIgdGhlIGN1cnJlbnQgZnJhbWUncyBzaWduYWwgaXMgaGln
aGx5CitwZXJpb2RpYywgYW5kIGlmIHNvIHdoYXQgdGhlIHBlcmlvZCBpcywgdXNpbmcgdGhlIE9Q
VVNfR0VUX1BJVENIKCkgcmVxdWVzdC4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiBhbmNob3I9InN3aXRjaGluZyIgdGl0bGU9IkNvbmZpZ3VyYXRpb24gU3dpdGNo
aW5nIj4KKworPHQ+CitTd2l0Y2hpbmcgYmV0d2VlbiB0aGUgT3B1cyBjb2RpbmcgbW9kZXMsIGF1
ZGlvIGJhbmR3aWR0aHMsIGFuZCBjaGFubmVsIGNvdW50cworIHJlcXVpcmVzIGNhcmVmdWwgY29u
c2lkZXJhdGlvbiB0byBhdm9pZCBhdWRpYmxlIGdsaXRjaGVzLgorU3dpdGNoaW5nIGJldHdlZW4g
YW55IHR3byBjb25maWd1cmF0aW9ucyBvZiB0aGUgQ0VMVC1vbmx5IG1vZGUsIGFueSB0d28KKyBj
b25maWd1cmF0aW9ucyBvZiB0aGUgSHlicmlkIG1vZGUsIG9yIGZyb20gV0IgU0lMSyB0byBIeWJy
aWQgbW9kZSBkb2VzIG5vdAorIHJlcXVpcmUgYW55IHNwZWNpYWwgdHJlYXRtZW50IGluIHRoZSBk
ZWNvZGVyLCBhcyB0aGUgTURDVCBvdmVybGFwIHdpbGwgc21vb3RoCisgdGhlIHRyYW5zaXRpb24u
CitTd2l0Y2hpbmcgZnJvbSBIeWJyaWQgbW9kZSB0byBXQiBTSUxLIHJlcXVpcmVzIGFkZGluZyBp
biB0aGUgZmluYWwgY29udGVudHMKKyBvZiB0aGUgQ0VMVCBvdmVybGFwIGJ1ZmZlciB0byB0aGUg
Zmlyc3QgU0lMSy1vbmx5IHBhY2tldC4KK1RoaXMgY2FuIGJlIGRvbmUgYnkgZGVjb2RpbmcgYSAy
LjUmbmJzcDttcyBzaWxlbmNlIGZyYW1lIHdpdGggdGhlIENFTFQgZGVjb2RlcgorIHVzaW5nIHRo
ZSBjaGFubmVsIGNvdW50IG9mIHRoZSBTSUxLLW9ubHkgcGFja2V0IChhbmQgYW55IGNob2ljZSBv
ZiBhdWRpbworIGJhbmR3aWR0aCksIHdoaWNoIHdpbGwgY29ycmVjdGx5IGhhbmRsZSB0aGUgY2Fz
ZXMgd2hlbiB0aGUgY2hhbm5lbCBjb3VudAorIGNoYW5nZXMgYXMgd2VsbC4KKzwvdD4KKworPHQ+
CitXaGVuIGNoYW5naW5nIHRoZSBjaGFubmVsIGNvdW50IGZvciBTSUxLLW9ubHkgb3IgSHlicmlk
IHBhY2tldHMsIHRoZSBlbmNvZGVyCisgY2FuIGF2b2lkIGdsaXRjaGVzIGJ5IHNtb290aGx5IHZh
cnlpbmcgdGhlIHN0ZXJlbyB3aWR0aCBvZiB0aGUgaW5wdXQgc2lnbmFsCisgYmVmb3JlIG9yIGFm
dGVyIHRoZSB0cmFuc2l0aW9uLCBhbmQgU0hPVUxEIGRvIHNvLgorSG93ZXZlciwgb3RoZXIgdHJh
bnNpdGlvbnMgYmV0d2VlbiBTSUxLLW9ubHkgcGFja2V0cyBvciBiZXR3ZWVuIE5CIG9yIE1CIFNJ
TEsKKyBhbmQgSHlicmlkIHBhY2tldHMgbWF5IGNhdXNlIGdsaXRjaGVzLCBiZWNhdXNlIG5laXRo
ZXIgdGhlIExTRiBjb2VmZmljaWVudHMKKyBub3IgdGhlIExUUCwgTFBDLCBzdGVyZW8gdW5taXhp
bmcsIGFuZCByZXNhbXBsZXIgYnVmZmVycyBhcmUgYXZhaWxhYmxlIGF0IHRoZQorIG5ldyBzYW1w
bGUgcmF0ZS4KK1RoZXNlIHN3aXRjaGVzIFNIT1VMRCBiZSBkZWxheWVkIGJ5IHRoZSBlbmNvZGVy
IHVudGlsIHF1aWV0IHBlcmlvZHMgb3IKKyB0cmFuc2llbnRzLCB3aGVyZSB0aGUgaW5ldml0YWJs
ZSBnbGl0Y2hlcyB3aWxsIGJlIGxlc3MgYXVkaWJsZS4gQWRkaXRpb25hbGx5LAorIHRoZSBiaXQt
c3RyZWFtIE1BWSBpbmNsdWRlIHJlZHVuZGFudCBzaWRlIGluZm9ybWF0aW9uICgicmVkdW5kYW5j
eSIpLCBpbiB0aGUKKyBmb3JtIG9mIGFkZGl0aW9uYWwgQ0VMVCBmcmFtZXMgZW1iZWRkZWQgaW4g
ZWFjaCBvZiB0aGUgT3B1cyBmcmFtZXMgYXJvdW5kIHRoZQorIHRyYW5zaXRpb24uCis8L3Q+CisK
Kzx0PgorVGhlIG90aGVyIHRyYW5zaXRpb25zIHRoYXQgY2Fubm90IGJlIGVhc2lseSBoYW5kbGVk
IGFyZSB0aG9zZSB3aGVyZSB0aGUgbG93ZXIKKyBmcmVxdWVuY2llcyBzd2l0Y2ggYmV0d2VlbiB0
aGUgU0lMSyBMUC1iYXNlZCBtb2RlbCBhbmQgdGhlIENFTFQgTURDVCBtb2RlbC4KK0hvd2V2ZXIs
IGFuIGVuY29kZXIgbWF5IG5vdCBoYXZlIGFuIG9wcG9ydHVuaXR5IHRvIGRlbGF5IHN1Y2ggYSBz
d2l0Y2ggdG8gYQorIGNvbnZlbmllbnQgcG9pbnQuCitGb3IgZXhhbXBsZSwgaWYgdGhlIGNvbnRl
bnQgc3dpdGNoZXMgZnJvbSBzcGVlY2ggdG8gbXVzaWMsIGFuZCB0aGUgZW5jb2RlciBkb2VzCisg
bm90IGhhdmUgZW5vdWdoIGxhdGVuY3kgaW4gaXRzIGFuYWx5c2lzIHRvIGRldGVjdCB0aGlzIGlu
IGFkdmFuY2UsIHRoZXJlIG1heQorIGJlIG5vIGNvbnZlbmllbnQgc2lsZW5jZSBwZXJpb2QgZHVy
aW5nIHdoaWNoIHRvIG1ha2UgdGhlIHRyYW5zaXRpb24gZm9yIHF1aXRlCisgc29tZSB0aW1lLgor
VG8gYXZvaWQgb3IgcmVkdWNlIGdsaXRjaGVzIGR1cmluZyB0aGVzZSBwcm9ibGVtYXRpYyBtb2Rl
IHRyYW5zaXRpb25zLCBhbmQKKyBhbHNvIGJldHdlZW4gYXVkaW8gYmFuZHdpZHRoIGNoYW5nZXMg
aW4gdGhlIFNJTEstb25seSBtb2RlcywgdHJhbnNpdGlvbnMgTUFZCisgaW5jbHVkZSByZWR1bmRh
bnQgc2lkZSBpbmZvcm1hdGlvbiAoInJlZHVuZGFuY3kiKSwgaW4gdGhlIGZvcm0gb2YgYW4KKyBh
ZGRpdGlvbmFsIENFTFQgZnJhbWUgZW1iZWRkZWQgaW4gdGhlIE9wdXMgZnJhbWUuCis8L3Q+CisK
Kzx0PgorQSB0cmFuc2l0aW9uIGJldHdlZW4gY29kaW5nIHRoZSBsb3dlciBmcmVxdWVuY2llcyB3
aXRoIHRoZSBMUCBtb2RlbCBhbmQgdGhlCisgTURDVCBtb2RlbCBvciBhIHRyYW5zaXRpb24gdGhh
dCBpbnZvbHZlcyBjaGFuZ2luZyB0aGUgU0lMSyBiYW5kd2lkdGgKKyBpcyBvbmx5IG5vcm1hdGl2
ZWx5IHNwZWNpZmllZCB3aGVuIGl0IGluY2x1ZGVzIHJlZHVuZGFuY3kuCitGb3IgdGhvc2Ugd2l0
aG91dCByZWR1bmRhbmN5LCBpdCBpcyBSRUNPTU1FTkRFRCB0aGF0IHRoZSBkZWNvZGVyIHVzZSBh
CisgY29uY2VhbG1lbnQgdGVjaG5pcXVlIChlLmcuLCBtYWtlIHVzZSBvZiBhIFBMQyBhbGdvcml0
aG0pIHRvICJmaWxsIGluIiB0aGUKKyBnYXAgb3IgZGlzY29udGludWl0eSBjYXVzZWQgYnkgdGhl
IG1vZGUgdHJhbnNpdGlvbi4KK1RoZXJlZm9yZSwgUExDIE1VU1QgTk9UIGJlIGFwcGxpZWQgZHVy
aW5nIGFueSBub3JtYXRpdmUgdHJhbnNpdGlvbiwgaS5lLiwgd2hlbgorPGxpc3Qgc3R5bGU9InN5
bWJvbHMiPgorPHQ+QSBwYWNrZXQgaW5jbHVkZXMgcmVkdW5kYW5jeSBmb3IgdGhpcyB0cmFuc2l0
aW9uIChhcyBkZXNjcmliZWQgYmVsb3cpLDwvdD4KKzx0PlRoZSB0cmFuc2l0aW9uIGlzIGJldHdl
ZW4gYW55IFdCIFNJTEsgcGFja2V0IGFuZCBhbnkgSHlicmlkIHBhY2tldCwgb3IgdmljZQorIHZl
cnNhLDwvdD4KKzx0PlRoZSB0cmFuc2l0aW9uIGlzIGJldHdlZW4gYW55IHR3byBIeWJyaWQgbW9k
ZSBwYWNrZXRzLCBvcjwvdD4KKzx0PlRoZSB0cmFuc2l0aW9uIGlzIGJldHdlZW4gYW55IHR3byBD
RUxUIG1vZGUgcGFja2V0cyw8L3Q+Cis8L2xpc3Q+CisgdW5sZXNzIHRoZXJlIGlzIGFjdHVhbCBw
YWNrZXQgbG9zcy4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWRlLWluZm8iIHRpdGxlPSJU
cmFuc2l0aW9uIFNpZGUgSW5mb3JtYXRpb24gKFJlZHVuZGFuY3kpIj4KKzx0PgorVHJhbnNpdGlv
bnMgd2l0aCBzaWRlIGluZm9ybWF0aW9uIGluY2x1ZGUgYW4gZXh0cmEgNSZuYnNwO21zICJyZWR1
bmRhbnQiIENFTFQKKyBmcmFtZSB3aXRoaW4gdGhlIE9wdXMgZnJhbWUuCitUaGlzIGZyYW1lIGlz
IGRlc2lnbmVkIHRvIGZpbGwgaW4gdGhlIGdhcCBvciBkaXNjb250aW51aXR5IGluIHRoZSBkaWZm
ZXJlbnQKKyBsYXllcnMgd2l0aG91dCByZXF1aXJpbmcgdGhlIGRlY29kZXIgdG8gY29uY2VhbCBp
dC4KK0ZvciB0cmFuc2l0aW9ucyBmcm9tIENFTFQtb25seSB0byBTSUxLLW9ubHkgb3IgSHlicmlk
LCB0aGUgcmVkdW5kYW50IGZyYW1lIGlzCisgaW5zZXJ0ZWQgaW4gdGhlIGZpcnN0IE9wdXMgZnJh
bWUgYWZ0ZXIgdGhlIHRyYW5zaXRpb24gKGkuZS4sIHRoZSBmaXJzdAorIFNJTEstb25seSBvciBI
eWJyaWQgZnJhbWUpLgorRm9yIHRyYW5zaXRpb25zIGZyb20gU0lMSy1vbmx5IG9yIEh5YnJpZCB0
byBDRUxULW9ubHksIHRoZSByZWR1bmRhbnQgZnJhbWUgaXMKKyBpbnNlcnRlZCBpbiB0aGUgbGFz
dCBPcHVzIGZyYW1lIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiAoaS5lLiwgdGhlIGxhc3QKKyBTSUxL
LW9ubHkgb3IgSHlicmlkIGZyYW1lKS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJvcHVzX3Jl
ZHVuZGFuY3lfZmxhZyIgdGl0bGU9IlJlZHVuZGFuY3kgRmxhZyI+Cis8dD4KK1RoZSBwcmVzZW5j
ZSBvZiByZWR1bmRhbmN5IGlzIHNpZ25hbGVkIGluIGFsbCBTSUxLLW9ubHkgYW5kIEh5YnJpZCBm
cmFtZXMsIG5vdAorIGp1c3QgdGhvc2UgaW52b2x2ZWQgaW4gYSBtb2RlIHRyYW5zaXRpb24uCitU
aGlzIGFsbG93cyB0aGUgZnJhbWVzIHRvIGJlIGRlY29kZWQgY29ycmVjdGx5IGV2ZW4gaWYgYW4g
YWRqYWNlbnQgZnJhbWUgaXMKKyBsb3N0LgorRm9yIFNJTEstb25seSBmcmFtZXMsIHRoaXMgc2ln
bmFsaW5nIGlzIGltcGxpY2l0LCBiYXNlZCBvbiB0aGUgc2l6ZSBvZiB0aGUKKyBvZiB0aGUgT3B1
cyBmcmFtZSBhbmQgdGhlIG51bWJlciBvZiBiaXRzIGNvbnN1bWVkIGRlY29kaW5nIHRoZSBTSUxL
IHBvcnRpb24gb2YKKyBpdC4KK0FmdGVyIGRlY29kaW5nIHRoZSBTSUxLIHBvcnRpb24gb2YgdGhl
IE9wdXMgZnJhbWUsIHRoZSBkZWNvZGVyIHVzZXMgZWNfdGVsbCgpCisgKHNlZSA8eHJlZiB0YXJn
ZXQ9ImVjX3RlbGwiLz4pIHRvIGNoZWNrIGlmIHRoZXJlIGFyZSBhdCBsZWFzdCAxNyBiaXRzCisg
cmVtYWluaW5nLgorSWYgc28sIHRoZW4gdGhlIGZyYW1lIGNvbnRhaW5zIHJlZHVuZGFuY3kuCis8
L3Q+CisKKzx0PgorRm9yIEh5YnJpZCBmcmFtZXMsIHRoaXMgc2lnbmFsaW5nIGlzIGV4cGxpY2l0
LgorQWZ0ZXIgZGVjb2RpbmcgdGhlIFNJTEsgcG9ydGlvbiBvZiB0aGUgT3B1cyBmcmFtZSwgdGhl
IGRlY29kZXIgdXNlcyBlY190ZWxsKCkKKyAoc2VlIDx4cmVmIHRhcmdldD0iZWNfdGVsbCIvPikg
dG8gZW5zdXJlIHRoZXJlIGFyZSBhdCBsZWFzdCAzNyBiaXRzIHJlbWFpbmluZy4KK0lmIHNvLCBp
dCByZWFkcyBhIHN5bWJvbCB3aXRoIHRoZSBQREYgaW4KKyA8eHJlZiB0YXJnZXQ9Im9wdXNfcmVk
dW5kYW5jeV9mbGFnX3BkZiIvPiwgYW5kIGlmIHRoZSB2YWx1ZSBpcyAxLCB0aGVuIHRoZQorIGZy
YW1lIGNvbnRhaW5zIHJlZHVuZGFuY3kuCitPdGhlcndpc2UgKGlmIHRoZXJlIHdlcmUgZmV3ZXIg
dGhhbiAzNyBiaXRzIGxlZnQgb3IgdGhlIHZhbHVlIHdhcyAwKSwgdGhlIGZyYW1lCisgZG9lcyBu
b3QgY29udGFpbiByZWR1bmRhbmN5LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ib3B1c19y
ZWR1bmRhbmN5X2ZsYWdfcGRmIiB0aXRsZT0iUmVkdW5kYW5jeSBGbGFnIFBERiI+Cis8dHRjb2w+
UERGPC90dGNvbD4KKzxjPns0MDk1LCAxfS80MDk2PC9jPgorPC90ZXh0dGFibGU+Cis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIGFuY2hvcj0ib3B1c19yZWR1bmRhbmN5X3BvcyIgdGl0bGU9IlJlZHVu
ZGFuY3kgUG9zaXRpb24gRmxhZyI+Cis8dD4KK1NpbmNlIHRoZSBjdXJyZW50IGZyYW1lIGlzIGEg
U0lMSy1vbmx5IG9yIGEgSHlicmlkIGZyYW1lLCBpdCBtdXN0IGJlIGF0IGxlYXN0CisgMTAmbmJz
cDttcy4KK1RoZXJlZm9yZSwgaXQgbmVlZHMgYW4gYWRkaXRpb25hbCBmbGFnIHRvIGluZGljYXRl
IHdoZXRoZXIgdGhlIHJlZHVuZGFudAorIDUmbmJzcDttcyBDRUxUIGZyYW1lIHNob3VsZCBiZSBt
aXhlZCBpbnRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGN1cnJlbnQgZnJhbWUsCisgb3IgdGhlIGVu
ZC4KK0FmdGVyIGRldGVybWluaW5nIHRoYXQgYSBmcmFtZSBjb250YWlucyByZWR1bmRhbmN5LCB0
aGUgZGVjb2RlciByZWFkcyBhCisgMSZuYnNwO2JpdCBzeW1ib2wgd2l0aCBhIHVuaWZvcm0gUERG
CisgKDx4cmVmIHRhcmdldD0ib3B1c19yZWR1bmRhbmN5X3Bvc19wZGYiLz4pLgorPC90PgorCis8
dGV4dHRhYmxlIGFuY2hvcj0ib3B1c19yZWR1bmRhbmN5X3Bvc19wZGYiIHRpdGxlPSJSZWR1bmRh
bmN5IFBvc2l0aW9uIFBERiI+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPnsxLCAxfS8yPC9jPgor
PC90ZXh0dGFibGU+CisKKzx0PgorSWYgdGhlIHZhbHVlIGlzIHplcm8sIHRoaXMgaXMgdGhlIGZp
cnN0IGZyYW1lIGluIHRoZSB0cmFuc2l0aW9uLCBhbmQgdGhlCisgcmVkdW5kYW5jeSBiZWxvbmdz
IGF0IHRoZSBlbmQuCitJZiB0aGUgdmFsdWUgaXMgb25lLCB0aGlzIGlzIHRoZSBzZWNvbmQgZnJh
bWUgaW4gdGhlIHRyYW5zaXRpb24sIGFuZCB0aGUKKyByZWR1bmRhbmN5IGJlbG9uZ3MgYXQgdGhl
IGJlZ2lubmluZy4KK1RoZXJlIGlzIG5vIHdheSB0byBzcGVjaWZ5IHRoYXQgYW4gT3B1cyBmcmFt
ZSBjb250YWlucyBzZXBhcmF0ZSByZWR1bmRhbnQgQ0VMVAorIGZyYW1lcyBhdCBib3RoIHRoZSBi
ZWdpbm5pbmcgYW5kIHRoZSBlbmQuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hv
cj0ib3B1c19yZWR1bmRhbmN5X3NpemUiIHRpdGxlPSJSZWR1bmRhbmN5IFNpemUiPgorPHQ+CitV
bmxpa2UgdGhlIENFTFQgcG9ydGlvbiBvZiBhIEh5YnJpZCBmcmFtZSwgdGhlIHJlZHVuZGFudCBD
RUxUIGZyYW1lIGRvZXMgbm90CisgdXNlIHRoZSBzYW1lIGVudHJvcHkgY29kZXIgc3RhdGUgYXMg
dGhlIHJlc3Qgb2YgdGhlIE9wdXMgZnJhbWUsIGJlY2F1c2UgdGhpcworIHdvdWxkIGJyZWFrIHRo
ZSBDRUxUIGJpdCBhbGxvY2F0aW9uIG1lY2hhbmlzbSBpbiBIeWJyaWQgZnJhbWVzLgorVGh1cywg
YSByZWR1bmRhbnQgQ0VMVCBmcmFtZSBhbHdheXMgc3RhcnRzIGFuZCBlbmRzIG9uIGEgYnl0ZSBi
b3VuZGFyeSwgZXZlbiBpbgorIFNJTEstb25seSBmcmFtZXMsIHdoZXJlIHRoaXMgaXMgbm90IHN0
cmljdGx5IG5lY2Vzc2FyeS4KKzwvdD4KKworPHQ+CitGb3IgU0lMSy1vbmx5IGZyYW1lcywgdGhl
IG51bWJlciBvZiBieXRlcyBpbiB0aGUgcmVkdW5kYW50IENFTFQgZnJhbWUgaXMgc2ltcGx5Cisg
dGhlIG51bWJlciBvZiB3aG9sZSBieXRlcyByZW1haW5pbmcsIHdoaWNoIG11c3QgYmUgYXQgbGVh
c3QgMiwgZHVlIHRvIHRoZQorIHNwYWNlIGNoZWNrIGluIDx4cmVmIHRhcmdldD0ib3B1c19yZWR1
bmRhbmN5X2ZsYWciLz4uCitGb3IgSHlicmlkIGZyYW1lcywgdGhlIG51bWJlciBvZiBieXRlcyBp
cyBlcXVhbCB0byAyLCBwbHVzIGEgZGVjb2RlZCB1bnNpZ25lZAorIGludGVnZXIgbGVzcyB0aGFu
IDI1NiAoc2VlIDx4cmVmIHRhcmdldD0iZWNfZGVjX3VpbnQiLz4pLgorVGhpcyBtYXkgYmUgbW9y
ZSB0aGFuIHRoZSBudW1iZXIgb2Ygd2hvbGUgYnl0ZXMgcmVtYWluaW5nIGluIHRoZSBPcHVzIGZy
YW1lLAorIGluIHdoaWNoIGNhc2UgdGhlIGZyYW1lIGlzIGludmFsaWQuCitIb3dldmVyLCBhIGRl
Y29kZXIgaXMgbm90IHJlcXVpcmVkIHRvIGlnbm9yZSB0aGUgZW50aXJlIGZyYW1lLCBhcyB0aGlz
IG1heSBiZQorIHRoZSByZXN1bHQgb2YgYSBiaXQgZXJyb3IgdGhhdCBkZXN5bmNocm9uaXplZCB0
aGUgcmFuZ2UgY29kZXIuCitUaGVyZSBtYXkgc3RpbGwgYmUgdXNlZnVsIGRhdGEgYmVmb3JlIHRo
ZSBlcnJvciwgYW5kIGEgZGVjb2RlciBNQVkga2VlcCBhbnkKKyBhdWRpbyBkZWNvZGVkIHNvIGZh
ciBpbnN0ZWFkIG9mIGludm9raW5nIHRoZSBQTEMsIGJ1dCBpdCBpcyBSRUNPTU1FTkRFRCB0aGF0
CisgdGhlIGRlY29kZXIgc3RvcCBkZWNvZGluZyBhbmQgZGlzY2FyZCB0aGUgcmVzdCBvZiB0aGUg
Y3VycmVudCBPcHVzIGZyYW1lLgorPC90PgorCis8dD4KK0l0IHdvdWxkIGhhdmUgYmVlbiBwb3Nz
aWJsZSB0byBhdm9pZCB0aGVzZSBpbnZhbGlkIHN0YXRlcyBpbiB0aGUgZGVzaWduIG9mIE9wdXMK
KyBieSBsaW1pdGluZyB0aGUgcmFuZ2Ugb2YgdGhlIGV4cGxpY2l0IGxlbmd0aCBkZWNvZGVkIGZy
b20gSHlicmlkIGZyYW1lcyBieSB0aGUKKyBhY3R1YWwgbnVtYmVyIG9mIHdob2xlIGJ5dGVzIHJl
bWFpbmluZy4KK0hvd2V2ZXIsIHRoaXMgd291bGQgcmVxdWlyZSBhbiBlbmNvZGVyIHRvIGRldGVy
bWluZSB0aGUgcmF0ZSBhbGxvY2F0aW9uIGZvciB0aGUKKyBNRENUIGxheWVyIHVwIGZyb250LCBi
ZWZvcmUgaXQgYmVnYW4gZW5jb2RpbmcgdGhhdCBsYXllci4KK0J5IGFsbG93aW5nIHNvbWUgaW52
YWxpZCBzaXplcywgdGhlIGVuY29kZXIgaXMgYWJsZSB0byBkZWZlciB0aGF0IGRlY2lzaW9uCisg
dW50aWwgbXVjaCBsYXRlci4KK1doZW4gZW5jb2RpbmcgSHlicmlkIGZyYW1lcyB3aGljaCBkbyBu
b3QgaW5jbHVkZSByZWR1bmRhbmN5LCB0aGUgZW5jb2RlciBtdXN0Cisgc3RpbGwgZGVjaWRlIHVw
LWZyb250IGlmIGl0IHdpc2hlcyB0byB1c2UgdGhlIG1pbmltdW0gMzcgYml0cyByZXF1aXJlZCB0
bworIHRyaWdnZXIgZW5jb2Rpbmcgb2YgdGhlIHJlZHVuZGFuY3kgZmxhZywgYnV0IHRoaXMgaXMg
YSBtdWNoIGxvb3NlcgorIHJlc3RyaWN0aW9uLgorPC90PgorCis8dD4KK0FmdGVyIGRldGVybWlu
aW5nIHRoZSBzaXplIG9mIHRoZSByZWR1bmRhbnQgQ0VMVCBmcmFtZSwgdGhlIGRlY29kZXIgcmVk
dWNlcworIHRoZSBzaXplIG9mIHRoZSBidWZmZXIgY3VycmVudGx5IGluIHVzZSBieSB0aGUgcmFu
Z2UgY29kZXIgYnkgdGhhdCBhbW91bnQuCitUaGUgQ0VMVCBsYXllciByZWFkIGFueSByYXcgYml0
cyBmcm9tIHRoZSBlbmQgb2YgdGhpcyByZWR1Y2VkIGJ1ZmZlciwgYW5kIGFsbAorIGNhbGN1bGF0
aW9ucyBvZiB0aGUgbnVtYmVyIG9mIGJpdHMgcmVtYWluaW5nIGluIHRoZSBidWZmZXIgbXVzdCBi
ZSBkb25lIHVzaW5nCisgdGhpcyBuZXcsIHJlZHVjZWQgc2l6ZSwgcmF0aGVyIHRoYW4gdGhlIG9y
aWdpbmFsIHNpemUgb2YgdGhlIE9wdXMgZnJhbWUuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0
aW9uIGFuY2hvcj0ib3B1c19yZWR1bmRhbmN5X2RlY29kaW5nIiB0aXRsZT0iRGVjb2RpbmcgdGhl
IFJlZHVuZGFuY3kiPgorPHQ+CitUaGUgcmVkdW5kYW50IGZyYW1lIGlzIGRlY29kZWQgbGlrZSBh
bnkgb3RoZXIgQ0VMVC1vbmx5IGZyYW1lLCB3aXRoIHRoZQorIGV4Y2VwdGlvbiB0aGF0IGl0IGRv
ZXMgbm90IGNvbnRhaW4gYSBUT0MgYnl0ZS4KK1RoZSBmcmFtZSBzaXplIGlzIGZpeGVkIGF0IDUm
bmJzcDttcywgdGhlIGNoYW5uZWwgY291bnQgaXMgc2V0IHRvIHRoYXQgb2YgdGhlCisgY3VycmVu
dCBmcmFtZSwgYW5kIHRoZSBhdWRpbyBiYW5kd2lkdGggaXMgYWxzbyBzZXQgdG8gdGhhdCBvZiB0
aGUgY3VycmVudAorIGZyYW1lLCB3aXRoIHRoZSBleGNlcHRpb24gdGhhdCBmb3IgTUIgU0lMSyBm
cmFtZXMsIGl0IGlzIHNldCB0byBXQi4KKzwvdD4KKworPHQ+CitJZiB0aGUgcmVkdW5kYW5jeSBi
ZWxvbmdzIGF0IHRoZSBiZWdpbm5pbmcgKGluIGEgQ0VMVC1vbmx5IHRvIFNJTEstb25seSBvcgor
IEh5YnJpZCB0cmFuc2l0aW9uKSwgdGhlIGZpbmFsIHJlY29uc3RydWN0ZWQgb3V0cHV0IHVzZXMg
dGhlIGZpcnN0IDIuNSZuYnNwO21zCisgb2YgYXVkaW8gb3V0cHV0IGJ5IHRoZSBkZWNvZGVyIGZv
ciB0aGUgcmVkdW5kYW50IGZyYW1lIGFzLWlzLCBkaXNjYXJkaW5nCisgdGhlIGNvcnJlc3BvbmRp
bmcgb3V0cHV0IGZyb20gdGhlIFNJTEstb25seSBvciBIeWJyaWQgcG9ydGlvbiBvZiB0aGUgZnJh
bWUuCitUaGUgcmVtYWluaW5nIDIuNSZuYnNwO21zIGlzIGNyb3NzLWxhcHBlZCB3aXRoIHRoZSBk
ZWNvZGVkIFNJTEsvSHlicmlkIHNpZ25hbAorIHVzaW5nIHRoZSBDRUxUJ3MgcG93ZXItY29tcGxl
bWVudGFyeSBNRENUIHdpbmRvdyB0byBlbnN1cmUgYSBzbW9vdGgKKyB0cmFuc2l0aW9uLgorPC90
PgorCis8dD4KK0lmIHRoZSByZWR1bmRhbmN5IGJlbG9uZ3MgYXQgdGhlIGVuZCAoaW4gYSBTSUxL
LW9ubHkgb3IgSHlicmlkIHRvIENFTFQtb25seQorIHRyYW5zaXRpb24pLCBvbmx5IHRoZSBzZWNv
bmQgaGFsZiAoMi41Jm5ic3A7bXMpIG9mIHRoZSBhdWRpbyBvdXRwdXQgYnkgdGhlCisgZGVjb2Rl
ciBmb3IgdGhlIHJlZHVuZGFudCBmcmFtZSBpcyB1c2VkLgorSW4gdGhhdCBjYXNlLCB0aGUgc2Vj
b25kIGhhbGYgb2YgdGhlIHJlZHVuZGFudCBmcmFtZSBpcyBjcm9zcy1sYXBwZWQgd2l0aCB0aGUK
KyBlbmQgb2YgdGhlIFNJTEsvSHlicmlkIHNpZ25hbCwgYWdhaW4gdXNpbmcgQ0VMVCdzIHBvd2Vy
LWNvbXBsZW1lbnRhcnkgTURDVAorIHdpbmRvdyB0byBlbnN1cmUgYSBzbW9vdGggdHJhbnNpdGlv
bi4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImRl
Y29kZXItcmVzZXQiIHRpdGxlPSJTdGF0ZSBSZXNldCI+Cis8dD4KK1doZW4gYSB0cmFuc2l0aW9u
IG9jY3VycywgdGhlIHN0YXRlIG9mIHRoZSBTSUxLIG9yIHRoZSBDRUxUIGRlY29kZXIgKG9yIGJv
dGgpCisgbWF5IG5lZWQgdG8gYmUgcmVzZXQgYmVmb3JlIGRlY29kaW5nIGEgZnJhbWUgaW4gdGhl
IG5ldyBtb2RlLgorVGhpcyBhdm9pZHMgcmV1c2luZyAib3V0IG9mIGRhdGUiIG1lbW9yeSwgd2hp
Y2ggbWF5IG5vdCBoYXZlIGJlZW4gdXBkYXRlZCBpbgorIHNvbWUgdGltZSBvciBtYXkgbm90IGJl
IGluIGEgd2VsbC1kZWZpbmVkIHN0YXRlIGR1ZSB0bywgZS5nLiwgUExDLgorVGhlIFNJTEsgc3Rh
dGUgaXMgcmVzZXQgYmVmb3JlIGV2ZXJ5IFNJTEstb25seSBvciBIeWJyaWQgZnJhbWUgd2hlcmUg
dGhlCisgcHJldmlvdXMgZnJhbWUgd2FzIENFTFQtb25seS4KK1RoZSBDRUxUIHN0YXRlIGlzIHJl
c2V0IGV2ZXJ5IHRpbWUgdGhlIG9wZXJhdGluZyBtb2RlIGNoYW5nZXMgYW5kIHRoZSBuZXcgbW9k
ZQorIGlzIGVpdGhlciBIeWJyaWQgb3IgQ0VMVC1vbmx5LCBleGNlcHQgd2hlbiB0aGUgdHJhbnNp
dGlvbiB1c2VzIHJlZHVuZGFuY3kgYXMKKyBkZXNjcmliZWQgYWJvdmUuCitXaGVuIHN3aXRjaGlu
ZyBmcm9tIFNJTEstb25seSBvciBIeWJyaWQgdG8gQ0VMVC1vbmx5IHdpdGggcmVkdW5kYW5jeSwg
dGhlIENFTFQKKyBzdGF0ZSBpcyByZXNldCBiZWZvcmUgZGVjb2RpbmcgdGhlIHJlZHVuZGFudCBD
RUxUIGZyYW1lIGVtYmVkZGVkIGluIHRoZQorIFNJTEstb25seSBvciBIeWJyaWQgZnJhbWUsIGJ1
dCBpdCBpcyBub3QgcmVzZXQgYmVmb3JlIGRlY29kaW5nIHRoZSBmb2xsb3dpbmcKKyBDRUxULW9u
bHkgZnJhbWUuCitXaGVuIHN3aXRjaGluZyBmcm9tIENFTFQtb25seSBtb2RlIHRvIFNJTEstb25s
eSBvciBIeWJyaWQgbW9kZSB3aXRoIHJlZHVuZGFuY3ksCisgdGhlIENFTFQgZGVjb2RlciBpcyBu
b3QgcmVzZXQgZm9yIGRlY29kaW5nIHRoZSByZWR1bmRhbnQgQ0VMVCBmcmFtZS4KKzwvdD4KKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IlN1bW1hcnkgb2YgVHJhbnNpdGlvbnMiPgorCis8
dD4KKzx4cmVmIHRhcmdldD0ibm9ybWF0aXZlX3RyYW5zaXRpb25zIi8+IGlsbHVzdHJhdGVzIGFs
bCBvZiB0aGUgbm9ybWF0aXZlCisgdHJhbnNpdGlvbnMgaW52b2x2aW5nIGEgbW9kZSBjaGFuZ2Us
IGFuIGF1ZGlvIGJhbmR3aWR0aCBjaGFuZ2UsIG9yIGJvdGguCitFYWNoIG9uZSB1c2VzIGFuIFMs
IEgsIG9yIEMgdG8gcmVwcmVzZW50IGFuIE9wdXMgZnJhbWUgaW4gdGhlIGNvcnJlc3BvbmRpbmcK
KyBtb2RlLgorSW4gYWRkaXRpb24sIGFuIFIgaW5kaWNhdGVzIHRoZSBwcmVzZW5jZSBvZiByZWR1
bmRhbmN5IGluIHRoZSBPcHVzIGZyYW1lIGl0IGlzCisgY3Jvc3MtbGFwcGVkIHdpdGguCitJdHMg
bG9jYXRpb24gaW4gdGhlIGZpcnN0IG9yIGxhc3QgNSZuYnNwO21zIGlzIGFzc3VtZWQgdG8gY29y
cmVzcG9uZCB0byB3aGV0aGVyCisgaXQgaXMgdGhlIGZyYW1lIGJlZm9yZSBvciBhZnRlciB0aGUg
dHJhbnNpdGlvbi4KK090aGVyIHVzZXMgb2YgcmVkdW5kYW5jeSBhcmUgbm9uLW5vcm1hdGl2ZS4K
K0ZpbmFsbHksIGEgYyBpbmRpY2F0ZXMgdGhlIGNvbnRlbnRzIG9mIHRoZSBDRUxUIG92ZXJsYXAg
YnVmZmVyIGFmdGVyIHRoZQorIHByZXZpb3VzbHkgZGVjb2RlZCBmcmFtZSAoaS5lLiwgYXMgZXh0
cmFjdGVkIGJ5IGRlY29kaW5nIGEgc2lsZW5jZSBmcmFtZSkuCis8ZmlndXJlIGFsaWduPSJjZW50
ZXIiIGFuY2hvcj0ibm9ybWF0aXZlX3RyYW5zaXRpb25zIgorIHRpdGxlPSJOb3JtYXRpdmUgVHJh
bnNpdGlvbnMiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitTSUxLIHRvIFNJ
TEsgd2l0aCBSZWR1bmRhbmN5OiAgICAgICAgICAgICBTIC0+IFMgLT4gUworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFSIC0+IFIKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgO1MgLT4gUyAt
PiBTCisKK05CIG9yIE1CIFNJTEsgdG8gSHlicmlkIHdpdGggUmVkdW5kYW5jeTogIFMgLT4gUyAt
PiBTCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
JgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIVIg
LT47SCAtPiBIIC0+IEgKKworV0IgU0lMSyB0byBIeWJyaWQ6ICAgICAgICAgICAgICAgICAgICAg
ICAgUyAtPiBTIC0+IFMgLT4hSCAtPiBIIC0+IEgKKworU0lMSyB0byBDRUxUIHdpdGggUmVkdW5k
YW5jeTogICAgICAgICAgICAgUyAtPiBTIC0+IFMKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAhUiAtPiBDIC0+IEMgLT4gQworCitIeWJyaWQgdG8gTkIg
b3IgTUIgU0lMSyB3aXRoIFJlZHVuZGFuY3k6ICBIIC0+IEggLT4gSAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFSIC0+IFIKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgO1MgLT4gUyAtPiBT
CisKK0h5YnJpZCB0byBXQiBTSUxLOiAgICAgICAgICAgICAgICAgICAgICAgIEggLT4gSCAtPiBI
IC0+IGMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwgICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA+IFMgLT4gUyAtPiBTCisKK0h5YnJpZCB0byBDRUxUIHdpdGggUmVkdW5kYW5jeTog
ICAgICAgICAgIEggLT4gSCAtPiBICisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIVIgLT4gQyAtPiBDIC0+IEMKKworQ0VMVCB0byBTSUxLIHdpdGggUmVk
dW5kYW5jeTogICAgICAgICAgICAgQyAtPiBDIC0+IEMgLT4gUgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJgorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7UyAtPiBTIC0+IFMKKwor
Q0VMVCB0byBIeWJyaWQgd2l0aCBSZWR1bmRhbmN5OiAgICAgICAgICAgQyAtPiBDIC0+IEMgLT4g
UgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8SCAtPiBIIC0+IEgKKworS2V5OgorUyAgIFNJTEstb25seSBmcmFtZSAgICAgICAgICAg
ICAgICAgOyAgIFNJTEsgZGVjb2RlciByZXNldAorSCAgIEh5YnJpZCBmcmFtZSAgICAgICAgICAg
ICAgICAgICAgfCAgIENFTFQgYW5kIFNJTEsgZGVjb2RlciByZXNldHMKK0MgICBDRUxULW9ubHkg
ZnJhbWUgICAgICAgICAgICAgICAgICEgICBDRUxUIGRlY29kZXIgcmVzZXQKK2MgICBDRUxUIG92
ZXJsYXAgICAgICAgICAgICAgICAgICAgICsgICBEaXJlY3QgbWl4aW5nCitSICAgUmVkdW5kYW50
IENFTFQgZnJhbWUgICAgICAgICAgICAmICAgV2luZG93ZWQgY3Jvc3MtbGFwCitdXT48L2FydHdv
cms+Cis8L2ZpZ3VyZT4KK1RoZSBmaXJzdCB0d28gYW5kIHRoZSBsYXN0IHR3byBPcHVzIGZyYW1l
cyBpbiBlYWNoIGV4YW1wbGUgYXJlIGlsbHVzdHJhdGl2ZSwKKyBpLmUuLCB0aGVyZSBpcyBubyBy
ZXF1aXJlbWVudCB0aGF0IGEgc3RyZWFtIHJlbWFpbiBpbiB0aGUgc2FtZSBjb25maWd1cmF0aW9u
CisgZm9yIHRocmVlIGNvbnNlY3V0aXZlIGZyYW1lcyBiZWZvcmUgb3IgYWZ0ZXIgYSBzd2l0Y2gu
Cis8L3Q+CisKKzx0PgorVGhlIGJlaGF2aW9yIG9mIHRyYW5zaXRpb25zIHdpdGhvdXQgcmVkdW5k
YW5jeSB3aGVyZSBQTEMgaXMgYWxsb3dlZCBpcyBub24tbm9ybWF0aXZlLgorQW4gZW5jb2RlciBt
aWdodCBzdGlsbCB3aXNoIHRvIHVzZSB0aGVzZSB0cmFuc2l0aW9ucyBpZiwgZm9yIGV4YW1wbGUs
IGl0CisgZG9lc24ndCB3YW50IHRvIGFkZCB0aGUgZXh0cmEgYml0cmF0ZSByZXF1aXJlZCBmb3Ig
cmVkdW5kYW5jeSBvciBpZiBpdCBtYWtlcworIGEgZGVjaXNpb24gdG8gc3dpdGNoIGFmdGVyIGl0
IGhhcyBhbHJlYWR5IHRyYW5zbWl0dGVkIHRoZSBmcmFtZSB0aGF0IHdvdWxkCisgaGF2ZSBoYWQg
dG8gY29udGFpbiB0aGUgcmVkdW5kYW5jeS4KKzx4cmVmIHRhcmdldD0ibm9ubm9ybWF0aXZlX3Ry
YW5zaXRpb25zIi8+IGlsbHVzdHJhdGVzIHRoZSByZWNvbW1lbmRlZAorIGNyb3NzLWxhcHBpbmcg
YW5kIGRlY29kZXIgcmVzZXRzIGZvciB0aGVzZSB0cmFuc2l0aW9ucy4KKzxmaWd1cmUgYWxpZ249
ImNlbnRlciIgYW5jaG9yPSJub25ub3JtYXRpdmVfdHJhbnNpdGlvbnMiCisgdGl0bGU9IlJlY29t
bWVuZGVkIE5vbi1Ob3JtYXRpdmUgVHJhbnNpdGlvbnMiPgorPGFydHdvcmsgYWxpZ249ImNlbnRl
ciI+PCFbQ0RBVEFbCitTSUxLIHRvIFNJTEsgKGF1ZGlvIGJhbmR3aWR0aCBjaGFuZ2UpOiAgICBT
IC0+IFMgLT4gUyAgIDtTIC0+IFMgLT4gUworCitOQiBvciBNQiBTSUxLIHRvIEh5YnJpZDogICAg
ICAgICAgICAgICAgICBTIC0+IFMgLT4gUyAgIHxIIC0+IEggLT4gSAorCitTSUxLIHRvIENFTFQg
d2l0aG91dCBSZWR1bmRhbmN5OiAgICAgICAgICBTIC0+IFMgLT4gUyAtPiBQCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFDIC0+IEMg
LT4gQworCitIeWJyaWQgdG8gTkIgb3IgTUIgU0lMSzogICAgICAgICAgICAgICAgICBIIC0+IEgg
LT4gSCAtPiBjCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDtTIC0+IFMgLT4gUworCitIeWJyaWQgdG8gQ0VMVCB3aXRob3V0IFJlZHVu
ZGFuY3k6ICAgICAgICBIIC0+IEggLT4gSCAtPiBQCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFDIC0+IEMgLT4gQworCitDRUxUIHRv
IFNJTEsgd2l0aG91dCBSZWR1bmRhbmN5OiAgICAgICAgICBDIC0+IEMgLT4gQyAtPiBQCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtT
IC0+IFMgLT4gUworCitDRUxUIHRvIEh5YnJpZCB3aXRob3V0IFJlZHVuZGFuY3k6ICAgICAgICBD
IC0+IEMgLT4gQyAtPiBQCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHxIIC0+IEggLT4gSAorCitLZXk6CitTICAgU0lMSy1vbmx5IGZy
YW1lICAgICAgICAgICAgICAgICA7ICAgU0lMSyBkZWNvZGVyIHJlc2V0CitIICAgSHlicmlkIGZy
YW1lICAgICAgICAgICAgICAgICAgICB8ICAgQ0VMVCBhbmQgU0lMSyBkZWNvZGVyIHJlc2V0cwor
QyAgIENFTFQtb25seSBmcmFtZSAgICAgICAgICAgICAgICAgISAgIENFTFQgZGVjb2RlciByZXNl
dAorYyAgIENFTFQgb3ZlcmxhcCAgICAgICAgICAgICAgICAgICAgKyAgIERpcmVjdCBtaXhpbmcK
K1AgICBQYWNrZXQgTG9zcyBDb25jZWFsbWVudCAgICAgICAgICYgICBXaW5kb3dlZCBjcm9zcy1s
YXAKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorRW5jb2RlcnMgU0hPVUxEIE5PVCB1c2Ugb3Ro
ZXIgdHJhbnNpdGlvbnMsIGUuZy4sIHRob3NlIHRoYXQgaW52b2x2ZSByZWR1bmRhbmN5CisgaW4g
d2F5cyBub3QgaWxsdXN0cmF0ZWQgaW4gPHhyZWYgdGFyZ2V0PSJub3JtYXRpdmVfdHJhbnNpdGlv
bnMiLz4uCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisK
KworPCEtLSAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKiAtLT4KKzwhLS0gICoqKioqKioqKioqKioqKioqKioqKioqKioq
ICAgT1BVUyBFTkNPREVSICAgKioqKioqKioqKioqKioqKioqKioqKiogLS0+Cis8IS0tICAqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqIC0tPgorCis8c2VjdGlvbiB0aXRsZT0iT3B1cyBFbmNvZGVyIj4KKzx0PgorSnVzdCBs
aWtlIHRoZSBkZWNvZGVyLCB0aGUgT3B1cyBlbmNvZGVyIGFsc28gbm9ybWFsbHkgY29uc2lzdHMg
b2YgdHdvIG1haW4gYmxvY2tzOiB0aGUKK1NJTEsgZW5jb2RlciBhbmQgdGhlIENFTFQgZW5jb2Rl
ci4gSG93ZXZlciwgdW5saWtlIHRoZSBjYXNlIG9mIHRoZSBkZWNvZGVyLCBhIHZhbGlkCisodGhv
dWdoIHBvdGVudGlhbGx5IHN1Ym9wdGltYWwpIE9wdXMgZW5jb2RlciBpcyBub3QgcmVxdWlyZWQg
dG8gc3VwcG9ydCBhbGwgbW9kZXMgYW5kCittYXkgdGh1cyBvbmx5IGluY2x1ZGUgYSBTSUxLIGVu
Y29kZXIgbW9kdWxlIG9yIGEgQ0VMVCBlbmNvZGVyIG1vZHVsZS4KK1RoZSBvdXRwdXQgYml0LXN0
cmVhbSBvZiB0aGUgT3B1cyBlbmNvZGluZyBjb250YWlucyBiaXRzIGZyb20gdGhlIFNJTEsgYW5k
IENFTFQKKyBlbmNvZGVycywgdGhvdWdoIHRoZXNlIGFyZSBub3Qgc2VwYXJhYmxlIGR1ZSB0byB0
aGUgdXNlIG9mIGEgcmFuZ2UgY29kZXIuCitBIGJsb2NrIGRpYWdyYW0gb2YgdGhlIGVuY29kZXIg
aXMgaWxsdXN0cmF0ZWQgYmVsb3cuCisKKzxmaWd1cmUgYWxpZ249ImNlbnRlciIgYW5jaG9yPSJv
cHVzLWVuY29kZXItZmlndXJlIiB0aXRsZT0iT3B1cyBFbmNvZGVyIj4KKzxhcnR3b3JrPgorPCFb
Q0RBVEFbCisgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLS0rICAgICstLS0tLS0tLS0r
CisgICAgICAgICAgICAgICAgICAgIHwgICBTYW1wbGUgICB8ICAgIHwgIFNJTEsgICB8LS0tLS0t
KworICAgICAgICAgICAgICAgICArLT58ICAgIFJhdGUgICAgfC0tLT58IEVuY29kZXIgfCAgICAg
IFYKKyAgKy0tLS0tLS0tLS0tKyAgfCAgfCBDb252ZXJzaW9uIHwgICAgfCAgICAgICAgIHwgKy0t
LS0tLS0tLSsKKyAgfCBPcHRpb25hbCAgfCAgfCAgKy0tLS0tLS0tLS0tLSsgICAgKy0tLS0tLS0t
LSsgfCAgUmFuZ2UgIHwKKy0+fCBIaWdoLXBhc3MgfC0tKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCBFbmNvZGVyIHwtLS0tPgorICB8ICBGaWx0ZXIgICB8ICB8ICArLS0tLS0tLS0t
LS0tLS0rICArLS0tLS0tLS0tKyB8ICAgICAgICAgfCBCaXQtCisgICstLS0tLS0tLS0tLSsgIHwg
IHwgICAgRGVsYXkgICAgIHwgIHwgIENFTFQgICB8ICstLS0tLS0tLS0rIHN0cmVhbQorICAgICAg
ICAgICAgICAgICArLT58IENvbXBlbnNhdGlvbiB8LT58IEVuY29kZXIgfCAgICAgIF4KKyAgICAg
ICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgfCAgfCAgICAgICAgIHwtLS0tLS0rCisgICAg
ICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLS0tLSsgICstLS0tLS0tLS0rCitdXT4KKzwvYXJ0
d29yaz4KKzwvZmlndXJlPgorPC90PgorCis8dD4KK0ZvciBhIG5vcm1hbCBlbmNvZGVyIHdoZXJl
IGJvdGggdGhlIFNJTEsgYW5kIHRoZSBDRUxUIG1vZHVsZXMgYXJlIGluY2x1ZGVkLCBhbiBvcHRp
bWFsCitlbmNvZGVyIHNob3VsZCBzZWxlY3Qgd2hpY2ggY29kaW5nIG1vZGUgdG8gdXNlIGF0IHJ1
bi10aW1lIGRlcGVuZGluZyBvbiB0aGUgY29uZGl0aW9ucy4KK0luIHRoZSByZWZlcmVuY2UgaW1w
bGVtZW50YXRpb24sIHRoZSBmcmFtZSBzaXplIGlzIHNlbGVjdGVkIGJ5IHRoZSBhcHBsaWNhdGlv
biwgYnV0IHRoZQorb3RoZXIgY29uZmlndXJhdGlvbiBwYXJhbWV0ZXJzIChudW1iZXIgb2YgY2hh
bm5lbHMsIGJhbmR3aWR0aCwgbW9kZSkgYXJlIGF1dG9tYXRpY2FsbHkKK3NlbGVjdGVkICh1bmxl
c3MgZXhwbGljaXRseSBvdmVycmlkZGVuIGJ5IHRoZSBhcHBsaWNhdGlvbikgZGVwZW5kIG9uIHRo
ZSBmb2xsb3dpbmc6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5SZXF1ZXN0ZWQgYml0cmF0
ZTwvdD4KKzx0PklucHV0IHNhbXBsaW5nIHJhdGU8L3Q+Cis8dD5UeXBlIG9mIHNpZ25hbCAoc3Bl
ZWNoIHZzIG11c2ljKTwvdD4KKzx0PkZyYW1lIHNpemUgaW4gdXNlPC90PgorPC9saXN0PgorCitU
aGUgdHlwZSBvZiBzaWduYWwgY3VycmVudGx5IG5lZWRzIHRvIGJlIHByb3ZpZGVkIGJ5IHRoZSBh
cHBsaWNhdGlvbiAodGhvdWdoIGl0IGNhbiBiZQorY2hhbmdlZCBpbiByZWFsLXRpbWUpLiBBbiBP
cHVzIGVuY29kZXIgaW1wbGVtZW50YXRpb24gY291bGQgYWxzbyBkbyBhdXRvbWF0aWMgZGV0ZWN0
aW9uLAorYnV0IHNpbmNlIE9wdXMgaXMgYW4gaW50ZXJhY3RpdmUgY29kZWMsIHN1Y2ggYW4gaW1w
bGVtZW50YXRpb24gd291bGQgbGlrZWx5IGhhdmUgdG8gZWl0aGVyCitkZWxheSB0aGUgc2lnbmFs
IChmb3Igbm9uLWludGVyYWN0aXZlIGFwcGxpY2F0aW9ucykgb3IgZGVsYXkgdGhlIG1vZGUgc3dp
dGNoaW5nIGRlY2lzaW9ucyAoZm9yCitpbnRlcmFjdGl2ZSBhcHBsaWNhdGlvbnMpLgorPC90Pgor
Cis8dD4KK1doZW4gdGhlIGVuY29kZXIgaXMgY29uZmlndXJlZCBmb3Igdm9pY2Ugb3ZlciBJUCBh
cHBsaWNhdGlvbnMsIHRoZSBpbnB1dCBzaWduYWwgaXMKK2ZpbHRlcmVkIGJ5IGEgaGlnaC1wYXNz
IGZpbHRlciB0byByZW1vdmUgdGhlIGxvd2VzdCBwYXJ0IG9mIHRoZSBzcGVjdHJ1bQordGhhdCBj
b250YWlucyBsaXR0bGUgc3BlZWNoIGVuZXJneSBhbmQgbWF5IGNvbnRhaW4gYmFja2dyb3VuZCBu
b2lzZS4gVGhpcyBpcyBhIHNlY29uZCBvcmRlcgorQXV0byBSZWdyZXNzaXZlIE1vdmluZyBBdmVy
YWdlIChpLmUuLCB3aXRoIHBvbGVzIGFuZCB6ZXJvcykgZmlsdGVyIHdpdGggYSBjdXQtb2ZmIGZy
ZXF1ZW5jeSBhcm91bmQgNTAmbmJzcDtIei4KK0luIHRoZSBmdXR1cmUsIGEgbXVzaWMgZGV0ZWN0
b3IgbWF5IGFsc28gYmUgdXNlZCB0byBsb3dlciB0aGUgY3V0LW9mZiBmcmVxdWVuY3kgd2hlbiB0
aGUKK2lucHV0IHNpZ25hbCBpcyBkZXRlY3RlZCB0byBiZSBtdXNpYyByYXRoZXIgdGhhbiBzcGVl
Y2guCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0icmFuZ2UtZW5jb2RlciIgdGl0bGU9IlJhbmdl
IEVuY29kZXIiPgorPHQ+CitUaGUgcmFuZ2UgY29kZXIgYWN0cyBhcyB0aGUgYml0LXBhY2tlciBm
b3IgT3B1cy4KK0l0IGlzIHVzZWQgaW4gdGhyZWUgZGlmZmVyZW50IHdheXM6IHRvIGVuY29kZQor
PGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitFbnRyb3B5LWNvZGVkIHN5bWJvbHMgd2l0aCBh
IGZpeGVkIHByb2JhYmlsaXR5IG1vZGVsIHVzaW5nIGVjX2VuY29kZSgpCisgKGVudGVuYy5jKSwK
KzwvdD4KKzx0PgorSW50ZWdlcnMgZnJvbSAwIHRvICgyKipNJm5ic3A7LSZuYnNwOzEpIHVzaW5n
IGVjX2VuY191aW50KCkgb3IgZWNfZW5jX2JpdHMoKQorIChlbnRlbmMuYyksPC90PgorPHQ+CitJ
bnRlZ2VycyBmcm9tIDAgdG8gKGZ0Jm5ic3A7LSZuYnNwOzEpICh3aGVyZSBmdCBpcyBub3QgYSBw
b3dlciBvZiB0d28pIHVzaW5nCisgZWNfZW5jX3VpbnQoKSAoZW50ZW5jLmMpLgorPC90PgorPC9s
aXN0PgorPC90PgorCis8dD4KK1RoZSByYW5nZSBlbmNvZGVyIG1haW50YWlucyBhbiBpbnRlcm5h
bCBzdGF0ZSB2ZWN0b3IgY29tcG9zZWQgb2YgdGhlIGZvdXItdHVwbGUKKyAodmFsLCZuYnNwO3Ju
ZywmbmJzcDtyZW0sJm5ic3A7ZXh0KSByZXByZXNlbnRpbmcgdGhlIGxvdyBlbmQgb2YgdGhlIGN1
cnJlbnQKKyByYW5nZSwgdGhlIHNpemUgb2YgdGhlIGN1cnJlbnQgcmFuZ2UsIGEgc2luZ2xlIGJ1
ZmZlcmVkIG91dHB1dCBieXRlLCBhbmQgYQorIGNvdW50IG9mIGFkZGl0aW9uYWwgY2FycnktcHJv
cGFnYXRpbmcgb3V0cHV0IGJ5dGVzLgorQm90aCB2YWwgYW5kIHJuZyBhcmUgMzItYml0IHVuc2ln
bmVkIGludGVnZXIgdmFsdWVzLCByZW0gaXMgYSBieXRlIHZhbHVlIG9yCisgbGVzcyB0aGFuIDI1
NSBvciB0aGUgc3BlY2lhbCB2YWx1ZSAtMSwgYW5kIGV4dCBpcyBhbiB1bnNpZ25lZCBpbnRlZ2Vy
IHdpdGggYXQKKyBsZWFzdCAxMSBiaXRzLgorVGhpcyBzdGF0ZSB2ZWN0b3IgaXMgaW5pdGlhbGl6
ZWQgYXQgdGhlIHN0YXJ0IG9mIGVhY2ggZWFjaCBmcmFtZSB0byB0aGUgdmFsdWUKKyAoMCwmbmJz
cDsyKiozMSwmbmJzcDstMSwmbmJzcDswKS4KK0FmdGVyIGVuY29kaW5nIGEgc2VxdWVuY2Ugb2Yg
c3ltYm9scywgdGhlIHZhbHVlIG9mIHJuZyBpbiB0aGUgZW5jb2RlciBzaG91bGQKKyBleGFjdGx5
IG1hdGNoIHRoZSB2YWx1ZSBvZiBybmcgaW4gdGhlIGRlY29kZXIgYWZ0ZXIgZGVjb2RpbmcgdGhl
IHNhbWUgc2VxdWVuY2UKKyBvZiBzeW1ib2xzLgorVGhpcyBpcyBhIHBvd2VyZnVsIHRvb2wgZm9y
IGRldGVjdGluZyBlcnJvcnMgaW4gZWl0aGVyIGFuIGVuY29kZXIgb3IgZGVjb2RlcgorIGltcGxl
bWVudGF0aW9uLgorVGhlIHZhbHVlIG9mIHZhbCwgb24gdGhlIG90aGVyIGhhbmQsIHJlcHJlc2Vu
dHMgZGlmZmVyZW50IHRoaW5ncyBpbiB0aGUgZW5jb2RlcgorIGFuZCBkZWNvZGVyLCBhbmQgaXMg
bm90IGV4cGVjdGVkIHRvIG1hdGNoLgorPC90PgorCis8dD4KK1RoZSBkZWNvZGVyIGhhcyBubyBh
bmFsb2cgZm9yIHJlbSBhbmQgZXh0LgorVGhlc2UgYXJlIHVzZWQgdG8gcGVyZm9ybSBjYXJyeSBw
cm9wYWdhdGlvbiBpbiB0aGUgcmVub3JtYWxpemF0aW9uIGxvb3AgYmVsb3cuCitFYWNoIGl0ZXJh
dGlvbiBvZiB0aGlzIGxvb3AgcHJvZHVjZXMgOSBiaXRzIG9mIG91dHB1dCwgY29uc2lzdGluZyBv
ZiA4IGRhdGEKKyBiaXRzIGFuZCBhIGNhcnJ5IGZsYWcuCitUaGUgZW5jb2RlciBjYW5ub3QgZGV0
ZXJtaW5lIHRoZSBmaW5hbCB2YWx1ZSBvZiB0aGUgb3V0cHV0IGJ5dGVzIHVudGlsIGl0CisgcHJv
cGFnYXRlcyB0aGVzZSBjYXJyeSBmbGFncy4KK1RoZXJlZm9yZSB0aGUgcmVmZXJlbmNlIGltcGxl
bWVudGF0aW9uIGJ1ZmZlcnMgYSBzaW5nbGUgbm9uLXByb3BhZ2F0aW5nIG91dHB1dAorIGJ5dGUg
KGkuZS4sIG9uZSBsZXNzIHRoYW4gMjU1KSBpbiByZW0gYW5kIGtlZXBzIGEgY291bnQgb2YgYWRk
aXRpb25hbAorIHByb3BhZ2F0aW5nIChpLmUuLCAyNTUpIG91dHB1dCBieXRlcyBpbiBleHQuCitB
biBpbXBsZW1lbnRhdGlvbiBtYXkgY2hvb3NlIHRvIHVzZSBhbnkgbWF0aGVtYXRpY2FsbHkgZXF1
aXZhbGVudCBzY2hlbWUgdG8KKyBwZXJmb3JtIGNhcnJ5IHByb3BhZ2F0aW9uLgorPC90PgorCis8
c2VjdGlvbiBhbmNob3I9ImVuY29kaW5nLXN5bWJvbHMiIHRpdGxlPSJFbmNvZGluZyBTeW1ib2xz
Ij4KKzx0PgorVGhlIG1haW4gZW5jb2RpbmcgZnVuY3Rpb24gaXMgZWNfZW5jb2RlKCkgKGVudGVu
Yy5jKSwgd2hpY2ggZW5jb2RlcyBzeW1ib2wgayBpbgorIHRoZSBjdXJyZW50IGNvbnRleHQgdXNp
bmcgdGhlIHNhbWUgdGhyZWUtdHVwbGUgKGZsW2tdLCZuYnNwO2ZoW2tdLCZuYnNwO2Z0KQorIGFz
IHRoZSBkZWNvZGVyIHRvIGRlc2NyaWJlIHRoZSByYW5nZSBvZiB0aGUgc3ltYm9sIChzZWUKKyA8
eHJlZiB0YXJnZXQ9InJhbmdlLWRlY29kZXIiLz4pLgorPC90PgorPHQ+CitlY19lbmNvZGUoKSB1
cGRhdGVzIHRoZSBzdGF0ZSBvZiB0aGUgZW5jb2RlciBhcyBmb2xsb3dzLgorSWYgZmxba10gaXMg
Z3JlYXRlciB0aGFuIHplcm8sIHRoZW4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29y
ayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgIHJuZwordmFsID0g
dmFsICsgcm5nIC0gLS0tICogKGZ0IC0gZmwpICwKKyAgICAgICAgICAgICAgICAgIGZ0CisKKyAg
ICAgIHJuZworcm5nID0gLS0tICogKGZoIC0gZmwpIC4KKyAgICAgIGZ0CitdXT48L2FydHdvcms+
Cis8L2ZpZ3VyZT4KK090aGVyd2lzZSwgdmFsIGlzIHVuY2hhbmdlZCBhbmQKKzxmaWd1cmUgYWxp
Z249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAg
ICAgIHJuZworcm5nID0gcm5nIC0gLS0tICogKGZoIC0gZmwpIC4KKyAgICAgICAgICAgIGZ0Citd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBkaXZpc2lvbnMgaGVyZSBhcmUgaW50ZWdlciBk
aXZpc2lvbi4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJyYW5nZS1lbmNvZGVyLXJlbm9ybSIg
dGl0bGU9IlJlbm9ybWFsaXphdGlvbiI+Cis8dD4KK0FmdGVyIHRoaXMgdXBkYXRlLCB0aGUgcmFu
Z2UgaXMgbm9ybWFsaXplZCB1c2luZyBhIHByb2NlZHVyZSB2ZXJ5IHNpbWlsYXIgdG8KKyB0aGF0
IG9mIDx4cmVmIHRhcmdldD0icmFuZ2UtZGVjb2Rlci1yZW5vcm0iLz4sIGltcGxlbWVudGVkIGJ5
CisgZWNfZW5jX25vcm1hbGl6ZSgpIChlbnRlbmMuYykuCitUaGUgZm9sbG93aW5nIHByb2Nlc3Mg
aXMgcmVwZWF0ZWQgdW50aWwgcm5nJm5ic3A7Jmd0OyZuYnNwOzIqKjIzLgorRmlyc3QsIHRoZSB0
b3AgOSBiaXRzIG9mIHZhbCwgKHZhbCZndDsmZ3Q7MjMpLCBhcmUgc2VudCB0byB0aGUgY2Fycnkg
YnVmZmVyLAorIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9ImVjX2VuY19jYXJyeV9vdXQiLz4u
CitUaGVuLCB0aGUgZW5jb2RlciBzZXRzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCit2YWwgPSAodmFsPDw4KSAmIDB4N0ZGRkZGRkYg
LAorCitybmcgPSBybmc8PDggLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8L3Nl
Y3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZWNfZW5jX2NhcnJ5X291dCIKKyB0aXRsZT0iQ2Fy
cnkgUHJvcGFnYXRpb24gYW5kIE91dHB1dCBCdWZmZXJpbmciPgorPHQ+CitUaGUgZnVuY3Rpb24g
ZWNfZW5jX2NhcnJ5X291dCgpIChlbnRlbmMuYykgaW1wbGVtZW50cyBjYXJyeSBwcm9wYWdhdGlv
biBhbmQKKyBvdXRwdXQgYnVmZmVyaW5nLgorSXQgdGFrZXMgYXMgaW5wdXQgYSA5LWJpdCB2YWx1
ZSwgYywgY29uc2lzdGluZyBvZiA4IGRhdGEgYml0cyBhbmQgYW4gYWRkaXRpb25hbAorIGNhcnJ5
IGJpdC4KK0lmIGMgaXMgZXF1YWwgdG8gdGhlIHZhbHVlIDI1NSwgdGhlbiBleHQgaXMgc2ltcGx5
IGluY3JlbWVudGVkLCBhbmQgbm8gb3RoZXIKKyBzdGF0ZSB1cGRhdGVzIGFyZSBwZXJmb3JtZWQu
CitPdGhlcndpc2UsIGxldCBiJm5ic3A7PSZuYnNwOyhjJmd0OyZndDs4KSBiZSB0aGUgY2Fycnkg
Yml0LgorVGhlbiwKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PgorSWYgdGhlIGJ1ZmZlcmVk
IGJ5dGUgcmVtIGNvbnRhaW5zIGEgdmFsdWUgb3RoZXIgdGhhbiAtMSwgdGhlIGVuY29kZXIgb3V0
cHV0cworIHRoZSBieXRlIChyZW0mbmJzcDsrJm5ic3A7YikuCitPdGhlcndpc2UsIGlmIHJlbSBp
cyAtMSwgbm8gYnl0ZSBpcyBvdXRwdXQuCis8L3Q+Cis8dD4KK0lmIGV4dCBpcyBub24temVybywg
dGhlbiB0aGUgZW5jb2RlciBvdXRwdXRzIGV4dCBieXRlcy0tLWFsbCB3aXRoIGEgdmFsdWUgb2Yg
MAorIGlmIGIgaXMgc2V0LCBvciAyNTUgaWYgYiBpcyB1bnNldC0tLWFuZCBzZXRzIGV4dCB0byAw
LgorPC90PgorPHQ+CityZW0gaXMgc2V0IHRvIHRoZSA4IGRhdGEgYml0czoKKzxmaWd1cmUgYWxp
Z249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3JlbSA9IGMg
JiAyNTUgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8
L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJlbmNvZGluZy1hbHRl
cm5hdGUiIHRpdGxlPSJBbHRlcm5hdGUgRW5jb2RpbmcgTWV0aG9kcyI+Cis8dD4KK1RoZSByZWZl
cmVuY2UgaW1wbGVtZW50YXRpb24gdXNlcyB0aHJlZSBhZGRpdGlvbmFsIGVuY29kaW5nIG1ldGhv
ZHMgdGhhdCBhcmUKKyBleGFjdGx5IGVxdWl2YWxlbnQgdG8gdGhlIGFib3ZlLCBidXQgbWFrZSBh
c3N1bXB0aW9ucyBhbmQgc2ltcGxpZmljYXRpb25zIHRoYXQKKyBhbGxvdyBmb3IgYSBtb3JlIGVm
ZmljaWVudCBpbXBsZW1lbnRhdGlvbi4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJlY19lbmNv
ZGVfYmluIiB0aXRsZT0iZWNfZW5jb2RlX2JpbigpIj4KKzx0PgorVGhlIGZpcnN0IGlzIGVjX2Vu
Y29kZV9iaW4oKSAoZW50ZW5jLmMpLCBkZWZpbmVkIHVzaW5nIHRoZSBwYXJhbWV0ZXIgZnRiCisg
aW5zdGVhZCBvZiBmdC4KK0l0IGlzIG1hdGhlbWF0aWNhbGx5IGVxdWl2YWxlbnQgdG8gY2FsbGlu
ZyBlY19lbmNvZGUoKSB3aXRoCisgZnQmbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2Z0YiksIGJ1dCBh
dm9pZHMgdXNpbmcgZGl2aXNpb24uCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hv
cj0iZWNfZW5jX2JpdF9sb2dwIiB0aXRsZT0iZWNfZW5jX2JpdF9sb2dwKCkiPgorPHQ+CitUaGUg
bmV4dCBpcyBlY19lbmNfYml0X2xvZ3AoKSAoZW50ZW5jLmMpLCB3aGljaCBlbmNvZGVzIGEgc2lu
Z2xlIGJpbmFyeSBzeW1ib2wuCitUaGUgY29udGV4dCBpcyBkZXNjcmliZWQgYnkgYSBzaW5nbGUg
cGFyYW1ldGVyLCBsb2dwLCB3aGljaCBpcyB0aGUgYWJzb2x1dGUKKyB2YWx1ZSBvZiB0aGUgYmFz
ZS0yIGxvZ2FyaXRobSBvZiB0aGUgcHJvYmFiaWxpdHkgb2YgYSAiMSIuCitJdCBpcyBtYXRoZW1h
dGljYWxseSBlcXVpdmFsZW50IHRvIGNhbGxpbmcgZWNfZW5jb2RlKCkgd2l0aCB0aGUgMy10dXBs
ZQorIChmbFtrXSZuYnNwOz0mbmJzcDswLCBmaFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7bG9n
cCkmbmJzcDstJm5ic3A7MSwKKyBmdCZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7bG9ncCkpIGlmIGsg
aXMgMCBhbmQgd2l0aAorIChmbFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7bG9ncCkmbmJzcDst
Jm5ic3A7MSwKKyBmaFtrXSZuYnNwOz0mbmJzcDtmdCZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7bG9n
cCkpIGlmIGsgaXMgMS4KK1RoZSBpbXBsZW1lbnRhdGlvbiByZXF1aXJlcyBubyBtdWx0aXBsaWNh
dGlvbnMgb3IgZGl2aXNpb25zLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9
ImVjX2VuY19pY2RmIiB0aXRsZT0iZWNfZW5jX2ljZGYoKSI+Cis8dD4KK1RoZSBsYXN0IGlzIGVj
X2VuY19pY2RmKCkgKGVudGVuYy5jKSwgd2hpY2ggZW5jb2RlcyBhIHNpbmdsZSBiaW5hcnkgc3lt
Ym9sIHdpdGgKKyBhIHRhYmxlLWJhc2VkIGNvbnRleHQgb2YgdXAgdG8gOCBiaXRzLgorVGhpcyB1
c2VzIHRoZSBzYW1lIGljZGYgdGFibGUgYXMgZWNfZGVjX2ljZGYoKSBmcm9tCisgPHhyZWYgdGFy
Z2V0PSJlY19kZWNfaWNkZiIvPi4KK1RoZSBmdW5jdGlvbiBpcyBtYXRoZW1hdGljYWxseSBlcXVp
dmFsZW50IHRvIGNhbGxpbmcgZWNfZW5jb2RlKCkgd2l0aAorIGZsW2tdJm5ic3A7PSZuYnNwOygx
Jmx0OyZsdDtmdGIpJm5ic3A7LSZuYnNwO2ljZGZbay0xXSAob3IgMCBpZgorIGsmbmJzcDs9PSZu
YnNwOzApLCBmaFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7ZnRiKSZuYnNwOy0mbmJzcDtpY2Rm
W2tdLCBhbmQKKyBmdCZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7ZnRiKS4KK1RoaXMgb25seSBzYXZl
cyBhIGZldyBhcml0aG1ldGljIG9wZXJhdGlvbnMgb3ZlciBlY19lbmNvZGVfYmluKCksIGJ1dCBh
bGxvd3MKKyB0aGUgZW5jb2RlciB0byB1c2UgdGhlIHNhbWUgaWNkZiB0YWJsZXMgYXMgdGhlIGRl
Y29kZXIuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9y
PSJlbmNvZGluZy1iaXRzIiB0aXRsZT0iRW5jb2RpbmcgUmF3IEJpdHMiPgorPHQ+CitUaGUgcmF3
IGJpdHMgdXNlZCBieSB0aGUgQ0VMVCBsYXllciBhcmUgcGFja2VkIGF0IHRoZSBlbmQgb2YgdGhl
IGJ1ZmZlciB1c2luZworIGVjX2VuY19iaXRzKCkgKGVudGVuYy5jKS4KK0JlY2F1c2UgdGhlIHJh
dyBiaXRzIG1heSBjb250aW51ZSBpbnRvIHRoZSBsYXN0IGJ5dGUgb3V0cHV0IGJ5IHRoZSByYW5n
ZSBjb2RlcgorIGlmIHRoZXJlIGlzIHJvb20gaW4gdGhlIGxvdy1vcmRlciBiaXRzLCB0aGUgZW5j
b2RlciBtdXN0IGJlIHByZXBhcmVkIHRvIG1lcmdlCisgdGhlc2UgdmFsdWVzIGludG8gYSBzaW5n
bGUgYnl0ZS4KK1RoZSBwcm9jZWR1cmUgaW4gPHhyZWYgdGFyZ2V0PSJlbmNvZGVyLWZpbmFsaXpp
bmciLz4gZG9lcyB0aGlzIGluIGEgd2F5IHRoYXQKKyBlbnN1cmVzIGJvdGggdGhlIHJhbmdlIGNv
ZGVkIGRhdGEgYW5kIHRoZSByYXcgYml0cyBjYW4gYmUgZGVjb2RlZAorIHN1Y2Nlc3NmdWxseS4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJlbmNvZGluZy1pbnRzIiB0aXRs
ZT0iRW5jb2RpbmcgVW5pZm9ybWx5IERpc3RyaWJ1dGVkIEludGVnZXJzIj4KKzx0PgorVGhlIGZ1
bmN0aW9uIGVjX2VuY191aW50KCkgKGVudGVuYy5jKSBlbmNvZGVzIG9uZSBvZiBmdCBlcXVpcHJv
YmFibGUgc3ltYm9scyBpbgorIHRoZSByYW5nZSAwIHRvIChmdCZuYnNwOy0mbmJzcDsxKSwgaW5j
bHVzaXZlLCBlYWNoIHdpdGggYSBmcmVxdWVuY3kgb2YgMSwKKyB3aGVyZSBmdCBtYXkgYmUgYXMg
bGFyZ2UgYXMgKDIqKjMyJm5ic3A7LSZuYnNwOzEpLgorTGlrZSB0aGUgZGVjb2RlciAoc2VlIDx4
cmVmIHRhcmdldD0iZWNfZGVjX3VpbnQiLz4pLCBpdCBzcGxpdHMgdXAgdGhlCisgdmFsdWUgaW50
byBhIHJhbmdlIGNvZGVkIHN5bWJvbCByZXByZXNlbnRpbmcgdXAgdG8gOCBvZiB0aGUgaGlnaCBi
aXRzLCBhbmQsIGlmCisgbmVjZXNzYXJ5LCByYXcgYml0cyByZXByZXNlbnRpbmcgdGhlIHJlbWFp
bmRlciBvZiB0aGUgdmFsdWUuCis8L3Q+Cis8dD4KK2VjX2VuY191aW50KCkgdGFrZXMgYSB0d28t
dHVwbGUgKHQsJm5ic3A7ZnQpLCB3aGVyZSB0IGlzIHRoZSB2YWx1ZSB0byBiZQorIGVuY29kZWQs
IDAmbmJzcDsmbHQ7PSZuYnNwO3QmbmJzcDsmbHQ7Jm5ic3A7ZnQsIGFuZCBmdCBpcyBub3QgbmVj
ZXNzYXJpbHkgYQorIHBvd2VyIG9mIHR3by4KK0xldCBmdGImbmJzcDs9Jm5ic3A7aWxvZyhmdCZu
YnNwOy0mbmJzcDsxKSwgaS5lLiwgdGhlIG51bWJlciBvZiBiaXRzIHJlcXVpcmVkCisgdG8gc3Rv
cmUgKGZ0Jm5ic3A7LSZuYnNwOzEpIGluIHR3bydzIGNvbXBsZW1lbnQgbm90YXRpb24uCitJZiBm
dGIgaXMgOCBvciBsZXNzLCB0aGVuIHQgaXMgZW5jb2RlZCBkaXJlY3RseSB1c2luZyBlY19lbmNv
ZGUoKSB3aXRoIHRoZQorIHRocmVlLXR1cGxlICh0LCB0Jm5ic3A7KyZuYnNwOzEsIGZ0KS4KKzwv
dD4KKzx0PgorSWYgZnRiIGlzIGdyZWF0ZXIgdGhhbiA4LCB0aGVuIHRoZSB0b3AgOCBiaXRzIG9m
IHQgYXJlIGVuY29kZWQgdXNpbmcgdGhlCisgdGhyZWUtdHVwbGUgKHQmZ3Q7Jmd0OyhmdGImbmJz
cDstJm5ic3A7OCksCisgKHQmZ3Q7Jmd0OyhmdGImbmJzcDstJm5ic3A7OCkpJm5ic3A7KyZuYnNw
OzEsCisgKChmdCZuYnNwOy0mbmJzcDsxKSZndDsmZ3Q7KGZ0YiZuYnNwOy0mbmJzcDs4KSkmbmJz
cDsrJm5ic3A7MSksIGFuZCB0aGUKKyByZW1haW5pbmcgYml0cywKKyAodCZuYnNwOyZhbXA7Jm5i
c3A7KCgxJmx0OyZsdDsoZnRiJm5ic3A7LSZuYnNwOzgpKSZuYnNwOy0mbmJzcDsxKSwKKyBhcmUg
ZW5jb2RlZCBhcyByYXcgYml0cyB3aXRoIGVjX2VuY19iaXRzKCkuCis8L3Q+Cis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0iZW5jb2Rlci1maW5hbGl6aW5nIiB0aXRsZT0iRmluYWxpemlu
ZyB0aGUgU3RyZWFtIj4KKzx0PgorQWZ0ZXIgYWxsIHN5bWJvbHMgYXJlIGVuY29kZWQsIHRoZSBz
dHJlYW0gbXVzdCBiZSBmaW5hbGl6ZWQgYnkgb3V0cHV0dGluZyBhCisgdmFsdWUgaW5zaWRlIHRo
ZSBjdXJyZW50IHJhbmdlLgorTGV0IGVuZCBiZSB0aGUgaW50ZWdlciBpbiB0aGUgaW50ZXJ2YWwg
W3ZhbCwmbmJzcDt2YWwmbmJzcDsrJm5ic3A7cm5nKSB3aXRoIHRoZQorIGxhcmdlc3QgbnVtYmVy
IG9mIHRyYWlsaW5nIHplcm8gYml0cywgYiwgc3VjaCB0aGF0CisgKGVuZCZuYnNwOysmbmJzcDso
MSZsdDsmbHQ7YikmbmJzcDstJm5ic3A7MSkgaXMgYWxzbyBpbiB0aGUgaW50ZXJ2YWwKKyBbdmFs
LCZuYnNwO3ZhbCZuYnNwOysmbmJzcDtybmcpLgorVGhpcyBjaG9pY2Ugb2YgZW5kIGFsbG93cyB0
aGUgbWF4aW11bSBudW1iZXIgb2YgdHJhaWxpbmcgYml0cyB0byBiZSBzZXQgdG8KKyBhcmJpdHJh
cnkgdmFsdWVzIHdoaWxlIHN0aWxsIGVuc3VyaW5nIHRoZSByYW5nZSBjb2RlZCBwYXJ0IG9mIHRo
ZSBidWZmZXIgY2FuCisgYmUgZGVjb2RlZCBjb3JyZWN0bHkuCitUaGVuLCB3aGlsZSBlbmQgaXMg
bm90IHplcm8sIHRoZSB0b3AgOSBiaXRzIG9mIGVuZCwgaS5lLiwgKGVuZCZndDsmZ3Q7MjMpLCBh
cmUKKyBwYXNzZWQgdG8gdGhlIGNhcnJ5IGJ1ZmZlciBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIHBy
b2NlZHVyZSBpbgorIDx4cmVmIHRhcmdldD0iZWNfZW5jX2NhcnJ5X291dCIvPiwgYW5kIGVuZCBp
cyB1cGRhdGVkIHZpYQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJj
ZW50ZXIiPjwhW0NEQVRBWworZW5kID0gKGVuZDw8OCkgJiAweDdGRkZGRkZGIC4KK11dPjwvYXJ0
d29yaz4KKzwvZmlndXJlPgorRmluYWxseSwgaWYgdGhlIGJ1ZmZlcmVkIG91dHB1dCBieXRlLCBy
ZW0sIGlzIG5laXRoZXIgemVybyBub3IgdGhlIHNwZWNpYWwKKyB2YWx1ZSAtMSwgb3IgdGhlIGNh
cnJ5IGNvdW50LCBleHQsIGlzIGdyZWF0ZXIgdGhhbiB6ZXJvLCB0aGVuIDkgemVybyBiaXRzIGFy
ZQorIHNlbnQgdG8gdGhlIGNhcnJ5IGJ1ZmZlciB0byBmbHVzaCBpdCB0byB0aGUgb3V0cHV0IGJ1
ZmZlci4KK1doZW4gb3V0cHV0dGluZyB0aGUgZmluYWwgYnl0ZSBmcm9tIHRoZSByYW5nZSBjb2Rl
ciwgaWYgaXQgd291bGQgb3ZlcmxhcCBhbnkKKyByYXcgYml0cyBhbHJlYWR5IHBhY2tlZCBpbnRv
IHRoZSBlbmQgb2YgdGhlIG91dHB1dCBidWZmZXIsIHRoZXkgc2hvdWxkIGJlIE9SZWQKKyBpbnRv
IHRoZSBzYW1lIGJ5dGUuCitUaGUgYml0IGFsbG9jYXRpb24gcm91dGluZXMgaW4gdGhlIENFTFQg
bGF5ZXIgc2hvdWxkIGVuc3VyZSB0aGF0IHRoaXMgY2FuIGJlCisgZG9uZSB3aXRob3V0IGNvcnJ1
cHRpbmcgdGhlIHJhbmdlIGNvZGVyIGRhdGEgc28gbG9uZyBhcyBlbmQgaXMgY2hvc2VuIGFzCisg
ZGVzY3JpYmVkIGFib3ZlLgorSWYgdGhlcmUgaXMgYW55IHNwYWNlIGJldHdlZW4gdGhlIGVuZCBv
ZiB0aGUgcmFuZ2UgY29kZXIgZGF0YSBhbmQgdGhlIGVuZCBvZgorIHRoZSByYXcgYml0cywgaXQg
aXMgcGFkZGVkIHdpdGggemVybyBiaXRzLgorVGhpcyBlbnRpcmUgcHJvY2VzcyBpcyBpbXBsZW1l
bnRlZCBieSBlY19lbmNfZG9uZSgpIChlbnRlbmMuYykuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxz
ZWN0aW9uIGFuY2hvcj0iZW5jb2Rlci10ZWxsIiB0aXRsZT0iQ3VycmVudCBCaXQgVXNhZ2UiPgor
PHQ+CisgICBUaGUgYml0IGFsbG9jYXRpb24gcm91dGluZXMgaW4gT3B1cyBuZWVkIHRvIGJlIGFi
bGUgdG8gZGV0ZXJtaW5lIGEKKyAgIGNvbnNlcnZhdGl2ZSB1cHBlciBib3VuZCBvbiB0aGUgbnVt
YmVyIG9mIGJpdHMgdGhhdCBoYXZlIGJlZW4gdXNlZAorICAgdG8gZW5jb2RlIHRoZSBjdXJyZW50
IGZyYW1lIHRodXMgZmFyLiBUaGlzIGRyaXZlcyBhbGxvY2F0aW9uCisgICBkZWNpc2lvbnMgYW5k
IGVuc3VyZXMgdGhhdCB0aGUgcmFuZ2UgY29kZXIgYW5kIHJhdyBiaXRzIHdpbGwgbm90CisgICBv
dmVyZmxvdyB0aGUgb3V0cHV0IGJ1ZmZlci4gVGhpcyBpcyBjb21wdXRlZCBpbiB0aGUKKyAgIHJl
ZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiB0byB3aG9sZS1iaXQgcHJlY2lzaW9uIGJ5CisgICB0aGUg
ZnVuY3Rpb24gZWNfdGVsbCgpIChlbnRjb2RlLmgpIGFuZCB0byBmcmFjdGlvbmFsIDEvOHRoIGJp
dAorICAgcHJlY2lzaW9uIGJ5IHRoZSBmdW5jdGlvbiBlY190ZWxsX2ZyYWMoKSAoZW50Y29kZS5j
KS4KKyAgIExpa2UgYWxsIG9wZXJhdGlvbnMgaW4gdGhlIHJhbmdlIGNvZGVyLCBpdCBtdXN0IGJl
IGltcGxlbWVudGVkIGluIGEKKyAgIGJpdC1leGFjdCBtYW5uZXIsIGFuZCBtdXN0IHByb2R1Y2Ug
ZXhhY3RseSB0aGUgc2FtZSB2YWx1ZSByZXR1cm5lZCBieQorICAgdGhlIHNhbWUgZnVuY3Rpb25z
IGluIHRoZSBkZWNvZGVyIGFmdGVyIGRlY29kaW5nIHRoZSBzYW1lIHN5bWJvbHMuCis8L3Q+Cis8
L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9J1NJTEsgRW5jb2Rlcic+
CisgIDx0PgorICAgIEluIG1hbnkgcmVzcGVjdHMgdGhlIFNJTEsgZW5jb2RlciBtaXJyb3JzIHRo
ZSBTSUxLIGRlY29kZXIgZGVzY3JpYmVkCisgICAgaW4gPHhyZWYgdGFyZ2V0PSdzaWxrX2RlY29k
ZXJfb3V0bGluZScvPi4KKyAgICBEZXRhaWxzIHN1Y2ggYXMgdGhlIHF1YW50aXphdGlvbiBhbmQg
cmFuZ2UgY29kZXIgdGFibGVzIGNhbiBiZSBmb3VuZAorICAgIHRoZXJlLCB3aGlsZSB0aGlzIHNl
Y3Rpb24gZGVzY3JpYmVzIHRoZSBoaWdoLWxldmVsIGRlc2lnbiBjaG9pY2VzIHRoYXQKKyAgICB3
ZXJlIG1hZGUuCisgICAgVGhlIGRpYWdyYW0gYmVsb3cgc2hvd3MgdGhlIGJhc2ljIG1vZHVsZXMg
b2YgdGhlIFNJTEsgZW5jb2Rlci4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciIgYW5jaG9yPSJzaWxr
X2VuY29kZXJfZmlndXJlIiB0aXRsZT0iU0lMSyBFbmNvZGVyIj4KKzxhcnR3b3JrPgorPCFbQ0RB
VEFbCisgICAgICAgKy0tLS0tLS0tLS0rICAgICstLS0tLS0tLSsgICAgKy0tLS0tLS0tLSsKKyAg
ICAgICB8ICBTYW1wbGUgIHwgICAgfCBTdGVyZW8gfCAgICB8ICBTSUxLICAgfAorLS0tLS0tPnwg
ICBSYXRlICAgfC0tLT58IE1peGluZyB8LS0tPnwgIENvcmUgICB8LS0tLS0tLS0tLT4KK0lucHV0
ICB8Q29udmVyc2lvbnwgICAgfCAgICAgICAgfCAgICB8IEVuY29kZXIgfCAgQml0c3RyZWFtCisg
ICAgICAgKy0tLS0tLS0tLS0rICAgICstLS0tLS0tLSsgICAgKy0tLS0tLS0tLSsKK11dPgorPC9h
cnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+CisKKzxzZWN0aW9uIHRpdGxlPSdTYW1wbGUgUmF0ZSBD
b252ZXJzaW9uJz4KKzx0PgorVGhlIGlucHV0IHNpZ25hbCdzIHNhbXBsaW5nIHJhdGUgaXMgYWRq
dXN0ZWQgYnkgYSBzYW1wbGUgcmF0ZSBjb252ZXJzaW9uCittb2R1bGUgc28gdGhhdCBpdCBtYXRj
aGVzIHRoZSBTSUxLIGludGVybmFsIHNhbXBsaW5nIHJhdGUuCitUaGUgaW5wdXQgdG8gdGhlIHNh
bXBsZSByYXRlIGNvbnZlcnRlciBpcyBkZWxheWVkIGJ5IGEgbnVtYmVyIG9mIHNhbXBsZXMKK2Rl
cGVuZGluZyBvbiB0aGUgc2FtcGxlIHJhdGUgcmF0aW8sIHN1Y2ggdGhhdCB0aGUgb3ZlcmFsbCBk
ZWxheSBpcyBjb25zdGFudAorZm9yIGFsbCBpbnB1dCBhbmQgb3V0cHV0IHNhbXBsZSByYXRlcy4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9J1N0ZXJlbyBNaXhpbmcnPgorPHQ+
CitUaGUgc3RlcmVvIG1peGVyIGlzIG9ubHkgdXNlZCBmb3Igc3RlcmVvIGlucHV0IHNpZ25hbHMu
CitJdCBjb252ZXJ0cyBhIHN0ZXJlbyBsZWZ0L3JpZ2h0IHNpZ25hbCBpbnRvIGFuIGFkYXB0aXZl
CittaWQvc2lkZSByZXByZXNlbnRhdGlvbi4KK1RoZSBmaXJzdCBzdGVwIGlzIHRvIGNvbXB1dGUg
bm9uLWFkYXB0aXZlIG1pZC9zaWRlIHNpZ25hbHMKK2FzIGhhbGYgdGhlIHN1bSBhbmQgZGlmZmVy
ZW5jZSBiZXR3ZWVuIGxlZnQgYW5kIHJpZ2h0IHNpZ25hbHMuCitUaGUgc2lkZSBzaWduYWwgaXMg
dGhlbiBtaW5pbWl6ZWQgaW4gZW5lcmd5IGJ5IHN1YnRyYWN0aW5nIGEKK3ByZWRpY3Rpb24gb2Yg
aXQgYmFzZWQgb24gdGhlIG1pZCBzaWduYWwuCitUaGlzIHByZWRpY3Rpb24gd29ya3Mgd2VsbCB3
aGVuIHRoZSBsZWZ0IGFuZCByaWdodCBzaWduYWxzCitleGhpYml0IGxpbmVhciBkZXBlbmRlbmN5
LCBmb3IgaW5zdGFuY2UgZm9yIGFuIGFtcGxpdHVkZS1wYW5uZWQKK2lucHV0IHNpZ25hbC4KK0xp
a2UgaW4gdGhlIGRlY29kZXIsIHRoZSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cyBhcmUgbGluZWFy
bHkKK2ludGVycG9sYXRlZCBkdXJpbmcgdGhlIGZpcnN0IDgmbmJzcDttcyBvZiB0aGUgZnJhbWUu
CisgIFRoZSBtaWQgc2lnbmFsIGlzIGFsd2F5cyBlbmNvZGVkLCB3aGVyZWFzIHRoZSByZXNpZHVh
bAorICBzaWRlIHNpZ25hbCBpcyBvbmx5IGVuY29kZWQgaWYgaXQgaGFzIHN1ZmZpY2llbnQKKyAg
ZW5lcmd5IGNvbXBhcmVkIHRvIHRoZSBtaWQgc2lnbmFsJ3MgZW5lcmd5LgorICBJZiBpdCBoYXMg
bm90LAorICB0aGUgIm1pZF9vbmx5X2ZsYWciIGlzIHNldCB3aXRob3V0IGVuY29kaW5nIHRoZSBz
aWRlIHNpZ25hbC4KKzwvdD4KKzx0PgorVGhlIHByZWRpY3RvciBjb2VmZmljaWVudHMgYXJlIGNv
ZGVkIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlcgordGhlIHNpZGUgc2lnbmFsIGlzIGVuY29kZWQuCitG
b3IgZWFjaCBmcmFtZSwgdHdvIHByZWRpY3RvciBjb2VmZmljaWVudHMgYXJlIGNvbXB1dGVkLCBv
bmUKK3RoYXQgcHJlZGljdHMgYmV0d2VlbiBsb3ctcGFzc2VkIG1pZCBhbmQgc2lkZSBjaGFubmVs
cywgYW5kCitvbmUgdGhhdCBwcmVkaWN0cyBiZXR3ZWVuIGhpZ2gtcGFzc2VkIG1pZCBhbmQgc2lk
ZSBjaGFubmVscy4KK1RoZSBsb3ctcGFzcyBmaWx0ZXIgaXMgYSBzaW1wbGUgdGhyZWUtdGFwIGZp
bHRlcgorYW5kIGNyZWF0ZXMgYSBkZWxheSBvZiBvbmUgc2FtcGxlLgorVGhlIGhpZ2gtcGFzcyBm
aWx0ZXJlZCBzaWduYWwgaXMgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbgordGhlIG1pZCBzaWduYWwg
ZGVsYXllZCBieSBvbmUgc2FtcGxlIGFuZCB0aGUgbG93LXBhc3NlZAorc2lnbmFsLiAgSW5zdGVh
ZCBvZiBleHBsaWNpdGx5IGNvbXB1dGluZyB0aGUgaGlnaC1wYXNzZWQKK3NpZ25hbCwgaXQgaXMg
Y29tcHV0YXRpb25hbGx5IG1vcmUgZWZmaWNpZW50IHRvIHRyYW5zZm9ybQordGhlIHByZWRpY3Rp
b24gY29lZmZpY2llbnRzIGJlZm9yZSBhcHBseWluZyB0aGVtIHRvIHRoZQorZmlsdGVyZWQgbWlk
IHNpZ25hbCwgYXMgZm9sbG93cworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFs
aWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCitwcmVkKG4pID0gTFAobikgKiB3MCArIEhQKG4pICog
dzEKKyAgICAgICAgPSBMUChuKSAqIHcwICsgKG1pZChuLTEpIC0gTFAobikpICogdzEKKyAgICAg
ICAgPSBMUChuKSAqICh3MCAtIHcxKSArIG1pZChuLTEpICogdzEKK11dPgorPC9hcnR3b3JrPgor
PC9maWd1cmU+Cit3aGVyZSB3MCBhbmQgdzEgYXJlIHRoZSBsb3ctcGFzcyBhbmQgaGlnaC1wYXNz
IHByZWRpY3Rpb24KK2NvZWZmaWNpZW50cywgbWlkKG4tMSkgaXMgdGhlIG1pZCBzaWduYWwgZGVs
YXllZCBieSBvbmUgc2FtcGxlLAorTFAobikgYW5kIEhQKG4pIGFyZSB0aGUgbG93LXBhc3NlZCBh
bmQgaGlnaC1wYXNzZWQKK3NpZ25hbHMgYW5kIHByZWQobikgaXMgdGhlIHByZWRpY3Rpb24gc2ln
bmFsIHRoYXQgaXMgc3VidHJhY3RlZAorZnJvbSB0aGUgc2lkZSBzaWduYWwuCis8L3Q+Cis8L3Nl
Y3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSdTSUxLIENvcmUgRW5jb2Rlcic+Cis8dD4KK1doYXQg
Zm9sbG93cyBpcyBhIGRlc2NyaXB0aW9uIG9mIHRoZSBjb3JlIGVuY29kZXIgYW5kIGl0cyBjb21w
b25lbnRzLgorRm9yIHNpbXBsaWNpdHksIHRoZSBjb3JlIGVuY29kZXIgaXMgcmVmZXJyZWQgdG8g
c2ltcGx5IGFzIHRoZSBlbmNvZGVyIGluCit0aGUgcmVtYWluZGVyIG9mIHRoaXMgc2VjdGlvbi4g
QW4gb3ZlcnZpZXcgb2YgdGhlIGVuY29kZXIgaXMgZ2l2ZW4gaW4KKzx4cmVmIHRhcmdldD0iZW5j
b2Rlcl9maWd1cmUiIC8+LgorPC90PgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIiBhbmNob3I9ImVu
Y29kZXJfZmlndXJlIiB0aXRsZT0iU0lMSyBDb3JlIEVuY29kZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+Cis8IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICArLS0tKworICAgICAgICAgICAgICAgICAgICAgICAg
ICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPnwgICB8CisgICAgICstLS0tLS0t
LS0rICAgICAgICAgIHwgICAgICArLS0tLS0tLS0tKyAgICAgICAgICAgICAgICAgfCAgIHwKKyAg
ICAgfFZvaWNlICAgIHwgICAgICAgICAgfCAgICAgIHxMVFAgICAgICB8MTIgICAgICAgICAgICAg
ICB8ICAgfAorICstLT58QWN0aXZpdHkgfC0tKyAgICAgICArLS0tLS0+fFNjYWxpbmcgIHwtLS0t
LS0tLS0tLSstLS0tPnwgICB8CisgfCAgIHxEZXRlY3RvciB8MyB8ICAgICAgIHwgICAgICB8Q29u
dHJvbCAgfDwtLSsgICAgICAgfCAgICAgfCAgIHwKKyB8ICAgKy0tLS0tLS0tLSsgIHwgICAgICAg
fCAgICAgICstLS0tLS0tLS0rICAgfCAgICAgICB8ICAgICB8ICAgfAorIHwgICAgICAgICAgICAg
ICAgfCAgICAgICB8ICAgICAgKy0tLS0tLS0tLSsgICB8ICAgICAgIHwgICAgIHwgICB8CisgfCAg
ICAgICAgICAgICAgICB8ICAgICAgIHwgICAgICB8R2FpbnMgICAgfCAgIHwgICAgICAgfCAgICAg
fCAgIHwKKyB8ICAgICAgICAgICAgICAgIHwgICAgICAgfCAgKy0tPnxQcm9jZXNzb3J8LS0tfC0t
LSstLS18LS0tLT58IFIgfAorIHwgICAgICAgICAgICAgICAgfCAgICAgICB8ICB8ICAgfCAgICAg
ICAgIHwxMSB8ICAgfCAgIHwgICAgIHwgYSB8CisgfCAgICAgICAgICAgICAgIFwvICAgICAgIHwg
IHwgICArLS0tLS0tLS0tKyAgIHwgICB8ICAgfCAgICAgfCBuIHwKKyB8ICAgICAgICAgICstLS0t
LS0tLS0rICAgfCAgfCAgICstLS0tLS0tLS0rICAgfCAgIHwgICB8ICAgICB8IGcgfAorIHwgICAg
ICAgICAgfFBpdGNoICAgIHwgICB8ICB8ICAgfExTRiAgICAgIHwgICB8ICAgfCAgIHwgICAgIHwg
ZSB8CisgfCAgICAgICArLT58QW5hbHlzaXMgfC0tLSsgIHwgICB8UXVhbnRpemVyfC0tLXwtLS18
LS0tfC0tLS0+fCAgIHwKKyB8ICAgICAgIHwgIHwgICAgICAgICB8NCAgfCAgfCAgIHwgICAgICAg
ICB8OCAgfCAgIHwgICB8ICAgICB8IEUgfC0tPgorIHwgICAgICAgfCAgKy0tLS0tLS0tLSsgICB8
ICB8ICAgKy0tLS0tLS0tLSsgICB8ICAgfCAgIHwgICAgIHwgbiB8IDIKKyB8ICAgICAgIHwgICAg
ICAgICAgICAgICAgfCAgfCAgICA5L1wgIDEwfCAgICAgfCAgIHwgICB8ICAgICB8IGMgfAorIHwg
ICAgICAgfCAgICAgICAgICAgICAgICB8ICB8ICAgICB8ICAgIFwvICAgICB8ICAgfCAgIHwgICAg
IHwgbyB8CisgfCAgICAgICB8ICArLS0tLS0tLS0tKyAgIHwgIHwgICArLS0tLS0tLS0tLSsgIHwg
ICB8ICAgfCAgICAgfCBkIHwKKyB8ICAgICAgIHwgIHxOb2lzZSAgICB8ICAgKy0tfC0tPnxQcmVk
aWN0aW9ufC0tKy0tLXwtLS18LS0tLT58IGUgfAorIHwgICAgICAgKy0+fFNoYXBpbmcgIHwtLS18
LS0rICAgfEFuYWx5c2lzICB8NyB8ICAgfCAgIHwgICAgIHwgciB8CisgfCAgICAgICB8ICB8QW5h
bHlzaXMgfDUgIHwgIHwgICB8ICAgICAgICAgIHwgIHwgICB8ICAgfCAgICAgfCAgIHwKKyB8ICAg
ICAgIHwgICstLS0tLS0tLS0rICAgfCAgfCAgICstLS0tLS0tLS0tKyAgfCAgIHwgICB8ICAgICB8
ICAgfAorIHwgICAgICAgfCAgICAgICAgICAgICAgICB8ICB8ICAgICAgICAvXCAgICAgICB8ICAg
fCAgIHwgICAgIHwgICB8CisgfCAgICAgICB8ICAgICArLS0tLS0tLS0tLXwtLXwtLS0tLS0tLSsg
ICAgICAgIHwgICB8ICAgfCAgICAgfCAgIHwKKyB8ICAgICAgIHwgICAgIHwgICAgICAgICBcLyAg
XC8gICAgICAgICAgICAgICBcLyAgXC8gIFwvICAgICB8ICAgfAorIHwgICAgICAgfCAgICAgfCAg
ICAgICArLS0tLS0tLS0tKyAgICAgICAgICArLS0tLS0tLS0tLS0tKyAgIHwgICB8CisgfCAgICAg
ICB8ICAgICB8ICAgICAgIHwgICAgICAgICB8ICAgICAgICAgIHxOb2lzZSAgICAgICB8ICAgfCAg
IHwKKy0rLS0tLS0tLSstLS0tLSstLS0tLS0+fFByZWZpbHRlcnwtLS0tLS0tLS0+fFNoYXBpbmcg
ICAgIHwtLT58ICAgfAorMSAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfCA2ICAgICAg
ICB8UXVhbnRpemF0aW9ufDEzIHwgICB8CisgICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0t
LS0rICAgICAgICAgICstLS0tLS0tLS0tLS0rICAgKy0tLSsKKworMTogIElucHV0IHNwZWVjaCBz
aWduYWwKKzI6ICBSYW5nZSBlbmNvZGVkIGJpdHN0cmVhbQorMzogIFZvaWNlIGFjdGl2aXR5IGVz
dGltYXRlCis0OiAgUGl0Y2ggbGFncyAocGVyIDUgbXMpIGFuZCB2b2ljaW5nIGRlY2lzaW9uIChw
ZXIgMjAgbXMpCis1OiAgTm9pc2Ugc2hhcGluZyBxdWFudGl6YXRpb24gY29lZmZpY2llbnRzCisg
IC0gU2hvcnQgdGVybSBzeW50aGVzaXMgYW5kIGFuYWx5c2lzCisgICAgbm9pc2Ugc2hhcGluZyBj
b2VmZmljaWVudHMgKHBlciA1IG1zKQorICAtIExvbmcgdGVybSBzeW50aGVzaXMgYW5kIGFuYWx5
c2lzIG5vaXNlCisgICAgc2hhcGluZyBjb2VmZmljaWVudHMgKHBlciA1IG1zIGFuZCBmb3Igdm9p
Y2VkIHNwZWVjaCBvbmx5KQorICAtIE5vaXNlIHNoYXBpbmcgdGlsdCAocGVyIDUgbXMpCisgIC0g
UXVhbnRpemVyIGdhaW4vc3RlcCBzaXplIChwZXIgNSBtcykKKzY6ICBJbnB1dCBzaWduYWwgZmls
dGVyZWQgd2l0aCBhbmFseXNpcyBub2lzZSBzaGFwaW5nIGZpbHRlcnMKKzc6ICBTaG9ydCBhbmQg
bG9uZyB0ZXJtIHByZWRpY3Rpb24gY29lZmZpY2llbnRzCisgICAgTFRQIChwZXIgNSBtcykgYW5k
IExQQyAocGVyIDIwIG1zKQorODogIExTRiBxdWFudGl6YXRpb24gaW5kaWNlcworOTogIExTRiBj
b2VmZmljaWVudHMKKzEwOiBRdWFudGl6ZWQgTFNGIGNvZWZmaWNpZW50cworMTE6IFByb2Nlc3Nl
ZCBnYWlucywgYW5kIHN5bnRoZXNpcyBub2lzZSBzaGFwZSBjb2VmZmljaWVudHMKKzEyOiBMVFAg
c3RhdGUgc2NhbGluZyBjb2VmZmljaWVudC4gQ29udHJvbGxpbmcgZXJyb3IgcHJvcGFnYXRpb24K
KyAgIC8gcHJlZGljdGlvbiBnYWluIHRyYWRlLW9mZgorMTM6IFF1YW50aXplZCBzaWduYWwKK11d
PgorPC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzxzZWN0aW9uIHRpdGxlPSdWb2ljZSBBY3Rpdml0
eSBEZXRlY3Rpb24nPgorPHQ+CitUaGUgaW5wdXQgc2lnbmFsIGlzIHByb2Nlc3NlZCBieSBhIFZv
aWNlIEFjdGl2aXR5IERldGVjdG9yIChWQUQpIHRvIHByb2R1Y2UKK2EgbWVhc3VyZSBvZiB2b2lj
ZSBhY3Rpdml0eSwgc3BlY3RyYWwgdGlsdCwgYW5kIHNpZ25hbC10by1ub2lzZSBlc3RpbWF0ZXMg
Zm9yCitlYWNoIGZyYW1lLiBUaGUgVkFEIHVzZXMgYSBzZXF1ZW5jZSBvZiBoYWxmLWJhbmQgZmls
dGVyYmFua3MgdG8gc3BsaXQgdGhlCitzaWduYWwgaW50byBmb3VyIHN1YmJhbmRzOiAwLi4uRnMv
MTYsIEZzLzE2Li4uRnMvOCwgRnMvOC4uLkZzLzQsIGFuZAorRnMvNC4uLkZzLzIsIHdoZXJlIEZz
IGlzIHRoZSBzYW1wbGluZyBmcmVxdWVuY3kgKDgsIDEyLCAxNiwgb3IgMjQmbmJzcDtrSHopLgor
VGhlIGxvd2VzdCBzdWJiYW5kLCBmcm9tIDAgLSBGcy8xNiwgaXMgaGlnaC1wYXNzIGZpbHRlcmVk
IHdpdGggYSBmaXJzdC1vcmRlcgorbW92aW5nIGF2ZXJhZ2UgKE1BKSBmaWx0ZXIgKHdpdGggdHJh
bnNmZXIgZnVuY3Rpb24gSCh6KSA9IDEteioqKC0xKSkgdG8KK3JlZHVjZSB0aGUgZW5lcmd5IGF0
IHRoZSBsb3dlc3QgZnJlcXVlbmNpZXMuIEZvciBlYWNoIGZyYW1lLCB0aGUgc2lnbmFsCitlbmVy
Z3kgcGVyIHN1YmJhbmQgaXMgY29tcHV0ZWQuCitJbiBlYWNoIHN1YmJhbmQsIGEgbm9pc2UgbGV2
ZWwgZXN0aW1hdG9yIHRyYWNrcyB0aGUgYmFja2dyb3VuZCBub2lzZSBsZXZlbAorYW5kIGEgU2ln
bmFsLXRvLU5vaXNlIFJhdGlvIChTTlIpIHZhbHVlIGlzIGNvbXB1dGVkIGFzIHRoZSBsb2dhcml0
aG0gb2YgdGhlCityYXRpbyBvZiBlbmVyZ3kgdG8gbm9pc2UgbGV2ZWwuCitVc2luZyB0aGVzZSBp
bnRlcm1lZGlhdGUgdmFyaWFibGVzLCB0aGUgZm9sbG93aW5nIHBhcmFtZXRlcnMgYXJlIGNhbGN1
bGF0ZWQKK2ZvciB1c2UgaW4gb3RoZXIgU0lMSyBtb2R1bGVzOgorPGxpc3Qgc3R5bGU9InN5bWJv
bHMiPgorPHQ+CitBdmVyYWdlIFNOUi4gVGhlIGF2ZXJhZ2Ugb2YgdGhlIHN1YmJhbmQgU05SIHZh
bHVlcy4KKzwvdD4KKworPHQ+CitTbW9vdGhlZCBzdWJiYW5kIFNOUnMuIFRlbXBvcmFsbHkgc21v
b3RoZWQgc3ViYmFuZCBTTlIgdmFsdWVzLgorPC90PgorCis8dD4KK1NwZWVjaCBhY3Rpdml0eSBs
ZXZlbC4gQmFzZWQgb24gdGhlIGF2ZXJhZ2UgU05SIGFuZCBhIHdlaWdodGVkIGF2ZXJhZ2Ugb2Yg
dGhlCitzdWJiYW5kIGVuZXJnaWVzLgorPC90PgorCis8dD4KK1NwZWN0cmFsIHRpbHQuIEEgd2Vp
Z2h0ZWQgYXZlcmFnZSBvZiB0aGUgc3ViYmFuZCBTTlJzLCB3aXRoIHBvc2l0aXZlIHdlaWdodHMK
K2ZvciB0aGUgbG93IHN1YmJhbmRzIGFuZCBuZWdhdGl2ZSB3ZWlnaHRzIGZvciB0aGUgaGlnaCBz
dWJiYW5kcy4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0
bGU9J1BpdGNoIEFuYWx5c2lzJyBhbmNob3I9J3BpdGNoX2VzdGltYXRvcl9vdmVydmlld19zZWN0
aW9uJz4KKzx0PgorVGhlIGlucHV0IHNpZ25hbCBpcyBwcm9jZXNzZWQgYnkgdGhlIG9wZW4gbG9v
cCBwaXRjaCBlc3RpbWF0b3Igc2hvd24gaW4KKzx4cmVmIHRhcmdldD0ncGl0Y2hfZXN0aW1hdG9y
X2ZpZ3VyZScgLz4uCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiIGFuY2hvcj0icGl0Y2hfZXN0aW1h
dG9yX2ZpZ3VyZSIKKyB0aXRsZT0iQmxvY2sgZGlhZ3JhbSBvZiB0aGUgcGl0Y2ggZXN0aW1hdG9y
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICArLS0tLS0tLS0rICArLS0tLS0tLS0tLSsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwyIHggRG93bnwgIHxUaW1lLSAgICAgfAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKy0+fHNhbXBsaW5nfC0+fENvcnJlbGF0b3J8ICAgICB8CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICB8ICAgICAgICB8ICB8ICAgICAgICAgIHwgICAg
IHw0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICArLS0tLS0tLS0rICArLS0tLS0t
LS0tLSsgICAgXC8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAg
ICAgICAgIHwgMiAgICArLS0tLS0tLSsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
ICAgICAgICAgICAgICAgICAgIHwgICstLT58U3BlZWNoIHw1CisgICAgKy0tLS0tLS0tLSsgICAg
Ky0tLS0tLS0tKyB8ICAgICAgICAgICAgICAgICAgIFwvICB8ICAgfFR5cGUgICB8LT4KKyAgICB8
TFBDICAgICAgfCAgICB8RG93biAgICB8IHwgICAgICAgICAgICAgICstLS0tLS0tLS0tKyB8ICAg
ICAgIHwKKyArLT58QW5hbHlzaXMgfCArLT58c2FtcGxlICB8LSstLS0tLS0tLS0tLS0tPnxUaW1l
LSAgICAgfCArLS0tLS0tLSsKKyB8ICB8ICAgICAgICAgfCB8ICB8dG8gOCBrSHp8ICAgICAgICAg
ICAgICAgIHxDb3JyZWxhdG9yfC0tLS0tLS0tLS0tPgorIHwgICstLS0tLS0tLS0rIHwgICstLS0t
LS0tLSsgICAgICAgICAgICAgICAgfF9fX19fX19fX198ICAgICAgICAgIDYKKyB8ICAgICAgIHwg
ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwzCisgfCAgICAgIFwvICAg
ICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwvCisgfCAgKy0tLS0tLS0tLSsg
fCAgICAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLSsKKyB8ICB8V2hpdGVuaW5n
fCB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxUaW1lLSAgICAgfAorLSstPnxGaWx0ZXIg
ICB8LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0+fENvcnJlbGF0b3J8LS0tLS0tLS0tLS0+
CisxICAgfCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAg
IHwgICAgICAgICAgNworICAgICstLS0tLS0tLS0rICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKy0tLS0tLS0tLS0rCisKKzE6IElucHV0IHNpZ25hbAorMjogTGFnIGNhbmRpZGF0ZXMgZnJv
bSBzdGFnZSAxCiszOiBMYWcgY2FuZGlkYXRlcyBmcm9tIHN0YWdlIDIKKzQ6IENvcnJlbGF0aW9u
IHRocmVzaG9sZAorNTogVm9pY2VkL3Vudm9pY2VkIGZsYWcKKzY6IFBpdGNoIGNvcnJlbGF0aW9u
Cis3OiBQaXRjaCBsYWdzCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlIHBpdGNoIGFu
YWx5c2lzIGZpbmRzIGEgYmluYXJ5IHZvaWNlZC91bnZvaWNlZCBjbGFzc2lmaWNhdGlvbiwgYW5k
LCBmb3IKK2ZyYW1lcyBjbGFzc2lmaWVkIGFzIHZvaWNlZCwgZm91ciBwaXRjaCBsYWdzIHBlciBm
cmFtZSAtIG9uZSBmb3IgZWFjaAorNSZuYnNwO21zIHN1YmZyYW1lIC0gYW5kIGEgcGl0Y2ggY29y
cmVsYXRpb24gaW5kaWNhdGluZyB0aGUgcGVyaW9kaWNpdHkgb2YKK3RoZSBzaWduYWwuCitUaGUg
aW5wdXQgaXMgZmlyc3Qgd2hpdGVuZWQgdXNpbmcgYSBMaW5lYXIgUHJlZGljdGlvbiAoTFApIHdo
aXRlbmluZyBmaWx0ZXIsCit3aGVyZSB0aGUgY29lZmZpY2llbnRzIGFyZSBjb21wdXRlZCB0aHJv
dWdoIHN0YW5kYXJkIExpbmVhciBQcmVkaWN0aW9uIENvZGluZworKExQQykgYW5hbHlzaXMuIFRo
ZSBvcmRlciBvZiB0aGUgd2hpdGVuaW5nIGZpbHRlciBpcyAxNiBmb3IgYmVzdCByZXN1bHRzLCBi
dXQKK2lzIHJlZHVjZWQgdG8gMTIgZm9yIG1lZGl1bSBjb21wbGV4aXR5IGFuZCA4IGZvciBsb3cg
Y29tcGxleGl0eSBtb2Rlcy4KK1RoZSB3aGl0ZW5lZCBzaWduYWwgaXMgYW5hbHl6ZWQgdG8gZmlu
ZCBwaXRjaCBsYWdzIGZvciB3aGljaCB0aGUgdGltZQorY29ycmVsYXRpb24gaXMgaGlnaC4KK1Ro
ZSBhbmFseXNpcyBjb25zaXN0cyBvZiB0aHJlZSBzdGFnZXMgZm9yIHJlZHVjaW5nIHRoZSBjb21w
bGV4aXR5OgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+SW4gdGhlIGZpcnN0IHN0YWdlLCB0
aGUgd2hpdGVuZWQgc2lnbmFsIGlzIGRvd25zYW1wbGVkIHRvIDQmbmJzcDtrSHoKKyhmcm9tIDgm
bmJzcDtrSHopIGFuZCB0aGUgY3VycmVudCBmcmFtZSBpcyBjb3JyZWxhdGVkIHRvIGEgc2lnbmFs
IGRlbGF5ZWQKK2J5IGEgcmFuZ2Ugb2YgbGFncywgc3RhcnRpbmcgZnJvbSBhIHNob3J0ZXN0IGxh
ZyBjb3JyZXNwb25kaW5nIHRvCis1MDAmbmJzcDtIeiwgdG8gYSBsb25nZXN0IGxhZyBjb3JyZXNw
b25kaW5nIHRvIDU2Jm5ic3A7SHouPC90PgorCis8dD4KK1RoZSBzZWNvbmQgc3RhZ2Ugb3BlcmF0
ZXMgb24gYW4gOCZuYnNwO2tIeiBzaWduYWwgKGRvd25zYW1wbGVkIGZyb20gMTIsIDE2LAorb3Ig
MjQmbmJzcDtrSHopIGFuZCBtZWFzdXJlcyB0aW1lIGNvcnJlbGF0aW9ucyBvbmx5IG5lYXIgdGhl
IGxhZ3MKK2NvcnJlc3BvbmRpbmcgdG8gdGhvc2UgdGhhdCBoYWQgc3VmZmljaWVudGx5IGhpZ2gg
Y29ycmVsYXRpb25zIGluIHRoZSBmaXJzdAorc3RhZ2UuIFRoZSByZXN1bHRpbmcgY29ycmVsYXRp
b25zIGFyZSBhZGp1c3RlZCBmb3IgYSBzbWFsbCBiaWFzIHRvd2FyZHMKK3Nob3J0IGxhZ3MgdG8g
YXZvaWQgZW5kaW5nIHVwIHdpdGggYSBtdWx0aXBsZSBvZiB0aGUgdHJ1ZSBwaXRjaCBsYWcuCitU
aGUgaGlnaGVzdCBhZGp1c3RlZCBjb3JyZWxhdGlvbiBpcyBjb21wYXJlZCB0byBhIHRocmVzaG9s
ZCBkZXBlbmRpbmcgb246Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD4KK1doZXRoZXIgdGhl
IHByZXZpb3VzIGZyYW1lIHdhcyBjbGFzc2lmaWVkIGFzIHZvaWNlZAorPC90PgorPHQ+CitUaGUg
c3BlZWNoIGFjdGl2aXR5IGxldmVsCis8L3Q+Cis8dD4KK1RoZSBzcGVjdHJhbCB0aWx0LgorPC90
PgorPC9saXN0PgorSWYgdGhlIHRocmVzaG9sZCBpcyBleGNlZWRlZCwgdGhlIGN1cnJlbnQgZnJh
bWUgaXMgY2xhc3NpZmllZCBhcyB2b2ljZWQgYW5kCit0aGUgbGFnIHdpdGggdGhlIGhpZ2hlc3Qg
YWRqdXN0ZWQgY29ycmVsYXRpb24gaXMgc3RvcmVkIGZvciBhIGZpbmFsIHBpdGNoCithbmFseXNp
cyBvZiB0aGUgaGlnaGVzdCBwcmVjaXNpb24gaW4gdGhlIHRoaXJkIHN0YWdlLgorPC90PgorPHQ+
CitUaGUgbGFzdCBzdGFnZSBvcGVyYXRlcyBkaXJlY3RseSBvbiB0aGUgd2hpdGVuZWQgaW5wdXQg
c2lnbmFsIHRvIGNvbXB1dGUgdGltZQorY29ycmVsYXRpb25zIGZvciBlYWNoIG9mIHRoZSBmb3Vy
IHN1YmZyYW1lcyBpbmRlcGVuZGVudGx5IGluIGEgbmFycm93IHJhbmdlCithcm91bmQgdGhlIGxh
ZyB3aXRoIGhpZ2hlc3QgY29ycmVsYXRpb24gZnJvbSB0aGUgc2Vjb25kIHN0YWdlLgorPC90Pgor
PC9saXN0PgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0nTm9pc2UgU2hhcGlu
ZyBBbmFseXNpcycgYW5jaG9yPSdub2lzZV9zaGFwaW5nX2FuYWx5c2lzX292ZXJ2aWV3X3NlY3Rp
b24nPgorPHQ+CitUaGUgbm9pc2Ugc2hhcGluZyBhbmFseXNpcyBmaW5kcyBnYWlucyBhbmQgZmls
dGVyIGNvZWZmaWNpZW50cyB1c2VkIGluIHRoZQorcHJlZmlsdGVyIGFuZCBub2lzZSBzaGFwaW5n
IHF1YW50aXplci4gVGhlc2UgcGFyYW1ldGVycyBhcmUgY2hvc2VuIHN1Y2ggdGhhdAordGhleSB3
aWxsIGZ1bGZpbGwgc2V2ZXJhbCByZXF1aXJlbWVudHM6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+
Cis8dD4KK0JhbGFuY2luZyBxdWFudGl6YXRpb24gbm9pc2UgYW5kIGJpdHJhdGUuCitUaGUgcXVh
bnRpemF0aW9uIGdhaW5zIGRldGVybWluZSB0aGUgc3RlcCBzaXplIGJldHdlZW4gcmVjb25zdHJ1
Y3Rpb24gbGV2ZWxzCitvZiB0aGUgZXhjaXRhdGlvbiBzaWduYWwuIFRoZXJlZm9yZSwgaW5jcmVh
c2luZyB0aGUgcXVhbnRpemF0aW9uIGdhaW4KK2FtcGxpZmllcyBxdWFudGl6YXRpb24gbm9pc2Us
IGJ1dCBhbHNvIHJlZHVjZXMgdGhlIGJpdHJhdGUgYnkgbG93ZXJpbmcKK3RoZSBlbnRyb3B5IG9m
IHRoZSBxdWFudGl6YXRpb24gaW5kaWNlcy4KKzwvdD4KKzx0PgorU3BlY3RyYWwgc2hhcGluZyBv
ZiB0aGUgcXVhbnRpemF0aW9uIG5vaXNlOyB0aGUgbm9pc2Ugc2hhcGluZyBxdWFudGl6ZXIgaXMK
K2NhcGFibGUgb2YgcmVkdWNpbmcgcXVhbnRpemF0aW9uIG5vaXNlIGluIHNvbWUgcGFydHMgb2Yg
dGhlIHNwZWN0cnVtIGF0IHRoZQorY29zdCBvZiBpbmNyZWFzZWQgbm9pc2UgaW4gb3RoZXIgcGFy
dHMgd2l0aG91dCBzdWJzdGFudGlhbGx5IGNoYW5naW5nIHRoZQorYml0cmF0ZS4KK0J5IHNoYXBp
bmcgdGhlIG5vaXNlIHN1Y2ggdGhhdCBpdCBmb2xsb3dzIHRoZSBzaWduYWwgc3BlY3RydW0sIGl0
IGJlY29tZXMKK2xlc3MgYXVkaWJsZS4gSW4gcHJhY3RpY2UsIGJlc3QgcmVzdWx0cyBhcmUgb2J0
YWluZWQgYnkgbWFraW5nIHRoZSBzaGFwZQorb2YgdGhlIG5vaXNlIHNwZWN0cnVtIHNsaWdodGx5
IGZsYXR0ZXIgdGhhbiB0aGUgc2lnbmFsIHNwZWN0cnVtLgorPC90PgorPHQ+CitEZS1lbXBoYXNp
emluZyBzcGVjdHJhbCB2YWxsZXlzOyBieSB1c2luZyBkaWZmZXJlbnQgY29lZmZpY2llbnRzIGlu
IHRoZQorYW5hbHlzaXMgYW5kIHN5bnRoZXNpcyBwYXJ0IG9mIHRoZSBwcmVmaWx0ZXIgYW5kIG5v
aXNlIHNoYXBpbmcgcXVhbnRpemVyLAordGhlIGxldmVscyBvZiB0aGUgc3BlY3RyYWwgdmFsbGV5
cyBjYW4gYmUgZGVjcmVhc2VkIHJlbGF0aXZlIHRvIHRoZSBsZXZlbHMKK29mIHRoZSBzcGVjdHJh
bCBwZWFrcyBzdWNoIGFzIHNwZWVjaCBmb3JtYW50cyBhbmQgaGFybW9uaWNzLgorVGhpcyByZWR1
Y2VzIHRoZSBlbnRyb3B5IG9mIHRoZSBzaWduYWwsIHdoaWNoIGlzIHRoZSBkaWZmZXJlbmNlIGJl
dHdlZW4gdGhlCitjb2RlZCBzaWduYWwgYW5kIHRoZSBxdWFudGl6YXRpb24gbm9pc2UsIHRodXMg
bG93ZXJpbmcgdGhlIGJpdHJhdGUuCis8L3Q+Cis8dD4KK01hdGNoaW5nIHRoZSBsZXZlbHMgb2Yg
dGhlIGRlY29kZWQgc3BlZWNoIGZvcm1hbnRzIHRvIHRoZSBsZXZlbHMgb2YgdGhlCitvcmlnaW5h
bCBzcGVlY2ggZm9ybWFudHM7IGFuIGFkanVzdG1lbnQgZ2FpbiBhbmQgYSBmaXJzdCBvcmRlciB0
aWx0Citjb2VmZmljaWVudCBhcmUgY29tcHV0ZWQgdG8gY29tcGVuc2F0ZSBmb3IgdGhlIGVmZmVj
dCBvZiB0aGUgbm9pc2UKK3NoYXBpbmcgcXVhbnRpemF0aW9uIG9uIHRoZSBsZXZlbCBhbmQgc3Bl
Y3RyYWwgdGlsdC4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKzx0PgorPGZpZ3VyZSBhbGlnbj0iY2Vu
dGVyIiBhbmNob3I9Im5vaXNlX3NoYXBlX2FuYWx5c2lzX3NwZWN0cmFfZmlndXJlIgorIHRpdGxl
PSJOb2lzZSBzaGFwaW5nIGFuZCBzcGVjdHJhbCBkZS1lbXBoYXNpcyBpbGx1c3RyYXRpb24iPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKKyAgLyBcICAgX19fCisgICB8ICAg
Ly8gXFwKKyAgIHwgIC8vICAgXFwgICAgIF9fX18KKyAgIHxfLy8gICAgIFxcX19fLy8gIFxcICAg
ICAgICAgX19fXworICAgfCAvICBfX18gIFwgICAvICAgIFxcICAgICAgIC8vICBcXAorIFAgfC8g
IC8gICBcICBcXy8gICAgICBcXF9fX19fLy8gICAgXFwKKyBvIHwgIC8gICAgIFwgICAgIF9fX18g
IFwgICAgIC8gICAgICBcXAorIHcgfCAvICAgICAgIFxfX18vICAgIFwgIFxfX18vICBfX19fICBc
XF9fXyAxCisgZSB8LyAgICAgICAgICAgICAgICAgIFwgICAgICAgLyAgICBcICBcCisgciB8ICAg
ICAgICAgICAgICAgICAgICBcX19fX18vICAgICAgXCAgXF9fIDIKKyAgIHwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXF9fXyAzCisgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLT4KKyAgICAgICAgICAgICAgICAgICAgRnJlcXVlbmN5CisKKzE6IElucHV0IHNpZ25h
bCBzcGVjdHJ1bQorMjogRGUtZW1waGFzaXplZCBhbmQgbGV2ZWwgbWF0Y2hlZCBzcGVjdHJ1bQor
MzogUXVhbnRpemF0aW9uIG5vaXNlIHNwZWN0cnVtCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJl
PgorPHhyZWYgdGFyZ2V0PSdub2lzZV9zaGFwZV9hbmFseXNpc19zcGVjdHJhX2ZpZ3VyZScgLz4g
c2hvd3MgYW4gZXhhbXBsZSBvZiBhbgoraW5wdXQgc2lnbmFsIHNwZWN0cnVtICgxKS4KK0FmdGVy
IGRlLWVtcGhhc2lzIGFuZCBsZXZlbCBtYXRjaGluZywgdGhlIHNwZWN0cnVtIGhhcyBkZWVwZXIg
dmFsbGV5cyAoMikuCitUaGUgcXVhbnRpemF0aW9uIG5vaXNlIHNwZWN0cnVtICgzKSBtb3JlIG9y
IGxlc3MgZm9sbG93cyB0aGUgaW5wdXQgc2lnbmFsCitzcGVjdHJ1bSwgd2hpbGUgaGF2aW5nIHNs
aWdodGx5IGxlc3MgcHJvbm91bmNlZCBwZWFrcy4KK1RoZSBlbnRyb3B5LCB3aGljaCBwcm92aWRl
cyBhIGxvd2VyIGJvdW5kIG9uIHRoZSBiaXRyYXRlIGZvciBlbmNvZGluZyB0aGUKK2V4Y2l0YXRp
b24gc2lnbmFsLCBpcyBwcm9wb3J0aW9uYWwgdG8gdGhlIGFyZWEgYmV0d2VlbiB0aGUgZGUtZW1w
aGFzaXplZAorc3BlY3RydW0gKDIpIGFuZCB0aGUgcXVhbnRpemF0aW9uIG5vaXNlIHNwZWN0cnVt
ICgzKS4gV2l0aG91dCBkZS1lbXBoYXNpcywKK3RoZSBlbnRyb3B5IGlzIHByb3BvcnRpb25hbCB0
byB0aGUgYXJlYSBiZXR3ZWVuIGlucHV0IHNwZWN0cnVtICgxKSBhbmQKK3F1YW50aXphdGlvbiBu
b2lzZSAoMykgLSBjbGVhcmx5IGhpZ2hlci4KKzwvdD4KKworPHQ+CitUaGUgdHJhbnNmb3JtYXRp
b24gZnJvbSBpbnB1dCBzaWduYWwgdG8gZGUtZW1waGFzaXplZCBzaWduYWwgY2FuIGJlCitkZXNj
cmliZWQgYXMgYSBmaWx0ZXJpbmcgb3BlcmF0aW9uIHdpdGggYSBmaWx0ZXIKKzxmaWd1cmUgYWxp
Z249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLTEgICAgV2FuYSh6KQorSCh6KSA9IEcgKiAoIDEgLSBjX3Rp
bHQgKiB6ICApICogLS0tLS0tLQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV3N5
bih6KSwKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+CitoYXZpbmcgYW4gYWRqdXN0bWVudCBn
YWluIEcsIGEgZmlyc3Qgb3JkZXIgdGlsdCBhZGp1c3RtZW50IGZpbHRlciB3aXRoCit0aWx0IGNv
ZWZmaWNpZW50IGNfdGlsdCwgYW5kIHdoZXJlCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFy
dHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKKyAgICAgICAgICAgICAgIDE2ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGQKKyAgICAgICAgICAgICAgIF9fICAgICAgICAgICAgIC1r
ICAgICAgICAtTCAgX18gICAgICAgICAgICAtaworV2FuYSh6KSA9ICgxIC0gXCAoYV9hbmEoaykg
KiB6ICApKigxIC0geiAgKiBcIGJfYW5hKGspICogeiAgKSwKKyAgICAgICAgICAgICAgIC9fICAg
ICAgICAgICAgICAgICAgICAgICAgICAgL18KKyAgICAgICAgICAgICAgIGs9MSAgICAgICAgICAg
ICAgICAgICAgICAgICAgaz0tZAorXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KK2lzIHRoZSBh
bmFseXNpcyBwYXJ0IG9mIHRoZSBkZS1lbXBoYXNpcyBmaWx0ZXIsIGNvbnNpc3Rpbmcgb2YgdGhl
IHNob3J0LXRlcm0KK3NoYXBpbmcgZmlsdGVyIHdpdGggY29lZmZpY2llbnRzIGFfYW5hKGspLCBh
bmQgdGhlIGxvbmctdGVybSBzaGFwaW5nIGZpbHRlcgord2l0aCBjb2VmZmljaWVudHMgYl9hbmEo
aykgYW5kIHBpdGNoIGxhZyBMLgorVGhlIHBhcmFtZXRlciBkIGRldGVybWluZXMgdGhlIG51bWJl
ciBvZiBsb25nLXRlcm0gc2hhcGluZyBmaWx0ZXIgdGFwcy4KKzwvdD4KKworPHQ+CitTaW1pbGFy
bHksIGJ1dCB3aXRob3V0IHRoZSB0aWx0IGFkanVzdG1lbnQsIHRoZSBzeW50aGVzaXMgcGFydCBj
YW4gYmUgd3JpdHRlbiBhcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWdu
PSJjZW50ZXIiPgorPCFbQ0RBVEFbCisgICAgICAgICAgICAgICAxNiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBkCisgICAgICAgICAgICAgICBfXyAgICAgICAgICAgICAtayAgICAgICAgLUwg
IF9fICAgICAgICAgICAgLWsKK1dzeW4oeikgPSAoMSAtIFwgKGFfc3luKGspICogeiAgKSooMSAt
IHogICogXCBiX3N5bihrKSAqIHogICkuCisgICAgICAgICAgICAgICAvXyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC9fCisgICAgICAgICAgICAgICBrPTEgICAgICAgICAgICAgICAgICAgICAg
ICAgIGs9LWQKKyAgICAgICAgICAgIF1dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8
dD4KK0FsbCBub2lzZSBzaGFwaW5nIHBhcmFtZXRlcnMgYXJlIGNvbXB1dGVkIGFuZCBhcHBsaWVk
IHBlciBzdWJmcmFtZSBvZiA1Jm5ic3A7bXMuCitGaXJzdCwgYW4gTFBDIGFuYWx5c2lzIGlzIHBl
cmZvcm1lZCBvbiBhIHdpbmRvd2VkIHNpZ25hbCBibG9jayBvZiAxNSZuYnNwO21zLgorVGhlIHNp
Z25hbCBibG9jayBoYXMgYSBsb29rLWFoZWFkIG9mIDUmbmJzcDttcyByZWxhdGl2ZSB0byB0aGUg
Y3VycmVudCBzdWJmcmFtZSwKK2FuZCB0aGUgd2luZG93IGlzIGFuIGFzeW1tZXRyaWMgc2luZSB3
aW5kb3cuIFRoZSBMUEMgYW5hbHlzaXMgaXMgZG9uZSB3aXRoIHRoZQorYXV0b2NvcnJlbGF0aW9u
IG1ldGhvZCwgd2l0aCBhbiBvcmRlciBvZiBiZXR3ZWVuIDgsIGluIGxvd2VzdC1jb21wbGV4aXR5
IG1vZGUsCithbmQgMTYsIGZvciBiZXN0IHF1YWxpdHkuCis8L3Q+Cis8dD4KK09wdGlvbmFsbHkg
dGhlIExQQyBhbmFseXNpcyBhbmQgbm9pc2Ugc2hhcGluZyBmaWx0ZXJzIGFyZSB3YXJwZWQgYnkg
cmVwbGFjaW5nCit0aGUgZGVsYXkgZWxlbWVudHMgYnkgZmlyc3Qtb3JkZXIgYWxscGFzcyBmaWx0
ZXJzLgorVGhpcyBpbmNyZWFzZXMgdGhlIGZyZXF1ZW5jeSByZXNvbHV0aW9uIGF0IGxvdyBmcmVx
dWVuY2llcyBhbmQgcmVkdWNlcyBpdCBhdAoraGlnaCBvbmVzLCB3aGljaCBiZXR0ZXIgbWF0Y2hl
cyB0aGUgaHVtYW4gYXVkaXRvcnkgc3lzdGVtIGFuZCBpbXByb3ZlcworcXVhbGl0eS4KK1RoZSB3
YXJwZWQgYW5hbHlzaXMgYW5kIGZpbHRlcmluZyBjb21lcyBhdCBhIGNvc3QgaW4gY29tcGxleGl0
eQorYW5kIGlzIHRoZXJlZm9yZSBvbmx5IGRvbmUgaW4gaGlnaGVyIGNvbXBsZXhpdHkgbW9kZXMu
Cis8L3Q+Cis8dD4KK1RoZSBxdWFudGl6YXRpb24gZ2FpbiBpcyBmb3VuZCBieSB0YWtpbmcgdGhl
IHNxdWFyZSByb290IG9mIHRoZSByZXNpZHVhbCBlbmVyZ3kKK2Zyb20gdGhlIExQQyBhbmFseXNp
cyBhbmQgbXVsdGlwbHlpbmcgaXQgYnkgYSB2YWx1ZSBpbnZlcnNlbHkgcHJvcG9ydGlvbmFsCit0
byB0aGUgY29kaW5nIHF1YWxpdHkgY29udHJvbCBwYXJhbWV0ZXIgYW5kIHRoZSBwaXRjaCBjb3Jy
ZWxhdGlvbi4KKzwvdD4KKzx0PgorTmV4dCB0aGUgdHdvIHNldHMgb2Ygc2hvcnQtdGVybSBub2lz
ZSBzaGFwaW5nIGNvZWZmaWNpZW50cyBhX2FuYShrKSBhbmQKK2Ffc3luKGspIGFyZSBvYnRhaW5l
ZCBieSBhcHBseWluZyBkaWZmZXJlbnQgYW1vdW50cyBvZiBiYW5kd2lkdGggZXhwYW5zaW9uIHRv
IHRoZQorY29lZmZpY2llbnRzIGZvdW5kIGluIHRoZSBMUEMgYW5hbHlzaXMuCitUaGlzIGJhbmR3
aWR0aCBleHBhbnNpb24gbW92ZXMgdGhlIHJvb3RzIG9mIHRoZSBMUEMgcG9seW5vbWlhbCB0b3dh
cmRzIHRoZQorb3JpZ2luLCB1c2luZyB0aGUgZm9ybXVsYXMKKzxmaWd1cmUgYWxpZ249ImNlbnRl
ciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworICAgICAgICAgICAgICAg
ICAgICAgIGsKKyBhX2FuYShrKSA9IGEoaykqZ19hbmEgLCBhbmQKKworICAgICAgICAgICAgICAg
ICAgICAgIGsKKyBhX3N5bihrKSA9IGEoaykqZ19zeW4gLAorXV0+Cis8L2FydHdvcms+Cis8L2Zp
Z3VyZT4KK3doZXJlIGEoaykgaXMgdGhlIGsndGggTFBDIGNvZWZmaWNpZW50LCBhbmQgdGhlIGJh
bmR3aWR0aCBleHBhbnNpb24gZmFjdG9ycworZ19hbmEgYW5kIGdfc3luIGFyZSBjYWxjdWxhdGVk
IGFzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8
IVtDREFUQVsKK2dfYW5hID0gMC45NSAtIDAuMDEqQywgYW5kCisKK2dfc3luID0gMC45NSArIDAu
MDEqQywKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+Cit3aGVyZSBDIGlzIHRoZSBjb2Rpbmcg
cXVhbGl0eSBjb250cm9sIHBhcmFtZXRlciBiZXR3ZWVuIDAgYW5kIDEuCitBcHBseWluZyBtb3Jl
IGJhbmR3aWR0aCBleHBhbnNpb24gdG8gdGhlIGFuYWx5c2lzIHBhcnQgdGhhbiB0byB0aGUgc3lu
dGhlc2lzCitwYXJ0IGdpdmVzIHRoZSBkZXNpcmVkIGRlLWVtcGhhc2lzIG9mIHNwZWN0cmFsIHZh
bGxleXMgaW4gYmV0d2VlbiBmb3JtYW50cy4KKzwvdD4KKworPHQ+CitUaGUgbG9uZy10ZXJtIHNo
YXBpbmcgaXMgYXBwbGllZCBvbmx5IGR1cmluZyB2b2ljZWQgZnJhbWVzLgorSXQgdXNlcyB0aHJl
ZSBmaWx0ZXIgdGFwcywgZGVzY3JpYmVkIGJ5Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFy
dHdvcmsgYWxpZ249ImNlbnRlciI+CisgIDwhW0NEQVRBWworYl9hbmEgPSBGX2FuYSAqIFswLjI1
LCAwLjUsIDAuMjVdLCBhbmQKKworYl9zeW4gPSBGX3N5biAqIFswLjI1LCAwLjUsIDAuMjVdLgor
XV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0ZvciB1bnZvaWNlZCBmcmFtZXMgdGhlc2UgY29l
ZmZpY2llbnRzIGFyZSBzZXQgdG8gMC4gVGhlIG11bHRpcGxpY2F0aW9uIGZhY3RvcnMKK0ZfYW5h
IGFuZCBGX3N5biBhcmUgY2hvc2VuIGJldHdlZW4gMCBhbmQgMSwgZGVwZW5kaW5nIG9uIHRoZSBj
b2RpbmcgcXVhbGl0eQorY29udHJvbCBwYXJhbWV0ZXIsIGFzIHdlbGwgYXMgdGhlIGNhbGN1bGF0
ZWQgcGl0Y2ggY29ycmVsYXRpb24gYW5kIHNtb290aGVkCitzdWJiYW5kIFNOUiBvZiB0aGUgbG93
ZXN0IHN1YmJhbmQuIEJ5IGhhdmluZyBGX2FuYSBsZXNzIHRoYW4gRl9zeW4sCit0aGUgcGl0Y2gg
aGFybW9uaWNzIGFyZSBlbXBoYXNpemVkIHJlbGF0aXZlIHRvIHRoZSB2YWxsZXlzIGluIGJldHdl
ZW4gdGhlCitoYXJtb25pY3MuCis8L3Q+CisKKzx0PgorVGhlIHRpbHQgY29lZmZpY2llbnQgY190
aWx0IGlzIGZvciB1bnZvaWNlZCBmcmFtZXMgY2hvc2VuIGFzCis8ZmlndXJlIGFsaWduPSJjZW50
ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKK2NfdGlsdCA9IDAuMjUs
CitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorYW5kIGFzCis8ZmlndXJlIGFsaWduPSJjZW50
ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKK2NfdGlsdCA9IDAuMjUg
KyAwLjI2MjUgKiBWCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorZm9yIHZvaWNlZCBmcmFt
ZXMsIHdoZXJlIFYgaXMgdGhlIHZvaWNlIGFjdGl2aXR5IGxldmVsIGJldHdlZW4gMCBhbmQgMS4K
KzwvdD4KKzx0PgorVGhlIGFkanVzdG1lbnQgZ2FpbiBHIHNlcnZlcyB0byBjb3JyZWN0IGFueSBs
ZXZlbCBtaXNtYXRjaCBiZXR3ZWVuIHRoZSBvcmlnaW5hbAorYW5kIGRlY29kZWQgc2lnbmFscyB0
aGF0IG1pZ2h0IGFyaXNlIGZyb20gdGhlIG5vaXNlIHNoYXBpbmcgYW5kIGRlLWVtcGhhc2lzLgor
VGhpcyBnYWluIGlzIGNvbXB1dGVkIGFzIHRoZSByYXRpbyBvZiB0aGUgcHJlZGljdGlvbiBnYWlu
IG9mIHRoZSBzaG9ydC10ZXJtCithbmFseXNpcyBhbmQgc3ludGhlc2lzIGZpbHRlciBjb2VmZmlj
aWVudHMuIFRoZSBwcmVkaWN0aW9uIGdhaW4gb2YgYW4gTFBDCitzeW50aGVzaXMgZmlsdGVyIGlz
IHRoZSBzcXVhcmUgcm9vdCBvZiB0aGUgb3V0cHV0IGVuZXJneSB3aGVuIHRoZSBmaWx0ZXIgaXMK
K2V4Y2l0ZWQgYnkgYSB1bml0LWVuZXJneSBpbXB1bHNlIG9uIHRoZSBpbnB1dC4KK0FuIGVmZmlj
aWVudCB3YXkgdG8gY29tcHV0ZSB0aGUgcHJlZGljdGlvbiBnYWluIGlzIGJ5IGZpcnN0IGNvbXB1
dGluZyB0aGUKK3JlZmxlY3Rpb24gY29lZmZpY2llbnRzIGZyb20gdGhlIExQQyBjb2VmZmljaWVu
dHMgdGhyb3VnaCB0aGUgc3RlcC1kb3duCithbGdvcml0aG0sIGFuZCBleHRyYWN0aW5nIHRoZSBw
cmVkaWN0aW9uIGdhaW4gZnJvbSB0aGUgcmVmbGVjdGlvbiBjb2VmZmljaWVudHMKK2FzCis8Zmln
dXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsK
KyAgICAgICAgICAgICAgIEsKKyAgICAgICAgICAgICAgX19fICAgICAgICAgIDIgIC0wLjUKKyBw
cmVkR2FpbiA9ICggfCB8IDEgLSAocl9rKSAgKSAgICAsCisgICAgICAgICAgICAgIGs9MQorXV0+
Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KK3doZXJlIHJfayBpcyB0aGUgayd0aCByZWZsZWN0aW9u
IGNvZWZmaWNpZW50LgorPC90PgorCis8dD4KK0luaXRpYWwgdmFsdWVzIGZvciB0aGUgcXVhbnRp
emF0aW9uIGdhaW5zIGFyZSBjb21wdXRlZCBhcyB0aGUgc3F1YXJlLXJvb3Qgb2YKK3RoZSByZXNp
ZHVhbCBlbmVyZ3kgb2YgdGhlIExQQyBhbmFseXNpcywgYWRqdXN0ZWQgYnkgdGhlIGNvZGluZyBx
dWFsaXR5IGNvbnRyb2wKK3BhcmFtZXRlci4KK1RoZXNlIHF1YW50aXphdGlvbiBnYWlucyBhcmUg
bGF0ZXIgYWRqdXN0ZWQgYmFzZWQgb24gdGhlIHJlc3VsdHMgb2YgdGhlCitwcmVkaWN0aW9uIGFu
YWx5c2lzLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0nUHJlZGljdGlvbiBB
bmFseXNpcycgYW5jaG9yPSdwcmVkX2FuYV9vdmVydmlld19zZWN0aW9uJz4KKzx0PgorVGhlIHBy
ZWRpY3Rpb24gYW5hbHlzaXMgaXMgcGVyZm9ybWVkIGluIG9uZSBvZiB0d28gd2F5cyBkZXBlbmRp
bmcgb24gaG93Cit0aGUgcGl0Y2ggZXN0aW1hdG9yIGNsYXNzaWZpZWQgdGhlIGZyYW1lLgorVGhl
IHByb2Nlc3NpbmcgZm9yIHZvaWNlZCBhbmQgdW52b2ljZWQgc3BlZWNoIGlzIGRlc2NyaWJlZCBp
bgorPHhyZWYgdGFyZ2V0PSdwcmVkX2FuYV92b2ljZWRfb3ZlcnZpZXdfc2VjdGlvbicgLz4gYW5k
CisgIDx4cmVmIHRhcmdldD0ncHJlZF9hbmFfdW52b2ljZWRfb3ZlcnZpZXdfc2VjdGlvbicgLz4s
IHJlc3BlY3RpdmVseS4KKyAgSW5wdXRzIHRvIHRoaXMgZnVuY3Rpb24gaW5jbHVkZSB0aGUgcHJl
LXdoaXRlbmVkIHNpZ25hbCBmcm9tIHRoZQorICBwaXRjaCBlc3RpbWF0b3IgKHNlZSA8eHJlZiB0
YXJnZXQ9J3BpdGNoX2VzdGltYXRvcl9vdmVydmlld19zZWN0aW9uJy8+KS4KKzwvdD4KKworPHNl
Y3Rpb24gdGl0bGU9J1ZvaWNlZCBTcGVlY2gnIGFuY2hvcj0ncHJlZF9hbmFfdm9pY2VkX292ZXJ2
aWV3X3NlY3Rpb24nPgorPHQ+CisgIEZvciBhIGZyYW1lIG9mIHZvaWNlZCBzcGVlY2ggdGhlIHBp
dGNoIHB1bHNlcyB3aWxsIHJlbWFpbiBkb21pbmFudCBpbiB0aGUKKyAgcHJlLXdoaXRlbmVkIGlu
cHV0IHNpZ25hbC4KKyAgRnVydGhlciB3aGl0ZW5pbmcgaXMgZGVzaXJhYmxlIGFzIGl0IGxlYWRz
IHRvIGhpZ2hlciBxdWFsaXR5IGF0IHRoZSBzYW1lCisgIGF2YWlsYWJsZSBiaXRyYXRlLgorICBU
byBhY2hpZXZlIHRoaXMsIGEgTG9uZy1UZXJtIFByZWRpY3Rpb24gKExUUCkgYW5hbHlzaXMgaXMg
Y2FycmllZCBvdXQgdG8KKyAgZXN0aW1hdGUgdGhlIGNvZWZmaWNpZW50cyBvZiBhIGZpZnRoLW9y
ZGVyIExUUCBmaWx0ZXIgZm9yIGVhY2ggb2YgZm91cgorICBzdWJmcmFtZXMuCisgIFRoZSBMVFAg
Y29lZmZpY2llbnRzIGFyZSBxdWFudGl6ZWQgdXNpbmcgdGhlIG1ldGhvZCBkZXNjcmliZWQgaW4K
KyAgPHhyZWYgdGFyZ2V0PSdsdHBfcXVhbnRpemVyX292ZXJ2aWV3X3NlY3Rpb24nLz4sIGFuZCB0
aGUgcXVhbnRpemVkIExUUAorICBjb2VmZmljaWVudHMgYXJlIHVzZWQgdG8gY29tcHV0ZSB0aGUg
TFRQIHJlc2lkdWFsIHNpZ25hbC4KKyAgVGhpcyBMVFAgcmVzaWR1YWwgc2lnbmFsIGlzIHRoZSBp
bnB1dCB0byBhbiBMUEMgYW5hbHlzaXMgd2hlcmUgdGhlIExQQyBjb2VmZmljaWVudHMgYXJlCisg
IGVzdGltYXRlZCB1c2luZyBCdXJnJ3MgbWV0aG9kIDx4cmVmIHRhcmdldD0iQnVyZyIvPiwgc3Vj
aCB0aGF0IHRoZSByZXNpZHVhbCBlbmVyZ3kgaXMgbWluaW1pemVkLgorICBUaGUgZXN0aW1hdGVk
IExQQyBjb2VmZmljaWVudHMgYXJlIGNvbnZlcnRlZCB0byBhIExpbmUgU3BlY3RyYWwgRnJlcXVl
bmN5IChMU0YpIHZlY3RvcgorICBhbmQgcXVhbnRpemVkIGFzIGRlc2NyaWJlZCBpbiA8eHJlZiB0
YXJnZXQ9J2xzZl9xdWFudGl6ZXJfb3ZlcnZpZXdfc2VjdGlvbicvPi4KK0FmdGVyIHF1YW50aXph
dGlvbiwgdGhlIHF1YW50aXplZCBMU0YgdmVjdG9yIGlzIGNvbnZlcnRlZCBiYWNrIHRvIExQQwor
Y29lZmZpY2llbnRzIHVzaW5nIHRoZSBmdWxsIHByb2NlZHVyZSBpbiA8eHJlZiB0YXJnZXQ9InNp
bGtfbmxzZnMiLz4uCitCeSB1c2luZyBxdWFudGl6ZWQgTFRQIGNvZWZmaWNpZW50cyBhbmQgTFBD
IGNvZWZmaWNpZW50cyBkZXJpdmVkIGZyb20gdGhlCitxdWFudGl6ZWQgTFNGIGNvZWZmaWNpZW50
cywgdGhlIGVuY29kZXIgcmVtYWlucyBmdWxseSBzeW5jaHJvbml6ZWQgd2l0aCB0aGUKK2RlY29k
ZXIuCitUaGUgcXVhbnRpemVkIExQQyBhbmQgTFRQIGNvZWZmaWNpZW50cyBhcmUgYWxzbyB1c2Vk
IHRvIGZpbHRlciB0aGUgaW5wdXQKK3NpZ25hbCBhbmQgbWVhc3VyZSByZXNpZHVhbCBlbmVyZ3kg
Zm9yIGVhY2ggb2YgdGhlIGZvdXIgc3ViZnJhbWVzLgorPC90PgorPC9zZWN0aW9uPgorPHNlY3Rp
b24gdGl0bGU9J1Vudm9pY2VkIFNwZWVjaCcgYW5jaG9yPSdwcmVkX2FuYV91bnZvaWNlZF9vdmVy
dmlld19zZWN0aW9uJz4KKzx0PgorRm9yIGEgc3BlZWNoIHNpZ25hbCB0aGF0IGhhcyBiZWVuIGNs
YXNzaWZpZWQgYXMgdW52b2ljZWQsIHRoZXJlIGlzIG5vIG5lZWQKK2ZvciBMVFAgZmlsdGVyaW5n
LCBhcyBpdCBoYXMgYWxyZWFkeSBiZWVuIGRldGVybWluZWQgdGhhdCB0aGUgcHJlLXdoaXRlbmVk
CitpbnB1dCBzaWduYWwgaXMgbm90IHBlcmlvZGljIGVub3VnaCB3aXRoaW4gdGhlIGFsbG93ZWQg
cGl0Y2ggcGVyaW9kIHJhbmdlCitmb3IgTFRQIGFuYWx5c2lzIHRvIGJlIHdvcnRoIHRoZSBjb3N0
IGluIHRlcm1zIG9mIGNvbXBsZXhpdHkgYW5kIGJpdHJhdGUuCitUaGUgcHJlLXdoaXRlbmVkIGlu
cHV0IHNpZ25hbCBpcyB0aGVyZWZvcmUgZGlzY2FyZGVkLCBhbmQgaW5zdGVhZCB0aGUgaW5wdXQK
K3NpZ25hbCBpcyB1c2VkIGZvciBMUEMgYW5hbHlzaXMgdXNpbmcgQnVyZydzIG1ldGhvZC4KK1Ro
ZSByZXN1bHRpbmcgTFBDIGNvZWZmaWNpZW50cyBhcmUgY29udmVydGVkIHRvIGFuIExTRiB2ZWN0
b3IgYW5kIHF1YW50aXplZAorYXMgZGVzY3JpYmVkIGluIHRoZSBmb2xsb3dpbmcgc2VjdGlvbi4K
K1RoZXkgYXJlIHRoZW4gdHJhbnNmb3JtZWQgYmFjayB0byBvYnRhaW4gcXVhbnRpemVkIExQQyBj
b2VmZmljaWVudHMsIHdoaWNoCithcmUgdGhlbiB1c2VkIHRvIGZpbHRlciB0aGUgaW5wdXQgc2ln
bmFsIGFuZCBtZWFzdXJlIHJlc2lkdWFsIGVuZXJneSBmb3IKK2VhY2ggb2YgdGhlIGZvdXIgc3Vi
ZnJhbWVzLgorPC90PgorPHNlY3Rpb24gdGl0bGU9IkJ1cmcncyBNZXRob2QiPgorPHQ+CitUaGUg
bWFpbiBwdXJwb3NlIG9mIGxpbmVhciBwcmVkaWN0aW9uIGluIFNJTEsgaXMgdG8gcmVkdWNlIHRo
ZSBiaXRyYXRlIGJ5CittaW5pbWl6aW5nIHRoZSByZXNpZHVhbCBlbmVyZ3kuCitBdCBsZWFzdCBh
dCBoaWdoIGJpdHJhdGVzLCBwZXJjZXB0dWFsIGFzcGVjdHMgYXJlIGhhbmRsZWQKK2luZGVwZW5k
ZW50bHkgYnkgdGhlIG5vaXNlIHNoYXBpbmcgZmlsdGVyLgorQnVyZydzIG1ldGhvZCBpcyB1c2Vk
IGJlY2F1c2UgaXQgcHJvdmlkZXMgaGlnaGVyIHByZWRpY3Rpb24gZ2FpbgordGhhbiB0aGUgYXV0
b2NvcnJlbGF0aW9uIG1ldGhvZCBhbmQsIHVubGlrZSB0aGUgY292YXJpYW5jZSBtZXRob2QsCitw
cm9kdWNlcyBzdGFibGUgZmlsdGVycyAoYXNzdW1pbmcgbnVtZXJpY2FsIGVycm9ycyBkb24ndCBz
cG9pbAordGhhdCkuIFNJTEsncyBpbXBsZW1lbnRhdGlvbiBvZiBCdXJnJ3MgbWV0aG9kIGlzIGFs
c28gY29tcHV0YXRpb25hbGx5CitmYXN0ZXIgdGhhbiB0aGUgYXV0b2NvdmFyaWFuY2UgbWV0aG9k
LgorVGhlIGltcGxlbWVudGF0aW9uIG9mIEJ1cmcncyBtZXRob2QgZGlmZmVycyBmcm9tIHRyYWRp
dGlvbmFsCitpbXBsZW1lbnRhdGlvbnMgaW4gdHdvIGFzcGVjdHMuCitUaGUgZmlyc3QgZGlmZmVy
ZW5jZSBpcyB0aGF0IGl0CitvcGVyYXRlcyBvbiBhdXRvY29ycmVsYXRpb25zLCBzaW1pbGFyIHRv
IHRoZSBTY2h1ciBhbGdvcml0aG0gPHhyZWYgdGFyZ2V0PSJTY2h1ciIvPiwgYnV0Cit3aXRoIGEg
c2ltcGxlIHVwZGF0ZSB0byB0aGUgYXV0b2NvcnJlbGF0aW9ucyBhZnRlciBmaW5kaW5nIGVhY2gK
K3JlZmxlY3Rpb24gY29lZmZpY2llbnQgdG8gbWFrZSB0aGUgcmVzdWx0IGlkZW50aWNhbCB0byBC
dXJnJ3MgbWV0aG9kLgorVGhpcyBicmluZ3MgZG93biB0aGUgY29tcGxleGl0eSBvZiBCdXJnJ3Mg
bWV0aG9kIHRvIG5lYXIgdGhhdCBvZgordGhlIGF1dG9jb3JyZWxhdGlvbiBtZXRob2QuCitUaGUg
c2Vjb25kIGRpZmZlcmVuY2UgaXMgdGhhdCB0aGUgc2lnbmFsIGluIGVhY2ggc3ViZnJhbWUgaXMg
c2NhbGVkCitieSB0aGUgaW52ZXJzZSBvZiB0aGUgcmVzaWR1YWwgcXVhbnRpemF0aW9uIHN0ZXAg
c2l6ZS4gIFN1YmZyYW1lcyB3aXRoCithIHNtYWxsIHF1YW50aXphdGlvbiBzdGVwIHNpemUgd2ls
bCBvbiBhdmVyYWdlIHNwZW5kIG1vcmUgYml0cyBmb3IgYQorZ2l2ZW4gYW1vdW50IG9mIHJlc2lk
dWFsIGVuZXJneSB0aGFuIHN1YmZyYW1lcyB3aXRoIGEgbGFyZ2Ugc3RlcCBzaXplLgorV2l0aG91
dCBzY2FsaW5nLCBCdXJnJ3MgbWV0aG9kIG1pbmltaXplcyB0aGUgdG90YWwgcmVzaWR1YWwgZW5l
cmd5IGluCithbGwgc3ViZnJhbWVzLCB3aGljaCBkb2Vzbid0IG5lY2Vzc2FyaWx5IG1pbmltaXpl
IHRoZSB0b3RhbCBudW1iZXIgb2YKK2JpdHMgbmVlZGVkIGZvciBjb2RpbmcgdGhlIHF1YW50aXpl
ZCByZXNpZHVhbC4gIFRoZSByZXNpZHVhbCBlbmVyZ3kKK29mIHRoZSBzY2FsZWQgc3ViZnJhbWVz
IGlzIGEgYmV0dGVyIG1lYXN1cmUgZm9yIHRoYXQgbnVtYmVyIG9mCitiaXRzLgorPC90PgorPC9z
ZWN0aW9uPgorPC9zZWN0aW9uPgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0nTFNGIFF1
YW50aXphdGlvbicgYW5jaG9yPSdsc2ZfcXVhbnRpemVyX292ZXJ2aWV3X3NlY3Rpb24nPgorPHQ+
CitVbmxpa2UgbWFueSBvdGhlciBzcGVlY2ggY29kZWNzLCBTSUxLIHVzZXMgdmFyaWFibGUgYml0
cmF0ZSBjb2RpbmcKK2ZvciB0aGUgTFNGcy4KK1RoaXMgaW1wcm92ZXMgdGhlIGF2ZXJhZ2UgcmF0
ZS1kaXN0b3J0aW9uIChSLUQpIHRyYWRlb2ZmIGFuZCByZWR1Y2VzIG91dGxpZXJzLgorVGhlIHZh
cmlhYmxlIGJpdHJhdGUgY29kaW5nIG1pbmltaXplcyBhIGxpbmVhciBjb21iaW5hdGlvbiBvZiB0
aGUgd2VpZ2h0ZWQKK3F1YW50aXphdGlvbiBlcnJvcnMgYW5kIHRoZSBiaXRyYXRlLgorVGhlIHdl
aWdodHMgZm9yIHRoZSBxdWFudGl6YXRpb24gZXJyb3JzIGFyZSB0aGUgSW52ZXJzZQorSGFybW9u
aWMgTWVhbiBXZWlnaHRpbmcgKElITVcpIGZ1bmN0aW9uIHByb3Bvc2VkIGJ5IExhcm9pYSBldCBh
bC4KKyhzZWUgPHhyZWYgdGFyZ2V0PSJsYXJvaWEtaWNhc3NwIiAvPikuCitUaGVzZSB3ZWlnaHRz
IGFyZSByZWZlcnJlZCB0byBoZXJlIGFzIExhcm9pYSB3ZWlnaHRzLgorPC90PgorPHQ+CitUaGUg
TFNGIHF1YW50aXplciBjb25zaXN0cyBvZiB0d28gc3RhZ2VzLgorVGhlIGZpcnN0IHN0YWdlIGlz
IGFuICh1bndlaWdodGVkKSB2ZWN0b3IgcXVhbnRpemVyIChWUSksIHdpdGggYQorY29kZWJvb2sg
c2l6ZSBvZiAzMiB2ZWN0b3JzLgorVGhlIHF1YW50aXphdGlvbiBlcnJvcnMgZm9yIHRoZSBjb2Rl
Ym9vayB2ZWN0b3IgYXJlIHNvcnRlZCwgYW5kCitmb3IgdGhlIE4gYmVzdCB2ZWN0b3JzIGEgc2Vj
b25kIHN0YWdlIHF1YW50aXplciBpcyBydW4uCitCeSB2YXJ5aW5nIHRoZSBudW1iZXIgTiBhIHRy
YWRlb2ZmIGlzIG1hZGUgYmV0d2VlbiBSLUQgcGVyZm9ybWFuY2UKK2FuZCBjb21wdXRhdGlvbmFs
IGVmZmljaWVuY3kuCitGb3IgZWFjaCBvZiB0aGUgTiBjb2RlYm9vayB2ZWN0b3JzIHRoZSBMYXJv
aWEgd2VpZ2h0cyBjb3JyZXNwb25kaW5nCit0byB0aGF0IHZlY3RvciAoYW5kIG5vdCB0byB0aGUg
aW5wdXQgdmVjdG9yKSBhcmUgY2FsY3VsYXRlZC4KK1RoZW4gdGhlIHJlc2lkdWFsIGJldHdlZW4g
dGhlIGlucHV0IExTRiB2ZWN0b3IgYW5kIHRoZSBjb2RlYm9vawordmVjdG9yIGlzIHNjYWxlZCBi
eSB0aGUgc3F1YXJlIHJvb3RzIG9mIHRoZXNlIExhcm9pYSB3ZWlnaHRzLgorVGhpcyBzY2FsaW5n
IHBhcnRpYWxseSBub3JtYWxpemVzIGVycm9yIHNlbnNpdGl2aXR5IGZvciB0aGUKK3Jlc2lkdWFs
IHZlY3Rvciwgc28gdGhhdCBhIHVuaWZvcm0gcXVhbnRpemVyIHdpdGggZml4ZWQKK3N0ZXAgc2l6
ZXMgY2FuIGJlIHVzZWQgaW4gdGhlIHNlY29uZCBzdGFnZSB3aXRob3V0IHRvbyBtdWNoCitwZXJm
b3JtYW5jZSBsb3NzLgorQW5kIGJ5IHNjYWxpbmcgd2l0aCBMYXJvaWEgd2VpZ2h0cyBkZXRlcm1p
bmVkIGZyb20gdGhlIGZpcnN0LXN0YWdlCitjb2RlYm9vayB2ZWN0b3IsIHRoZSBwcm9jZXNzIGNh
biBiZSByZXZlcnNlZCBpbiB0aGUgZGVjb2Rlci4KKzwvdD4KKzx0PgorVGhlIHNlY29uZCBzdGFn
ZSB1c2VzIHByZWRpY3RpdmUgZGVsYXllZCBkZWNpc2lvbiBzY2FsYXIKK3F1YW50aXphdGlvbi4K
K1RoZSBxdWFudGl6YXRpb24gZXJyb3IgaXMgd2VpZ2h0ZWQgYnkgTGFyb2lhIHdlaWdodHMgZGV0
ZXJtaW5lZAorZnJvbSB0aGUgTFNGIGlucHV0IHZlY3Rvci4KK1RoZSBwcmVkaWN0b3IgbXVsdGlw
bGllcyB0aGUgcHJldmlvdXMgcXVhbnRpemVkIHJlc2lkdWFsIHZhbHVlCitieSBhIHByZWRpY3Rp
b24gY29lZmZpY2llbnQgdGhhdCBkZXBlbmRzIG9uIHRoZSB2ZWN0b3IgaW5kZXggZnJvbSB0aGUK
K2ZpcnN0IHN0YWdlIFZRIGFuZCBvbiB0aGUgbG9jYXRpb24gaW4gdGhlIExTRiB2ZWN0b3IuCitU
aGUgcHJlZGljdGlvbiBpcyBzdWJ0cmFjdGVkIGZyb20gdGhlIExTRiByZXNpZHVhbCB2YWx1ZSBi
ZWZvcmUKK3F1YW50aXppbmcgdGhlIHJlc3VsdCwgYW5kIGFkZGVkIGJhY2sgYWZ0ZXJ3YXJkcy4K
K1RoaXMgc3VidHJhY3Rpb24gY2FuIGJlIGludGVycHJldGVkIGFzIHNoaWZ0aW5nIHRoZSBxdWFu
dGl6YXRpb24gbGV2ZWxzCitvZiB0aGUgc2NhbGFyIHF1YW50aXplciwgYW5kIGFzIGEgcmVzdWx0
IHRoZSBxdWFudGl6YXRpb24gZXJyb3Igb2YKK2VhY2ggdmFsdWUgZGVwZW5kcyBvbiB0aGUgcXVh
bnRpemF0aW9uIGRlY2lzaW9uIG9mIHRoZSBwcmV2aW91cyB2YWx1ZS4KK1RoaXMgZGVwZW5kZW5j
eSBpcyBleHBsb2l0ZWQgYnkgdGhlIGRlbGF5ZWQgZGVjaXNpb24gbWVjaGFuaXNtIHRvCitzZWFy
Y2ggZm9yIGEgcXVhbnRpemF0aW9uIHNlcXVlbmN5IHdpdGggYmVzdCBSLUQgcGVyZm9ybWFuY2UK
K3dpdGggYSBWaXRlcmJpLWxpa2UgYWxnb3JpdGhtIDx4cmVmIHRhcmdldD0iVml0ZXJiaSIvPi4K
K1RoZSBxdWFudGl6ZXIgcHJvY2Vzc2VzIHRoZSByZXNpZHVhbCBMU0YgdmVjdG9yIGluIHJldmVy
c2Ugb3JkZXIKKyhpLmUuLCBpdCBzdGFydHMgd2l0aCB0aGUgaGlnaGVzdCByZXNpZHVhbCBMU0Yg
dmFsdWUpLgorVGhpcyBpcyBkb25lIGJlY2F1c2UgdGhlIHByZWRpY3Rpb24gd29ya3Mgc2xpZ2h0
bHkKK2JldHRlciBpbiB0aGUgcmV2ZXJzZSBkaXJlY3Rpb24uCis8L3Q+Cis8dD4KK1RoZSBxdWFu
dGl6YXRpb24gaW5kZXggb2YgdGhlIGZpcnN0IHN0YWdlIGlzIGVudHJvcHkgY29kZWQuCitUaGUg
cXVhbnRpemF0aW9uIHNlcXVlbmNlIGZyb20gdGhlIHNlY29uZCBzdGFnZSBpcyBhbHNvIGVudHJv
cHkKK2NvZGVkLCB3aGVyZSBmb3IgZWFjaCBlbGVtZW50IHRoZSBwcm9iYWJpbGl0eSB0YWJsZSBp
cyBjaG9zZW4KK2RlcGVuZGluZyBvbiB0aGUgdmVjdG9yIGluZGV4IGZyb20gdGhlIGZpcnN0IHN0
YWdlIGFuZCB0aGUgbG9jYXRpb24KK29mIHRoYXQgZWxlbWVudCBpbiB0aGUgTFNGIHZlY3Rvci4K
KzwvdD4KKworPHNlY3Rpb24gdGl0bGU9J0xTRiBTdGFiaWxpemF0aW9uJyBhbmNob3I9J2xzZl9z
dGFiaWxpemVyX292ZXJ2aWV3X3NlY3Rpb24nPgorPHQ+CitJZiB0aGUgaW5wdXQgaXMgc3RhYmxl
LCBmaW5kaW5nIHRoZSBiZXN0IGNhbmRpZGF0ZSB1c3VhbGx5IHJlc3VsdHMgaW4gYQorcXVhbnRp
emVkIHZlY3RvciB0aGF0IGlzIGFsc28gc3RhYmxlLiBCZWNhdXNlIG9mIHRoZSB0d28tc3RhZ2Ug
YXBwcm9hY2gsCitob3dldmVyLCBpdCBpcyBwb3NzaWJsZSB0aGF0IHRoZSBiZXN0IHF1YW50aXph
dGlvbiBjYW5kaWRhdGUgaXMgdW5zdGFibGUuCitUaGUgZW5jb2RlciBhcHBsaWVzIHRoZSBzYW1l
IHN0YWJpbGl6YXRpb24gcHJvY2VkdXJlIGFwcGxpZWQgYnkgdGhlIGRlY29kZXIKKyAoc2VlIDx4
cmVmIHRhcmdldD0ic2lsa19ubHNmX3N0YWJpbGl6YXRpb24iLz4gdG8gZW5zdXJlIHRoZSBMU0Yg
cGFyYW1ldGVycworIGFyZSB3aXRoaW4gdGhlaXIgdmFsaWQgcmFuZ2UsIGluY3JlYXNpbmdseSBz
b3J0ZWQsIGFuZCBoYXZlIG1pbmltdW0KKyBkaXN0YW5jZXMgYmV0d2VlbiBlYWNoIG90aGVyIGFu
ZCB0aGUgYm9yZGVyIHZhbHVlcy4KKzwvdD4KKzwvc2VjdGlvbj4KKzwvc2VjdGlvbj4KKworPHNl
Y3Rpb24gdGl0bGU9J0xUUCBRdWFudGl6YXRpb24nIGFuY2hvcj0nbHRwX3F1YW50aXplcl9vdmVy
dmlld19zZWN0aW9uJz4KKzx0PgorRm9yIHZvaWNlZCBmcmFtZXMsIHRoZSBwcmVkaWN0aW9uIGFu
YWx5c2lzIGRlc2NyaWJlZCBpbgorPHhyZWYgdGFyZ2V0PSdwcmVkX2FuYV92b2ljZWRfb3ZlcnZp
ZXdfc2VjdGlvbicgLz4gcmVzdWx0ZWQgaW4gZm91ciBzZXRzCisob25lIHNldCBwZXIgc3ViZnJh
bWUpIG9mIGZpdmUgTFRQIGNvZWZmaWNpZW50cywgcGx1cyBmb3VyIHdlaWdodGluZyBtYXRyaWNl
cy4KK1RoZSBMVFAgY29lZmZpY2llbnRzIGZvciBlYWNoIHN1YmZyYW1lIGFyZSBxdWFudGl6ZWQg
dXNpbmcgZW50cm9weSBjb25zdHJhaW5lZAordmVjdG9yIHF1YW50aXphdGlvbi4KK0EgdG90YWwg
b2YgdGhyZWUgdmVjdG9yIGNvZGVib29rcyBhcmUgYXZhaWxhYmxlIGZvciBxdWFudGl6YXRpb24s
IHdpdGgKK2RpZmZlcmVudCByYXRlLWRpc3RvcnRpb24gdHJhZGUtb2Zmcy4gVGhlIHRocmVlIGNv
ZGVib29rcyBoYXZlIDEwLCAyMCwgYW5kCis0MCB2ZWN0b3JzIGFuZCBhdmVyYWdlIHJhdGVzIG9m
IGFib3V0IDMsIDQsIGFuZCA1IGJpdHMgcGVyIHZlY3RvciwgcmVzcGVjdGl2ZWx5LgorQ29uc2Vx
dWVudGx5LCB0aGUgZmlyc3QgY29kZWJvb2sgaGFzIGxhcmdlciBhdmVyYWdlIHF1YW50aXphdGlv
biBkaXN0b3J0aW9uIGF0CithIGxvd2VyIHJhdGUsIHdoZXJlYXMgdGhlIGxhc3QgY29kZWJvb2sg
aGFzIHNtYWxsZXIgYXZlcmFnZSBxdWFudGl6YXRpb24KK2Rpc3RvcnRpb24gYXQgYSBoaWdoZXIg
cmF0ZS4KK0dpdmVuIHRoZSB3ZWlnaHRpbmcgbWF0cml4IFdfbHRwIGFuZCBMVFAgdmVjdG9yIGIs
IHRoZSB3ZWlnaHRlZCByYXRlLWRpc3RvcnRpb24KK21lYXN1cmUgZm9yIGEgY29kZWJvb2sgdmVj
dG9yIGNiX2kgd2l0aCByYXRlIHJfaSBpcyBnaXZlIGJ5Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIi
PgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKKyBSRCA9IHUgKiAoYiAtIGNi
X2kpJyAqIFdfbHRwICogKGIgLSBjYl9pKSArIHJfaSwKK11dPgorPC9hcnR3b3JrPgorPC9maWd1
cmU+Cit3aGVyZSB1IGlzIGEgZml4ZWQsIGhldXJpc3RpY2FsbHktZGV0ZXJtaW5lZCBwYXJhbWV0
ZXIgYmFsYW5jaW5nIHRoZSBkaXN0b3J0aW9uCithbmQgcmF0ZS4KK1doaWNoIGNvZGVib29rIGdp
dmVzIHRoZSBiZXN0IHBlcmZvcm1hbmNlIGZvciBhIGdpdmVuIExUUCB2ZWN0b3IgZGVwZW5kcyBv
biB0aGUKK3dlaWdodGluZyBtYXRyaXggZm9yIHRoYXQgTFRQIHZlY3Rvci4KK0ZvciBleGFtcGxl
LCBmb3IgYSBsb3cgdmFsdWVkIFdfbHRwLCBpdCBpcyBhZHZhbnRhZ2VvdXMgdG8gdXNlIHRoZSBj
b2RlYm9vaword2l0aCAxMCB2ZWN0b3JzIGFzIGl0IGhhcyBhIGxvd2VyIGF2ZXJhZ2UgcmF0ZS4K
K0ZvciBhIGxhcmdlIFdfbHRwLCBvbiB0aGUgb3RoZXIgaGFuZCwgaXQgaXMgb2Z0ZW4gYmV0dGVy
IHRvIHVzZSB0aGUgY29kZWJvb2sKK3dpdGggNDAgdmVjdG9ycywgYXMgaXQgaXMgbW9yZSBsaWtl
bHkgdG8gY29udGFpbiB0aGUgYmVzdCBjb2RlYm9vayB2ZWN0b3IuCitUaGUgd2VpZ2h0aW5nIG1h
dHJpeCBXX2x0cCBkZXBlbmRzIG1vc3RseSBvbiB0d28gYXNwZWN0cyBvZiB0aGUgaW5wdXQgc2ln
bmFsLgorVGhlIGZpcnN0IGlzIHRoZSBwZXJpb2RpY2l0eSBvZiB0aGUgc2lnbmFsOyB0aGUgbW9y
ZSBwZXJpb2RpYywgdGhlIGxhcmdlciBXX2x0cC4KK1RoZSBzZWNvbmQgaXMgdGhlIGNoYW5nZSBp
biBzaWduYWwgZW5lcmd5IGluIHRoZSBjdXJyZW50IHN1YmZyYW1lLCByZWxhdGl2ZSB0bwordGhl
IHNpZ25hbCBvbmUgcGl0Y2ggbGFnIGVhcmxpZXIuCitBIGRlY2F5aW5nIGVuZXJneSBsZWFkcyB0
byBhIGxhcmdlciBXX2x0cCB0aGFuIGFuIGluY3JlYXNpbmcgZW5lcmd5LgorQm90aCBhc3BlY3Rz
IGZsdWN0dWF0ZSByZWxhdGl2ZWx5IHNsb3dseSwgd2hpY2ggY2F1c2VzIHRoZSBXX2x0cCBtYXRy
aWNlcyBmb3IKK2RpZmZlcmVudCBzdWJmcmFtZXMgb2Ygb25lIGZyYW1lIG9mdGVuIHRvIGJlIHNp
bWlsYXIuCitCZWNhdXNlIG9mIHRoaXMsIG9uZSBvZiB0aGUgdGhyZWUgY29kZWJvb2tzIHR5cGlj
YWxseSBnaXZlcyBnb29kIHBlcmZvcm1hbmNlCitmb3IgYWxsIHN1YmZyYW1lcywgYW5kIHRoZXJl
Zm9yZSB0aGUgY29kZWJvb2sgc2VhcmNoIGZvciB0aGUgc3ViZnJhbWUgTFRQCit2ZWN0b3JzIGlz
IGNvbnN0cmFpbmVkIHRvIG9ubHkgYWxsb3cgY29kZWJvb2sgdmVjdG9ycyB0byBiZSBjaG9zZW4g
ZnJvbSB0aGUKK3NhbWUgY29kZWJvb2ssIHJlc3VsdGluZyBpbiBhIHJhdGUgcmVkdWN0aW9uLgor
PC90PgorCis8dD4KK1RvIGZpbmQgdGhlIGJlc3QgY29kZWJvb2ssIGVhY2ggb2YgdGhlIHRocmVl
IHZlY3RvciBjb2RlYm9va3MgaXMKK3VzZWQgdG8gcXVhbnRpemUgYWxsIHN1YmZyYW1lIExUUCB2
ZWN0b3JzIGFuZCBwcm9kdWNlIGEgY29tYmluZWQKK3dlaWdodGVkIHJhdGUtZGlzdG9ydGlvbiBt
ZWFzdXJlIGZvciBlYWNoIHZlY3RvciBjb2RlYm9vay4KK1RoZSB2ZWN0b3IgY29kZWJvb2sgd2l0
aCB0aGUgbG93ZXN0IGNvbWJpbmVkIHJhdGUtZGlzdG9ydGlvbgorb3ZlciBhbGwgc3ViZnJhbWVz
IGlzIGNob3Nlbi4gVGhlIHF1YW50aXplZCBMVFAgdmVjdG9ycyBhcmUgdXNlZAoraW4gdGhlIG5v
aXNlIHNoYXBpbmcgcXVhbnRpemVyLCBhbmQgdGhlIGluZGV4IG9mIHRoZSBjb2RlYm9vaworcGx1
cyB0aGUgZm91ciBpbmRpY2VzIGZvciB0aGUgZm91ciBzdWJmcmFtZSBjb2RlYm9vayB2ZWN0b3Jz
CithcmUgcGFzc2VkIG9uIHRvIHRoZSByYW5nZSBlbmNvZGVyLgorPC90PgorPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiB0aXRsZT0nUHJlZmlsdGVyJz4KKzx0PgorSW4gdGhlIHByZWZpbHRlciB0aGUg
aW5wdXQgc2lnbmFsIGlzIGZpbHRlcmVkIHVzaW5nIHRoZSBzcGVjdHJhbCB2YWxsZXkKK2RlLWVt
cGhhc2lzIGZpbHRlciBjb2VmZmljaWVudHMgZnJvbSB0aGUgbm9pc2Ugc2hhcGluZyBhbmFseXNp
cworKHNlZSA8eHJlZiB0YXJnZXQ9J25vaXNlX3NoYXBpbmdfYW5hbHlzaXNfb3ZlcnZpZXdfc2Vj
dGlvbicvPikuCitCeSBhcHBseWluZyBvbmx5IHRoZSBub2lzZSBzaGFwaW5nIGFuYWx5c2lzIGZp
bHRlciB0byB0aGUgaW5wdXQgc2lnbmFsLAoraXQgcHJvdmlkZXMgdGhlIGlucHV0IHRvIHRoZSBu
b2lzZSBzaGFwaW5nIHF1YW50aXplci4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0
bGU9J05vaXNlIFNoYXBpbmcgUXVhbnRpemVyJz4KKzx0PgorVGhlIG5vaXNlIHNoYXBpbmcgcXVh
bnRpemVyIGluZGVwZW5kZW50bHkgc2hhcGVzIHRoZSBzaWduYWwgYW5kIGNvZGluZyBub2lzZQor
c3BlY3RyYSB0byBvYnRhaW4gYSBwZXJjZXB0dWFsbHkgaGlnaGVyIHF1YWxpdHkgYXQgdGhlIHNh
bWUgYml0cmF0ZS4KKzwvdD4KKzx0PgorVGhlIHByZWZpbHRlciBvdXRwdXQgc2lnbmFsIGlzIG11
bHRpcGxpZWQgd2l0aCBhIGNvbXBlbnNhdGlvbiBnYWluIEcgY29tcHV0ZWQKK2luIHRoZSBub2lz
ZSBzaGFwaW5nIGFuYWx5c2lzLiBUaGVuIHRoZSBvdXRwdXQgb2YgYSBzeW50aGVzaXMgc2hhcGlu
ZyBmaWx0ZXIKK2lzIGFkZGVkLCBhbmQgdGhlIG91dHB1dCBvZiBhIHByZWRpY3Rpb24gZmlsdGVy
IGlzIHN1YnRyYWN0ZWQgdG8gY3JlYXRlIGEKK3Jlc2lkdWFsIHNpZ25hbC4KK1RoZSByZXNpZHVh
bCBzaWduYWwgaXMgbXVsdGlwbGllZCBieSB0aGUgaW52ZXJzZSBxdWFudGl6ZWQgcXVhbnRpemF0
aW9uIGdhaW4KK2Zyb20gdGhlIG5vaXNlIHNoYXBpbmcgYW5hbHlzaXMsIGFuZCBpbnB1dCB0byBh
IHNjYWxhciBxdWFudGl6ZXIuCitUaGUgcXVhbnRpemF0aW9uIGluZGljZXMgb2YgdGhlIHNjYWxh
ciBxdWFudGl6ZXIgcmVwcmVzZW50IGEgc2lnbmFsIG9mIHB1bHNlcwordGhhdCBpcyBpbnB1dCB0
byB0aGUgcHlyYW1pZCByYW5nZSBlbmNvZGVyLgorVGhlIHNjYWxhciBxdWFudGl6ZXIgYWxzbyBv
dXRwdXRzIGEgcXVhbnRpemF0aW9uIHNpZ25hbCwgd2hpY2ggaXMgbXVsdGlwbGllZAorYnkgdGhl
IHF1YW50aXplZCBxdWFudGl6YXRpb24gZ2FpbiBmcm9tIHRoZSBub2lzZSBzaGFwaW5nIGFuYWx5
c2lzIHRvIGNyZWF0ZQorYW4gZXhjaXRhdGlvbiBzaWduYWwuCitUaGUgb3V0cHV0IG9mIHRoZSBw
cmVkaWN0aW9uIGZpbHRlciBpcyBhZGRlZCB0byB0aGUgZXhjaXRhdGlvbiBzaWduYWwgdG8gZm9y
bQordGhlIHF1YW50aXplZCBvdXRwdXQgc2lnbmFsIHkobikuCitUaGUgcXVhbnRpemVkIG91dHB1
dCBzaWduYWwgeShuKSBpcyBpbnB1dCB0byB0aGUgc3ludGhlc2lzIHNoYXBpbmcgYW5kCitwcmVk
aWN0aW9uIGZpbHRlcnMuCis8L3Q+Cis8dD4KK09wdGlvbmFsbHkgdGhlIG5vaXNlIHNoYXBpbmcg
cXVhbnRpemVyIG9wZXJhdGVzIGluIGEgZGVsYXllZCBkZWNpc2lvbgorbW9kZS4KK0luIHRoaXMg
bW9kZSBpdCB1c2VzIGEgVml0ZXJiaSBhbGdvcml0aG0gdG8ga2VlcCB0cmFjayBvZgorbXVsdGlw
bGUgcm91bmRpbmcgY2hvaWNlcyBpbiB0aGUgcXVhbnRpemVyIGFuZCBzZWxlY3QgdGhlIGJlc3QK
K29uZSBhZnRlciBhIGRlbGF5IG9mIDMyIHNhbXBsZXMuICBUaGlzIGltcHJvdmVzIHRoZSByYXRl
L2Rpc3RvcnRpb24KK3BlcmZvcm1hbmNlIG9mIHRoZSBxdWFudGl6ZXIuCis8L3Q+Cis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIHRpdGxlPSdDb25zdGFudCBCaXRyYXRlIE1vZGUnPgorPHQ+CisgIFNJ
TEsgd2FzIGRlc2lnbmVkIHRvIHJ1biBpbiBWYXJpYWJsZSBCaXRyYXRlIChWQlIpIG1vZGUuICBI
b3dldmVyCisgIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gYWxzbyBoYXMgYSBDb25zdGFu
dCBCaXRyYXRlIChDQlIpIG1vZGUKKyAgZm9yIFNJTEsuICBJbiBDQlIgbW9kZSBTSUxLIHdpbGwg
YXR0ZW1wdCB0byBlbmNvZGUgZWFjaCBwYWNrZXQgd2l0aAorICBubyBtb3JlIHRoYW4gdGhlIGFs
bG93ZWQgbnVtYmVyIG9mIGJpdHMuICBUaGUgT3B1cyB3cmFwcGVyIGNvZGUKKyAgdGhlbiBwYWRz
IHRoZSBiaXRzdHJlYW0gaWYgYW55IHVudXNlZCBiaXRzIGFyZSBsZWZ0IGluIFNJTEsgbW9kZSwg
b3IKKyAgZW5jb2RlcyB0aGUgaGlnaCBiYW5kIHdpdGggdGhlIHJlbWFpbmluZyBudW1iZXIgb2Yg
Yml0cyBpbiBIeWJyaWQgbW9kZS4KKyAgVGhlIG51bWJlciBvZiBwYXlsb2FkIGJpdHMgaXMgYWRq
dXN0ZWQgYnkgY2hhbmdpbmcKKyAgdGhlIHF1YW50aXphdGlvbiBnYWlucyBhbmQgdGhlIHJhdGUv
ZGlzdG9ydGlvbiB0cmFkZW9mZiBpbiB0aGUgbm9pc2UKKyAgc2hhcGluZyBxdWFudGl6ZXIsIGlu
IGFuIGl0ZXJhdGl2ZSBsb29wCisgIGFyb3VuZCB0aGUgbm9pc2Ugc2hhcGluZyBxdWFudGl6ZXIg
YW5kIGVudHJvcHkgY29kaW5nLgorICBDb21wYXJlZCB0byB0aGUgU0lMSyBWQlIgbW9kZSwgdGhl
IENCUiBtb2RlIGhhcyBsb3dlcgorICBhdWRpbyBxdWFsaXR5IGF0IGEgZ2l2ZW4gYXZlcmFnZSBi
aXRyYXRlLCBhbmQgYWxzbyBoYXMgaGlnaGVyCisgIGNvbXB1dGF0aW9uYWwgY29tcGxleGl0eS4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKworPHNlY3Rp
b24gdGl0bGU9IkNFTFQgRW5jb2RlciI+Cis8dD4KK01vc3Qgb2YgdGhlIGFzcGVjdHMgb2YgdGhl
IENFTFQgZW5jb2RlciBjYW4gYmUgZGlyZWN0bHkgZGVyaXZlZCBmcm9tIHRoZSBkZXNjcmlwdGlv
bgorb2YgdGhlIGRlY29kZXIuIEZvciBleGFtcGxlLCB0aGUgZmlsdGVycyBhbmQgcm90YXRpb25z
IGluIHRoZSBlbmNvZGVyIGFyZSBzaW1wbHkgdGhlCitpbnZlcnNlIG9mIHRoZSBvcGVyYXRpb24g
cGVyZm9ybWVkIGJ5IHRoZSBkZWNvZGVyLiBTaW1pbGFybHksIHRoZSBxdWFudGl6ZXJzIGdlbmVy
YWxseQorb3B0aW1pemUgZm9yIHRoZSBtZWFuIHNxdWFyZSBlcnJvciAoYmVjYXVzZSBub2lzZSBz
aGFwaW5nIGlzIHBhcnQgb2YgdGhlIGJpdC1zdHJlYW0gaXRzZWxmKSwKK3NvIG5vIHNwZWNpYWwg
c2VhcmNoIGlzIHJlcXVpcmVkLiBGb3IgdGhpcyByZWFzb24sIG9ubHkgdGhlIGxlc3Mgc3RyYWln
aHRmb3J3YXJkIGFzcGVjdHMgb2YgdGhlCitlbmNvZGVyIGFyZSBkZXNjcmliZWQgaGVyZS4KKzwv
dD4KKworPHNlY3Rpb24gYW5jaG9yPSJwaXRjaC1wcmVmaWx0ZXIiIHRpdGxlPSJQaXRjaCBQcmVm
aWx0ZXIiPgorPHQ+VGhlIHBpdGNoIHByZWZpbHRlciBpcyBhcHBsaWVkIGFmdGVyIHRoZSBwcmUt
ZW1waGFzaXMuIEl0IGlzIGFwcGxpZWQKK2luIHN1Y2ggYSB3YXkgYXMgdG8gYmUgdGhlIGludmVy
c2Ugb2YgdGhlIGRlY29kZXIncyBwb3N0LWZpbHRlci4gVGhlIG1haW4gbm9uLW9idmlvdXMgYXNw
ZWN0IG9mIHRoZQorcHJlZmlsdGVyIGlzIHRoZSBzZWxlY3Rpb24gb2YgdGhlIHBpdGNoIHBlcmlv
ZC4gVGhlIHBpdGNoIHNlYXJjaCBzaG91bGQgYmUgb3B0aW1pemVkIGZvciB0aGUKK2ZvbGxvd2lu
ZyBjcml0ZXJpYToKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PmNvbnRpbnVpdHk6IGl0IGlz
IGltcG9ydGFudCB0aGF0IHRoZSBwaXRjaCBwZXJpb2QKK2RvZXMgbm90IGNoYW5nZSBhYnJ1cHRs
eSBiZXR3ZWVuIGZyYW1lczsgYW5kPC90PgorPHQ+YXZvaWRhbmNlIG9mIHBpdGNoIG11bHRpcGxl
czogd2hlbiB0aGUgcGVyaW9kIHVzZWQgaXMgYSBtdWx0aXBsZSBvZiB0aGUgcmVhbCBwZXJpb2QK
Kyhsb3dlciBmcmVxdWVuY3kgZnVuZGFtZW50YWwpLCB0aGUgcG9zdC1maWx0ZXIgbG9zZXMgbW9z
dCBvZiBpdHMgYWJpbGl0eSB0byByZWR1Y2Ugbm9pc2U8L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8L3Nl
Y3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ibm9ybWFsaXphdGlvbiIgdGl0bGU9IkJhbmRzIGFu
ZCBOb3JtYWxpemF0aW9uIj4KKzx0PgorVGhlIE1EQ1Qgb3V0cHV0IGlzIGRpdmlkZWQgaW50byBi
YW5kcyB0aGF0IGFyZSBkZXNpZ25lZCB0byBtYXRjaCB0aGUgZWFyJ3MgY3JpdGljYWwKK2JhbmRz
IGZvciB0aGUgc21hbGxlc3QgKDIuNSZuYnNwO21zKSBmcmFtZSBzaXplLiBUaGUgbGFyZ2VyIGZy
YW1lIHNpemVzIHVzZSBpbnRlZ2VyCittdWx0aXBsZXMgb2YgdGhlIDIuNSZuYnNwO21zIGxheW91
dC4gRm9yIGVhY2ggYmFuZCwgdGhlIGVuY29kZXIKK2NvbXB1dGVzIHRoZSBlbmVyZ3kgdGhhdCB3
aWxsIGxhdGVyIGJlIGVuY29kZWQuIEVhY2ggYmFuZCBpcyB0aGVuIG5vcm1hbGl6ZWQgYnkgdGhl
CitzcXVhcmUgcm9vdCBvZiB0aGUgPHNwYW54IHN0eWxlPSJzdHJvbmciPnVucXVhbnRpemVkPC9z
cGFueD4gZW5lcmd5LCBzdWNoIHRoYXQgZWFjaCBiYW5kIG5vdyBmb3JtcyBhIHVuaXQgdmVjdG9y
IFguCitUaGUgZW5lcmd5IGFuZCB0aGUgbm9ybWFsaXphdGlvbiBhcmUgY29tcHV0ZWQgYnkgY29t
cHV0ZV9iYW5kX2VuZXJnaWVzKCkKK2FuZCBub3JtYWxpc2VfYmFuZHMoKSAoYmFuZHMuYyksIHJl
c3BlY3RpdmVseS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJlbmVyZ3kt
cXVhbnRpemF0aW9uIiB0aXRsZT0iRW5lcmd5IEVudmVsb3BlIFF1YW50aXphdGlvbiI+CisKKzx0
PgorRW5lcmd5IHF1YW50aXphdGlvbiAoYm90aCBjb2Fyc2UgYW5kIGZpbmUpIGNhbiBiZSBlYXNp
bHkgdW5kZXJzdG9vZCBmcm9tIHRoZSBkZWNvZGluZyBwcm9jZXNzLgorRm9yIGFsbCB1c2VmdWwg
Yml0cmF0ZXMsIHRoZSBjb2Fyc2UgcXVhbnRpemVyIGFsd2F5cyBjaG9vc2VzIHRoZSBxdWFudGl6
ZWQgbG9nIGVuZXJneSB2YWx1ZSB0aGF0CittaW5pbWl6ZXMgdGhlIGVycm9yIGZvciBlYWNoIGJh
bmQuIE9ubHkgYXQgdmVyeSBsb3cgcmF0ZSBkb2VzIHRoZSBlbmNvZGVyIGFsbG93IGxhcmdlciBl
cnJvcnMgdG8KK21pbmltaXplIHRoZSByYXRlIGFuZCBhdm9pZCB1c2luZyBtb3JlIGJpdHMgdGhh
biBhcmUgYXZhaWxhYmxlLiBXaGVuIHRoZQorYXZhaWxhYmxlIENQVSByZXF1aXJlbWVudHMgYWxs
b3cgaXQsIGl0IGlzIGJlc3QgdG8gdHJ5IGVuY29kaW5nIHRoZSBjb2Fyc2UgZW5lcmd5IGJvdGgg
d2l0aCBhbmQgd2l0aG91dAoraW50ZXItZnJhbWUgcHJlZGljdGlvbiBzdWNoIHRoYXQgdGhlIGJl
c3QgcHJlZGljdGlvbiBtb2RlIGNhbiBiZSBzZWxlY3RlZC4gVGhlIG9wdGltYWwgbW9kZSBkZXBl
bmRzIG9uCit0aGUgY29kaW5nIHJhdGUsIHRoZSBhdmFpbGFibGUgYml0cmF0ZSwgYW5kIHRoZSBj
dXJyZW50IHJhdGUgb2YgcGFja2V0IGxvc3MuCis8L3Q+CisKKzx0PlRoZSBmaW5lIGVuZXJneSBx
dWFudGl6ZXIgYWx3YXlzIGNob29zZXMgdGhlIHF1YW50aXplZCBsb2cgZW5lcmd5IHZhbHVlIHRo
YXQKK21pbmltaXplcyB0aGUgZXJyb3IgZm9yIGVhY2ggYmFuZCBiZWNhdXNlIHRoZSByYXRlIG9m
IHRoZSBmaW5lIHF1YW50aXphdGlvbiBkZXBlbmRzIG9ubHkKK29uIHRoZSBiaXQgYWxsb2NhdGlv
biBhbmQgbm90IG9uIHRoZSB2YWx1ZXMgdGhhdCBhcmUgY29kZWQuCis8L3Q+Cis8L3NlY3Rpb24+
IDwhLS0gRW5lcmd5IHF1YW50IC0tPgorCis8c2VjdGlvbiB0aXRsZT0iQml0IEFsbG9jYXRpb24i
PgorPHQ+VGhlIGVuY29kZXIgbXVzdCB1c2UgZXhhY3RseSB0aGUgc2FtZSBiaXQgYWxsb2NhdGlv
biBwcm9jZXNzIGFzIHVzZWQgYnkgdGhlIGRlY29kZXIKK2FuZCBkZXNjcmliZWQgaW4gPHhyZWYg
dGFyZ2V0PSJhbGxvY2F0aW9uIi8+LiBUaGUgdGhyZWUgbWVjaGFuaXNtcyB0aGF0IGNhbiBiZSB1
c2VkIGJ5IHRoZQorZW5jb2RlciB0byBhZGp1c3QgdGhlIGJpdHJhdGUgb24gYSBmcmFtZS1ieS1m
cmFtZSBiYXNpcyBhcmUgYmFuZCBib29zdCwgYWxsb2NhdGlvbiB0cmltLAorYW5kIGJhbmQgc2tp
cHBpbmcuCis8L3Q+CisKKzxzZWN0aW9uIHRpdGxlPSJCYW5kIEJvb3N0Ij4KKzx0PlRoZSByZWZl
cmVuY2UgZW5jb2RlciBtYWtlcyBhIGRlY2lzaW9uIHRvIGJvb3N0IGEgYmFuZCB3aGVuIHRoZSBl
bmVyZ3kgb2YgdGhhdCBiYW5kIGlzIHNpZ25pZmljYW50bHkKK2hpZ2hlciB0aGFuIHRoYXQgb2Yg
dGhlIG5laWdoYm9yaW5nIGJhbmRzLiBMZXQgRV9qIGJlIHRoZSBsb2ctZW5lcmd5IG9mIGJhbmQg
aiwgd2UgZGVmaW5lCis8bGlzdD4KKzx0PkRfaiA9IDIqRV9qIC0gRV9qLTEgLSBFX2orMSA8L3Q+
Cis8L2xpc3Q+CisKK1RoZSBhbGxvY2F0aW9uIG9mIGJhbmQgaiBpcyBib29zdGVkIG9uY2UgaWYg
RF9qICZndDsgdDEgYW5kIHR3aWNlIGlmIERfaiAmZ3Q7IHQyLiBGb3IgTE0mZ3Q7PTEsIHQxPTIg
YW5kIHQyPTQsCit3aGlsZSBmb3IgTE0mbHQ7MSwgdDE9MyBhbmQgdDI9NS4KKzwvdD4KKworPC9z
ZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQWxsb2NhdGlvbiBUcmltIj4KKzx0PlRoZSBhbGxv
Y2F0aW9uIHRyaW0gaXMgYSB2YWx1ZSBiZXR3ZWVuIDAgYW5kIDEwIChpbmNsdXNpdmVseSkgdGhh
dCBjb250cm9scyB0aGUgYWxsb2NhdGlvbgorYmFsYW5jZSBiZXR3ZWVuIHRoZSBsb3cgYW5kIGhp
Z2ggZnJlcXVlbmNpZXMuIFRoZSBlbmNvZGVyIHN0YXJ0cyB3aXRoIGEgc2FmZSAiZGVmYXVsdCIg
b2YgNQorYW5kIGRldmlhdGVzIGZyb20gdGhhdCBkZWZhdWx0IGluIHR3byBkaWZmZXJlbnQgd2F5
cy4gRmlyc3QgdGhlIHRyaW0gY2FuIGRldmlhdGUgYnkgKy8tIDIKK2RlcGVuZGluZyBvbiB0aGUg
c3BlY3RyYWwgdGlsdCBvZiB0aGUgaW5wdXQgc2lnbmFsLiBGb3Igc2lnbmFscyB3aXRoIG1vcmUg
bG93IGZyZXF1ZW5jaWVzLCB0aGUKK3RyaW0gaXMgaW5jcmVhc2VkIGJ5IHVwIHRvIDIsIHdoaWxl
IGZvciBzaWduYWxzIHdpdGggbW9yZSBoaWdoIGZyZXF1ZW5jaWVzLCB0aGUgdHJpbSBpcworZGVj
cmVhc2VkIGJ5IHVwIHRvIDIuCitGb3Igc3RlcmVvIGlucHV0cywgdGhlIHRyaW0gdmFsdWUgY2Fu
CitiZSBkZWNyZWFzZWQgYnkgdXAgdG8gNCB3aGVuIHRoZSBpbnRlci1jaGFubmVsIGNvcnJlbGF0
aW9uIGF0IGxvdyBmcmVxdWVuY3kgKGZpcnN0IDggYmFuZHMpCitpcyBoaWdoLiA8L3Q+Cis8L3Nl
Y3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJCYW5kIFNraXBwaW5nIj4KKzx0PlRoZSBlbmNvZGVy
IHVzZXMgYmFuZCBza2lwcGluZyB0byBlbnN1cmUgdGhhdCB0aGUgc2hhcGUgb2YgdGhlIGJhbmRz
IGlzIG9ubHkgY29kZWQKK2lmIHRoZXJlIGlzIGF0IGxlYXN0IDEvMiBiaXQgcGVyIHNhbXBsZSBh
dmFpbGFibGUgZm9yIHRoZSBQVlEuIElmIG5vdCwgdGhlbiBubyBiaXQgaXMgYWxsb2NhdGVkCith
bmQgZm9sZGluZyBpcyB1c2VkIGluc3RlYWQuIFRvIGVuc3VyZSBjb250aW51aXR5IGluIHRoZSBh
bGxvY2F0aW9uLCBzb21lIGFtb3VudCBvZiBoeXN0ZXJlc2lzIGlzCithZGRlZCB0byB0aGUgcHJv
Y2Vzcywgc3VjaCB0aGF0IGEgYmFuZCB0aGF0IHJlY2VpdmVkIFBWUSBiaXRzIGluIHRoZSBwcmV2
aW91cyBmcmFtZSBvbmx5IG5lZWRzIDcvMTYKK2JpdC9zYW1wbGUgdG8gYmUgY29kZWQgZm9yIHRo
ZSBjdXJyZW50IGZyYW1lLCB3aGlsZSBhIGJhbmQgdGhhdCBkaWQgbm90IHJlY2VpdmUgUFZRIGJp
dHMgaW4gdGhlCitwcmV2aW91cyBmcmFtZXMgbmVlZHMgYXQgbGVhc3QgOS8xNiBiaXQvc2FtcGxl
IHRvIGJlIGNvZGVkLjwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0
aXRsZT0iU3RlcmVvIERlY2lzaW9ucyI+Cis8dD5CZWNhdXNlIENFTFQgYXBwbGllcyBtaWQtc2lk
ZSBzdGVyZW8gY291cGxpbmcgaW4gdGhlIG5vcm1hbGl6ZWQgZG9tYWluLCBpdCBkb2VzIG5vdCBz
dWZmZXIgZnJvbQoraW1wb3J0YW50IHN0ZXJlbyBpbWFnZSBwcm9ibGVtcyBldmVuIHdoZW4gdGhl
IHR3byBjaGFubmVscyBhcmUgY29tcGxldGVseSB1bmNvcnJlbGF0ZWQuIEZvciB0aGlzIHJlYXNv
bgoraXQgaXMgYWx3YXlzIHNhZmUgdG8gdXNlIHN0ZXJlbyBjb3VwbGluZyBvbiBhbnkgYXVkaW8g
ZnJhbWUuIFRoYXQgYmVpbmcgc2FpZCwgdGhlcmUgYXJlIHNvbWUgZnJhbWVzCitmb3Igd2hpY2gg
ZHVhbCAoaW5kZXBlbmRlbnQpIHN0ZXJlbyBpcyBzdGlsbCBtb3JlIGVmZmljaWVudC4gVGhpcyBk
ZWNpc2lvbiBpcyBtYWRlIGJ5IGNvbXBhcmluZyB0aGUgZXN0aW1hdGVkCitlbnRyb3B5IHdpdGgg
YW5kIHdpdGhvdXQgY291cGxpbmcgb3ZlciB0aGUgZmlyc3QgMTMgYmFuZHMsIHRha2luZyBpbnRv
IGFjY291bnQgdGhlIGZhY3QgdGhhdCBhbGwgYmFuZHMgd2l0aAorbW9yZSB0aGFuIHR3byBNRENU
IGJpbnMgcmVxdWlyZSBvbmUgZXh0cmEgZGVncmVlIG9mIGZyZWVkb20gd2hlbiBjb2RlZCBpbiBt
aWQtc2lkZS4gTGV0IEwxX21zIGFuZCBMMV9scgorYmUgdGhlIEwxLW5vcm0gb2YgdGhlIG1pZC1z
aWRlIHZlY3RvciBhbmQgdGhlIEwxLW5vcm0gb2YgdGhlIGxlZnQtcmlnaHQgdmVjdG9yLCByZXNw
ZWN0aXZlbHkuIFRoZSBkZWNpc2lvbgordG8gdXNlIG1pZC1zaWRlIGlzIG1hZGUgaWYgYW5kIG9u
bHkgaWYKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48
IVtDREFUQVsKKyBMMV9tcyAgICAgICAgICBMMV9scgorLS0tLS0tLS0gICAgPCAgIC0tLS0tCiti
aW5zICsgRSAgICAgICAgYmlucworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cit3aGVyZSBiaW5z
IGlzIHRoZSBudW1iZXIgb2YgTURDVCBiaW5zIGluIHRoZSBmaXJzdCAxMyBiYW5kcyBhbmQgRSBp
cyB0aGUgbnVtYmVyIG9mIGV4dHJhIGRlZ3JlZXMgb2YKK2ZyZWVkb20gZm9yIG1pZC1zaWRlIGNv
ZGluZy4gRm9yIExNPjEsIEU9MTMsIG90aGVyd2lzZSBFPTUuCis8L3Q+CisKKzx0PlRoZSByZWZl
cmVuY2UgZW5jb2RlciBkZWNpZGVzIG9uIHRoZSBpbnRlbnNpdHkgc3RlcmVvIHRocmVzaG9sZCBi
YXNlZCBvbiB0aGUgYml0cmF0ZSBhbG9uZS4gQWZ0ZXIKK3Rha2luZyBpbnRvIGFjY291bnQgdGhl
IGZyYW1lIHNpemUgYnkgc3VidHJhY3RpbmcgODAgYml0cyBwZXIgZnJhbWUgZm9yIGNvYXJzZSBl
bmVyZ3ksIHRoZSBmaXJzdAorYmFuZCB1c2luZyBpbnRlbnNpdHkgY29kaW5nIGlzIGFzIGZvbGxv
d3M6Cis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJpbnRlbnNpdHktdGhyZXNob2xkcyIKKyB0
aXRsZT0iVGhyZXNob2xkcyBmb3IgSW50ZW5zaXR5IFN0ZXJlbyI+Cis8dHRjb2wgYWxpZ249J2Nl
bnRlcic+Yml0cmF0ZSAoa2Ivcyk8L3R0Y29sPgorPHR0Y29sIGFsaWduPSdjZW50ZXInPnN0YXJ0
IGJhbmQ8L3R0Y29sPgorPGM+Jmx0OzM1PC9jPiAgICAgIDxjPjg8L2M+Cis8Yz4zNS01MDwvYz4g
ICAgICA8Yz4xMjwvYz4KKzxjPjUwLTY4PC9jPiAgICAgIDxjPjE2PC9jPgorPGM+ODQtODQ8L2M+
ICAgICAgPGM+MTg8L2M+Cis8Yz44NC0xMDI8L2M+ICAgICA8Yz4xOTwvYz4KKzxjPjEwMi0xMzA8
L2M+ICAgICA8Yz4yMDwvYz4KKzxjPiZndDsxMzA8L2M+ICAgICA8Yz5kaXNhYmxlZDwvYz4KKzwv
dGV4dHRhYmxlPgorCisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IlRpbWUtRnJlcXVl
bmN5IERlY2lzaW9uIj4KKzx0PgorVGhlIGNob2ljZSBvZiB0aW1lLWZyZXF1ZW5jeSByZXNvbHV0
aW9uIHVzZWQgaW4gPHhyZWYgdGFyZ2V0PSJ0Zi1jaGFuZ2UiPjwveHJlZj4gaXMgYmFzZWQgb24K
K1ItRCBvcHRpbWl6YXRpb24uIFRoZSBkaXN0b3J0aW9uIGlzIHRoZSBMMS1ub3JtIChzdW0gb2Yg
YWJzb2x1dGUgdmFsdWVzKSBvZiBlYWNoIGJhbmQKK2FmdGVyIGVhY2ggVEYgcmVzb2x1dGlvbiB1
bmRlciBjb25zaWRlcmF0aW9uLiBUaGUgTDEgbm9ybSBpcyB1c2VkIGJlY2F1c2UgaXQgcmVwcmVz
ZW50cyB0aGUgZW50cm9weQorZm9yIGEgTGFwbGFjaWFuIHNvdXJjZS4gVGhlIG51bWJlciBvZiBi
aXRzIHJlcXVpcmVkIHRvIGNvZGUgYSBjaGFuZ2UgaW4gVEYgcmVzb2x1dGlvbiBiZXR3ZWVuCit0
d28gYmFuZHMgaXMgaGlnaGVyIHRoYW4gdGhlIGNvc3Qgb2YgaGF2aW5nIHRob3NlIHR3byBiYW5k
cyB1c2UgdGhlIHNhbWUgcmVzb2x1dGlvbiwgd2hpY2ggaXMKK3doYXQgcmVxdWlyZXMgdGhlIFIt
RCBvcHRpbWl6YXRpb24uIFRoZSBvcHRpbWFsIGRlY2lzaW9uIGlzIGNvbXB1dGVkIHVzaW5nIHRo
ZSBWaXRlcmJpIGFsZ29yaXRobS4KK1NlZSB0Zl9hbmFseXNpcygpIGluIGNlbHQvY2VsdC5jLgor
PC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iU3ByZWFkaW5nIFZhbHVlcyBEZWNp
c2lvbiI+Cis8dD4KK1RoZSBjaG9pY2Ugb2YgdGhlIHNwcmVhZGluZyB2YWx1ZSBpbiA8eHJlZiB0
YXJnZXQ9InNwcmVhZCB2YWx1ZXMiPjwveHJlZj4gaGFzIGFuCitpbXBhY3Qgb24gdGhlIG5hdHVy
ZSBvZiB0aGUgY29kaW5nIG5vaXNlIGludHJvZHVjZWQgYnkgQ0VMVC4gVGhlIGxhcmdlciB0aGUg
Zl9yIHZhbHVlLCB0aGUKK2xvd2VyIHRoZSBpbXBhY3Qgb2YgdGhlIHJvdGF0aW9uLCBhbmQgdGhl
IG1vcmUgdG9uYWwgdGhlIGNvZGluZyBub2lzZS4gVGhlCittb3JlIHRvbmFsIHRoZSBzaWduYWws
IHRoZSBtb3JlIHRvbmFsIHRoZSBub2lzZSBzaG91bGQgYmUsIHNvIHRoZSBDRUxUIGVuY29kZXIg
ZGV0ZXJtaW5lcwordGhlIG9wdGltYWwgdmFsdWUgZm9yIGZfciBieSBlc3RpbWF0aW5nIGhvdyB0
b25hbCB0aGUgc2lnbmFsIGlzLiBUaGUgdG9uYWxpdHkgZXN0aW1hdGUKK2lzIGJhc2VkIG9uIGRp
c2NyZXRlIHBkZiAoNC1iaW4gaGlzdG9ncmFtKSBvZiBlYWNoIGJhbmQuIEJhbmRzIHRoYXQgaGF2
ZSBhIGxhcmdlIG51bWJlciBvZiBzbWFsbAordmFsdWVzIGFyZSBjb25zaWRlcmVkIG1vcmUgdG9u
YWwgYW5kIGEgZGVjaXNpb24gaXMgbWFkZSBieSBjb21iaW5pbmcgYWxsIGJhbmRzIHdpdGggbW9y
ZSB0aGFuCis4IHNhbXBsZXMuIFNlZSBzcHJlYWRpbmdfZGVjaXNpb24oKSBpbiBjZWx0L2JhbmRz
LmMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0icHZxIiB0aXRsZT0iU3Bo
ZXJpY2FsIFZlY3RvciBRdWFudGl6YXRpb24iPgorPHQ+Q0VMVCB1c2VzIGEgUHlyYW1pZCBWZWN0
b3IgUXVhbnRpemF0aW9uIChQVlEpIDx4cmVmIHRhcmdldD0iUFZRIj48L3hyZWY+Citjb2RlYm9v
ayBmb3IgcXVhbnRpemluZyB0aGUgZGV0YWlscyBvZiB0aGUgc3BlY3RydW0gaW4gZWFjaCBiYW5k
IHRoYXQgaGF2ZSBub3QKK2JlZW4gcHJlZGljdGVkIGJ5IHRoZSBwaXRjaCBwcmVkaWN0b3IuIFRo
ZSBQVlEgY29kZWJvb2sgY29uc2lzdHMgb2YgYWxsIHN1bXMKK29mIEsgc2lnbmVkIHB1bHNlcyBp
biBhIHZlY3RvciBvZiBOIHNhbXBsZXMsIHdoZXJlIHR3byBwdWxzZXMgYXQgdGhlIHNhbWUgcG9z
aXRpb24KK2FyZSByZXF1aXJlZCB0byBoYXZlIHRoZSBzYW1lIHNpZ24uIFRodXMgdGhlIGNvZGVi
b29rIGluY2x1ZGVzCithbGwgaW50ZWdlciBjb2RldmVjdG9ycyB5IG9mIE4gZGltZW5zaW9ucyB0
aGF0IHNhdGlzZnkgc3VtKGFicyh5KGopKSkgPSBLLgorPC90PgorCis8dD4KK0luIGJhbmRzIHdo
ZXJlIHRoZXJlIGFyZSBzdWZmaWNpZW50IGJpdHMgYWxsb2NhdGVkIFBWUSBpcyB1c2VkIHRvIGVu
Y29kZQordGhlIHVuaXQgdmVjdG9yIHRoYXQgcmVzdWx0cyBmcm9tIHRoZSBub3JtYWxpemF0aW9u
IGluCis8eHJlZiB0YXJnZXQ9Im5vcm1hbGl6YXRpb24iPjwveHJlZj4gZGlyZWN0bHkuIEdpdmVu
IGEgUFZRIGNvZGV2ZWN0b3IgeSwKK3RoZSB1bml0IHZlY3RvciBYIGlzIG9idGFpbmVkIGFzIFgg
PSB5L3x8eXx8LCB3aGVyZSB8fC58fCBkZW5vdGVzIHRoZQorTDIgbm9ybS4KKzwvdD4KKworCis8
c2VjdGlvbiBhbmNob3I9InB2cS1zZWFyY2giIHRpdGxlPSJQVlEgU2VhcmNoIj4KKworPHQ+CitU
aGUgc2VhcmNoIGZvciB0aGUgYmVzdCBjb2RldmVjdG9yIHkgaXMgcGVyZm9ybWVkIGJ5IGFsZ19x
dWFudCgpCisodnEuYykuIFRoZXJlIGFyZSBzZXZlcmFsIHBvc3NpYmxlIGFwcHJvYWNoZXMgdG8g
dGhlCitzZWFyY2gsIHdpdGggYSB0cmFkZS1vZmYgYmV0d2VlbiBxdWFsaXR5IGFuZCBjb21wbGV4
aXR5LiBUaGUgbWV0aG9kIHVzZWQgaW4gdGhlIHJlZmVyZW5jZQoraW1wbGVtZW50YXRpb24gY29t
cHV0ZXMgYW4gaW5pdGlhbCBjb2Rld29yZCB5MSBieSBwcm9qZWN0aW5nIHRoZSBub3JtYWxpemVk
IHNwZWN0cnVtCitYIG9udG8gdGhlIGNvZGVib29rIHB5cmFtaWQgb2YgSy0xIHB1bHNlczoKKzwv
dD4KKzx0PgoreTAgPSB0cnVuY2F0ZV90b3dhcmRzX3plcm8oIChLLTEpICogWCAvIHN1bShhYnMo
WCkpKQorPC90PgorCis8dD4KK0RlcGVuZGluZyBvbiBOLCBLIGFuZCB0aGUgaW5wdXQgZGF0YSwg
dGhlIGluaXRpYWwgY29kZXdvcmQgeTAgbWF5IGNvbnRhaW4gZnJvbQorMCB0byBLLTEgbm9uLXpl
cm8gdmFsdWVzLiBBbGwgdGhlIHJlbWFpbmluZyBwdWxzZXMsIHdpdGggdGhlIGV4Y2VwdGlvbiBv
ZiB0aGUgbGFzdCBvbmUsCithcmUgZm91bmQgaXRlcmF0aXZlbHkgd2l0aCBhIGdyZWVkeSBzZWFy
Y2ggdGhhdCBtaW5pbWl6ZXMgdGhlIG5vcm1hbGl6ZWQgY29ycmVsYXRpb24KK2JldHdlZW4geSBh
bmQgWDoKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48
IVtDREFUQVsKKyAgICAgIFQKK0ogPSAtWCAqIHkgLyB8fHl8fAorXV0+PC9hcnR3b3JrPgorPC9m
aWd1cmU+Cis8L3Q+CisKKzx0PgorVGhlIHNlYXJjaCBkZXNjcmliZWQgYWJvdmUgaXMgY29uc2lk
ZXJlZCB0byBiZSBhIGdvb2QgdHJhZGUtb2ZmIGJldHdlZW4gcXVhbGl0eQorYW5kIGNvbXB1dGF0
aW9uYWwgY29zdC4gSG93ZXZlciwgdGhlcmUgYXJlIG90aGVyIHBvc3NpYmxlIHdheXMgdG8gc2Vh
cmNoIHRoZSBQVlEKK2NvZGVib29rIGFuZCB0aGUgaW1wbGVtZW50ZXJzIE1BWSB1c2UgYW55IG90
aGVyIHNlYXJjaCBtZXRob2RzLiBTZWUgYWxnX3F1YW50KCkgaW4gY2VsdC92cS5jLgorPC90Pgor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImN3cnMtZW5jb2RlciIgdGl0bGU9IlBWUSBF
bmNvZGluZyI+CisKKzx0PgorVGhlIHZlY3RvciB0byBlbmNvZGUsIFgsIGlzIGNvbnZlcnRlZCBp
bnRvIGFuIGluZGV4IGkgc3VjaCB0aGF0CisgMCZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsm
bmJzcDtWKE4sSykgYXMgZm9sbG93cy4KK0xldCBpJm5ic3A7PSZuYnNwOzAgYW5kIGsmbmJzcDs9
Jm5ic3A7MC4KK1RoZW4gZm9yIGombmJzcDs9Jm5ic3A7KE4mbmJzcDstJm5ic3A7MSkgZG93biB0
byAwLCBpbmNsdXNpdmUsIGRvOgorPGxpc3Qgc3R5bGU9Im51bWJlcnMiPgorPHQ+CitJZiBrJm5i
c3A7PiZuYnNwOzAsIHNldAorIGkmbmJzcDs9Jm5ic3A7aSZuYnNwOysmbmJzcDsoVihOLWotMSxr
LTEpJm5ic3A7KyZuYnNwO1YoTi1qLGstMSkpLzIuCis8L3Q+Cis8dD5TZXQgayZuYnNwOz0mbmJz
cDtrJm5ic3A7KyZuYnNwO2FicyhYW2pdKS48L3Q+Cis8dD4KK0lmIFhbal0mbmJzcDsmbHQ7Jm5i
c3A7MCwgc2V0CisgaSZuYnNwOz0mbmJzcDtpJm5ic3A7KyZuYnNwOyhWKE4tai0xLGspJm5ic3A7
KyZuYnNwO1YoTi1qLGspKS8yLgorPC90PgorPC9saXN0PgorPC90PgorCis8dD4KK1RoZSBpbmRl
eCBpIGlzIHRoZW4gZW5jb2RlZCB1c2luZyB0aGUgcHJvY2VkdXJlIGluCisgPHhyZWYgdGFyZ2V0
PSJlbmNvZGluZy1pbnRzIi8+IHdpdGggZnQmbmJzcDs9Jm5ic3A7VihOLEspLgorPC90PgorCis8
L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworCisKKworCis8L3NlY3Rpb24+CisKKzwvc2VjdGlv
bj4KKworCis8c2VjdGlvbiBhbmNob3I9ImNvbmZvcm1hbmNlIiB0aXRsZT0iQ29uZm9ybWFuY2Ui
PgorCis8dD4KK0l0IGlzIG91ciBpbnRlbnRpb24gdG8gYWxsb3cgdGhlIGdyZWF0ZXN0IHBvc3Np
YmxlIGNob2ljZSBvZiBmcmVlZG9tIGluCitpbXBsZW1lbnRpbmcgdGhlIHNwZWNpZmljYXRpb24u
IEZvciB0aGlzIHJlYXNvbiwgb3V0c2lkZSBvZiB0aGUgZXhjZXB0aW9ucworbm90ZWQgaW4gdGhp
cyBzZWN0aW9uLCBjb25mb3JtYW5jZSBpcyBkZWZpbmVkIHRocm91Z2ggdGhlIHJlZmVyZW5jZQor
aW1wbGVtZW50YXRpb24gb2YgdGhlIGRlY29kZXIgcHJvdmlkZWQgaW4gPHhyZWYgdGFyZ2V0PSJy
ZWYtaW1wbGVtZW50YXRpb24iLz4uCitBbHRob3VnaCB0aGlzIGRvY3VtZW50IGluY2x1ZGVzIGFu
IEVuZ2xpc2ggZGVzY3JpcHRpb24gb2YgdGhlIGNvZGVjLCBzaG91bGQKK3RoZSBkZXNjcmlwdGlv
biBjb250cmFkaWN0IHRoZSBzb3VyY2UgY29kZSBvZiB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0
aW9uLAordGhlIGxhdHRlciBzaGFsbCB0YWtlIHByZWNlZGVuY2UuCis8L3Q+CisKKzx0PgorQ29t
cGxpYW5jZSB3aXRoIHRoaXMgc3BlY2lmaWNhdGlvbiBtZWFucyB0aGF0IGluIGFkZGl0aW9uIHRv
IGZvbGxvd2luZyB0aGUgbm9ybWF0aXZlIGtleXdvcmRzIGluIHRoaXMgZG9jdW1lbnQsCisgYSBk
ZWNvZGVyJ3Mgb3V0cHV0IE1VU1QgYWxzbyBiZQorIHdpdGhpbiB0aGUgdGhyZXNob2xkcyBzcGVj
aWZpZWQgYnkgdGhlIG9wdXNfY29tcGFyZS5jIHRvb2wgKGluY2x1ZGVkCisgd2l0aCB0aGUgY29k
ZSkgd2hlbiBjb21wYXJlZCB0byB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGZvciBlYWNo
IG9mIHRoZQorIHRlc3QgdmVjdG9ycyBwcm92aWRlZCAoc2VlIDx4cmVmIHRhcmdldD0idGVzdC12
ZWN0b3JzIj48L3hyZWY+KSBhbmQgZm9yIGVhY2ggb3V0cHV0Cisgc2FtcGxpbmcgcmF0ZSBhbmQg
Y2hhbm5lbCBjb3VudCBzdXBwb3J0ZWQuIEluIGFkZGl0aW9uLCBhIGNvbXBsaWFudAorIGRlY29k
ZXIgaW1wbGVtZW50YXRpb24gTVVTVCBoYXZlIHRoZSBzYW1lIGZpbmFsIHJhbmdlIGRlY29kZXIg
c3RhdGUgYXMgdGhhdCBvZiB0aGUKKyByZWZlcmVuY2UgZGVjb2Rlci4gSXQgaXMgdGhlcmVmb3Jl
IFJFQ09NTUVOREVEIHRoYXQgdGhlCisgZGVjb2RlciBpbXBsZW1lbnQgdGhlIHNhbWUgZnVuY3Rp
b25hbCBiZWhhdmlvciBhcyB0aGUgcmVmZXJlbmNlLgorCisgQSBkZWNvZGVyIGltcGxlbWVudGF0
aW9uIGlzIG5vdCByZXF1aXJlZCB0byBzdXBwb3J0IGFsbCBvdXRwdXQgc2FtcGxpbmcKKyByYXRl
cyBvciBhbGwgb3V0cHV0IGNoYW5uZWwgY291bnRzLgorPC90PgorCis8c2VjdGlvbiB0aXRsZT0i
VGVzdGluZyI+Cis8dD4KK1VzaW5nIHRoZSByZWZlcmVuY2UgY29kZSBwcm92aWRlZCBpbiA8eHJl
ZiB0YXJnZXQ9InJlZi1pbXBsZW1lbnRhdGlvbiI+PC94cmVmPiwKK2EgdGVzdCB2ZWN0b3IgY2Fu
IGJlIGRlY29kZWQgd2l0aAorPGxpc3Q+Cis8dD5vcHVzX2RlbW8gLWQgJmx0O3JhdGUmZ3Q7ICZs
dDtjaGFubmVscyZndDsgdGVzdHZlY3RvclguYml0IHRlc3RYLm91dDwvdD4KKzwvbGlzdD4KK3do
ZXJlICZsdDtyYXRlJmd0OyBpcyB0aGUgc2FtcGxpbmcgcmF0ZSBhbmQgY2FuIGJlIDgwMDAsIDEy
MDAwLCAxNjAwMCwgMjQwMDAsIG9yIDQ4MDAwLCBhbmQKKyZsdDtjaGFubmVscyZndDsgaXMgMSBm
b3IgbW9ubyBvciAyIGZvciBzdGVyZW8uCis8L3Q+CisKKzx0PgorSWYgdGhlIHJhbmdlIGRlY29k
ZXIgc3RhdGUgaXMgaW5jb3JyZWN0IGZvciBvbmUgb2YgdGhlIGZyYW1lcywgdGhlIGRlY29kZXIg
d2lsbCBleGl0IHdpdGgKKyJFcnJvcjogUmFuZ2UgY29kZXIgc3RhdGUgbWlzbWF0Y2ggYmV0d2Vl
biBlbmNvZGVyIGFuZCBkZWNvZGVyIi4gSWYgdGhlIGRlY29kZXIgc3VjY2VlZHMsIHRoZW4KK3Ro
ZSBvdXRwdXQgY2FuIGJlIGNvbXBhcmVkIHdpdGggdGhlICJyZWZlcmVuY2UiIG91dHB1dCB3aXRo
Cis8bGlzdD4KKzx0Pm9wdXNfY29tcGFyZSAtcyAtciAmbHQ7cmF0ZSZndDsgdGVzdHZlY3Rvclgu
ZGVjIHRlc3RYLm91dDwvdD4KKzwvbGlzdD4KK2ZvciBzdGVyZW8gb3IKKzxsaXN0PgorPHQ+b3B1
c19jb21wYXJlIC1yICZsdDtyYXRlJmd0OyB0ZXN0dmVjdG9yWC5kZWMgdGVzdFgub3V0PC90Pgor
PC9saXN0PgorZm9yIG1vbm8uCis8L3Q+CisKKzx0PkluIGFkZGl0aW9uIHRvIGluZGljYXRpbmcg
d2hldGhlciB0aGUgdGVzdCB2ZWN0b3IgY29tcGFyaXNvbiBwYXNzZXMsIHRoZSBvcHVzX2NvbXBh
cmUgdG9vbAorb3V0cHV0cyBhbiAiT3B1cyBxdWFsaXR5IG1ldHJpYyIgdGhhdCBpbmRpY2F0ZXMg
aG93IHdlbGwgdGhlIHRlc3RlZCBkZWNvZGVyIG1hdGNoZXMgdGhlCityZWZlcmVuY2UgaW1wbGVt
ZW50YXRpb24uIEEgcXVhbGl0eSBvZiAwIGNvcnJlc3BvbmRzIHRvIHRoZSBwYXNzaW5nIHRocmVz
aG9sZCwgd2hpbGUKK2EgcXVhbGl0eSBvZiAxMDAgaXMgdGhlIGhpZ2hlc3QgcG9zc2libGUgdmFs
dWUgYW5kIG1lYW5zIHRoYXQgdGhlIG91dHB1dCBvZiB0aGUgdGVzdGVkIGRlY29kZXIgaXMgaWRl
bnRpY2FsIHRvIHRoZSByZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uLiBUaGUgcGFzc2luZyB0aHJl
c2hvbGQgKHF1YWxpdHkgMCkgd2FzIGNhbGlicmF0ZWQgaW4gc3VjaCBhIHdheSB0aGF0IGl0IGNv
cnJlc3BvbmRzIHRvCithZGRpdGl2ZSB3aGl0ZSBub2lzZSB3aXRoIGEgNDggZEIgU05SIChzaW1p
bGFyIHRvIHdoYXQgY2FuIGJlIG9idGFpbmVkIG9uIGEgY2Fzc2V0dGUgZGVjaykuCitJdCBpcyBz
dGlsbCBwb3NzaWJsZSBmb3IgYW4gaW1wbGVtZW50YXRpb24gdG8gc291bmQgdmVyeSBnb29kIHdp
dGggc3VjaCBhIGxvdyBxdWFsaXR5IG1lYXN1cmUKKyhlLmcuIGlmIHRoZSBkZXZpYXRpb24gaXMg
ZHVlIHRvIGluYXVkaWJsZSBwaGFzZSBkaXN0b3J0aW9uKSwgYnV0IHVubGVzcyB0aGlzIGlzIHZl
cmlmaWVkIGJ5CitsaXN0ZW5pbmcgdGVzdHMsIGl0IGlzIFJFQ09NTUVOREVEIHRoYXQgaW1wbGVt
ZW50YXRpb25zIGFjaGlldmUgYSBxdWFsaXR5IGFib3ZlIDkwIGZvciA0OCZuYnNwO2tIegorZGVj
b2RpbmcuIEZvciBvdGhlciBzYW1wbGluZyByYXRlcywgaXQgaXMgbm9ybWFsIGZvciB0aGUgcXVh
bGl0eSBtZXRyaWMgdG8gYmUgbG93ZXIKKyh0eXBpY2FsbHkgYXMgbG93IGFzIDUwIGV2ZW4gZm9y
IGEgZ29vZCBpbXBsZW1lbnRhdGlvbikgYmVjYXVzZSBvZiBoYXJtbGVzcyBtaXNtYXRjaCB3aXRo
Cit0aGUgZGVsYXkgYW5kIHBoYXNlIG9mIHRoZSBpbnRlcm5hbCBzYW1wbGluZyByYXRlIGNvbnZl
cnNpb24uCis8L3Q+CisKKzx0PgorT24gUE9TSVggZW52aXJvbm1lbnRzLCB0aGUgcnVuX3ZlY3Rv
cnMuc2ggc2NyaXB0IGNhbiBiZSB1c2VkIHRvIHZlcmlmeSBhbGwgdGVzdAordmVjdG9ycy4gVGhp
cyBjYW4gYmUgZG9uZSB3aXRoCis8bGlzdD4KKzx0PnJ1bl92ZWN0b3JzLnNoICZsdDtleGVjIHBh
dGgmZ3Q7ICZsdDt2ZWN0b3IgcGF0aCZndDsgJmx0O3JhdGUmZ3Q7PC90PgorPC9saXN0Pgord2hl
cmUgJmx0O2V4ZWMgcGF0aCZndDsgaXMgdGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgb3B1c19kZW1v
IGFuZCBvcHVzX2NvbXBhcmUgZXhlY3V0YWJsZXMKK2FyZSBidWlsdCBhbmQgJmx0O3ZlY3RvciBw
YXRoJmd0OyBpcyB0aGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlIHRlc3QgdmVjdG9ycy4KKzwv
dD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJvcHVzLWN1c3RvbSIgdGl0bGU9Ik9w
dXMgQ3VzdG9tIj4KKzx0PgorT3B1cyBDdXN0b20gaXMgYW4gT1BUSU9OQUwgcGFydCBvZiB0aGUg
c3BlY2lmaWNhdGlvbiB0aGF0IGlzIGRlZmluZWQgdG8KK2hhbmRsZSBzcGVjaWFsIHNhbXBsZSBy
YXRlcyBhbmQgZnJhbWUgcmF0ZXMgdGhhdCBhcmUgbm90IHN1cHBvcnRlZCBieSB0aGUKK21haW4g
T3B1cyBzcGVjaWZpY2F0aW9uLiBVc2Ugb2YgT3B1cyBDdXN0b20gaXMgZGlzY291cmFnZWQgZm9y
IGFsbCBidXQgdmVyeQorc3BlY2lhbCBhcHBsaWNhdGlvbnMgZm9yIHdoaWNoIGEgZnJhbWUgc2l6
ZSBkaWZmZXJlbnQgZnJvbSAyLjUsIDUsIDEwLCBvciAyMCZuYnNwO21zIGlzCituZWVkZWQgKGZv
ciBlaXRoZXIgY29tcGxleGl0eSBvciBsYXRlbmN5IHJlYXNvbnMpLiBCZWNhdXNlIE9wdXMgQ3Vz
dG9tIGlzCitvcHRpb25hbCwgc3RyZWFtcyBlbmNvZGVkIHVzaW5nIE9wdXMgQ3VzdG9tIGNhbm5v
dCBiZSBleHBlY3RlZCB0byBiZSBkZWNvZGFibGUgYnkgYWxsIE9wdXMKK2ltcGxlbWVudGF0aW9u
cy4gQWxzbywgYmVjYXVzZSBubyBpbi1iYW5kIG1lY2hhbmlzbSBleGlzdHMgZm9yIHNwZWNpZnlp
bmcgdGhlIHNhbXBsaW5nCityYXRlIGFuZCBmcmFtZSBzaXplIG9mIE9wdXMgQ3VzdG9tIHN0cmVh
bXMsIG91dC1vZi1iYW5kIHNpZ25hbGluZyBpcyByZXF1aXJlZC4KK0luIE9wdXMgQ3VzdG9tIG9w
ZXJhdGlvbiwgb25seSB0aGUgQ0VMVCBsYXllciBpcyBhdmFpbGFibGUsIHVzaW5nIHRoZSBvcHVz
X2N1c3RvbV8qIGZ1bmN0aW9uCitjYWxscyBpbiBvcHVzX2N1c3RvbS5oLgorPC90PgorPC9zZWN0
aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2VjdXJpdHkiIHRpdGxlPSJT
ZWN1cml0eSBDb25zaWRlcmF0aW9ucyI+CisKKzx0PgorSW1wbGVtZW50YXRpb25zIG9mIHRoZSBP
cHVzIGNvZGVjIG5lZWQgdG8gdGFrZSBhcHByb3ByaWF0ZSBzZWN1cml0eSBjb25zaWRlcmF0aW9u
cworaW50byBhY2NvdW50LCBhcyBvdXRsaW5lZCBpbiA8eHJlZiB0YXJnZXQ9IkRPUyIvPi4KK0l0
IGlzIGV4dHJlbWVseSBpbXBvcnRhbnQgZm9yIHRoZSBkZWNvZGVyIHRvIGJlIHJvYnVzdCBhZ2Fp
bnN0IG1hbGljaW91cworcGF5bG9hZHMuCitNYWxpY2lvdXMgcGF5bG9hZHMgbXVzdCBub3QgY2F1
c2UgdGhlIGRlY29kZXIgdG8gb3ZlcnJ1biBpdHMgYWxsb2NhdGVkIG1lbW9yeQorIG9yIHRvIHRh
a2UgYW4gZXhjZXNzaXZlIGFtb3VudCBvZiByZXNvdXJjZXMgdG8gZGVjb2RlLgorQWx0aG91Z2gg
cHJvYmxlbXMKK2luIGVuY29kZXJzIGFyZSB0eXBpY2FsbHkgcmFyZXIsIHRoZSBzYW1lIGFwcGxp
ZXMgdG8gdGhlIGVuY29kZXIuIE1hbGljaW91cworYXVkaW8gc3RyZWFtcyBtdXN0IG5vdCBjYXVz
ZSB0aGUgZW5jb2RlciB0byBtaXNiZWhhdmUgYmVjYXVzZSB0aGlzIHdvdWxkCithbGxvdyBhbiBh
dHRhY2tlciB0byBhdHRhY2sgdHJhbnNjb2RpbmcgZ2F0ZXdheXMuCis8L3Q+Cis8dD4KK1RoZSBy
ZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gY29udGFpbnMgbm8ga25vd24gYnVmZmVyIG92ZXJmbG93
IG9yIGNhc2VzIHdoZXJlCisgYSBzcGVjaWFsbHkgY3JhZnRlZCBwYWNrZXQgb3IgYXVkaW8gc2Vn
bWVudCBjb3VsZCBjYXVzZSBhIHNpZ25pZmljYW50IGluY3JlYXNlCisgaW4gQ1BVIGxvYWQuCitI
b3dldmVyLCBvbiBjZXJ0YWluIENQVSBhcmNoaXRlY3R1cmVzIHdoZXJlIGRlbm9ybWFsaXplZCBm
bG9hdGluZy1wb2ludAorIG9wZXJhdGlvbnMgYXJlIG11Y2ggc2xvd2VyIHRoYW4gbm9ybWFsIGZs
b2F0aW5nLXBvaW50IG9wZXJhdGlvbnMsIGl0IGlzCisgcG9zc2libGUgZm9yIHNvbWUgYXVkaW8g
Y29udGVudCAoZS5nLiwgc2lsZW5jZSBvciBuZWFyLXNpbGVuY2UpIHRvIGNhdXNlIGFuCisgaW5j
cmVhc2UgaW4gQ1BVIGxvYWQuCitEZW5vcm1hbHMgY2FuIGJlIGludHJvZHVjZWQgYnkgcmVvcmRl
cmluZyBvcGVyYXRpb25zIGluIHRoZSBjb21waWxlciBhbmQgZGVwZW5kCisgb24gdGhlIHRhcmdl
dCBhcmNoaXRlY3R1cmUsIHNvIGl0IGlzIGRpZmZpY3VsdCB0byBndWFyYW50ZWUgdGhhdCBhbiBp
bXBsZW1lbnRhdGlvbgorIGF2b2lkcyB0aGVtLgorRm9yIGFyY2hpdGVjdHVyZXMgb24gd2hpY2gg
ZGVub3JtYWxzIGFyZSBwcm9ibGVtYXRpYywgYWRkaW5nIHZlcnkgc21hbGwKKyBmbG9hdGluZy1w
b2ludCBvZmZzZXRzIHRvIHRoZSBhZmZlY3RlZCBzaWduYWxzIHRvIHByZXZlbnQgc2lnbmlmaWNh
bnQgbnVtYmVycworIG9mIGRlbm9ybWFsaXplZCBvcGVyYXRpb25zIGlzIFJFQ09NTUVOREVELgor
QWx0ZXJuYXRpdmVseSwgaXQgaXMgb2Z0ZW4gcG9zc2libGUgdG8gY29uZmlndXJlIHRoZSBoYXJk
d2FyZSB0byB0cmVhdAorIGRlbm9ybWFscyBhcyB6ZXJvIChEQVopLgorTm8gc3VjaCBpc3N1ZSBl
eGlzdHMgZm9yIHRoZSBmaXhlZC1wb2ludCByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24uCis8L3Q+
Cis8dD5UaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIHdhcyB2YWxpZGF0ZWQgaW4gdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zOgorPGxpc3Qgc3R5bGU9Im51bWJlcnMiPgorPHQ+CitTZW5kaW5n
IHRoZSBkZWNvZGVyIHZhbGlkIHBhY2tldHMgZ2VuZXJhdGVkIGJ5IHRoZSByZWZlcmVuY2UgZW5j
b2RlciBhbmQKKyB2ZXJpZnlpbmcgdGhhdCB0aGUgZGVjb2RlcidzIGZpbmFsIHJhbmdlIGNvZGVy
IHN0YXRlIG1hdGNoZXMgdGhhdCBvZiB0aGUKKyBlbmNvZGVyLgorPC90PgorPHQ+CitTZW5kaW5n
IHRoZSBkZWNvZGVyIHBhY2tldHMgZ2VuZXJhdGVkIGJ5IHRoZSByZWZlcmVuY2UgZW5jb2RlciBh
bmQgdGhlbgorIHN1YmplY3RlZCB0byByYW5kb20gY29ycnVwdGlvbi4KKzwvdD4KKzx0PlNlbmRp
bmcgdGhlIGRlY29kZXIgcmFuZG9tIHBhY2tldHMuPC90PgorPHQ+CitTZW5kaW5nIHRoZSBkZWNv
ZGVyIHBhY2tldHMgZ2VuZXJhdGVkIGJ5IGEgdmVyc2lvbiBvZiB0aGUgcmVmZXJlbmNlIGVuY29k
ZXIKKyBtb2RpZmllZCB0byBtYWtlIHJhbmRvbSBjb2RpbmcgZGVjaXNpb25zIChpbnRlcm5hbCBm
dXp6aW5nKSwgaW5jbHVkaW5nIG1vZGUKKyBzd2l0Y2hpbmcsIGFuZCB2ZXJpZnlpbmcgdGhhdCB0
aGUgcmFuZ2UgY29kZXIgZmluYWwgc3RhdGVzIG1hdGNoLgorPC90PgorPC9saXN0PgorSW4gYWxs
IG9mIHRoZSBjb25kaXRpb25zIGFib3ZlLCBib3RoIHRoZSBlbmNvZGVyIGFuZCB0aGUgZGVjb2Rl
ciB3ZXJlIHJ1bgorIGluc2lkZSB0aGUgPHhyZWYgdGFyZ2V0PSJWYWxncmluZCI+VmFsZ3JpbmQ8
L3hyZWY+IG1lbW9yeQorIGRlYnVnZ2VyLCB3aGljaCB0cmFja3MgcmVhZHMgYW5kIHdyaXRlcyB0
byBpbnZhbGlkIG1lbW9yeSByZWdpb25zIGFzIHdlbGwgYXMKKyB0aGUgdXNlIG9mIHVuaW5pdGlh
bGl6ZWQgbWVtb3J5LgorVGhlcmUgd2VyZSBubyBlcnJvcnMgcmVwb3J0ZWQgb24gYW55IG9mIHRo
ZSB0ZXN0ZWQgY29uZGl0aW9ucy4KKzwvdD4KKzwvc2VjdGlvbj4KKworCis8c2VjdGlvbiB0aXRs
ZT0iSUFOQSBDb25zaWRlcmF0aW9ucyI+Cis8dD4KK1RoaXMgZG9jdW1lbnQgaGFzIG5vIGFjdGlv
bnMgZm9yIElBTkEuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iQWNrbm93
bGVkZ2VtZW50cyIgdGl0bGU9IkFja25vd2xlZGdlbWVudHMiPgorPHQ+CitUaGFua3MgdG8gYWxs
IG90aGVyIGRldmVsb3BlcnMsIGluY2x1ZGluZyBSYXltb25kIENoZW4sIFNvZXJlbiBTa2FrIEpl
bnNlbiwgR3JlZ29yeSBNYXh3ZWxsLAorQ2hyaXN0b3BoZXIgTW9udGdvbWVyeSwgYW5kIEthcnN0
ZW4gVmFuZGJvcmcgU29lcmVuc2VuLiBXZSB3b3VsZCBhbHNvCitsaWtlIHRvIHRoYW5rIElnb3Ig
RHlha29ub3YsIEphbiBTa29nbHVuZCwgYW5kIENocmlzdGlhbiBIb2VuZSBmb3IgdGhlaXIgaGVs
cCB3aXRoIHN1YmplY3RpdmUgdGVzdGluZyBvZiB0aGUKK09wdXMgY29kZWMuIFRoYW5rcyB0byBS
YWxwaCBHaWxlcywgSm9obiBSaWRnZXMsIEJlbiBTY2h3YXJ0eiwgS2VpdGggWWFuLCBDaHJpc3Rp
YW4gSG9lbmUsIEthdCBXYWxzaCwgYW5kIG1hbnkgb3RoZXJzIG9uIHRoZSBPcHVzIGFuZCBDRUxU
IG1haWxpbmcgbGlzdHMKK2ZvciB0aGVpciBidWcgcmVwb3J0cyBhbmQgZmVlZGJhY2suCis8L3Q+
Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJDb3B5aW5nIENvbmRpdGlvbnMiPgorPHQ+
VGhlIGF1dGhvcnMgYWdyZWUgdG8gZ3JhbnQgdGhpcmQgcGFydGllcyB0aGUgaXJyZXZvY2FibGUg
cmlnaHQgdG8gY29weSwgdXNlIGFuZCBkaXN0cmlidXRlCit0aGUgd29yayAoZXhjbHVkaW5nIENv
ZGUgQ29tcG9uZW50cyBhdmFpbGFibGUgdW5kZXIgdGhlIHNpbXBsaWZpZWQgQlNEIGxpY2Vuc2Up
LCB3aXRoIG9yCit3aXRob3V0IG1vZGlmaWNhdGlvbiwgaW4gYW55IG1lZGl1bSwgd2l0aG91dCBy
b3lhbHR5LCBwcm92aWRlZCB0aGF0LCB1bmxlc3Mgc2VwYXJhdGUKK3Blcm1pc3Npb24gaXMgZ3Jh
bnRlZCwgcmVkaXN0cmlidXRlZCBtb2RpZmllZCB3b3JrcyBkbyBub3QgY29udGFpbiBtaXNsZWFk
aW5nIGF1dGhvciwgdmVyc2lvbiwKK25hbWUgb2Ygd29yaywgb3IgZW5kb3JzZW1lbnQgaW5mb3Jt
YXRpb24uPC90PgorPC9zZWN0aW9uPgorCis8L21pZGRsZT4KKworPGJhY2s+CisKKzxyZWZlcmVu
Y2VzIHRpdGxlPSJOb3JtYXRpdmUgUmVmZXJlbmNlcyI+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJy
ZmMyMTE5Ij4KKzxmcm9udD4KKzx0aXRsZT5LZXkgd29yZHMgZm9yIHVzZSBpbiBSRkNzIHRvIElu
ZGljYXRlIFJlcXVpcmVtZW50IExldmVscyA8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0iUy4i
IHN1cm5hbWU9IkJyYWRuZXIiIGZ1bGxuYW1lPSJTY290dCBCcmFkbmVyIj48L2F1dGhvcj4KKzwv
ZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJSRkMiIHZhbHVlPSIyMTE5IiAvPgorPC9yZWZlcmVu
Y2U+CisKKzwvcmVmZXJlbmNlcz4KKworPHJlZmVyZW5jZXMgdGl0bGU9IkluZm9ybWF0aXZlIFJl
ZmVyZW5jZXMiPgorCis8cmVmZXJlbmNlIGFuY2hvcj0ncmVxdWlyZW1lbnRzJz4KKzxmcm9udD4K
Kzx0aXRsZT5SZXF1aXJlbWVudHMgZm9yIGFuIEludGVybmV0IEF1ZGlvIENvZGVjPC90aXRsZT4K
KzxhdXRob3IgaW5pdGlhbHM9J0ouLU0uJyBzdXJuYW1lPSdWYWxpbicgZnVsbG5hbWU9J0ouLU0u
IFZhbGluJz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9J0su
JyBzdXJuYW1lPSdWb3MnIGZ1bGxuYW1lPSdLLiBWb3MnPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0
aG9yPgorPGF1dGhvcj4KKzxvcmdhbml6YXRpb24+SUVURjwvb3JnYW5pemF0aW9uPjwvYXV0aG9y
PgorPGRhdGUgeWVhcj0nMjAxMScgbW9udGg9J0F1Z3VzdCcgLz4KKzxhYnN0cmFjdD4KKzx0PlRo
aXMgZG9jdW1lbnQgcHJvdmlkZXMgc3BlY2lmaWMgcmVxdWlyZW1lbnRzIGZvciBhbiBJbnRlcm5l
dCBhdWRpbworICAgY29kZWMuICBUaGVzZSByZXF1aXJlbWVudHMgYWRkcmVzcyBxdWFsaXR5LCBz
YW1wbGUgcmF0ZSwgYml0cmF0ZSwKKyAgIGFuZCBwYWNrZXQtbG9zcyByb2J1c3RuZXNzLCBhcyB3
ZWxsIGFzIG90aGVyIGRlc2lyYWJsZSBwcm9wZXJ0aWVzLgorPC90PjwvYWJzdHJhY3Q+PC9mcm9u
dD4KKzxzZXJpZXNJbmZvIG5hbWU9J1JGQycgdmFsdWU9JzYzNjYnIC8+Cis8Zm9ybWF0IHR5cGU9
J1RYVCcgdGFyZ2V0PSdodHRwOi8vdG9vbHMuaWV0Zi5vcmcvcmZjL3JmYzYzNjYudHh0JyAvPgor
PC9yZWZlcmVuY2U+CisKKzw/cmZjIGluY2x1ZGU9Imh0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1
YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzU1MC54bWwiPz4KKzw/cmZjIGluY2x1ZGU9
Imh0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMu
MzUzMy54bWwiPz4KKworPHJlZmVyZW5jZSBhbmNob3I9J1NJTEsnIHRhcmdldD0naHR0cDovL2Rl
dmVsb3Blci5za3lwZS5jb20vc2lsayc+Cis8ZnJvbnQ+Cis8dGl0bGU+U0lMSyBTcGVlY2ggQ29k
ZWM8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0nSy4nIHN1cm5hbWU9J1ZvcycgZnVsbG5hbWU9
J0suIFZvcyc+Cis8b3JnYW5pemF0aW9uIC8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSdT
Licgc3VybmFtZT0nSmVuc2VuJyBmdWxsbmFtZT0nUy4gSmVuc2VuJz4KKzxvcmdhbml6YXRpb24g
Lz48L2F1dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9J0suJyBzdXJuYW1lPSdTb2VyZW5zZW4nIGZ1
bGxuYW1lPSdLLiBTb2VyZW5zZW4nPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGRhdGUg
eWVhcj0nMjAxMCcgbW9udGg9J01hcmNoJyAvPgorPGFic3RyYWN0PgorPHQ+PC90PgorPC9hYnN0
cmFjdD48L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0nSW50ZXJuZXQtRHJhZnQnIHZhbHVlPSdk
cmFmdC12b3Mtc2lsay0wMScgLz4KKzxmb3JtYXQgdHlwZT0nVFhUJyB0YXJnZXQ9J2h0dHA6Ly90
b29scy5pZXRmLm9yZy9odG1sL2RyYWZ0LXZvcy1zaWxrLTAxJyAvPgorPC9yZWZlcmVuY2U+CisK
KzxyZWZlcmVuY2UgYW5jaG9yPSJsYXJvaWEtaWNhc3NwIj4KKzxmcm9udD4KKzx0aXRsZSBhYmJy
ZXY9IlJvYnVzdCBhbmQgRWZmaWNpZW50IFF1YW50aXphdGlvbiBvZiBTcGVlY2ggTFNQIj4KK1Jv
YnVzdCBhbmQgRWZmaWNpZW50IFF1YW50aXphdGlvbiBvZiBTcGVlY2ggTFNQIFBhcmFtZXRlcnMg
VXNpbmcgU3RydWN0dXJlZCBWZWN0b3IgUXVhbnRpemF0aW9uCis8L3RpdGxlPgorPGF1dGhvciBp
bml0aWFscz0iUi5MLiIgc3VybmFtZT0iTGFyb2lhIiBmdWxsbmFtZT0iUi4iPgorPG9yZ2FuaXph
dGlvbi8+Cis8L2F1dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9Ik4uUC4iIHN1cm5hbWU9IlBoYW1k
byIgZnVsbG5hbWU9Ik4uIj4KKzxvcmdhbml6YXRpb24vPgorPC9hdXRob3I+Cis8YXV0aG9yIGlu
aXRpYWxzPSJOLkYuIiBzdXJuYW1lPSJGYXJ2YXJkaW4iIGZ1bGxuYW1lPSJOLiI+Cis8b3JnYW5p
emF0aW9uLz4KKzwvYXV0aG9yPgorPC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9IklDQVNTUC0x
OTkxLCBQcm9jLiBJRUVFIEludC4gQ29uZi4gQWNvdXN0LiwgU3BlZWNoLCBTaWduYWwgUHJvY2Vz
c2luZywgcHAuIDY0MS02NDQsIE9jdG9iZXIiIHZhbHVlPSIxOTkxIi8+Cis8L3JlZmVyZW5jZT4K
KworPHJlZmVyZW5jZSBhbmNob3I9J0NFTFQnIHRhcmdldD0naHR0cDovL2NlbHQtY29kZWMub3Jn
Lyc+Cis8ZnJvbnQ+Cis8dGl0bGU+Q29uc3RyYWluZWQtRW5lcmd5IExhcHBlZCBUcmFuc2Zvcm0g
KENFTFQpIENvZGVjPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9J0otTS4nIHN1cm5hbWU9J1Zh
bGluJyBmdWxsbmFtZT0nSi1NLiBWYWxpbic+Cis8b3JnYW5pemF0aW9uIC8+PC9hdXRob3I+Cis8
YXV0aG9yIGluaXRpYWxzPSdUJiN4MkU7Qi4nIHN1cm5hbWU9J1RlcnJpYmVycnknIGZ1bGxuYW1l
PSdUaW1vdGh5IEIuIFRlcnJpYmVycnknPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGF1
dGhvciBpbml0aWFscz0nRy4nIHN1cm5hbWU9J01heHdlbGwnIGZ1bGxuYW1lPSdHLiBNYXh3ZWxs
Jz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9J0MuJyBzdXJu
YW1lPSdNb250Z29tZXJ5JyBmdWxsbmFtZT0nQy4gTW9udGdvbWVyeSc+Cis8b3JnYW5pemF0aW9u
IC8+PC9hdXRob3I+Cis8ZGF0ZSB5ZWFyPScyMDEwJyBtb250aD0nSnVseScgLz4KKzxhYnN0cmFj
dD4KKzx0PjwvdD4KKzwvYWJzdHJhY3Q+PC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9J0ludGVy
bmV0LURyYWZ0JyB2YWx1ZT0nZHJhZnQtdmFsaW4tY2VsdC1jb2RlYy0wMicgLz4KKzxmb3JtYXQg
dHlwZT0nVFhUJyB0YXJnZXQ9J2h0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL2RyYWZ0LXZhbGlu
LWNlbHQtY29kZWMtMDInIC8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9J1NS
VFAtVkJSJz4KKzxmcm9udD4KKzx0aXRsZT5HdWlkZWxpbmVzIGZvciB0aGUgdXNlIG9mIFZhcmlh
YmxlIEJpdCBSYXRlIEF1ZGlvIHdpdGggU2VjdXJlIFJUUDwvdGl0bGU+Cis8YXV0aG9yIGluaXRp
YWxzPSdDLicgc3VybmFtZT0nUGVya2lucycgZnVsbG5hbWU9J0suIFZvcyc+Cis8b3JnYW5pemF0
aW9uIC8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSdKLk0uJyBzdXJuYW1lPSdWYWxpbicg
ZnVsbG5hbWU9J0ouTS4gVmFsaW4nPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGRhdGUg
eWVhcj0nMjAxMScgbW9udGg9J0p1bHknIC8+Cis8YWJzdHJhY3Q+Cis8dD48L3Q+Cis8L2Fic3Ry
YWN0PjwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSdSRkMnIHZhbHVlPSc2NTYyJyAvPgorPGZv
cm1hdCB0eXBlPSdUWFQnIHRhcmdldD0naHR0cDovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNjU2
MicgLz4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0nRE9TJz4KKzxmcm9udD4K
Kzx0aXRsZT5JbnRlcm5ldCBEZW5pYWwtb2YtU2VydmljZSBDb25zaWRlcmF0aW9uczwvdGl0bGU+
Cis8YXV0aG9yIGluaXRpYWxzPSdNLicgc3VybmFtZT0nSGFuZGxleScgZnVsbG5hbWU9J00uIEhh
bmRsZXknPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0nRS4n
IHN1cm5hbWU9J1Jlc2NvcmxhJyBmdWxsbmFtZT0nRS4gUmVzY29ybGEnPgorPG9yZ2FuaXphdGlv
biAvPjwvYXV0aG9yPgorPGF1dGhvcj4KKzxvcmdhbml6YXRpb24+SUFCPC9vcmdhbml6YXRpb24+
PC9hdXRob3I+Cis8ZGF0ZSB5ZWFyPScyMDA2JyBtb250aD0nRGVjZW1iZXInIC8+Cis8YWJzdHJh
Y3Q+Cis8dD5UaGlzIGRvY3VtZW50IHByb3ZpZGVzIGFuIG92ZXJ2aWV3IG9mIHBvc3NpYmxlIGF2
ZW51ZXMgZm9yIGRlbmlhbC1vZi1zZXJ2aWNlIChEb1MpIGF0dGFjayBvbiBJbnRlcm5ldCBzeXN0
ZW1zLiAgVGhlIGFpbSBpcyB0byBlbmNvdXJhZ2UgcHJvdG9jb2wgZGVzaWduZXJzIGFuZCBuZXR3
b3JrIGVuZ2luZWVycyB0b3dhcmRzIGRlc2lnbnMgdGhhdCBhcmUgbW9yZSByb2J1c3QuICBXZSBk
aXNjdXNzIHBhcnRpYWwgc29sdXRpb25zIHRoYXQgcmVkdWNlIHRoZSBlZmZlY3RpdmVuZXNzIG9m
IGF0dGFja3MsIGFuZCBob3cgc29tZSBzb2x1dGlvbnMgbWlnaHQgaW5hZHZlcnRlbnRseSBvcGVu
IHVwIGFsdGVybmF0aXZlIHZ1bG5lcmFiaWxpdGllcy4gIFRoaXMgbWVtbyBwcm92aWRlcyBpbmZv
cm1hdGlvbiBmb3IgdGhlIEludGVybmV0IGNvbW11bml0eS48L3Q+PC9hYnN0cmFjdD48L2Zyb250
PgorPHNlcmllc0luZm8gbmFtZT0nUkZDJyB2YWx1ZT0nNDczMicgLz4KKzxmb3JtYXQgdHlwZT0n
VFhUJyBvY3RldHM9JzkxODQ0JyB0YXJnZXQ9J2Z0cDovL2Z0cC5pc2kuZWR1L2luLW5vdGVzL3Jm
YzQ3MzIudHh0JyAvPgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJNYXJ0aW43
OSI+Cis8ZnJvbnQ+Cis8dGl0bGU+UmFuZ2UgZW5jb2Rpbmc6IEFuIGFsZ29yaXRobSBmb3IgcmVt
b3ZpbmcgcmVkdW5kYW5jeSBmcm9tIGEgZGlnaXRpc2VkIG1lc3NhZ2U8L3RpdGxlPgorPGF1dGhv
ciBpbml0aWFscz0iRy5OLk4uIiBzdXJuYW1lPSJNYXJ0aW4iIGZ1bGxuYW1lPSJHLiBOaWdlbCBO
LiBNYXJ0aW4iPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPGRhdGUgeWVhcj0iMTk3OSIgLz4K
KzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJQcm9jLiBJbnN0aXR1dGlvbiBvZiBFbGVjdHJv
bmljIGFuZCBSYWRpbyBFbmdpbmVlcnMgSW50ZXJuYXRpb25hbCBDb25mZXJlbmNlIG9uIFZpZGVv
IGFuZCBEYXRhIFJlY29yZGluZyIgdmFsdWU9IiIgLz4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJl
bmNlIGFuY2hvcj0iY29kaW5nLXRoZXNpcyI+Cis8ZnJvbnQ+Cis8dGl0bGU+U291cmNlIGNvZGlu
ZyBhbGdvcml0aG1zIGZvciBmYXN0IGRhdGEgY29tcHJlc3Npb248L3RpdGxlPgorPGF1dGhvciBp
bml0aWFscz0iUi4iIHN1cm5hbWU9IlBhc2NvIiBmdWxsbmFtZT0iIj48b3JnYW5pemF0aW9uLz48
L2F1dGhvcj4KKzxkYXRlIG1vbnRoPSJNYXkiIHllYXI9IjE5NzYiIC8+Cis8L2Zyb250PgorPHNl
cmllc0luZm8gbmFtZT0iUGguRC4gdGhlc2lzIiB2YWx1ZT0iRGVwdC4gb2YgRWxlY3RyaWNhbCBF
bmdpbmVlcmluZywgU3RhbmZvcmQgVW5pdmVyc2l0eSIgLz4KKzwvcmVmZXJlbmNlPgorCis8cmVm
ZXJlbmNlIGFuY2hvcj0iUFZRIj4KKzxmcm9udD4KKzx0aXRsZT5BIFB5cmFtaWQgVmVjdG9yIFF1
YW50aXplcjwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSJULiIgc3VybmFtZT0iRmlzY2hlciIg
ZnVsbG5hbWU9IiI+PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8ZGF0ZSBtb250aD0iSnVseSIg
eWVhcj0iMTk4NiIgLz4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJJRUVFIFRyYW5zLiBv
biBJbmZvcm1hdGlvbiBUaGVvcnksIFZvbC4gMzIiIHZhbHVlPSJwcC4gNTY4LTU4MyIgLz4KKzwv
cmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iS2FiYWw4NiI+Cis8ZnJvbnQ+Cis8dGl0
bGU+VGhlIENvbXB1dGF0aW9uIG9mIExpbmUgU3BlY3RyYWwgRnJlcXVlbmNpZXMgVXNpbmcgQ2hl
YnlzaGV2IFBvbHlub21pYWxzPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IlAuIiBzdXJuYW1l
PSJLYWJhbCIgZnVsbG5hbWU9IlAuIEthYmFsIj48b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzxh
dXRob3IgaW5pdGlhbHM9IlIuIiBzdXJuYW1lPSJSYW1hY2hhbmRyYW4iIGZ1bGxuYW1lPSJSLiBQ
LiBSYW1hY2hhbmRyYW4iPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPGRhdGUgbW9udGg9IkRl
Y2VtYmVyIiB5ZWFyPSIxOTg2IiAvPgorPC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9IklFRUUg
VHJhbnMuIEFjb3VzdGljcywgU3BlZWNoLCBTaWduYWwgUHJvY2Vzc2luZywgdm9sLiAzNCwgbm8u
IDYiIHZhbHVlPSJwcC4gMTQxOS0xNDI2IiAvPgorPC9yZWZlcmVuY2U+CisKKworPHJlZmVyZW5j
ZSBhbmNob3I9IlZhbGdyaW5kIiB0YXJnZXQ9Imh0dHA6Ly92YWxncmluZC5vcmcvIj4KKzxmcm9u
dD4KKzx0aXRsZT5WYWxncmluZCB3ZWJzaXRlPC90aXRsZT4KKzxhdXRob3I+PC9hdXRob3I+Cis8
L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJHb29nbGUtTmV0RVEi
IHRhcmdldD0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL3dlYnJ0Yy9zb3VyY2UvYnJvd3NlL3Ry
dW5rL3NyYy9tb2R1bGVzL2F1ZGlvX2NvZGluZy9OZXRFUS9tYWluL3NvdXJjZS8/cj01ODMiPgor
PGZyb250PgorPHRpdGxlPkdvb2dsZSBOZXRFUSBjb2RlPC90aXRsZT4KKzxhdXRob3I+PC9hdXRo
b3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJHb29nbGUt
V2ViUlRDIiB0YXJnZXQ9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC93ZWJydGMvIj4KKzxmcm9u
dD4KKzx0aXRsZT5Hb29nbGUgV2ViUlRDIGNvZGU8L3RpdGxlPgorPGF1dGhvcj48L2F1dGhvcj4K
KzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworCis8cmVmZXJlbmNlIGFuY2hvcj0iT3B1cy1naXQi
IHRhcmdldD0iZ2l0Oi8vZ2l0LnhpcGgub3JnL29wdXMuZ2l0Ij4KKzxmcm9udD4KKzx0aXRsZT5P
cHVzIEdpdCBSZXBvc2l0b3J5PC90aXRsZT4KKzxhdXRob3I+PC9hdXRob3I+Cis8L2Zyb250Pgor
PC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJPcHVzLXdlYnNpdGUiIHRhcmdldD0i
aHR0cDovL29wdXMtY29kZWMub3JnLyI+Cis8ZnJvbnQ+Cis8dGl0bGU+T3B1cyB3ZWJzaXRlPC90
aXRsZT4KKzxhdXRob3I+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZl
cmVuY2UgYW5jaG9yPSJWb3JiaXMtd2Vic2l0ZSIgdGFyZ2V0PSJodHRwOi8veGlwaC5vcmcvdm9y
YmlzLyI+Cis8ZnJvbnQ+Cis8dGl0bGU+Vm9yYmlzIHdlYnNpdGU8L3RpdGxlPgorPGF1dGhvcj48
L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9Ik1h
dHJvc2thLXdlYnNpdGUiIHRhcmdldD0iaHR0cDovL21hdHJvc2thLm9yZy8iPgorPGZyb250Pgor
PHRpdGxlPk1hdHJvc2thIHdlYnNpdGU8L3RpdGxlPgorPGF1dGhvcj48L2F1dGhvcj4KKzwvZnJv
bnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IlZlY3RvcnMtd2Vic2l0ZSIg
dGFyZ2V0PSJodHRwOi8vb3B1cy1jb2RlYy5vcmcvdGVzdHZlY3RvcnMvIj4KKzxmcm9udD4KKzx0
aXRsZT5PcHVzIFRlc3R2ZWN0b3JzICh3ZWJzaWRlKTwvdGl0bGU+Cis8YXV0aG9yPjwvYXV0aG9y
PgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iVmVjdG9ycy1w
cm9jIiB0YXJnZXQ9Imh0dHA6Ly93d3cuaWV0Zi5vcmcvcHJvY2VlZGluZ3MvODMvc2xpZGVzL3Ns
aWRlcy04My1jb2RlYy0wLmd6Ij4KKzxmcm9udD4KKzx0aXRsZT5PcHVzIFRlc3R2ZWN0b3JzIChw
cm9jZWVkaW5ncyk8L3RpdGxlPgorPGF1dGhvcj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVy
ZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9ImxpbmUtc3BlY3RyYWwtcGFpcnMiIHRhcmdldD0i
aHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9MaW5lX3NwZWN0cmFsX3BhaXJzIj4KKzxmcm9u
dD4KKzx0aXRsZT5MaW5lIFNwZWN0cmFsIFBhaXJzPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXph
dGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVy
ZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9InJhbmdlLWNvZGluZyIgdGFyZ2V0PSJodHRwOi8v
ZW4ud2lraXBlZGlhLm9yZy93aWtpL1JhbmdlX2NvZGluZyI+Cis8ZnJvbnQ+Cis8dGl0bGU+UmFu
Z2UgQ29kaW5nPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2Fu
aXphdGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBh
bmNob3I9IkhhZGFtYXJkIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvSGFk
YW1hcmRfdHJhbnNmb3JtIj4KKzxmcm9udD4KKzx0aXRsZT5IYWRhbWFyZCBUcmFuc2Zvcm08L3Rp
dGxlPgorPGF1dGhvcj48b3JnYW5pemF0aW9uPldpa2lwZWRpYTwvb3JnYW5pemF0aW9uPjwvYXV0
aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iVml0ZXJi
aSIgdGFyZ2V0PSJodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1ZpdGVyYmlfYWxnb3JpdGht
Ij4KKzxmcm9udD4KKzx0aXRsZT5WaXRlcmJpIEFsZ29yaXRobTwvdGl0bGU+Cis8YXV0aG9yPjxv
cmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+PC9hdXRob3I+Cis8L2Zyb250Pgor
PC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJXaGl0ZW5pbmciIHRhcmdldD0iaHR0
cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9XaGl0ZV9ub2lzZSI+Cis8ZnJvbnQ+Cis8dGl0bGU+
V2hpdGUgTm9pc2U8L3RpdGxlPgorPGF1dGhvcj48b3JnYW5pemF0aW9uPldpa2lwZWRpYTwvb3Jn
YW5pemF0aW9uPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNl
IGFuY2hvcj0iTFBDIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvTGluZWFy
X3ByZWRpY3Rpb24iPgorPGZyb250PgorPHRpdGxlPkxpbmVhciBQcmVkaWN0aW9uPC90aXRsZT4K
KzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4K
KzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9Ik1EQ1QiIHRhcmdl
dD0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Nb2RpZmllZF9kaXNjcmV0ZV9jb3NpbmVf
dHJhbnNmb3JtIj4KKzxmcm9udD4KKzx0aXRsZT5Nb2RpZmllZCBEaXNjcmV0ZSBDb3NpbmUgVHJh
bnNmb3JtPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXph
dGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNo
b3I9IkZGVCIgdGFyZ2V0PSJodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0Zhc3RfRm91cmll
cl90cmFuc2Zvcm0iPgorPGZyb250PgorPHRpdGxlPkZhc3QgRm91cmllciBUcmFuc2Zvcm08L3Rp
dGxlPgorPGF1dGhvcj48b3JnYW5pemF0aW9uPldpa2lwZWRpYTwvb3JnYW5pemF0aW9uPjwvYXV0
aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iei10cmFu
c2Zvcm0iIHRhcmdldD0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9aLXRyYW5zZm9ybSI+
Cis8ZnJvbnQ+Cis8dGl0bGU+Wi10cmFuc2Zvcm08L3RpdGxlPgorPGF1dGhvcj48b3JnYW5pemF0
aW9uPldpa2lwZWRpYTwvb3JnYW5pemF0aW9uPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJl
bmNlPgorCisKKzxyZWZlcmVuY2UgYW5jaG9yPSJCdXJnIj4KKzxmcm9udD4KKzx0aXRsZT5NYXhp
bXVtIEVudHJvcHkgU3BlY3RyYWwgQW5hbHlzaXM8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0i
SlAuIiBzdXJuYW1lPSJCdXJnIiBmdWxsbmFtZT0iSi5QLiBCdXJnIj48b3JnYW5pemF0aW9uLz48
L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IlNj
aHVyIj4KKzxmcm9udD4KKzx0aXRsZT5BIGZpeGVkIHBvaW50IGNvbXB1dGF0aW9uIG9mIHBhcnRp
YWwgY29ycmVsYXRpb24gY29lZmZpY2llbnRzPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9Ikou
IiBzdXJuYW1lPSJMZSBSb3V4IiBmdWxsbmFtZT0iSi4gTGUgUm91eCI+PG9yZ2FuaXphdGlvbi8+
PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJDLiIgc3VybmFtZT0iR3VlZ3VlbiIgZnVsbG5h
bWU9IkMuIEd1ZWd1ZW4iPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPC9mcm9udD4KKzxzZXJp
ZXNJbmZvIG5hbWU9IklDQVNTUC0xOTc3LCBQcm9jLiBJRUVFIEludC4gQ29uZi4gQWNvdXN0Liwg
U3BlZWNoLCBTaWduYWwgUHJvY2Vzc2luZywgcHAuIDI1Ny0yNTksIE9jdG9iZXIiIHZhbHVlPSIx
OTc3Ii8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IlByaW5jZW44NiI+Cis8
ZnJvbnQ+Cis8dGl0bGU+QW5hbHlzaXMvc3ludGhlc2lzIGZpbHRlciBiYW5rIGRlc2lnbiBiYXNl
ZCBvbiB0aW1lIGRvbWFpbiBhbGlhc2luZyBjYW5jZWxsYXRpb248L3RpdGxlPgorPGF1dGhvciBp
bml0aWFscz0iSi4iIHN1cm5hbWU9IlByaW5jZW4iIGZ1bGxuYW1lPSJKb2huIFAuIFByaW5jZW4i
Pjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0iQS4iIHN1cm5hbWU9
IkJyYWRsZXkiIGZ1bGxuYW1lPSJBbGFuIEIuIEJyYWRsZXkiPjxvcmdhbml6YXRpb24vPjwvYXV0
aG9yPgorPC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9IklFRUUgVHJhbnMuIEFjb3VzdC4gU3Bl
ZWNoIFNpZy4gUHJvYy4gQVNTUC0zNCAoNSksIDExNTMtMTE2MSIgdmFsdWU9IjE5ODYiLz4KKzwv
cmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iVmFsaW4yMDEwIj4KKzxmcm9udD4KKzx0
aXRsZT5BIEhpZ2gtUXVhbGl0eSBTcGVlY2ggYW5kIEF1ZGlvIENvZGVjIFdpdGggTGVzcyBUaGFu
IDEwIG1zIGRlbGF5PC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IkpNIiBzdXJuYW1lPSJWYWxp
biIgZnVsbG5hbWU9IkplYW4tTWFyYyBWYWxpbiI+PG9yZ2FuaXphdGlvbi8+Cis8L2F1dGhvcj4K
KzxhdXRob3IgaW5pdGlhbHM9IlQuIEIuIiBzdXJuYW1lPSJUZXJyaWJlcnJ5IiBmdWxsbmFtZT0i
VGltb3RoeSBUZXJyaWJlcnJ5Ij48b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzxhdXRob3IgaW5p
dGlhbHM9IkMuIiBzdXJuYW1lPSJNb250Z29tZXJ5IiBmdWxsbmFtZT0iQ2hyaXN0b3BoZXIgTW9u
dGdvbWVyeSI+PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJHLiIg
c3VybmFtZT0iTWF4d2VsbCIgZnVsbG5hbWU9IkdyZWdvcnkgTWF4d2VsbCI+PG9yZ2FuaXphdGlv
bi8+PC9hdXRob3I+Cis8L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0iSUVFRSBUcmFucy4gb24g
QXVkaW8sIFNwZWVjaCBhbmQgTGFuZ3VhZ2UgUHJvY2Vzc2luZywgVm9sLiAxOCwgTm8uIDEsIHBw
LiA1OC02NyIgdmFsdWU9IjIwMTAiIC8+Cis8L3JlZmVyZW5jZT4KKworCis8cmVmZXJlbmNlIGFu
Y2hvcj0iWndpY2tlcjYxIj4KKzxmcm9udD4KKzx0aXRsZT5TdWJkaXZpc2lvbiBvZiB0aGUgYXVk
aWJsZSBmcmVxdWVuY3kgcmFuZ2UgaW50byBjcml0aWNhbCBiYW5kczwvdGl0bGU+Cis8YXV0aG9y
IGluaXRpYWxzPSJFLiIgc3VybmFtZT0iWndpY2tlciIgZnVsbG5hbWU9IkUuIFp3aWNrZXIiPjxv
cmdhbml6YXRpb24vPjwvYXV0aG9yPgorPGRhdGUgbW9udGg9IkZlYnJ1YXJ5IiB5ZWFyPSIxOTYx
IiAvPgorPC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9IlRoZSBKb3VybmFsIG9mIHRoZSBBY291
c3RpY2FsIFNvY2lldHkgb2YgQW1lcmljYSwgVm9sLiAzMywgTm8gMiIgdmFsdWU9InAuIDI0OCIg
Lz4KKzwvcmVmZXJlbmNlPgorCisKKzwvcmVmZXJlbmNlcz4KKworPHNlY3Rpb24gYW5jaG9yPSJy
ZWYtaW1wbGVtZW50YXRpb24iIHRpdGxlPSJSZWZlcmVuY2UgSW1wbGVtZW50YXRpb24iPgorCis8
dD5UaGlzIGFwcGVuZGl4IGNvbnRhaW5zIHRoZSBjb21wbGV0ZSBzb3VyY2UgY29kZSBmb3IgdGhl
CityZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gb2YgdGhlIE9wdXMgY29kZWMgd3JpdHRlbiBpbiBD
LiBCeSBkZWZhdWx0LAordGhpcyBpbXBsZW1lbnRhdGlvbiByZWxpZXMgb24gZmxvYXRpbmctcG9p
bnQgYXJpdGhtZXRpYywgYnV0IGl0IGNhbiBiZQorY29tcGlsZWQgdG8gdXNlIG9ubHkgZml4ZWQt
cG9pbnQgYXJpdGhtZXRpYyBieSBkZWZpbmluZyB0aGUgRklYRURfUE9JTlQKK21hY3JvLiBJbmZv
cm1hdGlvbiBvbiBidWlsZGluZyBhbmQgdXNpbmcgdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlv
biBpcworYXZhaWxhYmxlIGluIHRoZSBSRUFETUUgZmlsZS4KKzwvdD4KKworPHQ+VGhlIGltcGxl
bWVudGF0aW9uIGNhbiBiZSBjb21waWxlZCB3aXRoIGVpdGhlciBhIEM4OSBvciBhIEM5OQorY29t
cGlsZXIuIEl0IGlzIHJlYXNvbmFibHkgb3B0aW1pemVkIGZvciBtb3N0IHBsYXRmb3JtcyBzdWNo
IHRoYXQKK29ubHkgYXJjaGl0ZWN0dXJlLXNwZWNpZmljIG9wdGltaXphdGlvbnMgYXJlIGxpa2Vs
eSB0byBiZSB1c2VmdWwuCitUaGUgRkZUIDx4cmVmIHRhcmdldD0iRkZUIi8+IHVzZWQgaXMgYSBz
bGlnaHRseSBtb2RpZmllZCB2ZXJzaW9uIG9mIHRoZSBLSVNTLUZGVCBsaWJyYXJ5LAorYnV0IGl0
IGlzIGVhc3kgdG8gc3Vic3RpdHV0ZSBhbnkgb3RoZXIgRkZUIGxpYnJhcnkuCis8L3Q+CisKKzx0
PgorV2hpbGUgdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCByZWx5IG9uIGFu
eQorPHNwYW54IHN0eWxlPSJlbXBoIj51bmRlZmluZWQgYmVoYXZpb3I8L3NwYW54PiBhcyBkZWZp
bmVkIGJ5IEM4OSBvciBDOTksCitpdCByZWxpZXMgb24gY29tbW9uIDxzcGFueCBzdHlsZT0iZW1w
aCI+aW1wbGVtZW50YXRpb24tZGVmaW5lZCBiZWhhdmlvcjwvc3Bhbng+Citmb3IgdHdvJ3MgY29t
cGxlbWVudCBhcmNoaXRlY3R1cmVzOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+UmlnaHQg
c2hpZnRzIG9mIG5lZ2F0aXZlIHZhbHVlcyBhcmUgY29uc2lzdGVudCB3aXRoIHR3bydzIGNvbXBs
ZW1lbnQgYXJpdGhtZXRpYywgc28gdGhhdCBhPj5iIGlzIGVxdWl2YWxlbnQgdG8gZmxvb3IoYS8o
MioqYikpLDwvdD4KKzx0PkZvciBjb252ZXJzaW9uIHRvIGEgc2lnbmVkIGludGVnZXIgb2YgTiBi
aXRzLCB0aGUgdmFsdWUgaXMgcmVkdWNlZCBtb2R1bG8gMioqTiB0byBiZSB3aXRoaW4gcmFuZ2Ug
b2YgdGhlIHR5cGUsPC90PgorPHQ+VGhlIHJlc3VsdCBvZiBpbnRlZ2VyIGRpdmlzaW9uIG9mIGEg
bmVnYXRpdmUgdmFsdWUgaXMgdHJ1bmNhdGVkIHRvd2FyZHMgemVybywgYW5kPC90PgorPHQ+VGhl
IGNvbXBpbGVyIHByb3ZpZGVzIGEgNjQtYml0IGludGVnZXIgdHlwZSAoYSBDOTkgcmVxdWlyZW1l
bnQgd2hpY2ggaXMgc3VwcG9ydGVkIGJ5IG1vc3QgQzg5IGNvbXBpbGVycykuPC90PgorPC9saXN0
PgorPC90PgorCis8dD4KK0luIGl0cyBjdXJyZW50IGZvcm0sIHRoZSByZWZlcmVuY2UgaW1wbGVt
ZW50YXRpb24gYWxzbyByZXF1aXJlcyB0aGUgZm9sbG93aW5nCithcmNoaXRlY3R1cmFsIGNoYXJh
Y3RlcmlzdGljcyB0byBvYnRhaW4gYWNjZXB0YWJsZSBwZXJmb3JtYW5jZToKKzxsaXN0IHN0eWxl
PSJzeW1ib2xzIj4KKzx0PlR3bydzIGNvbXBsZW1lbnQgYXJpdGhtZXRpYyw8L3Q+Cis8dD5BdCBs
ZWFzdCBhIDE2IGJpdCBieSAxNiBiaXQgaW50ZWdlciBtdWx0aXBsaWVyICgzMi1iaXQgcmVzdWx0
KSwgYW5kPC90PgorPHQ+QXQgbGVhc3QgYSAzMi1iaXQgYWRkZXIvYWNjdW11bGF0b3IuPC90Pgor
PC9saXN0PgorPC90PgorCisKKzxzZWN0aW9uIHRpdGxlPSJFeHRyYWN0aW5nIHRoZSBzb3VyY2Ui
PgorPHQ+CitUaGUgY29tcGxldGUgc291cmNlIGNvZGUgY2FuIGJlIGV4dHJhY3RlZCBmcm9tIHRo
aXMgZHJhZnQsIGJ5IHJ1bm5pbmcgdGhlCitmb2xsb3dpbmcgY29tbWFuZCBsaW5lOgorCis8bGlz
dCBzdHlsZT0ic3ltYm9scyI+Cis8dD48IVtDREFUQVsKK2NhdCBkcmFmdC1pZXRmLWNvZGVjLW9w
dXMudHh0IHwgZ3JlcCAnXlwgXCBcICMjIycgfCBzZWQgLWUgJ3MvLi4uIyMjLy8nIHwgYmFzZTY0
IC1kID4gb3B1c19zb3VyY2UudGFyLmd6CitdXT48L3Q+Cis8dD4KK3RhciB4enZmIG9wdXNfc291
cmNlLnRhci5negorPC90PgorPHQ+Y2Qgb3B1c19zb3VyY2U8L3Q+Cis8dD5tYWtlPC90PgorPC9s
aXN0PgorT24gc3lzdGVtcyB3aGVyZSB0aGUgcHJvdmlkZWQgTWFrZWZpbGUgZG9lcyBub3Qgd29y
aywgdGhlIGZvbGxvd2luZyBjb21tYW5kIGxpbmUgbWF5IGJlIHVzZWQgdG8gY29tcGlsZQordGhl
IHNvdXJjZSBjb2RlOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+PCFbQ0RBVEFbCitjYyAt
TzIgLWcgLW8gb3B1c19kZW1vIHNyYy9vcHVzX2RlbW8uYyBgY2F0ICoubWsgfCBncmVwIC12IGZp
eGVkIHwgc2VkIC1lICdzLy4qPS8vJyAtZSAncy9cXFxcLy8nYCAtRE9QVVNfQlVJTEQgLUlpbmNs
dWRlIC1JY2VsdCAtSXNpbGsgLUlzaWxrL2Zsb2F0IC1EVVNFX0FMTE9DQSAtRHJlc3RyaWN0PSAt
bG0KK11dPjwvdD48L2xpc3Q+Cis8L3Q+CisKKzx0PgorT24gc3lzdGVtcyB3aGVyZSB0aGUgYmFz
ZTY0IHV0aWxpdHkgaXMgbm90IHByZXNlbnQsIHRoZSBmb2xsb3dpbmcgY29tbWFuZHMgY2FuIGJl
IHVzZWQgaW5zdGVhZDoKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PjwhW0NEQVRBWworY2F0
IGRyYWZ0LWlldGYtY29kZWMtb3B1cy50eHQgfCBncmVwICdeXCBcIFwgIyMjJyB8IHNlZCAtZSAn
cy8uLi4jIyMvLycgPiBvcHVzLmI2NAorXV0+PC90PgorPHQ+b3BlbnNzbCBiYXNlNjQgLWQgLWlu
IG9wdXMuYjY0ID4gb3B1c19zb3VyY2UudGFyLmd6PC90PgorPC9saXN0PgorCis8L3Q+Cis8L3Nl
Y3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJVcC10by1kYXRlIEltcGxlbWVudGF0aW9uIj4KKzx0
PgorQXMgb2YgdGhlIHRpbWUgb2YgcHVibGljYXRpb24gb2YgdGhpcyBtZW1vLCBhbiB1cC10by1k
YXRlIGltcGxlbWVudGF0aW9uIGNvbmZvcm1pbmcgdG8KK3RoaXMgc3RhbmRhcmQgaXMgYXZhaWxh
YmxlIGluIGEKKyA8eHJlZiB0YXJnZXQ9J09wdXMtZ2l0Jz5HaXQgcmVwb3NpdG9yeTwveHJlZj4u
CitSZWxlYXNlcyBhbmQgb3RoZXIgcmVzb3VyY2VzIGFyZSBhdmFpbGFibGUgYXQKKyA8eHJlZiB0
YXJnZXQ9J09wdXMtd2Vic2l0ZScvPi4gSG93ZXZlciwgYWx0aG91Z2ggdGhhdCBpbXBsZW1lbnRh
dGlvbiBpcyBleHBlY3RlZCB0bworIHJlbWFpbiBjb25mb3JtYW50IHdpdGggdGhlIHN0YW5kYXJk
LCBpdCBpcyB0aGUgY29kZSBpbiB0aGlzIGRvY3VtZW50IHRoYXQgc2hhbGwKKyByZW1haW4gbm9y
bWF0aXZlLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQmFzZTY0LWVuY29k
ZWQgU291cmNlIENvZGUiPgorPHQ+Cis8P3JmYyBpbmNsdWRlPSJvcHVzX3NvdXJjZS5iYXNlNjQi
Pz4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJ0ZXN0LXZlY3RvcnMiIHRp
dGxlPSJUZXN0IFZlY3RvcnMiPgorPHQ+CitCZWNhdXNlIG9mIHNpemUgY29uc3RyYWludHMsIHRo
ZSBPcHVzIHRlc3QgdmVjdG9ycyBhcmUgbm90IGRpc3RyaWJ1dGVkIGluIHRoaXMKK2RyYWZ0LiBU
aGV5IGFyZSBhdmFpbGFibGUgaW4gdGhlIHByb2NlZWRpbmdzIG9mIHRoZSA4M3RoIElFVEYgbWVl
dGluZyAoUGFyaXMpIDx4cmVmIHRhcmdldD0iVmVjdG9ycy1wcm9jIi8+IGFuZCBmcm9tIHRoZSBP
cHVzIGNvZGVjIHdlYnNpdGUgYXQKKzx4cmVmIHRhcmdldD0iVmVjdG9ycy13ZWJzaXRlIi8+LiBU
aGVzZSB0ZXN0IHZlY3RvcnMgd2VyZSBjcmVhdGVkIHNwZWNpZmljYWxseSB0byBleGVyY2lzZQor
YWxsIGFzcGVjdHMgb2YgdGhlIGRlY29kZXIgYW5kIHRoZXJlZm9yZSB0aGUgYXVkaW8gcXVhbGl0
eSBvZiB0aGUgZGVjb2RlZCBvdXRwdXQgaXMKK3NpZ25pZmljYW50bHkgbG93ZXIgdGhhbiB3aGF0
IE9wdXMgY2FuIGFjaGlldmUgaW4gbm9ybWFsIG9wZXJhdGlvbi4KKzwvdD4KKworPHQ+CitUaGUg
U0hBMSBoYXNoIG9mIHRoZSBmaWxlcyBpbiB0aGUgdGVzdCB2ZWN0b3IgcGFja2FnZSBhcmUKKzw/
cmZjIGluY2x1ZGU9InRlc3R2ZWN0b3JzX3NoYTEiPz4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8
L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2VsZi1kZWxpbWl0aW5nLWZyYW1pbmciIHRp
dGxlPSJTZWxmLURlbGltaXRpbmcgRnJhbWluZyI+Cis8dD4KK1RvIHVzZSB0aGUgaW50ZXJuYWwg
ZnJhbWluZyBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJtb2RlcyIvPiwgdGhlIGRlY29kZXIK
KyBtdXN0IGtub3cgdGhlIHRvdGFsIGxlbmd0aCBvZiB0aGUgT3B1cyBwYWNrZXQsIGluIGJ5dGVz
LgorVGhpcyBzZWN0aW9uIGRlc2NyaWJlcyBhIHNpbXBsZSB2YXJpYXRpb24gb2YgdGhhdCBmcmFt
aW5nIHdoaWNoIGNhbiBiZSB1c2VkCisgd2hlbiB0aGUgdG90YWwgbGVuZ3RoIG9mIHRoZSBwYWNr
ZXQgaXMgbm90IGtub3duLgorTm90aGluZyBpbiB0aGUgZW5jb2Rpbmcgb2YgdGhlIHBhY2tldCBp
dHNlbGYgYWxsb3dzIGEgZGVjb2RlciB0byBkaXN0aW5ndWlzaAorIGJldHdlZW4gdGhlIHJlZ3Vs
YXIsIHVuZGVsaW1pdGVkIGZyYW1pbmcgYW5kIHRoZSBzZWxmLWRlbGltaXRpbmcgZnJhbWluZwor
IGRlc2NyaWJlZCBpbiB0aGlzIGFwcGVuZGl4LgorV2hpY2ggb25lIGlzIHVzZWQgYW5kIHdoZXJl
IG11c3QgYmUgZXN0YWJsaXNoZWQgYnkgY29udGV4dCBhdCB0aGUgdHJhbnNwb3J0CisgbGF5ZXIu
CitJdCBpcyBSRUNPTU1FTkRFRCB0aGF0IGEgdHJhbnNwb3J0IGxheWVyIGNob29zZSBleGFjdGx5
IG9uZSBmcmFtaW5nIHNjaGVtZSwKKyByYXRoZXIgdGhhbiBhbGxvd2luZyBhbiBlbmNvZGVyIHRv
IHNpZ25hbCB3aGljaCBvbmUgaXQgd2FudHMgdG8gdXNlLgorPC90PgorCis8dD4KK0ZvciBleGFt
cGxlLCBhbHRob3VnaCBhIHJlZ3VsYXIgT3B1cyBzdHJlYW0gZG9lcyBub3Qgc3VwcG9ydCBtb3Jl
IHRoYW4gdHdvCisgY2hhbm5lbHMsIGEgbXVsdGktY2hhbm5lbCBPcHVzIHN0cmVhbSBtYXkgYmUg
Zm9ybWVkIGZyb20gc2V2ZXJhbCBvbmUtIGFuZAorIHR3by1jaGFubmVsIHN0cmVhbXMuCitUbyBw
YWNrIGFuIE9wdXMgcGFja2V0IGZyb20gZWFjaCBvZiB0aGVzZSBzdHJlYW1zIHRvZ2V0aGVyIGlu
IGEgc2luZ2xlIHBhY2tldAorIGF0IHRoZSB0cmFuc3BvcnQgbGF5ZXIsIG9uZSBjb3VsZCB1c2Ug
dGhlIHNlbGYtZGVsaW1pdGluZyBmcmFtaW5nIGZvciBhbGwgYnV0CisgdGhlIGxhc3Qgc3RyZWFt
LCBhbmQgdGhlbiB0aGUgcmVndWxhciwgdW5kZWxpbWl0ZWQgZnJhbWluZyBmb3IgdGhlIGxhc3Qg
b25lLgorUmV2ZXJ0aW5nIHRvIHRoZSB1bmRlbGltaXRlZCBmcmFtaW5nIGZvciB0aGUgbGFzdCBz
dHJlYW0gc2F2ZXMgb3ZlcmhlYWQKKyAoYmVjYXVzZSB0aGUgdG90YWwgc2l6ZSBvZiB0aGUgdHJh
bnNwb3J0LWxheWVyIHBhY2tldCB3aWxsIHN0aWxsIGJlIGtub3duKSwKKyBhbmQgZW5zdXJlcyB0
aGF0IGEgIm11bHRpLWNoYW5uZWwiIHN0cmVhbSB3aGljaCBvbmx5IGhhcyBhIHNpbmdsZSBPcHVz
IHN0cmVhbQorIHVzZXMgdGhlIHNhbWUgZnJhbWluZyBhcyBhIHJlZ3VsYXIgT3B1cyBzdHJlYW0g
ZG9lcy4KK1RoaXMgYXZvaWRzIHRoZSBuZWVkIGZvciBzaWduYWxpbmcgdG8gZGlzdGluZ3Vpc2gg
dGhlc2UgdHdvIGNhc2VzLgorPC90PgorCis8dD4KK1RoZSBzZWxmLWRlbGltaXRpbmcgZnJhbWlu
ZyBpcyBpZGVudGljYWwgdG8gdGhlIHJlZ3VsYXIsIHVuZGVsaW1pdGVkIGZyYW1pbmcKKyBmcm9t
IDx4cmVmIHRhcmdldD0ibW9kZXMiLz4sIGV4Y2VwdCB0aGF0IGVhY2ggT3B1cyBwYWNrZXQgY29u
dGFpbnMgb25lIGV4dHJhCisgbGVuZ3RoIGZpZWxkLCBlbmNvZGVkIHVzaW5nIHRoZSBzYW1lIG9u
ZS0gb3IgdHdvLWJ5dGUgc2NoZW1lIGZyb20KKyA8eHJlZiB0YXJnZXQ9ImZyYW1lLWxlbmd0aC1j
b2RpbmciLz4uCitUaGlzIGV4dHJhIGxlbmd0aCBpbW1lZGlhdGVseSBwcmVjZWRlcyB0aGUgY29t
cHJlc3NlZCBkYXRhIG9mIHRoZSBmaXJzdCBPcHVzCisgZnJhbWUgaW4gdGhlIHBhY2tldCwgYW5k
IGlzIGludGVycHJldGVkIGluIHRoZSB2YXJpb3VzIG1vZGVzIGFzIGZvbGxvd3M6Cis8bGlzdCBz
dHlsZT0ic3ltYm9scyI+Cis8dD4KK0NvZGUmbmJzcDswIHBhY2tldHM6IEl0IGlzIHRoZSBsZW5n
dGggb2YgdGhlIHNpbmdsZSBPcHVzIGZyYW1lIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNkX2NvZGUw
X3BhY2tldCIvPikuCis8L3Q+Cis8dD4KK0NvZGUmbmJzcDsxIHBhY2tldHM6IEl0IGlzIHRoZSBs
ZW5ndGggdXNlZCBmb3IgYm90aCBvZiB0aGUgT3B1cyBmcmFtZXMgKHNlZQorIDx4cmVmIHRhcmdl
dD0ic2RfY29kZTFfcGFja2V0Ii8+KS4KKzwvdD4KKzx0PgorQ29kZSZuYnNwOzIgcGFja2V0czog
SXQgaXMgdGhlIGxlbmd0aCBvZiB0aGUgc2Vjb25kIE9wdXMgZnJhbWUgKHNlZQorIDx4cmVmIHRh
cmdldD0ic2RfY29kZTJfcGFja2V0Ii8+KS48L3Q+Cis8dD4KK0NCUiBDb2RlJm5ic3A7MyBwYWNr
ZXRzOiBJdCBpcyB0aGUgbGVuZ3RoIHVzZWQgZm9yIGFsbCBvZiB0aGUgT3B1cyBmcmFtZXMgKHNl
ZQorIDx4cmVmIHRhcmdldD0ic2RfY29kZTNjYnJfcGFja2V0Ii8+KS4KKzwvdD4KKzx0PlZCUiBD
b2RlJm5ic3A7MyBwYWNrZXRzOiBJdCBpcyB0aGUgbGVuZ3RoIG9mIHRoZSBsYXN0IE9wdXMgZnJh
bWUgKHNlZQorIDx4cmVmIHRhcmdldD0ic2RfY29kZTN2YnJfcGFja2V0Ii8+KS4KKzwvdD4KKzwv
bGlzdD4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9InNkX2NvZGUwX3BhY2tldCIgdGl0bGU9IkEg
U2VsZi1EZWxpbWl0ZWQgQ29kZSAwIFBhY2tldCIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3Jr
IGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAg
ICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAg
MSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8IGNv
bmZpZyAgfHN8MHwwfCBOMSAoMS0yIGJ5dGVzKTogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKK3wgICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDEgKE4xIGJ5
dGVzKS4uLiAgICAgICAgICAgICAgICA6Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPGZpZ3VyZSBhbmNob3I9InNkX2NvZGUxX3BhY2tl
dCIgdGl0bGU9IkEgU2VsZi1EZWxpbWl0ZWQgQ29kZSAxIFBhY2tldCIKKyBhbGlnbj0iY2VudGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAg
ICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQg
NSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKyst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rCit8IGNvbmZpZyAgfHN8MHwxfCBOMSAoMS0yIGJ5dGVzKTogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICBDb21wcmVzc2VkIGZy
YW1lIDEgKE4xIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwK
KystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA6Cit8ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAyIChOMSBieXRlcyku
Li4gICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8ZmlndXJlIGFu
Y2hvcj0ic2RfY29kZTJfcGFja2V0IiB0aXRsZT0iQSBTZWxmLURlbGltaXRlZCBDb2RlIDIgUGFj
a2V0IgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFb
CisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAg
ICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAz
IDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgY29uZmlnICB8c3wxfDB8IE4xICgxLTIgYnl0
ZXMpOiBOMiAoMS0yIGJ5dGVzIDogICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rICAgICAgICAgICAgICAgOgorfCAgICAgICAg
ICAgICAgIENvbXByZXNzZWQgZnJhbWUgMSAoTjEgYnl0ZXMpLi4uICAgICAgICAgICAgICAgIHwK
KzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAgICAgICBDb21wcmVzc2Vk
IGZyYW1lIDIgKE4yIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICA6Cis6ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorfCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPGZpZ3VyZSBhbmNob3I9
InNkX2NvZGUzY2JyX3BhY2tldCIgdGl0bGU9IkEgU2VsZi1EZWxpbWl0ZWQgQ0JSIENvZGUgMyBQ
YWNrZXQiCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAg
ICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAy
IDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxzfDF8MXwwfHB8ICAgICBN
ICAgICB8IFBhZCBsZW4gKE9wdCkgOiBOMSAoMS0yIGJ5dGVzKToKKystKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fAorOiAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMSAoTjEgYnl0ZXMpLi4uICAgICAg
ICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAg
ICBDb21wcmVzc2VkIGZyYW1lIDIgKE4xIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICA6Cit8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Li4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfAorOiAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgTSAoTjEgYnl0ZXMpLi4u
ICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworOiAgICAgICAgICAgICAgICAg
IE9wdXMgUGFkZGluZyAoT3B0aW9uYWwpLi4uICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPGZpZ3VyZSBhbmNob3I9InNkX2NvZGUzdmJy
X3BhY2tldCIgdGl0bGU9IkEgU2VsZi1EZWxpbWl0ZWQgVkJSIENvZGUgMyBQYWNrZXQiCisgYWxp
Z249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAwICAgICAg
ICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAgICAzCisg
MCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4
IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxzfDF8MXwxfHB8ICAgICBNICAgICB8IFBhZGRp
bmcgbGVuZ3RoIChPcHRpb25hbCkgICAgIDoKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCis6IE4xICgxLTIgYnl0ZXMpOiAg
ICAgLi4uICAgICAgIDogICAgIE5bTS0xXSAgICB8ICAgICBOW01dICAgICAgOgorKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsK
K3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8Cis6ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxIChOMSBieXRlcyku
Li4gICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAg
ICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMiAoTjIgYnl0ZXMpLi4uICAgICAgICAgICAgICAg
IDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAuLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIE0gKE5bTV0g
Ynl0ZXMpLi4uICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCis6ICAgICAgICAg
ICAgICAgICAgT3B1cyBQYWRkaW5nIChPcHRpb25hbCkuLi4gICAgICAgICAgICAgICAgICAgfAor
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8L3NlY3Rpb24+CisKKzwvYmFj
az4KKworPC9yZmM+CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9kcmFmdC1pZXRmLXBheWxvYWQtcnRwLW9wdXMu
eG1sIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9kb2MvZHJhZnQtaWV0Zi1wYXlsb2FkLXJ0cC1vcHVzLnhtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNGVi
MjEwNzdiNzIyNGVmMTQ0M2Y2ZDQ1NjU4MzI2MDRmNDdkZDM4Ci0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9k
b2MvZHJhZnQtaWV0Zi1wYXlsb2FkLXJ0cC1vcHVzLnhtbApAQCAtMCwwICsxLDk2MCBAQAorPD94
bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzwhRE9DVFlQRSByZmMgU1lTVEVN
ICJyZmMyNjI5LmR0ZCIgWworPCFFTlRJVFkgcmZjMjExOSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwu
cmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMjExOS54bWwnPgor
PCFFTlRJVFkgcmZjMzM4OSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1Ymxp
Yy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzM4OS54bWwnPgorPCFFTlRJVFkgcmZjMzU1MCBQ
VUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVy
ZW5jZS5SRkMuMzU1MC54bWwnPgorPCFFTlRJVFkgcmZjMzcxMSBQVUJMSUMgJycgJ2h0dHA6Ly94
bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzcxMS54bWwn
PgorPCFFTlRJVFkgcmZjMzU1MSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1
YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzU1MS54bWwnPgorPCFFTlRJVFkgcmZjNjgz
OCBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3Jl
ZmVyZW5jZS5SRkMuNjgzOC54bWwnPgorPCFFTlRJVFkgcmZjNDg1NSBQVUJMSUMgJycgJ2h0dHA6
Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNDg1NS54
bWwnPgorPCFFTlRJVFkgcmZjNDU2NiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3Jn
L3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNDU2Ni54bWwnPgorPCFFTlRJVFkgcmZj
NDU4NSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1s
L3JlZmVyZW5jZS5SRkMuNDU4NS54bWwnPgorPCFFTlRJVFkgcmZjMzI2NCBQVUJMSUMgJycgJ2h0
dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzI2
NC54bWwnPgorPCFFTlRJVFkgcmZjMjk3NCBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uu
b3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMjk3NC54bWwnPgorPCFFTlRJVFkg
cmZjMjMyNiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmli
eG1sL3JlZmVyZW5jZS5SRkMuMjMyNi54bWwnPgorPCFFTlRJVFkgcmZjMzU1NSBQVUJMSUMgJycg
J2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMu
MzU1NS54bWwnPgorPCFFTlRJVFkgcmZjNTEyNCBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3Vy
Y2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNTEyNC54bWwnPgorPCFFTlRJ
VFkgcmZjNTQwNSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMv
YmlieG1sL3JlZmVyZW5jZS5SRkMuNTQwNS54bWwnPgorPCFFTlRJVFkgcmZjNTU3NiBQVUJMSUMg
JycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5S
RkMuNTU3Ni54bWwnPgorPCFFTlRJVFkgcmZjNjU2MiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVz
b3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNjU2Mi54bWwnPgorPCFF
TlRJVFkgcmZjNjcxNiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9y
ZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNjcxNi54bWwnPgorPCFFTlRJVFkgcmZjNzIwMiBQVUJM
SUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5j
ZS5SRkMuNzIwMi54bWwnPgorPCFFTlRJVFkgbmJzcCAiJiMxNjA7Ij4KKyAgXT4KKworICA8cmZj
IGNhdGVnb3J5PSJzdGQiIGlwcj0idHJ1c3QyMDA5MDIiIGRvY05hbWU9ImRyYWZ0LWlldGYtcGF5
bG9hZC1ydHAtb3B1cy0xMSI+Cis8P3htbC1zdHlsZXNoZWV0IHR5cGU9J3RleHQveHNsJyBocmVm
PSdyZmMyNjI5LnhzbHQnID8+CisKKzw/cmZjIHN0cmljdD0ieWVzIiA/PgorPD9yZmMgdG9jPSJ5
ZXMiID8+Cis8P3JmYyB0b2NkZXB0aD0iMyIgPz4KKzw/cmZjIHRvY2FwcGVuZGl4PSdubycgPz4K
Kzw/cmZjIHRvY2luZGVudD0neWVzJyA/PgorPD9yZmMgc3ltcmVmcz0ieWVzIiA/PgorPD9yZmMg
c29ydHJlZnM9InllcyIgPz4KKzw/cmZjIGNvbXBhY3Q9Im5vIiA/PgorPD9yZmMgc3ViY29tcGFj
dD0ieWVzIiA/PgorPD9yZmMgaXBybm90aWZpZWQ9InllcyIgPz4KKworICA8ZnJvbnQ+CisgICAg
PHRpdGxlIGFiYnJldj0iUlRQIFBheWxvYWQgRm9ybWF0IGZvciBPcHVzIj4KKyAgICAgIFJUUCBQ
YXlsb2FkIEZvcm1hdCBmb3IgdGhlIE9wdXMgU3BlZWNoIGFuZCBBdWRpbyBDb2RlYworICAgIDwv
dGl0bGU+CisKKyAgICA8YXV0aG9yIGZ1bGxuYW1lPSJKdWxpYW4gU3BpdHRrYSIgaW5pdGlhbHM9
IkouIiBzdXJuYW1lPSJTcGl0dGthIj4KKyAgICAgIDxhZGRyZXNzPgorICAgICAgICA8ZW1haWw+
anNwaXR0a2FAZ21haWwuY29tPC9lbWFpbD4KKyAgICAgIDwvYWRkcmVzcz4KKyAgICA8L2F1dGhv
cj4KKworICAgIDxhdXRob3IgaW5pdGlhbHM9J0suJyBzdXJuYW1lPSdWb3MnIGZ1bGxuYW1lPSdL
b2VuIFZvcyc+CisgICAgICA8b3JnYW5pemF0aW9uPnZvY1RvbmU8L29yZ2FuaXphdGlvbj4KKyAg
ICAgIDxhZGRyZXNzPgorICAgICAgICA8cG9zdGFsPgorICAgICAgICAgIDxzdHJlZXQ+PC9zdHJl
ZXQ+CisgICAgICAgICAgPGNvZGU+PC9jb2RlPgorICAgICAgICAgIDxjaXR5PjwvY2l0eT4KKyAg
ICAgICAgICA8cmVnaW9uPjwvcmVnaW9uPgorICAgICAgICAgIDxjb3VudHJ5PjwvY291bnRyeT4K
KyAgICAgICAgPC9wb3N0YWw+CisgICAgICAgIDxlbWFpbD5rb2Vudm9zNzRAZ21haWwuY29tPC9l
bWFpbD4KKyAgICAgIDwvYWRkcmVzcz4KKyAgICA8L2F1dGhvcj4KKworICAgIDxhdXRob3IgaW5p
dGlhbHM9IkpNIiBzdXJuYW1lPSJWYWxpbiIgZnVsbG5hbWU9IkplYW4tTWFyYyBWYWxpbiI+Cisg
ICAgICA8b3JnYW5pemF0aW9uPk1vemlsbGE8L29yZ2FuaXphdGlvbj4KKyAgICAgIDxhZGRyZXNz
PgorICAgICAgICA8cG9zdGFsPgorICAgICAgICAgIDxzdHJlZXQ+MzMxIEUuIEV2ZWx5biBBdmVu
dWU8L3N0cmVldD4KKyAgICAgICAgICA8Y2l0eT5Nb3VudGFpbiBWaWV3PC9jaXR5PgorICAgICAg
ICAgIDxyZWdpb24+Q0E8L3JlZ2lvbj4KKyAgICAgICAgICA8Y29kZT45NDA0MTwvY29kZT4KKyAg
ICAgICAgICA8Y291bnRyeT5VU0E8L2NvdW50cnk+CisgICAgICAgIDwvcG9zdGFsPgorICAgICAg
ICA8ZW1haWw+am12YWxpbkBqbXZhbGluLmNhPC9lbWFpbD4KKyAgICAgIDwvYWRkcmVzcz4KKyAg
ICA8L2F1dGhvcj4KKworICAgIDxkYXRlIGRheT0nMTQnIG1vbnRoPSdBcHJpbCcgeWVhcj0nMjAx
NScgLz4KKworICAgIDxhYnN0cmFjdD4KKyAgICAgIDx0PgorICAgICAgICBUaGlzIGRvY3VtZW50
IGRlZmluZXMgdGhlIFJlYWwtdGltZSBUcmFuc3BvcnQgUHJvdG9jb2wgKFJUUCkgcGF5bG9hZAor
ICAgICAgICBmb3JtYXQgZm9yIHBhY2tldGl6YXRpb24gb2YgT3B1cyBlbmNvZGVkCisgICAgICAg
IHNwZWVjaCBhbmQgYXVkaW8gZGF0YSBuZWNlc3NhcnkgdG8gaW50ZWdyYXRlIHRoZSBjb2RlYyBp
biB0aGUKKyAgICAgICAgbW9zdCBjb21wYXRpYmxlIHdheS4gSXQgYWxzbyBwcm92aWRlcyBhbiBh
cHBsaWNhYmlsaXR5IHN0YXRlbWVudAorICAgICAgICBmb3IgdGhlIHVzZSBvZiBPcHVzIG92ZXIg
UlRQLiBGdXJ0aGVyLCBpdCBkZXNjcmliZXMgbWVkaWEgdHlwZSByZWdpc3RyYXRpb25zCisgICAg
ICAgIGZvciB0aGUgUlRQIHBheWxvYWQgZm9ybWF0LgorICAgICAgPC90PgorICAgIDwvYWJzdHJh
Y3Q+CisgIDwvZnJvbnQ+CisKKyAgPG1pZGRsZT4KKyAgICA8c2VjdGlvbiB0aXRsZT0nSW50cm9k
dWN0aW9uJz4KKyAgICAgIDx0PgorICAgICAgICBPcHVzIDx4cmVmIHRhcmdldD0iUkZDNjcxNiIv
PiBpcyBhIHNwZWVjaCBhbmQgYXVkaW8gY29kZWMgZGV2ZWxvcGVkIHdpdGhpbiB0aGUKKyAgICAg
ICAgSUVURiBJbnRlcm5ldCBXaWRlYmFuZCBBdWRpbyBDb2RlYyB3b3JraW5nIGdyb3VwLiBUaGUg
Y29kZWMKKyAgICAgICAgaGFzIGEgdmVyeSBsb3cgYWxnb3JpdGhtaWMgZGVsYXkgYW5kIGl0Cisg
ICAgICAgIGlzIGhpZ2hseSBzY2FsYWJsZSBpbiB0ZXJtcyBvZiBhdWRpbyBiYW5kd2lkdGgsIGJp
dHJhdGUsIGFuZAorICAgICAgICBjb21wbGV4aXR5LiBGdXJ0aGVyLCBpdCBwcm92aWRlcyBkaWZm
ZXJlbnQgbW9kZXMgdG8gZWZmaWNpZW50bHkgZW5jb2RlIHNwZWVjaCBzaWduYWxzCisgICAgICAg
IGFzIHdlbGwgYXMgbXVzaWMgc2lnbmFscywgdGh1cyBtYWtpbmcgaXQgdGhlIGNvZGVjIG9mIGNo
b2ljZSBmb3IKKyAgICAgICAgdmFyaW91cyBhcHBsaWNhdGlvbnMgdXNpbmcgdGhlIEludGVybmV0
IG9yIHNpbWlsYXIgbmV0d29ya3MuCisgICAgICA8L3Q+CisgICAgICA8dD4KKyAgICAgICAgVGhp
cyBkb2N1bWVudCBkZWZpbmVzIHRoZSBSZWFsLXRpbWUgVHJhbnNwb3J0IFByb3RvY29sIChSVFAp
CisgICAgICAgIDx4cmVmIHRhcmdldD0iUkZDMzU1MCIvPiBwYXlsb2FkIGZvcm1hdCBmb3IgcGFj
a2V0aXphdGlvbgorICAgICAgICBvZiBPcHVzIGVuY29kZWQgc3BlZWNoIGFuZCBhdWRpbyBkYXRh
IG5lY2Vzc2FyeSB0bworICAgICAgICBpbnRlZ3JhdGUgT3B1cyBpbiB0aGUKKyAgICAgICAgbW9z
dCBjb21wYXRpYmxlIHdheS4gSXQgYWxzbyBwcm92aWRlcyBhbiBhcHBsaWNhYmlsaXR5IHN0YXRl
bWVudAorICAgICAgICBmb3IgdGhlIHVzZSBvZiBPcHVzIG92ZXIgUlRQLgorICAgICAgICBGdXJ0
aGVyLCBpdCBkZXNjcmliZXMgbWVkaWEgdHlwZSByZWdpc3RyYXRpb25zIGZvcgorICAgICAgICB0
aGUgUlRQIHBheWxvYWQgZm9ybWF0LgorICAgICAgPC90PgorICAgIDwvc2VjdGlvbj4KKworICAg
IDxzZWN0aW9uIHRpdGxlPSdDb252ZW50aW9ucywgRGVmaW5pdGlvbnMgYW5kIEFjcm9ueW1zIHVz
ZWQgaW4gdGhpcyBkb2N1bWVudCc+CisgICAgICA8dD5UaGUga2V5IHdvcmRzICJNVVNUIiwgIk1V
U1QgTk9UIiwgIlJFUVVJUkVEIiwgIlNIQUxMIiwgIlNIQUxMIE5PVCIsCisgICAgICAiU0hPVUxE
IiwgIlNIT1VMRCBOT1QiLCAiUkVDT01NRU5ERUQiLCAiTUFZIiwgYW5kICJPUFRJT05BTCIgaW4g
dGhpcworICAgICAgZG9jdW1lbnQgYXJlIHRvIGJlIGludGVycHJldGVkIGFzIGRlc2NyaWJlZCBp
biA8eHJlZiB0YXJnZXQ9IlJGQzIxMTkiLz4uPC90PgorICAgICAgPHQ+CisgICAgICA8bGlzdCBz
dHlsZT0naGFuZ2luZyc+CisgICAgICAgICAgPHQgaGFuZ1RleHQ9ImF1ZGlvIGJhbmR3aWR0aDoi
PiBUaGUgcmFuZ2Ugb2YgYXVkaW8gZnJlcXVlY2llcyBiZWluZyBjb2RlZDwvdD4KKyAgICAgICAg
ICA8dCBoYW5nVGV4dD0iQ0JSOiI+IENvbnN0YW50IGJpdHJhdGU8L3Q+CisgICAgICAgICAgPHQg
aGFuZ1RleHQ9IkNQVToiPiBDZW50cmFsIFByb2Nlc3NpbmcgVW5pdDwvdD4KKyAgICAgICAgICA8
dCBoYW5nVGV4dD0iRFRYOiI+IERpc2NvbnRpbnVvdXMgdHJhbnNtaXNzaW9uPC90PgorICAgICAg
ICAgIDx0IGhhbmdUZXh0PSJGRUM6Ij4gRm9yd2FyZCBlcnJvciBjb3JyZWN0aW9uPC90PgorICAg
ICAgICAgIDx0IGhhbmdUZXh0PSJJUDoiPiBJbnRlcm5ldCBQcm90b2NvbDwvdD4KKyAgICAgICAg
ICA8dCBoYW5nVGV4dD0ic2FtcGxlczoiPiBTcGVlY2ggb3IgYXVkaW8gc2FtcGxlcyAocGVyIGNo
YW5uZWwpPC90PgorICAgICAgICAgIDx0IGhhbmdUZXh0PSJTRFA6Ij4gU2Vzc2lvbiBEZXNjcmlw
dGlvbiBQcm90b2NvbDwvdD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0iVkJSOiI+IFZhcmlhYmxl
IGJpdHJhdGU8L3Q+CisgICAgICA8L2xpc3Q+CisgICAgICA8L3Q+CisgICAgICAgIDx0PgorICAg
ICAgICAgIFRocm91Z2hvdXQgdGhpcyBkb2N1bWVudCwgd2UgcmVmZXIgdG8gdGhlIGZvbGxvd2lu
ZyBkZWZpbml0aW9uczoKKyAgICAgICAgPC90PgorICAgICAgICAgIDx0ZXh0dGFibGUgYW5jaG9y
PSdiYW5kd2lkdGhfZGVmaW5pdGlvbnMnPgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50
ZXInPkFiYnJldmlhdGlvbjwvdHRjb2w+CisgICAgICAgICAgICA8dHRjb2wgYWxpZ249J2NlbnRl
cic+TmFtZTwvdHRjb2w+CisgICAgICAgICAgICA8dHRjb2wgYWxpZ249J2NlbnRlcic+QXVkaW8g
QmFuZHdpZHRoIChIeik8L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXIn
PlNhbXBsaW5nIFJhdGUgKEh6KTwvdHRjb2w+CisgICAgICAgICAgICA8Yz5OQjwvYz4KKyAgICAg
ICAgICAgIDxjPk5hcnJvd2JhbmQ8L2M+CisgICAgICAgICAgICA8Yz4wIC0gNDAwMDwvYz4KKyAg
ICAgICAgICAgIDxjPjgwMDA8L2M+CisKKyAgICAgICAgICAgIDxjPk1CPC9jPgorICAgICAgICAg
ICAgPGM+TWVkaXVtYmFuZDwvYz4KKyAgICAgICAgICAgIDxjPjAgLSA2MDAwPC9jPgorICAgICAg
ICAgICAgPGM+MTIwMDA8L2M+CisKKyAgICAgICAgICAgIDxjPldCPC9jPgorICAgICAgICAgICAg
PGM+V2lkZWJhbmQ8L2M+CisgICAgICAgICAgICA8Yz4wIC0gODAwMDwvYz4KKyAgICAgICAgICAg
IDxjPjE2MDAwPC9jPgorCisgICAgICAgICAgICA8Yz5TV0I8L2M+CisgICAgICAgICAgICA8Yz5T
dXBlci13aWRlYmFuZDwvYz4KKyAgICAgICAgICAgIDxjPjAgLSAxMjAwMDwvYz4KKyAgICAgICAg
ICAgIDxjPjI0MDAwPC9jPgorCisgICAgICAgICAgICA8Yz5GQjwvYz4KKyAgICAgICAgICAgIDxj
PkZ1bGxiYW5kPC9jPgorICAgICAgICAgICAgPGM+MCAtIDIwMDAwPC9jPgorICAgICAgICAgICAg
PGM+NDgwMDA8L2M+CisKKyAgICAgICAgICAgIDxwb3N0YW1ibGU+CisgICAgICAgICAgICAgIEF1
ZGlvIGJhbmR3aWR0aCBuYW1pbmcKKyAgICAgICAgICAgIDwvcG9zdGFtYmxlPgorICAgICAgICAg
IDwvdGV4dHRhYmxlPgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIHRpdGxlPSdPcHVz
IENvZGVjJz4KKyAgICAgIDx0PgorICAgICAgICBPcHVzIGVuY29kZXMgc3BlZWNoCisgICAgICAg
IHNpZ25hbHMgYXMgd2VsbCBhcyBnZW5lcmFsIGF1ZGlvIHNpZ25hbHMuIFR3byBkaWZmZXJlbnQg
bW9kZXMgY2FuIGJlCisgICAgICAgIGNob3NlbiwgYSB2b2ljZSBtb2RlIG9yIGFuIGF1ZGlvIG1v
ZGUsIHRvIGFsbG93IHRoZSBtb3N0IGVmZmljaWVudCBjb2RpbmcKKyAgICAgICAgZGVwZW5kaW5n
IG9uIHRoZSB0eXBlIG9mIHRoZSBpbnB1dCBzaWduYWwsIHRoZSBzYW1wbGluZyBmcmVxdWVuY3kg
b2YgdGhlCisgICAgICAgIGlucHV0IHNpZ25hbCwgYW5kIHRoZSBpbnRlbmRlZCBhcHBsaWNhdGlv
bi4KKyAgICAgIDwvdD4KKworICAgICAgPHQ+CisgICAgICAgIFRoZSB2b2ljZSBtb2RlIGFsbG93
cyBlZmZpY2llbnQgZW5jb2Rpbmcgb2Ygdm9pY2Ugc2lnbmFscyBhdCBsb3dlciBiaXQKKyAgICAg
ICAgcmF0ZXMgd2hpbGUgdGhlIGF1ZGlvIG1vZGUgaXMgb3B0aW1pemVkIGZvciBnZW5lcmFsIGF1
ZGlvIHNpZ25hbHMgYXQgbWVkaXVtIGFuZAorICAgICAgICBoaWdoZXIgYml0cmF0ZXMuCisgICAg
ICA8L3Q+CisKKyAgICAgIDx0PgorICAgICAgICBPcHVzIGlzIGhpZ2hseSBzY2FsYWJsZSBpbiB0
ZXJtcyBvZiBhdWRpbworICAgICAgICBiYW5kd2lkdGgsIGJpdHJhdGUsIGFuZCBjb21wbGV4aXR5
LiBGdXJ0aGVyLCBPcHVzIGFsbG93cworICAgICAgICB0cmFuc21pdHRpbmcgc3RlcmVvIHNpZ25h
bHMgd2l0aCBpbi1iYW5kIHNpZ25hbGluZyBpbiB0aGUgYml0LXN0cmVhbS4KKyAgICAgIDwvdD4K
KworICAgICAgPHNlY3Rpb24gdGl0bGU9J05ldHdvcmsgQmFuZHdpZHRoJz4KKyAgICAgICAgICA8
dD4KKyAgICAgICAgICAgIE9wdXMgc3VwcG9ydHMgYml0cmF0ZXMgZnJvbSA2Jm5ic3A7a2IvcyB0
byA1MTAmbmJzcDtrYi9zLgorICAgICAgICAgICAgVGhlIGJpdHJhdGUgY2FuIGJlIGNoYW5nZWQg
ZHluYW1pY2FsbHkgd2l0aGluIHRoYXQgcmFuZ2UuCisgICAgICAgICAgICBBbGwKKyAgICAgICAg
ICAgIG90aGVyIHBhcmFtZXRlcnMgYmVpbmcKKyAgICAgICAgICAgIGVxdWFsLCBoaWdoZXIgYml0
cmF0ZXMgcmVzdWx0IGluIGhpZ2hlciBhdWRpbyBxdWFsaXR5LgorICAgICAgICAgIDwvdD4KKyAg
ICAgICAgICA8c2VjdGlvbiB0aXRsZT0nUmVjb21tZW5kZWQgQml0cmF0ZScgYW5jaG9yPSdiaXRy
YXRlX2J5X2JhbmR3aWR0aCc+CisgICAgICAgICAgPHQ+CisgICAgICAgICAgICBGb3IgYSBmcmFt
ZSBzaXplIG9mCisgICAgICAgICAgICAyMCZuYnNwO21zLCB0aGVzZQorICAgICAgICAgICAgYXJl
IHRoZSBiaXRyYXRlICJzd2VldCBzcG90cyIgZm9yIE9wdXMgaW4gdmFyaW91cyBjb25maWd1cmF0
aW9uczoKKworICAgICAgICAgIDxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKyAgICAgICAgICAgIDx0
PjgtMTIga2IvcyBmb3IgTkIgc3BlZWNoLDwvdD4KKyAgICAgICAgICAgIDx0PjE2LTIwIGtiL3Mg
Zm9yIFdCIHNwZWVjaCw8L3Q+CisgICAgICAgICAgICA8dD4yOC00MCBrYi9zIGZvciBGQiBzcGVl
Y2gsPC90PgorICAgICAgICAgICAgPHQ+NDgtNjQga2IvcyBmb3IgRkIgbW9ubyBtdXNpYywgYW5k
PC90PgorICAgICAgICAgICAgPHQ+NjQtMTI4IGtiL3MgZm9yIEZCIHN0ZXJlbyBtdXNpYy48L3Q+
CisgICAgICAgICAgPC9saXN0PgorICAgICAgICA8L3Q+CisgICAgICA8L3NlY3Rpb24+CisgICAg
ICAgIDxzZWN0aW9uIHRpdGxlPSdWYXJpYWJsZSB2ZXJzdXMgQ29uc3RhbnQgQml0cmF0ZScgIGFu
Y2hvcj0ndmFyaWFibGUtdnMtY29uc3RhbnQtYml0cmF0ZSc+CisgICAgICAgICAgPHQ+CisgICAg
ICAgICAgICBGb3IgdGhlIHNhbWUgYXZlcmFnZSBiaXRyYXRlLCB2YXJpYWJsZSBiaXRyYXRlIChW
QlIpIGNhbiBhY2hpZXZlIGhpZ2hlciBhdWRpbyBxdWFsaXR5CisgICAgICAgICAgICB0aGFuIGNv
bnN0YW50IGJpdHJhdGUgKENCUikuIEZvciB0aGUgbWFqb3JpdHkgb2Ygdm9pY2UgdHJhbnNtaXNz
aW9uIGFwcGxpY2F0aW9ucywgVkJSCisgICAgICAgICAgICBpcyB0aGUgYmVzdCBjaG9pY2UuIE9u
ZSByZWFzb24gZm9yIGNob29zaW5nIENCUiBpcyB0aGUgcG90ZW50aWFsCisgICAgICAgICAgICBp
bmZvcm1hdGlvbiBsZWFrIHRoYXQgPHNwYW54IHN0eWxlPSdlbXBoJz5taWdodDwvc3Bhbng+IG9j
Y3VyIHdoZW4gZW5jcnlwdGluZyB0aGUKKyAgICAgICAgICAgIGNvbXByZXNzZWQgc3RyZWFtLiBT
ZWUgPHhyZWYgdGFyZ2V0PSJSRkM2NTYyIi8+IGZvciBndWlkZWxpbmVzIG9uIHdoZW4gVkJSIGlz
CisgICAgICAgICAgICBhcHByb3ByaWF0ZSBmb3IgZW5jcnlwdGVkIGF1ZGlvIGNvbW11bmljYXRp
b25zLiBJbiB0aGUgY2FzZSB3aGVyZSBhbiBleGlzdGluZworICAgICAgICAgICAgVkJSIHN0cmVh
bSBuZWVkcyB0byBiZSBjb252ZXJ0ZWQgdG8gQ0JSIGZvciBzZWN1cml0eSByZWFzb25zLCB0aGVu
IHRoZSBPcHVzIHBhZGRpbmcKKyAgICAgICAgICAgIG1lY2hhbmlzbSBkZXNjcmliZWQgaW4gPHhy
ZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+IGlzIHRoZSBSRUNPTU1FTkRFRCB3YXkgdG8gYWNoaWV2ZSBw
YWRkaW5nCisgICAgICAgICAgICBiZWNhdXNlIHRoZSBSVFAgcGFkZGluZyBiaXQgaXMgdW5lbmNy
eXB0ZWQuPC90PgorCisgICAgICAgICAgPHQ+CisgICAgICAgICAgICBUaGUgYml0cmF0ZSBjYW4g
YmUgYWRqdXN0ZWQgYXQgYW55IHBvaW50IGluIHRpbWUuIFRvIGF2b2lkIGNvbmdlc3Rpb24sCisg
ICAgICAgICAgICB0aGUgYXZlcmFnZSBiaXRyYXRlIFNIT1VMRCBOT1QgZXhjZWVkIHRoZSBhdmFp
bGFibGUKKyAgICAgICAgICAgIG5ldHdvcmsgYmFuZHdpZHRoLiBJZiBubyB0YXJnZXQgYml0cmF0
ZSBpcyBzcGVjaWZpZWQsIHRoZSBiaXRyYXRlcyBzcGVjaWZpZWQgaW4KKyAgICAgICAgICAgIDx4
cmVmIHRhcmdldD0nYml0cmF0ZV9ieV9iYW5kd2lkdGgnLz4gYXJlIFJFQ09NTUVOREVELgorICAg
ICAgICAgIDwvdD4KKworICAgICAgICA8L3NlY3Rpb24+CisKKyAgICAgICAgPHNlY3Rpb24gdGl0
bGU9J0Rpc2NvbnRpbnVvdXMgVHJhbnNtaXNzaW9uIChEVFgpJz4KKworICAgICAgICAgIDx0Pgor
ICAgICAgICAgICAgT3B1cyBjYW4sIGFzIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9J3Zhcmlh
YmxlLXZzLWNvbnN0YW50LWJpdHJhdGUnLz4sCisgICAgICAgICAgICBiZSBvcGVyYXRlZCB3aXRo
IGEgdmFyaWFibGUgYml0cmF0ZS4gSW4gdGhhdCBjYXNlLCB0aGUgZW5jb2RlciB3aWxsCisgICAg
ICAgICAgICBhdXRvbWF0aWNhbGx5IHJlZHVjZSB0aGUgYml0cmF0ZSBmb3IgY2VydGFpbiBpbnB1
dCBzaWduYWxzLCBsaWtlIHBlcmlvZHMKKyAgICAgICAgICAgIG9mIHNpbGVuY2UuIFdoZW4gdXNp
bmcgY29udGludW91cyB0cmFuc21pc3Npb24sIGl0IHdpbGwgcmVkdWNlIHRoZQorICAgICAgICAg
ICAgYml0cmF0ZSB3aGVuIHRoZSBjaGFyYWN0ZXJpc3RpY3Mgb2YgdGhlIGlucHV0IHNpZ25hbCBw
ZXJtaXQsIGJ1dAorICAgICAgICAgICAgd2lsbCBuZXZlciBpbnRlcnJ1cHQgdGhlIHRyYW5zbWlz
c2lvbiB0byB0aGUgcmVjZWl2ZXIuIFRoZXJlZm9yZSwgdGhlCisgICAgICAgICAgICByZWNlaXZl
ZCBzaWduYWwgd2lsbCBtYWludGFpbiB0aGUgc2FtZSBoaWdoIGxldmVsIG9mIGF1ZGlvIHF1YWxp
dHkgb3ZlciB0aGUKKyAgICAgICAgICAgIGZ1bGwgZHVyYXRpb24gb2YgYSB0cmFuc21pc3Npb24g
d2hpbGUgbWluaW1pemluZyB0aGUgYXZlcmFnZSBiaXQKKyAgICAgICAgICAgIHJhdGUgb3ZlciB0
aW1lLgorICAgICAgICAgIDwvdD4KKworICAgICAgICAgIDx0PgorICAgICAgICAgICAgSW4gY2Fz
ZXMgd2hlcmUgdGhlIGJpdHJhdGUgb2YgT3B1cyBuZWVkcyB0byBiZSByZWR1Y2VkIGV2ZW4KKyAg
ICAgICAgICAgIGZ1cnRoZXIgb3IgaW4gY2FzZXMgd2hlcmUgb25seSBjb25zdGFudCBiaXRyYXRl
IGlzIGF2YWlsYWJsZSwKKyAgICAgICAgICAgIHRoZSBPcHVzIGVuY29kZXIgY2FuIHVzZSBkaXNj
b250aW51b3VzCisgICAgICAgICAgICB0cmFuc21pc3Npb24gKERUWCksIHdoZXJlIHBhcnRzIG9m
IHRoZSBlbmNvZGVkIHNpZ25hbCB0aGF0CisgICAgICAgICAgICBjb3JyZXNwb25kIHRvIHBlcmlv
ZHMgb2Ygc2lsZW5jZSBpbiB0aGUgaW5wdXQgc3BlZWNoIG9yIGF1ZGlvIHNpZ25hbAorICAgICAg
ICAgICAgYXJlIG5vdCB0cmFuc21pdHRlZCB0byB0aGUgcmVjZWl2ZXIuIEEgcmVjZWl2ZXIgY2Fu
IGRpc3Rpbmd1aXNoCisgICAgICAgICAgICBiZXR3ZWVuIERUWCBhbmQgcGFja2V0IGxvc3MgYnkg
bG9va2luZyBmb3IgZ2FwcyBpbiB0aGUgc2VxdWVuY2UKKyAgICAgICAgICAgIG51bWJlciwgYXMg
ZGVzY3JpYmVkIGJ5IFNlY3Rpb24gNC4xCisgICAgICAgICAgICBvZiZuYnNwOzx4cmVmIHRhcmdl
dD0iUkZDMzU1MSIvPi4KKyAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICA8dD4KKyAgICAgICAg
ICAgIE9uIHRoZSByZWNlaXZpbmcgc2lkZSwgdGhlIG5vbi10cmFuc21pdHRlZCBwYXJ0cyB3aWxs
IGJlIGhhbmRsZWQgYnkgYQorICAgICAgICAgICAgZnJhbWUgbG9zcyBjb25jZWFsbWVudCB1bml0
IGluIHRoZSBPcHVzIGRlY29kZXIgd2hpY2ggZ2VuZXJhdGVzIGEKKyAgICAgICAgICAgIGNvbWZv
cnQgbm9pc2Ugc2lnbmFsIHRvIHJlcGxhY2UgdGhlIG5vbiB0cmFuc21pdHRlZCBwYXJ0cyBvZiB0
aGUKKyAgICAgICAgICAgIHNwZWVjaCBvciBhdWRpbyBzaWduYWwuIFVzZSBvZiA8eHJlZiB0YXJn
ZXQ9IlJGQzMzODkiLz4gQ29tZm9ydAorICAgICAgICAgICAgTm9pc2UgKENOKSB3aXRoIE9wdXMg
aXMgZGlzY291cmFnZWQuCisgICAgICAgICAgICBUaGUgdHJhbnNtaXR0ZXIgTVVTVCBkcm9wIHdo
b2xlIGZyYW1lcyBvbmx5LAorICAgICAgICAgICAgYmFzZWQgb24gdGhlIHNpemUgb2YgdGhlIGxh
c3QgdHJhbnNtaXR0ZWQgZnJhbWUsCisgICAgICAgICAgICB0byBlbnN1cmUgc3VjY2Vzc2l2ZSBS
VFAgdGltZXN0YW1wcyBkaWZmZXIgYnkgYSBtdWx0aXBsZSBvZiAxMjAgYW5kCisgICAgICAgICAg
ICB0byBhbGxvdyB0aGUgcmVjZWl2ZXIgdG8gdXNlIHdob2xlIGZyYW1lcyBmb3IgY29uY2VhbG1l
bnQuCisgICAgICAgICAgPC90PgorCisgICAgICAgICAgPHQ+CisgICAgICAgICAgICBEVFggY2Fu
IGJlIHVzZWQgd2l0aCBib3RoIHZhcmlhYmxlIGFuZCBjb25zdGFudCBiaXRyYXRlLgorICAgICAg
ICAgICAgSXQgd2lsbCBoYXZlIGEgc2xpZ2h0bHkgbG93ZXIgc3BlZWNoIG9yIGF1ZGlvCisgICAg
ICAgICAgICBxdWFsaXR5IHRoYW4gY29udGludW91cyB0cmFuc21pc3Npb24uIFRoZXJlZm9yZSwg
dXNpbmcgY29udGludW91cworICAgICAgICAgICAgdHJhbnNtaXNzaW9uIGlzIFJFQ09NTUVOREVE
IHVubGVzcyBjb25zdHJhaW50cyBvbiBhdmFpbGFibGUgbmV0d29yayBiYW5kd2lkdGgKKyAgICAg
ICAgICAgIGFyZSBzZXZlcmUuCisgICAgICAgICAgPC90PgorCisgICAgICAgIDwvc2VjdGlvbj4K
KworICAgICAgICA8L3NlY3Rpb24+CisKKyAgICAgIDxzZWN0aW9uIHRpdGxlPSdDb21wbGV4aXR5
Jz4KKworICAgICAgICA8dD4KKyAgICAgICAgICBDb21wbGV4aXR5IG9mIHRoZSBlbmNvZGVyIGNh
biBiZSBzY2FsZWQgdG8gb3B0aW1pemUgZm9yIENQVSByZXNvdXJjZXMgaW4gcmVhbC10aW1lLCBt
b3N0bHkgYXMKKyAgICAgICAgICBhIHRyYWRlLW9mZiBiZXR3ZWVuIGF1ZGlvIHF1YWxpdHkgYW5k
IGJpdHJhdGUuIEFsc28sIGRpZmZlcmVudCBtb2RlcyBvZiBPcHVzIGhhdmUgZGlmZmVyZW50IGNv
bXBsZXhpdHkuCisgICAgICAgIDwvdD4KKworICAgICAgPC9zZWN0aW9uPgorCisgICAgICA8c2Vj
dGlvbiB0aXRsZT0iRm9yd2FyZCBFcnJvciBDb3JyZWN0aW9uIChGRUMpIj4KKworICAgICAgICA8
dD4KKyAgICAgICAgICBUaGUgdm9pY2UgbW9kZSBvZiBPcHVzIGFsbG93cyBmb3IgZW1iZWRkaW5n
ICJpbi1iYW5kIiBmb3J3YXJkIGVycm9yIGNvcnJlY3Rpb24gKEZFQykKKyAgICAgICAgICBkYXRh
IGludG8gdGhlIE9wdXMgYml0IHN0cmVhbS4gVGhpcyBGRUMgc2NoZW1lIGFkZHMKKyAgICAgICAg
ICByZWR1bmRhbnQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHByZXZpb3VzIHBhY2tldCAoTi0xKSB0
byB0aGUgY3VycmVudAorICAgICAgICAgIG91dHB1dCBwYWNrZXQgTi4gRm9yCisgICAgICAgICAg
ZWFjaCBmcmFtZSwgdGhlIGVuY29kZXIgZGVjaWRlcyB3aGV0aGVyIHRvIHVzZSBGRUMgYmFzZWQg
b24gKDEpIGFuCisgICAgICAgICAgZXh0ZXJuYWxseS1wcm92aWRlZCBlc3RpbWF0ZSBvZiB0aGUg
Y2hhbm5lbCdzIHBhY2tldCBsb3NzIHJhdGU7ICgyKSBhbgorICAgICAgICAgIGV4dGVybmFsbHkt
cHJvdmlkZWQgZXN0aW1hdGUgb2YgdGhlIGNoYW5uZWwncyBjYXBhY2l0eTsgKDMpIHRoZQorICAg
ICAgICAgIHNlbnNpdGl2aXR5IG9mIHRoZSBhdWRpbyBvciBzcGVlY2ggc2lnbmFsIHRvIHBhY2tl
dCBsb3NzOyAoNCkgd2hldGhlcgorICAgICAgICAgIHRoZSByZWNlaXZpbmcgZGVjb2RlciBoYXMg
aW5kaWNhdGVkIGl0IGNhbiB0YWtlIGFkdmFudGFnZSBvZiAiaW4tYmFuZCIKKyAgICAgICAgICBG
RUMgaW5mb3JtYXRpb24uIFRoZSBkZWNpc2lvbiB0byBzZW5kICJpbi1iYW5kIiBGRUMgaW5mb3Jt
YXRpb24gaXMKKyAgICAgICAgICBlbnRpcmVseSBjb250cm9sbGVkIGJ5IHRoZSBlbmNvZGVyIGFu
ZCB0aGVyZWZvcmUgbm8gc3BlY2lhbCBwcmVjYXV0aW9ucworICAgICAgICAgIGZvciB0aGUgcGF5
bG9hZCBoYXZlIHRvIGJlIHRha2VuLgorICAgICAgICA8L3Q+CisKKyAgICAgICAgPHQ+CisgICAg
ICAgICAgT24gdGhlIHJlY2VpdmluZyBzaWRlLCB0aGUgZGVjb2RlciBjYW4gdGFrZSBhZHZhbnRh
Z2Ugb2YgdGhpcworICAgICAgICAgIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gd2hlbiBpdCBsb3Nl
cyBhIHBhY2tldCBhbmQgdGhlIG5leHQgcGFja2V0CisgICAgICAgICAgaXMgYXZhaWxhYmxlLiAg
SW4gb3JkZXIgdG8gdXNlIHRoZSBGRUMgZGF0YSwgdGhlIGppdHRlciBidWZmZXIgbmVlZHMKKyAg
ICAgICAgICB0byBwcm92aWRlIGFjY2VzcyB0byBwYXlsb2FkcyB3aXRoIHRoZSBGRUMgZGF0YS4g
IAorICAgICAgICAgIEluc3RlYWQgb2YgcGVyZm9ybWluZyBsb3NzIGNvbmNlYWxtZW50IGZvciBh
IG1pc3NpbmcgcGFja2V0LCB0aGUKKyAgICAgICAgICByZWNlaXZlciBjYW4gdGhlbiBjb25maWd1
cmUgaXRzIGRlY29kZXIgdG8gZGVjb2RlIHRoZSBGRUMgZGF0YSBmcm9tIHRoZSBuZXh0IHBhY2tl
dC4KKyAgICAgICAgPC90PgorCisgICAgICAgIDx0PgorICAgICAgICAgIEFueSBjb21wbGlhbnQg
T3B1cyBkZWNvZGVyIGlzIGNhcGFibGUgb2YgaWdub3JpbmcKKyAgICAgICAgICBGRUMgaW5mb3Jt
YXRpb24gd2hlbiBpdCBpcyBub3QgbmVlZGVkLCBzbyBlbmNvZGluZyB3aXRoIEZFQyBjYW5ub3Qg
Y2F1c2UKKyAgICAgICAgICBpbnRlcm9wZXJhYmlsaXR5IHByb2JsZW1zLgorICAgICAgICAgIEhv
d2V2ZXIsIGlmIEZFQyBjYW5ub3QgYmUgdXNlZCBvbiB0aGUgcmVjZWl2aW5nIHNpZGUsIHRoZW4g
RkVDCisgICAgICAgICAgU0hPVUxEIE5PVCBiZSB1c2VkLCBhcyBpdCBsZWFkcyB0byBhbiBpbmVm
ZmljaWVudCB1c2FnZSBvZiBuZXR3b3JrCisgICAgICAgICAgcmVzb3VyY2VzLiBEZWNvZGVyIHN1
cHBvcnQgZm9yIEZFQyBTSE9VTEQgYmUgaW5kaWNhdGVkIGF0IHRoZSB0aW1lIGEKKyAgICAgICAg
ICBzZXNzaW9uIGlzIHNldCB1cC4KKyAgICAgICAgPC90PgorCisgICAgICA8L3NlY3Rpb24+CisK
KyAgICAgIDxzZWN0aW9uIHRpdGxlPSdTdGVyZW8gT3BlcmF0aW9uJz4KKworICAgICAgICA8dD4K
KyAgICAgICAgICBPcHVzIGFsbG93cyBmb3IgdHJhbnNtaXNzaW9uIG9mIHN0ZXJlbyBhdWRpbyBz
aWduYWxzLiBUaGlzIG9wZXJhdGlvbgorICAgICAgICAgIGlzIHNpZ25hbGVkIGluLWJhbmQgaW4g
dGhlIE9wdXMgYml0LXN0cmVhbSBhbmQgbm8gc3BlY2lhbCBhcnJhbmdlbWVudAorICAgICAgICAg
IGlzIG5lZWRlZCBpbiB0aGUgcGF5bG9hZCBmb3JtYXQuIEFuCisgICAgICAgICAgT3B1cyBkZWNv
ZGVyIGlzIGNhcGFibGUgb2YgaGFuZGxpbmcgYSBzdGVyZW8gZW5jb2RpbmcsIGJ1dCBhbgorICAg
ICAgICAgIGFwcGxpY2F0aW9uIG1pZ2h0IG9ubHkgYmUgY2FwYWJsZSBvZiBjb25zdW1pbmcgYSBz
aW5nbGUgYXVkaW8KKyAgICAgICAgICBjaGFubmVsLgorICAgICAgICA8L3Q+CisgICAgICAgIDx0
PgorICAgICAgICAgIElmIGEgZGVjb2RlciBjYW5ub3QgdGFrZSBhZHZhbnRhZ2Ugb2YgdGhlIGJl
bmVmaXRzIG9mIGEgc3RlcmVvIHNpZ25hbAorICAgICAgICAgIHRoaXMgU0hPVUxEIGJlIGluZGlj
YXRlZCBhdCB0aGUgdGltZSBhIHNlc3Npb24gaXMgc2V0IHVwLiBJbiB0aGF0IGNhc2UKKyAgICAg
ICAgICB0aGUgc2VuZGluZyBzaWRlIFNIT1VMRCBOT1Qgc2VuZCBzdGVyZW8gc2lnbmFscyBhcyBp
dCBsZWFkcyB0byBhbgorICAgICAgICAgIGluZWZmaWNpZW50IHVzYWdlIG9mIG5ldHdvcmsgcmVz
b3VyY2VzLgorICAgICAgICA8L3Q+CisKKyAgICAgIDwvc2VjdGlvbj4KKworICAgIDwvc2VjdGlv
bj4KKworICAgIDxzZWN0aW9uIHRpdGxlPSdPcHVzIFJUUCBQYXlsb2FkIEZvcm1hdCcgYW5jaG9y
PSdvcHVzLXJ0cC1wYXlsb2FkLWZvcm1hdCc+CisgICAgICA8dD5UaGUgcGF5bG9hZCBmb3JtYXQg
Zm9yIE9wdXMgY29uc2lzdHMgb2YgdGhlIFJUUCBoZWFkZXIgYW5kIE9wdXMgcGF5bG9hZAorICAg
ICAgZGF0YS48L3Q+CisgICAgICA8c2VjdGlvbiB0aXRsZT0nUlRQIEhlYWRlciBVc2FnZSc+Cisg
ICAgICAgIDx0PlRoZSBmb3JtYXQgb2YgdGhlIFJUUCBoZWFkZXIgaXMgc3BlY2lmaWVkIGluIDx4
cmVmIHRhcmdldD0iUkZDMzU1MCIvPi4KKyAgICAgICAgVGhlIHVzZSBvZiB0aGUgZmllbGRzIG9m
IHRoZSBSVFAgaGVhZGVyIGJ5IHRoZSBPcHVzIHBheWxvYWQgZm9ybWF0IGlzCisgICAgICAgIGNv
bnNpc3RlbnQgd2l0aCB0aGF0IHNwZWNpZmljYXRpb24uPC90PgorCisgICAgICAgIDx0PlRoZSBw
YXlsb2FkIGxlbmd0aCBvZiBPcHVzIGlzIGFuIGludGVnZXIgbnVtYmVyIG9mIG9jdGV0cyBhbmQK
KyAgICAgICAgdGhlcmVmb3JlIG5vIHBhZGRpbmcgaXMgbmVjZXNzYXJ5LiBUaGUgcGF5bG9hZCBN
QVkgYmUgcGFkZGVkIGJ5IGFuCisgICAgICAgIGludGVnZXIgbnVtYmVyIG9mIG9jdGV0cyBhY2Nv
cmRpbmcgdG8gPHhyZWYgdGFyZ2V0PSJSRkMzNTUwIi8+LAorICAgICAgICBhbHRob3VnaCB0aGUg
T3B1cyBpbnRlcm5hbCBwYWRkaW5nIGlzIHByZWZlcnJlZC48L3Q+CisKKyAgICAgICAgPHQ+VGhl
IHRpbWVzdGFtcCwgc2VxdWVuY2UgbnVtYmVyLCBhbmQgbWFya2VyIGJpdCAoTSkgb2YgdGhlIFJU
UCBoZWFkZXIKKyAgICAgICAgYXJlIHVzZWQgaW4gYWNjb3JkYW5jZSB3aXRoIFNlY3Rpb24gNC4x
CisgICAgICAgIG9mJm5ic3A7PHhyZWYgdGFyZ2V0PSJSRkMzNTUxIi8+LjwvdD4KKworICAgICAg
ICA8dD5UaGUgUlRQIHBheWxvYWQgdHlwZSBmb3IgT3B1cyBpcyB0byBiZSBhc3NpZ25lZCBkeW5h
bWljYWxseS48L3Q+CisKKyAgICAgICAgPHQ+VGhlIHJlY2VpdmluZyBzaWRlIE1VU1QgYmUgcHJl
cGFyZWQgdG8gcmVjZWl2ZSBkdXBsaWNhdGUgUlRQCisgICAgICAgIHBhY2tldHMuIFRoZSByZWNl
aXZlciBNVVNUIHByb3ZpZGUgYXQgbW9zdCBvbmUgb2YgdGhvc2UgcGF5bG9hZHMgdG8gdGhlCisg
ICAgICAgIE9wdXMgZGVjb2RlciBmb3IgZGVjb2RpbmcsIGFuZCBNVVNUIGRpc2NhcmQgdGhlIG90
aGVycy48L3Q+CisKKyAgICAgICAgPHQ+T3B1cyBzdXBwb3J0cyA1IGRpZmZlcmVudCBhdWRpbyBi
YW5kd2lkdGhzLCB3aGljaCBjYW4gYmUgYWRqdXN0ZWQgZHVyaW5nCisgICAgICAgIGEgc3RyZWFt
LgorICAgICAgICBUaGUgUlRQIHRpbWVzdGFtcCBpcyBpbmNyZW1lbnRlZCB3aXRoIGEgNDgwMDAg
SHogY2xvY2sgcmF0ZQorICAgICAgICBmb3IgYWxsIG1vZGVzIG9mIE9wdXMgYW5kIGFsbCBzYW1w
bGluZyByYXRlcy4KKyAgICAgICAgVGhlIHVuaXQKKyAgICAgICAgZm9yIHRoZSB0aW1lc3RhbXAg
aXMgc2FtcGxlcyBwZXIgc2luZ2xlIChtb25vKSBjaGFubmVsLiBUaGUgUlRQIHRpbWVzdGFtcCBj
b3JyZXNwb25kcyB0byB0aGUKKyAgICAgICAgc2FtcGxlIHRpbWUgb2YgdGhlIGZpcnN0IGVuY29k
ZWQgc2FtcGxlIGluIHRoZSBlbmNvZGVkIGZyYW1lLgorICAgICAgICBGb3IgZGF0YSBlbmNvZGVk
IHdpdGggc2FtcGxpbmcgcmF0ZXMgb3RoZXIgdGhhbiA0ODAwMCBIeiwKKwl0aGUgc2FtcGxpbmcg
cmF0ZSBoYXMgdG8gYmUgYWRqdXN0ZWQgdG8gNDgwMDAgSHouPC90PgorCisgICAgICA8L3NlY3Rp
b24+CisKKyAgICAgIDxzZWN0aW9uIHRpdGxlPSdQYXlsb2FkIFN0cnVjdHVyZSc+CisgICAgICAg
IDx0PgorICAgICAgICAgIFRoZSBPcHVzIGVuY29kZXIgY2FuIG91dHB1dCBlbmNvZGVkIGZyYW1l
cyByZXByZXNlbnRpbmcgMi41LCA1LCAxMCwgMjAsCisgICAgICAgICAgNDAsIG9yIDYwJm5ic3A7
bXMgb2Ygc3BlZWNoIG9yIGF1ZGlvIGRhdGEuIEZ1cnRoZXIsIGFuIGFyYml0cmFyeSBudW1iZXIg
b2YgZnJhbWVzIGNhbiBiZQorICAgICAgICAgIGNvbWJpbmVkIGludG8gYSBwYWNrZXQsIHVwIHRv
IGEgbWF4aW11bSBwYWNrZXQgZHVyYXRpb24gcmVwcmVzZW50aW5nCisgICAgICAgICAgMTIwJm5i
c3A7bXMgb2Ygc3BlZWNoIG9yIGF1ZGlvIGRhdGEuIFRoZSBncm91cGluZyBvZiBvbmUgb3IgbW9y
ZSBPcHVzCisgICAgICAgICAgZnJhbWVzIGludG8gYSBzaW5nbGUgT3B1cyBwYWNrZXQgaXMgZGVm
aW5lZCBpbiBTZWN0aW9uJm5ic3A7MyBvZgorICAgICAgICAgIDx4cmVmIHRhcmdldD0iUkZDNjcx
NiIvPi4gQW4gUlRQIHBheWxvYWQgTVVTVCBjb250YWluIGV4YWN0bHkgb25lCisgICAgICAgICAg
T3B1cyBwYWNrZXQgYXMgZGVmaW5lZCBieSB0aGF0IGRvY3VtZW50LgorICAgICAgICA8L3Q+CisK
KyAgICAgICAgPHQ+PHhyZWYgdGFyZ2V0PSdwYXlsb2FkLXN0cnVjdHVyZScvPiBzaG93cyB0aGUg
c3RydWN0dXJlIGNvbWJpbmVkIHdpdGggdGhlIFJUUCBoZWFkZXIuPC90PgorCisgICAgICAgIDxm
aWd1cmUgYW5jaG9yPSJwYXlsb2FkLXN0cnVjdHVyZSIKKyAgICAgICAgICAgICAgICB0aXRsZT0i
UGFja2V0IHN0cnVjdHVyZSB3aXRoIFJUUCBoZWFkZXIiPgorICAgICAgICAgIDxhcnR3b3JrIGFs
aWduPSJjZW50ZXIiPgorICAgICAgICAgICAgPCFbQ0RBVEFbCisrLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLSsKK3xSVFAgSGVhZGVyfCBPcHVzIFBheWxvYWQgfAorKy0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0rCisgICAgICAgICAgIF1dPgorICAgICAgICAgIDwvYXJ0d29yaz4KKyAgICAgICAg
PC9maWd1cmU+CisKKyAgICAgICAgPHQ+CisgICAgICAgICAgPHhyZWYgdGFyZ2V0PSdvcHVzLXBh
Y2tldGl6YXRpb24nLz4gc2hvd3Mgc3VwcG9ydGVkIGZyYW1lIHNpemVzIGluCisgICAgICAgICAg
bWlsbGlzZWNvbmRzIG9mIGVuY29kZWQgc3BlZWNoIG9yIGF1ZGlvIGRhdGEgZm9yIHRoZSBzcGVl
Y2ggYW5kIGF1ZGlvIG1vZGVzCisgICAgICAgICAgKE1vZGUpIGFuZCBzYW1wbGluZyByYXRlcyAo
ZnMpIG9mIE9wdXMgYW5kIHNob3dzIGhvdyB0aGUgdGltZXN0YW1wIGlzCisgICAgICAgICAgaW5j
cmVtZW50ZWQgZm9yIHBhY2tldGl6YXRpb24gKHRzIGluY3IpLiBJZiB0aGUgT3B1cyBlbmNvZGVy
CisgICAgICAgICAgb3V0cHV0cyBtdWx0aXBsZSBlbmNvZGVkIGZyYW1lcyBpbnRvIGEgc2luZ2xl
IHBhY2tldCwgdGhlIHRpbWVzdGFtcAorICAgICAgICAgIGluY3JlbWVudCBpcyB0aGUgc3VtIG9m
IHRoZSBpbmNyZW1lbnRzIGZvciB0aGUgaW5kaXZpZHVhbCBmcmFtZXMuCisgICAgICAgIDwvdD4K
KworICAgICAgICA8dGV4dHRhYmxlIGFuY2hvcj0nb3B1cy1wYWNrZXRpemF0aW9uJyB0aXRsZT0i
U3VwcG9ydGVkIE9wdXMgZnJhbWUKKyAgICAgICAgIHNpemVzIGFuZCB0aW1lc3RhbXAgaW5jcmVt
ZW50cyBtYXJrZWQgd2l0aCBhbiBvLiBVbnN1cHBvcnRlZCBtYXJrZWQgd2l0aCBhbiB4LiI+Cisg
ICAgICAgICAgICA8dHRjb2wgYWxpZ249J2NlbnRlcic+TW9kZTwvdHRjb2w+CisgICAgICAgICAg
ICA8dHRjb2wgYWxpZ249J2NlbnRlcic+ZnM8L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFs
aWduPSdjZW50ZXInPjIuNTwvdHRjb2w+CisgICAgICAgICAgICA8dHRjb2wgYWxpZ249J2NlbnRl
cic+NTwvdHRjb2w+CisgICAgICAgICAgICA8dHRjb2wgYWxpZ249J2NlbnRlcic+MTA8L3R0Y29s
PgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPjIwPC90dGNvbD4KKyAgICAgICAg
ICAgIDx0dGNvbCBhbGlnbj0nY2VudGVyJz40MDwvdHRjb2w+CisgICAgICAgICAgICA8dHRjb2wg
YWxpZ249J2NlbnRlcic+NjA8L3R0Y29sPgorICAgICAgICAgICAgPGM+dHMgaW5jcjwvYz4KKyAg
ICAgICAgICAgIDxjPmFsbDwvYz4KKyAgICAgICAgICAgIDxjPjEyMDwvYz4KKyAgICAgICAgICAg
IDxjPjI0MDwvYz4KKyAgICAgICAgICAgIDxjPjQ4MDwvYz4KKyAgICAgICAgICAgIDxjPjk2MDwv
Yz4KKyAgICAgICAgICAgIDxjPjE5MjA8L2M+CisgICAgICAgICAgICA8Yz4yODgwPC9jPgorICAg
ICAgICAgICAgPGM+dm9pY2U8L2M+CisgICAgICAgICAgICA8Yz5OQi9NQi9XQi9TV0IvRkI8L2M+
CisgICAgICAgICAgICA8Yz54PC9jPgorICAgICAgICAgICAgPGM+eDwvYz4KKyAgICAgICAgICAg
IDxjPm88L2M+CisgICAgICAgICAgICA8Yz5vPC9jPgorICAgICAgICAgICAgPGM+bzwvYz4KKyAg
ICAgICAgICAgIDxjPm88L2M+CisgICAgICAgICAgICA8Yz5hdWRpbzwvYz4KKyAgICAgICAgICAg
IDxjPk5CL1dCL1NXQi9GQjwvYz4KKyAgICAgICAgICAgIDxjPm88L2M+CisgICAgICAgICAgICA8
Yz5vPC9jPgorICAgICAgICAgICAgPGM+bzwvYz4KKyAgICAgICAgICAgIDxjPm88L2M+CisgICAg
ICAgICAgICA8Yz54PC9jPgorICAgICAgICAgICAgPGM+eDwvYz4KKyAgICAgICAgICA8L3RleHR0
YWJsZT4KKworICAgICAgPC9zZWN0aW9uPgorCisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rp
b24gdGl0bGU9J0Nvbmdlc3Rpb24gQ29udHJvbCc+CisKKyAgICAgIDx0PlRoZSB0YXJnZXQgYml0
cmF0ZSBvZiBPcHVzIGNhbiBiZSBhZGp1c3RlZCBhdCBhbnkgcG9pbnQgaW4gdGltZSwgdGh1cwor
ICAgICAgYWxsb3dpbmcgZWZmaWNpZW50IGNvbmdlc3Rpb24gY29udHJvbC4gRnVydGhlcm1vcmUs
IHRoZSBhbW91bnQKKyAgICAgIG9mIGVuY29kZWQgc3BlZWNoIG9yIGF1ZGlvIGRhdGEgZW5jb2Rl
ZCBpbiBhCisgICAgICBzaW5nbGUgcGFja2V0IGNhbiBiZSB1c2VkIGZvciBjb25nZXN0aW9uIGNv
bnRyb2wsIHNpbmNlIHRoZSB0cmFuc21pc3Npb24KKyAgICAgIHJhdGUgaXMgaW52ZXJzZWx5IHBy
b3BvcnRpb25hbCB0byB0aGUgcGFja2V0IGR1cmF0aW9uLiBBIGxvd2VyIHBhY2tldAorICAgICAg
dHJhbnNtaXNzaW9uIHJhdGUgcmVkdWNlcyB0aGUgYW1vdW50IG9mIGhlYWRlciBvdmVyaGVhZCwg
YnV0IGF0IHRoZSBzYW1lCisgICAgICB0aW1lIGluY3JlYXNlcyBsYXRlbmN5IGFuZCBsb3NzIHNl
bnNpdGl2aXR5LCBzbyBpdCBvdWdodCB0byBiZSB1c2VkIHdpdGgKKyAgICAgIGNhcmUuPC90Pgor
CisgICAgICA8dD5TaW5jZSBVRFAgZG9lcyBub3QgcHJvdmlkZSBjb25nZXN0aW9uIGNvbnRyb2ws
IGFwcGxpY2F0aW9ucyB0aGF0IHVzZQorICAgICAgUlRQIG92ZXIgVURQIFNIT1VMRCBpbXBsZW1l
bnQgdGhlaXIgb3duIGNvbmdlc3Rpb24gY29udHJvbCBhYm92ZSB0aGUKKyAgICAgIFVEUCBsYXll
ciA8eHJlZiB0YXJnZXQ9IlJGQzU0MDUiLz4uIFdvcmsgaW4gdGhlIHJtY2F0IHdvcmtpbmcgZ3Jv
dXAKKyAgICAgIDx4cmVmIHRhcmdldD0icm1jYXQiLz4gZGVzY3JpYmVzIHRoZQorICAgICAgaW50
ZXJhY3Rpb25zIGFuZCBjb25jZXB0dWFsIGludGVyZmFjZXMgbmVjZXNzYXJ5IGJldHdlZW4gdGhl
IGFwcGxpY2F0aW9uCisgICAgICBjb21wb25lbnRzIHRoYXQgcmVsYXRlIHRvIGNvbmdlc3Rpb24g
Y29udHJvbCwgaW5jbHVkaW5nIHRoZSBSVFAgbGF5ZXIsCisgICAgICB0aGUgaGlnaGVyLWxldmVs
IG1lZGlhIGNvZGVjIGNvbnRyb2wgbGF5ZXIsIGFuZCB0aGUgbG93ZXItbGV2ZWwKKyAgICAgIHRy
YW5zcG9ydCBpbnRlcmZhY2UsIGFzIHdlbGwgYXMgY29tcG9uZW50cyBkZWRpY2F0ZWQgdG8gY29u
Z2VzdGlvbgorICAgICAgY29udHJvbCBmdW5jdGlvbnMuPC90PgorICAgIDwvc2VjdGlvbj4KKwor
ICAgIDxzZWN0aW9uIHRpdGxlPSdJQU5BIENvbnNpZGVyYXRpb25zJz4KKyAgICAgIDx0Pk9uZSBt
ZWRpYSBzdWJ0eXBlIChhdWRpby9vcHVzKSBoYXMgYmVlbiBkZWZpbmVkIGFuZCByZWdpc3RlcmVk
IGFzCisgICAgICBkZXNjcmliZWQgaW4gdGhlIGZvbGxvd2luZyBzZWN0aW9uLjwvdD4KKworICAg
ICAgPHNlY3Rpb24gdGl0bGU9J09wdXMgTWVkaWEgVHlwZSBSZWdpc3RyYXRpb24nPgorICAgICAg
ICA8dD5NZWRpYSB0eXBlIHJlZ2lzdHJhdGlvbiBpcyBkb25lIGFjY29yZGluZyB0byA8eHJlZgor
ICAgICAgICB0YXJnZXQ9IlJGQzY4MzgiLz4gYW5kIDx4cmVmIHRhcmdldD0iUkZDNDg1NSIvPi48
dnNwYWNlCisgICAgICAgIGJsYW5rTGluZXM9JzEnLz48L3Q+CisKKyAgICAgICAgICA8dD5UeXBl
IG5hbWU6IGF1ZGlvPHZzcGFjZSBibGFua0xpbmVzPScxJy8+PC90PgorICAgICAgICAgIDx0PlN1
YnR5cGUgbmFtZTogb3B1czx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKworICAgICAgICAg
IDx0PlJlcXVpcmVkIHBhcmFtZXRlcnM6PC90PgorICAgICAgICAgIDx0PjxsaXN0IHN0eWxlPSJo
YW5naW5nIj4KKyAgICAgICAgICAgIDx0IGhhbmdUZXh0PSJyYXRlOiI+IHRoZSBSVFAgdGltZXN0
YW1wIGlzIGluY3JlbWVudGVkIHdpdGggYQorICAgICAgICAgICAgNDgwMDAgSHogY2xvY2sgcmF0
ZSBmb3IgYWxsIG1vZGVzIG9mIE9wdXMgYW5kIGFsbCBzYW1wbGluZworICAgICAgICAgICAgcmF0
ZXMuIEZvciBkYXRhIGVuY29kZWQgd2l0aCBzYW1wbGluZyByYXRlcyBvdGhlciB0aGFuIDQ4MDAw
IEh6LAorICAgICAgICAgICAgdGhlIHNhbXBsaW5nIHJhdGUgaGFzIHRvIGJlIGFkanVzdGVkIHRv
IDQ4MDAwIEh6LgorICAgICAgICAgIDwvdD4KKyAgICAgICAgICA8L2xpc3Q+PC90PgorCisgICAg
ICAgICAgPHQ+T3B0aW9uYWwgcGFyYW1ldGVyczo8L3Q+CisKKyAgICAgICAgICA8dD48bGlzdCBz
dHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dCBoYW5nVGV4dD0ibWF4cGxheWJhY2tyYXRl
OiI+CisgICAgICAgICAgICAgIGEgaGludCBhYm91dCB0aGUgbWF4aW11bSBvdXRwdXQgc2FtcGxp
bmcgcmF0ZSB0aGF0IHRoZSByZWNlaXZlciBpcworICAgICAgICAgICAgICBjYXBhYmxlIG9mIHJl
bmRlcmluZyBpbiBIei4KKyAgICAgICAgICAgICAgVGhlIGRlY29kZXIgTVVTVCBiZSBjYXBhYmxl
IG9mIGRlY29kaW5nCisgICAgICAgICAgICAgIGFueSBhdWRpbyBiYW5kd2lkdGggYnV0IGR1ZSB0
byBoYXJkd2FyZSBsaW1pdGF0aW9ucyBvbmx5IHNpZ25hbHMKKyAgICAgICAgICAgICAgdXAgdG8g
dGhlIHNwZWNpZmllZCBzYW1wbGluZyByYXRlIGNhbiBiZSBwbGF5ZWQgYmFjay4gU2VuZGluZyBz
aWduYWxzCisgICAgICAgICAgICAgIHdpdGggaGlnaGVyIGF1ZGlvIGJhbmR3aWR0aCByZXN1bHRz
IGluIGhpZ2hlciB0aGFuIG5lY2Vzc2FyeSBuZXR3b3JrCisgICAgICAgICAgICAgIHVzYWdlIGFu
ZCBlbmNvZGluZyBjb21wbGV4aXR5LCBzbyBhbiBlbmNvZGVyIFNIT1VMRCBOT1QgZW5jb2RlCisg
ICAgICAgICAgICAgIGZyZXF1ZW5jaWVzIGFib3ZlIHRoZSBhdWRpbyBiYW5kd2lkdGggc3BlY2lm
aWVkIGJ5IG1heHBsYXliYWNrcmF0ZS4KKyAgICAgICAgICAgICAgVGhpcyBwYXJhbWV0ZXIgY2Fu
IHRha2UgYW55IHZhbHVlIGJldHdlZW4gODAwMCBhbmQgNDgwMDAsIGFsdGhvdWdoCisgICAgICAg
ICAgICAgIGNvbW1vbmx5IHRoZSB2YWx1ZSB3aWxsIG1hdGNoIG9uZSBvZiB0aGUgT3B1cyBiYW5k
d2lkdGhzCisgICAgICAgICAgICAgICg8eHJlZiB0YXJnZXQ9ImJhbmR3aWR0aF9kZWZpbml0aW9u
cyIvPikuCisgICAgICAgICAgICAgIEJ5IGRlZmF1bHQsIHRoZSByZWNlaXZlciBpcyBhc3N1bWVk
IHRvIGhhdmUgbm8gbGltaXRhdGlvbnMsIGkuZS4gNDgwMDAuCisgICAgICAgICAgICAgIDx2c3Bh
Y2UgYmxhbmtMaW5lcz0nMScvPgorICAgICAgICAgICAgPC90PgorCisgICAgICAgICAgICA8dCBo
YW5nVGV4dD0ic3Byb3AtbWF4Y2FwdHVyZXJhdGU6Ij4KKyAgICAgICAgICAgICAgYSBoaW50IGFi
b3V0IHRoZSBtYXhpbXVtIGlucHV0IHNhbXBsaW5nIHJhdGUgdGhhdCB0aGUgc2VuZGVyIGlzIGxp
a2VseSB0byBwcm9kdWNlLgorICAgICAgICAgICAgICBUaGlzIGlzIG5vdCBhIGd1YXJhbnRlZSB0
aGF0IHRoZSBzZW5kZXIgd2lsbCBuZXZlciBzZW5kIGFueSBoaWdoZXIgYmFuZHdpZHRoCisgICAg
ICAgICAgICAgIChlLmcuIGl0IGNvdWxkIHNlbmQgYSBwcmUtcmVjb3JkZWQgcHJvbXB0IHRoYXQg
dXNlcyBhIGhpZ2hlciBiYW5kd2lkdGgpLCBidXQgaXQKKyAgICAgICAgICAgICAgaW5kaWNhdGVz
IHRvIHRoZSByZWNlaXZlciB0aGF0IGZyZXF1ZW5jaWVzIGFib3ZlIHRoaXMgbWF4aW11bSBjYW4g
c2FmZWx5IGJlIGRpc2NhcmRlZC4KKyAgICAgICAgICAgICAgVGhpcyBwYXJhbWV0ZXIgaXMgdXNl
ZnVsIHRvIGF2b2lkIHdhc3RpbmcgcmVjZWl2ZXIgcmVzb3VyY2VzIGJ5IG9wZXJhdGluZyB0aGUg
YXVkaW8KKyAgICAgICAgICAgICAgcHJvY2Vzc2luZyBwaXBlbGluZSAoZS5nLiBlY2hvIGNhbmNl
bGxhdGlvbikgYXQgYSBoaWdoZXIgcmF0ZSB0aGFuIG5lY2Vzc2FyeS4KKyAgICAgICAgICAgICAg
VGhpcyBwYXJhbWV0ZXIgY2FuIHRha2UgYW55IHZhbHVlIGJldHdlZW4gODAwMCBhbmQgNDgwMDAs
IGFsdGhvdWdoCisgICAgICAgICAgICAgIGNvbW1vbmx5IHRoZSB2YWx1ZSB3aWxsIG1hdGNoIG9u
ZSBvZiB0aGUgT3B1cyBiYW5kd2lkdGhzCisgICAgICAgICAgICAgICg8eHJlZiB0YXJnZXQ9ImJh
bmR3aWR0aF9kZWZpbml0aW9ucyIvPikuCisgICAgICAgICAgICAgIEJ5IGRlZmF1bHQsIHRoZSBz
ZW5kZXIgaXMgYXNzdW1lZCB0byBoYXZlIG5vIGxpbWl0YXRpb25zLCBpLmUuIDQ4MDAwLgorICAg
ICAgICAgICAgICA8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz4KKyAgICAgICAgICAgIDwvdD4KKwor
ICAgICAgICAgICAgPHQgaGFuZ1RleHQ9Im1heHB0aW1lOiI+IHRoZSBtYXhpbXVtIGR1cmF0aW9u
IG9mIG1lZGlhIHJlcHJlc2VudGVkCisgICAgICAgICAgICBieSBhIHBhY2tldCAoYWNjb3JkaW5n
IHRvIFNlY3Rpb24mbmJzcDs2IG9mCisgICAgICAgICAgICA8eHJlZiB0YXJnZXQ9IlJGQzQ1NjYi
Lz4pIHRoYXQgYSBkZWNvZGVyIHdhbnRzIHRvIHJlY2VpdmUsIGluCisgICAgICAgICAgICBtaWxs
aXNlY29uZHMgcm91bmRlZCB1cCB0byB0aGUgbmV4dCBmdWxsIGludGVnZXIgdmFsdWUuCisgICAg
ICAgICAgICBQb3NzaWJsZSB2YWx1ZXMgYXJlIDMsIDUsIDEwLCAyMCwgNDAsIDYwLCBvciBhbiBh
cmJpdHJhcnkKKyAgICAgICAgICAgIG11bHRpcGxlIG9mIGFuIE9wdXMgZnJhbWUgc2l6ZSByb3Vu
ZGVkIHVwIHRvIHRoZSBuZXh0IGZ1bGwgaW50ZWdlcgorICAgICAgICAgICAgdmFsdWUsIHVwIHRv
IGEgbWF4aW11bSB2YWx1ZSBvZiAxMjAsIGFzCisgICAgICAgICAgICBkZWZpbmVkIGluIDx4cmVm
IHRhcmdldD0nb3B1cy1ydHAtcGF5bG9hZC1mb3JtYXQnLz4uIElmIG5vIHZhbHVlIGlzCisgICAg
ICAgICAgICAgIHNwZWNpZmllZCwgdGhlIGRlZmF1bHQgaXMgMTIwLgorICAgICAgICAgICAgICA8
dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisKKyAgICAgICAgICAgIDx0IGhhbmdUZXh0PSJw
dGltZToiPiB0aGUgcHJlZmVycmVkIGR1cmF0aW9uIG9mIG1lZGlhIHJlcHJlc2VudGVkCisgICAg
ICAgICAgICBieSBhIHBhY2tldCAoYWNjb3JkaW5nIHRvIFNlY3Rpb24mbmJzcDs2IG9mCisgICAg
ICAgICAgICA8eHJlZiB0YXJnZXQ9IlJGQzQ1NjYiLz4pIHRoYXQgYSBkZWNvZGVyIHdhbnRzIHRv
IHJlY2VpdmUsIGluCisgICAgICAgICAgICBtaWxsaXNlY29uZHMgcm91bmRlZCB1cCB0byB0aGUg
bmV4dCBmdWxsIGludGVnZXIgdmFsdWUuCisgICAgICAgICAgICBQb3NzaWJsZSB2YWx1ZXMgYXJl
IDMsIDUsIDEwLCAyMCwgNDAsIDYwLCBvciBhbiBhcmJpdHJhcnkKKyAgICAgICAgICAgIG11bHRp
cGxlIG9mIGFuIE9wdXMgZnJhbWUgc2l6ZSByb3VuZGVkIHVwIHRvIHRoZSBuZXh0IGZ1bGwgaW50
ZWdlcgorICAgICAgICAgICAgdmFsdWUsIHVwIHRvIGEgbWF4aW11bSB2YWx1ZSBvZiAxMjAsIGFz
IGRlZmluZWQgaW4gPHhyZWYKKyAgICAgICAgICAgIHRhcmdldD0nb3B1cy1ydHAtcGF5bG9hZC1m
b3JtYXQnLz4uIElmIG5vIHZhbHVlIGlzCisgICAgICAgICAgICAgIHNwZWNpZmllZCwgdGhlIGRl
ZmF1bHQgaXMgMjAuIAorICAgICAgICAgICAgICA8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+
CisKKyAgICAgICAgICAgIDx0IGhhbmdUZXh0PSJtYXhhdmVyYWdlYml0cmF0ZToiPiBzcGVjaWZp
ZXMgdGhlIG1heGltdW0gYXZlcmFnZQorICAgICAgICAgICAgcmVjZWl2ZSBiaXRyYXRlIG9mIGEg
c2Vzc2lvbiBpbiBiaXRzIHBlciBzZWNvbmQgKGIvcykuIFRoZSBhY3R1YWwKKyAgICAgICAgICAg
IHZhbHVlIG9mIHRoZSBiaXRyYXRlIGNhbiB2YXJ5LCBhcyBpdCBpcyBkZXBlbmRlbnQgb24gdGhl
CisgICAgICAgICAgICBjaGFyYWN0ZXJpc3RpY3Mgb2YgdGhlIG1lZGlhIGluIGEgcGFja2V0LiBO
b3RlIHRoYXQgdGhlIG1heGltdW0KKyAgICAgICAgICAgIGF2ZXJhZ2UgYml0cmF0ZSBNQVkgYmUg
bW9kaWZpZWQgZHluYW1pY2FsbHkgZHVyaW5nIGEgc2Vzc2lvbi4gQW55CisgICAgICAgICAgICBw
b3NpdGl2ZSBpbnRlZ2VyIGlzIGFsbG93ZWQsIGJ1dCB2YWx1ZXMgb3V0c2lkZSB0aGUgcmFuZ2UK
KyAgICAgICAgICAgIDYwMDAgdG8gNTEwMDAwIFNIT1VMRCBiZSBpZ25vcmVkLiBJZiBubyB2YWx1
ZSBpcyBzcGVjaWZpZWQsIHRoZQorICAgICAgICAgICAgbWF4aW11bSB2YWx1ZSBzcGVjaWZpZWQg
aW4gPHhyZWYgdGFyZ2V0PSdiaXRyYXRlX2J5X2JhbmR3aWR0aCcvPgorICAgICAgICAgICAgZm9y
IHRoZSBjb3JyZXNwb25kaW5nIG1vZGUgb2YgT3B1cyBhbmQgY29ycmVzcG9uZGluZyBtYXhwbGF5
YmFja3JhdGUKKyAgICAgICAgICAgIGlzIHRoZSBkZWZhdWx0Ljx2c3BhY2UgYmxhbmtMaW5lcz0n
MScvPjwvdD4KKworICAgICAgICAgICAgPHQgaGFuZ1RleHQ9InN0ZXJlbzoiPgorICAgICAgICAg
ICAgICBzcGVjaWZpZXMgd2hldGhlciB0aGUgZGVjb2RlciBwcmVmZXJzIHJlY2VpdmluZyBzdGVy
ZW8gb3IgbW9ubyBzaWduYWxzLgorICAgICAgICAgICAgICBQb3NzaWJsZSB2YWx1ZXMgYXJlIDEg
YW5kIDAgd2hlcmUgMSBzcGVjaWZpZXMgdGhhdCBzdGVyZW8gc2lnbmFscyBhcmUgcHJlZmVycmVk
LAorICAgICAgICAgICAgICBhbmQgMCBzcGVjaWZpZXMgdGhhdCBvbmx5IG1vbm8gc2lnbmFscyBh
cmUgcHJlZmVycmVkLgorICAgICAgICAgICAgICBJbmRlcGVuZGVudCBvZiB0aGUgc3RlcmVvIHBh
cmFtZXRlciBldmVyeSByZWNlaXZlciBNVVNUIGJlIGFibGUgdG8gcmVjZWl2ZSBhbmQKKyAgICAg
ICAgICAgICAgZGVjb2RlIHN0ZXJlbyBzaWduYWxzIGJ1dCBzZW5kaW5nIHN0ZXJlbyBzaWduYWxz
IHRvIGEgcmVjZWl2ZXIgdGhhdCBzaWduYWxlZCBhCisgICAgICAgICAgICAgIHByZWZlcmVuY2Ug
Zm9yIG1vbm8gc2lnbmFscyBtYXkgcmVzdWx0IGluIGhpZ2hlciB0aGFuIG5lY2Vzc2FyeSBuZXR3
b3JrCisgICAgICAgICAgICAgIHV0aWxpemF0aW9uIGFuZCBlbmNvZGluZyBjb21wbGV4aXR5LiBJ
ZiBubyB2YWx1ZSBpcyBzcGVjaWZpZWQsCisgICAgICAgICAgICAgIHRoZSBkZWZhdWx0IGlzIDAg
KG1vbm8pLjx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPgorICAgICAgICAgICAgPC90PgorCisgICAg
ICAgICAgICA8dCBoYW5nVGV4dD0ic3Byb3Atc3RlcmVvOiI+CisgICAgICAgICAgICAgIHNwZWNp
ZmllcyB3aGV0aGVyIHRoZSBzZW5kZXIgaXMgbGlrZWx5IHRvIHByb2R1Y2Ugc3RlcmVvIGF1ZGlv
LgorICAgICAgICAgICAgICBQb3NzaWJsZSB2YWx1ZXMgYXJlIDEgYW5kIDAsIHdoZXJlIDEgc3Bl
Y2lmaWVzIHRoYXQgc3RlcmVvIHNpZ25hbHMgYXJlIGxpa2VseSB0bworICAgICAgICAgICAgICBi
ZSBzZW50LCBhbmQgMCBzcGVjaWZpZXMgdGhhdCB0aGUgc2VuZGVyIHdpbGwgbGlrZWx5IG9ubHkg
c2VuZCBtb25vLgorICAgICAgICAgICAgICBUaGlzIGlzIG5vdCBhIGd1YXJhbnRlZSB0aGF0IHRo
ZSBzZW5kZXIgd2lsbCBuZXZlciBzZW5kIHN0ZXJlbyBhdWRpbworICAgICAgICAgICAgICAoZS5n
LiBpdCBjb3VsZCBzZW5kIGEgcHJlLXJlY29yZGVkIHByb21wdCB0aGF0IHVzZXMgc3RlcmVvKSwg
YnV0IGl0CisgICAgICAgICAgICAgIGluZGljYXRlcyB0byB0aGUgcmVjZWl2ZXIgdGhhdCB0aGUg
cmVjZWl2ZWQgc2lnbmFsIGNhbiBiZSBzYWZlbHkgZG93bm1peGVkIHRvIG1vbm8uCisgICAgICAg
ICAgICAgIFRoaXMgcGFyYW1ldGVyIGlzIHVzZWZ1bCB0byBhdm9pZCB3YXN0aW5nIHJlY2VpdmVy
IHJlc291cmNlcyBieSBvcGVyYXRpbmcgdGhlIGF1ZGlvCisgICAgICAgICAgICAgIHByb2Nlc3Np
bmcgcGlwZWxpbmUgKGUuZy4gZWNobyBjYW5jZWxsYXRpb24pIGluIHN0ZXJlbyB3aGVuIG5vdCBu
ZWNlc3NhcnkuCisgICAgICAgICAgICAgIElmIG5vIHZhbHVlIGlzIHNwZWNpZmllZCwgdGhlIGRl
ZmF1bHQgaXMgMAorICAgICAgICAgICAgICAobW9ubykuPHZzcGFjZSBibGFua0xpbmVzPScxJy8+
CisgICAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICAgIDx0IGhhbmdUZXh0PSJjYnI6Ij4KKyAg
ICAgICAgICAgICAgc3BlY2lmaWVzIGlmIHRoZSBkZWNvZGVyIHByZWZlcnMgdGhlIHVzZSBvZiBh
IGNvbnN0YW50IGJpdHJhdGUgdmVyc3VzCisgICAgICAgICAgICAgIHZhcmlhYmxlIGJpdHJhdGUu
IFBvc3NpYmxlIHZhbHVlcyBhcmUgMSBhbmQgMCwgd2hlcmUgMSBzcGVjaWZpZXMgY29uc3RhbnQK
KyAgICAgICAgICAgICAgYml0cmF0ZSBhbmQgMCBzcGVjaWZpZXMgdmFyaWFibGUgYml0cmF0ZS4g
SWYgbm8gdmFsdWUgaXMgc3BlY2lmaWVkLAorICAgICAgICAgICAgICB0aGUgZGVmYXVsdCBpcyAw
ICh2YnIpLiBXaGVuIGNiciBpcyAxLCB0aGUgbWF4aW11bSBhdmVyYWdlIGJpdHJhdGUgY2FuIHN0
aWxsCisgICAgICAgICAgICAgIGNoYW5nZSwgZS5nLiB0byBhZGFwdCB0byBjaGFuZ2luZyBuZXR3
b3JrIGNvbmRpdGlvbnMuPHZzcGFjZSBibGFua0xpbmVzPScxJy8+CisgICAgICAgICAgICA8L3Q+
CisKKyAgICAgICAgICAgIDx0IGhhbmdUZXh0PSJ1c2VpbmJhbmRmZWM6Ij4gc3BlY2lmaWVzIHRo
YXQgdGhlIGRlY29kZXIgaGFzIHRoZSBjYXBhYmlsaXR5IHRvCisgICAgICAgICAgICB0YWtlIGFk
dmFudGFnZSBvZiB0aGUgT3B1cyBpbi1iYW5kIEZFQy4gUG9zc2libGUgdmFsdWVzIGFyZSAxIGFu
ZCAwLgorICAgICAgICAgICAgUHJvdmlkaW5nIDAgd2hlbiBGRUMgY2Fubm90IGJlIHVzZWQgb24g
dGhlIHJlY2VpdmluZyBzaWRlIGlzCisgICAgICAgICAgICBSRUNPTU1FTkRFRC4gSWYgbm8KKyAg
ICAgICAgICAgIHZhbHVlIGlzIHNwZWNpZmllZCwgdXNlaW5iYW5kZmVjIGlzIGFzc3VtZWQgdG8g
YmUgMC4KKyAgICAgICAgICAgIFRoaXMgcGFyYW1ldGVyIGlzIG9ubHkgYSBwcmVmZXJlbmNlIGFu
ZCB0aGUgcmVjZWl2ZXIgTVVTVCBiZSBhYmxlIHRvIHByb2Nlc3MKKyAgICAgICAgICAgIHBhY2tl
dHMgdGhhdCBpbmNsdWRlIEZFQyBpbmZvcm1hdGlvbiwgZXZlbiBpZiBpdCBtZWFucyB0aGUgRkVD
IHBhcnQgaXMgZGlzY2FyZGVkLgorICAgICAgICAgICAgPHZzcGFjZSBibGFua0xpbmVzPScxJy8+
PC90PgorCisgICAgICAgICAgICA8dCBoYW5nVGV4dD0idXNlZHR4OiI+IHNwZWNpZmllcyBpZiB0
aGUgZGVjb2RlciBwcmVmZXJzIHRoZSB1c2Ugb2YKKyAgICAgICAgICAgIERUWC4gUG9zc2libGUg
dmFsdWVzIGFyZSAxIGFuZCAwLiBJZiBubyB2YWx1ZSBpcyBzcGVjaWZpZWQsIHRoZQorICAgICAg
ICAgICAgZGVmYXVsdCBpcyAwLjx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKyAgICAgICAg
ICA8L2xpc3Q+PC90PgorCisgICAgICAgICAgPHQ+RW5jb2RpbmcgY29uc2lkZXJhdGlvbnM6PHZz
cGFjZSBibGFua0xpbmVzPScxJy8+PC90PgorICAgICAgICAgIDx0PjxsaXN0IHN0eWxlPSJoYW5n
aW5nIj4KKyAgICAgICAgICAgIDx0PlRoZSBPcHVzIG1lZGlhIHR5cGUgaXMgZnJhbWVkIGFuZCBj
b25zaXN0cyBvZiBiaW5hcnkgZGF0YSBhY2NvcmRpbmcKKyAgICAgICAgICAgIHRvIFNlY3Rpb24m
bmJzcDs0LjggaW4gPHhyZWYgdGFyZ2V0PSJSRkM2ODM4Ii8+LjwvdD4KKyAgICAgICAgICA8L2xp
c3Q+PC90PgorCisgICAgICAgICAgPHQ+U2VjdXJpdHkgY29uc2lkZXJhdGlvbnM6IDwvdD4KKyAg
ICAgICAgICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dD5TZWUgPHhy
ZWYgdGFyZ2V0PSdzZWN1cml0eS1jb25zaWRlcmF0aW9ucycvPiBvZiB0aGlzIGRvY3VtZW50Ljwv
dD4KKyAgICAgICAgICA8L2xpc3Q+PC90PgorCisgICAgICAgICAgPHQ+SW50ZXJvcGVyYWJpbGl0
eSBjb25zaWRlcmF0aW9uczogbm9uZTx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKwkgIDx0
PlB1Ymxpc2hlZCBzcGVjaWZpY2F0aW9uOiBSRkMgW1hYWFhdPC90PgorCSAgPHQ+Tm90ZSB0byB0
aGUgUkZDIEVkaXRvcjogUmVwbGFjZSBbWFhYWF0gd2l0aCB0aGUgbnVtYmVyIG9mIHRoZSBwdWJs
aXNoZWQKKyAgICAgICAgICBSRkMuPHZzcGFjZSBibGFua0xpbmVzPScxJy8+PC90PgorCisgICAg
ICAgICAgPHQ+QXBwbGljYXRpb25zIHRoYXQgdXNlIHRoaXMgbWVkaWEgdHlwZTogPC90PgorICAg
ICAgICAgIDx0PjxsaXN0IHN0eWxlPSJoYW5naW5nIj4KKyAgICAgICAgICAgIDx0PkFueSBhcHBs
aWNhdGlvbiB0aGF0IHJlcXVpcmVzIHRoZSB0cmFuc3BvcnQgb2YKKyAgICAgICAgICAgIHNwZWVj
aCBvciBhdWRpbyBkYXRhIGNhbiB1c2UgdGhpcyBtZWRpYSB0eXBlLiBTb21lIGV4YW1wbGVzIGFy
ZSwKKyAgICAgICAgICAgIGJ1dCBub3QgbGltaXRlZCB0bywgYXVkaW8gYW5kIHZpZGVvIGNvbmZl
cmVuY2luZywgVm9pY2Ugb3ZlciBJUCwKKyAgICAgICAgICAgIG1lZGlhIHN0cmVhbWluZy48L3Q+
CisgICAgICAgICAgPC9saXN0PjwvdD4KKworICAgICAgICAgIDx0PkZyYWdtZW50IGlkZW50aWZp
ZXIgY29uc2lkZXJhdGlvbnM6IE4vQTx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKworICAg
ICAgICAgIDx0PlBlcnNvbiAmYW1wOyBlbWFpbCBhZGRyZXNzIHRvIGNvbnRhY3QgZm9yIGZ1cnRo
ZXIgaW5mb3JtYXRpb246PC90PgorICAgICAgICAgIDx0PjxsaXN0IHN0eWxlPSJoYW5naW5nIj4K
KyAgICAgICAgICAgIDx0PlNJTEsgU3VwcG9ydCBzaWxrc3VwcG9ydEBza3lwZS5uZXQ8L3Q+Cisg
ICAgICAgICAgICA8dD5KZWFuLU1hcmMgVmFsaW4gam12YWxpbkBqbXZhbGluLmNhPC90PgorICAg
ICAgICAgIDwvbGlzdD48L3Q+CisKKyAgICAgICAgICA8dD5JbnRlbmRlZCB1c2FnZTogQ09NTU9O
PHZzcGFjZSBibGFua0xpbmVzPScxJy8+PC90PgorCisgICAgICAgICAgPHQ+UmVzdHJpY3Rpb25z
IG9uIHVzYWdlOjx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKworICAgICAgICAgIDx0Pjxs
aXN0IHN0eWxlPSJoYW5naW5nIj4KKyAgICAgICAgICAgIDx0PkZvciB0cmFuc2ZlciBvdmVyIFJU
UCwgdGhlIFJUUCBwYXlsb2FkIGZvcm1hdCAoPHhyZWYKKyAgICAgICAgICAgIHRhcmdldD0nb3B1
cy1ydHAtcGF5bG9hZC1mb3JtYXQnLz4gb2YgdGhpcyBkb2N1bWVudCkgU0hBTEwgYmUKKyAgICAg
ICAgICAgIHVzZWQuPC90PgorICAgICAgICAgIDwvbGlzdD48L3Q+CisKKyAgICAgICAgICA8dD5B
dXRob3I6PC90PgorICAgICAgICAgIDx0PjxsaXN0IHN0eWxlPSJoYW5naW5nIj4KKyAgICAgICAg
ICAgIDx0Pkp1bGlhbiBTcGl0dGthIGpzcGl0dGthQGdtYWlsLmNvbTx2c3BhY2UgYmxhbmtMaW5l
cz0nMScvPjwvdD4KKyAgICAgICAgICAgIDx0PktvZW4gVm9zIGtvZW52b3M3NEBnbWFpbC5jb208
dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisgICAgICAgICAgICA8dD5KZWFuLU1hcmMgVmFs
aW4gam12YWxpbkBqbXZhbGluLmNhPHZzcGFjZSBibGFua0xpbmVzPScxJy8+PC90PgorICAgICAg
ICAgIDwvbGlzdD48L3Q+CisKKyAgICAgICAgICA8dD4gQ2hhbmdlIGNvbnRyb2xsZXI6IElFVEYg
UGF5bG9hZCBXb3JraW5nIEdyb3VwIGRlbGVnYXRlZCBmcm9tIHRoZSBJRVNHPC90PgorICAgICAg
PC9zZWN0aW9uPgorICAgIDwvc2VjdGlvbj4KKyAgICAKKyAgICA8c2VjdGlvbiB0aXRsZT0nU0RQ
IENvbnNpZGVyYXRpb25zJz4KKyAgICAgICAgPHQ+VGhlIGluZm9ybWF0aW9uIGRlc2NyaWJlZCBp
biB0aGUgbWVkaWEgdHlwZSBzcGVjaWZpY2F0aW9uIGhhcyBhCisgICAgICAgIHNwZWNpZmljIG1h
cHBpbmcgdG8gZmllbGRzIGluIHRoZSBTZXNzaW9uIERlc2NyaXB0aW9uIFByb3RvY29sIChTRFAp
CisgICAgICAgIDx4cmVmIHRhcmdldD0iUkZDNDU2NiIvPiwgd2hpY2ggaXMgY29tbW9ubHkgdXNl
ZCB0byBkZXNjcmliZSBSVFAKKyAgICAgICAgc2Vzc2lvbnMuIFdoZW4gU0RQIGlzIHVzZWQgdG8g
c3BlY2lmeSBzZXNzaW9ucyBlbXBsb3lpbmcgT3B1cywKKyAgICAgICAgdGhlIG1hcHBpbmcgaXMg
YXMgZm9sbG93czo8L3Q+CisKKyAgICAgICAgPHQ+CisgICAgICAgICAgPGxpc3Qgc3R5bGU9InN5
bWJvbHMiPgorICAgICAgICAgICAgPHQ+VGhlIG1lZGlhIHR5cGUgKCJhdWRpbyIpIGdvZXMgaW4g
U0RQICJtPSIgYXMgdGhlIG1lZGlhIG5hbWUuPC90PgorCisgICAgICAgICAgICA8dD5UaGUgbWVk
aWEgc3VidHlwZSAoIm9wdXMiKSBnb2VzIGluIFNEUCAiYT1ydHBtYXAiIGFzIHRoZSBlbmNvZGlu
ZworICAgICAgICAgICAgbmFtZS4gVGhlIFJUUCBjbG9jayByYXRlIGluICJhPXJ0cG1hcCIgTVVT
VCBiZSA0ODAwMCBhbmQgdGhlIG51bWJlciBvZgorICAgICAgICAgICAgY2hhbm5lbHMgTVVTVCBi
ZSAyLjwvdD4KKworICAgICAgICAgICAgPHQ+VGhlIE9QVElPTkFMIG1lZGlhIHR5cGUgcGFyYW1l
dGVycyAicHRpbWUiIGFuZCAibWF4cHRpbWUiIGFyZQorICAgICAgICAgICAgbWFwcGVkIHRvICJh
PXB0aW1lIiBhbmQgImE9bWF4cHRpbWUiIGF0dHJpYnV0ZXMsIHJlc3BlY3RpdmVseSwgaW4gdGhl
CisgICAgICAgICAgICBTRFAuPC90PgorCisgICAgICAgICAgICA8dD5UaGUgT1BUSU9OQUwgbWVk
aWEgdHlwZSBwYXJhbWV0ZXJzICJtYXhhdmVyYWdlYml0cmF0ZSIsCisgICAgICAgICAgICAibWF4
cGxheWJhY2tyYXRlIiwgInN0ZXJlbyIsICJjYnIiLCAidXNlaW5iYW5kZmVjIiwgYW5kCisgICAg
ICAgICAgICAidXNlZHR4Iiwgd2hlbiBwcmVzZW50LCBNVVNUIGJlIGluY2x1ZGVkIGluIHRoZSAi
YT1mbXRwIiBhdHRyaWJ1dGUKKyAgICAgICAgICAgIGluIHRoZSBTRFAsIGV4cHJlc3NlZCBhcyBh
IG1lZGlhIHR5cGUgc3RyaW5nIGluIHRoZSBmb3JtIG9mIGEKKyAgICAgICAgICAgIHNlbWljb2xv
bi1zZXBhcmF0ZWQgbGlzdCBvZiBwYXJhbWV0ZXI9dmFsdWUgcGFpcnMgKGUuZy4sCisgICAgICAg
ICAgICBtYXhwbGF5YmFja3JhdGU9NDgwMDApLiBUaGV5IE1VU1QgTk9UIGJlIHNwZWNpZmllZCBp
biBhbgorICAgICAgICAgICAgU1NSQy1zcGVjaWZpYyAiZm10cCIgc291cmNlLWxldmVsIGF0dHJp
YnV0ZSAoYXMgZGVmaW5lZCBpbgorICAgICAgICAgICAgU2VjdGlvbiZuYnNwOzYuMyBvZiZuYnNw
Ozx4cmVmIHRhcmdldD0iUkZDNTU3NiIvPikuPC90PgorCisgICAgICAgICAgICA8dD5UaGUgT1BU
SU9OQUwgbWVkaWEgdHlwZSBwYXJhbWV0ZXJzICJzcHJvcC1tYXhjYXB0dXJlcmF0ZSIsCisgICAg
ICAgICAgICBhbmQgInNwcm9wLXN0ZXJlbyIgTUFZIGJlIG1hcHBlZCB0byB0aGUgImE9Zm10cCIg
U0RQIGF0dHJpYnV0ZSBieQorICAgICAgICAgICAgY29weWluZyB0aGVtIGRpcmVjdGx5IGZyb20g
dGhlIG1lZGlhIHR5cGUgcGFyYW1ldGVyIHN0cmluZyBhcyBwYXJ0CisgICAgICAgICAgICBvZiB0
aGUgc2VtaWNvbG9uLXNlcGFyYXRlZCBsaXN0IG9mIHBhcmFtZXRlcj12YWx1ZSBwYWlycyAoZS5n
LiwKKyAgICAgICAgICAgIHNwcm9wLXN0ZXJlbz0xKS4gVGhlc2Ugc2FtZSBPUFRJT05BTCBtZWRp
YSB0eXBlIHBhcmFtZXRlcnMgTUFZIGFsc28KKyAgICAgICAgICAgIGJlIHNwZWNpZmllZCB1c2lu
ZyBhbiBTU1JDLXNwZWNpZmljICJmbXRwIiBzb3VyY2UtbGV2ZWwgYXR0cmlidXRlCisgICAgICAg
ICAgICBhcyBkZXNjcmliZWQgaW4gU2VjdGlvbiZuYnNwOzYuMyBvZiZuYnNwOzx4cmVmIHRhcmdl
dD0iUkZDNTU3NiIvPi4KKyAgICAgICAgICAgIFRoZXkgTUFZIGJlIHNwZWNpZmllZCBpbiBib3Ro
IHBsYWNlcywgaW4gd2hpY2ggY2FzZSB0aGUgcGFyYW1ldGVyCisgICAgICAgICAgICBpbiB0aGUg
c291cmNlLWxldmVsIGF0dHJpYnV0ZSBvdmVycmlkZXMgdGhlIG9uZSBmb3VuZCBvbiB0aGUKKyAg
ICAgICAgICAgICJhPWZtdHAiIGxpbmUuIFRoZSB2YWx1ZSBvZiBhbnkgcGFyYW1ldGVyIHdoaWNo
IGlzIG5vdCBzcGVjaWZpZWQgaW4KKyAgICAgICAgICAgIGEgc291cmNlLWxldmVsIHNvdXJjZSBh
dHRyaWJ1dGUgTVVTVCBiZSB0YWtlbiBmcm9tIHRoZSAiYT1mbXRwIgorICAgICAgICAgICAgbGlu
ZSwgaWYgaXQgaXMgcHJlc2VudCB0aGVyZS48L3Q+CisKKyAgICAgICAgICA8L2xpc3Q+CisgICAg
ICAgIDwvdD4KKworICAgICAgICA8dD5CZWxvdyBhcmUgc29tZSBleGFtcGxlcyBvZiBTRFAgc2Vz
c2lvbiBkZXNjcmlwdGlvbnMgZm9yIE9wdXM6PC90PgorCisgICAgICAgIDx0PkV4YW1wbGUgMTog
U3RhbmRhcmQgbW9ubyBzZXNzaW9uIHdpdGggNDgwMDAgSHogY2xvY2sgcmF0ZTwvdD4KKyAgICAg
ICAgICA8ZmlndXJlPgorICAgICAgICAgICAgPGFydHdvcms+CisgICAgICAgICAgICAgIDwhW0NE
QVRBWworICAgIG09YXVkaW8gNTQzMTIgUlRQL0FWUCAxMDEKKyAgICBhPXJ0cG1hcDoxMDEgb3B1
cy80ODAwMC8yCisgICAgICAgICAgICAgIF1dPgorICAgICAgICAgICAgPC9hcnR3b3JrPgorICAg
ICAgICAgIDwvZmlndXJlPgorCisKKyAgICAgICAgPHQ+RXhhbXBsZSAyOiAxNjAwMCBIeiBjbG9j
ayByYXRlLCBtYXhpbXVtIHBhY2tldCBzaXplIG9mIDQwIG1zLAorICAgICAgICByZWNvbW1lbmRl
ZCBwYWNrZXQgc2l6ZSBvZiA0MCBtcywgbWF4aW11bSBhdmVyYWdlIGJpdHJhdGUgb2YgMjAwMDAg
YnBzLAorICAgICAgICBwcmVmZXJzIHRvIHJlY2VpdmUgc3RlcmVvIGJ1dCBvbmx5IHBsYW5zIHRv
IHNlbmQgbW9ubywgRkVDIGlzIGRlc2lyZWQsCisgICAgICAgIERUWCBpcyBub3QgZGVzaXJlZDwv
dD4KKworICAgICAgICA8ZmlndXJlPgorICAgICAgICAgIDxhcnR3b3JrPgorICAgICAgICAgICAg
PCFbQ0RBVEFbCisgICAgbT1hdWRpbyA1NDMxMiBSVFAvQVZQIDEwMQorICAgIGE9cnRwbWFwOjEw
MSBvcHVzLzQ4MDAwLzIKKyAgICBhPWZtdHA6MTAxIG1heHBsYXliYWNrcmF0ZT0xNjAwMDsgc3By
b3AtbWF4Y2FwdHVyZXJhdGU9MTYwMDA7CisgICAgbWF4YXZlcmFnZWJpdHJhdGU9MjAwMDA7IHN0
ZXJlbz0xOyB1c2VpbmJhbmRmZWM9MTsgdXNlZHR4PTAKKyAgICBhPXB0aW1lOjQwCisgICAgYT1t
YXhwdGltZTo0MAorICAgICAgICAgICAgXV0+CisgICAgICAgICAgPC9hcnR3b3JrPgorICAgICAg
ICA8L2ZpZ3VyZT4KKworICAgICAgICA8dD5FeGFtcGxlIDM6IFR3by13YXkgZnVsbC1iYW5kIHN0
ZXJlbyBwcmVmZXJyZWQ8L3Q+CisKKyAgICAgICAgPGZpZ3VyZT4KKyAgICAgICAgICA8YXJ0d29y
az4KKyAgICAgICAgICAgIDwhW0NEQVRBWworICAgIG09YXVkaW8gNTQzMTIgUlRQL0FWUCAxMDEK
KyAgICBhPXJ0cG1hcDoxMDEgb3B1cy80ODAwMC8yCisgICAgYT1mbXRwOjEwMSBzdGVyZW89MTsg
c3Byb3Atc3RlcmVvPTEKKyAgICAgICAgICAgIF1dPgorICAgICAgICAgIDwvYXJ0d29yaz4KKyAg
ICAgICAgPC9maWd1cmU+CisKKworICAgICAgPHNlY3Rpb24gdGl0bGU9J1NEUCBPZmZlci9BbnN3
ZXIgQ29uc2lkZXJhdGlvbnMnPgorCisgICAgICAgICAgPHQ+V2hlbiB1c2luZyB0aGUgb2ZmZXIt
YW5zd2VyIHByb2NlZHVyZSBkZXNjcmliZWQgaW4gPHhyZWYKKyAgICAgICAgICB0YXJnZXQ9IlJG
QzMyNjQiLz4gdG8gbmVnb3RpYXRlIHRoZSB1c2Ugb2YgT3B1cywgdGhlIGZvbGxvd2luZworICAg
ICAgICAgIGNvbnNpZGVyYXRpb25zIGFwcGx5OjwvdD4KKworICAgICAgICAgIDx0PjxsaXN0IHN0
eWxlPSJzeW1ib2xzIj4KKworICAgICAgICAgICAgPHQ+T3B1cyBzdXBwb3J0cyBzZXZlcmFsIGNs
b2NrIHJhdGVzLiBGb3Igc2lnbmFsaW5nIHB1cnBvc2VzIG9ubHkKKyAgICAgICAgICAgIHRoZSBo
aWdoZXN0LCBpLmUuIDQ4MDAwLCBpcyB1c2VkLiBUaGUgYWN0dWFsIGNsb2NrIHJhdGUgb2YgdGhl
CisgICAgICAgICAgICBjb3JyZXNwb25kaW5nIG1lZGlhIGlzIHNpZ25hbGVkIGluc2lkZSB0aGUg
cGF5bG9hZCBhbmQgaXMgbm90CisgICAgICAgICAgICByZXN0cmljdGVkIGJ5IHRoaXMgcGF5bG9h
ZCBmb3JtYXQgZGVzY3JpcHRpb24uIFRoZSBkZWNvZGVyIE1VU1QgYmUKKyAgICAgICAgICAgIGNh
cGFibGUgb2YgZGVjb2RpbmcgZXZlcnkgcmVjZWl2ZWQgY2xvY2sgcmF0ZS4gQW4gZXhhbXBsZQor
ICAgICAgICAgICAgaXMgc2hvd24gYmVsb3c6CisKKyAgICAgICAgICAgIDxmaWd1cmU+CisgICAg
ICAgICAgICAgIDxhcnR3b3JrPgorICAgICAgICAgICAgICAgIDwhW0NEQVRBWworICAgIG09YXVk
aW8gNTQzMTIgUlRQL0FWUCAxMDAKKyAgICBhPXJ0cG1hcDoxMDAgb3B1cy80ODAwMC8yCisgICAg
ICAgICAgICAgICAgXV0+CisgICAgICAgICAgICAgIDwvYXJ0d29yaz4KKyAgICAgICAgICAgIDwv
ZmlndXJlPgorICAgICAgICAgICAgPC90PgorCisgICAgICAgICAgICA8dD5UaGUgInB0aW1lIiBh
bmQgIm1heHB0aW1lIiBwYXJhbWV0ZXJzIGFyZSB1bmlkaXJlY3Rpb25hbAorICAgICAgICAgICAg
cmVjZWl2ZS1vbmx5IHBhcmFtZXRlcnMgYW5kIHR5cGljYWxseSB3aWxsIG5vdCBjb21wcm9taXNl
CisgICAgICAgICAgICBpbnRlcm9wZXJhYmlsaXR5OyBob3dldmVyLCBzb21lIHZhbHVlcyBtaWdo
dCBjYXVzZSBhcHBsaWNhdGlvbgorICAgICAgICAgICAgcGVyZm9ybWFuY2UgdG8gc3VmZmVyLiA8
eHJlZgorICAgICAgICAgICAgdGFyZ2V0PSJSRkMzMjY0Ii8+IGRlZmluZXMgdGhlIFNEUCBvZmZl
ci1hbnN3ZXIgaGFuZGxpbmcgb2YgdGhlCisgICAgICAgICAgICAicHRpbWUiIHBhcmFtZXRlci4g
VGhlICJtYXhwdGltZSIgcGFyYW1ldGVyIE1VU1QgYmUgaGFuZGxlZCBpbiB0aGUKKyAgICAgICAg
ICAgIHNhbWUgd2F5LjwvdD4KKworICAgICAgICAgICAgPHQ+CisgICAgICAgICAgICAgIFRoZSAi
bWF4cGxheWJhY2tyYXRlIiBwYXJhbWV0ZXIgaXMgYSB1bmlkaXJlY3Rpb25hbCByZWNlaXZlLW9u
bHkKKyAgICAgICAgICAgICAgcGFyYW1ldGVyIHRoYXQgcmVmbGVjdHMgbGltaXRhdGlvbnMgb2Yg
dGhlIGxvY2FsIHJlY2VpdmVyLiBXaGVuCisgICAgICAgICAgICAgIHNlbmRpbmcgdG8gYSBzaW5n
bGUgZGVzdGluYXRpb24sIGEgc2VuZGVyIE1VU1QgTk9UIHVzZSBhbiBhdWRpbworICAgICAgICAg
ICAgICBiYW5kd2lkdGggaGlnaGVyIHRoYW4gbmVjZXNzYXJ5IHRvIG1ha2UgZnVsbCB1c2Ugb2Yg
YXVkaW8gc2FtcGxlZCBhdAorICAgICAgICAgICAgICBhIHNhbXBsaW5nIHJhdGUgb2YgIm1heHBs
YXliYWNrcmF0ZSIuIEdhdGV3YXlzIG9yIHNlbmRlcnMgdGhhdAorICAgICAgICAgICAgICBhcmUg
c2VuZGluZyB0aGUgc2FtZSBlbmNvZGVkIGF1ZGlvIHRvIG11bHRpcGxlIGRlc3RpbmF0aW9ucwor
ICAgICAgICAgICAgICBTSE9VTEQgTk9UIHVzZSBhbiBhdWRpbyBiYW5kd2lkdGggaGlnaGVyIHRo
YW4gbmVjZXNzYXJ5IHRvCisgICAgICAgICAgICAgIHJlcHJlc2VudCBhdWRpbyBzYW1wbGVkIGF0
ICJtYXhwbGF5YmFja3JhdGUiLCBhcyB0aGlzIHdvdWxkIGxlYWQKKyAgICAgICAgICAgICAgdG8g
aW5lZmZpY2llbnQgdXNlIG9mIG5ldHdvcmsgcmVzb3VyY2VzLgorICAgICAgICAgICAgICBUaGUg
Im1heHBsYXliYWNrcmF0ZSIgcGFyYW1ldGVyIGRvZXMgbm90CisgICAgICAgICAgICAgIGFmZmVj
dCBpbnRlcm9wZXJhYmlsaXR5LiBBbHNvLCB0aGlzIHBhcmFtZXRlciBTSE9VTEQgTk9UIGJlIHVz
ZWQKKyAgICAgICAgICAgICAgdG8gYWRqdXN0IHRoZSBhdWRpbyBiYW5kd2lkdGggYXMgYSBmdW5j
dGlvbiBvZiB0aGUgYml0cmF0ZSwgYXMgdGhpcworICAgICAgICAgICAgICBpcyB0aGUgcmVzcG9u
c2liaWxpdHkgb2YgdGhlIE9wdXMgZW5jb2RlciBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgICAg
IDwvdD4KKworICAgICAgICAgICAgPHQ+VGhlICJtYXhhdmVyYWdlYml0cmF0ZSIgcGFyYW1ldGVy
IGlzIGEgdW5pZGlyZWN0aW9uYWwgcmVjZWl2ZS1vbmx5CisgICAgICAgICAgICBwYXJhbWV0ZXIg
dGhhdCByZWZsZWN0cyBsaW1pdGF0aW9ucyBvZiB0aGUgbG9jYWwgcmVjZWl2ZXIuIFRoZSBzZW5k
ZXIKKyAgICAgICAgICAgIG9mIHRoZSBvdGhlciBzaWRlIE1VU1QgTk9UIHNlbmQgd2l0aCBhbiBh
dmVyYWdlIGJpdHJhdGUgaGlnaGVyIHRoYW4KKyAgICAgICAgICAgICJtYXhhdmVyYWdlYml0cmF0
ZSIgYXMgaXQgbWlnaHQgb3ZlcmxvYWQgdGhlIG5ldHdvcmsgYW5kL29yCisgICAgICAgICAgICBy
ZWNlaXZlci4gVGhlICJtYXhhdmVyYWdlYml0cmF0ZSIgcGFyYW1ldGVyIHR5cGljYWxseSB3aWxs
IG5vdAorICAgICAgICAgICAgY29tcHJvbWlzZSBpbnRlcm9wZXJhYmlsaXR5OyBob3dldmVyLCBz
b21lIHZhbHVlcyBtaWdodCBjYXVzZQorICAgICAgICAgICAgYXBwbGljYXRpb24gcGVyZm9ybWFu
Y2UgdG8gc3VmZmVyLCBhbmQgb3VnaHQgdG8gYmUgc2V0IHdpdGgKKyAgICAgICAgICAgIGNhcmUu
PC90PgorCisgICAgICAgICAgICA8dD5UaGUgInNwcm9wLW1heGNhcHR1cmVyYXRlIiBhbmQgInNw
cm9wLXN0ZXJlbyIgcGFyYW1ldGVycyBhcmUKKyAgICAgICAgICAgIHVuaWRpcmVjdGlvbmFsIHNl
bmRlci1vbmx5IHBhcmFtZXRlcnMgdGhhdCByZWZsZWN0IGxpbWl0YXRpb25zIG9mCisgICAgICAg
ICAgICB0aGUgc2VuZGVyIHNpZGUuCisgICAgICAgICAgICBUaGV5IGFsbG93IHRoZSByZWNlaXZl
ciB0byBzZXQgdXAgYSByZWR1Y2VkLWNvbXBsZXhpdHkgYXVkaW8KKyAgICAgICAgICAgIHByb2Nl
c3NpbmcgcGlwZWxpbmUgaWYgdGhlICBzZW5kZXIgaXMgbm90IHBsYW5uaW5nIHRvIHVzZSB0aGUg
ZnVsbAorICAgICAgICAgICAgcmFuZ2Ugb2YgT3B1cydzIGNhcGFiaWxpdGllcy4KKyAgICAgICAg
ICAgIE5laXRoZXIgInNwcm9wLW1heGNhcHR1cmVyYXRlIiBub3IgInNwcm9wLXN0ZXJlbyIgYWZm
ZWN0CisgICAgICAgICAgICBpbnRlcm9wZXJhYmlsaXR5IGFuZCB0aGUgcmVjZWl2ZXIgTVVTVCBi
ZSBjYXBhYmxlIG9mIHJlY2VpdmluZyBhbnkgc2lnbmFsLgorICAgICAgICAgICAgPC90PgorCisg
ICAgICAgICAgICA8dD4KKyAgICAgICAgICAgICAgVGhlICJzdGVyZW8iIHBhcmFtZXRlciBpcyBh
IHVuaWRpcmVjdGlvbmFsIHJlY2VpdmUtb25seQorICAgICAgICAgICAgICBwYXJhbWV0ZXIuIFdo
ZW4gc2VuZGluZyB0byBhIHNpbmdsZSBkZXN0aW5hdGlvbiwgYSBzZW5kZXIgTVVTVAorICAgICAg
ICAgICAgICBOT1QgdXNlIHN0ZXJlbyB3aGVuICJzdGVyZW8iIGlzIDAuIEdhdGV3YXlzIG9yIHNl
bmRlcnMgdGhhdCBhcmUKKyAgICAgICAgICAgICAgc2VuZGluZyB0aGUgc2FtZSBlbmNvZGVkIGF1
ZGlvIHRvIG11bHRpcGxlIGRlc3RpbmF0aW9ucyBTSE9VTEQKKyAgICAgICAgICAgICAgTk9UIHVz
ZSBzdGVyZW8gd2hlbiAic3RlcmVvIiBpcyAwLCBhcyB0aGlzIHdvdWxkIGxlYWQgdG8KKyAgICAg
ICAgICAgICAgaW5lZmZpY2llbnQgdXNlIG9mIG5ldHdvcmsgcmVzb3VyY2VzLiBUaGUgInN0ZXJl
byIgcGFyYW1ldGVyIGRvZXMKKyAgICAgICAgICAgICAgbm90IGFmZmVjdCBpbnRlcm9wZXJhYmls
aXR5LgorICAgICAgICAgICAgPC90PgorCisgICAgICAgICAgICA8dD4KKyAgICAgICAgICAgICAg
VGhlICJjYnIiIHBhcmFtZXRlciBpcyBhIHVuaWRpcmVjdGlvbmFsIHJlY2VpdmUtb25seQorICAg
ICAgICAgICAgICBwYXJhbWV0ZXIuCisgICAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICAgIDx0
PlRoZSAidXNlaW5iYW5kZmVjIiBwYXJhbWV0ZXIgaXMgYSB1bmlkaXJlY3Rpb25hbCByZWNlaXZl
LW9ubHkKKyAgICAgICAgICAgIHBhcmFtZXRlci48L3Q+CisKKyAgICAgICAgICAgIDx0PlRoZSAi
dXNlZHR4IiBwYXJhbWV0ZXIgaXMgYSB1bmlkaXJlY3Rpb25hbCByZWNlaXZlLW9ubHkKKyAgICAg
ICAgICAgIHBhcmFtZXRlci48L3Q+CisKKyAgICAgICAgICAgIDx0PkFueSB1bmtub3duIHBhcmFt
ZXRlciBpbiBhbiBvZmZlciBNVVNUIGJlIGlnbm9yZWQgYnkgdGhlIHJlY2VpdmVyCisgICAgICAg
ICAgICBhbmQgTVVTVCBiZSByZW1vdmVkIGZyb20gdGhlIGFuc3dlci48L3Q+CisKKyAgICAgICAg
ICA8L2xpc3Q+PC90PgorICAgICAgCisgICAgICAgIDx0PgorCSAgVGhlIE9wdXMgcGFyYW1ldGVy
cyBpbiBhbiBTRFAgT2ZmZXIvQW5zd2VyIGV4Y2hhbmdlIGFyZSBjb21wbGV0ZWx5CisgICAgICAg
ICAgb3J0aG9nb25hbCwgYW5kIHRoZXJlIGlzIG5vIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIHRoZSBT
RFAgT2ZmZXIgYW5kCisgICAgICAgICAgdGhlIEFuc3dlci4KKyAgICAgICAgPC90PgorICAgICAg
PC9zZWN0aW9uPgorCisgICAgICA8c2VjdGlvbiB0aXRsZT0nRGVjbGFyYXRpdmUgU0RQIENvbnNp
ZGVyYXRpb25zIGZvciBPcHVzJz4KKworICAgICAgICA8dD5Gb3IgZGVjbGFyYXRpdmUgdXNlIG9m
IFNEUCBzdWNoIGFzIGluIFNlc3Npb24gQW5ub3VuY2VtZW50IFByb3RvY29sCisgICAgICAgIChT
QVApLCA8eHJlZiB0YXJnZXQ9IlJGQzI5NzQiLz4sIGFuZCBSVFNQLCA8eHJlZiB0YXJnZXQ9IlJG
QzIzMjYiLz4sIGZvcgorICAgICAgICBPcHVzLCB0aGUgZm9sbG93aW5nIG5lZWRzIHRvIGJlIGNv
bnNpZGVyZWQ6PC90PgorCisgICAgICAgIDx0PjxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKworICAg
ICAgICAgIDx0PlRoZSB2YWx1ZXMgZm9yICJtYXhwdGltZSIsICJwdGltZSIsICJtYXhwbGF5YmFj
a3JhdGUiLCBhbmQKKyAgICAgICAgICAibWF4YXZlcmFnZWJpdHJhdGUiIG91Z2h0IHRvIGJlIHNl
bGVjdGVkIGNhcmVmdWxseSB0byBlbnN1cmUgdGhhdCBhCisgICAgICAgICAgcmVhc29uYWJsZSBw
ZXJmb3JtYW5jZSBjYW4gYmUgYWNoaWV2ZWQgZm9yIHRoZSBwYXJ0aWNpcGFudHMgb2YgYSBzZXNz
aW9uLjwvdD4KKworICAgICAgICAgIDx0PgorICAgICAgICAgICAgVGhlIHZhbHVlcyBmb3IgIm1h
eHB0aW1lIiwgInB0aW1lIiwgYW5kIG9mIHRoZSBwYXlsb2FkCisgICAgICAgICAgICBmb3JtYXQg
Y29uZmlndXJhdGlvbiBhcmUgcmVjb21tZW5kYXRpb25zIGJ5IHRoZSBkZWNvZGluZyBzaWRlIHRv
IGVuc3VyZQorICAgICAgICAgICAgdGhlIGJlc3QgcGVyZm9ybWFuY2UgZm9yIHRoZSBkZWNvZGVy
LgorICAgICAgICAgIDwvdD4KKworICAgICAgICAgIDx0PkFsbCBvdGhlciBwYXJhbWV0ZXJzIG9m
IHRoZSBwYXlsb2FkIGZvcm1hdCBjb25maWd1cmF0aW9uIGFyZSBkZWNsYXJhdGl2ZQorICAgICAg
ICAgIGFuZCBhIHBhcnRpY2lwYW50IE1VU1QgdXNlIHRoZSBjb25maWd1cmF0aW9ucyB0aGF0IGFy
ZSBwcm92aWRlZCBmb3IKKyAgICAgICAgICB0aGUgc2Vzc2lvbi4gTW9yZSB0aGFuIG9uZSBjb25m
aWd1cmF0aW9uIGNhbiBiZSBwcm92aWRlZCBpZiBuZWNlc3NhcnkKKyAgICAgICAgICBieSBkZWNs
YXJpbmcgbXVsdGlwbGUgUlRQIHBheWxvYWQgdHlwZXM7IGhvd2V2ZXIsIHRoZSBudW1iZXIgb2Yg
dHlwZXMKKyAgICAgICAgICBvdWdodCB0byBiZSBrZXB0IHNtYWxsLjwvdD4KKyAgICAgICAgPC9s
aXN0PjwvdD4KKyAgICAgIDwvc2VjdGlvbj4KKyAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24g
dGl0bGU9J1NlY3VyaXR5IENvbnNpZGVyYXRpb25zJyBhbmNob3I9J3NlY3VyaXR5LWNvbnNpZGVy
YXRpb25zJz4KKworICAgICAgPHQ+VXNlIG9mIHZhcmlhYmxlIGJpdHJhdGUgKFZCUikgaXMgc3Vi
amVjdCB0byB0aGUgc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMgaW4KKyAgICAgIDx4cmVmIHRhcmdl
dD0iUkZDNjU2MiIvPi48L3Q+CisKKyAgICAgIDx0PlJUUCBwYWNrZXRzIHVzaW5nIHRoZSBwYXls
b2FkIGZvcm1hdCBkZWZpbmVkIGluIHRoaXMgc3BlY2lmaWNhdGlvbgorICAgICAgYXJlIHN1Ympl
Y3QgdG8gdGhlIHNlY3VyaXR5IGNvbnNpZGVyYXRpb25zIGRpc2N1c3NlZCBpbiB0aGUgUlRQCisg
ICAgICBzcGVjaWZpY2F0aW9uIDx4cmVmIHRhcmdldD0iUkZDMzU1MCIvPiwgYW5kIGluIGFueSBh
cHBsaWNhYmxlIFJUUCBwcm9maWxlIHN1Y2ggYXMKKyAgICAgIFJUUC9BVlAgPHhyZWYgdGFyZ2V0
PSJSRkMzNTUxIi8+LCBSVFAvQVZQRiA8eHJlZiB0YXJnZXQ9IlJGQzQ1ODUiLz4sCisgICAgICBS
VFAvU0FWUCA8eHJlZiB0YXJnZXQ9IlJGQzM3MTEiLz4gb3IgUlRQL1NBVlBGIDx4cmVmIHRhcmdl
dD0iUkZDNTEyNCIvPi4KKyAgICAgIEhvd2V2ZXIsIGFzICJTZWN1cmluZyB0aGUgUlRQIFByb3Rv
Y29sIEZyYW1ld29yazoKKyAgICAgIFdoeSBSVFAgRG9lcyBOb3QgTWFuZGF0ZSBhIFNpbmdsZSBN
ZWRpYSBTZWN1cml0eSBTb2x1dGlvbiIKKyAgICAgIDx4cmVmIHRhcmdldD0iUkZDNzIwMiIvPiBk
aXNjdXNzZXMsIGl0IGlzIG5vdCBhbiBSVFAgcGF5bG9hZAorICAgICAgZm9ybWF0J3MgcmVzcG9u
c2liaWxpdHkgdG8gZGlzY3VzcyBvciBtYW5kYXRlIHdoYXQgc29sdXRpb25zIGFyZSB1c2VkCisg
ICAgICB0byBtZWV0IHRoZSBiYXNpYyBzZWN1cml0eSBnb2FscyBsaWtlIGNvbmZpZGVudGlhbGl0
eSwgaW50ZWdyaXR5IGFuZAorICAgICAgc291cmNlIGF1dGhlbnRpY2l0eSBmb3IgUlRQIGluIGdl
bmVyYWwuICBUaGlzIHJlc3BvbnNpYmlsaXR5IGxheXMgb24KKyAgICAgIGFueW9uZSB1c2luZyBS
VFAgaW4gYW4gYXBwbGljYXRpb24uICBUaGV5IGNhbiBmaW5kIGd1aWRhbmNlIG9uCisgICAgICBh
dmFpbGFibGUgc2VjdXJpdHkgbWVjaGFuaXNtcyBhbmQgaW1wb3J0YW50IGNvbnNpZGVyYXRpb25z
IGluIE9wdGlvbnMKKyAgICAgIGZvciBTZWN1cmluZyBSVFAgU2Vzc2lvbnMgW0ktRC5pZXRmLWF2
dGNvcmUtcnRwLXNlY3VyaXR5LW9wdGlvbnNdLgorICAgICAgQXBwbGljYXRpb25zIFNIT1VMRCB1
c2Ugb25lIG9yIG1vcmUgYXBwcm9wcmlhdGUgc3Ryb25nIHNlY3VyaXR5CisgICAgICBtZWNoYW5p
c21zLjwvdD4KKworICAgICAgPHQ+VGhpcyBwYXlsb2FkIGZvcm1hdCBhbmQgdGhlIE9wdXMgZW5j
b2RpbmcgZG8gbm90IGV4aGliaXQgYW55CisgICAgICBzaWduaWZpY2FudCBub24tdW5pZm9ybWl0
eSBpbiB0aGUgcmVjZWl2ZXItZW5kIGNvbXB1dGF0aW9uYWwgbG9hZCBhbmQgdGh1cworICAgICAg
YXJlIHVubGlrZWx5IHRvIHBvc2UgYSBkZW5pYWwtb2Ytc2VydmljZSB0aHJlYXQgZHVlIHRvIHRo
ZSByZWNlaXB0IG9mCisgICAgICBwYXRob2xvZ2ljYWwgZGF0YWdyYW1zLjwvdD4KKyAgICA8L3Nl
Y3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0nQWNrbm93bGVkZ2VtZW50cyc+CisgICAgPHQ+
TWFueSBwZW9wbGUgaGF2ZSBtYWRlIHVzZWZ1bCBjb21tZW50cyBhbmQgc3VnZ2VzdGlvbnMgY29u
dHJpYnV0aW5nIHRvIHRoaXMgZG9jdW1lbnQuIAorICAgICAgSW4gcGFydGljdWxhciwgd2Ugd291
bGQgbGlrZSB0byB0aGFuaworICAgICAgVGluYSBsZSBHcmFuZCwgQ3VsbGVuIEplbm5pbmdzLCBK
b25hdGhhbiBMZW5ub3gsIEdyZWdvcnkgTWF4d2VsbCwgQ29saW4gUGVya2lucywgSmFuIFNrb2ds
dW5kLAorICAgICAgVGltb3RoeSBCLiBUZXJyaWJlcnJ5LCBNYXJ0aW4gVGhvbXBzb24sIEp1c3Rp
biBVYmVydGksIE1hZ251cyBXZXN0ZXJsdW5kLCBhbmQgTW8gWmFuYXR5LjwvdD4KKyAgICA8L3Nl
Y3Rpb24+CisgIDwvbWlkZGxlPgorCisgIDxiYWNrPgorICAgIDxyZWZlcmVuY2VzIHRpdGxlPSJO
b3JtYXRpdmUgUmVmZXJlbmNlcyI+CisgICAgICAmcmZjMjExOTsKKyAgICAgICZyZmMzMzg5Owor
ICAgICAgJnJmYzM1NTA7CisgICAgICAmcmZjMzcxMTsKKyAgICAgICZyZmMzNTUxOworICAgICAg
JnJmYzY4Mzg7CisgICAgICAmcmZjNDg1NTsKKyAgICAgICZyZmM0NTY2OworICAgICAgJnJmYzMy
NjQ7CisgICAgICAmcmZjMjMyNjsKKyAgICAgICZyZmM1NTc2OworICAgICAgJnJmYzY1NjI7Cisg
ICAgICAmcmZjNjcxNjsKKyAgICA8L3JlZmVyZW5jZXM+CisKKyAgICA8cmVmZXJlbmNlcyB0aXRs
ZT0iSW5mb3JtYXRpdmUgUmVmZXJlbmNlcyI+CisgICAgICAmcmZjMjk3NDsKKyAgICAgICZyZmM0
NTg1OworICAgICAgJnJmYzUxMjQ7CisgICAgICAmcmZjNTQwNTsKKyAgICAgICZyZmM3MjAyOwor
ICAgICAgCisgICAgICA8cmVmZXJlbmNlIGFuY2hvcj0ncm1jYXQnIHRhcmdldD0naHR0cHM6Ly9k
YXRhdHJhY2tlci5pZXRmLm9yZy93Zy9ybWNhdC9kb2N1bWVudHMvJz4KKyAgICAgICAgPGZyb250
PgorICAgICAgICAgIDx0aXRsZT5ybWNhdCBkb2N1bWVudHM8L3RpdGxlPgorICAgICAgICAgIDxh
dXRob3IvPgorICAgICAgICAgIDxkYXRlLz4KKyAgICAgICAgICA8YWJzdHJhY3Q+CisgICAgICAg
ICAgICA8dD48L3Q+CisgICAgICAgICAgPC9hYnN0cmFjdD48L2Zyb250PgorICAgICAgPC9yZWZl
cmVuY2U+CisKKworICAgIDwvcmVmZXJlbmNlcz4KKworICA8L2JhY2s+Cis8L3JmYz4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvZG9jL29wdXNfaW5faXNvYm1mZi5jc3MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9vcHVzX2luX2lzb2JtZmYuY3NzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmJmZmU4ZjQ1YWU5OTU5YmJkOWM4NGY5NmVjODMyYTlhMGFlNWUwZGMKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2RvYy9vcHVzX2luX2lzb2JtZmYuY3NzCkBAIC0wLDAgKzEsNjAgQEAKKy8q
IE5vcm1hbCBsaW5rcyAqLworLm5vcm1hbF9saW5rIGE6bGluaworeworICAgIGNvbG9yIDogeWVs
bG93OworfQorLm5vcm1hbF9saW5rIGE6dmlzaXRlZAoreworICAgIGNvbG9yIDogZ3JlZW47Cit9
CisKKy8qIEJveGVzICovCisucHJlCit7CisJd2hpdGUtc3BhY2U6IHByZTsgICAgICAgICAgIC8q
IENTUyAyLjAgKi8KKwl3aGl0ZS1zcGFjZTogcHJlLXdyYXA7ICAgICAgLyogQ1NTIDIuMSAqLwor
CXdoaXRlLXNwYWNlOiAtcHJlLXdyYXA7ICAgICAvKiBPcGVyYSA0LTYgKi8KKwl3aGl0ZS1zcGFj
ZTogLW8tcHJlLXdyYXA7ICAgLyogT3BlcmEgNyAqLworCXdoaXRlLXNwYWNlOiAtbW96LXByZS13
cmFwOyAvKiBNb3ppbGxhICovCisJd2hpdGUtc3BhY2U6IC1ocC1wcmUtd3JhcDsgIC8qIEhQIFBy
aW50ZXJzICovCisJd29yZC13cmFwICA6IGJyZWFrLXdvcmQ7ICAgIC8qIElFIDUrICovCit9CisK
Ky50aXRsZV9ib3gKK3sKKyAgICB3aWR0aCAgICAgICAgICAgIDogNDcwcHg7CisgICAgaGVpZ2h0
ICAgICAgICAgICA6IDcwcHg7CisgICAgbWFyZ2luICAgICAgICAgICA6IDJweCA1MHB4IDJweCAy
cHg7CisgICAgcGFkZGluZyAgICAgICAgICA6IDEwcHg7CisgICAgYm9yZGVyICAgICAgICAgICA6
IDFweCBzb2xpZCBibGFjazsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yIDogIzY2NjY2NjsKKyAgICB3
aGl0ZS1zcGFjZSAgICAgIDogcHJlOworICAgIGZsb2F0ICAgICAgICAgICAgOiBsZWZ0OworICAg
IHRleHQtYWxpZ24gICAgICAgOiBjZW50ZXI7CisgICAgY29sb3IgICAgICAgICAgICA6ICNDMEMw
QzA7CisgICAgZm9udC1zaXplICAgICAgICA6IDUwcHQ7CisgICAgZm9udC1zdHlsZSAgICAgICA6
IGl0YWxpYzsKK30KKworLnN1YmluZGV4X2JveAoreworICAgIG1hcmdpbiAgICAgICAgICAgOiA1
cHg7CisgICAgcGFkZGluZyAgICAgICAgICA6IDE0cHggMjJweDsKKyAgICBib3JkZXIgICAgICAg
ICAgIDogMXB4IHNvbGlkIGJsYWNrOworICAgIGJhY2tncm91bmQtY29sb3IgOiAjNzc4ODc3Owor
ICAgIGZsb2F0ICAgICAgICAgICAgOiBsZWZ0OworICAgIHRleHQtYWxpZ24gICAgICAgOiBjZW50
ZXI7CisgICAgY29sb3IgICAgICAgICAgICA6ICMxMTU1NTU7CisgICAgZm9udC1zaXplICAgICAg
ICA6IDMycHQ7Cit9CisKKy5mcmFtZV9ib3gKK3sKKyAgICBtYXJnaW4gICAgICAgICAgIDogMTBw
eDsKKyAgICBwYWRkaW5nICAgICAgICAgIDogMTBweDsKKyAgICBib3JkZXIgICAgICAgICAgIDog
MHB4OworICAgIGJhY2tncm91bmQtY29sb3IgOiAjMDg0MDQwOworICAgIHRleHQtYWxpZ24gICAg
ICAgOiBsZWZ0OworICAgIGNvbG9yICAgICAgICAgICAgOiAjQzBDMEMwOworICAgIGZvbnQtZmFt
aWx5ICAgICAgOiBtb25vc3BhY2U7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9vcHVzX2luX2lzb2JtZmYu
aHRtbCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvZG9jL29wdXNfaW5faXNvYm1mZi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmExMTc1ZGJmZGRlMjVl
ODM3MmVkNmZjNGQwNDAxZmNhOTIyYzU5OWUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9vcHVzX2lu
X2lzb2JtZmYuaHRtbApAQCAtMCwwICsxLDY4NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICIt
Ly9XM0MvL0RURCBIVE1MIDQuMDEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvc3Ry
aWN0LmR0ZCI+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0ib3B1c19pbl9pc29ibWZmLmNzcyIvPgorICAgICAg
ICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hh
cnNldD11dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPkVuY2Fwc3VsYXRpb24gb2YgT3B1cyBpbiBJ
U08gQmFzZSBNZWRpYSBGaWxlIEZvcm1hdDwvdGl0bGU+CisgICAgPC9oZWFkPgorICAgIDxib2R5
IGJnY29sb3I9IjB4MzMzMzMzIiB0ZXh0PSIjNjBCMEMwIj4KKyAgICAgICAgPGI+PHU+RW5jYXBz
dWxhdGlvbiBvZiBPcHVzIGluIElTTyBCYXNlIE1lZGlhIEZpbGUgRm9ybWF0PC91PjwvYj48YnI+
CisgICAgICAgIDxmb250IHNpemU9IjIiPmxhc3QgdXBkYXRlZDogQXByaWwgMjgsIDIwMTY8L2Zv
bnQ+PGJyPgorICAgICAgICA8YnI+CisgICAgICAgIDxkaXYgY2xhc3M9Im5vcm1hbF9saW5rIHBy
ZSBmcmFtZV9ib3giPgorCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuY2Fwc3Vs
YXRpb24gb2YgT3B1cyBpbiBJU08gQmFzZSBNZWRpYSBGaWxlIEZvcm1hdAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZlcnNpb24gMC42LjggKGluY29tcGxldGUpCisK
KworVGFibGUgb2YgQ29udGVudHMKKzxhIGhyZWY9IiMxIj4xPC9hPiBTY29wZQorPGEgaHJlZj0i
IzIiPjI8L2E+IE5vcm1hdGl2ZSBSZWZlcmVuY2VzCis8YSBocmVmPSIjMyI+MzwvYT4gVGVybXMg
YW5kIERlZmluaXRpb25zCis8YSBocmVmPSIjNCI+NDwvYT4gRGVzaWduIFJ1bGVzIG9mIEVuY2Fw
c3VsYXRpb24KKyAgICA8YSBocmVmPSIjNC4xIj40LjE8L2E+IEZpbGUgVHlwZSBJbmRlbnRpZmlj
YXRpb24KKyAgICA8YSBocmVmPSIjNC4yIj40LjI8L2E+IE92ZXJ2aWV3IG9mIFRyYWNrIFN0cnVj
dHVyZQorICAgIDxhIGhyZWY9IiM0LjMiPjQuMzwvYT4gRGVmaW5pdGlvbnMgb2YgT3B1cyBzYW1w
bGUKKyAgICAgICAgPGEgaHJlZj0iIzQuMy4xIj40LjMuMTwvYT4gU2FtcGxlIGVudHJ5IGZvcm1h
dAorICAgICAgICA8YSBocmVmPSIjNC4zLjIiPjQuMy4yPC9hPiBPcHVzIFNwZWNpZmljIEJveAor
ICAgICAgICA8YSBocmVmPSIjNC4zLjMiPjQuMy4zPC9hPiBTYW1wbGUgZm9ybWF0CisgICAgICAg
IDxhIGhyZWY9IiM0LjMuNCI+NC4zLjQ8L2E+IER1cmF0aW9uIG9mIE9wdXMgc2FtcGxlCisgICAg
ICAgIDxhIGhyZWY9IiM0LjMuNSI+NC4zLjU8L2E+IFN1Yi1zYW1wbGUKKyAgICAgICAgPGEgaHJl
Zj0iIzQuMy42Ij40LjMuNjwvYT4gUmFuZG9tIEFjY2VzcworICAgICAgICAgICAgPGEgaHJlZj0i
IzQuMy42LjEiPjQuMy42LjE8L2E+IFJhbmRvbSBBY2Nlc3MgUG9pbnQKKyAgICAgICAgICAgIDxh
IGhyZWY9IiM0LjMuNi4yIj40LjMuNi4yPC9hPiBQcmUtcm9sbAorICAgIDxhIGhyZWY9IiM0LjQi
PjQuNDwvYT4gVHJpbW1pbmcgb2YgQWN0dWFsIER1cmF0aW9uCisgICAgPGEgaHJlZj0iIzQuNSI+
NC41PC9hPiBDaGFubmVsIExheW91dCAoaW5mb3JtYXRpdmUpCisgICAgPGEgaHJlZj0iIzQuNiI+
NC42PC9hPiBCYXNpYyBTdHJ1Y3R1cmUgKGluZm9ybWF0aXZlKQorICAgICAgICA8YSBocmVmPSIj
NC42LjEiPjQuNi4yPC9hPiBJbml0aWFsIE1vdmllCisgICAgICAgIDxhIGhyZWY9IiM0LjYuMiI+
NC42LjM8L2E+IE1vdmllIEZyYWdtZW50cworICAgIDxhIGhyZWY9IiM0LjciPjQuNzwvYT4gRXhh
bXBsZSBvZiBFbmNhcHN1bGF0aW9uIChpbmZvcm1hdGl2ZSkKKzxhIGhyZWY9IiM1Ij41PC9hPiBB
dXRob3IncyBBZGRyZXNzCisKKzxhIG5hbWU9IjEiPjwvYT4KKzEgU2NvcGUKKyAgICBUaGlzIHNw
ZWNpZmljYXRpb24gc3BlY2lmaWVzIHRoZSBmdW5kYW1lbnRhbCB3YXkgb2YgdGhlIGVuY2Fwc3Vs
YXRpb24gb2YgT3B1cyBjb2RlZCBiaXRzdHJlYW1zIGluIElTTyBCYXNlIE1lZGlhCisgICAgZmls
ZSBmb3JtYXQgYW5kIGl0cyBkZXJpdmF0aXZlcy4gVGhlIGVuY2Fwc3VsYXRpb24gb2YgT3B1cyBj
b2RlZCBiaXRzdHJlYW1zIGluIFF1aWNrVGltZSBmaWxlIGZvcm1hdCBpcyBvdXRzaWRlCisgICAg
dGhlIHNjb3BlIG9mIHRoaXMgc3BlY2lmaWNhdGlvbi4KKworPGEgbmFtZT0iMiI+PC9hPgorMiBO
b3JtYXRpdmUgUmVmZXJlbmNlcworICAgIFsxXSBJU08vSUVDIDE0NDk2LTEyOjIwMTUgQ29ycmVj
dGVkIHZlcnNpb24KKyAgICAgICAgSW5mb3JtYXRpb24gdGVjaG5vbG9neSDigJQgQ29kaW5nIG9m
IGF1ZGlvLXZpc3VhbCBvYmplY3RzIOKAlCBQYXJ0IDEyOiBJU08gYmFzZSBtZWRpYSBmaWxlIGZv
cm1hdAorCisgICAgWzJdIFJGQyA2NzE2CisgICAgICAgIERlZmluaXRpb24gb2YgdGhlIE9wdXMg
QXVkaW8gQ29kZWMKKworICAgIFszXSBkcmFmdC1pZXRmLWNvZGVjLW9nZ29wdXMtMDYKKyAgICAg
ICAgT2dnIEVuY2Fwc3VsYXRpb24gZm9yIHRoZSBPcHVzIEF1ZGlvIENvZGVjCisKKzxhIG5hbWU9
IjMiPjwvYT4KKzMgVGVybXMgYW5kIERlZmluaXRpb25zCisgICAgMy4xIGFjdGl2ZSB0cmFjawor
ICAgICAgICBlbmFibGVkIHRyYWNrIGZyb20gdGhlIG5vbi1hbHRlcm5hdGUgZ3JvdXAgb3Igc2Vs
ZWN0ZWQgdHJhY2sgZnJvbSBhbHRlcm5hdGUgZ3JvdXAKKworICAgIDMuMiBhY3R1YWwgZHVyYXRp
b24KKyAgICAgICAgZHVyYXRpb24gY29uc3RydWN0ZWQgZnJvbSB2YWxpZCBzYW1wbGVzCisKKyAg
ICAzLjMgZWRpdAorICAgICAgICBlbnRyeSBpbiB0aGUgRWRpdCBMaXN0IEJveAorCisgICAgMy40
IHBhZGRlZCBzYW1wbGVzCisgICAgICAgIFBDTSBzYW1wbGVzIGFmdGVyIGRlY29kaW5nIE9wdXMg
c2FtcGxlKHMpIHdoaWNoIGFyZSBub3QgdmFsaWQgc2FtcGxlcworICAgICAgICBBbiBPcHVzIGJp
dHN0cmVhbSBhbHdheXMgY29udGFpbnMgdGhlbSBwYXJ0aWFsbHkgYXQgdGhlIGJlZ2lubmluZyBh
bmQgbWF5IGNvbnRhaW4gdGhlbSBpbiBwYXJ0IGF0IHRoZSBlbmQsIGFzCisgICAgICAgIGxvbmcg
YXMgbm90IHBoeXNpY2FsbHkgcmVtb3ZlZCB5ZXQgYXQgdGhlIGJlZ2lubmluZyBhbmQvb3IgdGhl
IGVuZC4KKworICAgIDMuNSBwcmltaW5nIHNhbXBsZXMKKyAgICAgICAgcGFkZGVkIHNhbXBsZXMg
YXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgT3B1cyBiaXRzdHJlYW0KKworICAgIDMuNiBzYW1wbGUt
YWNjdXJhdGUKKyAgICAgICAgZm9yIGFueSBQQ00gc2FtcGxlLCBhIHRpbWVzdGFtcCBleGFjdGx5
IG1hdGNoaW5nIGl0cyBzYW1wbGluZyB0aW1lc3RhbXAgaXMgcHJlc2VudCBpbiB0aGUgbWVkaWEg
dGltZWxpbmUuCisKKyAgICAzLjcgdmFsaWQgc2FtcGxlcworICAgICAgICBQQ00gc2FtcGxlcyBh
ZnRlciBkZWNvZGluZyBPcHVzIHNhbXBsZShzKSBjb3JyZXNwb25kaW5nIHRvIGlucHV0IFBDTSBz
YW1wbGVzCisKKzxhIG5hbWU9IjQiPjwvYT4KKzQgRGVzaWduIFJ1bGVzIG9mIEVuY2Fwc3VsYXRp
b24KKyAgICA0LjEgRmlsZSBUeXBlIEluZGVudGlmaWNhdGlvbjxhIG5hbWU9IjQuMSI+PC9hPgor
ICAgICAgICBUaGlzIHNwZWNpZmljYXRpb24gZG9lcyBub3QgZGVmaW5lIGFueSBicmFuZCB0byBk
ZWNsYXJlIGZpbGVzIGFyZSBjb25mb3JtYW50IHRvIHRoaXMgc3BlY2lmaWNhdGlvbi4gSG93ZXZl
ciwKKyAgICAgICAgZmlsZXMgY29uZm9ybWFudCB0byB0aGlzIHNwZWNpZmljYXRpb24gc2hhbGwg
Y29udGFpbiBhdCBsZWFzdCBvbmUgYnJhbmQsIHdoaWNoIHN1cHBvcnRzIHRoZSByZXF1aXJlbWVu
dHMgYW5kIHRoZQorICAgICAgICByZXF1aXJlbWVudHMgZGVzY3JpYmVkIGluIHRoaXMgY2xhdXNl
IHdpdGhvdXQgY29udHJhZGljdGlvbiwgaW4gdGhlIGNvbXBhdGlibGUgYnJhbmRzIGxpc3Qgb2Yg
dGhlIEZpbGUgVHlwZSBCb3guCisgICAgICAgIEFzIGFuIGV4YW1wbGUsIHRoZSBtaW5pbWFsIHN1
cHBvcnQgb2YgdGhlIGVuY2Fwc3VsYXRpb24gb2YgT3B1cyBiaXRzdHJlYW1zIGluIElTTyBCYXNl
IE1lZGlhIGZpbGUgZm9ybWF0IHJlcXVpcmVzCisgICAgICAgIHRoZSAnaXNvMicgYnJhbmQgaW4g
dGhlIGNvbXBhdGlibGUgYnJhbmRzIGxpc3Qgc2luY2Ugc3VwcG9ydCBvZiByb2xsIGdyb3VwcyBp
cyByZXF1aXJlZC4KKzxhIG5hbWU9IjQuMiI+PC9hPgorICAgIDQuMiBPdmVydmlldyBvZiBUcmFj
ayBTdHJ1Y3R1cmUKKyAgICAgICAgVGhpcyBjbGF1c2Ugc3VtbWFyaXplcyByZXF1aXJlbWVudHMg
b2YgdGhlIGVuY2Fwc3VsYXRpb24gb2YgT3B1cyBjb2RlZCBiaXRzdHJlYW0gYXMgbWVkaWEgZGF0
YSBpbiBhdWRpbyB0cmFja3MKKyAgICAgICAgaW4gZmlsZSBmb3JtYXRzIGNvbXBsaWFudCB3aXRo
IHRoZSBJU08gQmFzZSBNZWRpYSBGaWxlIEZvcm1hdC4gVGhlIGRldGFpbHMgYXJlIGRlc2NyaWJl
ZCBpbiBjbGF1c2VzIGFmdGVyIHRoaXMKKyAgICAgICAgY2xhdXNlLgorICAgICAgICAgICAgKyBU
aGUgaGFuZGxlcl90eXBlIGZpZWxkIGluIHRoZSBIYW5kbGVyIFJlZmVyZW5jZSBCb3ggc2hhbGwg
YmUgc2V0IHRvICdzb3VuJy4KKyAgICAgICAgICAgICsgVGhlIE1lZGlhIEluZm9ybWF0aW9uIEJv
eCBzaGFsbCBjb250YWluIHRoZSBTb3VuZCBNZWRpYSBIZWFkZXIgQm94LgorICAgICAgICAgICAg
KyBUaGUgY29kaW5nbmFtZSBvZiB0aGUgc2FtcGxlIGVudHJ5IGlzICdPcHVzJy4KKyAgICAgICAg
ICAgICAgICBUaGlzIHNwZWNpZmljYXRpb24gZG9lcyBub3QgZGVmaW5lIGFueSBlbmNhcHN1bGF0
aW9uIHVzaW5nIE1QNEF1ZGlvU2FtcGxlRW50cnkgd2l0aCBvYmplY3RUeXBlSW5kaWNhdGlvbgor
ICAgICAgICAgICAgICAgIHNwZWNpZmllZCBieSB0aGUgTVBFRy00IFJlZ2lzdHJhdGlvbiBBdXRo
b3JpdHkgKGh0dHA6Ly93d3cubXA0cmEub3JnLykuCisgICAgICAgICAgICAgICAgU2VlIDQuMy4x
IFNhbXBsZSBlbnRyeSBmb3JtYXQgdG8gZ2V0IHRoZSBkZXRhaWxzIGFib3V0IHRoZSBzYW1wbGUg
ZW50cnkuCisgICAgICAgICAgICArIFRoZSAnZE9wcycgYm94IGlzIGFkZGVkIHRvIHRoZSBzYW1w
bGUgZW50cnkgdG8gY29udmV5IGluaXRpYWxpemluZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGRlY29k
ZXIuCisgICAgICAgICAgICAgICAgU2VlIDQuMy4yIE9wdXMgU3BlY2lmaWMgQm94IHRvIGdldCB0
aGUgZGV0YWlscy4KKyAgICAgICAgICAgICsgQW4gT3B1cyBzYW1wbGUgaXMgZXhhY3RseSBvbmUg
T3B1cyBwYWNrZXQgZm9yIGVhY2ggb2YgZGlmZmVyZW50IE9wdXMgYml0c3RyZWFtcy4KKyAgICAg
ICAgICAgICAgICBTZWUgNC4zLjMgU2FtcGxlIGZvcm1hdCB0byBnZXQgdGhlIGRldGFpbHMuCisg
ICAgICAgICAgICArIEV2ZXJ5IE9wdXMgc2FtcGxlIGlzIGEgc3luYyBzYW1wbGUgYnV0IHJlcXVp
cmVzIHByZS1yb2xsIGZvciBldmVyeSByYW5kb20gYWNjZXNzIHRvIGdldCBjb3JyZWN0IG91dHB1
dC4KKyAgICAgICAgICAgICAgICBTZWUgNC4zLjYgUmFuZG9tIEFjY2VzcyB0byBnZXQgdGhlIGRl
dGFpbHMuCis8YSBuYW1lPSI0LjMiPjwvYT4KKyAgICA0LjMgRGVmaW5pdGlvbnMgb2YgT3B1cyBz
YW1wbGUKKyAgICAgICAgNC4zLjEgU2FtcGxlIGVudHJ5IGZvcm1hdDxhIG5hbWU9IjQuMy4xIj48
L2E+CisgICAgICAgICAgICBGb3IgYW55IHRyYWNrIGNvbnRhaW5pbmcgT3B1cyBiaXRzdHJlYW1z
LCBhdCBsZWFzdCBvbmUgc2FtcGxlIGVudHJ5IGRlc2NyaWJpbmcgY29ycmVzcG9uZGluZyBPcHVz
IGJpdHN0cmVhbQorICAgICAgICAgICAgc2hhbGwgYmUgcHJlc2VudCBpbnNpZGUgdGhlIFNhbXBs
ZSBUYWJsZSBCb3guIFRoaXMgdmVyc2lvbiBvZiB0aGUgc3BlY2lmaWNhdGlvbiBkZWZpbmVzIG9u
bHkgb25lIHNhbXBsZQorICAgICAgICAgICAgZW50cnkgZm9ybWF0IG5hbWVkIE9wdXNTYW1wbGVF
bnRyeSB3aG9zZSBjb2RpbmduYW1lIGlzICdPcHVzJy4gVGhpcyBzYW1wbGUgZW50cnkgaW5jbHVk
ZXMgZXhhY3RseSBvbmUgT3B1cworICAgICAgICAgICAgU3BlY2lmaWMgQm94IGRlZmluZWQgaW4g
NC4zLjIgYXMgYSBtYW5kYXRvcnkgYm94IGFuZCBpbmRpY2F0ZXMgdGhhdCBPcHVzIHNhbXBsZXMg
ZGVzY3JpYmVkIGJ5IHRoaXMgc2FtcGxlCisgICAgICAgICAgICBlbnRyeSBhcmUgc3RvcmVkIGJ5
IHRoZSBzYW1wbGUgZm9ybWF0IGRlc2NyaWJlZCBpbiA0LjMuMy4KKworICAgICAgICAgICAgVGhl
IHN5bnRheCBhbmQgc2VtYW50aWNzIG9mIHRoZSBPcHVzU2FtcGxlRW50cnkgaXMgc2hvd24gYXMg
Zm9sbG93cy4KKworICAgICAgICAgICAgY2xhc3MgT3B1c1NhbXBsZUVudHJ5KCkgZXh0ZW5kcyBB
dWRpb1NhbXBsZUVudHJ5ICgnT3B1cycpeworICAgICAgICAgICAgICAgIE9wdXNTcGVjaWZpY0Jv
eCgpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICArIGNoYW5uZWxjb3VudDoKKyAgICAg
ICAgICAgICAgICBUaGUgY2hhbm5lbGNvdW50IGZpZWxkIHNoYWxsIGJlIHNldCB0byB0aGUgc3Vt
IG9mIHRoZSB0b3RhbCBudW1iZXIgb2YgT3B1cyBiaXRzdHJlYW1zIGFuZCB0aGUgbnVtYmVyCisg
ICAgICAgICAgICAgICAgb2YgT3B1cyBiaXRzdHJlYW1zIHByb2R1Y2luZyB0d28gY2hhbm5lbHMu
IFRoaXMgdmFsdWUgaXMgaW5kZW50aWNhbCB3aXRoIChNK04pLCB3aGVyZSBNIGlzIHRoZSB2YWx1
ZSBvZgorICAgICAgICAgICAgICAgIHRoZSAqQ291cGxlZCBTdHJlYW0gQ291bnQqIGZpZWxkIGFu
ZCBOIGlzIHRoZSB2YWx1ZSBvZiB0aGUgKlN0cmVhbSBDb3VudCogZmllbGQgaW4gdGhlICpDaGFu
bmVsIE1hcHBpbmcKKyAgICAgICAgICAgICAgICBUYWJsZSogaW4gdGhlIGlkZW50aWZpY2F0aW9u
IGhlYWRlciBkZWZpbmVkIGluIE9nZyBPcHVzIFszXS4KKyAgICAgICAgICAgICsgc2FtcGxlc2l6
ZToKKyAgICAgICAgICAgICAgICBUaGUgc2FtcGxlc2l6ZSBmaWVsZCBzaGFsbCBiZSBzZXQgdG8g
MTYuCisgICAgICAgICAgICArIHNhbXBsZXJhdGU6CisgICAgICAgICAgICAgICAgVGhlIHNhbXBs
ZXJhdGUgZmllbGQgc2hhbGwgYmUgc2V0IHRvIDQ4MDAwJmx0Jmx0MTYuCisgICAgICAgICAgICAr
IE9wdXNTcGVjaWZpY0JveAorICAgICAgICAgICAgICAgIFRoaXMgYm94IGNvbnRhaW5zIGluaXRp
YWxpemluZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGRlY29kZXIgYXMgZGVmaW5lZCBpbiA0LjMuMi4K
KworICAgICAgICA0LjMuMiBPcHVzIFNwZWNpZmljIEJveDxhIG5hbWU9IjQuMy4yIj48L2E+Cisg
ICAgICAgICAgICBFeGFjdGx5IG9uZSBPcHVzIFNwZWNpZmljIEJveCBzaGFsbCBiZSBwcmVzZW50
IGluIGVhY2ggT3B1c1NhbXBsZUVudHJ5LgorICAgICAgICAgICAgVGhlIE9wdXMgU3BlY2lmaWMg
Qm94IGNvbnRhaW5zIHRoZSBWZXJzaW9uIGZpZWxkIGFuZCB0aGlzIHNwZWNpZmljYXRpb24gZGVm
aW5lcyB2ZXJzaW9uIDAgb2YgdGhpcyBib3guCisgICAgICAgICAgICBJZiBpbmNvbXBhdGlibGUg
Y2hhbmdlcyBvY2N1cmVkIGluIHRoZSBmaWVsZHMgYWZ0ZXIgdGhlIFZlcnNpb24gZmllbGQgd2l0
aGluIHRoZSBPcHVzU3BlY2lmaWNCb3ggaW4gdGhlCisgICAgICAgICAgICBmdXR1cmUgdmVyc2lv
bnMgb2YgdGhpcyBzcGVjaWZpY2F0aW9uLCBhbm90aGVyIHZlcnNpb24gd2lsbCBiZSBkZWZpbmVk
LgorICAgICAgICAgICAgVGhpcyBib3ggcmVmZXJzIHRvIE9nZyBPcHVzIFszXSBhdCBtYW55IHBh
cnRzIGJ1dCBhbGwgdGhlIGRhdGEgYXJlIHN0b3JlZCBhcyBiaWctZW5kaWFuIGZvcm1hdC4KKwor
ICAgICAgICAgICAgVGhlIHN5bnRheCBhbmQgc2VtYW50aWNzIG9mIHRoZSBPcHVzIFNwZWNpZmlj
IEJveCBpcyBzaG93biBhcyBmb2xsb3dzLgorCisgICAgICAgICAgICBjbGFzcyBDaGFubmVsTWFw
cGluZ1RhYmxlICh1bnNpZ25lZCBpbnQoOCkgT3V0cHV0Q2hhbm5lbENvdW50KXsKKyAgICAgICAg
ICAgICAgICB1bnNpZ25lZCBpbnQoOCkgU3RyZWFtQ291bnQ7CisgICAgICAgICAgICAgICAgdW5z
aWduZWQgaW50KDgpIENvdXBsZWRDb3VudDsKKyAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQo
OCAqIE91dHB1dENoYW5uZWxDb3VudCkgQ2hhbm5lbE1hcHBpbmc7CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgIGFsaWduZWQoOCkgY2xhc3MgT3B1c1NwZWNpZmljQm94IGV4dGVuZHMgQm94
KCdkT3BzJyl7CisgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50KDgpIFZlcnNpb247CisgICAg
ICAgICAgICAgICAgdW5zaWduZWQgaW50KDgpIE91dHB1dENoYW5uZWxDb3VudDsKKyAgICAgICAg
ICAgICAgICB1bnNpZ25lZCBpbnQoMTYpIFByZVNraXA7CisgICAgICAgICAgICAgICAgdW5zaWdu
ZWQgaW50KDMyKSBJbnB1dFNhbXBsZVJhdGU7CisgICAgICAgICAgICAgICAgc2lnbmVkIGludCgx
NikgT3V0cHV0R2FpbjsKKyAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQoOCkgQ2hhbm5lbE1h
cHBpbmdGYW1pbHk7CisgICAgICAgICAgICAgICAgaWYgKENoYW5uZWxNYXBwaW5nRmFtaWx5ICE9
IDApIHsKKyAgICAgICAgICAgICAgICAgICAgQ2hhbm5lbE1hcHBpbmdUYWJsZShPdXRwdXRDaGFu
bmVsQ291bnQpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgKyBWZXJzaW9uOgorICAgICAgICAgICAgICAgIFRoZSBWZXJzaW9uIGZpZWxkIHNoYWxsIGJl
IHNldCB0byAwLgorICAgICAgICAgICAgICAgIEluIHRoZSBmdXR1cmUgdmVyc2lvbnMgb2YgdGhp
cyBzcGVjaWZpY2F0aW9uLCB0aGlzIGZpZWxkIG1heSBiZSBzZXQgdG8gb3RoZXIgdmFsdWVzLiBB
bmQgd2l0aG91dCBzdXBwb3J0CisgICAgICAgICAgICAgICAgb2YgdGhvc2UgdmFsdWVzLCB0aGUg
cmVhZGVyIHNoYWxsIG5vdCByZWFkIHRoZSBmaWVsZHMgYWZ0ZXIgdGhpcyB3aXRoaW4gdGhlIE9w
dXNTcGVjaWZpY0JveC4KKyAgICAgICAgICAgICsgT3V0cHV0Q2hhbm5lbENvdW50OgorICAgICAg
ICAgICAgICAgIFRoZSBPdXRwdXRDaGFubmVsQ291bnQgZmllbGQgc2hhbGwgYmUgc2V0IHRvIHRo
ZSBzYW1lIHZhbHVlIGFzIHRoZSAqT3V0cHV0IENoYW5uZWwgQ291bnQqIGZpZWxkIGluIHRoZQor
ICAgICAgICAgICAgICAgIGlkZW50aWZpY2F0aW9uIGhlYWRlciBkZWZpbmVkIGluIE9nZyBPcHVz
IFszXS4KKyAgICAgICAgICAgICsgUHJlU2tpcDoKKyAgICAgICAgICAgICAgICBUaGUgUHJlU2tp
cCBmaWVsZCBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiB0aGUgcHJpbWluZyBzYW1wbGVzLCB0aGF0
IGlzLCB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgYXQgNDgwMDAgSHoKKyAgICAgICAgICAgICAgICB0
byBkaXNjYXJkIGZyb20gdGhlIGRlY29kZXIgb3V0cHV0IHdoZW4gc3RhcnRpbmcgcGxheWJhY2su
IFRoZSB2YWx1ZSBvZiB0aGUgUHJlU2tpcCBmaWVsZCBzaGFsbCBiZSBhdCBsZWFzdAorICAgICAg
ICAgICAgICAgIDgwIG1pbGxpc2Vjb25kcycgd29ydGggb2YgUENNIHNhbXBsZXMgZXZlbiB3aGVu
IHJlbW92aW5nIGFueSBudW1iZXIgb2YgT3B1cyBzYW1wbGVzIHdoaWNoIG1heSBvciBtYXkgbm90
CisgICAgICAgICAgICAgICAgY29udGFpbiB0aGUgcHJpbWluZyBzYW1wbGVzLiBUaGUgUHJlU2tp
cCBmaWVsZCBpcyBub3QgdXNlZCBmb3IgZGlzY2FyZGluZyB0aGUgcHJpbWluZyBzYW1wbGVzIGF0
IHRoZSB3aG9sZQorICAgICAgICAgICAgICAgIHBsYXliYWNrIGF0IGFsbCBzaW5jZSBpdCBpcyBp
bmZvcm1hdGl2ZSBvbmx5LCBhbmQgdGhhdCB0YXNrIGZhbGxzIG9uIHRoZSBFZGl0IExpc3QgQm94
LgorICAgICAgICAgICAgKyBJbnB1dFNhbXBsZVJhdGU6CisgICAgICAgICAgICAgICAgVGhlIElu
cHV0U2FtcGxlUmF0ZSBmaWVsZCBzaGFsbCBiZSBzZXQgdG8gdGhlIHNhbWUgdmFsdWUgYXMgdGhl
ICpJbnB1dCBTYW1wbGUgUmF0ZSogZmllbGQgaW4gdGhlCisgICAgICAgICAgICAgICAgaWRlbnRp
ZmljYXRpb24gaGVhZGVyIGRlZmluZWQgaW4gT2dnIE9wdXMgWzNdLgorICAgICAgICAgICAgKyBP
dXRwdXRHYWluOgorICAgICAgICAgICAgICAgIFRoZSBPdXRwdXRHYWluIGZpZWxkIHNoYWxsIGJl
IHNldCB0byB0aGUgc2FtZSB2YWx1ZSBhcyB0aGUgKk91dHB1dCBHYWluKiBmaWVsZCBpbiB0aGUg
aWRlbnRpZmljYXRpb24KKyAgICAgICAgICAgICAgICBoZWFkZXIgZGVmaW5lIGluIE9nZyBPcHVz
IFszXS4gTm90ZSB0aGF0IHRoZSB2YWx1ZSBpcyBzdG9yZWQgYXMgOC44IGZpeGVkLXBvaW50Lgor
ICAgICAgICAgICAgKyBDaGFubmVsTWFwcGluZ0ZhbWlseToKKyAgICAgICAgICAgICAgICBUaGUg
Q2hhbm5lbE1hcHBpbmdGYW1pbHkgZmllbGQgc2hhbGwgYmUgc2V0IHRvIHRoZSBzYW1lIHZhbHVl
IGFzIHRoZSAqQ2hhbm5lbCBNYXBwaW5nIEZhbWlseSogZmllbGQgaW4KKyAgICAgICAgICAgICAg
ICB0aGUgaWRlbnRpZmljYXRpb24gaGVhZGVyIGRlZmluZWQgaW4gT2dnIE9wdXMgWzNdLgorICAg
ICAgICAgICAgKyBTdHJlYW1Db3VudDoKKyAgICAgICAgICAgICAgICBUaGUgU3RyZWFtQ291bnQg
ZmllbGQgc2hhbGwgYmUgc2V0IHRvIHRoZSBzYW1lIHZhbHVlIGFzIHRoZSAqU3RyZWFtIENvdW50
KiBmaWVsZCBpbiB0aGUgaWRlbnRpZmljYXRpb24KKyAgICAgICAgICAgICAgICBoZWFkZXIgZGVm
aW5lZCBpbiBPZ2cgT3B1cyBbM10uCisgICAgICAgICAgICArIENvdXBsZWRDb3VudDoKKyAgICAg
ICAgICAgICAgICBUaGUgQ291cGxlZENvdW50IGZpZWxkIHNoYWxsIGJlIHNldCB0byB0aGUgc2Ft
ZSB2YWx1ZSBhcyB0aGUgKkNvdXBsZWQgQ291bnQqIGZpZWxkIGluIHRoZSBpZGVudGlmaWNhdGlv
bgorICAgICAgICAgICAgICAgIGhlYWRlciBkZWZpbmVkIGluIE9nZyBPcHVzIFszXS4KKyAgICAg
ICAgICAgICsgQ2hhbm5lbE1hcHBpbmc6CisgICAgICAgICAgICAgICAgVGhlIENoYW5uZWxNYXBw
aW5nIGZpZWxkIHNoYWxsIGJlIHNldCB0byB0aGUgc2FtZSBvY3RldCBzdHJpbmcgYXMgKkNoYW5u
ZWwgTWFwcGluZyogZmllbGQgaW4gdGhlIGlkZW50aS0KKyAgICAgICAgICAgICAgICBmaWNhdGlv
biBoZWFkZXIgZGVmaW5lZCBpbiBPZ2cgT3B1cyBbM10uCisKKyAgICAgICAgNC4zLjMgU2FtcGxl
IGZvcm1hdDxhIG5hbWU9IjQuMy4zIj48L2E+CisgICAgICAgICAgICBBbiBPcHVzIHNhbXBsZSBp
cyBleGFjdGx5IG9uZSBPcHVzIHBhY2tldCBmb3IgZWFjaCBvZiBkaWZmZXJlbnQgT3B1cyBiaXRz
dHJlYW1zLiBEdWUgdG8gc3VwcG9ydCBtb3JlIHRoYW4KKyAgICAgICAgICAgIHR3byBjaGFubmVs
cywgYW4gT3B1cyBzYW1wbGUgY2FuIGNvbnRhaW4gZnJhbWVzIGZyb20gbXVsdGlwbGUgT3B1cyBi
aXRzdHJlYW1zIGJ1dCBhbGwgT3B1cyBwYWNrZXRzIHNoYWxsCisgICAgICAgICAgICBzaGFyZSB3
aXRoIHRoZSB0b3RhbCBvZiBmcmFtZSBzaXplcyBpbiBhIHNpbmdsZSBPcHVzIHNhbXBsZS4gVGhl
IHdheSBvZiBob3cgdG8gcGFjayBhbiBPcHVzIHBhY2tldCBmcm9tCisgICAgICAgICAgICBlYWNo
IG9mIE9wdXMgYml0c3RyZWFtcyBpbnRvIGEgc2luZ2xlIE9wdXMgc2FtcGxlIGZvbGxvd3MgQXBw
ZW5kaXggQi4gaW4gUkZDIDY3MTYgWzJdLgorICAgICAgICAgICAgVGhlIGVuZGlhbm5lc3MgaGFz
IG5vdGhpbmcgdG8gZG8gd2l0aCBhbnkgT3B1cyBzYW1wbGUgc2luY2UgZXZlcnkgT3B1cyBwYWNr
ZXQgaXMgcHJvY2Vzc2VkIGJ5dGUtYnktYnl0ZS4KKyAgICAgICAgICAgIEluIHRoaXMgc3BlY2lm
aWNhdGlvbiwgJ3NhbXBsZScgbWVhbnMgJ09wdXMgc2FtcGxlJyBleGNlcHQgZm9yICdwYWRkZWQg
c2FtcGxlcycsICdwcmltaW5nIHNhbXBsZXMnLCAndmFsaWQKKyAgICAgICAgICAgIHNhbXBsZScg
YW5kICdzYW1wbGUtYWNjdXJhdGUnLCBpLmUuICdzYW1wbGUnIGlzICdzYW1wbGUnIGluIHRoZSB0
ZXJtIGRlZmluZWQgaW4gSVNPL0lFQyAxNDQ5Ni0xMiBbMV0uCisKKyAgICAgICAgICAgICAgICAr
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgICAgICB8IE9wdXMgcGFja2V0IDAg
KHNlbGYtZGVsaW1pdGluZyBmcmFtaW5nKSB8IE9wdXMgcGFja2V0IDEgKHVuZGVsaW1pdGVkIGZy
YW1pbmcpIHwKKyAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAg
ICAgICAgICAgICB8PC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gdGhlIHNpemUgb2YgT3B1
cyBzYW1wbGUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPnwKKworICAgICAgICAgICAgICAgICAg
ICBGaWd1cmUgMSAtIEV4YW1wbGUgc3RydWN0dXJlIG9mIGFuIE9wdXMgc2FtcGxlIGNvbnRhaW5p
bmcgdHdvIE9wdXMgYml0c3RyZWFtcworCisgICAgICAgIDQuMy40IER1cmF0aW9uIG9mIE9wdXMg
c2FtcGxlPGEgbmFtZT0iNC4zLjQiPjwvYT4KKyAgICAgICAgICAgIFRoZSBkdXJhdGlvbiBvZiBP
cHVzIHNhbXBsZSBpcyBnaXZlbiBieSBtdWx0aXBseWluZyB0aGUgdG90YWwgb2YgZnJhbWUgc2l6
ZXMgZm9yIGEgc2luZ2xlIE9wdXMgYml0c3RyZWFtCisgICAgICAgICAgICBleHByZXNzZWQgaW4g
c2Vjb25kcyBieSB0aGUgdmFsdWUgb2YgdGhlIHRpbWVzY2FsZSBmaWVsZCBpbiB0aGUgTWVkaWEg
SGVhZGVyIEJveC4KKyAgICAgICAgICAgIExldCdzIHNheSBhbiBPcHVzIHNhbXBsZSBjb25zaXN0
cyBvZiB0d28gT3B1cyBiaXRzdHJlYW1zLCB3aGVyZSB0aGUgZnJhbWUgc2l6ZSBvZiBvbmUgYml0
c3RyZWFtIGlzIDQwIG1pbGxpLQorICAgICAgICAgICAgc2Vjb25kcyBhbmQgdGhlIGZyYW1lIHNp
emUgb2YgYW5vdGhlciBpcyA2MCBtaWxsaXNlY29uZHMsIGFuZCB0aGUgdGltZXNjYWxlIGZpZWxk
IGluIHRoZSBNZWRpYSBIZWFkZXIgQm94CisgICAgICAgICAgICBpcyBzZXQgdG8gNDgwMDAsIHRo
ZW4gdGhlIGR1cmF0aW9uIG9mIHRoYXQgT3B1cyBzYW1wbGUgc2hhbGwgYmUgMTIwIG1pbGxpc2Vj
b25kcyBzaW5jZSB0aHJlZSA0MCBtaWxsaXNlY29uZAorICAgICAgICAgICAgZnJhbWUgYW5kIHR3
byA2MCBtaWxsaXNlY29uZCBmcmFtZXMgc2hhbGwgYmUgY29udGFpbmVkIGJlY2F1c2Ugb2YgdGhl
IG1heGltdW0gZHVyYXRpb24gb2YgT3B1cyBwYWNrZXQsIDEyMAorICAgICAgICAgICAgbWlsbGlz
ZWNvbmRzLCBhbmQgNTc2MCBpbiB0aGUgdGltZXNjYWxlIGluZGljYXRlZCBpbiB0aGUgTWVkaWEg
SGVhZGVyIEJveC4KKworICAgICAgICAgICAgVG8gaW5kaWNhdGUgdGhlIHZhbGlkIHNhbXBsZXMg
ZXhjbHVkaW5nIHRoZSBwYWRkZWQgc2FtcGxlcyBhdCB0aGUgZW5kIG9mIE9wdXMgYml0c3RyZWFt
LCB0aGUgZHVyYXRpb24gb2YKKyAgICAgICAgICAgIHRoZSBsYXN0IE9wdXMgc2FtcGxlIG9mIGFu
IE9wdXMgYml0c3RyZWFtIGlzIGdpdmVuIGJ5IG11bHRpcGx5aW5nIHRoZSBudW1iZXIgb2YgdGhl
IHZhbGlkIHNhbXBsZXMgYnkgdGhlCisgICAgICAgICAgICB2YWx1ZSBwcm9kdWNlZCBieSBkaXZp
ZGluZyB0aGUgdmFsdWUgb2YgdGhlIHRpbWVzY2FsZSBmaWVsZCBpbiB0aGUgTWVkaWEgSGVhZGVy
IEJveCBieSA0ODAwMC4KKworICAgICAgICA0LjMuNSBTdWItc2FtcGxlPGEgbmFtZT0iNC4zLjUi
PjwvYT4KKyAgICAgICAgICAgIFRoZSBzdHJ1Y3R1cmUgb2YgdGhlIGxhc3QgT3B1cyBwYWNrZXQg
aW4gYW4gT3B1cyBzYW1wbGUgaXMgZGlmZmVyZW50IGZyb20gdGhlIG90aGVycyBpbiB0aGUgc2Ft
ZSBPcHVzIHNhbXBsZSwKKyAgICAgICAgICAgIGFuZCB0aGUgb3RoZXJzIGFyZSBpbnZhbGlkIE9w
dXMgcGFja2V0cyBhcyBhbiBPcHVzIHNhbXBsZSBiZWNhdXNlIG9mIHNlbGYtZGVsaW1pdGluZyBm
cmFtaW5nLiBUbyBhdm9pZAorICAgICAgICAgICAgY29tcGxleGl0aWVzLCBzdWItc2FtcGxlIGlz
IG5vdCBkZWZpbmVkIGZvciBPcHVzIHNhbXBsZSBpbiB0aGlzIHNwZWNpZmljYXRpb24uCisKKyAg
ICAgICAgNC4zLjYgUmFuZG9tIEFjY2VzczxhIG5hbWU9IjQuMy42Ij48L2E+CisgICAgICAgICAg
ICBUaGlzIHN1YmNsYXVzZSBkZXNjcmliZXMgdGhlIG5hdHVyZSBvZiB0aGUgcmFuZG9tIGFjY2Vz
cyBvZiBPcHVzIHNhbXBsZS4KKworICAgICAgICAgICAgNC4zLjYuMSBSYW5kb20gQWNjZXNzIFBv
aW50PGEgbmFtZT0iNC4zLjYuMSI+PC9hPgorICAgICAgICAgICAgICAgIEFsbCBPcHVzIHNhbXBs
ZXMgY2FuIGJlIGluZGVwZW5kZW50bHkgZGVjb2RlZCBpLmUuIGV2ZXJ5IE9wdXMgc2FtcGxlIGlz
IGEgc3luYyBzYW1wbGUuIFRoZXJlZm9yZSwgdGhlCisgICAgICAgICAgICAgICAgU3luYyBTYW1w
bGUgQm94IHNoYWxsIG5vdCBiZSBwcmVzZW50IGFzIGxvbmcgYXMgdGhlcmUgYXJlIG5vIHNhbXBs
ZXMgb3RoZXIgdGhhbiBPcHVzIHNhbXBsZXMgaW4gdGhlIHNhbWUKKyAgICAgICAgICAgICAgICB0
cmFjay4gQW5kIHRoZSBzYW1wbGVfaXNfbm9uX3N5bmNfc2FtcGxlIGZpZWxkIGZvciBPcHVzIHNh
bXBsZXMgc2hhbGwgYmUgc2V0IHRvIDAuCisKKyAgICAgICAgICAgIDQuMy42LjIgUHJlLXJvbGw8
YSBuYW1lPSI0LjMuNi4yIj48L2E+CisgICAgICAgICAgICAgICAgT3B1cyBiaXRzdHJlYW0gcmVx
dWlyZXMgYXQgbGVhc3QgODAgbWlsbGlzZWNvbmQgcHJlLXJvbGwgYWZ0ZXIgZWFjaCByYW5kb20g
YWNjZXNzIHRvIGdldCBjb3JyZWN0IG91dHB1dC4KKyAgICAgICAgICAgICAgICBQcmUtcm9sbCBp
cyBpbmRpY2F0ZWQgYnkgdGhlIHJvbGxfZGlzdGFuY2UgZmllbGQgaW4gQXVkaW9Sb2xsUmVjb3Zl
cnlFbnRyeS4gQXVkaW9QcmVSb2xsRW50cnkgc2hhbGwgbm90CisgICAgICAgICAgICAgICAgYmUg
dXNlZCBzaW5jZSBldmVyeSBPcHVzIHNhbXBsZSBpcyBhIHN5bmMgc2FtcGxlIGluIE9wdXMgYml0
c3RyZWFtLiBOb3RlIHRoYXQgcm9sbF9kaXN0YW5jZSBpcyBleHByZXNzZWQKKyAgICAgICAgICAg
ICAgICBpbiBzYW1wbGUgdW5pdHMgaW4gYSB0ZXJtIG9mIElTTyBCYXNlIE1lZGlhIEZpbGUgRm9y
bWF0LCBhbmQgYWx3YXlzIHRha2VzIG5lZ2F0aXZlIHZhbHVlcy4KKworICAgICAgICAgICAgICAg
IEZvciBhbnkgdHJhY2sgY29udGFpbmluZyBPcHVzIGJpdHN0cmVhbXMsIGF0IGxlYXN0IG9uZSBT
YW1wbGUgR3JvdXAgRGVzY3JpcHRpb24gQm94IGFuZCBhdCBsZWFzdCBvbmUKKyAgICAgICAgICAg
ICAgICBTYW1wbGUgdG8gR3JvdXAgQm94IHdpdGhpbiB0aGUgU2FtcGxlIFRhYmxlIEJveCBzaGFs
bCBiZSBwcmVzZW50IGFuZCB0aGVzZSBoYXZlIHRoZSBncm91cGluZ190eXBlIGZpZWxkCisgICAg
ICAgICAgICAgICAgc2V0IHRvICdyb2xsJy4gSWYgYW55IE9wdXMgc2FtcGxlIGlzIGNvbnRhaW5l
ZCBpbiBhIHRyYWNrIGZyYWdtZW50LCB0aGUgU2FtcGxlIHRvIEdyb3VwIEJveCB3aXRoIHRoZQor
ICAgICAgICAgICAgICAgIGdyb3VwaW5nX3R5cGUgZmllbGQgc2V0IHRvICdyb2xsJyBzaGFsbCBi
ZSBwcmVzZW50IGZvciB0aGF0IHRyYWNrIGZyYWdtZW50LgorCisgICAgICAgICAgICAgICAgRm9y
IHRoZSByZXF1aXJlbWVudCBvZiBBdWRpb1JvbGxSZWNvdmVyeUVudHJ5LCB0aGUgY29tcGF0aWJs
ZV9icmFuZHMgZmllbGQgaW4gdGhlIEZpbGUgVHlwZSBCb3ggc2hhbGwKKyAgICAgICAgICAgICAg
ICBjb250YWluIGF0IGxlYXN0IG9uZSBicmFuZCB3aGljaCByZXF1aXJlcyBzdXBwb3J0IGZvciBy
b2xsIGdyb3Vwcy4KKzxhIG5hbWU9IjQuNCI+PC9hPgorICAgIDQuNCBUcmltbWluZyBvZiBBY3R1
YWwgRHVyYXRpb24KKyAgICAgICAgRHVlIHRvIHRoZSBwcmltaW5nIHNhbXBsZXMgKG9yIHRoZSBw
YWRkaW5nIGF0IHRoZSBiZWdpbm5pbmcpIGRlcml2ZWQgZnJvbSB0aGUgcHJlLXJvbGwgZm9yIHRo
ZSBzdGFydHVwIGFuZCB0aGUKKyAgICAgICAgcGFkZGVkIHNhbXBsZXMgYXQgdGhlIGVuZCwgd2Ug
bmVlZCB0cmltIGZyb20gbWVkaWEgdG8gZ2V0IHRoZSBhY3R1YWwgZHVyYXRpb24uIEFuIGVkaXQg
aW4gdGhlIEVkaXQgTGlzdCBCb3ggY2FuCisgICAgICAgIGFjaGlldmUgdGhpcyBkZW1hbmQsIGFu
ZCB0aGUgRWRpdCBCb3ggYW5kIHRoZSBFZGl0IExpc3QgQm94IHNoYWxsIGJlIHByZXNlbnQuCisK
KyAgICAgICAgRm9yIHNhbXBsZS1hY2N1cmF0ZSB0cmltbWluZywgcHJvcGVyIHRpbWVzY2FsZSBz
aG91bGQgYmUgc2V0IHRvIHRoZSB0aW1lc2NhbGUgZmllbGQgaW4gdGhlIE1vdmllIEhlYWRlciBC
b3gKKyAgICAgICAgYW5kIHRoZSBNZWRpYSBIZWFkZXIgQm94IGluc2lkZSBUcmFjayBCb3goZXMp
IGZvciBPcHVzIGJpdHN0cmVhbS4gVGhlIHRpbWVzY2FsZSBmaWVsZCBpbiB0aGUgTWVkaWEgSGVh
ZGVyIEJveCBpcworICAgICAgICB0eXBpY2FsbHkgc2V0IHRvIDQ4MDAwLiBJdCBpcyByZWNvbW1l
bmRlZCB0aGF0IHRoZSB0aW1lc2NhbGUgZmllbGQgaW4gdGhlIE1vdmllIEhlYWRlciBCb3ggYmUg
c2V0IHRvIHRoZSBzYW1lCisgICAgICAgIHZhbHVlIG9mIHRoZSB0aW1lc2NhbGUgZmllbGQgaW4g
dGhlIE1lZGlhIEhlYWRlciBCb3ggaW4gb3JkZXIgdG8gYXZvaWQgdGhlIHJvdW5kaW5nIHByb2Js
ZW0gd2hlbiBzcGVjaWZ5aW5nCisgICAgICAgIGR1cmF0aW9uIG9mIGVkaXQgaWYgdGhlIHRpbWVz
Y2FsZXMgaW4gYWxsIG9mIHRoZSBNZWRpYSBIZWFkZXIgQm94ZXMgYXJlIHNldCB0byB0aGUgc2Ft
ZSB2YWx1ZS4KKworICAgICAgICBGb3IgZXhhbXBsZSwgdG8gaW5kaWNhdGUgdGhlIGFjdHVhbCBk
dXJhdGlvbiBvZiBhbiBPcHVzIGJpdHN0cmVhbSBpbiBhIHRyYWNrIHdpdGggdGhlIHRpbWVzY2Fs
ZSBmaWVsZHMgb2YgYm90aAorICAgICAgICB0aGUgTW92aWUgSGVhZGVyIEJveCBhbmQgdGhlIE1l
ZGlhIEhlYWRlciBCb3ggc2V0IHRvIDQ4MDAwLCB3ZSB3b3VsZCB1c2UgdGhlIGZvbGxvd2luZyBl
ZGl0OgorICAgICAgICAgICAgc2VnbWVudF9kdXJhdGlvbiA9IHRoZSBudW1iZXIgb2YgdGhlIHZh
bGlkIHNhbXBsZXMKKyAgICAgICAgICAgIG1lZGlhX3RpbWUgPSB0aGUgbnVtYmVyIG9mIHRoZSBw
cmltaW5nIHNhbXBsZXMKKyAgICAgICAgICAgIG1lZGlhX3JhdGUgPSAxICZsdCZsdCAxNgorCisg
ICAgICAgIFRoZSBFZGl0IExpc3QgQm94IGlzIGFwcGxpZWQgdG8gd2hvbGUgbW92aWUgaW5jbHVk
aW5nIGFsbCBtb3ZpZSBmcmFnbWVudHMuIFRoZXJlZm9yZSwgaXQgaXMgaW1wb3NzaWJsZSB0byB0
ZWxsCisgICAgICAgIHRoZSBhY3R1YWwgZHVyYXRpb24gaW4gdGhlIGNhc2UgcHJvZHVjaW5nIG1v
dmllIGZyYWdtZW50cyBvbiB0aGUgZmx5IHN1Y2ggYXMgbGl2ZS1zdHJlYW1pbmcuIEluIHN1Y2gg
Y2FzZXMsCisgICAgICAgIHRoZSBkdXJhdGlvbiBvZiB0aGUgbGFzdCBPcHVzIHNhbXBsZSBtYXkg
YmUgaGVscGZ1bCBieSBzZXR0aW5nIHplcm8gdG8gdGhlIHNlZ21lbnRfZHVyYXRpb24gZmllbGQg
c2luY2UgdGhlCisgICAgICAgIHZhbHVlIDAgcmVwcmVzZW50cyBpbXBsaWNpdCBkdXJhdGlvbiBl
cXVhbCB0byB0aGUgc3VtIG9mIHRoZSBkdXJhdGlvbiBvZiBhbGwgc2FtcGxlcy4KKzxhIG5hbWU9
IjQuNSI+PC9hPgorICAgIDQuNSBDaGFubmVsIExheW91dCAoaW5mb3JtYXRpdmUpCisgICAgICAg
IEJ5IHRoZSBhcHBsaWNhdGlvbiBvZiBhbHRlcm5hdGVfZ3JvdXAgaW4gdGhlIFRyYWNrIEhlYWRl
ciBCb3gsIHdob2xlIGF1ZGlvIGNoYW5uZWxzIGluIGFsbCBhY3RpdmUgdHJhY2tzIGZyb20KKyAg
ICAgICAgbm9uLWFsdGVybmF0ZSBncm91cCBhbmQvb3IgZGlmZmVyZW50IGFsdGVybmF0ZSBncm91
cCBmcm9tIGVhY2ggb3RoZXIgYXJlIGNvbXBvc2l0ZWQgaW50byB0aGUgcHJlc2VudGF0aW9uLiBJ
ZgorICAgICAgICBhbiBPcHVzIHNhbXBsZSBjb25zaXN0cyBvZiBtdWx0aXBsZSBPcHVzIGJpdHN0
cmVhbXMsIGl0IGNhbiBiZSBzcGxpdHRlZCBpbnRvIGluZGl2aWR1YWwgT3B1cyBiaXRzdHJlYW1z
IGFuZAorICAgICAgICByZWNvbnN0cnVjdGVkIGludG8gbmV3IE9wdXMgc2FtcGxlcyBhcyBsb25n
IGFzIGV2ZXJ5IE9wdXMgYml0c3RyZWFtIGhhcyB0aGUgc2FtZSB0b3RhbCBkdXJhdGlvbiBpbiBl
YWNoIE9wdXMKKyAgICAgICAgc2FtcGxlLiBUaGlzIG5hdHVyZSBjYW4gYmUgdXRpbGl6ZWQgdG8g
ZW5jYXBzdWxhdGUgYSBzaW5nbGUgT3B1cyBiaXRzdHJlYW0gaW4gZWFjaCB0cmFjayB3aXRob3V0
IGJyZWFraW5nIHRoZQorICAgICAgICBvcmlnaW5hbCBjaGFubmVsIGxheW91dC4KKworICAgICAg
ICBBcyBhbiBleGFtcGxlLCBsZXQncyBzYXkgdGhlcmUgaXMgYSBmb2xsb3dpbmcgdHJhY2s6Cisg
ICAgICAgICAgICBPdXRwdXRDaGFubmVsQ291bnQgPSA2OworICAgICAgICAgICAgU3RyZWFtQ291
bnQgICAgICAgID0gNDsKKyAgICAgICAgICAgIENvdXBsZWRDb3VudCAgICAgICA9IDI7CisgICAg
ICAgICAgICBDaGFubmVsTWFwcGluZyAgICAgPSB7MCwgNCwgMSwgMiwgMywgNX07IC8vIGZyb250
IGxlZnQsIGZyb250IGNlbnRlciwgZnJvbnQgcmlnaHQsIHJlYXIgbGVmdCwgcmVhciByaWdodCwg
TEZFCisgICAgICAgIEhlcmUsIHRvIGNvdXBsZSBmcm9udCBsZWZ0IHRvIGZyb250IHJpZ2h0IGNo
YW5uZWxzIGludG8gdGhlIGZpcnN0IHN0cmVhbSwgYW5kIGNvdXBsZSByZWFyIGxlZnQgdG8gcmVh
ciByaWdodAorICAgICAgICBjaGFubmVscyBpbnRvIHRoZSBzZWNvbmQgc3RyZWFtLCByZW9yZGVy
aW5nIGlzIG5lZWRlZCBzaW5jZSBjb3VwbGVkIHN0cmVhbXMgbXVzdCBwcmVjZWRlIGFueSBub24t
Y291cGxlZCBzdHJlYW0uCisgICAgICAgIFlvdSBleHRyYWN0IHRoZSBmb3VyIE9wdXMgYml0c3Ry
ZWFtcyBmcm9tIHRoaXMgdHJhY2sgYW5kIHlvdSBlbmNhcHN1bGF0ZSB0d28gb2YgdGhlIGZvdXIg
aW50byBhIHRyYWNrIGFuZCB0aGUKKyAgICAgICAgb3RoZXJzIGludG8gYW5vdGhlciB0cmFjay4g
VGhlIGZvcm1lciB0cmFjayBpcyBhcyBmb2xsb3dzLgorICAgICAgICAgICAgT3V0cHV0Q2hhbm5l
bENvdW50ID0gNjsKKyAgICAgICAgICAgIFN0cmVhbUNvdW50ICAgICAgICA9IDI7CisgICAgICAg
ICAgICBDb3VwbGVkQ291bnQgICAgICAgPSAyOworICAgICAgICAgICAgQ2hhbm5lbE1hcHBpbmcg
ICAgID0gezAsIDI1NSwgMSwgMiwgMywgMjU1fTsgLy8gZnJvbnQgbGVmdCwgZnJvbnQgY2VudGVy
LCBmcm9udCByaWdodCwgcmVhciBsZWZ0LCByZWFyIHJpZ2h0LCBMRkUKKyAgICAgICAgQW5kIHRo
ZSBsYXR0ZXIgdHJhY2sgaXMgYXMgZm9sbG93cy4KKyAgICAgICAgICAgIE91dHB1dENoYW5uZWxD
b3VudCA9IDY7CisgICAgICAgICAgICBTdHJlYW1Db3VudCAgICAgICAgPSAyOworICAgICAgICAg
ICAgQ291cGxlZENvdW50ICAgICAgID0gMDsKKyAgICAgICAgICAgIENoYW5uZWxNYXBwaW5nICAg
ICA9IHsyNTUsIDAsIDI1NSwgMjU1LCAyNTUsIDF9OyAvLyBmcm9udCBsZWZ0LCBmcm9udCBjZW50
ZXIsIGZyb250IHJpZ2h0LCByZWFyIGxlZnQsIHJlYXIgcmlnaHQsIExGRQorICAgICAgICBJbiBh
ZGRpdGlvbiwgdGhlIHZhbHVlIG9mIHRoZSBhbHRlcm5hdGVfZ3JvdXAgZmllbGQgaW4gdGhlIGJv
dGggdHJhY2tzIGlzIHNldCB0byAwLiBBcyB0aGUgcmVzdWx0LCB0aGUgcGxheWVyCisgICAgICAg
IG1heSBwbGF5IGFzIGlmIGNoYW5uZWxzIHdpdGggMjU1IGFyZSBub3QgcHJlc2VudCwgYW5kIHBs
YXkgdGhlIHByZXNlbnRhdGlvbiBjb25zdHJ1Y3RlZCBmcm9tIHRoZSBib3RoIHRyYWNrcworICAg
ICAgICBpbiB0aGUgc2FtZSBjaGFubmVsIGxheW91dCBhcyB0aGUgb25lIG9mIHRoZSBvcmlnaW5h
bCB0cmFjay4gS2VlcCBpbiBtaW5kIHRoYXQgdGhlIHdheSBvZiB0aGUgY29tcG9zaXRpb24sIGku
ZS4KKyAgICAgICAgdGhlIG1peGluZyBmb3IgcGxheWJhY2ssIGlzIG5vdCBkZWZpbmVkIGhlcmUs
IGFuZCBtYXliZSBkaWZmZXJlbnQgcmVzdWx0cyBjb3VsZCBvY2N1ciBleGNlcHQgZm9yIHRoZSBj
aGFubmVsCisgICAgICAgIGxheW91dCBvZiB0aGUgb3JpZ2luYWwsIGRlcGVuZGluZyBvbiBhbiBp
bXBsZW1lbnRhdGlvbiBvciB0aGUgZGVmaW5pdGlvbiBvZiBhIGRlcml2ZWQgZmlsZSBmb3JtYXQu
CisKKyAgICAgICAgTm90ZSB0aGF0IHNvbWUgZGVyaXZlZCBmaWxlIGZvcm1hdHMgbWF5IHNwZWNp
ZnkgdGhlIHJlc3RyaWN0aW9uIHRvIGlnbm9yZSBhbHRlcm5hdGUgZ3JvdXBpbmcuIEluIHRoZSBj
b250ZXh0IG9mCisgICAgICAgIHN1Y2ggZmlsZSBmb3JtYXRzLCB0aGlzIGFwcGxpY2F0aW9uIGlz
IG5vdCBhdmFpbGFibGUuIFRoaXMgdW5hdmFpbGFiaWxpdHkgZG9lcyBub3QgbWVhbiBpbmNvbXBh
dGliaWxpdGllcyBhbW9uZworICAgICAgICBmaWxlIGZvcm1hdHMgdW5sZXNzIHRoZSByZXN0cmlj
dGlvbiB0byB0aGUgdmFsdWUgb2YgdGhlIGFsdGVybmF0ZV9ncm91cCBmaWVsZCBpcyBzcGVjaWZp
ZWQgYW5kIGJyaW5ncyBhYm91dAorICAgICAgICBhbnkgY29uZmxpY3QgYW1vbmcgdGhlaXIgZGVm
aW5pdGlvbnMuCis8YSBuYW1lPSI0LjYiPjwvYT4KKyAgICA0LjYgQmFzaWMgU3RydWN0dXJlIChp
bmZvcm1hdGl2ZSkKKyAgICAgICAgNC42LjEgSW5pdGlhbCBNb3ZpZTxhIG5hbWU9IjQuNi4xIj48
L2E+CisgICAgICAgICAgICBUaGlzIHN1YmNsYXVzZSBzaG93cyBhIGJhc2ljIHN0cnVjdHVyZSBv
ZiB0aGUgTW92aWUgQm94IGFzIGZvbGxvd3M6CisKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
KworICAgICAgICAgICAgfG1vb3Z8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwg
TW92aWUgQm94ICAgICAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSsKKyAgICAgICAgICAgIHwgICAgfG12aGR8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8
IE1vdmllIEhlYWRlciBCb3ggICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSst
LS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0rCisgICAgICAgICAgICB8ICAgIHx0cmFrfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAg
fCBUcmFjayBCb3ggICAgICAgICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0r
LS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHx0a2hkfCAgICB8ICAgIHwgICAgfCAgICB8ICAg
IHwgVHJhY2sgSGVhZGVyIEJveCAgICAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0t
Ky0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ZWR0c3wgICAgfCAgICB8ICAgIHwgICAgfCAg
ICB8IEVkaXQgQm94ICAgICAgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0t
LSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ZWxzdHwgICAgfCAgICB8ICAgIHwg
ICAgfCBFZGl0IExpc3QgQm94ICAgICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0t
LS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHxtZGlhfCAgICB8ICAgIHwgICAgfCAgICB8
ICAgIHwgTWVkaWEgQm94ICAgICAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSst
LS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHxtZGhkfCAgICB8ICAgIHwgICAg
fCAgICB8IE1lZGlhIEhlYWRlciBCb3ggICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0r
LS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8aGRscnwgICAgfCAgICB8ICAg
IHwgICAgfCBIYW5kbGVyIFJlZmVyZW5jZSBCb3ggICAgICAgIHwKKyAgICAgICAgICAgICstLS0t
Ky0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfG1pbmZ8ICAgIHwgICAgfCAg
ICB8ICAgIHwgTWVkaWEgSW5mb3JtYXRpb24gQm94ICAgICAgICB8CisgICAgICAgICAgICArLS0t
LSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwgICAgfHNtaGR8ICAgIHwg
ICAgfCAgICB8IFNvdW5kIE1lZGlhIEhlYWRlciBCb3ggICAgICAgfAorICAgICAgICAgICAgKy0t
LS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ICAgIHxkaW5mfCAgICB8
ICAgIHwgICAgfCBEYXRhIEluZm9ybWF0aW9uIEJveCAgICAgICAgIHwKKyAgICAgICAgICAgICst
LS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHxkcmVm
fCAgICB8ICAgIHwgRGF0YSBSZWZlcmVuY2UgQm94ICAgICAgICAgICB8CisgICAgICAgICAgICAr
LS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAg
IHx1cmwgfCAgICB8IERhdGFFbnRyeVVybEJveCAgICAgICAgICAgICAgfAorICAgICAgICAgICAg
Ky0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKyBvciArLS0tLSstLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAg
ICB8dXJuIHwgICAgfCBEYXRhRW50cnlVcm5Cb3ggICAgICAgICAgICAgIHwKKyAgICAgICAgICAg
ICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfCAgICB8c3RibHwg
ICAgfCAgICB8ICAgIHwgU2FtcGxlIFRhYmxlICAgICAgICAgICAgICAgICB8CisgICAgICAgICAg
ICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8
c3RzZHwgICAgfCAgICB8IFNhbXBsZSBEZXNjcmlwdGlvbiBCb3ggICAgICAgfAorICAgICAgICAg
ICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAg
fCAgICB8T3B1c3wgICAgfCBPcHVzU2FtcGxlRW50cnkgICAgICAgICAgICAgIHwKKyAgICAgICAg
ICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAg
IHwgICAgfCAgICB8ZE9wc3wgT3B1cyBTcGVjaWZpYyBCb3ggICAgICAgICAgICB8CisgICAgICAg
ICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAg
ICB8c3R0c3wgICAgfCAgICB8IERlY29kaW5nIFRpbWUgdG8gU2FtcGxlIEJveCAgfAorICAgICAg
ICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwg
ICAgfHN0c2N8ICAgIHwgICAgfCBTYW1wbGUgVG8gQ2h1bmsgQm94ICAgICAgICAgIHwKKyAgICAg
ICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfCAgICB8
ICAgIHxzdHN6fCAgICB8ICAgIHwgU2FtcGxlIFNpemUgQm94ICAgICAgICAgICAgICB8CisgICAg
ICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKyBvciArLS0tLSstLS0tKy0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwgICAg
fCAgICB8c3R6MnwgICAgfCAgICB8IENvbXBhY3QgU2FtcGxlIFNpemUgQm94ICAgICAgfAorICAg
ICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ICAg
IHwgICAgfHN0Y298ICAgIHwgICAgfCBDaHVuayBPZmZzZXQgQm94ICAgICAgICAgICAgIHwKKyAg
ICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rIG9yICstLS0tKy0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfCAg
ICB8ICAgIHxjbzY0fCAgICB8ICAgIHwgQ2h1bmsgTGFyZ2UgT2Zmc2V0IEJveCAgICAgICB8Cisg
ICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwg
ICAgfCAgICB8c2dwZHwgICAgfCAgICB8IFNhbXBsZSBHcm91cCBEZXNjcmlwdGlvbiBCb3ggfAor
ICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8
ICAgIHwgICAgfHNiZ3B8ICAgIHwgICAgfCBTYW1wbGUgdG8gR3JvdXAgQm94ICAgICAgICAgIHwK
KyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8bXZleHwqICAg
fCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgTW92aWUgRXh0ZW5kcyBCb3ggICAgICAgICAgICB8
CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8dHJl
eHwqICAgfCAgICB8ICAgIHwgICAgfCAgICB8IFRyYWNrIEV4dGVuZHMgQm94ICAgICAgICAgICAg
fAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisKKyAgICAgICAgICAgICAgICAgICAgRmln
dXJlIDIgLSBCYXNpYyBzdHJ1Y3R1cmUgb2YgTW92aWUgQm94CisKKyAgICAgICAgICAgIEl0IGlz
IHN0cm9uZ2x5IHJlY29tbWVuZGVkIHRoYXQgdGhlIG9yZGVyIG9mIGJveGVzIHNob3VsZCBmb2xs
b3cgdGhlIGFib3ZlIHN0cnVjdHVyZS4KKyAgICAgICAgICAgIEJveGVzIG1hcmtlZCB3aXRoIGFu
IGFzdGVyaXNrICgqKSBtYXkgYmUgcHJlc2VudC4KKyAgICAgICAgICAgIEZvciBtb3N0IGJveGVz
IGxpc3RlZCBhYm92ZSwgdGhlIGRlZmluaXRpb24gaXMgYXMgaXMgZGVmaW5lZCBpbiBJU08vSUVD
IDE0NDk2LTEyIFsxXS4gVGhlIGFkZGl0aW9uYWwgYm94ZXMKKyAgICAgICAgICAgIGFuZCB0aGUg
YWRkaXRpb25hbCByZXF1aXJlbWVudHMsIHJlc3RyaWN0aW9ucyBhbmQgcmVjb21tZW5kYXRpb25z
IHRvIHRoZSBvdGhlciBib3hlcyBhcmUgZGVzY3JpYmVkIGluIHRoaXMKKyAgICAgICAgICAgIHNw
ZWNpZmljYXRpb24uCisKKyAgICAgICAgNC42LjIgTW92aWUgRnJhZ21lbnRzPGEgbmFtZT0iNC42
LjIiPjwvYT4KKyAgICAgICAgICAgIFRoaXMgc3ViY2xhdXNlIHNob3dzIGEgYmFzaWMgc3RydWN0
dXJlIG9mIHRoZSBNb3ZpZSBGcmFnbWVudCBCb3ggYXMgZm9sbG93czoKKworICAgICAgICAgICAg
Ky0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8bW9vZnwgICAgfCAgICB8ICAgIHwgICAgfCAg
ICB8ICAgIHwgICAgfCBNb3ZpZSBGcmFnbWVudCBCb3ggICAgICAgICAgIHwKKyAgICAgICAgICAg
ICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8bWZoZHwgICAgfCAgICB8ICAgIHwg
ICAgfCAgICB8ICAgIHwgTW92aWUgRnJhZ21lbnQgSGVhZGVyIEJveCAgICB8CisgICAgICAgICAg
ICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfHRyYWZ8ICAgIHwgICAgfCAgICB8
ICAgIHwgICAgfCAgICB8IFRyYWNrIEZyYWdtZW50IEJveCAgICAgICAgICAgfAorICAgICAgICAg
ICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfHRmaGR8ICAgIHwgICAg
fCAgICB8ICAgIHwgICAgfCBUcmFjayBGcmFnbWVudCBIZWFkZXIgQm94ICAgIHwKKyAgICAgICAg
ICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHx0cnVufCAgICB8ICAg
IHwgICAgfCAgICB8ICAgIHwgVHJhY2sgRnJhZ21lbnQgUnVuIEJveCAgICAgICB8CisgICAgICAg
ICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8c2dwZHwqICAgfCAg
ICB8ICAgIHwgICAgfCAgICB8IFNhbXBsZSBHcm91cCBEZXNjcmlwdGlvbiBCb3ggfAorICAgICAg
ICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfHNiZ3B8KiAgIHwg
ICAgfCAgICB8ICAgIHwgICAgfCBTYW1wbGUgdG8gR3JvdXAgQm94ICAgICAgICAgIHwKKyAgICAg
ICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCisgICAgICAgICAgICAgICAgICAgIEZpZ3VyZSAzIC0g
QmFzaWMgc3RydWN0dXJlIG9mIE1vdmllIEZyYWdtZW50IEJveAorCisgICAgICAgICAgICBJdCBp
cyBzdHJvbmdseSByZWNvbW1lbmRlZCB0aGF0IHRoZSBNb3ZpZSBGcmFnbWVudCBIZWFkZXIgQm94
IGFuZCB0aGUgVHJhY2sgRnJhZ21lbnQgSGVhZGVyIEJveCBiZQorICAgICAgICAgICAgcGxhY2Vk
IGZpcnN0IGluIHRoZWlyIGNvbnRhaW5lci4KKyAgICAgICAgICAgIEJveGVzIG1hcmtlZCB3aXRo
IGFuIGFzdGVyaXNrICgqKSBtYXkgYmUgcHJlc2VudC4KKyAgICAgICAgICAgIEZvciB0aGUgYm94
ZXMgbGlzdGVkIGFib3ZlLCB0aGUgZGVmaW5pdGlvbiBpcyBhcyBpcyBkZWZpbmVkIGluIElTTy9J
RUMgMTQ0OTYtMTIgWzFdLgorPGEgbmFtZT0iNC43Ij48L2E+CisgICAgNC43IEV4YW1wbGUgb2Yg
RW5jYXBzdWxhdGlvbiAoaW5mb3JtYXRpdmUpCisgICAgICAgIFtGaWxlXQorICAgICAgICAgICAg
c2l6ZSA9IDE3NzkwCisgICAgICAgICAgICBbZnR5cDogRmlsZSBUeXBlIEJveF0KKyAgICAgICAg
ICAgICAgICBwb3NpdGlvbiA9IDAKKyAgICAgICAgICAgICAgICBzaXplID0gMjQKKyAgICAgICAg
ICAgICAgICBtYWpvcl9icmFuZCA9IG1wNDIgOiBNUDQgdmVyc2lvbiAyCisgICAgICAgICAgICAg
ICAgbWlub3JfdmVyc2lvbiA9IDAKKyAgICAgICAgICAgICAgICBjb21wYXRpYmxlX2JyYW5kcwor
ICAgICAgICAgICAgICAgICAgICBicmFuZFswXSA9IG1wNDIgOiBNUDQgdmVyc2lvbiAyCisgICAg
ICAgICAgICAgICAgICAgIGJyYW5kWzFdID0gaXNvMiA6IElTTyBCYXNlIE1lZGlhIGZpbGUgZm9y
bWF0IHZlcnNpb24gMgorICAgICAgICAgICAgW21vb3Y6IE1vdmllIEJveF0KKyAgICAgICAgICAg
ICAgICBwb3NpdGlvbiA9IDI0CisgICAgICAgICAgICAgICAgc2l6ZSA9IDc1NworICAgICAgICAg
ICAgICAgIFttdmhkOiBNb3ZpZSBIZWFkZXIgQm94XQorICAgICAgICAgICAgICAgICAgICBwb3Np
dGlvbiA9IDMyCisgICAgICAgICAgICAgICAgICAgIHNpemUgPSAxMDgKKyAgICAgICAgICAgICAg
ICAgICAgdmVyc2lvbiA9IDAKKyAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAor
ICAgICAgICAgICAgICAgICAgICBjcmVhdGlvbl90aW1lID0gVVRDIDIwMTQvMTIvMTIsIDE4OjQx
OjE5CisgICAgICAgICAgICAgICAgICAgIG1vZGlmaWNhdGlvbl90aW1lID0gVVRDIDIwMTQvMTIv
MTIsIDE4OjQxOjE5CisgICAgICAgICAgICAgICAgICAgIHRpbWVzY2FsZSA9IDQ4MDAwCisgICAg
ICAgICAgICAgICAgICAgIGR1cmF0aW9uID0gMzM2MDAgKDAwOjAwOjAwLjcwMCkKKyAgICAgICAg
ICAgICAgICAgICAgcmF0ZSA9IDEuMDAwMDAwCisgICAgICAgICAgICAgICAgICAgIHZvbHVtZSA9
IDEuMDAwMDAwCisgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwCisgICAgICAg
ICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwMDAwMAorICAgICAgICAgICAgICAgICAgICBy
ZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtYXRpb24g
bWF0cml4CisgICAgICAgICAgICAgICAgICAgICAgICB8IGEsIGIsIHUgfCAgIHwgMS4wMDAwMDAs
IDAuMDAwMDAwLCAwLjAwMDAwMCB8CisgICAgICAgICAgICAgICAgICAgICAgICB8IGMsIGQsIHYg
fCA9IHwgMC4wMDAwMDAsIDEuMDAwMDAwLCAwLjAwMDAwMCB8CisgICAgICAgICAgICAgICAgICAg
ICAgICB8IHgsIHksIHcgfCAgIHwgMC4wMDAwMDAsIDAuMDAwMDAwLCAxLjAwMDAwMCB8CisgICAg
ICAgICAgICAgICAgICAgIHByZV9kZWZpbmVkID0gMHgwMDAwMDAwMAorICAgICAgICAgICAgICAg
ICAgICBwcmVfZGVmaW5lZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgcHJlX2Rl
ZmluZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgIHByZV9kZWZpbmVkID0gMHgw
MDAwMDAwMAorICAgICAgICAgICAgICAgICAgICBwcmVfZGVmaW5lZCA9IDB4MDAwMDAwMDAKKyAg
ICAgICAgICAgICAgICAgICAgcHJlX2RlZmluZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAg
ICAgICAgIG5leHRfdHJhY2tfSUQgPSAyCisgICAgICAgICAgICAgICAgW2lvZHM6IE9iamVjdCBE
ZXNjcmlwdG9yIEJveF0KKyAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAxNDAKKyAgICAg
ICAgICAgICAgICAgICAgc2l6ZSA9IDMzCisgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAw
CisgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAg
ICAgW3RhZyA9IDB4MTA6IE1QNF9JT0RdCisgICAgICAgICAgICAgICAgICAgICAgICBleHBhbmRh
YmxlQ2xhc3NTaXplID0gMTYKKyAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdERlc2NyaXB0
b3JJRCA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgIFVSTF9GbGFnID0gMAorICAgICAgICAg
ICAgICAgICAgICAgICAgaW5jbHVkZUlubGluZVByb2ZpbGVMZXZlbEZsYWcgPSAwCisgICAgICAg
ICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4ZgorICAgICAgICAgICAgICAgICAgICAgICAg
T0RQcm9maWxlTGV2ZWxJbmRpY2F0aW9uID0gMHhmZgorICAgICAgICAgICAgICAgICAgICAgICAg
c2NlbmVQcm9maWxlTGV2ZWxJbmRpY2F0aW9uID0gMHhmZgorICAgICAgICAgICAgICAgICAgICAg
ICAgYXVkaW9Qcm9maWxlTGV2ZWxJbmRpY2F0aW9uID0gMHhmZQorICAgICAgICAgICAgICAgICAg
ICAgICAgdmlzdWFsUHJvZmlsZUxldmVsSW5kaWNhdGlvbiA9IDB4ZmYKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGdyYXBoaWNzUHJvZmlsZUxldmVsSW5kaWNhdGlvbiA9IDB4ZmYKKyAgICAgICAg
ICAgICAgICAgICAgICAgIFt0YWcgPSAweDBlOiBFU19JRF9JbmNdCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZXhwYW5kYWJsZUNsYXNzU2l6ZSA9IDQKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBUcmFja19JRCA9IDEKKyAgICAgICAgICAgICAgICBbdHJhazogVHJhY2sgQm94XQor
ICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDE3MworICAgICAgICAgICAgICAgICAgICBz
aXplID0gNjA4CisgICAgICAgICAgICAgICAgICAgIFt0a2hkOiBUcmFjayBIZWFkZXIgQm94XQor
ICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAxODEKKyAgICAgICAgICAgICAgICAg
ICAgICAgIHNpemUgPSA5MgorICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IDAKKyAg
ICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDcKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBUcmFjayBlbmFibGVkCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJh
Y2sgaW4gbW92aWUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcmFjayBpbiBwcmV2aWV3
CisgICAgICAgICAgICAgICAgICAgICAgICBjcmVhdGlvbl90aW1lID0gVVRDIDIwMTQvMTIvMTIs
IDE4OjQxOjE5CisgICAgICAgICAgICAgICAgICAgICAgICBtb2RpZmljYXRpb25fdGltZSA9IFVU
QyAyMDE0LzEyLzEyLCAxODo0MToxOQorICAgICAgICAgICAgICAgICAgICAgICAgdHJhY2tfSUQg
PSAxCisgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAgICAg
ICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uID0gMzM2MDAgKDAwOjAwOjAwLjcwMCkKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwMDAwMAorICAgICAgICAgICAgICAg
ICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICBs
YXllciA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgIGFsdGVybmF0ZV9ncm91cCA9IDAKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHZvbHVtZSA9IDEuMDAwMDAwCisgICAgICAgICAgICAgICAg
ICAgICAgICByZXNlcnZlZCA9IDB4MDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNm
b3JtYXRpb24gbWF0cml4CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhLCBiLCB1IHwg
ICB8IDEuMDAwMDAwLCAwLjAwMDAwMCwgMC4wMDAwMDAgfAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgYywgZCwgdiB8ID0gfCAwLjAwMDAwMCwgMS4wMDAwMDAsIDAuMDAwMDAwIHwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8IHgsIHksIHcgfCAgIHwgMC4wMDAwMDAsIDAuMDAw
MDAwLCAxLjAwMDAwMCB8CisgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCA9IDAuMDAwMDAw
CisgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQgPSAwLjAwMDAwMAorICAgICAgICAgICAg
ICAgICAgICBbZWR0czogRWRpdCBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlv
biA9IDI3MworICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDM2CisgICAgICAgICAgICAg
ICAgICAgICAgICBbZWxzdDogRWRpdCBMaXN0IEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBwb3NpdGlvbiA9IDI4MQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSAy
OAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGVudHJ5X2NvdW50ID0gMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5WzBd
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlZ21lbnRfZHVyYXRpb24gPSAzMzYw
MAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZWRpYV90aW1lID0gMzEyCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lZGlhX3JhdGUgPSAxLjAwMDAwMAorICAgICAg
ICAgICAgICAgICAgICBbbWRpYTogTWVkaWEgQm94XQorICAgICAgICAgICAgICAgICAgICAgICAg
cG9zaXRpb24gPSAzMDkKKyAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSA0NzIKKyAgICAg
ICAgICAgICAgICAgICAgICAgIFttZGhkOiBNZWRpYSBIZWFkZXIgQm94XQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gMzE3CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc2l6ZSA9IDMyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IDAKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDAwCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY3JlYXRpb25fdGltZSA9IFVUQyAyMDE0LzEyLzEyLCAxODo0MToxOQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGlmaWNhdGlvbl90aW1lID0gVVRDIDIwMTQv
MTIvMTIsIDE4OjQxOjE5CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZXNjYWxlID0g
NDgwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdXJhdGlvbiA9IDM0NTYwICgwMDow
MDowMC43MjApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFuZ3VhZ2UgPSB1bmQKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVfZGVmaW5lZCA9IDB4MDAwMAorICAgICAgICAg
ICAgICAgICAgICAgICAgW2hkbHI6IEhhbmRsZXIgUmVmZXJlbmNlIEJveF0KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDM0OQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNpemUgPSA1MQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHByZV9kZWZpbmVkID0gMHgwMDAwMDAwMAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGhhbmRsZXJfdHlwZSA9IHNvdW4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICByZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBy
ZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZl
ZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lID0gWGlwaCBB
dWRpbyBIYW5kbGVyCisgICAgICAgICAgICAgICAgICAgICAgICBbbWluZjogTWVkaWEgSW5mb3Jt
YXRpb24gQm94XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNDAwCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDM4MQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFtzbWhkOiBTb3VuZCBNZWRpYSBIZWFkZXIgQm94XQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDQwOAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzaXplID0gMTYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lv
biA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWxhbmNlID0gMC4wMDAwMDAKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBbZGluZjogRGF0YSBJbmZvcm1hdGlvbiBCb3hdCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNDI0CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHNpemUgPSAzNgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBb
ZHJlZjogRGF0YSBSZWZlcmVuY2UgQm94XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcG9zaXRpb24gPSA0MzIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNpemUgPSAyOAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9
IDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5X2NvdW50ID0gMQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3VybCA6IERhdGEgRW50cnkgVXJsIEJv
eF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDQ0
OAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSAxMgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMQorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uID0gaW4gdGhlIHNhbWUg
ZmlsZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdGJsOiBTYW1wbGUgVGFibGUgQm94
XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDQ2MAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gMzIxCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFtzdHNkOiBTYW1wbGUgRGVzY3JpcHRpb24gQm94XQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSA0NjgKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNpemUgPSA3OQorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdmVyc2lvbiA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGZsYWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVu
dHJ5X2NvdW50ID0gMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW09wdXM6
IEF1ZGlvIERlc2NyaXB0aW9uXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHBvc2l0aW9uID0gNDg0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc2l6ZSA9IDYzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVz
ZXJ2ZWQgPSAweDAwMDAwMDAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGRhdGFfcmVmZXJlbmNlX2luZGV4ID0gMQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFubmVsY291bnQgPSA2CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FtcGxlc2l6ZSA9IDE2CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlX2RlZmluZWQgPSAwCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAwCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc2FtcGxlcmF0ZSA9IDQ4MDAwLjAwMDAwMAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkT3BzOiBPcHVzIFNwZWNpZmljIEJv
eF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24g
PSA1MjAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9
IDI3CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZlcnNpb24g
PSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE91dHB1dENo
YW5uZWxDb3VudCA9IDYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgUHJlU2tpcCA9IDMxMgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBJbnB1dFNhbXBsZVJhdGUgPSA0ODAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBPdXRwdXRHYWluID0gMAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBDaGFubmVsTWFwcGluZ0ZhbWlseSA9IDEKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RyZWFtQ291bnQgPSA0CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvdXBsZWRDb3VudCA9IDIKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhbm5lbE1hcHBpbmcK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAgLT4gMDog
ZnJvbnQgbGVmdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgMSAtPiA0OiBmcm9uIGNlbnRlcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgMiAtPiAxOiBmcm9udCByaWdodAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMyAtPiAyOiBzaWRlIGxlZnQKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQgLT4gMzogc2lkZSByaWdodAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNSAtPiA1OiBy
ZWFyIGNlbnRlcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3R0czogRGVjb2Rp
bmcgVGltZSB0byBTYW1wbGUgQm94XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcG9zaXRpb24gPSA1NDcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNp
emUgPSAyNAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IDAK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5X2NvdW50ID0gMQorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlbMF0KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzYW1wbGVfY291bnQgPSAxOAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHNhbXBsZV9kZWx0YSA9IDE5MjAKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgW3N0c2M6IFNhbXBsZSBUbyBDaHVuayBCb3hdCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDU3MQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDQwCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZW50cnlfY291bnQgPSAyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBl
bnRyeVswXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0X2No
dW5rID0gMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhbXBsZXNf
cGVyX2NodW5rID0gMTMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
YW1wbGVfZGVzY3JpcHRpb25faW5kZXggPSAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBlbnRyeVsxXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGZpcnN0X2NodW5rID0gMgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNhbXBsZXNfcGVyX2NodW5rID0gNQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNhbXBsZV9kZXNjcmlwdGlvbl9pbmRleCA9IDEKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgW3N0c3o6IFNhbXBsZSBTaXplIEJveF0KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNjExCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzaXplID0gOTIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncyA9
IDB4MDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYW1wbGVfc2l6
ZSA9IDAgKHZhcmlhYmxlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Ft
cGxlX2NvdW50ID0gMTgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5
X3NpemVbMF0gPSA5NzcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5
X3NpemVbMV0gPSA5MzgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5
X3NpemVbMl0gPSA5MzkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5
X3NpemVbM10gPSA5MzgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5
X3NpemVbNF0gPSA5MzQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5
X3NpemVbNV0gPSA5NDUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5
X3NpemVbNl0gPSA5NDgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5
X3NpemVbN10gPSA5NTYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5
X3NpemVbOF0gPSA5NTUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5
X3NpemVbOV0gPSA5MzAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5
X3NpemVbMTBdID0gOTMzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRy
eV9zaXplWzExXSA9IDkzNAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50
cnlfc2l6ZVsxMl0gPSA5NzIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVu
dHJ5X3NpemVbMTNdID0gOTc3CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBl
bnRyeV9zaXplWzE0XSA9IDk1OAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZW50cnlfc2l6ZVsxNV0gPSA5NDkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGVudHJ5X3NpemVbMTZdID0gOTYyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBlbnRyeV9zaXplWzE3XSA9IDg0OAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBb
c3RjbzogQ2h1bmsgT2Zmc2V0IEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHBvc2l0aW9uID0gNzAzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
aXplID0gMjQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAw
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDAwCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9jb3VudCA9IDIKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNodW5rX29mZnNldFswXSA9IDc5NworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2h1bmtfb2Zmc2V0WzFdID0gMTMwOTYK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NncGQ6IFNhbXBsZSBHcm91cCBEZXNj
cmlwdGlvbiBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlv
biA9IDcyNworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDI2Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gMQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZ3JvdXBpbmdfdHlwZSA9IHJvbGwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRfbGVuZ3RoID0gMiAoY29uc3RhbnQpCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9jb3VudCA9IDEKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvbGxfZGlzdGFuY2VbMF0gPSAtMgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2JncDogU2FtcGxlIHRvIEdyb3VwIEJveF0K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNzUzCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gMjgKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBncm91cGluZ190eXBlID0gcm9sbAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZW50cnlfY291bnQgPSAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBlbnRyeVswXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNhbXBsZV9jb3VudCA9IDE4CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZ3JvdXBfZGVzY3JpcHRpb25faW5kZXggPSAxCisgICAgICAgICAgICBbZnJlZTogRnJlZSBT
cGFjZSBCb3hdCisgICAgICAgICAgICAgICAgcG9zaXRpb24gPSA3ODEKKyAgICAgICAgICAgICAg
ICBzaXplID0gOAorICAgICAgICAgICAgW21kYXQ6IE1lZGlhIERhdGEgQm94XQorICAgICAgICAg
ICAgICAgIHBvc2l0aW9uID0gNzg5CisgICAgICAgICAgICAgICAgc2l6ZSA9IDE3MDAxCis8YSBu
YW1lPSI1Ij48L2E+Cis1IEF1dGhvcnMnIEFkZHJlc3MKKyAgICBZdXN1a2UgTmFrYW11cmEKKyAg
ICAgICAgRW1haWw6IG11a2VuLnRoZS52ZnJtYW5pYWMgfGF0fCBnbWFpbC5jb20KKyAgICAgICAg
PC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1c191cGRhdGUu
cGF0Y2ggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2RvYy9vcHVzX3VwZGF0ZS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMWYwNjZjNzAyMmZmNmY4
OTZlMzFjODYwMGEzZDZmMDZmMGY0MTgyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1c191cGRh
dGUucGF0Y2gKQEAgLTAsMCArMSwyNDQgQEAKK2RpZmYgLS1naXQgYS9jZWx0L2JhbmRzLmMgYi9j
ZWx0L2JhbmRzLmMKK2luZGV4IDY5NjI1ODcuLjMyZTFkZTYgMTAwNjQ0CistLS0gYS9jZWx0L2Jh
bmRzLmMKKysrKyBiL2NlbHQvYmFuZHMuYworQEAgLTEyMzQsOSArMTIzNCwyMyBAQCB2b2lkIHF1
YW50X2FsbF9iYW5kcyhpbnQgZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBp
bnQgZW5kLAorICAgICAgICAgIGIgPSAwOworICAgICAgIH0KKyAKKy0gICAgICBpZiAocmVzeW50
aCAmJiBNKmVCYW5kc1tpXS1OID49IE0qZUJhbmRzW3N0YXJ0XSAmJiAodXBkYXRlX2xvd2JhbmQg
fHwgbG93YmFuZF9vZmZzZXQ9PTApKQorKyAgICAgIGlmIChyZXN5bnRoICYmIChNKmVCYW5kc1tp
XS1OID49IE0qZUJhbmRzW3N0YXJ0XSB8fCBpPT1zdGFydCsxKSAmJiAodXBkYXRlX2xvd2JhbmQg
fHwgbG93YmFuZF9vZmZzZXQ9PTApKQorICAgICAgICAgICAgIGxvd2JhbmRfb2Zmc2V0ID0gaTsK
KyAKKysgICAgICBpZiAoaSA9PSBzdGFydCsxKQorKyAgICAgIHsKKysgICAgICAgICBpbnQgbjEs
IG4yOworKyAgICAgICAgIGludCBvZmZzZXQ7CisrICAgICAgICAgbjEgPSBNKihlQmFuZHNbc3Rh
cnQrMV0tZUJhbmRzW3N0YXJ0XSk7CisrICAgICAgICAgbjIgPSBNKihlQmFuZHNbc3RhcnQrMl0t
ZUJhbmRzW3N0YXJ0KzFdKTsKKysgICAgICAgICBvZmZzZXQgPSBNKmVCYW5kc1tzdGFydF07Cisr
ICAgICAgICAgLyogRHVwbGljYXRlIGVub3VnaCBvZiB0aGUgZmlyc3QgYmFuZCBmb2xkaW5nIGRh
dGEgdG8gYmUgYWJsZSB0byBmb2xkIHRoZSBzZWNvbmQgYmFuZC4KKysgICAgICAgICAgICBDb3Bp
ZXMgbm8gZGF0YSBmb3IgQ0VMVC1vbmx5IG1vZGUuICovCisrICAgICAgICAgT1BVU19DT1BZKCZu
b3JtW29mZnNldCtuMV0sICZub3JtW29mZnNldCsyKm4xIC0gbjJdLCBuMi1uMSk7CisrICAgICAg
ICAgaWYgKEM9PTIpCisrICAgICAgICAgICAgT1BVU19DT1BZKCZub3JtMltvZmZzZXQrbjFdLCAm
bm9ybTJbb2Zmc2V0KzIqbjEgLSBuMl0sIG4yLW4xKTsKKysgICAgICB9CisrCisgICAgICAgdGZf
Y2hhbmdlID0gdGZfcmVzW2ldOworICAgICAgIGlmIChpPj1tLT5lZmZFQmFuZHMpCisgICAgICAg
eworQEAgLTEyNTcsNyArMTI3MSw3IEBAIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUs
IGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQsCisgICAgICAgICAgZm9sZF9z
dGFydCA9IGxvd2JhbmRfb2Zmc2V0OworICAgICAgICAgIHdoaWxlKE0qZUJhbmRzWy0tZm9sZF9z
dGFydF0gPiBlZmZlY3RpdmVfbG93YmFuZCk7CisgICAgICAgICAgZm9sZF9lbmQgPSBsb3diYW5k
X29mZnNldC0xOworLSAgICAgICAgIHdoaWxlKE0qZUJhbmRzWysrZm9sZF9lbmRdIDwgZWZmZWN0
aXZlX2xvd2JhbmQrTik7CisrICAgICAgICAgd2hpbGUoKytmb2xkX2VuZCA8IGkgJiYgTSplQmFu
ZHNbZm9sZF9lbmRdIDwgZWZmZWN0aXZlX2xvd2JhbmQrTik7CisgICAgICAgICAgeF9jbSA9IHlf
Y20gPSAwOworICAgICAgICAgIGZvbGRfaSA9IGZvbGRfc3RhcnQ7IGRvIHsKKyAgICAgICAgICAg
IHhfY20gfD0gY29sbGFwc2VfbWFza3NbZm9sZF9pKkMrMF07CitkaWZmIC0tZ2l0IGEvY2VsdC9x
dWFudF9iYW5kcy5jIGIvY2VsdC9xdWFudF9iYW5kcy5jCitpbmRleCBlNWVkOWVmLi44MmZiODIz
IDEwMDY0NAorLS0tIGEvY2VsdC9xdWFudF9iYW5kcy5jCisrKysgYi9jZWx0L3F1YW50X2JhbmRz
LmMKK0BAIC01NTIsNiArNTUyLDcgQEAgdm9pZCBsb2cyQW1wKGNvbnN0IENFTFRNb2RlICptLCBp
bnQgc3RhcnQsIGludCBlbmQsCisgICAgICAgeworICAgICAgICAgIG9wdXNfdmFsMTYgbGcgPSBB
REQxNihvbGRFQmFuZHNbaStjKm0tPm5iRUJhbmRzXSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgU0hMMTYoKG9wdXNfdmFsMTYpZU1lYW5zW2ldLDYpKTsKKysgICAgICAgICBsZyA9IE1JTjMy
KFFDT05TVDMyKDMyLmYsIDE2KSwgbGcpOworICAgICAgICAgIGVCYW5kc1tpK2MqbS0+bmJFQmFu
ZHNdID0gUFNIUjMyKGNlbHRfZXhwMihsZyksNCk7CisgICAgICAgfQorICAgICAgIGZvciAoO2k8
bS0+bmJFQmFuZHM7aSsrKQorZGlmZiAtLWdpdCBhL3NpbGsvTFBDX2ludl9wcmVkX2dhaW4uYyBi
L3NpbGsvTFBDX2ludl9wcmVkX2dhaW4uYworaW5kZXggNjBjNDM5Yi4uNmMzMDFkYSAxMDA2NDQK
Ky0tLSBhL3NpbGsvTFBDX2ludl9wcmVkX2dhaW4uYworKysrIGIvc2lsay9MUENfaW52X3ByZWRf
Z2Fpbi5jCitAQCAtODQsOCArODQsMTMgQEAgc3RhdGljIG9wdXNfaW50MzIgTFBDX2ludmVyc2Vf
cHJlZF9nYWluX1FBKCAgICAgICAgICAgICAgICAgLyogTyAgIFJldHVybnMgaW52ZXIKKyAKKyAg
ICAgICAgIC8qIFVwZGF0ZSBBUiBjb2VmZmljaWVudCAqLworICAgICAgICAgZm9yKCBuID0gMDsg
biA8IGs7IG4rKyApIHsKKy0gICAgICAgICAgICB0bXBfUUEgPSBBb2xkX1FBWyBuIF0gLSBNVUwz
Ml9GUkFDX1EoIEFvbGRfUUFbIGsgLSBuIC0gMSBdLCByY19RMzEsIDMxICk7CistICAgICAgICAg
ICAgQW5ld19RQVsgbiBdID0gTVVMMzJfRlJBQ19RKCB0bXBfUUEsIHJjX211bHQyICwgbXVsdDJR
ICk7CisrICAgICAgICAgICAgb3B1c19pbnQ2NCB0bXA2NDsKKysgICAgICAgICAgICB0bXBfUUEg
PSBzaWxrX1NVQl9TQVQzMiggQW9sZF9RQVsgbiBdLCBNVUwzMl9GUkFDX1EoIEFvbGRfUUFbIGsg
LSBuIC0gMSBdLCByY19RMzEsIDMxICkgKTsKKysgICAgICAgICAgICB0bXA2NCA9IHNpbGtfUlNI
SUZUX1JPVU5ENjQoIHNpbGtfU01VTEwoIHRtcF9RQSwgcmNfbXVsdDIgKSwgbXVsdDJRKTsKKysg
ICAgICAgICAgICBpZiggdG1wNjQgPiBzaWxrX2ludDMyX01BWCB8fCB0bXA2NCA8IHNpbGtfaW50
MzJfTUlOICkgeworKyAgICAgICAgICAgICAgIHJldHVybiAwOworKyAgICAgICAgICAgIH0KKysg
ICAgICAgICAgICBBbmV3X1FBWyBuIF0gPSAoIG9wdXNfaW50MzIgKXRtcDY0OworICAgICAgICAg
fQorICAgICB9CisgCitkaWZmIC0tZ2l0IGEvc2lsay9OTFNGX3N0YWJpbGl6ZS5jIGIvc2lsay9O
TFNGX3N0YWJpbGl6ZS5jCitpbmRleCA5NzlhYWJhLi4yZWYyMzk4IDEwMDY0NAorLS0tIGEvc2ls
ay9OTFNGX3N0YWJpbGl6ZS5jCisrKysgYi9zaWxrL05MU0Zfc3RhYmlsaXplLmMKK0BAIC0xMzQs
NyArMTM0LDcgQEAgdm9pZCBzaWxrX05MU0Zfc3RhYmlsaXplKAorIAorICAgICAgICAgLyogS2Vl
cCBkZWx0YV9taW4gZGlzdGFuY2UgYmV0d2VlbiB0aGUgTkxTRnMgKi8KKyAgICAgICAgIGZvcigg
aSA9IDE7IGkgPCBMOyBpKysgKQorLSAgICAgICAgICAgIE5MU0ZfUTE1W2ldID0gc2lsa19tYXhf
aW50KCBOTFNGX1ExNVtpXSwgTkxTRl9RMTVbaS0xXSArIE5EZWx0YU1pbl9RMTVbaV0gKTsKKysg
ICAgICAgICAgICBOTFNGX1ExNVtpXSA9IHNpbGtfbWF4X2ludCggTkxTRl9RMTVbaV0sIHNpbGtf
QUREX1NBVDE2KCBOTFNGX1ExNVtpLTFdLCBORGVsdGFNaW5fUTE1W2ldICkgKTsKKyAKKyAgICAg
ICAgIC8qIExhc3QgTkxTRiBzaG91bGQgYmUgbm8gaGlnaGVyIHRoYW4gMSAtIE5EZWx0YU1pbltM
XSAqLworICAgICAgICAgTkxTRl9RMTVbTC0xXSA9IHNpbGtfbWluX2ludCggTkxTRl9RMTVbTC0x
XSwgKDE8PDE1KSAtIE5EZWx0YU1pbl9RMTVbTF0gKTsKK2RpZmYgLS1naXQgYS9zaWxrL2RlY19B
UEkuYyBiL3NpbGsvZGVjX0FQSS5jCitpbmRleCBlZmQ3OTE4Li4yMWJiN2UwIDEwMDY0NAorLS0t
IGEvc2lsay9kZWNfQVBJLmMKKysrKyBiL3NpbGsvZGVjX0FQSS5jCitAQCAtNzIsNiArNzIsOSBA
QCBvcHVzX2ludCBzaWxrX0luaXREZWNvZGVyKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIE8gICAgUmV0dXJucyBlcnJvciBjbworICAgICBmb3IoIG4gPSAwOyBuIDwgREVDT0RFUl9O
VU1fQ0hBTk5FTFM7IG4rKyApIHsKKyAgICAgICAgIHJldCAgPSBzaWxrX2luaXRfZGVjb2Rlcigg
JmNoYW5uZWxfc3RhdGVbIG4gXSApOworICAgICB9CisrICAgIHNpbGtfbWVtc2V0KCYoKHNpbGtf
ZGVjb2RlciAqKWRlY1N0YXRlKS0+c1N0ZXJlbywgMCwgc2l6ZW9mKCgoc2lsa19kZWNvZGVyICop
ZGVjU3RhdGUpLT5zU3RlcmVvKSk7CisrICAgIC8qIE5vdCBzdHJpY3RseSBuZWVkZWQsIGJ1dCBp
dCdzIGNsZWFuZXIgdGhhdCB3YXkgKi8KKysgICAgKChzaWxrX2RlY29kZXIgKilkZWNTdGF0ZSkt
PnByZXZfZGVjb2RlX29ubHlfbWlkZGxlID0gMDsKKyAKKyAgICAgcmV0dXJuIHJldDsKKyB9Citk
aWZmIC0tZ2l0IGEvc2lsay9yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSLmMgYi9zaWxrL3Jlc2Ft
cGxlcl9wcml2YXRlX0lJUl9GSVIuYworaW5kZXggZGJkNmQ5YS4uOTFhNDNhYSAxMDA2NDQKKy0t
LSBhL3NpbGsvcmVzYW1wbGVyX3ByaXZhdGVfSUlSX0ZJUi5jCisrKysgYi9zaWxrL3Jlc2FtcGxl
cl9wcml2YXRlX0lJUl9GSVIuYworQEAgLTc1LDEwICs3NSwxMCBAQCB2b2lkIHNpbGtfcmVzYW1w
bGVyX3ByaXZhdGVfSUlSX0ZJUigKKyAgICAgc2lsa19yZXNhbXBsZXJfc3RhdGVfc3RydWN0ICpT
ID0gKHNpbGtfcmVzYW1wbGVyX3N0YXRlX3N0cnVjdCAqKVNTOworICAgICBvcHVzX2ludDMyIG5T
YW1wbGVzSW47CisgICAgIG9wdXNfaW50MzIgbWF4X2luZGV4X1ExNiwgaW5kZXhfaW5jcmVtZW50
X1ExNjsKKy0gICAgb3B1c19pbnQxNiBidWZbIFJFU0FNUExFUl9NQVhfQkFUQ0hfU0laRV9JTiAr
IFJFU0FNUExFUl9PUkRFUl9GSVJfMTIgXTsKKysgICAgb3B1c19pbnQxNiBidWZbIDIqUkVTQU1Q
TEVSX01BWF9CQVRDSF9TSVpFX0lOICsgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiBdOworIAorICAg
ICAvKiBDb3B5IGJ1ZmZlcmVkIHNhbXBsZXMgdG8gc3RhcnQgb2YgYnVmZmVyICovCistICAgIHNp
bGtfbWVtY3B5KCBidWYsIFMtPnNGSVIsIFJFU0FNUExFUl9PUkRFUl9GSVJfMTIgKiBzaXplb2Yo
IG9wdXNfaW50MzIgKSApOworKyAgICBzaWxrX21lbWNweSggYnVmLCBTLT5zRklSLCBSRVNBTVBM
RVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKKyAKKyAgICAgLyogSXRl
cmF0ZSBvdmVyIGJsb2NrcyBvZiBmcmFtZVNpemVJbiBpbnB1dCBzYW1wbGVzICovCisgICAgIGlu
ZGV4X2luY3JlbWVudF9RMTYgPSBTLT5pbnZSYXRpb19RMTY7CitAQCAtOTUsMTMgKzk1LDEzIEBA
IHZvaWQgc2lsa19yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSKAorIAorICAgICAgICAgaWYoIGlu
TGVuID4gMCApIHsKKyAgICAgICAgICAgICAvKiBNb3JlIGl0ZXJhdGlvbnMgdG8gZG87IGNvcHkg
bGFzdCBwYXJ0IG9mIGZpbHRlcmVkIHNpZ25hbCB0byBiZWdpbm5pbmcgb2YgYnVmZmVyICovCist
ICAgICAgICAgICAgc2lsa19tZW1jcHkoIGJ1ZiwgJmJ1ZlsgblNhbXBsZXNJbiA8PCAxIF0sIFJF
U0FNUExFUl9PUkRFUl9GSVJfMTIgKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOworKyAgICAgICAg
ICAgIHNpbGtfbWVtbW92ZSggYnVmLCAmYnVmWyBuU2FtcGxlc0luIDw8IDEgXSwgUkVTQU1QTEVS
X09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CisgICAgICAgICB9IGVsc2Ug
eworICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgfQorICAgICB9CisgCisgICAgIC8qIENv
cHkgbGFzdCBwYXJ0IG9mIGZpbHRlcmVkIHNpZ25hbCB0byB0aGUgc3RhdGUgZm9yIHRoZSBuZXh0
IGNhbGwgKi8KKy0gICAgc2lsa19tZW1jcHkoIFMtPnNGSVIsICZidWZbIG5TYW1wbGVzSW4gPDwg
MSBdLCBSRVNBTVBMRVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKKysg
ICAgc2lsa19tZW1jcHkoIFMtPnNGSVIsICZidWZbIG5TYW1wbGVzSW4gPDwgMSBdLCBSRVNBTVBM
RVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKKyB9CisgCitkaWZmIC0t
Z2l0IGEvc3JjL29wdXNfZGVjb2Rlci5jIGIvc3JjL29wdXNfZGVjb2Rlci5jCitpbmRleCAwY2M1
NmY4Li44YTMwZmJjIDEwMDY0NAorLS0tIGEvc3JjL29wdXNfZGVjb2Rlci5jCisrKysgYi9zcmMv
b3B1c19kZWNvZGVyLmMKK0BAIC01OTUsMTYgKzU5NSwxNCBAQCBzdGF0aWMgaW50IG9wdXNfcGFj
a2V0X3BhcnNlX2ltcGwoY29uc3QgdW5zaWduZWQgY2hhciAqZGF0YSwgaW50IGxlbiwKKyAgICAg
ICAvKiBQYWRkaW5nIGZsYWcgaXMgYml0IDYgKi8KKyAgICAgICBpZiAoY2gmMHg0MCkKKyAgICAg
ICB7CistICAgICAgICAgaW50IHBhZGRpbmc9MDsKKyAgICAgICAgICBpbnQgcDsKKyAgICAgICAg
ICBkbyB7CisgICAgICAgICAgICAgaWYgKGxlbjw9MCkKKyAgICAgICAgICAgICAgICByZXR1cm4g
T1BVU19JTlZBTElEX1BBQ0tFVDsKKyAgICAgICAgICAgICBwID0gKmRhdGErKzsKKyAgICAgICAg
ICAgICBsZW4tLTsKKy0gICAgICAgICAgICBwYWRkaW5nICs9IHA9PTI1NSA/IDI1NDogcDsKKysg
ICAgICAgICAgICBsZW4gLT0gcD09MjU1ID8gMjU0OiBwOworICAgICAgICAgIH0gd2hpbGUgKHA9
PTI1NSk7CistICAgICAgICAgbGVuIC09IHBhZGRpbmc7CisgICAgICAgfQorICAgICAgIGlmIChs
ZW48MCkKKyAgICAgICAgICByZXR1cm4gT1BVU19JTlZBTElEX1BBQ0tFVDsKK2RpZmYgLS1naXQg
YS9ydW5fdmVjdG9ycy5zaCBiL3J1bl92ZWN0b3JzLnNoCitpbmRleCA3Y2QyM2VkLi40ODQxYjBh
IDEwMDc1NQorLS0tIGEvcnVuX3ZlY3RvcnMuc2gKKysrKyBiL3J1bl92ZWN0b3JzLnNoCitAQCAt
MSwzICsxLDUgQEAKKysjIS9iaW4vc2gKKysjCisgIyBDb3B5cmlnaHQgKGMpIDIwMTEtMjAxMiBJ
RVRGIFRydXN0LCBKZWFuLU1hcmMgVmFsaW4uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgIworICMg
IFRoaXMgZmlsZSBpcyBleHRyYWN0ZWQgZnJvbSBSRkM2NzE2LiBQbGVhc2Ugc2VlIHRoYXQgUkZD
IGZvciBhZGRpdGlvbmFsCitAQCAtMzEsMTAgKzMzLDggQEAKKyAjICBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAjICBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAKKy0jIS9iaW4vc2gKKy0KKy1ybSBsb2dzX21vbm8udHh0Cistcm0gbG9nc19zdGVyZW8u
dHh0Cisrcm0gLWYgbG9nc19tb25vLnR4dCBsb2dzX21vbm8yLnR4dAorK3JtIC1mIGxvZ3Nfc3Rl
cmVvLnR4dCBsb2dzX3N0ZXJlbzIudHh0CisgCisgaWYgWyAiJCMiIC1uZSAiMyIgXTsgdGhlbgor
ICAgICBlY2hvICJ1c2FnZTogcnVuX3ZlY3RvcnMuc2ggPGV4ZWMgcGF0aD4gPHZlY3RvciBwYXRo
PiA8cmF0ZT4iCitAQCAtNDUsMTggKzQ1LDIzIEBAIENNRF9QQVRIPSQxCisgVkVDVE9SX1BBVEg9
JDIKKyBSQVRFPSQzCisgCistT1BVU19ERU1PPSRDTURfUEFUSC9vcHVzX2RlbW8KKy1PUFVTX0NP
TVBBUkU9JENNRF9QQVRIL29wdXNfY29tcGFyZQorKzogJHtPUFVTX0RFTU86PSRDTURfUEFUSC9v
cHVzX2RlbW99CisrOiAke09QVVNfQ09NUEFSRTo9JENNRF9QQVRIL29wdXNfY29tcGFyZX0KKyAK
KyBpZiBbIC1kICRWRUNUT1JfUEFUSCBdOyB0aGVuCisgICAgIGVjaG8gVGVzdCB2ZWN0b3JzIGZv
dW5kIGluICRWRUNUT1JfUEFUSAorIGVsc2UKKyAgICAgZWNobyBObyB0ZXN0IHZlY3RvcnMgZm91
bmQKKy0gICAgI0Rvbid0IG1ha2UgdGhlIHRlc3QgZmFpbCBoZXJlIGJlY2F1c2UgdGhlIHRlc3Qg
dmVjdG9ycyB3aWxsIGJlCistICAgICNkaXN0cmlidXRlZCBzZXBhcmF0ZWx5CisrICAgICNEb24n
dCBtYWtlIHRoZSB0ZXN0IGZhaWwgaGVyZSBiZWNhdXNlIHRoZSB0ZXN0IHZlY3RvcnMKKysgICAg
I3dpbGwgYmUgZGlzdHJpYnV0ZWQgc2VwYXJhdGVseQorICAgICBleGl0IDAKKyBmaQorIAorK2lm
IFsgISAteCAkT1BVU19DT01QQVJFIF07IHRoZW4KKysgICAgZWNobyBFUlJPUjogQ29tcGFyZSBw
cm9ncmFtIG5vdCBmb3VuZDogJE9QVVNfQ09NUEFSRQorKyAgICBleGl0IDEKKytmaQorKworIGlm
IFsgLXggJE9QVVNfREVNTyBdOyB0aGVuCisgICAgIGVjaG8gRGVjb2Rpbmcgd2l0aCAkT1BVU19E
RU1PCisgZWxzZQorQEAgLTgyLDkgKzg3LDExIEBAIGRvCisgICAgICAgICBlY2hvIEVSUk9SOiBk
ZWNvZGluZyBmYWlsZWQKKyAgICAgICAgIGV4aXQgMQorICAgICBmaQorLSAgICAkT1BVU19DT01Q
QVJFIC1yICRSQVRFICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuZGVjIHRtcC5vdXQgPj4g
bG9nc19tb25vLnR4dCAyPiYxCisrICAgICRPUFVTX0NPTVBBUkUgLXIgJFJBVEUgJFZFQ1RPUl9Q
QVRIL3Rlc3R2ZWN0b3Ike2ZpbGV9LmRlYyB0bXAub3V0ID4+IGxvZ3NfbW9uby50eHQgMj4mMQor
ICAgICBmbG9hdF9yZXQ9JD8KKy0gICAgaWYgWyAiJGZsb2F0X3JldCIgLWVxICIwIiBdOyB0aGVu
CisrICAgICRPUFVTX0NPTVBBUkUgLXIgJFJBVEUgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3Ike2Zp
bGV9bS5kZWMgdG1wLm91dCA+PiBsb2dzX21vbm8yLnR4dCAyPiYxCisrICAgIGZsb2F0X3JldDI9
JD8KKysgICAgaWYgWyAiJGZsb2F0X3JldCIgLWVxICIwIiBdIHx8IFsgIiRmbG9hdF9yZXQyIiAt
ZXEgIjAiIF07IHRoZW4KKyAgICAgICAgIGVjaG8gb3V0cHV0IG1hdGNoZXMgcmVmZXJlbmNlCisg
ICAgIGVsc2UKKyAgICAgICAgIGVjaG8gRVJST1I6IG91dHB1dCBkb2VzIG5vdCBtYXRjaCByZWZl
cmVuY2UKK0BAIC0xMTEsOSArMTE4LDExIEBAIGRvCisgICAgICAgICBlY2hvIEVSUk9SOiBkZWNv
ZGluZyBmYWlsZWQKKyAgICAgICAgIGV4aXQgMQorICAgICBmaQorLSAgICAkT1BVU19DT01QQVJF
IC1zIC1yICRSQVRFICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuZGVjIHRtcC5vdXQgPj4g
bG9nc19zdGVyZW8udHh0IDI+JjEKKysgICAgJE9QVVNfQ09NUEFSRSAtcyAtciAkUkFURSAkVkVD
VE9SX1BBVEgvdGVzdHZlY3RvciR7ZmlsZX0uZGVjIHRtcC5vdXQgPj4gbG9nc19zdGVyZW8udHh0
IDI+JjEKKyAgICAgZmxvYXRfcmV0PSQ/CistICAgIGlmIFsgIiRmbG9hdF9yZXQiIC1lcSAiMCIg
XTsgdGhlbgorKyAgICAkT1BVU19DT01QQVJFIC1zIC1yICRSQVRFICRWRUNUT1JfUEFUSC90ZXN0
dmVjdG9yJHtmaWxlfW0uZGVjIHRtcC5vdXQgPj4gbG9nc19zdGVyZW8yLnR4dCAyPiYxCisrICAg
IGZsb2F0X3JldDI9JD8KKysgICAgaWYgWyAiJGZsb2F0X3JldCIgLWVxICIwIiBdIHx8IFsgIiRm
bG9hdF9yZXQyIiAtZXEgIjAiIF07IHRoZW4KKyAgICAgICAgIGVjaG8gb3V0cHV0IG1hdGNoZXMg
cmVmZXJlbmNlCisgICAgIGVsc2UKKyAgICAgICAgIGVjaG8gRVJST1I6IG91dHB1dCBkb2VzIG5v
dCBtYXRjaCByZWZlcmVuY2UKK0BAIC0xMjUsNSArMTM0LDEwIEBAIGRvbmUKKyAKKyAKKyBlY2hv
IEFsbCB0ZXN0cyBoYXZlIHBhc3NlZCBzdWNjZXNzZnVsbHkKKy1ncmVwIHF1YWxpdHkgbG9nc19t
b25vLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee3ByaW50ICJBdmVyYWdlIG1vbm8gcXVhbGl0eSBp
cyIsIHN1bS9OUiwgIiUifScKKy1ncmVwIHF1YWxpdHkgbG9nc19zdGVyZW8udHh0IHwgYXdrICd7
c3VtKz0kNH1FTkR7cHJpbnQgIkF2ZXJhZ2Ugc3RlcmVvIHF1YWxpdHkgaXMiLCBzdW0vTlIsICIl
In0nCisrbW9ubzE9YGdyZXAgcXVhbGl0eSBsb2dzX21vbm8udHh0IHwgYXdrICd7c3VtKz0kNH1F
TkR7aWYgKE5SID09IDEyKSBzdW0gLz0gMTI7IGVsc2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdgCisr
bW9ubzI9YGdyZXAgcXVhbGl0eSBsb2dzX21vbm8yLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee2lm
IChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNlIHN1bSA9IDA7IHByaW50IHN1bX0nYAorK2VjaG8g
JG1vbm8xICRtb25vMiB8IGF3ayAne2lmICgkMiA+ICQxKSAkMSA9ICQyOyBwcmludCAiQXZlcmFn
ZSBtb25vIHF1YWxpdHkgaXMiLCAkMSwgIiUifScKKysKKytzdGVyZW8xPWBncmVwIHF1YWxpdHkg
bG9nc19zdGVyZW8udHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7aWYgKE5SID09IDEyKSBzdW0gLz0g
MTI7IGVsc2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdgCisrc3RlcmVvMj1gZ3JlcCBxdWFsaXR5IGxv
Z3Nfc3RlcmVvMi50eHQgfCBhd2sgJ3tzdW0rPSQ0fUVORHtpZiAoTlIgPT0gMTIpIHN1bSAvPSAx
MjsgZWxzZSBzdW0gPSAwOyBwcmludCBzdW19J2AKKytlY2hvICRzdGVyZW8xICRzdGVyZW8yIHwg
YXdrICd7aWYgKCQyID4gJDEpICQxID0gJDI7IHByaW50ICJBdmVyYWdlIHN0ZXJlbyBxdWFsaXR5
IGlzIiwgJDEsICIlIn0nCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9yZWxlYXNlLnR4dCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL3JlbGVhc2Uu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjZkM2ZmYTIzOTAxYzA0ZDJmYjk4ODZmNTJkNGNiNzRjYTQyN2I2ZDEK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2RvYy9yZWxlYXNlLnR4dApAQCAtMCwwICsxLDQzIEBACis9IFJl
bGVhc2UgY2hlY2tsaXN0ID0KKworPT0gU291cmNlIHJlbGVhc2UgPT0KKworLSBDaGVjayBmb3Ig
dW5jb21taXR0ZWQgY2hhbmdlcyB0byBtYXN0ZXIuCistIFVwZGF0ZSBPUFVTX0xUXyogQVBJIHZl
cnNpb25pbmcgaW4gY29uZmlndXJlLmFjLgorLSBUYWcgdGhlIHJlbGVhc2UgY29tbWl0IHdpdGgg
J2dpdCB0YWcgLXMgdk4uTScuCisgLSBJbmNsdWRlIHJlbGVhc2Ugbm90ZXMgaW4gdGhlIHRhZyBh
bm5vdGF0aW9uLgorLSBWZXJpZnkgJ21ha2UgZGlzdGNoZWNrJyBwcm9kdWNlcyBhIHRhcmJhbGwg
d2l0aAorICB0aGUgZGVzaXJlZCBuYW1lLgorLSBQdXNoIHRhZyB0byBwdWJsaWMgcmVwby4KKy0g
VXBsb2FkIHNvdXJjZSBwYWNrYWdlICdvcHVzLSR7dmVyc2lvbn0udGFyLmd6JworIC0gQWRkIHRv
IGh0dHBzOi8vc3ZuLnhpcGgub3JnL3JlbGVhc2VzL29wdXMvCisgLSBVcGRhdGUgY2hlY2tzdW0g
ZmlsZXMKKyAtIHN2biBjb21taXQKKyAtIENvcHkgdG8gYXJjaGl2ZS5tb3ppbGxhLm9yZy9wdWIv
b3B1cy8KKyAtIFVwZGF0ZSBjaGVja3N1bSBmaWxlcyB0aGVyZSBhcyB3ZWxsLgorLSBBZGQgcmVs
ZWFzZSBub3RlcyB0byBodHRwczovL2dpdC54aXBoLm9yZy9vcHVzLXdlYnNpdGUuZ2l0CistIFVw
ZGF0ZSBsaW5rcyBhbmQgY2hlY2tzdW1zIG9uIHRoZSBkb3dubG9hZHMgcGFnZS4KKy0gQWRkIGEg
Y29weSBvZiB0aGUgZG9jdW1lbnRhdGlvbiB0byA8aHR0cHM6Ly93d3cub3B1cy1jb2RlYy5vcmcv
ZG9jcy8+CisgIGFuZCB1cGRhdGUgdGhlIGxpbmtzLgorLSBVcGRhdGUgL3RvcGljIGluICNvcHVz
IElSQyBjaGFubmVsLgorCitSZWxlYXNlcyBhcmUgY29tbWl0ZWQgdG8gaHR0cHM6Ly9zdm4ueGlw
aC5vcmcvcmVsZWFzZXMvb3B1cy8KK3doaWNoIHByb3BhZ2F0ZXMgdG8gZG93bmxvYWRzLnhpcGgu
b3JnLCBhbmQgY29waWVkIG1hbnVhbGx5Cit0byBodHRwczovL2FyY2hpdmUubW96aWxsYS5vcmcv
cHViL29wdXMvCisKK1dlYnNpdGUgdXBkYXRlcyBhcmUgY29tbWl0dGVkIHRvIGh0dHBzOi8vZ2l0
LnhpcGgub3JnL29wdXMtd2Vic2l0ZS5naXQKK3doaWNoIHByb3BhZ2F0ZXMgdG8gaHR0cHM6Ly9v
cHVzLWNvZGVjLm9yZy8KKworPT0gQmluYXJ5IHJlbGVhc2UgPT0KKworV2UgdXN1YWxseSBidWls
ZCBvcHVzLXRvb2xzIGJpbmFyaWVzIGZvciBNYWNPUyBhbmQgV2luZG93cy4KKworQmluYXJ5IHJl
bGVhc2VzIGFyZSBjb3BpZWQgbWFudWFsbHkgdG8KK2h0dHBzOi8vYXJjaGl2ZS5tb3ppbGxhLm9y
Zy9wdWIvb3B1cy93aW4zMi8KKworRm9yIE1hYywgc3VibWl0IGEgcHVsbCByZXF1ZXN0IHRvIGhv
bWVicmV3LgorCis9PSBXZWJzaXRlIHVwZGF0ZXMgPT0KKworRm9yIG1ham9yIHJlbGVhc2VzLCBy
ZWNyZWF0ZSB0aGUgZmlsZXMgb24gaHR0cHM6Ly9vcHVzLWNvZGVjLm9yZy9leGFtcGxlcy8KK3dp
dGggdGhlIG5leHQgZW5jb2Rlci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvaW5jbHVkZS9vcHVzX2RlZmluZXMuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
aW5jbHVkZS9vcHVzX2RlZmluZXMuaAppbmRleCAzMTU0MTJkZDFkMjM4M2NmOTAwOTY5MGQzYWEx
MDJhYWEzMGFhODEzLi4zM2M1YWNkYjMzOTM1MDFjOWRkNjI4OTc4Yzc4ZmQyMjY0NTlkYzU1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2luY2x1ZGUvb3B1c19kZWZpbmVzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfZGVmaW5l
cy5oCkBAIC0xNjUsOCArMTY1LDkgQEAgZXh0ZXJuICJDIiB7CiAjZGVmaW5lIE9QVVNfR0VUX0VY
UEVSVF9GUkFNRV9EVVJBVElPTl9SRVFVRVNUIDQwNDEKICNkZWZpbmUgT1BVU19TRVRfUFJFRElD
VElPTl9ESVNBQkxFRF9SRVFVRVNUIDQwNDIKICNkZWZpbmUgT1BVU19HRVRfUFJFRElDVElPTl9E
SVNBQkxFRF9SRVFVRVNUIDQwNDMKLQogLyogRG9uJ3QgdXNlIDQwNDUsIGl0J3MgYWxyZWFkeSB0
YWtlbiBieSBPUFVTX0dFVF9HQUlOX1JFUVVFU1QgKi8KKyNkZWZpbmUgT1BVU19TRVRfUEhBU0Vf
SU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1QgNDA0NgorI2RlZmluZSBPUFVTX0dFVF9QSEFTRV9J
TlZFUlNJT05fRElTQUJMRURfUkVRVUVTVCA0MDQ3CiAKIC8qIE1hY3JvcyB0byB0cmlnZ2VyIGNv
bXBpbGF0aW9uIGVycm9ycyB3aGVuIHRoZSB3cm9uZyB0eXBlcyBhcmUgcHJvdmlkZWQgdG8gYSBD
VEwgKi8KICNkZWZpbmUgX19vcHVzX2NoZWNrX2ludCh4KSAoKCh2b2lkKSgoeCkgPT0gKG9wdXNf
aW50MzIpMCkpLCAob3B1c19pbnQzMikoeCkpCkBAIC0yMDgsNiArMjA5LDkgQEAgZXh0ZXJuICJD
IiB7CiAjZGVmaW5lIE9QVVNfRlJBTUVTSVpFXzIwX01TICAgICAgICAgICAgICAgICA1MDA0IC8q
KjwgVXNlIDIwIG1zIGZyYW1lcyAqLwogI2RlZmluZSBPUFVTX0ZSQU1FU0laRV80MF9NUyAgICAg
ICAgICAgICAgICAgNTAwNSAvKio8IFVzZSA0MCBtcyBmcmFtZXMgKi8KICNkZWZpbmUgT1BVU19G
UkFNRVNJWkVfNjBfTVMgICAgICAgICAgICAgICAgIDUwMDYgLyoqPCBVc2UgNjAgbXMgZnJhbWVz
ICovCisjZGVmaW5lIE9QVVNfRlJBTUVTSVpFXzgwX01TICAgICAgICAgICAgICAgICA1MDA3IC8q
KjwgVXNlIDgwIG1zIGZyYW1lcyAqLworI2RlZmluZSBPUFVTX0ZSQU1FU0laRV8xMDBfTVMgICAg
ICAgICAgICAgICAgNTAwOCAvKio8IFVzZSAxMDAgbXMgZnJhbWVzICovCisjZGVmaW5lIE9QVVNf
RlJBTUVTSVpFXzEyMF9NUyAgICAgICAgICAgICAgICA1MDA5IC8qKjwgVXNlIDEyMCBtcyBmcmFt
ZXMgKi8KIAogLyoqQH0qLwogCkBAIC01NjYsNyArNTcwLDkgQEAgZXh0ZXJuICJDIiB7CiAgICog
PGR0Pk9QVVNfRlJBTUVTSVpFXzIwX01TPC9kdD48ZGQ+VXNlIDIwIG1zIGZyYW1lcy48L2RkPgog
ICAqIDxkdD5PUFVTX0ZSQU1FU0laRV80MF9NUzwvZHQ+PGRkPlVzZSA0MCBtcyBmcmFtZXMuPC9k
ZD4KICAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfNjBfTVM8L2R0PjxkZD5Vc2UgNjAgbXMgZnJhbWVz
LjwvZGQ+Ci0gICogPGR0Pk9QVVNfRlJBTUVTSVpFX1ZBUklBQkxFPC9kdD48ZGQ+T3B0aW1pemUg
dGhlIGZyYW1lIHNpemUgZHluYW1pY2FsbHkuPC9kZD4KKyAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVf
ODBfTVM8L2R0PjxkZD5Vc2UgODAgbXMgZnJhbWVzLjwvZGQ+CisgICogPGR0Pk9QVVNfRlJBTUVT
SVpFXzEwMF9NUzwvZHQ+PGRkPlVzZSAxMDAgbXMgZnJhbWVzLjwvZGQ+CisgICogPGR0Pk9QVVNf
RlJBTUVTSVpFXzEyMF9NUzwvZHQ+PGRkPlVzZSAxMjAgbXMgZnJhbWVzLjwvZGQ+CiAgICogPC9k
bD4KICAgKiBAaGlkZWluaXRpYWxpemVyICovCiAjZGVmaW5lIE9QVVNfU0VUX0VYUEVSVF9GUkFN
RV9EVVJBVElPTih4KSBPUFVTX1NFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT05fUkVRVUVTVCwgX19v
cHVzX2NoZWNrX2ludCh4KQpAQCAtNTgxLDcgKzU4Nyw5IEBAIGV4dGVybiAiQyIgewogICAqIDxk
dD5PUFVTX0ZSQU1FU0laRV8yMF9NUzwvZHQ+PGRkPlVzZSAyMCBtcyBmcmFtZXMuPC9kZD4KICAg
KiA8ZHQ+T1BVU19GUkFNRVNJWkVfNDBfTVM8L2R0PjxkZD5Vc2UgNDAgbXMgZnJhbWVzLjwvZGQ+
CiAgICogPGR0Pk9QVVNfRlJBTUVTSVpFXzYwX01TPC9kdD48ZGQ+VXNlIDYwIG1zIGZyYW1lcy48
L2RkPgotICAqIDxkdD5PUFVTX0ZSQU1FU0laRV9WQVJJQUJMRTwvZHQ+PGRkPk9wdGltaXplIHRo
ZSBmcmFtZSBzaXplIGR5bmFtaWNhbGx5LjwvZGQ+CisgICogPGR0Pk9QVVNfRlJBTUVTSVpFXzgw
X01TPC9kdD48ZGQ+VXNlIDgwIG1zIGZyYW1lcy48L2RkPgorICAqIDxkdD5PUFVTX0ZSQU1FU0la
RV8xMDBfTVM8L2R0PjxkZD5Vc2UgMTAwIG1zIGZyYW1lcy48L2RkPgorICAqIDxkdD5PUFVTX0ZS
QU1FU0laRV8xMjBfTVM8L2R0PjxkZD5Vc2UgMTIwIG1zIGZyYW1lcy48L2RkPgogICAqIDwvZGw+
CiAgICogQGhpZGVpbml0aWFsaXplciAqLwogI2RlZmluZSBPUFVTX0dFVF9FWFBFUlRfRlJBTUVf
RFVSQVRJT04oeCkgT1BVU19HRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OX1JFUVVFU1QsIF9fb3B1
c19jaGVja19pbnRfcHRyKHgpCkBAIC02ODEsNiArNjg5LDMwIEBAIGV4dGVybiAiQyIgewogICAq
LwogI2RlZmluZSBPUFVTX0dFVF9TQU1QTEVfUkFURSh4KSBPUFVTX0dFVF9TQU1QTEVfUkFURV9S
RVFVRVNULCBfX29wdXNfY2hlY2tfaW50X3B0cih4KQogCisvKiogSWYgc2V0IHRvIDEsIGRpc2Fi
bGVzIHRoZSB1c2Ugb2YgcGhhc2UgaW52ZXJzaW9uIGZvciBpbnRlbnNpdHkgc3RlcmVvLAorICAq
IGltcHJvdmluZyB0aGUgcXVhbGl0eSBvZiBtb25vIGRvd25taXhlcywgYnV0IHNsaWdodGx5IHJl
ZHVjaW5nIG5vcm1hbAorICAqIHN0ZXJlbyBxdWFsaXR5LiBEaXNhYmxpbmcgcGhhc2UgaW52ZXJz
aW9uIGluIHRoZSBkZWNvZGVyIGRvZXMgbm90IGNvbXBseQorICAqIHdpdGggUkZDIDY3MTYsIGFs
dGhvdWdoIGl0IGRvZXMgbm90IGNhdXNlIGFueSBpbnRlcm9wZXJhYmlsaXR5IGlzc3VlIGFuZAor
ICAqIGlzIGV4cGVjdGVkIHRvIGJlY29tZSBwYXJ0IG9mIHRoZSBPcHVzIHN0YW5kYXJkIG9uY2Ug
UkZDIDY3MTYgaXMgdXBkYXRlZAorICAqIGJ5IGRyYWZ0LWlldGYtY29kZWMtb3B1cy11cGRhdGUu
CisgICogQHNlZSBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQKKyAgKiBAcGFyYW1b
aW5dIHggPHR0Pm9wdXNfaW50MzI8L3R0PjogQWxsb3dlZCB2YWx1ZXM6CisgICogPGRsPgorICAq
IDxkdD4wPC9kdD48ZGQ+RW5hYmxlIHBoYXNlIGludmVyc2lvbiAoZGVmYXVsdCkuPC9kZD4KKyAg
KiA8ZHQ+MTwvZHQ+PGRkPkRpc2FibGUgcGhhc2UgaW52ZXJzaW9uLjwvZGQ+CisgICogPC9kbD4K
KyAgKiBAaGlkZWluaXRpYWxpemVyICovCisjZGVmaW5lIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lP
Tl9ESVNBQkxFRCh4KSBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVCwg
X19vcHVzX2NoZWNrX2ludCh4KQorLyoqIEdldHMgdGhlIGVuY29kZXIncyBjb25maWd1cmVkIHBo
YXNlIGludmVyc2lvbiBzdGF0dXMuCisgICogQHNlZSBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05f
RElTQUJMRUQKKyAgKiBAcGFyYW1bb3V0XSB4IDx0dD5vcHVzX2ludDMyICo8L3R0PjogUmV0dXJu
cyBvbmUgb2YgdGhlIGZvbGxvd2luZyB2YWx1ZXM6CisgICogPGRsPgorICAqIDxkdD4wPC9kdD48
ZGQ+U3RlcmVvIHBoYXNlIGludmVyc2lvbiBlbmFibGVkIChkZWZhdWx0KS48L2RkPgorICAqIDxk
dD4xPC9kdD48ZGQ+U3RlcmVvIHBoYXNlIGludmVyc2lvbiBkaXNhYmxlZC48L2RkPgorICAqIDwv
ZGw+CisgICogQGhpZGVpbml0aWFsaXplciAqLworI2RlZmluZSBPUFVTX0dFVF9QSEFTRV9JTlZF
UlNJT05fRElTQUJMRUQoeCkgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVF
U1QsIF9fb3B1c19jaGVja19pbnRfcHRyKHgpCisKIC8qKkB9Ki8KIAogLyoqIEBkZWZncm91cCBv
cHVzX2RlY29kZXJjdGxzIERlY29kZXIgcmVsYXRlZCBDVExzCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUv
b3B1c19tdWx0aXN0cmVhbS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfbXVsdGlzdHJlYW0uaAppbmRleCAzNjIy
ZTAwOWZiNTMwNTJkZGIxMzc1Y2YzNzBlYjg1ZWIwMjk3MGU3Li5iYWJjZWU2OTA1YmY5ZjcwZDky
MmViOTAzZDI4YTkxNTFmMDUzNTA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUvb3B1c19tdWx0aXN0cmVh
bS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvaW5jbHVkZS9vcHVzX211bHRpc3RyZWFtLmgKQEAgLTI3Myw3ICsyNzMsNyBAQCBP
UFVTX0VYUE9SVCBPUFVTX1dBUk5fVU5VU0VEX1JFU1VMVCBPcHVzTVNFbmNvZGVyICpvcHVzX211
bHRpc3RyZWFtX3N1cnJvdW5kX2VuYwogICAgICAgdW5zaWduZWQgY2hhciAqbWFwcGluZywKICAg
ICAgIGludCBhcHBsaWNhdGlvbiwKICAgICAgIGludCAqZXJyb3IKLSkgT1BVU19BUkdfTk9OTlVM
TCg1KTsKKykgT1BVU19BUkdfTk9OTlVMTCg0KSBPUFVTX0FSR19OT05OVUxMKDUpIE9QVVNfQVJH
X05PTk5VTEwoNik7CiAKIC8qKiBJbml0aWFsaXplIGEgcHJldmlvdXNseSBhbGxvY2F0ZWQgbXVs
dGlzdHJlYW0gZW5jb2RlciBzdGF0ZS4KICAgKiBUaGUgbWVtb3J5IHBvaW50ZWQgdG8gYnkgXGEg
c3QgbXVzdCBiZSBhdCBsZWFzdCB0aGUgc2l6ZSByZXR1cm5lZCBieQpAQCAtMzQyLDcgKzM0Miw3
IEBAIE9QVVNfRVhQT1JUIGludCBvcHVzX211bHRpc3RyZWFtX3N1cnJvdW5kX2VuY29kZXJfaW5p
dCgKICAgICAgIGludCAqY291cGxlZF9zdHJlYW1zLAogICAgICAgdW5zaWduZWQgY2hhciAqbWFw
cGluZywKICAgICAgIGludCBhcHBsaWNhdGlvbgotKSBPUFVTX0FSR19OT05OVUxMKDEpIE9QVVNf
QVJHX05PTk5VTEwoNik7CispIE9QVVNfQVJHX05PTk5VTEwoMSkgT1BVU19BUkdfTk9OTlVMTCg1
KSBPUFVTX0FSR19OT05OVUxMKDYpIE9QVVNfQVJHX05PTk5VTEwoNyk7CiAKIC8qKiBFbmNvZGVz
IGEgbXVsdGlzdHJlYW0gT3B1cyBmcmFtZS4KICAgKiBAcGFyYW0gc3QgPHR0Pk9wdXNNU0VuY29k
ZXIqPC90dD46IE11bHRpc3RyZWFtIGVuY29kZXIgc3RhdGUuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUv
b3B1c190eXBlcy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfdHlwZXMuaAppbmRleCBiMjhlMDNhZWEyMDJkOTdm
ZTcxY2Y1OGFmYzkwZGFjMjA4NDE0NGE5Li43Y2Y2NzU1ODBmZmIwYWQ5YmE3YjA0MGE1YzAzZWIy
ODI4OTEwNDg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUvb3B1c190eXBlcy5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvaW5jbHVkZS9v
cHVzX3R5cGVzLmgKQEAgLTMzLDE0ICszMywyOSBAQAogI2lmbmRlZiBPUFVTX1RZUEVTX0gKICNk
ZWZpbmUgT1BVU19UWVBFU19ICiAKKyNkZWZpbmUgb3B1c19pbnQgICAgICAgICBpbnQgICAgICAg
ICAgICAgICAgICAgICAvKiB1c2VkIGZvciBjb3VudGVycyBldGM7IGF0IGxlYXN0IDE2IGJpdHMg
Ki8KKyNkZWZpbmUgb3B1c19pbnQ2NCAgICAgICBsb25nIGxvbmcKKyNkZWZpbmUgb3B1c19pbnQ4
ICAgICAgICBzaWduZWQgY2hhcgorCisjZGVmaW5lIG9wdXNfdWludCAgICAgICAgdW5zaWduZWQg
aW50ICAgICAgICAgICAgLyogdXNlZCBmb3IgY291bnRlcnMgZXRjOyBhdCBsZWFzdCAxNiBiaXRz
ICovCisjZGVmaW5lIG9wdXNfdWludDY0ICAgICAgdW5zaWduZWQgbG9uZyBsb25nCisjZGVmaW5l
IG9wdXNfdWludDggICAgICAgdW5zaWduZWQgY2hhcgorCiAvKiBVc2UgdGhlIHJlYWwgc3RkaW50
LmggaWYgaXQncyB0aGVyZSAodGFrZW4gZnJvbSBQYXVsIEhzaWVoJ3MgcHN0ZGludC5oKSAqLwot
I2lmIChkZWZpbmVkKF9fU1REQ19fKSAmJiBfX1NURENfXyAmJiBfX1NURENfVkVSU0lPTl9fID49
IDE5OTkwMUwpIHx8IChkZWZpbmVkKF9fR05VQ19fKSAmJiAoZGVmaW5lZChfU1RESU5UX0gpIHx8
IGRlZmluZWQoX1NURElOVF9IXykpIHx8IGRlZmluZWQgKEhBVkVfU1RESU5UX0gpKQorI2lmIChk
ZWZpbmVkKF9fU1REQ19fKSAmJiBfX1NURENfXyAmJiBkZWZpbmVkKF9fU1REQ19WRVJTSU9OX18p
ICYmIF9fU1REQ19WRVJTSU9OX18gPj0gMTk5OTAxTCkgfHwgKGRlZmluZWQoX19HTlVDX18pICYm
IChkZWZpbmVkKF9TVERJTlRfSCkgfHwgZGVmaW5lZChfU1RESU5UX0hfKSkgfHwgZGVmaW5lZCAo
SEFWRV9TVERJTlRfSCkpCiAjaW5jbHVkZSA8c3RkaW50Lmg+Ci0KKyMgIHVuZGVmIG9wdXNfaW50
NjQKKyMgIHVuZGVmIG9wdXNfaW50OAorIyAgdW5kZWYgb3B1c191aW50NjQKKyMgIHVuZGVmIG9w
dXNfdWludDgKKyAgIHR5cGVkZWYgaW50OF90IG9wdXNfaW50ODsKKyAgIHR5cGVkZWYgdWludDhf
dCBvcHVzX3VpbnQ4OwogICAgdHlwZWRlZiBpbnQxNl90IG9wdXNfaW50MTY7CiAgICB0eXBlZGVm
IHVpbnQxNl90IG9wdXNfdWludDE2OwogICAgdHlwZWRlZiBpbnQzMl90IG9wdXNfaW50MzI7CiAg
ICB0eXBlZGVmIHVpbnQzMl90IG9wdXNfdWludDMyOworICAgdHlwZWRlZiBpbnQ2NF90IG9wdXNf
aW50NjQ7CisgICB0eXBlZGVmIHVpbnQ2NF90IG9wdXNfdWludDY0OwogI2VsaWYgZGVmaW5lZChf
V0lOMzIpCiAKICMgIGlmIGRlZmluZWQoX19DWUdXSU5fXykKQEAgLTE0OCwxMiArMTYzLDQgQEAK
IAogI2VuZGlmCiAKLSNkZWZpbmUgb3B1c19pbnQgICAgICAgICBpbnQgICAgICAgICAgICAgICAg
ICAgICAvKiB1c2VkIGZvciBjb3VudGVycyBldGM7IGF0IGxlYXN0IDE2IGJpdHMgKi8KLSNkZWZp
bmUgb3B1c19pbnQ2NCAgICAgICBsb25nIGxvbmcKLSNkZWZpbmUgb3B1c19pbnQ4ICAgICAgICBz
aWduZWQgY2hhcgotCi0jZGVmaW5lIG9wdXNfdWludCAgICAgICAgdW5zaWduZWQgaW50ICAgICAg
ICAgICAgLyogdXNlZCBmb3IgY291bnRlcnMgZXRjOyBhdCBsZWFzdCAxNiBiaXRzICovCi0jZGVm
aW5lIG9wdXNfdWludDY0ICAgICAgdW5zaWduZWQgbG9uZyBsb25nCi0jZGVmaW5lIG9wdXNfdWlu
dDggICAgICAgdW5zaWduZWQgY2hhcgotCiAjZW5kaWYgIC8qIE9QVVNfVFlQRVNfSCAqLwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9yZWxlYXNlcy5zaGEyIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9yZWxlYXNlcy5zaGEyCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIxYjMyYzAw
NTUxOGZmZDQ0YWQ1MDU5NzIyNWY3OGQzOWI1NTZlYjkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3JlbGVh
c2VzLnNoYTIKQEAgLTAsMCArMSw2MyBAQAorYjJmNzVjNGFjNWFiODM3ODQ1ZWIwMjg0MTNmYWUy
YTI4NzU0YmZiMGE2ZDc2NDE2ZTJhZjE0NDFlZjQ0NzY0OSAgb3B1cy0wLjkuMC50YXIuZ3oKKzRl
Mzc5YTk4YmE5NWJiYmZlOTA4N2VmMTBmZGQwNWM4YWM5MDYwYjZkNjk1ZjU4N2VhODJhN2I0M2Ew
ZGY0ZmUgIG9wdXMtMC45LjEwLnRhci5negorYjFjYWQ2ODQ2YThmODE5YTE0MTAwOWZlM2Y4ZjEw
Yzk0NmU4ZWZmN2U5YzIzMzljZDUxN2JiMTM2Y2M1OWVhZSAgb3B1cy0wLjkuMTQudGFyLmd6Cisy
MDYyMjFhZmM0N2I4NzQ5NjU4ODAxM2JkNDUyM2UxZTlmNTU2MzM2YzA4MTNmNDM3Mjc3M2ZjNTM2
ZGQ0MjkzICBvcHVzLTAuOS4xLnRhci5negorNmU4NWMxYjU3ZTFkN2I3ZGZlMjkyOGJmOTI1ODZi
OTZiNzNhOTA2N2UwNTRlZGU0NWJkOGU2ZDI0YmQzMDU4MiAgb3B1cy0wLjkuMi50YXIuZ3oKK2Q5
MTZlMzRjMThhMzk2ZWI3ZGZmYzQ3YWY3NTRmNDQxYWY1MmEyOTBiNzYxZTIwZGI5YWVkYjY1OTI4
YzY5OWUgIG9wdXMtMC45LjMudGFyLmd6Cis1MzgwMTA2NmZhOTczMjk3NjhlN2I4NzFmZDE0OTU3
NDAyNjllYzQ2ODAyZTFjOTA1MWFhN2U3OGM2ZWRlZTViICBvcHVzLTAuOS41LnRhci5negorM2Jm
YWViMjVmNGI0YTYyNWEwYmM5OTRkNmZjNmY2Nzc2YTA1MTkzZjYwMDk5ZTBhOTlmNzUzMGM2YjI1
NjMwOSAgb3B1cy0wLjkuNi50YXIuZ3oKKzFiNjk3NzJjMzFjNWNiYWE0M2QxZGZhNWIxYzQ5NWZj
Mjk3MTJlOGUwZmY2OWQ2ZjhhZDQ2NDU5ZTVjNjcxNWYgIG9wdXMtMC45LjcudGFyLmd6Cis0YWEz
MGQyZTA2NTJmZmI0YTdhMjJjYzhhMjljNGNlNzgyNjc2MjZmNTYwYTJkOTIxM2IxZDJkNGU2MThj
ZjM2ICBvcHVzLTAuOS44LnRhci5negorMmY2MjM1OWYwOTE1MWZhM2IyNDIwNDBkYzliNGM1YjZi
ZGExNTU1N2M1ZGFlYTU5Yzg0MjBmMWEyZmYzMjhiNyAgb3B1cy0wLjkuOS50YXIuZ3oKKzQzYmNl
YTUxYWZhNTMxZjMyYTZhNWZkZDljYmE0YmQ0OTY5OTNlMjZhMTQxMjE3ZGIzY2NjY2U2Y2FhN2Nk
NzQgIG9wdXMtMS4wLjAtcmMudGFyLmd6Cis5MjUwZmNjNzQ0NzJkNDVjMWUxNDc0NTU0MmVjOWM4
ZDA5OTgyNTM4YWVmZWQ1Njk2MjQ5NTYxNGJlM2UwZDJkICBvcHVzLTEuMC4wLnRhci5negorNzZi
YzBhMzE1MDJhNTFkYWU5YWI3MzdiNGRiMDQzYjllY2ZjZDBiNTg2MWYwYmZkYTQxYjY2MmJkNWI5
MjIyNyAgb3B1cy0xLjAuMS1yYzIudGFyLmd6CiszZGU4ZDY4MDlkYWMzODk3MWViYjMwNTUzMmQ0
ZWE1MzI1MTlkM2JlZDA4OTg1ZjI1ZDZjNTU3ZjljZTVlOGZmICBvcHVzLTEuMC4xLXJjMy50YXIu
Z3oKKzgwNDQzOTdhNjM2NWEwNzExN2IwOGNiZThmOTgxOGJmN2M5Mzc0NjkwODgwNmJhNzRhMjkx
NzE4N2JiZGRhNWYgIG9wdXMtMS4wLjEtcmMudGFyLmd6Cis4MGZhNWMzY2FmMmFjMGZkNjhmOGEy
MmNjZTE1NjRmYzQ2YjM2OGM3NzNhMTc1NTQ4ODdkMDA2NmZlMTg0MWVmICBvcHVzLTEuMC4xLnRh
ci5negorZGE2MTVlZGJlZTVkMDE5YzE4MzMwNzFkNjlhNDc4MmMxOWYxNzhjZjljYTE0MDEzNzUw
MzZlY2VmMjVjZDc4YSAgb3B1cy0xLjAuMi50YXIuZ3oKKzE5MWEwODljOTJkYmM0MDNkZTY5ODA0
NjNkZDM2MDRiNjViZWIxMmQyODNjNjA3ZTI0NmM4MDc2MzYzY2I0OWMgIG9wdXMtMS4wLjMudGFy
Lmd6CithOGQ0MGVmZTg3ZjZjM2U3NjcyNTM5MTQ1N2Q0NjI3Nzg3OGM3YTgxNmFlMTY0Mjg0MzI2
MTQ2MzEzM2ZhNWM4ICBvcHVzLTEuMS1hbHBoYS50YXIuZ3oKK2VjMTc4NDI4N2YzODVhZWY5OTRi
NjQ3MzRhYWVjYWUwNDg2MGU2MWFhNTBmYzZlZWY2NjQzZmE3ZTQwZGQxOTMgIG9wdXMtMS4xLWJl
dGEudGFyLmd6Cis4YWExNjM2MGY1OWE5NGQzZTM4ZjM4ZjI4ZDI0MDM5Zjc2NjMxNzk2ODJjYmFl
ODJhYTQyZjFkZDllNTJlNmVkICBvcHVzLTEuMS1yYy50YXIuZ3oKK2ViYzg3YTA4NmQ0ZmU2Nzdj
NWU0MmQ1Njg4OGIxZmQyNWFmODU4ZTQxNzllYWU0Zjg2NTYyNzA0MTBkZmZhYzMgIG9wdXMtMS4x
LXJjMi50YXIuZ3oKK2NiZmQwOWM1OGNjMTBhNGQzZmNiNzI3YWQ1ZDQ2ZDdiYjU0OWY4MTg1YWM5
MjJlZTI4YjQ1ODFiNTJhN2JlZTkgIG9wdXMtMS4xLXJjMy50YXIuZ3oKK2I5NzI3MDE1YTU4YWZm
Y2YzZGI1MjczMjJiZjhjNGQyZmNmMzlmNWY2YjhmMTVkYmNlY2EyMDIwNmNiZTFkOTUgIG9wdXMt
MS4xLnRhci5negorMGM2Njg2MzlkY2QxNmIxNDcwOWZjOWRjNDllNjY4NjYwNmY1YTI1NmYyZWFh
MWViYWEyZjM5YTY2Zjg2MjZjZCAgb3B1cy0xLjEuMS1iZXRhLnRhci5negorNjZmMmE1ODc3Yzg4
MDNkYzlhNWE0NGI0ZjNkMGJkYzhmMDZiZDA2NjMyNDIyMmQxNDRlYjI1NTYxMmI2ODE1MiAgb3B1
cy0xLjEuMS1yYy50YXIuZ3oKKzliODRmZjU2YmQ3NzIwZDU1NTQxMDNjNTU3NjY0ZWZhYzJiOGIx
OGFjYzRiYmNjMjM0Y2I4ODFhYjlhMzM3MWUgIG9wdXMtMS4xLjEudGFyLmd6CiswZTI5MDA3OGUz
MTIxMWJhYTdiNTg4NmJjYzhhYjZiYzA0OGI5ZmM4Mzg4MjUzMmRhNGExYTQ1ZTU4ZTkwN2ZkICBv
cHVzLTEuMS4yLnRhci5negorNThiNmZlODAyZTdlMzAxODJlOTVkMGNkZTg5MGMwYWNlNDBiNmYx
MjVjZmZjNTA2MzVmMGFkMmVlZjY5YjYzMyAgb3B1cy0xLjEuMy50YXIuZ3oKKzkxMjJiNmIzODAw
ODFkZDI2NjUxODlmOTdiZmQ3NzdmMDRmOTJkYzNhYjY2OThlZWExZGJiMjdhZDU5ZDg2OTIgIG9w
dXMtMS4xLjQudGFyLmd6CitlYjg0OTgxY2EwZjQwYTNlNWQ1ZTU4ZDJlODU4MmNiMmZlZTA1YTAy
MjgyNWE2ZGZlMTRkMTRiMDRlYjU2M2U0ICBvcHVzLTEuMS41LnRhci5negorNjU0YTliZWJiNzMy
NjYyNzFhMjhlZGNmZmY0MzFlNGNmZDliZmNkZTcxZjQyODQ5YTBjZGQ3M2JlY2U4MDNhNyAgb3B1
cy0xLjItYWxwaGEudGFyLmd6CitjMGU5MDUwNzI1OWNmMjFjZTdiMmM4MmZiOWFjNTUzNjdkODU0
M2RhZTkxY2MzZDRkMmM1OWFmZDM3ZjQ0MDIzICBvcHVzLTEuMi1hbHBoYTIudGFyLmd6CisyOTFl
OTc5YThhMmZiNjc5ZWQzNWE1ZGZmNWQ3NjFhOWQ5YTVlMjI1ODZmZDA3OTM0ZWQ5NDQ2MWUyNjM2
YzdhICBvcHVzLTEuMi1iZXRhLnRhci5negorODUzNDNmZGFlZDk2NTI5ZDk0YzFlMWYzYTIxMGZh
NTEyNDBkMDRjYTYyZmEwMWU5N2VmMDJmODgwMjBjMmNlOSAgb3B1cy0xLjItcmMxLnRhci5negor
NzdkYjQ1YTg3YjUxNTc4ZmJjNDk1NTVlZjFiMTA5MjYxNzk4NjFkODU0ZWIyNjEzMjA3ZGM3OWQ5
ZWMwYTlhOSAgb3B1cy0xLjIudGFyLmd6CitjZmFmZDMzOWNjZDljNWVmOGQ2YWIxNWQ3ZTFhNDEy
YzA1NGJmNGNiNGVjYmJiY2M3OGMxMmVmMmRlZjcwNzMyICBvcHVzLTEuMi4xLnRhci5negorOTRh
Yzc4Y2E0Zjc0YzRlNDNiYzlmZTRlYzFhZDBhYTM2ZjM4YWI5MGY0NWIwNzI3YzQwZGQxZTk2MDk2
ZTc2NyAgb3B1c190ZXN0dmVjdG9ycy1kcmFmdDExLnRhci5negorOTRhYzc4Y2E0Zjc0YzRlNDNi
YzlmZTRlYzFhZDBhYTM2ZjM4YWI5MGY0NWIwNzI3YzQwZGQxZTk2MDk2ZTc2NyAgb3B1c190ZXN0
dmVjdG9ycy50YXIuZ3oKKzVkMmI5OTc1N2JjYjYyOGJhYjI2MTFmM2VkMjdhZjZmMzUyNzZjZTNh
YmM5NmMwZWQ0Mzk5ZDZjNjQ2M2RkYTUgIG9wdXMtdG9vbHMtMC4xLjIudGFyLmd6CiswMDgzMTcy
OTdkNmNlODRmODQ5OTJhYmY4Y2M5NDhhMDQ4YTRmYTEzNWUxZDFjYWY0MjlmYWZkZTg5NjVhNzky
ICBvcHVzLXRvb2xzLTAuMS4zLnRhci5negorZGU4MDQ4NWM1YWZhMWZkODNjMGUxNmEwZGQ0ODYw
NDcwYzg3Mjk5N2E3ZGQwYTU4ZTk5YjJlZThhOTNlNTE2OCAgb3B1cy10b29scy0wLjEuNC50YXIu
Z3oKKzc2Njc4ZDBlYjdhOWIzZDc5M2JkMDI0M2Y5Y2VkOWFiMGVjZGFiMjYzZjUyMzJlZDk0MGM4
ZjU3OTVmYjA0MDUgIG9wdXMtdG9vbHMtMC4xLjUudGFyLmd6CitjYzg2ZGJjMmE0ZDc2ZGE3ZTFl
ZDlhZmVlODU0NDhjOGY3OThjNDY1YTU0MTIyMzNmMTc4NzgzMjIwZjNhMmMxICBvcHVzLXRvb2xz
LTAuMS42LnRhci5negorZTBmMDhkMzAxNTU1ZGZmYzQxNzYwNDI2OWI1YTg1ZDJiZDE5N2YyNTlj
N2Q2Yzk1N2YzNzBmZmQzM2Q2ZDljZCAgb3B1cy10b29scy0wLjEuNy50YXIuZ3oKK2U0ZTE4ODU3
OWVhMWM0ZTRkNTA2NjQ2MGQ0YTcyMTRhN2VhZmUzNTM5ZTlhNDQ2NmZkYzk4YWY0MWJhNGEyZjYg
IG9wdXMtdG9vbHMtMC4xLjgudGFyLmd6CitiMTg3M2RkNzhjN2ZiYzk4Y2Y2NWQ2ZTEwY2ZkZGI1
YzJjMDNiM2FmOTNmOTIyMTM5YTIxMDRiYWVkYjQ2NDNhICBvcHVzLXRvb2xzLTAuMS45LnRhci5n
egorYTIzNTc1MzJkMTk0NzFiNzA2NjZlMGUwZWMxN2Q1MTQyNDZkOGIzY2IyZWIxNjhmNjhiYjBm
NmZkMzcyYjI4YyAgb3B1cy10b29scy0wLjEuMTAudGFyLmd6CitiZDZkMTRlODg5N2EyZjgwMDY1
ZWYzNGE1MTZjNzBlNzRmOGUwMDA2MGFiZGJjMjM4ZTc5ZTVmOTliY2EzZTk2ICBsaWJvcHVzZW5j
LTAuMS50YXIuZ3oKKzgwNzFiOTY4NDc1YzFhMTdmNTRiNjg0MGQ2ZGU5ZDllZTIwZjkzMGU4Mjdi
MDQwMWFiZTNjNGNmNGYzYmYzMGEgIG9wdXNmaWxlLTAuMS50YXIuZ3oKK2I0YTY3OGIzYjZjNGFk
ZmI2YWZmMWY2N2VmNjU4YmVjZmUxNDZlYTdjN2ZmMjI4ZTk5NTQzNzYyMTcxNTU3ZjkgIG9wdXNm
aWxlLTAuMi50YXIuZ3oKKzQyNDg5MjdmMmM0ZTMxNmVhNWI4NGZiMDJiZDEwMGJmZWM4ZmE0NjI0
YTY5MTBkNzdmMGFmN2YwYzZjYjhiYWEgIG9wdXNmaWxlLTAuMy50YXIuZ3oKKzk4MzZlYTExNzA2
YzQ0ZjM2ZGU5MmM0YzliMTI0OGUwM2E0YzUyMWU3ZmIyY2ZmMThhMGNiNGY4YjBlNzkxNDAgIG9w
dXNmaWxlLTAuNC50YXIuZ3oKK2YxODc5MDZiMWIzNWY3ZjBkN2RlNmE3NTliNGFhYjUxMmE5Mjc5
ZDIzYWRiMzVkODAwOWU3ZTMzYmQ2YTkyMmEgIG9wdXNmaWxlLTAuNC56aXAKKzJjZTUyZDAwNmFl
ZWVjOWYxMDI2MGRiZTMwNzNjNDYzNjk1NGExYWIxOWM4MmI4YmFhZmVmZTAxODBhYTRhMzkgIG9w
dXNmaWxlLTAuNS50YXIuZ3oKK2I5NDBkNjJiZWIxNWI1OTc0NzY0NTc0YjlmMjY1NDgxZmU1YjZl
ZTE2OTAyZmI3MDU3Mjc1NDZjYWY5NTYyNjEgIG9wdXNmaWxlLTAuNS56aXAKKzI0Mjg3MTdiMzU2
ZTEzOWYxOGVkMmZkYjVhZDk5MGI1NjU0YTIzODkwN2EwMDU4MjAwYjM5YzQ2YTdkMDNlYTYgIG9w
dXNmaWxlLTAuNi50YXIuZ3oKKzc1MzMzOTIyNTE5M2RmNjA1MzcyOTQ0ODg5MDIzYjliM2M1Mzc4
ZDY3MmU4Nzg0ZDY5ZmEyNDFjZDQ2NTI3OGMgIG9wdXNmaWxlLTAuNi56aXAKKzllMmJlZDEzYmM3
MjkwNTg1OTFhMGYxY2FiMjUwNWU4Y2ZkOGU3YWM0NjBiZjEwYTc4YmNjM2IxMjVlN2MzMDEgIG9w
dXNmaWxlLTAuNy50YXIuZ3oKKzM0Njk2N2Q3OTg5YmI4M2IwNTk0OTQ4M2I3NmJkMGY2OWExMmM1
OWJkOGI0NDU3ZTg2NDkwMmI1MmJiMGFjMzQgIG9wdXNmaWxlLTAuNy56aXAKKzJjMjMxZWQzY2Zh
YTFiMzE3M2Y1MmQ3NDBlNWJiZDc3ZDUxYjlkZmVjYjg3MDE0YjQwNDkxN2ZiYTRiODU1YTQgIG9w
dXNmaWxlLTAuOC50YXIuZ3oKKzg5ZGZmNDM0MmMzYjc4OTU3NGNiZWE1YzU3ZjExYjk2ZDRlYmU0
ZDI4YWI5MDI0OGMxNzgzZWE1NjliMWU5ZTMgIG9wdXNmaWxlLTAuOC56aXAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9BMk5MU0YuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9BMk5MU0YuYwppbmRleCBiNmU5ZTVmZmNjYWEwNTk5NWRmZGJm
ZTYwMDE2Njg2NWQ4OTkwMTNlLi5iNDg3Njg2ZmY5YzZkMTI5YzA2NTZmYjEwOTVkZThhMjg5ZmM0
ZGJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvQTJOTFNGLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0EyTkxTRi5jCkBAIC00MCw3
ICs0MCw3IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCiAvKiBOdW1iZXIgb2YgYmlu
YXJ5IGRpdmlzaW9ucywgd2hlbiBub3QgaW4gbG93IGNvbXBsZXhpdHkgbW9kZSAqLwogI2RlZmlu
ZSBCSU5fRElWX1NURVBTX0EyTkxTRl9GSVggICAgICAzIC8qIG11c3QgYmUgbm8gaGlnaGVyIHRo
YW4gMTYgLSBsb2cyKCBMU0ZfQ09TX1RBQl9TWl9GSVggKSAqLwotI2RlZmluZSBNQVhfSVRFUkFU
SU9OU19BMk5MU0ZfRklYICAgIDMwCisjZGVmaW5lIE1BWF9JVEVSQVRJT05TX0EyTkxTRl9GSVgg
ICAgMTYKIAogLyogSGVscGVyIGZ1bmN0aW9uIGZvciBBMk5MU0YoLi4pICAgICAgICAgICAgICAg
ICAgICAqLwogLyogVHJhbnNmb3JtcyBwb2x5bm9taWFscyBmcm9tIGNvcyhuKmYpIHRvIGNvcyhm
KV5uICAqLwpAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgc2lsa19BMk5MU0YoCiAgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgLyogSSAgICBGaWx0ZXIg
b3JkZXIgKG11c3QgYmUgZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
KQogewotICAgIG9wdXNfaW50ICAgICAgaSwgaywgbSwgZGQsIHJvb3RfaXgsIGZmcmFjOworICAg
IG9wdXNfaW50ICAgaSwgaywgbSwgZGQsIHJvb3RfaXgsIGZmcmFjOwogICAgIG9wdXNfaW50MzIg
eGxvLCB4aGksIHhtaWQ7CiAgICAgb3B1c19pbnQzMiB5bG8sIHloaSwgeW1pZCwgdGhyOwogICAg
IG9wdXNfaW50MzIgbm9tLCBkZW47CkBAIC0yMzksMTMgKzIzOSwxMyBAQCB2b2lkIHNpbGtfQTJO
TFNGKAogICAgICAgICAgICAgICAgICAgICAvKiBTZXQgTkxTRnMgdG8gd2hpdGUgc3BlY3RydW0g
YW5kIGV4aXQgKi8KICAgICAgICAgICAgICAgICAgICAgTkxTRlsgMCBdID0gKG9wdXNfaW50MTYp
c2lsa19ESVYzMl8xNiggMSA8PCAxNSwgZCArIDEgKTsKICAgICAgICAgICAgICAgICAgICAgZm9y
KCBrID0gMTsgayA8IGQ7IGsrKyApIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIE5MU0ZbIGsg
XSA9IChvcHVzX2ludDE2KXNpbGtfU01VTEJCKCBrICsgMSwgTkxTRlsgMCBdICk7CisgICAgICAg
ICAgICAgICAgICAgICAgICBOTFNGWyBrIF0gPSAob3B1c19pbnQxNilzaWxrX0FERDE2KCBOTFNG
WyBrLTEgXSwgTkxTRlsgMCBdICk7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgICAgIC8q
IEVycm9yOiBBcHBseSBwcm9ncmVzc2l2ZWx5IG1vcmUgYmFuZHdpZHRoIGV4cGFuc2lvbiBhbmQg
cnVuIGFnYWluICovCi0gICAgICAgICAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBhX1ExNiwg
ZCwgNjU1MzYgLSBzaWxrX1NNVUxCQiggMTAgKyBpLCBpICkgKTsgLyogMTBfUTE2ID0gMC4wMDAx
NSovCisgICAgICAgICAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBhX1ExNiwgZCwgNjU1MzYg
LSBzaWxrX0xTSElGVCggMSwgaSApICk7CiAKICAgICAgICAgICAgICAgICBzaWxrX0EyTkxTRl9p
bml0KCBhX1ExNiwgUCwgUSwgZGQgKTsKICAgICAgICAgICAgICAgICBwID0gUDsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogUG9pbnRlciB0byBwb2x5bm9taWFsICovCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvQVBJLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvQVBJLmgKaW5kZXggMDEzMWFjYmIwOGZiMDdhOGRkMGQxNTUwMjc1
OGRlZDVhMWJjN2ZhNi4uNGQ5MGZmOWFhM2VjZDJiMTZkZjQwMjBiNTEwYzg4YTcyNWIxMzY0OSAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL0FQSS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9BUEkuaApAQCAtODAsNyArODAsOCBAQCBv
cHVzX2ludCBzaWxrX0VuY29kZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IE8gICAgUmV0dXJucyBlcnJvciBjbwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAg
ICAgblNhbXBsZXNJbiwgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBzYW1wbGVzIGluIGlucHV0
IHZlY3RvciAgICAgICAgICAgICAgICovCiAgICAgZWNfZW5jICAgICAgICAgICAgICAgICAgICAg
ICAgICAqcHNSYW5nZUVuYywgICAgICAgIC8qIEkvTyAgQ29tcHJlc3NvciBkYXRhIHN0cnVjdHVy
ZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAg
ICAgICAgICpuQnl0ZXNPdXQsICAgICAgICAgLyogSS9PICBOdW1iZXIgb2YgYnl0ZXMgaW4gcGF5
bG9hZCAoaW5wdXQ6IE1heCBieXRlcykgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgcHJlZmlsbEZsYWcgICAgICAgICAvKiBJICAgIEZsYWcgdG8gaW5kaWNhdGUgcHJl
ZmlsbGluZyBidWZmZXJzIG5vIGNvZGluZyAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICBwcmVmaWxsRmxhZywgICAgICAgIC8qIEkgICAgRmxhZyB0byBpbmRpY2F0ZSBw
cmVmaWxsaW5nIGJ1ZmZlcnMgbm8gY29kaW5nICAgKi8KKyAgICBpbnQgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGFjdGl2aXR5ICAgICAgICAgICAgLyogSSAgICBEZWNpc2lvbiBvZiBPcHVz
IHZvaWNlIGFjdGl2aXR5IGRldGVjdG9yICAgICAgICAqLwogKTsKIAogLyoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvQ05HLmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
Q05HLmMKaW5kZXggNzAxYjM2YTM4YTMxMDVkZmE0OGRjYmM1NGU4ODFlNDliZTE5OWZmNi4uZTZk
OWI4NjFlOTVlNzQzZjFkMDg1N2NlNDhhZWRmM2NlYmZiZjFlNCAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0NO
Ry5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9DTkcuYwpAQCAtMTM4LDExICsxMzgsMTEgQEAgdm9pZCBzaWxrX0NORygK
ICAgICAgICAgICAgIGdhaW5fUTE2ID0gc2lsa19MU0hJRlQzMiggc2lsa19TUVJUX0FQUFJPWCgg
Z2Fpbl9RMTYgKSwgOCApOwogICAgICAgICB9CiAgICAgICAgIGdhaW5fUTEwID0gc2lsa19SU0hJ
RlQoIGdhaW5fUTE2LCA2ICk7Ci0gICAgICAgIAorCiAgICAgICAgIHNpbGtfQ05HX2V4YyggQ05H
X3NpZ19RMTQgKyBNQVhfTFBDX09SREVSLCBwc0NORy0+Q05HX2V4Y19idWZfUTE0LCBsZW5ndGgs
ICZwc0NORy0+cmFuZF9zZWVkICk7CiAKICAgICAgICAgLyogQ29udmVydCBDTkcgTkxTRiB0byBm
aWx0ZXIgcmVwcmVzZW50YXRpb24gKi8KLSAgICAgICAgc2lsa19OTFNGMkEoIEFfUTEyLCBwc0NO
Ry0+Q05HX3NtdGhfTkxTRl9RMTUsIHBzRGVjLT5MUENfb3JkZXIgKTsKKyAgICAgICAgc2lsa19O
TFNGMkEoIEFfUTEyLCBwc0NORy0+Q05HX3NtdGhfTkxTRl9RMTUsIHBzRGVjLT5MUENfb3JkZXIs
IHBzRGVjLT5hcmNoICk7CiAKICAgICAgICAgLyogR2VuZXJhdGUgQ05HIHNpZ25hbCwgYnkgc3lu
dGhlc2lzIGZpbHRlcmluZyAqLwogICAgICAgICBzaWxrX21lbWNweSggQ05HX3NpZ19RMTQsIHBz
Q05HLT5DTkdfc3ludGhfc3RhdGUsIE1BWF9MUENfT1JERVIgKiBzaXplb2YoIG9wdXNfaW50MzIg
KSApOwpAQCAtMTcxLDEwICsxNzEsMTAgQEAgdm9pZCBzaWxrX0NORygKIAogICAgICAgICAgICAg
LyogVXBkYXRlIHN0YXRlcyAqLwogICAgICAgICAgICAgQ05HX3NpZ19RMTRbIE1BWF9MUENfT1JE
RVIgKyBpIF0gPSBzaWxrX0FERF9TQVQzMiggQ05HX3NpZ19RMTRbIE1BWF9MUENfT1JERVIgKyBp
IF0sIHNpbGtfTFNISUZUX1NBVDMyKCBMUENfcHJlZF9RMTAsIDQgKSApOwotICAgICAgICAgICAg
CisKICAgICAgICAgICAgIC8qIFNjYWxlIHdpdGggR2FpbiBhbmQgYWRkIHRvIGlucHV0IHNpZ25h
bCAqLwogICAgICAgICAgICAgZnJhbWVbIGkgXSA9IChvcHVzX2ludDE2KXNpbGtfQUREX1NBVDE2
KCBmcmFtZVsgaSBdLCBzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCggc2lsa19TTVVMV1co
IENOR19zaWdfUTE0WyBNQVhfTFBDX09SREVSICsgaSBdLCBnYWluX1ExMCApLCA4ICkgKSApOwot
ICAgICAgICAgICAgCisKICAgICAgICAgfQogICAgICAgICBzaWxrX21lbWNweSggcHNDTkctPkNO
R19zeW50aF9zdGF0ZSwgJkNOR19zaWdfUTE0WyBsZW5ndGggXSwgTUFYX0xQQ19PUkRFUiAqIHNp
emVvZiggb3B1c19pbnQzMiApICk7CiAgICAgfSBlbHNlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENf
YW5hbHlzaXNfZmlsdGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBDX2FuYWx5c2lzX2ZpbHRlci5jCmluZGV4IDIwOTA2
NjczZmYxMjQ2MTBkZjIwNzFjYjc2NWNiZjliMDliMzNmMDguLjc3MTVmNzBmOGQ2NzYzNzU3YjBl
ZjE5NGJlNGNkMDE0ZmZkMGMyMjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENfYW5hbHlzaXNfZmlsdGVy
LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL0xQQ19hbmFseXNpc19maWx0ZXIuYwpAQCAtMzksNiArMzksMTMgQEAgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAvKiBmaXJzdCBkIG91dHB1dCBzYW1wbGVzIGFyZSBz
ZXQgdG8gemVybyAgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqLwogCisvKiBPUFQ6IFVzaW5nIGNlbHRfZmlyKCkgZm9yIHRoaXMgZnVuY3Rpb24gc2hvdWxk
IGJlIGZhc3RlciwgYnV0IGl0IG1heSBjYXVzZQorICAgaW50ZWdlciBvdmVyZmxvd3MgaW4gaW50
ZXJtZWRpYXRlIHZhbHVlcyAobm90IGZpbmFsIHJlc3VsdHMpLCB3aGljaCB0aGUKKyAgIGN1cnJl
bnQgaW1wbGVtZW50YXRpb24gc2lsZW5jZXMgYnkgY2FzdGluZyB0byB1bnNpZ25lZC4gRW5hYmxp
bmcKKyAgIHRoaXMgc2hvdWxkIGJlIHNhZmUgaW4gcHJldHR5IG11Y2ggYWxsIGNhc2VzLCBldmVu
IHRob3VnaCBpdCBpcyBub3QgdGVjaG5pY2FsbHkKKyAgIEM4OS1jb21wbGlhbnQuICovCisjZGVm
aW5lIFVTRV9DRUxUX0ZJUiAwCisKIHZvaWQgc2lsa19MUENfYW5hbHlzaXNfZmlsdGVyKAogICAg
IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqb3V0LCAgICAgICAgICAgICAgIC8qIE8gICAg
T3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmluLCAgICAgICAgICAgICAg
ICAvKiBJICAgIElucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCkBAIC00OSw4ICs1Niw3IEBAIHZvaWQgc2lsa19MUENfYW5hbHlzaXNf
ZmlsdGVyKAogKQogewogICAgIG9wdXNfaW50ICAgajsKLSNpZmRlZiBGSVhFRF9QT0lOVAotICAg
IG9wdXNfaW50MTYgbWVtW1NJTEtfTUFYX09SREVSX0xQQ107CisjaWYgZGVmaW5lZChGSVhFRF9Q
T0lOVCkgJiYgVVNFX0NFTFRfRklSCiAgICAgb3B1c19pbnQxNiBudW1bU0lMS19NQVhfT1JERVJf
TFBDXTsKICNlbHNlCiAgICAgaW50IGl4OwpAQCAtNjIsMTUgKzY4LDEyIEBAIHZvaWQgc2lsa19M
UENfYW5hbHlzaXNfZmlsdGVyKAogICAgIHNpbGtfYXNzZXJ0KCAoZCAmIDEpID09IDAgKTsKICAg
ICBzaWxrX2Fzc2VydCggZCA8PSBsZW4gKTsKIAotI2lmZGVmIEZJWEVEX1BPSU5UCisjaWYgZGVm
aW5lZChGSVhFRF9QT0lOVCkgJiYgVVNFX0NFTFRfRklSCiAgICAgc2lsa19hc3NlcnQoIGQgPD0g
U0lMS19NQVhfT1JERVJfTFBDICk7CiAgICAgZm9yICggaiA9IDA7IGogPCBkOyBqKysgKSB7CiAg
ICAgICAgIG51bVsgaiBdID0gLUJbIGogXTsKICAgICB9Ci0gICAgZm9yIChqPTA7ajxkO2orKykg
ewotICAgICAgICBtZW1bIGogXSA9IGluWyBkIC0gaiAtIDEgXTsKLSAgICB9Ci0gICAgY2VsdF9m
aXIoIGluICsgZCwgbnVtLCBvdXQgKyBkLCBsZW4gLSBkLCBkLCBtZW0sIGFyY2ggKTsKKyAgICBj
ZWx0X2ZpciggaW4gKyBkLCBudW0sIG91dCArIGQsIGxlbiAtIGQsIGQsIGFyY2ggKTsKICAgICBm
b3IgKCBqID0gMDsgaiA8IGQ7IGorKyApIHsKICAgICAgICAgb3V0WyBqIF0gPSAwOwogICAgIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9MUENfZml0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBDX2ZpdC5jCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNk
ZWE0ZjNhYmNhZjdmY2QxNDFhNGI4NmUyZjkyNGI2NzllZmZkOTQKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvTFBDX2ZpdC5jCkBAIC0wLDAgKzEsODEgQEAKKy8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorQ29weXJp
Z2h0IChjKSAyMDEzLCBLb2VuIFZvcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KK1JlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCithcmUgbWV0OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCit0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLSBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKy0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJ
RVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKK25hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9y
cywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCitwcm9kdWN0cyBkZXJpdmVkIGZy
b20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KK3Blcm1pc3Np
b24uCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKK0FORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKK0lNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFCitBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05F
UiBPUiBDT05UUklCVVRPUlMgQkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCitTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKK0lOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUK
K1BPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpZmRlZiBI
QVZFX0NPTkZJR19ICisjaW5jbHVkZSAiY29uZmlnLmgiCisjZW5kaWYKKworI2luY2x1ZGUgIlNp
Z1Byb2NfRklYLmgiCisKKy8qIENvbnZlcnQgaW50MzIgY29lZmZpY2llbnRzIHRvIGludDE2IGNv
ZWZzIGFuZCBtYWtlIHN1cmUgdGhlcmUncyBubyB3cmFwLWFyb3VuZCAqLwordm9pZCBzaWxrX0xQ
Q19maXQoCisgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICphX1FPVVQsICAgICAgICAg
ICAgLyogTyAgICBPdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICphX1FJ
TiwgICAgICAgICAgICAgLyogSS9PICBJbnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICBRT1VULCAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgUSBkb21haW4gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgUUlOLCAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IFEgZG9tYWlu
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgLyogSSAgICBGaWx0
ZXIgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworKQoreworICAgIG9wdXNfaW50ICAgIGksIGssIGlkeCA9IDA7CisgICAgb3B1c19pbnQzMiAg
ICBtYXhhYnMsIGFic3ZhbCwgY2hpcnBfUTE2OworCisgICAgLyogTGltaXQgdGhlIG1heGltdW0g
YWJzb2x1dGUgdmFsdWUgb2YgdGhlIHByZWRpY3Rpb24gY29lZmZpY2llbnRzLCBzbyB0aGF0IHRo
ZXknbGwgZml0IGluIGludDE2ICovCisgICAgZm9yKCBpID0gMDsgaSA8IDEwOyBpKysgKSB7Cisg
ICAgICAgIC8qIEZpbmQgbWF4aW11bSBhYnNvbHV0ZSB2YWx1ZSBhbmQgaXRzIGluZGV4ICovCisg
ICAgICAgIG1heGFicyA9IDA7CisgICAgICAgIGZvciggayA9IDA7IGsgPCBkOyBrKysgKSB7Cisg
ICAgICAgICAgICBhYnN2YWwgPSBzaWxrX2FicyggYV9RSU5ba10gKTsKKyAgICAgICAgICAgIGlm
KCBhYnN2YWwgPiBtYXhhYnMgKSB7CisgICAgICAgICAgICAgICAgbWF4YWJzID0gYWJzdmFsOwor
ICAgICAgICAgICAgICAgIGlkeCAgICA9IGs7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAg
ICAgICAgbWF4YWJzID0gc2lsa19SU0hJRlRfUk9VTkQoIG1heGFicywgUUlOIC0gUU9VVCApOwor
CisgICAgICAgIGlmKCBtYXhhYnMgPiBzaWxrX2ludDE2X01BWCApIHsKKyAgICAgICAgICAgIC8q
IFJlZHVjZSBtYWduaXR1ZGUgb2YgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgKi8KKyAgICAgICAg
ICAgIG1heGFicyA9IHNpbGtfbWluKCBtYXhhYnMsIDE2MzgzOCApOyAgLyogKCBzaWxrX2ludDMy
X01BWCA+PiAxNCApICsgc2lsa19pbnQxNl9NQVggPSAxNjM4MzggKi8KKyAgICAgICAgICAgIGNo
aXJwX1ExNiA9IFNJTEtfRklYX0NPTlNUKCAwLjk5OSwgMTYgKSAtIHNpbGtfRElWMzIoIHNpbGtf
TFNISUZUKCBtYXhhYnMgLSBzaWxrX2ludDE2X01BWCwgMTQgKSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzaWxrX1JTSElGVDMyKCBzaWxrX01VTCggbWF4YWJzLCBp
ZHggKyAxKSwgMiApICk7CisgICAgICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfMzIoIGFfUUlOLCBk
LCBjaGlycF9RMTYgKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICB9CisgICAgfQorCisgICAgaWYoIGkgPT0gMTAgKSB7CisgICAgICAgIC8qIFJlYWNoZWQg
dGhlIGxhc3QgaXRlcmF0aW9uLCBjbGlwIHRoZSBjb2VmZmljaWVudHMgKi8KKyAgICAgICAgZm9y
KCBrID0gMDsgayA8IGQ7IGsrKyApIHsKKyAgICAgICAgICAgIGFfUU9VVFsgayBdID0gKG9wdXNf
aW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIGFfUUlOWyBrIF0sIFFJTiAtIFFP
VVQgKSApOworICAgICAgICAgICAgYV9RSU5bIGsgXSA9IHNpbGtfTFNISUZUKCAob3B1c19pbnQz
MilhX1FPVVRbIGsgXSwgUUlOIC0gUU9VVCApOworICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAg
ICAgICAgZm9yKCBrID0gMDsgayA8IGQ7IGsrKyApIHsKKyAgICAgICAgICAgIGFfUU9VVFsgayBd
ID0gKG9wdXNfaW50MTYpc2lsa19SU0hJRlRfUk9VTkQoIGFfUUlOWyBrIF0sIFFJTiAtIFFPVVQg
KTsKKyAgICAgICAgfQorICAgIH0KK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENfaW52X3ByZWRfZ2Fp
bi5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL0xQQ19pbnZfcHJlZF9nYWluLmMKaW5kZXggNGFmODlhYTVmYWQzMjQ3OTk2MjBl
NjRjM2ZhMjJlM2VhNmJkOTQwMC4uYTM3NDZhNmVmOWYzMTg3NDY4Y2NkNjk0NDgzN2Q4YzAyYmJh
ZGQxOCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQQ19pbnZfcHJlZF9nYWluLmMKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQQ19p
bnZfcHJlZF9nYWluLmMKQEAgLTMwLDYgKzMwLDcgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCiAjZW5kaWYKIAogI2luY2x1ZGUgIlNpZ1Byb2NfRklYLmgiCisjaW5jbHVkZSAiZGVmaW5l
LmgiCiAKICNkZWZpbmUgUUEgICAgICAgICAgICAgICAgICAgICAgICAgIDI0CiAjZGVmaW5lIEFf
TElNSVQgICAgICAgICAgICAgICAgICAgICBTSUxLX0ZJWF9DT05TVCggMC45OTk3NSwgUUEgKQpA
QCAtMzgsMTE3ICszOSwxMDMgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKIC8qIENv
bXB1dGUgaW52ZXJzZSBvZiBMUEMgcHJlZGljdGlvbiBnYWluLCBhbmQgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAvKiB0ZXN0IGlmIExQQyBjb2VmZmljaWVudHMgYXJlIHN0YWJsZSAoYWxs
IHBvbGVzIHdpdGhpbiB1bml0IGNpcmNsZSkgICAqLwotc3RhdGljIG9wdXNfaW50MzIgTFBDX2lu
dmVyc2VfcHJlZF9nYWluX1FBKCAgICAgICAgICAgICAgICAgLyogTyAgIFJldHVybnMgaW52ZXJz
ZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAgICovCi0gICAgb3B1c19p
bnQzMiAgICAgICAgICAgQV9RQVsgMiBdWyBTSUxLX01BWF9PUkRFUl9MUEMgXSwgICAvKiBJICAg
UHJlZGljdGlvbiBjb2VmZmljaWVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KK3N0YXRpYyBvcHVzX2ludDMyIExQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RQV9jKCAgICAgICAg
ICAgICAgIC8qIE8gICBSZXR1cm5zIGludmVyc2UgcHJlZGljdGlvbiBnYWluIGluIGVuZXJneSBk
b21haW4sIFEzMCAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgIEFfUUFbIFNJTEtfTUFY
X09SREVSX0xQQyBdLCAgICAgICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRzICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAg
b3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgUHJlZGljdGlvbiBvcmRl
ciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKICAgICBv
cHVzX2ludCAgIGssIG4sIG11bHQyUTsKLSAgICBvcHVzX2ludDMyIGludkdhaW5fUTMwLCByY19R
MzEsIHJjX211bHQxX1EzMCwgcmNfbXVsdDIsIHRtcF9RQTsKLSAgICBvcHVzX2ludDMyICpBb2xk
X1FBLCAqQW5ld19RQTsKKyAgICBvcHVzX2ludDMyIGludkdhaW5fUTMwLCByY19RMzEsIHJjX211
bHQxX1EzMCwgcmNfbXVsdDIsIHRtcDEsIHRtcDI7CiAKLSAgICBBbmV3X1FBID0gQV9RQVsgb3Jk
ZXIgJiAxIF07Ci0KLSAgICBpbnZHYWluX1EzMCA9IChvcHVzX2ludDMyKTEgPDwgMzA7CisgICAg
aW52R2Fpbl9RMzAgPSBTSUxLX0ZJWF9DT05TVCggMSwgMzAgKTsKICAgICBmb3IoIGsgPSBvcmRl
ciAtIDE7IGsgPiAwOyBrLS0gKSB7CiAgICAgICAgIC8qIENoZWNrIGZvciBzdGFiaWxpdHkgKi8K
LSAgICAgICAgaWYoICggQW5ld19RQVsgayBdID4gQV9MSU1JVCApIHx8ICggQW5ld19RQVsgayBd
IDwgLUFfTElNSVQgKSApIHsKKyAgICAgICAgaWYoICggQV9RQVsgayBdID4gQV9MSU1JVCApIHx8
ICggQV9RQVsgayBdIDwgLUFfTElNSVQgKSApIHsKICAgICAgICAgICAgIHJldHVybiAwOwogICAg
ICAgICB9CiAKICAgICAgICAgLyogU2V0IFJDIGVxdWFsIHRvIG5lZ2F0ZWQgQVIgY29lZiAqLwot
ICAgICAgICByY19RMzEgPSAtc2lsa19MU0hJRlQoIEFuZXdfUUFbIGsgXSwgMzEgLSBRQSApOwor
ICAgICAgICByY19RMzEgPSAtc2lsa19MU0hJRlQoIEFfUUFbIGsgXSwgMzEgLSBRQSApOwogCiAg
ICAgICAgIC8qIHJjX211bHQxX1EzMCByYW5nZTogWyAxIDogMl4zMCBdICovCi0gICAgICAgIHJj
X211bHQxX1EzMCA9ICggKG9wdXNfaW50MzIpMSA8PCAzMCApIC0gc2lsa19TTU1VTCggcmNfUTMx
LCByY19RMzEgKTsKKyAgICAgICAgcmNfbXVsdDFfUTMwID0gc2lsa19TVUIzMiggU0lMS19GSVhf
Q09OU1QoIDEsIDMwICksIHNpbGtfU01NVUwoIHJjX1EzMSwgcmNfUTMxICkgKTsKICAgICAgICAg
c2lsa19hc3NlcnQoIHJjX211bHQxX1EzMCA+ICggMSA8PCAxNSApICk7ICAgICAgICAgICAgICAg
ICAgIC8qIHJlZHVjZSBBX0xJTUlUIGlmIGZhaWxzICovCiAgICAgICAgIHNpbGtfYXNzZXJ0KCBy
Y19tdWx0MV9RMzAgPD0gKCAxIDw8IDMwICkgKTsKIAotICAgICAgICAvKiByY19tdWx0MiByYW5n
ZTogWyAyXjMwIDogc2lsa19pbnQzMl9NQVggXSAqLwotICAgICAgICBtdWx0MlEgPSAzMiAtIHNp
bGtfQ0xaMzIoIHNpbGtfYWJzKCByY19tdWx0MV9RMzAgKSApOwotICAgICAgICByY19tdWx0MiA9
IHNpbGtfSU5WRVJTRTMyX3ZhclEoIHJjX211bHQxX1EzMCwgbXVsdDJRICsgMzAgKTsKLQogICAg
ICAgICAvKiBVcGRhdGUgaW52ZXJzZSBnYWluICovCiAgICAgICAgIC8qIGludkdhaW5fUTMwIHJh
bmdlOiBbIDAgOiAyXjMwIF0gKi8KICAgICAgICAgaW52R2Fpbl9RMzAgPSBzaWxrX0xTSElGVCgg
c2lsa19TTU1VTCggaW52R2Fpbl9RMzAsIHJjX211bHQxX1EzMCApLCAyICk7CiAgICAgICAgIHNp
bGtfYXNzZXJ0KCBpbnZHYWluX1EzMCA+PSAwICAgICAgICAgICApOwogICAgICAgICBzaWxrX2Fz
c2VydCggaW52R2Fpbl9RMzAgPD0gKCAxIDw8IDMwICkgKTsKKyAgICAgICAgaWYoIGludkdhaW5f
UTMwIDwgU0lMS19GSVhfQ09OU1QoIDEuMGYgLyBNQVhfUFJFRElDVElPTl9QT1dFUl9HQUlOLCAz
MCApICkgeworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KIAotICAgICAgICAvKiBT
d2FwIHBvaW50ZXJzICovCi0gICAgICAgIEFvbGRfUUEgPSBBbmV3X1FBOwotICAgICAgICBBbmV3
X1FBID0gQV9RQVsgayAmIDEgXTsKKyAgICAgICAgLyogcmNfbXVsdDIgcmFuZ2U6IFsgMl4zMCA6
IHNpbGtfaW50MzJfTUFYIF0gKi8KKyAgICAgICAgbXVsdDJRID0gMzIgLSBzaWxrX0NMWjMyKCBz
aWxrX2FicyggcmNfbXVsdDFfUTMwICkgKTsKKyAgICAgICAgcmNfbXVsdDIgPSBzaWxrX0lOVkVS
U0UzMl92YXJRKCByY19tdWx0MV9RMzAsIG11bHQyUSArIDMwICk7CiAKICAgICAgICAgLyogVXBk
YXRlIEFSIGNvZWZmaWNpZW50ICovCi0gICAgICAgIGZvciggbiA9IDA7IG4gPCBrOyBuKysgKSB7
Ci0gICAgICAgICAgICB0bXBfUUEgPSBBb2xkX1FBWyBuIF0gLSBNVUwzMl9GUkFDX1EoIEFvbGRf
UUFbIGsgLSBuIC0gMSBdLCByY19RMzEsIDMxICk7Ci0gICAgICAgICAgICBBbmV3X1FBWyBuIF0g
PSBNVUwzMl9GUkFDX1EoIHRtcF9RQSwgcmNfbXVsdDIgLCBtdWx0MlEgKTsKKyAgICAgICAgZm9y
KCBuID0gMDsgbiA8IChrICsgMSkgPj4gMTsgbisrICkgeworICAgICAgICAgICAgb3B1c19pbnQ2
NCB0bXA2NDsKKyAgICAgICAgICAgIHRtcDEgPSBBX1FBWyBuIF07CisgICAgICAgICAgICB0bXAy
ID0gQV9RQVsgayAtIG4gLSAxIF07CisgICAgICAgICAgICB0bXA2NCA9IHNpbGtfUlNISUZUX1JP
VU5ENjQoIHNpbGtfU01VTEwoIHNpbGtfU1VCX1NBVDMyKHRtcDEsCisgICAgICAgICAgICAgICAg
ICBNVUwzMl9GUkFDX1EoIHRtcDIsIHJjX1EzMSwgMzEgKSApLCByY19tdWx0MiApLCBtdWx0MlEp
OworICAgICAgICAgICAgaWYoIHRtcDY0ID4gc2lsa19pbnQzMl9NQVggfHwgdG1wNjQgPCBzaWxr
X2ludDMyX01JTiApIHsKKyAgICAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgQV9RQVsgbiBdID0gKCBvcHVzX2ludDMyICl0bXA2NDsKKyAgICAgICAgICAg
IHRtcDY0ID0gc2lsa19SU0hJRlRfUk9VTkQ2NCggc2lsa19TTVVMTCggc2lsa19TVUJfU0FUMzIo
dG1wMiwKKyAgICAgICAgICAgICAgICAgIE1VTDMyX0ZSQUNfUSggdG1wMSwgcmNfUTMxLCAzMSAp
ICksIHJjX211bHQyKSwgbXVsdDJRKTsKKyAgICAgICAgICAgIGlmKCB0bXA2NCA+IHNpbGtfaW50
MzJfTUFYIHx8IHRtcDY0IDwgc2lsa19pbnQzMl9NSU4gKSB7CisgICAgICAgICAgICAgICByZXR1
cm4gMDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIEFfUUFbIGsgLSBuIC0gMSBdID0gKCBv
cHVzX2ludDMyICl0bXA2NDsKICAgICAgICAgfQogICAgIH0KIAogICAgIC8qIENoZWNrIGZvciBz
dGFiaWxpdHkgKi8KLSAgICBpZiggKCBBbmV3X1FBWyAwIF0gPiBBX0xJTUlUICkgfHwgKCBBbmV3
X1FBWyAwIF0gPCAtQV9MSU1JVCApICkgeworICAgIGlmKCAoIEFfUUFbIGsgXSA+IEFfTElNSVQg
KSB8fCAoIEFfUUFbIGsgXSA8IC1BX0xJTUlUICkgKSB7CiAgICAgICAgIHJldHVybiAwOwogICAg
IH0KIAogICAgIC8qIFNldCBSQyBlcXVhbCB0byBuZWdhdGVkIEFSIGNvZWYgKi8KLSAgICByY19R
MzEgPSAtc2lsa19MU0hJRlQoIEFuZXdfUUFbIDAgXSwgMzEgLSBRQSApOworICAgIHJjX1EzMSA9
IC1zaWxrX0xTSElGVCggQV9RQVsgMCBdLCAzMSAtIFFBICk7CiAKICAgICAvKiBSYW5nZTogWyAx
IDogMl4zMCBdICovCi0gICAgcmNfbXVsdDFfUTMwID0gKCAob3B1c19pbnQzMikxIDw8IDMwICkg
LSBzaWxrX1NNTVVMKCByY19RMzEsIHJjX1EzMSApOworICAgIHJjX211bHQxX1EzMCA9IHNpbGtf
U1VCMzIoIFNJTEtfRklYX0NPTlNUKCAxLCAzMCApLCBzaWxrX1NNTVVMKCByY19RMzEsIHJjX1Ez
MSApICk7CiAKICAgICAvKiBVcGRhdGUgaW52ZXJzZSBnYWluICovCiAgICAgLyogUmFuZ2U6IFsg
MCA6IDJeMzAgXSAqLwogICAgIGludkdhaW5fUTMwID0gc2lsa19MU0hJRlQoIHNpbGtfU01NVUwo
IGludkdhaW5fUTMwLCByY19tdWx0MV9RMzAgKSwgMiApOwotICAgIHNpbGtfYXNzZXJ0KCBpbnZH
YWluX1EzMCA+PSAwICAgICApOwotICAgIHNpbGtfYXNzZXJ0KCBpbnZHYWluX1EzMCA8PSAxPDwz
MCApOworICAgIHNpbGtfYXNzZXJ0KCBpbnZHYWluX1EzMCA+PSAwICAgICAgICAgICApOworICAg
IHNpbGtfYXNzZXJ0KCBpbnZHYWluX1EzMCA8PSAoIDEgPDwgMzAgKSApOworICAgIGlmKCBpbnZH
YWluX1EzMCA8IFNJTEtfRklYX0NPTlNUKCAxLjBmIC8gTUFYX1BSRURJQ1RJT05fUE9XRVJfR0FJ
TiwgMzAgKSApIHsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQogCiAgICAgcmV0dXJuIGludkdh
aW5fUTMwOwogfQogCiAvKiBGb3IgaW5wdXQgaW4gUTEyIGRvbWFpbiAqLwotb3B1c19pbnQzMiBz
aWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbiggICAgICAgICAgICAgIC8qIE8gICBSZXR1cm5zIGlu
dmVyc2UgcHJlZGljdGlvbiBnYWluIGluIGVuZXJneSBkb21haW4sIFEzMCAgICAgICAgKi8KK29w
dXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fYyggICAgICAgICAgICAvKiBPICAg
UmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAg
ICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICpBX1ExMiwgICAgICAgICAg
ICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRzLCBRMTIgW29yZGVyXSAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBvcmRlciAg
ICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIG9yZGVyICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKICAgICBvcHVzX2ludCAgIGs7Ci0gICAg
b3B1c19pbnQzMiBBdG1wX1FBWyAyIF1bIFNJTEtfTUFYX09SREVSX0xQQyBdOwotICAgIG9wdXNf
aW50MzIgKkFuZXdfUUE7CisgICAgb3B1c19pbnQzMiBBdG1wX1FBWyBTSUxLX01BWF9PUkRFUl9M
UEMgXTsKICAgICBvcHVzX2ludDMyIERDX3Jlc3AgPSAwOwogCi0gICAgQW5ld19RQSA9IEF0bXBf
UUFbIG9yZGVyICYgMSBdOwotCiAgICAgLyogSW5jcmVhc2UgUSBkb21haW4gb2YgdGhlIEFSIGNv
ZWZmaWNpZW50cyAqLwogICAgIGZvciggayA9IDA7IGsgPCBvcmRlcjsgaysrICkgewogICAgICAg
ICBEQ19yZXNwICs9IChvcHVzX2ludDMyKUFfUTEyWyBrIF07Ci0gICAgICAgIEFuZXdfUUFbIGsg
XSA9IHNpbGtfTFNISUZUMzIoIChvcHVzX2ludDMyKUFfUTEyWyBrIF0sIFFBIC0gMTIgKTsKKyAg
ICAgICAgQXRtcF9RQVsgayBdID0gc2lsa19MU0hJRlQzMiggKG9wdXNfaW50MzIpQV9RMTJbIGsg
XSwgUUEgLSAxMiApOwogICAgIH0KICAgICAvKiBJZiB0aGUgREMgaXMgdW5zdGFibGUsIHdlIGRv
bid0IGV2ZW4gbmVlZCB0byBkbyB0aGUgZnVsbCBjYWxjdWxhdGlvbnMgKi8KICAgICBpZiggRENf
cmVzcCA+PSA0MDk2ICkgewogICAgICAgICByZXR1cm4gMDsKICAgICB9Ci0gICAgcmV0dXJuIExQ
Q19pbnZlcnNlX3ByZWRfZ2Fpbl9RQSggQXRtcF9RQSwgb3JkZXIgKTsKKyAgICByZXR1cm4gTFBD
X2ludmVyc2VfcHJlZF9nYWluX1FBX2MoIEF0bXBfUUEsIG9yZGVyICk7CiB9Ci0KLSNpZmRlZiBG
SVhFRF9QT0lOVAotCi0vKiBGb3IgaW5wdXQgaW4gUTI0IGRvbWFpbiAqLwotb3B1c19pbnQzMiBz
aWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBp
bnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgICAgKi8KLSAg
ICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKkFfUTI0LCAgICAgICAgICAgICAvKiBJICAg
IFByZWRpY3Rpb24gY29lZmZpY2llbnRzIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAg
ICAgLyogSSAgICBQcmVkaWN0aW9uIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50ICAgazsKLSAgICBvcHVzX2ludDMy
IEF0bXBfUUFbIDIgXVsgU0lMS19NQVhfT1JERVJfTFBDIF07Ci0gICAgb3B1c19pbnQzMiAqQW5l
d19RQTsKLQotICAgIEFuZXdfUUEgPSBBdG1wX1FBWyBvcmRlciAmIDEgXTsKLQotICAgIC8qIElu
Y3JlYXNlIFEgZG9tYWluIG9mIHRoZSBBUiBjb2VmZmljaWVudHMgKi8KLSAgICBmb3IoIGsgPSAw
OyBrIDwgb3JkZXI7IGsrKyApIHsKLSAgICAgICAgQW5ld19RQVsgayBdID0gc2lsa19SU0hJRlQz
MiggQV9RMjRbIGsgXSwgMjQgLSBRQSApOwotICAgIH0KLQotICAgIHJldHVybiBMUENfaW52ZXJz
ZV9wcmVkX2dhaW5fUUEoIEF0bXBfUUEsIG9yZGVyICk7Ci19Ci0jZW5kaWYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9MUF92YXJpYWJsZV9jdXRvZmYuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUF92YXJpYWJsZV9jdXRvZmYuYwppbmRl
eCBmNjM5ZTFmODk5YTljMjNlN2U1NDIwNTUyODdjOTNlOTlmM2I4Nzc0Li43OTExMmFkMzU0YTE1
N2FlNjhiZWRhNGQzNTVmMGYxMTZmMmI2ZjhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBfdmFyaWFibGVf
Y3V0b2ZmLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL0xQX3ZhcmlhYmxlX2N1dG9mZi5jCkBAIC0xMzAsNiArMTMwLDYg
QEAgdm9pZCBzaWxrX0xQX3ZhcmlhYmxlX2N1dG9mZigKIAogICAgICAgICAvKiBBUk1BIGxvdy1w
YXNzIGZpbHRlcmluZyAqLwogICAgICAgICBzaWxrX2Fzc2VydCggVFJBTlNJVElPTl9OQiA9PSAz
ICYmIFRSQU5TSVRJT05fTkEgPT0gMiApOwotICAgICAgICBzaWxrX2JpcXVhZF9hbHQoIGZyYW1l
LCBCX1EyOCwgQV9RMjgsIHBzTFAtPkluX0xQX1N0YXRlLCBmcmFtZSwgZnJhbWVfbGVuZ3RoLCAx
KTsKKyAgICAgICAgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTEoIGZyYW1lLCBCX1EyOCwgQV9RMjgs
IHBzTFAtPkluX0xQX1N0YXRlLCBmcmFtZSwgZnJhbWVfbGVuZ3RoKTsKICAgICB9CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvTWFjcm9Db3VudC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL01hY3JvQ291bnQuaAppbmRleCA4MzQ4MTdk
MDU4YjllOWU0YjhlN2MyNDRhOWNlNzM1Mjc4Y2YzNTQ0Li43ODEwMGZmZWRlYjI5MDYxODA5MzI3
MzA5NTk5ODYzYTRkYzRhZjQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTWFjcm9Db3VudC5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9NYWNyb0NvdW50LmgKQEAgLTMxOSwxNCArMzE5LDYgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9w
dXNfaW50MzIgc2lsa19BRERfUE9TX1NBVDMyKG9wdXNfaW50NjQgYSwgb3B1c19pbnQ2NCBiKXsK
ICAgICByZXR1cm4odG1wKTsKIH0KIAotI3VuZGVmIHNpbGtfQUREX1BPU19TQVQ2NAotc3RhdGlj
IE9QVVNfSU5MSU5FIG9wdXNfaW50NjQgc2lsa19BRERfUE9TX1NBVDY0KG9wdXNfaW50NjQgYSwg
b3B1c19pbnQ2NCBiKXsKLSAgICBvcHVzX2ludDY0IHRtcDsKLSAgICBvcHNfY291bnQgKz0gMTsK
LSAgICB0bXAgPSAoKCgoYSkrKGIpKSAmIDB4ODAwMDAwMDAwMDAwMDAwMExMKSA/IHNpbGtfaW50
NjRfTUFYIDogKChhKSsoYikpKTsKLSAgICByZXR1cm4odG1wKTsKLX0KLQogI3VuZGVmICAgIHNp
bGtfTFNISUZUOAogc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50OCBzaWxrX0xTSElGVDgob3B1
c19pbnQ4IGEsIG9wdXNfaW50MzIgc2hpZnQpewogICAgIG9wdXNfaW50OCByZXQ7CkBAIC02OTks
NyArNjkxLDcgQEAgcmV0dXJuKHJldCk7CiAKIAogI3VuZGVmIHNpbGtfTElNSVRfMzIKLXN0YXRp
YyBPUFVTX0lOTElORSBvcHVzX2ludCBzaWxrX0xJTUlUXzMyKG9wdXNfaW50MzIgYSwgb3B1c19p
bnQzMiBsaW1pdDEsIG9wdXNfaW50MzIgbGltaXQyKQorc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNf
aW50MzIgc2lsa19MSU1JVF8zMihvcHVzX2ludDMyIGEsIG9wdXNfaW50MzIgbGltaXQxLCBvcHVz
X2ludDMyIGxpbWl0MikKIHsKICAgICBvcHVzX2ludDMyIHJldDsKICAgICBvcHNfY291bnQgKz0g
NjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9NYWNyb0RlYnVnLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTWFjcm9EZWJ1Zy5oCmluZGV4
IDM1YWVkYzVjNWZhNjQ2NzIyZTY4NzllZTUxYzc4ZjMyNDQ5MWVkODQuLjhkZDRjZTJlZTI3NWE2
YTY0ZjRiMWVkZTUyNmZhOGI0MjhmNjEyMmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9NYWNyb0RlYnVnLmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL01hY3JvRGVidWcuaApAQCAtNTM5LDggKzUzOSw3IEBAIHN0YXRpYyBPUFVTX0lO
TElORSBvcHVzX2ludDMyIHNpbGtfRElWMzJfMTZfKG9wdXNfaW50MzIgYTMyLCBvcHVzX2ludDMy
IGIzMiwgY2hhCiAgICBubyBjaGVja2luZyBuZWVkZWQgZm9yIHNpbGtfUE9TX1NBVDMyCiAgICBu
byBjaGVja2luZyBuZWVkZWQgZm9yIHNpbGtfQUREX1BPU19TQVQ4CiAgICBubyBjaGVja2luZyBu
ZWVkZWQgZm9yIHNpbGtfQUREX1BPU19TQVQxNgotICAgbm8gY2hlY2tpbmcgbmVlZGVkIGZvciBz
aWxrX0FERF9QT1NfU0FUMzIKLSAgIG5vIGNoZWNraW5nIG5lZWRlZCBmb3Igc2lsa19BRERfUE9T
X1NBVDY0ICovCisgICBubyBjaGVja2luZyBuZWVkZWQgZm9yIHNpbGtfQUREX1BPU19TQVQzMiAq
LwogCiAjdW5kZWYgc2lsa19MU0hJRlQ4CiAjZGVmaW5lIHNpbGtfTFNISUZUOChhLGIpIHNpbGtf
TFNISUZUOF8oKGEpLCAoYiksIF9fRklMRV9fLCBfX0xJTkVfXykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9O
TFNGMkEuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9OTFNGMkEuYwppbmRleCBiMWM1NTllYTY4MjEzZTA2ZDM5ZGU3OWM5Nzdl
ODZmNTczYmQ1MWM4Li4xMTZiNDY1YjFkYjhjNjc4MTc3YWRlZGJjNmQyNWZmOWVkMzg3NTEwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvTkxTRjJBLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0YyQS5jCkBAIC02Niw3ICs2Niw4
IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTkxTRjJBX2ZpbmRfcG9seSgKIHZvaWQg
c2lsa19OTFNGMkEoCiAgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICphX1ExMiwgICAg
ICAgICAgICAgLyogTyAgICBtb25pYyB3aGl0ZW5pbmcgZmlsdGVyIGNvZWZmaWNpZW50cyBpbiBR
MTIsICBbIGQgXSAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAq
TkxTRiwgICAgICAgICAgICAgIC8qIEkgICAgbm9ybWFsaXplZCBsaW5lIHNwZWN0cmFsIGZyZXF1
ZW5jaWVzIGluIFExNSwgWyBkIF0gICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAg
ICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAvKiBJICAgIGZpbHRlciBvcmRlciAoc2hvdWxk
IGJlIGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgIGQsICAgICAgICAgICAgICAgICAgLyogSSAgICBmaWx0ZXIgb3Jk
ZXIgKHNob3VsZCBiZSBldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IGludCAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgIC8qIEkgICAg
UnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICkKIHsKICAgICAvKiBUaGlzIG9yZGVyaW5nIHdhcyBmb3VuZCB0byBtYXhpbWl6ZSBx
dWFsaXR5LiBJdCBpbXByb3ZlcyBudW1lcmljYWwgYWNjdXJhY3kgb2YKQEAgLTgzLDE1ICs4NCwx
NCBAQCB2b2lkIHNpbGtfTkxTRjJBKAogICAgIG9wdXNfaW50MzIgUFsgU0lMS19NQVhfT1JERVJf
TFBDIC8gMiArIDEgXSwgUVsgU0lMS19NQVhfT1JERVJfTFBDIC8gMiArIDEgXTsKICAgICBvcHVz
X2ludDMyIFB0bXAsIFF0bXAsIGZfaW50LCBmX2ZyYWMsIGNvc192YWwsIGRlbHRhOwogICAgIG9w
dXNfaW50MzIgYTMyX1FBMVsgU0lMS19NQVhfT1JERVJfTFBDIF07Ci0gICAgb3B1c19pbnQzMiBt
YXhhYnMsIGFic3ZhbCwgaWR4PTAsIHNjX1ExNjsKIAogICAgIHNpbGtfYXNzZXJ0KCBMU0ZfQ09T
X1RBQl9TWl9GSVggPT0gMTI4ICk7Ci0gICAgc2lsa19hc3NlcnQoIGQ9PTEwfHxkPT0xNiApOwor
ICAgIHNpbGtfYXNzZXJ0KCBkPT0xMCB8fCBkPT0xNiApOwogCiAgICAgLyogY29udmVydCBMU0Zz
IHRvIDIqY29zKExTRiksIHVzaW5nIHBpZWNld2lzZSBsaW5lYXIgY3VydmUgZnJvbSB0YWJsZSAq
LwogICAgIG9yZGVyaW5nID0gZCA9PSAxNiA/IG9yZGVyaW5nMTYgOiBvcmRlcmluZzEwOwogICAg
IGZvciggayA9IDA7IGsgPCBkOyBrKysgKSB7Ci0gICAgICAgIHNpbGtfYXNzZXJ0KE5MU0Zba10g
Pj0gMCApOworICAgICAgICBzaWxrX2Fzc2VydCggTkxTRltrXSA+PSAwICk7CiAKICAgICAgICAg
LyogZl9pbnQgb24gYSBzY2FsZSAwLTEyNyAocm91bmRlZCBkb3duKSAqLwogICAgICAgICBmX2lu
dCA9IHNpbGtfUlNISUZUKCBOTFNGW2tdLCAxNSAtIDcgKTsKQEAgLTEyNiw1MiArMTI2LDE1IEBA
IHZvaWQgc2lsa19OTFNGMkEoCiAgICAgICAgIGEzMl9RQTFbIGQtay0xIF0gPSAgUXRtcCAtIFB0
bXA7ICAgICAgICAvKiBRQSsxICovCiAgICAgfQogCi0gICAgLyogTGltaXQgdGhlIG1heGltdW0g
YWJzb2x1dGUgdmFsdWUgb2YgdGhlIHByZWRpY3Rpb24gY29lZmZpY2llbnRzLCBzbyB0aGF0IHRo
ZXknbGwgZml0IGluIGludDE2ICovCi0gICAgZm9yKCBpID0gMDsgaSA8IDEwOyBpKysgKSB7Ci0g
ICAgICAgIC8qIEZpbmQgbWF4aW11bSBhYnNvbHV0ZSB2YWx1ZSBhbmQgaXRzIGluZGV4ICovCi0g
ICAgICAgIG1heGFicyA9IDA7Ci0gICAgICAgIGZvciggayA9IDA7IGsgPCBkOyBrKysgKSB7Ci0g
ICAgICAgICAgICBhYnN2YWwgPSBzaWxrX2FicyggYTMyX1FBMVtrXSApOwotICAgICAgICAgICAg
aWYoIGFic3ZhbCA+IG1heGFicyApIHsKLSAgICAgICAgICAgICAgICBtYXhhYnMgPSBhYnN2YWw7
Ci0gICAgICAgICAgICAgICAgaWR4ICAgID0gazsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQot
ICAgICAgICBtYXhhYnMgPSBzaWxrX1JTSElGVF9ST1VORCggbWF4YWJzLCBRQSArIDEgLSAxMiAp
OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFFBKzEgLT4gUTEy
ICovCi0KLSAgICAgICAgaWYoIG1heGFicyA+IHNpbGtfaW50MTZfTUFYICkgewotICAgICAgICAg
ICAgLyogUmVkdWNlIG1hZ25pdHVkZSBvZiBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cyAqLwotICAg
ICAgICAgICAgbWF4YWJzID0gc2lsa19taW4oIG1heGFicywgMTYzODM4ICk7ICAvKiAoIHNpbGtf
aW50MzJfTUFYID4+IDE0ICkgKyBzaWxrX2ludDE2X01BWCA9IDE2MzgzOCAqLwotICAgICAgICAg
ICAgc2NfUTE2ID0gU0lMS19GSVhfQ09OU1QoIDAuOTk5LCAxNiApIC0gc2lsa19ESVYzMiggc2ls
a19MU0hJRlQoIG1heGFicyAtIHNpbGtfaW50MTZfTUFYLCAxNCApLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHNpbGtfUlNISUZUMzIoIHNpbGtfTVVMKCBtYXhhYnMs
IGlkeCArIDEpLCAyICkgKTsKLSAgICAgICAgICAgIHNpbGtfYndleHBhbmRlcl8zMiggYTMyX1FB
MSwgZCwgc2NfUTE2ICk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBicmVhazsKLSAg
ICAgICAgfQotICAgIH0KKyAgICAvKiBDb252ZXJ0IGludDMyIGNvZWZmaWNpZW50cyB0byBRMTIg
aW50MTYgY29lZnMgKi8KKyAgICBzaWxrX0xQQ19maXQoIGFfUTEyLCBhMzJfUUExLCAxMiwgUUEg
KyAxLCBkICk7CiAKLSAgICBpZiggaSA9PSAxMCApIHsKLSAgICAgICAgLyogUmVhY2hlZCB0aGUg
bGFzdCBpdGVyYXRpb24sIGNsaXAgdGhlIGNvZWZmaWNpZW50cyAqLworICAgIGZvciggaSA9IDA7
IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKCBhX1ExMiwgZCwgYXJjaCApID09IDAgJiYgaSA8
IE1BWF9MUENfU1RBQklMSVpFX0lURVJBVElPTlM7IGkrKyApIHsKKyAgICAgICAgLyogUHJlZGlj
dGlvbiBjb2VmZmljaWVudHMgYXJlICh0b28gY2xvc2UgdG8pIHVuc3RhYmxlOyBhcHBseSBiYW5k
d2lkdGggZXhwYW5zaW9uICAgKi8KKyAgICAgICAgLyogb24gdGhlIHVuc2NhbGVkIGNvZWZmaWNp
ZW50cywgY29udmVydCB0byBRMTIgYW5kIG1lYXN1cmUgYWdhaW4gICAgICAgICAgICAgICAgICAg
Ki8KKyAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBhMzJfUUExLCBkLCA2NTUzNiAtIHNpbGtf
TFNISUZUKCAyLCBpICkgKTsKICAgICAgICAgZm9yKCBrID0gMDsgayA8IGQ7IGsrKyApIHsKLSAg
ICAgICAgICAgIGFfUTEyWyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElG
VF9ST1VORCggYTMyX1FBMVsgayBdLCBRQSArIDEgLSAxMiApICk7ICAvKiBRQSsxIC0+IFExMiAq
LwotICAgICAgICAgICAgYTMyX1FBMVsgayBdID0gc2lsa19MU0hJRlQoIChvcHVzX2ludDMyKWFf
UTEyWyBrIF0sIFFBICsgMSAtIDEyICk7Ci0gICAgICAgIH0KLSAgICB9IGVsc2UgewotICAgICAg
ICBmb3IoIGsgPSAwOyBrIDwgZDsgaysrICkgewotICAgICAgICAgICAgYV9RMTJbIGsgXSA9IChv
cHVzX2ludDE2KXNpbGtfUlNISUZUX1JPVU5EKCBhMzJfUUExWyBrIF0sIFFBICsgMSAtIDEyICk7
ICAgICAgICAgICAgICAgIC8qIFFBKzEgLT4gUTEyICovCi0gICAgICAgIH0KLSAgICB9Ci0KLSAg
ICBmb3IoIGkgPSAwOyBpIDwgTUFYX0xQQ19TVEFCSUxJWkVfSVRFUkFUSU9OUzsgaSsrICkgewot
ICAgICAgICBpZiggc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4oIGFfUTEyLCBkICkgPCBTSUxL
X0ZJWF9DT05TVCggMS4wIC8gTUFYX1BSRURJQ1RJT05fUE9XRVJfR0FJTiwgMzAgKSApIHsKLSAg
ICAgICAgICAgIC8qIFByZWRpY3Rpb24gY29lZmZpY2llbnRzIGFyZSAodG9vIGNsb3NlIHRvKSB1
bnN0YWJsZTsgYXBwbHkgYmFuZHdpZHRoIGV4cGFuc2lvbiAgICovCi0gICAgICAgICAgICAvKiBv
biB0aGUgdW5zY2FsZWQgY29lZmZpY2llbnRzLCBjb252ZXJ0IHRvIFExMiBhbmQgbWVhc3VyZSBh
Z2FpbiAgICAgICAgICAgICAgICAgICAqLwotICAgICAgICAgICAgc2lsa19id2V4cGFuZGVyXzMy
KCBhMzJfUUExLCBkLCA2NTUzNiAtIHNpbGtfTFNISUZUKCAyLCBpICkgKTsKLSAgICAgICAgICAg
IGZvciggayA9IDA7IGsgPCBkOyBrKysgKSB7Ci0gICAgICAgICAgICAgICAgYV9RMTJbIGsgXSA9
IChvcHVzX2ludDE2KXNpbGtfUlNISUZUX1JPVU5EKCBhMzJfUUExWyBrIF0sIFFBICsgMSAtIDEy
ICk7ICAgICAgICAgICAgLyogUUErMSAtPiBRMTIgKi8KLSAgICAgICAgICAgIH0KLSAgICAgICAg
fSBlbHNlIHsKLSAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgYV9RMTJbIGsgXSA9IChv
cHVzX2ludDE2KXNpbGtfUlNISUZUX1JPVU5EKCBhMzJfUUExWyBrIF0sIFFBICsgMSAtIDEyICk7
ICAgICAgICAgICAgLyogUUErMSAtPiBRMTIgKi8KICAgICAgICAgfQogICAgIH0KIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9OTFNGX1ZRLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9WUS5jCmluZGV4IDY5YjZlMjJlMTg5NjVh
OTgwNGI1NGFlYzFiOWZmN2NiODI0NTM2NTIuLjQ1MmYzZGNiN2RkZDhhNzg4YTAwZjNjMjdjMTM5
ZTk1ZWEyMGJiZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX1ZRLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfVlEu
YwpAQCAtMzMsMzYgKzMzLDQ0IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCiAvKiBD
b21wdXRlIHF1YW50aXphdGlvbiBlcnJvcnMgZm9yIGFuIExQQ19vcmRlciBlbGVtZW50IGlucHV0
IHZlY3RvciBmb3IgYSBWUSBjb2RlYm9vayAqLwogdm9pZCBzaWxrX05MU0ZfVlEoCi0gICAgb3B1
c19pbnQzMiAgICAgICAgICAgICAgICAgIGVycl9RMjZbXSwgICAgICAgICAgICAgICAgICAgICAg
LyogTyAgICBRdWFudGl6YXRpb24gZXJyb3JzIFtLXSAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIGVycl9RMjRbXSwgICAgICAgICAgICAgICAg
ICAgICAgLyogTyAgICBRdWFudGl6YXRpb24gZXJyb3JzIFtLXSAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGluX1ExNVtdLCAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBJbnB1dCB2ZWN0b3JzIHRvIGJlIHF1YW50aXplZCBbTFBDX29y
ZGVyXSAgICovCiAgICAgY29uc3Qgb3B1c191aW50OCAgICAgICAgICAgIHBDQl9ROFtdLCAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBDb2RlYm9vayB2ZWN0b3JzIFtLKkxQQ19vcmRlcl0g
ICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIHBXZ2h0X1E5
W10sICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb2RlYm9vayB3ZWlnaHRzIFtLKkxQQ19v
cmRlcl0gICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIEss
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1iZXIgb2YgY29kZWJvb2sg
dmVjdG9ycyAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICAgIExQQ19vcmRlciAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1iZXIgb2YgTFBD
cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7Ci0gICAgb3B1c19pbnQgICAg
ICAgIGksIG07Ci0gICAgb3B1c19pbnQzMiAgICAgIGRpZmZfUTE1LCBzdW1fZXJyb3JfUTMwLCBz
dW1fZXJyb3JfUTI2OworICAgIG9wdXNfaW50ICAgICAgICAgaSwgbTsKKyAgICBvcHVzX2ludDMy
ICAgICAgIGRpZmZfUTE1LCBkaWZmd19RMjQsIHN1bV9lcnJvcl9RMjQsIHByZWRfUTI0OworICAg
IGNvbnN0IG9wdXNfaW50MTYgKndfUTlfcHRyOworICAgIGNvbnN0IG9wdXNfdWludDggKmNiX1E4
X3B0cjsKIAotICAgIHNpbGtfYXNzZXJ0KCBMUENfb3JkZXIgPD0gMTYgKTsKICAgICBzaWxrX2Fz
c2VydCggKCBMUENfb3JkZXIgJiAxICkgPT0gMCApOwogCiAgICAgLyogTG9vcCBvdmVyIGNvZGVi
b29rICovCisgICAgY2JfUThfcHRyID0gcENCX1E4OworICAgIHdfUTlfcHRyID0gcFdnaHRfUTk7
CiAgICAgZm9yKCBpID0gMDsgaSA8IEs7IGkrKyApIHsKLSAgICAgICAgc3VtX2Vycm9yX1EyNiA9
IDA7Ci0gICAgICAgIGZvciggbSA9IDA7IG0gPCBMUENfb3JkZXI7IG0gKz0gMiApIHsKLSAgICAg
ICAgICAgIC8qIENvbXB1dGUgd2VpZ2h0ZWQgc3F1YXJlZCBxdWFudGl6YXRpb24gZXJyb3IgZm9y
IGluZGV4IG0gKi8KLSAgICAgICAgICAgIGRpZmZfUTE1ID0gc2lsa19TVUJfTFNISUZUMzIoIGlu
X1ExNVsgbSBdLCAob3B1c19pbnQzMikqcENCX1E4KyssIDcgKTsgLyogcmFuZ2U6IFsgLTMyNzY3
IDogMzI3NjcgXSovCi0gICAgICAgICAgICBzdW1fZXJyb3JfUTMwID0gc2lsa19TTVVMQkIoIGRp
ZmZfUTE1LCBkaWZmX1ExNSApOworICAgICAgICBzdW1fZXJyb3JfUTI0ID0gMDsKKyAgICAgICAg
cHJlZF9RMjQgPSAwOworICAgICAgICBmb3IoIG0gPSBMUENfb3JkZXItMjsgbSA+PSAwOyBtIC09
IDIgKSB7CisgICAgICAgICAgICAvKiBDb21wdXRlIHdlaWdodGVkIGFic29sdXRlIHByZWRpY3Rp
dmUgcXVhbnRpemF0aW9uIGVycm9yIGZvciBpbmRleCBtICsgMSAqLworICAgICAgICAgICAgZGlm
Zl9RMTUgPSBzaWxrX1NVQl9MU0hJRlQzMiggaW5fUTE1WyBtICsgMSBdLCAob3B1c19pbnQzMilj
Yl9ROF9wdHJbIG0gKyAxIF0sIDcgKTsgLyogcmFuZ2U6IFsgLTMyNzY3IDogMzI3NjcgXSovCisg
ICAgICAgICAgICBkaWZmd19RMjQgPSBzaWxrX1NNVUxCQiggZGlmZl9RMTUsIHdfUTlfcHRyWyBt
ICsgMSBdICk7CisgICAgICAgICAgICBzdW1fZXJyb3JfUTI0ID0gc2lsa19BREQzMiggc3VtX2Vy
cm9yX1EyNCwgc2lsa19hYnMoIHNpbGtfU1VCX1JTSElGVDMyKCBkaWZmd19RMjQsIHByZWRfUTI0
LCAxICkgKSApOworICAgICAgICAgICAgcHJlZF9RMjQgPSBkaWZmd19RMjQ7CiAKLSAgICAgICAg
ICAgIC8qIENvbXB1dGUgd2VpZ2h0ZWQgc3F1YXJlZCBxdWFudGl6YXRpb24gZXJyb3IgZm9yIGlu
ZGV4IG0gKyAxICovCi0gICAgICAgICAgICBkaWZmX1ExNSA9IHNpbGtfU1VCX0xTSElGVDMyKCBp
bl9RMTVbbSArIDFdLCAob3B1c19pbnQzMikqcENCX1E4KyssIDcgKTsgLyogcmFuZ2U6IFsgLTMy
NzY3IDogMzI3NjcgXSovCi0gICAgICAgICAgICBzdW1fZXJyb3JfUTMwID0gc2lsa19TTUxBQkIo
IHN1bV9lcnJvcl9RMzAsIGRpZmZfUTE1LCBkaWZmX1ExNSApOworICAgICAgICAgICAgLyogQ29t
cHV0ZSB3ZWlnaHRlZCBhYnNvbHV0ZSBwcmVkaWN0aXZlIHF1YW50aXphdGlvbiBlcnJvciBmb3Ig
aW5kZXggbSAqLworICAgICAgICAgICAgZGlmZl9RMTUgPSBzaWxrX1NVQl9MU0hJRlQzMiggaW5f
UTE1WyBtIF0sIChvcHVzX2ludDMyKWNiX1E4X3B0clsgbSBdLCA3ICk7IC8qIHJhbmdlOiBbIC0z
Mjc2NyA6IDMyNzY3IF0qLworICAgICAgICAgICAgZGlmZndfUTI0ID0gc2lsa19TTVVMQkIoIGRp
ZmZfUTE1LCB3X1E5X3B0clsgbSBdICk7CisgICAgICAgICAgICBzdW1fZXJyb3JfUTI0ID0gc2ls
a19BREQzMiggc3VtX2Vycm9yX1EyNCwgc2lsa19hYnMoIHNpbGtfU1VCX1JTSElGVDMyKCBkaWZm
d19RMjQsIHByZWRfUTI0LCAxICkgKSApOworICAgICAgICAgICAgcHJlZF9RMjQgPSBkaWZmd19R
MjQ7CiAKLSAgICAgICAgICAgIHN1bV9lcnJvcl9RMjYgPSBzaWxrX0FERF9SU0hJRlQzMiggc3Vt
X2Vycm9yX1EyNiwgc3VtX2Vycm9yX1EzMCwgNCApOwotCi0gICAgICAgICAgICBzaWxrX2Fzc2Vy
dCggc3VtX2Vycm9yX1EyNiA+PSAwICk7Ci0gICAgICAgICAgICBzaWxrX2Fzc2VydCggc3VtX2Vy
cm9yX1EzMCA+PSAwICk7CisgICAgICAgICAgICBzaWxrX2Fzc2VydCggc3VtX2Vycm9yX1EyNCA+
PSAwICk7CiAgICAgICAgIH0KLSAgICAgICAgZXJyX1EyNlsgaSBdID0gc3VtX2Vycm9yX1EyNjsK
KyAgICAgICAgZXJyX1EyNFsgaSBdID0gc3VtX2Vycm9yX1EyNDsKKyAgICAgICAgY2JfUThfcHRy
ICs9IExQQ19vcmRlcjsKKyAgICAgICAgd19ROV9wdHIgKz0gTFBDX29yZGVyOwogICAgIH0KIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9OTFNGX2RlY29kZS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZGVjb2RlLmMKaW5kZXgg
OWY3MTUwNjBiOGVmYjJjM2M2ZDg0YzEwZWRjNjgwMzZmMDI1M2Y0Ni4uZWViMGJhOGM5MmM4YjYw
ZjdkYzYxOTUzZmQ4MDU0ZTg3NGJhMDdkMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZGVjb2RlLmMK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL05MU0ZfZGVjb2RlLmMKQEAgLTMyLDcgKzMyLDcgQEAgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCiAjaW5jbHVkZSAibWFpbi5oIgogCiAvKiBQcmVkaWN0aXZlIGRlcXVhbnRp
emVyIGZvciBOTFNGIHJlc2lkdWFscyAqLwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19O
TFNGX3Jlc2lkdWFsX2RlcXVhbnQoICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zIFJEIHZh
bHVlIGluIFEzMCAgICAgICAgICAgICAgICAgICAgICovCitzdGF0aWMgT1BVU19JTkxJTkUgdm9p
ZCBzaWxrX05MU0ZfcmVzaWR1YWxfZGVxdWFudCggICAgICAgICAgLyogTyAgICBSZXR1cm5zIFJE
IHZhbHVlIGluIFEzMCAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgb3B1c19pbnQx
NiAgICAgICAgIHhfUTEwW10sICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBPdXRwdXQg
WyBvcmRlciBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19p
bnQ4ICAgICAgICAgIGluZGljZXNbXSwgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBRdWFu
dGl6YXRpb24gaW5kaWNlcyBbIG9yZGVyIF0gICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1
c191aW50OCAgICAgICAgIHByZWRfY29lZl9ROFtdLCAgICAgICAgICAgICAgICAgLyogSSAgICBC
YWNrd2FyZCBwcmVkaWN0b3IgY29lZnMgWyBvcmRlciBdICAgICAgICAgICovCkBAIC03MCwxNSAr
NzAsOSBAQCB2b2lkIHNpbGtfTkxTRl9kZWNvZGUoCiAgICAgb3B1c191aW50OCAgICAgICBwcmVk
X1E4WyAgTUFYX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfaW50MTYgICAgICAgZWNfaXhbICAgIE1B
WF9MUENfT1JERVIgXTsKICAgICBvcHVzX2ludDE2ICAgICAgIHJlc19RMTBbICBNQVhfTFBDX09S
REVSIF07Ci0gICAgb3B1c19pbnQxNiAgICAgICBXX3RtcF9RV1sgTUFYX0xQQ19PUkRFUiBdOwot
ICAgIG9wdXNfaW50MzIgICAgICAgV190bXBfUTksIE5MU0ZfUTE1X3RtcDsKKyAgICBvcHVzX2lu
dDMyICAgICAgIE5MU0ZfUTE1X3RtcDsKICAgICBjb25zdCBvcHVzX3VpbnQ4ICpwQ0JfZWxlbWVu
dDsKLQotICAgIC8qIERlY29kZSBmaXJzdCBzdGFnZSAqLwotICAgIHBDQl9lbGVtZW50ID0gJnBz
TkxTRl9DQi0+Q0IxX05MU0ZfUThbIE5MU0ZJbmRpY2VzWyAwIF0gKiBwc05MU0ZfQ0ItPm9yZGVy
IF07Ci0gICAgZm9yKCBpID0gMDsgaSA8IHBzTkxTRl9DQi0+b3JkZXI7IGkrKyApIHsKLSAgICAg
ICAgcE5MU0ZfUTE1WyBpIF0gPSBzaWxrX0xTSElGVCggKG9wdXNfaW50MTYpcENCX2VsZW1lbnRb
IGkgXSwgNyApOwotICAgIH0KKyAgICBjb25zdCBvcHVzX2ludDE2ICpwQ0JfV2dodF9ROTsKIAog
ICAgIC8qIFVucGFjayBlbnRyb3B5IHRhYmxlIGluZGljZXMgYW5kIHByZWRpY3RvciBmb3IgY3Vy
cmVudCBDQjEgaW5kZXggKi8KICAgICBzaWxrX05MU0ZfdW5wYWNrKCBlY19peCwgcHJlZF9ROCwg
cHNOTFNGX0NCLCBOTFNGSW5kaWNlc1sgMCBdICk7CkBAIC04NiwxMyArODAsMTEgQEAgdm9pZCBz
aWxrX05MU0ZfZGVjb2RlKAogICAgIC8qIFByZWRpY3RpdmUgcmVzaWR1YWwgZGVxdWFudGl6ZXIg
Ki8KICAgICBzaWxrX05MU0ZfcmVzaWR1YWxfZGVxdWFudCggcmVzX1ExMCwgJk5MU0ZJbmRpY2Vz
WyAxIF0sIHByZWRfUTgsIHBzTkxTRl9DQi0+cXVhbnRTdGVwU2l6ZV9RMTYsIHBzTkxTRl9DQi0+
b3JkZXIgKTsKIAotICAgIC8qIFdlaWdodHMgZnJvbSBjb2RlYm9vayB2ZWN0b3IgKi8KLSAgICBz
aWxrX05MU0ZfVlFfd2VpZ2h0c19sYXJvaWEoIFdfdG1wX1FXLCBwTkxTRl9RMTUsIHBzTkxTRl9D
Qi0+b3JkZXIgKTsKLQotICAgIC8qIEFwcGx5IGludmVyc2Ugc3F1YXJlLXJvb3RlZCB3ZWlnaHRz
IGFuZCBhZGQgdG8gb3V0cHV0ICovCisgICAgLyogQXBwbHkgaW52ZXJzZSBzcXVhcmUtcm9vdGVk
IHdlaWdodHMgdG8gZmlyc3Qgc3RhZ2UgYW5kIGFkZCB0byBvdXRwdXQgKi8KKyAgICBwQ0JfZWxl
bWVudCA9ICZwc05MU0ZfQ0ItPkNCMV9OTFNGX1E4WyBOTFNGSW5kaWNlc1sgMCBdICogcHNOTFNG
X0NCLT5vcmRlciBdOworICAgIHBDQl9XZ2h0X1E5ID0gJnBzTkxTRl9DQi0+Q0IxX1dnaHRfUTlb
IE5MU0ZJbmRpY2VzWyAwIF0gKiBwc05MU0ZfQ0ItPm9yZGVyIF07CiAgICAgZm9yKCBpID0gMDsg
aSA8IHBzTkxTRl9DQi0+b3JkZXI7IGkrKyApIHsKLSAgICAgICAgV190bXBfUTkgPSBzaWxrX1NR
UlRfQVBQUk9YKCBzaWxrX0xTSElGVCggKG9wdXNfaW50MzIpV190bXBfUVdbIGkgXSwgMTggLSBO
TFNGX1dfUSApICk7Ci0gICAgICAgIE5MU0ZfUTE1X3RtcCA9IHNpbGtfQUREMzIoIHBOTFNGX1Ex
NVsgaSBdLCBzaWxrX0RJVjMyXzE2KCBzaWxrX0xTSElGVCggKG9wdXNfaW50MzIpcmVzX1ExMFsg
aSBdLCAxNCApLCBXX3RtcF9ROSApICk7CisgICAgICAgIE5MU0ZfUTE1X3RtcCA9IHNpbGtfQURE
X0xTSElGVDMyKCBzaWxrX0RJVjMyXzE2KCBzaWxrX0xTSElGVCggKG9wdXNfaW50MzIpcmVzX1Ex
MFsgaSBdLCAxNCApLCBwQ0JfV2dodF9ROVsgaSBdICksIChvcHVzX2ludDE2KXBDQl9lbGVtZW50
WyBpIF0sIDcgKTsKICAgICAgICAgcE5MU0ZfUTE1WyBpIF0gPSAob3B1c19pbnQxNilzaWxrX0xJ
TUlUKCBOTFNGX1ExNV90bXAsIDAsIDMyNzY3ICk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
TkxTRl9kZWxfZGVjX3F1YW50LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9kZWxfZGVjX3F1YW50LmMKaW5kZXggZGU4
OGZlZTA2MGUzNzcyZWI0M2M0ZDBkZjY4MTJhYTEwMTU5MGRiZi4uNDRhMTZhY2QwYmMxMWFiNzMz
YmJiMGJiZTQyYzM3OGIyMWQ0YWYxZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZGVsX2RlY19xdWFu
dC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9OTFNGX2RlbF9kZWNfcXVhbnQuYwpAQCAtODQsNyArODQsNyBAQCBvcHVz
X2ludDMyIHNpbGtfTkxTRl9kZWxfZGVjX3F1YW50KCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogTyAgICBSZXR1cm5zCiAgICAgblN0YXRlcyA9IDE7CiAgICAgUkRfUTI1WyAwIF0gPSAw
OwogICAgIHByZXZfb3V0X1ExMFsgMCBdID0gMDsKLSAgICBmb3IoIGkgPSBvcmRlciAtIDE7IDsg
aS0tICkgeworICAgIGZvciggaSA9IG9yZGVyIC0gMTsgaSA+PSAwOyBpLS0gKSB7CiAgICAgICAg
IHJhdGVzX1E1ID0gJmVjX3JhdGVzX1E1WyBlY19peFsgaSBdIF07CiAgICAgICAgIGluX1ExMCA9
IHhfUTEwWyBpIF07CiAgICAgICAgIGZvciggaiA9IDA7IGogPCBuU3RhdGVzOyBqKysgKSB7CkBA
IC0xMzEsNyArMTMxLDcgQEAgb3B1c19pbnQzMiBzaWxrX05MU0ZfZGVsX2RlY19xdWFudCggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucwogICAgICAgICAgICAgUkRf
UTI1WyBqICsgblN0YXRlcyBdID0gc2lsa19TTUxBQkIoIHNpbGtfTUxBKCBSRF90bXBfUTI1LCBz
aWxrX1NNVUxCQiggZGlmZl9RMTAsIGRpZmZfUTEwICksIHdfUTVbIGkgXSApLCBtdV9RMjAsIHJh
dGUxX1E1ICk7CiAgICAgICAgIH0KIAotICAgICAgICBpZiggblN0YXRlcyA8PSAoIE5MU0ZfUVVB
TlRfREVMX0RFQ19TVEFURVMgPj4gMSApICkgeworICAgICAgICBpZiggblN0YXRlcyA8PSBOTFNG
X1FVQU5UX0RFTF9ERUNfU1RBVEVTLzIgKSB7CiAgICAgICAgICAgICAvKiBkb3VibGUgbnVtYmVy
IG9mIHN0YXRlcyBhbmQgY29weSAqLwogICAgICAgICAgICAgZm9yKCBqID0gMDsgaiA8IG5TdGF0
ZXM7IGorKyApIHsKICAgICAgICAgICAgICAgICBpbmRbIGogKyBuU3RhdGVzIF1bIGkgXSA9IGlu
ZFsgaiBdWyBpIF0gKyAxOwpAQCAtMTQwLDcgKzE0MCw3IEBAIG9wdXNfaW50MzIgc2lsa19OTFNG
X2RlbF9kZWNfcXVhbnQoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJldHVy
bnMKICAgICAgICAgICAgIGZvciggaiA9IG5TdGF0ZXM7IGogPCBOTFNGX1FVQU5UX0RFTF9ERUNf
U1RBVEVTOyBqKysgKSB7CiAgICAgICAgICAgICAgICAgaW5kWyBqIF1bIGkgXSA9IGluZFsgaiAt
IG5TdGF0ZXMgXVsgaSBdOwogICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2UgaWYoIGkgPiAw
ICkgeworICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLyogc29ydCBsb3dlciBhbmQgdXBw
ZXIgaGFsZiBvZiBSRF9RMjUsIHBhaXJ3aXNlICovCiAgICAgICAgICAgICBmb3IoIGogPSAwOyBq
IDwgTkxTRl9RVUFOVF9ERUxfREVDX1NUQVRFUzsgaisrICkgewogICAgICAgICAgICAgICAgIGlm
KCBSRF9RMjVbIGogXSA+IFJEX1EyNVsgaiArIE5MU0ZfUVVBTlRfREVMX0RFQ19TVEFURVMgXSAp
IHsKQEAgLTE5MSw4ICsxOTEsNiBAQCBvcHVzX2ludDMyIHNpbGtfTkxTRl9kZWxfZGVjX3F1YW50
KCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zCiAgICAgICAgICAg
ICBmb3IoIGogPSAwOyBqIDwgTkxTRl9RVUFOVF9ERUxfREVDX1NUQVRFUzsgaisrICkgewogICAg
ICAgICAgICAgICAgIGluZFsgaiBdWyBpIF0gKz0gc2lsa19SU0hJRlQoIGluZF9zb3J0WyBqIF0s
IE5MU0ZfUVVBTlRfREVMX0RFQ19TVEFURVNfTE9HMiApOwogICAgICAgICAgICAgfQotICAgICAg
ICB9IGVsc2UgeyAgLyogaSA9PSAwICovCi0gICAgICAgICAgICBicmVhazsKICAgICAgICAgfQog
ICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZW5jb2RlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9lbmNvZGUu
YwppbmRleCBmMDNjM2YxYzM1NDlkOWRjY2Y0ZjUxMTUzN2I0MDAxYzQwOWY3ZTZiLi4yNjhiOWEx
OTViNTA4NTY1MzY3ODEyYmEyNzQ3YTdiYTZhMWY0YWEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9l
bmNvZGUuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvTkxTRl9lbmNvZGUuYwpAQCAtMzcsOSArMzcsOSBAQCBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KIC8qKioqKioqKioqKioqKioqKioqKioqKi8KIG9wdXNfaW50
MzIgc2lsa19OTFNGX2VuY29kZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBPICAgIFJldHVybnMgUkQgdmFsdWUgaW4gUTI1ICAgICAgICAgICAgICAgICAgICAgKi8KICAg
ICAgICAgICBvcHVzX2ludDggICAgICAgICAgICAgKk5MU0ZJbmRpY2VzLCAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIENvZGVib29rIHBhdGggdmVjdG9yIFsgTFBDX09SREVSICsgMSBdICAgICAg
Ki8KLSAgICAgICAgICBvcHVzX2ludDE2ICAgICAgICAgICAgKnBOTFNGX1ExNSwgICAgICAgICAg
ICAgICAgICAgICAvKiBJL08gIFF1YW50aXplZCBOTFNGIHZlY3RvciBbIExQQ19PUkRFUiBdICAg
ICAgICAgKi8KKyAgICAgICAgICBvcHVzX2ludDE2ICAgICAgICAgICAgKnBOTFNGX1ExNSwgICAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIChVbilxdWFudGl6ZWQgTkxTRiB2ZWN0b3IgWyBMUENf
T1JERVIgXSAgICAgKi8KICAgICBjb25zdCBzaWxrX05MU0ZfQ0Jfc3RydWN0ICAgKnBzTkxTRl9D
QiwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvZGVib29rIG9iamVjdCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKnBX
X1FXLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE5MU0Ygd2VpZ2h0IHZlY3RvciBb
IExQQ19PUkRFUiBdICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAg
ICAgKnBXX1EyLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE5MU0Ygd2VpZ2h0IHZl
Y3RvciBbIExQQ19PUkRFUiBdICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAg
ICAgICAgICAgTkxTRl9tdV9RMjAsICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJhdGUgd2Vp
Z2h0IGZvciB0aGUgUkQgb3B0aW1pemF0aW9uICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgblN1cnZpdm9ycywgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE1h
eCBzdXJ2aXZvcnMgYWZ0ZXIgZmlyc3Qgc3RhZ2UgICAgICAgICAgICAgKi8KICAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgc2lnbmFsVHlwZSAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIFNpZ25hbCB0eXBlOiAwLzEvMiAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KQEAgLTQ3
LDIxICs0NywxOSBAQCBvcHVzX2ludDMyIHNpbGtfTkxTRl9lbmNvZGUoICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zCiB7CiAgICAgb3B1c19pbnQgICAg
ICAgICBpLCBzLCBpbmQxLCBiZXN0SW5kZXgsIHByb2JfUTgsIGJpdHNfcTc7CiAgICAgb3B1c19p
bnQzMiAgICAgICBXX3RtcF9ROSwgcmV0OwotICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIGVycl9R
MjYgKTsKKyAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBlcnJfUTI0ICk7CiAgICAgVkFSREVDTCgg
b3B1c19pbnQzMiwgUkRfUTI1ICk7CiAgICAgVkFSREVDTCggb3B1c19pbnQsIHRlbXBJbmRpY2Vz
MSApOwogICAgIFZBUkRFQ0woIG9wdXNfaW50OCwgdGVtcEluZGljZXMyICk7Ci0gICAgb3B1c19p
bnQxNiAgICAgICByZXNfUTE1WyAgICAgIE1BWF9MUENfT1JERVIgXTsKICAgICBvcHVzX2ludDE2
ICAgICAgIHJlc19RMTBbICAgICAgTUFYX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfaW50MTYgICAg
ICAgTkxTRl90bXBfUTE1WyBNQVhfTFBDX09SREVSIF07Ci0gICAgb3B1c19pbnQxNiAgICAgICBX
X3RtcF9RV1sgICAgIE1BWF9MUENfT1JERVIgXTsKICAgICBvcHVzX2ludDE2ICAgICAgIFdfYWRq
X1E1WyAgICAgTUFYX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfdWludDggICAgICAgcHJlZF9ROFsg
ICAgICBNQVhfTFBDX09SREVSIF07CiAgICAgb3B1c19pbnQxNiAgICAgICBlY19peFsgICAgICAg
IE1BWF9MUENfT1JERVIgXTsKICAgICBjb25zdCBvcHVzX3VpbnQ4ICpwQ0JfZWxlbWVudCwgKmlD
REZfcHRyOworICAgIGNvbnN0IG9wdXNfaW50MTYgKnBDQl9XZ2h0X1E5OwogICAgIFNBVkVfU1RB
Q0s7CiAKLSAgICBzaWxrX2Fzc2VydCggblN1cnZpdm9ycyA8PSBOTFNGX1ZRX01BWF9TVVJWSVZP
UlMgKTsKICAgICBzaWxrX2Fzc2VydCggc2lnbmFsVHlwZSA+PSAwICYmIHNpZ25hbFR5cGUgPD0g
MiApOwogICAgIHNpbGtfYXNzZXJ0KCBOTFNGX211X1EyMCA8PSAzMjc2NyAmJiBOTFNGX211X1Ey
MCA+PSAwICk7CiAKQEAgLTY5LDEyICs2NywxMiBAQCBvcHVzX2ludDMyIHNpbGtfTkxTRl9lbmNv
ZGUoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zCiAg
ICAgc2lsa19OTFNGX3N0YWJpbGl6ZSggcE5MU0ZfUTE1LCBwc05MU0ZfQ0ItPmRlbHRhTWluX1Ex
NSwgcHNOTFNGX0NCLT5vcmRlciApOwogCiAgICAgLyogRmlyc3Qgc3RhZ2U6IFZRICovCi0gICAg
QUxMT0MoIGVycl9RMjYsIHBzTkxTRl9DQi0+blZlY3RvcnMsIG9wdXNfaW50MzIgKTsKLSAgICBz
aWxrX05MU0ZfVlEoIGVycl9RMjYsIHBOTFNGX1ExNSwgcHNOTFNGX0NCLT5DQjFfTkxTRl9ROCwg
cHNOTFNGX0NCLT5uVmVjdG9ycywgcHNOTFNGX0NCLT5vcmRlciApOworICAgIEFMTE9DKCBlcnJf
UTI0LCBwc05MU0ZfQ0ItPm5WZWN0b3JzLCBvcHVzX2ludDMyICk7CisgICAgc2lsa19OTFNGX1ZR
KCBlcnJfUTI0LCBwTkxTRl9RMTUsIHBzTkxTRl9DQi0+Q0IxX05MU0ZfUTgsIHBzTkxTRl9DQi0+
Q0IxX1dnaHRfUTksIHBzTkxTRl9DQi0+blZlY3RvcnMsIHBzTkxTRl9DQi0+b3JkZXIgKTsKIAog
ICAgIC8qIFNvcnQgdGhlIHF1YW50aXphdGlvbiBlcnJvcnMgKi8KICAgICBBTExPQyggdGVtcElu
ZGljZXMxLCBuU3Vydml2b3JzLCBvcHVzX2ludCApOwotICAgIHNpbGtfaW5zZXJ0aW9uX3NvcnRf
aW5jcmVhc2luZyggZXJyX1EyNiwgdGVtcEluZGljZXMxLCBwc05MU0ZfQ0ItPm5WZWN0b3JzLCBu
U3Vydml2b3JzICk7CisgICAgc2lsa19pbnNlcnRpb25fc29ydF9pbmNyZWFzaW5nKCBlcnJfUTI0
LCB0ZW1wSW5kaWNlczEsIHBzTkxTRl9DQi0+blZlY3RvcnMsIG5TdXJ2aXZvcnMgKTsKIAogICAg
IEFMTE9DKCBSRF9RMjUsIG5TdXJ2aXZvcnMsIG9wdXNfaW50MzIgKTsKICAgICBBTExPQyggdGVt
cEluZGljZXMyLCBuU3Vydml2b3JzICogTUFYX0xQQ19PUkRFUiwgb3B1c19pbnQ4ICk7CkBAIC04
NSwyMyArODMsMTIgQEAgb3B1c19pbnQzMiBzaWxrX05MU0ZfZW5jb2RlKCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucwogCiAgICAgICAgIC8qIFJlc2lk
dWFsIGFmdGVyIGZpcnN0IHN0YWdlICovCiAgICAgICAgIHBDQl9lbGVtZW50ID0gJnBzTkxTRl9D
Qi0+Q0IxX05MU0ZfUThbIGluZDEgKiBwc05MU0ZfQ0ItPm9yZGVyIF07CisgICAgICAgIHBDQl9X
Z2h0X1E5ID0gJnBzTkxTRl9DQi0+Q0IxX1dnaHRfUTlbIGluZDEgKiBwc05MU0ZfQ0ItPm9yZGVy
IF07CiAgICAgICAgIGZvciggaSA9IDA7IGkgPCBwc05MU0ZfQ0ItPm9yZGVyOyBpKysgKSB7CiAg
ICAgICAgICAgICBOTFNGX3RtcF9RMTVbIGkgXSA9IHNpbGtfTFNISUZUMTYoIChvcHVzX2ludDE2
KXBDQl9lbGVtZW50WyBpIF0sIDcgKTsKLSAgICAgICAgICAgIHJlc19RMTVbIGkgXSA9IHBOTFNG
X1ExNVsgaSBdIC0gTkxTRl90bXBfUTE1WyBpIF07Ci0gICAgICAgIH0KLQotICAgICAgICAvKiBX
ZWlnaHRzIGZyb20gY29kZWJvb2sgdmVjdG9yICovCi0gICAgICAgIHNpbGtfTkxTRl9WUV93ZWln
aHRzX2xhcm9pYSggV190bXBfUVcsIE5MU0ZfdG1wX1ExNSwgcHNOTFNGX0NCLT5vcmRlciApOwot
Ci0gICAgICAgIC8qIEFwcGx5IHNxdWFyZS1yb290ZWQgd2VpZ2h0cyAqLwotICAgICAgICBmb3Io
IGkgPSAwOyBpIDwgcHNOTFNGX0NCLT5vcmRlcjsgaSsrICkgewotICAgICAgICAgICAgV190bXBf
UTkgPSBzaWxrX1NRUlRfQVBQUk9YKCBzaWxrX0xTSElGVCggKG9wdXNfaW50MzIpV190bXBfUVdb
IGkgXSwgMTggLSBOTFNGX1dfUSApICk7Ci0gICAgICAgICAgICByZXNfUTEwWyBpIF0gPSAob3B1
c19pbnQxNilzaWxrX1JTSElGVCggc2lsa19TTVVMQkIoIHJlc19RMTVbIGkgXSwgV190bXBfUTkg
KSwgMTQgKTsKLSAgICAgICAgfQotCi0gICAgICAgIC8qIE1vZGlmeSBpbnB1dCB3ZWlnaHRzIGFj
Y29yZGluZ2x5ICovCi0gICAgICAgIGZvciggaSA9IDA7IGkgPCBwc05MU0ZfQ0ItPm9yZGVyOyBp
KysgKSB7Ci0gICAgICAgICAgICBXX2Fkal9RNVsgaSBdID0gc2lsa19ESVYzMl8xNiggc2lsa19M
U0hJRlQoIChvcHVzX2ludDMyKXBXX1FXWyBpIF0sIDUgKSwgV190bXBfUVdbIGkgXSApOworICAg
ICAgICAgICAgV190bXBfUTkgPSBwQ0JfV2dodF9ROVsgaSBdOworICAgICAgICAgICAgcmVzX1Ex
MFsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19SU0hJRlQoIHNpbGtfU01VTEJCKCBwTkxTRl9RMTVb
IGkgXSAtIE5MU0ZfdG1wX1ExNVsgaSBdLCBXX3RtcF9ROSApLCAxNCApOworICAgICAgICAgICAg
V19hZGpfUTVbIGkgXSA9IHNpbGtfRElWMzJfdmFyUSggKG9wdXNfaW50MzIpcFdfUTJbIGkgXSwg
c2lsa19TTVVMQkIoIFdfdG1wX1E5LCBXX3RtcF9ROSApLCAyMSApOwogICAgICAgICB9CiAKICAg
ICAgICAgLyogVW5wYWNrIGVudHJvcHkgdGFibGUgaW5kaWNlcyBhbmQgcHJlZGljdG9yIGZvciBj
dXJyZW50IENCMSBpbmRleCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05TUS5jIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05TUS5jCmlu
ZGV4IDQzZTNmZWU3ZTBhZDkyOTM5NGVmN2NiY2Y4MTRiYWRlMjg3MTliZWMuLjYxN2ExOWZlYWRl
ZjhkNTU3YjA4NmMzNDU1OGQzMTc1MDI3NmExYzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OU1EuYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvTlNRLmMKQEAgLTM3LDcgKzM3LDcgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9zY2FsZV9zdGF0ZXMoCiAgICAgY29u
c3Qgc2lsa19lbmNvZGVyX3N0YXRlICpwc0VuY0MsICAgICAgICAgICAvKiBJICAgIEVuY29kZXIg
U3RhdGUgICAgICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX25zcV9zdGF0ZSAgICAgICpOU1Es
ICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAg
ICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgeF9RM1tdLCAgICAgICAgICAgICAgICAgLyog
SSAgICBpbnB1dCBpbiBRMyAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19p
bnQxNiAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAvKiBJICAgIGlucHV0ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgIHhfc2NfUTEwW10sICAg
ICAgICAgICAgIC8qIE8gICAgaW5wdXQgc2NhbGVkIHdpdGggMS9HYWluICAgICAgICAqLwogICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgc0xUUFtdLCAgICAgICAgICAgICAgICAgLyogSSAgICByZS13
aGl0ZW5lZCBMVFAgc3RhdGUgaW4gUTAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICBz
TFRQX1ExNVtdLCAgICAgICAgICAgICAvKiBPICAgIExUUCBzdGF0ZSBtYXRjaGluZyBzY2FsZWQg
aW5wdXQgKi8KQEAgLTc1LDE0ICs3NSwxNCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxr
X25vaXNlX3NoYXBlX3F1YW50aXplcigKIAogdm9pZCBzaWxrX05TUV9jCiAoCi0gICAgY29uc3Qg
c2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCisgICAg
Y29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICov
CiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAg
ICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGljZXMsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5kaWNlcyAg
ICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNbXSwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1
dCBzaWduYWwgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIHgxNltd
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAg
ICAgcHVsc2VzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFF1
YW50aXplZCBwdWxzZSBzaWduYWwgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgUHJlZENvZWZfUTEyWyAyICogTUFYX0xQQ19PUkRFUiBdLCAgICAgICAgICAvKiBJ
ICAgIFNob3J0IHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAgKi8KICAgICBjb25zdCBvcHVzX2lu
dDE2ICAgICAgICAgICAgTFRQQ29lZl9RMTRbIExUUF9PUkRFUiAqIE1BWF9OQl9TVUJGUiBdLCAg
ICAvKiBJICAgIExvbmcgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludDE2ICAgICAgICAgICAgQVIyX1ExM1sgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQ
Q19PUkRFUiBdLCAvKiBJIE5vaXNlIHNoYXBpbmcgY29lZnMgICAgICAgICAgICAgKi8KKyAgICBj
b25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgQVJfUTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hB
UEVfTFBDX09SREVSIF0sIC8qIEkgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAgKi8K
ICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgSGFybVNoYXBlR2Fpbl9RMTRbIE1BWF9O
Ql9TVUJGUiBdLCAgICAgICAgICAvKiBJICAgIExvbmcgdGVybSBzaGFwaW5nIGNvZWZzICAgICAg
ICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgVGlsdF9RMTRbIE1BWF9OQl9T
VUJGUiBdLCAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNwZWN0cmFsIHRpbHQgICAgICAgICAg
ICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgTEZfc2hwX1ExNFsg
TUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAvKiBJICAgIExvdyBmcmVxdWVuY3kgc2hh
cGluZyBjb2VmcyAgICAgKi8KQEAgLTExNyw4ICsxMTcsNyBAQCB2b2lkIHNpbGtfTlNRX2MKICAg
ICAgICAgTFNGX2ludGVycG9sYXRpb25fZmxhZyA9IDE7CiAgICAgfQogCi0gICAgQUxMT0MoIHNM
VFBfUTE1LAotICAgICAgICAgICBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsgcHNFbmNDLT5mcmFt
ZV9sZW5ndGgsIG9wdXNfaW50MzIgKTsKKyAgICBBTExPQyggc0xUUF9RMTUsIHBzRW5jQy0+bHRw
X21lbV9sZW5ndGggKyBwc0VuY0MtPmZyYW1lX2xlbmd0aCwgb3B1c19pbnQzMiApOwogICAgIEFM
TE9DKCBzTFRQLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsgcHNFbmNDLT5mcmFtZV9sZW5ndGgs
IG9wdXNfaW50MTYgKTsKICAgICBBTExPQyggeF9zY19RMTAsIHBzRW5jQy0+c3ViZnJfbGVuZ3Ro
LCBvcHVzX2ludDMyICk7CiAgICAgLyogU2V0IHVwIHBvaW50ZXJzIHRvIHN0YXJ0IG9mIHN1YiBm
cmFtZSAqLwpAQCAtMTI4LDcgKzEyNyw3IEBAIHZvaWQgc2lsa19OU1FfYwogICAgIGZvciggayA9
IDA7IGsgPCBwc0VuY0MtPm5iX3N1YmZyOyBrKysgKSB7CiAgICAgICAgIEFfUTEyICAgICAgPSAm
UHJlZENvZWZfUTEyWyAoKCBrID4+IDEgKSB8ICggMSAtIExTRl9pbnRlcnBvbGF0aW9uX2ZsYWcg
KSkgKiBNQVhfTFBDX09SREVSIF07CiAgICAgICAgIEJfUTE0ICAgICAgPSAmTFRQQ29lZl9RMTRb
IGsgKiBMVFBfT1JERVIgXTsKLSAgICAgICAgQVJfc2hwX1ExMyA9ICZBUjJfUTEzWyAgICAgayAq
IE1BWF9TSEFQRV9MUENfT1JERVIgXTsKKyAgICAgICAgQVJfc2hwX1ExMyA9ICZBUl9RMTNbIGsg
KiBNQVhfU0hBUEVfTFBDX09SREVSIF07CiAKICAgICAgICAgLyogTm9pc2Ugc2hhcGUgcGFyYW1l
dGVycyAqLwogICAgICAgICBzaWxrX2Fzc2VydCggSGFybVNoYXBlR2Fpbl9RMTRbIGsgXSA+PSAw
ICk7CkBAIC0xNTQsMTMgKzE1MywxMyBAQCB2b2lkIHNpbGtfTlNRX2MKICAgICAgICAgICAgIH0K
ICAgICAgICAgfQogCi0gICAgICAgIHNpbGtfbnNxX3NjYWxlX3N0YXRlcyggcHNFbmNDLCBOU1Es
IHhfUTMsIHhfc2NfUTEwLCBzTFRQLCBzTFRQX1ExNSwgaywgTFRQX3NjYWxlX1ExNCwgR2FpbnNf
UTE2LCBwaXRjaEwsIHBzSW5kaWNlcy0+c2lnbmFsVHlwZSApOworICAgICAgICBzaWxrX25zcV9z
Y2FsZV9zdGF0ZXMoIHBzRW5jQywgTlNRLCB4MTYsIHhfc2NfUTEwLCBzTFRQLCBzTFRQX1ExNSwg
aywgTFRQX3NjYWxlX1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIHBzSW5kaWNlcy0+c2lnbmFsVHlw
ZSApOwogCiAgICAgICAgIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyKCBOU1EsIHBzSW5kaWNl
cy0+c2lnbmFsVHlwZSwgeF9zY19RMTAsIHB1bHNlcywgcHhxLCBzTFRQX1ExNSwgQV9RMTIsIEJf
UTE0LAogICAgICAgICAgICAgQVJfc2hwX1ExMywgbGFnLCBIYXJtU2hhcGVGSVJQYWNrZWRfUTE0
LCBUaWx0X1ExNFsgayBdLCBMRl9zaHBfUTE0WyBrIF0sIEdhaW5zX1ExNlsgayBdLCBMYW1iZGFf
UTEwLAogICAgICAgICAgICAgb2Zmc2V0X1ExMCwgcHNFbmNDLT5zdWJmcl9sZW5ndGgsIHBzRW5j
Qy0+c2hhcGluZ0xQQ09yZGVyLCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciwgcHNFbmNDLT5hcmNo
ICk7CiAKLSAgICAgICAgeF9RMyAgICs9IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOworICAgICAgICB4
MTYgICAgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7CiAgICAgICAgIHB1bHNlcyArPSBwc0VuY0Mt
PnN1YmZyX2xlbmd0aDsKICAgICAgICAgcHhxICAgICs9IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOwog
ICAgIH0KQEAgLTE2OSw3ICsxNjgsNiBAQCB2b2lkIHNpbGtfTlNRX2MKICAgICBOU1EtPmxhZ1By
ZXYgPSBwaXRjaExbIHBzRW5jQy0+bmJfc3ViZnIgLSAxIF07CiAKICAgICAvKiBTYXZlIHF1YW50
aXplZCBzcGVlY2ggYW5kIG5vaXNlIHNoYXBpbmcgc2lnbmFscyAqLwotICAgIC8qIERFQlVHX1NU
T1JFX0RBVEEoIGVuYy5wY20sICZOU1EtPnhxWyBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoIF0sIHBz
RW5jQy0+ZnJhbWVfbGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKSAqLwogICAgIHNpbGtf
bWVtbW92ZSggTlNRLT54cSwgICAgICAgICAgICZOU1EtPnhxWyAgICAgICAgICAgcHNFbmNDLT5m
cmFtZV9sZW5ndGggXSwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQx
NiApICk7CiAgICAgc2lsa19tZW1tb3ZlKCBOU1EtPnNMVFBfc2hwX1ExNCwgJk5TUS0+c0xUUF9z
aHBfUTE0WyBwc0VuY0MtPmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICog
c2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKICAgICBSRVNUT1JFX1NUQUNLOwpAQCAtMjUwLDcgKzI0
OCw3IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXIoCiAKICAgICAgICAgLyogTm9p
c2Ugc2hhcGUgZmVlZGJhY2sgKi8KICAgICAgICAgc2lsa19hc3NlcnQoICggc2hhcGluZ0xQQ09y
ZGVyICYgMSApID09IDAgKTsgICAvKiBjaGVjayB0aGF0IG9yZGVyIGlzIGV2ZW4gKi8KLSAgICAg
ICAgbl9BUl9RMTIgPSBzaWxrX05TUV9ub2lzZV9zaGFwZV9mZWVkYmFja19sb29wKHBzTFBDX1Ex
NCwgTlNRLT5zQVIyX1ExNCwgQVJfc2hwX1ExMywgc2hhcGluZ0xQQ09yZGVyLCBhcmNoKTsKKyAg
ICAgICAgbl9BUl9RMTIgPSBzaWxrX05TUV9ub2lzZV9zaGFwZV9mZWVkYmFja19sb29wKCZOU1Et
PnNEaWZmX3NocF9RMTQsIE5TUS0+c0FSMl9RMTQsIEFSX3NocF9RMTMsIHNoYXBpbmdMUENPcmRl
ciwgYXJjaCk7CiAKICAgICAgICAgbl9BUl9RMTIgPSBzaWxrX1NNTEFXQiggbl9BUl9RMTIsIE5T
US0+c0xGX0FSX3NocF9RMTQsIFRpbHRfUTE0ICk7CiAKQEAgLTI3OSwxNCArMjc3LDI3IEBAIHZv
aWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXIoCiAgICAgICAgIHJfUTEwID0gc2lsa19TVUIz
MiggeF9zY19RMTBbIGkgXSwgdG1wMSApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IHJlc2lkdWFsIGVycm9yIFExMCAqLwogCiAgICAgICAgIC8qIEZsaXAgc2lnbiBkZXBlbmRpbmcg
b24gZGl0aGVyICovCi0gICAgICAgIGlmICggTlNRLT5yYW5kX3NlZWQgPCAwICkgewotICAgICAg
ICAgICByX1ExMCA9IC1yX1ExMDsKKyAgICAgICAgaWYoIE5TUS0+cmFuZF9zZWVkIDwgMCApIHsK
KyAgICAgICAgICAgIHJfUTEwID0gLXJfUTEwOwogICAgICAgICB9CiAgICAgICAgIHJfUTEwID0g
c2lsa19MSU1JVF8zMiggcl9RMTAsIC0oMzEgPDwgMTApLCAzMCA8PCAxMCApOwogCiAgICAgICAg
IC8qIEZpbmQgdHdvIHF1YW50aXphdGlvbiBsZXZlbCBjYW5kaWRhdGVzIGFuZCBtZWFzdXJlIHRo
ZWlyIHJhdGUtZGlzdG9ydGlvbiAqLwogICAgICAgICBxMV9RMTAgPSBzaWxrX1NVQjMyKCByX1Ex
MCwgb2Zmc2V0X1ExMCApOwogICAgICAgICBxMV9RMCA9IHNpbGtfUlNISUZUKCBxMV9RMTAsIDEw
ICk7CisgICAgICAgIGlmIChMYW1iZGFfUTEwID4gMjA0OCkgeworICAgICAgICAgICAgLyogRm9y
IGFnZ3Jlc3NpdmUgUkRPLCB0aGUgYmlhcyBiZWNvbWVzIG1vcmUgdGhhbiBvbmUgcHVsc2UuICov
CisgICAgICAgICAgICBpbnQgcmRvX29mZnNldCA9IExhbWJkYV9RMTAvMiAtIDUxMjsKKyAgICAg
ICAgICAgIGlmIChxMV9RMTAgPiByZG9fb2Zmc2V0KSB7CisgICAgICAgICAgICAgICAgcTFfUTAg
PSBzaWxrX1JTSElGVCggcTFfUTEwIC0gcmRvX29mZnNldCwgMTAgKTsKKyAgICAgICAgICAgIH0g
ZWxzZSBpZiAocTFfUTEwIDwgLXJkb19vZmZzZXQpIHsKKyAgICAgICAgICAgICAgICBxMV9RMCA9
IHNpbGtfUlNISUZUKCBxMV9RMTAgKyByZG9fb2Zmc2V0LCAxMCApOworICAgICAgICAgICAgfSBl
bHNlIGlmIChxMV9RMTAgPCAwKSB7CisgICAgICAgICAgICAgICAgcTFfUTAgPSAtMTsKKyAgICAg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgcTFfUTAgPSAwOworICAgICAgICAgICAg
fQorICAgICAgICB9CiAgICAgICAgIGlmKCBxMV9RMCA+IDAgKSB7CiAgICAgICAgICAgICBxMV9R
MTAgID0gc2lsa19TVUIzMiggc2lsa19MU0hJRlQoIHExX1EwLCAxMCApLCBRVUFOVF9MRVZFTF9B
REpVU1RfUTEwICk7CiAgICAgICAgICAgICBxMV9RMTAgID0gc2lsa19BREQzMiggcTFfUTEwLCBv
ZmZzZXRfUTEwICk7CkBAIC0zMzcsNyArMzQ4LDggQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1
YW50aXplcigKICAgICAgICAgLyogVXBkYXRlIHN0YXRlcyAqLwogICAgICAgICBwc0xQQ19RMTQr
KzsKICAgICAgICAgKnBzTFBDX1ExNCA9IHhxX1ExNDsKLSAgICAgICAgc0xGX0FSX3NocF9RMTQg
PSBzaWxrX1NVQl9MU0hJRlQzMiggeHFfUTE0LCBuX0FSX1ExMiwgMiApOworICAgICAgICBOU1Et
PnNEaWZmX3NocF9RMTQgPSBzaWxrX1NVQl9MU0hJRlQzMiggeHFfUTE0LCB4X3NjX1ExMFsgaSBd
LCA0ICk7CisgICAgICAgIHNMRl9BUl9zaHBfUTE0ID0gc2lsa19TVUJfTFNISUZUMzIoIE5TUS0+
c0RpZmZfc2hwX1ExNCwgbl9BUl9RMTIsIDIgKTsKICAgICAgICAgTlNRLT5zTEZfQVJfc2hwX1Ex
NCA9IHNMRl9BUl9zaHBfUTE0OwogCiAgICAgICAgIE5TUS0+c0xUUF9zaHBfUTE0WyBOU1EtPnNM
VFBfc2hwX2J1Zl9pZHggXSA9IHNpbGtfU1VCX0xTSElGVDMyKCBzTEZfQVJfc2hwX1ExNCwgbl9M
Rl9RMTIsIDIgKTsKQEAgLTM1Niw3ICszNjgsNyBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVh
bnRpemVyKAogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3Ffc2NhbGVfc3RhdGVzKAog
ICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbmNDLCAgICAgICAgICAgLyogSSAgICBF
bmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAg
ICAqTlNRLCAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgIHhfUTNbXSwgICAgICAgICAgICAg
ICAgIC8qIEkgICAgaW5wdXQgaW4gUTMgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0
IG9wdXNfaW50MTYgICAgeDE2W10sICAgICAgICAgICAgICAgICAgLyogSSAgICBpbnB1dCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICB4X3NjX1Ex
MFtdLCAgICAgICAgICAgICAvKiBPICAgIGlucHV0IHNjYWxlZCB3aXRoIDEvR2FpbiAgICAgICAg
Ki8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgIHNMVFBbXSwgICAgICAgICAgICAgICAgIC8qIEkg
ICAgcmUtd2hpdGVuZWQgTFRQIHN0YXRlIGluIFEwICAgICAqLwogICAgIG9wdXNfaW50MzIgICAg
ICAgICAgc0xUUF9RMTVbXSwgICAgICAgICAgICAgLyogTyAgICBMVFAgc3RhdGUgbWF0Y2hpbmcg
c2NhbGVkIGlucHV0ICovCkBAIC0zNjgsMjggKzM4MCwxOCBAQCBzdGF0aWMgT1BVU19JTkxJTkUg
dm9pZCBzaWxrX25zcV9zY2FsZV9zdGF0ZXMoCiApCiB7CiAgICAgb3B1c19pbnQgICBpLCBsYWc7
Ci0gICAgb3B1c19pbnQzMiBnYWluX2Fkal9RMTYsIGludl9nYWluX1EzMSwgaW52X2dhaW5fUTIz
OworICAgIG9wdXNfaW50MzIgZ2Fpbl9hZGpfUTE2LCBpbnZfZ2Fpbl9RMzEsIGludl9nYWluX1Ey
NjsKIAogICAgIGxhZyAgICAgICAgICA9IHBpdGNoTFsgc3ViZnIgXTsKICAgICBpbnZfZ2Fpbl9R
MzEgPSBzaWxrX0lOVkVSU0UzMl92YXJRKCBzaWxrX21heCggR2FpbnNfUTE2WyBzdWJmciBdLCAx
ICksIDQ3ICk7CiAgICAgc2lsa19hc3NlcnQoIGludl9nYWluX1EzMSAhPSAwICk7CiAKLSAgICAv
KiBDYWxjdWxhdGUgZ2FpbiBhZGp1c3RtZW50IGZhY3RvciAqLwotICAgIGlmKCBHYWluc19RMTZb
IHN1YmZyIF0gIT0gTlNRLT5wcmV2X2dhaW5fUTE2ICkgewotICAgICAgICBnYWluX2Fkal9RMTYg
PSAgc2lsa19ESVYzMl92YXJRKCBOU1EtPnByZXZfZ2Fpbl9RMTYsIEdhaW5zX1ExNlsgc3ViZnIg
XSwgMTYgKTsKLSAgICB9IGVsc2UgewotICAgICAgICBnYWluX2Fkal9RMTYgPSAob3B1c19pbnQz
MikxIDw8IDE2OwotICAgIH0KLQogICAgIC8qIFNjYWxlIGlucHV0ICovCi0gICAgaW52X2dhaW5f
UTIzID0gc2lsa19SU0hJRlRfUk9VTkQoIGludl9nYWluX1EzMSwgOCApOworICAgIGludl9nYWlu
X1EyNiA9IHNpbGtfUlNISUZUX1JPVU5EKCBpbnZfZ2Fpbl9RMzEsIDUgKTsKICAgICBmb3IoIGkg
PSAwOyBpIDwgcHNFbmNDLT5zdWJmcl9sZW5ndGg7IGkrKyApIHsKLSAgICAgICAgeF9zY19RMTBb
IGkgXSA9IHNpbGtfU01VTFdXKCB4X1EzWyBpIF0sIGludl9nYWluX1EyMyApOworICAgICAgICB4
X3NjX1ExMFsgaSBdID0gc2lsa19TTVVMV1coIHgxNlsgaSBdLCBpbnZfZ2Fpbl9RMjYgKTsKICAg
ICB9CiAKLSAgICAvKiBTYXZlIGludmVyc2UgZ2FpbiAqLwotICAgIE5TUS0+cHJldl9nYWluX1Ex
NiA9IEdhaW5zX1ExNlsgc3ViZnIgXTsKLQogICAgIC8qIEFmdGVyIHJld2hpdGVuaW5nIHRoZSBM
VFAgc3RhdGUgaXMgdW4tc2NhbGVkLCBzbyBzY2FsZSB3aXRoIGludl9nYWluX1ExNiAqLwogICAg
IGlmKCBOU1EtPnJld2hpdGVfZmxhZyApIHsKICAgICAgICAgaWYoIHN1YmZyID09IDAgKSB7CkBA
IC00MDMsNyArNDA1LDkgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3Ffc2NhbGVf
c3RhdGVzKAogICAgIH0KIAogICAgIC8qIEFkanVzdCBmb3IgY2hhbmdpbmcgZ2FpbiAqLwotICAg
IGlmKCBnYWluX2Fkal9RMTYgIT0gKG9wdXNfaW50MzIpMSA8PCAxNiApIHsKKyAgICBpZiggR2Fp
bnNfUTE2WyBzdWJmciBdICE9IE5TUS0+cHJldl9nYWluX1ExNiApIHsKKyAgICAgICAgZ2Fpbl9h
ZGpfUTE2ID0gIHNpbGtfRElWMzJfdmFyUSggTlNRLT5wcmV2X2dhaW5fUTE2LCBHYWluc19RMTZb
IHN1YmZyIF0sIDE2ICk7CisKICAgICAgICAgLyogU2NhbGUgbG9uZy10ZXJtIHNoYXBpbmcgc3Rh
dGUgKi8KICAgICAgICAgZm9yKCBpID0gTlNRLT5zTFRQX3NocF9idWZfaWR4IC0gcHNFbmNDLT5s
dHBfbWVtX2xlbmd0aDsgaSA8IE5TUS0+c0xUUF9zaHBfYnVmX2lkeDsgaSsrICkgewogICAgICAg
ICAgICAgTlNRLT5zTFRQX3NocF9RMTRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9RMTYs
IE5TUS0+c0xUUF9zaHBfUTE0WyBpIF0gKTsKQEAgLTQxNyw2ICs0MjEsNyBAQCBzdGF0aWMgT1BV
U19JTkxJTkUgdm9pZCBzaWxrX25zcV9zY2FsZV9zdGF0ZXMoCiAgICAgICAgIH0KIAogICAgICAg
ICBOU1EtPnNMRl9BUl9zaHBfUTE0ID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgTlNRLT5z
TEZfQVJfc2hwX1ExNCApOworICAgICAgICBOU1EtPnNEaWZmX3NocF9RMTQgPSBzaWxrX1NNVUxX
VyggZ2Fpbl9hZGpfUTE2LCBOU1EtPnNEaWZmX3NocF9RMTQgKTsKIAogICAgICAgICAvKiBTY2Fs
ZSBzaG9ydC10ZXJtIHByZWRpY3Rpb24gYW5kIHNoYXBpbmcgc3RhdGVzICovCiAgICAgICAgIGZv
ciggaSA9IDA7IGkgPCBOU1FfTFBDX0JVRl9MRU5HVEg7IGkrKyApIHsKQEAgLTQyNSw1ICs0MzAs
OCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9zY2FsZV9zdGF0ZXMoCiAgICAg
ICAgIGZvciggaSA9IDA7IGkgPCBNQVhfU0hBUEVfTFBDX09SREVSOyBpKysgKSB7CiAgICAgICAg
ICAgICBOU1EtPnNBUjJfUTE0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9hZGpfUTE2LCBOU1Et
PnNBUjJfUTE0WyBpIF0gKTsKICAgICAgICAgfQorCisgICAgICAgIC8qIFNhdmUgaW52ZXJzZSBn
YWluICovCisgICAgICAgIE5TUS0+cHJldl9nYWluX1ExNiA9IEdhaW5zX1ExNlsgc3ViZnIgXTsK
ICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTlNRX2RlbF9kZWMuYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OU1FfZGVsX2Rl
Yy5jCmluZGV4IGFiNmZlZWFjOTg3MDJhYmFhNTZlMTIwNDNhNTVlOWEyNWY5NmRmZmMuLjU5OWUy
NWYxYzhiYmYzY2JhOTg4ZjY2MGE2MTA2NGE4NjY1ZTZiNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OU1Ff
ZGVsX2RlYy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9OU1FfZGVsX2RlYy5jCkBAIC00Myw2ICs0Myw3IEBAIHR5cGVk
ZWYgc3RydWN0IHsKICAgICBvcHVzX2ludDMyIFNoYXBlX1ExNFsgREVDSVNJT05fREVMQVkgXTsK
ICAgICBvcHVzX2ludDMyIHNBUjJfUTE0WyBNQVhfU0hBUEVfTFBDX09SREVSIF07CiAgICAgb3B1
c19pbnQzMiBMRl9BUl9RMTQ7CisgICAgb3B1c19pbnQzMiBEaWZmX1ExNDsKICAgICBvcHVzX2lu
dDMyIFNlZWQ7CiAgICAgb3B1c19pbnQzMiBTZWVkSW5pdDsKICAgICBvcHVzX2ludDMyIFJEX1Ex
MDsKQEAgLTUzLDYgKzU0LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIG9wdXNfaW50MzIgUkRf
UTEwOwogICAgIG9wdXNfaW50MzIgeHFfUTE0OwogICAgIG9wdXNfaW50MzIgTEZfQVJfUTE0Owor
ICAgIG9wdXNfaW50MzIgRGlmZl9RMTQ7CiAgICAgb3B1c19pbnQzMiBzTFRQX3NocF9RMTQ7CiAg
ICAgb3B1c19pbnQzMiBMUENfZXhjX1ExNDsKIH0gTlNRX3NhbXBsZV9zdHJ1Y3Q7CkBAIC02Niw3
ICs2OCw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVf
c3RhdGVzKAogICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbmNDLCAgICAgICAgICAg
ICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBz
aWxrX25zcV9zdGF0ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5T
USBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgTlNRX2RlbF9kZWNfc3Ry
dWN0ICBwc0RlbERlY1tdLCAgICAgICAgICAgICAgICAgLyogSS9PICBEZWxheWVkIGRlY2lzaW9u
IHN0YXRlcyAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgeF9RM1tdLCAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgaW4gUTMgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIHgxNltdLCAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIElucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAg
b3B1c19pbnQzMiAgICAgICAgICB4X3NjX1ExMFtdLCAgICAgICAgICAgICAgICAgLyogTyAgICBJ
bnB1dCBzY2FsZWQgd2l0aCAxL0dhaW4gaW4gUTEwICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgc0xUUFtdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUmUtd2hpdGVuZWQgTFRQ
IHN0YXRlIGluIFEwICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgIHNMVFBfUTE1
W10sICAgICAgICAgICAgICAgICAvKiBPICAgIExUUCBzdGF0ZSBtYXRjaGluZyBzY2FsZWQgaW5w
dXQgICAgICovCkBAIC0xMDcsMjAgKzEwOSwyMCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBz
aWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgIG9wdXNfaW50ICAgICAgICAg
ICAgcHJlZGljdExQQ09yZGVyLCAgICAgICAgLyogSSAgICBQcmVkaWN0aW9uIGZpbHRlciBvcmRl
ciAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgd2FycGluZ19RMTYsICAg
ICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIG9wdXNfaW50ICAgICAgICAgICAgblN0YXRlc0RlbGF5ZWREZWNpc2lvbiwgLyogSSAgICBO
dW1iZXIgb2Ygc3RhdGVzIGluIGRlY2lzaW9uIHRyZWUgICAqLwotICAgIG9wdXNfaW50ICAgICAg
ICAgICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAgLyogSSAgICBJbmRleCB0byBuZXdlc3Qgc2Ft
cGxlcyBpbiBidWZmZXJzICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgKnNtcGxfYnVmX2lk
eCwgICAgICAgICAgLyogSS9PICBJbmRleCB0byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZmZXJzICAq
LwogICAgIG9wdXNfaW50ICAgICAgICAgICAgZGVjaXNpb25EZWxheSwgICAgICAgICAgLyogSSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGludCAgICAgICAg
ICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwogKTsKIAogdm9pZCBzaWxrX05TUV9kZWxfZGVjX2MoCi0g
ICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAg
ICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAg
ICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAg
ICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGlj
ZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24g
SW5kaWNlcyAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhf
UTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0
ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAg
ICAgIHgxNltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IElucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAg
ICAgICAgICAgICAgcHVsc2VzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBPICAgIFF1YW50aXplZCBwdWxzZSBzaWduYWwgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVz
X2ludDE2ICAgICAgICAgICAgUHJlZENvZWZfUTEyWyAyICogTUFYX0xQQ19PUkRFUiBdLCAgICAg
ICAgICAvKiBJICAgIFNob3J0IHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAgKi8KICAgICBjb25z
dCBvcHVzX2ludDE2ICAgICAgICAgICAgTFRQQ29lZl9RMTRbIExUUF9PUkRFUiAqIE1BWF9OQl9T
VUJGUiBdLCAgICAvKiBJICAgIExvbmcgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAgKi8KLSAg
ICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgQVIyX1ExM1sgTUFYX05CX1NVQkZSICogTUFY
X1NIQVBFX0xQQ19PUkRFUiBdLCAvKiBJIE5vaXNlIHNoYXBpbmcgY29lZnMgICAgICAgICAgICAg
Ki8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgQVJfUTEzWyBNQVhfTkJfU1VCRlIg
KiBNQVhfU0hBUEVfTFBDX09SREVSIF0sIC8qIEkgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAg
ICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgSGFybVNoYXBlR2Fpbl9R
MTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAvKiBJICAgIExvbmcgdGVybSBzaGFwaW5nIGNv
ZWZzICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgVGlsdF9RMTRb
IE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNwZWN0cmFsIHRpbHQg
ICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgTEZf
c2hwX1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAvKiBJICAgIExvdyBmcmVx
dWVuY3kgc2hhcGluZyBjb2VmcyAgICAgKi8KQEAgLTE1OSw2ICsxNjEsNyBAQCB2b2lkIHNpbGtf
TlNRX2RlbF9kZWNfYygKICAgICAgICAgcHNERC0+U2VlZEluaXQgICAgICAgPSBwc0RELT5TZWVk
OwogICAgICAgICBwc0RELT5SRF9RMTAgICAgICAgICA9IDA7CiAgICAgICAgIHBzREQtPkxGX0FS
X1ExNCAgICAgID0gTlNRLT5zTEZfQVJfc2hwX1ExNDsKKyAgICAgICAgcHNERC0+RGlmZl9RMTQg
ICAgICAgPSBOU1EtPnNEaWZmX3NocF9RMTQ7CiAgICAgICAgIHBzREQtPlNoYXBlX1ExNFsgMCBd
ID0gTlNRLT5zTFRQX3NocF9RMTRbIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggLSAxIF07CiAgICAg
ICAgIHNpbGtfbWVtY3B5KCBwc0RELT5zTFBDX1ExNCwgTlNRLT5zTFBDX1ExNCwgTlNRX0xQQ19C
VUZfTEVOR1RIICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKICAgICAgICAgc2lsa19tZW1jcHko
IHBzREQtPnNBUjJfUTE0LCBOU1EtPnNBUjJfUTE0LCBzaXplb2YoIE5TUS0+c0FSMl9RMTQgKSAp
OwpAQCAtMTg2LDggKzE4OSw3IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAogICAgICAgICBM
U0ZfaW50ZXJwb2xhdGlvbl9mbGFnID0gMTsKICAgICB9CiAKLSAgICBBTExPQyggc0xUUF9RMTUs
Ci0gICAgICAgICAgIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKyBwc0VuY0MtPmZyYW1lX2xlbmd0
aCwgb3B1c19pbnQzMiApOworICAgIEFMTE9DKCBzTFRQX1ExNSwgcHNFbmNDLT5sdHBfbWVtX2xl
bmd0aCArIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoLCBvcHVzX2ludDMyICk7CiAgICAgQUxMT0MoIHNM
VFAsIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKyBwc0VuY0MtPmZyYW1lX2xlbmd0aCwgb3B1c19p
bnQxNiApOwogICAgIEFMTE9DKCB4X3NjX1ExMCwgcHNFbmNDLT5zdWJmcl9sZW5ndGgsIG9wdXNf
aW50MzIgKTsKICAgICBBTExPQyggZGVsYXllZEdhaW5fUTEwLCBERUNJU0lPTl9ERUxBWSwgb3B1
c19pbnQzMiApOwpAQCAtMTk5LDcgKzIwMSw3IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAog
ICAgIGZvciggayA9IDA7IGsgPCBwc0VuY0MtPm5iX3N1YmZyOyBrKysgKSB7CiAgICAgICAgIEFf
UTEyICAgICAgPSAmUHJlZENvZWZfUTEyWyAoICggayA+PiAxICkgfCAoIDEgLSBMU0ZfaW50ZXJw
b2xhdGlvbl9mbGFnICkgKSAqIE1BWF9MUENfT1JERVIgXTsKICAgICAgICAgQl9RMTQgICAgICA9
ICZMVFBDb2VmX1ExNFsgayAqIExUUF9PUkRFUiAgICAgICAgICAgXTsKLSAgICAgICAgQVJfc2hw
X1ExMyA9ICZBUjJfUTEzWyAgICAgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKKyAgICAgICAg
QVJfc2hwX1ExMyA9ICZBUl9RMTNbICAgICBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwogCiAg
ICAgICAgIC8qIE5vaXNlIHNoYXBlIHBhcmFtZXRlcnMgKi8KICAgICAgICAgc2lsa19hc3NlcnQo
IEhhcm1TaGFwZUdhaW5fUTE0WyBrIF0gPj0gMCApOwpAQCAtMjM1LDcgKzIzNyw4IEBAIHZvaWQg
c2lsa19OU1FfZGVsX2RlY19jKAogICAgICAgICAgICAgICAgICAgICBwc0REID0gJnBzRGVsRGVj
WyBXaW5uZXJfaW5kIF07CiAgICAgICAgICAgICAgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gc21w
bF9idWZfaWR4ICsgZGVjaXNpb25EZWxheTsKICAgICAgICAgICAgICAgICAgICAgZm9yKCBpID0g
MDsgaSA8IGRlY2lzaW9uRGVsYXk7IGkrKyApIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGxh
c3Rfc21wbGVfaWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAmIERFQ0lTSU9OX0RFTEFZX01B
U0s7CisgICAgICAgICAgICAgICAgICAgICAgICBsYXN0X3NtcGxlX2lkeCA9ICggbGFzdF9zbXBs
ZV9pZHggLSAxICkgJSBERUNJU0lPTl9ERUxBWTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlm
KCBsYXN0X3NtcGxlX2lkeCA8IDAgKSBsYXN0X3NtcGxlX2lkeCArPSBERUNJU0lPTl9ERUxBWTsK
ICAgICAgICAgICAgICAgICAgICAgICAgIHB1bHNlc1sgICBpIC0gZGVjaXNpb25EZWxheSBdID0g
KG9wdXNfaW50OClzaWxrX1JTSElGVF9ST1VORCggcHNERC0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4
IF0sIDEwICk7CiAgICAgICAgICAgICAgICAgICAgICAgICBweHFbIGkgLSBkZWNpc2lvbkRlbGF5
IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCgKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBzaWxrX1NNVUxXVyggcHNERC0+WHFfUTE0WyBsYXN0X3NtcGxl
X2lkeCBdLCBHYWluc19RMTZbIDEgXSApLCAxNCApICk7CkBAIC0yNTcsNyArMjYwLDcgQEAgdm9p
ZCBzaWxrX05TUV9kZWxfZGVjX2MoCiAgICAgICAgICAgICB9CiAgICAgICAgIH0KIAotICAgICAg
ICBzaWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlcyggcHNFbmNDLCBOU1EsIHBzRGVsRGVjLCB4
X1EzLCB4X3NjX1ExMCwgc0xUUCwgc0xUUF9RMTUsIGssCisgICAgICAgIHNpbGtfbnNxX2RlbF9k
ZWNfc2NhbGVfc3RhdGVzKCBwc0VuY0MsIE5TUSwgcHNEZWxEZWMsIHgxNiwgeF9zY19RMTAsIHNM
VFAsIHNMVFBfUTE1LCBrLAogICAgICAgICAgICAgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lz
aW9uLCBMVFBfc2NhbGVfUTE0LCBHYWluc19RMTYsIHBpdGNoTCwgcHNJbmRpY2VzLT5zaWduYWxU
eXBlLCBkZWNpc2lvbkRlbGF5ICk7CiAKICAgICAgICAgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6
ZXJfZGVsX2RlYyggTlNRLCBwc0RlbERlYywgcHNJbmRpY2VzLT5zaWduYWxUeXBlLCB4X3NjX1Ex
MCwgcHVsc2VzLCBweHEsIHNMVFBfUTE1LApAQCAtMjY1LDcgKzI2OCw3IEBAIHZvaWQgc2lsa19O
U1FfZGVsX2RlY19jKAogICAgICAgICAgICAgR2FpbnNfUTE2WyBrIF0sIExhbWJkYV9RMTAsIG9m
ZnNldF9RMTAsIHBzRW5jQy0+c3ViZnJfbGVuZ3RoLCBzdWJmcisrLCBwc0VuY0MtPnNoYXBpbmdM
UENPcmRlciwKICAgICAgICAgICAgIHBzRW5jQy0+cHJlZGljdExQQ09yZGVyLCBwc0VuY0MtPndh
cnBpbmdfUTE2LCBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24sICZzbXBsX2J1Zl9pZHgs
IGRlY2lzaW9uRGVsYXksIHBzRW5jQy0+YXJjaCApOwogCi0gICAgICAgIHhfUTMgICArPSBwc0Vu
Y0MtPnN1YmZyX2xlbmd0aDsKKyAgICAgICAgeDE2ICAgICs9IHBzRW5jQy0+c3ViZnJfbGVuZ3Ro
OwogICAgICAgICBwdWxzZXMgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7CiAgICAgICAgIHB4cSAg
ICArPSBwc0VuY0MtPnN1YmZyX2xlbmd0aDsKICAgICB9CkBAIC0yODYsNyArMjg5LDkgQEAgdm9p
ZCBzaWxrX05TUV9kZWxfZGVjX2MoCiAgICAgbGFzdF9zbXBsZV9pZHggPSBzbXBsX2J1Zl9pZHgg
KyBkZWNpc2lvbkRlbGF5OwogICAgIEdhaW5fUTEwID0gc2lsa19SU0hJRlQzMiggR2FpbnNfUTE2
WyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBdLCA2ICk7CiAgICAgZm9yKCBpID0gMDsgaSA8IGRlY2lz
aW9uRGVsYXk7IGkrKyApIHsKLSAgICAgICAgbGFzdF9zbXBsZV9pZHggPSAoIGxhc3Rfc21wbGVf
aWR4IC0gMSApICYgREVDSVNJT05fREVMQVlfTUFTSzsKKyAgICAgICAgbGFzdF9zbXBsZV9pZHgg
PSAoIGxhc3Rfc21wbGVfaWR4IC0gMSApICUgREVDSVNJT05fREVMQVk7CisgICAgICAgIGlmKCBs
YXN0X3NtcGxlX2lkeCA8IDAgKSBsYXN0X3NtcGxlX2lkeCArPSBERUNJU0lPTl9ERUxBWTsKKwog
ICAgICAgICBwdWxzZXNbICAgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDgpc2lsa19S
U0hJRlRfUk9VTkQoIHBzREQtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCBdLCAxMCApOwogICAgICAg
ICBweHFbIGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxr
X1JTSElGVF9ST1VORCgKICAgICAgICAgICAgIHNpbGtfU01VTFdXKCBwc0RELT5YcV9RMTRbIGxh
c3Rfc21wbGVfaWR4IF0sIEdhaW5fUTEwICksIDggKSApOwpAQCAtMjk3LDEwICszMDIsMTAgQEAg
dm9pZCBzaWxrX05TUV9kZWxfZGVjX2MoCiAKICAgICAvKiBVcGRhdGUgc3RhdGVzICovCiAgICAg
TlNRLT5zTEZfQVJfc2hwX1ExNCA9IHBzREQtPkxGX0FSX1ExNDsKKyAgICBOU1EtPnNEaWZmX3No
cF9RMTQgID0gcHNERC0+RGlmZl9RMTQ7CiAgICAgTlNRLT5sYWdQcmV2ICAgICAgICA9IHBpdGNo
TFsgcHNFbmNDLT5uYl9zdWJmciAtIDEgXTsKIAogICAgIC8qIFNhdmUgcXVhbnRpemVkIHNwZWVj
aCBzaWduYWwgKi8KLSAgICAvKiBERUJVR19TVE9SRV9EQVRBKCBlbmMucGNtLCAmTlNRLT54cVtw
c0VuY0MtPmx0cF9tZW1fbGVuZ3RoXSwgcHNFbmNDLT5mcmFtZV9sZW5ndGggKiBzaXplb2YoIG9w
dXNfaW50MTYgKSApICovCiAgICAgc2lsa19tZW1tb3ZlKCBOU1EtPnhxLCAgICAgICAgICAgJk5T
US0+eHFbICAgICAgICAgICBwc0VuY0MtPmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1f
bGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKICAgICBzaWxrX21lbW1vdmUoIE5TUS0+
c0xUUF9zaHBfUTE0LCAmTlNRLT5zTFRQX3NocF9RMTRbIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoIF0s
IHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOwogICAgIFJF
U1RPUkVfU1RBQ0s7CkBAIC0zMzUsNyArMzQwLDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlYygKICAgICBvcHVzX2ludCAgICAgICAg
ICAgIHByZWRpY3RMUENPcmRlciwgICAgICAgIC8qIEkgICAgUHJlZGljdGlvbiBmaWx0ZXIgb3Jk
ZXIgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgIHdhcnBpbmdfUTE2LCAg
ICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
ICAgICBvcHVzX2ludCAgICAgICAgICAgIG5TdGF0ZXNEZWxheWVkRGVjaXNpb24sIC8qIEkgICAg
TnVtYmVyIG9mIHN0YXRlcyBpbiBkZWNpc2lvbiB0cmVlICAgKi8KLSAgICBvcHVzX2ludCAgICAg
ICAgICAgICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkgICAgSW5kZXggdG8gbmV3ZXN0IHNh
bXBsZXMgaW4gYnVmZmVycyAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9p
ZHgsICAgICAgICAgIC8qIEkvTyAgSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAg
Ki8KICAgICBvcHVzX2ludCAgICAgICAgICAgIGRlY2lzaW9uRGVsYXksICAgICAgICAgIC8qIEkg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBpbnQgICAgICAg
ICAgICAgICAgIGFyY2ggICAgICAgICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KICkKQEAgLTM4OSw3ICszOTQsNyBAQCBzdGF0aWMgT1BV
U19JTkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgICAg
ICAvKiBMb25nLXRlcm0gc2hhcGluZyAqLwogICAgICAgICBpZiggbGFnID4gMCApIHsKICAgICAg
ICAgICAgIC8qIFN5bW1ldHJpYywgcGFja2VkIEZJUiBjb2VmZmljaWVudHMgKi8KLSAgICAgICAg
ICAgIG5fTFRQX1ExNCA9IHNpbGtfU01VTFdCKCBzaWxrX0FERDMyKCBzaHBfbGFnX3B0clsgMCBd
LCBzaHBfbGFnX3B0clsgLTIgXSApLCBIYXJtU2hhcGVGSVJQYWNrZWRfUTE0ICk7CisgICAgICAg
ICAgICBuX0xUUF9RMTQgPSBzaWxrX1NNVUxXQiggc2lsa19BRERfU0FUMzIoIHNocF9sYWdfcHRy
WyAwIF0sIHNocF9sYWdfcHRyWyAtMiBdICksIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQgKTsKICAg
ICAgICAgICAgIG5fTFRQX1ExNCA9IHNpbGtfU01MQVdUKCBuX0xUUF9RMTQsIHNocF9sYWdfcHRy
WyAtMSBdLCAgICAgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVGSVJQYWNrZWRfUTE0ICk7CiAg
ICAgICAgICAgICBuX0xUUF9RMTQgPSBzaWxrX1NVQl9MU0hJRlQzMiggTFRQX3ByZWRfUTE0LCBu
X0xUUF9RMTQsIDIgKTsgICAgICAgICAgICAvKiBRMTIgLT4gUTE0ICovCiAgICAgICAgICAgICBz
aHBfbGFnX3B0cisrOwpAQCAtNDE2LDcgKzQyMSw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lk
IHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWMoCiAgICAgICAgICAgICAvKiBOb2lz
ZSBzaGFwZSBmZWVkYmFjayAqLwogICAgICAgICAgICAgc2lsa19hc3NlcnQoICggc2hhcGluZ0xQ
Q09yZGVyICYgMSApID09IDAgKTsgICAvKiBjaGVjayB0aGF0IG9yZGVyIGlzIGV2ZW4gKi8KICAg
ICAgICAgICAgIC8qIE91dHB1dCBvZiBsb3dwYXNzIHNlY3Rpb24gKi8KLSAgICAgICAgICAgIHRt
cDIgPSBzaWxrX1NNTEFXQiggcHNMUENfUTE0WyAwIF0sIHBzREQtPnNBUjJfUTE0WyAwIF0sIHdh
cnBpbmdfUTE2ICk7CisgICAgICAgICAgICB0bXAyID0gc2lsa19TTUxBV0IoIHBzREQtPkRpZmZf
UTE0LCBwc0RELT5zQVIyX1ExNFsgMCBdLCB3YXJwaW5nX1ExNiApOwogICAgICAgICAgICAgLyog
T3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwogICAgICAgICAgICAgdG1wMSA9IHNpbGtfU01M
QVdCKCBwc0RELT5zQVIyX1ExNFsgMCBdLCBwc0RELT5zQVIyX1ExNFsgMSBdIC0gdG1wMiwgd2Fy
cGluZ19RMTYgKTsKICAgICAgICAgICAgIHBzREQtPnNBUjJfUTE0WyAwIF0gPSB0bXAyOwpAQCAt
NDYyLDYgKzQ2NywxOSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBl
X3F1YW50aXplcl9kZWxfZGVjKAogICAgICAgICAgICAgLyogRmluZCB0d28gcXVhbnRpemF0aW9u
IGxldmVsIGNhbmRpZGF0ZXMgYW5kIG1lYXN1cmUgdGhlaXIgcmF0ZS1kaXN0b3J0aW9uICovCiAg
ICAgICAgICAgICBxMV9RMTAgPSBzaWxrX1NVQjMyKCByX1ExMCwgb2Zmc2V0X1ExMCApOwogICAg
ICAgICAgICAgcTFfUTAgPSBzaWxrX1JTSElGVCggcTFfUTEwLCAxMCApOworICAgICAgICAgICAg
aWYgKExhbWJkYV9RMTAgPiAyMDQ4KSB7CisgICAgICAgICAgICAgICAgLyogRm9yIGFnZ3Jlc3Np
dmUgUkRPLCB0aGUgYmlhcyBiZWNvbWVzIG1vcmUgdGhhbiBvbmUgcHVsc2UuICovCisgICAgICAg
ICAgICAgICAgaW50IHJkb19vZmZzZXQgPSBMYW1iZGFfUTEwLzIgLSA1MTI7CisgICAgICAgICAg
ICAgICAgaWYgKHExX1ExMCA+IHJkb19vZmZzZXQpIHsKKyAgICAgICAgICAgICAgICAgICAgcTFf
UTAgPSBzaWxrX1JTSElGVCggcTFfUTEwIC0gcmRvX29mZnNldCwgMTAgKTsKKyAgICAgICAgICAg
ICAgICB9IGVsc2UgaWYgKHExX1ExMCA8IC1yZG9fb2Zmc2V0KSB7CisgICAgICAgICAgICAgICAg
ICAgIHExX1EwID0gc2lsa19SU0hJRlQoIHExX1ExMCArIHJkb19vZmZzZXQsIDEwICk7CisgICAg
ICAgICAgICAgICAgfSBlbHNlIGlmIChxMV9RMTAgPCAwKSB7CisgICAgICAgICAgICAgICAgICAg
IHExX1EwID0gLTE7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAg
ICAgcTFfUTAgPSAwOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIGlmKCBxMV9RMCA+IDAgKSB7CiAgICAgICAgICAgICAgICAgcTFfUTEwICA9IHNpbGtfU1VC
MzIoIHNpbGtfTFNISUZUKCBxMV9RMCwgMTAgKSwgUVVBTlRfTEVWRUxfQURKVVNUX1ExMCApOwog
ICAgICAgICAgICAgICAgIHExX1ExMCAgPSBzaWxrX0FERDMyKCBxMV9RMTAsIG9mZnNldF9RMTAg
KTsKQEAgLTUxNSw3ICs1MzMsOCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25vaXNl
X3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgICAgICAgICAgeHFfUTE0ICAgICAgPSBzaWxr
X0FERDMyKCBMUENfZXhjX1ExNCwgTFBDX3ByZWRfUTE0ICk7CiAKICAgICAgICAgICAgIC8qIFVw
ZGF0ZSBzdGF0ZXMgKi8KLSAgICAgICAgICAgIHNMRl9BUl9zaHBfUTE0ICAgICAgICAgPSBzaWxr
X1NVQjMyKCB4cV9RMTQsIG5fQVJfUTE0ICk7CisgICAgICAgICAgICBwc1NTWyAwIF0uRGlmZl9R
MTQgICAgID0gc2lsa19TVUJfTFNISUZUMzIoIHhxX1ExNCwgeF9RMTBbIGkgXSwgNCApOworICAg
ICAgICAgICAgc0xGX0FSX3NocF9RMTQgICAgICAgICA9IHNpbGtfU1VCMzIoIHBzU1NbIDAgXS5E
aWZmX1ExNCwgbl9BUl9RMTQgKTsKICAgICAgICAgICAgIHBzU1NbIDAgXS5zTFRQX3NocF9RMTQg
PSBzaWxrX1NVQjMyKCBzTEZfQVJfc2hwX1ExNCwgbl9MRl9RMTQgKTsKICAgICAgICAgICAgIHBz
U1NbIDAgXS5MRl9BUl9RMTQgICAgPSBzTEZfQVJfc2hwX1ExNDsKICAgICAgICAgICAgIHBzU1Nb
IDAgXS5MUENfZXhjX1ExNCAgPSBMUENfZXhjX1ExNDsKQEAgLTUyOSwyMSArNTQ4LDIyIEBAIHN0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWMo
CiAgICAgICAgICAgICAgICAgZXhjX1ExNCA9IC1leGNfUTE0OwogICAgICAgICAgICAgfQogCi0K
ICAgICAgICAgICAgIC8qIEFkZCBwcmVkaWN0aW9ucyAqLwogICAgICAgICAgICAgTFBDX2V4Y19R
MTQgPSBzaWxrX0FERDMyKCBleGNfUTE0LCBMVFBfcHJlZF9RMTQgKTsKICAgICAgICAgICAgIHhx
X1ExNCAgICAgID0gc2lsa19BREQzMiggTFBDX2V4Y19RMTQsIExQQ19wcmVkX1ExNCApOwogCiAg
ICAgICAgICAgICAvKiBVcGRhdGUgc3RhdGVzICovCi0gICAgICAgICAgICBzTEZfQVJfc2hwX1Ex
NCAgICAgICAgID0gc2lsa19TVUIzMiggeHFfUTE0LCBuX0FSX1ExNCApOworICAgICAgICAgICAg
cHNTU1sgMSBdLkRpZmZfUTE0ICAgICA9IHNpbGtfU1VCX0xTSElGVDMyKCB4cV9RMTQsIHhfUTEw
WyBpIF0sIDQgKTsKKyAgICAgICAgICAgIHNMRl9BUl9zaHBfUTE0ICAgICAgICAgPSBzaWxrX1NV
QjMyKCBwc1NTWyAxIF0uRGlmZl9RMTQsIG5fQVJfUTE0ICk7CiAgICAgICAgICAgICBwc1NTWyAx
IF0uc0xUUF9zaHBfUTE0ID0gc2lsa19TVUIzMiggc0xGX0FSX3NocF9RMTQsIG5fTEZfUTE0ICk7
CiAgICAgICAgICAgICBwc1NTWyAxIF0uTEZfQVJfUTE0ICAgID0gc0xGX0FSX3NocF9RMTQ7CiAg
ICAgICAgICAgICBwc1NTWyAxIF0uTFBDX2V4Y19RMTQgID0gTFBDX2V4Y19RMTQ7CiAgICAgICAg
ICAgICBwc1NTWyAxIF0ueHFfUTE0ICAgICAgID0geHFfUTE0OwogICAgICAgICB9CiAKLSAgICAg
ICAgKnNtcGxfYnVmX2lkeCAgPSAoICpzbXBsX2J1Zl9pZHggLSAxICkgJiBERUNJU0lPTl9ERUxB
WV9NQVNLOyAgICAgICAgICAgICAgICAgICAvKiBJbmRleCB0byBuZXdlc3Qgc2FtcGxlcyAgICAg
ICAgICAgICAgKi8KLSAgICAgICAgbGFzdF9zbXBsZV9pZHggPSAoICpzbXBsX2J1Zl9pZHggKyBk
ZWNpc2lvbkRlbGF5ICkgJiBERUNJU0lPTl9ERUxBWV9NQVNLOyAgICAgICAvKiBJbmRleCB0byBk
ZWNpc2lvbkRlbGF5IG9sZCBzYW1wbGVzICAgKi8KKyAgICAgICAgKnNtcGxfYnVmX2lkeCAgPSAo
ICpzbXBsX2J1Zl9pZHggLSAxICkgJSBERUNJU0lPTl9ERUxBWTsKKyAgICAgICAgaWYoICpzbXBs
X2J1Zl9pZHggPCAwICkgKnNtcGxfYnVmX2lkeCArPSBERUNJU0lPTl9ERUxBWTsKKyAgICAgICAg
bGFzdF9zbXBsZV9pZHggPSAoICpzbXBsX2J1Zl9pZHggKyBkZWNpc2lvbkRlbGF5ICkgJSBERUNJ
U0lPTl9ERUxBWTsKIAogICAgICAgICAvKiBGaW5kIHdpbm5lciAqLwogICAgICAgICBSRG1pbl9R
MTAgPSBwc1NhbXBsZVN0YXRlWyAwIF1bIDAgXS5SRF9RMTA7CkBAIC02MDcsNiArNjI3LDcgQEAg
c3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2Rl
YygKICAgICAgICAgICAgIHBzREQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PSAmcHNEZWxEZWNbIGsgXTsKICAgICAgICAgICAgIHBzU1MgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPSAmcHNTYW1wbGVTdGF0ZVsgayBdWyAwIF07CiAgICAgICAgICAgICBw
c0RELT5MRl9BUl9RMTQgICAgICAgICAgICAgICAgICAgICAgICAgID0gcHNTUy0+TEZfQVJfUTE0
OworICAgICAgICAgICAgcHNERC0+RGlmZl9RMTQgICAgICAgICAgICAgICAgICAgICAgICAgICA9
IHBzU1MtPkRpZmZfUTE0OwogICAgICAgICAgICAgcHNERC0+c0xQQ19RMTRbIE5TUV9MUENfQlVG
X0xFTkdUSCArIGkgXSA9IHBzU1MtPnhxX1ExNDsKICAgICAgICAgICAgIHBzREQtPlhxX1ExNFsg
ICAgKnNtcGxfYnVmX2lkeCBdICAgICAgICAgPSBwc1NTLT54cV9RMTQ7CiAgICAgICAgICAgICBw
c0RELT5RX1ExMFsgICAgICpzbXBsX2J1Zl9pZHggXSAgICAgICAgID0gcHNTUy0+UV9RMTA7CkBA
IC02MzEsNyArNjUyLDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3FfZGVsX2Rl
Y19zY2FsZV9zdGF0ZXMoCiAgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICpwc0VuY0MsICAg
ICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICAgICAq
LwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBOU1FfZGVs
X2RlY19zdHJ1Y3QgIHBzRGVsRGVjW10sICAgICAgICAgICAgICAgICAvKiBJL08gIERlbGF5ZWQg
ZGVjaXNpb24gc3RhdGVzICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICB4
X1EzW10sICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBpbiBRMyAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgeDE2W10sICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICAgICBvcHVzX2ludDMyICAgICAgICAgIHhfc2NfUTEwW10sICAgICAgICAgICAgICAgICAv
KiBPICAgIElucHV0IHNjYWxlZCB3aXRoIDEvR2FpbiBpbiBRMTAgICAgICovCiAgICAgY29uc3Qg
b3B1c19pbnQxNiAgICBzTFRQW10sICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSZS13aGl0
ZW5lZCBMVFAgc3RhdGUgaW4gUTAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAg
c0xUUF9RMTVbXSwgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIHN0YXRlIG1hdGNoaW5nIHNj
YWxlZCBpbnB1dCAgICAgKi8KQEAgLTY0NSwyOSArNjY2LDE5IEBAIHN0YXRpYyBPUFVTX0lOTElO
RSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVfc3RhdGVzKAogKQogewogICAgIG9wdXNfaW50
ICAgICAgICAgICAgaSwgaywgbGFnOwotICAgIG9wdXNfaW50MzIgICAgICAgICAgZ2Fpbl9hZGpf
UTE2LCBpbnZfZ2Fpbl9RMzEsIGludl9nYWluX1EyMzsKKyAgICBvcHVzX2ludDMyICAgICAgICAg
IGdhaW5fYWRqX1ExNiwgaW52X2dhaW5fUTMxLCBpbnZfZ2Fpbl9RMjY7CiAgICAgTlNRX2RlbF9k
ZWNfc3RydWN0ICAqcHNERDsKIAogICAgIGxhZyAgICAgICAgICA9IHBpdGNoTFsgc3ViZnIgXTsK
ICAgICBpbnZfZ2Fpbl9RMzEgPSBzaWxrX0lOVkVSU0UzMl92YXJRKCBzaWxrX21heCggR2FpbnNf
UTE2WyBzdWJmciBdLCAxICksIDQ3ICk7CiAgICAgc2lsa19hc3NlcnQoIGludl9nYWluX1EzMSAh
PSAwICk7CiAKLSAgICAvKiBDYWxjdWxhdGUgZ2FpbiBhZGp1c3RtZW50IGZhY3RvciAqLwotICAg
IGlmKCBHYWluc19RMTZbIHN1YmZyIF0gIT0gTlNRLT5wcmV2X2dhaW5fUTE2ICkgewotICAgICAg
ICBnYWluX2Fkal9RMTYgPSAgc2lsa19ESVYzMl92YXJRKCBOU1EtPnByZXZfZ2Fpbl9RMTYsIEdh
aW5zX1ExNlsgc3ViZnIgXSwgMTYgKTsKLSAgICB9IGVsc2UgewotICAgICAgICBnYWluX2Fkal9R
MTYgPSAob3B1c19pbnQzMikxIDw8IDE2OwotICAgIH0KLQogICAgIC8qIFNjYWxlIGlucHV0ICov
Ci0gICAgaW52X2dhaW5fUTIzID0gc2lsa19SU0hJRlRfUk9VTkQoIGludl9nYWluX1EzMSwgOCAp
OworICAgIGludl9nYWluX1EyNiA9IHNpbGtfUlNISUZUX1JPVU5EKCBpbnZfZ2Fpbl9RMzEsIDUg
KTsKICAgICBmb3IoIGkgPSAwOyBpIDwgcHNFbmNDLT5zdWJmcl9sZW5ndGg7IGkrKyApIHsKLSAg
ICAgICAgeF9zY19RMTBbIGkgXSA9IHNpbGtfU01VTFdXKCB4X1EzWyBpIF0sIGludl9nYWluX1Ey
MyApOworICAgICAgICB4X3NjX1ExMFsgaSBdID0gc2lsa19TTVVMV1coIHgxNlsgaSBdLCBpbnZf
Z2Fpbl9RMjYgKTsKICAgICB9CiAKLSAgICAvKiBTYXZlIGludmVyc2UgZ2FpbiAqLwotICAgIE5T
US0+cHJldl9nYWluX1ExNiA9IEdhaW5zX1ExNlsgc3ViZnIgXTsKLQogICAgIC8qIEFmdGVyIHJl
d2hpdGVuaW5nIHRoZSBMVFAgc3RhdGUgaXMgdW4tc2NhbGVkLCBzbyBzY2FsZSB3aXRoIGludl9n
YWluX1ExNiAqLwogICAgIGlmKCBOU1EtPnJld2hpdGVfZmxhZyApIHsKICAgICAgICAgaWYoIHN1
YmZyID09IDAgKSB7CkBAIC02ODEsNyArNjkyLDkgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19uc3FfZGVsX2RlY19zY2FsZV9zdGF0ZXMoCiAgICAgfQogCiAgICAgLyogQWRqdXN0IGZv
ciBjaGFuZ2luZyBnYWluICovCi0gICAgaWYoIGdhaW5fYWRqX1ExNiAhPSAob3B1c19pbnQzMikx
IDw8IDE2ICkgeworICAgIGlmKCBHYWluc19RMTZbIHN1YmZyIF0gIT0gTlNRLT5wcmV2X2dhaW5f
UTE2ICkgeworICAgICAgICBnYWluX2Fkal9RMTYgPSAgc2lsa19ESVYzMl92YXJRKCBOU1EtPnBy
ZXZfZ2Fpbl9RMTYsIEdhaW5zX1ExNlsgc3ViZnIgXSwgMTYgKTsKKwogICAgICAgICAvKiBTY2Fs
ZSBsb25nLXRlcm0gc2hhcGluZyBzdGF0ZSAqLwogICAgICAgICBmb3IoIGkgPSBOU1EtPnNMVFBf
c2hwX2J1Zl9pZHggLSBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoOyBpIDwgTlNRLT5zTFRQX3NocF9i
dWZfaWR4OyBpKysgKSB7CiAgICAgICAgICAgICBOU1EtPnNMVFBfc2hwX1ExNFsgaSBdID0gc2ls
a19TTVVMV1coIGdhaW5fYWRqX1ExNiwgTlNRLT5zTFRQX3NocF9RMTRbIGkgXSApOwpAQCAtNjk5
LDYgKzcxMiw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2Nh
bGVfc3RhdGVzKAogCiAgICAgICAgICAgICAvKiBTY2FsZSBzY2FsYXIgc3RhdGVzICovCiAgICAg
ICAgICAgICBwc0RELT5MRl9BUl9RMTQgPSBzaWxrX1NNVUxXVyggZ2Fpbl9hZGpfUTE2LCBwc0RE
LT5MRl9BUl9RMTQgKTsKKyAgICAgICAgICAgIHBzREQtPkRpZmZfUTE0ID0gc2lsa19TTVVMV1co
IGdhaW5fYWRqX1ExNiwgcHNERC0+RGlmZl9RMTQgKTsKIAogICAgICAgICAgICAgLyogU2NhbGUg
c2hvcnQtdGVybSBwcmVkaWN0aW9uIGFuZCBzaGFwaW5nIHN0YXRlcyAqLwogICAgICAgICAgICAg
Zm9yKCBpID0gMDsgaSA8IE5TUV9MUENfQlVGX0xFTkdUSDsgaSsrICkgewpAQCAtNzEyLDUgKzcy
Niw4IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVfc3Rh
dGVzKAogICAgICAgICAgICAgICAgIHBzREQtPlNoYXBlX1ExNFsgaSBdID0gc2lsa19TTVVMV1co
IGdhaW5fYWRqX1ExNiwgcHNERC0+U2hhcGVfUTE0WyBpIF0gKTsKICAgICAgICAgICAgIH0KICAg
ICAgICAgfQorCisgICAgICAgIC8qIFNhdmUgaW52ZXJzZSBnYWluICovCisgICAgICAgIE5TUS0+
cHJldl9nYWluX1ExNiA9IEdhaW5zX1ExNlsgc3ViZnIgXTsKICAgICB9CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvUExDLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvUExDLmMKaW5kZXggZmI2ZWE4ODdiN2VlMjU0YjFiODU4YTZhNTJi
YzU4NDVlMGQ1NzM4ZC4uYTNlNTVlYTc2NWVmNGY0YjA3MTkwMTU1NWQzM2QwM2MwNjMzZWFlMiAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL1BMQy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9QTEMuYwpAQCAtMjc1LDcgKzI3NSw3IEBA
IHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfUExDX2NvbmNlYWwoCiAgICAgICAgICAgICAv
KiBSZWR1Y2UgcmFuZG9tIG5vaXNlIGZvciB1bnZvaWNlZCBmcmFtZXMgd2l0aCBoaWdoIExQQyBn
YWluICovCiAgICAgICAgICAgICBvcHVzX2ludDMyIGludkdhaW5fUTMwLCBkb3duX3NjYWxlX1Ez
MDsKIAotICAgICAgICAgICAgaW52R2Fpbl9RMzAgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fp
biggcHNQTEMtPnByZXZMUENfUTEyLCBwc0RlYy0+TFBDX29yZGVyICk7CisgICAgICAgICAgICBp
bnZHYWluX1EzMCA9IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKCBwc1BMQy0+cHJldkxQQ19R
MTIsIHBzRGVjLT5MUENfb3JkZXIsIGFyY2ggKTsKIAogICAgICAgICAgICAgZG93bl9zY2FsZV9R
MzAgPSBzaWxrX21pbl8zMiggc2lsa19SU0hJRlQoIChvcHVzX2ludDMyKTEgPDwgMzAsIExPRzJf
SU5WX0xQQ19HQUlOX0hJR0hfVEhSRVMgKSwgaW52R2Fpbl9RMzAgKTsKICAgICAgICAgICAgIGRv
d25fc2NhbGVfUTMwID0gc2lsa19tYXhfMzIoIHNpbGtfUlNISUZUKCAob3B1c19pbnQzMikxIDw8
IDMwLCBMT0cyX0lOVl9MUENfR0FJTl9MT1dfVEhSRVMgKSwgZG93bl9zY2FsZV9RMzAgKTsKQEAg
LTMyOCw4ICszMjgsMTAgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19QTENfY29uY2Vh
bCgKICAgICAgICAgZm9yKCBqID0gMDsgaiA8IExUUF9PUkRFUjsgaisrICkgewogICAgICAgICAg
ICAgQl9RMTRbIGogXSA9IHNpbGtfUlNISUZUKCBzaWxrX1NNVUxCQiggaGFybV9HYWluX1ExNSwg
Ql9RMTRbIGogXSApLCAxNSApOwogICAgICAgICB9Ci0gICAgICAgIC8qIEdyYWR1YWxseSByZWR1
Y2UgZXhjaXRhdGlvbiBnYWluICovCi0gICAgICAgIHJhbmRfc2NhbGVfUTE0ID0gc2lsa19SU0hJ
RlQoIHNpbGtfU01VTEJCKCByYW5kX3NjYWxlX1ExNCwgcmFuZF9HYWluX1ExNSApLCAxNSApOwor
ICAgICAgICBpZiAoIHBzRGVjLT5pbmRpY2VzLnNpZ25hbFR5cGUgIT0gVFlQRV9OT19WT0lDRV9B
Q1RJVklUWSApIHsKKyAgICAgICAgICAgIC8qIEdyYWR1YWxseSByZWR1Y2UgZXhjaXRhdGlvbiBn
YWluICovCisgICAgICAgICAgICByYW5kX3NjYWxlX1ExNCA9IHNpbGtfUlNISUZUKCBzaWxrX1NN
VUxCQiggcmFuZF9zY2FsZV9RMTQsIHJhbmRfR2Fpbl9RMTUgKSwgMTUgKTsKKyAgICAgICAgfQog
CiAgICAgICAgIC8qIFNsb3dseSBpbmNyZWFzZSBwaXRjaCBsYWcgKi8KICAgICAgICAgcHNQTEMt
PnBpdGNoTF9ROCA9IHNpbGtfU01MQVdCKCBwc1BMQy0+cGl0Y2hMX1E4LCBwc1BMQy0+cGl0Y2hM
X1E4LCBQSVRDSF9EUklGVF9GQUNfUTE2ICk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvU2lnUHJvY19GSVgu
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9TaWdQcm9jX0ZJWC5oCmluZGV4IGI2MzI5OTQ0MWU5MzBhMzg1ZTk3ZWY5YzEzZDU3
NTVjYzBmOWM0MTMuLmY5YWUzMjYzMjZkMzFhODFjZGY5YzRmZjJiYjVhYTgyN2E0ZWJhYzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9TaWdQcm9jX0ZJWC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9TaWdQcm9jX0ZJWC5oCkBAIC0z
NSw3ICszNSw3IEBAIGV4dGVybiAiQyIKIAogLyojZGVmaW5lIHNpbGtfTUFDUk9fQ09VTlQgKi8g
ICAgICAgICAgLyogVXNlZCB0byBlbmFibGUgV01PUFMgY291bnRpbmcgKi8KIAotI2RlZmluZSBT
SUxLX01BWF9PUkRFUl9MUEMgICAgICAgICAgICAxNiAgICAgICAgICAgIC8qIG1heCBvcmRlciBv
ZiB0aGUgTFBDIGFuYWx5c2lzIGluIHNjaHVyKCkgYW5kIGsyYSgpICovCisjZGVmaW5lIFNJTEtf
TUFYX09SREVSX0xQQyAgICAgICAgICAgIDI0ICAgICAgICAgICAgLyogbWF4IG9yZGVyIG9mIHRo
ZSBMUEMgYW5hbHlzaXMgaW4gc2NodXIoKSBhbmQgazJhKCkgKi8KIAogI2luY2x1ZGUgPHN0cmlu
Zy5oPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGZvciBtZW1zZXQoKSwgbWVt
Y3B5KCksIG1lbW1vdmUoKSAqLwogI2luY2x1ZGUgInR5cGVkZWYuaCIKQEAgLTQ3LDYgKzQ3LDEx
IEBAIGV4dGVybiAiQyIKICNpbmNsdWRlICJ4ODYvU2lnUHJvY19GSVhfc3NlLmgiCiAjZW5kaWYK
IAorI2lmIChkZWZpbmVkKE9QVVNfQVJNX0FTTSkgfHwgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFW
RV9ORU9OX0lOVFIpKQorI2luY2x1ZGUgImFybS9iaXF1YWRfYWx0X2FybS5oIgorI2luY2x1ZGUg
ImFybS9MUENfaW52X3ByZWRfZ2Fpbl9hcm0uaCIKKyNlbmRpZgorCiAvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAv
KiAgICAgICAgICAgICAgICAgICAgU0lHTkFMIFBST0NFU1NJTkcgRlVOQ1RJT05TICAgICAgICAg
ICAgICAgICAgICovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC05NiwxNCArMTAxLDIyIEBAIHZvaWQgc2ls
a19yZXNhbXBsZXJfZG93bjJfMygKICAqIHNsb3dlciB0aGFuIGJpcXVhZCgpIGJ1dCB1c2VzIG1v
cmUgcHJlY2lzZSBjb2VmZmljaWVudHMKICAqIGNhbiBoYW5kbGUgKHNsb3dseSkgdmFyeWluZyBj
b2VmZmljaWVudHMKICAqLwotdm9pZCBzaWxrX2JpcXVhZF9hbHQoCit2b2lkIHNpbGtfYmlxdWFk
X2FsdF9zdHJpZGUxKAogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqaW4sICAgICAg
ICAgICAgICAgIC8qIEkgICAgIGlucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAg
KkJfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBNQSBjb2VmZmljaWVudHMgWzNdICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgICAgICAgICpBX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgQVIgY29lZmZpY2llbnRzIFsy
XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50
MzIgICAgICAgICAgICAgICAgICAqUywgICAgICAgICAgICAgICAgIC8qIEkvTyAgIFN0YXRlIHZl
Y3RvciBbMl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAg
ICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKm91dCwgICAgICAgICAgICAgICAvKiBPICAg
ICBvdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxlbiwgICAgICAgICAgICAg
ICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBzdHJpZGUg
ICAgICAgICAgICAgIC8qIEkgICAgIE9wZXJhdGUgb24gaW50ZXJsZWF2ZWQgc2lnbmFsIGlmID4g
MSAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAg
ICAgbGVuICAgICAgICAgICAgICAgICAvKiBJICAgICBzaWduYWwgbGVuZ3RoIChtdXN0IGJlIGV2
ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCispOworCit2b2lkIHNpbGtfYmlx
dWFkX2FsdF9zdHJpZGUyX2MoCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICppbiwg
ICAgICAgICAgICAgICAgLyogSSAgICAgaW5wdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAg
ICAgICAqQl9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIE1BIGNvZWZmaWNpZW50cyBbM10gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dDMyICAgICAgICAgICAgKkFfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBBUiBjb2VmZmljaWVu
dHMgWzJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1
c19pbnQzMiAgICAgICAgICAgICAgICAgICpTLCAgICAgICAgICAgICAgICAgLyogSS9PICAgU3Rh
dGUgdmVjdG9yIFs0XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqb3V0LCAgICAgICAgICAgICAgIC8q
IE8gICAgIG91dHB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgbGVuICAgICAgICAg
ICAgICAgICAvKiBJICAgICBzaWduYWwgbGVuZ3RoIChtdXN0IGJlIGV2ZW4pICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCiApOwogCiAvKiBWYXJpYWJsZSBvcmRlciBNQSBwcmVkaWN0
aW9uIGVycm9yIGZpbHRlci4gKi8KQEAgLTEzMiwxNyArMTQ1LDExIEBAIHZvaWQgc2lsa19id2V4
cGFuZGVyXzMyKAogCiAvKiBDb21wdXRlIGludmVyc2Ugb2YgTFBDIHByZWRpY3Rpb24gZ2Fpbiwg
YW5kICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KIC8qIHRlc3QgaWYgTFBDIGNvZWZmaWNp
ZW50cyBhcmUgc3RhYmxlIChhbGwgcG9sZXMgd2l0aGluIHVuaXQgY2lyY2xlKSAgICAqLwotb3B1
c19pbnQzMiBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbiggICAgICAgICAgICAgIC8qIE8gICBS
ZXR1cm5zIGludmVyc2UgcHJlZGljdGlvbiBnYWluIGluIGVuZXJneSBkb21haW4sIFEzMCAgICAg
ICAgKi8KK29wdXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fYyggICAgICAgICAg
ICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWlu
LCBRMzAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICpBX1ExMiwg
ICAgICAgICAgICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRzLCBRMTIgW29yZGVyXSAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBvcmRlciAgICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIG9yZGVyICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKLS8qIEZvciBpbnB1dCBp
biBRMjQgZG9tYWluICovCi1vcHVzX2ludDMyIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX1Ey
NCggICAgICAgICAgLyogTyAgICBSZXR1cm5zIGludmVyc2UgcHJlZGljdGlvbiBnYWluIGluIGVu
ZXJneSBkb21haW4sIFEzMCAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAg
ICAqQV9RMjQsICAgICAgICAgICAgIC8qIEkgICAgUHJlZGljdGlvbiBjb2VmZmljaWVudHMgW29y
ZGVyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgIFByZWRpY3Rpb24gb3JkZXIg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pOwotCiAvKiBT
cGxpdCBzaWduYWwgaW4gdHdvIGRlY2ltYXRlZCBiYW5kcyB1c2luZyBmaXJzdC1vcmRlciBhbGxw
YXNzIGZpbHRlcnMgKi8KIHZvaWQgc2lsa19hbmFfZmlsdF9iYW5rXzEoCiAgICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgICppbiwgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWdu
YWwgW05dICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAt
MTUyLDYgKzE1OSwxNCBAQCB2b2lkIHNpbGtfYW5hX2ZpbHRfYmFua18xKAogICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICBOICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9m
IGlucHV0IHNhbXBsZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7
CiAKKyNpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX2JpcXVhZF9hbHRfc3RyaWRlMikKKyNkZWZp
bmUgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTIoaW4sIEJfUTI4LCBBX1EyOCwgUywgb3V0LCBsZW4s
IGFyY2gpICgodm9pZCkoYXJjaCksIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyX2MoaW4sIEJfUTI4
LCBBX1EyOCwgUywgb3V0LCBsZW4pKQorI2VuZGlmCisKKyNpZiAhZGVmaW5lZChPVkVSUklERV9z
aWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbikKKyNkZWZpbmUgc2lsa19MUENfaW52ZXJzZV9wcmVk
X2dhaW4oQV9RMTIsIG9yZGVyLCBhcmNoKSAgICAgKCh2b2lkKShhcmNoKSwgc2lsa19MUENfaW52
ZXJzZV9wcmVkX2dhaW5fYyhBX1ExMiwgb3JkZXIpKQorI2VuZGlmCisKIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8K
IC8qICAgICAgICAgICAgICAgICAgICAgICAgU0NBTEFSIEZVTkNUSU9OUyAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KQEAgLTI3MSw3ICsyODYsMTcgQEAgdm9pZCBz
aWxrX0EyTkxTRigKIHZvaWQgc2lsa19OTFNGMkEoCiAgICAgb3B1c19pbnQxNiAgICAgICAgICAg
ICAgICAgICphX1ExMiwgICAgICAgICAgICAgLyogTyAgICBtb25pYyB3aGl0ZW5pbmcgZmlsdGVy
IGNvZWZmaWNpZW50cyBpbiBRMTIsICBbIGQgXSAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50MTYgICAgICAgICAgICAqTkxTRiwgICAgICAgICAgICAgIC8qIEkgICAgbm9ybWFsaXplZCBs
aW5lIHNwZWN0cmFsIGZyZXF1ZW5jaWVzIGluIFExNSwgWyBkIF0gICAgICAgICAgKi8KLSAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAvKiBJICAgIGZp
bHRlciBvcmRlciAoc2hvdWxkIGJlIGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGQsICAgICAgICAgICAgICAgICAg
LyogSSAgICBmaWx0ZXIgb3JkZXIgKHNob3VsZCBiZSBldmVuKSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAg
ICAgICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyk7CisKKy8qIENvbnZlcnQgaW50MzIgY29lZmZpY2ll
bnRzIHRvIGludDE2IGNvZWZzIGFuZCBtYWtlIHN1cmUgdGhlcmUncyBubyB3cmFwLWFyb3VuZCAq
Lwordm9pZCBzaWxrX0xQQ19maXQoCisgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICph
X1FPVVQsICAgICAgICAgICAgLyogTyAgICBPdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAg
ICAgICAgICAqYV9RSU4sICAgICAgICAgICAgIC8qIEkvTyAgSW5wdXQgc2lnbmFsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVz
X2ludCAgICAgICAgICAgICAgUU9VVCwgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IFEgZG9t
YWluICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
Y29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIFFJTiwgICAgICAgICAgICAgICAgLyogSSAgICBJ
bnB1dCBRIGRvbWFpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgRmlsdGVyIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICk7CiAKIHZvaWQgc2lsa19pbnNlcnRpb25fc29ydF9pbmNyZWFzaW5n
KApAQCAtNDcxLDggKzQ5Niw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMyIHNpbGtf
Uk9SMzIoIG9wdXNfaW50MzIgYTMyLCBvcHVzX2ludCByb3QgKQogLyogQWRkIHdpdGggc2F0dXJh
dGlvbiBmb3IgcG9zaXRpdmUgaW5wdXQgdmFsdWVzICovCiAjZGVmaW5lIHNpbGtfQUREX1BPU19T
QVQ4KGEsIGIpICAgICAgICAgICAgICgoKChhKSsoYikpICYgMHg4MCkgICAgICAgICAgICAgICAg
ID8gc2lsa19pbnQ4X01BWCAgOiAoKGEpKyhiKSkpCiAjZGVmaW5lIHNpbGtfQUREX1BPU19TQVQx
NihhLCBiKSAgICAgICAgICAgICgoKChhKSsoYikpICYgMHg4MDAwKSAgICAgICAgICAgICAgID8g
c2lsa19pbnQxNl9NQVggOiAoKGEpKyhiKSkpCi0jZGVmaW5lIHNpbGtfQUREX1BPU19TQVQzMihh
LCBiKSAgICAgICAgICAgICgoKChhKSsoYikpICYgMHg4MDAwMDAwMCkgICAgICAgICAgID8gc2ls
a19pbnQzMl9NQVggOiAoKGEpKyhiKSkpCi0jZGVmaW5lIHNpbGtfQUREX1BPU19TQVQ2NChhLCBi
KSAgICAgICAgICAgICgoKChhKSsoYikpICYgMHg4MDAwMDAwMDAwMDAwMDAwTEwpID8gc2lsa19p
bnQ2NF9NQVggOiAoKGEpKyhiKSkpCisjZGVmaW5lIHNpbGtfQUREX1BPU19TQVQzMihhLCBiKSAg
ICAgICAgICAgICgoKChvcHVzX3VpbnQzMikoYSkrKG9wdXNfdWludDMyKShiKSkgJiAweDgwMDAw
MDAwKSA/IHNpbGtfaW50MzJfTUFYIDogKChhKSsoYikpKQogCiAjZGVmaW5lIHNpbGtfTFNISUZU
OChhLCBzaGlmdCkgICAgICAgICAgICAgICgob3B1c19pbnQ4KSgob3B1c191aW50OCkoYSk8PChz
aGlmdCkpKSAgICAgICAgIC8qIHNoaWZ0ID49IDAsIHNoaWZ0IDwgOCAgKi8KICNkZWZpbmUgc2ls
a19MU0hJRlQxNihhLCBzaGlmdCkgICAgICAgICAgICAgKChvcHVzX2ludDE2KSgob3B1c191aW50
MTYpKGEpPDwoc2hpZnQpKSkgICAgICAgLyogc2hpZnQgPj0gMCwgc2hpZnQgPCAxNiAqLwpAQCAt
NTcyLDcgKzU5Niw5IEBAIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDY0IHNpbGtfbWF4XzY0
KG9wdXNfaW50NjQgYSwgb3B1c19pbnQ2NCBiKQogLyogTWFrZSBzdXJlIHRvIHN0b3JlIHRoZSBy
ZXN1bHQgYXMgdGhlIHNlZWQgZm9yIHRoZSBuZXh0IGNhbGwgKGFsc28gaW4gYmV0d2VlbiAgICAg
Ki8KIC8qIGZyYW1lcyksIG90aGVyd2lzZSByZXN1bHQgd29uJ3QgYmUgcmFuZG9tIGF0IGFsbC4g
V2hlbiBvbmx5IHVzaW5nIHNvbWUgb2YgdGhlICAgICovCiAvKiBiaXRzLCB0YWtlIHRoZSBtb3N0
IHNpZ25pZmljYW50IGJpdHMgYnkgcmlnaHQtc2hpZnRpbmcuICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotI2RlZmluZSBzaWxrX1JBTkQoc2VlZCkgICAgICAgICAgICAgICAgICAgICAoc2ls
a19NTEFfb3ZmbHcoOTA3NjMzNTE1LCAoc2VlZCksIDE5NjMxNDE2NSkpCisjZGVmaW5lIFJBTkRf
TVVMVElQTElFUiAgICAgICAgICAgICAgICAgICAgIDE5NjMxNDE2NQorI2RlZmluZSBSQU5EX0lO
Q1JFTUVOVCAgICAgICAgICAgICAgICAgICAgICA5MDc2MzM1MTUKKyNkZWZpbmUgc2lsa19SQU5E
KHNlZWQpICAgICAgICAgICAgICAgICAgICAgKHNpbGtfTUxBX292Zmx3KChSQU5EX0lOQ1JFTUVO
VCksIChzZWVkKSwgKFJBTkRfTVVMVElQTElFUikpKQogCiAvKiAgQWRkIHNvbWUgbXVsdGlwbGlj
YXRpb24gZnVuY3Rpb25zIHRoYXQgY2FuIGJlIGVhc2lseSBtYXBwZWQgdG8gQVJNLiAqLwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvVlFfV01hdF9FQy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1ZRX1dNYXRfRUMuYwppbmRleCA3OTgz
ZjFkYjgwY2NjZWNhNThiZDdhNzYyZWE5MDU0Y2ZhNTRiNmI5Li4wZjNkNTQ1YzRlZjhjMTMzZWU1
MTUzMzZlMTljMTZmYTYyNzJkYmUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvVlFfV01hdF9FQy5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9WUV9XTWF0X0VDLmMKQEAgLTM0LDg0ICszNCw5NSBAQCBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KIC8qIEVudHJvcHkgY29uc3RyYWluZWQgbWF0cml4LXdlaWdodGVkIFZRLCBoYXJk
LWNvZGVkIHRvIDUtZWxlbWVudCB2ZWN0b3JzLCBmb3IgYSBzaW5nbGUgaW5wdXQgZGF0YSB2ZWN0
b3IgKi8KIHZvaWQgc2lsa19WUV9XTWF0X0VDX2MoCiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAg
ICAgICAgICppbmQsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBpbmRleCBvZiBi
ZXN0IGNvZGVib29rIHZlY3RvciAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAg
ICAgICAgICAgICAgICpyYXRlX2Rpc3RfUTE0LCAgICAgICAgICAgICAgICAgLyogTyAgICBiZXN0
IHdlaWdodGVkIHF1YW50IGVycm9yICsgbXUgKiByYXRlICAgICAgICovCisgICAgb3B1c19pbnQz
MiAgICAgICAgICAgICAgICAgICpyZXNfbnJnX1ExNSwgICAgICAgICAgICAgICAgICAgLyogTyAg
ICBiZXN0IHJlc2lkdWFsIGVuZXJneSAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1
c19pbnQzMiAgICAgICAgICAgICAgICAgICpyYXRlX2Rpc3RfUTgsICAgICAgICAgICAgICAgICAg
LyogTyAgICBiZXN0IHRvdGFsIGJpdHJhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICpnYWluX1E3LCAgICAgICAgICAgICAgICAg
ICAgICAgLyogTyAgICBzdW0gb2YgYWJzb2x1dGUgTFRQIGNvZWZmaWNpZW50cyAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICppbl9RMTQsICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBpbnB1dCB2ZWN0b3IgdG8gYmUgcXVhbnRpemVkICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpXX1ExOCwgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICB3ZWlnaHRpbmcgbWF0cml4ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpYWF9RMTcs
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb3JyZWxhdGlvbiBtYXRyaXggICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICp4
WF9RMTcsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb3JyZWxhdGlvbiB2ZWN0b3Ig
ICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQ4ICAgICAgICAg
ICAgICpjYl9RNywgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb2RlYm9vayAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c191aW50OCAg
ICAgICAgICAgICpjYl9nYWluX1E3LCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb2RlYm9v
ayBlZmZlY3RpdmUgZ2FpbiAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c191
aW50OCAgICAgICAgICAgICpjbF9RNSwgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBj
b2RlIGxlbmd0aCBmb3IgZWFjaCBjb2RlYm9vayB2ZWN0b3IgICAgICAgICovCi0gICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgIG11X1E5LCAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICB0cmFkZW9mZiBiZXR3LiB3ZWlnaHRlZCBlcnJvciBhbmQgcmF0ZSAgICAgICovCisgICAg
Y29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHN1YmZyX2xlbiwgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBudW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3ViZnJhbWUgICAgICAgICAgICAgICov
CiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIG1heF9nYWluX1E3LCAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBtYXhpbXVtIHN1bSBvZiBhYnNvbHV0ZSBMVFAgY29lZmZpY2llbnRz
ICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIEwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2YgdmVjdG9ycyBpbiBjb2RlYm9vayAgICAg
ICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIEwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2YgdmVjdG9ycyBpbiBjb2RlYm9v
ayAgICAgICAgICAgICAgICovCiApCiB7CiAgICAgb3B1c19pbnQgICBrLCBnYWluX3RtcF9RNzsK
ICAgICBjb25zdCBvcHVzX2ludDggKmNiX3Jvd19RNzsKLSAgICBvcHVzX2ludDE2IGRpZmZfUTE0
WyA1IF07Ci0gICAgb3B1c19pbnQzMiBzdW0xX1ExNCwgc3VtMl9RMTY7CisgICAgb3B1c19pbnQz
MiBuZWdfeFhfUTI0WyA1IF07CisgICAgb3B1c19pbnQzMiBzdW0xX1ExNSwgc3VtMl9RMjQ7Cisg
ICAgb3B1c19pbnQzMiBiaXRzX3Jlc19ROCwgYml0c190b3RfUTg7CisKKyAgICAvKiBOZWdhdGUg
YW5kIGNvbnZlcnQgdG8gbmV3IFEgZG9tYWluICovCisgICAgbmVnX3hYX1EyNFsgMCBdID0gLXNp
bGtfTFNISUZUMzIoIHhYX1ExN1sgMCBdLCA3ICk7CisgICAgbmVnX3hYX1EyNFsgMSBdID0gLXNp
bGtfTFNISUZUMzIoIHhYX1ExN1sgMSBdLCA3ICk7CisgICAgbmVnX3hYX1EyNFsgMiBdID0gLXNp
bGtfTFNISUZUMzIoIHhYX1ExN1sgMiBdLCA3ICk7CisgICAgbmVnX3hYX1EyNFsgMyBdID0gLXNp
bGtfTFNISUZUMzIoIHhYX1ExN1sgMyBdLCA3ICk7CisgICAgbmVnX3hYX1EyNFsgNCBdID0gLXNp
bGtfTFNISUZUMzIoIHhYX1ExN1sgNCBdLCA3ICk7CiAKICAgICAvKiBMb29wIG92ZXIgY29kZWJv
b2sgKi8KLSAgICAqcmF0ZV9kaXN0X1ExNCA9IHNpbGtfaW50MzJfTUFYOworICAgICpyYXRlX2Rp
c3RfUTggPSBzaWxrX2ludDMyX01BWDsKKyAgICAqcmVzX25yZ19RMTUgPSBzaWxrX2ludDMyX01B
WDsKICAgICBjYl9yb3dfUTcgPSBjYl9RNzsKKyAgICAvKiBJbiB0aGluZ3MgZ28gcmVhbGx5IGJh
ZCwgYXQgbGVhc3QgKmluZCBpcyBzZXQgdG8gc29tZXRoaW5nIHNhZmUuICovCisgICAgKmluZCA9
IDA7CiAgICAgZm9yKCBrID0gMDsgayA8IEw7IGsrKyApIHsKKyAgICAgICAgb3B1c19pbnQzMiBw
ZW5hbHR5OwogICAgICAgICBnYWluX3RtcF9RNyA9IGNiX2dhaW5fUTdba107Ci0KLSAgICAgICAg
ZGlmZl9RMTRbIDAgXSA9IGluX1ExNFsgMCBdIC0gc2lsa19MU0hJRlQoIGNiX3Jvd19RN1sgMCBd
LCA3ICk7Ci0gICAgICAgIGRpZmZfUTE0WyAxIF0gPSBpbl9RMTRbIDEgXSAtIHNpbGtfTFNISUZU
KCBjYl9yb3dfUTdbIDEgXSwgNyApOwotICAgICAgICBkaWZmX1ExNFsgMiBdID0gaW5fUTE0WyAy
IF0gLSBzaWxrX0xTSElGVCggY2Jfcm93X1E3WyAyIF0sIDcgKTsKLSAgICAgICAgZGlmZl9RMTRb
IDMgXSA9IGluX1ExNFsgMyBdIC0gc2lsa19MU0hJRlQoIGNiX3Jvd19RN1sgMyBdLCA3ICk7Ci0g
ICAgICAgIGRpZmZfUTE0WyA0IF0gPSBpbl9RMTRbIDQgXSAtIHNpbGtfTFNISUZUKCBjYl9yb3df
UTdbIDQgXSwgNyApOwotCiAgICAgICAgIC8qIFdlaWdodGVkIHJhdGUgKi8KLSAgICAgICAgc3Vt
MV9RMTQgPSBzaWxrX1NNVUxCQiggbXVfUTksIGNsX1E1WyBrIF0gKTsKKyAgICAgICAgLyogUXVh
bnRpemF0aW9uIGVycm9yOiAxIC0gMiAqIHhYICogY2IgKyBjYicgKiBYWCAqIGNiICovCisgICAg
ICAgIHN1bTFfUTE1ID0gU0lMS19GSVhfQ09OU1QoIDEuMDAxLCAxNSApOwogCiAgICAgICAgIC8q
IFBlbmFsdHkgZm9yIHRvbyBsYXJnZSBnYWluICovCi0gICAgICAgIHN1bTFfUTE0ID0gc2lsa19B
RERfTFNISUZUMzIoIHN1bTFfUTE0LCBzaWxrX21heCggc2lsa19TVUIzMiggZ2Fpbl90bXBfUTcs
IG1heF9nYWluX1E3ICksIDAgKSwgMTAgKTsKLQotICAgICAgICBzaWxrX2Fzc2VydCggc3VtMV9R
MTQgPj0gMCApOwotCi0gICAgICAgIC8qIGZpcnN0IHJvdyBvZiBXX1ExOCAqLwotICAgICAgICBz
dW0yX1ExNiA9IHNpbGtfU01VTFdCKCAgICAgICAgICAgV19RMThbICAxIF0sIGRpZmZfUTE0WyAx
IF0gKTsKLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdfUTE4WyAg
MiBdLCBkaWZmX1ExNFsgMiBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTUxBV0IoIHN1
bTJfUTE2LCBXX1ExOFsgIDMgXSwgZGlmZl9RMTRbIDMgXSApOwotICAgICAgICBzdW0yX1ExNiA9
IHNpbGtfU01MQVdCKCBzdW0yX1ExNiwgV19RMThbICA0IF0sIGRpZmZfUTE0WyA0IF0gKTsKLSAg
ICAgICAgc3VtMl9RMTYgPSBzaWxrX0xTSElGVCggc3VtMl9RMTYsIDEgKTsKLSAgICAgICAgc3Vt
Ml9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdfUTE4WyAgMCBdLCBkaWZmX1ExNFsgMCBd
ICk7Ci0gICAgICAgIHN1bTFfUTE0ID0gc2lsa19TTUxBV0IoIHN1bTFfUTE0LCBzdW0yX1ExNiwg
ICAgZGlmZl9RMTRbIDAgXSApOwotCi0gICAgICAgIC8qIHNlY29uZCByb3cgb2YgV19RMTggKi8K
LSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNVUxXQiggICAgICAgICAgIFdfUTE4WyAgNyBdLCBk
aWZmX1ExNFsgMiBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTUxBV0IoIHN1bTJfUTE2
LCBXX1ExOFsgIDggXSwgZGlmZl9RMTRbIDMgXSApOwotICAgICAgICBzdW0yX1ExNiA9IHNpbGtf
U01MQVdCKCBzdW0yX1ExNiwgV19RMThbICA5IF0sIGRpZmZfUTE0WyA0IF0gKTsKLSAgICAgICAg
c3VtMl9RMTYgPSBzaWxrX0xTSElGVCggc3VtMl9RMTYsIDEgKTsKLSAgICAgICAgc3VtMl9RMTYg
PSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdfUTE4WyAgNiBdLCBkaWZmX1ExNFsgMSBdICk7Ci0g
ICAgICAgIHN1bTFfUTE0ID0gc2lsa19TTUxBV0IoIHN1bTFfUTE0LCBzdW0yX1ExNiwgICAgZGlm
Zl9RMTRbIDEgXSApOwotCi0gICAgICAgIC8qIHRoaXJkIHJvdyBvZiBXX1ExOCAqLwotICAgICAg
ICBzdW0yX1ExNiA9IHNpbGtfU01VTFdCKCAgICAgICAgICAgV19RMThbIDEzIF0sIGRpZmZfUTE0
WyAzIF0gKTsKLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdfUTE4
WyAxNCBdLCBkaWZmX1ExNFsgNCBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19MU0hJRlQo
IHN1bTJfUTE2LCAxICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTUxBV0IoIHN1bTJfUTE2
LCBXX1ExOFsgMTIgXSwgZGlmZl9RMTRbIDIgXSApOwotICAgICAgICBzdW0xX1ExNCA9IHNpbGtf
U01MQVdCKCBzdW0xX1ExNCwgc3VtMl9RMTYsICAgIGRpZmZfUTE0WyAyIF0gKTsKLQotICAgICAg
ICAvKiBmb3VydGggcm93IG9mIFdfUTE4ICovCi0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTVVM
V0IoICAgICAgICAgICBXX1ExOFsgMTkgXSwgZGlmZl9RMTRbIDQgXSApOwotICAgICAgICBzdW0y
X1ExNiA9IHNpbGtfTFNISUZUKCBzdW0yX1ExNiwgMSApOwotICAgICAgICBzdW0yX1ExNiA9IHNp
bGtfU01MQVdCKCBzdW0yX1ExNiwgV19RMThbIDE4IF0sIGRpZmZfUTE0WyAzIF0gKTsKLSAgICAg
ICAgc3VtMV9RMTQgPSBzaWxrX1NNTEFXQiggc3VtMV9RMTQsIHN1bTJfUTE2LCAgICBkaWZmX1Ex
NFsgMyBdICk7Ci0KLSAgICAgICAgLyogbGFzdCByb3cgb2YgV19RMTggKi8KLSAgICAgICAgc3Vt
Ml9RMTYgPSBzaWxrX1NNVUxXQiggICAgICAgICAgIFdfUTE4WyAyNCBdLCBkaWZmX1ExNFsgNCBd
ICk7Ci0gICAgICAgIHN1bTFfUTE0ID0gc2lsa19TTUxBV0IoIHN1bTFfUTE0LCBzdW0yX1ExNiwg
ICAgZGlmZl9RMTRbIDQgXSApOwotCi0gICAgICAgIHNpbGtfYXNzZXJ0KCBzdW0xX1ExNCA+PSAw
ICk7CisgICAgICAgIHBlbmFsdHkgPSBzaWxrX0xTSElGVDMyKCBzaWxrX21heCggc2lsa19TVUIz
MiggZ2Fpbl90bXBfUTcsIG1heF9nYWluX1E3ICksIDAgKSwgMTEgKTsKKworICAgICAgICAvKiBm
aXJzdCByb3cgb2YgWFhfUTE3ICovCisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIG5lZ194
WF9RMjRbIDAgXSwgWFhfUTE3WyAgMSBdLCBjYl9yb3dfUTdbIDEgXSApOworICAgICAgICBzdW0y
X1EyNCA9IHNpbGtfTUxBKCBzdW0yX1EyNCwgICAgICAgIFhYX1ExN1sgIDIgXSwgY2Jfcm93X1E3
WyAyIF0gKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggc3VtMl9RMjQsICAgICAgICBY
WF9RMTdbICAzIF0sIGNiX3Jvd19RN1sgMyBdICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19N
TEEoIHN1bTJfUTI0LCAgICAgICAgWFhfUTE3WyAgNCBdLCBjYl9yb3dfUTdbIDQgXSApOworICAg
ICAgICBzdW0yX1EyNCA9IHNpbGtfTFNISUZUMzIoIHN1bTJfUTI0LCAxICk7CisgICAgICAgIHN1
bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJfUTI0LCAgICAgICAgWFhfUTE3WyAgMCBdLCBjYl9yb3df
UTdbIDAgXSApOworICAgICAgICBzdW0xX1ExNSA9IHNpbGtfU01MQVdCKCBzdW0xX1ExNSwgICAg
ICAgIHN1bTJfUTI0LCAgY2Jfcm93X1E3WyAwIF0gKTsKKworICAgICAgICAvKiBzZWNvbmQgcm93
IG9mIFhYX1ExNyAqLworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBuZWdfeFhfUTI0WyAx
IF0sIFhYX1ExN1sgIDcgXSwgY2Jfcm93X1E3WyAyIF0gKTsKKyAgICAgICAgc3VtMl9RMjQgPSBz
aWxrX01MQSggc3VtMl9RMjQsICAgICAgICBYWF9RMTdbICA4IF0sIGNiX3Jvd19RN1sgMyBdICk7
CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJfUTI0LCAgICAgICAgWFhfUTE3WyAg
OSBdLCBjYl9yb3dfUTdbIDQgXSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTFNISUZUMzIo
IHN1bTJfUTI0LCAxICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJfUTI0LCAg
ICAgICAgWFhfUTE3WyAgNiBdLCBjYl9yb3dfUTdbIDEgXSApOworICAgICAgICBzdW0xX1ExNSA9
IHNpbGtfU01MQVdCKCBzdW0xX1ExNSwgICAgICAgIHN1bTJfUTI0LCAgY2Jfcm93X1E3WyAxIF0g
KTsKKworICAgICAgICAvKiB0aGlyZCByb3cgb2YgWFhfUTE3ICovCisgICAgICAgIHN1bTJfUTI0
ID0gc2lsa19NTEEoIG5lZ194WF9RMjRbIDIgXSwgWFhfUTE3WyAxMyBdLCBjYl9yb3dfUTdbIDMg
XSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBzdW0yX1EyNCwgICAgICAgIFhYX1Ex
N1sgMTQgXSwgY2Jfcm93X1E3WyA0IF0gKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX0xTSElG
VDMyKCBzdW0yX1EyNCwgMSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBzdW0yX1Ey
NCwgICAgICAgIFhYX1ExN1sgMTIgXSwgY2Jfcm93X1E3WyAyIF0gKTsKKyAgICAgICAgc3VtMV9R
MTUgPSBzaWxrX1NNTEFXQiggc3VtMV9RMTUsICAgICAgICBzdW0yX1EyNCwgIGNiX3Jvd19RN1sg
MiBdICk7CisKKyAgICAgICAgLyogZm91cnRoIHJvdyBvZiBYWF9RMTcgKi8KKyAgICAgICAgc3Vt
Ml9RMjQgPSBzaWxrX01MQSggbmVnX3hYX1EyNFsgMyBdLCBYWF9RMTdbIDE5IF0sIGNiX3Jvd19R
N1sgNCBdICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19MU0hJRlQzMiggc3VtMl9RMjQsIDEg
KTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggc3VtMl9RMjQsICAgICAgICBYWF9RMTdb
IDE4IF0sIGNiX3Jvd19RN1sgMyBdICk7CisgICAgICAgIHN1bTFfUTE1ID0gc2lsa19TTUxBV0Io
IHN1bTFfUTE1LCAgICAgICAgc3VtMl9RMjQsICBjYl9yb3dfUTdbIDMgXSApOworCisgICAgICAg
IC8qIGxhc3Qgcm93IG9mIFhYX1ExNyAqLworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTFNISUZU
MzIoIG5lZ194WF9RMjRbIDQgXSwgMSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBz
dW0yX1EyNCwgICAgICAgIFhYX1ExN1sgMjQgXSwgY2Jfcm93X1E3WyA0IF0gKTsKKyAgICAgICAg
c3VtMV9RMTUgPSBzaWxrX1NNTEFXQiggc3VtMV9RMTUsICAgICAgICBzdW0yX1EyNCwgIGNiX3Jv
d19RN1sgNCBdICk7CiAKICAgICAgICAgLyogZmluZCBiZXN0ICovCi0gICAgICAgIGlmKCBzdW0x
X1ExNCA8ICpyYXRlX2Rpc3RfUTE0ICkgewotICAgICAgICAgICAgKnJhdGVfZGlzdF9RMTQgPSBz
dW0xX1ExNDsKLSAgICAgICAgICAgICppbmQgPSAob3B1c19pbnQ4KWs7Ci0gICAgICAgICAgICAq
Z2Fpbl9RNyA9IGdhaW5fdG1wX1E3OworICAgICAgICBpZiggc3VtMV9RMTUgPj0gMCApIHsKKyAg
ICAgICAgICAgIC8qIFRyYW5zbGF0ZSByZXNpZHVhbCBlbmVyZ3kgdG8gYml0cyB1c2luZyBoaWdo
LXJhdGUgYXNzdW1wdGlvbiAoNiBkQiA9PT4gMSBiaXQvc2FtcGxlKSAqLworICAgICAgICAgICAg
Yml0c19yZXNfUTggPSBzaWxrX1NNVUxCQiggc3ViZnJfbGVuLCBzaWxrX2xpbjJsb2coIHN1bTFf
UTE1ICsgcGVuYWx0eSkgLSAoMTUgPDwgNykgKTsKKyAgICAgICAgICAgIC8qIEluIHRoZSBmb2xs
b3dpbmcgbGluZSB3ZSByZWR1Y2UgdGhlIGNvZGVsZW5ndGggY29tcG9uZW50IGJ5IGhhbGYgKCIt
MSIpOyBzZWVtcyB0byBzbGdodGx5IGltcHJvdmUgcXVhbGl0eSAqLworICAgICAgICAgICAgYml0
c190b3RfUTggPSBzaWxrX0FERF9MU0hJRlQzMiggYml0c19yZXNfUTgsIGNsX1E1WyBrIF0sIDMt
MSApOworICAgICAgICAgICAgaWYoIGJpdHNfdG90X1E4IDw9ICpyYXRlX2Rpc3RfUTggKSB7Cisg
ICAgICAgICAgICAgICAgKnJhdGVfZGlzdF9ROCA9IGJpdHNfdG90X1E4OworICAgICAgICAgICAg
ICAgICpyZXNfbnJnX1ExNSA9IHN1bTFfUTE1ICsgcGVuYWx0eTsKKyAgICAgICAgICAgICAgICAq
aW5kID0gKG9wdXNfaW50OClrOworICAgICAgICAgICAgICAgICpnYWluX1E3ID0gZ2Fpbl90bXBf
UTc7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KIAogICAgICAgICAvKiBHbyB0byBuZXh0IGNi
ayB2ZWN0b3IgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vTFBDX2ludl9wcmVkX2dhaW5fYXJtLmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvYXJtL0xQQ19pbnZfcHJlZF9nYWluX2FybS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk4OTViNTU1Yzg4
NzA1MjBkMDI5MDZmYWFkYjUyZGNmYmJmYmM5NjQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJt
L0xQQ19pbnZfcHJlZF9nYWluX2FybS5oCkBAIC0wLDAgKzEsNTcgQEAKKy8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KgorQ29weXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
YXJlIG1ldDoKKy0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKK25vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKK2RvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCistIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRG
IFRydXN0LCBub3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCitwZXJtaXNzaW9uLgorVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUyAiQVMgSVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJ
QlVUT1JTIEJFCitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SCitDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCitJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCitQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaWZuZGVmIFNJTEtfTFBDX0lO
Vl9QUkVEX0dBSU5fQVJNX0gKKyMgZGVmaW5lIFNJTEtfTFBDX0lOVl9QUkVEX0dBSU5fQVJNX0gK
KworIyBpbmNsdWRlICJjZWx0L2FybS9hcm1jcHUuaCIKKworIyBpZiBkZWZpbmVkKE9QVVNfQVJN
X01BWV9IQVZFX05FT05fSU5UUikKK29wdXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dh
aW5fbmVvbiggICAgICAgICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBp
biBlbmVyZ3kgZG9tYWluLCBRMzAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgICpBX1ExMiwgICAgICAgICAgICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRz
LCBRMTIgW29yZGVyXSAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIG9y
ZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyk7CisK
KyMgIGlmICFkZWZpbmVkKE9QVVNfSEFWRV9SVENEKSAmJiBkZWZpbmVkKE9QVVNfQVJNX1BSRVNV
TUVfTkVPTikKKyMgICBkZWZpbmUgT1ZFUlJJREVfc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4g
ICAgICAgICAgICAoMSkKKyMgICBkZWZpbmUgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4oQV9R
MTIsIG9yZGVyLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBQUkVTVU1FX05FT04oc2lsa19MUENfaW52
ZXJzZV9wcmVkX2dhaW4pKEFfUTEyLCBvcmRlcikpCisjICBlbmRpZgorIyBlbmRpZgorCisjIGlm
ICFkZWZpbmVkKE9WRVJSSURFX3NpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKQorLypJcyBydW4t
dGltZSBDUFUgZGV0ZWN0aW9uIGVuYWJsZWQgb24gdGhpcyBwbGF0Zm9ybT8qLworIyAgaWYgZGVm
aW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgKGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9J
TlRSKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikpCitleHRlcm4gb3B1
c19pbnQzMiAoKmNvbnN0IFNJTEtfTFBDX0lOVkVSU0VfUFJFRF9HQUlOX0lNUExbT1BVU19BUkNI
TUFTSysxXSkoY29uc3Qgb3B1c19pbnQxNiAqQV9RMTIsIGNvbnN0IG9wdXNfaW50IG9yZGVyKTsK
KyMgICBkZWZpbmUgT1ZFUlJJREVfc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4gICAgICAgICAg
ICAoMSkKKyMgICBkZWZpbmUgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4oQV9RMTIsIG9yZGVy
LCBhcmNoKSAoKCpTSUxLX0xQQ19JTlZFUlNFX1BSRURfR0FJTl9JTVBMWyhhcmNoKSZPUFVTX0FS
Q0hNQVNLXSkoQV9RMTIsIG9yZGVyKSkKKyMgIGVsaWYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1F
X05FT05fSU5UUikKKyMgICBkZWZpbmUgT1ZFUlJJREVfc2lsa19MUENfaW52ZXJzZV9wcmVkX2dh
aW4gICAgICAgICAgICAoMSkKKyMgICBkZWZpbmUgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4o
QV9RMTIsIG9yZGVyLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBzaWxrX0xQQ19pbnZlcnNlX3ByZWRf
Z2Fpbl9uZW9uKEFfUTEyLCBvcmRlcikpCisjICBlbmRpZgorIyBlbmRpZgorCisjZW5kaWYgLyog
ZW5kIFNJTEtfTFBDX0lOVl9QUkVEX0dBSU5fQVJNX0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0v
TFBDX2ludl9wcmVkX2dhaW5fbmVvbl9pbnRyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL0xQQ19pbnZfcHJlZF9nYWlu
X25lb25faW50ci5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI3MTQyZjM0Y2ViZTY5NDY1MDZjOThjN2M4MGVkNzA2
ZTYwNzM4YmUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL0xQQ19pbnZfcHJlZF9nYWluX25l
b25faW50ci5jCkBAIC0wLDAgKzEsMjgwIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK0NvcHlyaWdodCAo
YykgMjAxNyBHb29nbGUgSW5jLgorUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVy
IHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRo
ZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNl
IG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVybWlzc2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgor
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KKworI2lmZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJj
b25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVkZSA8YXJtX25lb24uaD4KKyNpbmNsdWRlICJTaWdQ
cm9jX0ZJWC5oIgorI2luY2x1ZGUgImRlZmluZS5oIgorCisjZGVmaW5lIFFBICAgICAgICAgICAg
ICAgICAgICAgICAgICAyNAorI2RlZmluZSBBX0xJTUlUICAgICAgICAgICAgICAgICAgICAgU0lM
S19GSVhfQ09OU1QoIDAuOTk5NzUsIFFBICkKKworI2RlZmluZSBNVUwzMl9GUkFDX1EoYTMyLCBi
MzIsIFEpICAgKChvcHVzX2ludDMyKShzaWxrX1JTSElGVF9ST1VORDY0KHNpbGtfU01VTEwoYTMy
LCBiMzIpLCBRKSkpCisKKy8qIFRoZSBkaWZmaWN1bHR5IGlzIGhvdyB0byBqdWRnZSBhIDY0LWJp
dCBzaWduZWQgaW50ZWdlciB0bXA2NCBpcyAzMi1iaXQgb3ZlcmZsb3dlZCwKKyAqIHNpbmNlIE5F
T04gaGFzIG5vIDY0LWJpdCBtaW4sIG1heCBvciBjb21wYXJpc29uIGluc3RydWN0aW9ucy4KKyAq
IEEgZmFpbGVkIGlkZWEgaXMgdG8gY29tcGFyZSB0aGUgcmVzdWx0cyBvZiB2bW92bih0bXA2NCkg
YW5kIHZxbW92bih0bXA2NCkgd2hldGhlciB0aGV5IGFyZSBlcXVhbCBvciBub3QuCisgKiBIb3dl
dmVyLCB0aGlzIGlkZWEgZmFpbHMgd2hlbiB0aGUgdG1wNjQgaXMgc29tZXRoaW5nIGxpa2UgMHhG
RkZGRkZGOTgwMDAwMDAwLgorICogSGVyZSB3ZSBrbm93IHRoYXQgbXVsdDJRID49IDEsIHNvIHRo
ZSBoaWdoZXN0IGJpdCAoYml0IDYzLCBzaWduIGJpdCkgb2YgdG1wNjQgbXVzdCBlcXVhbCB0byBi
aXQgNjIuCisgKiB0bXA2NCB3YXMgc2hpZnRlZCBsZWZ0IGJ5IDEgYW5kIHdlIGdvdCB0bXA2NCcu
IElmIGhpZ2hfaGFsZih0bXA2NCcpICE9IDAgYW5kIGhpZ2hfaGFsZih0bXA2NCcpICE9IC0xLAor
ICogdGhlbiB3ZSBrbm93IHRoYXQgYml0IDMxIHRvIGJpdCA2MyBvZiB0bXA2NCBjYW4gbm90IGFs
bCBiZSB0aGUgc2lnbiBiaXQsIGFuZCB0aGVyZWZvcmUgdG1wNjQgaXMgMzItYml0IG92ZXJmbG93
ZWQuCisgKiBUaGF0IGlzLCB3ZSBqdWRnZSBpZiB0bXA2NCcgPiAweDAwMDAwMDAwRkZGRkZGRkYs
IG9yIHRtcDY0JyA8PSAweEZGRkZGRkZGMDAwMDAwMDAuCisgKiBXZSB1c2UgbmFycm93aW5nIHNo
aWZ0IHJpZ2h0IDMxIGJpdHMgdG8gdG1wMzInIHRvIHNhdmUgZGF0YSBiYW5kd2lkdGggYW5kIGlu
c3RydWN0aW9ucy4KKyAqIFRoYXQgaXMsIHdlIGp1ZGdlIGlmIHRtcDMyJyA+IDB4MDAwMDAwMDAs
IG9yIHRtcDMyJyA8PSAweEZGRkZGRkZGLgorICovCisKKy8qIENvbXB1dGUgaW52ZXJzZSBvZiBM
UEMgcHJlZGljdGlvbiBnYWluLCBhbmQgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKiB0
ZXN0IGlmIExQQyBjb2VmZmljaWVudHMgYXJlIHN0YWJsZSAoYWxsIHBvbGVzIHdpdGhpbiB1bml0
IGNpcmNsZSkgICAqLworc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIgTFBDX2ludmVyc2Vf
cHJlZF9nYWluX1FBX25lb24oIC8qIE8gICBSZXR1cm5zIGludmVyc2UgcHJlZGljdGlvbiBnYWlu
IGluIGVuZXJneSBkb21haW4sIFEzMCAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgIEFf
UUFbIFNJTEtfTUFYX09SREVSX0xQQyBdLCAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIGNvZWZm
aWNpZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICBQ
cmVkaWN0aW9uIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworKQoreworICAgIG9wdXNfaW50ICAgaywgbiwgbXVsdDJROworICAgIG9wdXNfaW50MzIgaW52
R2Fpbl9RMzAsIHJjX1EzMSwgcmNfbXVsdDFfUTMwLCByY19tdWx0MiwgdG1wMSwgdG1wMjsKKyAg
ICBvcHVzX2ludDMyIG1heCwgbWluOworICAgIGludDMyeDRfdCAgbWF4X3MzMng0LCBtaW5fczMy
eDQ7CisgICAgaW50MzJ4Ml90ICBtYXhfczMyeDIsIG1pbl9zMzJ4MjsKKworICAgIG1heF9zMzJ4
NCA9IHZkdXBxX25fczMyKCBzaWxrX2ludDMyX01JTiApOworICAgIG1pbl9zMzJ4NCA9IHZkdXBx
X25fczMyKCBzaWxrX2ludDMyX01BWCApOworICAgIGludkdhaW5fUTMwID0gU0lMS19GSVhfQ09O
U1QoIDEsIDMwICk7CisgICAgZm9yKCBrID0gb3JkZXIgLSAxOyBrID4gMDsgay0tICkgeworICAg
ICAgICBpbnQzMngyX3QgcmNfUTMxX3MzMngyLCByY19tdWx0Ml9zMzJ4MjsKKyAgICAgICAgaW50
NjR4Ml90IG11bHQyUV9zNjR4MjsKKworICAgICAgICAvKiBDaGVjayBmb3Igc3RhYmlsaXR5ICov
CisgICAgICAgIGlmKCAoIEFfUUFbIGsgXSA+IEFfTElNSVQgKSB8fCAoIEFfUUFbIGsgXSA8IC1B
X0xJTUlUICkgKSB7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorCisgICAgICAg
IC8qIFNldCBSQyBlcXVhbCB0byBuZWdhdGVkIEFSIGNvZWYgKi8KKyAgICAgICAgcmNfUTMxID0g
LXNpbGtfTFNISUZUKCBBX1FBWyBrIF0sIDMxIC0gUUEgKTsKKworICAgICAgICAvKiByY19tdWx0
MV9RMzAgcmFuZ2U6IFsgMSA6IDJeMzAgXSAqLworICAgICAgICByY19tdWx0MV9RMzAgPSBzaWxr
X1NVQjMyKCBTSUxLX0ZJWF9DT05TVCggMSwgMzAgKSwgc2lsa19TTU1VTCggcmNfUTMxLCByY19R
MzEgKSApOworICAgICAgICBzaWxrX2Fzc2VydCggcmNfbXVsdDFfUTMwID4gKCAxIDw8IDE1ICkg
KTsgICAgICAgICAgICAgICAgICAgLyogcmVkdWNlIEFfTElNSVQgaWYgZmFpbHMgKi8KKyAgICAg
ICAgc2lsa19hc3NlcnQoIHJjX211bHQxX1EzMCA8PSAoIDEgPDwgMzAgKSApOworCisgICAgICAg
IC8qIFVwZGF0ZSBpbnZlcnNlIGdhaW4gKi8KKyAgICAgICAgLyogaW52R2Fpbl9RMzAgcmFuZ2U6
IFsgMCA6IDJeMzAgXSAqLworICAgICAgICBpbnZHYWluX1EzMCA9IHNpbGtfTFNISUZUKCBzaWxr
X1NNTVVMKCBpbnZHYWluX1EzMCwgcmNfbXVsdDFfUTMwICksIDIgKTsKKyAgICAgICAgc2lsa19h
c3NlcnQoIGludkdhaW5fUTMwID49IDAgICAgICAgICAgICk7CisgICAgICAgIHNpbGtfYXNzZXJ0
KCBpbnZHYWluX1EzMCA8PSAoIDEgPDwgMzAgKSApOworICAgICAgICBpZiggaW52R2Fpbl9RMzAg
PCBTSUxLX0ZJWF9DT05TVCggMS4wZiAvIE1BWF9QUkVESUNUSU9OX1BPV0VSX0dBSU4sIDMwICkg
KSB7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorCisgICAgICAgIC8qIHJjX211
bHQyIHJhbmdlOiBbIDJeMzAgOiBzaWxrX2ludDMyX01BWCBdICovCisgICAgICAgIG11bHQyUSA9
IDMyIC0gc2lsa19DTFozMiggc2lsa19hYnMoIHJjX211bHQxX1EzMCApICk7CisgICAgICAgIHJj
X211bHQyID0gc2lsa19JTlZFUlNFMzJfdmFyUSggcmNfbXVsdDFfUTMwLCBtdWx0MlEgKyAzMCAp
OworCisgICAgICAgIC8qIFVwZGF0ZSBBUiBjb2VmZmljaWVudCAqLworICAgICAgICByY19RMzFf
czMyeDIgICA9IHZkdXBfbl9zMzIoIHJjX1EzMSApOworICAgICAgICBtdWx0MlFfczY0eDIgICA9
IHZkdXBxX25fczY0KCAtbXVsdDJRICk7CisgICAgICAgIHJjX211bHQyX3MzMngyID0gdmR1cF9u
X3MzMiggcmNfbXVsdDIgKTsKKworICAgICAgICBmb3IoIG4gPSAwOyBuIDwgKCAoIGsgKyAxICkg
Pj4gMSApIC0gMzsgbiArPSA0ICkgeworICAgICAgICAgICAgLyogV2UgYWx3YXlzIGNhbGN1bGF0
ZSBleHRyYSBlbGVtZW50cyBvZiBBX1FBIGJ1ZmZlciB3aGVuICggayAlIDQgKSAhPSAwLCB0byB0
YWtlIHRoZSBhZHZhbnRhZ2Ugb2YgU0lNRCBwYXJhbGxlbGl6YXRpb24uICovCisgICAgICAgICAg
ICBpbnQzMng0X3QgdG1wMV9zMzJ4NCwgdG1wMl9zMzJ4NCwgdDBfczMyeDQsIHQxX3MzMng0LCBz
MF9zMzJ4NCwgczFfczMyeDQsIHRfUUEwX3MzMng0LCB0X1FBMV9zMzJ4NDsKKyAgICAgICAgICAg
IGludDY0eDJfdCB0MF9zNjR4MiwgdDFfczY0eDIsIHQyX3M2NHgyLCB0M19zNjR4MjsKKyAgICAg
ICAgICAgIHRtcDFfczMyeDQgID0gdmxkMXFfczMyKCBBX1FBICsgbiApOworICAgICAgICAgICAg
dG1wMl9zMzJ4NCAgPSB2bGQxcV9zMzIoIEFfUUEgKyBrIC0gbiAtIDQgKTsKKyAgICAgICAgICAg
IHRtcDJfczMyeDQgID0gdnJldjY0cV9zMzIoIHRtcDJfczMyeDQgKTsKKyAgICAgICAgICAgIHRt
cDJfczMyeDQgID0gdmNvbWJpbmVfczMyKCB2Z2V0X2hpZ2hfczMyKCB0bXAyX3MzMng0ICksIHZn
ZXRfbG93X3MzMiggdG1wMl9zMzJ4NCApICk7CisgICAgICAgICAgICB0MF9zMzJ4NCAgICA9IHZx
cmRtdWxocV9sYW5lX3MzMiggdG1wMl9zMzJ4NCwgcmNfUTMxX3MzMngyLCAwICk7CisgICAgICAg
ICAgICB0MV9zMzJ4NCAgICA9IHZxcmRtdWxocV9sYW5lX3MzMiggdG1wMV9zMzJ4NCwgcmNfUTMx
X3MzMngyLCAwICk7CisgICAgICAgICAgICB0X1FBMF9zMzJ4NCA9IHZxc3VicV9zMzIoIHRtcDFf
czMyeDQsIHQwX3MzMng0ICk7CisgICAgICAgICAgICB0X1FBMV9zMzJ4NCA9IHZxc3VicV9zMzIo
IHRtcDJfczMyeDQsIHQxX3MzMng0ICk7CisgICAgICAgICAgICB0MF9zNjR4MiAgICA9IHZtdWxs
X3MzMiggdmdldF9sb3dfczMyICggdF9RQTBfczMyeDQgKSwgcmNfbXVsdDJfczMyeDIgKTsKKyAg
ICAgICAgICAgIHQxX3M2NHgyICAgID0gdm11bGxfczMyKCB2Z2V0X2hpZ2hfczMyKCB0X1FBMF9z
MzJ4NCApLCByY19tdWx0Ml9zMzJ4MiApOworICAgICAgICAgICAgdDJfczY0eDIgICAgPSB2bXVs
bF9zMzIoIHZnZXRfbG93X3MzMiAoIHRfUUExX3MzMng0ICksIHJjX211bHQyX3MzMngyICk7Cisg
ICAgICAgICAgICB0M19zNjR4MiAgICA9IHZtdWxsX3MzMiggdmdldF9oaWdoX3MzMiggdF9RQTFf
czMyeDQgKSwgcmNfbXVsdDJfczMyeDIgKTsKKyAgICAgICAgICAgIHQwX3M2NHgyICAgID0gdnJz
aGxxX3M2NCggdDBfczY0eDIsIG11bHQyUV9zNjR4MiApOworICAgICAgICAgICAgdDFfczY0eDIg
ICAgPSB2cnNobHFfczY0KCB0MV9zNjR4MiwgbXVsdDJRX3M2NHgyICk7CisgICAgICAgICAgICB0
Ml9zNjR4MiAgICA9IHZyc2hscV9zNjQoIHQyX3M2NHgyLCBtdWx0MlFfczY0eDIgKTsKKyAgICAg
ICAgICAgIHQzX3M2NHgyICAgID0gdnJzaGxxX3M2NCggdDNfczY0eDIsIG11bHQyUV9zNjR4MiAp
OworICAgICAgICAgICAgdDBfczMyeDQgICAgPSB2Y29tYmluZV9zMzIoIHZtb3ZuX3M2NCggdDBf
czY0eDIgKSwgdm1vdm5fczY0KCB0MV9zNjR4MiApICk7CisgICAgICAgICAgICB0MV9zMzJ4NCAg
ICA9IHZjb21iaW5lX3MzMiggdm1vdm5fczY0KCB0Ml9zNjR4MiApLCB2bW92bl9zNjQoIHQzX3M2
NHgyICkgKTsKKyAgICAgICAgICAgIHMwX3MzMng0ICAgID0gdmNvbWJpbmVfczMyKCB2c2hybl9u
X3M2NCggdDBfczY0eDIsIDMxICksIHZzaHJuX25fczY0KCB0MV9zNjR4MiwgMzEgKSApOworICAg
ICAgICAgICAgczFfczMyeDQgICAgPSB2Y29tYmluZV9zMzIoIHZzaHJuX25fczY0KCB0Ml9zNjR4
MiwgMzEgKSwgdnNocm5fbl9zNjQoIHQzX3M2NHgyLCAzMSApICk7CisgICAgICAgICAgICBtYXhf
czMyeDQgICA9IHZtYXhxX3MzMiggbWF4X3MzMng0LCBzMF9zMzJ4NCApOworICAgICAgICAgICAg
bWluX3MzMng0ICAgPSB2bWlucV9zMzIoIG1pbl9zMzJ4NCwgczBfczMyeDQgKTsKKyAgICAgICAg
ICAgIG1heF9zMzJ4NCAgID0gdm1heHFfczMyKCBtYXhfczMyeDQsIHMxX3MzMng0ICk7CisgICAg
ICAgICAgICBtaW5fczMyeDQgICA9IHZtaW5xX3MzMiggbWluX3MzMng0LCBzMV9zMzJ4NCApOwor
ICAgICAgICAgICAgdDFfczMyeDQgICAgPSB2cmV2NjRxX3MzMiggdDFfczMyeDQgKTsKKyAgICAg
ICAgICAgIHQxX3MzMng0ICAgID0gdmNvbWJpbmVfczMyKCB2Z2V0X2hpZ2hfczMyKCB0MV9zMzJ4
NCApLCB2Z2V0X2xvd19zMzIoIHQxX3MzMng0ICkgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMigg
QV9RQSArIG4sICAgICAgICAgdDBfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggQV9R
QSArIGsgLSBuIC0gNCwgdDFfczMyeDQgKTsKKyAgICAgICAgfQorICAgICAgICBmb3IoIDsgbiA8
IChrICsgMSkgPj4gMTsgbisrICkgeworICAgICAgICAgICAgb3B1c19pbnQ2NCB0bXA2NDsKKyAg
ICAgICAgICAgIHRtcDEgPSBBX1FBWyBuIF07CisgICAgICAgICAgICB0bXAyID0gQV9RQVsgayAt
IG4gLSAxIF07CisgICAgICAgICAgICB0bXA2NCA9IHNpbGtfUlNISUZUX1JPVU5ENjQoIHNpbGtf
U01VTEwoIHNpbGtfU1VCX1NBVDMyKHRtcDEsCisgICAgICAgICAgICAgICAgICBNVUwzMl9GUkFD
X1EoIHRtcDIsIHJjX1EzMSwgMzEgKSApLCByY19tdWx0MiApLCBtdWx0MlEpOworICAgICAgICAg
ICAgaWYoIHRtcDY0ID4gc2lsa19pbnQzMl9NQVggfHwgdG1wNjQgPCBzaWxrX2ludDMyX01JTiAp
IHsKKyAgICAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICAgICAgfQorICAgICAgICAgICAg
QV9RQVsgbiBdID0gKCBvcHVzX2ludDMyICl0bXA2NDsKKyAgICAgICAgICAgIHRtcDY0ID0gc2ls
a19SU0hJRlRfUk9VTkQ2NCggc2lsa19TTVVMTCggc2lsa19TVUJfU0FUMzIodG1wMiwKKyAgICAg
ICAgICAgICAgICAgIE1VTDMyX0ZSQUNfUSggdG1wMSwgcmNfUTMxLCAzMSApICksIHJjX211bHQy
KSwgbXVsdDJRKTsKKyAgICAgICAgICAgIGlmKCB0bXA2NCA+IHNpbGtfaW50MzJfTUFYIHx8IHRt
cDY0IDwgc2lsa19pbnQzMl9NSU4gKSB7CisgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIEFfUUFbIGsgLSBuIC0gMSBdID0gKCBvcHVzX2ludDMyICl0
bXA2NDsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8qIENoZWNrIGZvciBzdGFiaWxpdHkgKi8K
KyAgICBpZiggKCBBX1FBWyBrIF0gPiBBX0xJTUlUICkgfHwgKCBBX1FBWyBrIF0gPCAtQV9MSU1J
VCApICkgeworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBtYXhfczMyeDIgPSB2bWF4
X3MzMiggdmdldF9sb3dfczMyKCBtYXhfczMyeDQgKSwgdmdldF9oaWdoX3MzMiggbWF4X3MzMng0
ICkgKTsKKyAgICBtaW5fczMyeDIgPSB2bWluX3MzMiggdmdldF9sb3dfczMyKCBtaW5fczMyeDQg
KSwgdmdldF9oaWdoX3MzMiggbWluX3MzMng0ICkgKTsKKyAgICBtYXhfczMyeDIgPSB2bWF4X3Mz
MiggbWF4X3MzMngyLCB2cmVpbnRlcnByZXRfczMyX3M2NCggdnNocl9uX3M2NCggdnJlaW50ZXJw
cmV0X3M2NF9zMzIoIG1heF9zMzJ4MiApLCAzMiApICkgKTsKKyAgICBtaW5fczMyeDIgPSB2bWlu
X3MzMiggbWluX3MzMngyLCB2cmVpbnRlcnByZXRfczMyX3M2NCggdnNocl9uX3M2NCggdnJlaW50
ZXJwcmV0X3M2NF9zMzIoIG1pbl9zMzJ4MiApLCAzMiApICkgKTsKKyAgICBtYXggPSB2Z2V0X2xh
bmVfczMyKCBtYXhfczMyeDIsIDAgKTsKKyAgICBtaW4gPSB2Z2V0X2xhbmVfczMyKCBtaW5fczMy
eDIsIDAgKTsKKyAgICBpZiggKCBtYXggPiAwICkgfHwgKCBtaW4gPCAtMSApICkgeworICAgICAg
ICByZXR1cm4gMDsKKyAgICB9CisKKyAgICAvKiBTZXQgUkMgZXF1YWwgdG8gbmVnYXRlZCBBUiBj
b2VmICovCisgICAgcmNfUTMxID0gLXNpbGtfTFNISUZUKCBBX1FBWyAwIF0sIDMxIC0gUUEgKTsK
KworICAgIC8qIFJhbmdlOiBbIDEgOiAyXjMwIF0gKi8KKyAgICByY19tdWx0MV9RMzAgPSBzaWxr
X1NVQjMyKCBTSUxLX0ZJWF9DT05TVCggMSwgMzAgKSwgc2lsa19TTU1VTCggcmNfUTMxLCByY19R
MzEgKSApOworCisgICAgLyogVXBkYXRlIGludmVyc2UgZ2FpbiAqLworICAgIC8qIFJhbmdlOiBb
IDAgOiAyXjMwIF0gKi8KKyAgICBpbnZHYWluX1EzMCA9IHNpbGtfTFNISUZUKCBzaWxrX1NNTVVM
KCBpbnZHYWluX1EzMCwgcmNfbXVsdDFfUTMwICksIDIgKTsKKyAgICBzaWxrX2Fzc2VydCggaW52
R2Fpbl9RMzAgPj0gMCAgICAgICAgICAgKTsKKyAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAg
PD0gKCAxIDw8IDMwICkgKTsKKyAgICBpZiggaW52R2Fpbl9RMzAgPCBTSUxLX0ZJWF9DT05TVCgg
MS4wZiAvIE1BWF9QUkVESUNUSU9OX1BPV0VSX0dBSU4sIDMwICkgKSB7CisgICAgICAgIHJldHVy
biAwOworICAgIH0KKworICAgIHJldHVybiBpbnZHYWluX1EzMDsKK30KKworLyogRm9yIGlucHV0
IGluIFExMiBkb21haW4gKi8KK29wdXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5f
bmVvbiggICAgICAgICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBl
bmVyZ3kgZG9tYWluLCBRMzAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAg
ICAgICpBX1ExMiwgICAgICAgICAgICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRzLCBR
MTIgW29yZGVyXSAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIG9yZGVy
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyNp
ZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIGNvbnN0IG9wdXNfaW50MzIgaW52R2Fpbl9RMzBfYyA9
IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2MoIEFfUTEyLCBvcmRlciApOworI2VuZGlmCisK
KyAgICBvcHVzX2ludDMyIGludkdhaW5fUTMwOworICAgIGlmKCAoIFNJTEtfTUFYX09SREVSX0xQ
QyAhPSAyNCApIHx8ICggb3JkZXIgJiAxICkpIHsKKyAgICAgICAgaW52R2Fpbl9RMzAgPSBzaWxr
X0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9jKCBBX1ExMiwgb3JkZXIgKTsKKyAgICB9CisgICAgZWxz
ZSB7CisgICAgICAgIG9wdXNfaW50MzIgQXRtcF9RQVsgU0lMS19NQVhfT1JERVJfTFBDIF07Cisg
ICAgICAgIG9wdXNfaW50MzIgRENfcmVzcDsKKyAgICAgICAgaW50MTZ4OF90ICB0MF9zMTZ4OCwg
dDFfczE2eDgsIHQyX3MxNng4OworICAgICAgICBpbnQzMng0X3QgIHQwX3MzMng0OworICAgICAg
ICBjb25zdCBvcHVzX2ludCBsZWZ0b3ZlciA9IG9yZGVyICYgNzsKKworICAgICAgICAvKiBJbmNy
ZWFzZSBRIGRvbWFpbiBvZiB0aGUgQVIgY29lZmZpY2llbnRzICovCisgICAgICAgIHQwX3MxNng4
ID0gdmxkMXFfczE2KCBBX1ExMiArICAwICk7CisgICAgICAgIHQxX3MxNng4ID0gdmxkMXFfczE2
KCBBX1ExMiArICA4ICk7CisgICAgICAgIHQyX3MxNng4ID0gdmxkMXFfczE2KCBBX1ExMiArIDE2
ICk7CisgICAgICAgIHQwX3MzMng0ID0gdnBhZGRscV9zMTYoIHQwX3MxNng4ICk7CisKKyAgICAg
ICAgc3dpdGNoKCBvcmRlciAtIGxlZnRvdmVyICkKKyAgICAgICAgeworICAgICAgICBjYXNlIDI0
OgorICAgICAgICAgICAgdDBfczMyeDQgPSB2cGFkYWxxX3MxNiggdDBfczMyeDQsIHQyX3MxNng4
ICk7CisgICAgICAgICAgICAvKiBJbnRlbmQgdG8gZmFsbCB0aHJvdWdoICovCisKKyAgICAgICAg
Y2FzZSAxNjoKKyAgICAgICAgICAgIHQwX3MzMng0ID0gdnBhZGFscV9zMTYoIHQwX3MzMng0LCB0
MV9zMTZ4OCApOworICAgICAgICAgICAgdnN0MXFfczMyKCBBdG1wX1FBICsgMTYsIHZzaGxsX25f
czE2KCB2Z2V0X2xvd19zMTYgKCB0Ml9zMTZ4OCApLCBRQSAtIDEyICkgKTsKKyAgICAgICAgICAg
IHZzdDFxX3MzMiggQXRtcF9RQSArIDIwLCB2c2hsbF9uX3MxNiggdmdldF9oaWdoX3MxNiggdDJf
czE2eDggKSwgUUEgLSAxMiApICk7CisgICAgICAgICAgICAvKiBJbnRlbmQgdG8gZmFsbCB0aHJv
dWdoICovCisKKyAgICAgICAgY2FzZSA4OgorICAgICAgICB7CisgICAgICAgICAgICBjb25zdCBp
bnQzMngyX3QgdF9zMzJ4MiA9IHZwYWRkX3MzMiggdmdldF9sb3dfczMyKCB0MF9zMzJ4NCApLCB2
Z2V0X2hpZ2hfczMyKCB0MF9zMzJ4NCApICk7CisgICAgICAgICAgICBjb25zdCBpbnQ2NHgxX3Qg
dF9zNjR4MSA9IHZwYWRkbF9zMzIoIHRfczMyeDIgKTsKKyAgICAgICAgICAgIERDX3Jlc3AgPSB2
Z2V0X2xhbmVfczMyKCB2cmVpbnRlcnByZXRfczMyX3M2NCggdF9zNjR4MSApLCAwICk7CisgICAg
ICAgICAgICB2c3QxcV9zMzIoIEF0bXBfUUEgKyAgOCwgdnNobGxfbl9zMTYoIHZnZXRfbG93X3Mx
NiAoIHQxX3MxNng4ICksIFFBIC0gMTIgKSApOworICAgICAgICAgICAgdnN0MXFfczMyKCBBdG1w
X1FBICsgMTIsIHZzaGxsX25fczE2KCB2Z2V0X2hpZ2hfczE2KCB0MV9zMTZ4OCApLCBRQSAtIDEy
ICkgKTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKworICAgICAgICBkZWZhdWx0OgorICAg
ICAgICAgICAgRENfcmVzcCA9IDA7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAg
ICAgICBBX1ExMiArPSBvcmRlciAtIGxlZnRvdmVyOworCisgICAgICAgIHN3aXRjaCggbGVmdG92
ZXIgKQorICAgICAgICB7CisgICAgICAgIGNhc2UgNjoKKyAgICAgICAgICAgIERDX3Jlc3AgKz0g
KG9wdXNfaW50MzIpQV9RMTJbIDUgXTsKKyAgICAgICAgICAgIERDX3Jlc3AgKz0gKG9wdXNfaW50
MzIpQV9RMTJbIDQgXTsKKyAgICAgICAgICAgIC8qIEludGVuZCB0byBmYWxsIHRocm91Z2ggKi8K
KworICAgICAgICBjYXNlIDQ6CisgICAgICAgICAgICBEQ19yZXNwICs9IChvcHVzX2ludDMyKUFf
UTEyWyAzIF07CisgICAgICAgICAgICBEQ19yZXNwICs9IChvcHVzX2ludDMyKUFfUTEyWyAyIF07
CisgICAgICAgICAgICAvKiBJbnRlbmQgdG8gZmFsbCB0aHJvdWdoICovCisKKyAgICAgICAgY2Fz
ZSAyOgorICAgICAgICAgICAgRENfcmVzcCArPSAob3B1c19pbnQzMilBX1ExMlsgMSBdOworICAg
ICAgICAgICAgRENfcmVzcCArPSAob3B1c19pbnQzMilBX1ExMlsgMCBdOworICAgICAgICAgICAg
LyogSW50ZW5kIHRvIGZhbGwgdGhyb3VnaCAqLworCisgICAgICAgIGRlZmF1bHQ6CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgfQorCisgICAgICAgIC8qIElmIHRoZSBEQyBpcyB1bnN0YWJs
ZSwgd2UgZG9uJ3QgZXZlbiBuZWVkIHRvIGRvIHRoZSBmdWxsIGNhbGN1bGF0aW9ucyAqLworICAg
ICAgICBpZiggRENfcmVzcCA+PSA0MDk2ICkgeworICAgICAgICAgICAgaW52R2Fpbl9RMzAgPSAw
OworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgdnN0MXFfczMyKCBBdG1wX1FBICsgMCwg
dnNobGxfbl9zMTYoIHZnZXRfbG93X3MxNiAoIHQwX3MxNng4ICksIFFBIC0gMTIgKSApOworICAg
ICAgICAgICAgdnN0MXFfczMyKCBBdG1wX1FBICsgNCwgdnNobGxfbl9zMTYoIHZnZXRfaGlnaF9z
MTYoIHQwX3MxNng4ICksIFFBIC0gMTIgKSApOworICAgICAgICAgICAgaW52R2Fpbl9RMzAgPSBM
UENfaW52ZXJzZV9wcmVkX2dhaW5fUUFfbmVvbiggQXRtcF9RQSwgb3JkZXIgKTsKKyAgICAgICAg
fQorICAgIH0KKworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisgICAgc2lsa19hc3NlcnQoIGludkdh
aW5fUTMwX2MgPT0gaW52R2Fpbl9RMzAgKTsKKyNlbmRpZgorCisgICAgcmV0dXJuIGludkdhaW5f
UTMwOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfZGVsX2RlY19hcm0uaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0v
TlNRX2RlbF9kZWNfYXJtLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWU3NmUxNjkyNzk5YjQyZjNlYjQ0M2FiYjQ3
YWQzNzIyYTUxZjJjNAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vTlNRX2RlbF9kZWNfYXJt
LmgKQEAgLTAsMCArMSwxMDAgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorQ29weXJpZ2h0IChjKSAyMDE3
IEdvb2dsZSBJbmMuCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworYXJlIG1ldDoKKy0gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90
aWNlLAordGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKy0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKK25vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKK2RvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCistIE5laXRoZXIgdGhlIG5h
bWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCituYW1l
cyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJv
bW90ZQorcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuCitwZXJtaXNzaW9uLgorVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCitBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCitJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFCitMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
CitDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCitJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKK0FSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCitQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyoq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqLworCisjaWZuZGVmIFNJTEtfTlNRX0RFTF9ERUNfQVJNX0gKKyNkZWZpbmUg
U0lMS19OU1FfREVMX0RFQ19BUk1fSAorCisjaW5jbHVkZSAiY2VsdC9hcm0vYXJtY3B1LmgiCisK
KyNpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikKK3ZvaWQgc2lsa19OU1Ff
ZGVsX2RlY19uZW9uKAorICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbmNDLCBzaWxr
X25zcV9zdGF0ZSAqTlNRLAorICAgIFNpZGVJbmZvSW5kaWNlcyAqcHNJbmRpY2VzLCBjb25zdCBv
cHVzX2ludDE2IHgxNltdLCBvcHVzX2ludDggcHVsc2VzW10sCisgICAgY29uc3Qgb3B1c19pbnQx
NiBQcmVkQ29lZl9RMTJbMiAqIE1BWF9MUENfT1JERVJdLAorICAgIGNvbnN0IG9wdXNfaW50MTYg
TFRQQ29lZl9RMTRbTFRQX09SREVSICogTUFYX05CX1NVQkZSXSwKKyAgICBjb25zdCBvcHVzX2lu
dDE2IEFSX1ExM1tNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSXSwKKyAgICBjb25z
dCBvcHVzX2ludCBIYXJtU2hhcGVHYWluX1ExNFtNQVhfTkJfU1VCRlJdLAorICAgIGNvbnN0IG9w
dXNfaW50IFRpbHRfUTE0W01BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19pbnQzMiBMRl9z
aHBfUTE0W01BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19pbnQzMiBHYWluc19RMTZbTUFY
X05CX1NVQkZSXSwKKyAgICBjb25zdCBvcHVzX2ludCBwaXRjaExbTUFYX05CX1NVQkZSXSwgY29u
c3Qgb3B1c19pbnQgTGFtYmRhX1ExMCwKKyAgICBjb25zdCBvcHVzX2ludCBMVFBfc2NhbGVfUTE0
KTsKKworI2lmICFkZWZpbmVkKE9QVVNfSEFWRV9SVENEKQorI2RlZmluZSBPVkVSUklERV9zaWxr
X05TUV9kZWxfZGVjICgxKQorI2RlZmluZSBzaWxrX05TUV9kZWxfZGVjKHBzRW5jQywgTlNRLCBw
c0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsICBcCisgICAgICAgICAgICAgICAg
ICAgICAgICAgTFRQQ29lZl9RMTQsIEFSX1ExMywgSGFybVNoYXBlR2Fpbl9RMTQsIFRpbHRfUTE0
LCAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBp
dGNoTCwgTGFtYmRhX1ExMCwgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgIExU
UF9zY2FsZV9RMTQsIGFyY2gpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAg
KCh2b2lkKShhcmNoKSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICAgUFJFU1VNRV9ORU9OKHNpbGtfTlNRX2RlbF9kZWMpKCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgcHNFbmND
LCBOU1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQQ29lZl9RMTQs
ICAgICBcCisgICAgICAgICBBUl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZf
c2hwX1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIFwKKyAgICAgICAgIExhbWJkYV9RMTAsIExUUF9z
Y2FsZV9RMTQpKQorI2VuZGlmCisjZW5kaWYKKworI2lmICFkZWZpbmVkKE9WRVJSSURFX3NpbGtf
TlNRX2RlbF9kZWMpCisvKklzIHJ1bi10aW1lIENQVSBkZXRlY3Rpb24gZW5hYmxlZCBvbiB0aGlz
IHBsYXRmb3JtPyovCisjaWYgZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgKGRlZmluZWQoT1BV
U19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSAmJiBcCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKSkKK2V4dGVybiB2b2lk
ICgqY29uc3QgU0lMS19OU1FfREVMX0RFQ19JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCisgICAg
Y29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICpwc0VuY0MsIHNpbGtfbnNxX3N0YXRlICpOU1EsCisg
ICAgU2lkZUluZm9JbmRpY2VzICpwc0luZGljZXMsIGNvbnN0IG9wdXNfaW50MTYgeDE2W10sIG9w
dXNfaW50OCBwdWxzZXNbXSwKKyAgICBjb25zdCBvcHVzX2ludDE2IFByZWRDb2VmX1ExMlsyICog
TUFYX0xQQ19PUkRFUl0sCisgICAgY29uc3Qgb3B1c19pbnQxNiBMVFBDb2VmX1ExNFtMVFBfT1JE
RVIgKiBNQVhfTkJfU1VCRlJdLAorICAgIGNvbnN0IG9wdXNfaW50MTYgQVJfUTEzW01BWF9OQl9T
VUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVJdLAorICAgIGNvbnN0IG9wdXNfaW50IEhhcm1TaGFw
ZUdhaW5fUTE0W01BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19pbnQgVGlsdF9RMTRbTUFY
X05CX1NVQkZSXSwKKyAgICBjb25zdCBvcHVzX2ludDMyIExGX3NocF9RMTRbTUFYX05CX1NVQkZS
XSwKKyAgICBjb25zdCBvcHVzX2ludDMyIEdhaW5zX1ExNltNQVhfTkJfU1VCRlJdLAorICAgIGNv
bnN0IG9wdXNfaW50IHBpdGNoTFtNQVhfTkJfU1VCRlJdLCBjb25zdCBvcHVzX2ludCBMYW1iZGFf
UTEwLAorICAgIGNvbnN0IG9wdXNfaW50IExUUF9zY2FsZV9RMTQpOworI2RlZmluZSBPVkVSUklE
RV9zaWxrX05TUV9kZWxfZGVjICgxKQorI2RlZmluZSBzaWxrX05TUV9kZWxfZGVjKHBzRW5jQywg
TlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIFwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICBMVFBDb2VmX1ExNCwgQVJfUTEzLCBIYXJtU2hhcGVHYWluX1ExNCwgVGls
dF9RMTQsICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgTEZfc2hwX1ExNCwgR2FpbnNfUTE2
LCBwaXRjaEwsIExhbWJkYV9RMTAsICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAg
IExUUF9zY2FsZV9RMTQsIGFyY2gpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
ICAoKCpTSUxLX05TUV9ERUxfREVDX0lNUExbKGFyY2gpJk9QVVNfQVJDSE1BU0tdKSggICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgICAgIHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwg
cHVsc2VzLCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0LCAgICAgXAorICAgICAgICBBUl9RMTMs
IEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwaXRj
aEwsIFwKKyAgICAgICAgTGFtYmRhX1ExMCwgTFRQX3NjYWxlX1ExNCkpCisjZWxpZiBkZWZpbmVk
KE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKQorI2RlZmluZSBPVkVSUklERV9zaWxrX05TUV9k
ZWxfZGVjICgxKQorI2RlZmluZSBzaWxrX05TUV9kZWxfZGVjKHBzRW5jQywgTlNRLCBwc0luZGlj
ZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsICAgXAorICAgICAgICAgICAgICAgICAgICAg
ICAgIExUUENvZWZfUTE0LCBBUl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgICAg
XAorICAgICAgICAgICAgICAgICAgICAgICAgIExGX3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hM
LCBMYW1iZGFfUTEwLCAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgIExUUF9z
Y2FsZV9RMTQsIGFyY2gpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgo
dm9pZCkoYXJjaCksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICBzaWxrX05TUV9kZWxfZGVjX25lb24ocHNFbmNDLCBOU1Es
IHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgXAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgTFRQQ29lZl9RMTQsIEFSX1ExMywgSGFybVNoYXBlR2Fpbl9RMTQsIFRpbHRf
UTE0LCAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgTEZfc2hwX1ExNCwgR2FpbnNfUTE2
LCBwaXRjaEwsIExhbWJkYV9RMTAsICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgTFRQX3NjYWxlX1ExNCkpCisjZW5kaWYKKyNlbmRpZgorCisjZW5kaWYgLyogZW5kIFNJTEtf
TlNRX0RFTF9ERUNfQVJNX0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vTlNRX2RlbF9kZWNfbmVv
bl9pbnRyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvYXJtL05TUV9kZWxfZGVjX25lb25faW50ci5jCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIx
MjQxMGYzNjI5MjYzMWQyMmRlNWVhYzI3MmRhMDY4Y2ZiOGMxNTkKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvYXJtL05TUV9kZWxfZGVjX25lb25faW50ci5jCkBAIC0wLDAgKzEsMTEyNCBAQAorLyoq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqCitDb3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4KK1JlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCithcmUgbWV0OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCit0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLSBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKy0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJ
RVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKK25hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9y
cywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCitwcm9kdWN0cyBkZXJpdmVkIGZy
b20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KK3Blcm1pc3Np
b24uCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKK0FORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKK0lNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFCitBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05F
UiBPUiBDT05UUklCVVRPUlMgQkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCitTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKK0lOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUK
K1BPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpZmRlZiBI
QVZFX0NPTkZJR19ICisjaW5jbHVkZSAiY29uZmlnLmgiCisjZW5kaWYKKworI2luY2x1ZGUgPGFy
bV9uZW9uLmg+CisjaWZkZWYgT1BVU19DSEVDS19BU00KKyMgaW5jbHVkZSA8c3RyaW5nLmg+Cisj
ZW5kaWYKKyNpbmNsdWRlICJtYWluLmgiCisjaW5jbHVkZSAic3RhY2tfYWxsb2MuaCIKKworLyog
TkVPTiBpbnRyaW5zaWNzIG9wdGltaXphdGlvbiBub3cgY2FuIG9ubHkgcGFyYWxsZWxpemUgdXAg
dG8gNCBkZWxheSBkZWNpc2lvbiBzdGF0ZXMuICAgICovCisvKiBJZiB0aGVyZSBhcmUgbW9yZSBz
dGF0ZXMsIEMgZnVuY3Rpb24gaXMgY2FsbGVkLCBhbmQgdGhpcyBvcHRpbWl6YXRpb24gbXVzdCBi
ZSBleHBhbmRlZC4gKi8KKyNkZWZpbmUgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgNAorCit0eXBl
ZGVmIHN0cnVjdCB7CisgICAgb3B1c19pbnQzMiBzTFBDX1ExNFsgTUFYX1NVQl9GUkFNRV9MRU5H
VEggKyBOU1FfTFBDX0JVRl9MRU5HVEggXVsgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAg
ICBvcHVzX2ludDMyIFJhbmRTdGF0ZVsgREVDSVNJT05fREVMQVkgXVsgICAgIE5FT05fTUFYX0RF
TF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBRX1ExMFsgICAgIERFQ0lTSU9OX0RFTEFZ
IF1bICAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIgWHFfUTE0
WyAgICBERUNJU0lPTl9ERUxBWSBdWyAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAg
ICBvcHVzX2ludDMyIFByZWRfUTE1WyAgREVDSVNJT05fREVMQVkgXVsgICAgIE5FT05fTUFYX0RF
TF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBTaGFwZV9RMTRbIERFQ0lTSU9OX0RFTEFZ
IF1bICAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIgc0FSMl9R
MTRbIE1BWF9TSEFQRV9MUENfT1JERVIgXVsgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAg
ICBvcHVzX2ludDMyIExGX0FSX1ExNFsgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBv
cHVzX2ludDMyIERpZmZfUTE0WyAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVz
X2ludDMyIFNlZWRbICAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2lu
dDMyIFNlZWRJbml0WyAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2ludDMy
IFJEX1ExMFsgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKK30gTlNRX2RlbF9kZWNzX3N0
cnVjdDsKKwordHlwZWRlZiBzdHJ1Y3QgeworICAgIG9wdXNfaW50MzIgUV9RMTBbICAgICAgICBO
RU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIgUkRfUTEwWyAgICAgICBO
RU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIgeHFfUTE0WyAgICAgICBO
RU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIgTEZfQVJfUTE0WyAgICBO
RU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIgRGlmZl9RMTRbICAgICBO
RU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIgc0xUUF9zaHBfUTE0WyBO
RU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIgTFBDX2V4Y19RMTRbICBO
RU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworfSBOU1Ffc2FtcGxlc19zdHJ1Y3Q7CisKK3N0YXRp
YyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVfc3RhdGVzX25lb24oCisg
ICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICpwc0VuY0MsICAgICAgICAgICAgICAgLyogSSAg
ICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNpbGtfbnNxX3N0
YXRlICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOU1FfZGVsX2RlY3Nfc3RydWN0IHBzRGVs
RGVjW10sICAgICAgICAgICAgICAgICAvKiBJL08gIERlbGF5ZWQgZGVjaXNpb24gc3RhdGVzICAg
ICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICB4MTZbXSwgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgIG9wdXNfaW50MzIgICAgICAgICAgeF9zY19RMTBbXSwgICAgICAgICAgICAgICAgIC8qIE8g
ICAgSW5wdXQgc2NhbGVkIHdpdGggMS9HYWluIGluIFExMCAgICAgKi8KKyAgICBjb25zdCBvcHVz
X2ludDE2ICAgIHNMVFBbXSwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJlLXdoaXRlbmVk
IExUUCBzdGF0ZSBpbiBRMCAgICAgICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICBzTFRQ
X1ExNVtdLCAgICAgICAgICAgICAgICAgLyogTyAgICBMVFAgc3RhdGUgbWF0Y2hpbmcgc2NhbGVk
IGlucHV0ICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgc3ViZnIsICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgU3ViZnJhbWUgbnVtYmVyICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludCAgICAgIExUUF9zY2FsZV9RMTQsICAgICAgICAgICAgICAvKiBJ
ICAgIExUUCBzdGF0ZSBzY2FsaW5nICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQzMiAgICBHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdLCAgLyogSSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgcGl0
Y2hMWyBNQVhfTkJfU1VCRlIgXSwgICAgIC8qIEkgICAgUGl0Y2ggbGFnICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgIHNpZ25hbF90eXBlLCAgICAg
ICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBlICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgY29uc3Qgb3B1c19pbnQgICAgICBkZWNpc2lvbkRlbGF5ICAgICAgICAgICAgICAgLyog
SSAgICBEZWNpc2lvbiBkZWxheSAgICAgICAgICAgICAgICAgICAgICAqLworKTsKKworLyoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qIE5vaXNlIHNoYXBlIHF1
YW50aXplciBmb3Igb25lIHN1YmZyYW1lICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFw
ZV9xdWFudGl6ZXJfZGVsX2RlY19uZW9uKAorICAgIHNpbGtfbnNxX3N0YXRlICAgICAgKk5TUSwg
ICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIE5TUV9kZWxfZGVjc19zdHJ1Y3QgcHNEZWxEZWNbXSwgICAgICAgICAgICAg
LyogSS9PICBEZWxheWVkIGRlY2lzaW9uIHN0YXRlcyAgICAgICAgICAgICAqLworICAgIG9wdXNf
aW50ICAgICAgICAgICAgc2lnbmFsVHlwZSwgICAgICAgICAgICAgLyogSSAgICBTaWduYWwgdHlw
ZSAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgeF9R
MTBbXSwgICAgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIG9wdXNfaW50OCAgICAgICAgICAgcHVsc2VzW10sICAgICAgICAgICAg
ICAgLyogTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9w
dXNfaW50MTYgICAgICAgICAgeHFbXSwgICAgICAgICAgICAgICAgICAgLyogTyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAg
c0xUUF9RMTVbXSwgICAgICAgICAgICAgLyogSS9PICBMVFAgZmlsdGVyIHN0YXRlICAgICAgICAg
ICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgZGVsYXllZEdhaW5fUTEwW10s
ICAgICAgLyogSS9PICBHYWluIGRlbGF5IGJ1ZmZlciAgICAgICAgICAgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgYV9RMTJbXSwgICAgICAgICAgICAgICAgLyogSSAgICBTaG9y
dCB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYg
ICAgYl9RMTRbXSwgICAgICAgICAgICAgICAgLyogSSAgICBMb25nIHRlcm0gcHJlZGljdGlvbiBj
b2VmcyAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgQVJfc2hwX1ExM1tdLCAg
ICAgICAgICAgLyogSSAgICBOb2lzZSBzaGFwaW5nIGNvZWZzICAgICAgICAgICAgICAgICAqLwor
ICAgIG9wdXNfaW50ICAgICAgICAgICAgbGFnLCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQ
aXRjaCBsYWcgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAg
ICAgICAgSGFybVNoYXBlRklSUGFja2VkX1ExNCwgLyogSSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgVGlsdF9RMTQsICAg
ICAgICAgICAgICAgLyogSSAgICBTcGVjdHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50MzIgICAgICAgICAgTEZfc2hwX1ExNCwgICAgICAgICAgICAgLyogSSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIg
ICAgICAgICAgR2Fpbl9RMTYsICAgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgTGFtYmRhX1Ex
MCwgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgb2Zmc2V0X1ExMCwgICAgICAgICAgICAgLyog
SSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50
ICAgICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBsZW5ndGgg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgc3ViZnIs
ICAgICAgICAgICAgICAgICAgLyogSSAgICBTdWJmcmFtZSBudW1iZXIgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgc2hhcGluZ0xQQ09yZGVyLCAgICAgICAg
LyogSSAgICBTaGFwaW5nIExQQyBmaWx0ZXIgb3JkZXIgICAgICAgICAgICAqLworICAgIG9wdXNf
aW50ICAgICAgICAgICAgcHJlZGljdExQQ09yZGVyLCAgICAgICAgLyogSSAgICBQcmVkaWN0aW9u
IGZpbHRlciBvcmRlciAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgd2Fy
cGluZ19RMTYsICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgblN0YXRlc0RlbGF5ZWREZWNpc2lv
biwgLyogSSAgICBOdW1iZXIgb2Ygc3RhdGVzIGluIGRlY2lzaW9uIHRyZWUgICAqLworICAgIG9w
dXNfaW50ICAgICAgICAgICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAgLyogSS9PICBJbmRleCB0
byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZmZXJzICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAg
ZGVjaXNpb25EZWxheSAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworKTsKKworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgY29weV93aW5uZXJf
c3RhdGVfa2VybmVsKAorICAgIGNvbnN0IE5TUV9kZWxfZGVjc19zdHJ1Y3QgKnBzRGVsRGVjLAor
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgb2Zmc2V0LAorICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgbGFzdF9zbXBsZV9pZHgsCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICBXaW5uZXJfaW5kLAorICAgIGNvbnN0IGludDMyeDJfdCAgICAgICAgICAgZ2Fpbl9sb19zMzJ4
MiwKKyAgICBjb25zdCBpbnQzMngyX3QgICAgICAgICAgIGdhaW5faGlfczMyeDIsCisgICAgY29u
c3QgaW50MzJ4NF90ICAgICAgICAgICBzaGlmdF9zMzJ4NCwKKyAgICBpbnQzMng0X3QgICAgICAg
ICAgICAgICAgIHQwX3MzMng0LAorICAgIGludDMyeDRfdCAgICAgICAgICAgICAgICAgdDFfczMy
eDQsCisgICAgb3B1c19pbnQ4ICpjb25zdCAgICAgICAgICBwdWxzZXMsCisgICAgb3B1c19pbnQx
NiAgICAgICAgICAgICAgICAqcHhxLAorICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgKk5T
UQorKQoreworICAgIGludDE2eDhfdCB0X3MxNng4OworICAgIGludDMyeDRfdCBvMF9zMzJ4NCwg
bzFfczMyeDQ7CisKKyAgICB0MF9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPlFf
UTEwWyBsYXN0X3NtcGxlX2lkeCAtIDAgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMCApOwor
ICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+UV9RMTBbIGxhc3Rfc21w
bGVfaWR4IC0gMSBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAxICk7CisgICAgdDBfczMyeDQg
PSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5RX1ExMFsgbGFzdF9zbXBsZV9pZHggLSAyIF1b
IFdpbm5lcl9pbmQgXSwgdDBfczMyeDQsIDIgKTsKKyAgICB0MF9zMzJ4NCA9IHZsZDFxX2xhbmVf
czMyKCAmcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCAtIDMgXVsgV2lubmVyX2luZCBd
LCB0MF9zMzJ4NCwgMyApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERl
Yy0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4IC0gNCBdWyBXaW5uZXJfaW5kIF0sIHQxX3MzMng0LCAw
ICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5RX1ExMFsgbGFz
dF9zbXBsZV9pZHggLSA1IF1bIFdpbm5lcl9pbmQgXSwgdDFfczMyeDQsIDEgKTsKKyAgICB0MV9z
MzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCAt
IDYgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMiApOworICAgIHQxX3MzMng0ID0gdmxkMXFf
bGFuZV9zMzIoICZwc0RlbERlYy0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4IC0gNyBdWyBXaW5uZXJf
aW5kIF0sIHQxX3MzMng0LCAzICk7CisgICAgdF9zMTZ4OCA9IHZjb21iaW5lX3MxNiggdnJzaHJu
X25fczMyKCB0MF9zMzJ4NCwgMTAgKSwgdnJzaHJuX25fczMyKCB0MV9zMzJ4NCwgMTAgKSApOwor
ICAgIHZzdDFfczgoICZwdWxzZXNbIG9mZnNldCBdLCB2bW92bl9zMTYoIHRfczE2eDggKSApOwor
CisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rf
c21wbGVfaWR4IC0gMCBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAwICk7CisgICAgdDBfczMy
eDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0g
MSBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAxICk7CisgICAgdDBfczMyeDQgPSB2bGQxcV9s
YW5lX3MzMiggJnBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gMiBdWyBXaW5uZXJf
aW5kIF0sIHQwX3MzMng0LCAyICk7CisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBz
RGVsRGVjLT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gMyBdWyBXaW5uZXJfaW5kIF0sIHQwX3Mz
Mng0LCAzICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5YcV9R
MTRbIGxhc3Rfc21wbGVfaWR4IC0gNCBdWyBXaW5uZXJfaW5kIF0sIHQxX3MzMng0LCAwICk7Cisg
ICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rfc21w
bGVfaWR4IC0gNSBdWyBXaW5uZXJfaW5kIF0sIHQxX3MzMng0LCAxICk7CisgICAgdDFfczMyeDQg
PSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gNiBd
WyBXaW5uZXJfaW5kIF0sIHQxX3MzMng0LCAyICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5l
X3MzMiggJnBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gNyBdWyBXaW5uZXJfaW5k
IF0sIHQxX3MzMng0LCAzICk7CisgICAgbzBfczMyeDQgPSB2cWRtdWxocV9sYW5lX3MzMiggdDBf
czMyeDQsIGdhaW5fbG9fczMyeDIsIDAgKTsKKyAgICBvMV9zMzJ4NCA9IHZxZG11bGhxX2xhbmVf
czMyKCB0MV9zMzJ4NCwgZ2Fpbl9sb19zMzJ4MiwgMCApOworICAgIG8wX3MzMng0ID0gdm1sYXFf
bGFuZV9zMzIoIG8wX3MzMng0LCB0MF9zMzJ4NCwgZ2Fpbl9oaV9zMzJ4MiwgMCApOworICAgIG8x
X3MzMng0ID0gdm1sYXFfbGFuZV9zMzIoIG8xX3MzMng0LCB0MV9zMzJ4NCwgZ2Fpbl9oaV9zMzJ4
MiwgMCApOworICAgIG8wX3MzMng0ID0gdnJzaGxxX3MzMiggbzBfczMyeDQsIHNoaWZ0X3MzMng0
ICk7CisgICAgbzFfczMyeDQgPSB2cnNobHFfczMyKCBvMV9zMzJ4NCwgc2hpZnRfczMyeDQgKTsK
KyAgICB2c3QxX3MxNiggJnB4cVsgb2Zmc2V0ICsgMCBdLCB2cW1vdm5fczMyKCBvMF9zMzJ4NCAp
ICk7CisgICAgdnN0MV9zMTYoICZweHFbIG9mZnNldCArIDQgXSwgdnFtb3ZuX3MzMiggbzFfczMy
eDQgKSApOworCisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5TaGFw
ZV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gMCBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAwICk7
CisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5TaGFwZV9RMTRbIGxh
c3Rfc21wbGVfaWR4IC0gMSBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAxICk7CisgICAgdDBf
czMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5TaGFwZV9RMTRbIGxhc3Rfc21wbGVf
aWR4IC0gMiBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAyICk7CisgICAgdDBfczMyeDQgPSB2
bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5TaGFwZV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gMyBd
WyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAzICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5l
X3MzMiggJnBzRGVsRGVjLT5TaGFwZV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gNCBdWyBXaW5uZXJf
aW5kIF0sIHQxX3MzMng0LCAwICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBz
RGVsRGVjLT5TaGFwZV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gNSBdWyBXaW5uZXJfaW5kIF0sIHQx
X3MzMng0LCAxICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5T
aGFwZV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gNiBdWyBXaW5uZXJfaW5kIF0sIHQxX3MzMng0LCAy
ICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5TaGFwZV9RMTRb
IGxhc3Rfc21wbGVfaWR4IC0gNyBdWyBXaW5uZXJfaW5kIF0sIHQxX3MzMng0LCAzICk7CisgICAg
dnN0MXFfczMyKCAmTlNRLT5zTFRQX3NocF9RMTRbIE5TUS0+c0xUUF9zaHBfYnVmX2lkeCArIG9m
ZnNldCArIDAgXSwgdDBfczMyeDQgKTsKKyAgICB2c3QxcV9zMzIoICZOU1EtPnNMVFBfc2hwX1Ex
NFsgTlNRLT5zTFRQX3NocF9idWZfaWR4ICsgb2Zmc2V0ICsgNCBdLCB0MV9zMzJ4NCApOworfQor
CitzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBjb3B5X3dpbm5lcl9zdGF0ZSgKKyAgICBjb25zdCBO
U1FfZGVsX2RlY3Nfc3RydWN0ICpwc0RlbERlYywKKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAg
ICAgIGRlY2lzaW9uRGVsYXksCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICBzbXBsX2J1
Zl9pZHgsCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICBXaW5uZXJfaW5kLAorICAgIGNv
bnN0IG9wdXNfaW50MzIgICAgICAgICAgZ2FpbiwKKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAg
ICAgIHNoaWZ0LAorICAgIG9wdXNfaW50OCAqY29uc3QgICAgICAgICAgcHVsc2VzLAorICAgIG9w
dXNfaW50MTYgICAgICAgICAgICAgICAgKnB4cSwKKyAgICBzaWxrX25zcV9zdGF0ZSAgICAgICAg
ICAgICpOU1EKKykKK3sKKyAgICBvcHVzX2ludCAgICAgICAgaSwgbGFzdF9zbXBsZV9pZHg7Cisg
ICAgY29uc3QgaW50MzJ4Ml90IGdhaW5fbG9fczMyeDIgPSB2ZHVwX25fczMyKCBzaWxrX0xTSElG
VDMyKCBnYWluICYgMHgwMDAwRkZGRiwgMTUgKSApOworICAgIGNvbnN0IGludDMyeDJfdCBnYWlu
X2hpX3MzMngyID0gdmR1cF9uX3MzMiggZ2FpbiA+PiAxNiApOworICAgIGNvbnN0IGludDMyeDRf
dCBzaGlmdF9zMzJ4NCA9IHZkdXBxX25fczMyKCAtc2hpZnQgKTsKKyAgICBpbnQzMng0X3QgICAg
ICAgdDBfczMyeDQsIHQxX3MzMng0OworCisgICAgdDBfczMyeDQgPSB0MV9zMzJ4NCA9IHZkdXBx
X25fczMyKCAwICk7IC8qIGluaXRpYWxpemF0aW9uICovCisgICAgbGFzdF9zbXBsZV9pZHggPSBz
bXBsX2J1Zl9pZHggKyBkZWNpc2lvbkRlbGF5IC0gMSArIERFQ0lTSU9OX0RFTEFZOworICAgIGlm
KCBsYXN0X3NtcGxlX2lkeCA+PSBERUNJU0lPTl9ERUxBWSApIGxhc3Rfc21wbGVfaWR4IC09IERF
Q0lTSU9OX0RFTEFZOworICAgIGlmKCBsYXN0X3NtcGxlX2lkeCA+PSBERUNJU0lPTl9ERUxBWSAp
IGxhc3Rfc21wbGVfaWR4IC09IERFQ0lTSU9OX0RFTEFZOworCisgICAgZm9yKCBpID0gMDsgKCBp
IDwgKCBkZWNpc2lvbkRlbGF5IC0gNyApICkgJiYgKCBsYXN0X3NtcGxlX2lkeCA+PSA3ICk7IGkg
Kz0gOCwgbGFzdF9zbXBsZV9pZHggLT0gOCApIHsKKyAgICAgICAgY29weV93aW5uZXJfc3RhdGVf
a2VybmVsKCBwc0RlbERlYywgaSAtIGRlY2lzaW9uRGVsYXksIGxhc3Rfc21wbGVfaWR4LCBXaW5u
ZXJfaW5kLCBnYWluX2xvX3MzMngyLCBnYWluX2hpX3MzMngyLCBzaGlmdF9zMzJ4NCwgdDBfczMy
eDQsIHQxX3MzMng0LCBwdWxzZXMsIHB4cSwgTlNRICk7CisgICAgfQorICAgIGZvciggOyAoIGkg
PCBkZWNpc2lvbkRlbGF5ICkgJiYgKCBsYXN0X3NtcGxlX2lkeCA+PSAwICk7IGkrKywgbGFzdF9z
bXBsZV9pZHgtLSApIHsKKyAgICAgICAgcHVsc2VzWyBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9w
dXNfaW50OClzaWxrX1JTSElGVF9ST1VORCggcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lk
eCBdWyBXaW5uZXJfaW5kIF0sIDEwICk7CisgICAgICAgIHB4cVsgaSAtIGRlY2lzaW9uRGVsYXkg
XSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX1NNVUxX
VyggcHNEZWxEZWMtPlhxX1ExNFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdLCBnYWlu
ICksIHNoaWZ0ICkgKTsKKyAgICAgICAgTlNRLT5zTFRQX3NocF9RMTRbIE5TUS0+c0xUUF9zaHBf
YnVmX2lkeCAtIGRlY2lzaW9uRGVsYXkgKyBpIF0gPSBwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0
X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5kIF07CisgICAgfQorCisgICAgbGFzdF9zbXBsZV9pZHgg
Kz0gREVDSVNJT05fREVMQVk7CisgICAgZm9yKCA7IGkgPCAoIGRlY2lzaW9uRGVsYXkgLSA3ICk7
IGkrKywgbGFzdF9zbXBsZV9pZHgtLSApIHsKKyAgICAgICAgY29weV93aW5uZXJfc3RhdGVfa2Vy
bmVsKCBwc0RlbERlYywgaSAtIGRlY2lzaW9uRGVsYXksIGxhc3Rfc21wbGVfaWR4LCBXaW5uZXJf
aW5kLCBnYWluX2xvX3MzMngyLCBnYWluX2hpX3MzMngyLCBzaGlmdF9zMzJ4NCwgdDBfczMyeDQs
IHQxX3MzMng0LCBwdWxzZXMsIHB4cSwgTlNRICk7CisgICAgfQorICAgIGZvciggOyBpIDwgZGVj
aXNpb25EZWxheTsgaSsrLCBsYXN0X3NtcGxlX2lkeC0tICkgeworICAgICAgICBwdWxzZXNbIGkg
LSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQ4KXNpbGtfUlNISUZUX1JPVU5EKCBwc0RlbERl
Yy0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4IF1bIFdpbm5lcl9pbmQgXSwgMTAgKTsKKyAgICAgICAg
cHhxWyBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19S
U0hJRlRfUk9VTkQoIHNpbGtfU01VTFdXKCBwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lk
eCBdWyBXaW5uZXJfaW5kIF0sIGdhaW4gKSwgc2hpZnQgKSApOworICAgICAgICBOU1EtPnNMVFBf
c2hwX1ExNFsgTlNRLT5zTFRQX3NocF9idWZfaWR4IC0gZGVjaXNpb25EZWxheSArIGkgXSA9IHBz
RGVsRGVjLT5TaGFwZV9RMTRbIGxhc3Rfc21wbGVfaWR4IF1bIFdpbm5lcl9pbmQgXTsKKyAgICB9
Cit9CisKK3ZvaWQgc2lsa19OU1FfZGVsX2RlY19uZW9uKAorICAgIGNvbnN0IHNpbGtfZW5jb2Rl
cl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIHNpbGtfbnNxX3N0
YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIFNpZGVJ
bmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICBwdWxzZXNbXSwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRpemVkIHB1bHNlIHNpZ25hbCAgICAg
ICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBQcmVkQ29lZl9RMTJbIDIg
KiBNQVhfTFBDX09SREVSIF0sICAgICAgICAgIC8qIEkgICAgU2hvcnQgdGVybSBwcmVkaWN0aW9u
IGNvZWZzICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBMVFBDb2VmX1Ex
NFsgTFRQX09SREVSICogTUFYX05CX1NVQkZSIF0sICAgIC8qIEkgICAgTG9uZyB0ZXJtIHByZWRp
Y3Rpb24gY29lZnMgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBBUl9R
MTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSBOb2lzZSBzaGFw
aW5nIGNvZWZzICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBIYXJtU2hhcGVHYWluX1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgIC8qIEkgICAgTG9u
ZyB0ZXJtIHNoYXBpbmcgY29lZnMgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICBUaWx0X1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgU3BlY3RyYWwgdGlsdCAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
MzIgICAgICAgICAgICBMRl9zaHBfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAg
IC8qIEkgICAgTG93IGZyZXF1ZW5jeSBzaGFwaW5nIGNvZWZzICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICBHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgUXVhbnRpemF0aW9uIHN0ZXAgc2l6ZXMgICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICBwaXRjaExbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgUGl0Y2ggbGFncyAgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBMYW1iZGFfUTEwLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUmF0ZS9kaXN0b3J0aW9uIHRyYWRlb2ZmICAgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBMVFBfc2NhbGVfUTE0ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFRQIHN0YXRlIHNjYWxpbmcgICAgICAg
ICAgICAgICAqLworKQoreworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisgICAgc2lsa19uc3Ffc3Rh
dGUgTlNRX2M7CisgICAgU2lkZUluZm9JbmRpY2VzIHBzSW5kaWNlc19jOworICAgIG9wdXNfaW50
OCBwdWxzZXNfY1sgTUFYX0ZSQU1FX0xFTkdUSCBdOworICAgIGNvbnN0IG9wdXNfaW50OCAqY29u
c3QgcHVsc2VzX2EgPSBwdWxzZXM7CisKKyAgICAoIHZvaWQgKXB1bHNlc19hOworICAgIHNpbGtf
bWVtY3B5KCAmTlNRX2MsIE5TUSwgc2l6ZW9mKCBOU1FfYyApICk7CisgICAgc2lsa19tZW1jcHko
ICZwc0luZGljZXNfYywgcHNJbmRpY2VzLCBzaXplb2YoIHBzSW5kaWNlc19jICkgKTsKKyAgICBz
aWxrX21lbWNweSggcHVsc2VzX2MsIHB1bHNlcywgc2l6ZW9mKCBwdWxzZXNfYyApICk7CisgICAg
c2lsa19OU1FfZGVsX2RlY19jKCBwc0VuY0MsICZOU1FfYywgJnBzSW5kaWNlc19jLCB4MTYsIHB1
bHNlc19jLCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0LCBBUl9RMTMsIEhhcm1TaGFwZUdhaW5f
UTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LAorICAgICAgICAgICAgICAgICAg
ICAgICBwaXRjaEwsIExhbWJkYV9RMTAsIExUUF9zY2FsZV9RMTQgKTsKKyNlbmRpZgorCisgICAg
LyogVGhlIG9wdGltaXphdGlvbiBwYXJhbGxlbGl6ZXMgdGhlIGRpZmZlcmVudCBkZWxheSBkZWNp
c2lvbiBzdGF0ZXMuICovCisgICAgaWYoKCBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24g
PiBORU9OX01BWF9ERUxfREVDX1NUQVRFUyApIHx8ICggcHNFbmNDLT5uU3RhdGVzRGVsYXllZERl
Y2lzaW9uIDw9IDIgKSkgeworICAgICAgICAvKiBORU9OIGludHJpbnNpY3Mgb3B0aW1pemF0aW9u
IG5vdyBjYW4gb25seSBwYXJhbGxlbGl6ZSB1cCB0byA0IGRlbGF5IGRlY2lzaW9uIHN0YXRlcy4g
ICAgKi8KKyAgICAgICAgLyogSWYgdGhlcmUgYXJlIG1vcmUgc3RhdGVzLCBDIGZ1bmN0aW9uIGlz
IGNhbGxlZCwgYW5kIHRoaXMgb3B0aW1pemF0aW9uIG11c3QgYmUgZXhwYW5kZWQuICovCisgICAg
ICAgIC8qIFdoZW4gdGhlIG51bWJlciBvZiBkZWxheSBkZWNpc2lvbiBzdGF0ZXMgaXMgbGVzcyB0
aGFuIDMsIHRoZXJlIGFyZSBwZW5hbHRpZXMgdXNpbmcgdGhpcyAqLworICAgICAgICAvKiBvcHRp
bWl6YXRpb24sIGFuZCBDIGZ1bmN0aW9uIGlzIGNhbGxlZC4gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgLyogV2hlbiB0aGUgbnVtYmVy
IG9mIGRlbGF5IGRlY2lzaW9uIHN0YXRlcyBpcyAyLCBpdCdzIGJldHRlciB0byBzcGVjaWFsaXpl
IGFub3RoZXIgICAgICAgICovCisgICAgICAgIC8qIHN0cnVjdHVyZSBOU1FfZGVsX2RlYzJfc3Ry
dWN0IGFuZCBvcHRpbWl6ZSB3aXRoIHNob3J0ZXIgTkVPTiByZWdpc3RlcnMuIChMb3cgcHJpb3Jp
dHkpICAqLworICAgICAgICBzaWxrX05TUV9kZWxfZGVjX2MoIHBzRW5jQywgTlNRLCBwc0luZGlj
ZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0LCBBUl9RMTMsIEhhcm1T
aGFwZUdhaW5fUTE0LAorICAgICAgICAgICAgVGlsdF9RMTQsIExGX3NocF9RMTQsIEdhaW5zX1Ex
NiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0ICk7CisgICAgfSBlbHNlIHsKKyAg
ICAgICAgb3B1c19pbnQgICAgICAgICAgICBpLCBrLCBsYWcsIHN0YXJ0X2lkeCwgTFNGX2ludGVy
cG9sYXRpb25fZmxhZywgV2lubmVyX2luZCwgc3ViZnI7CisgICAgICAgIG9wdXNfaW50ICAgICAg
ICAgICAgc21wbF9idWZfaWR4LCBkZWNpc2lvbkRlbGF5OworICAgICAgICBjb25zdCBvcHVzX2lu
dDE2ICAgICpBX1ExMiwgKkJfUTE0LCAqQVJfc2hwX1ExMzsKKyAgICAgICAgb3B1c19pbnQxNiAg
ICAgICAgICAqcHhxOworICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBzTFRQX1ExNSApOwor
ICAgICAgICBWQVJERUNMKCBvcHVzX2ludDE2LCBzTFRQICk7CisgICAgICAgIG9wdXNfaW50MzIg
ICAgICAgICAgSGFybVNoYXBlRklSUGFja2VkX1ExNDsKKyAgICAgICAgb3B1c19pbnQgICAgICAg
ICAgICBvZmZzZXRfUTEwOworICAgICAgICBvcHVzX2ludDMyICAgICAgICAgIFJEbWluX1ExMCwg
R2Fpbl9RMTA7CisgICAgICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIHhfc2NfUTEwICk7CisgICAg
ICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIGRlbGF5ZWRHYWluX1ExMCApOworICAgICAgICBWQVJE
RUNMKCBOU1FfZGVsX2RlY3Nfc3RydWN0LCBwc0RlbERlYyApOworICAgICAgICBpbnQzMng0X3Qg
ICAgICAgICAgIHRfczMyeDQ7CisgICAgICAgIFNBVkVfU1RBQ0s7CisKKyAgICAgICAgLyogU2V0
IHVudm9pY2VkIGxhZyB0byB0aGUgcHJldmlvdXMgb25lLCBvdmVyd3JpdGUgbGF0ZXIgZm9yIHZv
aWNlZCAqLworICAgICAgICBsYWcgPSBOU1EtPmxhZ1ByZXY7CisKKyAgICAgICAgc2lsa19hc3Nl
cnQoIE5TUS0+cHJldl9nYWluX1ExNiAhPSAwICk7CisKKyAgICAgICAgLyogSW5pdGlhbGl6ZSBk
ZWxheWVkIGRlY2lzaW9uIHN0YXRlcyAqLworICAgICAgICBBTExPQyggcHNEZWxEZWMsIDEsIE5T
UV9kZWxfZGVjc19zdHJ1Y3QgKTsKKyAgICAgICAgLyogT25seSBSYW5kU3RhdGUgYW5kIFJEX1Ex
MCBuZWVkIHRvIGJlIGluaXRpYWxpemVkIHRvIDAuICovCisgICAgICAgIHNpbGtfbWVtc2V0KCBw
c0RlbERlYy0+UmFuZFN0YXRlLCAwLCBzaXplb2YoIHBzRGVsRGVjLT5SYW5kU3RhdGUgKSApOwor
ICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5SRF9RMTAsIHZkdXBxX25fczMyKCAwICkgKTsK
KworICAgICAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lzaW9u
OyBrKysgKSB7CisgICAgICAgICAgICBwc0RlbERlYy0+U2VlZEluaXRbIGsgXSA9IHBzRGVsRGVj
LT5TZWVkWyBrIF0gPSAoIGsgKyBwc0luZGljZXMtPlNlZWQgKSAmIDM7CisgICAgICAgIH0KKyAg
ICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+TEZfQVJfUTE0LCB2bGQxcV9kdXBfczMyKCAmTlNR
LT5zTEZfQVJfc2hwX1ExNCApICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPkRpZmZf
UTE0LCB2bGQxcV9kdXBfczMyKCAmTlNRLT5zRGlmZl9zaHBfUTE0ICkgKTsKKyAgICAgICAgdnN0
MXFfczMyKCBwc0RlbERlYy0+U2hhcGVfUTE0WyAwIF0sIHZsZDFxX2R1cF9zMzIoICZOU1EtPnNM
VFBfc2hwX1ExNFsgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAtIDEgXSApICk7CisgICAgICAgIGZv
ciggaSA9IDA7IGkgPCBOU1FfTFBDX0JVRl9MRU5HVEg7IGkrKyApIHsKKyAgICAgICAgICAgIHZz
dDFxX3MzMiggcHNEZWxEZWMtPnNMUENfUTE0WyBpIF0sIHZsZDFxX2R1cF9zMzIoICZOU1EtPnNM
UENfUTE0WyBpIF0gKSApOworICAgICAgICB9CisgICAgICAgIGZvciggaSA9IDA7IGkgPCAob3B1
c19pbnQpKCBzaXplb2YoIE5TUS0+c0FSMl9RMTQgKSAvIHNpemVvZiggTlNRLT5zQVIyX1ExNFsg
MCBdICkgKTsgaSsrICkgeworICAgICAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+c0FSMl9R
MTRbIGkgXSwgdmxkMXFfZHVwX3MzMiggJk5TUS0+c0FSMl9RMTRbIGkgXSApICk7CisgICAgICAg
IH0KKworICAgICAgICBvZmZzZXRfUTEwICAgPSBzaWxrX1F1YW50aXphdGlvbl9PZmZzZXRzX1Ex
MFsgcHNJbmRpY2VzLT5zaWduYWxUeXBlID4+IDEgXVsgcHNJbmRpY2VzLT5xdWFudE9mZnNldFR5
cGUgXTsKKyAgICAgICAgc21wbF9idWZfaWR4ID0gMDsgLyogaW5kZXggb2Ygb2xkZXN0IHNhbXBs
ZXMgKi8KKworICAgICAgICBkZWNpc2lvbkRlbGF5ID0gc2lsa19taW5faW50KCBERUNJU0lPTl9E
RUxBWSwgcHNFbmNDLT5zdWJmcl9sZW5ndGggKTsKKworICAgICAgICAvKiBGb3Igdm9pY2VkIGZy
YW1lcyBsaW1pdCB0aGUgZGVjaXNpb24gZGVsYXkgdG8gbG93ZXIgdGhhbiB0aGUgcGl0Y2ggbGFn
ICovCisgICAgICAgIGlmKCBwc0luZGljZXMtPnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7
CisgICAgICAgICAgICBvcHVzX2ludCBwaXRjaF9taW4gPSBwaXRjaExbIDAgXTsKKyAgICAgICAg
ICAgIGZvciggayA9IDE7IGsgPCBwc0VuY0MtPm5iX3N1YmZyOyBrKysgKSB7CisgICAgICAgICAg
ICAgICAgcGl0Y2hfbWluID0gc2lsa19taW5faW50KCBwaXRjaF9taW4sIHBpdGNoTFsgayBdICk7
CisgICAgICAgICAgICB9CisgICAgICAgICAgICBkZWNpc2lvbkRlbGF5ID0gc2lsa19taW5faW50
KCBkZWNpc2lvbkRlbGF5LCBwaXRjaF9taW4gLSBMVFBfT1JERVIgLyAyIC0gMSApOworICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgICAgaWYoIGxhZyA+IDAgKSB7CisgICAgICAgICAgICAgICAg
ZGVjaXNpb25EZWxheSA9IHNpbGtfbWluX2ludCggZGVjaXNpb25EZWxheSwgbGFnIC0gTFRQX09S
REVSIC8gMiAtIDEgKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGlmKCBw
c0luZGljZXMtPk5MU0ZJbnRlcnBDb2VmX1EyID09IDQgKSB7CisgICAgICAgICAgICBMU0ZfaW50
ZXJwb2xhdGlvbl9mbGFnID0gMDsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIExTRl9p
bnRlcnBvbGF0aW9uX2ZsYWcgPSAxOworICAgICAgICB9CisKKyAgICAgICAgQUxMT0MoIHNMVFBf
UTE1LCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsgcHNFbmNDLT5mcmFtZV9sZW5ndGgsIG9wdXNf
aW50MzIgKTsKKyAgICAgICAgQUxMT0MoIHNMVFAsIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKyBw
c0VuY0MtPmZyYW1lX2xlbmd0aCwgb3B1c19pbnQxNiApOworICAgICAgICBBTExPQyggeF9zY19R
MTAsIHBzRW5jQy0+c3ViZnJfbGVuZ3RoLCBvcHVzX2ludDMyICk7CisgICAgICAgIEFMTE9DKCBk
ZWxheWVkR2Fpbl9RMTAsIERFQ0lTSU9OX0RFTEFZLCBvcHVzX2ludDMyICk7CisgICAgICAgIC8q
IFNldCB1cCBwb2ludGVycyB0byBzdGFydCBvZiBzdWIgZnJhbWUgKi8KKyAgICAgICAgcHhxICAg
ICAgICAgICAgICAgICAgID0gJk5TUS0+eHFbIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggXTsKKyAg
ICAgICAgTlNRLT5zTFRQX3NocF9idWZfaWR4ID0gcHNFbmNDLT5sdHBfbWVtX2xlbmd0aDsKKyAg
ICAgICAgTlNRLT5zTFRQX2J1Zl9pZHggICAgID0gcHNFbmNDLT5sdHBfbWVtX2xlbmd0aDsKKyAg
ICAgICAgc3ViZnIgPSAwOworICAgICAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmNDLT5uYl9zdWJm
cjsgaysrICkgeworICAgICAgICAgICAgQV9RMTIgICAgICA9ICZQcmVkQ29lZl9RMTJbICggKCBr
ID4+IDEgKSB8ICggMSAtIExTRl9pbnRlcnBvbGF0aW9uX2ZsYWcgKSApICogTUFYX0xQQ19PUkRF
UiBdOworICAgICAgICAgICAgQl9RMTQgICAgICA9ICZMVFBDb2VmX1ExNFsgayAqIExUUF9PUkRF
UiAgICAgICAgICAgXTsKKyAgICAgICAgICAgIEFSX3NocF9RMTMgPSAmQVJfUTEzWyAgICAgayAq
IE1BWF9TSEFQRV9MUENfT1JERVIgXTsKKworICAgICAgICAgICAgLyogTm9pc2Ugc2hhcGUgcGFy
YW1ldGVycyAqLworICAgICAgICAgICAgc2lsa19hc3NlcnQoIEhhcm1TaGFwZUdhaW5fUTE0WyBr
IF0gPj0gMCApOworICAgICAgICAgICAgSGFybVNoYXBlRklSUGFja2VkX1ExNCAgPSAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2lsa19SU0hJRlQoIEhhcm1TaGFwZUdhaW5fUTE0WyBrIF0sIDIg
KTsKKyAgICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQgfD0gc2lsa19MU0hJRlQoIChv
cHVzX2ludDMyKXNpbGtfUlNISUZUKCBIYXJtU2hhcGVHYWluX1ExNFsgayBdLCAxICksIDE2ICk7
CisKKyAgICAgICAgICAgIE5TUS0+cmV3aGl0ZV9mbGFnID0gMDsKKyAgICAgICAgICAgIGlmKCBw
c0luZGljZXMtPnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7CisgICAgICAgICAgICAgICAg
LyogVm9pY2VkICovCisgICAgICAgICAgICAgICAgbGFnID0gcGl0Y2hMWyBrIF07CisKKyAgICAg
ICAgICAgICAgICAvKiBSZS13aGl0ZW5pbmcgKi8KKyAgICAgICAgICAgICAgICBpZiggKCBrICYg
KCAzIC0gc2lsa19MU0hJRlQoIExTRl9pbnRlcnBvbGF0aW9uX2ZsYWcsIDEgKSApICkgPT0gMCAp
IHsKKyAgICAgICAgICAgICAgICAgICAgaWYoIGsgPT0gMiApIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIFJFU0VUIERFTEFZRUQgREVDSVNJT05TICovCisgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBGaW5kIHdpbm5lciAqLworICAgICAgICAgICAgICAgICAgICAgICAgaW50MzJ4NF90
IFJEX1ExMF9zMzJ4NDsKKyAgICAgICAgICAgICAgICAgICAgICAgIFJEbWluX1ExMCA9IHBzRGVs
RGVjLT5SRF9RMTBbIDAgXTsKKyAgICAgICAgICAgICAgICAgICAgICAgIFdpbm5lcl9pbmQgPSAw
OworICAgICAgICAgICAgICAgICAgICAgICAgZm9yKCBpID0gMTsgaSA8IHBzRW5jQy0+blN0YXRl
c0RlbGF5ZWREZWNpc2lvbjsgaSsrICkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlm
KCBwc0RlbERlYy0+UkRfUTEwWyBpIF0gPCBSRG1pbl9RMTAgKSB7CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFJEbWluX1ExMCA9IHBzRGVsRGVjLT5SRF9RMTBbIGkgXTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgV2lubmVyX2luZCA9IGk7CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgICAgICAgICAgcHNEZWxEZWMtPlJEX1ExMFsgV2lubmVyX2luZCBdIC09ICggc2lsa19pbnQz
Ml9NQVggPj4gNCApOworICAgICAgICAgICAgICAgICAgICAgICAgUkRfUTEwX3MzMng0ID0gdmxk
MXFfczMyKCBwc0RlbERlYy0+UkRfUTEwICk7CisgICAgICAgICAgICAgICAgICAgICAgICBSRF9R
MTBfczMyeDQgPSB2YWRkcV9zMzIoIFJEX1ExMF9zMzJ4NCwgdmR1cHFfbl9zMzIoIHNpbGtfaW50
MzJfTUFYID4+IDQgKSApOworICAgICAgICAgICAgICAgICAgICAgICAgdnN0MXFfczMyKCBwc0Rl
bERlYy0+UkRfUTEwLCBSRF9RMTBfczMyeDQgKTsKKworICAgICAgICAgICAgICAgICAgICAgICAg
LyogQ29weSBmaW5hbCBwYXJ0IG9mIHNpZ25hbHMgZnJvbSB3aW5uZXIgc3RhdGUgdG8gb3V0cHV0
IGFuZCBsb25nLXRlcm0gZmlsdGVyIHN0YXRlcyAqLworICAgICAgICAgICAgICAgICAgICAgICAg
Y29weV93aW5uZXJfc3RhdGUoIHBzRGVsRGVjLCBkZWNpc2lvbkRlbGF5LCBzbXBsX2J1Zl9pZHgs
IFdpbm5lcl9pbmQsIEdhaW5zX1ExNlsgMSBdLCAxNCwgcHVsc2VzLCBweHEsIE5TUSApOworCisg
ICAgICAgICAgICAgICAgICAgICAgICBzdWJmciA9IDA7CisgICAgICAgICAgICAgICAgICAgIH0K
KworICAgICAgICAgICAgICAgICAgICAvKiBSZXdoaXRlbiB3aXRoIG5ldyBBIGNvZWZzICovCisg
ICAgICAgICAgICAgICAgICAgIHN0YXJ0X2lkeCA9IHBzRW5jQy0+bHRwX21lbV9sZW5ndGggLSBs
YWcgLSBwc0VuY0MtPnByZWRpY3RMUENPcmRlciAtIExUUF9PUkRFUiAvIDI7CisgICAgICAgICAg
ICAgICAgICAgIHNpbGtfYXNzZXJ0KCBzdGFydF9pZHggPiAwICk7CisKKyAgICAgICAgICAgICAg
ICAgICAgc2lsa19MUENfYW5hbHlzaXNfZmlsdGVyKCAmc0xUUFsgc3RhcnRfaWR4IF0sICZOU1Et
PnhxWyBzdGFydF9pZHggKyBrICogcHNFbmNDLT5zdWJmcl9sZW5ndGggXSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgIEFfUTEyLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoIC0gc3RhcnRfaWR4LCBw
c0VuY0MtPnByZWRpY3RMUENPcmRlciwgcHNFbmNDLT5hcmNoICk7CisKKyAgICAgICAgICAgICAg
ICAgICAgTlNRLT5zTFRQX2J1Zl9pZHggPSBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoOworICAgICAg
ICAgICAgICAgICAgICBOU1EtPnJld2hpdGVfZmxhZyA9IDE7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICBzaWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRl
c19uZW9uKCBwc0VuY0MsIE5TUSwgcHNEZWxEZWMsIHgxNiwgeF9zY19RMTAsIHNMVFAsIHNMVFBf
UTE1LCBrLAorICAgICAgICAgICAgICAgIExUUF9zY2FsZV9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hM
LCBwc0luZGljZXMtPnNpZ25hbFR5cGUsIGRlY2lzaW9uRGVsYXkgKTsKKworICAgICAgICAgICAg
c2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlY19uZW9uKCBOU1EsIHBzRGVsRGVjLCBw
c0luZGljZXMtPnNpZ25hbFR5cGUsIHhfc2NfUTEwLCBwdWxzZXMsIHB4cSwgc0xUUF9RMTUsCisg
ICAgICAgICAgICAgICAgZGVsYXllZEdhaW5fUTEwLCBBX1ExMiwgQl9RMTQsIEFSX3NocF9RMTMs
IGxhZywgSGFybVNoYXBlRklSUGFja2VkX1ExNCwgVGlsdF9RMTRbIGsgXSwgTEZfc2hwX1ExNFsg
ayBdLAorICAgICAgICAgICAgICAgIEdhaW5zX1ExNlsgayBdLCBMYW1iZGFfUTEwLCBvZmZzZXRf
UTEwLCBwc0VuY0MtPnN1YmZyX2xlbmd0aCwgc3ViZnIrKywgcHNFbmNDLT5zaGFwaW5nTFBDT3Jk
ZXIsCisgICAgICAgICAgICAgICAgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIsIHBzRW5jQy0+d2Fy
cGluZ19RMTYsIHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbiwgJnNtcGxfYnVmX2lkeCwg
ZGVjaXNpb25EZWxheSApOworCisgICAgICAgICAgICB4MTYgICAgKz0gcHNFbmNDLT5zdWJmcl9s
ZW5ndGg7CisgICAgICAgICAgICBwdWxzZXMgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7CisgICAg
ICAgICAgICBweHEgICAgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7CisgICAgICAgIH0KKworICAg
ICAgICAvKiBGaW5kIHdpbm5lciAqLworICAgICAgICBSRG1pbl9RMTAgPSBwc0RlbERlYy0+UkRf
UTEwWyAwIF07CisgICAgICAgIFdpbm5lcl9pbmQgPSAwOworICAgICAgICBmb3IoIGsgPSAxOyBr
IDwgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lzaW9uOyBrKysgKSB7CisgICAgICAgICAgICBp
ZiggcHNEZWxEZWMtPlJEX1ExMFsgayBdIDwgUkRtaW5fUTEwICkgeworICAgICAgICAgICAgICAg
IFJEbWluX1ExMCA9IHBzRGVsRGVjLT5SRF9RMTBbIGsgXTsKKyAgICAgICAgICAgICAgICBXaW5u
ZXJfaW5kID0gazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIC8qIENvcHkg
ZmluYWwgcGFydCBvZiBzaWduYWxzIGZyb20gd2lubmVyIHN0YXRlIHRvIG91dHB1dCBhbmQgbG9u
Zy10ZXJtIGZpbHRlciBzdGF0ZXMgKi8KKyAgICAgICAgcHNJbmRpY2VzLT5TZWVkID0gcHNEZWxE
ZWMtPlNlZWRJbml0WyBXaW5uZXJfaW5kIF07CisgICAgICAgIEdhaW5fUTEwID0gc2lsa19SU0hJ
RlQzMiggR2FpbnNfUTE2WyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBdLCA2ICk7CisgICAgICAgIGNv
cHlfd2lubmVyX3N0YXRlKCBwc0RlbERlYywgZGVjaXNpb25EZWxheSwgc21wbF9idWZfaWR4LCBX
aW5uZXJfaW5kLCBHYWluX1ExMCwgOCwgcHVsc2VzLCBweHEsIE5TUSApOworCisgICAgICAgIHRf
czMyeDQgPSB2ZHVwcV9uX3MzMiggMCApOyAvKiBpbml0aWFsaXphdGlvbiAqLworICAgICAgICBm
b3IoIGkgPSAwOyBpIDwgKCBOU1FfTFBDX0JVRl9MRU5HVEggLSAzICk7IGkgKz0gNCApIHsKKyAg
ICAgICAgICAgIHRfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5zTFBDX1ExNFsg
aSArIDAgXVsgV2lubmVyX2luZCBdLCB0X3MzMng0LCAwICk7CisgICAgICAgICAgICB0X3MzMng0
ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+c0xQQ19RMTRbIGkgKyAxIF1bIFdpbm5lcl9p
bmQgXSwgdF9zMzJ4NCwgMSApOworICAgICAgICAgICAgdF9zMzJ4NCA9IHZsZDFxX2xhbmVfczMy
KCAmcHNEZWxEZWMtPnNMUENfUTE0WyBpICsgMiBdWyBXaW5uZXJfaW5kIF0sIHRfczMyeDQsIDIg
KTsKKyAgICAgICAgICAgIHRfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5zTFBD
X1ExNFsgaSArIDMgXVsgV2lubmVyX2luZCBdLCB0X3MzMng0LCAzICk7CisgICAgICAgICAgICB2
c3QxcV9zMzIoICZOU1EtPnNMUENfUTE0WyBpIF0sIHRfczMyeDQgKTsKKyAgICAgICAgfQorCisg
ICAgICAgIGZvciggOyBpIDwgTlNRX0xQQ19CVUZfTEVOR1RIOyBpKysgKSB7CisgICAgICAgICAg
TlNRLT5zTFBDX1ExNFsgaSBdID0gcHNEZWxEZWMtPnNMUENfUTE0WyBpIF1bIFdpbm5lcl9pbmQg
XTsKKyAgICAgICAgfQorCisgICAgICAgIGZvciggaSA9IDA7IGkgPCAob3B1c19pbnQpKCBzaXpl
b2YoIE5TUS0+c0FSMl9RMTQgKSAvIHNpemVvZiggTlNRLT5zQVIyX1ExNFsgMCBdICkgLSAzICk7
IGkgKz0gNCApIHsKKyAgICAgICAgICAgIHRfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVs
RGVjLT5zQVIyX1ExNFsgaSArIDAgXVsgV2lubmVyX2luZCBdLCB0X3MzMng0LCAwICk7CisgICAg
ICAgICAgICB0X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+c0FSMl9RMTRbIGkg
KyAxIF1bIFdpbm5lcl9pbmQgXSwgdF9zMzJ4NCwgMSApOworICAgICAgICAgICAgdF9zMzJ4NCA9
IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPnNBUjJfUTE0WyBpICsgMiBdWyBXaW5uZXJfaW5k
IF0sIHRfczMyeDQsIDIgKTsKKyAgICAgICAgICAgIHRfczMyeDQgPSB2bGQxcV9sYW5lX3MzMigg
JnBzRGVsRGVjLT5zQVIyX1ExNFsgaSArIDMgXVsgV2lubmVyX2luZCBdLCB0X3MzMng0LCAzICk7
CisgICAgICAgICAgICB2c3QxcV9zMzIoICZOU1EtPnNBUjJfUTE0WyBpIF0sIHRfczMyeDQgKTsK
KyAgICAgICAgfQorCisgICAgICAgIGZvciggOyBpIDwgKG9wdXNfaW50KSggc2l6ZW9mKCBOU1Et
PnNBUjJfUTE0ICkgLyBzaXplb2YoIE5TUS0+c0FSMl9RMTRbIDAgXSApICk7IGkrKyApIHsKKyAg
ICAgICAgICBOU1EtPnNBUjJfUTE0WyBpIF0gPSBwc0RlbERlYy0+c0FSMl9RMTRbIGkgXVsgV2lu
bmVyX2luZCBdOworICAgICAgICB9CisKKyAgICAgICAgLyogVXBkYXRlIHN0YXRlcyAqLworICAg
ICAgICBOU1EtPnNMRl9BUl9zaHBfUTE0ID0gcHNEZWxEZWMtPkxGX0FSX1ExNFsgV2lubmVyX2lu
ZCBdOworICAgICAgICBOU1EtPnNEaWZmX3NocF9RMTQgID0gcHNEZWxEZWMtPkRpZmZfUTE0WyBX
aW5uZXJfaW5kIF07CisgICAgICAgIE5TUS0+bGFnUHJldiAgICAgICAgPSBwaXRjaExbIHBzRW5j
Qy0+bmJfc3ViZnIgLSAxIF07CisKKyAgICAgICAgLyogU2F2ZSBxdWFudGl6ZWQgc3BlZWNoIHNp
Z25hbCAqLworICAgICAgICBzaWxrX21lbW1vdmUoIE5TUS0+eHEsICAgICAgICAgICAmTlNRLT54
cVsgICAgICAgICAgIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoIF0sIHBzRW5jQy0+bHRwX21lbV9sZW5n
dGggKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOworICAgICAgICBzaWxrX21lbW1vdmUoIE5TUS0+
c0xUUF9zaHBfUTE0LCAmTlNRLT5zTFRQX3NocF9RMTRbIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoIF0s
IHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOworICAgICAg
ICBSRVNUT1JFX1NUQUNLOworICAgIH0KKworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisgICAgc2ls
a19hc3NlcnQoICFtZW1jbXAoICZOU1FfYywgTlNRLCBzaXplb2YoIE5TUV9jICkgKSApOworICAg
IHNpbGtfYXNzZXJ0KCAhbWVtY21wKCAmcHNJbmRpY2VzX2MsIHBzSW5kaWNlcywgc2l6ZW9mKCBw
c0luZGljZXNfYyApICkgKTsKKyAgICBzaWxrX2Fzc2VydCggIW1lbWNtcCggcHVsc2VzX2MsIHB1
bHNlc19hLCBzaXplb2YoIHB1bHNlc19jICkgKSApOworI2VuZGlmCit9CisKKy8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiBOb2lzZSBzaGFwZSBxdWFudGl6
ZXIgZm9yIG9uZSBzdWJmcmFtZSAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KKy8qIE5vdGU6IEZ1bmN0aW9uIHNpbGtfc2hvcnRfcHJlZGljdGlvbl9jcmVh
dGVfYXJjaF9jb2VmX25lb24oKSBkZWZpbmVkIGluIE5TUV9uZW9uLmggaXMgYWN0dWFsbHkgYSBo
YWNraW5nIEMgZnVuY3Rpb24uICovCisvKiAgICAgICBUaGVyZWZvcmUgaGVyZSB3ZSBhcHBlbmQg
Il9sb2NhbCIgdG8gdGhlIE5FT04gZnVuY3Rpb24gbmFtZSB0byBhdm9pZCBjb25mdXNpb24uICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19zaG9ydF9wcmVkaWN0aW9uX2NyZWF0ZV9hcmNoX2NvZWZfbmVvbl9sb2NhbChvcHVzX2lu
dDMyICpvdXQsIGNvbnN0IG9wdXNfaW50MTYgKmluLCBvcHVzX2ludCBvcmRlcikKK3sKKyAgaW50
MTZ4OF90IHRfczE2eDg7CisgIGludDMyeDRfdCB0MF9zMzJ4NCwgdDFfczMyeDQsIHQyX3MzMng0
LCB0M19zMzJ4NDsKKyAgc2lsa19hc3NlcnQoIG9yZGVyID09IDEwIHx8IG9yZGVyID09IDE2ICk7
CisKKyAgdF9zMTZ4OCA9IHZsZDFxX3MxNiggaW4gKyAwICk7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogNyA2IDUgNCAgMyAyIDEgMCAgICAqLwor
ICB0X3MxNng4ID0gdnJldjY0cV9zMTYoIHRfczE2eDggKTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiA0IDUgNiA3ICAwIDEgMiAzICAgICovCisgIHQy
X3MzMng0ID0gdnNobGxfbl9zMTYoIHZnZXRfaGlnaF9zMTYoIHRfczE2eDggKSwgMTUgKTsgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIDQgNSA2IDcgICAgICAgICAgICAgKi8KKyAgdDNfczMy
eDQgPSB2c2hsbF9uX3MxNiggdmdldF9sb3dfczE2KCAgdF9zMTZ4OCApLCAxNSApOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogMCAxIDIgMyAgICAgICAgICAgICAqLworCisgIGlmKCBvcmRl
ciA9PSAxNiApIHsKKyAgICAgIHRfczE2eDggPSB2bGQxcV9zMTYoIGluICsgOCApOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogRiBFIEQgQyAgQiBBIDkg
OCAgICAqLworICAgICAgdF9zMTZ4OCA9IHZyZXY2NHFfczE2KCB0X3MxNng4ICk7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBDIEQgRSBGICA4IDkgQSBCICAg
ICovCisgICAgICB0MF9zMzJ4NCA9IHZzaGxsX25fczE2KCB2Z2V0X2hpZ2hfczE2KCB0X3MxNng4
ICksIDE1ICk7ICAgICAgICAgICAgICAgICAgICAgIC8qIEMgRCBFIEYgICAgICAgICAgICAgKi8K
KyAgICAgIHQxX3MzMng0ID0gdnNobGxfbl9zMTYoIHZnZXRfbG93X3MxNiggIHRfczE2eDggKSwg
MTUgKTsgICAgICAgICAgICAgICAgICAgICAgLyogOCA5IEEgQiAgICAgICAgICAgICAqLworICB9
IGVsc2UgeworICAgICAgaW50MTZ4NF90IHRfczE2eDQ7CisKKyAgICAgIHQwX3MzMng0ID0gdmR1
cHFfbl9zMzIoIDAgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogemVybyB6ZXJvIHplcm8gemVybyAqLworICAgICAgdF9zMTZ4NCA9IHZsZDFfczE2
KCBpbiArIDYgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiA5ICAgIDggICAgNyAgICA2ICAgICovCisgICAgICB0X3MxNng0ID0gdnJldjY0X3MxNigg
dF9zMTZ4NCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IDYgICAgNyAgICA4ICAgIDkgICAgKi8KKyAgICAgIHQxX3MzMng0ID0gdnNobGxfbl9zMTYoIHRf
czE2eDQsIDE1ICk7CisgICAgICB0MV9zMzJ4NCA9IHZjb21iaW5lX3MzMiggdmdldF9sb3dfczMy
KHQwX3MzMng0KSwgdmdldF9sb3dfczMyKCB0MV9zMzJ4NCApICk7IC8qIDggICAgOSAgICB6ZXJv
IHplcm8gKi8KKyAgfQorICB2c3QxcV9zMzIoIG91dCArICAwLCB0MF9zMzJ4NCApOworICB2c3Qx
cV9zMzIoIG91dCArICA0LCB0MV9zMzJ4NCApOworICB2c3QxcV9zMzIoIG91dCArICA4LCB0Ml9z
MzJ4NCApOworICB2c3QxcV9zMzIoIG91dCArIDEyLCB0M19zMzJ4NCApOworfQorCitzdGF0aWMg
T1BVU19JTkxJTkUgaW50MzJ4NF90IHNpbGtfU01MQVdCX2xhbmUwX25lb24oCisgICAgY29uc3Qg
aW50MzJ4NF90IG91dF9zMzJ4NCwKKyAgICBjb25zdCBpbnQzMng0X3QgaW5fczMyeDQsCisgICAg
Y29uc3QgaW50MzJ4Ml90IGNvZWZfczMyeDIKKykKK3sKKyAgICByZXR1cm4gdmFkZHFfczMyKCBv
dXRfczMyeDQsIHZxZG11bGhxX2xhbmVfczMyKCBpbl9zMzJ4NCwgY29lZl9zMzJ4MiwgMCApICk7
Cit9CisKK3N0YXRpYyBPUFVTX0lOTElORSBpbnQzMng0X3Qgc2lsa19TTUxBV0JfbGFuZTFfbmVv
bigKKyAgICBjb25zdCBpbnQzMng0X3Qgb3V0X3MzMng0LAorICAgIGNvbnN0IGludDMyeDRfdCBp
bl9zMzJ4NCwKKyAgICBjb25zdCBpbnQzMngyX3QgY29lZl9zMzJ4MgorKQoreworICAgIHJldHVy
biB2YWRkcV9zMzIoIG91dF9zMzJ4NCwgdnFkbXVsaHFfbGFuZV9zMzIoIGluX3MzMng0LCBjb2Vm
X3MzMngyLCAxICkgKTsKK30KKworLyogTm90ZTogVGhpcyBmdW5jdGlvbiBoYXMgZGlmZmVyZW50
IHJldHVybiB2YWx1ZSB0aGFuIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX3Nob3J0X3ByZWRp
Y3Rpb25fbmVvbigpLiAqLworLyogICAgICAgVGhlcmVmb3JlIGhlcmUgd2UgYXBwZW5kICJfbG9j
YWwiIHRvIHRoZSBmdW5jdGlvbiBuYW1lIHRvIGF2b2lkIGNvbmZ1c2lvbi4gICAgICAgICAgICAg
ICAgICAgICAgICAqLworc3RhdGljIE9QVVNfSU5MSU5FIGludDMyeDRfdCBzaWxrX25vaXNlX3No
YXBlX3F1YW50aXplcl9zaG9ydF9wcmVkaWN0aW9uX25lb25fbG9jYWwoY29uc3Qgb3B1c19pbnQz
MiAqYnVmMzIsIGNvbnN0IG9wdXNfaW50MzIgKmFfUTEyX2FyY2gsIG9wdXNfaW50IG9yZGVyKQor
eworICAgIGNvbnN0IGludDMyeDRfdCBhX1ExMl9hcmNoMF9zMzJ4NCA9IHZsZDFxX3MzMiggYV9R
MTJfYXJjaCArIDAgKTsKKyAgICBjb25zdCBpbnQzMng0X3QgYV9RMTJfYXJjaDFfczMyeDQgPSB2
bGQxcV9zMzIoIGFfUTEyX2FyY2ggKyA0ICk7CisgICAgY29uc3QgaW50MzJ4NF90IGFfUTEyX2Fy
Y2gyX3MzMng0ID0gdmxkMXFfczMyKCBhX1ExMl9hcmNoICsgOCApOworICAgIGNvbnN0IGludDMy
eDRfdCBhX1ExMl9hcmNoM19zMzJ4NCA9IHZsZDFxX3MzMiggYV9RMTJfYXJjaCArIDEyICk7Cisg
ICAgaW50MzJ4NF90IExQQ19wcmVkX1ExNF9zMzJ4NDsKKworICAgIHNpbGtfYXNzZXJ0KCBvcmRl
ciA9PSAxMCB8fCBvcmRlciA9PSAxNiApOworICAgIC8qIEF2b2lkcyBpbnRyb2R1Y2luZyBhIGJp
YXMgYmVjYXVzZSBzaWxrX1NNTEFXQigpIGFsd2F5cyByb3VuZHMgdG8gLWluZiAqLworICAgIExQ
Q19wcmVkX1ExNF9zMzJ4NCA9IHZkdXBxX25fczMyKCBzaWxrX1JTSElGVCggb3JkZXIsIDEgKSAp
OworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIExQQ19w
cmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArICAwICogTkVPTl9NQVhfREVMX0RFQ19T
VEFURVMgKSwgdmdldF9sb3dfczMyKCAgYV9RMTJfYXJjaDBfczMyeDQgKSApOworICAgIExQQ19w
cmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUxX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4
NCwgdmxkMXFfczMyKCBidWYzMiArICAxICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdl
dF9sb3dfczMyKCAgYV9RMTJfYXJjaDBfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4
NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMy
KCBidWYzMiArICAyICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9oaWdoX3MzMigg
YV9RMTJfYXJjaDBfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01M
QVdCX2xhbmUxX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArICAz
ICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9oaWdoX3MzMiggYV9RMTJfYXJjaDBf
czMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25l
b24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArICA0ICogTkVPTl9NQVhf
REVMX0RFQ19TVEFURVMgKSwgdmdldF9sb3dfczMyKCAgYV9RMTJfYXJjaDFfczMyeDQgKSApOwor
ICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUxX25lb24oIExQQ19wcmVk
X1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArICA1ICogTkVPTl9NQVhfREVMX0RFQ19TVEFU
RVMgKSwgdmdldF9sb3dfczMyKCAgYV9RMTJfYXJjaDFfczMyeDQgKSApOworICAgIExQQ19wcmVk
X1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwg
dmxkMXFfczMyKCBidWYzMiArICA2ICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9o
aWdoX3MzMiggYV9RMTJfYXJjaDFfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9
IHNpbGtfU01MQVdCX2xhbmUxX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBi
dWYzMiArICA3ICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9oaWdoX3MzMiggYV9R
MTJfYXJjaDFfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdC
X2xhbmUwX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArICA4ICog
TkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9sb3dfczMyKCAgYV9RMTJfYXJjaDJfczMy
eDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUxX25lb24o
IExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArICA5ICogTkVPTl9NQVhfREVM
X0RFQ19TVEFURVMgKSwgdmdldF9sb3dfczMyKCAgYV9RMTJfYXJjaDJfczMyeDQgKSApOworICAg
IExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIExQQ19wcmVkX1Ex
NF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArIDEwICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMg
KSwgdmdldF9oaWdoX3MzMiggYV9RMTJfYXJjaDJfczMyeDQgKSApOworICAgIExQQ19wcmVkX1Ex
NF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUxX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxk
MXFfczMyKCBidWYzMiArIDExICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9oaWdo
X3MzMiggYV9RMTJfYXJjaDJfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNp
bGtfU01MQVdCX2xhbmUwX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYz
MiArIDEyICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9sb3dfczMyKCAgYV9RMTJf
YXJjaDNfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xh
bmUxX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArIDEzICogTkVP
Tl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9sb3dfczMyKCAgYV9RMTJfYXJjaDNfczMyeDQg
KSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIExQ
Q19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArIDE0ICogTkVPTl9NQVhfREVMX0RF
Q19TVEFURVMgKSwgdmdldF9oaWdoX3MzMiggYV9RMTJfYXJjaDNfczMyeDQgKSApOworICAgIExQ
Q19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUxX25lb24oIExQQ19wcmVkX1ExNF9z
MzJ4NCwgdmxkMXFfczMyKCBidWYzMiArIDE1ICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwg
dmdldF9oaWdoX3MzMiggYV9RMTJfYXJjaDNfczMyeDQgKSApOworCisgICAgcmV0dXJuIExQQ19w
cmVkX1ExNF9zMzJ4NDsKK30KKworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9z
aGFwZV9xdWFudGl6ZXJfZGVsX2RlY19uZW9uKAorICAgIHNpbGtfbnNxX3N0YXRlICAgICAgKk5T
USwgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIE5TUV9kZWxfZGVjc19zdHJ1Y3QgcHNEZWxEZWNbXSwgICAgICAgICAg
ICAgLyogSS9PICBEZWxheWVkIGRlY2lzaW9uIHN0YXRlcyAgICAgICAgICAgICAqLworICAgIG9w
dXNfaW50ICAgICAgICAgICAgc2lnbmFsVHlwZSwgICAgICAgICAgICAgLyogSSAgICBTaWduYWwg
dHlwZSAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAg
eF9RMTBbXSwgICAgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIG9wdXNfaW50OCAgICAgICAgICAgcHVsc2VzW10sICAgICAgICAg
ICAgICAgLyogTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IG9wdXNfaW50MTYgICAgICAgICAgeHFbXSwgICAgICAgICAgICAgICAgICAgLyogTyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAg
ICAgc0xUUF9RMTVbXSwgICAgICAgICAgICAgLyogSS9PICBMVFAgZmlsdGVyIHN0YXRlICAgICAg
ICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgZGVsYXllZEdhaW5fUTEw
W10sICAgICAgLyogSS9PICBHYWluIGRlbGF5IGJ1ZmZlciAgICAgICAgICAgICAgICAgICAqLwor
ICAgIGNvbnN0IG9wdXNfaW50MTYgICAgYV9RMTJbXSwgICAgICAgICAgICAgICAgLyogSSAgICBT
aG9ydCB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgYl9RMTRbXSwgICAgICAgICAgICAgICAgLyogSSAgICBMb25nIHRlcm0gcHJlZGljdGlv
biBjb2VmcyAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgQVJfc2hwX1ExM1td
LCAgICAgICAgICAgLyogSSAgICBOb2lzZSBzaGFwaW5nIGNvZWZzICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50ICAgICAgICAgICAgbGFnLCAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBQaXRjaCBsYWcgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIg
ICAgICAgICAgSGFybVNoYXBlRklSUGFja2VkX1ExNCwgLyogSSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgVGlsdF9RMTQs
ICAgICAgICAgICAgICAgLyogSSAgICBTcGVjdHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgTEZfc2hwX1ExNCwgICAgICAgICAgICAgLyog
SSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50
MzIgICAgICAgICAgR2Fpbl9RMTYsICAgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgTGFtYmRh
X1ExMCwgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgb2Zmc2V0X1ExMCwgICAgICAgICAgICAg
LyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNf
aW50ICAgICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBsZW5n
dGggICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgc3Vi
ZnIsICAgICAgICAgICAgICAgICAgLyogSSAgICBTdWJmcmFtZSBudW1iZXIgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgc2hhcGluZ0xQQ09yZGVyLCAgICAg
ICAgLyogSSAgICBTaGFwaW5nIExQQyBmaWx0ZXIgb3JkZXIgICAgICAgICAgICAqLworICAgIG9w
dXNfaW50ICAgICAgICAgICAgcHJlZGljdExQQ09yZGVyLCAgICAgICAgLyogSSAgICBQcmVkaWN0
aW9uIGZpbHRlciBvcmRlciAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAg
d2FycGluZ19RMTYsICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgblN0YXRlc0RlbGF5ZWREZWNp
c2lvbiwgLyogSSAgICBOdW1iZXIgb2Ygc3RhdGVzIGluIGRlY2lzaW9uIHRyZWUgICAqLworICAg
IG9wdXNfaW50ICAgICAgICAgICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAgLyogSS9PICBJbmRl
eCB0byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZmZXJzICAqLworICAgIG9wdXNfaW50ICAgICAgICAg
ICAgZGVjaXNpb25EZWxheSAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworKQoreworICAgIG9wdXNfaW50ICAgICBpLCBqLCBrLCBXaW5uZXJf
aW5kLCBSRG1pbl9pbmQsIFJEbWF4X2luZCwgbGFzdF9zbXBsZV9pZHg7CisgICAgb3B1c19pbnQz
MiAgIFdpbm5lcl9yYW5kX3N0YXRlOworICAgIG9wdXNfaW50MzIgICBMVFBfcHJlZF9RMTQsIG5f
TFRQX1ExNDsKKyAgICBvcHVzX2ludDMyICAgUkRtaW5fUTEwLCBSRG1heF9RMTA7CisgICAgb3B1
c19pbnQzMiAgIEdhaW5fUTEwOworICAgIG9wdXNfaW50MzIgICAqcHJlZF9sYWdfcHRyLCAqc2hw
X2xhZ19wdHI7CisgICAgb3B1c19pbnQzMiAgIGFfUTEyX2FyY2hbTUFYX0xQQ19PUkRFUl07Cisg
ICAgY29uc3QgaW50MzJ4Ml90IHdhcnBpbmdfUTE2X3MzMngyID0gdmR1cF9uX3MzMiggc2lsa19M
U0hJRlQzMiggd2FycGluZ19RMTYsIDE2ICkgPj4gMSApOworICAgIGNvbnN0IG9wdXNfaW50MzIg
TEZfc2hwX1EyOSA9IHNpbGtfTFNISUZUMzIoIExGX3NocF9RMTQsIDE2ICkgPj4gMTsKKyAgICBv
cHVzX2ludDMyIEFSX3NocF9RMjhbIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKKyAgICBjb25zdCB1
aW50MzJ4NF90IHJhbmRfbXVsdGlwbGllcl91MzJ4NCA9IHZkdXBxX25fdTMyKCBSQU5EX01VTFRJ
UExJRVIgKTsKKyAgICBjb25zdCB1aW50MzJ4NF90IHJhbmRfaW5jcmVtZW50X3UzMng0ID0gdmR1
cHFfbl91MzIoIFJBTkRfSU5DUkVNRU5UICk7CisKKyAgICBWQVJERUNMKCBOU1Ffc2FtcGxlc19z
dHJ1Y3QsIHBzU2FtcGxlU3RhdGUgKTsKKyAgICBTQVZFX1NUQUNLOworCisgICAgc2lsa19hc3Nl
cnQoIG5TdGF0ZXNEZWxheWVkRGVjaXNpb24gPiAwICk7CisgICAgc2lsa19hc3NlcnQoICggc2hh
cGluZ0xQQ09yZGVyICYgMSApID09IDAgKTsgICAvKiBjaGVjayB0aGF0IG9yZGVyIGlzIGV2ZW4g
Ki8KKyAgICBBTExPQyggcHNTYW1wbGVTdGF0ZSwgMiwgTlNRX3NhbXBsZXNfc3RydWN0ICk7CisK
KyAgICBzaHBfbGFnX3B0ciAgPSAmTlNRLT5zTFRQX3NocF9RMTRbIE5TUS0+c0xUUF9zaHBfYnVm
X2lkeCAtIGxhZyArIEhBUk1fU0hBUEVfRklSX1RBUFMgLyAyIF07CisgICAgcHJlZF9sYWdfcHRy
ID0gJnNMVFBfUTE1WyBOU1EtPnNMVFBfYnVmX2lkeCAtIGxhZyArIExUUF9PUkRFUiAvIDIgXTsK
KyAgICBHYWluX1ExMCAgICAgPSBzaWxrX1JTSElGVCggR2Fpbl9RMTYsIDYgKTsKKworICAgIGZv
ciggaSA9IDA7IGkgPCAoIE1BWF9TSEFQRV9MUENfT1JERVIgLSA3ICk7IGkgKz0gOCApIHsKKyAg
ICAgIGNvbnN0IGludDE2eDhfdCB0X3MxNng4ID0gdmxkMXFfczE2KCBBUl9zaHBfUTEzICsgIGkg
KTsKKyAgICAgIHZzdDFxX3MzMiggQVJfc2hwX1EyOCArIGkgKyAwLCB2c2hsbF9uX3MxNiggdmdl
dF9sb3dfczE2KCAgdF9zMTZ4OCApLCAxNSApICk7CisgICAgICB2c3QxcV9zMzIoIEFSX3NocF9R
MjggKyBpICsgNCwgdnNobGxfbl9zMTYoIHZnZXRfaGlnaF9zMTYoIHRfczE2eDggKSwgMTUgKSAp
OworICAgIH0KKworICAgIGZvciggOyBpIDwgTUFYX1NIQVBFX0xQQ19PUkRFUjsgaSsrICkgewor
ICAgICAgQVJfc2hwX1EyOFtpXSA9IHNpbGtfTFNISUZUMzIoIEFSX3NocF9RMTNbaV0sIDE1ICk7
CisgICAgfQorCisgICAgc2lsa19zaG9ydF9wcmVkaWN0aW9uX2NyZWF0ZV9hcmNoX2NvZWZfbmVv
bl9sb2NhbCggYV9RMTJfYXJjaCwgYV9RMTIsIHByZWRpY3RMUENPcmRlciApOworCisgICAgZm9y
KCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrICkgeworICAgICAgICBpbnQzMng0X3QgU2VlZF9zMzJ4
NCwgTFBDX3ByZWRfUTE0X3MzMng0OworICAgICAgICBpbnQzMng0X3Qgc2lnbl9zMzJ4NCwgdG1w
MV9zMzJ4NCwgdG1wMl9zMzJ4NDsKKyAgICAgICAgaW50MzJ4NF90IG5fQVJfUTE0X3MzMng0LCBu
X0xGX1ExNF9zMzJ4NDsKKyAgICAgICAgaW50MzJ4Ml90IEFSX3NocF9RMjhfczMyeDI7CisgICAg
ICAgIGludDE2eDRfdCByX1ExMF9zMTZ4NCwgcnJfUTEwX3MxNng0OworCisgICAgICAgIC8qIFBl
cmZvcm0gY29tbW9uIGNhbGN1bGF0aW9ucyB1c2VkIGluIGFsbCBzdGF0ZXMgKi8KKworICAgICAg
ICAvKiBMb25nLXRlcm0gcHJlZGljdGlvbiAqLworICAgICAgICBpZiggc2lnbmFsVHlwZSA9PSBU
WVBFX1ZPSUNFRCApIHsKKyAgICAgICAgICAgIC8qIFVucm9sbGVkIGxvb3AgKi8KKyAgICAgICAg
ICAgIC8qIEF2b2lkcyBpbnRyb2R1Y2luZyBhIGJpYXMgYmVjYXVzZSBzaWxrX1NNTEFXQigpIGFs
d2F5cyByb3VuZHMgdG8gLWluZiAqLworICAgICAgICAgICAgTFRQX3ByZWRfUTE0ID0gMjsKKyAg
ICAgICAgICAgIExUUF9wcmVkX1ExNCA9IHNpbGtfU01MQVdCKCBMVFBfcHJlZF9RMTQsIHByZWRf
bGFnX3B0clsgIDAgXSwgYl9RMTRbIDAgXSApOworICAgICAgICAgICAgTFRQX3ByZWRfUTE0ID0g
c2lsa19TTUxBV0IoIExUUF9wcmVkX1ExNCwgcHJlZF9sYWdfcHRyWyAtMSBdLCBiX1ExNFsgMSBd
ICk7CisgICAgICAgICAgICBMVFBfcHJlZF9RMTQgPSBzaWxrX1NNTEFXQiggTFRQX3ByZWRfUTE0
LCBwcmVkX2xhZ19wdHJbIC0yIF0sIGJfUTE0WyAyIF0gKTsKKyAgICAgICAgICAgIExUUF9wcmVk
X1ExNCA9IHNpbGtfU01MQVdCKCBMVFBfcHJlZF9RMTQsIHByZWRfbGFnX3B0clsgLTMgXSwgYl9R
MTRbIDMgXSApOworICAgICAgICAgICAgTFRQX3ByZWRfUTE0ID0gc2lsa19TTUxBV0IoIExUUF9w
cmVkX1ExNCwgcHJlZF9sYWdfcHRyWyAtNCBdLCBiX1ExNFsgNCBdICk7CisgICAgICAgICAgICBM
VFBfcHJlZF9RMTQgPSBzaWxrX0xTSElGVCggTFRQX3ByZWRfUTE0LCAxICk7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBRMTMgLT4gUTE0ICovCisgICAgICAgICAgICBwcmVkX2xhZ19wdHIr
KzsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIExUUF9wcmVkX1ExNCA9IDA7CisgICAg
ICAgIH0KKworICAgICAgICAvKiBMb25nLXRlcm0gc2hhcGluZyAqLworICAgICAgICBpZiggbGFn
ID4gMCApIHsKKyAgICAgICAgICAgIC8qIFN5bW1ldHJpYywgcGFja2VkIEZJUiBjb2VmZmljaWVu
dHMgKi8KKyAgICAgICAgICAgIG5fTFRQX1ExNCA9IHNpbGtfU01VTFdCKCBzaWxrX0FERDMyKCBz
aHBfbGFnX3B0clsgMCBdLCBzaHBfbGFnX3B0clsgLTIgXSApLCBIYXJtU2hhcGVGSVJQYWNrZWRf
UTE0ICk7CisgICAgICAgICAgICBuX0xUUF9RMTQgPSBzaWxrX1NNTEFXVCggbl9MVFBfUTE0LCBz
aHBfbGFnX3B0clsgLTEgXSwgICAgICAgICAgICAgICAgICAgICAgSGFybVNoYXBlRklSUGFja2Vk
X1ExNCApOworICAgICAgICAgICAgbl9MVFBfUTE0ID0gc2lsa19TVUJfTFNISUZUMzIoIExUUF9w
cmVkX1ExNCwgbl9MVFBfUTE0LCAyICk7ICAgICAgICAgICAgLyogUTEyIC0+IFExNCAqLworICAg
ICAgICAgICAgc2hwX2xhZ19wdHIrKzsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG5f
TFRQX1ExNCA9IDA7CisgICAgICAgIH0KKworICAgICAgICAvKiBHZW5lcmF0ZSBkaXRoZXIgKi8K
KyAgICAgICAgU2VlZF9zMzJ4NCA9IHZsZDFxX3MzMiggcHNEZWxEZWMtPlNlZWQgKTsKKyAgICAg
ICAgU2VlZF9zMzJ4NCA9IHZyZWludGVycHJldHFfczMyX3UzMiggdm1sYXFfdTMyKCByYW5kX2lu
Y3JlbWVudF91MzJ4NCwgdnJlaW50ZXJwcmV0cV91MzJfczMyKCBTZWVkX3MzMng0ICksIHJhbmRf
bXVsdGlwbGllcl91MzJ4NCApICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlNlZWQs
IFNlZWRfczMyeDQgKTsKKworICAgICAgICAvKiBTaG9ydC10ZXJtIHByZWRpY3Rpb24gKi8KKyAg
ICAgICAgTFBDX3ByZWRfUTE0X3MzMng0ID0gc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfc2hv
cnRfcHJlZGljdGlvbl9uZW9uX2xvY2FsKHBzRGVsRGVjLT5zTFBDX1ExNFsgTlNRX0xQQ19CVUZf
TEVOR1RIIC0gMTYgKyBpIF0sIGFfUTEyX2FyY2gsIHByZWRpY3RMUENPcmRlcik7CisgICAgICAg
IExQQ19wcmVkX1ExNF9zMzJ4NCA9IHZzaGxxX25fczMyKCBMUENfcHJlZF9RMTRfczMyeDQsIDQg
KTsgLyogUTEwIC0+IFExNCAqLworCisgICAgICAgIC8qIE5vaXNlIHNoYXBlIGZlZWRiYWNrICov
CisgICAgICAgIC8qIE91dHB1dCBvZiBsb3dwYXNzIHNlY3Rpb24gKi8KKyAgICAgICAgdG1wMl9z
MzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIHZsZDFxX3MzMiggcHNEZWxEZWMtPkRpZmZf
UTE0ICksIHZsZDFxX3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyAwIF0gKSwgd2FycGluZ19RMTZf
czMyeDIgKTsKKyAgICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLworICAgICAg
ICB0bXAxX3MzMng0ID0gdnN1YnFfczMyKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5zQVIyX1ExNFsg
MSBdICksIHRtcDJfczMyeDQgKTsKKyAgICAgICAgdG1wMV9zMzJ4NCA9IHNpbGtfU01MQVdCX2xh
bmUwX25lb24oIHZsZDFxX3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyAwIF0gKSwgdG1wMV9zMzJ4
NCwgd2FycGluZ19RMTZfczMyeDIgKTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+c0FS
Ml9RMTRbIDAgXSwgdG1wMl9zMzJ4NCApOworICAgICAgICBBUl9zaHBfUTI4X3MzMngyID0gdmxk
MV9zMzIoIEFSX3NocF9RMjggKTsKKyAgICAgICAgbl9BUl9RMTRfczMyeDQgPSB2YWRkcV9zMzIo
IHZkdXBxX25fczMyKCBzaWxrX1JTSElGVCggc2hhcGluZ0xQQ09yZGVyLCAxICkgKSwgdnFkbXVs
aHFfbGFuZV9zMzIoIHRtcDJfczMyeDQsIEFSX3NocF9RMjhfczMyeDIsIDAgKSApOworCisgICAg
ICAgIC8qIExvb3Agb3ZlciBhbGxwYXNzIHNlY3Rpb25zICovCisgICAgICAgIGZvciggaiA9IDI7
IGogPCBzaGFwaW5nTFBDT3JkZXI7IGogKz0gMiApIHsKKyAgICAgICAgICAgIC8qIE91dHB1dCBv
ZiBhbGxwYXNzIHNlY3Rpb24gKi8KKyAgICAgICAgICAgIHRtcDJfczMyeDQgPSB2c3VicV9zMzIo
IHZsZDFxX3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyBqICsgMCBdICksIHRtcDFfczMyeDQgKTsK
KyAgICAgICAgICAgIHRtcDJfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCB2bGQxcV9z
MzIoIHBzRGVsRGVjLT5zQVIyX1ExNFsgaiAtIDEgXSApLCB0bXAyX3MzMng0LCB3YXJwaW5nX1Ex
Nl9zMzJ4MiApOworICAgICAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+c0FSMl9RMTRbIGog
LSAxIF0sIHRtcDFfczMyeDQgKTsKKyAgICAgICAgICAgIG5fQVJfUTE0X3MzMng0ID0gdmFkZHFf
czMyKCBuX0FSX1ExNF9zMzJ4NCwgdnFkbXVsaHFfbGFuZV9zMzIoIHRtcDFfczMyeDQsIEFSX3No
cF9RMjhfczMyeDIsIDEgKSApOworICAgICAgICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2Vj
dGlvbiAqLworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHZzdWJxX3MzMiggdmxkMXFfczMyKCBw
c0RlbERlYy0+c0FSMl9RMTRbIGogKyAxIF0gKSwgdG1wMl9zMzJ4NCApOworICAgICAgICAgICAg
dG1wMV9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIHZsZDFxX3MzMiggcHNEZWxEZWMt
PnNBUjJfUTE0WyBqICsgMCBdICksIHRtcDFfczMyeDQsIHdhcnBpbmdfUTE2X3MzMngyICk7Cisg
ICAgICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5zQVIyX1ExNFsgaiArIDAgXSwgdG1wMl9z
MzJ4NCApOworICAgICAgICAgICAgQVJfc2hwX1EyOF9zMzJ4MiA9IHZsZDFfczMyKCAmQVJfc2hw
X1EyOFsgaiBdICk7CisgICAgICAgICAgICBuX0FSX1ExNF9zMzJ4NCA9IHZhZGRxX3MzMiggbl9B
Ul9RMTRfczMyeDQsIHZxZG11bGhxX2xhbmVfczMyKCB0bXAyX3MzMng0LCBBUl9zaHBfUTI4X3Mz
MngyLCAwICkgKTsKKyAgICAgICAgfQorICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5zQVIy
X1ExNFsgc2hhcGluZ0xQQ09yZGVyIC0gMSBdLCB0bXAxX3MzMng0ICk7CisgICAgICAgIG5fQVJf
UTE0X3MzMng0ID0gdmFkZHFfczMyKCBuX0FSX1ExNF9zMzJ4NCwgdnFkbXVsaHFfbGFuZV9zMzIo
IHRtcDFfczMyeDQsIEFSX3NocF9RMjhfczMyeDIsIDEgKSApOworICAgICAgICBuX0FSX1ExNF9z
MzJ4NCA9IHZzaGxxX25fczMyKCBuX0FSX1ExNF9zMzJ4NCwgMSApOyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBRMTEgLT4gUTEyICovCisgICAgICAgIG5fQVJfUTE0X3MzMng0ID0g
dmFkZHFfczMyKCBuX0FSX1ExNF9zMzJ4NCwgdnFkbXVsaHFfbl9zMzIoIHZsZDFxX3MzMiggcHNE
ZWxEZWMtPkxGX0FSX1ExNCApLCBzaWxrX0xTSElGVDMyKCBUaWx0X1ExNCwgMTYgKSA+PiAxICkg
KTsgICAgIC8qIFExMiAqLworICAgICAgICBuX0FSX1ExNF9zMzJ4NCA9IHZzaGxxX25fczMyKCBu
X0FSX1ExNF9zMzJ4NCwgMiApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBRMTIg
LT4gUTE0ICovCisgICAgICAgIG5fTEZfUTE0X3MzMng0ID0gdnFkbXVsaHFfbl9zMzIoIHZsZDFx
X3MzMiggcHNEZWxEZWMtPlNoYXBlX1ExNFsgKnNtcGxfYnVmX2lkeCBdICksIExGX3NocF9RMjkg
KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFExMiAqLworICAg
ICAgICBuX0xGX1ExNF9zMzJ4NCA9IHZhZGRxX3MzMiggbl9MRl9RMTRfczMyeDQsIHZxZG11bGhx
X25fczMyKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5MRl9BUl9RMTQgKSwgc2lsa19MU0hJRlQzMigg
TEZfc2hwX1ExNCA+PiAxNiAsIDE1ICkgKSApOyAvKiBRMTIgKi8KKyAgICAgICAgbl9MRl9RMTRf
czMyeDQgPSB2c2hscV9uX3MzMiggbl9MRl9RMTRfczMyeDQsIDIgKTsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogUTEyIC0+IFExNCAqLworCisgICAgICAgIC8qIElucHV0IG1pbnVz
IHByZWRpY3Rpb24gcGx1cyBub2lzZSBmZWVkYmFjayAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICAgICAgLyogciA9IHhbIGkgXSAtIExUUF9wcmVkIC0gTFBDX3ByZWQgKyBuX0FSICsgbl9U
aWx0ICsgbl9MRiArIG5fTFRQICAqLworICAgICAgICB0bXAxX3MzMng0ID0gdmFkZHFfczMyKCBu
X0FSX1ExNF9zMzJ4NCwgbl9MRl9RMTRfczMyeDQgKTsgICAgICAgICAgICAgICAvKiBRMTQgKi8K
KyAgICAgICAgdG1wMl9zMzJ4NCA9IHZhZGRxX3MzMiggdmR1cHFfbl9zMzIoIG5fTFRQX1ExNCAp
LCBMUENfcHJlZF9RMTRfczMyeDQgKTsgLyogUTEzICovCisgICAgICAgIHRtcDFfczMyeDQgPSB2
c3VicV9zMzIoIHRtcDJfczMyeDQsIHRtcDFfczMyeDQgKTsgICAgICAgICAgICAgICAgICAgICAg
IC8qIFExMyAqLworICAgICAgICB0bXAxX3MzMng0ID0gdnJzaHJxX25fczMyKCB0bXAxX3MzMng0
LCA0ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBRMTAgKi8KKyAgICAgICAgdG1w
MV9zMzJ4NCA9IHZzdWJxX3MzMiggdmR1cHFfbl9zMzIoIHhfUTEwWyBpIF0gKSwgdG1wMV9zMzJ4
NCApOyAgICAgICAgLyogcmVzaWR1YWwgZXJyb3IgUTEwICovCisKKyAgICAgICAgLyogRmxpcCBz
aWduIGRlcGVuZGluZyBvbiBkaXRoZXIgKi8KKyAgICAgICAgc2lnbl9zMzJ4NCA9IHZyZWludGVy
cHJldHFfczMyX3UzMiggdmNsdHFfczMyKCBTZWVkX3MzMng0LCB2ZHVwcV9uX3MzMiggMCApICkg
KTsKKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZlb3JxX3MzMiggdG1wMV9zMzJ4NCwgc2lnbl9zMzJ4
NCApOworICAgICAgICB0bXAxX3MzMng0ID0gdnN1YnFfczMyKCB0bXAxX3MzMng0LCBzaWduX3Mz
Mng0ICk7CisgICAgICAgIHRtcDFfczMyeDQgPSB2bWF4cV9zMzIoIHRtcDFfczMyeDQsIHZkdXBx
X25fczMyKCAtKCAzMSA8PCAxMCApICkgKTsKKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZtaW5xX3Mz
MiggdG1wMV9zMzJ4NCwgdmR1cHFfbl9zMzIoIDMwIDw8IDEwICkgKTsKKyAgICAgICAgcl9RMTBf
czE2eDQgPSB2bW92bl9zMzIoIHRtcDFfczMyeDQgKTsKKworICAgICAgICAvKiBGaW5kIHR3byBx
dWFudGl6YXRpb24gbGV2ZWwgY2FuZGlkYXRlcyBhbmQgbWVhc3VyZSB0aGVpciByYXRlLWRpc3Rv
cnRpb24gKi8KKyAgICAgICAgeworICAgICAgICAgICAgaW50MTZ4NF90IHExX1ExMF9zMTZ4NCA9
IHZzdWJfczE2KCByX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNiggb2Zmc2V0X1ExMCApICk7CisgICAg
ICAgICAgICBpbnQxNng0X3QgcTFfUTBfczE2eDQgPSB2c2hyX25fczE2KCBxMV9RMTBfczE2eDQs
IDEwICk7CisgICAgICAgICAgICBpbnQxNng0X3QgcTJfUTEwX3MxNng0OworICAgICAgICAgICAg
aW50MzJ4NF90IHJkMV9RMTBfczMyeDQsIHJkMl9RMTBfczMyeDQ7CisgICAgICAgICAgICB1aW50
MzJ4NF90IHRfdTMyeDQ7CisKKyAgICAgICAgICAgIGlmKCBMYW1iZGFfUTEwID4gMjA0OCApIHsK
KyAgICAgICAgICAgICAgICAvKiBGb3IgYWdncmVzc2l2ZSBSRE8sIHRoZSBiaWFzIGJlY29tZXMg
bW9yZSB0aGFuIG9uZSBwdWxzZS4gKi8KKyAgICAgICAgICAgICAgICBjb25zdCBpbnQgcmRvX29m
ZnNldCA9IExhbWJkYV9RMTAvMiAtIDUxMjsKKyAgICAgICAgICAgICAgICBjb25zdCB1aW50MTZ4
NF90IGdyZWF0ZXJUaGFuUmRvID0gdmNndF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNigg
cmRvX29mZnNldCApICk7CisgICAgICAgICAgICAgICAgY29uc3QgdWludDE2eDRfdCBsZXNzVGhh
bk1pbnVzUmRvID0gdmNsdF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNiggLXJkb19vZmZz
ZXQgKSApOworICAgICAgICAgICAgICAgIC8qIElmIExhbWJkYV9RMTAgPiAzMjc2NywgdGhlbiBx
MV9RMCwgcTFfUTEwIGFuZCBxMl9RMTAgbXVzdCBjaGFuZ2UgdG8gMzItYml0LiAqLworICAgICAg
ICAgICAgICAgIHNpbGtfYXNzZXJ0KCBMYW1iZGFfUTEwIDw9IDMyNzY3ICk7CisKKyAgICAgICAg
ICAgICAgICBxMV9RMF9zMTZ4NCA9IHZyZWludGVycHJldF9zMTZfdTE2KCB2Y2x0X3MxNiggcTFf
UTEwX3MxNng0LCB2ZHVwX25fczE2KCAwICkgKSApOworICAgICAgICAgICAgICAgIHExX1EwX3Mx
Nng0ID0gdmJzbF9zMTYoIGdyZWF0ZXJUaGFuUmRvLCB2c3ViX3MxNiggcTFfUTEwX3MxNng0LCB2
ZHVwX25fczE2KCByZG9fb2Zmc2V0ICkgKSwgcTFfUTBfczE2eDQgKTsKKyAgICAgICAgICAgICAg
ICBxMV9RMF9zMTZ4NCA9IHZic2xfczE2KCBsZXNzVGhhbk1pbnVzUmRvLCB2YWRkX3MxNiggcTFf
UTEwX3MxNng0LCB2ZHVwX25fczE2KCByZG9fb2Zmc2V0ICkgKSwgcTFfUTBfczE2eDQgKTsKKyAg
ICAgICAgICAgICAgICBxMV9RMF9zMTZ4NCA9IHZzaHJfbl9zMTYoIHExX1EwX3MxNng0LCAxMCAp
OworICAgICAgICAgICAgfQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGNvbnN0IHVp
bnQxNng0X3QgZXF1YWwwX3UxNng0ID0gdmNlcV9zMTYoIHExX1EwX3MxNng0LCB2ZHVwX25fczE2
KCAwICkgKTsKKyAgICAgICAgICAgICAgICBjb25zdCB1aW50MTZ4NF90IGVxdWFsTWludXMxX3Ux
Nng0ID0gdmNlcV9zMTYoIHExX1EwX3MxNng0LCB2ZHVwX25fczE2KCAtMSApICk7CisgICAgICAg
ICAgICAgICAgY29uc3QgdWludDE2eDRfdCBsZXNzVGhhbk1pbnVzMV91MTZ4NCA9IHZjbHRfczE2
KCBxMV9RMF9zMTZ4NCwgdmR1cF9uX3MxNiggLTEgKSApOworICAgICAgICAgICAgICAgIGludDE2
eDRfdCB0bXAxX3MxNng0LCB0bXAyX3MxNng0OworCisgICAgICAgICAgICAgICAgcTFfUTEwX3Mx
Nng0ID0gdnNobF9uX3MxNiggcTFfUTBfczE2eDQsIDEwICk7CisgICAgICAgICAgICAgICAgdG1w
MV9zMTZ4NCA9IHZhZGRfczE2KCBxMV9RMTBfczE2eDQsIHZkdXBfbl9zMTYoIG9mZnNldF9RMTAg
LSBRVUFOVF9MRVZFTF9BREpVU1RfUTEwICkgKTsKKyAgICAgICAgICAgICAgICBxMV9RMTBfczE2
eDQgPSB2YWRkX3MxNiggcTFfUTEwX3MxNng0LCB2ZHVwX25fczE2KCBvZmZzZXRfUTEwICsgUVVB
TlRfTEVWRUxfQURKVVNUX1ExMCApICk7CisgICAgICAgICAgICAgICAgcTFfUTEwX3MxNng0ID0g
dmJzbF9zMTYoIGxlc3NUaGFuTWludXMxX3UxNng0LCBxMV9RMTBfczE2eDQsIHRtcDFfczE2eDQg
KTsKKyAgICAgICAgICAgICAgICBxMV9RMTBfczE2eDQgPSB2YnNsX3MxNiggZXF1YWwwX3UxNng0
LCB2ZHVwX25fczE2KCBvZmZzZXRfUTEwICksIHExX1ExMF9zMTZ4NCApOworICAgICAgICAgICAg
ICAgIHExX1ExMF9zMTZ4NCA9IHZic2xfczE2KCBlcXVhbE1pbnVzMV91MTZ4NCwgdmR1cF9uX3Mx
Niggb2Zmc2V0X1ExMCAtICggMTAyNCAtIFFVQU5UX0xFVkVMX0FESlVTVF9RMTAgKSApLCBxMV9R
MTBfczE2eDQgKTsKKyAgICAgICAgICAgICAgICBxMl9RMTBfczE2eDQgPSB2YWRkX3MxNiggcTFf
UTEwX3MxNng0LCB2ZHVwX25fczE2KCAxMDI0ICkgKTsKKyAgICAgICAgICAgICAgICBxMl9RMTBf
czE2eDQgPSB2YnNsX3MxNiggZXF1YWwwX3UxNng0LCB2ZHVwX25fczE2KCBvZmZzZXRfUTEwICsg
MTAyNCAtIFFVQU5UX0xFVkVMX0FESlVTVF9RMTAgKSwgcTJfUTEwX3MxNng0ICk7CisgICAgICAg
ICAgICAgICAgcTJfUTEwX3MxNng0ID0gdmJzbF9zMTYoIGVxdWFsTWludXMxX3UxNng0LCB2ZHVw
X25fczE2KCBvZmZzZXRfUTEwICksIHEyX1ExMF9zMTZ4NCApOworICAgICAgICAgICAgICAgIHRt
cDFfczE2eDQgPSBxMV9RMTBfczE2eDQ7CisgICAgICAgICAgICAgICAgdG1wMl9zMTZ4NCA9IHEy
X1ExMF9zMTZ4NDsKKyAgICAgICAgICAgICAgICB0bXAxX3MxNng0ID0gdmJzbF9zMTYoIHZvcnJf
dTE2KCBlcXVhbE1pbnVzMV91MTZ4NCwgbGVzc1RoYW5NaW51czFfdTE2eDQgKSwgdm5lZ19zMTYo
IHRtcDFfczE2eDQgKSwgdG1wMV9zMTZ4NCApOworICAgICAgICAgICAgICAgIHRtcDJfczE2eDQg
PSB2YnNsX3MxNiggbGVzc1RoYW5NaW51czFfdTE2eDQsIHZuZWdfczE2KCB0bXAyX3MxNng0ICks
IHRtcDJfczE2eDQgKTsKKyAgICAgICAgICAgICAgICByZDFfUTEwX3MzMng0ID0gdm11bGxfczE2
KCB0bXAxX3MxNng0LCB2ZHVwX25fczE2KCBMYW1iZGFfUTEwICkgKTsKKyAgICAgICAgICAgICAg
ICByZDJfUTEwX3MzMng0ID0gdm11bGxfczE2KCB0bXAyX3MxNng0LCB2ZHVwX25fczE2KCBMYW1i
ZGFfUTEwICkgKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgcnJfUTEwX3MxNng0ID0g
dnN1Yl9zMTYoIHJfUTEwX3MxNng0LCBxMV9RMTBfczE2eDQgKTsKKyAgICAgICAgICAgIHJkMV9R
MTBfczMyeDQgPSB2bWxhbF9zMTYoIHJkMV9RMTBfczMyeDQsIHJyX1ExMF9zMTZ4NCwgcnJfUTEw
X3MxNng0ICk7CisgICAgICAgICAgICByZDFfUTEwX3MzMng0ID0gdnNocnFfbl9zMzIoIHJkMV9R
MTBfczMyeDQsIDEwICk7CisKKyAgICAgICAgICAgIHJyX1ExMF9zMTZ4NCA9IHZzdWJfczE2KCBy
X1ExMF9zMTZ4NCwgcTJfUTEwX3MxNng0ICk7CisgICAgICAgICAgICByZDJfUTEwX3MzMng0ID0g
dm1sYWxfczE2KCByZDJfUTEwX3MzMng0LCBycl9RMTBfczE2eDQsIHJyX1ExMF9zMTZ4NCApOwor
ICAgICAgICAgICAgcmQyX1ExMF9zMzJ4NCA9IHZzaHJxX25fczMyKCByZDJfUTEwX3MzMng0LCAx
MCApOworCisgICAgICAgICAgICB0bXAyX3MzMng0ID0gdmxkMXFfczMyKCBwc0RlbERlYy0+UkRf
UTEwICk7CisgICAgICAgICAgICB0bXAxX3MzMng0ID0gdmFkZHFfczMyKCB0bXAyX3MzMng0LCB2
bWlucV9zMzIoIHJkMV9RMTBfczMyeDQsIHJkMl9RMTBfczMyeDQgKSApOworICAgICAgICAgICAg
dG1wMl9zMzJ4NCA9IHZhZGRxX3MzMiggdG1wMl9zMzJ4NCwgdm1heHFfczMyKCByZDFfUTEwX3Mz
Mng0LCByZDJfUTEwX3MzMng0ICkgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVT
dGF0ZVsgMCBdLlJEX1ExMCwgdG1wMV9zMzJ4NCApOworICAgICAgICAgICAgdnN0MXFfczMyKCBw
c1NhbXBsZVN0YXRlWyAxIF0uUkRfUTEwLCB0bXAyX3MzMng0ICk7CisgICAgICAgICAgICB0X3Uz
Mng0ID0gdmNsdHFfczMyKCByZDFfUTEwX3MzMng0LCByZDJfUTEwX3MzMng0ICk7CisgICAgICAg
ICAgICB0bXAxX3MzMng0ID0gdmJzbHFfczMyKCB0X3UzMng0LCB2bW92bF9zMTYoIHExX1ExMF9z
MTZ4NCApLCB2bW92bF9zMTYoIHEyX1ExMF9zMTZ4NCApICk7CisgICAgICAgICAgICB0bXAyX3Mz
Mng0ID0gdmJzbHFfczMyKCB0X3UzMng0LCB2bW92bF9zMTYoIHEyX1ExMF9zMTZ4NCApLCB2bW92
bF9zMTYoIHExX1ExMF9zMTZ4NCApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxl
U3RhdGVbIDAgXS5RX1ExMCwgdG1wMV9zMzJ4NCApOworICAgICAgICAgICAgdnN0MXFfczMyKCBw
c1NhbXBsZVN0YXRlWyAxIF0uUV9RMTAsIHRtcDJfczMyeDQgKTsKKyAgICAgICAgfQorCisgICAg
ICAgIHsKKyAgICAgICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMgZm9yIGJlc3QgcXVhbnRpemF0aW9u
ICovCisgICAgICAgICAgICBpbnQzMng0X3QgZXhjX1ExNF9zMzJ4NCwgTFBDX2V4Y19RMTRfczMy
eDQsIHhxX1ExNF9zMzJ4NCwgc0xGX0FSX3NocF9RMTRfczMyeDQ7CisKKyAgICAgICAgICAgIC8q
IFF1YW50aXplZCBleGNpdGF0aW9uICovCisgICAgICAgICAgICBleGNfUTE0X3MzMng0ID0gdnNo
bHFfbl9zMzIoIHRtcDFfczMyeDQsIDQgKTsKKyAgICAgICAgICAgIGV4Y19RMTRfczMyeDQgPSB2
ZW9ycV9zMzIoIGV4Y19RMTRfczMyeDQsIHNpZ25fczMyeDQgKTsKKyAgICAgICAgICAgIGV4Y19R
MTRfczMyeDQgPSB2c3VicV9zMzIoIGV4Y19RMTRfczMyeDQsIHNpZ25fczMyeDQgKTsKKworICAg
ICAgICAgICAgLyogQWRkIHByZWRpY3Rpb25zICovCisgICAgICAgICAgICBMUENfZXhjX1ExNF9z
MzJ4NCA9IHZhZGRxX3MzMiggZXhjX1ExNF9zMzJ4NCwgdmR1cHFfbl9zMzIoIExUUF9wcmVkX1Ex
NCApICk7CisgICAgICAgICAgICB4cV9RMTRfczMyeDQgICAgICA9IHZhZGRxX3MzMiggTFBDX2V4
Y19RMTRfczMyeDQsIExQQ19wcmVkX1ExNF9zMzJ4NCApOworCisgICAgICAgICAgICAvKiBVcGRh
dGUgc3RhdGVzICovCisgICAgICAgICAgICB0bXAxX3MzMng0ID0gdnN1YnFfczMyKCB4cV9RMTRf
czMyeDQsIHZzaGxxX25fczMyKCB2ZHVwcV9uX3MzMiggeF9RMTBbIGkgXSApLCA0ICkgKTsKKyAg
ICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLkRpZmZfUTE0LCB0bXAxX3Mz
Mng0ICk7CisgICAgICAgICAgICBzTEZfQVJfc2hwX1ExNF9zMzJ4NCA9IHZzdWJxX3MzMiggdG1w
MV9zMzJ4NCwgbl9BUl9RMTRfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1w
bGVTdGF0ZVsgMCBdLnNMVFBfc2hwX1ExNCwgdnN1YnFfczMyKCBzTEZfQVJfc2hwX1ExNF9zMzJ4
NCwgbl9MRl9RMTRfczMyeDQgKSApOworICAgICAgICAgICAgdnN0MXFfczMyKCBwc1NhbXBsZVN0
YXRlWyAwIF0uTEZfQVJfUTE0LCBzTEZfQVJfc2hwX1ExNF9zMzJ4NCApOworICAgICAgICAgICAg
dnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uTFBDX2V4Y19RMTQsIExQQ19leGNfUTE0X3Mz
Mng0ICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS54cV9RMTQs
IHhxX1ExNF9zMzJ4NCApOworCisgICAgICAgICAgICAvKiBRdWFudGl6ZWQgZXhjaXRhdGlvbiAq
LworICAgICAgICAgICAgZXhjX1ExNF9zMzJ4NCA9IHZzaGxxX25fczMyKCB0bXAyX3MzMng0LCA0
ICk7CisgICAgICAgICAgICBleGNfUTE0X3MzMng0ID0gdmVvcnFfczMyKCBleGNfUTE0X3MzMng0
LCBzaWduX3MzMng0ICk7CisgICAgICAgICAgICBleGNfUTE0X3MzMng0ID0gdnN1YnFfczMyKCBl
eGNfUTE0X3MzMng0LCBzaWduX3MzMng0ICk7CisKKyAgICAgICAgICAgIC8qIEFkZCBwcmVkaWN0
aW9ucyAqLworICAgICAgICAgICAgTFBDX2V4Y19RMTRfczMyeDQgPSB2YWRkcV9zMzIoIGV4Y19R
MTRfczMyeDQsIHZkdXBxX25fczMyKCBMVFBfcHJlZF9RMTQgKSApOworICAgICAgICAgICAgeHFf
UTE0X3MzMng0ICAgICAgPSB2YWRkcV9zMzIoIExQQ19leGNfUTE0X3MzMng0LCBMUENfcHJlZF9R
MTRfczMyeDQgKTsKKworICAgICAgICAgICAgLyogVXBkYXRlIHN0YXRlcyAqLworICAgICAgICAg
ICAgdG1wMV9zMzJ4NCA9IHZzdWJxX3MzMiggeHFfUTE0X3MzMng0LCB2c2hscV9uX3MzMiggdmR1
cHFfbl9zMzIoIHhfUTEwWyBpIF0gKSwgNCApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBz
U2FtcGxlU3RhdGVbIDEgXS5EaWZmX1ExNCwgdG1wMV9zMzJ4NCApOworICAgICAgICAgICAgc0xG
X0FSX3NocF9RMTRfczMyeDQgPSB2c3VicV9zMzIoIHRtcDFfczMyeDQsIG5fQVJfUTE0X3MzMng0
ICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDEgXS5zTFRQX3NocF9R
MTQsIHZzdWJxX3MzMiggc0xGX0FSX3NocF9RMTRfczMyeDQsIG5fTEZfUTE0X3MzMng0ICkgKTsK
KyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMSBdLkxGX0FSX1ExNCwgc0xG
X0FSX3NocF9RMTRfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0
ZVsgMSBdLkxQQ19leGNfUTE0LCBMUENfZXhjX1ExNF9zMzJ4NCApOworICAgICAgICAgICAgdnN0
MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAxIF0ueHFfUTE0LCB4cV9RMTRfczMyeDQgKTsKKyAgICAg
ICAgfQorCisgICAgICAgICpzbXBsX2J1Zl9pZHggPSAqc21wbF9idWZfaWR4ID8gKCAqc21wbF9i
dWZfaWR4IC0gMSApIDogKCBERUNJU0lPTl9ERUxBWSAtIDEpOworICAgICAgICBsYXN0X3NtcGxl
X2lkeCA9ICpzbXBsX2J1Zl9pZHggKyBkZWNpc2lvbkRlbGF5ICsgREVDSVNJT05fREVMQVk7Cisg
ICAgICAgIGlmKCBsYXN0X3NtcGxlX2lkeCA+PSBERUNJU0lPTl9ERUxBWSApIGxhc3Rfc21wbGVf
aWR4IC09IERFQ0lTSU9OX0RFTEFZOworICAgICAgICBpZiggbGFzdF9zbXBsZV9pZHggPj0gREVD
SVNJT05fREVMQVkgKSBsYXN0X3NtcGxlX2lkeCAtPSBERUNJU0lPTl9ERUxBWTsKKworICAgICAg
ICAvKiBGaW5kIHdpbm5lciAqLworICAgICAgICBSRG1pbl9RMTAgPSBwc1NhbXBsZVN0YXRlWyAw
IF0uUkRfUTEwWyAwIF07CisgICAgICAgIFdpbm5lcl9pbmQgPSAwOworICAgICAgICBmb3IoIGsg
PSAxOyBrIDwgblN0YXRlc0RlbGF5ZWREZWNpc2lvbjsgaysrICkgeworICAgICAgICAgICAgaWYo
IHBzU2FtcGxlU3RhdGVbIDAgXS5SRF9RMTBbIGsgXSA8IFJEbWluX1ExMCApIHsKKyAgICAgICAg
ICAgICAgICBSRG1pbl9RMTAgPSBwc1NhbXBsZVN0YXRlWyAwIF0uUkRfUTEwWyBrIF07CisgICAg
ICAgICAgICAgICAgV2lubmVyX2luZCA9IGs7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKwor
ICAgICAgICAvKiBJbmNyZWFzZSBSRCB2YWx1ZXMgb2YgZXhwaXJlZCBzdGF0ZXMgKi8KKyAgICAg
ICAgeworICAgICAgICAgICAgdWludDMyeDRfdCB0X3UzMng0OworICAgICAgICAgICAgV2lubmVy
X3JhbmRfc3RhdGUgPSBwc0RlbERlYy0+UmFuZFN0YXRlWyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5u
ZXJfaW5kIF07CisgICAgICAgICAgICB0X3UzMng0ID0gdmNlcXFfczMyKCB2bGQxcV9zMzIoIHBz
RGVsRGVjLT5SYW5kU3RhdGVbIGxhc3Rfc21wbGVfaWR4IF0gKSwgdmR1cHFfbl9zMzIoIFdpbm5l
cl9yYW5kX3N0YXRlICkgKTsKKyAgICAgICAgICAgIHRfdTMyeDQgPSB2bXZucV91MzIoIHRfdTMy
eDQgKTsKKyAgICAgICAgICAgIHRfdTMyeDQgPSB2c2hycV9uX3UzMiggdF91MzJ4NCwgNSApOwor
ICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHZsZDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLlJE
X1ExMCApOworICAgICAgICAgICAgdG1wMl9zMzJ4NCA9IHZsZDFxX3MzMiggcHNTYW1wbGVTdGF0
ZVsgMSBdLlJEX1ExMCApOworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHZhZGRxX3MzMiggdG1w
MV9zMzJ4NCwgdnJlaW50ZXJwcmV0cV9zMzJfdTMyKCB0X3UzMng0ICkgKTsKKyAgICAgICAgICAg
IHRtcDJfczMyeDQgPSB2YWRkcV9zMzIoIHRtcDJfczMyeDQsIHZyZWludGVycHJldHFfczMyX3Uz
MiggdF91MzJ4NCApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAg
XS5SRF9RMTAsIHRtcDFfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVT
dGF0ZVsgMSBdLlJEX1ExMCwgdG1wMl9zMzJ4NCApOworCisgICAgICAgICAgICAvKiBGaW5kIHdv
cnN0IGluIGZpcnN0IHNldCBhbmQgYmVzdCBpbiBzZWNvbmQgc2V0ICovCisgICAgICAgICAgICBS
RG1heF9RMTAgPSBwc1NhbXBsZVN0YXRlWyAwIF0uUkRfUTEwWyAwIF07CisgICAgICAgICAgICBS
RG1pbl9RMTAgPSBwc1NhbXBsZVN0YXRlWyAxIF0uUkRfUTEwWyAwIF07CisgICAgICAgICAgICBS
RG1heF9pbmQgPSAwOworICAgICAgICAgICAgUkRtaW5faW5kID0gMDsKKyAgICAgICAgICAgIGZv
ciggayA9IDE7IGsgPCBuU3RhdGVzRGVsYXllZERlY2lzaW9uOyBrKysgKSB7CisgICAgICAgICAg
ICAgICAgLyogZmluZCB3b3JzdCBpbiBmaXJzdCBzZXQgKi8KKyAgICAgICAgICAgICAgICBpZigg
cHNTYW1wbGVTdGF0ZVsgMCBdLlJEX1ExMFsgayBdID4gUkRtYXhfUTEwICkgeworICAgICAgICAg
ICAgICAgICAgICBSRG1heF9RMTAgPSBwc1NhbXBsZVN0YXRlWyAwIF0uUkRfUTEwWyBrIF07Cisg
ICAgICAgICAgICAgICAgICAgIFJEbWF4X2luZCA9IGs7CisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgIC8qIGZpbmQgYmVzdCBpbiBzZWNvbmQgc2V0ICovCisgICAgICAgICAgICAg
ICAgaWYoIHBzU2FtcGxlU3RhdGVbIDEgXS5SRF9RMTBbIGsgXSA8IFJEbWluX1ExMCApIHsKKyAg
ICAgICAgICAgICAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0ZVsgMSBdLlJEX1ExMFsg
ayBdOworICAgICAgICAgICAgICAgICAgICBSRG1pbl9pbmQgPSBrOworICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIC8qIFJlcGxhY2UgYSBzdGF0
ZSBpZiBiZXN0IGZyb20gc2Vjb25kIHNldCBvdXRwZXJmb3JtcyB3b3JzdCBpbiBmaXJzdCBzZXQg
Ki8KKyAgICAgICAgaWYoIFJEbWluX1ExMCA8IFJEbWF4X1ExMCApIHsKKyAgICAgICAgICAgIG9w
dXNfaW50MzIgKCpwdHIpW05FT05fTUFYX0RFTF9ERUNfU1RBVEVTXSA9IHBzRGVsRGVjLT5SYW5k
U3RhdGU7CisgICAgICAgICAgICBjb25zdCBpbnQgbnVtT3RoZXJzID0gKGludCkoICggc2l6ZW9m
KCBOU1FfZGVsX2RlY3Nfc3RydWN0ICkgLSBzaXplb2YoICggKE5TUV9kZWxfZGVjc19zdHJ1Y3Qg
KikwICktPnNMUENfUTE0ICkgKQorICAgICAgICAgICAgICAgIC8gKCBORU9OX01BWF9ERUxfREVD
X1NUQVRFUyAqIHNpemVvZiggb3B1c19pbnQzMiApICkgKTsKKyAgICAgICAgICAgIC8qIE9ubHkg
KCBwcmVkaWN0TFBDT3JkZXIgLSAxICkgb2Ygc0xQQ19RMTQgYnVmZmVyIG5lZWQgdG8gYmUgdXBk
YXRlZCwgdGhvdWdoIHRoZSBmaXJzdCBzZXZlcmFsICAgICAqLworICAgICAgICAgICAgLyogdXNl
bGVzcyBzTFBDX1ExNFtdIHdpbGwgYmUgZGlmZmVyZW50IGNvbXBhcmluZyB3aXRoIEMgd2hlbiBw
cmVkaWN0TFBDT3JkZXIgPCBOU1FfTFBDX0JVRl9MRU5HVEguICovCisgICAgICAgICAgICAvKiBI
ZXJlIGp1c3QgdXBkYXRlIGNvbnN0YW50ICggTlNRX0xQQ19CVUZfTEVOR1RIIC0gMSApIGZvciBz
aW1wbGljaXR5LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIGZv
ciggaiA9IGkgKyAxOyBqIDwgaSArIE5TUV9MUENfQlVGX0xFTkdUSDsgaisrICkgeworICAgICAg
ICAgICAgICAgIHBzRGVsRGVjLT5zTFBDX1ExNFsgaiBdWyBSRG1heF9pbmQgXSA9IHBzRGVsRGVj
LT5zTFBDX1ExNFsgaiBdWyBSRG1pbl9pbmQgXTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IGZvciggaiA9IDA7IGogPCBudW1PdGhlcnM7IGorKyApIHsKKyAgICAgICAgICAgICAgICBwdHJb
IGogXVsgUkRtYXhfaW5kIF0gPSBwdHJbIGogXVsgUkRtaW5faW5kIF07CisgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgIHBzU2FtcGxlU3RhdGVbIDAgXS5RX1ExMFsgUkRtYXhfaW5kIF0gPSBw
c1NhbXBsZVN0YXRlWyAxIF0uUV9RMTBbIFJEbWluX2luZCBdOworICAgICAgICAgICAgcHNTYW1w
bGVTdGF0ZVsgMCBdLlJEX1ExMFsgUkRtYXhfaW5kIF0gPSBwc1NhbXBsZVN0YXRlWyAxIF0uUkRf
UTEwWyBSRG1pbl9pbmQgXTsKKyAgICAgICAgICAgIHBzU2FtcGxlU3RhdGVbIDAgXS54cV9RMTRb
IFJEbWF4X2luZCBdID0gcHNTYW1wbGVTdGF0ZVsgMSBdLnhxX1ExNFsgUkRtaW5faW5kIF07Cisg
ICAgICAgICAgICBwc1NhbXBsZVN0YXRlWyAwIF0uTEZfQVJfUTE0WyBSRG1heF9pbmQgXSA9IHBz
U2FtcGxlU3RhdGVbIDEgXS5MRl9BUl9RMTRbIFJEbWluX2luZCBdOworICAgICAgICAgICAgcHNT
YW1wbGVTdGF0ZVsgMCBdLkRpZmZfUTE0WyBSRG1heF9pbmQgXSA9IHBzU2FtcGxlU3RhdGVbIDEg
XS5EaWZmX1ExNFsgUkRtaW5faW5kIF07CisgICAgICAgICAgICBwc1NhbXBsZVN0YXRlWyAwIF0u
c0xUUF9zaHBfUTE0WyBSRG1heF9pbmQgXSA9IHBzU2FtcGxlU3RhdGVbIDEgXS5zTFRQX3NocF9R
MTRbIFJEbWluX2luZCBdOworICAgICAgICAgICAgcHNTYW1wbGVTdGF0ZVsgMCBdLkxQQ19leGNf
UTE0WyBSRG1heF9pbmQgXSA9IHBzU2FtcGxlU3RhdGVbIDEgXS5MUENfZXhjX1ExNFsgUkRtaW5f
aW5kIF07CisgICAgICAgIH0KKworICAgICAgICAvKiBXcml0ZSBzYW1wbGVzIGZyb20gd2lubmVy
IHRvIG91dHB1dCBhbmQgbG9uZy10ZXJtIGZpbHRlciBzdGF0ZXMgKi8KKyAgICAgICAgaWYoIHN1
YmZyID4gMCB8fCBpID49IGRlY2lzaW9uRGVsYXkgKSB7CisgICAgICAgICAgICBwdWxzZXNbICBp
IC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50OClzaWxrX1JTSElGVF9ST1VORCggcHNEZWxE
ZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5kIF0sIDEwICk7CisgICAgICAg
ICAgICB4cVsgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNp
bGtfUlNISUZUX1JPVU5EKAorICAgICAgICAgICAgICAgIHNpbGtfU01VTFdXKCBwc0RlbERlYy0+
WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5kIF0sIGRlbGF5ZWRHYWluX1ExMFsg
bGFzdF9zbXBsZV9pZHggXSApLCA4ICkgKTsKKyAgICAgICAgICAgIE5TUS0+c0xUUF9zaHBfUTE0
WyBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggLSBkZWNpc2lvbkRlbGF5IF0gPSBwc0RlbERlYy0+U2hh
cGVfUTE0WyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5kIF07CisgICAgICAgICAgICBzTFRQ
X1ExNVsgICAgICAgICAgTlNRLT5zTFRQX2J1Zl9pZHggICAgIC0gZGVjaXNpb25EZWxheSBdID0g
cHNEZWxEZWMtPlByZWRfUTE1WyAgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdOworICAg
ICAgICB9CisgICAgICAgIE5TUS0+c0xUUF9zaHBfYnVmX2lkeCsrOworICAgICAgICBOU1EtPnNM
VFBfYnVmX2lkeCsrOworCisgICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMgKi8KKyAgICAgICAgdnN0
MXFfczMyKCBwc0RlbERlYy0+TEZfQVJfUTE0LCB2bGQxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAg
XS5MRl9BUl9RMTQgKSApOworICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5EaWZmX1ExNCwg
dmxkMXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uRGlmZl9RMTQgKSApOworICAgICAgICB2c3Qx
cV9zMzIoIHBzRGVsRGVjLT5zTFBDX1ExNFsgTlNRX0xQQ19CVUZfTEVOR1RIICsgaSBdLCB2bGQx
cV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS54cV9RMTQgKSApOworICAgICAgICB2c3QxcV9zMzIo
IHBzRGVsRGVjLT5YcV9RMTRbICpzbXBsX2J1Zl9pZHggXSwgdmxkMXFfczMyKCBwc1NhbXBsZVN0
YXRlWyAwIF0ueHFfUTE0ICkgKTsKKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZsZDFxX3MzMiggcHNT
YW1wbGVTdGF0ZVsgMCBdLlFfUTEwICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlFf
UTEwWyAqc21wbF9idWZfaWR4IF0sIHRtcDFfczMyeDQgKTsKKyAgICAgICAgdnN0MXFfczMyKCBw
c0RlbERlYy0+UHJlZF9RMTVbICpzbXBsX2J1Zl9pZHggXSwgdnNobHFfbl9zMzIoIHZsZDFxX3Mz
MiggcHNTYW1wbGVTdGF0ZVsgMCBdLkxQQ19leGNfUTE0ICksIDEgKSApOworICAgICAgICB2c3Qx
cV9zMzIoIHBzRGVsRGVjLT5TaGFwZV9RMTRbICpzbXBsX2J1Zl9pZHggXSwgdmxkMXFfczMyKCBw
c1NhbXBsZVN0YXRlWyAwIF0uc0xUUF9zaHBfUTE0ICkgKTsKKyAgICAgICAgdG1wMV9zMzJ4NCA9
IHZyc2hycV9uX3MzMiggdG1wMV9zMzJ4NCwgMTAgKTsKKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZh
ZGRxX3MzMiggdmxkMXFfczMyKCBwc0RlbERlYy0+U2VlZCApLCB0bXAxX3MzMng0ICk7CisgICAg
ICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlNlZWQsIHRtcDFfczMyeDQgKTsKKyAgICAgICAgdnN0
MXFfczMyKCBwc0RlbERlYy0+UmFuZFN0YXRlWyAqc21wbF9idWZfaWR4IF0sIHRtcDFfczMyeDQg
KTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+UkRfUTEwLCB2bGQxcV9zMzIoIHBzU2Ft
cGxlU3RhdGVbIDAgXS5SRF9RMTAgKSApOworICAgICAgICBkZWxheWVkR2Fpbl9RMTBbICpzbXBs
X2J1Zl9pZHggXSA9IEdhaW5fUTEwOworICAgIH0KKyAgICAvKiBVcGRhdGUgTFBDIHN0YXRlcyAq
LworICAgIHNpbGtfbWVtY3B5KCBwc0RlbERlYy0+c0xQQ19RMTRbIDAgXSwgcHNEZWxEZWMtPnNM
UENfUTE0WyBsZW5ndGggXSwgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKiBOU1FfTFBDX0JVRl9M
RU5HVEggKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOworCisgICAgUkVTVE9SRV9TVEFDSzsKK30K
Kworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19TTVVMV0JfOF9uZW9uKAorICAgIGNvbnN0
IG9wdXNfaW50MTYgKmEsCisgICAgY29uc3QgaW50MzJ4Ml90ICBiLAorICAgIG9wdXNfaW50MzIg
ICAgICAgKm8KKykKK3sKKyAgICBjb25zdCBpbnQxNng4X3QgYV9zMTZ4OCA9IHZsZDFxX3MxNigg
YSApOworICAgIGludDMyeDRfdCBvMF9zMzJ4NCwgbzFfczMyeDQ7CisKKyAgICBvMF9zMzJ4NCA9
IHZzaGxsX25fczE2KCB2Z2V0X2xvd19zMTYoIGFfczE2eDggKSwgMTUgKTsKKyAgICBvMV9zMzJ4
NCA9IHZzaGxsX25fczE2KCB2Z2V0X2hpZ2hfczE2KCBhX3MxNng4ICksIDE1ICk7CisgICAgbzBf
czMyeDQgPSB2cWRtdWxocV9sYW5lX3MzMiggbzBfczMyeDQsIGIsIDAgKTsKKyAgICBvMV9zMzJ4
NCA9IHZxZG11bGhxX2xhbmVfczMyKCBvMV9zMzJ4NCwgYiwgMCApOworICAgIHZzdDFxX3MzMigg
bywgbzBfczMyeDQgKTsKKyAgICB2c3QxcV9zMzIoIG8gKyA0LCBvMV9zMzJ4NCApOworfQorCisv
KiBPbmx5IHdvcmtzIHdoZW4gKCBiID49IC02NTUzNiApICYmICggYiA8IDY1NTM2ICkuICovCitz
dGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX1NNVUxXV19zbWFsbF9iXzRfbmVvbigKKyAgICBv
cHVzX2ludDMyICAgICAgICphLAorICAgIGNvbnN0IGludDMyeDJfdCAgYl9zMzJ4MikKK3sKKyAg
ICBpbnQzMng0X3Qgb19zMzJ4NDsKKworICAgIG9fczMyeDQgPSB2bGQxcV9zMzIoIGEgKTsKKyAg
ICBvX3MzMng0ID0gdnFkbXVsaHFfbGFuZV9zMzIoIG9fczMyeDQsIGJfczMyeDIsIDAgKTsKKyAg
ICB2c3QxcV9zMzIoIGEsIG9fczMyeDQgKTsKK30KKworLyogT25seSB3b3JrcyB3aGVuICggYiA+
PSAtNjU1MzYgKSAmJiAoIGIgPCA2NTUzNiApLiAqLworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19TTVVMV1dfc21hbGxfYl84X25lb24oCisgICAgb3B1c19pbnQzMiAgICAgICAqYSwKKyAg
ICBjb25zdCBpbnQzMngyX3QgIGJfczMyeDIKKykKK3sKKyAgICBpbnQzMng0X3QgbzBfczMyeDQs
IG8xX3MzMng0OworCisgICAgbzBfczMyeDQgPSB2bGQxcV9zMzIoIGEgKTsKKyAgICBvMV9zMzJ4
NCA9IHZsZDFxX3MzMiggYSArIDQgKTsKKyAgICBvMF9zMzJ4NCA9IHZxZG11bGhxX2xhbmVfczMy
KCBvMF9zMzJ4NCwgYl9zMzJ4MiwgMCApOworICAgIG8xX3MzMng0ID0gdnFkbXVsaHFfbGFuZV9z
MzIoIG8xX3MzMng0LCBiX3MzMngyLCAwICk7CisgICAgdnN0MXFfczMyKCBhLCBvMF9zMzJ4NCAp
OworICAgIHZzdDFxX3MzMiggYSArIDQsIG8xX3MzMng0ICk7Cit9CisKK3N0YXRpYyBPUFVTX0lO
TElORSB2b2lkIHNpbGtfU01VTFdXXzRfbmVvbigKKyAgICBvcHVzX2ludDMyICAgICAgICphLAor
ICAgIGNvbnN0IGludDMyeDJfdCAgYl9zMzJ4MikKK3sKKyAgICBpbnQzMng0X3QgYV9zMzJ4NCwg
b19zMzJ4NDsKKworICAgIGFfczMyeDQgPSB2bGQxcV9zMzIoIGEgKTsKKyAgICBvX3MzMng0ID0g
dnFkbXVsaHFfbGFuZV9zMzIoIGFfczMyeDQsIGJfczMyeDIsIDAgKTsKKyAgICBvX3MzMng0ID0g
dm1sYXFfbGFuZV9zMzIoIG9fczMyeDQsIGFfczMyeDQsIGJfczMyeDIsIDEgKTsKKyAgICB2c3Qx
cV9zMzIoIGEsIG9fczMyeDQgKTsKK30KKworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19T
TVVMV1dfOF9uZW9uKAorICAgIG9wdXNfaW50MzIgICAgICAgKmEsCisgICAgY29uc3QgaW50MzJ4
Ml90ICBiX3MzMngyCispCit7CisgICAgaW50MzJ4NF90IGEwX3MzMng0LCBhMV9zMzJ4NCwgbzBf
czMyeDQsIG8xX3MzMng0OworCisgICAgYTBfczMyeDQgPSB2bGQxcV9zMzIoIGEgKTsKKyAgICBh
MV9zMzJ4NCA9IHZsZDFxX3MzMiggYSArIDQgKTsKKyAgICBvMF9zMzJ4NCA9IHZxZG11bGhxX2xh
bmVfczMyKCBhMF9zMzJ4NCwgYl9zMzJ4MiwgMCApOworICAgIG8xX3MzMng0ID0gdnFkbXVsaHFf
bGFuZV9zMzIoIGExX3MzMng0LCBiX3MzMngyLCAwICk7CisgICAgbzBfczMyeDQgPSB2bWxhcV9s
YW5lX3MzMiggbzBfczMyeDQsIGEwX3MzMng0LCBiX3MzMngyLCAxICk7CisgICAgbzFfczMyeDQg
PSB2bWxhcV9sYW5lX3MzMiggbzFfczMyeDQsIGExX3MzMng0LCBiX3MzMngyLCAxICk7CisgICAg
dnN0MXFfczMyKCBhLCBvMF9zMzJ4NCApOworICAgIHZzdDFxX3MzMiggYSArIDQsIG8xX3MzMng0
ICk7Cit9CisKK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfU01VTFdXX2xvb3BfbmVvbigK
KyAgICBjb25zdCBvcHVzX2ludDE2ICphLAorICAgIGNvbnN0IG9wdXNfaW50MzIgYiwKKyAgICBv
cHVzX2ludDMyICAgICAgICpvLAorICAgIGNvbnN0IG9wdXNfaW50ICAgbG9vcF9udW0KKykKK3sK
KyAgICBvcHVzX2ludCBpOworICAgIGludDMyeDJfdCBiX3MzMngyOworCisgICAgYl9zMzJ4MiA9
IHZkdXBfbl9zMzIoIGIgKTsKKyAgICBmb3IoIGkgPSAwOyBpIDwgbG9vcF9udW0gLSA3OyBpICs9
IDggKSB7CisgICAgICAgIHNpbGtfU01VTFdCXzhfbmVvbiggYSArIGksIGJfczMyeDIsIG8gKyBp
ICk7CisgICAgfQorICAgIGZvciggOyBpIDwgbG9vcF9udW07IGkrKyApIHsKKyAgICAgICAgb1sg
aSBdID0gc2lsa19TTVVMV1coIGFbIGkgXSwgYiApOworICAgIH0KK30KKworc3RhdGljIE9QVVNf
SU5MSU5FIHZvaWQgc2lsa19uc3FfZGVsX2RlY19zY2FsZV9zdGF0ZXNfbmVvbigKKyAgICBjb25z
dCBzaWxrX2VuY29kZXJfc3RhdGUgKnBzRW5jQywgICAgICAgICAgICAgICAvKiBJICAgIEVuY29k
ZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgc2lsa19uc3Ffc3RhdGUgICAg
ICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIE5TUV9kZWxfZGVjc19zdHJ1Y3QgcHNEZWxEZWNbXSwg
ICAgICAgICAgICAgICAgIC8qIEkvTyAgRGVsYXllZCBkZWNpc2lvbiBzdGF0ZXMgICAgICAgICAg
ICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIHgxNltdLCAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIElucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1
c19pbnQzMiAgICAgICAgICB4X3NjX1ExMFtdLCAgICAgICAgICAgICAgICAgLyogTyAgICBJbnB1
dCBzY2FsZWQgd2l0aCAxL0dhaW4gaW4gUTEwICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYg
ICAgc0xUUFtdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUmUtd2hpdGVuZWQgTFRQIHN0
YXRlIGluIFEwICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIHNMVFBfUTE1W10s
ICAgICAgICAgICAgICAgICAvKiBPICAgIExUUCBzdGF0ZSBtYXRjaGluZyBzY2FsZWQgaW5wdXQg
ICAgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICBzdWJmciwgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBTdWJmcmFtZSBudW1iZXIgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgTFRQX3NjYWxlX1ExNCwgICAgICAgICAgICAgIC8qIEkgICAgTFRQ
IHN0YXRlIHNjYWxpbmcgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMy
ICAgIEdhaW5zX1ExNlsgTUFYX05CX1NVQkZSIF0sICAvKiBJICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICBwaXRjaExbIE1B
WF9OQl9TVUJGUiBdLCAgICAgLyogSSAgICBQaXRjaCBsYWcgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgc2lnbmFsX3R5cGUsICAgICAgICAgICAg
ICAgIC8qIEkgICAgU2lnbmFsIHR5cGUgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBj
b25zdCBvcHVzX2ludCAgICAgIGRlY2lzaW9uRGVsYXkgICAgICAgICAgICAgICAvKiBJICAgIERl
Y2lzaW9uIGRlbGF5ICAgICAgICAgICAgICAgICAgICAgICovCispCit7CisgICAgb3B1c19pbnQg
ICAgICAgICAgICBpLCBsYWc7CisgICAgb3B1c19pbnQzMiAgICAgICAgICBnYWluX2Fkal9RMTYs
IGludl9nYWluX1EzMSwgaW52X2dhaW5fUTI2OworCisgICAgbGFnICAgICAgICAgID0gcGl0Y2hM
WyBzdWJmciBdOworICAgIGludl9nYWluX1EzMSA9IHNpbGtfSU5WRVJTRTMyX3ZhclEoIHNpbGtf
bWF4KCBHYWluc19RMTZbIHN1YmZyIF0sIDEgKSwgNDcgKTsKKyAgICBzaWxrX2Fzc2VydCggaW52
X2dhaW5fUTMxICE9IDAgKTsKKworICAgIC8qIFNjYWxlIGlucHV0ICovCisgICAgaW52X2dhaW5f
UTI2ID0gc2lsa19SU0hJRlRfUk9VTkQoIGludl9nYWluX1EzMSwgNSApOworICAgIHNpbGtfU01V
TFdXX2xvb3BfbmVvbiggeDE2LCBpbnZfZ2Fpbl9RMjYsIHhfc2NfUTEwLCBwc0VuY0MtPnN1YmZy
X2xlbmd0aCApOworCisgICAgLyogQWZ0ZXIgcmV3aGl0ZW5pbmcgdGhlIExUUCBzdGF0ZSBpcyB1
bi1zY2FsZWQsIHNvIHNjYWxlIHdpdGggaW52X2dhaW5fUTE2ICovCisgICAgaWYoIE5TUS0+cmV3
aGl0ZV9mbGFnICkgeworICAgICAgICBpZiggc3ViZnIgPT0gMCApIHsKKyAgICAgICAgICAgIC8q
IERvIExUUCBkb3duc2NhbGluZyAqLworICAgICAgICAgICAgaW52X2dhaW5fUTMxID0gc2lsa19M
U0hJRlQoIHNpbGtfU01VTFdCKCBpbnZfZ2Fpbl9RMzEsIExUUF9zY2FsZV9RMTQgKSwgMiApOwor
ICAgICAgICB9CisgICAgICAgIHNpbGtfU01VTFdXX2xvb3BfbmVvbiggc0xUUCArIE5TUS0+c0xU
UF9idWZfaWR4IC0gbGFnIC0gTFRQX09SREVSIC8gMiwgaW52X2dhaW5fUTMxLCBzTFRQX1ExNSAr
IE5TUS0+c0xUUF9idWZfaWR4IC0gbGFnIC0gTFRQX09SREVSIC8gMiwgbGFnICsgTFRQX09SREVS
IC8gMiApOworICAgIH0KKworICAgIC8qIEFkanVzdCBmb3IgY2hhbmdpbmcgZ2FpbiAqLworICAg
IGlmKCBHYWluc19RMTZbIHN1YmZyIF0gIT0gTlNRLT5wcmV2X2dhaW5fUTE2ICkgeworICAgICAg
ICBpbnQzMngyX3QgZ2Fpbl9hZGpfUTE2X3MzMngyOworICAgICAgICBnYWluX2Fkal9RMTYgPSBz
aWxrX0RJVjMyX3ZhclEoIE5TUS0+cHJldl9nYWluX1ExNiwgR2FpbnNfUTE2WyBzdWJmciBdLCAx
NiApOworCisgICAgICAgIC8qIFNjYWxlIGxvbmctdGVybSBzaGFwaW5nIHN0YXRlICovCisgICAg
ICAgIGlmKCAoIGdhaW5fYWRqX1ExNiA+PSAtNjU1MzYgKSAmJiAoIGdhaW5fYWRqX1ExNiA8IDY1
NTM2ICkgKSB7CisgICAgICAgICAgICBnYWluX2Fkal9RMTZfczMyeDIgPSB2ZHVwX25fczMyKCBz
aWxrX0xTSElGVDMyKCBnYWluX2Fkal9RMTYsIDE1ICkgKTsKKyAgICAgICAgICAgIGZvciggaSA9
IE5TUS0+c0xUUF9zaHBfYnVmX2lkeCAtIHBzRW5jQy0+bHRwX21lbV9sZW5ndGg7IGkgPCBOU1Et
PnNMVFBfc2hwX2J1Zl9pZHggLSA3OyBpICs9IDggKSB7CisgICAgICAgICAgICAgICAgc2lsa19T
TVVMV1dfc21hbGxfYl84X25lb24oIE5TUS0+c0xUUF9zaHBfUTE0ICsgaSwgZ2Fpbl9hZGpfUTE2
X3MzMngyICk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBmb3IoIDsgaSA8IE5TUS0+c0xU
UF9zaHBfYnVmX2lkeDsgaSsrICkgeworICAgICAgICAgICAgICAgIE5TUS0+c0xUUF9zaHBfUTE0
WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9hZGpfUTE2LCBOU1EtPnNMVFBfc2hwX1ExNFsgaSBd
ICk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC8qIFNjYWxlIGxvbmctdGVybSBwcmVk
aWN0aW9uIHN0YXRlICovCisgICAgICAgICAgICBpZiggc2lnbmFsX3R5cGUgPT0gVFlQRV9WT0lD
RUQgJiYgTlNRLT5yZXdoaXRlX2ZsYWcgPT0gMCApIHsKKyAgICAgICAgICAgICAgICBmb3IoIGkg
PSBOU1EtPnNMVFBfYnVmX2lkeCAtIGxhZyAtIExUUF9PUkRFUiAvIDI7IGkgPCBOU1EtPnNMVFBf
YnVmX2lkeCAtIGRlY2lzaW9uRGVsYXkgLSA3OyBpICs9IDggKSB7CisgICAgICAgICAgICAgICAg
ICAgIHNpbGtfU01VTFdXX3NtYWxsX2JfOF9uZW9uKCBzTFRQX1ExNSArIGksIGdhaW5fYWRqX1Ex
Nl9zMzJ4MiApOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBmb3IoIDsgaSA8
IE5TUS0+c0xUUF9idWZfaWR4IC0gZGVjaXNpb25EZWxheTsgaSsrICkgeworICAgICAgICAgICAg
ICAgICAgICBzTFRQX1ExNVsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgc0xUUF9R
MTVbIGkgXSApOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgLyogU2NhbGUgc2NhbGFyIHN0YXRlcyAqLworICAgICAgICAgICAgc2lsa19TTVVMV1dfc21h
bGxfYl80X25lb24oIHBzRGVsRGVjLT5MRl9BUl9RMTQsIGdhaW5fYWRqX1ExNl9zMzJ4MiApOwor
ICAgICAgICAgICAgc2lsa19TTVVMV1dfc21hbGxfYl80X25lb24oIHBzRGVsRGVjLT5EaWZmX1Ex
NCwgIGdhaW5fYWRqX1ExNl9zMzJ4MiApOworCisgICAgICAgICAgICAvKiBTY2FsZSBzaG9ydC10
ZXJtIHByZWRpY3Rpb24gYW5kIHNoYXBpbmcgc3RhdGVzICovCisgICAgICAgICAgICBmb3IoIGkg
PSAwOyBpIDwgTlNRX0xQQ19CVUZfTEVOR1RIOyBpKysgKSB7CisgICAgICAgICAgICAgICAgc2ls
a19TTVVMV1dfc21hbGxfYl80X25lb24oIHBzRGVsRGVjLT5zTFBDX1ExNFsgaSBdLCBnYWluX2Fk
al9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZm9yKCBpID0gMDsg
aSA8IE1BWF9TSEFQRV9MUENfT1JERVI7IGkrKyApIHsKKyAgICAgICAgICAgICAgICBzaWxrX1NN
VUxXV19zbWFsbF9iXzRfbmVvbiggcHNEZWxEZWMtPnNBUjJfUTE0WyBpIF0sIGdhaW5fYWRqX1Ex
Nl9zMzJ4MiApOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwg
REVDSVNJT05fREVMQVk7IGkrKyApIHsKKyAgICAgICAgICAgICAgICBzaWxrX1NNVUxXV19zbWFs
bF9iXzRfbmVvbiggcHNEZWxEZWMtPlByZWRfUTE1WyAgaSBdLCBnYWluX2Fkal9RMTZfczMyeDIg
KTsKKyAgICAgICAgICAgICAgICBzaWxrX1NNVUxXV19zbWFsbF9iXzRfbmVvbiggcHNEZWxEZWMt
PlNoYXBlX1ExNFsgaSBdLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGdhaW5fYWRqX1ExNl9zMzJ4MiA9IHZkdXBfbl9z
MzIoIHNpbGtfTFNISUZUMzIoIGdhaW5fYWRqX1ExNiAmIDB4MDAwMEZGRkYsIDE1ICkgKTsKKyAg
ICAgICAgICAgIGdhaW5fYWRqX1ExNl9zMzJ4MiA9IHZzZXRfbGFuZV9zMzIoIGdhaW5fYWRqX1Ex
NiA+PiAxNiwgZ2Fpbl9hZGpfUTE2X3MzMngyLCAxICk7CisgICAgICAgICAgICBmb3IoIGkgPSBO
U1EtPnNMVFBfc2hwX2J1Zl9pZHggLSBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoOyBpIDwgTlNRLT5z
TFRQX3NocF9idWZfaWR4IC0gNzsgaSArPSA4ICkgeworICAgICAgICAgICAgICAgIHNpbGtfU01V
TFdXXzhfbmVvbiggTlNRLT5zTFRQX3NocF9RMTQgKyBpLCBnYWluX2Fkal9RMTZfczMyeDIgKTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGZvciggOyBpIDwgTlNRLT5zTFRQX3NocF9idWZf
aWR4OyBpKysgKSB7CisgICAgICAgICAgICAgICAgTlNRLT5zTFRQX3NocF9RMTRbIGkgXSA9IHNp
bGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIE5TUS0+c0xUUF9zaHBfUTE0WyBpIF0gKTsKKyAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgLyogU2NhbGUgbG9uZy10ZXJtIHByZWRpY3Rpb24gc3Rh
dGUgKi8KKyAgICAgICAgICAgIGlmKCBzaWduYWxfdHlwZSA9PSBUWVBFX1ZPSUNFRCAmJiBOU1Et
PnJld2hpdGVfZmxhZyA9PSAwICkgeworICAgICAgICAgICAgICAgIGZvciggaSA9IE5TUS0+c0xU
UF9idWZfaWR4IC0gbGFnIC0gTFRQX09SREVSIC8gMjsgaSA8IE5TUS0+c0xUUF9idWZfaWR4IC0g
ZGVjaXNpb25EZWxheSAtIDc7IGkgKz0gOCApIHsKKyAgICAgICAgICAgICAgICAgICAgc2lsa19T
TVVMV1dfOF9uZW9uKCBzTFRQX1ExNSArIGksIGdhaW5fYWRqX1ExNl9zMzJ4MiApOworICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBmb3IoIDsgaSA8IE5TUS0+c0xUUF9idWZfaWR4
IC0gZGVjaXNpb25EZWxheTsgaSsrICkgeworICAgICAgICAgICAgICAgICAgICBzTFRQX1ExNVsg
aSBdID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgc0xUUF9RMTVbIGkgXSApOworICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLyogU2NhbGUgc2NhbGFy
IHN0YXRlcyAqLworICAgICAgICAgICAgc2lsa19TTVVMV1dfNF9uZW9uKCBwc0RlbERlYy0+TEZf
QVJfUTE0LCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIHNpbGtfU01VTFdXXzRf
bmVvbiggcHNEZWxEZWMtPkRpZmZfUTE0LCAgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisKKyAgICAg
ICAgICAgIC8qIFNjYWxlIHNob3J0LXRlcm0gcHJlZGljdGlvbiBhbmQgc2hhcGluZyBzdGF0ZXMg
Ki8KKyAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBOU1FfTFBDX0JVRl9MRU5HVEg7IGkrKyAp
IHsKKyAgICAgICAgICAgICAgICBzaWxrX1NNVUxXV180X25lb24oIHBzRGVsRGVjLT5zTFBDX1Ex
NFsgaSBdLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgZm9yKCBpID0gMDsgaSA8IE1BWF9TSEFQRV9MUENfT1JERVI7IGkrKyApIHsKKyAgICAgICAg
ICAgICAgICBzaWxrX1NNVUxXV180X25lb24oIHBzRGVsRGVjLT5zQVIyX1ExNFsgaSBdLCBnYWlu
X2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZm9yKCBpID0g
MDsgaSA8IERFQ0lTSU9OX0RFTEFZOyBpKysgKSB7CisgICAgICAgICAgICAgICAgc2lsa19TTVVM
V1dfNF9uZW9uKCBwc0RlbERlYy0+UHJlZF9RMTVbICBpIF0sIGdhaW5fYWRqX1ExNl9zMzJ4MiAp
OworICAgICAgICAgICAgICAgIHNpbGtfU01VTFdXXzRfbmVvbiggcHNEZWxEZWMtPlNoYXBlX1Ex
NFsgaSBdLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQor
CisgICAgICAgIC8qIFNhdmUgaW52ZXJzZSBnYWluICovCisgICAgICAgIE5TUS0+cHJldl9nYWlu
X1ExNiA9IEdhaW5zX1ExNlsgc3ViZnIgXTsKKyAgICB9Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJt
L05TUV9uZW9uLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvYXJtL05TUV9uZW9uLmgKaW5kZXggNzdjOTQ2YWY4NTQ0Nzg2ZTMx
MTM0NTcxYThlNTU3NGY5ZTA5OGM4Yy4uYjMxZDk0NDJkNjk5MWM0OWFkNTIwMmYyOWQ5ZDAyYjhk
MTEzOTUwNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfbmVvbi5oCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vTlNR
X25lb24uaApAQCAtMjgsMzAgKzI4LDMxIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgog
I2RlZmluZSBTSUxLX05TUV9ORU9OX0gKIAogI2luY2x1ZGUgImNwdV9zdXBwb3J0LmgiCisjaW5j
bHVkZSAiU2lnUHJvY19GSVguaCIKIAogI3VuZGVmIHNpbGtfc2hvcnRfcHJlZGljdGlvbl9jcmVh
dGVfYXJjaF9jb2VmCiAvKiBGb3IgdmVjdG9yaXplZCBjYWxjLCByZXZlcnNlIGFfUTEyIGNvZWZz
LCBjb252ZXJ0IHRvIDMyLWJpdCwgYW5kIHNoaWZ0IGZvciB2cWRtdWxocV9zMzIuICovCiBzdGF0
aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX3Nob3J0X3ByZWRpY3Rpb25fY3JlYXRlX2FyY2hfY29l
Zl9uZW9uKG9wdXNfaW50MzIgKm91dCwgY29uc3Qgb3B1c19pbnQxNiAqaW4sIG9wdXNfaW50IG9y
ZGVyKQogewotICAgIG91dFsxNV0gPSBpblswXSA8PCAxNTsKLSAgICBvdXRbMTRdID0gaW5bMV0g
PDwgMTU7Ci0gICAgb3V0WzEzXSA9IGluWzJdIDw8IDE1OwotICAgIG91dFsxMl0gPSBpblszXSA8
PCAxNTsKLSAgICBvdXRbMTFdID0gaW5bNF0gPDwgMTU7Ci0gICAgb3V0WzEwXSA9IGluWzVdIDw8
IDE1OwotICAgIG91dFs5XSAgPSBpbls2XSA8PCAxNTsKLSAgICBvdXRbOF0gID0gaW5bN10gPDwg
MTU7Ci0gICAgb3V0WzddICA9IGluWzhdIDw8IDE1OwotICAgIG91dFs2XSAgPSBpbls5XSA8PCAx
NTsKKyAgICBvdXRbMTVdID0gc2lsa19MU0hJRlQzMihpblswXSwgMTUpOworICAgIG91dFsxNF0g
PSBzaWxrX0xTSElGVDMyKGluWzFdLCAxNSk7CisgICAgb3V0WzEzXSA9IHNpbGtfTFNISUZUMzIo
aW5bMl0sIDE1KTsKKyAgICBvdXRbMTJdID0gc2lsa19MU0hJRlQzMihpblszXSwgMTUpOworICAg
IG91dFsxMV0gPSBzaWxrX0xTSElGVDMyKGluWzRdLCAxNSk7CisgICAgb3V0WzEwXSA9IHNpbGtf
TFNISUZUMzIoaW5bNV0sIDE1KTsKKyAgICBvdXRbOV0gID0gc2lsa19MU0hJRlQzMihpbls2XSwg
MTUpOworICAgIG91dFs4XSAgPSBzaWxrX0xTSElGVDMyKGluWzddLCAxNSk7CisgICAgb3V0Wzdd
ICA9IHNpbGtfTFNISUZUMzIoaW5bOF0sIDE1KTsKKyAgICBvdXRbNl0gID0gc2lsa19MU0hJRlQz
Mihpbls5XSwgMTUpOwogCiAgICAgaWYgKG9yZGVyID09IDE2KQogICAgIHsKLSAgICAgICAgb3V0
WzVdID0gaW5bMTBdIDw8IDE1OwotICAgICAgICBvdXRbNF0gPSBpblsxMV0gPDwgMTU7Ci0gICAg
ICAgIG91dFszXSA9IGluWzEyXSA8PCAxNTsKLSAgICAgICAgb3V0WzJdID0gaW5bMTNdIDw8IDE1
OwotICAgICAgICBvdXRbMV0gPSBpblsxNF0gPDwgMTU7Ci0gICAgICAgIG91dFswXSA9IGluWzE1
XSA8PCAxNTsKKyAgICAgICAgb3V0WzVdID0gc2lsa19MU0hJRlQzMihpblsxMF0sIDE1KTsKKyAg
ICAgICAgb3V0WzRdID0gc2lsa19MU0hJRlQzMihpblsxMV0sIDE1KTsKKyAgICAgICAgb3V0WzNd
ID0gc2lsa19MU0hJRlQzMihpblsxMl0sIDE1KTsKKyAgICAgICAgb3V0WzJdID0gc2lsa19MU0hJ
RlQzMihpblsxM10sIDE1KTsKKyAgICAgICAgb3V0WzFdID0gc2lsa19MU0hJRlQzMihpblsxNF0s
IDE1KTsKKyAgICAgICAgb3V0WzBdID0gc2lsa19MU0hJRlQzMihpblsxNV0sIDE1KTsKICAgICB9
CiAgICAgZWxzZQogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vYXJtX3NpbGtfbWFwLmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvYXJtL2FybV9zaWxrX21hcC5jCmluZGV4IDliZDg2YTdiMjE1MjI0OWZhODUwZTllZWMwY2Q2
YTZjYTI2Y2U3MTUuLjBiOWJmZWMyY2E5NzQ3NjhjNTllMDlmNDQ4YWNhODFjZWIxZDhmNjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9hcm0vYXJtX3NpbGtfbWFwLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9hcm1fc2lsa19t
YXAuYwpAQCAtMjgsMTMgKzI4LDYyIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogIyBp
bmNsdWRlICJjb25maWcuaCIKICNlbmRpZgogCisjaW5jbHVkZSAibWFpbl9GSVguaCIKICNpbmNs
dWRlICJOU1EuaCIKKyNpbmNsdWRlICJTaWdQcm9jX0ZJWC5oIgogCiAjaWYgZGVmaW5lZChPUFVT
X0hBVkVfUlRDRCkKIAogIyBpZiAoZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIp
ICYmIFwKICAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikpCiAKK3ZvaWQgKCpj
b25zdCBTSUxLX0JJUVVBRF9BTFRfU1RSSURFMl9JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCisg
ICAgICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqaW4sICAgICAgICAgICAgICAgIC8q
IEkgICAgIGlucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpCX1EyOCwg
ICAgICAgICAgICAgLyogSSAgICAgTUEgY29lZmZpY2llbnRzIFszXSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludDMyICAgICAg
ICAgICAgKkFfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBBUiBjb2VmZmljaWVudHMgWzJdICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIG9wdXNfaW50
MzIgICAgICAgICAgICAgICAgICAqUywgICAgICAgICAgICAgICAgIC8qIEkvTyAgIFN0YXRlIHZl
Y3RvciBbNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICAgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICpvdXQsICAgICAgICAgICAgICAgLyog
TyAgICAgb3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgbGVuICAgICAg
ICAgICAgICAgICAvKiBJICAgICBzaWduYWwgbGVuZ3RoIChtdXN0IGJlIGV2ZW4pICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCispID0geworICAgICAgc2lsa19iaXF1YWRfYWx0X3N0
cmlkZTJfYywgICAgLyogQVJNdjQgKi8KKyAgICAgIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyX2Ms
ICAgIC8qIEVEU1AgKi8KKyAgICAgIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyX2MsICAgIC8qIE1l
ZGlhICovCisgICAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9uZW9uLCAvKiBOZW9uICovCit9
OworCitvcHVzX2ludDMyICgqY29uc3QgU0lMS19MUENfSU5WRVJTRV9QUkVEX0dBSU5fSU1QTFtP
UFVTX0FSQ0hNQVNLICsgMV0pKCAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2Fp
biBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgICAgICAgICAqQV9RMTIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
UHJlZGljdGlvbiBjb2VmZmljaWVudHMsIFExMiBbb3JkZXJdICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBvcmRlciAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgUHJlZGljdGlvbiBvcmRlciAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCispID0geworICAgICAgc2lsa19M
UENfaW52ZXJzZV9wcmVkX2dhaW5fYywgICAgLyogQVJNdjQgKi8KKyAgICAgIHNpbGtfTFBDX2lu
dmVyc2VfcHJlZF9nYWluX2MsICAgIC8qIEVEU1AgKi8KKyAgICAgIHNpbGtfTFBDX2ludmVyc2Vf
cHJlZF9nYWluX2MsICAgIC8qIE1lZGlhICovCisgICAgICBzaWxrX0xQQ19pbnZlcnNlX3ByZWRf
Z2Fpbl9uZW9uLCAvKiBOZW9uICovCit9OworCit2b2lkICAoKmNvbnN0IFNJTEtfTlNRX0RFTF9E
RUNfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKAorICAgICAgICBjb25zdCBzaWxrX2VuY29kZXJf
c3RhdGUgICAgKnBzRW5jQywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgc2lsa19uc3Ff
c3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAg
IFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAq
LworICAgICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgeDE2W10sICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgIHB1bHNlc1td
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBRdWFudGl6ZWQgcHVs
c2Ugc2lnbmFsICAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAg
ICBQcmVkQ29lZl9RMTJbIDIgKiBNQVhfTFBDX09SREVSIF0sICAgICAgICAgIC8qIEkgICAgU2hv
cnQgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludDE2
ICAgICAgICAgICAgTFRQQ29lZl9RMTRbIExUUF9PUkRFUiAqIE1BWF9OQl9TVUJGUiBdLCAgICAv
KiBJICAgIExvbmcgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAgKi8KKyAgICAgICAgY29uc3Qg
b3B1c19pbnQxNiAgICAgICAgICAgIEFSX1ExM1sgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQ
Q19PUkRFUiBdLCAvKiBJIE5vaXNlIHNoYXBpbmcgY29lZnMgICAgICAgICAgICAgICovCisgICAg
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1ExNFsgTUFYX05C
X1NVQkZSIF0sICAgICAgICAgIC8qIEkgICAgTG9uZyB0ZXJtIHNoYXBpbmcgY29lZnMgICAgICAg
ICAqLworICAgICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgVGlsdF9RMTRbIE1BWF9O
Ql9TVUJGUiBdLCAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNwZWN0cmFsIHRpbHQgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIExGX3No
cF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgLyogSSAgICBMb3cgZnJlcXVl
bmN5IHNoYXBpbmcgY29lZnMgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAg
ICAgICBHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgIC8qIEkgICAg
UXVhbnRpemF0aW9uIHN0ZXAgc2l6ZXMgICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgcGl0Y2hMWyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIFBpdGNoIGxhZ3MgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgIExhbWJkYV9RMTAsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBSYXRlL2Rpc3RvcnRpb24gdHJhZGVvZmYgICAgICAgICovCisg
ICAgICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBMVFBfc2NhbGVfUTE0ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFRQIHN0YXRlIHNjYWxpbmcgICAgICAgICAg
ICAgICAqLworKSA9IHsKKyAgICAgIHNpbGtfTlNRX2RlbF9kZWNfYywgICAgLyogQVJNdjQgKi8K
KyAgICAgIHNpbGtfTlNRX2RlbF9kZWNfYywgICAgLyogRURTUCAqLworICAgICAgc2lsa19OU1Ff
ZGVsX2RlY19jLCAgICAvKiBNZWRpYSAqLworICAgICAgc2lsa19OU1FfZGVsX2RlY19uZW9uLCAv
KiBOZW9uICovCit9OworCiAvKlRoZXJlIGlzIG5vIHRhYmxlIGZvciBzaWxrX25vaXNlX3NoYXBl
X3F1YW50aXplcl9zaG9ydF9wcmVkaWN0aW9uIGJlY2F1c2UgdGhlCiAgICBORU9OIHZlcnNpb24g
dGFrZXMgZGlmZmVyZW50IHBhcmFtZXRlcnMgdGhhbiB0aGUgQyB2ZXJzaW9uLgogICBJbnN0ZWFk
IFJUQ0QgaXMgZG9uZSB2aWEgaWYgc3RhdGVtZW50cyBhdCB0aGUgY2FsbCBzaXRlcy4KQEAgLTUy
LDQgKzEwMSwyMyBAQCBvcHVzX2ludDMyCiAKICMgZW5kaWYKIAorIyBpZiBkZWZpbmVkKEZJWEVE
X1BPSU5UKSAmJiBcCisgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpICYmICFk
ZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKQorCit2b2lkICgqY29uc3QgU0lMS19X
QVJQRURfQVVUT0NPUlJFTEFUSU9OX0ZJWF9JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCisgICAg
ICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAqY29yciwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogTyAgICBSZXN1bHQgW29yZGVyICsgMV0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICBv
cHVzX2ludCAgICAgICAgICAgICAgICAgICpzY2FsZSwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBPICAgIFNjYWxpbmcgb2YgdGhlIGNvcnJlbGF0aW9uIHZlY3RvciAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgICAgICAgICAgICAgKmlucHV0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgSW5wdXQgZGF0YSB0byBjb3JyZWxhdGUgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICB3YXJwaW5nX1ExNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBXYXJwaW5nIGNvZWZmaWNpZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAg
ICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0
aCBvZiBpbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgb3Jk
ZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29ycmVsYXRpb24g
b3JkZXIgKGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCispID0geworICAgICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9j
LCAgICAvKiBBUk12NCAqLworICAgICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9j
LCAgICAvKiBFRFNQICovCisgICAgICBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX2Ms
ICAgIC8qIE1lZGlhICovCisgICAgICBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX25l
b24sIC8qIE5lb24gKi8KK307CisKKyMgZW5kaWYKKwogI2VuZGlmIC8qIE9QVVNfSEFWRV9SVENE
ICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL2JpcXVhZF9hbHRfYXJtLmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL2JpcXVh
ZF9hbHRfYXJtLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjZlYTlmNDNkZDBiMzdiMmQ2MzMwODdmMWEyNWU5OTg2
ZmNlMmQ2ZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vYmlxdWFkX2FsdF9hcm0uaApAQCAt
MCwwICsxLDY4IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK0NvcHlyaWdodCAoYykgMjAxNyBHb29nbGUg
SW5jLgorUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3Ro
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0Citub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIElu
dGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3Bl
Y2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3By
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbgorcGVybWlzc2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQorSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKK1NVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KKworI2lmbmRlZiBTSUxLX0JJUVVBRF9BTFRfQVJNX0gKKyMgZGVmaW5lIFNJTEtfQklR
VUFEX0FMVF9BUk1fSAorCisjIGluY2x1ZGUgImNlbHQvYXJtL2FybWNwdS5oIgorCisjIGlmIGRl
ZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKQordm9pZCBzaWxrX2JpcXVhZF9hbHRf
c3RyaWRlMl9uZW9uKAorICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqaW4sICAgICAg
ICAgICAgICAgIC8qIEkgICAgIGlucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAg
KkJfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBNQSBjb2VmZmljaWVudHMgWzNdICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgICAgICAgICpBX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgQVIgY29lZmZpY2llbnRzIFsy
XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50
MzIgICAgICAgICAgICAgICAgICAqUywgICAgICAgICAgICAgICAgIC8qIEkvTyAgIFN0YXRlIHZl
Y3RvciBbNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKm91dCwgICAgICAgICAgICAgICAvKiBPICAg
ICBvdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxlbiAgICAgICAgICAgICAg
ICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworKTsKKworIyAgaWYgIWRlZmluZWQoT1BVU19IQVZFX1JUQ0QpICYm
IGRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OKQorIyAgIGRlZmluZSBPVkVSUklERV9zaWxr
X2JpcXVhZF9hbHRfc3RyaWRlMiAgICAgICAgICAgICAgICAgICAoMSkKKyMgICBkZWZpbmUgc2ls
a19iaXF1YWRfYWx0X3N0cmlkZTIoaW4sIEJfUTI4LCBBX1EyOCwgUywgb3V0LCBsZW4sIGFyY2gp
ICgodm9pZCkoYXJjaCksIFBSRVNVTUVfTkVPTihzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMikoaW4s
IEJfUTI4LCBBX1EyOCwgUywgb3V0LCBsZW4pKQorIyAgZW5kaWYKKyMgZW5kaWYKKworIyBpZiAh
ZGVmaW5lZChPVkVSUklERV9zaWxrX2JpcXVhZF9hbHRfc3RyaWRlMikKKy8qSXMgcnVuLXRpbWUg
Q1BVIGRldGVjdGlvbiBlbmFibGVkIG9uIHRoaXMgcGxhdGZvcm0/Ki8KKyMgIGlmIGRlZmluZWQo
T1BVU19IQVZFX1JUQ0QpICYmIChkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikg
JiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpKQorZXh0ZXJuIHZvaWQgKCpj
b25zdCBTSUxLX0JJUVVBRF9BTFRfU1RSSURFMl9JTVBMW09QVVNfQVJDSE1BU0srMV0pKAorICAg
ICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmluLCAgICAgICAgICAgICAgICAvKiBJ
ICAgICBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQl9RMjgsICAg
ICAgICAgICAgIC8qIEkgICAgIE1BIGNvZWZmaWNpZW50cyBbM10gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAg
ICAgICpBX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgQVIgY29lZmZpY2llbnRzIFsyXSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBvcHVzX2ludDMy
ICAgICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAgICAvKiBJL08gICBTdGF0ZSB2ZWN0
b3IgWzRdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
ICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqb3V0LCAgICAgICAgICAgICAgIC8qIE8g
ICAgIG91dHB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxlbiAgICAgICAg
ICAgICAgICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgICk7CisjICAgZGVmaW5lIE9WRVJSSURFX3NpbGtf
YmlxdWFkX2FsdF9zdHJpZGUyICAgICAgICAgICAgICAgICAgKDEpCisjICAgZGVmaW5lIHNpbGtf
YmlxdWFkX2FsdF9zdHJpZGUyKGluLCBCX1EyOCwgQV9RMjgsIFMsIG91dCwgbGVuLCBhcmNoKSAo
KCpTSUxLX0JJUVVBRF9BTFRfU1RSSURFMl9JTVBMWyhhcmNoKSZPUFVTX0FSQ0hNQVNLXSkoaW4s
IEJfUTI4LCBBX1EyOCwgUywgb3V0LCBsZW4pKQorIyAgZWxpZiBkZWZpbmVkKE9QVVNfQVJNX1BS
RVNVTUVfTkVPTl9JTlRSKQorIyAgIGRlZmluZSBPVkVSUklERV9zaWxrX2JpcXVhZF9hbHRfc3Ry
aWRlMiAgICAgICAgICAgICAgICAgICgxKQorIyAgIGRlZmluZSBzaWxrX2JpcXVhZF9hbHRfc3Ry
aWRlMihpbiwgQl9RMjgsIEFfUTI4LCBTLCBvdXQsIGxlbiwgYXJjaCkgKCh2b2lkKShhcmNoKSwg
c2lsa19iaXF1YWRfYWx0X3N0cmlkZTJfbmVvbihpbiwgQl9RMjgsIEFfUTI4LCBTLCBvdXQsIGxl
bikpCisjICBlbmRpZgorIyBlbmRpZgorCisjZW5kaWYgLyogZW5kIFNJTEtfQklRVUFEX0FMVF9B
Uk1fSCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9iaXF1YWRfYWx0X25lb25faW50ci5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2FybS9iaXF1YWRfYWx0X25lb25faW50ci5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk3MTU3MzMxODU4Y2E4YmY2
OWFjNTI5M2NiNjhlMjNjZDZkNGYzM2IKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL2JpcXVh
ZF9hbHRfbmVvbl9pbnRyLmMKQEAgLTAsMCArMSwxNTYgQEAKKy8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorQ29w
eXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworYXJlIG1l
dDoKKy0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKK25vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKK2RvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCist
IE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0
LCBub3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCitwZXJtaXNzaW9uLgorVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAi
QVMgSVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JT
IEJFCitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SCitDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCitJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCitQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDxhcm1fbmVvbi5oPgorI2lmZGVm
IE9QVVNfQ0hFQ0tfQVNNCisjIGluY2x1ZGUgPHN0cmluZy5oPgorIyBpbmNsdWRlICJzdGFja19h
bGxvYy5oIgorI2VuZGlmCisjaW5jbHVkZSAiU2lnUHJvY19GSVguaCIKKworc3RhdGljIGlubGlu
ZSB2b2lkIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyX2tlcm5lbCggY29uc3QgaW50MzJ4NF90IEFf
TF9zMzJ4NCwgY29uc3QgaW50MzJ4NF90IEFfVV9zMzJ4NCwgY29uc3QgaW50MzJ4NF90IEJfUTI4
X3MzMng0LCBjb25zdCBpbnQzMngyX3QgdF9zMzJ4MiwgY29uc3QgaW50MzJ4NF90IGluX3MzMng0
LCBpbnQzMng0X3QgKlNfczMyeDQsIGludDMyeDJfdCAqb3V0MzJfUTE0X3MzMngyICkKK3sKKyAg
ICBpbnQzMng0X3QgdF9zMzJ4NCwgb3V0MzJfUTE0X3MzMng0OworCisgICAgKm91dDMyX1ExNF9z
MzJ4MiA9IHZhZGRfczMyKCB2Z2V0X2xvd19zMzIoICpTX3MzMng0ICksIHRfczMyeDIgKTsgICAg
ICAgICAgICAgIC8qIHNpbGtfU01MQVdCKCBTezAsMX0sIEJfUTI4WyAwIF0sIGluezAsMX0gKSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAqU19zMzJ4NCAgICAg
ICAgID0gdmNvbWJpbmVfczMyKCB2Z2V0X2hpZ2hfczMyKCAqU19zMzJ4NCApLCB2ZHVwX25fczMy
KCAwICkgKTsgLyogU3swLDF9ID0gU3syLDN9OyBTezIsM30gPSAwOyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICpvdXQzMl9RMTRfczMy
eDIgPSB2c2hsX25fczMyKCAqb3V0MzJfUTE0X3MzMngyLCAyICk7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBvdXQzMl9RMTRfezAsMX0gPSBzaWxrX0xTSElGVCggc2lsa19TTUxBV0IoIFN7
MCwxfSwgQl9RMjhbIDAgXSwgaW57MCwxfSApLCAyICk7ICovCisgICAgb3V0MzJfUTE0X3MzMng0
ICA9IHZjb21iaW5lX3MzMiggKm91dDMyX1ExNF9zMzJ4MiwgKm91dDMyX1ExNF9zMzJ4MiApOyAg
ICAgICAgIC8qIG91dDMyX1ExNF97MCwxLDAsMX0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICB0X3MzMng0ICAgICAgICAg
ID0gdnFkbXVsaHFfczMyKCBvdXQzMl9RMTRfczMyeDQsIEFfTF9zMzJ4NCApOyAgICAgICAgICAg
ICAgICAgLyogc2lsa19TTVVMV0IoIG91dDMyX1ExNF97MCwxLDAsMX0sIEF7MCwwLDEsMX1fTF9R
MjggKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICpTX3MzMng0ICAgICAgICAg
PSB2cnNyYXFfbl9zMzIoICpTX3MzMng0LCB0X3MzMng0LCAxNCApOyAgICAgICAgICAgICAgICAg
ICAgICAvKiBTezAsMX0gPSBTezIsM30gKyBzaWxrX1JTSElGVF9ST1VORCgpOyAgU3syLDN9ID0g
c2lsa19SU0hJRlRfUk9VTkQoKTsgICAgICAgICAgICovCisgICAgdF9zMzJ4NCAgICAgICAgICA9
IHZxZG11bGhxX3MzMiggb3V0MzJfUTE0X3MzMng0LCBBX1VfczMyeDQgKTsgICAgICAgICAgICAg
ICAgIC8qIHNpbGtfU01VTFdCKCBvdXQzMl9RMTRfezAsMSwwLDF9LCBBezAsMCwxLDF9X1VfUTI4
ICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAqU19zMzJ4NCAgICAgICAgID0g
dmFkZHFfczMyKCAqU19zMzJ4NCwgdF9zMzJ4NCApOyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogUzAgPSBzaWxrX1NNTEFXQiggU3swLDEsMiwzfSwgb3V0MzJfUTE0X3swLDEsMCwxfSwg
QXswLDAsMSwxfV9VX1EyOCApOyAgICAgICAgICAqLworICAgIHRfczMyeDQgICAgICAgICAgPSB2
cWRtdWxocV9zMzIoIGluX3MzMng0LCBCX1EyOF9zMzJ4NCApOyAgICAgICAgICAgICAgICAgICAg
ICAvKiBzaWxrX1NNVUxXQiggQl9RMjhbIHsxLDEsMiwyfSBdLCBpbnswLDEsMCwxfSApICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgKlNfczMyeDQgICAgICAgICA9IHZh
ZGRxX3MzMiggKlNfczMyeDQsIHRfczMyeDQgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIFMwID0gc2lsa19TTUxBV0IoIFMwLCBCX1EyOFsgezEsMSwyLDJ9IF0sIGluezAsMSwwLDF9
ICk7ICAgICAgICAgICAgICAgICAgICAgICAgKi8KK30KKwordm9pZCBzaWxrX2JpcXVhZF9hbHRf
c3RyaWRlMl9uZW9uKAorICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqaW4sICAgICAg
ICAgICAgICAgIC8qIEkgICAgIGlucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAg
KkJfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBNQSBjb2VmZmljaWVudHMgWzNdICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgICAgICAgICpBX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgQVIgY29lZmZpY2llbnRzIFsy
XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50
MzIgICAgICAgICAgICAgICAgICAqUywgICAgICAgICAgICAgICAgIC8qIEkvTyAgIFN0YXRlIHZl
Y3RvciBbNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKm91dCwgICAgICAgICAgICAgICAvKiBPICAg
ICBvdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxlbiAgICAgICAgICAgICAg
ICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworKQoreworICAgIC8qIERJUkVDVCBGT1JNIElJIFRSQU5TUE9TRUQg
KHVzZXMgMiBlbGVtZW50IHN0YXRlIHZlY3RvcikgKi8KKyAgICBvcHVzX2ludCAgICAgICAgayAg
ICAgICAgICAgID0gMDsKKyAgICBjb25zdCBpbnQzMngyX3Qgb2Zmc2V0X3MzMngyID0gdmR1cF9u
X3MzMiggKDE8PDE0KSAtIDEgKTsKKyAgICBjb25zdCBpbnQzMng0X3Qgb2Zmc2V0X3MzMng0ID0g
dmNvbWJpbmVfczMyKCBvZmZzZXRfczMyeDIsIG9mZnNldF9zMzJ4MiApOworICAgIGludDE2eDRf
dCAgICAgICBpbl9zMTZ4NCAgPSB2ZHVwX25fczE2KCAwICk7CisgICAgaW50MTZ4NF90ICAgICAg
IG91dF9zMTZ4NDsKKyAgICBpbnQzMngyX3QgICAgICAgQV9RMjhfczMyeDIsIEFfTF9zMzJ4Miwg
QV9VX3MzMngyLCBCX1EyOF9zMzJ4MiwgdF9zMzJ4MjsKKyAgICBpbnQzMng0X3QgICAgICAgQV9M
X3MzMng0LCBBX1VfczMyeDQsIEJfUTI4X3MzMng0LCBTX3MzMng0LCBvdXQzMl9RMTRfczMyeDQ7
CisgICAgaW50MzJ4MngyX3QgICAgIHQwX3MzMngyeDIsIHQxX3MzMngyeDIsIHQyX3MzMngyeDIs
IFNfczMyeDJ4MjsKKworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisgICAgb3B1c19pbnQzMiBTX2Nb
IDQgXTsKKyAgICBWQVJERUNMKCBvcHVzX2ludDE2LCBvdXRfYyApOworICAgIFNBVkVfU1RBQ0s7
CisgICAgQUxMT0MoIG91dF9jLCAyICogbGVuLCBvcHVzX2ludDE2ICk7CisKKyAgICBzaWxrX21l
bWNweSggJlNfYywgUywgc2l6ZW9mKCBTX2MgKSApOworICAgIHNpbGtfYmlxdWFkX2FsdF9zdHJp
ZGUyX2MoIGluLCBCX1EyOCwgQV9RMjgsIFNfYywgb3V0X2MsIGxlbiApOworI2VuZGlmCisKKyAg
ICAvKiBOZWdhdGUgQV9RMjggdmFsdWVzIGFuZCBzcGxpdCBpbiB0d28gcGFydHMgKi8KKyAgICBB
X1EyOF9zMzJ4MiA9IHZsZDFfczMyKCBBX1EyOCApOworICAgIEFfUTI4X3MzMngyID0gdm5lZ19z
MzIoIEFfUTI4X3MzMngyICk7CisgICAgQV9MX3MzMngyICAgPSB2c2hsX25fczMyKCBBX1EyOF9z
MzJ4MiwgMTggKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qICggLUFfUTI4W10gJiAweDAwMDAzRkZGICkgPDwgMTggICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgQV9MX3MzMngy
ICAgPSB2cmVpbnRlcnByZXRfczMyX3UzMiggdnNocl9uX3UzMiggdnJlaW50ZXJwcmV0X3UzMl9z
MzIoIEFfTF9zMzJ4MiApLCAzICkgKTsgICAgICAgICAgIC8qICggLUFfUTI4W10gJiAweDAwMDAz
RkZGICkgPDwgMTUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgQV9VX3MzMngyICAgPSB2c2hyX25fczMyKCBBX1EyOF9zMzJ4MiwgMTQg
KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIHNpbGtfUlNISUZUKCAtQV9RMjhbXSwgMTQgKSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgQV9VX3MzMngyICAgPSB2c2hs
X25fczMyKCBBX1VfczMyeDIsIDE2ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNpbGtfUlNISUZUKCAtQV9RMjhbXSwgMTQgKSA8
PCAxNiAoQ2xpcCB0d28gbGVhZGluZyBiaXRzIHRvIGNvbmZvcm0gdG8gQyBmdW5jdGlvbi4pICov
CisgICAgQV9VX3MzMngyICAgPSB2c2hyX25fczMyKCBBX1VfczMyeDIsIDEgKTsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNpbGtf
UlNISUZUKCAtQV9RMjhbXSwgMTQgKSA8PCAxNSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisKKyAgICBCX1EyOF9zMzJ4MiAgPSB2bGQxX3MzMigg
Ql9RMjggKTsKKyAgICB0X3MzMngyICAgICAgPSB2bGQxX3MzMiggQl9RMjggKyAxICk7CisgICAg
dDBfczMyeDJ4MiAgID0gdnppcF9zMzIoIEFfTF9zMzJ4MiwgQV9MX3MzMngyICk7CisgICAgdDFf
czMyeDJ4MiAgID0gdnppcF9zMzIoIEFfVV9zMzJ4MiwgQV9VX3MzMngyICk7CisgICAgdDJfczMy
eDJ4MiAgID0gdnppcF9zMzIoIHRfczMyeDIsIHRfczMyeDIgKTsKKyAgICBBX0xfczMyeDQgICAg
PSB2Y29tYmluZV9zMzIoIHQwX3MzMngyeDIudmFsWyAwIF0sIHQwX3MzMngyeDIudmFsWyAxIF0g
KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogQXswLDAsMSwxfV9MX1EyOCAgICAgICAg
ICAqLworICAgIEFfVV9zMzJ4NCAgICA9IHZjb21iaW5lX3MzMiggdDFfczMyeDJ4Mi52YWxbIDAg
XSwgdDFfczMyeDJ4Mi52YWxbIDEgXSApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBB
ezAsMCwxLDF9X1VfUTI4ICAgICAgICAgICovCisgICAgQl9RMjhfczMyeDQgID0gdmNvbWJpbmVf
czMyKCB0Ml9zMzJ4MngyLnZhbFsgMCBdLCB0Ml9zMzJ4MngyLnZhbFsgMSBdICk7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEJfUTI4WyB7MSwxLDIsMn0gXSAgICAgICAgKi8KKyAgICBT
X3MzMng0ICAgICAgPSB2bGQxcV9zMzIoIFMgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUzAgPSBTWyAwIF07
IFMzID0gU1sgMyBdOyAqLworICAgIFNfczMyeDJ4MiAgICA9IHZ0cm5fczMyKCB2Z2V0X2xvd19z
MzIoIFNfczMyeDQgKSwgdmdldF9oaWdoX3MzMiggU19zMzJ4NCApICk7ICAgICAgICAgICAgICAg
ICAgICAgICAvKiBTMiA9IFNbIDEgXTsgUzEgPSBTWyAyIF07ICovCisgICAgU19zMzJ4NCAgICAg
ID0gdmNvbWJpbmVfczMyKCBTX3MzMngyeDIudmFsWyAwIF0sIFNfczMyeDJ4Mi52YWxbIDEgXSAp
OworCisgICAgZm9yKCA7IGsgPCBsZW4gLSAxOyBrICs9IDIgKSB7CisgICAgICAgIGludDMyeDRf
dCBpbl9zMzJ4NFsgMiBdLCB0X3MzMng0OworICAgICAgICBpbnQzMngyX3Qgb3V0MzJfUTE0X3Mz
MngyWyAyIF07CisKKyAgICAgICAgLyogU1sgMiAqIGkgKyAwIF0sIFNbIDIgKiBpICsgMSBdLCBT
WyAyICogaSArIDIgXSwgU1sgMiAqIGkgKyAzIF06IFExMiAqLworICAgICAgICBpbl9zMTZ4NCAg
ICAgID0gdmxkMV9zMTYoICZpblsgMiAqIGsgXSApOyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBpbnswLDEsMiwzfSA9IGluWyAyICogayAr
IHswLDEsMiwzfSBdOyAqLworICAgICAgICBpbl9zMzJ4NFsgMCBdID0gdnNobGxfbl9zMTYoIGlu
X3MxNng0LCAxNSApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBpbnswLDEsMiwzfSA8PCAxNSAgICAgICAgICAgICAgICAgICAgICAqLworICAg
ICAgICB0X3MzMng0ICAgICAgID0gdnFkbXVsaHFfbGFuZV9zMzIoIGluX3MzMng0WyAwIF0sIEJf
UTI4X3MzMngyLCAwICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzaWxrX1NNVUxX
QiggQl9RMjhbIDAgXSwgaW57MCwxLDIsM30gKSAqLworICAgICAgICBpbl9zMzJ4NFsgMSBdID0g
dmNvbWJpbmVfczMyKCB2Z2V0X2hpZ2hfczMyKCBpbl9zMzJ4NFsgMCBdICksIHZnZXRfaGlnaF9z
MzIoIGluX3MzMng0WyAwIF0gKSApOyAvKiBpbnsyLDMsMiwzfSA8PCAxNSAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgICAgICBpbl9zMzJ4NFsgMCBdID0gdmNvbWJpbmVfczMyKCB2Z2V0X2xv
d19zMzIgKCBpbl9zMzJ4NFsgMCBdICksIHZnZXRfbG93X3MzMiAoIGluX3MzMng0WyAwIF0gKSAp
OyAvKiBpbnswLDEsMCwxfSA8PCAxNSAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBz
aWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9rZXJuZWwoIEFfTF9zMzJ4NCwgQV9VX3MzMng0LCBCX1Ey
OF9zMzJ4NCwgdmdldF9sb3dfczMyICggdF9zMzJ4NCApLCBpbl9zMzJ4NFsgMCBdLCAmU19zMzJ4
NCwgJm91dDMyX1ExNF9zMzJ4MlsgMCBdICk7CisgICAgICAgIHNpbGtfYmlxdWFkX2FsdF9zdHJp
ZGUyX2tlcm5lbCggQV9MX3MzMng0LCBBX1VfczMyeDQsIEJfUTI4X3MzMng0LCB2Z2V0X2hpZ2hf
czMyKCB0X3MzMng0ICksIGluX3MzMng0WyAxIF0sICZTX3MzMng0LCAmb3V0MzJfUTE0X3MzMngy
WyAxIF0gKTsKKworICAgICAgICAvKiBTY2FsZSBiYWNrIHRvIFEwIGFuZCBzYXR1cmF0ZSAqLwor
ICAgICAgICBvdXQzMl9RMTRfczMyeDQgPSB2Y29tYmluZV9zMzIoIG91dDMyX1ExNF9zMzJ4Mlsg
MCBdLCBvdXQzMl9RMTRfczMyeDJbIDEgXSApOyAgICAgICAgICAgICAgICAgICAvKiBvdXQzMl9R
MTRfezAsMSwyLDN9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIG91
dDMyX1ExNF9zMzJ4NCA9IHZhZGRxX3MzMiggb3V0MzJfUTE0X3MzMng0LCBvZmZzZXRfczMyeDQg
KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG91dDMyX1ExNF97MCwxLDIs
M30gKyAoMTw8MTQpIC0gMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgb3V0X3MxNng0ICAg
ICAgID0gdnFzaHJuX25fczMyKCBvdXQzMl9RMTRfczMyeDQsIDE0ICk7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2ls
a19SU0hJRlQoIG91dDMyX1ExNF97MCwxLDIsM30gKyAoMTw8MTQpIC0gMSwgMTQgKSApICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICB2c3QxX3MxNiggJm91dFsgMiAqIGsg
XSwgb3V0X3MxNng0ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBvdXRbIDIgKiBrICsgezAsMSwyLDN9IF0gPSAob3B1c19pbnQx
NilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVCggb3V0MzJfUTE0X3swLDEsMiwzfSArICgxPDwxNCkg
LSAxLCAxNCApICk7ICovCisgICAgfQorCisgICAgLyogUHJvY2VzcyBsZWZ0b3Zlci4gKi8KKyAg
ICBpZiggayA8IGxlbiApIHsKKyAgICAgICAgaW50MzJ4NF90IGluX3MzMng0OworICAgICAgICBp
bnQzMngyX3Qgb3V0MzJfUTE0X3MzMngyOworCisgICAgICAgIC8qIFNbIDIgKiBpICsgMCBdLCBT
WyAyICogaSArIDEgXTogUTEyICovCisgICAgICAgIGluX3MxNng0ICAgICA9IHZsZDFfbGFuZV9z
MTYoICZpblsgMiAqIGsgKyAwIF0sIGluX3MxNng0LCAwICk7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIGluezAsMX0gPSBpblsgMiAqIGsgKyB7MCwxfSBdOyAgICAgKi8KKyAg
ICAgICAgaW5fczE2eDQgICAgID0gdmxkMV9sYW5lX3MxNiggJmluWyAyICogayArIDEgXSwgaW5f
czE2eDQsIDEgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogaW57MCwxfSA9
IGluWyAyICogayArIHswLDF9IF07ICAgICAqLworICAgICAgICBpbl9zMzJ4NCAgICAgPSB2c2hs
bF9uX3MxNiggaW5fczE2eDQsIDE1ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBpbnswLDF9IDw8IDE1ICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgICAgIHRfczMyeDIgICAgICA9IHZxZG11bGhfbGFuZV9zMzIoIHZnZXRfbG93X3Mz
MiggaW5fczMyeDQgKSwgQl9RMjhfczMyeDIsIDAgKTsgICAgICAgICAgICAgICAgICAgIC8qIHNp
bGtfU01VTFdCKCBCX1EyOFsgMCBdLCBpbnswLDF9ICkgKi8KKyAgICAgICAgaW5fczMyeDQgICAg
ID0gdmNvbWJpbmVfczMyKCB2Z2V0X2xvd19zMzIoIGluX3MzMng0ICksIHZnZXRfbG93X3MzMigg
aW5fczMyeDQgKSApOyAgICAgICAgICAgICAgLyogaW57MCwxLDAsMX0gPDwgMTUgICAgICAgICAg
ICAgICAgICAqLworICAgICAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9rZXJuZWwoIEFfTF9z
MzJ4NCwgQV9VX3MzMng0LCBCX1EyOF9zMzJ4NCwgdF9zMzJ4MiwgaW5fczMyeDQsICZTX3MzMng0
LCAmb3V0MzJfUTE0X3MzMngyICk7CisKKyAgICAgICAgLyogU2NhbGUgYmFjayB0byBRMCBhbmQg
c2F0dXJhdGUgKi8KKyAgICAgICAgb3V0MzJfUTE0X3MzMngyID0gdmFkZF9zMzIoIG91dDMyX1Ex
NF9zMzJ4Miwgb2Zmc2V0X3MzMngyICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogb3V0MzJfUTE0X3swLDF9ICsgKDE8PDE0KSAtIDEgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIG91dDMy
X1ExNF9zMzJ4NCA9IHZjb21iaW5lX3MzMiggb3V0MzJfUTE0X3MzMngyLCBvdXQzMl9RMTRfczMy
eDIgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG91dDMyX1ExNF97MCwxLDAsMX0g
KyAoMTw8MTQpIC0gMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgICAgICBvdXRfczE2eDQgICAgICAgPSB2cXNocm5fbl9zMzIo
IG91dDMyX1ExNF9zMzJ4NCwgMTQgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVCggb3V0MzJfUTE0
X3swLDEsMCwxfSArICgxPDwxNCkgLSAxLCAxNCApICkgICAgICAgICAgICAgKi8KKyAgICAgICAg
dnN0MV9sYW5lX3MxNiggJm91dFsgMiAqIGsgKyAwIF0sIG91dF9zMTZ4NCwgMCApOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb3V0WyAyICogayArIDAg
XSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUKCBvdXQzMl9RMTRfMCArICgx
PDwxNCkgLSAxLCAxNCApICk7ICovCisgICAgICAgIHZzdDFfbGFuZV9zMTYoICZvdXRbIDIgKiBr
ICsgMSBdLCBvdXRfczE2eDQsIDEgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIG91dFsgMiAqIGsgKyAxIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2
KCBzaWxrX1JTSElGVCggb3V0MzJfUTE0XzEgKyAoMTw8MTQpIC0gMSwgMTQgKSApOyAqLworICAg
IH0KKworICAgIHZzdDFxX2xhbmVfczMyKCAmU1sgMCBdLCBTX3MzMng0LCAwICk7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBT
WyAwIF0gPSBTMDsgKi8KKyAgICB2c3QxcV9sYW5lX3MzMiggJlNbIDEgXSwgU19zMzJ4NCwgMiAp
OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogU1sgMSBdID0gUzI7ICovCisgICAgdnN0MXFfbGFuZV9zMzIoICZTWyAyIF0sIFNf
czMyeDQsIDEgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIFNbIDIgXSA9IFMxOyAqLworICAgIHZzdDFxX2xhbmVfczMyKCAm
U1sgMyBdLCBTX3MzMng0LCAzICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTWyAzIF0gPSBTMzsgKi8KKworI2lmZGVmIE9Q
VVNfQ0hFQ0tfQVNNCisgICAgc2lsa19hc3NlcnQoICFtZW1jbXAoIFNfYywgUywgc2l6ZW9mKCBT
X2MgKSApICk7CisgICAgc2lsa19hc3NlcnQoICFtZW1jbXAoIG91dF9jLCBvdXQsIDIgKiBsZW4g
KiBzaXplb2YoIG9wdXNfaW50MTYgKSApICk7CisgICAgUkVTVE9SRV9TVEFDSzsKKyNlbmRpZgor
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9tYWNyb3NfYXJtdjQuaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vbWFjcm9zX2Fy
bXY0LmgKaW5kZXggM2YzMGU5NzI4OGZkNzdiM2EyMjk4ZGY2NjhhNDE5Nzc3MTY0YzYyMi4uODc3
ZWIxOGRkNTgxMjljYzE1OTE1MmRkNGIwOWQ2NzU5YTg0YTI3NyAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Fy
bS9tYWNyb3NfYXJtdjQuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL21hY3Jvc19hcm12NC5oCkBAIC0yOCw2ICsy
OCwxMSBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICNpZm5kZWYgU0lMS19NQUNST1Nf
QVJNdjRfSAogI2RlZmluZSBTSUxLX01BQ1JPU19BUk12NF9ICiAKKy8qIFRoaXMgbWFjcm8gb25s
eSBhdm9pZHMgdGhlIHVuZGVmaW5lZCBiZWhhdmlvdXIgZnJvbSBhIGxlZnQgc2hpZnQgb2YKKyAg
IGEgbmVnYXRpdmUgdmFsdWUuIEl0IHNob3VsZCBvbmx5IGJlIHVzZWQgaW4gbWFjcm9zIHRoYXQg
Y2FuJ3QgaW5jbHVkZQorICAgU2lnUHJvY19GSVguaC4gSW4gb3RoZXIgY2FzZXMsIHVzZSBzaWxr
X0xTSElGVDMyKCkuICovCisjZGVmaW5lIFNBRkVfU0hMKGEsYikgKChvcHVzX2ludDMyKSgob3B1
c191aW50MzIpKGEpIDw8IChiKSkpCisKIC8qIChhMzIgKiAob3B1c19pbnQzMikoKG9wdXNfaW50
MTYpKGIzMikpKSA+PiAxNiBvdXRwdXQgaGF2ZSB0byBiZSAzMmJpdCBpbnQgKi8KICN1bmRlZiBz
aWxrX1NNVUxXQgogc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIgc2lsa19TTVVMV0JfYXJt
djQob3B1c19pbnQzMiBhLCBvcHVzX2ludDE2IGIpCkBAIC0zOCw3ICs0Myw3IEBAIHN0YXRpYyBP
UFVTX0lOTElORSBvcHVzX2ludDMyIHNpbGtfU01VTFdCX2FybXY0KG9wdXNfaW50MzIgYSwgb3B1
c19pbnQxNiBiKQogICAgICAgIiNzaWxrX1NNVUxXQlxuXHQiCiAgICAgICAic211bGwgJTAsICUx
LCAlMiwgJTNcblx0IgogICAgICAgOiAiPSZyIihyZF9sbyksICI9JnIiKHJkX2hpKQotICAgICAg
OiAiJXIiKGEpLCAiciIoYjw8MTYpCisgICAgICA6ICIlciIoYSksICJyIihTQUZFX1NITChiLDE2
KSkKICAgKTsKICAgcmV0dXJuIHJkX2hpOwogfQpAQCAtODAsNyArODUsNyBAQCBzdGF0aWMgT1BV
U19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX1NNVUxXV19hcm12NChvcHVzX2ludDMyIGEsIG9wdXNf
aW50MzIgYikKICAgICA6ICI9JnIiKHJkX2xvKSwgIj0mciIocmRfaGkpCiAgICAgOiAiJXIiKGEp
LCAiciIoYikKICAgKTsKLSAgcmV0dXJuIChyZF9oaTw8MTYpKyhyZF9sbz4+MTYpOworICByZXR1
cm4gU0FGRV9TSEwocmRfaGksMTYpKyhyZF9sbz4+MTYpOwogfQogI2RlZmluZSBzaWxrX1NNVUxX
VyhhLCBiKSAoc2lsa19TTVVMV1dfYXJtdjQoYSwgYikpCiAKQEAgLTk2LDggKzEwMSwxMCBAQCBz
dGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX1NNTEFXV19hcm12NChvcHVzX2ludDMy
IGEsIG9wdXNfaW50MzIgYiwKICAgICA6ICI9JnIiKHJkX2xvKSwgIj0mciIocmRfaGkpCiAgICAg
OiAiJXIiKGIpLCAiciIoYykKICAgKTsKLSAgcmV0dXJuIGErKHJkX2hpPDwxNikrKHJkX2xvPj4x
Nik7CisgIHJldHVybiBhK1NBRkVfU0hMKHJkX2hpLDE2KSsocmRfbG8+PjE2KTsKIH0KICNkZWZp
bmUgc2lsa19TTUxBV1coYSwgYiwgYykgKHNpbGtfU01MQVdXX2FybXY0KGEsIGIsIGMpKQogCisj
dW5kZWYgU0FGRV9TSEwKKwogI2VuZGlmIC8qIFNJTEtfTUFDUk9TX0FSTXY0X0ggKi8KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9hcm0vbWFjcm9zX2FybXY1ZS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9tYWNyb3NfYXJtdjVlLmgK
aW5kZXggYWFkNDExN2U0NmE1ZmFmYWFlYTNiMGU1ZGNjMGJlODViMTFjNmNmOS4uYjE0ZWM2NWRk
YjI5YTIyYjA5MzQ2MGMzOGFlYjY4YmE1ZWQ1NDA3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9tYWNy
b3NfYXJtdjVlLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9tYWNyb3NfYXJtdjVlLmgKQEAgLTI5LDYgKzI5LDEx
IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2lmbmRlZiBTSUxLX01BQ1JPU19BUk12
NUVfSAogI2RlZmluZSBTSUxLX01BQ1JPU19BUk12NUVfSAogCisvKiBUaGlzIG1hY3JvIG9ubHkg
YXZvaWRzIHRoZSB1bmRlZmluZWQgYmVoYXZpb3VyIGZyb20gYSBsZWZ0IHNoaWZ0IG9mCisgICBh
IG5lZ2F0aXZlIHZhbHVlLiBJdCBzaG91bGQgb25seSBiZSB1c2VkIGluIG1hY3JvcyB0aGF0IGNh
bid0IGluY2x1ZGUKKyAgIFNpZ1Byb2NfRklYLmguIEluIG90aGVyIGNhc2VzLCB1c2Ugc2lsa19M
U0hJRlQzMigpLiAqLworI2RlZmluZSBTQUZFX1NITChhLGIpICgob3B1c19pbnQzMikoKG9wdXNf
dWludDMyKShhKSA8PCAoYikpKQorCiAvKiAoYTMyICogKG9wdXNfaW50MzIpKChvcHVzX2ludDE2
KShiMzIpKSkgPj4gMTYgb3V0cHV0IGhhdmUgdG8gYmUgMzJiaXQgaW50ICovCiAjdW5kZWYgc2ls
a19TTVVMV0IKIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMyIHNpbGtfU01VTFdCX2FybXY1
ZShvcHVzX2ludDMyIGEsIG9wdXNfaW50MTYgYikKQEAgLTE5MCw3ICsxOTUsNyBAQCBzdGF0aWMg
T1BVU19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX0NMWjE2X2FybXY1KG9wdXNfaW50MTYgaW4xNikK
ICAgICAgICIjc2lsa19DTFoxNlxuXHQiCiAgICAgICAiY2x6ICUwLCAlMTtcbiIKICAgICAgIDog
Ij1yIihyZXMpCi0gICAgICA6ICJyIihpbjE2PDwxNnwweDgwMDApCisgICAgICA6ICJyIihTQUZF
X1NITChpbjE2LDE2KXwweDgwMDApCiAgICk7CiAgIHJldHVybiByZXM7CiB9CkBAIC0yMTAsNCAr
MjE1LDYgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIgc2lsa19DTFozMl9hcm12NShv
cHVzX2ludDMyIGluMzIpCiB9CiAjZGVmaW5lIHNpbGtfQ0xaMzIoaW4zMikgKHNpbGtfQ0xaMzJf
YXJtdjUoaW4zMikpCiAKKyN1bmRlZiBTQUZFX1NITAorCiAjZW5kaWYgLyogU0lMS19NQUNST1Nf
QVJNdjVFX0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9iaXF1YWRfYWx0LmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYmlxdWFkX2Fs
dC5jCmluZGV4IGQ1NWY1ZWU5MmVjMmQ5YjQyMTc4MTAzNzdhMWM0YTM5MGY4MTA0ZjkuLjU0NTY2
YTQzYzAwMTNjN2I3ZWQzNzgwNjlhNDQ4NjdjY2E5MzIzMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9iaXF1
YWRfYWx0LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2JpcXVhZF9hbHQuYwpAQCAtMzksMTQgKzM5LDEzIEBAIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgIlNpZ1Byb2NfRklYLmgiCiAKIC8qIFNl
Y29uZCBvcmRlciBBUk1BIGZpbHRlciwgYWx0ZXJuYXRpdmUgaW1wbGVtZW50YXRpb24gKi8KLXZv
aWQgc2lsa19iaXF1YWRfYWx0KAordm9pZCBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMSgKICAgICBj
b25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmluLCAgICAgICAgICAgICAgICAvKiBJICAgICBp
bnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpCX1EyOCwgICAgICAgICAgICAg
LyogSSAgICAgTUEgY29lZmZpY2llbnRzIFszXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAg
ICAgICAgICAgIC8qIEkgICAgIEFSIGNvZWZmaWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAg
KlMsICAgICAgICAgICAgICAgICAvKiBJL08gICBTdGF0ZSB2ZWN0b3IgWzJdICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQxNiAgICAgICAg
ICAgICAgICAgICpvdXQsICAgICAgICAgICAgICAgLyogTyAgICAgb3V0cHV0IHNpZ25hbCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICBsZW4sICAgICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBs
ZW5ndGggKG11c3QgYmUgZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgc3RyaWRlICAgICAgICAgICAgICAvKiBJICAg
ICBPcGVyYXRlIG9uIGludGVybGVhdmVkIHNpZ25hbCBpZiA+IDEgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxlbiAgICAgICAgICAgICAg
ICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwogKQogewogICAgIC8qIERJUkVDVCBGT1JNIElJIFRSQU5TUE9TRUQg
KHVzZXMgMiBlbGVtZW50IHN0YXRlIHZlY3RvcikgKi8KQEAgLTYxLDcgKzYwLDcgQEAgdm9pZCBz
aWxrX2JpcXVhZF9hbHQoCiAKICAgICBmb3IoIGsgPSAwOyBrIDwgbGVuOyBrKysgKSB7CiAgICAg
ICAgIC8qIFNbIDAgXSwgU1sgMSBdOiBRMTIgKi8KLSAgICAgICAgaW52YWwgPSBpblsgayAqIHN0
cmlkZSBdOworICAgICAgICBpbnZhbCA9IGluWyBrIF07CiAgICAgICAgIG91dDMyX1ExNCA9IHNp
bGtfTFNISUZUKCBzaWxrX1NNTEFXQiggU1sgMCBdLCBCX1EyOFsgMCBdLCBpbnZhbCApLCAyICk7
CiAKICAgICAgICAgU1sgMCBdID0gU1sxXSArIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX1NNVUxX
Qiggb3V0MzJfUTE0LCBBMF9MX1EyOCApLCAxNCApOwpAQCAtNzMsNiArNzIsNTAgQEAgdm9pZCBz
aWxrX2JpcXVhZF9hbHQoCiAgICAgICAgIFNbIDEgXSA9IHNpbGtfU01MQVdCKCBTWyAxIF0sIEJf
UTI4WyAyIF0sIGludmFsICk7CiAKICAgICAgICAgLyogU2NhbGUgYmFjayB0byBRMCBhbmQgc2F0
dXJhdGUgKi8KLSAgICAgICAgb3V0WyBrICogc3RyaWRlIF0gPSAob3B1c19pbnQxNilzaWxrX1NB
VDE2KCBzaWxrX1JTSElGVCggb3V0MzJfUTE0ICsgKDE8PDE0KSAtIDEsIDE0ICkgKTsKKyAgICAg
ICAgb3V0WyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVCggb3V0MzJf
UTE0ICsgKDE8PDE0KSAtIDEsIDE0ICkgKTsKKyAgICB9Cit9CisKK3ZvaWQgc2lsa19iaXF1YWRf
YWx0X3N0cmlkZTJfYygKKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmluLCAgICAg
ICAgICAgICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAg
ICpCX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgTUEgY29lZmZpY2llbnRzIFszXSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIg
ICAgICAgICAgICAqQV9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIEFSIGNvZWZmaWNpZW50cyBb
Ml0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2lu
dDMyICAgICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAgICAvKiBJL08gICBTdGF0ZSB2
ZWN0b3IgWzRdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICpvdXQsICAgICAgICAgICAgICAgLyogTyAg
ICAgb3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBsZW4gICAgICAgICAgICAg
ICAgIC8qIEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3QgYmUgZXZlbikgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKykKK3sKKyAgICAvKiBESVJFQ1QgRk9STSBJSSBUUkFOU1BPU0VE
ICh1c2VzIDIgZWxlbWVudCBzdGF0ZSB2ZWN0b3IpICovCisgICAgb3B1c19pbnQgICBrOworICAg
IG9wdXNfaW50MzIgQTBfVV9RMjgsIEEwX0xfUTI4LCBBMV9VX1EyOCwgQTFfTF9RMjgsIG91dDMy
X1ExNFsgMiBdOworCisgICAgLyogTmVnYXRlIEFfUTI4IHZhbHVlcyBhbmQgc3BsaXQgaW4gdHdv
IHBhcnRzICovCisgICAgQTBfTF9RMjggPSAoIC1BX1EyOFsgMCBdICkgJiAweDAwMDAzRkZGOyAg
ICAgICAgLyogbG93ZXIgcGFydCAqLworICAgIEEwX1VfUTI4ID0gc2lsa19SU0hJRlQoIC1BX1Ey
OFsgMCBdLCAxNCApOyAgICAgIC8qIHVwcGVyIHBhcnQgKi8KKyAgICBBMV9MX1EyOCA9ICggLUFf
UTI4WyAxIF0gKSAmIDB4MDAwMDNGRkY7ICAgICAgICAvKiBsb3dlciBwYXJ0ICovCisgICAgQTFf
VV9RMjggPSBzaWxrX1JTSElGVCggLUFfUTI4WyAxIF0sIDE0ICk7ICAgICAgLyogdXBwZXIgcGFy
dCAqLworCisgICAgZm9yKCBrID0gMDsgayA8IGxlbjsgaysrICkgeworICAgICAgICAvKiBTWyAw
IF0sIFNbIDEgXSwgU1sgMiBdLCBTWyAzIF06IFExMiAqLworICAgICAgICBvdXQzMl9RMTRbIDAg
XSA9IHNpbGtfTFNISUZUKCBzaWxrX1NNTEFXQiggU1sgMCBdLCBCX1EyOFsgMCBdLCBpblsgMiAq
IGsgKyAwIF0gKSwgMiApOworICAgICAgICBvdXQzMl9RMTRbIDEgXSA9IHNpbGtfTFNISUZUKCBz
aWxrX1NNTEFXQiggU1sgMiBdLCBCX1EyOFsgMCBdLCBpblsgMiAqIGsgKyAxIF0gKSwgMiApOwor
CisgICAgICAgIFNbIDAgXSA9IFNbIDEgXSArIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX1NNVUxX
Qiggb3V0MzJfUTE0WyAwIF0sIEEwX0xfUTI4ICksIDE0ICk7CisgICAgICAgIFNbIDIgXSA9IFNb
IDMgXSArIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX1NNVUxXQiggb3V0MzJfUTE0WyAxIF0sIEEw
X0xfUTI4ICksIDE0ICk7CisgICAgICAgIFNbIDAgXSA9IHNpbGtfU01MQVdCKCBTWyAwIF0sIG91
dDMyX1ExNFsgMCBdLCBBMF9VX1EyOCApOworICAgICAgICBTWyAyIF0gPSBzaWxrX1NNTEFXQigg
U1sgMiBdLCBvdXQzMl9RMTRbIDEgXSwgQTBfVV9RMjggKTsKKyAgICAgICAgU1sgMCBdID0gc2ls
a19TTUxBV0IoIFNbIDAgXSwgQl9RMjhbIDEgXSwgaW5bIDIgKiBrICsgMCBdICk7CisgICAgICAg
IFNbIDIgXSA9IHNpbGtfU01MQVdCKCBTWyAyIF0sIEJfUTI4WyAxIF0sIGluWyAyICogayArIDEg
XSApOworCisgICAgICAgIFNbIDEgXSA9IHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX1NNVUxXQigg
b3V0MzJfUTE0WyAwIF0sIEExX0xfUTI4ICksIDE0ICk7CisgICAgICAgIFNbIDMgXSA9IHNpbGtf
UlNISUZUX1JPVU5EKCBzaWxrX1NNVUxXQiggb3V0MzJfUTE0WyAxIF0sIEExX0xfUTI4ICksIDE0
ICk7CisgICAgICAgIFNbIDEgXSA9IHNpbGtfU01MQVdCKCBTWyAxIF0sIG91dDMyX1ExNFsgMCBd
LCBBMV9VX1EyOCApOworICAgICAgICBTWyAzIF0gPSBzaWxrX1NNTEFXQiggU1sgMyBdLCBvdXQz
Ml9RMTRbIDEgXSwgQTFfVV9RMjggKTsKKyAgICAgICAgU1sgMSBdID0gc2lsa19TTUxBV0IoIFNb
IDEgXSwgQl9RMjhbIDIgXSwgaW5bIDIgKiBrICsgMCBdICk7CisgICAgICAgIFNbIDMgXSA9IHNp
bGtfU01MQVdCKCBTWyAzIF0sIEJfUTI4WyAyIF0sIGluWyAyICogayArIDEgXSApOworCisgICAg
ICAgIC8qIFNjYWxlIGJhY2sgdG8gUTAgYW5kIHNhdHVyYXRlICovCisgICAgICAgIG91dFsgMiAq
IGsgKyAwIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVCggb3V0MzJfUTE0
WyAwIF0gKyAoMTw8MTQpIC0gMSwgMTQgKSApOworICAgICAgICBvdXRbIDIgKiBrICsgMSBdID0g
KG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMyX1ExNFsgMSBdICsgKDE8
PDE0KSAtIDEsIDE0ICkgKTsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYndleHBhbmRlci5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2J3ZXhwYW5kZXIuYwppbmRleCAyZWI0NDU2Njk1ZTc5MTkyMDM3NTdiOGZmOGY2MDY3
MzkxM2VmMTE2Li5hZmE5NzkwN2VjODAyYzYzYzY1ZDUyNjdjMTQ1OGMwN2M4MjU3MjA4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvYndleHBhbmRlci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9id2V4cGFuZGVyLmMKQEAgLTQ1LDcg
KzQ1LDcgQEAgdm9pZCBzaWxrX2J3ZXhwYW5kZXIoCiAgICAgLyogQmlhcyBpbiBzaWxrX1NNVUxX
QiBjYW4gbGVhZCB0byB1bnN0YWJsZSBmaWx0ZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwogICAgIGZvciggaSA9IDA7IGkgPCBkIC0gMTsgaSsrICkgewogICAgICAgICBhclsg
aSBdICAgID0gKG9wdXNfaW50MTYpc2lsa19SU0hJRlRfUk9VTkQoIHNpbGtfTVVMKCBjaGlycF9R
MTYsIGFyWyBpIF0gICAgICAgICAgICAgKSwgMTYgKTsKLSAgICAgICAgY2hpcnBfUTE2ICs9ICAg
ICAgICAgICAgc2lsa19SU0hJRlRfUk9VTkQoIHNpbGtfTVVMKCBjaGlycF9RMTYsIGNoaXJwX21p
bnVzX29uZV9RMTYgKSwgMTYgKTsKKyAgICAgICAgY2hpcnBfUTE2ICs9ICAgICAgICAgICAgIHNp
bGtfUlNISUZUX1JPVU5EKCBzaWxrX01VTCggY2hpcnBfUTE2LCBjaGlycF9taW51c19vbmVfUTE2
ICksIDE2ICk7CiAgICAgfQogICAgIGFyWyBkIC0gMSBdID0gKG9wdXNfaW50MTYpc2lsa19SU0hJ
RlRfUk9VTkQoIHNpbGtfTVVMKCBjaGlycF9RMTYsIGFyWyBkIC0gMSBdICksIDE2ICk7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvY29udHJvbC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2wuaAppbmRleCA3NDdlNTQyNmEw
YzNmYzdjYjliNWJkYjc4MzRkZGQ5OGEyM2U5NzkxLi5iNzZlYzMzY2Q2ZGRiNjM4NmY1NjRlMWQ5
OWQzZmY1N2Q3ZTY5M2FkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvY29udHJvbC5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9jb250
cm9sLmgKQEAgLTc3LDYgKzc3LDkgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIC8qIEk6ICAgRmxh
ZyB0byBlbmFibGUgaW4tYmFuZCBGb3J3YXJkIEVycm9yIENvcnJlY3Rpb24gKEZFQyk7IDAvMSAg
ICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50IHVzZUluQmFuZEZFQzsKIAorICAg
IC8qIEk6ICAgRmxhZyB0byBhY3R1YWxseSBjb2RlIGluLWJhbmQgRm9yd2FyZCBFcnJvciBDb3Jy
ZWN0aW9uIChGRUMpIGluIHRoZSBjdXJyZW50IHBhY2tldDsgMC8xICovCisgICAgb3B1c19pbnQg
TEJSUl9jb2RlZDsKKwogICAgIC8qIEk6ICAgRmxhZyB0byBlbmFibGUgZGlzY29udGludW91cyB0
cmFuc21pc3Npb24gKERUWCk7IDAvMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IG9wdXNfaW50IHVzZURUWDsKIApAQCAtMTEwLDYgKzExMywxMSBAQCB0eXBlZGVmIHN0cnVjdCB7
CiAgICAgLyogTzogICBUZWxscyB0aGUgT3B1cyBlbmNvZGVyIHdlJ3JlIHJlYWR5IHRvIHN3aXRj
aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgc3dp
dGNoUmVhZHk7CiAKKyAgICAvKiBPOiBTSUxLIFNpZ25hbCB0eXBlICovCisgICAgb3B1c19pbnQg
c2lnbmFsVHlwZTsKKworICAgIC8qIE86IFNJTEsgb2Zmc2V0IChkaXRoZXJpbmcpICovCisgICAg
b3B1c19pbnQgb2Zmc2V0OwogfSBzaWxrX0VuY0NvbnRyb2xTdHJ1Y3Q7CiAKIC8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9jb250cm9sX1NOUi5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2xfU05S
LmMKaW5kZXggY2VlODdlYjBkOGIzN2M1NGUwNTcwNmZiNjhhOGNkYzE4YzlhYWI0Yy4uNDY0YzFh
Y2ZlODg0NTFhYmY2YTNlZDQ1ZGIyNmIyNWNkMGM2NTNmMCAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRy
b2xfU05SLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2xfU05SLmMKQEAgLTY0LDggKzY0LDcgQEAgb3B1c19p
bnQgc2lsa19jb250cm9sX1NOUigKICAgICAgICAgLyogRmluZCBiaXRyYXRlIGludGVydmFsIGlu
IHRhYmxlIGFuZCBpbnRlcnBvbGF0ZSAqLwogICAgICAgICBmb3IoIGsgPSAxOyBrIDwgVEFSR0VU
X1JBVEVfVEFCX1NaOyBrKysgKSB7CiAgICAgICAgICAgICBpZiggVGFyZ2V0UmF0ZV9icHMgPD0g
cmF0ZVRhYmxlWyBrIF0gKSB7Ci0gICAgICAgICAgICAgICAgZnJhY19RNiA9IHNpbGtfRElWMzIo
IHNpbGtfTFNISUZUKCBUYXJnZXRSYXRlX2JwcyAtIHJhdGVUYWJsZVsgayAtIDEgXSwgNiApLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhdGVUYWJs
ZVsgayBdIC0gcmF0ZVRhYmxlWyBrIC0gMSBdICk7CisgICAgICAgICAgICAgICAgZnJhY19RNiA9
IHNpbGtfRElWMzIoIHNpbGtfTFNISUZUKCBUYXJnZXRSYXRlX2JwcyAtIHJhdGVUYWJsZVsgayAt
IDEgXSwgNiApLCByYXRlVGFibGVbIGsgXSAtIHJhdGVUYWJsZVsgayAtIDEgXSApOwogICAgICAg
ICAgICAgICAgIHBzRW5jQy0+U05SX2RCX1E3ID0gc2lsa19MU0hJRlQoIHNpbGtfU05SX3RhYmxl
X1ExWyBrIC0gMSBdLCA2ICkgKyBzaWxrX01VTCggZnJhY19RNiwgc2lsa19TTlJfdGFibGVfUTFb
IGsgXSAtIHNpbGtfU05SX3RhYmxlX1ExWyBrIC0gMSBdICk7CiAgICAgICAgICAgICAgICAgYnJl
YWs7CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvY29udHJvbF9jb2RlYy5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2NvbnRyb2xfY29kZWMuYwppbmRleCAwNDRlZWEzZjJhODRlMGFhNDQzZjA1Y2ZjNWFmMmY1YzVl
NDU0Y2FkLi45MzUwZmQ0YjJiNGNjOWI1ODg5MWQ4M2I3YjdiNzc0ZjI3NGIxODFmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvY29udHJvbF9jb2RlYy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9jb250cm9sX2NvZGVjLmMKQEAgLTU3
LDcgKzU3LDcgQEAgc3RhdGljIG9wdXNfaW50IHNpbGtfc2V0dXBfY29tcGxleGl0eSgKIAogc3Rh
dGljIE9QVVNfSU5MSU5FIG9wdXNfaW50IHNpbGtfc2V0dXBfTEJSUigKICAgICBzaWxrX2VuY29k
ZXJfc3RhdGUgICAgICAgICAgICAgICpwc0VuY0MsICAgICAgICAgICAgLyogSS9PICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICAgICBUYXJn
ZXRSYXRlX2JwcyAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0
IHNpbGtfRW5jQ29udHJvbFN0cnVjdCAgICAgKmVuY0NvbnRyb2wgICAgICAgICAvKiBJICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICk7CiAKIApAQCAtNjUsNyArNjUsNiBAQCBzdGF0aWMgT1BV
U19JTkxJTkUgb3B1c19pbnQgc2lsa19zZXR1cF9MQlJSKAogb3B1c19pbnQgc2lsa19jb250cm9s
X2VuY29kZXIoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRlX0Z4eCAgICAgICAgICAqcHNFbmMsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBQb2ludGVyIHRvIFNpbGsgZW5j
b2RlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICAgICBzaWxrX0VuY0NvbnRyb2xTdHJ1Y3QgICAgICAgICAgICplbmNDb250cm9sLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvbnRyb2wgc3RydWN0dXJlICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgVGFyZ2V0UmF0ZV9icHMsICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgVGFyZ2V0IG1heCBiaXRyYXRlIChicHMpICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgICAgICBhbGxvd19id19zd2l0Y2gsICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBGbGFnIHRvIGFsbG93IHN3aXRjaGluZyBhdWRpbyBiYW5kd2lkdGgg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgICAgIGNoYW5uZWxOYiwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIENoYW5uZWwgbnVtYmVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgZm9yY2VfZnNfa0h6CkBAIC0xMjUsNyArMTI0LDcgQEAgb3B1c19pbnQgc2ls
a19jb250cm9sX2VuY29kZXIoCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqLwogICAgIC8qIFNldCBMQlJSIHVzYWdlICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KiovCi0gICAgcmV0ICs9IHNpbGtfc2V0dXBfTEJSUiggJnBzRW5jLT5zQ21uLCBUYXJnZXRSYXRl
X2JwcyApOworICAgIHJldCArPSBzaWxrX3NldHVwX0xCUlIoICZwc0VuYy0+c0NtbiwgZW5jQ29u
dHJvbCApOwogCiAgICAgcHNFbmMtPnNDbW4uY29udHJvbGxlZF9zaW5jZV9sYXN0X3BheWxvYWQg
PSAxOwogCkBAIC0yNDQsNyArMjQzLDYgQEAgc3RhdGljIG9wdXNfaW50IHNpbGtfc2V0dXBfZnMo
CiAgICAgaWYoIHBzRW5jLT5zQ21uLmZzX2tIeiAhPSBmc19rSHogKSB7CiAgICAgICAgIC8qIHJl
c2V0IHBhcnQgb2YgdGhlIHN0YXRlICovCiAgICAgICAgIHNpbGtfbWVtc2V0KCAmcHNFbmMtPnNT
aGFwZSwgICAgICAgICAgICAgICAwLCBzaXplb2YoIHBzRW5jLT5zU2hhcGUgKSApOwotICAgICAg
ICBzaWxrX21lbXNldCggJnBzRW5jLT5zUHJlZmlsdCwgICAgICAgICAgICAgMCwgc2l6ZW9mKCBw
c0VuYy0+c1ByZWZpbHQgKSApOwogICAgICAgICBzaWxrX21lbXNldCggJnBzRW5jLT5zQ21uLnNO
U1EsICAgICAgICAgICAgMCwgc2l6ZW9mKCBwc0VuYy0+c0Ntbi5zTlNRICkgKTsKICAgICAgICAg
c2lsa19tZW1zZXQoIHBzRW5jLT5zQ21uLnByZXZfTkxTRnFfUTE1LCAgIDAsIHNpemVvZiggcHNF
bmMtPnNDbW4ucHJldl9OTFNGcV9RMTUgKSApOwogICAgICAgICBzaWxrX21lbXNldCggJnBzRW5j
LT5zQ21uLnNMUC5Jbl9MUF9TdGF0ZSwgMCwgc2l6ZW9mKCBwc0VuYy0+c0Ntbi5zTFAuSW5fTFBf
U3RhdGUgKSApOwpAQCAtMjU1LDcgKzI1Myw2IEBAIHN0YXRpYyBvcHVzX2ludCBzaWxrX3NldHVw
X2ZzKAogICAgICAgICAvKiBJbml0aWFsaXplIG5vbi16ZXJvIHBhcmFtZXRlcnMgKi8KICAgICAg
ICAgcHNFbmMtPnNDbW4ucHJldkxhZyAgICAgICAgICAgICAgICAgICAgID0gMTAwOwogICAgICAg
ICBwc0VuYy0+c0Ntbi5maXJzdF9mcmFtZV9hZnRlcl9yZXNldCAgICAgPSAxOwotICAgICAgICBw
c0VuYy0+c1ByZWZpbHQubGFnUHJldiAgICAgICAgICAgICAgICAgPSAxMDA7CiAgICAgICAgIHBz
RW5jLT5zU2hhcGUuTGFzdEdhaW5JbmRleCAgICAgICAgICAgICA9IDEwOwogICAgICAgICBwc0Vu
Yy0+c0Ntbi5zTlNRLmxhZ1ByZXYgICAgICAgICAgICAgICAgPSAxMDA7CiAgICAgICAgIHBzRW5j
LT5zQ21uLnNOU1EucHJldl9nYWluX1ExNiAgICAgICAgICA9IDY1NTM2OwpAQCAtMjkzLDEzICsy
OTAsMTAgQEAgc3RhdGljIG9wdXNfaW50IHNpbGtfc2V0dXBfZnMoCiAgICAgICAgICAgICBwc0Vu
Yy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCA9IHNpbGtfU01VTEJCKCBGSU5EX1BJVENIX0xQ
Q19XSU5fTVNfMl9TRiwgZnNfa0h6ICk7CiAgICAgICAgIH0KICAgICAgICAgaWYoIHBzRW5jLT5z
Q21uLmZzX2tIeiA9PSAxNiApIHsKLSAgICAgICAgICAgIHBzRW5jLT5zQ21uLm11X0xUUF9ROSA9
IFNJTEtfRklYX0NPTlNUKCBNVV9MVFBfUVVBTlRfV0IsIDkgKTsKICAgICAgICAgICAgIHBzRW5j
LT5zQ21uLnBpdGNoX2xhZ19sb3dfYml0c19pQ0RGID0gc2lsa191bmlmb3JtOF9pQ0RGOwogICAg
ICAgICB9IGVsc2UgaWYoIHBzRW5jLT5zQ21uLmZzX2tIeiA9PSAxMiApIHsKLSAgICAgICAgICAg
IHBzRW5jLT5zQ21uLm11X0xUUF9ROSA9IFNJTEtfRklYX0NPTlNUKCBNVV9MVFBfUVVBTlRfTUIs
IDkgKTsKICAgICAgICAgICAgIHBzRW5jLT5zQ21uLnBpdGNoX2xhZ19sb3dfYml0c19pQ0RGID0g
c2lsa191bmlmb3JtNl9pQ0RGOwogICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgcHNFbmMt
PnNDbW4ubXVfTFRQX1E5ID0gU0lMS19GSVhfQ09OU1QoIE1VX0xUUF9RVUFOVF9OQiwgOSApOwog
ICAgICAgICAgICAgcHNFbmMtPnNDbW4ucGl0Y2hfbGFnX2xvd19iaXRzX2lDREYgPSBzaWxrX3Vu
aWZvcm00X2lDREY7CiAgICAgICAgIH0KICAgICB9CkBAIC0zMTksNjAgKzMxMyw3NSBAQCBzdGF0
aWMgb3B1c19pbnQgc2lsa19zZXR1cF9jb21wbGV4aXR5KAogCiAgICAgLyogU2V0IGVuY29kaW5n
IGNvbXBsZXhpdHkgKi8KICAgICBzaWxrX2Fzc2VydCggQ29tcGxleGl0eSA+PSAwICYmIENvbXBs
ZXhpdHkgPD0gMTAgKTsKLSAgICBpZiggQ29tcGxleGl0eSA8IDIgKSB7CisgICAgaWYoIENvbXBs
ZXhpdHkgPCAxICkgewogICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkNvbXBsZXhpdHkg
ICAgICAgPSBTSUxLX1BFX01JTl9DT01QTEVYOwogICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1h
dGlvblRocmVzaG9sZF9RMTYgICAgPSBTSUxLX0ZJWF9DT05TVCggMC44LCAxNiApOwogICAgICAg
ICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyICAgICAgICAgPSA2OwotICAgICAgICBw
c0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSA4OworICAgICAgICBwc0Vu
Y0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAxMjsKICAgICAgICAgcHNFbmND
LT5sYV9zaGFwZSAgICAgICAgICAgICAgICAgICAgICAgID0gMyAqIHBzRW5jQy0+ZnNfa0h6Owog
ICAgICAgICBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gICAgICAgICAgPSAxOwogICAg
ICAgICBwc0VuY0MtPnVzZUludGVycG9sYXRlZE5MU0ZzICAgICAgICAgICAgPSAwOwotICAgICAg
ICBwc0VuY0MtPkxUUFF1YW50TG93Q29tcGxleGl0eSAgICAgICAgICAgPSAxOwogICAgICAgICBw
c0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMgICAgICAgICAgICAgPSAyOwogICAgICAgICBwc0Vu
Y0MtPndhcnBpbmdfUTE2ICAgICAgICAgICAgICAgICAgICAgPSAwOwotICAgIH0gZWxzZSBpZigg
Q29tcGxleGl0eSA8IDQgKSB7CisgICAgfSBlbHNlIGlmKCBDb21wbGV4aXR5IDwgMiApIHsKICAg
ICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25Db21wbGV4aXR5ICAgICAgID0gU0lMS19QRV9N
SURfQ09NUExFWDsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25UaHJlc2hvbGRfUTE2
ICAgID0gU0lMS19GSVhfQ09OU1QoIDAuNzYsIDE2ICk7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hF
c3RpbWF0aW9uTFBDT3JkZXIgICAgICAgICA9IDg7Ci0gICAgICAgIHBzRW5jQy0+c2hhcGluZ0xQ
Q09yZGVyICAgICAgICAgICAgICAgICA9IDEwOworICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENP
cmRlciAgICAgICAgICAgICAgICAgPSAxNDsKICAgICAgICAgcHNFbmNDLT5sYV9zaGFwZSAgICAg
ICAgICAgICAgICAgICAgICAgID0gNSAqIHBzRW5jQy0+ZnNfa0h6OwogICAgICAgICBwc0VuY0Mt
Pm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gICAgICAgICAgPSAxOwogICAgICAgICBwc0VuY0MtPnVz
ZUludGVycG9sYXRlZE5MU0ZzICAgICAgICAgICAgPSAwOwotICAgICAgICBwc0VuY0MtPkxUUFF1
YW50TG93Q29tcGxleGl0eSAgICAgICAgICAgPSAwOworICAgICAgICBwc0VuY0MtPk5MU0ZfTVNW
UV9TdXJ2aXZvcnMgICAgICAgICAgICAgPSAzOworICAgICAgICBwc0VuY0MtPndhcnBpbmdfUTE2
ICAgICAgICAgICAgICAgICAgICAgPSAwOworICAgIH0gZWxzZSBpZiggQ29tcGxleGl0eSA8IDMg
KSB7CisgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uQ29tcGxleGl0eSAgICAgICA9IFNJ
TEtfUEVfTUlOX0NPTVBMRVg7CisgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uVGhyZXNo
b2xkX1ExNiAgICA9IFNJTEtfRklYX0NPTlNUKCAwLjgsIDE2ICk7CisgICAgICAgIHBzRW5jQy0+
cGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIgICAgICAgICA9IDY7CisgICAgICAgIHBzRW5jQy0+c2hh
cGluZ0xQQ09yZGVyICAgICAgICAgICAgICAgICA9IDEyOworICAgICAgICBwc0VuY0MtPmxhX3No
YXBlICAgICAgICAgICAgICAgICAgICAgICAgPSAzICogcHNFbmNDLT5mc19rSHo7CisgICAgICAg
IHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbiAgICAgICAgICA9IDI7CisgICAgICAgIHBz
RW5jQy0+dXNlSW50ZXJwb2xhdGVkTkxTRnMgICAgICAgICAgICA9IDA7CisgICAgICAgIHBzRW5j
Qy0+TkxTRl9NU1ZRX1N1cnZpdm9ycyAgICAgICAgICAgICA9IDI7CisgICAgICAgIHBzRW5jQy0+
d2FycGluZ19RMTYgICAgICAgICAgICAgICAgICAgICA9IDA7CisgICAgfSBlbHNlIGlmKCBDb21w
bGV4aXR5IDwgNCApIHsKKyAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25Db21wbGV4aXR5
ICAgICAgID0gU0lMS19QRV9NSURfQ09NUExFWDsKKyAgICAgICAgcHNFbmNDLT5waXRjaEVzdGlt
YXRpb25UaHJlc2hvbGRfUTE2ICAgID0gU0lMS19GSVhfQ09OU1QoIDAuNzYsIDE2ICk7CisgICAg
ICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIgICAgICAgICA9IDg7CisgICAgICAg
IHBzRW5jQy0+c2hhcGluZ0xQQ09yZGVyICAgICAgICAgICAgICAgICA9IDE0OworICAgICAgICBw
c0VuY0MtPmxhX3NoYXBlICAgICAgICAgICAgICAgICAgICAgICAgPSA1ICogcHNFbmNDLT5mc19r
SHo7CisgICAgICAgIHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbiAgICAgICAgICA9IDI7
CisgICAgICAgIHBzRW5jQy0+dXNlSW50ZXJwb2xhdGVkTkxTRnMgICAgICAgICAgICA9IDA7CiAg
ICAgICAgIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9ycyAgICAgICAgICAgICA9IDQ7CiAgICAg
ICAgIHBzRW5jQy0+d2FycGluZ19RMTYgICAgICAgICAgICAgICAgICAgICA9IDA7CiAgICAgfSBl
bHNlIGlmKCBDb21wbGV4aXR5IDwgNiApIHsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRp
b25Db21wbGV4aXR5ICAgICAgID0gU0lMS19QRV9NSURfQ09NUExFWDsKICAgICAgICAgcHNFbmND
LT5waXRjaEVzdGltYXRpb25UaHJlc2hvbGRfUTE2ICAgID0gU0lMS19GSVhfQ09OU1QoIDAuNzQs
IDE2ICk7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIgICAgICAgICA9
IDEwOwotICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAx
MjsKKyAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIgICAgICAgICAgICAgICAgID0gMTY7
CiAgICAgICAgIHBzRW5jQy0+bGFfc2hhcGUgICAgICAgICAgICAgICAgICAgICAgICA9IDUgKiBw
c0VuY0MtPmZzX2tIejsKICAgICAgICAgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lzaW9uICAg
ICAgICAgID0gMjsKICAgICAgICAgcHNFbmNDLT51c2VJbnRlcnBvbGF0ZWROTFNGcyAgICAgICAg
ICAgID0gMTsKLSAgICAgICAgcHNFbmNDLT5MVFBRdWFudExvd0NvbXBsZXhpdHkgICAgICAgICAg
ID0gMDsKLSAgICAgICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vydml2b3JzICAgICAgICAgICAgID0g
ODsKKyAgICAgICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vydml2b3JzICAgICAgICAgICAgID0gNjsK
ICAgICAgICAgcHNFbmNDLT53YXJwaW5nX1ExNiAgICAgICAgICAgICAgICAgICAgID0gcHNFbmND
LT5mc19rSHogKiBTSUxLX0ZJWF9DT05TVCggV0FSUElOR19NVUxUSVBMSUVSLCAxNiApOwogICAg
IH0gZWxzZSBpZiggQ29tcGxleGl0eSA8IDggKSB7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3Rp
bWF0aW9uQ29tcGxleGl0eSAgICAgICA9IFNJTEtfUEVfTUlEX0NPTVBMRVg7CiAgICAgICAgIHBz
RW5jQy0+cGl0Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNiAgICA9IFNJTEtfRklYX0NPTlNUKCAw
LjcyLCAxNiApOwogICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyICAgICAg
ICAgPSAxMjsKLSAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIgICAgICAgICAgICAgICAg
ID0gMTQ7CisgICAgICAgIHBzRW5jQy0+c2hhcGluZ0xQQ09yZGVyICAgICAgICAgICAgICAgICA9
IDIwOwogICAgICAgICBwc0VuY0MtPmxhX3NoYXBlICAgICAgICAgICAgICAgICAgICAgICAgPSA1
ICogcHNFbmNDLT5mc19rSHo7CiAgICAgICAgIHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lv
biAgICAgICAgICA9IDM7CiAgICAgICAgIHBzRW5jQy0+dXNlSW50ZXJwb2xhdGVkTkxTRnMgICAg
ICAgICAgICA9IDE7Ci0gICAgICAgIHBzRW5jQy0+TFRQUXVhbnRMb3dDb21wbGV4aXR5ICAgICAg
ICAgICA9IDA7Ci0gICAgICAgIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9ycyAgICAgICAgICAg
ICA9IDE2OworICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMgICAgICAgICAgICAg
PSA4OwogICAgICAgICBwc0VuY0MtPndhcnBpbmdfUTE2ICAgICAgICAgICAgICAgICAgICAgPSBw
c0VuY0MtPmZzX2tIeiAqIFNJTEtfRklYX0NPTlNUKCBXQVJQSU5HX01VTFRJUExJRVIsIDE2ICk7
CiAgICAgfSBlbHNlIHsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25Db21wbGV4aXR5
ICAgICAgID0gU0lMS19QRV9NQVhfQ09NUExFWDsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGlt
YXRpb25UaHJlc2hvbGRfUTE2ICAgID0gU0lMS19GSVhfQ09OU1QoIDAuNywgMTYgKTsKICAgICAg
ICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25MUENPcmRlciAgICAgICAgID0gMTY7Ci0gICAgICAg
IHBzRW5jQy0+c2hhcGluZ0xQQ09yZGVyICAgICAgICAgICAgICAgICA9IDE2OworICAgICAgICBw
c0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAyNDsKICAgICAgICAgcHNF
bmNDLT5sYV9zaGFwZSAgICAgICAgICAgICAgICAgICAgICAgID0gNSAqIHBzRW5jQy0+ZnNfa0h6
OwogICAgICAgICBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gICAgICAgICAgPSBNQVhf
REVMX0RFQ19TVEFURVM7CiAgICAgICAgIHBzRW5jQy0+dXNlSW50ZXJwb2xhdGVkTkxTRnMgICAg
ICAgICAgICA9IDE7Ci0gICAgICAgIHBzRW5jQy0+TFRQUXVhbnRMb3dDb21wbGV4aXR5ICAgICAg
ICAgICA9IDA7Ci0gICAgICAgIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9ycyAgICAgICAgICAg
ICA9IDMyOworICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMgICAgICAgICAgICAg
PSAxNjsKICAgICAgICAgcHNFbmNDLT53YXJwaW5nX1ExNiAgICAgICAgICAgICAgICAgICAgID0g
cHNFbmNDLT5mc19rSHogKiBTSUxLX0ZJWF9DT05TVCggV0FSUElOR19NVUxUSVBMSUVSLCAxNiAp
OwogICAgIH0KIApAQCAtMzg3LDQwICszOTYsMjYgQEAgc3RhdGljIG9wdXNfaW50IHNpbGtfc2V0
dXBfY29tcGxleGl0eSgKICAgICBzaWxrX2Fzc2VydCggcHNFbmNDLT53YXJwaW5nX1ExNiAgICAg
ICAgICAgICA8PSAzMjc2NyAgICAgICAgICAgICAgICAgICAgKTsKICAgICBzaWxrX2Fzc2VydCgg
cHNFbmNDLT5sYV9zaGFwZSAgICAgICAgICAgICAgICA8PSBMQV9TSEFQRV9NQVggICAgICAgICAg
ICAgKTsKICAgICBzaWxrX2Fzc2VydCggcHNFbmNDLT5zaGFwZVdpbkxlbmd0aCAgICAgICAgICA8
PSBTSEFQRV9MUENfV0lOX01BWCAgICAgICAgKTsKLSAgICBzaWxrX2Fzc2VydCggcHNFbmNDLT5O
TFNGX01TVlFfU3Vydml2b3JzICAgICA8PSBOTFNGX1ZRX01BWF9TVVJWSVZPUlMgICAgKTsKIAog
ICAgIHJldHVybiByZXQ7CiB9CiAKIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludCBzaWxrX3Nl
dHVwX0xCUlIoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRlICAgICAgICAgICpwc0VuY0MsICAgICAg
ICAgICAgLyogSS9PICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQz
MiAgICAgICAgICAgIFRhcmdldFJhdGVfYnBzICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgY29uc3Qgc2lsa19FbmNDb250cm9sU3RydWN0ICplbmNDb250cm9sICAgICAg
ICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7CiAgICAgb3B1c19pbnQgICBM
QlJSX2luX3ByZXZpb3VzX3BhY2tldCwgcmV0ID0gU0lMS19OT19FUlJPUjsKLSAgICBvcHVzX2lu
dDMyIExCUlJfcmF0ZV90aHJlc19icHM7CiAKICAgICBMQlJSX2luX3ByZXZpb3VzX3BhY2tldCA9
IHBzRW5jQy0+TEJSUl9lbmFibGVkOwotICAgIHBzRW5jQy0+TEJSUl9lbmFibGVkID0gMDsKLSAg
ICBpZiggcHNFbmNDLT51c2VJbkJhbmRGRUMgJiYgcHNFbmNDLT5QYWNrZXRMb3NzX3BlcmMgPiAw
ICkgewotICAgICAgICBpZiggcHNFbmNDLT5mc19rSHogPT0gOCApIHsKLSAgICAgICAgICAgIExC
UlJfcmF0ZV90aHJlc19icHMgPSBMQlJSX05CX01JTl9SQVRFX0JQUzsKLSAgICAgICAgfSBlbHNl
IGlmKCBwc0VuY0MtPmZzX2tIeiA9PSAxMiApIHsKLSAgICAgICAgICAgIExCUlJfcmF0ZV90aHJl
c19icHMgPSBMQlJSX01CX01JTl9SQVRFX0JQUzsKKyAgICBwc0VuY0MtPkxCUlJfZW5hYmxlZCA9
IGVuY0NvbnRyb2wtPkxCUlJfY29kZWQ7CisgICAgaWYoIHBzRW5jQy0+TEJSUl9lbmFibGVkICkg
eworICAgICAgICAvKiBTZXQgZ2FpbiBpbmNyZWFzZSBmb3IgY29kaW5nIExCUlIgZXhjaXRhdGlv
biAqLworICAgICAgICBpZiggTEJSUl9pbl9wcmV2aW91c19wYWNrZXQgPT0gMCApIHsKKyAgICAg
ICAgICAgIC8qIFByZXZpb3VzIHBhY2tldCBkaWQgbm90IGhhdmUgTEJSUiwgYW5kIHdhcyB0aGVy
ZWZvcmUgY29kZWQgYXQgYSBoaWdoZXIgYml0cmF0ZSAqLworICAgICAgICAgICAgcHNFbmNDLT5M
QlJSX0dhaW5JbmNyZWFzZXMgPSA3OwogICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgTEJS
Ul9yYXRlX3RocmVzX2JwcyA9IExCUlJfV0JfTUlOX1JBVEVfQlBTOwotICAgICAgICB9Ci0gICAg
ICAgIExCUlJfcmF0ZV90aHJlc19icHMgPSBzaWxrX1NNVUxXQiggc2lsa19NVUwoIExCUlJfcmF0
ZV90aHJlc19icHMsIDEyNSAtIHNpbGtfbWluKCBwc0VuY0MtPlBhY2tldExvc3NfcGVyYywgMjUg
KSApLCBTSUxLX0ZJWF9DT05TVCggMC4wMSwgMTYgKSApOwotCi0gICAgICAgIGlmKCBUYXJnZXRS
YXRlX2JwcyA+IExCUlJfcmF0ZV90aHJlc19icHMgKSB7Ci0gICAgICAgICAgICAvKiBTZXQgZ2Fp
biBpbmNyZWFzZSBmb3IgY29kaW5nIExCUlIgZXhjaXRhdGlvbiAqLwotICAgICAgICAgICAgaWYo
IExCUlJfaW5fcHJldmlvdXNfcGFja2V0ID09IDAgKSB7Ci0gICAgICAgICAgICAgICAgLyogUHJl
dmlvdXMgcGFja2V0IGRpZCBub3QgaGF2ZSBMQlJSLCBhbmQgd2FzIHRoZXJlZm9yZSBjb2RlZCBh
dCBhIGhpZ2hlciBiaXRyYXRlICovCi0gICAgICAgICAgICAgICAgcHNFbmNDLT5MQlJSX0dhaW5J
bmNyZWFzZXMgPSA3OwotICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBwc0Vu
Y0MtPkxCUlJfR2FpbkluY3JlYXNlcyA9IHNpbGtfbWF4X2ludCggNyAtIHNpbGtfU01VTFdCKCAo
b3B1c19pbnQzMilwc0VuY0MtPlBhY2tldExvc3NfcGVyYywgU0lMS19GSVhfQ09OU1QoIDAuNCwg
MTYgKSApLCAyICk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBwc0VuY0MtPkxCUlJfZW5h
YmxlZCA9IDE7CisgICAgICAgICAgICBwc0VuY0MtPkxCUlJfR2FpbkluY3JlYXNlcyA9IHNpbGtf
bWF4X2ludCggNyAtIHNpbGtfU01VTFdCKCAob3B1c19pbnQzMilwc0VuY0MtPlBhY2tldExvc3Nf
cGVyYywgU0lMS19GSVhfQ09OU1QoIDAuNCwgMTYgKSApLCAyICk7CiAgICAgICAgIH0KICAgICB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9kZWJ1Zy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlYnVnLmgKaW5kZXggZWZiNmQzZTk5
ZTdmODMxNzVmZTAzNDJkZTAwNGM4NjdjMDhhZjhkYi4uNmY2OGMxY2EwZjAyMjU3NzMzMDM4ZTBm
OTFjNDE4YzMxOWE5ODZiMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlYnVnLmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlYnVn
LmgKQEAgLTM5LDIzICszOSwxMCBAQCBleHRlcm4gIkMiCiAKIHVuc2lnbmVkIGxvbmcgR2V0SGln
aFJlc29sdXRpb25UaW1lKHZvaWQpOyAvKiBPICB0aW1lIGluIHVzZWMqLwogCi0vKiBtYWtlIFNJ
TEtfREVCVUcgZGVwZW5kZW50IG9uIGNvbXBpbGVyJ3MgX0RFQlVHICovCi0jaWYgZGVmaW5lZCBf
V0lOMzIKLSAgICAjaWZkZWYgX0RFQlVHCi0gICAgICAgICNkZWZpbmUgU0lMS19ERUJVRyAgMQot
ICAgICNlbHNlCi0gICAgICAgICNkZWZpbmUgU0lMS19ERUJVRyAgMAotICAgICNlbmRpZgotCi0g
ICAgLyogb3ZlcnJ1bGUgdGhlIGFib3ZlICovCi0gICAgI2lmIDAKLSAgICAvKiAgI2RlZmluZSBO
T19BU1NFUlRTKi8KLSAgICAjdW5kZWYgIFNJTEtfREVCVUcKLSAgICAjZGVmaW5lIFNJTEtfREVC
VUcgIDEKLSAgICAjZW5kaWYKLSNlbHNlCi0gICAgI2RlZmluZSBTSUxLX0RFQlVHICAwCi0jZW5k
aWYKKy8qIFNldCB0byAxIHRvIGVuYWJsZSBERUJVR19TVE9SRV9EQVRBKCkgbWFjcm9zIGZvciBk
dW1waW5nCisgKiBpbnRlcm1lZGlhdGUgc2lnbmFscyBmcm9tIHRoZSBjb2RlYy4KKyAqLworI2Rl
ZmluZSBTSUxLX0RFQlVHIDAKIAogLyogRmxhZyBmb3IgdXNpbmcgdGltZXJzICovCiAjZGVmaW5l
IFNJTEtfVElDX1RPQyAgICAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX2NvcmUuYyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9k
ZWNvZGVfY29yZS5jCmluZGV4IGU1NjljMGU3MmIzZTE3MTgyNmQ3MzBhNGJlNjQ4MzZmYjBlYzBk
OWEuLmZkNGU4NTdhZmE4YWNjYzZkN2ZhZDIwM2JiOTYwMTg4OWFkMDFkOTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9kZWNvZGVfY29yZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWNvZGVfY29yZS5jCkBAIC0yMjUsOCArMjI1
LDYgQEAgdm9pZCBzaWxrX2RlY29kZV9jb3JlKAogICAgICAgICAgICAgcHhxWyBpIF0gPSAob3B1
c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCggc2lsa19TTVVMV1coIHNMUENf
UTE0WyBNQVhfTFBDX09SREVSICsgaSBdLCBHYWluX1ExMCApLCA4ICkgKTsKICAgICAgICAgfQog
Ci0gICAgICAgIC8qIERFQlVHX1NUT1JFX0RBVEEoIGRlYy5wY20sIHB4cSwgcHNEZWMtPnN1YmZy
X2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQxNiApICkgKi8KLQogICAgICAgICAvKiBVcGRhdGUg
TFBDIGZpbHRlciBzdGF0ZSAqLwogICAgICAgICBzaWxrX21lbWNweSggc0xQQ19RMTQsICZzTFBD
X1ExNFsgcHNEZWMtPnN1YmZyX2xlbmd0aCBdLCBNQVhfTFBDX09SREVSICogc2l6ZW9mKCBvcHVz
X2ludDMyICkgKTsKICAgICAgICAgcGV4Y19RMTQgKz0gcHNEZWMtPnN1YmZyX2xlbmd0aDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9kZWNvZGVfZnJhbWUuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWNvZGVfZnJhbWUuYwppbmRleCBh
NjA1ZDk1YWM2YWIxMGE3YWNlZjdhNWZhNTdlMzNlMDQwYmIwZjg2Li5kZmE3M2M0YTI5NjcwNjM0
YWViNzAwNjEyNTJhZGE3MTM2ZWMyZGMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX2ZyYW1lLmMK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2RlY29kZV9mcmFtZS5jCkBAIC05Nyw2ICs5Nyw3IEBAIG9wdXNfaW50IHNpbGtf
ZGVjb2RlX2ZyYW1lKAogICAgICAgICBwc0RlYy0+Zmlyc3RfZnJhbWVfYWZ0ZXJfcmVzZXQgPSAw
OwogICAgIH0gZWxzZSB7CiAgICAgICAgIC8qIEhhbmRsZSBwYWNrZXQgbG9zcyBieSBleHRyYXBv
bGF0aW9uICovCisgICAgICAgIHBzRGVjLT5pbmRpY2VzLnNpZ25hbFR5cGUgPSBwc0RlYy0+cHJl
dlNpZ25hbFR5cGU7CiAgICAgICAgIHNpbGtfUExDKCBwc0RlYywgcHNEZWNDdHJsLCBwT3V0LCAx
LCBhcmNoICk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX3BhcmFtZXRlcnMuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9kZWNvZGVfcGFyYW1ldGVycy5jCmluZGV4IGUzNDViMWRjZWZiOTQ2MDZiODljYTZhMWJh
MDcwMDBiNGVmYjQ0MmYuLmE1NmE0MDk4NTg3NGY1NzliM2Q0MDkyMWY1NmQwY2U0MDFjZDQ4MWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9kZWNvZGVfcGFyYW1ldGVycy5jCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWNvZGVfcGFy
YW1ldGVycy5jCkBAIC01Miw3ICs1Miw3IEBAIHZvaWQgc2lsa19kZWNvZGVfcGFyYW1ldGVycygK
ICAgICBzaWxrX05MU0ZfZGVjb2RlKCBwTkxTRl9RMTUsIHBzRGVjLT5pbmRpY2VzLk5MU0ZJbmRp
Y2VzLCBwc0RlYy0+cHNOTFNGX0NCICk7CiAKICAgICAvKiBDb252ZXJ0IE5MU0YgcGFyYW1ldGVy
cyB0byBBUiBwcmVkaWN0aW9uIGZpbHRlciBjb2VmZmljaWVudHMgKi8KLSAgICBzaWxrX05MU0Yy
QSggcHNEZWNDdHJsLT5QcmVkQ29lZl9RMTJbIDEgXSwgcE5MU0ZfUTE1LCBwc0RlYy0+TFBDX29y
ZGVyICk7CisgICAgc2lsa19OTFNGMkEoIHBzRGVjQ3RybC0+UHJlZENvZWZfUTEyWyAxIF0sIHBO
TFNGX1ExNSwgcHNEZWMtPkxQQ19vcmRlciwgcHNEZWMtPmFyY2ggKTsKIAogICAgIC8qIElmIGp1
c3QgcmVzZXQsIGUuZy4sIGJlY2F1c2UgaW50ZXJuYWwgRnMgY2hhbmdlZCwgZG8gbm90IGFsbG93
IGludGVycG9sYXRpb24gKi8KICAgICAvKiBpbXByb3ZlcyB0aGUgY2FzZSBvZiBwYWNrZXQgbG9z
cyBpbiB0aGUgZmlyc3QgZnJhbWUgYWZ0ZXIgYSBzd2l0Y2ggICAgICAgICAgICovCkBAIC02OSw3
ICs2OSw3IEBAIHZvaWQgc2lsa19kZWNvZGVfcGFyYW1ldGVycygKICAgICAgICAgfQogCiAgICAg
ICAgIC8qIENvbnZlcnQgTkxTRiBwYXJhbWV0ZXJzIHRvIEFSIHByZWRpY3Rpb24gZmlsdGVyIGNv
ZWZmaWNpZW50cyAqLwotICAgICAgICBzaWxrX05MU0YyQSggcHNEZWNDdHJsLT5QcmVkQ29lZl9R
MTJbIDAgXSwgcE5MU0YwX1ExNSwgcHNEZWMtPkxQQ19vcmRlciApOworICAgICAgICBzaWxrX05M
U0YyQSggcHNEZWNDdHJsLT5QcmVkQ29lZl9RMTJbIDAgXSwgcE5MU0YwX1ExNSwgcHNEZWMtPkxQ
Q19vcmRlciwgcHNEZWMtPmFyY2ggKTsKICAgICB9IGVsc2UgewogICAgICAgICAvKiBDb3B5IExQ
QyBjb2VmZmljaWVudHMgZm9yIGZpcnN0IGhhbGYgZnJvbSBzZWNvbmQgaGFsZiAqLwogICAgICAg
ICBzaWxrX21lbWNweSggcHNEZWNDdHJsLT5QcmVkQ29lZl9RMTJbIDAgXSwgcHNEZWNDdHJsLT5Q
cmVkQ29lZl9RMTJbIDEgXSwgcHNEZWMtPkxQQ19vcmRlciAqIHNpemVvZiggb3B1c19pbnQxNiAp
ICk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvZGVmaW5lLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVmaW5lLmgKaW5kZXggMTljOWIw
MGUyNTllNzcxNmJjYjAyMzU0ZTM5MTRiMTM5NjAyZjM1My4uMjJmZDcyMGI5NzZhZjIzM2VjMmRh
ZmM4M2Q2ZDk1YmUyNzkzZWQ2YiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlZmluZS5oCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9k
ZWZpbmUuaApAQCAtNTYsNiArNTYsMTIgQEAgZXh0ZXJuICJDIgogLyogRFRYIHNldHRpbmdzICov
CiAjZGVmaW5lIE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCAgICAgICAgICAgICAxMCAgICAg
IC8qIGVxIDIwMCBtcyAqLwogI2RlZmluZSBNQVhfQ09OU0VDVVRJVkVfRFRYICAgICAgICAgICAg
ICAgICAgICAgMjAgICAgICAvKiBlcSA0MDAgbXMgKi8KKyNkZWZpbmUgRFRYX0FDVElWSVRZX1RI
UkVTSE9MRCAgICAgICAgICAgICAgICAgIDAuMWYKKworLyogVkFEIGRlY2lzaW9uICovCisjZGVm
aW5lIFZBRF9OT19ERUNJU0lPTiAgICAgICAgICAgICAgICAgICAgICAgICAtMQorI2RlZmluZSBW
QURfTk9fQUNUSVZJVFkgICAgICAgICAgICAgICAgICAgICAgICAgMAorI2RlZmluZSBWQURfQUNU
SVZJVFkgICAgICAgICAgICAgICAgICAgICAgICAgICAgMQogCiAvKiBNYXhpbXVtIHNhbXBsaW5n
IGZyZXF1ZW5jeSAqLwogI2RlZmluZSBNQVhfRlNfS0haICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgMTYKQEAgLTE0Nyw3ICsxNTMsNyBAQCBleHRlcm4gIkMiCiAjZGVmaW5lIFVTRV9IQVJN
X1NIQVBJTkcgICAgICAgICAgICAgICAgICAgICAgICAxCiAKIC8qIE1heCBMUEMgb3JkZXIgb2Yg
bm9pc2Ugc2hhcGluZyBmaWx0ZXJzICovCi0jZGVmaW5lIE1BWF9TSEFQRV9MUENfT1JERVIgICAg
ICAgICAgICAgICAgICAgICAxNgorI2RlZmluZSBNQVhfU0hBUEVfTFBDX09SREVSICAgICAgICAg
ICAgICAgICAgICAgMjQKIAogI2RlZmluZSBIQVJNX1NIQVBFX0ZJUl9UQVBTICAgICAgICAgICAg
ICAgICAgICAgMwogCkBAIC0xNTcsOCArMTYzLDcgQEAgZXh0ZXJuICJDIgogI2RlZmluZSBMVFBf
QlVGX0xFTkdUSCAgICAgICAgICAgICAgICAgICAgICAgICAgNTEyCiAjZGVmaW5lIExUUF9NQVNL
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoIExUUF9CVUZfTEVOR1RIIC0gMSApCiAK
LSNkZWZpbmUgREVDSVNJT05fREVMQVkgICAgICAgICAgICAgICAgICAgICAgICAgIDMyCi0jZGVm
aW5lIERFQ0lTSU9OX0RFTEFZX01BU0sgICAgICAgICAgICAgICAgICAgICAoIERFQ0lTSU9OX0RF
TEFZIC0gMSApCisjZGVmaW5lIERFQ0lTSU9OX0RFTEFZICAgICAgICAgICAgICAgICAgICAgICAg
ICA0MAogCiAvKiBOdW1iZXIgb2Ygc3ViZnJhbWVzIGZvciBleGNpdGF0aW9uIGVudHJvcHkgY29k
aW5nICovCiAjZGVmaW5lIFNIRUxMX0NPREVDX0ZSQU1FX0xFTkdUSCAgICAgICAgICAgICAgICAx
NgpAQCAtMTczLDExICsxNzgsNyBAQCBleHRlcm4gIkMiCiAKICNkZWZpbmUgTUFYX01BVFJJWF9T
SVpFICAgICAgICAgICAgICAgICAgICAgICAgIE1BWF9MUENfT1JERVIgLyogTWF4IG9mIExQQyBP
cmRlciBhbmQgTFRQIG9yZGVyICovCiAKLSNpZiggTUFYX0xQQ19PUkRFUiA+IERFQ0lTSU9OX0RF
TEFZICkKICMgZGVmaW5lIE5TUV9MUENfQlVGX0xFTkdUSCAgICAgICAgICAgICAgICAgICAgIE1B
WF9MUENfT1JERVIKLSNlbHNlCi0jIGRlZmluZSBOU1FfTFBDX0JVRl9MRU5HVEggICAgICAgICAg
ICAgICAgICAgICBERUNJU0lPTl9ERUxBWQotI2VuZGlmCiAKIC8qKioqKioqKioqKioqKioqKioq
KioqKioqKiovCiAvKiBWb2ljZSBhY3Rpdml0eSBkZXRlY3RvciAqLwpAQCAtMjA1LDcgKzIwNiw2
IEBAIGV4dGVybiAiQyIKIC8qKioqKioqKioqKioqKioqKiovCiAjZGVmaW5lIE5MU0ZfV19RICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyCiAjZGVmaW5lIE5MU0ZfVlFfTUFYX1ZFQ1RP
UlMgICAgICAgICAgICAgICAgICAgICAzMgotI2RlZmluZSBOTFNGX1ZRX01BWF9TVVJWSVZPUlMg
ICAgICAgICAgICAgICAgICAgMzIKICNkZWZpbmUgTkxTRl9RVUFOVF9NQVhfQU1QTElUVURFICAg
ICAgICAgICAgICAgIDQKICNkZWZpbmUgTkxTRl9RVUFOVF9NQVhfQU1QTElUVURFX0VYVCAgICAg
ICAgICAgIDEwCiAjZGVmaW5lIE5MU0ZfUVVBTlRfTEVWRUxfQURKICAgICAgICAgICAgICAgICAg
ICAwLjEKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9lbmNfQVBJLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZW5jX0FQSS5jCmluZGV4IGY4
MDYwMjg2ZGJhZmE5YTFmYTc4MGY0ZWI3NDQ2YWRkZGYyZWQwOGUuLjBhNjJhM2MxZDcyYWZkMGE2
MjEyOGU0MmRjYWE4MDNhZDBmNDQzMTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9lbmNfQVBJLmMKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2VuY19BUEkuYwpAQCAtMTQ0LDcgKzE0NCw4IEBAIG9wdXNfaW50IHNpbGtfRW5jb2RlKCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zIGVycm9yIGNv
CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBuU2FtcGxlc0luLCAgICAgICAg
IC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMgaW4gaW5wdXQgdmVjdG9yICAgICAgICAgICAgICAg
Ki8KICAgICBlY19lbmMgICAgICAgICAgICAgICAgICAgICAgICAgICpwc1JhbmdlRW5jLCAgICAg
ICAgLyogSS9PICBDb21wcmVzc29yIGRhdGEgc3RydWN0dXJlICAgICAgICAgICAgICAgICAgICAg
ICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgKm5CeXRlc091dCwgICAg
ICAgICAvKiBJL08gIE51bWJlciBvZiBieXRlcyBpbiBwYXlsb2FkIChpbnB1dDogTWF4IGJ5dGVz
KSAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBwcmVmaWxsRmxhZyAg
ICAgICAgIC8qIEkgICAgRmxhZyB0byBpbmRpY2F0ZSBwcmVmaWxsaW5nIGJ1ZmZlcnMgbm8gY29k
aW5nICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIHByZWZpbGxGbGFn
LCAgICAgICAgLyogSSAgICBGbGFnIHRvIGluZGljYXRlIHByZWZpbGxpbmcgYnVmZmVycyBubyBj
b2RpbmcgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgYWN0aXZpdHkg
ICAgICAgICAgICAvKiBJICAgIERlY2lzaW9uIG9mIE9wdXMgdm9pY2UgYWN0aXZpdHkgZGV0ZWN0
b3IgICAgICAgICovCiApCiB7CiAgICAgb3B1c19pbnQgICBuLCBpLCBuQml0cywgZmxhZ3MsIHRt
cF9wYXlsb2FkU2l6ZV9tcyA9IDAsIHRtcF9jb21wbGV4aXR5ID0gMCwgcmV0ID0gMDsKQEAgLTIz
MywxMSArMjM0LDEwIEBAIG9wdXNfaW50IHNpbGtfRW5jb2RlKCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zIGVycm9yIGNvCiAgICAgICAgIH0KICAgICB9
CiAKLSAgICBUYXJnZXRSYXRlX2JwcyA9IHNpbGtfUlNISUZUMzIoIGVuY0NvbnRyb2wtPmJpdFJh
dGUsIGVuY0NvbnRyb2wtPm5DaGFubmVsc0ludGVybmFsIC0gMSApOwogICAgIGZvciggbiA9IDA7
IG4gPCBlbmNDb250cm9sLT5uQ2hhbm5lbHNJbnRlcm5hbDsgbisrICkgewogICAgICAgICAvKiBG
b3JjZSB0aGUgc2lkZSBjaGFubmVsIHRvIHRoZSBzYW1lIHJhdGUgYXMgdGhlIG1pZCAqLwogICAg
ICAgICBvcHVzX2ludCBmb3JjZV9mc19rSHogPSAobj09MSkgPyBwc0VuYy0+c3RhdGVfRnh4WzBd
LnNDbW4uZnNfa0h6IDogMDsKLSAgICAgICAgaWYoICggcmV0ID0gc2lsa19jb250cm9sX2VuY29k
ZXIoICZwc0VuYy0+c3RhdGVfRnh4WyBuIF0sIGVuY0NvbnRyb2wsIFRhcmdldFJhdGVfYnBzLCBw
c0VuYy0+YWxsb3dCYW5kd2lkdGhTd2l0Y2gsIG4sIGZvcmNlX2ZzX2tIeiApICkgIT0gMCApIHsK
KyAgICAgICAgaWYoICggcmV0ID0gc2lsa19jb250cm9sX2VuY29kZXIoICZwc0VuYy0+c3RhdGVf
Rnh4WyBuIF0sIGVuY0NvbnRyb2wsIHBzRW5jLT5hbGxvd0JhbmR3aWR0aFN3aXRjaCwgbiwgZm9y
Y2VfZnNfa0h6ICkgKSAhPSAwICkgewogICAgICAgICAgICAgc2lsa19hc3NlcnQoIDAgKTsKICAg
ICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7CiAgICAgICAgICAgICByZXR1cm4gcmV0OwpAQCAtNDE2
LDcgKzQxNiw2IEBAIG9wdXNfaW50IHNpbGtfRW5jb2RlKCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zIGVycm9yIGNvCiAgICAgICAgICAgICAgICAgICAg
IC8qIFJlc2V0IHNpZGUgY2hhbm5lbCBlbmNvZGVyIG1lbW9yeSBmb3IgZmlyc3QgZnJhbWUgd2l0
aCBzaWRlIGNvZGluZyAqLwogICAgICAgICAgICAgICAgICAgICBpZiggcHNFbmMtPnByZXZfZGVj
b2RlX29ubHlfbWlkZGxlID09IDEgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBzaWxrX21l
bXNldCggJnBzRW5jLT5zdGF0ZV9GeHhbIDEgXS5zU2hhcGUsICAgICAgICAgICAgICAgMCwgc2l6
ZW9mKCBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc1NoYXBlICkgKTsKLSAgICAgICAgICAgICAgICAg
ICAgICAgIHNpbGtfbWVtc2V0KCAmcHNFbmMtPnN0YXRlX0Z4eFsgMSBdLnNQcmVmaWx0LCAgICAg
ICAgICAgICAwLCBzaXplb2YoIHBzRW5jLT5zdGF0ZV9GeHhbIDEgXS5zUHJlZmlsdCApICk7CiAg
ICAgICAgICAgICAgICAgICAgICAgICBzaWxrX21lbXNldCggJnBzRW5jLT5zdGF0ZV9GeHhbIDEg
XS5zQ21uLnNOU1EsICAgICAgICAgICAgMCwgc2l6ZW9mKCBwc0VuYy0+c3RhdGVfRnh4WyAxIF0u
c0Ntbi5zTlNRICkgKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHNpbGtfbWVtc2V0KCBwc0Vu
Yy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5wcmV2X05MU0ZxX1ExNSwgICAwLCBzaXplb2YoIHBzRW5j
LT5zdGF0ZV9GeHhbIDEgXS5zQ21uLnByZXZfTkxTRnFfUTE1ICkgKTsKICAgICAgICAgICAgICAg
ICAgICAgICAgIHNpbGtfbWVtc2V0KCAmcHNFbmMtPnN0YXRlX0Z4eFsgMSBdLnNDbW4uc0xQLklu
X0xQX1N0YXRlLCAwLCBzaXplb2YoIHBzRW5jLT5zdGF0ZV9GeHhbIDEgXS5zQ21uLnNMUC5Jbl9M
UF9TdGF0ZSApICk7CkBAIC00MjcsNyArNDI2LDcgQEAgb3B1c19pbnQgc2lsa19FbmNvZGUoICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJldHVybnMgZXJyb3IgY28K
ICAgICAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zdGF0ZV9GeHhbIDEgXS5zQ21uLnNOU1Eu
cHJldl9nYWluX1ExNiAgICAgID0gNjU1MzY7CiAgICAgICAgICAgICAgICAgICAgICAgICBwc0Vu
Yy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5maXJzdF9mcmFtZV9hZnRlcl9yZXNldCA9IDE7CiAgICAg
ICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgc2lsa19lbmNvZGVfZG9fVkFE
X0Z4eCggJnBzRW5jLT5zdGF0ZV9GeHhbIDEgXSApOworICAgICAgICAgICAgICAgICAgICBzaWxr
X2VuY29kZV9kb19WQURfRnh4KCAmcHNFbmMtPnN0YXRlX0Z4eFsgMSBdLCBhY3Rpdml0eSApOwog
ICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zdGF0
ZV9GeHhbIDEgXS5zQ21uLlZBRF9mbGFnc1sgcHNFbmMtPnN0YXRlX0Z4eFsgMCBdLnNDbW4ubkZy
YW1lc0VuY29kZWQgXSA9IDA7CiAgICAgICAgICAgICAgICAgfQpAQCAtNDQyLDcgKzQ0MSw3IEBA
IG9wdXNfaW50IHNpbGtfRW5jb2RlKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogTyAgICBSZXR1cm5zIGVycm9yIGNvCiAgICAgICAgICAgICAgICAgc2lsa19tZW1jcHkoIHBz
RW5jLT5zdGF0ZV9GeHhbIDAgXS5zQ21uLmlucHV0QnVmLCBwc0VuYy0+c1N0ZXJlby5zTWlkLCAy
ICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKICAgICAgICAgICAgICAgICBzaWxrX21lbWNweSgg
cHNFbmMtPnNTdGVyZW8uc01pZCwgJnBzRW5jLT5zdGF0ZV9GeHhbIDAgXS5zQ21uLmlucHV0QnVm
WyBwc0VuYy0+c3RhdGVfRnh4WyAwIF0uc0Ntbi5mcmFtZV9sZW5ndGggXSwgMiAqIHNpemVvZigg
b3B1c19pbnQxNiApICk7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBzaWxrX2VuY29kZV9k
b19WQURfRnh4KCAmcHNFbmMtPnN0YXRlX0Z4eFsgMCBdICk7CisgICAgICAgICAgICBzaWxrX2Vu
Y29kZV9kb19WQURfRnh4KCAmcHNFbmMtPnN0YXRlX0Z4eFsgMCBdLCBhY3Rpdml0eSApOwogCiAg
ICAgICAgICAgICAvKiBFbmNvZGUgKi8KICAgICAgICAgICAgIGZvciggbiA9IDA7IG4gPCBlbmND
b250cm9sLT5uQ2hhbm5lbHNJbnRlcm5hbDsgbisrICkgewpAQCAtNTU3LDYgKzU1NiwxMCBAQCBv
cHVzX2ludCBzaWxrX0VuY29kZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IE8gICAgUmV0dXJucyBlcnJvciBjbwogICAgICAgICB9CiAgICAgfQogCisgICAgZW5jQ29udHJv
bC0+c2lnbmFsVHlwZSA9IHBzRW5jLT5zdGF0ZV9GeHhbMF0uc0Ntbi5pbmRpY2VzLnNpZ25hbFR5
cGU7CisgICAgZW5jQ29udHJvbC0+b2Zmc2V0ID0gc2lsa19RdWFudGl6YXRpb25fT2Zmc2V0c19R
MTAKKyAgICAgICAgICAgICAgICAgICAgICAgICBbIHBzRW5jLT5zdGF0ZV9GeHhbMF0uc0Ntbi5p
bmRpY2VzLnNpZ25hbFR5cGUgPj4gMSBdCisgICAgICAgICAgICAgICAgICAgICAgICAgWyBwc0Vu
Yy0+c3RhdGVfRnh4WzBdLnNDbW4uaW5kaWNlcy5xdWFudE9mZnNldFR5cGUgXTsKICAgICBSRVNU
T1JFX1NUQUNLOwogICAgIHJldHVybiByZXQ7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvYXJt
L3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX2FybS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2FybS93YXJwZWRf
YXV0b2NvcnJlbGF0aW9uX0ZJWF9hcm0uaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xOTkyZTQzMjg4NTE5ZjhhZGI1
ZmY0ZDNjMzgyNDgwNGNkZmE0NGM1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2FybS93
YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9hcm0uaApAQCAtMCwwICsxLDY4IEBACisvKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioKK0NvcHlyaWdodCAoYykgMjAxNyBHb29nbGUgSW5jLgorUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCitk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYg
b3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBt
YXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2ZWQgZnJvbSB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVybWlzc2lvbi4K
K1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UK
K0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2lmbmRlZiBTSUxL
X1dBUlBFRF9BVVRPQ09SUkVMQVRJT05fRklYX0FSTV9ICisjIGRlZmluZSBTSUxLX1dBUlBFRF9B
VVRPQ09SUkVMQVRJT05fRklYX0FSTV9ICisKKyMgaW5jbHVkZSAiY2VsdC9hcm0vYXJtY3B1Lmgi
CisKKyMgaWYgZGVmaW5lZChGSVhFRF9QT0lOVCkKKworIyAgaWYgZGVmaW5lZChPUFVTX0FSTV9N
QVlfSEFWRV9ORU9OX0lOVFIpCit2b2lkIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhf
bmVvbigKKyAgICAgICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICpjb3JyLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJlc3VsdCBbb3JkZXIgKyAxXSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgICAgICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgKnNjYWxlLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgU2NhbGluZyBvZiB0aGUgY29ycmVsYXRpb24gdmVj
dG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29u
c3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAqaW5wdXQsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBJbnB1dCBkYXRhIHRvIGNvcnJlbGF0ZSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVz
X2ludCAgICAgICAgICAgICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIFdhcnBpbmcgY29lZmZpY2llbnQgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgTGVuZ3RoIG9mIGlucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICAgICAgICBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBD
b3JyZWxhdGlvbiBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyk7CisKKyMgIGlmICFkZWZpbmVkKE9QVVNfSEFWRV9SVENE
KSAmJiBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTikKKyMgICBkZWZpbmUgT1ZFUlJJREVf
c2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCAoMSkKKyMgICBkZWZpbmUgc2lsa193YXJw
ZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWChjb3JyLCBzY2FsZSwgaW5wdXQsIHdhcnBpbmdfUTE2LCBs
ZW5ndGgsIG9yZGVyLCBhcmNoKSBcCisgICAgKCh2b2lkKShhcmNoKSwgUFJFU1VNRV9ORU9OKHNp
bGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgpKGNvcnIsIHNjYWxlLCBpbnB1dCwgd2FycGlu
Z19RMTYsIGxlbmd0aCwgb3JkZXIpKQorIyAgZW5kaWYKKyMgIGVuZGlmCisKKyMgIGlmICFkZWZp
bmVkKE9WRVJSSURFX3NpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgpCisvKklzIHJ1bi10
aW1lIENQVSBkZXRlY3Rpb24gZW5hYmxlZCBvbiB0aGlzIHBsYXRmb3JtPyovCisjICAgaWYgZGVm
aW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgKGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9J
TlRSKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikpCitleHRlcm4gdm9p
ZCAoKmNvbnN0IFNJTEtfV0FSUEVEX0FVVE9DT1JSRUxBVElPTl9GSVhfSU1QTFtPUFVTX0FSQ0hN
QVNLKzFdKShvcHVzX2ludDMyKiwgb3B1c19pbnQqLCBjb25zdCBvcHVzX2ludDE2KiwgY29uc3Qg
b3B1c19pbnQsIGNvbnN0IG9wdXNfaW50LCBjb25zdCBvcHVzX2ludCk7CisjICAgIGRlZmluZSBP
VkVSUklERV9zaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYICgxKQorIyAgICBkZWZpbmUg
c2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWChjb3JyLCBzY2FsZSwgaW5wdXQsIHdhcnBp
bmdfUTE2LCBsZW5ndGgsIG9yZGVyLCBhcmNoKSBcCisgICAgKCgqU0lMS19XQVJQRURfQVVUT0NP
UlJFTEFUSU9OX0ZJWF9JTVBMWyhhcmNoKSZPUFVTX0FSQ0hNQVNLXSkoY29yciwgc2NhbGUsIGlu
cHV0LCB3YXJwaW5nX1ExNiwgbGVuZ3RoLCBvcmRlcikpCisjICAgZWxpZiBkZWZpbmVkKE9QVVNf
QVJNX1BSRVNVTUVfTkVPTl9JTlRSKQorIyAgICBkZWZpbmUgT1ZFUlJJREVfc2lsa193YXJwZWRf
YXV0b2NvcnJlbGF0aW9uX0ZJWCAoMSkKKyMgICAgZGVmaW5lIHNpbGtfd2FycGVkX2F1dG9jb3Jy
ZWxhdGlvbl9GSVgoY29yciwgc2NhbGUsIGlucHV0LCB3YXJwaW5nX1ExNiwgbGVuZ3RoLCBvcmRl
ciwgYXJjaCkgXAorICAgICgodm9pZCkoYXJjaCksIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlv
bl9GSVhfbmVvbihjb3JyLCBzY2FsZSwgaW5wdXQsIHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVy
KSkKKyMgICBlbmRpZgorIyAgZW5kaWYKKworIyBlbmRpZiAvKiBlbmQgRklYRURfUE9JTlQgKi8K
KworI2VuZGlmIC8qIGVuZCBTSUxLX1dBUlBFRF9BVVRPQ09SUkVMQVRJT05fRklYX0FSTV9IICov
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvYXJtL3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX25l
b25faW50ci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2FybS93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9uZW9u
X2ludHIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4wMGE3MGNiNTFmZmJmMzljMzdlYTA0MWJhNjZlZDA2NGYwZDMw
ODRmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2FybS93YXJwZWRfYXV0b2NvcnJlbGF0
aW9uX0ZJWF9uZW9uX2ludHIuYwpAQCAtMCwwICsxLDI2MCBAQAorLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitD
b3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4sIEplYW4tTWFyYyBWYWxpbgorUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHks
IElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0
b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2ZWQg
ZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVybWlz
c2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9X
TkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2lmZGVm
IEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVkZSA8
YXJtX25lb24uaD4KKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorIyBpbmNsdWRlIDxzdHJpbmcuaD4K
KyNlbmRpZgorI2luY2x1ZGUgInN0YWNrX2FsbG9jLmgiCisjaW5jbHVkZSAibWFpbl9GSVguaCIK
Kworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgY2FsY19jb3JyKCBjb25zdCBvcHVzX2ludDMyICpj
b25zdCBpbnB1dF9RUywgb3B1c19pbnQ2NCAqY29uc3QgY29ycl9RQywgY29uc3Qgb3B1c19pbnQg
b2Zmc2V0LCBjb25zdCBpbnQzMng0X3Qgc3RhdGVfUVNfczMyeDQgKQoreworICAgIGludDY0eDJf
dCBjb3JyX1FDX3M2NHgyWyAyIF0sIHRfczY0eDJbIDIgXTsKKyAgICBjb25zdCBpbnQzMng0X3Qg
aW5wdXRfUVNfczMyeDQgPSB2bGQxcV9zMzIoIGlucHV0X1FTICsgb2Zmc2V0ICk7CisgICAgY29y
cl9RQ19zNjR4MlsgMCBdID0gdmxkMXFfczY0KCBjb3JyX1FDICsgb2Zmc2V0ICsgMCApOworICAg
IGNvcnJfUUNfczY0eDJbIDEgXSA9IHZsZDFxX3M2NCggY29ycl9RQyArIG9mZnNldCArIDIgKTsK
KyAgICB0X3M2NHgyWyAwIF0gPSB2bXVsbF9zMzIoIHZnZXRfbG93X3MzMiggc3RhdGVfUVNfczMy
eDQgKSwgdmdldF9sb3dfczMyKCBpbnB1dF9RU19zMzJ4NCApICk7CisgICAgdF9zNjR4MlsgMSBd
ID0gdm11bGxfczMyKCB2Z2V0X2hpZ2hfczMyKCBzdGF0ZV9RU19zMzJ4NCApLCB2Z2V0X2hpZ2hf
czMyKCBpbnB1dF9RU19zMzJ4NCApICk7CisgICAgY29ycl9RQ19zNjR4MlsgMCBdID0gdnNyYXFf
bl9zNjQoIGNvcnJfUUNfczY0eDJbIDAgXSwgdF9zNjR4MlsgMCBdLCAyICogUVMgLSBRQyApOwor
ICAgIGNvcnJfUUNfczY0eDJbIDEgXSA9IHZzcmFxX25fczY0KCBjb3JyX1FDX3M2NHgyWyAxIF0s
IHRfczY0eDJbIDEgXSwgMiAqIFFTIC0gUUMgKTsKKyAgICB2c3QxcV9zNjQoIGNvcnJfUUMgKyBv
ZmZzZXQgKyAwLCBjb3JyX1FDX3M2NHgyWyAwIF0gKTsKKyAgICB2c3QxcV9zNjQoIGNvcnJfUUMg
KyBvZmZzZXQgKyAyLCBjb3JyX1FDX3M2NHgyWyAxIF0gKTsKK30KKworc3RhdGljIE9QVVNfSU5M
SU5FIGludDMyeDRfdCBjYWxjX3N0YXRlKCBjb25zdCBpbnQzMng0X3Qgc3RhdGVfUVMwX3MzMng0
LCBjb25zdCBpbnQzMng0X3Qgc3RhdGVfUVMwXzFfczMyeDQsIGNvbnN0IGludDMyeDRfdCBzdGF0
ZV9RUzFfMV9zMzJ4NCwgY29uc3QgaW50MzJ4NF90IHdhcnBpbmdfUTE2X3MzMng0ICkKK3sKKyAg
ICBpbnQzMng0X3QgdF9zMzJ4NCA9IHZzdWJxX3MzMiggc3RhdGVfUVMwX3MzMng0LCBzdGF0ZV9R
UzBfMV9zMzJ4NCApOworICAgIHRfczMyeDQgPSB2cWRtdWxocV9zMzIoIHRfczMyeDQsIHdhcnBp
bmdfUTE2X3MzMng0ICk7CisgICAgcmV0dXJuIHZhZGRxX3MzMiggc3RhdGVfUVMxXzFfczMyeDQs
IHRfczMyeDQgKTsKK30KKwordm9pZCBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX25l
b24oCisgICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAqY29yciwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXN1bHQgW29yZGVyICsgMV0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICAgICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICpzY2FsZSwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBPICAgIFNjYWxpbmcgb2YgdGhlIGNvcnJlbGF0aW9uIHZlY3Rv
ciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0
IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKmlucHV0LCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgSW5wdXQgZGF0YSB0byBjb3JyZWxhdGUgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19p
bnQgICAgICAgICAgICAgICAgICB3YXJwaW5nX1ExNiwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBXYXJwaW5nIGNvZWZmaWNpZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAg
ICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIExlbmd0aCBvZiBpbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29y
cmVsYXRpb24gb3JkZXIgKGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCispCit7CisgICAgaWYoICggTUFYX1NIQVBFX0xQQ19PUkRFUiA+
IDI0ICkgfHwgKCBvcmRlciA8IDYgKSApIHsKKyAgICAgICAgc2lsa193YXJwZWRfYXV0b2NvcnJl
bGF0aW9uX0ZJWF9jKCBjb3JyLCBzY2FsZSwgaW5wdXQsIHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9y
ZGVyICk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgb3B1c19pbnQgICAgICAgbiwgaSwgbHNoOwor
ICAgICAgICBvcHVzX2ludDY0ICAgICBjb3JyX1FDWyBNQVhfU0hBUEVfTFBDX09SREVSICsgMSBd
ID0geyAwIH07IC8qIEluIHJldmVyc2Ugb3JkZXIgKi8KKyAgICAgICAgb3B1c19pbnQ2NCAgICAg
Y29ycl9RQ19vcmRlclQ7CisgICAgICAgIGludDY0eDJfdCAgICAgIGxzaF9zNjR4MjsKKyAgICAg
ICAgY29uc3Qgb3B1c19pbnQgb3JkZXJUID0gKCBvcmRlciArIDMgKSAmIH4zOworICAgICAgICBv
cHVzX2ludDY0ICAgICAqY29ycl9RQ1Q7CisgICAgICAgIG9wdXNfaW50MzIgICAgICppbnB1dF9R
UzsKKyAgICAgICAgVkFSREVDTCggb3B1c19pbnQzMiwgaW5wdXRfUVNUICk7CisgICAgICAgIFZB
UkRFQ0woIG9wdXNfaW50MzIsIHN0YXRlICk7CisgICAgICAgIFNBVkVfU1RBQ0s7CisKKyAgICAg
ICAgLyogT3JkZXIgbXVzdCBiZSBldmVuICovCisgICAgICAgIHNpbGtfYXNzZXJ0KCAoIG9yZGVy
ICYgMSApID09IDAgKTsKKyAgICAgICAgc2lsa19hc3NlcnQoIDIgKiBRUyAtIFFDID49IDAgKTsK
KworICAgICAgICBBTExPQyggaW5wdXRfUVNULCBsZW5ndGggKyAyICogTUFYX1NIQVBFX0xQQ19P
UkRFUiwgb3B1c19pbnQzMiApOworCisgICAgICAgIGlucHV0X1FTID0gaW5wdXRfUVNUOworICAg
ICAgICAvKiBpbnB1dF9RUyBoYXMgemVybyBwYWRkaW5ncyBpbiB0aGUgYmVnaW5uaW5nIGFuZCBl
bmQuICovCisgICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMyKCAwICkgKTsK
KyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUywgdmR1
cHFfbl9zMzIoIDAgKSApOworICAgICAgICBpbnB1dF9RUyArPSA0OworICAgICAgICB2c3QxcV9z
MzIoIGlucHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlucHV0X1FTICs9IDQ7
CisgICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMyKCAwICkgKTsKKyAgICAg
ICAgaW5wdXRfUVMgKz0gNDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUywgdmR1cHFfbl9z
MzIoIDAgKSApOworICAgICAgICBpbnB1dF9RUyArPSA0OworICAgICAgICB2c3QxcV9zMzIoIGlu
cHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlucHV0X1FTICs9IDQ7CisKKyAg
ICAgICAgLyogTG9vcCBvdmVyIHNhbXBsZXMgKi8KKyAgICAgICAgZm9yKCBuID0gMDsgbiA8IGxl
bmd0aCAtIDc7IG4gKz0gOCwgaW5wdXRfUVMgKz0gOCApIHsKKyAgICAgICAgICAgIGNvbnN0IGlu
dDE2eDhfdCB0MF9zMTZ4NCA9IHZsZDFxX3MxNiggaW5wdXQgKyBuICk7CisgICAgICAgICAgICB2
c3QxcV9zMzIoIGlucHV0X1FTICsgMCwgdnNobGxfbl9zMTYoIHZnZXRfbG93X3MxNiggdDBfczE2
eDQgKSwgUVMgKSApOworICAgICAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUyArIDQsIHZzaGxs
X25fczE2KCB2Z2V0X2hpZ2hfczE2KCB0MF9zMTZ4NCApLCBRUyApICk7CisgICAgICAgIH0KKyAg
ICAgICAgZm9yKCA7IG4gPCBsZW5ndGg7IG4rKywgaW5wdXRfUVMrKyApIHsKKyAgICAgICAgICAg
IGlucHV0X1FTWyAwIF0gPSBzaWxrX0xTSElGVDMyKCAob3B1c19pbnQzMilpbnB1dFsgbiBdLCBR
UyApOworICAgICAgICB9CisgICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMy
KCAwICkgKTsKKyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1
dF9RUywgdmR1cHFfbl9zMzIoIDAgKSApOworICAgICAgICBpbnB1dF9RUyArPSA0OworICAgICAg
ICB2c3QxcV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlucHV0
X1FTICs9IDQ7CisgICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMyKCAwICkg
KTsKKyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUywg
dmR1cHFfbl9zMzIoIDAgKSApOworICAgICAgICBpbnB1dF9RUyArPSA0OworICAgICAgICB2c3Qx
cV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlucHV0X1FTID0g
aW5wdXRfUVNUICsgTUFYX1NIQVBFX0xQQ19PUkRFUiAtIG9yZGVyVDsKKworICAgICAgICAvKiBU
aGUgZm9sbG93aW5nIGxvb3AgcnVucyAoIGxlbmd0aCArIG9yZGVyICkgdGltZXMsIHdpdGggKCBv
cmRlciApIGV4dHJhIGVwaWxvZ3Vlcy4gICAgICAgICAgICAgICAgICAqLworICAgICAgICAvKiBU
aGUgemVybyBwYWRkaW5ncyBpbiBpbnB1dF9RUyBndWFyYW50ZWUgY29ycl9RQydzIGNvcnJlY3Ru
ZXNzIGV2ZW4gd2l0aCB0aGUgZXh0cmEgZXBpbG9ndWVzLiAgICAgICAqLworICAgICAgICAvKiBU
aGUgdmFsdWVzIG9mIHN0YXRlX1FTIHdpbGwgYmUgcG9sbHV0ZWQgYnkgdGhlIGV4dHJhIGVwaWxv
Z3VlcywgaG93ZXZlciB0aGV5IGFyZSB0ZW1wb3JhcnkgdmFsdWVzLiAqLworCisgICAgICAgIC8q
IEtlZXAgdGhlIEMgY29kZSBoZXJlIHRvIGhlbHAgdW5kZXJzdGFuZCB0aGUgaW50cmluc2ljcyBv
cHRpbWl6YXRpb24uICovCisgICAgICAgIC8qCisgICAgICAgIHsKKyAgICAgICAgICAgIG9wdXNf
aW50MzIgc3RhdGVfUVNbIDIgXVsgTUFYX1NIQVBFX0xQQ19PUkRFUiArIDEgXSA9IHsgMCB9Owor
ICAgICAgICAgICAgb3B1c19pbnQzMiAqc3RhdGVfUVNUWyAzIF07CisgICAgICAgICAgICBzdGF0
ZV9RU1RbIDAgXSA9IHN0YXRlX1FTWyAwIF07CisgICAgICAgICAgICBzdGF0ZV9RU1RbIDEgXSA9
IHN0YXRlX1FTWyAxIF07CisgICAgICAgICAgICBmb3IoIG4gPSAwOyBuIDwgbGVuZ3RoICsgb3Jk
ZXI7IG4rKywgaW5wdXRfUVMrKyApIHsKKyAgICAgICAgICAgICAgICBzdGF0ZV9RU1RbIDAgXVsg
b3JkZXJUIF0gPSBpbnB1dF9RU1sgb3JkZXJUIF07CisgICAgICAgICAgICAgICAgZm9yKCBpID0g
MDsgaSA8IG9yZGVyVDsgaSsrICkgeworICAgICAgICAgICAgICAgICAgICBjb3JyX1FDWyBpIF0g
Kz0gc2lsa19SU0hJRlQ2NCggc2lsa19TTVVMTCggc3RhdGVfUVNUWyAwIF1bIGkgXSwgaW5wdXRf
UVNbIGkgXSApLCAyICogUVMgLSBRQyApOworICAgICAgICAgICAgICAgICAgICBzdGF0ZV9RU1Rb
IDEgXVsgaSBdID0gc2lsa19TTUxBV0IoIHN0YXRlX1FTVFsgMSBdWyBpICsgMSBdLCBzdGF0ZV9R
U1RbIDAgXVsgaSBdIC0gc3RhdGVfUVNUWyAwIF1bIGkgKyAxIF0sIHdhcnBpbmdfUTE2ICk7Cisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHN0YXRlX1FTVFsgMiBdID0gc3RhdGVf
UVNUWyAwIF07CisgICAgICAgICAgICAgICAgc3RhdGVfUVNUWyAwIF0gPSBzdGF0ZV9RU1RbIDEg
XTsKKyAgICAgICAgICAgICAgICBzdGF0ZV9RU1RbIDEgXSA9IHN0YXRlX1FTVFsgMiBdOworICAg
ICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgICovCisKKyAgICAgICAgeworICAgICAgICAg
ICAgY29uc3QgaW50MzJ4NF90IHdhcnBpbmdfUTE2X3MzMng0ID0gdmR1cHFfbl9zMzIoIHdhcnBp
bmdfUTE2IDw8IDE1ICk7CisgICAgICAgICAgICBjb25zdCBvcHVzX2ludDMyICppbiA9IGlucHV0
X1FTICsgb3JkZXJUOworICAgICAgICAgICAgb3B1c19pbnQgbyA9IG9yZGVyVDsKKyAgICAgICAg
ICAgIGludDMyeDRfdCBzdGF0ZV9RU19zMzJ4NFsgMyBdWyAyIF07CisKKyAgICAgICAgICAgIEFM
TE9DKCBzdGF0ZSwgbGVuZ3RoICsgb3JkZXJULCBvcHVzX2ludDMyICk7CisgICAgICAgICAgICBz
dGF0ZV9RU19zMzJ4NFsgMiBdWyAxIF0gPSB2ZHVwcV9uX3MzMiggMCApOworCisgICAgICAgICAg
ICAvKiBDYWxjdWxhdGUgOCB0YXBzIG9mIGFsbCBpbnB1dHMgaW4gZWFjaCBsb29wLiAqLworICAg
ICAgICAgICAgZG8geworICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSA9
IHN0YXRlX1FTX3MzMng0WyAwIF1bIDEgXSA9CisgICAgICAgICAgICAgICAgc3RhdGVfUVNfczMy
eDRbIDEgXVsgMCBdID0gc3RhdGVfUVNfczMyeDRbIDEgXVsgMSBdID0gdmR1cHFfbl9zMzIoIDAg
KTsKKyAgICAgICAgICAgICAgICBuID0gMDsKKyAgICAgICAgICAgICAgICBkbyB7CisgICAgICAg
ICAgICAgICAgICAgIGNhbGNfY29yciggaW5wdXRfUVMgKyBuLCBjb3JyX1FDLCBvIC0gOCwgc3Rh
dGVfUVNfczMyeDRbIDAgXVsgMCBdICk7CisgICAgICAgICAgICAgICAgICAgIGNhbGNfY29ycigg
aW5wdXRfUVMgKyBuLCBjb3JyX1FDLCBvIC0gNCwgc3RhdGVfUVNfczMyeDRbIDAgXVsgMSBdICk7
CisgICAgICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAyIF1bIDEgXSA9IHZsZDFxX3Mz
MiggaW4gKyBuICk7CisgICAgICAgICAgICAgICAgICAgIHZzdDFxX2xhbmVfczMyKCBzdGF0ZSAr
IG4sIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSwgMCApOworICAgICAgICAgICAgICAgICAgICBz
dGF0ZV9RU19zMzJ4NFsgMiBdWyAwIF0gPSB2ZXh0cV9zMzIoIHN0YXRlX1FTX3MzMng0WyAwIF1b
IDAgXSwgc3RhdGVfUVNfczMyeDRbIDAgXVsgMSBdLCAxICk7CisgICAgICAgICAgICAgICAgICAg
IHN0YXRlX1FTX3MzMng0WyAyIF1bIDEgXSA9IHZleHRxX3MzMiggc3RhdGVfUVNfczMyeDRbIDAg
XVsgMSBdLCBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAxIF0sIDEgKTsKKyAgICAgICAgICAgICAgICAg
ICAgc3RhdGVfUVNfczMyeDRbIDAgXVsgMCBdID0gY2FsY19zdGF0ZSggc3RhdGVfUVNfczMyeDRb
IDAgXVsgMCBdLCBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAwIF0sIHN0YXRlX1FTX3MzMng0WyAxIF1b
IDAgXSwgd2FycGluZ19RMTZfczMyeDQgKTsKKyAgICAgICAgICAgICAgICAgICAgc3RhdGVfUVNf
czMyeDRbIDAgXVsgMSBdID0gY2FsY19zdGF0ZSggc3RhdGVfUVNfczMyeDRbIDAgXVsgMSBdLCBz
dGF0ZV9RU19zMzJ4NFsgMiBdWyAxIF0sIHN0YXRlX1FTX3MzMng0WyAxIF1bIDEgXSwgd2FycGlu
Z19RMTZfczMyeDQgKTsKKyAgICAgICAgICAgICAgICAgICAgc3RhdGVfUVNfczMyeDRbIDEgXVsg
MCBdID0gc3RhdGVfUVNfczMyeDRbIDIgXVsgMCBdOworICAgICAgICAgICAgICAgICAgICBzdGF0
ZV9RU19zMzJ4NFsgMSBdWyAxIF0gPSBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAxIF07CisgICAgICAg
ICAgICAgICAgfSB3aGlsZSggKytuIDwgKCBsZW5ndGggKyBvcmRlciApICk7CisgICAgICAgICAg
ICAgICAgaW4gPSBzdGF0ZTsKKyAgICAgICAgICAgICAgICBvIC09IDg7CisgICAgICAgICAgICB9
IHdoaWxlKCBvID4gNCApOworCisgICAgICAgICAgICBpZiggbyApIHsKKyAgICAgICAgICAgICAg
ICAvKiBDYWxjdWxhdGUgdGhlIGxhc3QgNCB0YXBzIG9mIGFsbCBpbnB1dHMuICovCisgICAgICAg
ICAgICAgICAgb3B1c19pbnQzMiAqc3RhdGVUID0gc3RhdGU7CisgICAgICAgICAgICAgICAgc2ls
a19hc3NlcnQoIG8gPT0gNCApOworICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAwIF1b
IDAgXSA9IHN0YXRlX1FTX3MzMng0WyAxIF1bIDAgXSA9IHZkdXBxX25fczMyKCAwICk7CisgICAg
ICAgICAgICAgICAgbiA9IGxlbmd0aCArIG9yZGVyOworICAgICAgICAgICAgICAgIGRvIHsKKyAg
ICAgICAgICAgICAgICAgICAgY2FsY19jb3JyKCBpbnB1dF9RUywgY29ycl9RQywgMCwgc3RhdGVf
UVNfczMyeDRbIDAgXVsgMCBdICk7CisgICAgICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0
WyAyIF1bIDAgXSA9IHZsZDFxX3MzMiggc3RhdGVUICk7CisgICAgICAgICAgICAgICAgICAgIHZz
dDFxX2xhbmVfczMyKCBzdGF0ZVQsIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSwgMCApOworICAg
ICAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAwIF0gPSB2ZXh0cV9zMzIoIHN0
YXRlX1FTX3MzMng0WyAwIF1bIDAgXSwgc3RhdGVfUVNfczMyeDRbIDIgXVsgMCBdLCAxICk7Cisg
ICAgICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSA9IGNhbGNfc3RhdGUo
IHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSwgc3RhdGVfUVNfczMyeDRbIDIgXVsgMCBdLCBzdGF0
ZV9RU19zMzJ4NFsgMSBdWyAwIF0sIHdhcnBpbmdfUTE2X3MzMng0ICk7CisgICAgICAgICAgICAg
ICAgICAgIHN0YXRlX1FTX3MzMng0WyAxIF1bIDAgXSA9IHN0YXRlX1FTX3MzMng0WyAyIF1bIDAg
XTsKKyAgICAgICAgICAgICAgICAgICAgaW5wdXRfUVMrKzsKKyAgICAgICAgICAgICAgICAgICAg
c3RhdGVUKys7CisgICAgICAgICAgICAgICAgfSB3aGlsZSggLS1uICk7CisgICAgICAgICAgICB9
CisgICAgICAgIH0KKworICAgICAgICB7CisgICAgICAgICAgICBjb25zdCBvcHVzX2ludDE2ICpp
bnB1dFQgPSBpbnB1dDsKKyAgICAgICAgICAgIGludDMyeDRfdCB0X3MzMng0OworICAgICAgICAg
ICAgaW50NjR4MV90IHRfczY0eDE7CisgICAgICAgICAgICBpbnQ2NHgyX3QgdF9zNjR4MiA9IHZk
dXBxX25fczY0KCAwICk7CisgICAgICAgICAgICBmb3IoIG4gPSAwOyBuIDw9IGxlbmd0aCAtIDg7
IG4gKz0gOCApIHsKKyAgICAgICAgICAgICAgICBpbnQxNng4X3QgaW5wdXRfczE2eDggPSB2bGQx
cV9zMTYoIGlucHV0VCApOworICAgICAgICAgICAgICAgIHRfczMyeDQgPSB2bXVsbF9zMTYoIHZn
ZXRfbG93X3MxNiggaW5wdXRfczE2eDggKSwgdmdldF9sb3dfczE2KCBpbnB1dF9zMTZ4OCApICk7
CisgICAgICAgICAgICAgICAgdF9zMzJ4NCA9IHZtbGFsX3MxNiggdF9zMzJ4NCwgdmdldF9oaWdo
X3MxNiggaW5wdXRfczE2eDggKSwgdmdldF9oaWdoX3MxNiggaW5wdXRfczE2eDggKSApOworICAg
ICAgICAgICAgICAgIHRfczY0eDIgPSB2YWRkd19zMzIoIHRfczY0eDIsIHZnZXRfbG93X3MzMigg
dF9zMzJ4NCApICk7CisgICAgICAgICAgICAgICAgdF9zNjR4MiA9IHZhZGR3X3MzMiggdF9zNjR4
MiwgdmdldF9oaWdoX3MzMiggdF9zMzJ4NCApICk7CisgICAgICAgICAgICAgICAgaW5wdXRUICs9
IDg7CisgICAgICAgICAgICB9CisgICAgICAgICAgICB0X3M2NHgxID0gdmFkZF9zNjQoIHZnZXRf
bG93X3M2NCggdF9zNjR4MiApLCB2Z2V0X2hpZ2hfczY0KCB0X3M2NHgyICkgKTsKKyAgICAgICAg
ICAgIGNvcnJfUUNfb3JkZXJUID0gdmdldF9sYW5lX3M2NCggdF9zNjR4MSwgMCApOworICAgICAg
ICAgICAgZm9yKCA7IG4gPCBsZW5ndGg7IG4rKyApIHsKKyAgICAgICAgICAgICAgICBjb3JyX1FD
X29yZGVyVCArPSBzaWxrX1NNVUxMKCBpbnB1dFsgbiBdLCBpbnB1dFsgbiBdICk7CisgICAgICAg
ICAgICB9CisgICAgICAgICAgICBjb3JyX1FDX29yZGVyVCA9IHNpbGtfTFNISUZUNjQoIGNvcnJf
UUNfb3JkZXJULCBRQyApOworICAgICAgICAgICAgY29ycl9RQ1sgb3JkZXJUIF0gPSBjb3JyX1FD
X29yZGVyVDsKKyAgICAgICAgfQorCisgICAgICAgIGNvcnJfUUNUID0gY29ycl9RQyArIG9yZGVy
VCAtIG9yZGVyOworICAgICAgICBsc2ggPSBzaWxrX0NMWjY0KCBjb3JyX1FDX29yZGVyVCApIC0g
MzU7CisgICAgICAgIGxzaCA9IHNpbGtfTElNSVQoIGxzaCwgLTEyIC0gUUMsIDMwIC0gUUMgKTsK
KyAgICAgICAgKnNjYWxlID0gLSggUUMgKyBsc2ggKTsKKyAgICAgICAgc2lsa19hc3NlcnQoICpz
Y2FsZSA+PSAtMzAgJiYgKnNjYWxlIDw9IDEyICk7CisgICAgICAgIGxzaF9zNjR4MiA9IHZkdXBx
X25fczY0KCBsc2ggKTsKKyAgICAgICAgZm9yKCBpID0gMDsgaSA8PSBvcmRlciAtIDM7IGkgKz0g
NCApIHsKKyAgICAgICAgICAgIGludDMyeDRfdCBjb3JyX3MzMng0OworICAgICAgICAgICAgaW50
NjR4Ml90IGNvcnJfUUMwX3M2NHgyLCBjb3JyX1FDMV9zNjR4MjsKKyAgICAgICAgICAgIGNvcnJf
UUMwX3M2NHgyID0gdmxkMXFfczY0KCBjb3JyX1FDVCArIGkgKTsKKyAgICAgICAgICAgIGNvcnJf
UUMxX3M2NHgyID0gdmxkMXFfczY0KCBjb3JyX1FDVCArIGkgKyAyICk7CisgICAgICAgICAgICBj
b3JyX1FDMF9zNjR4MiA9IHZzaGxxX3M2NCggY29ycl9RQzBfczY0eDIsIGxzaF9zNjR4MiApOwor
ICAgICAgICAgICAgY29ycl9RQzFfczY0eDIgPSB2c2hscV9zNjQoIGNvcnJfUUMxX3M2NHgyLCBs
c2hfczY0eDIgKTsKKyAgICAgICAgICAgIGNvcnJfczMyeDQgICAgID0gdmNvbWJpbmVfczMyKCB2
bW92bl9zNjQoIGNvcnJfUUMxX3M2NHgyICksIHZtb3ZuX3M2NCggY29ycl9RQzBfczY0eDIgKSAp
OworICAgICAgICAgICAgY29ycl9zMzJ4NCAgICAgPSB2cmV2NjRxX3MzMiggY29ycl9zMzJ4NCAp
OworICAgICAgICAgICAgdnN0MXFfczMyKCBjb3JyICsgb3JkZXIgLSBpIC0gMywgY29ycl9zMzJ4
NCApOworICAgICAgICB9CisgICAgICAgIGlmKCBsc2ggPj0gMCApIHsKKyAgICAgICAgICAgIGZv
ciggOyBpIDwgb3JkZXIgKyAxOyBpKysgKSB7CisgICAgICAgICAgICAgICAgY29yclsgb3JkZXIg
LSBpIF0gPSAob3B1c19pbnQzMilzaWxrX0NIRUNLX0ZJVDMyKCBzaWxrX0xTSElGVDY0KCBjb3Jy
X1FDVFsgaSBdLCBsc2ggKSApOworICAgICAgICAgICAgfQorICAgICAgICB9IGVsc2UgeworICAg
ICAgICAgICAgZm9yKCA7IGkgPCBvcmRlciArIDE7IGkrKyApIHsKKyAgICAgICAgICAgICAgICBj
b3JyWyBvcmRlciAtIGkgXSA9IChvcHVzX2ludDMyKXNpbGtfQ0hFQ0tfRklUMzIoIHNpbGtfUlNI
SUZUNjQoIGNvcnJfUUNUWyBpIF0sIC1sc2ggKSApOworICAgICAgICAgICAgfQorICAgICAgICB9
CisgICAgICAgIHNpbGtfYXNzZXJ0KCBjb3JyX1FDVFsgb3JkZXIgXSA+PSAwICk7IC8qIElmIGJy
ZWFraW5nLCBkZWNyZWFzZSBRQyovCisgICAgICAgIFJFU1RPUkVfU1RBQ0s7CisgICAgfQorCisj
aWZkZWYgT1BVU19DSEVDS19BU00KKyAgICB7CisgICAgICAgIG9wdXNfaW50MzIgY29ycl9jWyBN
QVhfU0hBUEVfTFBDX09SREVSICsgMSBdOworICAgICAgICBvcHVzX2ludCAgIHNjYWxlX2M7Cisg
ICAgICAgIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYyggY29ycl9jLCAmc2NhbGVf
YywgaW5wdXQsIHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVyICk7CisgICAgICAgIHNpbGtfYXNz
ZXJ0KCAhbWVtY21wKCBjb3JyX2MsIGNvcnIsIHNpemVvZiggY29ycl9jWyAwIF0gKSAqICggb3Jk
ZXIgKyAxICkgKSApOworICAgICAgICBzaWxrX2Fzc2VydCggc2NhbGVfYyA9PSAqc2NhbGUgKTsK
KyAgICB9CisjZW5kaWYKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9idXJnX21vZGlmaWVkX0ZJ
WC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2ZpeGVkL2J1cmdfbW9kaWZpZWRfRklYLmMKaW5kZXggMTdkMGUwOTkzY2Y1YmEx
ODhkYjE4MjljMTJkZWQ3NGNiZTA3MTkxNS4uODBlZGJkZmE4YTY1MTQwODQ4YzJlODkwMzE5MGJj
ZDg1YTVmOTBiNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2J1cmdfbW9kaWZpZWRfRklYLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2ZpeGVkL2J1cmdfbW9kaWZpZWRfRklYLmMKQEAgLTM3LDcgKzM3LDcgQEAgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjZGVmaW5lIE1BWF9GUkFNRV9TSVpFICAgICAgICAgICAg
ICAzODQgICAgICAgICAgICAgLyogc3ViZnJfbGVuZ3RoICogbmJfc3ViZnIgPSAoIDAuMDA1ICog
MTYwMDAgKyAxNiApICogNCA9IDM4NCAqLwogCiAjZGVmaW5lIFFBICAgICAgICAgICAgICAgICAg
ICAgICAgICAyNQotI2RlZmluZSBOX0JJVFNfSEVBRF9ST09NICAgICAgICAgICAgMgorI2RlZmlu
ZSBOX0JJVFNfSEVBRF9ST09NICAgICAgICAgICAgMwogI2RlZmluZSBNSU5fUlNISUZUUyAgICAg
ICAgICAgICAgICAgLTE2CiAjZGVmaW5lIE1BWF9SU0hJRlRTICAgICAgICAgICAgICAgICAoMzIg
LSBRQSkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2NvcnJNYXRyaXhfRklYLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4
ZWQvY29yck1hdHJpeF9GSVguYwppbmRleCBjMWQ0MzdjNzg1OWUzYTIyYzNhZTBmYmUwZDYzNzZi
NzA4MTJhNDM3Li4xYjRhMjljMjMyYmZlZWFmOGI2YjdiNTMyNTc3ZTIzNGM5ODJmNDJmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZml4ZWQvY29yck1hdHJpeF9GSVguYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvY29yck1h
dHJpeF9GSVguYwpAQCAtNTgsNyArNTgsNyBAQCB2b2lkIHNpbGtfY29yclZlY3Rvcl9GSVgoCiAg
ICAgICAgIGZvciggbGFnID0gMDsgbGFnIDwgb3JkZXI7IGxhZysrICkgewogICAgICAgICAgICAg
aW5uZXJfcHJvZCA9IDA7CiAgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTDsgaSsrICkgewot
ICAgICAgICAgICAgICAgIGlubmVyX3Byb2QgKz0gc2lsa19SU0hJRlQzMiggc2lsa19TTVVMQkIo
IHB0cjFbIGkgXSwgcHRyMltpXSApLCByc2hpZnRzICk7CisgICAgICAgICAgICAgICAgaW5uZXJf
cHJvZCA9IHNpbGtfQUREX1JTSElGVDMyKCBpbm5lcl9wcm9kLCBzaWxrX1NNVUxCQiggcHRyMVsg
aSBdLCBwdHIyW2ldICksIHJzaGlmdHMgKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIFh0
WyBsYWcgXSA9IGlubmVyX3Byb2Q7IC8qIFhbOixsYWddJyp0ICovCiAgICAgICAgICAgICBwdHIx
LS07IC8qIEdvIHRvIG5leHQgY29sdW1uIG9mIFggKi8KQEAgLTc3LDYxICs3Nyw1NCBAQCB2b2lk
IHNpbGtfY29yck1hdHJpeF9GSVgoCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAg
ICAqeCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICB4IHZlY3Rv
ciBbTCArIG9yZGVyIC0gMV0gdXNlZCB0byBmb3JtIGRhdGEgbWF0cml4IFggICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIEwsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiB2ZWN0
b3JzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgb3JkZXIsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTWF4IGxhZyBmb3IgY29ycmVsYXRp
b24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBoZWFkX3Jvb20sICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBEZXNpcmVkIGhlYWRyb29tICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBv
cHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgICpYWCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBPICAgIFBvaW50ZXIgdG8gWCcqWCBjb3JyZWxhdGlvbiBtYXRyaXgg
WyBvcmRlciB4IG9yZGVyIF0gICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50
ICAgICAgICAgICAgICAgICAgICAgICAgKnJzaGlmdHMsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkvTyAgUmlnaHQgc2hpZnRzIG9mIGNvcnJlbGF0aW9ucyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQzMiAgICAg
ICAgICAgICAgICAgICAgICAqbnJnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIE8gICAgRW5lcmd5IG9mIHggdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgICAgICAgICpyc2hpZnRzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBP
ICAgIFJpZ2h0IHNoaWZ0cyBvZiBjb3JyZWxhdGlvbnMgYW5kIGVuZXJneSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGludCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUnVu
LXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiApCiB7Ci0gICAgb3B1c19pbnQgICAgICAgICBpLCBqLCBsYWcs
IHJzaGlmdHNfbG9jYWwsIGhlYWRfcm9vbV9yc2hpZnRzOworICAgIG9wdXNfaW50ICAgICAgICAg
aSwgaiwgbGFnOwogICAgIG9wdXNfaW50MzIgICAgICAgZW5lcmd5OwogICAgIGNvbnN0IG9wdXNf
aW50MTYgKnB0cjEsICpwdHIyOwogCiAgICAgLyogQ2FsY3VsYXRlIGVuZXJneSB0byBmaW5kIHNo
aWZ0IHVzZWQgdG8gZml0IGluIDMyIGJpdHMgKi8KLSAgICBzaWxrX3N1bV9zcXJfc2hpZnQoICZl
bmVyZ3ksICZyc2hpZnRzX2xvY2FsLCB4LCBMICsgb3JkZXIgLSAxICk7Ci0gICAgLyogQWRkIHNo
aWZ0cyB0byBnZXQgdGhlIGRlc2lyZWQgaGVhZCByb29tICovCi0gICAgaGVhZF9yb29tX3JzaGlm
dHMgPSBzaWxrX21heCggaGVhZF9yb29tIC0gc2lsa19DTFozMiggZW5lcmd5ICksIDAgKTsKLQot
ICAgIGVuZXJneSA9IHNpbGtfUlNISUZUMzIoIGVuZXJneSwgaGVhZF9yb29tX3JzaGlmdHMgKTsK
LSAgICByc2hpZnRzX2xvY2FsICs9IGhlYWRfcm9vbV9yc2hpZnRzOworICAgIHNpbGtfc3VtX3Nx
cl9zaGlmdCggbnJnLCByc2hpZnRzLCB4LCBMICsgb3JkZXIgLSAxICk7CisgICAgZW5lcmd5ID0g
Km5yZzsKIAogICAgIC8qIENhbGN1bGF0ZSBlbmVyZ3kgb2YgZmlyc3QgY29sdW1uICgwKSBvZiBY
OiBYWzosMF0nKlhbOiwwXSAqLwogICAgIC8qIFJlbW92ZSBjb250cmlidXRpb24gb2YgZmlyc3Qg
b3JkZXIgLSAxIHNhbXBsZXMgKi8KICAgICBmb3IoIGkgPSAwOyBpIDwgb3JkZXIgLSAxOyBpKysg
KSB7Ci0gICAgICAgIGVuZXJneSAtPSBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggeFsgaSBd
LCB4WyBpIF0gKSwgcnNoaWZ0c19sb2NhbCApOwotICAgIH0KLSAgICBpZiggcnNoaWZ0c19sb2Nh
bCA8ICpyc2hpZnRzICkgewotICAgICAgICAvKiBBZGp1c3QgZW5lcmd5ICovCi0gICAgICAgIGVu
ZXJneSA9IHNpbGtfUlNISUZUMzIoIGVuZXJneSwgKnJzaGlmdHMgLSByc2hpZnRzX2xvY2FsICk7
Ci0gICAgICAgIHJzaGlmdHNfbG9jYWwgPSAqcnNoaWZ0czsKKyAgICAgICAgZW5lcmd5IC09IHNp
bGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCB4WyBpIF0sIHhbIGkgXSApLCAqcnNoaWZ0cyApOwog
ICAgIH0KIAogICAgIC8qIENhbGN1bGF0ZSBlbmVyZ3kgb2YgcmVtYWluaW5nIGNvbHVtbnMgb2Yg
WDogWFs6LGpdJypYWzosal0gKi8KICAgICAvKiBGaWxsIG91dCB0aGUgZGlhZ29uYWwgb2YgdGhl
IGNvcnJlbGF0aW9uIG1hdHJpeCAqLwogICAgIG1hdHJpeF9wdHIoIFhYLCAwLCAwLCBvcmRlciAp
ID0gZW5lcmd5OworICAgIHNpbGtfYXNzZXJ0KCBlbmVyZ3kgPj0gMCApOwogICAgIHB0cjEgPSAm
eFsgb3JkZXIgLSAxIF07IC8qIEZpcnN0IHNhbXBsZSBvZiBjb2x1bW4gMCBvZiBYICovCiAgICAg
Zm9yKCBqID0gMTsgaiA8IG9yZGVyOyBqKysgKSB7Ci0gICAgICAgIGVuZXJneSA9IHNpbGtfU1VC
MzIoIGVuZXJneSwgc2lsa19SU0hJRlQzMiggc2lsa19TTVVMQkIoIHB0cjFbIEwgLSBqIF0sIHB0
cjFbIEwgLSBqIF0gKSwgcnNoaWZ0c19sb2NhbCApICk7Ci0gICAgICAgIGVuZXJneSA9IHNpbGtf
QUREMzIoIGVuZXJneSwgc2lsa19SU0hJRlQzMiggc2lsa19TTVVMQkIoIHB0cjFbIC1qIF0sIHB0
cjFbIC1qIF0gKSwgcnNoaWZ0c19sb2NhbCApICk7CisgICAgICAgIGVuZXJneSA9IHNpbGtfU1VC
MzIoIGVuZXJneSwgc2lsa19SU0hJRlQzMiggc2lsa19TTVVMQkIoIHB0cjFbIEwgLSBqIF0sIHB0
cjFbIEwgLSBqIF0gKSwgKnJzaGlmdHMgKSApOworICAgICAgICBlbmVyZ3kgPSBzaWxrX0FERDMy
KCBlbmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyAtaiBdLCBwdHIxWyAt
aiBdICksICpyc2hpZnRzICkgKTsKICAgICAgICAgbWF0cml4X3B0ciggWFgsIGosIGosIG9yZGVy
ICkgPSBlbmVyZ3k7CisgICAgICAgIHNpbGtfYXNzZXJ0KCBlbmVyZ3kgPj0gMCApOwogICAgIH0K
IAogICAgIHB0cjIgPSAmeFsgb3JkZXIgLSAyIF07IC8qIEZpcnN0IHNhbXBsZSBvZiBjb2x1bW4g
MSBvZiBYICovCiAgICAgLyogQ2FsY3VsYXRlIHRoZSByZW1haW5pbmcgZWxlbWVudHMgb2YgdGhl
IGNvcnJlbGF0aW9uIG1hdHJpeCAqLwotICAgIGlmKCByc2hpZnRzX2xvY2FsID4gMCApIHsKKyAg
ICBpZiggKnJzaGlmdHMgPiAwICkgewogICAgICAgICAvKiBSaWdodCBzaGlmdGluZyB1c2VkICov
CiAgICAgICAgIGZvciggbGFnID0gMTsgbGFnIDwgb3JkZXI7IGxhZysrICkgewogICAgICAgICAg
ICAgLyogSW5uZXIgcHJvZHVjdCBvZiBjb2x1bW4gMCBhbmQgY29sdW1uIGxhZzogWFs6LDBdJypY
WzosbGFnXSAqLwogICAgICAgICAgICAgZW5lcmd5ID0gMDsKICAgICAgICAgICAgIGZvciggaSA9
IDA7IGkgPCBMOyBpKysgKSB7Ci0gICAgICAgICAgICAgICAgZW5lcmd5ICs9IHNpbGtfUlNISUZU
MzIoIHNpbGtfU01VTEJCKCBwdHIxWyBpIF0sIHB0cjJbaV0gKSwgcnNoaWZ0c19sb2NhbCApOwor
ICAgICAgICAgICAgICAgIGVuZXJneSArPSBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggcHRy
MVsgaSBdLCBwdHIyW2ldICksICpyc2hpZnRzICk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICAvKiBDYWxjdWxhdGUgcmVtYWluaW5nIG9mZiBkaWFnb25hbDogWFs6LGpdJypYWzosaiArIGxh
Z10gKi8KICAgICAgICAgICAgIG1hdHJpeF9wdHIoIFhYLCBsYWcsIDAsIG9yZGVyICkgPSBlbmVy
Z3k7CiAgICAgICAgICAgICBtYXRyaXhfcHRyKCBYWCwgMCwgbGFnLCBvcmRlciApID0gZW5lcmd5
OwogICAgICAgICAgICAgZm9yKCBqID0gMTsgaiA8ICggb3JkZXIgLSBsYWcgKTsgaisrICkgewot
ICAgICAgICAgICAgICAgIGVuZXJneSA9IHNpbGtfU1VCMzIoIGVuZXJneSwgc2lsa19SU0hJRlQz
Miggc2lsa19TTVVMQkIoIHB0cjFbIEwgLSBqIF0sIHB0cjJbIEwgLSBqIF0gKSwgcnNoaWZ0c19s
b2NhbCApICk7Ci0gICAgICAgICAgICAgICAgZW5lcmd5ID0gc2lsa19BREQzMiggZW5lcmd5LCBz
aWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggcHRyMVsgLWogXSwgcHRyMlsgLWogXSApLCByc2hp
ZnRzX2xvY2FsICkgKTsKKyAgICAgICAgICAgICAgICBlbmVyZ3kgPSBzaWxrX1NVQjMyKCBlbmVy
Z3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyBMIC0gaiBdLCBwdHIyWyBMIC0g
aiBdICksICpyc2hpZnRzICkgKTsKKyAgICAgICAgICAgICAgICBlbmVyZ3kgPSBzaWxrX0FERDMy
KCBlbmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyAtaiBdLCBwdHIyWyAt
aiBdICksICpyc2hpZnRzICkgKTsKICAgICAgICAgICAgICAgICBtYXRyaXhfcHRyKCBYWCwgbGFn
ICsgaiwgaiwgb3JkZXIgKSA9IGVuZXJneTsKICAgICAgICAgICAgICAgICBtYXRyaXhfcHRyKCBY
WCwgaiwgbGFnICsgaiwgb3JkZXIgKSA9IGVuZXJneTsKICAgICAgICAgICAgIH0KQEAgLTE1Myw2
ICsxNDYsNSBAQCB2b2lkIHNpbGtfY29yck1hdHJpeF9GSVgoCiAgICAgICAgICAgICBwdHIyLS07
LyogVXBkYXRlIHBvaW50ZXIgdG8gZmlyc3Qgc2FtcGxlIG9mIG5leHQgY29sdW1uIChsYWcpIGlu
IFggKi8KICAgICAgICAgfQogICAgIH0KLSAgICAqcnNoaWZ0cyA9IHJzaGlmdHNfbG9jYWw7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9lbmNvZGVfZnJhbWVfRklYLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQv
ZW5jb2RlX2ZyYW1lX0ZJWC5jCmluZGV4IDVlZjQ0YjAzZmM0YzU4NTk5OWJjZWMyODIzNWUwZWQ0
YTU1NDg2YjEuLmY2ZWU4MTNiOTdmYTU2NGQzM2Y5NjQ4ZTA4MGY5ODQxNTljOTQ0YzMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9maXhlZC9lbmNvZGVfZnJhbWVfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2VuY29k
ZV9mcmFtZV9GSVguYwpAQCAtMjksNiArMjksNyBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICNpbmNsdWRlICJjb25maWcuaCIKICNlbmRpZgogCisjaW5jbHVkZSA8c3RkbGliLmg+CiAj
aW5jbHVkZSAibWFpbl9GSVguaCIKICNpbmNsdWRlICJzdGFja19hbGxvYy5oIgogI2luY2x1ZGUg
InR1bmluZ19wYXJhbWV0ZXJzLmgiCkBAIC0zNywyNiArMzgsMzMgQEAgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCiBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xCUlJfZW5jb2RlX0ZJ
WCgKICAgICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAgICpwc0VuYywgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU2lsayBGSVggZW5jb2Rl
ciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZJWCAgICAgICAgKnBzRW5jQ3RybCwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIEZJWCBlbmNvZGVyIGNvbnRy
b2wgc3RydWN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qg
b3B1c19pbnQzMiAgICAgICAgICAgICAgICB4ZndfUTNbXSwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dDE2ICAgICAgICAgICAgICAgIHgxNltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIElucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgICAgICAgY29uZENvZGluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgVGhlIHR5cGUgb2YgY29uZGl0aW9uYWwgY29kaW5nIHVzZWQgc28gZmFyIGZvciB0aGlzIGZy
YW1lICAgICAgICAgICAgICAgICAgICovCiApOwogCiB2b2lkIHNpbGtfZW5jb2RlX2RvX1ZBRF9G
SVgoCi0gICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZJWCAgICAgICAgICAqcHNFbmMgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBQb2ludGVyIHRvIFNpbGsgRklYIGVuY29k
ZXIgc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU2lsayBGSVggZW5jb2RlciBzdGF0
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgICAgICAgYWN0aXZpdHkgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgRGVjaXNpb24gb2YgT3B1cyB2b2ljZSBhY3Rpdml0eSBkZXRlY3Rv
ciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7CisgICAgY29uc3Qg
b3B1c19pbnQgYWN0aXZpdHlfdGhyZXNob2xkID0gU0lMS19GSVhfQ09OU1QoIFNQRUVDSF9BQ1RJ
VklUWV9EVFhfVEhSRVMsIDggKTsKKwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioq
LwogICAgIC8qIFZvaWNlIEFjdGl2aXR5IERldGVjdGlvbiAqLwogICAgIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwogICAgIHNpbGtfVkFEX0dldFNBX1E4KCAmcHNFbmMtPnNDbW4sIHBz
RW5jLT5zQ21uLmlucHV0QnVmICsgMSwgcHNFbmMtPnNDbW4uYXJjaCApOworICAgIC8qIElmIE9w
dXMgVkFEIGlzIGluYWN0aXZlIGFuZCBTaWxrIFZBRCBpcyBhY3RpdmU6IGxvd2VyIFNpbGsgVkFE
IHRvIGp1c3QgdW5kZXIgdGhlIHRocmVzaG9sZCAqLworICAgIGlmKCBhY3Rpdml0eSA9PSBWQURf
Tk9fQUNUSVZJVFkgJiYgcHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5X1E4ID49IGFjdGl2aXR5
X3RocmVzaG9sZCApIHsKKyAgICAgICAgcHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5X1E4ID0g
YWN0aXZpdHlfdGhyZXNob2xkIC0gMTsKKyAgICB9CiAKICAgICAvKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgLyogQ29udmVydCBzcGVlY2gg
YWN0aXZpdHkgaW50byBWQUQgYW5kIERUWCBmbGFncyAqLwogICAgIC8qKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICBpZiggcHNFbmMtPnNDbW4u
c3BlZWNoX2FjdGl2aXR5X1E4IDwgU0lMS19GSVhfQ09OU1QoIFNQRUVDSF9BQ1RJVklUWV9EVFhf
VEhSRVMsIDggKSApIHsKKyAgICBpZiggcHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5X1E4IDwg
YWN0aXZpdHlfdGhyZXNob2xkICkgewogICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25h
bFR5cGUgPSBUWVBFX05PX1ZPSUNFX0FDVElWSVRZOwogICAgICAgICBwc0VuYy0+c0Ntbi5ub1Nw
ZWVjaENvdW50ZXIrKzsKLSAgICAgICAgaWYoIHBzRW5jLT5zQ21uLm5vU3BlZWNoQ291bnRlciA8
IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCApIHsKKyAgICAgICAgaWYoIHBzRW5jLT5zQ21u
Lm5vU3BlZWNoQ291bnRlciA8PSBOQl9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFggKSB7CiAgICAg
ICAgICAgICBwc0VuYy0+c0Ntbi5pbkRUWCA9IDA7CiAgICAgICAgIH0gZWxzZSBpZiggcHNFbmMt
PnNDbW4ubm9TcGVlY2hDb3VudGVyID4gTUFYX0NPTlNFQ1VUSVZFX0RUWCArIE5CX1NQRUVDSF9G
UkFNRVNfQkVGT1JFX0RUWCApIHsKICAgICAgICAgICAgIHBzRW5jLT5zQ21uLm5vU3BlZWNoQ291
bnRlciA9IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWDsKQEAgLTk0LDYgKzEwMiw5IEBAIG9w
dXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZJWCgKICAgICBvcHVzX2ludDE2ICAgZWNfcHJldkxh
Z0luZGV4X2NvcHk7CiAgICAgb3B1c19pbnQgICAgIGVjX3ByZXZTaWduYWxUeXBlX2NvcHk7CiAg
ICAgb3B1c19pbnQ4ICAgIExhc3RHYWluSW5kZXhfY29weTI7CisgICAgb3B1c19pbnQgICAgIGdh
aW5fbG9ja1sgTUFYX05CX1NVQkZSIF0gPSB7MH07CisgICAgb3B1c19pbnQxNiAgIGJlc3RfZ2Fp
bl9tdWx0WyBNQVhfTkJfU1VCRlIgXTsKKyAgICBvcHVzX2ludCAgICAgYmVzdF9zdW1bIE1BWF9O
Ql9TVUJGUiBdOwogICAgIFNBVkVfU1RBQ0s7CiAKICAgICAvKiBUaGlzIGlzIHRvdGFsbHkgdW5u
ZWNlc3NhcnkgYnV0IG1hbnkgY29tcGlsZXJzIChpbmNsdWRpbmcgZ2NjKSBhcmUgdG9vIGR1bWIg
dG8gcmVhbGlzZSBpdCAqLwpAQCAtMTE4LDcgKzEyOSw2IEBAIG9wdXNfaW50IHNpbGtfZW5jb2Rl
X2ZyYW1lX0ZJWCgKICAgICBzaWxrX21lbWNweSggeF9mcmFtZSArIExBX1NIQVBFX01TICogcHNF
bmMtPnNDbW4uZnNfa0h6LCBwc0VuYy0+c0Ntbi5pbnB1dEJ1ZiArIDEsIHBzRW5jLT5zQ21uLmZy
YW1lX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CiAKICAgICBpZiggIXBzRW5jLT5z
Q21uLnByZWZpbGxGbGFnICkgewotICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCB4ZndfUTMg
KTsKICAgICAgICAgVkFSREVDTCggb3B1c19pbnQxNiwgcmVzX3BpdGNoICk7CiAgICAgICAgIFZB
UkRFQ0woIG9wdXNfdWludDgsIGVjX2J1Zl9jb3B5ICk7CiAgICAgICAgIG9wdXNfaW50MTYgKnJl
c19waXRjaF9mcmFtZTsKQEAgLTEzMiw3ICsxNDIsNyBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9m
cmFtZV9GSVgoCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KICAgICAgICAgLyogRmluZCBwaXRjaCBsYWdzLCBpbml0aWFsIExQQyBhbmFseXNpcyAq
LwogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0g
ICAgICAgIHNpbGtfZmluZF9waXRjaF9sYWdzX0ZJWCggcHNFbmMsICZzRW5jQ3RybCwgcmVzX3Bp
dGNoLCB4X2ZyYW1lLCBwc0VuYy0+c0Ntbi5hcmNoICk7CisgICAgICAgIHNpbGtfZmluZF9waXRj
aF9sYWdzX0ZJWCggcHNFbmMsICZzRW5jQ3RybCwgcmVzX3BpdGNoLCB4X2ZyYW1lIC0gcHNFbmMt
PnNDbW4ubHRwX21lbV9sZW5ndGgsIHBzRW5jLT5zQ21uLmFyY2ggKTsKIAogICAgICAgICAvKioq
KioqKioqKioqKioqKioqKioqKioqLwogICAgICAgICAvKiBOb2lzZSBzaGFwZSBhbmFseXNpcyAq
LwpAQCAtMTQyLDIzICsxNTIsMTcgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRklYKAog
ICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqLwogICAgICAgICAvKiBGaW5kIGxpbmVhciBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cyAoTFBD
ICsgTFRQKSAqLwogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwotICAgICAgICBzaWxrX2ZpbmRfcHJlZF9jb2Vmc19GSVgoIHBzRW5j
LCAmc0VuY0N0cmwsIHJlc19waXRjaCwgeF9mcmFtZSwgY29uZENvZGluZyApOworICAgICAgICBz
aWxrX2ZpbmRfcHJlZF9jb2Vmc19GSVgoIHBzRW5jLCAmc0VuY0N0cmwsIHJlc19waXRjaF9mcmFt
ZSwgeF9mcmFtZSwgY29uZENvZGluZyApOwogCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqLwogICAgICAgICAvKiBQcm9jZXNzIGdhaW5zICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKiovCiAgICAgICAgIHNpbGtfcHJvY2Vzc19nYWluc19GSVgoIHBzRW5jLCAmc0Vu
Y0N0cmwsIGNvbmRDb2RpbmcgKTsKIAotICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCi0gICAgICAgIC8qIFByZWZpbHRlcmluZyBmb3Igbm9pc2Ugc2hh
cGVyICAgICAgICAgKi8KLSAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqLwotICAgICAgICBBTExPQyggeGZ3X1EzLCBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5n
dGgsIG9wdXNfaW50MzIgKTsKLSAgICAgICAgc2lsa19wcmVmaWx0ZXJfRklYKCBwc0VuYywgJnNF
bmNDdHJsLCB4ZndfUTMsIHhfZnJhbWUgKTsKLQogICAgICAgICAvKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogTG93IEJpdHJhdGUgUmVkdW5kYW50
IEVuY29kaW5nICAgICAgICovCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqLwotICAgICAgICBzaWxrX0xCUlJfZW5jb2RlX0ZJWCggcHNFbmMsICZzRW5j
Q3RybCwgeGZ3X1EzLCBjb25kQ29kaW5nICk7CisgICAgICAgIHNpbGtfTEJSUl9lbmNvZGVfRklY
KCBwc0VuYywgJnNFbmNDdHJsLCB4X2ZyYW1lLCBjb25kQ29kaW5nICk7CiAKICAgICAgICAgLyog
TG9vcCBvdmVyIHF1YW50aXplciBhbmQgZW50cm9weSBjb2RpbmcgdG8gY29udHJvbCBiaXRyYXRl
ICovCiAgICAgICAgIG1heEl0ZXIgPSA2OwpAQCAtMTk0LDE3ICsxOTgsMjEgQEAgb3B1c19pbnQg
c2lsa19lbmNvZGVfZnJhbWVfRklYKAogICAgICAgICAgICAgICAgIC8qIE5vaXNlIHNoYXBpbmcg
cXVhbnRpemF0aW9uICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICAvKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgICAgICAgICAgICAgaWYoIHBzRW5j
LT5zQ21uLm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gPiAxIHx8IHBzRW5jLT5zQ21uLndhcnBpbmdf
UTE2ID4gMCApIHsKLSAgICAgICAgICAgICAgICAgICAgc2lsa19OU1FfZGVsX2RlYyggJnBzRW5j
LT5zQ21uLCAmcHNFbmMtPnNDbW4uc05TUSwgJnBzRW5jLT5zQ21uLmluZGljZXMsIHhmd19RMywg
cHNFbmMtPnNDbW4ucHVsc2VzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgc0VuY0N0cmwu
UHJlZENvZWZfUTEyWyAwIF0sIHNFbmNDdHJsLkxUUENvZWZfUTE0LCBzRW5jQ3RybC5BUjJfUTEz
LCBzRW5jQ3RybC5IYXJtU2hhcGVHYWluX1ExNCwKKyAgICAgICAgICAgICAgICAgICAgc2lsa19O
U1FfZGVsX2RlYyggJnBzRW5jLT5zQ21uLCAmcHNFbmMtPnNDbW4uc05TUSwgJnBzRW5jLT5zQ21u
LmluZGljZXMsIHhfZnJhbWUsIHBzRW5jLT5zQ21uLnB1bHNlcywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHNFbmNDdHJsLlByZWRDb2VmX1ExMlsgMCBdLCBzRW5jQ3RybC5MVFBDb2VmX1Ex
NCwgc0VuY0N0cmwuQVJfUTEzLCBzRW5jQ3RybC5IYXJtU2hhcGVHYWluX1ExNCwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNFbmNDdHJsLlRpbHRfUTE0LCBzRW5jQ3RybC5MRl9zaHBfUTE0
LCBzRW5jQ3RybC5HYWluc19RMTYsIHNFbmNDdHJsLnBpdGNoTCwgc0VuY0N0cmwuTGFtYmRhX1Ex
MCwgc0VuY0N0cmwuTFRQX3NjYWxlX1ExNCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBz
RW5jLT5zQ21uLmFyY2ggKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
ICAgICAgICBzaWxrX05TUSggJnBzRW5jLT5zQ21uLCAmcHNFbmMtPnNDbW4uc05TUSwgJnBzRW5j
LT5zQ21uLmluZGljZXMsIHhmd19RMywgcHNFbmMtPnNDbW4ucHVsc2VzLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHNFbmNDdHJsLlByZWRDb2VmX1ExMlsgMCBdLCBzRW5jQ3RybC5MVFBD
b2VmX1ExNCwgc0VuY0N0cmwuQVIyX1ExMywgc0VuY0N0cmwuSGFybVNoYXBlR2Fpbl9RMTQsCisg
ICAgICAgICAgICAgICAgICAgIHNpbGtfTlNRKCAmcHNFbmMtPnNDbW4sICZwc0VuYy0+c0Ntbi5z
TlNRLCAmcHNFbmMtPnNDbW4uaW5kaWNlcywgeF9mcmFtZSwgcHNFbmMtPnNDbW4ucHVsc2VzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNFbmNDdHJsLlByZWRDb2VmX1ExMlsgMCBdLCBz
RW5jQ3RybC5MVFBDb2VmX1ExNCwgc0VuY0N0cmwuQVJfUTEzLCBzRW5jQ3RybC5IYXJtU2hhcGVH
YWluX1ExNCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzRW5jQ3RybC5UaWx0X1ExNCwg
c0VuY0N0cmwuTEZfc2hwX1ExNCwgc0VuY0N0cmwuR2FpbnNfUTE2LCBzRW5jQ3RybC5waXRjaEws
IHNFbmNDdHJsLkxhbWJkYV9RMTAsIHNFbmNDdHJsLkxUUF9zY2FsZV9RMTQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4uYXJjaCk7CiAgICAgICAgICAgICAgICAgfQog
CisgICAgICAgICAgICAgICAgaWYgKCBpdGVyID09IG1heEl0ZXIgJiYgIWZvdW5kX2xvd2VyICkg
eworICAgICAgICAgICAgICAgICAgICBzaWxrX21lbWNweSggJnNSYW5nZUVuY19jb3B5MiwgcHNS
YW5nZUVuYywgc2l6ZW9mKCBlY19lbmMgKSApOworICAgICAgICAgICAgICAgIH0KKwogICAgICAg
ICAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAg
ICAgICAgICAgICAgIC8qIEVuY29kZSBQYXJhbWV0ZXJzICAgICAgICAgICAgICAgICAgICAqLwog
ICAgICAgICAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
LwpAQCAtMjE4LDYgKzIyNiwzMyBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GSVgoCiAK
ICAgICAgICAgICAgICAgICBuQml0cyA9IGVjX3RlbGwoIHBzUmFuZ2VFbmMgKTsKIAorICAgICAg
ICAgICAgICAgIC8qIElmIHdlIHN0aWxsIGJ1c3QgYWZ0ZXIgdGhlIGxhc3QgaXRlcmF0aW9uLCBk
byBzb21lIGRhbWFnZSBjb250cm9sLiAqLworICAgICAgICAgICAgICAgIGlmICggaXRlciA9PSBt
YXhJdGVyICYmICFmb3VuZF9sb3dlciAmJiBuQml0cyA+IG1heEJpdHMgKSB7CisgICAgICAgICAg
ICAgICAgICAgIHNpbGtfbWVtY3B5KCBwc1JhbmdlRW5jLCAmc1JhbmdlRW5jX2NvcHkyLCBzaXpl
b2YoIGVjX2VuYyApICk7CisKKyAgICAgICAgICAgICAgICAgICAgLyogS2VlcCBnYWlucyB0aGUg
c2FtZSBhcyB0aGUgbGFzdCBmcmFtZS4gKi8KKyAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnNT
aGFwZS5MYXN0R2FpbkluZGV4ID0gc0VuY0N0cmwubGFzdEdhaW5JbmRleFByZXY7CisgICAgICAg
ICAgICAgICAgICAgIGZvciAoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGkrKyAp
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMuR2FpbnNJbmRp
Y2VzWyBpIF0gPSA0OworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAg
IGlmIChjb25kQ29kaW5nICE9IENPREVfQ09ORElUSU9OQUxMWSkgeworICAgICAgICAgICAgICAg
ICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2VzLkdhaW5zSW5kaWNlc1sgMCBdID0gc0VuY0N0cmwu
bGFzdEdhaW5JbmRleFByZXY7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICAgICAgcHNFbmMtPnNDbW4uZWNfcHJldkxhZ0luZGV4ID0gZWNfcHJldkxhZ0luZGV4X2NvcHk7
CisgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmVjX3ByZXZTaWduYWxUeXBlID0gZWNf
cHJldlNpZ25hbFR5cGVfY29weTsKKyAgICAgICAgICAgICAgICAgICAgLyogQ2xlYXIgYWxsIHB1
bHNlcy4gKi8KKyAgICAgICAgICAgICAgICAgICAgZm9yICggaSA9IDA7IGkgPCBwc0VuYy0+c0Nt
bi5mcmFtZV9sZW5ndGg7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5z
Q21uLnB1bHNlc1sgaSBdID0gMDsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICAgICAgICAgIHNpbGtfZW5jb2RlX2luZGljZXMoICZwc0VuYy0+c0NtbiwgcHNSYW5nZUVuYywg
cHNFbmMtPnNDbW4ubkZyYW1lc0VuY29kZWQsIDAsIGNvbmRDb2RpbmcgKTsKKworICAgICAgICAg
ICAgICAgICAgICBzaWxrX2VuY29kZV9wdWxzZXMoIHBzUmFuZ2VFbmMsIHBzRW5jLT5zQ21uLmlu
ZGljZXMuc2lnbmFsVHlwZSwgcHNFbmMtPnNDbW4uaW5kaWNlcy5xdWFudE9mZnNldFR5cGUsCisg
ICAgICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5wdWxzZXMsIHBzRW5jLT5zQ21uLmZy
YW1lX2xlbmd0aCApOworCisgICAgICAgICAgICAgICAgICAgIG5CaXRzID0gZWNfdGVsbCggcHNS
YW5nZUVuYyApOworICAgICAgICAgICAgICAgIH0KKwogICAgICAgICAgICAgICAgIGlmKCB1c2VD
QlIgPT0gMCAmJiBpdGVyID09IDAgJiYgbkJpdHMgPD0gbWF4Qml0cyApIHsKICAgICAgICAgICAg
ICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQpAQCAtMjY1LDE1ICszMDAsMzUgQEAg
b3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRklYKAogICAgICAgICAgICAgICAgIGJyZWFrOwog
ICAgICAgICAgICAgfQogCisgICAgICAgICAgICBpZiAoICFmb3VuZF9sb3dlciAmJiBuQml0cyA+
IG1heEJpdHMgKSB7CisgICAgICAgICAgICAgICAgaW50IGo7CisgICAgICAgICAgICAgICAgZm9y
ICggaSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaSsrICkgeworICAgICAgICAgICAg
ICAgICAgICBpbnQgc3VtPTA7CisgICAgICAgICAgICAgICAgICAgIGZvciAoIGogPSBpKnBzRW5j
LT5zQ21uLnN1YmZyX2xlbmd0aDsgaiA8IChpKzEpKnBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aDsg
aisrICkgeworICAgICAgICAgICAgICAgICAgICAgICAgc3VtICs9IGFicyggcHNFbmMtPnNDbW4u
cHVsc2VzW2pdICk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
aWYgKCBpdGVyID09IDAgfHwgKHN1bSA8IGJlc3Rfc3VtW2ldICYmICFnYWluX2xvY2tbaV0pICkg
eworICAgICAgICAgICAgICAgICAgICAgICAgYmVzdF9zdW1baV0gPSBzdW07CisgICAgICAgICAg
ICAgICAgICAgICAgICBiZXN0X2dhaW5fbXVsdFtpXSA9IGdhaW5NdWx0X1E4OworICAgICAgICAg
ICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICAgICAgZ2Fpbl9sb2NrW2ld
ID0gMTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIGlmKCAoIGZvdW5kX2xvd2VyICYgZm91bmRfdXBwZXIgKSA9PSAw
ICkgewogICAgICAgICAgICAgICAgIC8qIEFkanVzdCBnYWluIGFjY29yZGluZyB0byBoaWdoLXJh
dGUgcmF0ZS9kaXN0b3J0aW9uIGN1cnZlICovCi0gICAgICAgICAgICAgICAgb3B1c19pbnQzMiBn
YWluX2ZhY3Rvcl9RMTY7Ci0gICAgICAgICAgICAgICAgZ2Fpbl9mYWN0b3JfUTE2ID0gc2lsa19s
b2cybGluKCBzaWxrX0xTSElGVCggbkJpdHMgLSBtYXhCaXRzLCA3ICkgLyBwc0VuYy0+c0Ntbi5m
cmFtZV9sZW5ndGggKyBTSUxLX0ZJWF9DT05TVCggMTYsIDcgKSApOwotICAgICAgICAgICAgICAg
IGdhaW5fZmFjdG9yX1ExNiA9IHNpbGtfbWluXzMyKCBnYWluX2ZhY3Rvcl9RMTYsIFNJTEtfRklY
X0NPTlNUKCAyLCAxNiApICk7CiAgICAgICAgICAgICAgICAgaWYoIG5CaXRzID4gbWF4Qml0cyAp
IHsKLSAgICAgICAgICAgICAgICAgICAgZ2Fpbl9mYWN0b3JfUTE2ID0gc2lsa19tYXhfMzIoIGdh
aW5fZmFjdG9yX1ExNiwgU0lMS19GSVhfQ09OU1QoIDEuMywgMTYgKSApOworICAgICAgICAgICAg
ICAgICAgICBpZiAoZ2Fpbk11bHRfUTggPCAxNjM4NCkgeworICAgICAgICAgICAgICAgICAgICAg
ICAgZ2Fpbk11bHRfUTggKj0gMjsKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIGdhaW5NdWx0X1E4ID0gMzI3Njc7CisgICAgICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICBvcHVz
X2ludDMyIGdhaW5fZmFjdG9yX1ExNjsKKyAgICAgICAgICAgICAgICAgICAgZ2Fpbl9mYWN0b3Jf
UTE2ID0gc2lsa19sb2cybGluKCBzaWxrX0xTSElGVCggbkJpdHMgLSBtYXhCaXRzLCA3ICkgLyBw
c0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGggKyBTSUxLX0ZJWF9DT05TVCggMTYsIDcgKSApOworICAg
ICAgICAgICAgICAgICAgICBnYWluTXVsdF9ROCA9IHNpbGtfU01VTFdCKCBnYWluX2ZhY3Rvcl9R
MTYsIGdhaW5NdWx0X1E4ICk7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGdh
aW5NdWx0X1E4ID0gc2lsa19TTVVMV0IoIGdhaW5fZmFjdG9yX1ExNiwgZ2Fpbk11bHRfUTggKTsK
KwogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAvKiBBZGp1c3QgZ2FpbiBi
eSBpbnRlcnBvbGF0aW5nICovCiAgICAgICAgICAgICAgICAgZ2Fpbk11bHRfUTggPSBnYWluTXVs
dF9sb3dlciArIHNpbGtfRElWMzJfMTYoIHNpbGtfTVVMKCBnYWluTXVsdF91cHBlciAtIGdhaW5N
dWx0X2xvd2VyLCBtYXhCaXRzIC0gbkJpdHNfbG93ZXIgKSwgbkJpdHNfdXBwZXIgLSBuQml0c19s
b3dlciApOwpAQCAtMjg3LDcgKzM0MiwxMyBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9G
SVgoCiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBwc0VuYy0+
c0Ntbi5uYl9zdWJmcjsgaSsrICkgewotICAgICAgICAgICAgICAgIHNFbmNDdHJsLkdhaW5zX1Ex
NlsgaSBdID0gc2lsa19MU0hJRlRfU0FUMzIoIHNpbGtfU01VTFdCKCBzRW5jQ3RybC5HYWluc1Vu
cV9RMTZbIGkgXSwgZ2Fpbk11bHRfUTggKSwgOCApOworICAgICAgICAgICAgICAgIG9wdXNfaW50
MTYgdG1wOworICAgICAgICAgICAgICAgIGlmICggZ2Fpbl9sb2NrW2ldICkgeworICAgICAgICAg
ICAgICAgICAgICB0bXAgPSBiZXN0X2dhaW5fbXVsdFtpXTsKKyAgICAgICAgICAgICAgICB9IGVs
c2UgeworICAgICAgICAgICAgICAgICAgICB0bXAgPSBnYWluTXVsdF9RODsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgc0VuY0N0cmwuR2FpbnNfUTE2WyBpIF0gPSBzaWxrX0xT
SElGVF9TQVQzMiggc2lsa19TTVVMV0IoIHNFbmNDdHJsLkdhaW5zVW5xX1ExNlsgaSBdLCB0bXAg
KSwgOCApOwogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICAvKiBRdWFudGl6ZSBnYWlucyAq
LwpAQCAtMzMxLDcgKzM5Miw3IEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZJWCgKIHN0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTEJSUl9lbmNvZGVfRklYKAogICAgIHNpbGtfZW5j
b2Rlcl9zdGF0ZV9GSVggICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIEZJWCBlbmNvZGVyIHN0YXRlICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19lbmNvZGVyX2Nv
bnRyb2xfRklYICAgICAgICAqcHNFbmNDdHJsLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSS9PICBQb2ludGVyIHRvIFNpbGsgRklYIGVuY29kZXIgY29udHJvbCBzdHJ1Y3QgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAg
ICAgICAgICAgIHhmd19RM1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IElucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAg
ICAgeDE2W10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQg
c2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBjb25k
Q29kaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBUaGUgdHlwZSBvZiBj
b25kaXRpb25hbCBjb2RpbmcgdXNlZCBzbyBmYXIgZm9yIHRoaXMgZnJhbWUgICAgICAgICAgICAg
ICAgICAgKi8KICkKIHsKQEAgLTM3MCwxNCArNDMxLDE0IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2
b2lkIHNpbGtfTEJSUl9lbmNvZGVfRklYKAogICAgICAgICAvKiBOb2lzZSBzaGFwaW5nIHF1YW50
aXphdGlvbiAgICAgICAgICAgICovCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKi8KICAgICAgICAgaWYoIHBzRW5jLT5zQ21uLm5TdGF0ZXNEZWxheWVk
RGVjaXNpb24gPiAxIHx8IHBzRW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKLSAgICAgICAg
ICAgIHNpbGtfTlNRX2RlbF9kZWMoICZwc0VuYy0+c0NtbiwgJnNOU1FfTEJSUiwgcHNJbmRpY2Vz
X0xCUlIsIHhmd19RMywKKyAgICAgICAgICAgIHNpbGtfTlNRX2RlbF9kZWMoICZwc0VuYy0+c0Nt
biwgJnNOU1FfTEJSUiwgcHNJbmRpY2VzX0xCUlIsIHgxNiwKICAgICAgICAgICAgICAgICBwc0Vu
Yy0+c0Ntbi5wdWxzZXNfTEJSUlsgcHNFbmMtPnNDbW4ubkZyYW1lc0VuY29kZWQgXSwgcHNFbmND
dHJsLT5QcmVkQ29lZl9RMTJbIDAgXSwgcHNFbmNDdHJsLT5MVFBDb2VmX1ExNCwKLSAgICAgICAg
ICAgICAgICBwc0VuY0N0cmwtPkFSMl9RMTMsIHBzRW5jQ3RybC0+SGFybVNoYXBlR2Fpbl9RMTQs
IHBzRW5jQ3RybC0+VGlsdF9RMTQsIHBzRW5jQ3RybC0+TEZfc2hwX1ExNCwKKyAgICAgICAgICAg
ICAgICBwc0VuY0N0cmwtPkFSX1ExMywgcHNFbmNDdHJsLT5IYXJtU2hhcGVHYWluX1ExNCwgcHNF
bmNDdHJsLT5UaWx0X1ExNCwgcHNFbmNDdHJsLT5MRl9zaHBfUTE0LAogICAgICAgICAgICAgICAg
IHBzRW5jQ3RybC0+R2FpbnNfUTE2LCBwc0VuY0N0cmwtPnBpdGNoTCwgcHNFbmNDdHJsLT5MYW1i
ZGFfUTEwLCBwc0VuY0N0cmwtPkxUUF9zY2FsZV9RMTQsIHBzRW5jLT5zQ21uLmFyY2ggKTsKICAg
ICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHNpbGtfTlNRKCAmcHNFbmMtPnNDbW4sICZzTlNR
X0xCUlIsIHBzSW5kaWNlc19MQlJSLCB4ZndfUTMsCisgICAgICAgICAgICBzaWxrX05TUSggJnBz
RW5jLT5zQ21uLCAmc05TUV9MQlJSLCBwc0luZGljZXNfTEJSUiwgeDE2LAogICAgICAgICAgICAg
ICAgIHBzRW5jLT5zQ21uLnB1bHNlc19MQlJSWyBwc0VuYy0+c0Ntbi5uRnJhbWVzRW5jb2RlZCBd
LCBwc0VuY0N0cmwtPlByZWRDb2VmX1ExMlsgMCBdLCBwc0VuY0N0cmwtPkxUUENvZWZfUTE0LAot
ICAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+QVIyX1ExMywgcHNFbmNDdHJsLT5IYXJtU2hhcGVH
YWluX1ExNCwgcHNFbmNDdHJsLT5UaWx0X1ExNCwgcHNFbmNDdHJsLT5MRl9zaHBfUTE0LAorICAg
ICAgICAgICAgICAgIHBzRW5jQ3RybC0+QVJfUTEzLCBwc0VuY0N0cmwtPkhhcm1TaGFwZUdhaW5f
UTE0LCBwc0VuY0N0cmwtPlRpbHRfUTE0LCBwc0VuY0N0cmwtPkxGX3NocF9RMTQsCiAgICAgICAg
ICAgICAgICAgcHNFbmNDdHJsLT5HYWluc19RMTYsIHBzRW5jQ3RybC0+cGl0Y2hMLCBwc0VuY0N0
cmwtPkxhbWJkYV9RMTAsIHBzRW5jQ3RybC0+TFRQX3NjYWxlX1ExNCwgcHNFbmMtPnNDbW4uYXJj
aCApOwogICAgICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX0xQQ19GSVguYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9maXhlZC9maW5kX0xQQ19GSVguYwppbmRleCBlMTFjZGM4NmU2N2QwZjgzNmM3NWU0MDMz
YjllZTJiMjkxNTM5NGE4Li5lNTViNjNhYzMyOWEyMTRkYzVhYzlmZjQwODkzOTQzZTMzYWQwODNk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9MUENfRklYLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2Zp
bmRfTFBDX0ZJWC5jCkBAIC05Miw3ICs5Miw3IEBAIHZvaWQgc2lsa19maW5kX0xQQ19GSVgoCiAg
ICAgICAgICAgICBzaWxrX2ludGVycG9sYXRlKCBOTFNGMF9RMTUsIHBzRW5jQy0+cHJldl9OTFNG
cV9RMTUsIE5MU0ZfUTE1LCBrLCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciApOwogCiAgICAgICAg
ICAgICAvKiBDb252ZXJ0IHRvIExQQyBmb3IgcmVzaWR1YWwgZW5lcmd5IGV2YWx1YXRpb24gKi8K
LSAgICAgICAgICAgIHNpbGtfTkxTRjJBKCBhX3RtcF9RMTIsIE5MU0YwX1ExNSwgcHNFbmNDLT5w
cmVkaWN0TFBDT3JkZXIgKTsKKyAgICAgICAgICAgIHNpbGtfTkxTRjJBKCBhX3RtcF9RMTIsIE5M
U0YwX1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIsIHBzRW5jQy0+YXJjaCApOwogCiAgICAg
ICAgICAgICAvKiBDYWxjdWxhdGUgcmVzaWR1YWwgZW5lcmd5IHdpdGggTkxTRiBpbnRlcnBvbGF0
aW9uICovCiAgICAgICAgICAgICBzaWxrX0xQQ19hbmFseXNpc19maWx0ZXIoIExQQ19yZXMsIHgs
IGFfdG1wX1ExMiwgMiAqIHN1YmZyX2xlbmd0aCwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIsIHBz
RW5jQy0+YXJjaCApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfTFRQX0ZJWC5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2ZpeGVkL2ZpbmRfTFRQX0ZJWC5jCmluZGV4IDEzMTRhMjgxMzc1YmQ2OWM3MjcwY2EyNWZkZDkx
ZTg4ZTM4YzBjNzYuLjYyZDRhZmIyNTA3NDA3MjY3MTEyZWM0Mzk0NmFjZWVlZWRiMjVjMjMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9maXhlZC9maW5kX0xUUF9GSVguYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9M
VFBfRklYLmMKQEAgLTMyLDIxNCArMzIsNjggQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAjaW5jbHVkZSAibWFpbl9GSVguaCIKICNpbmNsdWRlICJ0dW5pbmdfcGFyYW1ldGVycy5oIgog
Ci0vKiBIZWFkIHJvb20gZm9yIGNvcnJlbGF0aW9ucyAqLwotI2RlZmluZSBMVFBfQ09SUlNfSEVB
RF9ST09NICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyCi0KLXZvaWQgc2lsa19maXRfTFRQ
KAotICAgIG9wdXNfaW50MzIgTFRQX2NvZWZzX1ExNlsgTFRQX09SREVSIF0sCi0gICAgb3B1c19p
bnQxNiBMVFBfY29lZnNfUTE0WyBMVFBfT1JERVIgXQotKTsKLQogdm9pZCBzaWxrX2ZpbmRfTFRQ
X0ZJWCgKLSAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgICAgIGJfUTE0WyBNQVhfTkJf
U1VCRlIgKiBMVFBfT1JERVIgXSwgICAgICAvKiBPICAgIExUUCBjb2VmcyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgV0xUUFsgTUFYX05CX1NVQkZSICog
TFRQX09SREVSICogTFRQX09SREVSIF0sIC8qIE8gICAgV2VpZ2h0IGZvciBMVFAgcXVhbnRpemF0
aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1
c19pbnQgICAgICAgICAgICAgICAgICAgICAgICAqTFRQcmVkQ29kR2Fpbl9RNywgICAgICAgICAg
ICAgICAgICAgICAgLyogTyAgICBMVFAgY29kaW5nIGdhaW4gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVz
X2ludDE2ICAgICAgICAgICAgICAgIHJfbHBjW10sICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIHJlc2lkdWFsIHNpZ25hbCBhZnRlciBMUEMgc2lnbmFsICsgc3RhdGUgZm9y
IGZpcnN0IDEwIG1zICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAg
ICAgICAgICAgICAgICAgWFhMVFBfUTE3WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBf
T1JERVIgXSwgLyogTyAgICBDb3JyZWxhdGlvbiBtYXRyaXggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAg
ICAgICAgICB4WExUUF9RMTdbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdLCAgLyogTyAgICBD
b3JyZWxhdGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAg
IHJfcHRyW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJlc2lkdWFs
IHNpZ25hbCBhZnRlciBMUEMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbGFnWyBN
QVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFRQIGxhZ3MgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICAgICBXZ2h0X1ExNVsgTUFY
X05CX1NVQkZSIF0sICAgICAgICAgICAgICAgLyogSSAgICB3ZWlnaHRzICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
LSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIHN1YmZyX2xlbmd0aCwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIHN1YmZyYW1lIGxlbmd0aCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbmJfc3ViZnIsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgICAgICBtZW1fb2Zmc2V0LCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBudW1iZXIgb2Ygc2FtcGxlcyBpbiBMVFAgbWVtb3J5ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAg
ICAgICAgICAgICAgICAgIGNvcnJfcnNoaWZ0c1sgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAv
KiBPICAgIHJpZ2h0IHNoaWZ0cyBhcHBsaWVkIHRvIGNvcnJlbGF0aW9ucyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgc3ViZnJfbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
U3ViZnJhbWUgbGVuZ3RoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1iZXIg
b2Ygc3ViZnJhbWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2gg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hp
dGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwogKQogewotICAgIG9wdXNfaW50ICAgaSwgaywgbHNoaWZ0OwotICAgIGNvbnN0IG9w
dXNfaW50MTYgKnJfcHRyLCAqbGFnX3B0cjsKLSAgICBvcHVzX2ludDE2ICpiX1ExNF9wdHI7Ci0K
LSAgICBvcHVzX2ludDMyIHJlZ3U7Ci0gICAgb3B1c19pbnQzMiAqV0xUUF9wdHI7Ci0gICAgb3B1
c19pbnQzMiBiX1ExNlsgTFRQX09SREVSIF0sIGRlbHRhX2JfUTE0WyBMVFBfT1JERVIgXSwgZF9R
MTRbIE1BWF9OQl9TVUJGUiBdLCBucmdbIE1BWF9OQl9TVUJGUiBdLCBnX1EyNjsKLSAgICBvcHVz
X2ludDMyIHdbIE1BWF9OQl9TVUJGUiBdLCBXTFRQX21heCwgbWF4X2Fic19kX1ExNCwgbWF4X3df
Yml0czsKLQotICAgIG9wdXNfaW50MzIgdGVtcDMyLCBkZW5vbTMyOwotICAgIG9wdXNfaW50ICAg
ZXh0cmFfc2hpZnRzOwotICAgIG9wdXNfaW50ICAgcnJfc2hpZnRzLCBtYXhSc2hpZnRzLCBtYXhS
c2hpZnRzX3d4dHJhLCBMWnM7Ci0gICAgb3B1c19pbnQzMiBMUENfcmVzX25yZywgTFBDX0xUUF9y
ZXNfbnJnLCBkaXZfUTE2OwotICAgIG9wdXNfaW50MzIgUnJbIExUUF9PUkRFUiBdLCByclsgTUFY
X05CX1NVQkZSIF07Ci0gICAgb3B1c19pbnQzMiB3ZCwgbV9RMTI7Ci0KLSAgICBiX1ExNF9wdHIg
PSBiX1ExNDsKLSAgICBXTFRQX3B0ciAgPSBXTFRQOwotICAgIHJfcHRyICAgICA9ICZyX2xwY1sg
bWVtX29mZnNldCBdOworICAgIG9wdXNfaW50ICAgaSwgaywgZXh0cmFfc2hpZnRzOworICAgIG9w
dXNfaW50ICAgeHhfc2hpZnRzLCB4WF9zaGlmdHMsIFhYX3NoaWZ0czsKKyAgICBjb25zdCBvcHVz
X2ludDE2ICpsYWdfcHRyOworICAgIG9wdXNfaW50MzIgKlhYTFRQX1ExN19wdHIsICp4WExUUF9R
MTdfcHRyOworICAgIG9wdXNfaW50MzIgeHgsIG5yZywgdGVtcDsKKworICAgIHhYTFRQX1ExN19w
dHIgPSB4WExUUF9RMTc7CisgICAgWFhMVFBfUTE3X3B0ciA9IFhYTFRQX1ExNzsKICAgICBmb3Io
IGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKICAgICAgICAgbGFnX3B0ciA9IHJfcHRyIC0g
KCBsYWdbIGsgXSArIExUUF9PUkRFUiAvIDIgKTsKIAotICAgICAgICBzaWxrX3N1bV9zcXJfc2hp
ZnQoICZyclsgayBdLCAmcnJfc2hpZnRzLCByX3B0ciwgc3ViZnJfbGVuZ3RoICk7IC8qIHJyWyBr
IF0gaW4gUSggLXJyX3NoaWZ0cyApICovCi0KLSAgICAgICAgLyogQXNzdXJlIGhlYWRyb29tICov
Ci0gICAgICAgIExacyA9IHNpbGtfQ0xaMzIoIHJyW2tdICk7Ci0gICAgICAgIGlmKCBMWnMgPCBM
VFBfQ09SUlNfSEVBRF9ST09NICkgewotICAgICAgICAgICAgcnJbIGsgXSA9IHNpbGtfUlNISUZU
X1JPVU5EKCByclsgayBdLCBMVFBfQ09SUlNfSEVBRF9ST09NIC0gTFpzICk7Ci0gICAgICAgICAg
ICBycl9zaGlmdHMgKz0gKCBMVFBfQ09SUlNfSEVBRF9ST09NIC0gTFpzICk7Ci0gICAgICAgIH0K
LSAgICAgICAgY29ycl9yc2hpZnRzWyBrIF0gPSBycl9zaGlmdHM7Ci0gICAgICAgIHNpbGtfY29y
ck1hdHJpeF9GSVgoIGxhZ19wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09SREVSLCBMVFBfQ09SUlNf
SEVBRF9ST09NLCBXTFRQX3B0ciwgJmNvcnJfcnNoaWZ0c1sgayBdLCBhcmNoICk7ICAvKiBXTFRQ
X2ZpeF9wdHIgaW4gUSggLWNvcnJfcnNoaWZ0c1sgayBdICkgKi8KLQotICAgICAgICAvKiBUaGUg
Y29ycmVsYXRpb24gdmVjdG9yIGFsd2F5cyBoYXMgbG93ZXIgbWF4IGFicyB2YWx1ZSB0aGFuIHJy
IGFuZC9vciBSUiBzbyBoZWFkIHJvb20gaXMgYXNzdXJlZCAqLwotICAgICAgICBzaWxrX2NvcnJW
ZWN0b3JfRklYKCBsYWdfcHRyLCByX3B0ciwgc3ViZnJfbGVuZ3RoLCBMVFBfT1JERVIsIFJyLCBj
b3JyX3JzaGlmdHNbIGsgXSwgYXJjaCApOyAgLyogUnJfZml4X3B0ciAgIGluIFEoIC1jb3JyX3Jz
aGlmdHNbIGsgXSApICovCi0gICAgICAgIGlmKCBjb3JyX3JzaGlmdHNbIGsgXSA+IHJyX3NoaWZ0
cyApIHsKLSAgICAgICAgICAgIHJyWyBrIF0gPSBzaWxrX1JTSElGVCggcnJbIGsgXSwgY29ycl9y
c2hpZnRzWyBrIF0gLSBycl9zaGlmdHMgKTsgLyogcnJbIGsgXSBpbiBRKCAtY29ycl9yc2hpZnRz
WyBrIF0gKSAqLworICAgICAgICBzaWxrX3N1bV9zcXJfc2hpZnQoICZ4eCwgJnh4X3NoaWZ0cywg
cl9wdHIsIHN1YmZyX2xlbmd0aCArIExUUF9PUkRFUiApOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiB4eCBpbiBRKCAteHhfc2hpZnRzICkgKi8KKyAgICAgICAgc2lsa19jb3JyTWF0cml4
X0ZJWCggbGFnX3B0ciwgc3ViZnJfbGVuZ3RoLCBMVFBfT1JERVIsIFhYTFRQX1ExN19wdHIsICZu
cmcsICZYWF9zaGlmdHMsIGFyY2ggKTsgICAgLyogWFhMVFBfUTE3X3B0ciBhbmQgbnJnIGluIFEo
IC1YWF9zaGlmdHMgKSAqLworICAgICAgICBleHRyYV9zaGlmdHMgPSB4eF9zaGlmdHMgLSBYWF9z
aGlmdHM7CisgICAgICAgIGlmKCBleHRyYV9zaGlmdHMgPiAwICkgeworICAgICAgICAgICAgLyog
U2hpZnQgWFggKi8KKyAgICAgICAgICAgIHhYX3NoaWZ0cyA9IHh4X3NoaWZ0czsKKyAgICAgICAg
ICAgIGZvciggaSA9IDA7IGkgPCBMVFBfT1JERVIgKiBMVFBfT1JERVI7IGkrKyApIHsKKyAgICAg
ICAgICAgICAgICBYWExUUF9RMTdfcHRyWyBpIF0gPSBzaWxrX1JTSElGVDMyKCBYWExUUF9RMTdf
cHRyWyBpIF0sIGV4dHJhX3NoaWZ0cyApOyAgICAgICAgICAgICAgLyogUSggLXhYX3NoaWZ0cyAp
ICovCisgICAgICAgICAgICB9CisgICAgICAgICAgICBucmcgPSBzaWxrX1JTSElGVDMyKCBucmcs
IGV4dHJhX3NoaWZ0cyApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIFEoIC14WF9zaGlmdHMgKSAqLworICAgICAgICB9IGVsc2UgaWYoIGV4dHJhX3No
aWZ0cyA8IDAgKSB7CisgICAgICAgICAgICAvKiBTaGlmdCB4eCAqLworICAgICAgICAgICAgeFhf
c2hpZnRzID0gWFhfc2hpZnRzOworICAgICAgICAgICAgeHggPSBzaWxrX1JTSElGVDMyKCB4eCwg
LWV4dHJhX3NoaWZ0cyApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBRKCAteFhfc2hpZnRzICkgKi8KKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgIHhYX3NoaWZ0cyA9IHh4X3NoaWZ0czsKICAgICAgICAgfQotICAgICAgICBzaWxrX2Fzc2Vy
dCggcnJbIGsgXSA+PSAwICk7Ci0KLSAgICAgICAgcmVndSA9IDE7Ci0gICAgICAgIHJlZ3UgPSBz
aWxrX1NNTEFXQiggcmVndSwgcnJbIGsgXSwgU0lMS19GSVhfQ09OU1QoIExUUF9EQU1QSU5HLzMs
IDE2ICkgKTsKLSAgICAgICAgcmVndSA9IHNpbGtfU01MQVdCKCByZWd1LCBtYXRyaXhfcHRyKCBX
TFRQX3B0ciwgMCwgMCwgTFRQX09SREVSICksIFNJTEtfRklYX0NPTlNUKCBMVFBfREFNUElORy8z
LCAxNiApICk7Ci0gICAgICAgIHJlZ3UgPSBzaWxrX1NNTEFXQiggcmVndSwgbWF0cml4X3B0cigg
V0xUUF9wdHIsIExUUF9PUkRFUi0xLCBMVFBfT1JERVItMSwgTFRQX09SREVSICksIFNJTEtfRklY
X0NPTlNUKCBMVFBfREFNUElORy8zLCAxNiApICk7Ci0gICAgICAgIHNpbGtfcmVndWxhcml6ZV9j
b3JyZWxhdGlvbnNfRklYKCBXTFRQX3B0ciwgJnJyW2tdLCByZWd1LCBMVFBfT1JERVIgKTsKLQot
ICAgICAgICBzaWxrX3NvbHZlX0xETF9GSVgoIFdMVFBfcHRyLCBMVFBfT1JERVIsIFJyLCBiX1Ex
NiApOyAvKiBXTFRQX2ZpeF9wdHIgYW5kIFJyX2ZpeF9wdHIgYm90aCBpbiBRKC1jb3JyX3JzaGlm
dHNba10pICovCi0KLSAgICAgICAgLyogTGltaXQgYW5kIHN0b3JlIGluIFExNCAqLwotICAgICAg
ICBzaWxrX2ZpdF9MVFAoIGJfUTE2LCBiX1ExNF9wdHIgKTsKLQotICAgICAgICAvKiBDYWxjdWxh
dGUgcmVzaWR1YWwgZW5lcmd5ICovCi0gICAgICAgIG5yZ1sgayBdID0gc2lsa19yZXNpZHVhbF9l
bmVyZ3kxNl9jb3Zhcl9GSVgoIGJfUTE0X3B0ciwgV0xUUF9wdHIsIFJyLCByclsgayBdLCBMVFBf
T1JERVIsIDE0ICk7IC8qIG5yZ19maXggaW4gUSggLWNvcnJfcnNoaWZ0c1sgayBdICkgKi8KLQot
ICAgICAgICAvKiB0ZW1wID0gV2dodFsgayBdIC8gKCBucmdbIGsgXSAqIFdnaHRbIGsgXSArIDAu
MDFmICogc3ViZnJfbGVuZ3RoICk7ICovCi0gICAgICAgIGV4dHJhX3NoaWZ0cyA9IHNpbGtfbWlu
X2ludCggY29ycl9yc2hpZnRzWyBrIF0sIExUUF9DT1JSU19IRUFEX1JPT00gKTsKLSAgICAgICAg
ZGVub20zMiA9IHNpbGtfTFNISUZUX1NBVDMyKCBzaWxrX1NNVUxXQiggbnJnWyBrIF0sIFdnaHRf
UTE1WyBrIF0gKSwgMSArIGV4dHJhX3NoaWZ0cyApICsgLyogUSggLWNvcnJfcnNoaWZ0c1sgayBd
ICsgZXh0cmFfc2hpZnRzICkgKi8KLSAgICAgICAgICAgIHNpbGtfUlNISUZUKCBzaWxrX1NNVUxX
QiggKG9wdXNfaW50MzIpc3ViZnJfbGVuZ3RoLCA2NTUgKSwgY29ycl9yc2hpZnRzWyBrIF0gLSBl
eHRyYV9zaGlmdHMgKTsgICAgLyogUSggLWNvcnJfcnNoaWZ0c1sgayBdICsgZXh0cmFfc2hpZnRz
ICkgKi8KLSAgICAgICAgZGVub20zMiA9IHNpbGtfbWF4KCBkZW5vbTMyLCAxICk7Ci0gICAgICAg
IHNpbGtfYXNzZXJ0KCAoKG9wdXNfaW50NjQpV2dodF9RMTVbIGsgXSA8PCAxNiApIDwgc2lsa19p
bnQzMl9NQVggKTsgICAgICAgICAgICAgICAgICAgICAgIC8qIFdnaHQgYWx3YXlzIDwgMC41IGlu
IFEwICovCi0gICAgICAgIHRlbXAzMiA9IHNpbGtfRElWMzIoIHNpbGtfTFNISUZUKCAob3B1c19p
bnQzMilXZ2h0X1ExNVsgayBdLCAxNiApLCBkZW5vbTMyICk7ICAgICAgICAgICAgIC8qIFEoIDE1
ICsgMTYgKyBjb3JyX3JzaGlmdHNba10gLSBleHRyYV9zaGlmdHMgKSAqLwotICAgICAgICB0ZW1w
MzIgPSBzaWxrX1JTSElGVCggdGVtcDMyLCAzMSArIGNvcnJfcnNoaWZ0c1sgayBdIC0gZXh0cmFf
c2hpZnRzIC0gMjYgKTsgICAgICAgICAgICAgICAvKiBRMjYgKi8KKyAgICAgICAgc2lsa19jb3Jy
VmVjdG9yX0ZJWCggbGFnX3B0ciwgcl9wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09SREVSLCB4WExU
UF9RMTdfcHRyLCB4WF9zaGlmdHMsIGFyY2ggKTsgICAgLyogeFhMVFBfUTE3X3B0ciBpbiBRKCAt
eFhfc2hpZnRzICkgKi8KIAotICAgICAgICAvKiBMaW1pdCB0ZW1wIHN1Y2ggdGhhdCB0aGUgYmVs
b3cgc2NhbGluZyBuZXZlciB3cmFwcyBhcm91bmQgKi8KLSAgICAgICAgV0xUUF9tYXggPSAwOwor
ICAgICAgICAvKiBBdCB0aGlzIHBvaW50IGFsbCBjb3JyZWxhdGlvbnMgYXJlIGluIFEoLXhYX3No
aWZ0cykgKi8KKyAgICAgICAgdGVtcCA9IHNpbGtfU01MQVdCKCAxLCBucmcsIFNJTEtfRklYX0NP
TlNUKCBMVFBfQ09SUl9JTlZfTUFYLCAxNiApICk7CisgICAgICAgIHRlbXAgPSBzaWxrX21heCgg
dGVtcCwgeHggKTsKK1RJQyhkaXYpCisjaWYgMAogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQ
X09SREVSICogTFRQX09SREVSOyBpKysgKSB7Ci0gICAgICAgICAgICBXTFRQX21heCA9IHNpbGtf
bWF4KCBXTFRQX3B0clsgaSBdLCBXTFRQX21heCApOworICAgICAgICAgICAgWFhMVFBfUTE3X3B0
clsgaSBdID0gc2lsa19ESVYzMl92YXJRKCBYWExUUF9RMTdfcHRyWyBpIF0sIHRlbXAsIDE3ICk7
CiAgICAgICAgIH0KLSAgICAgICAgbHNoaWZ0ID0gc2lsa19DTFozMiggV0xUUF9tYXggKSAtIDEg
LSAzOyAvKiBrZWVwIDMgYml0cyBmcmVlIGZvciB2cV9uZWFyZXN0X25laWdoYm9yX2ZpeCAqLwot
ICAgICAgICBzaWxrX2Fzc2VydCggMjYgLSAxOCArIGxzaGlmdCA+PSAwICk7Ci0gICAgICAgIGlm
KCAyNiAtIDE4ICsgbHNoaWZ0IDwgMzEgKSB7Ci0gICAgICAgICAgICB0ZW1wMzIgPSBzaWxrX21p
bl8zMiggdGVtcDMyLCBzaWxrX0xTSElGVCggKG9wdXNfaW50MzIpMSwgMjYgLSAxOCArIGxzaGlm
dCApICk7Ci0gICAgICAgIH0KLQotICAgICAgICBzaWxrX3NjYWxlX3ZlY3RvcjMyX1EyNl9sc2hp
ZnRfMTgoIFdMVFBfcHRyLCB0ZW1wMzIsIExUUF9PUkRFUiAqIExUUF9PUkRFUiApOyAvKiBXTFRQ
X3B0ciBpbiBRKCAxOCAtIGNvcnJfcnNoaWZ0c1sgayBdICkgKi8KLQotICAgICAgICB3WyBrIF0g
PSBtYXRyaXhfcHRyKCBXTFRQX3B0ciwgTFRQX09SREVSLzIsIExUUF9PUkRFUi8yLCBMVFBfT1JE
RVIgKTsgLyogdyBpbiBRKCAxOCAtIGNvcnJfcnNoaWZ0c1sgayBdICkgKi8KLSAgICAgICAgc2ls
a19hc3NlcnQoIHdba10gPj0gMCApOwotCi0gICAgICAgIHJfcHRyICAgICArPSBzdWJmcl9sZW5n
dGg7Ci0gICAgICAgIGJfUTE0X3B0ciArPSBMVFBfT1JERVI7Ci0gICAgICAgIFdMVFBfcHRyICAr
PSBMVFBfT1JERVIgKiBMVFBfT1JERVI7Ci0gICAgfQotCi0gICAgbWF4UnNoaWZ0cyA9IDA7Ci0g
ICAgZm9yKCBrID0gMDsgayA8IG5iX3N1YmZyOyBrKysgKSB7Ci0gICAgICAgIG1heFJzaGlmdHMg
PSBzaWxrX21heF9pbnQoIGNvcnJfcnNoaWZ0c1sgayBdLCBtYXhSc2hpZnRzICk7Ci0gICAgfQot
Ci0gICAgLyogQ29tcHV0ZSBMVFAgY29kaW5nIGdhaW4gKi8KLSAgICBpZiggTFRQcmVkQ29kR2Fp
bl9RNyAhPSBOVUxMICkgewotICAgICAgICBMUENfTFRQX3Jlc19ucmcgPSAwOwotICAgICAgICBM
UENfcmVzX25yZyAgICAgPSAwOwotICAgICAgICBzaWxrX2Fzc2VydCggTFRQX0NPUlJTX0hFQURf
Uk9PTSA+PSAyICk7IC8qIENoZWNrIHRoYXQgbm8gb3ZlcmZsb3cgd2lsbCBoYXBwZW4gd2hlbiBh
ZGRpbmcgKi8KLSAgICAgICAgZm9yKCBrID0gMDsgayA8IG5iX3N1YmZyOyBrKysgKSB7Ci0gICAg
ICAgICAgICBMUENfcmVzX25yZyAgICAgPSBzaWxrX0FERDMyKCBMUENfcmVzX25yZywgICAgIHNp
bGtfUlNISUZUKCBzaWxrX0FERDMyKCBzaWxrX1NNVUxXQiggIHJyWyBrIF0sIFdnaHRfUTE1WyBr
IF0gKSwgMSApLCAxICsgKCBtYXhSc2hpZnRzIC0gY29ycl9yc2hpZnRzWyBrIF0gKSApICk7IC8q
IFEoIC1tYXhSc2hpZnRzICkgKi8KLSAgICAgICAgICAgIExQQ19MVFBfcmVzX25yZyA9IHNpbGtf
QUREMzIoIExQQ19MVFBfcmVzX25yZywgc2lsa19SU0hJRlQoIHNpbGtfQUREMzIoIHNpbGtfU01V
TFdCKCBucmdbIGsgXSwgV2dodF9RMTVbIGsgXSApLCAxICksIDEgKyAoIG1heFJzaGlmdHMgLSBj
b3JyX3JzaGlmdHNbIGsgXSApICkgKTsgLyogUSggLW1heFJzaGlmdHMgKSAqLwotICAgICAgICB9
Ci0gICAgICAgIExQQ19MVFBfcmVzX25yZyA9IHNpbGtfbWF4KCBMUENfTFRQX3Jlc19ucmcsIDEg
KTsgLyogYXZvaWQgZGl2aXNpb24gYnkgemVybyAqLwotCi0gICAgICAgIGRpdl9RMTYgPSBzaWxr
X0RJVjMyX3ZhclEoIExQQ19yZXNfbnJnLCBMUENfTFRQX3Jlc19ucmcsIDE2ICk7Ci0gICAgICAg
ICpMVFByZWRDb2RHYWluX1E3ID0gKCBvcHVzX2ludCApc2lsa19TTVVMQkIoIDMsIHNpbGtfbGlu
MmxvZyggZGl2X1ExNiApIC0gKCAxNiA8PCA3ICkgKTsKLQotICAgICAgICBzaWxrX2Fzc2VydCgg
KkxUUHJlZENvZEdhaW5fUTcgPT0gKCBvcHVzX2ludCApc2lsa19TQVQxNiggc2lsa19NVUwoIDMs
IHNpbGtfbGluMmxvZyggZGl2X1ExNiApIC0gKCAxNiA8PCA3ICkgKSApICk7Ci0gICAgfQotCi0g
ICAgLyogc21vb3RoaW5nICovCi0gICAgLyogZCA9IHN1bSggQiwgMSApOyAqLwotICAgIGJfUTE0
X3B0ciA9IGJfUTE0OwotICAgIGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysrICkgewotICAg
ICAgICBkX1ExNFsgayBdID0gMDsKICAgICAgICAgZm9yKCBpID0gMDsgaSA8IExUUF9PUkRFUjsg
aSsrICkgewotICAgICAgICAgICAgZF9RMTRbIGsgXSArPSBiX1ExNF9wdHJbIGkgXTsKLSAgICAg
ICAgfQotICAgICAgICBiX1ExNF9wdHIgKz0gTFRQX09SREVSOwotICAgIH0KLQotICAgIC8qIG0g
PSAoIHcgKiBkJyApIC8gKCBzdW0oIHcgKSArIDFlLTMgKTsgKi8KLQotICAgIC8qIEZpbmQgbWF4
aW11bSBhYnNvbHV0ZSB2YWx1ZSBvZiBkX1ExNCBhbmQgdGhlIGJpdHMgdXNlZCBieSB3IGluIFEw
ICovCi0gICAgbWF4X2Fic19kX1ExNCA9IDA7Ci0gICAgbWF4X3dfYml0cyAgICA9IDA7Ci0gICAg
Zm9yKCBrID0gMDsgayA8IG5iX3N1YmZyOyBrKysgKSB7Ci0gICAgICAgIG1heF9hYnNfZF9RMTQg
PSBzaWxrX21heF8zMiggbWF4X2Fic19kX1ExNCwgc2lsa19hYnMoIGRfUTE0WyBrIF0gKSApOwot
ICAgICAgICAvKiB3WyBrIF0gaXMgaW4gUSggMTggLSBjb3JyX3JzaGlmdHNbIGsgXSApICovCi0g
ICAgICAgIC8qIEZpbmQgYml0cyBuZWVkZWQgaW4gUSggMTggLSBtYXhSc2hpZnRzICkgKi8KLSAg
ICAgICAgbWF4X3dfYml0cyA9IHNpbGtfbWF4XzMyKCBtYXhfd19iaXRzLCAzMiAtIHNpbGtfQ0xa
MzIoIHdbIGsgXSApICsgY29ycl9yc2hpZnRzWyBrIF0gLSBtYXhSc2hpZnRzICk7Ci0gICAgfQot
Ci0gICAgLyogbWF4X2Fic19kX1ExNCA9ICg1IDw8IDE1KTsgd29yc3QgY2FzZSwgaS5lLiBMVFBf
T1JERVIgKiAtc2lsa19pbnQxNl9NSU4gKi8KLSAgICBzaWxrX2Fzc2VydCggbWF4X2Fic19kX1Ex
NCA8PSAoIDUgPDwgMTUgKSApOwotCi0gICAgLyogSG93IG1hbnkgYml0cyBpcyBuZWVkZWQgZm9y
IHcqZCcgaW4gUSggMTggLSBtYXhSc2hpZnRzICkgaW4gdGhlIHdvcnN0IGNhc2UsIG9mIGFsbCBk
X1ExNCdzIGJlaW5nIGVxdWFsIHRvIG1heF9hYnNfZF9RMTQgKi8KLSAgICBleHRyYV9zaGlmdHMg
PSBtYXhfd19iaXRzICsgMzIgLSBzaWxrX0NMWjMyKCBtYXhfYWJzX2RfUTE0ICkgLSAxNDsKLQot
ICAgIC8qIFN1YnRyYWN0IHdoYXQgd2UgZ290IGF2YWlsYWJsZTsgYml0cyBpbiBvdXRwdXQgdmFy
IHBsdXMgbWF4UnNoaWZ0cyAqLwotICAgIGV4dHJhX3NoaWZ0cyAtPSAoIDMyIC0gMSAtIDIgKyBt
YXhSc2hpZnRzICk7IC8qIEtlZXAgc2lnbiBiaXQgZnJlZSBhcyB3ZWxsIGFzIDIgYml0cyBmb3Ig
YWNjdW11bGF0aW9uICovCi0gICAgZXh0cmFfc2hpZnRzID0gc2lsa19tYXhfaW50KCBleHRyYV9z
aGlmdHMsIDAgKTsKLQotICAgIG1heFJzaGlmdHNfd3h0cmEgPSBtYXhSc2hpZnRzICsgZXh0cmFf
c2hpZnRzOwotCi0gICAgdGVtcDMyID0gc2lsa19SU0hJRlQoIDI2MiwgbWF4UnNoaWZ0cyArIGV4
dHJhX3NoaWZ0cyApICsgMTsgLyogMWUtM2YgaW4gUSggMTggLSAobWF4UnNoaWZ0cyArIGV4dHJh
X3NoaWZ0cykgKSAqLwotICAgIHdkID0gMDsKLSAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7
IGsrKyApIHsKLSAgICAgICAgLyogdyBoYXMgYXQgbGVhc3QgMiBiaXRzIG9mIGhlYWRyb29tIHNv
IG5vIG92ZXJmbG93IHNob3VsZCBoYXBwZW4gKi8KLSAgICAgICAgdGVtcDMyID0gc2lsa19BREQz
MiggdGVtcDMyLCAgICAgICAgICAgICAgICAgICAgIHNpbGtfUlNISUZUKCB3WyBrIF0sIG1heFJz
aGlmdHNfd3h0cmEgLSBjb3JyX3JzaGlmdHNbIGsgXSApICk7ICAgICAgICAgICAgICAgICAgICAg
IC8qIFEoIDE4IC0gbWF4UnNoaWZ0c193eHRyYSApICovCi0gICAgICAgIHdkICAgICA9IHNpbGtf
QUREMzIoIHdkLCBzaWxrX0xTSElGVCggc2lsa19TTVVMV1coIHNpbGtfUlNISUZUKCB3WyBrIF0s
IG1heFJzaGlmdHNfd3h0cmEgLSBjb3JyX3JzaGlmdHNbIGsgXSApLCBkX1ExNFsgayBdICksIDIg
KSApOyAvKiBRKCAxOCAtIG1heFJzaGlmdHNfd3h0cmEgKSAqLwotICAgIH0KLSAgICBtX1ExMiA9
IHNpbGtfRElWMzJfdmFyUSggd2QsIHRlbXAzMiwgMTIgKTsKLQotICAgIGJfUTE0X3B0ciA9IGJf
UTE0OwotICAgIGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysrICkgewotICAgICAgICAvKiB3
X2ZpeFsgayBdIGZyb20gUSggMTggLSBjb3JyX3JzaGlmdHNbIGsgXSApIHRvIFEoIDE2ICkgKi8K
LSAgICAgICAgaWYoIDIgLSBjb3JyX3JzaGlmdHNba10gPiAwICkgewotICAgICAgICAgICAgdGVt
cDMyID0gc2lsa19SU0hJRlQoIHdbIGsgXSwgMiAtIGNvcnJfcnNoaWZ0c1sgayBdICk7Ci0gICAg
ICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICB0ZW1wMzIgPSBzaWxrX0xTSElGVF9TQVQzMiggd1sg
ayBdLCBjb3JyX3JzaGlmdHNbIGsgXSAtIDIgKTsKKyAgICAgICAgICAgIHhYTFRQX1ExN19wdHJb
IGkgXSA9IHNpbGtfRElWMzJfdmFyUSggeFhMVFBfUTE3X3B0clsgaSBdLCB0ZW1wLCAxNyApOwog
ICAgICAgICB9Ci0KLSAgICAgICAgZ19RMjYgPSBzaWxrX01VTCgKLSAgICAgICAgICAgIHNpbGtf
RElWMzIoCi0gICAgICAgICAgICAgICAgU0lMS19GSVhfQ09OU1QoIExUUF9TTU9PVEhJTkcsIDI2
ICksCi0gICAgICAgICAgICAgICAgc2lsa19SU0hJRlQoIFNJTEtfRklYX0NPTlNUKCBMVFBfU01P
T1RISU5HLCAyNiApLCAxMCApICsgdGVtcDMyICksICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBRMTAgKi8KLSAgICAgICAgICAgIHNpbGtfTFNISUZUX1NBVDMyKCBzaWxrX1NVQl9TQVQzMigg
KG9wdXNfaW50MzIpbV9RMTIsIHNpbGtfUlNISUZUKCBkX1ExNFsgayBdLCAyICkgKSwgNCApICk7
ICAgIC8qIFExNiAqLwotCi0gICAgICAgIHRlbXAzMiA9IDA7Ci0gICAgICAgIGZvciggaSA9IDA7
IGkgPCBMVFBfT1JERVI7IGkrKyApIHsKLSAgICAgICAgICAgIGRlbHRhX2JfUTE0WyBpIF0gPSBz
aWxrX21heF8xNiggYl9RMTRfcHRyWyBpIF0sIDE2MzggKTsgICAgIC8qIDE2MzhfUTE0ID0gMC4x
X1EwICovCi0gICAgICAgICAgICB0ZW1wMzIgKz0gZGVsdGFfYl9RMTRbIGkgXTsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBRMTQgKi8KKyNlbHNlCisgICAgICAgIGZvciggaSA9
IDA7IGkgPCBMVFBfT1JERVIgKiBMVFBfT1JERVI7IGkrKyApIHsKKyAgICAgICAgICAgIFhYTFRQ
X1ExN19wdHJbIGkgXSA9IChvcHVzX2ludDMyKSggc2lsa19MU0hJRlQ2NCggKG9wdXNfaW50NjQp
WFhMVFBfUTE3X3B0clsgaSBdLCAxNyApIC8gdGVtcCApOwogICAgICAgICB9Ci0gICAgICAgIHRl
bXAzMiA9IHNpbGtfRElWMzIoIGdfUTI2LCB0ZW1wMzIgKTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBRMTQgLT4gUTEyICovCiAgICAgICAgIGZvciggaSA9IDA7IGkgPCBMVFBfT1JERVI7
IGkrKyApIHsKLSAgICAgICAgICAgIGJfUTE0X3B0clsgaSBdID0gc2lsa19MSU1JVF8zMiggKG9w
dXNfaW50MzIpYl9RMTRfcHRyWyBpIF0gKyBzaWxrX1NNVUxXQiggc2lsa19MU0hJRlRfU0FUMzIo
IHRlbXAzMiwgNCApLCBkZWx0YV9iX1ExNFsgaSBdICksIC0xNjAwMCwgMjgwMDAgKTsKKyAgICAg
ICAgICAgIHhYTFRQX1ExN19wdHJbIGkgXSA9IChvcHVzX2ludDMyKSggc2lsa19MU0hJRlQ2NCgg
KG9wdXNfaW50NjQpeFhMVFBfUTE3X3B0clsgaSBdLCAxNyApIC8gdGVtcCApOwogICAgICAgICB9
Ci0gICAgICAgIGJfUTE0X3B0ciArPSBMVFBfT1JERVI7Ci0gICAgfQotfQotCi12b2lkIHNpbGtf
Zml0X0xUUCgKLSAgICBvcHVzX2ludDMyIExUUF9jb2Vmc19RMTZbIExUUF9PUkRFUiBdLAotICAg
IG9wdXNfaW50MTYgTFRQX2NvZWZzX1ExNFsgTFRQX09SREVSIF0KLSkKLXsKLSAgICBvcHVzX2lu
dCBpOwotCi0gICAgZm9yKCBpID0gMDsgaSA8IExUUF9PUkRFUjsgaSsrICkgewotICAgICAgICBM
VFBfY29lZnNfUTE0WyBpIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9S
T1VORCggTFRQX2NvZWZzX1ExNlsgaSBdLCAyICkgKTsKKyNlbmRpZgorVE9DKGRpdikKKyAgICAg
ICAgcl9wdHIgICAgICAgICArPSBzdWJmcl9sZW5ndGg7CisgICAgICAgIFhYTFRQX1ExN19wdHIg
Kz0gTFRQX09SREVSICogTFRQX09SREVSOworICAgICAgICB4WExUUF9RMTdfcHRyICs9IExUUF9P
UkRFUjsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9waXRjaF9sYWdzX0ZJ
WC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2ZpeGVkL2ZpbmRfcGl0Y2hfbGFnc19GSVguYwppbmRleCBiODQ0MGE4MjQ3YTMx
Y2U0Y2Y3NjhmNmYxNDhkZDRhOWU3NWYzNTMzLi45MzAzZTlkYjFmMzM4Y2NjMTc3MWU5MGNiNmI1
M2MwNWU2MDU0N2RiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9waXRjaF9sYWdzX0ZJWC5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9maXhlZC9maW5kX3BpdGNoX2xhZ3NfRklYLmMKQEAgLTQ0LDcgKzQ0LDcgQEAg
dm9pZCBzaWxrX2ZpbmRfcGl0Y2hfbGFnc19GSVgoCiB7CiAgICAgb3B1c19pbnQgICBidWZfbGVu
LCBpLCBzY2FsZTsKICAgICBvcHVzX2ludDMyIHRocmhsZF9RMTMsIHJlc19ucmc7Ci0gICAgY29u
c3Qgb3B1c19pbnQxNiAqeF9idWYsICp4X2J1Zl9wdHI7CisgICAgY29uc3Qgb3B1c19pbnQxNiAq
eF9wdHI7CiAgICAgVkFSREVDTCggb3B1c19pbnQxNiwgV3NpZyApOwogICAgIG9wdXNfaW50MTYg
KldzaWdfcHRyOwogICAgIG9wdXNfaW50MzIgYXV0b19jb3JyWyBNQVhfRklORF9QSVRDSF9MUENf
T1JERVIgKyAxIF07CkBAIC02MSw4ICs2MSw2IEBAIHZvaWQgc2lsa19maW5kX3BpdGNoX2xhZ3Nf
RklYKAogICAgIC8qIFNhZmV0eSBjaGVjayAqLwogICAgIHNpbGtfYXNzZXJ0KCBidWZfbGVuID49
IHBzRW5jLT5zQ21uLnBpdGNoX0xQQ193aW5fbGVuZ3RoICk7CiAKLSAgICB4X2J1ZiA9IHggLSBw
c0VuYy0+c0Ntbi5sdHBfbWVtX2xlbmd0aDsKLQogICAgIC8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwogICAgIC8qIEVzdGltYXRlIExQQyBBUiBjb2VmZmljaWVudHMgICAg
ICAqLwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtNzIs
MTkgKzcwLDE5IEBAIHZvaWQgc2lsa19maW5kX3BpdGNoX2xhZ3NfRklYKAogICAgIEFMTE9DKCBX
c2lnLCBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCwgb3B1c19pbnQxNiApOwogCiAg
ICAgLyogRmlyc3QgTEFfTFRQIHNhbXBsZXMgKi8KLSAgICB4X2J1Zl9wdHIgPSB4X2J1ZiArIGJ1
Zl9sZW4gLSBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aDsKKyAgICB4X3B0ciA9IHgg
KyBidWZfbGVuIC0gcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGg7CiAgICAgV3NpZ19w
dHIgID0gV3NpZzsKLSAgICBzaWxrX2FwcGx5X3NpbmVfd2luZG93KCBXc2lnX3B0ciwgeF9idWZf
cHRyLCAxLCBwc0VuYy0+c0Ntbi5sYV9waXRjaCApOworICAgIHNpbGtfYXBwbHlfc2luZV93aW5k
b3coIFdzaWdfcHRyLCB4X3B0ciwgMSwgcHNFbmMtPnNDbW4ubGFfcGl0Y2ggKTsKIAogICAgIC8q
IE1pZGRsZSB1biAtIHdpbmRvd2VkIHNhbXBsZXMgKi8KICAgICBXc2lnX3B0ciAgKz0gcHNFbmMt
PnNDbW4ubGFfcGl0Y2g7Ci0gICAgeF9idWZfcHRyICs9IHBzRW5jLT5zQ21uLmxhX3BpdGNoOwot
ICAgIHNpbGtfbWVtY3B5KCBXc2lnX3B0ciwgeF9idWZfcHRyLCAoIHBzRW5jLT5zQ21uLnBpdGNo
X0xQQ193aW5fbGVuZ3RoIC0gc2lsa19MU0hJRlQoIHBzRW5jLT5zQ21uLmxhX3BpdGNoLCAxICkg
KSAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CisgICAgeF9wdHIgKz0gcHNFbmMtPnNDbW4ubGFf
cGl0Y2g7CisgICAgc2lsa19tZW1jcHkoIFdzaWdfcHRyLCB4X3B0ciwgKCBwc0VuYy0+c0Ntbi5w
aXRjaF9MUENfd2luX2xlbmd0aCAtIHNpbGtfTFNISUZUKCBwc0VuYy0+c0Ntbi5sYV9waXRjaCwg
MSApICkgKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOwogCiAgICAgLyogTGFzdCBMQV9MVFAgc2Ft
cGxlcyAqLwogICAgIFdzaWdfcHRyICArPSBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0
aCAtIHNpbGtfTFNISUZUKCBwc0VuYy0+c0Ntbi5sYV9waXRjaCwgMSApOwotICAgIHhfYnVmX3B0
ciArPSBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCAtIHNpbGtfTFNISUZUKCBwc0Vu
Yy0+c0Ntbi5sYV9waXRjaCwgMSApOwotICAgIHNpbGtfYXBwbHlfc2luZV93aW5kb3coIFdzaWdf
cHRyLCB4X2J1Zl9wdHIsIDIsIHBzRW5jLT5zQ21uLmxhX3BpdGNoICk7CisgICAgeF9wdHIgKz0g
cHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGggLSBzaWxrX0xTSElGVCggcHNFbmMtPnND
bW4ubGFfcGl0Y2gsIDEgKTsKKyAgICBzaWxrX2FwcGx5X3NpbmVfd2luZG93KCBXc2lnX3B0ciwg
eF9wdHIsIDIsIHBzRW5jLT5zQ21uLmxhX3BpdGNoICk7CiAKICAgICAvKiBDYWxjdWxhdGUgYXV0
b2NvcnJlbGF0aW9uIHNlcXVlbmNlICovCiAgICAgc2lsa19hdXRvY29yciggYXV0b19jb3JyLCAm
c2NhbGUsIFdzaWcsIHBzRW5jLT5zQ21uLnBpdGNoX0xQQ193aW5fbGVuZ3RoLCBwc0VuYy0+c0Nt
bi5waXRjaEVzdGltYXRpb25MUENPcmRlciArIDEsIGFyY2ggKTsKQEAgLTExMiw3ICsxMTAsNyBA
QCB2b2lkIHNpbGtfZmluZF9waXRjaF9sYWdzX0ZJWCgKICAgICAvKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgLyogTFBDIGFuYWx5c2lzIGZpbHRlcmluZyAg
ICAgICAgICAgICAgICAqLwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKi8KLSAgICBzaWxrX0xQQ19hbmFseXNpc19maWx0ZXIoIHJlcywgeF9idWYsIEFfUTEy
LCBidWZfbGVuLCBwc0VuYy0+c0Ntbi5waXRjaEVzdGltYXRpb25MUENPcmRlciwgcHNFbmMtPnND
bW4uYXJjaCApOworICAgIHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlciggcmVzLCB4LCBBX1ExMiwg
YnVmX2xlbiwgcHNFbmMtPnNDbW4ucGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIsIHBzRW5jLT5zQ21u
LmFyY2ggKTsKIAogICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgIT0gVFlQ
RV9OT19WT0lDRV9BQ1RJVklUWSAmJiBwc0VuYy0+c0Ntbi5maXJzdF9mcmFtZV9hZnRlcl9yZXNl
dCA9PSAwICkgewogICAgICAgICAvKiBUaHJlc2hvbGQgZm9yIHBpdGNoIGVzdGltYXRvciAqLwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfcHJlZF9jb2Vmc19GSVguYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9m
aW5kX3ByZWRfY29lZnNfRklYLmMKaW5kZXggZDMwOGU5Y2Y1ZmU2MDllMTdiMDZiNGQxMzM5MTkz
MTM0Y2NjZjNmOC4uMjRjNmFhYjNhNzdjOTVlMWM5MDQ2NmUzY2ZiMTMxZTUyYjgxZTEwNCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfcHJlZF9jb2Vmc19GSVguYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQv
ZmluZF9wcmVkX2NvZWZzX0ZJWC5jCkBAIC00MSwxMyArNDEsMTIgQEAgdm9pZCBzaWxrX2ZpbmRf
cHJlZF9jb2Vmc19GSVgoCiApCiB7CiAgICAgb3B1c19pbnQgICAgICAgICBpOwotICAgIG9wdXNf
aW50MzIgICAgICAgaW52R2FpbnNfUTE2WyBNQVhfTkJfU1VCRlIgXSwgbG9jYWxfZ2FpbnNbIE1B
WF9OQl9TVUJGUiBdLCBXZ2h0X1ExNVsgTUFYX05CX1NVQkZSIF07CisgICAgb3B1c19pbnQzMiAg
ICAgICBpbnZHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdLCBsb2NhbF9nYWluc1sgTUFYX05CX1NV
QkZSIF07CiAgICAgb3B1c19pbnQxNiAgICAgICBOTFNGX1ExNVsgTUFYX0xQQ19PUkRFUiBdOwog
ICAgIGNvbnN0IG9wdXNfaW50MTYgKnhfcHRyOwogICAgIG9wdXNfaW50MTYgICAgICAgKnhfcHJl
X3B0cjsKICAgICBWQVJERUNMKCBvcHVzX2ludDE2LCBMUENfaW5fcHJlICk7Ci0gICAgb3B1c19p
bnQzMiAgICAgICB0bXAsIG1pbl9nYWluX1ExNiwgbWluSW52R2Fpbl9RMzA7Ci0gICAgb3B1c19p
bnQgICAgICAgICBMVFBfY29ycnNfcnNoaWZ0WyBNQVhfTkJfU1VCRlIgXTsKKyAgICBvcHVzX2lu
dDMyICAgICAgIG1pbl9nYWluX1ExNiwgbWluSW52R2Fpbl9RMzA7CiAgICAgU0FWRV9TVEFDSzsK
IAogICAgIC8qIHdlaWdodGluZyBmb3Igd2VpZ2h0ZWQgbGVhc3Qgc3F1YXJlcyAqLwpAQCAtNjEs
MTMgKzYwLDExIEBAIHZvaWQgc2lsa19maW5kX3ByZWRfY29lZnNfRklYKAogICAgICAgICAvKiBJ
bnZlcnQgYW5kIG5vcm1hbGl6ZSBnYWlucywgYW5kIGVuc3VyZSB0aGF0IG1heGltdW0gaW52R2Fp
bnNfUTE2IGlzIHdpdGhpbiByYW5nZSBvZiBhIDE2IGJpdCBpbnQgKi8KICAgICAgICAgaW52R2Fp
bnNfUTE2WyBpIF0gPSBzaWxrX0RJVjMyX3ZhclEoIG1pbl9nYWluX1ExNiwgcHNFbmNDdHJsLT5H
YWluc19RMTZbIGkgXSwgMTYgLSAyICk7CiAKLSAgICAgICAgLyogRW5zdXJlIFdnaHRfUTE1IGEg
bWluaW11bSB2YWx1ZSAxICovCi0gICAgICAgIGludkdhaW5zX1ExNlsgaSBdID0gc2lsa19tYXgo
IGludkdhaW5zX1ExNlsgaSBdLCAzNjMgKTsKKyAgICAgICAgLyogTGltaXQgaW52ZXJzZSAqLwor
ICAgICAgICBpbnZHYWluc19RMTZbIGkgXSA9IHNpbGtfbWF4KCBpbnZHYWluc19RMTZbIGkgXSwg
MTAwICk7CiAKICAgICAgICAgLyogU3F1YXJlIHRoZSBpbnZlcnRlZCBnYWlucyAqLwogICAgICAg
ICBzaWxrX2Fzc2VydCggaW52R2FpbnNfUTE2WyBpIF0gPT0gc2lsa19TQVQxNiggaW52R2FpbnNf
UTE2WyBpIF0gKSApOwotICAgICAgICB0bXAgPSBzaWxrX1NNVUxXQiggaW52R2FpbnNfUTE2WyBp
IF0sIGludkdhaW5zX1ExNlsgaSBdICk7Ci0gICAgICAgIFdnaHRfUTE1WyBpIF0gPSBzaWxrX1JT
SElGVCggdG1wLCAxICk7CiAKICAgICAgICAgLyogSW52ZXJ0IHRoZSBpbnZlcnRlZCBhbmQgbm9y
bWFsaXplZCBnYWlucyAqLwogICAgICAgICBsb2NhbF9nYWluc1sgaSBdID0gc2lsa19ESVYzMigg
KCAob3B1c19pbnQzMikxIDw8IDE2ICksIGludkdhaW5zX1ExNlsgaSBdICk7CkBAIC03NywyNCAr
NzQsMjQgQEAgdm9pZCBzaWxrX2ZpbmRfcHJlZF9jb2Vmc19GSVgoCiAgICAgICAgICAgIHBzRW5j
LT5zQ21uLm5iX3N1YmZyICogcHNFbmMtPnNDbW4ucHJlZGljdExQQ09yZGVyCiAgICAgICAgICAg
ICAgICArIHBzRW5jLT5zQ21uLmZyYW1lX2xlbmd0aCwgb3B1c19pbnQxNiApOwogICAgIGlmKCBw
c0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7Ci0gICAgICAg
IFZBUkRFQ0woIG9wdXNfaW50MzIsIFdMVFAgKTsKKyAgICAgICAgVkFSREVDTCggb3B1c19pbnQz
MiwgeFhMVFBfUTE3ICk7CisgICAgICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIFhYTFRQX1ExNyAp
OwogCiAgICAgICAgIC8qKioqKioqKioqLwogICAgICAgICAvKiBWT0lDRUQgKi8KICAgICAgICAg
LyoqKioqKioqKiovCiAgICAgICAgIHNpbGtfYXNzZXJ0KCBwc0VuYy0+c0Ntbi5sdHBfbWVtX2xl
bmd0aCAtIHBzRW5jLT5zQ21uLnByZWRpY3RMUENPcmRlciA+PSBwc0VuY0N0cmwtPnBpdGNoTFsg
MCBdICsgTFRQX09SREVSIC8gMiApOwogCi0gICAgICAgIEFMTE9DKCBXTFRQLCBwc0VuYy0+c0Nt
bi5uYl9zdWJmciAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiwgb3B1c19pbnQzMiApOworICAgICAg
ICBBTExPQyggeFhMVFBfUTE3LCBwc0VuYy0+c0Ntbi5uYl9zdWJmciAqIExUUF9PUkRFUiwgb3B1
c19pbnQzMiApOworICAgICAgICBBTExPQyggWFhMVFBfUTE3LCBwc0VuYy0+c0Ntbi5uYl9zdWJm
ciAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiwgb3B1c19pbnQzMiApOwogCiAgICAgICAgIC8qIExU
UCBhbmFseXNpcyAqLwotICAgICAgICBzaWxrX2ZpbmRfTFRQX0ZJWCggcHNFbmNDdHJsLT5MVFBD
b2VmX1ExNCwgV0xUUCwgJnBzRW5jQ3RybC0+TFRQcmVkQ29kR2Fpbl9RNywKLSAgICAgICAgICAg
IHJlc19waXRjaCwgcHNFbmNDdHJsLT5waXRjaEwsIFdnaHRfUTE1LCBwc0VuYy0+c0Ntbi5zdWJm
cl9sZW5ndGgsCi0gICAgICAgICAgICBwc0VuYy0+c0Ntbi5uYl9zdWJmciwgcHNFbmMtPnNDbW4u
bHRwX21lbV9sZW5ndGgsIExUUF9jb3Jyc19yc2hpZnQsIHBzRW5jLT5zQ21uLmFyY2ggKTsKKyAg
ICAgICAgc2lsa19maW5kX0xUUF9GSVgoIFhYTFRQX1ExNywgeFhMVFBfUTE3LCByZXNfcGl0Y2gs
CisgICAgICAgICAgICBwc0VuY0N0cmwtPnBpdGNoTCwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3Ro
LCBwc0VuYy0+c0Ntbi5uYl9zdWJmciwgcHNFbmMtPnNDbW4uYXJjaCApOwogCiAgICAgICAgIC8q
IFF1YW50aXplIExUUCBnYWluIHBhcmFtZXRlcnMgKi8KICAgICAgICAgc2lsa19xdWFudF9MVFBf
Z2FpbnMoIHBzRW5jQ3RybC0+TFRQQ29lZl9RMTQsIHBzRW5jLT5zQ21uLmluZGljZXMuTFRQSW5k
ZXgsICZwc0VuYy0+c0Ntbi5pbmRpY2VzLlBFUkluZGV4LAotICAgICAgICAgICAgJnBzRW5jLT5z
Q21uLnN1bV9sb2dfZ2Fpbl9RNywgV0xUUCwgcHNFbmMtPnNDbW4ubXVfTFRQX1E5LCBwc0VuYy0+
c0Ntbi5MVFBRdWFudExvd0NvbXBsZXhpdHksIHBzRW5jLT5zQ21uLm5iX3N1YmZyLAotICAgICAg
ICAgICAgcHNFbmMtPnNDbW4uYXJjaCk7CisgICAgICAgICAgICAmcHNFbmMtPnNDbW4uc3VtX2xv
Z19nYWluX1E3LCAmcHNFbmNDdHJsLT5MVFByZWRDb2RHYWluX1E3LCBYWExUUF9RMTcsIHhYTFRQ
X1ExNywgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciwgcHNF
bmMtPnNDbW4uYXJjaCApOwogCiAgICAgICAgIC8qIENvbnRyb2wgTFRQIHNjYWxpbmcgKi8KICAg
ICAgICAgc2lsa19MVFBfc2NhbGVfY3RybF9GSVgoIHBzRW5jLCBwc0VuY0N0cmwsIGNvbmRDb2Rp
bmcgKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9rMmFfRklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvazJhX0ZJ
WC5jCmluZGV4IDVmZWU1OTliY2I3NDMwNWExZDQ1YzQxZTg3OTVhMGVlM2Y5Y2I1ZDkuLjU0OWY2
ZWFkYWEyOWRlODViZmQ0YzI2N2M3OTI1OWM2YzExNGE5ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhl
ZC9rMmFfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2syYV9GSVguYwpAQCAtMzksMTQgKzM5LDE1IEBA
IHZvaWQgc2lsa19rMmEoCiApCiB7CiAgICAgb3B1c19pbnQgICBrLCBuOwotICAgIG9wdXNfaW50
MzIgQXRtcFsgU0lMS19NQVhfT1JERVJfTFBDIF07CisgICAgb3B1c19pbnQzMiByYywgdG1wMSwg
dG1wMjsKIAogICAgIGZvciggayA9IDA7IGsgPCBvcmRlcjsgaysrICkgewotICAgICAgICBmb3Io
IG4gPSAwOyBuIDwgazsgbisrICkgewotICAgICAgICAgICAgQXRtcFsgbiBdID0gQV9RMjRbIG4g
XTsKLSAgICAgICAgfQotICAgICAgICBmb3IoIG4gPSAwOyBuIDwgazsgbisrICkgewotICAgICAg
ICAgICAgQV9RMjRbIG4gXSA9IHNpbGtfU01MQVdCKCBBX1EyNFsgbiBdLCBzaWxrX0xTSElGVCgg
QXRtcFsgayAtIG4gLSAxIF0sIDEgKSwgcmNfUTE1WyBrIF0gKTsKKyAgICAgICAgcmMgPSByY19R
MTVbIGsgXTsKKyAgICAgICAgZm9yKCBuID0gMDsgbiA8IChrICsgMSkgPj4gMTsgbisrICkgewor
ICAgICAgICAgICAgdG1wMSA9IEFfUTI0WyBuIF07CisgICAgICAgICAgICB0bXAyID0gQV9RMjRb
IGsgLSBuIC0gMSBdOworICAgICAgICAgICAgQV9RMjRbIG4gXSAgICAgICAgID0gc2lsa19TTUxB
V0IoIHRtcDEsIHNpbGtfTFNISUZUKCB0bXAyLCAxICksIHJjICk7CisgICAgICAgICAgICBBX1Ey
NFsgayAtIG4gLSAxIF0gPSBzaWxrX1NNTEFXQiggdG1wMiwgc2lsa19MU0hJRlQoIHRtcDEsIDEg
KSwgcmMgKTsKICAgICAgICAgfQogICAgICAgICBBX1EyNFsgayBdID0gLXNpbGtfTFNISUZUKCAo
b3B1c19pbnQzMilyY19RMTVbIGsgXSwgOSApOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhl
ZC9rMmFfUTE2X0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2syYV9RMTZfRklYLmMKaW5kZXggM2IwMzk4NzU0
NDZhMTM4ODZhOWIyMmVhMWUyYjBmNTRjMjA2MmEwNS4uMTU5NWFhNjIxMjY2MjU3NTA3MDViNWQ0
N2I0MmJkYzU4NmYwNTk0MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2syYV9RMTZfRklYLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2ZpeGVkL2syYV9RMTZfRklYLmMKQEAgLTM5LDE1ICszOSwxNiBAQCB2b2lkIHNpbGtf
azJhX1ExNigKICkKIHsKICAgICBvcHVzX2ludCAgIGssIG47Ci0gICAgb3B1c19pbnQzMiBBdG1w
WyBTSUxLX01BWF9PUkRFUl9MUEMgXTsKKyAgICBvcHVzX2ludDMyIHJjLCB0bXAxLCB0bXAyOwog
CiAgICAgZm9yKCBrID0gMDsgayA8IG9yZGVyOyBrKysgKSB7Ci0gICAgICAgIGZvciggbiA9IDA7
IG4gPCBrOyBuKysgKSB7Ci0gICAgICAgICAgICBBdG1wWyBuIF0gPSBBX1EyNFsgbiBdOworICAg
ICAgICByYyA9IHJjX1ExNlsgayBdOworICAgICAgICBmb3IoIG4gPSAwOyBuIDwgKGsgKyAxKSA+
PiAxOyBuKysgKSB7CisgICAgICAgICAgICB0bXAxID0gQV9RMjRbIG4gXTsKKyAgICAgICAgICAg
IHRtcDIgPSBBX1EyNFsgayAtIG4gLSAxIF07CisgICAgICAgICAgICBBX1EyNFsgbiBdICAgICAg
ICAgPSBzaWxrX1NNTEFXVyggdG1wMSwgdG1wMiwgcmMgKTsKKyAgICAgICAgICAgIEFfUTI0WyBr
IC0gbiAtIDEgXSA9IHNpbGtfU01MQVdXKCB0bXAyLCB0bXAxLCByYyApOwogICAgICAgICB9Ci0g
ICAgICAgIGZvciggbiA9IDA7IG4gPCBrOyBuKysgKSB7Ci0gICAgICAgICAgICBBX1EyNFsgbiBd
ID0gc2lsa19TTUxBV1coIEFfUTI0WyBuIF0sIEF0bXBbIGsgLSBuIC0gMSBdLCByY19RMTZbIGsg
XSApOwotICAgICAgICB9Ci0gICAgICAgIEFfUTI0WyBrIF0gPSAtc2lsa19MU0hJRlQoIHJjX1Ex
NlsgayBdLCA4ICk7CisgICAgICAgIEFfUTI0WyBrIF0gPSAtc2lsa19MU0hJRlQoIHJjLCA4ICk7
CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21haW5fRklYLmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQv
bWFpbl9GSVguaAppbmRleCAzNzViNWViMzJlZTZjNmFlYzYyNDdiZjY4MGI0ZTkzMzJjODJkMzRi
Li42ZDIxMTJlNTExZDBhZWY0NDU4MmQ1MmQ2NTAyZGNiNWM5NGVkMDY4IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZml4ZWQvbWFpbl9GSVguaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbWFpbl9GSVguaApAQCAtMzYsNiAr
MzYsMTEgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaW5jbHVkZSAiZGVidWcuaCIK
ICNpbmNsdWRlICJlbnRlbmMuaCIKIAorI2lmICgoZGVmaW5lZChPUFVTX0FSTV9BU00pICYmIGRl
ZmluZWQoRklYRURfUE9JTlQpKSBcCisgICB8fCBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05F
T05fSU5UUikpCisjaW5jbHVkZSAiZml4ZWQvYXJtL3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklY
X2FybS5oIgorI2VuZGlmCisKICNpZm5kZWYgRk9SQ0VfQ1BQX0JVSUxECiAjaWZkZWYgX19jcGx1
c3BsdXMKIGV4dGVybiAiQyIKQEAgLTQ3LDYgKzUyLDkgQEAgZXh0ZXJuICJDIgogI2RlZmluZSBz
aWxrX2VuY29kZV9kb19WQURfRnh4ICAgICAgc2lsa19lbmNvZGVfZG9fVkFEX0ZJWAogI2RlZmlu
ZSBzaWxrX2VuY29kZV9mcmFtZV9GeHggICAgICAgc2lsa19lbmNvZGVfZnJhbWVfRklYCiAKKyNk
ZWZpbmUgUUMgIDEwCisjZGVmaW5lIFFTICAxMworCiAvKioqKioqKioqKioqKioqKioqKioqLwog
LyogRW5jb2RlciBGdW5jdGlvbnMgKi8KIC8qKioqKioqKioqKioqKioqKioqKiovCkBAIC01OCw3
ICs2Niw4IEBAIHZvaWQgc2lsa19IUF92YXJpYWJsZV9jdXRvZmYoCiAKIC8qIEVuY29kZXIgbWFp
biBmdW5jdGlvbiAqLwogdm9pZCBzaWxrX2VuY29kZV9kb19WQURfRklYKAotICAgIHNpbGtfZW5j
b2Rlcl9zdGF0ZV9GSVggICAgICAgICAgKnBzRW5jICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIEZJWCBlbmNvZGVyIHN0YXRlICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgc2lsa19lbmNvZGVyX3N0
YXRlX0ZJWCAgICAgICAgICAqcHNFbmMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSS9PICBQb2ludGVyIHRvIFNpbGsgRklYIGVuY29kZXIgc3RhdGUgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICAg
ICAgICAgICAgIGFjdGl2aXR5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IERlY2lzaW9uIG9mIE9wdXMgdm9pY2UgYWN0aXZpdHkgZGV0ZWN0b3IgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwogKTsKIAogLyogRW5jb2RlciBtYWluIGZ1bmN0aW9uICov
CkBAIC04MSwzMyArOTAsMTEgQEAgb3B1c19pbnQgc2lsa19pbml0X2VuY29kZXIoCiBvcHVzX2lu
dCBzaWxrX2NvbnRyb2xfZW5jb2RlcigKICAgICBzaWxrX2VuY29kZXJfc3RhdGVfRnh4ICAgICAg
ICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50
ZXIgdG8gU2lsayBlbmNvZGVyIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIHNpbGtfRW5jQ29udHJvbFN0cnVjdCAgICAgICAgICAgKmVu
Y0NvbnRyb2wsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29udHJvbCBzdHJ1
Y3R1cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICAgICBUYXJnZXRSYXRl
X2JwcywgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBUYXJnZXQgbWF4IGJpdHJhdGUg
KGJwcykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGFsbG93X2J3X3N3aXRjaCwg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZsYWcgdG8gYWxsb3cgc3dpdGNoaW5nIGF1
ZGlvIGJhbmR3aWR0aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgY2hhbm5lbE5iLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgQ2hhbm5lbCBudW1iZXIgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgICAgICBmb3JjZV9mc19rSHoKICk7CiAKLS8qKioqKioqKioq
KioqKioqLwotLyogUHJlZmlsdGVyaW5nICovCi0vKioqKioqKioqKioqKioqKi8KLXZvaWQgc2ls
a19wcmVmaWx0ZXJfRklYKAotICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GSVggICAgICAgICAgKnBz
RW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX2NvbnRyb2xfRklYICAqcHNFbmNDdHJs
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIGNvbnRyb2wgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgIHh3X1ExMFtdLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFdlaWdodGVkIHNpZ25hbCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgeFtdICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgU3BlZWNoIHNpZ25hbCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pOwotCi12b2lk
IHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYX2MoCi0gICAgICAgICAgb3B1c19p
bnQzMiAgICAgICAgICAgIHN0YXRlW10sICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFN0YXRl
IFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgb3B1c19pbnQzMiAg
ICAgICAgICAgIHJlc19RMltdLCAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJlc2lkdWFsIHNp
Z25hbCBbbGVuZ3RoXSAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAg
ICAgIGNvZWZfUTEzW10sICAgICAgICAgICAgICAgICAvKiBJICAgIENvZWZmaWNpZW50cyBbb3Jk
ZXJdICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGlu
cHV0W10sICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IHNpZ25hbCBbbGVuZ3RoXSAg
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGxhbWJkYV9R
MTYsICAgICAgICAgICAgICAgICAvKiBJICAgIFdhcnBpbmcgZmFjdG9yICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1dCBzaWduYWwgICAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICovCi0p
OwotCi0KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKi8KIC8qIE5vaXNlIHNoYXBpbmcgYW5h
bHlzaXMgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKi8KQEAgLTEyMSw3ICsxMDgsNyBA
QCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogKTsKIAogLyogQXV0b2NvcnJl
bGF0aW9ucyBmb3IgYSB3YXJwZWQgZnJlcXVlbmN5IGF4aXMgKi8KLXZvaWQgc2lsa193YXJwZWRf
YXV0b2NvcnJlbGF0aW9uX0ZJWCgKK3ZvaWQgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJ
WF9jKAogICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgKmNvcnIsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmVzdWx0IFtvcmRlciArIDFdICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgICAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAqc2NhbGUsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogTyAgICBTY2FsaW5nIG9mIHRoZSBjb3JyZWxhdGlvbiB2ZWN0
b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25z
dCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICppbnB1dCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIElucHV0IGRhdGEgdG8gY29ycmVsYXRlICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtMTMwLDYgKzExNywx
MSBAQCB2b2lkIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoCiAgICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBDb3JyZWxhdGlvbiBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKKyNpZiAhZGVmaW5lZChP
VkVSUklERV9zaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKQorI2RlZmluZSBzaWxrX3dh
cnBlZF9hdXRvY29ycmVsYXRpb25fRklYKGNvcnIsIHNjYWxlLCBpbnB1dCwgd2FycGluZ19RMTYs
IGxlbmd0aCwgb3JkZXIsIGFyY2gpIFwKKyAgICAgICAgKCh2b2lkKShhcmNoKSwgc2lsa193YXJw
ZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9jKGNvcnIsIHNjYWxlLCBpbnB1dCwgd2FycGluZ19RMTYs
IGxlbmd0aCwgb3JkZXIpKQorI2VuZGlmCisKIC8qIENhbGN1bGF0aW9uIG9mIExUUCBzdGF0ZSBz
Y2FsaW5nICovCiB2b2lkIHNpbGtfTFRQX3NjYWxlX2N0cmxfRklYKAogICAgIHNpbGtfZW5jb2Rl
cl9zdGF0ZV9GSVggICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgZW5jb2RlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCkBAIC0xNjgsMTYgKzE2MCwxMiBAQCB2
b2lkIHNpbGtfZmluZF9MUENfRklYKAogCiAvKiBMVFAgYW5hbHlzaXMgKi8KIHZvaWQgc2lsa19m
aW5kX0xUUF9GSVgoCi0gICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICAgICBiX1ExNFsg
TUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgLyogTyAgICBMVFAgY29lZnMgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgIFdMVFBbIE1BWF9OQl9T
VUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBPICAgIFdlaWdodCBmb3IgTFRQIHF1
YW50aXphdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgKkxUUHJlZENvZEdhaW5fUTcsICAg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIGNvZGluZyBnYWluICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICByX2xwY1tdLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICByZXNpZHVhbCBzaWduYWwgYWZ0ZXIgTFBDIHNpZ25hbCArIHN0
YXRlIGZvciBmaXJzdCAxMCBtcyAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMy
ICAgICAgICAgICAgICAgICAgICAgIFhYTFRQX1ExN1sgTUFYX05CX1NVQkZSICogTFRQX09SREVS
ICogTFRQX09SREVSIF0sIC8qIE8gICAgQ29ycmVsYXRpb24gbWF0cml4ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAg
ICAgICAgICAgICAgICAgeFhMVFBfUTE3WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgIC8q
IE8gICAgQ29ycmVsYXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAg
ICAgICAgICByX2xwY1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBS
ZXNpZHVhbCBzaWduYWwgYWZ0ZXIgTFBDICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAg
IGxhZ1sgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExUUCBsYWdz
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgV2dodF9R
MTVbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgIC8qIEkgICAgd2VpZ2h0cyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBzdWJmcl9sZW5ndGgs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBzdWJmcmFtZSBsZW5ndGggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
LSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbWVtX29mZnNldCwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHNhbXBsZXMgaW4gTFRQIG1lbW9yeSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQg
ICAgICAgICAgICAgICAgICAgICAgICBjb3JyX3JzaGlmdHNbIE1BWF9OQl9TVUJGUiBdLCAgICAg
ICAgICAgLyogTyAgICByaWdodCBzaGlmdHMgYXBwbGllZCB0byBjb3JyZWxhdGlvbnMgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgIHN1YmZyX2xlbmd0aCwgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIFN1YmZyYW1lIGxlbmd0aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgbmJfc3ViZnIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
TnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSdW4tdGlt
ZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICk7CiAKQEAgLTIzMSw5ICsyMTksOSBAQCB2b2lkIHNpbGtfY29yck1h
dHJpeF9GSVgoCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAqeCwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICB4IHZlY3RvciBbTCArIG9yZGVy
IC0gMV0gdXNlZCB0byBmb3JtIGRhdGEgbWF0cml4IFggICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIEwsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiB2ZWN0b3JzICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgb3JkZXIsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgTWF4IGxhZyBmb3IgY29ycmVsYXRpb24gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgICAgICBoZWFkX3Jvb20sICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBEZXNpcmVkIGhlYWRyb29tICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAg
ICAgICAgICAgICAgICAgICAgICpYWCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBPICAgIFBvaW50ZXIgdG8gWCcqWCBjb3JyZWxhdGlvbiBtYXRyaXggWyBvcmRlciB4IG9y
ZGVyIF0gICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgICAgICAgKnJzaGlmdHMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkv
TyAgUmlnaHQgc2hpZnRzIG9mIGNvcnJlbGF0aW9ucyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAg
ICAgICAqbnJnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBFbmVy
Z3kgb2YgeCB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgICpy
c2hpZnRzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJpZ2h0IHNoaWZ0
cyBvZiBjb3JyZWxhdGlvbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwogICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2ggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0
dXJlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiApOwogCkBAIC0yNDgsMjIgKzIzNiw2IEBAIHZvaWQgc2lsa19jb3JyVmVjdG9yX0ZJWCgK
ICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2ggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKTsKIAot
LyogQWRkIG5vaXNlIHRvIG1hdHJpeCBkaWFnb25hbCAqLwotdm9pZCBzaWxrX3JlZ3VsYXJpemVf
Y29ycmVsYXRpb25zX0ZJWCgKLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgICpY
WCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIENvcnJlbGF0aW9u
IG1hdHJpY2VzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgKnh4LCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgQ29ycmVsYXRpb24gdmFsdWVz
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICBub2lzZSwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOb2lzZSB0byBhZGQgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgIEQgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIERpbWVuc2lvbiBvZiBYWCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsKLQotLyog
U29sdmVzIEF4ID0gYiwgYXNzdW1pbmcgQSBpcyBzeW1tZXRyaWMgKi8KLXZvaWQgc2lsa19zb2x2
ZV9MRExfRklYKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgKkEsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUG9pbnRlciB0byBzeW1ldHJp
YyBzcXVhcmUgbWF0cml4IEEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBNLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTaXplIG9mIG1hdHJpeCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgICAgICpiLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIFBvaW50ZXIgdG8gYiB2ZWN0b3IgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNf
aW50MzIgICAgICAgICAgICAgICAgICAgICAgKnhfUTE2ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIE8gICAgUG9pbnRlciB0byB4IHNvbHV0aW9uIHZlY3RvciAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pOwotCiAjaWZuZGVmIEZP
UkNFX0NQUF9CVUlMRAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4
ZWQvbWlwcy9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVhfbWlwc3IxLmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbWlw
cy9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVhfbWlwc3IxLmgKaW5kZXggYzMwNDgxZTQzNzUxZGMw
MGZlYTAyNTkzY2YzNDMwMmVkNjM5Nzc5Zi4uMzk5OWI1YmQwOWRkOGE5NDY0ZWQyMjc4MGQ1NDU3
OGYzZGJjZGVmOCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21pcHMvbm9pc2Vfc2hhcGVfYW5hbHlz
aXNfRklYX21pcHNyMS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9taXBzL25vaXNlX3NoYXBlX2FuYWx5c2lz
X0ZJWF9taXBzcjEuaApAQCAtMTY5LDcgKzE2OSw3IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9h
bmFseXNpc19GSVgoCiAKICAgICAgICAgaWYoIHBzRW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCAp
IHsKICAgICAgICAgICAgIC8qIENhbGN1bGF0ZSB3YXJwZWQgYXV0byBjb3JyZWxhdGlvbiAqLwot
ICAgICAgICAgICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCggYXV0b19jb3JyLCAm
c2NhbGUsIHhfd2luZG93ZWQsIHdhcnBpbmdfUTE2LCBwc0VuYy0+c0Ntbi5zaGFwZVdpbkxlbmd0
aCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAgICAgICAgICBzaWxrX3dhcnBl
ZF9hdXRvY29ycmVsYXRpb25fRklYKCBhdXRvX2NvcnIsICZzY2FsZSwgeF93aW5kb3dlZCwgd2Fy
cGluZ19RMTYsIHBzRW5jLT5zQ21uLnNoYXBlV2luTGVuZ3RoLCBwc0VuYy0+c0Ntbi5zaGFwaW5n
TFBDT3JkZXIsIGFyY2ggKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8qIENhbGN1
bGF0ZSByZWd1bGFyIGF1dG8gY29ycmVsYXRpb24gKi8KICAgICAgICAgICAgIHNpbGtfYXV0b2Nv
cnIoIGF1dG9fY29yciwgJnNjYWxlLCB4X3dpbmRvd2VkLCBwc0VuYy0+c0Ntbi5zaGFwZVdpbkxl
bmd0aCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICsgMSwgYXJjaCApOwpAQCAtMjI0LDgg
KzIyNCw4IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAgICAgICAgIHNp
bGtfYndleHBhbmRlcl8zMiggQVIxX1EyNCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBC
V0V4cDFfUTE2ICk7CiAKICAgICAgICAgLyogUmF0aW8gb2YgcHJlZGljdGlvbiBnYWlucywgaW4g
ZW5lcmd5IGRvbWFpbiAqLwotICAgICAgICBwcmVfbnJnX1EzMCA9IHNpbGtfTFBDX2ludmVyc2Vf
cHJlZF9nYWluX1EyNCggQVIyX1EyNCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7Ci0g
ICAgICAgIG5yZyAgICAgICAgID0gc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fUTI0KCBBUjFf
UTI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAgcHJlX25yZ19RMzAg
PSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoIEFSMl9RMjQsIHBzRW5jLT5zQ21uLnNo
YXBpbmdMUENPcmRlciwgYXJjaCApOworICAgICAgICBucmcgICAgICAgICA9IHNpbGtfTFBDX2lu
dmVyc2VfcHJlZF9nYWluX1EyNCggQVIxX1EyNCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVy
LCBhcmNoICk7CiAKICAgICAgICAgLypwc0VuY0N0cmwtPkdhaW5zUHJlWyBrIF0gPSAxLjBmIC0g
MC43ZiAqICggMS4wZiAtIHByZV9ucmcgLyBucmcgKSA9IDAuM2YgKyAwLjdmICogcHJlX25yZyAv
IG5yZzsqLwogICAgICAgICBwcmVfbnJnX1EzMCA9IHNpbGtfTFNISUZUMzIoIHNpbGtfU01VTFdC
KCBwcmVfbnJnX1EzMCwgU0lMS19GSVhfQ09OU1QoIDAuNywgMTUgKSApLCAxICk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZml4ZWQvbWlwcy93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9taXBzcjEuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9maXhlZC9taXBzL3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX21pcHNyMS5oCmluZGV4
IGU4MDNlZjBmY2ViMDRiM2NhMTUyNjRjYjNhNWVkZDhlOTcxODg3YjkuLmZjYmQ5NmM4OGQ5OGFh
YTA1YjNlNGE1Yzk1NmUyZWFiMDliNmJjNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9taXBzL3dh
cnBlZF9hdXRvY29ycmVsYXRpb25fRklYX21pcHNyMS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9taXBzL3dh
cnBlZF9hdXRvY29ycmVsYXRpb25fRklYX21pcHNyMS5oCkBAIC00OCw3ICs0OCw4IEBAIHZvaWQg
c2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCgKICAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgICAgICppbnB1dCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIElucHV0IGRhdGEgdG8gY29ycmVsYXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgd2FycGluZ19RMTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgV2Fy
cGluZyBjb2VmZmljaWVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBs
ZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGggb2Yg
aW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG9yZGVyICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvcnJlbGF0aW9uIG9yZGVy
IChldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgb3JkZXIsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29ycmVsYXRpb24gb3JkZXIgKGV2ZW4p
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKICAg
ICBvcHVzX2ludCAgIG4sIGksIGxzaDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9ub2lzZV9zaGFw
ZV9hbmFseXNpc19GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVguYwpp
bmRleCAyMmE4OWY3NWFlYzBmYzhkNjI0NDA5ZGY4NjFjYmI2YzJjYTM4NTk1Li44NWZlYTBiZjA5
NjAwNTk0NjI4MDAxZDc0MTA3MTJjNGVlOGMyNjEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbm9p
c2Vfc2hhcGVfYW5hbHlzaXNfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL25vaXNlX3NoYXBlX2FuYWx5
c2lzX0ZJWC5jCkBAIC01Nyw4OCArNTcsNzkgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50
MzIgd2FycGVkX2dhaW4oIC8qIGdhaW4gaW4gUTE2Ki8KIC8qIENvbnZlcnQgd2FycGVkIGZpbHRl
ciBjb2VmZmljaWVudHMgdG8gbW9uaWMgcHNldWRvLXdhcnBlZCBjb2VmZmljaWVudHMgYW5kIGxp
bWl0IG1heGltdW0gICAgICovCiAvKiBhbXBsaXR1ZGUgb2YgbW9uaWMgd2FycGVkIGNvZWZmaWNp
ZW50cyBieSB1c2luZyBiYW5kd2lkdGggZXhwYW5zaW9uIG9uIHRoZSB0cnVlIGNvZWZmaWNpZW50
cyAqLwogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgbGltaXRfd2FycGVkX2NvZWZzKAotICAgIG9w
dXNfaW50MzIgICAgICAgICAgICpjb2Vmc19zeW5fUTI0LAotICAgIG9wdXNfaW50MzIgICAgICAg
ICAgICpjb2Vmc19hbmFfUTI0LAorICAgIG9wdXNfaW50MzIgICAgICAgICAgICpjb2Vmc19RMjQs
CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgbGFtYmRhX1ExNiwKICAgICBvcHVzX2ludDMyICAg
ICAgICAgICBsaW1pdF9RMjQsCiAgICAgb3B1c19pbnQgICAgICAgICAgICAgb3JkZXIKICkgewog
ICAgIG9wdXNfaW50ICAgaSwgaXRlciwgaW5kID0gMDsKLSAgICBvcHVzX2ludDMyIHRtcCwgbWF4
YWJzX1EyNCwgY2hpcnBfUTE2LCBnYWluX3N5bl9RMTYsIGdhaW5fYW5hX1ExNjsKKyAgICBvcHVz
X2ludDMyIHRtcCwgbWF4YWJzX1EyNCwgY2hpcnBfUTE2LCBnYWluX1ExNjsKICAgICBvcHVzX2lu
dDMyIG5vbV9RMTYsIGRlbl9RMjQ7CisgICAgb3B1c19pbnQzMiBsaW1pdF9RMjAsIG1heGFic19R
MjA7CiAKICAgICAvKiBDb252ZXJ0IHRvIG1vbmljIGNvZWZmaWNpZW50cyAqLwogICAgIGxhbWJk
YV9RMTYgPSAtbGFtYmRhX1ExNjsKICAgICBmb3IoIGkgPSBvcmRlciAtIDE7IGkgPiAwOyBpLS0g
KSB7Ci0gICAgICAgIGNvZWZzX3N5bl9RMjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNf
c3luX1EyNFsgaSAtIDEgXSwgY29lZnNfc3luX1EyNFsgaSBdLCBsYW1iZGFfUTE2ICk7Ci0gICAg
ICAgIGNvZWZzX2FuYV9RMjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNfYW5hX1EyNFsg
aSAtIDEgXSwgY29lZnNfYW5hX1EyNFsgaSBdLCBsYW1iZGFfUTE2ICk7CisgICAgICAgIGNvZWZz
X1EyNFsgaSAtIDEgXSA9IHNpbGtfU01MQVdCKCBjb2Vmc19RMjRbIGkgLSAxIF0sIGNvZWZzX1Ey
NFsgaSBdLCBsYW1iZGFfUTE2ICk7CiAgICAgfQogICAgIGxhbWJkYV9RMTYgPSAtbGFtYmRhX1Ex
NjsKLSAgICBub21fUTE2ICA9IHNpbGtfU01MQVdCKCBTSUxLX0ZJWF9DT05TVCggMS4wLCAxNiAp
LCAtKG9wdXNfaW50MzIpbGFtYmRhX1ExNiwgICAgICAgIGxhbWJkYV9RMTYgKTsKLSAgICBkZW5f
UTI0ICA9IHNpbGtfU01MQVdCKCBTSUxLX0ZJWF9DT05TVCggMS4wLCAyNCApLCBjb2Vmc19zeW5f
UTI0WyAwIF0sIGxhbWJkYV9RMTYgKTsKLSAgICBnYWluX3N5bl9RMTYgPSBzaWxrX0RJVjMyX3Zh
clEoIG5vbV9RMTYsIGRlbl9RMjQsIDI0ICk7Ci0gICAgZGVuX1EyNCAgPSBzaWxrX1NNTEFXQigg
U0lMS19GSVhfQ09OU1QoIDEuMCwgMjQgKSwgY29lZnNfYW5hX1EyNFsgMCBdLCBsYW1iZGFfUTE2
ICk7Ci0gICAgZ2Fpbl9hbmFfUTE2ID0gc2lsa19ESVYzMl92YXJRKCBub21fUTE2LCBkZW5fUTI0
LCAyNCApOworICAgIG5vbV9RMTYgID0gc2lsa19TTUxBV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAs
IDE2ICksIC0ob3B1c19pbnQzMilsYW1iZGFfUTE2LCBsYW1iZGFfUTE2ICk7CisgICAgZGVuX1Ey
NCAgPSBzaWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1QoIDEuMCwgMjQgKSwgY29lZnNfUTI0WyAw
IF0sIGxhbWJkYV9RMTYgKTsKKyAgICBnYWluX1ExNiA9IHNpbGtfRElWMzJfdmFyUSggbm9tX1Ex
NiwgZGVuX1EyNCwgMjQgKTsKICAgICBmb3IoIGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAg
ICAgICAgY29lZnNfc3luX1EyNFsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fc3luX1ExNiwgY29l
ZnNfc3luX1EyNFsgaSBdICk7Ci0gICAgICAgIGNvZWZzX2FuYV9RMjRbIGkgXSA9IHNpbGtfU01V
TFdXKCBnYWluX2FuYV9RMTYsIGNvZWZzX2FuYV9RMjRbIGkgXSApOworICAgICAgICBjb2Vmc19R
MjRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX1ExNiwgY29lZnNfUTI0WyBpIF0gKTsKICAgICB9
Ci0KKyAgICBsaW1pdF9RMjAgPSBzaWxrX1JTSElGVChsaW1pdF9RMjQsIDQpOwogICAgIGZvcigg
aXRlciA9IDA7IGl0ZXIgPCAxMDsgaXRlcisrICkgewogICAgICAgICAvKiBGaW5kIG1heGltdW0g
YWJzb2x1dGUgdmFsdWUgKi8KICAgICAgICAgbWF4YWJzX1EyNCA9IC0xOwogICAgICAgICBmb3Io
IGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAgICAgIHRtcCA9IHNpbGtfbWF4KCBz
aWxrX2Fic19pbnQzMiggY29lZnNfc3luX1EyNFsgaSBdICksIHNpbGtfYWJzX2ludDMyKCBjb2Vm
c19hbmFfUTI0WyBpIF0gKSApOworICAgICAgICAgICAgdG1wID0gc2lsa19hYnNfaW50MzIoIGNv
ZWZzX1EyNFsgaSBdICk7CiAgICAgICAgICAgICBpZiggdG1wID4gbWF4YWJzX1EyNCApIHsKICAg
ICAgICAgICAgICAgICBtYXhhYnNfUTI0ID0gdG1wOwogICAgICAgICAgICAgICAgIGluZCA9IGk7
CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KLSAgICAgICAgaWYoIG1heGFic19RMjQgPD0gbGlt
aXRfUTI0ICkgeworICAgICAgICAvKiBVc2UgUTIwIHRvIGF2b2lkIGFueSBvdmVyZmxvdyB3aGVu
IG11bHRpcGx5aW5nIGJ5IChpbmQgKyAxKSBsYXRlci4gKi8KKyAgICAgICAgbWF4YWJzX1EyMCA9
IHNpbGtfUlNISUZUKG1heGFic19RMjQsIDQpOworICAgICAgICBpZiggbWF4YWJzX1EyMCA8PSBs
aW1pdF9RMjAgKSB7CiAgICAgICAgICAgICAvKiBDb2VmZmljaWVudHMgYXJlIHdpdGhpbiByYW5n
ZSAtIGRvbmUgKi8KICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogCiAgICAgICAgIC8q
IENvbnZlcnQgYmFjayB0byB0cnVlIHdhcnBlZCBjb2VmZmljaWVudHMgKi8KICAgICAgICAgZm9y
KCBpID0gMTsgaSA8IG9yZGVyOyBpKysgKSB7Ci0gICAgICAgICAgICBjb2Vmc19zeW5fUTI0WyBp
IC0gMSBdID0gc2lsa19TTUxBV0IoIGNvZWZzX3N5bl9RMjRbIGkgLSAxIF0sIGNvZWZzX3N5bl9R
MjRbIGkgXSwgbGFtYmRhX1ExNiApOwotICAgICAgICAgICAgY29lZnNfYW5hX1EyNFsgaSAtIDEg
XSA9IHNpbGtfU01MQVdCKCBjb2Vmc19hbmFfUTI0WyBpIC0gMSBdLCBjb2Vmc19hbmFfUTI0WyBp
IF0sIGxhbWJkYV9RMTYgKTsKKyAgICAgICAgICAgIGNvZWZzX1EyNFsgaSAtIDEgXSA9IHNpbGtf
U01MQVdCKCBjb2Vmc19RMjRbIGkgLSAxIF0sIGNvZWZzX1EyNFsgaSBdLCBsYW1iZGFfUTE2ICk7
CiAgICAgICAgIH0KLSAgICAgICAgZ2Fpbl9zeW5fUTE2ID0gc2lsa19JTlZFUlNFMzJfdmFyUSgg
Z2Fpbl9zeW5fUTE2LCAzMiApOwotICAgICAgICBnYWluX2FuYV9RMTYgPSBzaWxrX0lOVkVSU0Uz
Ml92YXJRKCBnYWluX2FuYV9RMTYsIDMyICk7CisgICAgICAgIGdhaW5fUTE2ID0gc2lsa19JTlZF
UlNFMzJfdmFyUSggZ2Fpbl9RMTYsIDMyICk7CiAgICAgICAgIGZvciggaSA9IDA7IGkgPCBvcmRl
cjsgaSsrICkgewotICAgICAgICAgICAgY29lZnNfc3luX1EyNFsgaSBdID0gc2lsa19TTVVMV1co
IGdhaW5fc3luX1ExNiwgY29lZnNfc3luX1EyNFsgaSBdICk7Ci0gICAgICAgICAgICBjb2Vmc19h
bmFfUTI0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9hbmFfUTE2LCBjb2Vmc19hbmFfUTI0WyBp
IF0gKTsKKyAgICAgICAgICAgIGNvZWZzX1EyNFsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fUTE2
LCBjb2Vmc19RMjRbIGkgXSApOwogICAgICAgICB9CiAKICAgICAgICAgLyogQXBwbHkgYmFuZHdp
ZHRoIGV4cGFuc2lvbiAqLwogICAgICAgICBjaGlycF9RMTYgPSBTSUxLX0ZJWF9DT05TVCggMC45
OSwgMTYgKSAtIHNpbGtfRElWMzJfdmFyUSgKLSAgICAgICAgICAgIHNpbGtfU01VTFdCKCBtYXhh
YnNfUTI0IC0gbGltaXRfUTI0LCBzaWxrX1NNTEFCQiggU0lMS19GSVhfQ09OU1QoIDAuOCwgMTAg
KSwgU0lMS19GSVhfQ09OU1QoIDAuMSwgMTAgKSwgaXRlciApICksCi0gICAgICAgICAgICBzaWxr
X01VTCggbWF4YWJzX1EyNCwgaW5kICsgMSApLCAyMiApOwotICAgICAgICBzaWxrX2J3ZXhwYW5k
ZXJfMzIoIGNvZWZzX3N5bl9RMjQsIG9yZGVyLCBjaGlycF9RMTYgKTsKLSAgICAgICAgc2lsa19i
d2V4cGFuZGVyXzMyKCBjb2Vmc19hbmFfUTI0LCBvcmRlciwgY2hpcnBfUTE2ICk7CisgICAgICAg
ICAgICBzaWxrX1NNVUxXQiggbWF4YWJzX1EyMCAtIGxpbWl0X1EyMCwgc2lsa19TTUxBQkIoIFNJ
TEtfRklYX0NPTlNUKCAwLjgsIDEwICksIFNJTEtfRklYX0NPTlNUKCAwLjEsIDEwICksIGl0ZXIg
KSApLAorICAgICAgICAgICAgc2lsa19NVUwoIG1heGFic19RMjAsIGluZCArIDEgKSwgMjIgKTsK
KyAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBjb2Vmc19RMjQsIG9yZGVyLCBjaGlycF9RMTYg
KTsKIAogICAgICAgICAvKiBDb252ZXJ0IHRvIG1vbmljIHdhcnBlZCBjb2VmZmljaWVudHMgKi8K
ICAgICAgICAgbGFtYmRhX1ExNiA9IC1sYW1iZGFfUTE2OwogICAgICAgICBmb3IoIGkgPSBvcmRl
ciAtIDE7IGkgPiAwOyBpLS0gKSB7Ci0gICAgICAgICAgICBjb2Vmc19zeW5fUTI0WyBpIC0gMSBd
ID0gc2lsa19TTUxBV0IoIGNvZWZzX3N5bl9RMjRbIGkgLSAxIF0sIGNvZWZzX3N5bl9RMjRbIGkg
XSwgbGFtYmRhX1ExNiApOwotICAgICAgICAgICAgY29lZnNfYW5hX1EyNFsgaSAtIDEgXSA9IHNp
bGtfU01MQVdCKCBjb2Vmc19hbmFfUTI0WyBpIC0gMSBdLCBjb2Vmc19hbmFfUTI0WyBpIF0sIGxh
bWJkYV9RMTYgKTsKKyAgICAgICAgICAgIGNvZWZzX1EyNFsgaSAtIDEgXSA9IHNpbGtfU01MQVdC
KCBjb2Vmc19RMjRbIGkgLSAxIF0sIGNvZWZzX1EyNFsgaSBdLCBsYW1iZGFfUTE2ICk7CiAgICAg
ICAgIH0KICAgICAgICAgbGFtYmRhX1ExNiA9IC1sYW1iZGFfUTE2OwogICAgICAgICBub21fUTE2
ICA9IHNpbGtfU01MQVdCKCBTSUxLX0ZJWF9DT05TVCggMS4wLCAxNiApLCAtKG9wdXNfaW50MzIp
bGFtYmRhX1ExNiwgICAgICAgIGxhbWJkYV9RMTYgKTsKLSAgICAgICAgZGVuX1EyNCAgPSBzaWxr
X1NNTEFXQiggU0lMS19GSVhfQ09OU1QoIDEuMCwgMjQgKSwgY29lZnNfc3luX1EyNFsgMCBdLCBs
YW1iZGFfUTE2ICk7Ci0gICAgICAgIGdhaW5fc3luX1ExNiA9IHNpbGtfRElWMzJfdmFyUSggbm9t
X1ExNiwgZGVuX1EyNCwgMjQgKTsKLSAgICAgICAgZGVuX1EyNCAgPSBzaWxrX1NNTEFXQiggU0lM
S19GSVhfQ09OU1QoIDEuMCwgMjQgKSwgY29lZnNfYW5hX1EyNFsgMCBdLCBsYW1iZGFfUTE2ICk7
Ci0gICAgICAgIGdhaW5fYW5hX1ExNiA9IHNpbGtfRElWMzJfdmFyUSggbm9tX1ExNiwgZGVuX1Ey
NCwgMjQgKTsKKyAgICAgICAgZGVuX1EyNCAgPSBzaWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1Qo
IDEuMCwgMjQgKSwgY29lZnNfUTI0WyAwIF0sIGxhbWJkYV9RMTYgKTsKKyAgICAgICAgZ2Fpbl9R
MTYgPSBzaWxrX0RJVjMyX3ZhclEoIG5vbV9RMTYsIGRlbl9RMjQsIDI0ICk7CiAgICAgICAgIGZv
ciggaSA9IDA7IGkgPCBvcmRlcjsgaSsrICkgewotICAgICAgICAgICAgY29lZnNfc3luX1EyNFsg
aSBdID0gc2lsa19TTVVMV1coIGdhaW5fc3luX1ExNiwgY29lZnNfc3luX1EyNFsgaSBdICk7Ci0g
ICAgICAgICAgICBjb2Vmc19hbmFfUTI0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9hbmFfUTE2
LCBjb2Vmc19hbmFfUTI0WyBpIF0gKTsKKyAgICAgICAgICAgIGNvZWZzX1EyNFsgaSBdID0gc2ls
a19TTVVMV1coIGdhaW5fUTE2LCBjb2Vmc19RMjRbIGkgXSApOwogICAgICAgICB9CiAgICAgfQog
ICAgIHNpbGtfYXNzZXJ0KCAwICk7CiB9CiAKLSNpZiBkZWZpbmVkKE1JUFNyMV9BU00pCisvKiBE
aXNhYmxlIE1JUFMgdmVyc2lvbiB1bnRpbCBpdCdzIHVwZGF0ZWQuICovCisjaWYgMCAmJiBkZWZp
bmVkKE1JUFNyMV9BU00pCiAjaW5jbHVkZSAibWlwcy9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVhf
bWlwc3IxLmgiCiAjZW5kaWYKIApAQCAtMTU1LDE0ICsxNDYsMTMgQEAgdm9pZCBzaWxrX25vaXNl
X3NoYXBlX2FuYWx5c2lzX0ZJWCgKICkKIHsKICAgICBzaWxrX3NoYXBlX3N0YXRlX0ZJWCAqcHNT
aGFwZVN0ID0gJnBzRW5jLT5zU2hhcGU7Ci0gICAgb3B1c19pbnQgICAgIGssIGksIG5TYW1wbGVz
LCBRbnJnLCBiX1ExNCwgd2FycGluZ19RMTYsIHNjYWxlID0gMDsKLSAgICBvcHVzX2ludDMyICAg
U05SX2Fkal9kQl9RNywgSGFybUJvb3N0X1ExNiwgSGFybVNoYXBlR2Fpbl9RMTYsIFRpbHRfUTE2
LCB0bXAzMjsKLSAgICBvcHVzX2ludDMyICAgbnJnLCBwcmVfbnJnX1EzMCwgbG9nX2VuZXJneV9R
NywgbG9nX2VuZXJneV9wcmV2X1E3LCBlbmVyZ3lfdmFyaWF0aW9uX1E3OwotICAgIG9wdXNfaW50
MzIgICBkZWx0YV9RMTYsIEJXRXhwMV9RMTYsIEJXRXhwMl9RMTYsIGdhaW5fbXVsdF9RMTYsIGdh
aW5fYWRkX1ExNiwgc3RyZW5ndGhfUTE2LCBiX1E4OworICAgIG9wdXNfaW50ICAgICBrLCBpLCBu
U2FtcGxlcywgblNlZ3MsIFFucmcsIGJfUTE0LCB3YXJwaW5nX1ExNiwgc2NhbGUgPSAwOworICAg
IG9wdXNfaW50MzIgICBTTlJfYWRqX2RCX1E3LCBIYXJtU2hhcGVHYWluX1ExNiwgVGlsdF9RMTYs
IHRtcDMyOworICAgIG9wdXNfaW50MzIgICBucmcsIGxvZ19lbmVyZ3lfUTcsIGxvZ19lbmVyZ3lf
cHJldl9RNywgZW5lcmd5X3ZhcmlhdGlvbl9RNzsKKyAgICBvcHVzX2ludDMyICAgQldFeHBfUTE2
LCBnYWluX211bHRfUTE2LCBnYWluX2FkZF9RMTYsIHN0cmVuZ3RoX1ExNiwgYl9RODsKICAgICBv
cHVzX2ludDMyICAgYXV0b19jb3JyWyAgICAgTUFYX1NIQVBFX0xQQ19PUkRFUiArIDEgXTsKICAg
ICBvcHVzX2ludDMyICAgcmVmbF9jb2VmX1ExNlsgTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwotICAg
IG9wdXNfaW50MzIgICBBUjFfUTI0WyAgICAgICBNQVhfU0hBUEVfTFBDX09SREVSIF07Ci0gICAg
b3B1c19pbnQzMiAgIEFSMl9RMjRbICAgICAgIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKKyAgICBv
cHVzX2ludDMyICAgQVJfUTI0WyAgICAgICBNQVhfU0hBUEVfTFBDX09SREVSIF07CiAgICAgVkFS
REVDTCggb3B1c19pbnQxNiwgeF93aW5kb3dlZCApOwogICAgIGNvbnN0IG9wdXNfaW50MTYgKnhf
cHRyLCAqcGl0Y2hfcmVzX3B0cjsKICAgICBTQVZFX1NUQUNLOwpAQCAtMjA5LDE0ICsxOTksMTQg
QEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWCgKICAgICBpZiggcHNFbmMtPnND
bW4uaW5kaWNlcy5zaWduYWxUeXBlID09IFRZUEVfVk9JQ0VEICkgewogICAgICAgICAvKiBJbml0
aWFsbHkgc2V0IHRvIDA7IG1heSBiZSBvdmVycnVsZWQgaW4gcHJvY2Vzc19nYWlucyguLikgKi8K
ICAgICAgICAgcHNFbmMtPnNDbW4uaW5kaWNlcy5xdWFudE9mZnNldFR5cGUgPSAwOwotICAgICAg
ICBwc0VuY0N0cmwtPnNwYXJzZW5lc3NfUTggPSAwOwogICAgIH0gZWxzZSB7CiAgICAgICAgIC8q
IFNwYXJzZW5lc3MgbWVhc3VyZSwgYmFzZWQgb24gcmVsYXRpdmUgZmx1Y3R1YXRpb25zIG9mIGVu
ZXJneSBwZXIgMiBtaWxsaXNlY29uZHMgKi8KICAgICAgICAgblNhbXBsZXMgPSBzaWxrX0xTSElG
VCggcHNFbmMtPnNDbW4uZnNfa0h6LCAxICk7CiAgICAgICAgIGVuZXJneV92YXJpYXRpb25fUTcg
PSAwOwogICAgICAgICBsb2dfZW5lcmd5X3ByZXZfUTcgID0gMDsKICAgICAgICAgcGl0Y2hfcmVz
X3B0ciA9IHBpdGNoX3JlczsKLSAgICAgICAgZm9yKCBrID0gMDsgayA8IHNpbGtfU01VTEJCKCBT
VUJfRlJBTUVfTEVOR1RIX01TLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciApIC8gMjsgaysrICkgewor
ICAgICAgICBuU2VncyA9IHNpbGtfU01VTEJCKCBTVUJfRlJBTUVfTEVOR1RIX01TLCBwc0VuYy0+
c0Ntbi5uYl9zdWJmciApIC8gMjsKKyAgICAgICAgZm9yKCBrID0gMDsgayA8IG5TZWdzOyBrKysg
KSB7CiAgICAgICAgICAgICBzaWxrX3N1bV9zcXJfc2hpZnQoICZucmcsICZzY2FsZSwgcGl0Y2hf
cmVzX3B0ciwgblNhbXBsZXMgKTsKICAgICAgICAgICAgIG5yZyArPSBzaWxrX1JTSElGVCggblNh
bXBsZXMsIHNjYWxlICk7ICAgICAgICAgICAvKiBRKC1zY2FsZSkqLwogCkBAIC0yMjgsMTggKzIx
OCwxMiBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogICAgICAgICAgICAg
cGl0Y2hfcmVzX3B0ciArPSBuU2FtcGxlczsKICAgICAgICAgfQogCi0gICAgICAgIHBzRW5jQ3Ry
bC0+c3BhcnNlbmVzc19ROCA9IHNpbGtfUlNISUZUKCBzaWxrX3NpZ21fUTE1KCBzaWxrX1NNVUxX
QiggZW5lcmd5X3ZhcmlhdGlvbl9RNyAtCi0gICAgICAgICAgICBTSUxLX0ZJWF9DT05TVCggNS4w
LCA3ICksIFNJTEtfRklYX0NPTlNUKCAwLjEsIDE2ICkgKSApLCA3ICk7Ci0KICAgICAgICAgLyog
U2V0IHF1YW50aXphdGlvbiBvZmZzZXQgZGVwZW5kaW5nIG9uIHNwYXJzZW5lc3MgbWVhc3VyZSAq
LwotICAgICAgICBpZiggcHNFbmNDdHJsLT5zcGFyc2VuZXNzX1E4ID4gU0lMS19GSVhfQ09OU1Qo
IFNQQVJTRU5FU1NfVEhSRVNIT0xEX1FOVF9PRkZTRVQsIDggKSApIHsKKyAgICAgICAgaWYoIGVu
ZXJneV92YXJpYXRpb25fUTcgPiBTSUxLX0ZJWF9DT05TVCggRU5FUkdZX1ZBUklBVElPTl9USFJF
U0hPTERfUU5UX09GRlNFVCwgNyApICogKG5TZWdzLTEpICkgewogICAgICAgICAgICAgcHNFbmMt
PnNDbW4uaW5kaWNlcy5xdWFudE9mZnNldFR5cGUgPSAwOwogICAgICAgICB9IGVsc2UgewogICAg
ICAgICAgICAgcHNFbmMtPnNDbW4uaW5kaWNlcy5xdWFudE9mZnNldFR5cGUgPSAxOwogICAgICAg
ICB9Ci0KLSAgICAgICAgLyogSW5jcmVhc2UgY29kaW5nIFNOUiBmb3Igc3BhcnNlIHNpZ25hbHMg
Ki8KLSAgICAgICAgU05SX2Fkal9kQl9RNyA9IHNpbGtfU01MQVdCKCBTTlJfYWRqX2RCX1E3LCBT
SUxLX0ZJWF9DT05TVCggU1BBUlNFX1NOUl9JTkNSX2RCLCAxNSApLCBwc0VuY0N0cmwtPnNwYXJz
ZW5lc3NfUTggLSBTSUxLX0ZJWF9DT05TVCggMC41LCA4ICkgKTsKICAgICB9CiAKICAgICAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KQEAgLTI0NywxNCArMjMxLDggQEAgdm9pZCBz
aWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWCgKICAgICAvKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KICAgICAvKiBNb3JlIEJXRSBmb3Igc2lnbmFscyB3aXRoIGhpZ2ggcHJlZGlj
dGlvbiBnYWluICovCiAgICAgc3RyZW5ndGhfUTE2ID0gc2lsa19TTVVMV0IoIHBzRW5jQ3RybC0+
cHJlZEdhaW5fUTE2LCBTSUxLX0ZJWF9DT05TVCggRklORF9QSVRDSF9XSElURV9OT0lTRV9GUkFD
VElPTiwgMTYgKSApOwotICAgIEJXRXhwMV9RMTYgPSBCV0V4cDJfUTE2ID0gc2lsa19ESVYzMl92
YXJRKCBTSUxLX0ZJWF9DT05TVCggQkFORFdJRFRIX0VYUEFOU0lPTiwgMTYgKSwKKyAgICBCV0V4
cF9RMTYgPSBzaWxrX0RJVjMyX3ZhclEoIFNJTEtfRklYX0NPTlNUKCBCQU5EV0lEVEhfRVhQQU5T
SU9OLCAxNiApLAogICAgICAgICBzaWxrX1NNTEFXVyggU0lMS19GSVhfQ09OU1QoIDEuMCwgMTYg
KSwgc3RyZW5ndGhfUTE2LCBzdHJlbmd0aF9RMTYgKSwgMTYgKTsKLSAgICBkZWx0YV9RMTYgID0g
c2lsa19TTVVMV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDE2ICkgLSBzaWxrX1NNVUxCQiggMywg
cHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eV9RMTQgKSwKLSAgICAgICAgU0lMS19GSVhfQ09OU1Qo
IExPV19SQVRFX0JBTkRXSURUSF9FWFBBTlNJT05fREVMVEEsIDE2ICkgKTsKLSAgICBCV0V4cDFf
UTE2ID0gc2lsa19TVUIzMiggQldFeHAxX1ExNiwgZGVsdGFfUTE2ICk7Ci0gICAgQldFeHAyX1Ex
NiA9IHNpbGtfQUREMzIoIEJXRXhwMl9RMTYsIGRlbHRhX1ExNiApOwotICAgIC8qIEJXRXhwMSB3
aWxsIGJlIGFwcGxpZWQgYWZ0ZXIgQldFeHAyLCBzbyBtYWtlIGl0IHJlbGF0aXZlICovCi0gICAg
QldFeHAxX1ExNiA9IHNpbGtfRElWMzJfMTYoIHNpbGtfTFNISUZUKCBCV0V4cDFfUTE2LCAxNCAp
LCBzaWxrX1JTSElGVCggQldFeHAyX1ExNiwgMiApICk7CiAKICAgICBpZiggcHNFbmMtPnNDbW4u
d2FycGluZ19RMTYgPiAwICkgewogICAgICAgICAvKiBTbGlnaHRseSBtb3JlIHdhcnBpbmcgaW4g
YW5hbHlzaXMgd2lsbCBtb3ZlIHF1YW50aXphdGlvbiBub2lzZSB1cCBpbiBmcmVxdWVuY3ksIHdo
ZXJlIGl0J3MgYmV0dGVyIG1hc2tlZCAqLwpAQCAtMjg0LDcgKzI2Miw3IEBAIHZvaWQgc2lsa19u
b2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAKICAgICAgICAgaWYoIHBzRW5jLT5zQ21uLndhcnBp
bmdfUTE2ID4gMCApIHsKICAgICAgICAgICAgIC8qIENhbGN1bGF0ZSB3YXJwZWQgYXV0byBjb3Jy
ZWxhdGlvbiAqLwotICAgICAgICAgICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCgg
YXV0b19jb3JyLCAmc2NhbGUsIHhfd2luZG93ZWQsIHdhcnBpbmdfUTE2LCBwc0VuYy0+c0Ntbi5z
aGFwZVdpbkxlbmd0aCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAgICAgICAg
ICBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKCBhdXRvX2NvcnIsICZzY2FsZSwgeF93
aW5kb3dlZCwgd2FycGluZ19RMTYsIHBzRW5jLT5zQ21uLnNoYXBlV2luTGVuZ3RoLCBwc0VuYy0+
c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIGFyY2ggKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAg
ICAgIC8qIENhbGN1bGF0ZSByZWd1bGFyIGF1dG8gY29ycmVsYXRpb24gKi8KICAgICAgICAgICAg
IHNpbGtfYXV0b2NvcnIoIGF1dG9fY29yciwgJnNjYWxlLCB4X3dpbmRvd2VkLCBwc0VuYy0+c0Nt
bi5zaGFwZVdpbkxlbmd0aCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICsgMSwgYXJjaCAp
OwpAQCAtMjk5LDcgKzI3Nyw3IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgo
CiAgICAgICAgIHNpbGtfYXNzZXJ0KCBucmcgPj0gMCApOwogCiAgICAgICAgIC8qIENvbnZlcnQg
cmVmbGVjdGlvbiBjb2VmZmljaWVudHMgdG8gcHJlZGljdGlvbiBjb2VmZmljaWVudHMgKi8KLSAg
ICAgICAgc2lsa19rMmFfUTE2KCBBUjJfUTI0LCByZWZsX2NvZWZfUTE2LCBwc0VuYy0+c0Ntbi5z
aGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAgc2lsa19rMmFfUTE2KCBBUl9RMjQsIHJlZmxfY29l
Zl9RMTYsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwogCiAgICAgICAgIFFucmcgPSAt
c2NhbGU7ICAgICAgICAgIC8qIHJhbmdlOiAtMTIuLi4zMCovCiAgICAgICAgIHNpbGtfYXNzZXJ0
KCBRbnJnID49IC0xMiApOwpAQCAtMzE4LDQwICsyOTYsMzQgQEAgdm9pZCBzaWxrX25vaXNlX3No
YXBlX2FuYWx5c2lzX0ZJWCgKIAogICAgICAgICBpZiggcHNFbmMtPnNDbW4ud2FycGluZ19RMTYg
PiAwICkgewogICAgICAgICAgICAgLyogQWRqdXN0IGdhaW4gZm9yIHdhcnBpbmcgKi8KLSAgICAg
ICAgICAgIGdhaW5fbXVsdF9RMTYgPSB3YXJwZWRfZ2FpbiggQVIyX1EyNCwgd2FycGluZ19RMTYs
IHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwotICAgICAgICAgICAgc2lsa19hc3NlcnQo
IHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0gPj0gMCApOwotICAgICAgICAgICAgaWYgKCBzaWxr
X1NNVUxXVyggc2lsa19SU0hJRlRfUk9VTkQoIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0sIDEg
KSwgZ2Fpbl9tdWx0X1ExNiApID49ICggc2lsa19pbnQzMl9NQVggPj4gMSApICkgewotICAgICAg
ICAgICAgICAgcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSA9IHNpbGtfaW50MzJfTUFYOworICAg
ICAgICAgICAgZ2Fpbl9tdWx0X1ExNiA9IHdhcnBlZF9nYWluKCBBUl9RMjQsIHdhcnBpbmdfUTE2
LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAgICAgIHNpbGtfYXNzZXJ0
KCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID4gMCApOworICAgICAgICAgICAgaWYoIHBzRW5j
Q3RybC0+R2FpbnNfUTE2WyBrIF0gPCBTSUxLX0ZJWF9DT05TVCggMC4yNSwgMTYgKSApIHsKKyAg
ICAgICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID0gc2lsa19TTVVMV1coIHBz
RW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0sIGdhaW5fbXVsdF9RMTYgKTsKICAgICAgICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID0gc2lsa19T
TVVMV1coIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0sIGdhaW5fbXVsdF9RMTYgKTsKKyAgICAg
ICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID0gc2lsa19TTVVMV1coIHNpbGtf
UlNISUZUX1JPVU5EKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdLCAxICksIGdhaW5fbXVsdF9R
MTYgKTsKKyAgICAgICAgICAgICAgICBpZiAoIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0gPj0g
KCBzaWxrX2ludDMyX01BWCA+PiAxICkgKSB7CisgICAgICAgICAgICAgICAgICAgIHBzRW5jQ3Ry
bC0+R2FpbnNfUTE2WyBrIF0gPSBzaWxrX2ludDMyX01BWDsKKyAgICAgICAgICAgICAgICB9IGVs
c2UgeworICAgICAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID0gc2ls
a19MU0hJRlQzMiggcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSwgMSApOworICAgICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBwc0VuY0N0cmwt
PkdhaW5zX1ExNlsgayBdID4gMCApOwogICAgICAgICB9CiAKLSAgICAgICAgLyogQmFuZHdpZHRo
IGV4cGFuc2lvbiBmb3Igc3ludGhlc2lzIGZpbHRlciBzaGFwaW5nICovCi0gICAgICAgIHNpbGtf
YndleHBhbmRlcl8zMiggQVIyX1EyNCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBCV0V4
cDJfUTE2ICk7Ci0KLSAgICAgICAgLyogQ29tcHV0ZSBub2lzZSBzaGFwaW5nIGZpbHRlciBjb2Vm
ZmljaWVudHMgKi8KLSAgICAgICAgc2lsa19tZW1jcHkoIEFSMV9RMjQsIEFSMl9RMjQsIHBzRW5j
LT5zQ21uLnNoYXBpbmdMUENPcmRlciAqIHNpemVvZiggb3B1c19pbnQzMiApICk7Ci0KLSAgICAg
ICAgLyogQmFuZHdpZHRoIGV4cGFuc2lvbiBmb3IgYW5hbHlzaXMgZmlsdGVyIHNoYXBpbmcgKi8K
LSAgICAgICAgc2lsa19hc3NlcnQoIEJXRXhwMV9RMTYgPD0gU0lMS19GSVhfQ09OU1QoIDEuMCwg
MTYgKSApOwotICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfMzIoIEFSMV9RMjQsIHBzRW5jLT5zQ21u
LnNoYXBpbmdMUENPcmRlciwgQldFeHAxX1ExNiApOwotCi0gICAgICAgIC8qIFJhdGlvIG9mIHBy
ZWRpY3Rpb24gZ2FpbnMsIGluIGVuZXJneSBkb21haW4gKi8KLSAgICAgICAgcHJlX25yZ19RMzAg
PSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoIEFSMl9RMjQsIHBzRW5jLT5zQ21uLnNo
YXBpbmdMUENPcmRlciApOwotICAgICAgICBucmcgICAgICAgICA9IHNpbGtfTFBDX2ludmVyc2Vf
cHJlZF9nYWluX1EyNCggQVIxX1EyNCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7Ci0K
LSAgICAgICAgLypwc0VuY0N0cmwtPkdhaW5zUHJlWyBrIF0gPSAxLjBmIC0gMC43ZiAqICggMS4w
ZiAtIHByZV9ucmcgLyBucmcgKSA9IDAuM2YgKyAwLjdmICogcHJlX25yZyAvIG5yZzsqLwotICAg
ICAgICBwcmVfbnJnX1EzMCA9IHNpbGtfTFNISUZUMzIoIHNpbGtfU01VTFdCKCBwcmVfbnJnX1Ez
MCwgU0lMS19GSVhfQ09OU1QoIDAuNywgMTUgKSApLCAxICk7Ci0gICAgICAgIHBzRW5jQ3RybC0+
R2FpbnNQcmVfUTE0WyBrIF0gPSAoIG9wdXNfaW50ICkgU0lMS19GSVhfQ09OU1QoIDAuMywgMTQg
KSArIHNpbGtfRElWMzJfdmFyUSggcHJlX25yZ19RMzAsIG5yZywgMTQgKTsKKyAgICAgICAgLyog
QmFuZHdpZHRoIGV4cGFuc2lvbiAqLworICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfMzIoIEFSX1Ey
NCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBCV0V4cF9RMTYgKTsKIAotICAgICAgICAv
KiBDb252ZXJ0IHRvIG1vbmljIHdhcnBlZCBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cyBhbmQgbGlt
aXQgYWJzb2x1dGUgdmFsdWVzICovCi0gICAgICAgIGxpbWl0X3dhcnBlZF9jb2VmcyggQVIyX1Ey
NCwgQVIxX1EyNCwgd2FycGluZ19RMTYsIFNJTEtfRklYX0NPTlNUKCAzLjk5OSwgMjQgKSwgcHNF
bmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAgICAgIGlmKCBwc0VuYy0+c0Ntbi53YXJw
aW5nX1ExNiA+IDAgKSB7CisgICAgICAgICAgICAvKiBDb252ZXJ0IHRvIG1vbmljIHdhcnBlZCBw
cmVkaWN0aW9uIGNvZWZmaWNpZW50cyBhbmQgbGltaXQgYWJzb2x1dGUgdmFsdWVzICovCisgICAg
ICAgICAgICBsaW1pdF93YXJwZWRfY29lZnMoIEFSX1EyNCwgd2FycGluZ19RMTYsIFNJTEtfRklY
X0NPTlNUKCAzLjk5OSwgMjQgKSwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CiAKLSAg
ICAgICAgLyogQ29udmVydCBmcm9tIFEyNCB0byBRMTMgYW5kIHN0b3JlIGluIGludDE2ICovCi0g
ICAgICAgIGZvciggaSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXI7IGkrKyAp
IHsKLSAgICAgICAgICAgIHBzRW5jQ3RybC0+QVIxX1ExM1sgayAqIE1BWF9TSEFQRV9MUENfT1JE
RVIgKyBpIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCggQVIx
X1EyNFsgaSBdLCAxMSApICk7Ci0gICAgICAgICAgICBwc0VuY0N0cmwtPkFSMl9RMTNbIGsgKiBN
QVhfU0hBUEVfTFBDX09SREVSICsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19S
U0hJRlRfUk9VTkQoIEFSMl9RMjRbIGkgXSwgMTEgKSApOworICAgICAgICAgICAgLyogQ29udmVy
dCBmcm9tIFEyNCB0byBRMTMgYW5kIHN0b3JlIGluIGludDE2ICovCisgICAgICAgICAgICBmb3Io
IGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyOyBpKysgKSB7CisgICAgICAg
ICAgICAgICAgcHNFbmNDdHJsLT5BUl9RMTNbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSICsgaSBd
ID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIEFSX1EyNFsgaSBd
LCAxMSApICk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBz
aWxrX0xQQ19maXQoICZwc0VuY0N0cmwtPkFSX1ExM1sgayAqIE1BWF9TSEFQRV9MUENfT1JERVIg
XSwgQVJfUTI0LCAxMywgMjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwogICAgICAg
ICB9CiAgICAgfQogCkBAIC0zNjgsMTEgKzM0MCw2IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9h
bmFseXNpc19GSVgoCiAgICAgICAgIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0gPSBzaWxrX0FE
RF9QT1NfU0FUMzIoIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0sIGdhaW5fYWRkX1ExNiApOwog
ICAgIH0KIAotICAgIGdhaW5fbXVsdF9RMTYgPSBTSUxLX0ZJWF9DT05TVCggMS4wLCAxNiApICsg
c2lsa19SU0hJRlRfUk9VTkQoIHNpbGtfTUxBKCBTSUxLX0ZJWF9DT05TVCggSU5QVVRfVElMVCwg
MjYgKSwKLSAgICAgICAgcHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eV9RMTQsIFNJTEtfRklYX0NP
TlNUKCBISUdIX1JBVEVfSU5QVVRfVElMVCwgMTIgKSApLCAxMCApOwotICAgIGZvciggayA9IDA7
IGsgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaysrICkgewotICAgICAgICBwc0VuY0N0cmwtPkdh
aW5zUHJlX1ExNFsgayBdID0gc2lsa19TTVVMV0IoIGdhaW5fbXVsdF9RMTYsIHBzRW5jQ3RybC0+
R2FpbnNQcmVfUTE0WyBrIF0gKTsKLSAgICB9CiAKICAgICAvKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIENvbnRyb2wgbG93LWZyZXF1ZW5j
eSBzaGFwaW5nIGFuZCBub2lzZSB0aWx0ICovCkBAIC00MTAsMTQgKzM3Nyw2IEBAIHZvaWQgc2ls
a19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKiovCiAgICAgLyogSEFSTU9OSUMgU0hBUElORyBDT05UUk9MICovCiAgICAgLyoqKioqKioq
KioqKioqKioqKioqKioqKioqKiovCi0gICAgLyogQ29udHJvbCBib29zdGluZyBvZiBoYXJtb25p
YyBmcmVxdWVuY2llcyAqLwotICAgIEhhcm1Cb29zdF9RMTYgPSBzaWxrX1NNVUxXQiggc2lsa19T
TVVMV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDE3ICkgLSBzaWxrX0xTSElGVCggcHNFbmNDdHJs
LT5jb2RpbmdfcXVhbGl0eV9RMTQsIDMgKSwKLSAgICAgICAgcHNFbmMtPkxUUENvcnJfUTE1ICks
IFNJTEtfRklYX0NPTlNUKCBMT1dfUkFURV9IQVJNT05JQ19CT09TVCwgMTYgKSApOwotCi0gICAg
LyogTW9yZSBoYXJtb25pYyBib29zdCBmb3Igbm9pc3kgaW5wdXQgc2lnbmFscyAqLwotICAgIEhh
cm1Cb29zdF9RMTYgPSBzaWxrX1NNTEFXQiggSGFybUJvb3N0X1ExNiwKLSAgICAgICAgU0lMS19G
SVhfQ09OU1QoIDEuMCwgMTYgKSAtIHNpbGtfTFNISUZUKCBwc0VuY0N0cmwtPmlucHV0X3F1YWxp
dHlfUTE0LCAyICksIFNJTEtfRklYX0NPTlNUKCBMT1dfSU5QVVRfUVVBTElUWV9IQVJNT05JQ19C
T09TVCwgMTYgKSApOwotCiAgICAgaWYoIFVTRV9IQVJNX1NIQVBJTkcgJiYgcHNFbmMtPnNDbW4u
aW5kaWNlcy5zaWduYWxUeXBlID09IFRZUEVfVk9JQ0VEICkgewogICAgICAgICAvKiBNb3JlIGhh
cm1vbmljIG5vaXNlIHNoYXBpbmcgZm9yIGhpZ2ggYml0cmF0ZXMgb3Igbm9pc3kgaW5wdXQgKi8K
ICAgICAgICAgSGFybVNoYXBlR2Fpbl9RMTYgPSBzaWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1Qo
IEhBUk1PTklDX1NIQVBJTkcsIDE2ICksCkBAIC00MzUsMTQgKzM5NCwxMSBAQCB2b2lkIHNpbGtf
bm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogICAgIC8qIFNtb290aCBvdmVyIHN1YmZyYW1lcyAq
LwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIGZvciggayA9IDA7IGsgPCBN
QVhfTkJfU1VCRlI7IGsrKyApIHsKLSAgICAgICAgcHNTaGFwZVN0LT5IYXJtQm9vc3Rfc210aF9R
MTYgPQotICAgICAgICAgICAgc2lsa19TTUxBV0IoIHBzU2hhcGVTdC0+SGFybUJvb3N0X3NtdGhf
UTE2LCAgICAgSGFybUJvb3N0X1ExNiAgICAgLSBwc1NoYXBlU3QtPkhhcm1Cb29zdF9zbXRoX1Ex
NiwgICAgIFNJTEtfRklYX0NPTlNUKCBTVUJGUl9TTVRIX0NPRUYsIDE2ICkgKTsKICAgICAgICAg
cHNTaGFwZVN0LT5IYXJtU2hhcGVHYWluX3NtdGhfUTE2ID0KICAgICAgICAgICAgIHNpbGtfU01M
QVdCKCBwc1NoYXBlU3QtPkhhcm1TaGFwZUdhaW5fc210aF9RMTYsIEhhcm1TaGFwZUdhaW5fUTE2
IC0gcHNTaGFwZVN0LT5IYXJtU2hhcGVHYWluX3NtdGhfUTE2LCBTSUxLX0ZJWF9DT05TVCggU1VC
RlJfU01USF9DT0VGLCAxNiApICk7CiAgICAgICAgIHBzU2hhcGVTdC0+VGlsdF9zbXRoX1ExNiA9
CiAgICAgICAgICAgICBzaWxrX1NNTEFXQiggcHNTaGFwZVN0LT5UaWx0X3NtdGhfUTE2LCAgICAg
ICAgICBUaWx0X1ExNiAgICAgICAgICAtIHBzU2hhcGVTdC0+VGlsdF9zbXRoX1ExNiwgICAgICAg
ICAgU0lMS19GSVhfQ09OU1QoIFNVQkZSX1NNVEhfQ09FRiwgMTYgKSApOwogCi0gICAgICAgIHBz
RW5jQ3RybC0+SGFybUJvb3N0X1ExNFsgayBdICAgICA9ICggb3B1c19pbnQgKXNpbGtfUlNISUZU
X1JPVU5EKCBwc1NoYXBlU3QtPkhhcm1Cb29zdF9zbXRoX1ExNiwgICAgIDIgKTsKICAgICAgICAg
cHNFbmNDdHJsLT5IYXJtU2hhcGVHYWluX1ExNFsgayBdID0gKCBvcHVzX2ludCApc2lsa19SU0hJ
RlRfUk9VTkQoIHBzU2hhcGVTdC0+SGFybVNoYXBlR2Fpbl9zbXRoX1ExNiwgMiApOwogICAgICAg
ICBwc0VuY0N0cmwtPlRpbHRfUTE0WyBrIF0gICAgICAgICAgPSAoIG9wdXNfaW50IClzaWxrX1JT
SElGVF9ST1VORCggcHNTaGFwZVN0LT5UaWx0X3NtdGhfUTE2LCAgICAgICAgICAyICk7CiAgICAg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3BpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
Zml4ZWQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYwppbmRleCAwMWJiOWZjMGE4MzdiNmMzNDkz
M2ZjYjA2NmE3OTE4NzM1NDBkZWEzLi44ZGYxMDllNmNmNTExMDdlNDc3NmM3MDNlMmE1NjJkODli
ODI2ZmVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZml4ZWQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYwpAQCAtODAsNyArODAsNyBA
QCBzdGF0aWMgdm9pZCBzaWxrX1BfQW5hX2NhbGNfZW5lcmd5X3N0MygKIC8qICAgICAgRklYRUQg
UE9JTlQgQ09SRSBQSVRDSCBBTkFMWVNJUyBGVU5DVElPTiAgICAgICAgICAgICAqLwogLyoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
CiBvcHVzX2ludCBzaWxrX3BpdGNoX2FuYWx5c2lzX2NvcmUoICAgICAgICAgICAgICAgICAgLyog
TyAgICBWb2ljaW5nIGVzdGltYXRlOiAwIHZvaWNlZCwgMSB1bnZvaWNlZCAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqZnJhbWUsICAgICAg
ICAgICAgIC8qIEkgICAgU2lnbmFsIG9mIGxlbmd0aCBQRV9GUkFNRV9MRU5HVEhfTVMqRnNfa0h6
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmZy
YW1lX3Vuc2NhbGVkLCAgICAvKiBJICAgIFNpZ25hbCBvZiBsZW5ndGggUEVfRlJBTUVfTEVOR1RI
X01TKkZzX2tIeiAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICAg
ICAgICAgICpwaXRjaF9vdXQsICAgICAgICAgLyogTyAgICA0IHBpdGNoIGxhZyB2YWx1ZXMgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MTYg
ICAgICAgICAgICAgICAgICAqbGFnSW5kZXgsICAgICAgICAgIC8qIE8gICAgTGFnIEluZGV4ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBv
cHVzX2ludDggICAgICAgICAgICAgICAgICAgKmNvbnRvdXJJbmRleCwgICAgICAvKiBPICAgIFBp
dGNoIGNvbnRvdXIgSW5kZXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCkBAIC05NCwxNiArOTQsMTcgQEAgb3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19jb3Jl
KCAgICAgICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMAogICAgIGludCAg
ICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgIC8qIEkgICAgUnVuLXRp
bWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
ICkKIHsKLSAgICBWQVJERUNMKCBvcHVzX2ludDE2LCBmcmFtZV84a0h6ICk7CisgICAgVkFSREVD
TCggb3B1c19pbnQxNiwgZnJhbWVfOGtIel9idWYgKTsKICAgICBWQVJERUNMKCBvcHVzX2ludDE2
LCBmcmFtZV80a0h6ICk7CisgICAgVkFSREVDTCggb3B1c19pbnQxNiwgZnJhbWVfc2NhbGVkICk7
CiAgICAgb3B1c19pbnQzMiBmaWx0X3N0YXRlWyA2IF07Ci0gICAgY29uc3Qgb3B1c19pbnQxNiAq
aW5wdXRfZnJhbWVfcHRyOworICAgIGNvbnN0IG9wdXNfaW50MTYgKmZyYW1lLCAqZnJhbWVfOGtI
ejsKICAgICBvcHVzX2ludCAgIGksIGssIGQsIGo7CiAgICAgVkFSREVDTCggb3B1c19pbnQxNiwg
QyApOwogICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIHhjb3JyMzIgKTsKICAgICBjb25zdCBvcHVz
X2ludDE2ICp0YXJnZXRfcHRyLCAqYmFzaXNfcHRyOwotICAgIG9wdXNfaW50MzIgY3Jvc3NfY29y
ciwgbm9ybWFsaXplciwgZW5lcmd5LCBzaGlmdCwgZW5lcmd5X2Jhc2lzLCBlbmVyZ3lfdGFyZ2V0
OwotICAgIG9wdXNfaW50ICAgZF9zcmNoWyBQRV9EX1NSQ0hfTEVOR1RIIF0sIENtYXgsIGxlbmd0
aF9kX3NyY2gsIGxlbmd0aF9kX2NvbXA7CisgICAgb3B1c19pbnQzMiBjcm9zc19jb3JyLCBub3Jt
YWxpemVyLCBlbmVyZ3ksIGVuZXJneV9iYXNpcywgZW5lcmd5X3RhcmdldDsKKyAgICBvcHVzX2lu
dCAgIGRfc3JjaFsgUEVfRF9TUkNIX0xFTkdUSCBdLCBDbWF4LCBsZW5ndGhfZF9zcmNoLCBsZW5n
dGhfZF9jb21wLCBzaGlmdDsKICAgICBWQVJERUNMKCBvcHVzX2ludDE2LCBkX2NvbXAgKTsKICAg
ICBvcHVzX2ludDMyIHN1bSwgdGhyZXNob2xkLCBsYWdfY291bnRlcjsKICAgICBvcHVzX2ludCAg
IENCaW1heCwgQ0JpbWF4X25ldywgQ0JpbWF4X29sZCwgbGFnLCBzdGFydF9sYWcsIGVuZF9sYWcs
IGxhZ19uZXc7CkBAIC0xMTksNiArMTIwLDcgQEAgb3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNp
c19jb3JlKCAgICAgICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMAogICAg
IG9wdXNfaW50MzIgZGVsdGFfbGFnX2xvZzJfc3FyX1E3LCBsYWdfbG9nMl9RNywgcHJldkxhZ19s
b2cyX1E3LCBwcmV2X2xhZ19iaWFzX1ExMzsKICAgICBjb25zdCBvcHVzX2ludDggKkxhZ19DQl9w
dHI7CiAgICAgU0FWRV9TVEFDSzsKKwogICAgIC8qIENoZWNrIGZvciB2YWxpZCBzYW1wbGluZyBm
cmVxdWVuY3kgKi8KICAgICBzaWxrX2Fzc2VydCggRnNfa0h6ID09IDggfHwgRnNfa0h6ID09IDEy
IHx8IEZzX2tIeiA9PSAxNiApOwogCkBAIC0xMzcsMTcgKzEzOSwzMyBAQCBvcHVzX2ludCBzaWxr
X3BpdGNoX2FuYWx5c2lzX2NvcmUoICAgICAgICAgICAgICAgICAgLyogTyAgICBWb2ljaW5nIGVz
dGltYXRlOiAwCiAgICAgbWluX2xhZyAgICAgICAgICAgPSBQRV9NSU5fTEFHX01TICogRnNfa0h6
OwogICAgIG1heF9sYWcgICAgICAgICAgID0gUEVfTUFYX0xBR19NUyAqIEZzX2tIeiAtIDE7CiAK
KyAgICAvKiBEb3duc2NhbGUgaW5wdXQgaWYgbmVjZXNzYXJ5ICovCisgICAgc2lsa19zdW1fc3Fy
X3NoaWZ0KCAmZW5lcmd5LCAmc2hpZnQsIGZyYW1lX3Vuc2NhbGVkLCBmcmFtZV9sZW5ndGggKTsK
KyAgICBzaGlmdCArPSAzIC0gc2lsa19DTFozMiggZW5lcmd5ICk7ICAgICAgICAvKiBhdCBsZWFz
dCB0d28gYml0cyBoZWFkcm9vbSAqLworICAgIEFMTE9DKCBmcmFtZV9zY2FsZWQsIGZyYW1lX2xl
bmd0aCwgb3B1c19pbnQxNiApOworICAgIGlmKCBzaGlmdCA+IDAgKSB7CisgICAgICAgIHNoaWZ0
ID0gc2lsa19SU0hJRlQoIHNoaWZ0ICsgMSwgMSApOworICAgICAgICBmb3IoIGkgPSAwOyBpIDwg
ZnJhbWVfbGVuZ3RoOyBpKysgKSB7CisgICAgICAgICAgICBmcmFtZV9zY2FsZWRbIGkgXSA9IHNp
bGtfUlNISUZUKCBmcmFtZV91bnNjYWxlZFsgaSBdLCBzaGlmdCApOworICAgICAgICB9CisgICAg
ICAgIGZyYW1lID0gZnJhbWVfc2NhbGVkOworICAgIH0gZWxzZSB7CisgICAgICAgIGZyYW1lID0g
ZnJhbWVfdW5zY2FsZWQ7CisgICAgfQorCisgICAgQUxMT0MoIGZyYW1lXzhrSHpfYnVmLCAoIEZz
X2tIeiA9PSA4ICkgPyAxIDogZnJhbWVfbGVuZ3RoXzhrSHosIG9wdXNfaW50MTYgKTsKICAgICAv
KiBSZXNhbXBsZSBmcm9tIGlucHV0IHNhbXBsZWQgYXQgRnNfa0h6IHRvIDgga0h6ICovCi0gICAg
QUxMT0MoIGZyYW1lXzhrSHosIGZyYW1lX2xlbmd0aF84a0h6LCBvcHVzX2ludDE2ICk7CiAgICAg
aWYoIEZzX2tIeiA9PSAxNiApIHsKICAgICAgICAgc2lsa19tZW1zZXQoIGZpbHRfc3RhdGUsIDAs
IDIgKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOwotICAgICAgICBzaWxrX3Jlc2FtcGxlcl9kb3du
MiggZmlsdF9zdGF0ZSwgZnJhbWVfOGtIeiwgZnJhbWUsIGZyYW1lX2xlbmd0aCApOworICAgICAg
ICBzaWxrX3Jlc2FtcGxlcl9kb3duMiggZmlsdF9zdGF0ZSwgZnJhbWVfOGtIel9idWYsIGZyYW1l
LCBmcmFtZV9sZW5ndGggKTsKKyAgICAgICAgZnJhbWVfOGtIeiA9IGZyYW1lXzhrSHpfYnVmOwog
ICAgIH0gZWxzZSBpZiggRnNfa0h6ID09IDEyICkgewogICAgICAgICBzaWxrX21lbXNldCggZmls
dF9zdGF0ZSwgMCwgNiAqIHNpemVvZiggb3B1c19pbnQzMiApICk7Ci0gICAgICAgIHNpbGtfcmVz
YW1wbGVyX2Rvd24yXzMoIGZpbHRfc3RhdGUsIGZyYW1lXzhrSHosIGZyYW1lLCBmcmFtZV9sZW5n
dGggKTsKKyAgICAgICAgc2lsa19yZXNhbXBsZXJfZG93bjJfMyggZmlsdF9zdGF0ZSwgZnJhbWVf
OGtIel9idWYsIGZyYW1lLCBmcmFtZV9sZW5ndGggKTsKKyAgICAgICAgZnJhbWVfOGtIeiA9IGZy
YW1lXzhrSHpfYnVmOwogICAgIH0gZWxzZSB7CiAgICAgICAgIHNpbGtfYXNzZXJ0KCBGc19rSHog
PT0gOCApOwotICAgICAgICBzaWxrX21lbWNweSggZnJhbWVfOGtIeiwgZnJhbWUsIGZyYW1lX2xl
bmd0aF84a0h6ICogc2l6ZW9mKG9wdXNfaW50MTYpICk7CisgICAgICAgIGZyYW1lXzhrSHogPSBm
cmFtZTsKICAgICB9CiAKICAgICAvKiBEZWNpbWF0ZSBhZ2FpbiB0byA0IGtIeiAqLwpAQCAtMTYw
LDE5ICsxNzgsNiBAQCBvcHVzX2ludCBzaWxrX3BpdGNoX2FuYWx5c2lzX2NvcmUoICAgICAgICAg
ICAgICAgICAgLyogTyAgICBWb2ljaW5nIGVzdGltYXRlOiAwCiAgICAgICAgIGZyYW1lXzRrSHpb
IGkgXSA9IHNpbGtfQUREX1NBVDE2KCBmcmFtZV80a0h6WyBpIF0sIGZyYW1lXzRrSHpbIGkgLSAx
IF0gKTsKICAgICB9CiAKLSAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICAgICoqIFNjYWxl
IDQga0h6IHNpZ25hbCBkb3duIHRvIHByZXZlbnQgY29ycmVsYXRpb25zIG1lYXN1cmVzIGZyb20g
b3ZlcmZsb3dpbmcKLSAgICAqKiBmaW5kIHNjYWxpbmcgYXMgbWF4IHNjYWxpbmcgZm9yIGVhY2gg
OGtIeig/KSBzdWJmcmFtZQotICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0KLSAgICAvKiBJ
bm5lciBwcm9kdWN0IGlzIGNhbGN1bGF0ZWQgd2l0aCBkaWZmZXJlbnQgbGVuZ3Rocywgc28gc2Nh
bGUgZm9yIHRoZSB3b3JzdCBjYXNlICovCi0gICAgc2lsa19zdW1fc3FyX3NoaWZ0KCAmZW5lcmd5
LCAmc2hpZnQsIGZyYW1lXzRrSHosIGZyYW1lX2xlbmd0aF80a0h6ICk7Ci0gICAgaWYoIHNoaWZ0
ID4gMCApIHsKLSAgICAgICAgc2hpZnQgPSBzaWxrX1JTSElGVCggc2hpZnQsIDEgKTsKLSAgICAg
ICAgZm9yKCBpID0gMDsgaSA8IGZyYW1lX2xlbmd0aF80a0h6OyBpKysgKSB7Ci0gICAgICAgICAg
ICBmcmFtZV80a0h6WyBpIF0gPSBzaWxrX1JTSElGVCggZnJhbWVfNGtIelsgaSBdLCBzaGlmdCAp
OwotICAgICAgICB9Ci0gICAgfQogCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAgICog
RklSU1QgU1RBR0UsIG9wZXJhdGluZyBpbiA0IGtoegpAQCAtMzExLDE4ICszMTYsNiBAQCBvcHVz
X2ludCBzaWxrX3BpdGNoX2FuYWx5c2lzX2NvcmUoICAgICAgICAgICAgICAgICAgLyogTyAgICBW
b2ljaW5nIGVzdGltYXRlOiAwCiAgICAgKiogU0VDT05EIFNUQUdFLCBvcGVyYXRpbmcgYXQgOCBr
SHosIG9uIGxhZyBzZWN0aW9ucyB3aXRoIGhpZ2ggY29ycmVsYXRpb24KICAgICAqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqLwogCi0gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICAgICoq
IFNjYWxlIHNpZ25hbCBkb3duIHRvIGF2b2lkIGNvcnJlbGF0aW9ucyBtZWFzdXJlcyBmcm9tIG92
ZXJmbG93aW5nCi0gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAvKiBmaW5kIHNjYWxp
bmcgYXMgbWF4IHNjYWxpbmcgZm9yIGVhY2ggc3ViZnJhbWUgKi8KLSAgICBzaWxrX3N1bV9zcXJf
c2hpZnQoICZlbmVyZ3ksICZzaGlmdCwgZnJhbWVfOGtIeiwgZnJhbWVfbGVuZ3RoXzhrSHogKTsK
LSAgICBpZiggc2hpZnQgPiAwICkgewotICAgICAgICBzaGlmdCA9IHNpbGtfUlNISUZUKCBzaGlm
dCwgMSApOwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgZnJhbWVfbGVuZ3RoXzhrSHo7IGkrKyAp
IHsKLSAgICAgICAgICAgIGZyYW1lXzhrSHpbIGkgXSA9IHNpbGtfUlNISUZUKCBmcmFtZV84a0h6
WyBpIF0sIHNoaWZ0ICk7Ci0gICAgICAgIH0KLSAgICB9Ci0KICAgICAvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqCiAgICAgKiBGaW5kIGVuZXJneSBvZiBlYWNoIHN1YmZyYW1lIHByb2plY3RlZCBv
bnRvIGl0cyBoaXN0b3J5LCBmb3IgYSByYW5nZSBvZiBkZWxheXMKICAgICAqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKiovCkBAIC00NjIsMjQgKzQ1NSw2IEBAIG9wdXNfaW50IHNpbGtfcGl0Y2hfYW5h
bHlzaXNfY29yZSggICAgICAgICAgICAgICAgICAvKiBPICAgIFZvaWNpbmcgZXN0aW1hdGU6IDAK
ICAgICBzaWxrX2Fzc2VydCggKkxUUENvcnJfUTE1ID49IDAgKTsKIAogICAgIGlmKCBGc19rSHog
PiA4ICkgewotICAgICAgICBWQVJERUNMKCBvcHVzX2ludDE2LCBzY3JhdGNoX21lbSApOwotICAg
ICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICAvKiBTY2FsZSBpbnB1dCBzaWduYWwg
ZG93biB0byBhdm9pZCBjb3JyZWxhdGlvbnMgbWVhc3VyZXMgZnJvbSBvdmVyZmxvd2luZyAqLwot
ICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICAvKiBmaW5kIHNjYWxpbmcgYXMg
bWF4IHNjYWxpbmcgZm9yIGVhY2ggc3ViZnJhbWUgKi8KLSAgICAgICAgc2lsa19zdW1fc3FyX3No
aWZ0KCAmZW5lcmd5LCAmc2hpZnQsIGZyYW1lLCBmcmFtZV9sZW5ndGggKTsKLSAgICAgICAgQUxM
T0MoIHNjcmF0Y2hfbWVtLCBzaGlmdCA+IDAgPyBmcmFtZV9sZW5ndGggOiBBTExPQ19OT05FLCBv
cHVzX2ludDE2ICk7Ci0gICAgICAgIGlmKCBzaGlmdCA+IDAgKSB7Ci0gICAgICAgICAgICAvKiBN
b3ZlIHNpZ25hbCB0byBzY3JhdGNoIG1lbSBiZWNhdXNlIHRoZSBpbnB1dCBzaWduYWwgc2hvdWxk
IGJlIHVuY2hhbmdlZCAqLwotICAgICAgICAgICAgc2hpZnQgPSBzaWxrX1JTSElGVCggc2hpZnQs
IDEgKTsKLSAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBmcmFtZV9sZW5ndGg7IGkrKyApIHsK
LSAgICAgICAgICAgICAgICBzY3JhdGNoX21lbVsgaSBdID0gc2lsa19SU0hJRlQoIGZyYW1lWyBp
IF0sIHNoaWZ0ICk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpbnB1dF9mcmFtZV9wdHIg
PSBzY3JhdGNoX21lbTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGlucHV0X2ZyYW1l
X3B0ciA9IGZyYW1lOwotICAgICAgICB9Ci0KICAgICAgICAgLyogU2VhcmNoIGluIG9yaWdpbmFs
IHNpZ25hbCAqLwogCiAgICAgICAgIENCaW1heF9vbGQgPSBDQmltYXg7CkBAIC01MTksMTQgKzQ5
NCwxNCBAQCBvcHVzX2ludCBzaWxrX3BpdGNoX2FuYWx5c2lzX2NvcmUoICAgICAgICAgICAgICAg
ICAgLyogTyAgICBWb2ljaW5nIGVzdGltYXRlOiAwCiAgICAgICAgIC8qIENhbGN1bGF0ZSB0aGUg
Y29ycmVsYXRpb25zIGFuZCBlbmVyZ2llcyBuZWVkZWQgaW4gc3RhZ2UgMyAqLwogICAgICAgICBB
TExPQyggZW5lcmdpZXNfc3QzLCBuYl9zdWJmciAqIG5iX2Nia19zZWFyY2gsIHNpbGtfcGVfc3Rh
Z2UzX3ZhbHMgKTsKICAgICAgICAgQUxMT0MoIGNyb3NzX2NvcnJfc3QzLCBuYl9zdWJmciAqIG5i
X2Nia19zZWFyY2gsIHNpbGtfcGVfc3RhZ2UzX3ZhbHMgKTsKLSAgICAgICAgc2lsa19QX0FuYV9j
YWxjX2NvcnJfc3QzKCAgY3Jvc3NfY29ycl9zdDMsIGlucHV0X2ZyYW1lX3B0ciwgc3RhcnRfbGFn
LCBzZl9sZW5ndGgsIG5iX3N1YmZyLCBjb21wbGV4aXR5LCBhcmNoICk7Ci0gICAgICAgIHNpbGtf
UF9BbmFfY2FsY19lbmVyZ3lfc3QzKCBlbmVyZ2llc19zdDMsIGlucHV0X2ZyYW1lX3B0ciwgc3Rh
cnRfbGFnLCBzZl9sZW5ndGgsIG5iX3N1YmZyLCBjb21wbGV4aXR5LCBhcmNoICk7CisgICAgICAg
IHNpbGtfUF9BbmFfY2FsY19jb3JyX3N0MyggIGNyb3NzX2NvcnJfc3QzLCBmcmFtZSwgc3RhcnRf
bGFnLCBzZl9sZW5ndGgsIG5iX3N1YmZyLCBjb21wbGV4aXR5LCBhcmNoICk7CisgICAgICAgIHNp
bGtfUF9BbmFfY2FsY19lbmVyZ3lfc3QzKCBlbmVyZ2llc19zdDMsIGZyYW1lLCBzdGFydF9sYWcs
IHNmX2xlbmd0aCwgbmJfc3ViZnIsIGNvbXBsZXhpdHksIGFyY2ggKTsKIAogICAgICAgICBsYWdf
Y291bnRlciA9IDA7CiAgICAgICAgIHNpbGtfYXNzZXJ0KCBsYWcgPT0gc2lsa19TQVQxNiggbGFn
ICkgKTsKICAgICAgICAgY29udG91cl9iaWFzX1ExNSA9IHNpbGtfRElWMzJfMTYoIFNJTEtfRklY
X0NPTlNUKCBQRV9GTEFUQ09OVE9VUl9CSUFTLCAxNSApLCBsYWcgKTsKIAotICAgICAgICB0YXJn
ZXRfcHRyID0gJmlucHV0X2ZyYW1lX3B0clsgUEVfTFRQX01FTV9MRU5HVEhfTVMgKiBGc19rSHog
XTsKKyAgICAgICAgdGFyZ2V0X3B0ciA9ICZmcmFtZVsgUEVfTFRQX01FTV9MRU5HVEhfTVMgKiBG
c19rSHogXTsKICAgICAgICAgZW5lcmd5X3RhcmdldCA9IHNpbGtfQUREMzIoIHNpbGtfaW5uZXJf
cHJvZF9hbGlnbmVkKCB0YXJnZXRfcHRyLCB0YXJnZXRfcHRyLCBuYl9zdWJmciAqIHNmX2xlbmd0
aCwgYXJjaCApLCAxICk7CiAgICAgICAgIGZvciggZCA9IHN0YXJ0X2xhZzsgZCA8PSBlbmRfbGFn
OyBkKysgKSB7CiAgICAgICAgICAgICBmb3IoIGogPSAwOyBqIDwgbmJfY2JrX3NlYXJjaDsgaisr
ICkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3ByZWZpbHRlcl9GSVguYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9w
cmVmaWx0ZXJfRklYLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZhOGUzNTE1MmVm
YmQ2ZDBiMTcyMjdhYTc1MjVhM2EyM2RlZTkyNTQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3ByZWZpbHRlcl9GSVguYworKysgL2Rldi9u
dWxsCkBAIC0xLDIyMSArMCwwIEBACi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLUNvcHlyaWdodCAoYykgMjAw
Ni0yMDExLCBTa3lwZSBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci1t
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLWFyZSBtZXQ6Ci0tIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKLXRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0tIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci1ub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
Ci1kb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElF
VEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQotbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3Jz
LCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKLXByb2R1Y3RzIGRlcml2ZWQgZnJv
bSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgotcGVybWlzc2lv
bi4KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMgIkFTIElTIgotQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UKLUFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVS
IE9SIENPTlRSSUJVVE9SUyBCRQotTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLVNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUwotSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KLUNPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi1BUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQot
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0qKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLQotI2lmZGVmIEhB
VkVfQ09ORklHX0gKLSNpbmNsdWRlICJjb25maWcuaCIKLSNlbmRpZgotCi0jaW5jbHVkZSAibWFp
bl9GSVguaCIKLSNpbmNsdWRlICJzdGFja19hbGxvYy5oIgotI2luY2x1ZGUgInR1bmluZ19wYXJh
bWV0ZXJzLmgiCi0KLSNpZiBkZWZpbmVkKE1JUFNyMV9BU00pCi0jaW5jbHVkZSAibWlwcy9wcmVm
aWx0ZXJfRklYX21pcHNyMS5oIgotI2VuZGlmCi0KLQotI2lmICFkZWZpbmVkKE9WRVJSSURFX3Np
bGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYKQotI2RlZmluZSBzaWxrX3dhcnBlZF9M
UENfYW5hbHlzaXNfZmlsdGVyX0ZJWChzdGF0ZSwgcmVzX1EyLCBjb2VmX1ExMywgaW5wdXQsIGxh
bWJkYV9RMTYsIGxlbmd0aCwgb3JkZXIsIGFyY2gpIFwKLSAgICAoKHZvaWQpKGFyY2gpLHNpbGtf
d2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYX2Moc3RhdGUsIHJlc19RMiwgY29lZl9RMTMs
IGlucHV0LCBsYW1iZGFfUTE2LCBsZW5ndGgsIG9yZGVyKSkKLSNlbmRpZgotCi0vKiBQcmVmaWx0
ZXIgZm9yIGZpbmRpbmcgUXVhbnRpemVyIGlucHV0IHNpZ25hbCAqLwotc3RhdGljIE9QVVNfSU5M
SU5FIHZvaWQgc2lsa19wcmVmaWx0X0ZJWCgKLSAgICBzaWxrX3ByZWZpbHRlcl9zdGF0ZV9GSVgg
ICAgKlAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgc3RhdGUgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgc3Rf
cmVzX1ExMltdLCAgICAgICAgICAgICAgIC8qIEkgICAgc2hvcnQgdGVybSByZXNpZHVhbCBzaWdu
YWwgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgeHdfUTNbXSwg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgcHJlZmlsdGVyZWQgc2lnbmFsICAgICAgICAgICAg
ICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgSGFybVNoYXBlRklSUGFj
a2VkX1ExMiwgICAgIC8qIEkgICAgSGFybW9uaWMgc2hhcGluZyBjb2VmaWNpZW50cyAgICAgICAg
Ki8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgVGlsdF9RMTQsICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgVGlsdCBzaGFwaW5nIGNvZWZpY2llbnQgICAgICAgICAgICAgKi8KLSAg
ICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgTEZfc2hwX1ExNCwgICAgICAgICAgICAgICAg
IC8qIEkgICAgTG93LWZyZXF1YW5jeSBzaGFwaW5nIGNvZWZpY2llbnRzICAgKi8KLSAgICBvcHVz
X2ludCAgICAgICAgICAgICAgICAgICAgbGFnLCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgTGFnIGZvciBoYXJtb25pYyBzaGFwaW5nICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgICAgbGVuZ3RoICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTGVu
Z3RoIG9mIHNpZ25hbHMgICAgICAgICAgICAgICAgICAgKi8KLSk7Ci0KLXZvaWQgc2lsa193YXJw
ZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GSVhfYygKLSAgICAgICAgICBvcHVzX2ludDMyICAgICAg
ICAgICAgc3RhdGVbXSwgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgU3RhdGUgW29yZGVyICsg
MV0gICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICBvcHVzX2ludDMyICAgICAgICAgICAg
cmVzX1EyW10sICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmVzaWR1YWwgc2lnbmFsIFtsZW5n
dGhdICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgY29lZl9R
MTNbXSwgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29lZmZpY2llbnRzIFtvcmRlcl0gICAgICAg
ICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgaW5wdXRbXSwgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgc2lnbmFsIFtsZW5ndGhdICAgICAgICAgICAg
ICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgbGFtYmRhX1ExNiwgICAgICAg
ICAgICAgICAgIC8qIEkgICAgV2FycGluZyBmYWN0b3IgICAgICAgICAgICAgICAgICAgICAgKi8K
LSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgTGVuZ3RoIG9mIGlucHV0IHNpZ25hbCAgICAgICAgICAgICAgKi8KLSAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgRmlsdGVyIG9yZGVyIChldmVuKSAgICAgICAgICAgICAgICAgKi8KLSkKLXsKLSAgICBv
cHVzX2ludCAgICAgbiwgaTsKLSAgICBvcHVzX2ludDMyICAgYWNjX1ExMSwgdG1wMSwgdG1wMjsK
LQotICAgIC8qIE9yZGVyIG11c3QgYmUgZXZlbiAqLwotICAgIHNpbGtfYXNzZXJ0KCAoIG9yZGVy
ICYgMSApID09IDAgKTsKLQotICAgIGZvciggbiA9IDA7IG4gPCBsZW5ndGg7IG4rKyApIHsKLSAg
ICAgICAgLyogT3V0cHV0IG9mIGxvd3Bhc3Mgc2VjdGlvbiAqLwotICAgICAgICB0bXAyID0gc2ls
a19TTUxBV0IoIHN0YXRlWyAwIF0sIHN0YXRlWyAxIF0sIGxhbWJkYV9RMTYgKTsKLSAgICAgICAg
c3RhdGVbIDAgXSA9IHNpbGtfTFNISUZUKCBpbnB1dFsgbiBdLCAxNCApOwotICAgICAgICAvKiBP
dXRwdXQgb2YgYWxscGFzcyBzZWN0aW9uICovCi0gICAgICAgIHRtcDEgPSBzaWxrX1NNTEFXQigg
c3RhdGVbIDEgXSwgc3RhdGVbIDIgXSAtIHRtcDIsIGxhbWJkYV9RMTYgKTsKLSAgICAgICAgc3Rh
dGVbIDEgXSA9IHRtcDI7Ci0gICAgICAgIGFjY19RMTEgPSBzaWxrX1JTSElGVCggb3JkZXIsIDEg
KTsKLSAgICAgICAgYWNjX1ExMSA9IHNpbGtfU01MQVdCKCBhY2NfUTExLCB0bXAyLCBjb2VmX1Ex
M1sgMCBdICk7Ci0gICAgICAgIC8qIExvb3Agb3ZlciBhbGxwYXNzIHNlY3Rpb25zICovCi0gICAg
ICAgIGZvciggaSA9IDI7IGkgPCBvcmRlcjsgaSArPSAyICkgewotICAgICAgICAgICAgLyogT3V0
cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwotICAgICAgICAgICAgdG1wMiA9IHNpbGtfU01MQVdC
KCBzdGF0ZVsgaSBdLCBzdGF0ZVsgaSArIDEgXSAtIHRtcDEsIGxhbWJkYV9RMTYgKTsKLSAgICAg
ICAgICAgIHN0YXRlWyBpIF0gPSB0bXAxOwotICAgICAgICAgICAgYWNjX1ExMSA9IHNpbGtfU01M
QVdCKCBhY2NfUTExLCB0bXAxLCBjb2VmX1ExM1sgaSAtIDEgXSApOwotICAgICAgICAgICAgLyog
T3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwotICAgICAgICAgICAgdG1wMSA9IHNpbGtfU01M
QVdCKCBzdGF0ZVsgaSArIDEgXSwgc3RhdGVbIGkgKyAyIF0gLSB0bXAyLCBsYW1iZGFfUTE2ICk7
Ci0gICAgICAgICAgICBzdGF0ZVsgaSArIDEgXSA9IHRtcDI7Ci0gICAgICAgICAgICBhY2NfUTEx
ID0gc2lsa19TTUxBV0IoIGFjY19RMTEsIHRtcDIsIGNvZWZfUTEzWyBpIF0gKTsKLSAgICAgICAg
fQotICAgICAgICBzdGF0ZVsgb3JkZXIgXSA9IHRtcDE7Ci0gICAgICAgIGFjY19RMTEgPSBzaWxr
X1NNTEFXQiggYWNjX1ExMSwgdG1wMSwgY29lZl9RMTNbIG9yZGVyIC0gMSBdICk7Ci0gICAgICAg
IHJlc19RMlsgbiBdID0gc2lsa19MU0hJRlQoIChvcHVzX2ludDMyKWlucHV0WyBuIF0sIDIgKSAt
IHNpbGtfUlNISUZUX1JPVU5EKCBhY2NfUTExLCA5ICk7Ci0gICAgfQotfQotCi12b2lkIHNpbGtf
cHJlZmlsdGVyX0ZJWCgKLSAgICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAgICpwc0Vu
YywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIEVuY29kZXIgc3RhdGUg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZJWCAgKnBzRW5jQ3RybCwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBjb250cm9sICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICB4d19RM1tdLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBXZWlnaHRlZCBzaWduYWwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBj
b25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgIHhbXSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIFNwZWVjaCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIHNp
bGtfcHJlZmlsdGVyX3N0YXRlX0ZJWCAqUCA9ICZwc0VuYy0+c1ByZWZpbHQ7Ci0gICAgb3B1c19p
bnQgICBqLCBrLCBsYWc7Ci0gICAgb3B1c19pbnQzMiB0bXBfMzI7Ci0gICAgY29uc3Qgb3B1c19p
bnQxNiAqQVIxX3NocF9RMTM7Ci0gICAgY29uc3Qgb3B1c19pbnQxNiAqcHg7Ci0gICAgb3B1c19p
bnQzMiAqcHh3X1EzOwotICAgIG9wdXNfaW50ICAgSGFybVNoYXBlR2Fpbl9RMTIsIFRpbHRfUTE0
OwotICAgIG9wdXNfaW50MzIgSGFybVNoYXBlRklSUGFja2VkX1ExMiwgTEZfc2hwX1ExNDsKLSAg
ICBWQVJERUNMKCBvcHVzX2ludDMyLCB4X2ZpbHRfUTEyICk7Ci0gICAgVkFSREVDTCggb3B1c19p
bnQzMiwgc3RfcmVzX1EyICk7Ci0gICAgb3B1c19pbnQxNiBCX1ExMFsgMiBdOwotICAgIFNBVkVf
U1RBQ0s7Ci0KLSAgICAvKiBTZXQgdXAgcG9pbnRlcnMgKi8KLSAgICBweCAgPSB4OwotICAgIHB4
d19RMyA9IHh3X1EzOwotICAgIGxhZyA9IFAtPmxhZ1ByZXY7Ci0gICAgQUxMT0MoIHhfZmlsdF9R
MTIsIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCwgb3B1c19pbnQzMiApOwotICAgIEFMTE9DKCBz
dF9yZXNfUTIsIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCwgb3B1c19pbnQzMiApOwotICAgIGZv
ciggayA9IDA7IGsgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaysrICkgewotICAgICAgICAvKiBV
cGRhdGUgVmFyaWFibGVzIHRoYXQgY2hhbmdlIHBlciBzdWIgZnJhbWUgKi8KLSAgICAgICAgaWYo
IHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9PSBUWVBFX1ZPSUNFRCApIHsKLSAgICAg
ICAgICAgIGxhZyA9IHBzRW5jQ3RybC0+cGl0Y2hMWyBrIF07Ci0gICAgICAgIH0KLQotICAgICAg
ICAvKiBOb2lzZSBzaGFwZSBwYXJhbWV0ZXJzICovCi0gICAgICAgIEhhcm1TaGFwZUdhaW5fUTEy
ID0gc2lsa19TTVVMV0IoIChvcHVzX2ludDMyKXBzRW5jQ3RybC0+SGFybVNoYXBlR2Fpbl9RMTRb
IGsgXSwgMTYzODQgLSBwc0VuY0N0cmwtPkhhcm1Cb29zdF9RMTRbIGsgXSApOwotICAgICAgICBz
aWxrX2Fzc2VydCggSGFybVNoYXBlR2Fpbl9RMTIgPj0gMCApOwotICAgICAgICBIYXJtU2hhcGVG
SVJQYWNrZWRfUTEyICA9ICAgICAgICAgICAgICAgICAgICAgICAgICBzaWxrX1JTSElGVCggSGFy
bVNoYXBlR2Fpbl9RMTIsIDIgKTsKLSAgICAgICAgSGFybVNoYXBlRklSUGFja2VkX1ExMiB8PSBz
aWxrX0xTSElGVCggKG9wdXNfaW50MzIpc2lsa19SU0hJRlQoIEhhcm1TaGFwZUdhaW5fUTEyLCAx
ICksIDE2ICk7Ci0gICAgICAgIFRpbHRfUTE0ICAgID0gcHNFbmNDdHJsLT5UaWx0X1ExNFsgICBr
IF07Ci0gICAgICAgIExGX3NocF9RMTQgID0gcHNFbmNDdHJsLT5MRl9zaHBfUTE0WyBrIF07Ci0g
ICAgICAgIEFSMV9zaHBfUTEzID0gJnBzRW5jQ3RybC0+QVIxX1ExM1sgICBrICogTUFYX1NIQVBF
X0xQQ19PUkRFUiBdOwotCi0gICAgICAgIC8qIFNob3J0IHRlcm0gRklSIGZpbHRlcmluZyovCi0g
ICAgICAgIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYKCBQLT5zQVJfc2hwLCBz
dF9yZXNfUTIsIEFSMV9zaHBfUTEzLCBweCwKLSAgICAgICAgICAgIHBzRW5jLT5zQ21uLndhcnBp
bmdfUTE2LCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGgsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENP
cmRlciwgcHNFbmMtPnNDbW4uYXJjaCApOwotCi0gICAgICAgIC8qIFJlZHVjZSAobWFpbmx5KSBs
b3cgZnJlcXVlbmNpZXMgZHVyaW5nIGhhcm1vbmljIGVtcGhhc2lzICovCi0gICAgICAgIEJfUTEw
WyAwIF0gPSBzaWxrX1JTSElGVF9ST1VORCggcHNFbmNDdHJsLT5HYWluc1ByZV9RMTRbIGsgXSwg
NCApOwotICAgICAgICB0bXBfMzIgPSBzaWxrX1NNTEFCQiggU0lMS19GSVhfQ09OU1QoIElOUFVU
X1RJTFQsIDI2ICksIHBzRW5jQ3RybC0+SGFybUJvb3N0X1ExNFsgayBdLCBIYXJtU2hhcGVHYWlu
X1ExMiApOyAgIC8qIFEyNiAqLwotICAgICAgICB0bXBfMzIgPSBzaWxrX1NNTEFCQiggdG1wXzMy
LCBwc0VuY0N0cmwtPmNvZGluZ19xdWFsaXR5X1ExNCwgU0lMS19GSVhfQ09OU1QoIEhJR0hfUkFU
RV9JTlBVVF9USUxULCAxMiApICk7ICAgIC8qIFEyNiAqLwotICAgICAgICB0bXBfMzIgPSBzaWxr
X1NNVUxXQiggdG1wXzMyLCAtcHNFbmNDdHJsLT5HYWluc1ByZV9RMTRbIGsgXSApOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFEyNCAqLwotICAgICAg
ICB0bXBfMzIgPSBzaWxrX1JTSElGVF9ST1VORCggdG1wXzMyLCAxNCApOyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IFExMCAqLwotICAgICAgICBCX1ExMFsgMSBdPSBzaWxrX1NBVDE2KCB0bXBfMzIgKTsKLSAgICAg
ICAgeF9maWx0X1ExMlsgMCBdID0gc2lsa19NTEEoIHNpbGtfTVVMKCBzdF9yZXNfUTJbIDAgXSwg
Ql9RMTBbIDAgXSApLCBQLT5zSGFybUhQX1EyLCBCX1ExMFsgMSBdICk7Ci0gICAgICAgIGZvcigg
aiA9IDE7IGogPCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7IGorKyApIHsKLSAgICAgICAgICAg
IHhfZmlsdF9RMTJbIGogXSA9IHNpbGtfTUxBKCBzaWxrX01VTCggc3RfcmVzX1EyWyBqIF0sIEJf
UTEwWyAwIF0gKSwgc3RfcmVzX1EyWyBqIC0gMSBdLCBCX1ExMFsgMSBdICk7Ci0gICAgICAgIH0K
LSAgICAgICAgUC0+c0hhcm1IUF9RMiA9IHN0X3Jlc19RMlsgcHNFbmMtPnNDbW4uc3ViZnJfbGVu
Z3RoIC0gMSBdOwotCi0gICAgICAgIHNpbGtfcHJlZmlsdF9GSVgoIFAsIHhfZmlsdF9RMTIsIHB4
d19RMywgSGFybVNoYXBlRklSUGFja2VkX1ExMiwgVGlsdF9RMTQsIExGX3NocF9RMTQsIGxhZywg
cHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoICk7Ci0KLSAgICAgICAgcHggICs9IHBzRW5jLT5zQ21u
LnN1YmZyX2xlbmd0aDsKLSAgICAgICAgcHh3X1EzICs9IHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0
aDsKLSAgICB9Ci0KLSAgICBQLT5sYWdQcmV2ID0gcHNFbmNDdHJsLT5waXRjaExbIHBzRW5jLT5z
Q21uLm5iX3N1YmZyIC0gMSBdOwotICAgIFJFU1RPUkVfU1RBQ0s7Ci19Ci0KLSNpZm5kZWYgT1ZF
UlJJREVfc2lsa19wcmVmaWx0X0ZJWAotLyogUHJlZmlsdGVyIGZvciBmaW5kaW5nIFF1YW50aXpl
ciBpbnB1dCBzaWduYWwgKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfcHJlZmlsdF9G
SVgoCi0gICAgc2lsa19wcmVmaWx0ZXJfc3RhdGVfRklYICAgICpQLCAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJL08gIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHN0X3Jlc19RMTJbXSwgICAgICAgICAgICAg
ICAvKiBJICAgIHNob3J0IHRlcm0gcmVzaWR1YWwgc2lnbmFsICAgICAgICAgICovCi0gICAgb3B1
c19pbnQzMiAgICAgICAgICAgICAgICAgIHh3X1EzW10sICAgICAgICAgICAgICAgICAgICAvKiBP
ICAgIHByZWZpbHRlcmVkIHNpZ25hbCAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQz
MiAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTIsICAgICAvKiBJICAgIEhh
cm1vbmljIHNoYXBpbmcgY29lZmljaWVudHMgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICAgIFRpbHRfUTE0LCAgICAgICAgICAgICAgICAgICAvKiBJICAgIFRpbHQgc2hh
cGluZyBjb2VmaWNpZW50ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAg
ICAgICAgIExGX3NocF9RMTQsICAgICAgICAgICAgICAgICAvKiBJICAgIExvdy1mcmVxdWFuY3kg
c2hhcGluZyBjb2VmaWNpZW50cyAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAg
IGxhZywgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExhZyBmb3IgaGFybW9uaWMgc2hh
cGluZyAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0
aCAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBzaWduYWxzICAgICAgICAg
ICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICBpLCBpZHgsIExUUF9zaHBfYnVmX2lk
eDsKLSAgICBvcHVzX2ludDMyIG5fTFRQX1ExMiwgbl9UaWx0X1ExMCwgbl9MRl9RMTA7Ci0gICAg
b3B1c19pbnQzMiBzTEZfTUFfc2hwX1ExMiwgc0xGX0FSX3NocF9RMTI7Ci0gICAgb3B1c19pbnQx
NiAqTFRQX3NocF9idWY7Ci0KLSAgICAvKiBUbyBzcGVlZCB1cCB1c2UgdGVtcCB2YXJpYWJsZXMg
aW5zdGVhZCBvZiB1c2luZyB0aGUgc3RydWN0ICovCi0gICAgTFRQX3NocF9idWYgICAgID0gUC0+
c0xUUF9zaHA7Ci0gICAgTFRQX3NocF9idWZfaWR4ID0gUC0+c0xUUF9zaHBfYnVmX2lkeDsKLSAg
ICBzTEZfQVJfc2hwX1ExMiAgPSBQLT5zTEZfQVJfc2hwX1ExMjsKLSAgICBzTEZfTUFfc2hwX1Ex
MiAgPSBQLT5zTEZfTUFfc2hwX1ExMjsKLQotICAgIGZvciggaSA9IDA7IGkgPCBsZW5ndGg7IGkr
KyApIHsKLSAgICAgICAgaWYoIGxhZyA+IDAgKSB7Ci0gICAgICAgICAgICAvKiB1bnJvbGxlZCBs
b29wICovCi0gICAgICAgICAgICBzaWxrX2Fzc2VydCggSEFSTV9TSEFQRV9GSVJfVEFQUyA9PSAz
ICk7Ci0gICAgICAgICAgICBpZHggPSBsYWcgKyBMVFBfc2hwX2J1Zl9pZHg7Ci0gICAgICAgICAg
ICBuX0xUUF9RMTIgPSBzaWxrX1NNVUxCQiggICAgICAgICAgICBMVFBfc2hwX2J1ZlsgKCBpZHgg
LSBIQVJNX1NIQVBFX0ZJUl9UQVBTIC8gMiAtIDEpICYgTFRQX01BU0sgXSwgSGFybVNoYXBlRklS
UGFja2VkX1ExMiApOwotICAgICAgICAgICAgbl9MVFBfUTEyID0gc2lsa19TTUxBQlQoIG5fTFRQ
X1ExMiwgTFRQX3NocF9idWZbICggaWR4IC0gSEFSTV9TSEFQRV9GSVJfVEFQUyAvIDIgICAgKSAm
IExUUF9NQVNLIF0sIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTIgKTsKLSAgICAgICAgICAgIG5fTFRQ
X1ExMiA9IHNpbGtfU01MQUJCKCBuX0xUUF9RMTIsIExUUF9zaHBfYnVmWyAoIGlkeCAtIEhBUk1f
U0hBUEVfRklSX1RBUFMgLyAyICsgMSkgJiBMVFBfTUFTSyBdLCBIYXJtU2hhcGVGSVJQYWNrZWRf
UTEyICk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBuX0xUUF9RMTIgPSAwOwotICAg
ICAgICB9Ci0KLSAgICAgICAgbl9UaWx0X1ExMCA9IHNpbGtfU01VTFdCKCBzTEZfQVJfc2hwX1Ex
MiwgVGlsdF9RMTQgKTsKLSAgICAgICAgbl9MRl9RMTAgICA9IHNpbGtfU01MQVdCKCBzaWxrX1NN
VUxXVCggc0xGX0FSX3NocF9RMTIsIExGX3NocF9RMTQgKSwgc0xGX01BX3NocF9RMTIsIExGX3No
cF9RMTQgKTsKLQotICAgICAgICBzTEZfQVJfc2hwX1ExMiA9IHNpbGtfU1VCMzIoIHN0X3Jlc19R
MTJbIGkgXSwgc2lsa19MU0hJRlQoIG5fVGlsdF9RMTAsIDIgKSApOwotICAgICAgICBzTEZfTUFf
c2hwX1ExMiA9IHNpbGtfU1VCMzIoIHNMRl9BUl9zaHBfUTEyLCAgc2lsa19MU0hJRlQoIG5fTEZf
UTEwLCAgIDIgKSApOwotCi0gICAgICAgIExUUF9zaHBfYnVmX2lkeCA9ICggTFRQX3NocF9idWZf
aWR4IC0gMSApICYgTFRQX01BU0s7Ci0gICAgICAgIExUUF9zaHBfYnVmWyBMVFBfc2hwX2J1Zl9p
ZHggXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKCBzTEZfTUFf
c2hwX1ExMiwgMTIgKSApOwotCi0gICAgICAgIHh3X1EzW2ldID0gc2lsa19SU0hJRlRfUk9VTkQo
IHNpbGtfU1VCMzIoIHNMRl9NQV9zaHBfUTEyLCBuX0xUUF9RMTIgKSwgOSApOwotICAgIH0KLQot
ICAgIC8qIENvcHkgdGVtcCB2YXJpYWJsZSBiYWNrIHRvIHN0YXRlICovCi0gICAgUC0+c0xGX0FS
X3NocF9RMTIgICA9IHNMRl9BUl9zaHBfUTEyOwotICAgIFAtPnNMRl9NQV9zaHBfUTEyICAgPSBz
TEZfTUFfc2hwX1ExMjsKLSAgICBQLT5zTFRQX3NocF9idWZfaWR4ID0gTFRQX3NocF9idWZfaWR4
OwotfQotI2VuZGlmIC8qIE9WRVJSSURFX3NpbGtfcHJlZmlsdF9GSVggKi8KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9maXhlZC9zY2h1cjY0X0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NjaHVyNjRfRklYLmMKaW5kZXgg
NzY0YTEwZWYzZWE1ZDJhMmY2ODU0ZjNhZTUzNDE1MWE1MWEwMThiYy4uYjJjYjEyZDliMTYwYTA3
MTVmODhlNzI0MzllNWEwMzZiODYyOGFjNSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NjaHVyNjRf
RklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NjaHVyNjRfRklYLmMKQEAgLTQzLDcgKzQzLDcgQEAgb3B1
c19pbnQzMiBzaWxrX3NjaHVyNjQoICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAg
cmV0dXJucyByZXNpZHVhbCBlbmUKICAgICBvcHVzX2ludDMyIENbIFNJTEtfTUFYX09SREVSX0xQ
QyArIDEgXVsgMiBdOwogICAgIG9wdXNfaW50MzIgQ3RtcDFfUTMwLCBDdG1wMl9RMzAsIHJjX3Rt
cF9RMzE7CiAKLSAgICBzaWxrX2Fzc2VydCggb3JkZXI9PTZ8fG9yZGVyPT04fHxvcmRlcj09MTB8
fG9yZGVyPT0xMnx8b3JkZXI9PTE0fHxvcmRlcj09MTYgKTsKKyAgICBzaWxrX2Fzc2VydCggb3Jk
ZXIgPj0gMCAmJiBvcmRlciA8PSBTSUxLX01BWF9PUkRFUl9MUEMgKTsKIAogICAgIC8qIENoZWNr
IGZvciBpbnZhbGlkIGlucHV0ICovCiAgICAgaWYoIGNbIDAgXSA8PSAwICkgewpAQCAtNTEsOSAr
NTEsMTAgQEAgb3B1c19pbnQzMiBzaWxrX3NjaHVyNjQoICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIE8gICAgcmV0dXJucyByZXNpZHVhbCBlbmUKICAgICAgICAgcmV0dXJuIDA7CiAgICAg
fQogCi0gICAgZm9yKCBrID0gMDsgayA8IG9yZGVyICsgMTsgaysrICkgeworICAgIGsgPSAwOwor
ICAgIGRvIHsKICAgICAgICAgQ1sgayBdWyAwIF0gPSBDWyBrIF1bIDEgXSA9IGNbIGsgXTsKLSAg
ICB9CisgICAgfSB3aGlsZSggKytrIDw9IG9yZGVyICk7CiAKICAgICBmb3IoIGsgPSAwOyBrIDwg
b3JkZXI7IGsrKyApIHsKICAgICAgICAgLyogQ2hlY2sgdGhhdCB3ZSB3b24ndCBiZSBnZXR0aW5n
IGFuIHVuc3RhYmxlIHJjLCBvdGhlcndpc2Ugc3RvcCBoZXJlLiAqLwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2ZpeGVkL3NjaHVyX0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NjaHVyX0ZJWC5jCmluZGV4IGM0YzBlZjIz
YjQ3ODA0ZTVmNTZjN2M1ZDU4YzY2NTU2ZWVmNWEwMWUuLjU5ZDQ0YTZmN2ZlODU4YzIxZWViY2Ez
MWI2YmU0NDMwYWNkNDgzMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zY2h1cl9GSVguYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZml4ZWQvc2NodXJfRklYLmMKQEAgLTQzLDI4ICs0MywyOSBAQCBvcHVzX2ludDMyIHNp
bGtfc2NodXIoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zIHJl
c2lkdWFsIGVuZQogICAgIG9wdXNfaW50MzIgICAgQ1sgU0lMS19NQVhfT1JERVJfTFBDICsgMSBd
WyAyIF07CiAgICAgb3B1c19pbnQzMiAgICBDdG1wMSwgQ3RtcDIsIHJjX3RtcF9RMTU7CiAKLSAg
ICBzaWxrX2Fzc2VydCggb3JkZXI9PTZ8fG9yZGVyPT04fHxvcmRlcj09MTB8fG9yZGVyPT0xMnx8
b3JkZXI9PTE0fHxvcmRlcj09MTYgKTsKKyAgICBzaWxrX2Fzc2VydCggb3JkZXIgPj0gMCAmJiBv
cmRlciA8PSBTSUxLX01BWF9PUkRFUl9MUEMgKTsKIAogICAgIC8qIEdldCBudW1iZXIgb2YgbGVh
ZGluZyB6ZXJvcyAqLwogICAgIGx6ID0gc2lsa19DTFozMiggY1sgMCBdICk7CiAKICAgICAvKiBD
b3B5IGNvcnJlbGF0aW9ucyBhbmQgYWRqdXN0IGxldmVsIHRvIFEzMCAqLworICAgIGsgPSAwOwog
ICAgIGlmKCBseiA8IDIgKSB7CiAgICAgICAgIC8qIGx6IG11c3QgYmUgMSwgc28gc2hpZnQgb25l
IHRvIHRoZSByaWdodCAqLwotICAgICAgICBmb3IoIGsgPSAwOyBrIDwgb3JkZXIgKyAxOyBrKysg
KSB7CisgICAgICAgIGRvIHsKICAgICAgICAgICAgIENbIGsgXVsgMCBdID0gQ1sgayBdWyAxIF0g
PSBzaWxrX1JTSElGVCggY1sgayBdLCAxICk7Ci0gICAgICAgIH0KKyAgICAgICAgfSB3aGlsZSgg
KytrIDw9IG9yZGVyICk7CiAgICAgfSBlbHNlIGlmKCBseiA+IDIgKSB7CiAgICAgICAgIC8qIFNo
aWZ0IHRvIHRoZSBsZWZ0ICovCiAgICAgICAgIGx6IC09IDI7Ci0gICAgICAgIGZvciggayA9IDA7
IGsgPCBvcmRlciArIDE7IGsrKyApIHsKKyAgICAgICAgZG8gewogICAgICAgICAgICAgQ1sgayBd
WyAwIF0gPSBDWyBrIF1bIDEgXSA9IHNpbGtfTFNISUZUKCBjWyBrIF0sIGx6ICk7Ci0gICAgICAg
IH0KKyAgICAgICAgfSB3aGlsZSggKytrIDw9IG9yZGVyICk7CiAgICAgfSBlbHNlIHsKICAgICAg
ICAgLyogTm8gbmVlZCB0byBzaGlmdCAqLwotICAgICAgICBmb3IoIGsgPSAwOyBrIDwgb3JkZXIg
KyAxOyBrKysgKSB7CisgICAgICAgIGRvIHsKICAgICAgICAgICAgIENbIGsgXVsgMCBdID0gQ1sg
ayBdWyAxIF0gPSBjWyBrIF07Ci0gICAgICAgIH0KKyAgICAgICAgfSB3aGlsZSggKytrIDw9IG9y
ZGVyICk7CiAgICAgfQogCiAgICAgZm9yKCBrID0gMDsgayA8IG9yZGVyOyBrKysgKSB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZml4ZWQvc29sdmVfTFNfRklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvc29sdmVfTFNfRklY
LmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxZDdkNDlkMDJhNWU3Y2JhOTI0NTI5
NWViYTZhYTI2YmMyYmVlN2UuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2ZpeGVkL3NvbHZlX0xTX0ZJWC5jCisrKyAvZGV2L251bGwKQEAgLTEsMjQ5
ICswLDAgQEAKLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKgotQ29weXJpZ2h0IChjKSAyMDA2LTIwMTEsIFNreXBl
IExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi1SZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLW1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotYXJl
IG1ldDoKLS0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLAotdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KLS0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLW5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLWRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0tIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRy
dXN0LCBub3IgdGhlCi1uYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQotcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCi1wZXJtaXNzaW9uLgotVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UyAiQVMgSVMiCi1BTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi1JTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVU
T1JTIEJFCi1MSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCi1DT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi1JTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgotQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLUFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCi1QT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KLSoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotCi0jaWZkZWYgSEFWRV9DT05GSUdfSAot
I2luY2x1ZGUgImNvbmZpZy5oIgotI2VuZGlmCi0KLSNpbmNsdWRlICJtYWluX0ZJWC5oIgotI2lu
Y2x1ZGUgInN0YWNrX2FsbG9jLmgiCi0jaW5jbHVkZSAidHVuaW5nX3BhcmFtZXRlcnMuaCIKLQot
LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotLyogSW50ZXJuYWwgZnVuY3Rpb24gaGVh
ZGVycyAqLwotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotCi10eXBlZGVmIHN0cnVj
dCB7Ci0gICAgb3B1c19pbnQzMiBRMzZfcGFydDsKLSAgICBvcHVzX2ludDMyIFE0OF9wYXJ0Owot
fSBpbnZfRF90OwotCi0vKiBGYWN0b3JpemUgc3F1YXJlIG1hdHJpeCBBIGludG8gTERMIGZvcm0g
Ki8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTERMX2ZhY3Rvcml6ZV9GSVgoCi0gICAg
b3B1c19pbnQzMiAgICAgICAgICAqQSwgICAgICAgICAvKiBJL08gUG9pbnRlciB0byBTeW1ldHJp
YyBTcXVhcmUgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19p
bnQgICAgICAgICAgICBNLCAgICAgICAgICAvKiBJICAgU2l6ZSBvZiBNYXRyaXggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAg
ICAgICAgICAqTF9RMTYsICAgICAvKiBJL08gUG9pbnRlciB0byBTcXVhcmUgVXBwZXIgdHJpYW5n
dWxhciBNYXRyaXggICAgICAgICAgICAgICAgICAgICovCi0gICAgaW52X0RfdCAgICAgICAgICAg
ICAqaW52X0QgICAgICAvKiBJL08gUG9pbnRlciB0byB2ZWN0b3IgaG9sZGluZyBpbnZlcnRlZCBk
aWFnb25hbCBlbGVtZW50cyBvZiBEICAgICovCi0pOwotCi0vKiBTb2x2ZSBMeCA9IGIsIHdoZW4g
TCBpcyBsb3dlciB0cmlhbmd1bGFyIGFuZCBoYXMgb25lcyBvbiB0aGUgZGlhZ29uYWwgKi8KLXN0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTFNfU29sdmVGaXJzdF9GSVgoCi0gICAgY29uc3Qg
b3B1c19pbnQzMiAgICAqTF9RMTYsICAgICAvKiBJICAgIFBvaW50ZXIgdG8gTG93ZXIgVHJpYW5n
dWxhciBNYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAg
ICAgICAgICBNLCAgICAgICAgICAvKiBJICAgIERpbSBvZiBNYXRyaXggZXF1YXRpb24gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAqYiwgICAgICAgICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAqeF9R
MTYgICAgICAvKiBPICAgIHggVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0pOwotCi0vKiBTb2x2ZSBMXnQqeCA9IGIsIHdoZXJlIEwg
aXMgbG93ZXIgdHJpYW5ndWxhciB3aXRoIG9uZXMgb24gdGhlIGRpYWdvbmFsICovCi1zdGF0aWMg
T1BVU19JTkxJTkUgdm9pZCBzaWxrX0xTX1NvbHZlTGFzdF9GSVgoCi0gICAgY29uc3Qgb3B1c19p
bnQzMiAgICAqTF9RMTYsICAgICAvKiBJICAgIFBvaW50ZXIgdG8gTG93ZXIgVHJpYW5ndWxhciBN
YXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAg
ICBNLCAgICAgICAgICAvKiBJICAgIERpbSBvZiBNYXRyaXggZXF1YXRpb24gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAqYiwg
ICAgICAgICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAqeF9RMTYgICAg
ICAvKiBPICAgIHggVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0pOwotCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xTX2Rp
dmlkZV9RMTZfRklYKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgVFtdLCAgICAgICAgLyogSS9P
ICBOdW1lbmF0b3IgdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIGludl9EX3QgICAgICAgICAgICAgKmludl9ELCAgICAgLyogSSAgICAxIC8g
RCB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIG9wdXNfaW50ICAgICAgICAgICAgTSAgICAgICAgICAgLyogSSAgICBkaW1lbnNpb24g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsK
LQotLyogU29sdmVzIEF4ID0gYiwgYXNzdW1pbmcgQSBpcyBzeW1tZXRyaWMgKi8KLXZvaWQgc2ls
a19zb2x2ZV9MRExfRklYKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgKkEs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUG9pbnRlciB0byBz
eW1ldHJpYyBzcXVhcmUgbWF0cml4IEEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBNLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTaXplIG9mIG1hdHJpeCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgICAgICpiLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFBvaW50ZXIgdG8gYiB2ZWN0b3IgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgKnhfUTE2ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIE8gICAgUG9pbnRlciB0byB4IHNvbHV0aW9uIHZlY3RvciAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAg
VkFSREVDTCggb3B1c19pbnQzMiwgTF9RMTYgKTsKLSAgICBvcHVzX2ludDMyIFlbICAgICAgTUFY
X01BVFJJWF9TSVpFIF07Ci0gICAgaW52X0RfdCAgIGludl9EWyAgTUFYX01BVFJJWF9TSVpFIF07
Ci0gICAgU0FWRV9TVEFDSzsKLQotICAgIHNpbGtfYXNzZXJ0KCBNIDw9IE1BWF9NQVRSSVhfU0la
RSApOwotICAgIEFMTE9DKCBMX1ExNiwgTSAqIE0sIG9wdXNfaW50MzIgKTsKLQotICAgIC8qKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAgICBGYWN0
b3JpemUgQSBieSBMREwgc3VjaCB0aGF0IEEgPSBMKkQqTCcsCi0gICAgd2hlcmUgTCBpcyBsb3dl
ciB0cmlhbmd1bGFyIHdpdGggb25lcyBvbiBkaWFnb25hbAotICAgICoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgc2lsa19MRExfZmFjdG9y
aXplX0ZJWCggQSwgTSwgTF9RMTYsIGludl9EICk7Ci0KLSAgICAvKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICAgICogc3Vic3RpdHV0ZSBEKkwn
KnggPSBZLiBpZToKLSAgICBMKkQqTCcqeCA9IGIgPT4gTCpZID0gYiA8PT4gWSA9IGludihMKSpi
Ci0gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqLwotICAgIHNpbGtfTFNfU29sdmVGaXJzdF9GSVgoIExfUTE2LCBNLCBiLCBZICk7Ci0KLSAg
ICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgot
ICAgIEQqTCcqeCA9IFkgPD0+IEwnKnggPSBpbnYoRCkqWSwgYmVjYXVzZSBEIGlzCi0gICAgZGlh
Z29uYWwganVzdCBtdWx0aXBseSB3aXRoIDEvZF9pCi0gICAgKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICBzaWxrX0xTX2RpdmlkZV9RMTZf
RklYKCBZLCBpbnZfRCwgTSApOwotCi0gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioKLSAgICB4ID0gaW52KEwnKSAqIGludihEKSAqIFkKLSAg
ICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8K
LSAgICBzaWxrX0xTX1NvbHZlTGFzdF9GSVgoIExfUTE2LCBNLCBZLCB4X1ExNiApOwotICAgIFJF
U1RPUkVfU1RBQ0s7Ci19Ci0KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTERMX2ZhY3Rv
cml6ZV9GSVgoCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAqQSwgICAgICAgICAvKiBJL08gUG9p
bnRlciB0byBTeW1ldHJpYyBTcXVhcmUgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBNLCAgICAgICAgICAvKiBJICAgU2l6ZSBvZiBN
YXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgb3B1c19pbnQzMiAgICAgICAgICAqTF9RMTYsICAgICAvKiBJL08gUG9pbnRlciB0byBTcXVh
cmUgVXBwZXIgdHJpYW5ndWxhciBNYXRyaXggICAgICAgICAgICAgICAgICAgICovCi0gICAgaW52
X0RfdCAgICAgICAgICAgICAqaW52X0QgICAgICAvKiBJL08gUG9pbnRlciB0byB2ZWN0b3IgaG9s
ZGluZyBpbnZlcnRlZCBkaWFnb25hbCBlbGVtZW50cyBvZiBEICAgICovCi0pCi17Ci0gICAgb3B1
c19pbnQgICBpLCBqLCBrLCBzdGF0dXMsIGxvb3BfY291bnQ7Ci0gICAgY29uc3Qgb3B1c19pbnQz
MiAqcHRyMSwgKnB0cjI7Ci0gICAgb3B1c19pbnQzMiBkaWFnX21pbl92YWx1ZSwgdG1wXzMyLCBl
cnI7Ci0gICAgb3B1c19pbnQzMiB2X1EwWyBNQVhfTUFUUklYX1NJWkUgXSwgRF9RMFsgTUFYX01B
VFJJWF9TSVpFIF07Ci0gICAgb3B1c19pbnQzMiBvbmVfZGl2X2RpYWdfUTM2LCBvbmVfZGl2X2Rp
YWdfUTQwLCBvbmVfZGl2X2RpYWdfUTQ4OwotCi0gICAgc2lsa19hc3NlcnQoIE0gPD0gTUFYX01B
VFJJWF9TSVpFICk7Ci0KLSAgICBzdGF0dXMgPSAxOwotICAgIGRpYWdfbWluX3ZhbHVlID0gc2ls
a19tYXhfMzIoIHNpbGtfU01NVUwoIHNpbGtfQUREX1NBVDMyKCBBWyAwIF0sIEFbIHNpbGtfU01V
TEJCKCBNLCBNICkgLSAxIF0gKSwgU0lMS19GSVhfQ09OU1QoIEZJTkRfTFRQX0NPTkRfRkFDLCAz
MSApICksIDEgPDwgOSApOwotICAgIGZvciggbG9vcF9jb3VudCA9IDA7IGxvb3BfY291bnQgPCBN
ICYmIHN0YXR1cyA9PSAxOyBsb29wX2NvdW50KysgKSB7Ci0gICAgICAgIHN0YXR1cyA9IDA7Ci0g
ICAgICAgIGZvciggaiA9IDA7IGogPCBNOyBqKysgKSB7Ci0gICAgICAgICAgICBwdHIxID0gbWF0
cml4X2FkciggTF9RMTYsIGosIDAsIE0gKTsKLSAgICAgICAgICAgIHRtcF8zMiA9IDA7Ci0gICAg
ICAgICAgICBmb3IoIGkgPSAwOyBpIDwgajsgaSsrICkgewotICAgICAgICAgICAgICAgIHZfUTBb
IGkgXSA9IHNpbGtfU01VTFdXKCAgICAgICAgIERfUTBbIGkgXSwgcHRyMVsgaSBdICk7IC8qIFEw
ICovCi0gICAgICAgICAgICAgICAgdG1wXzMyICAgID0gc2lsa19TTUxBV1coIHRtcF8zMiwgdl9R
MFsgaSBdLCBwdHIxWyBpIF0gKTsgLyogUTAgKi8KLSAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IHRtcF8zMiA9IHNpbGtfU1VCMzIoIG1hdHJpeF9wdHIoIEEsIGosIGosIE0gKSwgdG1wXzMyICk7
Ci0KLSAgICAgICAgICAgIGlmKCB0bXBfMzIgPCBkaWFnX21pbl92YWx1ZSApIHsKLSAgICAgICAg
ICAgICAgICB0bXBfMzIgPSBzaWxrX1NVQjMyKCBzaWxrX1NNVUxCQiggbG9vcF9jb3VudCArIDEs
IGRpYWdfbWluX3ZhbHVlICksIHRtcF8zMiApOwotICAgICAgICAgICAgICAgIC8qIE1hdHJpeCBu
b3QgcG9zaXRpdmUgc2VtaS1kZWZpbml0ZSwgb3IgaWxsIGNvbmRpdGlvbmVkICovCi0gICAgICAg
ICAgICAgICAgZm9yKCBpID0gMDsgaSA8IE07IGkrKyApIHsKLSAgICAgICAgICAgICAgICAgICAg
bWF0cml4X3B0ciggQSwgaSwgaSwgTSApID0gc2lsa19BREQzMiggbWF0cml4X3B0ciggQSwgaSwg
aSwgTSApLCB0bXBfMzIgKTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgc3Rh
dHVzID0gMTsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIERfUTBbIGogXSA9IHRtcF8zMjsgICAgICAgICAgICAgICAgICAgICAgICAgLyogYWx3YXlz
IDwgbWF4KENvcnJlbGF0aW9uKSAqLwotCi0gICAgICAgICAgICAvKiB0d28tc3RlcCBkaXZpc2lv
biAqLwotICAgICAgICAgICAgb25lX2Rpdl9kaWFnX1EzNiA9IHNpbGtfSU5WRVJTRTMyX3ZhclEo
IHRtcF8zMiwgMzYgKTsgICAgICAgICAgICAgICAgICAgIC8qIFEzNiAqLwotICAgICAgICAgICAg
b25lX2Rpdl9kaWFnX1E0MCA9IHNpbGtfTFNISUZUKCBvbmVfZGl2X2RpYWdfUTM2LCA0ICk7ICAg
ICAgICAgICAgICAgICAgIC8qIFE0MCAqLwotICAgICAgICAgICAgZXJyID0gc2lsa19TVUIzMigg
KG9wdXNfaW50MzIpMSA8PCAyNCwgc2lsa19TTVVMV1coIHRtcF8zMiwgb25lX2Rpdl9kaWFnX1E0
MCApICk7ICAgICAvKiBRMjQgKi8KLSAgICAgICAgICAgIG9uZV9kaXZfZGlhZ19RNDggPSBzaWxr
X1NNVUxXVyggZXJyLCBvbmVfZGl2X2RpYWdfUTQwICk7ICAgICAgICAgICAgICAgICAvKiBRNDgg
Ki8KLQotICAgICAgICAgICAgLyogU2F2ZSAxL0RzICovCi0gICAgICAgICAgICBpbnZfRFsgaiBd
LlEzNl9wYXJ0ID0gb25lX2Rpdl9kaWFnX1EzNjsKLSAgICAgICAgICAgIGludl9EWyBqIF0uUTQ4
X3BhcnQgPSBvbmVfZGl2X2RpYWdfUTQ4OwotCi0gICAgICAgICAgICBtYXRyaXhfcHRyKCBMX1Ex
NiwgaiwgaiwgTSApID0gNjU1MzY7IC8qIDEuMCBpbiBRMTYgKi8KLSAgICAgICAgICAgIHB0cjEg
PSBtYXRyaXhfYWRyKCBBLCBqLCAwLCBNICk7Ci0gICAgICAgICAgICBwdHIyID0gbWF0cml4X2Fk
ciggTF9RMTYsIGogKyAxLCAwLCBNICk7Ci0gICAgICAgICAgICBmb3IoIGkgPSBqICsgMTsgaSA8
IE07IGkrKyApIHsKLSAgICAgICAgICAgICAgICB0bXBfMzIgPSAwOwotICAgICAgICAgICAgICAg
IGZvciggayA9IDA7IGsgPCBqOyBrKysgKSB7Ci0gICAgICAgICAgICAgICAgICAgIHRtcF8zMiA9
IHNpbGtfU01MQVdXKCB0bXBfMzIsIHZfUTBbIGsgXSwgcHRyMlsgayBdICk7IC8qIFEwICovCi0g
ICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIHRtcF8zMiA9IHNpbGtfU1VCMzIoIHB0
cjFbIGkgXSwgdG1wXzMyICk7IC8qIGFsd2F5cyA8IG1heChDb3JyZWxhdGlvbikgKi8KLQotICAg
ICAgICAgICAgICAgIC8qIHRtcF8zMiAvIERfUTBbal0gOiBEaXZpZGUgdG8gUTE2ICovCi0gICAg
ICAgICAgICAgICAgbWF0cml4X3B0ciggTF9RMTYsIGksIGosIE0gKSA9IHNpbGtfQUREMzIoIHNp
bGtfU01NVUwoIHRtcF8zMiwgb25lX2Rpdl9kaWFnX1E0OCApLAotICAgICAgICAgICAgICAgICAg
ICBzaWxrX1JTSElGVCggc2lsa19TTVVMV1coIHRtcF8zMiwgb25lX2Rpdl9kaWFnX1EzNiApLCA0
ICkgKTsKLQotICAgICAgICAgICAgICAgIC8qIGdvIHRvIG5leHQgY29sdW1uICovCi0gICAgICAg
ICAgICAgICAgcHRyMiArPSBNOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgfQotCi0g
ICAgc2lsa19hc3NlcnQoIHN0YXR1cyA9PSAwICk7Ci19Ci0KLXN0YXRpYyBPUFVTX0lOTElORSB2
b2lkIHNpbGtfTFNfZGl2aWRlX1ExNl9GSVgoCi0gICAgb3B1c19pbnQzMiAgICAgICAgICBUW10s
ICAgICAgICAvKiBJL08gIE51bWVuYXRvciB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgaW52X0RfdCAgICAgICAgICAgICAqaW52X0QsICAg
ICAvKiBJICAgIDEgLyBEIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBNICAgICAgICAgICAvKiBJ
ICAgIGRpbWVuc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICBpOwotICAgIG9wdXNfaW50MzIgdG1wXzMy
OwotICAgIG9wdXNfaW50MzIgb25lX2Rpdl9kaWFnX1EzNiwgb25lX2Rpdl9kaWFnX1E0ODsKLQot
ICAgIGZvciggaSA9IDA7IGkgPCBNOyBpKysgKSB7Ci0gICAgICAgIG9uZV9kaXZfZGlhZ19RMzYg
PSBpbnZfRFsgaSBdLlEzNl9wYXJ0OwotICAgICAgICBvbmVfZGl2X2RpYWdfUTQ4ID0gaW52X0Rb
IGkgXS5RNDhfcGFydDsKLQotICAgICAgICB0bXBfMzIgPSBUWyBpIF07Ci0gICAgICAgIFRbIGkg
XSA9IHNpbGtfQUREMzIoIHNpbGtfU01NVUwoIHRtcF8zMiwgb25lX2Rpdl9kaWFnX1E0OCApLCBz
aWxrX1JTSElGVCggc2lsa19TTVVMV1coIHRtcF8zMiwgb25lX2Rpdl9kaWFnX1EzNiApLCA0ICkg
KTsKLSAgICB9Ci19Ci0KLS8qIFNvbHZlIEx4ID0gYiwgd2hlbiBMIGlzIGxvd2VyIHRyaWFuZ3Vs
YXIgYW5kIGhhcyBvbmVzIG9uIHRoZSBkaWFnb25hbCAqLwotc3RhdGljIE9QVVNfSU5MSU5FIHZv
aWQgc2lsa19MU19Tb2x2ZUZpcnN0X0ZJWCgKLSAgICBjb25zdCBvcHVzX2ludDMyICAgICpMX1Ex
NiwgICAgIC8qIEkgICAgUG9pbnRlciB0byBMb3dlciBUcmlhbmd1bGFyIE1hdHJpeCAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgIE0sICAgICAgICAg
IC8qIEkgICAgRGltIG9mIE1hdHJpeCBlcXVhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICpiLCAgICAgICAgIC8qIEkg
ICAgYiBWZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICp4X1ExNiAgICAgIC8qIE8gICAgeCBW
ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSkKLXsKLSAgICBvcHVzX2ludCBpLCBqOwotICAgIGNvbnN0IG9wdXNfaW50MzIgKnB0cjMy
OwotICAgIG9wdXNfaW50MzIgdG1wXzMyOwotCi0gICAgZm9yKCBpID0gMDsgaSA8IE07IGkrKyAp
IHsKLSAgICAgICAgcHRyMzIgPSBtYXRyaXhfYWRyKCBMX1ExNiwgaSwgMCwgTSApOwotICAgICAg
ICB0bXBfMzIgPSAwOwotICAgICAgICBmb3IoIGogPSAwOyBqIDwgaTsgaisrICkgewotICAgICAg
ICAgICAgdG1wXzMyID0gc2lsa19TTUxBV1coIHRtcF8zMiwgcHRyMzJbIGogXSwgeF9RMTZbIGog
XSApOwotICAgICAgICB9Ci0gICAgICAgIHhfUTE2WyBpIF0gPSBzaWxrX1NVQjMyKCBiWyBpIF0s
IHRtcF8zMiApOwotICAgIH0KLX0KLQotLyogU29sdmUgTF50KnggPSBiLCB3aGVyZSBMIGlzIGxv
d2VyIHRyaWFuZ3VsYXIgd2l0aCBvbmVzIG9uIHRoZSBkaWFnb25hbCAqLwotc3RhdGljIE9QVVNf
SU5MSU5FIHZvaWQgc2lsa19MU19Tb2x2ZUxhc3RfRklYKAotICAgIGNvbnN0IG9wdXNfaW50MzIg
ICAgKkxfUTE2LCAgICAgLyogSSAgICBQb2ludGVyIHRvIExvd2VyIFRyaWFuZ3VsYXIgTWF0cml4
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgTSwg
ICAgICAgICAgLyogSSAgICBEaW0gb2YgTWF0cml4IGVxdWF0aW9uICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgKmIsICAgICAg
ICAgLyogSSAgICBiIFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgKnhfUTE2ICAgICAgLyog
TyAgICB4IFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50IGksIGo7Ci0gICAgY29uc3Qgb3B1c19pbnQz
MiAqcHRyMzI7Ci0gICAgb3B1c19pbnQzMiB0bXBfMzI7Ci0KLSAgICBmb3IoIGkgPSBNIC0gMTsg
aSA+PSAwOyBpLS0gKSB7Ci0gICAgICAgIHB0cjMyID0gbWF0cml4X2FkciggTF9RMTYsIDAsIGks
IE0gKTsKLSAgICAgICAgdG1wXzMyID0gMDsKLSAgICAgICAgZm9yKCBqID0gTSAtIDE7IGogPiBp
OyBqLS0gKSB7Ci0gICAgICAgICAgICB0bXBfMzIgPSBzaWxrX1NNTEFXVyggdG1wXzMyLCBwdHIz
Mlsgc2lsa19TTVVMQkIoIGosIE0gKSBdLCB4X1ExNlsgaiBdICk7Ci0gICAgICAgIH0KLSAgICAg
ICAgeF9RMTZbIGkgXSA9IHNpbGtfU1VCMzIoIGJbIGkgXSwgdG1wXzMyICk7Ci0gICAgfQotfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3N0cnVjdHNfRklYLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvc3RydWN0c19G
SVguaAppbmRleCAzMjk0YjI1MTI4MWVkODI2NWQ0MjNjNTRlMGQwMjI3M2Y3Zjk5NDUyLi4yNzc0
YTk3YjI0ZmU2NzdiN2QxODJhOWExMjAyOGE3YzFkODdmYTg5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4
ZWQvc3RydWN0c19GSVguaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvc3RydWN0c19GSVguaApAQCAtNDcsMzEg
KzQ3LDE3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAg
ICAgVGlsdF9zbXRoX1ExNjsKIH0gc2lsa19zaGFwZV9zdGF0ZV9GSVg7CiAKLS8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KLS8qIFByZWZpbHRlciBzdGF0ZSAgICAgICAgICAgICAg
Ki8KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLXR5cGVkZWYgc3RydWN0IHsK
LSAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgc0xUUF9zaHBbIExUUF9CVUZfTEVOR1RI
IF07Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHNBUl9zaHBbIE1BWF9TSEFQRV9M
UENfT1JERVIgKyAxIF07Ci0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIHNMVFBfc2hw
X2J1Zl9pZHg7Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHNMRl9BUl9zaHBfUTEy
OwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBzTEZfTUFfc2hwX1ExMjsKLSAgICBv
cHVzX2ludDMyICAgICAgICAgICAgICAgICAgc0hhcm1IUF9RMjsKLSAgICBvcHVzX2ludDMyICAg
ICAgICAgICAgICAgICAgcmFuZF9zZWVkOwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
ICBsYWdQcmV2OwotfSBzaWxrX3ByZWZpbHRlcl9zdGF0ZV9GSVg7Ci0KIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KIC8qIEVuY29kZXIgc3RhdGUgRklYICAgICAgICAgICAgKi8K
IC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIHR5cGVkZWYgc3RydWN0IHsKICAg
ICBzaWxrX2VuY29kZXJfc3RhdGUgICAgICAgICAgc0NtbjsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIENvbW1vbiBzdHJ1Y3QsIHNoYXJlZCB3aXRoIGZsb2F0aW5nLXBvaW50
IGNvZGUgICAgICAgKi8KICAgICBzaWxrX3NoYXBlX3N0YXRlX0ZJWCAgICAgICAgc1NoYXBlOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNoYXBlIHN0YXRlICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX3ByZWZpbHRlcl9zdGF0
ZV9GSVggICAgc1ByZWZpbHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFByZWZp
bHRlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KIAogICAg
IC8qIEJ1ZmZlciBmb3IgZmluZCBwaXRjaCBhbmQgbm9pc2Ugc2hhcGUgYW5hbHlzaXMgKi8KICAg
ICBzaWxrX0RXT1JEX0FMSUdOIG9wdXNfaW50MTYgeF9idWZbIDIgKiBNQVhfRlJBTUVfTEVOR1RI
ICsgTEFfU0hBUEVfTUFYIF07LyogQnVmZmVyIGZvciBmaW5kIHBpdGNoIGFuZCBub2lzZSBzaGFw
ZSBhbmFseXNpcyAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgTFRQQ29ycl9R
MTU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE5vcm1hbGl6ZWQgY29ycmVsYXRpb24g
ZnJvbSBwaXRjaCBsYWcgZXN0aW1hdG9yICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAg
ICAgICAgICAgICByZXNOcmdTbXRoOwogfSBzaWxrX2VuY29kZXJfc3RhdGVfRklYOwogCiAvKioq
KioqKioqKioqKioqKioqKioqKioqLwpAQCAtODcsMTEgKzczLDggQEAgdHlwZWRlZiBzdHJ1Y3Qg
ewogCiAgICAgLyogTm9pc2Ugc2hhcGluZyBwYXJhbWV0ZXJzICovCiAgICAgLyogVGVzdGluZyAq
LwotICAgIHNpbGtfRFdPUkRfQUxJR04gb3B1c19pbnQxNiBBUjFfUTEzWyBNQVhfTkJfU1VCRlIg
KiBNQVhfU0hBUEVfTFBDX09SREVSIF07Ci0gICAgc2lsa19EV09SRF9BTElHTiBvcHVzX2ludDE2
IEFSMl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKKyAgICBzaWxr
X0RXT1JEX0FMSUdOIG9wdXNfaW50MTYgQVJfUTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVf
TFBDX09SREVSIF07CiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIExGX3NocF9RMTRb
ICAgICAgICBNQVhfTkJfU1VCRlIgXTsgICAgICAvKiBQYWNrcyB0d28gaW50MTYgY29lZmZpY2ll
bnRzIHBlciBpbnQzMiB2YWx1ZSAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAg
ICAgICAgIEdhaW5zUHJlX1ExNFsgICAgICBNQVhfTkJfU1VCRlIgXTsKLSAgICBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgICAgSGFybUJvb3N0X1ExNFsgICAgIE1BWF9OQl9TVUJGUiBdOwogICAg
IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBUaWx0X1ExNFsgICAgICAgICAgTUFYX05CX1NV
QkZSIF07CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5fUTE0
WyBNQVhfTkJfU1VCRlIgXTsKICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgTGFtYmRh
X1ExMDsKQEAgLTk5LDcgKzgyLDYgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgICBjb2RpbmdfcXVhbGl0eV9RMTQ7CiAKICAgICAvKiBtZWFzdXJlcyAq
LwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBzcGFyc2VuZXNzX1E4OwogICAgIG9w
dXNfaW50MzIgICAgICAgICAgICAgICAgICBwcmVkR2Fpbl9RMTY7CiAgICAgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICAgIExUUHJlZENvZEdhaW5fUTc7CiAgICAgb3B1c19pbnQzMiAgICAgICAg
ICAgICAgICAgIFJlc05yZ1sgTUFYX05CX1NVQkZSIF07ICAgICAgICAgICAgICAgICAvKiBSZXNp
ZHVhbCBlbmVyZ3kgcGVyIHN1YmZyYW1lICAgICAgICAgICAgICAgICAgICAgICAgICovCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZml4ZWQvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhl
ZC93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jCmluZGV4IDZjYTZjMTE4NGQ4NjVmN2ZiYmMx
NWJjYzZjYmIzMjliMjZiODZhMDIuLjk5NGMyOTlhYmQxMjQwY2RiMzc1OTdlM2E4YWNhODIwN2U4
OWE5NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9maXhlZC93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jCkBAIC0zMSwxNyAr
MzEsMTMgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKICNpbmNsdWRlICJtYWluX0ZJ
WC5oIgogCi0jZGVmaW5lIFFDICAxMAotI2RlZmluZSBRUyAgMTQKLQogI2lmIGRlZmluZWQoTUlQ
U3IxX0FTTSkKICNpbmNsdWRlICJtaXBzL3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX21pcHNy
MS5oIgogI2VuZGlmCiAKIAotI2lmbmRlZiBPVkVSUklERV9zaWxrX3dhcnBlZF9hdXRvY29ycmVs
YXRpb25fRklYCiAvKiBBdXRvY29ycmVsYXRpb25zIGZvciBhIHdhcnBlZCBmcmVxdWVuY3kgYXhp
cyAqLwotdm9pZCBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKAordm9pZCBzaWxrX3dh
cnBlZF9hdXRvY29ycmVsYXRpb25fRklYX2MoCiAgICAgICAgICAgb3B1c19pbnQzMiAgICAgICAg
ICAgICAgICAqY29yciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBS
ZXN1bHQgW29yZGVyICsgMV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAg
ICpzY2FsZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFNjYWxpbmcg
b2YgdGhlIGNvcnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKmlucHV0
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgZGF0YSB0byBj
b3JyZWxhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCkBAIC05Miw0ICs4OCwzIEBAIHZvaWQgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9u
X0ZJWCgKICAgICB9CiAgICAgc2lsa19hc3NlcnQoIGNvcnJfUUNbIDAgXSA+PSAwICk7IC8qIElm
IGJyZWFraW5nLCBkZWNyZWFzZSBRQyovCiB9Ci0jZW5kaWYgLyogT1ZFUlJJREVfc2lsa193YXJw
ZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3g4Ni9wcmVm
aWx0ZXJfRklYX3NzZS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3g4Ni9wcmVmaWx0ZXJfRklYX3NzZS5jCmluZGV4
IDQ4OGE2MDNmNWRkMDE5OWI3MTJmZTQxNjAxZWRmM2EzOGIwMGFlMTAuLmQ4YzljMmY1NWYwNjY0
NTA4MjkzMDk4MDJiODE1OTNiZjU1OGE0ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC94ODYvcHJl
ZmlsdGVyX0ZJWF9zc2UuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQveDg2L3ByZWZpbHRlcl9GSVhfc3NlLmMK
QEAgLTEwNyw4ICsxMDcsOCBAQCB2b2lkIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJf
RklYX3NzZTRfMSgKICAgICAgICAgICAgICAgICB4bW1fdGVtcGIgPSBfbW1fYWRkX2VwaTMyKCB4
bW1fdGVtcGIsIHhtbV9wcm9kdWN0MiApOwogICAgICAgICAgICAgICAgIHhtbV90ZW1wYSA9IF9t
bV9hZGRfZXBpMzIoIHhtbV90ZW1wYSwgeG1tX3RlbXBiICk7CiAKLSAgICAgICAgICAgICAgICBz
dW0gID0gKGNvZWZfUTEzXzggKiBzdGF0ZV84KSA+PiAxNjsKLSAgICAgICAgICAgICAgICBzdW0g
Kz0gKGNvZWZfUTEzXzkgKiBzdGF0ZV85KSA+PiAxNjsKKyAgICAgICAgICAgICAgICBzdW0gID0g
KG9wdXNfaW50MzIpKChjb2VmX1ExM184ICogc3RhdGVfOCkgPj4gMTYpOworICAgICAgICAgICAg
ICAgIHN1bSArPSAob3B1c19pbnQzMikoKGNvZWZfUTEzXzkgKiBzdGF0ZV85KSA+PiAxNik7CiAK
ICAgICAgICAgICAgICAgICB4bW1fdGVtcGEgPSBfbW1fYWRkX2VwaTMyKCB4bW1fdGVtcGEsIF9t
bV9zaHVmZmxlX2VwaTMyKCB4bW1fdGVtcGEsIF9NTV9TSFVGRkxFKCAwLCAwLCAwLCAyICkgKSAp
OwogICAgICAgICAgICAgICAgIHN1bSArPSBfbW1fY3Z0c2kxMjhfc2kzMiggeG1tX3RlbXBhKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9mbG9hdC9MUENfaW52X3ByZWRfZ2Fpbl9GTFAuYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9h
dC9MUENfaW52X3ByZWRfZ2Fpbl9GTFAuYwppbmRleCAyNTE3OGJhY2RkZTQ2MTBiZTA5YTMxYjU5
ZmZmNzliMzVmNzFlMDMzLi4yYmUyMTIyZDYxNDA4YWZmZmIxZGJmZDhjZDA2NzIzZmIyODIyOWI5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvTFBDX2ludl9wcmVkX2dhaW5fRkxQLmMKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2Zsb2F0L0xQQ19pbnZfcHJlZF9nYWluX0ZMUC5jCkBAIC0zMSw4ICszMSw3IEBAIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogCiAjaW5jbHVkZSAiU2lnUHJvY19GSVguaCIKICNpbmNsdWRl
ICJTaWdQcm9jX0ZMUC5oIgotCi0jZGVmaW5lIFJDX1RIUkVTSE9MRCAgICAgICAgMC45OTk5Zgor
I2luY2x1ZGUgImRlZmluZS5oIgogCiAvKiBjb21wdXRlIGludmVyc2Ugb2YgTFBDIHByZWRpY3Rp
b24gZ2FpbiwgYW5kICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogLyogdGVzdCBpZiBMUEMg
Y29lZmZpY2llbnRzIGFyZSBzdGFibGUgKGFsbCBwb2xlcyB3aXRoaW4gdW5pdCBjaXJjbGUpICAg
Ki8KQEAgLTQzLDM0ICs0MiwzMiBAQCBzaWxrX2Zsb2F0IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9n
YWluX0ZMUCggIC8qIE8gICAgcmV0dXJuIGludmVyc2UgcHJlZGljdGlvbiBnYQogKQogewogICAg
IG9wdXNfaW50ICAgaywgbjsKLSAgICBkb3VibGUgICAgIGludkdhaW4sIHJjLCByY19tdWx0MSwg
cmNfbXVsdDI7Ci0gICAgc2lsa19mbG9hdCBBdG1wWyAyIF1bIFNJTEtfTUFYX09SREVSX0xQQyBd
OwotICAgIHNpbGtfZmxvYXQgKkFvbGQsICpBbmV3OworICAgIGRvdWJsZSAgICAgaW52R2Fpbiwg
cmMsIHJjX211bHQxLCByY19tdWx0MiwgdG1wMSwgdG1wMjsKKyAgICBzaWxrX2Zsb2F0IEF0bXBb
IFNJTEtfTUFYX09SREVSX0xQQyBdOwogCi0gICAgQW5ldyA9IEF0bXBbIG9yZGVyICYgMSBdOwot
ICAgIHNpbGtfbWVtY3B5KCBBbmV3LCBBLCBvcmRlciAqIHNpemVvZihzaWxrX2Zsb2F0KSApOwor
ICAgIHNpbGtfbWVtY3B5KCBBdG1wLCBBLCBvcmRlciAqIHNpemVvZihzaWxrX2Zsb2F0KSApOwog
CiAgICAgaW52R2FpbiA9IDEuMDsKICAgICBmb3IoIGsgPSBvcmRlciAtIDE7IGsgPiAwOyBrLS0g
KSB7Ci0gICAgICAgIHJjID0gLUFuZXdbIGsgXTsKLSAgICAgICAgaWYoIHJjID4gUkNfVEhSRVNI
T0xEIHx8IHJjIDwgLVJDX1RIUkVTSE9MRCApIHsKKyAgICAgICAgcmMgPSAtQXRtcFsgayBdOwor
ICAgICAgICByY19tdWx0MSA9IDEuMGYgLSByYyAqIHJjOworICAgICAgICBpbnZHYWluICo9IHJj
X211bHQxOworICAgICAgICBpZiggaW52R2FpbiAqIE1BWF9QUkVESUNUSU9OX1BPV0VSX0dBSU4g
PCAxLjBmICkgewogICAgICAgICAgICAgcmV0dXJuIDAuMGY7CiAgICAgICAgIH0KLSAgICAgICAg
cmNfbXVsdDEgPSAxLjBmIC0gcmMgKiByYzsKICAgICAgICAgcmNfbXVsdDIgPSAxLjBmIC8gcmNf
bXVsdDE7Ci0gICAgICAgIGludkdhaW4gKj0gcmNfbXVsdDE7Ci0gICAgICAgIC8qIHN3YXAgcG9p
bnRlcnMgKi8KLSAgICAgICAgQW9sZCA9IEFuZXc7Ci0gICAgICAgIEFuZXcgPSBBdG1wWyBrICYg
MSBdOwotICAgICAgICBmb3IoIG4gPSAwOyBuIDwgazsgbisrICkgewotICAgICAgICAgICAgQW5l
d1sgbiBdID0gKHNpbGtfZmxvYXQpKCAoIEFvbGRbIG4gXSAtIEFvbGRbIGsgLSBuIC0gMSBdICog
cmMgKSAqIHJjX211bHQyICk7CisgICAgICAgIGZvciggbiA9IDA7IG4gPCAoayArIDEpID4+IDE7
IG4rKyApIHsKKyAgICAgICAgICAgIHRtcDEgPSBBdG1wWyBuIF07CisgICAgICAgICAgICB0bXAy
ID0gQXRtcFsgayAtIG4gLSAxIF07CisgICAgICAgICAgICBBdG1wWyBuIF0gICAgICAgICA9IChz
aWxrX2Zsb2F0KSggKCB0bXAxIC0gdG1wMiAqIHJjICkgKiByY19tdWx0MiApOworICAgICAgICAg
ICAgQXRtcFsgayAtIG4gLSAxIF0gPSAoc2lsa19mbG9hdCkoICggdG1wMiAtIHRtcDEgKiByYyAp
ICogcmNfbXVsdDIgKTsKICAgICAgICAgfQogICAgIH0KLSAgICByYyA9IC1BbmV3WyAwIF07Ci0g
ICAgaWYoIHJjID4gUkNfVEhSRVNIT0xEIHx8IHJjIDwgLVJDX1RIUkVTSE9MRCApIHsKLSAgICAg
ICAgcmV0dXJuIDAuMGY7Ci0gICAgfQorICAgIHJjID0gLUF0bXBbIDAgXTsKICAgICByY19tdWx0
MSA9IDEuMGYgLSByYyAqIHJjOwogICAgIGludkdhaW4gKj0gcmNfbXVsdDE7CisgICAgaWYoIGlu
dkdhaW4gKiBNQVhfUFJFRElDVElPTl9QT1dFUl9HQUlOIDwgMS4wZiApIHsKKyAgICAgICAgcmV0
dXJuIDAuMGY7CisgICAgfQogICAgIHJldHVybiAoc2lsa19mbG9hdClpbnZHYWluOwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2Zsb2F0L1NpZ1Byb2NfRkxQLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvU2lnUHJvY19GTFAu
aAppbmRleCBmMGNiMzczM2JlNmM3ODY1YTg4MzFiNjUyN2IxYjAxNmZkMGI1NjcyLi45NTNkZThi
MDllMzdiZDY5MjRkMzY1NTQxMDJlNWI5YWE2NWE2NmRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQv
U2lnUHJvY19GTFAuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvU2lnUHJvY19GTFAuaApAQCAtNjgsMTMgKzY4
LDYgQEAgdm9pZCBzaWxrX2syYV9GTFAoCiAgICAgb3B1c19pbnQzMiAgICAgICAgICBvcmRlciAg
ICAgICAgICAgICAgIC8qIEkgICAgIHByZWRpY3Rpb24gb3JkZXIgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKLS8qIFNvbHZlIHRoZSBub3JtYWwgZXF1
YXRpb25zIHVzaW5nIHRoZSBMZXZpbnNvbi1EdXJiaW4gcmVjdXJzaW9uICovCi1zaWxrX2Zsb2F0
IHNpbGtfbGV2aW5zb25kdXJiaW5fRkxQKCAgICAgICAgIC8qIE8gICAgcHJlZGljdGlvbiBlcnJv
ciBlbmVyZ3kgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxr
X2Zsb2F0ICAgICAgICAgIEFbXSwgICAgICAgICAgICAgICAgLyogTyAgICBwcmVkaWN0aW9uIGNv
ZWZmaWNpZW50cyBbb3JkZXJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNv
bnN0IHNpbGtfZmxvYXQgICAgY29ycltdLCAgICAgICAgICAgICAvKiBJICAgIGlucHV0IGF1dG8t
Y29ycmVsYXRpb25zIFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAg
Y29uc3Qgb3B1c19pbnQgICAgICBvcmRlciAgICAgICAgICAgICAgIC8qIEkgICAgcHJlZGljdGlv
biBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSk7
Ci0KIC8qIGNvbXB1dGUgYXV0b2NvcnJlbGF0aW9uICovCiB2b2lkIHNpbGtfYXV0b2NvcnJlbGF0
aW9uX0ZMUCgKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICpyZXN1bHRzLCAgICAgICAgICAgLyog
TyAgICByZXN1bHQgKGxlbmd0aCBjb3JyZWxhdGlvbkNvdW50KSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2VuY29kZV9mcmFtZV9GTFAuYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9mbG9hdC9lbmNvZGVfZnJhbWVfRkxQLmMKaW5kZXggMjA5MmE0ZDllMjQ4Mjk5NjNlNDc5YmMw
M2VjZjdhZmE4ZmQxM2FkOS4uNDk5NTZhMmQ3NTJjNjkzOGIzMDMzMTc5MmJiNTJkNzI0YTg5ZWNl
MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2VuY29kZV9mcmFtZV9GTFAuYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxv
YXQvZW5jb2RlX2ZyYW1lX0ZMUC5jCkBAIC0yOSw2ICsyOSw3IEBAIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogI2luY2x1ZGUgImNvbmZpZy5oIgogI2VuZGlmCiAKKyNpbmNsdWRlIDxzdGRs
aWIuaD4KICNpbmNsdWRlICJtYWluX0ZMUC5oIgogI2luY2x1ZGUgInR1bmluZ19wYXJhbWV0ZXJz
LmgiCiAKQEAgLTQxLDIxICs0MiwyOCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xC
UlJfZW5jb2RlX0ZMUCgKICk7CiAKIHZvaWQgc2lsa19lbmNvZGVfZG9fVkFEX0ZMUCgKLSAgICBz
aWxrX2VuY29kZXJfc3RhdGVfRkxQICAgICAgICAgICpwc0VuYyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0ZSBGTFAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GTFAgICAgICAgICAgKnBzRW5jLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIHN0YXRlIEZMUCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAg
ICBhY3Rpdml0eSAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIERlY2lzaW9uIG9m
IE9wdXMgdm9pY2UgYWN0aXZpdHkgZGV0ZWN0b3IgICAgKi8KICkKIHsKKyAgICBjb25zdCBvcHVz
X2ludCBhY3Rpdml0eV90aHJlc2hvbGQgPSBTSUxLX0ZJWF9DT05TVCggU1BFRUNIX0FDVElWSVRZ
X0RUWF9USFJFUywgOCApOworCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAg
ICAgLyogVm9pY2UgQWN0aXZpdHkgRGV0ZWN0aW9uICovCiAgICAgLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKiovCiAgICAgc2lsa19WQURfR2V0U0FfUTgoICZwc0VuYy0+c0NtbiwgcHNFbmMt
PnNDbW4uaW5wdXRCdWYgKyAxLCBwc0VuYy0+c0Ntbi5hcmNoICk7CisgICAgLyogSWYgT3B1cyBW
QUQgaXMgaW5hY3RpdmUgYW5kIFNpbGsgVkFEIGlzIGFjdGl2ZTogbG93ZXIgU2lsayBWQUQgdG8g
anVzdCB1bmRlciB0aGUgdGhyZXNob2xkICovCisgICAgaWYoIGFjdGl2aXR5ID09IFZBRF9OT19B
Q1RJVklUWSAmJiBwc0VuYy0+c0Ntbi5zcGVlY2hfYWN0aXZpdHlfUTggPj0gYWN0aXZpdHlfdGhy
ZXNob2xkICkgeworICAgICAgICBwc0VuYy0+c0Ntbi5zcGVlY2hfYWN0aXZpdHlfUTggPSBhY3Rp
dml0eV90aHJlc2hvbGQgLSAxOworICAgIH0KIAogICAgIC8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBDb252ZXJ0IHNwZWVjaCBhY3Rp
dml0eSBpbnRvIFZBRCBhbmQgRFRYIGZsYWdzICovCiAgICAgLyoqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgIGlmKCBwc0VuYy0+c0Ntbi5zcGVl
Y2hfYWN0aXZpdHlfUTggPCBTSUxLX0ZJWF9DT05TVCggU1BFRUNIX0FDVElWSVRZX0RUWF9USFJF
UywgOCApICkgeworICAgIGlmKCBwc0VuYy0+c0Ntbi5zcGVlY2hfYWN0aXZpdHlfUTggPCBhY3Rp
dml0eV90aHJlc2hvbGQgKSB7CiAgICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlw
ZSA9IFRZUEVfTk9fVk9JQ0VfQUNUSVZJVFk7CiAgICAgICAgIHBzRW5jLT5zQ21uLm5vU3BlZWNo
Q291bnRlcisrOwotICAgICAgICBpZiggcHNFbmMtPnNDbW4ubm9TcGVlY2hDb3VudGVyIDwgTkJf
U1BFRUNIX0ZSQU1FU19CRUZPUkVfRFRYICkgeworICAgICAgICBpZiggcHNFbmMtPnNDbW4ubm9T
cGVlY2hDb3VudGVyIDw9IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCApIHsKICAgICAgICAg
ICAgIHBzRW5jLT5zQ21uLmluRFRYID0gMDsKICAgICAgICAgfSBlbHNlIGlmKCBwc0VuYy0+c0Nt
bi5ub1NwZWVjaENvdW50ZXIgPiBNQVhfQ09OU0VDVVRJVkVfRFRYICsgTkJfU1BFRUNIX0ZSQU1F
U19CRUZPUkVfRFRYICkgewogICAgICAgICAgICAgcHNFbmMtPnNDbW4ubm9TcGVlY2hDb3VudGVy
ID0gTkJfU1BFRUNIX0ZSQU1FU19CRUZPUkVfRFRYOwpAQCAtODUsNyArOTMsNiBAQCBvcHVzX2lu
dCBzaWxrX2VuY29kZV9mcmFtZV9GTFAoCiAgICAgc2lsa19lbmNvZGVyX2NvbnRyb2xfRkxQIHNF
bmNDdHJsOwogICAgIG9wdXNfaW50ICAgICBpLCBpdGVyLCBtYXhJdGVyLCBmb3VuZF91cHBlciwg
Zm91bmRfbG93ZXIsIHJldCA9IDA7CiAgICAgc2lsa19mbG9hdCAgICp4X2ZyYW1lLCAqcmVzX3Bp
dGNoX2ZyYW1lOwotICAgIHNpbGtfZmxvYXQgICB4ZndbIE1BWF9GUkFNRV9MRU5HVEggXTsKICAg
ICBzaWxrX2Zsb2F0ICAgcmVzX3BpdGNoWyAyICogTUFYX0ZSQU1FX0xFTkdUSCArIExBX1BJVENI
X01BWCBdOwogICAgIGVjX2VuYyAgICAgICBzUmFuZ2VFbmNfY29weSwgc1JhbmdlRW5jX2NvcHky
OwogICAgIHNpbGtfbnNxX3N0YXRlIHNOU1FfY29weSwgc05TUV9jb3B5MjsKQEAgLTk3LDYgKzEw
NCw5IEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZMUCgKICAgICBvcHVzX2ludDggICAg
TGFzdEdhaW5JbmRleF9jb3B5MjsKICAgICBvcHVzX2ludDMyICAgcEdhaW5zX1ExNlsgTUFYX05C
X1NVQkZSIF07CiAgICAgb3B1c191aW50OCAgIGVjX2J1Zl9jb3B5WyAxMjc1IF07CisgICAgb3B1
c19pbnQgICAgIGdhaW5fbG9ja1sgTUFYX05CX1NVQkZSIF0gPSB7MH07CisgICAgb3B1c19pbnQx
NiAgIGJlc3RfZ2Fpbl9tdWx0WyBNQVhfTkJfU1VCRlIgXTsKKyAgICBvcHVzX2ludCAgICAgYmVz
dF9zdW1bIE1BWF9OQl9TVUJGUiBdOwogCiAgICAgLyogVGhpcyBpcyB0b3RhbGx5IHVubmVjZXNz
YXJ5IGJ1dCBtYW55IGNvbXBpbGVycyAoaW5jbHVkaW5nIGdjYykgYXJlIHRvbyBkdW1iIHRvIHJl
YWxpc2UgaXQgKi8KICAgICBMYXN0R2FpbkluZGV4X2NvcHkyID0gbkJpdHNfbG93ZXIgPSBuQml0
c191cHBlciA9IGdhaW5NdWx0X2xvd2VyID0gZ2Fpbk11bHRfdXBwZXIgPSAwOwpAQCAtMTM5LDIy
ICsxNDksMTcgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRkxQKAogICAgICAgICAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgICAg
ICAvKiBGaW5kIGxpbmVhciBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cyAoTFBDICsgTFRQKSAqLwog
ICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqLwotICAgICAgICBzaWxrX2ZpbmRfcHJlZF9jb2Vmc19GTFAoIHBzRW5jLCAmc0VuY0N0cmws
IHJlc19waXRjaCwgeF9mcmFtZSwgY29uZENvZGluZyApOworICAgICAgICBzaWxrX2ZpbmRfcHJl
ZF9jb2Vmc19GTFAoIHBzRW5jLCAmc0VuY0N0cmwsIHJlc19waXRjaF9mcmFtZSwgeF9mcmFtZSwg
Y29uZENvZGluZyApOwogCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqLwogICAgICAgICAvKiBQcm9jZXNzIGdhaW5zICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
CiAgICAgICAgIHNpbGtfcHJvY2Vzc19nYWluc19GTFAoIHBzRW5jLCAmc0VuY0N0cmwsIGNvbmRD
b2RpbmcgKTsKIAotICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKiovCi0gICAgICAgIC8qIFByZWZpbHRlcmluZyBmb3Igbm9pc2Ugc2hhcGVyICAgICAgICAg
Ki8KLSAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwot
ICAgICAgICBzaWxrX3ByZWZpbHRlcl9GTFAoIHBzRW5jLCAmc0VuY0N0cmwsIHhmdywgeF9mcmFt
ZSApOwotCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
LwogICAgICAgICAvKiBMb3cgQml0cmF0ZSBSZWR1bmRhbnQgRW5jb2RpbmcgICAgICAgKi8KICAg
ICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgICAg
IHNpbGtfTEJSUl9lbmNvZGVfRkxQKCBwc0VuYywgJnNFbmNDdHJsLCB4ZncsIGNvbmRDb2Rpbmcg
KTsKKyAgICAgICAgc2lsa19MQlJSX2VuY29kZV9GTFAoIHBzRW5jLCAmc0VuY0N0cmwsIHhfZnJh
bWUsIGNvbmRDb2RpbmcgKTsKIAogICAgICAgICAvKiBMb29wIG92ZXIgcXVhbnRpemVyIGFuZCBl
bnRyb3kgY29kaW5nIHRvIGNvbnRyb2wgYml0cmF0ZSAqLwogICAgICAgICBtYXhJdGVyID0gNjsK
QEAgLTE4OCw3ICsxOTMsMTEgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRkxQKAogICAg
ICAgICAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8K
ICAgICAgICAgICAgICAgICAvKiBOb2lzZSBzaGFwaW5nIHF1YW50aXphdGlvbiAgICAgICAgICAg
ICovCiAgICAgICAgICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwotICAgICAgICAgICAgICAgIHNpbGtfTlNRX3dyYXBwZXJfRkxQKCBwc0VuYywgJnNF
bmNDdHJsLCAmcHNFbmMtPnNDbW4uaW5kaWNlcywgJnBzRW5jLT5zQ21uLnNOU1EsIHBzRW5jLT5z
Q21uLnB1bHNlcywgeGZ3ICk7CisgICAgICAgICAgICAgICAgc2lsa19OU1Ffd3JhcHBlcl9GTFAo
IHBzRW5jLCAmc0VuY0N0cmwsICZwc0VuYy0+c0Ntbi5pbmRpY2VzLCAmcHNFbmMtPnNDbW4uc05T
USwgcHNFbmMtPnNDbW4ucHVsc2VzLCB4X2ZyYW1lICk7CisKKyAgICAgICAgICAgICAgICBpZiAo
IGl0ZXIgPT0gbWF4SXRlciAmJiAhZm91bmRfbG93ZXIgKSB7CisgICAgICAgICAgICAgICAgICAg
IHNpbGtfbWVtY3B5KCAmc1JhbmdlRW5jX2NvcHkyLCBwc1JhbmdlRW5jLCBzaXplb2YoIGVjX2Vu
YyApICk7CisgICAgICAgICAgICAgICAgfQogCiAgICAgICAgICAgICAgICAgLyoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgICAgICAgICAgICAgLyogRW5jb2Rl
IFBhcmFtZXRlcnMgICAgICAgICAgICAgICAgICAgICovCkBAIC0yMDMsNiArMjEyLDMzIEBAIG9w
dXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZMUCgKIAogICAgICAgICAgICAgICAgIG5CaXRzID0g
ZWNfdGVsbCggcHNSYW5nZUVuYyApOwogCisgICAgICAgICAgICAgICAgLyogSWYgd2Ugc3RpbGwg
YnVzdCBhZnRlciB0aGUgbGFzdCBpdGVyYXRpb24sIGRvIHNvbWUgZGFtYWdlIGNvbnRyb2wuICov
CisgICAgICAgICAgICAgICAgaWYgKCBpdGVyID09IG1heEl0ZXIgJiYgIWZvdW5kX2xvd2VyICYm
IG5CaXRzID4gbWF4Qml0cyApIHsKKyAgICAgICAgICAgICAgICAgICAgc2lsa19tZW1jcHkoIHBz
UmFuZ2VFbmMsICZzUmFuZ2VFbmNfY29weTIsIHNpemVvZiggZWNfZW5jICkgKTsKKworICAgICAg
ICAgICAgICAgICAgICAvKiBLZWVwIGdhaW5zIHRoZSBzYW1lIGFzIHRoZSBsYXN0IGZyYW1lLiAq
LworICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c1NoYXBlLkxhc3RHYWluSW5kZXggPSBzRW5j
Q3RybC5sYXN0R2FpbkluZGV4UHJldjsKKyAgICAgICAgICAgICAgICAgICAgZm9yICggaSA9IDA7
IGkgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaSsrICkgeworICAgICAgICAgICAgICAgICAgICAg
ICAgcHNFbmMtPnNDbW4uaW5kaWNlcy5HYWluc0luZGljZXNbIGkgXSA9IDQ7CisgICAgICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgaWYgKGNvbmRDb2RpbmcgIT0gQ09ERV9D
T05ESVRJT05BTExZKSB7CisgICAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmluZGlj
ZXMuR2FpbnNJbmRpY2VzWyAwIF0gPSBzRW5jQ3RybC5sYXN0R2FpbkluZGV4UHJldjsKKyAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5lY19wcmV2
TGFnSW5kZXggPSBlY19wcmV2TGFnSW5kZXhfY29weTsKKyAgICAgICAgICAgICAgICAgICAgcHNF
bmMtPnNDbW4uZWNfcHJldlNpZ25hbFR5cGUgPSBlY19wcmV2U2lnbmFsVHlwZV9jb3B5OworICAg
ICAgICAgICAgICAgICAgICAvKiBDbGVhciBhbGwgcHVsc2VzLiAqLworICAgICAgICAgICAgICAg
ICAgICBmb3IgKCBpID0gMDsgaSA8IHBzRW5jLT5zQ21uLmZyYW1lX2xlbmd0aDsgaSsrICkgewor
ICAgICAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4ucHVsc2VzWyBpIF0gPSAwOworICAg
ICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAgc2lsa19lbmNvZGVfaW5k
aWNlcyggJnBzRW5jLT5zQ21uLCBwc1JhbmdlRW5jLCBwc0VuYy0+c0Ntbi5uRnJhbWVzRW5jb2Rl
ZCwgMCwgY29uZENvZGluZyApOworCisgICAgICAgICAgICAgICAgICAgIHNpbGtfZW5jb2RlX3B1
bHNlcyggcHNSYW5nZUVuYywgcHNFbmMtPnNDbW4uaW5kaWNlcy5zaWduYWxUeXBlLCBwc0VuYy0+
c0Ntbi5pbmRpY2VzLnF1YW50T2Zmc2V0VHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHBz
RW5jLT5zQ21uLnB1bHNlcywgcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoICk7CisKKyAgICAgICAg
ICAgICAgICAgICAgbkJpdHMgPSBlY190ZWxsKCBwc1JhbmdlRW5jICk7CisgICAgICAgICAgICAg
ICAgfQorCiAgICAgICAgICAgICAgICAgaWYoIHVzZUNCUiA9PSAwICYmIGl0ZXIgPT0gMCAmJiBu
Qml0cyA8PSBtYXhCaXRzICkgewogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAg
ICAgICAgICB9CkBAIC0yMjMsNyArMjU5LDkgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVf
RkxQKAogICAgICAgICAgICAgaWYoIG5CaXRzID4gbWF4Qml0cyApIHsKICAgICAgICAgICAgICAg
ICBpZiggZm91bmRfbG93ZXIgPT0gMCAmJiBpdGVyID49IDIgKSB7CiAgICAgICAgICAgICAgICAg
ICAgIC8qIEFkanVzdCB0aGUgcXVhbnRpemVyJ3MgcmF0ZS9kaXN0b3J0aW9uIHRyYWRlb2ZmIGFu
ZCBkaXNjYXJkIHByZXZpb3VzICJ1cHBlciIgcmVzdWx0cyAqLwotICAgICAgICAgICAgICAgICAg
ICBzRW5jQ3RybC5MYW1iZGEgKj0gMS41ZjsKKyAgICAgICAgICAgICAgICAgICAgc0VuY0N0cmwu
TGFtYmRhID0gc2lsa19tYXhfZmxvYXQoc0VuY0N0cmwuTGFtYmRhKjEuNWYsIDEuNWYpOworICAg
ICAgICAgICAgICAgICAgICAvKiBSZWR1Y2luZyBkaXRoZXJpbmcgY2FuIGhlbHAgdXMgaGl0IHRo
ZSB0YXJnZXQuICovCisgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMucXVh
bnRPZmZzZXRUeXBlID0gMDsKICAgICAgICAgICAgICAgICAgICAgZm91bmRfdXBwZXIgPSAwOwog
ICAgICAgICAgICAgICAgICAgICBnYWluc0lEX3VwcGVyID0gLTE7CiAgICAgICAgICAgICAgICAg
fSBlbHNlIHsKQEAgLTI1MCwxNSArMjg4LDM0IEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1l
X0ZMUCgKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KIAorICAgICAgICAg
ICAgaWYgKCAhZm91bmRfbG93ZXIgJiYgbkJpdHMgPiBtYXhCaXRzICkgeworICAgICAgICAgICAg
ICAgIGludCBqOworICAgICAgICAgICAgICAgIGZvciAoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4u
bmJfc3ViZnI7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAgaW50IHN1bT0wOworICAgICAg
ICAgICAgICAgICAgICBmb3IgKCBqID0gaSpwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7IGogPCAo
aSsxKSpwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7IGorKyApIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIHN1bSArPSBhYnMoIHBzRW5jLT5zQ21uLnB1bHNlc1tqXSApOworICAgICAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGlmICggaXRlciA9PSAwIHx8IChzdW0gPCBi
ZXN0X3N1bVtpXSAmJiAhZ2Fpbl9sb2NrW2ldKSApIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
IGJlc3Rfc3VtW2ldID0gc3VtOworICAgICAgICAgICAgICAgICAgICAgICAgYmVzdF9nYWluX211
bHRbaV0gPSBnYWluTXVsdF9RODsKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIGdhaW5fbG9ja1tpXSA9IDE7CisgICAgICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiggKCBm
b3VuZF9sb3dlciAmIGZvdW5kX3VwcGVyICkgPT0gMCApIHsKICAgICAgICAgICAgICAgICAvKiBB
ZGp1c3QgZ2FpbiBhY2NvcmRpbmcgdG8gaGlnaC1yYXRlIHJhdGUvZGlzdG9ydGlvbiBjdXJ2ZSAq
LwotICAgICAgICAgICAgICAgIG9wdXNfaW50MzIgZ2Fpbl9mYWN0b3JfUTE2OwotICAgICAgICAg
ICAgICAgIGdhaW5fZmFjdG9yX1ExNiA9IHNpbGtfbG9nMmxpbiggc2lsa19MU0hJRlQoIG5CaXRz
IC0gbWF4Qml0cywgNyApIC8gcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoICsgU0lMS19GSVhfQ09O
U1QoIDE2LCA3ICkgKTsKLSAgICAgICAgICAgICAgICBnYWluX2ZhY3Rvcl9RMTYgPSBzaWxrX21p
bl8zMiggZ2Fpbl9mYWN0b3JfUTE2LCBTSUxLX0ZJWF9DT05TVCggMiwgMTYgKSApOwogICAgICAg
ICAgICAgICAgIGlmKCBuQml0cyA+IG1heEJpdHMgKSB7Ci0gICAgICAgICAgICAgICAgICAgIGdh
aW5fZmFjdG9yX1ExNiA9IHNpbGtfbWF4XzMyKCBnYWluX2ZhY3Rvcl9RMTYsIFNJTEtfRklYX0NP
TlNUKCAxLjMsIDE2ICkgKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGdhaW5NdWx0X1E4IDwg
MTYzODQpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGdhaW5NdWx0X1E4ICo9IDI7CisgICAg
ICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBnYWluTXVs
dF9ROCA9IDMyNzY3OworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgICAgICAgICAgb3B1c19pbnQzMiBnYWluX2ZhY3Rvcl9RMTY7Cisg
ICAgICAgICAgICAgICAgICAgIGdhaW5fZmFjdG9yX1ExNiA9IHNpbGtfbG9nMmxpbiggc2lsa19M
U0hJRlQoIG5CaXRzIC0gbWF4Qml0cywgNyApIC8gcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoICsg
U0lMS19GSVhfQ09OU1QoIDE2LCA3ICkgKTsKKyAgICAgICAgICAgICAgICAgICAgZ2Fpbk11bHRf
UTggPSBzaWxrX1NNVUxXQiggZ2Fpbl9mYWN0b3JfUTE2LCBnYWluTXVsdF9ROCApOwogICAgICAg
ICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBnYWluTXVsdF9ROCA9IHNpbGtfU01VTFdCKCBn
YWluX2ZhY3Rvcl9RMTYsIGdhaW5NdWx0X1E4ICk7CiAgICAgICAgICAgICB9IGVsc2UgewogICAg
ICAgICAgICAgICAgIC8qIEFkanVzdCBnYWluIGJ5IGludGVycG9sYXRpbmcgKi8KICAgICAgICAg
ICAgICAgICBnYWluTXVsdF9ROCA9IGdhaW5NdWx0X2xvd2VyICsgKCAoIGdhaW5NdWx0X3VwcGVy
IC0gZ2Fpbk11bHRfbG93ZXIgKSAqICggbWF4Qml0cyAtIG5CaXRzX2xvd2VyICkgKSAvICggbkJp
dHNfdXBwZXIgLSBuQml0c19sb3dlciApOwpAQCAtMjcyLDcgKzMyOSwxMyBAQCBvcHVzX2ludCBz
aWxrX2VuY29kZV9mcmFtZV9GTFAoCiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIGZvcigg
aSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaSsrICkgewotICAgICAgICAgICAgICAg
IHBHYWluc19RMTZbIGkgXSA9IHNpbGtfTFNISUZUX1NBVDMyKCBzaWxrX1NNVUxXQiggc0VuY0N0
cmwuR2FpbnNVbnFfUTE2WyBpIF0sIGdhaW5NdWx0X1E4ICksIDggKTsKKyAgICAgICAgICAgICAg
ICBvcHVzX2ludDE2IHRtcDsKKyAgICAgICAgICAgICAgICBpZiAoIGdhaW5fbG9ja1tpXSApIHsK
KyAgICAgICAgICAgICAgICAgICAgdG1wID0gYmVzdF9nYWluX211bHRbaV07CisgICAgICAgICAg
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgdG1wID0gZ2Fpbk11bHRfUTg7Cisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHBHYWluc19RMTZbIGkgXSA9IHNpbGtf
TFNISUZUX1NBVDMyKCBzaWxrX1NNVUxXQiggc0VuY0N0cmwuR2FpbnNVbnFfUTE2WyBpIF0sIHRt
cCApLCA4ICk7CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIC8qIFF1YW50aXplIGdhaW5z
ICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZW5lcmd5X0ZMUC5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2VuZXJn
eV9GTFAuYwppbmRleCAyNGI4MTc5ZjllM2I0ZjNjODhlOTkyY2Y5ZmQ4MWE0ZDkwMjk0Yzc2Li43
YmM3MTczYzljZjNmNDY2OTllODljZDEzZGIzYjI3N2FkZTY2MDZhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
ZmxvYXQvZW5lcmd5X0ZMUC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9lbmVyZ3lfRkxQLmMKQEAgLTM3LDEz
ICszNywxMiBAQCBkb3VibGUgc2lsa19lbmVyZ3lfRkxQKAogICAgIG9wdXNfaW50ICAgICAgICAg
ICAgZGF0YVNpemUKICkKIHsKLSAgICBvcHVzX2ludCAgaSwgZGF0YVNpemU0OworICAgIG9wdXNf
aW50IGk7CiAgICAgZG91YmxlICAgcmVzdWx0OwogCiAgICAgLyogNHggdW5yb2xsZWQgbG9vcCAq
LwogICAgIHJlc3VsdCA9IDAuMDsKLSAgICBkYXRhU2l6ZTQgPSBkYXRhU2l6ZSAmIDB4RkZGQzsK
LSAgICBmb3IoIGkgPSAwOyBpIDwgZGF0YVNpemU0OyBpICs9IDQgKSB7CisgICAgZm9yKCBpID0g
MDsgaSA8IGRhdGFTaXplIC0gMzsgaSArPSA0ICkgewogICAgICAgICByZXN1bHQgKz0gZGF0YVsg
aSArIDAgXSAqIChkb3VibGUpZGF0YVsgaSArIDAgXSArCiAgICAgICAgICAgICAgICAgICBkYXRh
WyBpICsgMSBdICogKGRvdWJsZSlkYXRhWyBpICsgMSBdICsKICAgICAgICAgICAgICAgICAgIGRh
dGFbIGkgKyAyIF0gKiAoZG91YmxlKWRhdGFbIGkgKyAyIF0gKwpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zs
b2F0L2ZpbmRfTFBDX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfTFBDX0ZMUC5jCmluZGV4IGZjZmUx
YzM2ODFlYjYxZjQyNzM2MzhjYzQyZTFlMTcwMDA0OTFlZGUuLjRkNjM5NjRmZWJiOGIyOTMyZWY5
Y2Y5OGZmZTk2YjM5NmEzN2I4MjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9maW5kX0xQQ19GTFAu
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZmxvYXQvZmluZF9MUENfRkxQLmMKQEAgLTczLDcgKzczLDcgQEAgdm9pZCBz
aWxrX2ZpbmRfTFBDX0ZMUCgKICAgICAgICAgICAgIHNpbGtfaW50ZXJwb2xhdGUoIE5MU0YwX1Ex
NSwgcHNFbmNDLT5wcmV2X05MU0ZxX1ExNSwgTkxTRl9RMTUsIGssIHBzRW5jQy0+cHJlZGljdExQ
Q09yZGVyICk7CiAKICAgICAgICAgICAgIC8qIENvbnZlcnQgdG8gTFBDIGZvciByZXNpZHVhbCBl
bmVyZ3kgZXZhbHVhdGlvbiAqLwotICAgICAgICAgICAgc2lsa19OTFNGMkFfRkxQKCBhX3RtcCwg
TkxTRjBfUTE1LCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciApOworICAgICAgICAgICAgc2lsa19O
TFNGMkFfRkxQKCBhX3RtcCwgTkxTRjBfUTE1LCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciwgcHNF
bmNDLT5hcmNoICk7CiAKICAgICAgICAgICAgIC8qIENhbGN1bGF0ZSByZXNpZHVhbCBlbmVyZ3kg
d2l0aCBMU0YgaW50ZXJwb2xhdGlvbiAqLwogICAgICAgICAgICAgc2lsa19MUENfYW5hbHlzaXNf
ZmlsdGVyX0ZMUCggTFBDX3JlcywgYV90bXAsIHgsIDIgKiBzdWJmcl9sZW5ndGgsIHBzRW5jQy0+
cHJlZGljdExQQ09yZGVyICk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZmluZF9MVFBfRkxQLmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZmxvYXQvZmluZF9MVFBfRkxQLmMKaW5kZXggNzIyOTk5NjAxNDA5ZDNkOTQ2MzkyMjZj
MGExZjIzZjE5YTdlNGQ3NS4uZjk3MDY0OTMwZTg0MTZjZmRmZTk1MmVhZGJiOGJhNzRiMDljOGY0
MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfTFRQX0ZMUC5jCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9m
aW5kX0xUUF9GTFAuYwpAQCAtMzMsMTAwICszMywzMiBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICNpbmNsdWRlICJ0dW5pbmdfcGFyYW1ldGVycy5oIgogCiB2b2lkIHNpbGtfZmluZF9M
VFBfRkxQKAotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgYlsgTUFYX05CX1NV
QkZSICogTFRQX09SREVSIF0sICAgICAgLyogTyAgICBMVFAgY29lZnMgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAg
ICBXTFRQWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyogTyAgICBX
ZWlnaHQgZm9yIExUUCBxdWFudGl6YXRpb24gICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAg
ICAgICAgICAgICAgICAgICpMVFByZWRDb2RHYWluLCAgICAgICAgICAgICAgICAgICAgIC8qIE8g
ICAgTFRQIGNvZGluZyBnYWluICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNv
bnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgcl9scGNbXSwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBMUEMgcmVzaWR1YWwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBsYWdbICBNQVhfTkJf
U1VCRlIgXSwgICAgICAgICAgICAgICAvKiBJICAgIExUUCBsYWdzICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
IFdnaHRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgIC8qIEkgICAgV2VpZ2h0cyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNpbGtfZmxvYXQgICAgICAg
ICAgICAgICAgICAgICAgWFhbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBd
LCAvKiBPICAgIFdlaWdodCBmb3IgTFRQIHF1YW50aXphdGlvbiAgICAgICAgICovCisgICAgc2ls
a19mbG9hdCAgICAgICAgICAgICAgICAgICAgICB4WFsgTUFYX05CX1NVQkZSICogTFRQX09SREVS
IF0sICAgICAvKiBPICAgIFdlaWdodCBmb3IgTFRQIHF1YW50aXphdGlvbiAgICAgICAgICAgICAg
ICAgKi8KKyAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIHJfcHRyW10sICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFBDIHJlc2lkdWFsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
bGFnWyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgLyogSSAgICBMVFAgbGFncyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICBzdWJmcl9sZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IFN1YmZyYW1lIGxlbmd0aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbWVtX29mZnNldCAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc2FtcGxlcyBpbiBMVFAgbWVt
b3J5ICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBu
Yl9zdWJmciAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJm
cmFtZXMgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKLSAgICBvcHVzX2ludCAgIGks
IGs7Ci0gICAgc2lsa19mbG9hdCAqYl9wdHIsIHRlbXAsICpXTFRQX3B0cjsKLSAgICBzaWxrX2Zs
b2F0IExQQ19yZXNfbnJnLCBMUENfTFRQX3Jlc19ucmc7Ci0gICAgc2lsa19mbG9hdCBkWyBNQVhf
TkJfU1VCRlIgXSwgbSwgZywgZGVsdGFfYlsgTFRQX09SREVSIF07Ci0gICAgc2lsa19mbG9hdCB3
WyBNQVhfTkJfU1VCRlIgXSwgbnJnWyBNQVhfTkJfU1VCRlIgXSwgcmVndTsKLSAgICBzaWxrX2Zs
b2F0IFJyWyBMVFBfT1JERVIgXSwgcnJbIE1BWF9OQl9TVUJGUiBdOwotICAgIGNvbnN0IHNpbGtf
ZmxvYXQgKnJfcHRyLCAqbGFnX3B0cjsKKyAgICBvcHVzX2ludCAgIGs7CisgICAgc2lsa19mbG9h
dCAqeFhfcHRyLCAqWFhfcHRyOworICAgIGNvbnN0IHNpbGtfZmxvYXQgKmxhZ19wdHI7CisgICAg
c2lsa19mbG9hdCB4eCwgdGVtcDsKIAotICAgIGJfcHRyICAgID0gYjsKLSAgICBXTFRQX3B0ciA9
IFdMVFA7Ci0gICAgcl9wdHIgICAgPSAmcl9scGNbIG1lbV9vZmZzZXQgXTsKKyAgICB4WF9wdHIg
PSB4WDsKKyAgICBYWF9wdHIgPSBYWDsKICAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsr
KyApIHsKICAgICAgICAgbGFnX3B0ciA9IHJfcHRyIC0gKCBsYWdbIGsgXSArIExUUF9PUkRFUiAv
IDIgKTsKKyAgICAgICAgc2lsa19jb3JyTWF0cml4X0ZMUCggbGFnX3B0ciwgc3ViZnJfbGVuZ3Ro
LCBMVFBfT1JERVIsIFhYX3B0ciApOworICAgICAgICBzaWxrX2NvcnJWZWN0b3JfRkxQKCBsYWdf
cHRyLCByX3B0ciwgc3ViZnJfbGVuZ3RoLCBMVFBfT1JERVIsIHhYX3B0ciApOworICAgICAgICB4
eCA9ICggc2lsa19mbG9hdCApc2lsa19lbmVyZ3lfRkxQKCByX3B0ciwgc3ViZnJfbGVuZ3RoICsg
TFRQX09SREVSICk7CisgICAgICAgIHRlbXAgPSAxLjBmIC8gc2lsa19tYXgoIHh4LCBMVFBfQ09S
Ul9JTlZfTUFYICogMC41ZiAqICggWFhfcHRyWyAwIF0gKyBYWF9wdHJbIDI0IF0gKSArIDEuMGYg
KTsKKyAgICAgICAgc2lsa19zY2FsZV92ZWN0b3JfRkxQKCBYWF9wdHIsIHRlbXAsIExUUF9PUkRF
UiAqIExUUF9PUkRFUiApOworICAgICAgICBzaWxrX3NjYWxlX3ZlY3Rvcl9GTFAoIHhYX3B0ciwg
dGVtcCwgTFRQX09SREVSICk7CiAKLSAgICAgICAgc2lsa19jb3JyTWF0cml4X0ZMUCggbGFnX3B0
ciwgc3ViZnJfbGVuZ3RoLCBMVFBfT1JERVIsIFdMVFBfcHRyICk7Ci0gICAgICAgIHNpbGtfY29y
clZlY3Rvcl9GTFAoIGxhZ19wdHIsIHJfcHRyLCBzdWJmcl9sZW5ndGgsIExUUF9PUkRFUiwgUnIg
KTsKLQotICAgICAgICByclsgayBdID0gKCBzaWxrX2Zsb2F0IClzaWxrX2VuZXJneV9GTFAoIHJf
cHRyLCBzdWJmcl9sZW5ndGggKTsKLSAgICAgICAgcmVndSA9IDEuMGYgKyByclsgayBdICsKLSAg
ICAgICAgICAgIG1hdHJpeF9wdHIoIFdMVFBfcHRyLCAwLCAwLCBMVFBfT1JERVIgKSArCi0gICAg
ICAgICAgICBtYXRyaXhfcHRyKCBXTFRQX3B0ciwgTFRQX09SREVSLTEsIExUUF9PUkRFUi0xLCBM
VFBfT1JERVIgKTsKLSAgICAgICAgcmVndSAqPSBMVFBfREFNUElORyAvIDM7Ci0gICAgICAgIHNp
bGtfcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRkxQKCBXTFRQX3B0ciwgJnJyWyBrIF0sIHJlZ3Us
IExUUF9PUkRFUiApOwotICAgICAgICBzaWxrX3NvbHZlX0xETF9GTFAoIFdMVFBfcHRyLCBMVFBf
T1JERVIsIFJyLCBiX3B0ciApOwotCi0gICAgICAgIC8qIENhbGN1bGF0ZSByZXNpZHVhbCBlbmVy
Z3kgKi8KLSAgICAgICAgbnJnWyBrIF0gPSBzaWxrX3Jlc2lkdWFsX2VuZXJneV9jb3Zhcl9GTFAo
IGJfcHRyLCBXTFRQX3B0ciwgUnIsIHJyWyBrIF0sIExUUF9PUkRFUiApOwotCi0gICAgICAgIHRl
bXAgPSBXZ2h0WyBrIF0gLyAoIG5yZ1sgayBdICogV2dodFsgayBdICsgMC4wMWYgKiBzdWJmcl9s
ZW5ndGggKTsKLSAgICAgICAgc2lsa19zY2FsZV92ZWN0b3JfRkxQKCBXTFRQX3B0ciwgdGVtcCwg
TFRQX09SREVSICogTFRQX09SREVSICk7Ci0gICAgICAgIHdbIGsgXSA9IG1hdHJpeF9wdHIoIFdM
VFBfcHRyLCBMVFBfT1JERVIgLyAyLCBMVFBfT1JERVIgLyAyLCBMVFBfT1JERVIgKTsKLQotICAg
ICAgICByX3B0ciAgICArPSBzdWJmcl9sZW5ndGg7Ci0gICAgICAgIGJfcHRyICAgICs9IExUUF9P
UkRFUjsKLSAgICAgICAgV0xUUF9wdHIgKz0gTFRQX09SREVSICogTFRQX09SREVSOwotICAgIH0K
LQotICAgIC8qIENvbXB1dGUgTFRQIGNvZGluZyBnYWluICovCi0gICAgaWYoIExUUHJlZENvZEdh
aW4gIT0gTlVMTCApIHsKLSAgICAgICAgTFBDX0xUUF9yZXNfbnJnID0gMWUtNmY7Ci0gICAgICAg
IExQQ19yZXNfbnJnICAgICA9IDAuMGY7Ci0gICAgICAgIGZvciggayA9IDA7IGsgPCBuYl9zdWJm
cjsgaysrICkgewotICAgICAgICAgICAgTFBDX3Jlc19ucmcgICAgICs9IHJyWyAgayBdICogV2do
dFsgayBdOwotICAgICAgICAgICAgTFBDX0xUUF9yZXNfbnJnICs9IG5yZ1sgayBdICogV2dodFsg
ayBdOwotICAgICAgICB9Ci0KLSAgICAgICAgc2lsa19hc3NlcnQoIExQQ19MVFBfcmVzX25yZyA+
IDAgKTsKLSAgICAgICAgKkxUUHJlZENvZEdhaW4gPSAzLjBmICogc2lsa19sb2cyKCBMUENfcmVz
X25yZyAvIExQQ19MVFBfcmVzX25yZyApOwotICAgIH0KLQotICAgIC8qIFNtb290aGluZyAqLwot
ICAgIC8qIGQgPSBzdW0oIEIsIDEgKTsgKi8KLSAgICBiX3B0ciA9IGI7Ci0gICAgZm9yKCBrID0g
MDsgayA8IG5iX3N1YmZyOyBrKysgKSB7Ci0gICAgICAgIGRbIGsgXSA9IDA7Ci0gICAgICAgIGZv
ciggaSA9IDA7IGkgPCBMVFBfT1JERVI7IGkrKyApIHsKLSAgICAgICAgICAgIGRbIGsgXSArPSBi
X3B0clsgaSBdOwotICAgICAgICB9Ci0gICAgICAgIGJfcHRyICs9IExUUF9PUkRFUjsKLSAgICB9
Ci0gICAgLyogbSA9ICggdyAqIGQnICkgLyAoIHN1bSggdyApICsgMWUtMyApOyAqLwotICAgIHRl
bXAgPSAxZS0zZjsKLSAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKLSAgICAg
ICAgdGVtcCArPSB3WyBrIF07Ci0gICAgfQotICAgIG0gPSAwOwotICAgIGZvciggayA9IDA7IGsg
PCBuYl9zdWJmcjsgaysrICkgewotICAgICAgICBtICs9IGRbIGsgXSAqIHdbIGsgXTsKLSAgICB9
Ci0gICAgbSA9IG0gLyB0ZW1wOwotCi0gICAgYl9wdHIgPSBiOwotICAgIGZvciggayA9IDA7IGsg
PCBuYl9zdWJmcjsgaysrICkgewotICAgICAgICBnID0gTFRQX1NNT09USElORyAvICggTFRQX1NN
T09USElORyArIHdbIGsgXSApICogKCBtIC0gZFsgayBdICk7Ci0gICAgICAgIHRlbXAgPSAwOwot
ICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSOyBpKysgKSB7Ci0gICAgICAgICAgICBk
ZWx0YV9iWyBpIF0gPSBzaWxrX21heF9mbG9hdCggYl9wdHJbIGkgXSwgMC4xZiApOwotICAgICAg
ICAgICAgdGVtcCArPSBkZWx0YV9iWyBpIF07Ci0gICAgICAgIH0KLSAgICAgICAgdGVtcCA9IGcg
LyB0ZW1wOwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSOyBpKysgKSB7Ci0gICAg
ICAgICAgICBiX3B0clsgaSBdID0gYl9wdHJbIGkgXSArIGRlbHRhX2JbIGkgXSAqIHRlbXA7Ci0g
ICAgICAgIH0KLSAgICAgICAgYl9wdHIgKz0gTFRQX09SREVSOworICAgICAgICByX3B0ciAgKz0g
c3ViZnJfbGVuZ3RoOworICAgICAgICBYWF9wdHIgKz0gTFRQX09SREVSICogTFRQX09SREVSOwor
ICAgICAgICB4WF9wdHIgKz0gTFRQX09SREVSOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9m
bG9hdC9maW5kX3ByZWRfY29lZnNfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZmluZF9wcmVkX2NvZWZzX0ZM
UC5jCmluZGV4IDFhZjRmZTVmMWIyZDE2NzZjYTI2ODJjMDI2ZDk4YzJlNzgxYWU1MGMuLmNiMmU3
NjNiMWRiMDJiYjNmZDBjMTY2ZjZhOTAwZDU3ZmMyM2I4MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9h
dC9maW5kX3ByZWRfY29lZnNfRkxQLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfcHJlZF9jb2Vmc19G
TFAuYwpAQCAtNDEsOCArNDEsOSBAQCB2b2lkIHNpbGtfZmluZF9wcmVkX2NvZWZzX0ZMUCgKICkK
IHsKICAgICBvcHVzX2ludCAgICAgICAgIGk7Ci0gICAgc2lsa19mbG9hdCAgICAgICBXTFRQWyBN
QVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXTsKLSAgICBzaWxrX2Zsb2F0ICAg
ICAgIGludkdhaW5zWyBNQVhfTkJfU1VCRlIgXSwgV2dodFsgTUFYX05CX1NVQkZSIF07CisgICAg
c2lsa19mbG9hdCAgICAgICBYWExUUFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSICogTFRQX09S
REVSIF07CisgICAgc2lsa19mbG9hdCAgICAgICB4WExUUFsgTUFYX05CX1NVQkZSICogTFRQX09S
REVSIF07CisgICAgc2lsa19mbG9hdCAgICAgICBpbnZHYWluc1sgTUFYX05CX1NVQkZSIF07CiAg
ICAgb3B1c19pbnQxNiAgICAgICBOTFNGX1ExNVsgTUFYX0xQQ19PUkRFUiBdOwogICAgIGNvbnN0
IHNpbGtfZmxvYXQgKnhfcHRyOwogICAgIHNpbGtfZmxvYXQgICAgICAgKnhfcHJlX3B0ciwgTFBD
X2luX3ByZVsgTUFYX05CX1NVQkZSICogTUFYX0xQQ19PUkRFUiArIE1BWF9GUkFNRV9MRU5HVEgg
XTsKQEAgLTUyLDcgKzUzLDYgQEAgdm9pZCBzaWxrX2ZpbmRfcHJlZF9jb2Vmc19GTFAoCiAgICAg
Zm9yKCBpID0gMDsgaSA8IHBzRW5jLT5zQ21uLm5iX3N1YmZyOyBpKysgKSB7CiAgICAgICAgIHNp
bGtfYXNzZXJ0KCBwc0VuY0N0cmwtPkdhaW5zWyBpIF0gPiAwLjBmICk7CiAgICAgICAgIGludkdh
aW5zWyBpIF0gPSAxLjBmIC8gcHNFbmNDdHJsLT5HYWluc1sgaSBdOwotICAgICAgICBXZ2h0WyBp
IF0gICAgID0gaW52R2FpbnNbIGkgXSAqIGludkdhaW5zWyBpIF07CiAgICAgfQogCiAgICAgaWYo
IHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9PSBUWVBFX1ZPSUNFRCApIHsKQEAgLTYy
LDEzICs2MiwxMSBAQCB2b2lkIHNpbGtfZmluZF9wcmVkX2NvZWZzX0ZMUCgKICAgICAgICAgc2ls
a19hc3NlcnQoIHBzRW5jLT5zQ21uLmx0cF9tZW1fbGVuZ3RoIC0gcHNFbmMtPnNDbW4ucHJlZGlj
dExQQ09yZGVyID49IHBzRW5jQ3RybC0+cGl0Y2hMWyAwIF0gKyBMVFBfT1JERVIgLyAyICk7CiAK
ICAgICAgICAgLyogTFRQIGFuYWx5c2lzICovCi0gICAgICAgIHNpbGtfZmluZF9MVFBfRkxQKCBw
c0VuY0N0cmwtPkxUUENvZWYsIFdMVFAsICZwc0VuY0N0cmwtPkxUUHJlZENvZEdhaW4sIHJlc19w
aXRjaCwKLSAgICAgICAgICAgIHBzRW5jQ3RybC0+cGl0Y2hMLCBXZ2h0LCBwc0VuYy0+c0Ntbi5z
dWJmcl9sZW5ndGgsIHBzRW5jLT5zQ21uLm5iX3N1YmZyLCBwc0VuYy0+c0Ntbi5sdHBfbWVtX2xl
bmd0aCApOworICAgICAgICBzaWxrX2ZpbmRfTFRQX0ZMUCggWFhMVFAsIHhYTFRQLCByZXNfcGl0
Y2gsIHBzRW5jQ3RybC0+cGl0Y2hMLCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGgsIHBzRW5jLT5z
Q21uLm5iX3N1YmZyICk7CiAKICAgICAgICAgLyogUXVhbnRpemUgTFRQIGdhaW4gcGFyYW1ldGVy
cyAqLwogICAgICAgICBzaWxrX3F1YW50X0xUUF9nYWluc19GTFAoIHBzRW5jQ3RybC0+TFRQQ29l
ZiwgcHNFbmMtPnNDbW4uaW5kaWNlcy5MVFBJbmRleCwgJnBzRW5jLT5zQ21uLmluZGljZXMuUEVS
SW5kZXgsCi0gICAgICAgICAgICAmcHNFbmMtPnNDbW4uc3VtX2xvZ19nYWluX1E3LCBXTFRQLCBw
c0VuYy0+c0Ntbi5tdV9MVFBfUTksIHBzRW5jLT5zQ21uLkxUUFF1YW50TG93Q29tcGxleGl0eSwg
cHNFbmMtPnNDbW4ubmJfc3ViZnIsCi0gICAgICAgICAgICBwc0VuYy0+c0Ntbi5hcmNoICk7Cisg
ICAgICAgICAgICAmcHNFbmMtPnNDbW4uc3VtX2xvZ19nYWluX1E3LCAmcHNFbmNDdHJsLT5MVFBy
ZWRDb2RHYWluLCBYWExUUCwgeFhMVFAsIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCwgcHNFbmMt
PnNDbW4ubmJfc3ViZnIsIHBzRW5jLT5zQ21uLmFyY2ggKTsKIAogICAgICAgICAvKiBDb250cm9s
IExUUCBzY2FsaW5nICovCiAgICAgICAgIHNpbGtfTFRQX3NjYWxlX2N0cmxfRkxQKCBwc0VuYywg
cHNFbmNDdHJsLCBjb25kQ29kaW5nICk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvaW5uZXJfcHJv
ZHVjdF9GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9mbG9hdC9pbm5lcl9wcm9kdWN0X0ZMUC5jCmluZGV4IDAyOWMwMTI5
MTFkYWRkNjczMmZmMTM3M2ZiYTA0YjI5NmUzYWM2OWUuLmNkZDM5ZDI0Y2U5NDE4OTE2ZGIzNDZi
YTkzYWQ1OGNmMGQ5ZmMxNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9pbm5lcl9wcm9kdWN0X0ZM
UC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9mbG9hdC9pbm5lcl9wcm9kdWN0X0ZMUC5jCkBAIC0zOCwxMyArMzgsMTIg
QEAgZG91YmxlIHNpbGtfaW5uZXJfcHJvZHVjdF9GTFAoCiAgICAgb3B1c19pbnQgICAgICAgICAg
ICBkYXRhU2l6ZQogKQogewotICAgIG9wdXNfaW50ICBpLCBkYXRhU2l6ZTQ7CisgICAgb3B1c19p
bnQgaTsKICAgICBkb3VibGUgICByZXN1bHQ7CiAKICAgICAvKiA0eCB1bnJvbGxlZCBsb29wICov
CiAgICAgcmVzdWx0ID0gMC4wOwotICAgIGRhdGFTaXplNCA9IGRhdGFTaXplICYgMHhGRkZDOwot
ICAgIGZvciggaSA9IDA7IGkgPCBkYXRhU2l6ZTQ7IGkgKz0gNCApIHsKKyAgICBmb3IoIGkgPSAw
OyBpIDwgZGF0YVNpemUgLSAzOyBpICs9IDQgKSB7CiAgICAgICAgIHJlc3VsdCArPSBkYXRhMVsg
aSArIDAgXSAqIChkb3VibGUpZGF0YTJbIGkgKyAwIF0gKwogICAgICAgICAgICAgICAgICAgZGF0
YTFbIGkgKyAxIF0gKiAoZG91YmxlKWRhdGEyWyBpICsgMSBdICsKICAgICAgICAgICAgICAgICAg
IGRhdGExWyBpICsgMiBdICogKGRvdWJsZSlkYXRhMlsgaSArIDIgXSArCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZmxvYXQvazJhX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2syYV9GTFAuYwppbmRleCAxMmFmNGU3NjY5
N2E4Njk4MzFiNzNkZTUzM2UzMTZhODg1OWI4MTYzLi4xNDQ4MDA4ZGJiZWQxMzk3OTEwODkxMzJi
MGUzOTFiMmU3ZTA3ZjZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvazJhX0ZMUC5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9mbG9hdC9rMmFfRkxQLmMKQEAgLTM5LDE1ICszOSwxNiBAQCB2b2lkIHNpbGtfazJhX0ZMUCgK
ICkKIHsKICAgICBvcHVzX2ludCAgIGssIG47Ci0gICAgc2lsa19mbG9hdCBBdG1wWyBTSUxLX01B
WF9PUkRFUl9MUEMgXTsKKyAgICBzaWxrX2Zsb2F0IHJjaywgdG1wMSwgdG1wMjsKIAogICAgIGZv
ciggayA9IDA7IGsgPCBvcmRlcjsgaysrICkgewotICAgICAgICBmb3IoIG4gPSAwOyBuIDwgazsg
bisrICkgewotICAgICAgICAgICAgQXRtcFsgbiBdID0gQVsgbiBdOworICAgICAgICByY2sgPSBy
Y1sgayBdOworICAgICAgICBmb3IoIG4gPSAwOyBuIDwgKGsgKyAxKSA+PiAxOyBuKysgKSB7Cisg
ICAgICAgICAgICB0bXAxID0gQVsgbiBdOworICAgICAgICAgICAgdG1wMiA9IEFbIGsgLSBuIC0g
MSBdOworICAgICAgICAgICAgQVsgbiBdICAgICAgICAgPSB0bXAxICsgdG1wMiAqIHJjazsKKyAg
ICAgICAgICAgIEFbIGsgLSBuIC0gMSBdID0gdG1wMiArIHRtcDEgKiByY2s7CiAgICAgICAgIH0K
LSAgICAgICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyApIHsKLSAgICAgICAgICAgIEFbIG4gXSAr
PSBBdG1wWyBrIC0gbiAtIDEgXSAqIHJjWyBrIF07Ci0gICAgICAgIH0KLSAgICAgICAgQVsgayBd
ID0gLXJjWyBrIF07CisgICAgICAgIEFbIGsgXSA9IC1yY2s7CiAgICAgfQogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2Zsb2F0L2xldmluc29uZHVyYmluX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2xldmluc29uZHVy
YmluX0ZMUC5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMGJhNjA2OTgxMmZkMzJi
OTJjYmVhNjQ5ZDliYjdlMGI1NWE0ZjAyLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9sZXZpbnNvbmR1cmJpbl9GTFAuYworKysgL2Rldi9u
dWxsCkBAIC0xLDgxICswLDAgQEAKLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotQ29weXJpZ2h0IChjKSAyMDA2
LTIwMTEsIFNreXBlIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi1SZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLW1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwotYXJlIG1ldDoKLS0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAotdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLS0gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLW5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
LWRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0tIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVU
RiBvciBJRVRGIFRydXN0LCBub3IgdGhlCi1uYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMs
IG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQotcHJvZHVjdHMgZGVyaXZlZCBmcm9t
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCi1wZXJtaXNzaW9u
LgotVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5E
IENPTlRSSUJVVE9SUyAiQVMgSVMiCi1BTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi1JTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RQotQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIg
T1IgQ09OVFJJQlVUT1JTIEJFCi1MSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi1DT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCi1JTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTgotQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLUFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCi1Q
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotCi0jaWZkZWYgSEFW
RV9DT05GSUdfSAotI2luY2x1ZGUgImNvbmZpZy5oIgotI2VuZGlmCi0KLSNpbmNsdWRlICJTaWdQ
cm9jX0ZMUC5oIgotCi0vKiBTb2x2ZSB0aGUgbm9ybWFsIGVxdWF0aW9ucyB1c2luZyB0aGUgTGV2
aW5zb24tRHVyYmluIHJlY3Vyc2lvbiAqLwotc2lsa19mbG9hdCBzaWxrX2xldmluc29uZHVyYmlu
X0ZMUCggICAgICAgICAvKiBPICAgIHByZWRpY3Rpb24gZXJyb3IgZW5lcmd5ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICBBW10s
ICAgICAgICAgICAgICAgIC8qIE8gICAgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgICAgW29yZGVy
XSAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgIGNv
cnJbXSwgICAgICAgICAgICAgLyogSSAgICBpbnB1dCBhdXRvLWNvcnJlbGF0aW9ucyBbb3JkZXIg
KyAxXSAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
b3JkZXIgICAgICAgICAgICAgICAvKiBJICAgIHByZWRpY3Rpb24gb3JkZXIgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICBp
LCBtSGFsZiwgbTsKLSAgICBzaWxrX2Zsb2F0IG1pbl9ucmcsIG5yZywgdCwga20sIEF0bXAxLCBB
dG1wMjsKLQotICAgIG1pbl9ucmcgPSAxZS0xMmYgKiBjb3JyWyAwIF0gKyAxZS05ZjsKLSAgICBu
cmcgPSBjb3JyWyAwIF07Ci0gICAgbnJnID0gc2lsa19tYXhfZmxvYXQobWluX25yZywgbnJnKTsK
LSAgICBBWyAwIF0gPSBjb3JyWyAxIF0gLyBucmc7Ci0gICAgbnJnIC09IEFbIDAgXSAqIGNvcnJb
IDEgXTsKLSAgICBucmcgPSBzaWxrX21heF9mbG9hdChtaW5fbnJnLCBucmcpOwotCi0gICAgZm9y
KCBtID0gMTsgbSA8IG9yZGVyOyBtKysgKQotICAgIHsKLSAgICAgICAgdCA9IGNvcnJbIG0gKyAx
IF07Ci0gICAgICAgIGZvciggaSA9IDA7IGkgPCBtOyBpKysgKSB7Ci0gICAgICAgICAgICB0IC09
IEFbIGkgXSAqIGNvcnJbIG0gLSBpIF07Ci0gICAgICAgIH0KLQotICAgICAgICAvKiByZWZsZWN0
aW9uIGNvZWZmaWNpZW50ICovCi0gICAgICAgIGttID0gdCAvIG5yZzsKLQotICAgICAgICAvKiBy
ZXNpZHVhbCBlbmVyZ3kgKi8KLSAgICAgICAgbnJnIC09IGttICogdDsKLSAgICAgICAgbnJnID0g
c2lsa19tYXhfZmxvYXQobWluX25yZywgbnJnKTsKLQotICAgICAgICBtSGFsZiA9IG0gPj4gMTsK
LSAgICAgICAgZm9yKCBpID0gMDsgaSA8IG1IYWxmOyBpKysgKSB7Ci0gICAgICAgICAgICBBdG1w
MSA9IEFbIGkgXTsKLSAgICAgICAgICAgIEF0bXAyID0gQVsgbSAtIGkgLSAxIF07Ci0gICAgICAg
ICAgICBBWyBtIC0gaSAtIDEgXSAtPSBrbSAqIEF0bXAxOwotICAgICAgICAgICAgQVsgaSBdICAg
ICAgICAgLT0ga20gKiBBdG1wMjsKLSAgICAgICAgfQotICAgICAgICBpZiggbSAmIDEgKSB7Ci0g
ICAgICAgICAgICBBWyBtSGFsZiBdICAgICAtPSBrbSAqIEFbIG1IYWxmIF07Ci0gICAgICAgIH0K
LSAgICAgICAgQVsgbSBdID0ga207Ci0gICAgfQotCi0gICAgLyogcmV0dXJuIHRoZSByZXNpZHVh
bCBlbmVyZ3kgKi8KLSAgICByZXR1cm4gbnJnOwotfQotCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQv
bWFpbl9GTFAuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9mbG9hdC9tYWluX0ZMUC5oCmluZGV4IGU1YTc1OTcyZTVmOGMwMzBh
MTA3NmM2NWQzMzZhN2QwMjg3NjNjNTQuLjVkYzBjY2Y0YTQxM2IzYTJkM2VjNzkxMTRmYWEzMzRj
NDJiNzY1M2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9tYWluX0ZMUC5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9h
dC9tYWluX0ZMUC5oCkBAIC01Niw3ICs1Niw4IEBAIHZvaWQgc2lsa19IUF92YXJpYWJsZV9jdXRv
ZmYoCiAKIC8qIEVuY29kZXIgbWFpbiBmdW5jdGlvbiAqLwogdm9pZCBzaWxrX2VuY29kZV9kb19W
QURfRkxQKAotICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GTFAgICAgICAgICAgKnBzRW5jICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIHN0YXRlIEZMUCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZMUCAgICAgICAg
ICAqcHNFbmMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIEVuY29kZXIgc3Rh
dGUgRkxQICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAg
ICAgICAgICAgICAgICAgIGFjdGl2aXR5ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgRGVjaXNpb24gb2YgT3B1cyB2b2ljZSBhY3Rpdml0eSBkZXRlY3RvciAgICAqLwogKTsKIAog
LyogRW5jb2RlciBtYWluIGZ1bmN0aW9uICovCkBAIC03OSwyMiArODAsMTEgQEAgb3B1c19pbnQg
c2lsa19pbml0X2VuY29kZXIoCiBvcHVzX2ludCBzaWxrX2NvbnRyb2xfZW5jb2RlcigKICAgICBz
aWxrX2VuY29kZXJfc3RhdGVfRkxQICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIGVuY29kZXIgc3RhdGUgRkxQICAgICAg
ICAgICAqLwogICAgIHNpbGtfRW5jQ29udHJvbFN0cnVjdCAgICAgICAgICAgKmVuY0NvbnRyb2ws
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb250cm9sIHN0cnVjdHVyZSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICAg
ICBUYXJnZXRSYXRlX2JwcywgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFRhcmdldCBtYXgg
Yml0cmF0ZSAoYnBzKSAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgIGFsbG93X2J3X3N3aXRjaCwgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgRmxhZyB0byBhbGxvdyBzd2l0Y2hpbmcgYXVkaW8gYmFuZHdpZHRoICAgICAqLwogICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgY2hhbm5lbE5iLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBDaGFubmVsIG51bWJlciAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBmb3JjZV9mc19rSHoK
ICk7CiAKLS8qKioqKioqKioqKioqKioqLwotLyogUHJlZmlsdGVyaW5nICovCi0vKioqKioqKioq
KioqKioqKi8KLXZvaWQgc2lsa19wcmVmaWx0ZXJfRkxQKAotICAgIHNpbGtfZW5jb2Rlcl9zdGF0
ZV9GTFAgICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9P
ICBFbmNvZGVyIHN0YXRlIEZMUCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgc2lsa19lbmNvZGVyX2NvbnRyb2xfRkxQICAqcHNFbmNDdHJsLCAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIEVuY29kZXIgY29udHJvbCBGTFAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIHh3W10sICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgV2VpZ2h0ZWQgc2lnbmFsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAg
eFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTcGVlY2ggc2lnbmFs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pOwotCiAvKioqKioqKioqKioqKioq
KioqKioqKioqKiovCiAvKiBOb2lzZSBzaGFwaW5nIGFuYWx5c2lzICovCiAvKioqKioqKioqKioq
KioqKioqKioqKioqKiovCkBAIC0xNTMsMTUgKzE0MywxMiBAQCB2b2lkIHNpbGtfZmluZF9MUENf
RkxQKAogCiAvKiBMVFAgYW5hbHlzaXMgKi8KIHZvaWQgc2lsa19maW5kX0xUUF9GTFAoCi0gICAg
c2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICBiWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JE
RVIgXSwgICAgICAvKiBPICAgIExUUCBjb2VmcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIFdMVFBbIE1BWF9O
Ql9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBPICAgIFdlaWdodCBmb3IgTFRQ
IHF1YW50aXphdGlvbiAgICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAg
ICAgKkxUUHJlZENvZEdhaW4sICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBMVFAgY29kaW5n
IGdhaW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9h
dCAgICAgICAgICAgICAgICByX2xwY1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIExQQyByZXNpZHVhbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBz
aWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIFhYWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JE
RVIgKiBMVFBfT1JERVIgXSwgLyogTyAgICBXZWlnaHQgZm9yIExUUCBxdWFudGl6YXRpb24gICAg
ICAgICAqLworICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgeFhbIE1BWF9OQl9T
VUJGUiAqIExUUF9PUkRFUiBdLCAgICAgLyogTyAgICBXZWlnaHQgZm9yIExUUCBxdWFudGl6YXRp
b24gICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAg
ICByX3B0cltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExQQyByZXNpZHVh
bCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgIGxhZ1sgIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgIC8qIEkg
ICAgTFRQIGxhZ3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNv
bnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgV2dodFsgTUFYX05CX1NVQkZSIF0sICAgICAg
ICAgICAgICAgLyogSSAgICBXZWlnaHRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBzdWJmcl9sZW5ndGgs
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFN1YmZyYW1lIGxlbmd0aCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAg
IG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHN1
YmZyYW1lcyAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgbWVtX29mZnNldCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBOdW1iZXIgb2Ygc2FtcGxlcyBpbiBMVFAgbWVtb3J5ICAgICAgICAgICAgICovCisgICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBuYl9zdWJmciAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICk7CiAKIHZvaWQgc2lsa19MVFBfYW5hbHlzaXNfZmlsdGVyX0ZMUCgKQEAgLTE5OCwx
NCArMTg1LDE1IEBAIHZvaWQgc2lsa19MUENfYW5hbHlzaXNfZmlsdGVyX0ZMUCgKIAogLyogTFRQ
IHRhcCBxdWFudGl6ZXIgKi8KIHZvaWQgc2lsa19xdWFudF9MVFBfZ2FpbnNfRkxQKAotICAgIHNp
bGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgQlsgTUFYX05CX1NVQkZSICogTFRQX09SREVS
IF0sICAgICAgLyogSS9PICAoVW4tKXF1YW50aXplZCBMVFAgZ2FpbnMgICAgICAgICAgICAgICAg
ICAgICovCisgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICBCWyBNQVhfTkJfU1VC
RlIgKiBMVFBfT1JERVIgXSwgICAgICAvKiBPICAgIFF1YW50aXplZCBMVFAgZ2FpbnMgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgICAg
IGNia19pbmRleFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgIC8qIE8gICAgQ29kZWJvb2sgaW5k
ZXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAg
ICAgICAgICAgICAgICAgKnBlcmlvZGljaXR5X2luZGV4LCAgICAgICAgICAgICAgICAgLyogTyAg
ICBQZXJpb2RpY2l0eSBpbmRleCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1
c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAqc3VtX2xvZ19nYWluX1E3LCAgICAgICAgICAg
ICAgICAgICAvKiBJL08gIEN1bXVsYXRpdmUgbWF4IHByZWRpY3Rpb24gZ2FpbiAgKi8KLSAgICBj
b25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIFdbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRF
UiAqIExUUF9PUkRFUiBdLCAvKiBJICAgIEVycm9yIHdlaWdodHMgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbXVfUTEwLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBNdSB2YWx1ZSAoUi9EIHRyYWRlb2ZmKSAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICBsb3dDb21wbGV4aXR5LCAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZsYWcgZm9yIGxv
dyBjb21wbGV4aXR5ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNp
bGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgKnByZWRfZ2Fpbl9kQiwgICAgICAgICAgICAg
ICAgICAgICAgLyogTyAgICBMVFAgcHJlZGljdGlvbiBnYWluICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICBYWFsgTUFYX05CX1NV
QkZSICogTFRQX09SREVSICogTFRQX09SREVSIF0sIC8qIEkgICAgQ29ycmVsYXRpb24gbWF0cml4
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
IHhYWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgIC8qIEkgICAgQ29ycmVsYXRpb24g
dmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgc3ViZnJfbGVuLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBOdW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3ViZnJhbWUgICAgICAgICAgICAgICovCisgICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIE51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2ggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAg
ICAgICAgICAgICAgICAgICAqLwogKTsKIApAQCAtMjQ1LDIyICsyMzMsNiBAQCB2b2lkIHNpbGtf
Y29yclZlY3Rvcl9GTFAoCiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICAqWHQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFgnKnQgY29ycmVsYXRpb24g
dmVjdG9yIFtvcmRlcl0gICAgICAgICAgICAgKi8KICk7CiAKLS8qIEFkZCBub2lzZSB0byBtYXRy
aXggZGlhZ29uYWwgKi8KLXZvaWQgc2lsa19yZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GTFAoCi0g
ICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICAqWFgsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJL08gIENvcnJlbGF0aW9uIG1hdHJpY2VzICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgICp4eCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgQ29ycmVsYXRpb24gdmFsdWVzICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAg
ICAgICAgbm9pc2UsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOb2lzZSBl
bmVyZ3kgdG8gYWRkICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19p
bnQgICAgICAgICAgICAgICAgICBEICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIERpbWVuc2lvbiBvZiBYWCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSk7
Ci0KLS8qIEZ1bmN0aW9uIHRvIHNvbHZlIGxpbmVhciBlcXVhdGlvbiBBeCA9IGIsIHdoZXJlIEEg
aXMgYW4gTXhNIHN5bW1ldHJpYyBtYXRyaXggKi8KLXZvaWQgc2lsa19zb2x2ZV9MRExfRkxQKAot
ICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgKkEsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSS9PICBTeW1tZXRyaWMgc3F1YXJlIG1hdHJpeCwgb3V0OiByZWcu
ICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBNLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNpemUgb2YgbWF0cml4ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAg
ICAgICAgICpiLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUG9pbnRl
ciB0byBiIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNpbGtfZmxvYXQg
ICAgICAgICAgICAgICAgICAgICAgKnggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogTyAgICBQb2ludGVyIHRvIHggc29sdXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICovCi0p
OwotCiAvKiBBcHBseSBzaW5lIHdpbmRvdyB0byBzaWduYWwgdmVjdG9yLiAgKi8KIC8qIFdpbmRv
dyB0eXBlczogICAgICAgICAgICAgICAgICAgICAgICAqLwogLyogIDEgLT4gc2luZSB3aW5kb3cg
ZnJvbSAwIHRvIHBpLzIgICAgICovCkBAIC0yODUsNyArMjU3LDggQEAgdm9pZCBzaWxrX0EyTkxT
Rl9GTFAoCiB2b2lkIHNpbGtfTkxTRjJBX0ZMUCgKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAg
ICAgICAgICAgICpwQVIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgTFBD
IGNvZWZmaWNpZW50cyBbIExQQ19vcmRlciBdICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9w
dXNfaW50MTYgICAgICAgICAgICAgICAgKk5MU0ZfUTE1LCAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBOTFNGIHZlY3RvciAgICAgIFsgTFBDX29yZGVyIF0gICAgICAgICAgICAgICov
Ci0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBMUENfb3JkZXIgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIExQQyBvcmRlciAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIExQQ19v
cmRlciwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFBDIG9yZGVyICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGludCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSdW4t
dGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCiAvKiBMaW1p
dCwgc3RhYmlsaXplLCBhbmQgcXVhbnRpemUgTkxTRnMgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9h
dC9ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9ub2lzZV9zaGFwZV9hbmFs
eXNpc19GTFAuYwppbmRleCA2NWY2ZWE1ODcwNTM4MTljZGIxNDFjMDRlYjdkY2Y5MGU4ZGVkNzU0
Li5jYjNkOGE1MGI3Y2I3NzA5NWJmYzJiZjg3MzU5YTViNzFjZmQzZGM1IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZmxvYXQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQLmMKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L25vaXNl
X3NoYXBlX2FuYWx5c2lzX0ZMUC5jCkBAIC01NSwyNSArNTUsMjEgQEAgc3RhdGljIE9QVVNfSU5M
SU5FIHNpbGtfZmxvYXQgd2FycGVkX2dhaW4oCiAvKiBDb252ZXJ0IHdhcnBlZCBmaWx0ZXIgY29l
ZmZpY2llbnRzIHRvIG1vbmljIHBzZXVkby13YXJwZWQgY29lZmZpY2llbnRzIGFuZCBsaW1pdCBt
YXhpbXVtICAgICAqLwogLyogYW1wbGl0dWRlIG9mIG1vbmljIHdhcnBlZCBjb2VmZmljaWVudHMg
YnkgdXNpbmcgYmFuZHdpZHRoIGV4cGFuc2lvbiBvbiB0aGUgdHJ1ZSBjb2VmZmljaWVudHMgKi8K
IHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHdhcnBlZF90cnVlMm1vbmljX2NvZWZzKAotICAgIHNp
bGtfZmxvYXQgICAgICAgICAgICpjb2Vmc19zeW4sCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAg
KmNvZWZzX2FuYSwKKyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAqY29lZnMsCiAgICAgc2lsa19m
bG9hdCAgICAgICAgICAgbGFtYmRhLAogICAgIHNpbGtfZmxvYXQgICAgICAgICAgIGxpbWl0LAog
ICAgIG9wdXNfaW50ICAgICAgICAgICAgIG9yZGVyCiApIHsKICAgICBvcHVzX2ludCAgIGksIGl0
ZXIsIGluZCA9IDA7Ci0gICAgc2lsa19mbG9hdCB0bXAsIG1heGFicywgY2hpcnAsIGdhaW5fc3lu
LCBnYWluX2FuYTsKKyAgICBzaWxrX2Zsb2F0IHRtcCwgbWF4YWJzLCBjaGlycCwgZ2FpbjsKIAog
ICAgIC8qIENvbnZlcnQgdG8gbW9uaWMgY29lZmZpY2llbnRzICovCiAgICAgZm9yKCBpID0gb3Jk
ZXIgLSAxOyBpID4gMDsgaS0tICkgewotICAgICAgICBjb2Vmc19zeW5bIGkgLSAxIF0gLT0gbGFt
YmRhICogY29lZnNfc3luWyBpIF07Ci0gICAgICAgIGNvZWZzX2FuYVsgaSAtIDEgXSAtPSBsYW1i
ZGEgKiBjb2Vmc19hbmFbIGkgXTsKKyAgICAgICAgY29lZnNbIGkgLSAxIF0gLT0gbGFtYmRhICog
Y29lZnNbIGkgXTsKICAgICB9Ci0gICAgZ2Fpbl9zeW4gPSAoIDEuMGYgLSBsYW1iZGEgKiBsYW1i
ZGEgKSAvICggMS4wZiArIGxhbWJkYSAqIGNvZWZzX3N5blsgMCBdICk7Ci0gICAgZ2Fpbl9hbmEg
PSAoIDEuMGYgLSBsYW1iZGEgKiBsYW1iZGEgKSAvICggMS4wZiArIGxhbWJkYSAqIGNvZWZzX2Fu
YVsgMCBdICk7CisgICAgZ2FpbiA9ICggMS4wZiAtIGxhbWJkYSAqIGxhbWJkYSApIC8gKCAxLjBm
ICsgbGFtYmRhICogY29lZnNbIDAgXSApOwogICAgIGZvciggaSA9IDA7IGkgPCBvcmRlcjsgaSsr
ICkgewotICAgICAgICBjb2Vmc19zeW5bIGkgXSAqPSBnYWluX3N5bjsKLSAgICAgICAgY29lZnNf
YW5hWyBpIF0gKj0gZ2Fpbl9hbmE7CisgICAgICAgIGNvZWZzWyBpIF0gKj0gZ2FpbjsKICAgICB9
CiAKICAgICAvKiBMaW1pdCAqLwpAQCAtODEsNyArNzcsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUg
dm9pZCB3YXJwZWRfdHJ1ZTJtb25pY19jb2VmcygKICAgICAgICAgLyogRmluZCBtYXhpbXVtIGFi
c29sdXRlIHZhbHVlICovCiAgICAgICAgIG1heGFicyA9IC0xLjBmOwogICAgICAgICBmb3IoIGkg
PSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAgICAgIHRtcCA9IHNpbGtfbWF4KCBzaWxr
X2Fic19mbG9hdCggY29lZnNfc3luWyBpIF0gKSwgc2lsa19hYnNfZmxvYXQoIGNvZWZzX2FuYVsg
aSBdICkgKTsKKyAgICAgICAgICAgIHRtcCA9IHNpbGtfYWJzX2Zsb2F0KCBjb2Vmc1sgaSBdICk7
CiAgICAgICAgICAgICBpZiggdG1wID4gbWF4YWJzICkgewogICAgICAgICAgICAgICAgIG1heGFi
cyA9IHRtcDsKICAgICAgICAgICAgICAgICBpbmQgPSBpOwpAQCAtOTQsMzYgKzkwLDU5IEBAIHN0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHdhcnBlZF90cnVlMm1vbmljX2NvZWZzKAogCiAgICAgICAg
IC8qIENvbnZlcnQgYmFjayB0byB0cnVlIHdhcnBlZCBjb2VmZmljaWVudHMgKi8KICAgICAgICAg
Zm9yKCBpID0gMTsgaSA8IG9yZGVyOyBpKysgKSB7Ci0gICAgICAgICAgICBjb2Vmc19zeW5bIGkg
LSAxIF0gKz0gbGFtYmRhICogY29lZnNfc3luWyBpIF07Ci0gICAgICAgICAgICBjb2Vmc19hbmFb
IGkgLSAxIF0gKz0gbGFtYmRhICogY29lZnNfYW5hWyBpIF07CisgICAgICAgICAgICBjb2Vmc1sg
aSAtIDEgXSArPSBsYW1iZGEgKiBjb2Vmc1sgaSBdOwogICAgICAgICB9Ci0gICAgICAgIGdhaW5f
c3luID0gMS4wZiAvIGdhaW5fc3luOwotICAgICAgICBnYWluX2FuYSA9IDEuMGYgLyBnYWluX2Fu
YTsKKyAgICAgICAgZ2FpbiA9IDEuMGYgLyBnYWluOwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwg
b3JkZXI7IGkrKyApIHsKLSAgICAgICAgICAgIGNvZWZzX3N5blsgaSBdICo9IGdhaW5fc3luOwot
ICAgICAgICAgICAgY29lZnNfYW5hWyBpIF0gKj0gZ2Fpbl9hbmE7CisgICAgICAgICAgICBjb2Vm
c1sgaSBdICo9IGdhaW47CiAgICAgICAgIH0KIAogICAgICAgICAvKiBBcHBseSBiYW5kd2lkdGgg
ZXhwYW5zaW9uICovCiAgICAgICAgIGNoaXJwID0gMC45OWYgLSAoIDAuOGYgKyAwLjFmICogaXRl
ciApICogKCBtYXhhYnMgLSBsaW1pdCApIC8gKCBtYXhhYnMgKiAoIGluZCArIDEgKSApOwotICAg
ICAgICBzaWxrX2J3ZXhwYW5kZXJfRkxQKCBjb2Vmc19zeW4sIG9yZGVyLCBjaGlycCApOwotICAg
ICAgICBzaWxrX2J3ZXhwYW5kZXJfRkxQKCBjb2Vmc19hbmEsIG9yZGVyLCBjaGlycCApOworICAg
ICAgICBzaWxrX2J3ZXhwYW5kZXJfRkxQKCBjb2Vmcywgb3JkZXIsIGNoaXJwICk7CiAKICAgICAg
ICAgLyogQ29udmVydCB0byBtb25pYyB3YXJwZWQgY29lZmZpY2llbnRzICovCiAgICAgICAgIGZv
ciggaSA9IG9yZGVyIC0gMTsgaSA+IDA7IGktLSApIHsKLSAgICAgICAgICAgIGNvZWZzX3N5blsg
aSAtIDEgXSAtPSBsYW1iZGEgKiBjb2Vmc19zeW5bIGkgXTsKLSAgICAgICAgICAgIGNvZWZzX2Fu
YVsgaSAtIDEgXSAtPSBsYW1iZGEgKiBjb2Vmc19hbmFbIGkgXTsKKyAgICAgICAgICAgIGNvZWZz
WyBpIC0gMSBdIC09IGxhbWJkYSAqIGNvZWZzWyBpIF07CiAgICAgICAgIH0KLSAgICAgICAgZ2Fp
bl9zeW4gPSAoIDEuMGYgLSBsYW1iZGEgKiBsYW1iZGEgKSAvICggMS4wZiArIGxhbWJkYSAqIGNv
ZWZzX3N5blsgMCBdICk7Ci0gICAgICAgIGdhaW5fYW5hID0gKCAxLjBmIC0gbGFtYmRhICogbGFt
YmRhICkgLyAoIDEuMGYgKyBsYW1iZGEgKiBjb2Vmc19hbmFbIDAgXSApOworICAgICAgICBnYWlu
ID0gKCAxLjBmIC0gbGFtYmRhICogbGFtYmRhICkgLyAoIDEuMGYgKyBsYW1iZGEgKiBjb2Vmc1sg
MCBdICk7CiAgICAgICAgIGZvciggaSA9IDA7IGkgPCBvcmRlcjsgaSsrICkgewotICAgICAgICAg
ICAgY29lZnNfc3luWyBpIF0gKj0gZ2Fpbl9zeW47Ci0gICAgICAgICAgICBjb2Vmc19hbmFbIGkg
XSAqPSBnYWluX2FuYTsKKyAgICAgICAgICAgIGNvZWZzWyBpIF0gKj0gZ2FpbjsKICAgICAgICAg
fQogICAgIH0KICAgICBzaWxrX2Fzc2VydCggMCApOwogfQogCitzdGF0aWMgT1BVU19JTkxJTkUg
dm9pZCBsaW1pdF9jb2VmcygKKyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAqY29lZnMsCisgICAg
c2lsa19mbG9hdCAgICAgICAgICAgbGltaXQsCisgICAgb3B1c19pbnQgICAgICAgICAgICAgb3Jk
ZXIKKykgeworICAgIG9wdXNfaW50ICAgaSwgaXRlciwgaW5kID0gMDsKKyAgICBzaWxrX2Zsb2F0
IHRtcCwgbWF4YWJzLCBjaGlycDsKKworICAgIGZvciggaXRlciA9IDA7IGl0ZXIgPCAxMDsgaXRl
cisrICkgeworICAgICAgICAvKiBGaW5kIG1heGltdW0gYWJzb2x1dGUgdmFsdWUgKi8KKyAgICAg
ICAgbWF4YWJzID0gLTEuMGY7CisgICAgICAgIGZvciggaSA9IDA7IGkgPCBvcmRlcjsgaSsrICkg
eworICAgICAgICAgICAgdG1wID0gc2lsa19hYnNfZmxvYXQoIGNvZWZzWyBpIF0gKTsKKyAgICAg
ICAgICAgIGlmKCB0bXAgPiBtYXhhYnMgKSB7CisgICAgICAgICAgICAgICAgbWF4YWJzID0gdG1w
OworICAgICAgICAgICAgICAgIGluZCA9IGk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAg
ICAgICAgaWYoIG1heGFicyA8PSBsaW1pdCApIHsKKyAgICAgICAgICAgIC8qIENvZWZmaWNpZW50
cyBhcmUgd2l0aGluIHJhbmdlIC0gZG9uZSAqLworICAgICAgICAgICAgcmV0dXJuOworICAgICAg
ICB9CisKKyAgICAgICAgLyogQXBwbHkgYmFuZHdpZHRoIGV4cGFuc2lvbiAqLworICAgICAgICBj
aGlycCA9IDAuOTlmIC0gKCAwLjhmICsgMC4xZiAqIGl0ZXIgKSAqICggbWF4YWJzIC0gbGltaXQg
KSAvICggbWF4YWJzICogKCBpbmQgKyAxICkgKTsKKyAgICAgICAgc2lsa19id2V4cGFuZGVyX0ZM
UCggY29lZnMsIG9yZGVyLCBjaGlycCApOworICAgIH0KKyAgICBzaWxrX2Fzc2VydCggMCApOwor
fQorCiAvKiBDb21wdXRlIG5vaXNlIHNoYXBpbmcgY29lZmZpY2llbnRzIGFuZCBpbml0aWFsIGdh
aW4gdmFsdWVzICovCiB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQKAogICAgIHNp
bGtfZW5jb2Rlcl9zdGF0ZV9GTFAgICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSS9PICBFbmNvZGVyIHN0YXRlIEZMUCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCkBAIC0xMzMsMTIgKzE1MiwxMyBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlz
aXNfRkxQKAogKQogewogICAgIHNpbGtfc2hhcGVfc3RhdGVfRkxQICpwc1NoYXBlU3QgPSAmcHNF
bmMtPnNTaGFwZTsKLSAgICBvcHVzX2ludCAgICAgaywgblNhbXBsZXM7Ci0gICAgc2lsa19mbG9h
dCAgIFNOUl9hZGpfZEIsIEhhcm1Cb29zdCwgSGFybVNoYXBlR2FpbiwgVGlsdDsKLSAgICBzaWxr
X2Zsb2F0ICAgbnJnLCBwcmVfbnJnLCBsb2dfZW5lcmd5LCBsb2dfZW5lcmd5X3ByZXYsIGVuZXJn
eV92YXJpYXRpb247Ci0gICAgc2lsa19mbG9hdCAgIGRlbHRhLCBCV0V4cDEsIEJXRXhwMiwgZ2Fp
bl9tdWx0LCBnYWluX2FkZCwgc3RyZW5ndGgsIGIsIHdhcnBpbmc7CisgICAgb3B1c19pbnQgICAg
IGssIG5TYW1wbGVzLCBuU2VnczsKKyAgICBzaWxrX2Zsb2F0ICAgU05SX2Fkal9kQiwgSGFybVNo
YXBlR2FpbiwgVGlsdDsKKyAgICBzaWxrX2Zsb2F0ICAgbnJnLCBsb2dfZW5lcmd5LCBsb2dfZW5l
cmd5X3ByZXYsIGVuZXJneV92YXJpYXRpb247CisgICAgc2lsa19mbG9hdCAgIEJXRXhwLCBnYWlu
X211bHQsIGdhaW5fYWRkLCBzdHJlbmd0aCwgYiwgd2FycGluZzsKICAgICBzaWxrX2Zsb2F0ICAg
eF93aW5kb3dlZFsgU0hBUEVfTFBDX1dJTl9NQVggXTsKICAgICBzaWxrX2Zsb2F0ICAgYXV0b19j
b3JyWyBNQVhfU0hBUEVfTFBDX09SREVSICsgMSBdOworICAgIHNpbGtfZmxvYXQgICByY1sgTUFY
X1NIQVBFX0xQQ19PUkRFUiArIDEgXTsKICAgICBjb25zdCBzaWxrX2Zsb2F0ICp4X3B0ciwgKnBp
dGNoX3Jlc19wdHI7CiAKICAgICAvKiBQb2ludCB0byBzdGFydCBvZiBmaXJzdCBMUEMgYW5hbHlz
aXMgYmxvY2sgKi8KQEAgLTE3NiwxNCArMTk2LDE0IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9h
bmFseXNpc19GTFAoCiAgICAgaWYoIHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9PSBU
WVBFX1ZPSUNFRCApIHsKICAgICAgICAgLyogSW5pdGlhbGx5IHNldCB0byAwOyBtYXkgYmUgb3Zl
cnJ1bGVkIGluIHByb2Nlc3NfZ2FpbnMoLi4pICovCiAgICAgICAgIHBzRW5jLT5zQ21uLmluZGlj
ZXMucXVhbnRPZmZzZXRUeXBlID0gMDsKLSAgICAgICAgcHNFbmNDdHJsLT5zcGFyc2VuZXNzID0g
MC4wZjsKICAgICB9IGVsc2UgewogICAgICAgICAvKiBTcGFyc2VuZXNzIG1lYXN1cmUsIGJhc2Vk
IG9uIHJlbGF0aXZlIGZsdWN0dWF0aW9ucyBvZiBlbmVyZ3kgcGVyIDIgbWlsbGlzZWNvbmRzICov
CiAgICAgICAgIG5TYW1wbGVzID0gMiAqIHBzRW5jLT5zQ21uLmZzX2tIejsKICAgICAgICAgZW5l
cmd5X3ZhcmlhdGlvbiA9IDAuMGY7CiAgICAgICAgIGxvZ19lbmVyZ3lfcHJldiAgPSAwLjBmOwog
ICAgICAgICBwaXRjaF9yZXNfcHRyID0gcGl0Y2hfcmVzOwotICAgICAgICBmb3IoIGsgPSAwOyBr
IDwgc2lsa19TTVVMQkIoIFNVQl9GUkFNRV9MRU5HVEhfTVMsIHBzRW5jLT5zQ21uLm5iX3N1YmZy
ICkgLyAyOyBrKysgKSB7CisgICAgICAgIG5TZWdzID0gc2lsa19TTVVMQkIoIFNVQl9GUkFNRV9M
RU5HVEhfTVMsIHBzRW5jLT5zQ21uLm5iX3N1YmZyICkgLyAyOworICAgICAgICBmb3IoIGsgPSAw
OyBrIDwgblNlZ3M7IGsrKyApIHsKICAgICAgICAgICAgIG5yZyA9ICggc2lsa19mbG9hdCApblNh
bXBsZXMgKyAoIHNpbGtfZmxvYXQgKXNpbGtfZW5lcmd5X0ZMUCggcGl0Y2hfcmVzX3B0ciwgblNh
bXBsZXMgKTsKICAgICAgICAgICAgIGxvZ19lbmVyZ3kgPSBzaWxrX2xvZzIoIG5yZyApOwogICAg
ICAgICAgICAgaWYoIGsgPiAwICkgewpAQCAtMTkyLDE3ICsyMTIsMTMgQEAgdm9pZCBzaWxrX25v
aXNlX3NoYXBlX2FuYWx5c2lzX0ZMUCgKICAgICAgICAgICAgIGxvZ19lbmVyZ3lfcHJldiA9IGxv
Z19lbmVyZ3k7CiAgICAgICAgICAgICBwaXRjaF9yZXNfcHRyICs9IG5TYW1wbGVzOwogICAgICAg
ICB9Ci0gICAgICAgIHBzRW5jQ3RybC0+c3BhcnNlbmVzcyA9IHNpbGtfc2lnbW9pZCggMC40ZiAq
ICggZW5lcmd5X3ZhcmlhdGlvbiAtIDUuMGYgKSApOwogCiAgICAgICAgIC8qIFNldCBxdWFudGl6
YXRpb24gb2Zmc2V0IGRlcGVuZGluZyBvbiBzcGFyc2VuZXNzIG1lYXN1cmUgKi8KLSAgICAgICAg
aWYoIHBzRW5jQ3RybC0+c3BhcnNlbmVzcyA+IFNQQVJTRU5FU1NfVEhSRVNIT0xEX1FOVF9PRkZT
RVQgKSB7CisgICAgICAgIGlmKCBlbmVyZ3lfdmFyaWF0aW9uID4gRU5FUkdZX1ZBUklBVElPTl9U
SFJFU0hPTERfUU5UX09GRlNFVCAqIChuU2Vncy0xKSApIHsKICAgICAgICAgICAgIHBzRW5jLT5z
Q21uLmluZGljZXMucXVhbnRPZmZzZXRUeXBlID0gMDsKICAgICAgICAgfSBlbHNlIHsKICAgICAg
ICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMucXVhbnRPZmZzZXRUeXBlID0gMTsKICAgICAgICAg
fQotCi0gICAgICAgIC8qIEluY3JlYXNlIGNvZGluZyBTTlIgZm9yIHNwYXJzZSBzaWduYWxzICov
Ci0gICAgICAgIFNOUl9hZGpfZEIgKz0gU1BBUlNFX1NOUl9JTkNSX2RCICogKCBwc0VuY0N0cmwt
PnNwYXJzZW5lc3MgLSAwLjVmICk7CiAgICAgfQogCiAgICAgLyoqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKiovCkBAIC0yMTAsMTkgKzIyNiwxMCBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVf
YW5hbHlzaXNfRkxQKAogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAg
IC8qIE1vcmUgQldFIGZvciBzaWduYWxzIHdpdGggaGlnaCBwcmVkaWN0aW9uIGdhaW4gKi8KICAg
ICBzdHJlbmd0aCA9IEZJTkRfUElUQ0hfV0hJVEVfTk9JU0VfRlJBQ1RJT04gKiBwc0VuY0N0cmwt
PnByZWRHYWluOyAgICAgICAgICAgLyogYmV0d2VlbiAwLjAgYW5kIDEuMCAqLwotICAgIEJXRXhw
MSA9IEJXRXhwMiA9IEJBTkRXSURUSF9FWFBBTlNJT04gLyAoIDEuMGYgKyBzdHJlbmd0aCAqIHN0
cmVuZ3RoICk7Ci0gICAgZGVsdGEgID0gTE9XX1JBVEVfQkFORFdJRFRIX0VYUEFOU0lPTl9ERUxU
QSAqICggMS4wZiAtIDAuNzVmICogcHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eSApOwotICAgIEJX
RXhwMSAtPSBkZWx0YTsKLSAgICBCV0V4cDIgKz0gZGVsdGE7Ci0gICAgLyogQldFeHAxIHdpbGwg
YmUgYXBwbGllZCBhZnRlciBCV0V4cDIsIHNvIG1ha2UgaXQgcmVsYXRpdmUgKi8KLSAgICBCV0V4
cDEgLz0gQldFeHAyOwotCi0gICAgaWYoIHBzRW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsK
LSAgICAgICAgLyogU2xpZ2h0bHkgbW9yZSB3YXJwaW5nIGluIGFuYWx5c2lzIHdpbGwgbW92ZSBx
dWFudGl6YXRpb24gbm9pc2UgdXAgaW4gZnJlcXVlbmN5LCB3aGVyZSBpdCdzIGJldHRlciBtYXNr
ZWQgKi8KLSAgICAgICAgd2FycGluZyA9IChzaWxrX2Zsb2F0KXBzRW5jLT5zQ21uLndhcnBpbmdf
UTE2IC8gNjU1MzYuMGYgKyAwLjAxZiAqIHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxpdHk7Ci0gICAg
fSBlbHNlIHsKLSAgICAgICAgd2FycGluZyA9IDAuMGY7Ci0gICAgfQorICAgIEJXRXhwID0gQkFO
RFdJRFRIX0VYUEFOU0lPTiAvICggMS4wZiArIHN0cmVuZ3RoICogc3RyZW5ndGggKTsKKworICAg
IC8qIFNsaWdodGx5IG1vcmUgd2FycGluZyBpbiBhbmFseXNpcyB3aWxsIG1vdmUgcXVhbnRpemF0
aW9uIG5vaXNlIHVwIGluIGZyZXF1ZW5jeSwgd2hlcmUgaXQncyBiZXR0ZXIgbWFza2VkICovCisg
ICAgd2FycGluZyA9IChzaWxrX2Zsb2F0KXBzRW5jLT5zQ21uLndhcnBpbmdfUTE2IC8gNjU1MzYu
MGYgKyAwLjAxZiAqIHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxpdHk7CiAKICAgICAvKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgLyogQ29tcHV0ZSBub2lz
ZSBzaGFwaW5nIEFSIGNvZWZzIGFuZCBnYWlucyAqLwpAQCAtMjUyLDM3ICsyNTksMjggQEAgdm9p
ZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUCgKICAgICAgICAgfQogCiAgICAgICAgIC8q
IEFkZCB3aGl0ZSBub2lzZSwgYXMgYSBmcmFjdGlvbiBvZiBlbmVyZ3kgKi8KLSAgICAgICAgYXV0
b19jb3JyWyAwIF0gKz0gYXV0b19jb3JyWyAwIF0gKiBTSEFQRV9XSElURV9OT0lTRV9GUkFDVElP
TjsKKyAgICAgICAgYXV0b19jb3JyWyAwIF0gKz0gYXV0b19jb3JyWyAwIF0gKiBTSEFQRV9XSElU
RV9OT0lTRV9GUkFDVElPTiArIDEuMGY7CiAKICAgICAgICAgLyogQ29udmVydCBjb3JyZWxhdGlv
bnMgdG8gcHJlZGljdGlvbiBjb2VmZmljaWVudHMsIGFuZCBjb21wdXRlIHJlc2lkdWFsIGVuZXJn
eSAqLwotICAgICAgICBucmcgPSBzaWxrX2xldmluc29uZHVyYmluX0ZMUCggJnBzRW5jQ3RybC0+
QVIyWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCBhdXRvX2NvcnIsIHBzRW5jLT5zQ21uLnNo
YXBpbmdMUENPcmRlciApOworICAgICAgICBucmcgPSBzaWxrX3NjaHVyX0ZMUCggcmMsIGF1dG9f
Y29yciwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAgICAgIHNpbGtfazJhX0ZM
UCggJnBzRW5jQ3RybC0+QVJbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sIHJjLCBwc0VuYy0+
c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKICAgICAgICAgcHNFbmNDdHJsLT5HYWluc1sgayBdID0g
KCBzaWxrX2Zsb2F0IClzcXJ0KCBucmcgKTsKIAogICAgICAgICBpZiggcHNFbmMtPnNDbW4ud2Fy
cGluZ19RMTYgPiAwICkgewogICAgICAgICAgICAgLyogQWRqdXN0IGdhaW4gZm9yIHdhcnBpbmcg
Ki8KLSAgICAgICAgICAgIHBzRW5jQ3RybC0+R2FpbnNbIGsgXSAqPSB3YXJwZWRfZ2FpbiggJnBz
RW5jQ3RybC0+QVIyWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCB3YXJwaW5nLCBwc0VuYy0+
c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAgICAgIHBzRW5jQ3RybC0+R2FpbnNbIGsg
XSAqPSB3YXJwZWRfZ2FpbiggJnBzRW5jQ3RybC0+QVJbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVS
IF0sIHdhcnBpbmcsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwogICAgICAgICB9CiAK
ICAgICAgICAgLyogQmFuZHdpZHRoIGV4cGFuc2lvbiBmb3Igc3ludGhlc2lzIGZpbHRlciBzaGFw
aW5nICovCi0gICAgICAgIHNpbGtfYndleHBhbmRlcl9GTFAoICZwc0VuY0N0cmwtPkFSMlsgayAq
IE1BWF9TSEFQRV9MUENfT1JERVIgXSwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBCV0V4
cDIgKTsKLQotICAgICAgICAvKiBDb21wdXRlIG5vaXNlIHNoYXBpbmcgZmlsdGVyIGNvZWZmaWNp
ZW50cyAqLwotICAgICAgICBzaWxrX21lbWNweSgKLSAgICAgICAgICAgICZwc0VuY0N0cmwtPkFS
MVsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwKLSAgICAgICAgICAgICZwc0VuY0N0cmwtPkFS
MlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwKLSAgICAgICAgICAgIHBzRW5jLT5zQ21uLnNo
YXBpbmdMUENPcmRlciAqIHNpemVvZiggc2lsa19mbG9hdCApICk7CisgICAgICAgIHNpbGtfYndl
eHBhbmRlcl9GTFAoICZwc0VuY0N0cmwtPkFSWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCBw
c0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIEJXRXhwICk7CiAKLSAgICAgICAgLyogQmFuZHdp
ZHRoIGV4cGFuc2lvbiBmb3IgYW5hbHlzaXMgZmlsdGVyIHNoYXBpbmcgKi8KLSAgICAgICAgc2ls
a19id2V4cGFuZGVyX0ZMUCggJnBzRW5jQ3RybC0+QVIxWyBrICogTUFYX1NIQVBFX0xQQ19PUkRF
UiBdLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIEJXRXhwMSApOwotCi0gICAgICAgIC8q
IFJhdGlvIG9mIHByZWRpY3Rpb24gZ2FpbnMsIGluIGVuZXJneSBkb21haW4gKi8KLSAgICAgICAg
cHJlX25yZyA9IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX0ZMUCggJnBzRW5jQ3RybC0+QVIy
WyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIg
KTsKLSAgICAgICAgbnJnICAgICA9IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX0ZMUCggJnBz
RW5jQ3RybC0+QVIxWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCBwc0VuYy0+c0Ntbi5zaGFw
aW5nTFBDT3JkZXIgKTsKLSAgICAgICAgcHNFbmNDdHJsLT5HYWluc1ByZVsgayBdID0gMS4wZiAt
IDAuN2YgKiAoIDEuMGYgLSBwcmVfbnJnIC8gbnJnICk7Ci0KLSAgICAgICAgLyogQ29udmVydCB0
byBtb25pYyB3YXJwZWQgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgYW5kIGxpbWl0IGFic29sdXRl
IHZhbHVlcyAqLwotICAgICAgICB3YXJwZWRfdHJ1ZTJtb25pY19jb2VmcyggJnBzRW5jQ3RybC0+
QVIyWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAmcHNFbmNDdHJsLT5BUjFbIGsgKiBNQVhf
U0hBUEVfTFBDX09SREVSIF0sCi0gICAgICAgICAgICB3YXJwaW5nLCAzLjk5OWYsIHBzRW5jLT5z
Q21uLnNoYXBpbmdMUENPcmRlciApOworICAgICAgICBpZiggcHNFbmMtPnNDbW4ud2FycGluZ19R
MTYgPiAwICkgeworICAgICAgICAgICAgLyogQ29udmVydCB0byBtb25pYyB3YXJwZWQgcHJlZGlj
dGlvbiBjb2VmZmljaWVudHMgYW5kIGxpbWl0IGFic29sdXRlIHZhbHVlcyAqLworICAgICAgICAg
ICAgd2FycGVkX3RydWUybW9uaWNfY29lZnMoICZwc0VuY0N0cmwtPkFSWyBrICogTUFYX1NIQVBF
X0xQQ19PUkRFUiBdLCB3YXJwaW5nLCAzLjk5OWYsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRl
ciApOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgLyogTGltaXQgYWJzb2x1dGUgdmFs
dWVzICovCisgICAgICAgICAgICBsaW1pdF9jb2VmcyggJnBzRW5jQ3RybC0+QVJbIGsgKiBNQVhf
U0hBUEVfTFBDX09SREVSIF0sIDMuOTk5ZiwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7
CisgICAgICAgIH0KICAgICB9CiAKICAgICAvKioqKioqKioqKioqKioqKiovCkBAIC0yOTYsMTEg
KzI5NCw2IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAoCiAgICAgICAgIHBz
RW5jQ3RybC0+R2FpbnNbIGsgXSArPSBnYWluX2FkZDsKICAgICB9CiAKLSAgICBnYWluX211bHQg
PSAxLjBmICsgSU5QVVRfVElMVCArIHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxpdHkgKiBISUdIX1JB
VEVfSU5QVVRfVElMVDsKLSAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7
IGsrKyApIHsKLSAgICAgICAgcHNFbmNDdHJsLT5HYWluc1ByZVsgayBdICo9IGdhaW5fbXVsdDsK
LSAgICB9Ci0KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwogICAgIC8qIENvbnRyb2wgbG93LWZyZXF1ZW5jeSBzaGFwaW5nIGFuZCBub2lzZSB0
aWx0ICovCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KQEAgLTMzMSwxMiArMzI0LDYgQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lz
X0ZMUCgKICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBIQVJNT05J
QyBTSEFQSU5HIENPTlRST0wgKi8KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8K
LSAgICAvKiBDb250cm9sIGJvb3N0aW5nIG9mIGhhcm1vbmljIGZyZXF1ZW5jaWVzICovCi0gICAg
SGFybUJvb3N0ID0gTE9XX1JBVEVfSEFSTU9OSUNfQk9PU1QgKiAoIDEuMGYgLSBwc0VuY0N0cmwt
PmNvZGluZ19xdWFsaXR5ICkgKiBwc0VuYy0+TFRQQ29ycjsKLQotICAgIC8qIE1vcmUgaGFybW9u
aWMgYm9vc3QgZm9yIG5vaXN5IGlucHV0IHNpZ25hbHMgKi8KLSAgICBIYXJtQm9vc3QgKz0gTE9X
X0lOUFVUX1FVQUxJVFlfSEFSTU9OSUNfQk9PU1QgKiAoIDEuMGYgLSBwc0VuY0N0cmwtPmlucHV0
X3F1YWxpdHkgKTsKLQogICAgIGlmKCBVU0VfSEFSTV9TSEFQSU5HICYmIHBzRW5jLT5zQ21uLmlu
ZGljZXMuc2lnbmFsVHlwZSA9PSBUWVBFX1ZPSUNFRCApIHsKICAgICAgICAgLyogSGFybW9uaWMg
bm9pc2Ugc2hhcGluZyAqLwogICAgICAgICBIYXJtU2hhcGVHYWluID0gSEFSTU9OSUNfU0hBUElO
RzsKQEAgLTM1NSw4ICszNDIsNiBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQ
KAogICAgIC8qIFNtb290aCBvdmVyIHN1YmZyYW1lcyAqLwogICAgIC8qKioqKioqKioqKioqKioq
KioqKioqKioqLwogICAgIGZvciggayA9IDA7IGsgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaysr
ICkgewotICAgICAgICBwc1NoYXBlU3QtPkhhcm1Cb29zdF9zbXRoICAgICArPSBTVUJGUl9TTVRI
X0NPRUYgKiAoIEhhcm1Cb29zdCAtIHBzU2hhcGVTdC0+SGFybUJvb3N0X3NtdGggKTsKLSAgICAg
ICAgcHNFbmNDdHJsLT5IYXJtQm9vc3RbIGsgXSAgICAgID0gcHNTaGFwZVN0LT5IYXJtQm9vc3Rf
c210aDsKICAgICAgICAgcHNTaGFwZVN0LT5IYXJtU2hhcGVHYWluX3NtdGggKz0gU1VCRlJfU01U
SF9DT0VGICogKCBIYXJtU2hhcGVHYWluIC0gcHNTaGFwZVN0LT5IYXJtU2hhcGVHYWluX3NtdGgg
KTsKICAgICAgICAgcHNFbmNDdHJsLT5IYXJtU2hhcGVHYWluWyBrIF0gID0gcHNTaGFwZVN0LT5I
YXJtU2hhcGVHYWluX3NtdGg7CiAgICAgICAgIHBzU2hhcGVTdC0+VGlsdF9zbXRoICAgICAgICAg
ICs9IFNVQkZSX1NNVEhfQ09FRiAqICggVGlsdCAtIHBzU2hhcGVTdC0+VGlsdF9zbXRoICk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZmxvYXQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9h
dC9waXRjaF9hbmFseXNpc19jb3JlX0ZMUC5jCmluZGV4IGQwZTYzN2EyOWRjOTVkNWU2M2FkZTE0
ZDk4ZjllM2Y0Y2U3ZTBiZDguLmIzNzE2OTM3OGIxZjUyNTY2MGZjY2VmNjVmOGEyZmI0MzFlY2M4
MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9waXRjaF9hbmFseXNpc19jb3JlX0ZMUC5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9mbG9hdC9waXRjaF9hbmFseXNpc19jb3JlX0ZMUC5jCkBAIC0xNTksNyArMTU5LDcgQEAg
b3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19jb3JlX0ZMUCggICAgICAvKiBPICAgIFZvaWNp
bmcgZXN0aW1hdGU6IDAgdm9pY2VkLAogCiAgICAgLyogTG93LXBhc3MgZmlsdGVyICovCiAgICAg
Zm9yKCBpID0gZnJhbWVfbGVuZ3RoXzRrSHogLSAxOyBpID4gMDsgaS0tICkgewotICAgICAgICBm
cmFtZV80a0h6WyBpIF0gKz0gZnJhbWVfNGtIelsgaSAtIDEgXTsKKyAgICAgICAgZnJhbWVfNGtI
elsgaSBdID0gc2lsa19BRERfU0FUMTYoIGZyYW1lXzRrSHpbIGkgXSwgZnJhbWVfNGtIelsgaSAt
IDEgXSApOwogICAgIH0KIAogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9mbG9hdC9wcmVmaWx0ZXJfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcHJlZmlsdGVyX0ZMUC5jCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4YmMzMmZiNDEwNDBlZjdiNGYwZjEyMjQ2ODli
YjBiMDQ0OGVjMDUwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9mbG9hdC9wcmVmaWx0ZXJfRkxQLmMKKysrIC9kZXYvbnVsbApAQCAtMSwyMDYgKzAs
MCBAQAotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqCi1Db3B5cmlnaHQgKGMpIDIwMDYtMjAxMSwgU2t5cGUgTGlt
aXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLVJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi1hcmUgbWV0
OgotLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodCBub3RpY2UsCi10aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLS0g
TmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3Qs
IG5vciB0aGUKLW5hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlCi1wcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KLXBlcm1pc3Npb24uCi1USElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJB
UyBJUyIKLUFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLUlNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi1BUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMg
QkUKLUxJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKLUNPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi1TVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLUlOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCi1DT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKQotQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKLVBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgotKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCi0KLSNpZmRlZiBIQVZFX0NPTkZJR19ICi0jaW5j
bHVkZSAiY29uZmlnLmgiCi0jZW5kaWYKLQotI2luY2x1ZGUgIm1haW5fRkxQLmgiCi0jaW5jbHVk
ZSAidHVuaW5nX3BhcmFtZXRlcnMuaCIKLQotLyoKLSogUHJlZmlsdGVyIGZvciBmaW5kaW5nIFF1
YW50aXplciBpbnB1dCBzaWduYWwKLSovCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX3By
ZWZpbHRfRkxQKAotICAgIHNpbGtfcHJlZmlsdGVyX3N0YXRlX0ZMUCAgICAqUCwgICAgICAgICAg
ICAgICAgIC8qIEkvTyBzdGF0ZSAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBz
dF9yZXNbXSwgICAgICAgICAgIC8qIEkgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
ICAgeHdbXSwgICAgICAgICAgICAgICAvKiBPICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAg
ICAgICAgICpIYXJtU2hhcGVGSVIsICAgICAgLyogSSAqLwotICAgIHNpbGtfZmxvYXQgICAgICAg
ICAgICAgICAgICBUaWx0LCAgICAgICAgICAgICAgIC8qIEkgKi8KLSAgICBzaWxrX2Zsb2F0ICAg
ICAgICAgICAgICAgICAgTEZfTUFfc2hwLCAgICAgICAgICAvKiBJICovCi0gICAgc2lsa19mbG9h
dCAgICAgICAgICAgICAgICAgIExGX0FSX3NocCwgICAgICAgICAgLyogSSAqLwotICAgIG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgICBsYWcsICAgICAgICAgICAgICAgIC8qIEkgKi8KLSAgICBv
cHVzX2ludCAgICAgICAgICAgICAgICAgICAgbGVuZ3RoICAgICAgICAgICAgICAvKiBJICovCi0p
OwotCi1zdGF0aWMgdm9pZCBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZMUCgKLSAg
ICAgICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICBzdGF0ZVtdLCAgICAgICAgICAgIC8q
IEkvTyAgU3RhdGUgW29yZGVyICsgMV0gICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgICAg
ICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgcmVzW10sICAgICAgICAgICAgICAvKiBPICAg
IFJlc2lkdWFsIHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNp
bGtfZmxvYXQgICAgICAgICAgICAgICAgIGNvZWZbXSwgICAgICAgICAgICAgLyogSSAgICBDb2Vm
ZmljaWVudHMgW29yZGVyXSAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zs
b2F0ICAgICAgICAgICAgICAgICBpbnB1dFtdLCAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgc2ln
bmFsIFtsZW5ndGhdICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAg
ICAgICAgICAgICAgICAgbGFtYmRhLCAgICAgICAgICAgICAvKiBJICAgIFdhcnBpbmcgZmFjdG9y
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgLyogSSAgICBMZW5ndGggb2YgaW5wdXQgc2ln
bmFsICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAg
ICAgICBvcmRlciAgICAgICAgICAgICAgIC8qIEkgICAgRmlsdGVyIG9yZGVyIChldmVuKSAgICAg
ICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICAgIG4sIGk7Ci0gICAgc2ls
a19mbG9hdCAgIGFjYywgdG1wMSwgdG1wMjsKLQotICAgIC8qIE9yZGVyIG11c3QgYmUgZXZlbiAq
LwotICAgIHNpbGtfYXNzZXJ0KCAoIG9yZGVyICYgMSApID09IDAgKTsKLQotICAgIGZvciggbiA9
IDA7IG4gPCBsZW5ndGg7IG4rKyApIHsKLSAgICAgICAgLyogT3V0cHV0IG9mIGxvd3Bhc3Mgc2Vj
dGlvbiAqLwotICAgICAgICB0bXAyID0gc3RhdGVbIDAgXSArIGxhbWJkYSAqIHN0YXRlWyAxIF07
Ci0gICAgICAgIHN0YXRlWyAwIF0gPSBpbnB1dFsgbiBdOwotICAgICAgICAvKiBPdXRwdXQgb2Yg
YWxscGFzcyBzZWN0aW9uICovCi0gICAgICAgIHRtcDEgPSBzdGF0ZVsgMSBdICsgbGFtYmRhICog
KCBzdGF0ZVsgMiBdIC0gdG1wMiApOwotICAgICAgICBzdGF0ZVsgMSBdID0gdG1wMjsKLSAgICAg
ICAgYWNjID0gY29lZlsgMCBdICogdG1wMjsKLSAgICAgICAgLyogTG9vcCBvdmVyIGFsbHBhc3Mg
c2VjdGlvbnMgKi8KLSAgICAgICAgZm9yKCBpID0gMjsgaSA8IG9yZGVyOyBpICs9IDIgKSB7Ci0g
ICAgICAgICAgICAvKiBPdXRwdXQgb2YgYWxscGFzcyBzZWN0aW9uICovCi0gICAgICAgICAgICB0
bXAyID0gc3RhdGVbIGkgXSArIGxhbWJkYSAqICggc3RhdGVbIGkgKyAxIF0gLSB0bXAxICk7Ci0g
ICAgICAgICAgICBzdGF0ZVsgaSBdID0gdG1wMTsKLSAgICAgICAgICAgIGFjYyArPSBjb2VmWyBp
IC0gMSBdICogdG1wMTsKLSAgICAgICAgICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNlY3Rpb24g
Ki8KLSAgICAgICAgICAgIHRtcDEgPSBzdGF0ZVsgaSArIDEgXSArIGxhbWJkYSAqICggc3RhdGVb
IGkgKyAyIF0gLSB0bXAyICk7Ci0gICAgICAgICAgICBzdGF0ZVsgaSArIDEgXSA9IHRtcDI7Ci0g
ICAgICAgICAgICBhY2MgKz0gY29lZlsgaSBdICogdG1wMjsKLSAgICAgICAgfQotICAgICAgICBz
dGF0ZVsgb3JkZXIgXSA9IHRtcDE7Ci0gICAgICAgIGFjYyArPSBjb2VmWyBvcmRlciAtIDEgXSAq
IHRtcDE7Ci0gICAgICAgIHJlc1sgbiBdID0gaW5wdXRbIG4gXSAtIGFjYzsKLSAgICB9Ci19Ci0K
LS8qCi0qIHNpbGtfcHJlZmlsdGVyLiBNYWluIHByZWZpbHRlciBmdW5jdGlvbgotKi8KLXZvaWQg
c2lsa19wcmVmaWx0ZXJfRkxQKAotICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GTFAgICAgICAgICAg
KnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIHN0YXRl
IEZMUCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19lbmNvZGVy
X2NvbnRyb2xfRkxQICAqcHNFbmNDdHJsLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IEVuY29kZXIgY29udHJvbCBGTFAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxr
X2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIHh3W10sICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIE8gICAgV2VpZ2h0ZWQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgeFtdICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTcGVlY2ggc2lnbmFsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAgc2lsa19wcmVmaWx0ZXJfc3RhdGVfRkxQICpQ
ID0gJnBzRW5jLT5zUHJlZmlsdDsKLSAgICBvcHVzX2ludCAgIGosIGssIGxhZzsKLSAgICBzaWxr
X2Zsb2F0IEhhcm1TaGFwZUdhaW4sIFRpbHQsIExGX01BX3NocCwgTEZfQVJfc2hwOwotICAgIHNp
bGtfZmxvYXQgQlsgMiBdOwotICAgIGNvbnN0IHNpbGtfZmxvYXQgKkFSMV9zaHA7Ci0gICAgY29u
c3Qgc2lsa19mbG9hdCAqcHg7Ci0gICAgc2lsa19mbG9hdCAqcHh3OwotICAgIHNpbGtfZmxvYXQg
SGFybVNoYXBlRklSWyAzIF07Ci0gICAgc2lsa19mbG9hdCBzdF9yZXNbIE1BWF9TVUJfRlJBTUVf
TEVOR1RIICsgTUFYX0xQQ19PUkRFUiBdOwotCi0gICAgLyogU2V0IHVwIHBvaW50ZXJzICovCi0g
ICAgcHggID0geDsKLSAgICBweHcgPSB4dzsKLSAgICBsYWcgPSBQLT5sYWdQcmV2OwotICAgIGZv
ciggayA9IDA7IGsgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaysrICkgewotICAgICAgICAvKiBV
cGRhdGUgVmFyaWFibGVzIHRoYXQgY2hhbmdlIHBlciBzdWIgZnJhbWUgKi8KLSAgICAgICAgaWYo
IHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9PSBUWVBFX1ZPSUNFRCApIHsKLSAgICAg
ICAgICAgIGxhZyA9IHBzRW5jQ3RybC0+cGl0Y2hMWyBrIF07Ci0gICAgICAgIH0KLQotICAgICAg
ICAvKiBOb2lzZSBzaGFwZSBwYXJhbWV0ZXJzICovCi0gICAgICAgIEhhcm1TaGFwZUdhaW4gPSBw
c0VuY0N0cmwtPkhhcm1TaGFwZUdhaW5bIGsgXSAqICggMS4wZiAtIHBzRW5jQ3RybC0+SGFybUJv
b3N0WyBrIF0gKTsKLSAgICAgICAgSGFybVNoYXBlRklSWyAwIF0gPSAwLjI1ZiAgICAgICAgICAg
ICAgICogSGFybVNoYXBlR2FpbjsKLSAgICAgICAgSGFybVNoYXBlRklSWyAxIF0gPSAzMjc2Ny4w
ZiAvIDY1NTM2LjBmICogSGFybVNoYXBlR2FpbjsKLSAgICAgICAgSGFybVNoYXBlRklSWyAyIF0g
PSAwLjI1ZiAgICAgICAgICAgICAgICogSGFybVNoYXBlR2FpbjsKLSAgICAgICAgVGlsdCAgICAg
ID0gIHBzRW5jQ3RybC0+VGlsdFsgayBdOwotICAgICAgICBMRl9NQV9zaHAgPSAgcHNFbmNDdHJs
LT5MRl9NQV9zaHBbIGsgXTsKLSAgICAgICAgTEZfQVJfc2hwID0gIHBzRW5jQ3RybC0+TEZfQVJf
c2hwWyBrIF07Ci0gICAgICAgIEFSMV9zaHAgICA9ICZwc0VuY0N0cmwtPkFSMVsgayAqIE1BWF9T
SEFQRV9MUENfT1JERVIgXTsKLQotICAgICAgICAvKiBTaG9ydCB0ZXJtIEZJUiBmaWx0ZXJpbmcg
Ki8KLSAgICAgICAgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GTFAoIFAtPnNBUl9z
aHAsIHN0X3JlcywgQVIxX3NocCwgcHgsCi0gICAgICAgICAgICAoc2lsa19mbG9hdClwc0VuYy0+
c0Ntbi53YXJwaW5nX1ExNiAvIDY1NTM2LjBmLCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGgsIHBz
RW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwotCi0gICAgICAgIC8qIFJlZHVjZSAobWFpbmx5
KSBsb3cgZnJlcXVlbmNpZXMgZHVyaW5nIGhhcm1vbmljIGVtcGhhc2lzICovCi0gICAgICAgIEJb
IDAgXSA9ICBwc0VuY0N0cmwtPkdhaW5zUHJlWyBrIF07Ci0gICAgICAgIEJbIDEgXSA9IC1wc0Vu
Y0N0cmwtPkdhaW5zUHJlWyBrIF0gKgotICAgICAgICAgICAgKCBwc0VuY0N0cmwtPkhhcm1Cb29z
dFsgayBdICogSGFybVNoYXBlR2FpbiArIElOUFVUX1RJTFQgKyBwc0VuY0N0cmwtPmNvZGluZ19x
dWFsaXR5ICogSElHSF9SQVRFX0lOUFVUX1RJTFQgKTsKLSAgICAgICAgcHh3WyAwIF0gPSBCWyAw
IF0gKiBzdF9yZXNbIDAgXSArIEJbIDEgXSAqIFAtPnNIYXJtSFA7Ci0gICAgICAgIGZvciggaiA9
IDE7IGogPCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7IGorKyApIHsKLSAgICAgICAgICAgIHB4
d1sgaiBdID0gQlsgMCBdICogc3RfcmVzWyBqIF0gKyBCWyAxIF0gKiBzdF9yZXNbIGogLSAxIF07
Ci0gICAgICAgIH0KLSAgICAgICAgUC0+c0hhcm1IUCA9IHN0X3Jlc1sgcHNFbmMtPnNDbW4uc3Vi
ZnJfbGVuZ3RoIC0gMSBdOwotCi0gICAgICAgIHNpbGtfcHJlZmlsdF9GTFAoIFAsIHB4dywgcHh3
LCBIYXJtU2hhcGVGSVIsIFRpbHQsIExGX01BX3NocCwgTEZfQVJfc2hwLCBsYWcsIHBzRW5jLT5z
Q21uLnN1YmZyX2xlbmd0aCApOwotCi0gICAgICAgIHB4ICArPSBwc0VuYy0+c0Ntbi5zdWJmcl9s
ZW5ndGg7Ci0gICAgICAgIHB4dyArPSBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7Ci0gICAgfQot
ICAgIFAtPmxhZ1ByZXYgPSBwc0VuY0N0cmwtPnBpdGNoTFsgcHNFbmMtPnNDbW4ubmJfc3ViZnIg
LSAxIF07Ci19Ci0KLS8qCi0qIFByZWZpbHRlciBmb3IgZmluZGluZyBRdWFudGl6ZXIgaW5wdXQg
c2lnbmFsCi0qLwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19wcmVmaWx0X0ZMUCgKLSAg
ICBzaWxrX3ByZWZpbHRlcl9zdGF0ZV9GTFAgICAgKlAsICAgICAgICAgICAgICAgICAvKiBJL08g
c3RhdGUgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgc3RfcmVzW10sICAgICAg
ICAgICAvKiBJICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIHh3W10sICAgICAg
ICAgICAgICAgLyogTyAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAqSGFybVNo
YXBlRklSLCAgICAgIC8qIEkgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgVGls
dCwgICAgICAgICAgICAgICAvKiBJICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAg
IExGX01BX3NocCwgICAgICAgICAgLyogSSAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAg
ICAgICBMRl9BUl9zaHAsICAgICAgICAgIC8qIEkgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgICAgbGFnLCAgICAgICAgICAgICAgICAvKiBJICovCi0gICAgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICAgIGxlbmd0aCAgICAgICAgICAgICAgLyogSSAqLwotKQotewotICAgIG9wdXNf
aW50ICAgaTsKLSAgICBvcHVzX2ludCAgIGlkeCwgTFRQX3NocF9idWZfaWR4OwotICAgIHNpbGtf
ZmxvYXQgbl9UaWx0LCBuX0xGLCBuX0xUUDsKLSAgICBzaWxrX2Zsb2F0IHNMRl9BUl9zaHAsIHNM
Rl9NQV9zaHA7Ci0gICAgc2lsa19mbG9hdCAqTFRQX3NocF9idWY7Ci0KLSAgICAvKiBUbyBzcGVl
ZCB1cCB1c2UgdGVtcCB2YXJpYWJsZXMgaW5zdGVhZCBvZiB1c2luZyB0aGUgc3RydWN0ICovCi0g
ICAgTFRQX3NocF9idWYgICAgID0gUC0+c0xUUF9zaHA7Ci0gICAgTFRQX3NocF9idWZfaWR4ID0g
UC0+c0xUUF9zaHBfYnVmX2lkeDsKLSAgICBzTEZfQVJfc2hwICAgICAgPSBQLT5zTEZfQVJfc2hw
OwotICAgIHNMRl9NQV9zaHAgICAgICA9IFAtPnNMRl9NQV9zaHA7Ci0KLSAgICBmb3IoIGkgPSAw
OyBpIDwgbGVuZ3RoOyBpKysgKSB7Ci0gICAgICAgIGlmKCBsYWcgPiAwICkgewotICAgICAgICAg
ICAgc2lsa19hc3NlcnQoIEhBUk1fU0hBUEVfRklSX1RBUFMgPT0gMyApOwotICAgICAgICAgICAg
aWR4ID0gbGFnICsgTFRQX3NocF9idWZfaWR4OwotICAgICAgICAgICAgbl9MVFAgID0gTFRQX3No
cF9idWZbICggaWR4IC0gSEFSTV9TSEFQRV9GSVJfVEFQUyAvIDIgLSAxKSAmIExUUF9NQVNLIF0g
KiBIYXJtU2hhcGVGSVJbIDAgXTsKLSAgICAgICAgICAgIG5fTFRQICs9IExUUF9zaHBfYnVmWyAo
IGlkeCAtIEhBUk1fU0hBUEVfRklSX1RBUFMgLyAyICAgICkgJiBMVFBfTUFTSyBdICogSGFybVNo
YXBlRklSWyAxIF07Ci0gICAgICAgICAgICBuX0xUUCArPSBMVFBfc2hwX2J1ZlsgKCBpZHggLSBI
QVJNX1NIQVBFX0ZJUl9UQVBTIC8gMiArIDEpICYgTFRQX01BU0sgXSAqIEhhcm1TaGFwZUZJUlsg
MiBdOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgbl9MVFAgPSAwOwotICAgICAgICB9
Ci0KLSAgICAgICAgbl9UaWx0ID0gc0xGX0FSX3NocCAqIFRpbHQ7Ci0gICAgICAgIG5fTEYgICA9
IHNMRl9BUl9zaHAgKiBMRl9BUl9zaHAgKyBzTEZfTUFfc2hwICogTEZfTUFfc2hwOwotCi0gICAg
ICAgIHNMRl9BUl9zaHAgPSBzdF9yZXNbIGkgXSAtIG5fVGlsdDsKLSAgICAgICAgc0xGX01BX3No
cCA9IHNMRl9BUl9zaHAgLSBuX0xGOwotCi0gICAgICAgIExUUF9zaHBfYnVmX2lkeCA9ICggTFRQ
X3NocF9idWZfaWR4IC0gMSApICYgTFRQX01BU0s7Ci0gICAgICAgIExUUF9zaHBfYnVmWyBMVFBf
c2hwX2J1Zl9pZHggXSA9IHNMRl9NQV9zaHA7Ci0KLSAgICAgICAgeHdbIGkgXSA9IHNMRl9NQV9z
aHAgLSBuX0xUUDsKLSAgICB9Ci0gICAgLyogQ29weSB0ZW1wIHZhcmlhYmxlIGJhY2sgdG8gc3Rh
dGUgKi8KLSAgICBQLT5zTEZfQVJfc2hwICAgICAgID0gc0xGX0FSX3NocDsKLSAgICBQLT5zTEZf
TUFfc2hwICAgICAgID0gc0xGX01BX3NocDsKLSAgICBQLT5zTFRQX3NocF9idWZfaWR4ID0gTFRQ
X3NocF9idWZfaWR4OwotfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3NjaHVyX0ZMUC5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2Zsb2F0L3NjaHVyX0ZMUC5jCmluZGV4IGVlNDM2ZjgzNTFjOGFkZjFlZTM2ZmE1MDUyNjEyY2Nm
NDYyYTU1YWUuLmMxZTBiYmI1NDExYzk5NTljYTNmN2Y2YzI5NTc3MTM2MTcwNDgxZGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9mbG9hdC9zY2h1cl9GTFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvc2NodXJfRkxQLmMK
QEAgLTM4LDIyICszOCwyMyBAQCBzaWxrX2Zsb2F0IHNpbGtfc2NodXJfRkxQKCAgICAgICAgICAg
ICAgICAgIC8qIE8gICAgcmV0dXJucyByZXNpZHVhbCBlbmVyZ3kKICkKIHsKICAgICBvcHVzX2lu
dCAgIGssIG47Ci0gICAgc2lsa19mbG9hdCBDWyBTSUxLX01BWF9PUkRFUl9MUEMgKyAxIF1bIDIg
XTsKLSAgICBzaWxrX2Zsb2F0IEN0bXAxLCBDdG1wMiwgcmNfdG1wOworICAgIGRvdWJsZSBDWyBT
SUxLX01BWF9PUkRFUl9MUEMgKyAxIF1bIDIgXTsKKyAgICBkb3VibGUgQ3RtcDEsIEN0bXAyLCBy
Y190bXA7CiAKLSAgICBzaWxrX2Fzc2VydCggb3JkZXI9PTZ8fG9yZGVyPT04fHxvcmRlcj09MTB8
fG9yZGVyPT0xMnx8b3JkZXI9PTE0fHxvcmRlcj09MTYgKTsKKyAgICBzaWxrX2Fzc2VydCggb3Jk
ZXIgPj0gMCAmJiBvcmRlciA8PSBTSUxLX01BWF9PUkRFUl9MUEMgKTsKIAogICAgIC8qIENvcHkg
Y29ycmVsYXRpb25zICovCi0gICAgZm9yKCBrID0gMDsgayA8IG9yZGVyKzE7IGsrKyApIHsKKyAg
ICBrID0gMDsKKyAgICBkbyB7CiAgICAgICAgIENbIGsgXVsgMCBdID0gQ1sgayBdWyAxIF0gPSBh
dXRvX2NvcnJbIGsgXTsKLSAgICB9CisgICAgfSB3aGlsZSggKytrIDw9IG9yZGVyICk7CiAKICAg
ICBmb3IoIGsgPSAwOyBrIDwgb3JkZXI7IGsrKyApIHsKICAgICAgICAgLyogR2V0IHJlZmxlY3Rp
b24gY29lZmZpY2llbnQgKi8KICAgICAgICAgcmNfdG1wID0gLUNbIGsgKyAxIF1bIDAgXSAvIHNp
bGtfbWF4X2Zsb2F0KCBDWyAwIF1bIDEgXSwgMWUtOWYgKTsKIAogICAgICAgICAvKiBTYXZlIHRo
ZSBvdXRwdXQgKi8KLSAgICAgICAgcmVmbF9jb2VmWyBrIF0gPSByY190bXA7CisgICAgICAgIHJl
ZmxfY29lZlsgayBdID0gKHNpbGtfZmxvYXQpcmNfdG1wOwogCiAgICAgICAgIC8qIFVwZGF0ZSBj
b3JyZWxhdGlvbnMgKi8KICAgICAgICAgZm9yKCBuID0gMDsgbiA8IG9yZGVyIC0gazsgbisrICkg
ewpAQCAtNjUsNiArNjYsNSBAQCBzaWxrX2Zsb2F0IHNpbGtfc2NodXJfRkxQKCAgICAgICAgICAg
ICAgICAgIC8qIE8gICAgcmV0dXJucyByZXNpZHVhbCBlbmVyZ3kKICAgICB9CiAKICAgICAvKiBS
ZXR1cm4gcmVzaWR1YWwgZW5lcmd5ICovCi0gICAgcmV0dXJuIENbIDAgXVsgMSBdOworICAgIHJl
dHVybiAoc2lsa19mbG9hdClDWyAwIF1bIDEgXTsKIH0KLQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0
L3NvbHZlX0xTX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3NvbHZlX0xTX0ZMUC5jCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA3YzkwZDY2NWEwZjBkMThiNTczYjYzMmE5MzI4NTYwNTExYmYyYTgx
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9h
dC9zb2x2ZV9MU19GTFAuYworKysgL2Rldi9udWxsCkBAIC0xLDIwNyArMCwwIEBACi0vKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioKLUNvcHlyaWdodCAoYykgMjAwNi0yMDExLCBTa3lwZSBMaW1pdGVkLiBBbGwgcmln
aHRzIHJlc2VydmVkLgotUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0tIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5v
dGljZSwKLXRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCi0tIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0Ci1ub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi1kb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotLSBOZWl0aGVyIHRoZSBu
YW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQotbmFt
ZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHBy
b21vdGUKLXByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lm
aWMgcHJpb3Igd3JpdHRlbgotcGVybWlzc2lvbi4KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgotQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQotSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLUFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQotTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgotQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YKLVNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLUNPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCi1BUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQotUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0q
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KLQotI2lmZGVmIEhBVkVfQ09ORklHX0gKLSNpbmNsdWRlICJjb25maWcu
aCIKLSNlbmRpZgotCi0jaW5jbHVkZSAibWFpbl9GTFAuaCIKLSNpbmNsdWRlICJ0dW5pbmdfcGFy
YW1ldGVycy5oIgotCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICogTERMIEZhY3RvcmlzYXRpb24uIEZpbmRz
IHRoZSB1cHBlciB0cmlhbmd1bGFyIG1hdHJpeCBMIGFuZCB0aGUgZGlhZ29uYWwKLSAqIE1hdHJp
eCBEIChvbmx5IHRoZSBkaWFnb25hbCBlbGVtZW50cyByZXR1cm5lZCBpbiBhIHZlY3RvcilzdWNo
IHRoYXQKLSAqIHRoZSBzeW1tZXRyaWMgbWF0cmljIEEgaXMgZ2l2ZW4gYnkgQSA9IEwqRCpMJy4K
LSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19MRExfRkxQKAot
ICAgIHNpbGtfZmxvYXQgICAgICAgICAgKkEsICAgICAgICAgLyogSS9PICBQb2ludGVyIHRvIFN5
bWV0cmljIFNxdWFyZSBNYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBvcHVzX2ludCAgICAgICAgICAgIE0sICAgICAgICAgIC8qIEkgICAgU2l6ZSBvZiBNYXRyaXgg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAg
c2lsa19mbG9hdCAgICAgICAgICAqTCwgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU3F1YXJl
IFVwcGVyIHRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNp
bGtfZmxvYXQgICAgICAgICAgKkRpbnYgICAgICAgLyogSS9PICBQb2ludGVyIHRvIHZlY3RvciBo
b2xkaW5nIHRoZSBpbnZlcnNlIGRpYWdvbmFsIGVsZW1lbnRzIG9mIEQgICAgKi8KLSk7Ci0KLS8q
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqCi0gKiBGdW5jdGlvbiB0byBzb2x2ZSBsaW5lYXIgZXF1YXRpb24gQXggPSBi
LCB3aGVuIEEgaXMgYSBNeE0gbG93ZXIKLSAqIHRyaWFuZ3VsYXIgbWF0cml4LCB3aXRoIG9uZXMg
b24gdGhlIGRpYWdvbmFsLgotICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9p
ZCBzaWxrX1NvbHZlV2l0aExvd2VyVHJpYW5ndWxhcldkaWFnT25lc19GTFAoCi0gICAgY29uc3Qg
c2lsa19mbG9hdCAgICAqTCwgICAgICAgICAvKiBJICAgIFBvaW50ZXIgdG8gTG93ZXIgVHJpYW5n
dWxhciBNYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50
ICAgICAgICAgICAgTSwgICAgICAgICAgLyogSSAgICBEaW0gb2YgTWF0cml4IGVxdWF0aW9uICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxr
X2Zsb2F0ICAgICpiLCAgICAgICAgIC8qIEkgICAgYiBWZWN0b3IgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAg
ICAgICAgICAqeCAgICAgICAgICAvKiBPICAgIHggVmVjdG9yICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsKLQotLyoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioKLSAqIEZ1bmN0aW9uIHRvIHNvbHZlIGxpbmVhciBlcXVhdGlvbiAoQV5UKXggPSBiLCB3aGVu
IEEgaXMgYSBNeE0gbG93ZXIKLSAqIHRyaWFuZ3VsYXIsIHdpdGggb25lcyBvbiB0aGUgZGlhZ29u
YWwuIChpZSB0aGVuIEFeVCBpcyB1cHBlciB0cmlhbmd1bGFyKQotICoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi1z
dGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX1NvbHZlV2l0aFVwcGVyVHJpYW5ndWxhckZyb21M
b3dlcldkaWFnT25lc19GTFAoCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAqTCwgICAgICAgICAv
KiBJICAgIFBvaW50ZXIgdG8gTG93ZXIgVHJpYW5ndWxhciBNYXRyaXggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgTSwgICAgICAgICAgLyog
SSAgICBEaW0gb2YgTWF0cml4IGVxdWF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICpiLCAgICAgICAgIC8qIEkg
ICAgYiBWZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAqeCAgICAgICAgICAvKiBPICAg
IHggVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotKTsKLQotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAqIEZ1bmN0aW9uIHRvIHNvbHZlIGxp
bmVhciBlcXVhdGlvbiBBeCA9IGIsIHdoZW4gQSBpcyBhIE14TQotICogc3ltbWV0cmljIHNxdWFy
ZSBtYXRyaXggLSB1c2luZyBMREwgZmFjdG9yaXNhdGlvbgotICoqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi12b2lk
IHNpbGtfc29sdmVfTERMX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAg
ICpBLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgU3ltbWV0cmljIHNx
dWFyZSBtYXRyaXgsIG91dDogcmVnLiAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgTSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBTaXplIG9mIG1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAqYiwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIFBvaW50ZXIgdG8gYiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgICp4ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUG9pbnRlciB0byB4IHNvbHV0aW9uIHZlY3Rv
ciAgICAgICAgICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50ICAgaTsKLSAgICBzaWxrX2Zs
b2F0IExbICAgIE1BWF9NQVRSSVhfU0laRSBdWyBNQVhfTUFUUklYX1NJWkUgXTsKLSAgICBzaWxr
X2Zsb2F0IFRbICAgIE1BWF9NQVRSSVhfU0laRSBdOwotICAgIHNpbGtfZmxvYXQgRGludlsgTUFY
X01BVFJJWF9TSVpFIF07IC8qIGludmVyc2UgZGlhZ29uYWwgZWxlbWVudHMgb2YgRCovCi0KLSAg
ICBzaWxrX2Fzc2VydCggTSA8PSBNQVhfTUFUUklYX1NJWkUgKTsKLQotICAgIC8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAgICBGYWN0b3JpemUg
QSBieSBMREwgc3VjaCB0aGF0IEEgPSBMKkQqKExeVCksCi0gICAgd2hlcmUgTCBpcyBsb3dlciB0
cmlhbmd1bGFyIHdpdGggb25lcyBvbiBkaWFnb25hbAotICAgICoqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgc2lsa19MRExfRkxQKCBBLCBN
LCAmTFsgMCBdWyAwIF0sIERpbnYgKTsKLQotICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gICAgKiBzdWJzdGl0dXRlIEQqKExeVCkgPSBU
LiBpZToKLSAgICBMKkQqKExeVCkqeCA9IGIgPT4gTCpUID0gYiA8PT4gVCA9IGludihMKSpiCi0g
ICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
LwotICAgIHNpbGtfU29sdmVXaXRoTG93ZXJUcmlhbmd1bGFyV2RpYWdPbmVzX0ZMUCggJkxbIDAg
XVsgMCBdLCBNLCBiLCBUICk7Ci0KLSAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKgotICAgIEQqKExeVCkqeCA9IFQgPD0+IChMXlQpKnggPSBp
bnYoRCkqVCwgYmVjYXVzZSBEIGlzCi0gICAgZGlhZ29uYWwganVzdCBtdWx0aXBseSB3aXRoIDEv
ZF9pCi0gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KLSAgICBmb3IoIGkgPSAwOyBpIDwgTTsgaSsrICkgewotICAgICAgICBUWyBpIF0gPSBU
WyBpIF0gKiBEaW52WyBpIF07Ci0gICAgfQotICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gICAgeCA9IGludihMJykgKiBpbnYoRCkgKiBU
Ci0gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KiovCi0gICAgc2lsa19Tb2x2ZVdpdGhVcHBlclRyaWFuZ3VsYXJGcm9tTG93ZXJXZGlhZ09uZXNf
RkxQKCAmTFsgMCBdWyAwIF0sIE0sIFQsIHggKTsKLX0KLQotc3RhdGljIE9QVVNfSU5MSU5FIHZv
aWQgc2lsa19Tb2x2ZVdpdGhVcHBlclRyaWFuZ3VsYXJGcm9tTG93ZXJXZGlhZ09uZXNfRkxQKAot
ICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKkwsICAgICAgICAgLyogSSAgICBQb2ludGVyIHRvIExv
d2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBvcHVzX2ludCAgICAgICAgICAgIE0sICAgICAgICAgIC8qIEkgICAgRGltIG9mIE1hdHJpeCBl
cXVhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAg
Y29uc3Qgc2lsa19mbG9hdCAgICAqYiwgICAgICAgICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNp
bGtfZmxvYXQgICAgICAgICAgKnggICAgICAgICAgLyogTyAgICB4IFZlY3RvciAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSkKLXsKLSAg
ICBvcHVzX2ludCAgIGksIGo7Ci0gICAgc2lsa19mbG9hdCB0ZW1wOwotICAgIGNvbnN0IHNpbGtf
ZmxvYXQgKnB0cjE7Ci0KLSAgICBmb3IoIGkgPSBNIC0gMTsgaSA+PSAwOyBpLS0gKSB7Ci0gICAg
ICAgIHB0cjEgPSAgbWF0cml4X2FkciggTCwgMCwgaSwgTSApOwotICAgICAgICB0ZW1wID0gMDsK
LSAgICAgICAgZm9yKCBqID0gTSAtIDE7IGogPiBpIDsgai0tICkgewotICAgICAgICAgICAgdGVt
cCArPSBwdHIxWyBqICogTSBdICogeFsgaiBdOwotICAgICAgICB9Ci0gICAgICAgIHRlbXAgPSBi
WyBpIF0gLSB0ZW1wOwotICAgICAgICB4WyBpIF0gPSB0ZW1wOwotICAgIH0KLX0KLQotc3RhdGlj
IE9QVVNfSU5MSU5FIHZvaWQgc2lsa19Tb2x2ZVdpdGhMb3dlclRyaWFuZ3VsYXJXZGlhZ09uZXNf
RkxQKAotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKkwsICAgICAgICAgLyogSSAgICBQb2ludGVy
IHRvIExvd2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICBvcHVzX2ludCAgICAgICAgICAgIE0sICAgICAgICAgIC8qIEkgICAgRGltIG9mIE1h
dHJpeCBlcXVhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAqYiwgICAgICAgICAvKiBJICAgIGIgVmVjdG9yICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIHNpbGtfZmxvYXQgICAgICAgICAgKnggICAgICAgICAgLyogTyAgICB4IFZlY3RvciAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSkK
LXsKLSAgICBvcHVzX2ludCAgIGksIGo7Ci0gICAgc2lsa19mbG9hdCB0ZW1wOwotICAgIGNvbnN0
IHNpbGtfZmxvYXQgKnB0cjE7Ci0KLSAgICBmb3IoIGkgPSAwOyBpIDwgTTsgaSsrICkgewotICAg
ICAgICBwdHIxID0gIG1hdHJpeF9hZHIoIEwsIGksIDAsIE0gKTsKLSAgICAgICAgdGVtcCA9IDA7
Ci0gICAgICAgIGZvciggaiA9IDA7IGogPCBpOyBqKysgKSB7Ci0gICAgICAgICAgICB0ZW1wICs9
IHB0cjFbIGogXSAqIHhbIGogXTsKLSAgICAgICAgfQotICAgICAgICB0ZW1wID0gYlsgaSBdIC0g
dGVtcDsKLSAgICAgICAgeFsgaSBdID0gdGVtcDsKLSAgICB9Ci19Ci0KLXN0YXRpYyBPUFVTX0lO
TElORSB2b2lkIHNpbGtfTERMX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICpBLCAgICAg
ICAgIC8qIEkvTyAgUG9pbnRlciB0byBTeW1ldHJpYyBTcXVhcmUgTWF0cml4ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBNLCAgICAgICAg
ICAvKiBJICAgIFNpemUgb2YgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgKkwsICAgICAgICAg
LyogSS9PICBQb2ludGVyIHRvIFNxdWFyZSBVcHBlciB0cmlhbmd1bGFyIE1hdHJpeCAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICpEaW52ICAgICAgIC8q
IEkvTyAgUG9pbnRlciB0byB2ZWN0b3IgaG9sZGluZyB0aGUgaW52ZXJzZSBkaWFnb25hbCBlbGVt
ZW50cyBvZiBEICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgaSwgaiwgaywgbG9vcF9jb3VudCwg
ZXJyID0gMTsKLSAgICBzaWxrX2Zsb2F0ICpwdHIxLCAqcHRyMjsKLSAgICBkb3VibGUgdGVtcCwg
ZGlhZ19taW5fdmFsdWU7Ci0gICAgc2lsa19mbG9hdCB2WyBNQVhfTUFUUklYX1NJWkUgXSwgRFsg
TUFYX01BVFJJWF9TSVpFIF07IC8qIHRlbXAgYXJyYXlzKi8KLQotICAgIHNpbGtfYXNzZXJ0KCBN
IDw9IE1BWF9NQVRSSVhfU0laRSApOwotCi0gICAgZGlhZ19taW5fdmFsdWUgPSBGSU5EX0xUUF9D
T05EX0ZBQyAqIDAuNWYgKiAoIEFbIDAgXSArIEFbIE0gKiBNIC0gMSBdICk7Ci0gICAgZm9yKCBs
b29wX2NvdW50ID0gMDsgbG9vcF9jb3VudCA8IE0gJiYgZXJyID09IDE7IGxvb3BfY291bnQrKyAp
IHsKLSAgICAgICAgZXJyID0gMDsKLSAgICAgICAgZm9yKCBqID0gMDsgaiA8IE07IGorKyApIHsK
LSAgICAgICAgICAgIHB0cjEgPSBtYXRyaXhfYWRyKCBMLCBqLCAwLCBNICk7Ci0gICAgICAgICAg
ICB0ZW1wID0gbWF0cml4X3B0ciggQSwgaiwgaiwgTSApOyAvKiBlbGVtZW50IGluIHJvdyBqIGNv
bHVtbiBqKi8KLSAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBqOyBpKysgKSB7Ci0gICAgICAg
ICAgICAgICAgdlsgaSBdID0gcHRyMVsgaSBdICogRFsgaSBdOwotICAgICAgICAgICAgICAgIHRl
bXAgIC09IHB0cjFbIGkgXSAqIHZbIGkgXTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlm
KCB0ZW1wIDwgZGlhZ19taW5fdmFsdWUgKSB7Ci0gICAgICAgICAgICAgICAgLyogQmFkbHkgY29u
ZGl0aW9uZWQgbWF0cml4OiBhZGQgd2hpdGUgbm9pc2UgYW5kIHJ1biBhZ2FpbiAqLwotICAgICAg
ICAgICAgICAgIHRlbXAgPSAoIGxvb3BfY291bnQgKyAxICkgKiBkaWFnX21pbl92YWx1ZSAtIHRl
bXA7Ci0gICAgICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IE07IGkrKyApIHsKLSAgICAgICAg
ICAgICAgICAgICAgbWF0cml4X3B0ciggQSwgaSwgaSwgTSApICs9ICggc2lsa19mbG9hdCApdGVt
cDsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgZXJyID0gMTsKLSAgICAgICAg
ICAgICAgICBicmVhazsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIERbIGogXSAgICA9ICgg
c2lsa19mbG9hdCApdGVtcDsKLSAgICAgICAgICAgIERpbnZbIGogXSA9ICggc2lsa19mbG9hdCAp
KCAxLjBmIC8gdGVtcCApOwotICAgICAgICAgICAgbWF0cml4X3B0ciggTCwgaiwgaiwgTSApID0g
MS4wZjsKLQotICAgICAgICAgICAgcHRyMSA9IG1hdHJpeF9hZHIoIEEsIGosIDAsIE0gKTsKLSAg
ICAgICAgICAgIHB0cjIgPSBtYXRyaXhfYWRyKCBMLCBqICsgMSwgMCwgTSk7Ci0gICAgICAgICAg
ICBmb3IoIGkgPSBqICsgMTsgaSA8IE07IGkrKyApIHsKLSAgICAgICAgICAgICAgICB0ZW1wID0g
MC4wOwotICAgICAgICAgICAgICAgIGZvciggayA9IDA7IGsgPCBqOyBrKysgKSB7Ci0gICAgICAg
ICAgICAgICAgICAgIHRlbXAgKz0gcHRyMlsgayBdICogdlsgayBdOwotICAgICAgICAgICAgICAg
IH0KLSAgICAgICAgICAgICAgICBtYXRyaXhfcHRyKCBMLCBpLCBqLCBNICkgPSAoIHNpbGtfZmxv
YXQgKSggKCBwdHIxWyBpIF0gLSB0ZW1wICkgKiBEaW52WyBqIF0gKTsKLSAgICAgICAgICAgICAg
ICBwdHIyICs9IE07IC8qIGdvIHRvIG5leHQgY29sdW1uKi8KLSAgICAgICAgICAgIH0KLSAgICAg
ICAgfQotICAgIH0KLSAgICBzaWxrX2Fzc2VydCggZXJyID09IDAgKTsKLX0KLQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2Zsb2F0L3N0cnVjdHNfRkxQLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvc3RydWN0c19GTFAuaAppbmRl
eCAxNGQ2NDdjZWQyN2U2YjZhNmRlNTY3ZmFkMzk4MjJkNjdhM2NkNGM4Li4zMTUwYjM4NmU0Nzg1
MDZkYzg4ODRhZTY5MTk3MTI5ZWYxYzQxNjMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvc3RydWN0
c19GTFAuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvc3RydWN0c19GTFAuaApAQCAtNDIsMzIgKzQyLDE2IEBA
IGV4dGVybiAiQyIKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIHR5cGVkZWYg
c3RydWN0IHsKICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgTGFzdEdhaW5JbmRleDsK
LSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgSGFybUJvb3N0X3NtdGg7CiAgICAgc2ls
a19mbG9hdCAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5fc210aDsKICAgICBzaWxrX2Zs
b2F0ICAgICAgICAgICAgICAgICAgVGlsdF9zbXRoOwogfSBzaWxrX3NoYXBlX3N0YXRlX0ZMUDsK
IAotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotLyogUHJlZmlsdGVyIHN0YXRl
ICAgICAgICAgICAgICAqLwotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotdHlw
ZWRlZiBzdHJ1Y3QgewotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBzTFRQX3NocFsg
TFRQX0JVRl9MRU5HVEggXTsKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgc0FSX3No
cFsgTUFYX1NIQVBFX0xQQ19PUkRFUiArIDEgXTsKLSAgICBvcHVzX2ludCAgICAgICAgICAgICAg
ICAgICAgc0xUUF9zaHBfYnVmX2lkeDsKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAg
c0xGX0FSX3NocDsKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgc0xGX01BX3NocDsK
LSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgc0hhcm1IUDsKLSAgICBvcHVzX2ludDMy
ICAgICAgICAgICAgICAgICAgcmFuZF9zZWVkOwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgICBsYWdQcmV2OwotfSBzaWxrX3ByZWZpbHRlcl9zdGF0ZV9GTFA7Ci0KIC8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KIC8qIEVuY29kZXIgc3RhdGUgRkxQICAgICAgICAgICAg
Ki8KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIHR5cGVkZWYgc3RydWN0IHsK
ICAgICBzaWxrX2VuY29kZXJfc3RhdGUgICAgICAgICAgc0NtbjsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogQ29tbW9uIHN0cnVjdCwgc2hhcmVkIHdpdGggZml4ZWQtcG9pbnQgY29k
ZSAqLwogICAgIHNpbGtfc2hhcGVfc3RhdGVfRkxQICAgICAgICBzU2hhcGU7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBOb2lzZSBzaGFwaW5nIHN0YXRlICovCi0gICAgc2lsa19wcmVm
aWx0ZXJfc3RhdGVfRkxQICAgIHNQcmVmaWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IFByZWZpbHRlciBTdGF0ZSAqLwogCiAgICAgLyogQnVmZmVyIGZvciBmaW5kIHBpdGNoIGFuZCBu
b2lzZSBzaGFwZSBhbmFseXNpcyAqLwogICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICB4
X2J1ZlsgMiAqIE1BWF9GUkFNRV9MRU5HVEggKyBMQV9TSEFQRV9NQVggXTsvKiBCdWZmZXIgZm9y
IGZpbmQgcGl0Y2ggYW5kIG5vaXNlIHNoYXBlIGFuYWx5c2lzICovCkBAIC04NiwxMiArNzAsOSBA
QCB0eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIHBpdGNo
TFsgTUFYX05CX1NVQkZSIF07CiAKICAgICAvKiBOb2lzZSBzaGFwaW5nIHBhcmFtZXRlcnMgKi8K
LSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgQVIxWyBNQVhfTkJfU1VCRlIgKiBNQVhf
U0hBUEVfTFBDX09SREVSIF07Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIEFSMlsg
TUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOworICAgIHNpbGtfZmxvYXQgICAg
ICAgICAgICAgICAgICBBUlsgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwog
ICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBMRl9NQV9zaHBbICAgICBNQVhfTkJfU1VC
RlIgXTsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgTEZfQVJfc2hwWyAgICAgTUFY
X05CX1NVQkZSIF07Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIEdhaW5zUHJlWyAg
ICAgIE1BWF9OQl9TVUJGUiBdOwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBIYXJt
Qm9vc3RbICAgICBNQVhfTkJfU1VCRlIgXTsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
ICAgVGlsdFsgICAgICAgICAgTUFYX05CX1NVQkZSIF07CiAgICAgc2lsa19mbG9hdCAgICAgICAg
ICAgICAgICAgIEhhcm1TaGFwZUdhaW5bIE1BWF9OQl9TVUJGUiBdOwogICAgIHNpbGtfZmxvYXQg
ICAgICAgICAgICAgICAgICBMYW1iZGE7CkBAIC05OSw3ICs4MCw2IEBAIHR5cGVkZWYgc3RydWN0
IHsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgY29kaW5nX3F1YWxpdHk7CiAKICAg
ICAvKiBNZWFzdXJlcyAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBzcGFyc2Vu
ZXNzOwogICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBwcmVkR2FpbjsKICAgICBzaWxr
X2Zsb2F0ICAgICAgICAgICAgICAgICAgTFRQcmVkQ29kR2FpbjsKICAgICBzaWxrX2Zsb2F0ICAg
ICAgICAgICAgICAgICAgUmVzTnJnWyBNQVhfTkJfU1VCRlIgXTsgICAgICAgICAgICAgLyogUmVz
aWR1YWwgZW5lcmd5IHBlciBzdWJmcmFtZSAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3dyYXBw
ZXJzX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3dyYXBwZXJzX0ZMUC5jCmluZGV4IDY2NjZiOGVmYWFkZTJm
MGNlOWVlZjM3MTgxYzA3NjgzZDU0MzNlYzIuLmFkOTBiODc0YTRkODE0YTYxNWM5MTQxNzQyMDVm
ZGZiMTBkZjA5NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC93cmFwcGVyc19GTFAuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZmxvYXQvd3JhcHBlcnNfRkxQLmMKQEAgLTU0LDEzICs1NCwxNCBAQCB2b2lkIHNpbGtfQTJO
TFNGX0ZMUCgKIHZvaWQgc2lsa19OTFNGMkFfRkxQKAogICAgIHNpbGtfZmxvYXQgICAgICAgICAg
ICAgICAgICAgICAgKnBBUiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBM
UEMgY29lZmZpY2llbnRzIFsgTFBDX29yZGVyIF0gICAgICAgICAgICAgICovCiAgICAgY29uc3Qg
b3B1c19pbnQxNiAgICAgICAgICAgICAgICAqTkxTRl9RMTUsICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIE5MU0YgdmVjdG9yICAgICAgWyBMUENfb3JkZXIgXSAgICAgICAgICAgICAg
Ki8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIExQQ19vcmRlciAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFBDIG9yZGVyICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgTFBD
X29yZGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMUEMgb3JkZXIgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgaW50ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJ1
bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKICAgICBv
cHVzX2ludCAgIGk7CiAgICAgb3B1c19pbnQxNiBhX2ZpeF9RMTJbIE1BWF9MUENfT1JERVIgXTsK
IAotICAgIHNpbGtfTkxTRjJBKCBhX2ZpeF9RMTIsIE5MU0ZfUTE1LCBMUENfb3JkZXIgKTsKKyAg
ICBzaWxrX05MU0YyQSggYV9maXhfUTEyLCBOTFNGX1ExNSwgTFBDX29yZGVyLCBhcmNoICk7CiAK
ICAgICBmb3IoIGkgPSAwOyBpIDwgTFBDX29yZGVyOyBpKysgKSB7CiAgICAgICAgIHBBUlsgaSBd
ID0gKCBzaWxrX2Zsb2F0IClhX2ZpeF9RMTJbIGkgXSAqICggMS4wZiAvIDQwOTYuMGYgKTsKQEAg
LTEwMiwxNCArMTAzLDE0IEBAIHZvaWQgc2lsa19OU1Ffd3JhcHBlcl9GTFAoCiApCiB7CiAgICAg
b3B1c19pbnQgICAgIGksIGo7Ci0gICAgb3B1c19pbnQzMiAgIHhfUTNbIE1BWF9GUkFNRV9MRU5H
VEggXTsKKyAgICBvcHVzX2ludDE2ICAgeDE2WyBNQVhfRlJBTUVfTEVOR1RIIF07CiAgICAgb3B1
c19pbnQzMiAgIEdhaW5zX1ExNlsgTUFYX05CX1NVQkZSIF07CiAgICAgc2lsa19EV09SRF9BTElH
TiBvcHVzX2ludDE2IFByZWRDb2VmX1ExMlsgMiBdWyBNQVhfTFBDX09SREVSIF07CiAgICAgb3B1
c19pbnQxNiAgIExUUENvZWZfUTE0WyBMVFBfT1JERVIgKiBNQVhfTkJfU1VCRlIgXTsKICAgICBv
cHVzX2ludCAgICAgTFRQX3NjYWxlX1ExNDsKIAogICAgIC8qIE5vaXNlIHNoYXBpbmcgcGFyYW1l
dGVycyAqLwotICAgIG9wdXNfaW50MTYgICBBUjJfUTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hB
UEVfTFBDX09SREVSIF07CisgICAgb3B1c19pbnQxNiAgIEFSX1ExM1sgTUFYX05CX1NVQkZSICog
TUFYX1NIQVBFX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfaW50MzIgICBMRl9zaHBfUTE0WyBNQVhf
TkJfU1VCRlIgXTsgICAgICAgICAvKiBQYWNrcyB0d28gaW50MTYgY29lZmZpY2llbnRzIHBlciBp
bnQzMiB2YWx1ZSAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICBMYW1iZGFfUTEwOwog
ICAgIG9wdXNfaW50ICAgICBUaWx0X1ExNFsgTUFYX05CX1NVQkZSIF07CkBAIC0xMTksNyArMTIw
LDcgQEAgdm9pZCBzaWxrX05TUV93cmFwcGVyX0ZMUCgKICAgICAvKiBOb2lzZSBzaGFwZSBwYXJh
bWV0ZXJzICovCiAgICAgZm9yKCBpID0gMDsgaSA8IHBzRW5jLT5zQ21uLm5iX3N1YmZyOyBpKysg
KSB7CiAgICAgICAgIGZvciggaiA9IDA7IGogPCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXI7
IGorKyApIHsKLSAgICAgICAgICAgIEFSMl9RMTNbIGkgKiBNQVhfU0hBUEVfTFBDX09SREVSICsg
aiBdID0gc2lsa19mbG9hdDJpbnQoIHBzRW5jQ3RybC0+QVIyWyBpICogTUFYX1NIQVBFX0xQQ19P
UkRFUiArIGogXSAqIDgxOTIuMGYgKTsKKyAgICAgICAgICAgIEFSX1ExM1sgaSAqIE1BWF9TSEFQ
RV9MUENfT1JERVIgKyBqIF0gPSBzaWxrX2Zsb2F0MmludCggcHNFbmNDdHJsLT5BUlsgaSAqIE1B
WF9TSEFQRV9MUENfT1JERVIgKyBqIF0gKiA4MTkyLjBmICk7CiAgICAgICAgIH0KICAgICB9CiAK
QEAgLTE1NSwxNiArMTU2LDE2IEBAIHZvaWQgc2lsa19OU1Ffd3JhcHBlcl9GTFAoCiAKICAgICAv
KiBDb252ZXJ0IGlucHV0IHRvIGZpeCAqLwogICAgIGZvciggaSA9IDA7IGkgPCBwc0VuYy0+c0Nt
bi5mcmFtZV9sZW5ndGg7IGkrKyApIHsKLSAgICAgICAgeF9RM1sgaSBdID0gc2lsa19mbG9hdDJp
bnQoIDguMGYgKiB4WyBpIF0gKTsKKyAgICAgICAgeDE2WyBpIF0gPSBzaWxrX2Zsb2F0MmludCgg
eFsgaSBdICk7CiAgICAgfQogCiAgICAgLyogQ2FsbCBOU1EgKi8KICAgICBpZiggcHNFbmMtPnND
bW4ublN0YXRlc0RlbGF5ZWREZWNpc2lvbiA+IDEgfHwgcHNFbmMtPnNDbW4ud2FycGluZ19RMTYg
PiAwICkgewotICAgICAgICBzaWxrX05TUV9kZWxfZGVjKCAmcHNFbmMtPnNDbW4sIHBzTlNRLCBw
c0luZGljZXMsIHhfUTMsIHB1bHNlcywgUHJlZENvZWZfUTEyWyAwIF0sIExUUENvZWZfUTE0LAot
ICAgICAgICAgICAgQVIyX1ExMywgSGFybVNoYXBlR2Fpbl9RMTQsIFRpbHRfUTE0LCBMRl9zaHBf
UTE0LCBHYWluc19RMTYsIHBzRW5jQ3RybC0+cGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVf
UTE0LCBwc0VuYy0+c0Ntbi5hcmNoICk7CisgICAgICAgIHNpbGtfTlNRX2RlbF9kZWMoICZwc0Vu
Yy0+c0NtbiwgcHNOU1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMlsgMCBd
LCBMVFBDb2VmX1ExNCwKKyAgICAgICAgICAgIEFSX1ExMywgSGFybVNoYXBlR2Fpbl9RMTQsIFRp
bHRfUTE0LCBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBzRW5jQ3RybC0+cGl0Y2hMLCBMYW1iZGFf
UTEwLCBMVFBfc2NhbGVfUTE0LCBwc0VuYy0+c0Ntbi5hcmNoICk7CiAgICAgfSBlbHNlIHsKLSAg
ICAgICAgc2lsa19OU1EoICZwc0VuYy0+c0NtbiwgcHNOU1EsIHBzSW5kaWNlcywgeF9RMywgcHVs
c2VzLCBQcmVkQ29lZl9RMTJbIDAgXSwgTFRQQ29lZl9RMTQsCi0gICAgICAgICAgICBBUjJfUTEz
LCBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsIExGX3NocF9RMTQsIEdhaW5zX1ExNiwgcHNF
bmNDdHJsLT5waXRjaEwsIExhbWJkYV9RMTAsIExUUF9zY2FsZV9RMTQsIHBzRW5jLT5zQ21uLmFy
Y2ggKTsKKyAgICAgICAgc2lsa19OU1EoICZwc0VuYy0+c0NtbiwgcHNOU1EsIHBzSW5kaWNlcywg
eDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMlsgMCBdLCBMVFBDb2VmX1ExNCwKKyAgICAgICAgICAg
IEFSX1ExMywgSGFybVNoYXBlR2Fpbl9RMTQsIFRpbHRfUTE0LCBMRl9zaHBfUTE0LCBHYWluc19R
MTYsIHBzRW5jQ3RybC0+cGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0LCBwc0VuYy0+
c0Ntbi5hcmNoICk7CiAgICAgfQogfQogCkBAIC0xNzIsMzEgKzE3MywzNSBAQCB2b2lkIHNpbGtf
TlNRX3dyYXBwZXJfRkxQKAogLyogRmxvYXRpbmctcG9pbnQgU2lsayBMVFAgcXVhbnRpYXRpb24g
d3JhcHBlciAqLwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqLwogdm9pZCBzaWxrX3F1YW50X0xUUF9nYWluc19GTFAoCi0gICAgc2lsa19mbG9hdCAgICAg
ICAgICAgICAgICAgICAgICBCWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgICAvKiBJ
L08gIChVbi0pcXVhbnRpemVkIExUUCBnYWlucyAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBz
aWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIEJbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRF
UiBdLCAgICAgIC8qIE8gICAgUXVhbnRpemVkIExUUCBnYWlucyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICAgICAgY2JrX2luZGV4
WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgLyogTyAgICBDb2RlYm9vayBpbmRleCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAg
ICAgICAqcGVyaW9kaWNpdHlfaW5kZXgsICAgICAgICAgICAgICAgICAvKiBPICAgIFBlcmlvZGlj
aXR5IGluZGV4ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAg
ICAgICAgICAgICAgICAgICAgICpzdW1fbG9nX2dhaW5fUTcsICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgQ3VtdWxhdGl2ZSBtYXggcHJlZGljdGlvbiBnYWluICAqLwotICAgIGNvbnN0IHNpbGtf
ZmxvYXQgICAgICAgICAgICAgICAgV1sgTUFYX05CX1NVQkZSICogTFRQX09SREVSICogTFRQX09S
REVSIF0sIC8qIEkgICAgRXJyb3Igd2VpZ2h0cyAgICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBtdV9RMTAsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIE11IHZhbHVlIChSL0QgdHJhZGVvZmYpICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGxvd0NvbXBs
ZXhpdHksICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRmxhZyBmb3IgbG93IGNvbXBsZXhp
dHkgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgbmJfc3ViZnIsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIg
b2Ygc3ViZnJhbWVzICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgc2lsa19mbG9hdCAg
ICAgICAgICAgICAgICAgICAgICAqcHJlZF9nYWluX2RCLCAgICAgICAgICAgICAgICAgICAgICAg
IC8qIE8gICAgTFRQIHByZWRpY3Rpb24gZ2FpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgWFhbIE1BWF9OQl9TVUJGUiAq
IExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBJICAgIENvcnJlbGF0aW9uIG1hdHJpeCAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIHhY
WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgICAgIC8qIEkgICAgQ29ycmVsYXRpb24g
dmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQg
ICAgICAgICAgICAgICAgICAgIHN1YmZyX2xlbiwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBOdW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3ViZnJhbWUgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbmJfc3ViZnIsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBh
cmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hp
dGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKLSAgICBvcHVzX2ludCAgIGk7
CisgICAgb3B1c19pbnQgICBpLCBwcmVkX2dhaW5fZEJfUTc7CiAgICAgb3B1c19pbnQxNiBCX1Ex
NFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF07Ci0gICAgb3B1c19pbnQzMiBXX1ExOFsgTUFY
X05CX1NVQkZSKkxUUF9PUkRFUipMVFBfT1JERVIgXTsKKyAgICBvcHVzX2ludDMyIFhYX1ExN1sg
TUFYX05CX1NVQkZSICogTFRQX09SREVSICogTFRQX09SREVSIF07CisgICAgb3B1c19pbnQzMiB4
WF9RMTdbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdOwogCi0gICAgZm9yKCBpID0gMDsgaSA8
IG5iX3N1YmZyICogTFRQX09SREVSOyBpKysgKSB7Ci0gICAgICAgIEJfUTE0WyBpIF0gPSAob3B1
c19pbnQxNilzaWxrX2Zsb2F0MmludCggQlsgaSBdICogMTYzODQuMGYgKTsKLSAgICB9CiAgICAg
Zm9yKCBpID0gMDsgaSA8IG5iX3N1YmZyICogTFRQX09SREVSICogTFRQX09SREVSOyBpKysgKSB7
Ci0gICAgICAgIFdfUTE4WyBpIF0gPSAob3B1c19pbnQzMilzaWxrX2Zsb2F0MmludCggV1sgaSBd
ICogMjYyMTQ0LjBmICk7CisgICAgICAgIFhYX1ExN1sgaSBdID0gKG9wdXNfaW50MzIpc2lsa19m
bG9hdDJpbnQoIFhYWyBpIF0gKiAxMzEwNzIuMGYgKTsKKyAgICB9CisgICAgZm9yKCBpID0gMDsg
aSA8IG5iX3N1YmZyICogTFRQX09SREVSOyBpKysgKSB7CisgICAgICAgIHhYX1ExN1sgaSBdID0g
KG9wdXNfaW50MzIpc2lsa19mbG9hdDJpbnQoIHhYWyBpIF0gKiAxMzEwNzIuMGYgKTsKICAgICB9
CiAKLSAgICBzaWxrX3F1YW50X0xUUF9nYWlucyggQl9RMTQsIGNia19pbmRleCwgcGVyaW9kaWNp
dHlfaW5kZXgsIHN1bV9sb2dfZ2Fpbl9RNywgV19RMTgsIG11X1ExMCwgbG93Q29tcGxleGl0eSwg
bmJfc3ViZnIsIGFyY2ggKTsKKyAgICBzaWxrX3F1YW50X0xUUF9nYWlucyggQl9RMTQsIGNia19p
bmRleCwgcGVyaW9kaWNpdHlfaW5kZXgsIHN1bV9sb2dfZ2Fpbl9RNywgJnByZWRfZ2Fpbl9kQl9R
NywgWFhfUTE3LCB4WF9RMTcsIHN1YmZyX2xlbiwgbmJfc3ViZnIsIGFyY2ggKTsKIAogICAgIGZv
ciggaSA9IDA7IGkgPCBuYl9zdWJmciAqIExUUF9PUkRFUjsgaSsrICkgewogICAgICAgICBCWyBp
IF0gPSAoc2lsa19mbG9hdClCX1ExNFsgaSBdICogKCAxLjBmIC8gMTYzODQuMGYgKTsKICAgICB9
CisKKyAgICAqcHJlZF9nYWluX2RCID0gKHNpbGtfZmxvYXQpcHJlZF9nYWluX2RCX1E3ICogKCAx
LjBmIC8gMTI4LjBmICk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZ2Fpbl9xdWFudC5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2dh
aW5fcXVhbnQuYwppbmRleCA2NGNjZDA2MTFiZmYzNjhjZjc5Zjk1MGRmNWExNjdiYWE4ZDQxMGJk
Li5lZTY1MjQ1YWEzNjcxMDVlZTFlMGRmYThiNWYyNjE5ZDhjMjIzODIwIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZ2Fpbl9xdWFudC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9nYWluX3F1YW50LmMKQEAgLTc2LDYgKzc2LDcgQEAg
dm9pZCBzaWxrX2dhaW5zX3F1YW50KAogICAgICAgICAgICAgLyogQWNjdW11bGF0ZSBkZWx0YXMg
Ki8KICAgICAgICAgICAgIGlmKCBpbmRbIGsgXSA+IGRvdWJsZV9zdGVwX3NpemVfdGhyZXNob2xk
ICkgewogICAgICAgICAgICAgICAgICpwcmV2X2luZCArPSBzaWxrX0xTSElGVCggaW5kWyBrIF0s
IDEgKSAtIGRvdWJsZV9zdGVwX3NpemVfdGhyZXNob2xkOworICAgICAgICAgICAgICAgICpwcmV2
X2luZCA9IHNpbGtfbWluX2ludCggKnByZXZfaW5kLCBOX0xFVkVMU19RR0FJTiAtIDEgKTsKICAg
ICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgKnByZXZfaW5kICs9IGluZFsgayBd
OwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2luaXRfZGVjb2Rlci5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2lu
aXRfZGVjb2Rlci5jCmluZGV4IGY4ODdjNjc4ODZmYjU3YWNkNTRiMDNhM2RjNTIxMGMzYjA5YmI0
YjIuLjE2YzAzZGNkMWNhMWIzM2I0ODQwOTk5ZDhkYjZjN2Y1YjJiMTVlYmUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9pbml0X2RlY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvaW5pdF9kZWNvZGVyLmMKQEAgLTQ0LDYgKzQ0
LDcgQEAgb3B1c19pbnQgc2lsa19pbml0X2RlY29kZXIoCiAgICAgLyogVXNlZCB0byBkZWFjdGl2
YXRlIExTRiBpbnRlcnBvbGF0aW9uICovCiAgICAgcHNEZWMtPmZpcnN0X2ZyYW1lX2FmdGVyX3Jl
c2V0ID0gMTsKICAgICBwc0RlYy0+cHJldl9nYWluX1ExNiA9IDY1NTM2OworICAgIHBzRGVjLT5h
cmNoID0gb3B1c19zZWxlY3RfYXJjaCgpOwogCiAgICAgLyogUmVzZXQgQ05HIHN0YXRlICovCiAg
ICAgc2lsa19DTkdfUmVzZXQoIHBzRGVjICk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbGluMmxvZy5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2xpbjJsb2cuYwppbmRleCBkNGZlNTE1MzIxZjBkNWI3NmQ2ZDMxNGNjZmY0ZDE2ZjkzZjkx
ODM4Li4wZDUxNTVhYTg2ZTRkNjc2MzBjNTQxZDY4ZmE3YTVlMWJmNDAwYmNlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvbGluMmxvZy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9saW4ybG9nLmMKQEAgLTQxLDYgKzQxLDYgQEAgb3B1
c19pbnQzMiBzaWxrX2xpbjJsb2coCiAgICAgc2lsa19DTFpfRlJBQyggaW5MaW4sICZseiwgJmZy
YWNfUTcgKTsKIAogICAgIC8qIFBpZWNlLXdpc2UgcGFyYWJvbGljIGFwcHJveGltYXRpb24gKi8K
LSAgICByZXR1cm4gc2lsa19MU0hJRlQoIDMxIC0gbHosIDcgKSArIHNpbGtfU01MQVdCKCBmcmFj
X1E3LCBzaWxrX01VTCggZnJhY19RNywgMTI4IC0gZnJhY19RNyApLCAxNzkgKTsKKyAgICByZXR1
cm4gc2lsa19BRERfTFNISUZUMzIoIHNpbGtfU01MQVdCKCBmcmFjX1E3LCBzaWxrX01VTCggZnJh
Y19RNywgMTI4IC0gZnJhY19RNyApLCAxNzkgKSwgMzEgLSBseiwgNyApOwogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvbWFjcm9zLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWFjcm9zLmgKaW5kZXggZDNjYTM0NzUyMDA0NTA2YjZm
ZDZhZTRiZGQ4OGI3ODY0YWY2ODA3Mi4uM2M2N2I2ZTVkOTdjMzY2Zjk4NDFlMmJhOWJkZWVmYmZi
ZmViMjBlYyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21hY3Jvcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9tYWNyb3MuaApAQCAt
MzYsMTQgKzM2LDYgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaW5jbHVkZSAib3B1
c19kZWZpbmVzLmgiCiAjaW5jbHVkZSAiYXJjaC5oIgogCi0jaWYgT1BVU19HTlVDX1BSRVJFUSgz
LCAwKQotI2RlZmluZSBvcHVzX2xpa2VseSh4KSAgICAgICAoX19idWlsdGluX2V4cGVjdCghISh4
KSwgMSkpCi0jZGVmaW5lIG9wdXNfdW5saWtlbHkoeCkgICAgIChfX2J1aWx0aW5fZXhwZWN0KCEh
KHgpLCAwKSkKLSNlbHNlCi0jZGVmaW5lIG9wdXNfbGlrZWx5KHgpICAgICAgICghISh4KSkKLSNk
ZWZpbmUgb3B1c191bmxpa2VseSh4KSAgICAgKCEhKHgpKQotI2VuZGlmCi0KIC8qIFRoaXMgaXMg
YW4gT1BVU19JTkxJTkUgaGVhZGVyIGZpbGUgZm9yIGdlbmVyYWwgcGxhdGZvcm0uICovCiAKIC8q
IChhMzIgKiAob3B1c19pbnQzMikoKG9wdXNfaW50MTYpKGIzMikpKSA+PiAxNiBvdXRwdXQgaGF2
ZSB0byBiZSAzMmJpdCBpbnQgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9tYWluLmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWFpbi5o
CmluZGV4IDJmOTBkNjhmN2RhMGM3ZDRiMDliNzA2YWY3MDFhNjRlMjcyYWY1MDcuLjFhMzNlZWQ1
NDliNmEyMDg1ZDYxMjBkNTIxMGFlMWMyYmQ0YjI4YjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9tYWluLmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL21haW4uaApAQCAtNDIsNiArNDIsMTAgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCiAjaW5jbHVkZSAieDg2L21haW5fc3NlLmgiCiAjZW5kaWYKIAorI2lmIChkZWZpbmVk
KE9QVVNfQVJNX0FTTSkgfHwgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpKQor
I2luY2x1ZGUgImFybS9OU1FfZGVsX2RlY19hcm0uaCIKKyNlbmRpZgorCiAvKiBDb252ZXJ0IExl
ZnQvUmlnaHQgc3RlcmVvIHNpZ25hbCB0byBhZGFwdGl2ZSBNaWQvU2lkZSByZXByZXNlbnRhdGlv
biAqLwogdm9pZCBzaWxrX3N0ZXJlb19MUl90b19NUygKICAgICBzdGVyZW9fZW5jX3N0YXRlICAg
ICAgICAgICAgKnN0YXRlLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFN0YXRlICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KQEAgLTEwOSwyMiArMTEzLDIy
IEBAIHZvaWQgc2lsa19zdGVyZW9fZGVjb2RlX21pZF9vbmx5KAogCiAvKiBFbmNvZGVzIHNpZ25z
IG9mIGV4Y2l0YXRpb24gKi8KIHZvaWQgc2lsa19lbmNvZGVfc2lnbnMoCi0gICAgZWNfZW5jICAg
ICAgICAgICAgICAgICAgICAgICpwc1JhbmdlRW5jLCAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgQ29tcHJlc3NvciBkYXRhIHN0cnVjdHVyZSAgICAgICAgICAgICAgICAgICAqLwotICAg
IGNvbnN0IG9wdXNfaW50OCAgICAgICAgICAgICBwdWxzZXNbXSwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIHB1bHNlIHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBsZW5ndGggb2YgaW5wdXQgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHNpZ25hbFR5
cGUsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU2lnbmFsIHR5cGUgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBxdWFudE9mZnNldFR5cGUsICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFF1YW50aXphdGlv
biBvZmZzZXQgdHlwZSAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgc3VtX3B1bHNlc1sgTUFYX05CX1NIRUxMX0JMT0NLUyBdICAgLyogSSAgICBT
dW0gb2YgYWJzb2x1dGUgcHVsc2VzIHBlciBibG9jayAgICAgICAgICAgICovCisgICAgZWNfZW5j
ICAgICAgICAgICAgICAgICAgICAgICpwc1JhbmdlRW5jLCAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkvTyAgQ29tcHJlc3NvciBkYXRhIHN0cnVjdHVyZSAgICAgICAgICAgICAgICovCisgICAg
Y29uc3Qgb3B1c19pbnQ4ICAgICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgcHVsc2Ugc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgbGVuZ3RoIG9mIGlucHV0ICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHNpZ25hbFR5cGUsICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU2lnbmFsIHR5cGUgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHF1YW50T2Zmc2V0
VHlwZSwgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUXVhbnRpemF0aW9uIG9mZnNldCB0eXBl
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHN1bV9w
dWxzZXNbIE1BWF9OQl9TSEVMTF9CTE9DS1MgXSAgIC8qIEkgICAgU3VtIG9mIGFic29sdXRlIHB1
bHNlcyBwZXIgYmxvY2sgICAgICAgICovCiApOwogCiAvKiBEZWNvZGVzIHNpZ25zIG9mIGV4Y2l0
YXRpb24gKi8KIHZvaWQgc2lsa19kZWNvZGVfc2lnbnMoCi0gICAgZWNfZGVjICAgICAgICAgICAg
ICAgICAgICAgICpwc1JhbmdlRGVjLCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgQ29t
cHJlc3NvciBkYXRhIHN0cnVjdHVyZSAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50
MTYgICAgICAgICAgICAgICAgICBwdWxzZXNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJL08gIHB1bHNlIHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBsZW5ndGggb2YgaW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHNpZ25hbFR5cGUsICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU2lnbmFsIHR5cGUgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBxdWFudE9m
ZnNldFR5cGUsICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFF1YW50aXphdGlvbiBvZmZzZXQg
dHlwZSAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAg
ICAgc3VtX3B1bHNlc1sgTUFYX05CX1NIRUxMX0JMT0NLUyBdICAgLyogSSAgICBTdW0gb2YgYWJz
b2x1dGUgcHVsc2VzIHBlciBibG9jayAgICAgICAgICAgICovCisgICAgZWNfZGVjICAgICAgICAg
ICAgICAgICAgICAgICpwc1JhbmdlRGVjLCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAg
Q29tcHJlc3NvciBkYXRhIHN0cnVjdHVyZSAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQx
NiAgICAgICAgICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgcHVsc2Ugc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1
c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgbGVuZ3RoIG9mIGlucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHNpZ25hbFR5cGUsICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgU2lnbmFsIHR5cGUgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHF1YW50T2Zmc2V0VHlwZSwgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgUXVhbnRpemF0aW9uIG9mZnNldCB0eXBlICAgICAgICAg
ICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHN1bV9wdWxzZXNbIE1B
WF9OQl9TSEVMTF9CTE9DS1MgXSAgIC8qIEkgICAgU3VtIG9mIGFic29sdXRlIHB1bHNlcyBwZXIg
YmxvY2sgICAgICAgICovCiApOwogCiAvKiBDaGVjayBlbmNvZGVyIGNvbnRyb2wgc3RydWN0ICov
CkBAIC0yMDUsMzcgKzIwOSwzNyBAQCB2b2lkIHNpbGtfaW50ZXJwb2xhdGUoCiAKIC8qIExUUCB0
YXAgcXVhbnRpemVyICovCiB2b2lkIHNpbGtfcXVhbnRfTFRQX2dhaW5zKAotICAgIG9wdXNfaW50
MTYgICAgICAgICAgICAgICAgICBCX1ExNFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAg
ICAgICAgIC8qIEkvTyAgKHVuKXF1YW50aXplZCBMVFAgZ2FpbnMgICAgICAgICAqLworICAgIG9w
dXNfaW50MTYgICAgICAgICAgICAgICAgICBCX1ExNFsgTUFYX05CX1NVQkZSICogTFRQX09SREVS
IF0sICAgICAgICAgIC8qIE8gICAgUXVhbnRpemVkIExUUCBnYWlucyAgICAgICAgICAgICAqLwog
ICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICBjYmtfaW5kZXhbIE1BWF9OQl9TVUJGUiBd
LCAgICAgICAgICAgICAgICAgIC8qIE8gICAgQ29kZWJvb2sgSW5kZXggICAgICAgICAgICAgICAg
ICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICAqcGVyaW9kaWNpdHlfaW5kZXgs
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUGVyaW9kaWNpdHkgSW5kZXggICAgICAg
ICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqc3VtX2dhaW5fZEJf
UTcsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgQ3VtdWxhdGl2ZSBtYXggcHJl
ZGljdGlvbiBnYWluICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBXX1ExOFsg
TUFYX05CX1NVQkZSKkxUUF9PUkRFUipMVFBfT1JERVIgXSwgIC8qIEkgICAgRXJyb3IgV2VpZ2h0
cyBpbiBRMTggICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBt
dV9ROSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTXUgdmFs
dWUgKFIvRCB0cmFkZW9mZikgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgICBsb3dDb21wbGV4aXR5LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
RmxhZyBmb3IgbG93IGNvbXBsZXhpdHkgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAg
ICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgICAqcHJlZF9nYWluX2RCX1E3LCAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIE8gICAgTFRQIHByZWRpY3Rpb24gZ2FpbiAgICAgICAgICAgICAqLworICAgIGNvbnN0
IG9wdXNfaW50MzIgICAgICAgICAgICBYWF9RMTdbIE1BWF9OQl9TVUJGUipMVFBfT1JERVIqTFRQ
X09SREVSIF0sIC8qIEkgICAgQ29ycmVsYXRpb24gbWF0cml4IGluIFExOCAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4WF9RMTdbIE1BWF9OQl9TVUJGUipMVFBfT1JE
RVIgXSwgICAgICAgICAgIC8qIEkgICAgQ29ycmVsYXRpb24gdmVjdG9yIGluIFExOCAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzdWJmcl9sZW4sICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMgcGVyIHN1YmZy
YW1lICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHN1YmZyYW1lcyAg
ICAgICAgICAgICAqLwogICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0
ZWN0dXJlICAgICAgICAgICAqLwogKTsKIAogLyogRW50cm9weSBjb25zdHJhaW5lZCBtYXRyaXgt
d2VpZ2h0ZWQgVlEsIGZvciBhIHNpbmdsZSBpbnB1dCBkYXRhIHZlY3RvciAqLwogdm9pZCBzaWxr
X1ZRX1dNYXRfRUNfYygKICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgKmluZCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIGluZGV4IG9mIGJlc3QgY29kZWJvb2sgdmVj
dG9yICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKnJh
dGVfZGlzdF9RMTQsICAgICAgICAgICAgICAgICAvKiBPICAgIGJlc3Qgd2VpZ2h0ZWQgcXVhbnQg
ZXJyb3IgKyBtdSAqIHJhdGUgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAg
ICAgKnJlc19ucmdfUTE1LCAgICAgICAgICAgICAgICAgICAvKiBPICAgIGJlc3QgcmVzaWR1YWwg
ZW5lcmd5ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAg
ICAgICAgICAgKnJhdGVfZGlzdF9ROCwgICAgICAgICAgICAgICAgICAvKiBPICAgIGJlc3QgdG90
YWwgYml0cmF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAg
ICAgICAgICAgICAgICAgKmdhaW5fUTcsICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIHN1
bSBvZiBhYnNvbHV0ZSBMVFAgY29lZmZpY2llbnRzICAgICAgICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludDE2ICAgICAgICAgICAgKmluX1ExNCwgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIGlucHV0IHZlY3RvciB0byBiZSBxdWFudGl6ZWQgICAgICAgICAgICAgICAgKi8KLSAgICBj
b25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKldfUTE4LCAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIHdlaWdodGluZyBtYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKlhYX1ExNywgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIGNvcnJlbGF0aW9uIG1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKnhYX1ExNywgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIGNvcnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDggICAgICAgICAgICAgKmNiX1E3LCAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIGNvZGVib29rICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX3VpbnQ4ICAgICAgICAgICAgKmNiX2dh
aW5fUTcsICAgICAgICAgICAgICAgICAgICAvKiBJICAgIGNvZGVib29rIGVmZmVjdGl2ZSBnYWlu
ICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX3VpbnQ4ICAgICAgICAgICAg
KmNsX1E1LCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIGNvZGUgbGVuZ3RoIGZvciBl
YWNoIGNvZGVib29rIHZlY3RvciAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAg
ICAgICAgbXVfUTksICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIHRyYWRlb2ZmIGJl
dHcuIHdlaWdodGVkIGVycm9yIGFuZCByYXRlICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgc3ViZnJfbGVuLCAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJl
ciBvZiBzYW1wbGVzIHBlciBzdWJmcmFtZSAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVz
X2ludDMyICAgICAgICAgICAgbWF4X2dhaW5fUTcsICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IG1heGltdW0gc3VtIG9mIGFic29sdXRlIExUUCBjb2VmZmljaWVudHMgICAgKi8KLSAgICBvcHVz
X2ludCAgICAgICAgICAgICAgICAgICAgTCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIG51bWJlciBvZiB2ZWN0b3JzIGluIGNvZGVib29rICAgICAgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgTCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIG51bWJlciBvZiB2ZWN0b3JzIGluIGNvZGVib29rICAgICAgICAgICAgICAg
Ki8KICk7CiAKICNpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX1ZRX1dNYXRfRUMpCi0jZGVmaW5l
IHNpbGtfVlFfV01hdF9FQyhpbmQsIHJhdGVfZGlzdF9RMTQsIGdhaW5fUTcsIGluX1ExNCwgV19R
MTgsIGNiX1E3LCBjYl9nYWluX1E3LCBjbF9RNSwgXAotICAgICAgICAgICAgICAgICAgICAgICAg
ICBtdV9ROSwgbWF4X2dhaW5fUTcsIEwsIGFyY2gpIFwKLSAgICAoKHZvaWQpKGFyY2gpLHNpbGtf
VlFfV01hdF9FQ19jKGluZCwgcmF0ZV9kaXN0X1ExNCwgZ2Fpbl9RNywgaW5fUTE0LCBXX1ExOCwg
Y2JfUTcsIGNiX2dhaW5fUTcsIGNsX1E1LCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgIG11
X1E5LCBtYXhfZ2Fpbl9RNywgTCkpCisjZGVmaW5lIHNpbGtfVlFfV01hdF9FQyhpbmQsIHJlc19u
cmdfUTE1LCByYXRlX2Rpc3RfUTgsIGdhaW5fUTcsIFhYX1ExNywgeFhfUTE3LCBjYl9RNywgY2Jf
Z2Fpbl9RNywgY2xfUTUsIHN1YmZyX2xlbiwgbWF4X2dhaW5fUTcsIEwsIGFyY2gpIFwKKyAgICAo
KHZvaWQpKGFyY2gpLHNpbGtfVlFfV01hdF9FQ19jKGluZCwgcmVzX25yZ19RMTUsIHJhdGVfZGlz
dF9ROCwgZ2Fpbl9RNywgWFhfUTE3LCB4WF9RMTcsIGNiX1E3LCBjYl9nYWluX1E3LCBjbF9RNSwg
c3ViZnJfbGVuLCBtYXhfZ2Fpbl9RNywgTCkpCiAjZW5kaWYKIAogLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KQEAgLTI0MywxNCArMjQ3LDE0IEBAIHZvaWQgc2lsa19WUV9X
TWF0X0VDX2MoCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogCiB2b2lk
IHNpbGtfTlNRX2MoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAg
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0Vu
Y0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0
YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAg
ICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Eg
c3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAg
ICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9P
ICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQz
MiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgIHgxNltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1
c19pbnQ4ICAgICAgICAgICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogTyAgICBRdWFudGl6ZWQgcHVsc2Ugc2lnbmFsICAgICAgICAgICovCiAg
ICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIFByZWRDb2VmX1ExMlsgMiAqIE1BWF9MUENf
T1JERVIgXSwgICAgICAgICAgLyogSSAgICBTaG9ydCB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAg
ICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIExUUENvZWZfUTE0WyBMVFBfT1JE
RVIgKiBNQVhfTkJfU1VCRlIgXSwgICAgLyogSSAgICBMb25nIHRlcm0gcHJlZGljdGlvbiBjb2Vm
cyAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFSMl9RMTNbIE1BWF9O
Ql9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSBOb2lzZSBzaGFwaW5nIGNvZWZz
ICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFSX1ExM1sg
TUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAvKiBJICBOb2lzZSBzaGFwaW5n
IGNvZWZzICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIEhh
cm1TaGFwZUdhaW5fUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgLyogSSAgICBMb25nIHRl
cm0gc2hhcGluZyBjb2VmcyAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICAgIFRpbHRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAgLyogSSAgICBT
cGVjdHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgICAgICAgIExGX3NocF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgLyog
SSAgICBMb3cgZnJlcXVlbmN5IHNoYXBpbmcgY29lZnMgICAgICovCkBAIC0yNjEsMjIgKzI2NSwy
MiBAQCB2b2lkIHNpbGtfTlNRX2MoCiApOwogCiAjaWYgIWRlZmluZWQoT1ZFUlJJREVfc2lsa19O
U1EpCi0jZGVmaW5lIHNpbGtfTlNRKHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHhfUTMsIHB1bHNl
cywgUHJlZENvZWZfUTEyLCBMVFBDb2VmX1ExNCwgQVIyX1ExMywgXAorI2RlZmluZSBzaWxrX05T
UShwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEyLCBMVFBD
b2VmX1ExNCwgQVJfUTEzLCBcCiAgICAgICAgICAgICAgICAgICAgSGFybVNoYXBlR2Fpbl9RMTQs
IFRpbHRfUTE0LCBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBpdGNoTCwgTGFtYmRhX1ExMCwgTFRQ
X3NjYWxlX1ExNCwgYXJjaCkgXAotICAgICgodm9pZCkoYXJjaCksc2lsa19OU1FfYyhwc0VuY0Ms
IE5TUSwgcHNJbmRpY2VzLCB4X1EzLCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQQ29lZl9RMTQs
IEFSMl9RMTMsIFwKKyAgICAoKHZvaWQpKGFyY2gpLHNpbGtfTlNRX2MocHNFbmNDLCBOU1EsIHBz
SW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQQ29lZl9RMTQsIEFSX1ExMywg
XAogICAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hw
X1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIExhbWJkYV9RMTAsIExUUF9zY2FsZV9RMTQpKQogI2Vu
ZGlmCiAKIC8qIE5vaXNlIHNoYXBpbmcgdXNpbmcgZGVsYXllZCBkZWNpc2lvbiAqLwogdm9pZCBz
aWxrX05TUV9kZWxfZGVjX2MoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0Vu
Y0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0
YXRlICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAg
ICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNv
ZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAg
ICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9P
ICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2Vz
ICAgICAgICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSS9PICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1
c19pbnQzMiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCisgICAgY29u
c3Qgb3B1c19pbnQxNiAgICAgICAgICAgIHgxNltdLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogTyAgICBRdWFudGl6ZWQgcHVsc2Ugc2lnbmFsICAgICAgICAg
ICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIFByZWRDb2VmX1ExMlsgMiAqIE1B
WF9MUENfT1JERVIgXSwgICAgICAgICAgLyogSSAgICBTaG9ydCB0ZXJtIHByZWRpY3Rpb24gY29l
ZnMgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIExUUENvZWZfUTE0WyBM
VFBfT1JERVIgKiBNQVhfTkJfU1VCRlIgXSwgICAgLyogSSAgICBMb25nIHRlcm0gcHJlZGljdGlv
biBjb2VmcyAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFSMl9RMTNb
IE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSBOb2lzZSBzaGFwaW5n
IGNvZWZzICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFS
X1ExM1sgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAvKiBJICBOb2lzZSBz
aGFwaW5nIGNvZWZzICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICAgIEhhcm1TaGFwZUdhaW5fUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgLyogSSAgICBM
b25nIHRlcm0gc2hhcGluZyBjb2VmcyAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICAgIFRpbHRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAgLyog
SSAgICBTcGVjdHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19p
bnQzMiAgICAgICAgICAgIExGX3NocF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAg
ICAgLyogSSAgICBMb3cgZnJlcXVlbmN5IHNoYXBpbmcgY29lZnMgICAgICovCkBAIC0yODcsOSAr
MjkxLDkgQEAgdm9pZCBzaWxrX05TUV9kZWxfZGVjX2MoCiApOwogCiAjaWYgIWRlZmluZWQoT1ZF
UlJJREVfc2lsa19OU1FfZGVsX2RlYykKLSNkZWZpbmUgc2lsa19OU1FfZGVsX2RlYyhwc0VuY0Ms
IE5TUSwgcHNJbmRpY2VzLCB4X1EzLCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQQ29lZl9RMTQs
IEFSMl9RMTMsIFwKKyNkZWZpbmUgc2lsa19OU1FfZGVsX2RlYyhwc0VuY0MsIE5TUSwgcHNJbmRp
Y2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEyLCBMVFBDb2VmX1ExNCwgQVJfUTEzLCBcCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsIExG
X3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0LCBh
cmNoKSBcCi0gICAgKCh2b2lkKShhcmNoKSxzaWxrX05TUV9kZWxfZGVjX2MocHNFbmNDLCBOU1Es
IHBzSW5kaWNlcywgeF9RMywgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0LCBBUjJf
UTEzLCBcCisgICAgKCh2b2lkKShhcmNoKSxzaWxrX05TUV9kZWxfZGVjX2MocHNFbmNDLCBOU1Es
IHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQQ29lZl9RMTQsIEFSX1Ex
MywgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgSGFybVNoYXBlR2Fpbl9RMTQsIFRpbHRf
UTE0LCBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBpdGNoTCwgTGFtYmRhX1ExMCwgTFRQX3NjYWxl
X1ExNCkpCiAjZW5kaWYKIApAQCAtMzQ2LDYgKzM1MCw3IEBAIHZvaWQgc2lsa19OTFNGX1ZRKAog
ICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBlcnJfUTI2W10sICAgICAgICAgICAgICAg
ICAgICAgIC8qIE8gICAgUXVhbnRpemF0aW9uIGVycm9ycyBbS10gICAgICAgICAgICAgICAgICAg
ICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBpbl9RMTVbXSwgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgdmVjdG9ycyB0byBiZSBxdWFudGl6ZWQgW0xQQ19v
cmRlcl0gICAqLwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICAgICBwQ0JfUThbXSwgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29kZWJvb2sgdmVjdG9ycyBbSypMUENfb3JkZXJd
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBwV2dodF9R
OVtdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29kZWJvb2sgd2VpZ2h0cyBbSypMUENf
b3JkZXJdICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBL
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIGNvZGVib29r
IHZlY3RvcnMgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICBMUENfb3JkZXIgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIExQ
Q3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9t
aXBzL05TUV9kZWxfZGVjX21pcHNyMS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21pcHMvTlNRX2RlbF9kZWNfbWlwc3IxLmgK
aW5kZXggYWQxY2ZlMmE5YjA4NDEwMTI3MDFiMWZlNzdkN2RhMmYwNDRkMGIyNi4uY2Q3MDcxM2E4
ZjVkOTQ1M2VjNjJkNzc4NmJjMzBhOTBhYmRkYzQwOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21pcHMvTlNR
X2RlbF9kZWNfbWlwc3IxLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21pcHMvTlNRX2RlbF9kZWNfbWlwc3IxLmgKQEAg
LTYxLDcgKzYxLDcgQEAgc3RhdGljIGlubGluZSB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRp
emVyX2RlbF9kZWMoCiAgICAgb3B1c19pbnQgICAgICAgICAgICBwcmVkaWN0TFBDT3JkZXIsICAg
ICAgICAvKiBJICAgIFByZWRpY3Rpb24gZmlsdGVyIG9yZGVyICAgICAgICAgICAgICovCiAgICAg
b3B1c19pbnQgICAgICAgICAgICB3YXJwaW5nX1ExNiwgICAgICAgICAgICAvKiBJICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAg
ICBuU3RhdGVzRGVsYXllZERlY2lzaW9uLCAvKiBJICAgIE51bWJlciBvZiBzdGF0ZXMgaW4gZGVj
aXNpb24gdHJlZSAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9idWZfaWR4LCAg
ICAgICAgICAvKiBJICAgIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZlcnMgICovCisg
ICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9idWZfaWR4LCAgICAgICAgICAvKiBJL08gIElu
ZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZlcnMgICovCiAgICAgb3B1c19pbnQgICAgICAg
ICAgICBkZWNpc2lvbkRlbGF5LCAgICAgICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgaW50ICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiApCkBAIC0zMjMsOCArMzIzLDkgQEAgc3RhdGljIGlubGluZSB2b2lkIHNpbGtfbm9pc2Vfc2hh
cGVfcXVhbnRpemVyX2RlbF9kZWMoCiAgICAgICAgICAgICBwc1NTWyAxIF0ueHFfUTE0ICAgICAg
ID0geHFfUTE0OwogICAgICAgICB9CiAKLSAgICAgICAgKnNtcGxfYnVmX2lkeCAgPSAoICpzbXBs
X2J1Zl9pZHggLSAxICkgJiBERUNJU0lPTl9ERUxBWV9NQVNLOyAgICAgICAgICAgICAgICAgICAv
KiBJbmRleCB0byBuZXdlc3Qgc2FtcGxlcyAgICAgICAgICAgICAgKi8KLSAgICAgICAgbGFzdF9z
bXBsZV9pZHggPSAoICpzbXBsX2J1Zl9pZHggKyBkZWNpc2lvbkRlbGF5ICkgJiBERUNJU0lPTl9E
RUxBWV9NQVNLOyAgICAgICAvKiBJbmRleCB0byBkZWNpc2lvbkRlbGF5IG9sZCBzYW1wbGVzICAg
Ki8KKyAgICAgICAgKnNtcGxfYnVmX2lkeCAgPSAoICpzbXBsX2J1Zl9pZHggLSAxICkgJSBERUNJ
U0lPTl9ERUxBWTsKKyAgICAgICAgaWYoICpzbXBsX2J1Zl9pZHggPCAwICkgKnNtcGxfYnVmX2lk
eCArPSBERUNJU0lPTl9ERUxBWTsKKyAgICAgICAgbGFzdF9zbXBsZV9pZHggPSAoICpzbXBsX2J1
Zl9pZHggKyBkZWNpc2lvbkRlbGF5ICkgJSBERUNJU0lPTl9ERUxBWTsKIAogICAgICAgICAvKiBG
aW5kIHdpbm5lciAqLwogICAgICAgICBSRG1pbl9RMTAgPSBwc1NhbXBsZVN0YXRlWyAwIF1bIDAg
XS5SRF9RMTA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWlwcy9zaWdwcm9jX2ZpeF9taXBzcjEuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9taXBzL3NpZ3Byb2NfZml4X21pcHNyMS5oCmluZGV4IDNiMGE2OTUzNjU2ZDk3MzE4ZjNhYTgz
ZWJiYTlmMjA4YmUxYmQ4OGIuLjUxNTIwYzBhNmZkNTUwY2I4NzI5MDYyNDRlNmFmYzFjMGNjMTM4
YWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9taXBzL3NpZ3Byb2NfZml4X21pcHNyMS5oCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9t
aXBzL3NpZ3Byb2NfZml4X21pcHNyMS5oCkBAIC0yOCwxMSArMjgsNiBAQCBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KICNpZm5kZWYgU0lMS19TSUdQUk9DX0ZJWF9NSVBTUjFfSAogI2RlZmlu
ZSBTSUxLX1NJR1BST0NfRklYX01JUFNSMV9ICiAKLSNpZmRlZiAgX19jcGx1c3BsdXMKLWV4dGVy
biAiQyIKLXsKLSNlbmRpZgotCiAjdW5kZWYgc2lsa19TQVQxNgogc3RhdGljIGlubGluZSBzaG9y
dCBpbnQgc2lsa19TQVQxNihpbnQgYSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9wcm9jZXNzX05MU0Zz
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvcHJvY2Vzc19OTFNGcy5jCmluZGV4IDBhYjcxZjAxNjM0MDdmODU0YmM0MmYwNmE1
OTAwZTZiMWFiZTI5MzcuLjJmMTBmOGRmNWIzZDcwZTU4MjNmZTJkYjU1YjViMTE3NGIyNmFmYmIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9wcm9jZXNzX05MU0ZzLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3Byb2Nlc3NfTkxTRnMu
YwpAQCAtODksNyArODksNyBAQCB2b2lkIHNpbGtfcHJvY2Vzc19OTFNGcygKICAgICAgICAgTkxT
Rl9tdV9RMjAsIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9ycywgcHNFbmNDLT5pbmRpY2VzLnNp
Z25hbFR5cGUgKTsKIAogICAgIC8qIENvbnZlcnQgcXVhbnRpemVkIE5MU0ZzIGJhY2sgdG8gTFBD
IGNvZWZmaWNpZW50cyAqLwotICAgIHNpbGtfTkxTRjJBKCBQcmVkQ29lZl9RMTJbIDEgXSwgcE5M
U0ZfUTE1LCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciApOworICAgIHNpbGtfTkxTRjJBKCBQcmVk
Q29lZl9RMTJbIDEgXSwgcE5MU0ZfUTE1LCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciwgcHNFbmND
LT5hcmNoICk7CiAKICAgICBpZiggZG9JbnRlcnBvbGF0ZSApIHsKICAgICAgICAgLyogQ2FsY3Vs
YXRlIHRoZSBpbnRlcnBvbGF0ZWQsIHF1YW50aXplZCBMU0YgdmVjdG9yIGZvciB0aGUgZmlyc3Qg
aGFsZiAqLwpAQCAtOTcsNyArOTcsNyBAQCB2b2lkIHNpbGtfcHJvY2Vzc19OTFNGcygKICAgICAg
ICAgICAgIHBzRW5jQy0+aW5kaWNlcy5OTFNGSW50ZXJwQ29lZl9RMiwgcHNFbmNDLT5wcmVkaWN0
TFBDT3JkZXIgKTsKIAogICAgICAgICAvKiBDb252ZXJ0IGJhY2sgdG8gTFBDIGNvZWZmaWNpZW50
cyAqLwotICAgICAgICBzaWxrX05MU0YyQSggUHJlZENvZWZfUTEyWyAwIF0sIHBOTFNGMF90ZW1w
X1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIgKTsKKyAgICAgICAgc2lsa19OTFNGMkEoIFBy
ZWRDb2VmX1ExMlsgMCBdLCBwTkxTRjBfdGVtcF9RMTUsIHBzRW5jQy0+cHJlZGljdExQQ09yZGVy
LCBwc0VuY0MtPmFyY2ggKTsKIAogICAgIH0gZWxzZSB7CiAgICAgICAgIC8qIENvcHkgTFBDIGNv
ZWZmaWNpZW50cyBmb3IgZmlyc3QgaGFsZiBmcm9tIHNlY29uZCBoYWxmICovCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvcXVhbnRfTFRQX2dhaW5zLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvcXVhbnRfTFRQX2dhaW5zLmMKaW5kZXggNTEz
YThjNDQ2OGZmYzRjODdhNzQxNDYwMDY1ZjYzZWJlNjc3NTJhNi4uZDZiOGVmZjhkMTg2NGNjZmEy
MWEyNmE2YmM1OTdlYmMyZGJjZWRiMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3F1YW50X0xUUF9nYWlucy5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9xdWFudF9MVFBfZ2FpbnMuYwpAQCAtMzMsMTQgKzMzLDE1IEBAIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgInR1bmluZ19wYXJhbWV0ZXJzLmgiCiAKIHZv
aWQgc2lsa19xdWFudF9MVFBfZ2FpbnMoCi0gICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAg
IEJfUTE0WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgICAgICAgLyogSS9PICAodW4p
cXVhbnRpemVkIExUUCBnYWlucyAgICAgICAgICovCisgICAgb3B1c19pbnQxNiAgICAgICAgICAg
ICAgICAgIEJfUTE0WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgICAgICAgLyogTyAg
ICBRdWFudGl6ZWQgTFRQIGdhaW5zICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQ4ICAgICAg
ICAgICAgICAgICAgIGNia19pbmRleFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAg
LyogTyAgICBDb2RlYm9vayBJbmRleCAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQ4
ICAgICAgICAgICAgICAgICAgICpwZXJpb2RpY2l0eV9pbmRleCwgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogTyAgICBQZXJpb2RpY2l0eSBJbmRleCAgICAgICAgICAgICAgICovCiAgICAgb3B1
c19pbnQzMiAgICAgICAgICAgICAgICAgICpzdW1fbG9nX2dhaW5fUTcsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSS9PICBDdW11bGF0aXZlIG1heCBwcmVkaWN0aW9uIGdhaW4gICovCi0g
ICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIFdfUTE4WyBNQVhfTkJfU1VCRlIqTFRQX09S
REVSKkxUUF9PUkRFUiBdLCAgLyogSSAgICBFcnJvciBXZWlnaHRzIGluIFExOCAgICAgICAgICAg
ICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIG11X1E5LCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBNdSB2YWx1ZSAoUi9EIHRyYWRlb2ZmKSAg
ICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxvd0NvbXBsZXhpdHks
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBGbGFnIGZvciBsb3cgY29tcGxl
eGl0eSAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG5iX3N1YmZy
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2Ygc3Vi
ZnJhbWVzICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICpw
cmVkX2dhaW5fZEJfUTcsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBMVFAgcHJl
ZGljdGlvbiBnYWluICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAg
ICAgIFhYX1ExN1sgTUFYX05CX1NVQkZSKkxUUF9PUkRFUipMVFBfT1JERVIgXSwgLyogSSAgICBD
b3JyZWxhdGlvbiBtYXRyaXggaW4gUTE4ICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgICAgICAgIHhYX1ExN1sgTUFYX05CX1NVQkZSKkxUUF9PUkRFUiBdLCAgICAgICAgICAgLyog
SSAgICBDb3JyZWxhdGlvbiB2ZWN0b3IgaW4gUTE4ICAgICAgICovCisgICAgY29uc3Qgb3B1c19p
bnQgICAgICAgICAgICAgIHN1YmZyX2xlbiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBOdW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3ViZnJhbWUgICovCisgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAgICovCiAgICAg
aW50ICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2ggICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICov
CiApCiB7CkBAIC00OSwxNiArNTAsMTYgQEAgdm9pZCBzaWxrX3F1YW50X0xUUF9nYWlucygKICAg
ICBjb25zdCBvcHVzX3VpbnQ4ICAgICAqY2xfcHRyX1E1OwogICAgIGNvbnN0IG9wdXNfaW50OCAg
ICAgICpjYmtfcHRyX1E3OwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICpjYmtfZ2Fpbl9wdHJf
UTc7Ci0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgKmJfUTE0X3B0cjsKLSAgICBjb25zdCBvcHVz
X2ludDMyICAgICAqV19RMThfcHRyOwotICAgIG9wdXNfaW50MzIgICAgICAgICAgIHJhdGVfZGlz
dF9RMTRfc3ViZnIsIHJhdGVfZGlzdF9RMTQsIG1pbl9yYXRlX2Rpc3RfUTE0OwotICAgIG9wdXNf
aW50MzIgICAgICAgICAgIHN1bV9sb2dfZ2Fpbl90bXBfUTcsIGJlc3Rfc3VtX2xvZ19nYWluX1E3
LCBtYXhfZ2Fpbl9RNywgZ2Fpbl9RNzsKKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAqWFhfUTE3
X3B0ciwgKnhYX1ExN19wdHI7CisgICAgb3B1c19pbnQzMiAgICAgICAgICAgcmVzX25yZ19RMTVf
c3ViZnIsIHJlc19ucmdfUTE1LCByYXRlX2Rpc3RfUTdfc3ViZnIsIHJhdGVfZGlzdF9RNywgbWlu
X3JhdGVfZGlzdF9RNzsKKyAgICBvcHVzX2ludDMyICAgICAgICAgICBzdW1fbG9nX2dhaW5fdG1w
X1E3LCBiZXN0X3N1bV9sb2dfZ2Fpbl9RNywgbWF4X2dhaW5fUTc7CisgICAgb3B1c19pbnQgICAg
ICAgICAgICAgZ2Fpbl9RNzsKIAogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKiovCiAgICAgLyogaXRlcmF0ZSBvdmVyIGRpZmZlcmVudCBjb2Rl
Ym9va3Mgd2l0aCBkaWZmZXJlbnQgKi8KICAgICAvKiByYXRlcy9kaXN0b3J0aW9ucywgYW5kIGNo
b29zZSBiZXN0ICovCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KLSAgICBtaW5fcmF0ZV9kaXN0X1ExNCA9IHNpbGtfaW50MzJfTUFYOwor
ICAgIG1pbl9yYXRlX2Rpc3RfUTcgPSBzaWxrX2ludDMyX01BWDsKICAgICBiZXN0X3N1bV9sb2df
Z2Fpbl9RNyA9IDA7CiAgICAgZm9yKCBrID0gMDsgayA8IDM7IGsrKyApIHsKICAgICAgICAgLyog
U2FmZXR5IG1hcmdpbiBmb3IgcGl0Y2ggZ2FpbiBjb250cm9sLCB0byB0YWtlIGludG8gYWNjb3Vu
dCBmYWN0b3JzCkBAIC03MCw1MyArNzEsNDcgQEAgdm9pZCBzaWxrX3F1YW50X0xUUF9nYWlucygK
ICAgICAgICAgY2JrX2dhaW5fcHRyX1E3ID0gc2lsa19MVFBfdnFfZ2Fpbl9wdHJzX1E3WyBrIF07
CiAgICAgICAgIGNia19zaXplICAgPSBzaWxrX0xUUF92cV9zaXplc1sgICAgICAgICAgayBdOwog
Ci0gICAgICAgIC8qIFNldCB1cCBwb2ludGVyIHRvIGZpcnN0IHN1YmZyYW1lICovCi0gICAgICAg
IFdfUTE4X3B0ciA9IFdfUTE4OwotICAgICAgICBiX1ExNF9wdHIgPSBCX1ExNDsKKyAgICAgICAg
LyogU2V0IHVwIHBvaW50ZXJzIHRvIGZpcnN0IHN1YmZyYW1lICovCisgICAgICAgIFhYX1ExN19w
dHIgPSBYWF9RMTc7CisgICAgICAgIHhYX1ExN19wdHIgPSB4WF9RMTc7CiAKLSAgICAgICAgcmF0
ZV9kaXN0X1ExNCA9IDA7CisgICAgICAgIHJlc19ucmdfUTE1ID0gMDsKKyAgICAgICAgcmF0ZV9k
aXN0X1E3ID0gMDsKICAgICAgICAgc3VtX2xvZ19nYWluX3RtcF9RNyA9ICpzdW1fbG9nX2dhaW5f
UTc7CiAgICAgICAgIGZvciggaiA9IDA7IGogPCBuYl9zdWJmcjsgaisrICkgewogICAgICAgICAg
ICAgbWF4X2dhaW5fUTcgPSBzaWxrX2xvZzJsaW4oICggU0lMS19GSVhfQ09OU1QoIE1BWF9TVU1f
TE9HX0dBSU5fREIgLyA2LjAsIDcgKSAtIHN1bV9sb2dfZ2Fpbl90bXBfUTcgKQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgU0lMS19GSVhfQ09OU1QoIDcsIDcgKSAp
IC0gZ2Fpbl9zYWZldHk7Ci0KICAgICAgICAgICAgIHNpbGtfVlFfV01hdF9FQygKICAgICAgICAg
ICAgICAgICAmdGVtcF9pZHhbIGogXSwgICAgICAgICAvKiBPICAgIGluZGV4IG9mIGJlc3QgY29k
ZWJvb2sgdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgICAg
ICAmcmF0ZV9kaXN0X1ExNF9zdWJmciwgICAvKiBPICAgIGJlc3Qgd2VpZ2h0ZWQgcXVhbnRpemF0
aW9uIGVycm9yICsgbXUgKiByYXRlICAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICAmcmVz
X25yZ19RMTVfc3ViZnIsICAgICAvKiBPICAgIHJlc2lkdWFsIGVuZXJneSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICAmcmF0ZV9kaXN0
X1E3X3N1YmZyLCAgICAvKiBPICAgIGJlc3Qgd2VpZ2h0ZWQgcXVhbnRpemF0aW9uIGVycm9yICsg
bXUgKiByYXRlICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICAmZ2Fpbl9RNywgICAgICAg
ICAgICAgICAvKiBPICAgIHN1bSBvZiBhYnNvbHV0ZSBMVFAgY29lZmZpY2llbnRzICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgICAgICBiX1ExNF9wdHIsICAgICAgICAgICAg
ICAvKiBJICAgIGlucHV0IHZlY3RvciB0byBiZSBxdWFudGl6ZWQgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICAgICAgICAgICAgICBXX1ExOF9wdHIsICAgICAgICAgICAgICAvKiBJ
ICAgIHdlaWdodGluZyBtYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICAgICAgICAgICAgICBYWF9RMTdfcHRyLCAgICAgICAgICAgICAvKiBJICAgIGNv
cnJlbGF0aW9uIG1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICAgICAgICAgICAgICB4WF9RMTdfcHRyLCAgICAgICAgICAgICAvKiBJICAgIGNvcnJlbGF0
aW9uIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICAg
ICAgICAgICAgICBjYmtfcHRyX1E3LCAgICAgICAgICAgICAvKiBJICAgIGNvZGVib29rICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgICAg
ICAgICBjYmtfZ2Fpbl9wdHJfUTcsICAgICAgICAvKiBJICAgIGNvZGVib29rIGVmZmVjdGl2ZSBn
YWlucyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICBj
bF9wdHJfUTUsICAgICAgICAgICAgICAvKiBJICAgIGNvZGUgbGVuZ3RoIGZvciBlYWNoIGNvZGVi
b29rIHZlY3RvciAgICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgICAgICBtdV9ROSwg
ICAgICAgICAgICAgICAgICAvKiBJICAgIHRyYWRlb2ZmIGJldHdlZW4gd2VpZ2h0ZWQgZXJyb3Ig
YW5kIHJhdGUgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICBzdWJmcl9sZW4sICAg
ICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzYW1wbGVzIHBlciBzdWJmcmFtZSAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICBtYXhfZ2Fpbl9RNywgICAgICAg
ICAgICAvKiBJICAgIG1heGltdW0gc3VtIG9mIGFic29sdXRlIExUUCBjb2VmZmljaWVudHMgICAg
ICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICBjYmtfc2l6ZSwgICAgICAgICAgICAgICAv
KiBJICAgIG51bWJlciBvZiB2ZWN0b3JzIGluIGNvZGVib29rICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICAgICAgICAgICAgICk7CiAKLSAgICAgICAgICAgIHJhdGVfZGlzdF9RMTQgPSBzaWxrX0FE
RF9QT1NfU0FUMzIoIHJhdGVfZGlzdF9RMTQsIHJhdGVfZGlzdF9RMTRfc3ViZnIgKTsKKyAgICAg
ICAgICAgIHJlc19ucmdfUTE1ICA9IHNpbGtfQUREX1BPU19TQVQzMiggcmVzX25yZ19RMTUsIHJl
c19ucmdfUTE1X3N1YmZyICk7CisgICAgICAgICAgICByYXRlX2Rpc3RfUTcgPSBzaWxrX0FERF9Q
T1NfU0FUMzIoIHJhdGVfZGlzdF9RNywgcmF0ZV9kaXN0X1E3X3N1YmZyICk7CiAgICAgICAgICAg
ICBzdW1fbG9nX2dhaW5fdG1wX1E3ID0gc2lsa19tYXgoMCwgc3VtX2xvZ19nYWluX3RtcF9RNwog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIHNpbGtfbGluMmxvZyggZ2Fpbl9zYWZl
dHkgKyBnYWluX1E3ICkgLSBTSUxLX0ZJWF9DT05TVCggNywgNyApKTsKIAotICAgICAgICAgICAg
Yl9RMTRfcHRyICs9IExUUF9PUkRFUjsKLSAgICAgICAgICAgIFdfUTE4X3B0ciArPSBMVFBfT1JE
RVIgKiBMVFBfT1JERVI7CisgICAgICAgICAgICBYWF9RMTdfcHRyICs9IExUUF9PUkRFUiAqIExU
UF9PUkRFUjsKKyAgICAgICAgICAgIHhYX1ExN19wdHIgKz0gTFRQX09SREVSOwogICAgICAgICB9
CiAKLSAgICAgICAgLyogQXZvaWQgbmV2ZXIgZmluZGluZyBhIGNvZGVib29rICovCi0gICAgICAg
IHJhdGVfZGlzdF9RMTQgPSBzaWxrX21pbiggc2lsa19pbnQzMl9NQVggLSAxLCByYXRlX2Rpc3Rf
UTE0ICk7Ci0KLSAgICAgICAgaWYoIHJhdGVfZGlzdF9RMTQgPCBtaW5fcmF0ZV9kaXN0X1ExNCAp
IHsKLSAgICAgICAgICAgIG1pbl9yYXRlX2Rpc3RfUTE0ID0gcmF0ZV9kaXN0X1ExNDsKKyAgICAg
ICAgaWYoIHJhdGVfZGlzdF9RNyA8PSBtaW5fcmF0ZV9kaXN0X1E3ICkgeworICAgICAgICAgICAg
bWluX3JhdGVfZGlzdF9RNyA9IHJhdGVfZGlzdF9RNzsKICAgICAgICAgICAgICpwZXJpb2RpY2l0
eV9pbmRleCA9IChvcHVzX2ludDgpazsKICAgICAgICAgICAgIHNpbGtfbWVtY3B5KCBjYmtfaW5k
ZXgsIHRlbXBfaWR4LCBuYl9zdWJmciAqIHNpemVvZiggb3B1c19pbnQ4ICkgKTsKICAgICAgICAg
ICAgIGJlc3Rfc3VtX2xvZ19nYWluX1E3ID0gc3VtX2xvZ19nYWluX3RtcF9RNzsKICAgICAgICAg
fQotCi0gICAgICAgIC8qIEJyZWFrIGVhcmx5IGluIGxvdy1jb21wbGV4aXR5IG1vZGUgaWYgcmF0
ZSBkaXN0b3J0aW9uIGlzIGJlbG93IHRocmVzaG9sZCAqLwotICAgICAgICBpZiggbG93Q29tcGxl
eGl0eSAmJiAoIHJhdGVfZGlzdF9RMTQgPCBzaWxrX0xUUF9nYWluX21pZGRsZV9hdmdfUkRfUTE0
ICkgKSB7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQogICAgIH0KIAogICAgIGNia19w
dHJfUTcgPSBzaWxrX0xUUF92cV9wdHJzX1E3WyAqcGVyaW9kaWNpdHlfaW5kZXggXTsKQEAgLTEy
NSw1ICsxMjAsMTMgQEAgdm9pZCBzaWxrX3F1YW50X0xUUF9nYWlucygKICAgICAgICAgICAgIEJf
UTE0WyBqICogTFRQX09SREVSICsgayBdID0gc2lsa19MU0hJRlQoIGNia19wdHJfUTdbIGNia19p
bmRleFsgaiBdICogTFRQX09SREVSICsgayBdLCA3ICk7CiAgICAgICAgIH0KICAgICB9CisKKyAg
ICBpZiggbmJfc3ViZnIgPT0gMiApIHsKKyAgICAgICAgcmVzX25yZ19RMTUgPSBzaWxrX1JTSElG
VDMyKCByZXNfbnJnX1ExNSwgMSApOworICAgIH0gZWxzZSB7CisgICAgICAgIHJlc19ucmdfUTE1
ID0gc2lsa19SU0hJRlQzMiggcmVzX25yZ19RMTUsIDIgKTsKKyAgICB9CisKICAgICAqc3VtX2xv
Z19nYWluX1E3ID0gYmVzdF9zdW1fbG9nX2dhaW5fUTc7CisgICAgKnByZWRfZ2Fpbl9kQl9RNyA9
IChvcHVzX2ludClzaWxrX1NNVUxCQiggLTMsIHNpbGtfbGluMmxvZyggcmVzX25yZ19RMTUgKSAt
ICggMTUgPDwgNyApICk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvc3RydWN0cy5oIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3N0cnVj
dHMuaAppbmRleCA4Mjc4MjlkYzZmMzJjZTEzNDg1YmUxN2E3MWVmYzM5NjNkN2M0MjI0Li40ZmY1
OTBiMDRjYWJhNTA4MzVmY2QxODAwOTQzN2JjNzkwYWFhYWFlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvc3Ry
dWN0cy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9zdHJ1Y3RzLmgKQEAgLTQ4LDYgKzQ4LDcgQEAgdHlwZWRlZiBzdHJ1
Y3QgewogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBzTFBDX1ExNFsgTUFYX1NVQl9G
UkFNRV9MRU5HVEggKyBOU1FfTFBDX0JVRl9MRU5HVEggXTsKICAgICBvcHVzX2ludDMyICAgICAg
ICAgICAgICAgICAgc0FSMl9RMTRbIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKICAgICBvcHVzX2lu
dDMyICAgICAgICAgICAgICAgICAgc0xGX0FSX3NocF9RMTQ7CisgICAgb3B1c19pbnQzMiAgICAg
ICAgICAgICAgICAgIHNEaWZmX3NocF9RMTQ7CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICAgIGxhZ1ByZXY7CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIHNMVFBfYnVmX2lk
eDsKICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgc0xUUF9zaHBfYnVmX2lkeDsKQEAg
LTg2LDYgKzg3LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIGNvbnN0IG9wdXNfaW50MTYgICAg
ICAgICAgICAgcXVhbnRTdGVwU2l6ZV9RMTY7CiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAg
ICAgICBpbnZRdWFudFN0ZXBTaXplX1E2OwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICAg
ICAgKkNCMV9OTFNGX1E4OworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgKkNCMV9X
Z2h0X1E5OwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICAgICAgKkNCMV9pQ0RGOwogICAg
IGNvbnN0IG9wdXNfdWludDggICAgICAgICAgICAgKnByZWRfUTg7CiAgICAgY29uc3Qgb3B1c191
aW50OCAgICAgICAgICAgICAqZWNfc2VsOwpAQCAtMTY5LDggKzE3MSw2IEBAIHR5cGVkZWYgc3Ry
dWN0IHsKICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgIHBpdGNoRXN0aW1hdGlvbkNv
bXBsZXhpdHk7ICAgICAgICAgLyogQ29tcGxleGl0eSBsZXZlbCBmb3IgcGl0Y2ggZXN0aW1hdG9y
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgICAgcGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXI7ICAgICAgICAgICAvKiBXaGl0ZW5pbmcg
ZmlsdGVyIG9yZGVyIGZvciBwaXRjaCBlc3RpbWF0b3IgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICBwaXRjaEVzdGltYXRpb25UaHJlc2hv
bGRfUTE2OyAgICAgIC8qIFRocmVzaG9sZCBmb3IgcGl0Y2ggZXN0aW1hdG9yICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAg
ICAgIExUUFF1YW50TG93Q29tcGxleGl0eTsgICAgICAgICAgICAgLyogRmxhZyBmb3IgbG93IGNv
bXBsZXhpdHkgTFRQIHF1YW50aXphdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgbXVfTFRQX1E5OyAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBSYXRlLWRpc3RvcnRpb24gdHJhZGVvZmYgaW4gTFRQIHF1YW50aXphdGlvbiAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICBz
dW1fbG9nX2dhaW5fUTc7ICAgICAgICAgICAgICAgICAgIC8qIEN1bXVsYXRpdmUgbWF4IHByZWRp
Y3Rpb24gZ2FpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVz
X2ludCAgICAgICAgICAgICAgICAgICAgIE5MU0ZfTVNWUV9TdXJ2aXZvcnM7ICAgICAgICAgICAg
ICAgLyogTnVtYmVyIG9mIHN1cnZpdm9ycyBpbiBOTFNGIE1TVlEgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgZmlyc3Rf
ZnJhbWVfYWZ0ZXJfcmVzZXQ7ICAgICAgICAgICAvKiBGbGFnIGZvciBkZWFjdGl2YXRpbmcgTkxT
RiBpbnRlcnBvbGF0aW9uLCBwaXRjaCBwcmVkaWN0aW9uICAgICAgICovCkBAIC0zMDEsNiArMzAx
LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIC8qIFN0dWZmIHVzZWQgZm9yIFBMQyAqLwogICAg
IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsb3NzQ250OwogICAgIG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgICBwcmV2U2lnbmFsVHlwZTsKKyAgICBpbnQgICAgICAgICAgICAgICAgICAg
ICAgICAgYXJjaDsKIAogICAgIHNpbGtfUExDX3N0cnVjdCBzUExDOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvc3VtX3Nxcl9zaGlmdC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3N1bV9zcXJfc2hpZnQuYwppbmRleCAxMjlkZjE5MWQ4
ZGVkNGQ4NGUwMDNhZWEzNmQ5OGE1OWEzNDlkZDQ3Li40ZmQwYzNkN2Q1MzZjM2I1ZTNiYTU0OWQx
OTA0ODgzM2QwMGI0ZTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvc3VtX3Nxcl9zaGlmdC5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9zdW1fc3FyX3NoaWZ0LmMKQEAgLTQxLDQzICs0MSw0MCBAQCB2b2lkIHNpbGtfc3VtX3Nxcl9z
aGlmdCgKICkKIHsKICAgICBvcHVzX2ludCAgIGksIHNoZnQ7Ci0gICAgb3B1c19pbnQzMiBucmdf
dG1wLCBucmc7CisgICAgb3B1c191aW50MzIgbnJnX3RtcDsKKyAgICBvcHVzX2ludDMyIG5yZzsK
IAotICAgIG5yZyAgPSAwOwotICAgIHNoZnQgPSAwOwotICAgIGxlbi0tOwotICAgIGZvciggaSA9
IDA7IGkgPCBsZW47IGkgKz0gMiApIHsKLSAgICAgICAgbnJnID0gc2lsa19TTUxBQkJfb3ZmbHco
IG5yZywgeFsgaSBdLCB4WyBpIF0gKTsKLSAgICAgICAgbnJnID0gc2lsa19TTUxBQkJfb3ZmbHco
IG5yZywgeFsgaSArIDEgXSwgeFsgaSArIDEgXSApOwotICAgICAgICBpZiggbnJnIDwgMCApIHsK
LSAgICAgICAgICAgIC8qIFNjYWxlIGRvd24gKi8KLSAgICAgICAgICAgIG5yZyA9IChvcHVzX2lu
dDMyKXNpbGtfUlNISUZUX3VpbnQoIChvcHVzX3VpbnQzMilucmcsIDIgKTsKLSAgICAgICAgICAg
IHNoZnQgPSAyOwotICAgICAgICAgICAgaSs9MjsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAg
ICB9CisgICAgLyogRG8gYSBmaXJzdCBydW4gd2l0aCB0aGUgbWF4aW11bSBzaGlmdCB3ZSBjb3Vs
ZCBoYXZlLiAqLworICAgIHNoZnQgPSAzMS1zaWxrX0NMWjMyKGxlbik7CisgICAgLyogTGV0J3Mg
YmUgY29uc2VydmF0aXZlIHdpdGggcm91bmRpbmcgYW5kIHN0YXJ0IHdpdGggbnJnPWxlbi4gKi8K
KyAgICBucmcgID0gbGVuOworICAgIGZvciggaSA9IDA7IGkgPCBsZW4gLSAxOyBpICs9IDIgKSB7
CisgICAgICAgIG5yZ190bXAgPSBzaWxrX1NNVUxCQiggeFsgaSBdLCB4WyBpIF0gKTsKKyAgICAg
ICAgbnJnX3RtcCA9IHNpbGtfU01MQUJCX292Zmx3KCBucmdfdG1wLCB4WyBpICsgMSBdLCB4WyBp
ICsgMSBdICk7CisgICAgICAgIG5yZyA9IChvcHVzX2ludDMyKXNpbGtfQUREX1JTSElGVF91aW50
KCBucmcsIG5yZ190bXAsIHNoZnQgKTsKICAgICB9Ci0gICAgZm9yKCA7IGkgPCBsZW47IGkgKz0g
MiApIHsKKyAgICBpZiggaSA8IGxlbiApIHsKKyAgICAgICAgLyogT25lIHNhbXBsZSBsZWZ0IHRv
IHByb2Nlc3MgKi8KKyAgICAgICAgbnJnX3RtcCA9IHNpbGtfU01VTEJCKCB4WyBpIF0sIHhbIGkg
XSApOworICAgICAgICBucmcgPSAob3B1c19pbnQzMilzaWxrX0FERF9SU0hJRlRfdWludCggbnJn
LCBucmdfdG1wLCBzaGZ0ICk7CisgICAgfQorICAgIHNpbGtfYXNzZXJ0KCBucmcgPj0gMCApOwor
ICAgIC8qIE1ha2Ugc3VyZSB0aGUgcmVzdWx0IHdpbGwgZml0IGluIGEgMzItYml0IHNpZ25lZCBp
bnRlZ2VyIHdpdGggdHdvIGJpdHMKKyAgICAgICBvZiBoZWFkcm9vbS4gKi8KKyAgICBzaGZ0ID0g
c2lsa19tYXhfMzIoMCwgc2hmdCszIC0gc2lsa19DTFozMihucmcpKTsKKyAgICBucmcgPSAwOwor
ICAgIGZvciggaSA9IDAgOyBpIDwgbGVuIC0gMTsgaSArPSAyICkgewogICAgICAgICBucmdfdG1w
ID0gc2lsa19TTVVMQkIoIHhbIGkgXSwgeFsgaSBdICk7CiAgICAgICAgIG5yZ190bXAgPSBzaWxr
X1NNTEFCQl9vdmZsdyggbnJnX3RtcCwgeFsgaSArIDEgXSwgeFsgaSArIDEgXSApOwotICAgICAg
ICBucmcgPSAob3B1c19pbnQzMilzaWxrX0FERF9SU0hJRlRfdWludCggbnJnLCAob3B1c191aW50
MzIpbnJnX3RtcCwgc2hmdCApOwotICAgICAgICBpZiggbnJnIDwgMCApIHsKLSAgICAgICAgICAg
IC8qIFNjYWxlIGRvd24gKi8KLSAgICAgICAgICAgIG5yZyA9IChvcHVzX2ludDMyKXNpbGtfUlNI
SUZUX3VpbnQoIChvcHVzX3VpbnQzMilucmcsIDIgKTsKLSAgICAgICAgICAgIHNoZnQgKz0gMjsK
LSAgICAgICAgfQorICAgICAgICBucmcgPSAob3B1c19pbnQzMilzaWxrX0FERF9SU0hJRlRfdWlu
dCggbnJnLCBucmdfdG1wLCBzaGZ0ICk7CiAgICAgfQotICAgIGlmKCBpID09IGxlbiApIHsKKyAg
ICBpZiggaSA8IGxlbiApIHsKICAgICAgICAgLyogT25lIHNhbXBsZSBsZWZ0IHRvIHByb2Nlc3Mg
Ki8KICAgICAgICAgbnJnX3RtcCA9IHNpbGtfU01VTEJCKCB4WyBpIF0sIHhbIGkgXSApOwogICAg
ICAgICBucmcgPSAob3B1c19pbnQzMilzaWxrX0FERF9SU0hJRlRfdWludCggbnJnLCBucmdfdG1w
LCBzaGZ0ICk7CiAgICAgfQogCi0gICAgLyogTWFrZSBzdXJlIHRvIGhhdmUgYXQgbGVhc3Qgb25l
IGV4dHJhIGxlYWRpbmcgemVybyAodHdvIGxlYWRpbmcgemVyb3MgaW4gdG90YWwpICovCi0gICAg
aWYoIG5yZyAmIDB4QzAwMDAwMDAgKSB7Ci0gICAgICAgIG5yZyA9IHNpbGtfUlNISUZUX3VpbnQo
IChvcHVzX3VpbnQzMilucmcsIDIgKTsKLSAgICAgICAgc2hmdCArPSAyOwotICAgIH0KKyAgICBz
aWxrX2Fzc2VydCggbnJnID49IDAgKTsKIAogICAgIC8qIE91dHB1dCBhcmd1bWVudHMgKi8KICAg
ICAqc2hpZnQgID0gc2hmdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXMuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXMu
aAppbmRleCA3ZmVhNmZkYTM5ZGE0NjMzODRjMzE1ZDViNjUyYzMzNTJmNjk2MTgyLi44YjAzODBl
ZWIwOTg0YzE3YjM4MjU2NzI5Nzg1MWMyZDVhMjcwYWFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVz
LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL3RhYmxlcy5oCkBAIC03NiwxMCArNzYsOCBAQCBleHRlcm4gY29uc3Qgb3B1
c191aW50OCAgc2lsa19OTFNGX0VYVF9pQ0RGWyA3IF07CiBleHRlcm4gY29uc3Qgb3B1c191aW50
OCAgc2lsa19MVFBfcGVyX2luZGV4X2lDREZbIDMgXTsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogICAzICovCiBleHRlcm4gY29uc3Qgb3B1c191aW50OCAg
KiBjb25zdCBzaWxrX0xUUF9nYWluX2lDREZfcHRyc1sgTkJfTFRQX0NCS1MgXTsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogICAzICovCiBleHRlcm4gY29uc3Qgb3B1c191aW50OCAgKiBj
b25zdCBzaWxrX0xUUF9nYWluX0JJVFNfUTVfcHRyc1sgTkJfTFRQX0NCS1MgXTsgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogICAzICovCi1leHRlcm4gY29uc3Qgb3B1c19pbnQxNiAgc2lsa19M
VFBfZ2Fpbl9taWRkbGVfYXZnX1JEX1ExNDsKIGV4dGVybiBjb25zdCBvcHVzX2ludDggICAqIGNv
bnN0IHNpbGtfTFRQX3ZxX3B0cnNfUTdbIE5CX0xUUF9DQktTIF07ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiAxNjggKi8KIGV4dGVybiBjb25zdCBvcHVzX3VpbnQ4ICAqIGNvbnN0
IHNpbGtfTFRQX3ZxX2dhaW5fcHRyc19RN1tOQl9MVFBfQ0JLU107Ci0KIGV4dGVybiBjb25zdCBv
cHVzX2ludDggICBzaWxrX0xUUF92cV9zaXplc1sgTkJfTFRQX0NCS1MgXTsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAgIDMgKi8KIAogZXh0ZXJuIGNvbnN0IG9w
dXNfdWludDggIHNpbGtfTFRQc2NhbGVfaUNERlsgMyBdOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qICAgNCAqLwpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3Rh
Ymxlc19MVFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay90YWJsZXNfTFRQLmMKaW5kZXggMGU2YTAyNTRkNWRiNTUyNjJjZWNl
MDI2OThkNTNlYjRiMTMyN2Q2Yi4uNWUxMmM4NjQzZTViMGYxNWMxYzk0ODZhODg0NWM4MzNmMWRk
ZjM0MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxlc19MVFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX0xUUC5j
CkBAIC01MSw4ICs1MSw2IEBAIHN0YXRpYyBjb25zdCBvcHVzX3VpbnQ4IHNpbGtfTFRQX2dhaW5f
aUNERl8yWzMyXSA9IHsKICAgICAgICAgMjQsICAgICAyMCwgICAgIDE2LCAgICAgMTIsICAgICAg
OSwgICAgICA1LCAgICAgIDIsICAgICAgMAogfTsKIAotY29uc3Qgb3B1c19pbnQxNiBzaWxrX0xU
UF9nYWluX21pZGRsZV9hdmdfUkRfUTE0ID0gMTIzMDQ7Ci0KIHN0YXRpYyBjb25zdCBvcHVzX3Vp
bnQ4IHNpbGtfTFRQX2dhaW5fQklUU19RNV8wWzhdID0gewogICAgICAgICAxNSwgICAgMTMxLCAg
ICAxMzgsICAgIDEzOCwgICAgMTU1LCAgICAxNTUsICAgIDE3MywgICAgMTczCiB9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL3RhYmxlc19OTFNGX0NCX05CX01CLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX05MU0ZfQ0JfTkJf
TUIuYwppbmRleCA4YzU5ZDIwN2FhMDA4MDg2NTdjNjYyYjY1ODhkMWZjZmMzYWM3OTViLi4xOTVk
NWI5NWJkMTU0Y2M0YTk0ZjJlZTYzYjc2ODhhNWVjMDY3MWY3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFi
bGVzX05MU0ZfQ0JfTkJfTUIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX05MU0ZfQ0JfTkJfTUIuYwpAQCAt
NzQsNiArNzQsNDEgQEAgc3RhdGljIGNvbnN0IG9wdXNfdWludDggc2lsa19OTFNGX0NCMV9OQl9N
Ql9ROFsgMzIwIF0gPSB7CiAgICAgICAgIDY0LCAgICAgODQsICAgIDEwNCwgICAgMTE4LCAgICAx
NTYsICAgIDE3NywgICAgMjAxLCAgICAyMzAKIH07CiAKK3N0YXRpYyBjb25zdCBvcHVzX2ludDE2
IHNpbGtfTkxTRl9DQjFfV2dodF9ROVsgMzIwIF0gPSB7CisgICAgIDI4OTcsIDIzMTQsIDIzMTQs
IDIzMTQsIDIyODcsIDIyODcsIDIzMTQsIDIzMDAsIDIzMjcsIDIyODcsCisgICAgIDI4ODgsIDI1
ODAsIDIzOTQsIDIzNjcsIDIzMTQsIDIyNzQsIDIyNzQsIDIyNzQsIDIyNzQsIDIxOTQsCisgICAg
IDI0ODcsIDIzNDAsIDIzNDAsIDIzMTQsIDIzMTQsIDIzMTQsIDIzNDAsIDIzNDAsIDIzNjcsIDIz
NTQsCisgICAgIDMyMTYsIDI3NjYsIDIzNDAsIDIzNDAsIDIzMTQsIDIyNzQsIDIyMjEsIDIyMDcs
IDIyNjEsIDIxOTQsCisgICAgIDI0NjAsIDI0NzQsIDIzNjcsIDIzOTQsIDIzOTQsIDIzOTQsIDIz
OTQsIDIzNjcsIDI0MDcsIDIzMTQsCisgICAgIDM0NzksIDMwNTYsIDIxMjcsIDIyMDcsIDIyNzQs
IDIyNzQsIDIyNzQsIDIyODcsIDIzMTQsIDIyNjEsCisgICAgIDMyODIsIDMxNDEsIDI1ODAsIDIz
OTQsIDIyNDcsIDIyMjEsIDIyMDcsIDIxOTQsIDIxOTQsIDIxMTQsCisgICAgIDQwOTYsIDM4NDUs
IDIyMjEsIDI2MjAsIDI2MjAsIDI0MDcsIDIzMTQsIDIzOTQsIDIzNjcsIDIwNzQsCisgICAgIDMx
NzgsIDMyNDQsIDIzNjcsIDIyMjEsIDI1NTMsIDI0MzQsIDIzNDAsIDIzMTQsIDIxNjcsIDIyMjEs
CisgICAgIDMzMzgsIDM0ODgsIDI3MjYsIDIxOTQsIDIyNjEsIDI0NjAsIDIzNTQsIDIzNjcsIDIy
MDcsIDIxMDEsCisgICAgIDIzNTQsIDI0MjAsIDIzMjcsIDIzNjcsIDIzOTQsIDI0MjAsIDI0MjAs
IDI0MjAsIDI0NjAsIDIzNjcsCisgICAgIDM3NzksIDM2MjksIDI0MzQsIDI1MjcsIDIzNjcsIDIy
NzQsIDIyNzQsIDIzMDAsIDIyMDcsIDIwNDgsCisgICAgIDMyNTQsIDMyMjUsIDI3MTMsIDI4NDYs
IDI0NDcsIDIzMjcsIDIzMDAsIDIzMDAsIDIyNzQsIDIxMjcsCisgICAgIDMyNjMsIDMzMDAsIDI3
NTMsIDI4MDYsIDI0NDcsIDIyNjEsIDIyNjEsIDIyNDcsIDIxMjcsIDIxMDEsCisgICAgIDI4NzMs
IDI5ODEsIDI2MzMsIDIzNjcsIDI0MDcsIDIzNTQsIDIxOTQsIDIyNDcsIDIyNDcsIDIxMTQsCisg
ICAgIDMyMjUsIDMxOTcsIDI2MzMsIDI1ODAsIDIyNzQsIDIxODEsIDIyNDcsIDIyMjEsIDIyMjEs
IDIxNDEsCisgICAgIDMxNzgsIDMzMTAsIDI3NDAsIDI0MDcsIDIyNzQsIDIyNzQsIDIyNzQsIDIy
ODcsIDIxOTQsIDIxMTQsCisgICAgIDMxNDEsIDMyNzIsIDI0NjAsIDIwNjEsIDIyODcsIDI1MDAs
IDIzNjcsIDI0ODcsIDI0MzQsIDIxODEsCisgICAgIDM1MDcsIDMyODIsIDIzMTQsIDI3MDAsIDI2
NDcsIDI0NzQsIDIzNjcsIDIzOTQsIDIzNDAsIDIxMjcsCisgICAgIDM0MjMsIDM1MzUsIDMwMzgs
IDMwNTYsIDIzMDAsIDE5NTAsIDIyMjEsIDIyNzQsIDIyNzQsIDIyNzQsCisgICAgIDM0MDQsIDMz
NjYsIDIwODcsIDI2ODcsIDI4NzMsIDIzNTQsIDI0MjAsIDIyNzQsIDI0NzQsIDI1NDAsCisgICAg
IDM3NjAsIDM0ODgsIDE5NTAsIDI2NjAsIDI4OTcsIDI1MjcsIDIzOTQsIDIzNjcsIDI0NjAsIDIy
NjEsCisgICAgIDMwMjgsIDMyNzIsIDI3NDAsIDI4ODgsIDI3NDAsIDIxNTQsIDIxMjcsIDIyODcs
IDIyMzQsIDIyNDcsCisgICAgIDM2OTUsIDM2NTcsIDIwMjUsIDE5NjksIDI2NjAsIDI3MDAsIDI1
ODAsIDI1MDAsIDIzMjcsIDIzNjcsCisgICAgIDMyMDcsIDM0MTMsIDIzNTQsIDIwNzQsIDI4ODgs
IDI4ODgsIDIzNDAsIDI0ODcsIDIyNDcsIDIxNjcsCisgICAgIDMzMzgsIDMzNjYsIDI4NDYsIDI3
ODAsIDIzMjcsIDIxNTQsIDIyNzQsIDIyODcsIDIxMTQsIDIwNjEsCisgICAgIDIzMjcsIDIzMDAs
IDIxODEsIDIxNjcsIDIxODEsIDIzNjcsIDI2MzMsIDI3MDAsIDI3MDAsIDI1NTMsCisgICAgIDI0
MDcsIDI0MzQsIDIyMjEsIDIyNjEsIDIyMjEsIDIyMjEsIDIzNDAsIDI0MjAsIDI2MDcsIDI3MDAs
CisgICAgIDMwMzgsIDMyNDQsIDI4MDYsIDI4ODgsIDI0NzQsIDIwNzQsIDIzMDAsIDIzMTQsIDIz
NTQsIDIzODAsCisgICAgIDIyMjEsIDIxNTQsIDIxMjcsIDIyODcsIDI1MDAsIDI3OTMsIDI3OTMs
IDI2MjAsIDI1ODAsIDIzNjcsCisgICAgIDM2NzYsIDM3MTMsIDIyMzQsIDE4MzgsIDIxODEsIDI3
NTMsIDI3MjYsIDI2NzMsIDI1MTMsIDIyMDcsCisgICAgIDI3OTMsIDMxNjAsIDI3MjYsIDI1NTMs
IDI4NDYsIDI1MTMsIDIxODEsIDIzOTQsIDIyMjEsIDIxODEKK307CisKIHN0YXRpYyBjb25zdCBv
cHVzX3VpbnQ4IHNpbGtfTkxTRl9DQjFfaUNERl9OQl9NQlsgNjQgXSA9IHsKICAgICAgICAyMTIs
ICAgIDE3OCwgICAgMTQ4LCAgICAxMjksICAgIDEwOCwgICAgIDk2LCAgICAgODUsICAgICA4MiwK
ICAgICAgICAgNzksICAgICA3NywgICAgIDYxLCAgICAgNTksICAgICA1NywgICAgIDU2LCAgICAg
NTEsICAgICA0OSwKQEAgLTE1MCw2ICsxODUsNyBAQCBjb25zdCBzaWxrX05MU0ZfQ0Jfc3RydWN0
IHNpbGtfTkxTRl9DQl9OQl9NQiA9CiAgICAgU0lMS19GSVhfQ09OU1QoIDAuMTgsIDE2ICksCiAg
ICAgU0lMS19GSVhfQ09OU1QoIDEuMCAvIDAuMTgsIDYgKSwKICAgICBzaWxrX05MU0ZfQ0IxX05C
X01CX1E4LAorICAgIHNpbGtfTkxTRl9DQjFfV2dodF9ROSwKICAgICBzaWxrX05MU0ZfQ0IxX2lD
REZfTkJfTUIsCiAgICAgc2lsa19OTFNGX1BSRURfTkJfTUJfUTgsCiAgICAgc2lsa19OTFNGX0NC
Ml9TRUxFQ1RfTkJfTUIsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX05MU0ZfQ0JfV0IuYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay90YWJsZXNfTkxTRl9DQl9XQi5jCmluZGV4IDUwYWY4N2ViMmUxYzFkNzQyODYyNjkwNzRiNWQ4
YTA5MjYyMDI3YzMuLjVjYzlmNTdiZmZjYTc3ODg2ZGU4NzY0ZDMyZDYyMjEzZGE1ZGFmZDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay90YWJsZXNfTkxTRl9DQl9XQi5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXNfTkxTRl9D
Ql9XQi5jCkBAIC05OCw2ICs5OCw0MSBAQCBzdGF0aWMgY29uc3Qgb3B1c191aW50OCBzaWxrX05M
U0ZfQ0IxX1dCX1E4WyA1MTIgXSA9IHsKICAgICAgICAxMTAsICAgIDExOSwgICAgMTI5LCAgICAx
NDEsICAgIDE3NSwgICAgMTk4LCAgICAyMTgsICAgIDIzNwogfTsKIAorc3RhdGljIGNvbnN0IG9w
dXNfaW50MTYgc2lsa19OTFNGX0NCMV9XQl9XZ2h0X1E5WyA1MTIgXSA9IHsKKyAgICAgMzY1Nywg
MjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjky
NSwgMjkyNSwgMjk2MywgMjk2MywgMjkyNSwgMjg0NiwKKyAgICAgMzIxNiwgMzA4NSwgMjk3Miwg
MzA1NiwgMzA1NiwgMzAxMCwgMzAxMCwgMzAxMCwgMjk2MywgMjk2MywgMzAxMCwgMjk3MiwgMjg4
OCwgMjg0NiwgMjg0NiwgMjcyNiwKKyAgICAgMzkyMCwgNDAxNCwgMjk4MSwgMzIwNywgMzIwNywg
MjkzNCwgMzA1NiwgMjg0NiwgMzEyMiwgMzI0NCwgMjkyNSwgMjg0NiwgMjYyMCwgMjU1MywgMjc4
MCwgMjkyNSwKKyAgICAgMzUxNiwgMzE5NywgMzAxMCwgMzEwMywgMzAxOSwgMjg4OCwgMjkyNSwg
MjkyNSwgMjkyNSwgMjkyNSwgMjg4OCwgMjg4OCwgMjg4OCwgMjg4OCwgMjg4OCwgMjc1MywKKyAg
ICAgNTA1NCwgNTA1NCwgMjkzNCwgMzU3MywgMzM4NSwgMzA1NiwgMzA4NSwgMjc5MywgMzE2MCwg
MzE2MCwgMjk3MiwgMjg0NiwgMjUxMywgMjU0MCwgMjc1MywgMjg4OCwKKyAgICAgNDQyOCwgNDE0
OSwgMjcwMCwgMjc1MywgMjk3MiwgMzAxMCwgMjkyNSwgMjg0NiwgMjk4MSwgMzAxOSwgMjkyNSwg
MjkyNSwgMjkyNSwgMjkyNSwgMjg4OCwgMjcyNiwKKyAgICAgMzYyMCwgMzAxOSwgMjk3MiwgMzA1
NiwgMzA1NiwgMjg3MywgMjgwNiwgMzA1NiwgMzIxNiwgMzA0NywgMjk4MSwgMzI5MSwgMzI5MSwg
Mjk4MSwgMzMxMCwgMjk5MSwKKyAgICAgNTIyNywgNTAxNCwgMjU0MCwgMzMzOCwgMzUyNiwgMzM4
NSwgMzE5NywgMzA5NCwgMzM3NiwgMjk4MSwgMjcwMCwgMjY0NywgMjY4NywgMjc5MywgMjg0Niwg
MjY3MywKKyAgICAgNTA4MSwgNTE3NCwgNDYxNSwgNDQyOCwgMjQ2MCwgMjg5NywgMzA0NywgMzIw
NywgMzE2OSwgMjY4NywgMjc0MCwgMjg4OCwgMjg0NiwgMjc5MywgMjg0NiwgMjcwMCwKKyAgICAg
MzEyMiwgMjg4OCwgMjk2MywgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjk2MywgMjk2MywgMjk2
MywgMjk2MywgMjkyNSwgMjkyNSwgMjk2MywgMjk2MywgMjk2MywKKyAgICAgNDIwMiwgMzIwNywg
Mjk4MSwgMzEwMywgMzAxMCwgMjg4OCwgMjg4OCwgMjkyNSwgMjk3MiwgMjg3MywgMjkxNiwgMzAx
OSwgMjk3MiwgMzAxMCwgMzE5NywgMjg3MywKKyAgICAgMzc2MCwgMzc2MCwgMzI0NCwgMzEwMywg
Mjk4MSwgMjg4OCwgMjkyNSwgMjg4OCwgMjk3MiwgMjkzNCwgMjc5MywgMjc5MywgMjg0NiwgMjg4
OCwgMjg4OCwgMjY2MCwKKyAgICAgMzg1NCwgNDAxNCwgMzIwNywgMzEyMiwgMzI0NCwgMjkzNCwg
MzA0NywgMjk2MywgMjk2MywgMzA4NSwgMjg0NiwgMjc5MywgMjc5MywgMjc5MywgMjc5MywgMjU4
MCwKKyAgICAgMzg0NSwgNDA4MCwgMzM1NywgMzUxNiwgMzA5NCwgMjc0MCwgMzAxMCwgMjkzNCwg
MzEyMiwgMzA4NSwgMjg0NiwgMjg0NiwgMjY0NywgMjY0NywgMjg0NiwgMjgwNiwKKyAgICAgNTE0
NywgNDg5NCwgMzIyNSwgMzg0NSwgMzQ0MSwgMzE2OSwgMjg5NywgMzQxMywgMzQ1MSwgMjcwMCwg
MjU4MCwgMjY3MywgMjc0MCwgMjg0NiwgMjgwNiwgMjc1MywKKyAgICAgNDEwOSwgMzc4OSwgMzI5
MSwgMzE2MCwgMjkyNSwgMjg4OCwgMjg4OCwgMjkyNSwgMjc5MywgMjc0MCwgMjc5MywgMjc0MCwg
Mjc5MywgMjg0NiwgMjg4OCwgMjgwNiwKKyAgICAgNTA4MSwgNTA1NCwgMzA0NywgMzU0NSwgMzI0
NCwgMzA1NiwgMzA4NSwgMjk0NCwgMzEwMywgMjg5NywgMjc0MCwgMjc0MCwgMjc0MCwgMjg0Niwg
Mjc5MywgMjYyMCwKKyAgICAgNDMwOSwgNDMwOSwgMjg2MCwgMjUyNywgMzIwNywgMzM3NiwgMzM3
NiwgMzA3NSwgMzA3NSwgMzM3NiwgMzA1NiwgMjg0NiwgMjY0NywgMjU4MCwgMjcyNiwgMjc1MywK
KyAgICAgMzA1NiwgMjkxNiwgMjgwNiwgMjg4OCwgMjc0MCwgMjY4NywgMjg5NywgMzEwMywgMzE1
MCwgMzE1MCwgMzIxNiwgMzE2OSwgMzA1NiwgMzAxMCwgMjk2MywgMjg0NiwKKyAgICAgNDM3NSwg
Mzg4MiwgMjkyNSwgMjg4OCwgMjg0NiwgMjg4OCwgMjg0NiwgMjg0NiwgMjg4OCwgMjg4OCwgMjg4
OCwgMjg0NiwgMjg4OCwgMjkyNSwgMjg4OCwgMjg0NiwKKyAgICAgMjk4MSwgMjkxNiwgMjkxNiwg
Mjk4MSwgMjk4MSwgMzA1NiwgMzEyMiwgMzIxNiwgMzE1MCwgMzA1NiwgMzAxMCwgMjk3MiwgMjk3
MiwgMjk3MiwgMjkyNSwgMjc0MCwKKyAgICAgNDIyOSwgNDE0OSwgMzMxMCwgMzM0NywgMjkyNSwg
Mjk2MywgMjg4OCwgMjk4MSwgMjk4MSwgMjg0NiwgMjc5MywgMjc0MCwgMjg0NiwgMjg0NiwgMjg0
NiwgMjc5MywKKyAgICAgNDA4MCwgNDAxNCwgMzEwMywgMzAxMCwgMjkyNSwgMjkyNSwgMjkyNSwg
Mjg4OCwgMjkyNSwgMjkyNSwgMjg0NiwgMjg0NiwgMjg0NiwgMjc5MywgMjg4OCwgMjc4MCwKKyAg
ICAgNDYxNSwgNDU3NSwgMzE2OSwgMzQ0MSwgMzIwNywgMjk4MSwgMjg5NywgMzAzOCwgMzEyMiwg
Mjc0MCwgMjY4NywgMjY4NywgMjY4NywgMjc0MCwgMjc5MywgMjcwMCwKKyAgICAgNDE0OSwgNDI2
OSwgMzc4OSwgMzY1NywgMjcyNiwgMjc4MCwgMjg4OCwgMjg4OCwgMzAxMCwgMjk3MiwgMjkyNSwg
Mjg0NiwgMjY4NywgMjY4NywgMjc5MywgMjg4OCwKKyAgICAgNDIxNSwgMzU1NCwgMjc1MywgMjg0
NiwgMjg0NiwgMjg4OCwgMjg4OCwgMjg4OCwgMjkyNSwgMjkyNSwgMjg4OCwgMjkyNSwgMjkyNSwg
MjkyNSwgMjk2MywgMjg4OCwKKyAgICAgNTE3NCwgNDkyMSwgMjI2MSwgMzQzMiwgMzc4OSwgMzQ3
OSwgMzM0NywgMjg0NiwgMzMxMCwgMzQ3OSwgMzE1MCwgMjg5NywgMjQ2MCwgMjQ4NywgMjc1Mywg
MjkyNSwKKyAgICAgMzQ1MSwgMzY4NSwgMzEyMiwgMzE5NywgMzM1NywgMzA0NywgMzIwNywgMzIw
NywgMjk4MSwgMzIxNiwgMzA4NSwgMjkyNSwgMjkyNSwgMjY4NywgMjU0MCwgMjQzNCwKKyAgICAg
Mjk4MSwgMzAxMCwgMjc5MywgMjc5MywgMjc0MCwgMjc5MywgMjg0NiwgMjk3MiwgMzA1NiwgMzEw
MywgMzE1MCwgMzE1MCwgMzE1MCwgMzEwMywgMzAxMCwgMzAxMCwKKyAgICAgMjk0NCwgMjg3Mywg
MjY4NywgMjcyNiwgMjc4MCwgMzAxMCwgMzQzMiwgMzU0NSwgMzM1NywgMzI0NCwgMzA1NiwgMzAx
MCwgMjk2MywgMjkyNSwgMjg4OCwgMjg0NiwKKyAgICAgMzAxOSwgMjk0NCwgMjg5NywgMzAxMCwg
MzAxMCwgMjk3MiwgMzAxOSwgMzEwMywgMzA1NiwgMzA1NiwgMzAxMCwgMjg4OCwgMjg0NiwgMjky
NSwgMjkyNSwgMjg4OCwKKyAgICAgMzkyMCwgMzk2NywgMzAxMCwgMzE5NywgMzM1NywgMzIxNiwg
MzI5MSwgMzI5MSwgMzQ3OSwgMzcwNCwgMzQ0MSwgMjcyNiwgMjE4MSwgMjQ2MCwgMjU4MCwgMjYw
NworfTsKKwogc3RhdGljIGNvbnN0IG9wdXNfdWludDggc2lsa19OTFNGX0NCMV9pQ0RGX1dCWyA2
NCBdID0gewogICAgICAgIDIyNSwgICAgMjA0LCAgICAyMDEsICAgIDE4NCwgICAgMTgzLCAgICAx
NzUsICAgIDE1OCwgICAgMTU0LAogICAgICAgIDE1MywgICAgMTM1LCAgICAxMTksICAgIDExNSwg
ICAgMTEzLCAgICAxMTAsICAgIDEwOSwgICAgIDk5LApAQCAtMTg4LDYgKzIyMyw3IEBAIGNvbnN0
IHNpbGtfTkxTRl9DQl9zdHJ1Y3Qgc2lsa19OTFNGX0NCX1dCID0KICAgICBTSUxLX0ZJWF9DT05T
VCggMC4xNSwgMTYgKSwKICAgICBTSUxLX0ZJWF9DT05TVCggMS4wIC8gMC4xNSwgNiApLAogICAg
IHNpbGtfTkxTRl9DQjFfV0JfUTgsCisgICAgc2lsa19OTFNGX0NCMV9XQl9XZ2h0X1E5LAogICAg
IHNpbGtfTkxTRl9DQjFfaUNERl9XQiwKICAgICBzaWxrX05MU0ZfUFJFRF9XQl9ROCwKICAgICBz
aWxrX05MU0ZfQ0IyX1NFTEVDVF9XQiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90ZXN0cy90ZXN0X3VuaXRf
TFBDX2ludl9wcmVkX2dhaW4uYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90ZXN0cy90ZXN0X3VuaXRfTFBDX2ludl9wcmVkX2dh
aW4uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi42NzA2N2NlYWQ3MDI5N2ZlNzczNjFhZTU1NWFhOWJjMzA0Yjg3ZmY2
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3Rlc3RzL3Rlc3RfdW5pdF9MUENfaW52X3ByZWRfZ2Fp
bi5jCkBAIC0wLDAgKzEsMTI5IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK0NvcHlyaWdodCAoYykgMjAx
NyBHb29nbGUgSW5jLiwgSmVhbi1NYXJjIFZhbGluCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworYXJl
IG1ldDoKKy0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKK25vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKK2RvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CistIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRy
dXN0LCBub3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCitwZXJtaXNzaW9uLgorVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UyAiQVMgSVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVU
T1JTIEJFCitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCitDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCitJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCitQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaWZkZWYgSEFWRV9DT05GSUdfSAor
I2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1
ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgImNlbHQvc3RhY2tfYWxsb2MuaCIKKyNpbmNsdWRlICJj
cHVfc3VwcG9ydC5oIgorI2luY2x1ZGUgIlNpZ1Byb2NfRklYLmgiCisKKy8qIENvbXB1dGVzIHRo
ZSBpbXB1bHNlIHJlc3BvbnNlIG9mIHRoZSBmaWx0ZXIgc28gd2UKKyAgIGNhbiBjYXRjaCBmaWx0
ZXJzIHRoYXQgYXJlIGRlZmluaXRlbHkgdW5zdGFibGUuIFNvbWUKKyAgIHVuc3RhYmxlIGZpbHRl
cnMgbWF5IGJlIGNsYXNzaWZpZWQgYXMgc3RhYmxlLCBidXQgbm90CisgICB0aGUgb3RoZXIgd2F5
IGFyb3VuZC4gKi8KK2ludCBjaGVja19zdGFiaWxpdHkob3B1c19pbnQxNiAqQV9RMTIsIGludCBv
cmRlcikgeworICAgIGludCBpOworICAgIGludCBqOworICAgIGludCBzdW1fYSwgc3VtX2Fic19h
OworICAgIHN1bV9hID0gc3VtX2Fic19hID0gMDsKKyAgICBmb3IoIGogPSAwOyBqIDwgb3JkZXI7
IGorKyApIHsKKyAgICAgICAgc3VtX2EgKz0gQV9RMTJbIGogXTsKKyAgICAgICAgc3VtX2Fic19h
ICs9IHNpbGtfYWJzKCBBX1ExMlsgaiBdICk7CisgICAgfQorICAgIC8qIENoZWNrIERDIHN0YWJp
bGl0eS4gKi8KKyAgICBpZiggc3VtX2EgPj0gNDA5NiApIHsKKyAgICAgICAgcmV0dXJuIDA7Cisg
ICAgfQorICAgIC8qIElmIHRoZSBzdW0gb2YgYWJzb2x1dGUgdmFsdWVzIGlzIGxlc3MgdGhhbiAx
LCB0aGUgZmlsdGVyCisgICAgICAgaGFzIHRvIGJlIHN0YWJsZS4gKi8KKyAgICBpZiggc3VtX2Fi
c19hIDwgNDA5NiApIHsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorICAgIGRvdWJsZSB5W1NJ
TEtfTUFYX09SREVSX0xQQ10gPSB7MH07CisgICAgeVswXSA9IDE7CisgICAgZm9yKCBpID0gMDsg
aSA8IDEwMDAwOyBpKysgKSB7CisgICAgICAgIGRvdWJsZSBzdW0gPSAwOworICAgICAgICBmb3Io
IGogPSAwOyBqIDwgb3JkZXI7IGorKyApIHsKKyAgICAgICAgICAgIHN1bSArPSB5WyBqIF0qQV9R
MTJbIGogXTsKKyAgICAgICAgfQorICAgICAgICBmb3IoIGogPSBvcmRlciAtIDE7IGogPiAwOyBq
LS0gKSB7CisgICAgICAgICAgICB5WyBqIF0gPSB5WyBqIC0gMSBdOworICAgICAgICB9CisgICAg
ICAgIHlbIDAgXSA9IHN1bSooMS4vNDA5Nik7CisgICAgICAgIC8qIElmIGltcHVsc2UgcmVzcG9u
c2UgcmVhY2hlcyArLy0gMTAwMDAsIHRoZSBmaWx0ZXIKKyAgICAgICAgICAgaXMgZGVmaW5pdGVs
eSB1bnN0YWJsZS4gKi8KKyAgICAgICAgaWYoICEoeVsgMCBdIDwgMTAwMDAgJiYgeVsgMCBdID4g
LTEwMDAwKSApIHsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIC8q
IFRlc3QgZXZlcnkgOCBzYW1wbGUgZm9yIGxvdyBhbXBsaXR1ZGUuICovCisgICAgICAgIGlmKCAo
IGkgJiAweDcgKSA9PSAwICkgeworICAgICAgICAgICAgZG91YmxlIGFtcCA9IDA7CisgICAgICAg
ICAgICBmb3IoIGogPSAwOyBqIDwgb3JkZXI7IGorKyApIHsKKyAgICAgICAgICAgICAgICBhbXAg
Kz0gZmFicyh5W2pdKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmKCBhbXAgPCAwLjAw
MDAxICkgeworICAgICAgICAgICAgICAgIHJldHVybiAxOworICAgICAgICAgICAgfQorICAgICAg
ICB9CisgICAgfQorICAgIHJldHVybiAxOworfQorCitpbnQgbWFpbih2b2lkKSB7CisgICAgY29u
c3QgaW50IGFyY2ggPSBvcHVzX3NlbGVjdF9hcmNoKCk7CisgICAgLyogU2V0IHRvIDEwMDAwIHNv
IGFsbCBicmFuY2hlcyBpbiBDIGZ1bmN0aW9uIGFyZSB0cmlnZ2VyZWQgKi8KKyAgICBjb25zdCBp
bnQgbG9vcF9udW0gPSAxMDAwMDsKKyAgICBpbnQgY291bnQgPSAwOworICAgIEFMTE9DX1NUQUNL
OworCisgICAgLyogRklYTUU6IE1ha2UgdGhlIHNlZWQgcmFuZG9tICh3aXRoIG9wdGlvbiB0byBz
ZXQgaXQgZXhwbGljaXRseSkKKyAgICAgICBzbyB3ZSBnZXQgd2lkZXIgY292ZXJhZ2UuICovCisg
ICAgc3JhbmQoMCk7CisKKyAgICBwcmludGYoIlRlc3Rpbmcgc2lsa19MUENfaW52ZXJzZV9wcmVk
X2dhaW4oKSBvcHRpbWl6YXRpb24gLi4uXG4iKTsKKyAgICBmb3IoIGNvdW50ID0gMDsgY291bnQg
PCBsb29wX251bTsgY291bnQrKyApIHsKKyAgICAgICAgdW5zaWduZWQgaW50IGk7CisgICAgICAg
IG9wdXNfaW50ICAgICBvcmRlcjsKKyAgICAgICAgdW5zaWduZWQgaW50IHNoaWZ0OworICAgICAg
ICBvcHVzX2ludDE2ICAgQV9RMTJbIFNJTEtfTUFYX09SREVSX0xQQyBdOworICAgICAgICBvcHVz
X2ludDMyIGdhaW47CisKKyAgICAgICAgZm9yKCBvcmRlciA9IDI7IG9yZGVyIDw9IFNJTEtfTUFY
X09SREVSX0xQQzsgb3JkZXIgKz0gMiApIHsgLyogb3JkZXIgbXVzdCBiZSBldmVuLiAqLworICAg
ICAgICAgICAgZm9yKCBzaGlmdCA9IDA7IHNoaWZ0IDwgMTY7IHNoaWZ0KysgKSB7IC8qIERpZmZl
cmVudCBkeW5hbWljIHJhbmdlLiAqLworICAgICAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBT
SUxLX01BWF9PUkRFUl9MUEM7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAgQV9RMTJbaV0g
PSAoKG9wdXNfaW50MTYpcmFuZCgpKSA+PiBzaGlmdDsKKyAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgZ2FpbiA9IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKEFfUTEyLCBvcmRl
ciwgYXJjaCk7CisgICAgICAgICAgICAgICAgLyogTG9vayBmb3IgZmlsdGVycyB0aGF0IHNpbGtf
TFBDX2ludmVyc2VfcHJlZF9nYWluKCkgdGhpbmtzIGFyZQorICAgICAgICAgICAgICAgICAgIHN0
YWJsZSBidXQgZGVmaW5pdGVseSBhcmVuJ3QuICovCisgICAgICAgICAgICAgICAgaWYoIGdhaW4g
IT0gMCAmJiAhY2hlY2tfc3RhYmlsaXR5KEFfUTEyLCBvcmRlcikgKSB7CisgICAgICAgICAgICAg
ICAgICAgIGZwcmludGYoc3RkZXJyLCAiKipMb29wICU0ZCBmYWlsZWQhKipcbiIsIGNvdW50KTsK
KyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmKCAhKGNvdW50ICUgNTAwKSApIHsKKyAgICAg
ICAgICAgIHByaW50ZigiTG9vcCAlNGQgcGFzc2VkXG4iLCBjb3VudCk7CisgICAgICAgIH0KKyAg
ICB9CisgICAgcHJpbnRmKCJzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbigpIG9wdGltaXphdGlv
biBwYXNzZWRcbiIpOworICAgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3R1bmluZ19w
YXJhbWV0ZXJzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvdHVuaW5nX3BhcmFtZXRlcnMuaAppbmRleCA1YjhmNDA0MjM1ZjQ5
MWQ5YjRiZWRhYTQ4ZjM5NDIzMDdlN2QxMmExLi5kNzAyNzVmZDhmNWRkMTVlM2M2OGJkMjhkMzIx
NWI0MGM0OWJiZTU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdHVuaW5nX3BhcmFtZXRlcnMuaAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvdHVuaW5nX3BhcmFtZXRlcnMuaApAQCAtNTMsMTkgKzUzLDEyIEBAIGV4dGVybiAiQyIKIC8q
IExQQyBhbmFseXNpcyByZWd1bGFyaXphdGlvbiAqLwogI2RlZmluZSBGSU5EX0xQQ19DT05EX0ZB
QyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxZS01ZgogCi0vKiBMVFAgYW5hbHlzaXMg
ZGVmaW5lcyAqLwotI2RlZmluZSBGSU5EX0xUUF9DT05EX0ZBQyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAxZS01ZgotI2RlZmluZSBMVFBfREFNUElORyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAwLjA1ZgotI2RlZmluZSBMVFBfU01PT1RISU5HICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAwLjFmCi0KLS8qIExUUCBxdWFudGl6YXRpb24gc2V0dGlu
Z3MgKi8KLSNkZWZpbmUgTVVfTFRQX1FVQU5UX05CICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgMC4wM2YKLSNkZWZpbmUgTVVfTFRQX1FVQU5UX01CICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgMC4wMjVmCi0jZGVmaW5lIE1VX0xUUF9RVUFOVF9XQiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDAuMDJmCi0KIC8qIE1heCBjdW11bGF0aXZlIExUUCBnYWluICov
CiAjZGVmaW5lIE1BWF9TVU1fTE9HX0dBSU5fREIgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDI1MC4wZgogCisvKiBMVFAgYW5hbHlzaXMgZGVmaW5lcyAqLworI2RlZmluZSBMVFBfQ09SUl9J
TlZfTUFYICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjAzZgorCiAvKioqKioqKioq
KioqKioqKioqKioqKiovCiAvKiBIaWdoIHBhc3MgZmlsdGVyaW5nICovCiAvKioqKioqKioqKioq
KioqKioqKioqKiovCkBAIC0xMDMsMjUgKzk2LDE2IEBAIGV4dGVybiAiQyIKICNkZWZpbmUgU1BB
UlNFX1NOUl9JTkNSX2RCICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMi4wZgogCiAvKiB0
aHJlc2hvbGQgZm9yIHNwYXJzZW5lc3MgbWVhc3VyZSBhYm92ZSB3aGljaCB0byB1c2UgbG93ZXIg
cXVhbnRpemF0aW9uIG9mZnNldCBkdXJpbmcgdW52b2ljZWQgKi8KLSNkZWZpbmUgU1BBUlNFTkVT
U19USFJFU0hPTERfUU5UX09GRlNFVCAgICAgICAgICAgICAgICAgMC43NWYKKyNkZWZpbmUgRU5F
UkdZX1ZBUklBVElPTl9USFJFU0hPTERfUU5UX09GRlNFVCAgICAgICAgICAgMC42ZgogCiAvKiB3
YXJwaW5nIGNvbnRyb2wgKi8KICNkZWZpbmUgV0FSUElOR19NVUxUSVBMSUVSICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgMC4wMTVmCiAKIC8qIGZyYWN0aW9uIGFkZGVkIHRvIGZpcnN0IGF1
dG9jb3JyZWxhdGlvbiB2YWx1ZSAqLwotI2RlZmluZSBTSEFQRV9XSElURV9OT0lTRV9GUkFDVElP
TiAgICAgICAgICAgICAgICAgICAgICA1ZS01ZgorI2RlZmluZSBTSEFQRV9XSElURV9OT0lTRV9G
UkFDVElPTiAgICAgICAgICAgICAgICAgICAgICAzZS01ZgogCiAvKiBub2lzZSBzaGFwaW5nIGZp
bHRlciBjaGlycCBmYWN0b3IgKi8KLSNkZWZpbmUgQkFORFdJRFRIX0VYUEFOU0lPTiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgMC45NWYKLQotLyogZGlmZmVyZW5jZSBiZXR3ZWVuIGNoaXJw
IGZhY3RvcnMgZm9yIGFuYWx5c2lzIGFuZCBzeW50aGVzaXMgbm9pc2Ugc2hhcGluZyBmaWx0ZXJz
IGF0IGxvdyBiaXRyYXRlcyAqLwotI2RlZmluZSBMT1dfUkFURV9CQU5EV0lEVEhfRVhQQU5TSU9O
X0RFTFRBICAgICAgICAgICAgICAwLjAxZgotCi0vKiBleHRyYSBoYXJtb25pYyBib29zdGluZyAo
c2lnbmFsIHNoYXBpbmcpIGF0IGxvdyBiaXRyYXRlcyAqLwotI2RlZmluZSBMT1dfUkFURV9IQVJN
T05JQ19CT09TVCAgICAgICAgICAgICAgICAgICAgICAgICAwLjFmCi0KLS8qIGV4dHJhIGhhcm1v
bmljIGJvb3N0aW5nIChzaWduYWwgc2hhcGluZykgZm9yIG5vaXN5IGlucHV0IHNpZ25hbHMgKi8K
LSNkZWZpbmUgTE9XX0lOUFVUX1FVQUxJVFlfSEFSTU9OSUNfQk9PU1QgICAgICAgICAgICAgICAg
MC4xZgorI2RlZmluZSBCQU5EV0lEVEhfRVhQQU5TSU9OICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAwLjk0ZgogCiAvKiBoYXJtb25pYyBub2lzZSBzaGFwaW5nICovCiAjZGVmaW5lIEhBUk1P
TklDX1NIQVBJTkcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuM2YKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay94ODYvTlNRX2RlbF9kZWNfc3NlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L05TUV9kZWxfZGVjX3NzZS5j
CmluZGV4IDIxZDRhOGJjMWU5NjBhZjlhOTVhYjIwMmNjOTUxZDE0YzA0NjAxYjMuLmM1MjEyYmVl
OGQzYTFiMWMyMTYyY2U4MzI2ODExNDViYjc0N2M3NmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYvTlNR
X2RlbF9kZWNfc3NlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni9OU1FfZGVsX2RlY19zc2UuYwpAQCAtMTA3LDEy
ICsxMDcsMTIgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFu
dGl6ZXJfZGVsX2RlY19zc2U0XzEoCiAgICAgb3B1c19pbnQgICAgICAgICAgICBwcmVkaWN0TFBD
T3JkZXIsICAgICAgICAvKiBJICAgIFByZWRpY3Rpb24gZmlsdGVyIG9yZGVyICAgICAgICAgICAg
ICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICB3YXJwaW5nX1ExNiwgICAgICAgICAgICAvKiBJ
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQg
ICAgICAgICAgICBuU3RhdGVzRGVsYXllZERlY2lzaW9uLCAvKiBJICAgIE51bWJlciBvZiBzdGF0
ZXMgaW4gZGVjaXNpb24gdHJlZSAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9i
dWZfaWR4LCAgICAgICAgICAvKiBJICAgIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZl
cnMgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9idWZfaWR4LCAgICAgICAgICAv
KiBJL08gIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZlcnMgICovCiAgICAgb3B1c19p
bnQgICAgICAgICAgICBkZWNpc2lvbkRlbGF5ICAgICAgICAgICAvKiBJICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCiB2b2lkIHNpbGtfTlNRX2RlbF9kZWNf
c3NlNF8xKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAg
ICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNR
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRl
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAg
ICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVh
bnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAg
ICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLwpAQCAtMjM0LDcgKzIzNCw4IEBA
IHZvaWQgc2lsa19OU1FfZGVsX2RlY19zc2U0XzEoCiAgICAgICAgICAgICAgICAgICAgIHBzREQg
PSAmcHNEZWxEZWNbIFdpbm5lcl9pbmQgXTsKICAgICAgICAgICAgICAgICAgICAgbGFzdF9zbXBs
ZV9pZHggPSBzbXBsX2J1Zl9pZHggKyBkZWNpc2lvbkRlbGF5OwogICAgICAgICAgICAgICAgICAg
ICBmb3IoIGkgPSAwOyBpIDwgZGVjaXNpb25EZWxheTsgaSsrICkgewotICAgICAgICAgICAgICAg
ICAgICAgICAgbGFzdF9zbXBsZV9pZHggPSAoIGxhc3Rfc21wbGVfaWR4IC0gMSApICYgREVDSVNJ
T05fREVMQVlfTUFTSzsKKyAgICAgICAgICAgICAgICAgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0g
KCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAlIERFQ0lTSU9OX0RFTEFZOworICAgICAgICAgICAgICAg
ICAgICAgICAgaWYoIGxhc3Rfc21wbGVfaWR4IDwgMCApIGxhc3Rfc21wbGVfaWR4ICs9IERFQ0lT
SU9OX0RFTEFZOwogICAgICAgICAgICAgICAgICAgICAgICAgcHVsc2VzWyAgIGkgLSBkZWNpc2lv
bkRlbGF5IF0gPSAob3B1c19pbnQ4KXNpbGtfUlNISUZUX1JPVU5EKCBwc0RELT5RX1ExMFsgbGFz
dF9zbXBsZV9pZHggXSwgMTAgKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHB4cVsgaSAtIGRl
Y2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5E
KAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpbGtfU01VTFdXKCBwc0RELT5YcV9RMTRb
IGxhc3Rfc21wbGVfaWR4IF0sIEdhaW5zX1ExNlsgMSBdICksIDE0ICkgKTsKQEAgLTI4NSw3ICsy
ODYsOCBAQCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfc3NlNF8xKAogICAgIGxhc3Rfc21wbGVfaWR4
ID0gc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheTsKICAgICBHYWluX1ExMCA9IHNpbGtfUlNI
SUZUMzIoIEdhaW5zX1ExNlsgcHNFbmNDLT5uYl9zdWJmciAtIDEgXSwgNiApOwogICAgIGZvcigg
aSA9IDA7IGkgPCBkZWNpc2lvbkRlbGF5OyBpKysgKSB7Ci0gICAgICAgIGxhc3Rfc21wbGVfaWR4
ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAmIERFQ0lTSU9OX0RFTEFZX01BU0s7CisgICAgICAg
IGxhc3Rfc21wbGVfaWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAlIERFQ0lTSU9OX0RFTEFZ
OworICAgICAgICBpZiggbGFzdF9zbXBsZV9pZHggPCAwICkgbGFzdF9zbXBsZV9pZHggKz0gREVD
SVNJT05fREVMQVk7CiAgICAgICAgIHB1bHNlc1sgICBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9w
dXNfaW50OClzaWxrX1JTSElGVF9ST1VORCggcHNERC0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4IF0s
IDEwICk7CiAgICAgICAgIHB4cVsgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDE2KXNp
bGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKAogICAgICAgICAgICAgc2lsa19TTVVMV1coIHBz
REQtPlhxX1ExNFsgbGFzdF9zbXBsZV9pZHggXSwgR2Fpbl9RMTAgKSwgOCApICk7CkBAIC0yOTks
NyArMzAxLDYgQEAgdm9pZCBzaWxrX05TUV9kZWxfZGVjX3NzZTRfMSgKICAgICBOU1EtPmxhZ1By
ZXYgICAgICAgID0gcGl0Y2hMWyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBdOwogCiAgICAgLyogU2F2
ZSBxdWFudGl6ZWQgc3BlZWNoIHNpZ25hbCAqLwotICAgIC8qIERFQlVHX1NUT1JFX0RBVEEoIGVu
Yy5wY20sICZOU1EtPnhxW3BzRW5jQy0+bHRwX21lbV9sZW5ndGhdLCBwc0VuY0MtPmZyYW1lX2xl
bmd0aCAqIHNpemVvZiggb3B1c19pbnQxNiApICkgKi8KICAgICBzaWxrX21lbW1vdmUoIE5TUS0+
eHEsICAgICAgICAgICAmTlNRLT54cVsgICAgICAgICAgIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoIF0s
IHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOwogICAgIHNp
bGtfbWVtbW92ZSggTlNRLT5zTFRQX3NocF9RMTQsICZOU1EtPnNMVFBfc2hwX1ExNFsgcHNFbmND
LT5mcmFtZV9sZW5ndGggXSwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAqIHNpemVvZiggb3B1c19p
bnQzMiApICk7CiAgICAgUkVTVE9SRV9TVEFDSzsKQEAgLTMzMyw3ICszMzQsNyBAQCBzdGF0aWMg
T1BVU19JTkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjX3NzZTRf
MSgKICAgICBvcHVzX2ludCAgICAgICAgICAgIHByZWRpY3RMUENPcmRlciwgICAgICAgIC8qIEkg
ICAgUHJlZGljdGlvbiBmaWx0ZXIgb3JkZXIgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAg
ICAgICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgIG5TdGF0ZXNE
ZWxheWVkRGVjaXNpb24sIC8qIEkgICAgTnVtYmVyIG9mIHN0YXRlcyBpbiBkZWNpc2lvbiB0cmVl
ICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8q
IEkgICAgSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAgKi8KKyAgICBvcHVzX2lu
dCAgICAgICAgICAgICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkvTyAgSW5kZXggdG8gbmV3
ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgIGRlY2lz
aW9uRGVsYXkgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KICkKIHsKQEAgLTYzOCw4ICs2MzksOSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9p
ZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjX3NzZTRfMSgKICAgICAgICAgICAg
ICAgICBwc1NTWyAxIF0ueHFfUTE0ICAgICAgID0geHFfUTE0OwogICAgICAgICAgICAgfQogICAg
ICAgICB9Ci0gICAgICAgICpzbXBsX2J1Zl9pZHggID0gKCAqc21wbF9idWZfaWR4IC0gMSApICYg
REVDSVNJT05fREVMQVlfTUFTSzsgICAgICAgICAgICAgICAgICAgLyogSW5kZXggdG8gbmV3ZXN0
IHNhbXBsZXMgICAgICAgICAgICAgICovCi0gICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCAqc21w
bF9idWZfaWR4ICsgZGVjaXNpb25EZWxheSApICYgREVDSVNJT05fREVMQVlfTUFTSzsgICAgICAg
LyogSW5kZXggdG8gZGVjaXNpb25EZWxheSBvbGQgc2FtcGxlcyAgICovCisgICAgICAgICpzbXBs
X2J1Zl9pZHggID0gKCAqc21wbF9idWZfaWR4IC0gMSApICUgREVDSVNJT05fREVMQVk7CisgICAg
ICAgIGlmKCAqc21wbF9idWZfaWR4IDwgMCApICpzbXBsX2J1Zl9pZHggKz0gREVDSVNJT05fREVM
QVk7CisgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCAqc21wbF9idWZfaWR4ICsgZGVjaXNpb25E
ZWxheSApICUgREVDSVNJT05fREVMQVk7CiAKICAgICAgICAgLyogRmluZCB3aW5uZXIgKi8KICAg
ICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0ZVsgMCBdWyAwIF0uUkRfUTEwOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL3g4Ni9OU1Ffc3NlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L05TUV9zc2UuYwppbmRleCBiYjNjNWYx
OTU1NzBlYmNkODdkZGM2YjBmNmY0MDBiY2NlM2IyMTI3Li42YTllNmU5NmNmYWI4NWM0N2FlZGQ1
MmFkY2E1ZWM0YjQ2MmFiODE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L05TUV9zc2UuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsveDg2L05TUV9zc2UuYwpAQCAtNzEsNyArNzEsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9p
ZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl8xMF8xNl9zc2U0XzEoCiApOwogCiB2b2lkIHNp
bGtfTlNRX3NzZTRfMSgKLSAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgICAgKnBzRW5jQywg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIEVuY29kZXIgU3RhdGUg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgICAgKnBz
RW5jQywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEVuY29kZXIg
U3RhdGUgICAgICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX25zcV9zdGF0ZSAgICAgICAgICAg
ICAgKk5TUSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5T
USBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBTaWRlSW5mb0luZGljZXMgICAg
ICAgICAgICAgKnBzSW5kaWNlcywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
L08gIFF1YW50aXphdGlvbiBJbmRpY2VzICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2lu
dDMyICAgICAgICAgICAgeF9RM1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIFByZWZpbHRlcmVkIGlucHV0IHNpZ25hbCAgICAgICAgKi8KQEAgLTIzMyw3ICsy
MzMsNiBAQCB2b2lkIHNpbGtfTlNRX3NzZTRfMSgKICAgICBOU1EtPmxhZ1ByZXYgPSBwaXRjaExb
IHBzRW5jQy0+bmJfc3ViZnIgLSAxIF07CiAKICAgICAvKiBTYXZlIHF1YW50aXplZCBzcGVlY2gg
YW5kIG5vaXNlIHNoYXBpbmcgc2lnbmFscyAqLwotICAgIC8qIERFQlVHX1NUT1JFX0RBVEEoIGVu
Yy5wY20sICZOU1EtPnhxWyBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoIF0sIHBzRW5jQy0+ZnJhbWVf
bGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKSAqLwogICAgIHNpbGtfbWVtbW92ZSggTlNR
LT54cSwgICAgICAgICAgICZOU1EtPnhxWyAgICAgICAgICAgcHNFbmNDLT5mcmFtZV9sZW5ndGgg
XSwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CiAgICAg
c2lsa19tZW1tb3ZlKCBOU1EtPnNMVFBfc2hwX1ExNCwgJk5TUS0+c0xUUF9zaHBfUTE0WyBwc0Vu
Y0MtPmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICogc2l6ZW9mKCBvcHVz
X2ludDMyICkgKTsKICAgICBSRVNUT1JFX1NUQUNLOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni9tYWlu
X3NzZS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL3g4Ni9tYWluX3NzZS5oCmluZGV4IGQ4ZDYxMzEwZWRjZjk2ZTAxZWFlZDQy
NDY4ZTMyN2I5ZGUyZDRhMzguLjJmMTVkNDQ4Njk3ODFjNDM1MDE0ZGQxZGRiMmMwMjQyM2IxNmUz
YzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay94ODYvbWFpbl9zc2UuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L21haW5fc3Nl
LmgKQEAgLTM0LDYgKzM0LDcgQEAKIAogIyBpZiBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NT
RTRfMSkKIAorI2lmIDAgLyogRklYTUU6IFNTRSBkaXNhYmxlZCB1bnRpbCBzaWxrX1ZRX1dNYXRf
RUNfc3NlNF8xKCkgZ2V0cyB1cGRhdGVkLiAqLwogIyAgZGVmaW5lIE9WRVJSSURFX3NpbGtfVlFf
V01hdF9FQwogCiB2b2lkIHNpbGtfVlFfV01hdF9FQ19zc2U0XzEoCkBAIC03OSwxMSArODAsMTMg
QEAgZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxLX1ZRX1dNQVRfRUNfSU1QTFtPUFVTX0FSQ0hNQVNL
ICsgMV0pKAogICAgICAgICAgICAgICAgICAgICAgICAgICBtdV9ROSwgbWF4X2dhaW5fUTcsIEwp
KQogCiAjZW5kaWYKKyNlbmRpZgogCisjaWYgMCAvKiBGSVhNRTogU1NFIGRpc2FibGVkIHVudGls
IHRoZSBOU1EgY29kZSBnZXRzIHVwZGF0ZWQuICovCiAjICBkZWZpbmUgT1ZFUlJJREVfc2lsa19O
U1EKIAogdm9pZCBzaWxrX05TUV9zc2U0XzEoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRl
ICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBF
bmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVy
X3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3Rh
dGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUlu
Zm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCiAgICAg
Y29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICov
CkBAIC0xMTAsNyArMTEzLDcgQEAgdm9pZCBzaWxrX05TUV9zc2U0XzEoCiAjZWxzZQogCiBleHRl
cm4gdm9pZCAoKmNvbnN0IFNJTEtfTlNRX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKLSAgICBj
b25zdCBzaWxrX2VuY29kZXJfc3RhdGUgICAgKnBzRW5jQywgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJL08gIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgICAgKnBzRW5jQywgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBzaWxrX25zcV9zdGF0ZSAgICAgICAgICAgICAgKk5TUSwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAg
ICAgICAgICAgKi8KICAgICBTaWRlSW5mb0luZGljZXMgICAgICAgICAgICAgKnBzSW5kaWNlcywg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFF1YW50aXphdGlvbiBJbmRp
Y2VzICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgeF9RM1td
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFByZWZpbHRlcmVk
IGlucHV0IHNpZ25hbCAgICAgICAgKi8KQEAgLTEzNyw3ICsxNDAsNyBAQCBleHRlcm4gdm9pZCAo
KmNvbnN0IFNJTEtfTlNRX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKICMgIGRlZmluZSBPVkVS
UklERV9zaWxrX05TUV9kZWxfZGVjCiAKIHZvaWQgc2lsa19OU1FfZGVsX2RlY19zc2U0XzEoCi0g
ICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAg
ICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAg
ICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAg
ICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGlj
ZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24g
SW5kaWNlcyAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhf
UTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0
ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCkBAIC0xNjQsNyArMTY3LDcgQEAgdm9pZCBzaWxr
X05TUV9kZWxfZGVjX3NzZTRfMSgKICNlbHNlCiAKIGV4dGVybiB2b2lkICgqY29uc3QgU0lMS19O
U1FfREVMX0RFQ19JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCi0gICAgY29uc3Qgc2lsa19lbmNv
ZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2ls
a19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2ls
a19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgU2lkZUluZm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAg
ICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwg
ICAgICAgICovCkBAIC0xODcsNiArMTkwLDcgQEAgZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxLX05T
UV9ERUxfREVDX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2
LCBwaXRjaEwsIExhbWJkYV9RMTAsIExUUF9zY2FsZV9RMTQpKQogCiAjZW5kaWYKKyNlbmRpZgog
CiB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyKAogICAgIHNpbGtfbnNxX3N0YXRlICAg
ICAgKk5TUSwgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAg
ICAgICAgICAgICovCkBAIC0yMzgsMzkgKzI0Miw2IEBAIGV4dGVybiBvcHVzX2ludCAoKmNvbnN0
IFNJTEtfVkFEX0dFVFNBX1E4X0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKICAgICAgc2lsa19l
bmNvZGVyX3N0YXRlICpwc0VuQywKICAgICAgY29uc3Qgb3B1c19pbnQxNiAgIHBJbltdKTsKIAot
IyAgZGVmaW5lIE9WRVJSSURFX3NpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYCi0K
LSNlbmRpZgotCi12b2lkIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYX3NzZTRf
MSgKLSAgICAgICAgICBvcHVzX2ludDMyICAgICAgICAgICAgc3RhdGVbXSwgICAgICAgICAgICAg
ICAgICAgIC8qIEkvTyAgU3RhdGUgW29yZGVyICsgMV0gICAgICAgICAgICAgICAgICAgKi8KLSAg
ICAgICAgICBvcHVzX2ludDMyICAgICAgICAgICAgcmVzX1EyW10sICAgICAgICAgICAgICAgICAg
IC8qIE8gICAgUmVzaWR1YWwgc2lnbmFsIFtsZW5ndGhdICAgICAgICAgICAgKi8KLSAgICBjb25z
dCBvcHVzX2ludDE2ICAgICAgICAgICAgY29lZl9RMTNbXSwgICAgICAgICAgICAgICAgIC8qIEkg
ICAgQ29lZmZpY2llbnRzIFtvcmRlcl0gICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVz
X2ludDE2ICAgICAgICAgICAgaW5wdXRbXSwgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5w
dXQgc2lnbmFsIFtsZW5ndGhdICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2
ICAgICAgICAgICAgbGFtYmRhX1ExNiwgICAgICAgICAgICAgICAgIC8qIEkgICAgV2FycGluZyBm
YWN0b3IgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAg
ICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTGVuZ3RoIG9mIGlucHV0
IHNpZ25hbCAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAg
b3JkZXIgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRmlsdGVyIG9yZGVyIChldmVuKSAg
ICAgICAgICAgICAgICAgKi8KLSk7Ci0KLSNpZiBkZWZpbmVkKE9QVVNfWDg2X1BSRVNVTUVfU1NF
NF8xKQotI2RlZmluZSBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWChzdGF0ZSwg
cmVzX1EyLCBjb2VmX1ExMywgaW5wdXQsIGxhbWJkYV9RMTYsIGxlbmd0aCwgb3JkZXIsIGFyY2gp
IFwKLSAgICAoKHZvaWQpKGFyY2gpLHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklY
X2Moc3RhdGUsIHJlc19RMiwgY29lZl9RMTMsIGlucHV0LCBsYW1iZGFfUTE2LCBsZW5ndGgsIG9y
ZGVyKSkKLQotI2Vsc2UKLQotZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxLX1dBUlBFRF9MUENfQU5B
TFlTSVNfRklMVEVSX0ZJWF9JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCi0gICAgICAgICAgb3B1
c19pbnQzMiAgICAgICAgICAgIHN0YXRlW10sICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFN0
YXRlIFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgb3B1c19pbnQz
MiAgICAgICAgICAgIHJlc19RMltdLCAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJlc2lkdWFs
IHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgIGNvZWZfUTEzW10sICAgICAgICAgICAgICAgICAvKiBJICAgIENvZWZmaWNpZW50cyBb
b3JkZXJdICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAg
IGlucHV0W10sICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IHNpZ25hbCBbbGVuZ3Ro
XSAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGxhbWJk
YV9RMTYsICAgICAgICAgICAgICAgICAvKiBJICAgIFdhcnBpbmcgZmFjdG9yICAgICAgICAgICAg
ICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGxlbmd0aCwgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1dCBzaWduYWwgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICov
Ci0pOwotCi0jICBkZWZpbmUgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GSVgoc3Rh
dGUsIHJlc19RMiwgY29lZl9RMTMsIGlucHV0LCBsYW1iZGFfUTE2LCBsZW5ndGgsIG9yZGVyLCBh
cmNoKSBcCi0gICAgKCgqU0lMS19XQVJQRURfTFBDX0FOQUxZU0lTX0ZJTFRFUl9GSVhfSU1QTFso
YXJjaCkgJiBPUFVTX0FSQ0hNQVNLXSkoc3RhdGUsIHJlc19RMiwgY29lZl9RMTMsIGlucHV0LCBs
YW1iZGFfUTE2LCBsZW5ndGgsIG9yZGVyKSkKLQogI2VuZGlmCiAKICMgZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay94ODYveDg2X3NpbGtfbWFwLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L3g4Nl9zaWxrX21hcC5jCmluZGV4
IDgxODg0MWYyYzE5MDc5OWYzM2EzZmFkODllZGVmNjFhY2UxYWM3MTYuLjMyZGNjM2NhYjdhOTNi
ZDZjMzUwOWE4OWQ0YjgwNzcxYWFkMmRkZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYveDg2X3NpbGtf
bWFwLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL3g4Ni94ODZfc2lsa19tYXAuYwpAQCAtNjYsOCArNjYsOSBAQCBvcHVz
X2ludCAoKmNvbnN0IFNJTEtfVkFEX0dFVFNBX1E4X0lNUExbIE9QVVNfQVJDSE1BU0sgKyAxIF0g
KSgKICAgTUFZX0hBVkVfU1NFNF8xKCBzaWxrX1ZBRF9HZXRTQV9ROCApICAvKiBhdnggKi8KIH07
CiAKKyNpZiAwIC8qIEZJWE1FOiBTU0UgZGlzYWJsZWQgdW50aWwgdGhlIE5TUSBjb2RlIGdldHMg
dXBkYXRlZC4gKi8KIHZvaWQgKCpjb25zdCBTSUxLX05TUV9JTVBMWyBPUFVTX0FSQ0hNQVNLICsg
MSBdICkoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAg
ICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAg
ICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1Es
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUg
ICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAgICAgICAg
ICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFu
dGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAg
ICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCkBAIC04OSw3ICs5MCw5IEBAIHZv
aWQgKCpjb25zdCBTSUxLX05TUV9JTVBMWyBPUFVTX0FSQ0hNQVNLICsgMSBdICkoCiAgIE1BWV9I
QVZFX1NTRTRfMSggc2lsa19OU1EgKSwgLyogc3NlNC4xICovCiAgIE1BWV9IQVZFX1NTRTRfMSgg
c2lsa19OU1EgKSAgLyogYXZ4ICovCiB9OworI2VuZGlmCiAKKyNpZiAwIC8qIEZJWE1FOiBTU0Ug
ZGlzYWJsZWQgdW50aWwgc2lsa19WUV9XTWF0X0VDX3NzZTRfMSgpIGdldHMgdXBkYXRlZC4gKi8K
IHZvaWQgKCpjb25zdCBTSUxLX1ZRX1dNQVRfRUNfSU1QTFsgT1BVU19BUkNITUFTSyArIDEgXSAp
KAogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICAqaW5kLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIE8gICAgaW5kZXggb2YgYmVzdCBjb2RlYm9vayB2ZWN0b3IgICAgICAgICAg
ICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqcmF0ZV9kaXN0X1ExNCwg
ICAgICAgICAgICAgICAgIC8qIE8gICAgYmVzdCB3ZWlnaHRlZCBxdWFudCBlcnJvciArIG11ICog
cmF0ZSAgICAgICAqLwpAQCAtMTA5LDkgKzExMiwxMSBAQCB2b2lkICgqY29uc3QgU0lMS19WUV9X
TUFUX0VDX0lNUExbIE9QVVNfQVJDSE1BU0sgKyAxIF0gKSgKICAgTUFZX0hBVkVfU1NFNF8xKCBz
aWxrX1ZRX1dNYXRfRUMgKSwgLyogc3NlNC4xICovCiAgIE1BWV9IQVZFX1NTRTRfMSggc2lsa19W
UV9XTWF0X0VDICkgIC8qIGF2eCAqLwogfTsKKyNlbmRpZgogCisjaWYgMCAvKiBGSVhNRTogU1NF
IGRpc2FibGVkIHVudGlsIHRoZSBOU1EgY29kZSBnZXRzIHVwZGF0ZWQuICovCiB2b2lkICgqY29u
c3QgU0lMS19OU1FfREVMX0RFQ19JTVBMWyBPUFVTX0FSQ0hNQVNLICsgMSBdICkoCi0gICAgY29u
c3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCisg
ICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAg
ICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAg
ICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGljZXMsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5kaWNl
cyAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNbXSwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJlZCBp
bnB1dCBzaWduYWwgICAgICAgICovCkBAIC0xMzMsMjUgKzEzOCwxMCBAQCB2b2lkICgqY29uc3Qg
U0lMS19OU1FfREVMX0RFQ19JTVBMWyBPUFVTX0FSQ0hNQVNLICsgMSBdICkoCiAgIE1BWV9IQVZF
X1NTRTRfMSggc2lsa19OU1FfZGVsX2RlYyApLCAvKiBzc2U0LjEgKi8KICAgTUFZX0hBVkVfU1NF
NF8xKCBzaWxrX05TUV9kZWxfZGVjICkgIC8qIGF2eCAqLwogfTsKKyNlbmRpZgogCiAjaWYgZGVm
aW5lZChGSVhFRF9QT0lOVCkKIAotdm9pZCAoKmNvbnN0IFNJTEtfV0FSUEVEX0xQQ19BTkFMWVNJ
U19GSUxURVJfRklYX0lNUExbIE9QVVNfQVJDSE1BU0sgKyAxIF0gKSgKLSAgICBvcHVzX2ludDMy
ICAgICAgICAgICAgICAgICAgc3RhdGVbXSwgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgU3Rh
dGUgW29yZGVyICsgMV0gICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAg
ICAgICAgICAgICAgcmVzX1EyW10sICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmVzaWR1YWwg
c2lnbmFsIFtsZW5ndGhdICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAg
ICAgICAgY29lZl9RMTNbXSwgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29lZmZpY2llbnRzIFtv
cmRlcl0gICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAg
aW5wdXRbXSwgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgc2lnbmFsIFtsZW5ndGhd
ICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgbGFtYmRh
X1ExNiwgICAgICAgICAgICAgICAgIC8qIEkgICAgV2FycGluZyBmYWN0b3IgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgbGVuZ3RoLCAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgTGVuZ3RoIG9mIGlucHV0IHNpZ25hbCAgICAgICAgICAg
ICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgRmlsdGVyIG9yZGVyIChldmVuKSAgICAgICAgICAgICAgICAgKi8K
LSkgPSB7Ci0gIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYX2MsICAgICAgICAg
ICAgICAgICAgLyogbm9uLXNzZSAqLwotICBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVy
X0ZJWF9jLAotICBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWF9jLAotICBNQVlf
SEFWRV9TU0U0XzEoIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYICksIC8qIHNz
ZTQuMSAqLwotICBNQVlfSEFWRV9TU0U0XzEoIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0
ZXJfRklYICkgIC8qIGF2eCAqLwotfTsKLQogdm9pZCAoKmNvbnN0IFNJTEtfQlVSR19NT0RJRklF
RF9JTVBMWyBPUFVTX0FSQ0hNQVNLICsgMSBdICkoCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAg
ICAgICAgICpyZXNfbnJnLCAgICAgICAgICAgLyogTyAgICBSZXNpZHVhbCBlbmVyZ3kgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgICAqcmVzX25yZ19RLCAgICAgICAgIC8qIE8gICAgUmVzaWR1YWwgZW5l
cmd5IFEgdmFsdWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc3JjL2FuYWx5c2lzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5jCmluZGV4IDY2MzQzMWE0MzZhMWM4
MWE5YmE3M2ZmMmE2ZjJkN2ZmZmFlYmIxNTguLmY0MTYwZTRiNGVkNWMxMTRjZjdkNjEwZGJkOTdh
MTU2OTA2MGEwNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL2FuYWx5c2lzLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvYW5hbHlzaXMu
YwpAQCAtMjksMjAgKzI5LDI3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjZW5kaWYKIAorI2Rl
ZmluZSBBTkFMWVNJU19DCisKKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSAibWF0aG9w
cy5oIgogI2luY2x1ZGUgImtpc3NfZmZ0LmgiCiAjaW5jbHVkZSAiY2VsdC5oIgogI2luY2x1ZGUg
Im1vZGVzLmgiCiAjaW5jbHVkZSAiYXJjaC5oIgogI2luY2x1ZGUgInF1YW50X2JhbmRzLmgiCi0j
aW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlICJhbmFseXNpcy5oIgogI2luY2x1ZGUgIm1scC5o
IgogI2luY2x1ZGUgInN0YWNrX2FsbG9jLmgiCisjaW5jbHVkZSAiZmxvYXRfY2FzdC5oIgogCiAj
aWZuZGVmIE1fUEkKICNkZWZpbmUgTV9QSSAzLjE0MTU5MjY1MwogI2VuZGlmCiAKKyNpZm5kZWYg
RElTQUJMRV9GTE9BVF9BUEkKKwogc3RhdGljIGNvbnN0IGZsb2F0IGRjdF90YWJsZVsxMjhdID0g
ewogICAgICAgICAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAu
MjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwKICAgICAgICAgMC4yNTAw
MDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAw
ZiwgMC4yNTAwMDBmLCAwLjI1MDAwMGYsCkBAIC05Niw1MiArMTAzLDExOCBAQCBzdGF0aWMgY29u
c3QgZmxvYXQgYW5hbHlzaXNfd2luZG93WzI0MF0gPSB7CiB9OwogCiBzdGF0aWMgY29uc3QgaW50
IHRiYW5kc1tOQl9UQkFORFMrMV0gPSB7Ci0gICAgICAgMiwgIDQsICA2LCAgOCwgMTAsIDEyLCAx
NCwgMTYsIDIwLCAyNCwgMjgsIDMyLCA0MCwgNDgsIDU2LCA2OCwgODAsIDk2LCAxMjAKKyAgICAg
IDQsIDgsIDEyLCAxNiwgMjAsIDI0LCAyOCwgMzIsIDQwLCA0OCwgNTYsIDY0LCA4MCwgOTYsIDEx
MiwgMTM2LCAxNjAsIDE5MiwgMjQwCiB9OwogCi1zdGF0aWMgY29uc3QgaW50IGV4dHJhX2JhbmRz
W05CX1RPVF9CQU5EUysxXSA9IHsKLSAgICAgIDEsIDIsICA0LCAgNiwgIDgsIDEwLCAxMiwgMTQs
IDE2LCAyMCwgMjQsIDI4LCAzMiwgNDAsIDQ4LCA1NiwgNjgsIDgwLCA5NiwgMTIwLCAxNjAsIDIw
MAotfTsKLQotLypzdGF0aWMgY29uc3QgZmxvYXQgdHdlaWdodFtOQl9UQkFORFMrMV0gPSB7Ci0g
ICAgICAuMywgLjQsIC41LCAuNiwgLjcsIC44LCAuOSwgMS4sIDEuLCAxLiwgMS4sIDEuLCAxLiwg
MS4sIC44LCAuNywgLjYsIC41Ci19OyovCi0KICNkZWZpbmUgTkJfVE9OQUxfU0tJUF9CQU5EUyA5
CiAKLSNkZWZpbmUgY0EgMC40MzE1Nzk3NGYKLSNkZWZpbmUgY0IgMC42Nzg0ODQwM2YKLSNkZWZp
bmUgY0MgMC4wODU5NTU0MmYKLSNkZWZpbmUgY0UgKChmbG9hdClNX1BJLzIpCi1zdGF0aWMgT1BV
U19JTkxJTkUgZmxvYXQgZmFzdF9hdGFuMmYoZmxvYXQgeSwgZmxvYXQgeCkgewotICAgZmxvYXQg
eDIsIHkyOwotICAgLyogU2hvdWxkIGF2b2lkIHVuZGVyZmxvdyBvbiB0aGUgdmFsdWVzIHdlJ2xs
IGdldCAqLwotICAgaWYgKEFCUzE2KHgpK0FCUzE2KHkpPDFlLTlmKQorc3RhdGljIG9wdXNfdmFs
MzIgc2lsa19yZXNhbXBsZXJfZG93bjJfaHAoCisgICAgb3B1c192YWwzMiAgICAgICAgICAgICAg
ICAgICpTLCAgICAgICAgICAgICAgICAgLyogSS9PICBTdGF0ZSB2ZWN0b3IgWyAyIF0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfdmFsMzIgICAg
ICAgICAgICAgICAgICAqb3V0LCAgICAgICAgICAgICAgIC8qIE8gICAgT3V0cHV0IHNpZ25hbCBb
IGZsb29yKGxlbi8yKSBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25z
dCBvcHVzX3ZhbDMyICAgICAgICAgICAgKmluLCAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0
IHNpZ25hbCBbIGxlbiBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgIGluTGVuICAgICAgICAgICAgICAgLyog
SSAgICBOdW1iZXIgb2YgaW5wdXQgc2FtcGxlcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworKQoreworICAgIGludCBrLCBsZW4yID0gaW5MZW4vMjsKKyAgICBvcHVzX3Zh
bDMyIGluMzIsIG91dDMyLCBvdXQzMl9ocCwgWSwgWDsKKyAgICBvcHVzX3ZhbDY0IGhwX2VuZXIg
PSAwOworICAgIC8qIEludGVybmFsIHZhcmlhYmxlcyBhbmQgc3RhdGUgYXJlIGluIFExMCBmb3Jt
YXQgKi8KKyAgICBmb3IoIGsgPSAwOyBrIDwgbGVuMjsgaysrICkgeworICAgICAgICAvKiBDb252
ZXJ0IHRvIFExMCAqLworICAgICAgICBpbjMyID0gaW5bIDIgKiBrIF07CisKKyAgICAgICAgLyog
QWxsLXBhc3Mgc2VjdGlvbiBmb3IgZXZlbiBpbnB1dCBzYW1wbGUgKi8KKyAgICAgICAgWSAgICAg
ID0gU1VCMzIoIGluMzIsIFNbIDAgXSApOworICAgICAgICBYICAgICAgPSBNVUxUMTZfMzJfUTE1
KFFDT05TVDE2KDAuNjA3NDM3MWYsIDE1KSwgWSk7CisgICAgICAgIG91dDMyICA9IEFERDMyKCBT
WyAwIF0sIFggKTsKKyAgICAgICAgU1sgMCBdID0gQUREMzIoIGluMzIsIFggKTsKKyAgICAgICAg
b3V0MzJfaHAgPSBvdXQzMjsKKyAgICAgICAgLyogQ29udmVydCB0byBRMTAgKi8KKyAgICAgICAg
aW4zMiA9IGluWyAyICogayArIDEgXTsKKworICAgICAgICAvKiBBbGwtcGFzcyBzZWN0aW9uIGZv
ciBvZGQgaW5wdXQgc2FtcGxlLCBhbmQgYWRkIHRvIG91dHB1dCBvZiBwcmV2aW91cyBzZWN0aW9u
ICovCisgICAgICAgIFkgICAgICA9IFNVQjMyKCBpbjMyLCBTWyAxIF0gKTsKKyAgICAgICAgWCAg
ICAgID0gTVVMVDE2XzMyX1ExNShRQ09OU1QxNigwLjE1MDYzZiwgMTUpLCBZKTsKKyAgICAgICAg
b3V0MzIgID0gQUREMzIoIG91dDMyLCBTWyAxIF0gKTsKKyAgICAgICAgb3V0MzIgID0gQUREMzIo
IG91dDMyLCBYICk7CisgICAgICAgIFNbIDEgXSA9IEFERDMyKCBpbjMyLCBYICk7CisKKyAgICAg
ICAgWSAgICAgID0gU1VCMzIoIC1pbjMyLCBTWyAyIF0gKTsKKyAgICAgICAgWCAgICAgID0gTVVM
VDE2XzMyX1ExNShRQ09OU1QxNigwLjE1MDYzZiwgMTUpLCBZKTsKKyAgICAgICAgb3V0MzJfaHAg
ID0gQUREMzIoIG91dDMyX2hwLCBTWyAyIF0gKTsKKyAgICAgICAgb3V0MzJfaHAgID0gQUREMzIo
IG91dDMyX2hwLCBYICk7CisgICAgICAgIFNbIDIgXSA9IEFERDMyKCAtaW4zMiwgWCApOworCisg
ICAgICAgIGhwX2VuZXIgKz0gb3V0MzJfaHAqKG9wdXNfdmFsNjQpb3V0MzJfaHA7CisgICAgICAg
IC8qIEFkZCwgY29udmVydCBiYWNrIHRvIGludDE2IGFuZCBzdG9yZSB0byBvdXRwdXQgKi8KKyAg
ICAgICAgb3V0WyBrIF0gPSBIQUxGMzIob3V0MzIpOworICAgIH0KKyNpZmRlZiBGSVhFRF9QT0lO
VAorICAgIC8qIGxlbjIgY2FuIGJlIHVwIHRvIDQ4MCwgc28gd2Ugc2hpZnQgYnkgOCBtb3JlIHRv
IG1ha2UgaXQgZml0LiAqLworICAgIGhwX2VuZXIgPSBocF9lbmVyID4+ICgyKlNJR19TSElGVCAr
IDgpOworI2VuZGlmCisgICAgcmV0dXJuIChvcHVzX3ZhbDMyKWhwX2VuZXI7Cit9CisKK3N0YXRp
YyBvcHVzX3ZhbDMyIGRvd25taXhfYW5kX3Jlc2FtcGxlKGRvd25taXhfZnVuYyBkb3dubWl4LCBj
b25zdCB2b2lkICpfeCwgb3B1c192YWwzMiAqeSwgb3B1c192YWwzMiBTWzNdLCBpbnQgc3ViZnJh
bWUsIGludCBvZmZzZXQsIGludCBjMSwgaW50IGMyLCBpbnQgQywgaW50IEZzKQoreworICAgVkFS
REVDTChvcHVzX3ZhbDMyLCB0bXApOworICAgb3B1c192YWwzMiBzY2FsZTsKKyAgIGludCBqOwor
ICAgb3B1c192YWwzMiByZXQgPSAwOworICAgU0FWRV9TVEFDSzsKKworICAgaWYgKHN1YmZyYW1l
PT0wKSByZXR1cm4gMDsKKyAgIGlmIChGcyA9PSA0ODAwMCkKICAgIHsKLSAgICAgIHgqPTFlMTJm
OwotICAgICAgeSo9MWUxMmY7CisgICAgICBzdWJmcmFtZSAqPSAyOworICAgICAgb2Zmc2V0ICo9
IDI7CisgICB9IGVsc2UgaWYgKEZzID09IDE2MDAwKSB7CisgICAgICBzdWJmcmFtZSA9IHN1YmZy
YW1lKjIvMzsKKyAgICAgIG9mZnNldCA9IG9mZnNldCoyLzM7CiAgICB9Ci0gICB4MiA9IHgqeDsK
LSAgIHkyID0geSp5OwotICAgaWYoeDI8eTIpewotICAgICAgZmxvYXQgZGVuID0gKHkyICsgY0Iq
eDIpICogKHkyICsgY0MqeDIpOwotICAgICAgaWYgKGRlbiE9MCkKLSAgICAgICAgIHJldHVybiAt
eCp5Kih5MiArIGNBKngyKSAvIGRlbiArICh5PDAgPyAtY0UgOiBjRSk7Ci0gICAgICBlbHNlCi0g
ICAgICAgICByZXR1cm4gKHk8MCA/IC1jRSA6IGNFKTsKLSAgIH1lbHNlewotICAgICAgZmxvYXQg
ZGVuID0gKHgyICsgY0IqeTIpICogKHgyICsgY0MqeTIpOwotICAgICAgaWYgKGRlbiE9MCkKLSAg
ICAgICAgIHJldHVybiAgeCp5Kih4MiArIGNBKnkyKSAvIGRlbiArICh5PDAgPyAtY0UgOiBjRSkg
LSAoeCp5PDAgPyAtY0UgOiBjRSk7Ci0gICAgICBlbHNlCi0gICAgICAgICByZXR1cm4gKHk8MCA/
IC1jRSA6IGNFKSAtICh4Knk8MCA/IC1jRSA6IGNFKTsKKyAgIEFMTE9DKHRtcCwgc3ViZnJhbWUs
IG9wdXNfdmFsMzIpOworCisgICBkb3dubWl4KF94LCB0bXAsIHN1YmZyYW1lLCBvZmZzZXQsIGMx
LCBjMiwgQyk7CisjaWZkZWYgRklYRURfUE9JTlQKKyAgIHNjYWxlID0gKDE8PFNJR19TSElGVCk7
CisjZWxzZQorICAgc2NhbGUgPSAxLmYvMzI3Njg7CisjZW5kaWYKKyAgIGlmIChjMj09LTIpCisg
ICAgICBzY2FsZSAvPSBDOworICAgZWxzZSBpZiAoYzI+LTEpCisgICAgICBzY2FsZSAvPSAyOwor
ICAgZm9yIChqPTA7ajxzdWJmcmFtZTtqKyspCisgICAgICB0bXBbal0gKj0gc2NhbGU7CisgICBp
ZiAoRnMgPT0gNDgwMDApCisgICB7CisgICAgICByZXQgPSBzaWxrX3Jlc2FtcGxlcl9kb3duMl9o
cChTLCB5LCB0bXAsIHN1YmZyYW1lKTsKKyAgIH0gZWxzZSBpZiAoRnMgPT0gMjQwMDApIHsKKyAg
ICAgIE9QVVNfQ09QWSh5LCB0bXAsIHN1YmZyYW1lKTsKKyAgIH0gZWxzZSBpZiAoRnMgPT0gMTYw
MDApIHsKKyAgICAgIFZBUkRFQ0wob3B1c192YWwzMiwgdG1wM3gpOworICAgICAgQUxMT0ModG1w
M3gsIDMqc3ViZnJhbWUsIG9wdXNfdmFsMzIpOworICAgICAgLyogRG9uJ3QgZG8gdGhpcyBhdCBo
b21lISBUaGlzIHJlc2FtcGxlciBpcyBob3JyaWJsZSBhbmQgaXQncyBvbmx5IChiYXJlbHkpCisg
ICAgICAgICB1c2FibGUgZm9yIHRoZSBwdXJwb3NlIG9mIHRoZSBhbmFseXNpcyBiZWNhdXNlIHdl
IGRvbid0IGNhcmUgYWJvdXQgYWxsCisgICAgICAgICB0aGUgYWxpYXNpbmcgYmV0d2VlbiA4IGtI
eiBhbmQgMTIga0h6LiAqLworICAgICAgZm9yIChqPTA7ajxzdWJmcmFtZTtqKyspCisgICAgICB7
CisgICAgICAgICB0bXAzeFszKmpdID0gdG1wW2pdOworICAgICAgICAgdG1wM3hbMypqKzFdID0g
dG1wW2pdOworICAgICAgICAgdG1wM3hbMypqKzJdID0gdG1wW2pdOworICAgICAgfQorICAgICAg
c2lsa19yZXNhbXBsZXJfZG93bjJfaHAoUywgeSwgdG1wM3gsIDMqc3ViZnJhbWUpOwogICAgfQor
ICAgUkVTVE9SRV9TVEFDSzsKKyAgIHJldHVybiByZXQ7CiB9CiAKLXZvaWQgdG9uYWxpdHlfYW5h
bHlzaXNfaW5pdChUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsKQordm9pZCB0b25hbGl0eV9h
bmFseXNpc19pbml0KFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIG9wdXNfaW50MzIgRnMp
CiB7CiAgIC8qIEluaXRpYWxpemUgcmV1c2FibGUgZmllbGRzLiAqLwogICB0b25hbC0+YXJjaCA9
IG9wdXNfc2VsZWN0X2FyY2goKTsKKyAgdG9uYWwtPkZzID0gRnM7CiAgIC8qIENsZWFyIHJlbWFp
bmluZyBmaWVsZHMuICovCiAgIHRvbmFsaXR5X2FuYWx5c2lzX3Jlc2V0KHRvbmFsKTsKIH0KQEAg
LTE1MSw2ICsyMjQsOCBAQCB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzX3Jlc2V0KFRvbmFsaXR5QW5h
bHlzaXNTdGF0ZSAqdG9uYWwpCiAgIC8qIENsZWFyIG5vbi1yZXVzYWJsZSBmaWVsZHMuICovCiAg
IGNoYXIgKnN0YXJ0ID0gKGNoYXIqKSZ0b25hbC0+VE9OQUxJVFlfQU5BTFlTSVNfUkVTRVRfU1RB
UlQ7CiAgIE9QVVNfQ0xFQVIoc3RhcnQsIHNpemVvZihUb25hbGl0eUFuYWx5c2lzU3RhdGUpIC0g
KHN0YXJ0IC0gKGNoYXIqKXRvbmFsKSk7CisgIHRvbmFsLT5tdXNpY19jb25maWRlbmNlID0gLjlm
OworICB0b25hbC0+c3BlZWNoX2NvbmZpZGVuY2UgPSAuMWY7CiB9CiAKIHZvaWQgdG9uYWxpdHlf
Z2V0X2luZm8oVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgQW5hbHlzaXNJbmZvICppbmZv
X291dCwgaW50IGxlbikKQEAgLTE1OCw2ICsyMzMsOSBAQCB2b2lkIHRvbmFsaXR5X2dldF9pbmZv
KFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIEFuYWx5c2lzSW5mbyAqaW5mb19vdXQsIGlu
dAogICAgaW50IHBvczsKICAgIGludCBjdXJyX2xvb2thaGVhZDsKICAgIGZsb2F0IHBzdW07Cisg
ICBmbG9hdCB0b25hbGl0eV9tYXg7CisgICBmbG9hdCB0b25hbGl0eV9hdmc7CisgICBpbnQgdG9u
YWxpdHlfY291bnQ7CiAgICBpbnQgaTsKIAogICAgcG9zID0gdG9uYWwtPnJlYWRfcG9zOwpAQCAt
MTY1LDcgKzI0Myw4IEBAIHZvaWQgdG9uYWxpdHlfZ2V0X2luZm8oVG9uYWxpdHlBbmFseXNpc1N0
YXRlICp0b25hbCwgQW5hbHlzaXNJbmZvICppbmZvX291dCwgaW50CiAgICBpZiAoY3Vycl9sb29r
YWhlYWQ8MCkKICAgICAgIGN1cnJfbG9va2FoZWFkICs9IERFVEVDVF9TSVpFOwogCi0gICBpZiAo
bGVuID4gNDgwICYmIHBvcyAhPSB0b25hbC0+d3JpdGVfcG9zKQorICAgLyogT24gbG9uZyBmcmFt
ZXMsIGxvb2sgYXQgdGhlIHNlY29uZCBhbmFseXNpcyB3aW5kb3cgcmF0aGVyIHRoYW4gdGhlIGZp
cnN0LiAqLworICAgaWYgKGxlbiA+IHRvbmFsLT5Gcy81MCAmJiBwb3MgIT0gdG9uYWwtPndyaXRl
X3BvcykKICAgIHsKICAgICAgIHBvcysrOwogICAgICAgaWYgKHBvcz09REVURUNUX1NJWkUpCkBA
IC0xNzYsMTggKzI1NSwzMiBAQCB2b2lkIHRvbmFsaXR5X2dldF9pbmZvKFRvbmFsaXR5QW5hbHlz
aXNTdGF0ZSAqdG9uYWwsIEFuYWx5c2lzSW5mbyAqaW5mb19vdXQsIGludAogICAgaWYgKHBvczww
KQogICAgICAgcG9zID0gREVURUNUX1NJWkUtMTsKICAgIE9QVVNfQ09QWShpbmZvX291dCwgJnRv
bmFsLT5pbmZvW3Bvc10sIDEpOwotICAgdG9uYWwtPnJlYWRfc3ViZnJhbWUgKz0gbGVuLzEyMDsK
LSAgIHdoaWxlICh0b25hbC0+cmVhZF9zdWJmcmFtZT49NCkKKyAgIHRvbmFsaXR5X21heCA9IHRv
bmFsaXR5X2F2ZyA9IGluZm9fb3V0LT50b25hbGl0eTsKKyAgIHRvbmFsaXR5X2NvdW50ID0gMTsK
KyAgIC8qIElmIHBvc3NpYmxlLCBsb29rIGFoZWFkIGZvciBhIHRvbmUgdG8gY29tcGVuc2F0ZSBm
b3IgdGhlIGRlbGF5IGluIHRoZSB0b25lIGRldGVjdG9yLiAqLworICAgZm9yIChpPTA7aTwzO2kr
KykKICAgIHsKLSAgICAgIHRvbmFsLT5yZWFkX3N1YmZyYW1lIC09IDQ7CisgICAgICBwb3MrKzsK
KyAgICAgIGlmIChwb3M9PURFVEVDVF9TSVpFKQorICAgICAgICAgcG9zID0gMDsKKyAgICAgIGlm
IChwb3MgPT0gdG9uYWwtPndyaXRlX3BvcykKKyAgICAgICAgIGJyZWFrOworICAgICAgdG9uYWxp
dHlfbWF4ID0gTUFYMzIodG9uYWxpdHlfbWF4LCB0b25hbC0+aW5mb1twb3NdLnRvbmFsaXR5KTsK
KyAgICAgIHRvbmFsaXR5X2F2ZyArPSB0b25hbC0+aW5mb1twb3NdLnRvbmFsaXR5OworICAgICAg
dG9uYWxpdHlfY291bnQrKzsKKyAgIH0KKyAgIGluZm9fb3V0LT50b25hbGl0eSA9IE1BWDMyKHRv
bmFsaXR5X2F2Zy90b25hbGl0eV9jb3VudCwgdG9uYWxpdHlfbWF4LS4yZik7CisgICB0b25hbC0+
cmVhZF9zdWJmcmFtZSArPSBsZW4vKHRvbmFsLT5Gcy80MDApOworICAgd2hpbGUgKHRvbmFsLT5y
ZWFkX3N1YmZyYW1lPj04KQorICAgeworICAgICAgdG9uYWwtPnJlYWRfc3ViZnJhbWUgLT0gODsK
ICAgICAgIHRvbmFsLT5yZWFkX3BvcysrOwogICAgfQogICAgaWYgKHRvbmFsLT5yZWFkX3Bvcz49
REVURUNUX1NJWkUpCiAgICAgICB0b25hbC0+cmVhZF9wb3MtPURFVEVDVF9TSVpFOwogCi0gICAv
KiBDb21wZW5zYXRlIGZvciB0aGUgZGVsYXkgaW4gdGhlIGZlYXR1cmVzIHRoZW1zZWx2ZXMuCi0g
ICAgICBGSVhNRTogTmVlZCBhIGJldHRlciBlc3RpbWF0ZSB0aGUgMTAgSSBqdXN0IG1hZGUgdXAg
Ki8KLSAgIGN1cnJfbG9va2FoZWFkID0gSU1BWChjdXJyX2xvb2thaGVhZC0xMCwgMCk7CisgICAv
KiBUaGUgLTEgaXMgdG8gY29tcGVuc2F0ZSBmb3IgdGhlIGRlbGF5IGluIHRoZSBmZWF0dXJlcyB0
aGVtc2VsdmVzLiAqLworICAgY3Vycl9sb29rYWhlYWQgPSBJTUFYKGN1cnJfbG9va2FoZWFkLTEs
IDApOwogCiAgICBwc3VtPTA7CiAgICAvKiBTdW1taW5nIHRoZSBwcm9iYWJpbGl0eSBvZiB0cmFu
c2l0aW9uIHBhdHRlcm5zIHRoYXQgaW52b2x2ZSBtdXNpYyBhdApAQCAtMTk3LDExICsyOTAsMjgg
QEAgdm9pZCB0b25hbGl0eV9nZXRfaW5mbyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBB
bmFseXNpc0luZm8gKmluZm9fb3V0LCBpbnQKICAgIGZvciAoO2k8REVURUNUX1NJWkU7aSsrKQog
ICAgICAgcHN1bSArPSB0b25hbC0+cHNwZWVjaFtpXTsKICAgIHBzdW0gPSBwc3VtKnRvbmFsLT5t
dXNpY19jb25maWRlbmNlICsgKDEtcHN1bSkqdG9uYWwtPnNwZWVjaF9jb25maWRlbmNlOwotICAg
LypwcmludGYoIiVmICVmICVmXG4iLCBwc3VtLCBpbmZvX291dC0+bXVzaWNfcHJvYiwgaW5mb19v
dXQtPnRvbmFsaXR5KTsqLworICAgLypwcmludGYoIiVmICVmICVmICVmICVmXG4iLCBwc3VtLCBp
bmZvX291dC0+bXVzaWNfcHJvYiwgaW5mb19vdXQtPnZhZF9wcm9iLCBpbmZvX291dC0+YWN0aXZp
dHlfcHJvYmFiaWxpdHksIGluZm9fb3V0LT50b25hbGl0eSk7Ki8KIAogICAgaW5mb19vdXQtPm11
c2ljX3Byb2IgPSBwc3VtOwogfQogCitzdGF0aWMgY29uc3QgZmxvYXQgc3RkX2ZlYXR1cmVfYmlh
c1s5XSA9IHsKKyAgICAgIDUuNjg0OTQ3ZiwgMy40NzUyODhmLCAxLjc3MDYzNGYsIDEuNTk5Nzg0
ZiwgMy43NzMyMTVmLAorICAgICAgMi4xNjMzMTNmLCAxLjI2MDc1NmYsIDEuMTE2ODY4ZiwgMS45
MTg3OTVmCit9OworCisjZGVmaW5lIExFQUtBR0VfT0ZGU0VUIDIuNWYKKyNkZWZpbmUgTEVBS0FH
RV9TTE9QRSAyLmYKKworI2lmZGVmIEZJWEVEX1BPSU5UCisvKiBGb3IgZml4ZWQtcG9pbnQsIHRo
ZSBpbnB1dCBpcyArLy0yXjE1IHNoaWZ0ZWQgdXAgYnkgU0lHX1NISUZULCBzbyB3ZSBuZWVkIHRv
CisgICBjb21wZW5zYXRlIGZvciB0aGF0IGluIHRoZSBlbmVyZ3kuICovCisjZGVmaW5lIFNDQUxF
X0NPTVBFTlMgKDEuZi8oKG9wdXNfaW50MzIpMTw8KDE1K1NJR19TSElGVCkpKQorI2RlZmluZSBT
Q0FMRV9FTkVSKGUpICgoU0NBTEVfQ09NUEVOUypTQ0FMRV9DT01QRU5TKSooZSkpCisjZWxzZQor
I2RlZmluZSBTQ0FMRV9FTkVSKGUpIChlKQorI2VuZGlmCisKIHN0YXRpYyB2b2lkIHRvbmFsaXR5
X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2RlICpj
ZWx0X21vZGUsIGNvbnN0IHZvaWQgKngsIGludCBsZW4sIGludCBvZmZzZXQsIGludCBjMSwgaW50
IGMyLCBpbnQgQywgaW50IGxzYl9kZXB0aCwgZG93bm1peF9mdW5jIGRvd25taXgpCiB7CiAgICAg
aW50IGksIGI7CkBAIC0yMzUsMTkgKzM0NSw0MSBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFs
eXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAog
ICAgIGZsb2F0IG5vaXNlX2Zsb29yOwogICAgIGludCByZW1haW5pbmc7CiAgICAgQW5hbHlzaXNJ
bmZvICppbmZvOworICAgIGZsb2F0IGhwX2VuZXI7CisgICAgZmxvYXQgdG9uYWxpdHkyWzI0MF07
CisgICAgZmxvYXQgbWlkRVs4XTsKKyAgICBmbG9hdCBzcGVjX3ZhcmlhYmlsaXR5PTA7CisgICAg
ZmxvYXQgYmFuZF9sb2cyW05CX1RCQU5EUysxXTsKKyAgICBmbG9hdCBsZWFrYWdlX2Zyb21bTkJf
VEJBTkRTKzFdOworICAgIGZsb2F0IGxlYWthZ2VfdG9bTkJfVEJBTkRTKzFdOwogICAgIFNBVkVf
U1RBQ0s7CiAKLSAgICB0b25hbC0+bGFzdF90cmFuc2l0aW9uKys7Ci0gICAgYWxwaGEgPSAxLmYv
SU1JTigyMCwgMSt0b25hbC0+Y291bnQpOwotICAgIGFscGhhRSA9IDEuZi9JTUlOKDUwLCAxK3Rv
bmFsLT5jb3VudCk7Ci0gICAgYWxwaGFFMiA9IDEuZi9JTUlOKDEwMDAsIDErdG9uYWwtPmNvdW50
KTsKKyAgICBhbHBoYSA9IDEuZi9JTUlOKDEwLCAxK3RvbmFsLT5jb3VudCk7CisgICAgYWxwaGFF
ID0gMS5mL0lNSU4oMjUsIDErdG9uYWwtPmNvdW50KTsKKyAgICBhbHBoYUUyID0gMS5mL0lNSU4o
NTAwLCAxK3RvbmFsLT5jb3VudCk7CisKKyAgICBpZiAodG9uYWwtPkZzID09IDQ4MDAwKQorICAg
IHsKKyAgICAgICAvKiBsZW4gYW5kIG9mZnNldCBhcmUgbm93IGF0IDI0IGtIei4gKi8KKyAgICAg
ICBsZW4vPSAyOworICAgICAgIG9mZnNldCAvPSAyOworICAgIH0gZWxzZSBpZiAodG9uYWwtPkZz
ID09IDE2MDAwKSB7CisgICAgICAgbGVuID0gMypsZW4vMjsKKyAgICAgICBvZmZzZXQgPSAzKm9m
ZnNldC8yOworICAgIH0KIAotICAgIGlmICh0b25hbC0+Y291bnQ8NCkKLSAgICAgICB0b25hbC0+
bXVzaWNfcHJvYiA9IC41OworICAgIGlmICh0b25hbC0+Y291bnQ8NCkgeworICAgICAgIGlmICh0
b25hbC0+YXBwbGljYXRpb24gPT0gT1BVU19BUFBMSUNBVElPTl9WT0lQKQorICAgICAgICAgIHRv
bmFsLT5tdXNpY19wcm9iID0gLjFmOworICAgICAgIGVsc2UKKyAgICAgICAgICB0b25hbC0+bXVz
aWNfcHJvYiA9IC42MjVmOworICAgIH0KICAgICBrZmZ0ID0gY2VsdF9tb2RlLT5tZGN0LmtmZnRb
MF07CiAgICAgaWYgKHRvbmFsLT5jb3VudD09MCkKICAgICAgICB0b25hbC0+bWVtX2ZpbGwgPSAy
NDA7Ci0gICAgZG93bm1peCh4LCAmdG9uYWwtPmlubWVtW3RvbmFsLT5tZW1fZmlsbF0sIElNSU4o
bGVuLCBBTkFMWVNJU19CVUZfU0laRS10b25hbC0+bWVtX2ZpbGwpLCBvZmZzZXQsIGMxLCBjMiwg
Qyk7CisgICAgdG9uYWwtPmhwX2VuZXJfYWNjdW0gKz0gKGZsb2F0KWRvd25taXhfYW5kX3Jlc2Ft
cGxlKGRvd25taXgsIHgsCisgICAgICAgICAgJnRvbmFsLT5pbm1lbVt0b25hbC0+bWVtX2ZpbGxd
LCB0b25hbC0+ZG93bm1peF9zdGF0ZSwKKyAgICAgICAgICBJTUlOKGxlbiwgQU5BTFlTSVNfQlVG
X1NJWkUtdG9uYWwtPm1lbV9maWxsKSwgb2Zmc2V0LCBjMSwgYzIsIEMsIHRvbmFsLT5Gcyk7CiAg
ICAgaWYgKHRvbmFsLT5tZW1fZmlsbCtsZW4gPCBBTkFMWVNJU19CVUZfU0laRSkKICAgICB7CiAg
ICAgICAgdG9uYWwtPm1lbV9maWxsICs9IGxlbjsKQEAgLTI1NSw2ICszODcsNyBAQCBzdGF0aWMg
dm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25z
dCBDRUxUTW9kZSAqY2VsdAogICAgICAgIFJFU1RPUkVfU1RBQ0s7CiAgICAgICAgcmV0dXJuOwog
ICAgIH0KKyAgICBocF9lbmVyID0gdG9uYWwtPmhwX2VuZXJfYWNjdW07CiAgICAgaW5mbyA9ICZ0
b25hbC0+aW5mb1t0b25hbC0+d3JpdGVfcG9zKytdOwogICAgIGlmICh0b25hbC0+d3JpdGVfcG9z
Pj1ERVRFQ1RfU0laRSkKICAgICAgICB0b25hbC0+d3JpdGVfcG9zLT1ERVRFQ1RfU0laRTsKQEAg
LTI3Myw3ICs0MDYsOSBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFu
YWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgIH0KICAgICBPUFVT
X01PVkUodG9uYWwtPmlubWVtLCB0b25hbC0+aW5tZW0rQU5BTFlTSVNfQlVGX1NJWkUtMjQwLCAy
NDApOwogICAgIHJlbWFpbmluZyA9IGxlbiAtIChBTkFMWVNJU19CVUZfU0laRS10b25hbC0+bWVt
X2ZpbGwpOwotICAgIGRvd25taXgoeCwgJnRvbmFsLT5pbm1lbVsyNDBdLCByZW1haW5pbmcsIG9m
ZnNldCtBTkFMWVNJU19CVUZfU0laRS10b25hbC0+bWVtX2ZpbGwsIGMxLCBjMiwgQyk7CisgICAg
dG9uYWwtPmhwX2VuZXJfYWNjdW0gPSAoZmxvYXQpZG93bm1peF9hbmRfcmVzYW1wbGUoZG93bm1p
eCwgeCwKKyAgICAgICAgICAmdG9uYWwtPmlubWVtWzI0MF0sIHRvbmFsLT5kb3dubWl4X3N0YXRl
LCByZW1haW5pbmcsCisgICAgICAgICAgb2Zmc2V0K0FOQUxZU0lTX0JVRl9TSVpFLXRvbmFsLT5t
ZW1fZmlsbCwgYzEsIGMyLCBDLCB0b25hbC0+RnMpOwogICAgIHRvbmFsLT5tZW1fZmlsbCA9IDI0
MCArIHJlbWFpbmluZzsKICAgICBvcHVzX2ZmdChrZmZ0LCBpbiwgb3V0LCB0b25hbC0+YXJjaCk7
CiAjaWZuZGVmIEZJWEVEX1BPSU5UCkBAIC0zMDUsMjQgKzQ0MCwzMSBAQCBzdGF0aWMgdm9pZCB0
b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxU
TW9kZSAqY2VsdAogICAgICAgIGRfYW5nbGUyID0gYW5nbGUyIC0gYW5nbGU7CiAgICAgICAgZDJf
YW5nbGUyID0gZF9hbmdsZTIgLSBkX2FuZ2xlOwogCi0gICAgICAgbW9kMSA9IGQyX2FuZ2xlIC0g
KGZsb2F0KWZsb29yKC41K2QyX2FuZ2xlKTsKKyAgICAgICBtb2QxID0gZDJfYW5nbGUgLSAoZmxv
YXQpZmxvYXQyaW50KGQyX2FuZ2xlKTsKICAgICAgICBub2lzaW5lc3NbaV0gPSBBQlMxNihtb2Qx
KTsKICAgICAgICBtb2QxICo9IG1vZDE7CiAgICAgICAgbW9kMSAqPSBtb2QxOwogCi0gICAgICAg
bW9kMiA9IGQyX2FuZ2xlMiAtIChmbG9hdClmbG9vciguNStkMl9hbmdsZTIpOworICAgICAgIG1v
ZDIgPSBkMl9hbmdsZTIgLSAoZmxvYXQpZmxvYXQyaW50KGQyX2FuZ2xlMik7CiAgICAgICAgbm9p
c2luZXNzW2ldICs9IEFCUzE2KG1vZDIpOwogICAgICAgIG1vZDIgKj0gbW9kMjsKICAgICAgICBt
b2QyICo9IG1vZDI7CiAKLSAgICAgICBhdmdfbW9kID0gLjI1ZiooZDJBW2ldKzIuZiptb2QxK21v
ZDIpOworICAgICAgIGF2Z19tb2QgPSAuMjVmKihkMkFbaV0rbW9kMSsyKm1vZDIpOworICAgICAg
IC8qIFRoaXMgaW50cm9kdWNlcyBhbiBleHRyYSBkZWxheSBvZiAyIGZyYW1lcyBpbiB0aGUgZGV0
ZWN0aW9uLiAqLwogICAgICAgIHRvbmFsaXR5W2ldID0gMS5mLygxLmYrNDAuZioxNi5mKnBpNCph
dmdfbW9kKS0uMDE1ZjsKKyAgICAgICAvKiBObyBkZWxheSBvbiB0aGlzIGRldGVjdGlvbiwgYnV0
IGl0J3MgbGVzcyByZWxpYWJsZS4gKi8KKyAgICAgICB0b25hbGl0eTJbaV0gPSAxLmYvKDEuZis0
MC5mKjE2LmYqcGk0Km1vZDIpLS4wMTVmOwogCiAgICAgICAgQVtpXSA9IGFuZ2xlMjsKICAgICAg
ICBkQVtpXSA9IGRfYW5nbGUyOwogICAgICAgIGQyQVtpXSA9IG1vZDI7CiAgICAgfQotCisgICAg
Zm9yIChpPTI7aTxOMi0xO2krKykKKyAgICB7CisgICAgICAgZmxvYXQgdHQgPSBNSU4zMih0b25h
bGl0eTJbaV0sIE1BWDMyKHRvbmFsaXR5MltpLTFdLCB0b25hbGl0eTJbaSsxXSkpOworICAgICAg
IHRvbmFsaXR5W2ldID0gLjlmKk1BWDMyKHRvbmFsaXR5W2ldLCB0dC0uMWYpOworICAgIH0KICAg
ICBmcmFtZV90b25hbGl0eSA9IDA7CiAgICAgbWF4X2ZyYW1lX3RvbmFsaXR5ID0gMDsKICAgICAv
KnR3X3N1bSA9IDA7Ki8KQEAgLTMzOSw2ICs0ODEsMjIgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlf
YW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNl
bHQKICAgICB9CiAgICAgcmVsYXRpdmVFID0gMDsKICAgICBmcmFtZV9sb3VkbmVzcyA9IDA7Cisg
ICAgLyogVGhlIGVuZXJneSBvZiB0aGUgdmVyeSBmaXJzdCBiYW5kIGlzIHNwZWNpYWwgYmVjYXVz
ZSBvZiBEQy4gKi8KKyAgICB7CisgICAgICAgZmxvYXQgRSA9IDA7CisgICAgICAgZmxvYXQgWDFy
LCBYMnI7CisgICAgICAgWDFyID0gMiooZmxvYXQpb3V0WzBdLnI7CisgICAgICAgWDJyID0gMioo
ZmxvYXQpb3V0WzBdLmk7CisgICAgICAgRSA9IFgxcipYMXIgKyBYMnIqWDJyOworICAgICAgIGZv
ciAoaT0xO2k8NDtpKyspCisgICAgICAgeworICAgICAgICAgIGZsb2F0IGJpbkUgPSBvdXRbaV0u
ciooZmxvYXQpb3V0W2ldLnIgKyBvdXRbTi1pXS5yKihmbG9hdClvdXRbTi1pXS5yCisgICAgICAg
ICAgICAgICAgICAgICArIG91dFtpXS5pKihmbG9hdClvdXRbaV0uaSArIG91dFtOLWldLmkqKGZs
b2F0KW91dFtOLWldLmk7CisgICAgICAgICAgRSArPSBiaW5FOworICAgICAgIH0KKyAgICAgICBF
ID0gU0NBTEVfRU5FUihFKTsKKyAgICAgICBiYW5kX2xvZzJbMF0gPSAuNWYqMS40NDI2OTVmKihm
bG9hdClsb2coRSsxZS0xMGYpOworICAgIH0KICAgICBmb3IgKGI9MDtiPE5CX1RCQU5EUztiKysp
CiAgICAgewogICAgICAgIGZsb2F0IEU9MCwgdEU9MCwgbkU9MDsKQEAgLTM0OCwxMiArNTA2LDkg
QEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0
b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICB7CiAgICAgICAgICAgZmxvYXQgYmlu
RSA9IG91dFtpXS5yKihmbG9hdClvdXRbaV0uciArIG91dFtOLWldLnIqKGZsb2F0KW91dFtOLWld
LnIKICAgICAgICAgICAgICAgICAgICAgICsgb3V0W2ldLmkqKGZsb2F0KW91dFtpXS5pICsgb3V0
W04taV0uaSooZmxvYXQpb3V0W04taV0uaTsKLSNpZmRlZiBGSVhFRF9QT0lOVAotICAgICAgICAg
IC8qIEZJWE1FOiBJdCdzIHByb2JhYmx5IGJlc3QgdG8gY2hhbmdlIHRoZSBCRkNDIGZpbHRlciBp
bml0aWFsIHN0YXRlIGluc3RlYWQgKi8KLSAgICAgICAgICBiaW5FICo9IDUuNTVlLTE3ZjsKLSNl
bmRpZgorICAgICAgICAgIGJpbkUgPSBTQ0FMRV9FTkVSKGJpbkUpOwogICAgICAgICAgIEUgKz0g
YmluRTsKLSAgICAgICAgICB0RSArPSBiaW5FKnRvbmFsaXR5W2ldOworICAgICAgICAgIHRFICs9
IGJpbkUqTUFYMzIoMCwgdG9uYWxpdHlbaV0pOwogICAgICAgICAgIG5FICs9IGJpbkUqMi5mKigu
NWYtbm9pc2luZXNzW2ldKTsKICAgICAgICB9CiAjaWZuZGVmIEZJWEVEX1BPSU5UCkBAIC0zNzEs
MTQgKzUyNiwyNyBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5
c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogCiAgICAgICAgZnJhbWVfbG91
ZG5lc3MgKz0gKGZsb2F0KXNxcnQoRSsxZS0xMGYpOwogICAgICAgIGxvZ0VbYl0gPSAoZmxvYXQp
bG9nKEUrMWUtMTBmKTsKLSAgICAgICB0b25hbC0+bG93RVtiXSA9IE1JTjMyKGxvZ0VbYl0sIHRv
bmFsLT5sb3dFW2JdKy4wMWYpOwotICAgICAgIHRvbmFsLT5oaWdoRVtiXSA9IE1BWDMyKGxvZ0Vb
Yl0sIHRvbmFsLT5oaWdoRVtiXS0uMWYpOwotICAgICAgIGlmICh0b25hbC0+aGlnaEVbYl0gPCB0
b25hbC0+bG93RVtiXSsxLmYpCisgICAgICAgYmFuZF9sb2cyW2IrMV0gPSAuNWYqMS40NDI2OTVm
KihmbG9hdClsb2coRSsxZS0xMGYpOworICAgICAgIHRvbmFsLT5sb2dFW3RvbmFsLT5FX2NvdW50
XVtiXSA9IGxvZ0VbYl07CisgICAgICAgaWYgKHRvbmFsLT5jb3VudD09MCkKKyAgICAgICAgICB0
b25hbC0+aGlnaEVbYl0gPSB0b25hbC0+bG93RVtiXSA9IGxvZ0VbYl07CisgICAgICAgaWYgKHRv
bmFsLT5oaWdoRVtiXSA+IHRvbmFsLT5sb3dFW2JdICsgNy41KQorICAgICAgIHsKKyAgICAgICAg
ICBpZiAodG9uYWwtPmhpZ2hFW2JdIC0gbG9nRVtiXSA+IGxvZ0VbYl0gLSB0b25hbC0+bG93RVti
XSkKKyAgICAgICAgICAgICB0b25hbC0+aGlnaEVbYl0gLT0gLjAxZjsKKyAgICAgICAgICBlbHNl
CisgICAgICAgICAgICAgdG9uYWwtPmxvd0VbYl0gKz0gLjAxZjsKKyAgICAgICB9CisgICAgICAg
aWYgKGxvZ0VbYl0gPiB0b25hbC0+aGlnaEVbYl0pCiAgICAgICAgewotICAgICAgICAgIHRvbmFs
LT5oaWdoRVtiXSs9LjVmOwotICAgICAgICAgIHRvbmFsLT5sb3dFW2JdLT0uNWY7CisgICAgICAg
ICAgdG9uYWwtPmhpZ2hFW2JdID0gbG9nRVtiXTsKKyAgICAgICAgICB0b25hbC0+bG93RVtiXSA9
IE1BWDMyKHRvbmFsLT5oaWdoRVtiXS0xNSwgdG9uYWwtPmxvd0VbYl0pOworICAgICAgIH0gZWxz
ZSBpZiAobG9nRVtiXSA8IHRvbmFsLT5sb3dFW2JdKQorICAgICAgIHsKKyAgICAgICAgICB0b25h
bC0+bG93RVtiXSA9IGxvZ0VbYl07CisgICAgICAgICAgdG9uYWwtPmhpZ2hFW2JdID0gTUlOMzIo
dG9uYWwtPmxvd0VbYl0rMTUsIHRvbmFsLT5oaWdoRVtiXSk7CiAgICAgICAgfQotICAgICAgIHJl
bGF0aXZlRSArPSAobG9nRVtiXS10b25hbC0+bG93RVtiXSkvKDFlLTE1Zit0b25hbC0+aGlnaEVb
Yl0tdG9uYWwtPmxvd0VbYl0pOworICAgICAgIHJlbGF0aXZlRSArPSAobG9nRVtiXS10b25hbC0+
bG93RVtiXSkvKDFlLTE1ZiArICh0b25hbC0+aGlnaEVbYl0tdG9uYWwtPmxvd0VbYl0pKTsKIAog
ICAgICAgIEwxPUwyPTA7CiAgICAgICAgZm9yIChpPTA7aTxOQl9GUkFNRVM7aSsrKQpAQCAtNDEw
LDI3ICs1NzgsNzQgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFs
eXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICB0b25hbC0+cHJl
dl9iYW5kX3RvbmFsaXR5W2JdID0gYmFuZF90b25hbGl0eVtiXTsKICAgICB9CiAKKyAgICBsZWFr
YWdlX2Zyb21bMF0gPSBiYW5kX2xvZzJbMF07CisgICAgbGVha2FnZV90b1swXSA9IGJhbmRfbG9n
MlswXSAtIExFQUtBR0VfT0ZGU0VUOworICAgIGZvciAoYj0xO2I8TkJfVEJBTkRTKzE7YisrKQor
ICAgIHsKKyAgICAgICBmbG9hdCBsZWFrX3Nsb3BlID0gTEVBS0FHRV9TTE9QRSoodGJhbmRzW2Jd
LXRiYW5kc1tiLTFdKS80OworICAgICAgIGxlYWthZ2VfZnJvbVtiXSA9IE1JTjE2KGxlYWthZ2Vf
ZnJvbVtiLTFdK2xlYWtfc2xvcGUsIGJhbmRfbG9nMltiXSk7CisgICAgICAgbGVha2FnZV90b1ti
XSA9IE1BWDE2KGxlYWthZ2VfdG9bYi0xXS1sZWFrX3Nsb3BlLCBiYW5kX2xvZzJbYl0tTEVBS0FH
RV9PRkZTRVQpOworICAgIH0KKyAgICBmb3IgKGI9TkJfVEJBTkRTLTI7Yj49MDtiLS0pCisgICAg
eworICAgICAgIGZsb2F0IGxlYWtfc2xvcGUgPSBMRUFLQUdFX1NMT1BFKih0YmFuZHNbYisxXS10
YmFuZHNbYl0pLzQ7CisgICAgICAgbGVha2FnZV9mcm9tW2JdID0gTUlOMTYobGVha2FnZV9mcm9t
W2IrMV0rbGVha19zbG9wZSwgbGVha2FnZV9mcm9tW2JdKTsKKyAgICAgICBsZWFrYWdlX3RvW2Jd
ID0gTUFYMTYobGVha2FnZV90b1tiKzFdLWxlYWtfc2xvcGUsIGxlYWthZ2VfdG9bYl0pOworICAg
IH0KKyAgICBjZWx0X2Fzc2VydChOQl9UQkFORFMrMSA8PSBMRUFLX0JBTkRTKTsKKyAgICBmb3Ig
KGI9MDtiPE5CX1RCQU5EUysxO2IrKykKKyAgICB7CisgICAgICAgLyogbGVha19ib29zdFtdIGlz
IG1hZGUgdXAgb2YgdHdvIHRlcm1zLiBUaGUgZmlyc3QsIGJhc2VkIG9uIGxlYWthZ2VfdG9bXSwK
KyAgICAgICAgICByZXByZXNlbnRzIHRoZSBib29zdCBuZWVkZWQgdG8gb3ZlcmNvbWUgdGhlIGFt
b3VudCBvZiBhbmFseXNpcyBsZWFrYWdlCisgICAgICAgICAgY2F1c2UgaW4gYSB3ZWFrZXIgYmFu
ZCBiIGJ5IGxvdWRlciBuZWlnaGJvdXJpbmcgYmFuZHMuCisgICAgICAgICAgVGhlIHNlY29uZCwg
YmFzZWQgb24gbGVha2FnZV9mcm9tW10sIGFwcGxpZXMgdG8gYSBsb3VkIGJhbmQgYiBmb3IKKyAg
ICAgICAgICB3aGljaCB0aGUgcXVhbnRpemF0aW9uIG5vaXNlIGNhdXNlcyBzeW50aGVzaXMgbGVh
a2FnZSB0byB0aGUgd2Vha2VyCisgICAgICAgICAgbmVpZ2hib3VyaW5nIGJhbmRzLiAqLworICAg
ICAgIGZsb2F0IGJvb3N0ID0gTUFYMTYoMCwgbGVha2FnZV90b1tiXSAtIGJhbmRfbG9nMltiXSkg
KworICAgICAgICAgICAgIE1BWDE2KDAsIGJhbmRfbG9nMltiXSAtIChsZWFrYWdlX2Zyb21bYl0r
TEVBS0FHRV9PRkZTRVQpKTsKKyAgICAgICBpbmZvLT5sZWFrX2Jvb3N0W2JdID0gSU1JTigyNTUs
IChpbnQpZmxvb3IoLjUgKyA2NC5mKmJvb3N0KSk7CisgICAgfQorICAgIGZvciAoO2I8TEVBS19C
QU5EUztiKyspIGluZm8tPmxlYWtfYm9vc3RbYl0gPSAwOworCisgICAgZm9yIChpPTA7aTxOQl9G
UkFNRVM7aSsrKQorICAgIHsKKyAgICAgICBpbnQgajsKKyAgICAgICBmbG9hdCBtaW5kaXN0ID0g
MWUxNWY7CisgICAgICAgZm9yIChqPTA7ajxOQl9GUkFNRVM7aisrKQorICAgICAgIHsKKyAgICAg
ICAgICBpbnQgazsKKyAgICAgICAgICBmbG9hdCBkaXN0PTA7CisgICAgICAgICAgZm9yIChrPTA7
azxOQl9UQkFORFM7aysrKQorICAgICAgICAgIHsKKyAgICAgICAgICAgICBmbG9hdCB0bXA7Cisg
ICAgICAgICAgICAgdG1wID0gdG9uYWwtPmxvZ0VbaV1ba10gLSB0b25hbC0+bG9nRVtqXVtrXTsK
KyAgICAgICAgICAgICBkaXN0ICs9IHRtcCp0bXA7CisgICAgICAgICAgfQorICAgICAgICAgIGlm
IChqIT1pKQorICAgICAgICAgICAgIG1pbmRpc3QgPSBNSU4zMihtaW5kaXN0LCBkaXN0KTsKKyAg
ICAgICB9CisgICAgICAgc3BlY192YXJpYWJpbGl0eSArPSBtaW5kaXN0OworICAgIH0KKyAgICBz
cGVjX3ZhcmlhYmlsaXR5ID0gKGZsb2F0KXNxcnQoc3BlY192YXJpYWJpbGl0eS9OQl9GUkFNRVMv
TkJfVEJBTkRTKTsKICAgICBiYW5kd2lkdGhfbWFzayA9IDA7CiAgICAgYmFuZHdpZHRoID0gMDsK
ICAgICBtYXhFID0gMDsKICAgICBub2lzZV9mbG9vciA9IDUuN2UtNGYvKDE8PChJTUFYKDAsbHNi
X2RlcHRoLTgpKSk7Ci0jaWZkZWYgRklYRURfUE9JTlQKLSAgICBub2lzZV9mbG9vciAqPSAxPDwo
MTUrU0lHX1NISUZUKTsKLSNlbmRpZgogICAgIG5vaXNlX2Zsb29yICo9IG5vaXNlX2Zsb29yOwot
ICAgIGZvciAoYj0wO2I8TkJfVE9UX0JBTkRTO2IrKykKKyAgICBmb3IgKGI9MDtiPE5CX1RCQU5E
UztiKyspCiAgICAgewogICAgICAgIGZsb2F0IEU9MDsKICAgICAgICBpbnQgYmFuZF9zdGFydCwg
YmFuZF9lbmQ7CiAgICAgICAgLyogS2VlcCBhIG1hcmdpbiBvZiAzMDAgSHogZm9yIGFsaWFzaW5n
ICovCi0gICAgICAgYmFuZF9zdGFydCA9IGV4dHJhX2JhbmRzW2JdOwotICAgICAgIGJhbmRfZW5k
ID0gZXh0cmFfYmFuZHNbYisxXTsKKyAgICAgICBiYW5kX3N0YXJ0ID0gdGJhbmRzW2JdOworICAg
ICAgIGJhbmRfZW5kID0gdGJhbmRzW2IrMV07CiAgICAgICAgZm9yIChpPWJhbmRfc3RhcnQ7aTxi
YW5kX2VuZDtpKyspCiAgICAgICAgewogICAgICAgICAgIGZsb2F0IGJpbkUgPSBvdXRbaV0ucioo
ZmxvYXQpb3V0W2ldLnIgKyBvdXRbTi1pXS5yKihmbG9hdClvdXRbTi1pXS5yCiAgICAgICAgICAg
ICAgICAgICAgICArIG91dFtpXS5pKihmbG9hdClvdXRbaV0uaSArIG91dFtOLWldLmkqKGZsb2F0
KW91dFtOLWldLmk7CiAgICAgICAgICAgRSArPSBiaW5FOwogICAgICAgIH0KKyAgICAgICBFID0g
U0NBTEVfRU5FUihFKTsKICAgICAgICBtYXhFID0gTUFYMzIobWF4RSwgRSk7CiAgICAgICAgdG9u
YWwtPm1lYW5FW2JdID0gTUFYMzIoKDEtYWxwaGFFMikqdG9uYWwtPm1lYW5FW2JdLCBFKTsKICAg
ICAgICBFID0gTUFYMzIoRSwgdG9uYWwtPm1lYW5FW2JdKTsKQEAgLTQ0MSwxNCArNjU2LDM2IEBA
IHN0YXRpYyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9u
YWwsIGNvbnN0IENFTFRNb2RlICpjZWx0CiAgICAgICAgICAgMikgbGVzcyB0aGFuIDkwIGRCIGJl
bG93IHRoZSBwZWFrIGJhbmQgKG1heGltYWwgbWFza2luZyBwb3NzaWJsZSBjb25zaWRlcmluZwog
ICAgICAgICAgICAgIGJvdGggdGhlIEFUSCBhbmQgdGhlIGxvdWRuZXNzLWRlcGVuZGVudCBzbG9w
ZSBvZiB0aGUgc3ByZWFkaW5nIGZ1bmN0aW9uKQogICAgICAgICAgIDMpIGFib3ZlIHRoZSBQQ00g
cXVhbnRpemF0aW9uIG5vaXNlIGZsb29yCisgICAgICAgICAgV2UgdXNlIGIrMSBiZWNhdXNlIHRo
ZSBmaXJzdCBDRUxUIGJhbmQgaXNuJ3QgaW5jbHVkZWQgaW4gdGJhbmRzW10KICAgICAgICAqLwog
ICAgICAgIGlmIChFPi4xKmJhbmR3aWR0aF9tYXNrICYmIEUqMWU5ZiA+IG1heEUgJiYgRSA+IG5v
aXNlX2Zsb29yKihiYW5kX2VuZC1iYW5kX3N0YXJ0KSkKLSAgICAgICAgICBiYW5kd2lkdGggPSBi
OworICAgICAgICAgIGJhbmR3aWR0aCA9IGIrMTsKKyAgICB9CisgICAgLyogU3BlY2lhbCBjYXNl
IGZvciB0aGUgbGFzdCB0d28gYmFuZHMsIGZvciB3aGljaCB3ZSBkb24ndCBoYXZlIHNwZWN0cnVt
IGJ1dCBvbmx5CisgICAgICAgdGhlIGVuZXJneSBhYm92ZSAxMiBrSHouICovCisgICAgaWYgKHRv
bmFsLT5GcyA9PSA0ODAwMCkgeworICAgICAgIGZsb2F0IHJhdGlvOworICAgICAgIGZsb2F0IEUg
PSBocF9lbmVyKigxLmYvKDI0MCoyNDApKTsKKyAgICAgICByYXRpbyA9IHRvbmFsLT5wcmV2X2Jh
bmR3aWR0aD09MjAgPyAwLjAzZiA6IDAuMDdmOworI2lmZGVmIEZJWEVEX1BPSU5UCisgICAgICAg
Lyogc2lsa19yZXNhbXBsZXJfZG93bjJfaHAoKSBzaGlmdGVkIHJpZ2h0IGJ5IGFuIGV4dHJhIDgg
Yml0cy4gKi8KKyAgICAgICBFICo9IDI1Ni5mKigxLmYvUTE1T05FKSooMS5mL1ExNU9ORSk7Cisj
ZW5kaWYKKyAgICAgICBtYXhFID0gTUFYMzIobWF4RSwgRSk7CisgICAgICAgdG9uYWwtPm1lYW5F
W2JdID0gTUFYMzIoKDEtYWxwaGFFMikqdG9uYWwtPm1lYW5FW2JdLCBFKTsKKyAgICAgICBFID0g
TUFYMzIoRSwgdG9uYWwtPm1lYW5FW2JdKTsKKyAgICAgICAvKiBVc2UgYSBzaW1wbGUgZm9sbG93
ZXIgd2l0aCAxMyBkQi9CYXJrIHNsb3BlIGZvciBzcHJlYWRpbmcgZnVuY3Rpb24gKi8KKyAgICAg
ICBiYW5kd2lkdGhfbWFzayA9IE1BWDMyKC4wNWYqYmFuZHdpZHRoX21hc2ssIEUpOworICAgICAg
IGlmIChFPnJhdGlvKmJhbmR3aWR0aF9tYXNrICYmIEUqMWU5ZiA+IG1heEUgJiYgRSA+IG5vaXNl
X2Zsb29yKjE2MCkKKyAgICAgICAgICBiYW5kd2lkdGggPSAyMDsKKyAgICAgICAvKiBUaGlzIGRl
dGVjdG9yIGlzIHVucmVsaWFibGUsIHNvIGlmIHRoZSBiYW5kd2lkdGggaXMgY2xvc2UgdG8gU1dC
LCBhc3N1bWUgaXQncyBGQi4gKi8KKyAgICAgICBpZiAoYmFuZHdpZHRoID49IDE3KQorICAgICAg
ICAgIGJhbmR3aWR0aCA9IDIwOwogICAgIH0KICAgICBpZiAodG9uYWwtPmNvdW50PD0yKQogICAg
ICAgIGJhbmR3aWR0aCA9IDIwOwogICAgIGZyYW1lX2xvdWRuZXNzID0gMjAqKGZsb2F0KWxvZzEw
KGZyYW1lX2xvdWRuZXNzKTsKLSAgICB0b25hbC0+RXRyYWNrZXIgPSBNQVgzMih0b25hbC0+RXRy
YWNrZXItLjAzZiwgZnJhbWVfbG91ZG5lc3MpOworICAgIHRvbmFsLT5FdHJhY2tlciA9IE1BWDMy
KHRvbmFsLT5FdHJhY2tlci0uMDAzZiwgZnJhbWVfbG91ZG5lc3MpOwogICAgIHRvbmFsLT5sb3dF
Q291bnQgKj0gKDEtYWxwaGFFKTsKICAgICBpZiAoZnJhbWVfbG91ZG5lc3MgPCB0b25hbC0+RXRy
YWNrZXItMzApCiAgICAgICAgdG9uYWwtPmxvd0VDb3VudCArPSBhbHBoYUU7CkBAIC00NjAsMTEg
KzY5NywxOCBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lz
U3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgICAgICAgIHN1bSArPSBkY3Rf
dGFibGVbaSoxNitiXSpsb2dFW2JdOwogICAgICAgIEJGQ0NbaV0gPSBzdW07CiAgICAgfQorICAg
IGZvciAoaT0wO2k8ODtpKyspCisgICAgeworICAgICAgIGZsb2F0IHN1bT0wOworICAgICAgIGZv
ciAoYj0wO2I8MTY7YisrKQorICAgICAgICAgIHN1bSArPSBkY3RfdGFibGVbaSoxNitiXSouNWYq
KHRvbmFsLT5oaWdoRVtiXSt0b25hbC0+bG93RVtiXSk7CisgICAgICAgbWlkRVtpXSA9IHN1bTsK
KyAgICB9CiAKICAgICBmcmFtZV9zdGF0aW9uYXJpdHkgLz0gTkJfVEJBTkRTOwogICAgIHJlbGF0
aXZlRSAvPSBOQl9UQkFORFM7CiAgICAgaWYgKHRvbmFsLT5jb3VudDwxMCkKLSAgICAgICByZWxh
dGl2ZUUgPSAuNTsKKyAgICAgICByZWxhdGl2ZUUgPSAuNWY7CiAgICAgZnJhbWVfbm9pc2luZXNz
IC89IE5CX1RCQU5EUzsKICNpZiAxCiAgICAgaW5mby0+YWN0aXZpdHkgPSBmcmFtZV9ub2lzaW5l
c3MgKyAoMS1mcmFtZV9ub2lzaW5lc3MpKnJlbGF0aXZlRTsKQEAgLTQ3OSw3ICs3MjMsNyBAQCBz
dGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFs
LCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgIGluZm8tPnRvbmFsaXR5X3Nsb3BlID0gc2xvcGU7
CiAKICAgICB0b25hbC0+RV9jb3VudCA9ICh0b25hbC0+RV9jb3VudCsxKSVOQl9GUkFNRVM7Ci0g
ICAgdG9uYWwtPmNvdW50Kys7CisgICAgdG9uYWwtPmNvdW50ID0gSU1JTih0b25hbC0+Y291bnQr
MSwgQU5BTFlTSVNfQ09VTlRfTUFYKTsKICAgICBpbmZvLT50b25hbGl0eSA9IGZyYW1lX3RvbmFs
aXR5OwogCiAgICAgZm9yIChpPTA7aTw0O2krKykKQEAgLTQ5OCw2ICs3NDIsOCBAQCBzdGF0aWMg
dm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25z
dCBDRUxUTW9kZSAqY2VsdAogICAgICAgIGZvciAoaT0wO2k8OTtpKyspCiAgICAgICAgICAgdG9u
YWwtPnN0ZFtpXSA9ICgxLWFscGhhKSp0b25hbC0+c3RkW2ldICsgYWxwaGEqZmVhdHVyZXNbaV0q
ZmVhdHVyZXNbaV07CiAgICAgfQorICAgIGZvciAoaT0wO2k8NDtpKyspCisgICAgICAgZmVhdHVy
ZXNbaV0gPSBCRkNDW2ldLW1pZEVbaV07CiAKICAgICBmb3IgKGk9MDtpPDg7aSsrKQogICAgIHsK
QEAgLTUwNywyNCArNzUzLDI2IEBAIHN0YXRpYyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFs
aXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2RlICpjZWx0CiAgICAgICAgdG9u
YWwtPm1lbVtpXSA9IEJGQ0NbaV07CiAgICAgfQogICAgIGZvciAoaT0wO2k8OTtpKyspCi0gICAg
ICAgZmVhdHVyZXNbMTEraV0gPSAoZmxvYXQpc3FydCh0b25hbC0+c3RkW2ldKTsKLSAgICBmZWF0
dXJlc1syMF0gPSBpbmZvLT50b25hbGl0eTsKLSAgICBmZWF0dXJlc1syMV0gPSBpbmZvLT5hY3Rp
dml0eTsKLSAgICBmZWF0dXJlc1syMl0gPSBmcmFtZV9zdGF0aW9uYXJpdHk7Ci0gICAgZmVhdHVy
ZXNbMjNdID0gaW5mby0+dG9uYWxpdHlfc2xvcGU7Ci0gICAgZmVhdHVyZXNbMjRdID0gdG9uYWwt
Pmxvd0VDb3VudDsKKyAgICAgICBmZWF0dXJlc1sxMStpXSA9IChmbG9hdClzcXJ0KHRvbmFsLT5z
dGRbaV0pIC0gc3RkX2ZlYXR1cmVfYmlhc1tpXTsKKyAgICBmZWF0dXJlc1sxOF0gPSBzcGVjX3Zh
cmlhYmlsaXR5IC0gMC43OGY7CisgICAgZmVhdHVyZXNbMjBdID0gaW5mby0+dG9uYWxpdHkgLSAw
LjE1NDcyM2Y7CisgICAgZmVhdHVyZXNbMjFdID0gaW5mby0+YWN0aXZpdHkgLSAwLjcyNDY0M2Y7
CisgICAgZmVhdHVyZXNbMjJdID0gZnJhbWVfc3RhdGlvbmFyaXR5IC0gMC43NDM3MTdmOworICAg
IGZlYXR1cmVzWzIzXSA9IGluZm8tPnRvbmFsaXR5X3Nsb3BlICsgMC4wNjkyMTZmOworICAgIGZl
YXR1cmVzWzI0XSA9IHRvbmFsLT5sb3dFQ291bnQgLSAwLjA2NzkzMGY7CiAKLSNpZm5kZWYgRElT
QUJMRV9GTE9BVF9BUEkKICAgICBtbHBfcHJvY2VzcygmbmV0LCBmZWF0dXJlcywgZnJhbWVfcHJv
YnMpOwogICAgIGZyYW1lX3Byb2JzWzBdID0gLjVmKihmcmFtZV9wcm9ic1swXSsxKTsKICAgICAv
KiBDdXJ2ZSBmaXR0aW5nIGJldHdlZW4gdGhlIE1MUCBwcm9iYWJpbGl0eSBhbmQgdGhlIGFjdHVh
bCBwcm9iYWJpbGl0eSAqLwotICAgIGZyYW1lX3Byb2JzWzBdID0gLjAxZiArIDEuMjFmKmZyYW1l
X3Byb2JzWzBdKmZyYW1lX3Byb2JzWzBdIC0gLjIzZiooZmxvYXQpcG93KGZyYW1lX3Byb2JzWzBd
LCAxMCk7CisgICAgLypmcmFtZV9wcm9ic1swXSA9IC4wMWYgKyAxLjIxZipmcmFtZV9wcm9ic1sw
XSpmcmFtZV9wcm9ic1swXSAtIC4yM2YqKGZsb2F0KXBvdyhmcmFtZV9wcm9ic1swXSwgMTApOyov
CiAgICAgLyogUHJvYmFiaWxpdHkgb2YgYWN0aXZlIGF1ZGlvIChhcyBvcHBvc2VkIHRvIHNpbGVu
Y2UpICovCiAgICAgZnJhbWVfcHJvYnNbMV0gPSAuNWYqZnJhbWVfcHJvYnNbMV0rLjVmOwotICAg
IC8qIENvbnNpZGVyIHRoYXQgc2lsZW5jZSBoYXMgYSA1MC01MCBwcm9iYWJpbGl0eS4gKi8KLSAg
ICBmcmFtZV9wcm9ic1swXSA9IGZyYW1lX3Byb2JzWzFdKmZyYW1lX3Byb2JzWzBdICsgKDEtZnJh
bWVfcHJvYnNbMV0pKi41ZjsKKyAgICBmcmFtZV9wcm9ic1sxXSAqPSBmcmFtZV9wcm9ic1sxXTsK
KworICAgIC8qIFByb2JhYmlsaXR5IG9mIHNwZWVjaCBvciBtdXNpYyB2cyBub2lzZSAqLworICAg
IGluZm8tPmFjdGl2aXR5X3Byb2JhYmlsaXR5ID0gZnJhbWVfcHJvYnNbMV07CiAKLSAgICAvKnBy
aW50ZigiJWYgJWYgIiwgZnJhbWVfcHJvYnNbMF0sIGZyYW1lX3Byb2JzWzFdKTsqLworICAgIC8q
cHJpbnRmKCIlZiAlZlxuIiwgZnJhbWVfcHJvYnNbMF0sIGZyYW1lX3Byb2JzWzFdKTsqLwogICAg
IHsKICAgICAgICAvKiBQcm9iYWJpbGl0eSBvZiBzdGF0ZSB0cmFuc2l0aW9uICovCiAgICAgICAg
ZmxvYXQgdGF1OwpAQCAtNTQyLDEyICs3OTAsMzIgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5h
bHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQK
ICAgICAgICBmbG9hdCBtdXNpYzA7CiAgICAgICAgZmxvYXQgcCwgcTsKIAorICAgICAgIC8qIE1v
cmUgc2lsZW5jZSB0cmFuc2l0aW9ucyBmb3Igc3BlZWNoIHRoYW4gZm9yIG11c2ljLiAqLworICAg
ICAgIHRhdSA9IC4wMDFmKnRvbmFsLT5tdXNpY19wcm9iICsgLjAxZiooMS10b25hbC0+bXVzaWNf
cHJvYik7CisgICAgICAgcCA9IE1BWDE2KC4wNWYsTUlOMTYoLjk1ZixmcmFtZV9wcm9ic1sxXSkp
OworICAgICAgIHEgPSBNQVgxNiguMDVmLE1JTjE2KC45NWYsdG9uYWwtPnZhZF9wcm9iKSk7Cisg
ICAgICAgYmV0YSA9IC4wMmYrLjA1ZipBQlMxNihwLXEpLyhwKigxLXEpK3EqKDEtcCkpOworICAg
ICAgIC8qIHAwIGFuZCBwMSBhcmUgdGhlIHByb2JhYmlsaXRpZXMgb2Ygc3BlZWNoIGFuZCBtdXNp
YyBhdCB0aGlzIGZyYW1lCisgICAgICAgICAgdXNpbmcgb25seSBpbmZvcm1hdGlvbiBmcm9tIHBy
ZXZpb3VzIGZyYW1lIGFuZCBhcHBseWluZyB0aGUKKyAgICAgICAgICBzdGF0ZSB0cmFuc2l0aW9u
IG1vZGVsICovCisgICAgICAgcDAgPSAoMS10b25hbC0+dmFkX3Byb2IpKigxLXRhdSkgKyAgICB0
b25hbC0+dmFkX3Byb2IgKnRhdTsKKyAgICAgICBwMSA9ICAgIHRvbmFsLT52YWRfcHJvYiAqKDEt
dGF1KSArICgxLXRvbmFsLT52YWRfcHJvYikqdGF1OworICAgICAgIC8qIFdlIGFwcGx5IHRoZSBj
dXJyZW50IHByb2JhYmlsaXR5IHdpdGggZXhwb25lbnQgYmV0YSB0byB3b3JrIGFyb3VuZAorICAg
ICAgICAgIHRoZSBmYWN0IHRoYXQgdGhlIHByb2JhYmlsaXR5IGVzdGltYXRlcyBhcmVuJ3QgaW5k
ZXBlbmRlbnQuICovCisgICAgICAgcDAgKj0gKGZsb2F0KXBvdygxLWZyYW1lX3Byb2JzWzFdLCBi
ZXRhKTsKKyAgICAgICBwMSAqPSAoZmxvYXQpcG93KGZyYW1lX3Byb2JzWzFdLCBiZXRhKTsKKyAg
ICAgICAvKiBOb3JtYWxpc2UgdGhlIHByb2JhYmlsaXRpZXMgdG8gZ2V0IHRoZSBNYXJva3YgcHJv
YmFiaWxpdHkgb2YgbXVzaWMuICovCisgICAgICAgdG9uYWwtPnZhZF9wcm9iID0gcDEvKHAwK3Ax
KTsKKyAgICAgICBpbmZvLT52YWRfcHJvYiA9IHRvbmFsLT52YWRfcHJvYjsKKyAgICAgICAvKiBD
b25zaWRlciB0aGF0IHNpbGVuY2UgaGFzIGEgNTAtNTAgcHJvYmFiaWxpdHkgb2YgYmVpbmcgc3Bl
ZWNoIG9yIG11c2ljLiAqLworICAgICAgIGZyYW1lX3Byb2JzWzBdID0gdG9uYWwtPnZhZF9wcm9i
KmZyYW1lX3Byb2JzWzBdICsgKDEtdG9uYWwtPnZhZF9wcm9iKSouNWY7CisKICAgICAgICAvKiBP
bmUgdHJhbnNpdGlvbiBldmVyeSAzIG1pbnV0ZXMgb2YgYWN0aXZlIGF1ZGlvICovCi0gICAgICAg
dGF1ID0gLjAwMDA1ZipmcmFtZV9wcm9ic1sxXTsKKyAgICAgICB0YXUgPSAuMDAwMWY7CiAgICAg
ICAgLyogQWRhcHQgYmV0YSBiYXNlZCBvbiBob3cgInVuZXhwZWN0ZWQiIHRoZSBuZXcgcHJvYiBp
cyAqLwogICAgICAgIHAgPSBNQVgxNiguMDVmLE1JTjE2KC45NWYsZnJhbWVfcHJvYnNbMF0pKTsK
ICAgICAgICBxID0gTUFYMTYoLjA1ZixNSU4xNiguOTVmLHRvbmFsLT5tdXNpY19wcm9iKSk7Ci0g
ICAgICAgYmV0YSA9IC4wMWYrLjA1ZipBQlMxNihwLXEpLyhwKigxLXEpK3EqKDEtcCkpOworICAg
ICAgIGJldGEgPSAuMDJmKy4wNWYqQUJTMTYocC1xKS8ocCooMS1xKStxKigxLXApKTsKICAgICAg
ICAvKiBwMCBhbmQgcDEgYXJlIHRoZSBwcm9iYWJpbGl0aWVzIG9mIHNwZWVjaCBhbmQgbXVzaWMg
YXQgdGhpcyBmcmFtZQogICAgICAgICAgIHVzaW5nIG9ubHkgaW5mb3JtYXRpb24gZnJvbSBwcmV2
aW91cyBmcmFtZSBhbmQgYXBwbHlpbmcgdGhlCiAgICAgICAgICAgc3RhdGUgdHJhbnNpdGlvbiBt
b2RlbCAqLwpAQCAtNTYxLDYgKzgyOSw3IEBAIHN0YXRpYyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lz
KFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2RlICpjZWx0CiAgICAg
ICAgdG9uYWwtPm11c2ljX3Byb2IgPSBwMS8ocDArcDEpOwogICAgICAgIGluZm8tPm11c2ljX3By
b2IgPSB0b25hbC0+bXVzaWNfcHJvYjsKIAorICAgICAgIC8qcHJpbnRmKCIlZiAlZiAlZiAlZlxu
IiwgZnJhbWVfcHJvYnNbMF0sIGZyYW1lX3Byb2JzWzFdLCB0b25hbC0+bXVzaWNfcHJvYiwgdG9u
YWwtPnZhZF9wcm9iKTsqLwogICAgICAgIC8qIFRoaXMgY2h1bmsgb2YgY29kZSBkZWFscyB3aXRo
IGRlbGF5ZWQgZGVjaXNpb24uICovCiAgICAgICAgcHN1bT0xZS0yMGY7CiAgICAgICAgLyogSW5z
dGFudGFuZW91cyBwcm9iYWJpbGl0eSBvZiBzcGVlY2ggYW5kIG11c2ljLCB3aXRoIGJldGEgcHJl
LWFwcGxpZWQuICovCkBAIC01NjgsOCArODM3LDExIEBAIHN0YXRpYyB2b2lkIHRvbmFsaXR5X2Fu
YWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2RlICpjZWx0
CiAgICAgICAgbXVzaWMwICA9IChmbG9hdClwb3coZnJhbWVfcHJvYnNbMF0sIGJldGEpOwogICAg
ICAgIGlmICh0b25hbC0+Y291bnQ9PTEpCiAgICAgICAgewotICAgICAgICAgIHRvbmFsLT5wc3Bl
ZWNoWzBdPS41OwotICAgICAgICAgIHRvbmFsLT5wbXVzaWMgWzBdPS41OworICAgICAgICAgIGlm
ICh0b25hbC0+YXBwbGljYXRpb24gPT0gT1BVU19BUFBMSUNBVElPTl9WT0lQKQorICAgICAgICAg
ICAgIHRvbmFsLT5wbXVzaWNbMF0gPSAuMWY7CisgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
IHRvbmFsLT5wbXVzaWNbMF0gPSAuNjI1ZjsKKyAgICAgICAgICB0b25hbC0+cHNwZWVjaFswXSA9
IDEtdG9uYWwtPnBtdXNpY1swXTsKICAgICAgICB9CiAgICAgICAgLyogVXBkYXRlZCBwcm9iYWJp
bGl0eSBvZiBoYXZpbmcgb25seSBzcGVlY2ggKHMwKSBvciBvbmx5IG11c2ljIChtMCksCiAgICAg
ICAgICAgYmVmb3JlIGNvbnNpZGVyaW5nIHRoZSBuZXcgb2JzZXJ2YXRpb24uICovCkBAIC02MTks
MjQgKzg5MSwxNyBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5
c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgICAgICAgICAgIHRvbmFs
LT5zcGVlY2hfY29uZmlkZW5jZV9jb3VudCA9IElNSU4odG9uYWwtPnNwZWVjaF9jb25maWRlbmNl
X2NvdW50LCA1MDApOwogICAgICAgICAgICAgIHRvbmFsLT5zcGVlY2hfY29uZmlkZW5jZSArPSBh
ZGFwdCpNSU4xNiguMmYsZnJhbWVfcHJvYnNbMF0tdG9uYWwtPnNwZWVjaF9jb25maWRlbmNlKTsK
ICAgICAgICAgICB9Ci0gICAgICAgfSBlbHNlIHsKLSAgICAgICAgICBpZiAodG9uYWwtPm11c2lj
X2NvbmZpZGVuY2VfY291bnQ9PTApCi0gICAgICAgICAgICAgdG9uYWwtPm11c2ljX2NvbmZpZGVu
Y2UgPSAuOWY7Ci0gICAgICAgICAgaWYgKHRvbmFsLT5zcGVlY2hfY29uZmlkZW5jZV9jb3VudD09
MCkKLSAgICAgICAgICAgICB0b25hbC0+c3BlZWNoX2NvbmZpZGVuY2UgPSAuMWY7CiAgICAgICAg
fQogICAgIH0KLSAgICBpZiAodG9uYWwtPmxhc3RfbXVzaWMgIT0gKHRvbmFsLT5tdXNpY19wcm9i
Pi41ZikpCi0gICAgICAgdG9uYWwtPmxhc3RfdHJhbnNpdGlvbj0wOwogICAgIHRvbmFsLT5sYXN0
X211c2ljID0gdG9uYWwtPm11c2ljX3Byb2I+LjVmOwotI2Vsc2UKLSAgICBpbmZvLT5tdXNpY19w
cm9iID0gMDsKLSNlbmRpZgotICAgIC8qZm9yIChpPTA7aTwyNTtpKyspCisjaWZkZWYgTUxQX1RS
QUlOSU5HCisgICAgZm9yIChpPTA7aTwyNTtpKyspCiAgICAgICAgcHJpbnRmKCIlZiAiLCBmZWF0
dXJlc1tpXSk7Ci0gICAgcHJpbnRmKCJcbiIpOyovCisgICAgcHJpbnRmKCJcbiIpOworI2VuZGlm
CiAKICAgICBpbmZvLT5iYW5kd2lkdGggPSBiYW5kd2lkdGg7CisgICAgdG9uYWwtPnByZXZfYmFu
ZHdpZHRoID0gYmFuZHdpZHRoOwogICAgIC8qcHJpbnRmKCIlZCAlZFxuIiwgaW5mby0+YmFuZHdp
ZHRoLCBpbmZvLT5vcHVzX2JhbmR3aWR0aCk7Ki8KICAgICBpbmZvLT5ub2lzaW5lc3MgPSBmcmFt
ZV9ub2lzaW5lc3M7CiAgICAgaW5mby0+dmFsaWQgPSAxOwpAQCAtNjUwLDE4ICs5MTUsMTkgQEAg
dm9pZCBydW5fYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICphbmFseXNpcywgY29uc3Qg
Q0VMVE1vZGUgKmNlbHRfbW9kZSwgY28KICAgIGludCBvZmZzZXQ7CiAgICBpbnQgcGNtX2xlbjsK
IAorICAgYW5hbHlzaXNfZnJhbWVfc2l6ZSAtPSBhbmFseXNpc19mcmFtZV9zaXplJjE7CiAgICBp
ZiAoYW5hbHlzaXNfcGNtICE9IE5VTEwpCiAgICB7CiAgICAgICAvKiBBdm9pZCBvdmVyZmxvdy93
cmFwLWFyb3VuZCBvZiB0aGUgYW5hbHlzaXMgYnVmZmVyICovCi0gICAgICBhbmFseXNpc19mcmFt
ZV9zaXplID0gSU1JTigoREVURUNUX1NJWkUtNSkqRnMvMTAwLCBhbmFseXNpc19mcmFtZV9zaXpl
KTsKKyAgICAgIGFuYWx5c2lzX2ZyYW1lX3NpemUgPSBJTUlOKChERVRFQ1RfU0laRS01KSpGcy81
MCwgYW5hbHlzaXNfZnJhbWVfc2l6ZSk7CiAKICAgICAgIHBjbV9sZW4gPSBhbmFseXNpc19mcmFt
ZV9zaXplIC0gYW5hbHlzaXMtPmFuYWx5c2lzX29mZnNldDsKICAgICAgIG9mZnNldCA9IGFuYWx5
c2lzLT5hbmFseXNpc19vZmZzZXQ7Ci0gICAgICBkbyB7Ci0gICAgICAgICB0b25hbGl0eV9hbmFs
eXNpcyhhbmFseXNpcywgY2VsdF9tb2RlLCBhbmFseXNpc19wY20sIElNSU4oNDgwLCBwY21fbGVu
KSwgb2Zmc2V0LCBjMSwgYzIsIEMsIGxzYl9kZXB0aCwgZG93bm1peCk7Ci0gICAgICAgICBvZmZz
ZXQgKz0gNDgwOwotICAgICAgICAgcGNtX2xlbiAtPSA0ODA7Ci0gICAgICB9IHdoaWxlIChwY21f
bGVuPjApOworICAgICAgd2hpbGUgKHBjbV9sZW4+MCkgeworICAgICAgICAgdG9uYWxpdHlfYW5h
bHlzaXMoYW5hbHlzaXMsIGNlbHRfbW9kZSwgYW5hbHlzaXNfcGNtLCBJTUlOKEZzLzUwLCBwY21f
bGVuKSwgb2Zmc2V0LCBjMSwgYzIsIEMsIGxzYl9kZXB0aCwgZG93bm1peCk7CisgICAgICAgICBv
ZmZzZXQgKz0gRnMvNTA7CisgICAgICAgICBwY21fbGVuIC09IEZzLzUwOworICAgICAgfQogICAg
ICAgYW5hbHlzaXMtPmFuYWx5c2lzX29mZnNldCA9IGFuYWx5c2lzX2ZyYW1lX3NpemU7CiAKICAg
ICAgIGFuYWx5c2lzLT5hbmFseXNpc19vZmZzZXQgLT0gZnJhbWVfc2l6ZTsKQEAgLTY3MCwzICs5
MzYsNSBAQCB2b2lkIHJ1bl9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKmFuYWx5c2lz
LCBjb25zdCBDRUxUTW9kZSAqY2VsdF9tb2RlLCBjbwogICAgYW5hbHlzaXNfaW5mby0+dmFsaWQg
PSAwOwogICAgdG9uYWxpdHlfZ2V0X2luZm8oYW5hbHlzaXMsIGFuYWx5c2lzX2luZm8sIGZyYW1l
X3NpemUpOwogfQorCisjZW5kaWYgLyogRElTQUJMRV9GTE9BVF9BUEkgKi8KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c3JjL2FuYWx5c2lzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5oCmluZGV4IDllYWU1NmE1MjUzNzhhMzYwMjQ0
NGNlOTYwOTU3ZDQ0YmY5MWZhNjEuLmNhYzUxZGZhNGViNTVkOGQxYWJiYjBkZWU5ZjA3MDQ2MzU0
MmRmMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc3JjL2FuYWx5c2lzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvYW5hbHlzaXMuaApAQCAt
MzMsMTMgKzMzLDIwIEBACiAKICNkZWZpbmUgTkJfRlJBTUVTIDgKICNkZWZpbmUgTkJfVEJBTkRT
IDE4Ci0jZGVmaW5lIE5CX1RPVF9CQU5EUyAyMQotI2RlZmluZSBBTkFMWVNJU19CVUZfU0laRSA3
MjAgLyogMTUgbXMgYXQgNDgga0h6ICovCisjZGVmaW5lIEFOQUxZU0lTX0JVRl9TSVpFIDcyMCAv
KiAzMCBtcyBhdCAyNCBrSHogKi8KIAotI2RlZmluZSBERVRFQ1RfU0laRSAyMDAKKy8qIEF0IHRo
YXQgcG9pbnQgd2UgY2FuIHN0b3AgY291bnRpbmcgZnJhbWVzIGJlY2F1c2UgaXQgbm8gbG9uZ2Vy
IG1hdHRlcnMuICovCisjZGVmaW5lIEFOQUxZU0lTX0NPVU5UX01BWCAxMDAwMAorCisjZGVmaW5l
IERFVEVDVF9TSVpFIDEwMAorCisvKiBVbmNvbW1lbnQgdGhpcyB0byBwcmludCB0aGUgTUxQIGZl
YXR1cmVzIG9uIHN0ZG91dC4gKi8KKy8qI2RlZmluZSBNTFBfVFJBSU5JTkcqLwogCiB0eXBlZGVm
IHN0cnVjdCB7CiAgICBpbnQgYXJjaDsKKyAgIGludCBhcHBsaWNhdGlvbjsKKyAgIG9wdXNfaW50
MzIgRnM7CiAjZGVmaW5lIFRPTkFMSVRZX0FOQUxZU0lTX1JFU0VUX1NUQVJUIGFuZ2xlCiAgICBm
bG9hdCBhbmdsZVsyNDBdOwogICAgZmxvYXQgZF9hbmdsZVsyNDBdOwpAQCAtNDgsMjEgKzU1LDIy
IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgIGludCAgIG1lbV9maWxsOyAgICAgICAgICAgICAgICAg
ICAgICAvKiBudW1iZXIgb2YgdXNhYmxlIHNhbXBsZXMgaW4gdGhlIGJ1ZmZlciAqLwogICAgZmxv
YXQgcHJldl9iYW5kX3RvbmFsaXR5W05CX1RCQU5EU107CiAgICBmbG9hdCBwcmV2X3RvbmFsaXR5
OworICAgaW50IHByZXZfYmFuZHdpZHRoOwogICAgZmxvYXQgRVtOQl9GUkFNRVNdW05CX1RCQU5E
U107CisgICBmbG9hdCBsb2dFW05CX0ZSQU1FU11bTkJfVEJBTkRTXTsKICAgIGZsb2F0IGxvd0Vb
TkJfVEJBTkRTXTsKICAgIGZsb2F0IGhpZ2hFW05CX1RCQU5EU107Ci0gICBmbG9hdCBtZWFuRVtO
Ql9UT1RfQkFORFNdOworICAgZmxvYXQgbWVhbkVbTkJfVEJBTkRTKzFdOwogICAgZmxvYXQgbWVt
WzMyXTsKICAgIGZsb2F0IGNtZWFuWzhdOwogICAgZmxvYXQgc3RkWzldOwogICAgZmxvYXQgbXVz
aWNfcHJvYjsKKyAgIGZsb2F0IHZhZF9wcm9iOwogICAgZmxvYXQgRXRyYWNrZXI7CiAgICBmbG9h
dCBsb3dFQ291bnQ7CiAgICBpbnQgRV9jb3VudDsKICAgIGludCBsYXN0X211c2ljOwotICAgaW50
IGxhc3RfdHJhbnNpdGlvbjsKICAgIGludCBjb3VudDsKLSAgIGZsb2F0IHN1YmZyYW1lX21lbVsz
XTsKICAgIGludCBhbmFseXNpc19vZmZzZXQ7CiAgICAvKiogUHJvYmFiaWxpdHkgb2YgaGF2aW5n
IHNwZWVjaCBmb3IgdGltZSBpIHRvIERFVEVDVF9TSVpFLTEgKGFuZCBtdXNpYyBiZWZvcmUpLgog
ICAgICAgIHBzcGVlY2hbMF0gaXMgdGhlIHByb2JhYmlsaXR5IHRoYXQgYWxsIGZyYW1lcyBpbiB0
aGUgd2luZG93IGFyZSBzcGVlY2guICovCkBAIC03Nyw2ICs4NSw4IEBAIHR5cGVkZWYgc3RydWN0
IHsKICAgIGludCB3cml0ZV9wb3M7CiAgICBpbnQgcmVhZF9wb3M7CiAgICBpbnQgcmVhZF9zdWJm
cmFtZTsKKyAgIGZsb2F0IGhwX2VuZXJfYWNjdW07CisgICBvcHVzX3ZhbDMyIGRvd25taXhfc3Rh
dGVbM107CiAgICBBbmFseXNpc0luZm8gaW5mb1tERVRFQ1RfU0laRV07CiB9IFRvbmFsaXR5QW5h
bHlzaXNTdGF0ZTsKIApAQCAtODYsNyArOTYsNyBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgKiBub3Qg
YmUgcmVwZWF0ZWQgZXZlcnkgYW5hbHlzaXMgc3RlcC4gTm8gYWxsb2NhdGVkIG1lbW9yeSBpcyBy
ZXRhaW5lZAogICogYnkgdGhlIHN0YXRlIHN0cnVjdCwgc28gbm8gY2xlYW51cCBjYWxsIGlzIHJl
cXVpcmVkLgogICovCi12b2lkIHRvbmFsaXR5X2FuYWx5c2lzX2luaXQoVG9uYWxpdHlBbmFseXNp
c1N0YXRlICphbmFseXNpcyk7Cit2b2lkIHRvbmFsaXR5X2FuYWx5c2lzX2luaXQoVG9uYWxpdHlB
bmFseXNpc1N0YXRlICphbmFseXNpcywgb3B1c19pbnQzMiBGcyk7CiAKIC8qKiBSZXNldCBhIFRv
bmFsaXR5QW5hbHlzaXNTdGF0ZSBzdHVjdC4KICAqCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9tbHBfZGF0YS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zcmMvbWxwX2RhdGEuYwppbmRleCBjMmZkYTRlMmU1OTNmZDM3Mjg2M2Q0MzM3NTk0Nzg2MmIy
NzdlNDg4Li5hODE5ODgwYmZmNWE4OTk1ZDIxMWI3YmIzNDNhNzAzM2M5YzcxNjkyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NyYy9tbHBfZGF0YS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL21scF9kYXRhLmMKQEAgLTEsMTA2ICsxLDEwOSBA
QAotLyogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZmlsZSB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0
ZWQgYnkgbWxwX3RyYWluLmMKLSAgIEl0IGNvbnRhaW5zIG11bHRpLWxheWVyIHBlcmNlcHRyb24g
KE1MUCkgd2VpZ2h0cy4gKi8KLQogI2lmZGVmIEhBVkVfQ09ORklHX0gKICNpbmNsdWRlICJjb25m
aWcuaCIKICNlbmRpZgogCiAjaW5jbHVkZSAibWxwLmgiCiAKLS8qIFJNUyBlcnJvciB3YXMgMC4x
MzgzMjAsIHNlZWQgd2FzIDEzNjE1MzU2NjMgKi8KKy8qIFJNUyBlcnJvciB3YXMgMC4yODA0OTIs
IHNlZWQgd2FzIDE0ODA0NzgxNzMgKi8KKy8qIDAuMDA1OTc2IDAuMDMxODIxICgwLjI4MDQ5NCAw
LjI4MDQ5MikgZG9uZSAqLwogCi1zdGF0aWMgY29uc3QgZmxvYXQgd2VpZ2h0c1s0MjJdID0gewor
c3RhdGljIGNvbnN0IGZsb2F0IHdlaWdodHNbNDUwXSA9IHsKIAogLyogaGlkZGVuIGxheWVyICov
Ci0tMC4wOTQxMTI1ZiwgLTAuMzAyOTc2ZiwgLTAuNjAzNTU1ZiwgLTAuMTkzOTNmLCAtMC4xODU5
ODNmLAotLTAuNjAxNjE3ZiwgLTAuMDQ2NTMxN2YsIC0wLjExNDU2M2YsIC0wLjEwMzU5OWYsIC0w
LjYxODkzOGYsCi0tMC4zMTc4NTlmLCAtMC4xNjk5NDlmLCAtMC4wNzAyODg1ZiwgMC4xNDgwNjVm
LCAwLjQwOTUyNGYsCi0wLjU0ODQzMmYsIDAuMzY3NjQ5ZiwgLTAuNDk0MzkzZiwgMC43NjQzMDZm
LCAtMS44Mzk1N2YsCi0wLjE3MDg0OWYsIDEyLjc4NmYsIC0xLjA4ODQ4ZiwgLTEuMjcyODRmLCAt
MTYuMjYwNmYsCi0yNC4xNzczZiwgLTUuNTc0NTRmLCAtMC4xNzI3NmYsIC0wLjE2MzM4OGYsIC0w
LjIyNDQyMWYsCi0tMC4wOTQ4OTQ0ZiwgLTAuMDcyODY5NWYsIC0wLjI2NTU3ZiwgLTAuMTAwMjgz
ZiwgLTAuMDUxNTQ1OWYsCi0tMC4xNDYxNDJmLCAtMC4xMjA2NzRmLCAtMC4xODA2NTVmLCAwLjEy
ODU3ZiwgMC40NDIxMzhmLAotLTAuNDkzNzM1ZiwgMC4xNjc3NjdmLCAwLjIwNjY5OWYsIC0wLjE5
NzU2N2YsIDAuNDE3OTk5ZiwKLTEuNTAzNjRmLCAtMC43NzMzNDFmLCAtMTAuMDQwMWYsIDAuNDAx
ODcyZiwgMi45Nzk2NmYsCi0xNS4yMTY1ZiwgLTEuODg5MDVmLCAtMS4xOTI1NGYsIDAuMDI4NTM5
N2YsIC0wLjAwNDA1MTM5ZiwKLTAuMDcwNzU2NWYsIDAuMDA4MjU2OTlmLCAtMC4wOTI3MjY5Ziwg
LTAuMDEwMzkzZiwgLTAuMDA0Mjg4ODJmLAotLTAuMDA0ODk3NDNmLCAtMC4wNzA5NzMxZiwgLTAu
MDAyNTU5OTJmLCAwLjAzOTU2MTlmLCAwLjIyNjQyNGYsCi0wLjAzMjUyMzFmLCAwLjE2MjE3NWYs
IC0wLjEwMDExOGYsIDAuNDg1Nzg5ZiwgMC4xMjY5N2YsCi0wLjI4NTkzN2YsIDAuMDE1NTYzN2Ys
IDAuMTA1NDZmLCAzLjA1NTU4ZiwgMS4xNTA1OWYsCi0tMS4wMDkwNGYsIC0xLjgzMDg4ZiwgMy4z
MTc2NmYsIC0zLjQyNTE2ZiwgLTAuMTE5MTM1ZiwKLS0wLjA0MDU2NTRmLCAwLjAwNjkwMDY4Ziwg
MC4wMTc5ODc3ZiwgLTAuMDM4MjQ4N2YsIDAuMDA1OTc5NDFmLAotLTAuMDE4MzYxMWYsIDAuMDAx
OTAzOTVmLCAtMC4xNDQzMjJmLCAtMC4wNDM1NjcxZiwgMC4wMDA5OTA1OTRmLAotMC4yMjEwODdm
LCAwLjE0MjQwNWYsIDAuNDg0MDY2ZiwgMC40MDQzOTVmLCAwLjUxMTk1NWYsCi0tMC4yMzcyNTVm
LCAwLjI0MTc0MmYsIDAuMzUwNDVmLCAtMC42OTk0MjhmLCAxMC4zOTkzZiwKLTIuNjUwN2YsIC0y
LjQzNDU5ZiwgLTQuMTg4MzhmLCAxLjA1OTI4ZiwgMS43MTA2N2YsCi0wLjAwNjY3ODExZiwgLTAu
MDcyMTMzNWYsIC0wLjAzOTczNDZmLCAwLjAzNjI3MDRmLCAtMC4xMTQ5NmYsCi0tMC4wMjM1Nzc2
ZiwgMC4wMDgyMTYxZiwgLTAuMDE0MTc0MWYsIC0wLjAzMjk2OTlmLCAtMC4wMzU0MjUzZiwKLTAu
MDAyNzc0MDRmLCAtMC4yOTA2NTRmLCAtMS4xNDc2N2YsIC0wLjMxOTE1N2YsIC0wLjY4NjU0NGYs
Ci0wLjM2ODk3ZiwgMC40Nzg4OTlmLCAwLjE4MjU3OWYsIC0wLjQxMTA2OWYsIDAuODgxMTA0ZiwK
LS00LjYwNjgzZiwgMS40Njk3ZiwgMC4zMzU4NDVmLCAtMS44MTkwNWYsIC0zMC4xNjk5ZiwKLTUu
NTUyMjVmLCAwLjAwMTk1MDhmLCAtMC4xMjM1NzZmLCAtMC4wNzI3MzMyZiwgLTAuMDY0MTU5N2Ys
Ci0tMC4wNTM0NDU4ZiwgLTAuMTA4MTY2ZiwgLTAuMDkzNzM2OGYsIC0wLjA2OTc4ODNmLCAtMC4w
Mjc1NDc1ZiwKLS0wLjE5MjMwOWYsIC0wLjExMDA3NGYsIDAuMjg1Mzc1ZiwgLTAuNDA1NTk3Ziwg
MC4wOTI2NzI0ZiwKLS0wLjI4Nzg4MWYsIC0wLjg1MTE5M2YsIC0wLjA5OTQ5M2YsIC0wLjIzMzc2
NGYsIC0xLjI4NTJmLAotMS4xMzYxMWYsIDMuMTIxNjhmLCAtMC4wNjk5ZiwgLTEuODYyMTZmLCAy
LjY1MjkyZiwKLS03LjMxMDM2ZiwgMi40NDc3NmYsIC0wLjAwMTExODAyZiwgLTAuMDYzMjc4NmYs
IC0wLjAzNzYyOTZmLAotLTAuMTQ5ODUxZiwgMC4xNDI5NjNmLCAwLjE4NDM2OGYsIDAuMTIzNDMz
ZiwgMC4wNzU2MTU4ZiwKLTAuMTE3MzEyZiwgMC4wOTMzMzk1ZiwgMC4wNjkyMTYzZiwgMC4wODQy
NTkyZiwgMC4wNzA0NjgzZiwKLTAuMDU4OTk2M2YsIDAuMDk0MjIwNWYsIC0wLjQ0ODg2MmYsIDAu
MDI2MjY3N2YsIDAuMjcwMzUyZiwKLS0wLjI2MjMxN2YsIDAuMTcyNTg2ZiwgMi4wMDIyN2YsIC0w
LjE1OTIxNmYsIDAuMDM4NDIyZiwKLTEwLjIwNzNmLCA0LjE1NTM2ZiwgLTIuMzQwN2YsIC0wLjA1
NTAyNjVmLCAwLjAwOTY0NzkyZiwKLS0wLjE0MTMzNmYsIDAuMDI3NDUwMWYsIDAuMDM0MzkyMWYs
IC0wLjA0ODc0MjhmLCAwLjA5NTAxNzJmLAotLTAuMDA3NzUwMTdmLCAtMC4wMzcyNDkyZiwgLTAu
MDA1NDgxMjFmLCAtMC4wNjYzNjk1ZiwgMC4wOTYwNTA2ZiwKLS0wLjIwMDAwOGYsIC0wLjA0MTI4
MjdmLCAwLjU4NzI4ZiwgMC4wNTE1Nzg3ZiwgMC4zMzcyNTRmLAotMC44NTUwMjRmLCAwLjY2ODM3
MWYsIC0wLjExNDkwNGYsIC0zLjYyOTYyZiwgLTAuNDY3NDc3ZiwKLS0wLjIxNTQ3MmYsIDIuNjE1
MzdmLCAwLjQwNjExN2YsIC0xLjM2MzczZiwgMC4wNDI1Mzk0ZiwKLTAuMTIyMDhmLCAwLjA5MzQ1
MDJmLCAwLjEyMzA1NWYsIDAuMDM0MDkzNWYsIC0wLjE0MjQ2NmYsCi0wLjAzNTAzN2YsIC0wLjA0
OTA2NjZmLCAwLjA3MzMyMDhmLCAwLjA1NzY2NzJmLCAwLjEyMzk4NGYsCi0tMC4wNTE3MTk0Ziwg
LTAuMjUzMDE4ZiwgMC41OTA1NjVmLCAwLjE0NTg0OWYsIDAuMzE1MTg1ZiwKLTAuMjIxNTM0Ziwg
LTAuMTQ5MDgxZiwgMC4yMTYxNjFmLCAtMC4zNDk1NzVmLCAyNC41NjY0ZiwKLS0wLjk5NDE5NmYs
IDAuNjE0Mjg5ZiwgLTE4Ljc5MDVmLCAtMi44MzI3N2YsIC0wLjcxNjgwMWYsCi0tMC4zNDcyMDFm
LCAwLjQ3OTUxNWYsIC0wLjI0NjAyN2YsIDAuMDc1ODY4M2YsIDAuMTM3MjkzZiwKLS0wLjE3Nzgx
ZiwgMC4xMTg3NTFmLCAtMC4wMDEwODMyOWYsIC0wLjIzNzMzNGYsIDAuMzU1NzMyZiwKLS0wLjEy
OTkxZiwgLTAuMDU0NzYyN2YsIC0wLjMxODU3NmYsIC0wLjMyNTUyNGYsIDAuMTgwNDk0ZiwKLS0w
LjA2MjU2MDRmLCAwLjE0MTIxOWYsIDAuMzQ0MDY0ZiwgMC4zNzY1OGYsIC0wLjU5MTc3MmYsCi01
Ljg0MjdmLCAtMC4zODA3NWYsIDAuMjIxODk0ZiwgLTEuNDE5MzRmLCAtMS44Nzk0M2UrMDZmLAot
MS4zNDExNGYsIDAuMDI4MzM1NWYsIC0wLjA0NDc4NTZmLCAtMC4wMjExNDY2ZiwgLTAuMDI1Njky
N2YsCi0wLjAxMzk2MThmLCAwLjAyMDc5MzRmLCAtMC4wMTA3NjY2ZiwgMC4wMTEwOTY5ZiwgMC4w
NTg2MDY5ZiwKLS0wLjAyNTM1NDVmLCAtMC4wMzI4NDMzZiwgMC4xMTg3MmYsIC0wLjIxNjk0M2Ys
IDAuMTQ1NzQ4ZiwKLTAuMTE5ODA4ZiwgLTAuMDkxNTIxMWYsIC0wLjEyMDY0N2YsIC0wLjA3ODc3
MTlmLCAtMC4xNDM2NDRmLAotLTAuNTk1MTE2ZiwgLTEuMTUyZiwgLTEuMjUzMzVmLCAtMS4xNzA5
MmYsIDQuMzQwMjNmLAotLTk3NTI2OC5mLCAtMS4zNzAzM2YsIC0wLjA0MDExMjNmLCAwLjIxMDYw
MmYsIC0wLjEzNjY1NmYsCi0wLjEzNTk2MmYsIC0wLjA1MjMyOTNmLCAwLjA0NDQ2MDRmLCAwLjAx
NDM5MjhmLCAwLjAwNDEyNjY2ZiwKLS0wLjAxOTMwMDNmLCAwLjIxODQ1MmYsIC0wLjExMDIwNGYs
IC0yLjAyNTYzZiwgMC45MTgyMzhmLAotLTIuNDUzNjJmLCAxLjE5NTQyZiwgLTAuMDYxMzYyZiwg
LTEuOTIyNDNmLCAwLjMwODExMWYsCi0wLjQ5NzY0ZiwgMC45MTIzNTZmLCAwLjIwOTI3MmYsIC0y
LjM0NTI1ZiwgMi4xOTMyNmYsCi0tNi40NzEyMWYsIDEuNjk3NzFmLCAtMC43MjUxMjNmLCAwLjAx
MTg5MjlmLCAwLjAzNzc5NDRmLAotMC4wNTU0MDAzZiwgMC4wMjI2NDUyZiwgLTAuMDcwNDQyMWYs
IC0wLjAzMDAzMDlmLCAwLjAxMjI5NzhmLAotLTAuMDA0MTc4MmYsIC0wLjA2ODY2MTJmLCAwLjAz
MTMxMTVmLCAwLjAzOTExMWYsIDAuMzY0MTExZiwKLS0wLjA5NDU1NDhmLCAwLjAyMjk4NzZmLCAt
MC4xNzQxNGYsIDAuMzI5Nzk1ZiwgMC4xMTQ3MTRmLAotMC4zMDAyMmYsIDAuMTA2OTk3ZiwgMC4x
MzIzNTVmLCA1Ljc5OTMyZiwgMC45MDgwNThmLAotLTAuOTA1MzI0ZiwgLTMuMzU2MWYsIDAuMTkw
NjQ3ZiwgMC4xODQyMTFmLCAtMC42NzM2NDhmLAotMC4yMzE4MDdmLCAtMC4wNTg2MjIyZiwgMC4y
MzA3NTJmLCAtMC40MzgyNzdmLCAwLjI0NTg1N2YsCi0tMC4xNzIxNWYsIDAuMDg3NjM4M2YsIC0w
LjcyMDUxMmYsIDAuMTYyNTE1ZiwgMC4wMTcwNTcxZiwKLTAuMTAxNzgxZiwgMC4zODg0NzdmLCAx
LjMyOTMxZiwgMS4wODU0OGYsIC0wLjkzNjMwMWYsCi0tMi4zNjk1OGYsIC02LjcxOTg4ZiwgLTMu
NDQzNzZmLCAyLjEzODE4ZiwgMTQuMjMxOGYsCi00LjkxNDU5ZiwgLTMuMDkwNTJmLCAtOS42OTE5
MWYsIC0wLjc2ODIzNGYsIDEuNzk2MDRmLAotMC4wNTQ5NjUzZiwgMC4xNjMzOTlmLCAwLjA3OTcw
MjVmLCAwLjAzNDM5MzNmLCAtMC4wNTU1ODc2ZiwKLS0wLjAwNTA1NjczZiwgMC4wMTg3MjU4Ziwg
MC4wMzI2NjI4ZiwgMC4wMjMxNDg2ZiwgMC4xNTU3M2YsCi0wLjA0NzYyMjNmLCAtMC4yNTQ4MjRm
LCAxLjYwMTU1ZiwgLTAuODAxMjIxZiwgMi41NTQ5NmYsCi0wLjczNzYyOWYsIC0xLjM2MjQ5Ziwg
LTAuNjk1NDYzZiwgLTIuNDQzMDFmLCAtMS43MzE4OGYsCi0zLjk1Mjc5ZiwgMS44OTA2OGYsIDAu
NDg2MDg3ZiwgLTExLjMzNDNmLCAzLjk0MTZlKzA2ZiwKLQorLTAuNTE0NjI0ZiwgMC4wMjM0MjI3
ZiwgLTAuMTQzMjlmLCAtMC4wODc4MjE2ZiwgLTAuMDAxODc4MjdmLAorLTAuMDI1NzQ0M2YsIDAu
MTA4NTI0ZiwgMC4wMDMzMzg4MWYsIDAuMDA1ODUwMTdmLCAtMC4wMjQ2MTMyZiwKKzAuMTQyNzIz
ZiwgLTAuMDA0MzY0OTRmLCAwLjAxMDEzNTRmLCAtMC4xMTEyNGYsIC0wLjA4MDkzNjdmLAorLTAu
MDc1MDc3MmYsIDAuMDI5NTUyNGYsIDAuMDA4MjM5NDRmLCAwLjE1MDM5MmYsIDAuMDMyMDg3NmYs
CistMC4wNzEwNTY0ZiwgLTEuNDM4MThmLCAwLjY1MjA3NmYsIDAuMDY1MDc0NGYsIC0xLjU0ODIx
ZiwKKzAuMTY4OTQ5ZiwgLTEuOTI3MjRmLCAwLjA1MTc5NzZmLCAtMC4wNjcwNzM3ZiwgLTAuMDY5
MDEyMWYsCiswLjAwMjQ3NTI4ZiwgLTAuMDUyMjAyNGYsIDAuMDYzMTM2OGYsIDAuMDUzMjc3NmYs
IDAuMDQ3NzUxZiwKKy0wLjAxMTcxNWYsIDAuMTQyMzc0ZiwgLTAuMDI5MDg4NWYsIC0wLjI3OTI2
M2YsIC0wLjQzMzQ5OWYsCistMC4wNzk1MTc0ZiwgLTAuMzgwNDU4ZiwgLTAuMDUxMjYzZiwgMC4y
MTg1MzdmLCAtMC4zMjI0NzhmLAorMS4wNjY2N2YsIC0wLjEwNDYwN2YsIC00LjcwMTA4ZiwgMC4z
MTIwMzdmLCAwLjI3NzM5N2YsCistMi43MTg1OWYsIDEuNzAwMzdmLCAtMC4xNDE4NDVmLCAwLjAx
MTU2MThmLCAwLjA2Mjk4ODNmLAorMC4wNDAzODcxZiwgMC4wMTM5NDI4ZiwgLTAuMDA0MzA3MzNm
LCAtMC4wNDI5MDM4ZiwgLTAuMDU5MDMxOGYsCistMC4wNTAxNTI2ZiwgLTAuMDI4NDgwMmYsIC0w
LjA0MTU2ODZmLCAtMC4wNDM4OTk5ZiwgMC4wODIyNjY2ZiwKKzAuMTk3MTk0ZiwgMC4wMzYzMjc1
ZiwgLTAuMDU4NDMwN2YsIDAuMDc1MjM2NGYsIC0wLjA3OTk3OTZmLAorLTAuMTQ2Mjc1ZiwgMC4x
NjE2NjFmLCAtMC4xODQ1ODVmLCAwLjE0NTU2OGYsIDAuNDQyODIzZiwKKzEuNjEyMjFmLCAxLjEx
MTYyZiwgMi42MjE3N2YsIC0yLjQ4MmYsIC0wLjExMjU5OWYsCistMC4xMTAzNjZmLCAtMC4xNDA3
OTRmLCAtMC4xODE2OTRmLCAwLjA2NDg2NzRmLCAwLjA4NDIyNDhmLAorMC4wOTMzOTkzZiwgMC4x
NTAxMjJmLCAwLjEyOTE3MWYsIDAuMTc2ODQ4ZiwgMC4xNDE3NThmLAorLTAuMjcxODIyZiwgMC4y
MzUxMTNmLCAwLjA2Njg1NzlmLCAtMC40MzM5NTdmLCAwLjExMzYzM2YsCistMC4xNjkzNDhmLCAt
MS40MDA5MWYsIDAuNjI4NjFmLCAtMC4xMzQyMzZmLCAwLjQwMjE3M2YsCisxLjg2MzczZiwgMS41
Mzk5OGYsIC00LjMyMDg0ZiwgMC43MzUzNDNmLCAwLjgwMDIxNGYsCistMC4wMDk2ODQxNWYsIDAu
MDQyNTkwNGYsIDAuMDE5NjgxMWYsIC0wLjAxODQyNmYsIC0wLjAwMDM0Mzk1M2YsCistMC4wMDQx
NjM4OWYsIDAuMDAxMTE1NThmLCAwLjAxNzMwNjlmLCAtMC4wMDk5ODU5NmYsIC0wLjAyNTg5OGYs
CiswLjAwMTIzNzY0ZiwgLTAuMDA1MjAzNzNmLCAtMC4wNTY1MDMzZiwgMC4wNjM3Mzk0ZiwgMC4w
MDUxMjEzZiwKKzAuMDIyMTM2MWYsIDAuMDA4MTk5NjJmLCAtMC4wNDY3MDYxZiwgLTAuMDU0ODI1
OGYsIC0wLjAwMzE0MDYzZiwKKy0xLjE4MzMyZiwgMS44ODA5MWYsIC0wLjQxMTQ4ZiwgLTIuOTU3
MjdmLCAtMC41MjE0NDlmLAorLTAuMjcxNjQxZiwgMC4xMjQ5NDZmLCAtMC4wNTMyOTM2ZiwgMC4x
MDE1MTVmLCAwLjAwMDIwODU2NGYsCistMC4wNDg4NzQ4ZiwgMC4wNjQyMzg4ZiwgLTAuMDM4Mzg0
OGYsIDAuMDEzNTA0NmYsIC0wLjA0MTM1OTJmLAorLTAuMDMyNjQwMmYsIC0wLjAxMzc0MjFmLCAt
MC4wMjI1MjE5ZiwgLTAuMDkxNzI5NGYsIC0wLjI3Nzc1OWYsCistMC4xODU0MThmLCAwLjA0NzEx
MjhmLCAtMC4xMjU4NzlmLCAwLjI2MjQ2N2YsIC0wLjIxMjc5NGYsCistMC4xMTI5MzFmLCAtMS45
OTg4NWYsIC0wLjQwNDc4N2YsIDAuMjI0NDAyZiwgMC42Mzc5NjJmLAorLTAuMjc4MDhmLCAtMC4w
NzIzOTUzZiwgLTAuMDUzNzY1NWYsIC0wLjAzMzYzNTlmLCAtMC4wOTA2NjAxZiwKKy0wLjA2NDEz
MDlmLCAtMC4wNzEzNTQyZiwgMC4wNTI0MzE3ZiwgMC4wMDYwODgxOWYsIDAuMDc1NDEwMWYsCist
MC4wNDg4NDAxZiwgLTAuMDA2NzE4NjVmLCAwLjA0MTgyMzlmLCAwLjA1MzYyODRmLCAtMC4xMzI2
MzlmLAorMC4wMjY3NjQ4ZiwgLTAuMjQ4NDMyZiwgLTAuMDEwNDE1M2YsIDAuMDM1NTQ0ZiwgLTAu
MjEyNzUzZiwKKy0wLjMwMjg5NWYsIC0wLjAzNTc4NTRmLCAwLjM3NjgzOGYsIDAuNTk3MDI1Ziwg
LTAuNjY0NjQ3ZiwKKzAuMjY4NDIyZiwgLTAuMzc2NzcyZiwgLTEuMDU0NzJmLCAwLjAxNDQxNzhm
LCAwLjE3OTEyMmYsCiswLjAzNjAxNTVmLCAwLjIyMDI2MmYsIC0wLjAwNTYzODFmLCAwLjAzMTcx
OTdmLCAwLjA2MjEwNjZmLAorLTAuMDA3NzkyOThmLCAwLjAwNzg5Mzc4ZiwgMC4wMDM1MDYwNWYs
IDAuMDEwNDgwOWYsIDAuMDM2Mjg3MWYsCistMC4xNTc3MDhmLCAtMC4wNjU5Nzc5ZiwgLTAuMDky
NjI3OGYsIDAuMDA3NzA3OTFmLCAwLjA2MzE2MjFmLAorMC4wODE3MzQzZiwgLTAuNDI0Mjk1Ziwg
LTAuMDQzNzcyN2YsIC0wLjI0MjUxZiwgMC43MTEyMTdmLAorLTAuNzM2NDU1ZiwgLTIuMTk0Ziwg
LTAuMTA3NjEyZiwgLTAuMTc1MTU2ZiwgLTAuMDM2NjU3M2YsCistMC4wMTIzMTU2ZiwgLTAuMDYy
ODUxNmYsIC0wLjAyMTg5NzdmLCAtMC4wMDY5MzY5OWYsIDAuMDA2OTUxODVmLAorMC4wMDUwNzM2
MmYsIDAuMDAzNTkzMzRmLCAwLjAwNTI2NjFmLCAwLjAzNTU2MWYsIDAuMDM4MjcwMWYsCiswLjAz
NDIxNzlmLCAtMC4wMDc5MDI3MWYsIC0wLjAxNzA5MjVmLCAwLjA0NzAyOWYsIDAuMDE5NzM2MmYs
CistMC4wMTUzNDM1ZiwgMC4wNjQ0MTUyZiwgLTAuMzY4NjJmLCAtMC4wNjc0ODc2ZiwgLTIuODI2
NzJmLAorMS4zNDEyMmYsIC0wLjA3ODgwMjlmLCAtMy40Nzc5MmYsIDAuNTA3MjQ2ZiwgLTAuODE2
Mzc4ZiwKKy0wLjAxNDIzODNmLCAtMC4xMjczNDlmLCAtMC4xMDY5MjZmLCAtMC4wMzU5NTI0Ziwg
MC4xMDUwNDVmLAorMC4yOTE1NTRmLCAwLjE5NTQxM2YsIDAuMDg2NjIxNGYsIC0wLjA2NjU3N2Ys
IC0wLjEwMjE4OGYsCiswLjA5Nzk0NjZmLCAtMC4xMjk4MmYsIDAuNDAwMTgxZiwgLTAuNDA5MzM2
ZiwgLTAuMDU5MzMyNmYsCistMC4wNjU2MjAzZiwgLTAuMjA0NDc0ZiwgMC4xNzk4MDJmLCAwLjAw
MDUwOTA4NGYsIDAuMDk5NTk1NGYsCistMi4zNzdmLCAtMC42ODYzNTlmLCAwLjkzNDg2MWYsIDEu
MTAyNjFmLCAxLjM5MDFmLAorLTQuMzM2MTZmLCAtMC4wMDI2NDAxN2YsIDAuMDA3MTMwNDVmLCAw
LjEwNjI2NGYsIDAuMTQzNzI2ZiwKKy0wLjA2ODUzMDVmLCAtMC4wNTQ2NTZmLCAtMC4wMTc2NzI1
ZiwgLTAuMDc3MjY2OWYsIC0wLjAyNjQ1MjZmLAorLTAuMDEwMzgyNGYsIC0wLjAyNjk4NzJmLCAt
MC4wMDY4N2YsIDAuMjI1ODA0ZiwgMC40MDc3NTFmLAorLTAuMDYxMjYxMWYsIC0wLjA1NzY4NjNm
LCAtMC4xODAxMzFmLCAtMC4yMjI3NzJmLCAtMC40NjE3NDJmLAorMC4zMzUyMzZmLCAxLjAzMzk5
ZiwgNC4yNDExMmYsIC0wLjM0NTc5NmYsIC0wLjU5NDU0OWYsCistNzYuMTQwN2YsIC0wLjI2NTI3
NmYsIDAuMDUwNzcxOWYsIDAuMDY0MzA0NGYsIDAuMDM4NDgzMmYsCiswLjA0MjQ0NTlmLCAtMC4w
Mzg3ODE3ZiwgLTAuMDIzNTk5NmYsIC0wLjA3NDA1NTZmLCAtMC4wMjcwMDI5ZiwKKzAuMDA4ODIx
NzdmLCAtMC4wNTUyMzcxZiwgLTAuMDA0ODU4NTFmLCAwLjMxNDI5NWYsIDAuMzYwNDMxZiwKKy0w
LjA3ODcwODVmLCAwLjExMDM1NWYsIC0wLjQxNTk1OGYsIC0wLjM4NTA4OGYsIC0wLjI3MjIyNGYs
CistMS41NTEwOGYsIC0wLjE0MTg0OGYsIDAuNDQ4ODc3ZiwgLTAuNTYzNDQ3ZiwgLTIuMzE0MDNm
LAorLTAuMTIwMDc3ZiwgLTEuNDk5MThmLCAtMC44MTc3MjZmLCAtMC4wNDk1ODU0ZiwgLTAuMDIz
MDc4MmYsCistMC4wMjI0MDE0ZiwgMC4xMTcwNzZmLCAwLjAzOTMyMTZmLCAwLjA1MTk5N2YsIDAu
MDMzMDc2M2YsCistMC4xMTA3OTZmLCAwLjAyMTExMTdmLCAtMC4wMTk3MjU4ZiwgMC4wMTg3NDYx
ZiwgMC4wMTI1MTgzZiwKKzAuMTQ4NzZmLCAwLjA5MjA1NjVmLCAtMC4zNDI0NzVmLCAwLjEzNTI3
MmYsIC0wLjE2ODE1NWYsCistMC4wMzM0MjNmLCAtMC4wNjA0NjExZiwgLTAuMTI4ODM1ZiwgMC42
NjQ5NDdmLCAtMC4xNDQ5OTdmLAorMi4yNzY0OWYsIDEuMjg2NjNmLCAwLjg0MTIxN2YsIC0yLjQy
ODA3ZiwgMC4wMjMwNDcxZiwKKzAuMjI2NzA5ZiwgLTAuMDM3NDgwM2YsIDAuMTU1NDM2ZiwgMC4w
NDAwMzQyZiwgLTAuMTg0Njg2ZiwKKzAuMTI4NDg4ZiwgLTAuMDkzOTUxOGYsIC0wLjA1Nzg1NTlm
LCAwLjAyNjU5NjdmLCAtMC4wOTk5MzIyZiwKKy0wLjAzMjI3NjhmLCAtMC4zMjI5OTRmLCAtMC4x
ODkzNzFmLCAtMC43MzgwNjlmLCAtMC4wNzU0OTE0ZiwKKzAuMjE0NzE3ZiwgLTAuMDkzNzI4Ziwg
LTAuNjk1NzQxZiwgMC4wODk5Mjk4ZiwgLTIuMDYxODhmLAorLTAuMjczNzE5ZiwgLTAuODk2OTc3
ZiwgMC4xMzA1NTNmLCAwLjEzNDYzOGYsIDEuMjkzNTVmLAorMC4wMDUyMDc0OWYsIC0wLjAzMjQy
MjRmLCAwLjAwNTMwNDUxZiwgMC4wMTkyMzg1ZiwgMC4wMDMyODcwOGYsCiswLjAyNTA4MzhmLCAw
LjAwNTMzNjVmLCAtMC4wMTc3MzIxZiwgMC4wMDYxODc4OWYsIDAuMDA1MjUzNjRmLAorMC4wMDEw
NDU5NmYsIC0wLjAzNjA0NTlmLCAwLjA0MDI0MDNmLCAtMC4wNDA2MzUxZiwgMC4wMTM2ODgzZiwK
KzAuMDg4MDcyMmYsIC0wLjAxOTc0NDlmLCAwLjA4OTkzOGYsIDAuMDEwMDQ1NmYsIC0wLjA0NzU2
MzhmLAorLTAuNzMyNjdmLCAwLjAzNzQzM2YsIC0wLjE0NjU1MWYsIC0wLjIzMDIyMWYsIC0zLjA2
NDg5ZiwKKy0xLjQwMTk0ZiwgMC4wMTk4NDgzZiwgMC4wMzk3OTUzZiwgLTAuMDE5MDIzOWYsIDAu
MDQ3MDcxNWYsCistMC4xMzEzNjNmLCAtMC4xOTE3MjFmLCAtMC4wMTc2MjI0ZiwgLTAuMDQ4MDM1
MmYsIC0wLjIyMTc5OWYsCistMC4yNjc5NGYsIC0wLjAyOTI2MTVmLCAwLjA2MTIxMjdmLCAtMC4x
Mjk4NzdmLCAwLjAwNjI4MzMyZiwKKy0wLjA4NTkxOGYsIDAuMDE3NTM3OWYsIDAuMDU0MTAxMWYs
IC0wLjA4MTA4NzRmLCAtMC4zODA4MDlmLAorLTAuMjIyMDU2ZiwgLTAuNTA4ODU5ZiwgLTAuNDcz
MzY5ZiwgMC40ODQ5NThmLCAtMi4yODQxMWYsCiswLjAxMzk1MTZmLAogLyogb3V0cHV0IGxheWVy
ICovCi0tMC4zODE0MzlmLCAwLjEyMTE1ZiwgLTAuOTA2OTI3ZiwgMi45Mzg3OGYsIDEuNjM4OGYs
Ci0wLjg4MjgxMWYsIDAuODc0MzQ0ZiwgMS4yMTcyNmYsIC0wLjg3NDU0NWYsIDAuMzIxNzA2ZiwK
LTAuNzg1MDU1ZiwgMC45NDY1NThmLCAtMC41NzUwNjZmLCAtMy40NjU1M2YsIDAuODg0OTA1ZiwK
LTAuMDkyNDA0N2YsIC05LjkwNzEyZiwgMC4zOTEzMzhmLCAwLjE2MDEwM2YsIC0yLjA0OTU0ZiwK
LTQuMTQ1NWYsIDAuMDY4NDAyOWYsIC0wLjE0NDc2MWYsIC0wLjI4NTI4MmYsIDAuMzc5MjQ0ZiwK
LS0xLjE1ODRmLCAtMC4wMjc3MjQxZiwgLTkuODVmLCAtNC44MjM4NmYsIDMuNzEzMzNmLAotMy44
NzMwOGYsIDMuNTI1NThmfTsKKzMuOTAwMTdmLCAxLjcxNzg5ZiwgLTEuNDMzNzJmLCAtMi43MDgz
OWYsIDEuNzcxMDdmLAorNS40ODAwNmYsIDEuNDQ2NjFmLCAyLjAxMTM0ZiwgLTEuODgzODNmLCAt
My42NDk1OGYsCistMS4yNjM1MWYsIDAuNzc5NDIxZiwgMi4xMTM1N2YsIDMuMTA0MDlmLCAxLjY4
ODQ2ZiwKKy00LjQ2MTk3ZiwgLTEuNjE0NTVmLCAzLjU5ODMyZiwgMi40MzUzMWYsIC0xLjI2NDU4
ZiwKKzAuNDE3OTQxZiwgMS40NzQzN2YsIDIuMTY2MzVmLCAtMS45MDlmLCAtMC44Mjg4NjlmLAor
MS4zODgwNWYsIC0yLjY3OTc1ZiwgLTAuMTEwMDQ0ZiwgMS45NTU5NmYsIDAuNjk3OTMxZiwKKy0w
LjMxMzIyNmYsIC0wLjg4OTMxNWYsIDAuMjgzMjM2ZiwgMC45NDYxMDJmLCB9OwogCi1zdGF0aWMg
Y29uc3QgaW50IHRvcG9bM10gPSB7MjUsIDE1LCAyfTsKK3N0YXRpYyBjb25zdCBpbnQgdG9wb1sz
XSA9IHsyNSwgMTYsIDJ9OwogCiBjb25zdCBNTFAgbmV0ID0gewogICAgIDMsCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NyYy9tbHBfdHJhaW4uYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc3JjL21scF90cmFpbi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhkOWQxMjdhNmRi
YmI0ZTU5NmU5ZmQyOGI1YzFhYjFhYzUzMDdmMTkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9tbHBf
dHJhaW4uYwpAQCAtMCwwICsxLDUwMSBAQAorLyogQ29weXJpZ2h0IChjKSAyMDA4LTIwMTEgT2N0
YXNpYyBJbmMuCisgICBXcml0dGVuIGJ5IEplYW4tTWFyYyBWYWxpbiAqLworLyoKKyAgIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgICBhcmUgbWV0OgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisK
KyAgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklC
VVRPUlMKKyAgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QKKyAgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICAgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgRk9VTkRBVElPTiBP
UgorICAgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworCisj
aW5jbHVkZSAibWxwX3RyYWluLmgiCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3Rk
aW8uaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzZW1hcGhvcmUuaD4KKyNpbmNs
dWRlIDxwdGhyZWFkLmg+CisjaW5jbHVkZSA8dGltZS5oPgorI2luY2x1ZGUgPHNpZ25hbC5oPgor
CitpbnQgc3RvcHBlZCA9IDA7CisKK3ZvaWQgaGFuZGxlcihpbnQgc2lnKQoreworICAgIHN0b3Bw
ZWQgPSAxOworICAgIHNpZ25hbChzaWcsIGhhbmRsZXIpOworfQorCitNTFBUcmFpbiAqIG1scF9p
bml0KGludCAqdG9wbywgaW50IG5iTGF5ZXJzLCBmbG9hdCAqaW5wdXRzLCBmbG9hdCAqb3V0cHV0
cywgaW50IG5iU2FtcGxlcykKK3sKKyAgICBpbnQgaSwgaiwgazsKKyAgICBNTFBUcmFpbiAqbmV0
OworICAgIGludCBpbkRpbSwgb3V0RGltOworICAgIG5ldCA9IG1hbGxvYyhzaXplb2YoKm5ldCkp
OworICAgIG5ldC0+dG9wbyA9IG1hbGxvYyhuYkxheWVycypzaXplb2YobmV0LT50b3BvWzBdKSk7
CisgICAgZm9yIChpPTA7aTxuYkxheWVycztpKyspCisgICAgICAgIG5ldC0+dG9wb1tpXSA9IHRv
cG9baV07CisgICAgaW5EaW0gPSB0b3BvWzBdOworICAgIG91dERpbSA9IHRvcG9bbmJMYXllcnMt
MV07CisgICAgbmV0LT5pbl9yYXRlID0gbWFsbG9jKChpbkRpbSsxKSpzaXplb2YobmV0LT5pbl9y
YXRlWzBdKSk7CisgICAgbmV0LT53ZWlnaHRzID0gbWFsbG9jKChuYkxheWVycy0xKSpzaXplb2Yo
bmV0LT53ZWlnaHRzKSk7CisgICAgbmV0LT5iZXN0X3dlaWdodHMgPSBtYWxsb2MoKG5iTGF5ZXJz
LTEpKnNpemVvZihuZXQtPndlaWdodHMpKTsKKyAgICBmb3IgKGk9MDtpPG5iTGF5ZXJzLTE7aSsr
KQorICAgIHsKKyAgICAgICAgbmV0LT53ZWlnaHRzW2ldID0gbWFsbG9jKCh0b3BvW2ldKzEpKnRv
cG9baSsxXSpzaXplb2YobmV0LT53ZWlnaHRzWzBdWzBdKSk7CisgICAgICAgIG5ldC0+YmVzdF93
ZWlnaHRzW2ldID0gbWFsbG9jKCh0b3BvW2ldKzEpKnRvcG9baSsxXSpzaXplb2YobmV0LT53ZWln
aHRzWzBdWzBdKSk7CisgICAgfQorICAgIGRvdWJsZSBpbk1lYW5baW5EaW1dOworICAgIGZvciAo
aj0wO2o8aW5EaW07aisrKQorICAgIHsKKyAgICAgICAgZG91YmxlIHN0ZD0wOworICAgICAgICBp
bk1lYW5bal0gPSAwOworICAgICAgICBmb3IgKGk9MDtpPG5iU2FtcGxlcztpKyspCisgICAgICAg
IHsKKyAgICAgICAgICAgIGluTWVhbltqXSArPSBpbnB1dHNbaSppbkRpbStqXTsKKyAgICAgICAg
ICAgIHN0ZCArPSBpbnB1dHNbaSppbkRpbStqXSppbnB1dHNbaSppbkRpbStqXTsKKyAgICAgICAg
fQorICAgICAgICBpbk1lYW5bal0gLz0gbmJTYW1wbGVzOworICAgICAgICBzdGQgLz0gbmJTYW1w
bGVzOworICAgICAgICBuZXQtPmluX3JhdGVbMStqXSA9IC41LyguMDAwMStzdGQpOworICAgICAg
ICBzdGQgPSBzdGQtaW5NZWFuW2pdKmluTWVhbltqXTsKKyAgICAgICAgaWYgKHN0ZDwuMDAxKQor
ICAgICAgICAgICAgc3RkID0gLjAwMTsKKyAgICAgICAgc3RkID0gMS9zcXJ0KGluRGltKnN0ZCk7
CisgICAgICAgIGZvciAoaz0wO2s8dG9wb1sxXTtrKyspCisgICAgICAgICAgICBuZXQtPndlaWdo
dHNbMF1bayoodG9wb1swXSsxKStqKzFdID0gcmFuZG4oc3RkKTsKKyAgICB9CisgICAgbmV0LT5p
bl9yYXRlWzBdID0gMTsKKyAgICBmb3IgKGo9MDtqPHRvcG9bMV07aisrKQorICAgIHsKKyAgICAg
ICAgZG91YmxlIHN1bSA9IDA7CisgICAgICAgIGZvciAoaz0wO2s8aW5EaW07aysrKQorICAgICAg
ICAgICAgc3VtICs9IGluTWVhbltrXSpuZXQtPndlaWdodHNbMF1baioodG9wb1swXSsxKStrKzFd
OworICAgICAgICBuZXQtPndlaWdodHNbMF1baioodG9wb1swXSsxKV0gPSAtc3VtOworICAgIH0K
KyAgICBmb3IgKGo9MDtqPG91dERpbTtqKyspCisgICAgeworICAgICAgICBkb3VibGUgbWVhbiA9
IDA7CisgICAgICAgIGRvdWJsZSBzdGQ7CisgICAgICAgIGZvciAoaT0wO2k8bmJTYW1wbGVzO2kr
KykKKyAgICAgICAgICAgIG1lYW4gKz0gb3V0cHV0c1tpKm91dERpbStqXTsKKyAgICAgICAgbWVh
biAvPSBuYlNhbXBsZXM7CisgICAgICAgIHN0ZCA9IDEvc3FydCh0b3BvW25iTGF5ZXJzLTJdKTsK
KyAgICAgICAgbmV0LT53ZWlnaHRzW25iTGF5ZXJzLTJdW2oqKHRvcG9bbmJMYXllcnMtMl0rMSld
ID0gbWVhbjsKKyAgICAgICAgZm9yIChrPTA7azx0b3BvW25iTGF5ZXJzLTJdO2srKykKKyAgICAg
ICAgICAgIG5ldC0+d2VpZ2h0c1tuYkxheWVycy0yXVtqKih0b3BvW25iTGF5ZXJzLTJdKzEpK2sr
MV0gPSByYW5kbihzdGQpOworICAgIH0KKyAgICByZXR1cm4gbmV0OworfQorCisjZGVmaW5lIE1B
WF9ORVVST05TIDEwMAorI2RlZmluZSBNQVhfT1VUIDEwCisKK2RvdWJsZSBjb21wdXRlX2dyYWRp
ZW50KE1MUFRyYWluICpuZXQsIGZsb2F0ICppbnB1dHMsIGZsb2F0ICpvdXRwdXRzLCBpbnQgbmJT
YW1wbGVzLCBkb3VibGUgKlcwX2dyYWQsIGRvdWJsZSAqVzFfZ3JhZCwgZG91YmxlICplcnJvcl9y
YXRlKQoreworICAgIGludCBpLGo7CisgICAgaW50IHM7CisgICAgaW50IGluRGltLCBvdXREaW0s
IGhpZGRlbkRpbTsKKyAgICBpbnQgKnRvcG87CisgICAgZG91YmxlICpXMCwgKlcxOworICAgIGRv
dWJsZSBybXM9MDsKKyAgICBpbnQgVzBfc2l6ZSwgVzFfc2l6ZTsKKyAgICBkb3VibGUgaGlkZGVu
W01BWF9ORVVST05TXTsKKyAgICBkb3VibGUgbmV0T3V0W01BWF9ORVVST05TXTsKKyAgICBkb3Vi
bGUgZXJyb3JbTUFYX05FVVJPTlNdOworCisgICAgdG9wbyA9IG5ldC0+dG9wbzsKKyAgICBpbkRp
bSA9IG5ldC0+dG9wb1swXTsKKyAgICBoaWRkZW5EaW0gPSBuZXQtPnRvcG9bMV07CisgICAgb3V0
RGltID0gbmV0LT50b3BvWzJdOworICAgIFcwX3NpemUgPSAodG9wb1swXSsxKSp0b3BvWzFdOwor
ICAgIFcxX3NpemUgPSAodG9wb1sxXSsxKSp0b3BvWzJdOworICAgIFcwID0gbmV0LT53ZWlnaHRz
WzBdOworICAgIFcxID0gbmV0LT53ZWlnaHRzWzFdOworICAgIG1lbXNldChXMF9ncmFkLCAwLCBX
MF9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBtZW1zZXQoVzFfZ3JhZCwgMCwgVzFfc2l6ZSpz
aXplb2YoZG91YmxlKSk7CisgICAgZm9yIChpPTA7aTxvdXREaW07aSsrKQorICAgICAgICBuZXRP
dXRbaV0gPSBvdXRwdXRzW2ldOworICAgIGZvciAoaT0wO2k8b3V0RGltO2krKykKKyAgICAgICAg
ZXJyb3JfcmF0ZVtpXSA9IDA7CisgICAgZm9yIChzPTA7czxuYlNhbXBsZXM7cysrKQorICAgIHsK
KyAgICAgICAgZmxvYXQgKmluLCAqb3V0OworICAgICAgICBmbG9hdCBpbnBbaW5EaW1dOworICAg
ICAgICBpbiA9IGlucHV0cytzKmluRGltOworICAgICAgICBvdXQgPSBvdXRwdXRzICsgcypvdXRE
aW07CisgICAgICAgIGZvciAoaj0wO2o8aW5EaW07aisrKQorICAgICAgICAgICBpbnBbal0gPSBp
bltqXTsKKyAgICAgICAgZm9yIChpPTA7aTxoaWRkZW5EaW07aSsrKQorICAgICAgICB7CisgICAg
ICAgICAgICBkb3VibGUgc3VtID0gVzBbaSooaW5EaW0rMSldOworICAgICAgICAgICAgZm9yIChq
PTA7ajxpbkRpbTtqKyspCisgICAgICAgICAgICAgICAgc3VtICs9IFcwW2kqKGluRGltKzEpK2or
MV0qaW5wW2pdOworICAgICAgICAgICAgaGlkZGVuW2ldID0gdGFuc2lnX2FwcHJveChzdW0pOwor
ICAgICAgICB9CisgICAgICAgIGZvciAoaT0wO2k8b3V0RGltO2krKykKKyAgICAgICAgeworICAg
ICAgICAgICAgZG91YmxlIHN1bSA9IFcxW2kqKGhpZGRlbkRpbSsxKV07CisgICAgICAgICAgICBm
b3IgKGo9MDtqPGhpZGRlbkRpbTtqKyspCisgICAgICAgICAgICAgICAgc3VtICs9IFcxW2kqKGhp
ZGRlbkRpbSsxKStqKzFdKmhpZGRlbltqXTsKKyAgICAgICAgICAgIG5ldE91dFtpXSA9IHRhbnNp
Z19hcHByb3goc3VtKTsKKyAgICAgICAgICAgIGVycm9yW2ldID0gb3V0W2ldIC0gbmV0T3V0W2ld
OworICAgICAgICAgICAgaWYgKG91dFtpXSA9PSAwKSBlcnJvcltpXSAqPSAuMDsKKyAgICAgICAg
ICAgIGVycm9yX3JhdGVbaV0gKz0gZmFicyhlcnJvcltpXSk+MTsKKyAgICAgICAgICAgIGlmIChp
PT0wKSBlcnJvcltpXSAqPSA1OworICAgICAgICAgICAgcm1zICs9IGVycm9yW2ldKmVycm9yW2ld
OworICAgICAgICAgICAgLyplcnJvcltpXSA9IGVycm9yW2ldLygxK2ZhYnMoZXJyb3JbaV0pKTsq
LworICAgICAgICB9CisgICAgICAgIC8qIEJhY2stcHJvcGFnYXRlIGVycm9yICovCisgICAgICAg
IGZvciAoaT0wO2k8b3V0RGltO2krKykKKyAgICAgICAgeworICAgICAgICAgICAgZG91YmxlIGdy
YWQgPSAxLW5ldE91dFtpXSpuZXRPdXRbaV07CisgICAgICAgICAgICBXMV9ncmFkW2kqKGhpZGRl
bkRpbSsxKV0gKz0gZXJyb3JbaV0qZ3JhZDsKKyAgICAgICAgICAgIGZvciAoaj0wO2o8aGlkZGVu
RGltO2orKykKKyAgICAgICAgICAgICAgICBXMV9ncmFkW2kqKGhpZGRlbkRpbSsxKStqKzFdICs9
IGdyYWQqZXJyb3JbaV0qaGlkZGVuW2pdOworICAgICAgICB9CisgICAgICAgIGZvciAoaT0wO2k8
aGlkZGVuRGltO2krKykKKyAgICAgICAgeworICAgICAgICAgICAgZG91YmxlIGdyYWQ7CisgICAg
ICAgICAgICBncmFkID0gMDsKKyAgICAgICAgICAgIGZvciAoaj0wO2o8b3V0RGltO2orKykKKyAg
ICAgICAgICAgICAgICBncmFkICs9IGVycm9yW2pdKlcxW2oqKGhpZGRlbkRpbSsxKStpKzFdOwor
ICAgICAgICAgICAgZ3JhZCAqPSAxLWhpZGRlbltpXSpoaWRkZW5baV07CisgICAgICAgICAgICBX
MF9ncmFkW2kqKGluRGltKzEpXSArPSBncmFkOworICAgICAgICAgICAgZm9yIChqPTA7ajxpbkRp
bTtqKyspCisgICAgICAgICAgICAgICAgVzBfZ3JhZFtpKihpbkRpbSsxKStqKzFdICs9IGdyYWQq
aW5wW2pdOworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiBybXM7Cit9CisKKyNkZWZpbmUg
TkJfVEhSRUFEUyA4CisKK3NlbV90IHNlbV9iZWdpbltOQl9USFJFQURTXTsKK3NlbV90IHNlbV9l
bmRbTkJfVEhSRUFEU107CisKK3N0cnVjdCBHcmFkaWVudEFyZyB7CisgICAgaW50IGlkOworICAg
IGludCBkb25lOworICAgIE1MUFRyYWluICpuZXQ7CisgICAgZmxvYXQgKmlucHV0czsKKyAgICBm
bG9hdCAqb3V0cHV0czsKKyAgICBpbnQgbmJTYW1wbGVzOworICAgIGRvdWJsZSAqVzBfZ3JhZDsK
KyAgICBkb3VibGUgKlcxX2dyYWQ7CisgICAgZG91YmxlIHJtczsKKyAgICBkb3VibGUgZXJyb3Jf
cmF0ZVtNQVhfT1VUXTsKK307CisKK3ZvaWQgKmdyYWRpZW50X3RocmVhZF9wcm9jZXNzKHZvaWQg
Kl9hcmcpCit7CisgICAgaW50IFcwX3NpemUsIFcxX3NpemU7CisgICAgc3RydWN0IEdyYWRpZW50
QXJnICphcmcgPSBfYXJnOworICAgIGludCAqdG9wbyA9IGFyZy0+bmV0LT50b3BvOworICAgIFcw
X3NpemUgPSAodG9wb1swXSsxKSp0b3BvWzFdOworICAgIFcxX3NpemUgPSAodG9wb1sxXSsxKSp0
b3BvWzJdOworICAgIGRvdWJsZSBXMF9ncmFkW1cwX3NpemVdOworICAgIGRvdWJsZSBXMV9ncmFk
W1cxX3NpemVdOworICAgIGFyZy0+VzBfZ3JhZCA9IFcwX2dyYWQ7CisgICAgYXJnLT5XMV9ncmFk
ID0gVzFfZ3JhZDsKKyAgICB3aGlsZSAoMSkKKyAgICB7CisgICAgICAgIHNlbV93YWl0KCZzZW1f
YmVnaW5bYXJnLT5pZF0pOworICAgICAgICBpZiAoYXJnLT5kb25lKQorICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGFyZy0+cm1zID0gY29tcHV0ZV9ncmFkaWVudChhcmctPm5ldCwgYXJnLT5p
bnB1dHMsIGFyZy0+b3V0cHV0cywgYXJnLT5uYlNhbXBsZXMsIGFyZy0+VzBfZ3JhZCwgYXJnLT5X
MV9ncmFkLCBhcmctPmVycm9yX3JhdGUpOworICAgICAgICBzZW1fcG9zdCgmc2VtX2VuZFthcmct
PmlkXSk7CisgICAgfQorICAgIGZwcmludGYoc3RkZXJyLCAiZG9uZVxuIik7CisgICAgcmV0dXJu
IE5VTEw7Cit9CisKK2Zsb2F0IG1scF90cmFpbl9iYWNrcHJvcChNTFBUcmFpbiAqbmV0LCBmbG9h
dCAqaW5wdXRzLCBmbG9hdCAqb3V0cHV0cywgaW50IG5iU2FtcGxlcywgaW50IG5iRXBvY2gsIGZs
b2F0IHJhdGUpCit7CisgICAgaW50IGksIGo7CisgICAgaW50IGU7CisgICAgZmxvYXQgYmVzdF9y
bXMgPSAxZTEwOworICAgIGludCBpbkRpbSwgb3V0RGltLCBoaWRkZW5EaW07CisgICAgaW50ICp0
b3BvOworICAgIGRvdWJsZSAqVzAsICpXMSwgKmJlc3RfVzAsICpiZXN0X1cxOworICAgIGRvdWJs
ZSAqVzBfZ3JhZCwgKlcxX2dyYWQ7CisgICAgZG91YmxlICpXMF9vbGRncmFkLCAqVzFfb2xkZ3Jh
ZDsKKyAgICBkb3VibGUgKlcwX3JhdGUsICpXMV9yYXRlOworICAgIGRvdWJsZSAqYmVzdF9XMF9y
YXRlLCAqYmVzdF9XMV9yYXRlOworICAgIGludCBXMF9zaXplLCBXMV9zaXplOworICAgIHRvcG8g
PSBuZXQtPnRvcG87CisgICAgVzBfc2l6ZSA9ICh0b3BvWzBdKzEpKnRvcG9bMV07CisgICAgVzFf
c2l6ZSA9ICh0b3BvWzFdKzEpKnRvcG9bMl07CisgICAgc3RydWN0IEdyYWRpZW50QXJnIGFyZ3Nb
TkJfVEhSRUFEU107CisgICAgcHRocmVhZF90IHRocmVhZFtOQl9USFJFQURTXTsKKyAgICBpbnQg
c2FtcGxlUGVyUGFydCA9IG5iU2FtcGxlcy9OQl9USFJFQURTOworICAgIGludCBjb3VudF93b3Jz
ZT0wOworICAgIGludCBjb3VudF9yZXRyaWVzPTA7CisKKyAgICB0b3BvID0gbmV0LT50b3BvOwor
ICAgIGluRGltID0gbmV0LT50b3BvWzBdOworICAgIGhpZGRlbkRpbSA9IG5ldC0+dG9wb1sxXTsK
KyAgICBvdXREaW0gPSBuZXQtPnRvcG9bMl07CisgICAgVzAgPSBuZXQtPndlaWdodHNbMF07Cisg
ICAgVzEgPSBuZXQtPndlaWdodHNbMV07CisgICAgYmVzdF9XMCA9IG5ldC0+YmVzdF93ZWlnaHRz
WzBdOworICAgIGJlc3RfVzEgPSBuZXQtPmJlc3Rfd2VpZ2h0c1sxXTsKKyAgICBXMF9ncmFkID0g
bWFsbG9jKFcwX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIFcxX2dyYWQgPSBtYWxsb2MoVzFf
c2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgVzBfb2xkZ3JhZCA9IG1hbGxvYyhXMF9zaXplKnNp
emVvZihkb3VibGUpKTsKKyAgICBXMV9vbGRncmFkID0gbWFsbG9jKFcxX3NpemUqc2l6ZW9mKGRv
dWJsZSkpOworICAgIFcwX3JhdGUgPSBtYWxsb2MoVzBfc2l6ZSpzaXplb2YoZG91YmxlKSk7Cisg
ICAgVzFfcmF0ZSA9IG1hbGxvYyhXMV9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBiZXN0X1cw
X3JhdGUgPSBtYWxsb2MoVzBfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgYmVzdF9XMV9yYXRl
ID0gbWFsbG9jKFcxX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIG1lbXNldChXMF9ncmFkLCAw
LCBXMF9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBtZW1zZXQoVzBfb2xkZ3JhZCwgMCwgVzBf
c2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgbWVtc2V0KFcxX2dyYWQsIDAsIFcxX3NpemUqc2l6
ZW9mKGRvdWJsZSkpOworICAgIG1lbXNldChXMV9vbGRncmFkLCAwLCBXMV9zaXplKnNpemVvZihk
b3VibGUpKTsKKworICAgIHJhdGUgLz0gbmJTYW1wbGVzOworICAgIGZvciAoaT0wO2k8aGlkZGVu
RGltO2krKykKKyAgICAgICAgZm9yIChqPTA7ajxpbkRpbSsxO2orKykKKyAgICAgICAgICAgIFcw
X3JhdGVbaSooaW5EaW0rMSkral0gPSByYXRlKm5ldC0+aW5fcmF0ZVtqXTsKKyAgICBmb3IgKGk9
MDtpPFcxX3NpemU7aSsrKQorICAgICAgICBXMV9yYXRlW2ldID0gcmF0ZTsKKworICAgIGZvciAo
aT0wO2k8TkJfVEhSRUFEUztpKyspCisgICAgeworICAgICAgICBhcmdzW2ldLm5ldCA9IG5ldDsK
KyAgICAgICAgYXJnc1tpXS5pbnB1dHMgPSBpbnB1dHMraSpzYW1wbGVQZXJQYXJ0KmluRGltOwor
ICAgICAgICBhcmdzW2ldLm91dHB1dHMgPSBvdXRwdXRzK2kqc2FtcGxlUGVyUGFydCpvdXREaW07
CisgICAgICAgIGFyZ3NbaV0ubmJTYW1wbGVzID0gc2FtcGxlUGVyUGFydDsKKyAgICAgICAgYXJn
c1tpXS5pZCA9IGk7CisgICAgICAgIGFyZ3NbaV0uZG9uZSA9IDA7CisgICAgICAgIHNlbV9pbml0
KCZzZW1fYmVnaW5baV0sIDAsIDApOworICAgICAgICBzZW1faW5pdCgmc2VtX2VuZFtpXSwgMCwg
MCk7CisgICAgICAgIHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWRbaV0sIE5VTEwsIGdyYWRpZW50X3Ro
cmVhZF9wcm9jZXNzLCAmYXJnc1tpXSk7CisgICAgfQorICAgIGZvciAoZT0wO2U8bmJFcG9jaDtl
KyspCisgICAgeworICAgICAgICBkb3VibGUgcm1zPTA7CisgICAgICAgIGRvdWJsZSBlcnJvcl9y
YXRlWzJdID0gezAsMH07CisgICAgICAgIGZvciAoaT0wO2k8TkJfVEhSRUFEUztpKyspCisgICAg
ICAgIHsKKyAgICAgICAgICAgIHNlbV9wb3N0KCZzZW1fYmVnaW5baV0pOworICAgICAgICB9Cisg
ICAgICAgIG1lbXNldChXMF9ncmFkLCAwLCBXMF9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICAg
ICAgbWVtc2V0KFcxX2dyYWQsIDAsIFcxX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgICAgICBm
b3IgKGk9MDtpPE5CX1RIUkVBRFM7aSsrKQorICAgICAgICB7CisgICAgICAgICAgICBzZW1fd2Fp
dCgmc2VtX2VuZFtpXSk7CisgICAgICAgICAgICBybXMgKz0gYXJnc1tpXS5ybXM7CisgICAgICAg
ICAgICBlcnJvcl9yYXRlWzBdICs9IGFyZ3NbaV0uZXJyb3JfcmF0ZVswXTsKKyAgICAgICAgICAg
IGVycm9yX3JhdGVbMV0gKz0gYXJnc1tpXS5lcnJvcl9yYXRlWzFdOworICAgICAgICAgICAgZm9y
IChqPTA7ajxXMF9zaXplO2orKykKKyAgICAgICAgICAgICAgICBXMF9ncmFkW2pdICs9IGFyZ3Nb
aV0uVzBfZ3JhZFtqXTsKKyAgICAgICAgICAgIGZvciAoaj0wO2o8VzFfc2l6ZTtqKyspCisgICAg
ICAgICAgICAgICAgVzFfZ3JhZFtqXSArPSBhcmdzW2ldLlcxX2dyYWRbal07CisgICAgICAgIH0K
KworICAgICAgICBmbG9hdCBtZWFuX3JhdGUgPSAwLCBtaW5fcmF0ZSA9IDFlMTA7CisgICAgICAg
IHJtcyA9IChybXMvKG91dERpbSpuYlNhbXBsZXMpKTsKKyAgICAgICAgZXJyb3JfcmF0ZVswXSA9
IChlcnJvcl9yYXRlWzBdLyhuYlNhbXBsZXMpKTsKKyAgICAgICAgZXJyb3JfcmF0ZVsxXSA9IChl
cnJvcl9yYXRlWzFdLyhuYlNhbXBsZXMpKTsKKyAgICAgICAgZnByaW50ZiAoc3RkZXJyLCAiJWYg
JWYgKCVmICVmKSAiLCBlcnJvcl9yYXRlWzBdLCBlcnJvcl9yYXRlWzFdLCBybXMsIGJlc3Rfcm1z
KTsKKyAgICAgICAgaWYgKHJtcyA8IGJlc3Rfcm1zKQorICAgICAgICB7CisgICAgICAgICAgICBi
ZXN0X3JtcyA9IHJtczsKKyAgICAgICAgICAgIGZvciAoaT0wO2k8VzBfc2l6ZTtpKyspCisgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgYmVzdF9XMFtpXSA9IFcwW2ldOworICAgICAgICAg
ICAgICAgIGJlc3RfVzBfcmF0ZVtpXSA9IFcwX3JhdGVbaV07CisgICAgICAgICAgICB9CisgICAg
ICAgICAgICBmb3IgKGk9MDtpPFcxX3NpemU7aSsrKQorICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgIGJlc3RfVzFbaV0gPSBXMVtpXTsKKyAgICAgICAgICAgICAgICBiZXN0X1cxX3JhdGVb
aV0gPSBXMV9yYXRlW2ldOworICAgICAgICAgICAgfQorICAgICAgICAgICAgY291bnRfd29yc2U9
MDsKKyAgICAgICAgICAgIGNvdW50X3JldHJpZXM9MDsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAg
ICAgICAgIGNvdW50X3dvcnNlKys7CisgICAgICAgICAgICBpZiAoY291bnRfd29yc2U+MzApCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgY291bnRfcmV0cmllcysrOworICAgICAgICAg
ICAgICAgIGNvdW50X3dvcnNlPTA7CisgICAgICAgICAgICAgICAgZm9yIChpPTA7aTxXMF9zaXpl
O2krKykKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIFcwW2ldID0gYmVz
dF9XMFtpXTsKKyAgICAgICAgICAgICAgICAgICAgYmVzdF9XMF9yYXRlW2ldICo9IC43OworICAg
ICAgICAgICAgICAgICAgICBpZiAoYmVzdF9XMF9yYXRlW2ldPDFlLTE1KSBiZXN0X1cwX3JhdGVb
aV09MWUtMTU7CisgICAgICAgICAgICAgICAgICAgIFcwX3JhdGVbaV0gPSBiZXN0X1cwX3JhdGVb
aV07CisgICAgICAgICAgICAgICAgICAgIFcwX2dyYWRbaV0gPSAwOworICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICBmb3IgKGk9MDtpPFcxX3NpemU7aSsrKQorICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgVzFbaV0gPSBiZXN0X1cxW2ldOworICAgICAgICAg
ICAgICAgICAgICBiZXN0X1cxX3JhdGVbaV0gKj0gLjg7CisgICAgICAgICAgICAgICAgICAgIGlm
IChiZXN0X1cxX3JhdGVbaV08MWUtMTUpIGJlc3RfVzFfcmF0ZVtpXT0xZS0xNTsKKyAgICAgICAg
ICAgICAgICAgICAgVzFfcmF0ZVtpXSA9IGJlc3RfVzFfcmF0ZVtpXTsKKyAgICAgICAgICAgICAg
ICAgICAgVzFfZ3JhZFtpXSA9IDA7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQor
ICAgICAgICB9CisgICAgICAgIGlmIChjb3VudF9yZXRyaWVzPjEwKQorICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGZvciAoaT0wO2k8VzBfc2l6ZTtpKyspCisgICAgICAgIHsKKyAgICAgICAg
ICAgIGlmIChXMF9vbGRncmFkW2ldKlcwX2dyYWRbaV0gPiAwKQorICAgICAgICAgICAgICAgIFcw
X3JhdGVbaV0gKj0gMS4wMTsKKyAgICAgICAgICAgIGVsc2UgaWYgKFcwX29sZGdyYWRbaV0qVzBf
Z3JhZFtpXSA8IDApCisgICAgICAgICAgICAgICAgVzBfcmF0ZVtpXSAqPSAuOTsKKyAgICAgICAg
ICAgIG1lYW5fcmF0ZSArPSBXMF9yYXRlW2ldOworICAgICAgICAgICAgaWYgKFcwX3JhdGVbaV0g
PCBtaW5fcmF0ZSkKKyAgICAgICAgICAgICAgICBtaW5fcmF0ZSA9IFcwX3JhdGVbaV07CisgICAg
ICAgICAgICBpZiAoVzBfcmF0ZVtpXSA8IDFlLTE1KQorICAgICAgICAgICAgICAgIFcwX3JhdGVb
aV0gPSAxZS0xNTsKKyAgICAgICAgICAgIC8qaWYgKFcwX3JhdGVbaV0gPiAuMDEpCisgICAgICAg
ICAgICAgICAgVzBfcmF0ZVtpXSA9IC4wMTsqLworICAgICAgICAgICAgVzBfb2xkZ3JhZFtpXSA9
IFcwX2dyYWRbaV07CisgICAgICAgICAgICBXMFtpXSArPSBXMF9ncmFkW2ldKlcwX3JhdGVbaV07
CisgICAgICAgIH0KKyAgICAgICAgZm9yIChpPTA7aTxXMV9zaXplO2krKykKKyAgICAgICAgewor
ICAgICAgICAgICAgaWYgKFcxX29sZGdyYWRbaV0qVzFfZ3JhZFtpXSA+IDApCisgICAgICAgICAg
ICAgICAgVzFfcmF0ZVtpXSAqPSAxLjAxOworICAgICAgICAgICAgZWxzZSBpZiAoVzFfb2xkZ3Jh
ZFtpXSpXMV9ncmFkW2ldIDwgMCkKKyAgICAgICAgICAgICAgICBXMV9yYXRlW2ldICo9IC45Owor
ICAgICAgICAgICAgbWVhbl9yYXRlICs9IFcxX3JhdGVbaV07CisgICAgICAgICAgICBpZiAoVzFf
cmF0ZVtpXSA8IG1pbl9yYXRlKQorICAgICAgICAgICAgICAgIG1pbl9yYXRlID0gVzFfcmF0ZVtp
XTsKKyAgICAgICAgICAgIGlmIChXMV9yYXRlW2ldIDwgMWUtMTUpCisgICAgICAgICAgICAgICAg
VzFfcmF0ZVtpXSA9IDFlLTE1OworICAgICAgICAgICAgVzFfb2xkZ3JhZFtpXSA9IFcxX2dyYWRb
aV07CisgICAgICAgICAgICBXMVtpXSArPSBXMV9ncmFkW2ldKlcxX3JhdGVbaV07CisgICAgICAg
IH0KKyAgICAgICAgbWVhbl9yYXRlIC89ICh0b3BvWzBdKzEpKnRvcG9bMV0gKyAodG9wb1sxXSsx
KSp0b3BvWzJdOworICAgICAgICBmcHJpbnRmIChzdGRlcnIsICIlZyAlZCIsIG1lYW5fcmF0ZSwg
ZSk7CisgICAgICAgIGlmIChjb3VudF9yZXRyaWVzKQorICAgICAgICAgICAgZnByaW50ZihzdGRl
cnIsICIgJWQiLCBjb3VudF9yZXRyaWVzKTsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJcbiIp
OworICAgICAgICBpZiAoc3RvcHBlZCkKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBm
b3IgKGk9MDtpPE5CX1RIUkVBRFM7aSsrKQorICAgIHsKKyAgICAgICAgYXJnc1tpXS5kb25lID0g
MTsKKyAgICAgICAgc2VtX3Bvc3QoJnNlbV9iZWdpbltpXSk7CisgICAgICAgIHB0aHJlYWRfam9p
bih0aHJlYWRbaV0sIE5VTEwpOworICAgICAgICBmcHJpbnRmIChzdGRlcnIsICJqb2luZWQgJWRc
biIsIGkpOworICAgIH0KKyAgICBmcmVlKFcwX2dyYWQpOworICAgIGZyZWUoVzBfb2xkZ3JhZCk7
CisgICAgZnJlZShXMV9ncmFkKTsKKyAgICBmcmVlKFcxX29sZGdyYWQpOworICAgIGZyZWUoVzBf
cmF0ZSk7CisgICAgZnJlZShiZXN0X1cwX3JhdGUpOworICAgIGZyZWUoVzFfcmF0ZSk7CisgICAg
ZnJlZShiZXN0X1cxX3JhdGUpOworICAgIHJldHVybiBiZXN0X3JtczsKK30KKworaW50IG1haW4o
aW50IGFyZ2MsIGNoYXIgKiphcmd2KQoreworICAgIGludCBpLCBqOworICAgIGludCBuYklucHV0
czsKKyAgICBpbnQgbmJPdXRwdXRzOworICAgIGludCBuYkhpZGRlbjsKKyAgICBpbnQgbmJTYW1w
bGVzOworICAgIGludCBuYkVwb2NoOworICAgIGludCBuYlJlYWxJbnB1dHM7CisgICAgdW5zaWdu
ZWQgaW50IHNlZWQ7CisgICAgaW50IHJldDsKKyAgICBmbG9hdCBybXM7CisgICAgZmxvYXQgKmlu
cHV0czsKKyAgICBmbG9hdCAqb3V0cHV0czsKKyAgICBpZiAoYXJnYyE9NikKKyAgICB7CisgICAg
ICAgIGZwcmludGYgKHN0ZGVyciwgInVzYWdlOiBtbHBfdHJhaW4gPGlucHV0cz4gPGhpZGRlbj4g
PG91dHB1dHM+IDxuYiBzYW1wbGVzPiA8bmIgZXBvY2g+XG4iKTsKKyAgICAgICAgcmV0dXJuIDE7
CisgICAgfQorICAgIG5iSW5wdXRzID0gYXRvaShhcmd2WzFdKTsKKyAgICBuYkhpZGRlbiA9IGF0
b2koYXJndlsyXSk7CisgICAgbmJPdXRwdXRzID0gYXRvaShhcmd2WzNdKTsKKyAgICBuYlNhbXBs
ZXMgPSBhdG9pKGFyZ3ZbNF0pOworICAgIG5iRXBvY2ggPSBhdG9pKGFyZ3ZbNV0pOworICAgIG5i
UmVhbElucHV0cyA9IG5iSW5wdXRzOworICAgIGlucHV0cyA9IG1hbGxvYyhuYklucHV0cypuYlNh
bXBsZXMqc2l6ZW9mKCppbnB1dHMpKTsKKyAgICBvdXRwdXRzID0gbWFsbG9jKG5iT3V0cHV0cypu
YlNhbXBsZXMqc2l6ZW9mKCpvdXRwdXRzKSk7CisKKyAgICBzZWVkID0gdGltZShOVUxMKTsKKyAg
ICAvKnNlZWQgPSAxNDUyMjA5MDQwOyovCisgICAgZnByaW50ZiAoc3RkZXJyLCAiU2VlZCBpcyAl
dVxuIiwgc2VlZCk7CisgICAgc3JhbmQoc2VlZCk7CisgICAgYnVpbGRfdGFuc2lnX3RhYmxlKCk7
CisgICAgc2lnbmFsKFNJR1RFUk0sIGhhbmRsZXIpOworICAgIHNpZ25hbChTSUdJTlQsIGhhbmRs
ZXIpOworICAgIHNpZ25hbChTSUdIVVAsIGhhbmRsZXIpOworICAgIGZvciAoaT0wO2k8bmJTYW1w
bGVzO2krKykKKyAgICB7CisgICAgICAgIGZvciAoaj0wO2o8bmJSZWFsSW5wdXRzO2orKykKKyAg
ICAgICAgICAgIHJldCA9IHNjYW5mKCIgJWYiLCAmaW5wdXRzW2kqbmJJbnB1dHMral0pOworICAg
ICAgICBmb3IgKGo9MDtqPG5iT3V0cHV0cztqKyspCisgICAgICAgICAgICByZXQgPSBzY2FuZigi
ICVmIiwgJm91dHB1dHNbaSpuYk91dHB1dHMral0pOworICAgICAgICBpZiAoZmVvZihzdGRpbikp
CisgICAgICAgIHsKKyAgICAgICAgICAgIG5iU2FtcGxlcyA9IGk7CisgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgfQorICAgIH0KKyAgICBpbnQgdG9wb1szXSA9IHtuYklucHV0cywgbmJIaWRk
ZW4sIG5iT3V0cHV0c307CisgICAgTUxQVHJhaW4gKm5ldDsKKworICAgIGZwcmludGYgKHN0ZGVy
ciwgIkdvdCAlZCBzYW1wbGVzXG4iLCBuYlNhbXBsZXMpOworICAgIG5ldCA9IG1scF9pbml0KHRv
cG8sIDMsIGlucHV0cywgb3V0cHV0cywgbmJTYW1wbGVzKTsKKyAgICBybXMgPSBtbHBfdHJhaW5f
YmFja3Byb3AobmV0LCBpbnB1dHMsIG91dHB1dHMsIG5iU2FtcGxlcywgbmJFcG9jaCwgMSk7Cisg
ICAgcHJpbnRmICgiI2lmZGVmIEhBVkVfQ09ORklHX0hcbiIpOworICAgIHByaW50ZiAoIiNpbmNs
dWRlIFwiY29uZmlnLmhcIlxuIik7CisgICAgcHJpbnRmICgiI2VuZGlmXG5cbiIpOworICAgIHBy
aW50ZiAoIiNpbmNsdWRlIFwibWxwLmhcIlxuXG4iKTsKKyAgICBwcmludGYgKCIvKiBSTVMgZXJy
b3Igd2FzICVmLCBzZWVkIHdhcyAldSAqL1xuXG4iLCBybXMsIHNlZWQpOworICAgIHByaW50ZiAo
InN0YXRpYyBjb25zdCBmbG9hdCB3ZWlnaHRzWyVkXSA9IHtcbiIsICh0b3BvWzBdKzEpKnRvcG9b
MV0gKyAodG9wb1sxXSsxKSp0b3BvWzJdKTsKKyAgICBwcmludGYgKCJcbi8qIGhpZGRlbiBsYXll
ciAqL1xuIik7CisgICAgZm9yIChpPTA7aTwodG9wb1swXSsxKSp0b3BvWzFdO2krKykKKyAgICB7
CisgICAgICAgIHByaW50ZiAoIiVnZiwiLCBuZXQtPndlaWdodHNbMF1baV0pOworICAgICAgICBp
ZiAoaSU1PT00KQorICAgICAgICAgICAgcHJpbnRmKCJcbiIpOworICAgICAgICBlbHNlCisgICAg
ICAgICAgICBwcmludGYoIiAiKTsKKyAgICB9CisgICAgcHJpbnRmICgiXG4vKiBvdXRwdXQgbGF5
ZXIgKi9cbiIpOworICAgIGZvciAoaT0wO2k8KHRvcG9bMV0rMSkqdG9wb1syXTtpKyspCisgICAg
eworICAgICAgICBwcmludGYgKCIlZ2YsIiwgbmV0LT53ZWlnaHRzWzFdW2ldKTsKKyAgICAgICAg
aWYgKGklNT09NCkKKyAgICAgICAgICAgIHByaW50ZigiXG4iKTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgcHJpbnRmKCIgIik7CisgICAgfQorICAgIHByaW50ZiAoIn07XG5cbiIpOworICAg
IHByaW50ZiAoInN0YXRpYyBjb25zdCBpbnQgdG9wb1szXSA9IHslZCwgJWQsICVkfTtcblxuIiwg
dG9wb1swXSwgdG9wb1sxXSwgdG9wb1syXSk7CisgICAgcHJpbnRmICgiY29uc3QgTUxQIG5ldCA9
IHtcbiIpOworICAgIHByaW50ZiAoIiAgICAzLFxuIik7CisgICAgcHJpbnRmICgiICAgIHRvcG8s
XG4iKTsKKyAgICBwcmludGYgKCIgICAgd2VpZ2h0c1xufTtcbiIpOworICAgIHJldHVybiAwOwor
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zcmMvbWxwX3RyYWluLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9tbHBfdHJhaW4uaApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li40OTQwNDE1ODVhM2Y5Y2I2NDMzNDhhOTkyMTQ1YWJjZTA2ZmU3ZWJkCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zcmMvbWxwX3RyYWluLmgKQEAgLTAsMCArMSw4NiBAQAorLyogQ29weXJpZ2h0IChjKSAy
MDA4LTIwMTEgT2N0YXNpYyBJbmMuCisgICBXcml0dGVuIGJ5IEplYW4tTWFyYyBWYWxpbiAqLwor
LyoKKyAgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgICBhcmUgbWV0OgorCisgICAtIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisKKyAgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisKKyAgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKKyAgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAgIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICAgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
Rk9VTkRBVElPTiBPUgorICAgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorKi8KKworI2lmbmRlZiBfTUxQX1RSQUlOX0hfCisjZGVmaW5lIF9NTFBfVFJBSU5fSF8KKwor
I2luY2x1ZGUgPG1hdGguaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworZG91YmxlIHRhbnNpZ190
YWJsZVs1MDFdOworc3RhdGljIGlubGluZSBkb3VibGUgdGFuc2lnX2RvdWJsZShkb3VibGUgeCkK
K3sKKyAgICByZXR1cm4gMi4vKDEuK2V4cCgtMi4qeCkpIC0gMS47Cit9CitzdGF0aWMgaW5saW5l
IHZvaWQgYnVpbGRfdGFuc2lnX3RhYmxlKHZvaWQpCit7CisgICAgaW50IGk7CisgICAgZm9yIChp
PTA7aTw1MDE7aSsrKQorICAgICAgICB0YW5zaWdfdGFibGVbaV0gPSB0YW5zaWdfZG91YmxlKC4w
NCooaS0yNTApKTsKK30KKworc3RhdGljIGlubGluZSBkb3VibGUgdGFuc2lnX2FwcHJveChkb3Vi
bGUgeCkKK3sKKyAgICBpbnQgaTsKKyAgICBkb3VibGUgeSwgZHk7CisgICAgaWYgKHg+PTEwKQor
ICAgICAgICByZXR1cm4gMTsKKyAgICBpZiAoeDw9LTEwKQorICAgICAgICByZXR1cm4gLTE7Cisg
ICAgaSA9IGxyaW50KDI1KngpOworICAgIHggLT0gLjA0Kmk7CisgICAgeSA9IHRhbnNpZ190YWJs
ZVsyNTAraV07CisgICAgZHkgPSAxLXkqeTsKKyAgICB5ID0geSArIHgqZHkqKDEgLSB5KngpOwor
ICAgIHJldHVybiB5OworfQorCitzdGF0aWMgaW5saW5lIGZsb2F0IHJhbmRuKGZsb2F0IHNkKQor
eworICAgZmxvYXQgVTEsIFUyLCBTLCB4OworICAgZG8geworICAgICAgVTEgPSAoKGZsb2F0KXJh
bmQoKSkvUkFORF9NQVg7CisgICAgICBVMiA9ICgoZmxvYXQpcmFuZCgpKS9SQU5EX01BWDsKKyAg
ICAgIFUxID0gMipVMS0xOworICAgICAgVTIgPSAyKlUyLTE7CisgICAgICBTID0gVTEqVTEgKyBV
MipVMjsKKyAgIH0gd2hpbGUgKFMgPj0gMSB8fCBTID09IDAuMGYpOworICAgeCA9IHNkKnNxcnQo
LTIgKiBsb2coUykgLyBTKSAqIFUxOworICAgcmV0dXJuIHg7Cit9CisKKwordHlwZWRlZiBzdHJ1
Y3QgeworICAgIGludCBsYXllcnM7CisgICAgaW50ICp0b3BvOworICAgIGRvdWJsZSAqKndlaWdo
dHM7CisgICAgZG91YmxlICoqYmVzdF93ZWlnaHRzOworICAgIGRvdWJsZSAqaW5fcmF0ZTsKK30g
TUxQVHJhaW47CisKKworI2VuZGlmIC8qIF9NTFBfVFJBSU5fSF8gKi8KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3Jj
L29wdXMuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc3JjL29wdXMuYwppbmRleCBmNzZmMTI1Y2ZhMzAwNDI2Nzk4ZWMyYzJhMWE4YzRh
OTM0MjA0ZDU4Li5jZGJkMTNhMTFjZDc4ZDQ3MGE5ODE1NGZjMWVhMWU4YTZjM2RjZWYzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NyYy9vcHVzLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1cy5jCkBAIC0xMDcsNyArMTA3LDcgQEAgT1BV
U19FWFBPUlQgdm9pZCBvcHVzX3BjbV9zb2Z0X2NsaXAoZmxvYXQgKl94LCBpbnQgTiwgaW50IEMs
IGZsb2F0ICpkZWNsaXBfbWVtKQogICAgICAgICAgLyogU2xpZ2h0bHkgYm9vc3QgImEiIGJ5IDJe
LTIyLiBUaGlzIGlzIGp1c3QgZW5vdWdoIHRvIGVuc3VyZSAtZmZhc3QtbWF0aAogICAgICAgICAg
ICAgZG9lcyBub3QgY2F1c2Ugb3V0cHV0IHZhbHVlcyBsYXJnZXIgdGhhbiArLy0xLCBidXQgc21h
bGwgZW5vdWdoIG5vdAogICAgICAgICAgICAgdG8gbWF0dGVyIGV2ZW4gZm9yIDI0LWJpdCBvdXRw
dXQuICAqLwotICAgICAgICAgYSArPSBhKjIuNGUtNzsKKyAgICAgICAgIGEgKz0gYSoyLjRlLTdm
OwogICAgICAgICAgaWYgKHhbaSpDXT4wKQogICAgICAgICAgICAgYSA9IC1hOwogICAgICAgICAg
LyogQXBwbHkgc29mdCBjbGlwcGluZyAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19jb21wYXJlLmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NyYy9vcHVzX2NvbXBhcmUuYwppbmRleCA2NjgyOGZkOGNhZWY2YzhmN2NjOTBmODdlMzc5ZTJj
ZmIwN2QwY2U4Li4xOTU2ZTA4ZmE1Y2VlMGU5Yjg3ZTVmMmFiNTIxN2UyNGVhYzk4ZDUzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NyYy9vcHVzX2NvbXBhcmUuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX2NvbXBhcmUuYwpAQCAtMjM4
LDE1ICsyMzgsMTEgQEAgaW50IG1haW4oaW50IF9hcmdjLGNvbnN0IGNoYXIgKipfYXJndil7CiAg
IGlmKHhsZW5ndGghPXlsZW5ndGgqZG93bnNhbXBsZSl7CiAgICAgZnByaW50ZihzdGRlcnIsIlNh
bXBsZSBjb3VudHMgZG8gbm90IG1hdGNoICglbHUhPSVsdSkuXG4iLAogICAgICAodW5zaWduZWQg
bG9uZyl4bGVuZ3RoLCh1bnNpZ25lZCBsb25nKXlsZW5ndGgqZG93bnNhbXBsZSk7Ci0gICAgZnJl
ZSh4KTsKLSAgICBmcmVlKHkpOwogICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAgIH0KICAgaWYo
eGxlbmd0aDxURVNUX1dJTl9TSVpFKXsKICAgICBmcHJpbnRmKHN0ZGVyciwiSW5zdWZmaWNpZW50
IHNhbXBsZSBkYXRhICglbHU8JWkpLlxuIiwKICAgICAgKHVuc2lnbmVkIGxvbmcpeGxlbmd0aCxU
RVNUX1dJTl9TSVpFKTsKLSAgICBmcmVlKHgpOwotICAgIGZyZWUoeSk7CiAgICAgcmV0dXJuIEVY
SVRfRkFJTFVSRTsKICAgfQogICBuZnJhbWVzPSh4bGVuZ3RoLVRFU1RfV0lOX1NJWkUrVEVTVF9X
SU5fU1RFUCkvVEVTVF9XSU5fU1RFUDsKQEAgLTM2Nyw2ICszNjMsOSBAQCBpbnQgbWFpbihpbnQg
X2FyZ2MsY29uc3QgY2hhciAqKl9hcmd2KXsKICAgICBFZio9RWY7CiAgICAgZXJyKz1FZipFZjsK
ICAgfQorICBmcmVlKHhiKTsKKyAgZnJlZShYKTsKKyAgZnJlZShZKTsKICAgZXJyPXBvdyhlcnIv
bmZyYW1lcywxLjAvMTYpOwogICBRPTEwMCooMS0wLjUqbG9nKDErZXJyKS9sb2coMS4xMykpOwog
ICBpZihRPDApewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19kZWNvZGVyLmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX2RlY29k
ZXIuYwppbmRleCA5YTA4OTZiNTUwZDM0NjUxODE0ZTRiZGUyZmQzNDc5MjFhNThjMTZmLi4xNDlh
ZTdmMjFkOGJiNDE2N2ZjYzkyNjJkMzJkNDM5M2IzMTlmNDYwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVz
X2RlY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX2RlY29kZXIuYwpAQCAtMzMsNyArMzMsNyBAQAogIyBl
cnJvciAiT1BVU19CVUlMRCBfTVVTVF8gYmUgZGVmaW5lZCB0byBidWlsZCBPcHVzLiBUaGlzIHBy
b2JhYmx5IG1lYW5zIHlvdSBuZWVkIG90aGVyIGRlZmluZXMgYXMgd2VsbCwgYXMgaW4gYSBjb25m
aWcuaC4gU2VlIHRoZSBpbmNsdWRlZCBidWlsZCBmaWxlcyBmb3IgZGV0YWlscy4iCiAjZW5kaWYK
IAotI2lmIGRlZmluZWQoX19HTlVDX18pICYmIChfX0dOVUNfXyA+PSAyKSAmJiAhZGVmaW5lZChf
X09QVElNSVpFX18pICYmICFkZWZpbmVkKE9QVVNfV0lMTF9CRV9TTE9XKSAmJiBkZWZpbmVkKE5E
RUJVRykKKyNpZiBkZWZpbmVkKF9fR05VQ19fKSAmJiAoX19HTlVDX18gPj0gMikgJiYgIWRlZmlu
ZWQoX19PUFRJTUlaRV9fKSAmJiAhZGVmaW5lZChPUFVTX1dJTExfQkVfU0xPVykKICMgcHJhZ21h
IG1lc3NhZ2UgIllvdSBhcHBlYXIgdG8gYmUgY29tcGlsaW5nIHdpdGhvdXQgb3B0aW1pemF0aW9u
LCBpZiBzbyBvcHVzIHdpbGwgYmUgdmVyeSBzbG93LiIKICNlbmRpZgogCkBAIC04OTEsNyArODkx
LDcgQEAgaW50IG9wdXNfZGVjb2Rlcl9jdGwoT3B1c0RlY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwg
Li4uKQogICAgYnJlYWs7CiAgICBjYXNlIE9QVVNfR0VUX0xBU1RfUEFDS0VUX0RVUkFUSU9OX1JF
UVVFU1Q6CiAgICB7Ci0gICAgICBvcHVzX3VpbnQzMiAqdmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNf
dWludDMyKik7CisgICAgICBvcHVzX2ludDMyICp2YWx1ZSA9IHZhX2FyZyhhcCwgb3B1c19pbnQz
MiopOwogICAgICAgaWYgKCF2YWx1ZSkKICAgICAgIHsKICAgICAgICAgIGdvdG8gYmFkX2FyZzsK
QEAgLTg5OSw2ICs4OTksMjYgQEAgaW50IG9wdXNfZGVjb2Rlcl9jdGwoT3B1c0RlY29kZXIgKnN0
LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgICAgKnZhbHVlID0gc3QtPmxhc3RfcGFja2V0X2R1cmF0
aW9uOwogICAgfQogICAgYnJlYWs7CisgICBjYXNlIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9E
SVNBQkxFRF9SRVFVRVNUOgorICAgeworICAgICAgIG9wdXNfaW50MzIgdmFsdWUgPSB2YV9hcmco
YXAsIG9wdXNfaW50MzIpOworICAgICAgIGlmKHZhbHVlPDAgfHwgdmFsdWU+MSkKKyAgICAgICB7
CisgICAgICAgICAgZ290byBiYWRfYXJnOworICAgICAgIH0KKyAgICAgICBjZWx0X2RlY29kZXJf
Y3RsKGNlbHRfZGVjLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQodmFsdWUpKTsK
KyAgIH0KKyAgIGJyZWFrOworICAgY2FzZSBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJM
RURfUkVRVUVTVDoKKyAgIHsKKyAgICAgICBvcHVzX2ludDMyICp2YWx1ZSA9IHZhX2FyZyhhcCwg
b3B1c19pbnQzMiopOworICAgICAgIGlmICghdmFsdWUpCisgICAgICAgeworICAgICAgICAgIGdv
dG8gYmFkX2FyZzsKKyAgICAgICB9CisgICAgICAgY2VsdF9kZWNvZGVyX2N0bChjZWx0X2RlYywg
T1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKHZhbHVlKSk7CisgICB9CisgICBicmVh
azsKICAgIGRlZmF1bHQ6CiAgICAgICAvKmZwcmludGYoc3RkZXJyLCAidW5rbm93biBvcHVzX2Rl
Y29kZXJfY3RsKCkgcmVxdWVzdDogJWQiLCByZXF1ZXN0KTsqLwogICAgICAgcmV0ID0gT1BVU19V
TklNUExFTUVOVEVEOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19kZW1vLmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX2RlbW8u
YwppbmRleCA2OTg4YThjYjE1ZDZlNjA4ZjU4NjUyNzcxNzhlMWMwNGM2OTYxZDRiLi41MDk4N2M5
NmYyNjVmNjA2MDc2MmY5YzA0ZTYyODdjYjliNWFhYjZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX2Rl
bW8uYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NyYy9vcHVzX2RlbW8uYwpAQCAtNTQsOSArNTQsOSBAQCB2b2lkIHByaW50X3Vz
YWdlKCBjaGFyKiBhcmd2W10gKQogICAgIGZwcmludGYoc3RkZXJyLCAiLWQgICAgICAgICAgICAg
ICAgICAgOiBvbmx5IHJ1bnMgdGhlIGRlY29kZXIgKHJlYWRzIHRoZSBiaXQtc3RyZWFtIGFzIGlu
cHV0KVxuIiApOwogICAgIGZwcmludGYoc3RkZXJyLCAiLWNiciAgICAgICAgICAgICAgICAgOiBl
bmFibGUgY29uc3RhbnQgYml0cmF0ZTsgZGVmYXVsdDogdmFyaWFibGUgYml0cmF0ZVxuIiApOwog
ICAgIGZwcmludGYoc3RkZXJyLCAiLWN2YnIgICAgICAgICAgICAgICAgOiBlbmFibGUgY29uc3Ry
YWluZWQgdmFyaWFibGUgYml0cmF0ZTsgZGVmYXVsdDogdW5jb25zdHJhaW5lZFxuIiApOwotICAg
IGZwcmludGYoc3RkZXJyLCAiLXZhcmlhYmxlLWR1cmF0aW9uICAgOiBlbmFibGUgZnJhbWVzIG9m
IHZhcmlhYmxlIGR1cmF0aW9uIChleHBlcnRzIG9ubHkpOyBkZWZhdWx0OiBkaXNhYmxlZFxuIiAp
OworICAgIGZwcmludGYoc3RkZXJyLCAiLWRlbGF5ZWQtZGVjaXNpb24gICAgOiB1c2UgbG9vay1h
aGVhZCBmb3Igc3BlZWNoL211c2ljIGRldGVjdGlvbiAoZXhwZXJ0cyBvbmx5KTsgZGVmYXVsdDog
ZGlzYWJsZWRcbiIgKTsKICAgICBmcHJpbnRmKHN0ZGVyciwgIi1iYW5kd2lkdGggPE5CfE1CfFdC
fFNXQnxGQj4gOiBhdWRpbyBiYW5kd2lkdGggKGZyb20gbmFycm93YmFuZCB0byBmdWxsYmFuZCk7
IGRlZmF1bHQ6IHNhbXBsaW5nIHJhdGVcbiIgKTsKLSAgICBmcHJpbnRmKHN0ZGVyciwgIi1mcmFt
ZXNpemUgPDIuNXw1fDEwfDIwfDQwfDYwPiA6IGZyYW1lIHNpemUgaW4gbXM7IGRlZmF1bHQ6IDIw
IFxuIiApOworICAgIGZwcmludGYoc3RkZXJyLCAiLWZyYW1lc2l6ZSA8Mi41fDV8MTB8MjB8NDB8
NjB8ODB8MTAwfDEyMD4gOiBmcmFtZSBzaXplIGluIG1zOyBkZWZhdWx0OiAyMCBcbiIgKTsKICAg
ICBmcHJpbnRmKHN0ZGVyciwgIi1tYXhfcGF5bG9hZCA8Ynl0ZXM+IDogbWF4aW11bSBwYXlsb2Fk
IHNpemUgaW4gYnl0ZXMsIGRlZmF1bHQ6IDEwMjRcbiIgKTsKICAgICBmcHJpbnRmKHN0ZGVyciwg
Ii1jb21wbGV4aXR5IDxjb21wPiAgIDogY29tcGxleGl0eSwgMCAobG93ZXN0KSAuLi4gMTAgKGhp
Z2hlc3QpOyBkZWZhdWx0OiAxMFxuIiApOwogICAgIGZwcmludGYoc3RkZXJyLCAiLWluYmFuZGZl
YyAgICAgICAgICAgOiBlbmFibGUgU0lMSyBpbmJhbmQgRkVDXG4iICk7CkBAIC0yNTMsNiArMjUz
LDcgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICBvcHVzX3VpbnQzMiBk
ZWNfZmluYWxfcmFuZ2U7CiAgICAgaW50IGVuY29kZV9vbmx5PTAsIGRlY29kZV9vbmx5PTA7CiAg
ICAgaW50IG1heF9mcmFtZV9zaXplID0gNDgwMDAqMjsKKyAgICBzaXplX3QgbnVtX3JlYWQ7CiAg
ICAgaW50IGN1cnJfcmVhZD0wOwogICAgIGludCBzd2VlcF9icHMgPSAwOwogICAgIGludCByYW5k
b21fZnJhbWVzaXplPTAsIG5ld3NpemU9MCwgZGVsYXllZF9jZWx0PTA7CkBAIC0zODIsOSArMzgz
LDE1IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICAgICAg
ZnJhbWVfc2l6ZSA9IHNhbXBsaW5nX3JhdGUvMjU7CiAgICAgICAgICAgICBlbHNlIGlmIChzdHJj
bXAoYXJndlsgYXJncyArIDEgXSwgIjYwIik9PTApCiAgICAgICAgICAgICAgICAgZnJhbWVfc2l6
ZSA9IDMqc2FtcGxpbmdfcmF0ZS81MDsKKyAgICAgICAgICAgIGVsc2UgaWYgKHN0cmNtcChhcmd2
WyBhcmdzICsgMSBdLCAiODAiKT09MCkKKyAgICAgICAgICAgICAgICBmcmFtZV9zaXplID0gNCpz
YW1wbGluZ19yYXRlLzUwOworICAgICAgICAgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbIGFyZ3Mg
KyAxIF0sICIxMDAiKT09MCkKKyAgICAgICAgICAgICAgICBmcmFtZV9zaXplID0gNSpzYW1wbGlu
Z19yYXRlLzUwOworICAgICAgICAgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbIGFyZ3MgKyAxIF0s
ICIxMjAiKT09MCkKKyAgICAgICAgICAgICAgICBmcmFtZV9zaXplID0gNipzYW1wbGluZ19yYXRl
LzUwOwogICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIs
ICJVbnN1cHBvcnRlZCBmcmFtZSBzaXplOiAlcyBtcy4gIgotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAiU3VwcG9ydGVkIGFyZSAyLjUsIDUsIDEwLCAyMCwgNDAsIDYwLlxuIiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlN1cHBvcnRlZCBhcmUgMi41LCA1LCAxMCwg
MjAsIDQwLCA2MCwgODAsIDEwMCwgMTIwLlxuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgYXJndlsgYXJncyArIDEgXSk7CiAgICAgICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJ
TFVSRTsKICAgICAgICAgICAgIH0KQEAgLTQwOCwxMCArNDE1LDYgQEAgaW50IG1haW4oaW50IGFy
Z2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgIGNoZWNrX2VuY29kZXJfb3B0aW9uKGRlY29k
ZV9vbmx5LCAiLWN2YnIiKTsKICAgICAgICAgICAgIGN2YnIgPSAxOwogICAgICAgICAgICAgYXJn
cysrOwotICAgICAgICB9IGVsc2UgaWYoIHN0cmNtcCggYXJndlsgYXJncyBdLCAiLXZhcmlhYmxl
LWR1cmF0aW9uIiApID09IDAgKSB7Ci0gICAgICAgICAgICBjaGVja19lbmNvZGVyX29wdGlvbihk
ZWNvZGVfb25seSwgIi12YXJpYWJsZS1kdXJhdGlvbiIpOwotICAgICAgICAgICAgdmFyaWFibGVf
ZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV9WQVJJQUJMRTsKLSAgICAgICAgICAgIGFyZ3MrKzsK
ICAgICAgICAgfSBlbHNlIGlmKCBzdHJjbXAoIGFyZ3ZbIGFyZ3MgXSwgIi1kZWxheWVkLWRlY2lz
aW9uIiApID09IDAgKSB7CiAgICAgICAgICAgICBjaGVja19lbmNvZGVyX29wdGlvbihkZWNvZGVf
b25seSwgIi1kZWxheWVkLWRlY2lzaW9uIik7CiAgICAgICAgICAgICBkZWxheWVkX2RlY2lzaW9u
ID0gMTsKQEAgLTU5OSwyMiArNjAyLDI1IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2
W10pCiAgICAgfQogICAgIGlmKGRlbGF5ZWRfZGVjaXNpb24pCiAgICAgewotICAgICAgIGlmICh2
YXJpYWJsZV9kdXJhdGlvbiE9T1BVU19GUkFNRVNJWkVfVkFSSUFCTEUpCi0gICAgICAgewotICAg
ICAgICAgIGlmIChmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzQwMCkKLSAgICAgICAgICAgICB2
YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzJfNV9NUzsKLSAgICAgICAgICBlbHNl
IGlmIChmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzIwMCkKLSAgICAgICAgICAgICB2YXJpYWJs
ZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzVfTVM7Ci0gICAgICAgICAgZWxzZSBpZiAoZnJh
bWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS8xMDApCi0gICAgICAgICAgICAgdmFyaWFibGVfZHVyYXRp
b24gPSBPUFVTX0ZSQU1FU0laRV8xMF9NUzsKLSAgICAgICAgICBlbHNlIGlmIChmcmFtZV9zaXpl
PT1zYW1wbGluZ19yYXRlLzUwKQotICAgICAgICAgICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BV
U19GUkFNRVNJWkVfMjBfTVM7Ci0gICAgICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09c2FtcGxp
bmdfcmF0ZS8yNSkKLSAgICAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVT
SVpFXzQwX01TOwotICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlv
biA9IE9QVVNfRlJBTUVTSVpFXzYwX01TOwotICAgICAgICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT04odmFyaWFibGVfZHVyYXRpb24pKTsKLSAg
ICAgICB9CisgICAgICAgaWYgKGZyYW1lX3NpemU9PXNhbXBsaW5nX3JhdGUvNDAwKQorICAgICAg
ICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfMl81X01TOworICAgICAgIGVs
c2UgaWYgKGZyYW1lX3NpemU9PXNhbXBsaW5nX3JhdGUvMjAwKQorICAgICAgICAgIHZhcmlhYmxl
X2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfNV9NUzsKKyAgICAgICBlbHNlIGlmIChmcmFtZV9z
aXplPT1zYW1wbGluZ19yYXRlLzEwMCkKKyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9Q
VVNfRlJBTUVTSVpFXzEwX01TOworICAgICAgIGVsc2UgaWYgKGZyYW1lX3NpemU9PXNhbXBsaW5n
X3JhdGUvNTApCisgICAgICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV8y
MF9NUzsKKyAgICAgICBlbHNlIGlmIChmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzI1KQorICAg
ICAgICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfNDBfTVM7CisgICAgICAg
ZWxzZSBpZiAoZnJhbWVfc2l6ZT09MypzYW1wbGluZ19yYXRlLzUwKQorICAgICAgICAgIHZhcmlh
YmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfNjBfTVM7CisgICAgICAgZWxzZSBpZiAoZnJh
bWVfc2l6ZT09NCpzYW1wbGluZ19yYXRlLzUwKQorICAgICAgICAgIHZhcmlhYmxlX2R1cmF0aW9u
ID0gT1BVU19GUkFNRVNJWkVfODBfTVM7CisgICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09NSpz
YW1wbGluZ19yYXRlLzUwKQorICAgICAgICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFN
RVNJWkVfMTAwX01TOworICAgICAgIGVsc2UKKyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9
IE9QVVNfRlJBTUVTSVpFXzEyMF9NUzsKKyAgICAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKHZhcmlhYmxlX2R1cmF0aW9uKSk7CiAgICAgICAg
ZnJhbWVfc2l6ZSA9IDIqNDgwMDA7CiAgICAgfQogICAgIHdoaWxlICghc3RvcCkKQEAgLTY1Miw4
ICs2NTgsOCBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICBpZiAo
ZGVjb2RlX29ubHkpCiAgICAgICAgIHsKICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgY2hbNF07
Ci0gICAgICAgICAgICBlcnIgPSBmcmVhZChjaCwgMSwgNCwgZmluKTsKLSAgICAgICAgICAgIGlm
IChmZW9mKGZpbikpCisgICAgICAgICAgICBudW1fcmVhZCA9IGZyZWFkKGNoLCAxLCA0LCBmaW4p
OworICAgICAgICAgICAgaWYgKG51bV9yZWFkIT00KQogICAgICAgICAgICAgICAgIGJyZWFrOwog
ICAgICAgICAgICAgbGVuW3RvZ2dsZV0gPSBjaGFyX3RvX2ludChjaCk7CiAgICAgICAgICAgICBp
ZiAobGVuW3RvZ2dsZV0+bWF4X3BheWxvYWRfYnl0ZXMgfHwgbGVuW3RvZ2dsZV08MCkKQEAgLTY2
MSwxNCArNjY3LDE2IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAg
ICAgICAgICAgZnByaW50ZihzdGRlcnIsICJJbnZhbGlkIHBheWxvYWQgbGVuZ3RoOiAlZFxuIixs
ZW5bdG9nZ2xlXSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICBlcnIgPSBmcmVhZChjaCwgMSwgNCwgZmluKTsKKyAgICAgICAgICAgIG51bV9yZWFk
ID0gZnJlYWQoY2gsIDEsIDQsIGZpbik7CisgICAgICAgICAgICBpZiAobnVtX3JlYWQhPTQpCisg
ICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBlbmNfZmluYWxfcmFuZ2VbdG9nZ2xl
XSA9IGNoYXJfdG9faW50KGNoKTsKLSAgICAgICAgICAgIGVyciA9IGZyZWFkKGRhdGFbdG9nZ2xl
XSwgMSwgbGVuW3RvZ2dsZV0sIGZpbik7Ci0gICAgICAgICAgICBpZiAoZXJyPGxlblt0b2dnbGVd
KQorICAgICAgICAgICAgbnVtX3JlYWQgPSBmcmVhZChkYXRhW3RvZ2dsZV0sIDEsIGxlblt0b2dn
bGVdLCBmaW4pOworICAgICAgICAgICAgaWYgKG51bV9yZWFkIT0oc2l6ZV90KWxlblt0b2dnbGVd
KQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiUmFuIG91
dCBvZiBpbnB1dCwgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhwZWN0aW5n
ICVkIGJ5dGVzIGdvdCAlZFxuIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVu
W3RvZ2dsZV0sZXJyKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuW3RvZ2ds
ZV0sKGludCludW1fcmVhZCk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9
CiAgICAgICAgIH0gZWxzZSB7CkBAIC02ODAsOCArNjg4LDggQEAgaW50IG1haW4oaW50IGFyZ2Ms
IGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgICAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfRk9SQ0VfQ0hBTk5FTFMobW9kZV9saXN0W2N1cnJfbW9kZV1bM10pKTsKICAgICAgICAg
ICAgICAgICBmcmFtZV9zaXplID0gbW9kZV9saXN0W2N1cnJfbW9kZV1bMl07CiAgICAgICAgICAg
ICB9Ci0gICAgICAgICAgICBlcnIgPSBmcmVhZChmYnl0ZXMsIHNpemVvZihzaG9ydCkqY2hhbm5l
bHMsIGZyYW1lX3NpemUtcmVtYWluaW5nLCBmaW4pOwotICAgICAgICAgICAgY3Vycl9yZWFkID0g
ZXJyOworICAgICAgICAgICAgbnVtX3JlYWQgPSBmcmVhZChmYnl0ZXMsIHNpemVvZihzaG9ydCkq
Y2hhbm5lbHMsIGZyYW1lX3NpemUtcmVtYWluaW5nLCBmaW4pOworICAgICAgICAgICAgY3Vycl9y
ZWFkID0gKGludCludW1fcmVhZDsKICAgICAgICAgICAgIHRvdF9pbiArPSBjdXJyX3JlYWQ7CiAg
ICAgICAgICAgICBmb3IoaT0wO2k8Y3Vycl9yZWFkKmNoYW5uZWxzO2krKykKICAgICAgICAgICAg
IHsKQEAgLTcyMSwxNCArNzI5LDggQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkK
ICAgICAgICAgICAgIGlmIChsZW5bdG9nZ2xlXSA8IDApCiAgICAgICAgICAgICB7CiAgICAgICAg
ICAgICAgICAgZnByaW50ZiAoc3RkZXJyLCAib3B1c19lbmNvZGUoKSByZXR1cm5lZCAlZFxuIiwg
bGVuW3RvZ2dsZV0pOwotICAgICAgICAgICAgICAgIGZyZWUoZGF0YVswXSk7Ci0gICAgICAgICAg
ICAgICAgaWYgKHVzZV9pbmJhbmRmZWMpCi0gICAgICAgICAgICAgICAgICAgIGZyZWUoZGF0YVsx
XSk7CiAgICAgICAgICAgICAgICAgZmNsb3NlKGZpbik7CiAgICAgICAgICAgICAgICAgZmNsb3Nl
KGZvdXQpOwotICAgICAgICAgICAgICAgIGZyZWUoaW4pOwotICAgICAgICAgICAgICAgIGZyZWUo
b3V0KTsKLSAgICAgICAgICAgICAgICBmcmVlKGZieXRlcyk7CiAgICAgICAgICAgICAgICAgcmV0
dXJuIEVYSVRfRkFJTFVSRTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGN1cnJfbW9kZV9j
b3VudCArPSBmcmFtZV9zaXplOwpAQCAtNzQ2LDE0ICs3NDgsNiBAQCBpbnQgbWFpbihpbnQgYXJn
YywgY2hhciAqYXJndltdKQogICAgICAgICAgICBpZiAoKGVyciA9IG9wdXNfcGFja2V0X3BhZChk
YXRhW3RvZ2dsZV0sIGxlblt0b2dnbGVdLCBuZXdfbGVuKSkgIT0gT1BVU19PSykKICAgICAgICAg
ICAgewogICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgInBhZGRpbmcgZmFpbGVkOiAlc1xu
Iiwgb3B1c19zdHJlcnJvcihlcnIpKTsKLSAgICAgICAgICAgICAgZnJlZShkYXRhWzBdKTsKLSAg
ICAgICAgICAgICAgaWYgKHVzZV9pbmJhbmRmZWMpCi0gICAgICAgICAgICAgICAgICBmcmVlKGRh
dGFbMV0pOwotICAgICAgICAgICAgICBmY2xvc2UoZmluKTsKLSAgICAgICAgICAgICAgZmNsb3Nl
KGZvdXQpOwotICAgICAgICAgICAgICBmcmVlKGluKTsKLSAgICAgICAgICAgICAgZnJlZShvdXQp
OwotICAgICAgICAgICAgICBmcmVlKGZieXRlcyk7CiAgICAgICAgICAgICAgIHJldHVybiBFWElU
X0ZBSUxVUkU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGVuW3RvZ2dsZV0gPSBuZXdfbGVu
OwpAQCAtNzY1LDQ0ICs3NTksMjAgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkK
ICAgICAgICAgICAgIGludF90b19jaGFyKGxlblt0b2dnbGVdLCBpbnRfZmllbGQpOwogICAgICAg
ICAgICAgaWYgKGZ3cml0ZShpbnRfZmllbGQsIDEsIDQsIGZvdXQpICE9IDQpIHsKICAgICAgICAg
ICAgICAgIGZwcmludGYoc3RkZXJyLCAiRXJyb3Igd3JpdGluZy5cbiIpOwotICAgICAgICAgICAg
ICAgZnJlZShkYXRhWzBdKTsKLSAgICAgICAgICAgICAgIGlmICh1c2VfaW5iYW5kZmVjKQotICAg
ICAgICAgICAgICAgICAgIGZyZWUoZGF0YVsxXSk7Ci0gICAgICAgICAgICAgICBmY2xvc2UoZmlu
KTsKLSAgICAgICAgICAgICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAgICAgICAgIGZyZWUoaW4p
OwotICAgICAgICAgICAgICAgZnJlZShvdXQpOwotICAgICAgICAgICAgICAgZnJlZShmYnl0ZXMp
OwogICAgICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIGludF90b19jaGFyKGVuY19maW5hbF9yYW5nZVt0b2dnbGVdLCBpbnRfZmllbGQp
OwogICAgICAgICAgICAgaWYgKGZ3cml0ZShpbnRfZmllbGQsIDEsIDQsIGZvdXQpICE9IDQpIHsK
ICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiRXJyb3Igd3JpdGluZy5cbiIpOwotICAg
ICAgICAgICAgICAgZnJlZShkYXRhWzBdKTsKLSAgICAgICAgICAgICAgIGlmICh1c2VfaW5iYW5k
ZmVjKQotICAgICAgICAgICAgICAgICAgIGZyZWUoZGF0YVsxXSk7Ci0gICAgICAgICAgICAgICBm
Y2xvc2UoZmluKTsKLSAgICAgICAgICAgICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAgICAgICAg
IGZyZWUoaW4pOwotICAgICAgICAgICAgICAgZnJlZShvdXQpOwotICAgICAgICAgICAgICAgZnJl
ZShmYnl0ZXMpOwogICAgICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIGlmIChmd3JpdGUoZGF0YVt0b2dnbGVdLCAxLCBsZW5bdG9nZ2xl
XSwgZm91dCkgIT0gKHVuc2lnbmVkKWxlblt0b2dnbGVdKSB7CiAgICAgICAgICAgICAgICBmcHJp
bnRmKHN0ZGVyciwgIkVycm9yIHdyaXRpbmcuXG4iKTsKLSAgICAgICAgICAgICAgIGZyZWUoZGF0
YVswXSk7Ci0gICAgICAgICAgICAgICBpZiAodXNlX2luYmFuZGZlYykKLSAgICAgICAgICAgICAg
ICAgICBmcmVlKGRhdGFbMV0pOwotICAgICAgICAgICAgICAgZmNsb3NlKGZpbik7Ci0gICAgICAg
ICAgICAgICBmY2xvc2UoZm91dCk7Ci0gICAgICAgICAgICAgICBmcmVlKGluKTsKLSAgICAgICAg
ICAgICAgIGZyZWUob3V0KTsKLSAgICAgICAgICAgICAgIGZyZWUoZmJ5dGVzKTsKICAgICAgICAg
ICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICB0
b3Rfc2FtcGxlcyArPSBuYl9lbmNvZGVkOwogICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
aW50IG91dHB1dF9zYW1wbGVzOworICAgICAgICAgICAgb3B1c19pbnQzMiBvdXRwdXRfc2FtcGxl
czsKICAgICAgICAgICAgIGxvc3QgPSBsZW5bdG9nZ2xlXT09MCB8fCAocGFja2V0X2xvc3NfcGVy
Yz4wICYmIHJhbmQoKSUxMDAgPCBwYWNrZXRfbG9zc19wZXJjKTsKICAgICAgICAgICAgIGlmIChs
b3N0KQogICAgICAgICAgICAgICAgb3B1c19kZWNvZGVyX2N0bChkZWMsIE9QVVNfR0VUX0xBU1Rf
UEFDS0VUX0RVUkFUSU9OKCZvdXRwdXRfc2FtcGxlcykpOwpAQCAtODI4LDcgKzc5OCw3IEBAIGlu
dCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICAgICAgICAgIGlmICgh
ZGVjb2RlX29ubHkgJiYgdG90X291dCArIG91dHB1dF9zYW1wbGVzID4gdG90X2luKQogICAgICAg
ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHN0b3A9MTsKLSAgICAgICAg
ICAgICAgICAgICAgICAgb3V0cHV0X3NhbXBsZXMgID0gdG90X2luLXRvdF9vdXQ7CisgICAgICAg
ICAgICAgICAgICAgICAgIG91dHB1dF9zYW1wbGVzID0gKG9wdXNfaW50MzIpKHRvdF9pbiAtIHRv
dF9vdXQpOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIGlmIChv
dXRwdXRfc2FtcGxlcz5za2lwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGludCBpOwpAQCAt
ODQxLDE0ICs4MTEsNiBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAg
ICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmd3JpdGUoZmJ5
dGVzLCBzaXplb2Yoc2hvcnQpKmNoYW5uZWxzLCBvdXRwdXRfc2FtcGxlcy1za2lwLCBmb3V0KSAh
PSAodW5zaWduZWQpKG91dHB1dF9zYW1wbGVzLXNraXApKXsKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZnByaW50ZihzdGRlcnIsICJFcnJvciB3cml0aW5nLlxuIik7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgIGZyZWUoZGF0YVswXSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGlm
ICh1c2VfaW5iYW5kZmVjKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJlZShkYXRh
WzFdKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZmNsb3NlKGZpbik7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ZnJlZShpbik7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGZyZWUob3V0KTsKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgZnJlZShmYnl0ZXMpOwogICAgICAgICAgICAgICAgICAgICAgICAg
ICByZXR1cm4gRVhJVF9GQUlMVVJFOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICAgICAgICAgICAgIHRvdF9vdXQgKz0gb3V0cHV0X3NhbXBsZXMtc2tpcDsKQEAgLTg3NSwx
NCArODM3LDggQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAg
ICAgICAgICAgICAgICAobG9uZyljb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAodW5z
aWduZWQgbG9uZyllbmNfZmluYWxfcmFuZ2VbdG9nZ2xlXnVzZV9pbmJhbmRmZWNdLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBsb25nKWRlY19maW5hbF9yYW5nZSk7Ci0gICAg
ICAgICAgICBmcmVlKGRhdGFbMF0pOwotICAgICAgICAgICAgaWYgKHVzZV9pbmJhbmRmZWMpCi0g
ICAgICAgICAgICAgICAgZnJlZShkYXRhWzFdKTsKICAgICAgICAgICAgIGZjbG9zZShmaW4pOwog
ICAgICAgICAgICAgZmNsb3NlKGZvdXQpOwotICAgICAgICAgICAgZnJlZShpbik7Ci0gICAgICAg
ICAgICBmcmVlKG91dCk7Ci0gICAgICAgICAgICBmcmVlKGZieXRlcyk7CiAgICAgICAgICAgICBy
ZXR1cm4gRVhJVF9GQUlMVVJFOwogICAgICAgICB9CiAKQEAgLTkyMiw4ICs4NzgsNiBAQCBpbnQg
bWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICAgICAgICAgMWUtMypiaXRzX2Fj
dCpzYW1wbGluZ19yYXRlLygxZS0xNStmcmFtZV9zaXplKihkb3VibGUpY291bnRfYWN0KSk7CiAg
ICAgZnByaW50ZiAoc3RkZXJyLCAiYml0cmF0ZSBzdGFuZGFyZCBkZXZpYXRpb246ICAlNy4zZiBr
Yi9zXG4iLAogICAgICAgICAgICAgMWUtMypzcXJ0KGJpdHMyL2NvdW50IC0gYml0cypiaXRzLyhj
b3VudCooZG91YmxlKWNvdW50KSkqc2FtcGxpbmdfcmF0ZS9mcmFtZV9zaXplKTsKLSAgICAvKiBD
bG9zZSBhbnkgZmlsZXMgdG8gd2hpY2ggaW50ZXJtZWRpYXRlIHJlc3VsdHMgd2VyZSBzdG9yZWQg
Ki8KLSAgICBTSUxLX0RFQlVHX1NUT1JFX0NMT1NFX0ZJTEVTCiAgICAgc2lsa19UaW1lclNhdmUo
Im9wdXNfdGltaW5nLnR4dCIpOwogICAgIG9wdXNfZW5jb2Rlcl9kZXN0cm95KGVuYyk7CiAgICAg
b3B1c19kZWNvZGVyX2Rlc3Ryb3koZGVjKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfZW5jb2Rlci5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zcmMvb3B1c19lbmNvZGVyLmMKaW5kZXggOWE1MTZhODg0YWE3Nzc4ZTg1NzdhNTU5ODE5MTUz
MGJjNjkwNjdiMi4uMjE0OWMyMGI0MTkwYTA0N2NiNDRmZjYzZTJkYWFjMWM3OTM5NTZmMSAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zcmMvb3B1c19lbmNvZGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19lbmNvZGVyLmMKQEAgLTUz
LDYgKzUzLDEwIEBACiAKICNkZWZpbmUgTUFYX0VOQ09ERVJfQlVGRkVSIDQ4MAogCisjaWZuZGVm
IERJU0FCTEVfRkxPQVRfQVBJCisjZGVmaW5lIFBTRVVET19TTlJfVEhSRVNIT0xEIDMxNi4yM2Yg
ICAgLyogMTBeKDI1LzEwKSAqLworI2VuZGlmCisKIHR5cGVkZWYgc3RydWN0IHsKICAgIG9wdXNf
dmFsMzIgWFgsIFhZLCBZWTsKICAgIG9wdXNfdmFsMTYgc21vb3RoZWRfd2lkdGg7CkBAIC04Miw2
ICs4Niw3IEBAIHN0cnVjdCBPcHVzRW5jb2RlciB7CiAgICAgaW50ICAgICAgICAgIGVuY29kZXJf
YnVmZmVyOwogICAgIGludCAgICAgICAgICBsZmU7CiAgICAgaW50ICAgICAgICAgIGFyY2g7Cisg
ICAgaW50ICAgICAgICAgIHVzZV9kdHg7ICAgICAgICAgICAgICAgICAvKiBnZW5lcmFsIERUWCBm
b3IgYm90aCBTSUxLIGFuZCBDRUxUICovCiAjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCiAgICAg
VG9uYWxpdHlBbmFseXNpc1N0YXRlIGFuYWx5c2lzOwogI2VuZGlmCkBAIC05Nyw2ICsxMDIsOCBA
QCBzdHJ1Y3QgT3B1c0VuY29kZXIgewogICAgIGludCAgICAgICAgICBwcmV2X2NoYW5uZWxzOwog
ICAgIGludCAgICAgICAgICBwcmV2X2ZyYW1lc2l6ZTsKICAgICBpbnQgICAgICAgICAgYmFuZHdp
ZHRoOworICAgIC8qIEJhbmR3aWR0aCBkZXRlcm1pbmVkIGF1dG9tYXRpY2FsbHkgZnJvbSB0aGUg
cmF0ZSAoYmVmb3JlIGFueSBvdGhlciBhZGp1c3RtZW50KSAqLworICAgIGludCAgICAgICAgICBh
dXRvX2JhbmR3aWR0aDsKICAgICBpbnQgICAgICAgICAgc2lsa19id19zd2l0Y2g7CiAgICAgLyog
U2FtcGxpbmcgcmF0ZSAoYXQgdGhlIEFQSSBsZXZlbCkgKi8KICAgICBpbnQgICAgICAgICAgZmly
c3Q7CkBAIC0xMDUsNyArMTEyLDEwIEBAIHN0cnVjdCBPcHVzRW5jb2RlciB7CiAgICAgb3B1c192
YWwxNiAgIGRlbGF5X2J1ZmZlcltNQVhfRU5DT0RFUl9CVUZGRVIqMl07CiAjaWZuZGVmIERJU0FC
TEVfRkxPQVRfQVBJCiAgICAgaW50ICAgICAgICAgIGRldGVjdGVkX2JhbmR3aWR0aDsKKyAgICBp
bnQgICAgICAgICAgbmJfbm9fYWN0aXZpdHlfZnJhbWVzOworICAgIG9wdXNfdmFsMzIgICBwZWFr
X3NpZ25hbF9lbmVyZ3k7CiAjZW5kaWYKKyAgICBpbnQgICAgICAgICAgbm9uZmluYWxfZnJhbWU7
IC8qIGN1cnJlbnQgZnJhbWUgaXMgbm90IHRoZSBmaW5hbCBpbiBhIHBhY2tldCAqLwogICAgIG9w
dXNfdWludDMyICByYW5nZUZpbmFsOwogfTsKIApAQCAtMTEzLDMyICsxMjMsMzIgQEAgc3RydWN0
IE9wdXNFbmNvZGVyIHsKICAgIG1pZGRsZSAobWVtb3JpbGVzcykgdGhyZXNob2xkLiBUaGUgc2Vj
b25kIGNvbHVtbiBpcyB0aGUgaHlzdGVyZXNpcwogICAgKGRpZmZlcmVuY2Ugd2l0aCB0aGUgbWlk
ZGxlKSAqLwogc3RhdGljIGNvbnN0IG9wdXNfaW50MzIgbW9ub192b2ljZV9iYW5kd2lkdGhfdGhy
ZXNob2xkc1s4XSA9IHsKLSAgICAgICAgMTEwMDAsIDEwMDAsIC8qIE5CPC0+TUIgKi8KLSAgICAg
ICAgMTQwMDAsIDEwMDAsIC8qIE1CPC0+V0IgKi8KLSAgICAgICAgMTcwMDAsIDEwMDAsIC8qIFdC
PC0+U1dCICovCi0gICAgICAgIDIxMDAwLCAyMDAwLCAvKiBTV0I8LT5GQiAqLworICAgICAgICAx
MDAwMCwgMTAwMCwgLyogTkI8LT5NQiAqLworICAgICAgICAxMTAwMCwgMTAwMCwgLyogTUI8LT5X
QiAqLworICAgICAgICAxMzUwMCwgMTAwMCwgLyogV0I8LT5TV0IgKi8KKyAgICAgICAgMTQwMDAs
IDIwMDAsIC8qIFNXQjwtPkZCICovCiB9Owogc3RhdGljIGNvbnN0IG9wdXNfaW50MzIgbW9ub19t
dXNpY19iYW5kd2lkdGhfdGhyZXNob2xkc1s4XSA9IHsKLSAgICAgICAgMTIwMDAsIDEwMDAsIC8q
IE5CPC0+TUIgKi8KLSAgICAgICAgMTUwMDAsIDEwMDAsIC8qIE1CPC0+V0IgKi8KLSAgICAgICAg
MTgwMDAsIDIwMDAsIC8qIFdCPC0+U1dCICovCi0gICAgICAgIDIyMDAwLCAyMDAwLCAvKiBTV0I8
LT5GQiAqLworICAgICAgICAxMDAwMCwgMTAwMCwgLyogTkI8LT5NQiAqLworICAgICAgICAxMTAw
MCwgMTAwMCwgLyogTUI8LT5XQiAqLworICAgICAgICAxMzUwMCwgMTAwMCwgLyogV0I8LT5TV0Ig
Ki8KKyAgICAgICAgMTQwMDAsIDIwMDAsIC8qIFNXQjwtPkZCICovCiB9Owogc3RhdGljIGNvbnN0
IG9wdXNfaW50MzIgc3RlcmVvX3ZvaWNlX2JhbmR3aWR0aF90aHJlc2hvbGRzWzhdID0gewotICAg
ICAgICAxMTAwMCwgMTAwMCwgLyogTkI8LT5NQiAqLwotICAgICAgICAxNDAwMCwgMTAwMCwgLyog
TUI8LT5XQiAqLwotICAgICAgICAyMTAwMCwgMjAwMCwgLyogV0I8LT5TV0IgKi8KLSAgICAgICAg
MjgwMDAsIDIwMDAsIC8qIFNXQjwtPkZCICovCisgICAgICAgIDEwMDAwLCAxMDAwLCAvKiBOQjwt
Pk1CICovCisgICAgICAgIDExMDAwLCAxMDAwLCAvKiBNQjwtPldCICovCisgICAgICAgIDEzNTAw
LCAxMDAwLCAvKiBXQjwtPlNXQiAqLworICAgICAgICAxNDAwMCwgMjAwMCwgLyogU1dCPC0+RkIg
Ki8KIH07CiBzdGF0aWMgY29uc3Qgb3B1c19pbnQzMiBzdGVyZW9fbXVzaWNfYmFuZHdpZHRoX3Ro
cmVzaG9sZHNbOF0gPSB7Ci0gICAgICAgIDEyMDAwLCAxMDAwLCAvKiBOQjwtPk1CICovCi0gICAg
ICAgIDE4MDAwLCAyMDAwLCAvKiBNQjwtPldCICovCi0gICAgICAgIDIxMDAwLCAyMDAwLCAvKiBX
QjwtPlNXQiAqLwotICAgICAgICAzMDAwMCwgMjAwMCwgLyogU1dCPC0+RkIgKi8KKyAgICAgICAg
MTAwMDAsIDEwMDAsIC8qIE5CPC0+TUIgKi8KKyAgICAgICAgMTEwMDAsIDEwMDAsIC8qIE1CPC0+
V0IgKi8KKyAgICAgICAgMTM1MDAsIDEwMDAsIC8qIFdCPC0+U1dCICovCisgICAgICAgIDE0MDAw
LCAyMDAwLCAvKiBTV0I8LT5GQiAqLwogfTsKIC8qIFRocmVzaG9sZCBiaXQtcmF0ZXMgZm9yIHN3
aXRjaGluZyBiZXR3ZWVuIG1vbm8gYW5kIHN0ZXJlbyAqLwotc3RhdGljIGNvbnN0IG9wdXNfaW50
MzIgc3RlcmVvX3ZvaWNlX3RocmVzaG9sZCA9IDMwMDAwOwotc3RhdGljIGNvbnN0IG9wdXNfaW50
MzIgc3RlcmVvX211c2ljX3RocmVzaG9sZCA9IDMwMDAwOworc3RhdGljIGNvbnN0IG9wdXNfaW50
MzIgc3RlcmVvX3ZvaWNlX3RocmVzaG9sZCA9IDI0MDAwOworc3RhdGljIGNvbnN0IG9wdXNfaW50
MzIgc3RlcmVvX211c2ljX3RocmVzaG9sZCA9IDI0MDAwOwogCiAvKiBUaHJlc2hvbGQgYml0LXJh
dGUgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIFNJTEsvaHlicmlkIGFuZCBDRUxULW9ubHkgKi8KIHN0
YXRpYyBjb25zdCBvcHVzX2ludDMyIG1vZGVfdGhyZXNob2xkc1syXVsyXSA9IHsKQEAgLTE0Nyw2
ICsxNTcsMTQgQEAgc3RhdGljIGNvbnN0IG9wdXNfaW50MzIgbW9kZV90aHJlc2hvbGRzWzJdWzJd
ID0gewogICAgICAgeyAgMzYwMDAsICAgICAgMTYwMDB9LCAvKiBzdGVyZW8gKi8KIH07CiAKK3N0
YXRpYyBjb25zdCBvcHVzX2ludDMyIGZlY190aHJlc2hvbGRzW10gPSB7CisgICAgICAgIDEyMDAw
LCAxMDAwLCAvKiBOQiAqLworICAgICAgICAxNDAwMCwgMTAwMCwgLyogTUIgKi8KKyAgICAgICAg
MTYwMDAsIDEwMDAsIC8qIFdCICovCisgICAgICAgIDIwMDAwLCAxMDAwLCAvKiBTV0IgKi8KKyAg
ICAgICAgMjIwMDAsIDEwMDAsIC8qIEZCICovCit9OworCiBpbnQgb3B1c19lbmNvZGVyX2dldF9z
aXplKGludCBjaGFubmVscykKIHsKICAgICBpbnQgc2lsa0VuY1NpemVCeXRlcywgY2VsdEVuY1Np
emVCeXRlczsKQEAgLTI0NSw3ICsyNjMsOCBAQCBpbnQgb3B1c19lbmNvZGVyX2luaXQoT3B1c0Vu
Y29kZXIqIHN0LCBvcHVzX2ludDMyIEZzLCBpbnQgY2hhbm5lbHMsIGludCBhcHBsaWNhdAogICAg
IHN0LT5iYW5kd2lkdGggPSBPUFVTX0JBTkRXSURUSF9GVUxMQkFORDsKIAogI2lmbmRlZiBESVNB
QkxFX0ZMT0FUX0FQSQotICAgIHRvbmFsaXR5X2FuYWx5c2lzX2luaXQoJnN0LT5hbmFseXNpcyk7
CisgICAgdG9uYWxpdHlfYW5hbHlzaXNfaW5pdCgmc3QtPmFuYWx5c2lzLCBzdC0+RnMpOworICAg
IHN0LT5hbmFseXNpcy5hcHBsaWNhdGlvbiA9IHN0LT5hcHBsaWNhdGlvbjsKICNlbmRpZgogCiAg
ICAgcmV0dXJuIE9QVVNfT0s7CkBAIC0zMjMsMTAgKzM0MiwxMSBAQCBzdGF0aWMgdm9pZCBzaWxr
X2JpcXVhZF9mbG9hdCgKIH0KICNlbmRpZgogCi1zdGF0aWMgdm9pZCBocF9jdXRvZmYoY29uc3Qg
b3B1c192YWwxNiAqaW4sIG9wdXNfaW50MzIgY3V0b2ZmX0h6LCBvcHVzX3ZhbDE2ICpvdXQsIG9w
dXNfdmFsMzIgKmhwX21lbSwgaW50IGxlbiwgaW50IGNoYW5uZWxzLCBvcHVzX2ludDMyIEZzKQor
c3RhdGljIHZvaWQgaHBfY3V0b2ZmKGNvbnN0IG9wdXNfdmFsMTYgKmluLCBvcHVzX2ludDMyIGN1
dG9mZl9Ieiwgb3B1c192YWwxNiAqb3V0LCBvcHVzX3ZhbDMyICpocF9tZW0sIGludCBsZW4sIGlu
dCBjaGFubmVscywgb3B1c19pbnQzMiBGcywgaW50IGFyY2gpCiB7CiAgICBvcHVzX2ludDMyIEJf
UTI4WyAzIF0sIEFfUTI4WyAyIF07CiAgICBvcHVzX2ludDMyIEZjX1ExOSwgcl9RMjgsIHJfUTIy
OworICAgKHZvaWQpYXJjaDsKIAogICAgc2lsa19hc3NlcnQoIGN1dG9mZl9IeiA8PSBzaWxrX2lu
dDMyX01BWCAvIFNJTEtfRklYX0NPTlNUKCAxLjUgKiAzLjE0MTU5IC8gMTAwMCwgMTkgKSApOwog
ICAgRmNfUTE5ID0gc2lsa19ESVYzMl8xNiggc2lsa19TTVVMQkIoIFNJTEtfRklYX0NPTlNUKCAx
LjUgKiAzLjE0MTU5IC8gMTAwMCwgMTkgKSwgY3V0b2ZmX0h6ICksIEZzLzEwMDAgKTsKQEAgLTM0
Niw5ICszNjYsMTAgQEAgc3RhdGljIHZvaWQgaHBfY3V0b2ZmKGNvbnN0IG9wdXNfdmFsMTYgKmlu
LCBvcHVzX2ludDMyIGN1dG9mZl9Ieiwgb3B1c192YWwxNiAqb3UKICAgIEFfUTI4WyAxIF0gPSBz
aWxrX1NNVUxXVyggcl9RMjIsIHJfUTIyICk7CiAKICNpZmRlZiBGSVhFRF9QT0lOVAotICAgc2ls
a19iaXF1YWRfYWx0KCBpbiwgQl9RMjgsIEFfUTI4LCBocF9tZW0sIG91dCwgbGVuLCBjaGFubmVs
cyApOwotICAgaWYoIGNoYW5uZWxzID09IDIgKSB7Ci0gICAgICAgc2lsa19iaXF1YWRfYWx0KCBp
bisxLCBCX1EyOCwgQV9RMjgsIGhwX21lbSsyLCBvdXQrMSwgbGVuLCBjaGFubmVscyApOworICAg
aWYoIGNoYW5uZWxzID09IDEgKSB7CisgICAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMSggaW4s
IEJfUTI4LCBBX1EyOCwgaHBfbWVtLCBvdXQsIGxlbiApOworICAgfSBlbHNlIHsKKyAgICAgIHNp
bGtfYmlxdWFkX2FsdF9zdHJpZGUyKCBpbiwgQl9RMjgsIEFfUTI4LCBocF9tZW0sIG91dCwgbGVu
LCBhcmNoICk7CiAgICB9CiAjZWxzZQogICAgc2lsa19iaXF1YWRfZmxvYXQoIGluLCBCX1EyOCwg
QV9RMjgsIGhwX21lbSwgb3V0LCBsZW4sIGNoYW5uZWxzICk7CkBAIC0zNzEsMTQgKzM5MiwxNCBA
QCBzdGF0aWMgdm9pZCBkY19yZWplY3QoY29uc3Qgb3B1c192YWwxNiAqaW4sIG9wdXNfaW50MzIg
Y3V0b2ZmX0h6LCBvcHVzX3ZhbDE2ICpvdQogICAgICAgZm9yIChpPTA7aTxsZW47aSsrKQogICAg
ICAgewogICAgICAgICAgb3B1c192YWwzMiB4LCB0bXAsIHk7Ci0gICAgICAgICB4ID0gU0hMMzIo
RVhURU5EMzIoaW5bY2hhbm5lbHMqaStjXSksIDE1KTsKKyAgICAgICAgIHggPSBTSEwzMihFWFRF
TkQzMihpbltjaGFubmVscyppK2NdKSwgMTQpOwogICAgICAgICAgLyogRmlyc3Qgc3RhZ2UgKi8K
ICAgICAgICAgIHRtcCA9IHgtaHBfbWVtWzIqY107CiAgICAgICAgICBocF9tZW1bMipjXSA9IGhw
X21lbVsyKmNdICsgUFNIUjMyKHggLSBocF9tZW1bMipjXSwgc2hpZnQpOwogICAgICAgICAgLyog
U2Vjb25kIHN0YWdlICovCiAgICAgICAgICB5ID0gdG1wIC0gaHBfbWVtWzIqYysxXTsKICAgICAg
ICAgIGhwX21lbVsyKmMrMV0gPSBocF9tZW1bMipjKzFdICsgUFNIUjMyKHRtcCAtIGhwX21lbVsy
KmMrMV0sIHNoaWZ0KTsKLSAgICAgICAgIG91dFtjaGFubmVscyppK2NdID0gRVhUUkFDVDE2KFNB
VFVSQVRFKFBTSFIzMih5LCAxNSksIDMyNzY3KSk7CisgICAgICAgICBvdXRbY2hhbm5lbHMqaStj
XSA9IEVYVFJBQ1QxNihTQVRVUkFURShQU0hSMzIoeSwgMTQpLCAzMjc2NykpOwogICAgICAgfQog
ICAgfQogfQpAQCAtMzg2LDI0ICs0MDcsNTcgQEAgc3RhdGljIHZvaWQgZGNfcmVqZWN0KGNvbnN0
IG9wdXNfdmFsMTYgKmluLCBvcHVzX2ludDMyIGN1dG9mZl9Ieiwgb3B1c192YWwxNiAqb3UKICNl
bHNlCiBzdGF0aWMgdm9pZCBkY19yZWplY3QoY29uc3Qgb3B1c192YWwxNiAqaW4sIG9wdXNfaW50
MzIgY3V0b2ZmX0h6LCBvcHVzX3ZhbDE2ICpvdXQsIG9wdXNfdmFsMzIgKmhwX21lbSwgaW50IGxl
biwgaW50IGNoYW5uZWxzLCBvcHVzX2ludDMyIEZzKQogewotICAgaW50IGMsIGk7Ci0gICBmbG9h
dCBjb2VmOwotCisgICBpbnQgaTsKKyAgIGZsb2F0IGNvZWYsIGNvZWYyOwogICAgY29lZiA9IDQu
MGYqY3V0b2ZmX0h6L0ZzOwotICAgZm9yIChjPTA7YzxjaGFubmVscztjKyspCisgICBjb2VmMiA9
IDEtY29lZjsKKyAgIGlmIChjaGFubmVscz09MikKICAgIHsKKyAgICAgIGZsb2F0IG0wLCBtMSwg
bTIsIG0zOworICAgICAgbTAgPSBocF9tZW1bMF07CisgICAgICBtMSA9IGhwX21lbVsxXTsKKyAg
ICAgIG0yID0gaHBfbWVtWzJdOworICAgICAgbTMgPSBocF9tZW1bM107CisgICAgICBmb3IgKGk9
MDtpPGxlbjtpKyspCisgICAgICB7CisgICAgICAgICBvcHVzX3ZhbDMyIHgwLCB4MSwgdG1wMCwg
dG1wMSwgb3V0MCwgb3V0MTsKKyAgICAgICAgIHgwID0gaW5bMippKzBdOworICAgICAgICAgeDEg
PSBpblsyKmkrMV07CisgICAgICAgICAvKiBGaXJzdCBzdGFnZSAqLworICAgICAgICAgdG1wMCA9
IHgwLW0wOworICAgICAgICAgdG1wMSA9IHgxLW0yOworICAgICAgICAgbTAgPSBjb2VmKngwICsg
VkVSWV9TTUFMTCArIGNvZWYyKm0wOworICAgICAgICAgbTIgPSBjb2VmKngxICsgVkVSWV9TTUFM
TCArIGNvZWYyKm0yOworICAgICAgICAgLyogU2Vjb25kIHN0YWdlICovCisgICAgICAgICBvdXQw
ID0gdG1wMCAtIG0xOworICAgICAgICAgb3V0MSA9IHRtcDEgLSBtMzsKKyAgICAgICAgIG0xID0g
Y29lZip0bXAwICsgVkVSWV9TTUFMTCArIGNvZWYyKm0xOworICAgICAgICAgbTMgPSBjb2VmKnRt
cDEgKyBWRVJZX1NNQUxMICsgY29lZjIqbTM7CisgICAgICAgICBvdXRbMippKzBdID0gb3V0MDsK
KyAgICAgICAgIG91dFsyKmkrMV0gPSBvdXQxOworICAgICAgfQorICAgICAgaHBfbWVtWzBdID0g
bTA7CisgICAgICBocF9tZW1bMV0gPSBtMTsKKyAgICAgIGhwX21lbVsyXSA9IG0yOworICAgICAg
aHBfbWVtWzNdID0gbTM7CisgICB9IGVsc2UgeworICAgICAgZmxvYXQgbTAsIG0xOworICAgICAg
bTAgPSBocF9tZW1bMF07CisgICAgICBtMSA9IGhwX21lbVsxXTsKICAgICAgIGZvciAoaT0wO2k8
bGVuO2krKykKICAgICAgIHsKICAgICAgICAgIG9wdXNfdmFsMzIgeCwgdG1wLCB5OwotICAgICAg
ICAgeCA9IGluW2NoYW5uZWxzKmkrY107CisgICAgICAgICB4ID0gaW5baV07CiAgICAgICAgICAv
KiBGaXJzdCBzdGFnZSAqLwotICAgICAgICAgdG1wID0geC1ocF9tZW1bMipjXTsKLSAgICAgICAg
IGhwX21lbVsyKmNdID0gaHBfbWVtWzIqY10gKyBjb2VmKih4IC0gaHBfbWVtWzIqY10pICsgVkVS
WV9TTUFMTDsKKyAgICAgICAgIHRtcCA9IHgtbTA7CisgICAgICAgICBtMCA9IGNvZWYqeCArIFZF
UllfU01BTEwgKyBjb2VmMiptMDsKICAgICAgICAgIC8qIFNlY29uZCBzdGFnZSAqLwotICAgICAg
ICAgeSA9IHRtcCAtIGhwX21lbVsyKmMrMV07Ci0gICAgICAgICBocF9tZW1bMipjKzFdID0gaHBf
bWVtWzIqYysxXSArIGNvZWYqKHRtcCAtIGhwX21lbVsyKmMrMV0pICsgVkVSWV9TTUFMTDsKLSAg
ICAgICAgIG91dFtjaGFubmVscyppK2NdID0geTsKKyAgICAgICAgIHkgPSB0bXAgLSBtMTsKKyAg
ICAgICAgIG0xID0gY29lZip0bXAgKyBWRVJZX1NNQUxMICsgY29lZjIqbTE7CisgICAgICAgICBv
dXRbaV0gPSB5OwogICAgICAgfQorICAgICAgaHBfbWVtWzBdID0gbTA7CisgICAgICBocF9tZW1b
MV0gPSBtMTsKICAgIH0KIH0KICNlbmRpZgpAQCAtNTIwLDI4OCArNTc0LDU4IEBAIHN0YXRpYyBv
cHVzX2ludDMyIHVzZXJfYml0cmF0ZV90b19iaXRyYXRlKE9wdXNFbmNvZGVyICpzdCwgaW50IGZy
YW1lX3NpemUsIGludCBtCiAgICAgcmV0dXJuIHN0LT51c2VyX2JpdHJhdGVfYnBzOwogfQogCi0j
aWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCi0vKiBEb24ndCB1c2UgbW9yZSB0aGFuIDYwIG1zIGZv
ciB0aGUgZnJhbWUgc2l6ZSBhbmFseXNpcyAqLwotI2RlZmluZSBNQVhfRFlOQU1JQ19GUkFNRVNJ
WkUgMjQKLS8qIEVzdGltYXRlcyBob3cgbXVjaCB0aGUgYml0cmF0ZSB3aWxsIGJlIGJvb3N0ZWQg
YmFzZWQgb24gdGhlIHN1Yi1mcmFtZSBlbmVyZ3kgKi8KLXN0YXRpYyBmbG9hdCB0cmFuc2llbnRf
Ym9vc3QoY29uc3QgZmxvYXQgKkUsIGNvbnN0IGZsb2F0ICpFXzEsIGludCBMTSwgaW50IG1heE0p
Ci17Ci0gICBpbnQgaTsKLSAgIGludCBNOwotICAgZmxvYXQgc3VtRT0wLCBzdW1FXzE9MDsKLSAg
IGZsb2F0IG1ldHJpYzsKLQotICAgTSA9IElNSU4obWF4TSwgKDE8PExNKSsxKTsKLSAgIGZvciAo
aT0wO2k8TTtpKyspCi0gICB7Ci0gICAgICBzdW1FICs9IEVbaV07Ci0gICAgICBzdW1FXzEgKz0g
RV8xW2ldOwotICAgfQotICAgbWV0cmljID0gc3VtRSpzdW1FXzEvKE0qTSk7Ci0gICAvKmlmIChM
TT09MykKLSAgICAgIHByaW50ZigiJWZcbiIsIG1ldHJpYyk7Ki8KLSAgIC8qcmV0dXJuIG1ldHJp
Yz4xMCA/IDEgOiAwOyovCi0gICAvKnJldHVybiBNQVgxNigwLDEtZXhwKC0uMjUqKG1ldHJpYy0y
LikpKTsqLwotICAgcmV0dXJuIE1JTjE2KDEsKGZsb2F0KXNxcnQoTUFYMTYoMCwuMDVmKihtZXRy
aWMtMikpKSk7Ci19Ci0KLS8qIFZpdGVyYmkgZGVjb2RpbmcgdHJ5aW5nIHRvIGZpbmQgdGhlIGJl
c3QgZnJhbWUgc2l6ZSBjb21iaW5hdGlvbiB1c2luZyBsb29rLWFoZWFkCi0KLSAgIFN0YXRlIG51
bWJlcmluZzoKLSAgICAwOiB1bnVzZWQKLSAgICAxOiAgMi41IG1zCi0gICAgMjogIDUgbXMgKCMx
KQotICAgIDM6ICA1IG1zICgjMikKLSAgICA0OiAxMCBtcyAoIzEpCi0gICAgNTogMTAgbXMgKCMy
KQotICAgIDY6IDEwIG1zICgjMykKLSAgICA3OiAxMCBtcyAoIzQpCi0gICAgODogMjAgbXMgKCMx
KQotICAgIDk6IDIwIG1zICgjMikKLSAgIDEwOiAyMCBtcyAoIzMpCi0gICAxMTogMjAgbXMgKCM0
KQotICAgMTI6IDIwIG1zICgjNSkKLSAgIDEzOiAyMCBtcyAoIzYpCi0gICAxNDogMjAgbXMgKCM3
KQotICAgMTU6IDIwIG1zICgjOCkKLSovCi1zdGF0aWMgaW50IHRyYW5zaWVudF92aXRlcmJpKGNv
bnN0IGZsb2F0ICpFLCBjb25zdCBmbG9hdCAqRV8xLCBpbnQgTiwgaW50IGZyYW1lX2Nvc3QsIGlu
dCByYXRlKQotewotICAgaW50IGk7Ci0gICBmbG9hdCBjb3N0W01BWF9EWU5BTUlDX0ZSQU1FU0la
RV1bMTZdOwotICAgaW50IHN0YXRlc1tNQVhfRFlOQU1JQ19GUkFNRVNJWkVdWzE2XTsKLSAgIGZs
b2F0IGJlc3RfY29zdDsKLSAgIGludCBiZXN0X3N0YXRlOwotICAgZmxvYXQgZmFjdG9yOwotICAg
LyogVGFrZSBpbnRvIGFjY291bnQgdGhhdCB3ZSBkYW1wIFZCUiBpbiB0aGUgMzIga2IvcyB0byA2
NCBrYi9zIHJhbmdlLiAqLwotICAgaWYgKHJhdGU8ODApCi0gICAgICBmYWN0b3I9MDsKLSAgIGVs
c2UgaWYgKHJhdGU+MTYwKQotICAgICAgZmFjdG9yPTE7Ci0gICBlbHNlCi0gICAgICBmYWN0b3Ig
PSAocmF0ZS04MC5mKS84MC5mOwotICAgLyogTWFrZXMgdmFyaWFibGUgZnJhbWVzaXplIGxlc3Mg
YWdncmVzc2l2ZSBhdCBsb3dlciBiaXRyYXRlcywgYnV0IEkgY2FuJ3QKLSAgICAgIGZpbmQgYW55
IHZhbGlkIHRoZW9yZXRpY2FsIGp1c3RpZmljYXRpb24gZm9yIHRoaXMgKG90aGVyIHRoYW4gaXQg
c2VlbXMKLSAgICAgIHRvIGhlbHApICovCi0gICBmb3IgKGk9MDtpPDE2O2krKykKLSAgIHsKLSAg
ICAgIC8qIEltcG9zc2libGUgc3RhdGUgKi8KLSAgICAgIHN0YXRlc1swXVtpXSA9IC0xOwotICAg
ICAgY29zdFswXVtpXSA9IDFlMTA7Ci0gICB9Ci0gICBmb3IgKGk9MDtpPDQ7aSsrKQotICAgewot
ICAgICAgY29zdFswXVsxPDxpXSA9IChmcmFtZV9jb3N0ICsgcmF0ZSooMTw8aSkpKigxK2ZhY3Rv
cip0cmFuc2llbnRfYm9vc3QoRSwgRV8xLCBpLCBOKzEpKTsKLSAgICAgIHN0YXRlc1swXVsxPDxp
XSA9IGk7Ci0gICB9Ci0gICBmb3IgKGk9MTtpPE47aSsrKQotICAgewotICAgICAgaW50IGo7Ci0K
LSAgICAgIC8qIEZvbGxvdyBjb250aW51YXRpb25zICovCi0gICAgICBmb3IgKGo9MjtqPDE2O2or
KykKLSAgICAgIHsKLSAgICAgICAgIGNvc3RbaV1bal0gPSBjb3N0W2ktMV1bai0xXTsKLSAgICAg
ICAgIHN0YXRlc1tpXVtqXSA9IGotMTsKLSAgICAgIH0KLQotICAgICAgLyogTmV3IGZyYW1lcyAq
LwotICAgICAgZm9yKGo9MDtqPDQ7aisrKQotICAgICAgewotICAgICAgICAgaW50IGs7Ci0gICAg
ICAgICBmbG9hdCBtaW5fY29zdDsKLSAgICAgICAgIGZsb2F0IGN1cnJfY29zdDsKLSAgICAgICAg
IHN0YXRlc1tpXVsxPDxqXSA9IDE7Ci0gICAgICAgICBtaW5fY29zdCA9IGNvc3RbaS0xXVsxXTsK
LSAgICAgICAgIGZvcihrPTE7azw0O2srKykKLSAgICAgICAgIHsKLSAgICAgICAgICAgIGZsb2F0
IHRtcCA9IGNvc3RbaS0xXVsoMTw8KGsrMSkpLTFdOwotICAgICAgICAgICAgaWYgKHRtcCA8IG1p
bl9jb3N0KQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgc3RhdGVzW2ldWzE8PGpdID0g
KDE8PChrKzEpKS0xOwotICAgICAgICAgICAgICAgbWluX2Nvc3QgPSB0bXA7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgICB9Ci0gICAgICAgICBjdXJyX2Nvc3QgPSAoZnJhbWVfY29zdCArIHJhdGUq
KDE8PGopKSooMStmYWN0b3IqdHJhbnNpZW50X2Jvb3N0KEUraSwgRV8xK2ksIGosIE4taSsxKSk7
Ci0gICAgICAgICBjb3N0W2ldWzE8PGpdID0gbWluX2Nvc3Q7Ci0gICAgICAgICAvKiBJZiBwYXJ0
IG9mIHRoZSBmcmFtZSBpcyBvdXRzaWRlIHRoZSBhbmFseXNpcyB3aW5kb3csIG9ubHkgY291bnQg
cGFydCBvZiB0aGUgY29zdCAqLwotICAgICAgICAgaWYgKE4taSA8ICgxPDxqKSkKLSAgICAgICAg
ICAgIGNvc3RbaV1bMTw8al0gKz0gY3Vycl9jb3N0KihmbG9hdCkoTi1pKS8oMTw8aik7Ci0gICAg
ICAgICBlbHNlCi0gICAgICAgICAgICBjb3N0W2ldWzE8PGpdICs9IGN1cnJfY29zdDsKLSAgICAg
IH0KLSAgIH0KLQotICAgYmVzdF9zdGF0ZT0xOwotICAgYmVzdF9jb3N0ID0gY29zdFtOLTFdWzFd
OwotICAgLyogRmluZCBiZXN0IGVuZCBzdGF0ZSAoZG9lc24ndCBmb3JjZSBhIGZyYW1lIHRvIGVu
ZCBhdCBOLTEpICovCi0gICBmb3IgKGk9MjtpPDE2O2krKykKLSAgIHsKLSAgICAgIGlmIChjb3N0
W04tMV1baV08YmVzdF9jb3N0KQotICAgICAgewotICAgICAgICAgYmVzdF9jb3N0ID0gY29zdFtO
LTFdW2ldOwotICAgICAgICAgYmVzdF9zdGF0ZSA9IGk7Ci0gICAgICB9Ci0gICB9Ci0KLSAgIC8q
IEZvbGxvdyB0cmFuc2l0aW9ucyBiYWNrICovCi0gICBmb3IgKGk9Ti0xO2k+PTA7aS0tKQotICAg
ewotICAgICAgLypwcmludGYoIiVkICIsIGJlc3Rfc3RhdGUpOyovCi0gICAgICBiZXN0X3N0YXRl
ID0gc3RhdGVzW2ldW2Jlc3Rfc3RhdGVdOwotICAgfQotICAgLypwcmludGYoIiVkXG4iLCBiZXN0
X3N0YXRlKTsqLwotICAgcmV0dXJuIGJlc3Rfc3RhdGU7Ci19Ci0KLXN0YXRpYyBpbnQgb3B0aW1p
emVfZnJhbWVzaXplKGNvbnN0IHZvaWQgKngsIGludCBsZW4sIGludCBDLCBvcHVzX2ludDMyIEZz
LAotICAgICAgICAgICAgICAgIGludCBiaXRyYXRlLCBvcHVzX3ZhbDE2IHRvbmFsaXR5LCBmbG9h
dCAqbWVtLCBpbnQgYnVmZmVyaW5nLAotICAgICAgICAgICAgICAgIGRvd25taXhfZnVuYyBkb3du
bWl4KQotewotICAgaW50IE47Ci0gICBpbnQgaTsKLSAgIGZsb2F0IGVbTUFYX0RZTkFNSUNfRlJB
TUVTSVpFKzRdOwotICAgZmxvYXQgZV8xW01BWF9EWU5BTUlDX0ZSQU1FU0laRSszXTsKLSAgIG9w
dXNfdmFsMzIgbWVteDsKLSAgIGludCBiZXN0TE09MDsKLSAgIGludCBzdWJmcmFtZTsKLSAgIGlu
dCBwb3M7Ci0gICBpbnQgb2Zmc2V0OwotICAgVkFSREVDTChvcHVzX3ZhbDMyLCBzdWIpOwotCi0g
ICBzdWJmcmFtZSA9IEZzLzQwMDsKLSAgIEFMTE9DKHN1Yiwgc3ViZnJhbWUsIG9wdXNfdmFsMzIp
OwotICAgZVswXT1tZW1bMF07Ci0gICBlXzFbMF09MS5mLyhFUFNJTE9OK21lbVswXSk7Ci0gICBp
ZiAoYnVmZmVyaW5nKQotICAgewotICAgICAgLyogQ29uc2lkZXIgdGhlIENFTFQgZGVsYXkgd2hl
biBub3QgaW4gcmVzdHJpY3RlZC1sb3dkZWxheSAqLwotICAgICAgLyogV2UgYXNzdW1lIHRoZSBi
dWZmZXJpbmcgaXMgYmV0d2VlbiAyLjUgYW5kIDUgbXMgKi8KLSAgICAgIG9mZnNldCA9IDIqc3Vi
ZnJhbWUgLSBidWZmZXJpbmc7Ci0gICAgICBjZWx0X2Fzc2VydChvZmZzZXQ+PTAgJiYgb2Zmc2V0
IDw9IHN1YmZyYW1lKTsKLSAgICAgIGxlbiAtPSBvZmZzZXQ7Ci0gICAgICBlWzFdPW1lbVsxXTsK
LSAgICAgIGVfMVsxXT0xLmYvKEVQU0lMT04rbWVtWzFdKTsKLSAgICAgIGVbMl09bWVtWzJdOwot
ICAgICAgZV8xWzJdPTEuZi8oRVBTSUxPTittZW1bMl0pOwotICAgICAgcG9zID0gMzsKLSAgIH0g
ZWxzZSB7Ci0gICAgICBwb3M9MTsKLSAgICAgIG9mZnNldD0wOwotICAgfQotICAgTj1JTUlOKGxl
bi9zdWJmcmFtZSwgTUFYX0RZTkFNSUNfRlJBTUVTSVpFKTsKLSAgIC8qIEp1c3Qgc2lsZW5jaW5n
IGEgd2FybmluZywgaXQncyByZWFsbHkgaW5pdGlhbGl6ZWQgbGF0ZXIgKi8KLSAgIG1lbXggPSAw
OwotICAgZm9yIChpPTA7aTxOO2krKykKLSAgIHsKLSAgICAgIGZsb2F0IHRtcDsKLSAgICAgIG9w
dXNfdmFsMzIgdG1weDsKLSAgICAgIGludCBqOwotICAgICAgdG1wPUVQU0lMT047Ci0KLSAgICAg
IGRvd25taXgoeCwgc3ViLCBzdWJmcmFtZSwgaSpzdWJmcmFtZStvZmZzZXQsIDAsIC0yLCBDKTsK
LSAgICAgIGlmIChpPT0wKQotICAgICAgICAgbWVteCA9IHN1YlswXTsKLSAgICAgIGZvciAoaj0w
O2o8c3ViZnJhbWU7aisrKQotICAgICAgewotICAgICAgICAgdG1weCA9IHN1YltqXTsKLSAgICAg
ICAgIHRtcCArPSAodG1weC1tZW14KSooZmxvYXQpKHRtcHgtbWVteCk7Ci0gICAgICAgICBtZW14
ID0gdG1weDsKLSAgICAgIH0KLSAgICAgIGVbaStwb3NdID0gdG1wOwotICAgICAgZV8xW2krcG9z
XSA9IDEuZi90bXA7Ci0gICB9Ci0gICAvKiBIYWNrIHRvIGdldCAyMCBtcyB3b3JraW5nIHdpdGgg
QVBQTElDQVRJT05fQVVESU8KLSAgICAgIFRoZSByZWFsIHByb2JsZW0gaXMgdGhhdCB0aGUgY29y
cmVzcG9uZGluZyBtZW1vcnkgbmVlZHMgdG8gdXNlIDEuNSBtcwotICAgICAgZnJvbSB0aGlzIGZy
YW1lIGFuZCAxIG1zIGZyb20gdGhlIG5leHQgZnJhbWUgKi8KLSAgIGVbaStwb3NdID0gZVtpK3Bv
cy0xXTsKLSAgIGlmIChidWZmZXJpbmcpCi0gICAgICBOPUlNSU4oTUFYX0RZTkFNSUNfRlJBTUVT
SVpFLCBOKzIpOwotICAgYmVzdExNID0gdHJhbnNpZW50X3ZpdGVyYmkoZSwgZV8xLCBOLCAoaW50
KSgoMS5mKy41Zip0b25hbGl0eSkqKDYwKkMrNDApKSwgYml0cmF0ZS80MDApOwotICAgbWVtWzBd
ID0gZVsxPDxiZXN0TE1dOwotICAgaWYgKGJ1ZmZlcmluZykKLSAgIHsKLSAgICAgIG1lbVsxXSA9
IGVbKDE8PGJlc3RMTSkrMV07Ci0gICAgICBtZW1bMl0gPSBlWygxPDxiZXN0TE0pKzJdOwotICAg
fQotICAgcmV0dXJuIGJlc3RMTTsKLX0KLQotI2VuZGlmCi0KICNpZm5kZWYgRElTQUJMRV9GTE9B
VF9BUEkKICNpZmRlZiBGSVhFRF9QT0lOVAogI2RlZmluZSBQQ00yVkFMKHgpIEZMT0FUMklOVDE2
KHgpCiAjZWxzZQogI2RlZmluZSBQQ00yVkFMKHgpIFNDQUxFSU4oeCkKICNlbmRpZgotdm9pZCBk
b3dubWl4X2Zsb2F0KGNvbnN0IHZvaWQgKl94LCBvcHVzX3ZhbDMyICpzdWIsIGludCBzdWJmcmFt
ZSwgaW50IG9mZnNldCwgaW50IGMxLCBpbnQgYzIsIGludCBDKQorCit2b2lkIGRvd25taXhfZmxv
YXQoY29uc3Qgdm9pZCAqX3gsIG9wdXNfdmFsMzIgKnksIGludCBzdWJmcmFtZSwgaW50IG9mZnNl
dCwgaW50IGMxLCBpbnQgYzIsIGludCBDKQogewogICAgY29uc3QgZmxvYXQgKng7Ci0gICBvcHVz
X3ZhbDMyIHNjYWxlOwogICAgaW50IGo7CisKICAgIHggPSAoY29uc3QgZmxvYXQgKilfeDsKICAg
IGZvciAoaj0wO2o8c3ViZnJhbWU7aisrKQotICAgICAgc3ViW2pdID0gUENNMlZBTCh4WyhqK29m
ZnNldCkqQytjMV0pOworICAgICAgeVtqXSA9IFBDTTJWQUwoeFsoaitvZmZzZXQpKkMrYzFdKTsK
ICAgIGlmIChjMj4tMSkKICAgIHsKICAgICAgIGZvciAoaj0wO2o8c3ViZnJhbWU7aisrKQotICAg
ICAgICAgc3ViW2pdICs9IFBDTTJWQUwoeFsoaitvZmZzZXQpKkMrYzJdKTsKKyAgICAgICAgIHlb
al0gKz0gUENNMlZBTCh4WyhqK29mZnNldCkqQytjMl0pOwogICAgfSBlbHNlIGlmIChjMj09LTIp
CiAgICB7CiAgICAgICBpbnQgYzsKICAgICAgIGZvciAoYz0xO2M8QztjKyspCiAgICAgICB7CiAg
ICAgICAgICBmb3IgKGo9MDtqPHN1YmZyYW1lO2orKykKLSAgICAgICAgICAgIHN1YltqXSArPSBQ
Q00yVkFMKHhbKGorb2Zmc2V0KSpDK2NdKTsKKyAgICAgICAgICAgIHlbal0gKz0gUENNMlZBTCh4
WyhqK29mZnNldCkqQytjXSk7CiAgICAgICB9CiAgICB9Ci0jaWZkZWYgRklYRURfUE9JTlQKLSAg
IHNjYWxlID0gKDE8PFNJR19TSElGVCk7Ci0jZWxzZQotICAgc2NhbGUgPSAxLmY7Ci0jZW5kaWYK
LSAgIGlmIChDPT0tMikKLSAgICAgIHNjYWxlIC89IEM7Ci0gICBlbHNlCi0gICAgICBzY2FsZSAv
PSAyOwotICAgZm9yIChqPTA7ajxzdWJmcmFtZTtqKyspCi0gICAgICBzdWJbal0gKj0gc2NhbGU7
CiB9CiAjZW5kaWYKIAotdm9pZCBkb3dubWl4X2ludChjb25zdCB2b2lkICpfeCwgb3B1c192YWwz
MiAqc3ViLCBpbnQgc3ViZnJhbWUsIGludCBvZmZzZXQsIGludCBjMSwgaW50IGMyLCBpbnQgQykK
K3ZvaWQgZG93bm1peF9pbnQoY29uc3Qgdm9pZCAqX3gsIG9wdXNfdmFsMzIgKnksIGludCBzdWJm
cmFtZSwgaW50IG9mZnNldCwgaW50IGMxLCBpbnQgYzIsIGludCBDKQogewogICAgY29uc3Qgb3B1
c19pbnQxNiAqeDsKLSAgIG9wdXNfdmFsMzIgc2NhbGU7CiAgICBpbnQgajsKKwogICAgeCA9IChj
b25zdCBvcHVzX2ludDE2ICopX3g7CiAgICBmb3IgKGo9MDtqPHN1YmZyYW1lO2orKykKLSAgICAg
IHN1YltqXSA9IHhbKGorb2Zmc2V0KSpDK2MxXTsKKyAgICAgIHlbal0gPSB4WyhqK29mZnNldCkq
QytjMV07CiAgICBpZiAoYzI+LTEpCiAgICB7CiAgICAgICBmb3IgKGo9MDtqPHN1YmZyYW1lO2or
KykKLSAgICAgICAgIHN1YltqXSArPSB4WyhqK29mZnNldCkqQytjMl07CisgICAgICAgICB5W2pd
ICs9IHhbKGorb2Zmc2V0KSpDK2MyXTsKICAgIH0gZWxzZSBpZiAoYzI9PS0yKQogICAgewogICAg
ICAgaW50IGM7CiAgICAgICBmb3IgKGM9MTtjPEM7YysrKQogICAgICAgewogICAgICAgICAgZm9y
IChqPTA7ajxzdWJmcmFtZTtqKyspCi0gICAgICAgICAgICBzdWJbal0gKz0geFsoaitvZmZzZXQp
KkMrY107CisgICAgICAgICAgICB5W2pdICs9IHhbKGorb2Zmc2V0KSpDK2NdOwogICAgICAgfQog
ICAgfQotI2lmZGVmIEZJWEVEX1BPSU5UCi0gICBzY2FsZSA9ICgxPDxTSUdfU0hJRlQpOwotI2Vs
c2UKLSAgIHNjYWxlID0gMS5mLzMyNzY4OwotI2VuZGlmCi0gICBpZiAoQz09LTIpCi0gICAgICBz
Y2FsZSAvPSBDOwotICAgZWxzZQotICAgICAgc2NhbGUgLz0gMjsKLSAgIGZvciAoaj0wO2o8c3Vi
ZnJhbWU7aisrKQotICAgICAgc3ViW2pdICo9IHNjYWxlOwogfQogCiBvcHVzX2ludDMyIGZyYW1l
X3NpemVfc2VsZWN0KG9wdXNfaW50MzIgZnJhbWVfc2l6ZSwgaW50IHZhcmlhYmxlX2R1cmF0aW9u
LCBvcHVzX2ludDMyIEZzKQpAQCAtODExLDUzICs2MzUsMjQgQEAgb3B1c19pbnQzMiBmcmFtZV9z
aXplX3NlbGVjdChvcHVzX2ludDMyIGZyYW1lX3NpemUsIGludCB2YXJpYWJsZV9kdXJhdGlvbiwg
b3B1c18KICAgICAgIHJldHVybiAtMTsKICAgIGlmICh2YXJpYWJsZV9kdXJhdGlvbiA9PSBPUFVT
X0ZSQU1FU0laRV9BUkcpCiAgICAgICBuZXdfc2l6ZSA9IGZyYW1lX3NpemU7Ci0gICBlbHNlIGlm
ICh2YXJpYWJsZV9kdXJhdGlvbiA9PSBPUFVTX0ZSQU1FU0laRV9WQVJJQUJMRSkKLSAgICAgIG5l
d19zaXplID0gRnMvNTA7Ci0gICBlbHNlIGlmICh2YXJpYWJsZV9kdXJhdGlvbiA+PSBPUFVTX0ZS
QU1FU0laRV8yXzVfTVMgJiYgdmFyaWFibGVfZHVyYXRpb24gPD0gT1BVU19GUkFNRVNJWkVfNjBf
TVMpCi0gICAgICBuZXdfc2l6ZSA9IElNSU4oMypGcy81MCwgKEZzLzQwMCk8PCh2YXJpYWJsZV9k
dXJhdGlvbi1PUFVTX0ZSQU1FU0laRV8yXzVfTVMpKTsKKyAgIGVsc2UgaWYgKHZhcmlhYmxlX2R1
cmF0aW9uID49IE9QVVNfRlJBTUVTSVpFXzJfNV9NUyAmJiB2YXJpYWJsZV9kdXJhdGlvbiA8PSBP
UFVTX0ZSQU1FU0laRV8xMjBfTVMpCisgICB7CisgICAgICBpZiAodmFyaWFibGVfZHVyYXRpb24g
PD0gT1BVU19GUkFNRVNJWkVfNDBfTVMpCisgICAgICAgICBuZXdfc2l6ZSA9IChGcy80MDApPDwo
dmFyaWFibGVfZHVyYXRpb24tT1BVU19GUkFNRVNJWkVfMl81X01TKTsKKyAgICAgIGVsc2UKKyAg
ICAgICAgIG5ld19zaXplID0gKHZhcmlhYmxlX2R1cmF0aW9uLU9QVVNfRlJBTUVTSVpFXzJfNV9N
Uy0yKSpGcy81MDsKKyAgIH0KICAgIGVsc2UKICAgICAgIHJldHVybiAtMTsKICAgIGlmIChuZXdf
c2l6ZT5mcmFtZV9zaXplKQogICAgICAgcmV0dXJuIC0xOwotICAgaWYgKDQwMCpuZXdfc2l6ZSE9
RnMgJiYgMjAwKm5ld19zaXplIT1GcyAmJiAxMDAqbmV3X3NpemUhPUZzICYmCi0gICAgICAgICAg
ICA1MCpuZXdfc2l6ZSE9RnMgJiYgMjUqbmV3X3NpemUhPUZzICYmIDUwKm5ld19zaXplIT0zKkZz
KQorICAgaWYgKDQwMCpuZXdfc2l6ZSE9RnMgICAmJiAyMDAqbmV3X3NpemUhPUZzICAgJiYgMTAw
Km5ld19zaXplIT1GcyAgICYmCisgICAgICAgIDUwKm5ld19zaXplIT1GcyAgICYmICAyNSpuZXdf
c2l6ZSE9RnMgICAmJiAgNTAqbmV3X3NpemUhPTMqRnMgJiYKKyAgICAgICAgNTAqbmV3X3NpemUh
PTQqRnMgJiYgIDUwKm5ld19zaXplIT01KkZzICYmICA1MCpuZXdfc2l6ZSE9NipGcykKICAgICAg
IHJldHVybiAtMTsKICAgIHJldHVybiBuZXdfc2l6ZTsKIH0KIAotb3B1c19pbnQzMiBjb21wdXRl
X2ZyYW1lX3NpemUoY29uc3Qgdm9pZCAqYW5hbHlzaXNfcGNtLCBpbnQgZnJhbWVfc2l6ZSwKLSAg
ICAgIGludCB2YXJpYWJsZV9kdXJhdGlvbiwgaW50IEMsIG9wdXNfaW50MzIgRnMsIGludCBiaXRy
YXRlX2JwcywKLSAgICAgIGludCBkZWxheV9jb21wZW5zYXRpb24sIGRvd25taXhfZnVuYyBkb3du
bWl4Ci0jaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCi0gICAgICAsIGZsb2F0ICpzdWJmcmFtZV9t
ZW0KLSNlbmRpZgotICAgICAgKQotewotI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQotICAgaWYg
KHZhcmlhYmxlX2R1cmF0aW9uID09IE9QVVNfRlJBTUVTSVpFX1ZBUklBQkxFICYmIGZyYW1lX3Np
emUgPj0gRnMvMjAwKQotICAgewotICAgICAgaW50IExNID0gMzsKLSAgICAgIExNID0gb3B0aW1p
emVfZnJhbWVzaXplKGFuYWx5c2lzX3BjbSwgZnJhbWVfc2l6ZSwgQywgRnMsIGJpdHJhdGVfYnBz
LAotICAgICAgICAgICAgMCwgc3ViZnJhbWVfbWVtLCBkZWxheV9jb21wZW5zYXRpb24sIGRvd25t
aXgpOwotICAgICAgd2hpbGUgKChGcy80MDA8PExNKT5mcmFtZV9zaXplKQotICAgICAgICAgTE0t
LTsKLSAgICAgIGZyYW1lX3NpemUgPSAoRnMvNDAwPDxMTSk7Ci0gICB9IGVsc2UKLSNlbHNlCi0g
ICAodm9pZClhbmFseXNpc19wY207Ci0gICAodm9pZClDOwotICAgKHZvaWQpYml0cmF0ZV9icHM7
Ci0gICAodm9pZClkZWxheV9jb21wZW5zYXRpb247Ci0gICAodm9pZClkb3dubWl4OwotI2VuZGlm
Ci0gICB7Ci0gICAgICBmcmFtZV9zaXplID0gZnJhbWVfc2l6ZV9zZWxlY3QoZnJhbWVfc2l6ZSwg
dmFyaWFibGVfZHVyYXRpb24sIEZzKTsKLSAgIH0KLSAgIGlmIChmcmFtZV9zaXplPDApCi0gICAg
ICByZXR1cm4gLTE7Ci0gICByZXR1cm4gZnJhbWVfc2l6ZTsKLX0KLQogb3B1c192YWwxNiBjb21w
dXRlX3N0ZXJlb193aWR0aChjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV9zaXplLCBv
cHVzX2ludDMyIEZzLCBTdGVyZW9XaWR0aFN0YXRlICptZW0pCiB7CiAgICBvcHVzX3ZhbDMyIHh4
LCB4eSwgeXk7CkBAIC05MzQsNiArNzI5LDM0NyBAQCBvcHVzX3ZhbDE2IGNvbXB1dGVfc3RlcmVv
X3dpZHRoKGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lX3NpemUsIG9wdXNfaW50Mwog
ICAgcmV0dXJuIEVYVFJBQ1QxNihNSU4zMihRMTVPTkUsIE1VTFQxNl8xNigyMCwgbWVtLT5tYXhf
Zm9sbG93ZXIpKSk7CiB9CiAKK3N0YXRpYyBpbnQgZGVjaWRlX2ZlYyhpbnQgdXNlSW5CYW5kRkVD
LCBpbnQgUGFja2V0TG9zc19wZXJjLCBpbnQgbGFzdF9mZWMsIGludCBtb2RlLCBpbnQgKmJhbmR3
aWR0aCwgb3B1c19pbnQzMiByYXRlKQoreworICAgaW50IG9yaWdfYmFuZHdpZHRoOworICAgaWYg
KCF1c2VJbkJhbmRGRUMgfHwgUGFja2V0TG9zc19wZXJjID09IDAgfHwgbW9kZSA9PSBNT0RFX0NF
TFRfT05MWSkKKyAgICAgIHJldHVybiAwOworICAgb3JpZ19iYW5kd2lkdGggPSAqYmFuZHdpZHRo
OworICAgZm9yICg7OykKKyAgIHsKKyAgICAgIG9wdXNfaW50MzIgaHlzdGVyZXNpczsKKyAgICAg
IG9wdXNfaW50MzIgTEJSUl9yYXRlX3RocmVzX2JwczsKKyAgICAgIC8qIENvbXB1dGUgdGhyZXNo
b2xkIGZvciB1c2luZyBGRUMgYXQgdGhlIGN1cnJlbnQgYmFuZHdpZHRoIHNldHRpbmcgKi8KKyAg
ICAgIExCUlJfcmF0ZV90aHJlc19icHMgPSBmZWNfdGhyZXNob2xkc1syKigqYmFuZHdpZHRoIC0g
T1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORCldOworICAgICAgaHlzdGVyZXNpcyA9IGZlY190aHJl
c2hvbGRzWzIqKCpiYW5kd2lkdGggLSBPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSArIDFdOwor
ICAgICAgaWYgKGxhc3RfZmVjID09IDEpIExCUlJfcmF0ZV90aHJlc19icHMgLT0gaHlzdGVyZXNp
czsKKyAgICAgIGlmIChsYXN0X2ZlYyA9PSAwKSBMQlJSX3JhdGVfdGhyZXNfYnBzICs9IGh5c3Rl
cmVzaXM7CisgICAgICBMQlJSX3JhdGVfdGhyZXNfYnBzID0gc2lsa19TTVVMV0IoIHNpbGtfTVVM
KCBMQlJSX3JhdGVfdGhyZXNfYnBzLAorICAgICAgICAgICAgMTI1IC0gc2lsa19taW4oIFBhY2tl
dExvc3NfcGVyYywgMjUgKSApLCBTSUxLX0ZJWF9DT05TVCggMC4wMSwgMTYgKSApOworICAgICAg
LyogSWYgbG9zcyA8PSA1JSwgd2UgbG9vayBhdCB3aGV0aGVyIHdlIGhhdmUgZW5vdWdoIHJhdGUg
dG8gZW5hYmxlIEZFQy4KKyAgICAgICAgIElmIGxvc3MgPiA1JSwgd2UgZGVjcmVhc2UgdGhlIGJh
bmR3aWR0aCB1bnRpbCB3ZSBjYW4gZW5hYmxlIEZFQy4gKi8KKyAgICAgIGlmIChyYXRlID4gTEJS
Ul9yYXRlX3RocmVzX2JwcykKKyAgICAgICAgIHJldHVybiAxOworICAgICAgZWxzZSBpZiAoUGFj
a2V0TG9zc19wZXJjIDw9IDUpCisgICAgICAgICByZXR1cm4gMDsKKyAgICAgIGVsc2UgaWYgKCpi
YW5kd2lkdGggPiBPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKQorICAgICAgICAgKCpiYW5kd2lk
dGgpLS07CisgICAgICBlbHNlCisgICAgICAgICBicmVhazsKKyAgIH0KKyAgIC8qIENvdWxkbid0
IGZpbmQgYW55IGJhbmR3aWR0aCB0byBlbmFibGUgRkVDLCBrZWVwIG9yaWdpbmFsIGJhbmR3aWR0
aC4gKi8KKyAgICpiYW5kd2lkdGggPSBvcmlnX2JhbmR3aWR0aDsKKyAgIHJldHVybiAwOworfQor
CitzdGF0aWMgaW50IGNvbXB1dGVfc2lsa19yYXRlX2Zvcl9oeWJyaWQoaW50IHJhdGUsIGludCBi
YW5kd2lkdGgsIGludCBmcmFtZTIwbXMsIGludCB2YnIsIGludCBmZWMpIHsKKyAgIGludCBlbnRy
eTsKKyAgIGludCBpOworICAgaW50IE47CisgICBpbnQgc2lsa19yYXRlOworICAgc3RhdGljIGlu
dCByYXRlX3RhYmxlW11bNV0gPSB7CisgIC8qICB8dG90YWx8IHwtLS0tLS0tLSBTSUxLLS0tLS0t
LS0tLS0tfAorICAgICAgICAgICAgICB8LS0gTm8gRkVDIC18IHwtLS0gRkVDIC0tLXwKKyAgICAg
ICAgICAgICAgIDEwbXMgICAyMG1zICAgMTBtcyAgIDIwbXMgKi8KKyAgICAgIHsgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDB9LAorICAgICAgezEyMDAwLCAxMDAwMCwgMTAwMDAsIDEx
MDAwLCAxMTAwMH0sCisgICAgICB7MTYwMDAsIDEzNTAwLCAxMzUwMCwgMTUwMDAsIDE1MDAwfSwK
KyAgICAgIHsyMDAwMCwgMTYwMDAsIDE2MDAwLCAxODAwMCwgMTgwMDB9LAorICAgICAgezI0MDAw
LCAxODAwMCwgMTgwMDAsIDIxMDAwLCAyMTAwMH0sCisgICAgICB7MzIwMDAsIDIyMDAwLCAyMjAw
MCwgMjgwMDAsIDI4MDAwfSwKKyAgICAgIHs2NDAwMCwgMzgwMDAsIDM4MDAwLCA1MDAwMCwgNTAw
MDB9CisgICB9OworICAgZW50cnkgPSAxICsgZnJhbWUyMG1zICsgMipmZWM7CisgICBOID0gc2l6
ZW9mKHJhdGVfdGFibGUpL3NpemVvZihyYXRlX3RhYmxlWzBdKTsKKyAgIGZvciAoaT0xO2k8Tjtp
KyspCisgICB7CisgICAgICBpZiAocmF0ZV90YWJsZVtpXVswXSA+IHJhdGUpIGJyZWFrOworICAg
fQorICAgaWYgKGkgPT0gTikKKyAgIHsKKyAgICAgIHNpbGtfcmF0ZSA9IHJhdGVfdGFibGVbaS0x
XVtlbnRyeV07CisgICAgICAvKiBGb3Igbm93LCBqdXN0IGdpdmUgNTAlIG9mIHRoZSBleHRyYSBi
aXRzIHRvIFNJTEsuICovCisgICAgICBzaWxrX3JhdGUgKz0gKHJhdGUtcmF0ZV90YWJsZVtpLTFd
WzBdKS8yOworICAgfSBlbHNlIHsKKyAgICAgIG9wdXNfaW50MzIgbG8sIGhpLCB4MCwgeDE7Cisg
ICAgICBsbyA9IHJhdGVfdGFibGVbaS0xXVtlbnRyeV07CisgICAgICBoaSA9IHJhdGVfdGFibGVb
aV1bZW50cnldOworICAgICAgeDAgPSByYXRlX3RhYmxlW2ktMV1bMF07CisgICAgICB4MSA9IHJh
dGVfdGFibGVbaV1bMF07CisgICAgICBzaWxrX3JhdGUgPSAobG8qKHgxLXJhdGUpICsgaGkqKHJh
dGUteDApKS8oeDEteDApOworICAgfQorICAgaWYgKCF2YnIpCisgICB7CisgICAgICAvKiBUaW55
IGJvb3N0IHRvIFNJTEsgZm9yIENCUi4gV2Ugc2hvdWxkIHByb2JhYmx5IHR1bmUgdGhpcyBiZXR0
ZXIuICovCisgICAgICBzaWxrX3JhdGUgKz0gMTAwOworICAgfQorICAgaWYgKGJhbmR3aWR0aD09
T1BVU19CQU5EV0lEVEhfU1VQRVJXSURFQkFORCkKKyAgICAgIHNpbGtfcmF0ZSArPSAzMDA7Cisg
ICByZXR1cm4gc2lsa19yYXRlOworfQorCisvKiBSZXR1cm5zIHRoZSBlcXVpdmFsZW50IGJpdHJh
dGUgY29ycmVzcG9uZGluZyB0byAyMCBtcyBmcmFtZXMsCisgICBjb21wbGV4aXR5IDEwIFZCUiBv
cGVyYXRpb24uICovCitzdGF0aWMgb3B1c19pbnQzMiBjb21wdXRlX2VxdWl2X3JhdGUob3B1c19p
bnQzMiBiaXRyYXRlLCBpbnQgY2hhbm5lbHMsCisgICAgICBpbnQgZnJhbWVfcmF0ZSwgaW50IHZi
ciwgaW50IG1vZGUsIGludCBjb21wbGV4aXR5LCBpbnQgbG9zcykKK3sKKyAgIG9wdXNfaW50MzIg
ZXF1aXY7CisgICBlcXVpdiA9IGJpdHJhdGU7CisgICAvKiBUYWtlIGludG8gYWNjb3VudCBvdmVy
aGVhZCBmcm9tIHNtYWxsZXIgZnJhbWVzLiAqLworICAgZXF1aXYgLT0gKDQwKmNoYW5uZWxzKzIw
KSooZnJhbWVfcmF0ZSAtIDUwKTsKKyAgIC8qIENCUiBpcyBhYm91dCBhIDglIHBlbmFsdHkgZm9y
IGJvdGggU0lMSyBhbmQgQ0VMVC4gKi8KKyAgIGlmICghdmJyKQorICAgICAgZXF1aXYgLT0gZXF1
aXYvMTI7CisgICAvKiBDb21wbGV4aXR5IG1ha2VzIGFib3V0IDEwJSBkaWZmZXJlbmNlIChmcm9t
IDAgdG8gMTApIGluIGdlbmVyYWwuICovCisgICBlcXVpdiA9IGVxdWl2ICogKDkwK2NvbXBsZXhp
dHkpLzEwMDsKKyAgIGlmIChtb2RlID09IE1PREVfU0lMS19PTkxZIHx8IG1vZGUgPT0gTU9ERV9I
WUJSSUQpCisgICB7CisgICAgICAvKiBTSUxLIGNvbXBsZXhpdHkgMC0xIHVzZXMgdGhlIG5vbi1k
ZWxheWVkLWRlY2lzaW9uIE5TUSwgd2hpY2gKKyAgICAgICAgIGNvc3RzIGFib3V0IDIwJS4gKi8K
KyAgICAgIGlmIChjb21wbGV4aXR5PDIpCisgICAgICAgICBlcXVpdiA9IGVxdWl2KjQvNTsKKyAg
ICAgIGVxdWl2IC09IGVxdWl2Kmxvc3MvKDYqbG9zcyArIDEwKTsKKyAgIH0gZWxzZSBpZiAobW9k
ZSA9PSBNT0RFX0NFTFRfT05MWSkgeworICAgICAgLyogQ0VMVCBjb21wbGV4aXR5IDAtNCBkb2Vz
bid0IGhhdmUgdGhlIHBpdGNoIGZpbHRlciwgd2hpY2ggY29zdHMKKyAgICAgICAgIGFib3V0IDEw
JS4gKi8KKyAgICAgIGlmIChjb21wbGV4aXR5PDUpCisgICAgICAgICBlcXVpdiA9IGVxdWl2Kjkv
MTA7CisgICB9IGVsc2UgeworICAgICAgLyogTW9kZSBub3Qga25vd24geWV0ICovCisgICAgICAv
KiBIYWxmIHRoZSBTSUxLIGxvc3MqLworICAgICAgZXF1aXYgLT0gZXF1aXYqbG9zcy8oMTIqbG9z
cyArIDIwKTsKKyAgIH0KKyAgIHJldHVybiBlcXVpdjsKK30KKworI2lmbmRlZiBESVNBQkxFX0ZM
T0FUX0FQSQorCitzdGF0aWMgaW50IGlzX2RpZ2l0YWxfc2lsZW5jZShjb25zdCBvcHVzX3ZhbDE2
KiBwY20sIGludCBmcmFtZV9zaXplLCBpbnQgY2hhbm5lbHMsIGludCBsc2JfZGVwdGgpCit7Cisg
ICBpbnQgc2lsZW5jZSA9IDA7CisgICBvcHVzX3ZhbDMyIHNhbXBsZV9tYXggPSAwOworI2lmZGVm
IE1MUF9UUkFJTklORworICAgcmV0dXJuIDA7CisjZW5kaWYKKyAgIHNhbXBsZV9tYXggPSBjZWx0
X21heGFiczE2KHBjbSwgZnJhbWVfc2l6ZSpjaGFubmVscyk7CisKKyNpZmRlZiBGSVhFRF9QT0lO
VAorICAgc2lsZW5jZSA9IChzYW1wbGVfbWF4ID09IDApOworICAgKHZvaWQpbHNiX2RlcHRoOwor
I2Vsc2UKKyAgIHNpbGVuY2UgPSAoc2FtcGxlX21heCA8PSAob3B1c192YWwxNikgMSAvICgxIDw8
IGxzYl9kZXB0aCkpOworI2VuZGlmCisKKyAgIHJldHVybiBzaWxlbmNlOworfQorCisjaWZkZWYg
RklYRURfUE9JTlQKK3N0YXRpYyBvcHVzX3ZhbDMyIGNvbXB1dGVfZnJhbWVfZW5lcmd5KGNvbnN0
IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lX3NpemUsIGludCBjaGFubmVscywgaW50IGFyY2gp
Cit7CisgICBpbnQgaTsKKyAgIG9wdXNfdmFsMzIgc2FtcGxlX21heDsKKyAgIGludCBtYXhfc2hp
ZnQ7CisgICBpbnQgc2hpZnQ7CisgICBvcHVzX3ZhbDMyIGVuZXJneSA9IDA7CisgICBpbnQgbGVu
ID0gZnJhbWVfc2l6ZSpjaGFubmVsczsKKyAgICh2b2lkKWFyY2g7CisgICAvKiBNYXggYW1wbGl0
dWRlIGluIHRoZSBzaWduYWwgKi8KKyAgIHNhbXBsZV9tYXggPSBjZWx0X21heGFiczE2KHBjbSwg
bGVuKTsKKworICAgLyogQ29tcHV0ZSB0aGUgcmlnaHQgc2hpZnQgcmVxdWlyZWQgaW4gdGhlIE1B
QyB0byBhdm9pZCBhbiBvdmVyZmxvdyAqLworICAgbWF4X3NoaWZ0ID0gY2VsdF9pbG9nMihsZW4p
OworICAgc2hpZnQgPSBJTUFYKDAsIChjZWx0X2lsb2cyKHNhbXBsZV9tYXgpIDw8IDEpICsgbWF4
X3NoaWZ0IC0gMjgpOworCisgICAvKiBDb21wdXRlIHRoZSBlbmVyZ3kgKi8KKyAgIGZvciAoaT0w
OyBpPGxlbjsgaSsrKQorICAgICAgZW5lcmd5ICs9IFNIUjMyKE1VTFQxNl8xNihwY21baV0sIHBj
bVtpXSksIHNoaWZ0KTsKKworICAgLyogTm9ybWFsaXplIGVuZXJneSBieSB0aGUgZnJhbWUgc2l6
ZSBhbmQgbGVmdC1zaGlmdCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBwb3NpdGlvbiAqLworICAgZW5l
cmd5IC89IGxlbjsKKyAgIGVuZXJneSA9IFNITDMyKGVuZXJneSwgc2hpZnQpOworCisgICByZXR1
cm4gZW5lcmd5OworfQorI2Vsc2UKK3N0YXRpYyBvcHVzX3ZhbDMyIGNvbXB1dGVfZnJhbWVfZW5l
cmd5KGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lX3NpemUsIGludCBjaGFubmVscywg
aW50IGFyY2gpCit7CisgICBpbnQgbGVuID0gZnJhbWVfc2l6ZSpjaGFubmVsczsKKyAgIHJldHVy
biBjZWx0X2lubmVyX3Byb2QocGNtLCBwY20sIGxlbiwgYXJjaCkvbGVuOworfQorI2VuZGlmCisK
Ky8qIERlY2lkZXMgaWYgRFRYIHNob3VsZCBiZSB0dXJuZWQgb24gKD0xKSBvciBvZmYgKD0wKSAq
Lworc3RhdGljIGludCBkZWNpZGVfZHR4X21vZGUoZmxvYXQgYWN0aXZpdHlfcHJvYmFiaWxpdHks
ICAgIC8qIHByb2JhYmlsaXR5IHRoYXQgY3VycmVudCBmcmFtZSBjb250YWlucyBzcGVlY2gvbXVz
aWMgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqbmJfbm9fYWN0aXZpdHlfZnJh
bWVzLCAgICAvKiBudW1iZXIgb2YgY29uc2VjdXRpdmUgZnJhbWVzIHdpdGggbm8gYWN0aXZpdHkg
Ki8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdXNfdmFsMzIgcGVha19zaWduYWxfZW5l
cmd5LCAvKiBwZWFrIGVuZXJneSBvZiBkZXNpcmVkIHNpZ25hbCBkZXRlY3RlZCBzbyBmYXIgKi8K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgICAgICAg
ICAvKiBpbnB1dCBwY20gc2lnbmFsICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
ZnJhbWVfc2l6ZSwgICAgICAgICAgICAgICAgLyogZnJhbWUgc2l6ZSAqLworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IGNoYW5uZWxzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
aW50IGlzX3NpbGVuY2UsICAgICAgICAgICAgICAgICAvKiBvbmx5IGRpZ2l0YWwgc2lsZW5jZSBk
ZXRlY3RlZCBpbiB0aGlzIGZyYW1lICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
YXJjaAorICAgICAgICAgICAgICAgICAgICAgICAgICApCit7CisgICBvcHVzX3ZhbDMyIG5vaXNl
X2VuZXJneTsKKworICAgaWYgKCFpc19zaWxlbmNlKQorICAgeworICAgICAgaWYgKGFjdGl2aXR5
X3Byb2JhYmlsaXR5IDwgRFRYX0FDVElWSVRZX1RIUkVTSE9MRCkgIC8qIGlzIG5vaXNlICovCisg
ICAgICB7CisgICAgICAgICBub2lzZV9lbmVyZ3kgPSBjb21wdXRlX2ZyYW1lX2VuZXJneShwY20s
IGZyYW1lX3NpemUsIGNoYW5uZWxzLCBhcmNoKTsKKworICAgICAgICAgLyogYnV0IGlzIHN1ZmZp
Y2llbnRseSBxdWlldCAqLworICAgICAgICAgaXNfc2lsZW5jZSA9IHBlYWtfc2lnbmFsX2VuZXJn
eSA+PSAoUFNFVURPX1NOUl9USFJFU0hPTEQgKiBub2lzZV9lbmVyZ3kpOworICAgICAgfQorICAg
fQorCisgICBpZiAoaXNfc2lsZW5jZSkKKyAgIHsKKyAgICAgIC8qIFRoZSBudW1iZXIgb2YgY29u
c2VjdXRpdmUgRFRYIGZyYW1lcyBzaG91bGQgYmUgd2l0aGluIHRoZSBhbGxvd2VkIGJvdW5kcyAq
LworICAgICAgKCpuYl9ub19hY3Rpdml0eV9mcmFtZXMpKys7CisKKyAgICAgIGlmICgqbmJfbm9f
YWN0aXZpdHlfZnJhbWVzID4gTkJfU1BFRUNIX0ZSQU1FU19CRUZPUkVfRFRYKQorICAgICAgewor
ICAgICAgICAgaWYgKCpuYl9ub19hY3Rpdml0eV9mcmFtZXMgPD0gKE5CX1NQRUVDSF9GUkFNRVNf
QkVGT1JFX0RUWCArIE1BWF9DT05TRUNVVElWRV9EVFgpKQorICAgICAgICAgICAgLyogVmFsaWQg
ZnJhbWUgZm9yIERUWCEgKi8KKyAgICAgICAgICAgIHJldHVybiAxOworICAgICAgICAgZWxzZQor
ICAgICAgICAgICAgKCpuYl9ub19hY3Rpdml0eV9mcmFtZXMpID0gTkJfU1BFRUNIX0ZSQU1FU19C
RUZPUkVfRFRYOworICAgICAgfQorICAgfSBlbHNlCisgICAgICAoKm5iX25vX2FjdGl2aXR5X2Zy
YW1lcykgPSAwOworCisgICByZXR1cm4gMDsKK30KKworI2VuZGlmCisKK3N0YXRpYyBvcHVzX2lu
dDMyIGVuY29kZV9tdWx0aWZyYW1lX3BhY2tldChPcHVzRW5jb2RlciAqc3QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3B1c192YWwxNiAqcGNtLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBuYl9mcmFtZXMs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGZyYW1lX3Np
emUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
Y2hhciAqZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBv
cHVzX2ludDMyIG91dF9kYXRhX2J5dGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCB0b19jZWx0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCBsc2JfZGVwdGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IGZsb2F0X2FwaSkKK3sKKyAgIGludCBpOworICAgaW50IHJldCA9
IDA7CisgICBWQVJERUNMKHVuc2lnbmVkIGNoYXIsIHRtcF9kYXRhKTsKKyAgIGludCBiYWtfbW9k
ZSwgYmFrX2JhbmR3aWR0aCwgYmFrX2NoYW5uZWxzLCBiYWtfdG9fbW9ubzsKKyAgIFZBUkRFQ0wo
T3B1c1JlcGFja2V0aXplciwgcnApOworICAgaW50IG1heF9oZWFkZXJfYnl0ZXM7CisgICBvcHVz
X2ludDMyIGJ5dGVzX3Blcl9mcmFtZTsKKyAgIG9wdXNfaW50MzIgY2JyX2J5dGVzOworICAgb3B1
c19pbnQzMiByZXBhY2tldGl6ZV9sZW47CisgICBpbnQgdG1wX2xlbjsKKyAgIEFMTE9DX1NUQUNL
OworCisgICAvKiBXb3JzdCBjYXNlczoKKyAgICAqIDIgZnJhbWVzOiBDb2RlIDIgd2l0aCBkaWZm
ZXJlbnQgY29tcHJlc3NlZCBzaXplcworICAgICogPjIgZnJhbWVzOiBDb2RlIDMgVkJSICovCisg
ICBtYXhfaGVhZGVyX2J5dGVzID0gbmJfZnJhbWVzID09IDIgPyAzIDogKDIrKG5iX2ZyYW1lcy0x
KSoyKTsKKworICAgaWYgKHN0LT51c2VfdmJyIHx8IHN0LT51c2VyX2JpdHJhdGVfYnBzPT1PUFVT
X0JJVFJBVEVfTUFYKQorICAgICAgcmVwYWNrZXRpemVfbGVuID0gb3V0X2RhdGFfYnl0ZXM7Cisg
ICBlbHNlIHsKKyAgICAgIGNicl9ieXRlcyA9IDMqc3QtPmJpdHJhdGVfYnBzLygzKjgqc3QtPkZz
LyhmcmFtZV9zaXplKm5iX2ZyYW1lcykpOworICAgICAgcmVwYWNrZXRpemVfbGVuID0gSU1JTihj
YnJfYnl0ZXMsIG91dF9kYXRhX2J5dGVzKTsKKyAgIH0KKyAgIGJ5dGVzX3Blcl9mcmFtZSA9IElN
SU4oMTI3NiwgMSsocmVwYWNrZXRpemVfbGVuLW1heF9oZWFkZXJfYnl0ZXMpL25iX2ZyYW1lcyk7
CisKKyAgIEFMTE9DKHRtcF9kYXRhLCBuYl9mcmFtZXMqYnl0ZXNfcGVyX2ZyYW1lLCB1bnNpZ25l
ZCBjaGFyKTsKKyAgIEFMTE9DKHJwLCAxLCBPcHVzUmVwYWNrZXRpemVyKTsKKyAgIG9wdXNfcmVw
YWNrZXRpemVyX2luaXQocnApOworCisgICBiYWtfbW9kZSA9IHN0LT51c2VyX2ZvcmNlZF9tb2Rl
OworICAgYmFrX2JhbmR3aWR0aCA9IHN0LT51c2VyX2JhbmR3aWR0aDsKKyAgIGJha19jaGFubmVs
cyA9IHN0LT5mb3JjZV9jaGFubmVsczsKKworICAgc3QtPnVzZXJfZm9yY2VkX21vZGUgPSBzdC0+
bW9kZTsKKyAgIHN0LT51c2VyX2JhbmR3aWR0aCA9IHN0LT5iYW5kd2lkdGg7CisgICBzdC0+Zm9y
Y2VfY2hhbm5lbHMgPSBzdC0+c3RyZWFtX2NoYW5uZWxzOworCisgICBiYWtfdG9fbW9ubyA9IHN0
LT5zaWxrX21vZGUudG9Nb25vOworICAgaWYgKGJha190b19tb25vKQorICAgICAgc3QtPmZvcmNl
X2NoYW5uZWxzID0gMTsKKyAgIGVsc2UKKyAgICAgIHN0LT5wcmV2X2NoYW5uZWxzID0gc3QtPnN0
cmVhbV9jaGFubmVsczsKKworICAgZm9yIChpPTA7aTxuYl9mcmFtZXM7aSsrKQorICAgeworICAg
ICAgc3QtPnNpbGtfbW9kZS50b01vbm8gPSAwOworICAgICAgc3QtPm5vbmZpbmFsX2ZyYW1lID0g
aTwobmJfZnJhbWVzLTEpOworCisgICAgICAvKiBXaGVuIHN3aXRjaGluZyBmcm9tIFNJTEsvSHli
cmlkIHRvIENFTFQsIG9ubHkgYXNrIGZvciBhIHN3aXRjaCBhdCB0aGUgbGFzdCBmcmFtZSAqLwor
ICAgICAgaWYgKHRvX2NlbHQgJiYgaT09bmJfZnJhbWVzLTEpCisgICAgICAgICBzdC0+dXNlcl9m
b3JjZWRfbW9kZSA9IE1PREVfQ0VMVF9PTkxZOworCisgICAgICB0bXBfbGVuID0gb3B1c19lbmNv
ZGVfbmF0aXZlKHN0LCBwY20raSooc3QtPmNoYW5uZWxzKmZyYW1lX3NpemUpLCBmcmFtZV9zaXpl
LAorICAgICAgICAgdG1wX2RhdGEraSpieXRlc19wZXJfZnJhbWUsIGJ5dGVzX3Blcl9mcmFtZSwg
bHNiX2RlcHRoLCBOVUxMLCAwLCAwLCAwLCAwLAorICAgICAgICAgTlVMTCwgZmxvYXRfYXBpKTsK
KworICAgICAgaWYgKHRtcF9sZW48MCkKKyAgICAgIHsKKyAgICAgICAgIFJFU1RPUkVfU1RBQ0s7
CisgICAgICAgICByZXR1cm4gT1BVU19JTlRFUk5BTF9FUlJPUjsKKyAgICAgIH0KKworICAgICAg
cmV0ID0gb3B1c19yZXBhY2tldGl6ZXJfY2F0KHJwLCB0bXBfZGF0YStpKmJ5dGVzX3Blcl9mcmFt
ZSwgdG1wX2xlbik7CisKKyAgICAgIGlmIChyZXQ8MCkKKyAgICAgIHsKKyAgICAgICAgIFJFU1RP
UkVfU1RBQ0s7CisgICAgICAgICByZXR1cm4gT1BVU19JTlRFUk5BTF9FUlJPUjsKKyAgICAgIH0K
KyAgIH0KKworICAgcmV0ID0gb3B1c19yZXBhY2tldGl6ZXJfb3V0X3JhbmdlX2ltcGwocnAsIDAs
IG5iX2ZyYW1lcywgZGF0YSwgcmVwYWNrZXRpemVfbGVuLCAwLCAhc3QtPnVzZV92YnIpOworCisg
ICBpZiAocmV0PDApCisgICB7CisgICAgICBSRVNUT1JFX1NUQUNLOworICAgICAgcmV0dXJuIE9Q
VVNfSU5URVJOQUxfRVJST1I7CisgICB9CisKKyAgIC8qIERpc2NhcmQgY29uZmlncyB0aGF0IHdl
cmUgZm9yY2VkIGxvY2FsbHkgZm9yIHRoZSBwdXJwb3NlIG9mIHJlcGFja2V0aXphdGlvbiAqLwor
ICAgc3QtPnVzZXJfZm9yY2VkX21vZGUgPSBiYWtfbW9kZTsKKyAgIHN0LT51c2VyX2JhbmR3aWR0
aCA9IGJha19iYW5kd2lkdGg7CisgICBzdC0+Zm9yY2VfY2hhbm5lbHMgPSBiYWtfY2hhbm5lbHM7
CisgICBzdC0+c2lsa19tb2RlLnRvTW9ubyA9IGJha190b19tb25vOworCisgICBSRVNUT1JFX1NU
QUNLOworICAgcmV0dXJuIHJldDsKK30KKworc3RhdGljIGludCBjb21wdXRlX3JlZHVuZGFuY3lf
Ynl0ZXMob3B1c19pbnQzMiBtYXhfZGF0YV9ieXRlcywgb3B1c19pbnQzMiBiaXRyYXRlX2Jwcywg
aW50IGZyYW1lX3JhdGUsIGludCBjaGFubmVscykKK3sKKyAgIGludCByZWR1bmRhbmN5X2J5dGVz
X2NhcDsKKyAgIGludCByZWR1bmRhbmN5X2J5dGVzOworICAgb3B1c19pbnQzMiByZWR1bmRhbmN5
X3JhdGU7CisgICBpbnQgYmFzZV9iaXRzOworICAgb3B1c19pbnQzMiBhdmFpbGFibGVfYml0czsK
KyAgIGJhc2VfYml0cyA9ICg0MCpjaGFubmVscysyMCk7CisKKyAgIC8qIEVxdWl2YWxlbnQgcmF0
ZSBmb3IgNSBtcyBmcmFtZXMuICovCisgICByZWR1bmRhbmN5X3JhdGUgPSBiaXRyYXRlX2JwcyAr
IGJhc2VfYml0cyooMjAwIC0gZnJhbWVfcmF0ZSk7CisgICAvKiBGb3IgVkJSLCBmdXJ0aGVyIGlu
Y3JlYXNlIHRoZSBiaXRyYXRlIGlmIHdlIGNhbiBhZmZvcmQgaXQuIEl0J3MgcHJldHR5IHNob3J0
CisgICAgICBhbmQgd2UnbGwgYXZvaWQgYXJ0ZWZhY3RzLiAqLworICAgcmVkdW5kYW5jeV9yYXRl
ID0gMypyZWR1bmRhbmN5X3JhdGUvMjsKKyAgIHJlZHVuZGFuY3lfYnl0ZXMgPSByZWR1bmRhbmN5
X3JhdGUvMTYwMDsKKworICAgLyogQ29tcHV0ZSB0aGUgbWF4IHJhdGUgd2UgY2FuIHVzZSBnaXZl
biBDQlIgb3IgVkJSIHdpdGggY2FwLiAqLworICAgYXZhaWxhYmxlX2JpdHMgPSBtYXhfZGF0YV9i
eXRlcyo4IC0gMipiYXNlX2JpdHM7CisgICByZWR1bmRhbmN5X2J5dGVzX2NhcCA9IChhdmFpbGFi
bGVfYml0cyoyNDAvKDI0MCs0ODAwMC9mcmFtZV9yYXRlKSArIGJhc2VfYml0cykvODsKKyAgIHJl
ZHVuZGFuY3lfYnl0ZXMgPSBJTUlOKHJlZHVuZGFuY3lfYnl0ZXMsIHJlZHVuZGFuY3lfYnl0ZXNf
Y2FwKTsKKyAgIC8qIEl0IHdlIGNhbid0IGdldCBlbm91Z2ggYml0cyBmb3IgcmVkdW5kYW5jeSB0
byBiZSB3b3J0aCBpdCwgcmVseSBvbiB0aGUgZGVjb2RlciBQTEMuICovCisgICBpZiAocmVkdW5k
YW5jeV9ieXRlcyA+IDQgKyA4KmNoYW5uZWxzKQorICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9IElN
SU4oMjU3LCByZWR1bmRhbmN5X2J5dGVzKTsKKyAgIGVsc2UKKyAgICAgIHJlZHVuZGFuY3lfYnl0
ZXMgPSAwOworICAgcmV0dXJuIHJlZHVuZGFuY3lfYnl0ZXM7Cit9CisKIG9wdXNfaW50MzIgb3B1
c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBp
bnQgZnJhbWVfc2l6ZSwKICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpkYXRhLCBvcHVz
X2ludDMyIG91dF9kYXRhX2J5dGVzLCBpbnQgbHNiX2RlcHRoLAogICAgICAgICAgICAgICAgIGNv
bnN0IHZvaWQgKmFuYWx5c2lzX3BjbSwgb3B1c19pbnQzMiBhbmFseXNpc19zaXplLCBpbnQgYzEs
IGludCBjMiwKQEAgLTk3MSw2ICsxMTA3LDcgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRp
dmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAg
ICBBbmFseXNpc0luZm8gYW5hbHlzaXNfaW5mbzsKICAgICBpbnQgYW5hbHlzaXNfcmVhZF9wb3Nf
YmFrPS0xOwogICAgIGludCBhbmFseXNpc19yZWFkX3N1YmZyYW1lX2Jhaz0tMTsKKyAgICBpbnQg
aXNfc2lsZW5jZSA9IDA7CiAjZW5kaWYKICAgICBWQVJERUNMKG9wdXNfdmFsMTYsIHRtcF9wcmVm
aWxsKTsKIApAQCAtOTc5LDE1ICsxMTE2LDE5IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0
aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAg
ICAgbWF4X2RhdGFfYnl0ZXMgPSBJTUlOKDEyNzYsIG91dF9kYXRhX2J5dGVzKTsKIAogICAgIHN0
LT5yYW5nZUZpbmFsID0gMDsKLSAgICBpZiAoKCFzdC0+dmFyaWFibGVfZHVyYXRpb24gJiYgNDAw
KmZyYW1lX3NpemUgIT0gc3QtPkZzICYmIDIwMCpmcmFtZV9zaXplICE9IHN0LT5GcyAmJiAxMDAq
ZnJhbWVfc2l6ZSAhPSBzdC0+RnMgJiYKLSAgICAgICAgIDUwKmZyYW1lX3NpemUgIT0gc3QtPkZz
ICYmICAyNSpmcmFtZV9zaXplICE9IHN0LT5GcyAmJiAgNTAqZnJhbWVfc2l6ZSAhPSAzKnN0LT5G
cykKLSAgICAgICAgIHx8ICg0MDAqZnJhbWVfc2l6ZSA8IHN0LT5GcykKLSAgICAgICAgIHx8IG1h
eF9kYXRhX2J5dGVzPD0wCi0gICAgICAgICApCisgICAgaWYgKGZyYW1lX3NpemUgPD0gMCB8fCBt
YXhfZGF0YV9ieXRlcyA8PSAwKQogICAgIHsKICAgICAgICBSRVNUT1JFX1NUQUNLOwogICAgICAg
IHJldHVybiBPUFVTX0JBRF9BUkc7CiAgICAgfQorCisgICAgLyogQ2Fubm90IGVuY29kZSAxMDAg
bXMgaW4gMSBieXRlICovCisgICAgaWYgKG1heF9kYXRhX2J5dGVzPT0xICYmIHN0LT5Gcz09KGZy
YW1lX3NpemUqMTApKQorICAgIHsKKyAgICAgIFJFU1RPUkVfU1RBQ0s7CisgICAgICByZXR1cm4g
T1BVU19CVUZGRVJfVE9PX1NNQUxMOworICAgIH0KKwogICAgIHNpbGtfZW5jID0gKGNoYXIqKXN0
K3N0LT5zaWxrX2VuY19vZmZzZXQ7CiAgICAgY2VsdF9lbmMgPSAoQ0VMVEVuY29kZXIqKSgoY2hh
ciopc3Qrc3QtPmNlbHRfZW5jX29mZnNldCk7CiAgICAgaWYgKHN0LT5hcHBsaWNhdGlvbiA9PSBP
UFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVMQVkpCkBAIC0xMDAxLDI1ICsxMTQyLDQy
IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qg
b3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCiAg
ICAgYW5hbHlzaXNfaW5mby52YWxpZCA9IDA7CiAjaWZkZWYgRklYRURfUE9JTlQKLSAgICBpZiAo
c3QtPnNpbGtfbW9kZS5jb21wbGV4aXR5ID49IDEwICYmIHN0LT5Gcz09NDgwMDApCisgICAgaWYg
KHN0LT5zaWxrX21vZGUuY29tcGxleGl0eSA+PSAxMCAmJiBzdC0+RnM+PTE2MDAwKQogI2Vsc2UK
LSAgICBpZiAoc3QtPnNpbGtfbW9kZS5jb21wbGV4aXR5ID49IDcgJiYgc3QtPkZzPT00ODAwMCkK
KyAgICBpZiAoc3QtPnNpbGtfbW9kZS5jb21wbGV4aXR5ID49IDcgJiYgc3QtPkZzPj0xNjAwMCkK
ICNlbmRpZgogICAgIHsKLSAgICAgICBhbmFseXNpc19yZWFkX3Bvc19iYWsgPSBzdC0+YW5hbHlz
aXMucmVhZF9wb3M7Ci0gICAgICAgYW5hbHlzaXNfcmVhZF9zdWJmcmFtZV9iYWsgPSBzdC0+YW5h
bHlzaXMucmVhZF9zdWJmcmFtZTsKLSAgICAgICBydW5fYW5hbHlzaXMoJnN0LT5hbmFseXNpcywg
Y2VsdF9tb2RlLCBhbmFseXNpc19wY20sIGFuYWx5c2lzX3NpemUsIGZyYW1lX3NpemUsCi0gICAg
ICAgICAgICAgYzEsIGMyLCBhbmFseXNpc19jaGFubmVscywgc3QtPkZzLAotICAgICAgICAgICAg
IGxzYl9kZXB0aCwgZG93bm1peCwgJmFuYWx5c2lzX2luZm8pOworICAgICAgIGlmIChpc19kaWdp
dGFsX3NpbGVuY2UocGNtLCBmcmFtZV9zaXplLCBzdC0+Y2hhbm5lbHMsIGxzYl9kZXB0aCkpCisg
ICAgICAgeworICAgICAgICAgIGlzX3NpbGVuY2UgPSAxOworICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgYW5hbHlzaXNfcmVhZF9wb3NfYmFrID0gc3QtPmFuYWx5c2lzLnJlYWRfcG9zOworICAg
ICAgICAgIGFuYWx5c2lzX3JlYWRfc3ViZnJhbWVfYmFrID0gc3QtPmFuYWx5c2lzLnJlYWRfc3Vi
ZnJhbWU7CisgICAgICAgICAgcnVuX2FuYWx5c2lzKCZzdC0+YW5hbHlzaXMsIGNlbHRfbW9kZSwg
YW5hbHlzaXNfcGNtLCBhbmFseXNpc19zaXplLCBmcmFtZV9zaXplLAorICAgICAgICAgICAgICAg
IGMxLCBjMiwgYW5hbHlzaXNfY2hhbm5lbHMsIHN0LT5GcywKKyAgICAgICAgICAgICAgICBsc2Jf
ZGVwdGgsIGRvd25taXgsICZhbmFseXNpc19pbmZvKTsKKyAgICAgICB9CisKKyAgICAgICAvKiBU
cmFjayB0aGUgcGVhayBzaWduYWwgZW5lcmd5ICovCisgICAgICAgaWYgKCFpc19zaWxlbmNlICYm
IGFuYWx5c2lzX2luZm8uYWN0aXZpdHlfcHJvYmFiaWxpdHkgPiBEVFhfQUNUSVZJVFlfVEhSRVNI
T0xEKQorICAgICAgICAgIHN0LT5wZWFrX3NpZ25hbF9lbmVyZ3kgPSBNQVgzMihNVUxUMTZfMzJf
UTE1KFFDT05TVDE2KDAuOTk5ZiwgMTUpLCBzdC0+cGVha19zaWduYWxfZW5lcmd5KSwKKyAgICAg
ICAgICAgICAgICBjb21wdXRlX2ZyYW1lX2VuZXJneShwY20sIGZyYW1lX3NpemUsIHN0LT5jaGFu
bmVscywgc3QtPmFyY2gpKTsKICAgICB9CiAjZWxzZQogICAgICh2b2lkKWFuYWx5c2lzX3BjbTsK
ICAgICAodm9pZClhbmFseXNpc19zaXplOworICAgICh2b2lkKWMxOworICAgICh2b2lkKWMyOwor
ICAgICh2b2lkKWFuYWx5c2lzX2NoYW5uZWxzOworICAgICh2b2lkKWRvd25taXg7CiAjZW5kaWYK
IAotICAgIHN0LT52b2ljZV9yYXRpbyA9IC0xOwotCiAjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJ
CisgICAgLyogUmVzZXQgdm9pY2VfcmF0aW8gaWYgdGhpcyBmcmFtZSBpcyBub3Qgc2lsZW50IG9y
IGlmIGFuYWx5c2lzIGlzIGRpc2FibGVkLgorICAgICAqIE90aGVyd2lzZSwgcHJlc2VydmUgdm9p
Y2VfcmF0aW8gZnJvbSB0aGUgbGFzdCBub24tc2lsZW50IGZyYW1lICovCisgICAgaWYgKCFpc19z
aWxlbmNlKQorICAgICAgc3QtPnZvaWNlX3JhdGlvID0gLTE7CisKICAgICBzdC0+ZGV0ZWN0ZWRf
YmFuZHdpZHRoID0gMDsKICAgICBpZiAoYW5hbHlzaXNfaW5mby52YWxpZCkKICAgICB7CkBAIC0x
MDM5LDYgKzExOTcsOCBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2Rl
ciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAgIGVsc2UKICAg
ICAgICAgICBzdC0+ZGV0ZWN0ZWRfYmFuZHdpZHRoID0gT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQ7
CiAgICAgfQorI2Vsc2UKKyAgICBzdC0+dm9pY2VfcmF0aW8gPSAtMTsKICNlbmRpZgogCiAgICAg
aWYgKHN0LT5jaGFubmVscz09MiAmJiBzdC0+Zm9yY2VfY2hhbm5lbHMhPTEpCkBAIC0xMDUyLDEy
ICsxMjEyLDEzIEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpz
dCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgaWYgKCFzdC0+dXNlX3Zi
cikKICAgICB7CiAgICAgICAgaW50IGNickJ5dGVzOwotICAgICAgIC8qIE11bHRpcGx5IGJ5IDMg
dG8gbWFrZSBzdXJlIHRoZSBkaXZpc2lvbiBpcyBleGFjdC4gKi8KLSAgICAgICBpbnQgZnJhbWVf
cmF0ZTMgPSAzKnN0LT5Gcy9mcmFtZV9zaXplOworICAgICAgIC8qIE11bHRpcGx5IGJ5IDEyIHRv
IG1ha2Ugc3VyZSB0aGUgZGl2aXNpb24gaXMgZXhhY3QuICovCisgICAgICAgaW50IGZyYW1lX3Jh
dGUxMiA9IDEyKnN0LT5Gcy9mcmFtZV9zaXplOwogICAgICAgIC8qIFdlIG5lZWQgdG8gbWFrZSBz
dXJlIHRoYXQgImludCIgdmFsdWVzIGFsd2F5cyBmaXQgaW4gMTYgYml0cy4gKi8KLSAgICAgICBj
YnJCeXRlcyA9IElNSU4oICgzKnN0LT5iaXRyYXRlX2Jwcy84ICsgZnJhbWVfcmF0ZTMvMikvZnJh
bWVfcmF0ZTMsIG1heF9kYXRhX2J5dGVzKTsKLSAgICAgICBzdC0+Yml0cmF0ZV9icHMgPSBjYnJC
eXRlcyoob3B1c19pbnQzMilmcmFtZV9yYXRlMyo4LzM7Ci0gICAgICAgbWF4X2RhdGFfYnl0ZXMg
PSBjYnJCeXRlczsKKyAgICAgICBjYnJCeXRlcyA9IElNSU4oICgxMipzdC0+Yml0cmF0ZV9icHMv
OCArIGZyYW1lX3JhdGUxMi8yKS9mcmFtZV9yYXRlMTIsIG1heF9kYXRhX2J5dGVzKTsKKyAgICAg
ICBzdC0+Yml0cmF0ZV9icHMgPSBjYnJCeXRlcyoob3B1c19pbnQzMilmcmFtZV9yYXRlMTIqOC8x
MjsKKyAgICAgICAvKiBNYWtlIHN1cmUgd2UgcHJvdmlkZSBhdCBsZWFzdCBvbmUgYnl0ZSB0byBh
dm9pZCBmYWlsaW5nLiAqLworICAgICAgIG1heF9kYXRhX2J5dGVzID0gSU1BWCgxLCBjYnJCeXRl
cyk7CiAgICAgfQogICAgIGlmIChtYXhfZGF0YV9ieXRlczwzIHx8IHN0LT5iaXRyYXRlX2JwcyA8
IDMqZnJhbWVfcmF0ZSo4CiAgICAgICAgfHwgKGZyYW1lX3JhdGU8NTAgJiYgKG1heF9kYXRhX2J5
dGVzKmZyYW1lX3JhdGU8MzAwIHx8IHN0LT5iaXRyYXRlX2JwcyA8IDI0MDApKSkKQEAgLTEwNjUs
MjUgKzEyMjYsNjMgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIg
KnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAvKklmIHRoZSBz
cGFjZSBpcyB0b28gbG93IHRvIGRvIHNvbWV0aGluZyB1c2VmdWwsIGVtaXQgJ1BMQycgZnJhbWVz
LiovCiAgICAgICAgaW50IHRvY21vZGUgPSBzdC0+bW9kZTsKICAgICAgICBpbnQgYncgPSBzdC0+
YmFuZHdpZHRoID09IDAgPyBPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EIDogc3QtPmJhbmR3aWR0
aDsKKyAgICAgICBpbnQgcGFja2V0X2NvZGUgPSAwOworICAgICAgIGludCBudW1fbXVsdGlmcmFt
ZXMgPSAwOworCiAgICAgICAgaWYgKHRvY21vZGU9PTApCiAgICAgICAgICAgdG9jbW9kZSA9IE1P
REVfU0lMS19PTkxZOwogICAgICAgIGlmIChmcmFtZV9yYXRlPjEwMCkKICAgICAgICAgICB0b2Nt
b2RlID0gTU9ERV9DRUxUX09OTFk7Ci0gICAgICAgaWYgKGZyYW1lX3JhdGUgPCA1MCkKLSAgICAg
ICAgICB0b2Ntb2RlID0gTU9ERV9TSUxLX09OTFk7CisgICAgICAgLyogNDAgbXMgLT4gMiB4IDIw
IG1zIGlmIGluIENFTFRfT05MWSBvciBIWUJSSUQgbW9kZSAqLworICAgICAgIGlmIChmcmFtZV9y
YXRlPT0yNSAmJiB0b2Ntb2RlIT1NT0RFX1NJTEtfT05MWSkKKyAgICAgICB7CisgICAgICAgICAg
ZnJhbWVfcmF0ZSA9IDUwOworICAgICAgICAgIHBhY2tldF9jb2RlID0gMTsKKyAgICAgICB9CisK
KyAgICAgICAvKiA+PSA2MCBtcyBmcmFtZXMgKi8KKyAgICAgICBpZiAoZnJhbWVfcmF0ZTw9MTYp
CisgICAgICAgeworICAgICAgICAgIC8qIDEgeCA2MCBtcywgMiB4IDQwIG1zLCAyIHggNjAgbXMg
Ki8KKyAgICAgICAgICBpZiAob3V0X2RhdGFfYnl0ZXM9PTEgfHwgKHRvY21vZGU9PU1PREVfU0lM
S19PTkxZICYmIGZyYW1lX3JhdGUhPTEwKSkKKyAgICAgICAgICB7CisgICAgICAgICAgICAgdG9j
bW9kZSA9IE1PREVfU0lMS19PTkxZOworCisgICAgICAgICAgICAgcGFja2V0X2NvZGUgPSBmcmFt
ZV9yYXRlIDw9IDEyOworICAgICAgICAgICAgIGZyYW1lX3JhdGUgPSBmcmFtZV9yYXRlID09IDEy
ID8gMjUgOiAxNjsKKyAgICAgICAgICB9CisgICAgICAgICAgZWxzZQorICAgICAgICAgIHsKKyAg
ICAgICAgICAgICBudW1fbXVsdGlmcmFtZXMgPSA1MC9mcmFtZV9yYXRlOworICAgICAgICAgICAg
IGZyYW1lX3JhdGUgPSA1MDsKKyAgICAgICAgICAgICBwYWNrZXRfY29kZSA9IDM7CisgICAgICAg
ICAgfQorICAgICAgIH0KKwogICAgICAgIGlmKHRvY21vZGU9PU1PREVfU0lMS19PTkxZJiZidz5P
UFVTX0JBTkRXSURUSF9XSURFQkFORCkKICAgICAgICAgICBidz1PUFVTX0JBTkRXSURUSF9XSURF
QkFORDsKICAgICAgICBlbHNlIGlmICh0b2Ntb2RlPT1NT0RFX0NFTFRfT05MWSYmYnc9PU9QVVNf
QkFORFdJRFRIX01FRElVTUJBTkQpCiAgICAgICAgICAgYnc9T1BVU19CQU5EV0lEVEhfTkFSUk9X
QkFORDsKICAgICAgICBlbHNlIGlmICh0b2Ntb2RlPT1NT0RFX0hZQlJJRCYmYnc8PU9QVVNfQkFO
RFdJRFRIX1NVUEVSV0lERUJBTkQpCiAgICAgICAgICAgYnc9T1BVU19CQU5EV0lEVEhfU1VQRVJX
SURFQkFORDsKKwogICAgICAgIGRhdGFbMF0gPSBnZW5fdG9jKHRvY21vZGUsIGZyYW1lX3JhdGUs
IGJ3LCBzdC0+c3RyZWFtX2NoYW5uZWxzKTsKLSAgICAgICByZXQgPSAxOworICAgICAgIGRhdGFb
MF0gfD0gcGFja2V0X2NvZGU7CisKKyAgICAgICByZXQgPSBwYWNrZXRfY29kZSA8PSAxID8gMSA6
IDI7CisKKyAgICAgICBtYXhfZGF0YV9ieXRlcyA9IElNQVgobWF4X2RhdGFfYnl0ZXMsIHJldCk7
CisKKyAgICAgICBpZiAocGFja2V0X2NvZGU9PTMpCisgICAgICAgICAgZGF0YVsxXSA9IG51bV9t
dWx0aWZyYW1lczsKKwogICAgICAgIGlmICghc3QtPnVzZV92YnIpCiAgICAgICAgewogICAgICAg
ICAgIHJldCA9IG9wdXNfcGFja2V0X3BhZChkYXRhLCByZXQsIG1heF9kYXRhX2J5dGVzKTsKICAg
ICAgICAgICBpZiAocmV0ID09IE9QVVNfT0spCiAgICAgICAgICAgICAgcmV0ID0gbWF4X2RhdGFf
Ynl0ZXM7CisgICAgICAgICAgZWxzZQorICAgICAgICAgICAgIHJldCA9IE9QVVNfSU5URVJOQUxf
RVJST1I7CiAgICAgICAgfQogICAgICAgIFJFU1RPUkVfU1RBQ0s7CiAgICAgICAgcmV0dXJuIHJl
dDsKQEAgLTEwOTEsNyArMTI5MCw4IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9w
dXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgbWF4
X3JhdGUgPSBmcmFtZV9yYXRlKm1heF9kYXRhX2J5dGVzKjg7CiAKICAgICAvKiBFcXVpdmFsZW50
IDIwLW1zIHJhdGUgZm9yIG1vZGUvY2hhbm5lbC9iYW5kd2lkdGggZGVjaXNpb25zICovCi0gICAg
ZXF1aXZfcmF0ZSA9IHN0LT5iaXRyYXRlX2JwcyAtICg0MCpzdC0+Y2hhbm5lbHMrMjApKihzdC0+
RnMvZnJhbWVfc2l6ZSAtIDUwKTsKKyAgICBlcXVpdl9yYXRlID0gY29tcHV0ZV9lcXVpdl9yYXRl
KHN0LT5iaXRyYXRlX2Jwcywgc3QtPmNoYW5uZWxzLCBzdC0+RnMvZnJhbWVfc2l6ZSwKKyAgICAg
ICAgICBzdC0+dXNlX3ZiciwgMCwgc3QtPnNpbGtfbW9kZS5jb21wbGV4aXR5LCBzdC0+c2lsa19t
b2RlLnBhY2tldExvc3NQZXJjZW50YWdlKTsKIAogICAgIGlmIChzdC0+c2lnbmFsX3R5cGUgPT0g
T1BVU19TSUdOQUxfVk9JQ0UpCiAgICAgICAgdm9pY2VfZXN0ID0gMTI3OwpAQCAtMTEzMiw3ICsx
MzMyLDkgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBj
b25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICB9CiAjZW5kaWYKICAgICB9
Ci0gICAgZXF1aXZfcmF0ZSA9IHN0LT5iaXRyYXRlX2JwcyAtICg0MCpzdC0+c3RyZWFtX2NoYW5u
ZWxzKzIwKSooc3QtPkZzL2ZyYW1lX3NpemUgLSA1MCk7CisgICAgLyogVXBkYXRlIGVxdWl2YWxl
bnQgcmF0ZSBmb3IgY2hhbm5lbHMgZGVjaXNpb24uICovCisgICAgZXF1aXZfcmF0ZSA9IGNvbXB1
dGVfZXF1aXZfcmF0ZShzdC0+Yml0cmF0ZV9icHMsIHN0LT5zdHJlYW1fY2hhbm5lbHMsIHN0LT5G
cy9mcmFtZV9zaXplLAorICAgICAgICAgIHN0LT51c2VfdmJyLCAwLCBzdC0+c2lsa19tb2RlLmNv
bXBsZXhpdHksIHN0LT5zaWxrX21vZGUucGFja2V0TG9zc1BlcmNlbnRhZ2UpOwogCiAgICAgLyog
TW9kZSBzZWxlY3Rpb24gZGVwZW5kaW5nIG9uIGFwcGxpY2F0aW9uIGFuZCBzaWduYWwgdHlwZSAq
LwogICAgIGlmIChzdC0+YXBwbGljYXRpb24gPT0gT1BVU19BUFBMSUNBVElPTl9SRVNUUklDVEVE
X0xPV0RFTEFZKQpAQCAtMTE4MSwxMCArMTM4MywyMSBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2Rl
X25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1l
XwogICAgICAgIC8qIFdoZW4gRkVDIGlzIGVuYWJsZWQgYW5kIHRoZXJlJ3MgZW5vdWdoIHBhY2tl
dCBsb3NzLCB1c2UgU0lMSyAqLwogICAgICAgIGlmIChzdC0+c2lsa19tb2RlLnVzZUluQmFuZEZF
QyAmJiBzdC0+c2lsa19tb2RlLnBhY2tldExvc3NQZXJjZW50YWdlID4gKDEyOC12b2ljZV9lc3Qp
Pj40KQogICAgICAgICAgIHN0LT5tb2RlID0gTU9ERV9TSUxLX09OTFk7Ci0gICAgICAgLyogV2hl
biBlbmNvZGluZyB2b2ljZSBhbmQgRFRYIGlzIGVuYWJsZWQsIHNldCB0aGUgZW5jb2RlciB0byBT
SUxLIG1vZGUgKGF0IGxlYXN0IGZvciBub3cpICovCisgICAgICAgLyogV2hlbiBlbmNvZGluZyB2
b2ljZSBhbmQgRFRYIGlzIGVuYWJsZWQgYnV0IHRoZSBnZW5lcmFsaXplZCBEVFggY2Fubm90IGJl
IHVzZWQsCisgICAgICAgICAgYmVjYXVzZSBvZiBjb21wbGV4aXR5IGFuZCBzYW1wbGluZyBmcmVx
dWVuY3kgc2V0dGluZ3MsIHN3aXRjaCB0byBTSUxLIERUWCBhbmQKKyAgICAgICAgICBzZXQgdGhl
IGVuY29kZXIgdG8gU0lMSyBtb2RlICovCisjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCisgICAg
ICAgc3QtPnNpbGtfbW9kZS51c2VEVFggPSBzdC0+dXNlX2R0eCAmJiAhKGFuYWx5c2lzX2luZm8u
dmFsaWQgfHwgaXNfc2lsZW5jZSk7CisjZWxzZQorICAgICAgIHN0LT5zaWxrX21vZGUudXNlRFRY
ID0gc3QtPnVzZV9kdHg7CisjZW5kaWYKICAgICAgICBpZiAoc3QtPnNpbGtfbW9kZS51c2VEVFgg
JiYgdm9pY2VfZXN0ID4gMTAwKQogICAgICAgICAgIHN0LT5tb2RlID0gTU9ERV9TSUxLX09OTFk7
CiAjZW5kaWYKKworICAgICAgIC8qIElmIG1heF9kYXRhX2J5dGVzIHJlcHJlc2VudHMgbGVzcyB0
aGFuIDYga2Ivcywgc3dpdGNoIHRvIENFTFQtb25seSBtb2RlICovCisgICAgICAgaWYgKG1heF9k
YXRhX2J5dGVzIDwgKGZyYW1lX3JhdGUgPiA1MCA/IDkwMDAgOiA2MDAwKSpmcmFtZV9zaXplIC8g
KHN0LT5GcyAqIDgpKQorICAgICAgICAgIHN0LT5tb2RlID0gTU9ERV9DRUxUX09OTFk7CiAgICAg
fSBlbHNlIHsKICAgICAgICBzdC0+bW9kZSA9IHN0LT51c2VyX2ZvcmNlZF9tb2RlOwogICAgIH0K
QEAgLTExOTQsMTkgKzE0MDcsNiBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVz
RW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAgIHN0
LT5tb2RlID0gTU9ERV9DRUxUX09OTFk7CiAgICAgaWYgKHN0LT5sZmUpCiAgICAgICAgc3QtPm1v
ZGUgPSBNT0RFX0NFTFRfT05MWTsKLSAgICAvKiBJZiBtYXhfZGF0YV9ieXRlcyByZXByZXNlbnRz
IGxlc3MgdGhhbiA4IGtiL3MsIHN3aXRjaCB0byBDRUxULW9ubHkgbW9kZSAqLwotICAgIGlmICht
YXhfZGF0YV9ieXRlcyA8IChmcmFtZV9yYXRlID4gNTAgPyAxMjAwMCA6IDgwMDApKmZyYW1lX3Np
emUgLyAoc3QtPkZzICogOCkpCi0gICAgICAgc3QtPm1vZGUgPSBNT0RFX0NFTFRfT05MWTsKLQot
ICAgIGlmIChzdC0+c3RyZWFtX2NoYW5uZWxzID09IDEgJiYgc3QtPnByZXZfY2hhbm5lbHMgPT0y
ICYmIHN0LT5zaWxrX21vZGUudG9Nb25vPT0wCi0gICAgICAgICAgJiYgc3QtPm1vZGUgIT0gTU9E
RV9DRUxUX09OTFkgJiYgc3QtPnByZXZfbW9kZSAhPSBNT0RFX0NFTFRfT05MWSkKLSAgICB7Ci0g
ICAgICAgLyogRGVsYXkgc3RlcmVvLT5tb25vIHRyYW5zaXRpb24gYnkgdHdvIGZyYW1lcyBzbyB0
aGF0IFNJTEsgY2FuIGRvIGEgc21vb3RoIGRvd25taXggKi8KLSAgICAgICBzdC0+c2lsa19tb2Rl
LnRvTW9ubyA9IDE7Ci0gICAgICAgc3QtPnN0cmVhbV9jaGFubmVscyA9IDI7Ci0gICAgfSBlbHNl
IHsKLSAgICAgICBzdC0+c2lsa19tb2RlLnRvTW9ubyA9IDA7Ci0gICAgfQogCiAgICAgaWYgKHN0
LT5wcmV2X21vZGUgPiAwICYmCiAgICAgICAgICgoc3QtPm1vZGUgIT0gTU9ERV9DRUxUX09OTFkg
JiYgc3QtPnByZXZfbW9kZSA9PSBNT0RFX0NFTFRfT05MWSkgfHwKQEAgLTEyMjYsMjQgKzE0MjYs
MjMgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25z
dCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAgICAgIH0KICAgICAgICAgfQog
ICAgIH0KLSAgICAvKiBGb3IgdGhlIGZpcnN0IGZyYW1lIGF0IGEgbmV3IFNJTEsgYmFuZHdpZHRo
ICovCi0gICAgaWYgKHN0LT5zaWxrX2J3X3N3aXRjaCkKLSAgICB7Ci0gICAgICAgcmVkdW5kYW5j
eSA9IDE7Ci0gICAgICAgY2VsdF90b19zaWxrID0gMTsKLSAgICAgICBzdC0+c2lsa19id19zd2l0
Y2ggPSAwOwotICAgICAgIHByZWZpbGw9MTsKLSAgICB9CiAKLSAgICBpZiAocmVkdW5kYW5jeSkK
KyAgICAvKiBXaGVuIGVuY29kaW5nIG11bHRpZnJhbWVzLCB3ZSBjYW4gYXNrIGZvciBhIHN3aXRj
aCB0byBDRUxUIG9ubHkgaW4gdGhlIGxhc3QgZnJhbWUuIFRoaXMgc3dpdGNoCisgICAgICogaXMg
cHJvY2Vzc2VkIGFib3ZlIGFzIHRoZSByZXF1ZXN0ZWQgbW9kZSBzaG91bGRuJ3QgaW50ZXJydXB0
IHN0ZXJlby0+bW9ubyB0cmFuc2l0aW9uLiAqLworICAgIGlmIChzdC0+c3RyZWFtX2NoYW5uZWxz
ID09IDEgJiYgc3QtPnByZXZfY2hhbm5lbHMgPT0yICYmIHN0LT5zaWxrX21vZGUudG9Nb25vPT0w
CisgICAgICAgICAgJiYgc3QtPm1vZGUgIT0gTU9ERV9DRUxUX09OTFkgJiYgc3QtPnByZXZfbW9k
ZSAhPSBNT0RFX0NFTFRfT05MWSkKICAgICB7Ci0gICAgICAgLyogRmFpciBzaGFyZSBvZiB0aGUg
bWF4IHNpemUgYWxsb3dlZCAqLwotICAgICAgIHJlZHVuZGFuY3lfYnl0ZXMgPSBJTUlOKDI1Nywg
bWF4X2RhdGFfYnl0ZXMqKG9wdXNfaW50MzIpKHN0LT5Gcy8yMDApLyhmcmFtZV9zaXplK3N0LT5G
cy8yMDApKTsKLSAgICAgICAvKiBGb3IgVkJSLCB0YXJnZXQgdGhlIGFjdHVhbCBiaXRyYXRlIChz
dWJqZWN0IHRvIHRoZSBsaW1pdCBhYm92ZSkgKi8KLSAgICAgICBpZiAoc3QtPnVzZV92YnIpCi0g
ICAgICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9IElNSU4ocmVkdW5kYW5jeV9ieXRlcywgc3QtPmJp
dHJhdGVfYnBzLzE2MDApOworICAgICAgIC8qIERlbGF5IHN0ZXJlby0+bW9ubyB0cmFuc2l0aW9u
IGJ5IHR3byBmcmFtZXMgc28gdGhhdCBTSUxLIGNhbiBkbyBhIHNtb290aCBkb3dubWl4ICovCisg
ICAgICAgc3QtPnNpbGtfbW9kZS50b01vbm8gPSAxOworICAgICAgIHN0LT5zdHJlYW1fY2hhbm5l
bHMgPSAyOworICAgIH0gZWxzZSB7CisgICAgICAgc3QtPnNpbGtfbW9kZS50b01vbm8gPSAwOwog
ICAgIH0KIAorICAgIC8qIFVwZGF0ZSBlcXVpdmFsZW50IHJhdGUgd2l0aCBtb2RlIGRlY2lzaW9u
LiAqLworICAgIGVxdWl2X3JhdGUgPSBjb21wdXRlX2VxdWl2X3JhdGUoc3QtPmJpdHJhdGVfYnBz
LCBzdC0+c3RyZWFtX2NoYW5uZWxzLCBzdC0+RnMvZnJhbWVfc2l6ZSwKKyAgICAgICAgICBzdC0+
dXNlX3Ziciwgc3QtPm1vZGUsIHN0LT5zaWxrX21vZGUuY29tcGxleGl0eSwgc3QtPnNpbGtfbW9k
ZS5wYWNrZXRMb3NzUGVyY2VudGFnZSk7CisKICAgICBpZiAoc3QtPm1vZGUgIT0gTU9ERV9DRUxU
X09OTFkgJiYgc3QtPnByZXZfbW9kZSA9PSBNT0RFX0NFTFRfT05MWSkKICAgICB7CiAgICAgICAg
IHNpbGtfRW5jQ29udHJvbFN0cnVjdCBkdW1teTsKQEAgLTEyNTcsMTcgKzE0NTYsNyBAQCBvcHVz
X2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFs
MTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAgICBjb25zdCBvcHVzX2ludDMyICp2b2ljZV9iYW5k
d2lkdGhfdGhyZXNob2xkcywgKm11c2ljX2JhbmR3aWR0aF90aHJlc2hvbGRzOwogICAgICAgICBv
cHVzX2ludDMyIGJhbmR3aWR0aF90aHJlc2hvbGRzWzhdOwogICAgICAgICBpbnQgYmFuZHdpZHRo
ID0gT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQ7Ci0gICAgICAgIG9wdXNfaW50MzIgZXF1aXZfcmF0
ZTI7CiAKLSAgICAgICAgZXF1aXZfcmF0ZTIgPSBlcXVpdl9yYXRlOwotICAgICAgICBpZiAoc3Qt
Pm1vZGUgIT0gTU9ERV9DRUxUX09OTFkpCi0gICAgICAgIHsKLSAgICAgICAgICAgLyogQWRqdXN0
IHRoZSB0aHJlc2hvbGQgKy8tIDEwJSBkZXBlbmRpbmcgb24gY29tcGxleGl0eSAqLwotICAgICAg
ICAgICBlcXVpdl9yYXRlMiA9IGVxdWl2X3JhdGUyICogKDQ1K3N0LT5zaWxrX21vZGUuY29tcGxl
eGl0eSkvNTA7Ci0gICAgICAgICAgIC8qIENCUiBpcyBsZXNzIGVmZmljaWVudCBieSB+MSBrYi9z
ICovCi0gICAgICAgICAgIGlmICghc3QtPnVzZV92YnIpCi0gICAgICAgICAgICAgIGVxdWl2X3Jh
dGUyIC09IDEwMDA7Ci0gICAgICAgIH0KICAgICAgICAgaWYgKHN0LT5jaGFubmVscz09MiAmJiBz
dC0+Zm9yY2VfY2hhbm5lbHMhPTEpCiAgICAgICAgIHsKICAgICAgICAgICAgdm9pY2VfYmFuZHdp
ZHRoX3RocmVzaG9sZHMgPSBzdGVyZW9fdm9pY2VfYmFuZHdpZHRoX3RocmVzaG9sZHM7CkBAIC0x
Mjg4LDE1ICsxNDc3LDE1IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNv
ZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAgICAgICBo
eXN0ZXJlc2lzID0gYmFuZHdpZHRoX3RocmVzaG9sZHNbMiooYmFuZHdpZHRoLU9QVVNfQkFORFdJ
RFRIX01FRElVTUJBTkQpKzFdOwogICAgICAgICAgICAgaWYgKCFzdC0+Zmlyc3QpCiAgICAgICAg
ICAgICB7Ci0gICAgICAgICAgICAgICAgaWYgKHN0LT5iYW5kd2lkdGggPj0gYmFuZHdpZHRoKQor
ICAgICAgICAgICAgICAgIGlmIChzdC0+YXV0b19iYW5kd2lkdGggPj0gYmFuZHdpZHRoKQogICAg
ICAgICAgICAgICAgICAgICB0aHJlc2hvbGQgLT0gaHlzdGVyZXNpczsKICAgICAgICAgICAgICAg
ICBlbHNlCiAgICAgICAgICAgICAgICAgICAgIHRocmVzaG9sZCArPSBoeXN0ZXJlc2lzOwogICAg
ICAgICAgICAgfQotICAgICAgICAgICAgaWYgKGVxdWl2X3JhdGUyID49IHRocmVzaG9sZCkKKyAg
ICAgICAgICAgIGlmIChlcXVpdl9yYXRlID49IHRocmVzaG9sZCkKICAgICAgICAgICAgICAgICBi
cmVhazsKICAgICAgICAgfSB3aGlsZSAoLS1iYW5kd2lkdGg+T1BVU19CQU5EV0lEVEhfTkFSUk9X
QkFORCk7Ci0gICAgICAgIHN0LT5iYW5kd2lkdGggPSBiYW5kd2lkdGg7CisgICAgICAgIHN0LT5i
YW5kd2lkdGggPSBzdC0+YXV0b19iYW5kd2lkdGggPSBiYW5kd2lkdGg7CiAgICAgICAgIC8qIFBy
ZXZlbnRzIGFueSB0cmFuc2l0aW9uIHRvIFNXQi9GQiB1bnRpbCB0aGUgU0lMSyBsYXllciBoYXMg
ZnVsbHkKICAgICAgICAgICAgc3dpdGNoZWQgdG8gV0IgbW9kZSBhbmQgdHVybmVkIHRoZSB2YXJp
YWJsZSBMUCBmaWx0ZXIgb2ZmICovCiAgICAgICAgIGlmICghc3QtPmZpcnN0ICYmIHN0LT5tb2Rl
ICE9IE1PREVfQ0VMVF9PTkxZICYmICFzdC0+c2lsa19tb2RlLmluV0Jtb2RlV2l0aG91dFZhcmlh
YmxlTFAgJiYgc3QtPmJhbmR3aWR0aCA+IE9QVVNfQkFORFdJRFRIX1dJREVCQU5EKQpAQCAtMTM0
OSw2ICsxNTM4LDggQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIg
KnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICBzdC0+YmFuZHdp
ZHRoID0gSU1JTihzdC0+YmFuZHdpZHRoLCBzdC0+ZGV0ZWN0ZWRfYmFuZHdpZHRoKTsKICAgICB9
CiAjZW5kaWYKKyAgICBzdC0+c2lsa19tb2RlLkxCUlJfY29kZWQgPSBkZWNpZGVfZmVjKHN0LT5z
aWxrX21vZGUudXNlSW5CYW5kRkVDLCBzdC0+c2lsa19tb2RlLnBhY2tldExvc3NQZXJjZW50YWdl
LAorICAgICAgICAgIHN0LT5zaWxrX21vZGUuTEJSUl9jb2RlZCwgc3QtPm1vZGUsICZzdC0+YmFu
ZHdpZHRoLCBlcXVpdl9yYXRlKTsKICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBPUFVT
X1NFVF9MU0JfREVQVEgobHNiX2RlcHRoKSk7CiAKICAgICAvKiBDRUxUIG1vZGUgZG9lc24ndCBz
dXBwb3J0IG1lZGl1bWJhbmQsIHVzZSB3aWRlYmFuZCBpbnN0ZWFkICovCkBAIC0xMzU3LDE1ICsx
NTQ4LDM0IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwg
Y29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgaWYgKHN0LT5sZmUpCiAgICAg
ICAgc3QtPmJhbmR3aWR0aCA9IE9QVVNfQkFORFdJRFRIX05BUlJPV0JBTkQ7CiAKLSAgICAvKiBD
YW4ndCBzdXBwb3J0IGhpZ2hlciB0aGFuIHdpZGViYW5kIGZvciA+MjAgbXMgZnJhbWVzICovCi0g
ICAgaWYgKGZyYW1lX3NpemUgPiBzdC0+RnMvNTAgJiYgKHN0LT5tb2RlID09IE1PREVfQ0VMVF9P
TkxZIHx8IHN0LT5iYW5kd2lkdGggPiBPUFVTX0JBTkRXSURUSF9XSURFQkFORCkpCisgICAgY3Vy
cl9iYW5kd2lkdGggPSBzdC0+YmFuZHdpZHRoOworCisgICAgLyogQ2hvb3NlcyB0aGUgYXBwcm9w
cmlhdGUgbW9kZSBmb3Igc3BlZWNoCisgICAgICAgKk5FVkVSKiBzd2l0Y2ggdG8vZnJvbSBDRUxU
LW9ubHkgbW9kZSBoZXJlIGFzIHRoaXMgd2lsbCBpbnZhbGlkYXRlIHNvbWUgYXNzdW1wdGlvbnMg
Ki8KKyAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9TSUxLX09OTFkgJiYgY3Vycl9iYW5kd2lkdGgg
PiBPUFVTX0JBTkRXSURUSF9XSURFQkFORCkKKyAgICAgICAgc3QtPm1vZGUgPSBNT0RFX0hZQlJJ
RDsKKyAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQgJiYgY3Vycl9iYW5kd2lkdGggPD0g
T1BVU19CQU5EV0lEVEhfV0lERUJBTkQpCisgICAgICAgIHN0LT5tb2RlID0gTU9ERV9TSUxLX09O
TFk7CisKKyAgICAvKiBDYW4ndCBzdXBwb3J0IGhpZ2hlciB0aGFuID42MCBtcyBmcmFtZXMsIGFu
ZCA+MjAgbXMgd2hlbiBpbiBIeWJyaWQgb3IgQ0VMVC1vbmx5IG1vZGVzICovCisgICAgaWYgKChm
cmFtZV9zaXplID4gc3QtPkZzLzUwICYmIChzdC0+bW9kZSAhPSBNT0RFX1NJTEtfT05MWSkpIHx8
IGZyYW1lX3NpemUgPiAzKnN0LT5Gcy81MCkKICAgICB7Ci0gICAgICAgVkFSREVDTCh1bnNpZ25l
ZCBjaGFyLCB0bXBfZGF0YSk7CisgICAgICAgaW50IGVuY19mcmFtZV9zaXplOwogICAgICAgIGlu
dCBuYl9mcmFtZXM7Ci0gICAgICAgaW50IGJha19tb2RlLCBiYWtfYmFuZHdpZHRoLCBiYWtfY2hh
bm5lbHMsIGJha190b19tb25vOwotICAgICAgIFZBUkRFQ0woT3B1c1JlcGFja2V0aXplciwgcnAp
OwotICAgICAgIG9wdXNfaW50MzIgYnl0ZXNfcGVyX2ZyYW1lOwotICAgICAgIG9wdXNfaW50MzIg
cmVwYWNrZXRpemVfbGVuOworCisgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfU0lMS19PTkxZ
KQorICAgICAgIHsKKyAgICAgICAgIGlmIChmcmFtZV9zaXplID09IDIqc3QtPkZzLzI1KSAgLyog
ODAgbXMgLT4gMnggNDAgbXMgKi8KKyAgICAgICAgICAgZW5jX2ZyYW1lX3NpemUgPSBzdC0+RnMv
MjU7CisgICAgICAgICBlbHNlIGlmIChmcmFtZV9zaXplID09IDMqc3QtPkZzLzI1KSAgLyogMTIw
IG1zIC0+IDJ4IDYwIG1zICovCisgICAgICAgICAgIGVuY19mcmFtZV9zaXplID0gMypzdC0+RnMv
NTA7CisgICAgICAgICBlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIDEwMCBtcyAt
PiA1eCAyMCBtcyAqLworICAgICAgICAgICBlbmNfZnJhbWVfc2l6ZSA9IHN0LT5Gcy81MDsKKyAg
ICAgICB9CisgICAgICAgZWxzZQorICAgICAgICAgZW5jX2ZyYW1lX3NpemUgPSBzdC0+RnMvNTA7
CisKKyAgICAgICBuYl9mcmFtZXMgPSBmcmFtZV9zaXplL2VuY19mcmFtZV9zaXplOwogCiAjaWZu
ZGVmIERJU0FCTEVfRkxPQVRfQVBJCiAgICAgICAgaWYgKGFuYWx5c2lzX3JlYWRfcG9zX2JhayE9
IC0xKQpAQCAtMTM3NSw3NCArMTU4NSwzMyBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2
ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAg
ICAgIH0KICNlbmRpZgogCi0gICAgICAgbmJfZnJhbWVzID0gZnJhbWVfc2l6ZSA+IHN0LT5Gcy8y
NSA/IDMgOiAyOwotICAgICAgIGJ5dGVzX3Blcl9mcmFtZSA9IElNSU4oMTI3Niwob3V0X2RhdGFf
Ynl0ZXMtMykvbmJfZnJhbWVzKTsKLQotICAgICAgIEFMTE9DKHRtcF9kYXRhLCBuYl9mcmFtZXMq
Ynl0ZXNfcGVyX2ZyYW1lLCB1bnNpZ25lZCBjaGFyKTsKLQotICAgICAgIEFMTE9DKHJwLCAxLCBP
cHVzUmVwYWNrZXRpemVyKTsKLSAgICAgICBvcHVzX3JlcGFja2V0aXplcl9pbml0KHJwKTsKLQot
ICAgICAgIGJha19tb2RlID0gc3QtPnVzZXJfZm9yY2VkX21vZGU7Ci0gICAgICAgYmFrX2JhbmR3
aWR0aCA9IHN0LT51c2VyX2JhbmR3aWR0aDsKLSAgICAgICBiYWtfY2hhbm5lbHMgPSBzdC0+Zm9y
Y2VfY2hhbm5lbHM7CisgICAgICAgcmV0ID0gZW5jb2RlX211bHRpZnJhbWVfcGFja2V0KHN0LCBw
Y20sIG5iX2ZyYW1lcywgZW5jX2ZyYW1lX3NpemUsIGRhdGEsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG91dF9kYXRhX2J5dGVzLCB0b19jZWx0LCBsc2JfZGVwdGgsIGZs
b2F0X2FwaSk7CiAKLSAgICAgICBzdC0+dXNlcl9mb3JjZWRfbW9kZSA9IHN0LT5tb2RlOwotICAg
ICAgIHN0LT51c2VyX2JhbmR3aWR0aCA9IHN0LT5iYW5kd2lkdGg7Ci0gICAgICAgc3QtPmZvcmNl
X2NoYW5uZWxzID0gc3QtPnN0cmVhbV9jaGFubmVsczsKLSAgICAgICBiYWtfdG9fbW9ubyA9IHN0
LT5zaWxrX21vZGUudG9Nb25vOwotCi0gICAgICAgaWYgKGJha190b19tb25vKQotICAgICAgICAg
IHN0LT5mb3JjZV9jaGFubmVscyA9IDE7Ci0gICAgICAgZWxzZQotICAgICAgICAgIHN0LT5wcmV2
X2NoYW5uZWxzID0gc3QtPnN0cmVhbV9jaGFubmVsczsKLSAgICAgICBmb3IgKGk9MDtpPG5iX2Zy
YW1lcztpKyspCi0gICAgICAgewotICAgICAgICAgIGludCB0bXBfbGVuOwotICAgICAgICAgIHN0
LT5zaWxrX21vZGUudG9Nb25vID0gMDsKLSAgICAgICAgICAvKiBXaGVuIHN3aXRjaGluZyBmcm9t
IFNJTEsvSHlicmlkIHRvIENFTFQsIG9ubHkgYXNrIGZvciBhIHN3aXRjaCBhdCB0aGUgbGFzdCBm
cmFtZSAqLwotICAgICAgICAgIGlmICh0b19jZWx0ICYmIGk9PW5iX2ZyYW1lcy0xKQotICAgICAg
ICAgICAgIHN0LT51c2VyX2ZvcmNlZF9tb2RlID0gTU9ERV9DRUxUX09OTFk7Ci0gICAgICAgICAg
dG1wX2xlbiA9IG9wdXNfZW5jb2RlX25hdGl2ZShzdCwgcGNtK2kqKHN0LT5jaGFubmVscypzdC0+
RnMvNTApLCBzdC0+RnMvNTAsCi0gICAgICAgICAgICAgICAgdG1wX2RhdGEraSpieXRlc19wZXJf
ZnJhbWUsIGJ5dGVzX3Blcl9mcmFtZSwgbHNiX2RlcHRoLAotICAgICAgICAgICAgICAgIE5VTEws
IDAsIGMxLCBjMiwgYW5hbHlzaXNfY2hhbm5lbHMsIGRvd25taXgsIGZsb2F0X2FwaSk7Ci0gICAg
ICAgICAgaWYgKHRtcF9sZW48MCkKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgUkVTVE9SRV9T
VEFDSzsKLSAgICAgICAgICAgICByZXR1cm4gT1BVU19JTlRFUk5BTF9FUlJPUjsKLSAgICAgICAg
ICB9Ci0gICAgICAgICAgcmV0ID0gb3B1c19yZXBhY2tldGl6ZXJfY2F0KHJwLCB0bXBfZGF0YStp
KmJ5dGVzX3Blcl9mcmFtZSwgdG1wX2xlbik7Ci0gICAgICAgICAgaWYgKHJldDwwKQotICAgICAg
ICAgIHsKLSAgICAgICAgICAgICBSRVNUT1JFX1NUQUNLOwotICAgICAgICAgICAgIHJldHVybiBP
UFVTX0lOVEVSTkFMX0VSUk9SOwotICAgICAgICAgIH0KLSAgICAgICB9Ci0gICAgICAgaWYgKHN0
LT51c2VfdmJyKQotICAgICAgICAgIHJlcGFja2V0aXplX2xlbiA9IG91dF9kYXRhX2J5dGVzOwot
ICAgICAgIGVsc2UKLSAgICAgICAgICByZXBhY2tldGl6ZV9sZW4gPSBJTUlOKDMqc3QtPmJpdHJh
dGVfYnBzLygzKjgqNTAvbmJfZnJhbWVzKSwgb3V0X2RhdGFfYnl0ZXMpOwotICAgICAgIHJldCA9
IG9wdXNfcmVwYWNrZXRpemVyX291dF9yYW5nZV9pbXBsKHJwLCAwLCBuYl9mcmFtZXMsIGRhdGEs
IHJlcGFja2V0aXplX2xlbiwgMCwgIXN0LT51c2VfdmJyKTsKLSAgICAgICBpZiAocmV0PDApCi0g
ICAgICAgewotICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7Ci0gICAgICAgICAgcmV0dXJuIE9QVVNf
SU5URVJOQUxfRVJST1I7Ci0gICAgICAgfQotICAgICAgIHN0LT51c2VyX2ZvcmNlZF9tb2RlID0g
YmFrX21vZGU7Ci0gICAgICAgc3QtPnVzZXJfYmFuZHdpZHRoID0gYmFrX2JhbmR3aWR0aDsKLSAg
ICAgICBzdC0+Zm9yY2VfY2hhbm5lbHMgPSBiYWtfY2hhbm5lbHM7Ci0gICAgICAgc3QtPnNpbGtf
bW9kZS50b01vbm8gPSBiYWtfdG9fbW9ubzsKICAgICAgICBSRVNUT1JFX1NUQUNLOwogICAgICAg
IHJldHVybiByZXQ7CiAgICAgfQotICAgIGN1cnJfYmFuZHdpZHRoID0gc3QtPmJhbmR3aWR0aDsK
IAotICAgIC8qIENob29zZXMgdGhlIGFwcHJvcHJpYXRlIG1vZGUgZm9yIHNwZWVjaAotICAgICAg
ICpORVZFUiogc3dpdGNoIHRvL2Zyb20gQ0VMVC1vbmx5IG1vZGUgaGVyZSBhcyB0aGlzIHdpbGwg
aW52YWxpZGF0ZSBzb21lIGFzc3VtcHRpb25zICovCi0gICAgaWYgKHN0LT5tb2RlID09IE1PREVf
U0lMS19PTkxZICYmIGN1cnJfYmFuZHdpZHRoID4gT1BVU19CQU5EV0lEVEhfV0lERUJBTkQpCi0g
ICAgICAgIHN0LT5tb2RlID0gTU9ERV9IWUJSSUQ7Ci0gICAgaWYgKHN0LT5tb2RlID09IE1PREVf
SFlCUklEICYmIGN1cnJfYmFuZHdpZHRoIDw9IE9QVVNfQkFORFdJRFRIX1dJREVCQU5EKQotICAg
ICAgICBzdC0+bW9kZSA9IE1PREVfU0lMS19PTkxZOworICAgIC8qIEZvciB0aGUgZmlyc3QgZnJh
bWUgYXQgYSBuZXcgU0lMSyBiYW5kd2lkdGggKi8KKyAgICBpZiAoc3QtPnNpbGtfYndfc3dpdGNo
KQorICAgIHsKKyAgICAgICByZWR1bmRhbmN5ID0gMTsKKyAgICAgICBjZWx0X3RvX3NpbGsgPSAx
OworICAgICAgIHN0LT5zaWxrX2J3X3N3aXRjaCA9IDA7CisgICAgICAgcHJlZmlsbD0xOworICAg
IH0KKworICAgIC8qIElmIHdlIGRlY2lkZWQgdG8gZ28gd2l0aCBDRUxULCBtYWtlIHN1cmUgcmVk
dW5kYW5jeSBpcyBvZmYsIG5vIG1hdHRlciB3aGF0CisgICAgICAgd2UgZGVjaWRlZCBlYXJsaWVy
LiAqLworICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX0NFTFRfT05MWSkKKyAgICAgICAgcmVkdW5k
YW5jeSA9IDA7CisKKyAgICBpZiAocmVkdW5kYW5jeSkKKyAgICB7CisgICAgICAgcmVkdW5kYW5j
eV9ieXRlcyA9IGNvbXB1dGVfcmVkdW5kYW5jeV9ieXRlcyhtYXhfZGF0YV9ieXRlcywgc3QtPmJp
dHJhdGVfYnBzLCBmcmFtZV9yYXRlLCBzdC0+c3RyZWFtX2NoYW5uZWxzKTsKKyAgICAgICBpZiAo
cmVkdW5kYW5jeV9ieXRlcyA9PSAwKQorICAgICAgICAgIHJlZHVuZGFuY3kgPSAwOworICAgIH0K
IAogICAgIC8qIHByaW50ZigiJWQgJWQgJWQgJWRcbiIsIHN0LT5iaXRyYXRlX2Jwcywgc3QtPnN0
cmVhbV9jaGFubmVscywgc3QtPm1vZGUsIGN1cnJfYmFuZHdpZHRoKTsgKi8KICAgICBieXRlc190
YXJnZXQgPSBJTUlOKG1heF9kYXRhX2J5dGVzLXJlZHVuZGFuY3lfYnl0ZXMsIHN0LT5iaXRyYXRl
X2JwcyAqIGZyYW1lX3NpemUgLyAoc3QtPkZzICogOCkpIC0gMTsKQEAgLTE0NjcsNyArMTYzNiw3
IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qg
b3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAKICAgICBpZiAoc3QtPmFwcGxpY2F0aW9uID09
IE9QVVNfQVBQTElDQVRJT05fVk9JUCkKICAgICB7Ci0gICAgICAgaHBfY3V0b2ZmKHBjbSwgY3V0
b2ZmX0h6LCAmcGNtX2J1Zlt0b3RhbF9idWZmZXIqc3QtPmNoYW5uZWxzXSwgc3QtPmhwX21lbSwg
ZnJhbWVfc2l6ZSwgc3QtPmNoYW5uZWxzLCBzdC0+RnMpOworICAgICAgIGhwX2N1dG9mZihwY20s
IGN1dG9mZl9IeiwgJnBjbV9idWZbdG90YWxfYnVmZmVyKnN0LT5jaGFubmVsc10sIHN0LT5ocF9t
ZW0sIGZyYW1lX3NpemUsIHN0LT5jaGFubmVscywgc3QtPkZzLCBzdC0+YXJjaCk7CiAgICAgfSBl
bHNlIHsKICAgICAgICBkY19yZWplY3QocGNtLCAzLCAmcGNtX2J1Zlt0b3RhbF9idWZmZXIqc3Qt
PmNoYW5uZWxzXSwgc3QtPmhwX21lbSwgZnJhbWVfc2l6ZSwgc3QtPmNoYW5uZWxzLCBzdC0+RnMp
OwogICAgIH0KQEAgLTE0OTIsNiArMTY2MSw3IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0
aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAg
ICAgaWYgKHN0LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZKQogICAgIHsKICAgICAgICAgb3B1c19p
bnQzMiB0b3RhbF9iaXRSYXRlLCBjZWx0X3JhdGU7CisgICAgICAgIG9wdXNfaW50IGFjdGl2aXR5
OwogI2lmZGVmIEZJWEVEX1BPSU5UCiAgICAgICAgY29uc3Qgb3B1c19pbnQxNiAqcGNtX3NpbGs7
CiAjZWxzZQpAQCAtMTQ5OSwzMCArMTY2OSwzMSBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25h
dGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwog
ICAgICAgIEFMTE9DKHBjbV9zaWxrLCBzdC0+Y2hhbm5lbHMqZnJhbWVfc2l6ZSwgb3B1c19pbnQx
Nik7CiAjZW5kaWYKIAorICAgICAgICBhY3Rpdml0eSA9IFZBRF9OT19ERUNJU0lPTjsKKyNpZm5k
ZWYgRElTQUJMRV9GTE9BVF9BUEkKKyAgICAgICAgaWYoIGFuYWx5c2lzX2luZm8udmFsaWQgKSB7
CisgICAgICAgICAgICAvKiBJbmZvcm0gU0lMSyBhYm91dCB0aGUgT3B1cyBWQUQgZGVjaXNpb24g
Ki8KKyAgICAgICAgICAgIGFjdGl2aXR5ID0gKCBhbmFseXNpc19pbmZvLmFjdGl2aXR5X3Byb2Jh
YmlsaXR5ID49IERUWF9BQ1RJVklUWV9USFJFU0hPTEQgKTsKKyAgICAgICAgfQorI2VuZGlmCisK
ICAgICAgICAgLyogRGlzdHJpYnV0ZSBiaXRzIGJldHdlZW4gU0lMSyBhbmQgQ0VMVCAqLwogICAg
ICAgICB0b3RhbF9iaXRSYXRlID0gOCAqIGJ5dGVzX3RhcmdldCAqIGZyYW1lX3JhdGU7CiAgICAg
ICAgIGlmKCBzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCApIHsKLSAgICAgICAgICAgIGludCBIQl9n
YWluX3JlZjsKICAgICAgICAgICAgIC8qIEJhc2UgcmF0ZSBmb3IgU0lMSyAqLwotICAgICAgICAg
ICAgc3QtPnNpbGtfbW9kZS5iaXRSYXRlID0gc3QtPnN0cmVhbV9jaGFubmVscyAqICggNTAwMCAr
IDEwMDAgKiAoIHN0LT5GcyA9PSAxMDAgKiBmcmFtZV9zaXplICkgKTsKLSAgICAgICAgICAgIGlm
KCBjdXJyX2JhbmR3aWR0aCA9PSBPUFVTX0JBTkRXSURUSF9TVVBFUldJREVCQU5EICkgewotICAg
ICAgICAgICAgICAgIC8qIFNJTEsgZ2V0cyAyLzMgb2YgdGhlIHJlbWFpbmluZyBiaXRzICovCi0g
ICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5iaXRSYXRlICs9ICggdG90YWxfYml0UmF0ZSAt
IHN0LT5zaWxrX21vZGUuYml0UmF0ZSApICogMiAvIDM7Ci0gICAgICAgICAgICB9IGVsc2UgeyAv
KiBGVUxMQkFORCAqLwotICAgICAgICAgICAgICAgIC8qIFNJTEsgZ2V0cyAzLzUgb2YgdGhlIHJl
bWFpbmluZyBiaXRzICovCi0gICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5iaXRSYXRlICs9
ICggdG90YWxfYml0UmF0ZSAtIHN0LT5zaWxrX21vZGUuYml0UmF0ZSApICogMyAvIDU7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgICAgICAvKiBEb24ndCBsZXQgU0lMSyB1c2UgbW9yZSB0aGFuIDgw
JSAqLwotICAgICAgICAgICAgaWYoIHN0LT5zaWxrX21vZGUuYml0UmF0ZSA+IHRvdGFsX2JpdFJh
dGUgKiA0LzUgKSB7Ci0gICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5iaXRSYXRlID0gdG90
YWxfYml0UmF0ZSAqIDQvNTsKLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHN0LT5zaWxrX21v
ZGUuYml0UmF0ZSA9IGNvbXB1dGVfc2lsa19yYXRlX2Zvcl9oeWJyaWQodG90YWxfYml0UmF0ZSwK
KyAgICAgICAgICAgICAgICAgIGN1cnJfYmFuZHdpZHRoLCBzdC0+RnMgPT0gNTAgKiBmcmFtZV9z
aXplLCBzdC0+dXNlX3Ziciwgc3QtPnNpbGtfbW9kZS5MQlJSX2NvZGVkKTsKICAgICAgICAgICAg
IGlmICghc3QtPmVuZXJneV9tYXNraW5nKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
LyogSW5jcmVhc2luZ2x5IGF0dGVudWF0ZSBoaWdoIGJhbmQgd2hlbiBpdCBnZXRzIGFsbG9jYXRl
ZCBmZXdlciBiaXRzICovCiAgICAgICAgICAgICAgICBjZWx0X3JhdGUgPSB0b3RhbF9iaXRSYXRl
IC0gc3QtPnNpbGtfbW9kZS5iaXRSYXRlOwotICAgICAgICAgICAgICAgSEJfZ2Fpbl9yZWYgPSAo
Y3Vycl9iYW5kd2lkdGggPT0gT1BVU19CQU5EV0lEVEhfU1VQRVJXSURFQkFORCkgPyAzMDAwIDog
MzYwMDsKLSAgICAgICAgICAgICAgIEhCX2dhaW4gPSBTSEwzMigob3B1c192YWwzMiljZWx0X3Jh
dGUsIDkpIC8gU0hSMzIoKG9wdXNfdmFsMzIpY2VsdF9yYXRlICsgc3QtPnN0cmVhbV9jaGFubmVs
cyAqIEhCX2dhaW5fcmVmLCA2KTsKLSAgICAgICAgICAgICAgIEhCX2dhaW4gPSBIQl9nYWluIDwg
KG9wdXNfdmFsMzIpUTE1T05FKjYvNyA/IEhCX2dhaW4gKyBRMTVPTkUvNyA6IFExNU9ORTsKKyAg
ICAgICAgICAgICAgIEhCX2dhaW4gPSBRMTVPTkUgLSBTSFIzMihjZWx0X2V4cDIoLWNlbHRfcmF0
ZSAqIFFDT05TVDE2KDEuZi8xMDI0LCAxMCkpLCAxKTsKKyNpZm5kZWYgRklYRURfUE9JTlQKKyAg
ICAgICAgICAgICAgIC8qIFNhbml0eSBjaGVjayBvZiBoaWdoIGJhbmQgZ2FpbiAqLworICAgICAg
ICAgICAgICAgaWYgKGNlbHRfaXNuYW4oSEJfZ2FpbikpIHsKKyAgICAgICAgICAgICAgICAgICBI
Ql9nYWluID0gUTE1T05FOworICAgICAgICAgICAgICAgfQorI2VuZGlmCiAgICAgICAgICAgICB9
CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvKiBTSUxLIGdldHMgYWxsIGJpdHMgKi8K
QEAgLTE1NjksNyArMTc0MCw2IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNF
bmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAgICAg
ICAgIHN0LT5zaWxrX21vZGUuYml0UmF0ZSArPSAzKnJhdGVfb2Zmc2V0LzU7CiAgICAgICAgICAg
IGVsc2UKICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5iaXRSYXRlICs9IHJhdGVfb2Zmc2V0
OwotICAgICAgICAgICBieXRlc190YXJnZXQgKz0gcmF0ZV9vZmZzZXQgKiBmcmFtZV9zaXplIC8g
KDggKiBzdC0+RnMpOwogICAgICAgICB9CiAKICAgICAgICAgc3QtPnNpbGtfbW9kZS5wYXlsb2Fk
U2l6ZV9tcyA9IDEwMDAgKiBmcmFtZV9zaXplIC8gc3QtPkZzOwpAQCAtMTU5MCw0MCArMTc2MCw1
MiBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0
IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5t
aW5JbnRlcm5hbFNhbXBsZVJhdGUgPSA4MDAwOwogICAgICAgICB9CiAKKyAgICAgICAgc3QtPnNp
bGtfbW9kZS5tYXhJbnRlcm5hbFNhbXBsZVJhdGUgPSAxNjAwMDsKICAgICAgICAgaWYgKHN0LT5t
b2RlID09IE1PREVfU0lMS19PTkxZKQogICAgICAgICB7CiAgICAgICAgICAgIG9wdXNfaW50MzIg
ZWZmZWN0aXZlX21heF9yYXRlID0gbWF4X3JhdGU7Ci0gICAgICAgICAgIHN0LT5zaWxrX21vZGUu
bWF4SW50ZXJuYWxTYW1wbGVSYXRlID0gMTYwMDA7CiAgICAgICAgICAgIGlmIChmcmFtZV9yYXRl
ID4gNTApCiAgICAgICAgICAgICAgIGVmZmVjdGl2ZV9tYXhfcmF0ZSA9IGVmZmVjdGl2ZV9tYXhf
cmF0ZSoyLzM7Ci0gICAgICAgICAgIGlmIChlZmZlY3RpdmVfbWF4X3JhdGUgPCAxMzAwMCkKKyAg
ICAgICAgICAgaWYgKGVmZmVjdGl2ZV9tYXhfcmF0ZSA8IDgwMDApCiAgICAgICAgICAgIHsKICAg
ICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5tYXhJbnRlcm5hbFNhbXBsZVJhdGUgPSAxMjAwMDsK
ICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5kZXNpcmVkSW50ZXJuYWxTYW1wbGVSYXRlID0g
SU1JTigxMjAwMCwgc3QtPnNpbGtfbW9kZS5kZXNpcmVkSW50ZXJuYWxTYW1wbGVSYXRlKTsKICAg
ICAgICAgICAgfQotICAgICAgICAgICBpZiAoZWZmZWN0aXZlX21heF9yYXRlIDwgOTYwMCkKKyAg
ICAgICAgICAgaWYgKGVmZmVjdGl2ZV9tYXhfcmF0ZSA8IDcwMDApCiAgICAgICAgICAgIHsKICAg
ICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5tYXhJbnRlcm5hbFNhbXBsZVJhdGUgPSA4MDAwOwog
ICAgICAgICAgICAgICBzdC0+c2lsa19tb2RlLmRlc2lyZWRJbnRlcm5hbFNhbXBsZVJhdGUgPSBJ
TUlOKDgwMDAsIHN0LT5zaWxrX21vZGUuZGVzaXJlZEludGVybmFsU2FtcGxlUmF0ZSk7CiAgICAg
ICAgICAgIH0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5tYXhJ
bnRlcm5hbFNhbXBsZVJhdGUgPSAxNjAwMDsKICAgICAgICAgfQogCiAgICAgICAgIHN0LT5zaWxr
X21vZGUudXNlQ0JSID0gIXN0LT51c2VfdmJyOwogCiAgICAgICAgIC8qIENhbGwgU0lMSyBlbmNv
ZGVyIGZvciB0aGUgbG93IGJhbmQgKi8KLSAgICAgICAgbkJ5dGVzID0gSU1JTigxMjc1LCBtYXhf
ZGF0YV9ieXRlcy0xLXJlZHVuZGFuY3lfYnl0ZXMpOwogCi0gICAgICAgIHN0LT5zaWxrX21vZGUu
bWF4Qml0cyA9IG5CeXRlcyo4OwotICAgICAgICAvKiBPbmx5IGFsbG93IHVwIHRvIDkwJSBvZiB0
aGUgYml0cyBmb3IgaHlicmlkIG1vZGUqLwotICAgICAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9I
WUJSSUQpCi0gICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4Qml0cyA9IChvcHVzX2ludDMyKXN0
LT5zaWxrX21vZGUubWF4Qml0cyo5LzEwOworICAgICAgICAvKiBNYXggYml0cyBmb3IgU0lMSywg
Y291bnRpbmcgVG9DLCByZWR1bmRhbmN5IGJ5dGVzLCBhbmQgb3B0aW9uYWxseSByZWR1bmRhbmN5
LiAqLworICAgICAgICBzdC0+c2lsa19tb2RlLm1heEJpdHMgPSAobWF4X2RhdGFfYnl0ZXMtMSkq
ODsKKyAgICAgICAgaWYgKHJlZHVuZGFuY3kgJiYgcmVkdW5kYW5jeV9ieXRlcyA+PSAyKQorICAg
ICAgICB7CisgICAgICAgICAgIC8qIENvdW50aW5nIDEgYml0IGZvciByZWR1bmRhbmN5IHBvc2l0
aW9uIGFuZCAyMCBiaXRzIGZvciBmbGFnK3NpemUgKG9ubHkgZm9yIGh5YnJpZCkuICovCisgICAg
ICAgICAgIHN0LT5zaWxrX21vZGUubWF4Qml0cyAtPSByZWR1bmRhbmN5X2J5dGVzKjggKyAxOwor
ICAgICAgICAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQpCisgICAgICAgICAgICAgIHN0
LT5zaWxrX21vZGUubWF4Qml0cyAtPSAyMDsKKyAgICAgICAgfQogICAgICAgICBpZiAoc3QtPnNp
bGtfbW9kZS51c2VDQlIpCiAgICAgICAgIHsKLSAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5tYXhC
aXRzID0gKHN0LT5zaWxrX21vZGUuYml0UmF0ZSAqIGZyYW1lX3NpemUgLyAoc3QtPkZzICogOCkp
Kjg7Ci0gICAgICAgICAgIC8qIFJlZHVjZSB0aGUgaW5pdGlhbCB0YXJnZXQgdG8gbWFrZSBpdCBl
YXNpZXIgdG8gcmVhY2ggdGhlIENCUiByYXRlICovCi0gICAgICAgICAgIHN0LT5zaWxrX21vZGUu
Yml0UmF0ZSA9IElNQVgoMSwgc3QtPnNpbGtfbW9kZS5iaXRSYXRlLTIwMDApOworICAgICAgICAg
ICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQpCisgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgc3QtPnNpbGtfbW9kZS5tYXhCaXRzID0gSU1JTihzdC0+c2lsa19tb2RlLm1heEJpdHMsIHN0
LT5zaWxrX21vZGUuYml0UmF0ZSAqIGZyYW1lX3NpemUgLyBzdC0+RnMpOworICAgICAgICAgICB9
CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgIC8qIENvbnN0cmFpbmVkIFZCUi4gKi8KKyAg
ICAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQorICAgICAgICAgICB7CisgICAg
ICAgICAgICAgIC8qIENvbXB1dGUgU0lMSyBiaXRyYXRlIGNvcnJlc3BvbmRpbmcgdG8gdGhlIG1h
eCB0b3RhbCBiaXRzIGF2YWlsYWJsZSAqLworICAgICAgICAgICAgICBvcHVzX2ludDMyIG1heEJp
dFJhdGUgPSBjb21wdXRlX3NpbGtfcmF0ZV9mb3JfaHlicmlkKHN0LT5zaWxrX21vZGUubWF4Qml0
cypzdC0+RnMgLyBmcmFtZV9zaXplLAorICAgICAgICAgICAgICAgICAgICBjdXJyX2JhbmR3aWR0
aCwgc3QtPkZzID09IDUwICogZnJhbWVfc2l6ZSwgc3QtPnVzZV92YnIsIHN0LT5zaWxrX21vZGUu
TEJSUl9jb2RlZCk7CisgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4Qml0cyA9IG1heEJp
dFJhdGUgKiBmcmFtZV9zaXplIC8gc3QtPkZzOworICAgICAgICAgICB9CiAgICAgICAgIH0KIAog
ICAgICAgICBpZiAocHJlZmlsbCkKQEAgLTE2NDYsNyArMTgyOCw3IEBAIG9wdXNfaW50MzIgb3B1
c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBp
bnQgZnJhbWVfCiAgICAgICAgICAgICBmb3IgKGk9MDtpPHN0LT5lbmNvZGVyX2J1ZmZlcipzdC0+
Y2hhbm5lbHM7aSsrKQogICAgICAgICAgICAgICAgIHBjbV9zaWxrW2ldID0gRkxPQVQySU5UMTYo
c3QtPmRlbGF5X2J1ZmZlcltpXSk7CiAjZW5kaWYKLSAgICAgICAgICAgIHNpbGtfRW5jb2RlKCBz
aWxrX2VuYywgJnN0LT5zaWxrX21vZGUsIHBjbV9zaWxrLCBzdC0+ZW5jb2Rlcl9idWZmZXIsIE5V
TEwsICZ6ZXJvLCAxICk7CisgICAgICAgICAgICBzaWxrX0VuY29kZSggc2lsa19lbmMsICZzdC0+
c2lsa19tb2RlLCBwY21fc2lsaywgc3QtPmVuY29kZXJfYnVmZmVyLCBOVUxMLCAmemVybywgMSwg
YWN0aXZpdHkgKTsKICAgICAgICAgfQogCiAjaWZkZWYgRklYRURfUE9JTlQKQEAgLTE2NTUsMjAg
KzE4MzcsMTQgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0
LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAgZm9yIChpPTA7aTxm
cmFtZV9zaXplKnN0LT5jaGFubmVscztpKyspCiAgICAgICAgICAgICBwY21fc2lsa1tpXSA9IEZM
T0FUMklOVDE2KHBjbV9idWZbdG90YWxfYnVmZmVyKnN0LT5jaGFubmVscyArIGldKTsKICNlbmRp
ZgotICAgICAgICByZXQgPSBzaWxrX0VuY29kZSggc2lsa19lbmMsICZzdC0+c2lsa19tb2RlLCBw
Y21fc2lsaywgZnJhbWVfc2l6ZSwgJmVuYywgJm5CeXRlcywgMCApOworICAgICAgICByZXQgPSBz
aWxrX0VuY29kZSggc2lsa19lbmMsICZzdC0+c2lsa19tb2RlLCBwY21fc2lsaywgZnJhbWVfc2l6
ZSwgJmVuYywgJm5CeXRlcywgMCwgYWN0aXZpdHkgKTsKICAgICAgICAgaWYoIHJldCApIHsKICAg
ICAgICAgICAgIC8qZnByaW50ZiAoc3RkZXJyLCAiU0lMSyBlbmNvZGUgZXJyb3I6ICVkXG4iLCBy
ZXQpOyovCiAgICAgICAgICAgICAvKiBIYW5kbGUgZXJyb3IgKi8KICAgICAgICAgICAgUkVTVE9S
RV9TVEFDSzsKICAgICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJOQUxfRVJST1I7CiAgICAgICAg
IH0KLSAgICAgICAgaWYgKG5CeXRlcz09MCkKLSAgICAgICAgewotICAgICAgICAgICBzdC0+cmFu
Z2VGaW5hbCA9IDA7Ci0gICAgICAgICAgIGRhdGFbLTFdID0gZ2VuX3RvYyhzdC0+bW9kZSwgc3Qt
PkZzL2ZyYW1lX3NpemUsIGN1cnJfYmFuZHdpZHRoLCBzdC0+c3RyZWFtX2NoYW5uZWxzKTsKLSAg
ICAgICAgICAgUkVTVE9SRV9TVEFDSzsKLSAgICAgICAgICAgcmV0dXJuIDE7Ci0gICAgICAgIH0K
KwogICAgICAgICAvKiBFeHRyYWN0IFNJTEsgaW50ZXJuYWwgYmFuZHdpZHRoIGZvciBzaWduYWxp
bmcgaW4gZmlyc3QgYnl0ZSAqLwogICAgICAgICBpZiggc3QtPm1vZGUgPT0gTU9ERV9TSUxLX09O
TFkgKSB7CiAgICAgICAgICAgICBpZiggc3QtPnNpbGtfbW9kZS5pbnRlcm5hbFNhbXBsZVJhdGUg
PT0gODAwMCApIHsKQEAgLTE2ODIsMTEgKzE4NTgsMjEgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29k
ZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFt
ZV8KICAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBzdC0+c2lsa19tb2RlLmludGVybmFsU2FtcGxl
UmF0ZSA9PSAxNjAwMCApOwogICAgICAgICB9CiAKLSAgICAgICAgc3QtPnNpbGtfbW9kZS5vcHVz
Q2FuU3dpdGNoID0gc3QtPnNpbGtfbW9kZS5zd2l0Y2hSZWFkeTsKKyAgICAgICAgc3QtPnNpbGtf
bW9kZS5vcHVzQ2FuU3dpdGNoID0gc3QtPnNpbGtfbW9kZS5zd2l0Y2hSZWFkeSAmJiAhc3QtPm5v
bmZpbmFsX2ZyYW1lOworCisgICAgICAgIGlmIChuQnl0ZXM9PTApCisgICAgICAgIHsKKyAgICAg
ICAgICAgc3QtPnJhbmdlRmluYWwgPSAwOworICAgICAgICAgICBkYXRhWy0xXSA9IGdlbl90b2Mo
c3QtPm1vZGUsIHN0LT5Gcy9mcmFtZV9zaXplLCBjdXJyX2JhbmR3aWR0aCwgc3QtPnN0cmVhbV9j
aGFubmVscyk7CisgICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7CisgICAgICAgICAgIHJldHVybiAx
OworICAgICAgICB9CisKICAgICAgICAgLyogRklYTUU6IEhvdyBkbyB3ZSBhbGxvY2F0ZSB0aGUg
cmVkdW5kYW5jeSBmb3IgQ0JSPyAqLwogICAgICAgICBpZiAoc3QtPnNpbGtfbW9kZS5vcHVzQ2Fu
U3dpdGNoKQogICAgICAgICB7Ci0gICAgICAgICAgIHJlZHVuZGFuY3kgPSAxOworICAgICAgICAg
ICByZWR1bmRhbmN5X2J5dGVzID0gY29tcHV0ZV9yZWR1bmRhbmN5X2J5dGVzKG1heF9kYXRhX2J5
dGVzLCBzdC0+Yml0cmF0ZV9icHMsIGZyYW1lX3JhdGUsIHN0LT5zdHJlYW1fY2hhbm5lbHMpOwor
ICAgICAgICAgICByZWR1bmRhbmN5ID0gKHJlZHVuZGFuY3lfYnl0ZXMgIT0gMCk7CiAgICAgICAg
ICAgIGNlbHRfdG9fc2lsayA9IDA7CiAgICAgICAgICAgIHN0LT5zaWxrX2J3X3N3aXRjaCA9IDE7
CiAgICAgICAgIH0KQEAgLTE3MjcsNDAgKzE5MTMsMTggQEAgb3B1c19pbnQzMiBvcHVzX2VuY29k
ZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFt
ZV8KIAogICAgICAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQpCiAgICAgICAgIHsKLSAg
ICAgICAgICAgIGludCBsZW47Ci0KLSAgICAgICAgICAgIGxlbiA9IChlY190ZWxsKCZlbmMpKzcp
Pj4zOwotICAgICAgICAgICAgaWYgKHJlZHVuZGFuY3kpCi0gICAgICAgICAgICAgICBsZW4gKz0g
c3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQgPyAzIDogMTsKICAgICAgICAgICAgIGlmKCBzdC0+dXNl
X3ZiciApIHsKLSAgICAgICAgICAgICAgICBuYl9jb21wcl9ieXRlcyA9IGxlbiArIGJ5dGVzX3Rh
cmdldCAtIChzdC0+c2lsa19tb2RlLmJpdFJhdGUgKiBmcmFtZV9zaXplKSAvICg4ICogc3QtPkZz
KTsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgLyogY2hlY2sgaWYgU0lM
SyB1c2VkIHVwIHRvbyBtdWNoICovCi0gICAgICAgICAgICAgICAgbmJfY29tcHJfYnl0ZXMgPSBs
ZW4gPiBieXRlc190YXJnZXQgPyBsZW4gOiBieXRlc190YXJnZXQ7CisgICAgICAgICAgICAgICAg
Y2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfQklUUkFURShzdC0+Yml0cmF0ZV9i
cHMtc3QtPnNpbGtfbW9kZS5iaXRSYXRlKSk7CisgICAgICAgICAgICAgICAgY2VsdF9lbmNvZGVy
X2N0bChjZWx0X2VuYywgT1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoMCkpOwogICAgICAgICAgICAg
fQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgaWYgKHN0LT51c2VfdmJyKQogICAgICAg
ICAgICAgewotICAgICAgICAgICAgICAgIG9wdXNfaW50MzIgYm9udXM9MDsKLSNpZm5kZWYgRElT
QUJMRV9GTE9BVF9BUEkKLSAgICAgICAgICAgICAgICBpZiAoc3QtPnZhcmlhYmxlX2R1cmF0aW9u
PT1PUFVTX0ZSQU1FU0laRV9WQVJJQUJMRSAmJiBmcmFtZV9zaXplICE9IHN0LT5Gcy81MCkKLSAg
ICAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgICAgYm9udXMgPSAoNjAqc3QtPnN0cmVh
bV9jaGFubmVscys0MCkqKHN0LT5Gcy9mcmFtZV9zaXplLTUwKTsKLSAgICAgICAgICAgICAgICAg
ICBpZiAoYW5hbHlzaXNfaW5mby52YWxpZCkKLSAgICAgICAgICAgICAgICAgICAgICBib251cyA9
IChvcHVzX2ludDMyKShib251cyooMS5mKy41ZiphbmFseXNpc19pbmZvLnRvbmFsaXR5KSk7Ci0g
ICAgICAgICAgICAgICAgfQotI2VuZGlmCiAgICAgICAgICAgICAgICAgY2VsdF9lbmNvZGVyX2N0
bChjZWx0X2VuYywgT1BVU19TRVRfVkJSKDEpKTsKICAgICAgICAgICAgICAgICBjZWx0X2VuY29k
ZXJfY3RsKGNlbHRfZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVChzdC0+dmJyX2NvbnN0cmFp
bnQpKTsKLSAgICAgICAgICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBPUFVTX1NF
VF9CSVRSQVRFKHN0LT5iaXRyYXRlX2Jwcytib251cykpOwotICAgICAgICAgICAgICAgIG5iX2Nv
bXByX2J5dGVzID0gbWF4X2RhdGFfYnl0ZXMtMS1yZWR1bmRhbmN5X2J5dGVzOwotICAgICAgICAg
ICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBuYl9jb21wcl9ieXRlcyA9IGJ5dGVzX3Rhcmdl
dDsKKyAgICAgICAgICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBPUFVTX1NFVF9C
SVRSQVRFKHN0LT5iaXRyYXRlX2JwcykpOwogICAgICAgICAgICAgfQogICAgICAgICB9Ci0KLSAg
ICB9IGVsc2UgewotICAgICAgICBuYl9jb21wcl9ieXRlcyA9IDA7CiAgICAgfQogCiAgICAgQUxM
T0ModG1wX3ByZWZpbGwsIHN0LT5jaGFubmVscypzdC0+RnMvNDAwLCBvcHVzX3ZhbDE2KTsKQEAg
LTE3ODYsNyArMTk1MCw3IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNv
ZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgfQogICAgIHN0
LT5wcmV2X0hCX2dhaW4gPSBIQl9nYWluOwogICAgIGlmIChzdC0+bW9kZSAhPSBNT0RFX0hZQlJJ
RCB8fCBzdC0+c3RyZWFtX2NoYW5uZWxzPT0xKQotICAgICAgIHN0LT5zaWxrX21vZGUuc3RlcmVv
V2lkdGhfUTE0ID0gSU1JTigoMTw8MTQpLDIqSU1BWCgwLGVxdWl2X3JhdGUtMzAwMDApKTsKKyAg
ICAgICBzdC0+c2lsa19tb2RlLnN0ZXJlb1dpZHRoX1ExNCA9IElNSU4oKDE8PDE0KSwyKklNQVgo
MCxlcXVpdl9yYXRlLTI0MDAwKSk7CiAgICAgaWYoICFzdC0+ZW5lcmd5X21hc2tpbmcgJiYgc3Qt
PmNoYW5uZWxzID09IDIgKSB7CiAgICAgICAgIC8qIEFwcGx5IHN0ZXJlbyB3aWR0aCByZWR1Y3Rp
b24gKGF0IGxvdyBiaXRyYXRlcykgKi8KICAgICAgICAgaWYoIHN0LT5oeWJyaWRfc3RlcmVvX3dp
ZHRoX1ExNCA8ICgxIDw8IDE0KSB8fCBzdC0+c2lsa19tb2RlLnN0ZXJlb1dpZHRoX1ExNCA8ICgx
IDw8IDE0KSApIHsKQEAgLTE4MDksMTkgKzE5NzMsMjMgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29k
ZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFt
ZV8KICAgICBpZiAoIHN0LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZICYmIGVjX3RlbGwoJmVuYykr
MTcrMjAqKHN0LT5tb2RlID09IE1PREVfSFlCUklEKSA8PSA4KihtYXhfZGF0YV9ieXRlcy0xKSkK
ICAgICB7CiAgICAgICAgIC8qIEZvciBTSUxLIG1vZGUsIHRoZSByZWR1bmRhbmN5IGlzIGluZmVy
cmVkIGZyb20gdGhlIGxlbmd0aCAqLwotICAgICAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJS
SUQgJiYgKHJlZHVuZGFuY3kgfHwgZWNfdGVsbCgmZW5jKSszNyA8PSA4Km5iX2NvbXByX2J5dGVz
KSkKKyAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQogICAgICAgICAgICBlY19l
bmNfYml0X2xvZ3AoJmVuYywgcmVkdW5kYW5jeSwgMTIpOwogICAgICAgICBpZiAocmVkdW5kYW5j
eSkKICAgICAgICAgewogICAgICAgICAgICAgaW50IG1heF9yZWR1bmRhbmN5OwogICAgICAgICAg
ICAgZWNfZW5jX2JpdF9sb2dwKCZlbmMsIGNlbHRfdG9fc2lsaywgMSk7CiAgICAgICAgICAgICBp
ZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQpCi0gICAgICAgICAgICAgICBtYXhfcmVkdW5kYW5j
eSA9IChtYXhfZGF0YV9ieXRlcy0xKS1uYl9jb21wcl9ieXRlczsKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgIC8qIFJlc2VydmUgdGhlIDggYml0cyBuZWVkZWQgZm9yIHRoZSByZWR1bmRh
bmN5IGxlbmd0aCwKKyAgICAgICAgICAgICAgICAgIGFuZCBhdCBsZWFzdCBhIGZldyBiaXRzIGZv
ciBDRUxUIGlmIHBvc3NpYmxlICovCisgICAgICAgICAgICAgICBtYXhfcmVkdW5kYW5jeSA9ICht
YXhfZGF0YV9ieXRlcy0xKS0oKGVjX3RlbGwoJmVuYykrOCszKzcpPj4zKTsKKyAgICAgICAgICAg
IH0KICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgIG1heF9yZWR1bmRhbmN5ID0gKG1h
eF9kYXRhX2J5dGVzLTEpLSgoZWNfdGVsbCgmZW5jKSs3KT4+Myk7CiAgICAgICAgICAgICAvKiBU
YXJnZXQgdGhlIHNhbWUgYml0LXJhdGUgZm9yIHJlZHVuZGFuY3kgYXMgZm9yIHRoZSByZXN0LAog
ICAgICAgICAgICAgICAgdXAgdG8gYSBtYXggb2YgMjU3IGJ5dGVzICovCi0gICAgICAgICAgICBy
ZWR1bmRhbmN5X2J5dGVzID0gSU1JTihtYXhfcmVkdW5kYW5jeSwgc3QtPmJpdHJhdGVfYnBzLzE2
MDApOworICAgICAgICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9IElNSU4obWF4X3JlZHVuZGFuY3ks
IHJlZHVuZGFuY3lfYnl0ZXMpOwogICAgICAgICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9IElNSU4o
MjU3LCBJTUFYKDIsIHJlZHVuZGFuY3lfYnl0ZXMpKTsKICAgICAgICAgICAgIGlmIChzdC0+bW9k
ZSA9PSBNT0RFX0hZQlJJRCkKICAgICAgICAgICAgICAgICBlY19lbmNfdWludCgmZW5jLCByZWR1
bmRhbmN5X2J5dGVzLTIsIDI1Nik7CkBAIC0xODQzLDcgKzIwMTEsNyBAQCBvcHVzX2ludDMyIG9w
dXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwg
aW50IGZyYW1lXwogICAgICAgICBlY19lbmNfZG9uZSgmZW5jKTsKICAgICAgICAgbmJfY29tcHJf
Ynl0ZXMgPSByZXQ7CiAgICAgfSBlbHNlIHsKLSAgICAgICBuYl9jb21wcl9ieXRlcyA9IElNSU4o
KG1heF9kYXRhX2J5dGVzLTEpLXJlZHVuZGFuY3lfYnl0ZXMsIG5iX2NvbXByX2J5dGVzKTsKKyAg
ICAgICBuYl9jb21wcl9ieXRlcyA9IChtYXhfZGF0YV9ieXRlcy0xKS1yZWR1bmRhbmN5X2J5dGVz
OwogICAgICAgIGVjX2VuY19zaHJpbmsoJmVuYywgbmJfY29tcHJfYnl0ZXMpOwogICAgIH0KIApA
QCAtMTg1MSw2ICsyMDE5LDE0IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNF
bmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgaWYgKHJl
ZHVuZGFuY3kgfHwgc3QtPm1vZGUgIT0gTU9ERV9TSUxLX09OTFkpCiAgICAgICAgY2VsdF9lbmNv
ZGVyX2N0bChjZWx0X2VuYywgQ0VMVF9TRVRfQU5BTFlTSVMoJmFuYWx5c2lzX2luZm8pKTsKICNl
bmRpZgorICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCkgeworICAgICAgIFNJTEtJbmZv
IGluZm87CisgICAgICAgaW5mby5zaWduYWxUeXBlID0gc3QtPnNpbGtfbW9kZS5zaWduYWxUeXBl
OworICAgICAgIGluZm8ub2Zmc2V0ID0gc3QtPnNpbGtfbW9kZS5vZmZzZXQ7CisgICAgICAgY2Vs
dF9lbmNvZGVyX2N0bChjZWx0X2VuYywgQ0VMVF9TRVRfU0lMS19JTkZPKCZpbmZvKSk7CisgICAg
fSBlbHNlIHsKKyAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBDRUxUX1NFVF9TSUxL
X0lORk8oKFNJTEtJbmZvKilOVUxMKSk7CisgICAgfQogCiAgICAgLyogNSBtcyByZWR1bmRhbnQg
ZnJhbWUgZm9yIENFTFQtPlNJTEsgKi8KICAgICBpZiAocmVkdW5kYW5jeSAmJiBjZWx0X3RvX3Np
bGspCkBAIC0xODU4LDYgKzIwMzQsNyBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShP
cHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAg
ICBpbnQgZXJyOwogICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBDRUxUX1NFVF9T
VEFSVF9CQU5EKDApKTsKICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19T
RVRfVkJSKDApKTsKKyAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRf
QklUUkFURShPUFVTX0JJVFJBVEVfTUFYKSk7CiAgICAgICAgIGVyciA9IGNlbHRfZW5jb2RlX3dp
dGhfZWMoY2VsdF9lbmMsIHBjbV9idWYsIHN0LT5Gcy8yMDAsIGRhdGErbmJfY29tcHJfYnl0ZXMs
IHJlZHVuZGFuY3lfYnl0ZXMsIE5VTEwpOwogICAgICAgICBpZiAoZXJyIDwgMCkKICAgICAgICAg
ewpAQCAtMTg4MSwxNSArMjA1OCwyNSBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShP
cHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAg
ICAgICBjZWx0X2VuY29kZV93aXRoX2VjKGNlbHRfZW5jLCB0bXBfcHJlZmlsbCwgc3QtPkZzLzQw
MCwgZHVtbXksIDIsIE5VTEwpOwogICAgICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5j
LCBDRUxUX1NFVF9QUkVESUNUSU9OKDApKTsKICAgICAgICAgfQotICAgICAgICAvKiBJZiBmYWxz
ZSwgd2UgYWxyZWFkeSBidXN0ZWQgdGhlIGJ1ZGdldCBhbmQgd2UnbGwgZW5kIHVwIHdpdGggYSAi
UExDIHBhY2tldCIgKi8KKyAgICAgICAgLyogSWYgZmFsc2UsIHdlIGFscmVhZHkgYnVzdGVkIHRo
ZSBidWRnZXQgYW5kIHdlJ2xsIGVuZCB1cCB3aXRoIGEgIlBMQyBmcmFtZSIgKi8KICAgICAgICAg
aWYgKGVjX3RlbGwoJmVuYykgPD0gOCpuYl9jb21wcl9ieXRlcykKICAgICAgICAgeworICAgICAg
ICAgICAvKiBTZXQgdGhlIGJpdHJhdGUgYWdhaW4gaWYgaXQgd2FzIG92ZXJyaWRkZW4gaW4gdGhl
IHJlZHVuZGFuY3kgY29kZSBhYm92ZSovCisgICAgICAgICAgIGlmIChyZWR1bmRhbmN5ICYmIGNl
bHRfdG9fc2lsayAmJiBzdC0+bW9kZT09TU9ERV9IWUJSSUQgJiYgc3QtPnVzZV92YnIpCisgICAg
ICAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX0JJVFJBVEUoc3Qt
PmJpdHJhdGVfYnBzLXN0LT5zaWxrX21vZGUuYml0UmF0ZSkpOworICAgICAgICAgICBjZWx0X2Vu
Y29kZXJfY3RsKGNlbHRfZW5jLCBPUFVTX1NFVF9WQlIoc3QtPnVzZV92YnIpKTsKICAgICAgICAg
ICAgcmV0ID0gY2VsdF9lbmNvZGVfd2l0aF9lYyhjZWx0X2VuYywgcGNtX2J1ZiwgZnJhbWVfc2l6
ZSwgTlVMTCwgbmJfY29tcHJfYnl0ZXMsICZlbmMpOwogICAgICAgICAgICBpZiAocmV0IDwgMCkK
ICAgICAgICAgICAgewogICAgICAgICAgICAgICBSRVNUT1JFX1NUQUNLOwogICAgICAgICAgICAg
ICByZXR1cm4gT1BVU19JTlRFUk5BTF9FUlJPUjsKICAgICAgICAgICAgfQorICAgICAgICAgICAv
KiBQdXQgQ0VMVC0+U0lMSyByZWR1bmRhbmN5IGRhdGEgaW4gdGhlIHJpZ2h0IHBsYWNlLiAqLwor
ICAgICAgICAgICBpZiAocmVkdW5kYW5jeSAmJiBjZWx0X3RvX3NpbGsgJiYgc3QtPm1vZGU9PU1P
REVfSFlCUklEICYmIHN0LT51c2VfdmJyKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgIE9Q
VVNfTU9WRShkYXRhK3JldCwgZGF0YStuYl9jb21wcl9ieXRlcywgcmVkdW5kYW5jeV9ieXRlcyk7
CisgICAgICAgICAgICAgIG5iX2NvbXByX2J5dGVzID0gbmJfY29tcHJfYnl0ZXMrcmVkdW5kYW5j
eV9ieXRlczsKKyAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQogCkBAIC0xOTA1LDcgKzIw
OTIsMTUgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBj
b25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAgY2VsdF9lbmNvZGVyX2N0
bChjZWx0X2VuYywgT1BVU19SRVNFVF9TVEFURSk7CiAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwo
Y2VsdF9lbmMsIENFTFRfU0VUX1NUQVJUX0JBTkQoMCkpOwogICAgICAgICBjZWx0X2VuY29kZXJf
Y3RsKGNlbHRfZW5jLCBDRUxUX1NFVF9QUkVESUNUSU9OKDApKTsKKyAgICAgICAgY2VsdF9lbmNv
ZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfVkJSKDApKTsKKyAgICAgICAgY2VsdF9lbmNvZGVy
X2N0bChjZWx0X2VuYywgT1BVU19TRVRfQklUUkFURShPUFVTX0JJVFJBVEVfTUFYKSk7CiAKKyAg
ICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQorICAgICAgICB7CisgICAgICAgICAg
IC8qIFNocmluayBwYWNrZXQgdG8gd2hhdCB0aGUgZW5jb2RlciBhY3R1YWxseSB1c2VkLiAqLwor
ICAgICAgICAgICBuYl9jb21wcl9ieXRlcyA9IHJldDsKKyAgICAgICAgICAgZWNfZW5jX3Nocmlu
aygmZW5jLCBuYl9jb21wcl9ieXRlcyk7CisgICAgICAgIH0KICAgICAgICAgLyogTk9URTogV2Ug
Y291bGQgc3BlZWQgdGhpcyB1cCBzbGlnaHRseSAoYXQgdGhlIGV4cGVuc2Ugb2YgY29kZSBzaXpl
KSBieSBqdXN0IGFkZGluZyBhIGZ1bmN0aW9uIHRoYXQgcHJlZmlsbHMgdGhlIGJ1ZmZlciAqLwog
ICAgICAgICBjZWx0X2VuY29kZV93aXRoX2VjKGNlbHRfZW5jLCBwY21fYnVmK3N0LT5jaGFubmVs
cyooZnJhbWVfc2l6ZS1OMi1ONCksIE40LCBkdW1teSwgMiwgTlVMTCk7CiAKQEAgLTE5MzUsNiAr
MjEzMCwyMSBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3Qs
IGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogCiAgICAgc3QtPmZpcnN0ID0gMDsK
IAorICAgIC8qIERUWCBkZWNpc2lvbiAqLworI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQorICAg
IGlmIChzdC0+dXNlX2R0eCAmJiAoYW5hbHlzaXNfaW5mby52YWxpZCB8fCBpc19zaWxlbmNlKSkK
KyAgICB7CisgICAgICAgaWYgKGRlY2lkZV9kdHhfbW9kZShhbmFseXNpc19pbmZvLmFjdGl2aXR5
X3Byb2JhYmlsaXR5LCAmc3QtPm5iX25vX2FjdGl2aXR5X2ZyYW1lcywKKyAgICAgICAgICAgICBz
dC0+cGVha19zaWduYWxfZW5lcmd5LCBwY20sIGZyYW1lX3NpemUsIHN0LT5jaGFubmVscywgaXNf
c2lsZW5jZSwgc3QtPmFyY2gpKQorICAgICAgIHsKKyAgICAgICAgICBzdC0+cmFuZ2VGaW5hbCA9
IDA7CisgICAgICAgICAgZGF0YVswXSA9IGdlbl90b2Moc3QtPm1vZGUsIHN0LT5Gcy9mcmFtZV9z
aXplLCBjdXJyX2JhbmR3aWR0aCwgc3QtPnN0cmVhbV9jaGFubmVscyk7CisgICAgICAgICAgUkVT
VE9SRV9TVEFDSzsKKyAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICB9CisgICAgfQorI2VuZGlm
CisKICAgICAvKiBJbiB0aGUgdW5saWtlbHkgY2FzZSB0aGF0IHRoZSBTSUxLIGVuY29kZXIgYnVz
dGVkIGl0cyB0YXJnZXQsIHRlbGwKICAgICAgICB0aGUgZGVjb2RlciB0byBjYWxsIHRoZSBQTEMg
Ki8KICAgICBpZiAoZWNfdGVsbCgmZW5jKSA+IChtYXhfZGF0YV9ieXRlcy0xKSo4KQpAQCAtMTk2
Miw3ICsyMTcyLDYgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIg
KnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICBpZiAoIXN0LT51c2Vf
dmJyKQogICAgIHsKICAgICAgICBpZiAob3B1c19wYWNrZXRfcGFkKGRhdGEsIHJldCwgbWF4X2Rh
dGFfYnl0ZXMpICE9IE9QVVNfT0spCi0KICAgICAgICB7CiAgICAgICAgICAgUkVTVE9SRV9TVEFD
SzsKICAgICAgICAgICByZXR1cm4gT1BVU19JTlRFUk5BTF9FUlJPUjsKQEAgLTE5ODEsMTggKzIx
OTAsMTUgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9mbG9hdChPcHVzRW5jb2RlciAqc3QsIGNv
bnN0IGZsb2F0ICpwY20sIGludCBhbmFseXNpc19mcmEKIHsKICAgIGludCBpLCByZXQ7CiAgICBp
bnQgZnJhbWVfc2l6ZTsKLSAgIGludCBkZWxheV9jb21wZW5zYXRpb247CiAgICBWQVJERUNMKG9w
dXNfaW50MTYsIGluKTsKICAgIEFMTE9DX1NUQUNLOwogCi0gICBpZiAoc3QtPmFwcGxpY2F0aW9u
ID09IE9QVVNfQVBQTElDQVRJT05fUkVTVFJJQ1RFRF9MT1dERUxBWSkKLSAgICAgIGRlbGF5X2Nv
bXBlbnNhdGlvbiA9IDA7Ci0gICBlbHNlCi0gICAgICBkZWxheV9jb21wZW5zYXRpb24gPSBzdC0+
ZGVsYXlfY29tcGVuc2F0aW9uOwotICAgZnJhbWVfc2l6ZSA9IGNvbXB1dGVfZnJhbWVfc2l6ZShw
Y20sIGFuYWx5c2lzX2ZyYW1lX3NpemUsCi0gICAgICAgICBzdC0+dmFyaWFibGVfZHVyYXRpb24s
IHN0LT5jaGFubmVscywgc3QtPkZzLCBzdC0+Yml0cmF0ZV9icHMsCi0gICAgICAgICBkZWxheV9j
b21wZW5zYXRpb24sIGRvd25taXhfZmxvYXQsIHN0LT5hbmFseXNpcy5zdWJmcmFtZV9tZW0pOwot
CisgICBmcmFtZV9zaXplID0gZnJhbWVfc2l6ZV9zZWxlY3QoYW5hbHlzaXNfZnJhbWVfc2l6ZSwg
c3QtPnZhcmlhYmxlX2R1cmF0aW9uLCBzdC0+RnMpOworICAgaWYgKGZyYW1lX3NpemUgPD0gMCkK
KyAgIHsKKyAgICAgIFJFU1RPUkVfU1RBQ0s7CisgICAgICByZXR1cm4gT1BVU19CQURfQVJHOwor
ICAgfQogICAgQUxMT0MoaW4sIGZyYW1lX3NpemUqc3QtPmNoYW5uZWxzLCBvcHVzX2ludDE2KTsK
IAogICAgZm9yIChpPTA7aTxmcmFtZV9zaXplKnN0LT5jaGFubmVscztpKyspCkBAIC0yMDA4LDE4
ICsyMjE0LDcgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0
IG9wdXNfaW50MTYgKnBjbSwgaW50IGFuYWx5c2lzX2ZyYW0KICAgICAgICAgICAgICAgICB1bnNp
Z25lZCBjaGFyICpkYXRhLCBvcHVzX2ludDMyIG91dF9kYXRhX2J5dGVzKQogewogICAgaW50IGZy
YW1lX3NpemU7Ci0gICBpbnQgZGVsYXlfY29tcGVuc2F0aW9uOwotICAgaWYgKHN0LT5hcHBsaWNh
dGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVMQVkpCi0gICAgICBkZWxh
eV9jb21wZW5zYXRpb24gPSAwOwotICAgZWxzZQotICAgICAgZGVsYXlfY29tcGVuc2F0aW9uID0g
c3QtPmRlbGF5X2NvbXBlbnNhdGlvbjsKLSAgIGZyYW1lX3NpemUgPSBjb21wdXRlX2ZyYW1lX3Np
emUocGNtLCBhbmFseXNpc19mcmFtZV9zaXplLAotICAgICAgICAgc3QtPnZhcmlhYmxlX2R1cmF0
aW9uLCBzdC0+Y2hhbm5lbHMsIHN0LT5Gcywgc3QtPmJpdHJhdGVfYnBzLAotICAgICAgICAgZGVs
YXlfY29tcGVuc2F0aW9uLCBkb3dubWl4X2ludAotI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQot
ICAgICAgICAgLCBzdC0+YW5hbHlzaXMuc3ViZnJhbWVfbWVtCi0jZW5kaWYKLSAgICAgICAgICk7
CisgICBmcmFtZV9zaXplID0gZnJhbWVfc2l6ZV9zZWxlY3QoYW5hbHlzaXNfZnJhbWVfc2l6ZSwg
c3QtPnZhcmlhYmxlX2R1cmF0aW9uLCBzdC0+RnMpOwogICAgcmV0dXJuIG9wdXNfZW5jb2RlX25h
dGl2ZShzdCwgcGNtLCBmcmFtZV9zaXplLCBkYXRhLCBvdXRfZGF0YV9ieXRlcywgMTYsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHBjbSwgYW5hbHlzaXNfZnJhbWVfc2l6ZSwgMCwgLTIs
IHN0LT5jaGFubmVscywgZG93bm1peF9pbnQsIDApOwogfQpAQCAtMjAzMCwxOCArMjIyNSwxNSBA
QCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c19pbnQx
NiAqcGNtLCBpbnQgYW5hbHlzaXNfZnJhbQogewogICAgaW50IGksIHJldDsKICAgIGludCBmcmFt
ZV9zaXplOwotICAgaW50IGRlbGF5X2NvbXBlbnNhdGlvbjsKICAgIFZBUkRFQ0woZmxvYXQsIGlu
KTsKICAgIEFMTE9DX1NUQUNLOwogCi0gICBpZiAoc3QtPmFwcGxpY2F0aW9uID09IE9QVVNfQVBQ
TElDQVRJT05fUkVTVFJJQ1RFRF9MT1dERUxBWSkKLSAgICAgIGRlbGF5X2NvbXBlbnNhdGlvbiA9
IDA7Ci0gICBlbHNlCi0gICAgICBkZWxheV9jb21wZW5zYXRpb24gPSBzdC0+ZGVsYXlfY29tcGVu
c2F0aW9uOwotICAgZnJhbWVfc2l6ZSA9IGNvbXB1dGVfZnJhbWVfc2l6ZShwY20sIGFuYWx5c2lz
X2ZyYW1lX3NpemUsCi0gICAgICAgICBzdC0+dmFyaWFibGVfZHVyYXRpb24sIHN0LT5jaGFubmVs
cywgc3QtPkZzLCBzdC0+Yml0cmF0ZV9icHMsCi0gICAgICAgICBkZWxheV9jb21wZW5zYXRpb24s
IGRvd25taXhfaW50LCBzdC0+YW5hbHlzaXMuc3ViZnJhbWVfbWVtKTsKLQorICAgZnJhbWVfc2l6
ZSA9IGZyYW1lX3NpemVfc2VsZWN0KGFuYWx5c2lzX2ZyYW1lX3NpemUsIHN0LT52YXJpYWJsZV9k
dXJhdGlvbiwgc3QtPkZzKTsKKyAgIGlmIChmcmFtZV9zaXplIDw9IDApCisgICB7CisgICAgICBS
RVNUT1JFX1NUQUNLOworICAgICAgcmV0dXJuIE9QVVNfQkFEX0FSRzsKKyAgIH0KICAgIEFMTE9D
KGluLCBmcmFtZV9zaXplKnN0LT5jaGFubmVscywgZmxvYXQpOwogCiAgICBmb3IgKGk9MDtpPGZy
YW1lX3NpemUqc3QtPmNoYW5uZWxzO2krKykKQEAgLTIwNTUsMTQgKzIyNDcsNyBAQCBvcHVzX2lu
dDMyIG9wdXNfZW5jb2RlX2Zsb2F0KE9wdXNFbmNvZGVyICpzdCwgY29uc3QgZmxvYXQgKnBjbSwg
aW50IGFuYWx5c2lzX2ZyYQogICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKmRh
dGEsIG9wdXNfaW50MzIgb3V0X2RhdGFfYnl0ZXMpCiB7CiAgICBpbnQgZnJhbWVfc2l6ZTsKLSAg
IGludCBkZWxheV9jb21wZW5zYXRpb247Ci0gICBpZiAoc3QtPmFwcGxpY2F0aW9uID09IE9QVVNf
QVBQTElDQVRJT05fUkVTVFJJQ1RFRF9MT1dERUxBWSkKLSAgICAgIGRlbGF5X2NvbXBlbnNhdGlv
biA9IDA7Ci0gICBlbHNlCi0gICAgICBkZWxheV9jb21wZW5zYXRpb24gPSBzdC0+ZGVsYXlfY29t
cGVuc2F0aW9uOwotICAgZnJhbWVfc2l6ZSA9IGNvbXB1dGVfZnJhbWVfc2l6ZShwY20sIGFuYWx5
c2lzX2ZyYW1lX3NpemUsCi0gICAgICAgICBzdC0+dmFyaWFibGVfZHVyYXRpb24sIHN0LT5jaGFu
bmVscywgc3QtPkZzLCBzdC0+Yml0cmF0ZV9icHMsCi0gICAgICAgICBkZWxheV9jb21wZW5zYXRp
b24sIGRvd25taXhfZmxvYXQsIHN0LT5hbmFseXNpcy5zdWJmcmFtZV9tZW0pOworICAgZnJhbWVf
c2l6ZSA9IGZyYW1lX3NpemVfc2VsZWN0KGFuYWx5c2lzX2ZyYW1lX3NpemUsIHN0LT52YXJpYWJs
ZV9kdXJhdGlvbiwgc3QtPkZzKTsKICAgIHJldHVybiBvcHVzX2VuY29kZV9uYXRpdmUoc3QsIHBj
bSwgZnJhbWVfc2l6ZSwgZGF0YSwgb3V0X2RhdGFfYnl0ZXMsIDI0LAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwY20sIGFuYWx5c2lzX2ZyYW1lX3NpemUsIDAsIC0yLCBzdC0+Y2hhbm5l
bHMsIGRvd25taXhfZmxvYXQsIDEpOwogfQpAQCAtMjA5Myw2ICsyMjc4LDkgQEAgaW50IG9wdXNf
ZW5jb2Rlcl9jdGwoT3B1c0VuY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBzdC0+YXBwbGljYXRpb24g
PSB2YWx1ZTsKKyNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKKyAgICAgICAgICAgIHN0LT5hbmFs
eXNpcy5hcHBsaWNhdGlvbiA9IHZhbHVlOworI2VuZGlmCiAgICAgICAgIH0KICAgICAgICAgYnJl
YWs7CiAgICAgICAgIGNhc2UgT1BVU19HRVRfQVBQTElDQVRJT05fUkVRVUVTVDoKQEAgLTIyMTEs
NyArMjM5OSw3IEBAIGludCBvcHVzX2VuY29kZXJfY3RsKE9wdXNFbmNvZGVyICpzdCwgaW50IHJl
cXVlc3QsIC4uLikKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGdvdG8gYmFkX2FyZzsK
ICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHN0LT5zaWxrX21vZGUudXNlRFRYID0gdmFsdWU7
CisgICAgICAgICAgICBzdC0+dXNlX2R0eCA9IHZhbHVlOwogICAgICAgICB9CiAgICAgICAgIGJy
ZWFrOwogICAgICAgICBjYXNlIE9QVVNfR0VUX0RUWF9SRVFVRVNUOgpAQCAtMjIyMSw3ICsyNDA5
LDcgQEAgaW50IG9wdXNfZW5jb2Rlcl9jdGwoT3B1c0VuY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwg
Li4uKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgZ290byBiYWRfYXJnOwogICAgICAg
ICAgICAgfQotICAgICAgICAgICAgKnZhbHVlID0gc3QtPnNpbGtfbW9kZS51c2VEVFg7CisgICAg
ICAgICAgICAqdmFsdWUgPSBzdC0+dXNlX2R0eDsKICAgICAgICAgfQogICAgICAgICBicmVhazsK
ICAgICAgICAgY2FzZSBPUFVTX1NFVF9DT01QTEVYSVRZX1JFUVVFU1Q6CkBAIC0yNDIyLDEwICsy
NjEwLDExIEBAIGludCBvcHVzX2VuY29kZXJfY3RsKE9wdXNFbmNvZGVyICpzdCwgaW50IHJlcXVl
c3QsIC4uLikKICAgICAgICAgY2FzZSBPUFVTX1NFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT05fUkVR
VUVTVDoKICAgICAgICAgewogICAgICAgICAgICAgb3B1c19pbnQzMiB2YWx1ZSA9IHZhX2FyZyhh
cCwgb3B1c19pbnQzMik7Ci0gICAgICAgICAgICBpZiAodmFsdWUgIT0gT1BVU19GUkFNRVNJWkVf
QVJHICAgJiYgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfMl81X01TICYmCi0gICAgICAgICAgICAg
ICAgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfNV9NUyAgJiYgdmFsdWUgIT0gT1BVU19GUkFNRVNJ
WkVfMTBfTVMgICYmCi0gICAgICAgICAgICAgICAgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfMjBf
TVMgJiYgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfNDBfTVMgICYmCi0gICAgICAgICAgICAgICAg
dmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfNjBfTVMgJiYgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVf
VkFSSUFCTEUpCisgICAgICAgICAgICBpZiAodmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfQVJHICAg
ICYmIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzJfNV9NUyAmJgorICAgICAgICAgICAgICAgIHZh
bHVlICE9IE9QVVNfRlJBTUVTSVpFXzVfTVMgICAmJiB2YWx1ZSAhPSBPUFVTX0ZSQU1FU0laRV8x
MF9NUyAgJiYKKyAgICAgICAgICAgICAgICB2YWx1ZSAhPSBPUFVTX0ZSQU1FU0laRV8yMF9NUyAg
JiYgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfNDBfTVMgICYmCisgICAgICAgICAgICAgICAgdmFs
dWUgIT0gT1BVU19GUkFNRVNJWkVfNjBfTVMgICYmIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzgw
X01TICAmJgorICAgICAgICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzEwMF9NUyAm
JiB2YWx1ZSAhPSBPUFVTX0ZSQU1FU0laRV8xMjBfTVMpCiAgICAgICAgICAgICB7CiAgICAgICAg
ICAgICAgICBnb3RvIGJhZF9hcmc7CiAgICAgICAgICAgICB9CkBAIC0yNDU5LDYgKzI2NDgsMjYg
QEAgaW50IG9wdXNfZW5jb2Rlcl9jdGwoT3B1c0VuY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwgLi4u
KQogICAgICAgICAgICAqdmFsdWUgPSBzdC0+c2lsa19tb2RlLnJlZHVjZWREZXBlbmRlbmN5Owog
ICAgICAgICB9CiAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIE9QVVNfU0VUX1BIQVNFX0lO
VkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUOgorICAgICAgICB7CisgICAgICAgICAgICBvcHVzX2lu
dDMyIHZhbHVlID0gdmFfYXJnKGFwLCBvcHVzX2ludDMyKTsKKyAgICAgICAgICAgIGlmKHZhbHVl
PDAgfHwgdmFsdWU+MSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIGdvdG8gYmFkX2Fy
ZzsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMs
IE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCh2YWx1ZSkpOworICAgICAgICB9Cisg
ICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIE9QVVNfR0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNB
QkxFRF9SRVFVRVNUOgorICAgICAgICB7CisgICAgICAgICAgICBvcHVzX2ludDMyICp2YWx1ZSA9
IHZhX2FyZyhhcCwgb3B1c19pbnQzMiopOworICAgICAgICAgICAgaWYgKCF2YWx1ZSkKKyAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgIGdvdG8gYmFkX2FyZzsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfR0VUX1BIQVNFX0lOVkVS
U0lPTl9ESVNBQkxFRCh2YWx1ZSkpOworICAgICAgICB9CisgICAgICAgIGJyZWFrOwogICAgICAg
ICBjYXNlIE9QVVNfUkVTRVRfU1RBVEU6CiAgICAgICAgIHsKICAgICAgICAgICAgdm9pZCAqc2ls
a19lbmM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX211bHRpc3RyZWFtX2RlY29kZXIuYyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29w
dXNfbXVsdGlzdHJlYW1fZGVjb2Rlci5jCmluZGV4IGI5NWVhYTZlYWMxMmYwMzZhYjlmMGE0ZGU2
NTYyMWJmNTdlNWI4YzAuLmU0MjE3MjZmMmI0MjdkZDJkZGQ0ZDIwZjFkZmI5OWMyYWZiNzAwOGIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc3JjL29wdXNfbXVsdGlzdHJlYW1fZGVjb2Rlci5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNf
bXVsdGlzdHJlYW1fZGVjb2Rlci5jCkBAIC0yMzcsNyArMjM3LDggQEAgc3RhdGljIGludCBvcHVz
X211bHRpc3RyZWFtX2RlY29kZV9uYXRpdmUoCiAgICBmb3IgKHM9MDtzPHN0LT5sYXlvdXQubmJf
c3RyZWFtcztzKyspCiAgICB7CiAgICAgICBPcHVzRGVjb2RlciAqZGVjOwotICAgICAgaW50IHBh
Y2tldF9vZmZzZXQsIHJldDsKKyAgICAgIG9wdXNfaW50MzIgcGFja2V0X29mZnNldDsKKyAgICAg
IGludCByZXQ7CiAKICAgICAgIGRlYyA9IChPcHVzRGVjb2RlciopcHRyOwogICAgICAgcHRyICs9
IChzIDwgc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXMpID8gYWxpZ24oY291cGxlZF9zaXpl
KSA6IGFsaWduKG1vbm9fc2l6ZSk7CkBAIC00MjUsNiArNDI2LDcgQEAgaW50IG9wdXNfbXVsdGlz
dHJlYW1fZGVjb2Rlcl9jdGwoT3B1c01TRGVjb2RlciAqc3QsIGludCByZXF1ZXN0LCAuLi4pCiAg
ICAgICAgY2FzZSBPUFVTX0dFVF9TQU1QTEVfUkFURV9SRVFVRVNUOgogICAgICAgIGNhc2UgT1BV
U19HRVRfR0FJTl9SRVFVRVNUOgogICAgICAgIGNhc2UgT1BVU19HRVRfTEFTVF9QQUNLRVRfRFVS
QVRJT05fUkVRVUVTVDoKKyAgICAgICBjYXNlIE9QVVNfR0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNB
QkxFRF9SRVFVRVNUOgogICAgICAgIHsKICAgICAgICAgICBPcHVzRGVjb2RlciAqZGVjOwogICAg
ICAgICAgIC8qIEZvciBpbnQzMiogR0VUIHBhcmFtcywganVzdCBxdWVyeSB0aGUgZmlyc3Qgc3Ry
ZWFtICovCkBAIC00OTksNiArNTAxLDcgQEAgaW50IG9wdXNfbXVsdGlzdHJlYW1fZGVjb2Rlcl9j
dGwoT3B1c01TRGVjb2RlciAqc3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICAgICAgfQogICAgICAg
IGJyZWFrOwogICAgICAgIGNhc2UgT1BVU19TRVRfR0FJTl9SRVFVRVNUOgorICAgICAgIGNhc2Ug
T1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1Q6CiAgICAgICAgewogICAg
ICAgICAgIGludCBzOwogICAgICAgICAgIC8qIFRoaXMgd29ya3MgZm9yIGludDMyIHBhcmFtcyAq
LwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX211
bHRpc3RyZWFtX2VuY29kZXIuYwppbmRleCBlNzIyZTMxYWI4ZWU5ZjEwMjQyOTQ0OTU0ZWE2ZjVh
YzIwMThhMTNiLi4wMzJmYzAwMzliOTEzMTJlNzU2YmY4OWM2YmYwZGUwNTJmNjhhY2YxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NyYy9vcHVzX211bHRpc3RyZWFtX2VuY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX211bHRp
c3RyZWFtX2VuY29kZXIuYwpAQCAtODcsNyArODcsNiBAQCBzdHJ1Y3QgT3B1c01TRW5jb2RlciB7
CiAgICBpbnQgdmFyaWFibGVfZHVyYXRpb247CiAgICBNYXBwaW5nVHlwZSBtYXBwaW5nX3R5cGU7
CiAgICBvcHVzX2ludDMyIGJpdHJhdGVfYnBzOwotICAgZmxvYXQgc3ViZnJhbWVfbWVtWzNdOwog
ICAgLyogRW5jb2RlciBzdGF0ZXMgZ28gaGVyZSAqLwogICAgLyogdGhlbiBvcHVzX3ZhbDMyIHdp
bmRvd19tZW1bY2hhbm5lbHMqMTIwXTsgKi8KICAgIC8qIHRoZW4gb3B1c192YWwzMiBwcmVlbXBo
X21lbVtjaGFubmVsc107ICovCkBAIC0xMzMsNiArMTMyLDI5IEBAIHN0YXRpYyBvcHVzX3ZhbDMy
ICptc19nZXRfd2luZG93X21lbShPcHVzTVNFbmNvZGVyICpzdCkKICAgIHJldHVybiAob3B1c192
YWwzMiopKHZvaWQqKXB0cjsKIH0KIAorI2lmZGVmIEVOQUJMRV9FWFBFUklNRU5UQUxfQU1CSVNP
TklDUworc3RhdGljIGludCB2YWxpZGF0ZV9hbWJpc29uaWNzKGludCBuYl9jaGFubmVscywgaW50
ICpuYl9zdHJlYW1zLCBpbnQgKm5iX2NvdXBsZWRfc3RyZWFtcykKK3sKKyAgIGludCBvcmRlcl9w
bHVzX29uZTsKKyAgIGludCBhY25fY2hhbm5lbHM7CisgICBpbnQgbm9uZGllZ2V0aWNfY2hhbm5l
bHM7CisKKyAgIG9yZGVyX3BsdXNfb25lID0gaXNxcnQzMihuYl9jaGFubmVscyk7CisgICBhY25f
Y2hhbm5lbHMgPSBvcmRlcl9wbHVzX29uZSAqIG9yZGVyX3BsdXNfb25lOworICAgbm9uZGllZ2V0
aWNfY2hhbm5lbHMgPSBuYl9jaGFubmVscyAtIGFjbl9jaGFubmVsczsKKworICAgaWYgKG9yZGVy
X3BsdXNfb25lIDwgMSB8fCBvcmRlcl9wbHVzX29uZSA+IDE1IHx8CisgICAgICAgKG5vbmRpZWdl
dGljX2NoYW5uZWxzICE9IDAgJiYgbm9uZGllZ2V0aWNfY2hhbm5lbHMgIT0gMikpCisgICAgICBy
ZXR1cm4gMDsKKworICAgaWYgKG5iX3N0cmVhbXMpCisgICAgICAqbmJfc3RyZWFtcyA9IGFjbl9j
aGFubmVscyArIChub25kaWVnZXRpY19jaGFubmVscyAhPSAwKTsKKyAgIGlmIChuYl9jb3VwbGVk
X3N0cmVhbXMpCisgICAgICAqbmJfY291cGxlZF9zdHJlYW1zID0gbm9uZGllZ2V0aWNfY2hhbm5l
bHMgIT0gMDsKKyAgIHJldHVybiAxOworfQorI2VuZGlmCisKIHN0YXRpYyBpbnQgdmFsaWRhdGVf
ZW5jb2Rlcl9sYXlvdXQoY29uc3QgQ2hhbm5lbExheW91dCAqbGF5b3V0KQogewogICAgaW50IHM7
CkBAIC0yNDAsNiArMjYyLDcgQEAgdm9pZCBzdXJyb3VuZF9hbmFseXNpcyhjb25zdCBDRUxUTW9k
ZSAqY2VsdF9tb2RlLCBjb25zdCB2b2lkICpwY20sIG9wdXNfdmFsMTYgKmIKICAgIGludCBwb3Nb
OF0gPSB7MH07CiAgICBpbnQgdXBzYW1wbGU7CiAgICBpbnQgZnJhbWVfc2l6ZTsKKyAgIGludCBm
cmVxX3NpemU7CiAgICBvcHVzX3ZhbDE2IGNoYW5uZWxfb2Zmc2V0OwogICAgb3B1c192YWwzMiBi
YW5kRVsyMV07CiAgICBvcHVzX3ZhbDE2IG1hc2tMb2dFWzNdWzIxXTsKQEAgLTI1MCw2ICsyNzMs
NyBAQCB2b2lkIHN1cnJvdW5kX2FuYWx5c2lzKGNvbnN0IENFTFRNb2RlICpjZWx0X21vZGUsIGNv
bnN0IHZvaWQgKnBjbSwgb3B1c192YWwxNiAqYgogCiAgICB1cHNhbXBsZSA9IHJlc2FtcGxpbmdf
ZmFjdG9yKHJhdGUpOwogICAgZnJhbWVfc2l6ZSA9IGxlbip1cHNhbXBsZTsKKyAgIGZyZXFfc2l6
ZSA9IElNSU4oOTYwLCBmcmFtZV9zaXplKTsKIAogICAgLyogTE0gPSBsb2cyKGZyYW1lX3NpemUg
LyAxMjApICovCiAgICBmb3IgKExNPTA7TE08Y2VsdF9tb2RlLT5tYXhMTTtMTSsrKQpAQCAtMjU4
LDcgKzI4Miw3IEBAIHZvaWQgc3Vycm91bmRfYW5hbHlzaXMoY29uc3QgQ0VMVE1vZGUgKmNlbHRf
bW9kZSwgY29uc3Qgdm9pZCAqcGNtLCBvcHVzX3ZhbDE2ICpiCiAKICAgIEFMTE9DKGluLCBmcmFt
ZV9zaXplK292ZXJsYXAsIG9wdXNfdmFsMzIpOwogICAgQUxMT0MoeCwgbGVuLCBvcHVzX3ZhbDE2
KTsKLSAgIEFMTE9DKGZyZXEsIGZyYW1lX3NpemUsIG9wdXNfdmFsMzIpOworICAgQUxMT0MoZnJl
cSwgZnJlcV9zaXplLCBvcHVzX3ZhbDMyKTsKIAogICAgY2hhbm5lbF9wb3MoY2hhbm5lbHMsIHBv
cyk7CiAKQEAgLTI2OCw2ICsyOTIsOSBAQCB2b2lkIHN1cnJvdW5kX2FuYWx5c2lzKGNvbnN0IENF
TFRNb2RlICpjZWx0X21vZGUsIGNvbnN0IHZvaWQgKnBjbSwgb3B1c192YWwxNiAqYgogCiAgICBm
b3IgKGM9MDtjPGNoYW5uZWxzO2MrKykKICAgIHsKKyAgICAgIGludCBmcmFtZTsKKyAgICAgIGlu
dCBuYl9mcmFtZXMgPSBmcmFtZV9zaXplL2ZyZXFfc2l6ZTsKKyAgICAgIGNlbHRfYXNzZXJ0KG5i
X2ZyYW1lcypmcmVxX3NpemUgPT0gZnJhbWVfc2l6ZSk7CiAgICAgICBPUFVTX0NPUFkoaW4sIG1l
bStjKm92ZXJsYXAsIG92ZXJsYXApOwogICAgICAgKCpjb3B5X2NoYW5uZWxfaW4pKHgsIDEsIHBj
bSwgY2hhbm5lbHMsIGMsIGxlbik7CiAgICAgICBjZWx0X3ByZWVtcGhhc2lzKHgsIGluK292ZXJs
YXAsIGZyYW1lX3NpemUsIDEsIHVwc2FtcGxlLCBjZWx0X21vZGUtPnByZWVtcGgsIHByZWVtcGhf
bWVtK2MsIDApOwpAQCAtMjc3LDI1ICszMDQsMzMgQEAgdm9pZCBzdXJyb3VuZF9hbmFseXNpcyhj
b25zdCBDRUxUTW9kZSAqY2VsdF9tb2RlLCBjb25zdCB2b2lkICpwY20sIG9wdXNfdmFsMTYgKmIK
ICAgICAgICAgIHN1bSA9IGNlbHRfaW5uZXJfcHJvZChpbiwgaW4sIGZyYW1lX3NpemUrb3Zlcmxh
cCwgMCk7CiAgICAgICAgICAvKiBUaGlzIHNob3VsZCBmaWx0ZXIgb3V0IGJvdGggTmFOcyBhbmQg
cmlkaWN1bG91cyBzaWduYWxzIHRoYXQgY291bGQKICAgICAgICAgICAgIGNhdXNlIE5hTnMgZnVy
dGhlciBkb3duLiAqLwotICAgICAgICAgaWYgKCEoc3VtIDwgMWU5ZikgfHwgY2VsdF9pc25hbihz
dW0pKQorICAgICAgICAgaWYgKCEoc3VtIDwgMWUxOGYpIHx8IGNlbHRfaXNuYW4oc3VtKSkKICAg
ICAgICAgIHsKICAgICAgICAgICAgIE9QVVNfQ0xFQVIoaW4sIGZyYW1lX3NpemUrb3ZlcmxhcCk7
CiAgICAgICAgICAgICBwcmVlbXBoX21lbVtjXSA9IDA7CiAgICAgICAgICB9CiAgICAgICB9CiAj
ZW5kaWYKLSAgICAgIGNsdF9tZGN0X2ZvcndhcmQoJmNlbHRfbW9kZS0+bWRjdCwgaW4sIGZyZXEs
IGNlbHRfbW9kZS0+d2luZG93LAotICAgICAgICAgICAgb3ZlcmxhcCwgY2VsdF9tb2RlLT5tYXhM
TS1MTSwgMSwgYXJjaCk7Ci0gICAgICBpZiAodXBzYW1wbGUgIT0gMSkKKyAgICAgIE9QVVNfQ0xF
QVIoYmFuZEUsIDIxKTsKKyAgICAgIGZvciAoZnJhbWU9MDtmcmFtZTxuYl9mcmFtZXM7ZnJhbWUr
KykKICAgICAgIHsKLSAgICAgICAgIGludCBib3VuZCA9IGxlbjsKLSAgICAgICAgIGZvciAoaT0w
O2k8Ym91bmQ7aSsrKQotICAgICAgICAgICAgZnJlcVtpXSAqPSB1cHNhbXBsZTsKLSAgICAgICAg
IGZvciAoO2k8ZnJhbWVfc2l6ZTtpKyspCi0gICAgICAgICAgICBmcmVxW2ldID0gMDsKLSAgICAg
IH0KKyAgICAgICAgIG9wdXNfdmFsMzIgdG1wRVsyMV07CisgICAgICAgICBjbHRfbWRjdF9mb3J3
YXJkKCZjZWx0X21vZGUtPm1kY3QsIGluKzk2MCpmcmFtZSwgZnJlcSwgY2VsdF9tb2RlLT53aW5k
b3csCisgICAgICAgICAgICAgICBvdmVybGFwLCBjZWx0X21vZGUtPm1heExNLUxNLCAxLCBhcmNo
KTsKKyAgICAgICAgIGlmICh1cHNhbXBsZSAhPSAxKQorICAgICAgICAgeworICAgICAgICAgICAg
aW50IGJvdW5kID0gZnJlcV9zaXplL3Vwc2FtcGxlOworICAgICAgICAgICAgZm9yIChpPTA7aTxi
b3VuZDtpKyspCisgICAgICAgICAgICAgICBmcmVxW2ldICo9IHVwc2FtcGxlOworICAgICAgICAg
ICAgZm9yICg7aTxmcmVxX3NpemU7aSsrKQorICAgICAgICAgICAgICAgZnJlcVtpXSA9IDA7Cisg
ICAgICAgICB9CiAKLSAgICAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhjZWx0X21vZGUsIGZyZXEs
IGJhbmRFLCAyMSwgMSwgTE0pOworICAgICAgICAgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNlbHRf
bW9kZSwgZnJlcSwgdG1wRSwgMjEsIDEsIExNLCBhcmNoKTsKKyAgICAgICAgIC8qIElmIHdlIGhh
dmUgbXVsdGlwbGUgZnJhbWVzLCB0YWtlIHRoZSBtYXggZW5lcmd5LiAqLworICAgICAgICAgZm9y
IChpPTA7aTwyMTtpKyspCisgICAgICAgICAgICBiYW5kRVtpXSA9IE1BWDMyKGJhbmRFW2ldLCB0
bXBFW2ldKTsKKyAgICAgIH0KICAgICAgIGFtcDJMb2cyKGNlbHRfbW9kZSwgMjEsIDIxLCBiYW5k
RSwgYmFuZExvZ0UrMjEqYywgMSk7CiAgICAgICAvKiBBcHBseSBzcHJlYWRpbmcgZnVuY3Rpb24g
d2l0aCAtNiBkQi9iYW5kIGdvaW5nIHVwIGFuZCAtMTIgZEIvYmFuZCBnb2luZyBkb3duLiAqLwog
ICAgICAgZm9yIChpPTE7aTwyMTtpKyspCkBAIC00MTEsOCArNDQ2LDggQEAgb3B1c19pbnQzMiBv
cHVzX211bHRpc3RyZWFtX3N1cnJvdW5kX2VuY29kZXJfZ2V0X3NpemUoaW50IGNoYW5uZWxzLCBp
bnQgbWFwcGluZ18KICNpZmRlZiBFTkFCTEVfRVhQRVJJTUVOVEFMX0FNQklTT05JQ1MKICAgIH0g
ZWxzZSBpZiAobWFwcGluZ19mYW1pbHk9PTI1NCkKICAgIHsKLSAgICAgIG5iX3N0cmVhbXM9Y2hh
bm5lbHM7Ci0gICAgICBuYl9jb3VwbGVkX3N0cmVhbXM9MDsKKyAgICAgIGlmICghdmFsaWRhdGVf
YW1iaXNvbmljcyhjaGFubmVscywgJm5iX3N0cmVhbXMsICZuYl9jb3VwbGVkX3N0cmVhbXMpKQor
ICAgICAgICAgcmV0dXJuIDA7CiAjZW5kaWYKICAgIH0gZWxzZQogICAgICAgcmV0dXJuIDA7CkBA
IC00NDgsNyArNDgzLDYgQEAgc3RhdGljIGludCBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfaW5p
dF9pbXBsKAogICAgc3QtPmxheW91dC5uYl9jaGFubmVscyA9IGNoYW5uZWxzOwogICAgc3QtPmxh
eW91dC5uYl9zdHJlYW1zID0gc3RyZWFtczsKICAgIHN0LT5sYXlvdXQubmJfY291cGxlZF9zdHJl
YW1zID0gY291cGxlZF9zdHJlYW1zOwotICAgc3QtPnN1YmZyYW1lX21lbVswXT1zdC0+c3ViZnJh
bWVfbWVtWzFdPXN0LT5zdWJmcmFtZV9tZW1bMl09MDsKICAgIGlmIChtYXBwaW5nX3R5cGUgIT0g
TUFQUElOR19UWVBFX1NVUlJPVU5EKQogICAgICAgc3QtPmxmZV9zdHJlYW0gPSAtMTsKICAgIHN0
LT5iaXRyYXRlX2JwcyA9IE9QVVNfQVVUTzsKQEAgLTQ1Niw4ICs0OTAsMTYgQEAgc3RhdGljIGlu
dCBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfaW5pdF9pbXBsKAogICAgc3QtPnZhcmlhYmxlX2R1
cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfQVJHOwogICAgZm9yIChpPTA7aTxzdC0+bGF5b3V0Lm5i
X2NoYW5uZWxzO2krKykKICAgICAgIHN0LT5sYXlvdXQubWFwcGluZ1tpXSA9IG1hcHBpbmdbaV07
Ci0gICBpZiAoIXZhbGlkYXRlX2xheW91dCgmc3QtPmxheW91dCkgfHwgIXZhbGlkYXRlX2VuY29k
ZXJfbGF5b3V0KCZzdC0+bGF5b3V0KSkKKyAgIGlmICghdmFsaWRhdGVfbGF5b3V0KCZzdC0+bGF5
b3V0KSkKICAgICAgIHJldHVybiBPUFVTX0JBRF9BUkc7CisgICBpZiAobWFwcGluZ190eXBlID09
IE1BUFBJTkdfVFlQRV9TVVJST1VORCAmJgorICAgICAgICF2YWxpZGF0ZV9lbmNvZGVyX2xheW91
dCgmc3QtPmxheW91dCkpCisgICAgICByZXR1cm4gT1BVU19CQURfQVJHOworI2lmZGVmIEVOQUJM
RV9FWFBFUklNRU5UQUxfQU1CSVNPTklDUworICAgaWYgKG1hcHBpbmdfdHlwZSA9PSBNQVBQSU5H
X1RZUEVfQU1CSVNPTklDUyAmJgorICAgICAgICF2YWxpZGF0ZV9hbWJpc29uaWNzKHN0LT5sYXlv
dXQubmJfY2hhbm5lbHMsIE5VTEwsIE5VTEwpKQorICAgICAgcmV0dXJuIE9QVVNfQkFEX0FSRzsK
KyNlbmRpZgogICAgcHRyID0gKGNoYXIqKXN0ICsgYWxpZ24oc2l6ZW9mKE9wdXNNU0VuY29kZXIp
KTsKICAgIGNvdXBsZWRfc2l6ZSA9IG9wdXNfZW5jb2Rlcl9nZXRfc2l6ZSgyKTsKICAgIG1vbm9f
c2l6ZSA9IG9wdXNfZW5jb2Rlcl9nZXRfc2l6ZSgxKTsKQEAgLTU1MywxMCArNTk1LDEyIEBAIGlu
dCBvcHVzX211bHRpc3RyZWFtX3N1cnJvdW5kX2VuY29kZXJfaW5pdCgKICAgIH0gZWxzZSBpZiAo
bWFwcGluZ19mYW1pbHk9PTI1NCkKICAgIHsKICAgICAgIGludCBpOwotICAgICAgKnN0cmVhbXM9
Y2hhbm5lbHM7Ci0gICAgICAqY291cGxlZF9zdHJlYW1zPTA7Ci0gICAgICBmb3IoaT0wO2k8Y2hh
bm5lbHM7aSsrKQotICAgICAgICAgbWFwcGluZ1tpXSA9IGk7CisgICAgICBpZiAoIXZhbGlkYXRl
X2FtYmlzb25pY3MoY2hhbm5lbHMsIHN0cmVhbXMsIGNvdXBsZWRfc3RyZWFtcykpCisgICAgICAg
ICByZXR1cm4gT1BVU19CQURfQVJHOworICAgICAgZm9yKGkgPSAwOyBpIDwgKCpzdHJlYW1zIC0g
KmNvdXBsZWRfc3RyZWFtcyk7IGkrKykKKyAgICAgICAgIG1hcHBpbmdbaV0gPSBpICsgKCpjb3Vw
bGVkX3N0cmVhbXMgKiAyKTsKKyAgICAgIGZvcihpID0gMDsgaSA8ICpjb3VwbGVkX3N0cmVhbXMg
KiAyOyBpKyspCisgICAgICAgICBtYXBwaW5nW2kgKyAoKnN0cmVhbXMgLSAqY291cGxlZF9zdHJl
YW1zKV0gPSBpOwogI2VuZGlmCiAgICB9IGVsc2UKICAgICAgIHJldHVybiBPUFVTX1VOSU1QTEVN
RU5URUQ7CkBAIC02NzIsNTggKzcxNiw1OSBAQCBzdGF0aWMgdm9pZCBzdXJyb3VuZF9yYXRlX2Fs
bG9jYXRpb24oCiAgICBpbnQgbGZlX29mZnNldDsKICAgIGludCBjb3VwbGVkX3JhdGlvOyAvKiBR
OCAqLwogICAgaW50IGxmZV9yYXRpbzsgICAgIC8qIFE4ICovCisgICBpbnQgbmJfbGZlOworICAg
aW50IG5iX3VuY291cGxlZDsKKyAgIGludCBuYl9jb3VwbGVkOworICAgaW50IG5iX25vcm1hbDsK
KyAgIG9wdXNfaW50MzIgY2hhbm5lbF9vZmZzZXQ7CisgICBvcHVzX2ludDMyIGJpdHJhdGU7Cisg
ICBpbnQgdG90YWw7CisKKyAgIG5iX2xmZSA9IChzdC0+bGZlX3N0cmVhbSE9LTEpOworICAgbmJf
Y291cGxlZCA9IHN0LT5sYXlvdXQubmJfY291cGxlZF9zdHJlYW1zOworICAgbmJfdW5jb3VwbGVk
ID0gc3QtPmxheW91dC5uYl9zdHJlYW1zLW5iX2NvdXBsZWQtbmJfbGZlOworICAgbmJfbm9ybWFs
ID0gMipuYl9jb3VwbGVkICsgbmJfdW5jb3VwbGVkOworCisgICAvKiBHaXZlIGVhY2ggbm9uLUxG
RSBjaGFubmVsIGVub3VnaCBiaXRzIHBlciBjaGFubmVsIGZvciBjb2RpbmcgYmFuZCBlbmVyZ3ku
ICovCisgICBjaGFubmVsX29mZnNldCA9IDQwKklNQVgoNTAsIEZzL2ZyYW1lX3NpemUpOwogCi0g
ICBpZiAoc3QtPmJpdHJhdGVfYnBzID4gc3QtPmxheW91dC5uYl9jaGFubmVscyo0MDAwMCkKLSAg
ICAgIHN0cmVhbV9vZmZzZXQgPSAyMDAwMDsKLSAgIGVsc2UKLSAgICAgIHN0cmVhbV9vZmZzZXQg
PSBzdC0+Yml0cmF0ZV9icHMvc3QtPmxheW91dC5uYl9jaGFubmVscy8yOwotICAgc3RyZWFtX29m
ZnNldCArPSA2MCooRnMvZnJhbWVfc2l6ZS01MCk7Ci0gICAvKiBXZSBzdGFydCBieSBnaXZpbmcg
ZWFjaCBzdHJlYW0gKGNvdXBsZWQgb3IgdW5jb3VwbGVkKSB0aGUgc2FtZSBiaXRyYXRlLgotICAg
ICAgVGhpcyBtb2RlbHMgdGhlIG1haW4gc2F2aW5nIG9mIGNvdXBsZWQgY2hhbm5lbHMgb3ZlciB1
bmNvdXBsZWQuICovCi0gICAvKiBUaGUgTEZFIHN0cmVhbSBpcyBhbiBleGNlcHRpb24gdG8gdGhl
IGFib3ZlIGFuZCBnZXRzIGZld2VyIGJpdHMuICovCi0gICBsZmVfb2Zmc2V0ID0gMzUwMCArIDYw
KihGcy9mcmFtZV9zaXplLTUwKTsKLSAgIC8qIENvdXBsZWQgc3RyZWFtcyBnZXQgdHdpY2UgdGhl
IG1vbm8gcmF0ZSBhZnRlciB0aGUgZmlyc3QgMjAga2Ivcy4gKi8KLSAgIGNvdXBsZWRfcmF0aW8g
PSA1MTI7Ci0gICAvKiBTaG91bGQgZGVwZW5kIG9uIHRoZSBiaXRyYXRlLCBmb3Igbm93IHdlIGFz
c3VtZSBMRkUgZ2V0cyAxLzggdGhlIGJpdHMgb2YgbW9ubyAqLwotICAgbGZlX3JhdGlvID0gMzI7
Ci0KLSAgIC8qIENvbXB1dGUgYml0cmF0ZSBhbGxvY2F0aW9uIGJldHdlZW4gc3RyZWFtcyAqLwog
ICAgaWYgKHN0LT5iaXRyYXRlX2Jwcz09T1BVU19BVVRPKQogICAgewotICAgICAgY2hhbm5lbF9y
YXRlID0gRnMrNjAqRnMvZnJhbWVfc2l6ZTsKKyAgICAgIGJpdHJhdGUgPSBuYl9ub3JtYWwqKGNo
YW5uZWxfb2Zmc2V0ICsgRnMgKyAxMDAwMCkgKyA4MDAwKm5iX2xmZTsKICAgIH0gZWxzZSBpZiAo
c3QtPmJpdHJhdGVfYnBzPT1PUFVTX0JJVFJBVEVfTUFYKQogICAgewotICAgICAgY2hhbm5lbF9y
YXRlID0gMzAwMDAwOworICAgICAgYml0cmF0ZSA9IG5iX25vcm1hbCozMDAwMDAgKyBuYl9sZmUq
MTI4MDAwOwogICAgfSBlbHNlIHsKLSAgICAgIGludCBuYl9sZmU7Ci0gICAgICBpbnQgbmJfdW5j
b3VwbGVkOwotICAgICAgaW50IG5iX2NvdXBsZWQ7Ci0gICAgICBpbnQgdG90YWw7Ci0gICAgICBu
Yl9sZmUgPSAoc3QtPmxmZV9zdHJlYW0hPS0xKTsKLSAgICAgIG5iX2NvdXBsZWQgPSBzdC0+bGF5
b3V0Lm5iX2NvdXBsZWRfc3RyZWFtczsKLSAgICAgIG5iX3VuY291cGxlZCA9IHN0LT5sYXlvdXQu
bmJfc3RyZWFtcy1uYl9jb3VwbGVkLW5iX2xmZTsKLSAgICAgIHRvdGFsID0gKG5iX3VuY291cGxl
ZDw8OCkgICAgICAgICAvKiBtb25vICovCi0gICAgICAgICAgICArIGNvdXBsZWRfcmF0aW8qbmJf
Y291cGxlZCAvKiBzdGVyZW8gKi8KLSAgICAgICAgICAgICsgbmJfbGZlKmxmZV9yYXRpbzsKLSAg
ICAgIGNoYW5uZWxfcmF0ZSA9IDI1Niooc3QtPmJpdHJhdGVfYnBzLWxmZV9vZmZzZXQqbmJfbGZl
LXN0cmVhbV9vZmZzZXQqKG5iX2NvdXBsZWQrbmJfdW5jb3VwbGVkKSkvdG90YWw7CisgICAgICBi
aXRyYXRlID0gc3QtPmJpdHJhdGVfYnBzOwogICAgfQotI2lmbmRlZiBGSVhFRF9QT0lOVAotICAg
aWYgKHN0LT52YXJpYWJsZV9kdXJhdGlvbj09T1BVU19GUkFNRVNJWkVfVkFSSUFCTEUgJiYgZnJh
bWVfc2l6ZSAhPSBGcy81MCkKLSAgIHsKLSAgICAgIG9wdXNfaW50MzIgYm9udXM7Ci0gICAgICBi
b251cyA9IDYwKihGcy9mcmFtZV9zaXplLTUwKTsKLSAgICAgIGNoYW5uZWxfcmF0ZSArPSBib251
czsKLSAgIH0KLSNlbmRpZgorCisgICAvKiBHaXZlIExGRSBzb21lIGJhc2ljIHN0cmVhbV9jaGFu
bmVsIGFsbG9jYXRpb24gYnV0IG5ldmVyIGV4Y2VlZCAxLzIwIG9mIHRoZQorICAgICAgdG90YWwg
cmF0ZSBmb3IgdGhlIG5vbi1lbmVyZ3kgcGFydCB0byBhdm9pZCBwcm9ibGVtcyBhdCByZWFsbHkg
bG93IHJhdGUuICovCisgICBsZmVfb2Zmc2V0ID0gSU1JTihiaXRyYXRlLzIwLCAzMDAwKSArIDE1
KklNQVgoNTAsIEZzL2ZyYW1lX3NpemUpOworCisgICAvKiBXZSBnaXZlIGVhY2ggc3RyZWFtIChj
b3VwbGVkIG9yIHVuY291cGxlZCkgYSBzdGFydGluZyBiaXRyYXRlLgorICAgICAgVGhpcyBtb2Rl
bHMgdGhlIG1haW4gc2F2aW5nIG9mIGNvdXBsZWQgY2hhbm5lbHMgb3ZlciB1bmNvdXBsZWQuICov
CisgICBzdHJlYW1fb2Zmc2V0ID0gKGJpdHJhdGUgLSBjaGFubmVsX29mZnNldCpuYl9ub3JtYWwg
LSBsZmVfb2Zmc2V0Km5iX2xmZSkvbmJfbm9ybWFsLzI7CisgICBzdHJlYW1fb2Zmc2V0ID0gSU1B
WCgwLCBJTUlOKDIwMDAwLCBzdHJlYW1fb2Zmc2V0KSk7CisKKyAgIC8qIENvdXBsZWQgc3RyZWFt
cyBnZXQgdHdpY2UgdGhlIG1vbm8gcmF0ZSBhZnRlciB0aGUgb2Zmc2V0IGlzIGFsbG9jYXRlZC4g
Ki8KKyAgIGNvdXBsZWRfcmF0aW8gPSA1MTI7CisgICAvKiBTaG91bGQgZGVwZW5kIG9uIHRoZSBi
aXRyYXRlLCBmb3Igbm93IHdlIGFzc3VtZSBMRkUgZ2V0cyAxLzggdGhlIGJpdHMgb2YgbW9ubyAq
LworICAgbGZlX3JhdGlvID0gMzI7CisKKyAgIHRvdGFsID0gKG5iX3VuY291cGxlZDw8OCkgICAg
ICAgICAvKiBtb25vICovCisgICAgICAgICArIGNvdXBsZWRfcmF0aW8qbmJfY291cGxlZCAvKiBz
dGVyZW8gKi8KKyAgICAgICAgICsgbmJfbGZlKmxmZV9yYXRpbzsKKyAgIGNoYW5uZWxfcmF0ZSA9
IDI1Nioob3B1c19pbnQ2NCkoYml0cmF0ZSAtIGxmZV9vZmZzZXQqbmJfbGZlIC0gc3RyZWFtX29m
ZnNldCoobmJfY291cGxlZCtuYl91bmNvdXBsZWQpIC0gY2hhbm5lbF9vZmZzZXQqbmJfbm9ybWFs
KS90b3RhbDsKIAogICAgZm9yIChpPTA7aTxzdC0+bGF5b3V0Lm5iX3N0cmVhbXM7aSsrKQogICAg
ewogICAgICAgaWYgKGk8c3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXMpCi0gICAgICAgICBy
YXRlW2ldID0gc3RyZWFtX29mZnNldCsoY2hhbm5lbF9yYXRlKmNvdXBsZWRfcmF0aW8+PjgpOwor
ICAgICAgICAgcmF0ZVtpXSA9IDIqY2hhbm5lbF9vZmZzZXQgKyBJTUFYKDAsIHN0cmVhbV9vZmZz
ZXQrKGNoYW5uZWxfcmF0ZSpjb3VwbGVkX3JhdGlvPj44KSk7CiAgICAgICBlbHNlIGlmIChpIT1z
dC0+bGZlX3N0cmVhbSkKLSAgICAgICAgIHJhdGVbaV0gPSBzdHJlYW1fb2Zmc2V0K2NoYW5uZWxf
cmF0ZTsKKyAgICAgICAgIHJhdGVbaV0gPSBjaGFubmVsX29mZnNldCArIElNQVgoMCwgc3RyZWFt
X29mZnNldCArIGNoYW5uZWxfcmF0ZSk7CiAgICAgICBlbHNlCi0gICAgICAgICByYXRlW2ldID0g
bGZlX29mZnNldCsoY2hhbm5lbF9yYXRlKmxmZV9yYXRpbz4+OCk7CisgICAgICAgICByYXRlW2ld
ID0gSU1BWCgwLCBsZmVfb2Zmc2V0KyhjaGFubmVsX3JhdGUqbGZlX3JhdGlvPj44KSk7CiAgICB9
CiB9CiAKQEAgLTczNiw0NyArNzgxLDcyIEBAIHN0YXRpYyB2b2lkIGFtYmlzb25pY3NfcmF0ZV9h
bGxvY2F0aW9uKAogICAgICAgKQogewogICAgaW50IGk7Ci0gICBpbnQgbm9uX21vbm9fcmF0ZTsK
ICAgIGludCB0b3RhbF9yYXRlOworICAgaW50IGRpcmVjdGlvbmFsX3JhdGU7CisgICBpbnQgbm9u
ZGlyZWN0aW9uYWxfcmF0ZTsKKyAgIGludCBsZWZ0b3Zlcl9iaXRzOwogCi0gICAvKiBUaGUgbW9u
byBjaGFubmVsIGdldHMgKHJhdGVfcmF0aW9fbnVtIC8gcmF0ZV9yYXRpb19kZW4pIHRpbWVzIGFz
IG1hbnkgYml0cwotICAgICogYXMgYWxsIG90aGVyIGNoYW5uZWxzICovCisgICAvKiBFYWNoIG5v
bmRpcmVjdGlvbmFsIGNoYW5uZWwgZ2V0cyAocmF0ZV9yYXRpb19udW0gLyByYXRlX3JhdGlvX2Rl
bikgdGltZXMKKyAgICAqIGFzIG1hbnkgYml0cyBhcyBhbGwgb3RoZXIgYW1iaXNvbmljcyBjaGFu
bmVscy4KKyAgICAqLwogICAgY29uc3QgaW50IHJhdGVfcmF0aW9fbnVtID0gNDsKICAgIGNvbnN0
IGludCByYXRlX3JhdGlvX2RlbiA9IDM7Ci0gICBjb25zdCBpbnQgbnVtX2NoYW5uZWxzID0gc3Qt
PmxheW91dC5uYl9zdHJlYW1zOworICAgY29uc3QgaW50IG5iX2NoYW5uZWxzID0gc3QtPmxheW91
dC5uYl9zdHJlYW1zICsgc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXM7CisgICBjb25zdCBp
bnQgbmJfbm9uZGlyZWN0aW9uYWxfY2hhbm5lbHMgPSBzdC0+bGF5b3V0Lm5iX2NvdXBsZWRfc3Ry
ZWFtcyAqIDIgKyAxOworICAgY29uc3QgaW50IG5iX2RpcmVjdGlvbmFsX2NoYW5uZWxzID0gc3Qt
PmxheW91dC5uYl9zdHJlYW1zIC0gMTsKIAogICAgaWYgKHN0LT5iaXRyYXRlX2Jwcz09T1BVU19B
VVRPKQogICAgewotICAgICAgdG90YWxfcmF0ZSA9IG51bV9jaGFubmVscyAqICgyMDAwMCArIHN0
LT5sYXlvdXQubmJfc3RyZWFtcyooRnMrNjAqRnMvZnJhbWVfc2l6ZSkpOworICAgICAgdG90YWxf
cmF0ZSA9IChzdC0+bGF5b3V0Lm5iX2NvdXBsZWRfc3RyZWFtcyArIHN0LT5sYXlvdXQubmJfc3Ry
ZWFtcykgKgorICAgICAgICAgKEZzKzYwKkZzL2ZyYW1lX3NpemUpICsgc3QtPmxheW91dC5uYl9z
dHJlYW1zICogMTUwMDA7CiAgICB9IGVsc2UgaWYgKHN0LT5iaXRyYXRlX2Jwcz09T1BVU19CSVRS
QVRFX01BWCkKICAgIHsKLSAgICAgIHRvdGFsX3JhdGUgPSBudW1fY2hhbm5lbHMgKiAzMjAwMDA7
Ci0gICB9IGVsc2UgeworICAgICAgdG90YWxfcmF0ZSA9IG5iX2NoYW5uZWxzICogMzIwMDAwOwor
ICAgfSBlbHNlCisgICB7CiAgICAgICB0b3RhbF9yYXRlID0gc3QtPmJpdHJhdGVfYnBzOwogICAg
fQogCi0gICAvKiBMZXQgeSBiZSB0aGUgbm9uLW1vbm8gcmF0ZSBhbmQgbGV0IHAsIHEgYmUgaW50
ZWdlcnMgc3VjaCB0aGF0IHRoZSBtb25vCi0gICAgKiBjaGFubmVsIHJhdGUgaXMgKHAvcSkgKiB5
LgorICAgLyogTGV0IHkgYmUgdGhlIGRpcmVjdGlvbmFsIHJhdGUsIG0gYmUgdGhlIG51bSBvZiBu
b25kaXJlY3Rpb25hbCBjaGFubmVscworICAgICogICBtID0gKHMgKyAxKQorICAgICogYW5kIGxl
dCBwLCBxIGJlIGludGVnZXJzIHN1Y2ggdGhhdCB0aGUgbm9uZGlyZWN0aW9uYWwgcmF0ZSBpcwor
ICAgICogICBtX3JhdGUgPSAocCAvIHEpICogeQogICAgICogQWxzbyBsZXQgVCBiZSB0aGUgdG90
YWwgYml0cmF0ZSB0byBhbGxvY2F0ZS4gVGhlbgotICAgICogICAobiAtIDEpIHkgKyAocC9xKSB5
ID0gVAotICAgICogICB5ID0gKFQgcSkgLyAocW4gLSBxICsgcCkKKyAgICAqICAgVCA9IChuIC0g
bSkgKiB5ICsgbSAqIG1fcmF0ZQorICAgICogU29sdmluZyBmb3IgeSwKKyAgICAqICAgeSA9IChx
ICogVCkgLyAobSAqIChwIC0gcSkgKyBuICogcSkKICAgICAqLwotICAgbm9uX21vbm9fcmF0ZSA9
Ci0gICAgICAgICB0b3RhbF9yYXRlICogcmF0ZV9yYXRpb19kZW4KLSAgICAgICAgIC8gKHJhdGVf
cmF0aW9fZGVuKm51bV9jaGFubmVscyArIHJhdGVfcmF0aW9fbnVtIC0gcmF0ZV9yYXRpb19kZW4p
OworICAgZGlyZWN0aW9uYWxfcmF0ZSA9CisgICAgICB0b3RhbF9yYXRlICogcmF0ZV9yYXRpb19k
ZW4KKyAgICAgIC8gKG5iX25vbmRpcmVjdGlvbmFsX2NoYW5uZWxzICogKHJhdGVfcmF0aW9fbnVt
IC0gcmF0ZV9yYXRpb19kZW4pCisgICAgICAgKyBuYl9jaGFubmVscyAqIHJhdGVfcmF0aW9fZGVu
KTsKIAotI2lmbmRlZiBGSVhFRF9QT0lOVAotICAgaWYgKHN0LT52YXJpYWJsZV9kdXJhdGlvbj09
T1BVU19GUkFNRVNJWkVfVkFSSUFCTEUgJiYgZnJhbWVfc2l6ZSAhPSBGcy81MCkKLSAgIHsKLSAg
ICAgIG9wdXNfaW50MzIgYm9udXMgPSA2MCooRnMvZnJhbWVfc2l6ZS01MCk7Ci0gICAgICBub25f
bW9ub19yYXRlICs9IGJvbnVzOwotICAgfQotI2VuZGlmCisgICAvKiBDYWxjdWxhdGUgdGhlIG5v
bmRpcmVjdGlvbmFsIHJhdGUuCisgICAgKiAgIG1fcmF0ZSA9IHkgKiAocCAvIHEpCisgICAgKi8K
KyAgIG5vbmRpcmVjdGlvbmFsX3JhdGUgPSBkaXJlY3Rpb25hbF9yYXRlICogcmF0ZV9yYXRpb19u
dW0gLyByYXRlX3JhdGlvX2RlbjsKIAotICAgcmF0ZVswXSA9IHRvdGFsX3JhdGUgLSAobnVtX2No
YW5uZWxzIC0gMSkgKiBub25fbW9ub19yYXRlOwotICAgZm9yIChpPTE7aTxzdC0+bGF5b3V0Lm5i
X3N0cmVhbXM7aSsrKQorICAgLyogQ2FsY3VsYXRlIHRoZSBsZWZ0b3ZlciBmcm9tIHRydW5jYXRp
b24gZXJyb3IuCisgICAgKiAgIGxlZnRvdmVyID0gVCAtIHkgKiAobiAtIG0pIC0gbV9yYXRlICog
bQorICAgICogUGxhY2UgbGVmdG92ZXIgYml0cyBpbiBvbW5pZGlyZWN0aW9uYWwgY2hhbm5lbC4K
KyAgICAqLworICAgbGVmdG92ZXJfYml0cyA9IHRvdGFsX3JhdGUKKyAgICAgIC0gZGlyZWN0aW9u
YWxfcmF0ZSAqIG5iX2RpcmVjdGlvbmFsX2NoYW5uZWxzCisgICAgICAtIG5vbmRpcmVjdGlvbmFs
X3JhdGUgKiBuYl9ub25kaXJlY3Rpb25hbF9jaGFubmVsczsKKworICAgLyogQ2FsY3VsYXRlIHJh
dGVzIGZvciBlYWNoIGNoYW5uZWwgKi8KKyAgIGZvciAoaSA9IDA7IGkgPCBzdC0+bGF5b3V0Lm5i
X3N0cmVhbXM7IGkrKykKICAgIHsKLSAgICAgIHJhdGVbaV0gPSBub25fbW9ub19yYXRlOworICAg
ICAgaWYgKGkgPCBzdC0+bGF5b3V0Lm5iX2NvdXBsZWRfc3RyZWFtcykKKyAgICAgIHsKKyAgICAg
ICAgIHJhdGVbaV0gPSBub25kaXJlY3Rpb25hbF9yYXRlICogMjsKKyAgICAgIH0gZWxzZSBpZiAo
aSA9PSBzdC0+bGF5b3V0Lm5iX2NvdXBsZWRfc3RyZWFtcykKKyAgICAgIHsKKyAgICAgICAgIHJh
dGVbaV0gPSBub25kaXJlY3Rpb25hbF9yYXRlICsgbGVmdG92ZXJfYml0czsKKyAgICAgIH0gZWxz
ZQorICAgICAgeworICAgICAgICAgcmF0ZVtpXSA9IGRpcmVjdGlvbmFsX3JhdGU7CisgICAgICB9
CiAgICB9CiB9CiAjZW5kaWYgLyogRU5BQkxFX0VYUEVSSU1FTlRBTF9BTUJJU09OSUNTICovCkBA
IC04MTIsOCArODgyLDggQEAgc3RhdGljIG9wdXNfaW50MzIgcmF0ZV9hbGxvY2F0aW9uKAogICAg
cmV0dXJuIHJhdGVfc3VtOwogfQogCi0vKiBNYXggc2l6ZSBpbiBjYXNlIHRoZSBlbmNvZGVyIGRl
Y2lkZXMgdG8gcmV0dXJuIHRocmVlIGZyYW1lcyAqLwotI2RlZmluZSBNU19GUkFNRV9UTVAgKDMq
MTI3NSs3KQorLyogTWF4IHNpemUgaW4gY2FzZSB0aGUgZW5jb2RlciBkZWNpZGVzIHRvIHJldHVy
biBzaXggZnJhbWVzICg2IHggMjAgbXMgPSAxMjAgbXMpICovCisjZGVmaW5lIE1TX0ZSQU1FX1RN
UCAoNioxMjc1KzEyKQogc3RhdGljIGludCBvcHVzX211bHRpc3RyZWFtX2VuY29kZV9uYXRpdmUK
ICgKICAgICBPcHVzTVNFbmNvZGVyICpzdCwKQEAgLTg1OSwzMiArOTI5LDggQEAgc3RhdGljIGlu
dCBvcHVzX211bHRpc3RyZWFtX2VuY29kZV9uYXRpdmUKICAgIG9wdXNfZW5jb2Rlcl9jdGwoKE9w
dXNFbmNvZGVyKilwdHIsIE9QVVNfR0VUX1ZCUigmdmJyKSk7CiAgICBvcHVzX2VuY29kZXJfY3Rs
KChPcHVzRW5jb2RlciopcHRyLCBDRUxUX0dFVF9NT0RFKCZjZWx0X21vZGUpKTsKIAotICAgewot
ICAgICAgb3B1c19pbnQzMiBkZWxheV9jb21wZW5zYXRpb247Ci0gICAgICBpbnQgY2hhbm5lbHM7
Ci0KLSAgICAgIGNoYW5uZWxzID0gc3QtPmxheW91dC5uYl9zdHJlYW1zICsgc3QtPmxheW91dC5u
Yl9jb3VwbGVkX3N0cmVhbXM7Ci0gICAgICBvcHVzX2VuY29kZXJfY3RsKChPcHVzRW5jb2Rlciop
cHRyLCBPUFVTX0dFVF9MT09LQUhFQUQoJmRlbGF5X2NvbXBlbnNhdGlvbikpOwotICAgICAgZGVs
YXlfY29tcGVuc2F0aW9uIC09IEZzLzQwMDsKLSAgICAgIGZyYW1lX3NpemUgPSBjb21wdXRlX2Zy
YW1lX3NpemUocGNtLCBhbmFseXNpc19mcmFtZV9zaXplLAotICAgICAgICAgICAgc3QtPnZhcmlh
YmxlX2R1cmF0aW9uLCBjaGFubmVscywgRnMsIHN0LT5iaXRyYXRlX2JwcywKLSAgICAgICAgICAg
IGRlbGF5X2NvbXBlbnNhdGlvbiwgZG93bm1peAotI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQot
ICAgICAgICAgICAgLCBzdC0+c3ViZnJhbWVfbWVtCi0jZW5kaWYKLSAgICAgICAgICAgICk7Ci0g
ICB9Ci0KLSAgIGlmICg0MDAqZnJhbWVfc2l6ZSA8IEZzKQotICAgewotICAgICAgUkVTVE9SRV9T
VEFDSzsKLSAgICAgIHJldHVybiBPUFVTX0JBRF9BUkc7Ci0gICB9Ci0gICAvKiBWYWxpZGF0ZSBm
cmFtZV9zaXplIGJlZm9yZSB1c2luZyBpdCB0byBhbGxvY2F0ZSBzdGFjayBzcGFjZS4KLSAgICAg
IFRoaXMgbWlycm9ycyB0aGUgY2hlY2tzIGluIG9wdXNfZW5jb2RlW19mbG9hdF0oKS4gKi8KLSAg
IGlmICg0MDAqZnJhbWVfc2l6ZSAhPSBGcyAmJiAyMDAqZnJhbWVfc2l6ZSAhPSBGcyAmJgotICAg
ICAgIDEwMCpmcmFtZV9zaXplICE9IEZzICYmICA1MCpmcmFtZV9zaXplICE9IEZzICYmCi0gICAg
ICAgIDI1KmZyYW1lX3NpemUgIT0gRnMgJiYgIDUwKmZyYW1lX3NpemUgIT0gMypGcykKKyAgIGZy
YW1lX3NpemUgPSBmcmFtZV9zaXplX3NlbGVjdChhbmFseXNpc19mcmFtZV9zaXplLCBzdC0+dmFy
aWFibGVfZHVyYXRpb24sIEZzKTsKKyAgIGlmIChmcmFtZV9zaXplIDw9IDApCiAgICB7CiAgICAg
ICBSRVNUT1JFX1NUQUNLOwogICAgICAgcmV0dXJuIE9QVVNfQkFEX0FSRzsKQEAgLTg5Miw2ICs5
MzgsOSBAQCBzdGF0aWMgaW50IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlX25hdGl2ZQogCiAgICAv
KiBTbWFsbGVzdCBwYWNrZXQgdGhlIGVuY29kZXIgY2FuIHByb2R1Y2UuICovCiAgICBzbWFsbGVz
dF9wYWNrZXQgPSBzdC0+bGF5b3V0Lm5iX3N0cmVhbXMqMi0xOworICAgLyogMTAwIG1zIG5lZWRz
IGFuIGV4dHJhIGJ5dGUgcGVyIHN0cmVhbSBmb3IgdGhlIFRvQy4gKi8KKyAgIGlmIChGcy9mcmFt
ZV9zaXplID09IDEwKQorICAgICBzbWFsbGVzdF9wYWNrZXQgKz0gc3QtPmxheW91dC5uYl9zdHJl
YW1zOwogICAgaWYgKG1heF9kYXRhX2J5dGVzIDwgc21hbGxlc3RfcGFja2V0KQogICAgewogICAg
ICAgUkVTVE9SRV9TVEFDSzsKQEAgLTEwMTMsNiArMTA2Miw5IEBAIHN0YXRpYyBpbnQgb3B1c19t
dWx0aXN0cmVhbV9lbmNvZGVfbmF0aXZlCiAgICAgICBjdXJyX21heCA9IG1heF9kYXRhX2J5dGVz
IC0gdG90X3NpemU7CiAgICAgICAvKiBSZXNlcnZlIG9uZSBieXRlIGZvciB0aGUgbGFzdCBzdHJl
YW0gYW5kIHR3byBmb3IgdGhlIG90aGVycyAqLwogICAgICAgY3Vycl9tYXggLT0gSU1BWCgwLDIq
KHN0LT5sYXlvdXQubmJfc3RyZWFtcy1zLTEpLTEpOworICAgICAgLyogRm9yIDEwMCBtcywgcmVz
ZXJ2ZSBhbiBleHRyYSBieXRlIHBlciBzdHJlYW0gZm9yIHRoZSBUb0MgKi8KKyAgICAgIGlmIChG
cy9mcmFtZV9zaXplID09IDEwKQorICAgICAgICBjdXJyX21heCAtPSBzdC0+bGF5b3V0Lm5iX3N0
cmVhbXMtcy0xOwogICAgICAgY3Vycl9tYXggPSBJTUlOKGN1cnJfbWF4LE1TX0ZSQU1FX1RNUCk7
CiAgICAgICAvKiBSZXBhY2tldGl6ZXIgd2lsbCBhZGQgb25lIG9yIHR3byBieXRlcyBmb3Igc2Vs
Zi1kZWxpbWl0ZWQgZnJhbWVzICovCiAgICAgICBpZiAocyAhPSBzdC0+bGF5b3V0Lm5iX3N0cmVh
bXMtMSkgY3Vycl9tYXggLT0gIGN1cnJfbWF4PjI1MyA/IDIgOiAxOwpAQCAtMTE2MSw5ICsxMjEz
LDExIEBAIGludCBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKE9wdXNNU0VuY29kZXIgKnN0
LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgY2FzZSBPUFVTX1NFVF9CSVRSQVRFX1JFUVVFU1Q6CiAg
ICB7CiAgICAgICBvcHVzX2ludDMyIHZhbHVlID0gdmFfYXJnKGFwLCBvcHVzX2ludDMyKTsKLSAg
ICAgIGlmICh2YWx1ZTwwICYmIHZhbHVlIT1PUFVTX0FVVE8gJiYgdmFsdWUhPU9QVVNfQklUUkFU
RV9NQVgpCisgICAgICBpZiAodmFsdWUgIT0gT1BVU19BVVRPICYmIHZhbHVlICE9IE9QVVNfQklU
UkFURV9NQVgpCiAgICAgICB7Ci0gICAgICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAgICBpZiAo
dmFsdWUgPD0gMCkKKyAgICAgICAgICAgIGdvdG8gYmFkX2FyZzsKKyAgICAgICAgIHZhbHVlID0g
SU1JTigzMDAwMDAqc3QtPmxheW91dC5uYl9jaGFubmVscywgSU1BWCg1MDAqc3QtPmxheW91dC5u
Yl9jaGFubmVscywgdmFsdWUpKTsKICAgICAgIH0KICAgICAgIHN0LT5iaXRyYXRlX2JwcyA9IHZh
bHVlOwogICAgfQpAQCAtMTIwNiw2ICsxMjYwLDcgQEAgaW50IG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoT3B1c01TRW5jb2RlciAqc3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICBjYXNlIE9Q
VVNfR0VUX0lOQkFORF9GRUNfUkVRVUVTVDoKICAgIGNhc2UgT1BVU19HRVRfRk9SQ0VfQ0hBTk5F
TFNfUkVRVUVTVDoKICAgIGNhc2UgT1BVU19HRVRfUFJFRElDVElPTl9ESVNBQkxFRF9SRVFVRVNU
OgorICAgY2FzZSBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKICAg
IHsKICAgICAgIE9wdXNFbmNvZGVyICplbmM7CiAgICAgICAvKiBGb3IgaW50MzIqIEdFVCBwYXJh
bXMsIGp1c3QgcXVlcnkgdGhlIGZpcnN0IHN0cmVhbSAqLwpAQCAtMTI1Miw2ICsxMzA3LDcgQEAg
aW50IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoT3B1c01TRW5jb2RlciAqc3QsIGludCBy
ZXF1ZXN0LCAuLi4pCiAgICBjYXNlIE9QVVNfU0VUX0ZPUkNFX01PREVfUkVRVUVTVDoKICAgIGNh
c2UgT1BVU19TRVRfRk9SQ0VfQ0hBTk5FTFNfUkVRVUVTVDoKICAgIGNhc2UgT1BVU19TRVRfUFJF
RElDVElPTl9ESVNBQkxFRF9SRVFVRVNUOgorICAgY2FzZSBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJ
T05fRElTQUJMRURfUkVRVUVTVDoKICAgIHsKICAgICAgIGludCBzOwogICAgICAgLyogVGhpcyB3
b3JrcyBmb3IgaW50MzIgcGFyYW1zICovCkBAIC0xMzEzLDcgKzEzNjksNiBAQCBpbnQgb3B1c19t
dWx0aXN0cmVhbV9lbmNvZGVyX2N0bChPcHVzTVNFbmNvZGVyICpzdCwgaW50IHJlcXVlc3QsIC4u
LikKICAgIGNhc2UgT1BVU19SRVNFVF9TVEFURToKICAgIHsKICAgICAgIGludCBzOwotICAgICAg
c3QtPnN1YmZyYW1lX21lbVswXSA9IHN0LT5zdWJmcmFtZV9tZW1bMV0gPSBzdC0+c3ViZnJhbWVf
bWVtWzJdID0gMDsKICAgICAgIGlmIChzdC0+bWFwcGluZ190eXBlID09IE1BUFBJTkdfVFlQRV9T
VVJST1VORCkKICAgICAgIHsKICAgICAgICAgIE9QVVNfQ0xFQVIobXNfZ2V0X3ByZWVtcGhfbWVt
KHN0KSwgc3QtPmxheW91dC5uYl9jaGFubmVscyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX3ByaXZh
dGUuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc3JjL29wdXNfcHJpdmF0ZS5oCmluZGV4IDNiNjJlZWQwOTY0ZjA1MzVlZjEyMDE3YzM4
OWFiYjYyN2UzYzRkMGEuLmE3MzFjYzU1MGVhNDM3MjRkNTJiZWI2NTBjNDk3MGRhOWFkYmRhMDEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc3JjL29wdXNfcHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfcHJpdmF0ZS5oCkBA
IC05MiwxNCArOTIsNiBAQCBpbnQgZW5jb2RlX3NpemUoaW50IHNpemUsIHVuc2lnbmVkIGNoYXIg
KmRhdGEpOwogCiBvcHVzX2ludDMyIGZyYW1lX3NpemVfc2VsZWN0KG9wdXNfaW50MzIgZnJhbWVf
c2l6ZSwgaW50IHZhcmlhYmxlX2R1cmF0aW9uLCBvcHVzX2ludDMyIEZzKTsKIAotb3B1c19pbnQz
MiBjb21wdXRlX2ZyYW1lX3NpemUoY29uc3Qgdm9pZCAqYW5hbHlzaXNfcGNtLCBpbnQgZnJhbWVf
c2l6ZSwKLSAgICAgIGludCB2YXJpYWJsZV9kdXJhdGlvbiwgaW50IEMsIG9wdXNfaW50MzIgRnMs
IGludCBiaXRyYXRlX2JwcywKLSAgICAgIGludCBkZWxheV9jb21wZW5zYXRpb24sIGRvd25taXhf
ZnVuYyBkb3dubWl4Ci0jaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCi0gICAgICAsIGZsb2F0ICpz
dWJmcmFtZV9tZW0KLSNlbmRpZgotICAgICAgKTsKLQogb3B1c19pbnQzMiBvcHVzX2VuY29kZV9u
YXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV9z
aXplLAogICAgICAgdW5zaWduZWQgY2hhciAqZGF0YSwgb3B1c19pbnQzMiBvdXRfZGF0YV9ieXRl
cywgaW50IGxzYl9kZXB0aCwKICAgICAgIGNvbnN0IHZvaWQgKmFuYWx5c2lzX3BjbSwgb3B1c19p
bnQzMiBhbmFseXNpc19zaXplLCBpbnQgYzEsIGludCBjMiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvb3B1
c19kZWNvZGVfZnV6emVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNfZGVjb2RlX2Z1enplci5jCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjkwMDI2MjIxY2VhZjI5OWIzZjA0MTQ1ZmQ0OTcxNmZiNWIxNDZkMjIKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3Rlc3RzL29wdXNfZGVjb2RlX2Z1enplci5jCkBAIC0wLDAgKzEsMTI2IEBACisvKiBDb3B5
cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4gKi8KKy8qCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICAgYXJlIG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFT
IElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UCisgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSCisgICBPUiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwKKyAgIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAgIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICAgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgor
ICAgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcKKyAgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaWZkZWYgSEFWRV9D
T05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDxzdGRpbnQu
aD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlICJv
cHVzLmgiCisjaW5jbHVkZSAib3B1c190eXBlcy5oIgorCisjZGVmaW5lIE1BWF9GUkFNRV9TQU1Q
IDU3NjAKKyNkZWZpbmUgTUFYX1BBQ0tFVCAxNTAwCisKKy8qIDQgYnl0ZXM6IHBhY2tldCBsZW5n
dGgsIDQgYnl0ZXM6IGVuY29kZXIgZmluYWwgcmFuZ2UgKi8KKyNkZWZpbmUgU0VUVVBfQllURV9D
T1VOVCA4CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBpbnQgZnM7CisgICAgaW50IGNoYW5uZWxz
OworfSBUb2NJbmZvOworCitzdGF0aWMgdm9pZCBQYXJzZVRvYyhjb25zdCB1aW50OF90ICp0b2Ms
IFRvY0luZm8gKmNvbnN0IGluZm8pIHsKKyAgICBjb25zdCBpbnQgc2FtcF9mcmVxc1s1XSA9IHs4
MDAwLCAxMjAwMCwgMTYwMDAsIDI0MDAwLCA0ODAwMH07CisgICAgY29uc3QgaW50IGJhbmR3aWR0
aCA9IG9wdXNfcGFja2V0X2dldF9iYW5kd2lkdGgodG9jKTsKKworICAgIGluZm8tPmZzID0gc2Ft
cF9mcmVxc1tiYW5kd2lkdGggLSBPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EXTsKKyAgICBpbmZv
LT5jaGFubmVscyA9IG9wdXNfcGFja2V0X2dldF9uYl9jaGFubmVscyh0b2MpOworfQorCisvKiBU
cmVhdHMgdGhlIGlucHV0IGRhdGEgYXMgY29uY2F0ZW5hdGVkIHBhY2tldHMgZW5jb2RlZCBieSBv
cHVzX2RlbW8sCisgKiBzdHJ1Y3R1cmVkIGFzCisgKiAgICBieXRlcyAwLi4zOiBwYWNrZXQgbGVu
Z3RoCisgKiAgICBieXRlcyA0Li43OiBlbmNvZGVyIGZpbmFsIHJhbmdlCisgKiAgICBieXRlcyA4
KyAgOiBPcHVzIHBhY2tldCwgaW5jbHVkaW5nIFRvQworICovCitpbnQgTExWTUZ1enplclRlc3RP
bmVJbnB1dChjb25zdCB1aW50OF90ICpkYXRhLCBzaXplX3Qgc2l6ZSkgeworICAgIE9wdXNEZWNv
ZGVyICpkZWM7CisgICAgb3B1c19pbnQxNiAqcGNtOworICAgIHVpbnQ4X3QgKnBhY2tldDsKKyAg
ICBUb2NJbmZvIHRvYzsKKyAgICBpbnQgaSwgZXJyOworCisgICAgLyogTm90IGVub3VnaCBkYXRh
IHRvIHNldHVwIHRoZSBkZWNvZGVyICgrMSBmb3IgdGhlIFRvQykgKi8KKyAgICBpZiAoc2l6ZSA8
IFNFVFVQX0JZVEVfQ09VTlQgKyAxKSB7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAg
IC8qIENyZWF0ZSBkZWNvZGVyIGJhc2VkIG9uIGluZm8gZnJvbSB0aGUgZmlyc3QgVG9DIGF2YWls
YWJsZSAqLworICAgIFBhcnNlVG9jKCZkYXRhW1NFVFVQX0JZVEVfQ09VTlRdLCAmdG9jKTsKKwor
ICAgIGRlYyA9IG9wdXNfZGVjb2Rlcl9jcmVhdGUodG9jLmZzLCB0b2MuY2hhbm5lbHMsICZlcnIp
OworICAgIGlmIChlcnIgIT0gT1BVU19PSyB8IGRlYyA9PSBOVUxMKSB7CisgICAgICAgIHJldHVy
biAwOworICAgIH0KKworICAgIHBjbSA9IChvcHVzX2ludDE2KikgbWFsbG9jKHNpemVvZigqcGNt
KSAqIE1BWF9GUkFNRV9TQU1QICogdG9jLmNoYW5uZWxzKTsKKyAgICBwYWNrZXQgPSAodWludDhf
dCopIGNhbGxvYyhNQVhfUEFDS0VULCBzaXplb2YoKnBhY2tldCkpOworCisgICAgaSA9IDA7Cisg
ICAgd2hpbGUgKDEpIHsKKyAgICAgICAgaW50IGxlbiwgZmVjOworCisgICAgICAgIGlmIChpICsg
U0VUVVBfQllURV9DT1VOVCA+PSBzaXplKSB7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
fQorCisgICAgICAgIGxlbiA9IChvcHVzX3VpbnQzMikgZGF0YVtpICAgIF0gPDwgMjQgfAorICAg
ICAgICAgICAgICAob3B1c191aW50MzIpIGRhdGFbaSArIDFdIDw8IDE2IHwKKyAgICAgICAgICAg
ICAgKG9wdXNfdWludDMyKSBkYXRhW2kgKyAyXSA8PCAgOCB8CisgICAgICAgICAgICAgIChvcHVz
X3VpbnQzMikgZGF0YVtpICsgM107CisgICAgICAgIGlmIChsZW4gPiBNQVhfUEFDS0VUIHx8IGxl
biA8IDApIHsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisKKyAgICAgICAgLyogQnl0
ZXMgNC4uNyByZXByZXNlbnQgZW5jb2RlciBmaW5hbCByYW5nZSwgYnV0IGFyZSB1bnVzZWQgaGVy
ZS4KKyAgICAgICAgICogSW5zdGVhZCwgYnl0ZSA0IGlzIHJlcHVycG9zZWQgdG8gZGV0ZXJtaW5l
IGlmIEZFQyBpcyB1c2VkLiAqLworICAgICAgICBmZWMgPSBkYXRhW2kgKyA0XSAmIDE7CisKKyAg
ICAgICAgLyogTG9zdCBwYWNrZXQgKi8KKyAgICAgICAgaWYgKGxlbiA9PSAwKSB7CisgICAgICAg
ICAgICBpbnQgZnJhbWVfc2l6ZTsKKyAgICAgICAgICAgIG9wdXNfZGVjb2Rlcl9jdGwoZGVjLCBP
UFVTX0dFVF9MQVNUX1BBQ0tFVF9EVVJBVElPTigmZnJhbWVfc2l6ZSkpOworICAgICAgICAgICAg
KHZvaWQpIG9wdXNfZGVjb2RlKGRlYywgTlVMTCwgc2l6ZSwgcGNtLCBmcmFtZV9zaXplLCBmZWMp
OworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKGkgKyBTRVRVUF9CWVRFX0NPVU5U
ICsgbGVuID4gc2l6ZSkgeworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgbWVtY3B5KHBjbSwgJmRhdGFbaSArIFNFVFVQX0JZVEVfQ09VTlRdLCBsZW4p
OworICAgICAgICAgICAgKHZvaWQpIG9wdXNfZGVjb2RlKGRlYywgZGF0YSwgc2l6ZSwgcGNtLCBN
QVhfRlJBTUVfU0FNUCwgZmVjKTsKKyAgICAgICAgfQorCisgICAgICAgIGkgKz0gU0VUVVBfQllU
RV9DT1VOVCArIGxlbjsKKyAgICB9CisKKyAgICBvcHVzX2RlY29kZXJfZGVzdHJveShkZWMpOwor
ICAgIGZyZWUocGNtKTsKKyAgICBmcmVlKHBhY2tldCk7CisKKyAgICByZXR1cm4gMDsKK30KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvdGVzdHMvb3B1c19kZWNvZGVfZnV6emVyLm9wdGlvbnMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNfZGVj
b2RlX2Z1enplci5vcHRpb25zCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU1YWU3MWI5MzdhNGUzNTU3ZjA0NzU0NTA4
MGYyZTUzODczNmQ3MGYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNfZGVjb2RlX2Z1enpl
ci5vcHRpb25zCkBAIC0wLDAgKzEsMiBAQAorW2xpYmZ1enplcl0KK21heF9sZW4gPSAxMDAwMDAw
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3Rlc3RzL29wdXNfZW5jb2RlX3JlZ3Jlc3Npb25zLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNf
ZW5jb2RlX3JlZ3Jlc3Npb25zLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjkyMzQ3MzAxNDQzOTkzNDFiNTBhOGIz
MjgyYzYyOTEyMjNiNjY5MQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvb3B1c19lbmNvZGVfcmVn
cmVzc2lvbnMuYwpAQCAtMCwwICsxLDEwMzUgQEAKKy8qIENvcHlyaWdodCAoYykgMjAxNiBNYXJr
IEhhcnJpcywgSmVhbi1NYXJjIFZhbGluICovCisvKgorICAgUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJ
UycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVAorICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAg
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworCisjaWZkZWYgSEFWRV9D
T05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDxzdGRpby5o
PgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPHN0
ZGludC5oPgorI2luY2x1ZGUgPG1hdGguaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRl
IDxhc3NlcnQuaD4KKyNpbmNsdWRlICJvcHVzX211bHRpc3RyZWFtLmgiCisjaW5jbHVkZSAib3B1
cy5oIgorI2luY2x1ZGUgInRlc3Rfb3B1c19jb21tb24uaCIKKworCitzdGF0aWMgaW50IGNlbHRf
ZWNfaW50ZXJuYWxfZXJyb3Iodm9pZCkKK3sKKyAgICBPcHVzTVNFbmNvZGVyICplbmM7CisgICAg
aW50IGVycjsKKyAgICB1bnNpZ25lZCBjaGFyIGRhdGFbMjQ2MF07CisgICAgaW50IHN0cmVhbXM7
CisgICAgaW50IGNvdXBsZWRfc3RyZWFtczsKKyAgICB1bnNpZ25lZCBjaGFyIG1hcHBpbmdbMV07
CisKKyAgICBlbmMgPSBvcHVzX211bHRpc3RyZWFtX3N1cnJvdW5kX2VuY29kZXJfY3JlYXRlKDE2
MDAwLCAxLCAxLCAmc3RyZWFtcywKKyAgICAgICAgJmNvdXBsZWRfc3RyZWFtcywgbWFwcGluZywg
T1BVU19BUFBMSUNBVElPTl9WT0lQLCAmZXJyKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX01VU0lDKSk7CisgICAgb3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUigwKSk7CisgICAgb3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUl9DT05TVFJBSU5UKDAp
KTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUFJFRElD
VElPTl9ESVNBQkxFRCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMs
IE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgwKSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgwKSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMCkpOworICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJRFRIKE9QVVNf
QkFORFdJRFRIX05BUlJPV0JBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3Rs
KGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQVVUTykpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9MU0JfREVQVEgoOCkpOworICAgIG9wdXNfbXVs
dGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9JTkJBTkRfRkVDKDApKTsKKyAgICBv
cHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEFDS0VUX0xPU1NfUEVS
QygwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJ
VFJBVEUoT1BVU19BVVRPKSk7CisgICAgeworICAgICAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNt
WzMyMF0gPQorICAgICAgICB7CisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgMTc5MiwgIDE3OTksICAxNzk5
LAorICAgICAgICAgICAgICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTks
ICAxNzk5LCAgMTc5OSwgIDE3OTksCisgICAgICAgICAgICAgIDE3OTksICAxNzk5LCAgMTc5OSwg
IDE3OTksICAxNzk5LCAgICAgMCwgMjU2MDAsICAxNzk5LCAgMTc5OSwKKyAgICAgICAgICAgICAg
MTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAx
Nzk5LAorICAgICAgICAgICAgICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgICAgNywgICAg
IDAsICAgMjU1LCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsIDMyNzY3LCAgICAtMSwKKyAgICAgICAgICAg
ICAgICAgMCwgICAgIDAsICAgICAwLCAgIDEwMCwgICAgIDAsIDE2Mzg0LCAgICAgMCwgICAgIDAs
ICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICA0LCAgICAgMCwg
ICAgIDAsICAtMjU2LCAgIDI1NSwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAg
ICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwtMzI3NjgsICAgICAwLCAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAg
ICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
IDEyOCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAtMjU2LCAgICAgMCwgICAgIDAsICAgIDMyLCAgICAgMCwKKyAg
ICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgNDM1
MiwgICAgIDQsICAgMjI4LAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgIDU2MzIsICAgICAwLCAgICAgMCwK
KyAgICAgICAgICAgICAgICAgMCwgICAgIDAsLTMyNzY4LCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgIDI1NiwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAg
LTM5NDQsIDEwNTAwLCAgNDI4NSwgMTA0NTksIC02NDc0LCAxMDIwNCwgLTY1MzksIDExNjAxLCAt
NjgyNCwKKyAgICAgICAgICAgICAxMzM4NSwgLTcxNDIsIDEzODcyLC0xMTU1MywgMTM2NzAsIC03
NzI1LCAxMzQ2MywgLTY4ODcsICA3ODc0LAorICAgICAgICAgICAgIC01NTgwLCAxMjYwMCwgLTQ5
NjQsIDEyNDgwLCAgMzI1NCwgMTE3NDEsIC00MjEwLCAgOTc0MSwgLTMxNTUsCisgICAgICAgICAg
ICAgIDc1NTgsIC01NDY4LCAgNTQzMSwgLTEwNzMsICAzNjQxLCAtMTMwNCwgICAgIDAsICAgIC0x
LCAgIDM0MywKKyAgICAgICAgICAgICAgICAyNiwgICAgIDAsICAgICAwLCAgIDE1MCwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAg
ICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAg
ICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTks
ICAxNzk5LCAtMjU1MywKKyAgICAgICAgICAgICAgICAgNywgIDE3OTIsICAxNzk5LCAgMTc5OSwg
IDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LAorICAgICAgICAgICAgICAxNzk5LCAg
MTc5OSwgIDE3OTksICAxNzk5LCAtOTcyMQorICAgICAgICB9OworICAgICAgICBlcnIgPSBvcHVz
X211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBjbSwgMzIwLCBkYXRhLCAyNDYwKTsKKyAgICAgICAg
YXNzZXJ0KGVyciA+IDApOworICAgIH0KKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3Rs
KGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX01VU0lDKSk7CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUigwKSk7CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUl9DT05TVFJBSU5UKDEpKTsKKyAg
ICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUFJFRElDVElPTl9E
SVNBQkxFRCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMTApKTsKKyAgICBvcHVzX211bHRp
c3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRXSURUSChPUFVTX0JBTkRX
SURUSF9GVUxMQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQpKTsKKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTFNCX0RFUFRIKDE4KSk7CisgICAg
b3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0lOQkFORF9GRUMoMSkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRf
TE9TU19QRVJDKDkwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX0JJVFJBVEUoMjgwMTMwKSk7CisgICAgeworICAgICAgICBzdGF0aWMgY29uc3Qgc2hv
cnQgcGNtWzE2MF0gPQorICAgICAgICB7CisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAg
ICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUyNiwgLTk1MTAs
IC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAg
ICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAg
ICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgMjU2MDAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAg
ICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwK
KyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwCisgICAgICAgIH07CisgICAgICAgIGVyciA9IG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2RlKGVuYywgcGNtLCAxNjAsIGRhdGEsIDI0NjApOworICAgICAg
ICBhc3NlcnQoZXJyID4gMCk7CisgICAgfQorICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfTVVTSUMpKTsKKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSKDApKTsKKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoMSkpOwor
ICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9O
X0RJU0FCTEVEKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRFRYKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElUWSgxMCkpOworICAgIG9wdXNfbXVs
dGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJRFRIKE9QVVNfQkFO
RFdJRFRIX0ZVTExCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMs
IE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9GVUxMQkFORCkpOworICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9MU0JfREVQVEgoMTgpKTsKKyAg
ICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfSU5CQU5EX0ZFQygx
KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BBQ0tF
VF9MT1NTX1BFUkMoOTApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfQklUUkFURSgyODAxMzApKTsKKyAgICB7CisgICAgICAgIHN0YXRpYyBjb25zdCBz
aG9ydCBwY21bMTYwXSA9CisgICAgICAgIHsKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAg
ICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAg
ICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAg
ICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwg
LTk0OTQsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAor
ICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAKKyAgICAgICAgfTsKKyAgICAgICAgZXJyID0g
b3B1c19tdWx0aXN0cmVhbV9lbmNvZGUoZW5jLCBwY20sIDE2MCwgZGF0YSwgMjQ2MCk7CisgICAg
ICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICB9CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVy
X2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJQykpOworICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkpOworICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVCgxKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJ
T05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMCkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMSkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDEwKSk7CisgICAgb3B1c19t
dWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9CQU5EV0lEVEgoT1BVU19C
QU5EV0lEVEhfRlVMTEJBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVu
YywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EKSk7CisgICAgb3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSCgxOCkpOwor
ICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9JTkJBTkRfRkVD
KDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEFD
S0VUX0xPU1NfUEVSQyg5MCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9CSVRSQVRFKDI4MDEzMCkpOworICAgIHsKKyAgICAgICAgc3RhdGljIGNvbnN0
IHNob3J0IHBjbVsxNjBdID0KKyAgICAgICAgeworICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAg
ICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAg
ICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisg
ICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
CisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk0NzksIC05NTEwLAorICAgICAgICAgICAg
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMAorICAgICAgICB9OworICAgICAgICBlcnIg
PSBvcHVzX211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBjbSwgMTYwLCBkYXRhLCAyNDYwKTsKKyAg
ICAgICAgYXNzZXJ0KGVyciA+IDApOworICAgIH0KKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX01VU0lDKSk7CisgICAgb3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUigwKSk7CisgICAgb3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUl9DT05TVFJBSU5UKDEp
KTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUFJFRElD
VElPTl9ESVNBQkxFRCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMs
IE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgwKSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgxKSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMTApKTsKKyAgICBvcHVz
X211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRXSURUSChPUFVT
X0JBTkRXSURUSF9GVUxMQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQpKTsKKyAgICBv
cHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTFNCX0RFUFRIKDE4KSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0lOQkFORF9G
RUMoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9Q
QUNLRVRfTE9TU19QRVJDKDkwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX0JJVFJBVEUoMjgwMTMwKSk7CisgICAgeworICAgICAgICBzdGF0aWMgY29u
c3Qgc2hvcnQgcGNtWzE2MF0gPQorICAgICAgICB7CisgICAgICAgICAgICAgLTk1MTAsIC05NTEw
LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwKKyAgICAg
ICAgICAgICAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwg
IDE3OTksICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAg
ICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAtMjU2LCAgIDI1NSwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwK
KyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAxMjgsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAg
ICAgIDAsICAgIDMyLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwKKyAgICAgICAgICAgICAgNDM1MiwgICAgIDQsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLCAgIDE0OCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAg
ICAgIDU2MzIKKyAgICAgICAgfTsKKyAgICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGUoZW5jLCBwY20sIDE2MCwgZGF0YSwgMjQ2MCk7CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsK
KyAgICB9CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJ
R05BTChPUFVTX1NJR05BTF9WT0lDRSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVh
bV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJ
T05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9EVFgoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9DT01QTEVYSVRZKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3Rs
KGVuYywgT1BVU19TRVRfTUFYX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURU
SChPUFVTX0FVVE8pKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfTFNCX0RFUFRIKDEyKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX0lOQkFORF9GRUMoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDQxKSk7CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMjE0MjUpKTsKKyAgICB7
CisgICAgICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY21bNDBdID0KKyAgICAgICAgeworICAgICAg
ICAgICAgIDEwNDU5LCAtNjQ3NCwgMTAyMDQsIC02NTM5LCAxMTYwMSwgLTY4MjQsIDEzMzg1LCAt
NzE0MiwgMTM4NzIsCisgICAgICAgICAgICAtMTE1NTMsIDEzNjcwLCAtNzcyNSwgMTM0NjMsIC02
ODg3LCAxMjQ4MiwgLTU1ODAsIDEyNjAwLCAtNDk2NCwKKyAgICAgICAgICAgICAxMjQ4MCwgIDMy
NTQsIDExNzQxLCAtNDIxMCwgIDk3NDEsIC0zMTU1LCAgNzU1OCwgLTU0NjgsICA1NDMxLAorICAg
ICAgICAgICAgIC0xMDczLCAgMzY0MSwgLTEzMDQsICAgICAwLCAgICAtMSwgICAzNDMsICAgIDI2
LCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgLTI1NiwgICAyMjYK
KyAgICAgICAgfTsKKyAgICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNvZGUoZW5jLCBw
Y20sIDQwLCBkYXRhLCAyNDYwKTsKKyAgICAgICAgYXNzZXJ0KGVyciA+IDApOworICAgICAgICAv
KiByZXR1cm5zIC0zICovCisgICAgfQorICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9kZXN0
cm95KGVuYyk7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgbXNjYnJfZW5jb2RlX2Zh
aWwxMCh2b2lkKQoreworICAgIE9wdXNNU0VuY29kZXIgKmVuYzsKKyAgICBpbnQgZXJyOworICAg
IHVuc2lnbmVkIGNoYXIgZGF0YVs2MjczMDBdOworICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj
aGFyIG1hcHBpbmdbMjU1XSA9CisgICAgeworICAgICAgICAgIDAsICAxLCAgMiwgIDMsICA0LCAg
NSwgIDYsICA3LCAgOCwgIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LAorICAgICAgICAg
MTcsIDE4LCAxOSwgMjAsIDIxLCAyMiwgMjMsIDI0LCAyNSwgMjYsIDI3LCAyOCwgMjksIDMwLCAz
MSwgMzIsIDMzLAorICAgICAgICAgMzQsIDM1LCAzNiwgMzcsIDM4LCAzOSwgNDAsIDQxLCA0Miwg
NDMsIDQ0LCA0NSwgNDYsIDQ3LCA0OCwgNDksIDUwLAorICAgICAgICAgNTEsIDUyLCA1MywgNTQs
IDU1LCA1NiwgNTcsIDU4LCA1OSwgNjAsIDYxLCA2MiwgNjMsIDY0LCA2NSwgNjYsIDY3LAorICAg
ICAgICAgNjgsIDY5LCA3MCwgNzEsIDcyLCA3MywgNzQsIDc1LCA3NiwgNzcsIDc4LCA3OSwgODAs
IDgxLCA4MiwgODMsIDg0LAorICAgICAgICAgODUsIDg2LCA4NywgODgsIDg5LCA5MCwgOTEsIDky
LCA5MywgOTQsIDk1LCA5NiwgOTcsIDk4LCA5OSwxMDAsMTAxLAorICAgICAgICAxMDIsMTAzLDEw
NCwxMDUsMTA2LDEwNywxMDgsMTA5LDExMCwxMTEsMTEyLDExMywxMTQsMTE1LDExNiwxMTcsMTE4
LAorICAgICAgICAxMTksMTIwLDEyMSwxMjIsMTIzLDEyNCwxMjUsMTI2LDEyNywxMjgsMTI5LDEz
MCwxMzEsMTMyLDEzMywxMzQsMTM1LAorICAgICAgICAxMzYsMTM3LDEzOCwxMzksMTQwLDE0MSwx
NDIsMTQzLDE0NCwxNDUsMTQ2LDE0NywxNDgsMTQ5LDE1MCwxNTEsMTUyLAorICAgICAgICAxNTMs
MTU0LDE1NSwxNTYsMTU3LDE1OCwxNTksMTYwLDE2MSwxNjIsMTYzLDE2NCwxNjUsMTY2LDE2Nywx
NjgsMTY5LAorICAgICAgICAxNzAsMTcxLDE3MiwxNzMsMTc0LDE3NSwxNzYsMTc3LDE3OCwxNzks
MTgwLDE4MSwxODIsMTgzLDE4NCwxODUsMTg2LAorICAgICAgICAxODcsMTg4LDE4OSwxOTAsMTkx
LDE5MiwxOTMsMTk0LDE5NSwxOTYsMTk3LDE5OCwxOTksMjAwLDIwMSwyMDIsMjAzLAorICAgICAg
ICAyMDQsMjA1LDIwNiwyMDcsMjA4LDIwOSwyMTAsMjExLDIxMiwyMTMsMjE0LDIxNSwyMTYsMjE3
LDIxOCwyMTksMjIwLAorICAgICAgICAyMjEsMjIyLDIyMywyMjQsMjI1LDIyNiwyMjcsMjI4LDIy
OSwyMzAsMjMxLDIzMiwyMzMsMjM0LDIzNSwyMzYsMjM3LAorICAgICAgICAyMzgsMjM5LDI0MCwy
NDEsMjQyLDI0MywyNDQsMjQ1LDI0NiwyNDcsMjQ4LDI0OSwyNTAsMjUxLDI1MiwyNTMsMjU0Cisg
ICAgfTsKKworICAgIGVuYyA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jcmVhdGUoODAwMCwg
MjU1LCAyNTQsIDEsIG1hcHBpbmcsCisgICAgICAgIE9QVVNfQVBQTElDQVRJT05fUkVTVFJJQ1RF
RF9MT1dERUxBWSwgJmVycik7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMs
IE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9WT0lDRSkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVCgwKSk7CisgICAgb3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJM
RUQoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9G
T1JDRV9DSEFOTkVMUygyKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMs
IE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgxKSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgxKSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMikpOworICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJRFRIKE9QVVNf
QkFORFdJRFRIX05BUlJPV0JBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3Rs
KGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQVVUTykpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9MU0JfREVQVEgoMTQpKTsKKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfSU5CQU5EX0ZFQygwKSk7CisgICAg
b3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BBQ0tFVF9MT1NTX1BF
UkMoNTcpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
QklUUkFURSgzNjQyNjc1KSk7CisgICAgeworICAgICAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNt
WzIwKjI1NV0gPQorICAgICAgICB7CisgICAgICAgICAgICAgICAgIDAKKyAgICAgICAgfTsKKyAg
ICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNvZGUoZW5jLCBwY20sIDIwLCBkYXRhLCA2
MjczMDApOworICAgICAgICBhc3NlcnQoZXJyID4gMCk7CisgICAgICAgIC8qIHJldHVybnMgLTEg
Ki8KKyAgICB9CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2Rlc3Ryb3koZW5jKTsKKyAg
ICByZXR1cm4gMDsKK30KKworc3RhdGljIGludCBtc2Nicl9lbmNvZGVfZmFpbCh2b2lkKQorewor
ICAgIE9wdXNNU0VuY29kZXIgKmVuYzsKKyAgICBpbnQgZXJyOworICAgIHVuc2lnbmVkIGNoYXIg
ZGF0YVs0NzIzMjBdOworICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIG1hcHBpbmdbMTky
XSA9CisgICAgeworICAgICAgICAgIDAsICAxLCAgMiwgIDMsICA0LCAgNSwgIDYsICA3LCAgOCwg
IDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LAorICAgICAgICAgMTcsIDE4LCAxOSwgMjAs
IDIxLCAyMiwgMjMsIDI0LCAyNSwgMjYsIDI3LCAyOCwgMjksIDMwLCAzMSwgMzIsIDMzLAorICAg
ICAgICAgMzQsIDM1LCAzNiwgMzcsIDM4LCAzOSwgNDAsIDQxLCA0MiwgNDMsIDQ0LCA0NSwgNDYs
IDQ3LCA0OCwgNDksIDUwLAorICAgICAgICAgNTEsIDUyLCA1MywgNTQsIDU1LCA1NiwgNTcsIDU4
LCA1OSwgNjAsIDYxLCA2MiwgNjMsIDY0LCA2NSwgNjYsIDY3LAorICAgICAgICAgNjgsIDY5LCA3
MCwgNzEsIDcyLCA3MywgNzQsIDc1LCA3NiwgNzcsIDc4LCA3OSwgODAsIDgxLCA4MiwgODMsIDg0
LAorICAgICAgICAgODUsIDg2LCA4NywgODgsIDg5LCA5MCwgOTEsIDkyLCA5MywgOTQsIDk1LCA5
NiwgOTcsIDk4LCA5OSwxMDAsMTAxLAorICAgICAgICAxMDIsMTAzLDEwNCwxMDUsMTA2LDEwNywx
MDgsMTA5LDExMCwxMTEsMTEyLDExMywxMTQsMTE1LDExNiwxMTcsMTE4LAorICAgICAgICAxMTks
MTIwLDEyMSwxMjIsMTIzLDEyNCwxMjUsMTI2LDEyNywxMjgsMTI5LDEzMCwxMzEsMTMyLDEzMywx
MzQsMTM1LAorICAgICAgICAxMzYsMTM3LDEzOCwxMzksMTQwLDE0MSwxNDIsMTQzLDE0NCwxNDUs
MTQ2LDE0NywxNDgsMTQ5LDE1MCwxNTEsMTUyLAorICAgICAgICAxNTMsMTU0LDE1NSwxNTYsMTU3
LDE1OCwxNTksMTYwLDE2MSwxNjIsMTYzLDE2NCwxNjUsMTY2LDE2NywxNjgsMTY5LAorICAgICAg
ICAxNzAsMTcxLDE3MiwxNzMsMTc0LDE3NSwxNzYsMTc3LDE3OCwxNzksMTgwLDE4MSwxODIsMTgz
LDE4NCwxODUsMTg2LAorICAgICAgICAxODcsMTg4LDE4OSwxOTAsMTkxCisgICAgfTsKKworICAg
IGVuYyA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jcmVhdGUoODAwMCwgMTkyLCAxODksIDMs
IG1hcHBpbmcsCisgICAgICAgIE9QVVNfQVBQTElDQVRJT05fUkVTVFJJQ1RFRF9MT1dERUxBWSwg
JmVycik7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJ
R05BTChPUFVTX1NJR05BTF9NVVNJQykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVh
bV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMCkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9GT1JDRV9DSEFOTkVM
UyhPUFVTX0FVVE8pKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRFRYKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElUWSgwKSk7CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9CQU5EV0lEVEgoT1BVU19CQU5E
V0lEVEhfTUVESVVNQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19BVVRPKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSCg4KSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0lOQkFORF9GRUMoMCkpOworICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDAp
KTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFU
RSgxNTM2MCkpOworICAgIHsKKyAgICAgICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbVsyMCoxOTJd
ID0KKyAgICAgICAgeworICAgICAgICAgICAgICAgICAwCisgICAgICAgIH07CisgICAgICAgIGVy
ciA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlKGVuYywgcGNtLCAyMCwgZGF0YSwgNDcyMzIwKTsK
KyAgICAgICAgYXNzZXJ0KGVyciA+IDApOworICAgICAgICAvKiByZXR1cm5zIC0xICovCisgICAg
fQorICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9kZXN0cm95KGVuYyk7CisgICAgcmV0dXJu
IDA7Cit9CisKK3N0YXRpYyBpbnQgc3Vycm91bmRfYW5hbHlzaXNfdW5pbml0KHZvaWQpCit7Cisg
ICAgT3B1c01TRW5jb2RlciAqZW5jOworICAgIGludCBlcnI7CisgICAgdW5zaWduZWQgY2hhciBk
YXRhWzczODBdOworICAgIGludCBzdHJlYW1zOworICAgIGludCBjb3VwbGVkX3N0cmVhbXM7Cisg
ICAgdW5zaWduZWQgY2hhciBtYXBwaW5nWzNdOworCisgICAgZW5jID0gb3B1c19tdWx0aXN0cmVh
bV9zdXJyb3VuZF9lbmNvZGVyX2NyZWF0ZSgyNDAwMCwgMywgMSwgJnN0cmVhbXMsCisgICAgICAg
ICZjb3VwbGVkX3N0cmVhbXMsIG1hcHBpbmcsIE9QVVNfQVBQTElDQVRJT05fQVVESU8sICZlcnIp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwo
T1BVU19TSUdOQUxfVk9JQ0UpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVu
YywgT1BVU19TRVRfVkJSKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVu
YywgT1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKDApKTsKKyAgICBvcHVz
X211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRk9SQ0VfQ0hBTk5FTFMoT1BV
U19BVVRPKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VU
X1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMCkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRI
X05BUlJPV0JBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX05BUlJPV0JBTkQpKTsKKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTFNCX0RFUFRIKDgpKTsKKyAgICBv
cHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfSU5CQU5EX0ZFQygxKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUo
ODQzMTUpKTsKKyAgICB7CisgICAgICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY21bOTYwKjNdID0K
KyAgICAgICAgeworICAgICAgICAgICAgIC02ODk2LCAgNDkwMSwgLTYxNTgsICA0MTIwLCAtNTE2
NCwgIDM2MzEsIC00NDQyLCAgMzE1MywgLTQwNzAsCisgICAgICAgICAgICAgIDMzNDksIC00NTc3
LCAgNDQ3NCwgLTU1NDEsICA1MDU4LCAtNjcwMSwgIDM4ODEsIC03OTMzLCAgMTg2MywKKyAgICAg
ICAgICAgICAtODA0MSwgICA2OTcsIC02NzM4LC0zMTQ2NCwgMTQzMzAsLTEyNTIzLCAgNDA5Niwg
LTYxMzAsIDI5MTc4LAorICAgICAgICAgICAgICAtMjUwLC0yMTI1MiwgMTA0NjcsIDE2OTA3LCAt
MzM1OSwgLTY2NDQsIDMxOTY1LCAxNDYwNywtMjE1NDQsCisgICAgICAgICAgICAtMzI0OTcsIDI0
MDIwLCAxMjU1NywtMjY5MjYsLTE4NDIxLCAtMTg0MiwgMjQ1ODcsIDE5NjU5LCAgNDg3OCwKKyAg
ICAgICAgICAgICAxMDk1NCwgMjMwNjAsICA4OTA3LC0xMDIxNSwtMTYxNzksIDMxNzcyLC0xMTgy
NSwtMTU1OTAsLTIzMDg5LAorICAgICAgICAgICAgIDE3MTczLC0yNTkwMywtMTczODcsIDExNzMz
LCAgNDg4NCwgMTAyMDQsLTE2NDc2LC0xNDM2NywgICA1MTYsCisgICAgICAgICAgICAgMjA0NTMs
LTE2ODk4LCAyMDk2NywtMjM4MTMsICAgLTIwLCAyMjAxMSwtMTcxNjcsICA5NDU5LCAzMjQ5OSwK
KyAgICAgICAgICAgIC0yNTg1NSwgIC01MjMsIC0zODgzLCAgLTM5MCwgLTQyMDYsICAgNjM0LCAt
Mzc2NywgIDIzMjUsIC0yNzUxLAorICAgICAgICAgICAgICAzMTE1LCAtMjM5MiwgIDI3NDYsIC0y
MTczLCAgMjMxNywgLTExNDcsICAyMzI2LCAyMzE0MiwgMTEzMTQsCisgICAgICAgICAgICAtMTUz
NTAsLTI0NTI5LCAgMzAyNiwgIDYxNDYsICAyMTUwLCAgMjQ3NiwgIDExMDUsICAtODMwLCAgMTc3
NSwKKyAgICAgICAgICAgICAtMzQyNSwgIDM2NzQsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgICA0MjkzLC0xNDAyMywgIDM4Nzks
LTE1NTUzLCAgMzE1OCwtMTYxNjEsICAyNjI5LCAxODQzMywtMTI1MzUsCisgICAgICAgICAgICAg
LTY2NDUsLTIwNzM1LC0zMjc2MywtMTM4MjQsLTIwOTkyLCAyNTg1OSwgMTMwNTIsIC04NzMxLCAg
MjI5MiwKKyAgICAgICAgICAgICAtMzg2MCwgMjQwNDksIDEwMjI1LC0xOTIyMCwgMTA0NzgsLTIy
Mjk0LCAyMjc3MywgMjgxMzcsIDEzODE2LAorICAgICAgICAgICAgIDMwOTUzLC0yNTg2MywtMjQ1
OTgsIDE2ODg4LC0xNDYxMiwtMjg5NDIsIDIwOTc0LC0yNzM5NywtMTg5NDQsCisgICAgICAgICAg
ICAtMTg2OTAsIDIwOTkxLC0xNjYzOCwgIDU2MzIsLTE0MzMwLCAyODkxMSwtMjU1OTQsIDE3NDA4
LCAyOTk1OCwKKyAgICAgICAgICAgICAgLTUxNywtMjA5ODQsIC0xODAwLCAxMTI4MSwgIDk5Nzcs
LTIxMjIxLC0xNDg1NCwgMjM4NDAsIC05NDc3LAorICAgICAgICAgICAgICAzMzYyLC0xMjgwNSwt
MjI0OTMsIDMyNTA3LCAgIDE1NiwgMTYzODQsIC0xMTYzLCAgMjMwMSwgLTE4NzQsCisgICAgICAg
ICAgICAgIDQ2MDAsIC0xNzQ4LCAgNjk1MCwgMTY1NTcsICA4MTkyLCAtNzM3MiwgLTEwMzMsIC0z
Mjc4LCAgMjgwNiwKKyAgICAgICAgICAgICAyMDI3NSwgIDMzMTcsICAtNzE3LCAgOTc5MiwgIC03
NjcsICA5MDk5LCAgLTYxMywgIDgzNjIsICA1MDI3LAorICAgICAgICAgICAgICA3Nzc0LCAgMjU5
NywgIDg1NDksICA1Mjc4LCAgODc0MywgIDkzNDMsICA2OTQwLCAxMzAzOCwgIDQ4MjYsCisgICAg
ICAgICAgICAgMTQwODYsICAyOTY0LCAxMzIxNSwgIDEzNTUsIDExNTk2LCAgIDQ1NSwgIDk4NTAs
ICAtNTE5LCAxMDY4MCwKKyAgICAgICAgICAgICAtMjI4NywgMTI1NTEsIC0zNzM2LCAxMzYzOSwg
LTQyOTEsIDEzNzkwLCAtMjcyMiwgMTQ1NDQsICAtODY2LAorICAgICAgICAgICAgIDE1MDUwLCAg
LTMwNCwgMjI4MzMsIC0xMTk2LCAxMzUyMCwgLTIwNjMsIDEzMDUxLCAtMjMxNywgMTMwNjYsCisg
ICAgICAgICAgICAgLTI3MzcsIDEzNzczLCAtMjY2NCwgMTQxMDUsIC0zNDQ3LCAxMzg1NCwgMjQ1
ODksIDI0NjcyLCAtNTI4MCwKKyAgICAgICAgICAgICAxMDM4OCwgLTQ5MzMsICA3NTQzLCAtNDE0
OSwgIDM2NTQsIC0xNTUyLCAgMTcyNiwgICA2NjEsICAgIDU3LAorICAgICAgICAgICAgICAyOTIy
LCAgLTc1MSwgIDM5MTcsICA4NDE5LCAgMzg0MCwgLTUyMTgsICAzNDM1LCAgNTU0MCwgLTEwNzMs
CisgICAgICAgICAgICAgIDQxNTMsIC02NjU2LCAgMTY0OSwgIC03NjksIC03Mjc2LC0xMzA3Miwg
IDYzODAsIC03OTQ4LCAyMDcxNywKKyAgICAgICAgICAgICAxODQyNSwgMTczOTIsIDE0MzM1LC0x
ODE5MCwgLTE4NDIsIDI0NTg3LCAxOTY1OSwgMTE3OTAsIDEwOTU0LAorICAgICAgICAgICAgIDIz
MDYwLCAgODkwNywtMTAyMTUsLTE2MTc5LCAzMTc3MiwtMTE4MjUsLTE1NTkwLC0yMzEwMSwgMTcx
NzMsCisgICAgICAgICAgICAtMjU5MDMsLTE3Mzg3LCAxMTczMywgIDQ4ODQsIDEwMTkyLC0xNjYy
NywtMTQzNjcsICAgNTE2LCAyMDQ1MywKKyAgICAgICAgICAgIC0xNjg5OCwgMjA5NjcsLTIzODEz
LCAgIC0yMCwgMjIwMTEsLTE3MTY3LCAgOTQ2OCwgMzI0OTksLTI1NjA3LAorICAgICAgICAgICAg
ICAtNTIzLCAtMzg4MywgIC0zOTAsIC00MjA2LCAgIDYzNCwgLTM3NjcsICAyMzI1LCAtMjc1MSwg
IDMxMTUsCisgICAgICAgICAgICAgLTIzOTIsICAyNzQ2LCAtMjE2MSwgIDIzMTcsIC0xMTQ3LCAg
MjMyNiwgMjMxNDIsIDExMzE0LC0xNTM1MCwKKyAgICAgICAgICAgIC0yOTEzNywgIDMwMjYsLTE1
MDU2LCAgLTQ5MSwtMTUxNzAsICAtMzg2LC0xNjAxNSwgIC02NDEsLTE2NTA1LAorICAgICAgICAg
ICAgICAtOTMwLC0xNjIwNiwgIC03MTcsLTE2MTc1LCAtMjgzOSwtMTYzNzQsIC00NTU4LC0xNjIz
NywgLTUyMDcsCisgICAgICAgICAgICAtMTU5MDMsIC02NDIxLCAgNjM3MywgLTE0MDMsICA1NDMx
LCAtMTA3MywgIDM2NDEsIC0xMzA0LCAtNDQ5NSwKKyAgICAgICAgICAgICAgLTc2OSwgLTcyNzYs
ICAyODU2LCAtNzg3MCwgIDMzMTQsIC04NzMwLCAgMzk2NCwtMTAxODMsICA0MDExLAorICAgICAg
ICAgICAgLTExMTM1LCAgMzQyMSwtMTE3MjcsICAyOTY2LC0xMjM2MCwgIDI4MTgsLTEzNDcyLCAg
MzY2MCwtMTM4MDUsCisgICAgICAgICAgICAgIDUxNjIsLTEzNDc4LCAgNjQzNCwtMTI4NDAsICA3
MzM1LC0xMjQyMCwgIDY4NjUsLTEyMzQ5LCAgNTU0MSwKKyAgICAgICAgICAgIC0xMTk2NSwgIDU1
MzAsLTEwODIwLCAgNTEzMiwgLTkxOTcsICAzMzY3LCAtNzc0NSwgIDEyMjMsIC02OTEwLAorICAg
ICAgICAgICAgICAtNDMzLCAtNjIxMSwgLTE3MTEsIC00OTU4LCAtMTAyNSwgLTM3NTUsICAtODM2
LCAtMzI5MiwgLTE2NjYsCisgICAgICAgICAgICAgLTI2NjEsLTEwNzU1LCAzMTQ3MiwtMjc5MDYs
IDMxNDcxLCAxODY5MCwgIDU2MTcsIDE2NjQ5LCAxMTI1MywKKyAgICAgICAgICAgIC0yMjUxNiwt
MTc2NzQsLTMxOTkwLCAgMzU3NSwtMzE0NzksICA1ODgzLCAyNjEyMSwgMTI4OTAsIC02NjEyLAor
ICAgICAgICAgICAgIDEyMjI4LC0xMTYzNCwgICA1MjMsIDI2MTM2LC0yMTQ5NiwgMjA3NDUsLTE1
ODY4LCAtNDEwMCwtMjQ4MjYsCisgICAgICAgICAgICAgMjMyODIsIDIyNzk4LCAgIDQ5MSwgLTE3
NzQsIDE1MDc1LC0yNzM3MywtMTMwOTQsICA2NDE3LC0yOTQ4NywKKyAgICAgICAgICAgICAxNDYw
OCwgMTAxODUsIDE2MTQzLCAyMjIxMSwgLTg0MzYsICA0Mjg4LCAtODY5NCwgIDIzNzUsICAzMDIz
LAorICAgICAgICAgICAgICAgNDg2LCAgMTQ1NSwgICAxMjgsICAgMjAyLCAgIDk0MiwgIC05MjMs
ICAyMDY4LCAtMTIzMywgIC03MTcsCisgICAgICAgICAgICAgLTEwNDIsIC0yMTY3LCAzMjI1NSwg
LTQ2MzIsICAgMzEwLCAtNDQ1OCwgLTM2MzksIC01MjU4LCAgMjEwNiwKKyAgICAgICAgICAgICAt
Njg1NywgIDI2ODEsIC03NDk3LCAgMjc2NSwgLTY2MDEsICAxOTQ1LCAtNTIxOSwgMTkxNTQsIC00
ODc3LAorICAgICAgICAgICAgICAgNjE5LCAtNTcxOSwgLTE5MjgsIC02MjA4LCAgLTEyMSwgICA1
OTMsICAgMTg4LCAgMTU1OCwgLTQxNTIsCisgICAgICAgICAgICAgIDE2NDgsICAgMTU2LCAgMTYw
NCwgLTM2NjQsIC02ODYyLCAtMjg1MSwgLTUxMTIsIC0zNjAwLCAtMzc0NywKKyAgICAgICAgICAg
ICAtNTA4MSwgLTQ0MjgsIC01NTkyLCAyMDk3NCwtMjczOTcsLTE4OTQ0LC0xODY5MCwgMjA5OTEs
LTE3NDA2LAorICAgICAgICAgICAgICA1NjMyLC0xNDMzMCwgMjg5MTEsIDE1OTM0LCAxNTkzNCwg
MTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsCisgICAgICAgICAgICAgMTU5MzQsIDE1OTM0LCAx
NTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwtMjU1OTQsIDE3NDA4LCAyOTk1OCwKKyAgICAgICAg
ICAgICAtNzE3MywtMTY4ODgsICA5MDk4LCAgLTYxMywgIDgzNjIsICAgNjc1LCAgNzc3NCwgIDI1
OTcsICA4NTQ5LAorICAgICAgICAgICAgICA1Mjc4LCAgODc0MywgIDkzNzUsICA2OTQwLCAxMzAz
OCwgIDQ4MjYsIDE0NTk4LCAgNzcyMSwtMjQzMDgsCisgICAgICAgICAgICAtMjk5MDUsLTE5NzAz
LC0xNzEwNiwtMTYxMjQsIC0zMjg3LC0yNjExOCwtMTk3MDksLTEwNzY5LCAyNDM1MywKKyAgICAg
ICAgICAgICAyODY0OCwgIDY5NDYsIC0xMzYzLCAxMjQ4NSwgLTExODcsIDI2MDc0LC0yNTA1NSwg
MTAwMDQsLTI0Nzk4LAorICAgICAgICAgICAgICA3MjA0LCAtNDU4MSwgLTk2NzgsICAxNTU0LCAx
MDU1MywgIDMxMDIsIDEyMTkzLCAgMjQ0MywgMTE5NTUsCisgICAgICAgICAgICAgIDEyMTMsIDEw
Njg5LCAtMTI5MywgICA5MjEsIC00MTczLCAxMDcwOSwgLTYwNDksICA4ODE1LCAtNzEyOCwKKyAg
ICAgICAgICAgICAgODE0NywgLTgzMDgsICA2ODQ3LCAtMjk3NywgIDQ5MjAsLTExNDQ3LC0yMjQy
NiwtMTE3OTQsICAzNTE0LAorICAgICAgICAgICAgLTEwMjIwLCAgMzQzMCwgLTc5OTMsICAxOTI2
LCAtNzA3MiwgICAzMjcsIC03NTY5LCAgLTYwOCwgLTc2MDUsCisgICAgICAgICAgICAgIDM2OTUs
IC02MjcxLCAtMTU3OSwgLTQ4NzcsIC0xNDE5LCAtMzEwMywgLTIxOTcsICAgMTI4LCAtMzkwNCwK
KyAgICAgICAgICAgICAgMzc2MCwgLTU0MDEsICA0OTA2LCAtNjA1MSwgIDQyNTAsIC02MjcyLCAg
MzQ5MiwgLTYzNDMsICAzMTk3LAorICAgICAgICAgICAgIC02Mzk3LCAgNDA0MSwgLTYzNDEsICA2
MjU1LCAtNjM4MSwgIDc5MDUsIDE2NTA0LCAgICAgMCwgLTYxNDQsCisgICAgICAgICAgICAgIDgw
NjIsIC01NjA2LCAgODYyMiwgLTU1NTUsICAgIC05LCAgICAtMSwgIDc0MjMsICAgICAwLCAgICAg
MSwKKyAgICAgICAgICAgICAgIDIzOCwgIDUxNDgsICAxMzA5LCAgNDcwMCwgIDIyMTgsICA0NDAz
LCAgMjU3MywgIDM1NjgsIDI4MzAzLAorICAgICAgICAgICAgICAxNzU4LCAgMzQ1NCwgLTEyNDcs
ICAzNDM0LCAtNDkxMiwgIDI4NjIsIC03ODQ0LCAgMTcxOCwtMTAwOTUsCisgICAgICAgICAgICAg
ICAzNjksLTEyNjMxLCAgIDEyOCwgLTM5MDQsICAzNjMyLCAtNTQwMSwgIDQ5MDYsIC02MDUxLCAg
NDI1MCwKKyAgICAgICAgICAgICAtNjI3MiwgIDM0OTIsIC02MzQzLCAgMzE5NywgLTYzOTcsICA0
MDQxLCAtNjM0MSwgIDYyNTUsIC02MzgxLAorICAgICAgICAgICAgICA3OTA1LCAxNjUwNCwgICAg
IDAsIC02MTQ0LCAgODA2MiwgLTU2MDYsICA4NjIyLCAtNTU1NSwgIDg0MzksCisgICAgICAgICAg
ICAgLTMzODIsICA3Mzk4LCAtMTE3MCwgIDYxMzIsICAgMjM4LCAgNTE0OCwgIDEzMDksICA0NzAw
LCAgMjIxOCwKKyAgICAgICAgICAgICAgNDQwMywgIDI1NzMsICAzNTY4LCAgMjcwMywgIDE3NTgs
ICAzNDU0LCAtMTI0NywgIDM0MzQsIC00OTEyLAorICAgICAgICAgICAgICAyODYyLCAtNzg0NCwg
IDE3MTgsLTEwMDk1LCAgIDM2OSwtMTI2MzEsICAtMjU5LC0xNDYzMiwgICAyMzQsCisgICAgICAg
ICAgICAtMTUwNTYsICAtNTIxLC0xNTE3MCwgIC0zODYsLTE2MDE1LCAgLTY0MSwtMTY1MDUsICAt
OTMwLC0xNjIwNiwKKyAgICAgICAgICAgICAtMTIwOSwtMTYxNDYsIC0yODM5LC0xNjM3NCwgLTQ1
NTgsLTE2MjE4LCAtNTIwNywtMTU5MDMsIC02NDIxLAorICAgICAgICAgICAgLTE1NjE1LCAtNjky
NSwtMTQ4NzEsIC02MTQ5LC0xMzc1OSwgLTUyMzMsLTEyODQ0LCAxODMxMywgLTQzNTcsCisgICAg
ICAgICAgICAgLTU2OTYsICAyODA0LCAxMjk5MiwtMjI4MDIsIC02NzIwLCAtOTc3MCwgLTcwODgs
IC04OTk4LCAxNDMzMCwKKyAgICAgICAgICAgIC0xMjUyMywgMTQ4NDMsIC02MTMwLCAyOTE3OCwg
IC0yNTAsLTI3Mzk2LCAxMDQ2NywgMTY5MDcsIC0zMzU5LAorICAgICAgICAgICAgIC02NjQ0LCAz
MTk2NSwgMTQ2MDcsLTIxNTQ0LC0zMjQ5NywgMjQwMjAsIDEyNTU3LC0yNjkyNiwgIC0xNzMsCisg
ICAgICAgICAgICAgIC0xMjksIC02NDAxLCAgLTEzMCwtMjUwODksIC0zODQxLCAtNDkxNiwgLTMw
NDgsICAgMjI0LCAgLTIzNywKKyAgICAgICAgICAgICAtMzk2OSwgIC0xODksIC0zNTI5LCAgLTUz
NSwgLTM0NjQsLTE0ODYzLC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0Mzk1LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
LTE0OTA3LC0xNDkwNywgICAgIDAsIDMyNTEyLC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAg
ICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsICA5OTI1LCAgLTcxOCwgIDk3NTMsICAtNzY3LAorICAgICAg
ICAgICAgICA5MDk5LCAgLTYxMywgIDgzNjIsICAgNjc1LCAgNzc3NCwgIDI1OTcsICA4NTQ5LCAg
NTI3OCwgIDg3NDMsCisgICAgICAgICAgICAgIDkzNzUsICA2OTQwLCAxMzAzOCwgIDQ4MjYsIDE0
NTk4LCAgNzcyMSwtMjQzMDgsLTI5OTA1LC0xOTcwMywKKyAgICAgICAgICAgIC0xNzEwNiwtMTYx
MjQsIC0zMjg3LC0yNjExOCwtMTk3MDksICAgICAwLCAyNDM1MywgMjg2NDgsIDEwMjc0LAorICAg
ICAgICAgICAgLTExMjkyLC0yOTY2NSwtMTY0MTcsIDI0MzQ2LCAxNDU1MywgMTg3MDcsIDI2MzIz
LCAtNDU5NiwtMTc3MTEsCisgICAgICAgICAgICAgIDUxMzMsIDI2MzI4LCAgICAxMywtMzExNjgs
IDI0NTgzLCAxODQwNCwtMjg5MjcsLTI0MzUwLCAxOTQ1MywKKyAgICAgICAgICAgICAyODY0Miwg
IDEwMTksLTEwNzc3LCAtMzA3OSwgMzAxODgsIC03Njg2LCAyNzYzNSwtMzI1MjEsLTE2Mzg0LAor
ICAgICAgICAgICAgIDEyNTI4LCAtNjM4NiwgMTA5ODYsIDIzODI3LC0yNTg4MCwtMzI3NTIsLTIz
MzIxLCAxNDYwNSwgMzIyMzEsCisgICAgICAgICAgICAgICA3ODAsLTEzODQ5LCAxNTExOSwgMjg2
NDcsICA0ODg4LCAtNzcwNSwgMzA3NTAsICAgIDY0LCAgICAgMCwKKyAgICAgICAgICAgICAzMjQ4
OCwgIDY2ODcsLTIwNzU4LCAxOTc0NSwgLTIwNzAsLTEzNzkyLCAtNjQxNCwgMjgxODgsIC0yODIx
LAorICAgICAgICAgICAgIC00NTg1LCAgNzE2OCwgIDc0NDQsIDIzNTU3LC0yMTk5OCwgMTMwNjQs
ICAzMzQ1LCAtNDA4NiwtMjg5MTUsCisgICAgICAgICAgICAgLTg2OTQsIDMyMjYyLCAgODQ2MSwg
MjczODcsLTEyMjc1LCAxMjAxMiwgMjM1NjMsLTE4NzE5LC0yODQxMCwKKyAgICAgICAgICAgICAy
OTE0NCwtMjIyNzEsICAtNTYyLCAtOTk4NiwgLTU0MzQsIDEyMjg4LCAgNTU3MywtMTY2NDIsIDMy
NDQ4LAorICAgICAgICAgICAgIDI5MTgyLCAzMjcwNSwtMzA3MjMsIDI0MjU1LC0xOTcxNiwgMTgz
NjgsIC00MzU3LCAtNTY5NiwgIDI4MDQsCisgICAgICAgICAgICAgMTI5OTIsLTIyODAyLC0yMjA4
MCwgLTc3MDEsIC01MTgzLCAgIDQ4NiwgLTMxMzMsIC01NjYwLCAtMTA4MywKKyAgICAgICAgICAg
ICAxNjg3MSwtMjg3MjYsLTExMDI5LC0zMDI1OSwgLTEyMDksLTE2MTQ2LCAtMjgzOSwtMTYzNzQs
IC00NTU4LAorICAgICAgICAgICAgLTE2MjE4LC0xMDUyMywgMjA2OTcsIC05NTAwLCAtMTMxNiwg
IDU0MzEsIC0xMDczLCAgMzY0MSwgLTEzMDQsCisgICAgICAgICAgICAgIDE2NDksICAtNzY5LCAt
NzI3NiwgIDI4NTYsIC03ODcwLCAgMzMxNCwgLTg3MzAsICAzOTY0LC0xMDE4MywKKyAgICAgICAg
ICAgICAgNDAxMSwtMTExMzUsICAzNDIxLC0xMTcyNywgMjEzOTgsIDMyNzY3LCAgICAtMSwgMzI0
ODYsICAgIC0xLAorICAgICAgICAgICAgICA2MzAxLC0xMzA3MSwgIDYzODAsIC03OTQ4LCAgICAt
MSwgMzI3NjcsICAgMjQwLCAxNDA4MSwgLTU2NDYsCisgICAgICAgICAgICAgMzA5NzMsIC0zNTk4
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAg
ICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsIDMyNzY3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAg
ICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LCAgODkwMSwgIDkzNzUsICA2OTQw
LCAxMzAzOCwgIDQ4MjYsIDE0NTk4LCAgNzcyMSwtMjQzMDgsCisgICAgICAgICAgICAtMjk5MDUs
LTE5NzAzLC0xNzEwNiwtMTYxMjQsIC0zMjg3LC0yNjExOCwtMTk3MDksLTEwNzY5LCAyNDM2MSwK
KyAgICAgICAgICAgICAyODY0OCwgMTAyNzQsLTExMjkyLC0yOTY2NSwtMTY0MTcsIDI0MzQ2LCAx
NDU4MCwgMTg3MDcsIDI2MzIzLAorICAgICAgICAgICAgIC00NDQwLC0xNzcxMSwgIDUxMzMsIDI2
MzI4LC0xNDU3OSwtMzEwMDgsIDI0NTgzLCAxODQwNCwgMjg0MTcsCisgICAgICAgICAgICAtMjQz
NTAsIDE5NDUzLCAyODY0MiwtMzI1MTMsLTEwNzc3LCAtMzA3OSwgMzAxODgsIC03Njg2LCAyNzYz
NSwKKyAgICAgICAgICAgIC0zMjUyMSwtMTYzODQsLTIwMjQwLCAtNjM4NiwgMTA5ODYsIDIzODI3
LC0yNTg4MCwtMzI3NTIsLTIzMzIxLAorICAgICAgICAgICAgIDE0NjA1LCAzMjIzMSwgICA3ODAs
LTEzODQ5LCAxNTExOSwgMjg2NDcsICA0ODg4LCAtNzcwNSwtMTUwNzQsCisgICAgICAgICAgICAt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5
MDcsICA4MTkyLC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAg
ICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ4OTcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAg
ICAgICAgICAtMTU5MzEsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisg
ICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LCAyNjEyMSwgMTI4OTAsICAyNjA0LAorICAgICAgICAgICAgIDEy
MjI4LC0xMTYzNCwgMTIyOTksICA1NTczLC0xNjY0MiwgMzI0NTIsIDI5MTgyLCAzMjcwNSwtMzA3
MjMsCisgICAgICAgICAgICAgMjQyNTUsLTE5NzE2LCAxMzI0OCwtMTE3NzksIC01Njk2LCAgMjgw
NCwgMTI5OTIsLTI3NjY2LC0yMjA4MCwKKyAgICAgICAgICAgICAtNzcwMSwgLTUxODMsIC02Njgy
LC0zMTQ2NCwgMTQzMzAsLTEyNTIzLCAxNDg0MywgLTYxMzAsIDI5MTc4LAorICAgICAgICAgICAg
ICAgLTE4LC0yNzM5NiwgMTA0NjcsIDE2OTA3LCAtMzM1OSwgLTY2NDQsIDMxOTY1LCAxNDYwNywt
MjE1NDQsCisgICAgICAgICAgICAtMzI0OTcsIDI0MDIwLCAxMjU1NywtMjY5MjYsLTE4NDIxLCAg
IDcwNiwgMjQ1ODcsIDE5NjU5LCAgNDg3OCwKKyAgICAgICAgICAgICAxMDk1NCwgMjMwNjAsICA4
OTA3LC0xMDIxNSwtMjI1NzksIDMxNzcyLC0xMTgyNSwtMTU1OTAsLTIzMDg5LAorICAgICAgICAg
ICAgIDE3MTczLC0yNTkwMywtMTczODcsICAzMjg1LCAgNDg4NCwgMTAyMDQsLTE2NjI3LC0xNDM2
NywgICA1MTYsCisgICAgICAgICAgICAgMjA0NTMsLTE2ODk4LCAyMDk2NywtMjM4MTUsICAgLTIw
LCAyMjAxMSwtMTcxNjcsICA5NDY4LCAzMjQ5OSwKKyAgICAgICAgICAgIC0yNTYwNywgIC01MjMs
IC0zODgzLCAgLTM5MCwgLTQyMDYsICAgNjM0LCAtMzc2NywgIDIzMjUsIC0yNzUxLAorICAgICAg
ICAgICAgICAzMTE1LCAtMjM5MiwgIDI3NDYsIC0yMTczLCAgMjMxNywgLTExNDcsICAyMzI2LCAy
MzE0MiwgMTEzMTQsCisgICAgICAgICAgICAtMTUxMzAsLTI5MTM3LCAgMzAyNiwgIDYxNDYsICAy
MTUwLCAgMjQ3NiwgIDExMDUsICAtODMwLCAgMTc3NSwKKyAgICAgICAgICAgICAtMzQyNSwgIDM2
NzQsIC01Mjg3LCAgNDYwOSwgLTcxNzUsICA0OTIyLCAtOTU3OSwgIDQ1NTYsLTEyMDA3LAorICAg
ICAgICAgICAgICA0MjM2LC0xNDAyMywgIDM4NzksLTE1NTUzLCAgMzE1OCwtMTYxNjEsICAyNTc2
LCAxODM5OCwtMTI1MzUsCisgICAgICAgICAgICAgLTY2NDUsLTIwNzM1LC0zMjc2MywtMTM4MjQs
LTIwOTkyLCAyNTg1OSwgIDUzNzIsIDEyMDQwLCAxMzMwNywKKyAgICAgICAgICAgICAtNDM1NSwt
MzAyMTMsICAgIC05LCAtNjAxOSwgMTQwNjEsLTMxNDg3LC0xMzg0MiwgMzA0NDksIDE1MDgzLAor
ICAgICAgICAgICAgIDE0MDg4LCAzMTIwNSwtMTg2NzgsLTEyODMwLCAxNDA5MCwtMjYxMzgsLTI1
MzM3LC0xMTU0MSwgLTMyNTQsCisgICAgICAgICAgICAgMjc2MjgsLTIyMjcwLCAzMDk1MywtMTYx
MzYsLTMwNzQ1LCAyMDk5MSwtMTc0MDYsICA1NjMyLC0xNDMzMCwKKyAgICAgICAgICAgICAyODkx
MSwtMjU1OTQsIDE3NDA4LC0yMDQ3NCwgMTMwNDEsIC04NzMxLCAgMjI5MiwgLTM4NjAsIDI0MDQ5
LAorICAgICAgICAgICAgIDEwMjI1LC0xOTIyMCwgMTA0NzgsIC00Mzc0LCAtMTE5OSwgICAxNDgs
ICAtMzMwLCAgIC03NCwgICA1OTMsCisgICAgICAgICAgICAgICAxODgsICAxNTU4LCAtNDE1Miwg
MTU5ODQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwKKyAgICAgICAgICAgICAx
NTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAgMTU5OCwgICAxNTYsICAx
NjA0LAorICAgICAgICAgICAgIC0xMTYzLCAgMjI3OCwtMzAwMTgsLTI1ODIxLC0yMTc2MywtMjM3
NzYsIDI0MDY2LCAgOTUwMiwgMjU4NjYsCisgICAgICAgICAgICAtMjUwNTUsIDEwMDA0LC0yNDc5
OCwgIDcyMDQsIC00NTgxLCAtOTY3OCwgIDE1NTQsIDEwNTUzLCAgMzEwMiwKKyAgICAgICAgICAg
ICAxMjE5MywgIDI0NDMsIDExOTU1LCAgMTIxMywgMTA2ODksIC0xMjkzLCAgIDkyMSwgLTQxNzMs
ICA4NjYxLAorICAgICAgICAgICAgIC02MDQ5LCAgODgxNSwtMjEyMjEsLTE0ODU0LCAyMzg0MCwg
LTk0NzcsICA4NTQ5LCAgNTI3OCwgIDg3NDMsCisgICAgICAgICAgICAgIDkzNzUsICA2OTQwLCAx
MzAzOCwgIDQ4MjYsIDE0NTk4LCAgNzcyMSwtMjQzMDgsLTI5OTA1LC0xOTcwMywKKyAgICAgICAg
ICAgIC0xNzEwNiwtMTYxMjQsIC0zMjg3LC0yNjExOCwtMTk3MDksLTEwNzY5LCAyNDM2MSwgMjg2
NDgsIDEwMjc0LAorICAgICAgICAgICAgLTExMjkyLC0yOTY2NSwtMTY0MTcsIDI0MzQ2LCAxNDU4
MCwgMTg3MDcsIDI2MzIzLCAtNDQxMCwtMTc3MTEsCisgICAgICAgICAgICAgIDUxMzMsIDI2MzI4
LC0xNDU3OSwtMzEwMDgsIDI0NTgzLCAxODQwNCwgMjg0MTcsLTI0MzUwLCAxOTQ1MywKKyAgICAg
ICAgICAgICAyODY0MiwtMzI1MTMsLTEwNzc3LCAtMzA3OSwgMzAxODgsIC03Njg2LCAyNzYzNSwt
MzI1MjEsLTE2Mzg0LAorICAgICAgICAgICAgLTIwMjQwLCAtNjM4NiwgMTA5ODYsIDIzODI3LC0y
NTg4MCwtMzI3NTIsLTIzMzIxLCAxNDYwNSwgMzIyMzEsCisgICAgICAgICAgICAgICA3ODAsLTEz
ODQ5LCAxNTExOSwgMjg2NDcsICA0ODg4LCAtNzcwNSwgMzA3NTAsICAgIDY0LCAgICAgMCwKKyAg
ICAgICAgICAgICAzMjQ4OCwgIDY2ODcsLTIwNzU4LCAxOTc0NSwgLTIwNzAsICAgIC0xLCAgICAt
MSwgICAgMjgsICAgMjU2LAorICAgICAgICAgICAgIC00NjA4LCAgNzE2OCwgIDc0NDQsIDIzNTU3
LC0yMTk5OCwgMTMwNjQsICAzMzQ1LCAtNDA4NiwtMjg5MTUsCisgICAgICAgICAgICAgLTg1OTQs
IDMyMjYyLCAgODQ2MSwgMjczODcsLTEyMjc1LCAxMjAxMiwgMjM1NjMsLTE4NzE5LC0yODQxMCwK
KyAgICAgICAgICAgICAyOTE0NCwtMjIyNzEsLTMyNTYyLC0xNjM4NCwgMTI1MjgsIC02Mzg2LCAx
MDk4NiwgMjM4MjcsLTI1ODgwLAorICAgICAgICAgICAgLTMyNzUyLC0yMzMyMSwgMTQ2MDUsIDMy
MjMxLCAgIDc4MCwtMTM4NDksIDE1MTE5LCAyODY0NywgIDQ4ODgsCisgICAgICAgICAgICAgLTc3
MDUsIDMwNzUwLCAgICA2NCwgICAgIDAsIDMyNDg4LCAgNjY4NywtMjA3NTgsIDE5NzQ1LCAtMjA3
MCwKKyAgICAgICAgICAgIC0xMzc5MiwgLTY0MTQsIDI4MTg4LCAtMjgyMSwgLTQ1ODUsICA3MTY4
LCAgNzQ0NCwgMjM1NTcsLTIxOTk4LAorICAgICAgICAgICAgIDEzMDY0LCAgMzM0NSwgLTQwODYs
LTI4OTE1LCAtODY5NCwgMzIyNjIsICA4NDYxLCAyNzM4NywtMTIyNzUsCisgICAgICAgICAgICAg
MTIwMTIsIDIzNTYzLC0xODcxOSwtMjg0MTAsIDI5MTQ0LC0yMjI3MSwgIC01NjIsIC05OTg2LCAt
NTQzNCwKKyAgICAgICAgICAgICAxMjI4OCwgLTIxMDcsLTE2NjQzLCAzMjQ1MiwgMjkxODIsIDMy
NzA1LC0zMDcyMywgMjQyNTUsLTE5NzE2LAorICAgICAgICAgICAgIDE4MzY4LCAtNDM1NywgLTU2
OTYsICAyODA0LCAxMjk5MiwtMjI4MDIsLTIyMDgwLCAtNzcwMSwgLTUxODMsCisgICAgICAgICAg
ICAgICA0ODYsIC0zMTMzLCAtNTY2MCwgLTEwODMsIDE2ODcxLC0yODcyNiwtMTEwMjksLTMwMjU5
LCAtMTIwOSwKKyAgICAgICAgICAgIC0xNjE0NiwgLTI4MzksLTE2Mzc0LCAtNDU1OCwtMTYyMTgs
LTEwNTIzLCAyMDY5NywgLTk1MDAsIC0xMzE2LAorICAgICAgICAgICAgICA1NDMxLCAtMTA3Mywg
IDM2NDEsIC0xMzA0LCAgMTY0OSwgIC03NjksIC03Mjc2LCAgMjg1NiwgLTc4NzAsCisgICAgICAg
ICAgICAgIDMzMTQsIC04NzMwLCAgMzk2NCwtMTAxODMsICA0MDExLC0xMTEzNSwgIDM0MjEsLTEx
NzI3LCAyMTM5OCwKKyAgICAgICAgICAgICAzMjc2NywgICAgLTEsIDMyNDg2LCAgICAtMSwgICAt
OTksLTEzMDcyLCAgNjM4MCwgLTc5NDgsICA0ODY0LAorICAgICAgICAgICAgIDMyNzY3LCAxNzM5
MiwgMTQzMzUsIC01NjQ2LCAzMDk3MywgLTM1OTgsLTEwMjk5LC0xNDkwNywtMTQ5MDcsCisgICAg
ICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA1LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisg
ICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE5NzcxLC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTY0NDMsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAg
ICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAg
ICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNTkzMSwtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAor
ICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywgICAgLTEsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAg
IC0xNDkwNywtMTQ5MDcsICA3ODc3LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAg
ICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAg
ICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAg
ICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIC05OTQsIC03Mjc2LCAgMjg1NiwgLTc4NzAsCisgICAgICAgICAgICAgIDMzMTQs
IC04NzMwLCAgMzk2NCwtMTAxODMsICA0MDExLC0xMTEzNSwgIDM0MjEsLTExNzI3LCAyMTM5OCwK
KyAgICAgICAgICAgICAzMjc2NywgICAgLTEsIDMyNDg2LCAgICAtMSwgICAtOTksLTEzMDcyLCAg
NjM4MCwgLTc5NDgsICA0ODY0LAorICAgICAgICAgICAgIDMyNzY3LCAxNzM5MiwgMTQzMzUsIC01
NjQ2LCAzMDk3MywgLTM1OTgsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA1LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAg
ICAtMTQ5MDcsLTE0OTA3LCAgIDE5NywgICAgIDAsLTE0OTc3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsIDEyODM4LCAgNjY1MywgICAyOTQsCisgICAg
ICAgICAgICAtMjk2OTksLTI1ODIxLC0yMTc2MywtMjM3NzYsIDI0MDY2LCAgOTUwMiwgMjU4NjYs
LTI1MDU1LCAxMDAwNCwKKyAgICAgICAgICAgIC0yNDc5OCwgIDcyMDQsIC00NTgxLCAtOTY3OCwg
IDE1NTQsIDEwNTUzLCAgMzEwMiwgMTIxOTMsICAyNDQzLAorICAgICAgICAgICAgIDExOTU1LCAg
MTIxMywgMTA2ODksIC0xMjkzLCAgIDkyMSwgICAxNzksICA4NDQ4LCAtNjA0OSwgIDg4MTUsCisg
ICAgICAgICAgICAgLTcxMjgsICA4MTQ3LCAtODMwOCwgIDY4NDcsIC05ODg5LCAgNDkyMCwtMTE0
NDcsICAzMTc0LC0xMTc5NCwKKyAgICAgICAgICAgICAgMzUxNCwtMTAyMjAsICAzNDMwLCAxNjM4
NCwgIDE5MjYsIC03MDcyLCAgIDMyNywgLTc1MzcsICAtNjA4LAorICAgICAgICAgICAgIC03NjA1
LCAtMTE2OSwgLTYzOTcsIC0xNTc5LCAtNDg3NywgLTE0MTksIC0zMTAzLCAtMjE5NywgICAxMjgs
CisgICAgICAgICAgICAgLTM5MDQsICAzNjMyLCAtNTQwMSwgIDQ5MDYsIC02MDUxLCAgNDI1MCwg
LTYyNzIsICAzNDkyLCAtNjM0MywKKyAgICAgICAgICAgICAgMzE5NywgLTYzOTcsICA0MDQxLCAt
NjM0MSwgIDYyNTUsIC02MzgxLCAgNzkwNSwgMTY1MDQsICAgICAwLAorICAgICAgICAgICAgIC02
MTQ0LCAgODA2MiwgLTU2MDYsICA4NjIyLCAtNTU1NSwgIDg0MzksIC0zMzgyLCAgNzM5OCwgLTEx
NzAsCisgICAgICAgICAgICAgIDYxMzIsICAgMjM4LCAgNTE0OCwgIDEzMDksICA0NzAwLCAgMjIx
OCwgIDQ0MDMsICAyNTczLCAgMzU2OCwKKyAgICAgICAgICAgICAgMjcwMywgIDE3NTgsICAzNDU0
LCAtMTI0NywgIDM0MzQsIC00OTEyLCAgMjg2MiwgLTc4NDQsICAxNzE4LAorICAgICAgICAgICAg
LTEwMDk1LCAgIDM2OSwtMTI2MzEsICAtMjU5LC0xNDYzMiwgICAyMzQsLTE1MDU2LCAgLTQ5MSwt
MTYxOTQsCisgICAgICAgICAgICAgIC0zODYsLTE2MDE1LCAgLTY0MSwtMTY1MDUsICAtOTMwLC0x
NjIwNiwgLTEyMDksLTE2MTQ2LCAtMjgzOSwKKyAgICAgICAgICAgIC0xNjM3NCwgLTQ1NTgsLTE2
MjE4LCAtNTIwNywtMTU5MDMsIC02NDIxLC0xNTYxNSwgLTY5MjUsLTE0ODcxLAorICAgICAgICAg
ICAgIC02MTQ5LC0xMzc1OSwgLTUyMzMsLTEyODQ0LCAxODMxMywgLTQzNTcsIC01Njk2LCAgMjgw
NCwgMTI5OTIsCisgICAgICAgICAgICAtMjI4MDIsIC02NzIwLCAtOTc3MCwgLTcwODgsIC04OTk4
LCAxNDMzMCwtMTI1MjMsIDE0ODQzLCAtNjEzMCwKKyAgICAgICAgICAgICAyOTE3OCwgIC0yNTAs
LTI3Mzk2LCAxMDQ2NywgMTY5MDcsIC0zMzU5LCAtNjY0NCwgMzE5NjUsIDE0NjA3LAorICAgICAg
ICAgICAgLTIxNTQ0LC0zMjQ5NywgMjQwMjAsIDEyNTU3LC0yNjkyNiwgIC0xNzMsICAtMTI5LCAt
NjQwMSwgIC0xMzAsCisgICAgICAgICAgICAtMjUwODksIC0zODE2LCAtNDkxNiwgLTMwNDgsICAg
LTMyLCAgICAtMSwgLTM5NjksICAgMjU2LCAtMzUyOSwKKyAgICAgICAgICAgICAgLTUzNSwgLTM0
NjQsLTE0ODYzLC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgICAtMTIwOSwt
MTYxNDYsIC0yODM5LC0xNjM3NCwgLTQ1NTgsLTE2MjE4LC0xMDUyMywgMjA2OTcsIC05NTAwLAor
ICAgICAgICAgICAgIC0xMzE2LCAgNTQzMSwgLTEwNzMsICAzNjQxLCAtMTMwNCwgIDE2NDksICAt
NzY5LCAtNzI3NiwgIDI4NTYsCisgICAgICAgICAgICAgLTc4NzAsICAzMzE0LCAtODczMCwgIDM5
NjQsLTEwMTgzLCAgNDAxMSwtMTExMzUsICAzNDIxLC0xMTcyNywKKyAgICAgICAgICAgICAyMTM5
OCwgMzI3NjcsICAgIC0xLCAzMjQ4NiwgICAgLTEsICA2MzAxLC0xMzA3MSwgIDYzODAsIC03OTQ4
LAorICAgICAgICAgICAgICAgIC0xLCAzMjc2NywgICAyNDAsIDE0MDgxLCAtNTY0NiwgMzA5NzMs
IC0zNTk4LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAgMzI3NjcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAg
IC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAgODkwMSwgIDkzNzUs
ICA2OTQwLAorICAgICAgICAgICAgIDEzMDM4LCAgNDgyNiwgMTQ1OTgsICA3NzIxLC0yNDMwOCwt
Mjk5MDUsLTE5NzAzLC0xNzEwNiwtMTYxMjQsCisgICAgICAgICAgICAgLTMyODcsLTI2MTE4LC0x
OTcwOSwtMTA3NjksIDI0MzYxLCAyODY0OCwgMTAyNzQsLTExMjkyLC0yOTY2NSwKKyAgICAgICAg
ICAgIC0xNjQxNywgMjQzNDYsIDE0NTgwLCAxODcwNywgMjYzMjMsIC00NDQwLC0xNzcxMSwgIDUx
MzMsIDI2MzI4LAorICAgICAgICAgICAgLTE0NTc5LC0zMTAwOCwgMjQ1ODMsIDE4NDA0LCAyODQx
NywtMjQzNTAsIDE5NDUzLCAyODY0MiwtMzI1MTMsCisgICAgICAgICAgICAtMTA3NzcsIC0zMDc5
LCAzMDE4OCwgLTc2ODYsIDI3NjM1LC0zMjUyMSwtMTYzODQsLTIwMjQwLCAtNjM4NiwKKyAgICAg
ICAgICAgICAxMDk4NiwgMjM4MjcsLTI1ODgwLC0zMjc1MiwtMjMzMjEsIDE0NjA1LCAzMjIzMSwg
ICA3ODAsLTEzODQ5LAorICAgICAgICAgICAgIDE1MTE5LCAyODY0NywgIDQ4ODgsIC03NzA1LC0x
NTA3NCwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAg
ICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsICA4MTkyLAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywK
KyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ4OTcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTU5MzEsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAg
ICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsIDI2MTIxLCAxMjg5MCwgIDI2
MDQsIDEyMjI4LC0xMTYzNCwgMTIyOTksICA1NTczLAorICAgICAgICAgICAgLTE2NjQyLCAzMjQ1
MiwgMjkxODIsIDMyNzA1LC0zMDcyMywgMjQyNTUsLTE5NzE2LCAxMzI0OCwtMTE3NzksCisgICAg
ICAgICAgICAgLTU2OTYsICAyODA0LCAxMjk5MiwtMjc2NjYsLTIyMDgwLCAtNzcwMSwgLTUxODMs
IC02NjgyLC0zMTQ2NCwKKyAgICAgICAgICAgICAxNDMzMCwtMTI1MjMsIDE0ODQzLCAtNjEzMCwg
MjkxNzgsICAgLTE4LC0yNzM5NiwgMTA0NjcsIDE2OTA3LAorICAgICAgICAgICAgIC0zMzU5LCAt
NjY0NCwgMzE5NjUsIDE0NjA3LC0yMTU0NCwtMzI0OTcsIDI0MDIwLCAxMjU1NywtMjY5MjYsCisg
ICAgICAgICAgICAtMTg0MjEsICAgNzA2LCAyNDU4NywgMTk2NTksICA0ODc4LCAxMDk1NCwgMjMw
NjAsICA4OTA3LC0xMDIxNSwKKyAgICAgICAgICAgIC0yMjU3OSwgMzE3NzIsLTExODI1LC0xNTU5
MCwtMjMwODksIDE3MTczLC0yNTkwMywtMTczODcsICAzMjg1LAorICAgICAgICAgICAgICA0ODg0
LCAxMDIwNCwtMTY2MjcsLTE0MzY3LCAgIDUxNiwgMjA0NTMsLTE2ODk4LCAyMDk2NywtMjM4MTUs
CisgICAgICAgICAgICAgICAtMjAsIDIyMDExLC0xNzE2NywgIDk0NjgsIDMyNDk5LC0yNTYwNywg
IC01MjMsIC0zODgzLCAgLTM5MCwKKyAgICAgICAgICAgICAtNDIwNiwgICA2MzQsIC0zNzY3LCAg
MjMyNSwgLTI3NTEsICAzMTE1LCAtMjM5MiwgIDI3NDYsIC0yMTczLAorICAgICAgICAgICAgICAy
MzE3LCAtMTE0NywgIDIzMjYsIDIzMTQyLCAxMTMxNCwtMTUxMzAsLTI5MTM3LCAgMzAyNiwgIDYx
NDYsCisgICAgICAgICAgICAgIDIxNTAsICAyNDc2LCAgMTEwNSwgIC04MzAsICAxNzc1LCAtMzQy
NSwgIDM2NzQsIC01Mjg3LCAgNDYwOSwKKyAgICAgICAgICAgICAtNzE3NSwgIDQ5MjIsIC05NTc5
LCAgNDU1NiwtMTIwMDcsICA0MjM2LC0xNDAyMywgIDM4NzksLTE1NTUzLAorICAgICAgICAgICAg
ICAzMTU4LC0xNjE2MSwgIDI1NzYsIDE4Mzk4LC0xMjUzNSwgLTY2NDUsLTIwNzM1LC0zMjc2Mywt
MTM4MjQsCisgICAgICAgICAgICAtMjA5OTIsIDI1ODU5LCAgNTM3MiwgMTIwNDAsIDEzMzA3LCAt
NDM1NSwtMzAyMTMsICAgIC05LCAtNjAxOQorICAgICAgICB9OworICAgICAgICBlcnIgPSBvcHVz
X211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBjbSwgOTYwLCBkYXRhLCA3MzgwKTsKKyAgICAgICAg
YXNzZXJ0KGVyciA+IDApOworICAgIH0KKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3Rs
KGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX01VU0lDKSk7CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUigxKSk7CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUl9DT05TVFJBSU5UKDApKTsKKyAg
ICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUFJFRElDVElPTl9E
SVNBQkxFRCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX0ZPUkNFX0NIQU5ORUxTKE9QVVNfQVVUTykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMSkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMSkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDYp
KTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JB
TkRXSURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVh
bV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0FVVE8pKTsKKyAgICBv
cHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTFNCX0RFUFRIKDkpKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfSU5CQU5EX0ZF
QygxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BB
Q0tFVF9MT1NTX1BFUkMoNSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9CSVRSQVRFKDc3NTQxMCkpOworICAgIHsKKyAgICAgICAgc3RhdGljIGNvbnN0
IHNob3J0IHBjbVsxNDQwKjNdID0KKyAgICAgICAgeworICAgICAgICAgICAgIDMwNDQ5LCAxNTA4
MywgMTQwODgsIDMxMjA1LC0xODY3OCwtMTI4MzAsIDE0MDkwLC0yNjEzOCwtMjUzMzcsCisgICAg
ICAgICAgICAtMTE1NDEsIC0zMjU0LCAyNzYyOCwtMjIyNzAsIDMwOTUzLC0xNjEzNiwtMzA3NDUs
IDIwOTkxLC0xNzQwNiwKKyAgICAgICAgICAgICAgNTYzMiwtMTQzMzAsIDI4OTExLC0yNTU5NCwg
MTc0MDgsLTIwNDc0LCAxMzA0MSwgLTg3MzEsICAyMjkyLAorICAgICAgICAgICAgIC0zODYwLCAy
NDA0OSwgMTAyMjUsLTE5MjIwLCAxMDQ3OCwgLTQzNzQsIC0xMTk5LCAgIDE0OCwgIC0zMzAsCisg
ICAgICAgICAgICAgICAtNzQsICAgNTkzLCAgIDE4OCwgIDE1NTgsIC00MTUyLCAxNTk4NCwgMTU5
MzQsIDE1OTM0LCAxNTkzNCwKKyAgICAgICAgICAgICAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkz
NCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsICAxNTk4LAorICAgICAgICAgICAgICAgMTU2
LCAgMTYwNCwgLTExNjMsICAyMjc4LC0zMDAxOCwtMjU4MjEsLTIxNzYzLC0yMzc3NiwgMjQwNjYs
CisgICAgICAgICAgICAgIDk1MDIsIDI1ODY2LC0yNTA1NSwgMTAwMDQsLTI0Nzk4LCAgNzIwNCwg
LTQ1ODEsIC05Njc4LCAgMTU1NCwKKyAgICAgICAgICAgICAxMDU1MywgIDMxMDIsIDEyMTkzLCAg
MjQ0MywgMTE5NTUsICAxMjEzLCAxMDY4OSwgLTEyOTMsICAgOTIxLAorICAgICAgICAgICAgIC00
MTczLCAgODY2MSwgLTYwNDksICA4ODE1LC0yMTIyMSwtMTQ4NTQsIDIzODQwLCAtOTQ3NywgIDg1
NDksCisgICAgICAgICAgICAgIDUyNzgsICA4NzQzLCAgOTM3NSwgIDY5NDAsIDEzMDM4LCAgNDgy
NiwgMTQ1OTgsICA3NzIxLC0yNDMwOCwKKyAgICAgICAgICAgIC0yOTkwNSwtMTk3MDMsLTE3MTA2
LC0xNjEyNCwgLTMyODcsLTI2MTE4LC0xOTcwOSwtMTA3NjksIDI0MzYxLAorICAgICAgICAgICAg
IDI4NjQ4LCAxMDI3NCwtMTEyOTIsLTI5NjY1LC0xNjQxNywgMjQzNDYsIDE0NTgwLCAxODcwNywg
MjYzMjMsCisgICAgICAgICAgICAgLTQ0MTAsLTE3NzExLCAgNTEzMywgMjYzMjgsLTE0NTc5LC0z
MTAwOCwgMjQ1ODMsIDE4NDA0LCAyODQxNywKKyAgICAgICAgICAgIC0yNDM1MCwgMTk0NTMsIDI4
NjQyLC0zMjUxMywtMTA3NzcsIC0zMDc5LCAzMDE4OCwgLTc2ODYsIDI3NjM1LAorICAgICAgICAg
ICAgLTMyNTIxLC0xNjM4NCwtMjAyNDAsIC02Mzg2LCAxMDk4NiwgMjM4MjcsLTI1ODgwLC0zMjc1
MiwtMjMzMjEsCisgICAgICAgICAgICAgMTQ2MDUsIDMyMjMxLCAgIDc4MCwtMTM4NDksIDE1MTE5
LCAyODY0NywgIDQ4ODgsIC03NzA1LCAzMDc1MCwKKyAgICAgICAgICAgICAgICA2NCwgICAgIDAs
IDMyNDg4LCAgNjY4NywtMjA3NTgsIDE5NzQ1LCAtMjA3MCwgICAgLTEsICAgIC0xLAorICAgICAg
ICAgICAgICAgIDI4LCAgIDI1NiwgLTQ2MDgsICA3MTY4LCAgNzQ0NCwgMjM1NTcsLTIxOTk4LCAx
MzA2NCwgIDMzNDUsCisgICAgICAgICAgICAgLTQwODYsLTI4OTE1LCAtODU5NCwgMzIyNjIsICA4
NDYxLCAyNzM4NywtMTIyNzUsIDEyMDEyLCAyMzU2MywKKyAgICAgICAgICAgIC0xODcxOSwtMjg0
MTAsIDI5MTQ0LC0yMjI3MSwtMzI1NjIsLTE2Mzg0LCAxMjUyOCwgLTYzODYsIDEwOTg2LAorICAg
ICAgICAgICAgIDIzODI3LC0yNTg4MCwtMzI3NTIsLTIzMzIxLCAxNDYwNSwgMzIyMzEsICAgNzgw
LC0xMzg0OSwgMTUxMTksCisgICAgICAgICAgICAgMjg2NDcsICA0ODg4LCAtNzcwNSwgMzA3NTAs
ICAgIDY0LCAgICAgMCwgMzI0ODgsICA2Njg3LC0yMDc1OCwKKyAgICAgICAgICAgICAxOTc0NSwg
LTIwNzAsLTEzNzkyLCAtNjQxNCwgMjgxODgsIC0yODIxLCAtNDU4NSwgIDcxNjgsICA3NDQ0LAor
ICAgICAgICAgICAgIDIzNTU3LC0yMTk5OCwgMTMwNjQsICAzMzQ1LCAtNDA4NiwtMjg5MTUsIC04
Njk0LCAzMjI2MiwgIDg0NjEsCisgICAgICAgICAgICAtMTQ4NTMsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LCAzMjc2NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0ODkxLC0xNDkwNywtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywgIDg5MDEsICA5Mzc1LCAgNjk0MCwgMTMwMzgs
ICA0ODI2LCAxNDU5OCwgIDc3MjEsCisgICAgICAgICAgICAtMjQzMDgsLTI5OTA1LC0xOTcwMywt
MTcxMDYsLTE2MTI0LCAtMzI4NywtMjYxMTgsLTE5NzA5LC0xMDc2OSwKKyAgICAgICAgICAgICAy
NDM2MSwgMjg2NDgsIDEwMjc0LC0xMTI5MiwtMjk2NjUsLTE2NDE3LCAyNDM0NiwgMTQ1ODAsIDE4
NzA3LAorICAgICAgICAgICAgIDI2MzIzLCAtNDQ0MCwtMTc3MTEsICA1MTMzLCAyNjMyOCwtMTQ1
NzksLTMxMDA4LCAyNDU4MywgMTg0MDQsCisgICAgICAgICAgICAgMjg0MTcsLTI0MzUwLCAxOTQ1
MywgMjg2NDIsLTMyNTEzLC0xMDc3NywgLTMwNzksIDMwMTg4LCAtNzY4NiwKKyAgICAgICAgICAg
ICAyNzYzNSwtMzI1MjEsLTE2Mzg0LC0yMDI0MCwgLTYzODYsIDEwOTg2LCAyMzgyNywtMjU4ODAs
LTMyNzUyLAorICAgICAgICAgICAgLTIzMzIxLCAxNDYwNSwgMzIyMzEsICAgNzgwLC0xMzg0OSwg
MTUxMTksIDI4NjQ3LCAgNDg4OCwgLTc3MDUsCisgICAgICAgICAgICAtMTUwNzQsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAg
ICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAgODE5
MiwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAg
ICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0ODk3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAg
ICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcs
LTE1OTMxLC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywK
KyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywgMjYxMjEsIDEyODkwLAorICAgICAgICAgICAgICAyNjA0LCAxMjIyOCwtMTE2
MzQsIDEyMjk5LCAgNTU3MywtMTY2NDIsIDMyNDUyLCAyOTE4MiwgIDc3MTAsCisgICAgICAgICAg
ICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAg
ICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAg
ICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisg
ICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
CisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAg
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAg
ICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAg
ICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAor
ICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTEw
ODExLC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MTcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MzgsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsICAtNTcxLCAtOTk4NiwgICAtNTgsIDEyNTQyLC0xODQ5MSwKKyAgICAgICAgICAg
ICAzMjUwNywgMTI4MzgsICA2NjUzLCAgIDI5NCwgICAgLTEsICAgICAwLC0xOTk2OCwgMTgzNjgs
IC00MzU3LAorICAgICAgICAgICAgIC01Njk2LCAgMjgwNCwgMTI5OTgsLTIyODAyLC0yMjA4MCwg
LTc3MDEsIC01MTgzLCAgIDQ4NiwgLTMxMzMsCisgICAgICAgICAgICAgLTU2NjAsIC0xMDgzLCAx
Mzc5OSwtMjg3MjYsLTExMDI5LCAgIDIwNSwtMTQ4NDgsIDMyNDY0LCAgICAtMSwKKyAgICAgICAg
ICAgICAgLTEyOSwtMTMwNzIsICA2MzgwLCAtNzk0OCwgMjA3MTcsIDE4NDI1LCAxNzM5MiwgMTQz
MzUsIC01NjQ2LAorICAgICAgICAgICAgIDMwOTczLCAtMzU5OCwgIDcxODgsIC0zODY3LCAgMzA1
NSwgLTQyNDcsICA1NTk3LCAtNDAxMSwtMjY0MjcsCisgICAgICAgICAgICAgICAtMTEsLTMwNDE4
LCAgNzkyMiwgIDI2MTQsICAgMjM3LCAtNTgzOSwtMjc0MTMsLTE3NjI0LC0yOTcxNiwKKyAgICAg
ICAgICAgIC0xMzUzOSwgICAyMzksIDIwOTkxLCAxODE2NCwgLTQwODIsLTE2NjQ3LC0yNzM4Niwg
MTk0NTgsIDIwMjI0LAorICAgICAgICAgICAgICA0NjE5LCAxOTcyOCwgLTc0MDksLTE4MTg2LC0y
NTA3MywgMjc2MjcsLTIzNTM5LCAtNzk0NSwtMzE0NjQsCisgICAgICAgICAgICAgMTQzMzAsLTEy
NTIzLC0yMjAyMSwgLTc3MDEsIC01MTgzLCAgIDQ4NiwgLTMxMzMsIC01NjYwLCAtMTA4MywKKyAg
ICAgICAgICAgICAxMzc5OSwtMjg3MjYsLTExMDI5LCAgIDIwNSwtMTQ4NDgsIDMyNDY0LCAgICAt
MSwgIC0xMjksLTEzMDcyLAorICAgICAgICAgICAgICA2MzgwLCAtNzk0OCwgMjA3MTcsIDE4NDI1
LCAxNzM5MiwgMTQwOTMsIC01NjQ2LCAzMDk3MywgLTM1OTgsCisgICAgICAgICAgICAgIDcxODgs
IC0zODY3LCAgMzA1NSwgIDM2ODksIC01NDAxLCAgNDkwNiwgLTYwNTEsICA0MjUwLCAtNjI3MiwK
KyAgICAgICAgICAgICAgMzQ5MiwgLTYzNDMsICAzMTk3LCAtNjM5NywgIDQwNDEsIC02MzQxLCAg
NjI1NSwgLTYzODEsICAgMjM5LAorICAgICAgICAgICAgIDIwOTkxLCAxODE2NCwgLTQwODIsLTE2
NjQ3LC0yNzM4NiwgMTk0NTgsIDIwMjI0LCAgNDYxOSwgMTk3MjgsCisgICAgICAgICAgICAgLTc0
MDksLTE4MTg2LC0yNTA3MywgMjc2MjcsLTIzNTM5LCAtNzk0NSwtMzE0NjQsIDE0MzMwLC0xMjUy
MywKKyAgICAgICAgICAgICAxNDg0MywgLTYxMzAsIDMwMjAyLCAgLTI1MCwtMjg0MjAsIDEwNDY3
LCAxNjkwNywgLTMzNTksIC02NjQ0LAorICAgICAgICAgICAgIDMxOTY1LCAgMzM0MywtMTE3Mjcs
ICAyOTY2LC0xMjYxNiwgIDMwNjQsLTEzNDcyLCAgNjczMiwtMTIzNDksCisgICAgICAgICAgICAg
IDU1NDEsLTExOTY1LCAgNTUzMCwtMTA4MjAsIC0xOTEyLCAtMzYzNywgMzIyODUsIC00NjA3LCAg
IDMxMCwKKyAgICAgICAgICAgIC0zMjc2OCwgICAgIDAsIC01MjU4LCAgMjEwNiwgLTY4NTcsICAy
NjgxLCAtNTQ0OSwgLTM2MDYsIC02NzE3LAorICAgICAgICAgICAgIC01NDgyLCAtMzYwNiwgLTE4
NTMsICA0MDgyLCAtNzYzMSwgLTk4MDgsIC0xNzQyLCAtMjg1MSwgLTUxMTIsCisgICAgICAgICAg
ICAgICAgNjQsICAtODY4LC0xMzU0NiwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1
LC0xMzM2NSwKKyAgICAgICAgICAgIC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUs
LTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LAorICAgICAgICAgICAgLTEzMzY1LC0xMzM2NSwt
MTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsCisgICAgICAg
ICAgICAtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEz
MzY1LC0xMzM2NSwKKyAgICAgICAgICAgIC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMz
NjUsLTEzMzY1LC0xMzM2NSwgIDc4ODMsIC0yMzE2LAorICAgICAgICAgICAgICA5MDg2LCAtMzk0
NCwgMTA1MDAsICA0Mjg1LCAxMDQ1OSwgLTY0NzQsIDEwMjA0LCAtNjUzOSwgMTE2MDEsCisgICAg
ICAgICAgICAgLTY4MjQsIDEzMzg1LCAtNzE0MiwgMTM4NzIsIC03NDU3LCAxMzY3MCwgLTc3MjUs
IDEzNDYzLCAtNjg4NywKKyAgICAgICAgICAgICAxMjQ4MiwgLTU1ODAsIDEyNjAwLCAtNDk2NCwg
MTI0ODAsICAzMjU0LCAxMTc0MSwgLTQyMTAsLTI0ODE5LAorICAgICAgICAgICAgIDIzMjgyLCAy
Mjc5OCwgICA0OTEsIC0xNzc0LCAtMTA3MywgIDM2NDEsIC0xMzA0LCAyODkyOCwgIC0yNTAsCisg
ICAgICAgICAgICAtMjczOTYsICA2NjU3LCAtODk2MSwgMjI1MjQsIDE5OTg3LCAxMDIzMSwgIDE3
OTEsICA4OTQ3LC0zMjc2MywKKyAgICAgICAgICAgIC0yNjM4NSwtMzEyMjcsICAtNzkyLC0zMDQ2
MSwgIDg5MjYsICA0ODY2LCAyNzg2MywgMjc3NTYsIDI3NzU2LAorICAgICAgICAgICAgIDI3NzU2
LCAyNzc1NiwgMjc3NTYsIDI3NzU2LCAyNzc1NiwgMjc3NTYsICA1NjMwLC0xMTA3MCwtMTYxMzYs
CisgICAgICAgICAgICAgMjA2NzEsLTExNTMwLCAyNzMyOCwgIDgxNzksICA1MDU5LC0zMTUwMywt
MjQzNzksLTE5NDcyLCAxNzg2MywKKyAgICAgICAgICAgIC0yOTIwMiwgMjI5ODYsICAgLTIzLCAg
ODkwOSwgIDg0MjIsIDEwNDUwCisgICAgICAgIH07CisgICAgICAgIGVyciA9IG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2RlKGVuYywgcGNtLCAxNDQwLCBkYXRhLCA3MzgwKTsKKyAgICAgICAgLyogcmVh
ZHMgdW5pbml0aWFsaXplZCBkYXRhIGF0IHNyYy9vcHVzX211bHRpc3RyZWFtX2VuY29kZXIuYzoy
OTMgKi8KKyAgICAgICAgYXNzZXJ0KGVyciA+IDApOworICAgIH0KKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfZGVzdHJveShlbmMpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50
IGVjX2VuY19zaHJpbmtfYXNzZXJ0KHZvaWQpCit7CisgICAgT3B1c0VuY29kZXIgKmVuYzsKKyAg
ICBpbnQgZXJyOworICAgIGludCBkYXRhX2xlbjsKKyAgICB1bnNpZ25lZCBjaGFyIGRhdGFbMjAw
MF07CisgICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbTFbOTYwXSA9IHsgNTE0MCB9OworICAgIHN0
YXRpYyBjb25zdCBzaG9ydCBwY20yWzI4ODBdID0KKyAgICB7CisgICAgICAgICAgLTI1NiwtMTIw
MzMsICAgICAwLCAtMjgxNywgIDY5MTIsICAgICAwLCAtNTM1OSwgIDUyMDAsICAzMDYxLAorICAg
ICAgICAgICAgIDAsIC0yOTAzLCAgNTY1MiwgLTEyODEsLTI0NjU2LC0xNDQzMywtMjQ2NzgsICAg
IDMyLC0yOTc5MywKKyAgICAgICAgICAyODcwLCAgICAgMCwgIDQwOTYsICA1MTIwLCAgNTE0MCwg
IC0yMzQsLTIwMjMwLC0yNDY3MywtMjQ2MzMsCisgICAgICAgIC0yNDY3MywtMjQ3MDUsICAgICAw
LC0zMjc2OCwtMjU0NDQsLTI1NDQ0LCAgICAgMCwtMjU0NDQsLTI1NDQ0LAorICAgICAgICAgICAx
NTYsLTIwNDgwLCAtNzk0OCwgLTU5MjAsIC03OTY4LCAtNzk2OCwgICAyMjQsICAgICAwLCAyMDQ4
MCwKKyAgICAgICAgICAgIDExLCAyMDQ5NiwgICAgMTMsIDIwNDk2LCAgICAxMSwtMjA0ODAsICAy
MjkyLC0yMDI0MCwgICAyNDQsCisgICAgICAgICAyMDQ4MCwgICAgMTEsIDIwNDk2LCAgICAxMSwt
MjA0ODAsICAgMjQ0LC0yMDI0MCwgIDcxNTYsIDIwNDU2LAorICAgICAgICAgIC0yNDYsLTIwMjQz
LCAgIDI0NCwgICAxMjgsICAgMjQ0LCAyMDQ4MCwgICAgMTEsIDIwNDk2LCAgICAxMSwKKyAgICAg
ICAgLTIwNDgwLCAgIDI0NCwtMjAyNTYsICAgMjQ0LCAyMDQ4MCwgICAyNTYsICAgICAwLCAgLTI0
NiwgMTY2MDksCisgICAgICAgICAgLTE3NiwgICAgIDAsIDI5ODcyLCAtNDA5NiwgLTI4ODgsICAg
NTE2LCAgMjg5NiwgIDQwOTYsICAyODk2LAorICAgICAgICAtMjA0ODAsIC0zODUyLCAtMjg5Niwg
LTEwMjUsLTMxMDU2LC0xNDQzMywgICAyNDQsICAxNzkyLCAgLTI1NiwKKyAgICAgICAgLTEyMDMz
LCAgICAgMCwgLTI4MTcsICAgICAwLCAgICAgMCwgLTUzNTksICA1MjAwLCAgMzA2MSwgICAgMTYs
CisgICAgICAgICAtMjkwMywgIDU2NTIsIC0xMjgxLC0yNDY1NiwtMTQ0MzMsLTI0Njc4LCAgICAz
MiwtMjk3OTMsICAyODcwLAorICAgICAgICAgICAgIDAsICA0MDk2LCAgNTEyMCwgIDUxNDAsICAt
MjM0LC0yMDIzMCwtMjQ2NzMsLTI0NjMzLC0yNDY3MywKKyAgICAgICAgLTI0NzA1LCAgICAgMCwt
MzI3NjgsLTI1NDQ0LC0yNTQ0NCwgICAgIDAsLTI1NDQ0LC0yNTQ0NCwgICAxNTYsCisgICAgICAg
IC0yMDQ4MCwgLTc5NzMsIC01OTIwLCAtNzk2OCwgLTc5NjgsICAgMjI0LCAgICAgMCwgMjA0ODAs
ICAgIDExLAorICAgICAgICAgMjA0OTYsICAgIDExLCAyMDQ5NiwgICAgMTEsLTIwNDgwLCAgMjI5
MiwtMjAyMTMsICAgMjQ0LCAyMDQ4MCwKKyAgICAgICAgICAgIDExLCAyMDQ5NiwgICAgMTEsLTI0
Njk4LCAtMjg3MywgICAgIDAsICAgICA3LCAgICAtMSwgICAyMDgsCisgICAgICAgICAgLTI1Niwg
ICAyNDQsICAgICAwLCAgNDM1MiwgMjA3MTUsIC0yNzk2LCAgICAxMSwtMjIyNzIsICA1MzY0LAor
ICAgICAgICAgIC0yMzQsLTIwMjMwLC0yNDY3MywtMjU5MTMsICA4MzUxLC0yNDgzMiwgMTM5NjMs
ICAgIDExLCAgICAgMCwKKyAgICAgICAgICAgIDE2LCAgNTE0MCwgIDU2NTIsIC0xMjgxLC0yNDY1
NiwtMTQ0MzMsLTI0NjczLCAzMjY3MSwgICAxNTksCisgICAgICAgICAgICAgMCwtMjU0NzIsLTI1
NDQ0LCAgIDE1NiwtMjU2MDAsLTI1NDQ0LC0yNTQ0NCwgICAgIDAsIC0yODk2LAorICAgICAgICAg
LTc5NjgsIC03OTYwLCAtNzk2OCwgLTc5NjgsICAgICAwLCAgICAgMCwgIDI4OTYsICA0MDk2LCAg
Mjg5NiwKKyAgICAgICAgICA0MDk2LCAgMjg5NiwgICAgIDAsIC0yODk2LCAtNDA4OCwgLTI4OTYs
ICAgICAwLCAgMjg5NiwgICAgIDAsCisgICAgICAgICAtMjg5NiwgLTQwOTYsIC0yODk2LCAgICAx
MSwgIDI2NDAsIC00NjA5LCAtMjg5NiwtMzI3NjgsIC0zMDcyLAorICAgICAgICAgICAgIDAsICAy
ODk2LCAgNDA5NiwgIDI4OTYsICAgICAwLCAtMjg5NiwgLTQwOTYsIC0yODk2LCAgICAgMCwKKyAg
ICAgICAgICAgIDgwLCAgICAgMSwgIDI4MTYsICAgICAwLCAyMDY1NiwgICAyNTUsLTIwNDgwLCAg
IDExNiwtMTgxOTIKKyAgICB9OworICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY20zWzI4ODBdID0g
eyAwIH07CisKKyAgICBlbmMgPSBvcHVzX2VuY29kZXJfY3JlYXRlKDQ4MDAwLCAxLCBPUFVTX0FQ
UExJQ0FUSU9OX0FVRElPLCAmZXJyKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19T
RVRfQ09NUExFWElUWSgxMCkpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9Q
QUNLRVRfTE9TU19QRVJDKDYpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
QklUUkFURSg2MDAwKSk7CisgICAgZGF0YV9sZW4gPSBvcHVzX2VuY29kZShlbmMsIHBjbTEsIDk2
MCwgZGF0YSwgMjAwMCk7CisgICAgYXNzZXJ0KGRhdGFfbGVuID4gMCk7CisKKyAgICBvcHVzX2Vu
Y29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX1ZPSUNFKSk7CisgICAg
b3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOwor
ICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19CQU5EV0lE
VEhfU1VQRVJXSURFQkFORCkpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9J
TkJBTkRfRkVDKDEpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFU
RSgxNTYwMCkpOworICAgIGRhdGFfbGVuID0gb3B1c19lbmNvZGUoZW5jLCBwY20yLCAyODgwLCBk
YXRhLCAxMjIpOworICAgIGFzc2VydChkYXRhX2xlbiA+IDApOworCisgICAgb3B1c19lbmNvZGVy
X2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJQykpOworICAgIG9wdXNf
ZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDI3MDAwKSk7CisgICAgZGF0YV9sZW4g
PSBvcHVzX2VuY29kZShlbmMsIHBjbTMsIDI4ODAsIGRhdGEsIDEyMik7IC8qIGFzc2VydGlvbiBm
YWlsdXJlICovCisgICAgYXNzZXJ0KGRhdGFfbGVuID4gMCk7CisKKyAgICBvcHVzX2VuY29kZXJf
ZGVzdHJveShlbmMpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50IGVjX2VuY19zaHJp
bmtfYXNzZXJ0Mih2b2lkKQoreworICAgIE9wdXNFbmNvZGVyICplbmM7CisgICAgaW50IGVycjsK
KyAgICBpbnQgZGF0YV9sZW47CisgICAgdW5zaWduZWQgY2hhciBkYXRhWzIwMDBdOworCisgICAg
ZW5jID0gb3B1c19lbmNvZGVyX2NyZWF0ZSg0ODAwMCwgMSwgT1BVU19BUFBMSUNBVElPTl9BVURJ
TywgJmVycik7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFko
NikpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdO
QUxfVk9JQ0UpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRI
KE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EKSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX1BBQ0tFVF9MT1NTX1BFUkMoMjYpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfQklUUkFURSgyNzAwMCkpOworICAgIHsKKyAgICAgICAgc3RhdGljIGNvbnN0IHNo
b3J0IHBjbVs5NjBdID0geyAwIH07CisgICAgICAgIGRhdGFfbGVuID0gb3B1c19lbmNvZGUoZW5j
LCBwY20sIDk2MCwgZGF0YSwgMjAwMCk7CisgICAgICAgIGFzc2VydChkYXRhX2xlbiA+IDApOwor
ICAgIH0KKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lH
TkFMX01VU0lDKSk7CisgICAgeworICAgICAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtWzQ4MF0g
PQorICAgICAgICB7CisgICAgICAgICAgICAzMjc2NywgMzI3NjcsIDAsIDAsIDMyNzY3LCAzMjc2
NywgMCwgMCwgMzI3NjcsIDMyNzY3LAorICAgICAgICAgICAgLTMyNzY4LCAtMzI3NjgsIDAsIDAs
IC0zMjc2OCwgLTMyNzY4LCAwLCAwLCAtMzI3NjgsIC0zMjc2OAorICAgICAgICB9OworICAgICAg
ICBkYXRhX2xlbiA9IG9wdXNfZW5jb2RlKGVuYywgcGNtLCA0ODAsIGRhdGEsIDE5KTsKKyAgICAg
ICAgYXNzZXJ0KGRhdGFfbGVuID4gMCk7CisgICAgfQorICAgIG9wdXNfZW5jb2Rlcl9kZXN0cm95
KGVuYyk7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgc2lsa19nYWluX2Fzc2VydCh2
b2lkKQoreworICAgIE9wdXNFbmNvZGVyICplbmM7CisgICAgaW50IGVycjsKKyAgICBpbnQgZGF0
YV9sZW47CisgICAgdW5zaWduZWQgY2hhciBkYXRhWzEwMDBdOworICAgIHN0YXRpYyBjb25zdCBz
aG9ydCBwY20xWzE2MF0gPSB7IDAgfTsKKyAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtMls5NjBd
ID0KKyAgICB7CisgICAgICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAs
IDAsIDAsIDAsIDAsIDAsIDAsIDAsCisgICAgICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAs
IDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsCisgICAgICAgIDAsIDAsIDAsIDAsIDAs
IDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsCisgICAgICAgIDAs
IDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAs
CisgICAgICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAs
IDAsIDAsCisgICAgICAgIDMyNzY3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwLCAwLAorICAgICAgICAwLCAwLCAwLCAwLCAzMjc2NworICAgIH07CisKKyAg
ICBlbmMgPSBvcHVzX2VuY29kZXJfY3JlYXRlKDgwMDAsIDEsIE9QVVNfQVBQTElDQVRJT05fQVVE
SU8sICZlcnIpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZ
KDMpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRXSURUSChP
UFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX0JJVFJBVEUoNjAwMCkpOworICAgIGRhdGFfbGVuID0gb3B1c19lbmNvZGUoZW5jLCBw
Y20xLCAxNjAsIGRhdGEsIDEwMDApOworICAgIGFzc2VydChkYXRhX2xlbiA+IDApOworCisgICAg
b3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUigwKSk7CisgICAgb3B1c19lbmNvZGVy
X2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMCkpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX01FRElVTUJBTkQpKTsK
KyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURSgyODY3KSk7CisgICAg
ZGF0YV9sZW4gPSBvcHVzX2VuY29kZShlbmMsIHBjbTIsIDk2MCwgZGF0YSwgMTAwMCk7CisgICAg
YXNzZXJ0KGRhdGFfbGVuID4gMCk7CisKKyAgICBvcHVzX2VuY29kZXJfZGVzdHJveShlbmMpOwor
ICAgIHJldHVybiAwOworfQorCit2b2lkIHJlZ3Jlc3Npb25fdGVzdCh2b2lkKQoreworICAgZnBy
aW50ZihzdGRlcnIsICJSdW5uaW5nIHNpbXBsZSB0ZXN0cyBmb3IgYnVncyB0aGF0IGhhdmUgYmVl
biBmaXhlZCBwcmV2aW91c2x5XG4iKTsKKyAgIGNlbHRfZWNfaW50ZXJuYWxfZXJyb3IoKTsKKyAg
IG1zY2JyX2VuY29kZV9mYWlsMTAoKTsKKyAgIG1zY2JyX2VuY29kZV9mYWlsKCk7CisgICBzdXJy
b3VuZF9hbmFseXNpc191bmluaXQoKTsKKyAgIGVjX2VuY19zaHJpbmtfYXNzZXJ0KCk7CisgICBl
Y19lbmNfc2hyaW5rX2Fzc2VydDIoKTsKKyAgIHNpbGtfZ2Fpbl9hc3NlcnQoKTsKK30KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvdGVzdHMvcnVuX3ZlY3RvcnMuc2ggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3J1bl92ZWN0b3JzLnNoCmluZGV4IDFk
NDQ3YzQzZjU5Njc3MDZiZDMwOWViYmYyMjAzOGExZjNhMTFmMjUuLmRjYjc2Y2YxODc5ZWYwODAx
ZDVhNWMzM2ZjNjc2ZWQ3OWJmNDFlODcgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvcnVuX3ZlY3RvcnMuc2gK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy90ZXN0cy9ydW5fdmVjdG9ycy5zaApAQCAtMzMsOCArMzMsOCBAQAogIyAgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
CiAjICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KIAotcm0gbG9nc19tb25vLnR4dAotcm0gbG9nc19zdGVyZW8udHh0CitybSAtZiBs
b2dzX21vbm8udHh0IGxvZ3NfbW9ubzIudHh0CitybSAtZiBsb2dzX3N0ZXJlby50eHQgbG9nc19z
dGVyZW8yLnR4dAogCiBpZiBbICIkIyIgLW5lICIzIiBdOyB0aGVuCiAgICAgZWNobyAidXNhZ2U6
IHJ1bl92ZWN0b3JzLnNoIDxleGVjIHBhdGg+IDx2ZWN0b3IgcGF0aD4gPHJhdGU+IgpAQCAtNDgs
NTEgKzQ4LDUzIEBAIFJBVEU9JDMKIDogJHtPUFVTX0RFTU86PSRDTURfUEFUSC9vcHVzX2RlbW99
CiA6ICR7T1BVU19DT01QQVJFOj0kQ01EX1BBVEgvb3B1c19jb21wYXJlfQogCi1pZiBbIC1kICRW
RUNUT1JfUEFUSCBdOyB0aGVuCi0gICAgZWNobyBUZXN0IHZlY3RvcnMgZm91bmQgaW4gJFZFQ1RP
Ul9QQVRICitpZiBbIC1kICIkVkVDVE9SX1BBVEgiIF07IHRoZW4KKyAgICBlY2hvICJUZXN0IHZl
Y3RvcnMgZm91bmQgaW4gJFZFQ1RPUl9QQVRIIgogZWxzZQotICAgIGVjaG8gTm8gdGVzdCB2ZWN0
b3JzIGZvdW5kCisgICAgZWNobyAiTm8gdGVzdCB2ZWN0b3JzIGZvdW5kIgogICAgICNEb24ndCBt
YWtlIHRoZSB0ZXN0IGZhaWwgaGVyZSBiZWNhdXNlIHRoZSB0ZXN0IHZlY3RvcnMKICAgICAjd2ls
bCBiZSBkaXN0cmlidXRlZCBzZXBhcmF0ZWx5CiAgICAgZXhpdCAwCiBmaQogCi1pZiBbICEgLXgg
JE9QVVNfQ09NUEFSRSBdOyB0aGVuCi0gICAgZWNobyBFUlJPUjogQ29tcGFyZSBwcm9ncmFtIG5v
dCBmb3VuZDogJE9QVVNfQ09NUEFSRQoraWYgWyAhIC14ICIkT1BVU19DT01QQVJFIiBdOyB0aGVu
CisgICAgZWNobyAiRVJST1I6IENvbXBhcmUgcHJvZ3JhbSBub3QgZm91bmQ6ICRPUFVTX0NPTVBB
UkUiCiAgICAgZXhpdCAxCiBmaQogCi1pZiBbIC14ICRPUFVTX0RFTU8gXTsgdGhlbgotICAgIGVj
aG8gRGVjb2Rpbmcgd2l0aCAkT1BVU19ERU1PCitpZiBbIC14ICIkT1BVU19ERU1PIiBdOyB0aGVu
CisgICAgZWNobyAiRGVjb2Rpbmcgd2l0aCAkT1BVU19ERU1PIgogZWxzZQotICAgIGVjaG8gRVJS
T1I6IERlY29kZXIgbm90IGZvdW5kOiAkT1BVU19ERU1PCisgICAgZWNobyAiRVJST1I6IERlY29k
ZXIgbm90IGZvdW5kOiAkT1BVU19ERU1PIgogICAgIGV4aXQgMQogZmkKIAogZWNobyAiPT09PT09
PT09PT09PT0iCi1lY2hvIFRlc3RpbmcgbW9ubworZWNobyAiVGVzdGluZyBtb25vIgogZWNobyAi
PT09PT09PT09PT09PT0iCiBlY2hvCiAKIGZvciBmaWxlIGluIDAxIDAyIDAzIDA0IDA1IDA2IDA3
IDA4IDA5IDEwIDExIDEyCiBkbwotICAgIGlmIFsgLWUgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3Ik
ZmlsZS5iaXQgXTsgdGhlbgotICAgICAgICBlY2hvIFRlc3RpbmcgdGVzdHZlY3RvciRmaWxlCisg
ICAgaWYgWyAtZSAiJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3IkZmlsZS5iaXQiIF07IHRoZW4KKyAg
ICAgICAgZWNobyAiVGVzdGluZyB0ZXN0dmVjdG9yJGZpbGUiCiAgICAgZWxzZQotICAgICAgICBl
Y2hvIEJpdHN0cmVhbSBmaWxlIG5vdCBmb3VuZDogdGVzdHZlY3RvciRmaWxlLmJpdAorICAgICAg
ICBlY2hvICJCaXRzdHJlYW0gZmlsZSBub3QgZm91bmQ6IHRlc3R2ZWN0b3IkZmlsZS5iaXQiCiAg
ICAgZmkKLSAgICBpZiAkT1BVU19ERU1PIC1kICRSQVRFIDEgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0
b3IkZmlsZS5iaXQgdG1wLm91dCA+PiBsb2dzX21vbm8udHh0IDI+JjE7IHRoZW4KLSAgICAgICAg
ZWNobyBzdWNjZXNzZnVsbHkgZGVjb2RlZAorICAgIGlmICIkT1BVU19ERU1PIiAtZCAiJFJBVEUi
IDEgIiRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuYml0IiB0bXAub3V0ID4+IGxvZ3NfbW9u
by50eHQgMj4mMTsgdGhlbgorICAgICAgICBlY2hvICJzdWNjZXNzZnVsbHkgZGVjb2RlZCIKICAg
ICBlbHNlCi0gICAgICAgIGVjaG8gRVJST1I6IGRlY29kaW5nIGZhaWxlZAorICAgICAgICBlY2hv
ICJFUlJPUjogZGVjb2RpbmcgZmFpbGVkIgogICAgICAgICBleGl0IDEKICAgICBmaQotICAgICRP
UFVTX0NPTVBBUkUgLXIgJFJBVEUgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3IkZmlsZS5kZWMgdG1w
Lm91dCA+PiBsb2dzX21vbm8udHh0IDI+JjEKKyAgICAiJE9QVVNfQ09NUEFSRSIgLXIgIiRSQVRF
IiAiJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3Ike2ZpbGV9LmRlYyIgdG1wLm91dCA+PiBsb2dzX21v
bm8udHh0IDI+JjEKICAgICBmbG9hdF9yZXQ9JD8KLSAgICBpZiBbICIkZmxvYXRfcmV0IiAtZXEg
IjAiIF07IHRoZW4KLSAgICAgICAgZWNobyBvdXRwdXQgbWF0Y2hlcyByZWZlcmVuY2UKKyAgICAi
JE9QVVNfQ09NUEFSRSIgLXIgIiRSQVRFIiAiJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3Ike2ZpbGV9
bS5kZWMiIHRtcC5vdXQgPj4gbG9nc19tb25vMi50eHQgMj4mMQorICAgIGZsb2F0X3JldDI9JD8K
KyAgICBpZiBbICIkZmxvYXRfcmV0IiAtZXEgIjAiIF0gfHwgWyAiJGZsb2F0X3JldDIiIC1lcSAi
MCIgXTsgdGhlbgorICAgICAgICBlY2hvICJvdXRwdXQgbWF0Y2hlcyByZWZlcmVuY2UiCiAgICAg
ZWxzZQotICAgICAgICBlY2hvIEVSUk9SOiBvdXRwdXQgZG9lcyBub3QgbWF0Y2ggcmVmZXJlbmNl
CisgICAgICAgIGVjaG8gIkVSUk9SOiBvdXRwdXQgZG9lcyBub3QgbWF0Y2ggcmVmZXJlbmNlIgog
ICAgICAgICBleGl0IDEKICAgICBmaQogICAgIGVjaG8KQEAgLTEwNSwyMyArMTA3LDI1IEBAIGVj
aG8KIAogZm9yIGZpbGUgaW4gMDEgMDIgMDMgMDQgMDUgMDYgMDcgMDggMDkgMTAgMTEgMTIKIGRv
Ci0gICAgaWYgWyAtZSAkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciRmaWxlLmJpdCBdOyB0aGVuCi0g
ICAgICAgIGVjaG8gVGVzdGluZyB0ZXN0dmVjdG9yJGZpbGUKKyAgICBpZiBbIC1lICIkVkVDVE9S
X1BBVEgvdGVzdHZlY3RvciRmaWxlLmJpdCIgXTsgdGhlbgorICAgICAgICBlY2hvICJUZXN0aW5n
IHRlc3R2ZWN0b3IkZmlsZSIKICAgICBlbHNlCi0gICAgICAgIGVjaG8gQml0c3RyZWFtIGZpbGUg
bm90IGZvdW5kOiB0ZXN0dmVjdG9yJGZpbGUKKyAgICAgICAgZWNobyAiQml0c3RyZWFtIGZpbGUg
bm90IGZvdW5kOiB0ZXN0dmVjdG9yJGZpbGUiCiAgICAgZmkKLSAgICBpZiAkT1BVU19ERU1PIC1k
ICRSQVRFIDIgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3IkZmlsZS5iaXQgdG1wLm91dCA+PiBsb2dz
X3N0ZXJlby50eHQgMj4mMTsgdGhlbgotICAgICAgICBlY2hvIHN1Y2Nlc3NmdWxseSBkZWNvZGVk
CisgICAgaWYgIiRPUFVTX0RFTU8iIC1kICIkUkFURSIgMiAiJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0
b3IkZmlsZS5iaXQiIHRtcC5vdXQgPj4gbG9nc19zdGVyZW8udHh0IDI+JjE7IHRoZW4KKyAgICAg
ICAgZWNobyAic3VjY2Vzc2Z1bGx5IGRlY29kZWQiCiAgICAgZWxzZQotICAgICAgICBlY2hvIEVS
Uk9SOiBkZWNvZGluZyBmYWlsZWQKKyAgICAgICAgZWNobyAiRVJST1I6IGRlY29kaW5nIGZhaWxl
ZCIKICAgICAgICAgZXhpdCAxCiAgICAgZmkKLSAgICAkT1BVU19DT01QQVJFIC1zIC1yICRSQVRF
ICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuZGVjIHRtcC5vdXQgPj4gbG9nc19zdGVyZW8u
dHh0IDI+JjEKKyAgICAiJE9QVVNfQ09NUEFSRSIgLXMgLXIgIiRSQVRFIiAiJFZFQ1RPUl9QQVRI
L3Rlc3R2ZWN0b3Ike2ZpbGV9LmRlYyIgdG1wLm91dCA+PiBsb2dzX3N0ZXJlby50eHQgMj4mMQog
ICAgIGZsb2F0X3JldD0kPwotICAgIGlmIFsgIiRmbG9hdF9yZXQiIC1lcSAiMCIgXTsgdGhlbgot
ICAgICAgICBlY2hvIG91dHB1dCBtYXRjaGVzIHJlZmVyZW5jZQorICAgICIkT1BVU19DT01QQVJF
IiAtcyAtciAiJFJBVEUiICIkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciR7ZmlsZX1tLmRlYyIgdG1w
Lm91dCA+PiBsb2dzX3N0ZXJlbzIudHh0IDI+JjEKKyAgICBmbG9hdF9yZXQyPSQ/CisgICAgaWYg
WyAiJGZsb2F0X3JldCIgLWVxICIwIiBdIHx8IFsgIiRmbG9hdF9yZXQyIiAtZXEgIjAiIF07IHRo
ZW4KKyAgICAgICAgZWNobyAib3V0cHV0IG1hdGNoZXMgcmVmZXJlbmNlIgogICAgIGVsc2UKLSAg
ICAgICAgZWNobyBFUlJPUjogb3V0cHV0IGRvZXMgbm90IG1hdGNoIHJlZmVyZW5jZQorICAgICAg
ICBlY2hvICJFUlJPUjogb3V0cHV0IGRvZXMgbm90IG1hdGNoIHJlZmVyZW5jZSIKICAgICAgICAg
ZXhpdCAxCiAgICAgZmkKICAgICBlY2hvCkBAIC0xMjksNiArMTMzLDExIEBAIGRvbmUKIAogCiAK
LWVjaG8gQWxsIHRlc3RzIGhhdmUgcGFzc2VkIHN1Y2Nlc3NmdWxseQotZ3JlcCBxdWFsaXR5IGxv
Z3NfbW9uby50eHQgfCBhd2sgJ3tzdW0rPSQ0fUVORHtwcmludCAiQXZlcmFnZSBtb25vIHF1YWxp
dHkgaXMiLCBzdW0vTlIsICIlIn0nCi1ncmVwIHF1YWxpdHkgbG9nc19zdGVyZW8udHh0IHwgYXdr
ICd7c3VtKz0kNH1FTkR7cHJpbnQgIkF2ZXJhZ2Ugc3RlcmVvIHF1YWxpdHkgaXMiLCBzdW0vTlIs
ICIlIn0nCitlY2hvICJBbGwgdGVzdHMgaGF2ZSBwYXNzZWQgc3VjY2Vzc2Z1bGx5IgorbW9ubzE9
YGdyZXAgcXVhbGl0eSBsb2dzX21vbm8udHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7aWYgKE5SID09
IDEyKSBzdW0gLz0gMTI7IGVsc2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdgCittb25vMj1gZ3JlcCBx
dWFsaXR5IGxvZ3NfbW9ubzIudHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7aWYgKE5SID09IDEyKSBz
dW0gLz0gMTI7IGVsc2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdgCitlY2hvICRtb25vMSAkbW9ubzIg
fCBhd2sgJ3tpZiAoJDIgPiAkMSkgJDEgPSAkMjsgcHJpbnQgIkF2ZXJhZ2UgbW9ubyBxdWFsaXR5
IGlzIiwgJDEsICIlIn0nCisKK3N0ZXJlbzE9YGdyZXAgcXVhbGl0eSBsb2dzX3N0ZXJlby50eHQg
fCBhd2sgJ3tzdW0rPSQ0fUVORHtpZiAoTlIgPT0gMTIpIHN1bSAvPSAxMjsgZWxzZSBzdW0gPSAw
OyBwcmludCBzdW19J2AKK3N0ZXJlbzI9YGdyZXAgcXVhbGl0eSBsb2dzX3N0ZXJlbzIudHh0IHwg
YXdrICd7c3VtKz0kNH1FTkR7aWYgKE5SID09IDEyKSBzdW0gLz0gMTI7IGVsc2Ugc3VtID0gMDsg
cHJpbnQgc3VtfSdgCitlY2hvICRzdGVyZW8xICRzdGVyZW8yIHwgYXdrICd7aWYgKCQyID4gJDEp
ICQxID0gJDI7IHByaW50ICJBdmVyYWdlIHN0ZXJlbyBxdWFsaXR5IGlzIiwgJDEsICIlIn0nCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19hcGkuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2FwaS5jCmlu
ZGV4IDQ4OTA1MmQyMWZiMzBiYjhiMGZmOWMzM2NlZmZmMGYxYTUwMGZlZGEuLjFkMDA5NTA1OGY4
MGExMjEzYjAxNTU2MTk4NGMzYmNjN2NmOGU1NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVz
X2FwaS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2FwaS5jCkBAIC0xMzgzLDYgKzEzODMsMTUgQEAg
b3B1c19pbnQzMiB0ZXN0X2VuY19hcGkodm9pZCkKICAgIGVycj1vcHVzX2VuY29kZXJfY3RsKGVu
YyxPUFVTX1NFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT04oT1BVU19GUkFNRVNJWkVfNjBfTVMpKTsK
ICAgIGlmKGVyciE9T1BVU19PSyl0ZXN0X2ZhaWxlZCgpOwogICAgY2ZncysrOworICAgZXJyPW9w
dXNfZW5jb2Rlcl9jdGwoZW5jLE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTihPUFVTX0ZS
QU1FU0laRV84MF9NUykpOworICAgaWYoZXJyIT1PUFVTX09LKXRlc3RfZmFpbGVkKCk7CisgICBj
ZmdzKys7CisgICBlcnI9b3B1c19lbmNvZGVyX2N0bChlbmMsT1BVU19TRVRfRVhQRVJUX0ZSQU1F
X0RVUkFUSU9OKE9QVVNfRlJBTUVTSVpFXzEwMF9NUykpOworICAgaWYoZXJyIT1PUFVTX09LKXRl
c3RfZmFpbGVkKCk7CisgICBjZmdzKys7CisgICBlcnI9b3B1c19lbmNvZGVyX2N0bChlbmMsT1BV
U19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKE9QVVNfRlJBTUVTSVpFXzEyMF9NUykpOworICAg
aWYoZXJyIT1PUFVTX09LKXRlc3RfZmFpbGVkKCk7CisgICBjZmdzKys7CiAgICBDSEVDS19TRVRH
RVQoT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKGkpLE9QVVNfR0VUX0VYUEVSVF9GUkFN
RV9EVVJBVElPTigmaSksMCwtMSwKICAgICAgICAgIE9QVVNfRlJBTUVTSVpFXzYwX01TLE9QVVNf
RlJBTUVTSVpFX0FSRywKICAgICAgIiAgICBPUFVTX1NFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT04g
Li4uLi4uLi4uLi4uLi4uIE9LLlxuIiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2NvbW1v
bi5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy90ZXN0cy90ZXN0X29wdXNfY29tbW9uLmgKaW5kZXggNjZiOTY5MDAxODkzYzk4OGM4Y2Vk
ZTNhNWUyOWIwZjAzY2QwZDYyYi4uMjM1Y2YxYzEwMTY4OTExMGEwMDEzNWJiY2UyYzNhMmI1MWZk
YTBiNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy90ZXN0X29wdXNfY29tbW9uLmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy90ZXN0
X29wdXNfY29tbW9uLmgKQEAgLTY0LDYgKzY0LDggQEAgc3RhdGljIG9wdXNfdWludDMyIGlzZWVk
OwogCiAjaWZkZWYgX19HTlVDX18KIF9fYXR0cmlidXRlX18oKG5vcmV0dXJuKSkKKyNlbGlmIGRl
ZmluZWQoX01TQ19WRVIpCitfX2RlY2xzcGVjKG5vcmV0dXJuKQogI2VuZGlmCiBzdGF0aWMgT1BV
U19JTkxJTkUgdm9pZCBfdGVzdF9mYWlsZWQoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUpCiB7
CkBAIC03NiwzICs3OCw1IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIF90ZXN0X2ZhaWxlZChj
b25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSkKICAgYWJvcnQoKTsKIH0KICNkZWZpbmUgdGVzdF9m
YWlsZWQoKSBfdGVzdF9mYWlsZWQoX19GSUxFX18sIF9fTElORV9fKTsKKwordm9pZCByZWdyZXNz
aW9uX3Rlc3Qodm9pZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19kZWNvZGUuYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVz
dHMvdGVzdF9vcHVzX2RlY29kZS5jCmluZGV4IDljMGViOWM3Mjg1OGQ1YThmNGRjNGRhNmI5ZjMx
ZWIyY2FlYmM0MWUuLjUxOTdmYTFkZDJjZjEwYjVlNTAzN2QyYjIxNTNkNmVmNjY0NDc3YjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2RlY29kZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2Rl
Y29kZS5jCkBAIC0xMDQsNyArMTA0LDcgQEAgaW50IHRlc3RfZGVjb2Rlcl9jb2RlMChpbnQgbm9f
ZnV6eikKICAgICAgIGludCBmYWN0b3I9NDgwMDAvZnN2W3Q+PjFdOwogICAgICAgZm9yKGZlYz0w
O2ZlYzwyO2ZlYysrKQogICAgICAgewotICAgICAgICAgaW50IGR1cjsKKyAgICAgICAgIG9wdXNf
aW50MzIgZHVyOwogICAgICAgICAgLypUZXN0IFBMQyBvbiBhIGZyZXNoIGRlY29kZXIqLwogICAg
ICAgICAgb3V0X3NhbXBsZXMgPSBvcHVzX2RlY29kZShkZWNbdF0sIDAsIDAsIG91dGJ1ZiwgMTIw
L2ZhY3RvciwgZmVjKTsKICAgICAgICAgIGlmKG91dF9zYW1wbGVzIT0xMjAvZmFjdG9yKXRlc3Rf
ZmFpbGVkKCk7CkBAIC0xMzUsNyArMTM1LDE0IEBAIGludCB0ZXN0X2RlY29kZXJfY29kZTAoaW50
IG5vX2Z1enopCiAgICAgICAgICBvdXRidWZbMF09MzI3NDk7CiAgICAgICAgICBvdXRfc2FtcGxl
cyA9IG9wdXNfZGVjb2RlKGRlY1t0XSwgcGFja2V0LCAwLCBvdXRidWYsIDAsIGZlYyk7CiAgICAg
ICAgICBpZihvdXRfc2FtcGxlcz4wKXRlc3RfZmFpbGVkKCk7CisjaWYgIWRlZmluZWQoT1BVU19C
VUlMRCkgJiYgKE9QVVNfR05VQ19QUkVSRVEoNCwgNikgfHwgKGRlZmluZWQoX19jbGFuZ19tYWpv
cl9fKSAmJiBfX2NsYW5nX21ham9yX18gPj0gMykpCisjcHJhZ21hIEdDQyBkaWFnbm9zdGljIHB1
c2gKKyNwcmFnbWEgR0NDIGRpYWdub3N0aWMgaWdub3JlZCAiLVdub25udWxsIgorI2VuZGlmCiAg
ICAgICAgICBvdXRfc2FtcGxlcyA9IG9wdXNfZGVjb2RlKGRlY1t0XSwgcGFja2V0LCAwLCAwLCAw
LCBmZWMpOworI2lmICFkZWZpbmVkKE9QVVNfQlVJTEQpICYmIChPUFVTX0dOVUNfUFJFUkVRKDQs
IDYpIHx8IChkZWZpbmVkKF9fY2xhbmdfbWFqb3JfXykgJiYgX19jbGFuZ19tYWpvcl9fID49IDMp
KQorI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBwb3AKKyNlbmRpZgogICAgICAgICAgaWYob3V0X3Nh
bXBsZXM+MCl0ZXN0X2ZhaWxlZCgpOwogICAgICAgICAgaWYob3V0YnVmWzBdIT0zMjc0OSl0ZXN0
X2ZhaWxlZCgpOwogCkBAIC0xNjAsNyArMTY3LDcgQEAgaW50IHRlc3RfZGVjb2Rlcl9jb2RlMChp
bnQgbm9fZnV6eikKICAgIC8qQ291bnQgY29kZSAwIHRlc3RzKi8KICAgIGZvcihpPTA7aTw2NDtp
KyspCiAgICB7Ci0gICAgICBpbnQgZHVyOworICAgICAgb3B1c19pbnQzMiBkdXI7CiAgICAgICBp
bnQgaixleHBlY3RlZFs1KjJdOwogICAgICAgcGFja2V0WzBdPWk8PDI7CiAgICAgICBwYWNrZXRb
MV09MjU1OwpAQCAtMzE0LDcgKzMyMSw3IEBAIGludCB0ZXN0X2RlY29kZXJfY29kZTAoaW50IG5v
X2Z1enopCiAgICAgICBpZihvcHVzX2RlY29kZShkZWNiYWssICAwLCAwLCBvdXRidWYsIE1BWF9G
UkFNRV9TQU1QLCAwKTwyMCl0ZXN0X2ZhaWxlZCgpOwogICAgICAgZm9yKHQ9MDt0PDUqMjt0Kysp
CiAgICAgICB7Ci0gICAgICAgICBpbnQgZHVyOworICAgICAgICAgb3B1c19pbnQzMiBkdXI7CiAg
ICAgICAgICBvdXRfc2FtcGxlcyA9IG9wdXNfZGVjb2RlKGRlY1t0XSwgcGFja2V0LCBwbGVuKzEs
IG91dGJ1ZiwgTUFYX0ZSQU1FX1NBTVAsIDApOwogICAgICAgICAgaWYob3V0X3NhbXBsZXMhPWV4
cGVjdGVkW3RdKXRlc3RfZmFpbGVkKCk7CiAgICAgICAgICBpZih0PT0wKWRlY19maW5hbF9yYW5n
ZTI9ZGVjX2ZpbmFsX3JhbmdlMTsKQEAgLTM4NCwyNiArMzkxLDI2IEBAIHZvaWQgdGVzdF9zb2Z0
X2NsaXAodm9pZCkKICAgIHsKICAgICAgIGZvciAoaj0wO2o8MTAyNDtqKyspCiAgICAgICB7Ci0g
ICAgICAgIHhbal09KGkmMjU1KSooMS8zMi5mKS00LmY7CisgICAgICAgIHhbal09KGomMjU1KSoo
MS8zMi5mKS00LmY7CiAgICAgICB9CiAgICAgICBvcHVzX3BjbV9zb2Z0X2NsaXAoJnhbaV0sMTAy
NC1pLDEscyk7CiAgICAgICBmb3IgKGo9aTtqPDEwMjQ7aisrKQogICAgICAgewotICAgICAgICBp
Zih4W2ldPjEuZil0ZXN0X2ZhaWxlZCgpOwotICAgICAgICBpZih4W2ldPC0xLmYpdGVzdF9mYWls
ZWQoKTsKKyAgICAgICAgaWYoeFtqXT4xLmYpdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgaWYoeFtq
XTwtMS5mKXRlc3RfZmFpbGVkKCk7CiAgICAgICB9CiAgICB9CiAgICBmb3IoaT0xO2k8OTtpKysp
CiAgICB7CiAgICAgICBmb3IgKGo9MDtqPDEwMjQ7aisrKQogICAgICAgewotICAgICAgICB4W2pd
PShpJjI1NSkqKDEvMzIuZiktNC5mOworICAgICAgICB4W2pdPShqJjI1NSkqKDEvMzIuZiktNC5m
OwogICAgICAgfQogICAgICAgb3B1c19wY21fc29mdF9jbGlwKHgsMTAyNC9pLGkscyk7CiAgICAg
ICBmb3IgKGo9MDtqPCgxMDI0L2kpKmk7aisrKQogICAgICAgewotICAgICAgICBpZih4W2ldPjEu
Zil0ZXN0X2ZhaWxlZCgpOwotICAgICAgICBpZih4W2ldPC0xLmYpdGVzdF9mYWlsZWQoKTsKKyAg
ICAgICAgaWYoeFtqXT4xLmYpdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgaWYoeFtqXTwtMS5mKXRl
c3RfZmFpbGVkKCk7CiAgICAgICB9CiAgICB9CiAgICBvcHVzX3BjbV9zb2Z0X2NsaXAoeCwwLDEs
cyk7CkBAIC00MzYsNyArNDQzLDcgQEAgaW50IG1haW4oaW50IF9hcmdjLCBjaGFyICoqX2FyZ3Yp
CiAgICAgICBpc2VlZD1hdG9pKGVudl9zZWVkKTsKICAgICAgIGVudl91c2VkPTE7CiAgICB9Ci0g
ICBlbHNlIGlzZWVkPShvcHVzX3VpbnQzMil0aW1lKE5VTEwpXigoZ2V0cGlkKCkmNjU1MzUpPDwx
Nik7CisgICBlbHNlIGlzZWVkPShvcHVzX3VpbnQzMil0aW1lKE5VTEwpXigoKG9wdXNfdWludDMy
KWdldHBpZCgpJjY1NTM1KTw8MTYpOwogICAgUnc9Uno9aXNlZWQ7CiAKICAgIG92ZXJzaW9uPW9w
dXNfZ2V0X3ZlcnNpb25fc3RyaW5nKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19lbmNv
ZGUuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2VuY29kZS5jCmluZGV4IDEzMmQwNzRkMzAyNTQ1NmY5ZDIy
OTdlNzk4OGU4NWFjNTE2MTBiODUuLmRhZTQ5YzNkNTM1MWJkNTU2YzAzZDc0ZWQ4YWU2OWMyMTk1
MjA2MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2VuY29kZS5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVz
dF9vcHVzX2VuY29kZS5jCkBAIC01MSw4ICs1MSw4IEBACiAjZGVmaW5lIFNBTVBMRVMgKDQ4MDAw
KjMwKQogI2RlZmluZSBTU0FNUExFUyAoU0FNUExFUy8zKQogI2RlZmluZSBNQVhfRlJBTUVfU0FN
UCAoNTc2MCkKLQogI2RlZmluZSBQSSAoMy4xNDE1OTI2NTM1ODk3OTMyMzg0NjI2NDNmKQorI2Rl
ZmluZSBSQU5EX1NBTVBMRShhKSAoYVtmYXN0X3JhbmQoKSAlIHNpemVvZihhKS9zaXplb2YoYVsw
XSldKQogCiB2b2lkIGdlbmVyYXRlX211c2ljKHNob3J0ICpidWYsIG9wdXNfaW50MzIgbGVuKQog
ewpAQCAtMTEyLDE0ICsxMTIsMTY5IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNhdmVfcGFj
a2V0KHVuc2lnbmVkIGNoYXIqIHAsIGludCBsZW4sIG9wdXNfdWludDMyIHJuZykKIH0KICNlbmRp
ZgogCitpbnQgZ2V0X2ZyYW1lX3NpemVfZW51bShpbnQgZnJhbWVfc2l6ZSwgaW50IHNhbXBsaW5n
X3JhdGUpCit7CisgICBpbnQgZnJhbWVfc2l6ZV9lbnVtOworCisgICBpZihmcmFtZV9zaXplPT1z
YW1wbGluZ19yYXRlLzQwMCkKKyAgICAgIGZyYW1lX3NpemVfZW51bSA9IE9QVVNfRlJBTUVTSVpF
XzJfNV9NUzsKKyAgIGVsc2UgaWYoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS8yMDApCisgICAg
ICBmcmFtZV9zaXplX2VudW0gPSBPUFVTX0ZSQU1FU0laRV81X01TOworICAgZWxzZSBpZihmcmFt
ZV9zaXplPT1zYW1wbGluZ19yYXRlLzEwMCkKKyAgICAgIGZyYW1lX3NpemVfZW51bSA9IE9QVVNf
RlJBTUVTSVpFXzEwX01TOworICAgZWxzZSBpZihmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzUw
KQorICAgICAgZnJhbWVfc2l6ZV9lbnVtID0gT1BVU19GUkFNRVNJWkVfMjBfTVM7CisgICBlbHNl
IGlmKGZyYW1lX3NpemU9PXNhbXBsaW5nX3JhdGUvMjUpCisgICAgICBmcmFtZV9zaXplX2VudW0g
PSBPUFVTX0ZSQU1FU0laRV80MF9NUzsKKyAgIGVsc2UgaWYoZnJhbWVfc2l6ZT09MypzYW1wbGlu
Z19yYXRlLzUwKQorICAgICAgZnJhbWVfc2l6ZV9lbnVtID0gT1BVU19GUkFNRVNJWkVfNjBfTVM7
CisgICBlbHNlIGlmKGZyYW1lX3NpemU9PTQqc2FtcGxpbmdfcmF0ZS81MCkKKyAgICAgIGZyYW1l
X3NpemVfZW51bSA9IE9QVVNfRlJBTUVTSVpFXzgwX01TOworICAgZWxzZSBpZihmcmFtZV9zaXpl
PT01KnNhbXBsaW5nX3JhdGUvNTApCisgICAgICBmcmFtZV9zaXplX2VudW0gPSBPUFVTX0ZSQU1F
U0laRV8xMDBfTVM7CisgICBlbHNlIGlmKGZyYW1lX3NpemU9PTYqc2FtcGxpbmdfcmF0ZS81MCkK
KyAgICAgIGZyYW1lX3NpemVfZW51bSA9IE9QVVNfRlJBTUVTSVpFXzEyMF9NUzsKKyAgIGVsc2UK
KyAgICAgIHRlc3RfZmFpbGVkKCk7CisKKyAgIHJldHVybiBmcmFtZV9zaXplX2VudW07Cit9CisK
K3ZvaWQgdGVzdF9lbmNvZGUoT3B1c0VuY29kZXIgKmVuYywgaW50IGNoYW5uZWxzLCBpbnQgZnJh
bWVfc2l6ZSwgT3B1c0RlY29kZXIgKmRlYywgY29uc3QgY2hhciogZGVidWdfaW5mbykKK3sKKyAg
IGludCBzYW1wX2NvdW50ID0gMDsKKyAgIG9wdXNfaW50MTYgKmluYnVmOworICAgdW5zaWduZWQg
Y2hhciBwYWNrZXRbTUFYX1BBQ0tFVCsyNTddOworICAgaW50IGxlbjsKKyAgIG9wdXNfaW50MTYg
Km91dGJ1ZjsKKyAgIGludCBvdXRfc2FtcGxlczsKKworICAgLyogR2VuZXJhdGUgaW5wdXQgZGF0
YSAqLworICAgaW5idWYgPSAob3B1c19pbnQxNiopbWFsbG9jKHNpemVvZigqaW5idWYpKlNTQU1Q
TEVTKTsKKyAgIGdlbmVyYXRlX211c2ljKGluYnVmLCBTU0FNUExFUy8yKTsKKworICAgLyogQWxs
b2NhdGUgbWVtb3J5IGZvciBvdXRwdXQgZGF0YSAqLworICAgb3V0YnVmID0gKG9wdXNfaW50MTYq
KW1hbGxvYyhzaXplb2YoKm91dGJ1ZikqTUFYX0ZSQU1FX1NBTVAqMyk7CisKKyAgIC8qIEVuY29k
ZSBkYXRhLCB0aGVuIGRlY29kZSBmb3Igc2FuaXR5IGNoZWNrICovCisgICBkbyB7CisgICAgICBs
ZW4gPSBvcHVzX2VuY29kZShlbmMsICZpbmJ1ZltzYW1wX2NvdW50KmNoYW5uZWxzXSwgZnJhbWVf
c2l6ZSwgcGFja2V0LCBNQVhfUEFDS0VUKTsKKyAgICAgIGlmKGxlbjwwIHx8IGxlbj5NQVhfUEFD
S0VUKSB7CisgICAgICAgICBmcHJpbnRmKHN0ZGVyciwiJXNcbiIsZGVidWdfaW5mbyk7CisgICAg
ICAgICBmcHJpbnRmKHN0ZGVyciwib3B1c19lbmNvZGUoKSByZXR1cm5lZCAlZFxuIixsZW4pOwor
ICAgICAgICAgdGVzdF9mYWlsZWQoKTsKKyAgICAgIH0KKworICAgICAgb3V0X3NhbXBsZXMgPSBv
cHVzX2RlY29kZShkZWMsIHBhY2tldCwgbGVuLCBvdXRidWYsIE1BWF9GUkFNRV9TQU1QLCAwKTsK
KyAgICAgIGlmKG91dF9zYW1wbGVzIT1mcmFtZV9zaXplKSB7CisgICAgICAgICBmcHJpbnRmKHN0
ZGVyciwiJXNcbiIsZGVidWdfaW5mbyk7CisgICAgICAgICBmcHJpbnRmKHN0ZGVyciwib3B1c19k
ZWNvZGUoKSByZXR1cm5lZCAlZFxuIixvdXRfc2FtcGxlcyk7CisgICAgICAgICB0ZXN0X2ZhaWxl
ZCgpOworICAgICAgfQorCisgICAgICBzYW1wX2NvdW50ICs9IGZyYW1lX3NpemU7CisgICB9IHdo
aWxlIChzYW1wX2NvdW50IDwgKChTU0FNUExFUy8yKS1NQVhfRlJBTUVfU0FNUCkpOworCisgICAv
KiBDbGVhbiB1cCAqLworICAgZnJlZShpbmJ1Zik7CisgICBmcmVlKG91dGJ1Zik7Cit9CisKK3Zv
aWQgZnV6el9lbmNvZGVyX3NldHRpbmdzKGNvbnN0IGludCBudW1fZW5jb2RlcnMsIGNvbnN0IGlu
dCBudW1fc2V0dGluZ19jaGFuZ2VzKQoreworICAgT3B1c0VuY29kZXIgKmVuYzsKKyAgIE9wdXNE
ZWNvZGVyICpkZWM7CisgICBpbnQgaSxqLGVycjsKKworICAgLyogUGFyYW1ldGVycyB0byBmdXp6
LiBTb21lIHZhbHVlcyBhcmUgZHVwbGljYXRlZCB0byBpbmNyZWFzZSB0aGVpciBwcm9iYWJpbGl0
eSBvZiBiZWluZyB0ZXN0ZWQuICovCisgICBpbnQgc2FtcGxpbmdfcmF0ZXNbNV0gPSB7ODAwMCwg
MTIwMDAsIDE2MDAwLCAyNDAwMCwgNDgwMDB9OworICAgaW50IGNoYW5uZWxzWzJdID0gezEsIDJ9
OworICAgaW50IGFwcGxpY2F0aW9uc1szXSA9IHtPUFVTX0FQUExJQ0FUSU9OX0FVRElPLCBPUFVT
X0FQUExJQ0FUSU9OX1ZPSVAsIE9QVVNfQVBQTElDQVRJT05fUkVTVFJJQ1RFRF9MT1dERUxBWX07
CisgICBpbnQgYml0cmF0ZXNbMTFdID0gezYwMDAsIDEyMDAwLCAxNjAwMCwgMjQwMDAsIDMyMDAw
LCA0ODAwMCwgNjQwMDAsIDk2MDAwLCA1MTAwMDAsIE9QVVNfQVVUTywgT1BVU19CSVRSQVRFX01B
WH07CisgICBpbnQgZm9yY2VfY2hhbm5lbHNbNF0gPSB7T1BVU19BVVRPLCBPUFVTX0FVVE8sIDEs
IDJ9OworICAgaW50IHVzZV92YnJbM10gPSB7MCwgMSwgMX07CisgICBpbnQgdmJyX2NvbnN0cmFp
bnRzWzNdID0gezAsIDEsIDF9OworICAgaW50IGNvbXBsZXhpdGllc1sxMV0gPSB7MCwgMSwgMiwg
MywgNCwgNSwgNiwgNywgOCwgOSwgMTB9OworICAgaW50IG1heF9iYW5kd2lkdGhzWzZdID0ge09Q
VVNfQkFORFdJRFRIX05BUlJPV0JBTkQsIE9QVVNfQkFORFdJRFRIX01FRElVTUJBTkQsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgT1BVU19CQU5EV0lEVEhfV0lERUJBTkQsIE9QVVNfQkFO
RFdJRFRIX1NVUEVSV0lERUJBTkQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgT1BVU19C
QU5EV0lEVEhfRlVMTEJBTkQsIE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EfTsKKyAgIGludCBzaWdu
YWxzWzRdID0ge09QVVNfQVVUTywgT1BVU19BVVRPLCBPUFVTX1NJR05BTF9WT0lDRSwgT1BVU19T
SUdOQUxfTVVTSUN9OworICAgaW50IGluYmFuZF9mZWNzWzNdID0gezAsIDAsIDF9OworICAgaW50
IHBhY2tldF9sb3NzX3BlcmNbNF0gPSB7MCwgMSwgMiwgNX07CisgICBpbnQgbHNiX2RlcHRoc1sy
XSA9IHs4LCAyNH07CisgICBpbnQgcHJlZGljdGlvbl9kaXNhYmxlZFszXSA9IHswLCAwLCAxfTsK
KyAgIGludCB1c2VfZHR4WzJdID0gezAsIDF9OworICAgaW50IGZyYW1lX3NpemVzX21zX3gyWzld
ID0gezUsIDEwLCAyMCwgNDAsIDgwLCAxMjAsIDE2MCwgMjAwLCAyNDB9OyAgLyogeDIgdG8gYXZv
aWQgMi41IG1zICovCisgICBjaGFyIGRlYnVnX2luZm9bNTEyXTsKKworICAgZm9yIChpPTA7IGk8
bnVtX2VuY29kZXJzOyBpKyspIHsKKyAgICAgIGludCBzYW1wbGluZ19yYXRlID0gUkFORF9TQU1Q
TEUoc2FtcGxpbmdfcmF0ZXMpOworICAgICAgaW50IG51bV9jaGFubmVscyA9IFJBTkRfU0FNUExF
KGNoYW5uZWxzKTsKKyAgICAgIGludCBhcHBsaWNhdGlvbiA9IFJBTkRfU0FNUExFKGFwcGxpY2F0
aW9ucyk7CisKKyAgICAgIGRlYyA9IG9wdXNfZGVjb2Rlcl9jcmVhdGUoc2FtcGxpbmdfcmF0ZSwg
bnVtX2NoYW5uZWxzLCAmZXJyKTsKKyAgICAgIGlmKGVyciE9T1BVU19PSyB8fCBkZWM9PU5VTEwp
dGVzdF9mYWlsZWQoKTsKKworICAgICAgZW5jID0gb3B1c19lbmNvZGVyX2NyZWF0ZShzYW1wbGlu
Z19yYXRlLCBudW1fY2hhbm5lbHMsIGFwcGxpY2F0aW9uLCAmZXJyKTsKKyAgICAgIGlmKGVyciE9
T1BVU19PSyB8fCBlbmM9PU5VTEwpdGVzdF9mYWlsZWQoKTsKKworICAgICAgZm9yIChqPTA7IGo8
bnVtX3NldHRpbmdfY2hhbmdlczsgaisrKSB7CisgICAgICAgICBpbnQgYml0cmF0ZSA9IFJBTkRf
U0FNUExFKGJpdHJhdGVzKTsKKyAgICAgICAgIGludCBmb3JjZV9jaGFubmVsID0gUkFORF9TQU1Q
TEUoZm9yY2VfY2hhbm5lbHMpOworICAgICAgICAgaW50IHZiciA9IFJBTkRfU0FNUExFKHVzZV92
YnIpOworICAgICAgICAgaW50IHZicl9jb25zdHJhaW50ID0gUkFORF9TQU1QTEUodmJyX2NvbnN0
cmFpbnRzKTsKKyAgICAgICAgIGludCBjb21wbGV4aXR5ID0gUkFORF9TQU1QTEUoY29tcGxleGl0
aWVzKTsKKyAgICAgICAgIGludCBtYXhfYncgPSBSQU5EX1NBTVBMRShtYXhfYmFuZHdpZHRocyk7
CisgICAgICAgICBpbnQgc2lnID0gUkFORF9TQU1QTEUoc2lnbmFscyk7CisgICAgICAgICBpbnQg
aW5iYW5kX2ZlYyA9IFJBTkRfU0FNUExFKGluYmFuZF9mZWNzKTsKKyAgICAgICAgIGludCBwa3Rf
bG9zcyA9IFJBTkRfU0FNUExFKHBhY2tldF9sb3NzX3BlcmMpOworICAgICAgICAgaW50IGxzYl9k
ZXB0aCA9IFJBTkRfU0FNUExFKGxzYl9kZXB0aHMpOworICAgICAgICAgaW50IHByZWRfZGlzYWJs
ZWQgPSBSQU5EX1NBTVBMRShwcmVkaWN0aW9uX2Rpc2FibGVkKTsKKyAgICAgICAgIGludCBkdHgg
PSBSQU5EX1NBTVBMRSh1c2VfZHR4KTsKKyAgICAgICAgIGludCBmcmFtZV9zaXplX21zX3gyID0g
UkFORF9TQU1QTEUoZnJhbWVfc2l6ZXNfbXNfeDIpOworICAgICAgICAgaW50IGZyYW1lX3NpemUg
PSBmcmFtZV9zaXplX21zX3gyKnNhbXBsaW5nX3JhdGUvMjAwMDsKKyAgICAgICAgIGludCBmcmFt
ZV9zaXplX2VudW0gPSBnZXRfZnJhbWVfc2l6ZV9lbnVtKGZyYW1lX3NpemUsIHNhbXBsaW5nX3Jh
dGUpOworICAgICAgICAgZm9yY2VfY2hhbm5lbCA9IElNSU4oZm9yY2VfY2hhbm5lbCwgbnVtX2No
YW5uZWxzKTsKKworICAgICAgICAgc3ByaW50ZihkZWJ1Z19pbmZvLAorICAgICAgICAgICAgICAg
ICAiZnV6el9lbmNvZGVyX3NldHRpbmdzOiAlZCBrSHosICVkIGNoLCBhcHBsaWNhdGlvbjogJWQs
ICIKKyAgICAgICAgICAgICAgICAgIiVkIGJwcywgZm9yY2UgY2g6ICVkLCB2YnI6ICVkLCB2YnIg
Y29uc3RyYWludDogJWQsIGNvbXBsZXhpdHk6ICVkLCAiCisgICAgICAgICAgICAgICAgICJtYXgg
Ync6ICVkLCBzaWduYWw6ICVkLCBpbmJhbmQgZmVjOiAlZCwgcGt0IGxvc3M6ICVkJSUsIGxzYiBk
ZXB0aDogJWQsICIKKyAgICAgICAgICAgICAgICAgInByZWQgZGlzYWJsZWQ6ICVkLCBkdHg6ICVk
LCAoJWQvMikgbXNcbiIsCisgICAgICAgICAgICAgICAgIHNhbXBsaW5nX3JhdGUvMTAwMCwgbnVt
X2NoYW5uZWxzLCBhcHBsaWNhdGlvbiwgYml0cmF0ZSwKKyAgICAgICAgICAgICAgICAgZm9yY2Vf
Y2hhbm5lbCwgdmJyLCB2YnJfY29uc3RyYWludCwgY29tcGxleGl0eSwgbWF4X2J3LCBzaWcsIGlu
YmFuZF9mZWMsCisgICAgICAgICAgICAgICAgIHBrdF9sb3NzLCBsc2JfZGVwdGgsIHByZWRfZGlz
YWJsZWQsIGR0eCwgZnJhbWVfc2l6ZV9tc194Mik7CisKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKGJpdHJhdGUpKSAhPSBPUFVTX09LKSB0ZXN0X2Zh
aWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0ZPUkNF
X0NIQU5ORUxTKGZvcmNlX2NoYW5uZWwpKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworICAg
ICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUih2YnIpKSAhPSBPUFVT
X09LKSB0ZXN0X2ZhaWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX1ZCUl9DT05TVFJBSU5UKHZicl9jb25zdHJhaW50KSkgIT0gT1BVU19PSykgdGVzdF9m
YWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01Q
TEVYSVRZKGNvbXBsZXhpdHkpKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworICAgICAgICAg
aWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9CQU5EV0lEVEgobWF4X2J3KSkg
IT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9TSUdOQUwoc2lnKSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAg
ICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9JTkJBTkRfRkVDKGluYmFu
ZF9mZWMpKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BBQ0tFVF9MT1NTX1BFUkMocGt0X2xvc3MpKSAhPSBPUFVT
X09LKSB0ZXN0X2ZhaWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX0xTQl9ERVBUSChsc2JfZGVwdGgpKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOwor
ICAgICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElT
QUJMRUQocHJlZF9kaXNhYmxlZCkpICE9IE9QVVNfT0spIHRlc3RfZmFpbGVkKCk7CisgICAgICAg
ICBpZihvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRFRYKGR0eCkpICE9IE9QVVNfT0sp
IHRlc3RfZmFpbGVkKCk7CisgICAgICAgICBpZihvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19T
RVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKGZyYW1lX3NpemVfZW51bSkpICE9IE9QVVNfT0spIHRl
c3RfZmFpbGVkKCk7CisKKyAgICAgICAgIHRlc3RfZW5jb2RlKGVuYywgbnVtX2NoYW5uZWxzLCBm
cmFtZV9zaXplLCBkZWMsIGRlYnVnX2luZm8pOworICAgICAgfQorCisgICAgICBvcHVzX2VuY29k
ZXJfZGVzdHJveShlbmMpOworICAgICAgb3B1c19kZWNvZGVyX2Rlc3Ryb3koZGVjKTsKKyAgIH0K
K30KKwogaW50IHJ1bl90ZXN0MShpbnQgbm9fZnV6eikKIHsKICAgIHN0YXRpYyBjb25zdCBpbnQg
ZnNpemVzWzZdPXs5NjAqMyw5NjAqMiwxMjAsMjQwLDQ4MCw5NjB9OwogICAgc3RhdGljIGNvbnN0
IGNoYXIgKm1zdHJpbmdzWzNdID0geyIgICAgTFAiLCJIeWJyaWQiLCIgIE1EQ1QifTsKICAgIHVu
c2lnbmVkIGNoYXIgbWFwcGluZ1syNTZdID0gezAsMSwyNTV9OwogICAgdW5zaWduZWQgY2hhciBk
YjYyWzM2XTsKLSAgIG9wdXNfaW50MzIgaTsKLSAgIGludCByYyxqLGVycjsKKyAgIG9wdXNfaW50
MzIgaSxqOworICAgaW50IHJjLGVycjsKICAgIE9wdXNFbmNvZGVyICplbmM7CiAgICBPcHVzTVNF
bmNvZGVyICpNU2VuYzsKICAgIE9wdXNEZWNvZGVyICpkZWM7CkBAIC0yMjksNiArMzg0LDcgQEAg
aW50IHJ1bl90ZXN0MShpbnQgbm9fZnV6eikKIAogICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMs
IE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0FVVE8pKSE9T1BVU19PSyl0ZXN0X2ZhaWxlZCgpOwog
ICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0ZPUkNFX01PREUoLTIpKSE9T1BV
U19CQURfQVJHKXRlc3RfZmFpbGVkKCk7CisgICBpZihvcHVzX2VuY29kZShlbmMsIGluYnVmLCA1
MDAsIHBhY2tldCwgTUFYX1BBQ0tFVCkhPU9QVVNfQkFEX0FSRyl0ZXN0X2ZhaWxlZCgpOwogCiAg
ICBmb3IocmM9MDtyYzwzO3JjKyspCiAgICB7CkBAIC0zMzUsNyArNDkxLDggQEAgaW50IHJ1bl90
ZXN0MShpbnQgbm9fZnV6eikKICAgICAgICAgIGlmKG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoTVNlbmMsIE9QVVNfU0VUX0JJVFJBVEUocmF0ZSkpIT1PUFVTX09LKXRlc3RfZmFpbGVkKCk7
CiAgICAgICAgICBjb3VudD1pPTA7CiAgICAgICAgICBkbyB7Ci0gICAgICAgICAgICBpbnQgcHJl
ZCxsZW4sb3V0X3NhbXBsZXMsZnJhbWVfc2l6ZSxsb3NzOworICAgICAgICAgICAgaW50IGxlbixv
dXRfc2FtcGxlcyxmcmFtZV9zaXplLGxvc3M7CisgICAgICAgICAgICBvcHVzX2ludDMyIHByZWQ7
CiAgICAgICAgICAgICBpZihvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKE1TZW5jLCBPUFVT
X0dFVF9QUkVESUNUSU9OX0RJU0FCTEVEKCZwcmVkKSkhPU9QVVNfT0spdGVzdF9mYWlsZWQoKTsK
ICAgICAgICAgICAgIGlmKG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoTVNlbmMsIE9QVVNf
U0VUX1BSRURJQ1RJT05fRElTQUJMRUQoKGludCkoZmFzdF9yYW5kKCkmMTUpPChwcmVkPzExOjQp
KSkhPU9QVVNfT0spdGVzdF9mYWlsZWQoKTsKICAgICAgICAgICAgIGZyYW1lX3NpemU9ZnJhbWVb
al07CkBAIC00MjUsNyArNTgyLDcgQEAgaW50IHJ1bl90ZXN0MShpbnQgbm9fZnV6eikKICAgICAg
ICAgIHRoZSBkZWNvZGVycyBpbiBvcmRlciB0byBjb21wYXJlIHRoZW0uICovCiAgICAgICBpZihv
cHVzX3BhY2tldF9wYXJzZShwYWNrZXQsbGVuLCZ0b2MsZnJhbWVzLHNpemUsJnBheWxvYWRfb2Zm
c2V0KTw9MCl0ZXN0X2ZhaWxlZCgpOwogICAgICAgaWYoKGZhc3RfcmFuZCgpJjEwMjMpPT0wKWxl
bj0wOwotICAgICAgZm9yKGo9KGZyYW1lc1swXS1wYWNrZXQpO2o8bGVuO2orKylmb3Ioamo9MDtq
ajw4O2pqKyspcGFja2V0W2pdXj0oKCFub19mdXp6KSYmKChmYXN0X3JhbmQoKSYxMDIzKT09MCkp
PDxqajsKKyAgICAgIGZvcihqPShvcHVzX2ludDMyKShmcmFtZXNbMF0tcGFja2V0KTtqPGxlbjtq
KyspZm9yKGpqPTA7amo8ODtqaisrKXBhY2tldFtqXV49KCghbm9fZnV6eikmJigoZmFzdF9yYW5k
KCkmMTAyMyk9PTApKTw8amo7CiAgICAgICBvdXRfc2FtcGxlcyA9IG9wdXNfZGVjb2RlKGRlY19l
cnJbMF0sIGxlbj4wP3BhY2tldDpOVUxMLCBsZW4sIG91dDJidWYsIE1BWF9GUkFNRV9TQU1QLCAw
KTsKICAgICAgIGlmKG91dF9zYW1wbGVzPDB8fG91dF9zYW1wbGVzPk1BWF9GUkFNRV9TQU1QKXRl
c3RfZmFpbGVkKCk7CiAgICAgICBpZigobGVuPjAmJm91dF9zYW1wbGVzIT1mcmFtZV9zaXplKSl0
ZXN0X2ZhaWxlZCgpOyAvKkZJWE1FIHVzZSBsYXN0ZnJhbWUqLwpAQCAtNDcwLDM5ICs2MjcsNzQg
QEAgaW50IHJ1bl90ZXN0MShpbnQgbm9fZnV6eikKICAgIHJldHVybiAwOwogfQogCit2b2lkIHBy
aW50X3VzYWdlKGNoYXIqIF9hcmd2W10pCit7CisgICBmcHJpbnRmKHN0ZGVyciwiVXNhZ2U6ICVz
IFs8c2VlZD5dIFstZnV6eiA8bnVtX2VuY29kZXJzPiA8bnVtX3NldHRpbmdzX3Blcl9lbmNvZGVy
Pl1cbiIsX2FyZ3ZbMF0pOworfQorCiBpbnQgbWFpbihpbnQgX2FyZ2MsIGNoYXIgKipfYXJndikK
IHsKKyAgIGludCBhcmdzPTE7CisgICBjaGFyICogc3RydG9sX3N0cj1OVUxMOwogICAgY29uc3Qg
Y2hhciAqIG92ZXJzaW9uOwogICAgY29uc3QgY2hhciAqIGVudl9zZWVkOwogICAgaW50IGVudl91
c2VkOwotCi0gICBpZihfYXJnYz4yKQotICAgewotICAgICAgZnByaW50ZihzdGRlcnIsIlVzYWdl
OiAlcyBbPHNlZWQ+XVxuIixfYXJndlswXSk7Ci0gICAgICByZXR1cm4gMTsKLSAgIH0KKyAgIGlu
dCBudW1fZW5jb2RlcnNfdG9fZnV6ej01OworICAgaW50IG51bV9zZXR0aW5nX2NoYW5nZXM9NDA7
CiAKICAgIGVudl91c2VkPTA7CiAgICBlbnZfc2VlZD1nZXRlbnYoIlNFRUQiKTsKLSAgIGlmKF9h
cmdjPjEpaXNlZWQ9YXRvaShfYXJndlsxXSk7Ci0gICBlbHNlIGlmKGVudl9zZWVkKQotICAgewor
ICAgaWYoX2FyZ2M+MSkKKyAgICAgIGlzZWVkPXN0cnRvbChfYXJndlsxXSwgJnN0cnRvbF9zdHIs
IDEwKTsgIC8qIHRoZSBmaXJzdCBpbnB1dCBhcmd1bWVudCBtaWdodCBiZSB0aGUgc2VlZCAqLwor
ICAgaWYoc3RydG9sX3N0ciE9TlVMTCAmJiBzdHJ0b2xfc3RyWzBdPT0nXDAnKSAgIC8qIGlzZWVk
IGlzIGEgdmFsaWQgbnVtYmVyICovCisgICAgICBhcmdzKys7CisgICBlbHNlIGlmKGVudl9zZWVk
KSB7CiAgICAgICBpc2VlZD1hdG9pKGVudl9zZWVkKTsKICAgICAgIGVudl91c2VkPTE7CiAgICB9
Ci0gICBlbHNlIGlzZWVkPShvcHVzX3VpbnQzMil0aW1lKE5VTEwpXigoZ2V0cGlkKCkmNjU1MzUp
PDwxNik7CisgICBlbHNlIGlzZWVkPShvcHVzX3VpbnQzMil0aW1lKE5VTEwpXigoKG9wdXNfdWlu
dDMyKWdldHBpZCgpJjY1NTM1KTw8MTYpOwogICAgUnc9Uno9aXNlZWQ7CiAKKyAgIHdoaWxlKGFy
Z3M8X2FyZ2MpCisgICB7CisgICAgICBpZihzdHJjbXAoX2FyZ3ZbYXJnc10sICItZnV6eiIpPT0w
ICYmIF9hcmdjPT0oYXJncyszKSkgeworICAgICAgICAgbnVtX2VuY29kZXJzX3RvX2Z1eno9c3Ry
dG9sKF9hcmd2W2FyZ3MrMV0sICZzdHJ0b2xfc3RyLCAxMCk7CisgICAgICAgICBpZihzdHJ0b2xf
c3RyWzBdIT0nXDAnIHx8IG51bV9lbmNvZGVyc190b19mdXp6PD0wKSB7CisgICAgICAgICAgICBw
cmludF91c2FnZShfYXJndik7CisgICAgICAgICAgICByZXR1cm4gRVhJVF9GQUlMVVJFOworICAg
ICAgICAgfQorICAgICAgICAgbnVtX3NldHRpbmdfY2hhbmdlcz1zdHJ0b2woX2FyZ3ZbYXJncysy
XSwgJnN0cnRvbF9zdHIsIDEwKTsKKyAgICAgICAgIGlmKHN0cnRvbF9zdHJbMF0hPSdcMCcgfHwg
bnVtX3NldHRpbmdfY2hhbmdlczw9MCkgeworICAgICAgICAgICAgcHJpbnRfdXNhZ2UoX2FyZ3Yp
OworICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKKyAgICAgICAgIH0KKyAgICAgICAg
IGFyZ3MrPTM7CisgICAgICB9CisgICAgICBlbHNlIHsKKyAgICAgICAgcHJpbnRfdXNhZ2UoX2Fy
Z3YpOworICAgICAgICByZXR1cm4gRVhJVF9GQUlMVVJFOworICAgICAgfQorICAgfQorCiAgICBv
dmVyc2lvbj1vcHVzX2dldF92ZXJzaW9uX3N0cmluZygpOwogICAgaWYoIW92ZXJzaW9uKXRlc3Rf
ZmFpbGVkKCk7CiAgICBmcHJpbnRmKHN0ZGVyciwiVGVzdGluZyAlcyBlbmNvZGVyLiBSYW5kb20g
c2VlZDogJXUgKCUuNFgpXG4iLCBvdmVyc2lvbiwgaXNlZWQsIGZhc3RfcmFuZCgpICUgNjU1MzUp
OwogICAgaWYoZW52X3VzZWQpZnByaW50ZihzdGRlcnIsIiAgUmFuZG9tIHNlZWQgc2V0IGZyb20g
dGhlIGVudmlyb25tZW50IChTRUVEPSVzKS5cbiIsIGVudl9zZWVkKTsKIAorICAgcmVncmVzc2lv
bl90ZXN0KCk7CisKICAgIC8qU2V0dGluZyBURVNUX09QVVNfTk9GVVpaIHRlbGxzIHRoZSB0b29s
IG5vdCB0byBzZW5kIGdhcmJhZ2UgZGF0YQogICAgICBpbnRvIHRoZSBkZWNvZGVycy4gVGhpcyBp
cyBoZWxwZnVsIGJlY2F1c2UgZ2FyYmFnZSBkYXRhCiAgICAgIG1heSBjYXVzZSB0aGUgZGVjb2Rl
cnMgdG8gY2xpcCwgd2hpY2ggYW5nZXJzIENMQU5HIElPQy4qLwogICAgcnVuX3Rlc3QxKGdldGVu
digiVEVTVF9PUFVTX05PRlVaWiIpIT1OVUxMKTsKIAorICAgLyogRnV6eiBlbmNvZGVyIHNldHRp
bmdzIG9ubGluZSAqLworICAgaWYoZ2V0ZW52KCJURVNUX09QVVNfTk9GVVpaIik9PU5VTEwpIHsK
KyAgICAgIGZwcmludGYoc3RkZXJyLCJSdW5uaW5nIGZ1enpfZW5jb2Rlcl9zZXR0aW5ncyB3aXRo
ICVkIGVuY29kZXIocykgYW5kICVkIHNldHRpbmcgY2hhbmdlKHMpIGVhY2guXG4iLAorICAgICAg
ICAgICAgICBudW1fZW5jb2RlcnNfdG9fZnV6eiwgbnVtX3NldHRpbmdfY2hhbmdlcyk7CisgICAg
ICBmdXp6X2VuY29kZXJfc2V0dGluZ3MobnVtX2VuY29kZXJzX3RvX2Z1enosIG51bV9zZXR0aW5n
X2NoYW5nZXMpOworICAgfQorCiAgICBmcHJpbnRmKHN0ZGVyciwiVGVzdHMgY29tcGxldGVkIHN1
Y2Nlc3NmdWxseS5cbiIpOwogCiAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdXBkYXRlX3ZlcnNp
b24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3VwZGF0ZV92ZXJzaW9uCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE5OTk5OTE4ZDBmN2UzY2Q1MmViMWMyY2Ri
YzcwYzFkODVjY2IyMjYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3VwZGF0ZV92ZXJzaW9uCkBAIC0wLDAg
KzEsNjUgQEAKKyMhL2Jpbi9iYXNoCisKKyMgQ3JlYXRlcyBhbmQgdXBkYXRlcyB0aGUgcGFja2Fn
ZV92ZXJzaW9uIGluZm9ybWF0aW9uIHVzZWQgYnkgY29uZmlndXJlLmFjCisjIChvciBvdGhlciBt
YWtlZmlsZXMpLiAgV2hlbiBydW4gaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkgaXQgd2lsbCB1c2Ug
dGhlCisjIHZlcnNpb24gaW5mb3JtYXRpb24gdGhhdCBjYW4gYmUgcXVlcmllZCBmcm9tIGl0IHVu
bGVzcyBBVVRPX1VQREFURSBpcyBzZXQKKyMgdG8gJ25vJy4gIElmIG5vIHZlcnNpb24gaXMgY3Vy
cmVudGx5IGtub3duIGl0IHdpbGwgYmUgc2V0IHRvICd1bmtub3duJy4KKyMKKyMgSWYgY2FsbGVk
IHdpdGggdGhlIGFyZ3VtZW50ICdyZWxlYXNlJywgdGhlIFBBQ0tBR0VfVkVSU0lPTiB3aWxsIGJl
IHVwZGF0ZWQKKyMgZXZlbiBpZiBBVVRPX1VQREFURT1ubywgYnV0IHRoZSB2YWx1ZSBvZiBBVVRP
X1VQREFURSBzaGFsbCBiZSBwcmVzZXJ2ZWQuCisjIFRoaXMgaXMgdXNlZCB0byBmb3JjZSBhIHZl
cnNpb24gdXBkYXRlIHdoZW5ldmVyIGBtYWtlIGRpc3RgIGlzIHJ1bi4KKyMKKyMgVGhlIGV4aXQg
c3RhdHVzIGlzIDEgaWYgcGFja2FnZV92ZXJzaW9uIGlzIG5vdCBtb2RpZmllZCwgZWxzZSAwIGlz
IHJldHVybmVkLgorIworIyBUaGlzIHNjcmlwdCBzaG91bGQgTk9UIGJlIGluY2x1ZGVkIGluIGRp
c3RyaWJ1dGVkIHRhcmJhbGxzLCBiZWNhdXNlIGlmIGEKKyMgcGFyZW50IGRpcmVjdG9yeSBjb250
YWlucyBhIGdpdCByZXBvc2l0b3J5IHdlIGRvIG5vdCB3YW50IHRvIGFjY2lkZW50YWxseQorIyBy
ZXRyaWV2ZSB0aGUgdmVyc2lvbiBpbmZvcm1hdGlvbiBmcm9tIGl0IGluc3RlYWQuICBUYXJiYWxs
cyBzaG91bGQgc2hpcAorIyB3aXRoIG9ubHkgdGhlIHBhY2thZ2VfdmVyc2lvbiBmaWxlLgorIwor
IyBSb24gPHJvbkBkZWJpYW4ub3JnPiwgMjAxMi4KKworU1JDRElSPSQoZGlybmFtZSAkMCkKKwor
aWYgWyAtZSAiJFNSQ0RJUi9wYWNrYWdlX3ZlcnNpb24iIF07IHRoZW4KKyAgICAuICIkU1JDRElS
L3BhY2thZ2VfdmVyc2lvbiIKK2ZpCisKK2lmIFsgIiRBVVRPX1VQREFURSIgPSBubyBdOyB0aGVu
CisgICAgWyAiJDEiID0gcmVsZWFzZSBdIHx8IGV4aXQgMQorZWxzZQorICAgIEFVVE9fVVBEQVRF
PXllcworZmkKKworIyBXZSBydW4gYGdpdCBzdGF0dXNgIGJlZm9yZSBkZXNjcmliZSBoZXJlIHRv
IGVuc3VyZSB0aGF0IHdlIGRvbid0IGdldCBhIGZhbHNlCisjIC1kaXJ0eSBmcm9tIGZpbGVzIHRo
YXQgaGF2ZSBiZWVuIHRvdWNoZWQgYnV0IGFyZSBub3QgYWN0dWFsbHkgYWx0ZXJlZCBpbiB0aGUK
KyMgd29ya2luZyBkaXIuCitHSVRfVkVSU0lPTj0kKGNkICIkU1JDRElSIiAmJiBnaXQgc3RhdHVz
ID4gL2Rldi9udWxsIDI+JjEgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgJiYgZ2l0IGRl
c2NyaWJlIC0tdGFncyAtLW1hdGNoICd2KicgLS1kaXJ0eSAyPiAvZGV2L251bGwpCitHSVRfVkVS
U0lPTj0ke0dJVF9WRVJTSU9OI3Z9CisKK2lmIFsgLW4gIiRHSVRfVkVSU0lPTiIgXTsgdGhlbgor
CisgICAgWyAiJEdJVF9WRVJTSU9OIiAhPSAiJFBBQ0tBR0VfVkVSU0lPTiIgXSB8fCBleGl0IDEK
KyAgICBQQUNLQUdFX1ZFUlNJT049IiRHSVRfVkVSU0lPTiIKKworZWxpZiBbIC16ICIkUEFDS0FH
RV9WRVJTSU9OIiBdOyB0aGVuCisgICAgIyBObyBjdXJyZW50IHBhY2thZ2VfdmVyc2lvbiBhbmQg
bm8gZ2l0IC4uLgorICAgICMgV2UgcmVhbGx5IHNob3VsZG4ndCBldmVyIGdldCBoZXJlLCBiZWNh
dXNlIHRoaXMgc2NyaXB0IHNob3VsZCBvbmx5IGJlCisgICAgIyBpbmNsdWRlZCBpbiB0aGUgZ2l0
IHJlcG9zaXRvcnksIGFuZCBzaG91bGQgdXN1YWxseSBiZSBleHBvcnQtaWdub3JlZC4KKyAgICBQ
QUNLQUdFX1ZFUlNJT049InVua25vd24iCitlbHNlCisgICAgZXhpdCAxCitmaQorCitjYXQgPiAi
JFNSQ0RJUi9wYWNrYWdlX3ZlcnNpb24iIDw8LUVPRgorCSMgQXV0b21hdGljYWxseSBnZW5lcmF0
ZWQgYnkgdXBkYXRlX3ZlcnNpb24uCisJIyBUaGlzIGZpbGUgbWF5IGJlIHNvdXJjZWQgaW50byBh
IHNoZWxsIHNjcmlwdCBvciBtYWtlZmlsZS4KKworCSMgU2V0IHRoaXMgdG8gJ25vJyBpZiB5b3Ug
ZG8gbm90IHdpc2ggdGhlIHZlcnNpb24gaW5mb3JtYXRpb24KKwkjIHRvIGJlIGNoZWNrZWQgYW5k
IHVwZGF0ZWQgZm9yIGV2ZXJ5IGJ1aWxkLiAgTW9zdCBwZW9wbGUgd2lsbAorCSMgbmV2ZXIgd2Fu
dCB0byBjaGFuZ2UgdGhpcywgaXQgaXMgYW4gb3B0aW9uIGZvciBkZXZlbG9wZXJzCisJIyBtYWtp
bmcgZnJlcXVlbnQgY2hhbmdlcyB0aGF0IHRoZXkga25vdyB3aWxsIG5vdCBiZSByZWxlYXNlZC4K
KwlBVVRPX1VQREFURT0kQVVUT19VUERBVEUKKworCVBBQ0tBR0VfVkVSU0lPTj0iJFBBQ0tBR0Vf
VkVSU0lPTiIKK0VPRgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy93aW4zMi8uZ2l0aWdub3JlIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy93aW4zMi8uZ2l0aWdu
b3JlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmMxN2ZlYWI3M2QzNDkyY2U4NjYyZWU2OTU0NmRlYzBkOWVlYmJkN2QK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3dpbjMyLy5naXRpZ25vcmUKQEAgLTAsMCArMSwyNiBAQAorIyBW
aXN1YWwgU3R1ZGlvIGlnbm9yZXMKK1tEZF1lYnVnLworW0RkXWVidWdETEwvCitbRGRdZWJ1Z0RM
TF9maXhlZC8KK1tEZF1lYnVnUHVibGljLworW1JyXWVsZWFzZS8KK1tScl1lbGVhc2VETEwvCitb
UnJdZWxlYXNlRExMX2ZpeGVkLworW1JyXWVsZWFzZXMvCisqLm1hbmlmZXN0CisqLmxhc3RidWls
ZHN0YXRlCisqLmxpYgorKi5sb2cKKyouaWRiCisqLmlwZGIKKyouaWxrCisqLmlvYmoKKyoub2Jq
CisqLm9wZW5zZGYKKyoucGRiCisqLnNkZgorKi5zdW8KKyoudGxvZworKi52Y3hwcm9qLnVzZXIK
KyoudmMuZGIKKyoudmMub3BlbmRiCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3dpbjMyL2dlbnZlcnNpb24uYmF0IGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy93
aW4zMi9nZW52ZXJzaW9uLmJhdAppbmRleCBjZDFkNGRjZTZlZDhmNTQ4NmVlMzFhM2Y1YTE0ZGFi
OGJjMDM4ZTBjLi4xZGVmNzQ2MGI1ZTAyZmExODk5OGE1N2UwZTBlZmM1YWIzMTM0ZWQ1IDEwMDc1
NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3dpbjMyL2dlbnZlcnNpb24uYmF0CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvd2luMzIvZ2VudmVyc2lvbi5iYXQKQEAg
LTIsMTMgKzIsMTMgQEAKIAogc2V0bG9jYWwgZW5hYmxlZXh0ZW5zaW9ucyBlbmFibGVkZWxheWVk
ZXhwYW5zaW9uCiAKLWZvciAvZiAlJXYgaW4gKCdnaXQgLS1naXQtZGlyPSIlfmRwMC4uXC5naXQi
IGRlc2NyaWJlIC0tdGFncyAtLW1hdGNoICJ2KiInKSBkbyBzZXQgdmVyc2lvbj0lJXYKK2ZvciAv
ZiAlJXYgaW4gKCdjZCAiJX5kcDAuLiIgXiZeJiBnaXQgc3RhdHVzIF4+TlVMIDJePk5VTCBeJl4m
IGdpdCBkZXNjcmliZSAtLXRhZ3MgLS1tYXRjaCAidioiIC0tZGlydHkgMl4+TlVMJykgZG8gc2V0
IHZlcnNpb249JSV2CiAKLWlmIG5vdCAiJXZlcnNpb24lIj09IiIgZ290byA6Z290dmVyc2lvbgor
aWYgbm90ICIldmVyc2lvbiUiPT0iIiBzZXQgdmVyc2lvbj0hdmVyc2lvbjp+MSEgJiYgZ290byA6
Z290dmVyc2lvbgogCi1pZiBleGlzdCAiJX5kcDAuLlx2ZXJzaW9uLm1rIiBnb3RvIDpnZXR2ZXJz
aW9uCitpZiBleGlzdCAiJX5kcDAuLlxwYWNrYWdlX3ZlcnNpb24iIGdvdG8gOmdldHZlcnNpb24K
IAotZWNobyBHaXQgY2Fubm90IGJlIGZvdW5kLCBub3IgY2FuIHZlcnNpb24ubWsuIEdlbmVyYXRp
bmcgdW5rbm93biB2ZXJzaW9uLgorZWNobyBHaXQgY2Fubm90IGJlIGZvdW5kLCBub3IgY2FuIHBh
Y2thZ2VfdmVyc2lvbi4gR2VuZXJhdGluZyB1bmtub3duIHZlcnNpb24uCiAKIHNldCB2ZXJzaW9u
PXVua25vd24KIApAQCAtMTYsMjUgKzE2LDE2IEBAIGdvdG8gOmdvdHZlcnNpb24KIAogOmdldHZl
cnNpb24KIAotZm9yIC9mICJkZWxpbXM9PSB0b2tlbnM9MiIgJSV2IGluICglfmRwczAuLlx2ZXJz
aW9uLm1rKSBkbyBzZXQgdmVyc2lvbj0lJXYKLQotc2V0IHZlcnNpb249IXZlcnNpb246XiI9IQot
c2V0IHZlcnNpb249IXZlcnNpb246ID0hCitmb3IgL2YgImRlbGltcz09IHRva2Vucz0yIiAlJXYg
aW4gKCV+ZHBzMC4uXHBhY2thZ2VfdmVyc2lvbikgZG8gc2V0IHZlcnNpb249JSV2CitzZXQgdmVy
c2lvbj0hdmVyc2lvbjoiPSEKIAogOmdvdHZlcnNpb24KIAorc2V0IHZlcnNpb249IXZlcnNpb246
ID0hCiBzZXQgdmVyc2lvbl9vdXQ9I2RlZmluZSAlfjIgIiV2ZXJzaW9uJSIKLXNldCB2ZXJzaW9u
X21rPSV+MiA9ICIldmVyc2lvbiUiCiAKIGVjaG8gJXZlcnNpb25fb3V0JT4gIiV+MV90ZW1wIgog
Ci1pZiAldmVyc2lvbiU9PXVua25vd24gZ290byA6c2tpcGdlbmVyYXRlCi0KLWVjaG8gIyBzdGF0
aWMgdmVyc2lvbiBzdHJpbmc7IHVwZGF0ZSBtYW51YWxseSBldmVyeSByZWxlYXNlLj4gIiV+ZHAw
Li5cdmVyc2lvbi5tayIKLWVjaG8gJXZlcnNpb25fbWslPj4gIiV+ZHAwLi5cdmVyc2lvbi5tayIK
LQotOnNraXBnZW5lcmF0ZQotCiBlY2hvIG4gfCBjb21wICIlfjFfdGVtcCIgIiV+MSIgPiBOVUwg
Mj4gTlVMCiAKIGlmIG5vdCBlcnJvcmxldmVsIDEgZ290byBleGl0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvbGlid2VicnRjLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2ogYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvbGlid2VicnRjLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKaW5kZXggMmIxZWFhOTEzYWY2YzIyYWMyMGQxOWZiOWNiMzUxMjA2ZGI3MDNj
Mi4uYTBjOThkZmUyN2QxNTU3NzAyNGE5MzViZmZlODgzNWU4M2FiMzE0YSAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndlYnJ0Yy54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9saWJ3ZWJydGMueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjEsNiArMjEsMTUgQEAKIC8qIEVuZCBQQlhBZ2dyZWdh
dGVUYXJnZXQgc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhCdWlsZEZpbGUgc2VjdGlvbiAqLwor
CQk0MTAwQ0RFNjIxQ0FDRkQwMDBGOUI4N0QgLyogTFBDX2ZpdC5jIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEwMENERTUyMUNBQ0ZEMDAwRjlCODdEIC8q
IExQQ19maXQuYyAqLzsgfTsKKwkJNDEwMENERUEyMUNBRDAzNDAwRjlCODdEIC8qIHZxX3NzZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEwMENERTgy
MUNBRDAzMzAwRjlCODdEIC8qIHZxX3NzZS5oICovOyB9OworCQk0MTAwQ0RGMjIxQ0FEMUY3MDBG
OUI4N0QgLyogcGl0Y2hfc3NlNF8xLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0MTAwQ0RFQjIxQ0FEMUY1MDBGOUI4N0QgLyogcGl0Y2hfc3NlNF8xLmMg
Ki87IH07CisJCTQxMDBDREYzMjFDQUQxRjcwMEY5Qjg3RCAvKiBjZWx0X2xwY19zc2UuYyBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMDBDREVDMjFDQUQx
RjUwMEY5Qjg3RCAvKiBjZWx0X2xwY19zc2UuYyAqLzsgfTsKKwkJNDEwMENERjQyMUNBRDFGNzAw
RjlCODdEIC8qIHZxX3NzZTIuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDQxMDBDREVEMjFDQUQxRjUwMEY5Qjg3RCAvKiB2cV9zc2UyLmMgKi87IH07CisJ
CTQxMDBDREY1MjFDQUQxRjcwMEY5Qjg3RCAvKiBwaXRjaF9zc2UuYyBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMDBDREVFMjFDQUQxRjYwMEY5Qjg3RCAv
KiBwaXRjaF9zc2UuYyAqLzsgfTsKKwkJNDEwMENERjYyMUNBRDFGNzAwRjlCODdEIC8qIHBpdGNo
X3NzZTIuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQx
MDBDREVGMjFDQUQxRjYwMEY5Qjg3RCAvKiBwaXRjaF9zc2UyLmMgKi87IH07CisJCTQxMDBDREY3
MjFDQUQxRjcwMEY5Qjg3RCAvKiBjZWx0X2xwY19zc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMDBDREYwMjFDQUQxRjYwMEY5Qjg3RCAvKiBjZWx0
X2xwY19zc2UuaCAqLzsgfTsKKwkJNDEwMENERjgyMUNBRDFGNzAwRjlCODdEIC8qIHBpdGNoX3Nz
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEwMENE
RjEyMUNBRDFGNzAwRjlCODdEIC8qIHBpdGNoX3NzZS5oICovOyB9OwogCQk0MTAyRjY4RDIxMjcz
MjA2MDA2QUU4RDcgLyogcnRjc3RhdHN0cmF2ZXJzYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMDJGNjg0MjEyNzMyMDQwMDZBRThENyAvKiBydGNz
dGF0c3RyYXZlcnNhbC5oICovOyB9OwogCQk0MTAyRjY4RTIxMjczMjA2MDA2QUU4RDcgLyoganNl
cHRyYW5zcG9ydGNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDQxMDJGNjg1MjEyNzMyMDQwMDZBRThENyAvKiBqc2VwdHJhbnNwb3J0Y29u
dHJvbGxlci5oICovOyB9OwogCQk0MTAyRjY4RjIxMjczMjA2MDA2QUU4RDcgLyogdHJhbnNwb3J0
c3RhdHMuY2MgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
MTAyRjY4NjIxMjczMjA1MDA2QUU4RDcgLyogdHJhbnNwb3J0c3RhdHMuY2MgKi87IH07CkBAIC0z
MjUxLDcgKzMyNjAsNiBAQAogCQk1Q0REOEVFQTFFNDNDOUY2MDA2MjFFOTIgLyogZmluZF9wcmVk
X2NvZWZzX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNUNERDhFQTYxRTQzQzlDMTAwNjIxRTkyIC8qIGZpbmRfcHJlZF9jb2Vmc19GTFAuYyAqLzsg
fTsKIAkJNUNERDhFRUIxRTQzQzlGNjAwNjIxRTkyIC8qIGlubmVyX3Byb2R1Y3RfRkxQLmMgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVBNzFFNDND
OUMxMDA2MjFFOTIgLyogaW5uZXJfcHJvZHVjdF9GTFAuYyAqLzsgfTsKIAkJNUNERDhFRUMxRTQz
QzlGNjAwNjIxRTkyIC8qIGsyYV9GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDVDREQ4RUE4MUU0M0M5QzEwMDYyMUU5MiAvKiBrMmFfRkxQLmMgKi87
IH07Ci0JCTVDREQ4RUVEMUU0M0M5RjYwMDYyMUU5MiAvKiBsZXZpbnNvbmR1cmJpbl9GTFAuYyBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUE5MUU0
M0M5QzEwMDYyMUU5MiAvKiBsZXZpbnNvbmR1cmJpbl9GTFAuYyAqLzsgfTsKIAkJNUNERDhFRUUx
RTQzQzlGNjAwNjIxRTkyIC8qIExQQ19hbmFseXNpc19maWx0ZXJfRkxQLmMgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVBQTFFNDNDOUMxMDA2MjFF
OTIgLyogTFBDX2FuYWx5c2lzX2ZpbHRlcl9GTFAuYyAqLzsgfTsKIAkJNUNERDhFRUYxRTQzQzlG
NjAwNjIxRTkyIC8qIExQQ19pbnZfcHJlZF9nYWluX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQUIxRTQzQzlDMTAwNjIxRTkyIC8qIExQ
Q19pbnZfcHJlZF9nYWluX0ZMUC5jICovOyB9OwogCQk1Q0REOEVGMDFFNDNDOUY2MDA2MjFFOTIg
LyogTFRQX2FuYWx5c2lzX2ZpbHRlcl9GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUFDMUU0M0M5QzEwMDYyMUU5MiAvKiBMVFBfYW5hbHlz
aXNfZmlsdGVyX0ZMUC5jICovOyB9OwpAQCAtMzI1OSw3ICszMjY3LDYgQEAKIAkJNUNERDhFRjIx
RTQzQzlGNjAwNjIxRTkyIC8qIG1haW5fRkxQLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVBRTFFNDNDOUMxMDA2MjFFOTIgLyogbWFpbl9GTFAu
aCAqLzsgfTsKIAkJNUNERDhFRjMxRTQzQzlGNjAwNjIxRTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5
c2lzX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NUNERDhFQUYxRTQzQzlDMTAwNjIxRTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jICov
OyB9OwogCQk1Q0REOEVGNDFFNDNDOUY2MDA2MjFFOTIgLyogcGl0Y2hfYW5hbHlzaXNfY29yZV9G
TFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4
RUIwMUU0M0M5QzEwMDYyMUU5MiAvKiBwaXRjaF9hbmFseXNpc19jb3JlX0ZMUC5jICovOyB9Owot
CQk1Q0REOEVGNTFFNDNDOUY2MDA2MjFFOTIgLyogcHJlZmlsdGVyX0ZMUC5jIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQjExRTQzQzlDMTAwNjIx
RTkyIC8qIHByZWZpbHRlcl9GTFAuYyAqLzsgfTsKIAkJNUNERDhFRjYxRTQzQzlGNjAwNjIxRTky
IC8qIHByb2Nlc3NfZ2FpbnNfRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1Q0REOEVCMjFFNDNDOUMxMDA2MjFFOTIgLyogcHJvY2Vzc19nYWluc19G
TFAuYyAqLzsgfTsKIAkJNUNERDhFRjcxRTQzQzlGNjAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29y
cmVsYXRpb25zX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNUNERDhFQjMxRTQzQzlDMTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29ycmVsYXRpb25z
X0ZMUC5jICovOyB9OwogCQk1Q0REOEVGODFFNDNDOUY2MDA2MjFFOTIgLyogcmVzaWR1YWxfZW5l
cmd5X0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NUNERDhFQjQxRTQzQzlDMTAwNjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJneV9GTFAuYyAqLzsgfTsK
QEAgLTMyNjcsNyArMzI3NCw2IEBACiAJCTVDREQ4RUZBMUU0M0M5RjYwMDYyMUU5MiAvKiBzY2Fs
ZV92ZWN0b3JfRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1Q0REOEVCNjFFNDNDOUMxMDA2MjFFOTIgLyogc2NhbGVfdmVjdG9yX0ZMUC5jICovOyB9
OwogCQk1Q0REOEVGQjFFNDNDOUY2MDA2MjFFOTIgLyogc2NodXJfRkxQLmMgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVCNzFFNDNDOUMxMDA2MjFF
OTIgLyogc2NodXJfRkxQLmMgKi87IH07CiAJCTVDREQ4RUZDMUU0M0M5RjYwMDYyMUU5MiAvKiBT
aWdQcm9jX0ZMUC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNUNERDhFQjgxRTQzQzlDMTAwNjIxRTkyIC8qIFNpZ1Byb2NfRkxQLmggKi87IH07Ci0JCTVD
REQ4RUZEMUU0M0M5RjYwMDYyMUU5MiAvKiBzb2x2ZV9MU19GTFAuYyBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUI5MUU0M0M5QzEwMDYyMUU5MiAv
KiBzb2x2ZV9MU19GTFAuYyAqLzsgfTsKIAkJNUNERDhFRkUxRTQzQzlGNjAwNjIxRTkyIC8qIHNv
cnRfRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
Q0REOEVCQTFFNDNDOUMxMDA2MjFFOTIgLyogc29ydF9GTFAuYyAqLzsgfTsKIAkJNUNERDhFRkYx
RTQzQzlGNjAwNjIxRTkyIC8qIHN0cnVjdHNfRkxQLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVCQjFFNDNDOUMxMDA2MjFFOTIgLyogc3RydWN0
c19GTFAuaCAqLzsgfTsKIAkJNUNERDhGMDAxRTQzQzlGNjAwNjIxRTkyIC8qIHdhcnBlZF9hdXRv
Y29ycmVsYXRpb25fRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1Q0REOEVCQzFFNDNDOUMxMDA2MjFFOTIgLyogd2FycGVkX2F1dG9jb3JyZWxhdGlv
bl9GTFAuYyAqLzsgfTsKQEAgLTMyODgsMTQgKzMyOTQsMTIgQEAKIAkJNUNERDhGNDcxRTQzQ0Ix
RTAwNjIxRTkyIC8qIG1haW5fRklYLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1Q0REOEYxMDFFNDNDQUY5MDA2MjFFOTIgLyogbWFpbl9GSVguaCAqLzsg
fTsKIAkJNUNERDhGNDgxRTQzQ0IxRTAwNjIxRTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJ
WC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhG
MTIxRTQzQ0FGOTAwNjIxRTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWC5jICovOyB9Owog
CQk1Q0REOEY0OTFFNDNDQjFFMDA2MjFFOTIgLyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYyBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RjEzMUU0
M0NBRjkwMDYyMUU5MiAvKiBwaXRjaF9hbmFseXNpc19jb3JlX0ZJWC5jICovOyB9OwotCQk1Q0RE
OEY0QTFFNDNDQjFFMDA2MjFFOTIgLyogcHJlZmlsdGVyX0ZJWC5jIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMTQxRTQzQ0FGOTAwNjIxRTkyIC8q
IHByZWZpbHRlcl9GSVguYyAqLzsgfTsKIAkJNUNERDhGNEIxRTQzQ0IxRTAwNjIxRTkyIC8qIHBy
b2Nlc3NfZ2FpbnNfRklYLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1Q0REOEYxNTFFNDNDQUY5MDA2MjFFOTIgLyogcHJvY2Vzc19nYWluc19GSVguYyAq
LzsgfTsKIAkJNUNERDhGNEMxRTQzQ0IxRTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29ycmVsYXRp
b25zX0ZJWC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NUNERDhGMTYxRTQzQ0FGOTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZJWC5j
ICovOyB9OwogCQk1Q0REOEY0RDFFNDNDQjFFMDA2MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5X0ZJ
WC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhG
MTcxRTQzQ0FGOTAwNjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJneV9GSVguYyAqLzsgfTsKIAkJNUNE
RDhGNEUxRTQzQ0IxRTAwNjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJneTE2X0ZJWC5jIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMTgxRTQzQ0FGOTAw
NjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJneTE2X0ZJWC5jICovOyB9OwogCQk1Q0REOEY0RjFFNDND
QjFFMDA2MjFFOTIgLyogc2NodXJfRklYLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYxOTFFNDNDQUY5MDA2MjFFOTIgLyogc2NodXJfRklYLmMg
Ki87IH07CiAJCTVDREQ4RjUwMUU0M0NCMUUwMDYyMUU5MiAvKiBzY2h1cjY0X0ZJWC5jIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMUExRTQzQ0FG
OTAwNjIxRTkyIC8qIHNjaHVyNjRfRklYLmMgKi87IH07Ci0JCTVDREQ4RjUxMUU0M0NCMUUwMDYy
MUU5MiAvKiBzb2x2ZV9MU19GSVguYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDVDREQ4RjFCMUU0M0NBRjkwMDYyMUU5MiAvKiBzb2x2ZV9MU19GSVguYyAq
LzsgfTsKIAkJNUNERDhGNTIxRTQzQ0IxRTAwNjIxRTkyIC8qIHN0cnVjdHNfRklYLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYxQzFFNDNDQUY5
MDA2MjFFOTIgLyogc3RydWN0c19GSVguaCAqLzsgfTsKIAkJNUNERDhGNTMxRTQzQ0IxRTAwNjIx
RTkyIC8qIHZlY3Rvcl9vcHNfRklYLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1Q0REOEYxRDFFNDNDQUY5MDA2MjFFOTIgLyogdmVjdG9yX29wc19GSVgu
YyAqLzsgfTsKIAkJNUNERDhGNTQxRTQzQ0IxRTAwNjIxRTkyIC8qIHdhcnBlZF9hdXRvY29ycmVs
YXRpb25fRklYLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1Q0REOEYxRTFFNDNDQUY5MDA2MjFFOTIgLyogd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgu
YyAqLzsgfTsKQEAgLTM2NjAsNiArMzY2NCwxNSBAQAogLyogQmVnaW4gUEJYRmlsZVJlZmVyZW5j
ZSBzZWN0aW9uICovCiAJCTM3MTE5QTgwMjBDQ0I2REQwMDJDNkRDOSAvKiBWZXJzaW9uLnhjY29u
ZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dC54Y2NvbmZpZzsgcGF0aCA9IFZlcnNpb24ueGNjb25maWc7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTM3MTE5QTgxMjBDQ0I2REQwMDJDNkRDOSAvKiBXZWJLaXRUYXJnZXRDb25kaXRp
b25hbHMueGNjb25maWcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0LnhjY29uZmlnOyBwYXRoID0gV2ViS2l0VGFyZ2V0Q29uZGl0aW9uYWxzLnhj
Y29uZmlnOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTAwQ0RFNTIxQ0FDRkQwMDBG
OUI4N0QgLyogTFBDX2ZpdC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBMUENf
Zml0LmM7IHBhdGggPSBzaWxrL0xQQ19maXQuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDEwMENERTgyMUNBRDAzMzAwRjlCODdEIC8qIHZxX3NzZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IG5hbWUgPSB2cV9zc2UuaDsgcGF0aCA9IHg4Ni92cV9zc2UuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENERUIyMUNBRDFGNTAwRjlCODdEIC8qIHBpdGNoX3Nz
ZTRfMS5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBwaXRjaF9zc2U0XzEuYzsg
cGF0aCA9IHg4Ni9waXRjaF9zc2U0XzEuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDEwMENERUMyMUNBRDFGNTAwRjlCODdEIC8qIGNlbHRfbHBjX3NzZS5jICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmM7IG5hbWUgPSBjZWx0X2xwY19zc2UuYzsgcGF0aCA9IHg4Ni9jZWx0X2xwY19z
c2UuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENERUQyMUNBRDFGNTAwRjlC
ODdEIC8qIHZxX3NzZTIuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gdnFfc3Nl
Mi5jOyBwYXRoID0geDg2L3ZxX3NzZTIuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDEwMENERUUyMUNBRDFGNjAwRjlCODdEIC8qIHBpdGNoX3NzZS5jICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmM7IG5hbWUgPSBwaXRjaF9zc2UuYzsgcGF0aCA9IHg4Ni9waXRjaF9zc2UuYzsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENERUYyMUNBRDFGNjAwRjlCODdEIC8qIHBp
dGNoX3NzZTIuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcGl0Y2hfc3NlMi5j
OyBwYXRoID0geDg2L3BpdGNoX3NzZTIuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDEwMENERjAyMUNBRDFGNjAwRjlCODdEIC8qIGNlbHRfbHBjX3NzZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBjZWx0X2xwY19zc2UuaDsgcGF0aCA9IHg4Ni9jZWx0X2xwY19z
c2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENERjEyMUNBRDFGNzAwRjlC
ODdEIC8qIHBpdGNoX3NzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBwaXRj
aF9zc2UuaDsgcGF0aCA9IHg4Ni9waXRjaF9zc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNDEwMkY2ODQyMTI3MzIwNDAwNkFFOEQ3IC8qIHJ0Y3N0YXRzdHJhdmVyc2FsLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IHJ0Y3N0YXRzdHJhdmVyc2FsLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMDJGNjg1MjEyNzMyMDQwMDZBRThENyAvKiBqc2Vw
dHJhbnNwb3J0Y29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBq
c2VwdHJhbnNwb3J0Y29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
MTAyRjY4NjIxMjczMjA1MDA2QUU4RDcgLyogdHJhbnNwb3J0c3RhdHMuY2MgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSB0cmFuc3BvcnRzdGF0cy5jYzsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTcxNjksNyArNzE4Miw2IEBACiAJCTVDREQ4RUE2MUU0M0M5QzEw
MDYyMUU5MiAvKiBmaW5kX3ByZWRfY29lZnNfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
YzsgbmFtZSA9IGZpbmRfcHJlZF9jb2Vmc19GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvZmluZF9w
cmVkX2NvZWZzX0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVBNzFF
NDNDOUMxMDA2MjFFOTIgLyogaW5uZXJfcHJvZHVjdF9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5jOyBuYW1lID0gaW5uZXJfcHJvZHVjdF9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvaW5u
ZXJfcHJvZHVjdF9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQTgx
RTQzQzlDMTAwNjIxRTkyIC8qIGsyYV9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBu
YW1lID0gazJhX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9rMmFfRkxQLmM7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07Ci0JCTVDREQ4RUE5MUU0M0M5QzEwMDYyMUU5MiAvKiBsZXZpbnNvbmR1
cmJpbl9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gbGV2aW5zb25kdXJi
aW5fRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L2xldmluc29uZHVyYmluX0ZMUC5jOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVBQTFFNDNDOUMxMDA2MjFFOTIgLyogTFBDX2Fu
YWx5c2lzX2ZpbHRlcl9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gTFBD
X2FuYWx5c2lzX2ZpbHRlcl9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvTFBDX2FuYWx5c2lzX2Zp
bHRlcl9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQUIxRTQzQzlD
MTAwNjIxRTkyIC8qIExQQ19pbnZfcHJlZF9nYWluX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmM7IG5hbWUgPSBMUENfaW52X3ByZWRfZ2Fpbl9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQv
TFBDX2ludl9wcmVkX2dhaW5fRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVD
REQ4RUFDMUU0M0M5QzEwMDYyMUU5MiAvKiBMVFBfYW5hbHlzaXNfZmlsdGVyX0ZMUC5jICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBMVFBfYW5hbHlzaXNfZmlsdGVyX0ZMUC5jOyBw
YXRoID0gc2lsay9mbG9hdC9MVFBfYW5hbHlzaXNfZmlsdGVyX0ZMUC5jOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtNzE3Nyw3ICs3MTg5LDYgQEAKIAkJNUNERDhFQUUxRTQzQzlDMTAw
NjIxRTkyIC8qIG1haW5fRkxQLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IG1h
aW5fRkxQLmg7IHBhdGggPSBzaWxrL2Zsb2F0L21haW5fRkxQLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTVDREQ4RUFGMUU0M0M5QzEwMDYyMUU5MiAvKiBub2lzZV9zaGFwZV9hbmFs
eXNpc19GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gbm9pc2Vfc2hhcGVf
YW5hbHlzaXNfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZM
UC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVCMDFFNDNDOUMxMDA2MjFF
OTIgLyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5j
OyBuYW1lID0gcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvcGl0
Y2hfYW5hbHlzaXNfY29yZV9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNUNE
RDhFQjExRTQzQzlDMTAwNjIxRTkyIC8qIHByZWZpbHRlcl9GTFAuYyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5jOyBuYW1lID0gcHJlZmlsdGVyX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9wcmVm
aWx0ZXJfRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUIyMUU0M0M5
QzEwMDYyMUU5MiAvKiBwcm9jZXNzX2dhaW5zX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
LmM7IG5hbWUgPSBwcm9jZXNzX2dhaW5zX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9wcm9jZXNz
X2dhaW5zX0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVCMzFFNDND
OUMxMDA2MjFFOTIgLyogcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRkxQLmMgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHJlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZMUC5jOyBwYXRo
ID0gc2lsay9mbG9hdC9yZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GTFAuYzsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQjQxRTQzQzlDMTAwNjIxRTkyIC8qIHJlc2lkdWFsX2Vu
ZXJneV9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcmVzaWR1YWxfZW5l
cmd5X0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9yZXNpZHVhbF9lbmVyZ3lfRkxQLmM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03MTg1LDcgKzcxOTYsNiBAQAogCQk1Q0REOEVCNjFF
NDNDOUMxMDA2MjFFOTIgLyogc2NhbGVfdmVjdG9yX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmM7IG5hbWUgPSBzY2FsZV92ZWN0b3JfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L3NjYWxl
X3ZlY3Rvcl9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQjcxRTQz
QzlDMTAwNjIxRTkyIC8qIHNjaHVyX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5h
bWUgPSBzY2h1cl9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvc2NodXJfRkxQLmM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUI4MUU0M0M5QzEwMDYyMUU5MiAvKiBTaWdQcm9j
X0ZMUC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBTaWdQcm9jX0ZMUC5oOyBw
YXRoID0gc2lsay9mbG9hdC9TaWdQcm9jX0ZMUC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQk1Q0REOEVCOTFFNDNDOUMxMDA2MjFFOTIgLyogc29sdmVfTFNfRkxQLmMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHNvbHZlX0xTX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9h
dC9zb2x2ZV9MU19GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQkEx
RTQzQzlDMTAwNjIxRTkyIC8qIHNvcnRfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsg
bmFtZSA9IHNvcnRfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L3NvcnRfRkxQLmM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUJCMUU0M0M5QzEwMDYyMUU5MiAvKiBzdHJ1Y3Rz
X0ZMUC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBzdHJ1Y3RzX0ZMUC5oOyBw
YXRoID0gc2lsay9mbG9hdC9zdHJ1Y3RzX0ZMUC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1Q0REOEVCQzFFNDNDOUMxMDA2MjFFOTIgLyogd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9G
TFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gd2FycGVkX2F1dG9jb3JyZWxh
dGlvbl9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GTFAu
Yzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTcyMDYsMTQgKzcyMTYsMTIgQEAKIAkJ
NUNERDhGMTAxRTQzQ0FGOTAwNjIxRTkyIC8qIG1haW5fRklYLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgbmFtZSA9IG1haW5fRklYLmg7IHBhdGggPSBzaWxrL2ZpeGVkL21haW5fRklYLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjEyMUU0M0NBRjkwMDYyMUU5MiAv
KiBub2lzZV9zaGFwZV9hbmFseXNpc19GSVguYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBu
YW1lID0gbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVkL25vaXNl
X3NoYXBlX2FuYWx5c2lzX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0RE
OEYxMzFFNDNDQUY5MDA2MjFFOTIgLyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYzsgcGF0
aCA9IHNpbGsvZml4ZWQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYzsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJNUNERDhGMTQxRTQzQ0FGOTAwNjIxRTkyIC8qIHByZWZpbHRlcl9GSVgu
YyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcHJlZmlsdGVyX0ZJWC5jOyBwYXRo
ID0gc2lsay9maXhlZC9wcmVmaWx0ZXJfRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTVDREQ4RjE1MUU0M0NBRjkwMDYyMUU5MiAvKiBwcm9jZXNzX2dhaW5zX0ZJWC5jICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBwcm9jZXNzX2dhaW5zX0ZJWC5jOyBwYXRoID0g
c2lsay9maXhlZC9wcm9jZXNzX2dhaW5zX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1Q0REOEYxNjFFNDNDQUY5MDA2MjFFOTIgLyogcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNf
RklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHJlZ3VsYXJpemVfY29ycmVs
YXRpb25zX0ZJWC5jOyBwYXRoID0gc2lsay9maXhlZC9yZWd1bGFyaXplX2NvcnJlbGF0aW9uc19G
SVguYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMTcxRTQzQ0FGOTAwNjIx
RTkyIC8qIHJlc2lkdWFsX2VuZXJneV9GSVguYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBu
YW1lID0gcmVzaWR1YWxfZW5lcmd5X0ZJWC5jOyBwYXRoID0gc2lsay9maXhlZC9yZXNpZHVhbF9l
bmVyZ3lfRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjE4MUU0M0NB
RjkwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3kxNl9GSVguYyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5jOyBuYW1lID0gcmVzaWR1YWxfZW5lcmd5MTZfRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVk
L3Jlc2lkdWFsX2VuZXJneTE2X0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1
Q0REOEYxOTFFNDNDQUY5MDA2MjFFOTIgLyogc2NodXJfRklYLmMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuYzsgbmFtZSA9IHNjaHVyX0ZJWC5jOyBwYXRoID0gc2lsay9maXhlZC9zY2h1cl9GSVgu
Yzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMUExRTQzQ0FGOTAwNjIxRTky
IC8qIHNjaHVyNjRfRklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHNjaHVy
NjRfRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVkL3NjaHVyNjRfRklYLmM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTVDREQ4RjFCMUU0M0NBRjkwMDYyMUU5MiAvKiBzb2x2ZV9MU19GSVgu
YyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gc29sdmVfTFNfRklYLmM7IHBhdGgg
PSBzaWxrL2ZpeGVkL3NvbHZlX0xTX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk1Q0REOEYxQzFFNDNDQUY5MDA2MjFFOTIgLyogc3RydWN0c19GSVguaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBuYW1lID0gc3RydWN0c19GSVguaDsgcGF0aCA9IHNpbGsvZml4ZWQvc3Ry
dWN0c19GSVguaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMUQxRTQzQ0FG
OTAwNjIxRTkyIC8qIHZlY3Rvcl9vcHNfRklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsg
bmFtZSA9IHZlY3Rvcl9vcHNfRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVkL3ZlY3Rvcl9vcHNfRklY
LmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjFFMUU0M0NBRjkwMDYyMUU5
MiAvKiB3YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
LmM7IG5hbWUgPSB3YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jOyBwYXRoID0gc2lsay9maXhl
ZC93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtMTMwNzIsNiArMTMwODAsMTQgQEAKIAkJNUNERDhEMTMxRTQzQzc1NTAwNjIxRTkyIC8q
IHg4NiAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJNDEw
MENERUMyMUNBRDFGNTAwRjlCODdEIC8qIGNlbHRfbHBjX3NzZS5jICovLAorCQkJCTQxMDBDREYw
MjFDQUQxRjYwMEY5Qjg3RCAvKiBjZWx0X2xwY19zc2UuaCAqLywKKwkJCQk0MTAwQ0RFRTIxQ0FE
MUY2MDBGOUI4N0QgLyogcGl0Y2hfc3NlLmMgKi8sCisJCQkJNDEwMENERjEyMUNBRDFGNzAwRjlC
ODdEIC8qIHBpdGNoX3NzZS5oICovLAorCQkJCTQxMDBDREVGMjFDQUQxRjYwMEY5Qjg3RCAvKiBw
aXRjaF9zc2UyLmMgKi8sCisJCQkJNDEwMENERUIyMUNBRDFGNTAwRjlCODdEIC8qIHBpdGNoX3Nz
ZTRfMS5jICovLAorCQkJCTQxMDBDREU4MjFDQUQwMzMwMEY5Qjg3RCAvKiB2cV9zc2UuaCAqLywK
KwkJCQk0MTAwQ0RFRDIxQ0FEMUY1MDBGOUI4N0QgLyogdnFfc3NlMi5jICovLAogCQkJCTVDREQ4
RDFBMUU0M0M3NjQwMDYyMUU5MiAvKiB4ODZfY2VsdF9tYXAuYyAqLywKIAkJCQk1Q0REOEQxQjFF
NDNDNzY0MDA2MjFFOTIgLyogeDg2Y3B1LmMgKi8sCiAJCQkJNUNERDhEMUMxRTQzQzc2NDAwNjIx
RTkyIC8qIHg4NmNwdS5oICovLApAQCAtMTMxMjQsNiArMTMxNDAsNyBAQAogCQkJCTVDREQ4RDg1
MUU0M0M3RDkwMDYyMUU5MiAvKiBsb2cybGluLmMgKi8sCiAJCQkJNUNERDhEODYxRTQzQzdEOTAw
NjIxRTkyIC8qIExQX3ZhcmlhYmxlX2N1dG9mZi5jICovLAogCQkJCTVDREQ4RDg3MUU0M0M3RDkw
MDYyMUU5MiAvKiBMUENfYW5hbHlzaXNfZmlsdGVyLmMgKi8sCisJCQkJNDEwMENERTUyMUNBQ0ZE
MDAwRjlCODdEIC8qIExQQ19maXQuYyAqLywKIAkJCQk1Q0REOEQ4ODFFNDNDN0Q5MDA2MjFFOTIg
LyogTFBDX2ludl9wcmVkX2dhaW4uYyAqLywKIAkJCQk1Q0REOEQ4OTFFNDNDN0Q5MDA2MjFFOTIg
LyogTWFjcm9Db3VudC5oICovLAogCQkJCTVDREQ4RDhBMUU0M0M3RDkwMDYyMUU5MiAvKiBNYWNy
b0RlYnVnLmggKi8sCkBAIC0xMzIxNiw3ICsxMzIzMyw2IEBACiAJCQkJNUNERDhFQTYxRTQzQzlD
MTAwNjIxRTkyIC8qIGZpbmRfcHJlZF9jb2Vmc19GTFAuYyAqLywKIAkJCQk1Q0REOEVBNzFFNDND
OUMxMDA2MjFFOTIgLyogaW5uZXJfcHJvZHVjdF9GTFAuYyAqLywKIAkJCQk1Q0REOEVBODFFNDND
OUMxMDA2MjFFOTIgLyogazJhX0ZMUC5jICovLAotCQkJCTVDREQ4RUE5MUU0M0M5QzEwMDYyMUU5
MiAvKiBsZXZpbnNvbmR1cmJpbl9GTFAuYyAqLywKIAkJCQk1Q0REOEVBQTFFNDNDOUMxMDA2MjFF
OTIgLyogTFBDX2FuYWx5c2lzX2ZpbHRlcl9GTFAuYyAqLywKIAkJCQk1Q0REOEVBQjFFNDNDOUMx
MDA2MjFFOTIgLyogTFBDX2ludl9wcmVkX2dhaW5fRkxQLmMgKi8sCiAJCQkJNUNERDhFQUMxRTQz
QzlDMTAwNjIxRTkyIC8qIExUUF9hbmFseXNpc19maWx0ZXJfRkxQLmMgKi8sCkBAIC0xMzIyNCw3
ICsxMzI0MCw2IEBACiAJCQkJNUNERDhFQUUxRTQzQzlDMTAwNjIxRTkyIC8qIG1haW5fRkxQLmgg
Ki8sCiAJCQkJNUNERDhFQUYxRTQzQzlDMTAwNjIxRTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5c2lz
X0ZMUC5jICovLAogCQkJCTVDREQ4RUIwMUU0M0M5QzEwMDYyMUU5MiAvKiBwaXRjaF9hbmFseXNp
c19jb3JlX0ZMUC5jICovLAotCQkJCTVDREQ4RUIxMUU0M0M5QzEwMDYyMUU5MiAvKiBwcmVmaWx0
ZXJfRkxQLmMgKi8sCiAJCQkJNUNERDhFQjIxRTQzQzlDMTAwNjIxRTkyIC8qIHByb2Nlc3NfZ2Fp
bnNfRkxQLmMgKi8sCiAJCQkJNUNERDhFQjMxRTQzQzlDMTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVf
Y29ycmVsYXRpb25zX0ZMUC5jICovLAogCQkJCTVDREQ4RUI0MUU0M0M5QzEwMDYyMUU5MiAvKiBy
ZXNpZHVhbF9lbmVyZ3lfRkxQLmMgKi8sCkBAIC0xMzIzMiw3ICsxMzI0Nyw2IEBACiAJCQkJNUNE
RDhFQjYxRTQzQzlDMTAwNjIxRTkyIC8qIHNjYWxlX3ZlY3Rvcl9GTFAuYyAqLywKIAkJCQk1Q0RE
OEVCNzFFNDNDOUMxMDA2MjFFOTIgLyogc2NodXJfRkxQLmMgKi8sCiAJCQkJNUNERDhFQjgxRTQz
QzlDMTAwNjIxRTkyIC8qIFNpZ1Byb2NfRkxQLmggKi8sCi0JCQkJNUNERDhFQjkxRTQzQzlDMTAw
NjIxRTkyIC8qIHNvbHZlX0xTX0ZMUC5jICovLAogCQkJCTVDREQ4RUJBMUU0M0M5QzEwMDYyMUU5
MiAvKiBzb3J0X0ZMUC5jICovLAogCQkJCTVDREQ4RUJCMUU0M0M5QzEwMDYyMUU5MiAvKiBzdHJ1
Y3RzX0ZMUC5oICovLAogCQkJCTVDREQ4RUJDMUU0M0M5QzEwMDYyMUU5MiAvKiB3YXJwZWRfYXV0
b2NvcnJlbGF0aW9uX0ZMUC5jICovLApAQCAtMTMyNjAsMTQgKzEzMjc0LDEyIEBACiAJCQkJNUNE
RDhGMTAxRTQzQ0FGOTAwNjIxRTkyIC8qIG1haW5fRklYLmggKi8sCiAJCQkJNUNERDhGMTIxRTQz
Q0FGOTAwNjIxRTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWC5jICovLAogCQkJCTVDREQ4
RjEzMUU0M0NBRjkwMDYyMUU5MiAvKiBwaXRjaF9hbmFseXNpc19jb3JlX0ZJWC5jICovLAotCQkJ
CTVDREQ4RjE0MUU0M0NBRjkwMDYyMUU5MiAvKiBwcmVmaWx0ZXJfRklYLmMgKi8sCiAJCQkJNUNE
RDhGMTUxRTQzQ0FGOTAwNjIxRTkyIC8qIHByb2Nlc3NfZ2FpbnNfRklYLmMgKi8sCiAJCQkJNUNE
RDhGMTYxRTQzQ0FGOTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZJWC5jICov
LAogCQkJCTVDREQ4RjE4MUU0M0NBRjkwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3kxNl9GSVgu
YyAqLywKIAkJCQk1Q0REOEYxNzFFNDNDQUY5MDA2MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5X0ZJ
WC5jICovLAogCQkJCTVDREQ4RjFBMUU0M0NBRjkwMDYyMUU5MiAvKiBzY2h1cjY0X0ZJWC5jICov
LAogCQkJCTVDREQ4RjE5MUU0M0NBRjkwMDYyMUU5MiAvKiBzY2h1cl9GSVguYyAqLywKLQkJCQk1
Q0REOEYxQjFFNDNDQUY5MDA2MjFFOTIgLyogc29sdmVfTFNfRklYLmMgKi8sCiAJCQkJNUNERDhG
MUMxRTQzQ0FGOTAwNjIxRTkyIC8qIHN0cnVjdHNfRklYLmggKi8sCiAJCQkJNUNERDhGMUQxRTQz
Q0FGOTAwNjIxRTkyIC8qIHZlY3Rvcl9vcHNfRklYLmMgKi8sCiAJCQkJNUNERDhGMUUxRTQzQ0FG
OTAwNjIxRTkyIC8qIHdhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYLmMgKi8sCkBAIC0xMzcyOSw2
ICsxMzc0MSw3IEBACiAJCQkJNUNERDhEMzIxRTQzQzc5QzAwNjIxRTkyIC8qIGJhbmRzLmggaW4g
SGVhZGVycyAqLywKIAkJCQk1Q0REOEQzODFFNDNDNzlDMDA2MjFFOTIgLyogY2VsdC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJNUNERDhEMzYxRTQzQzc5QzAwNjIxRTkyIC8qIGNlbHRfbHBjLmggaW4g
SGVhZGVycyAqLywKKwkJCQk0MTAwQ0RGNzIxQ0FEMUY3MDBGOUI4N0QgLyogY2VsdF9scGNfc3Nl
LmggaW4gSGVhZGVycyAqLywKIAkJCQk1Q0REOEU0NjFFNDNDODBDMDA2MjFFOTIgLyogY29udHJv
bC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNERDhEMzkxRTQzQzc5QzAwNjIxRTkyIC8qIGNwdV9z
dXBwb3J0LmggaW4gSGVhZGVycyAqLywKIAkJCQk1Q0REOEQzQjFFNDNDNzlDMDA2MjFFOTIgLyog
Y3dycy5oIGluIEhlYWRlcnMgKi8sCkBAIC0xMzc2Miw2ICsxMzc3NSw3IEBACiAJCQkJNUNERDhE
NTExRTQzQzc5QzAwNjIxRTkyIC8qIG9zX3N1cHBvcnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTVD
REQ4RDUzMUU0M0M3OUMwMDYyMUU5MiAvKiBwaXRjaC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNE
RDhFNzExRTQzQzgwQzAwNjIxRTkyIC8qIHBpdGNoX2VzdF9kZWZpbmVzLmggaW4gSGVhZGVycyAq
LywKKwkJCQk0MTAwQ0RGODIxQ0FEMUY3MDBGOUI4N0QgLyogcGl0Y2hfc3NlLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk1Q0REOEU3NDFFNDNDODBDMDA2MjFFOTIgLyogUExDLmggaW4gSGVhZGVycyAq
LywKIAkJCQk1Q0REOEQ1NTFFNDNDNzlDMDA2MjFFOTIgLyogcXVhbnRfYmFuZHMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTVDREQ4RDU3MUU0M0M3OUMwMDYyMUU5MiAvKiByYXRlLmggaW4gSGVhZGVy
cyAqLywKQEAgLTE1MDc3LDYgKzE1MDkxLDcgQEAKIAkJCQk0MTc5NTNFRTIxNjk4NDIxMDAyODI2
NkIgLyogdnA5X3Byb2ZpbGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDREQ4QkY0MUU0M0MyQjUw
MDYyMUU5MiAvKiB2cTMuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDREQ4QkY2MUU0M0MyQjUwMDYy
MUU5MiAvKiB2cTQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxMDBDREVBMjFDQUQwMzQwMEY5Qjg3
RCAvKiB2cV9zc2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDNEI0QzgxMUU0MzFGOUMwMDI2NTFD
OCAvKiB3YXZfZmlsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUM0QjRDODQxRTQzMUY5QzAwMjY1
MUM4IC8qIHdhdl9oZWFkZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxRTAyQ0JGMjEyNzM1NkEw
MEMyN0NENiAvKiB3ZWFrX3B0ci5oIGluIEhlYWRlcnMgKi8sCkBAIC0xNTgwOSw2ICsxNTgyNCw3
IEBACiAJCQkJNUNERDhEMzMxRTQzQzc5QzAwNjIxRTkyIC8qIGNlbHRfZGVjb2Rlci5jIGluIFNv
dXJjZXMgKi8sCiAJCQkJNUNERDhEMzQxRTQzQzc5QzAwNjIxRTkyIC8qIGNlbHRfZW5jb2Rlci5j
IGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhEMzUxRTQzQzc5QzAwNjIxRTkyIC8qIGNlbHRfbHBj
LmMgaW4gU291cmNlcyAqLywKKwkJCQk0MTAwQ0RGMzIxQ0FEMUY3MDBGOUI4N0QgLyogY2VsdF9s
cGNfc3NlLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEU0MDFFNDNDODBDMDA2MjFFOTIgLyog
Y2hlY2tfY29udHJvbF9pbnB1dC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFNDExRTQzQzgw
QzAwNjIxRTkyIC8qIENORy5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFNDIxRTQzQzgwQzAw
NjIxRTkyIC8qIGNvZGVfc2lnbnMuYyBpbiBTb3VyY2VzICovLApAQCAtMTU4NTYsNyArMTU4NzIs
NiBAQAogCQkJCTVDREQ4RjQ0MUU0M0NCMUUwMDYyMUU5MiAvKiBrMmFfUTE2X0ZJWC5jIGluIFNv
dXJjZXMgKi8sCiAJCQkJNUNERDhENDYxRTQzQzc5QzAwNjIxRTkyIC8qIGtpc3NfZmZ0LmMgaW4g
U291cmNlcyAqLywKIAkJCQk1Q0REOEQ0ODFFNDNDNzlDMDA2MjFFOTIgLyogbGFwbGFjZS5jIGlu
IFNvdXJjZXMgKi8sCi0JCQkJNUNERDhFRUQxRTQzQzlGNjAwNjIxRTkyIC8qIGxldmluc29uZHVy
YmluX0ZMUC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFNUQxRTQzQzgwQzAwNjIxRTkyIC8q
IGxpbjJsb2cuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTVFMUU0M0M4MEMwMDYyMUU5MiAv
KiBsb2cybGluLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEU1RjFFNDNDODBDMDA2MjFFOTIg
LyogTFBfdmFyaWFibGVfY3V0b2ZmLmMgaW4gU291cmNlcyAqLywKQEAgLTE1ODk3LDkgKzE1OTEy
LDEwIEBACiAJCQkJNUNERDhGNDkxRTQzQ0IxRTAwNjIxRTkyIC8qIHBpdGNoX2FuYWx5c2lzX2Nv
cmVfRklYLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEVGNDFFNDNDOUY2MDA2MjFFOTIgLyog
cGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTcyMUU0
M0M4MEMwMDYyMUU5MiAvKiBwaXRjaF9lc3RfdGFibGVzLmMgaW4gU291cmNlcyAqLywKKwkJCQk0
MTAwQ0RGNTIxQ0FEMUY3MDBGOUI4N0QgLyogcGl0Y2hfc3NlLmMgaW4gU291cmNlcyAqLywKKwkJ
CQk0MTAwQ0RGNjIxQ0FEMUY3MDBGOUI4N0QgLyogcGl0Y2hfc3NlMi5jIGluIFNvdXJjZXMgKi8s
CisJCQkJNDEwMENERjIyMUNBRDFGNzAwRjlCODdEIC8qIHBpdGNoX3NzZTRfMS5jIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNUNERDhFNzMxRTQzQzgwQzAwNjIxRTkyIC8qIFBMQy5jIGluIFNvdXJjZXMg
Ki8sCi0JCQkJNUNERDhGNEExRTQzQ0IxRTAwNjIxRTkyIC8qIHByZWZpbHRlcl9GSVguYyBpbiBT
b3VyY2VzICovLAotCQkJCTVDREQ4RUY1MUU0M0M5RjYwMDYyMUU5MiAvKiBwcmVmaWx0ZXJfRkxQ
LmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEY0QjFFNDNDQjFFMDA2MjFFOTIgLyogcHJvY2Vz
c19nYWluc19GSVguYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RUY2MUU0M0M5RjYwMDYyMUU5
MiAvKiBwcm9jZXNzX2dhaW5zX0ZMUC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFNzUxRTQz
QzgwQzAwNjIxRTkyIC8qIHByb2Nlc3NfTkxTRnMuYyBpbiBTb3VyY2VzICovLApAQCAtMTU5Mjcs
OCArMTU5NDMsNiBAQAogCQkJCTVDREQ4RUZCMUU0M0M5RjYwMDYyMUU5MiAvKiBzY2h1cl9GTFAu
YyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTgyMUU0M0M4MEMwMDYyMUU5MiAvKiBzaGVsbF9j
b2Rlci5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFODMxRTQzQzgwQzAwNjIxRTkyIC8qIHNp
Z21fUTE1LmMgaW4gU291cmNlcyAqLywKLQkJCQk1Q0REOEY1MTFFNDNDQjFFMDA2MjFFOTIgLyog
c29sdmVfTFNfRklYLmMgaW4gU291cmNlcyAqLywKLQkJCQk1Q0REOEVGRDFFNDNDOUY2MDA2MjFF
OTIgLyogc29sdmVfTFNfRkxQLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEU4NTFFNDNDODBD
MDA2MjFFOTIgLyogc29ydC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFRkUxRTQzQzlGNjAw
NjIxRTkyIC8qIHNvcnRfRkxQLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEU4NjFFNDNDODBD
MDA2MjFFOTIgLyogc3RlcmVvX2RlY29kZV9wcmVkLmMgaW4gU291cmNlcyAqLywKQEAgLTE1OTUw
LDYgKzE1OTY0LDcgQEAKIAkJCQk1QzVGNDA5QTFFOTc4RkRCMDBEOTQyNzkgLyogVkFEX3NzZS5j
IGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhGNTMxRTQzQ0IxRTAwNjIxRTkyIC8qIHZlY3Rvcl9v
cHNfRklYLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEQ1QjFFNDNDNzlDMDA2MjFFOTIgLyog
dnEuYyBpbiBTb3VyY2VzICovLAorCQkJCTQxMDBDREY0MjFDQUQxRjcwMEY5Qjg3RCAvKiB2cV9z
c2UyLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEU5QTFFNDNDODBDMDA2MjFFOTIgLyogVlFf
V01hdF9FQy5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUM1RjQwOUIxRTk3OEZEQjAwRDk0Mjc5IC8q
IFZRX1dNYXRfRUNfc3NlLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEY1NDFFNDNDQjFFMDA2
MjFFOTIgLyogd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYyBpbiBTb3VyY2VzICovLApAQCAt
MTY3MTYsNiArMTY3MzEsNyBAQAogCQkJCTQxOTI0MTNFMjEyNzM3MjQwMDYzNEZDRiAvKiBscF9y
ZXNpZHVhbC5jYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4N0M1MUU0M0JDMDUwMDYyMUU5MiAv
KiBscGNfYW5hbHlzaXMuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4QkMxMUU0M0MyQjUwMDYy
MUU5MiAvKiBscGNfZW5jb2RlLmMgaW4gU291cmNlcyAqLywKKwkJCQk0MTAwQ0RFNjIxQ0FDRkQw
MDBGOUI4N0QgLyogTFBDX2ZpdC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDg3QzcxRTQzQkMw
NTAwNjIxRTkyIC8qIGxwY19nYWluX3N3Yl90YWJsZXMuYyBpbiBTb3VyY2VzICovLAogCQkJCTQx
NDMzQ0VFMUY3OUIzMzQwMDM4N0I0RCAvKiBscGNfbWFza2luZ19tb2RlbC5jIGluIFNvdXJjZXMg
Ki8sCiAJCQkJNUNERDg3QzkxRTQzQkMwNTAwNjIxRTkyIC8qIGxwY19zaGFwZV9zd2IxMl90YWJs
ZXMuYyBpbiBTb3VyY2VzICovLAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357897</attachid>
            <date>2018-12-20 16:20:45 -0800</date>
            <delta_ts>2018-12-20 17:00:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192867-20181220162042.patch</filename>
            <type>text/plain</type>
            <size>1684861</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5NDY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCBlNTVkYzNhYzZhYWZlMTc5NjZmNzQxOTA1NDg1ZWM3NzcyOTVlNTYzLi5hYjk1
ZDMyYmEyNDRjYTc5YTNiMTk4NWE5YTZlZTdjMDgzOTFmYTljIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxOC0xMi0yMCAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzeW5jIG9wdXMgdG8gTTcyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI4NjcKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL29wdXMueGNjb25maWc6IFVwZGF0ZWQgY29tcGlsYXRpb24gZmxhZy4KKyAgICAgICAg
KiBTb3VyY2UvdGhpcmRfcGFydHkvb3B1czogUmVzeW5jZWQgdG8gQ2hyb21lIE03MiBicmFuY2gu
CisKIDIwMTgtMTItMjAgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFJlc3luYyBsaWJzcnRwIHRvIE03MgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL0NvbmZpZ3VyYXRpb25zL29wdXMueGNjb25maWcgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvb3B1cy54Y2NvbmZpZwppbmRleCBkMDU4Yzc2NDA2
YWI0Mzg3NjU3NjdhZjFhMTg4MzYzOWJhOGZiOWNmLi40NDNkNTVjODVjMzEzZmM2ZTg5OTExY2Qw
NmE0OThlMDE4MjNkNjk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
Q29uZmlndXJhdGlvbnMvb3B1cy54Y2NvbmZpZworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvQ29uZmlndXJhdGlvbnMvb3B1cy54Y2NvbmZpZwpAQCAtMTMsMTEgKzEzLDEyIEBAIElO
U1RBTExfUEFUSCA9IC91c3IvbG9jYWwvbGliOwogUFVCTElDX0hFQURFUlNfRk9MREVSX1BBVEgg
PSAvdXNyL2xvY2FsL2luY2x1ZGUvbGlid2VicnRjOwogVVNFX0hFQURFUk1BUCA9IE5POwogV0FS
TklOR19DRkxBR1MgPSAtV25vLWluY29tcGF0aWJsZS1wb2ludGVyLXR5cGVzICQoaW5oZXJpdGVk
KQotR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9IFZBUl9BUlJBWVMgT1BVU19CVUlMRCBP
UFVTX0VYUE9SVD0gSEFWRV9MUklOVCBIQVZFX0xSSU5URiBPUFVTX1g4Nl9NQVlfSEFWRV9TU0Uy
ICQoaW5oZXJpdGVkKTsKK0dDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSBWQVJfQVJSQVlT
IE9QVVNfQlVJTEQgT1BVU19FWFBPUlQ9IEhBVkVfTFJJTlQgSEFWRV9MUklOVEYgJChpbmhlcml0
ZWQpOwogR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OU1thcmNoPWFybTY0Kl0gPSAkKGluaGVy
aXRlZCkgT1BVU19BUk1fUFJFU1VNRV9BQVJDSDY0X05FT05fSU5UUjsKLUdDQ19QUkVQUk9DRVNT
T1JfREVGSU5JVElPTlNbYXJjaD14ODZfNjRdID0gJChpbmhlcml0ZWQpICQoU1NFNF9GTEFHKTsK
K0dDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlNbYXJjaD14ODZfNjRdID0gJChpbmhlcml0ZWQp
IE9QVVNfWDg2X01BWV9IQVZFX1NTRTIgT1BVU19YODZfUFJFU1VNRV9TU0UyICQoU1NFNF9GTEFH
KTsKIAotRVhDTFVERURfU09VUkNFX0ZJTEVfTkFNRVNbc2RrPWlwaG9uZSpdID0gKl9zc2UuYyAq
X3NzZTIuYzsKK0VYQ0xVREVEX1NPVVJDRV9GSUxFX05BTUVTW3Nkaz1pcGhvbmVzaW11bGF0b3Iq
XSA9ICpfc3NlLmMgKl9zc2U0XzEuYyB4ODZfc2lsa19tYXAuYzsKK0VYQ0xVREVEX1NPVVJDRV9G
SUxFX05BTUVTW3Nkaz1pcGhvbmVvcypdID0gKl9zc2UuYyAqX3NzZTIuYyAqX3NzZTRfMS5jIHg4
Nl9zaWxrX21hcC5jOwogRVhDTFVERURfU09VUkNFX0ZJTEVfTkFNRVNbc2RrPW1hY29zeCpdID0g
JChFWENMVURFRF9TT1VSQ0VfRklMRV9OQU1FU19tYWNvc3hfJChUQVJHRVRfTUFDX09TX1hfVkVS
U0lPTl9NQUpPUikpOwogCiAvLyBUaGUgaU9TIFNpbXVsYXRvciBjYW4ndCB1c2UgU1NFNCBpbnRy
aW5zaWNzLCBidXQgbWFjT1MgY2FuLgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL0JVSUxELmduIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL0JVSUxELmduCmluZGV4IDNiYjVl
MGRmNDk5ZTkyYzI2OWZmODQ1MzYzMzNmYmY3YWE0NWJhMjUuLmI1NGY4NTY4ODIzMGUzYjE3YzFh
ZGZlMDEzMGU4NWZhZDQ5ZTBhMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9CVUlMRC5nbgorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvQlVJTEQuZ24KQEAgLTksMTIg
KzksMTkgQEAgaW1wb3J0KCIvL3Rlc3RpbmcvdGVzdC5nbmkiKQogdXNlX29wdXNfZml4ZWRfcG9p
bnQgPSBjdXJyZW50X2NwdSA9PSAiYXJtIiB8fCBjdXJyZW50X2NwdSA9PSAiYXJtNjQiCiAKICMg
SWYgQVJNIG9wdGltaXphdGlvbnMgc2hhbGwgYmUgdXNlZCB0byBhY2NlbGVyYXRlIHBlcmZvcm1h
bmNlLgotdXNlX29wdXNfYXJtX29wdGltaXphdGlvbiA9IGN1cnJlbnRfY3B1ID09ICJhcm0iCisj
IFRPRE8oc2NvdHRtZyk6IERpc2FibGVkIG9uIEZ1Y2hzaWEgZm9yIG5vdywgc2VlIGh0dHBzOi8v
Y3JidWcuY29tLzc3NTI3Mi4KK3VzZV9vcHVzX2FybV9vcHRpbWl6YXRpb24gPQorICAgIGN1cnJl
bnRfY3B1ID09ICJhcm0iIHx8IChjdXJyZW50X2NwdSA9PSAiYXJtNjQiICYmIGlzX2lvcykKKwor
IyBOYUNsLCB1bmxpa2UgQ2hyb21lLCBkb2Vzbid0IHRhcmdldCBTU0UyIG1pbmltdW0sIHNvIHNr
aXAgb3B0aW1pemF0aW9ucyBmb3IKKyMgdGhlIHNha2Ugb2Ygc2ltcGxpY2l0eS4KK3VzZV9vcHVz
X3g4Nl9vcHRpbWl6YXRpb24gPQorICAgICFpc19uYWNsICYmIChjdXJyZW50X2NwdSA9PSAieDg2
IiB8fCBjdXJyZW50X2NwdSA9PSAieDY0IikKIAogIyBJZiBPUFVTIFJ1biBUaW1lIENQVSBEZXRl
Y3Rpb25zIChSVENEKSBzaGFsbCBiZSB1c2VkLgogIyBCYXNlZCBvbiB0aGUgY29uZGl0aW9ucyBp
biBjZWx0L2FybS9hcm1jcHUuYzoKICMgZGVmaW5lZChfTVNDX1ZFUikgfHwgZGVmaW5lZChfX2xp
bnV4X18pLgotdXNlX29wdXNfcnRjZCA9IGN1cnJlbnRfY3B1ID09ICJhcm0iICYmIChpc193aW4g
fHwgaXNfYW5kcm9pZCB8fCBpc19saW51eCkKK3VzZV9vcHVzX2FybV9ydGNkID0gY3VycmVudF9j
cHUgPT0gImFybSIgJiYgKGlzX3dpbiB8fCBpc19hbmRyb2lkIHx8IGlzX2xpbnV4KQogCiBjb25m
aWcoIm9wdXNfY29uZmlnIikgewogICBpbmNsdWRlX2RpcnMgPSBbICJzcmMvaW5jbHVkZSIgXQpA
QCAtMjQsNiArMzEsMTA2IEBAIGNvbmZpZygib3B1c19jb25maWciKSB7CiAgIH0KIH0KIAorY29u
ZmlnKCJvcHVzX3ByaXZhdGVfY29uZmlnIikgeworICBkZWZpbmVzID0gWworICAgICJPUFVTX0JV
SUxEIiwKKyAgICAiT1BVU19FWFBPUlQ9IiwKKworICAgICMgUHJlZmVyIGFsbG9jYSgpIG92ZXIg
dmFyaWFibGUgbGVuZ3RoIGFycmF5cyB3aGljaCBhcmUgb2Z0ZW4gaW5lZmZpY2llbnQ7CisgICAg
IyB0aGUgb3B1cyBjb2RlIHdpbGwgYXV0b21hdGljYWxseSBoYW5kbGUgdGhpcyBjb3JyZWN0bHkg
cGVyLXBsYXRmb3JtLgorICAgICJVU0VfQUxMT0NBIiwKKyAgICAiSEFWRV9BTExPQ0FfSCIsCisg
IF0KKworICBpbmNsdWRlX2RpcnMgPSBbCisgICAgInNyYyIsCisgICAgInNyYy9jZWx0IiwKKyAg
ICAic3JjL3NpbGsiLAorICBdCisKKyAgY2ZsYWdzID0gW10KKworICBpZiAoaXNfd2luKSB7Cisg
ICAgZGVmaW5lcyArPSBbICJpbmxpbmU9X19pbmxpbmUiIF0KKworICAgIGNmbGFncyArPSBbCisg
ICAgICAiL3dkNDMwNSIsICAjIERpc2FibGUgdHJ1bmNhdGlvbiB3YXJuaW5nIGluIGNlbHQvcGl0
Y2guYyAuCisgICAgICAiL3dkNDMzNCIsICAjIERpc2FibGUgMzItYml0IHNoaWZ0IHdhcm5pbmcg
aW4gc3JjL29wdXNfZW5jb2Rlci5jIC4KKyAgICBdCisgIH0gZWxzZSB7CisgICAgZGVmaW5lcyAr
PSBbCisgICAgICAiSEFWRV9MUklOVCIsCisgICAgICAiSEFWRV9MUklOVEYiLAorICAgIF0KKyAg
fQorCisgIGlmIChpc19kZWJ1ZykgeworICAgICMgVHVybiBvZmYgYSB3YXJuaW5nIGluIG9wdXNf
ZGVjb2Rlci5jIHdoZW4gY29tcGlsaW5nIHdpdGhvdXQgb3B0aW1pemF0aW9uLgorICAgIGRlZmlu
ZXMgKz0gWyAiT1BVU19XSUxMX0JFX1NMT1ciIF0KKyAgfQorCisgIGlmICh1c2Vfb3B1c194ODZf
b3B0aW1pemF0aW9uKSB7CisgICAgZGVmaW5lcyArPSBbCisgICAgICAjIFJ1biBUaW1lIENQVSBE
ZXRlY3Rpb25zIChSVENEKSBpcyBhbHdheXMgZW5hYmxlZCBmb3IgeDg2LgorICAgICAgIk9QVVNf
SEFWRV9SVENEIiwKKyAgICAgICJDUFVfSU5GT19CWV9BU00iLAorCisgICAgICAjIENocm9tZSBh
bHdheXMgdGFyZ2V0cyBTU0UyKy4KKyAgICAgICJPUFVTX1g4Nl9NQVlfSEFWRV9TU0UiLAorICAg
ICAgIk9QVVNfWDg2X01BWV9IQVZFX1NTRTIiLAorICAgICAgIk9QVVNfWDg2X1BSRVNVTUVfU1NF
IiwKKyAgICAgICJPUFVTX1g4Nl9QUkVTVU1FX1NTRTIiLAorCisgICAgICAjIFNvbWUgc3lzdGVt
cyBtYXkgaGF2ZSBTU0U0LjErIHN1cHBvcnQuCisgICAgICAiT1BVU19YODZfTUFZX0hBVkVfU1NF
NF8xIiwKKworICAgICAgIyBBdCBwcmVzZW50IGxpYm9wdXMgaGFzIG5vIEFWWCBmdW5jdGlvbnMg
c28gbm8gc291cmNlcyBhcmUgYWRkIGZvciB0aGlzLAorICAgICAgIyBpZiB5b3Ugc2VlIGxpbmtl
ciBlcnJvcnMgb24gQVZYIGNvZGUgdGhlIHRoaXMgZmxhZyBpcyB3aHkuCisgICAgICAiT1BVU19Y
ODZfTUFZX0hBVkVfQVZYIiwKKyAgICBdCisgIH0KKworICBpZiAodXNlX29wdXNfZml4ZWRfcG9p
bnQpIHsKKyAgICBkZWZpbmVzICs9IFsgIkZJWEVEX1BPSU5UIiBdCisgICAgaW5jbHVkZV9kaXJz
ICs9IFsgInNyYy9zaWxrL2ZpeGVkIiBdCisgIH0gZWxzZSB7CisgICAgaW5jbHVkZV9kaXJzICs9
IFsgInNyYy9zaWxrL2Zsb2F0IiBdCisgIH0KKworICBpZiAodXNlX29wdXNfYXJtX29wdGltaXph
dGlvbikgeworICAgIGlmIChjdXJyZW50X2NwdSA9PSAiYXJtIikgeworICAgICAgZGVmaW5lcyAr
PSBbCisgICAgICAgICJPUFVTX0FSTV9BU00iLAorICAgICAgICAiT1BVU19BUk1fSU5MSU5FX0FT
TSIsCisgICAgICAgICJPUFVTX0FSTV9JTkxJTkVfRURTUCIsCisgICAgICBdCisgICAgfQorCisg
ICAgaWYgKHVzZV9vcHVzX2FybV9ydGNkKSB7CisgICAgICBkZWZpbmVzICs9IFsKKyAgICAgICAg
Ik9QVVNfQVJNX01BWV9IQVZFX0VEU1AiLAorICAgICAgICAiT1BVU19BUk1fTUFZX0hBVkVfTUVE
SUEiLAorICAgICAgICAiT1BVU19IQVZFX1JUQ0QiLAorICAgICAgXQorICAgIH0KKworICAgIGlm
IChhcm1fdXNlX25lb24pIHsKKyAgICAgIGRlZmluZXMgKz0gWworICAgICAgICAiT1BVU19BUk1f
TUFZX0hBVkVfTkVPTiIsCisgICAgICAgICJPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIiLAor
ICAgICAgXQorICAgIH0KKworICAgIGlmIChpc19pb3MgJiYgY3VycmVudF9jcHUgPT0gImFybTY0
IikgeworICAgICAgIyBSdW50aW1lIGRldGVjdGlvbiBvZiBDUFUgZmVhdHVyZXMgbm90IGF2YWls
YWJsZSBvbiBpT1MuCisgICAgICBkZWZpbmVzICs9IFsKKyAgICAgICAgIk9QVVNfQVJNX1BSRVNV
TUVfTkVPTl9JTlRSIiwKKyAgICAgICAgIk9QVVNfQVJNX1BSRVNVTUVfQUFSQ0g2NF9ORU9OX0lO
VFIiLAorICAgICAgXQorICAgIH0KKyAgfQorfQorCiBjb25maWcoIm9wdXNfdGVzdF9jb25maWci
KSB7CiAgIGluY2x1ZGVfZGlycyA9IFsKICAgICAic3JjL2NlbHQiLApAQCAtNDEsNyArMTQ4LDcg
QEAgY29uZmlnKCJvcHVzX3Rlc3RfY29uZmlnIikgewogICB9CiB9CiAKLWlmICh1c2Vfb3B1c19y
dGNkKSB7CitpZiAodXNlX29wdXNfYXJtX3J0Y2QpIHsKICAgYWN0aW9uKCJjb252ZXJ0X3J0Y2Rf
YXNzZW1ibGVyIikgewogICAgIHNjcmlwdCA9ICJjb252ZXJ0X3J0Y2RfYXNzZW1ibGVyLnB5Igog
ICAgIG91dHB1dHMgPSBbCkBAIC01Niw2ICsxNjMsMzEgQEAgaWYgKHVzZV9vcHVzX3J0Y2QpIHsK
ICAgfQogfQogCitpZiAodXNlX29wdXNfeDg2X29wdGltaXphdGlvbikgeworICBzb3VyY2Vfc2V0
KCJvcHVzX3NzZTQxIikgeworICAgIHNvdXJjZXMgPSBbCisgICAgICAic3JjL2NlbHQveDg2L3Bp
dGNoX3NzZTRfMS5jIiwKKyAgICAgICJzcmMvc2lsay94ODYvTlNRX2RlbF9kZWNfc3NlLmMiLAor
ICAgICAgInNyYy9zaWxrL3g4Ni9OU1Ffc3NlLmMiLAorICAgICAgInNyYy9zaWxrL3g4Ni9WQURf
c3NlLmMiLAorICAgIF0KKworICAgIGNvbmZpZ3MgLT0gWyAiLy9idWlsZC9jb25maWcvY29tcGls
ZXI6Y2hyb21pdW1fY29kZSIgXQorICAgIGNvbmZpZ3MgKz0gWyAiLy9idWlsZC9jb25maWcvY29t
cGlsZXI6bm9fY2hyb21pdW1fY29kZSIgXQorICAgIGNvbmZpZ3MgKz0gWworICAgICAgIjpvcHVz
X3ByaXZhdGVfY29uZmlnIiwKKyAgICAgICI6b3B1c19jb25maWciLAorICAgIF0KKworICAgIGlm
ICghaXNfd2luIHx8IGlzX2NsYW5nKSB7CisgICAgICBjZmxhZ3MgPSBbICItbXNzZTQuMSIgXQor
ICAgIH0KKyAgfQorICAjIFRPRE8oZGFsZWN1cnRpcyk6IElmIGxpYm9wdXMgZXZlciBhZGRzIEFW
WCBzdXBwb3J0LCBhZGQgYW4gb3B1c19hdnggYmxvY2suCit9CisKKyMgTm90ZTogRG8gbm90IGFk
ZCBhbnkgZGVmaW5lcyBvciBpbmNsdWRlX2RpcnMgdG8gdGhpcyB0YXJnZXQsIHRob3NlIHNob3Vs
ZCBhbGwKKyMgZ28gaW4gdGhlIG9wdXNfcHJpdmF0ZV9jb25maWcgc28gdGhleSBjYW4gYmUgc2hh
cmVkIHdpdGggaW50cmluc2ljIHRhcmdldHMuCiBzdGF0aWNfbGlicmFyeSgib3B1cyIpIHsKICAg
c291cmNlcyA9IFsKICAgICAic3JjL2NlbHQvX2tpc3NfZmZ0X2d1dHMuaCIsCkBAIC0xMTUsNiAr
MjQ3LDcgQEAgc3RhdGljX2xpYnJhcnkoIm9wdXMiKSB7CiAgICAgInNyYy9zaWxrL0hQX3Zhcmlh
YmxlX2N1dG9mZi5jIiwKICAgICAic3JjL3NpbGsvSW5saW5lcy5oIiwKICAgICAic3JjL3NpbGsv
TFBDX2FuYWx5c2lzX2ZpbHRlci5jIiwKKyAgICAic3JjL3NpbGsvTFBDX2ZpdC5jIiwKICAgICAi
c3JjL3NpbGsvTFBDX2ludl9wcmVkX2dhaW4uYyIsCiAgICAgInNyYy9zaWxrL0xQX3ZhcmlhYmxl
X2N1dG9mZi5jIiwKICAgICAic3JjL3NpbGsvTWFjcm9Db3VudC5oIiwKQEAgLTIyMSw0NyArMzU0
LDE0IEBAIHN0YXRpY19saWJyYXJ5KCJvcHVzIikgewogICAgICJzcmMvc3JjL3RhbnNpZ190YWJs
ZS5oIiwKICAgXQogCi0gIGRlZmluZXMgPSBbCi0gICAgIk9QVVNfQlVJTEQiLAotICAgICJPUFVT
X0VYUE9SVD0iLAotICBdCi0KLSAgaW5jbHVkZV9kaXJzID0gWwotICAgICJzcmMvY2VsdCIsCi0g
ICAgInNyYy9zaWxrIiwKLSAgXQotCiAgIGNvbmZpZ3MgLT0gWyAiLy9idWlsZC9jb25maWcvY29t
cGlsZXI6Y2hyb21pdW1fY29kZSIgXQotICBjb25maWdzICs9IFsgIi8vYnVpbGQvY29uZmlnL2Nv
bXBpbGVyOm5vX2Nocm9taXVtX2NvZGUiIF0KKyAgY29uZmlncyArPSBbCisgICAgIi8vYnVpbGQv
Y29uZmlnL2NvbXBpbGVyOm5vX2Nocm9taXVtX2NvZGUiLAorICAgICI6b3B1c19wcml2YXRlX2Nv
bmZpZyIsCisgIF0KICAgcHVibGljX2NvbmZpZ3MgPSBbICI6b3B1c19jb25maWciIF0KLSAgY2Zs
YWdzID0gW10KLQotICBpZiAoaXNfd2luKSB7Ci0gICAgZGVmaW5lcyArPSBbCi0gICAgICAiVVNF
X0FMTE9DQSIsCi0gICAgICAiaW5saW5lPV9faW5saW5lIiwKLSAgICBdCiAKLSAgICBjZmxhZ3Mg
Kz0gWwotICAgICAgIi93ZDQzMDUiLCAgIyBEaXNhYmxlIHRydW5jYXRpb24gd2FybmluZyBpbiBj
ZWx0L3BpdGNoLmMgLgotICAgICAgIi93ZDQzMzQiLCAgIyBEaXNhYmxlIDMyLWJpdCBzaGlmdCB3
YXJuaW5nIGluIHNyYy9vcHVzX2VuY29kZXIuYyAuCi0gICAgXQotICB9IGVsc2UgewotICAgIGRl
ZmluZXMgKz0gWwotICAgICAgIkhBVkVfTFJJTlQiLAotICAgICAgIkhBVkVfTFJJTlRGIiwKLSAg
ICAgICJWQVJfQVJSQVlTIiwKLSAgICBdCi0gIH0KLQotICBpZiAoaXNfcG9zaXggJiYgIWlzX2Fu
ZHJvaWQpIHsKLSAgICAjIFN1cHByZXNzIGEgd2FybmluZyBnaXZlbiBieSBvcHVzX2RlY29kZXIu
YyB0aGF0IHRlbGxzIHVzCi0gICAgIyBvcHRpbWl6YXRpb25zIGFyZSB0dXJuZWQgb2ZmLgotICAg
IGNmbGFncyArPSBbICItV25vLSNwcmFnbWEtbWVzc2FnZXMiIF0KLSAgfQotCi0gIGlmICghaXNf
ZGVidWcgJiYgaXNfcG9zaXggJiYKLSAgICAgIChjdXJyZW50X2NwdSA9PSAiYXJtIiB8fCBjdXJy
ZW50X2NwdSA9PSAiYXJtNjQiKSkgeworICBpZiAoIWlzX2RlYnVnICYmIChjdXJyZW50X2NwdSA9
PSAiYXJtIiB8fCBjdXJyZW50X2NwdSA9PSAiYXJtNjQiKSkgewogICAgIGNvbmZpZ3MgLT0gWyAi
Ly9idWlsZC9jb25maWcvY29tcGlsZXI6ZGVmYXVsdF9vcHRpbWl6YXRpb24iIF0KIAogICAgICMg
VE9ETyhjcmJ1Zy5jb20vNjIxMzM1KSBSZXdvcmsgdGhpcyBzbyB0aGF0IHdlIGRvbid0IGhhdmUg
dGhlIGNvbmZ1c2lvbgpAQCAtMjY5LDYgKzM2OSwyNiBAQCBzdGF0aWNfbGlicmFyeSgib3B1cyIp
IHsKICAgICBjb25maWdzICs9IFsgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVyOm9wdGltaXplX3Nw
ZWVkIiBdCiAgIH0KIAorICBkZXBzID0gW10KKworICBpZiAodXNlX29wdXNfeDg2X29wdGltaXph
dGlvbikgeworICAgIHNvdXJjZXMgKz0gWworICAgICAgInNyYy9jZWx0L3g4Ni9jZWx0X2xwY19z
c2UuaCIsCisgICAgICAic3JjL2NlbHQveDg2L3BpdGNoX3NzZS5jIiwKKyAgICAgICJzcmMvY2Vs
dC94ODYvcGl0Y2hfc3NlLmgiLAorICAgICAgInNyYy9jZWx0L3g4Ni9waXRjaF9zc2UyLmMiLAor
ICAgICAgInNyYy9jZWx0L3g4Ni92cV9zc2UuaCIsCisgICAgICAic3JjL2NlbHQveDg2L3ZxX3Nz
ZTIuYyIsCisgICAgICAic3JjL2NlbHQveDg2L3g4Nl9jZWx0X21hcC5jIiwKKyAgICAgICJzcmMv
Y2VsdC94ODYveDg2Y3B1LmMiLAorICAgICAgInNyYy9jZWx0L3g4Ni94ODZjcHUuaCIsCisgICAg
ICAic3JjL3NpbGsveDg2L1NpZ1Byb2NfRklYX3NzZS5oIiwKKyAgICAgICJzcmMvc2lsay94ODYv
bWFpbl9zc2UuaCIsCisgICAgICAic3JjL3NpbGsveDg2L3g4Nl9zaWxrX21hcC5jIiwKKyAgICBd
CisgICAgZGVwcyArPSBbICI6b3B1c19zc2U0MSIgXQorICB9CisKICAgaWYgKHVzZV9vcHVzX2Zp
eGVkX3BvaW50KSB7CiAgICAgc291cmNlcyArPSBbCiAgICAgICAic3JjL3NpbGsvZml4ZWQvTFRQ
X2FuYWx5c2lzX2ZpbHRlcl9GSVguYyIsCkBAIC0yODcsMjIgKzQwNywxNiBAQCBzdGF0aWNfbGli
cmFyeSgib3B1cyIpIHsKICAgICAgICJzcmMvc2lsay9maXhlZC9tYWluX0ZJWC5oIiwKICAgICAg
ICJzcmMvc2lsay9maXhlZC9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVguYyIsCiAgICAgICAic3Jj
L3NpbGsvZml4ZWQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYyIsCi0gICAgICAic3JjL3NpbGsv
Zml4ZWQvcHJlZmlsdGVyX0ZJWC5jIiwKICAgICAgICJzcmMvc2lsay9maXhlZC9wcm9jZXNzX2dh
aW5zX0ZJWC5jIiwKICAgICAgICJzcmMvc2lsay9maXhlZC9yZWd1bGFyaXplX2NvcnJlbGF0aW9u
c19GSVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvcmVzaWR1YWxfZW5lcmd5MTZfRklYLmMi
LAogICAgICAgInNyYy9zaWxrL2ZpeGVkL3Jlc2lkdWFsX2VuZXJneV9GSVguYyIsCiAgICAgICAi
c3JjL3NpbGsvZml4ZWQvc2NodXI2NF9GSVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvc2No
dXJfRklYLmMiLAotICAgICAgInNyYy9zaWxrL2ZpeGVkL3NvbHZlX0xTX0ZJWC5jIiwKICAgICAg
ICJzcmMvc2lsay9maXhlZC9zdHJ1Y3RzX0ZJWC5oIiwKICAgICAgICJzcmMvc2lsay9maXhlZC92
ZWN0b3Jfb3BzX0ZJWC5jIiwKICAgICAgICJzcmMvc2lsay9maXhlZC93YXJwZWRfYXV0b2NvcnJl
bGF0aW9uX0ZJWC5jIiwKICAgICBdCi0KLSAgICBkZWZpbmVzICs9IFsgIkZJWEVEX1BPSU5UIiBd
Ci0KLSAgICBpbmNsdWRlX2RpcnMgKz0gWyAic3JjL3NpbGsvZml4ZWQiIF0KICAgfSBlbHNlIHsK
ICAgICBzb3VyY2VzICs9IFsKICAgICAgICJzcmMvc2lsay9mbG9hdC9MUENfYW5hbHlzaXNfZmls
dGVyX0ZMUC5jIiwKQEAgLTMyMywyNSArNDM3LDIwIEBAIHN0YXRpY19saWJyYXJ5KCJvcHVzIikg
ewogICAgICAgInNyYy9zaWxrL2Zsb2F0L2ZpbmRfcHJlZF9jb2Vmc19GTFAuYyIsCiAgICAgICAi
c3JjL3NpbGsvZmxvYXQvaW5uZXJfcHJvZHVjdF9GTFAuYyIsCiAgICAgICAic3JjL3NpbGsvZmxv
YXQvazJhX0ZMUC5jIiwKLSAgICAgICJzcmMvc2lsay9mbG9hdC9sZXZpbnNvbmR1cmJpbl9GTFAu
YyIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvbWFpbl9GTFAuaCIsCiAgICAgICAic3JjL3NpbGsv
ZmxvYXQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0
L3BpdGNoX2FuYWx5c2lzX2NvcmVfRkxQLmMiLAotICAgICAgInNyYy9zaWxrL2Zsb2F0L3ByZWZp
bHRlcl9GTFAuYyIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvcHJvY2Vzc19nYWluc19GTFAuYyIs
CiAgICAgICAic3JjL3NpbGsvZmxvYXQvcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRkxQLmMiLAog
ICAgICAgInNyYy9zaWxrL2Zsb2F0L3Jlc2lkdWFsX2VuZXJneV9GTFAuYyIsCiAgICAgICAic3Jj
L3NpbGsvZmxvYXQvc2NhbGVfY29weV92ZWN0b3JfRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zs
b2F0L3NjYWxlX3ZlY3Rvcl9GTFAuYyIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvc2NodXJfRkxQ
LmMiLAotICAgICAgInNyYy9zaWxrL2Zsb2F0L3NvbHZlX0xTX0ZMUC5jIiwKICAgICAgICJzcmMv
c2lsay9mbG9hdC9zb3J0X0ZMUC5jIiwKICAgICAgICJzcmMvc2lsay9mbG9hdC9zdHJ1Y3RzX0ZM
UC5oIiwKICAgICAgICJzcmMvc2lsay9mbG9hdC93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZMUC5j
IiwKICAgICAgICJzcmMvc2lsay9mbG9hdC93cmFwcGVyc19GTFAuYyIsCiAgICAgXQotCi0gICAg
aW5jbHVkZV9kaXJzICs9IFsgInNyYy9zaWxrL2Zsb2F0IiBdCiAgIH0KIAogICBpZiAodXNlX29w
dXNfYXJtX29wdGltaXphdGlvbikgewpAQCAtMzU5LDM5ICs0NjgsMzQgQEAgc3RhdGljX2xpYnJh
cnkoIm9wdXMiKSB7CiAgICAgICAic3JjL3NpbGsvYXJtL21hY3Jvc19hcm12NWUuaCIsCiAgICAg
XQogCi0gICAgZGVmaW5lcyArPSBbCi0gICAgICAiT1BVU19BUk1fQVNNIiwKLSAgICAgICJPUFVT
X0FSTV9JTkxJTkVfQVNNIiwKLSAgICAgICJPUFVTX0FSTV9JTkxJTkVfRURTUCIsCi0gICAgXQot
Ci0gICAgaWYgKHVzZV9vcHVzX3J0Y2QpIHsKKyAgICBpZiAodXNlX29wdXNfYXJtX3J0Y2QpIHsK
ICAgICAgIHNvdXJjZXMgKz0gWwogICAgICAgICAiJHRhcmdldF9nZW5fZGlyL2NlbHRfcGl0Y2hf
eGNvcnJfYXJtX2dudS5TIiwKICAgICAgICAgInNyYy9jZWx0L2FybS9hcm1fY2VsdF9tYXAuYyIs
CiAgICAgICAgICJzcmMvY2VsdC9hcm0vYXJtY3B1LmMiLAogICAgICAgICAic3JjL2NlbHQvYXJt
L2FybWNwdS5oIiwKLSAgICAgICAgInNyYy9jZWx0L2FybS9jZWx0X25lb25faW50ci5jIiwKICAg
ICAgICAgInNyYy9jZWx0L2FybS9mZnRfYXJtLmgiLAogICAgICAgICAic3JjL2NlbHQvYXJtL21k
Y3RfYXJtLmgiLAogICAgICAgICAic3JjL2NlbHQvYXJtL3BpdGNoX2FybS5oIiwKLSAgICAgICAg
InNyYy9zaWxrL2FybS9OU1FfbmVvbi5jIiwKLSAgICAgICAgInNyYy9zaWxrL2FybS9OU1FfbmVv
bi5oIiwKICAgICAgICAgInNyYy9zaWxrL2FybS9hcm1fc2lsa19tYXAuYyIsCiAgICAgICBdCisg
ICAgICBkZXBzICs9IFsgIjpjb252ZXJ0X3J0Y2RfYXNzZW1ibGVyIiBdCisgICAgfQogCi0gICAg
ICBpbmNsdWRlX2RpcnMgKz0gWyAic3JjIiBdCi0KLSAgICAgIGRlZmluZXMgKz0gWwotICAgICAg
ICAiT1BVU19BUk1fTUFZX0hBVkVfRURTUCIsCi0gICAgICAgICJPUFVTX0FSTV9NQVlfSEFWRV9N
RURJQSIsCi0gICAgICAgICJPUFVTX0FSTV9NQVlfSEFWRV9ORU9OIiwKLSAgICAgICAgIk9QVVNf
QVJNX01BWV9IQVZFX05FT05fSU5UUiIsCi0gICAgICAgICJPUFVTX0hBVkVfUlRDRCIsCi0gICAg
ICBdCi0KLSAgICAgIGRlcHMgPSBbCi0gICAgICAgICI6Y29udmVydF9ydGNkX2Fzc2VtYmxlciIs
CisgICAgaWYgKGFybV91c2VfbmVvbikgeworICAgICAgc291cmNlcyArPSBbCisgICAgICAgICJz
cmMvY2VsdC9hcm0vY2VsdF9uZW9uX2ludHIuYyIsCisgICAgICAgICJzcmMvY2VsdC9hcm0vcGl0
Y2hfbmVvbl9pbnRyLmMiLAorICAgICAgICAic3JjL3NpbGsvYXJtL0xQQ19pbnZfcHJlZF9nYWlu
X2FybS5oIiwKKyAgICAgICAgInNyYy9zaWxrL2FybS9MUENfaW52X3ByZWRfZ2Fpbl9uZW9uX2lu
dHIuYyIsCisgICAgICAgICJzcmMvc2lsay9hcm0vTlNRX2RlbF9kZWNfYXJtLmgiLAorICAgICAg
ICAic3JjL3NpbGsvYXJtL05TUV9kZWxfZGVjX25lb25faW50ci5jIiwKKyAgICAgICAgInNyYy9z
aWxrL2FybS9OU1FfbmVvbi5jIiwKKyAgICAgICAgInNyYy9zaWxrL2FybS9OU1FfbmVvbi5oIiwK
KyAgICAgICAgInNyYy9zaWxrL2FybS9iaXF1YWRfYWx0X2FybS5oIiwKKyAgICAgICAgInNyYy9z
aWxrL2FybS9iaXF1YWRfYWx0X25lb25faW50ci5jIiwKKyAgICAgICAgInNyYy9zaWxrL2ZpeGVk
L2FybS93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9hcm0uaCIsCisgICAgICAgICJzcmMvc2ls
ay9maXhlZC9hcm0vd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfbmVvbl9pbnRyLmMiLAogICAg
ICAgXQogICAgIH0KICAgfQpAQCAtNDEwLDcgKzUxNCw2IEBAIGV4ZWN1dGFibGUoIm9wdXNfY29t
cGFyZSIpIHsKIAogICBkZXBzID0gWwogICAgICI6b3B1cyIsCi0gICAgIi8vYnVpbGQvY29uZmln
L3Nhbml0aXplcnM6ZGVwcyIsCiAgICAgIi8vYnVpbGQvd2luOmRlZmF1bHRfZXhlX21hbmlmZXN0
IiwKICAgXQogfQpAQCAtNDI4LDcgKzUzMSw2IEBAIGV4ZWN1dGFibGUoIm9wdXNfZGVtbyIpIHsK
IAogICBkZXBzID0gWwogICAgICI6b3B1cyIsCi0gICAgIi8vYnVpbGQvY29uZmlnL3Nhbml0aXpl
cnM6ZGVwcyIsCiAgICAgIi8vYnVpbGQvd2luOmRlZmF1bHRfZXhlX21hbmlmZXN0IiwKICAgXQog
fQpAQCAtNDUxLDYgKzU1Myw3IEBAIHRlc3QoInRlc3Rfb3B1c19hcGkiKSB7CiAKIHRlc3QoInRl
c3Rfb3B1c19lbmNvZGUiKSB7CiAgIHNvdXJjZXMgPSBbCisgICAgInNyYy90ZXN0cy9vcHVzX2Vu
Y29kZV9yZWdyZXNzaW9ucy5jIiwKICAgICAic3JjL3Rlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYyIs
CiAgIF0KIApAQCAtNDczLDcgKzU3Niw3IEBAIGNvbmZpZygidGVzdF9vcHVzX2RlY29kZV9jb25m
aWciKSB7CiAgICMgbWFya2VkIGFzIHJlcXVpcmluZyBhIG5vbi1udWxsIHZhbHVlIGJ5IHRoZSBu
b25udWxsIGZ1bmN0aW9uIGF0dHJpYnV0ZSwKICAgIyBhbmQgZXhwZWN0cyBvcHVzX2RlY29kZSgp
IHRvIGZhaWwuIERpc2FibGUgdGhlIC1Xbm9ubnVsbCBvcHRpb24gdG8gYXZvaWQKICAgIyBhIGNv
bXBpbGF0aW9uIGVycm9yIGlmIC1XZXJyb3IgaXMgc3BlY2lmaWVkLgotICBpZiAoaXNfcG9zaXgp
IHsKKyAgaWYgKGlzX2NsYW5nKSB7CiAgICAgY2ZsYWdzID0gWyAiLVduby1ub25udWxsIiBdCiAg
IH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9ERVBTIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL0RFUFMKaW5kZXggN2U1YmQyNmVlNjkyOGFjYzk2ZTAzNTJhNDU3NjU2
MmVlYTA2MTI4ZS4uZmZmY2FhNWZmYzM1MjU4MjdkNGM4N2IyMmVhNzIyY2U5YzAyM2E4ZiAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL0RFUFMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL0RFUFMKQEAgLTEsNSArMSw3IEBACiBpbmNsdWRlX3J1bGVzID0gWwogICAiK2Fy
bSIsCisgICIrY2VsdCIsCisgICIrZml4ZWQiLAogICAiK21pcHMiLAogICAiK3g4NiIsCiBdCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvUkVBRE1FLmNocm9taXVtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL1JFQURNRS5jaHJvbWl1bQppbmRleCA3MTExZDAyOGMwZDZmNjcw
MjkxZGM3MTE1YzllNWM2YjM4YzNkZThmLi44YmQzMTk3YWYyNzMyMDAwYzM1MWRlM2Y3OTg2MWYz
ZTk4MjRlZGQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvUkVBRE1FLmNocm9taXVtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9SRUFETUUuY2hyb21pdW0KQEAgLTEs
NiArMSw2IEBACiBOYW1lOiBvcHVzCi1VUkw6IGh0dHA6Ly9kb3dubG9hZHMueGlwaC5vcmcvcmVs
ZWFzZXMvb3B1cy9vcHVzLTEuMS4zLnRhci5negotVmVyc2lvbjogMS4xLjMKK1VSTDogaHR0cHM6
Ly9naXQueGlwaC5vcmcvP3A9b3B1cy5naXQ7YT1zbmFwc2hvdDtoPTNmZTc0NGVhMDRmZGNjNDE4
ZmI4NWMyYzEzM2QxMzM3MmViYjAxOWI7c2Y9dGd6CitWZXJzaW9uOiAzZmU3NDRlYTA0ZmRjYzQx
OGZiODVjMmMxMzNkMTMzNzJlYmIwMTliCiBMaWNlbnNlOiBCU0QKIExpY2Vuc2UgRmlsZTogc3Jj
L0NPUFlJTkcKIFNlY3VyaXR5IENyaXRpY2FsOiB5ZXMKQEAgLTE0LDcgKzE0LDkgQEAgZW5jb2Rp
bmcvZGVjb2RpbmcuCiBMb2NhbCBjaGFuZ2VzOgogKiBjb3B5IC5naXRpZ25vcmUgZnJvbSBodHRw
czovL2dpdC54aXBoLm9yZy8/cD1vcHVzLmdpdDthPXRyZWUKICogc2V0ICd4JyBmbGFnczogImNo
bW9kIDc1MCB3aW4zMi9nZW52ZXJzaW9uLmJhdCIKLSogQXBwbHkgcGF0Y2hlcyBmcm9tCi0gIGh0
dHBzOi8vZ2l0LnhpcGgub3JnLz9wPW9wdXMuZ2l0O2E9Y29tbWl0O2g9NzllOGY1MjdiMDM0NGIw
ODk3YTY1YmUzNWU3N2Y3ODg1YmQ5OTQwOQotICBodHRwczovL2dpdC54aXBoLm9yZy8/cD1vcHVz
LmdpdDthPWNvbW1pdGRpZmY7aD1lNWFkMjYxNjk1MDJjMWYwYjA2NzkxNmU3ODJjMmIzZmRlYTZm
YmE5Ci0gIGh0dHBzOi8vZ2l0LnhpcGgub3JnLz9wPW9wdXMuZ2l0O2E9Y29tbWl0ZGlmZjtoPTVk
YTA0OThhM2UyMzMzOWFhY2ViYTY1OWE5N2U5MzUwMzFkNTY5M2QKKyogQXBwbHkgaHR0cHM6Ly9n
aXQueGlwaC5vcmcvP3A9b3B1cy5naXQ7YT1jb21taXRkaWZmO2g9NDY1NjA1MzRmY2I1NzEwYTg5
NGEzNDFjMmY5NTI2ZGI1OGZkNzA4NyNwYXRjaDEKKyogQXBwbHkgaHR0cHM6Ly9naXRodWIuY29t
L3hpcGgvb3B1cy9wdWxsLzczCisqIEFwcGx5IGh0dHBzOi8vZ2l0aHViLmNvbS94aXBoL29wdXMv
cHVsbC84NworKiBNYWtlIHN1cmUgSEJfZ2FpbiBpcyBub3QgTmFOIGluIGFuIGF0dGVtcHQgdG8g
Zml4IGNocm9taXVtOjgyNjkxNAorKiBTYXR1cmF0ZSBhZGQgdG8gYXZvaWQgaW50IG92ZXJmbG93
IHRvIGZpeCBjaHJvbWl1bTo4NDI1MjguIFRoaXMgc2hvdWxkIGJlCisgIHJldmVydGVkIHdoZW4g
dXBkYXRpbmcgdG8gdjEuMwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL2NvbnZlcnRfcnRjZF9hc3NlbWJsZXIucHkgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvY29udmVydF9y
dGNkX2Fzc2VtYmxlci5weQppbmRleCBkYzYzYzY0MWY1N2Y0YzdjZTQ5YmRhN2YzMmJmOTc2Zjg3
MjI1ZWM3Li4yZjYwNzFmNDEyMTg2MWJjMGQwNzk4OTM1NzJkZDcwOTJhYzFjMDQyIDEwMDc1NQot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
Y29udmVydF9ydGNkX2Fzc2VtYmxlci5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvY29udmVydF9ydGNkX2Fzc2VtYmxlci5weQpAQCAt
NDUsNyArNDUsNiBAQCBkZWYgbWFpbihhcmd2KToKICAgICAgICAgICdzZWQgInMvT1BVU19BUk1f
TUFZX0hBVkVfW0EtWl0qLzEvZyIgfCAnCiAgICAgICAgICAnc2VkICIvLmluY2x1ZGUvZCIgJwog
ICAgICAgICAgJz4gJXMnKSAlIChhcm0yZ251X3NjcmlwdCwgaW5wdXRfZmlsZSwgb3V0cHV0X2Zp
bGUpCi0gIHByaW50IGNtZAogICByZXR1cm4gb3Muc3lzdGVtKGNtZCkKIAogaWYgX19uYW1lX18g
PT0gJ19fbWFpbl9fJzoKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvLmdpdGlnbm9yZSBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvLmdpdGlnbm9yZQpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4zMzEyN2M5ZmUwYTY2M2I2MDY2OTUzMGI3YmRiNjVhNjdkMWJlY2E1Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy8uZ2l0aWdub3JlCkBAIC0wLDAgKzEsODMgQEAKK0RveHlmaWxlCitNYWtlZmlsZQor
TWFrZWZpbGUuaW4KK1RBR1MKK2FjbG9jYWwubTQKK2F1dG9tNHRlLmNhY2hlCisqLmtkZXZlbG9w
LnBjcworKi5rZGV2c2VzCitjb21waWxlCitjb25maWcuZ3Vlc3MKK2NvbmZpZy5oCitjb25maWcu
aC5pbgorY29uZmlnLmxvZworY29uZmlnLnN0YXR1cworY29uZmlnLnN1YgorY29uZmlndXJlCitk
ZXBjb21wCitJTlNUQUxMCitpbnN0YWxsLXNoCisuZGVwcworLmxpYnMKKy5kaXJzdGFtcAorKi5h
CisqLmV4ZQorKi5sYQorKi1nbnUuUwordGVzdGNlbHQKK2xpYnRvb2wKK2x0bWFpbi5zaAorbWlz
c2luZworbTQvbGlidG9vbC5tNAorbTQvbHRvcHRpb25zLm00CittNC9sdHN1Z2FyLm00CittNC9s
dHZlcnNpb24ubTQKK200L2x0fm9ic29sZXRlLm00CitvcHVzX2NvbXBhcmUKK29wdXNfZGVtbwor
cmVwYWNrZXRpemVyX2RlbW8KK3N0YW1wLWgxCit0ZXN0LWRyaXZlcgorKi5zdyoKKyoubworKi5s
bworKi5wYworKi50YXIuZ3oKKyp+Cit0ZXN0cy8qdGVzdAordGVzdHMvdGVzdF9vcHVzX2FwaQor
dGVzdHMvdGVzdF9vcHVzX2RlY29kZQordGVzdHMvdGVzdF9vcHVzX2VuY29kZQordGVzdHMvdGVz
dF9vcHVzX3BhZGRpbmcKK2NlbHQvYXJtL2FybW9wdHMucworY2VsdC9kdW1wX21vZGVzL2R1bXBf
bW9kZXMKK2NlbHQvdGVzdHMvdGVzdF91bml0X2N3cnMzMgorY2VsdC90ZXN0cy90ZXN0X3VuaXRf
ZGZ0CitjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9lbnRyb3B5CitjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9s
YXBsYWNlCitjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tYXRob3BzCitjZWx0L3Rlc3RzL3Rlc3RfdW5p
dF9tZGN0CitjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9yb3RhdGlvbgorY2VsdC90ZXN0cy90ZXN0X3Vu
aXRfdHlwZXMKK2RvYy9kb3h5Z2VuX3NxbGl0ZTMuZGIKK2RvYy9kb3h5Z2VuLWJ1aWxkLnN0YW1w
Citkb2MvaHRtbAorZG9jL2xhdGV4Citkb2MvbWFuCitwYWNrYWdlX3ZlcnNpb24KK3ZlcnNpb24u
aAorY2VsdC9EZWJ1ZworY2VsdC9SZWxlYXNlCitjZWx0L3g2NAorc2lsay9EZWJ1Zworc2lsay9S
ZWxlYXNlCitzaWxrL3g2NAorc2lsay9maXhlZC9EZWJ1Zworc2lsay9maXhlZC9SZWxlYXNlCitz
aWxrL2ZpeGVkL3g2NAorc2lsay9mbG9hdC9EZWJ1Zworc2lsay9mbG9hdC9SZWxlYXNlCitzaWxr
L2Zsb2F0L3g2NAorc3JjL0RlYnVnCitzcmMvUmVsZWFzZQorc3JjL3g2NApkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9M
SUNFTlNFX1BMRUFTRV9SRUFELnR4dCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTElDRU5TRV9QTEVBU0VfUkVBRC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYmM4OGVmYTZjYjA1Nzg5YTZhNmU2OTc1NzdhZTZkOGU1NTMyZTVkZgotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvTElDRU5TRV9QTEVBU0VfUkVBRC50eHQKQEAgLTAsMCArMSwyMiBAQAorQ29udHJpYnV0
aW9ucyB0byB0aGUgY29sbGFib3JhdGlvbiBzaGFsbCBub3QgYmUgY29uc2lkZXJlZCBjb25maWRl
bnRpYWwuCisKK0VhY2ggY29udHJpYnV0b3IgcmVwcmVzZW50cyBhbmQgd2FycmFudHMgdGhhdCBp
dCBoYXMgdGhlIHJpZ2h0IGFuZAorYXV0aG9yaXR5IHRvIGxpY2Vuc2UgY29weXJpZ2h0IGluIGl0
cyBjb250cmlidXRpb25zIHRvIHRoZSBjb2xsYWJvcmF0aW9uLgorCitFYWNoIGNvbnRyaWJ1dG9y
IGFncmVlcyB0byBsaWNlbnNlIHRoZSBjb3B5cmlnaHQgaW4gdGhlIGNvbnRyaWJ1dGlvbnMKK3Vu
ZGVyIHRoZSBNb2RpZmllZCAoMi1jbGF1c2Ugb3IgMy1jbGF1c2UpIEJTRCBMaWNlbnNlIG9yIHRo
ZSBDbGVhciBCU0QgTGljZW5zZS4KKworUGxlYXNlIHNlZSB0aGUgSVBSIHN0YXRlbWVudHMgc3Vi
bWl0dGVkIHRvIHRoZSBJRVRGIGZvciB0aGUgY29tcGxldGUKK3BhdGVudCBsaWNlbnNpbmcgZGV0
YWlsczoKKworWGlwaC5PcmcgRm91bmRhdGlvbjoKK2h0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5v
cmcvaXByLzE1MjQvCisKK01pY3Jvc29mdCBDb3Jwb3JhdGlvbjoKK2h0dHBzOi8vZGF0YXRyYWNr
ZXIuaWV0Zi5vcmcvaXByLzE5MTQvCisKK1NreXBlIExpbWl0ZWQ6CitodHRwczovL2RhdGF0cmFj
a2VyLmlldGYub3JnL2lwci8xNjAyLworCitCcm9hZGNvbSBDb3Jwb3JhdGlvbjoKK2h0dHBzOi8v
ZGF0YXRyYWNrZXIuaWV0Zi5vcmcvaXByLzE1MjYvCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLmFtIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9N
YWtlZmlsZS5hbQppbmRleCA3YTY5MTE0MGU1NTNkNDU1NGM2ZWMyYjdjYmFjMDI5OGUzZDE2YjJj
Li41YjU3YjMzNzJlNTZjY2E1OTljNGQ0NWFhYTAxZmUzZDM3MTg2MjMyIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01h
a2VmaWxlLmFtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvTWFrZWZpbGUuYW0KQEAgLTIxLDYgKzIxLDkgQEAgU0lMS19TT1VSQ0VT
ICs9ICQoU0lMS19TT1VSQ0VTX0ZJWEVEKQogaWYgSEFWRV9TU0U0XzEKIFNJTEtfU09VUkNFUyAr
PSAkKFNJTEtfU09VUkNFU19TU0U0XzEpICQoU0lMS19TT1VSQ0VTX0ZJWEVEX1NTRTRfMSkKIGVu
ZGlmCitpZiBIQVZFX0FSTV9ORU9OX0lOVFIKK1NJTEtfU09VUkNFUyArPSAkKFNJTEtfU09VUkNF
U19GSVhFRF9BUk1fTkVPTl9JTlRSKQorZW5kaWYKIGVsc2UKIFNJTEtfU09VUkNFUyArPSAkKFNJ
TEtfU09VUkNFU19GTE9BVCkKIGlmIEhBVkVfU1NFNF8xCkBAIC04NCw5ICs4NywzNiBAQCBwa2dp
bmNsdWRlX0hFQURFUlMgPSBpbmNsdWRlL29wdXMuaCBpbmNsdWRlL29wdXNfbXVsdGlzdHJlYW0u
aCBpbmNsdWRlL29wdXNfdHlwZQogbm9pbnN0X0hFQURFUlMgPSAkKE9QVVNfSEVBRCkgJChTSUxL
X0hFQUQpICQoQ0VMVF9IRUFEKQogCiBpZiBFWFRSQV9QUk9HUkFNUwotbm9pbnN0X1BST0dSQU1T
ID0gb3B1c19kZW1vIHJlcGFja2V0aXplcl9kZW1vIG9wdXNfY29tcGFyZSB0ZXN0cy90ZXN0X29w
dXNfYXBpIHRlc3RzL3Rlc3Rfb3B1c19lbmNvZGUgdGVzdHMvdGVzdF9vcHVzX2RlY29kZSB0ZXN0
cy90ZXN0X29wdXNfcGFkZGluZyBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9jd3JzMzIgY2VsdC90ZXN0
cy90ZXN0X3VuaXRfZGZ0IGNlbHQvdGVzdHMvdGVzdF91bml0X2VudHJvcHkgY2VsdC90ZXN0cy90
ZXN0X3VuaXRfbGFwbGFjZSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tYXRob3BzIGNlbHQvdGVzdHMv
dGVzdF91bml0X21kY3QgY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24gY2VsdC90ZXN0cy90
ZXN0X3VuaXRfdHlwZXMKLQotVEVTVFMgPSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF90eXBlcyBjZWx0
L3Rlc3RzL3Rlc3RfdW5pdF9tYXRob3BzIGNlbHQvdGVzdHMvdGVzdF91bml0X2VudHJvcHkgY2Vs
dC90ZXN0cy90ZXN0X3VuaXRfbGFwbGFjZSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9kZnQgY2VsdC90
ZXN0cy90ZXN0X3VuaXRfbWRjdCBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9yb3RhdGlvbiBjZWx0L3Rl
c3RzL3Rlc3RfdW5pdF9jd3JzMzIgdGVzdHMvdGVzdF9vcHVzX2FwaSB0ZXN0cy90ZXN0X29wdXNf
ZGVjb2RlIHRlc3RzL3Rlc3Rfb3B1c19lbmNvZGUgdGVzdHMvdGVzdF9vcHVzX3BhZGRpbmcKK25v
aW5zdF9QUk9HUkFNUyA9IGNlbHQvdGVzdHMvdGVzdF91bml0X2N3cnMzMiBcCisgICAgICAgICAg
ICAgICAgICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9kZnQgXAorICAgICAgICAgICAgICAgICAgY2Vs
dC90ZXN0cy90ZXN0X3VuaXRfZW50cm9weSBcCisgICAgICAgICAgICAgICAgICBjZWx0L3Rlc3Rz
L3Rlc3RfdW5pdF9sYXBsYWNlIFwKKyAgICAgICAgICAgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91
bml0X21hdGhvcHMgXAorICAgICAgICAgICAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWRj
dCBcCisgICAgICAgICAgICAgICAgICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9yb3RhdGlvbiBcCisg
ICAgICAgICAgICAgICAgICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF90eXBlcyBcCisgICAgICAgICAg
ICAgICAgICBvcHVzX2NvbXBhcmUgXAorICAgICAgICAgICAgICAgICAgb3B1c19kZW1vIFwKKyAg
ICAgICAgICAgICAgICAgIHJlcGFja2V0aXplcl9kZW1vIFwKKyAgICAgICAgICAgICAgICAgIHNp
bGsvdGVzdHMvdGVzdF91bml0X0xQQ19pbnZfcHJlZF9nYWluIFwKKyAgICAgICAgICAgICAgICAg
IHRlc3RzL3Rlc3Rfb3B1c19hcGkgXAorICAgICAgICAgICAgICAgICAgdGVzdHMvdGVzdF9vcHVz
X2RlY29kZSBcCisgICAgICAgICAgICAgICAgICB0ZXN0cy90ZXN0X29wdXNfZW5jb2RlIFwKKyAg
ICAgICAgICAgICAgICAgIHRlc3RzL3Rlc3Rfb3B1c19wYWRkaW5nCisKK1RFU1RTID0gY2VsdC90
ZXN0cy90ZXN0X3VuaXRfY3dyczMyIFwKKyAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0
IFwKKyAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfZW50cm9weSBcCisgICAgICAgIGNlbHQv
dGVzdHMvdGVzdF91bml0X2xhcGxhY2UgXAorICAgICAgICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9t
YXRob3BzIFwKKyAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWRjdCBcCisgICAgICAgIGNl
bHQvdGVzdHMvdGVzdF91bml0X3JvdGF0aW9uIFwKKyAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3Vu
aXRfdHlwZXMgXAorICAgICAgICBzaWxrL3Rlc3RzL3Rlc3RfdW5pdF9MUENfaW52X3ByZWRfZ2Fp
biBcCisgICAgICAgIHRlc3RzL3Rlc3Rfb3B1c19hcGkgXAorICAgICAgICB0ZXN0cy90ZXN0X29w
dXNfZGVjb2RlIFwKKyAgICAgICAgdGVzdHMvdGVzdF9vcHVzX2VuY29kZSBcCisgICAgICAgIHRl
c3RzL3Rlc3Rfb3B1c19wYWRkaW5nCiAKIG9wdXNfZGVtb19TT1VSQ0VTID0gc3JjL29wdXNfZGVt
by5jCiAKQEAgLTEwMiw3ICsxMzIsNyBAQCBvcHVzX2NvbXBhcmVfTERBREQgPSAkKExJQk0pCiB0
ZXN0c190ZXN0X29wdXNfYXBpX1NPVVJDRVMgPSB0ZXN0cy90ZXN0X29wdXNfYXBpLmMgdGVzdHMv
dGVzdF9vcHVzX2NvbW1vbi5oCiB0ZXN0c190ZXN0X29wdXNfYXBpX0xEQUREID0gbGlib3B1cy5s
YSAkKE5FMTBfTElCUykgJChMSUJNKQogCi10ZXN0c190ZXN0X29wdXNfZW5jb2RlX1NPVVJDRVMg
PSB0ZXN0cy90ZXN0X29wdXNfZW5jb2RlLmMgdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCit0ZXN0
c190ZXN0X29wdXNfZW5jb2RlX1NPVVJDRVMgPSB0ZXN0cy90ZXN0X29wdXNfZW5jb2RlLmMgdGVz
dHMvb3B1c19lbmNvZGVfcmVncmVzc2lvbnMuYyB0ZXN0cy90ZXN0X29wdXNfY29tbW9uLmgKIHRl
c3RzX3Rlc3Rfb3B1c19lbmNvZGVfTERBREQgPSBsaWJvcHVzLmxhICQoTkUxMF9MSUJTKSAkKExJ
Qk0pCiAKIHRlc3RzX3Rlc3Rfb3B1c19kZWNvZGVfU09VUkNFUyA9IHRlc3RzL3Rlc3Rfb3B1c19k
ZWNvZGUuYyB0ZXN0cy90ZXN0X29wdXNfY29tbW9uLmgKQEAgLTExMSwxMSArMTQxLDIwIEBAIHRl
c3RzX3Rlc3Rfb3B1c19kZWNvZGVfTERBREQgPSBsaWJvcHVzLmxhICQoTkUxMF9MSUJTKSAkKExJ
Qk0pCiB0ZXN0c190ZXN0X29wdXNfcGFkZGluZ19TT1VSQ0VTID0gdGVzdHMvdGVzdF9vcHVzX3Bh
ZGRpbmcuYyB0ZXN0cy90ZXN0X29wdXNfY29tbW9uLmgKIHRlc3RzX3Rlc3Rfb3B1c19wYWRkaW5n
X0xEQUREID0gbGlib3B1cy5sYSAkKE5FMTBfTElCUykgJChMSUJNKQogCitDRUxUX09CSiA9ICQo
Q0VMVF9TT1VSQ0VTOi5jPS5sbykKK1NJTEtfT0JKID0gJChTSUxLX1NPVVJDRVM6LmM9LmxvKQor
CitzaWxrX3Rlc3RzX3Rlc3RfdW5pdF9MUENfaW52X3ByZWRfZ2Fpbl9TT1VSQ0VTID0gc2lsay90
ZXN0cy90ZXN0X3VuaXRfTFBDX2ludl9wcmVkX2dhaW4uYworc2lsa190ZXN0c190ZXN0X3VuaXRf
TFBDX2ludl9wcmVkX2dhaW5fTERBREQgPSAkKFNJTEtfT0JKKSAkKENFTFRfT0JKKSAkKE5FMTBf
TElCUykgJChMSUJNKQoraWYgT1BVU19BUk1fRVhURVJOQUxfQVNNCitzaWxrX3Rlc3RzX3Rlc3Rf
dW5pdF9MUENfaW52X3ByZWRfZ2Fpbl9MREFERCArPSBsaWJhcm1hc20ubGEKK2VuZGlmCisKIGNl
bHRfdGVzdHNfdGVzdF91bml0X2N3cnMzMl9TT1VSQ0VTID0gY2VsdC90ZXN0cy90ZXN0X3VuaXRf
Y3dyczMyLmMKIGNlbHRfdGVzdHNfdGVzdF91bml0X2N3cnMzMl9MREFERCA9ICQoTElCTSkKIAog
Y2VsdF90ZXN0c190ZXN0X3VuaXRfZGZ0X1NPVVJDRVMgPSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9k
ZnQuYwotY2VsdF90ZXN0c190ZXN0X3VuaXRfZGZ0X0xEQUREID0gJChORTEwX0xJQlMpICQoTElC
TSkKK2NlbHRfdGVzdHNfdGVzdF91bml0X2RmdF9MREFERCA9ICQoQ0VMVF9PQkopICQoTkUxMF9M
SUJTKSAkKExJQk0pCiBpZiBPUFVTX0FSTV9FWFRFUk5BTF9BU00KIGNlbHRfdGVzdHNfdGVzdF91
bml0X2RmdF9MREFERCArPSBsaWJhcm1hc20ubGEKIGVuZGlmCkBAIC0xMjcsMTkgKzE2NiwxOSBA
QCBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9sYXBsYWNlX1NPVVJDRVMgPSBjZWx0L3Rlc3RzL3Rlc3Rf
dW5pdF9sYXBsYWNlLmMKIGNlbHRfdGVzdHNfdGVzdF91bml0X2xhcGxhY2VfTERBREQgPSAkKExJ
Qk0pCiAKIGNlbHRfdGVzdHNfdGVzdF91bml0X21hdGhvcHNfU09VUkNFUyA9IGNlbHQvdGVzdHMv
dGVzdF91bml0X21hdGhvcHMuYwotY2VsdF90ZXN0c190ZXN0X3VuaXRfbWF0aG9wc19MREFERCA9
ICQoTkUxMF9MSUJTKSAkKExJQk0pCitjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tYXRob3BzX0xEQURE
ID0gJChDRUxUX09CSikgJChORTEwX0xJQlMpICQoTElCTSkKIGlmIE9QVVNfQVJNX0VYVEVSTkFM
X0FTTQogY2VsdF90ZXN0c190ZXN0X3VuaXRfbWF0aG9wc19MREFERCArPSBsaWJhcm1hc20ubGEK
IGVuZGlmCiAKIGNlbHRfdGVzdHNfdGVzdF91bml0X21kY3RfU09VUkNFUyA9IGNlbHQvdGVzdHMv
dGVzdF91bml0X21kY3QuYwotY2VsdF90ZXN0c190ZXN0X3VuaXRfbWRjdF9MREFERCA9ICQoTkUx
MF9MSUJTKSAkKExJQk0pCitjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tZGN0X0xEQUREID0gJChDRUxU
X09CSikgJChORTEwX0xJQlMpICQoTElCTSkKIGlmIE9QVVNfQVJNX0VYVEVSTkFMX0FTTQogY2Vs
dF90ZXN0c190ZXN0X3VuaXRfbWRjdF9MREFERCArPSBsaWJhcm1hc20ubGEKIGVuZGlmCiAKIGNl
bHRfdGVzdHNfdGVzdF91bml0X3JvdGF0aW9uX1NPVVJDRVMgPSBjZWx0L3Rlc3RzL3Rlc3RfdW5p
dF9yb3RhdGlvbi5jCi1jZWx0X3Rlc3RzX3Rlc3RfdW5pdF9yb3RhdGlvbl9MREFERCA9ICQoTkUx
MF9MSUJTKSAkKExJQk0pCitjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9yb3RhdGlvbl9MREFERCA9ICQo
Q0VMVF9PQkopICQoTkUxMF9MSUJTKSAkKExJQk0pCiBpZiBPUFVTX0FSTV9FWFRFUk5BTF9BU00K
IGNlbHRfdGVzdHNfdGVzdF91bml0X3JvdGF0aW9uX0xEQUREICs9IGxpYmFybWFzbS5sYQogZW5k
aWYKQEAgLTE1Nyw4ICsxOTYsNyBAQCBvcHVzX2N1c3RvbV9kZW1vX0xEQUREID0gbGlib3B1cy5s
YSAkKExJQk0pCiBlbmRpZgogZW5kaWYKIAotRVhUUkFfRElTVCA9IHZlcnNpb24ubWsgXAotICAg
ICAgICAgICAgIG9wdXMucGMuaW4gXAorRVhUUkFfRElTVCA9IG9wdXMucGMuaW4gXAogICAgICAg
ICAgICAgIG9wdXMtdW5pbnN0YWxsZWQucGMuaW4gXAogICAgICAgICAgICAgIG9wdXMubTQgXAog
ICAgICAgICAgICAgIE1ha2VmaWxlLm1pcHMgXApAQCAtMTY2LDI1ICsyMDQsMTggQEAgRVhUUkFf
RElTVCA9IHZlcnNpb24ubWsgXAogICAgICAgICAgICAgIHRlc3RzL3J1bl92ZWN0b3JzLnNoIFwK
ICAgICAgICAgICAgICBjZWx0L2FybS9hcm0yZ251LnBsIFwKICAgICAgICAgICAgICBjZWx0L2Fy
bS9jZWx0X3BpdGNoX3hjb3JyX2FybS5zIFwKLSAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvc2ls
a19mbG9hdC52Y3hwcm9qIFwKLSAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvY2VsdC52Y3hwcm9q
LmZpbHRlcnMgXAogICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS9vcHVzLnZjeHByb2ogXAotICAg
ICAgICAgICAgIHdpbjMyL1ZTMjAxNS9zaWxrX2NvbW1vbi52Y3hwcm9qLmZpbHRlcnMgXAotICAg
ICAgICAgICAgIHdpbjMyL1ZTMjAxNS9zaWxrX2Zsb2F0LnZjeHByb2ouZmlsdGVycyBcCiAgICAg
ICAgICAgICAgd2luMzIvVlMyMDE1L3Rlc3Rfb3B1c19lbmNvZGUudmN4cHJvai5maWx0ZXJzIFwK
LSAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvc2lsa19jb21tb24udmN4cHJvaiBcCiAgICAgICAg
ICAgICAgd2luMzIvVlMyMDE1L3Rlc3Rfb3B1c19lbmNvZGUudmN4cHJvaiBcCiAgICAgICAgICAg
ICAgd2luMzIvVlMyMDE1L29wdXNfZGVtby52Y3hwcm9qIFwKICAgICAgICAgICAgICB3aW4zMi9W
UzIwMTUvdGVzdF9vcHVzX2FwaS52Y3hwcm9qLmZpbHRlcnMgXAogICAgICAgICAgICAgIHdpbjMy
L1ZTMjAxNS90ZXN0X29wdXNfYXBpLnZjeHByb2ogXAogICAgICAgICAgICAgIHdpbjMyL1ZTMjAx
NS90ZXN0X29wdXNfZGVjb2RlLnZjeHByb2ouZmlsdGVycyBcCi0gICAgICAgICAgICAgd2luMzIv
VlMyMDE1L3NpbGtfZml4ZWQudmN4cHJvai5maWx0ZXJzIFwKICAgICAgICAgICAgICB3aW4zMi9W
UzIwMTUvb3B1c19kZW1vLnZjeHByb2ouZmlsdGVycyBcCi0gICAgICAgICAgICAgd2luMzIvVlMy
MDE1L3NpbGtfZml4ZWQudmN4cHJvaiBcCiAgICAgICAgICAgICAgd2luMzIvVlMyMDE1L29wdXMu
dmN4cHJvai5maWx0ZXJzIFwKICAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvdGVzdF9vcHVzX2Rl
Y29kZS52Y3hwcm9qIFwKLSAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvY2VsdC52Y3hwcm9qIFwK
ICAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvb3B1cy5zbG4gXAorICAgICAgICAgICAgIHdpbjMy
L1ZTMjAxNS9jb21tb24ucHJvcHMgXAogICAgICAgICAgICAgIHdpbjMyL2dlbnZlcnNpb24uYmF0
IFwKICAgICAgICAgICAgICB3aW4zMi9jb25maWcuaAogCkBAIC0yNzYsMjcgKzMwNywzMCBAQCAk
KENFTFRfU09VUkNFU19BUk1fQVNNOiUucz0lLWdudS5TKTogJCh0b3Bfc3JjZGlyKS9jZWx0L2Fy
bS9hcm0yZ251LnBsCiBPUFRfVU5JVF9URVNUX09CSiA9ICQoY2VsdF90ZXN0c190ZXN0X3VuaXRf
bWF0aG9wc19TT1VSQ0VTOi5jPS5vKSBcCiAgICAgICAgICAgICAgICAgICAgICQoY2VsdF90ZXN0
c190ZXN0X3VuaXRfcm90YXRpb25fU09VUkNFUzouYz0ubykgXAogICAgICAgICAgICAgICAgICAg
ICAkKGNlbHRfdGVzdHNfdGVzdF91bml0X21kY3RfU09VUkNFUzouYz0ubykgXAotICAgICAgICAg
ICAgICAgICAgICAkKGNlbHRfdGVzdHNfdGVzdF91bml0X2RmdF9TT1VSQ0VTOi5jPS5vKQorICAg
ICAgICAgICAgICAgICAgICAkKGNlbHRfdGVzdHNfdGVzdF91bml0X2RmdF9TT1VSQ0VTOi5jPS5v
KSBcCisgICAgICAgICAgICAgICAgICAgICQoc2lsa190ZXN0c190ZXN0X3VuaXRfTFBDX2ludl9w
cmVkX2dhaW5fU09VUkNFUzouYz0ubykKIAogaWYgSEFWRV9TU0UKIFNTRV9PQkogPSAkKENFTFRf
U09VUkNFU19TU0U6LmM9LmxvKQotJChTU0VfT0JKKSAkKE9QVF9VTklUX1RFU1RfT0JKKTogQ0ZM
QUdTICs9ICQoT1BVU19YODZfU1NFX0NGTEFHUykKKyQoU1NFX09CSik6IENGTEFHUyArPSAkKE9Q
VVNfWDg2X1NTRV9DRkxBR1MpCiBlbmRpZgogCiBpZiBIQVZFX1NTRTIKIFNTRTJfT0JKID0gJChD
RUxUX1NPVVJDRVNfU1NFMjouYz0ubG8pCi0kKFNTRTJfT0JKKSAkKE9QVF9VTklUX1RFU1RfT0JK
KTogQ0ZMQUdTICs9ICQoT1BVU19YODZfU1NFMl9DRkxBR1MpCiskKFNTRTJfT0JKKTogQ0ZMQUdT
ICs9ICQoT1BVU19YODZfU1NFMl9DRkxBR1MpCiBlbmRpZgogCiBpZiBIQVZFX1NTRTRfMQogU1NF
NF8xX09CSiA9ICQoQ0VMVF9TT1VSQ0VTX1NTRTRfMTouYz0ubG8pIFwKICAgICAgICAgICAgICAk
KFNJTEtfU09VUkNFU19TU0U0XzE6LmM9LmxvKSBcCiAgICAgICAgICAgICAgJChTSUxLX1NPVVJD
RVNfRklYRURfU1NFNF8xOi5jPS5sbykKLSQoU1NFNF8xX09CSikgJChPUFRfVU5JVF9URVNUX09C
Sik6IENGTEFHUyArPSAkKE9QVVNfWDg2X1NTRTRfMV9DRkxBR1MpCiskKFNTRTRfMV9PQkopOiBD
RkxBR1MgKz0gJChPUFVTX1g4Nl9TU0U0XzFfQ0ZMQUdTKQogZW5kaWYKIAogaWYgSEFWRV9BUk1f
TkVPTl9JTlRSCi1BUk1fTkVPTl9JTlRSX09CSiA9ICQoQ0VMVF9TT1VSQ0VTX0FSTV9ORU9OX0lO
VFI6LmM9LmxvKSAkKFNJTEtfU09VUkNFU19BUk1fTkVPTl9JTlRSOi5jPS5sbykKLSQoQVJNX05F
T05fSU5UUl9PQkopICQoT1BUX1VOSVRfVEVTVF9PQkopOiBDRkxBR1MgKz0gXAorQVJNX05FT05f
SU5UUl9PQkogPSAkKENFTFRfU09VUkNFU19BUk1fTkVPTl9JTlRSOi5jPS5sbykgXAorICAgICAg
ICAgICAgICAgICAgICAkKFNJTEtfU09VUkNFU19BUk1fTkVPTl9JTlRSOi5jPS5sbykgXAorICAg
ICAgICAgICAgICAgICAgICAkKFNJTEtfU09VUkNFU19GSVhFRF9BUk1fTkVPTl9JTlRSOi5jPS5s
bykKKyQoQVJNX05FT05fSU5UUl9PQkopOiBDRkxBR1MgKz0gXAogICQoT1BVU19BUk1fTkVPTl9J
TlRSX0NGTEFHUykgICQoTkUxMF9DRkxBR1MpCiBlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS5t
aXBzIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9NYWtlZmlsZS5taXBzCmluZGV4IDU2YTUwNjIzOGY2NDZhNjcyNTQ3YzM0NTZhNGQ1YWFh
ZjM0MjgyNjcuLmQyNWFmOGNiYzI4ZTVlNjlmNTNmZTg3YjI1ZjI1OGJhMzg1ZjVkMjkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvTWFrZWZpbGUubWlwcworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLm1pcHMKQEAgLTk5LDcgKzk5LDcgQEAg
VEVTVE9QVVNBUElfT0JKUyA6PSAkKHBhdHN1YnN0ICUuYywlJChPQkpTVUZGSVgpLCQoVEVTVE9Q
VVNBUElfU1JDU19DKSkKIFRFU1RPUFVTREVDT0RFX1NSQ1NfQyA9IHRlc3RzL3Rlc3Rfb3B1c19k
ZWNvZGUuYwogVEVTVE9QVVNERUNPREVfT0JKUyA6PSAkKHBhdHN1YnN0ICUuYywlJChPQkpTVUZG
SVgpLCQoVEVTVE9QVVNERUNPREVfU1JDU19DKSkKIAotVEVTVE9QVVNFTkNPREVfU1JDU19DID0g
dGVzdHMvdGVzdF9vcHVzX2VuY29kZS5jCitURVNUT1BVU0VOQ09ERV9TUkNTX0MgPSB0ZXN0cy90
ZXN0X29wdXNfZW5jb2RlLmMgdGVzdHMvb3B1c19lbmNvZGVfcmVncmVzc2lvbnMuYwogVEVTVE9Q
VVNFTkNPREVfT0JKUyA6PSAkKHBhdHN1YnN0ICUuYywlJChPQkpTVUZGSVgpLCQoVEVTVE9QVVNF
TkNPREVfU1JDU19DKSkKIAogVEVTVE9QVVNQQURESU5HX1NSQ1NfQyA9IHRlc3RzL3Rlc3Rfb3B1
c19wYWRkaW5nLmMKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTWFrZWZpbGUudW5peCBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTWFrZWZpbGUudW5peAppbmRl
eCBiMTMyMzBlOGZiZWJmNWVhOTRhNTU3ZTE5M2MwZDVhNTcyNGZkNDVjLi45MGE0OGYwY2MwZTky
ZTUxNGYyNzBiYjJhZjU1MmZlNmY2NmIzZTRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLnVuaXgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9NYWtlZmlsZS51bml4CkBAIC05Nyw3ICs5Nyw3IEBAIFRFU1RPUFVTQVBJX09CSlMgOj0gJChw
YXRzdWJzdCAlLmMsJSQoT0JKU1VGRklYKSwkKFRFU1RPUFVTQVBJX1NSQ1NfQykpCiBURVNUT1BV
U0RFQ09ERV9TUkNTX0MgPSB0ZXN0cy90ZXN0X29wdXNfZGVjb2RlLmMKIFRFU1RPUFVTREVDT0RF
X09CSlMgOj0gJChwYXRzdWJzdCAlLmMsJSQoT0JKU1VGRklYKSwkKFRFU1RPUFVTREVDT0RFX1NS
Q1NfQykpCiAKLVRFU1RPUFVTRU5DT0RFX1NSQ1NfQyA9IHRlc3RzL3Rlc3Rfb3B1c19lbmNvZGUu
YworVEVTVE9QVVNFTkNPREVfU1JDU19DID0gdGVzdHMvdGVzdF9vcHVzX2VuY29kZS5jIHRlc3Rz
L29wdXNfZW5jb2RlX3JlZ3Jlc3Npb25zLmMKIFRFU1RPUFVTRU5DT0RFX09CSlMgOj0gJChwYXRz
dWJzdCAlLmMsJSQoT0JKU1VGRklYKSwkKFRFU1RPUFVTRU5DT0RFX1NSQ1NfQykpCiAKIFRFU1RP
UFVTUEFERElOR19TUkNTX0MgPSB0ZXN0cy90ZXN0X29wdXNfcGFkZGluZy5jCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L1JFQURNRSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvUkVBRE1FCmluZGV4IGFjNjI2NGVjMjkyMzgzOWUwMjk0NWU4ZWFhMjY4NGUzNTgw
ZTRjZjEuLjlhMDY4MTE2NTRiNWMyMzM4MjNhMDk3NDI2NjgzNTMxMzQxYTZkMjIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvUkVBRE1FCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvUkVBRE1FCkBAIC00MywyNSArNDMsNDMgQEAgb3Igb24gdGhlIG1haW4g
T3B1cyB3ZWJzaXRlOgogCiBUbyBidWlsZCBmcm9tIGEgZGlzdHJpYnV0aW9uIHRhcmJhbGwsIHlv
dSBvbmx5IG5lZWQgdG8gZG8gdGhlIGZvbGxvd2luZzoKIAotJSAuL2NvbmZpZ3VyZQotJSBtYWtl
CisgICAgJSAuL2NvbmZpZ3VyZQorICAgICUgbWFrZQogCiBUbyBidWlsZCBmcm9tIHRoZSBnaXQg
cmVwb3NpdG9yeSwgdGhlIGZvbGxvd2luZyBzdGVwcyBhcmUgbmVjZXNzYXJ5OgogCiswKSBTZXQg
dXAgYSBkZXZlbG9wbWVudCBlbnZpcm9ubWVudDoKKworT24gYW4gVWJ1bnR1IG9yIERlYmlhbiBm
YW1pbHkgTGludXggZGlzdHJpYnV0aW9uOgorCisgICAgJSBzdWRvIGFwdC1nZXQgaW5zdGFsbCBn
aXQgYXV0b2NvbmYgYXV0b21ha2UgbGlidG9vbCBnY2MgbWFrZQorCitPbiBhIEZlZG9yYS9SZWRo
YXQgYmFzZWQgTGludXg6CisKKyAgICAlIHN1ZG8gZG5mIGluc3RhbGwgZ2l0IGF1dG9jb25mIGF1
dG9tYWtlIGxpYnRvb2wgZ2NjIG1ha2UKKworT3IgZm9yIG9sZGVyIFJlZGhhdC9DZW50b3MgTGlu
dXggcmVsZWFzZXM6CisKKyAgICAlIHN1ZG8geXVtIGluc3RhbGwgZ2l0IGF1dG9jb25mIGF1dG9t
YWtlIGxpYnRvb2wgZ2NjIG1ha2UKKworT24gQXBwbGUgbWFjT1MsIGluc3RhbGwgWGNvZGUgYW5k
IGJyZXcuc2gsIHRoZW4gaW4gdGhlIFRlcm1pbmFsIGVudGVyOgorCisgICAgJSBicmV3IGluc3Rh
bGwgYXV0b2NvbmYgYXV0b21ha2UgbGlidG9vbAorCiAxKSBDbG9uZSB0aGUgcmVwb3NpdG9yeToK
IAotJSBnaXQgY2xvbmUgaHR0cHM6Ly9naXQueGlwaC5vcmcvb3B1cy5naXQKLSUgY2Qgb3B1cwor
ICAgICUgZ2l0IGNsb25lIGh0dHBzOi8vZ2l0LnhpcGgub3JnL29wdXMuZ2l0CisgICAgJSBjZCBv
cHVzCiAKIDIpIENvbXBpbGluZyB0aGUgc291cmNlCiAKLSUgLi9hdXRvZ2VuLnNoCi0lIC4vY29u
ZmlndXJlCi0lIG1ha2UKKyAgICAlIC4vYXV0b2dlbi5zaAorICAgICUgLi9jb25maWd1cmUKKyAg
ICAlIG1ha2UKIAogMykgSW5zdGFsbCB0aGUgY29kZWMgbGlicmFyaWVzIChvcHRpb25hbCkKIAot
JSBzdWRvIG1ha2UgaW5zdGFsbAorICAgICUgc3VkbyBtYWtlIGluc3RhbGwKIAogT25jZSB5b3Ug
aGF2ZSBjb21waWxlZCB0aGUgY29kZWMsIHRoZXJlIHdpbGwgYmUgYSBvcHVzX2RlbW8gZXhlY3V0
YWJsZQogaW4gdGhlIHRvcCBkaXJlY3RvcnkuCkBAIC0xMDIsNyArMTIwLDggQEAgd2hpY2ggU0hP
VUxEIGJlIHJ1biBhZnRlciBjb21waWxpbmcgdGhlIHBhY2thZ2UgZXNwZWNpYWxseSB0aGUgZmly
c3QKIHRpbWUgaXQgaXMgcnVuIG9uIGEgbmV3IHBsYXRmb3JtLgogCiBUbyBydW4gdGhlIGludGVn
cmF0ZWQgdGVzdHM6Ci0lIG1ha2UgY2hlY2sKKworICAgICUgbWFrZSBjaGVjawogCiBUaGVyZSBp
cyBhbHNvIGNvbGxlY3Rpb24gb2Ygc3RhbmRhcmQgdGVzdCB2ZWN0b3JzIHdoaWNoIGFyZSBub3QK
IGluY2x1ZGVkIGluIHRoaXMgcGFja2FnZSBmb3Igc2l6ZSByZWFzb25zIGJ1dCBjYW4gYmUgb2J0
YWluZWQgZnJvbToKQEAgLTExMCw5ICsxMjksOSBAQCBodHRwczovL29wdXMtY29kZWMub3JnL3Rl
c3R2ZWN0b3JzL29wdXNfdGVzdHZlY3RvcnMudGFyLmd6CiAKIFRvIHJ1biBjb21wYXJlIHRoZSBj
b2RlIHRvIHRoZXNlIHRlc3QgdmVjdG9yczoKIAotJSBjdXJsIC1PIGh0dHBzOi8vb3B1cy1jb2Rl
Yy5vcmcvdGVzdHZlY3RvcnMvb3B1c190ZXN0dmVjdG9ycy50YXIuZ3oKLSUgdGFyIC16eGYgb3B1
c190ZXN0dmVjdG9ycy50YXIuZ3oKLSUgLi90ZXN0cy9ydW5fdmVjdG9ycy5zaCAuLyBvcHVzX3Rl
c3R2ZWN0b3JzIDQ4MDAwCisgICAgJSBjdXJsIC1PTCBodHRwczovL29wdXMtY29kZWMub3JnL3Rl
c3R2ZWN0b3JzL29wdXNfdGVzdHZlY3RvcnMudGFyLmd6CisgICAgJSB0YXIgLXp4ZiBvcHVzX3Rl
c3R2ZWN0b3JzLnRhci5negorICAgICUgLi90ZXN0cy9ydW5fdmVjdG9ycy5zaCAuLyBvcHVzX3Rl
c3R2ZWN0b3JzIDQ4MDAwCiAKID09IFBvcnRhYmlsaXR5IG5vdGVzID09CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
UkVBRE1FLmRyYWZ0IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9SRUFETUUuZHJhZnQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGQ4ZTI0ZGYyMmZmODRhNmQx
YTJiOWFlNjY5MTg3ZmIyODdhMzI0YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvUkVBRE1FLmRyYWZ0CkBA
IC0wLDAgKzEsNTQgQEAKK1RvIGJ1aWxkIHRoaXMgc291cmNlIGNvZGUsIHNpbXBseSB0eXBlOgor
CislIG1ha2UKKworSWYgdGhpcyBkb2VzIG5vdCB3b3JrLCBvciBpZiB5b3Ugd2FudCB0byBjaGFu
Z2UgdGhlIGRlZmF1bHQgY29uZmlndXJhdGlvbgorKGUuZy4sIHRvIGNvbXBpbGUgZm9yIGEgZml4
ZWQtcG9pbnQgYXJjaGl0ZWN0dXJlKSwgc2ltcGx5IGVkaXQgdGhlIG9wdGlvbnMKK2luIHRoZSBN
YWtlZmlsZS4KKworQW4gdXAtdG8tZGF0ZSBpbXBsZW1lbnRhdGlvbiBjb25mb3JtaW5nIHRvIHRo
aXMgc3RhbmRhcmQgaXMgYXZhaWxhYmxlIGluIGEKK0dpdCByZXBvc2l0b3J5IGF0IGh0dHBzOi8v
Z2l0LnhpcGgub3JnL29wdXMuZ2l0IG9yIG9uIGEgd2Vic2l0ZSBhdDoKK2h0dHBzOi8vb3B1cy1j
b2RlYy5vcmcvCitIb3dldmVyLCBhbHRob3VnaCB0aGF0IGltcGxlbWVudGF0aW9uIGlzIGV4cGVj
dGVkIHRvIHJlbWFpbiBjb25mb3JtYW50Cit3aXRoIHRoZSBzdGFuZGFyZCwgaXQgaXMgdGhlIGNv
ZGUgaW4gdGhpcyBSRkMgdGhhdCBzaGFsbCByZW1haW4gbm9ybWF0aXZlLgorVG8gYnVpbGQgZnJv
bSB0aGUgZ2l0IHJlcG9zaXRvcnkgaW5zdGVhZCBvZiB1c2luZyB0aGlzIFJGQywgZm9sbG93IHRo
ZXNlCitzdGVwczoKKworMSkgQ2xvbmUgdGhlIHJlcG9zaXRvcnkgKGxhdGVzdCBpbXBsZW1lbnRh
dGlvbiBvZiB0aGlzIHN0YW5kYXJkIGF0IHRoZSB0aW1lCitvZiBwdWJsaWNhdGlvbikKKworJSBn
aXQgY2xvbmUgaHR0cHM6Ly9naXQueGlwaC5vcmcvb3B1cy5naXQKKyUgY2Qgb3B1cworCisyKSBD
b21waWxlCisKKyUgLi9hdXRvZ2VuLnNoCislIC4vY29uZmlndXJlCislIG1ha2UKKworT25jZSB5
b3UgaGF2ZSBjb21waWxlZCB0aGUgY29kZWMsIHRoZXJlIHdpbGwgYmUgYSBvcHVzX2RlbW8gZXhl
Y3V0YWJsZSBpbgordGhlIHRvcCBkaXJlY3RvcnkuCisKK1VzYWdlOiBvcHVzX2RlbW8gWy1lXSA8
YXBwbGljYXRpb24+IDxzYW1wbGluZyByYXRlIChIeik+IDxjaGFubmVscyAoMS8yKT4KKyAgICAg
ICAgIDxiaXRzIHBlciBzZWNvbmQ+IFtvcHRpb25zXSA8aW5wdXQ+IDxvdXRwdXQ+CisgICAgICAg
b3B1c19kZW1vIC1kIDxzYW1wbGluZyByYXRlIChIeik+IDxjaGFubmVscyAoMS8yKT4gW29wdGlv
bnNdCisgICAgICAgICA8aW5wdXQ+IDxvdXRwdXQ+CisKK21vZGU6IHZvaXAgfCBhdWRpbyB8IHJl
c3RyaWN0ZWQtbG93ZGVsYXkKK29wdGlvbnM6CistZSAgICAgICAgICAgICAgICAgICA6IG9ubHkg
cnVucyB0aGUgZW5jb2RlciAob3V0cHV0IHRoZSBiaXQtc3RyZWFtKQorLWQgICAgICAgICAgICAg
ICAgICAgOiBvbmx5IHJ1bnMgdGhlIGRlY29kZXIgKHJlYWRzIHRoZSBiaXQtc3RyZWFtIGFzIGlu
cHV0KQorLWNiciAgICAgICAgICAgICAgICAgOiBlbmFibGUgY29uc3RhbnQgYml0cmF0ZTsgZGVm
YXVsdDogdmFyaWFibGUgYml0cmF0ZQorLWN2YnIgICAgICAgICAgICAgICAgOiBlbmFibGUgY29u
c3RyYWluZWQgdmFyaWFibGUgYml0cmF0ZTsgZGVmYXVsdDogdW5jb25zdHJhaW5lZAorLWJhbmR3
aWR0aCA8TkJ8TUJ8V0J8U1dCfEZCPiA6IGF1ZGlvIGJhbmR3aWR0aCAoZnJvbSBuYXJyb3diYW5k
IHRvIGZ1bGxiYW5kKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OiBz
YW1wbGluZyByYXRlCistZnJhbWVzaXplIDwyLjV8NXwxMHwyMHw0MHw2MD4gOiBmcmFtZSBzaXpl
IGluIG1zOyBkZWZhdWx0OiAyMAorLW1heF9wYXlsb2FkIDxieXRlcz4gOiBtYXhpbXVtIHBheWxv
YWQgc2l6ZSBpbiBieXRlcywgZGVmYXVsdDogMTAyNAorLWNvbXBsZXhpdHkgPGNvbXA+ICAgOiBj
b21wbGV4aXR5LCAwIChsb3dlc3QpIC4uLiAxMCAoaGlnaGVzdCk7IGRlZmF1bHQ6IDEwCistaW5i
YW5kZmVjICAgICAgICAgICA6IGVuYWJsZSBTSUxLIGluYmFuZCBGRUMKKy1mb3JjZW1vbm8gICAg
ICAgICAgIDogZm9yY2UgbW9ubyBlbmNvZGluZywgZXZlbiBmb3Igc3RlcmVvIGlucHV0CistZHR4
ICAgICAgICAgICAgICAgICA6IGVuYWJsZSBTSUxLIERUWAorLWxvc3MgPHBlcmM+ICAgICAgICAg
OiBzaW11bGF0ZSBwYWNrZXQgbG9zcywgaW4gcGVyY2VudCAoMC0xMDApOyBkZWZhdWx0OiAwCisK
K2lucHV0IGFuZCBvdXRwdXQgYXJlIGxpdHRsZSBlbmRpYW4gc2lnbmVkIDE2LWJpdCBQQ00gZmls
ZXMgb3Igb3B1cyBiaXRzdHJlYW1zCit3aXRoIHNpbXBsZSBvcHVzX2RlbW8gcHJvcHJpZXRhcnkg
ZnJhbWluZy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvYXV0b2dlbi5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvYXV0b2dlbi5zaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4z
ODBkMWYzY2E2ZGNjYmM0NzFlY2YyZGVhZGU4MzZkOGVkOGYyYTIwCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9hdXRvZ2VuLnNoCkBAIC0wLDAgKzEsMTQgQEAKKyMhL2Jpbi9zaAorIyBDb3B5cmlnaHQgKGMp
IDIwMTAtMjAxNSBYaXBoLk9yZyBGb3VuZGF0aW9uIGFuZCBjb250cmlidXRvcnMuCisjIFVzZSBv
ZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhh
dCBjYW4gYmUKKyMgZm91bmQgaW4gdGhlIENPUFlJTkcgZmlsZS4KKworIyBSdW4gdGhpcyB0byBz
ZXQgdXAgdGhlIGJ1aWxkIHN5c3RlbTogY29uZmlndXJlLCBtYWtlZmlsZXMsIGV0Yy4KK3NldCAt
ZQorCitzcmNkaXI9YGRpcm5hbWUgJDBgCit0ZXN0IC1uICIkc3JjZGlyIiAmJiBjZCAiJHNyY2Rp
ciIKKworZWNobyAiVXBkYXRpbmcgYnVpbGQgY29uZmlndXJhdGlvbiBmaWxlcywgcGxlYXNlIHdh
aXQuLi4uIgorCithdXRvcmVjb25mIC1pc2YKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9fa2lzc19mZnRfZ3V0
cy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L19raXNzX2ZmdF9ndXRzLmgKaW5kZXggNWUzZDU4ZmQ2NjQxZTUzZGZiNTZhMmYz
MmQ1OGM4Y2Q5NzE3YTQ3Zi4uMTczOTJiM2U5MDk3N2I3NDA0OTA0OWI3ZmEwMWE5ZjhjYjBmYzA5
MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L19raXNzX2ZmdF9ndXRzLmgKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L19raXNzX2ZmdF9n
dXRzLmgKQEAgLTU4LDEyICs1OCwxMiBAQAogIyAgIGRlZmluZSBTX01VTChhLGIpIE1VTFQxNl8z
Ml9RMTUoYiwgYSkKIAogIyAgIGRlZmluZSBDX01VTChtLGEsYikgXAotICAgICAgZG97IChtKS5y
ID0gU1VCMzIoU19NVUwoKGEpLnIsKGIpLnIpICwgU19NVUwoKGEpLmksKGIpLmkpKTsgXAotICAg
ICAgICAgIChtKS5pID0gQUREMzIoU19NVUwoKGEpLnIsKGIpLmkpICwgU19NVUwoKGEpLmksKGIp
LnIpKTsgfXdoaWxlKDApCisgICAgICBkb3sgKG0pLnIgPSBTVUIzMl9vdmZsdyhTX01VTCgoYSku
ciwoYikucikgLCBTX01VTCgoYSkuaSwoYikuaSkpOyBcCisgICAgICAgICAgKG0pLmkgPSBBREQz
Ml9vdmZsdyhTX01VTCgoYSkuciwoYikuaSkgLCBTX01VTCgoYSkuaSwoYikucikpOyB9d2hpbGUo
MCkKIAogIyAgIGRlZmluZSBDX01VTEMobSxhLGIpIFwKLSAgICAgIGRveyAobSkuciA9IEFERDMy
KFNfTVVMKChhKS5yLChiKS5yKSAsIFNfTVVMKChhKS5pLChiKS5pKSk7IFwKLSAgICAgICAgICAo
bSkuaSA9IFNVQjMyKFNfTVVMKChhKS5pLChiKS5yKSAsIFNfTVVMKChhKS5yLChiKS5pKSk7IH13
aGlsZSgwKQorICAgICAgZG97IChtKS5yID0gQUREMzJfb3ZmbHcoU19NVUwoKGEpLnIsKGIpLnIp
ICwgU19NVUwoKGEpLmksKGIpLmkpKTsgXAorICAgICAgICAgIChtKS5pID0gU1VCMzJfb3ZmbHco
U19NVUwoKGEpLmksKGIpLnIpICwgU19NVUwoKGEpLnIsKGIpLmkpKTsgfXdoaWxlKDApCiAKICMg
ICBkZWZpbmUgQ19NVUxCWVNDQUxBUiggYywgcyApIFwKICAgICAgIGRveyAoYykuciA9ICBTX01V
TCggKGMpLnIgLCBzICkgO1wKQEAgLTc3LDE3ICs3NywxNyBAQAogICAgICAgICAgICAgICAgIERJ
VlNDQUxBUiggKGMpLmkgICwgZGl2KTsgfXdoaWxlICgwKQogCiAjZGVmaW5lICBDX0FERCggcmVz
LCBhLGIpXAotICAgIGRvIHsocmVzKS5yPUFERDMyKChhKS5yLChiKS5yKTsgIChyZXMpLmk9QURE
MzIoKGEpLmksKGIpLmkpOyBcCisgICAgZG8geyhyZXMpLnI9QUREMzJfb3ZmbHcoKGEpLnIsKGIp
LnIpOyAgKHJlcykuaT1BREQzMl9vdmZsdygoYSkuaSwoYikuaSk7IFwKICAgICB9d2hpbGUoMCkK
ICNkZWZpbmUgIENfU1VCKCByZXMsIGEsYilcCi0gICAgZG8geyhyZXMpLnI9U1VCMzIoKGEpLnIs
KGIpLnIpOyAgKHJlcykuaT1TVUIzMigoYSkuaSwoYikuaSk7IFwKKyAgICBkbyB7KHJlcykucj1T
VUIzMl9vdmZsdygoYSkuciwoYikucik7ICAocmVzKS5pPVNVQjMyX292Zmx3KChhKS5pLChiKS5p
KTsgXAogICAgIH13aGlsZSgwKQogI2RlZmluZSBDX0FERFRPKCByZXMgLCBhKVwKLSAgICBkbyB7
KHJlcykuciA9IEFERDMyKChyZXMpLnIsIChhKS5yKTsgIChyZXMpLmkgPSBBREQzMigocmVzKS5p
LChhKS5pKTtcCisgICAgZG8geyhyZXMpLnIgPSBBREQzMl9vdmZsdygocmVzKS5yLCAoYSkucik7
ICAocmVzKS5pID0gQUREMzJfb3ZmbHcoKHJlcykuaSwoYSkuaSk7XAogICAgIH13aGlsZSgwKQog
CiAjZGVmaW5lIENfU1VCRlJPTSggcmVzICwgYSlcCi0gICAgZG8geyhyZXMpLnIgPSBBREQzMigo
cmVzKS5yLChhKS5yKTsgIChyZXMpLmkgPSBTVUIzMigocmVzKS5pLChhKS5pKTsgXAorICAgIGRv
IHsocmVzKS5yID0gQUREMzJfb3ZmbHcoKHJlcykuciwoYSkucik7ICAocmVzKS5pID0gU1VCMzJf
b3ZmbHcoKHJlcykuaSwoYSkuaSk7IFwKICAgICB9d2hpbGUoMCkKIAogI2lmIGRlZmluZWQoT1BV
U19BUk1fSU5MSU5FX0FTTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcmNoLmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJjaC5oCmlu
ZGV4IDhjZWFiNWZlMTBlOTM0MTEzNTkyYWRlOTMzOTkzOTc3MWY0YTJhMDEuLmQxZTY0NTdjNTRh
MDdjNmVjNWMzYTAzMDUxMGRhOGFiNDIzNTUwMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcmNoLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L2FyY2guaApAQCAtNDYsNiArNDYsMTQgQEAKICMgIGVuZGlmCiAjIGVuZGlmCiAKKyNp
ZiBPUFVTX0dOVUNfUFJFUkVRKDMsIDApCisjZGVmaW5lIG9wdXNfbGlrZWx5KHgpICAgICAgIChf
X2J1aWx0aW5fZXhwZWN0KCEhKHgpLCAxKSkKKyNkZWZpbmUgb3B1c191bmxpa2VseSh4KSAgICAg
KF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDApKQorI2Vsc2UKKyNkZWZpbmUgb3B1c19saWtlbHko
eCkgICAgICAgKCEhKHgpKQorI2RlZmluZSBvcHVzX3VubGlrZWx5KHgpICAgICAoISEoeCkpCisj
ZW5kaWYKKwogI2RlZmluZSBDRUxUX1NJR19TQ0FMRSAzMjc2OC5mCiAKICNkZWZpbmUgY2VsdF9m
YXRhbChzdHIpIF9jZWx0X2ZhdGFsKHN0ciwgX19GSUxFX18sIF9fTElORV9fKTsKQEAgLTkzLDYg
KzEwMSw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIF9jZWx0X2ZhdGFsKGNvbnN0IGNoYXIg
KnN0ciwgY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUpCiAKIHR5cGVkZWYgb3B1c19pbnQxNiBv
cHVzX3ZhbDE2OwogdHlwZWRlZiBvcHVzX2ludDMyIG9wdXNfdmFsMzI7Cit0eXBlZGVmIG9wdXNf
aW50NjQgb3B1c192YWw2NDsKIAogdHlwZWRlZiBvcHVzX3ZhbDMyIGNlbHRfc2lnOwogdHlwZWRl
ZiBvcHVzX3ZhbDE2IGNlbHRfbm9ybTsKQEAgLTEwMSw2ICsxMTAsOSBAQCB0eXBlZGVmIG9wdXNf
dmFsMzIgY2VsdF9lbmVyOwogI2RlZmluZSBRMTVPTkUgMzI3NjcKIAogI2RlZmluZSBTSUdfU0hJ
RlQgMTIKKy8qIFNhZmUgc2F0dXJhdGlvbiB2YWx1ZSBmb3IgMzItYml0IHNpZ25hbHMuIFNob3Vs
ZCBiZSBsZXNzIHRoYW4KKyAgIDJeMzEqKDEtMC44NSkgdG8gYXZvaWQgYmxvd2luZyB1cCBvbiBE
QyBhdCBkZWVtcGhhc2lzLiovCisjZGVmaW5lIFNJR19TQVQgKDMwMDAwMDAwMCkKIAogI2RlZmlu
ZSBOT1JNX1NDQUxJTkcgMTYzODQKIApAQCAtMTQ3LDYgKzE1OSw3IEBAIHN0YXRpYyBPUFVTX0lO
TElORSBvcHVzX2ludDE2IFNBVDE2KG9wdXNfaW50MzIgeCkgewogCiB0eXBlZGVmIGZsb2F0IG9w
dXNfdmFsMTY7CiB0eXBlZGVmIGZsb2F0IG9wdXNfdmFsMzI7Cit0eXBlZGVmIGZsb2F0IG9wdXNf
dmFsNjQ7CiAKIHR5cGVkZWYgZmxvYXQgY2VsdF9zaWc7CiB0eXBlZGVmIGZsb2F0IGNlbHRfbm9y
bTsKQEAgLTE4Niw2ICsxOTksNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgaW50IGNlbHRfaXNuYW4o
ZmxvYXQgeCkKIAogI2RlZmluZSBORUcxNih4KSAoLSh4KSkKICNkZWZpbmUgTkVHMzIoeCkgKC0o
eCkpCisjZGVmaW5lIE5FRzMyX292Zmx3KHgpICgtKHgpKQogI2RlZmluZSBFWFRSQUNUMTYoeCkg
KHgpCiAjZGVmaW5lIEVYVEVORDMyKHgpICh4KQogI2RlZmluZSBTSFIxNihhLHNoaWZ0KSAoYSkK
QEAgLTIwMiw2ICsyMTYsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgaW50IGNlbHRfaXNuYW4oZmxv
YXQgeCkKICNkZWZpbmUgU0FUVVJBVEUxNih4KSAgICh4KQogCiAjZGVmaW5lIFJPVU5EMTYoYSxz
aGlmdCkgIChhKQorI2RlZmluZSBTUk9VTkQxNihhLHNoaWZ0KSAoYSkKICNkZWZpbmUgSEFMRjE2
KHgpICAgICAgICguNWYqKHgpKQogI2RlZmluZSBIQUxGMzIoeCkgICAgICAgKC41ZiooeCkpCiAK
QEAgLTIwOSw2ICsyMjQsOCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgaW50IGNlbHRfaXNuYW4oZmxv
YXQgeCkKICNkZWZpbmUgU1VCMTYoYSxiKSAoKGEpLShiKSkKICNkZWZpbmUgQUREMzIoYSxiKSAo
KGEpKyhiKSkKICNkZWZpbmUgU1VCMzIoYSxiKSAoKGEpLShiKSkKKyNkZWZpbmUgQUREMzJfb3Zm
bHcoYSxiKSAoKGEpKyhiKSkKKyNkZWZpbmUgU1VCMzJfb3ZmbHcoYSxiKSAoKGEpLShiKSkKICNk
ZWZpbmUgTVVMVDE2XzE2XzE2KGEsYikgICAgICgoYSkqKGIpKQogI2RlZmluZSBNVUxUMTZfMTYo
YSxiKSAgICAgKChvcHVzX3ZhbDMyKShhKSoob3B1c192YWwzMikoYikpCiAjZGVmaW5lIE1BQzE2
XzE2KGMsYSxiKSAgICAgKChjKSsob3B1c192YWwzMikoYSkqKG9wdXNfdmFsMzIpKGIpKQpAQCAt
MjQzLDkgKzI2MCw5IEBAIHN0YXRpYyBPUFVTX0lOTElORSBpbnQgY2VsdF9pc25hbihmbG9hdCB4
KQogCiAjaWZuZGVmIEdMT0JBTF9TVEFDS19TSVpFCiAjaWZkZWYgRklYRURfUE9JTlQKLSNkZWZp
bmUgR0xPQkFMX1NUQUNLX1NJWkUgMTAwMDAwCisjZGVmaW5lIEdMT0JBTF9TVEFDS19TSVpFIDEy
MDAwMAogI2Vsc2UKLSNkZWZpbmUgR0xPQkFMX1NUQUNLX1NJWkUgMTAwMDAwCisjZGVmaW5lIEdM
T0JBTF9TVEFDS19TSVpFIDEyMDAwMAogI2VuZGlmCiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L2FybS9hcm0yZ251LnBsIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9hcm0yZ251LnBsCmluZGV4IDZjOTIyYWM4MTlkN2Uw
ODg5YmRiYjcyYzRlOGJlYzljZjZiZTVkNGIuLmEyODk1Zjc0NDVlODk0MzM2NjkxNTJlM2M0ODkx
MTZkMDg2MGE3YjkgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vYXJtMmdudS5wbAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJt
L2FybTJnbnUucGwKQEAgLTE2NCwxMSArMTY0LDExIEBAIHdoaWxlICg8PikgewogICAgICAgICAk
cHJlZml4ID0gIiI7CiAgICAgICAgIGlmICgkcHJvYykKICAgICAgICAgewotICAgICAgICAgICAg
JHByZWZpeCA9ICRwcmVmaXguc3ByaW50ZigiXHQudHlwZVx0JXMsICUlZnVuY3Rpb247ICIsJHBy
b2MpIHVubGVzcyAoJGFwcGxlKTsKKyAgICAgICAgICAgICRwcmVmaXggPSAkcHJlZml4LnNwcmlu
dGYoIlx0LnR5cGVcdCVzLCAlJWZ1bmN0aW9uIiwgJHByb2MpIHVubGVzcyAoJGFwcGxlKTsKICAg
ICAgICAgICAgICMgTWFrZSBzdXJlIHdlICRwcmVmaXggaXNuJ3QgZW1wdHkgaGVyZSAoZm9yIHRo
ZSAkYXBwbGUgY2FzZSkuCiAgICAgICAgICAgICAjIFdlIGhhbmRsZSBtYW5nbGluZyB0aGUgbGFi
ZWwgaGVyZSwgbWFrZSBzdXJlIGl0IGRvZXNuJ3QgbWF0Y2gKICAgICAgICAgICAgICMgdGhlIGxh
YmVsIGhhbmRsaW5nIGJlbG93IChpZiAkcHJlZml4IHdvdWxkIGJlIGVtcHR5KS4KLSAgICAgICAg
ICAgICRwcmVmaXggPSAiOyAiOworICAgICAgICAgICAgJHByZWZpeCA9ICRwcmVmaXguIjsgIjsK
ICAgICAgICAgICAgIHB1c2goQHByb2Nfc3RhY2ssICRwcm9jKTsKICAgICAgICAgICAgIHMvXltB
LVphLXpfXC5dXHcrLyRzeW1wcmVmaXgkJjovOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
YXJtL2FybV9jZWx0X21hcC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9hcm1fY2VsdF9tYXAuYwppbmRleCA0ZDRkMDY5
YTg2ZmMyNzdhYTYyYTA5MDRlMzEyNTYwNGZjOTY5Y2M5Li5jYTk4OGI2NmY1NWQxN2MxMTZmMGI3
YTE5ZGIxYzZhMWJjYjRiNjIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2FybV9jZWx0X21hcC5jCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9hcm0vYXJtX2NlbHRfbWFwLmMKQEAgLTM1LDEyICszNSwyOSBAQAogCiAjaWYgZGVm
aW5lZChPUFVTX0hBVkVfUlRDRCkKIAorIyBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05F
T05fSU5UUikgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpCitvcHVzX3Zh
bDMyICgqY29uc3QgQ0VMVF9JTk5FUl9QUk9EX0lNUExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qg
b3B1c192YWwxNiAqeCwgY29uc3Qgb3B1c192YWwxNiAqeSwgaW50IE4pID0geworICBjZWx0X2lu
bmVyX3Byb2RfYywgICAvKiBBUk12NCAqLworICBjZWx0X2lubmVyX3Byb2RfYywgICAvKiBFRFNQ
ICovCisgIGNlbHRfaW5uZXJfcHJvZF9jLCAgIC8qIE1lZGlhICovCisgIGNlbHRfaW5uZXJfcHJv
ZF9uZW9uIC8qIE5FT04gKi8KK307CisKK3ZvaWQgKCpjb25zdCBEVUFMX0lOTkVSX1BST0RfSU1Q
TFtPUFVTX0FSQ0hNQVNLKzFdKShjb25zdCBvcHVzX3ZhbDE2ICp4LCBjb25zdCBvcHVzX3ZhbDE2
ICp5MDEsIGNvbnN0IG9wdXNfdmFsMTYgKnkwMiwKKyAgICAgIGludCBOLCBvcHVzX3ZhbDMyICp4
eTEsIG9wdXNfdmFsMzIgKnh5MikgPSB7CisgIGR1YWxfaW5uZXJfcHJvZF9jLCAgIC8qIEFSTXY0
ICovCisgIGR1YWxfaW5uZXJfcHJvZF9jLCAgIC8qIEVEU1AgKi8KKyAgZHVhbF9pbm5lcl9wcm9k
X2MsICAgLyogTWVkaWEgKi8KKyAgZHVhbF9pbm5lcl9wcm9kX25lb24gLyogTkVPTiAqLworfTsK
KyMgZW5kaWYKKwogIyBpZiBkZWZpbmVkKEZJWEVEX1BPSU5UKQogIyAgaWYgKChkZWZpbmVkKE9Q
VVNfQVJNX01BWV9IQVZFX05FT04pICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTikp
IHx8IFwKICAgICAoZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9NRURJQSkgJiYgIWRlZmluZWQo
T1BVU19BUk1fUFJFU1VNRV9NRURJQSkpIHx8IFwKICAgICAoZGVmaW5lZChPUFVTX0FSTV9NQVlf
SEFWRV9FRFNQKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX0VEU1ApKSkKIG9wdXNfdmFs
MzIgKCpjb25zdCBDRUxUX1BJVENIX1hDT1JSX0lNUExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qg
b3B1c192YWwxNiAqLAotICAgIGNvbnN0IG9wdXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQg
LCBpbnQpID0geworICAgIGNvbnN0IG9wdXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQsIGlu
dCwgaW50KSA9IHsKICAgY2VsdF9waXRjaF94Y29ycl9jLCAgICAgICAgICAgICAgIC8qIEFSTXY0
ICovCiAgIE1BWV9IQVZFX0VEU1AoY2VsdF9waXRjaF94Y29yciksICAvKiBFRFNQICovCiAgIE1B
WV9IQVZFX01FRElBKGNlbHRfcGl0Y2hfeGNvcnIpLCAvKiBNZWRpYSAqLwpAQCAtNTEsNyArNjgs
NyBAQCBvcHVzX3ZhbDMyICgqY29uc3QgQ0VMVF9QSVRDSF9YQ09SUl9JTVBMW09QVVNfQVJDSE1B
U0srMV0pKGNvbnN0IG9wdXNfdmFsMTYgKiwKICMgZWxzZSAvKiAhRklYRURfUE9JTlQgKi8KICMg
IGlmIGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSAmJiAhZGVmaW5lZChPUFVT
X0FSTV9QUkVTVU1FX05FT05fSU5UUikKIHZvaWQgKCpjb25zdCBDRUxUX1BJVENIX1hDT1JSX0lN
UExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qgb3B1c192YWwxNiAqLAotICAgIGNvbnN0IG9wdXNf
dmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQsIGludCkgPSB7CisgICAgY29uc3Qgb3B1c192YWwx
NiAqLCBvcHVzX3ZhbDMyICosIGludCwgaW50LCBpbnQpID0gewogICBjZWx0X3BpdGNoX3hjb3Jy
X2MsICAgICAgICAgICAgICAvKiBBUk12NCAqLwogICBjZWx0X3BpdGNoX3hjb3JyX2MsICAgICAg
ICAgICAgICAvKiBFRFNQICovCiAgIGNlbHRfcGl0Y2hfeGNvcnJfYywgICAgICAgICAgICAgIC8q
IE1lZGlhICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfbmUxMF9mZnQuYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0v
Y2VsdF9uZTEwX2ZmdC5jCmluZGV4IDQyZDk2YTcxMTc2MGUzYTZkZGY0YmU2MWNkZjdiZjk3MWFh
NzhhYTMuLmI4YzYwYWJlOThiODM1NzFhMGJjODU4NTA4MWE1N2ZhY2I1YTU2YTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9hcm0vY2VsdF9uZTEwX2ZmdC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vY2VsdF9uZTEwX2ZmdC5j
CkBAIC0zNiw3ICszNiw2IEBACiAjZW5kaWYKICNlbmRpZgogCi0jaW5jbHVkZSA8TkUxMF9pbml0
Lmg+CiAjaW5jbHVkZSA8TkUxMF9kc3AuaD4KICNpbmNsdWRlICJvc19zdXBwb3J0LmgiCiAjaW5j
bHVkZSAia2lzc19mZnQuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vY2VsdF9uZW9uX2ludHIuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9hcm0vY2VsdF9uZW9uX2ludHIuYwppbmRleCA0N2JiZTNkYzIyZWM5M2NmZWI5Mzk4MjQ4
YmQxNDQxMjhjMzMzOTc1Li5jZjQ0Mzk4OGNlNWZlNTMyM2I4NDQ1Y2I2NTZhOTkxYTk4ZGE1MTRm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfbmVvbl9pbnRyLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0
X25lb25faW50ci5jCkBAIC0xOTEsMTA3ICsxOTEsMTAgQEAgc3RhdGljIHZvaWQgeGNvcnJfa2Vy
bmVsX25lb25fZmxvYXQoY29uc3QgZmxvYXQzMl90ICp4LCBjb25zdCBmbG9hdDMyX3QgKnksCiAg
ICB2c3QxcV9mMzIoc3VtLCBTVU1NKTsKIH0KIAotLyoKLSAqIEZ1bmN0aW9uOiB4Y29ycl9rZXJu
ZWxfbmVvbl9mbG9hdF9wcm9jZXNzMQotICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tCi0gKiBDb21wdXRlcyBzaW5nbGUgY29ycmVsYXRpb24gdmFsdWVzIGFuZCBzdG9yZXMgaW4g
KnN1bQotICovCi1zdGF0aWMgdm9pZCB4Y29ycl9rZXJuZWxfbmVvbl9mbG9hdF9wcm9jZXNzMShj
b25zdCBmbG9hdDMyX3QgKngsCi0gICAgICBjb25zdCBmbG9hdDMyX3QgKnksIGZsb2F0MzJfdCAq
c3VtLCBpbnQgbGVuKSB7Ci0gICBmbG9hdDMyeDRfdCBYWFs0XTsKLSAgIGZsb2F0MzJ4NF90IFlZ
WzRdOwotICAgZmxvYXQzMngyX3QgWFhfMjsKLSAgIGZsb2F0MzJ4Ml90IFlZXzI7Ci0gICBmbG9h
dDMyeDRfdCBTVU1NOwotICAgZmxvYXQzMngyX3QgU1VNTV8yWzJdOwotICAgY29uc3QgZmxvYXQz
Ml90ICp4aSA9IHg7Ci0gICBjb25zdCBmbG9hdDMyX3QgKnlpID0geTsKLQotICAgU1VNTSA9IHZk
dXBxX25fZjMyKDApOwotCi0gICAvKiBXb3JrIG9uIDE2IHZhbHVlcyBwZXIgaXRlcmF0aW9uICov
Ci0gICB3aGlsZSAobGVuID49IDE2KSB7Ci0gICAgICBYWFswXSA9IHZsZDFxX2YzMih4aSk7Ci0g
ICAgICB4aSArPSA0OwotICAgICAgWFhbMV0gPSB2bGQxcV9mMzIoeGkpOwotICAgICAgeGkgKz0g
NDsKLSAgICAgIFhYWzJdID0gdmxkMXFfZjMyKHhpKTsKLSAgICAgIHhpICs9IDQ7Ci0gICAgICBY
WFszXSA9IHZsZDFxX2YzMih4aSk7Ci0gICAgICB4aSArPSA0OwotCi0gICAgICBZWVswXSA9IHZs
ZDFxX2YzMih5aSk7Ci0gICAgICB5aSArPSA0OwotICAgICAgWVlbMV0gPSB2bGQxcV9mMzIoeWkp
OwotICAgICAgeWkgKz0gNDsKLSAgICAgIFlZWzJdID0gdmxkMXFfZjMyKHlpKTsKLSAgICAgIHlp
ICs9IDQ7Ci0gICAgICBZWVszXSA9IHZsZDFxX2YzMih5aSk7Ci0gICAgICB5aSArPSA0OwotCi0g
ICAgICBTVU1NID0gdm1sYXFfZjMyKFNVTU0sIFlZWzBdLCBYWFswXSk7Ci0gICAgICBTVU1NID0g
dm1sYXFfZjMyKFNVTU0sIFlZWzFdLCBYWFsxXSk7Ci0gICAgICBTVU1NID0gdm1sYXFfZjMyKFNV
TU0sIFlZWzJdLCBYWFsyXSk7Ci0gICAgICBTVU1NID0gdm1sYXFfZjMyKFNVTU0sIFlZWzNdLCBY
WFszXSk7Ci0gICAgICBsZW4gLT0gMTY7Ci0gICB9Ci0KLSAgIC8qIFdvcmsgb24gOCB2YWx1ZXMg
Ki8KLSAgIGlmIChsZW4gPj0gOCkgewotICAgICAgWFhbMF0gPSB2bGQxcV9mMzIoeGkpOwotICAg
ICAgeGkgKz0gNDsKLSAgICAgIFhYWzFdID0gdmxkMXFfZjMyKHhpKTsKLSAgICAgIHhpICs9IDQ7
Ci0KLSAgICAgIFlZWzBdID0gdmxkMXFfZjMyKHlpKTsKLSAgICAgIHlpICs9IDQ7Ci0gICAgICBZ
WVsxXSA9IHZsZDFxX2YzMih5aSk7Ci0gICAgICB5aSArPSA0OwotCi0gICAgICBTVU1NID0gdm1s
YXFfZjMyKFNVTU0sIFlZWzBdLCBYWFswXSk7Ci0gICAgICBTVU1NID0gdm1sYXFfZjMyKFNVTU0s
IFlZWzFdLCBYWFsxXSk7Ci0gICAgICBsZW4gLT0gODsKLSAgIH0KLQotICAgLyogV29yayBvbiA0
IHZhbHVlcyAqLwotICAgaWYgKGxlbiA+PSA0KSB7Ci0gICAgICBYWFswXSA9IHZsZDFxX2YzMih4
aSk7Ci0gICAgICB4aSArPSA0OwotICAgICAgWVlbMF0gPSB2bGQxcV9mMzIoeWkpOwotICAgICAg
eWkgKz0gNDsKLSAgICAgIFNVTU0gPSB2bWxhcV9mMzIoU1VNTSwgWVlbMF0sIFhYWzBdKTsKLSAg
ICAgIGxlbiAtPSA0OwotICAgfQotCi0gICAvKiBTdGFydCBhY2N1bXVsYXRpbmcgcmVzdWx0cyAq
LwotICAgU1VNTV8yWzBdID0gdmdldF9sb3dfZjMyKFNVTU0pOwotICAgaWYgKGxlbiA+PSAyKSB7
Ci0gICAgICAvKiBXaGlsZSBhdCBpdCwgY29uc3VtZSAyIG1vcmUgdmFsdWVzIGlmIGF2YWlsYWJs
ZSAqLwotICAgICAgWFhfMiA9IHZsZDFfZjMyKHhpKTsKLSAgICAgIHhpICs9IDI7Ci0gICAgICBZ
WV8yID0gdmxkMV9mMzIoeWkpOwotICAgICAgeWkgKz0gMjsKLSAgICAgIFNVTU1fMlswXSA9IHZt
bGFfZjMyKFNVTU1fMlswXSwgWVlfMiwgWFhfMik7Ci0gICAgICBsZW4gLT0gMjsKLSAgIH0KLSAg
IFNVTU1fMlsxXSA9IHZnZXRfaGlnaF9mMzIoU1VNTSk7Ci0gICBTVU1NXzJbMF0gPSB2YWRkX2Yz
MihTVU1NXzJbMF0sIFNVTU1fMlsxXSk7Ci0gICBTVU1NXzJbMF0gPSB2cGFkZF9mMzIoU1VNTV8y
WzBdLCBTVU1NXzJbMF0pOwotICAgLyogT2ssIG5vdyB3ZSBoYXZlIHJlc3VsdCBhY2N1bXVsYXRl
ZCBpbiBTVU1NXzJbMF0uMCAqLwotCi0gICBpZiAobGVuID4gMCkgewotICAgICAgLyogQ2FzZSB3
aGVuIHlvdSBoYXZlIG9uZSB2YWx1ZSBsZWZ0ICovCi0gICAgICBYWF8yID0gdmxkMV9kdXBfZjMy
KHhpKTsKLSAgICAgIFlZXzIgPSB2bGQxX2R1cF9mMzIoeWkpOwotICAgICAgU1VNTV8yWzBdID0g
dm1sYV9mMzIoU1VNTV8yWzBdLCBYWF8yLCBZWV8yKTsKLSAgIH0KLQotICAgdnN0MV9sYW5lX2Yz
MihzdW0sIFNVTU1fMlswXSwgMCk7Ci19Ci0KIHZvaWQgY2VsdF9waXRjaF94Y29ycl9mbG9hdF9u
ZW9uKGNvbnN0IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgIG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3BpdGNo
KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwg
aW50IG1heF9waXRjaCwgaW50IGFyY2gpIHsKICAgIGludCBpOworICAgKHZvaWQpYXJjaDsKICAg
IGNlbHRfYXNzZXJ0KG1heF9waXRjaCA+IDApOwogICAgY2VsdF9hc3NlcnQoKCgodW5zaWduZWQg
Y2hhciAqKV94LSh1bnNpZ25lZCBjaGFyICopTlVMTCkmMyk9PTApOwogCkBAIC0zMDAsMTIgKzIw
Myw5IEBAIHZvaWQgY2VsdF9waXRjaF94Y29ycl9mbG9hdF9uZW9uKGNvbnN0IG9wdXNfdmFsMTYg
Kl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKICAgICAgICAgICAgIChmbG9hdDMyX3QgKil4Y29y
citpLCBsZW4pOwogICAgfQogCi0gICAvKiBJbiBjYXNlIG1heF9waXRjaCBpc24ndCBtdWx0aXBs
ZSBvZiA0Ci0gICAgKiBjb21wdXRlIHNpbmdsZSBjb3JyZWxhdGlvbiB2YWx1ZSBwZXIgaXRlcmF0
aW9uCi0gICAgKi8KKyAgIC8qIEluIGNhc2UgbWF4X3BpdGNoIGlzbid0IGEgbXVsdGlwbGUgb2Yg
NCwgZG8gbm9uLXVucm9sbGVkIHZlcnNpb24uICovCiAgICBmb3IgKDsgaSA8IG1heF9waXRjaDsg
aSsrKSB7Ci0gICAgICB4Y29ycl9rZXJuZWxfbmVvbl9mbG9hdF9wcm9jZXNzMSgoY29uc3QgZmxv
YXQzMl90ICopX3gsCi0gICAgICAgICAgICAoY29uc3QgZmxvYXQzMl90ICopX3kraSwgKGZsb2F0
MzJfdCAqKXhjb3JyK2ksIGxlbik7CisgICAgICB4Y29ycltpXSA9IGNlbHRfaW5uZXJfcHJvZF9u
ZW9uKF94LCBfeStpLCBsZW4pOwogICAgfQogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJt
L2NlbHRfcGl0Y2hfeGNvcnJfYXJtLnMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfcGl0Y2hfeGNvcnJfYXJtLnMK
aW5kZXggZjk2ZTBhODhiYmU2MDllZDYzOGIxYTQ0YjY3ZTkwMzhhM2VkMzQ0Ny4uNmU4NzNhZmMz
NzEyNzI0ZmVkODM3MzRiNGIzY2U4MTg0ZTE5MTlmNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0
X3BpdGNoX3hjb3JyX2FybS5zCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vY2VsdF9waXRjaF94Y29ycl9hcm0ucwpA
QCAtMTUzLDcgKzE1Myw3IEBAIHhjb3JyX2tlcm5lbF9uZW9uX3Byb2Nlc3MxCiAgIEVORFAKIAog
OyBvcHVzX3ZhbDMyIGNlbHRfcGl0Y2hfeGNvcnJfbmVvbihvcHVzX3ZhbDE2ICpfeCwgb3B1c192
YWwxNiAqX3ksCi07ICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCkK
KzsgIG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3BpdGNoLCBpbnQgYXJjaCkK
IGNlbHRfcGl0Y2hfeGNvcnJfbmVvbiBQUk9DCiAgIDsgaW5wdXQ6CiAgIDsgICByMCAgPSBvcHVz
X3ZhbDE2ICpfeApAQCAtMTY4LDYgKzE2OCw4IEBAIGNlbHRfcGl0Y2hfeGNvcnJfbmVvbiBQUk9D
CiAgIDsgICByNiAgPSBpbnQgICAgICAgICBtYXhfcGl0Y2gKICAgOyAgIHIxMiA9IGludCAgICAg
ICAgIGoKICAgOyAgIHExNSA9IGludCAgICAgICAgIG1heGNvcnJbNF0gKHExNSBpcyBub3QgdXNl
ZCBieSB4Y29ycl9rZXJuZWxfbmVvbigpKQorICA7IGlnbm9yZWQ6CisgIDsgICAgICAgICBpbnQg
ICAgICAgICBhcmNoCiAgIFNUTUZEICAgICAgICBzcCEsIHtyNC1yNiwgbHJ9CiAgIExEUiAgICAg
ICAgICByNiwgW3NwLCAjMTZdCiAgIFZNT1YuUzMyICAgICBxMTUsICMxCkBAIC0zNTgsNiArMzYw
LDggQEAgY2VsdF9waXRjaF94Y29ycl9lZHNwIFBST0MKICAgOyAgIHI5ICA9IG9wdXNfdmFsMzIg
IHN1bTMKICAgOyAgIHIxICA9IGludCAgICAgICAgIG1heF9waXRjaAogICA7ICAgcjEyID0gaW50
ICAgICAgICAgagorICA7IGlnbm9yZWQ6CisgIDsgICAgICAgICBpbnQgICAgICAgICBhcmNoCiAg
IFNUTUZEICAgICAgICBzcCEsIHtyNC1yMTEsIGxyfQogICBNT1YgICAgICAgICAgcjUsIHIxCiAg
IExEUiAgICAgICAgICByMSwgW3NwLCAjMzZdCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZmdF9hcm0u
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9hcm0vZmZ0X2FybS5oCmluZGV4IDBjYjU1ZDhlMjJkMmI4N2U2OWMwZTU1ODA2ZGE0
OWU1OGE1OGRmZDQuLjBiNzgxNzVmM2E5YWE2MzIwNDVmMTNmYWZiMjBkNGU5MTc5OWQyYjUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9hcm0vZmZ0X2FybS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vZmZ0X2FybS5oCkBAIC0z
NCw3ICszNCw2IEBACiAjaWYgIWRlZmluZWQoRkZUX0FSTV9IKQogI2RlZmluZSBGRlRfQVJNX0gK
IAotI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgImtpc3NfZmZ0LmgiCiAKICNpZiBkZWZp
bmVkKEhBVkVfQVJNX05FMTApCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZpeGVkX2FybXY0LmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvYXJtL2ZpeGVkX2FybXY0LmgKaW5kZXggZWZiM2IxODk2YTg2NmIxZDVlYzg2MWZlZGJiMzM0
NTc1YTQ2NGM0ZC4uZDg0ODg4YTc3MmFjZjliODUzNGI4ZTAzMGYyMDQxODlkZmZlNzQ4YyAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L2FybS9maXhlZF9hcm12NC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vZml4ZWRfYXJtdjQu
aApAQCAtMzcsNyArMzcsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c192YWwzMiBNVUxUMTZf
MzJfUTE2X2FybXY0KG9wdXNfdmFsMTYgYSwgb3B1c192YWwzMiBiKQogICAgICAgIiNNVUxUMTZf
MzJfUTE2XG5cdCIKICAgICAgICJzbXVsbCAlMCwgJTEsICUyLCAlM1xuXHQiCiAgICAgICA6ICI9
JnIiKHJkX2xvKSwgIj0mciIocmRfaGkpCi0gICAgICA6ICIlciIoYiksInIiKGE8PDE2KQorICAg
ICAgOiAiJXIiKGIpLCJyIihTSEwzMihhLDE2KSkKICAgKTsKICAgcmV0dXJuIHJkX2hpOwogfQpA
QCAtNTQsMTAgKzU0LDEwIEBAIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX3ZhbDMyIE1VTFQxNl8z
Ml9RMTVfYXJtdjQob3B1c192YWwxNiBhLCBvcHVzX3ZhbDMyIGIpCiAgICAgICAiI01VTFQxNl8z
Ml9RMTVcblx0IgogICAgICAgInNtdWxsICUwLCAlMSwgJTIsICUzXG5cdCIKICAgICAgIDogIj0m
ciIocmRfbG8pLCAiPSZyIihyZF9oaSkKLSAgICAgIDogIiVyIihiKSwgInIiKGE8PDE2KQorICAg
ICAgOiAiJXIiKGIpLCAiciIoU0hMMzIoYSwxNikpCiAgICk7CiAgIC8qV2UgaW50ZW50aW9uYWxs
eSBkb24ndCBPUiBpbiB0aGUgaGlnaCBiaXQgb2YgcmRfbG8gZm9yIHNwZWVkLiovCi0gIHJldHVy
biByZF9oaTw8MTsKKyAgcmV0dXJuIFNITDMyKHJkX2hpLDEpOwogfQogI2RlZmluZSBNVUxUMTZf
MzJfUTE1KGEsIGIpIChNVUxUMTZfMzJfUTE1X2FybXY0KGEsIGIpKQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvYXJtL2ZpeGVkX2FybXY1ZS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9maXhlZF9hcm12NWUuaAppbmRleCAzNmE2
MzIxMTAxMzU3ZTQ0N2QyOTlkMzdkMmE1NWQ3NTFjMzBkOTA5Li42YmY3M2NiYWNlMzQ2YmYzYzI4
ODdkMjM5OWI1MDhiNmI4YmE1ZDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZpeGVkX2FybXY1ZS5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC9hcm0vZml4ZWRfYXJtdjVlLmgKQEAgLTU5LDcgKzU5LDcgQEAgc3RhdGljIE9Q
VVNfSU5MSU5FIG9wdXNfdmFsMzIgTVVMVDE2XzMyX1ExNV9hcm12NWUob3B1c192YWwxNiBhLCBv
cHVzX3ZhbDMyIGIpCiAgICAgICA6ICI9ciIocmVzKQogICAgICAgOiAiciIoYiksICJyIihhKQog
ICApOwotICByZXR1cm4gcmVzPDwxOworICByZXR1cm4gU0hMMzIocmVzLDEpOwogfQogI2RlZmlu
ZSBNVUxUMTZfMzJfUTE1KGEsIGIpIChNVUxUMTZfMzJfUTE1X2FybXY1ZShhLCBiKSkKIApAQCAt
NzYsNyArNzYsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c192YWwzMiBNQUMxNl8zMl9RMTVf
YXJtdjVlKG9wdXNfdmFsMzIgYywgb3B1c192YWwxNiBhLAogICAgICAgIiNNQUMxNl8zMl9RMTVc
blx0IgogICAgICAgInNtbGF3YiAlMCwgJTEsICUyLCAlMztcbiIKICAgICAgIDogIj1yIihyZXMp
Ci0gICAgICA6ICJyIihiPDwxKSwgInIiKGEpLCAiciIoYykKKyAgICAgIDogInIiKFNITDMyKGIs
MSkpLCAiciIoYSksICJyIihjKQogICApOwogICByZXR1cm4gcmVzOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L2FybS9tZGN0X2FybS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9tZGN0X2FybS5oCmluZGV4IDQ5Y2JiNDQ1NzYw
Mjg5MWU0YzMwNmI1N2Q3YTA5OTc5NDUyZDRmYzIuLjE0MjAwYmFjNGIzNDYzYzZlNzIyZWNmMmEy
MWU5OGM5ZmRhMzNkMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vbWRjdF9hcm0uaAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
YXJtL21kY3RfYXJtLmgKQEAgLTMzLDcgKzMzLDYgQEAKICNpZiAhZGVmaW5lZChNRENUX0FSTV9I
KQogI2RlZmluZSBNRENUX0FSTV9ICiAKLSNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJt
ZGN0LmgiCiAKICNpZiBkZWZpbmVkKEhBVkVfQVJNX05FMTApCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJt
L3BpdGNoX2FybS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9waXRjaF9hcm0uaAppbmRleCAxNDMzMTE2OWVlYjdiMjdh
NWFkYjMxNTJiMWJjODEzZjNhZmQyNDIxLi5iZWQ4YjA0ZWFjMTFmYzZlZDc3OWZjYTk3ZDA0YjRk
MmQwMWU0YjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL3BpdGNoX2FybS5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0v
cGl0Y2hfYXJtLmgKQEAgLTMwLDExICszMCw0NyBAQAogCiAjIGluY2x1ZGUgImFybWNwdS5oIgog
CisjIGlmIGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKQorb3B1c192YWwzMiBj
ZWx0X2lubmVyX3Byb2RfbmVvbihjb25zdCBvcHVzX3ZhbDE2ICp4LCBjb25zdCBvcHVzX3ZhbDE2
ICp5LCBpbnQgTik7Cit2b2lkIGR1YWxfaW5uZXJfcHJvZF9uZW9uKGNvbnN0IG9wdXNfdmFsMTYg
KngsIGNvbnN0IG9wdXNfdmFsMTYgKnkwMSwKKyAgICAgICAgY29uc3Qgb3B1c192YWwxNiAqeTAy
LCBpbnQgTiwgb3B1c192YWwzMiAqeHkxLCBvcHVzX3ZhbDMyICp4eTIpOworCisjICBpZiAhZGVm
aW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT04pCisj
ICAgZGVmaW5lIE9WRVJSSURFX0NFTFRfSU5ORVJfUFJPRCAoMSkKKyMgICBkZWZpbmUgT1ZFUlJJ
REVfRFVBTF9JTk5FUl9QUk9EICgxKQorIyAgIGRlZmluZSBjZWx0X2lubmVyX3Byb2QoeCwgeSwg
TiwgYXJjaCkgKCh2b2lkKShhcmNoKSwgUFJFU1VNRV9ORU9OKGNlbHRfaW5uZXJfcHJvZCkoeCwg
eSwgTikpCisjICAgZGVmaW5lIGR1YWxfaW5uZXJfcHJvZCh4LCB5MDEsIHkwMiwgTiwgeHkxLCB4
eTIsIGFyY2gpICgodm9pZCkoYXJjaCksIFBSRVNVTUVfTkVPTihkdWFsX2lubmVyX3Byb2QpKHgs
IHkwMSwgeTAyLCBOLCB4eTEsIHh5MikpCisjICBlbmRpZgorIyBlbmRpZgorCisjIGlmICFkZWZp
bmVkKE9WRVJSSURFX0NFTFRfSU5ORVJfUFJPRCkKKyMgIGlmIGRlZmluZWQoT1BVU19IQVZFX1JU
Q0QpICYmIChkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikgJiYgIWRlZmluZWQo
T1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpKQorZXh0ZXJuIG9wdXNfdmFsMzIgKCpjb25zdCBD
RUxUX0lOTkVSX1BST0RfSU1QTFtPUFVTX0FSQ0hNQVNLKzFdKShjb25zdCBvcHVzX3ZhbDE2ICp4
LCBjb25zdCBvcHVzX3ZhbDE2ICp5LCBpbnQgTik7CisjICAgZGVmaW5lIE9WRVJSSURFX0NFTFRf
SU5ORVJfUFJPRCAoMSkKKyMgICBkZWZpbmUgY2VsdF9pbm5lcl9wcm9kKHgsIHksIE4sIGFyY2gp
ICgoKkNFTFRfSU5ORVJfUFJPRF9JTVBMWyhhcmNoKSZPUFVTX0FSQ0hNQVNLXSkoeCwgeSwgTikp
CisjICBlbGlmIGRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpCisjICAgZGVmaW5l
IE9WRVJSSURFX0NFTFRfSU5ORVJfUFJPRCAoMSkKKyMgICBkZWZpbmUgY2VsdF9pbm5lcl9wcm9k
KHgsIHksIE4sIGFyY2gpICgodm9pZCkoYXJjaCksIGNlbHRfaW5uZXJfcHJvZF9uZW9uKHgsIHks
IE4pKQorIyAgZW5kaWYKKyMgZW5kaWYKKworIyBpZiAhZGVmaW5lZChPVkVSUklERV9EVUFMX0lO
TkVSX1BST0QpCisjICBpZiBkZWZpbmVkKE9QVVNfSEFWRV9SVENEKSAmJiAoZGVmaW5lZChPUFVT
X0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVP
Tl9JTlRSKSkKK2V4dGVybiB2b2lkICgqY29uc3QgRFVBTF9JTk5FUl9QUk9EX0lNUExbT1BVU19B
UkNITUFTSysxXSkoY29uc3Qgb3B1c192YWwxNiAqeCwKKyAgICAgICAgY29uc3Qgb3B1c192YWwx
NiAqeTAxLCBjb25zdCBvcHVzX3ZhbDE2ICp5MDIsIGludCBOLCBvcHVzX3ZhbDMyICp4eTEsIG9w
dXNfdmFsMzIgKnh5Mik7CisjICAgZGVmaW5lIE9WRVJSSURFX0RVQUxfSU5ORVJfUFJPRCAoMSkK
KyMgICBkZWZpbmUgZHVhbF9pbm5lcl9wcm9kKHgsIHkwMSwgeTAyLCBOLCB4eTEsIHh5MiwgYXJj
aCkgKCgqRFVBTF9JTk5FUl9QUk9EX0lNUExbKGFyY2gpJk9QVVNfQVJDSE1BU0tdKSh4LCB5MDEs
IHkwMiwgTiwgeHkxLCB4eTIpKQorIyAgZWxpZiBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVP
Tl9JTlRSKQorIyAgIGRlZmluZSBPVkVSUklERV9EVUFMX0lOTkVSX1BST0QgKDEpCisjICAgZGVm
aW5lIGR1YWxfaW5uZXJfcHJvZCh4LCB5MDEsIHkwMiwgTiwgeHkxLCB4eTIsIGFyY2gpICgodm9p
ZCkoYXJjaCksIGR1YWxfaW5uZXJfcHJvZF9uZW9uKHgsIHkwMSwgeTAyLCBOLCB4eTEsIHh5Mikp
CisjICBlbmRpZgorIyBlbmRpZgorCiAjIGlmIGRlZmluZWQoRklYRURfUE9JTlQpCiAKICMgIGlm
IGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTikKIG9wdXNfdmFsMzIgY2VsdF9waXRjaF94
Y29ycl9uZW9uKGNvbnN0IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKLSAg
ICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCk7CisgICAgb3B1c192
YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gsIGludCBhcmNoKTsKICMgIGVuZGlm
CiAKICMgIGlmIGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTUVESUEpCkBAIC00Myw3ICs3OSw3
IEBAIG9wdXNfdmFsMzIgY2VsdF9waXRjaF94Y29ycl9uZW9uKGNvbnN0IG9wdXNfdmFsMTYgKl94
LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKIAogIyAgaWYgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFW
RV9FRFNQKQogb3B1c192YWwzMiBjZWx0X3BpdGNoX3hjb3JyX2Vkc3AoY29uc3Qgb3B1c192YWwx
NiAqX3gsIGNvbnN0IG9wdXNfdmFsMTYgKl95LAotICAgIG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQg
bGVuLCBpbnQgbWF4X3BpdGNoKTsKKyAgICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50
IG1heF9waXRjaCwgaW50IGFyY2gpOwogIyAgZW5kaWYKIAogIyAgaWYgZGVmaW5lZChPUFVTX0hB
VkVfUlRDRCkgJiYgXApAQCAtNTIsMTggKzg4LDE3IEBAIG9wdXNfdmFsMzIgY2VsdF9waXRjaF94
Y29ycl9lZHNwKGNvbnN0IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKICAg
ICAgKGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfRURTUCkgJiYgIWRlZmluZWQoT1BVU19BUk1f
UFJFU1VNRV9FRFNQKSkpCiBleHRlcm4gb3B1c192YWwzMgogKCpjb25zdCBDRUxUX1BJVENIX1hD
T1JSX0lNUExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qgb3B1c192YWwxNiAqLAotICAgICAgY29u
c3Qgb3B1c192YWwxNiAqLCBvcHVzX3ZhbDMyICosIGludCwgaW50KTsKKyAgICAgIGNvbnN0IG9w
dXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQsIGludCwgaW50KTsKICMgICBkZWZpbmUgT1ZF
UlJJREVfUElUQ0hfWENPUlIgKDEpCiAjICAgZGVmaW5lIGNlbHRfcGl0Y2hfeGNvcnIoX3gsIF95
LCB4Y29yciwgbGVuLCBtYXhfcGl0Y2gsIGFyY2gpIFwKICAgKCgqQ0VMVF9QSVRDSF9YQ09SUl9J
TVBMWyhhcmNoKSZPUFVTX0FSQ0hNQVNLXSkoX3gsIF95LCBcCi0gICAgICAgIHhjb3JyLCBsZW4s
IG1heF9waXRjaCkpCisgICAgICAgIHhjb3JyLCBsZW4sIG1heF9waXRjaCwgYXJjaCkpCiAKICMg
IGVsaWYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX0VEU1ApIHx8IFwKICAgICBkZWZpbmVkKE9Q
VVNfQVJNX1BSRVNVTUVfTUVESUEpIHx8IFwKICAgICBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVf
TkVPTikKICMgICBkZWZpbmUgT1ZFUlJJREVfUElUQ0hfWENPUlIgKDEpCi0jICAgZGVmaW5lIGNl
bHRfcGl0Y2hfeGNvcnIoX3gsIF95LCB4Y29yciwgbGVuLCBtYXhfcGl0Y2gsIGFyY2gpIFwKLSAg
KCh2b2lkKShhcmNoKSxQUkVTVU1FX05FT04oY2VsdF9waXRjaF94Y29ycikoX3gsIF95LCB4Y29y
ciwgbGVuLCBtYXhfcGl0Y2gpKQorIyAgIGRlZmluZSBjZWx0X3BpdGNoX3hjb3JyIChQUkVTVU1F
X05FT04oY2VsdF9waXRjaF94Y29ycikpCiAKICMgIGVuZGlmCiAKQEAgLTk5LDI1ICsxMzQsMjQg
QEAgZXh0ZXJuIHZvaWQgKCpjb25zdCBYQ09SUl9LRVJORUxfSU1QTFtPUFVTX0FSQ0hNQVNLICsg
MV0pKAogLyogRmxvYXQgY2FzZSAqLwogI2lmIGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVP
Tl9JTlRSKQogdm9pZCBjZWx0X3BpdGNoX3hjb3JyX2Zsb2F0X25lb24oY29uc3Qgb3B1c192YWwx
NiAqX3gsIGNvbnN0IG9wdXNfdmFsMTYgKl95LAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gpOworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGlu
dCBtYXhfcGl0Y2gsIGludCBhcmNoKTsKICNlbmRpZgogCiAjICBpZiBkZWZpbmVkKE9QVVNfSEFW
RV9SVENEKSAmJiBcCiAgICAgKGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSAm
JiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikpCiBleHRlcm4gdm9pZAogKCpj
b25zdCBDRUxUX1BJVENIX1hDT1JSX0lNUExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qgb3B1c192
YWwxNiAqLAotICAgICAgY29uc3Qgb3B1c192YWwxNiAqLCBvcHVzX3ZhbDMyICosIGludCwgaW50
KTsKKyAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQsIGludCwgaW50
KTsKIAogIyAgZGVmaW5lIE9WRVJSSURFX1BJVENIX1hDT1JSICgxKQogIyAgZGVmaW5lIGNlbHRf
cGl0Y2hfeGNvcnIoX3gsIF95LCB4Y29yciwgbGVuLCBtYXhfcGl0Y2gsIGFyY2gpIFwKICAgKCgq
Q0VMVF9QSVRDSF9YQ09SUl9JTVBMWyhhcmNoKSZPUFVTX0FSQ0hNQVNLXSkoX3gsIF95LCBcCi0g
ICAgICAgIHhjb3JyLCBsZW4sIG1heF9waXRjaCkpCisgICAgICAgIHhjb3JyLCBsZW4sIG1heF9w
aXRjaCwgYXJjaCkpCiAKICMgIGVsaWYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5U
UikKIAogIyAgIGRlZmluZSBPVkVSUklERV9QSVRDSF9YQ09SUiAoMSkKLSMgICBkZWZpbmUgY2Vs
dF9waXRjaF94Y29ycihfeCwgX3ksIHhjb3JyLCBsZW4sIG1heF9waXRjaCwgYXJjaCkgXAotICAg
KCh2b2lkKShhcmNoKSxjZWx0X3BpdGNoX3hjb3JyX2Zsb2F0X25lb24oX3gsIF95LCB4Y29yciwg
bGVuLCBtYXhfcGl0Y2gpKQorIyAgIGRlZmluZSBjZWx0X3BpdGNoX3hjb3JyIGNlbHRfcGl0Y2hf
eGNvcnJfZmxvYXRfbmVvbgogCiAjICBlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL3BpdGNo
X25lb25faW50ci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9waXRjaF9uZW9uX2ludHIuYwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYWMz
OGM0MzNhOGE3ODU1MzVmOTVmOTNhZWZjZTFkNDM2MTNmYTgwCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L2FybS9waXRjaF9uZW9uX2ludHIuYwpAQCAtMCwwICsxLDI5MCBAQAorLyoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqCitDb3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4KK1JlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CithcmUgbWV0OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCit0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKy0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElF
VEYgVHJ1c3QsIG5vciB0aGUKK25hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCitwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KK3Blcm1pc3Npb24uCitUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJ
QlVUT1JTICJBUyBJUyIKK0FORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKK0lNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCitBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05U
UklCVVRPUlMgQkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCitTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKK0lO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKK1BPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpZmRlZiBIQVZFX0NPTkZJ
R19ICisjaW5jbHVkZSAiY29uZmlnLmgiCisjZW5kaWYKKworI2luY2x1ZGUgPGFybV9uZW9uLmg+
CisjaW5jbHVkZSAicGl0Y2guaCIKKworI2lmZGVmIEZJWEVEX1BPSU5UCisKK29wdXNfdmFsMzIg
Y2VsdF9pbm5lcl9wcm9kX25lb24oY29uc3Qgb3B1c192YWwxNiAqeCwgY29uc3Qgb3B1c192YWwx
NiAqeSwgaW50IE4pCit7CisgICAgaW50IGk7CisgICAgb3B1c192YWwzMiB4eTsKKyAgICBpbnQx
Nng4X3QgeF9zMTZ4OCwgeV9zMTZ4ODsKKyAgICBpbnQzMng0X3QgeHlfczMyeDQgPSB2ZHVwcV9u
X3MzMigwKTsKKyAgICBpbnQ2NHgyX3QgeHlfczY0eDI7CisgICAgaW50NjR4MV90IHh5X3M2NHgx
OworCisgICAgZm9yIChpID0gMDsgaSA8IE4gLSA3OyBpICs9IDgpIHsKKyAgICAgICAgeF9zMTZ4
OCAgPSB2bGQxcV9zMTYoJnhbaV0pOworICAgICAgICB5X3MxNng4ICA9IHZsZDFxX3MxNigmeVtp
XSk7CisgICAgICAgIHh5X3MzMng0ID0gdm1sYWxfczE2KHh5X3MzMng0LCB2Z2V0X2xvd19zMTYg
KHhfczE2eDgpLCB2Z2V0X2xvd19zMTYgKHlfczE2eDgpKTsKKyAgICAgICAgeHlfczMyeDQgPSB2
bWxhbF9zMTYoeHlfczMyeDQsIHZnZXRfaGlnaF9zMTYoeF9zMTZ4OCksIHZnZXRfaGlnaF9zMTYo
eV9zMTZ4OCkpOworICAgIH0KKworICAgIGlmIChOIC0gaSA+PSA0KSB7CisgICAgICAgIGNvbnN0
IGludDE2eDRfdCB4X3MxNng0ID0gdmxkMV9zMTYoJnhbaV0pOworICAgICAgICBjb25zdCBpbnQx
Nng0X3QgeV9zMTZ4NCA9IHZsZDFfczE2KCZ5W2ldKTsKKyAgICAgICAgeHlfczMyeDQgPSB2bWxh
bF9zMTYoeHlfczMyeDQsIHhfczE2eDQsIHlfczE2eDQpOworICAgICAgICBpICs9IDQ7CisgICAg
fQorCisgICAgeHlfczY0eDIgPSB2cGFkZGxxX3MzMih4eV9zMzJ4NCk7CisgICAgeHlfczY0eDEg
PSB2YWRkX3M2NCh2Z2V0X2xvd19zNjQoeHlfczY0eDIpLCB2Z2V0X2hpZ2hfczY0KHh5X3M2NHgy
KSk7CisgICAgeHkgICAgICAgPSB2Z2V0X2xhbmVfczMyKHZyZWludGVycHJldF9zMzJfczY0KHh5
X3M2NHgxKSwgMCk7CisKKyAgICBmb3IgKDsgaSA8IE47IGkrKykgeworICAgICAgICB4eSA9IE1B
QzE2XzE2KHh5LCB4W2ldLCB5W2ldKTsKKyAgICB9CisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQor
ICAgIGNlbHRfYXNzZXJ0KGNlbHRfaW5uZXJfcHJvZF9jKHgsIHksIE4pID09IHh5KTsKKyNlbmRp
ZgorCisgICAgcmV0dXJuIHh5OworfQorCit2b2lkIGR1YWxfaW5uZXJfcHJvZF9uZW9uKGNvbnN0
IG9wdXNfdmFsMTYgKngsIGNvbnN0IG9wdXNfdmFsMTYgKnkwMSwgY29uc3Qgb3B1c192YWwxNiAq
eTAyLAorICAgICAgICBpbnQgTiwgb3B1c192YWwzMiAqeHkxLCBvcHVzX3ZhbDMyICp4eTIpCit7
CisgICAgaW50IGk7CisgICAgb3B1c192YWwzMiB4eTAxLCB4eTAyOworICAgIGludDE2eDhfdCB4
X3MxNng4LCB5MDFfczE2eDgsIHkwMl9zMTZ4ODsKKyAgICBpbnQzMng0X3QgeHkwMV9zMzJ4NCA9
IHZkdXBxX25fczMyKDApOworICAgIGludDMyeDRfdCB4eTAyX3MzMng0ID0gdmR1cHFfbl9zMzIo
MCk7CisgICAgaW50NjR4Ml90IHh5MDFfczY0eDIsIHh5MDJfczY0eDI7CisgICAgaW50NjR4MV90
IHh5MDFfczY0eDEsIHh5MDJfczY0eDE7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgTiAtIDc7IGkg
Kz0gOCkgeworICAgICAgICB4X3MxNng4ICAgID0gdmxkMXFfczE2KCZ4W2ldKTsKKyAgICAgICAg
eTAxX3MxNng4ICA9IHZsZDFxX3MxNigmeTAxW2ldKTsKKyAgICAgICAgeTAyX3MxNng4ICA9IHZs
ZDFxX3MxNigmeTAyW2ldKTsKKyAgICAgICAgeHkwMV9zMzJ4NCA9IHZtbGFsX3MxNih4eTAxX3Mz
Mng0LCB2Z2V0X2xvd19zMTYgKHhfczE2eDgpLCB2Z2V0X2xvd19zMTYgKHkwMV9zMTZ4OCkpOwor
ICAgICAgICB4eTAyX3MzMng0ID0gdm1sYWxfczE2KHh5MDJfczMyeDQsIHZnZXRfbG93X3MxNiAo
eF9zMTZ4OCksIHZnZXRfbG93X3MxNiAoeTAyX3MxNng4KSk7CisgICAgICAgIHh5MDFfczMyeDQg
PSB2bWxhbF9zMTYoeHkwMV9zMzJ4NCwgdmdldF9oaWdoX3MxNih4X3MxNng4KSwgdmdldF9oaWdo
X3MxNih5MDFfczE2eDgpKTsKKyAgICAgICAgeHkwMl9zMzJ4NCA9IHZtbGFsX3MxNih4eTAyX3Mz
Mng0LCB2Z2V0X2hpZ2hfczE2KHhfczE2eDgpLCB2Z2V0X2hpZ2hfczE2KHkwMl9zMTZ4OCkpOwor
ICAgIH0KKworICAgIGlmIChOIC0gaSA+PSA0KSB7CisgICAgICAgIGNvbnN0IGludDE2eDRfdCB4
X3MxNng0ICAgPSB2bGQxX3MxNigmeFtpXSk7CisgICAgICAgIGNvbnN0IGludDE2eDRfdCB5MDFf
czE2eDQgPSB2bGQxX3MxNigmeTAxW2ldKTsKKyAgICAgICAgY29uc3QgaW50MTZ4NF90IHkwMl9z
MTZ4NCA9IHZsZDFfczE2KCZ5MDJbaV0pOworICAgICAgICB4eTAxX3MzMng0ID0gdm1sYWxfczE2
KHh5MDFfczMyeDQsIHhfczE2eDQsIHkwMV9zMTZ4NCk7CisgICAgICAgIHh5MDJfczMyeDQgPSB2
bWxhbF9zMTYoeHkwMl9zMzJ4NCwgeF9zMTZ4NCwgeTAyX3MxNng0KTsKKyAgICAgICAgaSArPSA0
OworICAgIH0KKworICAgIHh5MDFfczY0eDIgPSB2cGFkZGxxX3MzMih4eTAxX3MzMng0KTsKKyAg
ICB4eTAyX3M2NHgyID0gdnBhZGRscV9zMzIoeHkwMl9zMzJ4NCk7CisgICAgeHkwMV9zNjR4MSA9
IHZhZGRfczY0KHZnZXRfbG93X3M2NCh4eTAxX3M2NHgyKSwgdmdldF9oaWdoX3M2NCh4eTAxX3M2
NHgyKSk7CisgICAgeHkwMl9zNjR4MSA9IHZhZGRfczY0KHZnZXRfbG93X3M2NCh4eTAyX3M2NHgy
KSwgdmdldF9oaWdoX3M2NCh4eTAyX3M2NHgyKSk7CisgICAgeHkwMSAgICAgICA9IHZnZXRfbGFu
ZV9zMzIodnJlaW50ZXJwcmV0X3MzMl9zNjQoeHkwMV9zNjR4MSksIDApOworICAgIHh5MDIgICAg
ICAgPSB2Z2V0X2xhbmVfczMyKHZyZWludGVycHJldF9zMzJfczY0KHh5MDJfczY0eDEpLCAwKTsK
KworICAgIGZvciAoOyBpIDwgTjsgaSsrKSB7CisgICAgICAgIHh5MDEgPSBNQUMxNl8xNih4eTAx
LCB4W2ldLCB5MDFbaV0pOworICAgICAgICB4eTAyID0gTUFDMTZfMTYoeHkwMiwgeFtpXSwgeTAy
W2ldKTsKKyAgICB9CisgICAgKnh5MSA9IHh5MDE7CisgICAgKnh5MiA9IHh5MDI7CisKKyNpZmRl
ZiBPUFVTX0NIRUNLX0FTTQorICAgIHsKKyAgICAgICAgb3B1c192YWwzMiB4eTFfYywgeHkyX2M7
CisgICAgICAgIGR1YWxfaW5uZXJfcHJvZF9jKHgsIHkwMSwgeTAyLCBOLCAmeHkxX2MsICZ4eTJf
Yyk7CisgICAgICAgIGNlbHRfYXNzZXJ0KHh5MV9jID09ICp4eTEpOworICAgICAgICBjZWx0X2Fz
c2VydCh4eTJfYyA9PSAqeHkyKTsKKyAgICB9CisjZW5kaWYKK30KKworI2Vsc2UgLyogIUZJWEVE
X1BPSU5UICovCisKKy8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCisKKyNpZmRlZiBPUFVTX0NIRUNL
X0FTTQorCisvKiBUaGlzIHBhcnQgb2YgY29kZSBzaW11bGF0ZXMgZmxvYXRpbmctcG9pbnQgTkVP
TiBvcGVyYXRpb25zLiAqLworCisvKiBjZWx0X2lubmVyX3Byb2RfbmVvbl9mbG9hdF9jX3NpbXVs
YXRpb24oKSBzaW11bGF0ZXMgdGhlIGZsb2F0aW5nLXBvaW50ICAgKi8KKy8qIG9wZXJhdGlvbnMg
b2YgY2VsdF9pbm5lcl9wcm9kX25lb24oKSwgYW5kIGJvdGggZnVuY3Rpb25zIHNob3VsZCBoYXZl
IGJpdCAqLworLyogZXhhY3Qgb3V0cHV0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCitzdGF0aWMgb3B1c192YWwzMiBjZWx0X2lu
bmVyX3Byb2RfbmVvbl9mbG9hdF9jX3NpbXVsYXRpb24oY29uc3Qgb3B1c192YWwxNiAqeCwgY29u
c3Qgb3B1c192YWwxNiAqeSwgaW50IE4pCit7CisgICBpbnQgaTsKKyAgIG9wdXNfdmFsMzIgeHks
IHh5MCA9IDAsIHh5MSA9IDAsIHh5MiA9IDAsIHh5MyA9IDA7CisgICBmb3IgKGkgPSAwOyBpIDwg
TiAtIDM7IGkgKz0gNCkgeworICAgICAgeHkwID0gTUFDMTZfMTYoeHkwLCB4W2kgKyAwXSwgeVtp
ICsgMF0pOworICAgICAgeHkxID0gTUFDMTZfMTYoeHkxLCB4W2kgKyAxXSwgeVtpICsgMV0pOwor
ICAgICAgeHkyID0gTUFDMTZfMTYoeHkyLCB4W2kgKyAyXSwgeVtpICsgMl0pOworICAgICAgeHkz
ID0gTUFDMTZfMTYoeHkzLCB4W2kgKyAzXSwgeVtpICsgM10pOworICAgfQorICAgeHkwICs9IHh5
MjsKKyAgIHh5MSArPSB4eTM7CisgICB4eSA9IHh5MCArIHh5MTsKKyAgIGZvciAoOyBpIDwgTjsg
aSsrKSB7CisgICAgICB4eSA9IE1BQzE2XzE2KHh5LCB4W2ldLCB5W2ldKTsKKyAgIH0KKyAgIHJl
dHVybiB4eTsKK30KKworLyogZHVhbF9pbm5lcl9wcm9kX25lb25fZmxvYXRfY19zaW11bGF0aW9u
KCkgc2ltdWxhdGVzIHRoZSBmbG9hdGluZy1wb2ludCAgICovCisvKiBvcGVyYXRpb25zIG9mIGR1
YWxfaW5uZXJfcHJvZF9uZW9uKCksIGFuZCBib3RoIGZ1bmN0aW9ucyBzaG91bGQgaGF2ZSBiaXQg
Ki8KKy8qIGV4YWN0IG91dHB1dC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworc3RhdGljIHZvaWQgZHVhbF9pbm5lcl9wcm9kX25l
b25fZmxvYXRfY19zaW11bGF0aW9uKGNvbnN0IG9wdXNfdmFsMTYgKngsIGNvbnN0IG9wdXNfdmFs
MTYgKnkwMSwgY29uc3Qgb3B1c192YWwxNiAqeTAyLAorICAgICAgaW50IE4sIG9wdXNfdmFsMzIg
Knh5MSwgb3B1c192YWwzMiAqeHkyKQoreworICAgaW50IGk7CisgICBvcHVzX3ZhbDMyIHh5MDEs
IHh5MDIsIHh5MDFfMCA9IDAsIHh5MDFfMSA9IDAsIHh5MDFfMiA9IDAsIHh5MDFfMyA9IDAsIHh5
MDJfMCA9IDAsIHh5MDJfMSA9IDAsIHh5MDJfMiA9IDAsIHh5MDJfMyA9IDA7CisgICBmb3IgKGkg
PSAwOyBpIDwgTiAtIDM7IGkgKz0gNCkgeworICAgICAgeHkwMV8wID0gTUFDMTZfMTYoeHkwMV8w
LCB4W2kgKyAwXSwgeTAxW2kgKyAwXSk7CisgICAgICB4eTAxXzEgPSBNQUMxNl8xNih4eTAxXzEs
IHhbaSArIDFdLCB5MDFbaSArIDFdKTsKKyAgICAgIHh5MDFfMiA9IE1BQzE2XzE2KHh5MDFfMiwg
eFtpICsgMl0sIHkwMVtpICsgMl0pOworICAgICAgeHkwMV8zID0gTUFDMTZfMTYoeHkwMV8zLCB4
W2kgKyAzXSwgeTAxW2kgKyAzXSk7CisgICAgICB4eTAyXzAgPSBNQUMxNl8xNih4eTAyXzAsIHhb
aSArIDBdLCB5MDJbaSArIDBdKTsKKyAgICAgIHh5MDJfMSA9IE1BQzE2XzE2KHh5MDJfMSwgeFtp
ICsgMV0sIHkwMltpICsgMV0pOworICAgICAgeHkwMl8yID0gTUFDMTZfMTYoeHkwMl8yLCB4W2kg
KyAyXSwgeTAyW2kgKyAyXSk7CisgICAgICB4eTAyXzMgPSBNQUMxNl8xNih4eTAyXzMsIHhbaSAr
IDNdLCB5MDJbaSArIDNdKTsKKyAgIH0KKyAgIHh5MDFfMCArPSB4eTAxXzI7CisgICB4eTAyXzAg
Kz0geHkwMl8yOworICAgeHkwMV8xICs9IHh5MDFfMzsKKyAgIHh5MDJfMSArPSB4eTAyXzM7Cisg
ICB4eTAxID0geHkwMV8wICsgeHkwMV8xOworICAgeHkwMiA9IHh5MDJfMCArIHh5MDJfMTsKKyAg
IGZvciAoOyBpIDwgTjsgaSsrKSB7CisgICAgICB4eTAxID0gTUFDMTZfMTYoeHkwMSwgeFtpXSwg
eTAxW2ldKTsKKyAgICAgIHh5MDIgPSBNQUMxNl8xNih4eTAyLCB4W2ldLCB5MDJbaV0pOworICAg
fQorICAgKnh5MSA9IHh5MDE7CisgICAqeHkyID0geHkwMjsKK30KKworI2VuZGlmIC8qIE9QVVNf
Q0hFQ0tfQVNNICovCisKKy8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCisKK29wdXNfdmFsMzIgY2Vs
dF9pbm5lcl9wcm9kX25lb24oY29uc3Qgb3B1c192YWwxNiAqeCwgY29uc3Qgb3B1c192YWwxNiAq
eSwgaW50IE4pCit7CisgICAgaW50IGk7CisgICAgb3B1c192YWwzMiB4eTsKKyAgICBmbG9hdDMy
eDRfdCB4eV9mMzJ4NCA9IHZkdXBxX25fZjMyKDApOworICAgIGZsb2F0MzJ4Ml90IHh5X2YzMngy
OworCisgICAgZm9yIChpID0gMDsgaSA8IE4gLSA3OyBpICs9IDgpIHsKKyAgICAgICAgZmxvYXQz
Mng0X3QgeF9mMzJ4NCwgeV9mMzJ4NDsKKyAgICAgICAgeF9mMzJ4NCAgPSB2bGQxcV9mMzIoJnhb
aV0pOworICAgICAgICB5X2YzMng0ICA9IHZsZDFxX2YzMigmeVtpXSk7CisgICAgICAgIHh5X2Yz
Mng0ID0gdm1sYXFfZjMyKHh5X2YzMng0LCB4X2YzMng0LCB5X2YzMng0KTsKKyAgICAgICAgeF9m
MzJ4NCAgPSB2bGQxcV9mMzIoJnhbaSArIDRdKTsKKyAgICAgICAgeV9mMzJ4NCAgPSB2bGQxcV9m
MzIoJnlbaSArIDRdKTsKKyAgICAgICAgeHlfZjMyeDQgPSB2bWxhcV9mMzIoeHlfZjMyeDQsIHhf
ZjMyeDQsIHlfZjMyeDQpOworICAgIH0KKworICAgIGlmIChOIC0gaSA+PSA0KSB7CisgICAgICAg
IGNvbnN0IGZsb2F0MzJ4NF90IHhfZjMyeDQgPSB2bGQxcV9mMzIoJnhbaV0pOworICAgICAgICBj
b25zdCBmbG9hdDMyeDRfdCB5X2YzMng0ID0gdmxkMXFfZjMyKCZ5W2ldKTsKKyAgICAgICAgeHlf
ZjMyeDQgPSB2bWxhcV9mMzIoeHlfZjMyeDQsIHhfZjMyeDQsIHlfZjMyeDQpOworICAgICAgICBp
ICs9IDQ7CisgICAgfQorCisgICAgeHlfZjMyeDIgPSB2YWRkX2YzMih2Z2V0X2xvd19mMzIoeHlf
ZjMyeDQpLCB2Z2V0X2hpZ2hfZjMyKHh5X2YzMng0KSk7CisgICAgeHlfZjMyeDIgPSB2cGFkZF9m
MzIoeHlfZjMyeDIsIHh5X2YzMngyKTsKKyAgICB4eSAgICAgICA9IHZnZXRfbGFuZV9mMzIoeHlf
ZjMyeDIsIDApOworCisgICAgZm9yICg7IGkgPCBOOyBpKyspIHsKKyAgICAgICAgeHkgPSBNQUMx
Nl8xNih4eSwgeFtpXSwgeVtpXSk7CisgICAgfQorCisjaWZkZWYgT1BVU19DSEVDS19BU00KKyAg
ICBjZWx0X2Fzc2VydChBQlMzMihjZWx0X2lubmVyX3Byb2RfbmVvbl9mbG9hdF9jX3NpbXVsYXRp
b24oeCwgeSwgTikgLSB4eSkgPD0gVkVSWV9TTUFMTCk7CisjZW5kaWYKKworICAgIHJldHVybiB4
eTsKK30KKwordm9pZCBkdWFsX2lubmVyX3Byb2RfbmVvbihjb25zdCBvcHVzX3ZhbDE2ICp4LCBj
b25zdCBvcHVzX3ZhbDE2ICp5MDEsIGNvbnN0IG9wdXNfdmFsMTYgKnkwMiwKKyAgICAgICAgaW50
IE4sIG9wdXNfdmFsMzIgKnh5MSwgb3B1c192YWwzMiAqeHkyKQoreworICAgIGludCBpOworICAg
IG9wdXNfdmFsMzIgeHkwMSwgeHkwMjsKKyAgICBmbG9hdDMyeDRfdCB4eTAxX2YzMng0ID0gdmR1
cHFfbl9mMzIoMCk7CisgICAgZmxvYXQzMng0X3QgeHkwMl9mMzJ4NCA9IHZkdXBxX25fZjMyKDAp
OworICAgIGZsb2F0MzJ4Ml90IHh5MDFfZjMyeDIsIHh5MDJfZjMyeDI7CisKKyAgICBmb3IgKGkg
PSAwOyBpIDwgTiAtIDc7IGkgKz0gOCkgeworICAgICAgICBmbG9hdDMyeDRfdCB4X2YzMng0LCB5
MDFfZjMyeDQsIHkwMl9mMzJ4NDsKKyAgICAgICAgeF9mMzJ4NCAgICA9IHZsZDFxX2YzMigmeFtp
XSk7CisgICAgICAgIHkwMV9mMzJ4NCAgPSB2bGQxcV9mMzIoJnkwMVtpXSk7CisgICAgICAgIHkw
Ml9mMzJ4NCAgPSB2bGQxcV9mMzIoJnkwMltpXSk7CisgICAgICAgIHh5MDFfZjMyeDQgPSB2bWxh
cV9mMzIoeHkwMV9mMzJ4NCwgeF9mMzJ4NCwgeTAxX2YzMng0KTsKKyAgICAgICAgeHkwMl9mMzJ4
NCA9IHZtbGFxX2YzMih4eTAyX2YzMng0LCB4X2YzMng0LCB5MDJfZjMyeDQpOworICAgICAgICB4
X2YzMng0ICAgID0gdmxkMXFfZjMyKCZ4W2kgKyA0XSk7CisgICAgICAgIHkwMV9mMzJ4NCAgPSB2
bGQxcV9mMzIoJnkwMVtpICsgNF0pOworICAgICAgICB5MDJfZjMyeDQgID0gdmxkMXFfZjMyKCZ5
MDJbaSArIDRdKTsKKyAgICAgICAgeHkwMV9mMzJ4NCA9IHZtbGFxX2YzMih4eTAxX2YzMng0LCB4
X2YzMng0LCB5MDFfZjMyeDQpOworICAgICAgICB4eTAyX2YzMng0ID0gdm1sYXFfZjMyKHh5MDJf
ZjMyeDQsIHhfZjMyeDQsIHkwMl9mMzJ4NCk7CisgICAgfQorCisgICAgaWYgKE4gLSBpID49IDQp
IHsKKyAgICAgICAgY29uc3QgZmxvYXQzMng0X3QgeF9mMzJ4NCAgID0gdmxkMXFfZjMyKCZ4W2ld
KTsKKyAgICAgICAgY29uc3QgZmxvYXQzMng0X3QgeTAxX2YzMng0ID0gdmxkMXFfZjMyKCZ5MDFb
aV0pOworICAgICAgICBjb25zdCBmbG9hdDMyeDRfdCB5MDJfZjMyeDQgPSB2bGQxcV9mMzIoJnkw
MltpXSk7CisgICAgICAgIHh5MDFfZjMyeDQgPSB2bWxhcV9mMzIoeHkwMV9mMzJ4NCwgeF9mMzJ4
NCwgeTAxX2YzMng0KTsKKyAgICAgICAgeHkwMl9mMzJ4NCA9IHZtbGFxX2YzMih4eTAyX2YzMng0
LCB4X2YzMng0LCB5MDJfZjMyeDQpOworICAgICAgICBpICs9IDQ7CisgICAgfQorCisgICAgeHkw
MV9mMzJ4MiA9IHZhZGRfZjMyKHZnZXRfbG93X2YzMih4eTAxX2YzMng0KSwgdmdldF9oaWdoX2Yz
Mih4eTAxX2YzMng0KSk7CisgICAgeHkwMl9mMzJ4MiA9IHZhZGRfZjMyKHZnZXRfbG93X2YzMih4
eTAyX2YzMng0KSwgdmdldF9oaWdoX2YzMih4eTAyX2YzMng0KSk7CisgICAgeHkwMV9mMzJ4MiA9
IHZwYWRkX2YzMih4eTAxX2YzMngyLCB4eTAxX2YzMngyKTsKKyAgICB4eTAyX2YzMngyID0gdnBh
ZGRfZjMyKHh5MDJfZjMyeDIsIHh5MDJfZjMyeDIpOworICAgIHh5MDEgICAgICAgPSB2Z2V0X2xh
bmVfZjMyKHh5MDFfZjMyeDIsIDApOworICAgIHh5MDIgICAgICAgPSB2Z2V0X2xhbmVfZjMyKHh5
MDJfZjMyeDIsIDApOworCisgICAgZm9yICg7IGkgPCBOOyBpKyspIHsKKyAgICAgICAgeHkwMSA9
IE1BQzE2XzE2KHh5MDEsIHhbaV0sIHkwMVtpXSk7CisgICAgICAgIHh5MDIgPSBNQUMxNl8xNih4
eTAyLCB4W2ldLCB5MDJbaV0pOworICAgIH0KKyAgICAqeHkxID0geHkwMTsKKyAgICAqeHkyID0g
eHkwMjsKKworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisgICAgeworICAgICAgICBvcHVzX3ZhbDMy
IHh5MV9jLCB4eTJfYzsKKyAgICAgICAgZHVhbF9pbm5lcl9wcm9kX25lb25fZmxvYXRfY19zaW11
bGF0aW9uKHgsIHkwMSwgeTAyLCBOLCAmeHkxX2MsICZ4eTJfYyk7CisgICAgICAgIGNlbHRfYXNz
ZXJ0KEFCUzMyKHh5MV9jIC0gKnh5MSkgPD0gVkVSWV9TTUFMTCk7CisgICAgICAgIGNlbHRfYXNz
ZXJ0KEFCUzMyKHh5Ml9jIC0gKnh5MikgPD0gVkVSWV9TTUFMTCk7CisgICAgfQorI2VuZGlmCit9
CisKKyNlbmRpZiAvKiBGSVhFRF9QT0lOVCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2JhbmRzLmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvYmFuZHMuYwppbmRleCBmNTMwN2FlMmVkYjY3YTAzYTk3NGJiNWRlY2U2NDg1ZDgwNjk2NWM2
Li4zYjFmNWNmYmJlOGE4MWM3ZjQ3YjcwMGFjODc4OTlkODA5OTA2Mjg1IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvYmFuZHMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NlbHQvYmFuZHMuYwpAQCAtNjUsNyArNjUsNyBAQCBvcHVzX3VpbnQz
MiBjZWx0X2xjZ19yYW5kKG9wdXNfdWludDMyIHNlZWQpCiAKIC8qIFRoaXMgaXMgYSBjb3MoKSBh
cHByb3hpbWF0aW9uIGRlc2lnbmVkIHRvIGJlIGJpdC1leGFjdCBvbiBhbnkgcGxhdGZvcm0uIEJp
dCBleGFjdG5lc3MKICAgIHdpdGggdGhpcyBhcHByb3hpbWF0aW9uIGlzIGltcG9ydGFudCBiZWNh
dXNlIGl0IGhhcyBhbiBpbXBhY3Qgb24gdGhlIGJpdCBhbGxvY2F0aW9uICovCi1zdGF0aWMgb3B1
c19pbnQxNiBiaXRleGFjdF9jb3Mob3B1c19pbnQxNiB4KQorb3B1c19pbnQxNiBiaXRleGFjdF9j
b3Mob3B1c19pbnQxNiB4KQogewogICAgb3B1c19pbnQzMiB0bXA7CiAgICBvcHVzX2ludDE2IHgy
OwpAQCAtNzcsNyArNzcsNyBAQCBzdGF0aWMgb3B1c19pbnQxNiBiaXRleGFjdF9jb3Mob3B1c19p
bnQxNiB4KQogICAgcmV0dXJuIDEreDI7CiB9CiAKLXN0YXRpYyBpbnQgYml0ZXhhY3RfbG9nMnRh
bihpbnQgaXNpbixpbnQgaWNvcykKK2ludCBiaXRleGFjdF9sb2cydGFuKGludCBpc2luLGludCBp
Y29zKQogewogICAgaW50IGxjOwogICAgaW50IGxzOwpAQCAtOTIsMTAgKzkyLDExIEBAIHN0YXRp
YyBpbnQgYml0ZXhhY3RfbG9nMnRhbihpbnQgaXNpbixpbnQgaWNvcykKIAogI2lmZGVmIEZJWEVE
X1BPSU5UCiAvKiBDb21wdXRlIHRoZSBhbXBsaXR1ZGUgKHNxcnQgZW5lcmd5KSBpbiBlYWNoIG9m
IHRoZSBiYW5kcyAqLwotdm9pZCBjb21wdXRlX2JhbmRfZW5lcmdpZXMoY29uc3QgQ0VMVE1vZGUg
Km0sIGNvbnN0IGNlbHRfc2lnICpYLCBjZWx0X2VuZXIgKmJhbmRFLCBpbnQgZW5kLCBpbnQgQywg
aW50IExNKQordm9pZCBjb21wdXRlX2JhbmRfZW5lcmdpZXMoY29uc3QgQ0VMVE1vZGUgKm0sIGNv
bnN0IGNlbHRfc2lnICpYLCBjZWx0X2VuZXIgKmJhbmRFLCBpbnQgZW5kLCBpbnQgQywgaW50IExN
LCBpbnQgYXJjaCkKIHsKICAgIGludCBpLCBjLCBOOwogICAgY29uc3Qgb3B1c19pbnQxNiAqZUJh
bmRzID0gbS0+ZUJhbmRzOworICAgKHZvaWQpYXJjaDsKICAgIE4gPSBtLT5zaG9ydE1kY3RTaXpl
PDxMTTsKICAgIGM9MDsgZG8gewogICAgICAgZm9yIChpPTA7aTxlbmQ7aSsrKQpAQCAtMTU1LDcg
KzE1Niw3IEBAIHZvaWQgbm9ybWFsaXNlX2JhbmRzKGNvbnN0IENFTFRNb2RlICptLCBjb25zdCBj
ZWx0X3NpZyAqIE9QVVNfUkVTVFJJQ1QgZnJlcSwgY2VsCiAKICNlbHNlIC8qIEZJWEVEX1BPSU5U
ICovCiAvKiBDb21wdXRlIHRoZSBhbXBsaXR1ZGUgKHNxcnQgZW5lcmd5KSBpbiBlYWNoIG9mIHRo
ZSBiYW5kcyAqLwotdm9pZCBjb21wdXRlX2JhbmRfZW5lcmdpZXMoY29uc3QgQ0VMVE1vZGUgKm0s
IGNvbnN0IGNlbHRfc2lnICpYLCBjZWx0X2VuZXIgKmJhbmRFLCBpbnQgZW5kLCBpbnQgQywgaW50
IExNKQordm9pZCBjb21wdXRlX2JhbmRfZW5lcmdpZXMoY29uc3QgQ0VMVE1vZGUgKm0sIGNvbnN0
IGNlbHRfc2lnICpYLCBjZWx0X2VuZXIgKmJhbmRFLCBpbnQgZW5kLCBpbnQgQywgaW50IExNLCBp
bnQgYXJjaCkKIHsKICAgIGludCBpLCBjLCBOOwogICAgY29uc3Qgb3B1c19pbnQxNiAqZUJhbmRz
ID0gbS0+ZUJhbmRzOwpAQCAtMTY0LDcgKzE2NSw3IEBAIHZvaWQgY29tcHV0ZV9iYW5kX2VuZXJn
aWVzKGNvbnN0IENFTFRNb2RlICptLCBjb25zdCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5k
CiAgICAgICBmb3IgKGk9MDtpPGVuZDtpKyspCiAgICAgICB7CiAgICAgICAgICBvcHVzX3ZhbDMy
IHN1bTsKLSAgICAgICAgIHN1bSA9IDFlLTI3ZiArIGNlbHRfaW5uZXJfcHJvZF9jKCZYW2MqTiso
ZUJhbmRzW2ldPDxMTSldLCAmWFtjKk4rKGVCYW5kc1tpXTw8TE0pXSwgKGVCYW5kc1tpKzFdLWVC
YW5kc1tpXSk8PExNKTsKKyAgICAgICAgIHN1bSA9IDFlLTI3ZiArIGNlbHRfaW5uZXJfcHJvZCgm
WFtjKk4rKGVCYW5kc1tpXTw8TE0pXSwgJlhbYypOKyhlQmFuZHNbaV08PExNKV0sIChlQmFuZHNb
aSsxXS1lQmFuZHNbaV0pPDxMTSwgYXJjaCk7CiAgICAgICAgICBiYW5kRVtpK2MqbS0+bmJFQmFu
ZHNdID0gY2VsdF9zcXJ0KHN1bSk7CiAgICAgICAgICAvKnByaW50ZiAoIiVmICIsIGJhbmRFW2kr
YyptLT5uYkVCYW5kc10pOyovCiAgICAgICB9CkBAIC0yMjQsNyArMjI1LDcgQEAgdm9pZCBkZW5v
cm1hbGlzZV9iYW5kcyhjb25zdCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9ub3JtICogT1BVU19S
RVNUUklDVCBYLAogI2VuZGlmCiAgICAgICBqPU0qZUJhbmRzW2ldOwogICAgICAgYmFuZF9lbmQg
PSBNKmVCYW5kc1tpKzFdOwotICAgICAgbGcgPSBBREQxNihiYW5kTG9nRVtpXSwgU0hMMTYoKG9w
dXNfdmFsMTYpZU1lYW5zW2ldLDYpKTsKKyAgICAgIGxnID0gU0FUVVJBVEUxNihBREQzMihiYW5k
TG9nRVtpXSwgU0hMMzIoKG9wdXNfdmFsMzIpZU1lYW5zW2ldLDYpKSk7CiAjaWZuZGVmIEZJWEVE
X1BPSU5UCiAgICAgICBnID0gY2VsdF9leHAyKE1JTjMyKDMyLmYsIGxnKSk7CiAjZWxzZQpAQCAt
MjQxLDEyICsyNDIsMTIgQEAgdm9pZCBkZW5vcm1hbGlzZV9iYW5kcyhjb25zdCBDRUxUTW9kZSAq
bSwgY29uc3QgY2VsdF9ub3JtICogT1BVU19SRVNUUklDVCBYLAogICAgICAgLyogSGFuZGxlIGV4
dHJlbWUgZ2FpbnMgd2l0aCBuZWdhdGl2ZSBzaGlmdC4gKi8KICAgICAgIGlmIChzaGlmdDwwKQog
ICAgICAgewotICAgICAgICAgLyogRm9yIHNoaWZ0IDwgLTIgd2UnZCBiZSBsaWtlbHkgdG8gb3Zl
cmZsb3csIHNvIHdlJ3JlIGNhcHBpbmcKLSAgICAgICAgICAgICAgIHRoZSBnYWluIGhlcmUuIFRo
aXMgc2hvdWxkbid0IGhhcHBlbiB1bmxlc3MgdGhlIGJpdHN0cmVhbSBpcwotICAgICAgICAgICAg
ICAgYWxyZWFkeSBjb3JydXB0ZWQuICovCi0gICAgICAgICBpZiAoc2hpZnQgPCAtMikKKyAgICAg
ICAgIC8qIEZvciBzaGlmdCA8PSAtMiBhbmQgZyA+IDE2Mzg0IHdlJ2QgYmUgbGlrZWx5IHRvIG92
ZXJmbG93LCBzbyB3ZSdyZQorICAgICAgICAgICAgY2FwcGluZyB0aGUgZ2FpbiBoZXJlLCB3aGlj
aCBpcyBlcXVpdmFsZW50IHRvIGEgY2FwIG9mIDE4IG9uIGxnLgorICAgICAgICAgICAgVGhpcyBz
aG91bGRuJ3QgdHJpZ2dlciB1bmxlc3MgdGhlIGJpdHN0cmVhbSBpcyBhbHJlYWR5IGNvcnJ1cHRl
ZC4gKi8KKyAgICAgICAgIGlmIChzaGlmdCA8PSAtMikKICAgICAgICAgIHsKLSAgICAgICAgICAg
IGcgPSAzMjc2NzsKKyAgICAgICAgICAgIGcgPSAxNjM4NDsKICAgICAgICAgICAgIHNoaWZ0ID0g
LTI7CiAgICAgICAgICB9CiAgICAgICAgICBkbyB7CkBAIC0zNjAsNiArMzYxLDMwIEBAIHZvaWQg
YW50aV9jb2xsYXBzZShjb25zdCBDRUxUTW9kZSAqbSwgY2VsdF9ub3JtICpYXywgdW5zaWduZWQg
Y2hhciAqY29sbGFwc2VfbWFzCiAgICB9CiB9CiAKKy8qIENvbXB1dGUgdGhlIHdlaWdodHMgdG8g
dXNlIGZvciBvcHRpbWl6aW5nIG5vcm1hbGl6ZWQgZGlzdG9ydGlvbiBhY3Jvc3MKKyAgIGNoYW5u
ZWxzLiBXZSB1c2UgdGhlIGFtcGxpdHVkZSB0byB3ZWlnaHQgc3F1YXJlIGRpc3RvcnRpb24sIHdo
aWNoIG1lYW5zCisgICB0aGF0IHdlIHVzZSB0aGUgc3F1YXJlIHJvb3Qgb2YgdGhlIHZhbHVlIHdl
IHdvdWxkIGhhdmUgYmVlbiB1c2luZyBpZiB3ZQorICAgd2FudGVkIHRvIG1pbmltaXplIHRoZSBN
U0UgaW4gdGhlIG5vbi1ub3JtYWxpemVkIGRvbWFpbi4gVGhpcyByb3VnaGx5CisgICBjb3JyZXNw
b25kcyB0byBzb21lIHF1aWNrLWFuZC1kaXJ0eSBwZXJjZXB0dWFsIGV4cGVyaW1lbnRzIEkgcmFu
IHRvCisgICBtZWFzdXJlIGludGVyLWF1cmFsIG1hc2tpbmcgKHRoZXJlIGRvZXNuJ3Qgc2VlbSB0
byBiZSBhbnkgcHVibGlzaGVkIGRhdGEKKyAgIG9uIHRoZSB0b3BpYykuICovCitzdGF0aWMgdm9p
ZCBjb21wdXRlX2NoYW5uZWxfd2VpZ2h0cyhjZWx0X2VuZXIgRXgsIGNlbHRfZW5lciBFeSwgb3B1
c192YWwxNiB3WzJdKQoreworICAgY2VsdF9lbmVyIG1pbkU7CisjaWYgRklYRURfUE9JTlQKKyAg
IGludCBzaGlmdDsKKyNlbmRpZgorICAgbWluRSA9IE1JTjMyKEV4LCBFeSk7CisgICAvKiBBZGp1
c3RtZW50IHRvIG1ha2UgdGhlIHdlaWdodHMgYSBiaXQgbW9yZSBjb25zZXJ2YXRpdmUuICovCisg
ICBFeCA9IEFERDMyKEV4LCBtaW5FLzMpOworICAgRXkgPSBBREQzMihFeSwgbWluRS8zKTsKKyNp
ZiBGSVhFRF9QT0lOVAorICAgc2hpZnQgPSBjZWx0X2lsb2cyKEVQU0lMT04rTUFYMzIoRXgsIEV5
KSktMTQ7CisjZW5kaWYKKyAgIHdbMF0gPSBWU0hSMzIoRXgsIHNoaWZ0KTsKKyAgIHdbMV0gPSBW
U0hSMzIoRXksIHNoaWZ0KTsKK30KKwogc3RhdGljIHZvaWQgaW50ZW5zaXR5X3N0ZXJlbyhjb25z
dCBDRUxUTW9kZSAqbSwgY2VsdF9ub3JtICogT1BVU19SRVNUUklDVCBYLCBjb25zdCBjZWx0X25v
cm0gKiBPUFVTX1JFU1RSSUNUIFksIGNvbnN0IGNlbHRfZW5lciAqYmFuZEUsIGludCBiYW5kSUQs
IGludCBOKQogewogICAgaW50IGkgPSBiYW5kSUQ7CkBAIC02NDcsNiArNjcyLDcgQEAgc3RhdGlj
IGludCBjb21wdXRlX3FuKGludCBOLCBpbnQgYiwgaW50IG9mZnNldCwgaW50IHB1bHNlX2NhcCwg
aW50IHN0ZXJlbykKIAogc3RydWN0IGJhbmRfY3R4IHsKICAgIGludCBlbmNvZGU7CisgICBpbnQg
cmVzeW50aDsKICAgIGNvbnN0IENFTFRNb2RlICptOwogICAgaW50IGk7CiAgICBpbnQgaW50ZW5z
aXR5OwpAQCAtNjU3LDYgKzY4Myw5IEBAIHN0cnVjdCBiYW5kX2N0eCB7CiAgICBjb25zdCBjZWx0
X2VuZXIgKmJhbmRFOwogICAgb3B1c191aW50MzIgc2VlZDsKICAgIGludCBhcmNoOworICAgaW50
IHRoZXRhX3JvdW5kOworICAgaW50IGRpc2FibGVfaW52OworICAgaW50IGF2b2lkX3NwbGl0X25v
aXNlOwogfTsKIAogc3RydWN0IHNwbGl0X2N0eCB7CkBAIC03MTQsOCArNzQzLDM1IEBAIHN0YXRp
YyB2b2lkIGNvbXB1dGVfdGhldGEoc3RydWN0IGJhbmRfY3R4ICpjdHgsIHN0cnVjdCBzcGxpdF9j
dHggKnNjdHgsCiAgICBpZiAocW4hPTEpCiAgICB7CiAgICAgICBpZiAoZW5jb2RlKQotICAgICAg
ICAgaXRoZXRhID0gKGl0aGV0YSoob3B1c19pbnQzMilxbis4MTkyKT4+MTQ7Ci0KKyAgICAgIHsK
KyAgICAgICAgIGlmICghc3RlcmVvIHx8IGN0eC0+dGhldGFfcm91bmQgPT0gMCkKKyAgICAgICAg
IHsKKyAgICAgICAgICAgIGl0aGV0YSA9IChpdGhldGEqKG9wdXNfaW50MzIpcW4rODE5Mik+PjE0
OworICAgICAgICAgICAgaWYgKCFzdGVyZW8gJiYgY3R4LT5hdm9pZF9zcGxpdF9ub2lzZSAmJiBp
dGhldGEgPiAwICYmIGl0aGV0YSA8IHFuKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
LyogQ2hlY2sgaWYgdGhlIHNlbGVjdGVkIHZhbHVlIG9mIHRoZXRhIHdpbGwgY2F1c2UgdGhlIGJp
dCBhbGxvY2F0aW9uCisgICAgICAgICAgICAgICAgICB0byBpbmplY3Qgbm9pc2Ugb24gb25lIHNp
ZGUuIElmIHNvLCBtYWtlIHN1cmUgdGhlIGVuZXJneSBvZiB0aGF0IHNpZGUKKyAgICAgICAgICAg
ICAgICAgIGlzIHplcm8uICovCisgICAgICAgICAgICAgICBpbnQgdW5xdWFudGl6ZWQgPSBjZWx0
X3VkaXYoKG9wdXNfaW50MzIpaXRoZXRhKjE2Mzg0LCBxbik7CisgICAgICAgICAgICAgICBpbWlk
ID0gYml0ZXhhY3RfY29zKChvcHVzX2ludDE2KXVucXVhbnRpemVkKTsKKyAgICAgICAgICAgICAg
IGlzaWRlID0gYml0ZXhhY3RfY29zKChvcHVzX2ludDE2KSgxNjM4NC11bnF1YW50aXplZCkpOwor
ICAgICAgICAgICAgICAgZGVsdGEgPSBGUkFDX01VTDE2KChOLTEpPDw3LGJpdGV4YWN0X2xvZzJ0
YW4oaXNpZGUsaW1pZCkpOworICAgICAgICAgICAgICAgaWYgKGRlbHRhID4gKmIpCisgICAgICAg
ICAgICAgICAgICBpdGhldGEgPSBxbjsKKyAgICAgICAgICAgICAgIGVsc2UgaWYgKGRlbHRhIDwg
LSpiKQorICAgICAgICAgICAgICAgICAgaXRoZXRhID0gMDsKKyAgICAgICAgICAgIH0KKyAgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICBpbnQgZG93bjsKKyAgICAgICAgICAgIC8qIEJpYXMg
cXVhbnRpemF0aW9uIHRvd2FyZHMgaXRoZXRhPTAgYW5kIGl0aGV0YT0xNjM4NC4gKi8KKyAgICAg
ICAgICAgIGludCBiaWFzID0gaXRoZXRhID4gODE5MiA/IDMyNzY3L3FuIDogLTMyNzY3L3FuOwor
ICAgICAgICAgICAgZG93biA9IElNSU4ocW4tMSwgSU1BWCgwLCAoaXRoZXRhKihvcHVzX2ludDMy
KXFuICsgYmlhcyk+PjE0KSk7CisgICAgICAgICAgICBpZiAoY3R4LT50aGV0YV9yb3VuZCA8IDAp
CisgICAgICAgICAgICAgICBpdGhldGEgPSBkb3duOworICAgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgICAgaXRoZXRhID0gZG93bisxOworICAgICAgICAgfQorICAgICAgfQogICAgICAgLyog
RW50cm9weSBjb2Rpbmcgb2YgdGhlIGFuZ2xlLiBXZSB1c2UgYSB1bmlmb3JtIHBkZiBmb3IgdGhl
CiAgICAgICAgICB0aW1lIHNwbGl0LCBhIHN0ZXAgZm9yIHN0ZXJlbywgYW5kIGEgdHJpYW5ndWxh
ciBvbmUgZm9yIHRoZSByZXN0LiAqLwogICAgICAgaWYgKHN0ZXJlbyAmJiBOPjIpCkBAIC03OTMs
NyArODQ5LDcgQEAgc3RhdGljIHZvaWQgY29tcHV0ZV90aGV0YShzdHJ1Y3QgYmFuZF9jdHggKmN0
eCwgc3RydWN0IHNwbGl0X2N0eCAqc2N0eCwKICAgIH0gZWxzZSBpZiAoc3RlcmVvKSB7CiAgICAg
ICBpZiAoZW5jb2RlKQogICAgICAgewotICAgICAgICAgaW52ID0gaXRoZXRhID4gODE5MjsKKyAg
ICAgICAgIGludiA9IGl0aGV0YSA+IDgxOTIgJiYgIWN0eC0+ZGlzYWJsZV9pbnY7CiAgICAgICAg
ICBpZiAoaW52KQogICAgICAgICAgewogICAgICAgICAgICAgaW50IGo7CkBAIC04MTAsNiArODY2
LDkgQEAgc3RhdGljIHZvaWQgY29tcHV0ZV90aGV0YShzdHJ1Y3QgYmFuZF9jdHggKmN0eCwgc3Ry
dWN0IHNwbGl0X2N0eCAqc2N0eCwKICAgICAgICAgICAgIGludiA9IGVjX2RlY19iaXRfbG9ncChl
YywgMik7CiAgICAgICB9IGVsc2UKICAgICAgICAgIGludiA9IDA7CisgICAgICAvKiBpbnYgZmxh
ZyBvdmVycmlkZSB0byBhdm9pZCBwcm9ibGVtcyB3aXRoIGRvd25taXhpbmcuICovCisgICAgICBp
ZiAoY3R4LT5kaXNhYmxlX2ludikKKyAgICAgICAgIGludiA9IDA7CiAgICAgICBpdGhldGEgPSAw
OwogICAgfQogICAgcWFsbG9jID0gZWNfdGVsbF9mcmFjKGVjKSAtIHRlbGw7CkBAIC04NDUsMTEg
KzkwNCw2IEBAIHN0YXRpYyB2b2lkIGNvbXB1dGVfdGhldGEoc3RydWN0IGJhbmRfY3R4ICpjdHgs
IHN0cnVjdCBzcGxpdF9jdHggKnNjdHgsCiBzdGF0aWMgdW5zaWduZWQgcXVhbnRfYmFuZF9uMShz
dHJ1Y3QgYmFuZF9jdHggKmN0eCwgY2VsdF9ub3JtICpYLCBjZWx0X25vcm0gKlksIGludCBiLAog
ICAgICAgY2VsdF9ub3JtICpsb3diYW5kX291dCkKIHsKLSNpZmRlZiBSRVNZTlRICi0gICBpbnQg
cmVzeW50aCA9IDE7Ci0jZWxzZQotICAgaW50IHJlc3ludGggPSAhY3R4LT5lbmNvZGU7Ci0jZW5k
aWYKICAgIGludCBjOwogICAgaW50IHN0ZXJlbzsKICAgIGNlbHRfbm9ybSAqeCA9IFg7CkBAIC04
NzQsNyArOTI4LDcgQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50X2JhbmRfbjEoc3RydWN0IGJhbmRf
Y3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwgY2VsdF9ub3JtICpZLAogICAgICAgICAgY3R4LT5yZW1h
aW5pbmdfYml0cyAtPSAxPDxCSVRSRVM7CiAgICAgICAgICBiLT0xPDxCSVRSRVM7CiAgICAgICB9
Ci0gICAgICBpZiAocmVzeW50aCkKKyAgICAgIGlmIChjdHgtPnJlc3ludGgpCiAgICAgICAgICB4
WzBdID0gc2lnbiA/IC1OT1JNX1NDQUxJTkcgOiBOT1JNX1NDQUxJTkc7CiAgICAgICB4ID0gWTsK
ICAgIH0gd2hpbGUgKCsrYzwxK3N0ZXJlbyk7CkBAIC04OTksMTEgKzk1Myw2IEBAIHN0YXRpYyB1
bnNpZ25lZCBxdWFudF9wYXJ0aXRpb24oc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAq
WCwKICAgIGludCBCMD1COwogICAgb3B1c192YWwxNiBtaWQ9MCwgc2lkZT0wOwogICAgdW5zaWdu
ZWQgY209MDsKLSNpZmRlZiBSRVNZTlRICi0gICBpbnQgcmVzeW50aCA9IDE7Ci0jZWxzZQotICAg
aW50IHJlc3ludGggPSAhY3R4LT5lbmNvZGU7Ci0jZW5kaWYKICAgIGNlbHRfbm9ybSAqWT1OVUxM
OwogICAgaW50IGVuY29kZTsKICAgIGNvbnN0IENFTFRNb2RlICptOwpAQCAtOTM1LDggKzk4NCw3
IEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFudF9wYXJ0aXRpb24oc3RydWN0IGJhbmRfY3R4ICpjdHgs
IGNlbHRfbm9ybSAqWCwKICAgICAgICAgIGZpbGwgPSAoZmlsbCYxKXwoZmlsbDw8MSk7CiAgICAg
ICBCID0gKEIrMSk+PjE7CiAKLSAgICAgIGNvbXB1dGVfdGhldGEoY3R4LCAmc2N0eCwgWCwgWSwg
TiwgJmIsIEIsIEIwLAotICAgICAgICAgICAgTE0sIDAsICZmaWxsKTsKKyAgICAgIGNvbXB1dGVf
dGhldGEoY3R4LCAmc2N0eCwgWCwgWSwgTiwgJmIsIEIsIEIwLCBMTSwgMCwgJmZpbGwpOwogICAg
ICAgaW1pZCA9IHNjdHguaW1pZDsKICAgICAgIGlzaWRlID0gc2N0eC5pc2lkZTsKICAgICAgIGRl
bHRhID0gc2N0eC5kZWx0YTsKQEAgLTk3MCwyNCArMTAxOCwyMCBAQCBzdGF0aWMgdW5zaWduZWQg
cXVhbnRfcGFydGl0aW9uKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsCiAgICAg
ICByZWJhbGFuY2UgPSBjdHgtPnJlbWFpbmluZ19iaXRzOwogICAgICAgaWYgKG1iaXRzID49IHNi
aXRzKQogICAgICAgewotICAgICAgICAgY20gPSBxdWFudF9wYXJ0aXRpb24oY3R4LCBYLCBOLCBt
Yml0cywgQiwKLSAgICAgICAgICAgICAgIGxvd2JhbmQsIExNLAorICAgICAgICAgY20gPSBxdWFu
dF9wYXJ0aXRpb24oY3R4LCBYLCBOLCBtYml0cywgQiwgbG93YmFuZCwgTE0sCiAgICAgICAgICAg
ICAgICBNVUxUMTZfMTZfUDE1KGdhaW4sbWlkKSwgZmlsbCk7CiAgICAgICAgICByZWJhbGFuY2Ug
PSBtYml0cyAtIChyZWJhbGFuY2UtY3R4LT5yZW1haW5pbmdfYml0cyk7CiAgICAgICAgICBpZiAo
cmViYWxhbmNlID4gMzw8QklUUkVTICYmIGl0aGV0YSE9MCkKICAgICAgICAgICAgIHNiaXRzICs9
IHJlYmFsYW5jZSAtICgzPDxCSVRSRVMpOwotICAgICAgICAgY20gfD0gcXVhbnRfcGFydGl0aW9u
KGN0eCwgWSwgTiwgc2JpdHMsIEIsCi0gICAgICAgICAgICAgICBuZXh0X2xvd2JhbmQyLCBMTSwK
KyAgICAgICAgIGNtIHw9IHF1YW50X3BhcnRpdGlvbihjdHgsIFksIE4sIHNiaXRzLCBCLCBuZXh0
X2xvd2JhbmQyLCBMTSwKICAgICAgICAgICAgICAgIE1VTFQxNl8xNl9QMTUoZ2FpbixzaWRlKSwg
ZmlsbD4+Qik8PChCMD4+MSk7CiAgICAgICB9IGVsc2UgewotICAgICAgICAgY20gPSBxdWFudF9w
YXJ0aXRpb24oY3R4LCBZLCBOLCBzYml0cywgQiwKLSAgICAgICAgICAgICAgIG5leHRfbG93YmFu
ZDIsIExNLAorICAgICAgICAgY20gPSBxdWFudF9wYXJ0aXRpb24oY3R4LCBZLCBOLCBzYml0cywg
QiwgbmV4dF9sb3diYW5kMiwgTE0sCiAgICAgICAgICAgICAgICBNVUxUMTZfMTZfUDE1KGdhaW4s
c2lkZSksIGZpbGw+PkIpPDwoQjA+PjEpOwogICAgICAgICAgcmViYWxhbmNlID0gc2JpdHMgLSAo
cmViYWxhbmNlLWN0eC0+cmVtYWluaW5nX2JpdHMpOwogICAgICAgICAgaWYgKHJlYmFsYW5jZSA+
IDM8PEJJVFJFUyAmJiBpdGhldGEhPTE2Mzg0KQogICAgICAgICAgICAgbWJpdHMgKz0gcmViYWxh
bmNlIC0gKDM8PEJJVFJFUyk7Ci0gICAgICAgICBjbSB8PSBxdWFudF9wYXJ0aXRpb24oY3R4LCBY
LCBOLCBtYml0cywgQiwKLSAgICAgICAgICAgICAgIGxvd2JhbmQsIExNLAorICAgICAgICAgY20g
fD0gcXVhbnRfcGFydGl0aW9uKGN0eCwgWCwgTiwgbWJpdHMsIEIsIGxvd2JhbmQsIExNLAogICAg
ICAgICAgICAgICAgTVVMVDE2XzE2X1AxNShnYWluLG1pZCksIGZpbGwpOwogICAgICAgfQogICAg
fSBlbHNlIHsKQEAgLTEwMTIsMTggKzEwNTYsMTQgQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50X3Bh
cnRpdGlvbihzdHJ1Y3QgYmFuZF9jdHggKmN0eCwgY2VsdF9ub3JtICpYLAogICAgICAgICAgLyog
RmluYWxseSBkbyB0aGUgYWN0dWFsIHF1YW50aXphdGlvbiAqLwogICAgICAgICAgaWYgKGVuY29k
ZSkKICAgICAgICAgIHsKLSAgICAgICAgICAgIGNtID0gYWxnX3F1YW50KFgsIE4sIEssIHNwcmVh
ZCwgQiwgZWMKLSNpZmRlZiBSRVNZTlRICi0gICAgICAgICAgICAgICAgICwgZ2FpbgotI2VuZGlm
Ci0gICAgICAgICAgICAgICAgICk7CisgICAgICAgICAgICBjbSA9IGFsZ19xdWFudChYLCBOLCBL
LCBzcHJlYWQsIEIsIGVjLCBnYWluLCBjdHgtPnJlc3ludGgsIGN0eC0+YXJjaCk7CiAgICAgICAg
ICB9IGVsc2UgewogICAgICAgICAgICAgY20gPSBhbGdfdW5xdWFudChYLCBOLCBLLCBzcHJlYWQs
IEIsIGVjLCBnYWluKTsKICAgICAgICAgIH0KICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAvKiBJ
ZiB0aGVyZSdzIG5vIHB1bHNlLCBmaWxsIHRoZSBiYW5kIGFueXdheSAqLwogICAgICAgICAgaW50
IGo7Ci0gICAgICAgICBpZiAocmVzeW50aCkKKyAgICAgICAgIGlmIChjdHgtPnJlc3ludGgpCiAg
ICAgICAgICB7CiAgICAgICAgICAgICB1bnNpZ25lZCBjbV9tYXNrOwogICAgICAgICAgICAgLyog
QiBjYW4gYmUgYXMgbGFyZ2UgYXMgMTYsIHNvIHRoaXMgc2hpZnQgbWlnaHQgb3ZlcmZsb3cgYW4g
aW50IG9uIGEKQEAgLTEwODAsMTEgKzExMjAsNiBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfYmFu
ZChzdHJ1Y3QgYmFuZF9jdHggKmN0eCwgY2VsdF9ub3JtICpYLAogICAgaW50IHJlY29tYmluZT0w
OwogICAgaW50IGxvbmdCbG9ja3M7CiAgICB1bnNpZ25lZCBjbT0wOwotI2lmZGVmIFJFU1lOVEgK
LSAgIGludCByZXN5bnRoID0gMTsKLSNlbHNlCi0gICBpbnQgcmVzeW50aCA9ICFjdHgtPmVuY29k
ZTsKLSNlbmRpZgogICAgaW50IGs7CiAgICBpbnQgZW5jb2RlOwogICAgaW50IHRmX2NoYW5nZTsK
QEAgLTExNTEsMTEgKzExODYsMTAgQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50X2JhbmQoc3RydWN0
IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwKICAgICAgICAgIGRlaW50ZXJsZWF2ZV9oYWRh
bWFyZChsb3diYW5kLCBOX0I+PnJlY29tYmluZSwgQjA8PHJlY29tYmluZSwgbG9uZ0Jsb2Nrcyk7
CiAgICB9CiAKLSAgIGNtID0gcXVhbnRfcGFydGl0aW9uKGN0eCwgWCwgTiwgYiwgQiwgbG93YmFu
ZCwKLSAgICAgICAgIExNLCBnYWluLCBmaWxsKTsKKyAgIGNtID0gcXVhbnRfcGFydGl0aW9uKGN0
eCwgWCwgTiwgYiwgQiwgbG93YmFuZCwgTE0sIGdhaW4sIGZpbGwpOwogCiAgICAvKiBUaGlzIGNv
ZGUgaXMgdXNlZCBieSB0aGUgZGVjb2RlciBhbmQgYnkgdGhlIHJlc3ludGhlc2lzLWVuYWJsZWQg
ZW5jb2RlciAqLwotICAgaWYgKHJlc3ludGgpCisgICBpZiAoY3R4LT5yZXN5bnRoKQogICAgewog
ICAgICAgLyogVW5kbyB0aGUgc2FtcGxlIHJlb3JnYW5pemF0aW9uIGdvaW5nIGZyb20gdGltZSBv
cmRlciB0byBmcmVxdWVuY3kgb3JkZXIgKi8KICAgICAgIGlmIChCMD4xKQpAQCAtMTIwOCwxMSAr
MTI0Miw2IEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFudF9iYW5kX3N0ZXJlbyhzdHJ1Y3QgYmFuZF9j
dHggKmN0eCwgY2VsdF9ub3JtICpYLCBjZWx0X25vcm0KICAgIGludCBpbnYgPSAwOwogICAgb3B1
c192YWwxNiBtaWQ9MCwgc2lkZT0wOwogICAgdW5zaWduZWQgY209MDsKLSNpZmRlZiBSRVNZTlRI
Ci0gICBpbnQgcmVzeW50aCA9IDE7Ci0jZWxzZQotICAgaW50IHJlc3ludGggPSAhY3R4LT5lbmNv
ZGU7Ci0jZW5kaWYKICAgIGludCBtYml0cywgc2JpdHMsIGRlbHRhOwogICAgaW50IGl0aGV0YTsK
ICAgIGludCBxYWxsb2M7CkBAIC0xMjMyLDggKzEyNjEsNyBAQCBzdGF0aWMgdW5zaWduZWQgcXVh
bnRfYmFuZF9zdGVyZW8oc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwgY2VsdF9u
b3JtCiAKICAgIG9yaWdfZmlsbCA9IGZpbGw7CiAKLSAgIGNvbXB1dGVfdGhldGEoY3R4LCAmc2N0
eCwgWCwgWSwgTiwgJmIsIEIsIEIsCi0gICAgICAgICBMTSwgMSwgJmZpbGwpOworICAgY29tcHV0
ZV90aGV0YShjdHgsICZzY3R4LCBYLCBZLCBOLCAmYiwgQiwgQiwgTE0sIDEsICZmaWxsKTsKICAg
IGludiA9IHNjdHguaW52OwogICAgaW1pZCA9IHNjdHguaW1pZDsKICAgIGlzaWRlID0gc2N0eC5p
c2lkZTsKQEAgLTEyODEsMTMgKzEzMDksMTMgQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50X2JhbmRf
c3RlcmVvKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsIGNlbHRfbm9ybQogICAg
ICAgc2lnbiA9IDEtMipzaWduOwogICAgICAgLyogV2UgdXNlIG9yaWdfZmlsbCBoZXJlIGJlY2F1
c2Ugd2Ugd2FudCB0byBmb2xkIHRoZSBzaWRlLCBidXQgaWYKICAgICAgICAgIGl0aGV0YT09MTYz
ODQsIHdlJ2xsIGhhdmUgY2xlYXJlZCB0aGUgbG93IGJpdHMgb2YgZmlsbC4gKi8KLSAgICAgIGNt
ID0gcXVhbnRfYmFuZChjdHgsIHgyLCBOLCBtYml0cywgQiwgbG93YmFuZCwKLSAgICAgICAgICAg
IExNLCBsb3diYW5kX291dCwgUTE1T05FLCBsb3diYW5kX3NjcmF0Y2gsIG9yaWdfZmlsbCk7Cisg
ICAgICBjbSA9IHF1YW50X2JhbmQoY3R4LCB4MiwgTiwgbWJpdHMsIEIsIGxvd2JhbmQsIExNLCBs
b3diYW5kX291dCwgUTE1T05FLAorICAgICAgICAgICAgbG93YmFuZF9zY3JhdGNoLCBvcmlnX2Zp
bGwpOwogICAgICAgLyogV2UgZG9uJ3Qgc3BsaXQgTj0yIGJhbmRzLCBzbyBjbSBpcyBlaXRoZXIg
MSBvciAwIChmb3IgYSBmb2xkLWNvbGxhcHNlKSwKICAgICAgICAgIGFuZCB0aGVyZSdzIG5vIG5l
ZWQgdG8gd29ycnkgYWJvdXQgbWl4aW5nIHdpdGggdGhlIG90aGVyIGNoYW5uZWwuICovCiAgICAg
ICB5MlswXSA9IC1zaWduKngyWzFdOwogICAgICAgeTJbMV0gPSBzaWduKngyWzBdOwotICAgICAg
aWYgKHJlc3ludGgpCisgICAgICBpZiAoY3R4LT5yZXN5bnRoKQogICAgICAgewogICAgICAgICAg
Y2VsdF9ub3JtIHRtcDsKICAgICAgICAgIFhbMF0gPSBNVUxUMTZfMTZfUTE1KG1pZCwgWFswXSk7
CkBAIC0xMzE0LDM4ICsxMzQyLDMyIEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFudF9iYW5kX3N0ZXJl
byhzdHJ1Y3QgYmFuZF9jdHggKmN0eCwgY2VsdF9ub3JtICpYLCBjZWx0X25vcm0KICAgICAgIHsK
ICAgICAgICAgIC8qIEluIHN0ZXJlbyBtb2RlLCB3ZSBkbyBub3QgYXBwbHkgYSBzY2FsaW5nIHRv
IHRoZSBtaWQgYmVjYXVzZSB3ZSBuZWVkIHRoZSBub3JtYWxpemVkCiAgICAgICAgICAgICBtaWQg
Zm9yIGZvbGRpbmcgbGF0ZXIuICovCi0gICAgICAgICBjbSA9IHF1YW50X2JhbmQoY3R4LCBYLCBO
LCBtYml0cywgQiwKLSAgICAgICAgICAgICAgIGxvd2JhbmQsIExNLCBsb3diYW5kX291dCwKLSAg
ICAgICAgICAgICAgIFExNU9ORSwgbG93YmFuZF9zY3JhdGNoLCBmaWxsKTsKKyAgICAgICAgIGNt
ID0gcXVhbnRfYmFuZChjdHgsIFgsIE4sIG1iaXRzLCBCLCBsb3diYW5kLCBMTSwgbG93YmFuZF9v
dXQsIFExNU9ORSwKKyAgICAgICAgICAgICAgIGxvd2JhbmRfc2NyYXRjaCwgZmlsbCk7CiAgICAg
ICAgICByZWJhbGFuY2UgPSBtYml0cyAtIChyZWJhbGFuY2UtY3R4LT5yZW1haW5pbmdfYml0cyk7
CiAgICAgICAgICBpZiAocmViYWxhbmNlID4gMzw8QklUUkVTICYmIGl0aGV0YSE9MCkKICAgICAg
ICAgICAgIHNiaXRzICs9IHJlYmFsYW5jZSAtICgzPDxCSVRSRVMpOwogCiAgICAgICAgICAvKiBG
b3IgYSBzdGVyZW8gc3BsaXQsIHRoZSBoaWdoIGJpdHMgb2YgZmlsbCBhcmUgYWx3YXlzIHplcm8s
IHNvIG5vCiAgICAgICAgICAgICBmb2xkaW5nIHdpbGwgYmUgZG9uZSB0byB0aGUgc2lkZS4gKi8K
LSAgICAgICAgIGNtIHw9IHF1YW50X2JhbmQoY3R4LCBZLCBOLCBzYml0cywgQiwKLSAgICAgICAg
ICAgICAgIE5VTEwsIExNLCBOVUxMLAotICAgICAgICAgICAgICAgc2lkZSwgTlVMTCwgZmlsbD4+
Qik7CisgICAgICAgICBjbSB8PSBxdWFudF9iYW5kKGN0eCwgWSwgTiwgc2JpdHMsIEIsIE5VTEws
IExNLCBOVUxMLCBzaWRlLCBOVUxMLCBmaWxsPj5CKTsKICAgICAgIH0gZWxzZSB7CiAgICAgICAg
ICAvKiBGb3IgYSBzdGVyZW8gc3BsaXQsIHRoZSBoaWdoIGJpdHMgb2YgZmlsbCBhcmUgYWx3YXlz
IHplcm8sIHNvIG5vCiAgICAgICAgICAgICBmb2xkaW5nIHdpbGwgYmUgZG9uZSB0byB0aGUgc2lk
ZS4gKi8KLSAgICAgICAgIGNtID0gcXVhbnRfYmFuZChjdHgsIFksIE4sIHNiaXRzLCBCLAotICAg
ICAgICAgICAgICAgTlVMTCwgTE0sIE5VTEwsCi0gICAgICAgICAgICAgICBzaWRlLCBOVUxMLCBm
aWxsPj5CKTsKKyAgICAgICAgIGNtID0gcXVhbnRfYmFuZChjdHgsIFksIE4sIHNiaXRzLCBCLCBO
VUxMLCBMTSwgTlVMTCwgc2lkZSwgTlVMTCwgZmlsbD4+Qik7CiAgICAgICAgICByZWJhbGFuY2Ug
PSBzYml0cyAtIChyZWJhbGFuY2UtY3R4LT5yZW1haW5pbmdfYml0cyk7CiAgICAgICAgICBpZiAo
cmViYWxhbmNlID4gMzw8QklUUkVTICYmIGl0aGV0YSE9MTYzODQpCiAgICAgICAgICAgICBtYml0
cyArPSByZWJhbGFuY2UgLSAoMzw8QklUUkVTKTsKICAgICAgICAgIC8qIEluIHN0ZXJlbyBtb2Rl
LCB3ZSBkbyBub3QgYXBwbHkgYSBzY2FsaW5nIHRvIHRoZSBtaWQgYmVjYXVzZSB3ZSBuZWVkIHRo
ZSBub3JtYWxpemVkCiAgICAgICAgICAgICBtaWQgZm9yIGZvbGRpbmcgbGF0ZXIuICovCi0gICAg
ICAgICBjbSB8PSBxdWFudF9iYW5kKGN0eCwgWCwgTiwgbWJpdHMsIEIsCi0gICAgICAgICAgICAg
ICBsb3diYW5kLCBMTSwgbG93YmFuZF9vdXQsCi0gICAgICAgICAgICAgICBRMTVPTkUsIGxvd2Jh
bmRfc2NyYXRjaCwgZmlsbCk7CisgICAgICAgICBjbSB8PSBxdWFudF9iYW5kKGN0eCwgWCwgTiwg
bWJpdHMsIEIsIGxvd2JhbmQsIExNLCBsb3diYW5kX291dCwgUTE1T05FLAorICAgICAgICAgICAg
ICAgbG93YmFuZF9zY3JhdGNoLCBmaWxsKTsKICAgICAgIH0KICAgIH0KIAogCiAgICAvKiBUaGlz
IGNvZGUgaXMgdXNlZCBieSB0aGUgZGVjb2RlciBhbmQgYnkgdGhlIHJlc3ludGhlc2lzLWVuYWJs
ZWQgZW5jb2RlciAqLwotICAgaWYgKHJlc3ludGgpCisgICBpZiAoY3R4LT5yZXN5bnRoKQogICAg
ewogICAgICAgaWYgKE4hPTIpCiAgICAgICAgICBzdGVyZW9fbWVyZ2UoWCwgWSwgbWlkLCBOLCBj
dHgtPmFyY2gpOwpAQCAtMTM1OSwxOSArMTM4MSwzOCBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRf
YmFuZF9zdGVyZW8oc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwgY2VsdF9ub3Jt
CiAgICByZXR1cm4gY207CiB9CiAKK3N0YXRpYyB2b2lkIHNwZWNpYWxfaHlicmlkX2ZvbGRpbmco
Y29uc3QgQ0VMVE1vZGUgKm0sIGNlbHRfbm9ybSAqbm9ybSwgY2VsdF9ub3JtICpub3JtMiwgaW50
IHN0YXJ0LCBpbnQgTSwgaW50IGR1YWxfc3RlcmVvKQoreworICAgaW50IG4xLCBuMjsKKyAgIGNv
bnN0IG9wdXNfaW50MTYgKiBPUFVTX1JFU1RSSUNUIGVCYW5kcyA9IG0tPmVCYW5kczsKKyAgIG4x
ID0gTSooZUJhbmRzW3N0YXJ0KzFdLWVCYW5kc1tzdGFydF0pOworICAgbjIgPSBNKihlQmFuZHNb
c3RhcnQrMl0tZUJhbmRzW3N0YXJ0KzFdKTsKKyAgIC8qIER1cGxpY2F0ZSBlbm91Z2ggb2YgdGhl
IGZpcnN0IGJhbmQgZm9sZGluZyBkYXRhIHRvIGJlIGFibGUgdG8gZm9sZCB0aGUgc2Vjb25kIGJh
bmQuCisgICAgICBDb3BpZXMgbm8gZGF0YSBmb3IgQ0VMVC1vbmx5IG1vZGUuICovCisgICBPUFVT
X0NPUFkoJm5vcm1bbjFdLCAmbm9ybVsyKm4xIC0gbjJdLCBuMi1uMSk7CisgICBpZiAoZHVhbF9z
dGVyZW8pCisgICAgICBPUFVTX0NPUFkoJm5vcm0yW24xXSwgJm5vcm0yWzIqbjEgLSBuMl0sIG4y
LW4xKTsKK30KIAogdm9pZCBxdWFudF9hbGxfYmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1v
ZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwKICAgICAgIGNlbHRfbm9ybSAqWF8sIGNlbHRfbm9y
bSAqWV8sIHVuc2lnbmVkIGNoYXIgKmNvbGxhcHNlX21hc2tzLAogICAgICAgY29uc3QgY2VsdF9l
bmVyICpiYW5kRSwgaW50ICpwdWxzZXMsIGludCBzaG9ydEJsb2NrcywgaW50IHNwcmVhZCwKICAg
ICAgIGludCBkdWFsX3N0ZXJlbywgaW50IGludGVuc2l0eSwgaW50ICp0Zl9yZXMsIG9wdXNfaW50
MzIgdG90YWxfYml0cywKICAgICAgIG9wdXNfaW50MzIgYmFsYW5jZSwgZWNfY3R4ICplYywgaW50
IExNLCBpbnQgY29kZWRCYW5kcywKLSAgICAgIG9wdXNfdWludDMyICpzZWVkLCBpbnQgYXJjaCkK
KyAgICAgIG9wdXNfdWludDMyICpzZWVkLCBpbnQgY29tcGxleGl0eSwgaW50IGFyY2gsIGludCBk
aXNhYmxlX2ludikKIHsKICAgIGludCBpOwogICAgb3B1c19pbnQzMiByZW1haW5pbmdfYml0czsK
ICAgIGNvbnN0IG9wdXNfaW50MTYgKiBPUFVTX1JFU1RSSUNUIGVCYW5kcyA9IG0tPmVCYW5kczsK
ICAgIGNlbHRfbm9ybSAqIE9QVVNfUkVTVFJJQ1Qgbm9ybSwgKiBPUFVTX1JFU1RSSUNUIG5vcm0y
OwogICAgVkFSREVDTChjZWx0X25vcm0sIF9ub3JtKTsKKyAgIFZBUkRFQ0woY2VsdF9ub3JtLCBf
bG93YmFuZF9zY3JhdGNoKTsKKyAgIFZBUkRFQ0woY2VsdF9ub3JtLCBYX3NhdmUpOworICAgVkFS
REVDTChjZWx0X25vcm0sIFlfc2F2ZSk7CisgICBWQVJERUNMKGNlbHRfbm9ybSwgWF9zYXZlMik7
CisgICBWQVJERUNMKGNlbHRfbm9ybSwgWV9zYXZlMik7CisgICBWQVJERUNMKGNlbHRfbm9ybSwg
bm9ybV9zYXZlMik7CisgICBpbnQgcmVzeW50aF9hbGxvYzsKICAgIGNlbHRfbm9ybSAqbG93YmFu
ZF9zY3JhdGNoOwogICAgaW50IEI7CiAgICBpbnQgTTsKQEAgLTEzNzksMTAgKzE0MjAsMTEgQEAg
dm9pZCBxdWFudF9hbGxfYmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBz
dGFydCwgaW50IGVuZCwKICAgIGludCB1cGRhdGVfbG93YmFuZCA9IDE7CiAgICBpbnQgQyA9IFlf
ICE9IE5VTEwgPyAyIDogMTsKICAgIGludCBub3JtX29mZnNldDsKKyAgIGludCB0aGV0YV9yZG8g
PSBlbmNvZGUgJiYgWV8hPU5VTEwgJiYgIWR1YWxfc3RlcmVvICYmIGNvbXBsZXhpdHk+PTg7CiAj
aWZkZWYgUkVTWU5USAogICAgaW50IHJlc3ludGggPSAxOwogI2Vsc2UKLSAgIGludCByZXN5bnRo
ID0gIWVuY29kZTsKKyAgIGludCByZXN5bnRoID0gIWVuY29kZSB8fCB0aGV0YV9yZG87CiAjZW5k
aWYKICAgIHN0cnVjdCBiYW5kX2N0eCBjdHg7CiAgICBTQVZFX1NUQUNLOwpAQCAtMTM5NSw5ICsx
NDM3LDI0IEBAIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2Rl
ICptLCBpbnQgc3RhcnQsIGludCBlbmQsCiAgICBBTExPQyhfbm9ybSwgQyooTSplQmFuZHNbbS0+
bmJFQmFuZHMtMV0tbm9ybV9vZmZzZXQpLCBjZWx0X25vcm0pOwogICAgbm9ybSA9IF9ub3JtOwog
ICAgbm9ybTIgPSBub3JtICsgTSplQmFuZHNbbS0+bmJFQmFuZHMtMV0tbm9ybV9vZmZzZXQ7Ci0g
ICAvKiBXZSBjYW4gdXNlIHRoZSBsYXN0IGJhbmQgYXMgc2NyYXRjaCBzcGFjZSBiZWNhdXNlIHdl
IGRvbid0IG5lZWQgdGhhdAotICAgICAgc2NyYXRjaCBzcGFjZSBmb3IgdGhlIGxhc3QgYmFuZC4g
Ki8KLSAgIGxvd2JhbmRfc2NyYXRjaCA9IFhfK00qZUJhbmRzW20tPm5iRUJhbmRzLTFdOworCisg
ICAvKiBGb3IgZGVjb2RpbmcsIHdlIGNhbiB1c2UgdGhlIGxhc3QgYmFuZCBhcyBzY3JhdGNoIHNw
YWNlIGJlY2F1c2Ugd2UgZG9uJ3QgbmVlZCB0aGF0CisgICAgICBzY3JhdGNoIHNwYWNlIGZvciB0
aGUgbGFzdCBiYW5kIGFuZCB3ZSBkb24ndCBjYXJlIGFib3V0IHRoZSBkYXRhIHRoZXJlIHVudGls
IHdlJ3JlCisgICAgICBkZWNvZGluZyB0aGUgbGFzdCBiYW5kLiAqLworICAgaWYgKGVuY29kZSAm
JiByZXN5bnRoKQorICAgICAgcmVzeW50aF9hbGxvYyA9IE0qKGVCYW5kc1ttLT5uYkVCYW5kc10t
ZUJhbmRzW20tPm5iRUJhbmRzLTFdKTsKKyAgIGVsc2UKKyAgICAgIHJlc3ludGhfYWxsb2MgPSBB
TExPQ19OT05FOworICAgQUxMT0MoX2xvd2JhbmRfc2NyYXRjaCwgcmVzeW50aF9hbGxvYywgY2Vs
dF9ub3JtKTsKKyAgIGlmIChlbmNvZGUgJiYgcmVzeW50aCkKKyAgICAgIGxvd2JhbmRfc2NyYXRj
aCA9IF9sb3diYW5kX3NjcmF0Y2g7CisgICBlbHNlCisgICAgICBsb3diYW5kX3NjcmF0Y2ggPSBY
XytNKmVCYW5kc1ttLT5uYkVCYW5kcy0xXTsKKyAgIEFMTE9DKFhfc2F2ZSwgcmVzeW50aF9hbGxv
YywgY2VsdF9ub3JtKTsKKyAgIEFMTE9DKFlfc2F2ZSwgcmVzeW50aF9hbGxvYywgY2VsdF9ub3Jt
KTsKKyAgIEFMTE9DKFhfc2F2ZTIsIHJlc3ludGhfYWxsb2MsIGNlbHRfbm9ybSk7CisgICBBTExP
QyhZX3NhdmUyLCByZXN5bnRoX2FsbG9jLCBjZWx0X25vcm0pOworICAgQUxMT0Mobm9ybV9zYXZl
MiwgcmVzeW50aF9hbGxvYywgY2VsdF9ub3JtKTsKIAogICAgbG93YmFuZF9vZmZzZXQgPSAwOwog
ICAgY3R4LmJhbmRFID0gYmFuZEU7CkBAIC0xNDA4LDYgKzE0NjUsMTEgQEAgdm9pZCBxdWFudF9h
bGxfYmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVu
ZCwKICAgIGN0eC5zZWVkID0gKnNlZWQ7CiAgICBjdHguc3ByZWFkID0gc3ByZWFkOwogICAgY3R4
LmFyY2ggPSBhcmNoOworICAgY3R4LmRpc2FibGVfaW52ID0gZGlzYWJsZV9pbnY7CisgICBjdHgu
cmVzeW50aCA9IHJlc3ludGg7CisgICBjdHgudGhldGFfcm91bmQgPSAwOworICAgLyogQXZvaWQg
aW5qZWN0aW5nIG5vaXNlIGluIHRoZSBmaXJzdCBiYW5kIG9uIHRyYW5zaWVudHMuICovCisgICBj
dHguYXZvaWRfc3BsaXRfbm9pc2UgPSBCID4gMTsKICAgIGZvciAoaT1zdGFydDtpPGVuZDtpKysp
CiAgICB7CiAgICAgICBvcHVzX2ludDMyIHRlbGw7CkBAIC0xNDQ1LDggKzE1MDcsMTUgQEAgdm9p
ZCBxdWFudF9hbGxfYmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFy
dCwgaW50IGVuZCwKICAgICAgICAgIGIgPSAwOwogICAgICAgfQogCisjaWZkZWYgRU5BQkxFX1VQ
REFURV9EUkFGVAorICAgICAgaWYgKHJlc3ludGggJiYgKE0qZUJhbmRzW2ldLU4gPj0gTSplQmFu
ZHNbc3RhcnRdIHx8IGk9PXN0YXJ0KzEpICYmICh1cGRhdGVfbG93YmFuZCB8fCBsb3diYW5kX29m
ZnNldD09MCkpCisgICAgICAgICAgICBsb3diYW5kX29mZnNldCA9IGk7CisgICAgICBpZiAoaSA9
PSBzdGFydCsxKQorICAgICAgICAgc3BlY2lhbF9oeWJyaWRfZm9sZGluZyhtLCBub3JtLCBub3Jt
Miwgc3RhcnQsIE0sIGR1YWxfc3RlcmVvKTsKKyNlbHNlCiAgICAgICBpZiAocmVzeW50aCAmJiBN
KmVCYW5kc1tpXS1OID49IE0qZUJhbmRzW3N0YXJ0XSAmJiAodXBkYXRlX2xvd2JhbmQgfHwgbG93
YmFuZF9vZmZzZXQ9PTApKQogICAgICAgICAgICAgbG93YmFuZF9vZmZzZXQgPSBpOworI2VuZGlm
CiAKICAgICAgIHRmX2NoYW5nZSA9IHRmX3Jlc1tpXTsKICAgICAgIGN0eC50Zl9jaGFuZ2UgPSB0
Zl9jaGFuZ2U7CkBAIC0xNDU3LDcgKzE1MjYsNyBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhpbnQg
ZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAogICAgICAgICAg
ICAgWSA9IG5vcm07CiAgICAgICAgICBsb3diYW5kX3NjcmF0Y2ggPSBOVUxMOwogICAgICAgfQot
ICAgICAgaWYgKGk9PWVuZC0xKQorICAgICAgaWYgKGxhc3QgJiYgIXRoZXRhX3JkbykKICAgICAg
ICAgIGxvd2JhbmRfc2NyYXRjaCA9IE5VTEw7CiAKICAgICAgIC8qIEdldCBhIGNvbnNlcnZhdGl2
ZSBlc3RpbWF0ZSBvZiB0aGUgY29sbGFwc2VfbWFzaydzIGZvciB0aGUgYmFuZHMgd2UncmUKQEAg
LTE0NzIsNyArMTU0MSwxMSBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhpbnQgZW5jb2RlLCBjb25z
dCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAogICAgICAgICAgZm9sZF9zdGFydCA9
IGxvd2JhbmRfb2Zmc2V0OwogICAgICAgICAgd2hpbGUoTSplQmFuZHNbLS1mb2xkX3N0YXJ0XSA+
IGVmZmVjdGl2ZV9sb3diYW5kK25vcm1fb2Zmc2V0KTsKICAgICAgICAgIGZvbGRfZW5kID0gbG93
YmFuZF9vZmZzZXQtMTsKKyNpZmRlZiBFTkFCTEVfVVBEQVRFX0RSQUZUCisgICAgICAgICB3aGls
ZSgrK2ZvbGRfZW5kIDwgaSAmJiBNKmVCYW5kc1tmb2xkX2VuZF0gPCBlZmZlY3RpdmVfbG93YmFu
ZCtub3JtX29mZnNldCtOKTsKKyNlbHNlCiAgICAgICAgICB3aGlsZShNKmVCYW5kc1srK2ZvbGRf
ZW5kXSA8IGVmZmVjdGl2ZV9sb3diYW5kK25vcm1fb2Zmc2V0K04pOworI2VuZGlmCiAgICAgICAg
ICB4X2NtID0geV9jbSA9IDA7CiAgICAgICAgICBmb2xkX2kgPSBmb2xkX3N0YXJ0OyBkbyB7CiAg
ICAgICAgICAgIHhfY20gfD0gY29sbGFwc2VfbWFza3NbZm9sZF9pKkMrMF07CkBAIC0xNTA1LDEz
ICsxNTc4LDc3IEBAIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRN
b2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQsCiAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYg
KFkhPU5VTEwpCiAgICAgICAgICB7Ci0gICAgICAgICAgICB4X2NtID0gcXVhbnRfYmFuZF9zdGVy
ZW8oJmN0eCwgWCwgWSwgTiwgYiwgQiwKLSAgICAgICAgICAgICAgICAgIGVmZmVjdGl2ZV9sb3di
YW5kICE9IC0xID8gbm9ybStlZmZlY3RpdmVfbG93YmFuZCA6IE5VTEwsIExNLAotICAgICAgICAg
ICAgICAgICAgICAgICAgbGFzdD9OVUxMOm5vcm0rTSplQmFuZHNbaV0tbm9ybV9vZmZzZXQsIGxv
d2JhbmRfc2NyYXRjaCwgeF9jbXx5X2NtKTsKKyAgICAgICAgICAgIGlmICh0aGV0YV9yZG8gJiYg
aSA8IGludGVuc2l0eSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIGVjX2N0eCBlY19z
YXZlLCBlY19zYXZlMjsKKyAgICAgICAgICAgICAgIHN0cnVjdCBiYW5kX2N0eCBjdHhfc2F2ZSwg
Y3R4X3NhdmUyOworICAgICAgICAgICAgICAgb3B1c192YWwzMiBkaXN0MCwgZGlzdDE7CisgICAg
ICAgICAgICAgICB1bnNpZ25lZCBjbSwgY20yOworICAgICAgICAgICAgICAgaW50IG5zdGFydF9i
eXRlcywgbmVuZF9ieXRlcywgc2F2ZV9ieXRlczsKKyAgICAgICAgICAgICAgIHVuc2lnbmVkIGNo
YXIgKmJ5dGVzX2J1ZjsKKyAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgYnl0ZXNfc2F2ZVsx
Mjc1XTsKKyAgICAgICAgICAgICAgIG9wdXNfdmFsMTYgd1syXTsKKyAgICAgICAgICAgICAgIGNv
bXB1dGVfY2hhbm5lbF93ZWlnaHRzKGJhbmRFW2ldLCBiYW5kRVtpK20tPm5iRUJhbmRzXSwgdyk7
CisgICAgICAgICAgICAgICAvKiBNYWtlIGEgY29weS4gKi8KKyAgICAgICAgICAgICAgIGNtID0g
eF9jbXx5X2NtOworICAgICAgICAgICAgICAgZWNfc2F2ZSA9ICplYzsKKyAgICAgICAgICAgICAg
IGN0eF9zYXZlID0gY3R4OworICAgICAgICAgICAgICAgT1BVU19DT1BZKFhfc2F2ZSwgWCwgTik7
CisgICAgICAgICAgICAgICBPUFVTX0NPUFkoWV9zYXZlLCBZLCBOKTsKKyAgICAgICAgICAgICAg
IC8qIEVuY29kZSBhbmQgcm91bmQgZG93bi4gKi8KKyAgICAgICAgICAgICAgIGN0eC50aGV0YV9y
b3VuZCA9IC0xOworICAgICAgICAgICAgICAgeF9jbSA9IHF1YW50X2JhbmRfc3RlcmVvKCZjdHgs
IFgsIFksIE4sIGIsIEIsCisgICAgICAgICAgICAgICAgICAgICBlZmZlY3RpdmVfbG93YmFuZCAh
PSAtMSA/IG5vcm0rZWZmZWN0aXZlX2xvd2JhbmQgOiBOVUxMLCBMTSwKKyAgICAgICAgICAgICAg
ICAgICAgIGxhc3Q/TlVMTDpub3JtK00qZUJhbmRzW2ldLW5vcm1fb2Zmc2V0LCBsb3diYW5kX3Nj
cmF0Y2gsIGNtKTsKKyAgICAgICAgICAgICAgIGRpc3QwID0gTVVMVDE2XzMyX1ExNSh3WzBdLCBj
ZWx0X2lubmVyX3Byb2QoWF9zYXZlLCBYLCBOLCBhcmNoKSkgKyBNVUxUMTZfMzJfUTE1KHdbMV0s
IGNlbHRfaW5uZXJfcHJvZChZX3NhdmUsIFksIE4sIGFyY2gpKTsKKworICAgICAgICAgICAgICAg
LyogU2F2ZSBmaXJzdCByZXN1bHQuICovCisgICAgICAgICAgICAgICBjbTIgPSB4X2NtOworICAg
ICAgICAgICAgICAgZWNfc2F2ZTIgPSAqZWM7CisgICAgICAgICAgICAgICBjdHhfc2F2ZTIgPSBj
dHg7CisgICAgICAgICAgICAgICBPUFVTX0NPUFkoWF9zYXZlMiwgWCwgTik7CisgICAgICAgICAg
ICAgICBPUFVTX0NPUFkoWV9zYXZlMiwgWSwgTik7CisgICAgICAgICAgICAgICBpZiAoIWxhc3Qp
CisgICAgICAgICAgICAgICAgICBPUFVTX0NPUFkobm9ybV9zYXZlMiwgbm9ybStNKmVCYW5kc1tp
XS1ub3JtX29mZnNldCwgTik7CisgICAgICAgICAgICAgICBuc3RhcnRfYnl0ZXMgPSBlY19zYXZl
Lm9mZnM7CisgICAgICAgICAgICAgICBuZW5kX2J5dGVzID0gZWNfc2F2ZS5zdG9yYWdlOworICAg
ICAgICAgICAgICAgYnl0ZXNfYnVmID0gZWNfc2F2ZS5idWYrbnN0YXJ0X2J5dGVzOworICAgICAg
ICAgICAgICAgc2F2ZV9ieXRlcyA9IG5lbmRfYnl0ZXMtbnN0YXJ0X2J5dGVzOworICAgICAgICAg
ICAgICAgT1BVU19DT1BZKGJ5dGVzX3NhdmUsIGJ5dGVzX2J1Ziwgc2F2ZV9ieXRlcyk7CisKKyAg
ICAgICAgICAgICAgIC8qIFJlc3RvcmUgKi8KKyAgICAgICAgICAgICAgICplYyA9IGVjX3NhdmU7
CisgICAgICAgICAgICAgICBjdHggPSBjdHhfc2F2ZTsKKyAgICAgICAgICAgICAgIE9QVVNfQ09Q
WShYLCBYX3NhdmUsIE4pOworICAgICAgICAgICAgICAgT1BVU19DT1BZKFksIFlfc2F2ZSwgTik7
CisgICAgICAgICAgICAgICBpZiAoaSA9PSBzdGFydCsxKQorICAgICAgICAgICAgICAgICAgc3Bl
Y2lhbF9oeWJyaWRfZm9sZGluZyhtLCBub3JtLCBub3JtMiwgc3RhcnQsIE0sIGR1YWxfc3RlcmVv
KTsKKyAgICAgICAgICAgICAgIC8qIEVuY29kZSBhbmQgcm91bmQgdXAuICovCisgICAgICAgICAg
ICAgICBjdHgudGhldGFfcm91bmQgPSAxOworICAgICAgICAgICAgICAgeF9jbSA9IHF1YW50X2Jh
bmRfc3RlcmVvKCZjdHgsIFgsIFksIE4sIGIsIEIsCisgICAgICAgICAgICAgICAgICAgICBlZmZl
Y3RpdmVfbG93YmFuZCAhPSAtMSA/IG5vcm0rZWZmZWN0aXZlX2xvd2JhbmQgOiBOVUxMLCBMTSwK
KyAgICAgICAgICAgICAgICAgICAgIGxhc3Q/TlVMTDpub3JtK00qZUJhbmRzW2ldLW5vcm1fb2Zm
c2V0LCBsb3diYW5kX3NjcmF0Y2gsIGNtKTsKKyAgICAgICAgICAgICAgIGRpc3QxID0gTVVMVDE2
XzMyX1ExNSh3WzBdLCBjZWx0X2lubmVyX3Byb2QoWF9zYXZlLCBYLCBOLCBhcmNoKSkgKyBNVUxU
MTZfMzJfUTE1KHdbMV0sIGNlbHRfaW5uZXJfcHJvZChZX3NhdmUsIFksIE4sIGFyY2gpKTsKKyAg
ICAgICAgICAgICAgIGlmIChkaXN0MCA+PSBkaXN0MSkgeworICAgICAgICAgICAgICAgICAgeF9j
bSA9IGNtMjsKKyAgICAgICAgICAgICAgICAgICplYyA9IGVjX3NhdmUyOworICAgICAgICAgICAg
ICAgICAgY3R4ID0gY3R4X3NhdmUyOworICAgICAgICAgICAgICAgICAgT1BVU19DT1BZKFgsIFhf
c2F2ZTIsIE4pOworICAgICAgICAgICAgICAgICAgT1BVU19DT1BZKFksIFlfc2F2ZTIsIE4pOwor
ICAgICAgICAgICAgICAgICAgaWYgKCFsYXN0KQorICAgICAgICAgICAgICAgICAgICAgT1BVU19D
T1BZKG5vcm0rTSplQmFuZHNbaV0tbm9ybV9vZmZzZXQsIG5vcm1fc2F2ZTIsIE4pOworICAgICAg
ICAgICAgICAgICAgT1BVU19DT1BZKGJ5dGVzX2J1ZiwgYnl0ZXNfc2F2ZSwgc2F2ZV9ieXRlcyk7
CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAg
Y3R4LnRoZXRhX3JvdW5kID0gMDsKKyAgICAgICAgICAgICAgIHhfY20gPSBxdWFudF9iYW5kX3N0
ZXJlbygmY3R4LCBYLCBZLCBOLCBiLCBCLAorICAgICAgICAgICAgICAgICAgICAgZWZmZWN0aXZl
X2xvd2JhbmQgIT0gLTEgPyBub3JtK2VmZmVjdGl2ZV9sb3diYW5kIDogTlVMTCwgTE0sCisgICAg
ICAgICAgICAgICAgICAgICBsYXN0P05VTEw6bm9ybStNKmVCYW5kc1tpXS1ub3JtX29mZnNldCwg
bG93YmFuZF9zY3JhdGNoLCB4X2NtfHlfY20pOworICAgICAgICAgICAgfQogICAgICAgICAgfSBl
bHNlIHsKICAgICAgICAgICAgIHhfY20gPSBxdWFudF9iYW5kKCZjdHgsIFgsIE4sIGIsIEIsCiAg
ICAgICAgICAgICAgICAgICBlZmZlY3RpdmVfbG93YmFuZCAhPSAtMSA/IG5vcm0rZWZmZWN0aXZl
X2xvd2JhbmQgOiBOVUxMLCBMTSwKLSAgICAgICAgICAgICAgICAgICAgICAgIGxhc3Q/TlVMTDpu
b3JtK00qZUJhbmRzW2ldLW5vcm1fb2Zmc2V0LCBRMTVPTkUsIGxvd2JhbmRfc2NyYXRjaCwgeF9j
bXx5X2NtKTsKKyAgICAgICAgICAgICAgICAgIGxhc3Q/TlVMTDpub3JtK00qZUJhbmRzW2ldLW5v
cm1fb2Zmc2V0LCBRMTVPTkUsIGxvd2JhbmRfc2NyYXRjaCwgeF9jbXx5X2NtKTsKICAgICAgICAg
IH0KICAgICAgICAgIHlfY20gPSB4X2NtOwogICAgICAgfQpAQCAtMTUyMSw2ICsxNjU4LDkgQEAg
dm9pZCBxdWFudF9hbGxfYmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBz
dGFydCwgaW50IGVuZCwKIAogICAgICAgLyogVXBkYXRlIHRoZSBmb2xkaW5nIHBvc2l0aW9uIG9u
bHkgYXMgbG9uZyBhcyB3ZSBoYXZlIDEgYml0L3NhbXBsZSBkZXB0aC4gKi8KICAgICAgIHVwZGF0
ZV9sb3diYW5kID0gYj4oTjw8QklUUkVTKTsKKyAgICAgIC8qIFdlIG9ubHkgbmVlZCB0byBhdm9p
ZCBub2lzZSBvbiBhIHNwbGl0IGZvciB0aGUgZmlyc3QgYmFuZC4gQWZ0ZXIgdGhhdCwgd2UKKyAg
ICAgICAgIGhhdmUgZm9sZGluZy4gKi8KKyAgICAgIGN0eC5hdm9pZF9zcGxpdF9ub2lzZSA9IDA7
CiAgICB9CiAgICAqc2VlZCA9IGN0eC5zZWVkOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYmFuZHMuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9iYW5kcy5oCmluZGV4IGU4YmVmNGJhZDBlMGIyNTRkOTEwNjJjMzZiN2FhZTI1ZDMxZGM3
OGEuLjI0ODhjMTg1MjEzMGQ2NWMxZTc2MGJmNTdlZTg1ZjY1ZWMxYmIzYjAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9iYW5kcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9iYW5kcy5oCkBAIC0zNiwxMiArMzYsMTUgQEAKICNpbmNs
dWRlICJlbnRkZWMuaCIKICNpbmNsdWRlICJyYXRlLmgiCiAKK29wdXNfaW50MTYgYml0ZXhhY3Rf
Y29zKG9wdXNfaW50MTYgeCk7CitpbnQgYml0ZXhhY3RfbG9nMnRhbihpbnQgaXNpbixpbnQgaWNv
cyk7CisKIC8qKiBDb21wdXRlIHRoZSBhbXBsaXR1ZGUgKHNxcnQgZW5lcmd5KSBpbiBlYWNoIG9m
IHRoZSBiYW5kcwogICogQHBhcmFtIG0gTW9kZSBkYXRhCiAgKiBAcGFyYW0gWCBTcGVjdHJ1bQog
ICogQHBhcmFtIGJhbmRFIFNxdWFyZSByb290IG9mIHRoZSBlbmVyZ3kgZm9yIGVhY2ggYmFuZCAo
cmV0dXJuZWQpCiAgKi8KLXZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNvbnN0IENFTFRNb2Rl
ICptLCBjb25zdCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kRSwgaW50IGVuZCwgaW50IEMs
IGludCBMTSk7Cit2b2lkIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhjb25zdCBDRUxUTW9kZSAqbSwg
Y29uc3QgY2VsdF9zaWcgKlgsIGNlbHRfZW5lciAqYmFuZEUsIGludCBlbmQsIGludCBDLCBpbnQg
TE0sIGludCBhcmNoKTsKIAogLyp2b2lkIGNvbXB1dGVfbm9pc2VfZW5lcmdpZXMoY29uc3QgQ0VM
VE1vZGUgKm0sIGNvbnN0IGNlbHRfc2lnICpYLCBjb25zdCBvcHVzX3ZhbDE2ICp0b25hbGl0eSwg
Y2VsdF9lbmVyICpiYW5kRSk7Ki8KIApAQCAtMTA1LDcgKzEwOCw3IEBAIHZvaWQgcXVhbnRfYWxs
X2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQs
CiAgICAgICBjb25zdCBjZWx0X2VuZXIgKmJhbmRFLCBpbnQgKnB1bHNlcywgaW50IHNob3J0Qmxv
Y2tzLCBpbnQgc3ByZWFkLAogICAgICAgaW50IGR1YWxfc3RlcmVvLCBpbnQgaW50ZW5zaXR5LCBp
bnQgKnRmX3Jlcywgb3B1c19pbnQzMiB0b3RhbF9iaXRzLAogICAgICAgb3B1c19pbnQzMiBiYWxh
bmNlLCBlY19jdHggKmVjLCBpbnQgTSwgaW50IGNvZGVkQmFuZHMsIG9wdXNfdWludDMyICpzZWVk
LAotICAgICAgaW50IGFyY2gpOworICAgICAgaW50IGNvbXBsZXhpdHksIGludCBhcmNoLCBpbnQg
ZGlzYWJsZV9pbnYpOwogCiB2b2lkIGFudGlfY29sbGFwc2UoY29uc3QgQ0VMVE1vZGUgKm0sIGNl
bHRfbm9ybSAqWF8sCiAgICAgICB1bnNpZ25lZCBjaGFyICpjb2xsYXBzZV9tYXNrcywgaW50IExN
LCBpbnQgQywgaW50IHNpemUsIGludCBzdGFydCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0LmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvY2VsdC5jCmluZGV4IGIxMjFjNTFhMWZhYTY0ODYwNzE5NTBlZTRhNDU5NWVkYTA1ZThiYzku
LjljZTIzNDY5NWNlMGQzMTQyNzkwMjI4NjFkZjE1Y2FiYTUxOTBkODMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9jZWx0LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHQuYwpAQCAtMTExLDI2ICsxMTEsMzEgQEAgdm9pZCBjb21i
X2ZpbHRlcl9jb25zdF9jKG9wdXNfdmFsMzIgKnksIG9wdXNfdmFsMzIgKngsIGludCBULCBpbnQg
TiwKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYoeFtpXSwgZzEwLCB4Mik7CiAgICAgICB0ID0gTUFD
MTZfMzJfUTE2KHQsIGcxMSwgQUREMzIoeDEseDMpKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYo
dCwgZzEyLCBBREQzMih4MCx4NCkpOworICAgICAgdCA9IFNBVFVSQVRFKHQsIFNJR19TQVQpOwog
ICAgICAgeVtpXSA9IHQ7CiAgICAgICB4ND1TSEwzMih4W2ktVCszXSwxKTsKICAgICAgIHQgPSBN
QUMxNl8zMl9RMTYoeFtpKzFdLCBnMTAsIHgxKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYodCwg
ZzExLCBBREQzMih4MCx4MikpOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTIsIEFERDMy
KHg0LHgzKSk7CisgICAgICB0ID0gU0FUVVJBVEUodCwgU0lHX1NBVCk7CiAgICAgICB5W2krMV0g
PSB0OwogICAgICAgeDM9U0hMMzIoeFtpLVQrNF0sMSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2
KHhbaSsyXSwgZzEwLCB4MCk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcxMSwgQUREMzIo
eDQseDEpKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYodCwgZzEyLCBBREQzMih4Myx4MikpOwor
ICAgICAgdCA9IFNBVFVSQVRFKHQsIFNJR19TQVQpOwogICAgICAgeVtpKzJdID0gdDsKICAgICAg
IHgyPVNITDMyKHhbaS1UKzVdLDEpOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih4W2krM10sIGcx
MCwgeDQpOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTEsIEFERDMyKHgzLHgwKSk7CiAg
ICAgICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcxMiwgQUREMzIoeDIseDEpKTsKKyAgICAgIHQgPSBT
QVRVUkFURSh0LCBTSUdfU0FUKTsKICAgICAgIHlbaSszXSA9IHQ7CiAgICAgICB4MT1TSEwzMih4
W2ktVCs2XSwxKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYoeFtpKzRdLCBnMTAsIHgzKTsKICAg
ICAgIHQgPSBNQUMxNl8zMl9RMTYodCwgZzExLCBBREQzMih4Mix4NCkpOwogICAgICAgdCA9IE1B
QzE2XzMyX1ExNih0LCBnMTIsIEFERDMyKHgxLHgwKSk7CisgICAgICB0ID0gU0FUVVJBVEUodCwg
U0lHX1NBVCk7CiAgICAgICB5W2krNF0gPSB0OwogICAgfQogI2lmZGVmIENVU1RPTV9NT0RFUwpA
QCAtMTQxLDYgKzE0Niw3IEBAIHZvaWQgY29tYl9maWx0ZXJfY29uc3RfYyhvcHVzX3ZhbDMyICp5
LCBvcHVzX3ZhbDMyICp4LCBpbnQgVCwgaW50IE4sCiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHhb
aV0sIGcxMCwgeDIpOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTEsIEFERDMyKHgxLHgz
KSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcxMiwgQUREMzIoeDAseDQpKTsKKyAgICAg
IHQgPSBTQVRVUkFURSh0LCBTSUdfU0FUKTsKICAgICAgIHlbaV0gPSB0OwogICAgICAgeDQ9eDM7
CiAgICAgICB4Mz14MjsKQEAgLTE2OSw2ICsxNzUsNyBAQCB2b2lkIGNvbWJfZmlsdGVyX2NvbnN0
X2Mob3B1c192YWwzMiAqeSwgb3B1c192YWwzMiAqeCwgaW50IFQsIGludCBOLAogICAgICAgICAg
ICAgICAgKyBNVUxUMTZfMzJfUTE1KGcxMCx4MikKICAgICAgICAgICAgICAgICsgTVVMVDE2XzMy
X1ExNShnMTEsQUREMzIoeDEseDMpKQogICAgICAgICAgICAgICAgKyBNVUxUMTZfMzJfUTE1KGcx
MixBREQzMih4MCx4NCkpOworICAgICAgeVtpXSA9IFNBVFVSQVRFKHlbaV0sIFNJR19TQVQpOwog
ICAgICAgeDQ9eDM7CiAgICAgICB4Mz14MjsKICAgICAgIHgyPXgxOwpAQCAtMjAwLDYgKzIwNywx
MCBAQCB2b2lkIGNvbWJfZmlsdGVyKG9wdXNfdmFsMzIgKnksIG9wdXNfdmFsMzIgKngsIGludCBU
MCwgaW50IFQxLCBpbnQgTiwKICAgICAgICAgIE9QVVNfTU9WRSh5LCB4LCBOKTsKICAgICAgIHJl
dHVybjsKICAgIH0KKyAgIC8qIFdoZW4gdGhlIGdhaW4gaXMgemVybywgVDAgYW5kL29yIFQxIGlz
IHNldCB0byB6ZXJvLiBXZSBuZWVkCisgICAgICB0byBoYXZlIHRoZW4gYmUgYXQgbGVhc3QgMiB0
byBhdm9pZCBwcm9jZXNzaW5nIGdhcmJhZ2UgZGF0YS4gKi8KKyAgIFQwID0gSU1BWChUMCwgQ09N
QkZJTFRFUl9NSU5QRVJJT0QpOworICAgVDEgPSBJTUFYKFQxLCBDT01CRklMVEVSX01JTlBFUklP
RCk7CiAgICBnMDAgPSBNVUxUMTZfMTZfUDE1KGcwLCBnYWluc1t0YXBzZXQwXVswXSk7CiAgICBn
MDEgPSBNVUxUMTZfMTZfUDE1KGcwLCBnYWluc1t0YXBzZXQwXVsxXSk7CiAgICBnMDIgPSBNVUxU
MTZfMTZfUDE1KGcwLCBnYWluc1t0YXBzZXQwXVsyXSk7CkBAIC0yMjUsNiArMjM2LDcgQEAgdm9p
ZCBjb21iX2ZpbHRlcihvcHVzX3ZhbDMyICp5LCBvcHVzX3ZhbDMyICp4LCBpbnQgVDAsIGludCBU
MSwgaW50IE4sCiAgICAgICAgICAgICAgICArIE1VTFQxNl8zMl9RMTUoTVVMVDE2XzE2X1ExNShm
LGcxMCkseDIpCiAgICAgICAgICAgICAgICArIE1VTFQxNl8zMl9RMTUoTVVMVDE2XzE2X1ExNShm
LGcxMSksQUREMzIoeDEseDMpKQogICAgICAgICAgICAgICAgKyBNVUxUMTZfMzJfUTE1KE1VTFQx
Nl8xNl9RMTUoZixnMTIpLEFERDMyKHgwLHg0KSk7CisgICAgICB5W2ldID0gU0FUVVJBVEUoeVtp
XSwgU0lHX1NBVCk7CiAgICAgICB4ND14MzsKICAgICAgIHgzPXgyOwogICAgICAgeDI9eDE7CkBA
IC0yNDQsMTEgKzI1NiwxNiBAQCB2b2lkIGNvbWJfZmlsdGVyKG9wdXNfdmFsMzIgKnksIG9wdXNf
dmFsMzIgKngsIGludCBUMCwgaW50IFQxLCBpbnQgTiwKIH0KICNlbmRpZiAvKiBPVkVSUklERV9j
b21iX2ZpbHRlciAqLwogCisvKiBURiBjaGFuZ2UgdGFibGUuIFBvc2l0aXZlIHZhbHVlcyBtZWFu
IGJldHRlciBmcmVxdWVuY3kgcmVzb2x1dGlvbiAobG9uZ2VyCisgICBlZmZlY3RpdmUgd2luZG93
KSwgd2hlcmVhcyBuZWdhdGl2ZSB2YWx1ZXMgbWVhbiBiZXR0ZXIgdGltZSByZXNvbHV0aW9uCisg
ICAoc2hvcnRlciBlZmZlY3RpdmUgd2luZG93KS4gVGhlIHNlY29uZCBpbmRleCBpcyBjb21wdXRl
ZCBhczoKKyAgIDQqaXNUcmFuc2llbnQgKyAyKnRmX3NlbGVjdCArIHBlcl9iYW5kX2ZsYWcgKi8K
IGNvbnN0IHNpZ25lZCBjaGFyIHRmX3NlbGVjdF90YWJsZVs0XVs4XSA9IHsKLSAgICAgIHswLCAt
MSwgMCwgLTEsICAgIDAsLTEsIDAsLTF9LAotICAgICAgezAsIC0xLCAwLCAtMiwgICAgMSwgMCwg
MSwtMX0sCi0gICAgICB7MCwgLTIsIDAsIC0zLCAgICAyLCAwLCAxLC0xfSwKLSAgICAgIHswLCAt
MiwgMCwgLTMsICAgIDMsIDAsIDEsLTF9LAorICAgIC8qaXNUcmFuc2llbnQ9MCAgICAgaXNUcmFu
c2llbnQ9MSAqLworICAgICAgezAsIC0xLCAwLCAtMSwgICAgMCwtMSwgMCwtMX0sIC8qIDIuNSBt
cyAqLworICAgICAgezAsIC0xLCAwLCAtMiwgICAgMSwgMCwgMSwtMX0sIC8qIDUgbXMgKi8KKyAg
ICAgIHswLCAtMiwgMCwgLTMsICAgIDIsIDAsIDEsLTF9LCAvKiAxMCBtcyAqLworICAgICAgezAs
IC0yLCAwLCAtMywgICAgMywgMCwgMSwtMX0sIC8qIDIwIG1zICovCiB9OwogCiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9jZWx0LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdC5oCmluZGV4IGQxZjdlYjY5MGRiM2Y2NDEwNDdiMzFi
YWM3YzQxMzI4Y2ZiYTMwNTguLjcwMTc1MzAxMDBhM2Q5MDQ1NmI3NjZhNTU4NDQ1ZGI5YWU0MzA4
NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHQuaApAQCAtNTAsNiArNTAs
OCBAQCBleHRlcm4gIkMiIHsKICNkZWZpbmUgQ0VMVERlY29kZXIgT3B1c0N1c3RvbURlY29kZXIK
ICNkZWZpbmUgQ0VMVE1vZGUgT3B1c0N1c3RvbU1vZGUKIAorI2RlZmluZSBMRUFLX0JBTkRTIDE5
CisKIHR5cGVkZWYgc3RydWN0IHsKICAgIGludCB2YWxpZDsKICAgIGZsb2F0IHRvbmFsaXR5OwpA
QCAtNTcsMTcgKzU5LDI1IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgIGZsb2F0IG5vaXNpbmVzczsK
ICAgIGZsb2F0IGFjdGl2aXR5OwogICAgZmxvYXQgbXVzaWNfcHJvYjsKLSAgIGludCAgICAgICAg
YmFuZHdpZHRoOwotfUFuYWx5c2lzSW5mbzsKKyAgIGZsb2F0IHZhZF9wcm9iOworICAgaW50ICAg
YmFuZHdpZHRoOworICAgZmxvYXQgYWN0aXZpdHlfcHJvYmFiaWxpdHk7CisgICAvKiBTdG9yZSBh
cyBRNiBjaGFyIHRvIHNhdmUgc3BhY2UuICovCisgICB1bnNpZ25lZCBjaGFyIGxlYWtfYm9vc3Rb
TEVBS19CQU5EU107Cit9IEFuYWx5c2lzSW5mbzsKKwordHlwZWRlZiBzdHJ1Y3QgeworICAgaW50
IHNpZ25hbFR5cGU7CisgICBpbnQgb2Zmc2V0OworfSBTSUxLSW5mbzsKIAogI2RlZmluZSBfX2Nl
bHRfY2hlY2tfbW9kZV9wdHJfcHRyKHB0cikgKChwdHIpICsgKChwdHIpIC0gKGNvbnN0IENFTFRN
b2RlKiopKHB0cikpKQogCiAjZGVmaW5lIF9fY2VsdF9jaGVja19hbmFseXNpc19wdHIocHRyKSAo
KHB0cikgKyAoKHB0cikgLSAoY29uc3QgQW5hbHlzaXNJbmZvKikocHRyKSkpCiAKLS8qIEVuY29k
ZXIvZGVjb2RlciBSZXF1ZXN0cyAqLworI2RlZmluZSBfX2NlbHRfY2hlY2tfc2lsa2luZm9fcHRy
KHB0cikgKChwdHIpICsgKChwdHIpIC0gKGNvbnN0IFNJTEtJbmZvKikocHRyKSkpCiAKLS8qIEV4
cG9zZSB0aGlzIG9wdGlvbiBhZ2FpbiB3aGVuIHZhcmlhYmxlIGZyYW1lc2l6ZSBhY3R1YWxseSB3
b3JrcyAqLwotI2RlZmluZSBPUFVTX0ZSQU1FU0laRV9WQVJJQUJMRSAgICAgICAgICAgICAgNTAx
MCAvKio8IE9wdGltaXplIHRoZSBmcmFtZSBzaXplIGR5bmFtaWNhbGx5ICovCisvKiBFbmNvZGVy
L2RlY29kZXIgUmVxdWVzdHMgKi8KIAogCiAjZGVmaW5lIENFTFRfU0VUX1BSRURJQ1RJT05fUkVR
VUVTVCAgICAxMDAwMgpAQCAtMTE2LDYgKzEyNiw5IEBAIHR5cGVkZWYgc3RydWN0IHsKICNkZWZp
bmUgT1BVU19TRVRfRU5FUkdZX01BU0tfUkVRVUVTVCAgICAxMDAyNgogI2RlZmluZSBPUFVTX1NF
VF9FTkVSR1lfTUFTSyh4KSBPUFVTX1NFVF9FTkVSR1lfTUFTS19SRVFVRVNULCBfX29wdXNfY2hl
Y2tfdmFsMTZfcHRyKHgpCiAKKyNkZWZpbmUgQ0VMVF9TRVRfU0lMS19JTkZPX1JFUVVFU1QgICAg
MTAwMjgKKyNkZWZpbmUgQ0VMVF9TRVRfU0lMS19JTkZPKHgpIENFTFRfU0VUX1NJTEtfSU5GT19S
RVFVRVNULCBfX2NlbHRfY2hlY2tfc2lsa2luZm9fcHRyKHgpCisKIC8qIEVuY29kZXIgc3R1ZmYg
Ki8KIAogaW50IGNlbHRfZW5jb2Rlcl9nZXRfc2l6ZShpbnQgY2hhbm5lbHMpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L2NlbHRfZGVjb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfZGVjb2Rlci5jCmluZGV4IGI5NzhiYjM0
ZDFiNzAxNTgxNzYzN2NkMDE3MjQyNWFhOGZhYmI2MGIuLjU2N2Q3NDU2NDliOThhZDljNjYxZmJm
NTNmNzNkMGE3ZGEwYTc4YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2RlY29kZXIuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvY2VsdF9kZWNvZGVyLmMKQEAgLTczLDYgKzczLDcgQEAgc3RydWN0IE9wdXNDdXN0b21EZWNv
ZGVyIHsKICAgIGludCBkb3duc2FtcGxlOwogICAgaW50IHN0YXJ0LCBlbmQ7CiAgICBpbnQgc2ln
bmFsbGluZzsKKyAgIGludCBkaXNhYmxlX2ludjsKICAgIGludCBhcmNoOwogCiAgICAvKiBFdmVy
eXRoaW5nIGJleW9uZCB0aGlzIHBvaW50IGdldHMgY2xlYXJlZCBvbiBhIHJlc2V0ICovCkBAIC0x
NjMsNiArMTY0LDExIEBAIE9QVVNfQ1VTVE9NX05PU1RBVElDIGludCBvcHVzX2N1c3RvbV9kZWNv
ZGVyX2luaXQoQ0VMVERlY29kZXIgKnN0LCBjb25zdCBDRUxUTW9kCiAgICBzdC0+c3RhcnQgPSAw
OwogICAgc3QtPmVuZCA9IHN0LT5tb2RlLT5lZmZFQmFuZHM7CiAgICBzdC0+c2lnbmFsbGluZyA9
IDE7CisjaWZkZWYgRU5BQkxFX1VQREFURV9EUkFGVAorICAgc3QtPmRpc2FibGVfaW52ID0gY2hh
bm5lbHMgPT0gMTsKKyNlbHNlCisgICBzdC0+ZGlzYWJsZV9pbnYgPSAwOworI2VuZGlmCiAgICBz
dC0+YXJjaCA9IG9wdXNfc2VsZWN0X2FyY2goKTsKIAogICAgb3B1c19jdXN0b21fZGVjb2Rlcl9j
dGwoc3QsIE9QVVNfUkVTRVRfU1RBVEUpOwpAQCAtMTc3LDYgKzE4MywzNiBAQCB2b2lkIG9wdXNf
Y3VzdG9tX2RlY29kZXJfZGVzdHJveShDRUxURGVjb2RlciAqc3QpCiB9CiAjZW5kaWYgLyogQ1VT
VE9NX01PREVTICovCiAKKyNpZm5kZWYgQ1VTVE9NX01PREVTCisvKiBTcGVjaWFsIGNhc2UgZm9y
IHN0ZXJlbyB3aXRoIG5vIGRvd25zYW1wbGluZyBhbmQgbm8gYWNjdW11bGF0aW9uLiBUaGlzIGlz
CisgICBxdWl0ZSBjb21tb24gYW5kIHdlIGNhbiBtYWtlIGl0IGZhc3RlciBieSBwcm9jZXNzaW5n
IGJvdGggY2hhbm5lbHMgaW4gdGhlCisgICBzYW1lIGxvb3AsIHJlZHVjaW5nIG92ZXJoZWFkIGR1
ZSB0byB0aGUgZGVwZW5kZW5jeSBsb29wIGluIHRoZSBJSVIgZmlsdGVyLiAqLworc3RhdGljIHZv
aWQgZGVlbXBoYXNpc19zdGVyZW9fc2ltcGxlKGNlbHRfc2lnICppbltdLCBvcHVzX3ZhbDE2ICpw
Y20sIGludCBOLCBjb25zdCBvcHVzX3ZhbDE2IGNvZWYwLAorICAgICAgY2VsdF9zaWcgKm1lbSkK
K3sKKyAgIGNlbHRfc2lnICogT1BVU19SRVNUUklDVCB4MDsKKyAgIGNlbHRfc2lnICogT1BVU19S
RVNUUklDVCB4MTsKKyAgIGNlbHRfc2lnIG0wLCBtMTsKKyAgIGludCBqOworICAgeDA9aW5bMF07
CisgICB4MT1pblsxXTsKKyAgIG0wID0gbWVtWzBdOworICAgbTEgPSBtZW1bMV07CisgICBmb3Ig
KGo9MDtqPE47aisrKQorICAgeworICAgICAgY2VsdF9zaWcgdG1wMCwgdG1wMTsKKyAgICAgIC8q
IEFkZCBWRVJZX1NNQUxMIHRvIHhbXSBmaXJzdCB0byByZWR1Y2UgZGVwZW5kZW5jeSBjaGFpbi4g
Ki8KKyAgICAgIHRtcDAgPSB4MFtqXSArIFZFUllfU01BTEwgKyBtMDsKKyAgICAgIHRtcDEgPSB4
MVtqXSArIFZFUllfU01BTEwgKyBtMTsKKyAgICAgIG0wID0gTVVMVDE2XzMyX1ExNShjb2VmMCwg
dG1wMCk7CisgICAgICBtMSA9IE1VTFQxNl8zMl9RMTUoY29lZjAsIHRtcDEpOworICAgICAgcGNt
WzIqaiAgXSA9IFNDQUxFT1VUKFNJRzJXT1JEMTYodG1wMCkpOworICAgICAgcGNtWzIqaisxXSA9
IFNDQUxFT1VUKFNJRzJXT1JEMTYodG1wMSkpOworICAgfQorICAgbWVtWzBdID0gbTA7CisgICBt
ZW1bMV0gPSBtMTsKK30KKyNlbmRpZgogCiAjaWZuZGVmIFJFU1lOVEgKIHN0YXRpYwpAQCAtMTkw
LDYgKzIyNiwxNCBAQCB2b2lkIGRlZW1waGFzaXMoY2VsdF9zaWcgKmluW10sIG9wdXNfdmFsMTYg
KnBjbSwgaW50IE4sIGludCBDLCBpbnQgZG93bnNhbXBsZSwgYwogICAgb3B1c192YWwxNiBjb2Vm
MDsKICAgIFZBUkRFQ0woY2VsdF9zaWcsIHNjcmF0Y2gpOwogICAgU0FWRV9TVEFDSzsKKyNpZm5k
ZWYgQ1VTVE9NX01PREVTCisgICAvKiBTaG9ydCB2ZXJzaW9uIGZvciBjb21tb24gY2FzZS4gKi8K
KyAgIGlmIChkb3duc2FtcGxlID09IDEgJiYgQyA9PSAyICYmICFhY2N1bSkKKyAgIHsKKyAgICAg
IGRlZW1waGFzaXNfc3RlcmVvX3NpbXBsZShpbiwgcGNtLCBOLCBjb2VmWzBdLCBtZW0pOworICAg
ICAgcmV0dXJuOworICAgfQorI2VuZGlmCiAjaWZuZGVmIEZJWEVEX1BPSU5UCiAgICAodm9pZClh
Y2N1bTsKICAgIGNlbHRfYXNzZXJ0KGFjY3VtPT0wKTsKQEAgLTIyNSw3ICsyNjksNyBAQCB2b2lk
IGRlZW1waGFzaXMoY2VsdF9zaWcgKmluW10sIG9wdXNfdmFsMTYgKnBjbSwgaW50IE4sIGludCBD
LCBpbnQgZG93bnNhbXBsZSwgYwogICAgICAgICAgLyogU2hvcnRjdXQgZm9yIHRoZSBzdGFuZGFy
ZCAobm9uLWN1c3RvbSBtb2RlcykgY2FzZSAqLwogICAgICAgICAgZm9yIChqPTA7ajxOO2orKykK
ICAgICAgICAgIHsKLSAgICAgICAgICAgIGNlbHRfc2lnIHRtcCA9IHhbal0gKyBtICsgVkVSWV9T
TUFMTDsKKyAgICAgICAgICAgIGNlbHRfc2lnIHRtcCA9IHhbal0gKyBWRVJZX1NNQUxMICsgbTsK
ICAgICAgICAgICAgIG0gPSBNVUxUMTZfMzJfUTE1KGNvZWYwLCB0bXApOwogICAgICAgICAgICAg
c2NyYXRjaFtqXSA9IHRtcDsKICAgICAgICAgIH0KQEAgLTI0Niw3ICsyOTAsNyBAQCB2b2lkIGRl
ZW1waGFzaXMoY2VsdF9zaWcgKmluW10sIG9wdXNfdmFsMTYgKnBjbSwgaW50IE4sIGludCBDLCBp
bnQgZG93bnNhbXBsZSwgYwogICAgICAgICAgewogICAgICAgICAgICAgZm9yIChqPTA7ajxOO2or
KykKICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgIGNlbHRfc2lnIHRtcCA9IHhbal0gKyBt
ICsgVkVSWV9TTUFMTDsKKyAgICAgICAgICAgICAgIGNlbHRfc2lnIHRtcCA9IHhbal0gKyBWRVJZ
X1NNQUxMICsgbTsKICAgICAgICAgICAgICAgIG0gPSBNVUxUMTZfMzJfUTE1KGNvZWYwLCB0bXAp
OwogICAgICAgICAgICAgICAgeVtqKkNdID0gU0NBTEVPVVQoU0lHMldPUkQxNih0bXApKTsKICAg
ICAgICAgICAgIH0KQEAgLTMzMyw3ICszNzcsNyBAQCB2b2lkIGNlbHRfc3ludGhlc2lzKGNvbnN0
IENFTFRNb2RlICptb2RlLCBjZWx0X25vcm0gKlgsIGNlbHRfc2lnICogb3V0X3N5bltdLAogICAg
ICAgZGVub3JtYWxpc2VfYmFuZHMobW9kZSwgWCtOLCBmcmVxMiwgb2xkQmFuZEUrbmJFQmFuZHMs
IHN0YXJ0LCBlZmZFbmQsIE0sCiAgICAgICAgICAgICBkb3duc2FtcGxlLCBzaWxlbmNlKTsKICAg
ICAgIGZvciAoaT0wO2k8TjtpKyspCi0gICAgICAgICBmcmVxW2ldID0gSEFMRjMyKEFERDMyKGZy
ZXFbaV0sZnJlcTJbaV0pKTsKKyAgICAgICAgIGZyZXFbaV0gPSBBREQzMihIQUxGMzIoZnJlcVtp
XSksIEhBTEYzMihmcmVxMltpXSkpOwogICAgICAgZm9yIChiPTA7YjxCO2IrKykKICAgICAgICAg
IGNsdF9tZGN0X2JhY2t3YXJkKCZtb2RlLT5tZGN0LCAmZnJlcVtiXSwgb3V0X3N5blswXStOQipi
LCBtb2RlLT53aW5kb3csIG92ZXJsYXAsIHNoaWZ0LCBCLCBhcmNoKTsKICAgIH0gZWxzZSB7CkBA
IC0zNDUsNiArMzg5LDEyIEBAIHZvaWQgY2VsdF9zeW50aGVzaXMoY29uc3QgQ0VMVE1vZGUgKm1v
ZGUsIGNlbHRfbm9ybSAqWCwgY2VsdF9zaWcgKiBvdXRfc3luW10sCiAgICAgICAgICAgICBjbHRf
bWRjdF9iYWNrd2FyZCgmbW9kZS0+bWRjdCwgJmZyZXFbYl0sIG91dF9zeW5bY10rTkIqYiwgbW9k
ZS0+d2luZG93LCBvdmVybGFwLCBzaGlmdCwgQiwgYXJjaCk7CiAgICAgICB9IHdoaWxlICgrK2M8
Q0MpOwogICAgfQorICAgLyogU2F0dXJhdGUgSU1EQ1Qgb3V0cHV0IHNvIHRoYXQgd2UgY2FuJ3Qg
b3ZlcmZsb3cgaW4gdGhlIHBpdGNoIHBvc3RmaWx0ZXIKKyAgICAgIG9yIGluIHRoZSAqLworICAg
Yz0wOyBkbyB7CisgICAgICBmb3IgKGk9MDtpPE47aSsrKQorICAgICAgICAgb3V0X3N5bltjXVtp
XSA9IFNBVFVSQVRFKG91dF9zeW5bY11baV0sIFNJR19TQVQpOworICAgfSB3aGlsZSAoKytjPEND
KTsKICAgIFJFU1RPUkVfU1RBQ0s7CiB9CiAKQEAgLTUwNiwxMCArNTU2LDExIEBAIHN0YXRpYyB2
b2lkIGNlbHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQg
TiwgaW50IExNKQogICAgfSBlbHNlIHsKICAgICAgIC8qIFBpdGNoLWJhc2VkIFBMQyAqLwogICAg
ICAgY29uc3Qgb3B1c192YWwxNiAqd2luZG93OworICAgICAgb3B1c192YWwxNiAqZXhjOwogICAg
ICAgb3B1c192YWwxNiBmYWRlID0gUTE1T05FOwogICAgICAgaW50IHBpdGNoX2luZGV4OwogICAg
ICAgVkFSREVDTChvcHVzX3ZhbDMyLCBldG1wKTsKLSAgICAgIFZBUkRFQ0wob3B1c192YWwxNiwg
ZXhjKTsKKyAgICAgIFZBUkRFQ0wob3B1c192YWwxNiwgX2V4Yyk7CiAKICAgICAgIGlmIChsb3Nz
X2NvdW50ID09IDApCiAgICAgICB7CkBAIC01MjAsNyArNTcxLDggQEAgc3RhdGljIHZvaWQgY2Vs
dF9kZWNvZGVfbG9zdChDRUxURGVjb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCBOLCBpbnQg
TE0pCiAgICAgICB9CiAKICAgICAgIEFMTE9DKGV0bXAsIG92ZXJsYXAsIG9wdXNfdmFsMzIpOwot
ICAgICAgQUxMT0MoZXhjLCBNQVhfUEVSSU9ELCBvcHVzX3ZhbDE2KTsKKyAgICAgIEFMTE9DKF9l
eGMsIE1BWF9QRVJJT0QrTFBDX09SREVSLCBvcHVzX3ZhbDE2KTsKKyAgICAgIGV4YyA9IF9leGMr
TFBDX09SREVSOwogICAgICAgd2luZG93ID0gbW9kZS0+d2luZG93OwogICAgICAgYz0wOyBkbyB7
CiAgICAgICAgICBvcHVzX3ZhbDE2IGRlY2F5OwpAQCAtNTYxLDYgKzYxMywyMyBAQCBzdGF0aWMg
dm9pZCBjZWx0X2RlY29kZV9sb3N0KENFTFREZWNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgaW50
IE4sIGludCBMTSkKICNlbmRpZgogICAgICAgICAgICAgfQogICAgICAgICAgICAgX2NlbHRfbHBj
KGxwYytjKkxQQ19PUkRFUiwgYWMsIExQQ19PUkRFUik7CisjaWZkZWYgRklYRURfUE9JTlQKKyAg
ICAgICAgIC8qIEZvciBmaXhlZC1wb2ludCwgYXBwbHkgYmFuZHdpZHRoIGV4cGFuc2lvbiB1bnRp
bCB3ZSBjYW4gZ3VhcmFudGVlIHRoYXQKKyAgICAgICAgICAgIG5vIG92ZXJmbG93IGNhbiBoYXBw
ZW4gaW4gdGhlIElJUiBmaWx0ZXIuIFRoaXMgbWVhbnM6CisgICAgICAgICAgICAzMjc2OCpzdW0o
YWJzKGZpbHRlcikpIDwgMl4zMSAqLworICAgICAgICAgd2hpbGUgKDEpIHsKKyAgICAgICAgICAg
IG9wdXNfdmFsMTYgdG1wPVExNU9ORTsKKyAgICAgICAgICAgIG9wdXNfdmFsMzIgc3VtPVFDT05T
VDE2KDEuLCBTSUdfU0hJRlQpOworICAgICAgICAgICAgZm9yIChpPTA7aTxMUENfT1JERVI7aSsr
KQorICAgICAgICAgICAgICAgc3VtICs9IEFCUzE2KGxwY1tjKkxQQ19PUkRFUitpXSk7CisgICAg
ICAgICAgICBpZiAoc3VtIDwgNjU1MzUpIGJyZWFrOworICAgICAgICAgICAgZm9yIChpPTA7aTxM
UENfT1JERVI7aSsrKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgdG1wID0gTVVMVDE2
XzE2X1ExNShRQ09OU1QxNiguOTlmLDE1KSwgdG1wKTsKKyAgICAgICAgICAgICAgIGxwY1tjKkxQ
Q19PUkRFUitpXSA9IE1VTFQxNl8xNl9RMTUobHBjW2MqTFBDX09SREVSK2ldLCB0bXApOworICAg
ICAgICAgICAgfQorICAgICAgICAgfQorI2VuZGlmCiAgICAgICAgICB9CiAgICAgICAgICAvKiBX
ZSB3YW50IHRoZSBleGNpdGF0aW9uIGZvciAyIHBpdGNoIHBlcmlvZHMgaW4gb3JkZXIgdG8gbG9v
ayBmb3IgYQogICAgICAgICAgICAgZGVjYXlpbmcgc2lnbmFsLCBidXQgd2UgY2FuJ3QgZ2V0IG1v
cmUgdGhhbiBNQVhfUEVSSU9ELiAqLwpAQCAtNTY4LDE1ICs2MzcsMTQgQEAgc3RhdGljIHZvaWQg
Y2VsdF9kZWNvZGVfbG9zdChDRUxURGVjb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCBOLCBp
bnQgTE0pCiAgICAgICAgICAvKiBJbml0aWFsaXplIHRoZSBMUEMgaGlzdG9yeSB3aXRoIHRoZSBz
YW1wbGVzIGp1c3QgYmVmb3JlIHRoZSBzdGFydAogICAgICAgICAgICAgb2YgdGhlIHJlZ2lvbiBm
b3Igd2hpY2ggd2UncmUgY29tcHV0aW5nIHRoZSBleGNpdGF0aW9uLiAqLwogICAgICAgICAgewot
ICAgICAgICAgICAgb3B1c192YWwxNiBscGNfbWVtW0xQQ19PUkRFUl07CiAgICAgICAgICAgICBm
b3IgKGk9MDtpPExQQ19PUkRFUjtpKyspCiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICBs
cGNfbWVtW2ldID0KLSAgICAgICAgICAgICAgICAgICAgIFJPVU5EMTYoYnVmW0RFQ09ERV9CVUZG
RVJfU0laRS1leGNfbGVuZ3RoLTEtaV0sIFNJR19TSElGVCk7CisgICAgICAgICAgICAgICBleGNb
TUFYX1BFUklPRC1leGNfbGVuZ3RoLUxQQ19PUkRFUitpXSA9CisgICAgICAgICAgICAgICAgICAg
ICBST1VORDE2KGJ1ZltERUNPREVfQlVGRkVSX1NJWkUtZXhjX2xlbmd0aC1MUENfT1JERVIraV0s
IFNJR19TSElGVCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICAvKiBDb21wdXRlIHRoZSBl
eGNpdGF0aW9uIGZvciBleGNfbGVuZ3RoIHNhbXBsZXMgYmVmb3JlIHRoZSBsb3NzLiAqLwogICAg
ICAgICAgICAgY2VsdF9maXIoZXhjK01BWF9QRVJJT0QtZXhjX2xlbmd0aCwgbHBjK2MqTFBDX09S
REVSLAotICAgICAgICAgICAgICAgICAgZXhjK01BWF9QRVJJT0QtZXhjX2xlbmd0aCwgZXhjX2xl
bmd0aCwgTFBDX09SREVSLCBscGNfbWVtLCBzdC0+YXJjaCk7CisgICAgICAgICAgICAgICAgICBl
eGMrTUFYX1BFUklPRC1leGNfbGVuZ3RoLCBleGNfbGVuZ3RoLCBMUENfT1JERVIsIHN0LT5hcmNo
KTsKICAgICAgICAgIH0KIAogICAgICAgICAgLyogQ2hlY2sgaWYgdGhlIHdhdmVmb3JtIGlzIGRl
Y2F5aW5nLCBhbmQgaWYgc28gaG93IGZhc3QuCkBAIC02MzAsOSArNjk4LDggQEAgc3RhdGljIHZv
aWQgY2VsdF9kZWNvZGVfbG9zdChDRUxURGVjb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCBO
LCBpbnQgTE0pCiAgICAgICAgICAgICB0bXAgPSBST1VORDE2KAogICAgICAgICAgICAgICAgICAg
YnVmW0RFQ09ERV9CVUZGRVJfU0laRS1NQVhfUEVSSU9ELU4rZXh0cmFwb2xhdGlvbl9vZmZzZXQr
al0sCiAgICAgICAgICAgICAgICAgICBTSUdfU0hJRlQpOwotICAgICAgICAgICAgUzEgKz0gU0hS
MzIoTVVMVDE2XzE2KHRtcCwgdG1wKSwgOCk7CisgICAgICAgICAgICBTMSArPSBTSFIzMihNVUxU
MTZfMTYodG1wLCB0bXApLCAxMCk7CiAgICAgICAgICB9Ci0KICAgICAgICAgIHsKICAgICAgICAg
ICAgIG9wdXNfdmFsMTYgbHBjX21lbVtMUENfT1JERVJdOwogICAgICAgICAgICAgLyogQ29weSB0
aGUgbGFzdCBkZWNvZGVkIHNhbXBsZXMgKHByaW9yIHRvIHRoZSBvdmVybGFwIHJlZ2lvbikgdG8K
QEAgLTY0NCw2ICs3MTEsMTAgQEAgc3RhdGljIHZvaWQgY2VsdF9kZWNvZGVfbG9zdChDRUxURGVj
b2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCBOLCBpbnQgTE0pCiAgICAgICAgICAgICBjZWx0
X2lpcihidWYrREVDT0RFX0JVRkZFUl9TSVpFLU4sIGxwYytjKkxQQ19PUkRFUiwKICAgICAgICAg
ICAgICAgICAgIGJ1ZitERUNPREVfQlVGRkVSX1NJWkUtTiwgZXh0cmFwb2xhdGlvbl9sZW4sIExQ
Q19PUkRFUiwKICAgICAgICAgICAgICAgICAgIGxwY19tZW0sIHN0LT5hcmNoKTsKKyNpZmRlZiBG
SVhFRF9QT0lOVAorICAgICAgICAgICAgZm9yIChpPTA7IGkgPCBleHRyYXBvbGF0aW9uX2xlbjsg
aSsrKQorICAgICAgICAgICAgICAgYnVmW0RFQ09ERV9CVUZGRVJfU0laRS1OK2ldID0gU0FUVVJB
VEUoYnVmW0RFQ09ERV9CVUZGRVJfU0laRS1OK2ldLCBTSUdfU0FUKTsKKyNlbmRpZgogICAgICAg
ICAgfQogCiAgICAgICAgICAvKiBDaGVjayBpZiB0aGUgc3ludGhlc2lzIGVuZXJneSBpcyBoaWdo
ZXIgdGhhbiBleHBlY3RlZCwgd2hpY2ggY2FuCkBAIC02NTQsNyArNzI1LDcgQEAgc3RhdGljIHZv
aWQgY2VsdF9kZWNvZGVfbG9zdChDRUxURGVjb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCBO
LCBpbnQgTE0pCiAgICAgICAgICAgICBmb3IgKGk9MDtpPGV4dHJhcG9sYXRpb25fbGVuO2krKykK
ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIG9wdXNfdmFsMTYgdG1wID0gUk9VTkQxNihi
dWZbREVDT0RFX0JVRkZFUl9TSVpFLU4raV0sIFNJR19TSElGVCk7Ci0gICAgICAgICAgICAgICBT
MiArPSBTSFIzMihNVUxUMTZfMTYodG1wLCB0bXApLCA4KTsKKyAgICAgICAgICAgICAgIFMyICs9
IFNIUjMyKE1VTFQxNl8xNih0bXAsIHRtcCksIDEwKTsKICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIC8qIFRoaXMgY2hlY2tzIGZvciBhbiAiZXhwbG9zaW9uIiBpbiB0aGUgc3ludGhlc2lzLiAq
LwogI2lmZGVmIEZJWEVEX1BPSU5UCkBAIC05NzksNyArMTA1MCw4IEBAIGludCBjZWx0X2RlY29k
ZV93aXRoX2VjKENFTFREZWNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3QgdW5zaWduZWQg
Y2hhciAqZGF0CiAKICAgIHF1YW50X2FsbF9iYW5kcygwLCBtb2RlLCBzdGFydCwgZW5kLCBYLCBD
PT0yID8gWCtOIDogTlVMTCwgY29sbGFwc2VfbWFza3MsCiAgICAgICAgICBOVUxMLCBwdWxzZXMs
IHNob3J0QmxvY2tzLCBzcHJlYWRfZGVjaXNpb24sIGR1YWxfc3RlcmVvLCBpbnRlbnNpdHksIHRm
X3JlcywKLSAgICAgICAgIGxlbiooODw8QklUUkVTKS1hbnRpX2NvbGxhcHNlX3JzdiwgYmFsYW5j
ZSwgZGVjLCBMTSwgY29kZWRCYW5kcywgJnN0LT5ybmcsIHN0LT5hcmNoKTsKKyAgICAgICAgIGxl
biooODw8QklUUkVTKS1hbnRpX2NvbGxhcHNlX3JzdiwgYmFsYW5jZSwgZGVjLCBMTSwgY29kZWRC
YW5kcywgJnN0LT5ybmcsIDAsCisgICAgICAgICBzdC0+YXJjaCwgc3QtPmRpc2FibGVfaW52KTsK
IAogICAgaWYgKGFudGlfY29sbGFwc2VfcnN2ID4gMCkKICAgIHsKQEAgLTEyMzQsNiArMTMwNiwy
NiBAQCBpbnQgb3B1c19jdXN0b21fZGVjb2Rlcl9jdGwoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RS
SUNUIHN0LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgICAgICAgKnZhbHVlPXN0LT5ybmc7CiAgICAg
ICB9CiAgICAgICBicmVhazsKKyAgICAgIGNhc2UgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJ
U0FCTEVEX1JFUVVFU1Q6CisgICAgICB7CisgICAgICAgICAgb3B1c19pbnQzMiB2YWx1ZSA9IHZh
X2FyZyhhcCwgb3B1c19pbnQzMik7CisgICAgICAgICAgaWYodmFsdWU8MCB8fCB2YWx1ZT4xKQor
ICAgICAgICAgIHsKKyAgICAgICAgICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAgICAgfQorICAg
ICAgICAgIHN0LT5kaXNhYmxlX2ludiA9IHZhbHVlOworICAgICAgfQorICAgICAgYnJlYWs7Cisg
ICAgICBjYXNlIE9QVVNfR0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUOgorICAg
ICAgeworICAgICAgICAgIG9wdXNfaW50MzIgKnZhbHVlID0gdmFfYXJnKGFwLCBvcHVzX2ludDMy
Kik7CisgICAgICAgICAgaWYgKCF2YWx1ZSkKKyAgICAgICAgICB7CisgICAgICAgICAgICAgZ290
byBiYWRfYXJnOworICAgICAgICAgIH0KKyAgICAgICAgICAqdmFsdWUgPSBzdC0+ZGlzYWJsZV9p
bnY7CisgICAgICB9CisgICAgICBicmVhazsKICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICBnb3Rv
IGJhZF9yZXF1ZXN0OwogICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfZW5jb2Rlci5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L2NlbHRfZW5jb2Rlci5jCmluZGV4IDNlZTdhNGQzZjdhMWRjZWI3MWU2YTFiZWYxNDMwNmFjOWQy
MTdhMzIuLjA1M2U1YTNiMjkwMGMxNmYyOTA3ZmIwM2JlNTM3Y2UzYjViMTA5MmIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9jZWx0X2VuY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9lbmNvZGVyLmMKQEAgLTczLDgg
KzczLDggQEAgc3RydWN0IE9wdXNDdXN0b21FbmNvZGVyIHsKICAgIGludCBjb25zdHJhaW5lZF92
YnI7ICAgICAgLyogSWYgemVybywgVkJSIGNhbiBkbyB3aGF0ZXZlciBpdCBsaWtlcyB3aXRoIHRo
ZSByYXRlICovCiAgICBpbnQgbG9zc19yYXRlOwogICAgaW50IGxzYl9kZXB0aDsKLSAgIGludCB2
YXJpYWJsZV9kdXJhdGlvbjsKICAgIGludCBsZmU7CisgICBpbnQgZGlzYWJsZV9pbnY7CiAgICBp
bnQgYXJjaDsKIAogICAgLyogRXZlcnl0aGluZyBiZXlvbmQgdGhpcyBwb2ludCBnZXRzIGNsZWFy
ZWQgb24gYSByZXNldCAqLwpAQCAtOTgsNiArOTgsNyBAQCBzdHJ1Y3QgT3B1c0N1c3RvbUVuY29k
ZXIgewogI2VuZGlmCiAgICBpbnQgY29uc2VjX3RyYW5zaWVudDsKICAgIEFuYWx5c2lzSW5mbyBh
bmFseXNpczsKKyAgIFNJTEtJbmZvIHNpbGtfaW5mbzsKIAogICAgb3B1c192YWwzMiBwcmVlbXBo
X21lbUVbMl07CiAgICBvcHVzX3ZhbDMyIHByZWVtcGhfbWVtRFsyXTsKQEAgLTEyMyw2ICsxMjQs
NyBAQCBzdHJ1Y3QgT3B1c0N1c3RvbUVuY29kZXIgewogICAgLyogb3B1c192YWwxNiBvbGRCYW5k
RVtdLCAgICAgU2l6ZSA9IGNoYW5uZWxzKm1vZGUtPm5iRUJhbmRzICovCiAgICAvKiBvcHVzX3Zh
bDE2IG9sZExvZ0VbXSwgICAgICBTaXplID0gY2hhbm5lbHMqbW9kZS0+bmJFQmFuZHMgKi8KICAg
IC8qIG9wdXNfdmFsMTYgb2xkTG9nRTJbXSwgICAgIFNpemUgPSBjaGFubmVscyptb2RlLT5uYkVC
YW5kcyAqLworICAgLyogb3B1c192YWwxNiBlbmVyZ3lFcnJvcltdLCAgU2l6ZSA9IGNoYW5uZWxz
Km1vZGUtPm5iRUJhbmRzICovCiB9OwogCiBpbnQgY2VsdF9lbmNvZGVyX2dldF9zaXplKGludCBj
aGFubmVscykKQEAgLTEzNiw5ICsxMzgsMTAgQEAgT1BVU19DVVNUT01fTk9TVEFUSUMgaW50IG9w
dXNfY3VzdG9tX2VuY29kZXJfZ2V0X3NpemUoY29uc3QgQ0VMVE1vZGUgKm1vZGUsIGludAogICAg
aW50IHNpemUgPSBzaXplb2Yoc3RydWN0IENFTFRFbmNvZGVyKQogICAgICAgICAgKyAoY2hhbm5l
bHMqbW9kZS0+b3ZlcmxhcC0xKSpzaXplb2YoY2VsdF9zaWcpICAgIC8qIGNlbHRfc2lnIGluX21l
bVtjaGFubmVscyptb2RlLT5vdmVybGFwXTsgKi8KICAgICAgICAgICsgY2hhbm5lbHMqQ09NQkZJ
TFRFUl9NQVhQRVJJT0Qqc2l6ZW9mKGNlbHRfc2lnKSAvKiBjZWx0X3NpZyBwcmVmaWx0ZXJfbWVt
W2NoYW5uZWxzKkNPTUJGSUxURVJfTUFYUEVSSU9EXTsgKi8KLSAgICAgICAgICsgMypjaGFubmVs
cyptb2RlLT5uYkVCYW5kcypzaXplb2Yob3B1c192YWwxNik7ICAvKiBvcHVzX3ZhbDE2IG9sZEJh
bmRFW2NoYW5uZWxzKm1vZGUtPm5iRUJhbmRzXTsgKi8KKyAgICAgICAgICsgNCpjaGFubmVscypt
b2RlLT5uYkVCYW5kcypzaXplb2Yob3B1c192YWwxNik7ICAvKiBvcHVzX3ZhbDE2IG9sZEJhbmRF
W2NoYW5uZWxzKm1vZGUtPm5iRUJhbmRzXTsgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvcHVzX3ZhbDE2IG9sZExvZ0VbY2hh
bm5lbHMqbW9kZS0+bmJFQmFuZHNdOyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9wdXNfdmFsMTYgb2xkTG9nRTJbY2hhbm5l
bHMqbW9kZS0+bmJFQmFuZHNdOyAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9wdXNfdmFsMTYgZW5lcmd5RXJyb3JbY2hhbm5l
bHMqbW9kZS0+bmJFQmFuZHNdOyAqLwogICAgcmV0dXJuIHNpemU7CiB9CiAKQEAgLTE3OCw3ICsx
ODEsNiBAQCBzdGF0aWMgaW50IG9wdXNfY3VzdG9tX2VuY29kZXJfaW5pdF9hcmNoKENFTFRFbmNv
ZGVyICpzdCwgY29uc3QgQ0VMVE1vZGUgKm1vZGUsCiAgICBzdC0+c3RhcnQgPSAwOwogICAgc3Qt
PmVuZCA9IHN0LT5tb2RlLT5lZmZFQmFuZHM7CiAgICBzdC0+c2lnbmFsbGluZyA9IDE7Ci0KICAg
IHN0LT5hcmNoID0gYXJjaDsKIAogICAgc3QtPmNvbnN0cmFpbmVkX3ZiciA9IDE7CkBAIC0yMjMs
NyArMjI1LDggQEAgdm9pZCBvcHVzX2N1c3RvbV9lbmNvZGVyX2Rlc3Ryb3koQ0VMVEVuY29kZXIg
KnN0KQogCiAKIHN0YXRpYyBpbnQgdHJhbnNpZW50X2FuYWx5c2lzKGNvbnN0IG9wdXNfdmFsMzIg
KiBPUFVTX1JFU1RSSUNUIGluLCBpbnQgbGVuLCBpbnQgQywKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG9wdXNfdmFsMTYgKnRmX2VzdGltYXRlLCBpbnQgKnRmX2NoYW4pCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBvcHVzX3ZhbDE2ICp0Zl9lc3RpbWF0ZSwgaW50ICp0Zl9j
aGFuLCBpbnQgYWxsb3dfd2Vha190cmFuc2llbnRzLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50ICp3ZWFrX3RyYW5zaWVudCkKIHsKICAgIGludCBpOwogICAgVkFSREVDTChvcHVz
X3ZhbDE2LCB0bXApOwpAQCAtMjMzLDYgKzIzNiwxMiBAQCBzdGF0aWMgaW50IHRyYW5zaWVudF9h
bmFseXNpcyhjb25zdCBvcHVzX3ZhbDMyICogT1BVU19SRVNUUklDVCBpbiwgaW50IGxlbiwgaW50
CiAgICBpbnQgYzsKICAgIG9wdXNfdmFsMTYgdGZfbWF4OwogICAgaW50IGxlbjI7CisgICAvKiBG
b3J3YXJkIG1hc2tpbmc6IDYuNyBkQi9tcy4gKi8KKyNpZmRlZiBGSVhFRF9QT0lOVAorICAgaW50
IGZvcndhcmRfc2hpZnQgPSA0OworI2Vsc2UKKyAgIG9wdXNfdmFsMTYgZm9yd2FyZF9kZWNheSA9
IFFDT05TVDE2KC4wNjI1ZiwxNSk7CisjZW5kaWYKICAgIC8qIFRhYmxlIG9mIDYqNjQveCwgdHJh
aW5lZCBvbiByZWFsIGRhdGEgdG8gbWluaW1pemUgdGhlIGF2ZXJhZ2UgZXJyb3IgKi8KICAgIHN0
YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGludl90YWJsZVsxMjhdID0gewogICAgICAgICAgMjU1
LDI1NSwxNTYsMTEwLCA4NiwgNzAsIDU5LCA1MSwgNDUsIDQwLCAzNywgMzMsIDMxLCAyOCwgMjYs
IDI1LApAQCAtMjQ3LDYgKzI1NiwxOSBAQCBzdGF0aWMgaW50IHRyYW5zaWVudF9hbmFseXNpcyhj
b25zdCBvcHVzX3ZhbDMyICogT1BVU19SRVNUUklDVCBpbiwgaW50IGxlbiwgaW50CiAgICBTQVZF
X1NUQUNLOwogICAgQUxMT0ModG1wLCBsZW4sIG9wdXNfdmFsMTYpOwogCisgICAqd2Vha190cmFu
c2llbnQgPSAwOworICAgLyogRm9yIGxvd2VyIGJpdHJhdGVzLCBsZXQncyBiZSBtb3JlIGNvbnNl
cnZhdGl2ZSBhbmQgaGF2ZSBhIGZvcndhcmQgbWFza2luZworICAgICAgZGVjYXkgb2YgMy4zIGRC
L21zLiBUaGlzIGF2b2lkcyBoYXZpbmcgdG8gY29kZSB0cmFuc2llbnRzIGF0IHZlcnkgbG93Cisg
ICAgICBiaXRyYXRlIChtb3N0bHkgZm9yIGh5YnJpZCksIHdoaWNoIGNhbiByZXN1bHQgaW4gdW5z
dGFibGUgZW5lcmd5IGFuZC9vcgorICAgICAgcGFydGlhbCBjb2xsYXBzZS4gKi8KKyAgIGlmIChh
bGxvd193ZWFrX3RyYW5zaWVudHMpCisgICB7CisjaWZkZWYgRklYRURfUE9JTlQKKyAgICAgIGZv
cndhcmRfc2hpZnQgPSA1OworI2Vsc2UKKyAgICAgIGZvcndhcmRfZGVjYXkgPSBRQ09OU1QxNigu
MDMxMjVmLDE1KTsKKyNlbmRpZgorICAgfQogICAgbGVuMj1sZW4vMjsKICAgIGZvciAoYz0wO2M8
QztjKyspCiAgICB7CkBAIC0yNjksNyArMjkxLDcgQEAgc3RhdGljIGludCB0cmFuc2llbnRfYW5h
bHlzaXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGludCBsZW4sIGludAog
ICAgICAgICAgbWVtMCA9IG1lbTEgKyB5IC0gMip4OwogICAgICAgICAgbWVtMSA9IHggLSAuNWYq
eTsKICNlbmRpZgotICAgICAgICAgdG1wW2ldID0gRVhUUkFDVDE2KFNIUjMyKHksMikpOworICAg
ICAgICAgdG1wW2ldID0gU1JPVU5EMTYoeSwgMik7CiAgICAgICAgICAvKnByaW50ZigiJWYgIiwg
dG1wW2ldKTsqLwogICAgICAgfQogICAgICAgLypwcmludGYoIlxuIik7Ki8KQEAgLTI4MCw3ICsz
MDIsNyBAQCBzdGF0aWMgaW50IHRyYW5zaWVudF9hbmFseXNpcyhjb25zdCBvcHVzX3ZhbDMyICog
T1BVU19SRVNUUklDVCBpbiwgaW50IGxlbiwgaW50CiAgICAgICAvKiBOb3JtYWxpemUgdG1wIHRv
IG1heCByYW5nZSAqLwogICAgICAgewogICAgICAgICAgaW50IHNoaWZ0PTA7Ci0gICAgICAgICBz
aGlmdCA9IDE0LWNlbHRfaWxvZzIoMStjZWx0X21heGFiczE2KHRtcCwgbGVuKSk7CisgICAgICAg
ICBzaGlmdCA9IDE0LWNlbHRfaWxvZzIoTUFYMTYoMSwgY2VsdF9tYXhhYnMxNih0bXAsIGxlbikp
KTsKICAgICAgICAgIGlmIChzaGlmdCE9MCkKICAgICAgICAgIHsKICAgICAgICAgICAgIGZvciAo
aT0wO2k8bGVuO2krKykKQEAgLTI5OSw5ICszMjEsOSBAQCBzdGF0aWMgaW50IHRyYW5zaWVudF9h
bmFseXNpcyhjb25zdCBvcHVzX3ZhbDMyICogT1BVU19SRVNUUklDVCBpbiwgaW50IGxlbiwgaW50
CiAgICAgICAgICBtZWFuICs9IHgyOwogI2lmZGVmIEZJWEVEX1BPSU5UCiAgICAgICAgICAvKiBG
SVhNRTogVXNlIFBTSFIxNigpIGluc3RlYWQgKi8KLSAgICAgICAgIHRtcFtpXSA9IG1lbTAgKyBQ
U0hSMzIoeDItbWVtMCw0KTsKKyAgICAgICAgIHRtcFtpXSA9IG1lbTAgKyBQU0hSMzIoeDItbWVt
MCxmb3J3YXJkX3NoaWZ0KTsKICNlbHNlCi0gICAgICAgICB0bXBbaV0gPSBtZW0wICsgTVVMVDE2
XzE2X1AxNShRQ09OU1QxNiguMDYyNWYsMTUpLHgyLW1lbTApOworICAgICAgICAgdG1wW2ldID0g
bWVtMCArIE1VTFQxNl8xNl9QMTUoZm9yd2FyZF9kZWNheSx4Mi1tZW0wKTsKICNlbmRpZgogICAg
ICAgICAgbWVtMCA9IHRtcFtpXTsKICAgICAgIH0KQEAgLTMxMSw2ICszMzMsNyBAQCBzdGF0aWMg
aW50IHRyYW5zaWVudF9hbmFseXNpcyhjb25zdCBvcHVzX3ZhbDMyICogT1BVU19SRVNUUklDVCBp
biwgaW50IGxlbiwgaW50CiAgICAgICAvKiBCYWNrd2FyZCBwYXNzIHRvIGNvbXB1dGUgdGhlIHBy
ZS1lY2hvIHRocmVzaG9sZCAqLwogICAgICAgZm9yIChpPWxlbjItMTtpPj0wO2ktLSkKICAgICAg
IHsKKyAgICAgICAgIC8qIEJhY2t3YXJkIG1hc2tpbmc6IDEzLjkgZEIvbXMuICovCiAjaWZkZWYg
RklYRURfUE9JTlQKICAgICAgICAgIC8qIEZJWE1FOiBVc2UgUFNIUjE2KCkgaW5zdGVhZCAqLwog
ICAgICAgICAgdG1wW2ldID0gbWVtMCArIFBTSFIzMih0bXBbaV0tbWVtMCwzKTsKQEAgLTM1OSw3
ICszODIsMTIgQEAgc3RhdGljIGludCB0cmFuc2llbnRfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwz
MiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGludCBsZW4sIGludAogICAgICAgfQogICAgfQogICAgaXNf
dHJhbnNpZW50ID0gbWFza19tZXRyaWM+MjAwOwotCisgICAvKiBGb3IgbG93IGJpdHJhdGVzLCBk
ZWZpbmUgIndlYWsgdHJhbnNpZW50cyIgdGhhdCBuZWVkIHRvIGJlCisgICAgICBoYW5kbGVkIGRp
ZmZlcmVudGx5IHRvIGF2b2lkIHBhcnRpYWwgY29sbGFwc2UuICovCisgICBpZiAoYWxsb3dfd2Vh
a190cmFuc2llbnRzICYmIGlzX3RyYW5zaWVudCAmJiBtYXNrX21ldHJpYzw2MDApIHsKKyAgICAg
IGlzX3RyYW5zaWVudCA9IDA7CisgICAgICAqd2Vha190cmFuc2llbnQgPSAxOworICAgfQogICAg
LyogQXJiaXRyYXJ5IG1ldHJpYyBmb3IgVkJSIGJvb3N0ICovCiAgICB0Zl9tYXggPSBNQVgxNigw
LGNlbHRfc3FydCgyNyptYXNrX21ldHJpYyktNDIpOwogICAgLyogKnRmX2VzdGltYXRlID0gMSAr
IE1JTjE2KDEsIHNxcnQoTUFYMTYoMCwgdGZfbWF4LTMwKSkvMjApOyAqLwpAQCAtNTQ5LDcgKzU3
Nyw3IEBAIHN0YXRpYyBvcHVzX3ZhbDMyIGwxX21ldHJpYyhjb25zdCBjZWx0X25vcm0gKnRtcCwg
aW50IE4sIGludCBMTSwgb3B1c192YWwxNiBiaWFzCiAKIHN0YXRpYyBpbnQgdGZfYW5hbHlzaXMo
Y29uc3QgQ0VMVE1vZGUgKm0sIGludCBsZW4sIGludCBpc1RyYW5zaWVudCwKICAgICAgIGludCAq
dGZfcmVzLCBpbnQgbGFtYmRhLCBjZWx0X25vcm0gKlgsIGludCBOMCwgaW50IExNLAotICAgICAg
aW50ICp0Zl9zdW0sIG9wdXNfdmFsMTYgdGZfZXN0aW1hdGUsIGludCB0Zl9jaGFuKQorICAgICAg
b3B1c192YWwxNiB0Zl9lc3RpbWF0ZSwgaW50IHRmX2NoYW4pCiB7CiAgICBpbnQgaTsKICAgIFZB
UkRFQ0woaW50LCBtZXRyaWMpOwpAQCAtNTc0LDcgKzYwMiw2IEBAIHN0YXRpYyBpbnQgdGZfYW5h
bHlzaXMoY29uc3QgQ0VMVE1vZGUgKm0sIGludCBsZW4sIGludCBpc1RyYW5zaWVudCwKICAgIEFM
TE9DKHBhdGgwLCBsZW4sIGludCk7CiAgICBBTExPQyhwYXRoMSwgbGVuLCBpbnQpOwogCi0gICAq
dGZfc3VtID0gMDsKICAgIGZvciAoaT0wO2k8bGVuO2krKykKICAgIHsKICAgICAgIGludCBrLCBO
OwpAQCAtNjI5LDcgKzY1Niw2IEBAIHN0YXRpYyBpbnQgdGZfYW5hbHlzaXMoY29uc3QgQ0VMVE1v
ZGUgKm0sIGludCBsZW4sIGludCBpc1RyYW5zaWVudCwKICAgICAgICAgIG1ldHJpY1tpXSA9IDIq
YmVzdF9sZXZlbDsKICAgICAgIGVsc2UKICAgICAgICAgIG1ldHJpY1tpXSA9IC0yKmJlc3RfbGV2
ZWw7Ci0gICAgICAqdGZfc3VtICs9IChpc1RyYW5zaWVudCA/IExNIDogMCkgLSBtZXRyaWNbaV0v
MjsKICAgICAgIC8qIEZvciBiYW5kcyB0aGF0IGNhbid0IGJlIHNwbGl0IHRvIC0xLCBzZXQgdGhl
IG1ldHJpYyB0byB0aGUgaGFsZi13YXkgcG9pbnQgdG8gYXZvaWQKICAgICAgICAgIGJpYXNpbmcg
dGhlIGRlY2lzaW9uICovCiAgICAgICBpZiAobmFycm93ICYmIChtZXRyaWNbaV09PTAgfHwgbWV0
cmljW2ldPT0tMipMTSkpCkBAIC03NTQsNyArNzgwLDcgQEAgc3RhdGljIHZvaWQgdGZfZW5jb2Rl
KGludCBzdGFydCwgaW50IGVuZCwgaW50IGlzVHJhbnNpZW50LCBpbnQgKnRmX3JlcywgaW50IExN
LAogc3RhdGljIGludCBhbGxvY190cmltX2FuYWx5c2lzKGNvbnN0IENFTFRNb2RlICptLCBjb25z
dCBjZWx0X25vcm0gKlgsCiAgICAgICBjb25zdCBvcHVzX3ZhbDE2ICpiYW5kTG9nRSwgaW50IGVu
ZCwgaW50IExNLCBpbnQgQywgaW50IE4wLAogICAgICAgQW5hbHlzaXNJbmZvICphbmFseXNpcywg
b3B1c192YWwxNiAqc3RlcmVvX3NhdmluZywgb3B1c192YWwxNiB0Zl9lc3RpbWF0ZSwKLSAgICAg
IGludCBpbnRlbnNpdHksIG9wdXNfdmFsMTYgc3Vycm91bmRfdHJpbSwgaW50IGFyY2gpCisgICAg
ICBpbnQgaW50ZW5zaXR5LCBvcHVzX3ZhbDE2IHN1cnJvdW5kX3RyaW0sIG9wdXNfaW50MzIgZXF1
aXZfcmF0ZSwgaW50IGFyY2gpCiB7CiAgICBpbnQgaTsKICAgIG9wdXNfdmFsMzIgZGlmZj0wOwpA
QCAtNzYyLDYgKzc4OCwxNCBAQCBzdGF0aWMgaW50IGFsbG9jX3RyaW1fYW5hbHlzaXMoY29uc3Qg
Q0VMVE1vZGUgKm0sIGNvbnN0IGNlbHRfbm9ybSAqWCwKICAgIGludCB0cmltX2luZGV4OwogICAg
b3B1c192YWwxNiB0cmltID0gUUNPTlNUMTYoNS5mLCA4KTsKICAgIG9wdXNfdmFsMTYgbG9nWEMs
IGxvZ1hDMjsKKyAgIC8qIEF0IGxvdyBiaXRyYXRlLCByZWR1Y2luZyB0aGUgdHJpbSBzZWVtcyB0
byBoZWxwLiBBdCBoaWdoZXIgYml0cmF0ZXMsIGl0J3MgbGVzcworICAgICAgY2xlYXIgd2hhdCdz
IGJlc3QsIHNvIHdlJ3JlIGtlZXBpbmcgaXQgYXMgaXQgd2FzIGJlZm9yZSwgYXQgbGVhc3QgZm9y
IG5vdy4gKi8KKyAgIGlmIChlcXVpdl9yYXRlIDwgNjQwMDApIHsKKyAgICAgIHRyaW0gPSBRQ09O
U1QxNig0LmYsIDgpOworICAgfSBlbHNlIGlmIChlcXVpdl9yYXRlIDwgODAwMDApIHsKKyAgICAg
IG9wdXNfaW50MzIgZnJhYyA9IChlcXVpdl9yYXRlLTY0MDAwKSA+PiAxMDsKKyAgICAgIHRyaW0g
PSBRQ09OU1QxNig0LmYsIDgpICsgUUNPTlNUMTYoMS5mLzE2LmYsIDgpKmZyYWM7CisgICB9CiAg
ICBpZiAoQz09MikKICAgIHsKICAgICAgIG9wdXNfdmFsMTYgc3VtID0gMDsgLyogUTEwICovCkBA
IC04MDksNyArODQzLDcgQEAgc3RhdGljIGludCBhbGxvY190cmltX2FuYWx5c2lzKGNvbnN0IENF
TFRNb2RlICptLCBjb25zdCBjZWx0X25vcm0gKlgsCiAgICB9IHdoaWxlICgrK2M8Qyk7CiAgICBk
aWZmIC89IEMqKGVuZC0xKTsKICAgIC8qcHJpbnRmKCIlZlxuIiwgZGlmZik7Ki8KLSAgIHRyaW0g
LT0gTUFYMTYoLVFDT05TVDE2KDIuZiwgOCksIE1JTjE2KFFDT05TVDE2KDIuZiwgOCksIFNIUjE2
KGRpZmYrUUNPTlNUMTYoMS5mLCBEQl9TSElGVCksREJfU0hJRlQtOCkvNiApKTsKKyAgIHRyaW0g
LT0gTUFYMzIoLVFDT05TVDE2KDIuZiwgOCksIE1JTjMyKFFDT05TVDE2KDIuZiwgOCksIFNIUjMy
KGRpZmYrUUNPTlNUMTYoMS5mLCBEQl9TSElGVCksREJfU0hJRlQtOCkvNiApKTsKICAgIHRyaW0g
LT0gU0hSMTYoc3Vycm91bmRfdHJpbSwgREJfU0hJRlQtOCk7CiAgICB0cmltIC09IDIqU0hSMTYo
dGZfZXN0aW1hdGUsIDE0LTgpOwogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQpAQCAtOTMwLDcg
Kzk2NCw3IEBAIHN0YXRpYyBvcHVzX3ZhbDE2IG1lZGlhbl9vZl8zKGNvbnN0IG9wdXNfdmFsMTYg
KngpCiBzdGF0aWMgb3B1c192YWwxNiBkeW5hbGxvY19hbmFseXNpcyhjb25zdCBvcHVzX3ZhbDE2
ICpiYW5kTG9nRSwgY29uc3Qgb3B1c192YWwxNiAqYmFuZExvZ0UyLAogICAgICAgaW50IG5iRUJh
bmRzLCBpbnQgc3RhcnQsIGludCBlbmQsIGludCBDLCBpbnQgKm9mZnNldHMsIGludCBsc2JfZGVw
dGgsIGNvbnN0IG9wdXNfaW50MTYgKmxvZ04sCiAgICAgICBpbnQgaXNUcmFuc2llbnQsIGludCB2
YnIsIGludCBjb25zdHJhaW5lZF92YnIsIGNvbnN0IG9wdXNfaW50MTYgKmVCYW5kcywgaW50IExN
LAotICAgICAgaW50IGVmZmVjdGl2ZUJ5dGVzLCBvcHVzX2ludDMyICp0b3RfYm9vc3RfLCBpbnQg
bGZlLCBvcHVzX3ZhbDE2ICpzdXJyb3VuZF9keW5hbGxvYykKKyAgICAgIGludCBlZmZlY3RpdmVC
eXRlcywgb3B1c19pbnQzMiAqdG90X2Jvb3N0XywgaW50IGxmZSwgb3B1c192YWwxNiAqc3Vycm91
bmRfZHluYWxsb2MsIEFuYWx5c2lzSW5mbyAqYW5hbHlzaXMpCiB7CiAgICBpbnQgaSwgYzsKICAg
IG9wdXNfaW50MzIgdG90X2Jvb3N0PTA7CkBAIC0xMDIwLDE0ICsxMDU0LDI2IEBAIHN0YXRpYyBv
cHVzX3ZhbDE2IGR5bmFsbG9jX2FuYWx5c2lzKGNvbnN0IG9wdXNfdmFsMTYgKmJhbmRMb2dFLCBj
b25zdCBvcHVzX3ZhbDE2CiAgICAgICB9CiAgICAgICBmb3IgKGk9c3RhcnQ7aTxlbmQ7aSsrKQog
ICAgICAgewotICAgICAgICAgaW50IHdpZHRoOwotICAgICAgICAgaW50IGJvb3N0OwotICAgICAg
ICAgaW50IGJvb3N0X2JpdHM7Ci0KICAgICAgICAgIGlmIChpPDgpCiAgICAgICAgICAgICBmb2xs
b3dlcltpXSAqPSAyOwogICAgICAgICAgaWYgKGk+PTEyKQogICAgICAgICAgICAgZm9sbG93ZXJb
aV0gPSBIQUxGMTYoZm9sbG93ZXJbaV0pOworICAgICAgfQorI2lmZGVmIERJU0FCTEVfRkxPQVRf
QVBJCisgICAgICAodm9pZClhbmFseXNpczsKKyNlbHNlCisgICAgICBpZiAoYW5hbHlzaXMtPnZh
bGlkKQorICAgICAgeworICAgICAgICAgZm9yIChpPXN0YXJ0O2k8SU1JTihMRUFLX0JBTkRTLCBl
bmQpO2krKykKKyAgICAgICAgICAgIGZvbGxvd2VyW2ldID0gZm9sbG93ZXJbaV0gKyAgUUNPTlNU
MTYoMS5mLzY0LmYsIERCX1NISUZUKSphbmFseXNpcy0+bGVha19ib29zdFtpXTsKKyAgICAgIH0K
KyNlbmRpZgorICAgICAgZm9yIChpPXN0YXJ0O2k8ZW5kO2krKykKKyAgICAgIHsKKyAgICAgICAg
IGludCB3aWR0aDsKKyAgICAgICAgIGludCBib29zdDsKKyAgICAgICAgIGludCBib29zdF9iaXRz
OworCiAgICAgICAgICBmb2xsb3dlcltpXSA9IE1JTjE2KGZvbGxvd2VyW2ldLCBRQ09OU1QxNig0
LCBEQl9TSElGVCkpOwogCiAgICAgICAgICB3aWR0aCA9IEMqKGVCYW5kc1tpKzFdLWVCYW5kc1tp
XSk8PExNOwpAQCAtMTA0MiwxMSArMTA4OCwxMSBAQCBzdGF0aWMgb3B1c192YWwxNiBkeW5hbGxv
Y19hbmFseXNpcyhjb25zdCBvcHVzX3ZhbDE2ICpiYW5kTG9nRSwgY29uc3Qgb3B1c192YWwxNgog
ICAgICAgICAgICAgYm9vc3QgPSAoaW50KVNIUjMyKEVYVEVORDMyKGZvbGxvd2VyW2ldKSp3aWR0
aC82LERCX1NISUZUKTsKICAgICAgICAgICAgIGJvb3N0X2JpdHMgPSBib29zdCo2PDxCSVRSRVM7
CiAgICAgICAgICB9Ci0gICAgICAgICAvKiBGb3IgQ0JSIGFuZCBub24tdHJhbnNpZW50IENWQlIg
ZnJhbWVzLCBsaW1pdCBkeW5hbGxvYyB0byAxLzQgb2YgdGhlIGJpdHMgKi8KKyAgICAgICAgIC8q
IEZvciBDQlIgYW5kIG5vbi10cmFuc2llbnQgQ1ZCUiBmcmFtZXMsIGxpbWl0IGR5bmFsbG9jIHRv
IDIvMyBvZiB0aGUgYml0cyAqLwogICAgICAgICAgaWYgKCghdmJyIHx8IChjb25zdHJhaW5lZF92
YnImJiFpc1RyYW5zaWVudCkpCi0gICAgICAgICAgICAgICAmJiAodG90X2Jvb3N0K2Jvb3N0X2Jp
dHMpPj5CSVRSRVM+PjMgPiBlZmZlY3RpdmVCeXRlcy80KQorICAgICAgICAgICAgICAgJiYgKHRv
dF9ib29zdCtib29zdF9iaXRzKT4+QklUUkVTPj4zID4gMiplZmZlY3RpdmVCeXRlcy8zKQogICAg
ICAgICAgewotICAgICAgICAgICAgb3B1c19pbnQzMiBjYXAgPSAoKGVmZmVjdGl2ZUJ5dGVzLzQp
PDxCSVRSRVM8PDMpOworICAgICAgICAgICAgb3B1c19pbnQzMiBjYXAgPSAoKDIqZWZmZWN0aXZl
Qnl0ZXMvMyk8PEJJVFJFUzw8Myk7CiAgICAgICAgICAgICBvZmZzZXRzW2ldID0gY2FwLXRvdF9i
b29zdDsKICAgICAgICAgICAgIHRvdF9ib29zdCA9IGNhcDsKICAgICAgICAgICAgIGJyZWFrOwpA
QCAtMTE5Myw3ICsxMjM5LDcgQEAgc3RhdGljIGludCBjb21wdXRlX3Zicihjb25zdCBDRUxUTW9k
ZSAqbW9kZSwgQW5hbHlzaXNJbmZvICphbmFseXNpcywgb3B1c19pbnQzMgogICAgICAgaW50IExN
LCBvcHVzX2ludDMyIGJpdHJhdGUsIGludCBsYXN0Q29kZWRCYW5kcywgaW50IEMsIGludCBpbnRl
bnNpdHksCiAgICAgICBpbnQgY29uc3RyYWluZWRfdmJyLCBvcHVzX3ZhbDE2IHN0ZXJlb19zYXZp
bmcsIGludCB0b3RfYm9vc3QsCiAgICAgICBvcHVzX3ZhbDE2IHRmX2VzdGltYXRlLCBpbnQgcGl0
Y2hfY2hhbmdlLCBvcHVzX3ZhbDE2IG1heERlcHRoLAotICAgICAgaW50IHZhcmlhYmxlX2R1cmF0
aW9uLCBpbnQgbGZlLCBpbnQgaGFzX3N1cnJvdW5kX21hc2ssIG9wdXNfdmFsMTYgc3Vycm91bmRf
bWFza2luZywKKyAgICAgIGludCBsZmUsIGludCBoYXNfc3Vycm91bmRfbWFzaywgb3B1c192YWwx
NiBzdXJyb3VuZF9tYXNraW5nLAogICAgICAgb3B1c192YWwxNiB0ZW1wb3JhbF92YnIpCiB7CiAg
ICAvKiBUaGUgdGFyZ2V0IHJhdGUgaW4gOHRoIGJpdHMgcGVyIGZyYW1lICovCkBAIC0xMjM1LDEw
ICsxMjgxLDkgQEAgc3RhdGljIGludCBjb21wdXRlX3Zicihjb25zdCBDRUxUTW9kZSAqbW9kZSwg
QW5hbHlzaXNJbmZvICphbmFseXNpcywgb3B1c19pbnQzMgogICAgICAgICAgICAgICAgICAgICAg
IFNIUjMyKE1VTFQxNl8xNihzdGVyZW9fc2F2aW5nLVFDT05TVDE2KDAuMWYsOCksKGNvZGVkX3N0
ZXJlb19kb2Y8PEJJVFJFUykpLDgpKTsKICAgIH0KICAgIC8qIEJvb3N0IHRoZSByYXRlIGFjY29y
ZGluZyB0byBkeW5hbGxvYyAobWludXMgdGhlIGR5bmFsbG9jIGF2ZXJhZ2UgZm9yIGNhbGlicmF0
aW9uKS4gKi8KLSAgIHRhcmdldCArPSB0b3RfYm9vc3QtKDE2PDxMTSk7CisgICB0YXJnZXQgKz0g
dG90X2Jvb3N0LSgxOTw8TE0pOwogICAgLyogQXBwbHkgdHJhbnNpZW50IGJvb3N0LCBjb21wZW5z
YXRpbmcgZm9yIGF2ZXJhZ2UgYm9vc3QuICovCi0gICB0Zl9jYWxpYnJhdGlvbiA9IHZhcmlhYmxl
X2R1cmF0aW9uPT1PUFVTX0ZSQU1FU0laRV9WQVJJQUJMRSA/Ci0gICAgICAgICAgICAgICAgICAg
IFFDT05TVDE2KDAuMDJmLDE0KSA6IFFDT05TVDE2KDAuMDRmLDE0KTsKKyAgIHRmX2NhbGlicmF0
aW9uID0gUUNPTlNUMTYoMC4wNDRmLDE0KTsKICAgIHRhcmdldCArPSAob3B1c19pbnQzMilTSEwz
MihNVUxUMTZfMzJfUTE1KHRmX2VzdGltYXRlLXRmX2NhbGlicmF0aW9uLCB0YXJnZXQpLDEpOwog
CiAjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCkBAIC0xMjQ5LDcgKzEyOTQsNyBAQCBzdGF0aWMg
aW50IGNvbXB1dGVfdmJyKGNvbnN0IENFTFRNb2RlICptb2RlLCBBbmFseXNpc0luZm8gKmFuYWx5
c2lzLCBvcHVzX2ludDMyCiAgICAgICBmbG9hdCB0b25hbDsKIAogICAgICAgLyogVG9uYWxpdHkg
Ym9vc3QgKGNvbXBlbnNhdGluZyBmb3IgdGhlIGF2ZXJhZ2UpLiAqLwotICAgICAgdG9uYWwgPSBN
QVgxNigwLmYsYW5hbHlzaXMtPnRvbmFsaXR5LS4xNWYpLTAuMDlmOworICAgICAgdG9uYWwgPSBN
QVgxNigwLmYsYW5hbHlzaXMtPnRvbmFsaXR5LS4xNWYpLTAuMTJmOwogICAgICAgdG9uYWxfdGFy
Z2V0ID0gdGFyZ2V0ICsgKG9wdXNfaW50MzIpKChjb2RlZF9iaW5zPDxCSVRSRVMpKjEuMmYqdG9u
YWwpOwogICAgICAgaWYgKHBpdGNoX2NoYW5nZSkKICAgICAgICAgIHRvbmFsX3RhcmdldCArPSAg
KG9wdXNfaW50MzIpKChjb2RlZF9iaW5zPDxCSVRSRVMpKi44Zik7CkBAIC0xMjc5LDIxICsxMzI0
LDExIEBAIHN0YXRpYyBpbnQgY29tcHV0ZV92YnIoY29uc3QgQ0VMVE1vZGUgKm1vZGUsIEFuYWx5
c2lzSW5mbyAqYW5hbHlzaXMsIG9wdXNfaW50MzIKICAgICAgIC8qcHJpbnRmKCIlZiAlZFxuIiwg
bWF4RGVwdGgsIGZsb29yX2RlcHRoKTsqLwogICAgfQogCi0gICBpZiAoKCFoYXNfc3Vycm91bmRf
bWFza3x8bGZlKSAmJiAoY29uc3RyYWluZWRfdmJyIHx8IGJpdHJhdGU8NjQwMDApKQorICAgLyog
TWFrZSBWQlIgbGVzcyBhZ2dyZXNzaXZlIGZvciBjb25zdHJhaW5lZCBWQlIgYmVjYXVzZSB3ZSBj
YW4ndCBrZWVwIGEgaGlnaGVyIGJpdHJhdGUKKyAgICAgIGZvciBsb25nLiBOZWVkcyB0dW5pbmcu
ICovCisgICBpZiAoKCFoYXNfc3Vycm91bmRfbWFza3x8bGZlKSAmJiBjb25zdHJhaW5lZF92YnIp
CiAgICB7Ci0gICAgICBvcHVzX3ZhbDE2IHJhdGVfZmFjdG9yID0gUTE1T05FOwotICAgICAgaWYg
KGJpdHJhdGUgPCA2NDAwMCkKLSAgICAgIHsKLSNpZmRlZiBGSVhFRF9QT0lOVAotICAgICAgICAg
cmF0ZV9mYWN0b3IgPSBNQVgxNigwLChiaXRyYXRlLTMyMDAwKSk7Ci0jZWxzZQotICAgICAgICAg
cmF0ZV9mYWN0b3IgPSBNQVgxNigwLCgxLmYvMzI3NjgpKihiaXRyYXRlLTMyMDAwKSk7Ci0jZW5k
aWYKLSAgICAgIH0KLSAgICAgIGlmIChjb25zdHJhaW5lZF92YnIpCi0gICAgICAgICByYXRlX2Zh
Y3RvciA9IE1JTjE2KHJhdGVfZmFjdG9yLCBRQ09OU1QxNigwLjY3ZiwgMTUpKTsKLSAgICAgIHRh
cmdldCA9IGJhc2VfdGFyZ2V0ICsgKG9wdXNfaW50MzIpTVVMVDE2XzMyX1ExNShyYXRlX2ZhY3Rv
ciwgdGFyZ2V0LWJhc2VfdGFyZ2V0KTsKLQorICAgICAgdGFyZ2V0ID0gYmFzZV90YXJnZXQgKyAo
b3B1c19pbnQzMilNVUxUMTZfMzJfUTE1KFFDT05TVDE2KDAuNjdmLCAxNSksIHRhcmdldC1iYXNl
X3RhcmdldCk7CiAgICB9CiAKICAgIGlmICghaGFzX3N1cnJvdW5kX21hc2sgJiYgdGZfZXN0aW1h
dGUgPCBRQ09OU1QxNiguMmYsIDE0KSkKQEAgLTEzMzEsNyArMTM2Niw3IEBAIGludCBjZWx0X2Vu
Y29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192
YWwxNiAqIHBjbSwKICAgIFZBUkRFQ0woaW50LCB0Zl9yZXMpOwogICAgVkFSREVDTCh1bnNpZ25l
ZCBjaGFyLCBjb2xsYXBzZV9tYXNrcyk7CiAgICBjZWx0X3NpZyAqcHJlZmlsdGVyX21lbTsKLSAg
IG9wdXNfdmFsMTYgKm9sZEJhbmRFLCAqb2xkTG9nRSwgKm9sZExvZ0UyOworICAgb3B1c192YWwx
NiAqb2xkQmFuZEUsICpvbGRMb2dFLCAqb2xkTG9nRTIsICplbmVyZ3lFcnJvcjsKICAgIGludCBz
aG9ydEJsb2Nrcz0wOwogICAgaW50IGlzVHJhbnNpZW50PTA7CiAgICBjb25zdCBpbnQgQ0MgPSBz
dC0+Y2hhbm5lbHM7CkBAIC0xMzQzLDcgKzEzNzgsNiBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9l
YyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20s
CiAgICBpbnQgZW5kOwogICAgaW50IGVmZkVuZDsKICAgIGludCBjb2RlZEJhbmRzOwotICAgaW50
IHRmX3N1bTsKICAgIGludCBhbGxvY190cmltOwogICAgaW50IHBpdGNoX2luZGV4PUNPTUJGSUxU
RVJfTUlOUEVSSU9EOwogICAgb3B1c192YWwxNiBnYWluMSA9IDA7CkBAIC0xMzU1LDYgKzEzODks
NyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qg
c3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBvcHVzX2ludDMyIHRvdGFsX2Jvb3N0Owog
ICAgb3B1c19pbnQzMiBiYWxhbmNlOwogICAgb3B1c19pbnQzMiB0ZWxsOworICAgb3B1c19pbnQz
MiB0ZWxsMF9mcmFjOwogICAgaW50IHByZWZpbHRlcl90YXBzZXQ9MDsKICAgIGludCBwZl9vbjsK
ICAgIGludCBhbnRpX2NvbGxhcHNlX3JzdjsKQEAgLTEzNzYsNyArMTQxMSw5IEBAIGludCBjZWx0
X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1
c192YWwxNiAqIHBjbSwKICAgIG9wdXNfdmFsMTYgc3Vycm91bmRfbWFza2luZz0wOwogICAgb3B1
c192YWwxNiB0ZW1wb3JhbF92YnI9MDsKICAgIG9wdXNfdmFsMTYgc3Vycm91bmRfdHJpbSA9IDA7
Ci0gICBvcHVzX2ludDMyIGVxdWl2X3JhdGUgPSA1MTAwMDA7CisgICBvcHVzX2ludDMyIGVxdWl2
X3JhdGU7CisgICBpbnQgaHlicmlkOworICAgaW50IHdlYWtfdHJhbnNpZW50ID0gMDsKICAgIFZB
UkRFQ0wob3B1c192YWwxNiwgc3Vycm91bmRfZHluYWxsb2MpOwogICAgQUxMT0NfU1RBQ0s7CiAK
QEAgLTEzODYsNiArMTQyMyw3IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVy
ICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgIGVCYW5kcyA9
IG1vZGUtPmVCYW5kczsKICAgIHN0YXJ0ID0gc3QtPnN0YXJ0OwogICAgZW5kID0gc3QtPmVuZDsK
KyAgIGh5YnJpZCA9IHN0YXJ0ICE9IDA7CiAgICB0Zl9lc3RpbWF0ZSA9IDA7CiAgICBpZiAobmJD
b21wcmVzc2VkQnl0ZXM8MiB8fCBwY209PU5VTEwpCiAgICB7CkBAIC0xNDA5LDEyICsxNDQ3LDE0
IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBz
dCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgIG9sZEJhbmRFID0gKG9wdXNfdmFsMTYqKShz
dC0+aW5fbWVtK0NDKihvdmVybGFwK0NPTUJGSUxURVJfTUFYUEVSSU9EKSk7CiAgICBvbGRMb2dF
ID0gb2xkQmFuZEUgKyBDQypuYkVCYW5kczsKICAgIG9sZExvZ0UyID0gb2xkTG9nRSArIENDKm5i
RUJhbmRzOworICAgZW5lcmd5RXJyb3IgPSBvbGRMb2dFMiArIENDKm5iRUJhbmRzOwogCiAgICBp
ZiAoZW5jPT1OVUxMKQogICAgewotICAgICAgdGVsbD0xOworICAgICAgdGVsbDBfZnJhYz10ZWxs
PTE7CiAgICAgICBuYkZpbGxlZEJ5dGVzPTA7CiAgICB9IGVsc2UgeworICAgICAgdGVsbDBfZnJh
Yz10ZWxsPWVjX3RlbGxfZnJhYyhlbmMpOwogICAgICAgdGVsbD1lY190ZWxsKGVuYyk7CiAgICAg
ICBuYkZpbGxlZEJ5dGVzPSh0ZWxsKzQpPj4zOwogICAgfQpAQCAtMTQ2NywxMCArMTUwNywxMSBA
QCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3Qs
IGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICAgICBpZiAoc3QtPmJpdHJhdGUhPU9QVVNfQklU
UkFURV9NQVgpCiAgICAgICAgICBuYkNvbXByZXNzZWRCeXRlcyA9IElNQVgoMiwgSU1JTihuYkNv
bXByZXNzZWRCeXRlcywKICAgICAgICAgICAgICAgICh0bXArNCptb2RlLT5GcykvKDgqbW9kZS0+
RnMpLSEhc3QtPnNpZ25hbGxpbmcpKTsKLSAgICAgIGVmZmVjdGl2ZUJ5dGVzID0gbmJDb21wcmVz
c2VkQnl0ZXM7CisgICAgICBlZmZlY3RpdmVCeXRlcyA9IG5iQ29tcHJlc3NlZEJ5dGVzIC0gbmJG
aWxsZWRCeXRlczsKICAgIH0KKyAgIGVxdWl2X3JhdGUgPSAoKG9wdXNfaW50MzIpbmJDb21wcmVz
c2VkQnl0ZXMqOCo1MCA+PiAoMy1MTSkpIC0gKDQwKkMrMjApKigoNDAwPj5MTSkgLSA1MCk7CiAg
ICBpZiAoc3QtPmJpdHJhdGUgIT0gT1BVU19CSVRSQVRFX01BWCkKLSAgICAgIGVxdWl2X3JhdGUg
PSBzdC0+Yml0cmF0ZSAtICg0MCpDKzIwKSooKDQwMD4+TE0pIC0gNTApOworICAgICAgZXF1aXZf
cmF0ZSA9IElNSU4oZXF1aXZfcmF0ZSwgc3QtPmJpdHJhdGUgLSAoNDAqQysyMCkqKCg0MDA+PkxN
KSAtIDUwKSk7CiAKICAgIGlmIChlbmM9PU5VTEwpCiAgICB7CkBAIC0xNTU4LDggKzE1OTksOCBA
QCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3Qs
IGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICB7CiAgICAgICBpbnQgZW5hYmxlZDsKICAgICAg
IGludCBxZzsKLSAgICAgIGVuYWJsZWQgPSAoKHN0LT5sZmUmJm5iQXZhaWxhYmxlQnl0ZXM+Mykg
fHwgbmJBdmFpbGFibGVCeXRlcz4xMipDKSAmJiBzdGFydD09MCAmJiAhc2lsZW5jZSAmJiAhc3Qt
PmRpc2FibGVfcGYKLSAgICAgICAgICAgICYmIHN0LT5jb21wbGV4aXR5ID49IDUgJiYgIShzdC0+
Y29uc2VjX3RyYW5zaWVudCAmJiBMTSE9MyAmJiBzdC0+dmFyaWFibGVfZHVyYXRpb249PU9QVVNf
RlJBTUVTSVpFX1ZBUklBQkxFKTsKKyAgICAgIGVuYWJsZWQgPSAoKHN0LT5sZmUmJm5iQXZhaWxh
YmxlQnl0ZXM+MykgfHwgbmJBdmFpbGFibGVCeXRlcz4xMipDKSAmJiAhaHlicmlkICYmICFzaWxl
bmNlICYmICFzdC0+ZGlzYWJsZV9wZgorICAgICAgICAgICAgJiYgc3QtPmNvbXBsZXhpdHkgPj0g
NTsKIAogICAgICAgcHJlZmlsdGVyX3RhcHNldCA9IHN0LT50YXBzZXRfZGVjaXNpb247CiAgICAg
ICBwZl9vbiA9IHJ1bl9wcmVmaWx0ZXIoc3QsIGluLCBwcmVmaWx0ZXJfbWVtLCBDQywgTiwgcHJl
ZmlsdGVyX3RhcHNldCwgJnBpdGNoX2luZGV4LCAmZ2FpbjEsICZxZywgZW5hYmxlZCwgbmJBdmFp
bGFibGVCeXRlcyk7CkBAIC0xNTY4LDcgKzE2MDksNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9l
YyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20s
CiAgICAgICAgICBwaXRjaF9jaGFuZ2UgPSAxOwogICAgICAgaWYgKHBmX29uPT0wKQogICAgICAg
ewotICAgICAgICAgaWYoc3RhcnQ9PTAgJiYgdGVsbCsxNjw9dG90YWxfYml0cykKKyAgICAgICAg
IGlmKCFoeWJyaWQgJiYgdGVsbCsxNjw9dG90YWxfYml0cykKICAgICAgICAgICAgIGVjX2VuY19i
aXRfbG9ncChlbmMsIDAsIDEpOwogICAgICAgfSBlbHNlIHsKICAgICAgICAgIC8qVGhpcyBibG9j
ayBpcyBub3QgZ2F0ZWQgYnkgYSB0b3RhbCBiaXRzIGNoZWNrIG9ubHkgYmVjYXVzZQpAQCAtMTU4
OSw4ICsxNjMwLDEyIEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BV
U19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgIHNob3J0QmxvY2tzID0g
MDsKICAgIGlmIChzdC0+Y29tcGxleGl0eSA+PSAxICYmICFzdC0+bGZlKQogICAgeworICAgICAg
LyogUmVkdWNlcyB0aGUgbGlrZWxpaG9vZCBvZiBlbmVyZ3kgaW5zdGFiaWxpdHkgb24gZnJpY2F0
aXZlcyBhdCBsb3cgYml0cmF0ZQorICAgICAgICAgaW4gaHlicmlkIG1vZGUuIEl0IHNlZW1zIGxp
a2Ugd2Ugc3RpbGwgd2FudCB0byBoYXZlIHJlYWwgdHJhbnNpZW50cyBvbiB2b3dlbHMKKyAgICAg
ICAgIHRob3VnaCAoc21hbGwgU0lMSyBxdWFudGl6YXRpb24gb2Zmc2V0IHZhbHVlKS4gKi8KKyAg
ICAgIGludCBhbGxvd193ZWFrX3RyYW5zaWVudHMgPSBoeWJyaWQgJiYgZWZmZWN0aXZlQnl0ZXM8
MTUgJiYgc3QtPnNpbGtfaW5mby5vZmZzZXQgPj0gMTAwOwogICAgICAgaXNUcmFuc2llbnQgPSB0
cmFuc2llbnRfYW5hbHlzaXMoaW4sIE4rb3ZlcmxhcCwgQ0MsCi0gICAgICAgICAgICAmdGZfZXN0
aW1hdGUsICZ0Zl9jaGFuKTsKKyAgICAgICAgICAgICZ0Zl9lc3RpbWF0ZSwgJnRmX2NoYW4sIGFs
bG93X3dlYWtfdHJhbnNpZW50cywgJndlYWtfdHJhbnNpZW50KTsKICAgIH0KICAgIGlmIChMTT4w
ICYmIGVjX3RlbGwoZW5jKSszPD10b3RhbF9iaXRzKQogICAgewpAQCAtMTYxMCw3ICsxNjU1LDcg
QEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0
LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgaWYgKHNlY29uZE1kY3QpCiAgICB7CiAgICAg
ICBjb21wdXRlX21kY3RzKG1vZGUsIDAsIGluLCBmcmVxLCBDLCBDQywgTE0sIHN0LT51cHNhbXBs
ZSwgc3QtPmFyY2gpOwotICAgICAgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKG1vZGUsIGZyZXEsIGJh
bmRFLCBlZmZFbmQsIEMsIExNKTsKKyAgICAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhtb2RlLCBm
cmVxLCBiYW5kRSwgZWZmRW5kLCBDLCBMTSwgc3QtPmFyY2gpOwogICAgICAgYW1wMkxvZzIobW9k
ZSwgZWZmRW5kLCBlbmQsIGJhbmRFLCBiYW5kTG9nRTIsIEMpOwogICAgICAgZm9yIChpPTA7aTxD
Km5iRUJhbmRzO2krKykKICAgICAgICAgIGJhbmRMb2dFMltpXSArPSBIQUxGMTYoU0hMMTYoTE0s
IERCX1NISUZUKSk7CkBAIC0xNjE5LDcgKzE2NjQsNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9l
YyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20s
CiAgICBjb21wdXRlX21kY3RzKG1vZGUsIHNob3J0QmxvY2tzLCBpbiwgZnJlcSwgQywgQ0MsIExN
LCBzdC0+dXBzYW1wbGUsIHN0LT5hcmNoKTsKICAgIGlmIChDQz09MiYmQz09MSkKICAgICAgIHRm
X2NoYW4gPSAwOwotICAgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKG1vZGUsIGZyZXEsIGJhbmRFLCBl
ZmZFbmQsIEMsIExNKTsKKyAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhtb2RlLCBmcmVxLCBiYW5k
RSwgZWZmRW5kLCBDLCBMTSwgc3QtPmFyY2gpOwogCiAgICBpZiAoc3QtPmxmZSkKICAgIHsKQEAg
LTE2MzQsNyArMTY3OSw3IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICog
T1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgIEFMTE9DKHN1cnJv
dW5kX2R5bmFsbG9jLCBDKm5iRUJhbmRzLCBvcHVzX3ZhbDE2KTsKICAgIE9QVVNfQ0xFQVIoc3Vy
cm91bmRfZHluYWxsb2MsIGVuZCk7CiAgICAvKiBUaGlzIGNvbXB1dGVzIGhvdyBtdWNoIG1hc2tp
bmcgdGFrZXMgcGxhY2UgYmV0d2VlbiBzdXJyb3VuZCBjaGFubmVscyAqLwotICAgaWYgKHN0YXJ0
PT0wJiZzdC0+ZW5lcmd5X21hc2smJiFzdC0+bGZlKQorICAgaWYgKCFoeWJyaWQmJnN0LT5lbmVy
Z3lfbWFzayYmIXN0LT5sZmUpCiAgICB7CiAgICAgICBpbnQgbWFza19lbmQ7CiAgICAgICBpbnQg
bWlkYmFuZDsKQEAgLTE3MzYsMTQgKzE3ODEsMTQgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMo
Q0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAog
CiAgICAvKiBMYXN0IGNoYW5jZSB0byBjYXRjaCBhbnkgdHJhbnNpZW50IHdlIG1pZ2h0IGhhdmUg
bWlzc2VkIGluIHRoZQogICAgICAgdGltZS1kb21haW4gYW5hbHlzaXMgKi8KLSAgIGlmIChMTT4w
ICYmIGVjX3RlbGwoZW5jKSszPD10b3RhbF9iaXRzICYmICFpc1RyYW5zaWVudCAmJiBzdC0+Y29t
cGxleGl0eT49NSAmJiAhc3QtPmxmZSkKKyAgIGlmIChMTT4wICYmIGVjX3RlbGwoZW5jKSszPD10
b3RhbF9iaXRzICYmICFpc1RyYW5zaWVudCAmJiBzdC0+Y29tcGxleGl0eT49NSAmJiAhc3QtPmxm
ZSAmJiAhaHlicmlkKQogICAgewogICAgICAgaWYgKHBhdGNoX3RyYW5zaWVudF9kZWNpc2lvbihi
YW5kTG9nRSwgb2xkQmFuZEUsIG5iRUJhbmRzLCBzdGFydCwgZW5kLCBDKSkKICAgICAgIHsKICAg
ICAgICAgIGlzVHJhbnNpZW50ID0gMTsKICAgICAgICAgIHNob3J0QmxvY2tzID0gTTsKICAgICAg
ICAgIGNvbXB1dGVfbWRjdHMobW9kZSwgc2hvcnRCbG9ja3MsIGluLCBmcmVxLCBDLCBDQywgTE0s
IHN0LT51cHNhbXBsZSwgc3QtPmFyY2gpOwotICAgICAgICAgY29tcHV0ZV9iYW5kX2VuZXJnaWVz
KG1vZGUsIGZyZXEsIGJhbmRFLCBlZmZFbmQsIEMsIExNKTsKKyAgICAgICAgIGNvbXB1dGVfYmFu
ZF9lbmVyZ2llcyhtb2RlLCBmcmVxLCBiYW5kRSwgZWZmRW5kLCBDLCBMTSwgc3QtPmFyY2gpOwog
ICAgICAgICAgYW1wMkxvZzIobW9kZSwgZWZmRW5kLCBlbmQsIGJhbmRFLCBiYW5kTG9nRSwgQyk7
CiAgICAgICAgICAvKiBDb21wZW5zYXRlIGZvciB0aGUgc2NhbGluZyBvZiBzaG9ydCB2cyBsb25n
IG1kY3RzICovCiAgICAgICAgICBmb3IgKGk9MDtpPEMqbmJFQmFuZHM7aSsrKQpAQCAtMTc2Miwy
OSArMTgwNyw0NyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNf
UkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAKICAgIEFMTE9DKHRmX3Jlcywg
bmJFQmFuZHMsIGludCk7CiAgICAvKiBEaXNhYmxlIHZhcmlhYmxlIHRmIHJlc29sdXRpb24gZm9y
IGh5YnJpZCBhbmQgYXQgdmVyeSBsb3cgYml0cmF0ZSAqLwotICAgaWYgKGVmZmVjdGl2ZUJ5dGVz
Pj0xNSpDICYmIHN0YXJ0PT0wICYmIHN0LT5jb21wbGV4aXR5Pj0yICYmICFzdC0+bGZlKQorICAg
aWYgKGVmZmVjdGl2ZUJ5dGVzPj0xNSpDICYmICFoeWJyaWQgJiYgc3QtPmNvbXBsZXhpdHk+PTIg
JiYgIXN0LT5sZmUpCiAgICB7CiAgICAgICBpbnQgbGFtYmRhOwotICAgICAgaWYgKGVmZmVjdGl2
ZUJ5dGVzPDQwKQotICAgICAgICAgbGFtYmRhID0gMTI7Ci0gICAgICBlbHNlIGlmIChlZmZlY3Rp
dmVCeXRlczw2MCkKLSAgICAgICAgIGxhbWJkYSA9IDY7Ci0gICAgICBlbHNlIGlmIChlZmZlY3Rp
dmVCeXRlczwxMDApCi0gICAgICAgICBsYW1iZGEgPSA0OwotICAgICAgZWxzZQotICAgICAgICAg
bGFtYmRhID0gMzsKLSAgICAgIGxhbWJkYSo9MjsKLSAgICAgIHRmX3NlbGVjdCA9IHRmX2FuYWx5
c2lzKG1vZGUsIGVmZkVuZCwgaXNUcmFuc2llbnQsIHRmX3JlcywgbGFtYmRhLCBYLCBOLCBMTSwg
JnRmX3N1bSwgdGZfZXN0aW1hdGUsIHRmX2NoYW4pOworICAgICAgbGFtYmRhID0gSU1BWCg1LCAx
MjgwL2VmZmVjdGl2ZUJ5dGVzICsgMik7CisgICAgICB0Zl9zZWxlY3QgPSB0Zl9hbmFseXNpcyht
b2RlLCBlZmZFbmQsIGlzVHJhbnNpZW50LCB0Zl9yZXMsIGxhbWJkYSwgWCwgTiwgTE0sIHRmX2Vz
dGltYXRlLCB0Zl9jaGFuKTsKICAgICAgIGZvciAoaT1lZmZFbmQ7aTxlbmQ7aSsrKQogICAgICAg
ICAgdGZfcmVzW2ldID0gdGZfcmVzW2VmZkVuZC0xXTsKKyAgIH0gZWxzZSBpZiAoaHlicmlkICYm
IHdlYWtfdHJhbnNpZW50KQorICAgeworICAgICAgLyogRm9yIHdlYWsgdHJhbnNpZW50cywgd2Ug
cmVseSBvbiB0aGUgZmFjdCB0aGF0IGltcHJvdmluZyB0aW1lIHJlc29sdXRpb24gdXNpbmcKKyAg
ICAgICAgIFRGIG9uIGEgbG9uZyB3aW5kb3cgaXMgaW1wZXJmZWN0IGFuZCB3aWxsIG5vdCByZXN1
bHQgaW4gYW4gZW5lcmd5IGNvbGxhcHNlIGF0CisgICAgICAgICBsb3cgYml0cmF0ZS4gKi8KKyAg
ICAgIGZvciAoaT0wO2k8ZW5kO2krKykKKyAgICAgICAgIHRmX3Jlc1tpXSA9IDE7CisgICAgICB0
Zl9zZWxlY3Q9MDsKKyAgIH0gZWxzZSBpZiAoaHlicmlkICYmIGVmZmVjdGl2ZUJ5dGVzPDE1KQor
ICAgeworICAgICAgLyogRm9yIGxvdyBiaXRyYXRlIGh5YnJpZCwgd2UgZm9yY2UgdGVtcG9yYWwg
cmVzb2x1dGlvbiB0byA1IG1zIHJhdGhlciB0aGFuIDIuNSBtcy4gKi8KKyAgICAgIGZvciAoaT0w
O2k8ZW5kO2krKykKKyAgICAgICAgIHRmX3Jlc1tpXSA9IDA7CisgICAgICB0Zl9zZWxlY3Q9aXNU
cmFuc2llbnQ7CiAgICB9IGVsc2UgewotICAgICAgdGZfc3VtID0gMDsKICAgICAgIGZvciAoaT0w
O2k8ZW5kO2krKykKICAgICAgICAgIHRmX3Jlc1tpXSA9IGlzVHJhbnNpZW50OwogICAgICAgdGZf
c2VsZWN0PTA7CiAgICB9CiAKICAgIEFMTE9DKGVycm9yLCBDKm5iRUJhbmRzLCBvcHVzX3ZhbDE2
KTsKKyAgIGM9MDsKKyAgIGRvIHsKKyAgICAgIGZvciAoaT1zdGFydDtpPGVuZDtpKyspCisgICAg
ICB7CisgICAgICAgICAvKiBXaGVuIHRoZSBlbmVyZ3kgaXMgc3RhYmxlLCBzbGlnaHRseSBiaWFz
IGVuZXJneSBxdWFudGl6YXRpb24gdG93YXJkcworICAgICAgICAgICAgdGhlIHByZXZpb3VzIGVy
cm9yIHRvIG1ha2UgdGhlIGdhaW4gbW9yZSBzdGFibGUgKGEgY29uc3RhbnQgb2Zmc2V0IGlzCisg
ICAgICAgICAgICBiZXR0ZXIgdGhhbiBmbHVjdHVhdGlvbnMpLiAqLworICAgICAgICAgaWYgKEFC
UzMyKFNVQjMyKGJhbmRMb2dFW2krYypuYkVCYW5kc10sIG9sZEJhbmRFW2krYypuYkVCYW5kc10p
KSA8IFFDT05TVDE2KDIuZiwgREJfU0hJRlQpKQorICAgICAgICAgeworICAgICAgICAgICAgYmFu
ZExvZ0VbaStjKm5iRUJhbmRzXSAtPSBNVUxUMTZfMTZfUTE1KGVuZXJneUVycm9yW2krYypuYkVC
YW5kc10sIFFDT05TVDE2KDAuMjVmLCAxNSkpOworICAgICAgICAgfQorICAgICAgfQorICAgfSB3
aGlsZSAoKytjIDwgQyk7CiAgICBxdWFudF9jb2Fyc2VfZW5lcmd5KG1vZGUsIHN0YXJ0LCBlbmQs
IGVmZkVuZCwgYmFuZExvZ0UsCiAgICAgICAgICBvbGRCYW5kRSwgdG90YWxfYml0cywgZXJyb3Is
IGVuYywKICAgICAgICAgIEMsIExNLCBuYkF2YWlsYWJsZUJ5dGVzLCBzdC0+Zm9yY2VfaW50cmEs
CkBAIC0xNzk4LDcgKzE4NjEsMTUgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29k
ZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgICAgewog
ICAgICAgICAgc3QtPnRhcHNldF9kZWNpc2lvbiA9IDA7CiAgICAgICAgICBzdC0+c3ByZWFkX2Rl
Y2lzaW9uID0gU1BSRUFEX05PUk1BTDsKLSAgICAgIH0gZWxzZSBpZiAoc2hvcnRCbG9ja3MgfHwg
c3QtPmNvbXBsZXhpdHkgPCAzIHx8IG5iQXZhaWxhYmxlQnl0ZXMgPCAxMCpDIHx8IHN0YXJ0ICE9
IDApCisgICAgICB9IGVsc2UgaWYgKGh5YnJpZCkKKyAgICAgIHsKKyAgICAgICAgIGlmIChzdC0+
Y29tcGxleGl0eSA9PSAwKQorICAgICAgICAgICAgc3QtPnNwcmVhZF9kZWNpc2lvbiA9IFNQUkVB
RF9OT05FOworICAgICAgICAgZWxzZSBpZiAoaXNUcmFuc2llbnQpCisgICAgICAgICAgICBzdC0+
c3ByZWFkX2RlY2lzaW9uID0gU1BSRUFEX05PUk1BTDsKKyAgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIHN0LT5zcHJlYWRfZGVjaXNpb24gPSBTUFJFQURfQUdHUkVTU0lWRTsKKyAgICAgIH0gZWxz
ZSBpZiAoc2hvcnRCbG9ja3MgfHwgc3QtPmNvbXBsZXhpdHkgPCAzIHx8IG5iQXZhaWxhYmxlQnl0
ZXMgPCAxMCpDKQogICAgICAgewogICAgICAgICAgaWYgKHN0LT5jb21wbGV4aXR5ID09IDApCiAg
ICAgICAgICAgICBzdC0+c3ByZWFkX2RlY2lzaW9uID0gU1BSRUFEX05PTkU7CkBAIC0xODM0LDcg
KzE5MDUsNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVT
VFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAKICAgIG1heERlcHRoID0gZHluYWxs
b2NfYW5hbHlzaXMoYmFuZExvZ0UsIGJhbmRMb2dFMiwgbmJFQmFuZHMsIHN0YXJ0LCBlbmQsIEMs
IG9mZnNldHMsCiAgICAgICAgICBzdC0+bHNiX2RlcHRoLCBtb2RlLT5sb2dOLCBpc1RyYW5zaWVu
dCwgc3QtPnZiciwgc3QtPmNvbnN0cmFpbmVkX3ZiciwKLSAgICAgICAgIGVCYW5kcywgTE0sIGVm
ZmVjdGl2ZUJ5dGVzLCAmdG90X2Jvb3N0LCBzdC0+bGZlLCBzdXJyb3VuZF9keW5hbGxvYyk7Cisg
ICAgICAgICBlQmFuZHMsIExNLCBlZmZlY3RpdmVCeXRlcywgJnRvdF9ib29zdCwgc3QtPmxmZSwg
c3Vycm91bmRfZHluYWxsb2MsICZzdC0+YW5hbHlzaXMpOwogICAgLyogRm9yIExGRSwgZXZlcnl0
aGluZyBpbnRlcmVzdGluZyBpcyBpbiB0aGUgZmlyc3QgYmFuZCAqLwogICAgaWYgKHN0LT5sZmUp
CiAgICAgICBvZmZzZXRzWzBdID0gSU1JTig4LCBlZmZlY3RpdmVCeXRlcy8zKTsKQEAgLTE4OTYs
MTIgKzE5NjcsMTUgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVT
X1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgYWxsb2NfdHJpbSA9IDU7
CiAgICBpZiAodGVsbCsoNjw8QklUUkVTKSA8PSB0b3RhbF9iaXRzIC0gdG90YWxfYm9vc3QpCiAg
ICB7Ci0gICAgICBpZiAoc3QtPmxmZSkKKyAgICAgIGlmIChzdGFydCA+IDAgfHwgc3QtPmxmZSkK
KyAgICAgIHsKKyAgICAgICAgIHN0LT5zdGVyZW9fc2F2aW5nID0gMDsKICAgICAgICAgIGFsbG9j
X3RyaW0gPSA1OwotICAgICAgZWxzZQorICAgICAgfSBlbHNlIHsKICAgICAgICAgIGFsbG9jX3Ry
aW0gPSBhbGxvY190cmltX2FuYWx5c2lzKG1vZGUsIFgsIGJhbmRMb2dFLAogICAgICAgICAgICAg
ZW5kLCBMTSwgQywgTiwgJnN0LT5hbmFseXNpcywgJnN0LT5zdGVyZW9fc2F2aW5nLCB0Zl9lc3Rp
bWF0ZSwKLSAgICAgICAgICAgIHN0LT5pbnRlbnNpdHksIHN1cnJvdW5kX3RyaW0sIHN0LT5hcmNo
KTsKKyAgICAgICAgICAgIHN0LT5pbnRlbnNpdHksIHN1cnJvdW5kX3RyaW0sIGVxdWl2X3JhdGUs
IHN0LT5hcmNoKTsKKyAgICAgIH0KICAgICAgIGVjX2VuY19pY2RmKGVuYywgYWxsb2NfdHJpbSwg
dHJpbV9pY2RmLCA3KTsKICAgICAgIHRlbGwgPSBlY190ZWxsX2ZyYWMoZW5jKTsKICAgIH0KQEAg
LTE5MTksMTcgKzE5OTMsMzYgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIg
KiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgICAvKiBEb24n
dCBhdHRlbXB0IHRvIHVzZSBtb3JlIHRoYW4gNTEwIGtiL3MsIGV2ZW4gZm9yIGZyYW1lcyBzbWFs
bGVyIHRoYW4gMjAgbXMuCiAgICAgICAgIFRoZSBDRUxUIGFsbG9jYXRvciB3aWxsIGp1c3Qgbm90
IGJlIGFibGUgdG8gdXNlIG1vcmUgdGhhbiB0aGF0IGFueXdheS4gKi8KICAgICAgbmJDb21wcmVz
c2VkQnl0ZXMgPSBJTUlOKG5iQ29tcHJlc3NlZEJ5dGVzLDEyNzU+PigzLUxNKSk7Ci0gICAgIGJh
c2VfdGFyZ2V0ID0gdmJyX3JhdGUgLSAoKDQwKkMrMjApPDxCSVRSRVMpOworICAgICBpZiAoIWh5
YnJpZCkKKyAgICAgeworICAgICAgICBiYXNlX3RhcmdldCA9IHZicl9yYXRlIC0gKCg0MCpDKzIw
KTw8QklUUkVTKTsKKyAgICAgfSBlbHNlIHsKKyAgICAgICAgYmFzZV90YXJnZXQgPSBJTUFYKDAs
IHZicl9yYXRlIC0gKCg5KkMrNCk8PEJJVFJFUykpOworICAgICB9CiAKICAgICAgaWYgKHN0LT5j
b25zdHJhaW5lZF92YnIpCiAgICAgICAgIGJhc2VfdGFyZ2V0ICs9IChzdC0+dmJyX29mZnNldD4+
bG1fZGlmZik7CiAKLSAgICAgdGFyZ2V0ID0gY29tcHV0ZV92YnIobW9kZSwgJnN0LT5hbmFseXNp
cywgYmFzZV90YXJnZXQsIExNLCBlcXVpdl9yYXRlLAorICAgICBpZiAoIWh5YnJpZCkKKyAgICAg
eworICAgICAgICB0YXJnZXQgPSBjb21wdXRlX3Zicihtb2RlLCAmc3QtPmFuYWx5c2lzLCBiYXNl
X3RhcmdldCwgTE0sIGVxdWl2X3JhdGUsCiAgICAgICAgICAgIHN0LT5sYXN0Q29kZWRCYW5kcywg
Qywgc3QtPmludGVuc2l0eSwgc3QtPmNvbnN0cmFpbmVkX3ZiciwKICAgICAgICAgICAgc3QtPnN0
ZXJlb19zYXZpbmcsIHRvdF9ib29zdCwgdGZfZXN0aW1hdGUsIHBpdGNoX2NoYW5nZSwgbWF4RGVw
dGgsCi0gICAgICAgICAgIHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgc3QtPmxmZSwgc3QtPmVuZXJn
eV9tYXNrIT1OVUxMLCBzdXJyb3VuZF9tYXNraW5nLAorICAgICAgICAgICBzdC0+bGZlLCBzdC0+
ZW5lcmd5X21hc2shPU5VTEwsIHN1cnJvdW5kX21hc2tpbmcsCiAgICAgICAgICAgIHRlbXBvcmFs
X3Zicik7Ci0KKyAgICAgfSBlbHNlIHsKKyAgICAgICAgdGFyZ2V0ID0gYmFzZV90YXJnZXQ7Cisg
ICAgICAgIC8qIFRvbmFsIGZyYW1lcyAob2Zmc2V0PDEwMCkgbmVlZCBtb3JlIGJpdHMgdGhhbiBu
b2lzeSAob2Zmc2V0PjEwMCkgb25lcy4gKi8KKyAgICAgICAgaWYgKHN0LT5zaWxrX2luZm8ub2Zm
c2V0IDwgMTAwKSB0YXJnZXQgKz0gMTIgPDwgQklUUkVTID4+ICgzLUxNKTsKKyAgICAgICAgaWYg
KHN0LT5zaWxrX2luZm8ub2Zmc2V0ID4gMTAwKSB0YXJnZXQgLT0gMTggPDwgQklUUkVTID4+ICgz
LUxNKTsKKyAgICAgICAgLyogQm9vc3RpbmcgYml0cmF0ZSBvbiB0cmFuc2llbnRzIGFuZCB2b3dl
bHMgd2l0aCBzaWduaWZpY2FudCB0ZW1wb3JhbAorICAgICAgICAgICBzcGlrZXMuICovCisgICAg
ICAgIHRhcmdldCArPSAob3B1c19pbnQzMilNVUxUMTZfMTZfUTE0KHRmX2VzdGltYXRlLVFDT05T
VDE2KC4yNWYsMTQpLCAoNTA8PEJJVFJFUykpOworICAgICAgICAvKiBJZiB3ZSBoYXZlIGEgc3Ry
b25nIHRyYW5zaWVudCwgbGV0J3MgbWFrZSBzdXJlIGl0IGhhcyBlbm91Z2ggYml0cyB0byBjb2Rl
CisgICAgICAgICAgIHRoZSBmaXJzdCB0d28gYmFuZHMsIHNvIHRoYXQgaXQgY2FuIHVzZSBmb2xk
aW5nIHJhdGhlciB0aGFuIG5vaXNlLiAqLworICAgICAgICBpZiAodGZfZXN0aW1hdGUgPiBRQ09O
U1QxNiguN2YsMTQpKQorICAgICAgICAgICB0YXJnZXQgPSBJTUFYKHRhcmdldCwgNTA8PEJJVFJF
Uyk7CisgICAgIH0KICAgICAgLyogVGhlIGN1cnJlbnQgb2Zmc2V0IGlzIHJlbW92ZWQgZnJvbSB0
aGUgdGFyZ2V0IGFuZCB0aGUgc3BhY2UgdXNlZAogICAgICAgICBzbyBmYXIgaXMgYWRkZWQqLwog
ICAgICB0YXJnZXQ9dGFyZ2V0K3RlbGw7CkBAIC0xOTM3LDExICsyMDMwLDE2IEBAIGludCBjZWx0
X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1
c192YWwxNiAqIHBjbSwKICAgICAgICAgIHJlc3VsdCBpbiB0aGUgZW5jb2RlciBydW5uaW5nIG91
dCBvZiBiaXRzLgogICAgICAgICBUaGUgbWFyZ2luIG9mIDIgYnl0ZXMgZW5zdXJlcyB0aGF0IG5v
bmUgb2YgdGhlIGJ1c3QtcHJldmVudGlvbiBsb2dpYwogICAgICAgICAgaW4gdGhlIGRlY29kZXIg
d2lsbCBoYXZlIHRyaWdnZXJlZCBzbyBmYXIuICovCi0gICAgIG1pbl9hbGxvd2VkID0gKCh0ZWxs
K3RvdGFsX2Jvb3N0KygxPDwoQklUUkVTKzMpKS0xKT4+KEJJVFJFUyszKSkgKyAyIC0gbmJGaWxs
ZWRCeXRlczsKKyAgICAgbWluX2FsbG93ZWQgPSAoKHRlbGwrdG90YWxfYm9vc3QrKDE8PChCSVRS
RVMrMykpLTEpPj4oQklUUkVTKzMpKSArIDI7CisgICAgIC8qIFRha2UgaW50byBhY2NvdW50IHRo
ZSAzNyBiaXRzIHdlIG5lZWQgdG8gaGF2ZSBsZWZ0IGluIHRoZSBwYWNrZXQgdG8KKyAgICAgICAg
c2lnbmFsIGEgcmVkdW5kYW50IGZyYW1lIGluIGh5YnJpZCBtb2RlLiBDcmVhdGluZyBhIHNob3J0
ZXIgcGFja2V0IHdvdWxkCisgICAgICAgIGNyZWF0ZSBhbiBlbnRyb3B5IGNvZGVyIGRlc3luYy4g
Ki8KKyAgICAgaWYgKGh5YnJpZCkKKyAgICAgICAgbWluX2FsbG93ZWQgPSBJTUFYKG1pbl9hbGxv
d2VkLCAodGVsbDBfZnJhYysoMzc8PEJJVFJFUykrdG90YWxfYm9vc3QrKDE8PChCSVRSRVMrMykp
LTEpPj4oQklUUkVTKzMpKTsKIAogICAgICBuYkF2YWlsYWJsZUJ5dGVzID0gKHRhcmdldCsoMTw8
KEJJVFJFUysyKSkpPj4oQklUUkVTKzMpOwogICAgICBuYkF2YWlsYWJsZUJ5dGVzID0gSU1BWCht
aW5fYWxsb3dlZCxuYkF2YWlsYWJsZUJ5dGVzKTsKLSAgICAgbmJBdmFpbGFibGVCeXRlcyA9IElN
SU4obmJDb21wcmVzc2VkQnl0ZXMsbmJBdmFpbGFibGVCeXRlcytuYkZpbGxlZEJ5dGVzKSAtIG5i
RmlsbGVkQnl0ZXM7CisgICAgIG5iQXZhaWxhYmxlQnl0ZXMgPSBJTUlOKG5iQ29tcHJlc3NlZEJ5
dGVzLG5iQXZhaWxhYmxlQnl0ZXMpOwogCiAgICAgIC8qIEJ5IGhvdyBtdWNoIGRpZCB3ZSAibWlz
cyIgdGhlIHRhcmdldCBvbiB0aGF0IGZyYW1lICovCiAgICAgIGRlbHRhID0gdGFyZ2V0IC0gdmJy
X3JhdGU7CkBAIC0xOTg4LDcgKzIwODYsNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxU
RW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICAg
ICAgIHN0LT52YnJfcmVzZXJ2b2lyID0gMDsKICAgICAgICAgLypwcmludGYgKCIrJWRcbiIsIGFk
anVzdCk7Ki8KICAgICAgfQotICAgICBuYkNvbXByZXNzZWRCeXRlcyA9IElNSU4obmJDb21wcmVz
c2VkQnl0ZXMsbmJBdmFpbGFibGVCeXRlcytuYkZpbGxlZEJ5dGVzKTsKKyAgICAgbmJDb21wcmVz
c2VkQnl0ZXMgPSBJTUlOKG5iQ29tcHJlc3NlZEJ5dGVzLG5iQXZhaWxhYmxlQnl0ZXMpOwogICAg
ICAvKnByaW50ZigiJWRcbiIsIG5iQ29tcHJlc3NlZEJ5dGVzKjUwKjgpOyovCiAgICAgIC8qIFRo
aXMgbW92ZXMgdGhlIHJhdyBiaXRzIHRvIHRha2UgaW50byBhY2NvdW50IHRoZSBuZXcgY29tcHJl
c3NlZCBzaXplICovCiAgICAgIGVjX2VuY19zaHJpbmsoZW5jLCBuYkNvbXByZXNzZWRCeXRlcyk7
CkBAIC0yMDM4LDcgKzIxMzYsNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2Rl
ciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBxdWFudF9h
bGxfYmFuZHMoMSwgbW9kZSwgc3RhcnQsIGVuZCwgWCwgQz09MiA/IFgrTiA6IE5VTEwsIGNvbGxh
cHNlX21hc2tzLAogICAgICAgICAgYmFuZEUsIHB1bHNlcywgc2hvcnRCbG9ja3MsIHN0LT5zcHJl
YWRfZGVjaXNpb24sCiAgICAgICAgICBkdWFsX3N0ZXJlbywgc3QtPmludGVuc2l0eSwgdGZfcmVz
LCBuYkNvbXByZXNzZWRCeXRlcyooODw8QklUUkVTKS1hbnRpX2NvbGxhcHNlX3JzdiwKLSAgICAg
ICAgIGJhbGFuY2UsIGVuYywgTE0sIGNvZGVkQmFuZHMsICZzdC0+cm5nLCBzdC0+YXJjaCk7Cisg
ICAgICAgICBiYWxhbmNlLCBlbmMsIExNLCBjb2RlZEJhbmRzLCAmc3QtPnJuZywgc3QtPmNvbXBs
ZXhpdHksIHN0LT5hcmNoLCBzdC0+ZGlzYWJsZV9pbnYpOwogCiAgICBpZiAoYW50aV9jb2xsYXBz
ZV9yc3YgPiAwKQogICAgewpAQCAtMjA0OSw2ICsyMTQ3LDE0IEBAIGludCBjZWx0X2VuY29kZV93
aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAq
IHBjbSwKICAgICAgIGVjX2VuY19iaXRzKGVuYywgYW50aV9jb2xsYXBzZV9vbiwgMSk7CiAgICB9
CiAgICBxdWFudF9lbmVyZ3lfZmluYWxpc2UobW9kZSwgc3RhcnQsIGVuZCwgb2xkQmFuZEUsIGVy
cm9yLCBmaW5lX3F1YW50LCBmaW5lX3ByaW9yaXR5LCBuYkNvbXByZXNzZWRCeXRlcyo4LWVjX3Rl
bGwoZW5jKSwgZW5jLCBDKTsKKyAgIE9QVVNfQ0xFQVIoZW5lcmd5RXJyb3IsIG5iRUJhbmRzKkND
KTsKKyAgIGM9MDsKKyAgIGRvIHsKKyAgICAgIGZvciAoaT1zdGFydDtpPGVuZDtpKyspCisgICAg
ICB7CisgICAgICAgICBlbmVyZ3lFcnJvcltpK2MqbmJFQmFuZHNdID0gTUFYMTYoLVFDT05TVDE2
KDAuNWYsIDE1KSwgTUlOMTYoUUNPTlNUMTYoMC41ZiwgMTUpLCBlcnJvcltpK2MqbmJFQmFuZHNd
KSk7CisgICAgICB9CisgICB9IHdoaWxlICgrK2MgPCBDKTsKIAogICAgaWYgKHNpbGVuY2UpCiAg
ICB7CkBAIC0yMzIxLDEwICsyNDI3LDI0IEBAIGludCBvcHVzX2N1c3RvbV9lbmNvZGVyX2N0bChD
RUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICAgICAg
ICAgKnZhbHVlPXN0LT5sc2JfZGVwdGg7CiAgICAgICB9CiAgICAgICBicmVhazsKLSAgICAgIGNh
c2UgT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OX1JFUVVFU1Q6CisgICAgICBjYXNlIE9Q
VVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUOgogICAgICAgewogICAgICAg
ICAgIG9wdXNfaW50MzIgdmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50MzIpOwotICAgICAgICAg
IHN0LT52YXJpYWJsZV9kdXJhdGlvbiA9IHZhbHVlOworICAgICAgICAgIGlmKHZhbHVlPDAgfHwg
dmFsdWU+MSkKKyAgICAgICAgICB7CisgICAgICAgICAgICAgZ290byBiYWRfYXJnOworICAgICAg
ICAgIH0KKyAgICAgICAgICBzdC0+ZGlzYWJsZV9pbnYgPSB2YWx1ZTsKKyAgICAgIH0KKyAgICAg
IGJyZWFrOworICAgICAgY2FzZSBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVR
VUVTVDoKKyAgICAgIHsKKyAgICAgICAgICBvcHVzX2ludDMyICp2YWx1ZSA9IHZhX2FyZyhhcCwg
b3B1c19pbnQzMiopOworICAgICAgICAgIGlmICghdmFsdWUpCisgICAgICAgICAgeworICAgICAg
ICAgICAgIGdvdG8gYmFkX2FyZzsKKyAgICAgICAgICB9CisgICAgICAgICAgKnZhbHVlID0gc3Qt
PmRpc2FibGVfaW52OwogICAgICAgfQogICAgICAgYnJlYWs7CiAgICAgICBjYXNlIE9QVVNfUkVT
RVRfU1RBVEU6CkBAIC0yMzY4LDYgKzI0ODgsMTMgQEAgaW50IG9wdXNfY3VzdG9tX2VuY29kZXJf
Y3RsKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgaW50IHJlcXVlc3QsIC4uLikKICAg
ICAgICAgICAgIE9QVVNfQ09QWSgmc3QtPmFuYWx5c2lzLCBpbmZvLCAxKTsKICAgICAgIH0KICAg
ICAgIGJyZWFrOworICAgICAgY2FzZSBDRUxUX1NFVF9TSUxLX0lORk9fUkVRVUVTVDoKKyAgICAg
IHsKKyAgICAgICAgIFNJTEtJbmZvICppbmZvID0gdmFfYXJnKGFwLCBTSUxLSW5mbyAqKTsKKyAg
ICAgICAgIGlmIChpbmZvKQorICAgICAgICAgICAgT1BVU19DT1BZKCZzdC0+c2lsa19pbmZvLCBp
bmZvLCAxKTsKKyAgICAgIH0KKyAgICAgIGJyZWFrOwogICAgICAgY2FzZSBDRUxUX0dFVF9NT0RF
X1JFUVVFU1Q6CiAgICAgICB7CiAgICAgICAgICBjb25zdCBDRUxUTW9kZSAqKiB2YWx1ZSA9IHZh
X2FyZyhhcCwgY29uc3QgQ0VMVE1vZGUqKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9scGMuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9jZWx0X2xwYy5jCmluZGV4IGI0MTBhMjFjNWY2YmYwOTVmMmYxNmM3MzUwYTliNDcxMTQx
ZmVkODkuLjU3YmM1ZjNkZDNmZDg4NjE2MmZlNGMzYTdmZGI4NzE5N2ZjNTNlYmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9jZWx0X2xwYy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2xwYy5jCkBAIC04OSw1OCArODksNDAg
QEAgaW50ICAgICAgICAgIHAKIAogCiB2b2lkIGNlbHRfZmlyX2MoCi0gICAgICAgICBjb25zdCBv
cHVzX3ZhbDE2ICpfeCwKKyAgICAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKngsCiAgICAgICAgICBj
b25zdCBvcHVzX3ZhbDE2ICpudW0sCi0gICAgICAgICBvcHVzX3ZhbDE2ICpfeSwKKyAgICAgICAg
IG9wdXNfdmFsMTYgKnksCiAgICAgICAgICBpbnQgTiwKICAgICAgICAgIGludCBvcmQsCi0gICAg
ICAgICBvcHVzX3ZhbDE2ICptZW0sCiAgICAgICAgICBpbnQgYXJjaCkKIHsKICAgIGludCBpLGo7
CiAgICBWQVJERUNMKG9wdXNfdmFsMTYsIHJudW0pOwotICAgVkFSREVDTChvcHVzX3ZhbDE2LCB4
KTsKICAgIFNBVkVfU1RBQ0s7CiAKICAgIEFMTE9DKHJudW0sIG9yZCwgb3B1c192YWwxNik7Ci0g
ICBBTExPQyh4LCBOK29yZCwgb3B1c192YWwxNik7CiAgICBmb3IoaT0wO2k8b3JkO2krKykKICAg
ICAgIHJudW1baV0gPSBudW1bb3JkLWktMV07Ci0gICBmb3IoaT0wO2k8b3JkO2krKykKLSAgICAg
IHhbaV0gPSBtZW1bb3JkLWktMV07Ci0gICBmb3IgKGk9MDtpPE47aSsrKQotICAgICAgeFtpK29y
ZF09X3hbaV07Ci0gICBmb3IoaT0wO2k8b3JkO2krKykKLSAgICAgIG1lbVtpXSA9IF94W04taS0x
XTsKLSNpZmRlZiBTTUFMTF9GT09UUFJJTlQKLSAgICh2b2lkKWFyY2g7Ci0gICBmb3IgKGk9MDtp
PE47aSsrKQotICAgewotICAgICAgb3B1c192YWwzMiBzdW0gPSBTSEwzMihFWFRFTkQzMihfeFtp
XSksIFNJR19TSElGVCk7Ci0gICAgICBmb3IgKGo9MDtqPG9yZDtqKyspCi0gICAgICB7Ci0gICAg
ICAgICBzdW0gPSBNQUMxNl8xNihzdW0scm51bVtqXSx4W2kral0pOwotICAgICAgfQotICAgICAg
X3lbaV0gPSBTQVRVUkFURTE2KFBTSFIzMihzdW0sIFNJR19TSElGVCkpOwotICAgfQotI2Vsc2UK
ICAgIGZvciAoaT0wO2k8Ti0zO2krPTQpCiAgICB7Ci0gICAgICBvcHVzX3ZhbDMyIHN1bVs0XT17
MCwwLDAsMH07Ci0gICAgICB4Y29ycl9rZXJuZWwocm51bSwgeCtpLCBzdW0sIG9yZCwgYXJjaCk7
Ci0gICAgICBfeVtpICBdID0gU0FUVVJBVEUxNihBREQzMihFWFRFTkQzMihfeFtpICBdKSwgUFNI
UjMyKHN1bVswXSwgU0lHX1NISUZUKSkpOwotICAgICAgX3lbaSsxXSA9IFNBVFVSQVRFMTYoQURE
MzIoRVhURU5EMzIoX3hbaSsxXSksIFBTSFIzMihzdW1bMV0sIFNJR19TSElGVCkpKTsKLSAgICAg
IF95W2krMl0gPSBTQVRVUkFURTE2KEFERDMyKEVYVEVORDMyKF94W2krMl0pLCBQU0hSMzIoc3Vt
WzJdLCBTSUdfU0hJRlQpKSk7Ci0gICAgICBfeVtpKzNdID0gU0FUVVJBVEUxNihBREQzMihFWFRF
TkQzMihfeFtpKzNdKSwgUFNIUjMyKHN1bVszXSwgU0lHX1NISUZUKSkpOworICAgICAgb3B1c192
YWwzMiBzdW1bNF07CisgICAgICBzdW1bMF0gPSBTSEwzMihFWFRFTkQzMih4W2kgIF0pLCBTSUdf
U0hJRlQpOworICAgICAgc3VtWzFdID0gU0hMMzIoRVhURU5EMzIoeFtpKzFdKSwgU0lHX1NISUZU
KSwKKyAgICAgIHN1bVsyXSA9IFNITDMyKEVYVEVORDMyKHhbaSsyXSksIFNJR19TSElGVCk7Cisg
ICAgICBzdW1bM10gPSBTSEwzMihFWFRFTkQzMih4W2krM10pLCBTSUdfU0hJRlQpOworICAgICAg
eGNvcnJfa2VybmVsKHJudW0sIHgraS1vcmQsIHN1bSwgb3JkLCBhcmNoKTsKKyAgICAgIHlbaSAg
XSA9IFJPVU5EMTYoc3VtWzBdLCBTSUdfU0hJRlQpOworICAgICAgeVtpKzFdID0gUk9VTkQxNihz
dW1bMV0sIFNJR19TSElGVCk7CisgICAgICB5W2krMl0gPSBST1VORDE2KHN1bVsyXSwgU0lHX1NI
SUZUKTsKKyAgICAgIHlbaSszXSA9IFJPVU5EMTYoc3VtWzNdLCBTSUdfU0hJRlQpOwogICAgfQog
ICAgZm9yICg7aTxOO2krKykKICAgIHsKLSAgICAgIG9wdXNfdmFsMzIgc3VtID0gMDsKKyAgICAg
IG9wdXNfdmFsMzIgc3VtID0gU0hMMzIoRVhURU5EMzIoeFtpXSksIFNJR19TSElGVCk7CiAgICAg
ICBmb3IgKGo9MDtqPG9yZDtqKyspCi0gICAgICAgICBzdW0gPSBNQUMxNl8xNihzdW0scm51bVtq
XSx4W2kral0pOwotICAgICAgX3lbaV0gPSBTQVRVUkFURTE2KEFERDMyKEVYVEVORDMyKF94W2ld
KSwgUFNIUjMyKHN1bSwgU0lHX1NISUZUKSkpOworICAgICAgICAgc3VtID0gTUFDMTZfMTYoc3Vt
LHJudW1bal0seFtpK2otb3JkXSk7CisgICAgICB5W2ldID0gUk9VTkQxNihzdW0sIFNJR19TSElG
VCk7CiAgICB9Ci0jZW5kaWYKICAgIFJFU1RPUkVfU1RBQ0s7CiB9CiAKQEAgLTE2Niw3ICsxNDgs
NyBAQCB2b2lkIGNlbHRfaWlyKGNvbnN0IG9wdXNfdmFsMzIgKl94LAogICAgICAgewogICAgICAg
ICAgbWVtW2pdPW1lbVtqLTFdOwogICAgICAgfQotICAgICAgbWVtWzBdID0gUk9VTkQxNihzdW0s
U0lHX1NISUZUKTsKKyAgICAgIG1lbVswXSA9IFNST1VORDE2KHN1bSwgU0lHX1NISUZUKTsKICAg
ICAgIF95W2ldID0gc3VtOwogICAgfQogI2Vsc2UKQEAgLTE5NSwyMCArMTc3LDIwIEBAIHZvaWQg
Y2VsdF9paXIoY29uc3Qgb3B1c192YWwzMiAqX3gsCiAgICAgICB4Y29ycl9rZXJuZWwocmRlbiwg
eStpLCBzdW0sIG9yZCwgYXJjaCk7CiAKICAgICAgIC8qIFBhdGNoIHVwIHRoZSByZXN1bHQgdG8g
Y29tcGVuc2F0ZSBmb3IgdGhlIGZhY3QgdGhhdCB0aGlzIGlzIGFuIElJUiAqLwotICAgICAgeVtp
K29yZCAgXSA9IC1ST1VORDE2KHN1bVswXSxTSUdfU0hJRlQpOworICAgICAgeVtpK29yZCAgXSA9
IC1TUk9VTkQxNihzdW1bMF0sU0lHX1NISUZUKTsKICAgICAgIF95W2kgIF0gPSBzdW1bMF07CiAg
ICAgICBzdW1bMV0gPSBNQUMxNl8xNihzdW1bMV0sIHlbaStvcmQgIF0sIGRlblswXSk7Ci0gICAg
ICB5W2krb3JkKzFdID0gLVJPVU5EMTYoc3VtWzFdLFNJR19TSElGVCk7CisgICAgICB5W2krb3Jk
KzFdID0gLVNST1VORDE2KHN1bVsxXSxTSUdfU0hJRlQpOwogICAgICAgX3lbaSsxXSA9IHN1bVsx
XTsKICAgICAgIHN1bVsyXSA9IE1BQzE2XzE2KHN1bVsyXSwgeVtpK29yZCsxXSwgZGVuWzBdKTsK
ICAgICAgIHN1bVsyXSA9IE1BQzE2XzE2KHN1bVsyXSwgeVtpK29yZCAgXSwgZGVuWzFdKTsKLSAg
ICAgIHlbaStvcmQrMl0gPSAtUk9VTkQxNihzdW1bMl0sU0lHX1NISUZUKTsKKyAgICAgIHlbaStv
cmQrMl0gPSAtU1JPVU5EMTYoc3VtWzJdLFNJR19TSElGVCk7CiAgICAgICBfeVtpKzJdID0gc3Vt
WzJdOwogCiAgICAgICBzdW1bM10gPSBNQUMxNl8xNihzdW1bM10sIHlbaStvcmQrMl0sIGRlblsw
XSk7CiAgICAgICBzdW1bM10gPSBNQUMxNl8xNihzdW1bM10sIHlbaStvcmQrMV0sIGRlblsxXSk7
CiAgICAgICBzdW1bM10gPSBNQUMxNl8xNihzdW1bM10sIHlbaStvcmQgIF0sIGRlblsyXSk7Ci0g
ICAgICB5W2krb3JkKzNdID0gLVJPVU5EMTYoc3VtWzNdLFNJR19TSElGVCk7CisgICAgICB5W2kr
b3JkKzNdID0gLVNST1VORDE2KHN1bVszXSxTSUdfU0hJRlQpOwogICAgICAgX3lbaSszXSA9IHN1
bVszXTsKICAgIH0KICAgIGZvciAoO2k8TjtpKyspCkBAIC0yMTYsNyArMTk4LDcgQEAgdm9pZCBj
ZWx0X2lpcihjb25zdCBvcHVzX3ZhbDMyICpfeCwKICAgICAgIG9wdXNfdmFsMzIgc3VtID0gX3hb
aV07CiAgICAgICBmb3IgKGo9MDtqPG9yZDtqKyspCiAgICAgICAgICBzdW0gLT0gTVVMVDE2XzE2
KHJkZW5bal0seVtpK2pdKTsKLSAgICAgIHlbaStvcmRdID0gUk9VTkQxNihzdW0sU0lHX1NISUZU
KTsKKyAgICAgIHlbaStvcmRdID0gU1JPVU5EMTYoc3VtLFNJR19TSElGVCk7CiAgICAgICBfeVtp
XSA9IHN1bTsKICAgIH0KICAgIGZvcihpPTA7aTxvcmQ7aSsrKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Nl
bHRfbHBjLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQvY2VsdF9scGMuaAppbmRleCAzMjM0NTllYjFhODMxNTY2NjQ3ODQ3NDJk
ZGNhNzhlMWM0NGU2ZGMwLi5hNGM1ZmQ2ZWE1ZGNhMzEyZmFkYjljMzYxZGIyYWJkNWUxYmU3ZjY4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvY2VsdF9scGMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9scGMuaApAQCAtNDUs
MTIgKzQ1LDExIEBAIHZvaWQgY2VsdF9maXJfYygKICAgICAgICAgIG9wdXNfdmFsMTYgKnksCiAg
ICAgICAgICBpbnQgTiwKICAgICAgICAgIGludCBvcmQsCi0gICAgICAgICBvcHVzX3ZhbDE2ICpt
ZW0sCiAgICAgICAgICBpbnQgYXJjaCk7CiAKICNpZiAhZGVmaW5lZChPVkVSUklERV9DRUxUX0ZJ
UikKLSNkZWZpbmUgY2VsdF9maXIoeCwgbnVtLCB5LCBOLCBvcmQsIG1lbSwgYXJjaCkgXAotICAg
IChjZWx0X2Zpcl9jKHgsIG51bSwgeSwgTiwgb3JkLCBtZW0sIGFyY2gpKQorI2RlZmluZSBjZWx0
X2Zpcih4LCBudW0sIHksIE4sIG9yZCwgYXJjaCkgXAorICAgIChjZWx0X2Zpcl9jKHgsIG51bSwg
eSwgTiwgb3JkLCBhcmNoKSkKICNlbmRpZgogCiB2b2lkIGNlbHRfaWlyKGNvbnN0IG9wdXNfdmFs
MzIgKngsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVzLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVt
cF9tb2Rlcy9kdW1wX21vZGVzLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTEwNWE1MzQ0ZTNiZjM0YWVmOWNhYzI0
N2MxMDYyZjY5YmY0NDcxZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9kdW1wX21vZGVzL2R1bXBf
bW9kZXMuYwpAQCAtMCwwICsxLDM1MyBAQAorLyogQ29weXJpZ2h0IChjKSAyMDA4IENTSVJPCisg
ICBDb3B5cmlnaHQgKGMpIDIwMDgtMjAwOSBYaXBoLk9yZyBGb3VuZGF0aW9uCisgICBXcml0dGVu
IGJ5IEplYW4tTWFyYyBWYWxpbiAqLworLyoKKyAgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICAgbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
ICBhcmUgbWV0OgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgIC0gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAgIGBgQVMgSVMnJyBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QK
KyAgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUgorICAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyAgIE9SIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORworICAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpZmRlZiBIQVZFX0NPTkZJR19I
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjZW5kaWYKKworI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2lu
Y2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSAibW9kZXMuaCIKKyNpbmNsdWRlICJjZWx0LmgiCisj
aW5jbHVkZSAicmF0ZS5oIgorI2luY2x1ZGUgImR1bXBfbW9kZXNfYXJjaC5oIgorCisjZGVmaW5l
IElOVDE2ICIlZCIKKyNkZWZpbmUgSU5UMzIgIiVkIgorI2RlZmluZSBGTE9BVCAiJSMwLjhnZiIK
KworI2lmZGVmIEZJWEVEX1BPSU5UCisjZGVmaW5lIFdPUkQxNiBJTlQxNgorI2RlZmluZSBXT1JE
MzIgSU5UMzIKKyNlbHNlCisjZGVmaW5lIFdPUkQxNiBGTE9BVAorI2RlZmluZSBXT1JEMzIgRkxP
QVQKKyNlbmRpZgorCit2b2lkIGR1bXBfbW9kZXMoRklMRSAqZmlsZSwgQ0VMVE1vZGUgKiptb2Rl
cywgaW50IG5iX21vZGVzKQoreworICAgaW50IGksIGosIGs7CisgICBpbnQgbWRjdF90d2lkZGxl
c19zaXplOworICAgZnByaW50ZihmaWxlLCAiLyogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZmlsZSB3
YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgYnkgZHVtcF9tb2Rlcy5jXG4iKTsKKyAgIGZwcmlu
dGYoZmlsZSwgIiAgIHdpdGggYXJndW1lbnRzOiIpOworICAgZm9yIChpPTA7aTxuYl9tb2Rlcztp
KyspCisgICB7CisgICAgICBDRUxUTW9kZSAqbW9kZSA9IG1vZGVzW2ldOworICAgICAgZnByaW50
ZihmaWxlLCAiICVkICVkIixtb2RlLT5Gcyxtb2RlLT5zaG9ydE1kY3RTaXplKm1vZGUtPm5iU2hv
cnRNZGN0cyk7CisgICB9CisgICBmcHJpbnRmKGZpbGUsICJcbiAgIEl0IGNvbnRhaW5zIHN0YXRp
YyBkZWZpbml0aW9ucyBmb3Igc29tZSBwcmUtZGVmaW5lZCBtb2Rlcy4gKi9cbiIpOworICAgZnBy
aW50ZihmaWxlLCAiI2luY2x1ZGUgXCJtb2Rlcy5oXCJcbiIpOworICAgZnByaW50ZihmaWxlLCAi
I2luY2x1ZGUgXCJyYXRlLmhcIlxuIik7CisgICBmcHJpbnRmKGZpbGUsICJcbiNpZmRlZiBIQVZF
X0FSTV9ORTEwXG4iKTsKKyAgIGZwcmludGYoZmlsZSwgIiNkZWZpbmUgT1ZFUlJJREVfRkZUIDFc
biIpOworICAgZnByaW50ZihmaWxlLCAiI2luY2x1ZGUgXCIlc1wiXG4iLCBBUk1fTkUxMF9BUkNI
X0ZJTEVfTkFNRSk7CisgICBmcHJpbnRmKGZpbGUsICIjZW5kaWZcbiIpOworCisgICBmcHJpbnRm
KGZpbGUsICJcbiIpOworCisgICBmb3IgKGk9MDtpPG5iX21vZGVzO2krKykKKyAgIHsKKyAgICAg
IENFTFRNb2RlICptb2RlID0gbW9kZXNbaV07CisgICAgICBpbnQgbWRjdFNpemU7CisgICAgICBp
bnQgc3RhbmRhcmQsIGZyYW1lcmF0ZTsKKworICAgICAgbWRjdFNpemUgPSBtb2RlLT5zaG9ydE1k
Y3RTaXplKm1vZGUtPm5iU2hvcnRNZGN0czsKKyAgICAgIHN0YW5kYXJkID0gKG1vZGUtPkZzID09
IDQwMCoob3B1c19pbnQzMiltb2RlLT5zaG9ydE1kY3RTaXplKTsKKyAgICAgIGZyYW1lcmF0ZSA9
IG1vZGUtPkZzL21vZGUtPnNob3J0TWRjdFNpemU7CisKKyAgICAgIGlmICghc3RhbmRhcmQpCisg
ICAgICB7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIERFRl9FQkFORFMlZF8lZFxu
IiwgbW9kZS0+RnMsIG1kY3RTaXplKTsKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiNkZWZpbmUg
REVGX0VCQU5EUyVkXyVkXG4iLCBtb2RlLT5GcywgbWRjdFNpemUpOworICAgICAgICAgZnByaW50
ZiAoZmlsZSwgInN0YXRpYyBjb25zdCBvcHVzX2ludDE2IGVCYW5kcyVkXyVkWyVkXSA9IHtcbiIs
IG1vZGUtPkZzLCBtZGN0U2l6ZSwgbW9kZS0+bmJFQmFuZHMrMik7CisgICAgICAgICBmb3IgKGo9
MDtqPG1vZGUtPm5iRUJhbmRzKzI7aisrKQorICAgICAgICAgICAgZnByaW50ZiAoZmlsZSwgIiVk
LCAiLCBtb2RlLT5lQmFuZHNbal0pOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsK
KyAgICAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7CisgICAgICAgICBmcHJpbnRmKGZp
bGUsICJcbiIpOworICAgICAgfQorCisgICAgICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIERFRl9X
SU5ET1clZFxuIiwgbW9kZS0+b3ZlcmxhcCk7CisgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5l
IERFRl9XSU5ET1clZFxuIiwgbW9kZS0+b3ZlcmxhcCk7CisgICAgICBmcHJpbnRmIChmaWxlLCAi
c3RhdGljIGNvbnN0IG9wdXNfdmFsMTYgd2luZG93JWRbJWRdID0ge1xuIiwgbW9kZS0+b3Zlcmxh
cCwgbW9kZS0+b3ZlcmxhcCk7CisgICAgICBmb3IgKGo9MDtqPG1vZGUtPm92ZXJsYXA7aisrKQor
ICAgICAgICAgZnByaW50ZiAoZmlsZSwgV09SRDE2ICIsJWMiLCBtb2RlLT53aW5kb3dbal0sKGor
NiklNT09MD8nXG4nOicgJyk7CisgICAgICBmcHJpbnRmIChmaWxlLCAifTtcbiIpOworICAgICAg
ZnByaW50ZihmaWxlLCAiI2VuZGlmXG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIlxuIik7CisK
KyAgICAgIGlmICghc3RhbmRhcmQpCisgICAgICB7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIj
aWZuZGVmIERFRl9BTExPQ19WRUNUT1JTJWRfJWRcbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7Cisg
ICAgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIERFRl9BTExPQ19WRUNUT1JTJWRfJWRcbiIs
IG1vZGUtPkZzLCBtZGN0U2l6ZSk7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAic3RhdGljIGNv
bnN0IHVuc2lnbmVkIGNoYXIgYWxsb2NWZWN0b3JzJWRfJWRbJWRdID0ge1xuIiwgbW9kZS0+RnMs
IG1kY3RTaXplLCBtb2RlLT5uYkVCYW5kcyptb2RlLT5uYkFsbG9jVmVjdG9ycyk7CisgICAgICAg
ICBmb3IgKGo9MDtqPG1vZGUtPm5iQWxsb2NWZWN0b3JzO2orKykKKyAgICAgICAgIHsKKyAgICAg
ICAgICAgIGZvciAoaz0wO2s8bW9kZS0+bmJFQmFuZHM7aysrKQorICAgICAgICAgICAgICAgZnBy
aW50ZiAoZmlsZSwgIiUyZCwgIiwgbW9kZS0+YWxsb2NWZWN0b3JzW2oqbW9kZS0+bmJFQmFuZHMr
a10pOworICAgICAgICAgICAgZnByaW50ZiAoZmlsZSwgIlxuIik7CisgICAgICAgICB9CisgICAg
ICAgICBmcHJpbnRmIChmaWxlLCAifTtcbiIpOworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2Vu
ZGlmXG4iKTsKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIlxuIik7CisgICAgICB9CisKKyAgICAg
IGZwcmludGYoZmlsZSwgIiNpZm5kZWYgREVGX0xPR04lZFxuIiwgZnJhbWVyYXRlKTsKKyAgICAg
IGZwcmludGYoZmlsZSwgIiNkZWZpbmUgREVGX0xPR04lZFxuIiwgZnJhbWVyYXRlKTsKKyAgICAg
IGZwcmludGYgKGZpbGUsICJzdGF0aWMgY29uc3Qgb3B1c19pbnQxNiBsb2dOJWRbJWRdID0ge1xu
IiwgZnJhbWVyYXRlLCBtb2RlLT5uYkVCYW5kcyk7CisgICAgICBmb3IgKGo9MDtqPG1vZGUtPm5i
RUJhbmRzO2orKykKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICIlZCwgIiwgbW9kZS0+bG9nTltq
XSk7CisgICAgICBmcHJpbnRmIChmaWxlLCAifTtcbiIpOworICAgICAgZnByaW50ZihmaWxlLCAi
I2VuZGlmXG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIlxuIik7CisKKyAgICAgIC8qIFB1bHNl
IGNhY2hlICovCisgICAgICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIERFRl9QVUxTRV9DQUNIRSVk
XG4iLCBtb2RlLT5Gcy9tZGN0U2l6ZSk7CisgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIERF
Rl9QVUxTRV9DQUNIRSVkXG4iLCBtb2RlLT5Gcy9tZGN0U2l6ZSk7CisgICAgICBmcHJpbnRmIChm
aWxlLCAic3RhdGljIGNvbnN0IG9wdXNfaW50MTYgY2FjaGVfaW5kZXglZFslZF0gPSB7XG4iLCBt
b2RlLT5Gcy9tZGN0U2l6ZSwgKG1vZGUtPm1heExNKzIpKm1vZGUtPm5iRUJhbmRzKTsKKyAgICAg
IGZvciAoaj0wO2o8bW9kZS0+bmJFQmFuZHMqKG1vZGUtPm1heExNKzIpO2orKykKKyAgICAgICAg
IGZwcmludGYgKGZpbGUsICIlZCwlYyIsIG1vZGUtPmNhY2hlLmluZGV4W2pdLChqKzE2KSUxNT09
MD8nXG4nOicgJyk7CisgICAgICBmcHJpbnRmIChmaWxlLCAifTtcbiIpOworICAgICAgZnByaW50
ZiAoZmlsZSwgInN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGNhY2hlX2JpdHMlZFslZF0gPSB7
XG4iLCBtb2RlLT5Gcy9tZGN0U2l6ZSwgbW9kZS0+Y2FjaGUuc2l6ZSk7CisgICAgICBmb3IgKGo9
MDtqPG1vZGUtPmNhY2hlLnNpemU7aisrKQorICAgICAgICAgZnByaW50ZiAoZmlsZSwgIiVkLCVj
IiwgbW9kZS0+Y2FjaGUuYml0c1tqXSwoaisxNiklMTU9PTA/J1xuJzonICcpOworICAgICAgZnBy
aW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgICAgIGZwcmludGYgKGZpbGUsICJzdGF0aWMgY29uc3Qg
dW5zaWduZWQgY2hhciBjYWNoZV9jYXBzJWRbJWRdID0ge1xuIiwgbW9kZS0+RnMvbWRjdFNpemUs
IChtb2RlLT5tYXhMTSsxKSoyKm1vZGUtPm5iRUJhbmRzKTsKKyAgICAgIGZvciAoaj0wO2o8KG1v
ZGUtPm1heExNKzEpKjIqbW9kZS0+bmJFQmFuZHM7aisrKQorICAgICAgICAgZnByaW50ZiAoZmls
ZSwgIiVkLCVjIiwgbW9kZS0+Y2FjaGUuY2Fwc1tqXSwoaisxNiklMTU9PTA/J1xuJzonICcpOwor
ICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKworICAgICAgZnByaW50ZihmaWxlLCAiI2Vu
ZGlmXG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIlxuIik7CisKKyAgICAgIC8qIEZGVCB0d2lk
ZGxlcyAqLworICAgICAgZnByaW50ZihmaWxlLCAiI2lmbmRlZiBGRlRfVFdJRERMRVMlZF8lZFxu
IiwgbW9kZS0+RnMsIG1kY3RTaXplKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiNkZWZpbmUgRkZU
X1RXSURETEVTJWRfJWRcbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7CisgICAgICBmcHJpbnRmIChm
aWxlLCAic3RhdGljIGNvbnN0IGtpc3NfdHdpZGRsZV9jcHggZmZ0X3R3aWRkbGVzJWRfJWRbJWRd
ID0ge1xuIiwKKyAgICAgICAgICAgIG1vZGUtPkZzLCBtZGN0U2l6ZSwgbW9kZS0+bWRjdC5rZmZ0
WzBdLT5uZmZ0KTsKKyAgICAgIGZvciAoaj0wO2o8bW9kZS0+bWRjdC5rZmZ0WzBdLT5uZmZ0O2or
KykKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJ7IiBXT1JEMTYgIiwgIiBXT1JEMTYgIn0sJWMi
LCBtb2RlLT5tZGN0LmtmZnRbMF0tPnR3aWRkbGVzW2pdLnIsIG1vZGUtPm1kY3Qua2ZmdFswXS0+
dHdpZGRsZXNbal0uaSwoaiszKSUyPT0wPydcbic6JyAnKTsKKyAgICAgIGZwcmludGYgKGZpbGUs
ICJ9O1xuIik7CisKKyNpZmRlZiBPVkVSUklERV9GRlQKKyAgICAgIGR1bXBfbW9kZV9hcmNoKG1v
ZGUpOworI2VuZGlmCisgICAgICAvKiBGRlQgQml0cmV2IHRhYmxlcyAqLworICAgICAgZm9yIChr
PTA7azw9bW9kZS0+bWRjdC5tYXhzaGlmdDtrKyspCisgICAgICB7CisgICAgICAgICBmcHJpbnRm
KGZpbGUsICIjaWZuZGVmIEZGVF9CSVRSRVYlZFxuIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0
KTsKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiNkZWZpbmUgRkZUX0JJVFJFViVkXG4iLCBtb2Rl
LT5tZGN0LmtmZnRba10tPm5mZnQpOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgInN0YXRpYyBj
b25zdCBvcHVzX2ludDE2IGZmdF9iaXRyZXYlZFslZF0gPSB7XG4iLAorICAgICAgICAgICAgICAg
bW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0LCBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQpOworICAg
ICAgICAgZm9yIChqPTA7ajxtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQ7aisrKQorICAgICAgICAg
ICAgZnByaW50ZiAoZmlsZSwgIiVkLCVjIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5iaXRyZXZbal0s
KGorMTYpJTE1PT0wPydcbic6JyAnKTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xuIik7
CisKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7CisgICAgICAgICBmcHJpbnRm
KGZpbGUsICJcbiIpOworICAgICAgfQorCisgICAgICAvKiBGRlQgU3RhdGVzICovCisgICAgICBm
b3IgKGs9MDtrPD1tb2RlLT5tZGN0Lm1heHNoaWZ0O2srKykKKyAgICAgIHsKKyAgICAgICAgIGZw
cmludGYoZmlsZSwgIiNpZm5kZWYgRkZUX1NUQVRFJWRfJWRfJWRcbiIsIG1vZGUtPkZzLCBtZGN0
U2l6ZSwgayk7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIEZGVF9TVEFURSVkXyVk
XyVkXG4iLCBtb2RlLT5GcywgbWRjdFNpemUsIGspOworICAgICAgICAgZnByaW50ZiAoZmlsZSwg
InN0YXRpYyBjb25zdCBraXNzX2ZmdF9zdGF0ZSBmZnRfc3RhdGUlZF8lZF8lZCA9IHtcbiIsCisg
ICAgICAgICAgICAgICBtb2RlLT5GcywgbWRjdFNpemUsIGspOworICAgICAgICAgZnByaW50ZiAo
ZmlsZSwgIiVkLCAgICAvKiBuZmZ0ICovXG4iLCBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQpOwor
ICAgICAgICAgZnByaW50ZiAoZmlsZSwgV09SRDE2ICIsICAgIC8qIHNjYWxlICovXG4iLCBtb2Rl
LT5tZGN0LmtmZnRba10tPnNjYWxlKTsKKyNpZmRlZiBGSVhFRF9QT0lOVAorICAgICAgICAgZnBy
aW50ZiAoZmlsZSwgIiVkLCAgICAvKiBzY2FsZV9zaGlmdCAqL1xuIiwgbW9kZS0+bWRjdC5rZmZ0
W2tdLT5zY2FsZV9zaGlmdCk7CisjZW5kaWYKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICIlZCwg
ICAgLyogc2hpZnQgKi9cbiIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+c2hpZnQpOworICAgICAgICAg
ZnByaW50ZiAoZmlsZSwgInsiKTsKKyAgICAgICAgIGZvciAoaj0wO2o8MipNQVhGQUNUT1JTO2or
KykKKyAgICAgICAgICAgIGZwcmludGYgKGZpbGUsICIlZCwgIiwgbW9kZS0+bWRjdC5rZmZ0W2td
LT5mYWN0b3JzW2pdKTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJ9LCAgICAvKiBmYWN0b3Jz
ICovXG4iKTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJmZnRfYml0cmV2JWQsICAgIC8qIGJp
dHJldiAqL1xuIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgICAgIGZwcmludGYg
KGZpbGUsICJmZnRfdHdpZGRsZXMlZF8lZCwgICAgLyogYml0cmV2ICovXG4iLCBtb2RlLT5Gcywg
bWRjdFNpemUpOworCisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiI2lmZGVmIE9WRVJSSURFX0ZG
VFxuIik7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiKGFyY2hfZmZ0X3N0YXRlICopJmNmZ19h
cmNoXyVkLFxuIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgICAgIGZwcmludGYg
KGZpbGUsICIjZWxzZVxuIik7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiTlVMTCxcbiIpOwor
ICAgICAgICAgZnByaW50ZihmaWxlLCAiI2VuZGlmXG4iKTsKKworICAgICAgICAgZnByaW50ZiAo
ZmlsZSwgIn07XG4iKTsKKworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2VuZGlmXG4iKTsKKyAg
ICAgICAgIGZwcmludGYoZmlsZSwgIlxuIik7CisgICAgICB9CisKKyAgICAgIGZwcmludGYoZmls
ZSwgIiNlbmRpZlxuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworCisgICAgICAvKiBN
RENUIHR3aWRkbGVzICovCisgICAgICBtZGN0X3R3aWRkbGVzX3NpemUgPSBtb2RlLT5tZGN0Lm4t
KG1vZGUtPm1kY3Qubi8yPj5tb2RlLT5tZGN0Lm1heHNoaWZ0KTsKKyAgICAgIGZwcmludGYoZmls
ZSwgIiNpZm5kZWYgTURDVF9UV0lERExFUyVkXG4iLCBtZGN0U2l6ZSk7CisgICAgICBmcHJpbnRm
KGZpbGUsICIjZGVmaW5lIE1EQ1RfVFdJRERMRVMlZFxuIiwgbWRjdFNpemUpOworICAgICAgZnBy
aW50ZiAoZmlsZSwgInN0YXRpYyBjb25zdCBvcHVzX3ZhbDE2IG1kY3RfdHdpZGRsZXMlZFslZF0g
PSB7XG4iLAorICAgICAgICAgICAgbWRjdFNpemUsIG1kY3RfdHdpZGRsZXNfc2l6ZSk7CisgICAg
ICBmb3IgKGo9MDtqPG1kY3RfdHdpZGRsZXNfc2l6ZTtqKyspCisgICAgICAgICBmcHJpbnRmIChm
aWxlLCBXT1JEMTYgIiwlYyIsIG1vZGUtPm1kY3QudHJpZ1tqXSwoais2KSU1PT0wPydcbic6JyAn
KTsKKyAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xuIik7CisKKyAgICAgIGZwcmludGYoZmlsZSwg
IiNlbmRpZlxuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworCisKKyAgICAgIC8qIFBy
aW50IHRoZSBhY3R1YWwgbW9kZSBkYXRhICovCisgICAgICBmcHJpbnRmKGZpbGUsICJzdGF0aWMg
Y29uc3QgQ0VMVE1vZGUgbW9kZSVkXyVkXyVkID0ge1xuIiwgbW9kZS0+RnMsIG1kY3RTaXplLCBt
b2RlLT5vdmVybGFwKTsKKyAgICAgIGZwcmludGYoZmlsZSwgSU5UMzIgIiwgICAgLyogRnMgKi9c
biIsIG1vZGUtPkZzKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiVkLCAgICAvKiBvdmVybGFwICov
XG4iLCBtb2RlLT5vdmVybGFwKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiVkLCAgICAvKiBuYkVC
YW5kcyAqL1xuIiwgbW9kZS0+bmJFQmFuZHMpOworICAgICAgZnByaW50ZihmaWxlLCAiJWQsICAg
IC8qIGVmZkVCYW5kcyAqL1xuIiwgbW9kZS0+ZWZmRUJhbmRzKTsKKyAgICAgIGZwcmludGYoZmls
ZSwgInsiKTsKKyAgICAgIGZvciAoaj0wO2o8NDtqKyspCisgICAgICAgICBmcHJpbnRmKGZpbGUs
IFdPUkQxNiAiLCAiLCBtb2RlLT5wcmVlbXBoW2pdKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIn0s
ICAgIC8qIHByZWVtcGggKi9cbiIpOworICAgICAgaWYgKHN0YW5kYXJkKQorICAgICAgICAgZnBy
aW50ZihmaWxlLCAiZWJhbmQ1bXMsICAgIC8qIGVCYW5kcyAqL1xuIik7CisgICAgICBlbHNlCisg
ICAgICAgICBmcHJpbnRmKGZpbGUsICJlQmFuZHMlZF8lZCwgICAgLyogZUJhbmRzICovXG4iLCBt
b2RlLT5GcywgbWRjdFNpemUpOworCisgICAgICBmcHJpbnRmKGZpbGUsICIlZCwgICAgLyogbWF4
TE0gKi9cbiIsIG1vZGUtPm1heExNKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiVkLCAgICAvKiBu
YlNob3J0TWRjdHMgKi9cbiIsIG1vZGUtPm5iU2hvcnRNZGN0cyk7CisgICAgICBmcHJpbnRmKGZp
bGUsICIlZCwgICAgLyogc2hvcnRNZGN0U2l6ZSAqL1xuIiwgbW9kZS0+c2hvcnRNZGN0U2l6ZSk7
CisKKyAgICAgIGZwcmludGYoZmlsZSwgIiVkLCAgICAvKiBuYkFsbG9jVmVjdG9ycyAqL1xuIiwg
bW9kZS0+bmJBbGxvY1ZlY3RvcnMpOworICAgICAgaWYgKHN0YW5kYXJkKQorICAgICAgICAgZnBy
aW50ZihmaWxlLCAiYmFuZF9hbGxvY2F0aW9uLCAgICAvKiBhbGxvY1ZlY3RvcnMgKi9cbiIpOwor
ICAgICAgZWxzZQorICAgICAgICAgZnByaW50ZihmaWxlLCAiYWxsb2NWZWN0b3JzJWRfJWQsICAg
IC8qIGFsbG9jVmVjdG9ycyAqL1xuIiwgbW9kZS0+RnMsIG1kY3RTaXplKTsKKworICAgICAgZnBy
aW50ZihmaWxlLCAibG9nTiVkLCAgICAvKiBsb2dOICovXG4iLCBmcmFtZXJhdGUpOworICAgICAg
ZnByaW50ZihmaWxlLCAid2luZG93JWQsICAgIC8qIHdpbmRvdyAqL1xuIiwgbW9kZS0+b3Zlcmxh
cCk7CisgICAgICBmcHJpbnRmKGZpbGUsICJ7JWQsICVkLCB7IiwgbW9kZS0+bWRjdC5uLCBtb2Rl
LT5tZGN0Lm1heHNoaWZ0KTsKKyAgICAgIGZvciAoaz0wO2s8PW1vZGUtPm1kY3QubWF4c2hpZnQ7
aysrKQorICAgICAgICAgZnByaW50ZihmaWxlLCAiJmZmdF9zdGF0ZSVkXyVkXyVkLCAiLCBtb2Rl
LT5GcywgbWRjdFNpemUsIGspOworICAgICAgZnByaW50ZiAoZmlsZSwgIn0sIG1kY3RfdHdpZGRs
ZXMlZH0sICAgIC8qIG1kY3QgKi9cbiIsIG1kY3RTaXplKTsKKworICAgICAgZnByaW50ZihmaWxl
LCAieyVkLCBjYWNoZV9pbmRleCVkLCBjYWNoZV9iaXRzJWQsIGNhY2hlX2NhcHMlZH0sICAgIC8q
IGNhY2hlICovXG4iLAorICAgICAgICAgICAgbW9kZS0+Y2FjaGUuc2l6ZSwgbW9kZS0+RnMvbWRj
dFNpemUsIG1vZGUtPkZzL21kY3RTaXplLCBtb2RlLT5Gcy9tZGN0U2l6ZSk7CisgICAgICBmcHJp
bnRmKGZpbGUsICJ9O1xuIik7CisgICB9CisgICBmcHJpbnRmKGZpbGUsICJcbiIpOworICAgZnBy
aW50ZihmaWxlLCAiLyogTGlzdCBvZiBhbGwgdGhlIGF2YWlsYWJsZSBtb2RlcyAqL1xuIik7Cisg
ICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIFRPVEFMX01PREVTICVkXG4iLCBuYl9tb2Rlcyk7Cisg
ICBmcHJpbnRmKGZpbGUsICJzdGF0aWMgY29uc3QgQ0VMVE1vZGUgKiBjb25zdCBzdGF0aWNfbW9k
ZV9saXN0W1RPVEFMX01PREVTXSA9IHtcbiIpOworICAgZm9yIChpPTA7aTxuYl9tb2RlcztpKysp
CisgICB7CisgICAgICBDRUxUTW9kZSAqbW9kZSA9IG1vZGVzW2ldOworICAgICAgaW50IG1kY3RT
aXplOworICAgICAgbWRjdFNpemUgPSBtb2RlLT5zaG9ydE1kY3RTaXplKm1vZGUtPm5iU2hvcnRN
ZGN0czsKKyAgICAgIGZwcmludGYoZmlsZSwgIiZtb2RlJWRfJWRfJWQsXG4iLCBtb2RlLT5Gcywg
bWRjdFNpemUsIG1vZGUtPm92ZXJsYXApOworICAgfQorICAgZnByaW50ZihmaWxlLCAifTtcbiIp
OworfQorCit2b2lkIGR1bXBfaGVhZGVyKEZJTEUgKmZpbGUsIENFTFRNb2RlICoqbW9kZXMsIGlu
dCBuYl9tb2RlcykKK3sKKyAgIGludCBpOworICAgaW50IGNoYW5uZWxzID0gMDsKKyAgIGludCBm
cmFtZV9zaXplID0gMDsKKyAgIGludCBvdmVybGFwID0gMDsKKyAgIGZwcmludGYgKGZpbGUsICIv
KiBUaGlzIGhlYWRlciBmaWxlIGlzIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5Ki9cbiIpOworICAg
Zm9yIChpPTA7aTxuYl9tb2RlcztpKyspCisgICB7CisgICAgICBDRUxUTW9kZSAqbW9kZSA9IG1v
ZGVzW2ldOworICAgICAgaWYgKGZyYW1lX3NpemU9PTApCisgICAgICAgICBmcmFtZV9zaXplID0g
bW9kZS0+c2hvcnRNZGN0U2l6ZSptb2RlLT5uYlNob3J0TWRjdHM7CisgICAgICBlbHNlIGlmIChm
cmFtZV9zaXplICE9IG1vZGUtPnNob3J0TWRjdFNpemUqbW9kZS0+bmJTaG9ydE1kY3RzKQorICAg
ICAgICAgZnJhbWVfc2l6ZSA9IC0xOworICAgICAgaWYgKG92ZXJsYXA9PTApCisgICAgICAgICBv
dmVybGFwID0gbW9kZS0+b3ZlcmxhcDsKKyAgICAgIGVsc2UgaWYgKG92ZXJsYXAgIT0gbW9kZS0+
b3ZlcmxhcCkKKyAgICAgICAgIG92ZXJsYXAgPSAtMTsKKyAgIH0KKyAgIGlmIChjaGFubmVscz4w
KQorICAgeworICAgICAgZnByaW50ZiAoZmlsZSwgIiNkZWZpbmUgQ0hBTk5FTFMobW9kZSkgJWRc
biIsIGNoYW5uZWxzKTsKKyAgICAgIGlmIChjaGFubmVscz09MSkKKyAgICAgICAgIGZwcmludGYg
KGZpbGUsICIjZGVmaW5lIERJU0FCTEVfU1RFUkVPXG4iKTsKKyAgIH0KKyAgIGlmIChmcmFtZV9z
aXplPjApCisgICB7CisgICAgICBmcHJpbnRmIChmaWxlLCAiI2RlZmluZSBGUkFNRVNJWkUobW9k
ZSkgJWRcbiIsIGZyYW1lX3NpemUpOworICAgfQorICAgaWYgKG92ZXJsYXA+MCkKKyAgIHsKKyAg
ICAgIGZwcmludGYgKGZpbGUsICIjZGVmaW5lIE9WRVJMQVAobW9kZSkgJWRcbiIsIG92ZXJsYXAp
OworICAgfQorfQorCisjaWZkZWYgRklYRURfUE9JTlQKKyNkZWZpbmUgQkFTRU5BTUUgInN0YXRp
Y19tb2Rlc19maXhlZCIKKyNlbHNlCisjZGVmaW5lIEJBU0VOQU1FICJzdGF0aWNfbW9kZXNfZmxv
YXQiCisjZW5kaWYKKworaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQoreworICAgaW50
IGksIG5iOworICAgRklMRSAqZmlsZTsKKyAgIENFTFRNb2RlICoqbTsKKyAgIGlmIChhcmdjJTIg
IT0gMSB8fCBhcmdjPDMpCisgICB7CisgICAgICBmcHJpbnRmIChzdGRlcnIsICJVc2FnZTogJXMg
cmF0ZSBmcmFtZV9zaXplIFtyYXRlIGZyYW1lX3NpemVdIFtyYXRlIGZyYW1lX3NpemVdLi4uXG4i
LGFyZ3ZbMF0pOworICAgICAgcmV0dXJuIDE7CisgICB9CisgICBuYiA9IChhcmdjLTEpLzI7Cisg
ICBtID0gbWFsbG9jKG5iKnNpemVvZihDRUxUTW9kZSopKTsKKyAgIGZvciAoaT0wO2k8bmI7aSsr
KQorICAgeworICAgICAgaW50IEZzLCBmcmFtZTsKKyAgICAgIEZzICAgICAgPSBhdG9pKGFyZ3Zb
MippKzFdKTsKKyAgICAgIGZyYW1lICAgPSBhdG9pKGFyZ3ZbMippKzJdKTsKKyAgICAgIG1baV0g
PSBvcHVzX2N1c3RvbV9tb2RlX2NyZWF0ZShGcywgZnJhbWUsIE5VTEwpOworICAgICAgaWYgKG1b
aV09PU5VTEwpCisgICAgICB7CisgICAgICAgICBmcHJpbnRmKHN0ZGVyciwiRXJyb3IgY3JlYXRp
bmcgbW9kZSB3aXRoIEZzPSVzLCBmcmFtZV9zaXplPSVzXG4iLAorICAgICAgICAgICAgICAgYXJn
dlsyKmkrMV0sYXJndlsyKmkrMl0pOworICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKKyAg
ICAgIH0KKyAgIH0KKyAgIGZpbGUgPSBmb3BlbihCQVNFTkFNRSAiLmgiLCAidyIpOworI2lmZGVm
IE9WRVJSSURFX0ZGVAorICAgZHVtcF9tb2Rlc19hcmNoX2luaXQobSwgbmIpOworI2VuZGlmCisg
ICBkdW1wX21vZGVzKGZpbGUsIG0sIG5iKTsKKyAgIGZjbG9zZShmaWxlKTsKKyNpZmRlZiBPVkVS
UklERV9GRlQKKyAgIGR1bXBfbW9kZXNfYXJjaF9maW5hbGl6ZSgpOworI2VuZGlmCisgICBmb3Ig
KGk9MDtpPG5iO2krKykKKyAgICAgIG9wdXNfY3VzdG9tX21vZGVfZGVzdHJveShtW2ldKTsKKyAg
IGZyZWUobSk7CisgICByZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9kdW1wX21vZGVzL2R1
bXBfbW9kZXNfYXJjaC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2R1bXBfbW9kZXMvZHVtcF9tb2Rlc19hcmNoLmgKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uY2MwZDRiZTFlYzczMDhkYWNkODUzZjY1MjE5NDY1ODIwZWM3MWMxNAotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9kdW1wX21vZGVzL2R1bXBfbW9kZXNfYXJjaC5oCkBAIC0wLDAgKzEsNDUg
QEAKKy8qIENvcHlyaWdodCAoYykgMjAxNSBYaXBoLk9yZyBGb3VuZGF0aW9uCisgICBXcml0dGVu
IGJ5IFZpc3dhbmF0aCBQdXR0YWd1bnRhICovCisvKgorICAgUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJ
UycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVAorICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAg
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lmbmRlZiBEVU1QX01P
REVfQVJDSF9ICisjZGVmaW5lIERVTVBfTU9ERV9BUkNIX0gKKwordm9pZCBkdW1wX21vZGVzX2Fy
Y2hfaW5pdCgpOwordm9pZCBkdW1wX21vZGVfYXJjaChDRUxUTW9kZSAqbW9kZSk7Cit2b2lkIGR1
bXBfbW9kZXNfYXJjaF9maW5hbGl6ZSgpOworCisjaWYgIWRlZmluZWQoRklYRURfUE9JTlQpCisj
ZGVmaW5lIEFSTV9ORTEwX0FSQ0hfRklMRV9OQU1FICJzdGF0aWNfbW9kZXNfZmxvYXRfYXJtX25l
MTAuaCIKKyNlbHNlCisjZGVmaW5lIEFSTV9ORTEwX0FSQ0hfRklMRV9OQU1FICJzdGF0aWNfbW9k
ZXNfZml4ZWRfYXJtX25lMTAuaCIKKyNlbmRpZgorCisjaWYgZGVmaW5lZChIQVZFX0FSTV9ORTEw
KQorI2RlZmluZSBPVkVSUklERV9GRlQgKDEpCisjZW5kaWYKKworI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVzX2FybV9uZTEwLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rlcy9k
dW1wX21vZGVzX2FybV9uZTEwLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODI4ZTdiOWZmZjMxZjgxYmQ3NjE2OTVh
MjQ3OTI2ZGYwNTZhNDFhZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9kdW1wX21vZGVzL2R1bXBf
bW9kZXNfYXJtX25lMTAuYwpAQCAtMCwwICsxLDE1MiBAQAorLyogQ29weXJpZ2h0IChjKSAyMDE1
IFhpcGguT3JnIEZvdW5kYXRpb24KKyAgIFdyaXR0ZW4gYnkgVmlzd2FuYXRoIFB1dHRhZ3VudGEg
Ki8KKy8qCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKworICAgLSBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAg
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIE9XTkVSCisgICBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAgIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAg
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUgorICAgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgorICAgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcKKyAgIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UworICAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisqLworCisjaWYgZGVmaW5lZChIQVZFX0NPTkZJR19IKQorIyBpbmNsdWRlICJj
b25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIu
aD4KKyNpbmNsdWRlICJtb2Rlcy5oIgorI2luY2x1ZGUgImR1bXBfbW9kZXNfYXJjaC5oIgorI2lu
Y2x1ZGUgPE5FMTBfZHNwLmg+CisKKyNpZiAhZGVmaW5lZChGSVhFRF9QT0lOVCkKKyMgZGVmaW5l
IE5FMTBfRkZUX0NGR19UWVBFX1QgbmUxMF9mZnRfY2ZnX2Zsb2F0MzJfdAorIyBkZWZpbmUgTkUx
MF9GRlRfQ1BYX1RZUEVfVF9TVFIgIm5lMTBfZmZ0X2NweF9mbG9hdDMyX3QiCisjIGRlZmluZSBO
RTEwX0ZGVF9TVEFURV9UWVBFX1RfU1RSICJuZTEwX2ZmdF9zdGF0ZV9mbG9hdDMyX3QiCisjZWxz
ZQorIyBkZWZpbmUgTkUxMF9GRlRfQ0ZHX1RZUEVfVCBuZTEwX2ZmdF9jZmdfaW50MzJfdAorIyBk
ZWZpbmUgTkUxMF9GRlRfQ1BYX1RZUEVfVF9TVFIgIm5lMTBfZmZ0X2NweF9pbnQzMl90IgorIyBk
ZWZpbmUgTkUxMF9GRlRfU1RBVEVfVFlQRV9UX1NUUiAibmUxMF9mZnRfc3RhdGVfaW50MzJfdCIK
KyNlbmRpZgorCitzdGF0aWMgRklMRSAqZmlsZTsKKwordm9pZCBkdW1wX21vZGVzX2FyY2hfaW5p
dChDRUxUTW9kZSAqKm1vZGVzLCBpbnQgbmJfbW9kZXMpCit7CisgICBpbnQgaTsKKworICAgZmls
ZSA9IGZvcGVuKEFSTV9ORTEwX0FSQ0hfRklMRV9OQU1FLCAidyIpOworICAgZnByaW50ZihmaWxl
LCAiLyogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZmlsZSB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0
ZWQgYnlcbiIpOworICAgZnByaW50ZihmaWxlLCAiICogZHVtcF9tb2RlX2FybV9uZTEwLmMgd2l0
aCBhcmd1bWVudHM6Iik7CisgICBmb3IgKGk9MDtpPG5iX21vZGVzO2krKykKKyAgIHsKKyAgICAg
IENFTFRNb2RlICptb2RlID0gbW9kZXNbaV07CisgICAgICBmcHJpbnRmKGZpbGUsICIgJWQgJWQi
LG1vZGUtPkZzLG1vZGUtPnNob3J0TWRjdFNpemUqbW9kZS0+bmJTaG9ydE1kY3RzKTsKKyAgIH0K
KyAgIGZwcmludGYoZmlsZSwgIlxuICogSXQgY29udGFpbnMgc3RhdGljIGRlZmluaXRpb25zIGZv
ciBzb21lIHByZS1kZWZpbmVkIG1vZGVzLiAqL1xuIik7CisgICBmcHJpbnRmKGZpbGUsICIjaW5j
bHVkZSA8TkUxMF90eXBlcy5oPlxuXG4iKTsKK30KKwordm9pZCBkdW1wX21vZGVzX2FyY2hfZmlu
YWxpemUoKQoreworICAgZmNsb3NlKGZpbGUpOworfQorCit2b2lkIGR1bXBfbW9kZV9hcmNoKENF
TFRNb2RlICptb2RlKQoreworICAgaW50IGssIGo7CisgICBpbnQgbWRjdFNpemU7CisKKyAgIG1k
Y3RTaXplID0gbW9kZS0+c2hvcnRNZGN0U2l6ZSptb2RlLT5uYlNob3J0TWRjdHM7CisKKyAgIGZw
cmludGYoZmlsZSwgIiNpZm5kZWYgTkUxMF9GRlRfUEFSQU1TJWRfJWRcbiIsIG1vZGUtPkZzLCBt
ZGN0U2l6ZSk7CisgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIE5FMTBfRkZUX1BBUkFNUyVkXyVk
XG4iLCBtb2RlLT5GcywgbWRjdFNpemUpOworICAgLyogY2ZnLT5mYWN0b3JzICovCisgICBmb3Io
az0wO2s8PW1vZGUtPm1kY3QubWF4c2hpZnQ7aysrKSB7CisgICAgICBORTEwX0ZGVF9DRkdfVFlQ
RV9UIGNmZzsKKyAgICAgIGNmZyA9IChORTEwX0ZGVF9DRkdfVFlQRV9UKW1vZGUtPm1kY3Qua2Zm
dFtrXS0+YXJjaF9mZnQtPnByaXY7CisgICAgICBpZiAoIWNmZykKKyAgICAgICAgIGNvbnRpbnVl
OworICAgICAgZnByaW50ZihmaWxlLCAic3RhdGljIGNvbnN0IG5lMTBfaW50MzJfdCBuZTEwX2Zh
Y3RvcnNfJWRbJWRdID0ge1xuIiwKKyAgICAgICAgICAgICAgbW9kZS0+bWRjdC5rZmZ0W2tdLT5u
ZmZ0LCAoTkUxMF9NQVhGQUNUT1JTICogMikpOworICAgICAgZm9yKGo9MDtqPChORTEwX01BWEZB
Q1RPUlMgKiAyKTtqKyspIHsKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiVkLCVjIiwgY2ZnLT5m
YWN0b3JzW2pdLChqKzE2KSUxNT09MD8nXG4nOicgJyk7CisgICAgICB9CisgICAgICBmcHJpbnRm
IChmaWxlLCAifTtcbiIpOworICAgfQorCisgICAvKiBjZmctPnR3aWRkbGVzICovCisgICBmb3Io
az0wO2s8PW1vZGUtPm1kY3QubWF4c2hpZnQ7aysrKSB7CisgICAgICBORTEwX0ZGVF9DRkdfVFlQ
RV9UIGNmZzsKKyAgICAgIGNmZyA9IChORTEwX0ZGVF9DRkdfVFlQRV9UKW1vZGUtPm1kY3Qua2Zm
dFtrXS0+YXJjaF9mZnQtPnByaXY7CisgICAgICBpZiAoIWNmZykKKyAgICAgICAgIGNvbnRpbnVl
OworICAgICAgZnByaW50ZihmaWxlLCAic3RhdGljIGNvbnN0ICVzIG5lMTBfdHdpZGRsZXNfJWRb
JWRdID0ge1xuIiwKKyAgICAgICAgICAgICAgTkUxMF9GRlRfQ1BYX1RZUEVfVF9TVFIsIG1vZGUt
Pm1kY3Qua2ZmdFtrXS0+bmZmdCwKKyAgICAgICAgICAgICAgbW9kZS0+bWRjdC5rZmZ0W2tdLT5u
ZmZ0KTsKKyAgICAgIGZvcihqPTA7ajxtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQ7aisrKSB7Cisj
aWYgIWRlZmluZWQoRklYRURfUE9JTlQpCisgICAgICAgICBmcHJpbnRmKGZpbGUsICJ7JSMwLjhn
ZiwlIzAuOGdmfSwlYyIsCisgICAgICAgICAgICAgICAgIGNmZy0+dHdpZGRsZXNbal0uciwgY2Zn
LT50d2lkZGxlc1tqXS5pLChqKzQpJTM9PTA/J1xuJzonICcpOworI2Vsc2UKKyAgICAgICAgIGZw
cmludGYoZmlsZSwgInslZCwlZH0sJWMiLAorICAgICAgICAgICAgICAgICBjZmctPnR3aWRkbGVz
W2pdLnIsIGNmZy0+dHdpZGRsZXNbal0uaSwoais0KSUzPT0wPydcbic6JyAnKTsKKyNlbmRpZgor
ICAgICAgfQorICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgIH0KKworICAgZm9yKGs9
MDtrPD1tb2RlLT5tZGN0Lm1heHNoaWZ0O2srKykgeworICAgICAgTkUxMF9GRlRfQ0ZHX1RZUEVf
VCBjZmc7CisgICAgICBjZmcgPSAoTkUxMF9GRlRfQ0ZHX1RZUEVfVCltb2RlLT5tZGN0LmtmZnRb
a10tPmFyY2hfZmZ0LT5wcml2OworICAgICAgaWYgKCFjZmcpIHsKKyAgICAgICAgIGZwcmludGYo
ZmlsZSwgIi8qIE5lMTAgZG9lcyBub3Qgc3VwcG9ydCBzY2FsZWQgRkZUIGZvciBsZW5ndGggPSAl
ZCAqL1xuIiwKKyAgICAgICAgICAgICAgICAgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAg
ICAgICAgIGZwcmludGYoZmlsZSwgInN0YXRpYyBjb25zdCBhcmNoX2ZmdF9zdGF0ZSBjZmdfYXJj
aF8lZCA9IHtcbiIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7CisgICAgICAgICBmcHJpbnRm
KGZpbGUsICIwLFxuIik7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICJOVUxMXG4iKTsKKyAgICAg
ICAgIGZwcmludGYoZmlsZSwgIn07XG4iKTsKKyAgICAgICAgIGNvbnRpbnVlOworICAgICAgfQor
ICAgICAgZnByaW50ZihmaWxlLCAic3RhdGljIGNvbnN0ICVzICVzXyVkID0ge1xuIiwgTkUxMF9G
RlRfU1RBVEVfVFlQRV9UX1NUUiwKKyAgICAgICAgICAgICAgTkUxMF9GRlRfU1RBVEVfVFlQRV9U
X1NUUiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiVk
LFxuIiwgY2ZnLT5uZmZ0KTsKKyAgICAgIGZwcmludGYoZmlsZSwgIihuZTEwX2ludDMyX3QgKilu
ZTEwX2ZhY3RvcnNfJWQsXG4iLCBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQpOworICAgICAgZnBy
aW50ZihmaWxlLCAiKCVzICopbmUxMF90d2lkZGxlc18lZCxcbiIsCisgICAgICAgICAgICAgIE5F
MTBfRkZUX0NQWF9UWVBFX1RfU1RSLCBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQpOworICAgICAg
ZnByaW50ZihmaWxlLCAiTlVMTCxcbiIpOyAgLyogYnVmZmVyICovCisgICAgICBmcHJpbnRmKGZp
bGUsICIoJXMgKikmbmUxMF90d2lkZGxlc18lZFslZF0sXG4iLAorICAgICAgICAgICAgICBORTEw
X0ZGVF9DUFhfVFlQRV9UX1NUUiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0LCBjZmctPm5mZnQp
OworI2lmICFkZWZpbmVkKEZJWEVEX1BPSU5UKQorICAgICAgZnByaW50ZihmaWxlLCAiLyogaXNf
Zm9yd2FyZF9zY2FsZWQgPSB0cnVlICovXG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIihuZTEw
X2ludDMyX3QpIDEsXG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIi8qIGlzX2JhY2t3YXJkX3Nj
YWxlZCA9IGZhbHNlICovXG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIihuZTEwX2ludDMyX3Qp
IDAsXG4iKTsKKyNlbmRpZgorICAgICAgZnByaW50ZihmaWxlLCAifTtcbiIpOworCisgICAgICBm
cHJpbnRmKGZpbGUsICJzdGF0aWMgY29uc3QgYXJjaF9mZnRfc3RhdGUgY2ZnX2FyY2hfJWQgPSB7
XG4iLAorICAgICAgICAgICAgICBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQpOworICAgICAgZnBy
aW50ZihmaWxlLCAiMSxcbiIpOworICAgICAgZnByaW50ZihmaWxlLCAiKHZvaWQgKikmJXNfJWQs
XG4iLAorICAgICAgICAgICAgICBORTEwX0ZGVF9TVEFURV9UWVBFX1RfU1RSLCBtb2RlLT5tZGN0
LmtmZnRba10tPm5mZnQpOworICAgICAgZnByaW50ZihmaWxlLCAifTtcblxuIik7CisgICB9Cisg
ICBmcHJpbnRmKGZpbGUsICIjZW5kaWYgIC8qIGVuZCBORTEwX0ZGVF9QQVJBTVMlZF8lZCAqL1xu
IiwgbW9kZS0+RnMsIG1kY3RTaXplKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9jNXguaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9maXhlZF9jNXguaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lYTk1YTk5OGMzYzNmODc5ZTEwY2NkNzJlZmYy
MDBkMWNlY2U5NzIwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2ZpeGVkX2M1eC5oCkBAIC0wLDAg
KzEsNzkgQEAKKy8qIENvcHlyaWdodCAoQykgMjAwMyBKZWFuLU1hcmMgVmFsaW4gKi8KKy8qKgor
ICAgQGZpbGUgZml4ZWRfYzV4LmgKKyAgIEBicmllZiBGaXhlZC1wb2ludCBvcGVyYXRpb25zIGZv
ciB0aGUgVEkgQzV4IERTUCBmYW1pbHkKKyovCisvKgorICAgUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJ
UycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVAorICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAg
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lmbmRlZiBGSVhFRF9D
NVhfSAorI2RlZmluZSBGSVhFRF9DNVhfSAorCisjaW5jbHVkZSAiZHNwbGliLmgiCisKKyN1bmRl
ZiBJTVVMMzIKK3N0YXRpYyBPUFVTX0lOTElORSBsb25nIElNVUwzMihsb25nIGksIGxvbmcgaikK
K3sKKyAgIGxvbmcgYWMwLCBhYzE7CisgICBhYzAgPSBfbG1weShpPj4xNixqKTsKKyAgIGFjMSA9
IGFjMCArIF9sbXB5KGksaj4+MTYpOworICAgcmV0dXJuIF9sbXB5dShpLGopICsgKGFjMTw8MTYp
OworfQorCisjdW5kZWYgTUFYMTYKKyNkZWZpbmUgTUFYMTYoYSxiKSBfbWF4KGEsYikKKworI3Vu
ZGVmIE1JTjE2CisjZGVmaW5lIE1JTjE2KGEsYikgX21pbihhLGIpCisKKyN1bmRlZiBNQVgzMgor
I2RlZmluZSBNQVgzMihhLGIpIF9sbWF4KGEsYikKKworI3VuZGVmIE1JTjMyCisjZGVmaW5lIE1J
TjMyKGEsYikgX2xtaW4oYSxiKQorCisjdW5kZWYgVlNIUjMyCisjZGVmaW5lIFZTSFIzMihhLCBz
aGlmdCkgX2xzaGwoYSwtKHNoaWZ0KSkKKworI3VuZGVmIE1VTFQxNl8xNl9RMTUKKyNkZWZpbmUg
TVVMVDE2XzE2X1ExNShhLGIpIChfc21weShhLGIpKQorCisjdW5kZWYgTVVMVDE2XzE2U1UKKyNk
ZWZpbmUgTVVMVDE2XzE2U1UoYSxiKSBfbG1weXN1KGEsYikKKworI3VuZGVmIE1VTFRfMTZfMTYK
KyNkZWZpbmUgTVVMVF8xNl8xNihhLGIpIF9sbXB5KGEsYikKKworLyogRklYTUU6IFRoaXMgaXMg
dGVjaG5pY2FsbHkgaW5jb3JyZWN0IGFuZCBpcyBib3VuZCB0byBjYXVzZSBwcm9ibGVtcy4gSXMg
dGhlcmUgYW55IGNsZWFuZXIgc29sdXRpb24/ICovCisjdW5kZWYgTVVMVDE2XzMyX1ExNQorI2Rl
ZmluZSBNVUxUMTZfMzJfUTE1KGEsYikgQUREMzIoU0hMKE1VTFQxNl8xNigoYSksU0hSKChiKSwx
NikpLDEpLCBTSFIoTVVMVDE2XzE2U1UoKGEpLChiKSksMTUpKQorCisjZGVmaW5lIGNlbHRfaWxv
ZzIoeCkgKDMwIC0gX2xub3JtKHgpKQorI2RlZmluZSBPVkVSUklERV9DRUxUX0lMT0cyCisKKyNk
ZWZpbmUgY2VsdF9tYXhhYnMxNih4LCBsZW4pIE1BWDMyKEVYVEVORDMyKG1heHZhbCgoREFUQSAq
KXgsIGxlbikpLC1FWFRFTkQzMihtaW52YWwoKERBVEEgKil4LCBsZW4pKSkKKyNkZWZpbmUgT1ZF
UlJJREVfQ0VMVF9NQVhBQlMxNgorCisjZW5kaWYgLyogRklYRURfQzVYX0ggKi8KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9maXhlZF9jNnguaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9jNnguaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iYjZhZDky
NzgwM2Y5ZmFiYzE1NWUxMGJkN2RhODQ1ZmNlMmU4Y2U4Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L2ZpeGVkX2M2eC5oCkBAIC0wLDAgKzEsNzAgQEAKKy8qIENvcHlyaWdodCAoQykgMjAwOCBDU0lS
TyAqLworLyoqCisgICBAZmlsZSBmaXhlZF9jNnguaAorICAgQGJyaWVmIEZpeGVkLXBvaW50IG9w
ZXJhdGlvbnMgZm9yIHRoZSBUSSBDNnggRFNQIGZhbWlseQorKi8KKy8qCisgICBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAt
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JT
CisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSCisg
ICBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKKyAgIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAgIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICAgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRgorICAgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcKKyAgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICAgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaWZu
ZGVmIEZJWEVEX0M2WF9ICisjZGVmaW5lIEZJWEVEX0M2WF9ICisKKyN1bmRlZiBNVUxUMTZfMTZT
VQorI2RlZmluZSBNVUxUMTZfMTZTVShhLGIpIF9tcHlzdShhLGIpCisKKyN1bmRlZiBNVUxUXzE2
XzE2CisjZGVmaW5lIE1VTFRfMTZfMTYoYSxiKSBfbXB5KGEsYikKKworI2RlZmluZSBjZWx0X2ls
b2cyKHgpICgzMCAtIF9ub3JtKHgpKQorI2RlZmluZSBPVkVSUklERV9DRUxUX0lMT0cyCisKKyN1
bmRlZiBNVUxUMTZfMzJfUTE1CisjZGVmaW5lIE1VTFQxNl8zMl9RMTUoYSxiKSAoX21weWxpbGwo
YSwgYikgPj4gMTUpCisKKyNpZiAwCisjaW5jbHVkZSAiZHNwbGliLmgiCisKKyN1bmRlZiBNQVgx
NgorI2RlZmluZSBNQVgxNihhLGIpIF9tYXgoYSxiKQorCisjdW5kZWYgTUlOMTYKKyNkZWZpbmUg
TUlOMTYoYSxiKSBfbWluKGEsYikKKworI3VuZGVmIE1BWDMyCisjZGVmaW5lIE1BWDMyKGEsYikg
X2xtYXgoYSxiKQorCisjdW5kZWYgTUlOMzIKKyNkZWZpbmUgTUlOMzIoYSxiKSBfbG1pbihhLGIp
CisKKyN1bmRlZiBWU0hSMzIKKyNkZWZpbmUgVlNIUjMyKGEsIHNoaWZ0KSBfbHNobChhLC0oc2hp
ZnQpKQorCisjdW5kZWYgTVVMVDE2XzE2X1ExNQorI2RlZmluZSBNVUxUMTZfMTZfUTE1KGEsYikg
KF9zbXB5KGEsYikpCisKKyNkZWZpbmUgY2VsdF9tYXhhYnMxNih4LCBsZW4pIE1BWDMyKEVYVEVO
RDMyKG1heHZhbCgoREFUQSAqKXgsIGxlbikpLC1FWFRFTkQzMihtaW52YWwoKERBVEEgKil4LCBs
ZW4pKSkKKyNkZWZpbmUgT1ZFUlJJREVfQ0VMVF9NQVhBQlMxNgorCisjZW5kaWYgLyogRklYRURf
QzZYX0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9kZWJ1Zy5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2ZpeGVkX2RlYnVn
LmgKaW5kZXggZDI4MjI3ZjVkYzcyODc5Y2VkOTQ0ZDhiNWRiODg4MGJhMzQ2NWYwMy4uZjQzNTI5
NTIzNGNmZmI1M2NiMDU0ZmNkZDBjYTA4ODVmNzg2ZDBmYSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2ZpeGVk
X2RlYnVnLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L2ZpeGVkX2RlYnVnLmgKQEAgLTU5LDYgKzU5LDE0IEBAIGV4dGVy
biBvcHVzX2ludDY0IGNlbHRfbWlwczsKICNkZWZpbmUgU0hSKGEsYikgU0hSMzIoYSxiKQogI2Rl
ZmluZSBQU0hSKGEsYikgUFNIUjMyKGEsYikKIAorLyoqIEFkZCB0d28gMzItYml0IHZhbHVlcywg
aWdub3JlIGFueSBvdmVyZmxvd3MgKi8KKyNkZWZpbmUgQUREMzJfb3ZmbHcoYSxiKSAoY2VsdF9t
aXBzKz0yLChvcHVzX3ZhbDMyKSgob3B1c191aW50MzIpKGEpKyhvcHVzX3VpbnQzMikoYikpKQor
LyoqIFN1YnRyYWN0IHR3byAzMi1iaXQgdmFsdWVzLCBpZ25vcmUgYW55IG92ZXJmbG93cyAqLwor
I2RlZmluZSBTVUIzMl9vdmZsdyhhLGIpIChjZWx0X21pcHMrPTIsKG9wdXNfdmFsMzIpKChvcHVz
X3VpbnQzMikoYSktKG9wdXNfdWludDMyKShiKSkpCisvKiBBdm9pZCBNU1ZDIHdhcm5pbmcgQzQx
NDY6IHVuYXJ5IG1pbnVzIG9wZXJhdG9yIGFwcGxpZWQgdG8gdW5zaWduZWQgdHlwZSAqLworLyoq
IE5lZ2F0ZSAzMi1iaXQgdmFsdWUsIGlnbm9yZSBhbnkgb3ZlcmZsb3dzICovCisjZGVmaW5lIE5F
RzMyX292Zmx3KGEpIChjZWx0X21pcHMrPTIsKG9wdXNfdmFsMzIpKDAtKG9wdXNfdWludDMyKShh
KSkpCisKIHN0YXRpYyBPUFVTX0lOTElORSBzaG9ydCBORUcxNihpbnQgeCkKIHsKICAgIGludCBy
ZXM7CkBAIC0yMjcsMTIgKzIzNSwxMSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgaW50IFNITDMyXyhv
cHVzX2ludDY0IGEsIGludCBzaGlmdCwgY2hhciAqZmlsZSwgaW50IGxpbmUpCiAjZGVmaW5lIFZT
SFIzMihhLCBzaGlmdCkgKCgoc2hpZnQpPjApID8gU0hSMzIoYSwgc2hpZnQpIDogU0hMMzIoYSwg
LShzaGlmdCkpKQogCiAjZGVmaW5lIFJPVU5EMTYoeCxhKSAoY2VsdF9taXBzLS0sRVhUUkFDVDE2
KFBTSFIzMigoeCksKGEpKSkpCisjZGVmaW5lIFNST1VORDE2KHgsYSkgKGNlbHRfbWlwcy0tLEVY
VFJBQ1QxNihTQVRVUkFURShQU0hSMzIoeCxhKSwgMzI3NjcpKSk7CisKICNkZWZpbmUgSEFMRjE2
KHgpICAoU0hSMTYoeCwxKSkKICNkZWZpbmUgSEFMRjMyKHgpICAoU0hSMzIoeCwxKSkKIAotLy8j
ZGVmaW5lIFNIUihhLHNoaWZ0KSAoKGEpID4+IChzaGlmdCkpCi0vLyNkZWZpbmUgU0hMKGEsc2hp
ZnQpICgoYSkgPDwgKHNoaWZ0KSkKLQogI2RlZmluZSBBREQxNihhLCBiKSBBREQxNl8oYSwgYiwg
X19GSUxFX18sIF9fTElORV9fKQogc3RhdGljIE9QVVNfSU5MSU5FIHNob3J0IEFERDE2XyhpbnQg
YSwgaW50IGIsIGNoYXIgKmZpbGUsIGludCBsaW5lKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2ZpeGVk
X2dlbmVyaWMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY2VsdC9maXhlZF9nZW5lcmljLmgKaW5kZXggMWNmZDZkNjk4OTA2YmQ0ZmRl
ODdhMGJhMGU4NzQ2OWJkYzNmZmRlNS4uNWY0YWJkYTc2ZWQ4YzA5NmZkMzBmOTU3ZGYyMDBlZjcw
OTE1ZTdlMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2ZpeGVkX2dlbmVyaWMuaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRf
Z2VuZXJpYy5oCkBAIC0xMDQsNiArMTA0LDkgQEAKIAogLyoqIFNoaWZ0IGJ5IGEgYW5kIHJvdW5k
LXRvLW5lYXJlYXN0IDMyLWJpdCB2YWx1ZS4gUmVzdWx0IGlzIGEgMTYtYml0IHZhbHVlICovCiAj
ZGVmaW5lIFJPVU5EMTYoeCxhKSAoRVhUUkFDVDE2KFBTSFIzMigoeCksKGEpKSkpCisvKiogU2hp
ZnQgYnkgYSBhbmQgcm91bmQtdG8tbmVhcmVhc3QgMzItYml0IHZhbHVlLiBSZXN1bHQgaXMgYSBz
YXR1cmF0ZWQgMTYtYml0IHZhbHVlICovCisjZGVmaW5lIFNST1VORDE2KHgsYSkgRVhUUkFDVDE2
KFNBVFVSQVRFKFBTSFIzMih4LGEpLCAzMjc2NykpOworCiAvKiogRGl2aWRlIGJ5IHR3byAqLwog
I2RlZmluZSBIQUxGMTYoeCkgIChTSFIxNih4LDEpKQogI2RlZmluZSBIQUxGMzIoeCkgIChTSFIz
Mih4LDEpKQpAQCAtMTE3LDYgKzEyMCwxNCBAQAogLyoqIFN1YnRyYWN0IHR3byAzMi1iaXQgdmFs
dWVzICovCiAjZGVmaW5lIFNVQjMyKGEsYikgKChvcHVzX3ZhbDMyKShhKS0ob3B1c192YWwzMiko
YikpCiAKKy8qKiBBZGQgdHdvIDMyLWJpdCB2YWx1ZXMsIGlnbm9yZSBhbnkgb3ZlcmZsb3dzICov
CisjZGVmaW5lIEFERDMyX292Zmx3KGEsYikgKChvcHVzX3ZhbDMyKSgob3B1c191aW50MzIpKGEp
KyhvcHVzX3VpbnQzMikoYikpKQorLyoqIFN1YnRyYWN0IHR3byAzMi1iaXQgdmFsdWVzLCBpZ25v
cmUgYW55IG92ZXJmbG93cyAqLworI2RlZmluZSBTVUIzMl9vdmZsdyhhLGIpICgob3B1c192YWwz
MikoKG9wdXNfdWludDMyKShhKS0ob3B1c191aW50MzIpKGIpKSkKKy8qIEF2b2lkIE1TVkMgd2Fy
bmluZyBDNDE0NjogdW5hcnkgbWludXMgb3BlcmF0b3IgYXBwbGllZCB0byB1bnNpZ25lZCB0eXBl
ICovCisvKiogTmVnYXRlIDMyLWJpdCB2YWx1ZSwgaWdub3JlIGFueSBvdmVyZmxvd3MgKi8KKyNk
ZWZpbmUgTkVHMzJfb3ZmbHcoYSkgKChvcHVzX3ZhbDMyKSgwLShvcHVzX3VpbnQzMikoYSkpKQor
CiAvKiogMTZ4MTYgbXVsdGlwbGljYXRpb24gd2hlcmUgdGhlIHJlc3VsdCBmaXRzIGluIDE2IGJp
dHMgKi8KICNkZWZpbmUgTVVMVDE2XzE2XzE2KGEsYikgICAgICgoKChvcHVzX3ZhbDE2KShhKSkq
KChvcHVzX3ZhbDE2KShiKSkpKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZmxvYXRfY2FzdC5oIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L2Zsb2F0X2Nhc3QuaAppbmRleCBlZDVhMzliNTQzM2I1OGYyZmEwODQzMmQyZWI2MTg5ZDZjYmU4
ZjZjLi45OGI0MGFiY2Y2NWY1ZGY3YTUxZDNkOWQ2N2Q2MTg2OWE1NTM1ZmU5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvZmxvYXRfY2FzdC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9mbG9hdF9jYXN0LmgKQEAgLTYxLDcgKzYxLDEz
IEBACiAqKiAgICAgIHRoZSBjb25maWcuaCBmaWxlLgogKi8KIAotI2lmIChIQVZFX0xSSU5URikK
Ky8qIFdpdGggR0NDLCB3aGVuIFNTRSBpcyBhdmFpbGFibGUsIHRoZSBmYXN0ZXN0IGNvbnZlcnNp
b24gaXMgY3Z0c3Myc2kuICovCisjaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgZGVmaW5lZChfX1NT
RV9fKQorCisjaW5jbHVkZSA8eG1taW50cmluLmg+CitzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19p
bnQzMiBmbG9hdDJpbnQoZmxvYXQgeCkge3JldHVybiBfbW1fY3Z0X3NzMnNpKF9tbV9zZXRfc3Mo
eCkpO30KKworI2VsaWYgZGVmaW5lZChIQVZFX0xSSU5URikKIAogLyogICAgICBUaGVzZSBkZWZp
bmVzIGVuYWJsZSBmdW5jdGlvbmFsaXR5IGludHJvZHVjZWQgd2l0aCB0aGUgMTk5OSBJU08gQwog
KiogICAgICBzdGFuZGFyZC4gVGhleSBtdXN0IGJlIGRlZmluZWQgYmVmb3JlIHRoZSBpbmNsdXNp
b24gb2YgbWF0aC5oIHRvCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQva2lzc19mZnQuYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9raXNzX2Zm
dC5jCmluZGV4IDFmOGZkMDUzMjFhNDAyMDRhM2E2NmFkNTU4MThlNDY0YWFjOWE5OWMuLjgzNzc1
MTY1ZDg2NmZiMDFkNThiY2E3MWZjZjU2M2NmOWRiOGM4ZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9raXNz
X2ZmdC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY2VsdC9raXNzX2ZmdC5jCkBAIC04Miw4ICs4Miw4IEBAIHN0YXRpYyB2b2lk
IGtmX2JmbHkyKAogICAgICAgICAgQ19TVUIoIEZvdXQyWzBdICwgIEZvdXRbMF0gLCB0ICk7CiAg
ICAgICAgICBDX0FERFRPKCBGb3V0WzBdICwgIHQgKTsKIAotICAgICAgICAgdC5yID0gU19NVUwo
Rm91dDJbMV0ucitGb3V0MlsxXS5pLCB0dyk7Ci0gICAgICAgICB0LmkgPSBTX01VTChGb3V0Mlsx
XS5pLUZvdXQyWzFdLnIsIHR3KTsKKyAgICAgICAgIHQuciA9IFNfTVVMKEFERDMyX292Zmx3KEZv
dXQyWzFdLnIsIEZvdXQyWzFdLmkpLCB0dyk7CisgICAgICAgICB0LmkgPSBTX01VTChTVUIzMl9v
dmZsdyhGb3V0MlsxXS5pLCBGb3V0MlsxXS5yKSwgdHcpOwogICAgICAgICAgQ19TVUIoIEZvdXQy
WzFdICwgIEZvdXRbMV0gLCB0ICk7CiAgICAgICAgICBDX0FERFRPKCBGb3V0WzFdICwgIHQgKTsK
IApAQCAtOTIsOCArOTIsOCBAQCBzdGF0aWMgdm9pZCBrZl9iZmx5MigKICAgICAgICAgIENfU1VC
KCBGb3V0MlsyXSAsICBGb3V0WzJdICwgdCApOwogICAgICAgICAgQ19BRERUTyggRm91dFsyXSAs
ICB0ICk7CiAKLSAgICAgICAgIHQuciA9IFNfTVVMKEZvdXQyWzNdLmktRm91dDJbM10uciwgdHcp
OwotICAgICAgICAgdC5pID0gU19NVUwoLUZvdXQyWzNdLmktRm91dDJbM10uciwgdHcpOworICAg
ICAgICAgdC5yID0gU19NVUwoU1VCMzJfb3ZmbHcoRm91dDJbM10uaSwgRm91dDJbM10uciksIHR3
KTsKKyAgICAgICAgIHQuaSA9IFNfTVVMKE5FRzMyX292Zmx3KEFERDMyX292Zmx3KEZvdXQyWzNd
LmksIEZvdXQyWzNdLnIpKSwgdHcpOwogICAgICAgICAgQ19TVUIoIEZvdXQyWzNdICwgIEZvdXRb
M10gLCB0ICk7CiAgICAgICAgICBDX0FERFRPKCBGb3V0WzNdICwgIHQgKTsKICAgICAgICAgIEZv
dXQgKz0gODsKQEAgLTEyNiwxMCArMTI2LDEwIEBAIHN0YXRpYyB2b2lkIGtmX2JmbHk0KAogICAg
ICAgICAgQ19BRERUTyggKkZvdXQgLCBzY3JhdGNoMSApOwogICAgICAgICAgQ19TVUIoIHNjcmF0
Y2gxICwgRm91dFsxXSAsIEZvdXRbM10gKTsKIAotICAgICAgICAgRm91dFsxXS5yID0gc2NyYXRj
aDAuciArIHNjcmF0Y2gxLmk7Ci0gICAgICAgICBGb3V0WzFdLmkgPSBzY3JhdGNoMC5pIC0gc2Ny
YXRjaDEucjsKLSAgICAgICAgIEZvdXRbM10uciA9IHNjcmF0Y2gwLnIgLSBzY3JhdGNoMS5pOwot
ICAgICAgICAgRm91dFszXS5pID0gc2NyYXRjaDAuaSArIHNjcmF0Y2gxLnI7CisgICAgICAgICBG
b3V0WzFdLnIgPSBBREQzMl9vdmZsdyhzY3JhdGNoMC5yLCBzY3JhdGNoMS5pKTsKKyAgICAgICAg
IEZvdXRbMV0uaSA9IFNVQjMyX292Zmx3KHNjcmF0Y2gwLmksIHNjcmF0Y2gxLnIpOworICAgICAg
ICAgRm91dFszXS5yID0gU1VCMzJfb3ZmbHcoc2NyYXRjaDAuciwgc2NyYXRjaDEuaSk7CisgICAg
ICAgICBGb3V0WzNdLmkgPSBBREQzMl9vdmZsdyhzY3JhdGNoMC5pLCBzY3JhdGNoMS5yKTsKICAg
ICAgICAgIEZvdXQrPTQ7CiAgICAgICB9CiAgICB9IGVsc2UgewpAQCAtMTYwLDEwICsxNjAsMTAg
QEAgc3RhdGljIHZvaWQga2ZfYmZseTQoCiAgICAgICAgICAgICB0dzMgKz0gZnN0cmlkZSozOwog
ICAgICAgICAgICAgQ19BRERUTyggKkZvdXQgLCBzY3JhdGNoWzNdICk7CiAKLSAgICAgICAgICAg
IEZvdXRbbV0uciA9IHNjcmF0Y2hbNV0uciArIHNjcmF0Y2hbNF0uaTsKLSAgICAgICAgICAgIEZv
dXRbbV0uaSA9IHNjcmF0Y2hbNV0uaSAtIHNjcmF0Y2hbNF0ucjsKLSAgICAgICAgICAgIEZvdXRb
bTNdLnIgPSBzY3JhdGNoWzVdLnIgLSBzY3JhdGNoWzRdLmk7Ci0gICAgICAgICAgICBGb3V0W20z
XS5pID0gc2NyYXRjaFs1XS5pICsgc2NyYXRjaFs0XS5yOworICAgICAgICAgICAgRm91dFttXS5y
ID0gQUREMzJfb3ZmbHcoc2NyYXRjaFs1XS5yLCBzY3JhdGNoWzRdLmkpOworICAgICAgICAgICAg
Rm91dFttXS5pID0gU1VCMzJfb3ZmbHcoc2NyYXRjaFs1XS5pLCBzY3JhdGNoWzRdLnIpOworICAg
ICAgICAgICAgRm91dFttM10uciA9IFNVQjMyX292Zmx3KHNjcmF0Y2hbNV0uciwgc2NyYXRjaFs0
XS5pKTsKKyAgICAgICAgICAgIEZvdXRbbTNdLmkgPSBBREQzMl9vdmZsdyhzY3JhdGNoWzVdLmks
IHNjcmF0Y2hbNF0ucik7CiAgICAgICAgICAgICArK0ZvdXQ7CiAgICAgICAgICB9CiAgICAgICB9
CkBAIC0yMTIsMTggKzIxMiwxOCBAQCBzdGF0aWMgdm9pZCBrZl9iZmx5MygKICAgICAgICAgIHR3
MSArPSBmc3RyaWRlOwogICAgICAgICAgdHcyICs9IGZzdHJpZGUqMjsKIAotICAgICAgICAgRm91
dFttXS5yID0gRm91dC0+ciAtIEhBTEZfT0Yoc2NyYXRjaFszXS5yKTsKLSAgICAgICAgIEZvdXRb
bV0uaSA9IEZvdXQtPmkgLSBIQUxGX09GKHNjcmF0Y2hbM10uaSk7CisgICAgICAgICBGb3V0W21d
LnIgPSBTVUIzMl9vdmZsdyhGb3V0LT5yLCBIQUxGX09GKHNjcmF0Y2hbM10ucikpOworICAgICAg
ICAgRm91dFttXS5pID0gU1VCMzJfb3ZmbHcoRm91dC0+aSwgSEFMRl9PRihzY3JhdGNoWzNdLmkp
KTsKIAogICAgICAgICAgQ19NVUxCWVNDQUxBUiggc2NyYXRjaFswXSAsIGVwaTMuaSApOwogCiAg
ICAgICAgICBDX0FERFRPKCpGb3V0LHNjcmF0Y2hbM10pOwogCi0gICAgICAgICBGb3V0W20yXS5y
ID0gRm91dFttXS5yICsgc2NyYXRjaFswXS5pOwotICAgICAgICAgRm91dFttMl0uaSA9IEZvdXRb
bV0uaSAtIHNjcmF0Y2hbMF0ucjsKKyAgICAgICAgIEZvdXRbbTJdLnIgPSBBREQzMl9vdmZsdyhG
b3V0W21dLnIsIHNjcmF0Y2hbMF0uaSk7CisgICAgICAgICBGb3V0W20yXS5pID0gU1VCMzJfb3Zm
bHcoRm91dFttXS5pLCBzY3JhdGNoWzBdLnIpOwogCi0gICAgICAgICBGb3V0W21dLnIgLT0gc2Ny
YXRjaFswXS5pOwotICAgICAgICAgRm91dFttXS5pICs9IHNjcmF0Y2hbMF0ucjsKKyAgICAgICAg
IEZvdXRbbV0uciA9IFNVQjMyX292Zmx3KEZvdXRbbV0uciwgc2NyYXRjaFswXS5pKTsKKyAgICAg
ICAgIEZvdXRbbV0uaSA9IEFERDMyX292Zmx3KEZvdXRbbV0uaSwgc2NyYXRjaFswXS5yKTsKIAog
ICAgICAgICAgKytGb3V0OwogICAgICAgfSB3aGlsZSgtLWspOwpAQCAtMjgyLDIyICsyODIsMjIg
QEAgc3RhdGljIHZvaWQga2ZfYmZseTUoCiAgICAgICAgICBDX0FERCggc2NyYXRjaFs4XSxzY3Jh
dGNoWzJdLHNjcmF0Y2hbM10pOwogICAgICAgICAgQ19TVUIoIHNjcmF0Y2hbOV0sc2NyYXRjaFsy
XSxzY3JhdGNoWzNdKTsKIAotICAgICAgICAgRm91dDAtPnIgKz0gc2NyYXRjaFs3XS5yICsgc2Ny
YXRjaFs4XS5yOwotICAgICAgICAgRm91dDAtPmkgKz0gc2NyYXRjaFs3XS5pICsgc2NyYXRjaFs4
XS5pOworICAgICAgICAgRm91dDAtPnIgPSBBREQzMl9vdmZsdyhGb3V0MC0+ciwgQUREMzJfb3Zm
bHcoc2NyYXRjaFs3XS5yLCBzY3JhdGNoWzhdLnIpKTsKKyAgICAgICAgIEZvdXQwLT5pID0gQURE
MzJfb3ZmbHcoRm91dDAtPmksIEFERDMyX292Zmx3KHNjcmF0Y2hbN10uaSwgc2NyYXRjaFs4XS5p
KSk7CiAKLSAgICAgICAgIHNjcmF0Y2hbNV0uciA9IHNjcmF0Y2hbMF0uciArIFNfTVVMKHNjcmF0
Y2hbN10ucix5YS5yKSArIFNfTVVMKHNjcmF0Y2hbOF0ucix5Yi5yKTsKLSAgICAgICAgIHNjcmF0
Y2hbNV0uaSA9IHNjcmF0Y2hbMF0uaSArIFNfTVVMKHNjcmF0Y2hbN10uaSx5YS5yKSArIFNfTVVM
KHNjcmF0Y2hbOF0uaSx5Yi5yKTsKKyAgICAgICAgIHNjcmF0Y2hbNV0uciA9IEFERDMyX292Zmx3
KHNjcmF0Y2hbMF0uciwgQUREMzJfb3ZmbHcoU19NVUwoc2NyYXRjaFs3XS5yLHlhLnIpLCBTX01V
TChzY3JhdGNoWzhdLnIseWIucikpKTsKKyAgICAgICAgIHNjcmF0Y2hbNV0uaSA9IEFERDMyX292
Zmx3KHNjcmF0Y2hbMF0uaSwgQUREMzJfb3ZmbHcoU19NVUwoc2NyYXRjaFs3XS5pLHlhLnIpLCBT
X01VTChzY3JhdGNoWzhdLmkseWIucikpKTsKIAotICAgICAgICAgc2NyYXRjaFs2XS5yID0gIFNf
TVVMKHNjcmF0Y2hbMTBdLmkseWEuaSkgKyBTX01VTChzY3JhdGNoWzldLmkseWIuaSk7Ci0gICAg
ICAgICBzY3JhdGNoWzZdLmkgPSAtU19NVUwoc2NyYXRjaFsxMF0ucix5YS5pKSAtIFNfTVVMKHNj
cmF0Y2hbOV0ucix5Yi5pKTsKKyAgICAgICAgIHNjcmF0Y2hbNl0uciA9ICBBREQzMl9vdmZsdyhT
X01VTChzY3JhdGNoWzEwXS5pLHlhLmkpLCBTX01VTChzY3JhdGNoWzldLmkseWIuaSkpOworICAg
ICAgICAgc2NyYXRjaFs2XS5pID0gTkVHMzJfb3ZmbHcoQUREMzJfb3ZmbHcoU19NVUwoc2NyYXRj
aFsxMF0ucix5YS5pKSwgU19NVUwoc2NyYXRjaFs5XS5yLHliLmkpKSk7CiAKICAgICAgICAgIENf
U1VCKCpGb3V0MSxzY3JhdGNoWzVdLHNjcmF0Y2hbNl0pOwogICAgICAgICAgQ19BREQoKkZvdXQ0
LHNjcmF0Y2hbNV0sc2NyYXRjaFs2XSk7CiAKLSAgICAgICAgIHNjcmF0Y2hbMTFdLnIgPSBzY3Jh
dGNoWzBdLnIgKyBTX01VTChzY3JhdGNoWzddLnIseWIucikgKyBTX01VTChzY3JhdGNoWzhdLnIs
eWEucik7Ci0gICAgICAgICBzY3JhdGNoWzExXS5pID0gc2NyYXRjaFswXS5pICsgU19NVUwoc2Ny
YXRjaFs3XS5pLHliLnIpICsgU19NVUwoc2NyYXRjaFs4XS5pLHlhLnIpOwotICAgICAgICAgc2Ny
YXRjaFsxMl0uciA9IC0gU19NVUwoc2NyYXRjaFsxMF0uaSx5Yi5pKSArIFNfTVVMKHNjcmF0Y2hb
OV0uaSx5YS5pKTsKLSAgICAgICAgIHNjcmF0Y2hbMTJdLmkgPSBTX01VTChzY3JhdGNoWzEwXS5y
LHliLmkpIC0gU19NVUwoc2NyYXRjaFs5XS5yLHlhLmkpOworICAgICAgICAgc2NyYXRjaFsxMV0u
ciA9IEFERDMyX292Zmx3KHNjcmF0Y2hbMF0uciwgQUREMzJfb3ZmbHcoU19NVUwoc2NyYXRjaFs3
XS5yLHliLnIpLCBTX01VTChzY3JhdGNoWzhdLnIseWEucikpKTsKKyAgICAgICAgIHNjcmF0Y2hb
MTFdLmkgPSBBREQzMl9vdmZsdyhzY3JhdGNoWzBdLmksIEFERDMyX292Zmx3KFNfTVVMKHNjcmF0
Y2hbN10uaSx5Yi5yKSwgU19NVUwoc2NyYXRjaFs4XS5pLHlhLnIpKSk7CisgICAgICAgICBzY3Jh
dGNoWzEyXS5yID0gU1VCMzJfb3ZmbHcoU19NVUwoc2NyYXRjaFs5XS5pLHlhLmkpLCBTX01VTChz
Y3JhdGNoWzEwXS5pLHliLmkpKTsKKyAgICAgICAgIHNjcmF0Y2hbMTJdLmkgPSBTVUIzMl9vdmZs
dyhTX01VTChzY3JhdGNoWzEwXS5yLHliLmkpLCBTX01VTChzY3JhdGNoWzldLnIseWEuaSkpOwog
CiAgICAgICAgICBDX0FERCgqRm91dDIsc2NyYXRjaFsxMV0sc2NyYXRjaFsxMl0pOwogICAgICAg
ICAgQ19TVUIoKkZvdXQzLHNjcmF0Y2hbMTFdLHNjcmF0Y2hbMTJdKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9tYXRob3BzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvbWF0aG9wcy5oCmluZGV4IGEwNTI1YTk2MTAzMGFlNWRmMTY3NGZm
NTk2MTJmMjA1NDQ1M2E5MjEuLjFmOGEyMGNiNDU0MDI1NWZmYzRlYTBhNWY2NzE2YTMxNzk4YzZh
NmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC9tYXRob3BzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21hdGhvcHMuaApAQCAtMzgs
MTEgKzM4LDQ0IEBACiAjaW5jbHVkZSAiZW50Y29kZS5oIgogI2luY2x1ZGUgIm9zX3N1cHBvcnQu
aCIKIAorI2RlZmluZSBQSSAzLjE0MTU5MjY1M2YKKwogLyogTXVsdGlwbGllcyB0d28gMTYtYml0
IGZyYWN0aW9uYWwgdmFsdWVzLiBCaXQtZXhhY3RuZXNzIG9mIHRoaXMgbWFjcm8gaXMgaW1wb3J0
YW50ICovCiAjZGVmaW5lIEZSQUNfTVVMMTYoYSxiKSAoKDE2Mzg0Kygob3B1c19pbnQzMikob3B1
c19pbnQxNikoYSkqKG9wdXNfaW50MTYpKGIpKSk+PjE1KQogCiB1bnNpZ25lZCBpc3FydDMyKG9w
dXNfdWludDMyIF92YWwpOwogCisvKiBDRUxUIGRvZXNuJ3QgbmVlZCBpdCBmb3IgZml4ZWQtcG9p
bnQsIGJ5IGFuYWx5c2lzLmMgZG9lcy4gKi8KKyNpZiAhZGVmaW5lZChGSVhFRF9QT0lOVCkgfHwg
ZGVmaW5lZChBTkFMWVNJU19DKQorI2RlZmluZSBjQSAwLjQzMTU3OTc0ZgorI2RlZmluZSBjQiAw
LjY3ODQ4NDAzZgorI2RlZmluZSBjQyAwLjA4NTk1NTQyZgorI2RlZmluZSBjRSAoKGZsb2F0KVBJ
LzIpCitzdGF0aWMgT1BVU19JTkxJTkUgZmxvYXQgZmFzdF9hdGFuMmYoZmxvYXQgeSwgZmxvYXQg
eCkgeworICAgZmxvYXQgeDIsIHkyOworICAgeDIgPSB4Kng7CisgICB5MiA9IHkqeTsKKyAgIC8q
IEZvciB2ZXJ5IHNtYWxsIHZhbHVlcywgd2UgZG9uJ3QgY2FyZSBhYm91dCB0aGUgYW5zd2VyLCBz
bworICAgICAgd2UgY2FuIGp1c3QgcmV0dXJuIDAuICovCisgICBpZiAoeDIgKyB5MiA8IDFlLTE4
ZikKKyAgIHsKKyAgICAgIHJldHVybiAwOworICAgfQorICAgaWYoeDI8eTIpeworICAgICAgZmxv
YXQgZGVuID0gKHkyICsgY0IqeDIpICogKHkyICsgY0MqeDIpOworICAgICAgcmV0dXJuIC14Knkq
KHkyICsgY0EqeDIpIC8gZGVuICsgKHk8MCA/IC1jRSA6IGNFKTsKKyAgIH1lbHNleworICAgICAg
ZmxvYXQgZGVuID0gKHgyICsgY0IqeTIpICogKHgyICsgY0MqeTIpOworICAgICAgcmV0dXJuICB4
KnkqKHgyICsgY0EqeTIpIC8gZGVuICsgKHk8MCA/IC1jRSA6IGNFKSAtICh4Knk8MCA/IC1jRSA6
IGNFKTsKKyAgIH0KK30KKyN1bmRlZiBjQQorI3VuZGVmIGNCCisjdW5kZWYgY0MKKyN1bmRlZiBj
RAorI2VuZGlmCisKKwogI2lmbmRlZiBPVkVSUklERV9DRUxUX01BWEFCUzE2CiBzdGF0aWMgT1BV
U19JTkxJTkUgb3B1c192YWwzMiBjZWx0X21heGFiczE2KGNvbnN0IG9wdXNfdmFsMTYgKngsIGlu
dCBsZW4pCiB7CkBAIC04MCw3ICsxMTMsNiBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c192YWwz
MiBjZWx0X21heGFiczMyKGNvbnN0IG9wdXNfdmFsMzIgKngsIGludCBsZW4pCiAKICNpZm5kZWYg
RklYRURfUE9JTlQKIAotI2RlZmluZSBQSSAzLjE0MTU5MjY1M2YKICNkZWZpbmUgY2VsdF9zcXJ0
KHgpICgoZmxvYXQpc3FydCh4KSkKICNkZWZpbmUgY2VsdF9yc3FydCh4KSAoMS5mL2NlbHRfc3Fy
dCh4KSkKICNkZWZpbmUgY2VsdF9yc3FydF9ub3JtKHgpIChjZWx0X3JzcXJ0KHgpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L21kY3QuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9tZGN0LmMKaW5kZXggNTMxNWFkMTFhMzdiYmE5MjExZDQ5
YjU1ZGVmNTVlZTdmMTUyYzIyYy4uNWM2ZGFiNWI3NTdhNjRhZjkxMjkzNmYwY2U2ZmUyMmI4ZmMx
MTJlMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21kY3QuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbWRjdC5jCkBAIC0yNzAsOCAr
MjcwLDggQEAgdm9pZCBjbHRfbWRjdF9iYWNrd2FyZF9jKGNvbnN0IG1kY3RfbG9va3VwICpsLCBr
aXNzX2ZmdF9zY2FsYXIgKmluLCBraXNzX2ZmdF9zY2EKICAgICAgICAgIGludCByZXY7CiAgICAg
ICAgICBraXNzX2ZmdF9zY2FsYXIgeXIsIHlpOwogICAgICAgICAgcmV2ID0gKmJpdHJldisrOwot
ICAgICAgICAgeXIgPSBTX01VTCgqeHAyLCB0W2ldKSArIFNfTVVMKCp4cDEsIHRbTjQraV0pOwot
ICAgICAgICAgeWkgPSBTX01VTCgqeHAxLCB0W2ldKSAtIFNfTVVMKCp4cDIsIHRbTjQraV0pOwor
ICAgICAgICAgeXIgPSBBREQzMl9vdmZsdyhTX01VTCgqeHAyLCB0W2ldKSwgU19NVUwoKnhwMSwg
dFtONCtpXSkpOworICAgICAgICAgeWkgPSBTVUIzMl9vdmZsdyhTX01VTCgqeHAxLCB0W2ldKSwg
U19NVUwoKnhwMiwgdFtONCtpXSkpOwogICAgICAgICAgLyogV2Ugc3dhcCByZWFsIGFuZCBpbWFn
IGJlY2F1c2Ugd2UgdXNlIGFuIEZGVCBpbnN0ZWFkIG9mIGFuIElGRlQuICovCiAgICAgICAgICB5
cFsyKnJldisxXSA9IHlyOwogICAgICAgICAgeXBbMipyZXZdID0geWk7CkBAIC0zMDEsOCArMzAx
LDggQEAgdm9pZCBjbHRfbWRjdF9iYWNrd2FyZF9jKGNvbnN0IG1kY3RfbG9va3VwICpsLCBraXNz
X2ZmdF9zY2FsYXIgKmluLCBraXNzX2ZmdF9zY2EKICAgICAgICAgIHQwID0gdFtpXTsKICAgICAg
ICAgIHQxID0gdFtONCtpXTsKICAgICAgICAgIC8qIFdlJ2Qgc2NhbGUgdXAgYnkgMiBoZXJlLCBi
dXQgaW5zdGVhZCBpdCdzIGRvbmUgd2hlbiBtaXhpbmcgdGhlIHdpbmRvd3MgKi8KLSAgICAgICAg
IHlyID0gU19NVUwocmUsdDApICsgU19NVUwoaW0sdDEpOwotICAgICAgICAgeWkgPSBTX01VTChy
ZSx0MSkgLSBTX01VTChpbSx0MCk7CisgICAgICAgICB5ciA9IEFERDMyX292Zmx3KFNfTVVMKHJl
LHQwKSwgU19NVUwoaW0sdDEpKTsKKyAgICAgICAgIHlpID0gU1VCMzJfb3ZmbHcoU19NVUwocmUs
dDEpLCBTX01VTChpbSx0MCkpOwogICAgICAgICAgLyogV2Ugc3dhcCByZWFsIGFuZCBpbWFnIGJl
Y2F1c2Ugd2UncmUgdXNpbmcgYW4gRkZUIGluc3RlYWQgb2YgYW4gSUZGVC4gKi8KICAgICAgICAg
IHJlID0geXAxWzFdOwogICAgICAgICAgaW0gPSB5cDFbMF07CkBAIC0zMTIsOCArMzEyLDggQEAg
dm9pZCBjbHRfbWRjdF9iYWNrd2FyZF9jKGNvbnN0IG1kY3RfbG9va3VwICpsLCBraXNzX2ZmdF9z
Y2FsYXIgKmluLCBraXNzX2ZmdF9zY2EKICAgICAgICAgIHQwID0gdFsoTjQtaS0xKV07CiAgICAg
ICAgICB0MSA9IHRbKE4yLWktMSldOwogICAgICAgICAgLyogV2UnZCBzY2FsZSB1cCBieSAyIGhl
cmUsIGJ1dCBpbnN0ZWFkIGl0J3MgZG9uZSB3aGVuIG1peGluZyB0aGUgd2luZG93cyAqLwotICAg
ICAgICAgeXIgPSBTX01VTChyZSx0MCkgKyBTX01VTChpbSx0MSk7Ci0gICAgICAgICB5aSA9IFNf
TVVMKHJlLHQxKSAtIFNfTVVMKGltLHQwKTsKKyAgICAgICAgIHlyID0gQUREMzJfb3ZmbHcoU19N
VUwocmUsdDApLCBTX01VTChpbSx0MSkpOworICAgICAgICAgeWkgPSBTVUIzMl9vdmZsdyhTX01V
TChyZSx0MSksIFNfTVVMKGltLHQwKSk7CiAgICAgICAgICB5cDFbMF0gPSB5cjsKICAgICAgICAg
IHlwMFsxXSA9IHlpOwogICAgICAgICAgeXAwICs9IDI7CkBAIC0zMzMsOCArMzMzLDggQEAgdm9p
ZCBjbHRfbWRjdF9iYWNrd2FyZF9jKGNvbnN0IG1kY3RfbG9va3VwICpsLCBraXNzX2ZmdF9zY2Fs
YXIgKmluLCBraXNzX2ZmdF9zY2EKICAgICAgICAgIGtpc3NfZmZ0X3NjYWxhciB4MSwgeDI7CiAg
ICAgICAgICB4MSA9ICp4cDE7CiAgICAgICAgICB4MiA9ICp5cDE7Ci0gICAgICAgICAqeXAxKysg
PSBNVUxUMTZfMzJfUTE1KCp3cDIsIHgyKSAtIE1VTFQxNl8zMl9RMTUoKndwMSwgeDEpOwotICAg
ICAgICAgKnhwMS0tID0gTVVMVDE2XzMyX1ExNSgqd3AxLCB4MikgKyBNVUxUMTZfMzJfUTE1KCp3
cDIsIHgxKTsKKyAgICAgICAgICp5cDErKyA9IFNVQjMyX292Zmx3KE1VTFQxNl8zMl9RMTUoKndw
MiwgeDIpLCBNVUxUMTZfMzJfUTE1KCp3cDEsIHgxKSk7CisgICAgICAgICAqeHAxLS0gPSBBREQz
Ml9vdmZsdyhNVUxUMTZfMzJfUTE1KCp3cDEsIHgyKSwgTVVMVDE2XzMyX1ExNSgqd3AyLCB4MSkp
OwogICAgICAgICAgd3AxKys7CiAgICAgICAgICB3cDItLTsKICAgICAgIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9taXBzL3ZxX21pcHNyMS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21pcHMvdnFfbWlwc3IxLmgKaW5kZXggNTRjZWY4
NjEzMzc1NDA5NzE3Yjg2ZWVhYWZiNzM0NmQxMmVhYTgwMC4uZmQxOGVhYjdhOTY2MDQ2NTM5YTYw
YjhhMjJkZGVlZDJmMWEwYTViNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21pcHMvdnFfbWlwc3IxLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L21pcHMvdnFfbWlwc3IxLmgKQEAgLTM2LDkgKzM2LDYgQEAKICNpbmNsdWRlICJtYXRo
b3BzLmgiCiAjaW5jbHVkZSAiYXJjaC5oIgogCi1zdGF0aWMgdW5zaWduZWQgZXh0cmFjdF9jb2xs
YXBzZV9tYXNrKGludCAqaXksIGludCBOLCBpbnQgQik7Ci1zdGF0aWMgdm9pZCBub3JtYWxpc2Vf
cmVzaWR1YWwoaW50ICogT1BVU19SRVNUUklDVCBpeSwgY2VsdF9ub3JtICogT1BVU19SRVNUUklD
VCBYLCBpbnQgTiwgb3B1c192YWwzMiBSeXksIG9wdXNfdmFsMTYgZ2Fpbik7Ci1zdGF0aWMgdm9p
ZCBleHBfcm90YXRpb24oY2VsdF9ub3JtICpYLCBpbnQgbGVuLCBpbnQgZGlyLCBpbnQgc3RyaWRl
LCBpbnQgSywgaW50IHNwcmVhZCk7CiBzdGF0aWMgdm9pZCByZW5vcm1hbGlzZV92ZWN0b3JfbWlw
cyhjZWx0X25vcm0gKlgsIGludCBOLCBvcHVzX3ZhbDE2IGdhaW4sIGludCBhcmNoKTsKIAogI2Rl
ZmluZSBPVkVSUklERV92cV9leHBfcm90YXRpb24xCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbW9kZXMuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9tb2Rlcy5jCmluZGV4IDkxMTY4NmU5MDU1MjI5ODZiMzRmNGRiNTdkMTYyM2FlNDIzYWFj
ZDguLjM5MGM1ZThhZWIzNmFhNDhiMTZkMmZmYTIwMjU1NGRjMTc0ZGE2NjEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9tb2Rlcy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9tb2Rlcy5jCkBAIC00MjcsNyArNDI3LDcgQEAgdm9pZCBv
cHVzX2N1c3RvbV9tb2RlX2Rlc3Ryb3koQ0VMVE1vZGUgKm1vZGUpCiAgICB9CiAjZW5kaWYgLyog
Q1VTVE9NX01PREVTX09OTFkgKi8KICAgIG9wdXNfZnJlZSgob3B1c19pbnQxNiopbW9kZS0+ZUJh
bmRzKTsKLSAgIG9wdXNfZnJlZSgob3B1c19pbnQxNiopbW9kZS0+YWxsb2NWZWN0b3JzKTsKKyAg
IG9wdXNfZnJlZSgodW5zaWduZWQgY2hhciopbW9kZS0+YWxsb2NWZWN0b3JzKTsKIAogICAgb3B1
c19mcmVlKChvcHVzX3ZhbDE2Kiltb2RlLT53aW5kb3cpOwogICAgb3B1c19mcmVlKChvcHVzX2lu
dDE2Kiltb2RlLT5sb2dOKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9waXRjaC5jIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3BpdGNoLmMK
aW5kZXggYmY0NmU3ZDU2MmIzOWY2Mjc1MmMzMDA5MWU5MDA2NGU0MzQ0YjM3Mi4uNWIwNjFkODYw
ZjQ1MmI4YzM1MzlmNTBiODZkZmQxMjMwYjdlYzUyMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3BpdGNoLmMK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L3BpdGNoLmMKQEAgLTIyMCwxMyArMjIwLDggQEAgb3B1c192YWwzMgogI2Vsc2UK
IHZvaWQKICNlbmRpZgotI2lmIGRlZmluZWQoT1ZFUlJJREVfUElUQ0hfWENPUlIpCiBjZWx0X3Bp
dGNoX3hjb3JyX2MoY29uc3Qgb3B1c192YWwxNiAqX3gsIGNvbnN0IG9wdXNfdmFsMTYgKl95LAot
ICAgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gpCi0jZWxzZQot
Y2VsdF9waXRjaF94Y29ycihjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAq
X3ksCiAgICAgICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCwgaW50
IGFyY2gpCi0jZW5kaWYKIHsKIAogI2lmIDAgLyogVGhpcyBpcyBhIHNpbXBsZSB2ZXJzaW9uIG9m
IHRoZSBwaXRjaCBjb3JyZWxhdGlvbiB0aGF0IHNob3VsZCB3b3JrCkBAIC0yNjUsMTEgKzI2MCw3
IEBAIGNlbHRfcGl0Y2hfeGNvcnIoY29uc3Qgb3B1c192YWwxNiAqX3gsIGNvbnN0IG9wdXNfdmFs
MTYgKl95LAogICAgZm9yIChpPTA7aTxtYXhfcGl0Y2gtMztpKz00KQogICAgewogICAgICAgb3B1
c192YWwzMiBzdW1bNF09ezAsMCwwLDB9OwotI2lmIGRlZmluZWQoT1ZFUlJJREVfUElUQ0hfWENP
UlIpCi0gICAgICB4Y29ycl9rZXJuZWxfYyhfeCwgX3kraSwgc3VtLCBsZW4pOwotI2Vsc2UKICAg
ICAgIHhjb3JyX2tlcm5lbChfeCwgX3kraSwgc3VtLCBsZW4sIGFyY2gpOwotI2VuZGlmCiAgICAg
ICB4Y29ycltpXT1zdW1bMF07CiAgICAgICB4Y29ycltpKzFdPXN1bVsxXTsKICAgICAgIHhjb3Jy
W2krMl09c3VtWzJdOwpAQCAtMjg1LDExICsyNzYsNyBAQCBjZWx0X3BpdGNoX3hjb3JyKGNvbnN0
IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKICAgIGZvciAoO2k8bWF4X3Bp
dGNoO2krKykKICAgIHsKICAgICAgIG9wdXNfdmFsMzIgc3VtOwotI2lmIGRlZmluZWQoT1ZFUlJJ
REVfUElUQ0hfWENPUlIpCi0gICAgICBzdW0gPSBjZWx0X2lubmVyX3Byb2RfYyhfeCwgX3kraSwg
bGVuKTsKLSNlbHNlCiAgICAgICBzdW0gPSBjZWx0X2lubmVyX3Byb2QoX3gsIF95K2ksIGxlbiwg
YXJjaCk7Ci0jZW5kaWYKICAgICAgIHhjb3JyW2ldID0gc3VtOwogI2lmZGVmIEZJWEVEX1BPSU5U
CiAgICAgICBtYXhjb3JyID0gTUFYMzIobWF4Y29yciwgc3VtKTsKQEAgLTM3OCw3ICszNjUsNyBA
QCB2b2lkIHBpdGNoX3NlYXJjaChjb25zdCBvcHVzX3ZhbDE2ICogT1BVU19SRVNUUklDVCB4X2xw
LCBvcHVzX3ZhbDE2ICogT1BVU19SRVNUUgogICAgICAgZm9yIChqPTA7ajxsZW4+PjE7aisrKQog
ICAgICAgICAgc3VtICs9IFNIUjMyKE1VTFQxNl8xNih4X2xwW2pdLHlbaStqXSksIHNoaWZ0KTsK
ICNlbHNlCi0gICAgICBzdW0gPSBjZWx0X2lubmVyX3Byb2RfYyh4X2xwLCB5K2ksIGxlbj4+MSk7
CisgICAgICBzdW0gPSBjZWx0X2lubmVyX3Byb2QoeF9scCwgeStpLCBsZW4+PjEsIGFyY2gpOwog
I2VuZGlmCiAgICAgICB4Y29ycltpXSA9IE1BWDMyKC0xLCBzdW0pOwogI2lmZGVmIEZJWEVEX1BP
SU5UCkBAIC00MjQsNyArNDExLDcgQEAgc3RhdGljIG9wdXNfdmFsMTYgY29tcHV0ZV9waXRjaF9n
YWluKG9wdXNfdmFsMzIgeHksIG9wdXNfdmFsMzIgeHgsIG9wdXNfdmFsMzIgeXkKICAgIHN4ID0g
Y2VsdF9pbG9nMih4eCktMTQ7CiAgICBzeSA9IGNlbHRfaWxvZzIoeXkpLTE0OwogICAgc2hpZnQg
PSBzeCArIHN5OwotICAgeDJ5MiA9IE1VTFQxNl8xNl9RMTQoVlNIUjMyKHh4LCBzeCksIFZTSFIz
Mih5eSwgc3kpKTsKKyAgIHgyeTIgPSBTSFIzMihNVUxUMTZfMTYoVlNIUjMyKHh4LCBzeCksIFZT
SFIzMih5eSwgc3kpKSwgMTQpOwogICAgaWYgKHNoaWZ0ICYgMSkgewogICAgICAgaWYgKHgyeTIg
PCAzMjc2OCkKICAgICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9waXRjaC5oIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3BpdGNoLmgK
aW5kZXggZDM1MDM1MzJhMDgwYjM3ODc1NWRjMDFiYTI2YzA1NWRkYWIyMjVjNS4uZTQyNWY1NmFl
YWE4OTJhOWFjZGM3YTZiYzU4ZDllNTdkZGNlNzI0NiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3BpdGNoLmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L3BpdGNoLmgKQEAgLTQ2LDggKzQ2LDcgQEAKICNpbmNsdWRlICJtaXBzL3BpdGNo
X21pcHNyMS5oIgogI2VuZGlmCiAKLSNpZiAoKGRlZmluZWQoT1BVU19BUk1fQVNNKSAmJiBkZWZp
bmVkKEZJWEVEX1BPSU5UKSkgXAotICB8fCBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05f
SU5UUikpCisjaWYgKGRlZmluZWQoT1BVU19BUk1fQVNNKSB8fCBkZWZpbmVkKE9QVVNfQVJNX01B
WV9IQVZFX05FT05fSU5UUikpCiAjIGluY2x1ZGUgImFybS9waXRjaF9hcm0uaCIKICNlbmRpZgog
CkBAIC0xODQsMTcgKzE4MywxMCBAQCBvcHVzX3ZhbDMyCiB2b2lkCiAjZW5kaWYKIGNlbHRfcGl0
Y2hfeGNvcnJfYyhjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCi0g
ICAgICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCk7Ci0KLSNpZiAh
ZGVmaW5lZChPVkVSUklERV9QSVRDSF9YQ09SUikKLSNpZmRlZiBGSVhFRF9QT0lOVAotb3B1c192
YWwzMgotI2Vsc2UKLXZvaWQKLSNlbmRpZgotY2VsdF9waXRjaF94Y29ycihjb25zdCBvcHVzX3Zh
bDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCiAgICAgICBvcHVzX3ZhbDMyICp4Y29yciwg
aW50IGxlbiwgaW50IG1heF9waXRjaCwgaW50IGFyY2gpOwogCisjaWZuZGVmIE9WRVJSSURFX1BJ
VENIX1hDT1JSCisjIGRlZmluZSBjZWx0X3BpdGNoX3hjb3JyIGNlbHRfcGl0Y2hfeGNvcnJfYwog
I2VuZGlmCiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3F1YW50X2JhbmRzLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvcXVh
bnRfYmFuZHMuYwppbmRleCA5NTA3NmUwYWYyZDRlZTA3YjI1YjViMzMzMDU0Mjc3M2UyNDQ5N2Iy
Li41NjEwMWIxY2ZlY2I4ZjU4MTFjMDc2MTg4MzBkN2VlMzg0MmFlYjQ4IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvcXVhbnRfYmFuZHMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvcXVhbnRfYmFuZHMuYwpAQCAtNDE4LDYgKzQxOCw3
IEBAIHZvaWQgcXVhbnRfZW5lcmd5X2ZpbmFsaXNlKGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3Rh
cnQsIGludCBlbmQsIG9wdXNfdmFsMTYgKm9sCiAgICAgICAgICAgICBvZmZzZXQgPSAocTItLjVm
KSooMTw8KDE0LWZpbmVfcXVhbnRbaV0tMSkpKigxLmYvMTYzODQpOwogI2VuZGlmCiAgICAgICAg
ICAgICBvbGRFQmFuZHNbaStjKm0tPm5iRUJhbmRzXSArPSBvZmZzZXQ7CisgICAgICAgICAgICBl
cnJvcltpK2MqbS0+bmJFQmFuZHNdIC09IG9mZnNldDsKICAgICAgICAgICAgIGJpdHNfbGVmdC0t
OwogICAgICAgICAgfSB3aGlsZSAoKytjIDwgQyk7CiAgICAgICB9CkBAIC01NDcsOSArNTQ4LDE1
IEBAIHZvaWQgYW1wMkxvZzIoY29uc3QgQ0VMVE1vZGUgKm0sIGludCBlZmZFbmQsIGludCBlbmQs
CiAgICBjPTA7CiAgICBkbyB7CiAgICAgICBmb3IgKGk9MDtpPGVmZkVuZDtpKyspCisgICAgICB7
CiAgICAgICAgICBiYW5kTG9nRVtpK2MqbS0+bmJFQmFuZHNdID0KLSAgICAgICAgICAgICAgIGNl
bHRfbG9nMihTSEwzMihiYW5kRVtpK2MqbS0+bmJFQmFuZHNdLDIpKQorICAgICAgICAgICAgICAg
Y2VsdF9sb2cyKGJhbmRFW2krYyptLT5uYkVCYW5kc10pCiAgICAgICAgICAgICAgICAtIFNITDE2
KChvcHVzX3ZhbDE2KWVNZWFuc1tpXSw2KTsKKyNpZmRlZiBGSVhFRF9QT0lOVAorICAgICAgICAg
LyogQ29tcGVuc2F0ZSBmb3IgYmFuZEVbXSBiZWluZyBRMTIgYnV0IGNlbHRfbG9nMigpIHRha2lu
ZyBhIFExNCBpbnB1dC4gKi8KKyAgICAgICAgIGJhbmRMb2dFW2krYyptLT5uYkVCYW5kc10gKz0g
UUNPTlNUMTYoMi5mLCBEQl9TSElGVCk7CisjZW5kaWYKKyAgICAgIH0KICAgICAgIGZvciAoaT1l
ZmZFbmQ7aTxlbmQ7aSsrKQogICAgICAgICAgYmFuZExvZ0VbYyptLT5uYkVCYW5kcytpXSA9IC1R
Q09OU1QxNigxNC5mLERCX1NISUZUKTsKICAgIH0gd2hpbGUgKCsrYyA8IEMpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L3JhdGUuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvY2VsdC9yYXRlLmMKaW5kZXggN2RmYTViZThhNjM5MjY4NDE1ZWExY2Y0
NmI2ZTQ5NzMwZTM4OTQ5Ni4uY2E0Y2M4NzBlYWE0MTJmNTJhNDVmNDFhOTM4MjgyYjVhMGM3ZDRl
OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L3JhdGUuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvcmF0ZS5jCkBAIC0zNDgsMTIgKzM0
OCwxNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgaW50IGludGVycF9iaXRzMnB1bHNlcyhjb25zdCBD
RUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAogICAgICAgICAgICAgLypUaGlzIGlmKCkg
YmxvY2sgaXMgdGhlIG9ubHkgcGFydCBvZiB0aGUgYWxsb2NhdGlvbiBmdW5jdGlvbiB0aGF0CiAg
ICAgICAgICAgICAgICBpcyBub3QgYSBtYW5kYXRvcnkgcGFydCBvZiB0aGUgYml0c3RyZWFtOiBh
bnkgYmFuZHMgd2UgY2hvb3NlIHRvCiAgICAgICAgICAgICAgICBza2lwIGhlcmUgbXVzdCBiZSBl
eHBsaWNpdGx5IHNpZ25hbGVkLiovCi0gICAgICAgICAgICAvKkNob29zZSBhIHRocmVzaG9sZCB3
aXRoIHNvbWUgaHlzdGVyZXNpcyB0byBrZWVwIGJhbmRzIGZyb20KLSAgICAgICAgICAgICAgIGZs
dWN0dWF0aW5nIGluIGFuZCBvdXQuKi8KKyAgICAgICAgICAgIGludCBkZXB0aF90aHJlc2hvbGQ7
CisgICAgICAgICAgICAvKldlIGNob29zZSBhIHRocmVzaG9sZCB3aXRoIHNvbWUgaHlzdGVyZXNp
cyB0byBrZWVwIGJhbmRzIGZyb20KKyAgICAgICAgICAgICAgIGZsdWN0dWF0aW5nIGluIGFuZCBv
dXQsIGJ1dCB3ZSB0cnkgbm90IHRvIGZvbGQgYmVsb3cgYSBjZXJ0YWluIHBvaW50LiAqLworICAg
ICAgICAgICAgaWYgKGNvZGVkQmFuZHMgPiAxNykKKyAgICAgICAgICAgICAgIGRlcHRoX3RocmVz
aG9sZCA9IGo8cHJldiA/IDcgOiA5OworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAg
ZGVwdGhfdGhyZXNob2xkID0gMDsKICNpZmRlZiBGVVpaSU5HCiAgICAgICAgICAgICBpZiAoKHJh
bmQoKSYweDEpID09IDApCiAjZWxzZQotICAgICAgICAgICAgaWYgKGNvZGVkQmFuZHM8PXN0YXJ0
KzIgfHwgKGJhbmRfYml0cyA+ICgoajxwcmV2Pzc6OSkqYmFuZF93aWR0aDw8TE08PEJJVFJFUyk+
PjQgJiYgajw9c2lnbmFsQmFuZHdpZHRoKSkKKyAgICAgICAgICAgIGlmIChjb2RlZEJhbmRzPD1z
dGFydCsyIHx8IChiYW5kX2JpdHMgPiAoZGVwdGhfdGhyZXNob2xkKmJhbmRfd2lkdGg8PExNPDxC
SVRSRVMpPj40ICYmIGo8PXNpZ25hbEJhbmR3aWR0aCkpCiAjZW5kaWYKICAgICAgICAgICAgIHsK
ICAgICAgICAgICAgICAgIGVjX2VuY19iaXRfbG9ncChlYywgMSwgMSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2Nl
bHQvc3RhdGljX21vZGVzX2ZpeGVkX2FybV9uZTEwLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvc3RhdGljX21vZGVzX2ZpeGVk
X2FybV9uZTEwLmgKaW5kZXggYjhlZjBjZWU5ODM4YzM0NWNmYmRkYmE3ODVlMzgzZjAwYzYzOTcy
Mi4uNzYyMzA5MjE5MjUwN2VkZTM2ODJiMTE4YWJiODA0NjQ2NmM0MjE3OCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L3N0YXRpY19tb2Rlc19maXhlZF9hcm1fbmUxMC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9zdGF0aWNfbW9kZXNf
Zml4ZWRfYXJtX25lMTAuaApAQCAtMSw3ICsxLDcgQEAKIC8qIFRoZSBjb250ZW50cyBvZiB0aGlz
IGZpbGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5CiAgKiBkdW1wX21vZGVfYXJtX25l
MTAuYyB3aXRoIGFyZ3VtZW50czogNDgwMDAgOTYwCiAgKiBJdCBjb250YWlucyBzdGF0aWMgZGVm
aW5pdGlvbnMgZm9yIHNvbWUgcHJlLWRlZmluZWQgbW9kZXMuICovCi0jaW5jbHVkZSA8TkUxMF9p
bml0Lmg+CisjaW5jbHVkZSA8TkUxMF90eXBlcy5oPgogCiAjaWZuZGVmIE5FMTBfRkZUX1BBUkFN
UzQ4MDAwXzk2MAogI2RlZmluZSBORTEwX0ZGVF9QQVJBTVM0ODAwMF85NjAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9zdGF0aWNfbW9kZXNfZmxvYXRfYXJtX25lMTAuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9zdGF0aWNfbW9kZXNfZmxv
YXRfYXJtX25lMTAuaAppbmRleCA5MzRhODJhNDIwYTI5NmMyZmI1ZWMwNzk0ZjljNmZkZTViYjc2
MDQ5Li42NmUxYWJiMTAxMzI3OTMwMmU0NTNkZDEwNzg1Y2YyOWZhMWM2ZGNlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvc3RhdGljX21vZGVzX2Zsb2F0X2FybV9uZTEwLmgKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3N0YXRpY19tb2Rl
c19mbG9hdF9hcm1fbmUxMC5oCkBAIC0xLDcgKzEsNyBAQAogLyogVGhlIGNvbnRlbnRzIG9mIHRo
aXMgZmlsZSB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgYnkKICAqIGR1bXBfbW9kZV9hcm1f
bmUxMC5jIHdpdGggYXJndW1lbnRzOiA0ODAwMCA5NjAKICAqIEl0IGNvbnRhaW5zIHN0YXRpYyBk
ZWZpbml0aW9ucyBmb3Igc29tZSBwcmUtZGVmaW5lZCBtb2Rlcy4gKi8KLSNpbmNsdWRlIDxORTEw
X2luaXQuaD4KKyNpbmNsdWRlIDxORTEwX3R5cGVzLmg+CiAKICNpZm5kZWYgTkUxMF9GRlRfUEFS
QU1TNDgwMDBfOTYwCiAjZGVmaW5lIE5FMTBfRkZUX1BBUkFNUzQ4MDAwXzk2MApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9kZnQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0LmMK
aW5kZXggNjE2NmViMGU0ZmE5M2MzZTBkMGY1MjIyZjE5ZThjYzNmNzExNDY3NC4uNzBmOGY0OTM3
YmE4ZDBiY2E2NzBlYTk1ZDFkNzUxMjRlOTE0ZDViNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3RzL3Rl
c3RfdW5pdF9kZnQuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X2RmdC5jCkBAIC0yOSwzOCAr
MjksMTIgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNlbmRpZgogCi0jZGVmaW5lIFNLSVBfQ09O
RklHX0gKLQotI2lmbmRlZiBDVVNUT01fTU9ERVMKLSNkZWZpbmUgQ1VTVE9NX01PREVTCi0jZW5k
aWYKLQogI2luY2x1ZGUgPHN0ZGlvLmg+CiAKLSNkZWZpbmUgQ0VMVF9DCi0jZGVmaW5lIFRFU1Rf
VU5JVF9ERlRfQwogI2luY2x1ZGUgInN0YWNrX2FsbG9jLmgiCiAjaW5jbHVkZSAia2lzc19mZnQu
aCIKLSNpbmNsdWRlICJraXNzX2ZmdC5jIgotI2luY2x1ZGUgIm1hdGhvcHMuYyIKLSNpbmNsdWRl
ICJlbnRjb2RlLmMiCi0KLSNpZiBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpIHx8IGRl
ZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFNF8xKQotIyBpbmNsdWRlICJ4ODYveDg2Y3B1LmMi
Ci0jZWxpZiBkZWZpbmVkKE9QVVNfQVJNX0FTTSkgfHwgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFW
RV9ORU9OX0lOVFIpCi0jIGluY2x1ZGUgImFybS9hcm1jcHUuYyIKLSMgaW5jbHVkZSAiY2VsdF9s
cGMuYyIKLSMgaW5jbHVkZSAicGl0Y2guYyIKLSMgaWYgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFW
RV9ORU9OX0lOVFIpCi0jICBpbmNsdWRlICJhcm0vY2VsdF9uZW9uX2ludHIuYyIKLSMgIGlmIGRl
ZmluZWQoSEFWRV9BUk1fTkUxMCkKLSMgICBpbmNsdWRlICJtZGN0LmMiCi0jICAgaW5jbHVkZSAi
YXJtL2NlbHRfbmUxMF9mZnQuYyIKLSMgICBpbmNsdWRlICJhcm0vY2VsdF9uZTEwX21kY3QuYyIK
LSMgIGVuZGlmCi0jIGVuZGlmCi0jIGluY2x1ZGUgImFybS9hcm1fY2VsdF9tYXAuYyIKLSNlbmRp
ZgorI2luY2x1ZGUgIm1hdGhvcHMuaCIKKyNpbmNsdWRlICJtb2Rlcy5oIgogCiAjaWZuZGVmIE1f
UEkKICNkZWZpbmUgTV9QSSAzLjE0MTU5MjY1MwpAQCAtMTEyLDExICs4NiwyNSBAQCB2b2lkIGNo
ZWNrKGtpc3NfZmZ0X2NweCAgKiBpbixraXNzX2ZmdF9jcHggICogb3V0LGludCBuZmZ0LGludCBp
c2ludmVyc2UpCiB2b2lkIHRlc3QxZChpbnQgbmZmdCxpbnQgaXNpbnZlcnNlLGludCBhcmNoKQog
ewogICAgIHNpemVfdCBidWZsZW4gPSBzaXplb2Yoa2lzc19mZnRfY3B4KSpuZmZ0OwotCi0gICAg
a2lzc19mZnRfY3B4ICAqIGluID0gKGtpc3NfZmZ0X2NweCopbWFsbG9jKGJ1Zmxlbik7Ci0gICAg
a2lzc19mZnRfY3B4ICAqIG91dD0gKGtpc3NfZmZ0X2NweCopbWFsbG9jKGJ1Zmxlbik7Ci0gICAg
a2lzc19mZnRfc3RhdGUgKmNmZyA9IG9wdXNfZmZ0X2FsbG9jKG5mZnQsMCwwLGFyY2gpOworICAg
IGtpc3NfZmZ0X2NweCAqaW47CisgICAga2lzc19mZnRfY3B4ICpvdXQ7CiAgICAgaW50IGs7Cisj
aWZkZWYgQ1VTVE9NX01PREVTCisgICAga2lzc19mZnRfc3RhdGUgKmNmZyA9IG9wdXNfZmZ0X2Fs
bG9jKG5mZnQsMCwwLGFyY2gpOworI2Vsc2UKKyAgICBpbnQgaWQ7CisgICAgY29uc3Qga2lzc19m
ZnRfc3RhdGUgKmNmZzsKKyAgICBDRUxUTW9kZSAqbW9kZSA9IG9wdXNfY3VzdG9tX21vZGVfY3Jl
YXRlKDQ4MDAwLCA5NjAsIE5VTEwpOworICAgIGlmIChuZmZ0ID09IDQ4MCkgaWQgPSAwOworICAg
IGVsc2UgaWYgKG5mZnQgPT0gMjQwKSBpZCA9IDE7CisgICAgZWxzZSBpZiAobmZmdCA9PSAxMjAp
IGlkID0gMjsKKyAgICBlbHNlIGlmIChuZmZ0ID09IDYwKSBpZCA9IDM7CisgICAgZWxzZSByZXR1
cm47CisgICAgY2ZnID0gbW9kZS0+bWRjdC5rZmZ0W2lkXTsKKyNlbmRpZgorCisgICAgaW4gPSAo
a2lzc19mZnRfY3B4KiltYWxsb2MoYnVmbGVuKTsKKyAgICBvdXQgPSAoa2lzc19mZnRfY3B4Kilt
YWxsb2MoYnVmbGVuKTsKIAogICAgIGZvciAoaz0wO2s8bmZmdDsrK2spIHsKICAgICAgICAgaW5b
a10uciA9IChyYW5kKCkgJSAzMjc2NykgLSAxNjM4NDsKQEAgLTE0OSw3ICsxMzcsOSBAQCB2b2lk
IHRlc3QxZChpbnQgbmZmdCxpbnQgaXNpbnZlcnNlLGludCBhcmNoKQogCiAgICAgZnJlZShpbik7
CiAgICAgZnJlZShvdXQpOworI2lmZGVmIENVU1RPTV9NT0RFUwogICAgIG9wdXNfZmZ0X2ZyZWUo
Y2ZnLCBhcmNoKTsKKyNlbmRpZgogfQogCiBpbnQgbWFpbihpbnQgYXJnYyxjaGFyICoqIGFyZ3Yp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X21hdGhvcHMuYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90
ZXN0X3VuaXRfbWF0aG9wcy5jCmluZGV4IGZkMzMxOWRhOTFjZWIzZWNmYTk0YzcwMmQxZWZmM2Rh
YjczOGM4N2EuLjg3NGU5YWRmMGZiZjE2MWY3NDE3ZjNhZTUxMWI4YTlmZTc1MTVkNmUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWF0aG9wcy5jCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0
X3VuaXRfbWF0aG9wcy5jCkBAIC0zNCw0OCArMzQsMTAgQEAKICNkZWZpbmUgQ1VTVE9NX01PREVT
CiAjZW5kaWYKIAotI2RlZmluZSBDRUxUX0MKLQogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVk
ZSA8bWF0aC5oPgotI2luY2x1ZGUgIm1hdGhvcHMuYyIKLSNpbmNsdWRlICJlbnRlbmMuYyIKLSNp
bmNsdWRlICJlbnRkZWMuYyIKLSNpbmNsdWRlICJlbnRjb2RlLmMiCi0jaW5jbHVkZSAiYmFuZHMu
YyIKLSNpbmNsdWRlICJxdWFudF9iYW5kcy5jIgotI2luY2x1ZGUgImxhcGxhY2UuYyIKLSNpbmNs
dWRlICJ2cS5jIgotI2luY2x1ZGUgImN3cnMuYyIKLSNpbmNsdWRlICJwaXRjaC5jIgotI2luY2x1
ZGUgImNlbHRfbHBjLmMiCi0jaW5jbHVkZSAiY2VsdC5jIgotCi0jaWYgZGVmaW5lZChPUFVTX1g4
Nl9NQVlfSEFWRV9TU0UpIHx8IGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFMikgfHwgZGVm
aW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0U0XzEpCi0jIGlmIGRlZmluZWQoT1BVU19YODZfTUFZ
X0hBVkVfU1NFKQotIyAgaW5jbHVkZSAieDg2L3BpdGNoX3NzZS5jIgotIyBlbmRpZgotIyBpZiBk
ZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpCi0jICBpbmNsdWRlICJ4ODYvcGl0Y2hfc3Nl
Mi5jIgotIyBlbmRpZgotIyBpZiBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTRfMSkKLSMg
IGluY2x1ZGUgIng4Ni9waXRjaF9zc2U0XzEuYyIKLSMgIGluY2x1ZGUgIng4Ni9jZWx0X2xwY19z
c2UuYyIKLSMgZW5kaWYKLSMgaW5jbHVkZSAieDg2L3g4Nl9jZWx0X21hcC5jIgotI2VsaWYgZGVm
aW5lZChPUFVTX0FSTV9BU00pIHx8IGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRS
KQotIyBpbmNsdWRlICJhcm0vYXJtY3B1LmMiCi0jIGlmIGRlZmluZWQoT1BVU19BUk1fTUFZX0hB
VkVfTkVPTl9JTlRSKQotIyAgaW5jbHVkZSAiYXJtL2NlbHRfbmVvbl9pbnRyLmMiCi0jICBpZiBk
ZWZpbmVkKEhBVkVfQVJNX05FMTApCi0jICAgaW5jbHVkZSAia2lzc19mZnQuYyIKLSMgICBpbmNs
dWRlICJtZGN0LmMiCi0jICAgaW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9mZnQuYyIKLSMgICBpbmNs
dWRlICJhcm0vY2VsdF9uZTEwX21kY3QuYyIKLSMgIGVuZGlmCi0jIGVuZGlmCi0jIGluY2x1ZGUg
ImFybS9hcm1fY2VsdF9tYXAuYyIKLSNlbmRpZgorI2luY2x1ZGUgIm1hdGhvcHMuaCIKKyNpbmNs
dWRlICJiYW5kcy5oIgogCiAjaWZkZWYgRklYRURfUE9JTlQKICNkZWZpbmUgV09SRCAiJWQiCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X21kY3QuYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3Vu
aXRfbWRjdC5jCmluZGV4IDhkYmI5Y2FhMmU4Y2ZlODViOGZjMzhlNDEzYjI5MDM4MTFjMzdjODQu
LjRhNTYzY2NmZTNjOTI4NzhiZTAwMThmZTkzYmI1MmM4ZmQ1OGY4YTEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC90ZXN0cy90ZXN0X3VuaXRfbWRjdC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWRjdC5j
CkBAIC0yOSwzOCArMjksMTMgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNlbmRpZgogCi0jZGVm
aW5lIFNLSVBfQ09ORklHX0gKLQotI2lmbmRlZiBDVVNUT01fTU9ERVMKLSNkZWZpbmUgQ1VTVE9N
X01PREVTCi0jZW5kaWYKLQogI2luY2x1ZGUgPHN0ZGlvLmg+CiAKLSNkZWZpbmUgQ0VMVF9DCiAj
aW5jbHVkZSAibWRjdC5oIgogI2luY2x1ZGUgInN0YWNrX2FsbG9jLmgiCi0KLSNpbmNsdWRlICJr
aXNzX2ZmdC5jIgotI2luY2x1ZGUgIm1kY3QuYyIKLSNpbmNsdWRlICJtYXRob3BzLmMiCi0jaW5j
bHVkZSAiZW50Y29kZS5jIgotCi0jaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0UyKSB8
fCBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTRfMSkKLSMgaW5jbHVkZSAieDg2L3g4NmNw
dS5jIgotI2VsaWYgZGVmaW5lZChPUFVTX0FSTV9BU00pIHx8IGRlZmluZWQoT1BVU19BUk1fTUFZ
X0hBVkVfTkVPTl9JTlRSKQotIyBpbmNsdWRlICJhcm0vYXJtY3B1LmMiCi0jIGluY2x1ZGUgInBp
dGNoLmMiCi0jIGluY2x1ZGUgImNlbHRfbHBjLmMiCi0jIGlmIGRlZmluZWQoT1BVU19BUk1fTUFZ
X0hBVkVfTkVPTl9JTlRSKQotIyAgaW5jbHVkZSAiYXJtL2NlbHRfbmVvbl9pbnRyLmMiCi0jICBp
ZiBkZWZpbmVkKEhBVkVfQVJNX05FMTApCi0jICAgaW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9mZnQu
YyIKLSMgICBpbmNsdWRlICJhcm0vY2VsdF9uZTEwX21kY3QuYyIKLSMgIGVuZGlmCi0jIGVuZGlm
Ci0jIGluY2x1ZGUgImFybS9hcm1fY2VsdF9tYXAuYyIKLSNlbmRpZgorI2luY2x1ZGUgImtpc3Nf
ZmZ0LmgiCisjaW5jbHVkZSAibWRjdC5oIgorI2luY2x1ZGUgIm1vZGVzLmgiCiAKICNpZm5kZWYg
TV9QSQogI2RlZmluZSBNX1BJIDMuMTQxNTkyNjUzCkBAIC0xMzAsMTYgKzEwNSwzNiBAQCB2b2lk
IGNoZWNrX2ludihraXNzX2ZmdF9zY2FsYXIgICogaW4sa2lzc19mZnRfc2NhbGFyICAqIG91dCxp
bnQgbmZmdCxpbnQgaXNpbnZlcgogCiB2b2lkIHRlc3QxZChpbnQgbmZmdCxpbnQgaXNpbnZlcnNl
LGludCBhcmNoKQogewotICAgIG1kY3RfbG9va3VwIGNmZzsKICAgICBzaXplX3QgYnVmbGVuID0g
c2l6ZW9mKGtpc3NfZmZ0X3NjYWxhcikqbmZmdDsKLQotICAgIGtpc3NfZmZ0X3NjYWxhciAgKiBp
biA9IChraXNzX2ZmdF9zY2FsYXIqKW1hbGxvYyhidWZsZW4pOwotICAgIGtpc3NfZmZ0X3NjYWxh
ciAgKiBpbl9jb3B5ID0gKGtpc3NfZmZ0X3NjYWxhciopbWFsbG9jKGJ1Zmxlbik7Ci0gICAga2lz
c19mZnRfc2NhbGFyICAqIG91dD0gKGtpc3NfZmZ0X3NjYWxhciopbWFsbG9jKGJ1Zmxlbik7Ci0g
ICAgb3B1c192YWwxNiAgKiB3aW5kb3c9IChvcHVzX3ZhbDE2KiltYWxsb2Moc2l6ZW9mKG9wdXNf
dmFsMTYpKm5mZnQvMik7CisgICAga2lzc19mZnRfc2NhbGFyICppbjsKKyAgICBraXNzX2ZmdF9z
Y2FsYXIgKmluX2NvcHk7CisgICAga2lzc19mZnRfc2NhbGFyICpvdXQ7CisgICAgb3B1c192YWwx
NiAqd2luZG93OwogICAgIGludCBrOwogCi0gICAgY2x0X21kY3RfaW5pdCgmY2ZnLCBuZmZ0LCAw
LCBhcmNoKTsKKyNpZmRlZiBDVVNUT01fTU9ERVMKKyAgICBpbnQgc2hpZnQgPSAwOworICAgIGNv
bnN0IG1kY3RfbG9va3VwICpjZmc7CisgICAgbWRjdF9sb29rdXAgX2NmZzsKKyAgICBjbHRfbWRj
dF9pbml0KCZfY2ZnLCBuZmZ0LCAwLCBhcmNoKTsKKyAgICBjZmcgPSAmX2NmZzsKKyNlbHNlCisg
ICAgaW50IHNoaWZ0OworICAgIGNvbnN0IG1kY3RfbG9va3VwICpjZmc7CisgICAgQ0VMVE1vZGUg
Km1vZGUgPSBvcHVzX2N1c3RvbV9tb2RlX2NyZWF0ZSg0ODAwMCwgOTYwLCBOVUxMKTsKKyAgICBp
ZiAobmZmdCA9PSAxOTIwKSBzaGlmdCA9IDA7CisgICAgZWxzZSBpZiAobmZmdCA9PSA5NjApIHNo
aWZ0ID0gMTsKKyAgICBlbHNlIGlmIChuZmZ0ID09IDQ4MCkgc2hpZnQgPSAyOworICAgIGVsc2Ug
aWYgKG5mZnQgPT0gMjQwKSBzaGlmdCA9IDM7CisgICAgZWxzZSByZXR1cm47CisgICAgY2ZnID0g
Jm1vZGUtPm1kY3Q7CisjZW5kaWYKKworICAgIGluID0gKGtpc3NfZmZ0X3NjYWxhciopbWFsbG9j
KGJ1Zmxlbik7CisgICAgaW5fY29weSA9IChraXNzX2ZmdF9zY2FsYXIqKW1hbGxvYyhidWZsZW4p
OworICAgIG91dCA9IChraXNzX2ZmdF9zY2FsYXIqKW1hbGxvYyhidWZsZW4pOworICAgIHdpbmRv
dyA9IChvcHVzX3ZhbDE2KiltYWxsb2Moc2l6ZW9mKG9wdXNfdmFsMTYpKm5mZnQvMik7CisKICAg
ICBmb3IgKGs9MDtrPG5mZnQ7KytrKSB7CiAgICAgICAgIGluW2tdID0gKHJhbmQoKSAlIDMyNzY4
KSAtIDE2Mzg0OwogICAgIH0KQEAgLTE2NiwxMyArMTYxLDEzIEBAIHZvaWQgdGVzdDFkKGludCBu
ZmZ0LGludCBpc2ludmVyc2UsaW50IGFyY2gpCiAgICAgewogICAgICAgIGZvciAoaz0wO2s8bmZm
dDsrK2spCiAgICAgICAgICAgb3V0W2tdID0gMDsKLSAgICAgICBjbHRfbWRjdF9iYWNrd2FyZCgm
Y2ZnLGluLG91dCwgd2luZG93LCBuZmZ0LzIsIDAsIDEsIGFyY2gpOworICAgICAgIGNsdF9tZGN0
X2JhY2t3YXJkKGNmZyxpbixvdXQsIHdpbmRvdywgbmZmdC8yLCBzaGlmdCwgMSwgYXJjaCk7CiAg
ICAgICAgLyogYXBwbHkgVERBQyBiZWNhdXNlIGNsdF9tZGN0X2JhY2t3YXJkKCkgbm8gbG9uZ2Vy
IGRvZXMgdGhhdCAqLwogICAgICAgIGZvciAoaz0wO2s8bmZmdC80OysraykKICAgICAgICAgICBv
dXRbbmZmdC1rLTFdID0gb3V0W25mZnQvMitrXTsKICAgICAgICBjaGVja19pbnYoaW4sb3V0LG5m
ZnQsaXNpbnZlcnNlKTsKICAgICB9IGVsc2UgewotICAgICAgIGNsdF9tZGN0X2ZvcndhcmQoJmNm
ZyxpbixvdXQsd2luZG93LCBuZmZ0LzIsIDAsIDEsIGFyY2gpOworICAgICAgIGNsdF9tZGN0X2Zv
cndhcmQoY2ZnLGluLG91dCx3aW5kb3csIG5mZnQvMiwgc2hpZnQsIDEsIGFyY2gpOwogICAgICAg
IGNoZWNrKGluX2NvcHksb3V0LG5mZnQsaXNpbnZlcnNlKTsKICAgICB9CiAgICAgLypmb3IgKGs9
MDtrPG5mZnQ7KytrKSBwcmludGYoIiVkICVkICIsIG91dFtrXS5yLCBvdXRba10uaSk7cHJpbnRm
KCJcbiIpOyovCkBAIC0xODIsNyArMTc3LDkgQEAgdm9pZCB0ZXN0MWQoaW50IG5mZnQsaW50IGlz
aW52ZXJzZSxpbnQgYXJjaCkKICAgICBmcmVlKGluX2NvcHkpOwogICAgIGZyZWUob3V0KTsKICAg
ICBmcmVlKHdpbmRvdyk7Ci0gICAgY2x0X21kY3RfY2xlYXIoJmNmZywgYXJjaCk7CisjaWZkZWYg
Q1VTVE9NX01PREVTCisgICAgY2x0X21kY3RfY2xlYXIoJl9jZmcsIGFyY2gpOworI2VuZGlmCiB9
CiAKIGludCBtYWluKGludCBhcmdjLGNoYXIgKiogYXJndikKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0
cy90ZXN0X3VuaXRfcm90YXRpb24uYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24uYwpp
bmRleCAxMDgwYzIwODVkMDJjNWM5NzVmZDBmNWVmOWRkODMyMzAzYWQ5ZTQ1Li4yNjdiOTgzMDFh
YzgzOGNjY2MzZjU4MmI1YjIyOTMzYTY2ZDZjMWU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVz
dF91bml0X3JvdGF0aW9uLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9yb3RhdGlvbi5jCkBA
IC0zNyw0MyArMzcsMTEgQEAKIAogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8c3RkbGli
Lmg+Ci0jaW5jbHVkZSAidnEuYyIKLSNpbmNsdWRlICJjd3JzLmMiCi0jaW5jbHVkZSAiZW50Y29k
ZS5jIgotI2luY2x1ZGUgImVudGVuYy5jIgotI2luY2x1ZGUgImVudGRlYy5jIgotI2luY2x1ZGUg
Im1hdGhvcHMuYyIKKyNpbmNsdWRlICJ2cS5oIgogI2luY2x1ZGUgImJhbmRzLmgiCi0jaW5jbHVk
ZSAicGl0Y2guYyIKLSNpbmNsdWRlICJjZWx0X2xwYy5jIgotI2luY2x1ZGUgImNlbHQuYyIKKyNp
bmNsdWRlICJzdGFja19hbGxvYy5oIgogI2luY2x1ZGUgPG1hdGguaD4KIAotI2lmIGRlZmluZWQo
T1BVU19YODZfTUFZX0hBVkVfU1NFKSB8fCBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIp
IHx8IGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFNF8xKQotIyBpZiBkZWZpbmVkKE9QVVNf
WDg2X01BWV9IQVZFX1NTRSkKLSMgIGluY2x1ZGUgIng4Ni9waXRjaF9zc2UuYyIKLSMgZW5kaWYK
LSMgaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0UyKQotIyAgaW5jbHVkZSAieDg2L3Bp
dGNoX3NzZTIuYyIKLSMgZW5kaWYKLSMgaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0U0
XzEpCi0jICBpbmNsdWRlICJ4ODYvcGl0Y2hfc3NlNF8xLmMiCi0jICBpbmNsdWRlICJ4ODYvY2Vs
dF9scGNfc3NlLmMiCi0jIGVuZGlmCi0jIGluY2x1ZGUgIng4Ni94ODZfY2VsdF9tYXAuYyIKLSNl
bGlmIGRlZmluZWQoT1BVU19BUk1fQVNNKSB8fCBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05F
T05fSU5UUikKLSMgaW5jbHVkZSAiYXJtL2FybWNwdS5jIgotIyBpZiBkZWZpbmVkKE9QVVNfQVJN
X01BWV9IQVZFX05FT05fSU5UUikKLSMgIGluY2x1ZGUgImFybS9jZWx0X25lb25faW50ci5jIgot
IyAgaWYgZGVmaW5lZChIQVZFX0FSTV9ORTEwKQotIyAgIGluY2x1ZGUgImtpc3NfZmZ0LmMiCi0j
ICAgaW5jbHVkZSAibWRjdC5jIgotIyAgIGluY2x1ZGUgImFybS9jZWx0X25lMTBfZmZ0LmMiCi0j
ICAgaW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9tZGN0LmMiCi0jICBlbmRpZgotIyBlbmRpZgotIyBp
bmNsdWRlICJhcm0vYXJtX2NlbHRfbWFwLmMiCi0jZW5kaWYKIAogI2RlZmluZSBNQVhfU0laRSAx
MDAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3ZxLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdnEuYwppbmRleCBkMjlmMzhmZDhlZjc5
MDE1YjYzZDg4MTlhNDhkNDc4Y2E4YmNlNmU2Li44ZWY4MGU1MDdmMjYyZGFkNTVlNWViNmRiYmY1
YWUyYjE0M2FkMTA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdnEuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdnEuYwpAQCAtNjcs
NyArNjcsNyBAQCBzdGF0aWMgdm9pZCBleHBfcm90YXRpb24xKGNlbHRfbm9ybSAqWCwgaW50IGxl
biwgaW50IHN0cmlkZSwgb3B1c192YWwxNiBjLCBvcHVzXwogfQogI2VuZGlmIC8qIE9WRVJSSURF
X3ZxX2V4cF9yb3RhdGlvbjEgKi8KIAotc3RhdGljIHZvaWQgZXhwX3JvdGF0aW9uKGNlbHRfbm9y
bSAqWCwgaW50IGxlbiwgaW50IGRpciwgaW50IHN0cmlkZSwgaW50IEssIGludCBzcHJlYWQpCit2
b2lkIGV4cF9yb3RhdGlvbihjZWx0X25vcm0gKlgsIGludCBsZW4sIGludCBkaXIsIGludCBzdHJp
ZGUsIGludCBLLCBpbnQgc3ByZWFkKQogewogICAgc3RhdGljIGNvbnN0IGludCBTUFJFQURfRkFD
VE9SWzNdPXsxNSwxMCw1fTsKICAgIGludCBpOwpAQCAtMTU4LDQyICsxNTgsMjcgQEAgc3RhdGlj
IHVuc2lnbmVkIGV4dHJhY3RfY29sbGFwc2VfbWFzayhpbnQgKml5LCBpbnQgTiwgaW50IEIpCiAg
ICByZXR1cm4gY29sbGFwc2VfbWFzazsKIH0KIAotdW5zaWduZWQgYWxnX3F1YW50KGNlbHRfbm9y
bSAqWCwgaW50IE4sIGludCBLLCBpbnQgc3ByZWFkLCBpbnQgQiwgZWNfZW5jICplbmMKLSNpZmRl
ZiBSRVNZTlRICi0gICAsIG9wdXNfdmFsMTYgZ2FpbgotI2VuZGlmCi0gICApCitvcHVzX3ZhbDE2
IG9wX3B2cV9zZWFyY2hfYyhjZWx0X25vcm0gKlgsIGludCAqaXksIGludCBLLCBpbnQgTiwgaW50
IGFyY2gpCiB7CiAgICBWQVJERUNMKGNlbHRfbm9ybSwgeSk7Ci0gICBWQVJERUNMKGludCwgaXkp
OwotICAgVkFSREVDTChvcHVzX3ZhbDE2LCBzaWdueCk7CisgICBWQVJERUNMKGludCwgc2lnbngp
OwogICAgaW50IGksIGo7Ci0gICBvcHVzX3ZhbDE2IHM7CiAgICBpbnQgcHVsc2VzTGVmdDsKICAg
IG9wdXNfdmFsMzIgc3VtOwogICAgb3B1c192YWwzMiB4eTsKICAgIG9wdXNfdmFsMTYgeXk7Ci0g
ICB1bnNpZ25lZCBjb2xsYXBzZV9tYXNrOwogICAgU0FWRV9TVEFDSzsKIAotICAgY2VsdF9hc3Nl
cnQyKEs+MCwgImFsZ19xdWFudCgpIG5lZWRzIGF0IGxlYXN0IG9uZSBwdWxzZSIpOwotICAgY2Vs
dF9hc3NlcnQyKE4+MSwgImFsZ19xdWFudCgpIG5lZWRzIGF0IGxlYXN0IHR3byBkaW1lbnNpb25z
Iik7Ci0KKyAgICh2b2lkKWFyY2g7CiAgICBBTExPQyh5LCBOLCBjZWx0X25vcm0pOwotICAgQUxM
T0MoaXksIE4sIGludCk7Ci0gICBBTExPQyhzaWdueCwgTiwgb3B1c192YWwxNik7Ci0KLSAgIGV4
cF9yb3RhdGlvbihYLCBOLCAxLCBCLCBLLCBzcHJlYWQpOworICAgQUxMT0Moc2lnbngsIE4sIGlu
dCk7CiAKICAgIC8qIEdldCByaWQgb2YgdGhlIHNpZ24gKi8KICAgIHN1bSA9IDA7CiAgICBqPTA7
IGRvIHsKLSAgICAgIGlmIChYW2pdPjApCi0gICAgICAgICBzaWdueFtqXT0xOwotICAgICAgZWxz
ZSB7Ci0gICAgICAgICBzaWdueFtqXT0tMTsKLSAgICAgICAgIFhbal09LVhbal07Ci0gICAgICB9
CisgICAgICBzaWdueFtqXSA9IFhbal08MDsKKyAgICAgIC8qIE9QVDogTWFrZSBzdXJlIHRoZSBj
b21waWxlciBkb2Vzbid0IHVzZSBhIGJyYW5jaCBvbiBBQlMxNigpLiAqLworICAgICAgWFtqXSA9
IEFCUzE2KFhbal0pOwogICAgICAgaXlbal0gPSAwOwogICAgICAgeVtqXSA9IDA7CiAgICB9IHdo
aWxlICgrK2o8Tik7CkBAIC0yMjUsNyArMjEwLDEyIEBAIHVuc2lnbmVkIGFsZ19xdWFudChjZWx0
X25vcm0gKlgsIGludCBOLCBpbnQgSywgaW50IHNwcmVhZCwgaW50IEIsIGVjX2VuYyAqZW5jCiAg
ICAgICAgICB3aGlsZSAoKytqPE4pOwogICAgICAgICAgc3VtID0gUUNPTlNUMTYoMS5mLDE0KTsK
ICAgICAgIH0KLSAgICAgIHJjcCA9IEVYVFJBQ1QxNihNVUxUMTZfMzJfUTE2KEstMSwgY2VsdF9y
Y3Aoc3VtKSkpOworI2lmZGVmIEZJWEVEX1BPSU5UCisgICAgICByY3AgPSBFWFRSQUNUMTYoTVVM
VDE2XzMyX1ExNihLLCBjZWx0X3JjcChzdW0pKSk7CisjZWxzZQorICAgICAgLyogVXNpbmcgSytl
IHdpdGggZSA8IDEgZ3VhcmFudGVlcyB3ZSBjYW5ub3QgZ2V0IG1vcmUgdGhhbiBLIHB1bHNlcy4g
Ki8KKyAgICAgIHJjcCA9IEVYVFJBQ1QxNihNVUxUMTZfMzJfUTE2KEsrMC44ZiwgY2VsdF9yY3Ao
c3VtKSkpOworI2VuZGlmCiAgICAgICBqPTA7IGRvIHsKICNpZmRlZiBGSVhFRF9QT0lOVAogICAg
ICAgICAgLyogSXQncyByZWFsbHkgaW1wb3J0YW50IHRvIHJvdW5kICp0b3dhcmRzIHplcm8qIGhl
cmUgKi8KQEAgLTI0MCw3ICsyMzAsNyBAQCB1bnNpZ25lZCBhbGdfcXVhbnQoY2VsdF9ub3JtICpY
LCBpbnQgTiwgaW50IEssIGludCBzcHJlYWQsIGludCBCLCBlY19lbmMgKmVuYwogICAgICAgICAg
cHVsc2VzTGVmdCAtPSBpeVtqXTsKICAgICAgIH0gIHdoaWxlICgrK2o8Tik7CiAgICB9Ci0gICBj
ZWx0X2Fzc2VydDIocHVsc2VzTGVmdD49MSwgIkFsbG9jYXRlZCB0b28gbWFueSBwdWxzZXMgaW4g
dGhlIHF1aWNrIHBhc3MiKTsKKyAgIGNlbHRfYXNzZXJ0MihwdWxzZXNMZWZ0Pj0wLCAiQWxsb2Nh
dGVkIHRvbyBtYW55IHB1bHNlcyBpbiB0aGUgcXVpY2sgcGFzcyIpOwogCiAgICAvKiBUaGlzIHNo
b3VsZCBuZXZlciBoYXBwZW4sIGJ1dCBqdXN0IGluIGNhc2UgaXQgZG9lcyAoZS5nLiBvbiBzaWxl
bmNlKQogICAgICAgd2UgZmlsbCB0aGUgZmlyc3QgYmluIHdpdGggcHVsc2VzLiAqLwpAQCAtMjU2
LDEyICsyNDYsMTIgQEAgdW5zaWduZWQgYWxnX3F1YW50KGNlbHRfbm9ybSAqWCwgaW50IE4sIGlu
dCBLLCBpbnQgc3ByZWFkLCBpbnQgQiwgZWNfZW5jICplbmMKICAgICAgIHB1bHNlc0xlZnQ9MDsK
ICAgIH0KIAotICAgcyA9IDE7CiAgICBmb3IgKGk9MDtpPHB1bHNlc0xlZnQ7aSsrKQogICAgewor
ICAgICAgb3B1c192YWwxNiBSeHksIFJ5eTsKICAgICAgIGludCBiZXN0X2lkOwotICAgICAgb3B1
c192YWwzMiBiZXN0X251bSA9IC1WRVJZX0xBUkdFMTY7Ci0gICAgICBvcHVzX3ZhbDE2IGJlc3Rf
ZGVuID0gMDsKKyAgICAgIG9wdXNfdmFsMzIgYmVzdF9udW07CisgICAgICBvcHVzX3ZhbDE2IGJl
c3RfZGVuOwogI2lmZGVmIEZJWEVEX1BPSU5UCiAgICAgICBpbnQgcnNoaWZ0OwogI2VuZGlmCkBA
IC0yNzIsOSArMjYyLDIyIEBAIHVuc2lnbmVkIGFsZ19xdWFudChjZWx0X25vcm0gKlgsIGludCBO
LCBpbnQgSywgaW50IHNwcmVhZCwgaW50IEIsIGVjX2VuYyAqZW5jCiAgICAgICAvKiBUaGUgc3F1
YXJlZCBtYWduaXR1ZGUgdGVybSBnZXRzIGFkZGVkIGFueXdheSwgc28gd2UgbWlnaHQgYXMgd2Vs
bAogICAgICAgICAgYWRkIGl0IG91dHNpZGUgdGhlIGxvb3AgKi8KICAgICAgIHl5ID0gQUREMTYo
eXksIDEpOwotICAgICAgaj0wOworCisgICAgICAvKiBDYWxjdWxhdGlvbnMgZm9yIHBvc2l0aW9u
IDAgYXJlIG91dCBvZiB0aGUgbG9vcCwgaW4gcGFydCB0byByZWR1Y2UKKyAgICAgICAgIG1pc3By
ZWRpY3RlZCBicmFuY2hlcyAoc2luY2UgdGhlIGlmIGNvbmRpdGlvbiBpcyB1c3VhbGx5IGZhbHNl
KQorICAgICAgICAgaW4gdGhlIGxvb3AuICovCisgICAgICAvKiBUZW1wb3Jhcnkgc3VtcyBvZiB0
aGUgbmV3IHB1bHNlKHMpICovCisgICAgICBSeHkgPSBFWFRSQUNUMTYoU0hSMzIoQUREMzIoeHks
IEVYVEVORDMyKFhbMF0pKSxyc2hpZnQpKTsKKyAgICAgIC8qIFdlJ3JlIG11bHRpcGx5aW5nIHlb
al0gYnkgdHdvIHNvIHdlIGRvbid0IGhhdmUgdG8gZG8gaXQgaGVyZSAqLworICAgICAgUnl5ID0g
QUREMTYoeXksIHlbMF0pOworCisgICAgICAvKiBBcHByb3hpbWF0ZSBzY29yZTogd2UgbWF4aW1p
c2UgUnh5L3NxcnQoUnl5KSAod2UncmUgZ3VhcmFudGVlZCB0aGF0CisgICAgICAgICBSeHkgaXMg
cG9zaXRpdmUgYmVjYXVzZSB0aGUgc2lnbiBpcyBwcmUtY29tcHV0ZWQpICovCisgICAgICBSeHkg
PSBNVUxUMTZfMTZfUTE1KFJ4eSxSeHkpOworICAgICAgYmVzdF9kZW4gPSBSeXk7CisgICAgICBi
ZXN0X251bSA9IFJ4eTsKKyAgICAgIGo9MTsKICAgICAgIGRvIHsKLSAgICAgICAgIG9wdXNfdmFs
MTYgUnh5LCBSeXk7CiAgICAgICAgICAvKiBUZW1wb3Jhcnkgc3VtcyBvZiB0aGUgbmV3IHB1bHNl
KHMpICovCiAgICAgICAgICBSeHkgPSBFWFRSQUNUMTYoU0hSMzIoQUREMzIoeHksIEVYVEVORDMy
KFhbal0pKSxyc2hpZnQpKTsKICAgICAgICAgIC8qIFdlJ3JlIG11bHRpcGx5aW5nIHlbal0gYnkg
dHdvIHNvIHdlIGRvbid0IGhhdmUgdG8gZG8gaXQgaGVyZSAqLwpAQCAtMjg1LDggKzI4OCwxMSBA
QCB1bnNpZ25lZCBhbGdfcXVhbnQoY2VsdF9ub3JtICpYLCBpbnQgTiwgaW50IEssIGludCBzcHJl
YWQsIGludCBCLCBlY19lbmMgKmVuYwogICAgICAgICAgUnh5ID0gTVVMVDE2XzE2X1ExNShSeHks
Unh5KTsKICAgICAgICAgIC8qIFRoZSBpZGVhIGlzIHRvIGNoZWNrIGZvciBudW0vZGVuID49IGJl
c3RfbnVtL2Jlc3RfZGVuLCBidXQgdGhhdCB3YXkKICAgICAgICAgICAgIHdlIGNhbiBkbyBpdCB3
aXRob3V0IGFueSBkaXZpc2lvbiAqLwotICAgICAgICAgLyogT1BUOiBNYWtlIHN1cmUgdG8gdXNl
IGNvbmRpdGlvbmFsIG1vdmVzIGhlcmUgKi8KLSAgICAgICAgIGlmIChNVUxUMTZfMTYoYmVzdF9k
ZW4sIFJ4eSkgPiBNVUxUMTZfMTYoUnl5LCBiZXN0X251bSkpCisgICAgICAgICAvKiBPUFQ6IEl0
J3Mgbm90IGNsZWFyIHdoZXRoZXIgYSBjbW92IGlzIGZhc3RlciB0aGFuIGEgYnJhbmNoIGhlcmUK
KyAgICAgICAgICAgIHNpbmNlIHRoZSBjb25kaXRpb24gaXMgbW9yZSBvZnRlbiBmYWxzZSB0aGFu
IHRydWUgYW5kIHVzaW5nCisgICAgICAgICAgICBhIGNtb3YgaW50cm9kdWNlcyBkYXRhIGRlcGVu
ZGVuY2llcyBhY3Jvc3MgaXRlcmF0aW9ucy4gVGhlIG9wdGltYWwKKyAgICAgICAgICAgIGNob2lj
ZSBtYXkgYmUgYXJjaGl0ZWN0dXJlLWRlcGVuZGVudC4gKi8KKyAgICAgICAgIGlmIChvcHVzX3Vu
bGlrZWx5KE1VTFQxNl8xNihiZXN0X2RlbiwgUnh5KSA+IE1VTFQxNl8xNihSeXksIGJlc3RfbnVt
KSkpCiAgICAgICAgICB7CiAgICAgICAgICAgICBiZXN0X2RlbiA9IFJ5eTsKICAgICAgICAgICAg
IGJlc3RfbnVtID0gUnh5OwpAQCAtMzAxLDIzICszMDcsNDcgQEAgdW5zaWduZWQgYWxnX3F1YW50
KGNlbHRfbm9ybSAqWCwgaW50IE4sIGludCBLLCBpbnQgc3ByZWFkLCBpbnQgQiwgZWNfZW5jICpl
bmMKIAogICAgICAgLyogT25seSBub3cgdGhhdCB3ZSd2ZSBtYWRlIHRoZSBmaW5hbCBjaG9pY2Us
IHVwZGF0ZSB5L2l5ICovCiAgICAgICAvKiBNdWx0aXBseWluZyB5W2pdIGJ5IDIgc28gd2UgZG9u
J3QgaGF2ZSB0byBkbyBpdCBldmVyeXdoZXJlIGVsc2UgKi8KLSAgICAgIHlbYmVzdF9pZF0gKz0g
MipzOworICAgICAgeVtiZXN0X2lkXSArPSAyOwogICAgICAgaXlbYmVzdF9pZF0rKzsKICAgIH0K
IAogICAgLyogUHV0IHRoZSBvcmlnaW5hbCBzaWduIGJhY2sgKi8KICAgIGo9MDsKICAgIGRvIHsK
LSAgICAgIFhbal0gPSBNVUxUMTZfMTYoc2lnbnhbal0sWFtqXSk7Ci0gICAgICBpZiAoc2lnbnhb
al0gPCAwKQotICAgICAgICAgaXlbal0gPSAtaXlbal07CisgICAgICAvKml5W2pdID0gc2lnbnhb
al0gPyAtaXlbal0gOiBpeVtqXTsqLworICAgICAgLyogT1BUOiBUaGUgaXMgbW9yZSBsaWtlbHkg
dG8gYmUgY29tcGlsZWQgd2l0aG91dCBhIGJyYW5jaCB0aGFuIHRoZSBjb2RlIGFib3ZlCisgICAg
ICAgICBidXQgaGFzIHRoZSBzYW1lIHBlcmZvcm1hbmNlIG90aGVyd2lzZS4gKi8KKyAgICAgIGl5
W2pdID0gKGl5W2pdXi1zaWdueFtqXSkgKyBzaWdueFtqXTsKICAgIH0gd2hpbGUgKCsrajxOKTsK
KyAgIFJFU1RPUkVfU1RBQ0s7CisgICByZXR1cm4geXk7Cit9CisKK3Vuc2lnbmVkIGFsZ19xdWFu
dChjZWx0X25vcm0gKlgsIGludCBOLCBpbnQgSywgaW50IHNwcmVhZCwgaW50IEIsIGVjX2VuYyAq
ZW5jLAorICAgICAgb3B1c192YWwxNiBnYWluLCBpbnQgcmVzeW50aCwgaW50IGFyY2gpCit7Cisg
ICBWQVJERUNMKGludCwgaXkpOworICAgb3B1c192YWwxNiB5eTsKKyAgIHVuc2lnbmVkIGNvbGxh
cHNlX21hc2s7CisgICBTQVZFX1NUQUNLOworCisgICBjZWx0X2Fzc2VydDIoSz4wLCAiYWxnX3F1
YW50KCkgbmVlZHMgYXQgbGVhc3Qgb25lIHB1bHNlIik7CisgICBjZWx0X2Fzc2VydDIoTj4xLCAi
YWxnX3F1YW50KCkgbmVlZHMgYXQgbGVhc3QgdHdvIGRpbWVuc2lvbnMiKTsKKworICAgLyogQ292
ZXJzIHZlY3Rvcml6YXRpb24gYnkgdXAgdG8gNC4gKi8KKyAgIEFMTE9DKGl5LCBOKzMsIGludCk7
CisKKyAgIGV4cF9yb3RhdGlvbihYLCBOLCAxLCBCLCBLLCBzcHJlYWQpOworCisgICB5eSA9IG9w
X3B2cV9zZWFyY2goWCwgaXksIEssIE4sIGFyY2gpOworCiAgICBlbmNvZGVfcHVsc2VzKGl5LCBO
LCBLLCBlbmMpOwogCi0jaWZkZWYgUkVTWU5USAotICAgbm9ybWFsaXNlX3Jlc2lkdWFsKGl5LCBY
LCBOLCB5eSwgZ2Fpbik7Ci0gICBleHBfcm90YXRpb24oWCwgTiwgLTEsIEIsIEssIHNwcmVhZCk7
Ci0jZW5kaWYKKyAgIGlmIChyZXN5bnRoKQorICAgeworICAgICAgbm9ybWFsaXNlX3Jlc2lkdWFs
KGl5LCBYLCBOLCB5eSwgZ2Fpbik7CisgICAgICBleHBfcm90YXRpb24oWCwgTiwgLTEsIEIsIEss
IHNwcmVhZCk7CisgICB9CiAKICAgIGNvbGxhcHNlX21hc2sgPSBleHRyYWN0X2NvbGxhcHNlX21h
c2soaXksIE4sIEIpOwogICAgUkVTVE9SRV9TVEFDSzsKQEAgLTQwMSw3ICs0MzEsNyBAQCBpbnQg
c3RlcmVvX2l0aGV0YShjb25zdCBjZWx0X25vcm0gKlgsIGNvbnN0IGNlbHRfbm9ybSAqWSwgaW50
IHN0ZXJlbywgaW50IE4sIGludAogICAgLyogMC42MzY2MiA9IDIvcGkgKi8KICAgIGl0aGV0YSA9
IE1VTFQxNl8xNl9RMTUoUUNPTlNUMTYoMC42MzY2MmYsMTUpLGNlbHRfYXRhbjJwKHNpZGUsIG1p
ZCkpOwogI2Vsc2UKLSAgIGl0aGV0YSA9IChpbnQpZmxvb3IoLjVmKzE2Mzg0KjAuNjM2NjJmKmF0
YW4yKHNpZGUsbWlkKSk7CisgICBpdGhldGEgPSAoaW50KWZsb29yKC41ZisxNjM4NCowLjYzNjYy
ZipmYXN0X2F0YW4yZihzaWRlLG1pZCkpOwogI2VuZGlmCiAKICAgIHJldHVybiBpdGhldGE7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQvdnEuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC92cS5oCmluZGV4IDVjZmNiZTUwZWEwNWUwNzIxZDEx
NGEyODMzMzliNWRjYTQ5Mjg1MjcuLjBkZmU2YWYwNTgyMzk4NmNhZDI3ZjExZWFkNjAxMjUyYTMw
NDg1NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC92cS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC92cS5oCkBAIC0zNywxMCArMzcs
MjIgQEAKICNpbmNsdWRlICJlbnRkZWMuaCIKICNpbmNsdWRlICJtb2Rlcy5oIgogCisjaWYgKGRl
ZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFMikgJiYgIWRlZmluZWQoRklYRURfUE9JTlQpKQor
I2luY2x1ZGUgIng4Ni92cV9zc2UuaCIKKyNlbmRpZgorCiAjaWYgZGVmaW5lZChNSVBTcjFfQVNN
KQogI2luY2x1ZGUgIm1pcHMvdnFfbWlwc3IxLmgiCiAjZW5kaWYKIAordm9pZCBleHBfcm90YXRp
b24oY2VsdF9ub3JtICpYLCBpbnQgbGVuLCBpbnQgZGlyLCBpbnQgc3RyaWRlLCBpbnQgSywgaW50
IHNwcmVhZCk7CisKK29wdXNfdmFsMTYgb3BfcHZxX3NlYXJjaF9jKGNlbHRfbm9ybSAqWCwgaW50
ICppeSwgaW50IEssIGludCBOLCBpbnQgYXJjaCk7CisKKyNpZiAhZGVmaW5lZChPVkVSUklERV9P
UF9QVlFfU0VBUkNIKQorI2RlZmluZSBvcF9wdnFfc2VhcmNoKHgsIGl5LCBLLCBOLCBhcmNoKSBc
CisgICAgKG9wX3B2cV9zZWFyY2hfYyh4LCBpeSwgSywgTiwgYXJjaCkpCisjZW5kaWYKIAogLyoq
IEFsZ2VicmFpYyBwdWxzZS12ZWN0b3IgcXVhbnRpc2VyLiBUaGUgc2lnbmFsIHggaXMgcmVwbGFj
ZWQgYnkgdGhlIHN1bSBvZgogICAqIHRoZSBwaXRjaCBhbmQgYSBjb21iaW5hdGlvbiBvZiBwdWxz
ZXMgc3VjaCB0aGF0IGl0cyBub3JtIGlzIHN0aWxsIGVxdWFsCkBAIC01MSwxMiArNjMsOCBAQAog
ICogQHBhcmFtIGVuYyBFbnRyb3B5IGVuY29kZXIgc3RhdGUKICAqIEByZXQgQSBtYXNrIGluZGlj
YXRpbmcgd2hpY2ggYmxvY2tzIGluIHRoZSBiYW5kIHJlY2VpdmVkIHB1bHNlcwogKi8KLXVuc2ln
bmVkIGFsZ19xdWFudChjZWx0X25vcm0gKlgsIGludCBOLCBpbnQgSywgaW50IHNwcmVhZCwgaW50
IEIsCi0gICAgICBlY19lbmMgKmVuYwotI2lmZGVmIFJFU1lOVEgKLSAgICAgICwgb3B1c192YWwx
NiBnYWluCi0jZW5kaWYKLSAgICAgICk7Cit1bnNpZ25lZCBhbGdfcXVhbnQoY2VsdF9ub3JtICpY
LCBpbnQgTiwgaW50IEssIGludCBzcHJlYWQsIGludCBCLCBlY19lbmMgKmVuYywKKyAgICAgIG9w
dXNfdmFsMTYgZ2FpbiwgaW50IHJlc3ludGgsIGludCBhcmNoKTsKIAogLyoqIEFsZ2VicmFpYyBw
dWxzZSBkZWNvZGVyCiAgKiBAcGFyYW0gWCBEZWNvZGVkIG5vcm1hbGlzZWQgc3BlY3RydW0gKHJl
dHVybmVkKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni9jZWx0X2xwY19zc2UuYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvY2Vs
dF9scGNfc3NlLmMKaW5kZXggNjdlNTU5MmFjZjNjYTZiN2Y4MTdkNmRkOWYxN2Q5OWRlMWRhMjVi
MC4uNTQ3ODU2ODg0OWFhNDJlYTc4ZGI2ZGIyNjgyYWJmN2VkMTUwZmZhNiAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L3g4Ni9jZWx0X2xwY19zc2UuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L2NlbHRfbHBjX3NzZS5jCkBAIC00
MCw2NSArNDAsMjMgQEAKIAogI2lmIGRlZmluZWQoRklYRURfUE9JTlQpCiAKLXZvaWQgY2VsdF9m
aXJfc3NlNF8xKGNvbnN0IG9wdXNfdmFsMTYgKl94LAordm9pZCBjZWx0X2Zpcl9zc2U0XzEoY29u
c3Qgb3B1c192YWwxNiAqeCwKICAgICAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKm51bSwKLSAgICAg
ICAgIG9wdXNfdmFsMTYgKl95LAorICAgICAgICAgb3B1c192YWwxNiAqeSwKICAgICAgICAgIGlu
dCBOLAogICAgICAgICAgaW50IG9yZCwKLSAgICAgICAgIG9wdXNfdmFsMTYgKm1lbSwKICAgICAg
ICAgIGludCBhcmNoKQogewogICAgIGludCBpLGo7CiAgICAgVkFSREVDTChvcHVzX3ZhbDE2LCBy
bnVtKTsKLSAgICBWQVJERUNMKG9wdXNfdmFsMTYsIHgpOwogCiAgICAgX19tMTI4aSB2ZWNOb0E7
CiAgICAgb3B1c19pbnQzMiBub0EgOwogICAgIFNBVkVfU1RBQ0s7CiAKICAgIEFMTE9DKHJudW0s
IG9yZCwgb3B1c192YWwxNik7Ci0gICBBTExPQyh4LCBOK29yZCwgb3B1c192YWwxNik7CiAgICBm
b3IoaT0wO2k8b3JkO2krKykKICAgICAgIHJudW1baV0gPSBudW1bb3JkLWktMV07Ci0gICBmb3Io
aT0wO2k8b3JkO2krKykKLSAgICAgIHhbaV0gPSBtZW1bb3JkLWktMV07Ci0KLSAgIGZvciAoaT0w
O2k8Ti03O2krPTgpCi0gICB7Ci0gICAgICAgeFtpK29yZCAgXT1feFtpICBdOwotICAgICAgIHhb
aStvcmQrMV09X3hbaSsxXTsKLSAgICAgICB4W2krb3JkKzJdPV94W2krMl07Ci0gICAgICAgeFtp
K29yZCszXT1feFtpKzNdOwotICAgICAgIHhbaStvcmQrNF09X3hbaSs0XTsKLSAgICAgICB4W2kr
b3JkKzVdPV94W2krNV07Ci0gICAgICAgeFtpK29yZCs2XT1feFtpKzZdOwotICAgICAgIHhbaStv
cmQrN109X3hbaSs3XTsKLSAgIH0KLQotICAgZm9yICg7aTxOLTM7aSs9NCkKLSAgIHsKLSAgICAg
ICB4W2krb3JkICBdPV94W2kgIF07Ci0gICAgICAgeFtpK29yZCsxXT1feFtpKzFdOwotICAgICAg
IHhbaStvcmQrMl09X3hbaSsyXTsKLSAgICAgICB4W2krb3JkKzNdPV94W2krM107Ci0gICB9Ci0K
LSAgIGZvciAoO2k8TjtpKyspCi0gICAgICAgICB4W2krb3JkXT1feFtpXTsKLQotICAgZm9yKGk9
MDtpPG9yZDtpKyspCi0gICAgICBtZW1baV0gPSBfeFtOLWktMV07Ci0jaWZkZWYgU01BTExfRk9P
VFBSSU5UCi0gICBmb3IgKGk9MDtpPE47aSsrKQotICAgewotICAgICAgb3B1c192YWwzMiBzdW0g
PSBTSEwzMihFWFRFTkQzMihfeFtpXSksIFNJR19TSElGVCk7Ci0gICAgICBmb3IgKGo9MDtqPG9y
ZDtqKyspCi0gICAgICB7Ci0gICAgICAgICBzdW0gPSBNQUMxNl8xNihzdW0scm51bVtqXSx4W2kr
al0pOwotICAgICAgfQotICAgICAgX3lbaV0gPSBTQVRVUkFURTE2KFBTSFIzMihzdW0sIFNJR19T
SElGVCkpOwotICAgfQotI2Vsc2UKICAgIG5vQSA9IEVYVEVORDMyKDEpIDw8IFNJR19TSElGVCA+
PiAxOwogICAgdmVjTm9BID0gX21tX3NldF9lcGkzMihub0EsIG5vQSwgbm9BLCBub0EpOwogCkBA
IC0xMDcsMjUgKzY1LDI0IEBAIHZvaWQgY2VsdF9maXJfc3NlNF8xKGNvbnN0IG9wdXNfdmFsMTYg
Kl94LAogICAgICAgb3B1c192YWwzMiBzdW1zWzRdID0gezB9OwogICAgICAgX19tMTI4aSB2ZWNT
dW0sIHZlY1g7CiAKLSAgICAgIHhjb3JyX2tlcm5lbChybnVtLCB4K2ksIHN1bXMsIG9yZCwgYXJj
aCk7CisgICAgICB4Y29ycl9rZXJuZWwocm51bSwgeCtpLW9yZCwgc3Vtcywgb3JkLCBhcmNoKTsK
IAogICAgICAgdmVjU3VtID0gX21tX2xvYWR1X3NpMTI4KChfX20xMjhpICopc3Vtcyk7CiAgICAg
ICB2ZWNTdW0gPSBfbW1fYWRkX2VwaTMyKHZlY1N1bSwgdmVjTm9BKTsKICAgICAgIHZlY1N1bSA9
IF9tbV9zcmFpX2VwaTMyKHZlY1N1bSwgU0lHX1NISUZUKTsKLSAgICAgIHZlY1ggPSBPUF9DVlRF
UEkxNl9FUEkzMl9NNjQoX3ggKyBpKTsKKyAgICAgIHZlY1ggPSBPUF9DVlRFUEkxNl9FUEkzMl9N
NjQoeCArIGkpOwogICAgICAgdmVjU3VtID0gX21tX2FkZF9lcGkzMih2ZWNTdW0sIHZlY1gpOwog
ICAgICAgdmVjU3VtID0gX21tX3BhY2tzX2VwaTMyKHZlY1N1bSwgdmVjU3VtKTsKLSAgICAgIF9t
bV9zdG9yZWxfZXBpNjQoKF9fbTEyOGkgKikoX3kgKyBpKSwgdmVjU3VtKTsKKyAgICAgIF9tbV9z
dG9yZWxfZXBpNjQoKF9fbTEyOGkgKikoeSArIGkpLCB2ZWNTdW0pOwogICAgfQogICAgZm9yICg7
aTxOO2krKykKICAgIHsKICAgICAgIG9wdXNfdmFsMzIgc3VtID0gMDsKICAgICAgIGZvciAoaj0w
O2o8b3JkO2orKykKLSAgICAgICAgIHN1bSA9IE1BQzE2XzE2KHN1bSwgcm51bVtqXSwgeFtpICsg
al0pOwotICAgICAgX3lbaV0gPSBTQVRVUkFURTE2KEFERDMyKEVYVEVORDMyKF94W2ldKSwgUFNI
UjMyKHN1bSwgU0lHX1NISUZUKSkpOworICAgICAgICAgc3VtID0gTUFDMTZfMTYoc3VtLCBybnVt
W2pdLCB4W2krai1vcmRdKTsKKyAgICAgIHlbaV0gPSBTQVRVUkFURTE2KEFERDMyKEVYVEVORDMy
KHhbaV0pLCBQU0hSMzIoc3VtLCBTSUdfU0hJRlQpKSk7CiAgICB9CiAKLSNlbmRpZgogICAgUkVT
VE9SRV9TVEFDSzsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni9jZWx0X2xwY19zc2UuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC94ODYvY2VsdF9scGNfc3NlLmgKaW5kZXggYzVlYzc5NmVkNTI1ZTBmZjYxNGI2NWIxZDNmMzky
OGU3Yzk0MWYzZS4uN2QxZWNmNzUzMzI4MmRiYzc4MmZlNWJlNTQ1OTNmNGUyMzVhNDBkNSAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9jZWx0L3g4Ni9jZWx0X2xwY19zc2UuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L2NlbHRfbHBjX3Nz
ZS5oCkBAIC00MSwxMiArNDEsMTEgQEAgdm9pZCBjZWx0X2Zpcl9zc2U0XzEoCiAgICAgICAgICBv
cHVzX3ZhbDE2ICp5LAogICAgICAgICAgaW50IE4sCiAgICAgICAgICBpbnQgb3JkLAotICAgICAg
ICAgb3B1c192YWwxNiAqbWVtLAogICAgICAgICAgaW50IGFyY2gpOwogCiAjaWYgZGVmaW5lZChP
UFVTX1g4Nl9QUkVTVU1FX1NTRTRfMSkKLSNkZWZpbmUgY2VsdF9maXIoeCwgbnVtLCB5LCBOLCBv
cmQsIG1lbSwgYXJjaCkgXAotICAgICgodm9pZClhcmNoLCBjZWx0X2Zpcl9zc2U0XzEoeCwgbnVt
LCB5LCBOLCBvcmQsIG1lbSwgYXJjaCkpCisjZGVmaW5lIGNlbHRfZmlyKHgsIG51bSwgeSwgTiwg
b3JkLCBhcmNoKSBcCisgICAgKCh2b2lkKWFyY2gsIGNlbHRfZmlyX3NzZTRfMSh4LCBudW0sIHks
IE4sIG9yZCwgYXJjaCkpCiAKICNlbHNlCiAKQEAgLTU2LDExICs1NSwxMCBAQCBleHRlcm4gdm9p
ZCAoKmNvbnN0IENFTFRfRklSX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKICAgICAgICAgIG9w
dXNfdmFsMTYgKnksCiAgICAgICAgICBpbnQgTiwKICAgICAgICAgIGludCBvcmQsCi0gICAgICAg
ICBvcHVzX3ZhbDE2ICptZW0sCiAgICAgICAgICBpbnQgYXJjaCk7CiAKLSMgIGRlZmluZSBjZWx0
X2Zpcih4LCBudW0sIHksIE4sIG9yZCwgbWVtLCBhcmNoKSBcCi0gICAgKCgqQ0VMVF9GSVJfSU1Q
TFsoYXJjaCkgJiBPUFVTX0FSQ0hNQVNLXSkoeCwgbnVtLCB5LCBOLCBvcmQsIG1lbSwgYXJjaCkp
CisjICBkZWZpbmUgY2VsdF9maXIoeCwgbnVtLCB5LCBOLCBvcmQsIGFyY2gpIFwKKyAgICAoKCpD
RUxUX0ZJUl9JTVBMWyhhcmNoKSAmIE9QVVNfQVJDSE1BU0tdKSh4LCBudW0sIHksIE4sIG9yZCwg
YXJjaCkpCiAKICNlbmRpZgogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L3ZxX3NzZS5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L3g4Ni92cV9zc2UuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNGVmZThmMjQ5Zjg5M2VkMTYwMDQwZWM4MjVi
MmE3NjQ3ZTE5MmJiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni92cV9zc2UuaApAQCAtMCww
ICsxLDUwIEBACisvKiBDb3B5cmlnaHQgKGMpIDIwMTYgIEplYW4tTWFyYyBWYWxpbiAqLworLyoK
KyAgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgICBhcmUgbWV0OgorCisgICAtIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisKKyAgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisK
KyAgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMKKyAgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICAgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQgT1dORVIKKyAgIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworICAgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyovCisKKyNpZm5kZWYgVlFfU1NFX0gKKyNkZWZpbmUgVlFfU1NFX0gKKworI2lmIGRlZmlu
ZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFMikgJiYgIWRlZmluZWQoRklYRURfUE9JTlQpCisjZGVm
aW5lIE9WRVJSSURFX09QX1BWUV9TRUFSQ0gKKworb3B1c192YWwxNiBvcF9wdnFfc2VhcmNoX3Nz
ZTIoY2VsdF9ub3JtICpfWCwgaW50ICppeSwgaW50IEssIGludCBOLCBpbnQgYXJjaCk7CisKKyNp
ZiBkZWZpbmVkKE9QVVNfWDg2X1BSRVNVTUVfU1NFMikKKyNkZWZpbmUgb3BfcHZxX3NlYXJjaCh4
LCBpeSwgSywgTiwgYXJjaCkgXAorICAgIChvcF9wdnFfc2VhcmNoX3NzZTIoeCwgaXksIEssIE4s
IGFyY2gpKQorCisjZWxzZQorCitleHRlcm4gb3B1c192YWwxNiAoKmNvbnN0IE9QX1BWUV9TRUFS
Q0hfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKAorICAgICAgY2VsdF9ub3JtICpfWCwgaW50ICpp
eSwgaW50IEssIGludCBOLCBpbnQgYXJjaCk7CisKKyMgIGRlZmluZSBvcF9wdnFfc2VhcmNoKFgs
IGl5LCBLLCBOLCBhcmNoKSBcCisgICAgKCgqT1BfUFZRX1NFQVJDSF9JTVBMWyhhcmNoKSAmIE9Q
VVNfQVJDSE1BU0tdKShYLCBpeSwgSywgTiwgYXJjaCkpCisKKyNlbmRpZgorI2VuZGlmCisKKyNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni92cV9zc2UyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L3ZxX3NzZTIuYwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi42YTMxNzcwMzU4YjdkNDE2NDcxZTE1NzZkZDg1MmM4YjIwODc4YmU3Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni92cV9zc2UyLmMKQEAgLTAsMCArMSwyMTcgQEAKKy8qIENv
cHlyaWdodCAoYykgMjAwNy0yMDA4IENTSVJPCisgICBDb3B5cmlnaHQgKGMpIDIwMDctMjAwOSBY
aXBoLk9yZyBGb3VuZGF0aW9uCisgICBDb3B5cmlnaHQgKGMpIDIwMDctMjAxNiBKZWFuLU1hcmMg
VmFsaW4gKi8KKy8qCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKwor
ICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IKKyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSCisgICBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAgIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAgIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUgorICAgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgorICAgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcKKyAgIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUworICAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisqLworCisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1ZGUgImNv
bmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDx4bW1pbnRyaW4uaD4KKyNpbmNsdWRlIDxlbW1p
bnRyaW4uaD4KKyNpbmNsdWRlICJjZWx0X2xwYy5oIgorI2luY2x1ZGUgInN0YWNrX2FsbG9jLmgi
CisjaW5jbHVkZSAibWF0aG9wcy5oIgorI2luY2x1ZGUgInZxLmgiCisjaW5jbHVkZSAieDg2Y3B1
LmgiCisKKworI2lmbmRlZiBGSVhFRF9QT0lOVAorCitvcHVzX3ZhbDE2IG9wX3B2cV9zZWFyY2hf
c3NlMihjZWx0X25vcm0gKl9YLCBpbnQgKml5LCBpbnQgSywgaW50IE4sIGludCBhcmNoKQorewor
ICAgaW50IGksIGo7CisgICBpbnQgcHVsc2VzTGVmdDsKKyAgIGZsb2F0IHh5LCB5eTsKKyAgIFZB
UkRFQ0woY2VsdF9ub3JtLCB5KTsKKyAgIFZBUkRFQ0woY2VsdF9ub3JtLCBYKTsKKyAgIFZBUkRF
Q0woZmxvYXQsIHNpZ255KTsKKyAgIF9fbTEyOCBzaWdubWFzazsKKyAgIF9fbTEyOCBzdW1zOwor
ICAgX19tMTI4aSBmb3VyczsKKyAgIFNBVkVfU1RBQ0s7CisKKyAgICh2b2lkKWFyY2g7CisgICAv
KiBBbGwgYml0cyBzZXQgdG8gemVybywgZXhjZXB0IGZvciB0aGUgc2lnbiBiaXQuICovCisgICBz
aWdubWFzayA9IF9tbV9zZXRfcHMxKC0wLmYpOworICAgZm91cnMgPSBfbW1fc2V0X2VwaTMyKDQs
IDQsIDQsIDQpOworICAgQUxMT0MoeSwgTiszLCBjZWx0X25vcm0pOworICAgQUxMT0MoWCwgTisz
LCBjZWx0X25vcm0pOworICAgQUxMT0Moc2lnbnksIE4rMywgZmxvYXQpOworCisgICBPUFVTX0NP
UFkoWCwgX1gsIE4pOworICAgWFtOXSA9IFhbTisxXSA9IFhbTisyXSA9IDA7CisgICBzdW1zID0g
X21tX3NldHplcm9fcHMoKTsKKyAgIGZvciAoaj0wO2o8TjtqKz00KQorICAgeworICAgICAgX19t
MTI4IHg0LCBzNDsKKyAgICAgIHg0ID0gX21tX2xvYWR1X3BzKCZYW2pdKTsKKyAgICAgIHM0ID0g
X21tX2NtcGx0X3BzKHg0LCBfbW1fc2V0emVyb19wcygpKTsKKyAgICAgIC8qIEdldCByaWQgb2Yg
dGhlIHNpZ24gKi8KKyAgICAgIHg0ID0gX21tX2FuZG5vdF9wcyhzaWdubWFzaywgeDQpOworICAg
ICAgc3VtcyA9IF9tbV9hZGRfcHMoc3VtcywgeDQpOworICAgICAgLyogQ2xlYXIgeSBhbmQgaXkg
aW4gY2FzZSB3ZSBkb24ndCBkbyB0aGUgcHJvamVjdGlvbi4gKi8KKyAgICAgIF9tbV9zdG9yZXVf
cHMoJnlbal0sIF9tbV9zZXR6ZXJvX3BzKCkpOworICAgICAgX21tX3N0b3JldV9zaTEyOCgoX19t
MTI4aSopJml5W2pdLCBfbW1fc2V0emVyb19zaTEyOCgpKTsKKyAgICAgIF9tbV9zdG9yZXVfcHMo
Jlhbal0sIHg0KTsKKyAgICAgIF9tbV9zdG9yZXVfcHMoJnNpZ255W2pdLCBzNCk7CisgICB9Cisg
ICBzdW1zID0gX21tX2FkZF9wcyhzdW1zLCBfbW1fc2h1ZmZsZV9wcyhzdW1zLCBzdW1zLCBfTU1f
U0hVRkZMRSgxLCAwLCAzLCAyKSkpOworICAgc3VtcyA9IF9tbV9hZGRfcHMoc3VtcywgX21tX3No
dWZmbGVfcHMoc3Vtcywgc3VtcywgX01NX1NIVUZGTEUoMiwgMywgMCwgMSkpKTsKKworICAgeHkg
PSB5eSA9IDA7CisKKyAgIHB1bHNlc0xlZnQgPSBLOworCisgICAvKiBEbyBhIHByZS1zZWFyY2gg
YnkgcHJvamVjdGluZyBvbiB0aGUgcHlyYW1pZCAqLworICAgaWYgKEsgPiAoTj4+MSkpCisgICB7
CisgICAgICBfX20xMjhpIHB1bHNlc19zdW07CisgICAgICBfX20xMjggeXk0LCB4eTQ7CisgICAg
ICBfX20xMjggcmNwNDsKKyAgICAgIG9wdXNfdmFsMzIgc3VtID0gX21tX2N2dHNzX2YzMihzdW1z
KTsKKyAgICAgIC8qIElmIFggaXMgdG9vIHNtYWxsLCBqdXN0IHJlcGxhY2UgaXQgd2l0aCBhIHB1
bHNlIGF0IDAgKi8KKyAgICAgIC8qIFByZXZlbnRzIGluZmluaXRpZXMgYW5kIE5hTnMgZnJvbSBj
YXVzaW5nIHRvbyBtYW55IHB1bHNlcworICAgICAgICAgdG8gYmUgYWxsb2NhdGVkLiA2NCBpcyBh
biBhcHByb3hpbWF0aW9uIG9mIGluZmluaXR5IGhlcmUuICovCisgICAgICBpZiAoIShzdW0gPiBF
UFNJTE9OICYmIHN1bSA8IDY0KSkKKyAgICAgIHsKKyAgICAgICAgIFhbMF0gPSBRQ09OU1QxNigx
LmYsMTQpOworICAgICAgICAgaj0xOyBkbworICAgICAgICAgICAgWFtqXT0wOworICAgICAgICAg
d2hpbGUgKCsrajxOKTsKKyAgICAgICAgIHN1bXMgPSBfbW1fc2V0X3BzMSgxLmYpOworICAgICAg
fQorICAgICAgLyogVXNpbmcgSytlIHdpdGggZSA8IDEgZ3VhcmFudGVlcyB3ZSBjYW5ub3QgZ2V0
IG1vcmUgdGhhbiBLIHB1bHNlcy4gKi8KKyAgICAgIHJjcDQgPSBfbW1fbXVsX3BzKF9tbV9zZXRf
cHMxKChmbG9hdCkoSysuOCkpLCBfbW1fcmNwX3BzKHN1bXMpKTsKKyAgICAgIHh5NCA9IHl5NCA9
IF9tbV9zZXR6ZXJvX3BzKCk7CisgICAgICBwdWxzZXNfc3VtID0gX21tX3NldHplcm9fc2kxMjgo
KTsKKyAgICAgIGZvciAoaj0wO2o8TjtqKz00KQorICAgICAgeworICAgICAgICAgX19tMTI4IHJ4
NCwgeDQsIHk0OworICAgICAgICAgX19tMTI4aSBpeTQ7CisgICAgICAgICB4NCA9IF9tbV9sb2Fk
dV9wcygmWFtqXSk7CisgICAgICAgICByeDQgPSBfbW1fbXVsX3BzKHg0LCByY3A0KTsKKyAgICAg
ICAgIGl5NCA9IF9tbV9jdnR0cHNfZXBpMzIocng0KTsKKyAgICAgICAgIHB1bHNlc19zdW0gPSBf
bW1fYWRkX2VwaTMyKHB1bHNlc19zdW0sIGl5NCk7CisgICAgICAgICBfbW1fc3RvcmV1X3NpMTI4
KChfX20xMjhpKikmaXlbal0sIGl5NCk7CisgICAgICAgICB5NCA9IF9tbV9jdnRlcGkzMl9wcyhp
eTQpOworICAgICAgICAgeHk0ID0gX21tX2FkZF9wcyh4eTQsIF9tbV9tdWxfcHMoeDQsIHk0KSk7
CisgICAgICAgICB5eTQgPSBfbW1fYWRkX3BzKHl5NCwgX21tX211bF9wcyh5NCwgeTQpKTsKKyAg
ICAgICAgIC8qIGRvdWJsZSB0aGUgeVtdIHZlY3RvciBzbyB3ZSBkb24ndCBoYXZlIHRvIGRvIGl0
IGluIHRoZSBzZWFyY2ggbG9vcC4gKi8KKyAgICAgICAgIF9tbV9zdG9yZXVfcHMoJnlbal0sIF9t
bV9hZGRfcHMoeTQsIHk0KSk7CisgICAgICB9CisgICAgICBwdWxzZXNfc3VtID0gX21tX2FkZF9l
cGkzMihwdWxzZXNfc3VtLCBfbW1fc2h1ZmZsZV9lcGkzMihwdWxzZXNfc3VtLCBfTU1fU0hVRkZM
RSgxLCAwLCAzLCAyKSkpOworICAgICAgcHVsc2VzX3N1bSA9IF9tbV9hZGRfZXBpMzIocHVsc2Vz
X3N1bSwgX21tX3NodWZmbGVfZXBpMzIocHVsc2VzX3N1bSwgX01NX1NIVUZGTEUoMiwgMywgMCwg
MSkpKTsKKyAgICAgIHB1bHNlc0xlZnQgLT0gX21tX2N2dHNpMTI4X3NpMzIocHVsc2VzX3N1bSk7
CisgICAgICB4eTQgPSBfbW1fYWRkX3BzKHh5NCwgX21tX3NodWZmbGVfcHMoeHk0LCB4eTQsIF9N
TV9TSFVGRkxFKDEsIDAsIDMsIDIpKSk7CisgICAgICB4eTQgPSBfbW1fYWRkX3BzKHh5NCwgX21t
X3NodWZmbGVfcHMoeHk0LCB4eTQsIF9NTV9TSFVGRkxFKDIsIDMsIDAsIDEpKSk7CisgICAgICB4
eSA9IF9tbV9jdnRzc19mMzIoeHk0KTsKKyAgICAgIHl5NCA9IF9tbV9hZGRfcHMoeXk0LCBfbW1f
c2h1ZmZsZV9wcyh5eTQsIHl5NCwgX01NX1NIVUZGTEUoMSwgMCwgMywgMikpKTsKKyAgICAgIHl5
NCA9IF9tbV9hZGRfcHMoeXk0LCBfbW1fc2h1ZmZsZV9wcyh5eTQsIHl5NCwgX01NX1NIVUZGTEUo
MiwgMywgMCwgMSkpKTsKKyAgICAgIHl5ID0gX21tX2N2dHNzX2YzMih5eTQpOworICAgfQorICAg
WFtOXSA9IFhbTisxXSA9IFhbTisyXSA9IC0xMDA7CisgICB5W05dID0geVtOKzFdID0geVtOKzJd
ID0gMTAwOworICAgY2VsdF9hc3NlcnQyKHB1bHNlc0xlZnQ+PTAsICJBbGxvY2F0ZWQgdG9vIG1h
bnkgcHVsc2VzIGluIHRoZSBxdWljayBwYXNzIik7CisKKyAgIC8qIFRoaXMgc2hvdWxkIG5ldmVy
IGhhcHBlbiwgYnV0IGp1c3QgaW4gY2FzZSBpdCBkb2VzIChlLmcuIG9uIHNpbGVuY2UpCisgICAg
ICB3ZSBmaWxsIHRoZSBmaXJzdCBiaW4gd2l0aCBwdWxzZXMuICovCisgICBpZiAocHVsc2VzTGVm
dCA+IE4rMykKKyAgIHsKKyAgICAgIG9wdXNfdmFsMTYgdG1wID0gKG9wdXNfdmFsMTYpcHVsc2Vz
TGVmdDsKKyAgICAgIHl5ID0gTUFDMTZfMTYoeXksIHRtcCwgdG1wKTsKKyAgICAgIHl5ID0gTUFD
MTZfMTYoeXksIHRtcCwgeVswXSk7CisgICAgICBpeVswXSArPSBwdWxzZXNMZWZ0OworICAgICAg
cHVsc2VzTGVmdD0wOworICAgfQorCisgICBmb3IgKGk9MDtpPHB1bHNlc0xlZnQ7aSsrKQorICAg
eworICAgICAgaW50IGJlc3RfaWQ7CisgICAgICBfX20xMjggeHk0LCB5eTQ7CisgICAgICBfX20x
MjggbWF4LCBtYXgyOworICAgICAgX19tMTI4aSBjb3VudDsKKyAgICAgIF9fbTEyOGkgcG9zOwor
ICAgICAgLyogVGhlIHNxdWFyZWQgbWFnbml0dWRlIHRlcm0gZ2V0cyBhZGRlZCBhbnl3YXksIHNv
IHdlIG1pZ2h0IGFzIHdlbGwKKyAgICAgICAgIGFkZCBpdCBvdXRzaWRlIHRoZSBsb29wICovCisg
ICAgICB5eSA9IEFERDE2KHl5LCAxKTsKKyAgICAgIHh5NCA9IF9tbV9sb2FkMV9wcygmeHkpOwor
ICAgICAgeXk0ID0gX21tX2xvYWQxX3BzKCZ5eSk7CisgICAgICBtYXggPSBfbW1fc2V0emVyb19w
cygpOworICAgICAgcG9zID0gX21tX3NldHplcm9fc2kxMjgoKTsKKyAgICAgIGNvdW50ID0gX21t
X3NldF9lcGkzMigzLCAyLCAxLCAwKTsKKyAgICAgIGZvciAoaj0wO2o8TjtqKz00KQorICAgICAg
eworICAgICAgICAgX19tMTI4IHg0LCB5NCwgcjQ7CisgICAgICAgICB4NCA9IF9tbV9sb2FkdV9w
cygmWFtqXSk7CisgICAgICAgICB5NCA9IF9tbV9sb2FkdV9wcygmeVtqXSk7CisgICAgICAgICB4
NCA9IF9tbV9hZGRfcHMoeDQsIHh5NCk7CisgICAgICAgICB5NCA9IF9tbV9hZGRfcHMoeTQsIHl5
NCk7CisgICAgICAgICB5NCA9IF9tbV9yc3FydF9wcyh5NCk7CisgICAgICAgICByNCA9IF9tbV9t
dWxfcHMoeDQsIHk0KTsKKyAgICAgICAgIC8qIFVwZGF0ZSB0aGUgaW5kZXggb2YgdGhlIG1heC4g
Ki8KKyAgICAgICAgIHBvcyA9IF9tbV9tYXhfZXBpMTYocG9zLCBfbW1fYW5kX3NpMTI4KGNvdW50
LCBfbW1fY2FzdHBzX3NpMTI4KF9tbV9jbXBndF9wcyhyNCwgbWF4KSkpKTsKKyAgICAgICAgIC8q
IFVwZGF0ZSB0aGUgbWF4LiAqLworICAgICAgICAgbWF4ID0gX21tX21heF9wcyhtYXgsIHI0KTsK
KyAgICAgICAgIC8qIFVwZGF0ZSB0aGUgaW5kaWNlcyAoKzQpICovCisgICAgICAgICBjb3VudCA9
IF9tbV9hZGRfZXBpMzIoY291bnQsIGZvdXJzKTsKKyAgICAgIH0KKyAgICAgIC8qIEhvcml6b250
YWwgbWF4ICovCisgICAgICBtYXgyID0gX21tX21heF9wcyhtYXgsIF9tbV9zaHVmZmxlX3BzKG1h
eCwgbWF4LCBfTU1fU0hVRkZMRSgxLCAwLCAzLCAyKSkpOworICAgICAgbWF4MiA9IF9tbV9tYXhf
cHMobWF4MiwgX21tX3NodWZmbGVfcHMobWF4MiwgbWF4MiwgX01NX1NIVUZGTEUoMiwgMywgMCwg
MSkpKTsKKyAgICAgIC8qIE5vdyB0aGF0IG1heDIgY29udGFpbnMgdGhlIG1heCBhdCBhbGwgcG9z
aXRpb25zLCBsb29rIGF0IHdoaWNoIHZhbHVlKHMpIG9mIHRoZQorICAgICAgICAgcGFydGlhbCBt
YXggaXMgZXF1YWwgdG8gdGhlIGdsb2JhbCBtYXguICovCisgICAgICBwb3MgPSBfbW1fYW5kX3Np
MTI4KHBvcywgX21tX2Nhc3Rwc19zaTEyOChfbW1fY21wZXFfcHMobWF4LCBtYXgyKSkpOworICAg
ICAgcG9zID0gX21tX21heF9lcGkxNihwb3MsIF9tbV91bnBhY2toaV9lcGk2NChwb3MsIHBvcykp
OworICAgICAgcG9zID0gX21tX21heF9lcGkxNihwb3MsIF9tbV9zaHVmZmxlbG9fZXBpMTYocG9z
LCBfTU1fU0hVRkZMRSgxLCAwLCAzLCAyKSkpOworICAgICAgYmVzdF9pZCA9IF9tbV9jdnRzaTEy
OF9zaTMyKHBvcyk7CisKKyAgICAgIC8qIFVwZGF0aW5nIHRoZSBzdW1zIG9mIHRoZSBuZXcgcHVs
c2UocykgKi8KKyAgICAgIHh5ID0gQUREMzIoeHksIEVYVEVORDMyKFhbYmVzdF9pZF0pKTsKKyAg
ICAgIC8qIFdlJ3JlIG11bHRpcGx5aW5nIHlbal0gYnkgdHdvIHNvIHdlIGRvbid0IGhhdmUgdG8g
ZG8gaXQgaGVyZSAqLworICAgICAgeXkgPSBBREQxNih5eSwgeVtiZXN0X2lkXSk7CisKKyAgICAg
IC8qIE9ubHkgbm93IHRoYXQgd2UndmUgbWFkZSB0aGUgZmluYWwgY2hvaWNlLCB1cGRhdGUgeS9p
eSAqLworICAgICAgLyogTXVsdGlwbHlpbmcgeVtqXSBieSAyIHNvIHdlIGRvbid0IGhhdmUgdG8g
ZG8gaXQgZXZlcnl3aGVyZSBlbHNlICovCisgICAgICB5W2Jlc3RfaWRdICs9IDI7CisgICAgICBp
eVtiZXN0X2lkXSsrOworICAgfQorCisgICAvKiBQdXQgdGhlIG9yaWdpbmFsIHNpZ24gYmFjayAq
LworICAgZm9yIChqPTA7ajxOO2orPTQpCisgICB7CisgICAgICBfX20xMjhpIHk0OworICAgICAg
X19tMTI4aSBzNDsKKyAgICAgIHk0ID0gX21tX2xvYWR1X3NpMTI4KChfX20xMjhpKikmaXlbal0p
OworICAgICAgczQgPSBfbW1fY2FzdHBzX3NpMTI4KF9tbV9sb2FkdV9wcygmc2lnbnlbal0pKTsK
KyAgICAgIHk0ID0gX21tX3hvcl9zaTEyOChfbW1fYWRkX2VwaTMyKHk0LCBzNCksIHM0KTsKKyAg
ICAgIF9tbV9zdG9yZXVfc2kxMjgoKF9fbTEyOGkqKSZpeVtqXSwgeTQpOworICAgfQorICAgUkVT
VE9SRV9TVEFDSzsKKyAgIHJldHVybiB5eTsKK30KKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
eDg2L3g4Nl9jZWx0X21hcC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni94ODZfY2VsdF9tYXAuYwppbmRleCA0N2JhNDFi
OWVlZmQ1ZTNkY2Y0ZTRmOGY1OTA4YjFjYjBjNWVhZTVhLi5kMzlkODhlZGVjZDU3MTkzOTczMTU3
MDFhZTNiOTNkYmNmMGE3NjdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2L3g4Nl9jZWx0X21hcC5jCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC94ODYveDg2X2NlbHRfbWFwLmMKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJj
ZWx0X2xwYy5oIgogI2luY2x1ZGUgInBpdGNoLmgiCiAjaW5jbHVkZSAicGl0Y2hfc3NlLmgiCisj
aW5jbHVkZSAidnEuaCIKIAogI2lmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpCiAKQEAgLTQ2LDcg
KzQ3LDYgQEAgdm9pZCAoKmNvbnN0IENFTFRfRklSX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgK
ICAgICAgICAgIG9wdXNfdmFsMTYgICAgICAgKnksCiAgICAgICAgICBpbnQgICAgICAgICAgICAg
IE4sCiAgICAgICAgICBpbnQgICAgICAgICAgICAgIG9yZCwKLSAgICAgICAgIG9wdXNfdmFsMTYg
ICAgICAgKm1lbSwKICAgICAgICAgIGludCAgICAgICAgICAgICAgYXJjaAogKSA9IHsKICAgY2Vs
dF9maXJfYywgICAgICAgICAgICAgICAgLyogbm9uLXNzZSAqLwpAQCAtMTUxLDUgKzE1MSwxNyBA
QCB2b2lkICgqY29uc3QgQ09NQl9GSUxURVJfQ09OU1RfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0p
KAogCiAjZW5kaWYKIAorI2lmIGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFMikgJiYgIWRl
ZmluZWQoT1BVU19YODZfUFJFU1VNRV9TU0UyKQorb3B1c192YWwxNiAoKmNvbnN0IE9QX1BWUV9T
RUFSQ0hfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKAorICAgICAgY2VsdF9ub3JtICpfWCwgaW50
ICppeSwgaW50IEssIGludCBOLCBpbnQgYXJjaAorKSA9IHsKKyAgb3BfcHZxX3NlYXJjaF9jLCAg
ICAgICAgICAgICAgICAvKiBub24tc3NlICovCisgIG9wX3B2cV9zZWFyY2hfYywKKyAgTUFZX0hB
VkVfU1NFMihvcF9wdnFfc2VhcmNoKSwKKyAgTUFZX0hBVkVfU1NFMihvcF9wdnFfc2VhcmNoKSwK
KyAgTUFZX0hBVkVfU1NFMihvcF9wdnFfc2VhcmNoKQorfTsKKyNlbmRpZgorCiAjZW5kaWYKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jb25maWd1cmUuYWMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NvbmZpZ3VyZS5hYwppbmRleCBjNTI3ZTM2
ODRkNmNmNWVhY2ZjMjc4MDVhZmUzZTNkN2Y4MjNhMTA3Li41ZmZhMmQzOGU3MGNlNjVjMzkwZDkw
MjBiNDExMzRiOWY1N2QyMDkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NvbmZpZ3VyZS5hYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NvbmZpZ3Vy
ZS5hYwpAQCAtMjIsOSArMjIsOSBAQCBtNF9pZmRlZihbQU1fU0lMRU5UX1JVTEVTXSwgW0FNX1NJ
TEVOVF9SVUxFUyhbeWVzXSldKQogCiAjIEZvciBsaWJ0b29sLgogZG5sIFBsZWFzZSB1cGRhdGUg
dGhlc2UgZm9yIHJlbGVhc2VzLgotT1BVU19MVF9DVVJSRU5UPTUKLU9QVVNfTFRfUkVWSVNJT049
MwotT1BVU19MVF9BR0U9NQorT1BVU19MVF9DVVJSRU5UPTYKK09QVVNfTFRfUkVWSVNJT049MQor
T1BVU19MVF9BR0U9NgogCiBBQ19TVUJTVChPUFVTX0xUX0NVUlJFTlQpCiBBQ19TVUJTVChPUFVT
X0xUX1JFVklTSU9OKQpAQCAtNDIxLDEyICs0MjEsMTIgQEAgQUNfREVGVU4oW09QVVNfUEFUSF9O
RTEwXSwKICAgICAgIGZpCiAKICAgICAgIEFDX01TR19DSEVDS0lORyhmb3IgTkUxMCkKLSAgICAg
IHNhdmVfQ0ZMQUdTPSIkQ0ZMQUdTIjsgQ0ZMQUdTPSIkTkUxMF9DRkxBR1MiCi0gICAgICBzYXZl
X0xJQlM9IiRMSUJTIjsgTElCUz0iJE5FMTBfTElCUyAkTElCTSIKKyAgICAgIHNhdmVfQ0ZMQUdT
PSIkQ0ZMQUdTIjsgQ0ZMQUdTPSIkQ0ZMQUdTICRORTEwX0NGTEFHUyIKKyAgICAgIHNhdmVfTElC
Uz0iJExJQlMiOyBMSUJTPSIkTElCUyAkTkUxMF9MSUJTICRMSUJNIgogICAgICAgQUNfTElOS19J
RkVMU0UoCiAgICAgICAgICBbCiAgICAgICAgICAgICBBQ19MQU5HX1BST0dSQU0oCi0gICAgICAg
ICAgICAgICBbWyNpbmNsdWRlIDxORTEwX2luaXQuaD4KKyAgICAgICAgICAgICAgIFtbI2luY2x1
ZGUgPE5FMTBfZHNwLmg+CiAgICAgICAgICAgICAgICBdXSwKICAgICAgICAgICAgICAgIFtbCiAg
ICAgICAgICAgICAgICAgICBuZTEwX2ZmdF9jZmdfZmxvYXQzMl90IGNmZzsKQEAgLTcxNSw3ICs3
MTUsNyBAQCBBU19JRihbdGVzdCB4IiRlbmFibGVfaW50cmluc2ljcyIgPSB4InllcyJdLFsKICAg
ICAgICAgICAgIF1dKV0sCiAgICAgICAgICAgICBbQUNfTVNHX1JFU1VMVChbQyBtZXRob2RdKQog
ICAgICAgICAgICAgICAgICBBQ19ERUZJTkUoW0NQVV9JTkZPX0JZX0NdLCBbMV0sIFtHZXQgQ1BV
IEluZm8gYnkgYyBtZXRob2RdKV0sCi0gICAgICAgICAgICBbQUNfTVNHX0VSUk9SKFtubyBzdXBw
b3J0ZWQgR2V0IENQVSBJbmZvIG1ldGhvZCwgcGxlYXNlIGRpc2FibGUgaW50cmluc2ljc10pXSld
KV0pCisgICAgICAgICAgICBbQUNfTVNHX0VSUk9SKFtubyBzdXBwb3J0ZWQgR2V0IENQVSBJbmZv
IG1ldGhvZCwgcGxlYXNlIGRpc2FibGUgcnVuLXRpbWUgQ1BVIGNhcGFiaWxpdGllcyBkZXRlY3Rp
b24gb3IgaW50cmluc2ljc10pXSldKV0pCiAgICBdLAogICAgWwogICAgICAgQUNfTVNHX1dBUk4o
W05vIGludHJpbnNpY3Mgc3VwcG9ydCBmb3IgeW91ciBhcmNoaXRlY3R1cmVdKQpAQCAtNzY3LDYg
Kzc2NywxNSBAQCBBU19JRihbdGVzdCAiJGVuYWJsZV9mdXp6aW5nIiA9ICJ5ZXMiXSwgWwogICBB
Q19ERUZJTkUoW0ZVWlpJTkddLCBbMV0sIFtGdXp6aW5nXSkKIF0pCiAKK0FDX0FSR19FTkFCTEUo
W2NoZWNrLWFzbV0sCisgICAgW0FTX0hFTFBfU1RSSU5HKFstLWVuYWJsZS1jaGVjay1hc21dLAor
ICAgICAgICAgICAgICAgICAgICBbZW5hYmxlIGJpdC1leGFjdG5lc3MgY2hlY2tzIGJldHdlZW4g
b3B0aW1pemVkIGFuZCBjIGltcGxlbWVudGF0aW9uc10pXSwsCisgICAgW2VuYWJsZV9jaGVja19h
c209bm9dKQorCitBU19JRihbdGVzdCAiJGVuYWJsZV9jaGVja19hc20iID0gInllcyJdLCBbCisg
IEFDX0RFRklORShbT1BVU19DSEVDS19BU01dLCBbMV0sIFtSdW4gYml0LWV4YWN0bmVzcyBjaGVj
a3MgYmV0d2VlbiBvcHRpbWl6ZWQgYW5kIGMgaW1wbGVtZW50YXRpb25zXSkKK10pCisKIEFDX0FS
R19FTkFCTEUoW2FtYmlzb25pY3NdLAogICAgIFtBU19IRUxQX1NUUklORyhbLS1lbmFibGUtYW1i
aXNvbmljc10sW2VuYWJsZSBleHBlcmltZW50YWwgYW1iaXNvbmljIGVuY29kaW5nIGFuZCBkZWNv
ZGluZyBzdXBwb3J0XSldLCwKICAgICBbZW5hYmxlX2FtYmlzb25pY3M9bm9dKQpAQCAtNzgxLDYg
Kzc5MCw3IEBAIEFDX0FSR19FTkFCTEUoW2RvY10sCiAKIEFTX0lGKFt0ZXN0ICIkZW5hYmxlX2Rv
YyIgPSAieWVzIl0sIFsKICAgQUNfQ0hFQ0tfUFJPRyhIQVZFX0RPWFlHRU4sIFtkb3h5Z2VuXSwg
W3llc10sIFtub10pCisgIEFDX0NIRUNLX1BST0coSEFWRV9ET1QsIFtkb3RdLCBbeWVzXSwgW25v
XSkKIF0sWwogICBIQVZFX0RPWFlHRU49bm8KIF0pCkBAIC03OTQsNiArODA0LDE1IEBAIEFDX0FS
R19FTkFCTEUoW2V4dHJhLXByb2dyYW1zXSwKIEFNX0NPTkRJVElPTkFMKFtFWFRSQV9QUk9HUkFN
U10sIFt0ZXN0ICIkZW5hYmxlX2V4dHJhX3Byb2dyYW1zIiA9ICJ5ZXMiXSkKIAogCitBQ19BUkdf
RU5BQkxFKFt1cGRhdGUtZHJhZnRdLAorICBBU19IRUxQX1NUUklORyhbLS1lbmFibGUtdXBkYXRl
LWRyYWZ0XSwgW0VuYWJsZSBiaXRzdHJlYW0gY2hhbmdlcyBmcm9tIGRyYWZ0LWlldGYtY29kZWMt
b3B1cy11cGRhdGVdKSwsCisgIFtlbmFibGVfdXBkYXRlX2RyYWZ0PW5vXSkKKworQVNfSUYoW3Rl
c3QgIiRlbmFibGVfdXBkYXRlX2RyYWZ0IiA9ICJ5ZXMiXSwgWworICBBQ19ERUZJTkUoW0VOQUJM
RV9VUERBVEVfRFJBRlRdLCBbMV0sIFtFbmFibGUgYml0c3RyZWFtIGNoYW5nZXMgZnJvbSBkcmFm
dC1pZXRmLWNvZGVjLW9wdXMtdXBkYXRlXSkKK10pCisKKwogc2F2ZWRfQ0ZMQUdTPSIkQ0ZMQUdT
IgogQ0ZMQUdTPSIkQ0ZMQUdTIC1mdmlzaWJpbGl0eT1oaWRkZW4iCiBBQ19NU0dfQ0hFQ0tJTkco
W2lmICR7Q0N9IHN1cHBvcnRzIC1mdmlzaWJpbGl0eT1oaWRkZW5dKQpAQCAtODU5LDcgKzg3OCw4
IEBAIEFDX01TR19OT1RJQ0UoWwogICAgICAgQ3VzdG9tIG1vZGVzOiAuLi4uLi4uLi4uLi4uLi4u
Li4gJHtlbmFibGVfY3VzdG9tX21vZGVzfQogICAgICAgQXNzZXJ0aW9uIGNoZWNraW5nOiAuLi4u
Li4uLi4uLi4gJHtlbmFibGVfYXNzZXJ0aW9uc30KICAgICAgIEZ1enppbmc6IC4uLi4uLi4uLi4u
Li4uLi4uLi4uLi4uICR7ZW5hYmxlX2Z1enppbmd9Ci0gICAgICBBbWJpc29uaWNzIHN1cHBvcnQ6
IC4uLi4uLi4uLi4uLi4ke2VuYWJsZV9hbWJpc29uaWNzfQorICAgICAgQ2hlY2sgQVNNOiAuLi4u
Li4uLi4uLi4uLi4uLi4uLi4gJHtlbmFibGVfY2hlY2tfYXNtfQorICAgICAgQW1iaXNvbmljcyBz
dXBwb3J0OiAuLi4uLi4uLi4uLi4gJHtlbmFibGVfYW1iaXNvbmljc30KIAogICAgICAgQVBJIGRv
Y3VtZW50YXRpb246IC4uLi4uLi4uLi4uLi4gJHtlbmFibGVfZG9jfQogICAgICAgRXh0cmEgcHJv
Z3JhbXM6IC4uLi4uLi4uLi4uLi4uLi4gJHtlbmFibGVfZXh0cmFfcHJvZ3JhbXN9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2RvYy9Eb3h5ZmlsZS5pbiBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL0RveHlmaWxlLmluCmluZGV4IGNkNzc2NzUyZDQ5Njdk
ZGU2MThmOTAwNzI3ZDY3MDVlNWRjODdhMGYuLjM2ZWVlMGI1MzgwYjgwNDMyNzk2MzEwMjY3ODUy
Y2IxNjJhNDZiZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL0RveHlmaWxlLmluCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL0RveHlmaWxl
LmluCkBAIC0zMTgsMyArMzE4LDE4IEBAIFBSRURFRklORUQgICAgICAgICAgICAgPSBPUFVTX0VY
UE9SVD0gXAogICAgICAgICAgICAgICAgICAgICAgICAgIE9QVVNfQ1VTVE9NX0VYUE9SVF9TVEFU
SUM9IFwKICAgICAgICAgICAgICAgICAgICAgICAgICBPUFVTX1dBUk5fVU5VU0VEX1JFU1VMVD0g
XAogICAgICAgICAgICAgICAgICAgICAgICAgIE9QVVNfQVJHX05PTk5VTEwoX3gpPQorCisjLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tCisjIENvbmZpZ3VyYXRpb24gb3B0aW9ucyByZWxhdGVkIHRvIHRoZSBk
b3QgdG9vbAorIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisjIElmIHlvdSBzZXQgdGhlIEhBVkVfRE9U
IHRhZyB0byBZRVMgdGhlbiBkb3h5Z2VuIHdpbGwgYXNzdW1lIHRoZSBkb3QgdG9vbCBpcworIyBh
dmFpbGFibGUgZnJvbSB0aGUgcGF0aC4gVGhpcyB0b29sIGlzIHBhcnQgb2YgR3JhcGh2aXogKHNl
ZToKKyMgaHR0cDovL3d3dy5ncmFwaHZpei5vcmcvKSwgYSBncmFwaCB2aXN1YWxpemF0aW9uIHRv
b2xraXQgZnJvbSBBVCZUIGFuZCBMdWNlbnQKKyMgQmVsbCBMYWJzLgorCisjIERlYmlhbiBkZWZh
dWx0cyB0byBZRVMgaGVyZSwgd2hpbGUgRmVkb3JhIGFuZCBIb21lYnJldyBkZWZhdWx0IHRvIE5P
LgorIyBTbyB3ZSBzZXQgdGhpcyBiYXNlZCBvbiB3aGV0aGVyIHRoZSBncmFwaHZpeiBwYWNrYWdl
IGlzIGF2YWlsYWJsZSBhdAorIyBjb25maWd1cmUgdGltZS4KKyMKK0hBVkVfRE9UID0gQEhBVkVf
RE9UQApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9kb2MvVE9ETyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL1RPRE8KZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDllMWMyZDUxM2M0ZDQ5ZjRhMWQyZWJmMTIzZWNjMWI1ZjdjMWE2NjcuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvVE9ETworKysgL2Rl
di9udWxsCkBAIC0xLDcgKzAsMCBAQAotZGVmaW5lIGF1ZGlvIGJhbmR3aWR0aCBhcyBmcmVxdWVu
Y3kgcmFuZ2UKLQotcmVwZWF0IHBhZGRpbmcgcmVjb21tZW5kYXRpb24KLQotcHRpbWU6IHJlZmVy
IHRvIFJGQwotCi1PcHVzIGRvZXMgbm90IHByb3ZpZGUgYW55IGNvbmZpZGVudGlhbGl0eSBvciBp
bnRlZ3JpdHkgcHJvdGVjdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvYnVpbGRfZHJhZnQuc2ggYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9i
dWlsZF9kcmFmdC5zaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMTViMjJhNzliMzQ2YzBlYWZkMDQ0ZWUxZTBiNGEy
NjI3NTg0ZDkyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvYnVpbGRfZHJhZnQuc2gKQEAgLTAsMCAr
MSwxMDQgQEAKKyMhL2Jpbi9zaAorCisjIENvcHlyaWdodCAoYykgMjAxMS0yMDEyIFhpcGguT3Jn
IEZvdW5kYXRpb24gYW5kIE1vemlsbGEgQ29ycG9yYXRpb24KKyMKKyMgIFRoaXMgZmlsZSBpcyBl
eHRyYWN0ZWQgZnJvbSBSRkM2NzE2LiBQbGVhc2Ugc2VlIHRoYXQgUkZDIGZvciBhZGRpdGlvbmFs
CisjICBpbmZvcm1hdGlvbi4KKyMKKyMgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorIyAgbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjICBhcmUg
bWV0OgorIworIyAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorIyAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIworIyAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorIyAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyMKKyMgIC0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5l
dCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKKyMgIG5hbWVzIG9mIHNwZWNp
ZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCisjICBw
cm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
IHdyaXR0ZW4KKyMgIHBlcm1pc3Npb24uCisjCisjICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisjICBgYEFTIElTJycg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
CisjICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IKKyMgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSCisjICBPUiBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwKKyMgIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyMgIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorIyAgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgorIyAgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcKKyMgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUworIyAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKKyNTdG9wIG9uIGVycm9ycworc2V0IC1l
CisjU2V0IHRoZSBDV0QgdG8gdGhlIGxvY2F0aW9uIG9mIHRoaXMgc2NyaXB0CitbIC1uICIkezAl
Lyp9IiBdICYmIGNkICIkezAlLyp9IgorCit0b3BsZXZlbD0iLi4iCitkZXN0ZGlyPSJvcHVzX3Nv
dXJjZSIKKworZWNobyBwYWNrYWdpbmcgc291cmNlIGNvZGUKK3JtIC1yZiAiJHtkZXN0ZGlyfSIK
K21rZGlyICIke2Rlc3RkaXJ9IgorbWtkaXIgIiR7ZGVzdGRpcn0vc3JjIgorbWtkaXIgIiR7ZGVz
dGRpcn0vc2lsayIKK21rZGlyICIke2Rlc3RkaXJ9L3NpbGsvZmxvYXQiCitta2RpciAiJHtkZXN0
ZGlyfS9zaWxrL2ZpeGVkIgorbWtkaXIgIiR7ZGVzdGRpcn0vY2VsdCIKK21rZGlyICIke2Rlc3Rk
aXJ9L2luY2x1ZGUiCitmb3IgZiBpbiBgY2F0ICIke3RvcGxldmVsfSIvb3B1c19zb3VyY2VzLm1r
ICIke3RvcGxldmVsfSIvY2VsdF9zb3VyY2VzLm1rIFwKKyAiJHt0b3BsZXZlbH0iL3NpbGtfc291
cmNlcy5tayAiJHt0b3BsZXZlbH0iL29wdXNfaGVhZGVycy5tayBcCisgIiR7dG9wbGV2ZWx9Ii9j
ZWx0X2hlYWRlcnMubWsgIiR7dG9wbGV2ZWx9Ii9zaWxrX2hlYWRlcnMubWsgXAorIHwgZ3JlcCAn
XC5bY2hdJyB8IHNlZCAtZSAncy9eLio9Ly8nIC1lICdzL1xcXFwvLydgIDsgZG8KKyAgY3AgLWEg
IiR7dG9wbGV2ZWx9LyR7Zn0iICIke2Rlc3RkaXJ9LyR7Zn0iCitkb25lCitjcCAtYSAiJHt0b3Bs
ZXZlbH0iL3NyYy9vcHVzX2RlbW8uYyAiJHtkZXN0ZGlyfSIvc3JjLworY3AgLWEgIiR7dG9wbGV2
ZWx9Ii9zcmMvb3B1c19jb21wYXJlLmMgIiR7ZGVzdGRpcn0iL3NyYy8KK2NwIC1hICIke3RvcGxl
dmVsfSIvY2VsdC9vcHVzX2N1c3RvbV9kZW1vLmMgIiR7ZGVzdGRpcn0iL2NlbHQvCitjcCAtYSAi
JHt0b3BsZXZlbH0iL01ha2VmaWxlLnVuaXggIiR7ZGVzdGRpcn0iL01ha2VmaWxlCitjcCAtYSAi
JHt0b3BsZXZlbH0iL29wdXNfc291cmNlcy5tayAiJHtkZXN0ZGlyfSIvCitjcCAtYSAiJHt0b3Bs
ZXZlbH0iL2NlbHRfc291cmNlcy5tayAiJHtkZXN0ZGlyfSIvCitjcCAtYSAiJHt0b3BsZXZlbH0i
L3NpbGtfc291cmNlcy5tayAiJHtkZXN0ZGlyfSIvCitjcCAtYSAiJHt0b3BsZXZlbH0iL1JFQURN
RS5kcmFmdCAiJHtkZXN0ZGlyfSIvUkVBRE1FCitjcCAtYSAiJHt0b3BsZXZlbH0iL0NPUFlJTkcg
IiR7ZGVzdGRpcn0iL0NPUFlJTkcKK2NwIC1hICIke3RvcGxldmVsfSIvdGVzdHMvcnVuX3ZlY3Rv
cnMuc2ggIiR7ZGVzdGRpcn0iLworCitHWklQPS05IHRhciAtLW93bmVyPXJvb3QgLS1ncm91cD1y
b290IC0tZm9ybWF0PXY3IC1jemYgb3B1c19zb3VyY2UudGFyLmd6ICIke2Rlc3RkaXJ9IgorZWNo
byBidWlsZGluZyBiYXNlNjQgdmVyc2lvbgorY2F0IG9wdXNfc291cmNlLnRhci5nenwgYmFzZTY0
IHwgdHIgLWQgJ1xuJyB8IGZvbGQgLXcgNjQgfCBcCisgc2VkIC1lICdzL14vXDxzcGFueCBzdHls
ZT0idmJhcmUiXD4jIyMvJyAtZSAncy8kL1w8XC9zcGFueFw+XDx2c3BhY2VcL1w+LycgPiBcCisg
b3B1c19zb3VyY2UuYmFzZTY0CisKKworI2VjaG8gJzxmaWd1cmU+JyA+IG9wdXNfY29tcGFyZV9l
c2NhcGVkLmMKKyNlY2hvICc8YXJ0d29yaz4nID4+IG9wdXNfY29tcGFyZV9lc2NhcGVkLmMKKyNl
Y2hvICc8IVtDREFUQVsnID4+IG9wdXNfY29tcGFyZV9lc2NhcGVkLmMKKyNjYXQgb3B1c19jb21w
YXJlLmMgPj4gb3B1c19jb21wYXJlX2VzY2FwZWQuYworI2VjaG8gJ11dPicgPj4gb3B1c19jb21w
YXJlX2VzY2FwZWQuYworI2VjaG8gJzwvYXJ0d29yaz4nID4+IG9wdXNfY29tcGFyZV9lc2NhcGVk
LmMKKyNlY2hvICc8L2ZpZ3VyZT4nID4+IG9wdXNfY29tcGFyZV9lc2NhcGVkLmMKKworaWYgW1sg
ISAtZCAuLi9vcHVzX3Rlc3R2ZWN0b3JzIF1dIDsgdGhlbgorICBlY2hvICJEb3dubG9hZGluZyB0
ZXN0IHZlY3RvcnMuLi4iCisgIHdnZXQgJ2h0dHA6Ly9vcHVzLWNvZGVjLm9yZy90ZXN0dmVjdG9y
cy9vcHVzX3Rlc3R2ZWN0b3JzLnRhci5neicKKyAgdGFyIC1DIC4uIC14dnpmIG9wdXNfdGVzdHZl
Y3RvcnMudGFyLmd6CitmaQorZWNobyAnPGZpZ3VyZT4nID4gdGVzdHZlY3RvcnNfc2hhMQorZWNo
byAnPGFydHdvcms+JyA+PiB0ZXN0dmVjdG9yc19zaGExCitlY2hvICc8IVtDREFUQVsnID4+IHRl
c3R2ZWN0b3JzX3NoYTEKKyhjZCAuLi9vcHVzX3Rlc3R2ZWN0b3JzOyBzaGExc3VtICouYml0ICou
ZGVjKSA+PiB0ZXN0dmVjdG9yc19zaGExCisjY2Qgb3B1c190ZXN0dmVjdG9ycworI3NoYTFzdW0g
Ki5iaXQgKi5kZWMgPj4gLi4vdGVzdHZlY3RvcnNfc2hhMQorI2NkIC4uCitlY2hvICddXT4nID4+
IHRlc3R2ZWN0b3JzX3NoYTEKK2VjaG8gJzwvYXJ0d29yaz4nID4+IHRlc3R2ZWN0b3JzX3NoYTEK
K2VjaG8gJzwvZmlndXJlPicgPj4gdGVzdHZlY3RvcnNfc2hhMQorCitlY2hvIHJ1bm5pbmcgeG1s
MnJmYworeG1sMnJmYyBkcmFmdC1pZXRmLWNvZGVjLW9wdXMueG1sIGRyYWZ0LWlldGYtY29kZWMt
b3B1cy5odG1sICYKK3htbDJyZmMgZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLnhtbAord2FpdApkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9kb2MvYnVpbGRfaXNvYm1mZi5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1aWxkX2lzb2JtZmYuc2gKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uOTVlYTIwMmU0YWZlZWRmNDk1Y2ZlMjhhYTMyOGM4YjllYmVmNWNmOAotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvZG9jL2J1aWxkX2lzb2JtZmYuc2gKQEAgLTAsMCArMSw1MCBAQAorIyEvYmluL3No
CisKKyMgQ29weXJpZ2h0IChjKSAyMDE0IFhpcGguT3JnIEZvdW5kYXRpb24gYW5kIE1vemlsbGEg
Rm91bmRhdGlvbgorIworIyAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyMgIGFyZSBtZXQ6Cisj
CisjICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisjICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisjCisjICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisjICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisj
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorIworIyAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAgYGBBUyBJUycnIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyAgTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SCisjICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorIyAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisjICBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisjICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKKyMgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyMgIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisj
ICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKKyMgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorCisjU3RvcCBvbiBlcnJvcnMKK3NldCAtZQorI1NldCB0aGUg
Q1dEIHRvIHRoZSBsb2NhdGlvbiBvZiB0aGlzIHNjcmlwdAorWyAtbiAiJHswJS8qfSIgXSAmJiBj
ZCAiJHswJS8qfSIKKworSFRNTD1vcHVzX2luX2lzb2JtZmYuaHRtbAorCitlY2hvIGRvd25sb2Fk
aW5nIHVwZGF0ZXMuLi4KK0NTUz0ke0hUTUwlJS5odG1sfS5jc3MKK3dnZXQgLXEgaHR0cDovL3Zm
cm1hbmlhYy5mdXNoaXplbi5ldS9jb250ZW50cy8ke0hUTUx9IC1PICR7SFRNTH0KK3dnZXQgLXEg
aHR0cDovL3Zmcm1hbmlhYy5mdXNoaXplbi5ldS9zdHlsZS5jc3MgLU8gJHtDU1N9CisKK2VjaG8g
dXBkYXRpbmcgbGlua3MuLi4KK2NhdCAke0hUTUx9IHwgc2VkIC1lICJzL1xcLlxcLlxcL3N0eWxl
LmNzcy8ke0NTU30vIiA+ICR7SFRNTH0rICYmIG12ICR7SFRNTH0rICR7SFRNTH0KKworZWNobyBz
dHJpcHBpbmcuLi4KK2NhdCAke0hUTUx9IHwgc2VkIC1lICdzLzwhLS0uKi0tPi8vZycgPiAke0hU
TUx9KyAmJiBtdiAke0hUTUx9KyAke0hUTUx9CitjYXQgJHtIVE1MfSB8IHNlZCAtZSAncy8gKiQv
L2cnID4gJHtIVE1MfSsgJiYgbXYgJHtIVE1MfSsgJHtIVE1MfQorY2F0ICR7Q1NTfSAgfCBzZWQg
LWUgJ3MvICokLy9nJyA+ICR7Q1NTfSsgJiYgbXYgJHtDU1N9KyAke0NTU30KKworCitWRVJTSU9O
PSQoZmdyZXAgVmVyc2lvbiAke0hUTUx9IHwgc2VkICdzLy4qVmVyc2lvbiBcKFswLTldXC5bMC05
XVwuWzAtOV1cKS4qL1wxLycpCitlY2hvIE5vdyBhdCB2ZXJzaW9uICR7VkVSU0lPTn0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvZG9jL2J1aWxkX29nZ2RyYWZ0LnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvYnVpbGRfb2dnZHJhZnQuc2gKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMzBlZTUzNGIwZDYwNjc1MDNmNDRhMmRkNDcyMjc0Y2I3MDIzZDU0OAotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvZG9jL2J1aWxkX29nZ2RyYWZ0LnNoCkBAIC0wLDAgKzEsNTIgQEAKKyMhL2Jpbi9z
aAorCisjIENvcHlyaWdodCAoYykgMjAxMiBYaXBoLk9yZyBGb3VuZGF0aW9uIGFuZCBNb3ppbGxh
IENvcnBvcmF0aW9uCisjCisjICBUaGlzIGZpbGUgaXMgZXh0cmFjdGVkIGZyb20gUkZDNjcxNi4g
UGxlYXNlIHNlZSB0aGF0IFJGQyBmb3IgYWRkaXRpb25hbAorIyAgaW5mb3JtYXRpb24uCisjCisj
ICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyMgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworIyAgYXJlIG1ldDoKKyMKKyMgIC0gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyMKKyMgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisj
CisjICAtIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRG
IFRydXN0LCBub3IgdGhlCisjICBuYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQorIyAgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCisjICBwZXJtaXNzaW9u
LgorIworIyAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUworIyAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyAgTElNSVRFRCBUTywgVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisjICBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVCBPV05FUgorIyAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisjICBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisjICBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKKyMgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyMgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisjICBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMK
KyMgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorCisjU3RvcCBvbiBlcnJvcnMKK3NldCAtZQorI1NldCB0aGUgQ1dEIHRvIHRoZSBs
b2NhdGlvbiBvZiB0aGlzIHNjcmlwdAorWyAtbiAiJHswJS8qfSIgXSAmJiBjZCAiJHswJS8qfSIK
KworaWYgdGVzdCAteiBgd2hpY2ggeG1sMnJmYyAyPiAvZGV2L251bGxgOyB0aGVuCisgIGVjaG8g
IkVycm9yOiBjb3VsZG4ndCBmaW5kIHhtbDJyZmMuIgorICBlY2hvCisgIGVjaG8gIlBsZWFzZSBp
bnN0YWxsIHhtbDJyZmMgdmVyc2lvbiAyIG9yIGxhdGVyLiIKKyAgZWNobyAiRS5nLiAncGlwIGlu
c3RhbGwgeG1sMnJmYycgb3IgZm9sbG93IHRoZSBpbnN0cnVjdGlvbnMiCisgIGVjaG8gIm9uIGh0
dHA6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaS94bWwycmZjLyBvciB0b29scy5pZXRmLm9yZy4iCisg
IGV4aXQgMQorZmkKKworZWNobyBydW5uaW5nIHhtbDJyZmMKKyMgdmVyc2lvbiAyIHN5bnRheAor
eG1sMnJmYyBkcmFmdC1pZXRmLWNvZGVjLW9nZ29wdXMueG1sIC0tdGV4dCAtLWh0bWwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvZG9jL2RyYWZ0LWlldGYtY29kZWMtb2dnb3B1cy54bWwgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9kcmFmdC1pZXRmLWNv
ZGVjLW9nZ29wdXMueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjEyODgxNmU5MzVlODU5YzYzMDM1Y2Q5NWZmMDRh
NzVkZDVmNWVlMTgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9kcmFmdC1pZXRmLWNvZGVjLW9nZ29w
dXMueG1sCkBAIC0wLDAgKzEsMTg3MyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0i
dXRmLTgiPz4KKzwhLS0KKyAgIENvcHlyaWdodCAoYykgMjAxMi0yMDE2IFhpcGguT3JnIEZvdW5k
YXRpb24gYW5kIGNvbnRyaWJ1dG9ycworCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAg
YXJlIG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisg
ICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSCisgICBPUiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
KyAgIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAgIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICAgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgorICAgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcKKyAgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUworICAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKKyAgIFNwZWNpYWwgcGVybWlzc2lvbiBpcyBn
cmFudGVkIHRvIHJlbW92ZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgbGlzdCBvZgorICAg
Y29uZGl0aW9ucywgYW5kIGRpc2NsYWltZXIgd2hlbiBzdWJtaXR0aW5nIHRoaXMgZG9jdW1lbnQs
IHdpdGggb3Igd2l0aG91dAorICAgbW9kaWZpY2F0aW9uLCB0byB0aGUgSUVURi4KKy0tPgorPCFE
T0NUWVBFIHJmYyBTWVNURU0gJ3JmYzI2MjkuZHRkJyBbCis8IUVOVElUWSByZmMyMTE5IFBVQkxJ
QyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNl
LlJGQy4yMTE5LnhtbCc+Cis8IUVOVElUWSByZmMzNTMzIFBVQkxJQyAnJyAnaHR0cDovL3htbC5y
ZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy4zNTMzLnhtbCc+Cis8
IUVOVElUWSByZmMzNjI5IFBVQkxJQyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVibGlj
L3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy4zNjI5LnhtbCc+Cis8IUVOVElUWSByZmM0NzMyIFBV
QkxJQyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwvcmVmZXJl
bmNlLlJGQy40NzMyLnhtbCc+Cis8IUVOVElUWSByZmM1MjI2IFBVQkxJQyAnJyAnaHR0cDovL3ht
bC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy41MjI2LnhtbCc+
Cis8IUVOVElUWSByZmM1MzM0IFBVQkxJQyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVi
bGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy41MzM0LnhtbCc+Cis8IUVOVElUWSByZmM2Mzgx
IFBVQkxJQyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwvcmVm
ZXJlbmNlLlJGQy42MzgxLnhtbCc+Cis8IUVOVElUWSByZmM2NzE2IFBVQkxJQyAnJyAnaHR0cDov
L3htbC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy42NzE2Lnht
bCc+Cis8IUVOVElUWSByZmM2OTgyIFBVQkxJQyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5vcmcv
cHVibGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy42OTgyLnhtbCc+Cis8IUVOVElUWSByZmM3
NTg3IFBVQkxJQyAnJyAnaHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVibGljL3JmYy9iaWJ4bWwv
cmVmZXJlbmNlLlJGQy43NTg3LnhtbCc+CitdPgorPD9yZmMgdG9jPSJ5ZXMiIHN5bXJlZnM9Inll
cyIgPz4KKworPHJmYyBpcHI9InRydXN0MjAwOTAyIiBjYXRlZ29yeT0ic3RkIiBkb2NOYW1lPSJk
cmFmdC1pZXRmLWNvZGVjLW9nZ29wdXMtMTQiCisgdXBkYXRlcz0iNTMzNCI+CisKKzxmcm9udD4K
Kzx0aXRsZSBhYmJyZXY9Ik9nZyBPcHVzIj5PZ2cgRW5jYXBzdWxhdGlvbiBmb3IgdGhlIE9wdXMg
QXVkaW8gQ29kZWM8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0iVC5CLiIgc3VybmFtZT0iVGVy
cmliZXJyeSIgZnVsbG5hbWU9IlRpbW90aHkgQi4gVGVycmliZXJyeSI+Cis8b3JnYW5pemF0aW9u
Pk1vemlsbGEgQ29ycG9yYXRpb248L29yZ2FuaXphdGlvbj4KKzxhZGRyZXNzPgorPHBvc3RhbD4K
KzxzdHJlZXQ+NjUwIENhc3RybyBTdHJlZXQ8L3N0cmVldD4KKzxjaXR5Pk1vdW50YWluIFZpZXc8
L2NpdHk+Cis8cmVnaW9uPkNBPC9yZWdpb24+Cis8Y29kZT45NDA0MTwvY29kZT4KKzxjb3VudHJ5
PlVTQTwvY291bnRyeT4KKzwvcG9zdGFsPgorPHBob25lPisxIDY1MCA5MDMtMDgwMDwvcGhvbmU+
Cis8ZW1haWw+dHRlcnJpYmVAeGlwaC5vcmc8L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+
CisKKzxhdXRob3IgaW5pdGlhbHM9IlIuIiBzdXJuYW1lPSJMZWUiIGZ1bGxuYW1lPSJSb24gTGVl
Ij4KKzxvcmdhbml6YXRpb24+Vm9pY2V0cm9uaXg8L29yZ2FuaXphdGlvbj4KKzxhZGRyZXNzPgor
PHBvc3RhbD4KKzxzdHJlZXQ+MjQ2IFB1bHRlbmV5IFN0cmVldCwgTGV2ZWwgMTwvc3RyZWV0Pgor
PGNpdHk+QWRlbGFpZGU8L2NpdHk+Cis8cmVnaW9uPlNBPC9yZWdpb24+Cis8Y29kZT41MDAwPC9j
b2RlPgorPGNvdW50cnk+QXVzdHJhbGlhPC9jb3VudHJ5PgorPC9wb3N0YWw+Cis8cGhvbmU+KzYx
IDggODIzMiA5MTEyPC9waG9uZT4KKzxlbWFpbD5yb25AZGViaWFuLm9yZzwvZW1haWw+Cis8L2Fk
ZHJlc3M+Cis8L2F1dGhvcj4KKworPGF1dGhvciBpbml0aWFscz0iUi4iIHN1cm5hbWU9IkdpbGVz
IiBmdWxsbmFtZT0iUmFscGggR2lsZXMiPgorPG9yZ2FuaXphdGlvbj5Nb3ppbGxhIENvcnBvcmF0
aW9uPC9vcmdhbml6YXRpb24+Cis8YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3RyZWV0PjE2MyBXZXN0
IEhhc3RpbmdzIFN0cmVldDwvc3RyZWV0PgorPGNpdHk+VmFuY291dmVyPC9jaXR5PgorPHJlZ2lv
bj5CQzwvcmVnaW9uPgorPGNvZGU+VjZCIDFINTwvY29kZT4KKzxjb3VudHJ5PkNhbmFkYTwvY291
bnRyeT4KKzwvcG9zdGFsPgorPHBob25lPisxIDc3OCA3ODUgMTU0MDwvcGhvbmU+Cis8ZW1haWw+
Z2lsZXNAeGlwaC5vcmc8L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisKKzxkYXRlIGRh
eT0iMjIiIG1vbnRoPSJGZWJydWFyeSIgeWVhcj0iMjAxNiIvPgorPGFyZWE+UkFJPC9hcmVhPgor
PHdvcmtncm91cD5jb2RlYzwvd29ya2dyb3VwPgorCis8YWJzdHJhY3Q+Cis8dD4KK1RoaXMgZG9j
dW1lbnQgZGVmaW5lcyB0aGUgT2dnIGVuY2Fwc3VsYXRpb24gZm9yIHRoZSBPcHVzIGludGVyYWN0
aXZlIHNwZWVjaCBhbmQKKyBhdWRpbyBjb2RlYy4KK1RoaXMgYWxsb3dzIGRhdGEgZW5jb2RlZCBp
biB0aGUgT3B1cyBmb3JtYXQgdG8gYmUgc3RvcmVkIGluIGFuIE9nZyBsb2dpY2FsCisgYml0c3Ry
ZWFtLgorPC90PgorPC9hYnN0cmFjdD4KKzwvZnJvbnQ+CisKKzxtaWRkbGU+Cis8c2VjdGlvbiBh
bmNob3I9ImludHJvIiB0aXRsZT0iSW50cm9kdWN0aW9uIj4KKzx0PgorVGhlIElFVEYgT3B1cyBj
b2RlYyBpcyBhIGxvdy1sYXRlbmN5IGF1ZGlvIGNvZGVjIG9wdGltaXplZCBmb3IgYm90aCB2b2lj
ZSBhbmQKKyBnZW5lcmFsLXB1cnBvc2UgYXVkaW8uCitTZWUgPHhyZWYgdGFyZ2V0PSJSRkM2NzE2
Ii8+IGZvciB0ZWNobmljYWwgZGV0YWlscy4KK1RoaXMgZG9jdW1lbnQgZGVmaW5lcyB0aGUgZW5j
YXBzdWxhdGlvbiBvZiBPcHVzIGluIGEgY29udGludW91cywgbG9naWNhbCBPZ2cKKyBiaXRzdHJl
YW0mbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzM1MzMiLz4uCitPZ2cgZW5jYXBzdWxhdGlvbiBwcm92
aWRlcyBPcHVzIHdpdGggYSBsb25nLXRlcm0gc3RvcmFnZSBmb3JtYXQgc3VwcG9ydGluZworIGFs
bCBvZiB0aGUgZXNzZW50aWFsIGZlYXR1cmVzLCBpbmNsdWRpbmcgbWV0YWRhdGEsIGZhc3QgYW5k
IGFjY3VyYXRlIHNlZWtpbmcsCisgY29ycnVwdGlvbiBkZXRlY3Rpb24sIHJlY2FwdHVyZSBhZnRl
ciBlcnJvcnMsIGxvdyBvdmVyaGVhZCwgYW5kIHRoZSBhYmlsaXR5IHRvCisgbXVsdGlwbGV4IE9w
dXMgd2l0aCBvdGhlciBjb2RlY3MgKGluY2x1ZGluZyB2aWRlbykgd2l0aCBtaW5pbWFsIGJ1ZmZl
cmluZy4KK0l0IGFsc28gcHJvdmlkZXMgYSBsaXZlIHN0cmVhbWFibGUgZm9ybWF0LCBjYXBhYmxl
IG9mIGRlbGl2ZXJ5IG92ZXIgYSByZWxpYWJsZQorIHN0cmVhbS1vcmllbnRlZCB0cmFuc3BvcnQs
IHdpdGhvdXQgcmVxdWlyaW5nIGFsbCB0aGUgZGF0YSwgb3IgZXZlbiB0aGUgdG90YWwKKyBsZW5n
dGggb2YgdGhlIGRhdGEsIHVwLWZyb250LCBpbiBhIGZvcm0gdGhhdCBpcyBpZGVudGljYWwgdG8g
dGhlIG9uLWRpc2sKKyBzdG9yYWdlIGZvcm1hdC4KKzwvdD4KKzx0PgorT2dnIGJpdHN0cmVhbXMg
YXJlIG1hZGUgdXAgb2YgYSBzZXJpZXMgb2YgJ3BhZ2VzJywgZWFjaCBvZiB3aGljaCBjb250YWlu
cyBkYXRhCisgZnJvbSBvbmUgb3IgbW9yZSAncGFja2V0cycuCitQYWdlcyBhcmUgdGhlIGZ1bmRh
bWVudGFsIHVuaXQgb2YgbXVsdGlwbGV4aW5nIGluIGFuIE9nZyBzdHJlYW0uCitFYWNoIHBhZ2Ug
aXMgYXNzb2NpYXRlZCB3aXRoIGEgcGFydGljdWxhciBsb2dpY2FsIHN0cmVhbSBhbmQgY29udGFp
bnMgYSBjYXB0dXJlCisgcGF0dGVybiBhbmQgY2hlY2tzdW0sIGZsYWdzIHRvIG1hcmsgdGhlIGJl
Z2lubmluZyBhbmQgZW5kIG9mIHRoZSBsb2dpY2FsCisgc3RyZWFtLCBhbmQgYSAnZ3JhbnVsZSBw
b3NpdGlvbicgdGhhdCByZXByZXNlbnRzIGFuIGFic29sdXRlIHBvc2l0aW9uIGluIHRoZQorIHN0
cmVhbSwgdG8gYWlkIHNlZWtpbmcuCitBIHNpbmdsZSBwYWdlIGNhbiBjb250YWluIHVwIHRvIDY1
LDAyNSBvY3RldHMgb2YgcGFja2V0IGRhdGEgZnJvbSB1cCB0byAyNTUKKyBkaWZmZXJlbnQgcGFj
a2V0cy4KK1BhY2tldHMgY2FuIGJlIHNwbGl0IGFyYml0cmFyaWx5IGFjcm9zcyBwYWdlcywgYW5k
IGNvbnRpbnVlZCBmcm9tIG9uZSBwYWdlIHRvCisgdGhlIG5leHQgKGFsbG93aW5nIHBhY2tldHMg
bXVjaCBsYXJnZXIgdGhhbiB3b3VsZCBmaXQgb24gYSBzaW5nbGUgcGFnZSkuCitFYWNoIHBhZ2Ug
Y29udGFpbnMgJ2xhY2luZyB2YWx1ZXMnIHRoYXQgaW5kaWNhdGUgaG93IHRoZSBkYXRhIGlzIHBh
cnRpdGlvbmVkCisgaW50byBwYWNrZXRzLCBhbGxvd2luZyBhIGRlbXVsdGlwbGV4ZXIgKGRlbXV4
ZXIpIHRvIHJlY292ZXIgdGhlIHBhY2tldAorIGJvdW5kYXJpZXMgd2l0aG91dCBleGFtaW5pbmcg
dGhlIGVuY29kZWQgZGF0YS4KK0EgcGFja2V0IGlzIHNhaWQgdG8gJ2NvbXBsZXRlJyBvbiBhIHBh
Z2Ugd2hlbiB0aGUgcGFnZSBjb250YWlucyB0aGUgZmluYWwKKyBsYWNpbmcgdmFsdWUgY29ycmVz
cG9uZGluZyB0byB0aGF0IHBhY2tldC4KKzwvdD4KKzx0PgorVGhpcyBlbmNhcHN1bGF0aW9uIGRl
ZmluZXMgdGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrZXQgZGF0YSwgaW5jbHVkaW5nCisgdGhlIG5l
Y2Vzc2FyeSBoZWFkZXJzLCB0aGUgb3JnYW5pemF0aW9uIG9mIHRob3NlIHBhY2tldHMgaW50byBh
IGxvZ2ljYWwKKyBzdHJlYW0sIGFuZCB0aGUgaW50ZXJwcmV0YXRpb24gb2YgdGhlIGNvZGVjLXNw
ZWNpZmljIGdyYW51bGUgcG9zaXRpb24gZmllbGQuCitJdCBkb2VzIG5vdCBhdHRlbXB0IHRvIGRl
c2NyaWJlIG9yIHNwZWNpZnkgdGhlIGV4aXN0aW5nIE9nZyBjb250YWluZXIgZm9ybWF0LgorUmVh
ZGVycyB1bmZhbWlsaWFyIHdpdGggdGhlIGJhc2ljIGNvbmNlcHRzIG1lbnRpb25lZCBhYm92ZSBh
cmUgZW5jb3VyYWdlZCB0bworIHJldmlldyB0aGUgZGV0YWlscyBpbiA8eHJlZiB0YXJnZXQ9IlJG
QzM1MzMiLz4uCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJ0ZXJtaW5v
bG9neSIgdGl0bGU9IlRlcm1pbm9sb2d5Ij4KKzx0PgorVGhlIGtleSB3b3JkcyAiTVVTVCIsICJN
VVNUIE5PVCIsICJSRVFVSVJFRCIsICJTSEFMTCIsICJTSEFMTCBOT1QiLCAiU0hPVUxEIiwKKyAi
U0hPVUxEIE5PVCIsICJSRUNPTU1FTkRFRCIsICJOT1QgUkVDT01NRU5ERUQiLCAiTUFZIiwgYW5k
ICJPUFRJT05BTCIgaW4gdGhpcworIGRvY3VtZW50IGFyZSB0byBiZSBpbnRlcnByZXRlZCBhcyBk
ZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJSRkMyMTE5Ii8+LgorPC90PgorCis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0icGFja2V0X29yZ2FuaXphdGlvbiIgdGl0bGU9IlBhY2tldCBP
cmdhbml6YXRpb24iPgorPHQ+CitBbiBPZ2cgT3B1cyBzdHJlYW0gaXMgb3JnYW5pemVkIGFzIGZv
bGxvd3MgKHNlZQorIDx4cmVmIHRhcmdldD0icGFja2V0LW9yZy1leGFtcGxlIi8+IGZvciBhbiBl
eGFtcGxlKS4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9InBhY2tldC1vcmctZXhhbXBsZSIKKyB0
aXRsZT0iRXhhbXBsZSBwYWNrZXQgb3JnYW5pemF0aW9uIGZvciBhIGxvZ2ljYWwgT2dnIE9wdXMg
c3RyZWFtIgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RB
VEFbCisgICAgUGFnZSAwICAgICAgICAgUGFnZXMgMSAuLi4gbiAgICAgICAgUGFnZXMgKG4rMSkg
Li4uCisgKy0tLS0tLS0tLS0tLSsgKy0tLSsgKy0tLSsgLi4uICstLS0rICstLS0tLS0tLS0tLSsg
Ky0tLS0tLS0tLSsgKy0tCisgfCAgICAgICAgICAgIHwgfCAgIHwgfCAgIHwgICAgIHwgICB8IHwg
ICAgICAgICAgIHwgfCAgICAgICAgIHwgfAorIHwrLS0tLS0tLS0tLSt8IHwrLS0tLS0tLS0tLS0t
LS0tLS0rfCB8Ky0tLS0tLS0tLS0tLS0tLS0tLS0rICstLS0tLQorIHx8fElEIEhlYWRlcnx8IHx8
ICBDb21tZW50IEhlYWRlciB8fCB8fEF1ZGlvIERhdGEgUGFja2V0IDF8IHwgLi4uCisgfCstLS0t
LS0tLS0tK3wgfCstLS0tLS0tLS0tLS0tLS0tLSt8IHwrLS0tLS0tLS0tLS0tLS0tLS0tLSsgKy0t
LS0tCisgfCAgICAgICAgICAgIHwgfCAgIHwgfCAgIHwgICAgIHwgICB8IHwgICAgICAgICAgIHwg
fCAgICAgICAgIHwgfAorICstLS0tLS0tLS0tLS0rICstLS0rICstLS0rIC4uLiArLS0tKyArLS0t
LS0tLS0tLS0rICstLS0tLS0tLS0rICstLQorIF4gICAgICBeICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXgorIHwgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorIHwgICAgICB8
ICAgICAgICAgICAgICAgICAgICAgICAgICAgTWFuZGF0b3J5IFBhZ2UgQnJlYWsKKyB8ICAgICAg
fAorIHwgICAgICBJRCBoZWFkZXIgaXMgY29udGFpbmVkIG9uIGEgc2luZ2xlIHBhZ2UKKyB8Cisg
J0JlZ2lubmluZyBPZiBTdHJlYW0nCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitU
aGVyZSBhcmUgdHdvIG1hbmRhdG9yeSBoZWFkZXIgcGFja2V0cy4KK1RoZSBmaXJzdCBwYWNrZXQg
aW4gdGhlIGxvZ2ljYWwgT2dnIGJpdHN0cmVhbSBNVVNUIGNvbnRhaW4gdGhlIGlkZW50aWZpY2F0
aW9uCisgKElEKSBoZWFkZXIsIHdoaWNoIHVuaXF1ZWx5IGlkZW50aWZpZXMgYSBzdHJlYW0gYXMg
T3B1cyBhdWRpby4KK1RoZSBmb3JtYXQgb2YgdGhpcyBoZWFkZXIgaXMgZGVmaW5lZCBpbiA8eHJl
ZiB0YXJnZXQ9ImlkX2hlYWRlciIvPi4KK0l0IGlzIHBsYWNlZCBhbG9uZSAod2l0aG91dCBhbnkg
b3RoZXIgcGFja2V0IGRhdGEpIG9uIHRoZSBmaXJzdCBwYWdlIG9mCisgdGhlIGxvZ2ljYWwgT2dn
IGJpdHN0cmVhbSwgYW5kIGNvbXBsZXRlcyBvbiB0aGF0IHBhZ2UuCitUaGlzIHBhZ2UgaGFzIGl0
cyAnYmVnaW5uaW5nIG9mIHN0cmVhbScgZmxhZyBzZXQuCis8L3Q+Cis8dD4KK1RoZSBzZWNvbmQg
cGFja2V0IGluIHRoZSBsb2dpY2FsIE9nZyBiaXRzdHJlYW0gTVVTVCBjb250YWluIHRoZSBjb21t
ZW50IGhlYWRlciwKKyB3aGljaCBjb250YWlucyB1c2VyLXN1cHBsaWVkIG1ldGFkYXRhLgorVGhl
IGZvcm1hdCBvZiB0aGlzIGhlYWRlciBpcyBkZWZpbmVkIGluIDx4cmVmIHRhcmdldD0iY29tbWVu
dF9oZWFkZXIiLz4uCitJdCBNQVkgc3BhbiBtdWx0aXBsZSBwYWdlcywgYmVnaW5uaW5nIG9uIHRo
ZSBzZWNvbmQgcGFnZSBvZiB0aGUgbG9naWNhbAorIHN0cmVhbS4KK0hvd2V2ZXIgbWFueSBwYWdl
cyBpdCBzcGFucywgdGhlIGNvbW1lbnQgaGVhZGVyIHBhY2tldCBNVVNUIGZpbmlzaCB0aGUgcGFn
ZSBvbgorIHdoaWNoIGl0IGNvbXBsZXRlcy4KKzwvdD4KKzx0PgorQWxsIHN1YnNlcXVlbnQgcGFn
ZXMgYXJlIGF1ZGlvIGRhdGEgcGFnZXMsIGFuZCB0aGUgT2dnIHBhY2tldHMgdGhleSBjb250YWlu
IGFyZQorIGF1ZGlvIGRhdGEgcGFja2V0cy4KK0VhY2ggYXVkaW8gZGF0YSBwYWNrZXQgY29udGFp
bnMgb25lIE9wdXMgcGFja2V0IGZvciBlYWNoIG9mIE4gZGlmZmVyZW50Cisgc3RyZWFtcywgd2hl
cmUgTiBpcyB0eXBpY2FsbHkgb25lIGZvciBtb25vIG9yIHN0ZXJlbywgYnV0IE1BWSBiZSBncmVh
dGVyIHRoYW4KKyBvbmUgZm9yIG11bHRpY2hhbm5lbCBhdWRpby4KK1RoZSB2YWx1ZSBOIGlzIHNw
ZWNpZmllZCBpbiB0aGUgSUQgaGVhZGVyIChzZWUKKyA8eHJlZiB0YXJnZXQ9ImNoYW5uZWxfbWFw
cGluZyIvPiksIGFuZCBpcyBmaXhlZCBvdmVyIHRoZSBlbnRpcmUgbGVuZ3RoIG9mIHRoZQorIGxv
Z2ljYWwgT2dnIGJpdHN0cmVhbS4KKzwvdD4KKzx0PgorVGhlIGZpcnN0IChOJm5ic3A7LSZuYnNw
OzEpIE9wdXMgcGFja2V0cywgaWYgYW55LCBhcmUgcGFja2VkIG9uZSBhZnRlciBhbm90aGVyCisg
aW50byB0aGUgT2dnIHBhY2tldCwgdXNpbmcgdGhlIHNlbGYtZGVsaW1pdGluZyBmcmFtaW5nIGZy
b20gQXBwZW5kaXgmbmJzcDtCIG9mCisgPHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+LgorVGhlIHJl
bWFpbmluZyBPcHVzIHBhY2tldCBpcyBwYWNrZWQgYXQgdGhlIGVuZCBvZiB0aGUgT2dnIHBhY2tl
dCB1c2luZyB0aGUKKyByZWd1bGFyLCB1bmRlbGltaXRlZCBmcmFtaW5nIGZyb20gU2VjdGlvbiZu
YnNwOzMgb2YgPHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+LgorQWxsIG9mIHRoZSBPcHVzIHBhY2tl
dHMgaW4gYSBzaW5nbGUgT2dnIHBhY2tldCBNVVNUIGJlIGNvbnN0cmFpbmVkIHRvIGhhdmUgdGhl
Cisgc2FtZSBkdXJhdGlvbi4KK0FuIGltcGxlbWVudGF0aW9uIG9mIHRoaXMgc3BlY2lmaWNhdGlv
biBTSE9VTEQgdHJlYXQgYW55IE9wdXMgcGFja2V0IHdob3NlCisgZHVyYXRpb24gaXMgZGlmZmVy
ZW50IGZyb20gdGhhdCBvZiB0aGUgZmlyc3QgT3B1cyBwYWNrZXQgaW4gYW4gT2dnIHBhY2tldCBh
cworIGlmIGl0IHdlcmUgYSBtYWxmb3JtZWQgT3B1cyBwYWNrZXQgd2l0aCBhbiBpbnZhbGlkIFRh
YmxlIE9mIENvbnRlbnRzIChUT0MpCisgc2VxdWVuY2UuCis8L3Q+Cis8dD4KK1RoZSBUT0Mgc2Vx
dWVuY2UgYXQgdGhlIGJlZ2lubmluZyBvZiBlYWNoIE9wdXMgcGFja2V0IGluZGljYXRlcyB0aGUg
Y29kaW5nCisgbW9kZSwgYXVkaW8gYmFuZHdpZHRoLCBjaGFubmVsIGNvdW50LCBkdXJhdGlvbiAo
ZnJhbWUgc2l6ZSksIGFuZCBudW1iZXIgb2YKKyBmcmFtZXMgcGVyIHBhY2tldCwgYXMgZGVzY3Jp
YmVkIGluIFNlY3Rpb24mbmJzcDszLjEKKyBvZiZuYnNwOzx4cmVmIHRhcmdldD0iUkZDNjcxNiIv
Pi4KK1RoZSBjb2RpbmcgbW9kZSBpcyBvbmUgb2YgU0lMSywgSHlicmlkLCBvciBDb25zdHJhaW5l
ZCBFbmVyZ3kgTGFwcGVkIFRyYW5zZm9ybQorIChDRUxUKS4KK1RoZSBjb21iaW5hdGlvbiBvZiBj
b2RpbmcgbW9kZSwgYXVkaW8gYmFuZHdpZHRoLCBhbmQgZnJhbWUgc2l6ZSBpcyByZWZlcnJlZCB0
bworIGFzIHRoZSBjb25maWd1cmF0aW9uIG9mIGFuIE9wdXMgcGFja2V0LgorPC90PgorPHQ+CitQ
YWNrZXRzIGFyZSBwbGFjZWQgaW50byBPZ2cgcGFnZXMgaW4gb3JkZXIgdW50aWwgdGhlIGVuZCBv
ZiBzdHJlYW0uCitBdWRpbyBkYXRhIHBhY2tldHMgbWlnaHQgc3BhbiBwYWdlIGJvdW5kYXJpZXMu
CitUaGUgZmlyc3QgYXVkaW8gZGF0YSBwYWdlIGNvdWxkIGhhdmUgdGhlICdjb250aW51ZWQgcGFj
a2V0JyBmbGFnIHNldAorIChpbmRpY2F0aW5nIHRoZSBmaXJzdCBhdWRpbyBkYXRhIHBhY2tldCBp
cyBjb250aW51ZWQgZnJvbSBhIHByZXZpb3VzIHBhZ2UpIGlmLAorIGZvciBleGFtcGxlLCBpdCB3
YXMgYSBsaXZlIHN0cmVhbSBqb2luZWQgbWlkLWJyb2FkY2FzdCwgd2l0aCB0aGUgaGVhZGVycwor
IHBhc3RlZCBvbiB0aGUgZnJvbnQuCitJZiBhIHBhZ2UgaGFzIHRoZSAnY29udGludWVkIHBhY2tl
dCcgZmxhZyBzZXQgYW5kIG9uZSBvZiB0aGUgZm9sbG93aW5nCisgY29uZGl0aW9ucyBpcyBhbHNv
IHRydWU6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD50aGUgcHJldmlvdXMgcGFnZSB3aXRo
IHBhY2tldCBkYXRhIGRvZXMgbm90IGVuZCBpbiBhIGNvbnRpbnVlZCBwYWNrZXQgKGRvZXMKKyBu
b3QgZW5kIHdpdGggYSBsYWNpbmcgdmFsdWUgb2YgMjU1KSBPUjwvdD4KKzx0PnRoZSBwYWdlIHNl
cXVlbmNlIG51bWJlcnMgYXJlIG5vdCBjb25zZWN1dGl2ZSw8L3Q+Cis8L2xpc3Q+CisgdGhlbiBh
IGRlbXV4ZXIgTVVTVCBOT1QgYXR0ZW1wdCB0byBkZWNvZGUgdGhlIGRhdGEgZm9yIHRoZSBmaXJz
dCBwYWNrZXQgb24gdGhlCisgcGFnZSB1bmxlc3MgdGhlIGRlbXV4ZXIgaGFzIHNvbWUgc3BlY2lh
bCBrbm93bGVkZ2UgdGhhdCB3b3VsZCBhbGxvdyBpdCB0bworIGludGVycHJldCB0aGlzIGRhdGEg
ZGVzcGl0ZSB0aGUgbWlzc2luZyBwaWVjZXMuCitBbiBpbXBsZW1lbnRhdGlvbiBNVVNUIHRyZWF0
IGEgemVyby1vY3RldCBhdWRpbyBkYXRhIHBhY2tldCBhcyBpZiBpdCB3ZXJlIGEKKyBtYWxmb3Jt
ZWQgT3B1cyBwYWNrZXQgYXMgZGVzY3JpYmVkIGluCisgU2VjdGlvbiZuYnNwOzMuNCBvZiZuYnNw
Ozx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPi4KKzwvdD4KKzx0PgorQSBsb2dpY2FsIHN0cmVhbSBl
bmRzIHdpdGggYSBwYWdlIHdpdGggdGhlICdlbmQgb2Ygc3RyZWFtJyBmbGFnIHNldCwgYnV0Cisg
aW1wbGVtZW50YXRpb25zIG5lZWQgdG8gYmUgcHJlcGFyZWQgdG8gZGVhbCB3aXRoIHRydW5jYXRl
ZCBzdHJlYW1zIHRoYXQgZG8gbm90CisgaGF2ZSBhIHBhZ2UgbWFya2VkICdlbmQgb2Ygc3RyZWFt
Jy4KK1RoZXJlIGlzIG5vIHJlYXNvbiBmb3IgdGhlIGZpbmFsIHBhY2tldCBvbiB0aGUgbGFzdCBw
YWdlIHRvIGJlIGEgY29udGludWVkCisgcGFja2V0LCBpLmUuLCBmb3IgdGhlIGZpbmFsIGxhY2lu
ZyB2YWx1ZSB0byBiZSAyNTUuCitIb3dldmVyLCBkZW11eGVycyBtaWdodCBlbmNvdW50ZXIgc3Vj
aCBzdHJlYW1zLCBwb3NzaWJseSBhcyB0aGUgcmVzdWx0IG9mIGEKKyB0cmFuc2ZlciB0aGF0IGRp
ZCBub3QgY29tcGxldGUgb3Igb2YgY29ycnVwdGlvbi4KK0lmIGEgcGFja2V0IGNvbnRpbnVlcyBv
bnRvIGEgc3Vic2VxdWVudCBwYWdlIChpLmUuLCB3aGVuIHRoZSBwYWdlIGVuZHMgd2l0aCBhCisg
bGFjaW5nIHZhbHVlIG9mIDI1NSkgYW5kIG9uZSBvZiB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
aXMgYWxzbyB0cnVlOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+dGhlIG5leHQgcGFnZSB3
aXRoIHBhY2tldCBkYXRhIGRvZXMgbm90IGhhdmUgdGhlICdjb250aW51ZWQgcGFja2V0JyBmbGFn
Cisgc2V0IE9SPC90PgorPHQ+dGhlcmUgaXMgbm8gbmV4dCBwYWdlIHdpdGggcGFja2V0IGRhdGEg
T1I8L3Q+Cis8dD50aGUgcGFnZSBzZXF1ZW5jZSBudW1iZXJzIGFyZSBub3QgY29uc2VjdXRpdmUs
PC90PgorPC9saXN0PgorIHRoZW4gYSBkZW11eGVyIE1VU1QgTk9UIGF0dGVtcHQgdG8gZGVjb2Rl
IHRoZSBkYXRhIGZyb20gdGhhdCBwYWNrZXQgdW5sZXNzIHRoZQorIGRlbXV4ZXIgaGFzIHNvbWUg
c3BlY2lhbCBrbm93bGVkZ2UgdGhhdCB3b3VsZCBhbGxvdyBpdCB0byBpbnRlcnByZXQgdGhpcyBk
YXRhCisgZGVzcGl0ZSB0aGUgbWlzc2luZyBwaWVjZXMuCitUaGVyZSBNVVNUIE5PVCBiZSBhbnkg
bW9yZSBwYWdlcyBpbiBhbiBPcHVzIGxvZ2ljYWwgYml0c3RyZWFtIGFmdGVyIGEgcGFnZQorIG1h
cmtlZCAnZW5kIG9mIHN0cmVhbScuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hv
cj0iZ3JhbnBvcyIgdGl0bGU9IkdyYW51bGUgUG9zaXRpb24iPgorPHQ+CitUaGUgZ3JhbnVsZSBw
b3NpdGlvbiBNVVNUIGJlIHplcm8gZm9yIHRoZSBJRCBoZWFkZXIgcGFnZSBhbmQgdGhlCisgcGFn
ZSB3aGVyZSB0aGUgY29tbWVudCBoZWFkZXIgY29tcGxldGVzLgorVGhhdCBpcywgdGhlIGZpcnN0
IHBhZ2UgaW4gdGhlIGxvZ2ljYWwgc3RyZWFtLCBhbmQgdGhlIGxhc3QgaGVhZGVyCisgcGFnZSBi
ZWZvcmUgdGhlIGZpcnN0IGF1ZGlvIGRhdGEgcGFnZSBib3RoIGhhdmUgYSBncmFudWxlIHBvc2l0
aW9uIG9mIHplcm8uCis8L3Q+Cis8dD4KK1RoZSBncmFudWxlIHBvc2l0aW9uIG9mIGFuIGF1ZGlv
IGRhdGEgcGFnZSBlbmNvZGVzIHRoZSB0b3RhbCBudW1iZXIgb2YgUENNCisgc2FtcGxlcyBpbiB0
aGUgc3RyZWFtIHVwIHRvIGFuZCBpbmNsdWRpbmcgdGhlIGxhc3QgZnVsbHktZGVjb2RhYmxlIHNh
bXBsZSBmcm9tCisgdGhlIGxhc3QgcGFja2V0IGNvbXBsZXRlZCBvbiB0aGF0IHBhZ2UuCitUaGUg
Z3JhbnVsZSBwb3NpdGlvbiBvZiB0aGUgZmlyc3QgYXVkaW8gZGF0YSBwYWdlIHdpbGwgdXN1YWxs
eSBiZSBsYXJnZXIgdGhhbgorIHplcm8sIGFzIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9InN0
YXJ0X2dyYW5wb3NfcmVzdHJpY3Rpb25zIi8+LgorPC90PgorCis8dD4KK0EgcGFnZSB0aGF0IGlz
IGVudGlyZWx5IHNwYW5uZWQgYnkgYSBzaW5nbGUgcGFja2V0ICh0aGF0IGNvbXBsZXRlcyBvbiBh
Cisgc3Vic2VxdWVudCBwYWdlKSBoYXMgbm8gZ3JhbnVsZSBwb3NpdGlvbiwgYW5kIHRoZSBncmFu
dWxlIHBvc2l0aW9uIGZpZWxkIGlzCisgc2V0IHRvIHRoZSBzcGVjaWFsIHZhbHVlICctMScgaW4g
dHdvJ3MgY29tcGxlbWVudC4KKzwvdD4KKworPHQ+CitUaGUgZ3JhbnVsZSBwb3NpdGlvbiBvZiBh
biBhdWRpbyBkYXRhIHBhZ2UgaXMgaW4gdW5pdHMgb2YgUENNIGF1ZGlvIHNhbXBsZXMgYXQKKyBh
IGZpeGVkIHJhdGUgb2YgNDgmbmJzcDtrSHogKHBlciBjaGFubmVsOyBhIHN0ZXJlbyBzdHJlYW0n
cyBncmFudWxlIHBvc2l0aW9uCisgZG9lcyBub3QgaW5jcmVtZW50IGF0IHR3aWNlIHRoZSBzcGVl
ZCBvZiBhIG1vbm8gc3RyZWFtKS4KK0l0IGlzIHBvc3NpYmxlIHRvIHJ1biBhbiBPcHVzIGRlY29k
ZXIgYXQgb3RoZXIgc2FtcGxpbmcgcmF0ZXMsCisgYnV0IGFsbCBPcHVzIHBhY2tldHMgZW5jb2Rl
IHNhbXBsZXMgYXQgYSBzYW1wbGluZyByYXRlIHRoYXQgZXZlbmx5IGRpdmlkZXMKKyA0OCZuYnNw
O2tIei4KK1RoZXJlZm9yZSwgdGhlIHZhbHVlIGluIHRoZSBncmFudWxlIHBvc2l0aW9uIGZpZWxk
IGFsd2F5cyBjb3VudHMgc2FtcGxlcworIGFzc3VtaW5nIGEgNDgmbmJzcDtrSHogZGVjb2Rpbmcg
cmF0ZSwgYW5kIHRoZSByZXN0IG9mIHRoaXMgc3BlY2lmaWNhdGlvbiBtYWtlcworIHRoZSBzYW1l
IGFzc3VtcHRpb24uCis8L3Q+CisKKzx0PgorVGhlIGR1cmF0aW9uIG9mIGFuIE9wdXMgcGFja2V0
IGFzIGRlZmluZWQgaW4gPHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+IGNhbiBiZQorIGFueSBtdWx0
aXBsZSBvZiAyLjUmbmJzcDttcywgdXAgdG8gYSBtYXhpbXVtIG9mIDEyMCZuYnNwO21zLgorVGhp
cyBkdXJhdGlvbiBpcyBlbmNvZGVkIGluIHRoZSBUT0Mgc2VxdWVuY2UgYXQgdGhlIGJlZ2lubmlu
ZyBvZiBlYWNoIHBhY2tldC4KK1RoZSBudW1iZXIgb2Ygc2FtcGxlcyByZXR1cm5lZCBieSBhIGRl
Y29kZXIgY29ycmVzcG9uZHMgdG8gdGhpcyBkdXJhdGlvbgorIGV4YWN0bHksIGV2ZW4gZm9yIHRo
ZSBmaXJzdCBmZXcgcGFja2V0cy4KK0ZvciBleGFtcGxlLCBhIDIwJm5ic3A7bXMgcGFja2V0IGZl
ZCB0byBhIGRlY29kZXIgcnVubmluZyBhdCA0OCZuYnNwO2tIeiB3aWxsCisgYWx3YXlzIHJldHVy
biA5NjAmbmJzcDtzYW1wbGVzLgorQSBkZW11eGVyIGNhbiBwYXJzZSB0aGUgVE9DIHNlcXVlbmNl
IGF0IHRoZSBiZWdpbm5pbmcgb2YgZWFjaCBPZ2cgcGFja2V0IHRvCisgd29yayBiYWNrd2FyZHMg
b3IgZm9yd2FyZHMgZnJvbSBhIHBhY2tldCB3aXRoIGEga25vd24gZ3JhbnVsZSBwb3NpdGlvbiAo
aS5lLiwKKyB0aGUgbGFzdCBwYWNrZXQgY29tcGxldGVkIG9uIHNvbWUgcGFnZSkgaW4gb3JkZXIg
dG8gYXNzaWduIGdyYW51bGUgcG9zaXRpb25zCisgdG8gZXZlcnkgcGFja2V0LCBvciBldmVuIGV2
ZXJ5IGluZGl2aWR1YWwgc2FtcGxlLgorVGhlIG9uZSBleGNlcHRpb24gaXMgdGhlIGxhc3QgcGFn
ZSBpbiB0aGUgc3RyZWFtLCBhcyBkZXNjcmliZWQgYmVsb3cuCis8L3Q+CisKKzx0PgorQWxsIG90
aGVyIHBhZ2VzIHdpdGggY29tcGxldGVkIHBhY2tldHMgYWZ0ZXIgdGhlIGZpcnN0IE1VU1QgaGF2
ZSBhIGdyYW51bGUKKyBwb3NpdGlvbiBlcXVhbCB0byB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgY29u
dGFpbmVkIGluIHBhY2tldHMgdGhhdCBjb21wbGV0ZSBvbgorIHRoYXQgcGFnZSBwbHVzIHRoZSBn
cmFudWxlIHBvc2l0aW9uIG9mIHRoZSBtb3N0IHJlY2VudCBwYWdlIHdpdGggY29tcGxldGVkCisg
cGFja2V0cy4KK1RoaXMgZ3VhcmFudGVlcyB0aGF0IGEgZGVtdXhlciBjYW4gYXNzaWduIGluZGl2
aWR1YWwgcGFja2V0cyB0aGUgc2FtZSBncmFudWxlCisgcG9zaXRpb24gd2hlbiB3b3JraW5nIGZv
cndhcmRzIGFzIHdoZW4gd29ya2luZyBiYWNrd2FyZHMuCitGb3IgdGhpcyB0byB3b3JrLCB0aGVy
ZSBjYW5ub3QgYmUgYW55IGdhcHMuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0iZ2FwLXJlcGFp
ciIgdGl0bGU9IlJlcGFpcmluZyBHYXBzIGluIFJlYWwtdGltZSBTdHJlYW1zIj4KKzx0PgorSW4g
b3JkZXIgdG8gc3VwcG9ydCBjYXB0dXJpbmcgYSByZWFsLXRpbWUgc3RyZWFtIHRoYXQgaGFzIGxv
c3Qgb3Igbm90CisgdHJhbnNtaXR0ZWQgcGFja2V0cywgYSBtdWx0aXBsZXhlciAobXV4ZXIpIFNI
T1VMRCBlbWl0IHBhY2tldHMgdGhhdCBleHBsaWNpdGx5CisgcmVxdWVzdCB0aGUgdXNlIG9mIFBh
Y2tldCBMb3NzIENvbmNlYWxtZW50IChQTEMpIGluIHBsYWNlIG9mIHRoZSBtaXNzaW5nCisgcGFj
a2V0cy4KK0ltcGxlbWVudGF0aW9ucyB0aGF0IGZhaWwgdG8gZG8gc28gc3RpbGwgTVVTVCBOT1Qg
aW5jcmVtZW50IHRoZSBncmFudWxlCisgcG9zaXRpb24gZm9yIGEgcGFnZSBieSBhbnl0aGluZyBv
dGhlciB0aGFuIHRoZSBudW1iZXIgb2Ygc2FtcGxlcyBjb250YWluZWQgaW4KKyBwYWNrZXRzIHRo
YXQgYWN0dWFsbHkgY29tcGxldGUgb24gdGhhdCBwYWdlLgorPC90PgorPHQ+CitPbmx5IGdhcHMg
dGhhdCBhcmUgYSBtdWx0aXBsZSBvZiAyLjUmbmJzcDttcyBhcmUgcmVwYWlyYWJsZSwgYXMgdGhl
c2UgYXJlIHRoZQorIG9ubHkgZHVyYXRpb25zIHRoYXQgY2FuIGJlIGNyZWF0ZWQgYnkgcGFja2V0
IGxvc3Mgb3IgZGlzY29udGludW91cworIHRyYW5zbWlzc2lvbi4KK011eGVycyBuZWVkIG5vdCBo
YW5kbGUgb3RoZXIgZ2FwIHNpemVzLgorQ3JlYXRpbmcgdGhlIG5lY2Vzc2FyeSBwYWNrZXRzIGlu
dm9sdmVzIHN5bnRoZXNpemluZyBhIFRPQyBieXRlIChkZWZpbmVkIGluCitTZWN0aW9uJm5ic3A7
My4xIG9mJm5ic3A7PHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+KSZtZGFzaDthbmQgd2hhdGV2ZXIK
KyBhZGRpdGlvbmFsIGludGVybmFsIGZyYW1pbmcgaXMgbmVlZGVkJm1kYXNoO3RvIGluZGljYXRl
IHRoZSBwYWNrZXQgZHVyYXRpb24KKyBmb3IgZWFjaCBzdHJlYW0uCitUaGUgYWN0dWFsIGxlbmd0
aCBvZiBlYWNoIG1pc3NpbmcgT3B1cyBmcmFtZSBpbnNpZGUgdGhlIHBhY2tldCBpcyB6ZXJvIGJ5
dGVzLAorIGFzIGRlZmluZWQgaW4gU2VjdGlvbiZuYnNwOzMuMi4xIG9mJm5ic3A7PHhyZWYgdGFy
Z2V0PSJSRkM2NzE2Ii8+LgorPC90PgorCis8dD4KK1plcm8tYnl0ZSBmcmFtZXMgTUFZIGJlIHBh
Y2tlZCBpbnRvIHBhY2tldHMgdXNpbmcgYW55IG9mIGNvZGVzJm5ic3A7MCwgMSwKKyAyLCBvciZu
YnNwOzMuCitXaGVuIHN1Y2Nlc3NpdmUgZnJhbWVzIGhhdmUgdGhlIHNhbWUgY29uZmlndXJhdGlv
biwgdGhlIGhpZ2hlciBjb2RlIHBhY2tpbmdzCisgcmVkdWNlIG92ZXJoZWFkLgorTGlrZXdpc2Us
IGlmIHRoZSBUT0MgY29uZmlndXJhdGlvbiBtYXRjaGVzLCB0aGUgbXV4ZXIgTUFZIGZ1cnRoZXIg
Y29tYmluZSB0aGUKKyBlbXB0eSBmcmFtZXMgd2l0aCBwcmV2aW91cyBvciBzdWJzZXF1ZW50IG5v
bi16ZXJvLWxlbmd0aCBmcmFtZXMgKHVzaW5nCisgY29kZSZuYnNwOzIgb3IgVkJSIGNvZGUmbmJz
cDszKS4KKzwvdD4KKworPHQ+Cis8eHJlZiB0YXJnZXQ9IlJGQzY3MTYiLz4gZG9lcyBub3QgaW1w
b3NlIGFueSByZXF1aXJlbWVudHMgb24gdGhlIFBMQywgYnV0IHRoaXMKKyBzZWN0aW9uIG91dGxp
bmVzIGNob2ljZXMgdGhhdCBhcmUgZXhwZWN0ZWQgdG8gaGF2ZSBhIHBvc2l0aXZlIGluZmx1ZW5j
ZSBvbgorIG1vc3QgUExDIGltcGxlbWVudGF0aW9ucywgaW5jbHVkaW5nIHRoZSByZWZlcmVuY2Ug
aW1wbGVtZW50YXRpb24uCitTeW50aGVzaXplZCBUT0Mgc2VxdWVuY2VzIFNIT1VMRCBtYWludGFp
biB0aGUgc2FtZSBtb2RlLCBhdWRpbyBiYW5kd2lkdGgsCisgY2hhbm5lbCBjb3VudCwgYW5kIGZy
YW1lIHNpemUgYXMgdGhlIHByZXZpb3VzIHBhY2tldCAoaWYgYW55KS4KK1RoaXMgaXMgdGhlIHNp
bXBsZXN0IGFuZCB1c3VhbGx5IHRoZSBtb3N0IHdlbGwtdGVzdGVkIGNhc2UgZm9yIHRoZSBQTEMg
dG8KKyBoYW5kbGUgYW5kIGl0IGNvdmVycyBhbGwgbG9zc2VzIHRoYXQgZG8gbm90IGluY2x1ZGUg
YSBjb25maWd1cmF0aW9uIHN3aXRjaCwKKyBhcyBkZWZpbmVkIGluIFNlY3Rpb24mbmJzcDs0LjUg
b2YmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzY3MTYiLz4uCis8L3Q+CisKKzx0PgorV2hlbiBhIHBy
ZXZpb3VzIHBhY2tldCBpcyBhdmFpbGFibGUsIGtlZXBpbmcgdGhlIGF1ZGlvIGJhbmR3aWR0aCBh
bmQgY2hhbm5lbAorIGNvdW50IHRoZSBzYW1lIGFsbG93cyB0aGUgUExDIHRvIHByb3ZpZGUgbWF4
aW11bSBjb250aW51aXR5IGluIHRoZSBjb25jZWFsbWVudAorIGRhdGEgaXQgZ2VuZXJhdGVzLgor
SG93ZXZlciwgaWYgdGhlIHNpemUgb2YgdGhlIGdhcCBpcyBub3QgYSBtdWx0aXBsZSBvZiB0aGUg
bW9zdCByZWNlbnQgZnJhbWUKKyBzaXplLCB0aGVuIHRoZSBmcmFtZSBzaXplIHdpbGwgaGF2ZSB0
byBjaGFuZ2UgZm9yIGF0IGxlYXN0IHNvbWUgZnJhbWVzLgorU3VjaCBjaGFuZ2VzIFNIT1VMRCBi
ZSBkZWxheWVkIGFzIGxvbmcgYXMgcG9zc2libGUgdG8gc2ltcGxpZnkKKyB0aGluZ3MgZm9yIFBM
QyBpbXBsZW1lbnRhdGlvbnMuCis8L3Q+CisKKzx0PgorQXMgYW4gZXhhbXBsZSwgYSA5NSZuYnNw
O21zIGdhcCBjb3VsZCBiZSBlbmNvZGVkIGFzIG5pbmV0ZWVuIDUmbmJzcDttcyBmcmFtZXMKKyBp
biB0d28gYnl0ZXMgd2l0aCBhIHNpbmdsZSBDQlIgY29kZSZuYnNwOzMgcGFja2V0LgorSWYgdGhl
IHByZXZpb3VzIGZyYW1lIHNpemUgd2FzIDIwJm5ic3A7bXMsIHVzaW5nIGZvdXIgMjAmbmJzcDtt
cyBmcmFtZXMKKyBmb2xsb3dlZCBieSB0aHJlZSA1Jm5ic3A7bXMgZnJhbWVzIHJlcXVpcmVzIDQm
bmJzcDtieXRlcyAocGx1cyBhbiBleHRyYSBieXRlCisgb2YgT2dnIGxhY2luZyBvdmVyaGVhZCks
IGJ1dCBhbGxvd3MgdGhlIFBMQyB0byB1c2UgaXRzIHdlbGwtdGVzdGVkIHN0ZWFkeQorIHN0YXRl
IGJlaGF2aW9yIGZvciBhcyBsb25nIGFzIHBvc3NpYmxlLgorVGhlIHRvdGFsIGJpdHJhdGUgb2Yg
dGhlIGxhdHRlciBhcHByb2FjaCwgaW5jbHVkaW5nIE9nZyBvdmVyaGVhZCwgaXMgYWJvdXQKKyAw
LjQmbmJzcDtrYnBzLCBzbyB0aGUgaW1wYWN0IG9uIGZpbGUgc2l6ZSBpcyBtaW5pbWFsLgorPC90
PgorCis8dD4KK0NoYW5naW5nIG1vZGVzIGlzIGRpc2NvdXJhZ2VkLCBzaW5jZSB0aGlzIGNhdXNl
cyBzb21lIGRlY29kZXIgaW1wbGVtZW50YXRpb25zCisgdG8gcmVzZXQgdGhlaXIgUExDIHN0YXRl
LgorSG93ZXZlciwgU0lMSyBhbmQgSHlicmlkIG1vZGUgZnJhbWVzIGNhbm5vdCBmaWxsIGdhcHMg
dGhhdCBhcmUgbm90IGEgbXVsdGlwbGUKKyBvZiAxMCZuYnNwO21zLgorSWYgc3dpdGNoaW5nIHRv
IENFTFQgbW9kZSBpcyBuZWVkZWQgdG8gbWF0Y2ggdGhlIGdhcCBzaXplLCBhIG11eGVyIFNIT1VM
RCBkbworIHNvIGF0IHRoZSBlbmQgb2YgdGhlIGdhcCB0byBhbGxvdyB0aGUgUExDIHRvIGZ1bmN0
aW9uIGZvciBhcyBsb25nIGFzIHBvc3NpYmxlLgorPC90PgorCis8dD4KK0luIHRoZSBleGFtcGxl
IGFib3ZlLCBpZiB0aGUgcHJldmlvdXMgZnJhbWUgd2FzIGEgMjAmbmJzcDttcyBTSUxLIG1vZGUg
ZnJhbWUsCisgdGhlIGJldHRlciBzb2x1dGlvbiBpcyB0byBzeW50aGVzaXplIGEgcGFja2V0IGRl
c2NyaWJpbmcgZm91ciAyMCZuYnNwO21zIFNJTEsKKyBmcmFtZXMsIGZvbGxvd2VkIGJ5IGEgcGFj
a2V0IHdpdGggYSBzaW5nbGUgMTAmbmJzcDttcyBTSUxLCisgZnJhbWUsIGFuZCBmaW5hbGx5IGEg
cGFja2V0IHdpdGggYSA1Jm5ic3A7bXMgQ0VMVCBmcmFtZSwgdG8gZmlsbCB0aGUgOTUmbmJzcDtt
cworIGdhcC4KK1RoaXMgYWxzbyByZXF1aXJlcyBmb3VyIGJ5dGVzIHRvIGRlc2NyaWJlIHRoZSBz
eW50aGVzaXplZCBwYWNrZXQgZGF0YSAodHdvCisgYnl0ZXMgZm9yIGEgQ0JSIGNvZGUgMyBhbmQg
b25lIGJ5dGUgZWFjaCBmb3IgdHdvIGNvZGUgMCBwYWNrZXRzKSBidXQgdGhyZWUKKyBieXRlcyBv
ZiBPZ2cgbGFjaW5nIG92ZXJoZWFkIGFyZSBuZWVkZWQgdG8gbWFyayB0aGUgcGFja2V0IGJvdW5k
YXJpZXMuCitBdCAwLjYga2JwcywgdGhpcyBpcyBzdGlsbCBhIG1pbmltYWwgYml0cmF0ZSBpbXBh
Y3Qgb3ZlciBhIG5haXZlLCBsb3cgcXVhbGl0eQorIHNvbHV0aW9uLgorPC90PgorCis8dD4KK1Np
bmNlIG1lZGl1bS1iYW5kIGF1ZGlvIGlzIGFuIG9wdGlvbiBvbmx5IGluIHRoZSBTSUxLIG1vZGUs
IHdpZGViYW5kIGZyYW1lcworIFNIT1VMRCBiZSBnZW5lcmF0ZWQgaWYgc3dpdGNoaW5nIGZyb20g
dGhhdCBjb25maWd1cmF0aW9uIHRvIENFTFQgbW9kZSwgdG8KKyBlbnN1cmUgdGhhdCBhbnkgUExD
IGltcGxlbWVudGF0aW9uIHdoaWNoIGRvZXMgdHJ5IHRvIG1pZ3JhdGUgc3RhdGUgYmV0d2Vlbgor
IHRoZSBtb2RlcyB3aWxsIGJlIGFibGUgdG8gcHJlc2VydmUgYWxsIG9mIHRoZSBhdmFpbGFibGUg
YXVkaW8gYmFuZHdpZHRoLgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0i
cHJlc2tpcCIgdGl0bGU9IlByZS1za2lwIj4KKzx0PgorVGhlcmUgaXMgc29tZSBhbW91bnQgb2Yg
bGF0ZW5jeSBpbnRyb2R1Y2VkIGR1cmluZyB0aGUgZGVjb2RpbmcgcHJvY2VzcywgdG8KKyBhbGxv
dyBmb3Igb3ZlcmxhcCBpbiB0aGUgQ0VMVCBtb2RlLCBzdGVyZW8gbWl4aW5nIGluIHRoZSBTSUxL
IG1vZGUsIGFuZAorIHJlc2FtcGxpbmcuCitUaGUgZW5jb2RlciBtaWdodCBoYXZlIGludHJvZHVj
ZWQgYWRkaXRpb25hbCBsYXRlbmN5IHRocm91Z2ggaXRzIG93biByZXNhbXBsaW5nCisgYW5kIGFu
YWx5c2lzICh0aG91Z2ggdGhlIGV4YWN0IGFtb3VudCBpcyBub3Qgc3BlY2lmaWVkKS4KK1RoZXJl
Zm9yZSwgdGhlIGZpcnN0IGZldyBzYW1wbGVzIHByb2R1Y2VkIGJ5IHRoZSBkZWNvZGVyIGRvIG5v
dCBjb3JyZXNwb25kIHRvCisgcmVhbCBpbnB1dCBhdWRpbywgYnV0IGFyZSBpbnN0ZWFkIGNvbXBv
c2VkIG9mIHBhZGRpbmcgaW5zZXJ0ZWQgYnkgdGhlIGVuY29kZXIKKyB0byBjb21wZW5zYXRlIGZv
ciB0aGlzIGxhdGVuY3kuCitUaGVzZSBzYW1wbGVzIG5lZWQgdG8gYmUgc3RvcmVkIGFuZCBkZWNv
ZGVkLCBhcyBPcHVzIGlzIGFuIGFzeW1wdG90aWNhbGx5CisgY29udmVyZ2VudCBwcmVkaWN0aXZl
IGNvZGVjLCBtZWFuaW5nIHRoZSBkZWNvZGVkIGNvbnRlbnRzIG9mIGVhY2ggZnJhbWUgZGVwZW5k
Cisgb24gdGhlIHJlY2VudCBoaXN0b3J5IG9mIGRlY29kZXIgaW5wdXRzLgorSG93ZXZlciwgYSBw
bGF5ZXIgd2lsbCB3YW50IHRvIHNraXAgdGhlc2Ugc2FtcGxlcyBhZnRlciBkZWNvZGluZyB0aGVt
LgorPC90PgorCis8dD4KK0EgJ3ByZS1za2lwJyBmaWVsZCBpbiB0aGUgSUQgaGVhZGVyIChzZWUg
PHhyZWYgdGFyZ2V0PSJpZF9oZWFkZXIiLz4pIHNpZ25hbHMKKyB0aGUgbnVtYmVyIG9mIHNhbXBs
ZXMgdGhhdCBTSE9VTEQgYmUgc2tpcHBlZCAoZGVjb2RlZCBidXQgZGlzY2FyZGVkKSBhdCB0aGUK
KyBiZWdpbm5pbmcgb2YgdGhlIHN0cmVhbSwgdGhvdWdoIHNvbWUgc3BlY2lmaWMgYXBwbGljYXRp
b25zIG1pZ2h0IGhhdmUgYSByZWFzb24KKyBmb3IgbG9va2luZyBhdCB0aGF0IGRhdGEuCitUaGlz
IGFtb3VudCBuZWVkIG5vdCBiZSBhIG11bHRpcGxlIG9mIDIuNSZuYnNwO21zLCBNQVkgYmUgc21h
bGxlciB0aGFuIGEgc2luZ2xlCisgcGFja2V0LCBvciBNQVkgc3BhbiB0aGUgY29udGVudHMgb2Yg
c2V2ZXJhbCBwYWNrZXRzLgorVGhlc2Ugc2FtcGxlcyBhcmUgbm90IHZhbGlkIGF1ZGlvLgorPC90
PgorCis8dD4KK0ZvciBleGFtcGxlLCBpZiB0aGUgZmlyc3QgT3B1cyBmcmFtZSB1c2VzIHRoZSBD
RUxUIG1vZGUsIGl0IHdpbGwgYWx3YXlzCisgcHJvZHVjZSAxMjAgc2FtcGxlcyBvZiB3aW5kb3dl
ZCBvdmVybGFwLWFkZCBkYXRhLgorSG93ZXZlciwgdGhlIG92ZXJsYXAgZGF0YSBpcyBpbml0aWFs
bHkgYWxsIHplcm9zIChzaW5jZSB0aGVyZSBpcyBubyBwcmlvcgorIGZyYW1lKSwgbWVhbmluZyB0
aGlzIGNhbm5vdCwgaW4gZ2VuZXJhbCwgYWNjdXJhdGVseSByZXByZXNlbnQgdGhlIG9yaWdpbmFs
CisgYXVkaW8uCitUaGUgU0lMSyBtb2RlIHJlcXVpcmVzIGFkZGl0aW9uYWwgZGVsYXkgdG8gYWNj
b3VudCBmb3IgaXRzIGFuYWx5c2lzIGFuZAorIHJlc2FtcGxpbmcgbGF0ZW5jeS4KK1RoZSBlbmNv
ZGVyIGRlbGF5cyB0aGUgb3JpZ2luYWwgYXVkaW8gdG8gYXZvaWQgdGhpcyBwcm9ibGVtLgorPC90
PgorCis8dD4KK1RoZSBwcmUtc2tpcCBmaWVsZCBNQVkgYWxzbyBiZSB1c2VkIHRvIHBlcmZvcm0g
c2FtcGxlLWFjY3VyYXRlIGNyb3BwaW5nIG9mCisgYWxyZWFkeSBlbmNvZGVkIHN0cmVhbXMuCitJ
biB0aGlzIGNhc2UsIGEgdmFsdWUgb2YgYXQgbGVhc3QgMzg0MCZuYnNwO3NhbXBsZXMgKDgwJm5i
c3A7bXMpIHByb3ZpZGVzCisgc3VmZmljaWVudCBoaXN0b3J5IHRvIHRoZSBkZWNvZGVyIHRoYXQg
aXQgd2lsbCBoYXZlIGNvbnZlcmdlZAorIGJlZm9yZSB0aGUgc3RyZWFtJ3Mgb3V0cHV0IGJlZ2lu
cy4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InBjbV9zYW1wbGVfcG9z
aXRpb24iIHRpdGxlPSJQQ00gU2FtcGxlIFBvc2l0aW9uIj4KKzx0PgorVGhlIFBDTSBzYW1wbGUg
cG9zaXRpb24gaXMgZGV0ZXJtaW5lZCBmcm9tIHRoZSBncmFudWxlIHBvc2l0aW9uIHVzaW5nIHRo
ZQorIGZvcm11bGEKKzwvdD4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGln
bj0iY2VudGVyIj48IVtDREFUQVsKKydQQ00gc2FtcGxlIHBvc2l0aW9uJyA9ICdncmFudWxlIHBv
c2l0aW9uJyAtICdwcmUtc2tpcCcgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0Pgor
Rm9yIGV4YW1wbGUsIGlmIHRoZSBncmFudWxlIHBvc2l0aW9uIG9mIHRoZSBmaXJzdCBhdWRpbyBk
YXRhIHBhZ2UgaXMgNTksOTcxLAorIGFuZCB0aGUgcHJlLXNraXAgaXMgMTEsOTcxLCB0aGVuIHRo
ZSBQQ00gc2FtcGxlIHBvc2l0aW9uIG9mIHRoZSBsYXN0IGRlY29kZWQKKyBzYW1wbGUgZnJvbSB0
aGF0IHBhZ2UgaXMgNDgsMDAwLgorPC90PgorPHQ+CitUaGlzIGNhbiBiZSBjb252ZXJ0ZWQgaW50
byBhIHBsYXliYWNrIHRpbWUgdXNpbmcgdGhlIGZvcm11bGEKKzwvdD4KKzxmaWd1cmUgYWxpZ249
ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAg
ICAgICAgICdQQ00gc2FtcGxlIHBvc2l0aW9uJworJ3BsYXliYWNrIHRpbWUnID0gLS0tLS0tLS0t
LS0tLS0tLS0tLS0tIC4KKyAgICAgICAgICAgICAgICAgICAgICAgICA0ODAwMC4wCitdXT48L2Fy
dHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitUaGUgaW5pdGlhbCBQQ00gc2FtcGxlIHBvc2l0aW9u
IGJlZm9yZSBhbnkgc2FtcGxlcyBhcmUgcGxheWVkIGlzIG5vcm1hbGx5ICcwJy4KK0luIHRoaXMg
Y2FzZSwgdGhlIFBDTSBzYW1wbGUgcG9zaXRpb24gb2YgdGhlIGZpcnN0IGF1ZGlvIHNhbXBsZSB0
byBiZSBwbGF5ZWQKKyBzdGFydHMgYXQgJzEnLCBiZWNhdXNlIGl0IG1hcmtzIHRoZSB0aW1lIG9u
IHRoZSBjbG9jaworIDxzcGFueCBzdHlsZT0iZW1waCI+YWZ0ZXI8L3NwYW54PiB0aGF0IHNhbXBs
ZSBoYXMgYmVlbiBwbGF5ZWQsIGFuZCBhIHN0cmVhbQorIHRoYXQgaXMgZXhhY3RseSBvbmUgc2Vj
b25kIGxvbmcgaGFzIGEgZmluYWwgUENNIHNhbXBsZSBwb3NpdGlvbiBvZiAnNDgwMDAnLAorIGFz
IGluIHRoZSBleGFtcGxlIGhlcmUuCis8L3Q+CisKKzx0PgorVm9yYmlzIHN0cmVhbXMgdXNlIGEg
Z3JhbnVsZSBwb3NpdGlvbiBzbWFsbGVyIHRoYW4gdGhlIG51bWJlciBvZiBhdWRpbyBzYW1wbGVz
CisgY29udGFpbmVkIGluIHRoZSBmaXJzdCBhdWRpbyBkYXRhIHBhZ2UgdG8gaW5kaWNhdGUgdGhh
dCBzb21lIG9mIHRob3NlIHNhbXBsZXMKKyBhcmUgdHJpbW1lZCBmcm9tIHRoZSBvdXRwdXQgKHNl
ZSA8eHJlZiB0YXJnZXQ9InZvcmJpcy10cmltIi8+KS4KK0hvd2V2ZXIsIHRvIGRvIHNvLCBWb3Ji
aXMgcmVxdWlyZXMgdGhhdCB0aGUgZmlyc3QgYXVkaW8gZGF0YSBwYWdlIGNvbnRhaW5zCisgZXhh
Y3RseSB0d28gcGFja2V0cywgaW4gb3JkZXIgdG8gYWxsb3cgdGhlIGRlY29kZXIgdG8gcGVyZm9y
bSBQQ00gcG9zaXRpb24KKyBhZGp1c3RtZW50cyBiZWZvcmUgbmVlZGluZyB0byByZXR1cm4gYW55
IFBDTSBkYXRhLgorT3B1cyB1c2VzIHRoZSBwcmUtc2tpcCBtZWNoYW5pc20gZm9yIHRoaXMgcHVy
cG9zZSBpbnN0ZWFkLCBzaW5jZSB0aGUgZW5jb2RlcgorIG1pZ2h0IGludHJvZHVjZSBtb3JlIHRo
YW4gYSBzaW5nbGUgcGFja2V0J3Mgd29ydGggb2YgbGF0ZW5jeSwgYW5kIHNpbmNlIHZlcnkKKyBs
YXJnZSBwYWNrZXRzIGluIHN0cmVhbXMgd2l0aCBhIHZlcnkgbGFyZ2UgbnVtYmVyIG9mIGNoYW5u
ZWxzIG1pZ2h0IG5vdCBmaXQKKyBvbiBhIHNpbmdsZSBwYWdlLgorPC90PgorPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiBhbmNob3I9ImVuZF90cmltbWluZyIgdGl0bGU9IkVuZCBUcmltbWluZyI+Cis8
dD4KK1RoZSBwYWdlIHdpdGggdGhlICdlbmQgb2Ygc3RyZWFtJyBmbGFnIHNldCBNQVkgaGF2ZSBh
IGdyYW51bGUgcG9zaXRpb24gdGhhdAorIGluZGljYXRlcyB0aGUgcGFnZSBjb250YWlucyBsZXNz
IGF1ZGlvIGRhdGEgdGhhbiB3b3VsZCBub3JtYWxseSBiZSByZXR1cm5lZCBieQorIGRlY29kaW5n
IHVwIHRocm91Z2ggdGhlIGZpbmFsIHBhY2tldC4KK1RoaXMgaXMgdXNlZCB0byBlbmQgdGhlIHN0
cmVhbSBzb21ld2hlcmUgb3RoZXIgdGhhbiBhbiBldmVuIGZyYW1lIGJvdW5kYXJ5LgorVGhlIGdy
YW51bGUgcG9zaXRpb24gb2YgdGhlIG1vc3QgcmVjZW50IGF1ZGlvIGRhdGEgcGFnZSB3aXRoIGNv
bXBsZXRlZCBwYWNrZXRzCisgaXMgdXNlZCB0byBtYWtlIHRoaXMgZGV0ZXJtaW5hdGlvbiwgb3Ig
JzAnIGlzIHVzZWQgaWYgdGhlcmUgd2VyZSBubyBwcmV2aW91cworIGF1ZGlvIGRhdGEgcGFnZXMg
d2l0aCBhIGNvbXBsZXRlZCBwYWNrZXQuCitUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZXNlIGdy
YW51bGUgcG9zaXRpb25zIGluZGljYXRlcyBob3cgbWFueSBzYW1wbGVzIHRvCisga2VlcCBhZnRl
ciBkZWNvZGluZyB0aGUgcGFja2V0cyB0aGF0IGNvbXBsZXRlZCBvbiB0aGUgZmluYWwgcGFnZS4K
K1RoZSByZW1haW5pbmcgc2FtcGxlcyBhcmUgZGlzY2FyZGVkLgorVGhlIG51bWJlciBvZiBkaXNj
YXJkZWQgc2FtcGxlcyBTSE9VTEQgYmUgbm8gbGFyZ2VyIHRoYW4gdGhlIG51bWJlciBkZWNvZGVk
CisgZnJvbSB0aGUgbGFzdCBwYWNrZXQuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFu
Y2hvcj0ic3RhcnRfZ3JhbnBvc19yZXN0cmljdGlvbnMiCisgdGl0bGU9IlJlc3RyaWN0aW9ucyBv
biB0aGUgSW5pdGlhbCBHcmFudWxlIFBvc2l0aW9uIj4KKzx0PgorVGhlIGdyYW51bGUgcG9zaXRp
b24gb2YgdGhlIGZpcnN0IGF1ZGlvIGRhdGEgcGFnZSB3aXRoIGEgY29tcGxldGVkIHBhY2tldCBN
QVkKKyBiZSBsYXJnZXIgdGhhbiB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgY29udGFpbmVkIGluIHBh
Y2tldHMgdGhhdCBjb21wbGV0ZSBvbgorIHRoYXQgcGFnZSwgaG93ZXZlciBpdCBNVVNUIE5PVCBi
ZSBzbWFsbGVyLCB1bmxlc3MgdGhhdCBwYWdlIGhhcyB0aGUgJ2VuZCBvZgorIHN0cmVhbScgZmxh
ZyBzZXQuCitBbGxvd2luZyBhIGdyYW51bGUgcG9zaXRpb24gbGFyZ2VyIHRoYW4gdGhlIG51bWJl
ciBvZiBzYW1wbGVzIGFsbG93cyB0aGUKKyBiZWdpbm5pbmcgb2YgYSBzdHJlYW0gdG8gYmUgY3Jv
cHBlZCBvciBhIGxpdmUgc3RyZWFtIHRvIGJlIGpvaW5lZCB3aXRob3V0CisgcmV3cml0aW5nIHRo
ZSBncmFudWxlIHBvc2l0aW9uIG9mIGFsbCB0aGUgcmVtYWluaW5nIHBhZ2VzLgorVGhpcyBtZWFu
cyB0aGF0IHRoZSBQQ00gc2FtcGxlIHBvc2l0aW9uIGp1c3QgYmVmb3JlIHRoZSBmaXJzdCBzYW1w
bGUgdG8gYmUKKyBwbGF5ZWQgTUFZIGJlIGxhcmdlciB0aGFuICcwJy4KK1N5bmNocm9uaXphdGlv
biB3aGVuIG11bHRpcGxleGluZyB3aXRoIG90aGVyIGxvZ2ljYWwgc3RyZWFtcyBzdGlsbCB1c2Vz
IHRoZSBQQ00KKyBzYW1wbGUgcG9zaXRpb24gcmVsYXRpdmUgdG8gJzAnIHRvIGNvbXB1dGUgc2Ft
cGxlIHRpbWVzLgorVGhpcyBkb2VzIG5vdCBhZmZlY3QgdGhlIGJlaGF2aW9yIG9mIHByZS1za2lw
OiBleGFjdGx5ICdwcmUtc2tpcCcgc2FtcGxlcworIFNIT1VMRCBiZSBza2lwcGVkIGZyb20gdGhl
IGJlZ2lubmluZyBvZiB0aGUgZGVjb2RlZCBvdXRwdXQsIGV2ZW4gaWYgdGhlCisgaW5pdGlhbCBQ
Q00gc2FtcGxlIHBvc2l0aW9uIGlzIGdyZWF0ZXIgdGhhbiB6ZXJvLgorPC90PgorCis8dD4KK09u
IHRoZSBvdGhlciBoYW5kLCBhIGdyYW51bGUgcG9zaXRpb24gdGhhdCBpcyBzbWFsbGVyIHRoYW4g
dGhlIG51bWJlciBvZgorIGRlY29kZWQgc2FtcGxlcyBwcmV2ZW50cyBhIGRlbXV4ZXIgZnJvbSB3
b3JraW5nIGJhY2t3YXJkcyB0byBhc3NpZ24gZWFjaAorIHBhY2tldCBvciBlYWNoIGluZGl2aWR1
YWwgc2FtcGxlIGEgdmFsaWQgZ3JhbnVsZSBwb3NpdGlvbiwgc2luY2UgZ3JhbnVsZQorIHBvc2l0
aW9ucyBhcmUgbm9uLW5lZ2F0aXZlLgorQW4gaW1wbGVtZW50YXRpb24gTVVTVCB0cmVhdCBhbnkg
c3RyZWFtIGFzIGludmFsaWQgaWYgdGhlIGdyYW51bGUgcG9zaXRpb24KKyBpcyBzbWFsbGVyIHRo
YW4gdGhlIG51bWJlciBvZiBzYW1wbGVzIGNvbnRhaW5lZCBpbiBwYWNrZXRzIHRoYXQgY29tcGxl
dGUgb24KKyB0aGUgZmlyc3QgYXVkaW8gZGF0YSBwYWdlIHdpdGggYSBjb21wbGV0ZWQgcGFja2V0
LCB1bmxlc3MgdGhhdCBwYWdlIGhhcyB0aGUKKyAnZW5kIG9mIHN0cmVhbScgZmxhZyBzZXQuCitJ
dCBNQVkgZGVmZXIgdGhpcyBhY3Rpb24gdW50aWwgaXQgZGVjb2RlcyB0aGUgbGFzdCBwYWNrZXQg
Y29tcGxldGVkIG9uIHRoYXQKKyBwYWdlLgorPC90PgorCis8dD4KK0lmIHRoYXQgcGFnZSBoYXMg
dGhlICdlbmQgb2Ygc3RyZWFtJyBmbGFnIHNldCwgYSBkZW11eGVyIE1VU1QgdHJlYXQgYW55IHN0
cmVhbQorIGFzIGludmFsaWQgaWYgaXRzIGdyYW51bGUgcG9zaXRpb24gaXMgc21hbGxlciB0aGFu
IHRoZSAncHJlLXNraXAnIGFtb3VudC4KK1RoaXMgd291bGQgaW5kaWNhdGUgdGhhdCB0aGVyZSBh
cmUgbW9yZSBzYW1wbGVzIHRvIGJlIHNraXBwZWQgZnJvbSB0aGUgaW5pdGlhbAorIGRlY29kZWQg
b3V0cHV0IHRoYW4gZXhpc3QgaW4gdGhlIHN0cmVhbS4KK0lmIHRoZSBncmFudWxlIHBvc2l0aW9u
IGlzIHNtYWxsZXIgdGhhbiB0aGUgbnVtYmVyIG9mIGRlY29kZWQgc2FtcGxlcyBwcm9kdWNlZAor
IGJ5IHRoZSBwYWNrZXRzIHRoYXQgY29tcGxldGUgb24gdGhhdCBwYWdlLCB0aGVuIGEgZGVtdXhl
ciBNVVNUIHVzZSBhbiBpbml0aWFsCisgZ3JhbnVsZSBwb3NpdGlvbiBvZiAnMCcsIGFuZCBjYW4g
d29yayBmb3J3YXJkcyBmcm9tICcwJyB0byB0aW1lc3RhbXAKKyBpbmRpdmlkdWFsIHBhY2tldHMu
CitJZiB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBpcyBsYXJnZXIgdGhhbiB0aGUgbnVtYmVyIG9mIGRl
Y29kZWQgc2FtcGxlcyBhdmFpbGFibGUsCisgdGhlbiB0aGUgZGVtdXhlciBNVVNUIHN0aWxsIHdv
cmsgYmFja3dhcmRzIGFzIGRlc2NyaWJlZCBhYm92ZSwgZXZlbiBpZiB0aGUKKyAnZW5kIG9mIHN0
cmVhbScgZmxhZyBpcyBzZXQsIHRvIGRldGVybWluZSB0aGUgaW5pdGlhbCBncmFudWxlIHBvc2l0
aW9uLCBhbmQKKyB0aHVzIHRoZSBpbml0aWFsIFBDTSBzYW1wbGUgcG9zaXRpb24uCitCb3RoIG9m
IHRoZXNlIHdpbGwgYmUgZ3JlYXRlciB0aGFuICcwJyBpbiB0aGlzIGNhc2UuCis8L3Q+Cis8L3Nl
Y3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2Vla2luZ19hbmRfcHJlcm9sbCIgdGl0bGU9IlNl
ZWtpbmcgYW5kIFByZS1yb2xsIj4KKzx0PgorU2Vla2luZyBpbiBPZ2cgZmlsZXMgaXMgYmVzdCBw
ZXJmb3JtZWQgdXNpbmcgYSBiaXNlY3Rpb24gc2VhcmNoIGZvciBhIHBhZ2UKKyB3aG9zZSBncmFu
dWxlIHBvc2l0aW9uIGNvcnJlc3BvbmRzIHRvIGEgUENNIHBvc2l0aW9uIGF0IG9yIGJlZm9yZSB0
aGUgc2VlaworIHRhcmdldC4KK1dpdGggYXBwcm9wcmlhdGVseSB3ZWlnaHRlZCBiaXNlY3Rpb24s
IGFjY3VyYXRlIHNlZWtpbmcgY2FuIGJlIHBlcmZvcm1lZCBpbgorIGp1c3Qgb25lIG9yIHR3byBi
aXNlY3Rpb25zIG9uIGF2ZXJhZ2UsIGV2ZW4gaW4gbXVsdGktZ2lnYWJ5dGUgZmlsZXMuCitTZWUg
PHhyZWYgdGFyZ2V0PSJzZWVraW5nIi8+IGZvciBhbiBleGFtcGxlIG9mIGdlbmVyYWwgaW1wbGVt
ZW50YXRpb24gZ3VpZGFuY2UuCis8L3Q+CisKKzx0PgorV2hlbiBzZWVraW5nIHdpdGhpbiBhbiBP
Z2cgT3B1cyBzdHJlYW0sIGFuIGltcGxlbWVudGF0aW9uIFNIT1VMRCBzdGFydCBkZWNvZGluZwor
IChhbmQgZGlzY2FyZGluZyB0aGUgb3V0cHV0KSBhdCBsZWFzdCAzODQwJm5ic3A7c2FtcGxlcyAo
ODAmbmJzcDttcykgcHJpb3IgdG8KKyB0aGUgc2VlayB0YXJnZXQgaW4gb3JkZXIgdG8gZW5zdXJl
IHRoYXQgdGhlIG91dHB1dCBhdWRpbyBpcyBjb3JyZWN0IGJ5IHRoZQorIHRpbWUgaXQgcmVhY2hl
cyB0aGUgc2VlayB0YXJnZXQuCitUaGlzICdwcmUtcm9sbCcgaXMgc2VwYXJhdGUgZnJvbSwgYW5k
IHVucmVsYXRlZCB0bywgdGhlICdwcmUtc2tpcCcgdXNlZCBhdCB0aGUKKyBiZWdpbm5pbmcgb2Yg
dGhlIHN0cmVhbS4KK0lmIHRoZSBwb2ludCA4MCZuYnNwO21zIHByaW9yIHRvIHRoZSBzZWVrIHRh
cmdldCBjb21lcyBiZWZvcmUgdGhlIGluaXRpYWwgUENNCisgc2FtcGxlIHBvc2l0aW9uLCBhbiBp
bXBsZW1lbnRhdGlvbiBTSE9VTEQgc3RhcnQgZGVjb2RpbmcgZnJvbSB0aGUgYmVnaW5uaW5nIG9m
CisgdGhlIHN0cmVhbSwgYXBwbHlpbmcgcHJlLXNraXAgYXMgbm9ybWFsLCByZWdhcmRsZXNzIG9m
IHdoZXRoZXIgdGhlIHByZS1za2lwIGlzCisgbGFyZ2VyIG9yIHNtYWxsZXIgdGhhbiA4MCZuYnNw
O21zLCBhbmQgdGhlbiBjb250aW51ZSB0byBkaXNjYXJkIHNhbXBsZXMKKyB0byByZWFjaCB0aGUg
c2VlayB0YXJnZXQgKGlmIGFueSkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gYW5jaG9yPSJoZWFkZXJzIiB0aXRsZT0iSGVhZGVyIFBhY2tldHMiPgorPHQ+CitB
biBPZ2cgT3B1cyBsb2dpY2FsIHN0cmVhbSBjb250YWlucyBleGFjdGx5IHR3byBtYW5kYXRvcnkg
aGVhZGVyIHBhY2tldHM6CisgYW4gaWRlbnRpZmljYXRpb24gaGVhZGVyIGFuZCBhIGNvbW1lbnQg
aGVhZGVyLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImlkX2hlYWRlciIgdGl0bGU9IklkZW50
aWZpY2F0aW9uIEhlYWRlciI+CisKKzxmaWd1cmUgYW5jaG9yPSJpZF9oZWFkZXJfcGFja2V0IiB0
aXRsZT0iSUQgSGVhZGVyIFBhY2tldCIgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0i
Y2VudGVyIj48IVtDREFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAg
ICAgMiAgICAgICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQg
NSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICdPJyAg
ICAgIHwgICAgICAncCcgICAgICB8ICAgICAgJ3UnICAgICAgfCAgICAgICdzJyAgICAgIHwKKyst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rCit8ICAgICAgJ0gnICAgICAgfCAgICAgICdlJyAgICAgIHwgICAgICAnYScgICAgICB8
ICAgICAgJ2QnICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgIFZlcnNpb24gPSAxICB8IENoYW5uZWwgQ291
bnQgfCAgICAgICAgICAgUHJlLXNraXAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAg
ICAgICAgICAgICAgIElucHV0IFNhbXBsZSBSYXRlIChIeikgICAgICAgICAgICAgICAgICAgIHwK
KystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rCit8ICAgT3V0cHV0IEdhaW4gKFE3LjggaW4gZEIpICAgIHwgTWFwcGluZyBGYW1p
bHl8ICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKyAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAg
T3B0aW9uYWwgQ2hhbm5lbCBNYXBwaW5nIFRhYmxlLi4uICAgICAgICAgICAgICAgOgorfCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitUaGUgZmllbGRz
IGluIHRoZSBpZGVudGlmaWNhdGlvbiAoSUQpIGhlYWRlciBoYXZlIHRoZSBmb2xsb3dpbmcgbWVh
bmluZzoKKzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0Pk1hZ2ljIFNpZ25hdHVyZToKKzx2c3Bh
Y2UgYmxhbmtMaW5lcz0iMSIvPgorVGhpcyBpcyBhbiA4LW9jdGV0ICg2NC1iaXQpIGZpZWxkIHRo
YXQgYWxsb3dzIGNvZGVjIGlkZW50aWZpY2F0aW9uIGFuZCBpcworIGh1bWFuLXJlYWRhYmxlLgor
SXQgY29udGFpbnMsIGluIG9yZGVyLCB0aGUgbWFnaWMgbnVtYmVyczoKKzxsaXN0IHN0eWxlPSJl
bXB0eSI+Cis8dD4weDRGICdPJzwvdD4KKzx0PjB4NzAgJ3AnPC90PgorPHQ+MHg3NSAndSc8L3Q+
Cis8dD4weDczICdzJzwvdD4KKzx0PjB4NDggJ0gnPC90PgorPHQ+MHg2NSAnZSc8L3Q+Cis8dD4w
eDYxICdhJzwvdD4KKzx0PjB4NjQgJ2QnPC90PgorPC9saXN0PgorU3RhcnRpbmcgd2l0aCAiT3Ai
IGhlbHBzIGRpc3Rpbmd1aXNoIGl0IGZyb20gYXVkaW8gZGF0YSBwYWNrZXRzLCBhcyB0aGlzIGlz
IGFuCisgaW52YWxpZCBUT0Mgc2VxdWVuY2UuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwv
dD4KKzx0PlZlcnNpb24gKDggYml0cywgdW5zaWduZWQpOgorPHZzcGFjZSBibGFua0xpbmVzPSIx
Ii8+CitUaGUgdmVyc2lvbiBudW1iZXIgTVVTVCBhbHdheXMgYmUgJzEnIGZvciB0aGlzIHZlcnNp
b24gb2YgdGhlIGVuY2Fwc3VsYXRpb24KKyBzcGVjaWZpY2F0aW9uLgorSW1wbGVtZW50YXRpb25z
IFNIT1VMRCB0cmVhdCBzdHJlYW1zIHdoZXJlIHRoZSB1cHBlciBmb3VyIGJpdHMgb2YgdGhlIHZl
cnNpb24KKyBudW1iZXIgbWF0Y2ggdGhhdCBvZiBhIHJlY29nbml6ZWQgc3BlY2lmaWNhdGlvbiBh
cyBiYWNrd2FyZHMtY29tcGF0aWJsZSB3aXRoCisgdGhhdCBzcGVjaWZpY2F0aW9uLgorVGhhdCBp
cywgdGhlIHZlcnNpb24gbnVtYmVyIGNhbiBiZSBzcGxpdCBpbnRvICJtYWpvciIgYW5kICJtaW5v
ciIgdmVyc2lvbgorIHN1Yi1maWVsZHMsIHdpdGggY2hhbmdlcyB0byB0aGUgIm1pbm9yIiBzdWIt
ZmllbGQgKGluIHRoZSBsb3dlciBmb3VyIGJpdHMpCisgc2lnbmFsaW5nIGNvbXBhdGlibGUgY2hh
bmdlcy4KK0ZvciBleGFtcGxlLCBhbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzIHNwZWNpZmljYXRp
b24gU0hPVUxEIGFjY2VwdCBhbnkgc3RyZWFtCisgd2l0aCBhIHZlcnNpb24gbnVtYmVyIG9mICcx
NScgb3IgbGVzcywgYW5kIFNIT1VMRCBhc3N1bWUgYW55IHN0cmVhbSB3aXRoIGEKKyB2ZXJzaW9u
IG51bWJlciAnMTYnIG9yIGdyZWF0ZXIgaXMgaW5jb21wYXRpYmxlLgorVGhlIGluaXRpYWwgdmVy
c2lvbiAnMScgd2FzIGNob3NlbiB0byBrZWVwIGltcGxlbWVudGF0aW9ucyBmcm9tIHJlbHlpbmcg
b24gdGhpcworIG9jdGV0IGFzIGEgbnVsbCB0ZXJtaW5hdG9yIGZvciB0aGUgIk9wdXNIZWFkIiBz
dHJpbmcuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0Pk91dHB1dCBDaGFubmVs
IENvdW50ICdDJyAoOCBiaXRzLCB1bnNpZ25lZCk6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4K
K1RoaXMgaXMgdGhlIG51bWJlciBvZiBvdXRwdXQgY2hhbm5lbHMuCitUaGlzIG1pZ2h0IGJlIGRp
ZmZlcmVudCB0aGFuIHRoZSBudW1iZXIgb2YgZW5jb2RlZCBjaGFubmVscywgd2hpY2ggY2FuIGNo
YW5nZQorIG9uIGEgcGFja2V0LWJ5LXBhY2tldCBiYXNpcy4KK1RoaXMgdmFsdWUgTVVTVCBOT1Qg
YmUgemVyby4KK1RoZSBtYXhpbXVtIGFsbG93YWJsZSB2YWx1ZSBkZXBlbmRzIG9uIHRoZSBjaGFu
bmVsIG1hcHBpbmcgZmFtaWx5LCBhbmQgbWlnaHQgYmUKKyBhcyBsYXJnZSBhcyAyNTUuCitTZWUg
PHhyZWYgdGFyZ2V0PSJjaGFubmVsX21hcHBpbmciLz4gZm9yIGRldGFpbHMuCis8dnNwYWNlIGJs
YW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0PlByZS1za2lwICgxNiBiaXRzLCB1bnNpZ25lZCwgbGl0
dGxlCisgZW5kaWFuKToKKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhpcyBpcyB0aGUgbnVt
YmVyIG9mIHNhbXBsZXMgKGF0IDQ4Jm5ic3A7a0h6KSB0byBkaXNjYXJkIGZyb20gdGhlIGRlY29k
ZXIKKyBvdXRwdXQgd2hlbiBzdGFydGluZyBwbGF5YmFjaywgYW5kIGFsc28gdGhlIG51bWJlciB0
byBzdWJ0cmFjdCBmcm9tIGEgcGFnZSdzCisgZ3JhbnVsZSBwb3NpdGlvbiB0byBjYWxjdWxhdGUg
aXRzIFBDTSBzYW1wbGUgcG9zaXRpb24uCitXaGVuIGNyb3BwaW5nIHRoZSBiZWdpbm5pbmcgb2Yg
ZXhpc3RpbmcgT2dnIE9wdXMgc3RyZWFtcywgYSBwcmUtc2tpcCBvZiBhdAorIGxlYXN0IDMsODQw
Jm5ic3A7c2FtcGxlcyAoODAmbmJzcDttcykgaXMgUkVDT01NRU5ERUQgdG8gZW5zdXJlIGNvbXBs
ZXRlCisgY29udmVyZ2VuY2UgaW4gdGhlIGRlY29kZXIuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEi
Lz4KKzwvdD4KKzx0PklucHV0IFNhbXBsZSBSYXRlICgzMiBiaXRzLCB1bnNpZ25lZCwgbGl0dGxl
CisgZW5kaWFuKToKKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhpcyBpcyB0aGUgc2FtcGxl
IHJhdGUgb2YgdGhlIG9yaWdpbmFsIGlucHV0IChiZWZvcmUgZW5jb2RpbmcpLCBpbiBIei4KK1Ro
aXMgZmllbGQgaXMgPHNwYW54IHN0eWxlPSJlbXBoIj5ub3Q8L3NwYW54PiB0aGUgc2FtcGxlIHJh
dGUgdG8gdXNlIGZvcgorIHBsYXliYWNrIG9mIHRoZSBlbmNvZGVkIGRhdGEuCis8dnNwYWNlIGJs
YW5rTGluZXM9IjEiLz4KK09wdXMgY2FuIHN3aXRjaCBiZXR3ZWVuIGludGVybmFsIGF1ZGlvIGJh
bmR3aWR0aHMgb2YgNCwgNiwgOCwgMTIsIGFuZAorIDIwJm5ic3A7a0h6LgorRWFjaCBwYWNrZXQg
aW4gdGhlIHN0cmVhbSBjYW4gaGF2ZSBhIGRpZmZlcmVudCBhdWRpbyBiYW5kd2lkdGguCitSZWdh
cmRsZXNzIG9mIHRoZSBhdWRpbyBiYW5kd2lkdGgsIHRoZSByZWZlcmVuY2UgZGVjb2RlciBzdXBw
b3J0cyBkZWNvZGluZyBhbnkKKyBzdHJlYW0gYXQgYSBzYW1wbGUgcmF0ZSBvZiA4LCAxMiwgMTYs
IDI0LCBvciA0OCZuYnNwO2tIei4KK1RoZSBvcmlnaW5hbCBzYW1wbGUgcmF0ZSBvZiB0aGUgYXVk
aW8gcGFzc2VkIHRvIHRoZSBlbmNvZGVyIGlzIG5vdCBwcmVzZXJ2ZWQKKyBieSB0aGUgbG9zc3kg
Y29tcHJlc3Npb24uCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0FuIE9nZyBPcHVzIHBsYXll
ciBTSE9VTEQgc2VsZWN0IHRoZSBwbGF5YmFjayBzYW1wbGUgcmF0ZSBhY2NvcmRpbmcgdG8gdGhl
CisgZm9sbG93aW5nIHByb2NlZHVyZToKKzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0PklmIHRo
ZSBoYXJkd2FyZSBzdXBwb3J0cyA0OCZuYnNwO2tIeiBwbGF5YmFjaywgZGVjb2RlIGF0IDQ4Jm5i
c3A7a0h6LjwvdD4KKzx0Pk90aGVyd2lzZSwgaWYgdGhlIGhhcmR3YXJlJ3MgaGlnaGVzdCBhdmFp
bGFibGUgc2FtcGxlIHJhdGUgaXMgYSBzdXBwb3J0ZWQKKyByYXRlLCBkZWNvZGUgYXQgdGhpcyBz
YW1wbGUgcmF0ZS48L3Q+Cis8dD5PdGhlcndpc2UsIGlmIHRoZSBoYXJkd2FyZSdzIGhpZ2hlc3Qg
YXZhaWxhYmxlIHNhbXBsZSByYXRlIGlzIGxlc3MgdGhhbgorIDQ4Jm5ic3A7a0h6LCBkZWNvZGUg
YXQgdGhlIG5leHQgaGlnaGVyIE9wdXMgc3VwcG9ydGVkIHJhdGUgYWJvdmUgdGhlIGhpZ2hlc3QK
KyBhdmFpbGFibGUgaGFyZHdhcmUgcmF0ZSBhbmQgcmVzYW1wbGUuPC90PgorPHQ+T3RoZXJ3aXNl
LCBkZWNvZGUgYXQgNDgmbmJzcDtrSHogYW5kIHJlc2FtcGxlLjwvdD4KKzwvbGlzdD4KK0hvd2V2
ZXIsIHRoZSAnSW5wdXQgU2FtcGxlIFJhdGUnIGZpZWxkIGFsbG93cyB0aGUgbXV4ZXIgdG8gcGFz
cyB0aGUgc2FtcGxlCisgcmF0ZSBvZiB0aGUgb3JpZ2luYWwgaW5wdXQgc3RyZWFtIGFzIG1ldGFk
YXRhLgorVGhpcyBpcyB1c2VmdWwgd2hlbiB0aGUgdXNlciByZXF1aXJlcyB0aGUgb3V0cHV0IHNh
bXBsZSByYXRlIHRvIG1hdGNoIHRoZQorIGlucHV0IHNhbXBsZSByYXRlLgorRm9yIGV4YW1wbGUs
IHdoZW4gbm90IHBsYXlpbmcgdGhlIG91dHB1dCwgYW4gaW1wbGVtZW50YXRpb24gd3JpdGluZyBQ
Q00gZm9ybWF0Cisgc2FtcGxlcyB0byBkaXNrIG1pZ2h0IGNob29zZSB0byByZXNhbXBsZSB0aGUg
YXVkaW8gYmFjayB0byB0aGUgb3JpZ2luYWwgaW5wdXQKKyBzYW1wbGUgcmF0ZSB0byByZWR1Y2Ug
c3VycHJpc2UgdG8gdGhlIHVzZXIsIHdobyBtaWdodCByZWFzb25hYmx5IGV4cGVjdCB0byBnZXQK
KyBiYWNrIGEgZmlsZSB3aXRoIHRoZSBzYW1lIHNhbXBsZSByYXRlLgorPHZzcGFjZSBibGFua0xp
bmVzPSIxIi8+CitBIHZhbHVlIG9mIHplcm8gaW5kaWNhdGVzICd1bnNwZWNpZmllZCcuCitNdXhl
cnMgU0hPVUxEIHdyaXRlIHRoZSBhY3R1YWwgaW5wdXQgc2FtcGxlIHJhdGUgb3IgemVybywgYnV0
IGltcGxlbWVudGF0aW9ucworIHdoaWNoIGRvIHNvbWV0aGluZyB3aXRoIHRoaXMgZmllbGQgU0hP
VUxEIHRha2UgY2FyZSB0byBiZWhhdmUgc2FuZWx5IGlmIGdpdmVuCisgY3JhenkgdmFsdWVzIChl
LmcuLCBkbyBub3QgYWN0dWFsbHkgdXBzYW1wbGUgdGhlIG91dHB1dCB0byAxMCBNSHogaWYKKyBy
ZXF1ZXN0ZWQpLgorSW1wbGVtZW50YXRpb25zIFNIT1VMRCBzdXBwb3J0IGlucHV0IHNhbXBsZSBy
YXRlcyBiZXR3ZWVuIDgmbmJzcDtrSHogYW5kCisgMTkyJm5ic3A7a0h6IChpbmNsdXNpdmUpLgor
UmF0ZXMgb3V0c2lkZSB0aGlzIHJhbmdlIE1BWSBiZSBpZ25vcmVkIGJ5IGZhbGxpbmcgYmFjayB0
byB0aGUgZGVmYXVsdCByYXRlIG9mCisgNDgmbmJzcDtrSHogaW5zdGVhZC4KKzx2c3BhY2UgYmxh
bmtMaW5lcz0iMSIvPgorPC90PgorPHQ+T3V0cHV0IEdhaW4gKDE2IGJpdHMsIHNpZ25lZCwgbGl0
dGxlIGVuZGlhbik6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgYSBnYWluIHRv
IGJlIGFwcGxpZWQgd2hlbiBkZWNvZGluZy4KK0l0IGlzIDIwKmxvZzEwIG9mIHRoZSBmYWN0b3Ig
Ynkgd2hpY2ggdG8gc2NhbGUgdGhlIGRlY29kZXIgb3V0cHV0IHRvIGFjaGlldmUKKyB0aGUgZGVz
aXJlZCBwbGF5YmFjayB2b2x1bWUsIHN0b3JlZCBpbiBhIDE2LWJpdCwgc2lnbmVkLCB0d28ncyBj
b21wbGVtZW50CisgZml4ZWQtcG9pbnQgdmFsdWUgd2l0aCA4IGZyYWN0aW9uYWwgYml0cyAoaS5l
LiwKKyBRNy44Jm5ic3A7PHhyZWYgdGFyZ2V0PSJxLW5vdGF0aW9uIi8+KS4KKzx2c3BhY2UgYmxh
bmtMaW5lcz0iMSIvPgorVG8gYXBwbHkgdGhlIGdhaW4sIGFuIGltcGxlbWVudGF0aW9uIGNvdWxk
IHVzZQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworc2FtcGxlICo9IHBvdygxMCwgb3V0cHV0X2dhaW4vKDIwLjAqMjU2KSkgLAorXV0+
PC9hcnR3b3JrPgorPC9maWd1cmU+Cisgd2hlcmUgb3V0cHV0X2dhaW4gaXMgdGhlIHJhdyAxNi1i
aXQgdmFsdWUgZnJvbSB0aGUgaGVhZGVyLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitQbGF5
ZXJzIGFuZCBtZWRpYSBmcmFtZXdvcmtzIFNIT1VMRCBhcHBseSBpdCBieSBkZWZhdWx0LgorSWYg
YSBwbGF5ZXIgY2hvb3NlcyB0byBhcHBseSBhbnkgdm9sdW1lIGFkanVzdG1lbnQgb3IgZ2FpbiBt
b2RpZmljYXRpb24sIHN1Y2gKKyBhcyB0aGUgUjEyOF9UUkFDS19HQUlOIChzZWUgPHhyZWYgdGFy
Z2V0PSJjb21tZW50X2hlYWRlciIvPiksIHRoZSBhZGp1c3RtZW50CisgTVVTVCBiZSBhcHBsaWVk
IGluIGFkZGl0aW9uIHRvIHRoaXMgb3V0cHV0IGdhaW4gaW4gb3JkZXIgdG8gYWNoaWV2ZSBwbGF5
YmFjaworIGF0IHRoZSBub3JtYWxpemVkIHZvbHVtZS4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIv
PgorQSBtdXhlciBTSE9VTEQgc2V0IHRoaXMgZmllbGQgdG8gemVybywgYW5kIGluc3RlYWQgYXBw
bHkgYW55IGdhaW4gcHJpb3IgdG8KKyBlbmNvZGluZywgd2hlbiB0aGlzIGlzIHBvc3NpYmxlIGFu
ZCBkb2VzIG5vdCBjb25mbGljdCB3aXRoIHRoZSB1c2VyJ3Mgd2lzaGVzLgorQSBub256ZXJvIG91
dHB1dCBnYWluIGluZGljYXRlcyB0aGUgZ2FpbiB3YXMgYWRqdXN0ZWQgYWZ0ZXIgZW5jb2Rpbmcs
IG9yIHRoYXQKKyBhIHVzZXIgd2lzaGVkIHRvIGFkanVzdCB0aGUgZ2FpbiBmb3IgcGxheWJhY2sg
d2hpbGUgcHJlc2VydmluZyB0aGUgYWJpbGl0eQorIHRvIHJlY292ZXIgdGhlIG9yaWdpbmFsIHNp
Z25hbCBhbXBsaXR1ZGUuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0FsdGhvdWdoIHRoZSBv
dXRwdXQgZ2FpbiBoYXMgZW5vcm1vdXMgcmFuZ2UgKCsvLSAxMjggZEIsIGVub3VnaCB0byBhbXBs
aWZ5CisgaW5hdWRpYmxlIHNvdW5kcyB0byB0aGUgdGhyZXNob2xkIG9mIHBoeXNpY2FsIHBhaW4p
LCBtb3N0IGFwcGxpY2F0aW9ucyBjYW4KKyBvbmx5IHJlYXNvbmFibHkgdXNlIGEgc21hbGwgcG9y
dGlvbiBvZiB0aGlzIHJhbmdlIGFyb3VuZCB6ZXJvLgorVGhlIGxhcmdlIHJhbmdlIHNlcnZlcyBp
biBwYXJ0IHRvIGVuc3VyZSB0aGF0IGdhaW4gY2FuIGFsd2F5cyBiZSBsb3NzbGVzc2x5CisgdHJh
bnNmZXJyZWQgYmV0d2VlbiBPcHVzSGVhZCBhbmQgUjEyOCBnYWluIHRhZ3MgKHNlZSBiZWxvdykg
d2l0aG91dAorIHNhdHVyYXRpbmcuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0
PkNoYW5uZWwgTWFwcGluZyBGYW1pbHkgKDggYml0cywgdW5zaWduZWQpOgorPHZzcGFjZSBibGFu
a0xpbmVzPSIxIi8+CitUaGlzIG9jdGV0IGluZGljYXRlcyB0aGUgb3JkZXIgYW5kIHNlbWFudGlj
IG1lYW5pbmcgb2YgdGhlIG91dHB1dCBjaGFubmVscy4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIv
PgorRWFjaCBjdXJyZW50bHkgc3BlY2lmaWVkIHZhbHVlIG9mIHRoaXMgb2N0ZXQgaW5kaWNhdGVz
IGEgbWFwcGluZyBmYW1pbHksIHdoaWNoCisgZGVmaW5lcyBhIHNldCBvZiBhbGxvd2VkIGNoYW5u
ZWwgY291bnRzLCBhbmQgdGhlIG9yZGVyZWQgc2V0IG9mIGNoYW5uZWwgbmFtZXMKKyBmb3IgZWFj
aCBhbGxvd2VkIGNoYW5uZWwgY291bnQuCitUaGUgZGV0YWlscyBhcmUgZGVzY3JpYmVkIGluIDx4
cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nIi8+LgorPC90PgorPHQ+Q2hhbm5lbCBNYXBwaW5n
IFRhYmxlOgorVGhpcyB0YWJsZSBkZWZpbmVzIHRoZSBtYXBwaW5nIGZyb20gZW5jb2RlZCBzdHJl
YW1zIHRvIG91dHB1dCBjaGFubmVscy4KK0l0cyBjb250ZW50cyBhcmUgc3BlY2lmaWVkIGluIDx4
cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nIi8+LgorPC90PgorPC9saXN0PgorPC90PgorCis8
dD4KK0FsbCBmaWVsZHMgaW4gdGhlIElEIGhlYWRlcnMgYXJlIFJFUVVJUkVELCBleGNlcHQgZm9y
IHRoZSBjaGFubmVsIG1hcHBpbmcKKyB0YWJsZSwgd2hpY2ggTVVTVCBiZSBvbWl0dGVkIHdoZW4g
dGhlIGNoYW5uZWwgbWFwcGluZyBmYW1pbHkgaXMgMCwgYnV0CisgaXMgUkVRVUlSRUQgb3RoZXJ3
aXNlLgorSW1wbGVtZW50YXRpb25zIFNIT1VMRCB0cmVhdCBhIHN0cmVhbSBhcyBpbnZhbGlkIGlm
IGl0IGNvbnRhaW5zIGFuIElEIGhlYWRlcgorIHRoYXQgZG9lcyBub3QgaGF2ZSBlbm91Z2ggZGF0
YSBmb3IgdGhlc2UgZmllbGRzLCBldmVuIGlmIGl0IGNvbnRhaW4gYSB2YWxpZAorIE1hZ2ljIFNp
Z25hdHVyZS4KK0Z1dHVyZSB2ZXJzaW9ucyBvZiB0aGlzIHNwZWNpZmljYXRpb24sIGV2ZW4gYmFj
a3dhcmRzLWNvbXBhdGlibGUgdmVyc2lvbnMsCisgbWlnaHQgaW5jbHVkZSBhZGRpdGlvbmFsIGZp
ZWxkcyBpbiB0aGUgSUQgaGVhZGVyLgorSWYgYW4gSUQgaGVhZGVyIGhhcyBhIGNvbXBhdGlibGUg
bWFqb3IgdmVyc2lvbiwgYnV0IGEgbGFyZ2VyIG1pbm9yIHZlcnNpb24sCisgYW4gaW1wbGVtZW50
YXRpb24gTVVTVCBOT1QgdHJlYXQgaXQgYXMgaW52YWxpZCBmb3IgY29udGFpbmluZyBhZGRpdGlv
bmFsIGRhdGEKKyBub3Qgc3BlY2lmaWVkIGhlcmUsIHByb3ZpZGVkIGl0IHN0aWxsIGNvbXBsZXRl
cyBvbiB0aGUgZmlyc3QgcGFnZS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJjaGFubmVsX21h
cHBpbmciIHRpdGxlPSJDaGFubmVsIE1hcHBpbmciPgorPHQ+CitBbiBPZ2cgT3B1cyBzdHJlYW0g
YWxsb3dzIG1hcHBpbmcgb25lIG51bWJlciBvZiBPcHVzIHN0cmVhbXMgKE4pIHRvIGEgcG9zc2li
bHkKKyBsYXJnZXIgbnVtYmVyIG9mIGRlY29kZWQgY2hhbm5lbHMgKE0mbmJzcDsrJm5ic3A7Tikg
dG8geWV0IGFub3RoZXIgbnVtYmVyIG9mCisgb3V0cHV0IGNoYW5uZWxzIChDKSwgd2hpY2ggbWln
aHQgYmUgbGFyZ2VyIG9yIHNtYWxsZXIgdGhhbiB0aGUgbnVtYmVyIG9mCisgZGVjb2RlZCBjaGFu
bmVscy4KK1RoZSBvcmRlciBhbmQgbWVhbmluZyBvZiB0aGVzZSBjaGFubmVscyBhcmUgZGVmaW5l
ZCBieSBhIGNoYW5uZWwgbWFwcGluZywKKyB3aGljaCBjb25zaXN0cyBvZiB0aGUgJ2NoYW5uZWwg
bWFwcGluZyBmYW1pbHknIG9jdGV0IGFuZCwgZm9yIGNoYW5uZWwgbWFwcGluZworIGZhbWlsaWVz
IG90aGVyIHRoYW4gZmFtaWx5Jm5ic3A7MCwgYSBjaGFubmVsIG1hcHBpbmcgdGFibGUsIGFzIGls
bHVzdHJhdGVkIGluCisgPHhyZWYgdGFyZ2V0PSJjaGFubmVsX21hcHBpbmdfdGFibGUiLz4uCis8
L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSJjaGFubmVsX21hcHBpbmdfdGFibGUiIHRpdGxlPSJDaGFu
bmVsIE1hcHBpbmcgVGFibGUiCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2Vu
dGVyIj48IVtDREFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAg
MiAgICAgICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2
IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICArLSstKy0rLSstKy0rLSstKworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBTdHJlYW0gQ291bnQgIHwKKystKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rCit8IENvdXBsZWQgQ291bnQgfCAgICAgICAgICAgICAgQ2hhbm5lbCBNYXBwaW5nLi4uICAg
ICAgICAgICAgICAgOgorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8dD4K
K1RoZSBmaWVsZHMgaW4gdGhlIGNoYW5uZWwgbWFwcGluZyB0YWJsZSBoYXZlIHRoZSBmb2xsb3dp
bmcgbWVhbmluZzoKKzxsaXN0IHN0eWxlPSJudW1iZXJzIiBjb3VudGVyPSI4Ij4KKzx0PlN0cmVh
bSBDb3VudCAnTicgKDggYml0cywgdW5zaWduZWQpOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+
CitUaGlzIGlzIHRoZSB0b3RhbCBudW1iZXIgb2Ygc3RyZWFtcyBlbmNvZGVkIGluIGVhY2ggT2dn
IHBhY2tldC4KK1RoaXMgdmFsdWUgaXMgbmVjZXNzYXJ5IHRvIGNvcnJlY3RseSBwYXJzZSB0aGUg
cGFja2VkIE9wdXMgcGFja2V0cyBpbnNpZGUgYW4KKyBPZ2cgcGFja2V0LCBhcyBkZXNjcmliZWQg
aW4gPHhyZWYgdGFyZ2V0PSJwYWNrZXRfb3JnYW5pemF0aW9uIi8+LgorVGhpcyB2YWx1ZSBNVVNU
IE5PVCBiZSB6ZXJvLCBhcyB3aXRob3V0IGF0IGxlYXN0IG9uZSBPcHVzIHBhY2tldCB3aXRoIGEg
dmFsaWQKKyBUT0Mgc2VxdWVuY2UsIGEgZGVtdXhlciBjYW5ub3QgcmVjb3ZlciB0aGUgZHVyYXRp
b24gb2YgYW4gT2dnIHBhY2tldC4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorRm9yIGNoYW5u
ZWwgbWFwcGluZyBmYW1pbHkmbmJzcDswLCB0aGlzIHZhbHVlIGRlZmF1bHRzIHRvIDEsIGFuZCBp
cyBub3QgY29kZWQuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0PkNvdXBsZWQg
U3RyZWFtIENvdW50ICdNJyAoOCBiaXRzLCB1bnNpZ25lZCk6CitUaGlzIGlzIHRoZSBudW1iZXIg
b2Ygc3RyZWFtcyB3aG9zZSBkZWNvZGVycyBhcmUgdG8gYmUgY29uZmlndXJlZCB0byBwcm9kdWNl
CisgdHdvIGNoYW5uZWxzIChzdGVyZW8pLgorVGhpcyBNVVNUIGJlIG5vIGxhcmdlciB0aGFuIHRo
ZSB0b3RhbCBudW1iZXIgb2Ygc3RyZWFtcywgTi4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgor
RWFjaCBwYWNrZXQgaW4gYW4gT3B1cyBzdHJlYW0gaGFzIGFuIGludGVybmFsIGNoYW5uZWwgY291
bnQgb2YgMSBvciAyLCB3aGljaAorIGNhbiBjaGFuZ2UgZnJvbSBwYWNrZXQgdG8gcGFja2V0Lgor
VGhpcyBpcyBzZWxlY3RlZCBieSB0aGUgZW5jb2RlciBkZXBlbmRpbmcgb24gdGhlIGJpdHJhdGUg
YW5kIHRoZSBhdWRpbyBiZWluZworIGVuY29kZWQuCitUaGUgb3JpZ2luYWwgY2hhbm5lbCBjb3Vu
dCBvZiB0aGUgYXVkaW8gcGFzc2VkIHRvIHRoZSBlbmNvZGVyIGlzIG5vdAorIG5lY2Vzc2FyaWx5
IHByZXNlcnZlZCBieSB0aGUgbG9zc3kgY29tcHJlc3Npb24uCis8dnNwYWNlIGJsYW5rTGluZXM9
IjEiLz4KK1JlZ2FyZGxlc3Mgb2YgdGhlIGludGVybmFsIGNoYW5uZWwgY291bnQsIGFueSBPcHVz
IHN0cmVhbSBjYW4gYmUgZGVjb2RlZCBhcworIG1vbm8gKGEgc2luZ2xlIGNoYW5uZWwpIG9yIHN0
ZXJlbyAodHdvIGNoYW5uZWxzKSBieSBhcHByb3ByaWF0ZSBpbml0aWFsaXphdGlvbgorIG9mIHRo
ZSBkZWNvZGVyLgorVGhlICdjb3VwbGVkIHN0cmVhbSBjb3VudCcgZmllbGQgaW5kaWNhdGVzIHRo
YXQgdGhlIGRlY29kZXJzIGZvciB0aGUgZmlyc3QgTQorIE9wdXMgc3RyZWFtcyBhcmUgdG8gYmUg
aW5pdGlhbGl6ZWQgZm9yIHN0ZXJlbyAodHdvLWNoYW5uZWwpIG91dHB1dCwgYW5kIHRoZQorIHJl
bWFpbmluZyAoTiZuYnNwOy0mbmJzcDtNKSBkZWNvZGVycyBhcmUgdG8gYmUgaW5pdGlhbGl6ZWQg
Zm9yIG1vbm8gKGEgc2luZ2xlCisgY2hhbm5lbCkgb25seS4KK1RoZSB0b3RhbCBudW1iZXIgb2Yg
ZGVjb2RlZCBjaGFubmVscywgKE0mbmJzcDsrJm5ic3A7TiksIE1VU1QgYmUgbm8gbGFyZ2VyIHRo
YW4KKyAyNTUsIGFzIHRoZXJlIGlzIG5vIHdheSB0byBpbmRleCBtb3JlIGNoYW5uZWxzIHRoYW4g
dGhhdCBpbiB0aGUgY2hhbm5lbAorIG1hcHBpbmcuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4K
K0ZvciBjaGFubmVsIG1hcHBpbmcgZmFtaWx5Jm5ic3A7MCwgdGhpcyB2YWx1ZSBkZWZhdWx0cyB0
byAoQyZuYnNwOy0mbmJzcDsxKQorIChpLmUuLCAwIGZvciBtb25vIGFuZCAxIGZvciBzdGVyZW8p
LCBhbmQgaXMgbm90IGNvZGVkLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5D
aGFubmVsIE1hcHBpbmcgKDgqQyBiaXRzKToKK1RoaXMgY29udGFpbnMgb25lIG9jdGV0IHBlciBv
dXRwdXQgY2hhbm5lbCwgaW5kaWNhdGluZyB3aGljaCBkZWNvZGVkIGNoYW5uZWwKKyBpcyB0byBi
ZSB1c2VkIGZvciBlYWNoIG9uZS4KK0xldCAnaW5kZXgnIGJlIHRoZSB2YWx1ZSBvZiB0aGlzIG9j
dGV0IGZvciBhIHBhcnRpY3VsYXIgb3V0cHV0IGNoYW5uZWwuCitUaGlzIHZhbHVlIE1VU1QgZWl0
aGVyIGJlIHNtYWxsZXIgdGhhbiAoTSZuYnNwOysmbmJzcDtOKSwgb3IgYmUgdGhlIHNwZWNpYWwK
KyB2YWx1ZSAyNTUuCitJZiAnaW5kZXgnIGlzIGxlc3MgdGhhbiAyKk0sIHRoZSBvdXRwdXQgTVVT
VCBiZSB0YWtlbiBmcm9tIGRlY29kaW5nIHN0cmVhbQorICgnaW5kZXgnLzIpIGFzIHN0ZXJlbyBh
bmQgc2VsZWN0aW5nIHRoZSBsZWZ0IGNoYW5uZWwgaWYgJ2luZGV4JyBpcyBldmVuLCBhbmQKKyB0
aGUgcmlnaHQgY2hhbm5lbCBpZiAnaW5kZXgnIGlzIG9kZC4KK0lmICdpbmRleCcgaXMgMipNIG9y
IGxhcmdlciwgYnV0IGxlc3MgdGhhbiAyNTUsIHRoZSBvdXRwdXQgTVVTVCBiZSB0YWtlbiBmcm9t
CisgZGVjb2Rpbmcgc3RyZWFtICgnaW5kZXgnJm5ic3A7LSZuYnNwO00pIGFzIG1vbm8uCitJZiAn
aW5kZXgnIGlzIDI1NSwgdGhlIGNvcnJlc3BvbmRpbmcgb3V0cHV0IGNoYW5uZWwgTVVTVCBjb250
YWluIHB1cmUgc2lsZW5jZS4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhlIG51bWJlciBv
ZiBvdXRwdXQgY2hhbm5lbHMsIEMsIGlzIG5vdCBjb25zdHJhaW5lZCB0byBtYXRjaCB0aGUgbnVt
YmVyIG9mCisgZGVjb2RlZCBjaGFubmVscyAoTSZuYnNwOysmbmJzcDtOKS4KK0Egc2luZ2xlIGlu
ZGV4IHZhbHVlIE1BWSBhcHBlYXIgbXVsdGlwbGUgdGltZXMsIGkuZS4sIHRoZSBzYW1lIGRlY29k
ZWQgY2hhbm5lbAorIG1pZ2h0IGJlIG1hcHBlZCB0byBtdWx0aXBsZSBvdXRwdXQgY2hhbm5lbHMu
CitTb21lIGRlY29kZWQgY2hhbm5lbHMgbWlnaHQgbm90IGJlIGFzc2lnbmVkIHRvIGFueSBvdXRw
dXQgY2hhbm5lbCwgYXMgd2VsbC4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorRm9yIGNoYW5u
ZWwgbWFwcGluZyBmYW1pbHkmbmJzcDswLCB0aGUgZmlyc3QgaW5kZXggZGVmYXVsdHMgdG8gMCwg
YW5kIGlmCisgQyZuYnNwOz09Jm5ic3A7MiwgdGhlIHNlY29uZCBpbmRleCBkZWZhdWx0cyB0byAx
LgorTmVpdGhlciBpbmRleCBpcyBjb2RlZC4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitB
ZnRlciBwcm9kdWNpbmcgdGhlIG91dHB1dCBjaGFubmVscywgdGhlIGNoYW5uZWwgbWFwcGluZyBm
YW1pbHkgZGV0ZXJtaW5lcyB0aGUKKyBzZW1hbnRpYyBtZWFuaW5nIG9mIGVhY2ggb25lLgorVGhl
cmUgYXJlIHRocmVlIGRlZmluZWQgbWFwcGluZyBmYW1pbGllcyBpbiB0aGlzIHNwZWNpZmljYXRp
b24uCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0iY2hhbm5lbF9tYXBwaW5nXzAiIHRpdGxlPSJD
aGFubmVsIE1hcHBpbmcgRmFtaWx5IDAiPgorPHQ+CitBbGxvd2VkIG51bWJlcnMgb2YgY2hhbm5l
bHM6IDEgb3IgMi4KK1JUUCBtYXBwaW5nLgorVGhpcyBpcyB0aGUgc2FtZSBjaGFubmVsIGludGVy
cHJldGF0aW9uIGFzIDx4cmVmIHRhcmdldD0iUkZDNzU4NyIvPi4KKzwvdD4KKzx0PgorPGxpc3Qg
c3R5bGU9InN5bWJvbHMiPgorPHQ+MSBjaGFubmVsOiBtb25vcGhvbmljIChtb25vKS48L3Q+Cis8
dD4yIGNoYW5uZWxzOiBzdGVyZW8gKGxlZnQsIHJpZ2h0KS48L3Q+Cis8L2xpc3Q+CitTcGVjaWFs
IG1hcHBpbmc6IFRoaXMgY2hhbm5lbCBtYXBwaW5nIHZhbHVlIGFsc28KKyBpbmRpY2F0ZXMgdGhh
dCB0aGUgY29udGVudHMgY29uc2lzdHMgb2YgYSBzaW5nbGUgT3B1cyBzdHJlYW0gdGhhdCBpcyBz
dGVyZW8gaWYKKyBhbmQgb25seSBpZiBDJm5ic3A7PT0mbmJzcDsyLCB3aXRoIHN0cmVhbSBpbmRl
eCZuYnNwOzAgbWFwcGVkIHRvIG91dHB1dAorIGNoYW5uZWwmbmJzcDswIChtb25vLCBvciBsZWZ0
IGNoYW5uZWwpIGFuZCBzdHJlYW0gaW5kZXgmbmJzcDsxIG1hcHBlZCB0bworIG91dHB1dCBjaGFu
bmVsJm5ic3A7MSAocmlnaHQgY2hhbm5lbCkgaWYgc3RlcmVvLgorV2hlbiB0aGUgJ2NoYW5uZWwg
bWFwcGluZyBmYW1pbHknIG9jdGV0IGhhcyB0aGlzIHZhbHVlLCB0aGUgY2hhbm5lbCBtYXBwaW5n
CisgdGFibGUgTVVTVCBiZSBvbWl0dGVkIGZyb20gdGhlIElEIGhlYWRlciBwYWNrZXQuCis8L3Q+
Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iY2hhbm5lbF9tYXBwaW5nXzEiIHRpdGxl
PSJDaGFubmVsIE1hcHBpbmcgRmFtaWx5IDEiPgorPHQ+CitBbGxvd2VkIG51bWJlcnMgb2YgY2hh
bm5lbHM6IDEuLi44LgorVm9yYmlzIGNoYW5uZWwgb3JkZXIgKHNlZSBiZWxvdykuCis8L3Q+Cis8
dD4KK0VhY2ggY2hhbm5lbCBpcyBhc3NpZ25lZCB0byBhIHNwZWFrZXIgbG9jYXRpb24gaW4gYSBj
b252ZW50aW9uYWwgc3Vycm91bmQKKyBhcnJhbmdlbWVudC4KK1NwZWNpZmljIGxvY2F0aW9ucyBk
ZXBlbmQgb24gdGhlIG51bWJlciBvZiBjaGFubmVscywgYW5kIGFyZSBnaXZlbiBiZWxvdworIGlu
IG9yZGVyIG9mIHRoZSBjb3JyZXNwb25kaW5nIGNoYW5uZWwgaW5kaWNlcy4KKzxsaXN0IHN0eWxl
PSJzeW1ib2xzIj4KKyAgPHQ+MSBjaGFubmVsOiBtb25vcGhvbmljIChtb25vKS48L3Q+CisgIDx0
PjIgY2hhbm5lbHM6IHN0ZXJlbyAobGVmdCwgcmlnaHQpLjwvdD4KKyAgPHQ+MyBjaGFubmVsczog
bGluZWFyIHN1cnJvdW5kIChsZWZ0LCBjZW50ZXIsIHJpZ2h0KTwvdD4KKyAgPHQ+NCBjaGFubmVs
czogcXVhZHJhcGhvbmljIChmcm9udCZuYnNwO2xlZnQsIGZyb250Jm5ic3A7cmlnaHQsIHJlYXIm
bmJzcDtsZWZ0LCByZWFyJm5ic3A7cmlnaHQpLjwvdD4KKyAgPHQ+NSBjaGFubmVsczogNS4wIHN1
cnJvdW5kIChmcm9udCZuYnNwO2xlZnQsIGZyb250Jm5ic3A7Y2VudGVyLCBmcm9udCZuYnNwO3Jp
Z2h0LCByZWFyJm5ic3A7bGVmdCwgcmVhciZuYnNwO3JpZ2h0KS48L3Q+CisgIDx0PjYgY2hhbm5l
bHM6IDUuMSBzdXJyb3VuZCAoZnJvbnQmbmJzcDtsZWZ0LCBmcm9udCZuYnNwO2NlbnRlciwgZnJv
bnQmbmJzcDtyaWdodCwgcmVhciZuYnNwO2xlZnQsIHJlYXImbmJzcDtyaWdodCwgTEZFKS48L3Q+
CisgIDx0PjcgY2hhbm5lbHM6IDYuMSBzdXJyb3VuZCAoZnJvbnQmbmJzcDtsZWZ0LCBmcm9udCZu
YnNwO2NlbnRlciwgZnJvbnQmbmJzcDtyaWdodCwgc2lkZSZuYnNwO2xlZnQsIHNpZGUmbmJzcDty
aWdodCwgcmVhciZuYnNwO2NlbnRlciwgTEZFKS48L3Q+CisgIDx0PjggY2hhbm5lbHM6IDcuMSBz
dXJyb3VuZCAoZnJvbnQmbmJzcDtsZWZ0LCBmcm9udCZuYnNwO2NlbnRlciwgZnJvbnQmbmJzcDty
aWdodCwgc2lkZSZuYnNwO2xlZnQsIHNpZGUmbmJzcDtyaWdodCwgcmVhciZuYnNwO2xlZnQsIHJl
YXImbmJzcDtyaWdodCwgTEZFKTwvdD4KKzwvbGlzdD4KKzwvdD4KKzx0PgorVGhpcyBzZXQgb2Yg
c3Vycm91bmQgb3B0aW9ucyBhbmQgc3BlYWtlciBsb2NhdGlvbiBvcmRlcmluZ3MgaXMgdGhlIHNh
bWUKKyBhcyB0aG9zZSB1c2VkIGJ5IHRoZSBWb3JiaXMgY29kZWMgPHhyZWYgdGFyZ2V0PSJ2b3Ji
aXMtbWFwcGluZyIvPi4KK1RoZSBvcmRlcmluZyBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgb25lIHVz
ZWQgYnkgdGhlCisgV0FWRSA8eHJlZiB0YXJnZXQ9IndhdmUtbXVsdGljaGFubmVsIi8+IGFuZAor
IEZyZWUgTG9zc2xlc3MgQXVkaW8gQ29kZWMgKEZMQUMpIDx4cmVmIHRhcmdldD0iZmxhYyIvPiBm
b3JtYXRzLAorIHNvIGNvcnJlY3Qgb3JkZXJpbmcgcmVxdWlyZXMgcGVybXV0YXRpb24gb2YgdGhl
IG91dHB1dCBjaGFubmVscyB3aGVuIGRlY29kaW5nCisgdG8gb3IgZW5jb2RpbmcgZnJvbSB0aG9z
ZSBmb3JtYXRzLgorJ0xGRScgaGVyZSByZWZlcnMgdG8gYSBMb3cgRnJlcXVlbmN5IEVmZmVjdHMg
Y2hhbm5lbCwgb2Z0ZW4gbWFwcGVkIHRvIGEKKyAgc3Vid29vZmVyIHdpdGggbm8gcGFydGljdWxh
ciBzcGF0aWFsIHBvc2l0aW9uLgorSW1wbGVtZW50YXRpb25zIFNIT1VMRCBpZGVudGlmeSAnc2lk
ZScgb3IgJ3JlYXInIHNwZWFrZXIgbG9jYXRpb25zIHdpdGgKKyAnc3Vycm91bmQnIGFuZCAnYmFj
aycgYXMgYXBwcm9wcmlhdGUgd2hlbiBpbnRlcmZhY2luZyB3aXRoIGF1ZGlvIGZvcm1hdHMKKyBv
ciBzeXN0ZW1zIHdoaWNoIHByZWZlciB0aGF0IHRlcm1pbm9sb2d5LgorPC90PgorPC9zZWN0aW9u
PgorCis8c2VjdGlvbiBhbmNob3I9ImNoYW5uZWxfbWFwcGluZ18yNTUiCisgdGl0bGU9IkNoYW5u
ZWwgTWFwcGluZyBGYW1pbHkgMjU1Ij4KKzx0PgorQWxsb3dlZCBudW1iZXJzIG9mIGNoYW5uZWxz
OiAxLi4uMjU1LgorTm8gZGVmaW5lZCBjaGFubmVsIG1lYW5pbmcuCis8L3Q+Cis8dD4KK0NoYW5u
ZWxzIGFyZSB1bmlkZW50aWZpZWQuCitHZW5lcmFsLXB1cnBvc2UgcGxheWVycyBTSE9VTEQgTk9U
IGF0dGVtcHQgdG8gcGxheSB0aGVzZSBzdHJlYW1zLgorT2ZmbGluZSBpbXBsZW1lbnRhdGlvbnMg
TUFZIGRlaW50ZXJsZWF2ZSB0aGUgb3V0cHV0IGludG8gc2VwYXJhdGUgUENNIGZpbGVzLAorIG9u
ZSBwZXIgY2hhbm5lbC4KK0ltcGxlbWVudGF0aW9ucyBTSE9VTEQgTk9UIHByb2R1Y2Ugb3V0cHV0
IGZvciBjaGFubmVscyBtYXBwZWQgdG8gc3RyZWFtIGluZGV4CisgMjU1IChwdXJlIHNpbGVuY2Up
IHVubGVzcyB0aGV5IGhhdmUgbm8gb3RoZXIgd2F5IHRvIGluZGljYXRlIHRoZSBpbmRleCBvZgor
IG5vbi1zaWxlbnQgY2hhbm5lbHMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hv
cj0iY2hhbm5lbF9tYXBwaW5nX3VuZGVmaW5lZCIKKyB0aXRsZT0iVW5kZWZpbmVkIENoYW5uZWwg
TWFwcGluZ3MiPgorPHQ+CitUaGUgcmVtYWluaW5nIGNoYW5uZWwgbWFwcGluZyBmYW1pbGllcyAo
Mi4uLjI1NCkgYXJlIHJlc2VydmVkLgorQSBkZW11eGVyIGltcGxlbWVudGF0aW9uIGVuY291bnRl
cmluZyBhIHJlc2VydmVkIGNoYW5uZWwgbWFwcGluZyBmYW1pbHkgdmFsdWUKKyBTSE9VTEQgYWN0
IGFzIHRob3VnaCB0aGUgdmFsdWUgaXMgMjU1LgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlv
biBhbmNob3I9ImRvd25taXgiIHRpdGxlPSJEb3dubWl4aW5nIj4KKzx0PgorQW4gT2dnIE9wdXMg
cGxheWVyIE1VU1Qgc3VwcG9ydCBhbnkgdmFsaWQgY2hhbm5lbCBtYXBwaW5nIHdpdGggYSBjaGFu
bmVsCisgbWFwcGluZyBmYW1pbHkgb2YgMCBvciAxLCBldmVuIGlmIHRoZSBudW1iZXIgb2YgY2hh
bm5lbHMgZG9lcyBub3QgbWF0Y2ggdGhlCisgcGh5c2ljYWxseSBjb25uZWN0ZWQgYXVkaW8gaGFy
ZHdhcmUuCitQbGF5ZXJzIFNIT1VMRCBwZXJmb3JtIGNoYW5uZWwgbWl4aW5nIHRvIGluY3JlYXNl
IG9yIHJlZHVjZSB0aGUgbnVtYmVyIG9mCisgY2hhbm5lbHMgYXMgbmVlZGVkLgorPC90PgorCis8
dD4KK0ltcGxlbWVudGF0aW9ucyBNQVkgdXNlIHRoZSBtYXRyaWNlcyBpbgorIEZpZ3VyZXMmbmJz
cDs8eHJlZiB0YXJnZXQ9ImRvd25taXgtbWF0cml4LTMiIGZvcm1hdD0iY291bnRlciIvPgorIHRo
cm91Z2gmbmJzcDs8eHJlZiB0YXJnZXQ9ImRvd25taXgtbWF0cml4LTgiIGZvcm1hdD0iY291bnRl
ciIvPiB0byBpbXBsZW1lbnQKKyBkb3dubWl4aW5nIGZyb20gbXVsdGljaGFubmVsIGZpbGVzIHVz
aW5nCisgPHhyZWYgdGFyZ2V0PSJjaGFubmVsX21hcHBpbmdfMSI+Q2hhbm5lbCBNYXBwaW5nIEZh
bWlseSAxPC94cmVmPiwgd2hpY2ggYXJlCisga25vd24gdG8gZ2l2ZSBhY2NlcHRhYmxlIHJlc3Vs
dHMgZm9yIHN0ZXJlby4KK01hdHJpY2VzIGZvciAzIGFuZCA0IGNoYW5uZWxzIGFyZSBub3JtYWxp
emVkIHNvIGVhY2ggY29lZmZpY2llbnQgcm93IHN1bXMKKyB0byAxIHRvIGF2b2lkIGNsaXBwaW5n
LgorRm9yIDUgb3IgbW9yZSBjaGFubmVscyB0aGV5IGFyZSBub3JtYWxpemVkIHRvIDIgYXMgYSBj
b21wcm9taXNlIGJldHdlZW4KKyBjbGlwcGluZyBhbmQgZHluYW1pYyByYW5nZSByZWR1Y3Rpb24u
Cis8L3Q+Cis8dD4KK0luIHRoZXNlIG1hdHJpY2VzIHRoZSBmcm9udCBsZWZ0IGFuZCBmcm9udCBy
aWdodCBjaGFubmVscyBhcmUgZ2VuZXJhbGx5CitwYXNzZWQgdGhyb3VnaCBkaXJlY3RseS4KK1do
ZW4gYSBzdXJyb3VuZCBjaGFubmVsIGlzIHNwbGl0IGJldHdlZW4gYm90aCB0aGUgbGVmdCBhbmQg
cmlnaHQgc3RlcmVvCisgY2hhbm5lbHMsIGNvZWZmaWNpZW50cyBhcmUgY2hvc2VuIHNvIHRoZWly
IHNxdWFyZXMgc3VtIHRvIDEsIHdoaWNoCisgaGVscHMgcHJlc2VydmUgdGhlIHBlcmNlaXZlZCBp
bnRlbnNpdHkuCitSZWFyIGNoYW5uZWxzIGFyZSBtaXhlZCBtb3JlIGRpZmZ1c2VseSBvciBhdHRl
bnVhdGVkIHRvIG1haW50YWluIGZvY3VzCisgb24gdGhlIGZyb250IGNoYW5uZWxzLgorPC90Pgor
Cis8ZmlndXJlIGFuY2hvcj0iZG93bm1peC1tYXRyaXgtMyIKKyB0aXRsZT0iU3RlcmVvIGRvd25t
aXggbWF0cml4IGZvciB0aGUgbGluZWFyIHN1cnJvdW5kIGNoYW5uZWwgbWFwcGluZyIKKyBhbGln
bj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworTCBvdXRwdXQg
PSAoIDAuNTg1Nzg2ICogbGVmdCArIDAuNDE0MjE0ICogY2VudGVyICAgICAgICAgICAgICAgICAg
ICApCitSIG91dHB1dCA9ICggICAgICAgICAgICAgICAgICAgMC40MTQyMTQgKiBjZW50ZXIgKyAw
LjU4NTc4NiAqIHJpZ2h0ICkKK11dPjwvYXJ0d29yaz4KKzxwb3N0YW1ibGU+CitFeGFjdCBjb2Vm
ZmljaWVudCB2YWx1ZXMgYXJlIDEgYW5kIDEvc3FydCgyKSwgbXVsdGlwbGllZCBieQorIDEvKDEm
bmJzcDsrJm5ic3A7MS9zcXJ0KDIpKSBmb3Igbm9ybWFsaXphdGlvbi4KKzwvcG9zdGFtYmxlPgor
PC9maWd1cmU+CisKKzxmaWd1cmUgYW5jaG9yPSJkb3dubWl4LW1hdHJpeC00IgorIHRpdGxlPSJT
dGVyZW8gZG93bm1peCBtYXRyaXggZm9yIHRoZSBxdWFkcmFwaG9uaWMgY2hhbm5lbCBtYXBwaW5n
IgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisv
ICAgICAgICAgIFwgICAvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgLyBG
TCBcCit8IEwgb3V0cHV0IHwgICB8IDAuNDIyNjUwIDAuMDAwMDAwIDAuMzY2MDI1IDAuMjExMzI1
IHwgfCBGUiB8Cit8IFIgb3V0cHV0IHwgPSB8IDAuMDAwMDAwIDAuNDIyNjUwIDAuMjExMzI1IDAu
MzY2MDI1IHwgfCBSTCB8CitcICAgICAgICAgIC8gICBcICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8gXCBSUiAvCitdXT48L2FydHdvcms+Cis8cG9zdGFtYmxlPgorRXhhY3Qg
Y29lZmZpY2llbnQgdmFsdWVzIGFyZSAxLCBzcXJ0KDMpLzIgYW5kIDEvMiwgbXVsdGlwbGllZCBi
eQorIDEvKDEmbmJzcDsrJm5ic3A7c3FydCgzKS8yJm5ic3A7KyZuYnNwOzEvMikgZm9yIG5vcm1h
bGl6YXRpb24uCis8L3Bvc3RhbWJsZT4KKzwvZmlndXJlPgorCis8ZmlndXJlIGFuY2hvcj0iZG93
bm1peC1tYXRyaXgtNSIKKyB0aXRsZT0iU3RlcmVvIGRvd25taXggbWF0cml4IGZvciB0aGUgNS4w
IHN1cnJvdW5kIG1hcHBpbmciCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2Vu
dGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8gRkwgXAorLyAgIFwgICAvICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwgfCBGQyB8Cit8IEwgfCAgIHwgMC42NTA4MDIgMC40NjAx
ODYgMC4wMDAwMDAgMC41NjM2MTEgMC4zMjU0MDEgfCB8IEZSIHwKK3wgUiB8ID0gfCAwLjAwMDAw
MCAwLjQ2MDE4NiAwLjY1MDgwMiAwLjMyNTQwMSAwLjU2MzYxMSB8IHwgUkwgfAorXCAgIC8gICBc
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gfCBSUiB8Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
ICAgIC8KK11dPjwvYXJ0d29yaz4KKzxwb3N0YW1ibGU+CitFeGFjdCBjb2VmZmljaWVudCB2YWx1
ZXMgYXJlIDEsIDEvc3FydCgyKSwgc3FydCgzKS8yIGFuZCAxLzIsIG11bHRpcGxpZWQgYnkKKyAy
LygxJm5ic3A7KyZuYnNwOzEvc3FydCgyKSZuYnNwOysmbmJzcDtzcXJ0KDMpLzImbmJzcDsrJm5i
c3A7MS8yKQorIGZvciBub3JtYWxpemF0aW9uLgorPC9wb3N0YW1ibGU+Cis8L2ZpZ3VyZT4KKwor
PGZpZ3VyZSBhbmNob3I9ImRvd25taXgtbWF0cml4LTYiCisgdGl0bGU9IlN0ZXJlbyBkb3dubWl4
IG1hdHJpeCBmb3IgdGhlIDUuMSBzdXJyb3VuZCBtYXBwaW5nIgorIGFsaWduPSJjZW50ZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL0ZMIFwKKy8gXCAgIC8g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCB8
RkMgfAorfEx8ICAgfCAwLjUyOTA2NyAwLjM3NDEwNyAwLjAwMDAwMCAwLjQ1ODE4NiAwLjI2NDUz
NCAwLjM3NDEwNyB8IHxGUiB8Cit8UnwgPSB8IDAuMDAwMDAwIDAuMzc0MTA3IDAuNTI5MDY3IDAu
MjY0NTM0IDAuNDU4MTg2IDAuMzc0MTA3IHwgfFJMIHwKK1wgLyAgIFwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyB8UlIgfAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxM
RkUvCitdXT48L2FydHdvcms+Cis8cG9zdGFtYmxlPgorRXhhY3QgY29lZmZpY2llbnQgdmFsdWVz
IGFyZSAxLCAxL3NxcnQoMiksIHNxcnQoMykvMiBhbmQgMS8yLCBtdWx0aXBsaWVkIGJ5CisyLygx
Jm5ic3A7KyZuYnNwOzEvc3FydCgyKSZuYnNwOysmbmJzcDtzcXJ0KDMpLzImbmJzcDsrJm5ic3A7
MS8yICsgMS9zcXJ0KDIpKQorIGZvciBub3JtYWxpemF0aW9uLgorPC9wb3N0YW1ibGU+Cis8L2Zp
Z3VyZT4KKworPGZpZ3VyZSBhbmNob3I9ImRvd25taXgtbWF0cml4LTciCisgdGl0bGU9IlN0ZXJl
byBkb3dubWl4IG1hdHJpeCBmb3IgdGhlIDYuMSBzdXJyb3VuZCBtYXBwaW5nIgorIGFsaWduPSJj
ZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgLyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
fCAwLjQ1NTMxMCAwLjMyMTk1MyAwLjAwMDAwMCAwLjM5NDMxMCAwLjIyNzY1NSAwLjI3ODgxOSAw
LjMyMTk1MyB8CisgfCAwLjAwMDAwMCAwLjMyMTk1MyAwLjQ1NTMxMCAwLjIyNzY1NSAwLjM5NDMx
MCAwLjI3ODgxOSAwLjMyMTk1MyB8CisgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvCitdXT48L2FydHdvcms+Cis8cG9zdGFt
YmxlPgorRXhhY3QgY29lZmZpY2llbnQgdmFsdWVzIGFyZSAxLCAxL3NxcnQoMiksIHNxcnQoMykv
MiwgMS8yIGFuZAorIHNxcnQoMykvMi9zcXJ0KDIpLCBtdWx0aXBsaWVkIGJ5CisgMi8oMSZuYnNw
OysmbmJzcDsxL3NxcnQoMikmbmJzcDsrJm5ic3A7c3FydCgzKS8yJm5ic3A7KyZuYnNwOzEvMiAr
Cisgc3FydCgzKS8yL3NxcnQoMikgKyAxL3NxcnQoMikpIGZvciBub3JtYWxpemF0aW9uLgorVGhl
IGNvZWZmaWNpZW50cyBhcmUgaW4gdGhlIHNhbWUgb3JkZXIgYXMgaW4gPHhyZWYgdGFyZ2V0PSJj
aGFubmVsX21hcHBpbmdfMSIgLz4sCisgYW5kIHRoZSBtYXRyaWNlcyBhYm92ZS4KKzwvcG9zdGFt
YmxlPgorPC9maWd1cmU+CisKKzxmaWd1cmUgYW5jaG9yPSJkb3dubWl4LW1hdHJpeC04IgorIHRp
dGxlPSJTdGVyZW8gZG93bm1peCBtYXRyaXggZm9yIHRoZSA3LjEgc3Vycm91bmQgbWFwcGluZyIK
KyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworLyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorfCAuMzg4NjMxIC4yNzQ4MDQgLjAwMDAwMCAuMzM2NTY1IC4xOTQzMTYgLjMzNjU2
NSAuMTk0MzE2IC4yNzQ4MDQgfAorfCAuMDAwMDAwIC4yNzQ4MDQgLjM4ODYzMSAuMTk0MzE2IC4z
MzY1NjUgLjE5NDMxNiAuMzM2NTY1IC4yNzQ4MDQgfAorXCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLworXV0+PC9hcnR3b3Jr
PgorPHBvc3RhbWJsZT4KK0V4YWN0IGNvZWZmaWNpZW50IHZhbHVlcyBhcmUgMSwgMS9zcXJ0KDIp
LCBzcXJ0KDMpLzIgYW5kIDEvMiwgbXVsdGlwbGllZCBieQorIDIvKDImbmJzcDsrJm5ic3A7Mi9z
cXJ0KDIpJm5ic3A7KyZuYnNwO3NxcnQoMykpIGZvciBub3JtYWxpemF0aW9uLgorVGhlIGNvZWZm
aWNpZW50cyBhcmUgaW4gdGhlIHNhbWUgb3JkZXIgYXMgaW4gPHhyZWYgdGFyZ2V0PSJjaGFubmVs
X21hcHBpbmdfMSIgLz4sCisgYW5kIHRoZSBtYXRyaWNlcyBhYm92ZS4KKzwvcG9zdGFtYmxlPgor
PC9maWd1cmU+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPiA8IS0tIGVuZCBjaGFubmVsX21h
cHBpbmdfdGFibGUgLS0+CisKKzwvc2VjdGlvbj4gPCEtLSBlbmQgaWRfaGVhZGVyIC0tPgorCis8
c2VjdGlvbiBhbmNob3I9ImNvbW1lbnRfaGVhZGVyIiB0aXRsZT0iQ29tbWVudCBIZWFkZXIiPgor
Cis8ZmlndXJlIGFuY2hvcj0iY29tbWVudF9oZWFkZXJfcGFja2V0IiB0aXRsZT0iQ29tbWVudCBI
ZWFkZXIgUGFja2V0IgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAg
ICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDgg
OSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAnTycgICAgICB8ICAg
ICAgJ3AnICAgICAgfCAgICAgICd1JyAgICAgIHwgICAgICAncycgICAgICB8CisrLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwor
fCAgICAgICdUJyAgICAgIHwgICAgICAnYScgICAgICB8ICAgICAgJ2cnICAgICAgfCAgICAgICdz
JyAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgVmVuZG9yIFN0cmluZyBM
ZW5ndGggICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAg
ICAgICAgICAgICAgICAgICAgVmVuZG9yIFN0cmluZy4uLiAgICAgICAgICAgICAgICAgICAgICAg
OgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgIFVzZXIgQ29tbWVudCBM
aXN0IExlbmd0aCAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAg
ICAgIFVzZXIgQ29tbWVudCAjMCBTdHJpbmcgTGVuZ3RoICAgICAgICAgICAgICAgICB8CisrLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICAgICAgVXNlciBDb21tZW50ICMwIFN0cmlu
Zy4uLiAgICAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAg
ICAgICAgIFVzZXIgQ29tbWVudCAjMSBTdHJpbmcgTGVuZ3RoICAgICAgICAgICAgICAgICB8Cisr
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKworOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDoKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8dD4KK1RoZSBj
b21tZW50IGhlYWRlciBjb25zaXN0cyBvZiBhIDY0LWJpdCBtYWdpYyBzaWduYXR1cmUsIGZvbGxv
d2VkIGJ5IGRhdGEgaW4KKyB0aGUgc2FtZSBmb3JtYXQgYXMgdGhlIDx4cmVmIHRhcmdldD0idm9y
YmlzLWNvbW1lbnQiLz4gaGVhZGVyIHVzZWQgaW4gT2dnCisgVm9yYmlzLCBleGNlcHQgKGxpa2Ug
T2dnIFRoZW9yYSBhbmQgU3BlZXgpIHRoZSBmaW5hbCAiZnJhbWluZyBiaXQiIHNwZWNpZmllZAor
IGluIHRoZSBWb3JiaXMgc3BlYyBpcyBub3QgcHJlc2VudC4KKzxsaXN0IHN0eWxlPSJudW1iZXJz
Ij4KKzx0Pk1hZ2ljIFNpZ25hdHVyZToKKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhpcyBp
cyBhbiA4LW9jdGV0ICg2NC1iaXQpIGZpZWxkIHRoYXQgYWxsb3dzIGNvZGVjIGlkZW50aWZpY2F0
aW9uIGFuZCBpcworIGh1bWFuLXJlYWRhYmxlLgorSXQgY29udGFpbnMsIGluIG9yZGVyLCB0aGUg
bWFnaWMgbnVtYmVyczoKKzxsaXN0IHN0eWxlPSJlbXB0eSI+Cis8dD4weDRGICdPJzwvdD4KKzx0
PjB4NzAgJ3AnPC90PgorPHQ+MHg3NSAndSc8L3Q+Cis8dD4weDczICdzJzwvdD4KKzx0PjB4NTQg
J1QnPC90PgorPHQ+MHg2MSAnYSc8L3Q+Cis8dD4weDY3ICdnJzwvdD4KKzx0PjB4NzMgJ3MnPC90
PgorPC9saXN0PgorU3RhcnRpbmcgd2l0aCAiT3AiIGhlbHBzIGRpc3Rpbmd1aXNoIGl0IGZyb20g
YXVkaW8gZGF0YSBwYWNrZXRzLCBhcyB0aGlzIGlzIGFuCisgaW52YWxpZCBUT0Mgc2VxdWVuY2Uu
Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0PlZlbmRvciBTdHJpbmcgTGVuZ3Ro
ICgzMiBiaXRzLCB1bnNpZ25lZCwgbGl0dGxlIGVuZGlhbik6Cis8dnNwYWNlIGJsYW5rTGluZXM9
IjEiLz4KK1RoaXMgZmllbGQgZ2l2ZXMgdGhlIGxlbmd0aCBvZiB0aGUgZm9sbG93aW5nIHZlbmRv
ciBzdHJpbmcsIGluIG9jdGV0cy4KK0l0IE1VU1QgTk9UIGluZGljYXRlIHRoYXQgdGhlIHZlbmRv
ciBzdHJpbmcgaXMgbG9uZ2VyIHRoYW4gdGhlIHJlc3Qgb2YgdGhlCisgcGFja2V0LgorPHZzcGFj
ZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5WZW5kb3IgU3RyaW5nICh2YXJpYWJsZSBsZW5n
dGgsIFVURi04IHZlY3Rvcik6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgYSBz
aW1wbGUgaHVtYW4tcmVhZGFibGUgdGFnIGZvciB2ZW5kb3IgaW5mb3JtYXRpb24sIGVuY29kZWQg
YXMgYSBVVEYtOAorIHN0cmluZyZuYnNwOzx4cmVmIHRhcmdldD0iUkZDMzYyOSIvPi4KK05vIHRl
cm1pbmF0aW5nIG51bGwgb2N0ZXQgaXMgbmVjZXNzYXJ5LgorPHZzcGFjZSBibGFua0xpbmVzPSIx
Ii8+CitUaGlzIHRhZyBpcyBpbnRlbmRlZCB0byBpZGVudGlmeSB0aGUgY29kZWMgZW5jb2RlciBh
bmQgZW5jYXBzdWxhdGlvbgorIGltcGxlbWVudGF0aW9ucywgZm9yIHRyYWNpbmcgZGlmZmVyZW5j
ZXMgaW4gdGVjaG5pY2FsIGJlaGF2aW9yLgorVXNlci1mYWNpbmcgYXBwbGljYXRpb25zIGNhbiB1
c2UgdGhlICdFTkNPREVSJyB1c2VyIGNvbW1lbnQgdGFnIHRvIGlkZW50aWZ5CisgdGhlbXNlbHZl
cy4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorPC90PgorPHQ+VXNlciBDb21tZW50IExpc3Qg
TGVuZ3RoICgzMiBiaXRzLCB1bnNpZ25lZCwgbGl0dGxlIGVuZGlhbik6Cis8dnNwYWNlIGJsYW5r
TGluZXM9IjEiLz4KK1RoaXMgZmllbGQgaW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgdXNlci1zdXBw
bGllZCBjb21tZW50cy4KK0l0IE1BWSBpbmRpY2F0ZSB0aGVyZSBhcmUgemVybyB1c2VyLXN1cHBs
aWVkIGNvbW1lbnRzLCBpbiB3aGljaCBjYXNlIHRoZXJlIGFyZQorIG5vIGFkZGl0aW9uYWwgZmll
bGRzIGluIHRoZSBwYWNrZXQuCitJdCBNVVNUIE5PVCBpbmRpY2F0ZSB0aGF0IHRoZXJlIGFyZSBz
byBtYW55IGNvbW1lbnRzIHRoYXQgdGhlIGNvbW1lbnQgc3RyaW5nCisgbGVuZ3RocyB3b3VsZCBy
ZXF1aXJlIG1vcmUgZGF0YSB0aGFuIGlzIGF2YWlsYWJsZSBpbiB0aGUgcmVzdCBvZiB0aGUgcGFj
a2V0LgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5Vc2VyIENvbW1lbnQgI2kg
U3RyaW5nIExlbmd0aCAoMzIgYml0cywgdW5zaWduZWQsIGxpdHRsZSBlbmRpYW4pOgorPHZzcGFj
ZSBibGFua0xpbmVzPSIxIi8+CitUaGlzIGZpZWxkIGdpdmVzIHRoZSBsZW5ndGggb2YgdGhlIGZv
bGxvd2luZyB1c2VyIGNvbW1lbnQgc3RyaW5nLCBpbiBvY3RldHMuCitUaGVyZSBpcyBvbmUgZm9y
IGVhY2ggdXNlciBjb21tZW50IGluZGljYXRlZCBieSB0aGUgJ3VzZXIgY29tbWVudCBsaXN0IGxl
bmd0aCcKKyBmaWVsZC4KK0l0IE1VU1QgTk9UIGluZGljYXRlIHRoYXQgdGhlIHN0cmluZyBpcyBs
b25nZXIgdGhhbiB0aGUgcmVzdCBvZiB0aGUgcGFja2V0LgorPHZzcGFjZSBibGFua0xpbmVzPSIx
Ii8+Cis8L3Q+Cis8dD5Vc2VyIENvbW1lbnQgI2kgU3RyaW5nICh2YXJpYWJsZSBsZW5ndGgsIFVU
Ri04IHZlY3Rvcik6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgZmllbGQgY29udGFp
bnMgYSBzaW5nbGUgdXNlciBjb21tZW50IGVuY29kZWQgYXMgYSBVVEYtOAorIHN0cmluZyZuYnNw
Ozx4cmVmIHRhcmdldD0iUkZDMzYyOSIvPi4KK1RoZXJlIGlzIG9uZSBmb3IgZWFjaCB1c2VyIGNv
bW1lbnQgaW5kaWNhdGVkIGJ5IHRoZSAndXNlciBjb21tZW50IGxpc3QgbGVuZ3RoJworIGZpZWxk
LgorPC90PgorPC9saXN0PgorPC90PgorCis8dD4KK1RoZSB2ZW5kb3Igc3RyaW5nIGxlbmd0aCBh
bmQgdXNlciBjb21tZW50IGxpc3QgbGVuZ3RoIGFyZSBSRVFVSVJFRCwgYW5kCisgaW1wbGVtZW50
YXRpb25zIFNIT1VMRCB0cmVhdCBhIHN0cmVhbSBhcyBpbnZhbGlkIGlmIGl0IGNvbnRhaW5zIGEg
Y29tbWVudAorIGhlYWRlciB0aGF0IGRvZXMgbm90IGhhdmUgZW5vdWdoIGRhdGEgZm9yIHRoZXNl
IGZpZWxkcywgb3IgdGhhdCBkb2VzIG5vdAorIGNvbnRhaW4gZW5vdWdoIGRhdGEgZm9yIHRoZSBj
b3JyZXNwb25kaW5nIHZlbmRvciBzdHJpbmcgb3IgdXNlciBjb21tZW50cyB0aGV5CisgZGVzY3Jp
YmUuCitNYWtpbmcgdGhpcyBjaGVjayBiZWZvcmUgYWxsb2NhdGluZyB0aGUgYXNzb2NpYXRlZCBt
ZW1vcnkgdG8gY29udGFpbiB0aGUgZGF0YQorIGhlbHBzIHByZXZlbnQgYSBwb3NzaWJsZSBEZW5p
YWwtb2YtU2VydmljZSAoRG9TKSBhdHRhY2sgZnJvbSBzbWFsbCBjb21tZW50CisgaGVhZGVycyB0
aGF0IGNsYWltIHRvIGNvbnRhaW4gc3RyaW5ncyBsb25nZXIgdGhhbiB0aGUgZW50aXJlIHBhY2tl
dCBvciBtb3JlCisgdXNlciBjb21tZW50cyB0aGFuIHRoYW4gY291bGQgcG9zc2libHkgZml0IGlu
IHRoZSBwYWNrZXQuCis8L3Q+CisKKzx0PgorSW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSB1c2Vy
IGNvbW1lbnQgbGlzdCwgdGhlIGNvbW1lbnQgaGVhZGVyIE1BWQorIGNvbnRhaW4gemVyby1wYWRk
aW5nIG9yIG90aGVyIGJpbmFyeSBkYXRhIHdoaWNoIGlzIG5vdCBzcGVjaWZpZWQgaGVyZS4KK0lm
IHRoZSBsZWFzdC1zaWduaWZpY2FudCBiaXQgb2YgdGhlIGZpcnN0IGJ5dGUgb2YgdGhpcyBkYXRh
IGlzIDEsIHRoZW4gZWRpdG9ycworIFNIT1VMRCBwcmVzZXJ2ZSB0aGUgY29udGVudHMgb2YgdGhp
cyBkYXRhIHdoZW4gdXBkYXRpbmcgdGhlIHRhZ3MsIGJ1dCBpZiB0aGlzCisgYml0IGlzIDAsIGFs
bCBzdWNoIGRhdGEgTUFZIGJlIHRyZWF0ZWQgYXMgcGFkZGluZywgYW5kIHRydW5jYXRlZCBvciBk
aXNjYXJkZWQKKyBhcyBkZXNpcmVkLgorVGhpcyBhbGxvd3MgaW5mb3JtYWwgZXhwZXJpbWVudGF0
aW9uIHdpdGggdGhlIGZvcm1hdCBvZiB0aGlzIGJpbmFyeSBkYXRhIHVudGlsCisgaXQgY2FuIGJl
IHNwZWNpZmllZCBsYXRlci4KKzwvdD4KKworPHQ+CitUaGUgY29tbWVudCBoZWFkZXIgY2FuIGJl
IGFyYml0cmFyaWx5IGxhcmdlIGFuZCBtaWdodCBiZSBzcHJlYWQgb3ZlciBhIGxhcmdlCisgbnVt
YmVyIG9mIE9nZyBwYWdlcy4KK0ltcGxlbWVudGF0aW9ucyBNVVNUIGF2b2lkIGF0dGVtcHRpbmcg
dG8gYWxsb2NhdGUgZXhjZXNzaXZlIGFtb3VudHMgb2YgbWVtb3J5Cisgd2hlbiBwcmVzZW50ZWQg
d2l0aCBhIHZlcnkgbGFyZ2UgY29tbWVudCBoZWFkZXIuCitUbyBhY2NvbXBsaXNoIHRoaXMsIGlt
cGxlbWVudGF0aW9ucyBNQVkgdHJlYXQgYSBzdHJlYW0gYXMgaW52YWxpZCBpZiBpdCBoYXMgYQor
IGNvbW1lbnQgaGVhZGVyIGxhcmdlciB0aGFuIDEyNSw4MjksMTIwJm5ic3A7b2N0ZXRzICgxMjAm
bmJzcDtNQiksIGFuZCBNQVkKKyBpZ25vcmUgaW5kaXZpZHVhbCBjb21tZW50cyB0aGF0IGFyZSBu
b3QgZnVsbHkgY29udGFpbmVkIHdpdGhpbiB0aGUgZmlyc3QKKyA2MSw0NDAmbmJzcDtvY3RldHMg
b2YgdGhlIGNvbW1lbnQgaGVhZGVyLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImNvbW1lbnRf
Zm9ybWF0IiB0aXRsZT0iVGFnIERlZmluaXRpb25zIj4KKzx0PgorVGhlIHVzZXIgY29tbWVudCBz
dHJpbmdzIGZvbGxvdyB0aGUgTkFNRT12YWx1ZSBmb3JtYXQgZGVzY3JpYmVkIGJ5CisgPHhyZWYg
dGFyZ2V0PSJ2b3JiaXMtY29tbWVudCIvPiB3aXRoIHRoZSBzYW1lIHJlY29tbWVuZGVkIHRhZyBu
YW1lczoKKyBBUlRJU1QsIFRJVExFLCBEQVRFLCBBTEJVTSwgYW5kIHNvIG9uLgorPC90PgorPHQ+
CitUd28gbmV3IGNvbW1lbnQgdGFncyBhcmUgaW50cm9kdWNlZCBoZXJlOgorPC90PgorCis8dD5G
aXJzdCwgYW4gb3B0aW9uYWwgZ2FpbiBmb3IgdHJhY2sgbm9ybWFsaXphdGlvbjo8L3Q+Cis8Zmln
dXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImxlZnQiPjwhW0NEQVRBWworUjEy
OF9UUkFDS19HQUlOPS01NzMKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPHQ+CisgcmVwcmVz
ZW50aW5nIHRoZSB2b2x1bWUgc2hpZnQgbmVlZGVkIHRvIG5vcm1hbGl6ZSB0aGUgdHJhY2sncyB2
b2x1bWUKKyBkdXJpbmcgaXNvbGF0ZWQgcGxheWJhY2ssIGluIHJhbmRvbSBzaHVmZmxlLCBhbmQg
c28gb24uCitUaGUgZ2FpbiBpcyBhIFE3LjggZml4ZWQgcG9pbnQgbnVtYmVyIGluIGRCLCBhcyBp
biB0aGUgSUQgaGVhZGVyJ3MgJ291dHB1dAorIGdhaW4nIGZpZWxkLgorVGhpcyB0YWcgaXMgc2lt
aWxhciB0byB0aGUgUkVQTEFZR0FJTl9UUkFDS19HQUlOIHRhZyBpbgorIFZvcmJpcyZuYnNwOzx4
cmVmIHRhcmdldD0icmVwbGF5LWdhaW4iLz4sIGV4Y2VwdCB0aGF0IHRoZSBub3JtYWwgdm9sdW1l
CisgcmVmZXJlbmNlIGlzIHRoZSA8eHJlZiB0YXJnZXQ9IkVCVS1SMTI4Ii8+IHN0YW5kYXJkLgor
PC90PgorPHQ+U2Vjb25kLCBhbiBvcHRpb25hbCBnYWluIGZvciBhbGJ1bSBub3JtYWxpemF0aW9u
OjwvdD4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0ibGVmdCI+PCFb
Q0RBVEFbCitSMTI4X0FMQlVNX0dBSU49MTExCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx0
PgorIHJlcHJlc2VudGluZyB0aGUgdm9sdW1lIHNoaWZ0IG5lZWRlZCB0byBub3JtYWxpemUgdGhl
IG92ZXJhbGwgdm9sdW1lIHdoZW4KKyBwbGF5ZWQgYXMgcGFydCBvZiBhIHBhcnRpY3VsYXIgY29s
bGVjdGlvbiBvZiB0cmFja3MuCitUaGUgZ2FpbiBpcyBhbHNvIGEgUTcuOCBmaXhlZCBwb2ludCBu
dW1iZXIgaW4gZEIsIGFzIGluIHRoZSBJRCBoZWFkZXIncworICdvdXRwdXQgZ2FpbicgZmllbGQu
CitUaGUgdmFsdWVzICctNTczJyBhbmQgJzExMScgZ2l2ZW4gaGVyZSBhcmUganVzdCBleGFtcGxl
cy4KKzwvdD4KKzx0PgorQW4gT2dnIE9wdXMgc3RyZWFtIE1VU1QgTk9UIGhhdmUgbW9yZSB0aGFu
IG9uZSBvZiBlYWNoIG9mIHRoZXNlIHRhZ3MsIGFuZCBpZgorIHByZXNlbnQgdGhlaXIgdmFsdWVz
IE1VU1QgYmUgYW4gaW50ZWdlciBmcm9tIC0zMjc2OCB0byAzMjc2NywgaW5jbHVzaXZlLAorIHJl
cHJlc2VudGVkIGluIEFTQ0lJIGFzIGEgYmFzZSAxMCBudW1iZXIgd2l0aCBubyB3aGl0ZXNwYWNl
LgorQSBsZWFkaW5nICcrJyBvciAnLScgY2hhcmFjdGVyIGlzIHZhbGlkLgorTGVhZGluZyB6ZXJv
cyBhcmUgYWxzbyBwZXJtaXR0ZWQsIGJ1dCB0aGUgdmFsdWUgTVVTVCBiZSByZXByZXNlbnRlZCBi
eQorIG5vIG1vcmUgdGhhbiA2IGNoYXJhY3RlcnMuCitPdGhlciBub24tZGlnaXQgY2hhcmFjdGVy
cyBNVVNUIE5PVCBiZSBwcmVzZW50LgorPC90PgorPHQ+CitJZiBwcmVzZW50LCBSMTI4X1RSQUNL
X0dBSU4gYW5kIFIxMjhfQUxCVU1fR0FJTiBNVVNUIGNvcnJlY3RseSByZXByZXNlbnQKKyB0aGUg
UjEyOCBub3JtYWxpemF0aW9uIGdhaW4gcmVsYXRpdmUgdG8gdGhlICdvdXRwdXQgZ2FpbicgZmll
bGQgc3BlY2lmaWVkCisgaW4gdGhlIElEIGhlYWRlci4KK0lmIGEgcGxheWVyIGNob29zZXMgdG8g
bWFrZSB1c2Ugb2YgdGhlIFIxMjhfVFJBQ0tfR0FJTiB0YWcgb3IgdGhlCisgUjEyOF9BTEJVTV9H
QUlOIHRhZywgaXQgTVVTVCBhcHBseSB0aG9zZSBnYWlucworIDxzcGFueCBzdHlsZT0iZW1waCI+
aW4gYWRkaXRpb248L3NwYW54PiB0byB0aGUgJ291dHB1dCBnYWluJyB2YWx1ZS4KK0lmIGEgdG9v
bCBtb2RpZmllcyB0aGUgSUQgaGVhZGVyJ3MgJ291dHB1dCBnYWluJyBmaWVsZCwgaXQgTVVTVCBh
bHNvIHVwZGF0ZSBvcgorIHJlbW92ZSB0aGUgUjEyOF9UUkFDS19HQUlOIGFuZCBSMTI4X0FMQlVN
X0dBSU4gY29tbWVudCB0YWdzIGlmIHByZXNlbnQuCitBIG11eGVyIFNIT1VMRCBwbGFjZSB0aGUg
Z2FpbiBpdCB3YW50cyBvdGhlciB0b29scyB0byB1c2UgYnkgZGVmYXVsdCBpbnRvIHRoZQorICdv
dXRwdXQgZ2FpbicgZmllbGQsIGFuZCBub3QgdGhlIGNvbW1lbnQgdGFnLgorPC90PgorPHQ+CitU
byBhdm9pZCBjb25mdXNpb24gd2l0aCBtdWx0aXBsZSBub3JtYWxpemF0aW9uIHNjaGVtZXMsIGFu
IE9wdXMgY29tbWVudCBoZWFkZXIKKyBTSE9VTEQgTk9UIGNvbnRhaW4gYW55IG9mIHRoZSBSRVBM
QVlHQUlOX1RSQUNLX0dBSU4sIFJFUExBWUdBSU5fVFJBQ0tfUEVBSywKKyBSRVBMQVlHQUlOX0FM
QlVNX0dBSU4sIG9yIFJFUExBWUdBSU5fQUxCVU1fUEVBSyB0YWdzLCB1bmxlc3MgdGhleSBhcmUg
b25seQorIHRvIGJlIHVzZWQgaW4gc29tZSBjb250ZXh0IHdoZXJlIHRoZXJlIGlzIGd1YXJhbnRl
ZWQgdG8gYmUgbm8gc3VjaCBjb25mdXNpb24uCis8eHJlZiB0YXJnZXQ9IkVCVS1SMTI4Ii8+IG5v
cm1hbGl6YXRpb24gaXMgcHJlZmVycmVkIHRvIHRoZSBlYXJsaWVyCisgUkVQTEFZR0FJTiBzY2hl
bWVzIGJlY2F1c2Ugb2YgaXRzIGNsZWFyIGRlZmluaXRpb24gYW5kIGFkb3B0aW9uIGJ5IGluZHVz
dHJ5LgorUGVhayBub3JtYWxpemF0aW9ucyBhcmUgZGlmZmljdWx0IHRvIGNhbGN1bGF0ZSByZWxp
YWJseSBmb3IgbG9zc3kgY29kZWNzCisgYmVjYXVzZSBvZiB2YXJpYXRpb24gaW4gZXhjdXJzaW9u
IGhlaWdodHMgZHVlIHRvIGRlY29kZXIgZGlmZmVyZW5jZXMuCitJbiB0aGUgYXV0aG9ycycgaW52
ZXN0aWdhdGlvbnMgdGhleSB3ZXJlIG5vdCBhcHBsaWVkIGNvbnNpc3RlbnRseSBvciBicm9hZGx5
CisgZW5vdWdoIHRvIG1lcml0IGluY2x1c2lvbiBoZXJlLgorPC90PgorPC9zZWN0aW9uPiA8IS0t
IGVuZCBjb21tZW50X2Zvcm1hdCAtLT4KKzwvc2VjdGlvbj4gPCEtLSBlbmQgY29tbWVudF9oZWFk
ZXIgLS0+CisKKzwvc2VjdGlvbj4gPCEtLSBlbmQgaGVhZGVycyAtLT4KKworPHNlY3Rpb24gYW5j
aG9yPSJwYWNrZXRfc2l6ZV9saW1pdHMiIHRpdGxlPSJQYWNrZXQgU2l6ZSBMaW1pdHMiPgorPHQ+
CitUZWNobmljYWxseSwgdmFsaWQgT3B1cyBwYWNrZXRzIGNhbiBiZSBhcmJpdHJhcmlseSBsYXJn
ZSBkdWUgdG8gdGhlIHBhZGRpbmcKKyBmb3JtYXQsIGFsdGhvdWdoIHRoZSBhbW91bnQgb2Ygbm9u
LXBhZGRpbmcgZGF0YSB0aGV5IGNhbiBjb250YWluIGlzIGJvdW5kZWQuCitUaGVzZSBwYWNrZXRz
IG1pZ2h0IGJlIHNwcmVhZCBvdmVyIGEgc2ltaWxhcmx5IGVub3Jtb3VzIG51bWJlciBvZiBPZ2cg
cGFnZXMuCitXaGVuIGVuY29kaW5nLCBpbXBsZW1lbnRhdGlvbnMgU0hPVUxEIGxpbWl0IHRoZSB1
c2Ugb2YgcGFkZGluZyBpbiBhdWRpbyBkYXRhCisgcGFja2V0cyB0byBubyBtb3JlIHRoYW4gaXMg
bmVjZXNzYXJ5IHRvIG1ha2UgYSB2YXJpYWJsZSBiaXRyYXRlIChWQlIpIHN0cmVhbQorIGNvbnN0
YW50IGJpdHJhdGUgKENCUiksIHVubGVzcyB0aGV5IGhhdmUgbm8gcmVhc29uYWJsZSB3YXkgdG8g
ZGV0ZXJtaW5lIHdoYXQKKyBpcyBuZWNlc3NhcnkuCitEZW11eGVycyBTSE9VTEQgdHJlYXQgYXVk
aW8gZGF0YSBwYWNrZXRzIGFzIGludmFsaWQgKHRyZWF0IHRoZW0gYXMgaWYgdGhleSB3ZXJlCisg
bWFsZm9ybWVkIE9wdXMgcGFja2V0cyB3aXRoIGFuIGludmFsaWQgVE9DIHNlcXVlbmNlKSBpZiB0
aGV5IGFyZSBsYXJnZXIgdGhhbgorIDYxLDQ0MCZuYnNwO29jdGV0cyBwZXIgT3B1cyBzdHJlYW0s
IHVubGVzcyB0aGV5IGhhdmUgYSBzcGVjaWZpYyByZWFzb24gZm9yCisgYWxsb3dpbmcgZXh0cmEg
cGFkZGluZy4KK1N1Y2ggcGFja2V0cyBuZWNlc3NhcmlseSBjb250YWluIG1vcmUgcGFkZGluZyB0
aGFuIG5lZWRlZCB0byBtYWtlIGEgc3RyZWFtIENCUi4KK0RlbXV4ZXJzIE1VU1QgYXZvaWQgYXR0
ZW1wdGluZyB0byBhbGxvY2F0ZSBleGNlc3NpdmUgYW1vdW50cyBvZiBtZW1vcnkgd2hlbgorIHBy
ZXNlbnRlZCB3aXRoIGEgdmVyeSBsYXJnZSBwYWNrZXQuCitEZW11eGVycyBNQVkgdHJlYXQgYXVk
aW8gZGF0YSBwYWNrZXRzIGFzIGludmFsaWQgb3IgcGFydGlhbGx5IHByb2Nlc3MgdGhlbSBpZgor
IHRoZXkgYXJlIGxhcmdlciB0aGFuIDYxLDQ0MCZuYnNwO29jdGV0cyBpbiBhbiBPZ2cgT3B1cyBz
dHJlYW0gd2l0aCBjaGFubmVsCisgbWFwcGluZyBmYW1pbGllcyZuYnNwOzAgb3ImbmJzcDsxLgor
RGVtdXhlcnMgTUFZIHRyZWF0IGF1ZGlvIGRhdGEgcGFja2V0cyBhcyBpbnZhbGlkIG9yIHBhcnRp
YWxseSBwcm9jZXNzIHRoZW0gaW4KKyBhbnkgT2dnIE9wdXMgc3RyZWFtIGlmIHRoZSBwYWNrZXQg
aXMgbGFyZ2VyIHRoYW4gNjEsNDQwJm5ic3A7b2N0ZXRzIGFuZCBhbHNvCisgbGFyZ2VyIHRoYW4g
Nyw2ODAmbmJzcDtvY3RldHMgcGVyIE9wdXMgc3RyZWFtLgorVGhlIHByZXNlbmNlIG9mIGFuIGV4
dHJlbWVseSBsYXJnZSBwYWNrZXQgaW4gdGhlIHN0cmVhbSBjb3VsZCBpbmRpY2F0ZSBhCisgbWVt
b3J5IGV4aGF1c3Rpb24gYXR0YWNrIG9yIHN0cmVhbSBjb3JydXB0aW9uLgorPC90PgorPHQ+CitJ
biBhbiBPZ2cgT3B1cyBzdHJlYW0sIHRoZSBsYXJnZXN0IHBvc3NpYmxlIHZhbGlkIHBhY2tldCB0
aGF0IGRvZXMgbm90IHVzZQorIHBhZGRpbmcgaGFzIGEgc2l6ZSBvZiAoNjEsMjk4Kk4mbmJzcDst
Jm5ic3A7Mikgb2N0ZXRzLgorV2l0aCAyNTUmbmJzcDtzdHJlYW1zLCB0aGlzIGlzIDE1LDYzMCw5
ODgmbmJzcDtvY3RldHMgYW5kIGNhbgorIHNwYW4gdXAgdG8gNjEsMjk4Jm5ic3A7T2dnIHBhZ2Vz
LCBhbGwgYnV0IG9uZSBvZiB3aGljaCB3aWxsIGhhdmUgYSBncmFudWxlCisgcG9zaXRpb24gb2Yg
LTEuCitUaGlzIGlzIG9mIGNvdXJzZSBhIHZlcnkgZXh0cmVtZSBwYWNrZXQsIGNvbnNpc3Rpbmcg
b2YgMjU1Jm5ic3A7c3RyZWFtcywgZWFjaAorIGNvbnRhaW5pbmcgMTIwJm5ic3A7bXMgb2YgYXVk
aW8gZW5jb2RlZCBhcyAyLjUmbmJzcDttcyBmcmFtZXMsIGVhY2ggZnJhbWUKKyB1c2luZyB0aGUg
bWF4aW11bSBwb3NzaWJsZSBudW1iZXIgb2Ygb2N0ZXRzICgxMjc1KSBhbmQgc3RvcmVkIGluIHRo
ZSBsZWFzdAorIGVmZmljaWVudCBtYW5uZXIgYWxsb3dlZCAoYSBWQlIgY29kZSZuYnNwOzMgT3B1
cyBwYWNrZXQpLgorRXZlbiBpbiBzdWNoIGEgcGFja2V0LCBtb3N0IG9mIHRoZSBkYXRhIHdpbGwg
YmUgemVyb3MgYXMgMi41Jm5ic3A7bXMgZnJhbWVzCisgY2Fubm90IGFjdHVhbGx5IHVzZSBhbGwg
MTI3NSZuYnNwO29jdGV0cy4KKzwvdD4KKzx0PgorVGhlIGxhcmdlc3QgcGFja2V0IGNvbnNpc3Rp
bmcgb2YgZW50aXJlbHkgdXNlZnVsIGRhdGEgaXMKKyAoMTUsMzI2Kk4mbmJzcDstJm5ic3A7Mikg
b2N0ZXRzLgorVGhpcyBjb3JyZXNwb25kcyB0byAxMjAmbmJzcDttcyBvZiBhdWRpbyBlbmNvZGVk
IGFzIDEwJm5ic3A7bXMgZnJhbWVzIGluIGVpdGhlcgorIFNJTEsgb3IgSHlicmlkIG1vZGUsIGJ1
dCBhdCBhIGRhdGEgcmF0ZSBvZiBvdmVyIDEmbmJzcDtNYnBzLCB3aGljaCBtYWtlcyBsaXR0bGUK
KyBzZW5zZSBmb3IgdGhlIHF1YWxpdHkgYWNoaWV2ZWQuCis8L3Q+Cis8dD4KK0EgbW9yZSByZWFz
b25hYmxlIGxpbWl0IGlzICg3LDY2NCpOJm5ic3A7LSZuYnNwOzIpIG9jdGV0cy4KK1RoaXMgY29y
cmVzcG9uZHMgdG8gMTIwJm5ic3A7bXMgb2YgYXVkaW8gZW5jb2RlZCBhcyAyMCZuYnNwO21zIHN0
ZXJlbyBDRUxUIG1vZGUKKyBmcmFtZXMsIHdpdGggYSB0b3RhbCBiaXRyYXRlIGp1c3QgdW5kZXIg
NTExJm5ic3A7a2JwcyAobm90IGNvdW50aW5nIHRoZSBPZ2cKKyBlbmNhcHN1bGF0aW9uIG92ZXJo
ZWFkKS4KK0ZvciBjaGFubmVsIG1hcHBpbmcgZmFtaWx5IDEsIE49OCBwcm92aWRlcyBhIHJlYXNv
bmFibGUgdXBwZXIgYm91bmQsIGFzIGl0CisgYWxsb3dzIGZvciBlYWNoIG9mIHRoZSA4IHBvc3Np
YmxlIG91dHB1dCBjaGFubmVscyB0byBiZSBkZWNvZGVkIGZyb20gYQorIHNlcGFyYXRlIHN0ZXJl
byBPcHVzIHN0cmVhbS4KK1RoaXMgZ2l2ZXMgYSBzaXplIG9mIDYxLDMxMCZuYnNwO29jdGV0cywg
d2hpY2ggaXMgcm91bmRlZCB1cCB0byBhIG11bHRpcGxlIG9mCisgMSwwMjQmbmJzcDtvY3RldHMg
dG8geWllbGQgdGhlIGF1ZGlvIGRhdGEgcGFja2V0IHNpemUgb2YgNjEsNDQwJm5ic3A7b2N0ZXRz
CisgdGhhdCBhbnkgaW1wbGVtZW50YXRpb24gaXMgZXhwZWN0ZWQgdG8gYmUgYWJsZSB0byBwcm9j
ZXNzIHN1Y2Nlc3NmdWxseS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJl
bmNvZGVyIiB0aXRsZT0iRW5jb2RlciBHdWlkZWxpbmVzIj4KKzx0PgorV2hlbiBlbmNvZGluZyBP
cHVzIHN0cmVhbXMsIE9nZyBtdXhlcnMgU0hPVUxEIHRha2UgaW50byBhY2NvdW50IHRoZQorIGFs
Z29yaXRobWljIGRlbGF5IG9mIHRoZSBPcHVzIGVuY29kZXIuCis8L3Q+Cis8dD4KK0luIGVuY29k
ZXJzIGRlcml2ZWQgZnJvbSB0aGUgcmVmZXJlbmNlCisgaW1wbGVtZW50YXRpb24mbmJzcDs8eHJl
ZiB0YXJnZXQ9IlJGQzY3MTYiLz4sIHRoZSBudW1iZXIgb2Ygc2FtcGxlcyBjYW4gYmUKKyBxdWVy
aWVkIHdpdGg6Cis8L3Q+Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCisgb3B1c19lbmNvZGVyX2N0bChlbmNvZGVyX3N0YXRlLCBPUFVT
X0dFVF9MT09LQUhFQUQoJmRlbGF5X3NhbXBsZXMpKTsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorPHQ+CitUbyBhY2hpZXZlIGdvb2QgcXVhbGl0eSBpbiB0aGUgdmVyeSBmaXJzdCBzYW1wbGVz
IG9mIGEgc3RyZWFtLCBpbXBsZW1lbnRhdGlvbnMKKyBNQVkgdXNlIGxpbmVhciBwcmVkaWN0aXZl
IGNvZGluZyAoTFBDKSBleHRyYXBvbGF0aW9uIHRvIGdlbmVyYXRlIGF0IGxlYXN0IDEyMAorIGV4
dHJhIHNhbXBsZXMgYXQgdGhlIGJlZ2lubmluZyB0byBhdm9pZCB0aGUgT3B1cyBlbmNvZGVyIGhh
dmluZyB0byBlbmNvZGUgYQorIGRpc2NvbnRpbnVvdXMgc2lnbmFsLgorRm9yIG1vcmUgaW5mb3Jt
YXRpb24gb24gbGluZWFyIHByZWRpY3Rpb24sIHNlZQorIDx4cmVmIHRhcmdldD0ibGluZWFyLXBy
ZWRpY3Rpb24iLz4uCitGb3IgYW4gaW5wdXQgZmlsZSBjb250YWluaW5nICdsZW5ndGgnIHNhbXBs
ZXMsIHRoZSBpbXBsZW1lbnRhdGlvbiBTSE9VTEQgc2V0CisgdGhlIHByZS1za2lwIGhlYWRlciB2
YWx1ZSB0byAoZGVsYXlfc2FtcGxlcyZuYnNwOysmbmJzcDtleHRyYV9zYW1wbGVzKSwgZW5jb2Rl
CisgYXQgbGVhc3QgKGxlbmd0aCZuYnNwOysmbmJzcDtkZWxheV9zYW1wbGVzJm5ic3A7KyZuYnNw
O2V4dHJhX3NhbXBsZXMpCisgc2FtcGxlcywgYW5kIHNldCB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBv
ZiB0aGUgbGFzdCBwYWdlIHRvCisgKGxlbmd0aCZuYnNwOysmbmJzcDtkZWxheV9zYW1wbGVzJm5i
c3A7KyZuYnNwO2V4dHJhX3NhbXBsZXMpLgorVGhpcyBlbnN1cmVzIHRoYXQgdGhlIGVuY29kZWQg
ZmlsZSBoYXMgdGhlIHNhbWUgZHVyYXRpb24gYXMgdGhlIG9yaWdpbmFsLCB3aXRoCisgbm8gdGlt
ZSBvZmZzZXQuIFRoZSBiZXN0IHdheSB0byBwYWQgdGhlIGVuZCBvZiB0aGUgc3RyZWFtIGlzIHRv
IGFsc28gdXNlIExQQworIGV4dHJhcG9sYXRpb24sIGJ1dCB6ZXJvLXBhZGRpbmcgaXMgYWxzbyBh
Y2NlcHRhYmxlLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImxwYyIgdGl0bGU9IkxQQyBFeHRy
YXBvbGF0aW9uIj4KKzx0PgorVGhlIGZpcnN0IHN0ZXAgaW4gTFBDIGV4dHJhcG9sYXRpb24gaXMg
dG8gY29tcHV0ZSBsaW5lYXIgcHJlZGljdGlvbgorIGNvZWZmaWNpZW50cy4gPHhyZWYgdGFyZ2V0
PSJscGMtc2FtcGxlIi8+CitXaGVuIGV4dGVuZGluZyB0aGUgZW5kIG9mIHRoZSBzaWduYWwsIG9y
ZGVyLU4gKHR5cGljYWxseSB3aXRoIE4gcmFuZ2luZyBmcm9tIDgKKyB0byA0MCkgTFBDIGFuYWx5
c2lzIGlzIHBlcmZvcm1lZCBvbiBhIHdpbmRvdyBuZWFyIHRoZSBlbmQgb2YgdGhlIHNpZ25hbC4K
K1RoZSBsYXN0IE4gc2FtcGxlcyBhcmUgdXNlZCBhcyBtZW1vcnkgdG8gYW4gaW5maW5pdGUgaW1w
dWxzZSByZXNwb25zZSAoSUlSKQorIGZpbHRlci4KKzwvdD4KKzx0PgorVGhlIGZpbHRlciBpcyB0
aGVuIGFwcGxpZWQgb24gYSB6ZXJvIGlucHV0IHRvIGV4dHJhcG9sYXRlIHRoZSBlbmQgb2YgdGhl
IHNpZ25hbC4KK0xldCBhKGspIGJlIHRoZSBrdGggTFBDIGNvZWZmaWNpZW50IGFuZCB4KG4pIGJl
IHRoZSBudGggc2FtcGxlIG9mIHRoZSBzaWduYWwsCisgZWFjaCBuZXcgc2FtcGxlIHBhc3QgdGhl
IGVuZCBvZiB0aGUgc2lnbmFsIGlzIGNvbXB1dGVkIGFzOgorPC90PgorPGZpZ3VyZSBhbGlnbj0i
Y2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICBOCisg
ICAgICAgLS0tCit4KG4pID0gXCAgIGEoaykqeChuLWspCisgICAgICAgLworICAgICAgIC0tLQor
ICAgICAgIGs9MQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8dD4KK1RoZSBwcm9jZXNzIGlz
IHJlcGVhdGVkIGluZGVwZW5kZW50bHkgZm9yIGVhY2ggY2hhbm5lbC4KK0l0IGlzIHBvc3NpYmxl
IHRvIGV4dGVuZCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBzaWduYWwgYnkgYXBwbHlpbmcgdGhlIHNh
bWUKKyBwcm9jZXNzIGJhY2t3YXJkIGluIHRpbWUuCitXaGVuIGV4dGVuZGluZyB0aGUgYmVnaW5u
aW5nIG9mIHRoZSBzaWduYWwsIGl0IGlzIGJlc3QgdG8gYXBwbHkgYSAiZmFkZSBpbiIgdG8KKyB0
aGUgZXh0cmFwb2xhdGVkIHNpZ25hbCwgZS5nLiBieSBtdWx0aXBseWluZyBpdCBieSBhIGhhbGYt
SGFubmluZyB3aW5kb3cKKyA8eHJlZiB0YXJnZXQ9Imhhbm5pbmciLz4uCis8L3Q+CisKKzwvc2Vj
dGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJjb250aW51b3VzX2NoYWluaW5nIiB0aXRsZT0iQ29u
dGludW91cyBDaGFpbmluZyI+Cis8dD4KK0luIHNvbWUgYXBwbGljYXRpb25zLCBzdWNoIGFzIElu
dGVybmV0IHJhZGlvLCBpdCBpcyBkZXNpcmFibGUgdG8gY3V0IGEgbG9uZworIHN0cmVhbSBpbnRv
IHNtYWxsZXIgY2hhaW5zLCBlLmcuIHNvIHRoZSBjb21tZW50IGhlYWRlciBjYW4gYmUgdXBkYXRl
ZC4KK1RoaXMgY2FuIGJlIGRvbmUgc2ltcGx5IGJ5IHNlcGFyYXRpbmcgdGhlIGlucHV0IHN0cmVh
bXMgaW50byBzZWdtZW50cyBhbmQKKyBlbmNvZGluZyBlYWNoIHNlZ21lbnQgaW5kZXBlbmRlbnRs
eS4KK1RoZSBkcmF3YmFjayBvZiB0aGlzIGFwcHJvYWNoIGlzIHRoYXQgaXQgY3JlYXRlcyBhIHNt
YWxsIGRpc2NvbnRpbnVpdHkKKyBhdCB0aGUgYm91bmRhcnkgZHVlIHRvIHRoZSBsb3NzeSBuYXR1
cmUgb2YgT3B1cy4KK0EgbXV4ZXIgTUFZIGF2b2lkIHRoaXMgZGlzY29udGludWl0eSBieSB1c2lu
ZyB0aGUgZm9sbG93aW5nIHByb2NlZHVyZToKKzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0PkVu
Y29kZSB0aGUgbGFzdCBmcmFtZSBvZiB0aGUgZmlyc3Qgc2VnbWVudCBhcyBhbiBpbmRlcGVuZGVu
dCBmcmFtZSBieQorIHR1cm5pbmcgb2ZmIGFsbCBmb3JtcyBvZiBpbnRlci1mcmFtZSBwcmVkaWN0
aW9uLgorRGUtZW1waGFzaXMgaXMgYWxsb3dlZC48L3Q+Cis8dD5TZXQgdGhlIGdyYW51bGUgcG9z
aXRpb24gb2YgdGhlIGxhc3QgcGFnZSB0byBhIHBvaW50IG5lYXIgdGhlIGVuZCBvZiB0aGUKKyBs
YXN0IGZyYW1lLjwvdD4KKzx0PkJlZ2luIHRoZSBzZWNvbmQgc2VnbWVudCB3aXRoIGEgY29weSBv
ZiB0aGUgbGFzdCBmcmFtZSBvZiB0aGUgZmlyc3QKKyBzZWdtZW50LjwvdD4KKzx0PlNldCB0aGUg
cHJlLXNraXAgdmFsdWUgb2YgdGhlIHNlY29uZCBzdHJlYW0gaW4gc3VjaCBhIHdheSBhcyB0byBw
cm9wZXJseQorIGpvaW4gdGhlIHR3byBzdHJlYW1zLjwvdD4KKzx0PkNvbnRpbnVlIHRoZSBlbmNv
ZGluZyBwcm9jZXNzIG5vcm1hbGx5IGZyb20gdGhlcmUsIHdpdGhvdXQgYW55IHJlc2V0IHRvCisg
dGhlIGVuY29kZXIuPC90PgorPC9saXN0PgorPC90PgorPHQ+CitJbiBlbmNvZGVycyBkZXJpdmVk
IGZyb20gdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiwgaW50ZXItZnJhbWUgcHJlZGljdGlv
bgorIGNhbiBiZSB0dXJuZWQgb2ZmIGJ5IGNhbGxpbmc6Cis8L3Q+Cis8ZmlndXJlIGFsaWduPSJj
ZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgb3B1c19lbmNvZGVy
X2N0bChlbmNvZGVyX3N0YXRlLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKDEpKTsKK11d
PjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPHQ+CitGb3IgYmVzdCByZXN1bHRzLCB0aGlzIGltcGxl
bWVudGF0aW9uIHJlcXVpcmVzIHRoYXQgcHJlZGljdGlvbiBiZSBleHBsaWNpdGx5CisgZW5hYmxl
ZCBhZ2FpbiBiZWZvcmUgcmVzdW1pbmcgbm9ybWFsIGVuY29kaW5nLCBldmVuIGFmdGVyIGEgcmVz
ZXQuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9
ImltcGxlbWVudGF0aW9uIiB0aXRsZT0iSW1wbGVtZW50YXRpb24gU3RhdHVzIj4KKzx0PgorQSBi
cmllZiBzdW1tYXJ5IG9mIG1ham9yIGltcGxlbWVudGF0aW9ucyBvZiB0aGlzIGRyYWZ0IGlzIGF2
YWlsYWJsZQorIGF0IDxlcmVmIHRhcmdldD0iaHR0cHM6Ly93aWtpLnhpcGgub3JnL09nZ09wdXNJ
bXBsZW1lbnRhdGlvbiIvPiwKKyBhbG9uZyB3aXRoIHRoZWlyIHN0YXR1cy4KKzwvdD4KKzx0Pgor
W05vdGUgdG8gUkZDIEVkaXRvcjogcGxlYXNlIHJlbW92ZSB0aGlzIGVudGlyZSBzZWN0aW9uIGJl
Zm9yZQorIGZpbmFsIHB1YmxpY2F0aW9uIHBlciA8eHJlZiB0YXJnZXQ9IlJGQzY5ODIiLz4sIGFs
b25nIHdpdGgKKyBpdHMgcmVmZXJlbmNlcy5dCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9u
IGFuY2hvcj0ic2VjdXJpdHkiIHRpdGxlPSJTZWN1cml0eSBDb25zaWRlcmF0aW9ucyI+Cis8dD4K
K0ltcGxlbWVudGF0aW9ucyBvZiB0aGUgT3B1cyBjb2RlYyBuZWVkIHRvIHRha2UgYXBwcm9wcmlh
dGUgc2VjdXJpdHkKKyBjb25zaWRlcmF0aW9ucyBpbnRvIGFjY291bnQsIGFzIG91dGxpbmVkIGlu
IDx4cmVmIHRhcmdldD0iUkZDNDczMiIvPi4KK1RoaXMgaXMganVzdCBhcyBtdWNoIGEgcHJvYmxl
bSBmb3IgdGhlIGNvbnRhaW5lciBhcyBpdCBpcyBmb3IgdGhlIGNvZGVjIGl0c2VsZi4KK01hbGlj
aW91cyBwYXlsb2FkcyBhbmQvb3IgaW5wdXQgc3RyZWFtcyBjYW4gYmUgdXNlZCB0byBhdHRhY2sg
Y29kZWMKKyBpbXBsZW1lbnRhdGlvbnMuCitJbXBsZW1lbnRhdGlvbnMgTVVTVCBOT1Qgb3ZlcnJ1
biB0aGVpciBhbGxvY2F0ZWQgbWVtb3J5IG5vciBjb25zdW1lIGV4Y2Vzc2l2ZQorIHJlc291cmNl
cyB3aGVuIGRlY29kaW5nIHBheWxvYWRzIG9yIHByb2Nlc3NpbmcgaW5wdXQgc3RyZWFtcy4KK0Fs
dGhvdWdoIHByb2JsZW1zIGluIGVuY29kaW5nIGFwcGxpY2F0aW9ucyBhcmUgdHlwaWNhbGx5IHJh
cmVyLCB0aGlzIHN0aWxsCisgYXBwbGllcyB0byBhIG11eGVyLCBhcyB2dWxuZXJhYmlsaXRpZXMg
d291bGQgYWxsb3cgYW4gYXR0YWNrZXIgdG8gYXR0YWNrCisgdHJhbnNjb2RpbmcgZ2F0ZXdheXMu
Cis8L3Q+CisKKzx0PgorSGVhZGVyIHBhcnNpbmcgY29kZSBjb250YWlucyB0aGUgbW9zdCBsaWtl
bHkgYXJlYSBmb3IgcG90ZW50aWFsIG92ZXJydW5zLgorSXQgaXMgaW1wb3J0YW50IGZvciBpbXBs
ZW1lbnRhdGlvbnMgdG8gZW5zdXJlIHRoZWlyIGJ1ZmZlcnMgY29udGFpbiBlbm91Z2gKKyBkYXRh
IGZvciBhbGwgb2YgdGhlIHJlcXVpcmVkIGZpZWxkcyBiZWZvcmUgYXR0ZW1wdGluZyB0byByZWFk
IGl0IChmb3IgZXhhbXBsZSwKKyBmb3IgYWxsIG9mIHRoZSBjaGFubmVsIG1hcCBkYXRhIGluIHRo
ZSBJRCBoZWFkZXIpLgorSW1wbGVtZW50YXRpb25zIHdvdWxkIGRvIHdlbGwgdG8gdmFsaWRhdGUg
dGhlIGluZGljZXMgb2YgdGhlIGNoYW5uZWwgbWFwLCBhbHNvLAorIHRvIGVuc3VyZSB0aGV5IG1l
ZXQgYWxsIG9mIHRoZSByZXN0cmljdGlvbnMgb3V0bGluZWQgaW4KKyA8eHJlZiB0YXJnZXQ9ImNo
YW5uZWxfbWFwcGluZyIvPiwgaW4gb3JkZXIgdG8gYXZvaWQgYXR0ZW1wdGluZyB0byByZWFkIGRh
dGEKKyBmcm9tIGNoYW5uZWxzIHRoYXQgZG8gbm90IGV4aXN0LgorPC90PgorCis8dD4KK1RvIGF2
b2lkIGV4Y2Vzc2l2ZSByZXNvdXJjZSB1c2FnZSwgd2UgYWR2aXNlIGltcGxlbWVudGF0aW9ucyB0
byBiZSBlc3BlY2lhbGx5Cisgd2FyeSBvZiBzdHJlYW1zIHRoYXQgbWlnaHQgY2F1c2UgdGhlbSB0
byBwcm9jZXNzIGZhciBtb3JlIGRhdGEgdGhhbiB3YXMKKyBhY3R1YWxseSB0cmFuc21pdHRlZC4K
K0ZvciBleGFtcGxlLCBhIHJlbGF0aXZlbHkgc21hbGwgY29tbWVudCBoZWFkZXIgbWF5IGNvbnRh
aW4gdmFsdWVzIGZvciB0aGUKKyBzdHJpbmcgbGVuZ3RocyBvciB1c2VyIGNvbW1lbnQgbGlzdCBs
ZW5ndGggdGhhdCBpbXBseSB0aGF0IGl0IGlzIG1hbnkKKyBnaWdhYnl0ZXMgaW4gc2l6ZS4KK0V2
ZW4gY29tcHV0aW5nIHRoZSBzaXplIG9mIHRoZSByZXF1aXJlZCBidWZmZXIgY291bGQgb3ZlcmZs
b3cgYSAzMi1iaXQgaW50ZWdlciwKKyBhbmQgYWN0dWFsbHkgYXR0ZW1wdGluZyB0byBhbGxvY2F0
ZSBzdWNoIGEgYnVmZmVyIGJlZm9yZSB2ZXJpZnlpbmcgaXQgd291bGQgYmUKKyBhIHJlYXNvbmFi
bGUgc2l6ZSBpcyBhIGJhZCBpZGVhLgorQWZ0ZXIgcmVhZGluZyB0aGUgdXNlciBjb21tZW50IGxp
c3QgbGVuZ3RoLCBpbXBsZW1lbnRhdGlvbnMgbWlnaHQgd2lzaCB0bworIHZlcmlmeSB0aGF0IHRo
ZSBoZWFkZXIgY29udGFpbnMgYXQgbGVhc3QgdGhlIG1pbmltdW0gYW1vdW50IG9mIGRhdGEgZm9y
IHRoYXQKKyBtYW55IGNvbW1lbnRzICg0Jm5ic3A7YWRkaXRpb25hbCBvY3RldHMgcGVyIGNvbW1l
bnQsIHRvIGluZGljYXRlIGVhY2ggaGFzIGEKKyBsZW5ndGggb2YgemVybykgYmVmb3JlIHByb2Nl
ZWRpbmcgYW55IGZ1cnRoZXIsIGFnYWluIHRha2luZyBjYXJlIHRvIGF2b2lkCisgb3ZlcmZsb3cg
aW4gdGhlc2UgY2FsY3VsYXRpb25zLgorSWYgYWxsb2NhdGluZyBhbiBhcnJheSBvZiBwb2ludGVy
cyB0byBwb2ludCBhdCB0aGVzZSBzdHJpbmdzLCB0aGUgc2l6ZSBvZiB0aGUKKyBwb2ludGVycyBt
YXkgYmUgbGFyZ2VyIHRoYW4gNCZuYnNwO29jdGV0cywgcG90ZW50aWFsbHkgcmVxdWlyaW5nIGEg
c2VwYXJhdGUKKyBvdmVyZmxvdyBjaGVjay4KKzwvdD4KKworPHQ+CitBbm90aGVyIGJ1ZyBpbiB0
aGlzIGNsYXNzIHdlIGhhdmUgb2JzZXJ2ZWQgbW9yZSB0aGFuIG9uY2UgaW52b2x2ZXMgdGhlIGhh
bmRsaW5nCisgb2YgaW52YWxpZCBkYXRhIGF0IHRoZSBlbmQgb2YgYSBzdHJlYW0uCitPZnRlbiwg
aW1wbGVtZW50YXRpb25zIHdpbGwgc2VlayB0byB0aGUgZW5kIG9mIGEgc3RyZWFtIHRvIGxvY2F0
ZSB0aGUgbGFzdAorIHRpbWVzdGFtcCBpbiBvcmRlciB0byBjb21wdXRlIGl0cyB0b3RhbCBkdXJh
dGlvbi4KK0lmIHRoZXkgZG8gbm90IGZpbmQgYSB2YWxpZCBjYXB0dXJlIHBhdHRlcm4gYW5kIE9n
ZyBwYWdlIGZyb20gdGhlIGRlc2lyZWQKKyBsb2dpY2FsIHN0cmVhbSwgdGhleSB3aWxsIGJhY2sg
dXAgYW5kIHRyeSBhZ2Fpbi4KK0lmIGNhcmUgaXMgbm90IHRha2VuIHRvIGF2b2lkIHJlLXNjYW5u
aW5nIGRhdGEgdGhhdCB3YXMgYWxyZWFkeSBzY2FubmVkLCB0aGlzCisgc2VhcmNoIGNhbiBxdWlj
a2x5IGRldm9sdmUgaW50byBzb21ldGhpbmcgd2l0aCBhIGNvbXBsZXhpdHkgdGhhdCBpcyBxdWFk
cmF0aWMKKyBpbiB0aGUgYW1vdW50IG9mIGludmFsaWQgZGF0YS4KKzwvdD4KKworPHQ+CitJbiBn
ZW5lcmFsIHdoZW4gc2Vla2luZywgaW1wbGVtZW50YXRpb25zIHdpbGwgd2lzaCB0byBiZSBjYXV0
aW91cyBhYm91dCB0aGUKKyBlZmZlY3RzIG9mIGludmFsaWQgZ3JhbnVsZSBwb3NpdGlvbiB2YWx1
ZXMsIGFuZCBlbnN1cmUgYWxsIGFsZ29yaXRobXMgd2lsbAorIGNvbnRpbnVlIHRvIG1ha2UgcHJv
Z3Jlc3MgYW5kIGV2ZW50dWFsbHkgdGVybWluYXRlLCBldmVuIGlmIHRoZXNlIGFyZSBtaXNzaW5n
Cisgb3Igb3V0LW9mLW9yZGVyLgorPC90PgorCis8dD4KK0xpa2UgbW9zdCBvdGhlciBjb250YWlu
ZXIgZm9ybWF0cywgT2dnIE9wdXMgc3RyZWFtcyBTSE9VTEQgTk9UIGJlIHVzZWQgd2l0aAorIGlu
c2VjdXJlIGNpcGhlcnMgb3IgY2lwaGVyIG1vZGVzIHRoYXQgYXJlIHZ1bG5lcmFibGUgdG8ga25v
d24tcGxhaW50ZXh0CisgYXR0YWNrcy4KK0VsZW1lbnRzIHN1Y2ggYXMgdGhlIE9nZyBwYWdlIGNh
cHR1cmUgcGF0dGVybiBhbmQgdGhlIG1hZ2ljIHNpZ25hdHVyZXMgaW4gdGhlCisgSUQgaGVhZGVy
IGFuZCB0aGUgY29tbWVudCBoZWFkZXIgYWxsIGhhdmUgZWFzaWx5IHByZWRpY3RhYmxlIHZhbHVl
cywgaW4KKyBhZGRpdGlvbiB0byB2YXJpb3VzIGVsZW1lbnRzIG9mIHRoZSBjb2RlYyBkYXRhIGl0
c2VsZi4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJjb250ZW50X3R5cGUi
IHRpdGxlPSJDb250ZW50IFR5cGUiPgorPHQ+CitBbiAiT2dnIE9wdXMgZmlsZSIgY29uc2lzdHMg
b2Ygb25lIG9yIG1vcmUgc2VxdWVudGlhbGx5IG11bHRpcGxleGVkIHNlZ21lbnRzLAorIGVhY2gg
Y29udGFpbmluZyBleGFjdGx5IG9uZSBPZ2cgT3B1cyBzdHJlYW0uCitUaGUgUkVDT01NRU5ERUQg
bWltZS10eXBlIGZvciBPZ2cgT3B1cyBmaWxlcyBpcyAiYXVkaW8vb2dnIi4KKzwvdD4KKworPHQ+
CitJZiBtb3JlIHNwZWNpZmljaXR5IGlzIGRlc2lyZWQsIG9uZSBNQVkgaW5kaWNhdGUgdGhlIHBy
ZXNlbmNlIG9mIE9wdXMgc3RyZWFtcworIHVzaW5nIHRoZSBjb2RlY3MgcGFyYW1ldGVyIGRlZmlu
ZWQgaW4gPHhyZWYgdGFyZ2V0PSJSRkM2MzgxIi8+IGFuZAorIDx4cmVmIHRhcmdldD0iUkZDNTMz
NCIvPiwgZS5nLiwKKzwvdD4KKzxmaWd1cmU+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKKyAgICBhdWRpby9vZ2c7IGNvZGVjcz1vcHVzCitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KKzx0PgorIGZvciBhbiBPZ2cgT3B1cyBmaWxlLgorPC90PgorCis8dD4KK1RoZSBSRUNPTU1F
TkRFRCBmaWxlbmFtZSBleHRlbnNpb24gZm9yIE9nZyBPcHVzIGZpbGVzIGlzICcub3B1cycuCis8
L3Q+CisKKzx0PgorV2hlbiBPcHVzIGlzIGNvbmN1cnJlbnRseSBtdWx0aXBsZXhlZCB3aXRoIG90
aGVyIHN0cmVhbXMgaW4gYW4gT2dnIGNvbnRhaW5lciwKKyBvbmUgU0hPVUxEIHVzZSBvbmUgb2Yg
dGhlICJhdWRpby9vZ2ciLCAidmlkZW8vb2dnIiwgb3IgImFwcGxpY2F0aW9uL29nZyIKKyBtaW1l
LXR5cGVzLCBhcyBkZWZpbmVkIGluIDx4cmVmIHRhcmdldD0iUkZDNTMzNCIvPi4KK1N1Y2ggc3Ry
ZWFtcyBhcmUgbm90IHN0cmljdGx5ICJPZ2cgT3B1cyBmaWxlcyIgYXMgZGVzY3JpYmVkIGFib3Zl
LAorIHNpbmNlIHRoZXkgY29udGFpbiBtb3JlIHRoYW4gYSBzaW5nbGUgT3B1cyBzdHJlYW0gcGVy
IHNlcXVlbnRpYWxseQorIG11bHRpcGxleGVkIHNlZ21lbnQsIGUuZy4gdmlkZW8gb3IgbXVsdGlw
bGUgYXVkaW8gdHJhY2tzLgorSW4gc3VjaCBjYXNlcyB0aGUgdGhlICcub3B1cycgZmlsZW5hbWUg
ZXh0ZW5zaW9uIGlzIE5PVCBSRUNPTU1FTkRFRC4KKzwvdD4KKworPHQ+CitJbiBlaXRoZXIgY2Fz
ZSwgdGhpcyBkb2N1bWVudCB1cGRhdGVzIDx4cmVmIHRhcmdldD0iUkZDNTMzNCIvPgorIHRvIGFk
ZCAnb3B1cycgYXMgYSBjb2RlY3MgcGFyYW1ldGVyIHZhbHVlIHdpdGggY2hhcls4XTogJ09wdXNI
ZWFkJworIGFzIENvZGVjIElkZW50aWZpZXIuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9u
IGFuY2hvcj0iaWFuYSIgdGl0bGU9IklBTkEgQ29uc2lkZXJhdGlvbnMiPgorPHQ+CitUaGlzIGRv
Y3VtZW50IHVwZGF0ZXMgdGhlIElBTkEgTWVkaWEgVHlwZXMgcmVnaXN0cnkgdG8gYWRkIC5vcHVz
CisgYXMgYSBmaWxlIGV4dGVuc2lvbiBmb3IgImF1ZGlvL29nZyIsIGFuZCB0byBhZGQgaXRzZWxm
IGFzIGEgcmVmZXJlbmNlCisgYWxvbmdzaWRlIDx4cmVmIHRhcmdldD0iUkZDNTMzNCIvPiBmb3Ig
ImF1ZGlvL29nZyIsICJ2aWRlby9vZ2ciLCBhbmQKKyAiYXBwbGljYXRpb24vb2dnIiBNZWRpYSBU
eXBlcy4KKzwvdD4KKzx0PgorVGhpcyBkb2N1bWVudCBkZWZpbmVzIGEgbmV3IHJlZ2lzdHJ5ICJP
cHVzIENoYW5uZWwgTWFwcGluZyBGYW1pbGllcyIgdG8KKyBpbmRpY2F0ZSBob3cgdGhlIHNlbWFu
dGljIG1lYW5pbmdzIG9mIHRoZSBjaGFubmVscyBpbiBhIG11bHRpLWNoYW5uZWwgT3B1cworIHN0
cmVhbSBhcmUgZGVzY3JpYmVkLgorSUFOQSBpcyByZXF1ZXN0ZWQgdG8gY3JlYXRlIGEgbmV3IG5h
bWUgc3BhY2Ugb2YgIk9wdXMgQ2hhbm5lbCBNYXBwaW5nCisgRmFtaWxpZXMiLgorVGhpcyB3aWxs
IGJlIGEgbmV3IHJlZ2lzdHJ5IG9uIHRoZSBJQU5BIE1hdHJpeCwgYW5kIG5vdCBhIHN1YnJlZ2lz
dHJ5IG9mIGFuCisgZXhpc3RpbmcgcmVnaXN0cnkuCitNb2RpZmljYXRpb25zIHRvIHRoaXMgcmVn
aXN0cnkgZm9sbG93IHRoZSAiU3BlY2lmaWNhdGlvbiBSZXF1aXJlZCIgcmVnaXN0cmF0aW9uCisg
cG9saWN5IGFzIGRlZmluZWQgaW4gPHhyZWYgdGFyZ2V0PSJSRkM1MjI2Ii8+LgorRWFjaCByZWdp
c3RyeSBlbnRyeSBjb25zaXN0cyBvZiBhIENoYW5uZWwgTWFwcGluZyBGYW1pbHkgTnVtYmVyLCB3
aGljaCBpcworIHNwZWNpZmllZCBpbiBkZWNpbWFsIGluIHRoZSByYW5nZSAwIHRvIDI1NSwgaW5j
bHVzaXZlLCBhbmQgYSBSZWZlcmVuY2UgKG9yCisgbGlzdCBvZiByZWZlcmVuY2VzKQorRWFjaCBS
ZWZlcmVuY2UgbXVzdCBwb2ludCB0byBzdWZmaWNpZW50IGRvY3VtZW50YXRpb24gdG8gZGVzY3Jp
YmUgd2hhdAorIGluZm9ybWF0aW9uIGlzIGNvZGVkIGluIHRoZSBPcHVzIGlkZW50aWZpY2F0aW9u
IGhlYWRlciBmb3IgdGhpcyBjaGFubmVsCisgbWFwcGluZyBmYW1pbHksIGhvdyBhIGRlbXV4ZXIg
ZGV0ZXJtaW5lcyB0aGUgU3RyZWFtIENvdW50ICgnTicpIGFuZCBDb3VwbGVkCisgU3RyZWFtIENv
dW50ICgnTScpIGZyb20gdGhpcyBpbmZvcm1hdGlvbiwgYW5kIGhvdyBpdCBkZXRlcm1pbmVzIHRo
ZSBwcm9wZXIKKyBpbnRlcnByZXRhdGlvbiBvZiBlYWNoIG9mIHRoZSBkZWNvZGVkIGNoYW5uZWxz
LgorPC90PgorPHQ+CitUaGlzIGRvY3VtZW50IGRlZmluZXMgdGhyZWUgaW5pdGlhbCBhc3NpZ25t
ZW50cyBmb3IgdGhpcyByZWdpc3RyeS4KKzwvdD4KKzx0ZXh0dGFibGU+Cis8dHRjb2w+VmFsdWU8
L3R0Y29sPjx0dGNvbD5SZWZlcmVuY2U8L3R0Y29sPgorPGM+MDwvYz48Yz5bUkZDWFhYWF0gPHhy
ZWYgdGFyZ2V0PSJjaGFubmVsX21hcHBpbmdfMCIvPjwvYz4KKzxjPjE8L2M+PGM+W1JGQ1hYWFhd
IDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nXzEiLz48L2M+Cis8Yz4yNTU8L2M+PGM+W1JG
Q1hYWFhdIDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nXzI1NSIvPjwvYz4KKzwvdGV4dHRh
YmxlPgorPHQ+CitUaGUgZGVzaWduYXRlZCBleHBlcnQgd2lsbCBkZXRlcm1pbmUgaWYgdGhlIFJl
ZmVyZW5jZSBwb2ludHMgdG8gYSBzcGVjaWZpY2F0aW9uCisgdGhhdCBtZWV0cyB0aGUgcmVxdWly
ZW1lbnRzIGZvciBwZXJtYW5lbmNlIGFuZCByZWFkeSBhdmFpbGFiaWxpdHkgbGFpZCBvdXQKKyBp
biZuYnNwOzx4cmVmIHRhcmdldD0iUkZDNTIyNiIvPiBhbmQgdGhhdCBpdCBzcGVjaWZpZXMgdGhl
IGluZm9ybWF0aW9uCisgZGVzY3JpYmVkIGFib3ZlIHdpdGggc3VmZmljaWVudCBjbGFyaXR5IHRv
IGFsbG93IGludGVyb3BlcmFibGUKKyBpbXBsZW1lbnRhdGlvbnMuCis8L3Q+Cis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0iQWNrbm93bGVkZ21lbnRzIiB0aXRsZT0iQWNrbm93bGVkZ21l
bnRzIj4KKzx0PgorVGhhbmtzIHRvIEJlbiBDYW1wYmVsbCwgSm9lbCBNLiBIYWxwZXJuLCBNYXJr
IEhhcnJpcywgR3JlZyBNYXh3ZWxsLAorIENocmlzdG9waGVyICJNb250eSIgTW9udGdvbWVyeSwg
SmVhbi1NYXJjIFZhbGluLCBTdGVwaGFuIFdlbmdlciwgYW5kIE1vIFphbmF0eQorIGZvciB0aGVp
ciB2YWx1YWJsZSBjb250cmlidXRpb25zIHRvIHRoaXMgZG9jdW1lbnQuCitBZGRpdGlvbmFsIHRo
YW5rcyB0byBBbmRyZXcgRCdBZGRlc2lvLCBHcmVnIE1heHdlbGwsIGFuZCBWaW5jZW50IFBlbnF1
ZXJjJ2ggZm9yCisgdGhlaXIgZmVlZGJhY2sgYmFzZWQgb24gZWFybHkgaW1wbGVtZW50YXRpb25z
LgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iUkZDIEVkaXRvciBOb3RlcyI+
Cis8dD4KK0luJm5ic3A7PHhyZWYgdGFyZ2V0PSJpYW5hIi8+LCAiUkZDWFhYWCIgaXMgdG8gYmUg
cmVwbGFjZWQgd2l0aCB0aGUgUkZDIG51bWJlcgorIGFzc2lnbmVkIHRvIHRoaXMgZHJhZnQuCis8
L3Q+Cis8L3NlY3Rpb24+CisKKzwvbWlkZGxlPgorPGJhY2s+Cis8cmVmZXJlbmNlcyB0aXRsZT0i
Tm9ybWF0aXZlIFJlZmVyZW5jZXMiPgorICZyZmMyMTE5OworICZyZmMzNTMzOworICZyZmMzNjI5
OworICZyZmM1MjI2OworICZyZmM1MzM0OworICZyZmM2MzgxOworICZyZmM2NzE2OworCis8cmVm
ZXJlbmNlIGFuY2hvcj0iRUJVLVIxMjgiIHRhcmdldD0iaHR0cHM6Ly90ZWNoLmVidS5jaC9sb3Vk
bmVzcyI+Cis8ZnJvbnQ+CisgIDx0aXRsZT5Mb3VkbmVzcyBSZWNvbW1lbmRhdGlvbiBFQlUgUjEy
ODwvdGl0bGU+CisgIDxhdXRob3I+CisgICAgPG9yZ2FuaXphdGlvbj5FQlUgVGVjaG5pY2FsIENv
bW1pdHRlZTwvb3JnYW5pemF0aW9uPgorICA8L2F1dGhvcj4KKyAgPGRhdGUgbW9udGg9IkF1Z3Vz
dCIgeWVhcj0iMjAxMSIvPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFu
Y2hvcj0idm9yYmlzLWNvbW1lbnQiCisgdGFyZ2V0PSJodHRwczovL3d3dy54aXBoLm9yZy92b3Ji
aXMvZG9jL3YtY29tbWVudC5odG1sIj4KKzxmcm9udD4KKzx0aXRsZT5PZ2cgVm9yYmlzIEkgRm9y
bWF0IFNwZWNpZmljYXRpb246IENvbW1lbnQgRmllbGQgYW5kIEhlYWRlcgorIFNwZWNpZmljYXRp
b248L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0iQy4iIHN1cm5hbWU9Ik1vbnRnb21lcnkiCisg
ZnVsbG5hbWU9IkNocmlzdG9waGVyICZxdW90O01vbnR5JnF1b3Q7IE1vbnRnb21lcnkiLz4KKzxk
YXRlIG1vbnRoPSJKdWx5IiB5ZWFyPSIyMDAyIi8+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisK
KzwvcmVmZXJlbmNlcz4KKworPHJlZmVyZW5jZXMgdGl0bGU9IkluZm9ybWF0aXZlIFJlZmVyZW5j
ZXMiPgorCis8IS0tP3JmYyBpbmNsdWRlPSJodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMv
cmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjM1NTAueG1sIj8tLT4KKyAmcmZjNDczMjsKKyAmcmZj
Njk4MjsKKyAmcmZjNzU4NzsKKworPHJlZmVyZW5jZSBhbmNob3I9ImZsYWMiCisgdGFyZ2V0PSJo
dHRwczovL3hpcGgub3JnL2ZsYWMvZm9ybWF0Lmh0bWwiPgorICA8ZnJvbnQ+CisgICAgPHRpdGxl
PkZMQUMgLSBGcmVlIExvc3NsZXNzIEF1ZGlvIENvZGVjIEZvcm1hdCBEZXNjcmlwdGlvbjwvdGl0
bGU+CisgICAgPGF1dGhvciBpbml0aWFscz0iSi4iIHN1cm5hbWU9IkNvYWxzb24iIGZ1bGxuYW1l
PSJKb3NoIENvYWxzb24iLz4KKyAgICA8ZGF0ZSBtb250aD0iSmFudWFyeSIgeWVhcj0iMjAwOCIv
PgorICA8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJoYW5uaW5n
IgorIHRhcmdldD0iaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3cvaW5kZXgucGhwP3RpdGxlPVdp
bmRvd19mdW5jdGlvbiZhbXA7b2xkaWQ9NzAzMDc0NDY3I0hhbm5fLjI4SGFubmluZy4yOV93aW5k
b3ciPgorICA8ZnJvbnQ+CisgICAgPHRpdGxlPkhhbm4gd2luZG93PC90aXRsZT4KKyAgICA8YXV0
aG9yPgorICAgICAgPG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlvbj4KKyAgICA8
L2F1dGhvcj4KKyAgICA8ZGF0ZSBtb250aD0iRmVicnVhcnkiIHllYXI9IjIwMTYiLz4KKyAgPC9m
cm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0ibGluZWFyLXByZWRpY3Rp
b24iCisgdGFyZ2V0PSJodHRwczovL2VuLndpa2lwZWRpYS5vcmcvdy9pbmRleC5waHA/dGl0bGU9
TGluZWFyX3ByZWRpY3RpdmVfY29kaW5nJmFtcDtvbGRpZD02ODc0OTg5NjIiPgorICA8ZnJvbnQ+
CisgICAgPHRpdGxlPkxpbmVhciBQcmVkaWN0aXZlIENvZGluZzwvdGl0bGU+CisgICAgPGF1dGhv
cj4KKyAgICAgIDxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+CisgICAgPC9h
dXRob3I+CisgICAgPGRhdGUgbW9udGg9Ik9jdG9iZXIiIHllYXI9IjIwMTUiLz4KKyAgPC9mcm9u
dD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0ibHBjLXNhbXBsZSIKKyAgdGFy
Z2V0PSJodHRwczovL3N2bi54aXBoLm9yZy90cnVuay92b3JiaXMvbGliL2xwYy5jIj4KKzxmcm9u
dD4KKyAgPHRpdGxlPkF1dG9jb3JyZWxhdGlvbiBMUEMgY29lZmYgZ2VuZXJhdGlvbiBhbGdvcml0
aG0KKyAgICAoVm9yYmlzIHNvdXJjZSBjb2RlKTwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSJK
LiIgc3VybmFtZT0iRGVnZW5lciIgZnVsbG5hbWU9Ikp1dHRhIERlZ2VuZXIiLz4KKzxhdXRob3Ig
aW5pdGlhbHM9IkMuIiBzdXJuYW1lPSJCb3JtYW5uIiBmdWxsbmFtZT0iQ2Fyc3RlbiBCb3JtYW5u
Ii8+Cis8ZGF0ZSBtb250aD0iTm92ZW1iZXIiIHllYXI9IjE5OTQiLz4KKzwvZnJvbnQ+Cis8L3Jl
ZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9InEtbm90YXRpb24iCisgdGFyZ2V0PSJodHRw
czovL2VuLndpa2lwZWRpYS5vcmcvdy9pbmRleC5waHA/dGl0bGU9UV8lMjhudW1iZXJfZm9ybWF0
JTI5JmFtcDtvbGRpZD02OTcyNTI2MTUiPgorPGZyb250PgorPHRpdGxlPlEgKG51bWJlciBmb3Jt
YXQpPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlv
bj48L2F1dGhvcj4KKzxkYXRlIG1vbnRoPSJEZWNlbWJlciIgeWVhcj0iMjAxNSIvPgorPC9mcm9u
dD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0icmVwbGF5LWdhaW4iCisgdGFy
Z2V0PSJodHRwczovL3dpa2kueGlwaC5vcmcvVm9yYmlzQ29tbWVudCNSZXBsYXlfR2FpbiI+Cis8
ZnJvbnQ+Cis8dGl0bGU+Vm9yYmlzQ29tbWVudDogUmVwbGF5IEdhaW48L3RpdGxlPgorPGF1dGhv
ciBpbml0aWFscz0iQy4iIHN1cm5hbWU9IlBhcmtlciIgZnVsbG5hbWU9IkNvbnJhZCBQYXJrZXIi
Lz4KKzxhdXRob3IgaW5pdGlhbHM9Ik0uIiBzdXJuYW1lPSJMZWVzZSIgZnVsbG5hbWU9Ik1hcnRp
biBMZWVzZSIvPgorPGRhdGUgbW9udGg9Ikp1bmUiIHllYXI9IjIwMDkiLz4KKzwvZnJvbnQ+Cis8
L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9InNlZWtpbmciCisgdGFyZ2V0PSJodHRw
czovL3dpa2kueGlwaC5vcmcvU2Vla2luZyI+Cis8ZnJvbnQ+Cis8dGl0bGU+R3JhbnVsZXBvcyBF
bmNvZGluZyBhbmQgSG93IFNlZWtpbmcgUmVhbGx5IFdvcmtzPC90aXRsZT4KKzxhdXRob3IgaW5p
dGlhbHM9IlMuIiBzdXJuYW1lPSJQZmVpZmZlciIgZnVsbG5hbWU9IlNpbHZpYSBQZmVpZmZlciIv
PgorPGF1dGhvciBpbml0aWFscz0iQy4iIHN1cm5hbWU9IlBhcmtlciIgZnVsbG5hbWU9IkNvbnJh
ZCBQYXJrZXIiLz4KKzxhdXRob3IgaW5pdGlhbHM9IkcuIiBzdXJuYW1lPSJNYXh3ZWxsIiBmdWxs
bmFtZT0iR3JlZyBNYXh3ZWxsIi8+Cis8ZGF0ZSBtb250aD0iTWF5IiB5ZWFyPSIyMDEyIi8+Cis8
L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJ2b3JiaXMtbWFwcGlu
ZyIKKyB0YXJnZXQ9Imh0dHBzOi8vd3d3LnhpcGgub3JnL3ZvcmJpcy9kb2MvVm9yYmlzX0lfc3Bl
Yy5odG1sI3gxLTgxMDAwNC4zLjkiPgorPGZyb250PgorPHRpdGxlPlRoZSBWb3JiaXMgSSBTcGVj
aWZpY2F0aW9uLCBTZWN0aW9uIDQuMy45IE91dHB1dCBDaGFubmVsIE9yZGVyPC90aXRsZT4KKzxh
dXRob3IgaW5pdGlhbHM9IkMuIiBzdXJuYW1lPSJNb250Z29tZXJ5IgorIGZ1bGxuYW1lPSJDaHJp
c3RvcGhlciAmcXVvdDtNb250eSZxdW90OyBNb250Z29tZXJ5Ii8+Cis8ZGF0ZSBtb250aD0iSmFu
dWFyeSIgeWVhcj0iMjAxMCIvPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNl
IGFuY2hvcj0idm9yYmlzLXRyaW0iCisgdGFyZ2V0PSJodHRwczovL3hpcGgub3JnL3ZvcmJpcy9k
b2MvVm9yYmlzX0lfc3BlYy5odG1sI3gxLTEzMjAwMEEuMiI+CisgIDxmcm9udD4KKyAgICA8dGl0
bGU+VGhlIFZvcmJpcyBJIFNwZWNpZmljYXRpb24sIEFwcGVuZGl4Jm5ic3A7QTogRW1iZWRkaW5n
IFZvcmJpcworICAgICAgaW50byBhbiBPZ2cgc3RyZWFtPC90aXRsZT4KKyAgICA8YXV0aG9yIGlu
aXRpYWxzPSJDLiIgc3VybmFtZT0iTW9udGdvbWVyeSIKKyAgICAgZnVsbG5hbWU9IkNocmlzdG9w
aGVyICZxdW90O01vbnR5JnF1b3Q7IE1vbnRnb21lcnkiLz4KKyAgICA8ZGF0ZSBtb250aD0iTm92
ZW1iZXIiIHllYXI9IjIwMDgiLz4KKyAgPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJl
bmNlIGFuY2hvcj0id2F2ZS1tdWx0aWNoYW5uZWwiCisgdGFyZ2V0PSJodHRwOi8vbXNkbi5taWNy
b3NvZnQuY29tL2VuLXVzL3dpbmRvd3MvaGFyZHdhcmUvZ2c0NjMwMDYuYXNweCI+CisgIDxmcm9u
dD4KKyAgICA8dGl0bGU+TXVsdGlwbGUgQ2hhbm5lbCBBdWRpbyBEYXRhIGFuZCBXQVZFIEZpbGVz
PC90aXRsZT4KKyAgICA8YXV0aG9yPgorICAgICAgPG9yZ2FuaXphdGlvbj5NaWNyb3NvZnQgQ29y
cG9yYXRpb248L29yZ2FuaXphdGlvbj4KKyAgICA8L2F1dGhvcj4KKyAgICA8ZGF0ZSBtb250aD0i
TWFyY2giIHllYXI9IjIwMDciLz4KKyAgPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8L3JlZmVy
ZW5jZXM+CisKKzwvYmFjaz4KKzwvcmZjPgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2Rl
Yy1vcHVzLXVwZGF0ZS54bWwgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2RvYy9kcmFmdC1pZXRmLWNvZGVjLW9wdXMtdXBkYXRlLnhtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi42ZTUyYTE2NjhkOTA1OTc4MTVmY2E3YTlkYmVmMzhiODg5NmM1MzYyCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLXVwZGF0ZS54bWwKQEAgLTAs
MCArMSw1MTkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVTLUFTQ0lJIj8+Cis8
IURPQ1RZUEUgcmZjIFNZU1RFTSAicmZjMjYyOS5kdGQiPgorPD9yZmMgdG9jPSJ5ZXMiPz4KKzw/
cmZjIHRvY29tcGFjdD0ieWVzIj8+Cis8P3JmYyB0b2NkZXB0aD0iMyI/PgorPD9yZmMgdG9jaW5k
ZW50PSJ5ZXMiPz4KKzw/cmZjIHN5bXJlZnM9InllcyI/PgorPD9yZmMgc29ydHJlZnM9InllcyI/
PgorPD9yZmMgY29tbWVudHM9InllcyI/PgorPD9yZmMgaW5saW5lPSJ5ZXMiPz4KKzw/cmZjIGNv
bXBhY3Q9InllcyI/PgorPD9yZmMgc3ViY29tcGFjdD0ibm8iPz4KKzxyZmMgY2F0ZWdvcnk9InN0
ZCIgZG9jTmFtZT0iZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLXVwZGF0ZS0wOCIKKyAgICAgaXByPSJ0
cnVzdDIwMDkwMiIgdXBkYXRlcz0iNjcxNiI+CisgIDxmcm9udD4KKyAgICA8dGl0bGUgYWJicmV2
PSJPcHVzIFVwZGF0ZSI+VXBkYXRlcyB0byB0aGUgT3B1cyBBdWRpbyBDb2RlYzwvdGl0bGU+CisK
KzxhdXRob3IgaW5pdGlhbHM9IkpNIiBzdXJuYW1lPSJWYWxpbiIgZnVsbG5hbWU9IkplYW4tTWFy
YyBWYWxpbiI+Cis8b3JnYW5pemF0aW9uPk1vemlsbGEgQ29ycG9yYXRpb248L29yZ2FuaXphdGlv
bj4KKzxhZGRyZXNzPgorPHBvc3RhbD4KKzxzdHJlZXQ+MzMxIEUuIEV2ZWx5biBBdmVudWU8L3N0
cmVldD4KKzxjaXR5Pk1vdW50YWluIFZpZXc8L2NpdHk+Cis8cmVnaW9uPkNBPC9yZWdpb24+Cis8
Y29kZT45NDA0MTwvY29kZT4KKzxjb3VudHJ5PlVTQTwvY291bnRyeT4KKzwvcG9zdGFsPgorPHBo
b25lPisxIDY1MCA5MDMtMDgwMDwvcGhvbmU+Cis8ZW1haWw+am12YWxpbkBqbXZhbGluLmNhPC9l
bWFpbD4KKzwvYWRkcmVzcz4KKzwvYXV0aG9yPgorCis8YXV0aG9yIGluaXRpYWxzPSJLLiIgc3Vy
bmFtZT0iVm9zIiBmdWxsbmFtZT0iS29lbiBWb3MiPgorPG9yZ2FuaXphdGlvbj52b2NUb25lPC9v
cmdhbml6YXRpb24+Cis8YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3RyZWV0Pjwvc3RyZWV0PgorPGNp
dHk+PC9jaXR5PgorPHJlZ2lvbj48L3JlZ2lvbj4KKzxjb2RlPjwvY29kZT4KKzxjb3VudHJ5Pjwv
Y291bnRyeT4KKzwvcG9zdGFsPgorPHBob25lPjwvcGhvbmU+Cis8ZW1haWw+a29lbnZvczc0QGdt
YWlsLmNvbTwvZW1haWw+Cis8L2FkZHJlc3M+Cis8L2F1dGhvcj4KKworCisKKyAgICA8ZGF0ZSBk
YXk9IjI2IiBtb250aD0iSnVseSIgeWVhcj0iMjAxNyIgLz4KKworICAgIDxhYnN0cmFjdD4KKyAg
ICAgIDx0PlRoaXMgZG9jdW1lbnQgYWRkcmVzc2VzIG1pbm9yIGlzc3VlcyB0aGF0IHdlcmUgZm91
bmQgaW4gdGhlIHNwZWNpZmljYXRpb24KKyAgICAgIG9mIHRoZSBPcHVzIGF1ZGlvIGNvZGVjIGlu
IFJGQyA2NzE2LjwvdD4KKyAgICA8L2Fic3RyYWN0PgorICA8L2Zyb250PgorCisgIDxtaWRkbGU+
CisgICAgPHNlY3Rpb24gdGl0bGU9IkludHJvZHVjdGlvbiI+CisgICAgICA8dD5UaGlzIGRvY3Vt
ZW50IGFkZHJlc3NlcyBtaW5vciBpc3N1ZXMgdGhhdCB3ZXJlIGRpc2NvdmVyZWQgaW4gdGhlIHJl
ZmVyZW5jZQorICAgICAgaW1wbGVtZW50YXRpb24gb2YgdGhlIE9wdXMgY29kZWMuIFVubGlrZSBt
b3N0IElFVEYgc3BlY2lmaWNhdGlvbnMsIE9wdXMgaXMgZGVmaW5lZAorICAgICAgaW4gPHhyZWYg
dGFyZ2V0PSJSRkM2NzE2Ij5SRkMgNjcxNjwveHJlZj4gaW4gdGVybXMgb2YgYSBub3JtYXRpdmUg
cmVmZXJlbmNlCisgICAgICBkZWNvZGVyIGltcGxlbWVudGF0aW9uIHJhdGhlciB0aGFuIGZyb20g
dGhlIGFzc29jaWF0ZWQgdGV4dCBkZXNjcmlwdGlvbi4KKyAgICAgIFRoYXQgUkZDIGluY2x1ZGVz
IHRoZSByZWZlcmVuY2UgZGVjb2RlciBpbXBsZW1lbnRhdGlvbiBhcyBBcHBlbmRpeCBBLgorICAg
ICAgVGhhdCdzIHdoeSBvbmx5IGlzc3VlcyBhZmZlY3RpbmcgdGhlIGRlY29kZXIgYXJlCisgICAg
ICBsaXN0ZWQgaGVyZS4gQW4gdXAtdG8tZGF0ZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgT3B1cyBl
bmNvZGVyIGNhbiBiZSBmb3VuZCBhdAorICAgICAgPGVyZWYgdGFyZ2V0PSJodHRwczovL29wdXMt
Y29kZWMub3JnLyIvPi48L3Q+CisgICAgPHQ+CisgICAgICBTb21lIG9mIHRoZSBjaGFuZ2VzIGlu
IHRoaXMgZG9jdW1lbnQgdXBkYXRlIG5vcm1hdGl2ZSBiZWhhdmlvdXIgaW4gYSB3YXkgdGhhdCBy
ZXF1aXJlcworICAgICAgbmV3IHRlc3QgdmVjdG9ycy4gVGhlIEVuZ2xpc2ggdGV4dCBvZiB0aGUg
c3BlY2lmaWNhdGlvbiBpcyB1bmFmZmVjdGVkLCBvbmx5CisgICAgICB0aGUgQyBpbXBsZW1lbnRh
dGlvbiBpcy4gVGhlIHVwZGF0ZWQgc3BlY2lmaWNhdGlvbiByZW1haW5zIGZ1bGx5IGNvbXBhdGli
bGUgd2l0aAorICAgICAgdGhlIG9yaWdpbmFsIHNwZWNpZmljYXRpb24uCisgICAgPC90PgorCisg
ICAgPHQ+CisgICAgTm90ZTogZHVlIHRvIFJGQyBmb3JtYXR0aW5nIGNvbnZlbnRpb25zLCBsaW5l
cyBleGNlZWRpbmcgdGhlIGNvbHVtbiB3aWR0aAorICAgIGluIHRoZSBwYXRjaCBhcmUgc3BsaXQg
dXNpbmcgYSBiYWNrc2xhc2ggY2hhcmFjdGVyLiBUaGUgYmFja3NsYXNoZXMKKyAgICBhdCB0aGUg
ZW5kIG9mIGEgbGluZSBhbmQgdGhlIHdoaXRlIHNwYWNlIGF0IHRoZSBiZWdpbm5pbmcKKyAgICBv
ZiB0aGUgZm9sbG93aW5nIGxpbmUgYXJlIG5vdCBwYXJ0IG9mIHRoZSBwYXRjaC4gQSBwcm9wZXJs
eSBmb3JtYXR0ZWQgcGF0Y2gKKyAgICBpbmNsdWRpbmcgYWxsIGNoYW5nZXMgaXMgYXZhaWxhYmxl
IGF0CisgICAgPGVyZWYgdGFyZ2V0PSJodHRwczovL3d3dy5pZXRmLm9yZy9wcm9jZWVkaW5ncy85
OC9zbGlkZXMvbWF0ZXJpYWxzLTk4LWNvZGVjLW9wdXMtdXBkYXRlLTAwLnBhdGNoIi8+CisgICAg
YW5kIGhhcyBhIFNIQTEgMDI5ZTNhYTg4ZmMzNDJjOTFlNjdhMjFlN2JmYmM5NDU4NjYxY2Q1Zi4K
KyAgICA8L3Q+CisKKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0iVGVybWlu
b2xvZ3kiPgorICAgICAgPHQ+VGhlIGtleSB3b3JkcyAiTVVTVCIsICJNVVNUIE5PVCIsICJSRVFV
SVJFRCIsICJTSEFMTCIsICJTSEFMTCBOT1QiLAorICAgICAgIlNIT1VMRCIsICJTSE9VTEQgTk9U
IiwgIlJFQ09NTUVOREVEIiwgIk1BWSIsIGFuZCAiT1BUSU9OQUwiIGluIHRoaXMKKyAgICAgIGRv
Y3VtZW50IGFyZSB0byBiZSBpbnRlcnByZXRlZCBhcyBkZXNjcmliZWQgaW4gPHhyZWYKKyAgICAg
IHRhcmdldD0iUkZDMjExOSI+UkZDIDIxMTk8L3hyZWY+LjwvdD4KKyAgICA8L3NlY3Rpb24+CisK
KyAgICA8c2VjdGlvbiB0aXRsZT0iU3RlcmVvIFN0YXRlIFJlc2V0IGluIFNJTEsiPgorICAgICAg
PHQ+VGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCByZWluaXRpYWxpemUgdGhl
IHN0ZXJlbyBzdGF0ZQorICAgICAgZHVyaW5nIGEgbW9kZSBzd2l0Y2guIFRoZSBvbGQgc3RlcmVv
IG1lbW9yeSBjYW4gcHJvZHVjZSBhIGJyaWVmIGltcHVsc2UKKyAgICAgIChpLmUuIHNpbmdsZSBz
YW1wbGUpIGluIHRoZSBkZWNvZGVkIGF1ZGlvLiBUaGlzIGNhbiBiZSBmaXhlZCBieSBjaGFuZ2lu
ZworICAgICAgc2lsay9kZWNfQVBJLmMgYXQgbGluZSA3MjoKKyAgICA8L3Q+Cis8ZmlndXJlPgor
PGFydHdvcms+PCFbQ0RBVEFbCis8Q09ERSBCRUdJTlM+CisgICAgIGZvciggbiA9IDA7IG4gPCBE
RUNPREVSX05VTV9DSEFOTkVMUzsgbisrICkgeworICAgICAgICAgcmV0ICA9IHNpbGtfaW5pdF9k
ZWNvZGVyKCAmY2hhbm5lbF9zdGF0ZVsgbiBdICk7CisgICAgIH0KKysgICAgc2lsa19tZW1zZXQo
Jigoc2lsa19kZWNvZGVyICopZGVjU3RhdGUpLT5zU3RlcmVvLCAwLAorKyAgICAgICAgICAgICAg
ICBzaXplb2YoKChzaWxrX2RlY29kZXIgKilkZWNTdGF0ZSktPnNTdGVyZW8pKTsKKysgICAgLyog
Tm90IHN0cmljdGx5IG5lZWRlZCwgYnV0IGl0J3MgY2xlYW5lciB0aGF0IHdheSAqLworKyAgICAo
KHNpbGtfZGVjb2RlciAqKWRlY1N0YXRlKS0+cHJldl9kZWNvZGVfb25seV9taWRkbGUgPSAwOwor
IAorICAgICByZXR1cm4gcmV0OworIH0KKzxDT0RFIEVORFM+CitdXT48L2FydHdvcms+Cis8L2Zp
Z3VyZT4KKyAgICAgPHQ+CisgICAgIFRoaXMgY2hhbmdlIGFmZmVjdHMgdGhlIG5vcm1hdGl2ZSBv
dXRwdXQgb2YgdGhlIGRlY29kZXIsIGJ1dCB0aGUKKyAgICAgYW1vdW50IG9mIGNoYW5nZSBpcyB3
aXRoaW4gdGhlIHRvbGVyYW5jZSBhbmQgdG9vIHNtYWxsIHRvIG1ha2UgdGhlIHRlc3R2ZWN0b3Ig
Y2hlY2sgZmFpbC4KKyAgICAgIDwvdD4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiBh
bmNob3I9InBhZGRpbmciIHRpdGxlPSJQYXJzaW5nIG9mIHRoZSBPcHVzIFBhY2tldCBQYWRkaW5n
Ij4KKyAgICAgIDx0Pkl0IHdhcyBkaXNjb3ZlcmVkIHRoYXQgc29tZSBpbnZhbGlkIHBhY2tldHMg
b2YgdmVyeSBsYXJnZSBzaXplIGNvdWxkIHRyaWdnZXIKKyAgICAgIGFuIG91dC1vZi1ib3VuZHMg
cmVhZCBpbiB0aGUgT3B1cyBwYWNrZXQgcGFyc2luZyBjb2RlIHJlc3BvbnNpYmxlIGZvciBwYWRk
aW5nLgorICAgICAgVGhpcyBpcyBkdWUgdG8gYW4gaW50ZWdlciBvdmVyZmxvdyBpZiB0aGUgc2ln
bmFsZWQgcGFkZGluZyBleGNlZWRzIDJeMzEtMSBieXRlcworICAgICAgKHRoZSBhY3R1YWwgcGFj
a2V0IG1heSBiZSBzbWFsbGVyKS4gVGhlIGNvZGUgY2FuIGJlIGZpeGVkIGJ5IGFwcGx5aW5nIHRo
ZSBmb2xsb3dpbmcKKyAgICAgIGNoYW5nZXMgYXQgbGluZSA1OTYgb2Ygc3JjL29wdXNfZGVjb2Rl
ci5jOgorICAgIDwvdD4KKzxmaWd1cmU+Cis8YXJ0d29yaz48IVtDREFUQVsKKzxDT0RFIEJFR0lO
Uz4KKyAgICAgICAvKiBQYWRkaW5nIGZsYWcgaXMgYml0IDYgKi8KKyAgICAgICBpZiAoY2gmMHg0
MCkKKyAgICAgICB7CistICAgICAgICAgaW50IHBhZGRpbmc9MDsKKyAgICAgICAgICBpbnQgcDsK
KyAgICAgICAgICBkbyB7CisgICAgICAgICAgICAgaWYgKGxlbjw9MCkKKyAgICAgICAgICAgICAg
ICByZXR1cm4gT1BVU19JTlZBTElEX1BBQ0tFVDsKKyAgICAgICAgICAgICBwID0gKmRhdGErKzsK
KyAgICAgICAgICAgICBsZW4tLTsKKy0gICAgICAgICAgICBwYWRkaW5nICs9IHA9PTI1NSA/IDI1
NDogcDsKKysgICAgICAgICAgICBsZW4gLT0gcD09MjU1ID8gMjU0OiBwOworICAgICAgICAgIH0g
d2hpbGUgKHA9PTI1NSk7CistICAgICAgICAgbGVuIC09IHBhZGRpbmc7CisgICAgICAgfQorPENP
REUgRU5EUz4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorICAgICAgPHQ+VGhpcyBwYWNrZXQg
cGFyc2luZyBpc3N1ZSBpcyBsaW1pdGVkIHRvIHJlYWRpbmcgbWVtb3J5IHVwCisgICAgICAgICB0
byBhYm91dCA2MCBrQiBiZXlvbmQgdGhlIGNvbXByZXNzZWQgYnVmZmVyLiBUaGlzIGNhbiBvbmx5
IGJlIHRyaWdnZXJlZAorICAgICAgICAgYnkgYSBjb21wcmVzc2VkIHBhY2tldCBtb3JlIHRoYW4g
YWJvdXQgMTYgTUIgbG9uZywgc28gaXQncyBub3QgYSBwcm9ibGVtCisgICAgICAgICBmb3IgUlRQ
LiBJbiB0aGVvcnksIGl0IGNvdWxkIGNyYXNoIGEgZmlsZQorICAgICAgICAgZGVjb2RlciAoZS5n
LiBPcHVzIGluIE9nZykgaWYgdGhlIG1lbW9yeSBqdXN0IGFmdGVyIHRoZSBpbmNvbWluZyBwYWNr
ZXQKKyAgICAgICAgIGlzIG91dC1vZi1yYW5nZSwgYnV0IG91ciBhdHRlbXB0cyB0byB0cmlnZ2Vy
IHN1Y2ggYSBjcmFzaCBpbiBhIHByb2R1Y3Rpb24KKyAgICAgICAgIGFwcGxpY2F0aW9uIGJ1aWx0
IHVzaW5nIGFuIGFmZmVjdGVkIHZlcnNpb24gb2YgdGhlIE9wdXMgZGVjb2RlciBmYWlsZWQuPC90
PgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIGFuY2hvcj0icmVzYW1wbGVyIiB0aXRs
ZT0iUmVzYW1wbGVyIGJ1ZmZlciI+CisgICAgICA8dD5UaGUgU0lMSyByZXNhbXBsZXIgaGFkIHRo
ZSBmb2xsb3dpbmcgaXNzdWVzOgorICAgICAgICA8bGlzdCBzdHlsZT0ibnVtYmVycyI+CisgICAg
PHQ+VGhlIGNhbGxzIHRvIG1lbWNweSgpIHdlcmUgdXNpbmcgc2l6ZW9mKG9wdXNfaW50MzIpLCBi
dXQgdGhlIHR5cGUgb2YgdGhlCisgICAgICAgIGxvY2FsIGJ1ZmZlciB3YXMgb3B1c19pbnQxNi48
L3Q+CisgICAgPHQ+QmVjYXVzZSB0aGUgc2l6ZSB3YXMgd3JvbmcsIHRoaXMgcG90ZW50aWFsbHkg
YWxsb3dlZCB0aGUgc291cmNlCisgICAgICAgIGFuZCBkZXN0aW5hdGlvbiByZWdpb25zIG9mIHRo
ZSBtZW1jcHkoKSB0byBvdmVybGFwLgorICAgICAgICAgIFdlIGJlbGlldmUgdGhhdCBuU2FtcGxl
c0luIChudW1iZXIgb2YgaW5wdXQgc2FtcGxlcykgaXMgYXQgbGVhc3QgZnNfaW5fa2haIChzYW1w
bGluZyByYXRlIGluIGtIeiksCisgICAgICAgICAgd2hpY2ggaXMgYXQgbGVhc3QgOC4KKyAgICAg
ICBTaW5jZSBSRVNBTVBMRVJfT1JERVJfRklSXzEyIGlzIG9ubHkgOCwgdGhhdCBzaG91bGQgbm90
IGJlIGEgcHJvYmxlbSBvbmNlCisgICAgICAgdGhlIHR5cGUgc2l6ZSBpcyBmaXhlZC48L3Q+Cisg
ICAgICAgICAgPHQ+VGhlIHNpemUgb2YgdGhlIGJ1ZmZlciB1c2VkIFJFU0FNUExFUl9NQVhfQkFU
Q0hfU0laRV9JTiwgYnV0IHRoZQorICAgICAgICBkYXRhIHN0b3JlZCBpbiBpdCB3YXMgYWN0dWFs
bHkgdHdpY2UgdGhlIGlucHV0IGJhdGNoIHNpemUKKyAgICAgICAgKG5TYW1wbGVzSW4mbHQ7Jmx0
OzEpLjwvdD4KKyAgICAgIDwvbGlzdD48L3Q+CisgICAgICA8dD4KKyAgICAgIFRoZSBmYWN0IHRo
YXQgdGhlIGNvZGUgbmV2ZXIgcHJvZHVjZWQgYW55IGVycm9yIGluIHRlc3RpbmcgKGluY2x1ZGlu
ZyB3aGVuIHJ1biB1bmRlciB0aGUKKyAgICAgIFZhbGdyaW5kIG1lbW9yeSBkZWJ1Z2dlciksIHN1
Z2dlc3RzIHRoYXQgaW4gcHJhY3RpY2UKKyAgICAgdGhlIGJhdGNoIHNpemVzIGFyZSByZWFzb25h
YmxlIGVub3VnaCB0aGF0IG5vbmUgb2YgdGhlIGlzc3VlcyBhYm92ZQorICAgICB3YXMgZXZlciBh
IHByb2JsZW0uIEhvd2V2ZXIsIHRoZSBhdXRob3JzIGtub3cgb2Ygbm8gb2J2aW91cyBhcHByb2Fj
aCB0byBwcm92aW5nIHRoYXQuCisgICAgPC90PgorICAgIDx0PlRoZSBjb2RlIGNhbiBiZSBmaXhl
ZCBieSBhcHBseWluZyB0aGUgZm9sbG93aW5nIGNoYW5nZXMgdG8gbGluZSA3OCBvZiBzaWxrL3Jl
c2FtcGxlcl9wcml2YXRlX0lJUl9GSVIuYzoKKyAgICA8L3Q+Cis8ZmlndXJlPgorPGFydHdvcms+
PCFbQ0RBVEFbCis8Q09ERSBCRUdJTlM+CisgKQorIHsKKyAgICAgc2lsa19yZXNhbXBsZXJfc3Rh
dGVfc3RydWN0ICpTID0gXAorKHNpbGtfcmVzYW1wbGVyX3N0YXRlX3N0cnVjdCAqKVNTOworICAg
ICBvcHVzX2ludDMyIG5TYW1wbGVzSW47CisgICAgIG9wdXNfaW50MzIgbWF4X2luZGV4X1ExNiwg
aW5kZXhfaW5jcmVtZW50X1ExNjsKKy0gICAgb3B1c19pbnQxNiBidWZbIFJFU0FNUExFUl9NQVhf
QkFUQ0hfU0laRV9JTiArIFwKK1JFU0FNUExFUl9PUkRFUl9GSVJfMTIgXTsKKysgICAgb3B1c19p
bnQxNiBidWZbIDIqUkVTQU1QTEVSX01BWF9CQVRDSF9TSVpFX0lOICsgXAorUkVTQU1QTEVSX09S
REVSX0ZJUl8xMiBdOworIAorICAgICAvKiBDb3B5IGJ1ZmZlcmVkIHNhbXBsZXMgdG8gc3RhcnQg
b2YgYnVmZmVyICovCistICAgIHNpbGtfbWVtY3B5KCBidWYsIFMtPnNGSVIsIFJFU0FNUExFUl9P
UkRFUl9GSVJfMTIgXAorKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOworKyAgICBzaWxrX21lbWNw
eSggYnVmLCBTLT5zRklSLCBSRVNBTVBMRVJfT1JERVJfRklSXzEyIFwKKyogc2l6ZW9mKCBvcHVz
X2ludDE2ICkgKTsKKyAKKyAgICAgLyogSXRlcmF0ZSBvdmVyIGJsb2NrcyBvZiBmcmFtZVNpemVJ
biBpbnB1dCBzYW1wbGVzICovCisgICAgIGluZGV4X2luY3JlbWVudF9RMTYgPSBTLT5pbnZSYXRp
b19RMTY7CisgICAgIHdoaWxlKCAxICkgeworICAgICAgICAgblNhbXBsZXNJbiA9IHNpbGtfbWlu
KCBpbkxlbiwgUy0+YmF0Y2hTaXplICk7CisgCisgICAgICAgICAvKiBVcHNhbXBsZSAyeCAqLwor
ICAgICAgICAgc2lsa19yZXNhbXBsZXJfcHJpdmF0ZV91cDJfSFEoIFMtPnNJSVIsICZidWZbIFwK
K1JFU0FNUExFUl9PUkRFUl9GSVJfMTIgXSwgaW4sIG5TYW1wbGVzSW4gKTsKKyAKKyAgICAgICAg
IG1heF9pbmRleF9RMTYgPSBzaWxrX0xTSElGVDMyKCBuU2FtcGxlc0luLCAxNiArIDEgXAorKTsg
ICAgICAgICAvKiArIDEgYmVjYXVzZSAyeCB1cHNhbXBsaW5nICovCisgICAgICAgICBvdXQgPSBz
aWxrX3Jlc2FtcGxlcl9wcml2YXRlX0lJUl9GSVJfSU5URVJQT0woIG91dCwgXAorYnVmLCBtYXhf
aW5kZXhfUTE2LCBpbmRleF9pbmNyZW1lbnRfUTE2ICk7CisgICAgICAgICBpbiArPSBuU2FtcGxl
c0luOworICAgICAgICAgaW5MZW4gLT0gblNhbXBsZXNJbjsKKyAKKyAgICAgICAgIGlmKCBpbkxl
biA+IDAgKSB7CisgICAgICAgICAgICAgLyogTW9yZSBpdGVyYXRpb25zIHRvIGRvOyBjb3B5IGxh
c3QgcGFydCBvZiBcCitmaWx0ZXJlZCBzaWduYWwgdG8gYmVnaW5uaW5nIG9mIGJ1ZmZlciAqLwor
LSAgICAgICAgICAgIHNpbGtfbWVtY3B5KCBidWYsICZidWZbIG5TYW1wbGVzSW4gPDwgMSBdLCBc
CitSRVNBTVBMRVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKKysgICAg
ICAgICAgICBzaWxrX21lbW1vdmUoIGJ1ZiwgJmJ1ZlsgblNhbXBsZXNJbiA8PCAxIF0sIFwKK1JF
U0FNUExFUl9PUkRFUl9GSVJfMTIgKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOworICAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgIH0KKyAgICAgfQorIAorICAg
ICAvKiBDb3B5IGxhc3QgcGFydCBvZiBmaWx0ZXJlZCBzaWduYWwgdG8gdGhlIHN0YXRlIGZvciBc
Cit0aGUgbmV4dCBjYWxsICovCistICAgIHNpbGtfbWVtY3B5KCBTLT5zRklSLCAmYnVmWyBuU2Ft
cGxlc0luIDw8IDEgXSwgXAorUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19p
bnQzMiApICk7CisrICAgIHNpbGtfbWVtY3B5KCBTLT5zRklSLCAmYnVmWyBuU2FtcGxlc0luIDw8
IDEgXSwgXAorUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQxNiApICk7
CisgfQorPENPREUgRU5EUz4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorICAgIDwvc2VjdGlv
bj4KKworICAgIDxzZWN0aW9uIHRpdGxlPSJJbnRlZ2VyIHdyYXAtYXJvdW5kIGluIGludmVyc2Ug
Z2FpbiBjb21wdXRhdGlvbiI+CisgICAgICA8dD4KKyAgICAgICAgSXQgd2FzIGRpc2NvdmVyZWQg
dGhyb3VnaCBkZWNvZGVyIGZ1enppbmcgdGhhdCBzb21lIGJpdHN0cmVhbXMgY291bGQgcHJvZHVj
ZQorICAgICAgICBpbnRlZ2VyIHZhbHVlcyBleGNlZWRpbmcgMzItYml0cyBpbiBMUENfaW52ZXJz
ZV9wcmVkX2dhaW5fUUEoKSwgY2F1c2luZworICAgICAgICBhIHdyYXAtYXJvdW5kLiBBbHRob3Vn
aCB0aGUgZXJyb3IgaXMgaGFybWxlc3MgaW4gcHJhY3RpY2UsIHRoZSBDIHN0YW5kYXJkIGNvbnNp
ZGVycworICAgICAgICB0aGUgYmVoYXZpb3IgYXMgdW5kZWZpbmVkLCBzbyB0aGUgZm9sbG93aW5n
IHBhdGNoIHRvIGxpbmUgODcgb2Ygc2lsay9MUENfaW52X3ByZWRfZ2Fpbi5jCisgICAgICAgIGRl
dGVjdHMgdmFsdWVzIHRoYXQgZG8gbm90IGZpdCBpbiBhIDMyLWJpdCBpbnRlZ2VyIGFuZCBjb25z
aWRlcnMgdGhlIGNvcnJlc3BvbmRpbmcgZmlsdGVycyB1bnN0YWJsZToKKyAgICAgIDwvdD4KKzxm
aWd1cmU+Cis8YXJ0d29yaz48IVtDREFUQVsKKzxDT0RFIEJFR0lOUz4KKyAgICAgICAgIC8qIFVw
ZGF0ZSBBUiBjb2VmZmljaWVudCAqLworICAgICAgICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyAp
IHsKKy0gICAgICAgICAgICB0bXBfUUEgPSBBb2xkX1FBWyBuIF0gLSBNVUwzMl9GUkFDX1EoIFwK
K0FvbGRfUUFbIGsgLSBuIC0gMSBdLCByY19RMzEsIDMxICk7CistICAgICAgICAgICAgQW5ld19R
QVsgbiBdID0gTVVMMzJfRlJBQ19RKCB0bXBfUUEsIHJjX211bHQyICwgbXVsdDJRICk7CisrICAg
ICAgICAgICAgb3B1c19pbnQ2NCB0bXA2NDsKKysgICAgICAgICAgICB0bXBfUUEgPSBzaWxrX1NV
Ql9TQVQzMiggQW9sZF9RQVsgbiBdLCBNVUwzMl9GUkFDX1EoIFwKK0FvbGRfUUFbIGsgLSBuIC0g
MSBdLCByY19RMzEsIDMxICkgKTsKKysgICAgICAgICAgICB0bXA2NCA9IHNpbGtfUlNISUZUX1JP
VU5ENjQoIHNpbGtfU01VTEwoIHRtcF9RQSwgXAorcmNfbXVsdDIgKSwgbXVsdDJRKTsKKysgICAg
ICAgICAgICBpZiggdG1wNjQgPiBzaWxrX2ludDMyX01BWCB8fCB0bXA2NCA8IHNpbGtfaW50MzJf
TUlOICkgeworKyAgICAgICAgICAgICAgIHJldHVybiAwOworKyAgICAgICAgICAgIH0KKysgICAg
ICAgICAgICBBbmV3X1FBWyBuIF0gPSAoIG9wdXNfaW50MzIgKXRtcDY0OworICAgICAgICAgfQor
PENPREUgRU5EUz4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorICAgIDwvc2VjdGlvbj4KKwor
ICAgIDxzZWN0aW9uIHRpdGxlPSJJbnRlZ2VyIHdyYXAtYXJvdW5kIGluIExTRiBkZWNvZGluZyIg
YW5jaG9yPSJsc2Zfb3ZlcmZsb3ciPgorICAgICAgPHQ+CisgICAgICAgIEl0IHdhcyBkaXNjb3Zl
cmVkIC0tIGFsc28gZnJvbSBkZWNvZGVyIGZ1enppbmcgLS0gdGhhdCBhbiBpbnRlZ2VyIHdyYXAt
YXJvdW5kIGNvdWxkCisgICAgICAgIG9jY3VyIHdoZW4gZGVjb2RpbmcgbGluZSBzcGVjdHJhbCBm
cmVxdWVuY3kgY29lZmZpY2llbnRzIGZyb20gZXh0cmVtZSBiaXRzdHJlYW1zLgorICAgICAgICBU
aGUgZW5kIHJlc3VsdCBvZiB0aGUgd3JhcC1hcm91bmQgaXMgYW4gaWxsZWdhbCByZWFkIGFjY2Vz
cyBvbiB0aGUgc3RhY2ssIHdoaWNoCisgICAgICAgIHRoZSBhdXRob3JzIGRvIG5vdCBiZWxpZXZl
IGlzIGV4cGxvaXRhYmxlIGJ1dCBzaG91bGQgbm9uZXRoZWxlc3MgYmUgZml4ZWQuIFRoZSBmb2xs
b3dpbmcKKyAgICAgICAgcGF0Y2ggdG8gbGluZSAxMzcgb2Ygc2lsay9OTFNGX3N0YWJpbGl6ZS5j
IHByZXZlbnRzIHRoZSBwcm9ibGVtOgorICAgICAgPC90PgorPGZpZ3VyZT4KKzxhcnR3b3JrPjwh
W0NEQVRBWworPENPREUgQkVHSU5TPgorICAgICAgICAgICAvKiBLZWVwIGRlbHRhX21pbiBkaXN0
YW5jZSBiZXR3ZWVuIHRoZSBOTFNGcyAqLworICAgICAgICAgZm9yKCBpID0gMTsgaSA8IEw7IGkr
KyApCistICAgICAgICAgICAgTkxTRl9RMTVbaV0gPSBzaWxrX21heF9pbnQoIE5MU0ZfUTE1W2ld
LCBcCitOTFNGX1ExNVtpLTFdICsgTkRlbHRhTWluX1ExNVtpXSApOworKyAgICAgICAgICAgIE5M
U0ZfUTE1W2ldID0gc2lsa19tYXhfaW50KCBOTFNGX1ExNVtpXSwgXAorc2lsa19BRERfU0FUMTYo
IE5MU0ZfUTE1W2ktMV0sIE5EZWx0YU1pbl9RMTVbaV0gKSApOworIAorICAgICAgICAgLyogTGFz
dCBOTFNGIHNob3VsZCBiZSBubyBoaWdoZXIgdGhhbiAxIC0gTkRlbHRhTWluW0xdICovCis8Q09E
RSBFTkRTPgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKyAgICA8L3NlY3Rpb24+CisKKyAg
ICA8c2VjdGlvbiB0aXRsZT0iQ2FwIG9uIEJhbmQgRW5lcmd5Ij4KKyAgICAgIDx0Pk9uIGV4dHJl
bWUgYml0LXN0cmVhbXMsIGl0IGlzIHBvc3NpYmxlIGZvciBsb2ctZG9tYWluIGJhbmQgZW5lcmd5
IGxldmVscworICAgICAgICB0byBleGNlZWQgdGhlIG1heGltdW0gc2luZ2xlLXByZWNpc2lvbiBm
bG9hdGluZyBwb2ludCB2YWx1ZSBvbmNlIGNvbnZlcnRlZAorICAgICAgICB0byBhIGxpbmVhciBz
Y2FsZS4gVGhpcyB3b3VsZCBsYXRlciBjYXVzZSB0aGUgZGVjb2RlZCB2YWx1ZXMgdG8gYmUgTmFO
IChub3QgYSBudW1iZXIpLAorICAgICAgICBwb3NzaWJseSBjYXVzaW5nIHByb2JsZW1zIGluIHRo
ZSBzb2Z0d2FyZSB1c2luZyB0aGUgUENNIHZhbHVlcy4gVGhpcyBjYW4gYmUKKyAgICAgICAgYXZv
aWRlZCB3aXRoIHRoZSBmb2xsb3dpbmcgcGF0Y2ggdG8gbGluZSA1NTIgb2YgY2VsdC9xdWFudF9i
YW5kcy5jOgorICAgICAgPC90PgorPGZpZ3VyZT4KKzxhcnR3b3JrPjwhW0NEQVRBWworPENPREUg
QkVHSU5TPgorICAgICAgIHsKKyAgICAgICAgICBvcHVzX3ZhbDE2IGxnID0gQUREMTYob2xkRUJh
bmRzW2krYyptLT5uYkVCYW5kc10sCisgICAgICAgICAgICAgICAgICAgICAgICAgIFNITDE2KChv
cHVzX3ZhbDE2KWVNZWFuc1tpXSw2KSk7CisrICAgICAgICAgbGcgPSBNSU4zMihRQ09OU1QzMigz
Mi5mLCAxNiksIGxnKTsKKyAgICAgICAgICBlQmFuZHNbaStjKm0tPm5iRUJhbmRzXSA9IFBTSFIz
MihjZWx0X2V4cDIobGcpLDQpOworICAgICAgIH0KKyAgICAgICBmb3IgKDtpPG0tPm5iRUJhbmRz
O2krKykKKzxDT0RFIEVORFM+CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyAgICA8L3NlY3Rp
b24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0iSHlicmlkIEZvbGRpbmciIGFuY2hvcj0iZm9sZGlu
ZyI+CisgICAgICA8dD5XaGVuIGVuY29kaW5nIGluIGh5YnJpZCBtb2RlIGF0IGxvdyBiaXRyYXRl
LCB3ZSBzb21ldGltZXMgb25seSBoYXZlCisgICAgICAgIGVub3VnaCBiaXRzIHRvIGNvZGUgYSBz
aW5nbGUgQ0VMVCBiYW5kICg4IC0gOS42IGtIeikuIFdoZW4gdGhhdCBoYXBwZW5zLAorICAgICAg
ICB0aGUgc2Vjb25kIGJhbmQgKENFTFQgYmFuZCAxOCwgZnJvbSA5LjYgdG8gMTIga0h6KSBjYW5u
b3QgdXNlIGZvbGRpbmcKKyAgICAgICAgYmVjYXVzZSBpdCBpcyB3aWRlciB0aGFuIHRoZSBhbW91
bnQgYWxyZWFkeSBjb2RlZCwgYW5kIGZhbGxzIGJhY2sgdG8KKyAgICAgICAgd2hpdGUgbm9pc2Uu
IEJlY2F1c2UgaXQgY2FuIGFsc28gaGFwcGVuIG9uIHRyYW5zaWVudHMgKGUuZy4gc3RvcHMpLCBp
dAorICAgICAgICBjYW4gY2F1c2UgYXVkaWJsZSBwcmUtZWNoby4KKyAgICAgIDwvdD4KKyAgICAg
IDx0PgorICAgICAgICBUbyBhZGRyZXNzIHRoZSBpc3N1ZSwgd2UgY2hhbmdlIHRoZSBmb2xkaW5n
IGJlaGF2aW9yIHNvIHRoYXQgaXQgaXMKKyAgICAgICAgbmV2ZXIgZm9yY2VkIHRvIGZhbGwgYmFj
ayB0byBMQ0cgZHVlIHRvIHRoZSBmaXJzdCBiYW5kIG5vdCBjb250YWluaW5nCisgICAgICAgIGVu
b3VnaCBjb2VmZmljaWVudHMgdG8gZm9sZCBvbnRvIHRoZSBzZWNvbmQgYmFuZC4gVGhpcworICAg
ICAgICBpcyBhY2hpZXZlZCBieSBzaW1wbHkgcmVwZWF0aW5nIHBhcnQgb2YgdGhlIGZpcnN0IGJh
bmQgaW4gdGhlIGZvbGRpbmcKKyAgICAgICAgb2YgdGhlIHNlY29uZCBiYW5kLiBUaGlzIGNoYW5n
ZXMgdGhlIGNvZGUgaW4gY2VsdC9iYW5kcy5jIGFyb3VuZCBsaW5lIDEyMzc6CisgICAgICA8L3Q+
Cis8ZmlndXJlPgorPGFydHdvcms+PCFbQ0RBVEFbCis8Q09ERSBCRUdJTlM+CisgICAgICAgICAg
YiA9IDA7CisgICAgICAgfQorIAorLSAgICAgIGlmIChyZXN5bnRoICYmIE0qZUJhbmRzW2ldLU4g
Pj0gTSplQmFuZHNbc3RhcnRdICYmIFwKKyh1cGRhdGVfbG93YmFuZCB8fCBsb3diYW5kX29mZnNl
dD09MCkpCisrICAgICAgaWYgKHJlc3ludGggJiYgKE0qZUJhbmRzW2ldLU4gPj0gTSplQmFuZHNb
c3RhcnRdIHx8IFwKK2k9PXN0YXJ0KzEpICYmICh1cGRhdGVfbG93YmFuZCB8fCBsb3diYW5kX29m
ZnNldD09MCkpCisgICAgICAgICAgICAgbG93YmFuZF9vZmZzZXQgPSBpOworIAorKyAgICAgIGlm
IChpID09IHN0YXJ0KzEpCisrICAgICAgeworKyAgICAgICAgIGludCBuMSwgbjI7CisrICAgICAg
ICAgaW50IG9mZnNldDsKKysgICAgICAgICBuMSA9IE0qKGVCYW5kc1tzdGFydCsxXS1lQmFuZHNb
c3RhcnRdKTsKKysgICAgICAgICBuMiA9IE0qKGVCYW5kc1tzdGFydCsyXS1lQmFuZHNbc3RhcnQr
MV0pOworKyAgICAgICAgIG9mZnNldCA9IE0qZUJhbmRzW3N0YXJ0XTsKKysgICAgICAgICAvKiBE
dXBsaWNhdGUgZW5vdWdoIG9mIHRoZSBmaXJzdCBiYW5kIGZvbGRpbmcgZGF0YSB0byBcCitiZSBh
YmxlIHRvIGZvbGQgdGhlIHNlY29uZCBiYW5kLgorKyAgICAgICAgICAgIENvcGllcyBubyBkYXRh
IGZvciBDRUxULW9ubHkgbW9kZS4gKi8KKysgICAgICAgICBPUFVTX0NPUFkoJm5vcm1bb2Zmc2V0
K24xXSwgJm5vcm1bb2Zmc2V0KzIqbjEgLSBuMl0sIG4yLW4xKTsKKysgICAgICAgICBpZiAoQz09
MikKKysgICAgICAgICAgICBPUFVTX0NPUFkoJm5vcm0yW29mZnNldCtuMV0sICZub3JtMltvZmZz
ZXQrMipuMSAtIG4yXSwgXAorbjItbjEpOworKyAgICAgIH0KKysKKyAgICAgICB0Zl9jaGFuZ2Ug
PSB0Zl9yZXNbaV07CisgICAgICAgaWYgKGk+PW0tPmVmZkVCYW5kcykKKyAgICAgICB7Cis8Q09E
RSBFTkRTPgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKyAgICAgIDx0PgorICAgICAgIGFz
IHdlbGwgYXMgbGluZSAxMjYwOgorICAgICAgPC90PgorCis8ZmlndXJlPgorPGFydHdvcms+PCFb
Q0RBVEFbCis8Q09ERSBCRUdJTlM+CisgICAgICAgICAgZm9sZF9zdGFydCA9IGxvd2JhbmRfb2Zm
c2V0OworICAgICAgICAgIHdoaWxlKE0qZUJhbmRzWy0tZm9sZF9zdGFydF0gPiBlZmZlY3RpdmVf
bG93YmFuZCk7CisgICAgICAgICAgZm9sZF9lbmQgPSBsb3diYW5kX29mZnNldC0xOworLSAgICAg
ICAgIHdoaWxlKE0qZUJhbmRzWysrZm9sZF9lbmRdIDwgZWZmZWN0aXZlX2xvd2JhbmQrTik7Cisr
ICAgICAgICAgd2hpbGUoKytmb2xkX2VuZCA8IGkgJiYgTSplQmFuZHNbZm9sZF9lbmRdIDwgXAor
ZWZmZWN0aXZlX2xvd2JhbmQrTik7CisgICAgICAgICAgeF9jbSA9IHlfY20gPSAwOworICAgICAg
ICAgIGZvbGRfaSA9IGZvbGRfc3RhcnQ7IGRvIHsKKyAgICAgICAgICAgIHhfY20gfD0gY29sbGFw
c2VfbWFza3NbZm9sZF9pKkMrMF07CisKKzxDT0RFIEVORFM+CitdXT48L2FydHdvcms+Cis8L2Zp
Z3VyZT4KKyAgICAgIDx0PgorICAgICAgICBUaGUgZml4IGRvZXMgbm90IGltcGFjdCBjb21wYXRp
YmlsaXR5LCBiZWNhdXNlIHRoZSBpbXByb3ZlbWVudCBkb2VzCisgICAgICAgIG5vdCBkZXBlbmQg
b24gdGhlIGVuY29kZXIgZG9pbmcgYW55dGhpbmcgc3BlY2lhbC4gVGhlcmUgaXMgYWxzbyBubwor
ICAgICAgICByZWFzb25hYmxlIHdheSBmb3IgYW4gZW5jb2RlciB0byB1c2UgdGhlIG9yaWdpbmFs
IGJlaGF2aW9yIHRvCisgICAgICAgIGltcHJvdmUgcXVhbGl0eSBvdmVyIHRoZSBwcm9wb3NlZCBj
aGFuZ2UuCisgICAgICA8L3Q+CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24gdGl0bGU9
IkRvd25taXggdG8gTW9ubyIgYW5jaG9yPSJzdGVyZW8iPgorICAgICAgPHQ+VGhlIGxhc3QgaXNz
dWUgaXMgbm90IHN0cmljdGx5IGEgYnVnLCBidXQgaXQgaXMgYW4gaXNzdWUgdGhhdCBoYXMgYmVl
biByZXBvcnRlZAorICAgICAgd2hlbiBkb3dubWl4aW5nIGFuIE9wdXMgZGVjb2RlZCBzdHJlYW0g
dG8gbW9ubywgd2hldGhlciB0aGlzIGlzIGRvbmUgaW5zaWRlIHRoZSBkZWNvZGVyCisgICAgICBv
ciBhcyBhIHBvc3QtcHJvY2Vzc2luZyBzdGVwIG9uIHRoZSBzdGVyZW8gZGVjb2RlciBvdXRwdXQu
IE9wdXMgaW50ZW5zaXR5IHN0ZXJlbyBhbGxvd3MKKyAgICAgIG9wdGlvbmFsbHkgY29kaW5nIHRo
ZSB0d28gY2hhbm5lbHMgMTgwLWRlZ3JlZXMgb3V0IG9mIHBoYXNlIG9uIGEgcGVyLWJhbmQgYmFz
aXMuCisgICAgICBUaGlzIHByb3ZpZGVzIGJldHRlciBzdGVyZW8gcXVhbGl0eSB0aGFuIGZvcmNp
bmcgdGhlIHR3byBjaGFubmVscyB0byBiZSBpbiBwaGFzZSwKKyAgICAgIGJ1dCB3aGVuIHRoZSBv
dXRwdXQgaXMgZG93bm1peGVkIHRvIG1vbm8sIHRoZSBlbmVyZ3kgaW4gdGhlIGFmZmVjdGVkIGJh
bmRzIGlzIGNhbmNlbGxlZAorICAgICAgc29tZXRpbWVzIHJlc3VsdGluZyBpbiBhdWRpYmxlIGFy
dGVmYWN0cy4KKyAgICAgIDwvdD4KKyAgICAgIDx0PkFzIGEgd29yay1hcm91bmQgZm9yIHRoaXMg
aXNzdWUsIHRoZSBkZWNvZGVyIE1BWSBjaG9vc2Ugbm90IHRvIGFwcGx5IHRoZSAxODAtZGVncmVl
CisgICAgICBwaGFzZSBzaGlmdCB3aGVuIHRoZSBvdXRwdXQgaXMgbWVhbnQgdG8gYmUgZG93bm1p
eGVkIChpbnNpZGUgb3IKKyAgICAgIG91dHNpZGUgb2YgdGhlIGRlY29kZXIpLgorICAgICAgPC90
PgorICAgIDwvc2VjdGlvbj4KKworCisgICAgPHNlY3Rpb24gdGl0bGU9Ik5ldyBUZXN0IFZlY3Rv
cnMiPgorICAgICAgPHQ+Q2hhbmdlcyBpbiA8eHJlZiB0YXJnZXQ9ImZvbGRpbmciLz4gYW5kIDx4
cmVmIHRhcmdldD0ic3RlcmVvIi8+IGhhdmUKKyAgICAgICAgc3VmZmljaWVudCBpbXBhY3Qgb24g
dGhlIHRlc3R2ZWN0b3JzIHRvIG1ha2UgdGhlbSBmYWlsLiBGb3IgdGhpcyByZWFzb24sCisgICAg
ICAgIHRoaXMgZG9jdW1lbnQgYWxzbyB1cGRhdGVzIHRoZSBPcHVzIHRlc3QgdmVjdG9ycy4gVGhl
IG5ldyB0ZXN0IHZlY3RvcnMgbm93CisgICAgICAgIGluY2x1ZGUgdHdvIGRlY29kZWQgb3V0cHV0
cyBmb3IgdGhlIHNhbWUgYml0c3RyZWFtLiBUaGUgb3V0cHV0cyB3aXRoCisgICAgICAgIHN1ZmZp
eCAnbScgZG8gbm90IGFwcGx5IHRoZSBDRUxUIDE4MC1kZWdyZWUgcGhhc2Ugc2hpZnQgYXMgYWxs
b3dlZCBpbgorICAgICAgICA8eHJlZiB0YXJnZXQ9InN0ZXJlbyIvPiwgd2hpbGUgdGhlIG91dHB1
dHMgd2l0aG91dCB0aGUgc3VmZml4IGRvLiBBbgorICAgICAgICBpbXBsZW1lbnRhdGlvbiBpcyBj
b21wbGlhbnQgYXMgbG9uZyBhcyBpdCBwYXNzZXMgZWl0aGVyIHNldCBvZiB2ZWN0b3JzLgorICAg
ICAgPC90PgorICAgICAgPHQ+CisgICAgICAgIEluIGFkZGl0aW9uLCBhbnkgT3B1cyBpbXBsZW1l
bnRhdGlvbgorICAgICAgICB0aGF0IHBhc3NlcyB0aGUgb3JpZ2luYWwgdGVzdCB2ZWN0b3JzIGZy
b20gPHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ij5SRkMgNjcxNjwveHJlZj4KKyAgICAgICAgaXMgc3Rp
bGwgY29tcGxpYW50IHdpdGggdGhlIE9wdXMgc3BlY2lmaWNhdGlvbi4gSG93ZXZlciwgbmV3ZXIg
aW1wbGVtZW50YXRpb25zCisgICAgICAgIFNIT1VMRCBiZSBiYXNlZCBvbiB0aGUgbmV3IHRlc3Qg
dmVjdG9ycyByYXRoZXIgdGhhbiB0aGUgb2xkIG9uZXMuCisgICAgICA8L3Q+CisgICAgICA8dD5U
aGUgbmV3IHRlc3QgdmVjdG9ycyBhcmUgbG9jYXRlZCBhdAorICAgICAgICA8ZXJlZiB0YXJnZXQ9
Imh0dHBzOi8vd3d3LmlldGYub3JnL3Byb2NlZWRpbmdzLzk4L3NsaWRlcy9tYXRlcmlhbHMtOTgt
Y29kZWMtb3B1cy1uZXd2ZWN0b3JzLTAwLnRhci5neiIvPi4KKyAgICAgICAgVGhlIFNIQTEgaGFz
aCBvZiB0aGUgdGVzdCB2ZWN0b3JzIGFyZToKKzxmaWd1cmU+Cis8YXJ0d29yaz4KKzwhW0NEQVRB
WworZTQ5YjI4NjJjZWVjNzMyNDc5MGVkODAxOWViOTc0NDU5NmQ1YmUwMSAgdGVzdHZlY3RvcjAx
LmJpdAorYjgwOTc5NWFlMWJjZDYwNjA0OWQ3NmRlNGFkMjQyMzYyNTcxMzVlMCAgdGVzdHZlY3Rv
cjAyLmJpdAorZTBjNGVjYWVhYjQ0ZDM1YTJmNWI2NTc1Y2Q5OTY4NDhlNWVlMmFjYyAgdGVzdHZl
Y3RvcjAzLmJpdAorYTBmODcwY2JlMTRlYmI3MWZhOTA2NmVmM2VlOTZlNTljOWE3NTE4NyAgdGVz
dHZlY3RvcjA0LmJpdAorOWIzZDkyYjQ4Yjk2NWRmZTllZGY3YjhhODVlZGQ0MzA5ZjhjZjdjOCAg
dGVzdHZlY3RvcjA1LmJpdAorMjhlNjY3NjlhYjE3ZTE3ZjcyODc1MjgzYzE0YjE5NjkwY2JjNGU1
NyAgdGVzdHZlY3RvcjA2LmJpdAorYmFjZjQ2N2JlMzIxNWZjN2VjMjg4ZjI5ZTI0NzdkZTExOTI5
NDdhNiAgdGVzdHZlY3RvcjA3LmJpdAorZGRiZTA4YjY4OGJiZjkzNDA3MWYzODkzY2QwMDMwY2U0
OGRiYTEyZiAgdGVzdHZlY3RvcjA4LmJpdAorMzkzMmQ5ZDYxOTQ0ZGFiMTIwMTY0NWI4ZWVhYWQ1
OTVkNTcwNWVjYiAgdGVzdHZlY3RvcjA5LmJpdAorNTIxZWIyYTFlMGNjOWMzMWI4Yjc0MDY3MzMw
N2MyZDNiMTBjMTkwMCAgdGVzdHZlY3RvcjEwLmJpdAorNmJjOGYzMTQ2ZmNiOTY0NTBjOTAxYjE2
YzNkNDY0Y2NkZjRkNWQ5NiAgdGVzdHZlY3RvcjExLmJpdAorMzM4YzNmMWI0Yjk3MjI2YmM2MGJj
NDEwMzhiZWNiYzZkZTA2YjI4ZiAgdGVzdHZlY3RvcjEyLmJpdAorZjVlZjkzODg0ZGE2YTgxNGQz
MTEwMjc5MThlOWFmYzZmMmU1YzJjOCAgdGVzdHZlY3RvcjAxLmRlYworNDhhYzFmZjE5OTUyNTBh
NzU2ZTFlMTdiZDMyYWNlZmE4Y2QyYjgyMCAgdGVzdHZlY3RvcjAyLmRlYworZDE1NTY3ZTkxOWRi
MmQwZTgxODcyNzA5MmMwYWY4ZGQ5ZGYyM2M5NSAgdGVzdHZlY3RvcjAzLmRlYworMTI0OWRkMjhm
NWJkMWUzOWE2NmZkNmQ5OTQ0OWRjYTdhODMxNjM0MiAgdGVzdHZlY3RvcjA0LmRlYworYjg1Njc1
ZDgxZGVlZjg0YTExMmM0NjZjZGZmM2I3YWFhMWQyZmM3NiAgdGVzdHZlY3RvcjA1LmRlYworNTVm
MGIxOTFlOTBiZmE2Zjk4YjUwZDAxYTY0YjQ0MjU1Y2I0ODEzZSAgdGVzdHZlY3RvcjA2LmRlYwor
NjFlOGIzNTdhYjA5MGIxODAxZWViNTc4YTI4YTZhZTkzNWUyNWI3YiAgdGVzdHZlY3RvcjA3LmRl
YworYTU4NTM5ZWU1MzIxNDUzYjJkZGY0YzBmMjUwMGU4NTZiMzk2Njg2MiAgdGVzdHZlY3RvcjA4
LmRlYworYmI5NmFhZDJjZGUxODg1NTU4NjJiN2JiYjNhZjYxMzM4NTFlZjhmNCAgdGVzdHZlY3Rv
cjA5LmRlYworMWI2Y2RmMDQxM2FjOTk2NWIxNjE4NGIxYmVhMTI5YjVjMGIyYTM3YSAgdGVzdHZl
Y3RvcjEwLmRlYworYjFmZmY3MmI3NDY2NmUzMDI3ODAxYjI5ZGJjNDhiMzFmODBkZWUwZCAgdGVz
dHZlY3RvcjExLmRlYworOThlMDliYmFmZWQzMjllMzQxYzNiNDA1MmU5YzRiYTVmYzgzZjliMSAg
dGVzdHZlY3RvcjEyLmRlYworMWU3ZDk4NGVhM2ZiYjE2YmE5OThhZWE3NjFmNDg5M2ZiZGIzMDE1
NyAgdGVzdHZlY3RvcjAxbS5kZWMKKzQ4YWMxZmYxOTk1MjUwYTc1NmUxZTE3YmQzMmFjZWZhOGNk
MmI4MjAgIHRlc3R2ZWN0b3IwMm0uZGVjCitkMTU1NjdlOTE5ZGIyZDBlODE4NzI3MDkyYzBhZjhk
ZDlkZjIzYzk1ICB0ZXN0dmVjdG9yMDNtLmRlYworMTI0OWRkMjhmNWJkMWUzOWE2NmZkNmQ5OTQ0
OWRjYTdhODMxNjM0MiAgdGVzdHZlY3RvcjA0bS5kZWMKK2Q3MGIwYmFkNDMxZTdkNDYzYmMzZGE0
OWJkMmQ0OWYxYzZkMGE1MzAgIHRlc3R2ZWN0b3IwNW0uZGVjCis2YWMxNjQ4YzMxNzRjOTVmYWRh
NTY1MTYxYTZjNzhiZGJlNTljNzdkICB0ZXN0dmVjdG9yMDZtLmRlYworZmM1ZTJmNzA5NjkzNzM4
MzI0ZmI0YzhiZGMwZGFkNmRkYTA0ZTcxMyAgdGVzdHZlY3RvcjA3bS5kZWMKK2FhZDJiYTM5N2Jm
MWI2YTE4ZThlMDliNTBlNGIxOTYyN2Q0NzlmMDAgIHRlc3R2ZWN0b3IwOG0uZGVjCis2ZmViN2E3
YjlkN2NkYzEzODNiYWY4ZDU3MzllMmE1MTRiZDBiYTA4ICB0ZXN0dmVjdG9yMDltLmRlYworMWI2
Y2RmMDQxM2FjOTk2NWIxNjE4NGIxYmVhMTI5YjVjMGIyYTM3YSAgdGVzdHZlY3RvcjEwbS5kZWMK
K2ZkM2QzYTdiMGRmYmRhYjk4ZDM3ZWQ5YWEwNGI2NTliOWZlZmJkMTggIHRlc3R2ZWN0b3IxMW0u
ZGVjCis5OGUwOWJiYWZlZDMyOWUzNDFjM2I0MDUyZTljNGJhNWZjODNmOWIxICB0ZXN0dmVjdG9y
MTJtLmRlYworXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyAgICAgIE5vdGUgdGhhdCB0aGUg
ZGVjb2RlciBpbnB1dCBiaXRzdHJlYW0gZmlsZXMgKC5iaXQpIGFyZSB1bmNoYW5nZWQuCisgICAg
ICA8L3Q+CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24gYW5jaG9yPSJzZWN1cml0eSIg
dGl0bGU9IlNlY3VyaXR5IENvbnNpZGVyYXRpb25zIj4KKyAgICAgIDx0PlRoaXMgZG9jdW1lbnQg
Zml4ZXMgdHdvIHNlY3VyaXR5IGlzc3VlcyByZXBvcnRlZCBvbiBPcHVzIGFuZCB0aGF0IGFmZmVj
dCB0aGUKKyAgICAgICAgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGluIDx4cmVmIHRhcmdldD0i
UkZDNjcxNiI+UkZDIDY3MTY8L3hyZWY+OiBDVkUtMjAxMy0wODk5CisgICAgICAgIDxlcmVmIHRh
cmdldD0iaHR0cHM6Ly9udmQubmlzdC5nb3YvdnVsbi9kZXRhaWwvQ1ZFLTIwMTMtMDg5OSIvPgor
ICAgICAgICBhbmQgQ1ZFLTIwMTctMDM4MSA8ZXJlZiB0YXJnZXQ9Imh0dHBzOi8vbnZkLm5pc3Qu
Z292L3Z1bG4vZGV0YWlsL0NWRS0yMDE3LTAzODEiLz4uCisgICAgICAgIENWRS0yMDEzLTA4OTkg
aXMgZml4ZWQgYnkgPHhyZWYgdGFyZ2V0PSJwYWRkaW5nIi8+IGFuZAorICAgICAgICBjb3VsZCB0
aGVvcmV0aWNhbGx5IGNhdXNlIGluZm9ybWF0aW9uIGxlYWssIGJ1dCB0aGUKKyAgICAgICAgbGVh
a2VkIGluZm9ybWF0aW9uIHdvdWxkIGF0IHRoZSB2ZXJ5IGxlYXN0IGdvIHRocm91Z2ggdGhlIGRl
Y29kZXIgcHJvY2VzcyBiZWZvcmUKKyAgICAgICAgYmVpbmcgYWNjZXNzaWJsZSB0byB0aGUgYXR0
YWNrZXIuIEFsc28sIHRoZSBidWcgY2FuIG9ubHkgYmUgdHJpZ2dlcmVkIGJ5IE9wdXMgcGFja2V0
cworICAgICAgICBhdCBsZWFzdCAyNCBNQiBpbiBzaXplLiBDVkUtMjAxNy0wMzgxIGlzIGZpeGVk
IGJ5IDx4cmVmIHRhcmdldD0ibHNmX292ZXJmbG93Ii8+IGFuZCwgYXMgZmFyCisgICAgICAgIGFz
IHRoZSBhdXRob3JzIGFyZSBhd2FyZSwgY291bGQgbm90IGJlIGV4cGxvaXRlZCBpbiBhbnkgd2F5
IChkZXNwaXRlIHRoZSBjbGFpbXMgaW4KKyAgICAgICAgdGhlIENWRSkgdW5sZXNzIHRoZSByZWFk
LW9ubHkgdGFibGUKKyAgICAgICAgd2FzIHNvbWVob3cgcGxhY2VkIHZlcnkgY2xvc2UgdG8gc2Vu
c2l0aXZlIGRhdGEsIHdoaWNoIGlzIGhpZ2hseSB1bmxpa2VseS4KKyAgICAgICAgQmV5b25kIHRo
ZSB0d28gZml4ZWQgQ1ZFcywgdGhpcyBkb2N1bWVudCBhZGRzIG5vIG5ldyBzZWN1cml0eSBjb25z
aWRlcmF0aW9ucyBvbiB0b3Agb2YKKyAgICAgICAgPHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ij5SRkMg
NjcxNjwveHJlZj4uCisgICAgICA8L3Q+CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24g
YW5jaG9yPSJJQU5BIiB0aXRsZT0iSUFOQSBDb25zaWRlcmF0aW9ucyI+CisgICAgICA8dD5UaGlz
IGRvY3VtZW50IG1ha2VzIG5vIHJlcXVlc3Qgb2YgSUFOQS48L3Q+CisKKyAgICAgIDx0Pk5vdGUg
dG8gUkZDIEVkaXRvcjogdGhpcyBzZWN0aW9uIG1heSBiZSByZW1vdmVkIG9uIHB1YmxpY2F0aW9u
IGFzIGFuCisgICAgICBSRkMuPC90PgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIGFu
Y2hvcj0iQWNrbm93bGVkZ2VtZW50cyIgdGl0bGU9IkFja25vd2xlZGdlbWVudHMiPgorICAgICAg
PHQ+V2Ugd291bGQgbGlrZSB0byB0aGFuayBKdXJpIEFlZGxhIGZvciByZXBvcnRpbmcgdGhlIGlz
c3VlIHdpdGggdGhlIHBhcnNpbmcgb2YKKyAgICAgIHRoZSBPcHVzIHBhZGRpbmcuIFRoYW5rcyB0
byBGZWxpY2lhIExpbSBmb3IgcmVwb3J0aW5nIHRoZSBMU0YgaW50ZWdlciBvdmVyZmxvdyBpc3N1
ZS4KKyAgICAgIEFsc28sIHRoYW5rcyB0byBUaW5hIGxlIEdyYW5kLCBKb25hdGhhbiBMZW5ub3gs
IGFuZCBNYXJrIEhhcnJpcyBmb3IgdGhlaXIKKyAgICAgIGZlZWRiYWNrIG9uIHRoaXMgZG9jdW1l
bnQuPC90PgorICAgIDwvc2VjdGlvbj4KKyAgPC9taWRkbGU+CisKKyAgPGJhY2s+CisgICAgPHJl
ZmVyZW5jZXMgdGl0bGU9Ik5vcm1hdGl2ZSBSZWZlcmVuY2VzIj4KKyAgICAgIDw/cmZjIGluY2x1
ZGU9Imh0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5S
RkMuMjExOS54bWwiPz4KKyAgICAgIDw/cmZjIGluY2x1ZGU9Imh0dHA6Ly94bWwucmVzb3VyY2Uu
b3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNjcxNi54bWwiPz4KKworCisgICAg
PC9yZWZlcmVuY2VzPgorICA8L2JhY2s+Cis8L3JmYz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2RyYWZ0LWll
dGYtY29kZWMtb3B1cy54bWwgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2RvYy9kcmFmdC1pZXRmLWNvZGVjLW9wdXMueG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjMzNGNhZDk3YTI3ZDdlN2JmMWNkZDA5ZjQ5MTRjYjZhOTZhZTQ3MTEKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2RvYy9kcmFmdC1pZXRmLWNvZGVjLW9wdXMueG1sCkBAIC0wLDAgKzEsODI3NiBAQAor
PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KKzwhRE9DVFlQRSByZmMgU1lT
VEVNICdyZmMyNjI5LmR0ZCc+Cis8P3JmYyB0b2M9InllcyIgc3ltcmVmcz0ieWVzIiA/PgorCis8
cmZjIGlwcj0idHJ1c3QyMDA5MDIiIGNhdGVnb3J5PSJzdGQiIGRvY05hbWU9ImRyYWZ0LWlldGYt
Y29kZWMtb3B1cy0xNCI+CisKKzxmcm9udD4KKzx0aXRsZSBhYmJyZXY9IkludGVyYWN0aXZlIEF1
ZGlvIENvZGVjIj5EZWZpbml0aW9uIG9mIHRoZSBPcHVzIEF1ZGlvIENvZGVjPC90aXRsZT4KKwor
Cis8YXV0aG9yIGluaXRpYWxzPSJKTSIgc3VybmFtZT0iVmFsaW4iIGZ1bGxuYW1lPSJKZWFuLU1h
cmMgVmFsaW4iPgorPG9yZ2FuaXphdGlvbj5Nb3ppbGxhIENvcnBvcmF0aW9uPC9vcmdhbml6YXRp
b24+Cis8YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3RyZWV0PjY1MCBDYXN0cm8gU3RyZWV0PC9zdHJl
ZXQ+Cis8Y2l0eT5Nb3VudGFpbiBWaWV3PC9jaXR5PgorPHJlZ2lvbj5DQTwvcmVnaW9uPgorPGNv
ZGU+OTQwNDE8L2NvZGU+Cis8Y291bnRyeT5VU0E8L2NvdW50cnk+Cis8L3Bvc3RhbD4KKzxwaG9u
ZT4rMSA2NTAgOTAzLTA4MDA8L3Bob25lPgorPGVtYWlsPmptdmFsaW5Aam12YWxpbi5jYTwvZW1h
aWw+Cis8L2FkZHJlc3M+Cis8L2F1dGhvcj4KKworPGF1dGhvciBpbml0aWFscz0iSy4iIHN1cm5h
bWU9IlZvcyIgZnVsbG5hbWU9IktvZW4gVm9zIj4KKzxvcmdhbml6YXRpb24+U2t5cGUgVGVjaG5v
bG9naWVzIFMuQS48L29yZ2FuaXphdGlvbj4KKzxhZGRyZXNzPgorPHBvc3RhbD4KKzxzdHJlZXQ+
U29kZXIgTWFsYXJzdHJhbmQgNDM8L3N0cmVldD4KKzxjaXR5PlN0b2NraG9sbTwvY2l0eT4KKzxy
ZWdpb24+PC9yZWdpb24+Cis8Y29kZT4xMTgyNTwvY29kZT4KKzxjb3VudHJ5PlNFPC9jb3VudHJ5
PgorPC9wb3N0YWw+Cis8cGhvbmU+KzQ2IDczIDA4NSA3NjE5PC9waG9uZT4KKzxlbWFpbD5rb2Vu
LnZvc0Bza3lwZS5uZXQ8L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisKKzxhdXRob3Ig
aW5pdGlhbHM9IlQuIiBzdXJuYW1lPSJUZXJyaWJlcnJ5IiBmdWxsbmFtZT0iVGltb3RoeSBCLiBU
ZXJyaWJlcnJ5Ij4KKzxvcmdhbml6YXRpb24+TW96aWxsYSBDb3Jwb3JhdGlvbjwvb3JnYW5pemF0
aW9uPgorPGFkZHJlc3M+Cis8cG9zdGFsPgorPHN0cmVldD42NTAgQ2FzdHJvIFN0cmVldDwvc3Ry
ZWV0PgorPGNpdHk+TW91bnRhaW4gVmlldzwvY2l0eT4KKzxyZWdpb24+Q0E8L3JlZ2lvbj4KKzxj
b2RlPjk0MDQxPC9jb2RlPgorPGNvdW50cnk+VVNBPC9jb3VudHJ5PgorPC9wb3N0YWw+Cis8cGhv
bmU+KzEgNjUwIDkwMy0wODAwPC9waG9uZT4KKzxlbWFpbD50dGVycmliZXJyeUBtb3ppbGxhLmNv
bTwvZW1haWw+Cis8L2FkZHJlc3M+Cis8L2F1dGhvcj4KKworPGRhdGUgZGF5PSIxNyIgbW9udGg9
Ik1heSIgeWVhcj0iMjAxMiIgLz4KKworPGFyZWE+R2VuZXJhbDwvYXJlYT4KKworPHdvcmtncm91
cD48L3dvcmtncm91cD4KKworPGFic3RyYWN0PgorPHQ+CitUaGlzIGRvY3VtZW50IGRlZmluZXMg
dGhlIE9wdXMgaW50ZXJhY3RpdmUgc3BlZWNoIGFuZCBhdWRpbyBjb2RlYy4KK09wdXMgaXMgZGVz
aWduZWQgdG8gaGFuZGxlIGEgd2lkZSByYW5nZSBvZiBpbnRlcmFjdGl2ZSBhdWRpbyBhcHBsaWNh
dGlvbnMsCisgaW5jbHVkaW5nIFZvaWNlIG92ZXIgSVAsIHZpZGVvY29uZmVyZW5jaW5nLCBpbi1n
YW1lIGNoYXQsIGFuZCBldmVuIGxpdmUsCisgZGlzdHJpYnV0ZWQgbXVzaWMgcGVyZm9ybWFuY2Vz
LgorSXQgc2NhbGVzIGZyb20gbG93IGJpdHJhdGUgbmFycm93YmFuZCBzcGVlY2ggYXQgNiBrYi9z
IHRvIHZlcnkgaGlnaCBxdWFsaXR5Cisgc3RlcmVvIG11c2ljIGF0IDUxMCBrYi9zLgorT3B1cyB1
c2VzIGJvdGggbGluZWFyIHByZWRpY3Rpb24gKExQKSBhbmQgdGhlIE1vZGlmaWVkIERpc2NyZXRl
IENvc2luZQorIFRyYW5zZm9ybSAoTURDVCkgdG8gYWNoaWV2ZSBnb29kIGNvbXByZXNzaW9uIG9m
IGJvdGggc3BlZWNoIGFuZCBtdXNpYy4KKzwvdD4KKzwvYWJzdHJhY3Q+Cis8L2Zyb250PgorCis8
bWlkZGxlPgorCis8c2VjdGlvbiBhbmNob3I9ImludHJvZHVjdGlvbiIgdGl0bGU9IkludHJvZHVj
dGlvbiI+Cis8dD4KK1RoZSBPcHVzIGNvZGVjIGlzIGEgcmVhbC10aW1lIGludGVyYWN0aXZlIGF1
ZGlvIGNvZGVjIGRlc2lnbmVkIHRvIG1lZXQgdGhlIHJlcXVpcmVtZW50cworZGVzY3JpYmVkIGlu
IDx4cmVmIHRhcmdldD0icmVxdWlyZW1lbnRzIj48L3hyZWY+LgorSXQgaXMgY29tcG9zZWQgb2Yg
YSBsaW5lYXIKKyBwcmVkaWN0aW9uIChMUCktYmFzZWQgPHhyZWYgdGFyZ2V0PSJMUEMiLz4gbGF5
ZXIgYW5kIGEgTW9kaWZpZWQgRGlzY3JldGUgQ29zaW5lIFRyYW5zZm9ybQorIChNRENUKS1iYXNl
ZCA8eHJlZiB0YXJnZXQ9Ik1EQ1QiLz4gbGF5ZXIuCitUaGUgbWFpbiBpZGVhIGJlaGluZCB1c2lu
ZyB0d28gbGF5ZXJzIGlzIHRoYXQgaW4gc3BlZWNoLCBsaW5lYXIgcHJlZGljdGlvbgorIHRlY2hu
aXF1ZXMgKHN1Y2ggYXMgQ29kZS1FeGNpdGVkIExpbmVhciBQcmVkaWN0aW9uLCBvciBDRUxQKSBj
b2RlIGxvdyBmcmVxdWVuY2llcyBtb3JlIGVmZmljaWVudGx5IHRoYW4gdHJhbnNmb3JtCisgKGUu
Zy4sIE1EQ1QpIGRvbWFpbiB0ZWNobmlxdWVzLCB3aGlsZSB0aGUgc2l0dWF0aW9uIGlzIHJldmVy
c2VkIGZvciBtdXNpYyBhbmQKKyBoaWdoZXIgc3BlZWNoIGZyZXF1ZW5jaWVzLgorVGh1cyBhIGNv
ZGVjIHdpdGggYm90aCBsYXllcnMgYXZhaWxhYmxlIGNhbiBvcGVyYXRlIG92ZXIgYSB3aWRlciBy
YW5nZSB0aGFuCisgZWl0aGVyIG9uZSBhbG9uZSBhbmQsIGJ5IGNvbWJpbmluZyB0aGVtLCBhY2hp
ZXZlIGJldHRlciBxdWFsaXR5IHRoYW4gZWl0aGVyCisgb25lIGluZGl2aWR1YWxseS4KKzwvdD4K
KworPHQ+CitUaGUgcHJpbWFyeSBub3JtYXRpdmUgcGFydCBvZiB0aGlzIHNwZWNpZmljYXRpb24g
aXMgcHJvdmlkZWQgYnkgdGhlIHNvdXJjZSBjb2RlCisgaW4gPHhyZWYgdGFyZ2V0PSJyZWYtaW1w
bGVtZW50YXRpb24iPjwveHJlZj4uCitPbmx5IHRoZSBkZWNvZGVyIHBvcnRpb24gb2YgdGhpcyBz
b2Z0d2FyZSBpcyBub3JtYXRpdmUsIHRob3VnaCBhCisgc2lnbmlmaWNhbnQgYW1vdW50IG9mIGNv
ZGUgaXMgc2hhcmVkIGJ5IGJvdGggdGhlIGVuY29kZXIgYW5kIGRlY29kZXIuCis8eHJlZiB0YXJn
ZXQ9ImNvbmZvcm1hbmNlIi8+IHByb3ZpZGVzIGEgZGVjb2RlciBjb25mb3JtYW5jZSB0ZXN0Lgor
VGhlIGRlY29kZXIgY29udGFpbnMgYSBncmVhdCBkZWFsIG9mIGludGVnZXIgYW5kIGZpeGVkLXBv
aW50IGFyaXRobWV0aWMgd2hpY2gKKyBuZWVkcyB0byBiZSBwZXJmb3JtZWQgZXhhY3RseSwgaW5j
bHVkaW5nIGFsbCByb3VuZGluZyBjb25zaWRlcmF0aW9ucywgc28gYW55CisgdXNlZnVsIHNwZWNp
ZmljYXRpb24gcmVxdWlyZXMgZG9tYWluLXNwZWNpZmljIHN5bWJvbGljIGxhbmd1YWdlIHRvIGFk
ZXF1YXRlbHkKKyBkZWZpbmUgdGhlc2Ugb3BlcmF0aW9ucy4KK0FkZGl0aW9uYWxseSwgYW55Citj
b25mbGljdCBiZXR3ZWVuIHRoZSBzeW1ib2xpYyByZXByZXNlbnRhdGlvbiBhbmQgdGhlIGluY2x1
ZGVkIHJlZmVyZW5jZQoraW1wbGVtZW50YXRpb24gbXVzdCBiZSByZXNvbHZlZC4gRm9yIHRoZSBw
cmFjdGljYWwgcmVhc29ucyBvZiBjb21wYXRpYmlsaXR5IGFuZAordGVzdGFiaWxpdHkgaXQgd291
bGQgYmUgYWR2YW50YWdlb3VzIHRvIGdpdmUgdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbgor
cHJpb3JpdHkgaW4gYW55IGRpc2FncmVlbWVudC4gVGhlIEMgbGFuZ3VhZ2UgaXMgYWxzbyBvbmUg
b2YgdGhlIG1vc3QKK3dpZGVseSB1bmRlcnN0b29kIGh1bWFuLXJlYWRhYmxlIHN5bWJvbGljIHJl
cHJlc2VudGF0aW9ucyBmb3IgbWFjaGluZQorYmVoYXZpb3IuCitGb3IgdGhlc2UgcmVhc29ucyB0
aGlzIFJGQyB1c2VzIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gYXMgdGhlIHNvbGUKKyBz
eW1ib2xpYyByZXByZXNlbnRhdGlvbiBvZiB0aGUgY29kZWMuCis8L3Q+CisKKzx0PldoaWxlIHRo
ZSBzeW1ib2xpYyByZXByZXNlbnRhdGlvbiBpcyB1bmFtYmlndW91cyBhbmQgY29tcGxldGUgaXQg
aXMgbm90CithbHdheXMgdGhlIGVhc2llc3Qgd2F5IHRvIHVuZGVyc3RhbmQgdGhlIGNvZGVjJ3Mg
b3BlcmF0aW9uLiBGb3IgdGhpcyByZWFzb24KK3RoaXMgZG9jdW1lbnQgYWxzbyBkZXNjcmliZXMg
c2lnbmlmaWNhbnQgcGFydHMgb2YgdGhlIGNvZGVjIGluIEVuZ2xpc2ggYW5kCit0YWtlcyB0aGUg
b3Bwb3J0dW5pdHkgdG8gZXhwbGFpbiB0aGUgcmF0aW9uYWxlIGJlaGluZCBtYW55IG9mIHRoZSBt
b3JlCitzdXJwcmlzaW5nIGVsZW1lbnRzIG9mIHRoZSBkZXNpZ24uIFRoZXNlIGRlc2NyaXB0aW9u
cyBhcmUgaW50ZW5kZWQgdG8gYmUKK2FjY3VyYXRlIGFuZCBpbmZvcm1hdGl2ZSwgYnV0IHRoZSBs
aW1pdGF0aW9ucyBvZiBjb21tb24gRW5nbGlzaCBzb21ldGltZXMKK3Jlc3VsdCBpbiBhbWJpZ3Vp
dHksIHNvIGl0IGlzIGV4cGVjdGVkIHRoYXQgdGhlIHJlYWRlciB3aWxsIGFsd2F5cyByZWFkCit0
aGVtIGFsb25nc2lkZSB0aGUgc3ltYm9saWMgcmVwcmVzZW50YXRpb24uIE51bWVyb3VzIHJlZmVy
ZW5jZXMgdG8gdGhlCitpbXBsZW1lbnRhdGlvbiBhcmUgcHJvdmlkZWQgZm9yIHRoaXMgcHVycG9z
ZS4gVGhlIGRlc2NyaXB0aW9ucyBzb21ldGltZXMKK2RpZmZlciBmcm9tIHRoZSByZWZlcmVuY2Ug
aW4gb3JkZXJpbmcgb3IgdGhyb3VnaCBtYXRoZW1hdGljYWwgc2ltcGxpZmljYXRpb24KK3doZXJl
dmVyIHN1Y2ggZGV2aWF0aW9uIG1ha2VzIGFuIGV4cGxhbmF0aW9uIGVhc2llciB0byB1bmRlcnN0
YW5kLgorRm9yIGV4YW1wbGUsIHRoZSByaWdodCBzaGlmdCBhbmQgbGVmdCBzaGlmdCBvcGVyYXRp
b25zIGluIHRoZSByZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uIGFyZSBvZnRlbiBkZXNjcmliZWQg
dXNpbmcgZGl2aXNpb24gYW5kIG11bHRpcGxpY2F0aW9uIGluIHRoZSB0ZXh0LgorSW4gZ2VuZXJh
bCwgdGhlIHRleHQgaXMgZm9jdXNlZCBvbiB0aGUgIndoYXQiIGFuZCAid2h5IiB3aGlsZSB0aGUg
c3ltYm9saWMKK3JlcHJlc2VudGF0aW9uIG1vc3QgY2xlYXJseSBwcm92aWRlcyB0aGUgImhvdyIu
Cis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0ibm90YXRpb24iIHRpdGxlPSJOb3RhdGlvbiBhbmQg
Q29udmVudGlvbnMiPgorPHQ+CitUaGUga2V5IHdvcmRzICJNVVNUIiwgIk1VU1QgTk9UIiwgIlJF
UVVJUkVEIiwgIlNIQUxMIiwgIlNIQUxMIE5PVCIsICJTSE9VTEQiLAorICJTSE9VTEQgTk9UIiwg
IlJFQ09NTUVOREVEIiwgIk1BWSIsIGFuZCAiT1BUSU9OQUwiIGluIHRoaXMgZG9jdW1lbnQgYXJl
IHRvIGJlCisgaW50ZXJwcmV0ZWQgYXMgZGVzY3JpYmVkIGluIFJGQyAyMTE5IDx4cmVmIHRhcmdl
dD0icmZjMjExOSI+PC94cmVmPi4KKzwvdD4KKzx0PgorVmFyaW91cyBvcGVyYXRpb25zIGluIHRo
ZSBjb2RlYyByZXF1aXJlIGJpdC1leGFjdCBmaXhlZC1wb2ludCBiZWhhdmlvciwgZXZlbgorIHdo
ZW4gd3JpdGluZyBhIGZsb2F0aW5nIHBvaW50IGltcGxlbWVudGF0aW9uLgorVGhlIG5vdGF0aW9u
ICJRJmx0O24mZ3Q7Iiwgd2hlcmUgbiBpcyBhbiBpbnRlZ2VyLCBkZW5vdGVzIHRoZSBudW1iZXIg
b2YgYmluYXJ5CisgZGlnaXRzIHRvIHRoZSByaWdodCBvZiB0aGUgZGVjaW1hbCBwb2ludCBpbiBh
IGZpeGVkLXBvaW50IG51bWJlci4KK0ZvciBleGFtcGxlLCBhIHNpZ25lZCBRMTQgdmFsdWUgaW4g
YSAxNi1iaXQgd29yZCBjYW4gcmVwcmVzZW50IHZhbHVlcyBmcm9tCisgLTIuMCB0byAxLjk5OTkz
ODk2NDg0Mzc1LCBpbmNsdXNpdmUuCitUaGlzIG5vdGF0aW9uIGlzIGZvciBpbmZvcm1hdGlvbmFs
IHB1cnBvc2VzIG9ubHkuCitBcml0aG1ldGljLCB3aGVuIGRlc2NyaWJlZCwgYWx3YXlzIG9wZXJh
dGVzIG9uIHRoZSB1bmRlcmx5aW5nIGludGVnZXIuCitFLmcuLCB0aGUgdGV4dCB3aWxsIGV4cGxp
Y2l0bHkgaW5kaWNhdGUgYW55IHNoaWZ0cyByZXF1aXJlZCBhZnRlciBhCisgbXVsdGlwbGljYXRp
b24uCis8L3Q+Cis8dD4KK0V4cHJlc3Npb25zLCB3aGVyZSBpbmNsdWRlZCBpbiB0aGUgdGV4dCwg
Zm9sbG93IEMgb3BlcmF0b3IgcnVsZXMgYW5kCisgcHJlY2VkZW5jZSwgd2l0aCB0aGUgZXhjZXB0
aW9uIHRoYXQgdGhlIHN5bnRheCAieCoqeSIgaW5kaWNhdGVzIHggcmFpc2VkIHRvCisgdGhlIHBv
d2VyIHkuCitUaGUgdGV4dCBhbHNvIG1ha2VzIHVzZSBvZiB0aGUgZm9sbG93aW5nIGZ1bmN0aW9u
czoKKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJtaW4iIHRvYz0iZXhjbHVkZSIgdGl0bGU9Im1p
bih4LHkpIj4KKzx0PgorVGhlIHNtYWxsZXN0IG9mIHR3byB2YWx1ZXMgeCBhbmQgeS4KKzwvdD4K
Kzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJtYXgiIHRvYz0iZXhjbHVkZSIgdGl0bGU9
Im1heCh4LHkpIj4KKzx0PgorVGhlIGxhcmdlc3Qgb2YgdHdvIHZhbHVlcyB4IGFuZCB5LgorPC90
PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImNsYW1wIiB0b2M9ImV4Y2x1ZGUiIHRp
dGxlPSJjbGFtcChsbyx4LGhpKSI+Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsg
YWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitjbGFtcChsbyx4LGhpKSA9IG1heChsbyxtaW4oeCxo
aSkpCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx0PgorV2l0aCB0aGlzIGRlZmluaXRpb24s
IGlmIGxvJm5ic3A7Jmd0OyZuYnNwO2hpLCB0aGUgbG93ZXIgYm91bmQgaXMgdGhlIG9uZSB0aGF0
CisgaXMgZW5mb3JjZWQuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2ln
biIgdG9jPSJleGNsdWRlIiB0aXRsZT0ic2lnbih4KSI+Cis8dD4KK1RoZSBzaWduIG9mIHgsIGku
ZS4sCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFb
Q0RBVEFbCisgICAgICAgICAgKCAtMSwgIHggPCAwICwKK3NpZ24oeCkgPSA8ICAwLCAgeCA9PSAw
ICwKKyAgICAgICAgICAoICAxLCAgeCA+IDAgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8
L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iYWJzIiB0b2M9ImV4Y2x1ZGUiIHRp
dGxlPSJhYnMoeCkiPgorPHQ+CitUaGUgYWJzb2x1dGUgdmFsdWUgb2YgeCwgaS5lLiwKKzxmaWd1
cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2Fi
cyh4KSA9IHNpZ24oeCkqeCAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKzwvc2Vj
dGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJmbG9vciIgdG9jPSJleGNsdWRlIiB0aXRsZT0iZmxv
b3IoZikiPgorPHQ+CitUaGUgbGFyZ2VzdCBpbnRlZ2VyIHogc3VjaCB0aGF0IHogJmx0Oz0gZi4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJjZWlsIiB0b2M9ImV4Y2x1ZGUi
IHRpdGxlPSJjZWlsKGYpIj4KKzx0PgorVGhlIHNtYWxsZXN0IGludGVnZXIgeiBzdWNoIHRoYXQg
eiAmZ3Q7PSBmLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InJvdW5kIiB0
b2M9ImV4Y2x1ZGUiIHRpdGxlPSJyb3VuZChmKSI+Cis8dD4KK1RoZSBpbnRlZ2VyIHogbmVhcmVz
dCB0byBmLCB3aXRoIHRpZXMgcm91bmRlZCB0b3dhcmRzIG5lZ2F0aXZlIGluZmluaXR5LAorIGku
ZS4sCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFb
Q0RBVEFbCisgcm91bmQoZikgPSBjZWlsKGYgLSAwLjUpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmln
dXJlPgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImxvZzIiIHRvYz0iZXhj
bHVkZSIgdGl0bGU9ImxvZzIoZikiPgorPHQ+CitUaGUgYmFzZS10d28gbG9nYXJpdGhtIG9mIGYu
Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iaWxvZyIgdG9jPSJleGNsdWRl
IiB0aXRsZT0iaWxvZyhuKSI+Cis8dD4KK1RoZSBtaW5pbXVtIG51bWJlciBvZiBiaXRzIHJlcXVp
cmVkIHRvIHN0b3JlIGEgcG9zaXRpdmUgaW50ZWdlciBuIGluIHR3bydzCisgY29tcGxlbWVudCBu
b3RhdGlvbiwgb3IgMCBmb3IgYSBub24tcG9zaXRpdmUgaW50ZWdlciBuLgorPGZpZ3VyZSBhbGln
bj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAg
ICggMCwgICAgICAgICAgICAgICAgIG4gPD0gMCwKK2lsb2cobikgPSA8CisgICAgICAgICAgKCBm
bG9vcihsb2cyKG4pKSsxLCAgbiA+IDAKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorRXhhbXBs
ZXM6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5pbG9nKC0xKSA9IDA8L3Q+Cis8dD5pbG9n
KDApID0gMDwvdD4KKzx0Pmlsb2coMSkgPSAxPC90PgorPHQ+aWxvZygyKSA9IDI8L3Q+Cis8dD5p
bG9nKDMpID0gMjwvdD4KKzx0Pmlsb2coNCkgPSAzPC90PgorPHQ+aWxvZyg3KSA9IDM8L3Q+Cis8
L2xpc3Q+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8
c2VjdGlvbiBhbmNob3I9Im92ZXJ2aWV3IiB0aXRsZT0iT3B1cyBDb2RlYyBPdmVydmlldyI+CisK
Kzx0PgorVGhlIE9wdXMgY29kZWMgc2NhbGVzIGZyb20gNiZuYnNwO2tiL3MgbmFycm93YmFuZCBt
b25vIHNwZWVjaCB0byA1MTAmbmJzcDtrYi9zCisgZnVsbGJhbmQgc3RlcmVvIG11c2ljLCB3aXRo
IGFsZ29yaXRobWljIGRlbGF5cyByYW5naW5nIGZyb20gNSZuYnNwO21zIHRvCisgNjUuMiZuYnNw
O21zLgorQXQgYW55IGdpdmVuIHRpbWUsIGVpdGhlciB0aGUgTFAgbGF5ZXIsIHRoZSBNRENUIGxh
eWVyLCBvciBib3RoLCBtYXkgYmUgYWN0aXZlLgorSXQgY2FuIHNlYW1sZXNzbHkgc3dpdGNoIGJl
dHdlZW4gYWxsIG9mIGl0cyB2YXJpb3VzIG9wZXJhdGluZyBtb2RlcywgZ2l2aW5nIGl0CisgYSBn
cmVhdCBkZWFsIG9mIGZsZXhpYmlsaXR5IHRvIGFkYXB0IHRvIHZhcnlpbmcgY29udGVudCBhbmQg
bmV0d29yaworIGNvbmRpdGlvbnMgd2l0aG91dCByZW5lZ290aWF0aW5nIHRoZSBjdXJyZW50IHNl
c3Npb24uCitUaGUgY29kZWMgYWxsb3dzIGlucHV0IGFuZCBvdXRwdXQgb2YgdmFyaW91cyBhdWRp
byBiYW5kd2lkdGhzLCBkZWZpbmVkIGFzCisgZm9sbG93czoKKzwvdD4KKzx0ZXh0dGFibGUgYW5j
aG9yPSJhdWRpby1iYW5kd2lkdGgiPgorPHR0Y29sPkFiYnJldmlhdGlvbjwvdHRjb2w+Cis8dHRj
b2wgYWxpZ249InJpZ2h0Ij5BdWRpbyBCYW5kd2lkdGg8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJy
aWdodCI+U2FtcGxlIFJhdGUgKEVmZmVjdGl2ZSk8L3R0Y29sPgorPGM+TkIgKG5hcnJvd2JhbmQp
PC9jPiAgICAgICA8Yz40Jm5ic3A7a0h6PC9jPiAgPGM+OCZuYnNwO2tIejwvYz4KKzxjPk1CICht
ZWRpdW0tYmFuZCk8L2M+ICAgICAgPGM+NiZuYnNwO2tIejwvYz4gPGM+MTImbmJzcDtrSHo8L2M+
Cis8Yz5XQiAod2lkZWJhbmQpPC9jPiAgICAgICAgIDxjPjgmbmJzcDtrSHo8L2M+IDxjPjE2Jm5i
c3A7a0h6PC9jPgorPGM+U1dCIChzdXBlci13aWRlYmFuZCk8L2M+IDxjPjEyJm5ic3A7a0h6PC9j
PiA8Yz4yNCZuYnNwO2tIejwvYz4KKzxjPkZCIChmdWxsYmFuZCk8L2M+ICAgICAgICA8Yz4yMCZu
YnNwO2tIeiAoKik8L2M+IDxjPjQ4Jm5ic3A7a0h6PC9jPgorPC90ZXh0dGFibGU+Cis8dD4KKygq
KSBBbHRob3VnaCB0aGUgc2FtcGxpbmcgdGhlb3JlbSBhbGxvd3MgYSBiYW5kd2lkdGggYXMgbGFy
Z2UgYXMgaGFsZiB0aGUKKyBzYW1wbGluZyByYXRlLCBPcHVzIG5ldmVyIGNvZGVzIGF1ZGlvIGFi
b3ZlIDIwJm5ic3A7a0h6LCBhcyB0aGF0IGlzIHRoZQorIGdlbmVyYWxseSBhY2NlcHRlZCB1cHBl
ciBsaW1pdCBvZiBodW1hbiBoZWFyaW5nLgorPC90PgorCis8dD4KK09wdXMgZGVmaW5lcyBzdXBl
ci13aWRlYmFuZCAoU1dCKSB3aXRoIGFuIGVmZmVjdGl2ZSBzYW1wbGUgcmF0ZSBvZiAyNCZuYnNw
O2tIeiwKKyB1bmxpa2Ugc29tZSBvdGhlciBhdWRpbyBjb2Rpbmcgc3RhbmRhcmRzIHRoYXQgdXNl
IDMyJm5ic3A7a0h6LgorVGhpcyB3YXMgY2hvc2VuIGZvciBhIG51bWJlciBvZiByZWFzb25zLgor
VGhlIGJhbmQgbGF5b3V0IGluIHRoZSBNRENUIGxheWVyIG5hdHVyYWxseSBhbGxvd3Mgc2tpcHBp
bmcgY29lZmZpY2llbnRzIGZvcgorIGZyZXF1ZW5jaWVzIG92ZXIgMTImbmJzcDtrSHosIGJ1dCBk
b2VzIG5vdCBhbGxvdyBjbGVhbmx5IGRyb3BwaW5nIGp1c3QgdGhvc2UKKyBmcmVxdWVuY2llcyBv
dmVyIDE2Jm5ic3A7a0h6LgorQSBzYW1wbGUgcmF0ZSBvZiAyNCZuYnNwO2tIeiBhbHNvIG1ha2Vz
IHJlc2FtcGxpbmcgaW4gdGhlIE1EQ1QgbGF5ZXIgZWFzaWVyLAorIGFzIDI0IGV2ZW5seSBkaXZp
ZGVzIDQ4LCBhbmQgd2hlbiAyNCZuYnNwO2tIeiBpcyBzdWZmaWNpZW50LCBpdCBjYW4gc2F2ZQor
IGNvbXB1dGF0aW9uIGluIG90aGVyIHByb2Nlc3NpbmcsIHN1Y2ggYXMgQWNvdXN0aWMgRWNobyBD
YW5jZWxsYXRpb24gKEFFQykuCitFeHBlcmltZW50YWwgY2hhbmdlcyB0byB0aGUgYmFuZCBsYXlv
dXQgdG8gYWxsb3cgYSAxNiZuYnNwO2tIeiBjdXRvZmYKKyAoMzImbmJzcDtrSHogZWZmZWN0aXZl
IHNhbXBsZSByYXRlKSBzaG93ZWQgcG90ZW50aWFsIHF1YWxpdHkgZGVncmFkYXRpb25zIGF0Cisg
b3RoZXIgc2FtcGxlIHJhdGVzLCBhbmQgYXQgdHlwaWNhbCBiaXRyYXRlcyB0aGUgbnVtYmVyIG9m
IGJpdHMgc2F2ZWQgYnkgdXNpbmcKKyBzdWNoIGEgY3V0b2ZmIGluc3RlYWQgb2YgY29kaW5nIGlu
IGZ1bGxiYW5kIChGQikgbW9kZSBpcyB2ZXJ5IHNtYWxsLgorVGhlcmVmb3JlLCBpZiBhbiBhcHBs
aWNhdGlvbiB3aXNoZXMgdG8gcHJvY2VzcyBhIHNpZ25hbCBzYW1wbGVkIGF0IDMyJm5ic3A7a0h6
LAorIGl0IHNob3VsZCBqdXN0IHVzZSBGQi4KKzwvdD4KKworPHQ+CitUaGUgTFAgbGF5ZXIgaXMg
YmFzZWQgb24gdGhlIFNJTEsgY29kZWMKKyA8eHJlZiB0YXJnZXQ9IlNJTEsiPjwveHJlZj4uCitJ
dCBzdXBwb3J0cyBOQiwgTUIsIG9yIFdCIGF1ZGlvIGFuZCBmcmFtZSBzaXplcyBmcm9tIDEwJm5i
c3A7bXMgdG8gNjAmbmJzcDttcywKKyBhbmQgcmVxdWlyZXMgYW4gYWRkaXRpb25hbCA1Jm5ic3A7
bXMgbG9vay1haGVhZCBmb3Igbm9pc2Ugc2hhcGluZyBlc3RpbWF0aW9uLgorQSBzbWFsbCBhZGRp
dGlvbmFsIGRlbGF5ICh1cCB0byAxLjUgbXMpIG1heSBiZSByZXF1aXJlZCBmb3Igc2FtcGxpbmcg
cmF0ZQorIGNvbnZlcnNpb24uCitMaWtlIFZvcmJpcyA8eHJlZiB0YXJnZXQ9J1ZvcmJpcy13ZWJz
aXRlJy8+IGFuZCBtYW55IG90aGVyIG1vZGVybiBjb2RlY3MsIFNJTEsgaXMgaW5oZXJlbnRseSBk
ZXNpZ25lZCBmb3IKKyB2YXJpYWJsZS1iaXRyYXRlIChWQlIpIGNvZGluZywgdGhvdWdoIHRoZSBl
bmNvZGVyIGNhbiBhbHNvIHByb2R1Y2UKKyBjb25zdGFudC1iaXRyYXRlIChDQlIpIHN0cmVhbXMu
CitUaGUgdmVyc2lvbiBvZiBTSUxLIHVzZWQgaW4gT3B1cyBpcyBzdWJzdGFudGlhbGx5IG1vZGlm
aWVkIGZyb20sIGFuZCBub3QKKyBjb21wYXRpYmxlIHdpdGgsIHRoZSBzdGFuZC1hbG9uZSBTSUxL
IGNvZGVjIHByZXZpb3VzbHkgZGVwbG95ZWQgYnkgU2t5cGUuCitUaGlzIGRvY3VtZW50IGRvZXMg
bm90IHNlcnZlIHRvIGRlZmluZSB0aGF0IGZvcm1hdCwgYnV0IHRob3NlIGludGVyZXN0ZWQgaW4g
dGhlCisgb3JpZ2luYWwgU0lMSyBjb2RlYyBzaG91bGQgc2VlIDx4cmVmIHRhcmdldD0iU0lMSyIv
PiBpbnN0ZWFkLgorPC90PgorCis8dD4KK1RoZSBNRENUIGxheWVyIGlzIGJhc2VkIG9uIHRoZSBD
RUxUICBjb2RlYyA8eHJlZiB0YXJnZXQ9IkNFTFQiPjwveHJlZj4uCitJdCBzdXBwb3J0cyBOQiwg
V0IsIFNXQiwgb3IgRkIgYXVkaW8gYW5kIGZyYW1lIHNpemVzIGZyb20gMi41Jm5ic3A7bXMgdG8K
KyAyMCZuYnNwO21zLCBhbmQgcmVxdWlyZXMgYW4gYWRkaXRpb25hbCAyLjUmbmJzcDttcyBsb29r
LWFoZWFkIGR1ZSB0byB0aGUKKyBvdmVybGFwcGluZyBNRENUIHdpbmRvd3MuCitUaGUgQ0VMVCBj
b2RlYyBpcyBpbmhlcmVudGx5IGRlc2lnbmVkIGZvciBDQlIgY29kaW5nLCBidXQgdW5saWtlIG1h
bnkgQ0JSCisgY29kZWNzIGl0IGlzIG5vdCBsaW1pdGVkIHRvIGEgc2V0IG9mIHByZWRldGVybWlu
ZWQgcmF0ZXMuCitJdCBpbnRlcm5hbGx5IGFsbG9jYXRlcyBiaXRzIHRvIGV4YWN0bHkgZmlsbCBh
bnkgZ2l2ZW4gdGFyZ2V0IGJ1ZGdldCwgYW5kIGFuCisgZW5jb2RlciBjYW4gcHJvZHVjZSBhIFZC
UiBzdHJlYW0gYnkgdmFyeWluZyB0aGUgdGFyZ2V0IG9uIGEgcGVyLWZyYW1lIGJhc2lzLgorVGhl
IE1EQ1QgbGF5ZXIgaXMgbm90IHVzZWQgZm9yIHNwZWVjaCB3aGVuIHRoZSBhdWRpbyBiYW5kd2lk
dGggaXMgV0Igb3IgbGVzcywKKyBhcyBpdCBpcyBub3QgdXNlZnVsIHRoZXJlLgorT24gdGhlIG90
aGVyIGhhbmQsIG5vbi1zcGVlY2ggc2lnbmFscyBhcmUgbm90IGFsd2F5cyBhZGVxdWF0ZWx5IGNv
ZGVkIHVzaW5nCisgbGluZWFyIHByZWRpY3Rpb24sIHNvIGZvciBtdXNpYyBvbmx5IHRoZSBNRENU
IGxheWVyIHNob3VsZCBiZSB1c2VkLgorPC90PgorCis8dD4KK0EgIkh5YnJpZCIgbW9kZSBhbGxv
d3MgdGhlIHVzZSBvZiBib3RoIGxheWVycyBzaW11bHRhbmVvdXNseSB3aXRoIGEgZnJhbWUgc2l6
ZQorIG9mIDEwJm5ic3A7b3IgMjAmbmJzcDttcyBhbmQgYSBTV0Igb3IgRkIgYXVkaW8gYmFuZHdp
ZHRoLgorVGhlIExQIGxheWVyIGNvZGVzIHRoZSBsb3cgZnJlcXVlbmNpZXMgYnkgcmVzYW1wbGlu
ZyB0aGUgc2lnbmFsIGRvd24gdG8gV0IuCitUaGUgTURDVCBsYXllciBmb2xsb3dzLCBjb2Rpbmcg
dGhlIGhpZ2ggZnJlcXVlbmN5IHBvcnRpb24gb2YgdGhlIHNpZ25hbC4KK1RoZSBjdXRvZmYgYmV0
d2VlbiB0aGUgdHdvIGxpZXMgYXQgOCZuYnNwO2tIeiwgdGhlIG1heGltdW0gV0IgYXVkaW8gYmFu
ZHdpZHRoLgorSW4gdGhlIE1EQ1QgbGF5ZXIsIGFsbCBiYW5kcyBiZWxvdyA4Jm5ic3A7a0h6IGFy
ZSBkaXNjYXJkZWQsIHNvIHRoZXJlIGlzIG5vCisgY29kaW5nIHJlZHVuZGFuY3kgYmV0d2VlbiB0
aGUgdHdvIGxheWVycy4KKzwvdD4KKworPHQ+CitUaGUgc2FtcGxlIHJhdGUgKGluIGNvbnRyYXN0
IHRvIHRoZSBhY3R1YWwgYXVkaW8gYmFuZHdpZHRoKSBjYW4gYmUgY2hvc2VuCisgaW5kZXBlbmRl
bnRseSBvbiB0aGUgZW5jb2RlciBhbmQgZGVjb2RlciBzaWRlLCBlLmcuLCBhIGZ1bGxiYW5kIHNp
Z25hbCBjYW4gYmUKKyBkZWNvZGVkIGFzIHdpZGViYW5kLCBvciB2aWNlIHZlcnNhLgorVGhpcyBh
cHByb2FjaCBlbnN1cmVzIGEgc2VuZGVyIGFuZCByZWNlaXZlciBjYW4gYWx3YXlzIGludGVyb3Bl
cmF0ZSwgcmVnYXJkbGVzcworIG9mIHRoZSBjYXBhYmlsaXRpZXMgb2YgdGhlaXIgYWN0dWFsIGF1
ZGlvIGhhcmR3YXJlLgorSW50ZXJuYWxseSwgdGhlIExQIGxheWVyIGFsd2F5cyBvcGVyYXRlcyBh
dCBhIHNhbXBsZSByYXRlIG9mIHR3aWNlIHRoZSBhdWRpbworIGJhbmR3aWR0aCwgdXAgdG8gYSBt
YXhpbXVtIG9mIDE2Jm5ic3A7a0h6LCB3aGljaCBpdCBjb250aW51ZXMgdG8gdXNlIGZvciBTV0IK
KyBhbmQgRkIuCitUaGUgZGVjb2RlciBzaW1wbHkgcmVzYW1wbGVzIGl0cyBvdXRwdXQgdG8gc3Vw
cG9ydCBkaWZmZXJlbnQgc2FtcGxlIHJhdGVzLgorVGhlIE1EQ1QgbGF5ZXIgYWx3YXlzIG9wZXJh
dGVzIGludGVybmFsbHkgYXQgYSBzYW1wbGUgcmF0ZSBvZiA0OCZuYnNwO2tIei4KK1NpbmNlIGFs
bCB0aGUgc3VwcG9ydGVkIHNhbXBsZSByYXRlcyBldmVubHkgZGl2aWRlIHRoaXMgcmF0ZSwgYW5k
IHNpbmNlIHRoZQorIHRoZSBkZWNvZGVyIG1heSBlYXNpbHkgemVybyBvdXQgdGhlIGhpZ2ggZnJl
cXVlbmN5IHBvcnRpb24gb2YgdGhlIHNwZWN0cnVtIGluCisgdGhlIGZyZXF1ZW5jeSBkb21haW4s
IGl0IGNhbiBzaW1wbHkgZGVjaW1hdGUgdGhlIE1EQ1QgbGF5ZXIgb3V0cHV0IHRvIGFjaGlldmUK
KyB0aGUgb3RoZXIgc3VwcG9ydGVkIHNhbXBsZSByYXRlcyB2ZXJ5IGNoZWFwbHkuCis8L3Q+CisK
Kzx0PgorQWZ0ZXIgY29udmVyc2lvbiB0byB0aGUgY29tbW9uLCBkZXNpcmVkIG91dHB1dCBzYW1w
bGUgcmF0ZSwgdGhlIGRlY29kZXIgc2ltcGx5CisgYWRkcyB0aGUgb3V0cHV0IGZyb20gdGhlIHR3
byBsYXllcnMgdG9nZXRoZXIuCitUbyBjb21wZW5zYXRlIGZvciB0aGUgZGlmZmVyZW50IGxvb2st
YWhlYWQgcmVxdWlyZWQgYnkgZWFjaCBsYXllciwgdGhlIENFTFQKKyBlbmNvZGVyIGlucHV0IGlz
IGRlbGF5ZWQgYnkgYW4gYWRkaXRpb25hbCAyLjcmbmJzcDttcy4KK1RoaXMgZW5zdXJlcyB0aGF0
IGxvdyBmcmVxdWVuY2llcyBhbmQgaGlnaCBmcmVxdWVuY2llcyBhcnJpdmUgYXQgdGhlIHNhbWUg
dGltZS4KK1RoaXMgZXh0cmEgZGVsYXkgbWF5IGJlIHJlZHVjZWQgYnkgYW4gZW5jb2RlciBieSB1
c2luZyBsZXNzIGxvb2stYWhlYWQgZm9yIG5vaXNlCisgc2hhcGluZyBvciB1c2luZyBhIHNpbXBs
ZXIgcmVzYW1wbGVyIGluIHRoZSBMUCBsYXllciwgYnV0IHRoaXMgd2lsbCByZWR1Y2UKKyBxdWFs
aXR5LgorSG93ZXZlciwgdGhlIGJhc2UgMi41Jm5ic3A7bXMgbG9vay1haGVhZCBpbiB0aGUgQ0VM
VCBsYXllciBjYW5ub3QgYmUgcmVkdWNlZCBpbgorIHRoZSBlbmNvZGVyIGJlY2F1c2UgaXQgaXMg
bmVlZGVkIGZvciB0aGUgTURDVCBvdmVybGFwLCB3aG9zZSBzaXplIGlzIGZpeGVkIGJ5CisgdGhl
IGRlY29kZXIuCis8L3Q+CisKKzx0PgorQm90aCBsYXllcnMgdXNlIHRoZSBzYW1lIGVudHJvcHkg
Y29kZXIsIGF2b2lkaW5nIGFueSB3YXN0ZSBmcm9tICJwYWRkaW5nIGJpdHMiCisgYmV0d2VlbiB0
aGVtLgorVGhlIGh5YnJpZCBhcHByb2FjaCBtYWtlcyBpdCBlYXN5IHRvIHN1cHBvcnQgYm90aCBD
QlIgYW5kIFZCUiBjb2RpbmcuCitBbHRob3VnaCB0aGUgTFAgbGF5ZXIgaXMgVkJSLCB0aGUgYml0
IGFsbG9jYXRpb24gb2YgdGhlIE1EQ1QgbGF5ZXIgY2FuIHByb2R1Y2UKKyBhIGZpbmFsIHN0cmVh
bSB0aGF0IGlzIENCUiBieSB1c2luZyBhbGwgdGhlIGJpdHMgbGVmdCB1bnVzZWQgYnkgdGhlIExQ
IGxheWVyLgorPC90PgorCis8c2VjdGlvbiB0aXRsZT0iQ29udHJvbCBQYXJhbWV0ZXJzIj4KKzx0
PgorVGhlIE9wdXMgY29kZWMgaW5jbHVkZXMgYSBudW1iZXIgb2YgY29udHJvbCBwYXJhbWV0ZXJz
IHdoaWNoIGNhbiBiZSBjaGFuZ2VkIGR5bmFtaWNhbGx5IGR1cmluZworcmVndWxhciBvcGVyYXRp
b24gb2YgdGhlIGNvZGVjLCB3aXRob3V0IGludGVycnVwdGluZyB0aGUgYXVkaW8gc3RyZWFtIGZy
b20gdGhlIGVuY29kZXIgdG8gdGhlIGRlY29kZXIuCitUaGVzZSBwYXJhbWV0ZXJzIG9ubHkgYWZm
ZWN0IHRoZSBlbmNvZGVyIHNpbmNlIGFueSBpbXBhY3QgdGhleSBoYXZlIG9uIHRoZSBiaXQtc3Ry
ZWFtIGlzIHNpZ25hbGVkCitpbi1iYW5kIHN1Y2ggdGhhdCBhIGRlY29kZXIgY2FuIGRlY29kZSBh
bnkgT3B1cyBzdHJlYW0gd2l0aG91dCBhbnkgb3V0LW9mLWJhbmQgc2lnbmFsaW5nLiBBbnkgT3B1
cworaW1wbGVtZW50YXRpb24gY2FuIGFkZCBvciBtb2RpZnkgdGhlc2UgY29udHJvbCBwYXJhbWV0
ZXJzIHdpdGhvdXQgYWZmZWN0aW5nIGludGVyb3BlcmFiaWxpdHkuIFRoZSBtb3N0CitpbXBvcnRh
bnQgZW5jb2RlciBjb250cm9sIHBhcmFtZXRlcnMgaW4gdGhlIHJlZmVyZW5jZSBlbmNvZGVyIGFy
ZSBsaXN0ZWQgYmVsb3cuCis8L3Q+CisKKzxzZWN0aW9uIHRpdGxlPSJCaXRyYXRlIiB0b2M9ImV4
bGN1ZGUiPgorPHQ+CitPcHVzIHN1cHBvcnRzIGFsbCBiaXRyYXRlcyBmcm9tIDYmbmJzcDtrYi9z
IHRvIDUxMCZuYnNwO2tiL3MuIEFsbCBvdGhlciBwYXJhbWV0ZXJzIGJlaW5nCitlcXVhbCwgaGln
aGVyIGJpdHJhdGUgcmVzdWx0cyBpbiBoaWdoZXIgcXVhbGl0eS4gRm9yIGEgZnJhbWUgc2l6ZSBv
ZiAyMCZuYnNwO21zLCB0aGVzZQorYXJlIHRoZSBiaXRyYXRlICJzd2VldCBzcG90cyIgZm9yIE9w
dXMgaW4gdmFyaW91cyBjb25maWd1cmF0aW9uczoKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0
PjgtMTIga2IvcyBmb3IgTkIgc3BlZWNoLDwvdD4KKzx0PjE2LTIwIGtiL3MgZm9yIFdCIHNwZWVj
aCw8L3Q+Cis8dD4yOC00MCBrYi9zIGZvciBGQiBzcGVlY2gsPC90PgorPHQ+NDgtNjQga2IvcyBm
b3IgRkIgbW9ubyBtdXNpYywgYW5kPC90PgorPHQ+NjQtMTI4IGtiL3MgZm9yIEZCIHN0ZXJlbyBt
dXNpYy48L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJO
dW1iZXIgb2YgQ2hhbm5lbHMgKE1vbm8vU3RlcmVvKSIgdG9jPSJleGxjdWRlIj4KKzx0PgorT3B1
cyBjYW4gdHJhbnNtaXQgZWl0aGVyIG1vbm8gb3Igc3RlcmVvIGZyYW1lcyB3aXRoaW4gYSBzaW5n
bGUgc3RyZWFtLgorV2hlbiBkZWNvZGluZyBhIG1vbm8gZnJhbWUgaW4gYSBzdGVyZW8gZGVjb2Rl
ciwgdGhlIGxlZnQgYW5kIHJpZ2h0IGNoYW5uZWxzIGFyZQorIGlkZW50aWNhbCwgYW5kIHdoZW4g
ZGVjb2RpbmcgYSBzdGVyZW8gZnJhbWUgaW4gYSBtb25vIGRlY29kZXIsIHRoZSBtb25vIG91dHB1
dAorIGlzIHRoZSBhdmVyYWdlIG9mIHRoZSBsZWZ0IGFuZCByaWdodCBjaGFubmVscy4KK0luIHNv
bWUgY2FzZXMsIGl0IGlzIGRlc2lyYWJsZSB0byBlbmNvZGUgYSBzdGVyZW8gaW5wdXQgc3RyZWFt
IGluIG1vbm8gKGUuZy4sCisgYmVjYXVzZSB0aGUgYml0cmF0ZSBpcyB0b28gbG93IHRvIGVuY29k
ZSBzdGVyZW8gd2l0aCBzdWZmaWNpZW50IHF1YWxpdHkpLgorVGhlIG51bWJlciBvZiBjaGFubmVs
cyBlbmNvZGVkIGNhbiBiZSBzZWxlY3RlZCBpbiByZWFsLXRpbWUsIGJ1dCBieSBkZWZhdWx0IHRo
ZQorIHJlZmVyZW5jZSBlbmNvZGVyIGF0dGVtcHRzIHRvIG1ha2UgdGhlIGJlc3QgZGVjaXNpb24g
cG9zc2libGUgZ2l2ZW4gdGhlCisgY3VycmVudCBiaXRyYXRlLgorPC90PgorPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiB0aXRsZT0iQXVkaW8gQmFuZHdpZHRoIiB0b2M9ImV4bGN1ZGUiPgorPHQ+CitU
aGUgYXVkaW8gYmFuZHdpZHRocyBzdXBwb3J0ZWQgYnkgT3B1cyBhcmUgbGlzdGVkIGluCisgPHhy
ZWYgdGFyZ2V0PSJhdWRpby1iYW5kd2lkdGgiLz4uCitKdXN0IGxpa2UgZm9yIHRoZSBudW1iZXIg
b2YgY2hhbm5lbHMsIGFueSBkZWNvZGVyIGNhbiBkZWNvZGUgYXVkaW8gZW5jb2RlZCBhdAorIGFu
eSBiYW5kd2lkdGguCitGb3IgZXhhbXBsZSwgYW55IE9wdXMgZGVjb2RlciBvcGVyYXRpbmcgYXQg
OCZuYnNwO2tIeiBjYW4gZGVjb2RlIGEgRkIgT3B1cworIGZyYW1lLCBhbmQgYW55IE9wdXMgZGVj
b2RlciBvcGVyYXRpbmcgYXQgNDgmbmJzcDtrSHogY2FuIGRlY29kZSBhIE5CIGZyYW1lLgorU2lt
aWxhcmx5LCB0aGUgcmVmZXJlbmNlIGVuY29kZXIgY2FuIHRha2UgYSA0OCZuYnNwO2tIeiBpbnB1
dCBzaWduYWwgYW5kCisgZW5jb2RlIGl0IGFzIE5CLgorVGhlIGhpZ2hlciB0aGUgYXVkaW8gYmFu
ZHdpZHRoLCB0aGUgaGlnaGVyIHRoZSByZXF1aXJlZCBiaXRyYXRlIHRvIGFjaGlldmUKKyBhY2Nl
cHRhYmxlIHF1YWxpdHkuCitUaGUgYXVkaW8gYmFuZHdpZHRoIGNhbiBiZSBleHBsaWNpdGx5IHNw
ZWNpZmllZCBpbiByZWFsLXRpbWUsIGJ1dCBieSBkZWZhdWx0CisgdGhlIHJlZmVyZW5jZSBlbmNv
ZGVyIGF0dGVtcHRzIHRvIG1ha2UgdGhlIGJlc3QgYmFuZHdpZHRoIGRlY2lzaW9uIHBvc3NpYmxl
CisgZ2l2ZW4gdGhlIGN1cnJlbnQgYml0cmF0ZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworCis8c2Vj
dGlvbiB0aXRsZT0iRnJhbWUgRHVyYXRpb24iIHRvYz0iZXhsY3VkZSI+Cis8dD4KK09wdXMgY2Fu
IGVuY29kZSBmcmFtZXMgb2YgMi41LCA1LCAxMCwgMjAsIDQwIG9yIDYwJm5ic3A7bXMuCitJdCBj
YW4gYWxzbyBjb21iaW5lIG11bHRpcGxlIGZyYW1lcyBpbnRvIHBhY2tldHMgb2YgdXAgdG8gMTIw
Jm5ic3A7bXMuCitGb3IgcmVhbC10aW1lIGFwcGxpY2F0aW9ucywgc2VuZGluZyBmZXdlciBwYWNr
ZXRzIHBlciBzZWNvbmQgcmVkdWNlcyB0aGUKKyBiaXRyYXRlLCBzaW5jZSBpdCByZWR1Y2VzIHRo
ZSBvdmVyaGVhZCBmcm9tIElQLCBVRFAsIGFuZCBSVFAgaGVhZGVycy4KK0hvd2V2ZXIsIGl0IGlu
Y3JlYXNlcyBsYXRlbmN5IGFuZCBzZW5zaXRpdml0eSB0byBwYWNrZXQgbG9zc2VzLCBhcyBsb3Np
bmcgb25lCisgcGFja2V0IGNvbnN0aXR1dGVzIGEgbG9zcyBvZiBhIGJpZ2dlciBjaHVuayBvZiBh
dWRpby4KK0luY3JlYXNpbmcgdGhlIGZyYW1lIGR1cmF0aW9uIGFsc28gc2xpZ2h0bHkgaW1wcm92
ZXMgY29kaW5nIGVmZmljaWVuY3ksIGJ1dCB0aGUKKyBnYWluIGJlY29tZXMgc21hbGwgZm9yIGZy
YW1lIHNpemVzIGFib3ZlIDIwJm5ic3A7bXMuCitGb3IgdGhpcyByZWFzb24sIDIwJm5ic3A7bXMg
ZnJhbWVzIGFyZSBhIGdvb2QgY2hvaWNlIGZvciBtb3N0IGFwcGxpY2F0aW9ucy4KKzwvdD4KKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IkNvbXBsZXhpdHkiIHRvYz0iZXhsY3VkZSI+Cis8
dD4KK1RoZXJlIGFyZSB2YXJpb3VzIGFzcGVjdHMgb2YgdGhlIE9wdXMgZW5jb2RpbmcgcHJvY2Vz
cyB3aGVyZSB0cmFkZS1vZmZzCitjYW4gYmUgbWFkZSBiZXR3ZWVuIENQVSBjb21wbGV4aXR5IGFu
ZCBxdWFsaXR5L2JpdHJhdGUuIEluIHRoZSByZWZlcmVuY2UKK2VuY29kZXIsIHRoZSBjb21wbGV4
aXR5IGlzIHNlbGVjdGVkIHVzaW5nIGFuIGludGVnZXIgZnJvbSAwIHRvIDEwLCB3aGVyZQorMCBp
cyB0aGUgbG93ZXN0IGNvbXBsZXhpdHkgYW5kIDEwIGlzIHRoZSBoaWdoZXN0LiBFeGFtcGxlcyBv
ZgorY29tcHV0YXRpb25zIGZvciB3aGljaCBzdWNoIHRyYWRlLW9mZnMgbWF5IG9jY3VyIGFyZToK
KzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PlRoZSBvcmRlciBvZiB0aGUgcGl0Y2ggYW5hbHlz
aXMgd2hpdGVuaW5nIGZpbHRlciA8eHJlZiB0YXJnZXQ9IldoaXRlbmluZyIvPiw8L3Q+Cis8dD5U
aGUgb3JkZXIgb2YgdGhlIHNob3J0LXRlcm0gbm9pc2Ugc2hhcGluZyBmaWx0ZXIsPC90PgorPHQ+
VGhlIG51bWJlciBvZiBzdGF0ZXMgaW4gZGVsYXllZCBkZWNpc2lvbiBxdWFudGl6YXRpb24gb2Yg
dGhlCityZXNpZHVhbCBzaWduYWwsIGFuZDwvdD4KKzx0PlRoZSB1c2Ugb2YgY2VydGFpbiBiaXQt
c3RyZWFtIGZlYXR1cmVzIHN1Y2ggYXMgdmFyaWFibGUgdGltZS1mcmVxdWVuY3kKK3Jlc29sdXRp
b24gYW5kIHRoZSBwaXRjaCBwb3N0LWZpbHRlci48L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIHRpdGxlPSJQYWNrZXQgTG9zcyBSZXNpbGllbmNlIiB0b2M9ImV4bGN1
ZGUiPgorPHQ+CitBdWRpbyBjb2RlY3Mgb2Z0ZW4gZXhwbG9pdCBpbnRlci1mcmFtZSBjb3JyZWxh
dGlvbnMgdG8gcmVkdWNlIHRoZQorYml0cmF0ZSBhdCBhIGNvc3QgaW4gZXJyb3IgcHJvcGFnYXRp
b246IGFmdGVyIGxvc2luZyBvbmUgcGFja2V0CitzZXZlcmFsIHBhY2tldHMgbmVlZCB0byBiZSBy
ZWNlaXZlZCBiZWZvcmUgdGhlIGRlY29kZXIgaXMgYWJsZSB0bworYWNjdXJhdGVseSByZWNvbnN0
cnVjdCB0aGUgc3BlZWNoIHNpZ25hbC4gIFRoZSBleHRlbnQgdG8gd2hpY2ggT3B1cworZXhwbG9p
dHMgaW50ZXItZnJhbWUgZGVwZW5kZW5jaWVzIGNhbiBiZSBhZGp1c3RlZCBvbiB0aGUgZmx5IHRv
CitjaG9vc2UgYSB0cmFkZS1vZmYgYmV0d2VlbiBiaXRyYXRlIGFuZCBhbW91bnQgb2YgZXJyb3Ig
cHJvcGFnYXRpb24uCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJGb3J3YXJk
IEVycm9yIENvcnJlY3Rpb24gKEZFQykiIHRvYz0iZXhsY3VkZSI+Cis8dD4KKyAgIEFub3RoZXIg
bWVjaGFuaXNtIHByb3ZpZGluZyByb2J1c3RuZXNzIGFnYWluc3QgcGFja2V0IGxvc3MgaXMgdGhl
IGluLWJhbmQKKyAgIEZvcndhcmQgRXJyb3IgQ29ycmVjdGlvbiAoRkVDKS4gIFBhY2tldHMgdGhh
dCBhcmUgZGV0ZXJtaW5lZCB0bworICAgY29udGFpbiBwZXJjZXB0dWFsbHkgaW1wb3J0YW50IHNw
ZWVjaCBpbmZvcm1hdGlvbiwgc3VjaCBhcyBvbnNldHMgb3IKKyAgIHRyYW5zaWVudHMsIGFyZSBl
bmNvZGVkIGFnYWluIGF0IGEgbG93ZXIgYml0cmF0ZSBhbmQgdGhpcyByZS1lbmNvZGVkCisgICBp
bmZvcm1hdGlvbiBpcyBhZGRlZCB0byBhIHN1YnNlcXVlbnQgcGFja2V0LgorPC90PgorPC9zZWN0
aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQ29uc3RhbnQvVmFyaWFibGUgQml0cmF0ZSIgdG9jPSJl
eGxjdWRlIj4KKzx0PgorT3B1cyBpcyBtb3JlIGVmZmljaWVudCB3aGVuIG9wZXJhdGluZyB3aXRo
IHZhcmlhYmxlIGJpdHJhdGUgKFZCUiksIHdoaWNoIGlzCit0aGUgZGVmYXVsdC4gSG93ZXZlciwg
aW4gc29tZSAocmFyZSkgYXBwbGljYXRpb25zLCBjb25zdGFudCBiaXRyYXRlIChDQlIpCitpcyBy
ZXF1aXJlZC4gVGhlcmUgYXJlIHR3byBtYWluIHJlYXNvbnMgdG8gb3BlcmF0ZSBpbiBDQlIgbW9k
ZToKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PldoZW4gdGhlIHRyYW5zcG9ydCBvbmx5IHN1
cHBvcnRzIGEgZml4ZWQgc2l6ZSBmb3IgZWFjaCBjb21wcmVzc2VkIGZyYW1lPC90PgorPHQ+V2hl
biBlbmNyeXB0aW9uIGlzIHVzZWQgZm9yIGFuIGF1ZGlvIHN0cmVhbSB0aGF0IGlzIGVpdGhlciBo
aWdobHkgY29uc3RyYWluZWQKKyAgIChlLmcuIHllcy9ubywgcmVjb3JkZWQgcHJvbXB0cykgb3Ig
aGlnaGx5IHNlbnNpdGl2ZSA8eHJlZiB0YXJnZXQ9IlNSVFAtVkJSIj48L3hyZWY+IDwvdD4KKzwv
bGlzdD4KKworV2hlbiBsb3ctbGF0ZW5jeSB0cmFuc21pc3Npb24gaXMgcmVxdWlyZWQgb3ZlciBh
IHJlbGF0aXZlbHkgc2xvdyBjb25uZWN0aW9uLCB0aGVuCitjb25zdHJhaW5lZCBWQlIgY2FuIGFs
c28gYmUgdXNlZC4gVGhpcyB1c2VzIFZCUiBpbiBhIHdheSB0aGF0IHNpbXVsYXRlcyBhCisiYml0
IHJlc2Vydm9pciIgYW5kIGlzIGVxdWl2YWxlbnQgdG8gd2hhdCBNUDMgKE1QRUcgMSwgTGF5ZXIg
MykgYW5kCitBQUMgKEFkdmFuY2VkIEF1ZGlvIENvZGluZykgY2FsbCBDQlIgKGkuZS4sIG5vdCB0
cnVlCitDQlIgZHVlIHRvIHRoZSBiaXQgcmVzZXJ2b2lyKS4KKzwvdD4KKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gdGl0bGU9IkRpc2NvbnRpbnVvdXMgVHJhbnNtaXNzaW9uIChEVFgpIiB0b2M9ImV4
bGN1ZGUiPgorPHQ+CisgICBEaXNjb250aW51b3VzIFRyYW5zbWlzc2lvbiAoRFRYKSByZWR1Y2Vz
IHRoZSBiaXRyYXRlIGR1cmluZyBzaWxlbmNlCisgICBvciBiYWNrZ3JvdW5kIG5vaXNlLiAgV2hl
biBEVFggaXMgZW5hYmxlZCwgb25seSBvbmUgZnJhbWUgaXMgZW5jb2RlZAorICAgZXZlcnkgNDAw
IG1pbGxpc2Vjb25kcy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIGFuY2hvcj0ibW9kZXMiIHRpdGxlPSJJbnRlcm5hbCBGcmFtaW5nIj4K
KworPHQ+CitUaGUgT3B1cyBlbmNvZGVyIHByb2R1Y2VzICJwYWNrZXRzIiwgd2hpY2ggYXJlIGVh
Y2ggYSBjb250aWd1b3VzIHNldCBvZiBieXRlcworIG1lYW50IHRvIGJlIHRyYW5zbWl0dGVkIGFz
IGEgc2luZ2xlIHVuaXQuCitUaGUgcGFja2V0cyBkZXNjcmliZWQgaGVyZSBkbyBub3QgaW5jbHVk
ZSBzdWNoIHRoaW5ncyBhcyBJUCwgVURQLCBvciBSVFAKKyBoZWFkZXJzIHdoaWNoIGFyZSBub3Jt
YWxseSBmb3VuZCBpbiBhIHRyYW5zcG9ydC1sYXllciBwYWNrZXQuCitBIHNpbmdsZSBwYWNrZXQg
bWF5IGNvbnRhaW4gbXVsdGlwbGUgYXVkaW8gZnJhbWVzLCBzbyBsb25nIGFzIHRoZXkgc2hhcmUg
YQorIGNvbW1vbiBzZXQgb2YgcGFyYW1ldGVycywgaW5jbHVkaW5nIHRoZSBvcGVyYXRpbmcgbW9k
ZSwgYXVkaW8gYmFuZHdpZHRoLCBmcmFtZQorIHNpemUsIGFuZCBjaGFubmVsIGNvdW50IChtb25v
IHZzLiBzdGVyZW8pLgorVGhpcyBzZWN0aW9uIGRlc2NyaWJlcyB0aGUgcG9zc2libGUgY29tYmlu
YXRpb25zIG9mIHRoZXNlIHBhcmFtZXRlcnMgYW5kIHRoZQorIGludGVybmFsIGZyYW1pbmcgdXNl
ZCB0byBwYWNrIG11bHRpcGxlIGZyYW1lcyBpbnRvIGEgc2luZ2xlIHBhY2tldC4KK1RoaXMgZnJh
bWluZyBpcyBub3Qgc2VsZi1kZWxpbWl0aW5nLgorSW5zdGVhZCwgaXQgYXNzdW1lcyB0aGF0IGEg
aGlnaGVyIGxheWVyIChzdWNoIGFzIFVEUCBvciBSVFAgPHhyZWYgdGFyZ2V0PSdSRkMzNTUwJy8+
CitvciBPZ2cgPHhyZWYgdGFyZ2V0PSdSRkMzNTMzJy8+IG9yIE1hdHJvc2thIDx4cmVmIHRhcmdl
dD0nTWF0cm9za2Etd2Vic2l0ZScvPikKKyB3aWxsIGNvbW11bmljYXRlIHRoZSBsZW5ndGgsIGlu
IGJ5dGVzLCBvZiB0aGUgcGFja2V0LCBhbmQgaXQgdXNlcyB0aGlzCisgaW5mb3JtYXRpb24gdG8g
cmVkdWNlIHRoZSBmcmFtaW5nIG92ZXJoZWFkIGluIHRoZSBwYWNrZXQgaXRzZWxmLgorQSBkZWNv
ZGVyIGltcGxlbWVudGF0aW9uIE1VU1Qgc3VwcG9ydCB0aGUgZnJhbWluZyBkZXNjcmliZWQgaW4g
dGhpcyBzZWN0aW9uLgorQW4gYWx0ZXJuYXRpdmUsIHNlbGYtZGVsaW1pdGluZyB2YXJpYW50IG9m
IHRoZSBmcmFtaW5nIGlzIGRlc2NyaWJlZCBpbgorIDx4cmVmIHRhcmdldD0ic2VsZi1kZWxpbWl0
aW5nLWZyYW1pbmciLz4uCitTdXBwb3J0IGZvciB0aGF0IHZhcmlhbnQgaXMgT1BUSU9OQUwuCis8
L3Q+CisKKzx0PgorQWxsIGJpdCBkaWFncmFtcyBpbiB0aGlzIGRvY3VtZW50IG51bWJlciB0aGUg
Yml0cyBzbyB0aGF0IGJpdCAwIGlzIHRoZSBtb3N0Cisgc2lnbmlmaWNhbnQgYml0IG9mIHRoZSBm
aXJzdCBieXRlLCBhbmQgYml0IDcgaXMgdGhlIGxlYXN0IHNpZ25pZmljYW50LgorQml0IDggaXMg
dGh1cyB0aGUgbW9zdCBzaWduaWZpY2FudCBiaXQgb2YgdGhlIHNlY29uZCBieXRlLCBldGMuCitX
ZWxsLWZvcm1lZCBPcHVzIHBhY2tldHMgb2JleSBjZXJ0YWluIHJlcXVpcmVtZW50cywgbWFya2Vk
IFtSMV0gdGhyb3VnaCBbUjddCisgYmVsb3cuCitUaGVzZSBhcmUgc3VtbWFyaXplZCBpbiA8eHJl
ZiB0YXJnZXQ9Im1hbGZvcm1lZC1wYWNrZXRzIi8+IGFsb25nIHdpdGgKKyBhcHByb3ByaWF0ZSBt
ZWFucyBvZiBoYW5kbGluZyBtYWxmb3JtZWQgcGFja2V0cy4KKzwvdD4KKworPHNlY3Rpb24gYW5j
aG9yPSJ0b2NfYnl0ZSIgdGl0bGU9IlRoZSBUT0MgQnl0ZSI+Cis8dCBhbmNob3I9IlIxIj4KK0Eg
d2VsbC1mb3JtZWQgT3B1cyBwYWNrZXQgTVVTVCBjb250YWluIGF0IGxlYXN0IG9uZSBieXRlJm5i
c3A7W1IxXS4KK1RoaXMgYnl0ZSBmb3JtcyBhIHRhYmxlLW9mLWNvbnRlbnRzIChUT0MpIGhlYWRl
ciB0aGF0IHNpZ25hbHMgd2hpY2ggb2YgdGhlCisgdmFyaW91cyBtb2RlcyBhbmQgY29uZmlndXJh
dGlvbnMgYSBnaXZlbiBwYWNrZXQgdXNlcy4KK0l0IGlzIGNvbXBvc2VkIG9mIGEgY29uZmlndXJh
dGlvbiBudW1iZXIsICJjb25maWciLCBhIHN0ZXJlbyBmbGFnLCAicyIsIGFuZCBhCisgZnJhbWUg
Y291bnQgY29kZSwgImMiLCBhcnJhbmdlZCBhcyBpbGx1c3RyYXRlZCBpbgorIDx4cmVmIHRhcmdl
dD0idG9jX2J5dGVfZmlnIi8+LgorQSBkZXNjcmlwdGlvbiBvZiBlYWNoIG9mIHRoZXNlIGZpZWxk
cyBmb2xsb3dzLgorPC90PgorCis8ZmlndXJlIGFuY2hvcj0idG9jX2J5dGVfZmlnIiB0aXRsZT0i
VGhlIFRPQyBCeXRlIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAKKyAw
IDEgMiAzIDQgNSA2IDcKKystKy0rLSstKy0rLSstKy0rCit8IGNvbmZpZyAgfHN8IGMgfAorKy0r
LSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8dD4KK1RoZSB0b3Ag
Zml2ZSBiaXRzIG9mIHRoZSBUT0MgYnl0ZSwgbGFiZWxlZCAiY29uZmlnIiwgZW5jb2RlIG9uZSBv
ZiAzMiBwb3NzaWJsZQorIGNvbmZpZ3VyYXRpb25zIG9mIG9wZXJhdGluZyBtb2RlLCBhdWRpbyBi
YW5kd2lkdGgsIGFuZCBmcmFtZSBzaXplLgorQXMgZGVzY3JpYmVkLCB0aGUgTFAgKFNJTEspIGxh
eWVyIGFuZCBNRENUIChDRUxUKSBsYXllciBjYW4gYmUgY29tYmluZWQgaW4gdGhyZWUgcG9zc2li
bGUKKyBvcGVyYXRpbmcgbW9kZXM6Cis8bGlzdCBzdHlsZT0ibnVtYmVycyI+Cis8dD5BIFNJTEst
b25seSBtb2RlIGZvciB1c2UgaW4gbG93IGJpdHJhdGUgY29ubmVjdGlvbnMgd2l0aCBhbiBhdWRp
byBiYW5kd2lkdGgKKyBvZiBXQiBvciBsZXNzLDwvdD4KKzx0PkEgSHlicmlkIChTSUxLK0NFTFQp
IG1vZGUgZm9yIFNXQiBvciBGQiBzcGVlY2ggYXQgbWVkaXVtIGJpdHJhdGVzLCBhbmQ8L3Q+Cis8
dD5BIENFTFQtb25seSBtb2RlIGZvciB2ZXJ5IGxvdyBkZWxheSBzcGVlY2ggdHJhbnNtaXNzaW9u
IGFzIHdlbGwgYXMgbXVzaWMKKyB0cmFuc21pc3Npb24gKE5CIHRvIEZCKS48L3Q+Cis8L2xpc3Q+
CitUaGUgMzIgcG9zc2libGUgY29uZmlndXJhdGlvbnMgZWFjaCBpZGVudGlmeSB3aGljaCBvbmUg
b2YgdGhlc2Ugb3BlcmF0aW5nIG1vZGVzCisgdGhlIHBhY2tldCB1c2VzLCBhcyB3ZWxsIGFzIHRo
ZSBhdWRpbyBiYW5kd2lkdGggYW5kIHRoZSBmcmFtZSBzaXplLgorPHhyZWYgdGFyZ2V0PSJjb25m
aWdfYml0cyIvPiBsaXN0cyB0aGUgcGFyYW1ldGVycyBmb3IgZWFjaCBjb25maWd1cmF0aW9uLgor
PC90PgorPHRleHR0YWJsZSBhbmNob3I9ImNvbmZpZ19iaXRzIiB0aXRsZT0iVE9DIEJ5dGUgQ29u
ZmlndXJhdGlvbiBQYXJhbWV0ZXJzIj4KKzx0dGNvbD5Db25maWd1cmF0aW9uIE51bWJlcihzKTwv
dHRjb2w+Cis8dHRjb2w+TW9kZTwvdHRjb2w+Cis8dHRjb2w+QmFuZHdpZHRoPC90dGNvbD4KKzx0
dGNvbD5GcmFtZSBTaXplczwvdHRjb2w+Cis8Yz4wLi4uMzwvYz4gICA8Yz5TSUxLLW9ubHk8L2M+
IDxjPk5CPC9jPiAgPGM+MTAsIDIwLCA0MCwgNjAmbmJzcDttczwvYz4KKzxjPjQuLi43PC9jPiAg
IDxjPlNJTEstb25seTwvYz4gPGM+TUI8L2M+ICA8Yz4xMCwgMjAsIDQwLCA2MCZuYnNwO21zPC9j
PgorPGM+OC4uLjExPC9jPiAgPGM+U0lMSy1vbmx5PC9jPiA8Yz5XQjwvYz4gIDxjPjEwLCAyMCwg
NDAsIDYwJm5ic3A7bXM8L2M+Cis8Yz4xMi4uLjEzPC9jPiA8Yz5IeWJyaWQ8L2M+ICAgIDxjPlNX
QjwvYz4gPGM+MTAsIDIwJm5ic3A7bXM8L2M+Cis8Yz4xNC4uLjE1PC9jPiA8Yz5IeWJyaWQ8L2M+
ICAgIDxjPkZCPC9jPiAgPGM+MTAsIDIwJm5ic3A7bXM8L2M+Cis8Yz4xNi4uLjE5PC9jPiA8Yz5D
RUxULW9ubHk8L2M+IDxjPk5CPC9jPiAgPGM+Mi41LCA1LCAxMCwgMjAmbmJzcDttczwvYz4KKzxj
PjIwLi4uMjM8L2M+IDxjPkNFTFQtb25seTwvYz4gPGM+V0I8L2M+ICA8Yz4yLjUsIDUsIDEwLCAy
MCZuYnNwO21zPC9jPgorPGM+MjQuLi4yNzwvYz4gPGM+Q0VMVC1vbmx5PC9jPiA8Yz5TV0I8L2M+
IDxjPjIuNSwgNSwgMTAsIDIwJm5ic3A7bXM8L2M+Cis8Yz4yOC4uLjMxPC9jPiA8Yz5DRUxULW9u
bHk8L2M+IDxjPkZCPC9jPiAgPGM+Mi41LCA1LCAxMCwgMjAmbmJzcDttczwvYz4KKzwvdGV4dHRh
YmxlPgorPHQ+CitUaGUgY29uZmlndXJhdGlvbiBudW1iZXJzIGluIGVhY2ggcmFuZ2UgKGUuZy4s
IDAuLi4zIGZvciBOQiBTSUxLLW9ubHkpCisgY29ycmVzcG9uZCB0byB0aGUgdmFyaW91cyBjaG9p
Y2VzIG9mIGZyYW1lIHNpemUsIGluIHRoZSBzYW1lIG9yZGVyLgorRm9yIGV4YW1wbGUsIGNvbmZp
Z3VyYXRpb24gMCBoYXMgYSAxMCZuYnNwO21zIGZyYW1lIHNpemUgYW5kIGNvbmZpZ3VyYXRpb24g
MworIGhhcyBhIDYwJm5ic3A7bXMgZnJhbWUgc2l6ZS4KKzwvdD4KKworPHQ+CitPbmUgYWRkaXRp
b25hbCBiaXQsIGxhYmVsZWQgInMiLCBzaWduYWxzIG1vbm8gdnMuIHN0ZXJlbywgd2l0aCAwIGlu
ZGljYXRpbmcKKyBtb25vIGFuZCAxIGluZGljYXRpbmcgc3RlcmVvLgorPC90PgorCis8dD4KK1Ro
ZSByZW1haW5pbmcgdHdvIGJpdHMgb2YgdGhlIFRPQyBieXRlLCBsYWJlbGVkICJjIiwgY29kZSB0
aGUgbnVtYmVyIG9mIGZyYW1lcworIHBlciBwYWNrZXQgKGNvZGVzIDAgdG8gMykgYXMgZm9sbG93
czoKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PjA6ICAgIDEgZnJhbWUgaW4gdGhlIHBhY2tl
dDwvdD4KKzx0PjE6ICAgIDIgZnJhbWVzIGluIHRoZSBwYWNrZXQsIGVhY2ggd2l0aCBlcXVhbCBj
b21wcmVzc2VkIHNpemU8L3Q+Cis8dD4yOiAgICAyIGZyYW1lcyBpbiB0aGUgcGFja2V0LCB3aXRo
IGRpZmZlcmVudCBjb21wcmVzc2VkIHNpemVzPC90PgorPHQ+MzogICAgYW4gYXJiaXRyYXJ5IG51
bWJlciBvZiBmcmFtZXMgaW4gdGhlIHBhY2tldDwvdD4KKzwvbGlzdD4KK1RoaXMgZHJhZnQgcmVm
ZXJzIHRvIGEgcGFja2V0IGFzIGEgY29kZSAwIHBhY2tldCwgY29kZSAxIHBhY2tldCwgZXRjLiwg
YmFzZWQgb24KKyB0aGUgdmFsdWUgb2YgImMiLgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0
aW9uIHRpdGxlPSJGcmFtZSBQYWNraW5nIj4KKworPHQ+CitUaGlzIHNlY3Rpb24gZGVzY3JpYmVz
IGhvdyBmcmFtZXMgYXJlIHBhY2tlZCBhY2NvcmRpbmcgdG8gZWFjaCBwb3NzaWJsZSB2YWx1ZQor
IG9mICJjIiBpbiB0aGUgVE9DIGJ5dGUuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0iZnJhbWUt
bGVuZ3RoLWNvZGluZyIgdGl0bGU9IkZyYW1lIExlbmd0aCBDb2RpbmciPgorPHQ+CitXaGVuIGEg
cGFja2V0IGNvbnRhaW5zIG11bHRpcGxlIFZCUiBmcmFtZXMgKGkuZS4sIGNvZGUgMiBvciAzKSwg
dGhlIGNvbXByZXNzZWQKKyBsZW5ndGggb2Ygb25lIG9yIG1vcmUgb2YgdGhlc2UgZnJhbWVzIGlz
IGluZGljYXRlZCB3aXRoIGEgb25lLSBvciB0d28tYnl0ZQorIHNlcXVlbmNlLCB3aXRoIHRoZSBt
ZWFuaW5nIG9mIHRoZSBmaXJzdCBieXRlIGFzIGZvbGxvd3M6Cis8bGlzdCBzdHlsZT0ic3ltYm9s
cyI+Cis8dD4wOiAgICAgICAgICBObyBmcmFtZSAoZGlzY29udGludW91cyB0cmFuc21pc3Npb24g
KERUWCkgb3IgbG9zdCBwYWNrZXQpPC90PgorPHQ+MS4uLjI1MTogICAgTGVuZ3RoIG9mIHRoZSBm
cmFtZSBpbiBieXRlczwvdD4KKzx0PjI1Mi4uLjI1NTogIEEgc2Vjb25kIGJ5dGUgaXMgbmVlZGVk
LiBUaGUgdG90YWwgbGVuZ3RoIGlzIChzZWNvbmRfYnl0ZSo0KStmaXJzdF9ieXRlPC90PgorPC9s
aXN0PgorPC90PgorCis8dD4KK1RoZSBzcGVjaWFsIGxlbmd0aCAwIGluZGljYXRlcyB0aGF0IG5v
IGZyYW1lIGlzIGF2YWlsYWJsZSwgZWl0aGVyIGJlY2F1c2UgaXQKKyB3YXMgZHJvcHBlZCBkdXJp
bmcgdHJhbnNtaXNzaW9uIGJ5IHNvbWUgaW50ZXJtZWRpYXJ5IG9yIGJlY2F1c2UgdGhlIGVuY29k
ZXIKKyBjaG9zZSBub3QgdG8gdHJhbnNtaXQgaXQuCitBbnkgT3B1cyBmcmFtZSBpbiBhbnkgbW9k
ZSBNQVkgaGF2ZSBhIGxlbmd0aCBvZiAwLgorPC90PgorCis8dD4KK1RoZSBtYXhpbXVtIHJlcHJl
c2VudGFibGUgbGVuZ3RoIGlzIDI1NSo0KzI1NT0xMjc1Jm5ic3A7Ynl0ZXMuCitGb3IgMjAmbmJz
cDttcyBmcmFtZXMsIHRoaXMgcmVwcmVzZW50cyBhIGJpdHJhdGUgb2YgNTEwJm5ic3A7a2Ivcywg
d2hpY2ggaXMKKyBhcHByb3hpbWF0ZWx5IHRoZSBoaWdoZXN0IHVzZWZ1bCByYXRlIGZvciBsb3Nz
aWx5IGNvbXByZXNzZWQgZnVsbGJhbmQgc3RlcmVvCisgbXVzaWMuCitCZXlvbmQgdGhpcyBwb2lu
dCwgbG9zc2xlc3MgY29kZWNzIGFyZSBtb3JlIGFwcHJvcHJpYXRlLgorSXQgaXMgYWxzbyByb3Vn
aGx5IHRoZSBtYXhpbXVtIHVzZWZ1bCByYXRlIG9mIHRoZSBNRENUIGxheWVyLCBhcyBzaG9ydGx5
CisgdGhlcmVhZnRlciBxdWFsaXR5IG5vIGxvbmdlciBpbXByb3ZlcyB3aXRoIGFkZGl0aW9uYWwg
Yml0cyBkdWUgdG8gbGltaXRhdGlvbnMKKyBvbiB0aGUgY29kZWJvb2sgc2l6ZXMuCis8L3Q+CisK
Kzx0IGFuY2hvcj0iUjIiPgorTm8gbGVuZ3RoIGlzIHRyYW5zbWl0dGVkIGZvciB0aGUgbGFzdCBm
cmFtZSBpbiBhIFZCUiBwYWNrZXQsIG9yIGZvciBhbnkgb2YgdGhlCisgZnJhbWVzIGluIGEgQ0JS
IHBhY2tldCwgYXMgaXQgY2FuIGJlIGluZmVycmVkIGZyb20gdGhlIHRvdGFsIHNpemUgb2YgdGhl
CisgcGFja2V0IGFuZCB0aGUgc2l6ZSBvZiBhbGwgb3RoZXIgZGF0YSBpbiB0aGUgcGFja2V0Lgor
SG93ZXZlciwgdGhlIGxlbmd0aCBvZiBhbnkgaW5kaXZpZHVhbCBmcmFtZSBNVVNUIE5PVCBleGNl
ZWQKKyAxMjc1Jm5ic3A7Ynl0ZXMmbmJzcDtbUjJdLCB0byBhbGxvdyBmb3IgcmVwYWNrZXRpemF0
aW9uIGJ5IGdhdGV3YXlzLAorIGNvbmZlcmVuY2UgYnJpZGdlcywgb3Igb3RoZXIgc29mdHdhcmUu
Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJDb2RlIDA6IE9uZSBGcmFtZSBp
biB0aGUgUGFja2V0Ij4KKworPHQ+CitGb3IgY29kZSZuYnNwOzAgcGFja2V0cywgdGhlIFRPQyBi
eXRlIGlzIGltbWVkaWF0ZWx5IGZvbGxvd2VkIGJ5IE4tMSZuYnNwO2J5dGVzCisgb2YgY29tcHJl
c3NlZCBkYXRhIGZvciBhIHNpbmdsZSBmcmFtZSAod2hlcmUgTiBpcyB0aGUgc2l6ZSBvZiB0aGUg
cGFja2V0KSwKKyBhcyBpbGx1c3RyYXRlZCBpbiA8eHJlZiB0YXJnZXQ9ImNvZGUwX3BhY2tldCIv
Pi4KKzwvdD4KKzxmaWd1cmUgYW5jaG9yPSJjb2RlMF9wYWNrZXQiIHRpdGxlPSJBIENvZGUgMCBQ
YWNrZXQiIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFb
CisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAg
ICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAz
IDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgY29uZmlnICB8c3wwfDB8ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorfCAgICAgICAg
ICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxIChOLTEgYnl0ZXMpLi4uICAgICAgICAgIDoK
KzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQ29kZSAxOiBUd28gRnJhbWVzIGluIHRoZSBQ
YWNrZXQsIEVhY2ggd2l0aCBFcXVhbCBDb21wcmVzc2VkIFNpemUiPgorPHQgYW5jaG9yPSJSMyI+
CitGb3IgY29kZSAxIHBhY2tldHMsIHRoZSBUT0MgYnl0ZSBpcyBpbW1lZGlhdGVseSBmb2xsb3dl
ZCBieSB0aGUKKyAoTi0xKS8yJm5ic3A7Ynl0ZXMgb2YgY29tcHJlc3NlZCBkYXRhIGZvciB0aGUg
Zmlyc3QgZnJhbWUsIGZvbGxvd2VkIGJ5CisgKE4tMSkvMiZuYnNwO2J5dGVzIG9mIGNvbXByZXNz
ZWQgZGF0YSBmb3IgdGhlIHNlY29uZCBmcmFtZSwgYXMgaWxsdXN0cmF0ZWQgaW4KKyA8eHJlZiB0
YXJnZXQ9ImNvZGUxX3BhY2tldCIvPi4KK1RoZSBudW1iZXIgb2YgcGF5bG9hZCBieXRlcyBhdmFp
bGFibGUgZm9yIGNvbXByZXNzZWQgZGF0YSwgTi0xLCBNVVNUIGJlIGV2ZW4KKyBmb3IgYWxsIGNv
ZGUgMSBwYWNrZXRzJm5ic3A7W1IzXS4KKzwvdD4KKzxmaWd1cmUgYW5jaG9yPSJjb2RlMV9wYWNr
ZXQiIHRpdGxlPSJBIENvZGUgMSBQYWNrZXQiIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxp
Z249ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAg
ICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIg
MyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgY29uZmln
ICB8c3wwfDF8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
CisrLSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgOgorfCAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDEgKChOLTEpLzIgYnl0
ZXMpLi4uICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDoKK3wgICAg
ICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAyICgoTi0xKS8yIGJ5dGVzKS4uLiAgICAgICAgICAg
ICB8Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArLSst
Ky0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
KworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxl
PSJDb2RlIDI6IFR3byBGcmFtZXMgaW4gdGhlIFBhY2tldCwgd2l0aCBEaWZmZXJlbnQgQ29tcHJl
c3NlZCBTaXplcyI+Cis8dCBhbmNob3I9IlI0Ij4KK0ZvciBjb2RlIDIgcGFja2V0cywgdGhlIFRP
QyBieXRlIGlzIGZvbGxvd2VkIGJ5IGEgb25lLSBvciB0d28tYnl0ZSBzZXF1ZW5jZQorIGluZGlj
YXRpbmcgdGhlIGxlbmd0aCBvZiB0aGUgZmlyc3QgZnJhbWUgKG1hcmtlZCBOMSBpbiA8eHJlZiB0
YXJnZXQ9J2NvZGUyX3BhY2tldCcvPiksCisgZm9sbG93ZWQgYnkgTjEgYnl0ZXMgb2YgY29tcHJl
c3NlZCBkYXRhIGZvciB0aGUgZmlyc3QgZnJhbWUuCitUaGUgcmVtYWluaW5nIE4tTjEtMiBvciBO
LU4xLTMmbmJzcDtieXRlcyBhcmUgdGhlIGNvbXByZXNzZWQgZGF0YSBmb3IgdGhlCisgc2Vjb25k
IGZyYW1lLgorVGhpcyBpcyBpbGx1c3RyYXRlZCBpbiA8eHJlZiB0YXJnZXQ9ImNvZGUyX3BhY2tl
dCIvPi4KK0EgY29kZSAyIHBhY2tldCBNVVNUIGNvbnRhaW4gZW5vdWdoIGJ5dGVzIHRvIHJlcHJl
c2VudCBhIHZhbGlkIGxlbmd0aC4KK0ZvciBleGFtcGxlLCBhIDEtYnl0ZSBjb2RlIDIgcGFja2V0
IGlzIGFsd2F5cyBpbnZhbGlkLCBhbmQgYSAyLWJ5dGUgY29kZSAyCisgcGFja2V0IHdob3NlIHNl
Y29uZCBieXRlIGlzIGluIHRoZSByYW5nZSAyNTIuLi4yNTUgaXMgYWxzbyBpbnZhbGlkLgorVGhl
IGxlbmd0aCBvZiB0aGUgZmlyc3QgZnJhbWUsIE4xLCBNVVNUIGFsc28gYmUgbm8gbGFyZ2VyIHRo
YW4gdGhlIHNpemUgb2YgdGhlCisgcGF5bG9hZCByZW1haW5pbmcgYWZ0ZXIgZGVjb2RpbmcgdGhh
dCBsZW5ndGggZm9yIGFsbCBjb2RlIDIgcGFja2V0cyZuYnNwO1tSNF0uCitUaGlzIG1ha2VzLCBm
b3IgZXhhbXBsZSwgYSAyLWJ5dGUgY29kZSAyIHBhY2tldCB3aXRoIGEgc2Vjb25kIGJ5dGUgaW4g
dGhlIHJhbmdlCisgMS4uLjI1MSBpbnZhbGlkIGFzIHdlbGwgKHRoZSBvbmx5IHZhbGlkIDItYnl0
ZSBjb2RlIDIgcGFja2V0IGlzIG9uZSB3aGVyZSB0aGUKKyBsZW5ndGggb2YgYm90aCBmcmFtZXMg
aXMgemVybykuCis8L3Q+Cis8ZmlndXJlIGFuY2hvcj0iY29kZTJfcGFja2V0IiB0aXRsZT0iQSBD
b2RlIDIgUGFja2V0IiBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAg
ICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkg
MCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8IGNvbmZpZyAgfHN8MXwwfCBOMSAo
MS0yIGJ5dGVzKTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDoKK3wg
ICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDEgKE4xIGJ5dGVzKS4uLiAgICAgICAgICAg
ICAgICB8Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAgICAg
ICAgQ29tcHJlc3NlZCBmcmFtZSAyLi4uICAgICAgICAgICAgICAgICAgICAgOgorOiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwK
K3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIHRpdGxlPSJDb2RlIDM6IEEgU2lnbmFsZWQgTnVtYmVyIG9mIEZyYW1lcyBp
biB0aGUgUGFja2V0Ij4KKzx0IGFuY2hvcj0iUjUiPgorQ29kZSAzIHBhY2tldHMgc2lnbmFsIHRo
ZSBudW1iZXIgb2YgZnJhbWVzLCBhcyB3ZWxsIGFzIGFkZGl0aW9uYWwKKyBwYWRkaW5nLCBjYWxs
ZWQgIk9wdXMgcGFkZGluZyIgdG8gaW5kaWNhdGUgdGhhdCB0aGlzIHBhZGRpbmcgaXMgYWRkZWQg
YXQgdGhlCisgT3B1cyBsYXllciwgcmF0aGVyIHRoYW4gYXQgdGhlIHRyYW5zcG9ydCBsYXllci4K
K0NvZGUgMyBwYWNrZXRzIE1VU1QgaGF2ZSBhdCBsZWFzdCAyIGJ5dGVzJm5ic3A7W1I2LFI3XS4K
K1RoZSBUT0MgYnl0ZSBpcyBmb2xsb3dlZCBieSBhIGJ5dGUgZW5jb2RpbmcgdGhlIG51bWJlciBv
ZiBmcmFtZXMgaW4gdGhlIHBhY2tldAorIGluIGJpdHMgMiB0byA3IChtYXJrZWQgIk0iIGluIDx4
cmVmIHRhcmdldD0nZnJhbWVfY291bnRfYnl0ZScvPiksIHdpdGggYml0IDEgaW5kaWNhdGluZyB3
aGV0aGVyCisgb3Igbm90IE9wdXMgcGFkZGluZyBpcyBpbnNlcnRlZCAobWFya2VkICJwIiBpbiA8
eHJlZiB0YXJnZXQ9J2ZyYW1lX2NvdW50X2J5dGUnLz4pLCBhbmQgYml0IDAKKyBpbmRpY2F0aW5n
IFZCUiAobWFya2VkICJ2IiBpbiA8eHJlZiB0YXJnZXQ9J2ZyYW1lX2NvdW50X2J5dGUnLz4pLgor
TSBNVVNUIE5PVCBiZSB6ZXJvLCBhbmQgdGhlIGF1ZGlvIGR1cmF0aW9uIGNvbnRhaW5lZCB3aXRo
aW4gYSBwYWNrZXQgTVVTVCBOT1QKKyBleGNlZWQgMTIwJm5ic3A7bXMmbmJzcDtbUjVdLgorVGhp
cyBsaW1pdHMgdGhlIG1heGltdW0gZnJhbWUgY291bnQgZm9yIGFueSBmcmFtZSBzaXplIHRvIDQ4
IChmb3IgMi41Jm5ic3A7bXMKKyBmcmFtZXMpLCB3aXRoIGxvd2VyIGxpbWl0cyBmb3IgbG9uZ2Vy
IGZyYW1lIHNpemVzLgorPHhyZWYgdGFyZ2V0PSJmcmFtZV9jb3VudF9ieXRlIi8+IGlsbHVzdHJh
dGVzIHRoZSBsYXlvdXQgb2YgdGhlIGZyYW1lIGNvdW50CisgYnl0ZS4KKzwvdD4KKzxmaWd1cmUg
YW5jaG9yPSJmcmFtZV9jb3VudF9ieXRlIiB0aXRsZT0iVGhlIGZyYW1lIGNvdW50IGJ5dGUiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgMAorIDAgMSAyIDMgNCA1IDYgNwor
Ky0rLSstKy0rLSstKy0rLSsKK3x2fHB8ICAgICBNICAgICB8CisrLSstKy0rLSstKy0rLSstKwor
XV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8dD4KK1doZW4gT3B1cyBwYWRkaW5nIGlzIHVzZWQs
IHRoZSBudW1iZXIgb2YgYnl0ZXMgb2YgcGFkZGluZyBpcyBlbmNvZGVkIGluIHRoZQorIGJ5dGVz
IGZvbGxvd2luZyB0aGUgZnJhbWUgY291bnQgYnl0ZS4KK1ZhbHVlcyBmcm9tIDAuLi4yNTQgaW5k
aWNhdGUgdGhhdCAwLi4uMjU0Jm5ic3A7Ynl0ZXMgb2YgcGFkZGluZyBhcmUgaW5jbHVkZWQsCisg
aW4gYWRkaXRpb24gdG8gdGhlIGJ5dGUocykgdXNlZCB0byBpbmRpY2F0ZSB0aGUgc2l6ZSBvZiB0
aGUgcGFkZGluZy4KK0lmIHRoZSB2YWx1ZSBpcyAyNTUsIHRoZW4gdGhlIHNpemUgb2YgdGhlIGFk
ZGl0aW9uYWwgcGFkZGluZyBpcyAyNTQmbmJzcDtieXRlcywKKyBwbHVzIHRoZSBwYWRkaW5nIHZh
bHVlIGVuY29kZWQgaW4gdGhlIG5leHQgYnl0ZS4KK1RoZXJlIE1VU1QgYmUgYXQgbGVhc3Qgb25l
IG1vcmUgYnl0ZSBpbiB0aGUgcGFja2V0IGluIHRoaXMgY2FzZSZuYnNwO1tSNixSN10uCitUaGUg
YWRkaXRpb25hbCBwYWRkaW5nIGJ5dGVzIGFwcGVhciBhdCB0aGUgZW5kIG9mIHRoZSBwYWNrZXQs
IGFuZCBNVVNUIGJlIHNldAorIHRvIHplcm8gYnkgdGhlIGVuY29kZXIgdG8gYXZvaWQgY3JlYXRp
bmcgYSBjb3ZlcnQgY2hhbm5lbC4KK1RoZSBkZWNvZGVyIE1VU1QgYWNjZXB0IGFueSB2YWx1ZSBm
b3IgdGhlIHBhZGRpbmcgYnl0ZXMsIGhvd2V2ZXIuCis8L3Q+Cis8dD4KK0FsdGhvdWdoIHRoaXMg
ZW5jb2RpbmcgcHJvdmlkZXMgbXVsdGlwbGUgd2F5cyB0byBpbmRpY2F0ZSBhIGdpdmVuIG51bWJl
ciBvZgorIHBhZGRpbmcgYnl0ZXMsIGVhY2ggdXNlcyBhIGRpZmZlcmVudCBudW1iZXIgb2YgYnl0
ZXMgdG8gaW5kaWNhdGUgdGhlIHBhZGRpbmcKKyBzaXplLCBhbmQgdGh1cyB3aWxsIGluY3JlYXNl
IHRoZSB0b3RhbCBwYWNrZXQgc2l6ZSBieSBhIGRpZmZlcmVudCBhbW91bnQuCitGb3IgZXhhbXBs
ZSwgdG8gYWRkIDI1NSBieXRlcyB0byBhIHBhY2tldCwgc2V0IHRoZSBwYWRkaW5nIGJpdCwgcCwg
dG8gMSwgaW5zZXJ0CisgYSBzaW5nbGUgYnl0ZSBhZnRlciB0aGUgZnJhbWUgY291bnQgYnl0ZSB3
aXRoIGEgdmFsdWUgb2YgMjU0LCBhbmQgYXBwZW5kIDI1NAorIHBhZGRpbmcgYnl0ZXMgd2l0aCB0
aGUgdmFsdWUgemVybyB0byB0aGUgZW5kIG9mIHRoZSBwYWNrZXQuCitUbyBhZGQgMjU2IGJ5dGVz
IHRvIGEgcGFja2V0LCBzZXQgdGhlIHBhZGRpbmcgYml0IHRvIDEsIGluc2VydCB0d28gYnl0ZXMg
YWZ0ZXIKKyB0aGUgZnJhbWUgY291bnQgYnl0ZSB3aXRoIHRoZSB2YWx1ZXMgMjU1IGFuZCAwLCBy
ZXNwZWN0aXZlbHksIGFuZCBhcHBlbmQgMjU0CisgcGFkZGluZyBieXRlcyB3aXRoIHRoZSB2YWx1
ZSB6ZXJvIHRvIHRoZSBlbmQgb2YgdGhlIHBhY2tldC4KK0J5IHVzaW5nIHRoZSB2YWx1ZSAyNTUg
bXVsdGlwbGUgdGltZXMsIGl0IGlzIHBvc3NpYmxlIHRvIGNyZWF0ZSBhIHBhY2tldCBvZiBhbnkK
KyBzcGVjaWZpYywgZGVzaXJlZCBzaXplLgorTGV0IFAgYmUgdGhlIG51bWJlciBvZiBoZWFkZXIg
Ynl0ZXMgdXNlZCB0byBpbmRpY2F0ZSB0aGUgcGFkZGluZyBzaXplIHBsdXMgdGhlCisgbnVtYmVy
IG9mIHBhZGRpbmcgYnl0ZXMgdGhlbXNlbHZlcyAoaS5lLiwgUCBpcyB0aGUgdG90YWwgbnVtYmVy
IG9mIGJ5dGVzIGFkZGVkCisgdG8gdGhlIHBhY2tldCkuCitUaGVuIFAgTVVTVCBiZSBubyBtb3Jl
IHRoYW4gTi0yJm5ic3A7W1I2LFI3XS4KKzwvdD4KKzx0IGFuY2hvcj0iUjYiPgorSW4gdGhlIENC
UiBjYXNlLCBsZXQgUj1OLTItUCBiZSB0aGUgbnVtYmVyIG9mIGJ5dGVzIHJlbWFpbmluZyBpbiB0
aGUgcGFja2V0CisgYWZ0ZXIgc3VidHJhY3RpbmcgdGhlIChvcHRpb25hbCkgcGFkZGluZy4KK1Ro
ZW4gdGhlIGNvbXByZXNzZWQgbGVuZ3RoIG9mIGVhY2ggZnJhbWUgaW4gYnl0ZXMgaXMgZXF1YWwg
dG8gUi9NLgorVGhlIHZhbHVlIFIgTVVTVCBiZSBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIG11bHRp
cGxlIG9mIE0mbmJzcDtbUjZdLgorVGhlIGNvbXByZXNzZWQgZGF0YSBmb3IgYWxsIE0gZnJhbWVz
IGZvbGxvd3MsIGVhY2ggb2Ygc2l6ZQorIFIvTSZuYnNwO2J5dGVzLCBhcyBpbGx1c3RyYXRlZCBp
biA8eHJlZiB0YXJnZXQ9ImNvZGUzY2JyX3BhY2tldCIvPi4KKzwvdD4KKworPGZpZ3VyZSBhbmNo
b3I9ImNvZGUzY2JyX3BhY2tldCIgdGl0bGU9IkEgQ0JSIENvZGUgMyBQYWNrZXQiIGFsaWduPSJj
ZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAg
ICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAy
IDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAg
MQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSsKK3wgY29uZmlnICB8c3wxfDF8MHxwfCAgICAgTSAgICAgfCAgUGFkZGluZyBs
ZW5ndGggKE9wdGlvbmFsKSAgICA6CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAg
ICBDb21wcmVzc2VkIGZyYW1lIDEgKFIvTSBieXRlcykuLi4gICAgICAgICAgICAgICA6Cit8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFt
ZSAyIChSL00gYnl0ZXMpLi4uICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfAorOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAg
ICAgICAgICBDb21wcmVzc2VkIGZyYW1lIE0gKFIvTSBieXRlcykuLi4gICAgICAgICAgICAgICA6
Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSsKKzogICAgICAgICAgICAgICAgICBPcHVzIFBhZGRpbmcgKE9w
dGlvbmFsKS4uLiAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgor
PC9maWd1cmU+CisKKzx0IGFuY2hvcj0iUjciPgorSW4gdGhlIFZCUiBjYXNlLCB0aGUgKG9wdGlv
bmFsKSBwYWRkaW5nIGxlbmd0aCBpcyBmb2xsb3dlZCBieSBNLTEgZnJhbWUKKyBsZW5ndGhzIChp
bmRpY2F0ZWQgYnkgIk4xIiB0byAiTltNLTFdIiBpbiA8eHJlZiB0YXJnZXQ9J2NvZGUzdmJyX3Bh
Y2tldCcvPiksIGVhY2ggZW5jb2RlZCBpbiBhCisgb25lLSBvciB0d28tYnl0ZSBzZXF1ZW5jZSBh
cyBkZXNjcmliZWQgYWJvdmUuCitUaGUgcGFja2V0IE1VU1QgY29udGFpbiBlbm91Z2ggZGF0YSBm
b3IgdGhlIE0tMSBsZW5ndGhzIGFmdGVyIHJlbW92aW5nIHRoZQorIChvcHRpb25hbCkgcGFkZGlu
ZywgYW5kIHRoZSBzdW0gb2YgdGhlc2UgbGVuZ3RocyBNVVNUIGJlIG5vIGxhcmdlciB0aGFuIHRo
ZQorIG51bWJlciBvZiBieXRlcyByZW1haW5pbmcgaW4gdGhlIHBhY2tldCBhZnRlciBkZWNvZGlu
ZyB0aGVtJm5ic3A7W1I3XS4KK1RoZSBjb21wcmVzc2VkIGRhdGEgZm9yIGFsbCBNIGZyYW1lcyBm
b2xsb3dzLCBlYWNoIGZyYW1lIGNvbnNpc3Rpbmcgb2YgdGhlCisgaW5kaWNhdGVkIG51bWJlciBv
ZiBieXRlcywgd2l0aCB0aGUgZmluYWwgZnJhbWUgY29uc3VtaW5nIGFueSByZW1haW5pbmcgYnl0
ZXMKKyBiZWZvcmUgdGhlIGZpbmFsIHBhZGRpbmcsIGFzIGlsbHVzdHJhdGVkIGluIDx4cmVmIHRh
cmdldD0iY29kZTNjYnJfcGFja2V0Ii8+LgorVGhlIG51bWJlciBvZiBoZWFkZXIgYnl0ZXMgKFRP
QyBieXRlLCBmcmFtZSBjb3VudCBieXRlLCBwYWRkaW5nIGxlbmd0aCBieXRlcywKKyBhbmQgZnJh
bWUgbGVuZ3RoIGJ5dGVzKSwgcGx1cyB0aGUgc2lnbmFsZWQgbGVuZ3RoIG9mIHRoZSBmaXJzdCBN
LTEgZnJhbWVzIHRoZW1zZWx2ZXMsCisgcGx1cyB0aGUgc2lnbmFsZWQgbGVuZ3RoIG9mIHRoZSBw
YWRkaW5nIE1VU1QgYmUgbm8gbGFyZ2VyIHRoYW4gTiwgdGhlIHRvdGFsIHNpemUgb2YgdGhlCisg
cGFja2V0LgorPC90PgorCis8ZmlndXJlIGFuY2hvcj0iY29kZTN2YnJfcGFja2V0IiB0aXRsZT0i
QSBWQlIgQ29kZSAzIFBhY2tldCIgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2Vu
dGVyIj48IVtDREFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAg
MiAgICAgICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2
IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxzfDF8
MXwxfHB8ICAgICBNICAgICB8IFBhZGRpbmcgbGVuZ3RoIChPcHRpb25hbCkgICAgIDoKKystKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rCis6IE4xICgxLTIgYnl0ZXMpOiBOMiAoMS0yIGJ5dGVzKTogICAgIC4uLiAgICAgICA6ICAg
ICBOW00tMV0gICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgQ29tcHJl
c3NlZCBmcmFtZSAxIChOMSBieXRlcykuLi4gICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMiAoTjIg
Ynl0ZXMpLi4uICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwK
KzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAg
ICAgICAgQ29tcHJlc3NlZCBmcmFtZSBNLi4uICAgICAgICAgICAgICAgICAgICAgOgorfCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rCis6ICAgICAgICAgICAgICAgICAgT3B1cyBQYWRkaW5nIChPcHRpb25hbCku
Li4gICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorPC9zZWN0aW9uPgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImV4YW1wbGVzIiB0
aXRsZT0iRXhhbXBsZXMiPgorPHQ+CitTaW1wbGVzdCBjYXNlLCBvbmUgTkIgbW9ubyAyMCZuYnNw
O21zIFNJTEsgZnJhbWU6Cis8L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSdmcmFtaW5nX2V4YW1wbGVf
MSc+Cis8YXJ0d29yaz48IVtDREFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAg
ICAgICAgICAgMiAgICAgICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEg
MiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAx
ICAgIHwwfDB8MHwgICAgICAgICAgICAgICBjb21wcmVzc2VkIGRhdGEuLi4gICAgICAgICAgICAg
IDoKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitUd28gRkIgbW9u
byA1Jm5ic3A7bXMgQ0VMVCBmcmFtZXMgb2YgdGhlIHNhbWUgY29tcHJlc3NlZCBzaXplOgorPC90
PgorCis8ZmlndXJlIGFuY2hvcj0nZnJhbWluZ19leGFtcGxlXzInPgorPGFydHdvcms+PCFbQ0RB
VEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAg
ICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEg
MiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAyOSAgICB8MHwwfDF8ICAgICAgICAg
ICAgICAgY29tcHJlc3NlZCBkYXRhLi4uICAgICAgICAgICAgICA6CisrLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9h
cnR3b3JrPgorPC9maWd1cmU+CisKKzx0PgorVHdvIEZCIG1vbm8gMjAmbmJzcDttcyBIeWJyaWQg
ZnJhbWVzIG9mIGRpZmZlcmVudCBjb21wcmVzc2VkIHNpemU6Cis8L3Q+CisKKzxmaWd1cmUgYW5j
aG9yPSdmcmFtaW5nX2V4YW1wbGVfMyc+Cis8YXJ0d29yaz48IVtDREFUQVsKKyAwICAgICAgICAg
ICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAgICAzCisgMCAx
IDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkg
MCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKworfCAgIDE1ICAgIHwwfDF8MXwxfDB8ICAgICAyICAgICB8ICAgICAgTjEg
ICAgICAgfCAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSsgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAgICAgICAg
ICBjb21wcmVzc2VkIGRhdGEuLi4gICAgICAgICAgICAgICAgICAgICAgOgorKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11d
PjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8dD4KK0ZvdXIgRkIgc3RlcmVvIDIwJm5ic3A7bXMg
Q0VMVCBmcmFtZXMgb2YgdGhlIHNhbWUgY29tcHJlc3NlZCBzaXplOgorPC90PgorCis8ZmlndXJl
IGFuY2hvcj0nZnJhbWluZ19leGFtcGxlXzQnPgorPGFydHdvcms+PCFbQ0RBVEFbCisgMCAgICAg
ICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMwor
IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcg
OCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSsKK3wgICAzMSAgICB8MXwxfDF8MHwwfCAgICAgNCAgICAgfCAgICAg
IGNvbXByZXNzZWQgZGF0YS4uLiAgICAgICA6CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9m
aWd1cmU+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ibWFsZm9ybWVkLXBhY2tldHMi
IHRpdGxlPSJSZWNlaXZpbmcgTWFsZm9ybWVkIFBhY2tldHMiPgorPHQ+CitBIHJlY2VpdmVyIE1V
U1QgTk9UIHByb2Nlc3MgcGFja2V0cyB3aGljaCB2aW9sYXRlIGFueSBvZiB0aGUgcnVsZXMgYWJv
dmUgYXMKKyBub3JtYWwgT3B1cyBwYWNrZXRzLgorVGhleSBhcmUgcmVzZXJ2ZWQgZm9yIGZ1dHVy
ZSBhcHBsaWNhdGlvbnMsIHN1Y2ggYXMgaW4tYmFuZCBoZWFkZXJzIChjb250YWluaW5nCisgbWV0
YWRhdGEsIGV0Yy4pLgorUGFja2V0cyB3aGljaCB2aW9sYXRlIHRoZXNlIGNvbnN0cmFpbnRzIG1h
eSBjYXVzZSBpbXBsZW1lbnRhdGlvbnMgb2YKKyA8c3Bhbnggc3R5bGU9ImVtcGgiPnRoaXM8L3Nw
YW54PiBzcGVjaWZpY2F0aW9uIHRvIHRyZWF0IHRoZW0gYXMgbWFsZm9ybWVkLCBhbmQKKyBkaXNj
YXJkIHRoZW0uCis8L3Q+Cis8dD4KK1RoZXNlIGNvbnN0cmFpbnRzIGFyZSBzdW1tYXJpemVkIGhl
cmUgZm9yIHJlZmVyZW5jZToKKzxsaXN0IHN0eWxlPSJmb3JtYXQgW1IlZF0iPgorPHQ+UGFja2V0
cyBhcmUgYXQgbGVhc3Qgb25lIGJ5dGUuPC90PgorPHQ+Tm8gaW1wbGljaXQgZnJhbWUgbGVuZ3Ro
IGlzIGxhcmdlciB0aGFuIDEyNzUgYnl0ZXMuPC90PgorPHQ+Q29kZSAxIHBhY2tldHMgaGF2ZSBh
biBvZGQgdG90YWwgbGVuZ3RoLCBOLCBzbyB0aGF0IChOLTEpLzIgaXMgYW4KKyBpbnRlZ2VyLjwv
dD4KKzx0PkNvZGUgMiBwYWNrZXRzIGhhdmUgZW5vdWdoIGJ5dGVzIGFmdGVyIHRoZSBUT0MgZm9y
IGEgdmFsaWQgZnJhbWUKKyBsZW5ndGgsIGFuZCB0aGF0IGxlbmd0aCBpcyBubyBsYXJnZXIgdGhh
biB0aGUgbnVtYmVyIG9mIGJ5dGVzIHJlbWFpbmluZyBpbiB0aGUKKyBwYWNrZXQuPC90PgorPHQ+
Q29kZSAzIHBhY2tldHMgY29udGFpbiBhdCBsZWFzdCBvbmUgZnJhbWUsIGJ1dCBubyBtb3JlIHRo
YW4gMTIwJm5ic3A7bXMKKyBvZiBhdWRpbyB0b3RhbC48L3Q+Cis8dD5UaGUgbGVuZ3RoIG9mIGEg
Q0JSIGNvZGUgMyBwYWNrZXQsIE4sIGlzIGF0IGxlYXN0IHR3byBieXRlcywgdGhlIG51bWJlciBv
ZgorIGJ5dGVzIGFkZGVkIHRvIGluZGljYXRlIHRoZSBwYWRkaW5nIHNpemUgcGx1cyB0aGUgdHJh
aWxpbmcgcGFkZGluZyBieXRlcworIHRoZW1zZWx2ZXMsIFAsIGlzIG5vIG1vcmUgdGhhbiBOLTIs
IGFuZCB0aGUgZnJhbWUgY291bnQsIE0sIHNhdGlzZmllcworIHRoZSBjb25zdHJhaW50IHRoYXQg
KE4tMi1QKSBpcyBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIG11bHRpcGxlIG9mIE0uPC90PgorPHQ+
VkJSIGNvZGUgMyBwYWNrZXRzIGFyZSBsYXJnZSBlbm91Z2ggdG8gY29udGFpbiBhbGwgdGhlIGhl
YWRlciBieXRlcyAoVE9DCisgYnl0ZSwgZnJhbWUgY291bnQgYnl0ZSwgYW55IHBhZGRpbmcgbGVu
Z3RoIGJ5dGVzLCBhbmQgYW55IGZyYW1lIGxlbmd0aCBieXRlcyksCisgcGx1cyB0aGUgbGVuZ3Ro
IG9mIHRoZSBmaXJzdCBNLTEgZnJhbWVzLCBwbHVzIGFueSB0cmFpbGluZyBwYWRkaW5nIGJ5dGVz
LjwvdD4KKzwvbGlzdD4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlv
biB0aXRsZT0iT3B1cyBEZWNvZGVyIj4KKzx0PgorVGhlIE9wdXMgZGVjb2RlciBjb25zaXN0cyBv
ZiB0d28gbWFpbiBibG9ja3M6IHRoZSBTSUxLIGRlY29kZXIgYW5kIHRoZSBDRUxUCisgZGVjb2Rl
ci4KK0F0IGFueSBnaXZlbiB0aW1lLCBvbmUgb3IgYm90aCBvZiB0aGUgU0lMSyBhbmQgQ0VMVCBk
ZWNvZGVycyBtYXkgYmUgYWN0aXZlLgorVGhlIG91dHB1dCBvZiB0aGUgT3B1cyBkZWNvZGUgaXMg
dGhlIHN1bSBvZiB0aGUgb3V0cHV0cyBmcm9tIHRoZSBTSUxLIGFuZCBDRUxUCisgZGVjb2RlcnMg
d2l0aCBwcm9wZXIgc2FtcGxlIHJhdGUgY29udmVyc2lvbiBhbmQgZGVsYXkgY29tcGVuc2F0aW9u
IG9uIHRoZSBTSUxLCisgc2lkZSwgYW5kIG9wdGlvbmFsIGRlY2ltYXRpb24gKHdoZW4gZGVjb2Rp
bmcgdG8gc2FtcGxlIHJhdGVzIGxlc3MgdGhhbgorIDQ4Jm5ic3A7a0h6KSBvbiB0aGUgQ0VMVCBz
aWRlLCBhcyBpbGx1c3RyYXRlZCBpbiB0aGUgYmxvY2sgZGlhZ3JhbSBiZWxvdy4KKzwvdD4KKzxm
aWd1cmU+Cis8YXJ0d29yaz4KKzwhW0NEQVRBWworICAgICAgICAgICAgICAgICAgICAgICAgICst
LS0tLS0tLS0rICAgICstLS0tLS0tLS0tLS0rCisgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
U0lMSyAgIHwgICAgfCAgIFNhbXBsZSAgIHwKKyAgICAgICAgICAgICAgICAgICAgICArLT58IERl
Y29kZXIgfC0tLT58ICAgIFJhdGUgICAgfC0tLS0rCitCaXQtICAgICstLS0tLS0tLS0rICAgfCAg
fCAgICAgICAgIHwgICAgfCBDb252ZXJzaW9uIHwgICAgdgorc3RyZWFtICB8ICBSYW5nZSAgfC0t
LSsgICstLS0tLS0tLS0rICAgICstLS0tLS0tLS0tLS0rICAvLS0tXCAgQXVkaW8KKy0tLS0tLS0+
fCBEZWNvZGVyIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCArIHwtLS0t
LS0+CisgICAgICAgIHwgICAgICAgICB8LS0tKyAgKy0tLS0tLS0tLSsgICAgKy0tLS0tLS0tLS0t
LSsgIFwtLS0vCisgICAgICAgICstLS0tLS0tLS0rICAgfCAgfCAgQ0VMVCAgIHwgICAgfCBEZWNp
bWF0aW9uIHwgICAgXgorICAgICAgICAgICAgICAgICAgICAgICstPnwgRGVjb2RlciB8LS0tPnwg
KE9wdGlvbmFsKSB8LS0tLSsKKyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfCAg
ICB8ICAgICAgICAgICAgfAorICAgICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0rICAg
ICstLS0tLS0tLS0tLS0rCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8c2VjdGlvbiBh
bmNob3I9InJhbmdlLWRlY29kZXIiIHRpdGxlPSJSYW5nZSBEZWNvZGVyIj4KKzx0PgorT3B1cyB1
c2VzIGFuIGVudHJvcHkgY29kZXIgYmFzZWQgb24gcmFuZ2UgY29kaW5nIDx4cmVmIHRhcmdldD0i
cmFuZ2UtY29kaW5nIj48L3hyZWY+Cis8eHJlZiB0YXJnZXQ9Ik1hcnRpbjc5Ij48L3hyZWY+LAor
d2hpY2ggaXMgaXRzZWxmIGEgcmVkaXNjb3Zlcnkgb2YgdGhlIEZJRk8gYXJpdGhtZXRpYyBjb2Rl
IGludHJvZHVjZWQgYnkgPHhyZWYgdGFyZ2V0PSJjb2RpbmctdGhlc2lzIj48L3hyZWY+LgorSXQg
aXMgdmVyeSBzaW1pbGFyIHRvIGFyaXRobWV0aWMgZW5jb2RpbmcsIGV4Y2VwdCB0aGF0IGVuY29k
aW5nIGlzIGRvbmUgd2l0aAorZGlnaXRzIGluIGFueSBiYXNlIGluc3RlYWQgb2Ygd2l0aCBiaXRz
LAorc28gaXQgaXMgZmFzdGVyIHdoZW4gdXNpbmcgbGFyZ2VyIGJhc2VzIChpLmUuLCBhIGJ5dGUp
LiBBbGwgb2YgdGhlCitjYWxjdWxhdGlvbnMgaW4gdGhlIHJhbmdlIGNvZGVyIG11c3QgdXNlIGJp
dC1leGFjdCBpbnRlZ2VyIGFyaXRobWV0aWMuCis8L3Q+Cis8dD4KK1N5bWJvbHMgbWF5IGFsc28g
YmUgY29kZWQgYXMgInJhdyBiaXRzIiBwYWNrZWQgZGlyZWN0bHkgaW50byB0aGUgYml0c3RyZWFt
LAorIGJ5cGFzc2luZyB0aGUgcmFuZ2UgY29kZXIuCitUaGVzZSBhcmUgcGFja2VkIGJhY2t3YXJk
cyBzdGFydGluZyBhdCB0aGUgZW5kIG9mIHRoZSBmcmFtZSwgYXMgaWxsdXN0cmF0ZWQgaW4KKyA8
eHJlZiB0YXJnZXQ9InJhd2JpdHMtZXhhbXBsZSIvPi4KK1RoaXMgcmVkdWNlcyBjb21wbGV4aXR5
IGFuZCBtYWtlcyB0aGUgc3RyZWFtIG1vcmUgcmVzaWxpZW50IHRvIGJpdCBlcnJvcnMsIGFzCisg
Y29ycnVwdGlvbiBpbiB0aGUgcmF3IGJpdHMgd2lsbCBub3QgZGVzeW5jaHJvbml6ZSB0aGUgZGVj
b2RpbmcgcHJvY2VzcywgdW5saWtlCisgY29ycnVwdGlvbiBpbiB0aGUgaW5wdXQgdG8gdGhlIHJh
bmdlIGRlY29kZXIuCitSYXcgYml0cyBhcmUgb25seSB1c2VkIGluIHRoZSBDRUxUIGxheWVyLgor
PC90PgorCis8ZmlndXJlIGFuY2hvcj0icmF3Yml0cy1leGFtcGxlIiB0aXRsZT0iSWxsdXN0cmF0
aXZlIGV4YW1wbGUgb2YgcGFja2luZyByYW5nZQorIGNvZGVyIGFuZCByYXcgYml0cyBkYXRhIj4K
KzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAg
MSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2
IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rCit8IFJhbmdlIGNvZGVyIGRhdGEgKHBhY2tlZCBNU0IgdG8gTFNCKSAtPiAgICAgICAgICAg
ICAgICAgICAgICAgOgorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICsKKzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6CisrICAgICArLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworOiAgICAgfCA8LSBC
b3VuZGFyeSBvY2N1cnMgYXQgYW4gYXJiaXRyYXJ5IGJpdCBwb3NpdGlvbiAgICAgICAgIDoKKyst
Ky0rLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICArCis6ICAgICAgICAgICAgICAgICAgICAgICAgICA8LSBSYXcgYml0cyBkYXRhIChwYWNr
ZWQgTFNCIHRvIE1TQikgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8
dD4KK0VhY2ggc3ltYm9sIGNvZGVkIGJ5IHRoZSByYW5nZSBjb2RlciBpcyBkcmF3biBmcm9tIGEg
ZmluaXRlIGFscGhhYmV0IGFuZCBjb2RlZAorIGluIGEgc2VwYXJhdGUgImNvbnRleHQiLCB3aGlj
aCBkZXNjcmliZXMgdGhlIHNpemUgb2YgdGhlIGFscGhhYmV0IGFuZCB0aGUKKyByZWxhdGl2ZSBm
cmVxdWVuY3kgb2YgZWFjaCBzeW1ib2wgaW4gdGhhdCBhbHBoYWJldC4KKzwvdD4KKzx0PgorU3Vw
cG9zZSB0aGVyZSBpcyBhIGNvbnRleHQgd2l0aCBuIHN5bWJvbHMsIGlkZW50aWZpZWQgd2l0aCBh
biBpbmRleCB0aGF0IHJhbmdlcworIGZyb20gMCB0byBuLTEuCitUaGUgcGFyYW1ldGVycyBuZWVk
ZWQgdG8gZW5jb2RlIG9yIGRlY29kZSBzeW1ib2wgayBpbiB0aGlzIGNvbnRleHQgYXJlCisgcmVw
cmVzZW50ZWQgYnkgYSB0aHJlZS10dXBsZSAoZmxba10sJm5ic3A7Zmhba10sJm5ic3A7ZnQpLCB3
aXRoCisgMCZuYnNwOyZsdDs9Jm5ic3A7Zmxba10mbmJzcDsmbHQ7Jm5ic3A7Zmhba10mbmJzcDsm
bHQ7PSZuYnNwO2Z0Jm5ic3A7Jmx0Oz0mbmJzcDs2NTUzNS4KK1RoZSB2YWx1ZXMgb2YgdGhpcyB0
dXBsZSBhcmUgZGVyaXZlZCBmcm9tIHRoZSBwcm9iYWJpbGl0eSBtb2RlbCBmb3IgdGhlCisgc3lt
Ym9sLCByZXByZXNlbnRlZCBieSB0cmFkaXRpb25hbCAiZnJlcXVlbmN5IGNvdW50cyIuCitCZWNh
dXNlIE9wdXMgdXNlcyBzdGF0aWMgY29udGV4dHMgdGhlc2UgYXJlIG5vdCB1cGRhdGVkIGFzIHN5
bWJvbHMgYXJlIGRlY29kZWQuCitMZXQgZltpXSBiZSB0aGUgZnJlcXVlbmN5IG9mIHN5bWJvbCBp
LgorVGhlbiB0aGUgdGhyZWUtdHVwbGUgY29ycmVzcG9uZGluZyB0byBzeW1ib2wgayBpcyBnaXZl
biBieQorPC90PgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50
ZXIiPjwhW0NEQVRBWworICAgICAgICBrLTEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIG4tMQorICAgICAgICBfXyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9f
CitmbFtrXSA9IFwgIGZbaV0sICBmaFtrXSA9IGZsW2tdICsgZltrXSwgIGZ0ID0gXCAgZltpXQor
ICAgICAgICAvXyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9fCisgICAgICAg
IGk9MCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaT0wCitdXT48L2FydHdvcms+
Cis8L2ZpZ3VyZT4KKzx0PgorVGhlIHJhbmdlIGRlY29kZXIgZXh0cmFjdHMgdGhlIHN5bWJvbHMg
YW5kIGludGVnZXJzIGVuY29kZWQgdXNpbmcgdGhlIHJhbmdlCisgZW5jb2RlciBpbiA8eHJlZiB0
YXJnZXQ9InJhbmdlLWVuY29kZXIiLz4uCitUaGUgcmFuZ2UgZGVjb2RlciBtYWludGFpbnMgYW4g
aW50ZXJuYWwgc3RhdGUgdmVjdG9yIGNvbXBvc2VkIG9mIHRoZSB0d28tdHVwbGUKKyAodmFsLCZu
YnNwO3JuZyksIHJlcHJlc2VudGluZyB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSBoaWdoIGVu
ZCBvZiB0aGUKKyBjdXJyZW50IHJhbmdlIGFuZCB0aGUgYWN0dWFsIGNvZGVkIHZhbHVlLCBtaW51
cyBvbmUsIGFuZCB0aGUgc2l6ZSBvZiB0aGUKKyBjdXJyZW50IHJhbmdlLCByZXNwZWN0aXZlbHku
CitCb3RoIHZhbCBhbmQgcm5nIGFyZSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlciB2YWx1ZXMuCis8
L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0icmFuZ2UtZGVjb2Rlci1pbml0IiB0aXRsZT0iUmFuZ2Ug
RGVjb2RlciBJbml0aWFsaXphdGlvbiI+Cis8dD4KK0xldCBiMCBiZSB0aGUgZmlyc3QgaW5wdXQg
Ynl0ZSAob3IgemVybyBpZiB0aGVyZSBhcmUgbm8gYnl0ZXMgaW4gdGhpcyBPcHVzCisgZnJhbWUp
LgorVGhlIGRlY29kZXIgaW5pdGlhbGl6ZXMgcm5nIHRvIDEyOCBhbmQgaW5pdGlhbGl6ZXMgdmFs
IHRvCisgKDEyNyZuYnNwOy0mbmJzcDsoYjAmZ3Q7Jmd0OzEpKSwgd2hlcmUgKGIwJmd0OyZndDsx
KSBpcyB0aGUgdG9wIDcgYml0cyBvZiB0aGUKKyBmaXJzdCBpbnB1dCBieXRlLgorSXQgc2F2ZXMg
dGhlIHJlbWFpbmluZyBiaXQsIChiMCZhbXA7MSksIGZvciB1c2UgaW4gdGhlIHJlbm9ybWFsaXph
dGlvbgorIHByb2NlZHVyZSBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJyYW5nZS1kZWNvZGVy
LXJlbm9ybSIvPiwgd2hpY2ggdGhlCisgZGVjb2RlciBpbnZva2VzIGltbWVkaWF0ZWx5IGFmdGVy
IGluaXRpYWxpemF0aW9uIHRvIHJlYWQgYWRkaXRpb25hbCBiaXRzIGFuZAorIGVzdGFibGlzaCB0
aGUgaW52YXJpYW50IHRoYXQgcm5nJm5ic3A7Jmd0OyZuYnNwOzIqKjIzLgorPC90PgorPC9zZWN0
aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImRlY29kaW5nLXN5bWJvbHMiIHRpdGxlPSJEZWNvZGlu
ZyBTeW1ib2xzIj4KKzx0PgorRGVjb2RpbmcgYSBzeW1ib2wgaXMgYSB0d28tc3RlcCBwcm9jZXNz
LgorVGhlIGZpcnN0IHN0ZXAgZGV0ZXJtaW5lcyBhIDE2LWJpdCB1bnNpZ25lZCB2YWx1ZSBmcywg
d2hpY2ggbGllcyB3aXRoaW4gdGhlCisgcmFuZ2Ugb2Ygc29tZSBzeW1ib2wgaW4gdGhlIGN1cnJl
bnQgY29udGV4dC4KK1RoZSBzZWNvbmQgc3RlcCB1cGRhdGVzIHRoZSByYW5nZSBkZWNvZGVyIHN0
YXRlIHdpdGggdGhlIHRocmVlLXR1cGxlCisgKGZsW2tdLCZuYnNwO2ZoW2tdLCZuYnNwO2Z0KSBj
b3JyZXNwb25kaW5nIHRvIHRoYXQgc3ltYm9sLgorPC90PgorPHQ+CitUaGUgZmlyc3Qgc3RlcCBp
cyBpbXBsZW1lbnRlZCBieSBlY19kZWNvZGUoKSAoZW50ZGVjLmMpLCB3aGljaCBjb21wdXRlcwor
PGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRB
WworICAgICAgICAgICAgICAgdmFsCitmcyA9IGZ0IC0gbWluKC0tLS0tLSArIDEsIGZ0KSAuCisg
ICAgICAgICAgICAgIHJuZy9mdAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGUgZGl2aXNp
b25zIGhlcmUgYXJlIGludGVnZXIgZGl2aXNpb24uCis8L3Q+Cis8dD4KK1RoZSBkZWNvZGVyIHRo
ZW4gaWRlbnRpZmllcyB0aGUgc3ltYm9sIGluIHRoZSBjdXJyZW50IGNvbnRleHQgY29ycmVzcG9u
ZGluZyB0bworIGZzOyBpLmUuLCB0aGUgdmFsdWUgb2YgayB3aG9zZSB0aHJlZS10dXBsZSAoZmxb
a10sJm5ic3A7Zmhba10sJm5ic3A7ZnQpCisgc2F0aXNmaWVzIGZsW2tdJm5ic3A7Jmx0Oz0mbmJz
cDtmcyZuYnNwOyZsdDsmbmJzcDtmaFtrXS4KK0l0IHVzZXMgdGhpcyB0dXBsZSB0byB1cGRhdGUg
dmFsIGFjY29yZGluZyB0bworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWdu
PSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgcm5nCit2YWwgPSB2YWwgLSAtLS0gKiAo
ZnQgLSBmaFtrXSkgLgorICAgICAgICAgICAgZnQKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgor
SWYgZmxba10gaXMgZ3JlYXRlciB0aGFuIHplcm8sIHRoZW4gdGhlIGRlY29kZXIgdXBkYXRlcyBy
bmcgdXNpbmcKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij48IVtDREFUQVsKKyAgICAgIHJuZworcm5nID0gLS0tICogKGZoW2tdIC0gZmxba10pIC4KKyAg
ICAgIGZ0CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK090aGVyd2lzZSwgaXQgdXBkYXRlcyBy
bmcgdXNpbmcKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij48IVtDREFUQVsKKyAgICAgICAgICAgIHJuZworcm5nID0gcm5nIC0gLS0tICogKGZ0IC0gZmhb
a10pIC4KKyAgICAgICAgICAgIGZ0CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKzx0
PgorVXNpbmcgYSBzcGVjaWFsIGNhc2UgZm9yIHRoZSBmaXJzdCBzeW1ib2wgKHJhdGhlciB0aGFu
IHRoZSBsYXN0IHN5bWJvbCwgYXMgaXMKKyBjb21tb25seSBkb25lIGluIG90aGVyIGFyaXRobWV0
aWMgY29kZXJzKSBlbnN1cmVzIHRoYXQgYWxsIHRoZSB0cnVuY2F0aW9uCisgZXJyb3IgZnJvbSB0
aGUgZmluaXRlIHByZWNpc2lvbiBhcml0aG1ldGljIGFjY3VtdWxhdGVzIGluIHN5bWJvbCAwLgor
VGhpcyBtYWtlcyB0aGUgY29zdCBvZiBjb2RpbmcgYSAwIHNsaWdodGx5IHNtYWxsZXIsIG9uIGF2
ZXJhZ2UsIHRoYW4gaXRzCisgZXN0aW1hdGVkIHByb2JhYmlsaXR5IGluZGljYXRlcyBhbmQgbWFr
ZXMgdGhlIGNvc3Qgb2YgY29kaW5nIGFueSBvdGhlciBzeW1ib2wKKyBzbGlnaHRseSBsYXJnZXIu
CitXaGVuIGNvbnRleHRzIGFyZSBkZXNpZ25lZCBzbyB0aGF0IDAgaXMgdGhlIG1vc3QgcHJvYmFi
bGUgc3ltYm9sLCB3aGljaCBpcworIG9mdGVuIHRoZSBjYXNlLCB0aGlzIHN0cmF0ZWd5IG1pbmlt
aXplcyB0aGUgaW5lZmZpY2llbmN5IGludHJvZHVjZWQgYnkgdGhlCisgZmluaXRlIHByZWNpc2lv
bi4KK0l0IGFsc28gbWFrZXMgc29tZSBvZiB0aGUgc3BlY2lhbC1jYXNlIGRlY29kaW5nIHJvdXRp
bmVzIGluCisgPHhyZWYgdGFyZ2V0PSJkZWNvZGluZy1hbHRlcm5hdGUiLz4gcGFydGljdWxhcmx5
IHNpbXBsZS4KKzwvdD4KKzx0PgorQWZ0ZXIgdGhlIHVwZGF0ZXMsIGltcGxlbWVudGVkIGJ5IGVj
X2RlY191cGRhdGUoKSAoZW50ZGVjLmMpLCB0aGUgZGVjb2RlcgorIG5vcm1hbGl6ZXMgdGhlIHJh
bmdlIHVzaW5nIHRoZSBwcm9jZWR1cmUgaW4gdGhlIG5leHQgc2VjdGlvbiwgYW5kIHJldHVybnMg
dGhlCisgaW5kZXggay4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJyYW5nZS1kZWNvZGVyLXJl
bm9ybSIgdGl0bGU9IlJlbm9ybWFsaXphdGlvbiI+Cis8dD4KK1RvIG5vcm1hbGl6ZSB0aGUgcmFu
Z2UsIHRoZSBkZWNvZGVyIHJlcGVhdHMgdGhlIGZvbGxvd2luZyBwcm9jZXNzLCBpbXBsZW1lbnRl
ZAorIGJ5IGVjX2RlY19ub3JtYWxpemUoKSAoZW50ZGVjLmMpLCB1bnRpbCBybmcmbmJzcDsmZ3Q7
Jm5ic3A7MioqMjMuCitJZiBybmcgaXMgYWxyZWFkeSBncmVhdGVyIHRoYW4gMioqMjMsIHRoZSBl
bnRpcmUgcHJvY2VzcyBpcyBza2lwcGVkLgorRmlyc3QsIGl0IHNldHMgcm5nIHRvIChybmcmbHQ7
Jmx0OzgpLgorVGhlbiBpdCByZWFkcyB0aGUgbmV4dCBieXRlIG9mIHRoZSBPcHVzIGZyYW1lIGFu
ZCBmb3JtcyBhbiA4LWJpdCB2YWx1ZSBzeW0sCisgdXNpbmcgdGhlIGxlZnQtb3ZlciBiaXQgYnVm
ZmVyZWQgZnJvbSB0aGUgcHJldmlvdXMgYnl0ZSBhcyB0aGUgaGlnaCBiaXQKKyBhbmQgdGhlIHRv
cCA3IGJpdHMgb2YgdGhlIGJ5dGUganVzdCByZWFkIGFzIHRoZSBvdGhlciA3IGJpdHMgb2Ygc3lt
LgorVGhlIHJlbWFpbmluZyBiaXQgaW4gdGhlIGJ5dGUganVzdCByZWFkIGlzIGJ1ZmZlcmVkIGZv
ciB1c2UgaW4gdGhlIG5leHQKKyBpdGVyYXRpb24uCitJZiBubyBtb3JlIGlucHV0IGJ5dGVzIHJl
bWFpbiwgaXQgdXNlcyB6ZXJvIGJpdHMgaW5zdGVhZC4KK1NlZSA8eHJlZiB0YXJnZXQ9InJhbmdl
LWRlY29kZXItaW5pdCIvPiBmb3IgdGhlIGluaXRpYWxpemF0aW9uIHVzZWQgdG8gcHJvY2Vzcwor
IHRoZSBmaXJzdCBieXRlLgorVGhlbiwgaXQgc2V0cworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4K
KzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwordmFsID0gKCh2YWw8PDgpICsgKDI1
NS1zeW0pKSAmIDB4N0ZGRkZGRkYgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8
dD4KK0l0IGlzIG5vcm1hbCBhbmQgZXhwZWN0ZWQgdGhhdCB0aGUgcmFuZ2UgZGVjb2RlciB3aWxs
IHJlYWQgc2V2ZXJhbCBieXRlcworIGludG8gdGhlIHJhdyBiaXRzIGRhdGEgKGlmIGFueSkgYXQg
dGhlIGVuZCBvZiB0aGUgcGFja2V0IGJ5IHRoZSB0aW1lIHRoZSBmcmFtZQorIGlzIGNvbXBsZXRl
bHkgZGVjb2RlZCwgYXMgaWxsdXN0cmF0ZWQgaW4gPHhyZWYgdGFyZ2V0PSJmaW5hbGl6ZS1leGFt
cGxlIi8+LgorVGhpcyBzYW1lIGRhdGEgTVVTVCBhbHNvIGJlIHJldHVybmVkIGFzIHJhdyBiaXRz
IHdoZW4gcmVxdWVzdGVkLgorVGhlIGVuY29kZXIgaXMgZXhwZWN0ZWQgdG8gdGVybWluYXRlIHRo
ZSBzdHJlYW0gaW4gc3VjaCBhIHdheSB0aGF0IHRoZSBkZWNvZGVyCisgd2lsbCBkZWNvZGUgdGhl
IGludGVuZGVkIHZhbHVlcyByZWdhcmRsZXNzIG9mIHRoZSBkYXRhIGNvbnRhaW5lZCBpbiB0aGUg
cmF3CisgYml0cy4KKzx4cmVmIHRhcmdldD0iZW5jb2Rlci1maW5hbGl6aW5nIi8+IGRlc2NyaWJl
cyBhIHByb2NlZHVyZSBmb3IgZG9pbmcgdGhpcy4KK0lmIHRoZSByYW5nZSBkZWNvZGVyIGNvbnN1
bWVzIGFsbCBvZiB0aGUgYnl0ZXMgYmVsb25naW5nIHRvIHRoZSBjdXJyZW50IGZyYW1lLAorIGl0
IE1VU1QgY29udGludWUgdG8gdXNlIHplcm8gd2hlbiBhbnkgZnVydGhlciBpbnB1dCBieXRlcyBh
cmUgcmVxdWlyZWQsIGV2ZW4KKyBpZiB0aGVyZSBpcyBhZGRpdGlvbmFsIGRhdGEgaW4gdGhlIGN1
cnJlbnQgcGFja2V0IGZyb20gcGFkZGluZyBvciBvdGhlcgorIGZyYW1lcy4KKzwvdD4KKworPGZp
Z3VyZSBhbmNob3I9ImZpbmFsaXplLWV4YW1wbGUiIHRpdGxlPSJJbGx1c3RyYXRpdmUgZXhhbXBs
ZSBvZiByYXcgYml0cworIG92ZXJsYXBwaW5nIHJhbmdlIGNvZGVyIGRhdGEiPgorPGFydHdvcmsg
YWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgbiAgICAgICAgICAgICAgbisxICAgICAgICAgICAg
IG4rMiAgICAgICAgICAgICBuKzMKKyAwIDEgMiAzIDQgNSA2IDcgMCAxIDIgMyA0IDUgNiA3IDAg
MSAyIDMgNCA1IDYgNyAwIDEgMiAzIDQgNSA2IDcKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCis6ICAgICB8IDwtLS0tLS0t
LS0tLSBPdmVybGFwIHJlZ2lvbiAtLS0tLS0tLS0tLS0+IHwgICAgICAgICAgICAgOgorKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSsKKyAgICAgIF4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgor
ICAgICAgfCAgIEVuZCBvZiBkYXRhIGJ1ZmZlcmVkIGJ5IHRoZSByYW5nZSBjb2RlciB8CisuLi4t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgIHwK
KyAgICAgIHwgRW5kIG9mIGRhdGEgY29uc3VtZWQgYnkgcmF3IGJpdHMKKyAgICAgICstLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLi4uCitdXT48
L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvc2VjdGlvbj4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
YW5jaG9yPSJkZWNvZGluZy1hbHRlcm5hdGUiIHRpdGxlPSJBbHRlcm5hdGUgRGVjb2RpbmcgTWV0
aG9kcyI+Cis8dD4KK1RoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gdXNlcyB0aHJlZSBhZGRp
dGlvbmFsIGRlY29kaW5nIG1ldGhvZHMgdGhhdCBhcmUKKyBleGFjdGx5IGVxdWl2YWxlbnQgdG8g
dGhlIGFib3ZlLCBidXQgbWFrZSBhc3N1bXB0aW9ucyBhbmQgc2ltcGxpZmljYXRpb25zIHRoYXQK
KyBhbGxvdyBmb3IgYSBtb3JlIGVmZmljaWVudCBpbXBsZW1lbnRhdGlvbi4KKzwvdD4KKzxzZWN0
aW9uIGFuY2hvcj0iZWNfZGVjb2RlX2JpbiIgdGl0bGU9ImVjX2RlY29kZV9iaW4oKSI+Cis8dD4K
K1RoZSBmaXJzdCBpcyBlY19kZWNvZGVfYmluKCkgKGVudGRlYy5jKSwgZGVmaW5lZCB1c2luZyB0
aGUgcGFyYW1ldGVyIGZ0YgorIGluc3RlYWQgb2YgZnQuCitJdCBpcyBtYXRoZW1hdGljYWxseSBl
cXVpdmFsZW50IHRvIGNhbGxpbmcgZWNfZGVjb2RlKCkgd2l0aAorIGZ0Jm5ic3A7PSZuYnNwOygx
Jmx0OyZsdDtmdGIpLCBidXQgYXZvaWRzIG9uZSBvZiB0aGUgZGl2aXNpb25zLgorPC90PgorPC9z
ZWN0aW9uPgorPHNlY3Rpb24gYW5jaG9yPSJlY19kZWNfYml0X2xvZ3AiIHRpdGxlPSJlY19kZWNf
Yml0X2xvZ3AoKSI+Cis8dD4KK1RoZSBuZXh0IGlzIGVjX2RlY19iaXRfbG9ncCgpIChlbnRkZWMu
YyksIHdoaWNoIGRlY29kZXMgYSBzaW5nbGUgYmluYXJ5IHN5bWJvbCwKKyByZXBsYWNpbmcgYm90
aCB0aGUgZWNfZGVjb2RlKCkgYW5kIGVjX2RlY191cGRhdGUoKSBzdGVwcy4KK1RoZSBjb250ZXh0
IGlzIGRlc2NyaWJlZCBieSBhIHNpbmdsZSBwYXJhbWV0ZXIsIGxvZ3AsIHdoaWNoIGlzIHRoZSBh
YnNvbHV0ZQorIHZhbHVlIG9mIHRoZSBiYXNlLTIgbG9nYXJpdGhtIG9mIHRoZSBwcm9iYWJpbGl0
eSBvZiBhICIxIi4KK0l0IGlzIG1hdGhlbWF0aWNhbGx5IGVxdWl2YWxlbnQgdG8gY2FsbGluZyBl
Y19kZWNvZGUoKSB3aXRoCisgZnQmbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2xvZ3ApLCBmb2xsb3dl
ZCBieSBlY19kZWNfdXBkYXRlKCkgd2l0aAorIHRoZSAzLXR1cGxlIChmbFtrXSZuYnNwOz0mbmJz
cDswLAorIGZoW2tdJm5ic3A7PSZuYnNwOygxJmx0OyZsdDtsb2dwKSZuYnNwOy0mbmJzcDsxLAor
IGZ0Jm5ic3A7PSZuYnNwOygxJmx0OyZsdDtsb2dwKSkgaWYgdGhlIHJldHVybmVkIHZhbHVlCisg
b2YgZnMgaXMgbGVzcyB0aGFuICgxJmx0OyZsdDtsb2dwKSZuYnNwOy0mbmJzcDsxIChhICIwIiB3
YXMgZGVjb2RlZCksIGFuZCB3aXRoCisgKGZsW2tdJm5ic3A7PSZuYnNwOygxJmx0OyZsdDtsb2dw
KSZuYnNwOy0mbmJzcDsxLAorIGZoW2tdJm5ic3A7PSZuYnNwO2Z0Jm5ic3A7PSZuYnNwOygxJmx0
OyZsdDtsb2dwKSkgb3RoZXJ3aXNlIChhICIxIiB3YXMKKyBkZWNvZGVkKS4KK1RoZSBpbXBsZW1l
bnRhdGlvbiByZXF1aXJlcyBubyBtdWx0aXBsaWNhdGlvbnMgb3IgZGl2aXNpb25zLgorPC90Pgor
PC9zZWN0aW9uPgorPHNlY3Rpb24gYW5jaG9yPSJlY19kZWNfaWNkZiIgdGl0bGU9ImVjX2RlY19p
Y2RmKCkiPgorPHQ+CitUaGUgbGFzdCBpcyBlY19kZWNfaWNkZigpIChlbnRkZWMuYyksIHdoaWNo
IGRlY29kZXMgYSBzaW5nbGUgc3ltYm9sIHdpdGggYQorIHRhYmxlLWJhc2VkIGNvbnRleHQgb2Yg
dXAgdG8gOCBiaXRzLCBhbHNvIHJlcGxhY2luZyBib3RoIHRoZSBlY19kZWNvZGUoKSBhbmQKKyBl
Y19kZWNfdXBkYXRlKCkgc3RlcHMsIGFzIHdlbGwgYXMgdGhlIHNlYXJjaCBmb3IgdGhlIGRlY29k
ZWQgc3ltYm9sIGluIGJldHdlZW4uCitUaGUgY29udGV4dCBpcyBkZXNjcmliZWQgYnkgdHdvIHBh
cmFtZXRlcnMsIGFuIGljZGYKKyAoImludmVyc2UiIGN1bXVsYXRpdmUgZGlzdHJpYnV0aW9uIGZ1
bmN0aW9uKSB0YWJsZSBhbmQgZnRiLgorQXMgd2l0aCBlY19kZWNvZGVfYmluKCksICgxJmx0OyZs
dDtmdGIpIGlzIGVxdWl2YWxlbnQgdG8gZnQuCitpZGNmW2tdLCBvbiB0aGUgb3RoZXIgaGFuZCwg
c3RvcmVzICgxJmx0OyZsdDtmdGIpLWZoW2tdLCB3aGljaCBpcyBlcXVhbCB0bworICgxJmx0OyZs
dDtmdGIpJm5ic3A7LSZuYnNwO2ZsW2srMV0uCitmbFswXSBpcyBhc3N1bWVkIHRvIGJlIDAsIGFu
ZCB0aGUgdGFibGUgaXMgdGVybWluYXRlZCBieSBhIHZhbHVlIG9mIDAgKHdoZXJlCisgZmhba10m
bmJzcDs9PSZuYnNwO2Z0KS4KKzwvdD4KKzx0PgorVGhlIGZ1bmN0aW9uIGlzIG1hdGhlbWF0aWNh
bGx5IGVxdWl2YWxlbnQgdG8gY2FsbGluZyBlY19kZWNvZGUoKSB3aXRoCisgZnQmbmJzcDs9Jm5i
c3A7KDEmbHQ7Jmx0O2Z0YiksIHVzaW5nIHRoZSByZXR1cm5lZCB2YWx1ZSBmcyB0byBzZWFyY2gg
dGhlIHRhYmxlCisgZm9yIHRoZSBmaXJzdCBlbnRyeSB3aGVyZSBmcyZuYnNwOyZsdDsmbmJzcDso
MSZsdDsmbHQ7ZnRiKS1pY2RmW2tdLCBhbmQKKyBjYWxsaW5nIGVjX2RlY191cGRhdGUoKSB3aXRo
CisgZmxba10mbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2Z0YikmbmJzcDstJm5ic3A7aWNkZltrLTFd
IChvciAwCisgaWYgayZuYnNwOz09Jm5ic3A7MCksIGZoW2tdJm5ic3A7PSZuYnNwOygxJmx0OyZs
dDtmdGIpJm5ic3A7LSZuYnNwO2lkY2Zba10sCisgYW5kIGZ0Jm5ic3A7PSZuYnNwOygxJmx0OyZs
dDtmdGIpLgorQ29tYmluaW5nIHRoZSBzZWFyY2ggd2l0aCB0aGUgdXBkYXRlIGFsbG93cyB0aGUg
ZGl2aXNpb24gdG8gYmUgcmVwbGFjZWQgYnkgYQorIHNlcmllcyBvZiBtdWx0aXBsaWNhdGlvbnMg
KHdoaWNoIGFyZSB1c3VhbGx5IG11Y2ggY2hlYXBlciksIGFuZCB1c2luZyBhbgorIGludmVyc2Ug
Q0RGIGFsbG93cyB0aGUgdXNlIG9mIGFuIGZ0YiBhcyBsYXJnZSBhcyA4IGluIGFuIDgtYml0IHRh
YmxlIHdpdGhvdXQKKyBhbnkgc3BlY2lhbCBjYXNlcy4KK1RoaXMgaXMgdGhlIHByaW1hcnkgaW50
ZXJmYWNlIHdpdGggdGhlIHJhbmdlIGRlY29kZXIgaW4gdGhlIFNJTEsgbGF5ZXIsIHRob3VnaAor
IGl0IGlzIHVzZWQgaW4gYSBmZXcgcGxhY2VzIGluIHRoZSBDRUxUIGxheWVyIGFzIHdlbGwuCis8
L3Q+Cis8dD4KK0FsdGhvdWdoIGljZGZba10gaXMgbW9yZSBjb252ZW5pZW50IGZvciB0aGUgY29k
ZSwgdGhlIGZyZXF1ZW5jeSBjb3VudHMsIGZba10sCisgYXJlIGEgbW9yZSBuYXR1cmFsIHJlcHJl
c2VudGF0aW9uIG9mIHRoZSBwcm9iYWJpbGl0eSBkaXN0cmlidXRpb24gZnVuY3Rpb24KKyAoUERG
KSBmb3IgYSBnaXZlbiBzeW1ib2wuCitUaGVyZWZvcmUgdGhpcyBkcmFmdCBsaXN0cyB0aGUgbGF0
dGVyLCBub3QgdGhlIGZvcm1lciwgd2hlbiBkZXNjcmliaW5nIHRoZQorIGNvbnRleHQgaW4gd2hp
Y2ggYSBzeW1ib2wgaXMgY29kZWQgYXMgYSBsaXN0LCBlLmcuLCB7NCwgNCwgNCwgNH0vMTYgZm9y
IGEKKyB1bmlmb3JtIGNvbnRleHQgd2l0aCBmb3VyIHBvc3NpYmxlIHZhbHVlcyBhbmQgZnQmbmJz
cDs9Jm5ic3A7MTYuCitUaGUgdmFsdWUgb2YgZnQgYWZ0ZXIgdGhlIHNsYXNoIGlzIGFsd2F5cyB0
aGUgc3VtIG9mIHRoZSBlbnRyaWVzIGluIHRoZSBQREYsCisgYnV0IGlzIGluY2x1ZGVkIGZvciBj
b252ZW5pZW5jZS4KK0NvbnRleHRzIHdpdGggaWRlbnRpY2FsIHByb2JhYmlsaXRpZXMsIGZba10v
ZnQsIGJ1dCBkaWZmZXJlbnQgdmFsdWVzIG9mIGZ0CisgKG9yIGVxdWl2YWxlbnRseSwgZnRiKSBh
cmUgbm90IHRoZSBzYW1lLCBhbmQgY2Fubm90LCBpbiBnZW5lcmFsLCBiZSB1c2VkIGluCisgcGxh
Y2Ugb2Ygb25lIGFub3RoZXIuCitBbiBpY2RmIHRhYmxlIGlzIGFsc28gbm90IGNhcGFibGUgb2Yg
cmVwcmVzZW50aW5nIGEgUERGIHdoZXJlIHRoZSBmaXJzdCBzeW1ib2wKKyBoYXMgMCBwcm9iYWJp
bGl0eS4KK0luIHN1Y2ggY29udGV4dHMsIGVjX2RlY19pY2RmKCkgY2FuIGRlY29kZSB0aGUgc3lt
Ym9sIGJ5IHVzaW5nIGEgdGFibGUgdGhhdAorIGRyb3BzIHRoZSBlbnRyaWVzIGZvciBhbnkgaW5p
dGlhbCB6ZXJvLXByb2JhYmlsaXR5IHZhbHVlcyBhbmQgYWRkaW5nIHRoZQorIGNvbnN0YW50IG9m
ZnNldCBvZiB0aGUgZmlyc3QgdmFsdWUgd2l0aCBhIG5vbi16ZXJvIHByb2JhYmlsaXR5IHRvIGl0
cyByZXR1cm4KKyB2YWx1ZS4KKzwvdD4KKzwvc2VjdGlvbj4KKzwvc2VjdGlvbj4KKworPHNlY3Rp
b24gYW5jaG9yPSJkZWNvZGluZy1iaXRzIiB0aXRsZT0iRGVjb2RpbmcgUmF3IEJpdHMiPgorPHQ+
CitUaGUgcmF3IGJpdHMgdXNlZCBieSB0aGUgQ0VMVCBsYXllciBhcmUgcGFja2VkIGF0IHRoZSBl
bmQgb2YgdGhlIHBhY2tldCwgd2l0aAorIHRoZSBsZWFzdCBzaWduaWZpY2FudCBiaXQgb2YgdGhl
IGZpcnN0IHZhbHVlIHBhY2tlZCBpbiB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQKKyBiaXQgb2YgdGhl
IGxhc3QgYnl0ZSwgZmlsbGluZyB1cCB0byB0aGUgbW9zdCBzaWduaWZpY2FudCBiaXQgaW4gdGhl
IGxhc3QgYnl0ZSwKKyBjb250aW51aW5nIG9uIHRvIHRoZSBsZWFzdCBzaWduaWZpY2FudCBiaXQg
b2YgdGhlIHBlbnVsdGltYXRlIGJ5dGUsIGFuZCBzbyBvbi4KK1RoZSByZWZlcmVuY2UgaW1wbGVt
ZW50YXRpb24gcmVhZHMgdGhlbSB1c2luZyBlY19kZWNfYml0cygpIChlbnRkZWMuYykuCitCZWNh
dXNlIHRoZSByYW5nZSBkZWNvZGVyIG11c3QgcmVhZCBzZXZlcmFsIGJ5dGVzIGFoZWFkIGluIHRo
ZSBzdHJlYW0sIGFzCisgZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0icmFuZ2UtZGVjb2Rlci1y
ZW5vcm0iLz4sIHRoZSBpbnB1dCBjb25zdW1lZCBieSB0aGUKKyByYXcgYml0cyBtYXkgb3Zlcmxh
cCB3aXRoIHRoZSBpbnB1dCBjb25zdW1lZCBieSB0aGUgcmFuZ2UgY29kZXIsIGFuZCBhIGRlY29k
ZXIKKyBNVVNUIGFsbG93IHRoaXMuCitUaGUgZm9ybWF0IHNob3VsZCByZW5kZXIgaXQgaW1wb3Nz
aWJsZSB0byBhdHRlbXB0IHRvIHJlYWQgbW9yZSByYXcgYml0cyB0aGFuCisgdGhlcmUgYXJlIGFj
dHVhbCBiaXRzIGluIHRoZSBmcmFtZSwgdGhvdWdoIGEgZGVjb2RlciBtYXkgd2lzaCB0byBjaGVj
ayBmb3IKKyB0aGlzIGFuZCByZXBvcnQgYW4gZXJyb3IuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxz
ZWN0aW9uIGFuY2hvcj0iZWNfZGVjX3VpbnQiIHRpdGxlPSJEZWNvZGluZyBVbmlmb3JtbHkgRGlz
dHJpYnV0ZWQgSW50ZWdlcnMiPgorPHQ+CitUaGUgZnVuY3Rpb24gZWNfZGVjX3VpbnQoKSAoZW50
ZGVjLmMpIGRlY29kZXMgb25lIG9mIGZ0IGVxdWlwcm9iYWJsZSB2YWx1ZXMgaW4KKyB0aGUgcmFu
Z2UgMCB0byAoZnQmbmJzcDstJm5ic3A7MSksIGluY2x1c2l2ZSwgZWFjaCB3aXRoIGEgZnJlcXVl
bmN5IG9mIDEsCisgd2hlcmUgZnQgbWF5IGJlIGFzIGxhcmdlIGFzICgyKiozMiZuYnNwOy0mbmJz
cDsxKS4KK0JlY2F1c2UgZWNfZGVjb2RlKCkgaXMgbGltaXRlZCB0byBhIHRvdGFsIGZyZXF1ZW5j
eSBvZiAoMioqMTYmbmJzcDstJm5ic3A7MSksCisgaXQgc3BsaXRzIHVwIHRoZSB2YWx1ZSBpbnRv
IGEgcmFuZ2UgY29kZWQgc3ltYm9sIHJlcHJlc2VudGluZyB1cCB0byA4IG9mIHRoZQorIGhpZ2gg
Yml0cywgYW5kLCBpZiBuZWNlc3NhcnksIHJhdyBiaXRzIHJlcHJlc2VudGluZyB0aGUgcmVtYWlu
ZGVyIG9mIHRoZQorIHZhbHVlLgorVGhlIGxpbWl0IG9mIDggYml0cyBpbiB0aGUgcmFuZ2UgY29k
ZWQgc3ltYm9sIGlzIGEgdHJhZGUtb2ZmIGJldHdlZW4KKyBpbXBsZW1lbnRhdGlvbiBjb21wbGV4
aXR5LCBtb2RlbGluZyBlcnJvciAoc2luY2UgdGhlIHN5bWJvbHMgbm8gbG9uZ2VyIHRydWx5Cisg
aGF2ZSBlcXVhbCBjb2RpbmcgY29zdCksIGFuZCByb3VuZGluZyBlcnJvciBpbnRyb2R1Y2VkIGJ5
IHRoZSByYW5nZSBjb2RlcgorIGl0c2VsZiAod2hpY2ggZ2V0cyBsYXJnZXIgYXMgbW9yZSBiaXRz
IGFyZSBpbmNsdWRlZCkuCitVc2luZyByYXcgYml0cyByZWR1Y2VzIHRoZSBtYXhpbXVtIG51bWJl
ciBvZiBkaXZpc2lvbnMgcmVxdWlyZWQgaW4gdGhlIHdvcnN0CisgY2FzZSwgYnV0IG1lYW5zIHRo
YXQgaXQgbWF5IGJlIHBvc3NpYmxlIHRvIGRlY29kZSBhIHZhbHVlIG91dHNpZGUgdGhlIHJhbmdl
CisgMCB0byAoZnQmbmJzcDstJm5ic3A7MSksIGluY2x1c2l2ZS4KKzwvdD4KKworPHQ+CitlY19k
ZWNfdWludCgpIHRha2VzIGEgc2luZ2xlLCBwb3NpdGl2ZSBwYXJhbWV0ZXIsIGZ0LCB3aGljaCBp
cyBub3QgbmVjZXNzYXJpbHkKKyBhIHBvd2VyIG9mIHR3bywgYW5kIHJldHVybnMgYW4gaW50ZWdl
ciwgdCwgd2hvc2UgdmFsdWUgbGllcyBiZXR3ZWVuIDAgYW5kCisgKGZ0Jm5ic3A7LSZuYnNwOzEp
LCBpbmNsdXNpdmUuCitMZXQgZnRiJm5ic3A7PSZuYnNwO2lsb2coZnQmbmJzcDstJm5ic3A7MSks
IGkuZS4sIHRoZSBudW1iZXIgb2YgYml0cyByZXF1aXJlZAorIHRvIHN0b3JlIChmdCZuYnNwOy0m
bmJzcDsxKSBpbiB0d28ncyBjb21wbGVtZW50IG5vdGF0aW9uLgorSWYgZnRiIGlzIDggb3IgbGVz
cywgdGhlbiB0IGlzIGRlY29kZWQgd2l0aCB0Jm5ic3A7PSZuYnNwO2VjX2RlY29kZShmdCksIGFu
ZAorIHRoZSByYW5nZSBjb2RlciBzdGF0ZSBpcyB1cGRhdGVkIHVzaW5nIHRoZSB0aHJlZS10dXBs
ZSAodCwgdCZuYnNwOysmbmJzcDsxLAorIGZ0KS4KKzwvdD4KKzx0PgorSWYgZnRiIGlzIGdyZWF0
ZXIgdGhhbiA4LCB0aGVuIHRoZSB0b3AgOCBiaXRzIG9mIHQgYXJlIGRlY29kZWQgdXNpbmcKKzxm
aWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsK
K3QgPSBlY19kZWNvZGUoKChmdCAtIDEpID4+IChmdGIgLSA4KSkgKyAxKSAsCitdXT48L2FydHdv
cms+Cis8L2ZpZ3VyZT4KKyB0aGUgZGVjb2RlciBzdGF0ZSBpcyB1cGRhdGVkIHVzaW5nIHRoZSB0
aHJlZS10dXBsZQorICh0LCB0Jm5ic3A7KyZuYnNwOzEsCisgKChmdCZuYnNwOy0mbmJzcDsxKSZu
YnNwOyZndDsmZ3Q7Jm5ic3A7KGZ0YiZuYnNwOy0mbmJzcDs4KSkmbmJzcDsrJm5ic3A7MSksCisg
YW5kIHRoZSByZW1haW5pbmcgYml0cyBhcmUgZGVjb2RlZCBhcyByYXcgYml0cywgc2V0dGluZwor
PGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRB
WwordCA9ICh0IDw8IChmdGIgLSA4KSkgfCBlY19kZWNfYml0cyhmdGIgLSA4KSAuCitdXT48L2Fy
dHdvcms+Cis8L2ZpZ3VyZT4KK0lmLCBhdCB0aGlzIHBvaW50LCB0ID49IGZ0LCB0aGVuIHRoZSBj
dXJyZW50IGZyYW1lIGlzIGNvcnJ1cHQuCitJbiB0aGF0IGNhc2UsIHRoZSBkZWNvZGVyIHNob3Vs
ZCBhc3N1bWUgdGhlcmUgaGFzIGJlZW4gYW4gZXJyb3IgaW4gdGhlIGNvZGluZywKKyBkZWNvZGlu
Zywgb3IgdHJhbnNtaXNzaW9uIGFuZCBTSE9VTEQgdGFrZSBtZWFzdXJlcyB0byBjb25jZWFsIHRo
ZQorIGVycm9yIGFuZC9vciByZXBvcnQgdG8gdGhlIGFwcGxpY2F0aW9uIHRoYXQgdGhlIGVycm9y
IGhhcyBvY2N1cnJlZC4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImRl
Y29kZXItdGVsbCIgdGl0bGU9IkN1cnJlbnQgQml0IFVzYWdlIj4KKzx0PgorVGhlIGJpdCBhbGxv
Y2F0aW9uIHJvdXRpbmVzIGluIHRoZSBDRUxUIGRlY29kZXIgbmVlZCBhIGNvbnNlcnZhdGl2ZSB1
cHBlciBib3VuZAorIG9uIHRoZSBudW1iZXIgb2YgYml0cyB0aGF0IGhhdmUgYmVlbiB1c2VkIGZy
b20gdGhlIGN1cnJlbnQgZnJhbWUgdGh1cyBmYXIsCisgaW5jbHVkaW5nIGJvdGggcmFuZ2UgY29k
ZXIgYml0cyBhbmQgcmF3IGJpdHMuCitUaGlzIGRyaXZlcyBhbGxvY2F0aW9uIGRlY2lzaW9ucyB0
aGF0IG11c3QgbWF0Y2ggdGhvc2UgbWFkZSBpbiB0aGUgZW5jb2Rlci4KK1RoZSB1cHBlciBib3Vu
ZCBpcyBjb21wdXRlZCBpbiB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIHRvIHdob2xlLWJp
dAorIHByZWNpc2lvbiBieSB0aGUgZnVuY3Rpb24gZWNfdGVsbCgpIChlbnRjb2RlLmgpIGFuZCB0
byBmcmFjdGlvbmFsIDEvOHRoIGJpdAorIHByZWNpc2lvbiBieSB0aGUgZnVuY3Rpb24gZWNfdGVs
bF9mcmFjKCkgKGVudGNvZGUuYykuCitMaWtlIGFsbCBvcGVyYXRpb25zIGluIHRoZSByYW5nZSBj
b2RlciwgaXQgbXVzdCBiZSBpbXBsZW1lbnRlZCBpbiBhIGJpdC1leGFjdAorIG1hbm5lciwgYW5k
IG11c3QgcHJvZHVjZSBleGFjdGx5IHRoZSBzYW1lIHZhbHVlIHJldHVybmVkIGJ5IHRoZSBzYW1l
IGZ1bmN0aW9ucworIGluIHRoZSBlbmNvZGVyIGFmdGVyIGVuY29kaW5nIHRoZSBzYW1lIHN5bWJv
bHMuCis8L3Q+Cis8dD4KK2VjX3RlbGwoKSBpcyBndWFyYW50ZWVkIHRvIHJldHVybiBjZWlsKGVj
X3RlbGxfZnJhYygpLzguMCkuCitJbiB2YXJpb3VzIHBsYWNlcyB0aGUgY29kZWMgd2lsbCBjaGVj
ayB0byBlbnN1cmUgdGhlcmUgaXMgZW5vdWdoIHJvb20gdG8KKyBjb250YWluIGEgc3ltYm9sIGJl
Zm9yZSBhdHRlbXB0aW5nIHRvIGRlY29kZSBpdC4KK0luIHByYWN0aWNlLCBhbHRob3VnaCB0aGUg
bnVtYmVyIG9mIGJpdHMgdXNlZCBzbyBmYXIgaXMgYW4gdXBwZXIgYm91bmQsCisgZGVjb2Rpbmcg
YSBzeW1ib2wgd2hvc2UgcHJvYmFiaWxpdHkgbW9kZWwgc3VnZ2VzdHMgaXQgaGFzIGEgd29yc3Qt
Y2FzZSBjb3N0IG9mCisgcCAxLzh0aCBiaXRzIG1heSBhY3R1YWxseSBhZHZhbmNlIHRoZSByZXR1
cm4gdmFsdWUgb2YgZWNfdGVsbF9mcmFjKCkgYnkKKyBwLTEsIHAsIG9yIHArMSAxLzh0aCBiaXRz
LCBkdWUgdG8gYXBwcm94aW1hdGlvbiBlcnJvciBpbiB0aGF0IHVwcGVyIGJvdW5kLAorIHRydW5j
YXRpb24gZXJyb3IgaW4gdGhlIHJhbmdlIGNvZGVyLCBhbmQgZm9yIGxhcmdlIHZhbHVlcyBvZiBm
dCwgbW9kZWxpbmcKKyBlcnJvciBpbiBlY19kZWNfdWludCgpLgorPC90PgorPHQ+CitIb3dldmVy
LCB0aGlzIGVycm9yIGlzIGJvdW5kZWQsIGFuZCBwZXJpb2RpYyBjYWxscyB0byBlY190ZWxsKCkg
b3IKKyBlY190ZWxsX2ZyYWMoKSBhdCBwcmVjaXNlbHkgZGVmaW5lZCBwb2ludHMgaW4gdGhlIGRl
Y29kaW5nIHByb2Nlc3MgcHJldmVudCBpdAorIGZyb20gYWNjdW11bGF0aW5nLgorRm9yIGEgcmFu
Z2UgY29kZXIgc3ltYm9sIHRoYXQgcmVxdWlyZXMgYSB3aG9sZSBudW1iZXIgb2YgYml0cyAoaS5l
LiwKKyBmb3Igd2hpY2ggZnQvKGZoW2tdJm5ic3A7LSZuYnNwO2ZsW2tdKSBpcyBhIHBvd2VyIG9m
IHR3byksIHdoZXJlIHRoZXJlIGFyZSBhdAorIGxlYXN0IHAgMS84dGggYml0cyBhdmFpbGFibGUs
IGRlY29kaW5nIHRoZSBzeW1ib2wgd2lsbCBuZXZlciBjYXVzZSBlY190ZWxsKCkgb3IKKyBlY190
ZWxsX2ZyYWMoKSB0byBleGNlZWQgdGhlIHNpemUgb2YgdGhlIGZyYW1lICgiYnVzdCB0aGUgYnVk
Z2V0IikuCitJbiB0aGlzIGNhc2UgdGhlIHJldHVybiB2YWx1ZSBvZiBlY190ZWxsX2ZyYWMoKSB3
aWxsIG9ubHkgYWR2YW5jZSBieSBtb3JlIHRoYW4KKyBwIDEvOHRoIGJpdHMgaWYgdGhlcmUgd2Fz
IGFuIGFkZGl0aW9uYWwsIGZyYWN0aW9uYWwgbnVtYmVyIG9mIGJpdHMgcmVtYWluaW5nLAorIGFu
ZCBpdCB3aWxsIG5ldmVyIGFkdmFuY2UgYmV5b25kIHRoZSBuZXh0IHdob2xlLWJpdCBib3VuZGFy
eSwgd2hpY2ggaXMgc2FmZSwKKyBzaW5jZSBmcmFtZXMgYWx3YXlzIGNvbnRhaW4gYSB3aG9sZSBu
dW1iZXIgb2YgYml0cy4KK0hvd2V2ZXIsIHdoZW4gcCBpcyBub3QgYSB3aG9sZSBudW1iZXIgb2Yg
Yml0cywgYW4gZXh0cmEgMS84dGggYml0IGlzIHJlcXVpcmVkCisgdG8gZW5zdXJlIHRoYXQgZGVj
b2RpbmcgdGhlIHN5bWJvbCB3aWxsIG5vdCBidXN0IHRoZSBidWRnZXQuCis8L3Q+Cis8dD4KK1Ro
ZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24ga2VlcHMgdHJhY2sgb2YgdGhlIHRvdGFsIG51bWJl
ciBvZiB3aG9sZSBiaXRzIHRoYXQKKyBoYXZlIGJlZW4gcHJvY2Vzc2VkIGJ5IHRoZSBkZWNvZGVy
IHNvIGZhciBpbiB0aGUgdmFyaWFibGUgbmJpdHNfdG90YWwsCisgaW5jbHVkaW5nIHRoZSAocG9z
c2libHkgZnJhY3Rpb25hbCkgbnVtYmVyIG9mIGJpdHMgdGhhdCBhcmUgY3VycmVudGx5CisgYnVm
ZmVyZWQsIGJ1dCBub3QgY29uc3VtZWQsIGluc2lkZSB0aGUgcmFuZ2UgY29kZXIuCituYml0c190
b3RhbCBpcyBpbml0aWFsaXplZCB0byA5IGp1c3QgYmVmb3JlIHRoZSBpbml0aWFsIHJhbmdlIHJl
bm9ybWFsaXphdGlvbgorIHByb2Nlc3MgY29tcGxldGVzIChvciBlcXVpdmFsZW50bHksIGl0IGNh
biBiZSBpbml0aWFsaXplZCB0byAzMyBhZnRlciB0aGUKKyBmaXJzdCByZW5vcm1hbGl6YXRpb24p
LgorVGhlIGV4dHJhIHR3byBiaXRzIG92ZXIgdGhlIGFjdHVhbCBhbW91bnQgYnVmZmVyZWQgYnkg
dGhlIHJhbmdlIGNvZGVyCisgZ3VhcmFudGVlcyB0aGF0IGl0IGlzIGFuIHVwcGVyIGJvdW5kIGFu
ZCB0aGF0IHRoZXJlIGlzIGVub3VnaCByb29tIGZvciB0aGUKKyBlbmNvZGVyIHRvIHRlcm1pbmF0
ZSB0aGUgc3RyZWFtLgorRWFjaCBpdGVyYXRpb24gdGhyb3VnaCB0aGUgcmFuZ2UgY29kZXIncyBy
ZW5vcm1hbGl6YXRpb24gbG9vcCBpbmNyZWFzZXMKKyBuYml0c190b3RhbCBieSA4LgorUmVhZGlu
ZyByYXcgYml0cyBpbmNyZWFzZXMgbmJpdHNfdG90YWwgYnkgdGhlIG51bWJlciBvZiByYXcgYml0
cyByZWFkLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImVjX3RlbGwiIHRpdGxlPSJlY190ZWxs
KCkiPgorPHQ+CitUaGUgd2hvbGUgbnVtYmVyIG9mIGJpdHMgYnVmZmVyZWQgaW4gcm5nIG1heSBi
ZSBlc3RpbWF0ZWQgdmlhIGxnID0gaWxvZyhybmcpLgorZWNfdGVsbCgpIHRoZW4gYmVjb21lcyBh
IHNpbXBsZSBtYXR0ZXIgb2YgcmVtb3ZpbmcgdGhlc2UgYml0cyBmcm9tIHRoZSB0b3RhbC4KK0l0
IHJldHVybnMgKG5iaXRzX3RvdGFsIC0gbGcpLgorPC90PgorPHQ+CitJbiBhIG5ld2x5IGluaXRp
YWxpemVkIGRlY29kZXIsIGJlZm9yZSBhbnkgc3ltYm9scyBoYXZlIGJlZW4gcmVhZCwgdGhpcyBy
ZXBvcnRzCisgdGhhdCAxIGJpdCBoYXMgYmVlbiB1c2VkLgorVGhpcyBpcyB0aGUgYml0IHJlc2Vy
dmVkIGZvciB0ZXJtaW5hdGlvbiBvZiB0aGUgZW5jb2Rlci4KKzwvdD4KKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gYW5jaG9yPSJlY190ZWxsX2ZyYWMiIHRpdGxlPSJlY190ZWxsX2ZyYWMoKSI+Cis8
dD4KK2VjX3RlbGxfZnJhYygpIGVzdGltYXRlcyB0aGUgbnVtYmVyIG9mIGJpdHMgYnVmZmVyZWQg
aW4gcm5nIHRvIGZyYWN0aW9uYWwKKyBwcmVjaXNpb24uCitTaW5jZSBybmcgbXVzdCBiZSBncmVh
dGVyIHRoYW4gMioqMjMgYWZ0ZXIgcmVub3JtYWxpemF0aW9uLCBsZyBtdXN0IGJlIGF0IGxlYXN0
CisgMjQuCitMZXQKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2Vu
dGVyIj4KKzwhW0NEQVRBWworcl9RMTUgPSBybmcgPj4gKGxnLTE2KSAsCitdXT48L2FydHdvcms+
Cis8L2ZpZ3VyZT4KKyBzbyB0aGF0IDMyNzY4ICZsdDs9IHJfUTE1ICZsdDsgNjU1MzYsIGFuIHVu
c2lnbmVkIFExNSB2YWx1ZSByZXByZXNlbnRpbmcgdGhlCisgZnJhY3Rpb25hbCBwYXJ0IG9mIHJu
Zy4KK1RoZW4gdGhlIGZvbGxvd2luZyBwcm9jZWR1cmUgY2FuIGJlIHVzZWQgdG8gYWRkIG9uZSBi
aXQgb2YgcHJlY2lzaW9uIHRvIGxnLgorRmlyc3QsIHVwZGF0ZQorPGZpZ3VyZSBhbGlnbj0iY2Vu
dGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCityX1ExNSA9IChyX1Ex
NSpyX1ExNSkgPj4gMTUgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGVuIGFkZCB0aGUg
MTZ0aCBiaXQgb2Ygcl9RMTUgdG8gbGcgdmlhCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFy
dHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKK2xnID0gMipsZyArIChyX1ExNSA+PiAx
NikgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitGaW5hbGx5LCBpZiB0aGlzIGJpdCB3YXMg
YSAxLCByZWR1Y2Ugcl9RMTUgYnkgYSBmYWN0b3Igb2YgdHdvIHZpYQorPGZpZ3VyZSBhbGlnbj0i
Y2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCityX1ExNSA9IHJf
UTE1ID4+IDEgLAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cisgc28gdGhhdCBpdCBvbmNlIGFn
YWluIGxpZXMgaW4gdGhlIHJhbmdlIDMyNzY4ICZsdDs9IHJfUTE1ICZsdDsgNjU1MzYuCis8L3Q+
Cis8dD4KK1RoaXMgcHJvY2VkdXJlIGlzIHJlcGVhdGVkIHRocmVlIHRpbWVzIHRvIGV4dGVuZCBs
ZyB0byAxLzh0aCBiaXQgcHJlY2lzaW9uLgorZWNfdGVsbF9mcmFjKCkgdGhlbiByZXR1cm5zIChu
Yml0c190b3RhbCo4IC0gbGcpLgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2RlY29kZXJfb3V0bGluZSIgdGl0bGU9
IlNJTEsgRGVjb2RlciI+Cis8dD4KK1RoZSBkZWNvZGVyJ3MgTFAgbGF5ZXIgdXNlcyBhIG1vZGlm
aWVkIHZlcnNpb24gb2YgdGhlIFNJTEsgY29kZWMgKGhlcmVpbiBzaW1wbHkKKyBjYWxsZWQgIlNJ
TEsiKSwgd2hpY2ggcnVucyBhIGRlY29kZWQgZXhjaXRhdGlvbiBzaWduYWwgdGhyb3VnaCBhZGFw
dGl2ZQorIGxvbmctdGVybSBhbmQgc2hvcnQtdGVybSBwcmVkaWN0aW9uIHN5bnRoZXNpcyBmaWx0
ZXJzLgorSXQgcnVucyBhdCBOQiwgTUIsIGFuZCBXQiBzYW1wbGUgcmF0ZXMgaW50ZXJuYWxseS4K
K1doZW4gdXNlZCBpbiBhIFNXQiBvciBGQiBIeWJyaWQgZnJhbWUsIHRoZSBMUCBsYXllciBpdHNl
bGYgc3RpbGwgb25seSBydW5zIGluCisgV0IuCis8L3Q+CisKKzxzZWN0aW9uIHRpdGxlPSJTSUxL
IERlY29kZXIgTW9kdWxlcyI+Cis8dD4KK0FuIG92ZXJ2aWV3IG9mIHRoZSBkZWNvZGVyIGlzIGdp
dmVuIGluIDx4cmVmIHRhcmdldD0ic2lsa19kZWNvZGVyX2ZpZ3VyZSIvPi4KKzwvdD4KKzxmaWd1
cmUgYWxpZ249ImNlbnRlciIgYW5jaG9yPSJzaWxrX2RlY29kZXJfZmlndXJlIiB0aXRsZT0iU0lM
SyBEZWNvZGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisgICArLS0t
LS0tLS0tKyAgICArLS0tLS0tLS0tLS0tKworLS0+fCBSYW5nZSAgIHwtLS0+fCBEZWNvZGUgICAg
IHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgMSB8IERlY29kZXIgfCAyICB8IFBhcmFt
ZXRlcnMgfC0tLS0tLS0tLS0rICAgICAgIDUgICAgICAgIHwKKyAgICstLS0tLS0tLS0rICAgICst
LS0tLS0tLS0tLS0rICAgICA0ICAgIHwgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgICAg
ICAgICAgICAzIHwgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICB8CisgICAgICAgICAg
ICAgICAgICAgICAgICBcLyAgICAgICAgICAgICAgIFwvICAgICAgICAgICAgICAgXC8KKyAgICAg
ICAgICAgICAgICAgICstLS0tLS0tLS0tLS0rICAgKy0tLS0tLS0tLS0tLSsgICArLS0tLS0tLS0t
LS0tKworICAgICAgICAgICAgICAgICAgfCBHZW5lcmF0ZSAgIHwtLT58IExUUCAgICAgICAgfC0t
PnwgTFBDICAgICAgICB8CisgICAgICAgICAgICAgICAgICB8IEV4Y2l0YXRpb24gfCAgIHwgU3lu
dGhlc2lzICB8ICAgfCBTeW50aGVzaXMgIHwKKyAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0t
LS0rICAgKy0tLS0tLS0tLS0tLSsgICArLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXiAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwKKyAgICAgICAg
ICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKworICAg
ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDYKKyAgICAgICAgICAgICAgICAgICAgICB8ICAgKy0tLS0tLS0tLS0tLSsgICArLS0tLS0tLS0t
LS0tLSsKKyAgICAgICAgICAgICAgICAgICAgICArLS0+fCBTdGVyZW8gICAgIHwtLT58IFNhbXBs
ZSBSYXRlIHwtLT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgfCBVbm1peGluZyAgIHwgNyB8
IENvbnZlcnNpb24gIHwgOAorICAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0t
KyAgICstLS0tLS0tLS0tLS0tKworCisxOiBSYW5nZSBlbmNvZGVkIGJpdHN0cmVhbQorMjogQ29k
ZWQgcGFyYW1ldGVycworMzogUHVsc2VzLCBMU0JzLCBhbmQgc2lnbnMKKzQ6IFBpdGNoIGxhZ3Ms
IExvbmctVGVybSBQcmVkaWN0aW9uIChMVFApIGNvZWZmaWNpZW50cworNTogTGluZWFyIFByZWRp
Y3RpdmUgQ29kaW5nIChMUEMpIGNvZWZmaWNpZW50cyBhbmQgZ2FpbnMKKzY6IERlY29kZWQgc2ln
bmFsIChtb25vIG9yIG1pZC1zaWRlIHN0ZXJlbykKKzc6IFVubWl4ZWQgc2lnbmFsIChtb25vIG9y
IGxlZnQtcmlnaHQgc3RlcmVvKQorODogUmVzYW1wbGVkIHNpZ25hbAorXV0+Cis8L2FydHdvcms+
Cis8L2ZpZ3VyZT4KKworPHQ+CitUaGUgZGVjb2RlciBmZWVkcyB0aGUgYml0c3RyZWFtICgxKSB0
byB0aGUgcmFuZ2UgZGVjb2RlciBmcm9tCisgPHhyZWYgdGFyZ2V0PSJyYW5nZS1kZWNvZGVyIi8+
LCBhbmQgdGhlbiBkZWNvZGVzIHRoZSBwYXJhbWV0ZXJzIGluIGl0ICgyKQorIHVzaW5nIHRoZSBw
cm9jZWR1cmVzIGRldGFpbGVkIGluCisgU2VjdGlvbnMmbmJzcDs8eHJlZiBmb3JtYXQ9ImNvdW50
ZXIiIHRhcmdldD0ic2lsa19oZWFkZXJfYml0cyIvPgorIHRocm91Z2gmbmJzcDs8eHJlZiBmb3Jt
YXQ9ImNvdW50ZXIiIHRhcmdldD0ic2lsa19zaWducyIvPi4KK1RoZXNlIHBhcmFtZXRlcnMgKDMs
IDQsIDUpIGFyZSB1c2VkIHRvIGdlbmVyYXRlIGFuIGV4Y2l0YXRpb24gc2lnbmFsIChzZWUKKyA8
eHJlZiB0YXJnZXQ9InNpbGtfZXhjaXRhdGlvbl9yZWNvbnN0cnVjdGlvbiIvPiksIHdoaWNoIGlz
IGZlZCB0byBhbiBvcHRpb25hbAorIGxvbmctdGVybSBwcmVkaWN0aW9uIChMVFApIGZpbHRlciAo
dm9pY2VkIGZyYW1lcyBvbmx5LCBzZWUKKyA8eHJlZiB0YXJnZXQ9InNpbGtfbHRwX3N5bnRoZXNp
cyIvPikgYW5kIHRoZW4gYSBzaG9ydC10ZXJtIHByZWRpY3Rpb24gZmlsdGVyCisgKHNlZSA8eHJl
ZiB0YXJnZXQ9InNpbGtfbHBjX3N5bnRoZXNpcyIvPiksIHByb2R1Y2luZyB0aGUgZGVjb2RlZCBz
aWduYWwgKDYpLgorRm9yIHN0ZXJlbyBzdHJlYW1zLCB0aGUgbWlkLXNpZGUgcmVwcmVzZW50YXRp
b24gaXMgY29udmVydGVkIHRvIHNlcGFyYXRlIGxlZnQKKyBhbmQgcmlnaHQgY2hhbm5lbHMgKDcp
LgorVGhlIHJlc3VsdCBpcyBmaW5hbGx5IHJlc2FtcGxlZCB0byB0aGUgZGVzaXJlZCBvdXRwdXQg
c2FtcGxlIHJhdGUgKGUuZy4sCisgNDgmbmJzcDtrSHopIHNvIHRoYXQgdGhlIHJlc2FtcGxlZCBz
aWduYWwgKDgpIGNhbiBiZSBtaXhlZCB3aXRoIHRoZSBDRUxUCisgbGF5ZXIuCis8L3Q+CisKKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2xheWVyX29yZ2FuaXphdGlvbiIgdGl0
bGU9IkxQIExheWVyIE9yZ2FuaXphdGlvbiI+CisKKzx0PgorSW50ZXJuYWxseSwgdGhlIExQIGxh
eWVyIG9mIGEgc2luZ2xlIE9wdXMgZnJhbWUgaXMgY29tcG9zZWQgb2YgZWl0aGVyIGEgc2luZ2xl
CisgMTAmbmJzcDttcyByZWd1bGFyIFNJTEsgZnJhbWUgb3IgYmV0d2VlbiBvbmUgYW5kIHRocmVl
IDIwJm5ic3A7bXMgcmVndWxhciBTSUxLCisgZnJhbWVzLgorQSBzdGVyZW8gT3B1cyBmcmFtZSBt
YXkgZG91YmxlIHRoZSBudW1iZXIgb2YgcmVndWxhciBTSUxLIGZyYW1lcyAodXAgdG8gYSB0b3Rh
bAorIG9mIHNpeCksIHNpbmNlIGl0IGluY2x1ZGVzIHNlcGFyYXRlIGZyYW1lcyBmb3IgYSBtaWQg
Y2hhbm5lbCBhbmQsIG9wdGlvbmFsbHksCisgYSBzaWRlIGNoYW5uZWwuCitPcHRpb25hbCBMb3cg
Qml0LVJhdGUgUmVkdW5kYW5jeSAoTEJSUikgZnJhbWVzLCB3aGljaCBhcmUgcmVkdWNlZC1iaXRy
YXRlCisgZW5jb2RpbmdzIG9mIHByZXZpb3VzIFNJTEsgZnJhbWVzLCBtYXkgYmUgaW5jbHVkZWQg
dG8gYWlkIGluIHJlY292ZXJ5IGZyb20KKyBwYWNrZXQgbG9zcy4KK0lmIHByZXNlbnQsIHRoZXNl
IGFwcGVhciBiZWZvcmUgdGhlIHJlZ3VsYXIgU0lMSyBmcmFtZXMuCitUaGV5IGFyZSBpbiBtb3N0
IHJlc3BlY3RzIGlkZW50aWNhbCB0byByZWd1bGFyLCBhY3RpdmUgU0lMSyBmcmFtZXMsIGV4Y2Vw
dCB0aGF0CisgdGhleSBhcmUgdXN1YWxseSBlbmNvZGVkIHdpdGggYSBsb3dlciBiaXRyYXRlLgor
VGhpcyBkcmFmdCB1c2VzICJTSUxLIGZyYW1lIiB0byByZWZlciB0byBlaXRoZXIgb25lIGFuZCAi
cmVndWxhciBTSUxLIGZyYW1lIiBpZgorIGl0IG5lZWRzIHRvIGRyYXcgYSBkaXN0aW5jdGlvbiBi
ZXR3ZWVuIHRoZSB0d28uCis8L3Q+Cis8dD4KK0xvZ2ljYWxseSwgZWFjaCBTSUxLIGZyYW1lIGlz
IGluIHR1cm4gY29tcG9zZWQgb2YgZWl0aGVyIHR3byBvciBmb3VyIDUmbmJzcDttcworIHN1YmZy
YW1lcy4KK1ZhcmlvdXMgcGFyYW1ldGVycywgc3VjaCBhcyB0aGUgcXVhbnRpemF0aW9uIGdhaW4g
b2YgdGhlIGV4Y2l0YXRpb24gYW5kIHRoZQorIHBpdGNoIGxhZyBhbmQgZmlsdGVyIGNvZWZmaWNp
ZW50cyBjYW4gdmFyeSBvbiBhIHN1YmZyYW1lLWJ5LXN1YmZyYW1lIGJhc2lzLgorUGh5c2ljYWxs
eSwgdGhlIHBhcmFtZXRlcnMgZm9yIGVhY2ggc3ViZnJhbWUgYXJlIGludGVybGVhdmVkIGluIHRo
ZSBiaXRzdHJlYW0sCisgYXMgZGVzY3JpYmVkIGluIHRoZSByZWxldmFudCBzZWN0aW9ucyBmb3Ig
ZWFjaCBwYXJhbWV0ZXIuCis8L3Q+Cis8dD4KK0FsbCBvZiB0aGVzZSBmcmFtZXMgYW5kIHN1YmZy
YW1lcyBhcmUgZGVjb2RlZCBmcm9tIHRoZSBzYW1lIHJhbmdlIGNvZGVyLCB3aXRoCisgbm8gcGFk
ZGluZyBiZXR3ZWVuIHRoZW0uCitUaHVzIHBhY2tpbmcgbXVsdGlwbGUgU0lMSyBmcmFtZXMgaW4g
YSBzaW5nbGUgT3B1cyBmcmFtZSBzYXZlcywgb24gYXZlcmFnZSwKKyBoYWxmIGEgYnl0ZSBwZXIg
U0lMSyBmcmFtZS4KK0l0IGFsc28gYWxsb3dzIHNvbWUgcGFyYW1ldGVycyB0byBiZSBwcmVkaWN0
ZWQgZnJvbSBwcmlvciBTSUxLIGZyYW1lcyBpbiB0aGUKKyBzYW1lIE9wdXMgZnJhbWUsIHNpbmNl
IHRoaXMgZG9lcyBub3QgZGVncmFkZSBwYWNrZXQgbG9zcyByb2J1c3RuZXNzIChiZXlvbmQKKyBh
bnkgcGVuYWx0eSBmb3IgbWVyZWx5IHVzaW5nIGZld2VyLCBsYXJnZXIgcGFja2V0cyB0byBzdG9y
ZSBtdWx0aXBsZSBmcmFtZXMpLgorPC90PgorCis8dD4KK1N0ZXJlbyBzdXBwb3J0IGluIFNJTEsg
dXNlcyBhIHZhcmlhbnQgb2YgbWlkLXNpZGUgY29kaW5nLCBhbGxvd2luZyBhIG1vbm8KKyBkZWNv
ZGVyIHRvIHNpbXBseSBkZWNvZGUgdGhlIG1pZCBjaGFubmVsLgorSG93ZXZlciwgdGhlIGRhdGEg
Zm9yIHRoZSB0d28gY2hhbm5lbHMgaXMgaW50ZXJsZWF2ZWQsIHNvIGEgbW9ubyBkZWNvZGVyIG11
c3QKKyBzdGlsbCB1bnBhY2sgdGhlIGRhdGEgZm9yIHRoZSBzaWRlIGNoYW5uZWwuCitJdCB3b3Vs
ZCBiZSByZXF1aXJlZCB0byBkbyBzbyBhbnl3YXkgZm9yIEh5YnJpZCBPcHVzIGZyYW1lcywgb3Ig
dG8gc3VwcG9ydAorIGRlY29kaW5nIGluZGl2aWR1YWwgMjAmbmJzcDttcyBmcmFtZXMuCis8L3Q+
CisKKzx0PgorPHhyZWYgdGFyZ2V0PSJzaWxrX3N5bWJvbHMiLz4gc3VtbWFyaXplcyB0aGUgb3Zl
cmFsbCBncm91cGluZyBvZiB0aGUgY29udGVudHMgb2YKKyB0aGUgTFAgbGF5ZXIuCitGaWd1cmVz
Jm5ic3A7PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfbW9ub182MG1zX2ZyYW1l
Ii8+CisgYW5kJm5ic3A7PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfc3RlcmVv
XzYwbXNfZnJhbWUiLz4gaWxsdXN0cmF0ZQorIHRoZSBvcmRlcmluZyBvZiB0aGUgdmFyaW91cyBT
SUxLIGZyYW1lcyBmb3IgYSA2MCZuYnNwO21zIE9wdXMgZnJhbWUsIGZvciBib3RoCisgbW9ubyBh
bmQgc3RlcmVvLCByZXNwZWN0aXZlbHkuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxr
X3N5bWJvbHMiCisgdGl0bGU9Ik9yZ2FuaXphdGlvbiBvZiB0aGUgU0lMSyBsYXllciBvZiBhbiBP
cHVzIGZyYW1lIj4KKzx0dGNvbCBhbGlnbj0iY2VudGVyIj5TeW1ib2wocyk8L3R0Y29sPgorPHR0
Y29sIGFsaWduPSJjZW50ZXIiPlBERihzKTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+
Q29uZGl0aW9uPC90dGNvbD4KKworPGM+Vm9pY2UgQWN0aXZpdHkgRGV0ZWN0aW9uIChWQUQpIGZs
YWdzPC9jPgorPGM+ezEsIDF9LzI8L2M+Cis8Yy8+CisKKzxjPkxCUlIgZmxhZzwvYz4KKzxjPnsx
LCAxfS8yPC9jPgorPGMvPgorCis8Yz5QZXItZnJhbWUgTEJSUiBmbGFnczwvYz4KKzxjPjx4cmVm
IHRhcmdldD0ic2lsa19sYnJyX2ZsYWdfcGRmcyIvPjwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2ls
a19sYnJyX2ZsYWdzIi8+PC9jPgorCis8Yz5MQlJSIEZyYW1lKHMpPC9jPgorPGM+PHhyZWYgdGFy
Z2V0PSJzaWxrX2ZyYW1lIi8+PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2xicnJfZmxhZ3Mi
Lz48L2M+CisKKzxjPlJlZ3VsYXIgU0lMSyBGcmFtZShzKTwvYz4KKzxjPjx4cmVmIHRhcmdldD0i
c2lsa19mcmFtZSIvPjwvYz4KKzxjLz4KKworPC90ZXh0dGFibGU+CisKKzxmaWd1cmUgYWxpZ249
ImNlbnRlciIgYW5jaG9yPSJzaWxrX21vbm9fNjBtc19mcmFtZSIKKyB0aXRsZT0iQSA2MCZuYnNw
O21zIE1vbm8gRnJhbWUiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisrLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgICAgICAgIFZBRCBGbGFncyAg
ICAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAg
ICAgICAgTEJSUiBGbGFnICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSsKK3wgUGVyLUZyYW1lIExCUlIgRmxhZ3MgKE9wdGlvbmFsKSB8CisrLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgTEJSUiBGcmFtZSAxIChPcHRpb25hbCkg
ICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICBMQlJSIEZy
YW1lIDIgKE9wdGlvbmFsKSAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSsKK3wgICAgIExCUlIgRnJhbWUgMyAoT3B0aW9uYWwpICAgICB8CisrLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgIFJlZ3VsYXIgU0lMSyBGcmFtZSAxICAgICAgIHwK
KystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAgUmVndWxhciBTSUxL
IEZyYW1lIDIgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wg
ICAgICBSZWd1bGFyIFNJTEsgRnJhbWUgMyAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzxmaWd1cmUgYWxpZ249
ImNlbnRlciIgYW5jaG9yPSJzaWxrX3N0ZXJlb182MG1zX2ZyYW1lIgorIHRpdGxlPSJBIDYwJm5i
c3A7bXMgU3RlcmVvIEZyYW1lIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgICAgICAgICAg
TWlkIFZBRCBGbGFncyAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tKworfCAgICAgICAgICAgICBNaWQgTEJSUiBGbGFnICAgICAgICAgICAgIHwK
KystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAgICAgICAg
IFNpZGUgVkFEIEZsYWdzICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSsKK3wgICAgICAgICAgICAgU2lkZSBMQlJSIEZsYWcgICAgICAgICAgICB8
CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgTWlkIFBlci1G
cmFtZSBMQlJSIEZsYWdzIChPcHRpb25hbCkgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0rCit8IFNpZGUgUGVyLUZyYW1lIExCUlIgRmxhZ3MgKE9wdGlvbmFsKSAg
fAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgIE1pZCBM
QlJSIEZyYW1lIDEgKE9wdGlvbmFsKSAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tKworfCAgICAgU2lkZSBMQlJSIEZyYW1lIDEgKE9wdGlvbmFsKSAgICAg
IHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICBNaWQg
TEJSUiBGcmFtZSAyIChPcHRpb25hbCkgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgIFNpZGUgTEJSUiBGcmFtZSAyIChPcHRpb25hbCkgICAg
ICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgTWlk
IExCUlIgRnJhbWUgMyAoT3B0aW9uYWwpICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICBTaWRlIExCUlIgRnJhbWUgMyAoT3B0aW9uYWwpICAg
ICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgICBN
aWQgUmVndWxhciBTSUxLIEZyYW1lIDEgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tKworfCBTaWRlIFJlZ3VsYXIgU0lMSyBGcmFtZSAxIChPcHRpb25h
bCkgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAg
TWlkIFJlZ3VsYXIgU0lMSyBGcmFtZSAyICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgU2lkZSBSZWd1bGFyIFNJTEsgRnJhbWUgMiAoT3B0aW9u
YWwpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAg
IE1pZCBSZWd1bGFyIFNJTEsgRnJhbWUgMyAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IFNpZGUgUmVndWxhciBTSUxLIEZyYW1lIDMgKE9wdGlv
bmFsKSAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK11dPjwv
YXJ0d29yaz4KKzwvZmlndXJlPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2ls
a19oZWFkZXJfYml0cyIgdGl0bGU9IkhlYWRlciBCaXRzIj4KKzx0PgorVGhlIExQIGxheWVyIGJl
Z2lucyB3aXRoIHR3byB0byBlaWdodCBoZWFkZXIgYml0cywgZGVjb2RlZCBpbiBzaWxrX0RlY29k
ZSgpCisgKGRlY19BUEkuYykuCitUaGVzZSBjb25zaXN0IG9mIG9uZSBWb2ljZSBBY3Rpdml0eSBE
ZXRlY3Rpb24gKFZBRCkgYml0IHBlciBmcmFtZSAodXAgdG8gMyksCisgZm9sbG93ZWQgYnkgYSBz
aW5nbGUgZmxhZyBpbmRpY2F0aW5nIHRoZSBwcmVzZW5jZSBvZiBMQlJSIGZyYW1lcy4KK0ZvciBh
IHN0ZXJlbyBwYWNrZXQsIHRoZXNlIGZpcnN0IGZsYWdzIGNvcnJlc3BvbmQgdG8gdGhlIG1pZCBj
aGFubmVsLCBhbmQgYQorIHNlY29uZCBzZXQgb2YgZmxhZ3MgaXMgaW5jbHVkZWQgZm9yIHRoZSBz
aWRlIGNoYW5uZWwuCis8L3Q+Cis8dD4KK0JlY2F1c2UgdGhlc2UgYXJlIHRoZSBmaXJzdCBzeW1i
b2xzIGRlY29kZWQgYnkgdGhlIHJhbmdlIGNvZGVyIGFuZCBiZWNhdXNlIHRoZXkKKyBhcmUgY29k
ZWQgYXMgYmluYXJ5IHZhbHVlcyB3aXRoIHVuaWZvcm0gcHJvYmFiaWxpdHksIHRoZXkgY2FuIGJl
IGV4dHJhY3RlZAorIGRpcmVjdGx5IGZyb20gdGhlIG1vc3Qgc2lnbmlmaWNhbnQgYml0cyBvZiB0
aGUgZmlyc3QgYnl0ZSBvZiBjb21wcmVzc2VkIGRhdGEuCitUaHVzLCBhIHJlY2VpdmVyIGNhbiBk
ZXRlcm1pbmUgaWYgYW4gT3B1cyBmcmFtZSBjb250YWlucyBhbnkgYWN0aXZlIFNJTEsgZnJhbWVz
Cisgd2l0aG91dCB0aGUgb3ZlcmhlYWQgb2YgdXNpbmcgdGhlIHJhbmdlIGRlY29kZXIuCis8L3Q+
Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19sYnJyX2ZsYWdzIiB0aXRsZT0i
UGVyLUZyYW1lIExCUlIgRmxhZ3MiPgorPHQ+CitGb3IgT3B1cyBmcmFtZXMgbG9uZ2VyIHRoYW4g
MjAmbmJzcDttcywgYSBzZXQgb2YgTEJSUiBmbGFncyBpcworIGRlY29kZWQgZm9yIGVhY2ggY2hh
bm5lbCB0aGF0IGhhcyBpdHMgTEJSUiBmbGFnIHNldC4KK0VhY2ggc2V0IGNvbnRhaW5zIG9uZSBm
bGFnIHBlciAyMCZuYnNwO21zIFNJTEsgZnJhbWUuCis0MCZuYnNwO21zIE9wdXMgZnJhbWVzIHVz
ZSB0aGUgMi1mcmFtZSBMQlJSIGZsYWcgUERGIGZyb20KKyA8eHJlZiB0YXJnZXQ9InNpbGtfbGJy
cl9mbGFnX3BkZnMiLz4sIGFuZCA2MCZuYnNwO21zIE9wdXMgZnJhbWVzIHVzZSB0aGUKKyAzLWZy
YW1lIExCUlIgZmxhZyBQREYuCitGb3IgZWFjaCBjaGFubmVsLCB0aGUgcmVzdWx0aW5nIDItIG9y
IDMtYml0IGludGVnZXIgY29udGFpbnMgdGhlIGNvcnJlc3BvbmRpbmcKKyBMQlJSIGZsYWcgZm9y
IGVhY2ggZnJhbWUsIHBhY2tlZCBpbiBvcmRlciBmcm9tIHRoZSBMU0IgdG8gdGhlIE1TQi4KKzwv
dD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbGJycl9mbGFnX3BkZnMiIHRpdGxlPSJMQlJS
IEZsYWcgUERGcyI+Cis8dHRjb2w+RnJhbWUgU2l6ZTwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNv
bD4KKzxjPjQwJm5ic3A7bXM8L2M+IDxjPnswLCA1MywgNTMsIDE1MH0vMjU2PC9jPgorPGM+NjAm
bmJzcDttczwvYz4gPGM+ezAsIDQxLCAyMCwgMjksIDQxLCAxNSwgMjgsIDgyfS8yNTY8L2M+Cis8
L3RleHR0YWJsZT4KKworPHQ+CitBIDEwJm5ic3A7b3IgMjAmbmJzcDttcyBPcHVzIGZyYW1lIGRv
ZXMgbm90IGNvbnRhaW4gYW55IHBlci1mcmFtZSBMQlJSIGZsYWdzLAorIGFzIHRoZXJlIG1heSBi
ZSBhdCBtb3N0IG9uZSBMQlJSIGZyYW1lIHBlciBjaGFubmVsLgorVGhlIGdsb2JhbCBMQlJSIGZs
YWcgaW4gdGhlIGhlYWRlciBiaXRzIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2hlYWRlcl9iaXRz
Ii8+KQorIGlzIGFscmVhZHkgc3VmZmljaWVudCB0byBpbmRpY2F0ZSB0aGUgcHJlc2VuY2Ugb2Yg
dGhhdCBzaW5nbGUgTEJSUiBmcmFtZS4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBh
bmNob3I9InNpbGtfbGJycl9mcmFtZXMiIHRpdGxlPSJMQlJSIEZyYW1lcyI+Cis8dD4KK1RoZSBM
QlJSIGZyYW1lcywgaWYgcHJlc2VudCwgY29udGFpbiBhbiBlbmNvZGVkIHJlcHJlc2VudGF0aW9u
IG9mIHRoZSBzaWduYWwKKyBpbW1lZGlhdGVseSBwcmlvciB0byB0aGUgY3VycmVudCBPcHVzIGZy
YW1lIGFzIGlmIGl0IHdlcmUgZW5jb2RlZCB3aXRoIHRoZQorIGN1cnJlbnQgbW9kZSwgZnJhbWUg
c2l6ZSwgYXVkaW8gYmFuZHdpZHRoLCBhbmQgY2hhbm5lbCBjb3VudCwgZXZlbiBpZiB0aG9zZQor
IGRpZmZlciBmcm9tIHRoZSBwcmlvciBPcHVzIGZyYW1lLgorV2hlbiBvbmUgb2YgdGhlc2UgcGFy
YW1ldGVycyBjaGFuZ2VzIGZyb20gb25lIE9wdXMgZnJhbWUgdG8gdGhlIG5leHQsIHRoaXMKKyBp
bXBsaWVzIHRoYXQgdGhlIExCUlIgZnJhbWVzIG9mIHRoZSBjdXJyZW50IE9wdXMgZnJhbWUgbWF5
IG5vdCBiZSBzaW1wbGUKKyBkcm9wLWluIHJlcGxhY2VtZW50cyBmb3IgdGhlIGNvbnRlbnRzIG9m
IHRoZSBwcmV2aW91cyBPcHVzIGZyYW1lLgorPC90PgorCis8dD4KK0ZvciBleGFtcGxlLCB3aGVu
IHN3aXRjaGluZyBmcm9tIDIwJm5ic3A7bXMgdG8gNjAmbmJzcDttcywgdGhlIDYwJm5ic3A7bXMg
T3B1cworIGZyYW1lIG1heSBjb250YWluIExCUlIgZnJhbWVzIGNvdmVyaW5nIHVwIHRvIHRocmVl
IHByaW9yIDIwJm5ic3A7bXMgT3B1cworIGZyYW1lcywgZXZlbiBpZiB0aG9zZSBmcmFtZXMgYWxy
ZWFkeSBjb250YWluZWQgTEJSUiBmcmFtZXMgY292ZXJpbmcgc29tZSBvZgorIHRoZSBzYW1lIHRp
bWUgcGVyaW9kcy4KK1doZW4gc3dpdGNoaW5nIGZyb20gMjAmbmJzcDttcyB0byAxMCZuYnNwO21z
LCB0aGUgMTAmbmJzcDttcyBPcHVzIGZyYW1lIGNhbgorIGNvbnRhaW4gYW4gTEJSUiBmcmFtZSBj
b3ZlcmluZyBhdCBtb3N0IGhhbGYgdGhlIHByaW9yIDIwJm5ic3A7bXMgT3B1cyBmcmFtZSwKKyBw
b3RlbnRpYWxseSBsZWF2aW5nIGEgaG9sZSB0aGF0IG5lZWRzIHRvIGJlIGNvbmNlYWxlZCBmcm9t
IGV2ZW4gYSBzaW5nbGUKKyBwYWNrZXQgbG9zcyAoc2VlIDx4cmVmIHRhcmdldD0iUGFja2V0IExv
c3MgQ29uY2VhbG1lbnQiLz4pLgorV2hlbiBzd2l0Y2hpbmcgZnJvbSBtb25vIHRvIHN0ZXJlbywg
dGhlIExCUlIgZnJhbWVzIGluIHRoZSBmaXJzdCBzdGVyZW8gT3B1cworIGZyYW1lIE1BWSBjb250
YWluIGEgbm9uLXRyaXZpYWwgc2lkZSBjaGFubmVsLgorPC90PgorCis8dD4KK0luIG9yZGVyIHRv
IHByb3Blcmx5IHByb2R1Y2UgTEJSUiBmcmFtZXMgdW5kZXIgYWxsIGNvbmRpdGlvbnMsIGFuIGVu
Y29kZXIgbWlnaHQKKyBuZWVkIHRvIGJ1ZmZlciB1cCB0byA2MCZuYnNwO21zIG9mIGF1ZGlvIGFu
ZCByZS1lbmNvZGUgaXQgZHVyaW5nIHRoZXNlCisgdHJhbnNpdGlvbnMuCitIb3dldmVyLCB0aGUg
cmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIG9wdHMgdG8gZGlzYWJsZSBMQlJSIGZyYW1lcyBhdCB0
aGUKKyB0cmFuc2l0aW9uIHBvaW50IGZvciBzaW1wbGljaXR5LgorU2luY2UgdHJhbnNpdGlvbnMg
YXJlIHJlbGF0aXZlbHkgaW5mcmVxdWVudCBpbiBub3JtYWwgdXNhZ2UsIHRoaXMgZG9lcyBub3Qg
aGF2ZQorIGEgc2lnbmlmaWNhbnQgaW1wYWN0IG9uIHBhY2tldCBsb3NzIHJvYnVzdG5lc3MuCis8
L3Q+CisKKzx0PgorVGhlIExCUlIgZnJhbWVzIGltbWVkaWF0ZWx5IGZvbGxvdyB0aGUgTEJSUiBm
bGFncywgcHJpb3IgdG8gYW55IHJlZ3VsYXIgU0lMSworIGZyYW1lcy4KKzx4cmVmIHRhcmdldD0i
c2lsa19mcmFtZSIvPiBkZXNjcmliZXMgdGhlaXIgZXhhY3QgY29udGVudHMuCitMQlJSIGZyYW1l
cyBkbyBub3QgaW5jbHVkZSB0aGVpciBvd24gc2VwYXJhdGUgVkFEIGZsYWdzLgorTEJSUiBmcmFt
ZXMgYXJlIG9ubHkgbWVhbnQgdG8gYmUgdHJhbnNtaXR0ZWQgZm9yIGFjdGl2ZSBzcGVlY2gsIHRo
dXMgYWxsIExCUlIKKyBmcmFtZXMgYXJlIHRyZWF0ZWQgYXMgYWN0aXZlLgorPC90PgorCis8dD4K
K0luIGEgc3RlcmVvIE9wdXMgZnJhbWUgbG9uZ2VyIHRoYW4gMjAmbmJzcDttcywgYWx0aG91Z2gg
dGhlIHBlci1mcmFtZSBMQlJSCisgZmxhZ3MgZm9yIHRoZSBtaWQgY2hhbm5lbCBhcmUgY29kZWQg
YXMgYSB1bml0IGJlZm9yZSB0aGUgcGVyLWZyYW1lIExCUlIgZmxhZ3MKKyBmb3IgdGhlIHNpZGUg
Y2hhbm5lbCwgdGhlIExCUlIgZnJhbWVzIHRoZW1zZWx2ZXMgYXJlIGludGVybGVhdmVkLgorVGhl
IGRlY29kZXIgcGFyc2VzIGFuIExCUlIgZnJhbWUgZm9yIHRoZSBtaWQgY2hhbm5lbCBvZiBhIGdp
dmVuIDIwJm5ic3A7bXMKKyBpbnRlcnZhbCAoaWYgcHJlc2VudCkgYW5kIHRoZW4gaW1tZWRpYXRl
bHkgcGFyc2VzIHRoZSBjb3JyZXNwb25kaW5nIExCUlIKKyBmcmFtZSBmb3IgdGhlIHNpZGUgY2hh
bm5lbCAoaWYgcHJlc2VudCksIGJlZm9yZSBwcm9jZWVkaW5nIHRvIHRoZSBuZXh0CisgMjAmbmJz
cDttcyBpbnRlcnZhbC4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxr
X3JlZ3VsYXJfZnJhbWVzIiB0aXRsZT0iUmVndWxhciBTSUxLIEZyYW1lcyI+Cis8dD4KK1RoZSBy
ZWd1bGFyIFNJTEsgZnJhbWUocykgZm9sbG93IHRoZSBMQlJSIGZyYW1lcyAoaWYgYW55KS4KKzx4
cmVmIHRhcmdldD0ic2lsa19mcmFtZSIvPiBkZXNjcmliZXMgdGhlaXIgY29udGVudHMsIGFzIHdl
bGwuCitVbmxpa2UgdGhlIExCUlIgZnJhbWVzLCBhIHJlZ3VsYXIgU0lMSyBmcmFtZSBpcyBjb2Rl
ZCBmb3IgZWFjaCB0aW1lIGludGVydmFsIGluCisgYW4gT3B1cyBmcmFtZSwgZXZlbiBpZiB0aGUg
Y29ycmVzcG9uZGluZyBWQUQgZmxhZ3MgYXJlIHVuc2V0LgorRm9yIHN0ZXJlbyBPcHVzIGZyYW1l
cyBsb25nZXIgdGhhbiAyMCZuYnNwO21zLCB0aGUgcmVndWxhciBtaWQgYW5kIHNpZGUgU0lMSwor
IGZyYW1lcyBmb3IgZWFjaCAyMCZuYnNwO21zIGludGVydmFsIGFyZSBpbnRlcmxlYXZlZCwganVz
dCBhcyB3aXRoIHRoZSBMQlJSCisgZnJhbWVzLgorVGhlIHNpZGUgZnJhbWUgbWF5IGJlIHNraXBw
ZWQgYnkgY29kaW5nIGFuIGFwcHJvcHJpYXRlIGZsYWcsIGFzIGRldGFpbGVkIGluCisgPHhyZWYg
dGFyZ2V0PSJzaWxrX21pZF9vbmx5X2ZsYWciLz4uCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0
aW9uIGFuY2hvcj0ic2lsa19mcmFtZSIgdGl0bGU9IlNJTEsgRnJhbWUgQ29udGVudHMiPgorPHQ+
CitFYWNoIFNJTEsgZnJhbWUgaW5jbHVkZXMgYSBzZXQgb2Ygc2lkZSBpbmZvcm1hdGlvbiB0aGF0
IGVuY29kZXMKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PlRoZSBmcmFtZSB0eXBlIGFuZCBx
dWFudGl6YXRpb24gdHlwZSAoPHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pLDwvdD4K
Kzx0PlF1YW50aXphdGlvbiBnYWlucyAoPHhyZWYgdGFyZ2V0PSJzaWxrX2dhaW5zIi8+KSw8L3Q+
Cis8dD5TaG9ydC10ZXJtIHByZWRpY3Rpb24gZmlsdGVyIGNvZWZmaWNpZW50cyAoPHhyZWYgdGFy
Z2V0PSJzaWxrX25sc2ZzIi8+KSw8L3Q+Cis8dD5BIExpbmUgU3BlY3RyYWwgRnJlcXVlbmNpZXMg
KExTRikgaW50ZXJwb2xhdGlvbiB3ZWlnaHQgKDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX2ludGVy
cG9sYXRpb24iLz4pLDwvdD4KKzx0PgorTG9uZy10ZXJtIHByZWRpY3Rpb24gZmlsdGVyIGxhZ3Mg
YW5kIGdhaW5zICg8eHJlZiB0YXJnZXQ9InNpbGtfbHRwX3BhcmFtcyIvPiksCisgYW5kCis8L3Q+
Cis8dD5BIGxpbmVhciBjb25ncnVlbnRpYWwgZ2VuZXJhdG9yIChMQ0cpIHNlZWQgKDx4cmVmIHRh
cmdldD0ic2lsa19zZWVkIi8+KS48L3Q+Cis8L2xpc3Q+CitUaGUgcXVhbnRpemVkIGV4Y2l0YXRp
b24gc2lnbmFsIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2V4Y2l0YXRpb24iLz4pIGZvbGxvd3MK
KyB0aGVzZSBhdCB0aGUgZW5kIG9mIHRoZSBmcmFtZS4KKzx4cmVmIHRhcmdldD0ic2lsa19mcmFt
ZV9zeW1ib2xzIi8+IGRldGFpbHMgdGhlIG92ZXJhbGwgb3JnYW5pemF0aW9uIG9mIGEKKyBTSUxL
IGZyYW1lLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19mcmFtZV9zeW1ib2xzIgor
IHRpdGxlPSJPcmRlciBvZiB0aGUgc3ltYm9scyBpbiBhbiBpbmRpdmlkdWFsIFNJTEsgZnJhbWUi
PgorPHR0Y29sIGFsaWduPSJjZW50ZXIiPlN5bWJvbChzKTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249
ImNlbnRlciI+UERGKHMpPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0iY2VudGVyIj5Db25kaXRpb248
L3R0Y29sPgorCis8Yz5TdGVyZW8gUHJlZGljdGlvbiBXZWlnaHRzPC9jPgorPGM+PHhyZWYgdGFy
Z2V0PSJzaWxrX3N0ZXJlb19wcmVkX3BkZnMiLz48L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtf
c3RlcmVvX3ByZWQiLz48L2M+CisKKzxjPk1pZC1vbmx5IEZsYWc8L2M+Cis8Yz48eHJlZiB0YXJn
ZXQ9InNpbGtfbWlkX29ubHlfcGRmIi8+PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX21pZF9v
bmx5X2ZsYWciLz48L2M+CisKKzxjPkZyYW1lIFR5cGU8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNp
bGtfZnJhbWVfdHlwZSIvPjwvYz4KKzxjLz4KKworPGM+U3ViZnJhbWUgR2FpbnM8L2M+Cis8Yz48
eHJlZiB0YXJnZXQ9InNpbGtfZ2FpbnMiLz48L2M+Cis8Yy8+CisKKzxjPk5vcm1hbGl6ZWQgTFNG
IFN0YWdlLTEgSW5kZXg8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFnZTFfcGRm
cyIvPjwvYz4KKzxjLz4KKworPGM+Tm9ybWFsaXplZCBMU0YgU3RhZ2UtMiBSZXNpZHVhbDwvYz4K
KzxjPjx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3N0YWdlMiIvPjwvYz4KKzxjLz4KKworPGM+Tm9y
bWFsaXplZCBMU0YgSW50ZXJwb2xhdGlvbiBXZWlnaHQ8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNp
bGtfbmxzZl9pbnRlcnBfcGRmIi8+PC9jPgorPGM+MjAmbmJzcDttcyBmcmFtZTwvYz4KKworPGM+
UHJpbWFyeSBQaXRjaCBMYWc8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbHRwX2xhZ3MiLz48
L2M+Cis8Yz5Wb2ljZWQgZnJhbWU8L2M+CisKKzxjPlN1YmZyYW1lIFBpdGNoIENvbnRvdXI8L2M+
Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfcGl0Y2hfY29udG91cl9wZGZzIi8+PC9jPgorPGM+Vm9p
Y2VkIGZyYW1lPC9jPgorCis8Yz5QZXJpb2RpY2l0eSBJbmRleDwvYz4KKzxjPjx4cmVmIHRhcmdl
dD0ic2lsa19wZXJpbmRleF9wZGYiLz48L2M+Cis8Yz5Wb2ljZWQgZnJhbWU8L2M+CisKKzxjPkxU
UCBGaWx0ZXI8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbHRwX2ZpbHRlcl9wZGZzIi8+PC9j
PgorPGM+Vm9pY2VkIGZyYW1lPC9jPgorCis8Yz5MVFAgU2NhbGluZzwvYz4KKzxjPjx4cmVmIHRh
cmdldD0ic2lsa19sdHBfc2NhbGluZ19wZGYiLz48L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtf
bHRwX3NjYWxpbmciLz48L2M+CisKKzxjPkxDRyBTZWVkPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJz
aWxrX3NlZWRfcGRmIi8+PC9jPgorPGMvPgorCis8Yz5FeGNpdGF0aW9uIFJhdGUgTGV2ZWw8L2M+
Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfcmF0ZV9sZXZlbF9wZGZzIi8+PC9jPgorPGMvPgorCis8
Yz5FeGNpdGF0aW9uIFB1bHNlIENvdW50czwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19wdWxz
ZV9jb3VudF9wZGZzIi8+PC9jPgorPGMvPgorCis8Yz5FeGNpdGF0aW9uIFB1bHNlIExvY2F0aW9u
czwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19wdWxzZV9sb2NhdGlvbnMiLz48L2M+Cis8Yz5O
b24temVybyBwdWxzZSBjb3VudDwvYz4KKworPGM+RXhjaXRhdGlvbiBMU0JzPC9jPgorPGM+PHhy
ZWYgdGFyZ2V0PSJzaWxrX3NoZWxsX2xzYl9wZGYiLz48L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNp
bGtfcHVsc2VfY291bnRzIi8+PC9jPgorCis8Yz5FeGNpdGF0aW9uIFNpZ25zPC9jPgorPGM+PHhy
ZWYgdGFyZ2V0PSJzaWxrX3NpZ25fcGRmcyIvPjwvYz4KKzxjLz4KKworPC90ZXh0dGFibGU+CisK
KzxzZWN0aW9uIGFuY2hvcj0ic2lsa19zdGVyZW9fcHJlZCIgdG9jPSJpbmNsdWRlIgorIHRpdGxl
PSJTdGVyZW8gUHJlZGljdGlvbiBXZWlnaHRzIj4KKzx0PgorQSBTSUxLIGZyYW1lIGNvcnJlc3Bv
bmRpbmcgdG8gdGhlIG1pZCBjaGFubmVsIG9mIGEgc3RlcmVvIE9wdXMgZnJhbWUgYmVnaW5zCisg
d2l0aCBhIHBhaXIgb2Ygc2lkZSBjaGFubmVsIHByZWRpY3Rpb24gd2VpZ2h0cywgZGVzaWduZWQg
c3VjaCB0aGF0IHplcm9zCisgaW5kaWNhdGUgbm9ybWFsIG1pZC1zaWRlIGNvdXBsaW5nLgorU2lu
Y2UgdGhlc2Ugd2VpZ2h0cyBjYW4gY2hhbmdlIG9uIGV2ZXJ5IGZyYW1lLCB0aGUgZmlyc3QgcG9y
dGlvbiBvZiBlYWNoIGZyYW1lCisgbGluZWFybHkgaW50ZXJwb2xhdGVzIGJldHdlZW4gdGhlIHBy
ZXZpb3VzIHdlaWdodHMgYW5kIHRoZSBjdXJyZW50IG9uZXMsIHVzaW5nCisgemVyb3MgZm9yIHRo
ZSBwcmV2aW91cyB3ZWlnaHRzIGlmIG5vbmUgYXJlIGF2YWlsYWJsZS4KK1RoZXNlIHByZWRpY3Rp
b24gd2VpZ2h0cyBhcmUgbmV2ZXIgaW5jbHVkZWQgaW4gYSBtb25vIE9wdXMgZnJhbWUsIGFuZCB0
aGUKKyBwcmV2aW91cyB3ZWlnaHRzIGFyZSByZXNldCB0byB6ZXJvcyBvbiBhbnkgdHJhbnNpdGlv
biBmcm9tIG1vbm8gdG8gc3RlcmVvLgorVGhleSBhcmUgYWxzbyBub3QgaW5jbHVkZWQgaW4gYW4g
TEJSUiBmcmFtZSBmb3IgdGhlIHNpZGUgY2hhbm5lbCwgZXZlbiBpZiB0aGUKKyBMQlJSIGZsYWdz
IGluZGljYXRlIHRoZSBjb3JyZXNwb25kaW5nIG1pZCBjaGFubmVsIHdhcyBub3QgY29kZWQuCitJ
biB0aGF0IGNhc2UsIHRoZSBwcmV2aW91cyB3ZWlnaHRzIGFyZSB1c2VkLCBhZ2FpbiBzdWJzdGl0
dXRpbmcgaW4gemVyb3MgaWYgbm8KKyBwcmV2aW91cyB3ZWlnaHRzIGFyZSBhdmFpbGFibGUgc2lu
Y2UgdGhlIGxhc3QgZGVjb2RlciByZXNldAorIChzZWUgPHhyZWYgdGFyZ2V0PSJkZWNvZGVyLXJl
c2V0Ii8+KS4KKzwvdD4KKworPHQ+CitUbyBzdW1tYXJpemUsIHRoZXNlIHdlaWdodHMgYXJlIGNv
ZGVkIGlmIGFuZCBvbmx5IGlmCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5UaGlzIGlzIGEg
c3RlcmVvIE9wdXMgZnJhbWUgKDx4cmVmIHRhcmdldD0idG9jX2J5dGUiLz4pLCBhbmQ8L3Q+Cis8
dD5UaGUgY3VycmVudCBTSUxLIGZyYW1lIGNvcnJlc3BvbmRzIHRvIHRoZSBtaWQgY2hhbm5lbC48
L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzx0PgorVGhlIHByZWRpY3Rpb24gd2VpZ2h0cyBhcmUgY29k
ZWQgaW4gdGhyZWUgc2VwYXJhdGUgcGllY2VzLCB3aGljaCBhcmUgZGVjb2RlZAorIGJ5IHNpbGtf
c3RlcmVvX2RlY29kZV9wcmVkKCkgKGRlY29kZV9zdGVyZW9fcHJlZC5jKS4KK1RoZSBmaXJzdCBw
aWVjZSBqb2ludGx5IGNvZGVzIHRoZSBoaWdoLW9yZGVyIHBhcnQgb2YgYSB0YWJsZSBpbmRleCBm
b3IgYm90aAorIHdlaWdodHMuCitUaGUgc2Vjb25kIHBpZWNlIGNvZGVzIHRoZSBsb3ctb3JkZXIg
cGFydCBvZiBlYWNoIHRhYmxlIGluZGV4LgorVGhlIHRoaXJkIHBpZWNlIGNvZGVzIGFuIG9mZnNl
dCB1c2VkIHRvIGxpbmVhcmx5IGludGVycG9sYXRlIGJldHdlZW4gdGFibGUKKyBpbmRpY2VzLgor
VGhlIGRldGFpbHMgYXJlIGFzIGZvbGxvd3MuCis8L3Q+CisKKzx0PgorTGV0IG4gYmUgYW4gaW5k
ZXggZGVjb2RlZCB3aXRoIHRoZSAyNS1lbGVtZW50IHN0YWdlLTEgUERGIGluCisgPHhyZWYgdGFy
Z2V0PSJzaWxrX3N0ZXJlb19wcmVkX3BkZnMiLz4uCitUaGVuIGxldCBpMCBhbmQgaTEgYmUgaW5k
aWNlcyBkZWNvZGVkIHdpdGggdGhlIHN0YWdlLTIgYW5kIHN0YWdlLTMgUERGcyBpbgorIDx4cmVm
IHRhcmdldD0ic2lsa19zdGVyZW9fcHJlZF9wZGZzIi8+LCByZXNwZWN0aXZlbHksIGFuZCBsZXQg
aTIgYW5kIGkzCisgYmUgdHdvIG1vcmUgaW5kaWNlcyBkZWNvZGVkIHdpdGggdGhlIHN0YWdlLTIg
YW5kIHN0YWdlLTMgUERGcywgYWxsIGluIHRoYXQKKyBvcmRlci4KKzwvdD4KKworPHRleHR0YWJs
ZSBhbmNob3I9InNpbGtfc3RlcmVvX3ByZWRfcGRmcyIgdGl0bGU9IlN0ZXJlbyBXZWlnaHQgUERG
cyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlN0YWdlPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0ibGVm
dCI+UERGPC90dGNvbD4KKzxjPlN0YWdlIDE8L2M+Cis8Yz57NywgIDIsICAxLCAgMSwgIDEsCisg
ICAxMCwgMjQsICA4LCAgMSwgIDEsCisgICAgMywgMjMsIDkyLCAyMywgIDMsCisgICAgMSwgIDEs
ICA4LCAyNCwgMTAsCisgICAgMSwgIDEsICAxLCAgMiwgIDd9LzI1NjwvYz4KKworPGM+U3RhZ2Ug
MjwvYz4KKzxjPns4NSwgODYsIDg1fS8yNTY8L2M+CisKKzxjPlN0YWdlIDM8L2M+Cis8Yz57NTEs
IDUxLCA1MiwgNTEsIDUxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitUaGVuIHVzZSBu
LCBpMCwgYW5kIGkyIHRvIGZvcm0gdHdvIHRhYmxlIGluZGljZXMsIHdpMCBhbmQgd2kxLCBhY2Nv
cmRpbmcgdG8KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij48IVtDREFUQVsKK3dpMCA9IGkwICsgMyoobi81KQord2kxID0gaTIgKyAzKihuJTUpCitdXT48
L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyB3aGVyZSB0aGUgZGl2aXNpb24gaXMgaW50ZWdlciBkaXZp
c2lvbi4KK1RoZSByYW5nZSBvZiB0aGVzZSBpbmRpY2VzIGlzIDAgdG8gMTQsIGluY2x1c2l2ZS4K
K0xldCB3W2ldIGJlIHRoZSBpJ3RoIHdlaWdodCBmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19zdGVy
ZW9fd2VpZ2h0c190YWJsZSIvPi4KK1RoZW4gdGhlIHR3byBwcmVkaWN0aW9uIHdlaWdodHMsIHcw
X1ExMyBhbmQgdzFfUTEzLCBhcmUKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBh
bGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3cxX1ExMyA9IHdfUTEzW3dpMV0KKyAgICAgICAgICsg
KCh3X1ExM1t3aTErMV0gLSB3X1ExM1t3aTFdKSo2NTU0KSA+PiAxNikqKDIqaTMgKyAxKQorCit3
MF9RMTMgPSB3X1ExM1t3aTBdCisgICAgICAgICArICgod19RMTNbd2kwKzFdIC0gd19RMTNbd2kw
XSkqNjU1NCkgPj4gMTYpKigyKmkxICsgMSkKKyAgICAgICAgIC0gdzFfUTEzCitdXT48L2FydHdv
cms+Cis8L2ZpZ3VyZT4KK04uYi4sIHcxX1ExMyBpcyBjb21wdXRlZCBmaXJzdCBoZXJlLCBiZWNh
dXNlIHcwX1ExMyBkZXBlbmRzIG9uIGl0LgorVGhlIGNvbnN0YW50IDY1NTQgaXMgYXBwcm94aW1h
dGVseSAwLjEgaW4gUTE2LgorQWx0aG91Z2ggd2kwIGFuZCB3aTEgb25seSBoYXZlIDE1IHBvc3Np
YmxlIHZhbHVlcywKKyA8eHJlZiB0YXJnZXQ9InNpbGtfc3RlcmVvX3dlaWdodHNfdGFibGUiLz4g
Y29udGFpbnMgMTYgZW50cmllcyB0byBhbGxvdworIGludGVycG9sYXRpb24gYmV0d2VlbiBlbnRy
eSB3aTAgYW5kICh3aTAmbmJzcDsrJm5ic3A7MSkgKGFuZCBsaWtld2lzZSBmb3Igd2kxKS4KKzwv
dD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfc3RlcmVvX3dlaWdodHNfdGFibGUiCisgdGl0
bGU9IlN0ZXJlbyBXZWlnaHQgVGFibGUiPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5JbmRleDwvdHRj
b2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5XZWlnaHQgKFExMyk8L3R0Y29sPgorIDxjPjA8L2M+
IDxjPi0xMzczMjwvYz4KKyA8Yz4xPC9jPiA8Yz4tMTAwNTA8L2M+CisgPGM+MjwvYz4gIDxjPi04
MjY2PC9jPgorIDxjPjM8L2M+ICA8Yz4tNzUyNjwvYz4KKyA8Yz40PC9jPiAgPGM+LTY1MDA8L2M+
CisgPGM+NTwvYz4gIDxjPi01MDAwPC9jPgorIDxjPjY8L2M+ICA8Yz4tMjk1MDwvYz4KKyA8Yz43
PC9jPiAgIDxjPi04MjA8L2M+CisgPGM+ODwvYz4gICAgPGM+ODIwPC9jPgorIDxjPjk8L2M+ICAg
PGM+Mjk1MDwvYz4KKzxjPjEwPC9jPiAgIDxjPjUwMDA8L2M+Cis8Yz4xMTwvYz4gICA8Yz42NTAw
PC9jPgorPGM+MTI8L2M+ICAgPGM+NzUyNjwvYz4KKzxjPjEzPC9jPiAgIDxjPjgyNjY8L2M+Cis8
Yz4xNDwvYz4gIDxjPjEwMDUwPC9jPgorPGM+MTU8L2M+ICA8Yz4xMzczMjwvYz4KKzwvdGV4dHRh
YmxlPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19taWRfb25seV9mbGFn
IiB0b2M9ImluY2x1ZGUiIHRpdGxlPSJNaWQtb25seSBGbGFnIj4KKzx0PgorQSBmbGFnIGFwcGVh
cnMgYWZ0ZXIgdGhlIHN0ZXJlbyBwcmVkaWN0aW9uIHdlaWdodHMgdGhhdCBpbmRpY2F0ZXMgaWYg
b25seSB0aGUKKyBtaWQgY2hhbm5lbCBpcyBjb2RlZCBmb3IgdGhpcyB0aW1lIGludGVydmFsLgor
SXQgYXBwZWFycyBvbmx5IHdoZW4KKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PlRoaXMgaXMg
YSBzdGVyZW8gT3B1cyBmcmFtZSAoc2VlIDx4cmVmIHRhcmdldD0idG9jX2J5dGUiLz4pLDwvdD4K
Kzx0PlRoZSBjdXJyZW50IFNJTEsgZnJhbWUgY29ycmVzcG9uZHMgdG8gdGhlIG1pZCBjaGFubmVs
LCBhbmQ8L3Q+Cis8dD5FaXRoZXIKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PlRoaXMgaXMg
YSByZWd1bGFyIFNJTEsgZnJhbWUgd2hlcmUgdGhlIFZBRCBmbGFncworIChzZWUgPHhyZWYgdGFy
Z2V0PSJzaWxrX2hlYWRlcl9iaXRzIi8+KSBpbmRpY2F0ZSB0aGF0IHRoZSBjb3JyZXNwb25kaW5n
IHNpZGUKKyBjaGFubmVsIGlzIG5vdCBhY3RpdmUuPC90PgorPHQ+CitUaGlzIGlzIGFuIExCUlIg
ZnJhbWUgd2hlcmUgdGhlIExCUlIgZmxhZ3MKKyAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19oZWFk
ZXJfYml0cyIvPiBhbmQgPHhyZWYgdGFyZ2V0PSJzaWxrX2xicnJfZmxhZ3MiLz4pCisgaW5kaWNh
dGUgdGhhdCB0aGUgY29ycmVzcG9uZGluZyBzaWRlIGNoYW5uZWwgaXMgbm90IGNvZGVkLgorPC90
PgorPC9saXN0PgorPC90PgorPC9saXN0PgorSXQgaXMgb21pdHRlZCB3aGVuIHRoZXJlIGFyZSBu
byBzdGVyZW8gd2VpZ2h0cywgZm9yIGFsbCBvZiB0aGUgc2FtZSByZWFzb25zLgorSXQgaXMgYWxz
byBvbWl0dGVkIGZvciBhIHJlZ3VsYXIgU0lMSyBmcmFtZSB3aGVuIHRoZSBWQUQgZmxhZyBvZiB0
aGUKKyBjb3JyZXNwb25kaW5nIHNpZGUgY2hhbm5lbCBmcmFtZSBpcyBzZXQgKGluZGljYXRpbmcg
aXQgaXMgYWN0aXZlKS4KK1RoZSBzaWRlIGNoYW5uZWwgbXVzdCBiZSBjb2RlZCBpbiB0aGlzIGNh
c2UsIG1ha2luZyB0aGUgbWlkLW9ubHkgZmxhZworIHJlZHVuZGFudC4KK0l0IGlzIGFsc28gb21p
dHRlZCBmb3IgYW4gTEJSUiBmcmFtZSB3aGVuIHRoZSBjb3JyZXNwb25kaW5nIExCUlIgZmxhZ3MK
KyBpbmRpY2F0ZSB0aGUgc2lkZSBjaGFubmVsIGlzIGNvZGVkLgorPC90PgorCis8dD4KK1doZW4g
dGhlIGZsYWcgaXMgcHJlc2VudCwgdGhlIGRlY29kZXIgcmVhZHMgYSBzaW5nbGUgdmFsdWUgdXNp
bmcgdGhlIFBERiBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19taWRfb25seV9wZGYiLz4sIGFzIGlt
cGxlbWVudGVkIGluCisgc2lsa19zdGVyZW9fZGVjb2RlX21pZF9vbmx5KCkgKGRlY29kZV9zdGVy
ZW9fcHJlZC5jKS4KK0lmIHRoZSBmbGFnIGlzIHNldCwgdGhlbiB0aGVyZSBpcyBubyBjb3JyZXNw
b25kaW5nIFNJTEsgZnJhbWUgZm9yIHRoZSBzaWRlCisgY2hhbm5lbCwgdGhlIGVudGlyZSBkZWNv
ZGluZyBwcm9jZXNzIGZvciB0aGUgc2lkZSBjaGFubmVsIGlzIHNraXBwZWQsIGFuZAorIHplcm9z
IGFyZSBmZWQgdG8gdGhlIHN0ZXJlbyB1bm1peGluZyBwcm9jZXNzIChzZWUKKyA8eHJlZiB0YXJn
ZXQ9InNpbGtfc3RlcmVvX3VubWl4aW5nIi8+KSBpbnN0ZWFkLgorQXMgc3RhdGVkIGFib3ZlLCBM
QlJSIGZyYW1lcyBzdGlsbCBpbmNsdWRlIHRoaXMgZmxhZyB3aGVuIHRoZSBMQlJSIGZsYWcKKyBp
bmRpY2F0ZXMgdGhhdCB0aGUgc2lkZSBjaGFubmVsIGlzIG5vdCBjb2RlZC4KK0luIHRoYXQgY2Fz
ZSwgaWYgdGhpcyBmbGFnIGlzIHplcm8gKGluZGljYXRpbmcgdGhhdCB0aGVyZSBzaG91bGQgYmUg
YSBzaWRlCisgY2hhbm5lbCksIHRoZW4gUGFja2V0IExvc3MgQ29uY2VhbG1lbnQgKFBMQywgc2Vl
CisgPHhyZWYgdGFyZ2V0PSJQYWNrZXQgTG9zcyBDb25jZWFsbWVudCIvPikgU0hPVUxEIGJlIGlu
dm9rZWQgdG8gcmVjb3ZlciBhCisgc2lkZSBjaGFubmVsIHNpZ25hbC4KK090aGVyd2lzZSwgdGhl
IHN0ZXJlbyBpbWFnZSB3aWxsIGNvbGxhcHNlLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0i
c2lsa19taWRfb25seV9wZGYiIHRpdGxlPSJNaWQtb25seSBGbGFnIFBERiI+Cis8dHRjb2wgYWxp
Z249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz57MTkyLCA2NH0vMjU2PC9jPgorPC90ZXh0dGFibGU+
CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2ZyYW1lX3R5cGUiIHRvYz0i
aW5jbHVkZSIgdGl0bGU9IkZyYW1lIFR5cGUiPgorPHQ+CitFYWNoIFNJTEsgZnJhbWUgY29udGFp
bnMgYSBzaW5nbGUgImZyYW1lIHR5cGUiIHN5bWJvbCB0aGF0IGpvaW50bHkgY29kZXMgdGhlCisg
c2lnbmFsIHR5cGUgYW5kIHF1YW50aXphdGlvbiBvZmZzZXQgdHlwZSBvZiB0aGUgY29ycmVzcG9u
ZGluZyBmcmFtZS4KK0lmIHRoZSBjdXJyZW50IGZyYW1lIGlzIGEgcmVndWxhciBTSUxLIGZyYW1l
IHdob3NlIFZBRCBiaXQgd2FzIG5vdCBzZXQgKGFuCisgImluYWN0aXZlIiBmcmFtZSksIHRoZW4g
dGhlIGZyYW1lIHR5cGUgc3ltYm9sIHRha2VzIG9uIGEgdmFsdWUgb2YgZWl0aGVyIDAgb3IKKyAx
IGFuZCBpcyBkZWNvZGVkIHVzaW5nIHRoZSBmaXJzdCBQREYgaW4gPHhyZWYgdGFyZ2V0PSJzaWxr
X2ZyYW1lX3R5cGVfcGRmcyIvPi4KK0lmIHRoZSBmcmFtZSBpcyBhbiBMQlJSIGZyYW1lIG9yIGEg
cmVndWxhciBTSUxLIGZyYW1lIHdob3NlIFZBRCBmbGFnIHdhcyBzZXQKKyAoYW4gImFjdGl2ZSIg
ZnJhbWUpLCB0aGVuIHRoZSB2YWx1ZSBvZiB0aGUgc3ltYm9sIG1heSByYW5nZSBmcm9tIDIgdG8g
NSwKKyBpbmNsdXNpdmUsIGFuZCBpcyBkZWNvZGVkIHVzaW5nIHRoZSBzZWNvbmQgUERGIGluCisg
PHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGVfcGRmcyIvPi4KKzx4cmVmIHRhcmdldD0ic2ls
a19mcmFtZV90eXBlX3RhYmxlIi8+IHRyYW5zbGF0ZXMgYmV0d2VlbiB0aGUgdmFsdWUgb2YgdGhl
CisgZnJhbWUgdHlwZSBzeW1ib2wgYW5kIHRoZSBjb3JyZXNwb25kaW5nIHNpZ25hbCB0eXBlIGFu
ZCBxdWFudGl6YXRpb24gb2Zmc2V0CisgdHlwZS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9
InNpbGtfZnJhbWVfdHlwZV9wZGZzIiB0aXRsZT0iRnJhbWUgVHlwZSBQREZzIj4KKzx0dGNvbD5W
QUQgRmxhZzwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPkluYWN0aXZlPC9jPiA8Yz57
MjYsIDIzMCwgMCwgMCwgMCwgMH0vMjU2PC9jPgorPGM+QWN0aXZlPC9jPiAgIDxjPnswLCAwLCAy
NCwgNzQsIDE0OCwgMTB9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hv
cj0ic2lsa19mcmFtZV90eXBlX3RhYmxlIgorIHRpdGxlPSJTaWduYWwgVHlwZSBhbmQgUXVhbnRp
emF0aW9uIE9mZnNldCBUeXBlIGZyb20gRnJhbWUgVHlwZSI+Cis8dHRjb2w+RnJhbWUgVHlwZTwv
dHRjb2w+Cis8dHRjb2w+U2lnbmFsIFR5cGU8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+
UXVhbnRpemF0aW9uIE9mZnNldCBUeXBlPC90dGNvbD4KKzxjPjA8L2M+IDxjPkluYWN0aXZlPC9j
PiA8Yz5Mb3c8L2M+Cis8Yz4xPC9jPiA8Yz5JbmFjdGl2ZTwvYz4gPGM+SGlnaDwvYz4KKzxjPjI8
L2M+IDxjPlVudm9pY2VkPC9jPiA8Yz5Mb3c8L2M+Cis8Yz4zPC9jPiA8Yz5VbnZvaWNlZDwvYz4g
PGM+SGlnaDwvYz4KKzxjPjQ8L2M+IDxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+Cis8Yz41PC9j
PiA8Yz5Wb2ljZWQ8L2M+ICAgPGM+SGlnaDwvYz4KKzwvdGV4dHRhYmxlPgorCis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19nYWlucyIgdG9jPSJpbmNsdWRlIiB0aXRsZT0iU3Vi
ZnJhbWUgR2FpbnMiPgorPHQ+CitBIHNlcGFyYXRlIHF1YW50aXphdGlvbiBnYWluIGlzIGNvZGVk
IGZvciBlYWNoIDUmbmJzcDttcyBzdWJmcmFtZS4KK1RoZXNlIGdhaW5zIGNvbnRyb2wgdGhlIHN0
ZXAgc2l6ZSBiZXR3ZWVuIHF1YW50aXphdGlvbiBsZXZlbHMgb2YgdGhlIGV4Y2l0YXRpb24KKyBz
aWduYWwgYW5kLCB0aGVyZWZvcmUsIHRoZSBxdWFsaXR5IG9mIHRoZSByZWNvbnN0cnVjdGlvbi4K
K1RoZXkgYXJlIGluZGVwZW5kZW50IG9mIGFuZCB1bnJlbGF0ZWQgdG8gdGhlIHBpdGNoIGNvbnRv
dXJzIGNvZGVkIGZvciB2b2ljZWQKKyBmcmFtZXMuCitUaGUgcXVhbnRpemF0aW9uIGdhaW5zIGFy
ZSB0aGVtc2VsdmVzIHVuaWZvcm1seSBxdWFudGl6ZWQgdG8gNiZuYnNwO2JpdHMgb24gYQorIGxv
ZyBzY2FsZSwgZ2l2aW5nIHRoZW0gYSByZXNvbHV0aW9uIG9mIGFwcHJveGltYXRlbHkgMS4zNjkm
bmJzcDtkQiBhbmQgYSByYW5nZQorIG9mIGFwcHJveGltYXRlbHkgMS45NCZuYnNwO2RCIHRvIDg4
LjIxJm5ic3A7ZEIuCis8L3Q+Cis8dD4KK1RoZSBzdWJmcmFtZSBnYWlucyBhcmUgZWl0aGVyIGNv
ZGVkIGluZGVwZW5kZW50bHksIG9yIHJlbGF0aXZlIHRvIHRoZSBnYWluIGZyb20KKyB0aGUgbW9z
dCByZWNlbnQgY29kZWQgc3ViZnJhbWUgaW4gdGhlIHNhbWUgY2hhbm5lbC4KK0luZGVwZW5kZW50
IGNvZGluZyBpcyB1c2VkIGlmIGFuZCBvbmx5IGlmCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8
dD4KK1RoaXMgaXMgdGhlIGZpcnN0IHN1YmZyYW1lIGluIHRoZSBjdXJyZW50IFNJTEsgZnJhbWUs
IGFuZAorPC90PgorPHQ+RWl0aGVyCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD4KK1RoaXMg
aXMgdGhlIGZpcnN0IFNJTEsgZnJhbWUgb2YgaXRzIHR5cGUgKExCUlIgb3IgcmVndWxhcikgZm9y
IHRoaXMgY2hhbm5lbCBpbgorIHRoZSBjdXJyZW50IE9wdXMgZnJhbWUsIG9yCisgPC90PgorPHQ+
CitUaGUgcHJldmlvdXMgU0lMSyBmcmFtZSBvZiB0aGUgc2FtZSB0eXBlIChMQlJSIG9yIHJlZ3Vs
YXIpIGZvciB0aGlzIGNoYW5uZWwgaW4KKyB0aGUgc2FtZSBPcHVzIGZyYW1lIHdhcyBub3QgY29k
ZWQuCis8L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzx0PgorSW4gYW4gaW5k
ZXBlbmRlbnRseSBjb2RlZCBzdWJmcmFtZSBnYWluLCB0aGUgMyBtb3N0IHNpZ25pZmljYW50IGJp
dHMgb2YgdGhlCisgcXVhbnRpemF0aW9uIGdhaW4gYXJlIGRlY29kZWQgdXNpbmcgYSBQREYgc2Vs
ZWN0ZWQgZnJvbQorIDx4cmVmIHRhcmdldD0ic2lsa19pbmRlcGVuZGVudF9nYWluX21zYl9wZGZz
Ii8+IGJhc2VkIG9uIHRoZSBkZWNvZGVkIHNpZ25hbAorIHR5cGUgKHNlZSA8eHJlZiB0YXJnZXQ9
InNpbGtfZnJhbWVfdHlwZSIvPikuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX2lu
ZGVwZW5kZW50X2dhaW5fbXNiX3BkZnMiCisgdGl0bGU9IlBERnMgZm9yIEluZGVwZW5kZW50IFF1
YW50aXphdGlvbiBHYWluIE1TQiBDb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5TaWduYWwg
VHlwZTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz5JbmFjdGl2
ZTwvYz4gPGM+ezMyLCAxMTIsIDY4LCAyOSwgMTIsICAxLCAgMSwgMX0vMjU2PC9jPgorPGM+VW52
b2ljZWQ8L2M+ICA8Yz57MiwgIDE3LCA0NSwgNjAsIDYyLCA0NywgMTksIDR9LzI1NjwvYz4KKzxj
PlZvaWNlZDwvYz4gICAgPGM+ezEsICAgMywgMjYsIDcxLCA5NCwgNTAsICA5LCAyfS8yNTY8L2M+
Cis8L3RleHR0YWJsZT4KKworPHQ+CitUaGUgMyBsZWFzdCBzaWduaWZpY2FudCBiaXRzIGFyZSBk
ZWNvZGVkIHVzaW5nIGEgdW5pZm9ybSBQREY6Cis8L3Q+Cis8dGV4dHRhYmxlIGFuY2hvcj0ic2ls
a19pbmRlcGVuZGVudF9nYWluX2xzYl9wZGYiCisgdGl0bGU9IlBERiBmb3IgSW5kZXBlbmRlbnQg
UXVhbnRpemF0aW9uIEdhaW4gTFNCIENvZGluZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwv
dHRjb2w+Cis8Yz57MzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyfS8yNTY8L2M+Cis8L3Rl
eHR0YWJsZT4KKworPHQ+CitUaGVzZSA2IGJpdHMgYXJlIGNvbWJpbmVkIHRvIGZvcm0gYSB2YWx1
ZSwgZ2Fpbl9pbmRleCwgYmV0d2VlbiAwIGFuZCA2My4KK1doZW4gdGhlIGdhaW4gZm9yIHRoZSBw
cmV2aW91cyBzdWJmcmFtZSBpcyBhdmFpbGFibGUsIHRoZW4gdGhlIGN1cnJlbnQgZ2FpbiBpcwor
IGxpbWl0ZWQgYXMgZm9sbG93czoKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBh
bGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2xvZ19nYWluID0gbWF4KGdhaW5faW5kZXgsIHByZXZp
b3VzX2xvZ19nYWluIC0gMTYpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhpcyBtYXkg
aGVscCBzb21lIGltcGxlbWVudGF0aW9ucyBsaW1pdCB0aGUgY2hhbmdlIGluIHByZWNpc2lvbiBv
ZiB0aGVpcgorIGludGVybmFsIExUUCBoaXN0b3J5LgorVGhlIGluZGljZXMgd2hpY2ggdGhpcyBj
bGFtcCBhcHBsaWVzIHRvIGNhbm5vdCBzaW1wbHkgYmUgcmVtb3ZlZCBmcm9tIHRoZQorIGNvZGVi
b29rLCBiZWNhdXNlIHByZXZpb3VzX2xvZ19nYWluIHdpbGwgbm90IGJlIGF2YWlsYWJsZSBhZnRl
ciBwYWNrZXQgbG9zcy4KK1RoZSBjbGFtcGluZyBpcyBza2lwcGVkIGFmdGVyIGEgZGVjb2RlciBy
ZXNldCwgYW5kIGluIHRoZSBzaWRlIGNoYW5uZWwgaWYgdGhlCisgcHJldmlvdXMgZnJhbWUgaW4g
dGhlIHNpZGUgY2hhbm5lbCB3YXMgbm90IGNvZGVkLCBzaW5jZSB0aGVyZSBpcyBubyB2YWx1ZSBm
b3IKKyBwcmV2aW91c19sb2dfZ2FpbiBhdmFpbGFibGUuCitJdCBNQVkgYWxzbyBiZSBza2lwcGVk
IGFmdGVyIHBhY2tldCBsb3NzLgorPC90PgorCis8dD4KK0ZvciBzdWJmcmFtZXMgd2hpY2ggZG8g
bm90IGhhdmUgYW4gaW5kZXBlbmRlbnQgZ2FpbiAoaW5jbHVkaW5nIHRoZSBmaXJzdAorIHN1YmZy
YW1lIG9mIGZyYW1lcyBub3QgbGlzdGVkIGFzIHVzaW5nIGluZGVwZW5kZW50IGNvZGluZyBhYm92
ZSksIHRoZQorIHF1YW50aXphdGlvbiBnYWluIGlzIGNvZGVkIHJlbGF0aXZlIHRvIHRoZSBnYWlu
IGZyb20gdGhlIHByZXZpb3VzIHN1YmZyYW1lIChpbgorIHRoZSBzYW1lIGNoYW5uZWwpLgorVGhl
IFBERiBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfZGVsdGFfZ2Fpbl9wZGYiLz4geWllbGRzIGEgZGVs
dGFfZ2Fpbl9pbmRleCB2YWx1ZQorIGJldHdlZW4gMCBhbmQgNDAsIGluY2x1c2l2ZS4KKzwvdD4K
Kzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX2RlbHRhX2dhaW5fcGRmIgorIHRpdGxlPSJQREYgZm9y
IERlbHRhIFF1YW50aXphdGlvbiBHYWluIENvZGluZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBE
RjwvdHRjb2w+Cis8Yz57NiwgICA1LCAgMTEsICAzMSwgMTMyLCAgMjEsICAgOCwgICA0LAorICAg
IDMsICAgMiwgICAyLCAgIDIsICAgMSwgICAxLCAgIDEsICAgMSwKKyAgICAxLCAgIDEsICAgMSwg
ICAxLCAgIDEsICAgMSwgICAxLCAgIDEsCisgICAgMSwgICAxLCAgIDEsICAgMSwgICAxLCAgIDEs
ICAgMSwgICAxLAorICAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAx
fS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKzx0PgorVGhlIGZvbGxvd2luZyBmb3JtdWxhIHRyYW5z
bGF0ZXMgdGhpcyBpbmRleCBpbnRvIGEgcXVhbnRpemF0aW9uIGdhaW4gZm9yIHRoZQorIGN1cnJl
bnQgc3ViZnJhbWUgdXNpbmcgdGhlIGdhaW4gZnJvbSB0aGUgcHJldmlvdXMgc3ViZnJhbWU6Cis8
ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFb
Citsb2dfZ2FpbiA9IGNsYW1wKDAsIG1heCgyKmRlbHRhX2dhaW5faW5kZXggLSAxNiwKKyAgICAg
ICAgICAgICAgICAgICBwcmV2aW91c19sb2dfZ2FpbiArIGRlbHRhX2dhaW5faW5kZXggLSA0KSwg
NjMpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorPHQ+CitzaWxrX2dhaW5zX2Rl
cXVhbnQoKSAoZ2Fpbl9xdWFudC5jKSBkZXF1YW50aXplcyBsb2dfZ2FpbiBmb3IgdGhlIGsndGgg
c3ViZnJhbWUKKyBhbmQgY29udmVydHMgaXQgaW50byBhIGxpbmVhciBRMTYgc2NhbGUgZmFjdG9y
IHZpYQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworZ2Fpbl9RMTZba10gPSBzaWxrX2xvZzJsaW4oKDB4MUQxQzcxKmxvZ19nYWluPj4x
NikgKyAyMDkwKQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8dD4KK1RoZSBmdW5j
dGlvbiBzaWxrX2xvZzJsaW4oKSAobG9nMmxpbi5jKSBjb21wdXRlcyBhbiBhcHByb3hpbWF0aW9u
IG9mCisgMioqKGluTG9nX1E3LzEyOC4wKSwgd2hlcmUgaW5Mb2dfUTcgaXMgaXRzIFE3IGlucHV0
LgorTGV0IGkgPSBpbkxvZ19RNyZndDsmZ3Q7NyBiZSB0aGUgaW50ZWdlciBwYXJ0IG9mIGluTG9n
UTcgYW5kCisgZiA9IGluTG9nX1E3JmFtcDsxMjcgYmUgdGhlIGZyYWN0aW9uYWwgcGFydC4KK1Ro
ZW4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKKygxPDxpKSArICgoLTE3NCpmKigxMjgtZik+PjE2KStmKSooKDE8PGkpPj43KQorXV0+
PC9hcnR3b3JrPgorPC9maWd1cmU+CisgeWllbGRzIHRoZSBhcHByb3hpbWF0ZSBleHBvbmVudGlh
bC4KK1RoZSBmaW5hbCBRMTYgZ2FpbiB2YWx1ZXMgbGllcyBiZXR3ZWVuIDgxOTIwIGFuZCAxNjg2
MTEwMjA4LCBpbmNsdXNpdmUKKyAocmVwcmVzZW50aW5nIHNjYWxlIGZhY3RvcnMgb2YgMS4yNSB0
byAyNTcyOCwgcmVzcGVjdGl2ZWx5KS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5j
aG9yPSJzaWxrX25sc2ZzIiB0b2M9ImluY2x1ZGUiIHRpdGxlPSJOb3JtYWxpemVkIExpbmUgU3Bl
Y3RyYWwKKyBGcmVxdWVuY3kgKExTRikgYW5kIExpbmVhciBQcmVkaWN0aXZlIENvZGluZyAoTFBD
KSBDb2VmZmljaWVudHMiPgorPHQ+CitBIHNldCBvZiBub3JtYWxpemVkIExpbmUgU3BlY3RyYWwg
RnJlcXVlbmN5IChMU0YpIGNvZWZmaWNpZW50cyBmb2xsb3cgdGhlCisgcXVhbnRpemF0aW9uIGdh
aW5zIGluIHRoZSBiaXRzdHJlYW0sIGFuZCByZXByZXNlbnQgdGhlIExpbmVhciBQcmVkaWN0aXZl
CisgQ29kaW5nIChMUEMpIGNvZWZmaWNpZW50cyBmb3IgdGhlIGN1cnJlbnQgU0lMSyBmcmFtZS4K
K09uY2UgZGVjb2RlZCwgdGhlIG5vcm1hbGl6ZWQgTFNGcyBmb3JtIGFuIGluY3JlYXNpbmcgbGlz
dCBvZiBRMTUgdmFsdWVzIGJldHdlZW4KKyAwIGFuZCAxLgorVGhlc2UgcmVwcmVzZW50IHRoZSBp
bnRlcmxlYXZlZCB6ZXJvcyBvbiB0aGUgdXBwZXIgaGFsZiBvZiB0aGUgdW5pdCBjaXJjbGUKKyAo
YmV0d2VlbiAwIGFuZCBwaSwgaGVuY2UgIm5vcm1hbGl6ZWQiKSBpbiB0aGUgc3RhbmRhcmQgZGVj
b21wb3NpdGlvbgorIDx4cmVmIHRhcmdldD0ibGluZS1zcGVjdHJhbC1wYWlycyIvPiBvZiB0aGUg
TFBDIGZpbHRlciBpbnRvIGEgc3ltbWV0cmljIHBhcnQKKyBhbmQgYW4gYW50aS1zeW1tZXRyaWMg
cGFydCAoUCBhbmQgUSBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZjJscGMiLz4pLgorQmVjYXVz
ZSBvZiBub24tbGluZWFyIGVmZmVjdHMgaW4gdGhlIGRlY29kaW5nIHByb2Nlc3MsIGFuIGltcGxl
bWVudGF0aW9uIFNIT1VMRAorIG1hdGNoIHRoZSBmaXhlZC1wb2ludCBhcml0aG1ldGljIGRlc2Ny
aWJlZCBpbiB0aGlzIHNlY3Rpb24gZXhhY3RseS4KK0FuIGVuY29kZXIgU0hPVUxEIGFsc28gdXNl
IHRoZSBzYW1lIHByb2Nlc3MuCis8L3Q+Cis8dD4KK1RoZSBub3JtYWxpemVkIExTRnMgYXJlIGNv
ZGVkIHVzaW5nIGEgdHdvLXN0YWdlIHZlY3RvciBxdWFudGl6ZXIgKFZRKQorICg8eHJlZiB0YXJn
ZXQ9InNpbGtfbmxzZl9zdGFnZTEiLz4gYW5kIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3N0YWdl
MiIvPikuCitOQiBhbmQgTUIgZnJhbWVzIHVzZSBhbiBvcmRlci0xMCBwcmVkaWN0b3IsIHdoaWxl
IFdCIGZyYW1lcyB1c2UgYW4gb3JkZXItMTYKKyBwcmVkaWN0b3IsIGFuZCB0aHVzIGhhdmUgZGlm
ZmVyZW50IHNldHMgb2YgdGFibGVzLgorQWZ0ZXIgcmVjb25zdHJ1Y3RpbmcgdGhlIG5vcm1hbGl6
ZWQgTFNGcworICg8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9yZWNvbnN0cnVjdGlvbiIvPiksIHRo
ZSBkZWNvZGVyIHJ1bnMgdGhlbSB0aHJvdWdoIGEKKyBzdGFiaWxpemF0aW9uIHByb2Nlc3MgKDx4
cmVmIHRhcmdldD0ic2lsa19ubHNmX3N0YWJpbGl6YXRpb24iLz4pLCBpbnRlcnBvbGF0ZXMKKyB0
aGVtIGJldHdlZW4gZnJhbWVzICg8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9pbnRlcnBvbGF0aW9u
Ii8+KSwgY29udmVydHMgdGhlbQorIGJhY2sgaW50byBMUEMgY29lZmZpY2llbnRzICg8eHJlZiB0
YXJnZXQ9InNpbGtfbmxzZjJscGMiLz4pLCBhbmQgdGhlbiBydW5zCisgdGhlbSB0aHJvdWdoIGZ1
cnRoZXIgcHJvY2Vzc2VzIHRvIGxpbWl0IHRoZSByYW5nZSBvZiB0aGUgY29lZmZpY2llbnRzCisg
KDx4cmVmIHRhcmdldD0ic2lsa19scGNfcmFuZ2VfbGltaXQiLz4pIGFuZCB0aGUgZ2FpbiBvZiB0
aGUgZmlsdGVyCisgKDx4cmVmIHRhcmdldD0ic2lsa19scGNfZ2Fpbl9saW1pdCIvPikuCitBbGwg
b2YgdGhpcyBpcyBuZWNlc3NhcnkgdG8gZW5zdXJlIHRoZSByZWNvbnN0cnVjdGlvbiBwcm9jZXNz
IGlzIHN0YWJsZS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX25sc2Zfc3RhZ2UxIiB0
aXRsZT0iTm9ybWFsaXplZCBMU0YgU3RhZ2UgMSBEZWNvZGluZyI+Cis8dD4KK1RoZSBmaXJzdCBW
USBzdGFnZSB1c2VzIGEgMzItZWxlbWVudCBjb2RlYm9vaywgY29kZWQgd2l0aCBvbmUgb2YgdGhl
IFBERnMgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFnZTFfcGRmcyIvPiwgZGVwZW5k
aW5nIG9uIHRoZSBhdWRpbyBiYW5kd2lkdGggYW5kCisgdGhlIHNpZ25hbCB0eXBlIG9mIHRoZSBj
dXJyZW50IFNJTEsgZnJhbWUuCitUaGlzIHlpZWxkcyBhIHNpbmdsZSBpbmRleCwgSTEsIGZvciB0
aGUgZW50aXJlIGZyYW1lLCB3aGljaAorPGxpc3Qgc3R5bGU9Im51bWJlcnMiPgorPHQ+SW5kZXhl
cyBhbiBlbGVtZW50IGluIGEgY29hcnNlIGNvZGVib29rLDwvdD4KKzx0PlNlbGVjdHMgdGhlIFBE
RnMgZm9yIHRoZSBzZWNvbmQgc3RhZ2Ugb2YgdGhlIFZRLCBhbmQ8L3Q+Cis8dD5TZWxlY3RzIHRo
ZSBwcmVkaWN0aW9uIHdlaWdodHMgdXNlZCB0byByZW1vdmUgaW50cmEtZnJhbWUgcmVkdW5kYW5j
eSBmcm9tCisgdGhlIHNlY29uZCBzdGFnZS48L3Q+Cis8L2xpc3Q+CitUaGUgYWN0dWFsIGNvZGVi
b29rIGVsZW1lbnRzIGFyZSBsaXN0ZWQgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9uYm1i
X2NvZGVib29rIi8+IGFuZAorIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3diX2NvZGVib29rIi8+
LCBidXQgdGhleSBhcmUgbm90IG5lZWRlZCB1bnRpbCB0aGUgbGFzdAorIHN0YWdlcyBvZiByZWNv
bnN0cnVjdGluZyB0aGUgTFNGIGNvZWZmaWNpZW50cy4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNo
b3I9InNpbGtfbmxzZl9zdGFnZTFfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgTm9ybWFsaXplZCBM
U0YgU3RhZ2UtMSBJbmRleCBEZWNvZGluZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPkF1ZGlvIEJh
bmR3aWR0aDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlNpZ25hbCBUeXBlPC90dGNvbD4K
Kzx0dGNvbCBhbGlnbj0ibGVmdCI+UERGPC90dGNvbD4KKzxjPk5CIG9yIE1CPC9jPiA8Yz5JbmFj
dGl2ZSBvciB1bnZvaWNlZDwvYz4KKzxjPgorezQ0LCAzNCwgMzAsIDE5LCAyMSwgMTIsIDExLCAg
MywKKyAgMywgIDIsIDE2LCAgMiwgIDIsICAxLCAgNSwgIDIsCisgIDEsICAzLCAgMywgIDEsICAx
LCAgMiwgIDIsICAyLAorICAzLCAgMSwgIDksICA5LCAgMiwgIDcsICAyLCAgMX0vMjU2Cis8L2M+
Cis8Yz5OQiBvciBNQjwvYz4gPGM+Vm9pY2VkPC9jPgorPGM+Cit7MSwgMTAsICAxLCAgOCwgIDMs
ICA4LCAgOCwgMTQsCisxMywgMTQsICAxLCAxNCwgMTIsIDEzLCAxMSwgMTEsCisxMiwgMTEsIDEw
LCAxMCwgMTEsICA4LCAgOSwgIDgsCisgNywgIDgsICAxLCAgMSwgIDYsICAxLCAgNiwgIDV9LzI1
NgorPC9jPgorPGM+V0I8L2M+IDxjPkluYWN0aXZlIG9yIHVudm9pY2VkPC9jPgorPGM+Cit7MzEs
IDIxLCAgMywgMTcsICAxLCAgOCwgMTcsICA0LAorICAxLCAxOCwgMTYsICA0LCAgMiwgIDMsICAx
LCAxMCwKKyAgMSwgIDMsIDE2LCAxMSwgMTYsICAyLCAgMiwgIDMsCisgIDIsIDExLCAgMSwgIDQs
ICA5LCAgOCwgIDcsICAzfS8yNTYKKzwvYz4KKzxjPldCPC9jPiA8Yz5Wb2ljZWQ8L2M+Cis8Yz4K
K3sxLCAgNCwgMTYsICA1LCAxOCwgMTEsICA1LCAxNCwKKzE1LCAgMSwgIDMsIDEyLCAxMywgMTQs
IDE0LCAgNiwKKzE0LCAxMiwgIDIsICA2LCAgMSwgMTIsIDEyLCAxMSwKKzEwLCAgMywgMTAsICA1
LCAgMSwgIDEsICAxLCAgM30vMjU2Cis8L2M+Cis8L3RleHR0YWJsZT4KKworPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiBhbmNob3I9InNpbGtfbmxzZl9zdGFnZTIiIHRpdGxlPSJOb3JtYWxpemVkIExT
RiBTdGFnZSAyIERlY29kaW5nIj4KKzx0PgorQSB0b3RhbCBvZiAxNiBQREZzIGFyZSBhdmFpbGFi
bGUgZm9yIHRoZSBMU0YgcmVzaWR1YWwgaW4gdGhlIHNlY29uZCBzdGFnZTogdGhlCisgOCAoYS4u
LmgpIGZvciBOQiBhbmQgTUIgZnJhbWVzIGdpdmVuIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25s
c2Zfc3RhZ2UyX25ibWJfcGRmcyIvPiwgYW5kIHRoZSA4IChpLi4ucCkgZm9yIFdCIGZyYW1lcwor
IGdpdmVuIGluIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3N0YWdlMl93Yl9wZGZzIi8+LgorV2hp
Y2ggUERGIGlzIHVzZWQgZm9yIHdoaWNoIGNvZWZmaWNpZW50IGlzIGRyaXZlbiBieSB0aGUgaW5k
ZXgsIEkxLAorIGRlY29kZWQgaW4gdGhlIGZpcnN0IHN0YWdlLgorPHhyZWYgdGFyZ2V0PSJzaWxr
X25sc2ZfbmJtYl9zdGFnZTJfY2Jfc2VsIi8+IGxpc3RzIHRoZSBsZXR0ZXIgb2YgdGhlCisgY29y
cmVzcG9uZGluZyBQREYgZm9yIGVhY2ggbm9ybWFsaXplZCBMU0YgY29lZmZpY2llbnQgZm9yIE5C
IGFuZCBNQiwgYW5kCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zfd2Jfc3RhZ2UyX2NiX3NlbCIv
PiBsaXN0cyB0aGUgc2FtZSBpbmZvcm1hdGlvbiBmb3IgV0IuCis8L3Q+CisKKzx0ZXh0dGFibGUg
YW5jaG9yPSJzaWxrX25sc2Zfc3RhZ2UyX25ibWJfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgTkIv
TUIgTm9ybWFsaXplZCBMU0YgU3RhZ2UtMiBJbmRleCBEZWNvZGluZyI+Cis8dHRjb2wgYWxpZ249
ImxlZnQiPkNvZGVib29rPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0ibGVmdCI+UERGPC90dGNvbD4K
KzxjPmE8L2M+IDxjPnsxLCAgIDEsICAgMSwgIDE1LCAyMjQsICAxMSwgICAxLCAgIDEsICAgMX0v
MjU2PC9jPgorPGM+YjwvYz4gPGM+ezEsICAgMSwgICAyLCAgMzQsIDE4MywgIDMyLCAgIDEsICAg
MSwgICAxfS8yNTY8L2M+Cis8Yz5jPC9jPiA8Yz57MSwgICAxLCAgIDQsICA0MiwgMTQ5LCAgNTUs
ICAgMiwgICAxLCAgIDF9LzI1NjwvYz4KKzxjPmQ8L2M+IDxjPnsxLCAgIDEsICAgOCwgIDUyLCAx
MjMsICA2MSwgICA4LCAgIDEsICAgMX0vMjU2PC9jPgorPGM+ZTwvYz4gPGM+ezEsICAgMywgIDE2
LCAgNTMsIDEwMSwgIDc0LCAgIDYsICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5mPC9jPiA8Yz57MSwg
ICAzLCAgMTcsICA1NSwgIDkwLCAgNzMsICAxNSwgICAxLCAgIDF9LzI1NjwvYz4KKzxjPmc8L2M+
IDxjPnsxLCAgIDcsICAyNCwgIDUzLCAgNzQsICA2NywgIDI2LCAgIDMsICAgMX0vMjU2PC9jPgor
PGM+aDwvYz4gPGM+ezEsICAgMSwgIDE4LCAgNjMsICA3OCwgIDU4LCAgMzAsICAgNiwgICAxfS8y
NTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl9zdGFn
ZTJfd2JfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgV0IgTm9ybWFsaXplZCBMU0YgU3RhZ2UtMiBJ
bmRleCBEZWNvZGluZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPkNvZGVib29rPC90dGNvbD4KKzx0
dGNvbCBhbGlnbj0ibGVmdCI+UERGPC90dGNvbD4KKzxjPmk8L2M+IDxjPnsxLCAgIDEsICAgMSwg
ICA5LCAyMzIsICAgOSwgICAxLCAgIDEsICAgMX0vMjU2PC9jPgorPGM+ajwvYz4gPGM+ezEsICAg
MSwgICAyLCAgMjgsIDE4NiwgIDM1LCAgIDEsICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5rPC9jPiA8
Yz57MSwgICAxLCAgIDMsICA0MiwgMTUyLCAgNTMsICAgMiwgICAxLCAgIDF9LzI1NjwvYz4KKzxj
Pmw8L2M+IDxjPnsxLCAgIDEsICAxMCwgIDQ5LCAxMjYsICA2NSwgICAyLCAgIDEsICAgMX0vMjU2
PC9jPgorPGM+bTwvYz4gPGM+ezEsICAgNCwgIDE5LCAgNDgsIDEwMCwgIDc3LCAgIDUsICAgMSwg
ICAxfS8yNTY8L2M+Cis8Yz5uPC9jPiA8Yz57MSwgICAxLCAgMTQsICA1NCwgMTAwLCAgNzIsICAx
MiwgICAxLCAgIDF9LzI1NjwvYz4KKzxjPm88L2M+IDxjPnsxLCAgIDEsICAxNSwgIDYxLCAgODcs
ICA2MSwgIDI1LCAgIDQsICAgMX0vMjU2PC9jPgorPGM+cDwvYz4gPGM+ezEsICAgNywgIDIxLCAg
NTAsICA3NywgIDgxLCAgMTcsICAgMSwgICAxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHRl
eHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl9uYm1iX3N0YWdlMl9jYl9zZWwiCisgdGl0bGU9IkNv
ZGVib29rIFNlbGVjdGlvbiBmb3IgTkIvTUIgTm9ybWFsaXplZCBMU0YgU3RhZ2UtMiBJbmRleCBE
ZWNvZGluZyI+Cis8dHRjb2w+STE8L3R0Y29sPgorPHR0Y29sPkNvZWZmaWNpZW50PC90dGNvbD4K
KzxjLz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjAmbmJzcDsxJm5ic3A7MiZuYnNwOzMmbmJz
cDs0Jm5ic3A7NSZuYnNwOzYmbmJzcDs3Jm5ic3A7OCZuYnNwOzk8L3NwYW54PjwvYz4KKzxjPiAw
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YSZuYnNwO2EmbmJzcDthJm5ic3A7YSZuYnNw
O2EmbmJzcDthJm5ic3A7YSZuYnNwO2EmbmJzcDthJm5ic3A7YTwvc3Bhbng+PC9jPgorPGM+IDE8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5iJm5ic3A7ZCZuYnNwO2ImbmJzcDtjJm5ic3A7
YyZuYnNwO2ImbmJzcDtjJm5ic3A7YiZuYnNwO2ImbmJzcDtiPC9zcGFueD48L2M+Cis8Yz4gMjwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtiJm5ic3A7YiZuYnNwO2ImbmJzcDti
Jm5ic3A7YiZuYnNwO2ImbmJzcDtiJm5ic3A7YiZuYnNwO2I8L3NwYW54PjwvYz4KKzxjPiAzPC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YiZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2Mm
bmJzcDtiJm5ic3A7YyZuYnNwO2ImbmJzcDtiJm5ic3A7Yjwvc3Bhbng+PC9jPgorPGM+IDQ8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5jJm5ic3A7ZCZuYnNwO2QmbmJzcDtkJm5ic3A7ZCZu
YnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtjPC9zcGFueD48L2M+Cis8Yz4gNTwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmEmbmJzcDtmJm5ic3A7ZCZuYnNwO2QmbmJzcDtjJm5i
c3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7YiZuYnNwO2I8L3NwYW54PjwvYz4KKzxjPiBnPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YSZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJz
cDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7Yjwvc3Bhbng+PC9jPgorPGM+IDc8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5jJm5ic3A7ZCZuYnNwO2cmbmJzcDtlJm5ic3A7ZSZuYnNw
O2UmbmJzcDtmJm5ic3A7ZSZuYnNwO2YmbmJzcDtmPC9zcGFueD48L2M+Cis8Yz4gODwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtlJm5ic3A7ZiZuYnNwO2YmbmJzcDtlJm5ic3A7
ZiZuYnNwO2UmbmJzcDtnJm5ic3A7ZSZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPiA5PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2UmbmJzcDtlJm5ic3A7aCZuYnNwO2UmbmJzcDtm
Jm5ic3A7ZSZuYnNwO2YmbmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MTA8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj5lJm5ic3A7ZCZuYnNwO2QmbmJzcDtkJm5ic3A7YyZuYnNwO2Qm
bmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtjPC9zcGFueD48L2M+Cis8Yz4xMTwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPmImbmJzcDtmJm5ic3A7ZiZuYnNwO2cmbmJzcDtlJm5ic3A7ZiZu
YnNwO2UmbmJzcDtmJm5ic3A7ZiZuYnNwO2Y8L3NwYW54PjwvYz4KKzxjPjEyPC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2gmbmJzcDtlJm5ic3A7ZyZuYnNwO2YmbmJzcDtmJm5i
c3A7ZiZuYnNwO2YmbmJzcDtmJm5ic3A7Zjwvc3Bhbng+PC9jPgorPGM+MTM8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5jJm5ic3A7aCZuYnNwO2YmbmJzcDtmJm5ic3A7ZiZuYnNwO2YmbmJz
cDtmJm5ic3A7ZyZuYnNwO2YmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4xNDwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPmQmbmJzcDtkJm5ic3A7ZiZuYnNwO2UmbmJzcDtlJm5ic3A7ZiZuYnNw
O2UmbmJzcDtmJm5ic3A7ZSZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjE1PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2QmbmJzcDtkJm5ic3A7ZiZuYnNwO2YmbmJzcDtlJm5ic3A7
ZSZuYnNwO2UmbmJzcDtlJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MTY8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5jJm5ic3A7ZSZuYnNwO2UmbmJzcDtnJm5ic3A7ZSZuYnNwO2YmbmJzcDtl
Jm5ic3A7ZiZuYnNwO2YmbmJzcDtmPC9zcGFueD48L2M+Cis8Yz4xNzwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPmMmbmJzcDtmJm5ic3A7ZSZuYnNwO2cmbmJzcDtmJm5ic3A7ZiZuYnNwO2Ym
bmJzcDtlJm5ic3A7ZiZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjE4PC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+YyZuYnNwO2gmbmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtmJm5ic3A7ZSZu
YnNwO2YmbmJzcDtmJm5ic3A7Zjwvc3Bhbng+PC9jPgorPGM+MTk8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5jJm5ic3A7ZiZuYnNwO2UmbmJzcDtnJm5ic3A7aCZuYnNwO2cmbmJzcDtmJm5i
c3A7ZyZuYnNwO2YmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4yMDwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPmQmbmJzcDtnJm5ic3A7aCZuYnNwO2UmbmJzcDtnJm5ic3A7ZiZuYnNwO2YmbmJz
cDtnJm5ic3A7ZSZuYnNwO2Y8L3NwYW54PjwvYz4KKzxjPjIxPC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+YyZuYnNwO2gmbmJzcDtnJm5ic3A7ZSZuYnNwO2UmbmJzcDtlJm5ic3A7ZiZuYnNw
O2UmbmJzcDtmJm5ic3A7Zjwvc3Bhbng+PC9jPgorPGM+MjI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj5lJm5ic3A7ZiZuYnNwO2YmbmJzcDtlJm5ic3A7ZyZuYnNwO2cmbmJzcDtmJm5ic3A7
ZyZuYnNwO2YmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4yMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPmMmbmJzcDtmJm5ic3A7ZiZuYnNwO2cmbmJzcDtmJm5ic3A7ZyZuYnNwO2UmbmJzcDtn
Jm5ic3A7ZSZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjI0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+ZSZuYnNwO2YmbmJzcDtmJm5ic3A7ZiZuYnNwO2QmbmJzcDtoJm5ic3A7ZSZuYnNwO2Ym
bmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj5jJm5ic3A7ZCZuYnNwO2UmbmJzcDtmJm5ic3A7ZiZuYnNwO2cmbmJzcDtlJm5ic3A7ZiZu
YnNwO2YmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4yNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPmMmbmJzcDtkJm5ic3A7YyZuYnNwO2QmbmJzcDtkJm5ic3A7ZSZuYnNwO2MmbmJzcDtkJm5i
c3A7ZCZuYnNwO2Q8L3NwYW54PjwvYz4KKzxjPjI3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+YiZuYnNwO2ImbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2QmbmJz
cDtjJm5ic3A7Yzwvc3Bhbng+PC9jPgorPGM+Mjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij5lJm5ic3A7ZiZuYnNwO2YmbmJzcDtnJm5ic3A7ZyZuYnNwO2cmbmJzcDtmJm5ic3A7ZyZuYnNw
O2UmbmJzcDtmPC9zcGFueD48L2M+Cis8Yz4yOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PmQmbmJzcDtmJm5ic3A7ZiZuYnNwO2UmbmJzcDtlJm5ic3A7ZSZuYnNwO2UmbmJzcDtkJm5ic3A7
ZCZuYnNwO2M8L3NwYW54PjwvYz4KKzxjPjMwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
YyZuYnNwO2YmbmJzcDtkJm5ic3A7aCZuYnNwO2YmbmJzcDtmJm5ic3A7ZSZuYnNwO2UmbmJzcDtm
Jm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MzE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5l
Jm5ic3A7ZSZuYnNwO2YmbmJzcDtlJm5ic3A7ZiZuYnNwO2cmbmJzcDtmJm5ic3A7ZyZuYnNwO2Ym
bmJzcDtlPC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNp
bGtfbmxzZl93Yl9zdGFnZTJfY2Jfc2VsIgorIHRpdGxlPSJDb2RlYm9vayBTZWxlY3Rpb24gZm9y
IFdCIE5vcm1hbGl6ZWQgTFNGIFN0YWdlLTIgSW5kZXggRGVjb2RpbmciPgorPHR0Y29sPkkxPC90
dGNvbD4KKzx0dGNvbD5Db2VmZmljaWVudDwvdHRjb2w+Cis8Yy8+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4wJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzImbmJzcDsmbmJzcDszJm5ic3A7Jm5i
c3A7NCZuYnNwOyZuYnNwOzUmbmJzcDsmbmJzcDs2Jm5ic3A7Jm5ic3A7NyZuYnNwOyZuYnNwOzgm
bmJzcDsmbmJzcDs5Jm5ic3A7MTAmbmJzcDsxMSZuYnNwOzEyJm5ic3A7MTMmbmJzcDsxNCZuYnNw
OzE1PC9zcGFueD48L2M+Cis8Yz4gMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJz
cDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5i
c3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2km
bmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7
Jm5ic3A7aSZuYnNwOyZuYnNwO2k8L3NwYW54PjwvYz4KKzxjPiAxPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNw
OyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJz
cDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZu
YnNwOyZuYnNwO2ombmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+IDI8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO24m
bmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7cCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7
Jm5ic3A7biZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNw
O24mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsPC9z
cGFueD48L2M+Cis8Yz4gMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJz
cDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZu
YnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsm
bmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7
aSZuYnNwOyZuYnNwO2o8L3NwYW54PjwvYz4KKzxjPiA0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+aSZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNw
O28mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7cCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5i
c3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7biZuYnNwOyZu
YnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+IDU8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsm
bmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7
biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJz
cDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDttPC9zcGFueD48
L2M+Cis8Yz4gNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtpJm5i
c3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZu
YnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtp
Jm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNw
OyZuYnNwO2k8L3NwYW54PjwvYz4KKzxjPiA3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
aSZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO3AmbmJz
cDsmbmJzcDtrJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5i
c3A7biZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wm
bmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+IDg8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtv
Jm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNw
OyZuYnNwO28mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJz
cDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8
Yz4gOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmsmbmJzcDsmbmJzcDtqJm5ic3A7Jm5i
c3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2km
bmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7
Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNw
O2k8L3NwYW54PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNw
OyZuYnNwO2ombmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJz
cDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZu
YnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsm
bmJzcDtpJm5ic3A7Jm5ic3A7ajwvc3Bhbng+PC9jPgorPGM+MTE8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7
Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNw
O2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5i
c3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4xMjwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmsmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bCZu
YnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7
bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2w8L3Nw
YW54PjwvYz4KKzxjPjEzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+bCZuYnNwOyZuYnNw
O20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDttJm5i
c3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZu
YnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDts
Jm5ic3A7Jm5ic3A7bTwvc3Bhbng+PC9jPgorPGM+MTQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj5pJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7
bSZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO28mbmJz
cDsmbmJzcDtuJm5ic3A7Jm5ic3A7cCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5i
c3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4xNTwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZu
YnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtq
Jm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNw
OyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2k8L3NwYW54Pjwv
Yz4KKzxjPjE2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aiZuYnNwOyZuYnNwO28mbmJz
cDsmbmJzcDtuJm5ic3A7Jm5ic3A7cCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5i
c3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20m
bmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7
Jm5ic3A7bTwvc3Bhbng+PC9jPgorPGM+MTc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5q
Jm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNw
OyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2smbmJzcDsmbmJz
cDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7biZu
YnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttPC9zcGFueD48L2M+Cis8Yz4xODwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPmsmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2sm
bmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7
Jm5ic3A7aiZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNw
O2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO208L3NwYW54PjwvYz4KKzxj
PjE5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO2smbmJzcDsmbmJz
cDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZu
YnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsm
bmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7
aTwvc3Bhbng+PC9jPgorPGM+MjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5sJm5ic3A7
Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNw
O2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5i
c3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7ayZuYnNwOyZu
YnNwO2smbmJzcDsmbmJzcDttPC9zcGFueD48L2M+Cis8Yz4yMTwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPmsmbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO3AmbmJzcDsm
bmJzcDtwJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7
biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJz
cDsmbmJzcDtrJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2w8L3NwYW54PjwvYz4KKzxjPjIyPC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5i
c3A7Jm5ic3A7byZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZu
YnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDts
Jm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bTwvc3Bh
bng+PC9jPgorPGM+MjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5qJm5ic3A7Jm5ic3A7
bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJz
cDsmbmJzcDttJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtuJm5ic3A7Jm5i
c3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2om
bmJzcDsmbmJzcDtqPC9zcGFueD48L2M+Cis8Yz4yNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPmsmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtv
Jm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNw
OyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJz
cDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2w8L3NwYW54PjwvYz4KKzxjPjI1PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtqJm5ic3A7Jm5i
c3A7aiZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2km
bmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7
Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aTwvc3Bhbng+PC9j
PgorPGM+MjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7byZuYnNw
OyZuYnNwO28mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2smbmJzcDsmbmJz
cDtuJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZu
YnNwOyZuYnNwO3AmbmJzcDsmbmJzcDtwJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsm
bmJzcDttPC9zcGFueD48L2M+Cis8Yz4yNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmwm
bmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7cCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7
Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNw
O2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5i
c3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2w8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZu
YnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsm
bmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7
ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7ajwvc3Bhbng+PC9jPgorPGM+
Mjk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNw
O2smbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5i
c3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZu
YnNwO2kmbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtq
PC9zcGFueD48L2M+Cis8Yz4zMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmwmbmJzcDsm
bmJzcDtuJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtwJm5ic3A7Jm5ic3A7
biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJz
cDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtpJm5ic3A7Jm5i
c3A7aiZuYnNwOyZuYnNwO2k8L3NwYW54PjwvYz4KKzxjPjMxPC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZu
YnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtr
Jm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7bSZuYnNw
OyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aTwvc3Bhbng+PC9jPgorPC90ZXh0dGFi
bGU+CisKKzx0PgorRGVjb2RpbmcgdGhlIHNlY29uZCBzdGFnZSByZXNpZHVhbCBwcm9jZWVkcyBh
cyBmb2xsb3dzLgorRm9yIGVhY2ggY29lZmZpY2llbnQsIHRoZSBkZWNvZGVyIHJlYWRzIGEgc3lt
Ym9sIHVzaW5nIHRoZSBQREYgY29ycmVzcG9uZGluZyB0bworIEkxIGZyb20gZWl0aGVyIDx4cmVm
IHRhcmdldD0ic2lsa19ubHNmX25ibWJfc3RhZ2UyX2NiX3NlbCIvPiBvcgorIDx4cmVmIHRhcmdl
dD0ic2lsa19ubHNmX3diX3N0YWdlMl9jYl9zZWwiLz4sIGFuZCBzdWJ0cmFjdHMgNCBmcm9tIHRo
ZSByZXN1bHQKKyB0byBnaXZlIGFuIGluZGV4IGluIHRoZSByYW5nZSAtNCB0byA0LCBpbmNsdXNp
dmUuCitJZiB0aGUgaW5kZXggaXMgZWl0aGVyIC00IG9yIDQsIGl0IHJlYWRzIGEgc2Vjb25kIHN5
bWJvbCB1c2luZyB0aGUgUERGIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfZXh0X3BkZiIv
PiwgYW5kIGFkZHMgdGhlIHZhbHVlIG9mIHRoaXMgc2Vjb25kIHN5bWJvbAorIHRvIHRoZSBpbmRl
eCwgdXNpbmcgdGhlIHNhbWUgc2lnbi4KK1RoaXMgZ2l2ZXMgdGhlIGluZGV4LCBJMltrXSwgYSB0
b3RhbCByYW5nZSBvZiAtMTAgdG8gMTAsIGluY2x1c2l2ZS4KKzwvdD4KKworPHRleHR0YWJsZSBh
bmNob3I9InNpbGtfbmxzZl9leHRfcGRmIgorIHRpdGxlPSJQREYgZm9yIE5vcm1hbGl6ZWQgTFNG
IEluZGV4IEV4dGVuc2lvbiBEZWNvZGluZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRj
b2w+Cis8Yz57MTU2LCA2MCwgMjQsICA5LCAgNCwgIDIsICAxfS8yNTY8L2M+Cis8L3RleHR0YWJs
ZT4KKworPHQ+CitUaGUgZGVjb2RlZCBpbmRpY2VzIGZyb20gYm90aCBzdGFnZXMgYXJlIHRyYW5z
bGF0ZWQgYmFjayBpbnRvIG5vcm1hbGl6ZWQgTFNGCisgY29lZmZpY2llbnRzIGluIHNpbGtfTkxT
Rl9kZWNvZGUoKSAoTkxTRl9kZWNvZGUuYykuCitUaGUgc3RhZ2UtMiBpbmRpY2VzIHJlcHJlc2Vu
dCByZXNpZHVhbHMgYWZ0ZXIgYm90aCB0aGUgZmlyc3Qgc3RhZ2Ugb2YgdGhlIFZRCisgYW5kIGEg
c2VwYXJhdGUgYmFja3dhcmRzLXByZWRpY3Rpb24gc3RlcC4KK1RoZSBiYWNrd2FyZHMgcHJlZGlj
dGlvbiBwcm9jZXNzIGluIHRoZSBlbmNvZGVyIHN1YnRyYWN0cyBhIHByZWRpY3Rpb24gZnJvbQor
IGVhY2ggcmVzaWR1YWwgZm9ybWVkIGJ5IGEgbXVsdGlwbGUgb2YgdGhlIGNvZWZmaWNpZW50IHRo
YXQgZm9sbG93cyBpdC4KK1RoZSBkZWNvZGVyIG11c3QgdW5kbyB0aGlzIHByb2Nlc3MuCis8eHJl
ZiB0YXJnZXQ9InNpbGtfbmxzZl9wcmVkX3dlaWdodHMiLz4gY29udGFpbnMgbGlzdHMgb2YgcHJl
ZGljdGlvbiB3ZWlnaHRzCisgZm9yIGVhY2ggY29lZmZpY2llbnQuCitUaGVyZSBhcmUgdHdvIGxp
c3RzIGZvciBOQiBhbmQgTUIsIGFuZCBhbm90aGVyIHR3byBsaXN0cyBmb3IgV0IsIGdpdmluZyB0
d28KKyBwb3NzaWJsZSBwcmVkaWN0aW9uIHdlaWdodHMgZm9yIGVhY2ggY29lZmZpY2llbnQuCis8
L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25sc2ZfcHJlZF93ZWlnaHRzIgorIHRpdGxl
PSJQcmVkaWN0aW9uIFdlaWdodHMgZm9yIE5vcm1hbGl6ZWQgTFNGIERlY29kaW5nIj4KKzx0dGNv
bCBhbGlnbj0ibGVmdCI+Q29lZmZpY2llbnQ8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+
QTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5CPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0i
cmlnaHQiPkM8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+RDwvdHRjb2w+CisgPGM+MDwv
Yz4gPGM+MTc5PC9jPiA8Yz4xMTY8L2M+IDxjPjE3NTwvYz4gIDxjPjY4PC9jPgorIDxjPjE8L2M+
IDxjPjEzODwvYz4gIDxjPjY3PC9jPiA8Yz4xNDg8L2M+ICA8Yz42MjwvYz4KKyA8Yz4yPC9jPiA8
Yz4xNDA8L2M+ICA8Yz44MjwvYz4gPGM+MTYwPC9jPiAgPGM+NjY8L2M+CisgPGM+MzwvYz4gPGM+
MTQ4PC9jPiAgPGM+NTk8L2M+IDxjPjE3NjwvYz4gIDxjPjYwPC9jPgorIDxjPjQ8L2M+IDxjPjE1
MTwvYz4gIDxjPjkyPC9jPiA8Yz4xNzg8L2M+ICA8Yz43MjwvYz4KKyA8Yz41PC9jPiA8Yz4xNDk8
L2M+ICA8Yz43MjwvYz4gPGM+MTczPC9jPiA8Yz4xMTc8L2M+CisgPGM+NjwvYz4gPGM+MTUzPC9j
PiA8Yz4xMDA8L2M+IDxjPjE3NDwvYz4gIDxjPjg1PC9jPgorIDxjPjc8L2M+IDxjPjE1MTwvYz4g
IDxjPjg5PC9jPiA8Yz4xNjQ8L2M+ICA8Yz45MDwvYz4KKyA8Yz44PC9jPiA8Yz4xNjM8L2M+ICA8
Yz45MjwvYz4gPGM+MTc3PC9jPiA8Yz4xMTg8L2M+CisgPGM+OTwvYz4gPGMvPiAgICAgICAgPGMv
PiAgICAgIDxjPjE3NDwvYz4gPGM+MTM2PC9jPgorPGM+MTA8L2M+IDxjLz4gICAgICAgIDxjLz4g
ICAgICA8Yz4xOTY8L2M+IDxjPjE1MTwvYz4KKzxjPjExPC9jPiA8Yy8+ICAgICAgICA8Yy8+ICAg
ICAgPGM+MTgyPC9jPiA8Yz4xNDI8L2M+Cis8Yz4xMjwvYz4gPGMvPiAgICAgICAgPGMvPiAgICAg
IDxjPjE5ODwvYz4gPGM+MTYwPC9jPgorPGM+MTM8L2M+IDxjLz4gICAgICAgIDxjLz4gICAgICA8
Yz4xOTI8L2M+IDxjPjE0MjwvYz4KKzxjPjE0PC9jPiA8Yy8+ICAgICAgICA8Yy8+ICAgICAgPGM+
MTgyPC9jPiA8Yz4xNTU8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitUaGUgcHJlZGljdGlvbiBp
cyB1bmRvbmUgdXNpbmcgdGhlIHByb2NlZHVyZSBpbXBsZW1lbnRlZCBpbgorIHNpbGtfTkxTRl9y
ZXNpZHVhbF9kZXF1YW50KCkgKE5MU0ZfZGVjb2RlLmMpLCB3aGljaCBpcyBhcyBmb2xsb3dzLgor
RWFjaCBjb2VmZmljaWVudCBzZWxlY3RzIGl0cyBwcmVkaWN0aW9uIHdlaWdodCBmcm9tIG9uZSBv
ZiB0aGUgdHdvIGxpc3RzIGJhc2VkCisgb24gdGhlIHN0YWdlLTEgaW5kZXgsIEkxLgorPHhyZWYg
dGFyZ2V0PSJzaWxrX25sc2ZfbmJtYl93ZWlnaHRfc2VsIi8+IGdpdmVzIHRoZSBzZWxlY3Rpb25z
IGZvciBlYWNoCisgY29lZmZpY2llbnQgZm9yIE5CIGFuZCBNQiwgYW5kIDx4cmVmIHRhcmdldD0i
c2lsa19ubHNmX3diX3dlaWdodF9zZWwiLz4gZ2l2ZXMKKyB0aGUgc2VsZWN0aW9ucyBmb3IgV0Iu
CitMZXQgZF9MUEMgYmUgdGhlIG9yZGVyIG9mIHRoZSBjb2RlYm9vaywgaS5lLiwgMTAgZm9yIE5C
IGFuZCBNQiwgYW5kIDE2IGZvciBXQiwKKyBhbmQgbGV0IHByZWRfUThba10gYmUgdGhlIHdlaWdo
dCBmb3IgdGhlIGsndGggY29lZmZpY2llbnQgc2VsZWN0ZWQgYnkgdGhpcworIHByb2Nlc3MgZm9y
IDAmbmJzcDsmbHQ7PSZuYnNwO2smbmJzcDsmbHQ7Jm5ic3A7ZF9MUEMtMS4KK1RoZW4sIHRoZSBz
dGFnZS0yIHJlc2lkdWFsIGZvciBlYWNoIGNvZWZmaWNpZW50IGlzIGNvbXB1dGVkIHZpYQorPGZp
Z3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
cmVzX1ExMFtrXSA9IChrKzEgPCBkX0xQQyA/IChyZXNfUTEwW2srMV0qcHJlZF9ROFtrXSk+Pjgg
OiAwKQorICAgICAgICAgICAgICsgKCgoKEkyW2tdPDwxMCkgLSBzaWduKEkyW2tdKSoxMDIpKnFz
dGVwKT4+MTYpICwKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdoZXJlIHFzdGVwIGlzIHRo
ZSBRMTYgcXVhbnRpemF0aW9uIHN0ZXAgc2l6ZSwgd2hpY2ggaXMgMTE3OTYgZm9yIE5CIGFuZCBN
QgorIGFuZCA5ODMwIGZvciBXQiAocmVwcmVzZW50aW5nIHN0ZXAgc2l6ZXMgb2YgYXBwcm94aW1h
dGVseSAwLjE4IGFuZCAwLjE1LAorIHJlc3BlY3RpdmVseSkuCis8L3Q+CisKKzx0ZXh0dGFibGUg
YW5jaG9yPSJzaWxrX25sc2ZfbmJtYl93ZWlnaHRfc2VsIgorIHRpdGxlPSJQcmVkaWN0aW9uIFdl
aWdodCBTZWxlY3Rpb24gZm9yIE5CL01CIE5vcm1hbGl6ZWQgTFNGIERlY29kaW5nIj4KKzx0dGNv
bD5JMTwvdHRjb2w+Cis8dHRjb2w+Q29lZmZpY2llbnQ8L3R0Y29sPgorPGMvPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+MCZuYnNwOzEmbmJzcDsyJm5ic3A7MyZuYnNwOzQmbmJzcDs1Jm5ic3A7
NiZuYnNwOzcmbmJzcDs4PC9zcGFueD48L2M+Cis8Yz4gMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPkEmbmJzcDtCJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtB
Jm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+IDE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5C
Jm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0E8
L3NwYW54PjwvYz4KKzxjPiAyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0Em
bmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBPC9zcGFueD48
L2M+Cis8Yz4gMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkImbmJzcDtCJm5ic3A7QiZu
YnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+
IDQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5i
c3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPiA1PC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJz
cDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4gNjwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPkImbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNw
O0EmbmJzcDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+IDc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj5BJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7
QSZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPiA4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtC
PC9zcGFueD48L2M+Cis8Yz4gOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtB
Jm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7Qjwvc3Bhbng+
PC9jPgorPGM+MTA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNwO0Em
bmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0E8L3NwYW54PjwvYz4KKzxj
PjExPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtBJm5ic3A7QiZu
YnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4xMjwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5i
c3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+MTM8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJz
cDtCJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjE0PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+QiZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNw
O0ImbmJzcDtCPC9zcGFueD48L2M+Cis8Yz4xNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PkEmbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7
QTwvc3Bhbng+PC9jPgorPGM+MTY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7
QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0E8L3NwYW54
PjwvYz4KKzxjPjE3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtC
Jm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtCPC9zcGFueD48L2M+Cis8
Yz4xODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7QiZuYnNwO0Em
bmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+MTk8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZu
YnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjIwPC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5i
c3A7QSZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4yMTwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJz
cDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+MjI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij5BJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNw
O0I8L3NwYW54PjwvYz4KKzxjPjIzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNw
O0EmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtCPC9zcGFu
eD48L2M+Cis8Yz4yNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5ic3A7
QSZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7Qjwvc3Bhbng+PC9jPgor
PGM+MjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0ImbmJzcDtC
Jm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjI2PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0Em
bmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4yNzwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZu
YnNwO0EmbmJzcDtBJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+Mjg8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5i
c3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjI5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+QiZuYnNwO0EmbmJzcDtBJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJz
cDtBPC9zcGFueD48L2M+Cis8Yz4zMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJz
cDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtBJm5ic3A7Qjwvc3Bh
bng+PC9jPgorPGM+MzE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5CJm5ic3A7QSZuYnNw
O0ImbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0I8L3NwYW54PjwvYz4K
KzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNmX3diX3dlaWdodF9z
ZWwiCisgdGl0bGU9IlByZWRpY3Rpb24gV2VpZ2h0IFNlbGVjdGlvbiBmb3IgV0IgTm9ybWFsaXpl
ZCBMU0YgRGVjb2RpbmciPgorPHR0Y29sPkkxPC90dGNvbD4KKzx0dGNvbD5Db2VmZmljaWVudDwv
dHRjb2w+Cis8Yy8+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4wJm5ic3A7Jm5ic3A7MSZuYnNw
OyZuYnNwOzImbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7NCZuYnNwOyZuYnNwOzUmbmJzcDsmbmJz
cDs2Jm5ic3A7Jm5ic3A7NyZuYnNwOyZuYnNwOzgmbmJzcDsmbmJzcDs5Jm5ic3A7MTAmbmJzcDsx
MSZuYnNwOzEyJm5ic3A7MTMmbmJzcDsxNDwvc3Bhbng+PC9jPgorPGM+IDA8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPiAxPC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4gMjwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+IDM8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxj
PiA0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+
Cis8Yz4gNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+
PC9jPgorPGM+IDY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5EJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0M8L3Nw
YW54PjwvYz4KKzxjPiA3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZu
YnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtE
PC9zcGFueD48L2M+Cis8Yz4gODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7RDwvc3Bhbng+PC9jPgorPGM+IDk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4xMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNw
OyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MTI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPjEzPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4xNDwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RDwvc3Bhbng+PC9jPgorPGM+MTU8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPjE2PC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4xNzwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+
MTg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4K
KzxjPjE5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48
L2M+Cis8Yz4yMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bh
bng+PC9jPgorPGM+MjE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJz
cDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0M8
L3NwYW54PjwvYz4KKzxjPjIyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDPC9zcGFueD48L2M+Cis8Yz4yMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJz
cDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5D
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPjI1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4yNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPkMmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7RDwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4yOTwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RDwvc3Bhbng+PC9jPgorPGM+MzA8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5EJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPjMxPC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZu
YnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8L3Rl
eHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbmxzZl9yZWNv
bnN0cnVjdGlvbiIKKyB0aXRsZT0iUmVjb25zdHJ1Y3RpbmcgdGhlIE5vcm1hbGl6ZWQgTFNGIENv
ZWZmaWNpZW50cyI+Cis8dD4KK09uY2UgdGhlIHN0YWdlLTEgaW5kZXggSTEgYW5kIHRoZSBzdGFn
ZS0yIHJlc2lkdWFsIHJlc19RMTBbXSBoYXZlIGJlZW4gZGVjb2RlZCwKKyB0aGUgZmluYWwgbm9y
bWFsaXplZCBMU0YgY29lZmZpY2llbnRzIGNhbiBiZSByZWNvbnN0cnVjdGVkLgorPC90PgorPHQ+
CitUaGUgc3BlY3RyYWwgZGlzdG9ydGlvbiBpbnRyb2R1Y2VkIGJ5IHRoZSBxdWFudGl6YXRpb24g
b2YgZWFjaCBMU0YgY29lZmZpY2llbnQKKyB2YXJpZXMsIHNvIHRoZSBzdGFnZS0yIHJlc2lkdWFs
IGlzIHdlaWdodGVkIGFjY29yZGluZ2x5LCB1c2luZyB0aGUKKyBsb3ctY29tcGxleGl0eSBJbnZl
cnNlIEhhcm1vbmljIE1lYW4gV2VpZ2h0aW5nIChJSE1XKSBmdW5jdGlvbiBwcm9wb3NlZCBpbgor
IDx4cmVmIHRhcmdldD0ibGFyb2lhLWljYXNzcCIvPi4KK1RoZSB3ZWlnaHRzIGFyZSBkZXJpdmVk
IGRpcmVjdGx5IGZyb20gdGhlIHN0YWdlLTEgY29kZWJvb2sgdmVjdG9yLgorTGV0IGNiMV9ROFtr
XSBiZSB0aGUgayd0aCBlbnRyeSBvZiB0aGUgc3RhZ2UtMSBjb2RlYm9vayB2ZWN0b3IgZnJvbQor
IDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX25ibWJfY29kZWJvb2siLz4gb3IKKyA8eHJlZiB0YXJn
ZXQ9InNpbGtfbmxzZl93Yl9jb2RlYm9vayIvPi4KK1RoZW4gZm9yIDAmbmJzcDsmbHQ7PSZuYnNw
O2smbmJzcDsmbHQ7Jm5ic3A7ZF9MUEMgdGhlIGZvbGxvd2luZyBleHByZXNzaW9uCisgY29tcHV0
ZXMgdGhlIHNxdWFyZSBvZiB0aGUgd2VpZ2h0IGFzIGEgUTE4IHZhbHVlOgorPGZpZ3VyZSBhbGln
bj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCit3Ml9RMThb
a10gPSAoMTAyNC8oY2IxX1E4W2tdIC0gY2IxX1E4W2stMV0pCisgICAgICAgICAgICAgKyAxMDI0
LyhjYjFfUThbaysxXSAtIGNiMV9ROFtrXSkpIDw8IDE2ICwKK11dPgorPC9hcnR3b3JrPgorPC9m
aWd1cmU+Cisgd2hlcmUgY2IxX1E4Wy0xXSZuYnNwOz0mbmJzcDswIGFuZCBjYjFfUThbZF9MUENd
Jm5ic3A7PSZuYnNwOzI1NiwgYW5kIHRoZQorIGRpdmlzaW9uIGlzIGludGVnZXIgZGl2aXNpb24u
CitUaGlzIGlzIHJlZHVjZWQgdG8gYW4gdW5zcXVhcmVkLCBROSB2YWx1ZSB1c2luZyB0aGUgZm9s
bG93aW5nIHNxdWFyZS1yb290CisgYXBwcm94aW1hdGlvbjoKKzxmaWd1cmUgYWxpZ249ImNlbnRl
ciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2kgPSBpbG9nKHcyX1ExOFtr
XSkKK2YgPSAodzJfUTE4W2tdPj4oaS04KSkgJiAxMjcKK3kgPSAoKGkmMSkgPyAzMjc2OCA6IDQ2
MjE0KSA+PiAoKDMyLWkpPj4xKQord19ROVtrXSA9IHkgKyAoKDIxMypmKnkpPj4xNikKK11dPjwv
YXJ0d29yaz4KKzwvZmlndXJlPgorVGhlIGNvbnN0YW50IDQ2MjE0IGhlcmUgaXMgYXBwcm94aW1h
dGVseSB0aGUgc3F1YXJlIHJvb3Qgb2YgMiBpbiBRMTUuCitUaGUgY2IxX1E4W10gdmVjdG9yIGNv
bXBsZXRlbHkgZGV0ZXJtaW5lcyB0aGVzZSB3ZWlnaHRzLCBhbmQgdGhleSBtYXkgYmUKKyB0YWJ1
bGF0ZWQgYW5kIHN0b3JlZCBhcyAxMy1iaXQgdW5zaWduZWQgdmFsdWVzICh3aXRoIGEgcmFuZ2Ug
b2YgMTgxOSB0byA1MjI3LAorIGluY2x1c2l2ZSkgdG8gYXZvaWQgY29tcHV0aW5nIHRoZW0gd2hl
biBkZWNvZGluZy4KK1RoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gYWxyZWFkeSByZXF1aXJl
cyBjb2RlIHRvIGNvbXB1dGUgdGhlc2Ugd2VpZ2h0cyBvbgorIHVucXVhbnRpemVkIGNvZWZmaWNp
ZW50cyBpbiB0aGUgZW5jb2RlciwgaW4gc2lsa19OTFNGX1ZRX3dlaWdodHNfbGFyb2lhKCkKKyAo
TkxTRl9WUV93ZWlnaHRzX2xhcm9pYS5jKSBhbmQgaXRzIGNhbGxlcnMsIHNvIGl0IHJldXNlcyB0
aGF0IGNvZGUgaW4gdGhlCisgZGVjb2RlciBpbnN0ZWFkIG9mIHVzaW5nIGEgcHJlLWNvbXB1dGVk
IHRhYmxlIHRvIHJlZHVjZSB0aGUgYW1vdW50IG9mIFJPTQorIHJlcXVpcmVkLgorPC90PgorCis8
dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNmX25ibWJfY29kZWJvb2siCisgICAgICAgICAgIHRp
dGxlPSJOQi9NQiBOb3JtYWxpemVkIExTRiBTdGFnZS0xIENvZGVib29rIFZlY3RvcnMiPgorPHR0
Y29sPkkxPC90dGNvbD4KKzx0dGNvbD5Db2RlYm9vayAoUTgpPC90dGNvbD4KKzxjLz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7
Jm5ic3A7MiZuYnNwOyZuYnNwOyZuYnNwOzMmbmJzcDsmbmJzcDsmbmJzcDs0Jm5ic3A7Jm5ic3A7
Jm5ic3A7NSZuYnNwOyZuYnNwOyZuYnNwOzYmbmJzcDsmbmJzcDsmbmJzcDs3Jm5ic3A7Jm5ic3A7
Jm5ic3A7OCZuYnNwOyZuYnNwOyZuYnNwOzk8L3NwYW54PjwvYz4KKzxjPjA8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4xMiZuYnNwOyZuYnNwOzM1Jm5ic3A7Jm5ic3A7NjAmbmJzcDsmbmJz
cDs4MyZuYnNwOzEwOCZuYnNwOzEzMiZuYnNwOzE1NyZuYnNwOzE4MCZuYnNwOzIwNiZuYnNwOzIy
ODwvc3Bhbng+PC9jPgorPGM+MTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE1Jm5ic3A7
Jm5ic3A7MzImbmJzcDsmbmJzcDs1NSZuYnNwOyZuYnNwOzc3Jm5ic3A7MTAxJm5ic3A7MTI1Jm5i
c3A7MTUxJm5ic3A7MTc1Jm5ic3A7MjAxJm5ic3A7MjI1PC9zcGFueD48L2M+Cis8Yz4yPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTkmbmJzcDsmbmJzcDs0MiZuYnNwOyZuYnNwOzY2Jm5i
c3A7Jm5ic3A7ODkmbmJzcDsxMTQmbmJzcDsxMzcmbmJzcDsxNjImbmJzcDsxODQmbmJzcDsyMDkm
bmJzcDsyMzA8L3NwYW54PjwvYz4KKzxjPjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4x
MiZuYnNwOyZuYnNwOzI1Jm5ic3A7Jm5ic3A7NTAmbmJzcDsmbmJzcDs3MiZuYnNwOyZuYnNwOzk3
Jm5ic3A7MTIwJm5ic3A7MTQ3Jm5ic3A7MTcyJm5ic3A7MjAwJm5ic3A7MjIzPC9zcGFueD48L2M+
Cis8Yz40PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjYmbmJzcDsmbmJzcDs0NCZuYnNw
OyZuYnNwOzY5Jm5ic3A7Jm5ic3A7OTAmbmJzcDsxMTQmbmJzcDsxMzUmbmJzcDsxNTkmbmJzcDsx
ODAmbmJzcDsyMDUmbmJzcDsyMjU8L3NwYW54PjwvYz4KKzxjPjU8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4xMyZuYnNwOyZuYnNwOzIyJm5ic3A7Jm5ic3A7NTMmbmJzcDsmbmJzcDs4MCZu
YnNwOzEwNiZuYnNwOzEzMCZuYnNwOzE1NiZuYnNwOzE4MCZuYnNwOzIwNSZuYnNwOzIyODwvc3Bh
bng+PC9jPgorPGM+NjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE1Jm5ic3A7Jm5ic3A7
MjUmbmJzcDsmbmJzcDs0NCZuYnNwOyZuYnNwOzY0Jm5ic3A7Jm5ic3A7OTAmbmJzcDsxMTUmbmJz
cDsxNDImbmJzcDsxNjgmbmJzcDsxOTYmbmJzcDsyMjI8L3NwYW54PjwvYz4KKzxjPjc8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xOSZuYnNwOyZuYnNwOzI0Jm5ic3A7Jm5ic3A7NjImbmJz
cDsmbmJzcDs4MiZuYnNwOzEwMCZuYnNwOzEyMCZuYnNwOzE0NSZuYnNwOzE2OCZuYnNwOzE5MCZu
YnNwOzIxNDwvc3Bhbng+PC9jPgorPGM+ODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjIy
Jm5ic3A7Jm5ic3A7MzEmbmJzcDsmbmJzcDs1MCZuYnNwOyZuYnNwOzc5Jm5ic3A7MTAzJm5ic3A7
MTIwJm5ic3A7MTUxJm5ic3A7MTcwJm5ic3A7MjAzJm5ic3A7MjI3PC9zcGFueD48L2M+Cis8Yz45
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjEmbmJzcDsmbmJzcDsyOSZuYnNwOyZuYnNw
OzQ1Jm5ic3A7Jm5ic3A7NjUmbmJzcDsxMDYmbmJzcDsxMjQmbmJzcDsxNTAmbmJzcDsxNzEmbmJz
cDsxOTYmbmJzcDsyMjQ8L3NwYW54PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+MzAmbmJzcDsmbmJzcDs0OSZuYnNwOyZuYnNwOzc1Jm5ic3A7Jm5ic3A7OTcmbmJzcDsx
MjEmbmJzcDsxNDImbmJzcDsxNjUmbmJzcDsxODYmbmJzcDsyMDkmbmJzcDsyMjk8L3NwYW54Pjwv
Yz4KKzxjPjExPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTkmbmJzcDsmbmJzcDsyNSZu
YnNwOyZuYnNwOzUyJm5ic3A7Jm5ic3A7NzAmbmJzcDsmbmJzcDs5MyZuYnNwOzExNiZuYnNwOzE0
MyZuYnNwOzE2NiZuYnNwOzE5MiZuYnNwOzIxOTwvc3Bhbng+PC9jPgorPGM+MTI8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4yNiZuYnNwOyZuYnNwOzM0Jm5ic3A7Jm5ic3A7NjImbmJzcDsm
bmJzcDs3NSZuYnNwOyZuYnNwOzk3Jm5ic3A7MTE4Jm5ic3A7MTQ1Jm5ic3A7MTY3Jm5ic3A7MTk0
Jm5ic3A7MjE3PC9zcGFueD48L2M+Cis8Yz4xMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PjI1Jm5ic3A7Jm5ic3A7MzMmbmJzcDsmbmJzcDs1NiZuYnNwOyZuYnNwOzcwJm5ic3A7Jm5ic3A7
OTEmbmJzcDsxMTMmbmJzcDsxNDMmbmJzcDsxNjUmbmJzcDsxOTYmbmJzcDsyMjM8L3NwYW54Pjwv
Yz4KKzxjPjE0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjEmbmJzcDsmbmJzcDszNCZu
YnNwOyZuYnNwOzUxJm5ic3A7Jm5ic3A7NzImbmJzcDsmbmJzcDs5NyZuYnNwOzExNyZuYnNwOzE0
NSZuYnNwOzE3MSZuYnNwOzE5NiZuYnNwOzIyMjwvc3Bhbng+PC9jPgorPGM+MTU8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4yMCZuYnNwOyZuYnNwOzI5Jm5ic3A7Jm5ic3A7NTAmbmJzcDsm
bmJzcDs2NyZuYnNwOyZuYnNwOzkwJm5ic3A7MTE3Jm5ic3A7MTQ0Jm5ic3A7MTY4Jm5ic3A7MTk3
Jm5ic3A7MjIxPC9zcGFueD48L2M+Cis8Yz4xNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PjIyJm5ic3A7Jm5ic3A7MzEmbmJzcDsmbmJzcDs0OCZuYnNwOyZuYnNwOzY2Jm5ic3A7Jm5ic3A7
OTUmbmJzcDsxMTcmbmJzcDsxNDYmbmJzcDsxNjgmbmJzcDsxOTYmbmJzcDsyMjI8L3NwYW54Pjwv
Yz4KKzxjPjE3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjQmbmJzcDsmbmJzcDszMyZu
YnNwOyZuYnNwOzUxJm5ic3A7Jm5ic3A7NzcmbmJzcDsxMTYmbmJzcDsxMzQmbmJzcDsxNTgmbmJz
cDsxODAmbmJzcDsyMDAmbmJzcDsyMjQ8L3NwYW54PjwvYz4KKzxjPjE4PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+MjEmbmJzcDsmbmJzcDsyOCZuYnNwOyZuYnNwOzcwJm5ic3A7Jm5ic3A7
ODcmbmJzcDsxMDYmbmJzcDsxMjQmbmJzcDsxNDkmbmJzcDsxNzAmbmJzcDsxOTQmbmJzcDsyMTc8
L3NwYW54PjwvYz4KKzxjPjE5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjYmbmJzcDsm
bmJzcDszMyZuYnNwOyZuYnNwOzUzJm5ic3A7Jm5ic3A7NjQmbmJzcDsmbmJzcDs4MyZuYnNwOzEx
NyZuYnNwOzE1MiZuYnNwOzE3MyZuYnNwOzIwNCZuYnNwOzIyNTwvc3Bhbng+PC9jPgorPGM+MjA8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yNyZuYnNwOyZuYnNwOzM0Jm5ic3A7Jm5ic3A7
NjUmbmJzcDsmbmJzcDs5NSZuYnNwOzEwOCZuYnNwOzEyOSZuYnNwOzE1NSZuYnNwOzE3NCZuYnNw
OzIxMCZuYnNwOzIyNTwvc3Bhbng+PC9jPgorPGM+MjE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4yMCZuYnNwOyZuYnNwOzI2Jm5ic3A7Jm5ic3A7NzImbmJzcDsmbmJzcDs5OSZuYnNwOzEx
MyZuYnNwOzEzMSZuYnNwOzE1NCZuYnNwOzE3NiZuYnNwOzIwMCZuYnNwOzIxOTwvc3Bhbng+PC9j
PgorPGM+MjI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4zNCZuYnNwOyZuYnNwOzQzJm5i
c3A7Jm5ic3A7NjEmbmJzcDsmbmJzcDs3OCZuYnNwOyZuYnNwOzkzJm5ic3A7MTE0Jm5ic3A7MTU1
Jm5ic3A7MTc3Jm5ic3A7MjA1Jm5ic3A7MjI5PC9zcGFueD48L2M+Cis8Yz4yMzwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPjIzJm5ic3A7Jm5ic3A7MjkmbmJzcDsmbmJzcDs1NCZuYnNwOyZu
YnNwOzk3Jm5ic3A7MTI0Jm5ic3A7MTM4Jm5ic3A7MTYzJm5ic3A7MTc5Jm5ic3A7MjA5Jm5ic3A7
MjI5PC9zcGFueD48L2M+Cis8Yz4yNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjMwJm5i
c3A7Jm5ic3A7MzgmbmJzcDsmbmJzcDs1NiZuYnNwOyZuYnNwOzg5Jm5ic3A7MTE4Jm5ic3A7MTI5
Jm5ic3A7MTU4Jm5ic3A7MTc4Jm5ic3A7MjAwJm5ic3A7MjMxPC9zcGFueD48L2M+Cis8Yz4yNTwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjIxJm5ic3A7Jm5ic3A7MjkmbmJzcDsmbmJzcDs0
OSZuYnNwOyZuYnNwOzYzJm5ic3A7Jm5ic3A7ODUmbmJzcDsxMTEmbmJzcDsxNDImbmJzcDsxNjMm
bmJzcDsxOTMmbmJzcDsyMjI8L3NwYW54PjwvYz4KKzxjPjI2PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+MjcmbmJzcDsmbmJzcDs0OCZuYnNwOyZuYnNwOzc3Jm5ic3A7MTAzJm5ic3A7MTMz
Jm5ic3A7MTU4Jm5ic3A7MTc5Jm5ic3A7MTk2Jm5ic3A7MjE1Jm5ic3A7MjMyPC9zcGFueD48L2M+
Cis8Yz4yNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjI5Jm5ic3A7Jm5ic3A7NDcmbmJz
cDsmbmJzcDs3NCZuYnNwOyZuYnNwOzk5Jm5ic3A7MTI0Jm5ic3A7MTUxJm5ic3A7MTc2Jm5ic3A7
MTk4Jm5ic3A7MjIwJm5ic3A7MjM3PC9zcGFueD48L2M+Cis8Yz4yODwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPjMzJm5ic3A7Jm5ic3A7NDImbmJzcDsmbmJzcDs2MSZuYnNwOyZuYnNwOzc2
Jm5ic3A7Jm5ic3A7OTMmbmJzcDsxMjEmbmJzcDsxNTUmbmJzcDsxNzQmbmJzcDsyMDcmbmJzcDsy
MjU8L3NwYW54PjwvYz4KKzxjPjI5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjkmbmJz
cDsmbmJzcDs1MyZuYnNwOyZuYnNwOzg3Jm5ic3A7MTEyJm5ic3A7MTM2Jm5ic3A7MTU0Jm5ic3A7
MTcwJm5ic3A7MTg4Jm5ic3A7MjA4Jm5ic3A7MjI3PC9zcGFueD48L2M+Cis8Yz4zMDwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPjI0Jm5ic3A7Jm5ic3A7MzAmbmJzcDsmbmJzcDs1MiZuYnNw
OyZuYnNwOzg0Jm5ic3A7MTMxJm5ic3A7MTUwJm5ic3A7MTY2Jm5ic3A7MTg2Jm5ic3A7MjAzJm5i
c3A7MjI5PC9zcGFueD48L2M+Cis8Yz4zMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjM3
Jm5ic3A7Jm5ic3A7NDgmbmJzcDsmbmJzcDs2NCZuYnNwOyZuYnNwOzg0Jm5ic3A7MTA0Jm5ic3A7
MTE4Jm5ic3A7MTU2Jm5ic3A7MTc3Jm5ic3A7MjAxJm5ic3A7MjMwPC9zcGFueD48L2M+Cis8L3Rl
eHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl93Yl9jb2RlYm9vayIKKyAg
ICAgICAgICAgdGl0bGU9IldCIE5vcm1hbGl6ZWQgTFNGIFN0YWdlLTEgQ29kZWJvb2sgVmVjdG9y
cyI+Cis8dHRjb2w+STE8L3R0Y29sPgorPHR0Y29sPkNvZGVib29rIChROCk8L3R0Y29sPgorPGMv
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJz
cDsyJm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzQmbmJzcDsmbmJzcDsmbmJzcDs1Jm5ic3A7Jm5i
c3A7Jm5ic3A7NiZuYnNwOyZuYnNwOyZuYnNwOzcmbmJzcDsmbmJzcDsmbmJzcDs4Jm5ic3A7Jm5i
c3A7Jm5ic3A7OSZuYnNwOyZuYnNwOzEwJm5ic3A7Jm5ic3A7MTEmbmJzcDsmbmJzcDsxMiZuYnNw
OyZuYnNwOzEzJm5ic3A7Jm5ic3A7MTQmbmJzcDsmbmJzcDsxNTwvc3Bhbng+PC9jPgorPGM+MDwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzcmbmJzcDsyMyZuYnNwOzM4Jm5ic3A7
NTQmbmJzcDs2OSZuYnNwOyZuYnNwOzg1Jm5ic3A7MTAwJm5ic3A7MTE2Jm5ic3A7MTMxJm5ic3A7
MTQ3Jm5ic3A7MTYyJm5ic3A7MTc4Jm5ic3A7MTkzJm5ic3A7MjA4Jm5ic3A7MjIzJm5ic3A7MjM5
PC9zcGFueD48L2M+Cis8Yz4xPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTMmbmJzcDsy
NSZuYnNwOzQxJm5ic3A7NTUmbmJzcDs2OSZuYnNwOyZuYnNwOzgzJm5ic3A7Jm5ic3A7OTgmbmJz
cDsxMTImbmJzcDsxMjcmbmJzcDsxNDImbmJzcDsxNTcmbmJzcDsxNzEmbmJzcDsxODcmbmJzcDsy
MDMmbmJzcDsyMjAmbmJzcDsyMzY8L3NwYW54PjwvYz4KKzxjPjI8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4xNSZuYnNwOzIxJm5ic3A7MzQmbmJzcDs1MSZuYnNwOzYxJm5ic3A7Jm5ic3A7
NzgmbmJzcDsmbmJzcDs5MiZuYnNwOzEwNiZuYnNwOzEyNiZuYnNwOzEzNiZuYnNwOzE1MiZuYnNw
OzE2NyZuYnNwOzE4NSZuYnNwOzIwNSZuYnNwOzIyNSZuYnNwOzI0MDwvc3Bhbng+PC9jPgorPGM+
MzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjEwJm5ic3A7MjEmbmJzcDszNiZuYnNwOzUw
Jm5ic3A7NjMmbmJzcDsmbmJzcDs3OSZuYnNwOyZuYnNwOzk1Jm5ic3A7MTEwJm5ic3A7MTI2Jm5i
c3A7MTQxJm5ic3A7MTU3Jm5ic3A7MTczJm5ic3A7MTg5Jm5ic3A7MjA1Jm5ic3A7MjIxJm5ic3A7
MjM3PC9zcGFueD48L2M+Cis8Yz40PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTcmbmJz
cDsyMCZuYnNwOzM3Jm5ic3A7NTEmbmJzcDs1OSZuYnNwOyZuYnNwOzc4Jm5ic3A7Jm5ic3A7ODkm
bmJzcDsxMDcmbmJzcDsxMjMmbmJzcDsxMzQmbmJzcDsxNTAmbmJzcDsxNjQmbmJzcDsxODQmbmJz
cDsyMDUmbmJzcDsyMjQmbmJzcDsyNDA8L3NwYW54PjwvYz4KKzxjPjU8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4xMCZuYnNwOzE1Jm5ic3A7MzImbmJzcDs1MSZuYnNwOzY3Jm5ic3A7Jm5i
c3A7ODEmbmJzcDsmbmJzcDs5NiZuYnNwOzExMiZuYnNwOzEyOSZuYnNwOzE0MiZuYnNwOzE1OCZu
YnNwOzE3MyZuYnNwOzE4OSZuYnNwOzIwNCZuYnNwOzIyMCZuYnNwOzIzNjwvc3Bhbng+PC9jPgor
PGM+NjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzgmbmJzcDsyMSZuYnNwOzM3
Jm5ic3A7NTEmbmJzcDs2NSZuYnNwOyZuYnNwOzc5Jm5ic3A7Jm5ic3A7OTgmbmJzcDsxMTMmbmJz
cDsxMjYmbmJzcDsxMzgmbmJzcDsxNTUmbmJzcDsxNjgmbmJzcDsxNzkmbmJzcDsxOTImbmJzcDsy
MDkmbmJzcDsyMTg8L3NwYW54PjwvYz4KKzxjPjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4xMiZuYnNwOzE1Jm5ic3A7MzQmbmJzcDs1NSZuYnNwOzYzJm5ic3A7Jm5ic3A7NzgmbmJzcDsm
bmJzcDs4NyZuYnNwOzEwOCZuYnNwOzExOCZuYnNwOzEzMSZuYnNwOzE0OCZuYnNwOzE2NyZuYnNw
OzE4NSZuYnNwOzIwMyZuYnNwOzIxOSZuYnNwOzIzNjwvc3Bhbng+PC9jPgorPGM+ODwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPjE2Jm5ic3A7MTkmbmJzcDszMiZuYnNwOzM2Jm5ic3A7NTYm
bmJzcDsmbmJzcDs3OSZuYnNwOyZuYnNwOzkxJm5ic3A7MTA4Jm5ic3A7MTE4Jm5ic3A7MTM2Jm5i
c3A7MTU0Jm5ic3A7MTcxJm5ic3A7MTg2Jm5ic3A7MjA0Jm5ic3A7MjIwJm5ic3A7MjM3PC9zcGFu
eD48L2M+Cis8Yz45PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTEmbmJzcDsyOCZuYnNw
OzQzJm5ic3A7NTgmbmJzcDs3NCZuYnNwOyZuYnNwOzg5Jm5ic3A7MTA1Jm5ic3A7MTIwJm5ic3A7
MTM1Jm5ic3A7MTUwJm5ic3A7MTY1Jm5ic3A7MTgwJm5ic3A7MTk2Jm5ic3A7MjExJm5ic3A7MjI2
Jm5ic3A7MjQxPC9zcGFueD48L2M+Cis8Yz4xMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PiZuYnNwOzYmbmJzcDsxNiZuYnNwOzMzJm5ic3A7NDYmbmJzcDs2MCZuYnNwOyZuYnNwOzc1Jm5i
c3A7Jm5ic3A7OTImbmJzcDsxMDcmbmJzcDsxMjMmbmJzcDsxMzcmbmJzcDsxNTYmbmJzcDsxNjkm
bmJzcDsxODUmbmJzcDsxOTkmbmJzcDsyMTQmbmJzcDsyMjU8L3NwYW54PjwvYz4KKzxjPjExPC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTEmbmJzcDsxOSZuYnNwOzMwJm5ic3A7NDQmbmJz
cDs1NyZuYnNwOyZuYnNwOzc0Jm5ic3A7Jm5ic3A7ODkmbmJzcDsxMDUmbmJzcDsxMjEmbmJzcDsx
MzUmbmJzcDsxNTImbmJzcDsxNjkmbmJzcDsxODYmbmJzcDsyMDImbmJzcDsyMTgmbmJzcDsyMzQ8
L3NwYW54PjwvYz4KKzxjPjEyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTImbmJzcDsx
OSZuYnNwOzI5Jm5ic3A7NDYmbmJzcDs1NyZuYnNwOyZuYnNwOzcxJm5ic3A7Jm5ic3A7ODgmbmJz
cDsxMDAmbmJzcDsxMjAmbmJzcDsxMzImbmJzcDsxNDgmbmJzcDsxNjUmbmJzcDsxODImbmJzcDsx
OTkmbmJzcDsyMTYmbmJzcDsyMzM8L3NwYW54PjwvYz4KKzxjPjEzPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+MTcmbmJzcDsyMyZuYnNwOzM1Jm5ic3A7NDYmbmJzcDs1NiZuYnNwOyZuYnNw
Ozc3Jm5ic3A7Jm5ic3A7OTImbmJzcDsxMDYmbmJzcDsxMjMmbmJzcDsxMzQmbmJzcDsxNTImbmJz
cDsxNjcmbmJzcDsxODUmbmJzcDsyMDQmbmJzcDsyMjImbmJzcDsyMzc8L3NwYW54PjwvYz4KKzxj
PjE0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTQmbmJzcDsxNyZuYnNwOzQ1Jm5ic3A7
NTMmbmJzcDs2MyZuYnNwOyZuYnNwOzc1Jm5ic3A7Jm5ic3A7ODkmbmJzcDsxMDcmbmJzcDsxMTUm
bmJzcDsxMzImbmJzcDsxNTEmbmJzcDsxNzEmbmJzcDsxODgmbmJzcDsyMDYmbmJzcDsyMjEmbmJz
cDsyNDA8L3NwYW54PjwvYz4KKzxjPjE1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5i
c3A7OSZuYnNwOzE2Jm5ic3A7MjkmbmJzcDs0MCZuYnNwOzU2Jm5ic3A7Jm5ic3A7NzEmbmJzcDsm
bmJzcDs4OCZuYnNwOzEwMyZuYnNwOzExOSZuYnNwOzEzNyZuYnNwOzE1NCZuYnNwOzE3MSZuYnNw
OzE4OSZuYnNwOzIwNSZuYnNwOzIyMiZuYnNwOzIzNzwvc3Bhbng+PC9jPgorPGM+MTY8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNiZuYnNwOzE5Jm5ic3A7MzYmbmJzcDs0OCZuYnNwOzU3
Jm5ic3A7Jm5ic3A7NzYmbmJzcDsmbmJzcDs4NyZuYnNwOzEwNSZuYnNwOzExOCZuYnNwOzEzMiZu
YnNwOzE1MCZuYnNwOzE2NyZuYnNwOzE4NSZuYnNwOzIwMiZuYnNwOzIxOCZuYnNwOzIzNjwvc3Bh
bng+PC9jPgorPGM+MTc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xMiZuYnNwOzE3Jm5i
c3A7MjkmbmJzcDs1NCZuYnNwOzcxJm5ic3A7Jm5ic3A7ODEmbmJzcDsmbmJzcDs5NCZuYnNwOzEw
NCZuYnNwOzEyNiZuYnNwOzEzNiZuYnNwOzE0OSZuYnNwOzE2NCZuYnNwOzE4MiZuYnNwOzIwMSZu
YnNwOzIyMSZuYnNwOzIzNzwvc3Bhbng+PC9jPgorPGM+MTg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4xNSZuYnNwOzI4Jm5ic3A7NDcmbmJzcDs2MiZuYnNwOzc5Jm5ic3A7Jm5ic3A7OTcm
bmJzcDsxMTUmbmJzcDsxMjkmbmJzcDsxNDImbmJzcDsxNTUmbmJzcDsxNjgmbmJzcDsxODAmbmJz
cDsxOTQmbmJzcDsyMDgmbmJzcDsyMjMmbmJzcDsyMzg8L3NwYW54PjwvYz4KKzxjPjE5PC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7OCZuYnNwOzE0Jm5ic3A7MzAmbmJzcDs0NSZu
YnNwOzYyJm5ic3A7Jm5ic3A7NzgmbmJzcDsmbmJzcDs5NCZuYnNwOzExMSZuYnNwOzEyNyZuYnNw
OzE0MyZuYnNwOzE1OSZuYnNwOzE3NSZuYnNwOzE5MiZuYnNwOzIwNyZuYnNwOzIyMyZuYnNwOzIz
OTwvc3Bhbng+PC9jPgorPGM+MjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNyZuYnNw
OzMwJm5ic3A7NDkmbmJzcDs2MiZuYnNwOzc5Jm5ic3A7Jm5ic3A7OTImbmJzcDsxMDcmbmJzcDsx
MTkmbmJzcDsxMzImbmJzcDsxNDUmbmJzcDsxNjAmbmJzcDsxNzQmbmJzcDsxOTAmbmJzcDsyMDQm
bmJzcDsyMjAmbmJzcDsyMzU8L3NwYW54PjwvYz4KKzxjPjIxPC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+MTQmbmJzcDsxOSZuYnNwOzM2Jm5ic3A7NDUmbmJzcDs2MSZuYnNwOyZuYnNwOzc2
Jm5ic3A7Jm5ic3A7OTEmbmJzcDsxMDgmbmJzcDsxMjEmbmJzcDsxMzgmbmJzcDsxNTQmbmJzcDsx
NzImbmJzcDsxODkmbmJzcDsyMDUmbmJzcDsyMjImbmJzcDsyMzg8L3NwYW54PjwvYz4KKzxjPjIy
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTImbmJzcDsxOCZuYnNwOzMxJm5ic3A7NDUm
bmJzcDs2MCZuYnNwOyZuYnNwOzc2Jm5ic3A7Jm5ic3A7OTEmbmJzcDsxMDcmbmJzcDsxMjMmbmJz
cDsxMzgmbmJzcDsxNTQmbmJzcDsxNzEmbmJzcDsxODcmbmJzcDsyMDQmbmJzcDsyMjEmbmJzcDsy
MzY8L3NwYW54PjwvYz4KKzxjPjIzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTMmbmJz
cDsxNyZuYnNwOzMxJm5ic3A7NDMmbmJzcDs1MyZuYnNwOyZuYnNwOzcwJm5ic3A7Jm5ic3A7ODMm
bmJzcDsxMDMmbmJzcDsxMTQmbmJzcDsxMzEmbmJzcDsxNDkmbmJzcDsxNjcmbmJzcDsxODUmbmJz
cDsyMDMmbmJzcDsyMjAmbmJzcDsyMzc8L3NwYW54PjwvYz4KKzxjPjI0PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+MTcmbmJzcDsyMiZuYnNwOzM1Jm5ic3A7NDImbmJzcDs1OCZuYnNwOyZu
YnNwOzc4Jm5ic3A7Jm5ic3A7OTMmbmJzcDsxMTAmbmJzcDsxMjUmbmJzcDsxMzkmbmJzcDsxNTUm
bmJzcDsxNzAmbmJzcDsxODgmbmJzcDsyMDYmbmJzcDsyMjQmbmJzcDsyNDA8L3NwYW54PjwvYz4K
KzxjPjI1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7OCZuYnNwOzE1Jm5ic3A7
MzQmbmJzcDs1MCZuYnNwOzY3Jm5ic3A7Jm5ic3A7ODMmbmJzcDsmbmJzcDs5OSZuYnNwOzExNSZu
YnNwOzEzMSZuYnNwOzE0NiZuYnNwOzE2MiZuYnNwOzE3OCZuYnNwOzE5MyZuYnNwOzIwOSZuYnNw
OzIyNCZuYnNwOzIzOTwvc3Bhbng+PC9jPgorPGM+MjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4xMyZuYnNwOzE2Jm5ic3A7NDEmbmJzcDs2NiZuYnNwOzczJm5ic3A7Jm5ic3A7ODYmbmJz
cDsmbmJzcDs5NSZuYnNwOzExMSZuYnNwOzEyOCZuYnNwOzEzNyZuYnNwOzE1MCZuYnNwOzE2MyZu
YnNwOzE4MyZuYnNwOzIwNiZuYnNwOzIyNSZuYnNwOzI0MTwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNyZuYnNwOzI1Jm5ic3A7MzcmbmJzcDs1MiZuYnNw
OzYzJm5ic3A7Jm5ic3A7NzUmbmJzcDsmbmJzcDs5MiZuYnNwOzEwMiZuYnNwOzExOSZuYnNwOzEz
MiZuYnNwOzE0NCZuYnNwOzE2MCZuYnNwOzE3NSZuYnNwOzE5MSZuYnNwOzIxMiZuYnNwOzIzMTwv
c3Bhbng+PC9jPgorPGM+Mjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xOSZuYnNwOzMx
Jm5ic3A7NDkmbmJzcDs2NSZuYnNwOzgzJm5ic3A7MTAwJm5ic3A7MTE3Jm5ic3A7MTMzJm5ic3A7
MTQ3Jm5ic3A7MTYxJm5ic3A7MTc0Jm5ic3A7MTg3Jm5ic3A7MjAwJm5ic3A7MjEzJm5ic3A7MjI3
Jm5ic3A7MjQyPC9zcGFueD48L2M+Cis8Yz4yOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PjE4Jm5ic3A7MzEmbmJzcDs1MiZuYnNwOzY4Jm5ic3A7ODgmbmJzcDsxMDMmbmJzcDsxMTcmbmJz
cDsxMjYmbmJzcDsxMzgmbmJzcDsxNDkmbmJzcDsxNjMmbmJzcDsxNzcmbmJzcDsxOTImbmJzcDsy
MDcmbmJzcDsyMjMmbmJzcDsyMzk8L3NwYW54PjwvYz4KKzxjPjMwPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+MTYmbmJzcDsyOSZuYnNwOzQ3Jm5ic3A7NjEmbmJzcDs3NiZuYnNwOyZuYnNw
OzkwJm5ic3A7MTA2Jm5ic3A7MTE5Jm5ic3A7MTMzJm5ic3A7MTQ3Jm5ic3A7MTYxJm5ic3A7MTc2
Jm5ic3A7MTkzJm5ic3A7MjA5Jm5ic3A7MjI0Jm5ic3A7MjQwPC9zcGFueD48L2M+Cis8Yz4zMTwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE1Jm5ic3A7MjEmbmJzcDszNSZuYnNwOzUwJm5i
c3A7NjEmbmJzcDsmbmJzcDs3MyZuYnNwOyZuYnNwOzg2Jm5ic3A7Jm5ic3A7OTcmbmJzcDsxMTAm
bmJzcDsxMTkmbmJzcDsxMjkmbmJzcDsxNDEmbmJzcDsxNzUmbmJzcDsxOTgmbmJzcDsyMTgmbmJz
cDsyMzc8L3NwYW54PjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK0dpdmVuIHRoZSBzdGFnZS0x
IGNvZGVib29rIGVudHJ5IGNiMV9ROFtdLCB0aGUgc3RhZ2UtMiByZXNpZHVhbCByZXNfUTEwW10s
IGFuZAorIHRoZWlyIGNvcnJlc3BvbmRpbmcgd2VpZ2h0cywgd19ROVtdLCB0aGUgcmVjb25zdHJ1
Y3RlZCBub3JtYWxpemVkIExTRgorIGNvZWZmaWNpZW50cyBhcmUKKzxmaWd1cmUgYWxpZ249ImNl
bnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK05MU0ZfUTE1W2tdID0g
Y2xhbXAoMCwKKyAgICAgICAgICAgICAgIChjYjFfUThba108PDcpICsgKHJlc19RMTBba108PDE0
KS93X1E5W2tdLCAzMjc2NykgLAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cisgd2hlcmUgdGhl
IGRpdmlzaW9uIGlzIGludGVnZXIgZGl2aXNpb24uCitIb3dldmVyLCBub3RoaW5nIGluIGVpdGhl
ciB0aGUgcmVjb25zdHJ1Y3Rpb24gcHJvY2VzcyBvciB0aGUKKyBxdWFudGl6YXRpb24gcHJvY2Vz
cyBpbiB0aGUgZW5jb2RlciB0aHVzIGZhciBndWFyYW50ZWVzIHRoYXQgdGhlIGNvZWZmaWNpZW50
cworIGFyZSBtb25vdG9uaWNhbGx5IGluY3JlYXNpbmcgYW5kIHNlcGFyYXRlZCB3ZWxsIGVub3Vn
aCB0byBlbnN1cmUgYSBzdGFibGUKKyBmaWx0ZXIgPHhyZWYgdGFyZ2V0PSJLYWJhbDg2Ii8+Lgor
V2hlbiB1c2luZyB0aGUgcmVmZXJlbmNlIGVuY29kZXIsIHJvdWdobHkgMiUgb2YgZnJhbWVzIHZp
b2xhdGUgdGhpcyBjb25zdHJhaW50LgorVGhlIG5leHQgc2VjdGlvbiBkZXNjcmliZXMgYSBzdGFi
aWxpemF0aW9uIHByb2NlZHVyZSB1c2VkIHRvIG1ha2UgdGhlc2UKKyBndWFyYW50ZWVzLgorPC90
PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19ubHNmX3N0YWJpbGl6YXRp
b24iIHRpdGxlPSJOb3JtYWxpemVkIExTRiBTdGFiaWxpemF0aW9uIj4KKzx0PgorVGhlIG5vcm1h
bGl6ZWQgTFNGIHN0YWJpbGl6YXRpb24gcHJvY2VkdXJlIGlzIGltcGxlbWVudGVkIGluCisgc2ls
a19OTFNGX3N0YWJpbGl6ZSgpIChOTFNGX3N0YWJpbGl6ZS5jKS4KK1RoaXMgcHJvY2VzcyBlbnN1
cmVzIHRoYXQgY29uc2VjdXRpdmUgdmFsdWVzIG9mIHRoZSBub3JtYWxpemVkIExTRgorIGNvZWZm
aWNpZW50cywgTkxTRl9RMTVbXSwgYXJlIHNwYWNlZCBzb21lIG1pbmltdW0gZGlzdGFuY2UgYXBh
cnQKKyAocHJlZGV0ZXJtaW5lZCB0byBiZSB0aGUgMC4wMSBwZXJjZW50aWxlIG9mIGEgbGFyZ2Ug
dHJhaW5pbmcgc2V0KS4KKzx4cmVmIHRhcmdldD0ic2lsa19ubHNmX21pbl9zcGFjaW5nIi8+IGdp
dmVzIHRoZSBtaW5pbXVtIHNwYWNpbmdzIGZvciBOQiBhbmQgTUIKKyBhbmQgdGhvc2UgZm9yIFdC
LCB3aGVyZSByb3cgayBpcyB0aGUgbWluaW11bSBhbGxvd2VkIHZhbHVlIG9mCisgTkxTRl9RW2td
LU5MU0ZfUVtrLTFdLgorRm9yIHRoZSBwdXJwb3NlcyBvZiBjb21wdXRpbmcgdGhpcyBzcGFjaW5n
IGZvciB0aGUgZmlyc3QgYW5kIGxhc3QgY29lZmZpY2llbnQsCisgTkxTRl9RMTVbLTFdIGlzIHRh
a2VuIHRvIGJlIDAsIGFuZCBOTFNGX1ExNVtkX0xQQ10gaXMgdGFrZW4gdG8gYmUgMzI3NjguCis8
L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25sc2ZfbWluX3NwYWNpbmciCisgICAgICAg
ICAgIHRpdGxlPSJNaW5pbXVtIFNwYWNpbmcgZm9yIE5vcm1hbGl6ZWQgTFNGIENvZWZmaWNpZW50
cyI+Cis8dHRjb2w+Q29lZmZpY2llbnQ8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+TkIg
YW5kIE1CPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPldCPC90dGNvbD4KKyA8Yz4wPC9j
PiA8Yz4yNTA8L2M+IDxjPjEwMDwvYz4KKyA8Yz4xPC9jPiAgIDxjPjM8L2M+ICAgPGM+MzwvYz4K
KyA8Yz4yPC9jPiAgIDxjPjY8L2M+ICA8Yz40MDwvYz4KKyA8Yz4zPC9jPiAgIDxjPjM8L2M+ICAg
PGM+MzwvYz4KKyA8Yz40PC9jPiAgIDxjPjM8L2M+ICAgPGM+MzwvYz4KKyA8Yz41PC9jPiAgIDxj
PjM8L2M+ICAgPGM+MzwvYz4KKyA8Yz42PC9jPiAgIDxjPjQ8L2M+ICAgPGM+NTwvYz4KKyA8Yz43
PC9jPiAgIDxjPjM8L2M+ICA8Yz4xNDwvYz4KKyA8Yz44PC9jPiAgIDxjPjM8L2M+ICA8Yz4xNDwv
Yz4KKyA8Yz45PC9jPiAgIDxjPjM8L2M+ICA8Yz4xMDwvYz4KKzxjPjEwPC9jPiA8Yz40NjE8L2M+
ICA8Yz4xMTwvYz4KKzxjPjExPC9jPiAgICAgICA8Yy8+ICAgPGM+MzwvYz4KKzxjPjEyPC9jPiAg
ICAgICA8Yy8+ICAgPGM+ODwvYz4KKzxjPjEzPC9jPiAgICAgICA8Yy8+ICAgPGM+OTwvYz4KKzxj
PjE0PC9jPiAgICAgICA8Yy8+ICAgPGM+NzwvYz4KKzxjPjE1PC9jPiAgICAgICA8Yy8+ICAgPGM+
MzwvYz4KKzxjPjE2PC9jPiAgICAgICA8Yy8+IDxjPjM0NzwvYz4KKzwvdGV4dHRhYmxlPgorCis8
dD4KK1RoZSBwcm9jZWR1cmUgc3RhcnRzIG9mZiBieSB0cnlpbmcgdG8gbWFrZSBzbWFsbCBhZGp1
c3RtZW50cyB3aGljaCBhdHRlbXB0IHRvCisgbWluaW1pemUgdGhlIGFtb3VudCBvZiBkaXN0b3J0
aW9uIGludHJvZHVjZWQuCitBZnRlciAyMCBzdWNoIGFkanVzdG1lbnRzLCBpdCBmYWxscyBiYWNr
IHRvIGEgbW9yZSBkaXJlY3QgbWV0aG9kIHdoaWNoCisgZ3VhcmFudGVlcyB0aGUgY29uc3RyYWlu
dHMgYXJlIGVuZm9yY2VkIGJ1dCBtYXkgcmVxdWlyZSBsYXJnZSBhZGp1c3RtZW50cy4KKzwvdD4K
Kzx0PgorTGV0IE5EZWx0YU1pbl9RMTVba10gYmUgdGhlIG1pbmltdW0gcmVxdWlyZWQgc3BhY2lu
ZyBmb3IgdGhlIGN1cnJlbnQgYXVkaW8KKyBiYW5kd2lkdGggZnJvbSA8eHJlZiB0YXJnZXQ9InNp
bGtfbmxzZl9taW5fc3BhY2luZyIvPi4KK0ZpcnN0LCB0aGUgcHJvY2VkdXJlIGZpbmRzIHRoZSBp
bmRleCBpIHdoZXJlCisgTkxTRl9RMTVbaV0mbmJzcDstJm5ic3A7TkxTRl9RMTVbaS0xXSZuYnNw
Oy0mbmJzcDtORGVsdGFNaW5fUTE1W2ldIGlzIHRoZQorIHNtYWxsZXN0LCBicmVha2luZyB0aWVz
IGJ5IHVzaW5nIHRoZSBsb3dlciB2YWx1ZSBvZiBpLgorSWYgdGhpcyB2YWx1ZSBpcyBub24tbmVn
YXRpdmUsIHRoZW4gdGhlIHN0YWJpbGl6YXRpb24gc3RvcHM7IHRoZSBjb2VmZmljaWVudHMKKyBz
YXRpc2Z5IGFsbCB0aGUgY29uc3RyYWludHMuCitPdGhlcndpc2UsIGlmIGkmbmJzcDs9PSZuYnNw
OzAsIGl0IHNldHMgTkxTRl9RMTVbMF0gdG8gTkRlbHRhTWluX1ExNVswXSwgYW5kIGlmCisgaSZu
YnNwOz09Jm5ic3A7ZF9MUEMsIGl0IHNldHMgTkxTRl9RMTVbZF9MUEMtMV0gdG8KKyAoMzI3Njgm
bmJzcDstJm5ic3A7TkRlbHRhTWluX1ExNVtkX0xQQ10pLgorRm9yIGFsbCBvdGhlciB2YWx1ZXMg
b2YgaSwgYm90aCBOTFNGX1ExNVtpLTFdIGFuZCBOTFNGX1ExNVtpXSBhcmUgdXBkYXRlZCBhcwor
IGZvbGxvd3M6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRl
ciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
LTEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fCisgbWluX2Nl
bnRlcl9RMTUgPSAoTkRlbHRhTWluX1ExNVtpXT4+MSkgKyBcICBORGVsdGFNaW5fUTE1W2tdCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvXworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaz0wCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZF9MUEMKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgX18KKyBtYXhfY2VudGVyX1ExNSA9IDMyNzY4IC0g
KE5EZWx0YU1pbl9RMTVbaV0+PjEpIC0gXCAgTkRlbHRhTWluX1ExNVtrXQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvXworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGs9aSsxCitjZW50ZXJfZnJlcV9RMTUg
PSBjbGFtcChtaW5fY2VudGVyX1ExNVtpXSwKKyAgICAgICAgICAgICAgICAgICAgICAgIChOTFNG
X1ExNVtpLTFdICsgTkxTRl9RMTVbaV0gKyAxKT4+MSwKKyAgICAgICAgICAgICAgICAgICAgICAg
IG1heF9jZW50ZXJfUTE1W2ldKQorCisgTkxTRl9RMTVbaS0xXSA9IGNlbnRlcl9mcmVxX1ExNSAt
IChORGVsdGFNaW5fUTE1W2ldPj4xKQorCisgICBOTFNGX1ExNVtpXSA9IE5MU0ZfUTE1W2ktMV0g
KyBORGVsdGFNaW5fUTE1W2ldIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlbiB0aGUg
cHJvY2VkdXJlIHJlcGVhdHMgYWdhaW4sIHVudGlsIGl0IGhhcyBlaXRoZXIgZXhlY3V0ZWQgMjAg
dGltZXMgb3IKKyBoYXMgc3RvcHBlZCBiZWNhdXNlIHRoZSBjb2VmZmljaWVudHMgc2F0aXNmeSBh
bGwgdGhlIGNvbnN0cmFpbnRzLgorPC90PgorPHQ+CitBZnRlciB0aGUgMjB0aCByZXBldGl0aW9u
IG9mIHRoZSBhYm92ZSBwcm9jZWR1cmUsIHRoZSBmb2xsb3dpbmcgZmFsbGJhY2sKKyBwcm9jZWR1
cmUgZXhlY3V0ZXMgb25jZS4KK0ZpcnN0LCB0aGUgdmFsdWVzIG9mIE5MU0ZfUTE1W2tdIGZvciAw
Jm5ic3A7Jmx0Oz0mbmJzcDtrJm5ic3A7Jmx0OyZuYnNwO2RfTFBDCisgYXJlIHNvcnRlZCBpbiBh
c2NlbmRpbmcgb3JkZXIuCitUaGVuIGZvciBlYWNoIHZhbHVlIG9mIGsgZnJvbSAwIHRvIGRfTFBD
LTEsIE5MU0ZfUTE1W2tdIGlzIHNldCB0bworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworbWF4KE5MU0ZfUTE1W2tdLCBOTFNGX1ExNVtr
LTFdICsgTkRlbHRhTWluX1ExNVtrXSkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitOZXh0
LCBmb3IgZWFjaCB2YWx1ZSBvZiBrIGZyb20gZF9MUEMtMSBkb3duIHRvIDAsIE5MU0ZfUTE1W2td
IGlzIHNldCB0bworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50
ZXIiPjwhW0NEQVRBWworbWluKE5MU0ZfUTE1W2tdLCBOTFNGX1ExNVtrKzFdIC0gTkRlbHRhTWlu
X1ExNVtrKzFdKSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKworPC9zZWN0aW9u
PgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbmxzZl9pbnRlcnBvbGF0aW9uIiB0aXRsZT0iTm9y
bWFsaXplZCBMU0YgSW50ZXJwb2xhdGlvbiI+Cis8dD4KK0ZvciAyMCZuYnNwO21zIFNJTEsgZnJh
bWVzLCB0aGUgZmlyc3QgaGFsZiBvZiB0aGUgZnJhbWUgKGkuZS4sIHRoZSBmaXJzdCB0d28KKyBz
dWJmcmFtZXMpIG1heSB1c2Ugbm9ybWFsaXplZCBMU0YgY29lZmZpY2llbnRzIHRoYXQgYXJlIGlu
dGVycG9sYXRlZCBiZXR3ZWVuCisgdGhlIGRlY29kZWQgTFNGcyBmb3IgdGhlIG1vc3QgcmVjZW50
IGNvZGVkIGZyYW1lIChpbiB0aGUgc2FtZSBjaGFubmVsKSBhbmQgdGhlCisgY3VycmVudCBmcmFt
ZS4KK0EgUTIgaW50ZXJwb2xhdGlvbiBmYWN0b3IgZm9sbG93cyB0aGUgTFNGIGNvZWZmaWNpZW50
IGluZGljZXMgaW4gdGhlIGJpdHN0cmVhbSwKKyB3aGljaCBpcyBkZWNvZGVkIHVzaW5nIHRoZSBQ
REYgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfaW50ZXJwX3BkZiIvPi4KK1RoaXMgaGFwcGVu
cyBpbiBzaWxrX2RlY29kZV9pbmRpY2VzKCkgKGRlY29kZV9pbmRpY2VzLmMpLgorQWZ0ZXIgZWl0
aGVyCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5BbiB1bmNvZGVkIHJlZ3VsYXIgU0lMSyBm
cmFtZSBpbiB0aGUgc2lkZSBjaGFubmVsLCBvcjwvdD4KKzx0PkEgZGVjb2RlciByZXNldCAoc2Vl
IDx4cmVmIHRhcmdldD0iZGVjb2Rlci1yZXNldCIvPiksPC90PgorPC9saXN0PgorIHRoZSBkZWNv
ZGVyIHN0aWxsIGRlY29kZXMgdGhpcyBmYWN0b3IsIGJ1dCBpZ25vcmVzIGl0cyB2YWx1ZSBhbmQg
YWx3YXlzIHVzZXMKKyA0IGluc3RlYWQuCitGb3IgMTAmbmJzcDttcyBTSUxLIGZyYW1lcywgdGhp
cyBmYWN0b3IgaXMgbm90IHN0b3JlZCBhdCBhbGwuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9y
PSJzaWxrX25sc2ZfaW50ZXJwX3BkZiIKKyAgICAgICAgICAgdGl0bGU9IlBERiBmb3IgTm9ybWFs
aXplZCBMU0YgSW50ZXJwb2xhdGlvbiBJbmRleCI+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPnsx
MywgMjIsIDI5LCAxMSwgMTgxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitMZXQgbjJf
UTE1W2tdIGJlIHRoZSBub3JtYWxpemVkIExTRiBjb2VmZmljaWVudHMgZGVjb2RlZCBieSB0aGUg
cHJvY2VkdXJlIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZzIi8+LCBuMF9RMTVba10gYmUg
dGhlIExTRiBjb2VmZmljaWVudHMKKyBkZWNvZGVkIGZvciB0aGUgcHJpb3IgZnJhbWUsIGFuZCB3
X1EyIGJlIHRoZSBpbnRlcnBvbGF0aW9uIGZhY3Rvci4KK1RoZW4gdGhlIG5vcm1hbGl6ZWQgTFNG
IGNvZWZmaWNpZW50cyB1c2VkIGZvciB0aGUgZmlyc3QgaGFsZiBvZiBhIDIwJm5ic3A7bXMKKyBm
cmFtZSwgbjFfUTE1W2tdLCBhcmUKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBh
bGlnbj0iY2VudGVyIj48IVtDREFUQVsKK24xX1ExNVtrXSA9IG4wX1ExNVtrXSArICh3X1EyKihu
Ml9RMTVba10gLSBuMF9RMTVba10pID4+IDIpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgor
VGhpcyBpbnRlcnBvbGF0aW9uIGlzIHBlcmZvcm1lZCBpbiBzaWxrX2RlY29kZV9wYXJhbWV0ZXJz
KCkKKyAoZGVjb2RlX3BhcmFtZXRlcnMuYykuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9u
IGFuY2hvcj0ic2lsa19ubHNmMmxwYyIKKyB0aXRsZT0iQ29udmVydGluZyBOb3JtYWxpemVkIExT
RnMgdG8gTFBDIENvZWZmaWNpZW50cyI+Cis8dD4KK0FueSBMUEMgZmlsdGVyIEEoeikgY2FuIGJl
IHNwbGl0IGludG8gYSBzeW1tZXRyaWMgcGFydCBQKHopIGFuZCBhbgorIGFudGktc3ltbWV0cmlj
IHBhcnQgUSh6KSBzdWNoIHRoYXQKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBh
bGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICBkX0xQQworICAgICAgICAgICBfXyAg
ICAgICAgIC1rICAgMQorQSh6KSA9IDEgLSBcICBhW2tdICogeiAgID0gLSAqIChQKHopICsgUSh6
KSkKKyAgICAgICAgICAgL18gICAgICAgICAgICAgIDIKKyAgICAgICAgICAgaz0xCitdXT48L2Fy
dHdvcms+Cis8L2ZpZ3VyZT4KK3dpdGgKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29y
ayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgIC1kX0xQQy0xICAgICAg
LTEKK1AoeikgPSBBKHopICsgeiAgICAgICAgICogQSh6ICApCisKKyAgICAgICAgICAgICAgIC1k
X0xQQy0xICAgICAgLTEKK1EoeikgPSBBKHopIC0geiAgICAgICAgICogQSh6ICApIC4KK11dPjwv
YXJ0d29yaz4KKzwvZmlndXJlPgorVGhlIGV2ZW4gbm9ybWFsaXplZCBMU0YgY29lZmZpY2llbnRz
IGNvcnJlc3BvbmQgdG8gYSBwYWlyIG9mIGNvbmp1Z2F0ZSByb290cyBvZgorIFAoeiksIHdoaWxl
IHRoZSBvZGQgY29lZmZpY2llbnRzIGNvcnJlc3BvbmQgdG8gYSBwYWlyIG9mIGNvbmp1Z2F0ZSBy
b290cyBvZgorIFEoeiksIGFsbCBvZiB3aGljaCBsaWUgb24gdGhlIHVuaXQgY2lyY2xlLgorSW4g
YWRkaXRpb24sIFAoeikgaGFzIGEgcm9vdCBhdCBwaSBhbmQgUSh6KSBoYXMgYSByb290IGF0IDAu
CitUaHVzLCB0aGV5IG1heSBiZSByZWNvbnN0cnVjdGVkIG1hdGhlbWF0aWNhbGx5IGZyb20gYSBz
ZXQgb2Ygbm9ybWFsaXplZCBMU0YKKyBjb2VmZmljaWVudHMsIG5ba10sIGFzCis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAg
ICAgICAgICAgIGRfTFBDLzItMQorICAgICAgICAgICAgIC0xICAgICBfX18gICAgICAgICAgICAg
ICAgICAgICAgICAtMSAgICAtMgorUCh6KSA9ICgxICsgeiAgKSAqICB8IHwgICgxIC0gMipjb3Mo
cGkqblsyKmtdKSp6ICArIHogICkKKyAgICAgICAgICAgICAgICAgICAgaz0wCisKKyAgICAgICAg
ICAgICAgICAgZF9MUEMvMi0xCisgICAgICAgICAgICAgLTEgICAgIF9fXyAgICAgICAgICAgICAg
ICAgICAgICAgICAgLTEgICAgLTIKK1EoeikgPSAoMSAtIHogICkgKiAgfCB8ICAoMSAtIDIqY29z
KHBpKm5bMiprKzFdKSp6ICArIHogICkKKyAgICAgICAgICAgICAgICAgICAgaz0wCitdXT48L2Fy
dHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKzx0PgorSG93ZXZlciwgU0lMSyBwZXJmb3JtcyB0aGlz
IHJlY29uc3RydWN0aW9uIHVzaW5nIGEgZml4ZWQtcG9pbnQgYXBwcm94aW1hdGlvbiBzbworIHRo
YXQgYWxsIGRlY29kZXJzIGNhbiByZXByb2R1Y2UgaXQgaW4gYSBiaXQtZXhhY3QgbWFubmVyIHRv
IGF2b2lkIHByZWRpY3Rpb24KKyBkcmlmdC4KK1RoZSBmdW5jdGlvbiBzaWxrX05MU0YyQSgpIChO
TFNGMkEuYykgaW1wbGVtZW50cyB0aGlzIHByb2NlZHVyZS4KKzwvdD4KKzx0PgorVG8gc3RhcnQs
IGl0IGFwcHJveGltYXRlcyBjb3MocGkqbltrXSkgdXNpbmcgYSB0YWJsZSBsb29rdXAgd2l0aCBs
aW5lYXIKKyBpbnRlcnBvbGF0aW9uLgorVGhlIGVuY29kZXIgU0hPVUxEIHVzZSB0aGUgaW52ZXJz
ZSBvZiB0aGlzIHBpZWNld2lzZSBsaW5lYXIgYXBwcm94aW1hdGlvbiwKKyByYXRoZXIgdGhhbiB0
aGUgdHJ1ZSBpbnZlcnNlIG9mIHRoZSBjb3NpbmUgZnVuY3Rpb24sIHdoZW4gZGVyaXZpbmcgdGhl
Cisgbm9ybWFsaXplZCBMU0YgY29lZmZpY2llbnRzLgorVGhlc2UgdmFsdWVzIGFyZSBhbHNvIHJl
LW9yZGVyZWQgdG8gaW1wcm92ZSBudW1lcmljYWwgYWNjdXJhY3kgd2hlbgorIGNvbnN0cnVjdGlu
ZyB0aGUgTFBDIHBvbHlub21pYWxzLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19u
bHNmX29yZGVyaW5ncyIKKyAgICAgICAgICAgdGl0bGU9IkxTRiBPcmRlcmluZyBmb3IgUG9seW5v
bWlhbCBFdmFsdWF0aW9uIj4KKzx0dGNvbD5Db2VmZmljaWVudDwvdHRjb2w+Cis8dHRjb2wgYWxp
Z249InJpZ2h0Ij5OQiBhbmQgTUI8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+V0I8L3R0
Y29sPgorIDxjPjA8L2M+ICA8Yz4wPC9jPiAgPGM+MDwvYz4KKyA8Yz4xPC9jPiAgPGM+OTwvYz4g
PGM+MTU8L2M+CisgPGM+MjwvYz4gIDxjPjY8L2M+ICA8Yz44PC9jPgorIDxjPjM8L2M+ICA8Yz4z
PC9jPiAgPGM+NzwvYz4KKyA8Yz40PC9jPiAgPGM+NDwvYz4gIDxjPjQ8L2M+CisgPGM+NTwvYz4g
IDxjPjU8L2M+IDxjPjExPC9jPgorIDxjPjY8L2M+ICA8Yz44PC9jPiA8Yz4xMjwvYz4KKyA8Yz43
PC9jPiAgPGM+MTwvYz4gIDxjPjM8L2M+CisgPGM+ODwvYz4gIDxjPjI8L2M+ICA8Yz4yPC9jPgor
IDxjPjk8L2M+ICA8Yz43PC9jPiA8Yz4xMzwvYz4KKzxjPjEwPC9jPiAgICAgIDxjLz4gPGM+MTA8
L2M+Cis8Yz4xMTwvYz4gICAgICA8Yy8+ICA8Yz41PC9jPgorPGM+MTI8L2M+ICAgICAgPGMvPiAg
PGM+NjwvYz4KKzxjPjEzPC9jPiAgICAgIDxjLz4gIDxjPjk8L2M+Cis8Yz4xNDwvYz4gICAgICA8
Yy8+IDxjPjE0PC9jPgorPGM+MTU8L2M+ICAgICAgPGMvPiAgPGM+MTwvYz4KKzwvdGV4dHRhYmxl
PgorCis8dD4KK1RoZSB0b3AgNyBiaXRzIG9mIGVhY2ggbm9ybWFsaXplZCBMU0YgY29lZmZpY2ll
bnQgaW5kZXggYSB2YWx1ZSBpbiB0aGUgdGFibGUsCisgYW5kIHRoZSBuZXh0IDggYml0cyBpbnRl
cnBvbGF0ZSBiZXR3ZWVuIGl0IGFuZCB0aGUgbmV4dCB2YWx1ZS4KK0xldCBpJm5ic3A7PSZuYnNw
OyhuW2tdJm5ic3A7Jmd0OyZndDsmbmJzcDs4KSBiZSB0aGUgaW50ZWdlciBpbmRleCBhbmQKKyBm
Jm5ic3A7PSZuYnNwOyhuW2tdJm5ic3A7JmFtcDsmbmJzcDsyNTUpIGJlIHRoZSBmcmFjdGlvbmFs
IHBhcnQgb2YgYSBnaXZlbgorIGNvZWZmaWNpZW50LgorVGhlbiB0aGUgcmUtb3JkZXJlZCwgYXBw
cm94aW1hdGVkIGNvc2luZSwgY19RMTdbb3JkZXJpbmdba11dLCBpcworPGZpZ3VyZSBhbGlnbj0i
Y2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworY19RMTdbb3JkZXJp
bmdba11dID0gKGNvc19RMTJbaV0qMjU2CisgICAgICAgICAgICAgICAgICAgICAgKyAoY29zX1Ex
MltpKzFdLWNvc19RMTJbaV0pKmYgKyA0KSA+PiAzICwKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorIHdoZXJlIG9yZGVyaW5nW2tdIGlzIHRoZSBrJ3RoIGVudHJ5IG9mIHRoZSBjb2x1bW4gb2YK
KyA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9vcmRlcmluZ3MiLz4gY29ycmVzcG9uZGluZyB0byB0
aGUgY3VycmVudCBhdWRpbworIGJhbmR3aWR0aCBhbmQgY29zX1ExMltpXSBpcyB0aGUgaSd0aCBl
bnRyeSBvZiA8eHJlZiB0YXJnZXQ9InNpbGtfY29zX3RhYmxlIi8+LgorPC90PgorCis8dGV4dHRh
YmxlIGFuY2hvcj0ic2lsa19jb3NfdGFibGUiCisgICAgICAgICAgIHRpdGxlPSJRMTIgQ29zaW5l
IFRhYmxlIGZvciBMU0YgQ29udmVyc2lvbiI+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5pPC90dGNv
bD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPiswPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQi
PisxPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPisyPC90dGNvbD4KKzx0dGNvbCBhbGln
bj0icmlnaHQiPiszPC90dGNvbD4KKzxjPjA8L2M+CisgPGM+NDA5NjwvYz4gPGM+NDA5NTwvYz4g
PGM+NDA5MTwvYz4gPGM+NDA4NTwvYz4KKzxjPjQ8L2M+CisgPGM+NDA3NjwvYz4gPGM+NDA2NTwv
Yz4gPGM+NDA1MjwvYz4gPGM+NDAzNjwvYz4KKzxjPjg8L2M+CisgPGM+NDAxNzwvYz4gPGM+Mzk5
NzwvYz4gPGM+Mzk3MzwvYz4gPGM+Mzk0ODwvYz4KKzxjPjEyPC9jPgorIDxjPjM5MjA8L2M+IDxj
PjM4ODk8L2M+IDxjPjM4NTc8L2M+IDxjPjM4MjI8L2M+Cis8Yz4xNjwvYz4KKyA8Yz4zNzg0PC9j
PiA8Yz4zNzQ1PC9jPiA8Yz4zNzAzPC9jPiA8Yz4zNjU5PC9jPgorPGM+MjA8L2M+CisgPGM+MzYx
MzwvYz4gPGM+MzU2NDwvYz4gPGM+MzUxMzwvYz4gPGM+MzQ2MTwvYz4KKzxjPjI0PC9jPgorIDxj
PjM0MDY8L2M+IDxjPjMzNDk8L2M+IDxjPjMyOTA8L2M+IDxjPjMyMjk8L2M+Cis8Yz4yODwvYz4K
KyA8Yz4zMTY2PC9jPiA8Yz4zMTAyPC9jPiA8Yz4zMDM1PC9jPiA8Yz4yOTY3PC9jPgorPGM+MzI8
L2M+CisgPGM+Mjg5NjwvYz4gPGM+MjgyNDwvYz4gPGM+Mjc1MTwvYz4gPGM+MjY3NjwvYz4KKzxj
PjM2PC9jPgorIDxjPjI1OTk8L2M+IDxjPjI1MjA8L2M+IDxjPjI0NDA8L2M+IDxjPjIzNTk8L2M+
Cis8Yz40MDwvYz4KKyA8Yz4yMjc2PC9jPiA8Yz4yMTkxPC9jPiA8Yz4yMTA2PC9jPiA8Yz4yMDE5
PC9jPgorPGM+NDQ8L2M+CisgPGM+MTkzMTwvYz4gPGM+MTg0MjwvYz4gPGM+MTc1MTwvYz4gPGM+
MTY2MDwvYz4KKzxjPjQ4PC9jPgorIDxjPjE1Njg8L2M+IDxjPjE0NzQ8L2M+IDxjPjEzODA8L2M+
IDxjPjEyODU8L2M+Cis8Yz41MjwvYz4KKyA8Yz4xMTg5PC9jPiA8Yz4xMDkzPC9jPiAgPGM+OTk1
PC9jPiAgPGM+ODk3PC9jPgorPGM+NTY8L2M+CisgIDxjPjc5OTwvYz4gIDxjPjcwMDwvYz4gIDxj
PjYwMTwvYz4gIDxjPjUwMTwvYz4KKzxjPjYwPC9jPgorICA8Yz40MDE8L2M+ICA8Yz4zMDE8L2M+
ICA8Yz4yMDE8L2M+ICA8Yz4xMDE8L2M+Cis8Yz42NDwvYz4KKyAgICA8Yz4wPC9jPiA8Yz4tMTAx
PC9jPiA8Yz4tMjAxPC9jPiA8Yz4tMzAxPC9jPgorPGM+Njg8L2M+CisgPGM+LTQwMTwvYz4gPGM+
LTUwMTwvYz4gPGM+LTYwMTwvYz4gPGM+LTcwMDwvYz4KKzxjPjcyPC9jPgorIDxjPi03OTk8L2M+
IDxjPi04OTc8L2M+IDxjPi05OTU8L2M+IDxjPi0xMDkzPC9jPgorPGM+NzY8L2M+Cis8Yz4tMTE4
OTwvYz48Yz4tMTI4NTwvYz48Yz4tMTM4MDwvYz48Yz4tMTQ3NDwvYz4KKzxjPjgwPC9jPgorPGM+
LTE1Njg8L2M+PGM+LTE2NjA8L2M+PGM+LTE3NTE8L2M+PGM+LTE4NDI8L2M+Cis8Yz44NDwvYz4K
KzxjPi0xOTMxPC9jPjxjPi0yMDE5PC9jPjxjPi0yMTA2PC9jPjxjPi0yMTkxPC9jPgorPGM+ODg8
L2M+Cis8Yz4tMjI3NjwvYz48Yz4tMjM1OTwvYz48Yz4tMjQ0MDwvYz48Yz4tMjUyMDwvYz4KKzxj
PjkyPC9jPgorPGM+LTI1OTk8L2M+PGM+LTI2NzY8L2M+PGM+LTI3NTE8L2M+PGM+LTI4MjQ8L2M+
Cis8Yz45NjwvYz4KKzxjPi0yODk2PC9jPjxjPi0yOTY3PC9jPjxjPi0zMDM1PC9jPjxjPi0zMTAy
PC9jPgorPGM+MTAwPC9jPgorPGM+LTMxNjY8L2M+PGM+LTMyMjk8L2M+PGM+LTMyOTA8L2M+PGM+
LTMzNDk8L2M+Cis8Yz4xMDQ8L2M+Cis8Yz4tMzQwNjwvYz48Yz4tMzQ2MTwvYz48Yz4tMzUxMzwv
Yz48Yz4tMzU2NDwvYz4KKzxjPjEwODwvYz4KKzxjPi0zNjEzPC9jPjxjPi0zNjU5PC9jPjxjPi0z
NzAzPC9jPjxjPi0zNzQ1PC9jPgorPGM+MTEyPC9jPgorPGM+LTM3ODQ8L2M+PGM+LTM4MjI8L2M+
PGM+LTM4NTc8L2M+PGM+LTM4ODk8L2M+Cis8Yz4xMTY8L2M+Cis8Yz4tMzkyMDwvYz48Yz4tMzk0
ODwvYz48Yz4tMzk3MzwvYz48Yz4tMzk5NzwvYz4KKzxjPjEyMDwvYz4KKzxjPi00MDE3PC9jPjxj
Pi00MDM2PC9jPjxjPi00MDUyPC9jPjxjPi00MDY1PC9jPgorPGM+MTI0PC9jPgorPGM+LTQwNzY8
L2M+PGM+LTQwODU8L2M+PGM+LTQwOTE8L2M+PGM+LTQwOTU8L2M+Cis8Yz4xMjg8L2M+Cis8Yz4t
NDA5NjwvYz4gICAgICAgIDxjLz4gICAgICAgIDxjLz4gICAgICAgIDxjLz4KKzwvdGV4dHRhYmxl
PgorCis8dD4KK0dpdmVuIHRoZSBsaXN0IG9mIGNvc2luZSB2YWx1ZXMsIHNpbGtfTkxTRjJBX2Zp
bmRfcG9seSgpIChOTFNGMkEuYykKKyBjb21wdXRlcyB0aGUgY29lZmZpY2llbnRzIG9mIFAgYW5k
IFEsIGRlc2NyaWJlZCBoZXJlIHZpYSBhIHNpbXBsZSByZWN1cnJlbmNlLgorTGV0IHBfUTE2W2td
W2pdIGFuZCBxX1ExNltrXVtqXSBiZSB0aGUgY29lZmZpY2llbnRzIG9mIHRoZSBwcm9kdWN0cyBv
ZiB0aGUKKyBmaXJzdCAoaysxKSByb290IHBhaXJzIGZvciBQIGFuZCBRLCB3aXRoIGogaW5kZXhp
bmcgdGhlIGNvZWZmaWNpZW50IG51bWJlci4KK09ubHkgdGhlIGZpcnN0IChrKzIpIGNvZWZmaWNp
ZW50cyBhcmUgbmVlZGVkLCBhcyB0aGUgcHJvZHVjdHMgYXJlIHN5bW1ldHJpYy4KK0xldCBwX1Ex
NlswXVswXSZuYnNwOz0mbmJzcDtxX1ExNlswXVswXSZuYnNwOz0mbmJzcDsxJmx0OyZsdDsxNiwK
KyBwX1ExNlswXVsxXSZuYnNwOz0mbmJzcDstY19RMTdbMF0sIHFfUTE2WzBdWzFdJm5ic3A7PSZu
YnNwOy1jX1ExN1sxXSwgYW5kCisgZDImbmJzcDs9Jm5ic3A7ZF9MUEMvMi4KK0FzIGJvdW5kYXJ5
IGNvbmRpdGlvbnMsIGFzc3VtZQorIHBfUTE2W2tdW2pdJm5ic3A7PSZuYnNwO3FfUTE2W2tdW2pd
Jm5ic3A7PSZuYnNwOzAgZm9yIGFsbAorIGombmJzcDsmbHQ7Jm5ic3A7MC4KK0Fsc28sIGFzc3Vt
ZSBwX1ExNltrXVtrKzJdJm5ic3A7PSZuYnNwO3BfUTE2W2tdW2tdIGFuZAorIHFfUTE2W2tdW2sr
Ml0mbmJzcDs9Jm5ic3A7cV9RMTZba11ba10gKGJlY2F1c2Ugb2YgdGhlIHN5bW1ldHJ5KS4KK1Ro
ZW4sIGZvciAwJm5ic3A7Jmx0OyZuYnNwO2smbmJzcDsmbHQ7Jm5ic3A7ZDIgYW5kIDAmbmJzcDsm
bHQ7PSZuYnNwO2ombmJzcDsmbHQ7PSZuYnNwO2srMSwKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+
Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3BfUTE2W2tdW2pdID0gcF9RMTZb
ay0xXVtqXSArIHBfUTE2W2stMV1bai0yXQorICAgICAgICAgICAgICAtICgoY19RMTdbMiprXSpw
X1ExNltrLTFdW2otMV0gKyAzMjc2OCk+PjE2KSAsCisKK3FfUTE2W2tdW2pdID0gcV9RMTZbay0x
XVtqXSArIHFfUTE2W2stMV1bai0yXQorICAgICAgICAgICAgICAtICgoY19RMTdbMiprKzFdKnFf
UTE2W2stMV1bai0xXSArIDMyNzY4KT4+MTYpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgor
VGhlIHVzZSBvZiBRMTcgdmFsdWVzIGZvciB0aGUgY29zaW5lIHRlcm1zIGluIGFuIG90aGVyd2lz
ZSBRMTYgZXhwcmVzc2lvbgorIGltcGxpY2l0bHkgc2NhbGVzIHRoZW0gYnkgYSBmYWN0b3Igb2Yg
Mi4KK1RoZSBtdWx0aXBsaWNhdGlvbnMgaW4gdGhpcyByZWN1cnJlbmNlIG1heSByZXF1aXJlIHVw
IHRvIDQ4IGJpdHMgb2YgcHJlY2lzaW9uCisgaW4gdGhlIHJlc3VsdCB0byBhdm9pZCBvdmVyZmxv
dy4KK0luIHByYWN0aWNlLCBlYWNoIHJvdyBvZiB0aGUgcmVjdXJyZW5jZSBvbmx5IGRlcGVuZHMg
b24gdGhlIHByZXZpb3VzIHJvdywgc28gYW4KKyBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCBuZWVk
IHRvIHN0b3JlIGFsbCBvZiB0aGVtLgorPC90PgorPHQ+CitzaWxrX05MU0YyQSgpIHVzZXMgdGhl
IHZhbHVlcyBmcm9tIHRoZSBsYXN0IHJvdyBvZiB0aGlzIHJlY3VycmVuY2UgdG8KKyByZWNvbnN0
cnVjdCBhIDMyLWJpdCB2ZXJzaW9uIG9mIHRoZSBMUEMgZmlsdGVyICh3aXRob3V0IHRoZSBsZWFk
aW5nIDEuMAorIGNvZWZmaWNpZW50KSwgYTMyX1ExN1trXSwgMCZuYnNwOyZsdDs9Jm5ic3A7ayZu
YnNwOyZsdDsmbmJzcDtkMjoKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGln
bj0iY2VudGVyIj48IVtDREFUQVsKK2EzMl9RMTdba10gICAgICAgICA9IC0ocV9RMTZbZDItMV1b
aysxXSAtIHFfUTE2W2QyLTFdW2tdKQorICAgICAgICAgICAgICAgICAgICAgLSAocF9RMTZbZDIt
MV1baysxXSArIHBfUTE2W2QyLTFdW2tdKSkgLAorCithMzJfUTE3W2RfTFBDLWstMV0gPSAgKHFf
UTE2W2QyLTFdW2srMV0gLSBxX1ExNltkMi0xXVtrXSkKKyAgICAgICAgICAgICAgICAgICAgIC0g
KHBfUTE2W2QyLTFdW2srMV0gKyBwX1ExNltkMi0xXVtrXSkpIC4KK11dPjwvYXJ0d29yaz4KKzwv
ZmlndXJlPgorVGhlIHN1bSBhbmQgZGlmZmVyZW5jZSBvZiB0d28gdGVybXMgZnJvbSBlYWNoIG9m
IHRoZSBwX1ExNiBhbmQgcV9RMTYKKyBjb2VmZmljaWVudCBsaXN0cyByZWZsZWN0IHRoZSAoMSZu
YnNwOysmbmJzcDt6KiotMSkgYW5kCisgKDEmbmJzcDstJm5ic3A7eioqLTEpIGZhY3RvcnMgb2Yg
UCBhbmQgUSwgcmVzcGVjdGl2ZWx5LgorVGhlIHByb21vdGlvbiBvZiB0aGUgZXhwcmVzc2lvbiBm
cm9tIFExNiB0byBRMTcgaW1wbGljaXRseSBzY2FsZXMgdGhlIHJlc3VsdAorIGJ5IDEvMi4KKzwv
dD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2xwY19yYW5nZV9saW1pdCIK
KyB0aXRsZT0iTGltaXRpbmcgdGhlIFJhbmdlIG9mIHRoZSBMUEMgQ29lZmZpY2llbnRzIj4KKzx0
PgorVGhlIGEzMl9RMTdbXSBjb2VmZmljaWVudHMgYXJlIHRvbyBsYXJnZSB0byBmaXQgaW4gYSAx
Ni1iaXQgdmFsdWUsIHdoaWNoCisgc2lnbmlmaWNhbnRseSBpbmNyZWFzZXMgdGhlIGNvc3Qgb2Yg
YXBwbHlpbmcgdGhpcyBmaWx0ZXIgaW4gZml4ZWQtcG9pbnQKKyBkZWNvZGVycy4KK1JlZHVjaW5n
IHRoZW0gdG8gUTEyIHByZWNpc2lvbiBkb2Vzbid0IGluY3VyIGFueSBzaWduaWZpY2FudCBxdWFs
aXR5IGxvc3MsCisgYnV0IHN0aWxsIGRvZXMgbm90IGd1YXJhbnRlZSB0aGV5IHdpbGwgZml0Lgor
c2lsa19OTFNGMkEoKSBhcHBsaWVzIHVwIHRvIDEwIHJvdW5kcyBvZiBiYW5kd2lkdGggZXhwYW5z
aW9uIHRvIGxpbWl0CisgdGhlIGR5bmFtaWMgcmFuZ2Ugb2YgdGhlc2UgY29lZmZpY2llbnRzLgor
RXZlbiBmbG9hdGluZy1wb2ludCBkZWNvZGVycyBTSE9VTEQgcGVyZm9ybSB0aGVzZSBzdGVwcywg
dG8gYXZvaWQgbWlzbWF0Y2guCis8L3Q+Cis8dD4KK0ZvciBlYWNoIHJvdW5kLCB0aGUgcHJvY2Vz
cyBmaXJzdCBmaW5kcyB0aGUgaW5kZXggayBzdWNoIHRoYXQgYWJzKGEzMl9RMTdba10pCisgaXMg
bGFyZ2VzdCwgYnJlYWtpbmcgdGllcyBieSBjaG9vc2luZyB0aGUgbG93ZXN0IHZhbHVlIG9mIGsu
CitUaGVuLCBpdCBjb21wdXRlcyB0aGUgY29ycmVzcG9uZGluZyBRMTIgcHJlY2lzaW9uIHZhbHVl
LCBtYXhhYnNfUTEyLCBzdWJqZWN0IHRvCisgYW4gdXBwZXIgYm91bmQgdG8gYXZvaWQgb3ZlcmZs
b3cgaW4gc3Vic2VxdWVudCBjb21wdXRhdGlvbnM6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCittYXhhYnNfUTEyID0gbWluKChtYXhh
YnNfUTE3ICsgMTYpID4+IDUsIDE2MzgzOCkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitJ
ZiB0aGlzIGlzIGxhcmdlciB0aGFuIDMyNzY3LCB0aGUgcHJvY2VkdXJlIGRlcml2ZXMgdGhlIGNo
aXJwIGZhY3RvciwKKyBzY19RMTZbMF0sIHRvIHVzZSBpbiB0aGUgYmFuZHdpZHRoIGV4cGFuc2lv
biBhcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworICAgICAgICAgICAgICAgICAgICAobWF4YWJzX1ExMiAtIDMyNzY3KSA8PCAxNAor
c2NfUTE2WzBdID0gNjU0NzAgLSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAsCisgICAgICAg
ICAgICAgICAgICAgIChtYXhhYnNfUTEyICogKGsrMSkpID4+IDIKK11dPjwvYXJ0d29yaz4KKzwv
ZmlndXJlPgorIHdoZXJlIHRoZSBkaXZpc2lvbiBoZXJlIGlzIGludGVnZXIgZGl2aXNpb24uCitU
aGlzIGlzIGFuIGFwcHJveGltYXRpb24gb2YgdGhlIGNoaXJwIGZhY3RvciBuZWVkZWQgdG8gcmVk
dWNlIHRoZSB0YXJnZXQKKyBjb2VmZmljaWVudCB0byAzMjc2NywgdGhvdWdoIGl0IGlzIGJvdGgg
bGVzcyB0aGFuIDAuOTk5IGFuZCwgZm9yCisgayZuYnNwOyZndDsmbmJzcDswIHdoZW4gbWF4YWJz
X1ExMiBpcyBtdWNoIGdyZWF0ZXIgdGhhbiAzMjc2Nywgc3RpbGwgc2xpZ2h0bHkKKyB0b28gbGFy
Z2UuCitUaGUgdXBwZXIgYm91bmQgb24gbWF4YWJzX1ExMiwgMTYzODM4LCB3YXMgY2hvc2VuIGJl
Y2F1c2UgaXQgaXMgZXF1YWwgdG8KKyAoKDIqKjMxJm5ic3A7LSZuYnNwOzEpJm5ic3A7Jmd0OyZn
dDsmbmJzcDsxNCkmbmJzcDsrJm5ic3A7MzI3NjcsIGkuZS4sIHRoZQorIGxhcmdlc3QgdmFsdWUg
b2YgbWF4YWJzX1ExMiB0aGF0IHdvdWxkIG5vdCBvdmVyZmxvdyB0aGUgbnVtZXJhdG9yIGluIHRo
ZQorIGVxdWF0aW9uIGFib3ZlIHdoZW4gc3RvcmVkIGluIGEgc2lnbmVkIDMyLWJpdCBpbnRlZ2Vy
LgorPC90PgorPHQ+CitzaWxrX2J3ZXhwYW5kZXJfMzIoKSAoYndleHBhbmRlcl8zMi5jKSBwZXJm
b3JtcyB0aGUgYmFuZHdpZHRoIGV4cGFuc2lvbiAoYWdhaW4sCisgb25seSB3aGVuIG1heGFic19R
MTIgaXMgZ3JlYXRlciB0aGFuIDMyNzY3KSB1c2luZyB0aGUgZm9sbG93aW5nIHJlY3VycmVuY2U6
Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RB
VEFbCisgYTMyX1ExN1trXSA9IChhMzJfUTE3W2tdKnNjX1ExNltrXSkgPj4gMTYKKworc2NfUTE2
W2srMV0gPSAoc2NfUTE2WzBdKnNjX1ExNltrXSArIDMyNzY4KSA+PiAxNgorXV0+PC9hcnR3b3Jr
PgorPC9maWd1cmU+CitUaGUgZmlyc3QgbXVsdGlwbHkgbWF5IHJlcXVpcmUgdXAgdG8gNDggYml0
cyBvZiBwcmVjaXNpb24gaW4gdGhlIHJlc3VsdCB0bworIGF2b2lkIG92ZXJmbG93LgorVGhlIHNl
Y29uZCBtdWx0aXBseSBtdXN0IGJlIHVuc2lnbmVkIHRvIGF2b2lkIG92ZXJmbG93IHdpdGggb25s
eSAzMiBiaXRzIG9mCisgcHJlY2lzaW9uLgorVGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiB1
c2VzIGEgc2xpZ2h0bHkgbW9yZSBjb21wbGV4IGZvcm11bGF0aW9uIHRoYXQKKyBhdm9pZHMgdGhl
IDMyLWJpdCBvdmVyZmxvdyB1c2luZyBzaWduZWQgbXVsdGlwbGljYXRpb24sIGJ1dCBpcyBvdGhl
cndpc2UKKyBlcXVpdmFsZW50LgorPC90PgorPHQ+CitBZnRlciAxMCByb3VuZHMgb2YgYmFuZHdp
ZHRoIGV4cGFuc2lvbiBhcmUgcGVyZm9ybWVkLCB0aGV5IGFyZSBzaW1wbHkgc2F0dXJhdGVkCisg
dG8gMTYgYml0czoKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2Vu
dGVyIj48IVtDREFUQVsKK2EzMl9RMTdba10gPSBjbGFtcCgtMzI3NjgsIChhMzJfUTE3W2tdICsg
MTYpID4+IDUsIDMyNzY3KSA8PCA1IC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorQmVjYXVz
ZSB0aGlzIHBlcmZvcm1zIHRoZSBhY3R1YWwgc2F0dXJhdGlvbiBpbiB0aGUgUTEyIGRvbWFpbiwg
YnV0IGNvbnZlcnRzIHRoZQorIGNvZWZmaWNpZW50cyBiYWNrIHRvIHRoZSBRMTcgZG9tYWluIGZv
ciB0aGUgcHVycG9zZXMgb2YgcHJlZGljdGlvbiBnYWluCisgbGltaXRpbmcsIHRoaXMgc3RlcCBt
dXN0IGJlIHBlcmZvcm1lZCBhZnRlciB0aGUgMTB0aCByb3VuZCBvZiBiYW5kd2lkdGgKKyBleHBh
bnNpb24sIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciBvciBub3QgdGhlIFExMiB2ZXJzaW9uIG9mIGFu
eSBjb2VmZmljaWVudAorIHN0aWxsIG92ZXJmbG93cyBhIDE2LWJpdCBpbnRlZ2VyLgorVGhpcyBz
YXR1cmF0aW9uIGlzIG5vdCBwZXJmb3JtZWQgaWYgbWF4YWJzX1ExMiBkcm9wcyB0byAzMjc2NyBv
ciBsZXNzIHByaW9yIHRvCisgdGhlIDEwdGggcm91bmQuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxz
ZWN0aW9uIGFuY2hvcj0ic2lsa19scGNfZ2Fpbl9saW1pdCIKKyB0aXRsZT0iTGltaXRpbmcgdGhl
IFByZWRpY3Rpb24gR2FpbiBvZiB0aGUgTFBDIEZpbHRlciI+Cis8dD4KK1RoZSBwcmVkaWN0aW9u
IGdhaW4gb2YgYW4gTFBDIHN5bnRoZXNpcyBmaWx0ZXIgaXMgdGhlIHNxdWFyZS1yb290IG9mIHRo
ZSBvdXRwdXQKKyBlbmVyZ3kgd2hlbiB0aGUgZmlsdGVyIGlzIGV4Y2l0ZWQgYnkgYSB1bml0LWVu
ZXJneSBpbXB1bHNlLgorRXZlbiBpZiB0aGUgUTEyIGNvZWZmaWNpZW50cyB3b3VsZCBmaXQsIHRo
ZSByZXN1bHRpbmcgZmlsdGVyIG1heSBzdGlsbCBoYXZlIGEKKyBzaWduaWZpY2FudCBnYWluIChl
c3BlY2lhbGx5IGZvciB2b2ljZWQgc291bmRzKSwgbWFraW5nIHRoZSBmaWx0ZXIgdW5zdGFibGUu
CitzaWxrX05MU0YyQSgpIGFwcGxpZXMgdXAgdG8gMTggYWRkaXRpb25hbCByb3VuZHMgb2YgYmFu
ZHdpZHRoIGV4cGFuc2lvbiB0bworIGxpbWl0IHRoZSBwcmVkaWN0aW9uIGdhaW4uCitJbnN0ZWFk
IG9mIGNvbnRyb2xsaW5nIHRoZSBhbW91bnQgb2YgYmFuZHdpZHRoIGV4cGFuc2lvbiB1c2luZyB0
aGUgcHJlZGljdGlvbgorIGdhaW4gaXRzZWxmICh3aGljaCBtYXkgZGl2ZXJnZSB0byBpbmZpbml0
eSBmb3IgYW4gdW5zdGFibGUgZmlsdGVyKSwKKyBzaWxrX05MU0YyQSgpIHVzZXMgc2lsa19MUENf
aW52ZXJzZV9wcmVkX2dhaW5fUUEoKSAoTFBDX2ludl9wcmVkX2dhaW4uYykgdG8KKyBjb21wdXRl
IHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50cyBhc3NvY2lhdGVkIHdpdGggdGhlIGZpbHRlci4K
K1RoZSBmaWx0ZXIgaXMgc3RhYmxlIGlmIGFuZCBvbmx5IGlmIHRoZSBtYWduaXR1ZGUgb2YgdGhl
c2UgY29lZmZpY2llbnRzIGlzCisgc3VmZmljaWVudGx5IGxlc3MgdGhhbiBvbmUuCitUaGUgcmVm
bGVjdGlvbiBjb2VmZmljaWVudHMsIHJjW2tdLCBjYW4gYmUgY29tcHV0ZWQgdXNpbmcgYSBzaW1w
bGUgTGV2aW5zb24KKyByZWN1cnJlbmNlLCBpbml0aWFsaXplZCB3aXRoIHRoZSBMUEMgY29lZmZp
Y2llbnRzCisgYVtkX0xQQy0xXVtuXSZuYnNwOz0mbmJzcDthW25dLCBhbmQgdGhlbiB1cGRhdGVk
IHZpYQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworICAgIHJjW2tdID0gLWFba11ba10gLAorCisgICAgICAgICAgICBhW2tdW25dIC0g
YVtrXVtrLW4tMV0qcmNba10KK2Fbay0xXVtuXSA9IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSAuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIKKyAgICAgICAgICAgICAgICAgICAg
MSAtIHJjW2tdCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKzx0PgorSG93ZXZlciwg
c2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fUUEoKSBhcHByb3hpbWF0ZXMgdGhpcyB1c2luZyBm
aXhlZC1wb2ludAorIGFyaXRobWV0aWMgdG8gZ3VhcmFudGVlIHJlcHJvZHVjaWJsZSByZXN1bHRz
IGFjcm9zcyBwbGF0Zm9ybXMgYW5kCisgaW1wbGVtZW50YXRpb25zLgorU2luY2Ugc21hbGwgY2hh
bmdlcyBpbiB0aGUgY29lZmZpY2llbnRzIGNhbiBtYWtlIGEgc3RhYmxlIGZpbHRlciB1bnN0YWJs
ZSwgaXQKKyB0YWtlcyB0aGUgcmVhbCBRMTIgY29lZmZpY2llbnRzIHRoYXQgd2lsbCBiZSB1c2Vk
IGR1cmluZyByZWNvbnN0cnVjdGlvbiBhcworIGlucHV0LgorVGh1cywgbGV0Cis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCithMzJfUTEy
W25dID0gKGEzMl9RMTdbbl0gKyAxNikgPj4gNQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cisg
YmUgdGhlIFExMiB2ZXJzaW9uIG9mIHRoZSBMUEMgY29lZmZpY2llbnRzIHRoYXQgd2lsbCBldmVu
dHVhbGx5IGJlIHVzZWQuCitBcyBhIHNpbXBsZSBpbml0aWFsIGNoZWNrLCB0aGUgZGVjb2RlciBj
b21wdXRlcyB0aGUgREMgcmVzcG9uc2UgYXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgZF9QTEMtMQorICAgICAgICAg
IF9fCitEQ19yZXNwID0gXCAgIGEzMl9RMTJbbl0KKyAgICAgICAgICAvXworICAgICAgICAgIG49
MAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisgYW5kIGlmIERDX3Jlc3AmbmJzcDsmZ3Q7Jm5i
c3A7NDA5NiwgdGhlIGZpbHRlciBpcyB1bnN0YWJsZS4KKzwvdD4KKzx0PgorSW5jcmVhc2luZyB0
aGUgcHJlY2lzaW9uIG9mIHRoZXNlIFExMiBjb2VmZmljaWVudHMgdG8gUTI0IGZvciBpbnRlcm1l
ZGlhdGUKKyBjb21wdXRhdGlvbnMgYWxsb3dzIG1vcmUgYWNjdXJhdGUgY29tcHV0YXRpb24gb2Yg
dGhlIHJlZmxlY3Rpb24gY29lZmZpY2llbnRzLAorIHNvIHRoZSBkZWNvZGVyIGluaXRpYWxpemVz
IHRoZSByZWN1cnJlbmNlIHZpYQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFs
aWduPSJjZW50ZXIiPjwhW0NEQVRBWworYTMyX1EyNFtkX0xQQy0xXVtuXSA9IGEzMl9RMTJbbl0g
PDwgMTIgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGVuIGZvciBlYWNoIGsgZnJvbSBk
X0xQQy0xIGRvd24gdG8gMCwgaWYKKyBhYnMoYTMyX1EyNFtrXVtrXSkmbmJzcDsmZ3Q7Jm5ic3A7
MTY3NzMwMjIsIHRoZSBmaWx0ZXIgaXMgdW5zdGFibGUgYW5kIHRoZQorIHJlY3VycmVuY2Ugc3Rv
cHMuCitUaGUgY29uc3RhbnQgMTY3NzMwMjIgaGVyZSBpcyBhcHByb3hpbWF0ZWx5IDAuOTk5NzUg
aW4gUTI0LgorT3RoZXJ3aXNlLCByb3cgay0xIG9mIGEzMl9RMjQgaXMgY29tcHV0ZWQgZnJvbSBy
b3cgayBhcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIi
PjwhW0NEQVRBWworICAgICAgcmNfUTMxW2tdID0gLWEzMl9RMjRba11ba10gPDwgNyAsCisKKyAg
ICAgZGl2X1EzMFtrXSA9ICgxPDwzMCkgLSAocmNfUTMxW2tdKnJjX1EzMVtrXSA+PiAzMikgLAor
CisgICAgICAgICAgYjFba10gPSBpbG9nKGRpdl9RMzBba10pICwKKworICAgICAgICAgIGIyW2td
ID0gYjFba10gLSAxNiAsCisKKyAgICAgICAgICAgICAgICAgICAgICAgICgxPDwyOSkgLSAxCisg
ICAgIGludl9RYjJba10gPSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAsCisgICAgICAgICAgICAg
ICAgICBkaXZfUTMwW2tdID4+IChiMltrXSsxKQorCisgICAgIGVycl9RMjlba10gPSAoMTw8Mjkp
CisgICAgICAgICAgICAgICAgICAtICgoZGl2X1EzMFtrXTw8KDE1LWIyW2tdKSkqaW52X1FiMltr
XSA+PiAxNikgLAorCisgICAgZ2Fpbl9RYjFba10gPSAoKGludl9RYjJba10gPDwgMTYpCisgICAg
ICAgICAgICAgICAgICAgKyAoZXJyX1EyOVtrXSppbnZfUWIyW2tdID4+IDEzKSkgLAorCitudW1f
UTI0W2stMV1bbl0gPSBhMzJfUTI0W2tdW25dCisgICAgICAgICAgICAgICAgICAtICgoYTMyX1Ey
NFtrXVtrLW4tMV0qcmNfUTMxW2tdICsgKDE8PDMwKSkgPj4gMzEpICwKKworYTMyX1EyNFtrLTFd
W25dID0gKG51bV9RMjRbay0xXVtuXSpnYWluX1FiMVtrXQorICAgICAgICAgICAgICAgICAgICsg
KDE8PChiMVtrXS0xKSkpID4+IGIxW2tdICwKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdo
ZXJlIDAmbmJzcDsmbHQ7PSZuYnNwO24mbmJzcDsmbHQ7Jm5ic3A7ay4KK0hlcmUsIHJjX1EzMFtr
XSBhcmUgdGhlIHJlZmxlY3Rpb24gY29lZmZpY2llbnRzLgorZGl2X1EzMFtrXSBpcyB0aGUgZGVu
b21pbmF0b3IgZm9yIGVhY2ggaXRlcmF0aW9uLCBhbmQgZ2Fpbl9RYjFba10gaXMgaXRzCisgbXVs
dGlwbGljYXRpdmUgaW52ZXJzZSAod2l0aCBiMVtrXSBmcmFjdGlvbmFsIGJpdHMsIHdoZXJlIGIx
W2tdIHJhbmdlcyBmcm9tCisgMjAgdG8gMzEpLgoraW52X1FiMltrXSwgd2hpY2ggcmFuZ2VzIGZy
b20gMTYzODQgdG8gMzI3NjcsIGlzIGEgbG93LXByZWNpc2lvbiB2ZXJzaW9uIG9mCisgdGhhdCBp
bnZlcnNlICh3aXRoIGIyW2tdIGZyYWN0aW9uYWwgYml0cykuCitlcnJfUTI5W2tdIGlzIHRoZSBy
ZXNpZHVhbCBlcnJvciwgcmFuZ2luZyBmcm9tIC0zMjc2MyB0byAzMjM5Miwgd2hpY2ggaXMgdXNl
ZAorIHRvIGltcHJvdmUgdGhlIGFjY3VyYWN5LgorVGhlIHZhbHVlcyB0X1EyNFtrLTFdW25dIGZv
ciBlYWNoIG4gYXJlIHRoZSBudW1lcmF0b3JzIGZvciB0aGUgbmV4dCByb3cgb2YKKyBjb2VmZmlj
aWVudHMgaW4gdGhlIHJlY3Vyc2lvbiwgYW5kIGEzMl9RMjRbay0xXVtuXSBpcyB0aGUgZmluYWwg
dmVyc2lvbiBvZgorIHRoYXQgcm93LgorRXZlcnkgbXVsdGlwbHkgaW4gdGhpcyBwcm9jZWR1cmUg
ZXhjZXB0IHRoZSBvbmUgdXNlZCB0byBjb21wdXRlIGdhaW5fUWIxW2tdCisgcmVxdWlyZXMgbW9y
ZSB0aGFuIDMyIGJpdHMgb2YgcHJlY2lzaW9uLCBidXQgb3RoZXJ3aXNlIGFsbCBpbnRlcm1lZGlh
dGUKKyByZXN1bHRzIGZpdCBpbiAzMiBiaXRzIG9yIGxlc3MuCitJbiBwcmFjdGljZSwgYmVjYXVz
ZSBlYWNoIHJvdyBvbmx5IGRlcGVuZHMgb24gdGhlIG5leHQgb25lLCBhbiBpbXBsZW1lbnRhdGlv
bgorIGRvZXMgbm90IG5lZWQgdG8gc3RvcmUgdGhlbSBhbGwuCis8L3Q+Cis8dD4KK0lmIGFicyhh
MzJfUTI0W2tdW2tdKSZuYnNwOyZsdDs9Jm5ic3A7MTY3NzMwMjIgZm9yCisgMCZuYnNwOyZsdDs9
Jm5ic3A7ayZuYnNwOyZsdDsmbmJzcDtkX0xQQywgdGhlbiB0aGUgZmlsdGVyIGlzIGNvbnNpZGVy
ZWQgc3RhYmxlLgorSG93ZXZlciwgdGhlIHByb2JsZW0gb2YgZGV0ZXJtaW5pbmcgc3RhYmlsaXR5
IGlzIGlsbC1jb25kaXRpb25lZCB3aGVuIHRoZQorIGZpbHRlciBjb250YWlucyBzZXZlcmFsIHJl
ZmxlY3Rpb24gY29lZmZpY2llbnRzIHdob3NlIG1hZ25pdHVkZSBpcyB2ZXJ5IGNsb3NlCisgdG8g
b25lLgorVGhpcyBmaXhlZC1wb2ludCBhbGdvcml0aG0gaXMgbm90IG1hdGhlbWF0aWNhbGx5IGd1
YXJhbnRlZWQgdG8gY29ycmVjdGx5CisgY2xhc3NpZnkgZmlsdGVycyBhcyBzdGFibGUgb3IgdW5z
dGFibGUgaW4gdGhpcyBjYXNlLCB0aG91Z2ggaXQgZG9lcyB2ZXJ5IHdlbGwKKyBpbiBwcmFjdGlj
ZS4KKzwvdD4KKzx0PgorT24gcm91bmQgaSwgMSZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDs9
Jm5ic3A7MTgsIGlmIHRoZSBmaWx0ZXIgcGFzc2VzIHRoZXNlCisgc3RhYmlsaXR5IGNoZWNrcywg
dGhlbiB0aGlzIHByb2NlZHVyZSBzdG9wcywgYW5kIHRoZSBmaW5hbCBMUEMgY29lZmZpY2llbnRz
IHRvCisgdXNlIGZvciByZWNvbnN0cnVjdGlvbiBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfbHBjX3N5
bnRoZXNpcyIvPiBhcmUKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0i
Y2VudGVyIj48IVtDREFUQVsKK2FfUTEyW2tdID0gKGEzMl9RMTdba10gKyAxNikgPj4gNSAuCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK090aGVyd2lzZSwgYSByb3VuZCBvZiBiYW5kd2lkdGgg
ZXhwYW5zaW9uIGlzIGFwcGxpZWQgdXNpbmcgdGhlIHNhbWUgcHJvY2VkdXJlCisgYXMgaW4gPHhy
ZWYgdGFyZ2V0PSJzaWxrX2xwY19yYW5nZV9saW1pdCIvPiwgd2l0aAorPGZpZ3VyZSBhbGlnbj0i
Y2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworc2NfUTE2WzBdID0g
NjU1MzYgLSAoMjw8aSkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitEdXJpbmcgdGhlIDE1
dGggcm91bmQsIHNjX1ExNlswXSBiZWNvbWVzIDAgaW4gdGhlIGFib3ZlIGVxdWF0aW9uLCBzbyBh
X1ExMltrXQorIGlzIHNldCB0byAwIGZvciBhbGwgaywgZ3VhcmFudGVlaW5nIGEgc3RhYmxlIGZp
bHRlci4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9
InNpbGtfbHRwX3BhcmFtcyIgdG9jPSJpbmNsdWRlIgorIHRpdGxlPSJMb25nLVRlcm0gUHJlZGlj
dGlvbiAoTFRQKSBQYXJhbWV0ZXJzIj4KKzx0PgorQWZ0ZXIgdGhlIG5vcm1hbGl6ZWQgTFNGIGlu
ZGljZXMgYW5kLCBmb3IgMjAmbmJzcDttcyBmcmFtZXMsIHRoZSBMU0YKKyBpbnRlcnBvbGF0aW9u
IGluZGV4LCB2b2ljZWQgZnJhbWVzIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUi
Lz4pCisgaW5jbHVkZSBhZGRpdGlvbmFsIExUUCBwYXJhbWV0ZXJzLgorVGhlcmUgaXMgb25lIHBy
aW1hcnkgbGFnIGluZGV4IGZvciBlYWNoIFNJTEsgZnJhbWUsIGJ1dCB0aGlzIGlzIHJlZmluZWQg
dG8KKyBwcm9kdWNlIGEgc2VwYXJhdGUgbGFnIGluZGV4IHBlciBzdWJmcmFtZSB1c2luZyBhIHZl
Y3RvciBxdWFudGl6ZXIuCitFYWNoIHN1YmZyYW1lIGFsc28gZ2V0cyBpdHMgb3duIHByZWRpY3Rp
b24gZ2FpbiBjb2VmZmljaWVudC4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2x0cF9s
YWdzIiB0aXRsZT0iUGl0Y2ggTGFncyI+Cis8dD4KK1RoZSBwcmltYXJ5IGxhZyBpbmRleCBpcyBj
b2RlZCBlaXRoZXIgcmVsYXRpdmUgdG8gdGhlIHByaW1hcnkgbGFnIG9mIHRoZSBwcmlvcgorIGZy
YW1lIGluIHRoZSBzYW1lIGNoYW5uZWwsIG9yIGFzIGFuIGFic29sdXRlIGluZGV4LgorQWJzb2x1
dGUgY29kaW5nIGlzIHVzZWQgaWYgYW5kIG9ubHkgaWYKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4K
Kzx0PgorVGhpcyBpcyB0aGUgZmlyc3QgU0lMSyBmcmFtZSBvZiBpdHMgdHlwZSAoTEJSUiBvciBy
ZWd1bGFyKSBmb3IgdGhpcyBjaGFubmVsIGluCisgdGhlIGN1cnJlbnQgT3B1cyBmcmFtZSwKKzwv
dD4KKzx0PgorVGhlIHByZXZpb3VzIFNJTEsgZnJhbWUgb2YgdGhlIHNhbWUgdHlwZSAoTEJSUiBv
ciByZWd1bGFyKSBmb3IgdGhpcyBjaGFubmVsIGluCisgdGhlIHNhbWUgT3B1cyBmcmFtZSB3YXMg
bm90IGNvZGVkLCBvcgorPC90PgorPHQ+CitUaGF0IHByZXZpb3VzIFNJTEsgZnJhbWUgd2FzIGNv
ZGVkLCBidXQgd2FzIG5vdCB2b2ljZWQgKHNlZQorIDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV90
eXBlIi8+KS4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitXaXRoIGFic29sdXRlIGNvZGlu
ZywgdGhlIHByaW1hcnkgcGl0Y2ggbGFnIG1heSByYW5nZSBmcm9tIDImbmJzcDttcworIChpbmNs
dXNpdmUpIHVwIHRvIDE4Jm5ic3A7bXMgKGV4Y2x1c2l2ZSksIGNvcnJlc3BvbmRpbmcgdG8gcGl0
Y2hlcyBmcm9tCisgNTAwJm5ic3A7SHogZG93biB0byA1NS42Jm5ic3A7SHosIHJlc3BlY3RpdmVs
eS4KK0l0IGlzIGNvbXByaXNlZCBvZiBhIGhpZ2ggcGFydCBhbmQgYSBsb3cgcGFydCwgd2hlcmUg
dGhlIGRlY29kZXIgcmVhZHMgdGhlIGhpZ2gKKyBwYXJ0IHVzaW5nIHRoZSAzMi1lbnRyeSBjb2Rl
Ym9vayBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfYWJzX3BpdGNoX2hpZ2hfcGRmIi8+CisgYW5kIHRo
ZSBsb3cgcGFydCB1c2luZyB0aGUgY29kZWJvb2sgY29ycmVzcG9uZGluZyB0byB0aGUgY3VycmVu
dCBhdWRpbworIGJhbmR3aWR0aCBmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19hYnNfcGl0Y2hfbG93
X3BkZiIvPi4KK1RoZSBmaW5hbCBwcmltYXJ5IHBpdGNoIGxhZyBpcyB0aGVuCis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitsYWcgPSBs
YWdfaGlnaCpsYWdfc2NhbGUgKyBsYWdfbG93ICsgbGFnX21pbgorXV0+PC9hcnR3b3JrPgorPC9m
aWd1cmU+Cisgd2hlcmUgbGFnX2hpZ2ggaXMgdGhlIGhpZ2ggcGFydCwgbGFnX2xvdyBpcyB0aGUg
bG93IHBhcnQsIGFuZCBsYWdfc2NhbGUKKyBhbmQgbGFnX21pbiBhcmUgdGhlIHZhbHVlcyBmcm9t
IHRoZSAiU2NhbGUiIGFuZCAiTWluaW11bSBMYWciIGNvbHVtbnMgb2YKKyA8eHJlZiB0YXJnZXQ9
InNpbGtfYWJzX3BpdGNoX2xvd19wZGYiLz4sIHJlc3BlY3RpdmVseS4KKzwvdD4KKworPHRleHR0
YWJsZSBhbmNob3I9InNpbGtfYWJzX3BpdGNoX2hpZ2hfcGRmIgorIHRpdGxlPSJQREYgZm9yIEhp
Z2ggUGFydCBvZiBQcmltYXJ5IFBpdGNoIExhZyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwv
dHRjb2w+Cis8Yz57MywgICAzLCAgIDYsICAxMSwgIDIxLCAgMzAsICAzMiwgIDE5LAorICAgMTEs
ICAxMCwgIDEyLCAgMTMsICAxMywgIDEyLCAgMTEsICAgOSwKKyAgICA4LCAgIDcsICAgNiwgICA0
LCAgIDIsICAgMiwgICAyLCAgIDEsCisgICAgMSwgICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAg
MSwgICAxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtf
YWJzX3BpdGNoX2xvd19wZGYiCisgdGl0bGU9IlBERiBmb3IgTG93IFBhcnQgb2YgUHJpbWFyeSBQ
aXRjaCBMYWciPgorPHR0Y29sPkF1ZGlvIEJhbmR3aWR0aDwvdHRjb2w+Cis8dHRjb2w+UERGPC90
dGNvbD4KKzx0dGNvbD5TY2FsZTwvdHRjb2w+Cis8dHRjb2w+TWluaW11bSBMYWc8L3R0Y29sPgor
PHR0Y29sPk1heGltdW0gTGFnPC90dGNvbD4KKzxjPk5CPC9jPiA8Yz57NjQsIDY0LCA2NCwgNjR9
LzI1NjwvYz4gICAgICAgICAgICAgICAgIDxjPjQ8L2M+IDxjPjE2PC9jPiA8Yz4xNDQ8L2M+Cis8
Yz5NQjwvYz4gPGM+ezQzLCA0MiwgNDMsIDQzLCA0MiwgNDN9LzI1NjwvYz4gICAgICAgICA8Yz42
PC9jPiA8Yz4yNDwvYz4gPGM+MjE2PC9jPgorPGM+V0I8L2M+IDxjPnszMiwgMzIsIDMyLCAzMiwg
MzIsIDMyLCAzMiwgMzJ9LzI1NjwvYz4gPGM+ODwvYz4gPGM+MzI8L2M+IDxjPjI4ODwvYz4KKzwv
dGV4dHRhYmxlPgorCis8dD4KK0FsbCBmcmFtZXMgdGhhdCBkbyBub3QgdXNlIGFic29sdXRlIGNv
ZGluZyBmb3IgdGhlIHByaW1hcnkgbGFnIGluZGV4IHVzZQorIHJlbGF0aXZlIGNvZGluZyBpbnN0
ZWFkLgorVGhlIGRlY29kZXIgcmVhZHMgYSBzaW5nbGUgZGVsdGEgdmFsdWUgdXNpbmcgdGhlIDIx
LWVudHJ5IFBERiBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19yZWxfcGl0Y2hfcGRmIi8+LgorSWYg
dGhlIHJlc3VsdGluZyB2YWx1ZSBpcyB6ZXJvLCBpdCBmYWxscyBiYWNrIHRvIHRoZSBhYnNvbHV0
ZSBjb2RpbmcgcHJvY2VkdXJlCisgZnJvbSB0aGUgcHJpb3IgcGFyYWdyYXBoLgorT3RoZXJ3aXNl
LCB0aGUgZmluYWwgcHJpbWFyeSBwaXRjaCBsYWcgaXMgdGhlbgorPGZpZ3VyZSBhbGlnbj0iY2Vu
dGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworbGFnID0gcHJldmlvdXNf
bGFnICsgKGRlbHRhX2xhZ19pbmRleCAtIDkpCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyB3
aGVyZSBwcmV2aW91c19sYWcgaXMgdGhlIHByaW1hcnkgcGl0Y2ggbGFnIGZyb20gdGhlIG1vc3Qg
cmVjZW50IGZyYW1lIGluIHRoZQorIHNhbWUgY2hhbm5lbCBhbmQgZGVsdGFfbGFnX2luZGV4IGlz
IHRoZSB2YWx1ZSBqdXN0IGRlY29kZWQuCitUaGlzIGFsbG93cyBhIHBlci1mcmFtZSBjaGFuZ2Ug
aW4gdGhlIHBpdGNoIGxhZyBvZiAtOCB0byArMTEgc2FtcGxlcy4KK1RoZSBkZWNvZGVyIGRvZXMg
bm8gY2xhbXBpbmcgYXQgdGhpcyBwb2ludCwgc28gdGhpcyB2YWx1ZSBjYW4gZmFsbCBvdXRzaWRl
IHRoZQorIHJhbmdlIG9mIDImbmJzcDttcyB0byAxOCZuYnNwO21zLCBhbmQgdGhlIGRlY29kZXIg
bXVzdCB1c2UgdGhpcyB1bmNsYW1wZWQKKyB2YWx1ZSB3aGVuIHVzaW5nIHJlbGF0aXZlIGNvZGlu
ZyBpbiB0aGUgbmV4dCBTSUxLIGZyYW1lIChpZiBhbnkpLgorSG93ZXZlciwgYmVjYXVzZSBhbiBP
cHVzIGZyYW1lIGNhbiB1c2UgcmVsYXRpdmUgY29kaW5nIGZvciBhdCBtb3N0IHR3bworIGNvbnNl
Y3V0aXZlIFNJTEsgZnJhbWVzLCBpbnRlZ2VyIG92ZXJmbG93IHNob3VsZCBub3QgYmUgYW4gaXNz
dWUuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3JlbF9waXRjaF9wZGYiCisgdGl0
bGU9IlBERiBmb3IgUHJpbWFyeSBQaXRjaCBMYWcgQ2hhbmdlIj4KKzx0dGNvbCBhbGlnbj0ibGVm
dCI+UERGPC90dGNvbD4KKzxjPns0NiwgIDIsICAyLCAgMywgIDQsICA2LCAxMCwgMTUsCisgICAg
MjYsIDM4LCAzMCwgMjIsIDE1LCAxMCwgIDcsICA2LAorICAgICA0LCAgNCwgIDIsICAyLCAgMn0v
MjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorQWZ0ZXIgdGhlIHByaW1hcnkgcGl0Y2ggbGFn
LCBhICJwaXRjaCBjb250b3VyIiwgc3RvcmVkIGFzIGEgc2luZ2xlIGVudHJ5IGZyb20KKyBvbmUg
b2YgZm91ciBzbWFsbCBWUSBjb2RlYm9va3MsIGdpdmVzIGxhZyBvZmZzZXRzIGZvciBlYWNoIHN1
YmZyYW1lIGluIHRoZQorIGN1cnJlbnQgU0lMSyBmcmFtZS4KK1RoZSBjb2RlYm9vayBpbmRleCBp
cyBkZWNvZGVkIHVzaW5nIG9uZSBvZiB0aGUgUERGcyBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19w
aXRjaF9jb250b3VyX3BkZnMiLz4gZGVwZW5kaW5nIG9uIHRoZSBjdXJyZW50IGZyYW1lIHNpemUK
KyBhbmQgYXVkaW8gYmFuZHdpZHRoLgorVGFibGVzJm5ic3A7PHhyZWYgZm9ybWF0PSJjb3VudGVy
IiB0YXJnZXQ9InNpbGtfcGl0Y2hfY29udG91cl9jYl9uYjEwbXMiLz4KKyB0aHJvdWdoJm5ic3A7
PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfcGl0Y2hfY29udG91cl9jYl9tYndi
MjBtcyIvPgorIGdpdmUgdGhlIGNvcnJlc3BvbmRpbmcgb2Zmc2V0cyB0byBhcHBseSB0byB0aGUg
cHJpbWFyeSBwaXRjaCBsYWcgZm9yIGVhY2gKKyBzdWJmcmFtZSBnaXZlbiB0aGUgZGVjb2RlZCBj
b2RlYm9vayBpbmRleC4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfcGl0Y2hfY29u
dG91cl9wZGZzIgorIHRpdGxlPSJQREZzIGZvciBTdWJmcmFtZSBQaXRjaCBDb250b3VyIj4KKzx0
dGNvbD5BdWRpbyBCYW5kd2lkdGg8L3R0Y29sPgorPHR0Y29sPlNJTEsgRnJhbWUgU2l6ZTwvdHRj
b2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5Db2RlYm9vayBTaXplPC90dGNvbD4KKzx0dGNvbD5Q
REY8L3R0Y29sPgorPGM+TkI8L2M+ICAgICAgIDxjPjEwJm5ic3A7bXM8L2M+ICA8Yz4zPC9jPgor
PGM+ezE0MywgNTAsIDYzfS8yNTY8L2M+Cis8Yz5OQjwvYz4gICAgICAgPGM+MjAmbmJzcDttczwv
Yz4gPGM+MTE8L2M+Cis8Yz57NjgsIDEyLCAyMSwgMTcsIDE5LCAyMiwgMzAsIDI0LAorICAgIDE3
LCAxNiwgMTB9LzI1NjwvYz4KKzxjPk1CIG9yIFdCPC9jPiA8Yz4xMCZuYnNwO21zPC9jPiA8Yz4x
MjwvYz4KKzxjPns5MSwgNDYsIDM5LCAxOSwgMTQsIDEyLCAgOCwgIDcsCisgICAgIDYsICA1LCAg
NSwgIDR9LzI1NjwvYz4KKzxjPk1CIG9yIFdCPC9jPiA8Yz4yMCZuYnNwO21zPC9jPiA8Yz4zNDwv
Yz4KKzxjPnszMywgMjIsIDE4LCAxNiwgMTUsIDE0LCAxNCwgMTMsCisgICAgMTMsIDEwLCAgOSwg
IDksICA4LCAgNiwgIDYsICA2LAorICAgICA1LCAgNCwgIDQsICA0LCAgMywgIDMsICAzLCAgMiwK
KyAgICAgMiwgIDIsICAyLCAgMiwgIDIsICAyLCAgMSwgIDEsCisgICAgIDEsICAxfS8yNTY8L2M+
Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfcGl0Y2hfY29udG91cl9j
Yl9uYjEwbXMiCisgdGl0bGU9IkNvZGVib29rIFZlY3RvcnMgZm9yIFN1YmZyYW1lIFBpdGNoIENv
bnRvdXI6IE5CLCAxMCZuYnNwO21zIEZyYW1lcyI+Cis8dHRjb2w+SW5kZXg8L3R0Y29sPgorPHR0
Y29sIGFsaWduPSJyaWdodCI+U3ViZnJhbWUgT2Zmc2V0czwvdHRjb2w+Cis8Yz4wPC9jPiA8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorPGM+
MTwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZuYnNwOzA8L3NwYW54
PjwvYz4KKzxjPjI8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJz
cDsxPC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtf
cGl0Y2hfY29udG91cl9jYl9uYjIwbXMiCisgdGl0bGU9IkNvZGVib29rIFZlY3RvcnMgZm9yIFN1
YmZyYW1lIFBpdGNoIENvbnRvdXI6IE5CLCAyMCZuYnNwO21zIEZyYW1lcyI+Cis8dHRjb2w+SW5k
ZXg8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+U3ViZnJhbWUgT2Zmc2V0czwvdHRjb2w+
CisgPGM+MDwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzAm
bmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxjPjE8L2M+IDxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPiZuYnNwOzImbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7MCZuYnNwOy0x
PC9zcGFueD48L2M+CisgPGM+MjwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEmbmJzcDsm
bmJzcDswJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4KKyA8Yz4zPC9jPiA8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7
Jm5ic3A7MTwvc3Bhbng+PC9jPgorIDxjPjQ8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0x
Jm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+CisgPGM+
NTwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsm
bmJzcDswJm5ic3A7Jm5ic3A7MTwvc3Bhbng+PC9jPgorIDxjPjY8L2M+IDxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzE8
L3NwYW54PjwvYz4KKyA8Yz43PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsxJm5i
c3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+CisgPGM+ODwv
Yz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJz
cDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxjPjk8L2M+IDxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOy0xPC9zcGFueD48
L2M+Cis8Yz4xMDwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZuYnNw
OzAmbmJzcDsmbmJzcDswJm5ic3A7LTE8L3NwYW54PjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4
dHRhYmxlIGFuY2hvcj0ic2lsa19waXRjaF9jb250b3VyX2NiX21id2IxMG1zIgorIHRpdGxlPSJD
b2RlYm9vayBWZWN0b3JzIGZvciBTdWJmcmFtZSBQaXRjaCBDb250b3VyOiBNQiBvciBXQiwgMTAm
bmJzcDttcyBGcmFtZXMiPgorPHR0Y29sPkluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmln
aHQiPlN1YmZyYW1lIE9mZnNldHM8L3R0Y29sPgorIDxjPjA8L2M+IDxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+CisgPGM+MTwvYz4gPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8Yz4y
PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsxJm5ic3A7Jm5ic3A7MDwvc3Bhbng+
PC9jPgorIDxjPjM8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xJm5ic3A7Jm5ic3A7MTwv
c3Bhbng+PC9jPgorIDxjPjQ8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEmbmJz
cDstMTwvc3Bhbng+PC9jPgorIDxjPjU8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xJm5i
c3A7Jm5ic3A7Mjwvc3Bhbng+PC9jPgorIDxjPjY8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PiZuYnNwOzImbmJzcDstMTwvc3Bhbng+PC9jPgorIDxjPjc8L2M+IDxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPi0yJm5ic3A7Jm5ic3A7Mjwvc3Bhbng+PC9jPgorIDxjPjg8L2M+IDxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPiZuYnNwOzImbmJzcDstMjwvc3Bhbng+PC9jPgorIDxjPjk8L2M+IDxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPi0yJm5ic3A7Jm5ic3A7Mzwvc3Bhbng+PC9jPgorPGM+MTA8L2M+
IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzMmbmJzcDstMjwvc3Bhbng+PC9jPgorPGM+
MTE8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0zJm5ic3A7Jm5ic3A7Mzwvc3Bhbng+PC9j
PgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3BpdGNoX2NvbnRvdXJf
Y2JfbWJ3YjIwbXMiCisgdGl0bGU9IkNvZGVib29rIFZlY3RvcnMgZm9yIFN1YmZyYW1lIFBpdGNo
IENvbnRvdXI6IE1CIG9yIFdCLCAyMCZuYnNwO21zIEZyYW1lcyI+Cis8dHRjb2w+SW5kZXg8L3R0
Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+U3ViZnJhbWUgT2Zmc2V0czwvdHRjb2w+CisgPGM+
MDwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsm
bmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxjPjE8L2M+IDxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzE8
L3NwYW54PjwvYz4KKyA8Yz4yPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsxJm5i
c3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+CisgPGM+Mzwv
Yz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZu
YnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8Yz40PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4mbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsxPC9zcGFueD48
L2M+CisgPGM+NTwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZuYnNw
OzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxjPjY8L2M+IDxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPi0xJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJz
cDsxPC9zcGFueD48L2M+CisgPGM+NzwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7
MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7LTE8L3NwYW54PjwvYz4KKyA8Yz44PC9j
PiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsxJm5i
c3A7Jm5ic3A7Mjwvc3Bhbng+PC9jPgorIDxjPjk8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PiZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOy0xPC9zcGFueD48L2M+Cis8
Yz4xMDwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTImbmJzcDstMSZuYnNwOyZuYnNwOzEm
bmJzcDsmbmJzcDsyPC9zcGFueD48L2M+Cis8Yz4xMTwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+Jm5ic3A7MiZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7LTE8L3NwYW54PjwvYz4K
KzxjPjEyPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMiZuYnNwOyZuYnNwOzAmbmJzcDsm
bmJzcDswJm5ic3A7Jm5ic3A7Mjwvc3Bhbng+PC9jPgorPGM+MTM8L2M+IDxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPi0yJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDszPC9zcGFu
eD48L2M+Cis8Yz4xNDwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MiZuYnNwOyZu
YnNwOzEmbmJzcDstMSZuYnNwOy0yPC9zcGFueD48L2M+Cis8Yz4xNTwvYz4gPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+LTMmbmJzcDstMSZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDszPC9zcGFueD48
L2M+Cis8Yz4xNjwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MiZuYnNwOyZuYnNw
OzAmbmJzcDsmbmJzcDswJm5ic3A7LTI8L3NwYW54PjwvYz4KKzxjPjE3PC9jPiA8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4mbmJzcDszJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzAmbmJzcDstMjwv
c3Bhbng+PC9jPgorPGM+MTg8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0zJm5ic3A7LTEm
bmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7NDwvc3Bhbng+PC9jPgorPGM+MTk8L2M+IDxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPi00Jm5ic3A7LTEmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7NDwvc3Bh
bng+PC9jPgorPGM+MjA8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzMmbmJzcDsm
bmJzcDsxJm5ic3A7LTEmbmJzcDstMzwvc3Bhbng+PC9jPgorPGM+MjE8L2M+IDxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPi00Jm5ic3A7LTEmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7NTwvc3Bhbng+
PC9jPgorPGM+MjI8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzQmbmJzcDsmbmJz
cDsyJm5ic3A7LTEmbmJzcDstMzwvc3Bhbng+PC9jPgorPGM+MjM8L2M+IDxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPiZuYnNwOzQmbmJzcDsmbmJzcDsxJm5ic3A7LTEmbmJzcDstNDwvc3Bhbng+PC9j
PgorPGM+MjQ8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi01Jm5ic3A7LTEmbmJzcDsmbmJz
cDsyJm5ic3A7Jm5ic3A7Njwvc3Bhbng+PC9jPgorPGM+MjU8L2M+IDxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPiZuYnNwOzUmbmJzcDsmbmJzcDsyJm5ic3A7LTEmbmJzcDstNDwvc3Bhbng+PC9jPgor
PGM+MjY8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi02Jm5ic3A7LTImbmJzcDsmbmJzcDsy
Jm5ic3A7Jm5ic3A7Njwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPi01Jm5ic3A7LTImbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7NTwvc3Bhbng+PC9jPgorPGM+
Mjg8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzYmbmJzcDsmbmJzcDsyJm5ic3A7
LTEmbmJzcDstNTwvc3Bhbng+PC9jPgorPGM+Mjk8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUi
Pi03Jm5ic3A7LTImbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7ODwvc3Bhbng+PC9jPgorPGM+MzA8
L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzYmbmJzcDsmbmJzcDsyJm5ic3A7LTIm
bmJzcDstNjwvc3Bhbng+PC9jPgorPGM+MzE8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZu
YnNwOzUmbmJzcDsmbmJzcDsyJm5ic3A7LTImbmJzcDstNTwvc3Bhbng+PC9jPgorPGM+MzI8L2M+
IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzgmbmJzcDsmbmJzcDszJm5ic3A7LTImbmJz
cDstNzwvc3Bhbng+PC9jPgorPGM+MzM8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi05Jm5i
c3A7LTMmbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7OTwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+
CisKKzx0PgorVGhlIGZpbmFsIHBpdGNoIGxhZyBmb3IgZWFjaCBzdWJmcmFtZSBpcyBhc3NlbWJs
ZWQgaW4gc2lsa19kZWNvZGVfcGl0Y2goKQorIChkZWNvZGVfcGl0Y2guYykuCitMZXQgbGFnIGJl
IHRoZSBwcmltYXJ5IHBpdGNoIGxhZyBmb3IgdGhlIGN1cnJlbnQgU0lMSyBmcmFtZSwgY29udG91
cl9pbmRleCBiZQorIGluZGV4IG9mIHRoZSBWUSBjb2RlYm9vaywgYW5kIGxhZ19jYltjb250b3Vy
X2luZGV4XVtrXSBiZSB0aGUgY29ycmVzcG9uZGluZworIGVudHJ5IG9mIHRoZSBjb2RlYm9vayBm
cm9tIHRoZSBhcHByb3ByaWF0ZSB0YWJsZSBnaXZlbiBhYm92ZSBmb3IgdGhlIGsndGgKKyBzdWJm
cmFtZS4KK1RoZW4gdGhlIGZpbmFsIHBpdGNoIGxhZyBmb3IgdGhhdCBzdWJmcmFtZSBpcworPGZp
Z3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
cGl0Y2hfbGFnc1trXSA9IGNsYW1wKGxhZ19taW4sIGxhZyArIGxhZ19jYltjb250b3VyX2luZGV4
XVtrXSwKKyAgICAgICAgICAgICAgICAgICAgICBsYWdfbWF4KQorXV0+PC9hcnR3b3JrPgorPC9m
aWd1cmU+Cisgd2hlcmUgbGFnX21pbiBhbmQgbGFnX21heCBhcmUgdGhlIHZhbHVlcyBmcm9tIHRo
ZSAiTWluaW11bSBMYWciIGFuZAorICJNYXhpbXVtIExhZyIgY29sdW1ucyBvZiA8eHJlZiB0YXJn
ZXQ9InNpbGtfYWJzX3BpdGNoX2xvd19wZGYiLz4sCisgcmVzcGVjdGl2ZWx5LgorPC90PgorCis8
L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19sdHBfZmlsdGVyIiB0aXRsZT0iTFRQ
IEZpbHRlciBDb2VmZmljaWVudHMiPgorPHQ+CitTSUxLIHVzZXMgYSBzZXBhcmF0ZSA1LXRhcCBw
aXRjaCBmaWx0ZXIgZm9yIGVhY2ggc3ViZnJhbWUsIHNlbGVjdGVkIGZyb20gb25lCisgb2YgdGhy
ZWUgY29kZWJvb2tzLgorVGhlIHRocmVlIGNvZGVib29rcyBlYWNoIHJlcHJlc2VudCBkaWZmZXJl
bnQgcmF0ZS1kaXN0b3J0aW9uIHRyYWRlLW9mZnMsIHdpdGgKKyBhdmVyYWdlIHJhdGVzIG9mIDEu
NjEmbmJzcDtiaXRzL3N1YmZyYW1lLCAzLjY4Jm5ic3A7Yml0cy9zdWJmcmFtZSwgYW5kCisgNC44
NSZuYnNwO2JpdHMvc3ViZnJhbWUsIHJlc3BlY3RpdmVseS4KKzwvdD4KKworPHQ+CitUaGUgaW1w
b3J0YW5jZSBvZiB0aGUgZmlsdGVyIGNvZWZmaWNpZW50cyBnZW5lcmFsbHkgZGVwZW5kcyBvbiB0
d28gZmFjdG9yczogdGhlCisgcGVyaW9kaWNpdHkgb2YgdGhlIHNpZ25hbCBhbmQgcmVsYXRpdmUg
ZW5lcmd5IGJldHdlZW4gdGhlIGN1cnJlbnQgc3ViZnJhbWUgYW5kCisgdGhlIHNpZ25hbCBmcm9t
IG9uZSBwZXJpb2QgZWFybGllci4KK0dyZWF0ZXIgcGVyaW9kaWNpdHkgYW5kIGRlY2F5aW5nIGVu
ZXJneSBib3RoIGxlYWQgdG8gbW9yZSBpbXBvcnRhbnQgZmlsdGVyCisgY29lZmZpY2llbnRzLCBh
bmQgdGh1cyBzaG91bGQgYmUgY29kZWQgd2l0aCBsb3dlciBkaXN0b3J0aW9uIGFuZCBoaWdoZXIg
cmF0ZS4KK1RoZXNlIHByb3BlcnRpZXMgYXJlIHJlbGF0aXZlbHkgc3RhYmxlIG92ZXIgdGhlIGR1
cmF0aW9uIG9mIGEgc2luZ2xlIFNJTEsKKyBmcmFtZSwgaGVuY2UgYWxsIG9mIHRoZSBzdWJmcmFt
ZXMgaW4gYSBTSUxLIGZyYW1lIGNob29zZSB0aGVpciBmaWx0ZXIgZnJvbSB0aGUKKyBzYW1lIGNv
ZGVib29rLgorVGhpcyBpcyBzaWduYWxlZCB3aXRoIGFuIGV4cGxpY2l0bHktY29kZWQgInBlcmlv
ZGljaXR5IGluZGV4Ii4KK1RoaXMgaW1tZWRpYXRlbHkgZm9sbG93cyB0aGUgc3ViZnJhbWUgcGl0
Y2ggbGFncywgYW5kIGlzIGNvZGVkIHVzaW5nIHRoZQorIDMtZW50cnkgUERGIGZyb20gPHhyZWYg
dGFyZ2V0PSJzaWxrX3BlcmluZGV4X3BkZiIvPi4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9
InNpbGtfcGVyaW5kZXhfcGRmIiB0aXRsZT0iUGVyaW9kaWNpdHkgSW5kZXggUERGIj4KKzx0dGNv
bD5QREY8L3R0Y29sPgorPGM+ezc3LCA4MCwgOTl9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8
dD4KK1RoZSBpbmRpY2VzIG9mIHRoZSBmaWx0ZXJzIGZvciBlYWNoIHN1YmZyYW1lIGZvbGxvdy4K
K1RoZXkgYXJlIGFsbCBjb2RlZCB1c2luZyB0aGUgUERGIGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxr
X2x0cF9maWx0ZXJfcGRmcyIvPgorIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHBlcmlvZGljaXR5IGlu
ZGV4LgorVGFibGVzJm5ic3A7PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfbHRw
X2ZpbHRlcl9jb2VmZnMwIi8+CisgdGhyb3VnaCZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIg
dGFyZ2V0PSJzaWxrX2x0cF9maWx0ZXJfY29lZmZzMiIvPgorIGNvbnRhaW4gdGhlIGNvcnJlc3Bv
bmRpbmcgZmlsdGVyIHRhcHMgYXMgc2lnbmVkIFE3IGludGVnZXJzLgorPC90PgorCis8dGV4dHRh
YmxlIGFuY2hvcj0ic2lsa19sdHBfZmlsdGVyX3BkZnMiIHRpdGxlPSJMVFAgRmlsdGVyIFBERnMi
PgorPHR0Y29sPlBlcmlvZGljaXR5IEluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQi
PkNvZGVib29rIFNpemU8L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz4wPC9jPiAgPGM+
ODwvYz4gPGM+ezE4NSwgMTUsIDEzLCAxMywgOSwgOSwgNiwgNn0vMjU2PC9jPgorPGM+MTwvYz4g
PGM+MTY8L2M+IDxjPns1NywgMzQsIDIxLCAyMCwgMTUsIDEzLCAxMiwgMTMsCisgICAgICAgICAg
ICAgICAgICAgICAgIDEwLCAxMCwgIDksIDEwLCAgOSwgIDgsICA3LCAgOH0vMjU2PC9jPgorPGM+
MjwvYz4gPGM+MzI8L2M+IDxjPnsxNSwgMTYsIDE0LCAxMiwgMTIsIDEyLCAxMSwgMTEsCisgICAg
ICAgICAgICAgICAgICAgICAgIDExLCAxMCwgIDksICA5LCAgOSwgIDksICA4LCAgOCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgIDgsICA4LCAgNywgIDcsICA2LCAgNiwgIDUsICA0LAorICAgICAg
ICAgICAgICAgICAgICAgICAgNSwgIDQsICA0LCAgNCwgIDMsICA0LCAgMywgIDJ9LzI1NjwvYz4K
KzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19sdHBfZmlsdGVyX2NvZWZm
czAiCisgdGl0bGU9IkNvZGVib29rIFZlY3RvcnMgZm9yIExUUCBGaWx0ZXIsIFBlcmlvZGljaXR5
IEluZGV4IDAiPgorPHR0Y29sPkluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPkZp
bHRlciBUYXBzIChRNyk8L3R0Y29sPgorIDxjPjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4mbmJzcDsmbmJzcDs0Jm5ic3A7Jm5ic3A7Jm5ic3A7NiZuYnNwOyZuYnNwOzI0Jm5ic3A7Jm5i
c3A7Jm5ic3A7NyZuYnNwOyZuYnNwOyZuYnNwOzU8L3NwYW54PjwvYz4KKyA8Yz4xPC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOyZuYnNwOzAmbmJz
cDsmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOyZuYnNwOzA8L3Nw
YW54PjwvYz4KKyA8Yz4yPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MTImbmJz
cDsmbmJzcDsyOCZuYnNwOyZuYnNwOzQxJm5ic3A7Jm5ic3A7MTMmbmJzcDsmbmJzcDstNDwvc3Bh
bng+PC9jPgorIDxjPjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDstOSZuYnNw
OyZuYnNwOzE1Jm5ic3A7Jm5ic3A7NDImbmJzcDsmbmJzcDsyNSZuYnNwOyZuYnNwOzE0PC9zcGFu
eD48L2M+CisgPGM+NDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzEm
bmJzcDsmbmJzcDstMiZuYnNwOyZuYnNwOzYyJm5ic3A7Jm5ic3A7NDEmbmJzcDsmbmJzcDstOTwv
c3Bhbng+PC9jPgorIDxjPjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMTAmbmJzcDsm
bmJzcDszNyZuYnNwOyZuYnNwOzY1Jm5ic3A7Jm5ic3A7LTQmbmJzcDsmbmJzcDsmbmJzcDszPC9z
cGFueD48L2M+CisgPGM+NjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy02Jm5i
c3A7Jm5ic3A7Jm5ic3A7NCZuYnNwOyZuYnNwOzY2Jm5ic3A7Jm5ic3A7Jm5ic3A7NyZuYnNwOyZu
YnNwOy04PC9zcGFueD48L2M+CisgPGM+NzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZu
YnNwOzE2Jm5ic3A7Jm5ic3A7MTQmbmJzcDsmbmJzcDszOCZuYnNwOyZuYnNwOy0zJm5ic3A7Jm5i
c3A7MzM8L3NwYW54PjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2ls
a19sdHBfZmlsdGVyX2NvZWZmczEiCisgdGl0bGU9IkNvZGVib29rIFZlY3RvcnMgZm9yIExUUCBG
aWx0ZXIsIFBlcmlvZGljaXR5IEluZGV4IDEiPgorPHR0Y29sPkluZGV4PC90dGNvbD4KKzx0dGNv
bCBhbGlnbj0icmlnaHQiPkZpbHRlciBUYXBzIChRNyk8L3R0Y29sPgorCisgPGM+MDwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEzJm5ic3A7Jm5ic3A7MjImbmJzcDsmbmJzcDsz
OSZuYnNwOyZuYnNwOzIzJm5ic3A7Jm5ic3A7MTI8L3NwYW54PjwvYz4KKyA8Yz4xPC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTEmbmJzcDsmbmJzcDszNiZuYnNwOyZuYnNwOzY0
Jm5ic3A7Jm5ic3A7MjcmbmJzcDsmbmJzcDstNjwvc3Bhbng+PC9jPgorIDxjPjI8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDstNyZuYnNwOyZuYnNwOzEwJm5ic3A7Jm5ic3A7NTUm
bmJzcDsmbmJzcDs0MyZuYnNwOyZuYnNwOzE3PC9zcGFueD48L2M+CisgPGM+MzwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsmbmJzcDsxJm5ic3A7
Jm5ic3A7Jm5ic3A7OCZuYnNwOyZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsmbmJzcDsxPC9zcGFu
eD48L2M+CisgPGM+NDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzYm
bmJzcDstMTEmbmJzcDsmbmJzcDs3NCZuYnNwOyZuYnNwOzUzJm5ic3A7Jm5ic3A7LTk8L3NwYW54
PjwvYz4KKyA8Yz41PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEyJm5ic3A7Jm5ic3A7
NTUmbmJzcDsmbmJzcDs3NiZuYnNwOy0xMiZuYnNwOyZuYnNwOyZuYnNwOzg8L3NwYW54PjwvYz4K
KyA8Yz42PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTMmbmJzcDsmbmJzcDsm
bmJzcDszJm5ic3A7Jm5ic3A7OTMmbmJzcDsmbmJzcDsyNyZuYnNwOyZuYnNwOy00PC9zcGFueD48
L2M+CisgPGM+NzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzI2Jm5ic3A7Jm5i
c3A7MzkmbmJzcDsmbmJzcDs1OSZuYnNwOyZuYnNwOyZuYnNwOzMmbmJzcDsmbmJzcDstODwvc3Bh
bng+PC9jPgorIDxjPjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDsy
Jm5ic3A7Jm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzc3Jm5ic3A7Jm5ic3A7MTEmbmJzcDsmbmJz
cDsmbmJzcDs5PC9zcGFueD48L2M+CisgPGM+OTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PiZuYnNwOy04Jm5ic3A7Jm5ic3A7MjImbmJzcDsmbmJzcDs0NCZuYnNwOyZuYnNwOy02Jm5ic3A7
Jm5ic3A7Jm5ic3A7Nzwvc3Bhbng+PC9jPgorPGM+MTA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDs0MCZuYnNwOyZuYnNwOyZuYnNwOzkmbmJzcDsmbmJzcDsyNiZuYnNwOyZuYnNw
OyZuYnNwOzMmbmJzcDsmbmJzcDsmbmJzcDs5PC9zcGFueD48L2M+Cis8Yz4xMTwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy03Jm5ic3A7Jm5ic3A7MjAmbmJzcDsxMDEmbmJzcDsm
bmJzcDstNyZuYnNwOyZuYnNwOyZuYnNwOzQ8L3NwYW54PjwvYz4KKzxjPjEyPC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOy04Jm5ic3A7Jm5ic3A7
NDImbmJzcDsmbmJzcDsyNiZuYnNwOyZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKzxjPjEzPC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTE1Jm5ic3A7Jm5ic3A7MzMmbmJzcDsmbmJzcDs2
OCZuYnNwOyZuYnNwOyZuYnNwOzImbmJzcDsmbmJzcDsyMzwvc3Bhbng+PC9jPgorPGM+MTQ8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDstMiZuYnNwOyZuYnNwOzU1Jm5ic3A7Jm5i
c3A7NDYmbmJzcDsmbmJzcDstMiZuYnNwOyZuYnNwOzE1PC9zcGFueD48L2M+Cis8Yz4xNTwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzMmbmJzcDsmbmJzcDstMSZuYnNw
OyZuYnNwOzIxJm5ic3A7Jm5ic3A7MTYmbmJzcDsmbmJzcDs0MTwvc3Bhbng+PC9jPgorPC90ZXh0
dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX2x0cF9maWx0ZXJfY29lZmZzMiIKKyB0
aXRsZT0iQ29kZWJvb2sgVmVjdG9ycyBmb3IgTFRQIEZpbHRlciwgUGVyaW9kaWNpdHkgSW5kZXgg
MiI+Cis8dHRjb2w+SW5kZXg8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+RmlsdGVyIFRh
cHMgKFE3KTwvdHRjb2w+CisgPGM+MDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNw
Oy02Jm5ic3A7Jm5ic3A7MjcmbmJzcDsmbmJzcDs2MSZuYnNwOyZuYnNwOzM5Jm5ic3A7Jm5ic3A7
Jm5ic3A7NTwvc3Bhbng+PC9jPgorIDxjPjE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4t
MTEmbmJzcDsmbmJzcDs0MiZuYnNwOyZuYnNwOzg4Jm5ic3A7Jm5ic3A7Jm5ic3A7NCZuYnNwOyZu
YnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8Yz4yPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+Jm5ic3A7LTImbmJzcDsmbmJzcDs2MCZuYnNwOyZuYnNwOzY1Jm5ic3A7Jm5ic3A7Jm5ic3A7
NiZuYnNwOyZuYnNwOy00PC9zcGFueD48L2M+CisgPGM+MzwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPiZuYnNwOy0xJm5ic3A7Jm5ic3A7LTUmbmJzcDsmbmJzcDs3MyZuYnNwOyZuYnNwOzU2
Jm5ic3A7Jm5ic3A7Jm5ic3A7MTwvc3Bhbng+PC9jPgorIDxjPjQ8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4mbmJzcDstOSZuYnNwOyZuYnNwOzE5Jm5ic3A7Jm5ic3A7OTQmbmJzcDsmbmJz
cDsyOSZuYnNwOyZuYnNwOy05PC9zcGFueD48L2M+CisgPGM+NTwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPiZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsxMiZuYnNwOyZuYnNwOzk5Jm5ic3A7
Jm5ic3A7Jm5ic3A7NiZuYnNwOyZuYnNwOyZuYnNwOzQ8L3NwYW54PjwvYz4KKyA8Yz42PC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7OCZuYnNwOy0xOSZuYnNwOzEwMiZu
YnNwOyZuYnNwOzQ2Jm5ic3A7LTEzPC9zcGFueD48L2M+CisgPGM+NzwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzMmbmJzcDsmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7
MTMmbmJzcDsmbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7Jm5ic3A7Mjwvc3Bhbng+PC9jPgorIDxj
Pjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDs5Jm5ic3A7LTIxJm5i
c3A7Jm5ic3A7ODQmbmJzcDsmbmJzcDs3MiZuYnNwOy0xODwvc3Bhbng+PC9jPgorIDxjPjk8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMTEmbmJzcDsmbmJzcDs0NiZuYnNwOzEwNCZuYnNw
Oy0yMiZuYnNwOyZuYnNwOyZuYnNwOzg8L3NwYW54PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MTgmbmJzcDsmbmJzcDszOCZuYnNwOyZuYnNwOzQ4Jm5ic3A7
Jm5ic3A7MjMmbmJzcDsmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+Cis8Yz4xMTwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPi0xNiZuYnNwOyZuYnNwOzcwJm5ic3A7Jm5ic3A7ODMmbmJzcDst
MjEmbmJzcDsmbmJzcDsxMTwvc3Bhbng+PC9jPgorPGM+MTI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4mbmJzcDsmbmJzcDs1Jm5ic3A7LTExJm5ic3A7MTE3Jm5ic3A7Jm5ic3A7MjImbmJz
cDsmbmJzcDstODwvc3Bhbng+PC9jPgorPGM+MTM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4mbmJzcDstNiZuYnNwOyZuYnNwOzIzJm5ic3A7MTE3Jm5ic3A7LTEyJm5ic3A7Jm5ic3A7Jm5i
c3A7Mzwvc3Bhbng+PC9jPgorPGM+MTQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJz
cDsmbmJzcDszJm5ic3A7Jm5ic3A7LTgmbmJzcDsmbmJzcDs5NSZuYnNwOyZuYnNwOzI4Jm5ic3A7
Jm5ic3A7Jm5ic3A7NDwvc3Bhbng+PC9jPgorPGM+MTU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4tMTAmbmJzcDsmbmJzcDsxNSZuYnNwOyZuYnNwOzc3Jm5ic3A7Jm5ic3A7NjAmbmJzcDst
MTU8L3NwYW54PjwvYz4KKzxjPjE2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7
LTEmbmJzcDsmbmJzcDsmbmJzcDs0Jm5ic3A7MTI0Jm5ic3A7Jm5ic3A7Jm5ic3A7MiZuYnNwOyZu
YnNwOy00PC9zcGFueD48L2M+Cis8Yz4xNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZu
YnNwOyZuYnNwOzMmbmJzcDsmbmJzcDszOCZuYnNwOyZuYnNwOzg0Jm5ic3A7Jm5ic3A7MjQmbmJz
cDstMjU8L3NwYW54PjwvYz4KKzxjPjE4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5i
c3A7Jm5ic3A7MiZuYnNwOyZuYnNwOzEzJm5ic3A7Jm5ic3A7NDImbmJzcDsmbmJzcDsxMyZuYnNw
OyZuYnNwOzMxPC9zcGFueD48L2M+Cis8Yz4xOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PiZuYnNwOzIxJm5ic3A7Jm5ic3A7LTQmbmJzcDsmbmJzcDs1NiZuYnNwOyZuYnNwOzQ2Jm5ic3A7
Jm5ic3A7LTE8L3NwYW54PjwvYz4KKzxjPjIwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
Jm5ic3A7LTEmbmJzcDsmbmJzcDszNSZuYnNwOyZuYnNwOzc5Jm5ic3A7LTEzJm5ic3A7Jm5ic3A7
MTk8L3NwYW54PjwvYz4KKzxjPjIxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7
LTcmbmJzcDsmbmJzcDs2NSZuYnNwOyZuYnNwOzg4Jm5ic3A7Jm5ic3A7LTkmbmJzcDstMTQ8L3Nw
YW54PjwvYz4KKzxjPjIyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MjAmbmJz
cDsmbmJzcDsmbmJzcDs0Jm5ic3A7Jm5ic3A7ODEmbmJzcDsmbmJzcDs0OSZuYnNwOy0yOTwvc3Bh
bng+PC9jPgorPGM+MjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsyMCZuYnNw
OyZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDs3NSZuYnNwOyZuYnNwOyZuYnNwOzMmbmJzcDstMTc8
L3NwYW54PjwvYz4KKzxjPjI0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5i
c3A7NSZuYnNwOyZuYnNwOy05Jm5ic3A7Jm5ic3A7NDQmbmJzcDsmbmJzcDs5MiZuYnNwOyZuYnNw
Oy04PC9zcGFueD48L2M+Cis8Yz4yNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNw
OyZuYnNwOzEmbmJzcDsmbmJzcDstMyZuYnNwOyZuYnNwOzIyJm5ic3A7Jm5ic3A7NjkmbmJzcDsm
bmJzcDszMTwvc3Bhbng+PC9jPgorPGM+MjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4m
bmJzcDstNiZuYnNwOyZuYnNwOzk1Jm5ic3A7Jm5ic3A7NDEmbmJzcDstMTImbmJzcDsmbmJzcDsm
bmJzcDs1PC9zcGFueD48L2M+Cis8Yz4yNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZu
YnNwOzM5Jm5ic3A7Jm5ic3A7NjcmbmJzcDsmbmJzcDsxNiZuYnNwOyZuYnNwOy00Jm5ic3A7Jm5i
c3A7Jm5ic3A7MTwvc3Bhbng+PC9jPgorPGM+Mjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4mbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7LTYmbmJzcDsxMjAmbmJzcDsmbmJzcDs1NSZuYnNw
Oy0zNjwvc3Bhbng+PC9jPgorPGM+Mjk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMTMm
bmJzcDsmbmJzcDs0NCZuYnNwOzEyMiZuYnNwOyZuYnNwOyZuYnNwOzQmbmJzcDstMjQ8L3NwYW54
PjwvYz4KKzxjPjMwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7ODEmbmJzcDsm
bmJzcDsmbmJzcDs1Jm5ic3A7Jm5ic3A7MTEmbmJzcDsmbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7
Jm5ic3A7Nzwvc3Bhbng+PC9jPgorPGM+MzE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4m
bmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOyZuYnNwOzkmbmJzcDsm
bmJzcDsxMCZuYnNwOyZuYnNwOzg4PC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKworPC9zZWN0
aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbHRwX3NjYWxpbmciIHRpdGxlPSJMVFAgU2Nh
bGluZyBQYXJhbWV0ZXIiPgorPHQ+CitBbiBMVFAgc2NhbGluZyBwYXJhbWV0ZXIgYXBwZWFycyBh
ZnRlciB0aGUgTFRQIGZpbHRlciBjb2VmZmljaWVudHMgaWYgYW5kIG9ubHkKKyBpZgorPGxpc3Qg
c3R5bGU9InN5bWJvbHMiPgorPHQ+VGhpcyBpcyBhIHZvaWNlZCBmcmFtZSAoc2VlIDx4cmVmIHRh
cmdldD0ic2lsa19mcmFtZV90eXBlIi8+KSwgYW5kPC90PgorPHQ+RWl0aGVyCis8bGlzdCBzdHls
ZT0ic3ltYm9scyI+Cis8dD4KK1RoaXMgU0lMSyBmcmFtZSBjb3JyZXNwb25kcyB0byB0aGUgZmly
c3QgdGltZSBpbnRlcnZhbCBvZiB0aGUKKyBjdXJyZW50IE9wdXMgZnJhbWUgZm9yIGl0cyB0eXBl
IChMQlJSIG9yIHJlZ3VsYXIpLCBvcgorPC90PgorPHQ+CitUaGlzIGlzIGFuIExCUlIgZnJhbWUg
d2hlcmUgdGhlIExCUlIgZmxhZ3MgKHNlZQorIDx4cmVmIHRhcmdldD0ic2lsa19sYnJyX2ZsYWdz
Ii8+KSBpbmRpY2F0ZSB0aGUgcHJldmlvdXMgTEJSUiBmcmFtZSBpbiB0aGUgc2FtZQorIGNoYW5u
ZWwgaXMgbm90IGNvZGVkLgorPC90PgorPC9saXN0PgorPC90PgorPC9saXN0PgorVGhpcyBhbGxv
d3MgdGhlIGVuY29kZXIgdG8gdHJhZGUgb2ZmIHRoZSBwcmVkaWN0aW9uIGdhaW4gYmV0d2Vlbgor
IHBhY2tldHMgYWdhaW5zdCB0aGUgcmVjb3ZlcnkgdGltZSBhZnRlciBwYWNrZXQgbG9zcy4KK1Vu
bGlrZSBhYnNvbHV0ZS1jb2RpbmcgZm9yIHBpdGNoIGxhZ3MsIHJlZ3VsYXIgU0lMSyBmcmFtZXMg
dGhhdCBhcmUgbm90IGF0IHRoZQorIHN0YXJ0IG9mIGFuIE9wdXMgZnJhbWUgKGkuZS4sIHRoYXQg
ZG8gbm90IGNvcnJlc3BvbmQgdG8gdGhlIGZpcnN0IDIwJm5ic3A7bXMKKyB0aW1lIGludGVydmFs
IGluIE9wdXMgZnJhbWVzIG9mIDQwJm5ic3A7b3IgNjAmbmJzcDttcykgZG8gbm90IGluY2x1ZGUg
dGhpcworIGZpZWxkLCBldmVuIGlmIHRoZSBwcmlvciBmcmFtZSB3YXMgbm90IHZvaWNlZCwgb3Ig
KGluIHRoZSBjYXNlIG9mIHRoZSBzaWRlCisgY2hhbm5lbCkgbm90IGV2ZW4gY29kZWQuCitBZnRl
ciBhbiB1bmNvZGVkIGZyYW1lIGluIHRoZSBzaWRlIGNoYW5uZWwsIHRoZSBMVFAgYnVmZmVyIChz
ZWUKKyA8eHJlZiB0YXJnZXQ9InNpbGtfbHRwX3N5bnRoZXNpcyIvPikgaXMgY2xlYXJlZCB0byB6
ZXJvLCBhbmQgaXMgdGh1cyBpbiBhCisga25vd24gc3RhdGUuCitJbiBjb250cmFzdCwgTEJSUiBm
cmFtZXMgZG8gaW5jbHVkZSB0aGlzIGZpZWxkIHdoZW4gdGhlIHByaW9yIGZyYW1lIHdhcyBub3QK
KyBjb2RlZCwgc2luY2UgdGhlIExUUCBidWZmZXIgY29udGFpbnMgdGhlIG91dHB1dCBvZiB0aGUg
UExDLCB3aGljaCBpcworIG5vbi1ub3JtYXRpdmUuCis8L3Q+Cis8dD4KK0lmIHByZXNlbnQsIHRo
ZSBkZWNvZGVyIHJlYWRzIGEgdmFsdWUgdXNpbmcgdGhlIDMtZW50cnkgUERGIGluCisgPHhyZWYg
dGFyZ2V0PSJzaWxrX2x0cF9zY2FsaW5nX3BkZiIvPi4KK1RoZSB0aHJlZSBwb3NzaWJsZSB2YWx1
ZXMgcmVwcmVzZW50IFExNCBzY2FsZSBmYWN0b3JzIG9mIDE1NTY1LCAxMjI4OCwgYW5kCisgODE5
MiwgcmVzcGVjdGl2ZWx5IChjb3JyZXNwb25kaW5nIHRvIGFwcHJveGltYXRlbHkgMC45NSwgMC43
NSwgYW5kIDAuNSkuCitGcmFtZXMgdGhhdCBkbyBub3QgY29kZSB0aGUgc2NhbGluZyBwYXJhbWV0
ZXIgdXNlIHRoZSBkZWZhdWx0IGZhY3RvciBvZiAxNTU2NQorIChhcHByb3hpbWF0ZWx5IDAuOTUp
LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19sdHBfc2NhbGluZ19wZGYiCisgdGl0
bGU9IlBERiBmb3IgTFRQIFNjYWxpbmcgUGFyYW1ldGVyIj4KKzx0dGNvbCBhbGlnbj0ibGVmdCI+
UERGPC90dGNvbD4KKzxjPnsxMjgsIDY0LCA2NH0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzwv
c2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfc2VlZCIgdG9j
PSJpbmNsdWRlIgorIHRpdGxlPSJMaW5lYXIgQ29uZ3J1ZW50aWFsIEdlbmVyYXRvciAoTENHKSBT
ZWVkIj4KKzx0PgorQXMgZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0ic2lsa19leGNpdGF0aW9u
X3JlY29uc3RydWN0aW9uIi8+LCBTSUxLIHVzZXMgYQorIGxpbmVhciBjb25ncnVlbnRpYWwgZ2Vu
ZXJhdG9yIChMQ0cpIHRvIGluamVjdCBwc2V1ZG9yYW5kb20gbm9pc2UgaW50byB0aGUKKyBxdWFu
dGl6ZWQgZXhjaXRhdGlvbi4KK1RvIGVuc3VyZSBzeW5jaHJvbml6YXRpb24gb2YgdGhpcyBwcm9j
ZXNzIGJldHdlZW4gdGhlIGVuY29kZXIgYW5kIGRlY29kZXIsIGVhY2gKKyBTSUxLIGZyYW1lIHN0
b3JlcyBhIDItYml0IHNlZWQgYWZ0ZXIgdGhlIExUUCBwYXJhbWV0ZXJzIChpZiBhbnkpLgorVGhl
IGVuY29kZXIgbWF5IGNvbnNpZGVyIHRoZSBjaG9pY2Ugb2Ygc2VlZCBkdXJpbmcgcXVhbnRpemF0
aW9uLCBhbmQgdGhlCisgZmxleGliaWxpdHkgb2YgdGhpcyBjaG9pY2UgbGV0cyBpdCByZWR1Y2Ug
ZGlzdG9ydGlvbiwgaGVscGluZyB0byBwYXkgZm9yIHRoZQorIGJpdCBjb3N0IHJlcXVpcmVkIHRv
IHNpZ25hbCBpdC4KK1RoZSBkZWNvZGVyIHJlYWRzIHRoZSBzZWVkIHVzaW5nIHRoZSB1bmlmb3Jt
IDQtZW50cnkgUERGIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX3NlZWRfcGRmIi8+LCB5aWVsZGlu
ZyBhIHZhbHVlIGJldHdlZW4gMCBhbmQgMywgaW5jbHVzaXZlLgorPC90PgorCis8dGV4dHRhYmxl
IGFuY2hvcj0ic2lsa19zZWVkX3BkZiIKKyB0aXRsZT0iUERGIGZvciBMQ0cgU2VlZCI+Cis8dHRj
b2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz57NjQsIDY0LCA2NCwgNjR9LzI1NjwvYz4K
KzwvdGV4dHRhYmxlPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19leGNp
dGF0aW9uIiB0b2M9ImluY2x1ZGUiIHRpdGxlPSJFeGNpdGF0aW9uIj4KKzx0PgorU0lMSyBjb2Rl
cyB0aGUgZXhjaXRhdGlvbiB1c2luZyBhIG1vZGlmaWVkIHZlcnNpb24gb2YgdGhlIFB5cmFtaWQg
VmVjdG9yCisgUXVhbnRpemF0aW9uIChQVlEpIGNvZGVib29rIDx4cmVmIHRhcmdldD0iUFZRIi8+
LgorVGhlIFBWUSBjb2RlYm9vayBpcyBkZXNpZ25lZCBmb3IgTGFwbGFjZS1kaXN0cmlidXRlZCB2
YWx1ZXMgYW5kIGNvbnNpc3RzIG9mIGFsbAorIHN1bXMgb2YgSyBzaWduZWQsIHVuaXQgcHVsc2Vz
IGluIGEgdmVjdG9yIG9mIGRpbWVuc2lvbiBOLCB3aGVyZSB0d28gcHVsc2VzIGF0CisgdGhlIHNh
bWUgcG9zaXRpb24gYXJlIHJlcXVpcmVkIHRvIGhhdmUgdGhlIHNhbWUgc2lnbi4KK1RodXMgdGhl
IGNvZGVib29rIGluY2x1ZGVzIGFsbCBpbnRlZ2VyIGNvZGV2ZWN0b3JzIHkgb2YgZGltZW5zaW9u
IE4gdGhhdAorIHNhdGlzZnkKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGln
bj0iY2VudGVyIj48IVtDREFUQVsKK04tMQorX18KK1wgIGFicyh5W2pdKSA9IEsgLgorL18KK2o9
MAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitVbmxpa2UgcmVndWxhciBQVlEsIFNJTEsgdXNl
cyBhIHZhcmlhYmxlLWxlbmd0aCwgcmF0aGVyIHRoYW4gZml4ZWQtbGVuZ3RoLAorIGVuY29kaW5n
LgorVGhpcyBlbmNvZGluZyBpcyBiZXR0ZXIgc3VpdGVkIHRvIHRoZSBtb3JlIEdhdXNzaWFuLWxp
a2UgZGlzdHJpYnV0aW9uIG9mIHRoZQorIGNvZWZmaWNpZW50IG1hZ25pdHVkZXMgYW5kIHRoZSBu
b24tdW5pZm9ybSBkaXN0cmlidXRpb24gb2YgdGhlaXIgc2lnbnMgKGNhdXNlZAorIGJ5IHRoZSBx
dWFudGl6YXRpb24gb2Zmc2V0IGRlc2NyaWJlZCBiZWxvdykuCitTSUxLIGFsc28gaGFuZGxlcyBs
YXJnZSBjb2RlYm9va3MgYnkgY29kaW5nIHRoZSBsZWFzdCBzaWduaWZpY2FudCBiaXRzIChMU0Jz
KQorIG9mIGVhY2ggY29lZmZpY2llbnQgZGlyZWN0bHkuCitUaGlzIGFkZHMgYSBzbWFsbCBjb2Rp
bmcgZWZmaWNpZW5jeSBsb3NzLCBidXQgZ3JlYXRseSByZWR1Y2VzIHRoZSBjb21wdXRhdGlvbgor
IHRpbWUgYW5kIFJPTSBzaXplIHJlcXVpcmVkIGZvciBkZWNvZGluZywgYXMgaW1wbGVtZW50ZWQg
aW4KKyBzaWxrX2RlY29kZV9wdWxzZXMoKSAoZGVjb2RlX3B1bHNlcy5jKS4KKzwvdD4KKworPHQ+
CitTSUxLIGZpeGVzIHRoZSBkaW1lbnNpb24gb2YgdGhlIGNvZGVib29rIHRvIE4mbmJzcDs9Jm5i
c3A7MTYuCitUaGUgZXhjaXRhdGlvbiBpcyBtYWRlIHVwIG9mIGEgbnVtYmVyIG9mICJzaGVsbCBi
bG9ja3MiLCBlYWNoIDE2IHNhbXBsZXMgaW4KKyBzaXplLgorPHhyZWYgdGFyZ2V0PSJzaWxrX3No
ZWxsX2Jsb2NrX3RhYmxlIi8+IGxpc3RzIHRoZSBudW1iZXIgb2Ygc2hlbGwgYmxvY2tzCisgcmVx
dWlyZWQgZm9yIGEgU0lMSyBmcmFtZSBmb3IgZWFjaCBwb3NzaWJsZSBhdWRpbyBiYW5kd2lkdGgg
YW5kIGZyYW1lIHNpemUuCisxMCZuYnNwO21zIE1CIGZyYW1lcyBub21pbmFsbHkgY29udGFpbiAx
MjAmbmJzcDtzYW1wbGVzICgxMCZuYnNwO21zIGF0CisgMTImbmJzcDtrSHopLCB3aGljaCBpcyBu
b3QgYSBtdWx0aXBsZSBvZiAxNi4KK1RoaXMgaXMgaGFuZGxlZCBieSBjb2RpbmcgOCBzaGVsbCBi
bG9ja3MgKDEyOCBzYW1wbGVzKSBhbmQgZGlzY2FyZGluZyB0aGUgZmluYWwKKyA4IHNhbXBsZXMg
b2YgdGhlIGxhc3QgYmxvY2suCitUaGUgZGVjb2RlciBjb250YWlucyBubyBzcGVjaWFsIGNhc2Ug
dGhhdCBwcmV2ZW50cyBhbiBlbmNvZGVyIGZyb20gcGxhY2luZworIHB1bHNlcyBpbiB0aGVzZSBz
YW1wbGVzLCBhbmQgdGhleSBtdXN0IGJlIGNvcnJlY3RseSBwYXJzZWQgZnJvbSB0aGUgYml0c3Ry
ZWFtCisgaWYgcHJlc2VudCwgYnV0IHRoZXkgYXJlIG90aGVyd2lzZSBpZ25vcmVkLgorPC90Pgor
Cis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19zaGVsbF9ibG9ja190YWJsZSIKKyB0aXRsZT0iTnVt
YmVyIG9mIFNoZWxsIEJsb2NrcyBQZXIgU0lMSyBGcmFtZSI+Cis8dHRjb2w+QXVkaW8gQmFuZHdp
ZHRoPC90dGNvbD4KKzx0dGNvbD5GcmFtZSBTaXplPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmln
aHQiPk51bWJlciBvZiBTaGVsbCBCbG9ja3M8L3R0Y29sPgorPGM+TkI8L2M+IDxjPjEwJm5ic3A7
bXM8L2M+ICA8Yz41PC9jPgorPGM+TUI8L2M+IDxjPjEwJm5ic3A7bXM8L2M+ICA8Yz44PC9jPgor
PGM+V0I8L2M+IDxjPjEwJm5ic3A7bXM8L2M+IDxjPjEwPC9jPgorPGM+TkI8L2M+IDxjPjIwJm5i
c3A7bXM8L2M+IDxjPjEwPC9jPgorPGM+TUI8L2M+IDxjPjIwJm5ic3A7bXM8L2M+IDxjPjE1PC9j
PgorPGM+V0I8L2M+IDxjPjIwJm5ic3A7bXM8L2M+IDxjPjIwPC9jPgorPC90ZXh0dGFibGU+CisK
KzxzZWN0aW9uIGFuY2hvcj0ic2lsa19yYXRlX2xldmVsIiB0aXRsZT0iUmF0ZSBMZXZlbCI+Cis8
dD4KK1RoZSBmaXJzdCBzeW1ib2wgaW4gdGhlIGV4Y2l0YXRpb24gaXMgYSAicmF0ZSBsZXZlbCIs
IHdoaWNoIGlzIGFuIGluZGV4IGZyb20gMAorIHRvIDgsIGluY2x1c2l2ZSwgY29kZWQgdXNpbmcg
dGhlIFBERiBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfcmF0ZV9sZXZlbF9wZGZzIi8+CisgY29ycmVz
cG9uZGluZyB0byB0aGUgc2lnbmFsIHR5cGUgb2YgdGhlIGN1cnJlbnQgZnJhbWUgKGZyb20KKyA8
eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWVfdHlwZSIvPikuCitUaGUgcmF0ZSBsZXZlbCBzZWxlY3Rz
IHRoZSBQREYgdXNlZCB0byBkZWNvZGUgdGhlIG51bWJlciBvZiBwdWxzZXMgaW4KKyB0aGUgaW5k
aXZpZHVhbCBzaGVsbCBibG9ja3MuCitJdCBkb2VzIG5vdCBkaXJlY3RseSBjb252ZXkgYW55IGlu
Zm9ybWF0aW9uIGFib3V0IHRoZSBiaXRyYXRlIG9yIHRoZSBudW1iZXIgb2YKKyBwdWxzZXMgaXRz
ZWxmLCBidXQgbWVyZWx5IGNoYW5nZXMgdGhlIHByb2JhYmlsaXR5IG9mIHRoZSBzeW1ib2xzIGlu
CisgPHhyZWYgdGFyZ2V0PSJzaWxrX3B1bHNlX2NvdW50cyIvPi4KK0xldmVsJm5ic3A7MCBwcm92
aWRlcyBhIG1vcmUgZWZmaWNpZW50IGVuY29kaW5nIGF0IGxvdyByYXRlcyBnZW5lcmFsbHksIGFu
ZAorIGxldmVsJm5ic3A7OCBwcm92aWRlcyBhIG1vcmUgZWZmaWNpZW50IGVuY29kaW5nIGF0IGhp
Z2ggcmF0ZXMgZ2VuZXJhbGx5LAorIHRob3VnaCB0aGUgbW9zdCBlZmZpY2llbnQgbGV2ZWwgZm9y
IGEgcGFydGljdWxhciBTSUxLIGZyYW1lIG1heSBkZXBlbmQgb24gdGhlCisgZXhhY3QgZGlzdHJp
YnV0aW9uIG9mIHRoZSBjb2RlZCBzeW1ib2xzLgorQW4gZW5jb2RlciBzaG91bGQsIGJ1dCBpcyBu
b3QgcmVxdWlyZWQgdG8sIHVzZSB0aGUgbW9zdCBlZmZpY2llbnQgcmF0ZSBsZXZlbC4KKzwvdD4K
KworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfcmF0ZV9sZXZlbF9wZGZzIgorIHRpdGxlPSJQREZz
IGZvciB0aGUgUmF0ZSBMZXZlbCI+Cis8dHRjb2w+U2lnbmFsIFR5cGU8L3R0Y29sPgorPHR0Y29s
PlBERjwvdHRjb2w+Cis8Yz5JbmFjdGl2ZSBvciBVbnZvaWNlZDwvYz4KKzxjPnsxNSwgNTEsIDEy
LCA0NiwgNDUsIDEzLCAzMywgMjcsIDE0fS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+Cis8Yz57MzMs
IDMwLCAzNiwgMTcsIDM0LCA0OSwgMTgsIDIxLCAxOH0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisK
Kzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX3B1bHNlX2NvdW50cyIgdGl0bGU9
IlB1bHNlcyBQZXIgU2hlbGwgQmxvY2siPgorPHQ+CitUaGUgdG90YWwgbnVtYmVyIG9mIHB1bHNl
cyBpbiBlYWNoIG9mIHRoZSBzaGVsbCBibG9ja3MgZm9sbG93cyB0aGUgcmF0ZSBsZXZlbC4KK1Ro
ZSBwdWxzZSBjb3VudHMgZm9yIGFsbCBvZiB0aGUgc2hlbGwgYmxvY2tzIGFyZSBjb2RlZCBjb25z
ZWN1dGl2ZWx5LCBiZWZvcmUKKyB0aGUgY29udGVudCBvZiBhbnkgb2YgdGhlIGJsb2Nrcy4KK0Vh
Y2ggYmxvY2sgbWF5IGhhdmUgYW55d2hlcmUgZnJvbSAwIHRvIDE2IHB1bHNlcywgaW5jbHVzaXZl
LCBjb2RlZCB1c2luZyB0aGUKKyAxOC1lbnRyeSBQREYgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX3B1
bHNlX2NvdW50X3BkZnMiLz4gY29ycmVzcG9uZGluZyB0byB0aGUKKyByYXRlIGxldmVsIGZyb20g
PHhyZWYgdGFyZ2V0PSJzaWxrX3JhdGVfbGV2ZWwiLz4uCitUaGUgc3BlY2lhbCB2YWx1ZSAxNyBp
bmRpY2F0ZXMgdGhhdCB0aGlzIGJsb2NrIGhhcyBvbmUgb3IgbW9yZSBhZGRpdGlvbmFsCisgTFNC
cyB0byBkZWNvZGUgZm9yIGVhY2ggY29lZmZpY2llbnQuCitJZiB0aGUgZGVjb2RlciBlbmNvdW50
ZXJzIHRoaXMgdmFsdWUsIGl0IGRlY29kZXMgYW5vdGhlciB2YWx1ZSBmb3IgdGhlIGFjdHVhbAor
IHB1bHNlIGNvdW50IG9mIHRoZSBibG9jaywgYnV0IHVzZXMgdGhlIFBERiBjb3JyZXNwb25kaW5n
IHRvIHRoZSBzcGVjaWFsIHJhdGUKKyBsZXZlbCZuYnNwOzkgaW5zdGVhZCBvZiB0aGUgbm9ybWFs
IHJhdGUgbGV2ZWwuCitUaGlzIHByb2Nlc3MgcmVwZWF0cyB1bnRpbCB0aGUgZGVjb2RlciByZWFk
cyBhIHZhbHVlIGxlc3MgdGhhbiAxNywgYW5kIGl0IHRoZW4KKyBzZXRzIHRoZSBudW1iZXIgb2Yg
ZXh0cmEgTFNCcyB1c2VkIHRvIHRoZSBudW1iZXIgb2YgMTcncyBkZWNvZGVkIGZvciB0aGF0Cisg
YmxvY2suCitJZiBpdCByZWFkcyB0aGUgdmFsdWUgMTcgdGVuIHRpbWVzLCB0aGVuIHRoZSBuZXh0
IGl0ZXJhdGlvbiB1c2VzIHRoZSBzcGVjaWFsCisgcmF0ZSBsZXZlbCZuYnNwOzEwIGluc3RlYWQg
b2YgOS4KK1RoZSBwcm9iYWJpbGl0eSBvZiBkZWNvZGluZyBhIDE3IHdoZW4gdXNpbmcgdGhlIFBE
RiBmb3IgcmF0ZSBsZXZlbCZuYnNwOzEwIGlzCisgemVybywgZW5zdXJpbmcgdGhhdCB0aGUgbnVt
YmVyIG9mIExTQnMgZm9yIGEgYmxvY2sgd2lsbCBub3QgZXhjZWVkIDEwLgorVGhlIGN1bXVsYXRp
dmUgZGlzdHJpYnV0aW9uIGZvciByYXRlIGxldmVsJm5ic3A7MTAgaXMganVzdCBhIHNoaWZ0ZWQg
dmVyc2lvbiBvZgorIHRoYXQgZm9yIDkgYW5kIHRodXMgZG9lcyBub3QgcmVxdWlyZSBhbnkgYWRk
aXRpb25hbCBzdG9yYWdlLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19wdWxzZV9j
b3VudF9wZGZzIgorIHRpdGxlPSJQREZzIGZvciB0aGUgUHVsc2UgQ291bnQiPgorPHR0Y29sPlJh
dGUgTGV2ZWw8L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz4wPC9jPgorPGM+ezEzMSwg
NzQsIDI1LCA4LCAzLCAzLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxfS8yNTY8
L2M+Cis8Yz4xPC9jPgorPGM+ezU4LCA5MywgNjAsIDIzLCA3LCAzLCAxLCAxLCAxLCAxLCAxLCAx
LCAxLCAxLCAxLCAxLCAxLCAxfS8yNTY8L2M+Cis8Yz4yPC9jPgorPGM+ezQzLCA1MSwgNDYsIDMz
LCAyNCwgMTYsIDExLCA4LCA2LCAzLCAzLCAzLCAyLCAxLCAxLCAyLCAxLCAyfS8yNTY8L2M+Cis8
Yz4zPC9jPgorPGM+ezE3LCA1MiwgNzEsIDU3LCAzMSwgMTIsIDUsIDEsIDEsIDEsIDEsIDEsIDEs
IDEsIDEsIDEsIDEsIDF9LzI1NjwvYz4KKzxjPjQ8L2M+Cis8Yz57NiwgMjEsIDQxLCA1MywgNDks
IDM1LCAyMSwgMTEsIDYsIDMsIDIsIDIsIDEsIDEsIDEsIDEsIDEsIDF9LzI1NjwvYz4KKzxjPjU8
L2M+Cis8Yz57NywgMTQsIDIyLCAyOCwgMjksIDI4LCAyNSwgMjAsIDE3LCAxMywgMTEsIDksIDcs
IDUsIDQsIDQsIDMsIDEwfS8yNTY8L2M+Cis8Yz42PC9jPgorPGM+ezIsIDUsIDE0LCAyOSwgNDIs
IDQ2LCA0MSwgMzEsIDE5LCAxMSwgNiwgMywgMiwgMSwgMSwgMSwgMSwgMX0vMjU2PC9jPgorPGM+
NzwvYz4KKzxjPnsxLCAyLCA0LCAxMCwgMTksIDI5LCAzNSwgMzcsIDM0LCAyOCwgMjAsIDE0LCA4
LCA1LCA0LCAyLCAyLCAyfS8yNTY8L2M+Cis8Yz44PC9jPgorPGM+ezEsIDIsIDIsIDUsIDksIDE0
LCAyMCwgMjQsIDI3LCAyOCwgMjYsIDIzLCAyMCwgMTUsIDExLCA4LCA2LCAxNX0vMjU2PC9jPgor
PGM+OTwvYz4KKzxjPnsxLCAxLCAxLCA2LCAyNywgNTgsIDU2LCAzOSwgMjUsIDE0LCAxMCwgNiwg
MywgMywgMiwgMSwgMSwgMn0vMjU2PC9jPgorPGM+MTA8L2M+Cis8Yz57MiwgMSwgNiwgMjcsIDU4
LCA1NiwgMzksIDI1LCAxNCwgMTAsIDYsIDMsIDMsIDIsIDEsIDEsIDIsIDB9LzI1NjwvYz4KKzwv
dGV4dHRhYmxlPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19wdWxzZV9s
b2NhdGlvbnMiIHRpdGxlPSJQdWxzZSBMb2NhdGlvbiBEZWNvZGluZyI+Cis8dD4KK1RoZSBsb2Nh
dGlvbnMgb2YgdGhlIHB1bHNlcyBpbiBlYWNoIHNoZWxsIGJsb2NrIGZvbGxvdyB0aGUgcHVsc2Ug
Y291bnRzLAorIGFzIGRlY29kZWQgYnkgc2lsa19zaGVsbF9kZWNvZGVyKCkgKHNoZWxsX2NvZGVy
LmMpLgorQXMgd2l0aCB0aGUgcHVsc2UgY291bnRzLCB0aGVzZSBsb2NhdGlvbnMgYXJlIGNvZGVk
IGZvciBhbGwgdGhlIHNoZWxsIGJsb2NrcworIGJlZm9yZSBhbnkgb2YgdGhlIHJlbWFpbmluZyBp
bmZvcm1hdGlvbiBmb3IgZWFjaCBibG9jay4KK1VubGlrZSBtYW55IG90aGVyIGNvZGVjcywgU0lM
SyBwbGFjZXMgbm8gcmVzdHJpY3Rpb24gb24gdGhlIGRpc3RyaWJ1dGlvbiBvZgorIHB1bHNlcyB3
aXRoaW4gYSBzaGVsbCBibG9jay4KK0FsbCBvZiB0aGUgcHVsc2VzIG1heSBiZSBwbGFjZWQgaW4g
YSBzaW5nbGUgbG9jYXRpb24sIG9yIGVhY2ggb25lIGluIGEgdW5pcXVlCisgbG9jYXRpb24sIG9y
IGFueXRoaW5nIGluIGJldHdlZW4uCis8L3Q+CisKKzx0PgorVGhlIGxvY2F0aW9uIG9mIHB1bHNl
cyBpcyBjb2RlZCBieSByZWN1cnNpdmVseSBwYXJ0aXRpb25pbmcgZWFjaCBibG9jayBpbnRvCisg
aGFsdmVzLCBhbmQgY29kaW5nIGhvdyBtYW55IHB1bHNlcyBmYWxsIG9uIHRoZSBsZWZ0IHNpZGUg
b2YgdGhlIHNwbGl0LgorQWxsIHJlbWFpbmluZyBwdWxzZXMgbXVzdCBmYWxsIG9uIHRoZSByaWdo
dCBzaWRlIG9mIHRoZSBzcGxpdC4KK1RoZSBwcm9jZXNzIHRoZW4gcmVjdXJzZXMgaW50byB0aGUg
bGVmdCBoYWxmLCBhbmQgYWZ0ZXIgdGhhdCByZXR1cm5zLCB0aGUKKyByaWdodCBoYWxmIChwcmVv
cmRlciB0cmF2ZXJzYWwpLgorVGhlIFBERiB0byB1c2UgaXMgY2hvc2VuIGJ5IHRoZSBzaXplIG9m
IHRoZSBjdXJyZW50IHBhcnRpdGlvbiAoMTYsIDgsIDQsIG9yIDIpCisgYW5kIHRoZSBudW1iZXIg
b2YgcHVsc2VzIGluIHRoZSBwYXJ0aXRpb24gKDEgdG8gMTYsIGluY2x1c2l2ZSkuCitUYWJsZXMm
bmJzcDs8eHJlZiBmb3JtYXQ9ImNvdW50ZXIiIHRhcmdldD0ic2lsa19zaGVsbF9jb2RlM19wZGZz
Ii8+CisgdGhyb3VnaCZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX3No
ZWxsX2NvZGUwX3BkZnMiLz4gbGlzdCB0aGUKKyBQREZzIHVzZWQgZm9yIGVhY2ggcGFydGl0aW9u
IHNpemUgYW5kIHB1bHNlIGNvdW50LgorVGhpcyBwcm9jZXNzIHNraXBzIHBhcnRpdGlvbnMgd2l0
aG91dCBhbnkgcHVsc2VzLCBpLmUuLCB3aGVyZSB0aGUgaW5pdGlhbCBwdWxzZQorIGNvdW50IGZy
b20gPHhyZWYgdGFyZ2V0PSJzaWxrX3B1bHNlX2NvdW50cyIvPiB3YXMgemVybywgb3Igd2hlcmUg
dGhlIHNwbGl0IGluCisgdGhlIHByaW9yIGxldmVsIGluZGljYXRlZCB0aGF0IGFsbCBvZiB0aGUg
cHVsc2VzIGZlbGwgb24gdGhlIG90aGVyIHNpZGUuCitUaGVzZSBwYXJ0aXRpb25zIGhhdmUgbm90
aGluZyB0byBjb2RlLCBzbyB0aGV5IHJlcXVpcmUgbm8gUERGLgorPC90PgorCis8dGV4dHRhYmxl
IGFuY2hvcj0ic2lsa19zaGVsbF9jb2RlM19wZGZzIgorIHRpdGxlPSJQREZzIGZvciBQdWxzZSBD
b3VudCBTcGxpdCwgMTYgU2FtcGxlIFBhcnRpdGlvbnMiPgorPHR0Y29sPlB1bHNlIENvdW50PC90
dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29sPgorIDxjPjE8L2M+IDxjPnsxMjYsIDEzMH0vMjU2PC9j
PgorIDxjPjI8L2M+IDxjPns1NiwgMTQyLCA1OH0vMjU2PC9jPgorIDxjPjM8L2M+IDxjPnsyNSwg
MTAxLCAxMDQsIDI2fS8yNTY8L2M+CisgPGM+NDwvYz4gPGM+ezEyLCA2MCwgMTA4LCA2NCwgMTJ9
LzI1NjwvYz4KKyA8Yz41PC9jPiA8Yz57NywgMzUsIDg0LCA4NywgMzcsIDZ9LzI1NjwvYz4KKyA8
Yz42PC9jPiA8Yz57NCwgMjAsIDU5LCA4NiwgNjMsIDIxLCAzfS8yNTY8L2M+CisgPGM+NzwvYz4g
PGM+ezMsIDEyLCAzOCwgNzIsIDc1LCA0MiwgMTIsIDJ9LzI1NjwvYz4KKyA8Yz44PC9jPiA8Yz57
MiwgOCwgMjUsIDU0LCA3MywgNTksIDI3LCA3LCAxfS8yNTY8L2M+CisgPGM+OTwvYz4gPGM+ezIs
IDUsIDE3LCAzOSwgNjMsIDY1LCA0MiwgMTgsIDQsIDF9LzI1NjwvYz4KKzxjPjEwPC9jPiA8Yz57
MSwgNCwgMTIsIDI4LCA0OSwgNjMsIDU0LCAzMCwgMTEsIDMsIDF9LzI1NjwvYz4KKzxjPjExPC9j
PiA8Yz57MSwgNCwgOCwgMjAsIDM3LCA1NSwgNTcsIDQxLCAyMiwgOCwgMiwgMX0vMjU2PC9jPgor
PGM+MTI8L2M+IDxjPnsxLCAzLCA3LCAxNSwgMjgsIDQ0LCA1MywgNDgsIDMzLCAxNiwgNiwgMSwg
MX0vMjU2PC9jPgorPGM+MTM8L2M+IDxjPnsxLCAyLCA2LCAxMiwgMjEsIDM1LCA0NywgNDgsIDQw
LCAyNSwgMTIsIDUsIDEsIDF9LzI1NjwvYz4KKzxjPjE0PC9jPiA8Yz57MSwgMSwgNCwgMTAsIDE3
LCAyNywgMzcsIDQ3LCA0MywgMzMsIDIxLCA5LCA0LCAxLCAxfS8yNTY8L2M+Cis8Yz4xNTwvYz4g
PGM+ezEsIDEsIDEsIDgsIDE0LCAyMiwgMzMsIDQwLCA0MywgMzgsIDI4LCAxNiwgOCwgMSwgMSwg
MX0vMjU2PC9jPgorPGM+MTY8L2M+IDxjPnsxLCAxLCAxLCAxLCAxMywgMTgsIDI3LCAzNiwgNDEs
IDQxLCAzNCwgMjQsIDE0LCAxLCAxLCAxLCAxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHRl
eHR0YWJsZSBhbmNob3I9InNpbGtfc2hlbGxfY29kZTJfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3Ig
UHVsc2UgQ291bnQgU3BsaXQsIDggU2FtcGxlIFBhcnRpdGlvbnMiPgorPHR0Y29sPlB1bHNlIENv
dW50PC90dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29sPgorIDxjPjE8L2M+IDxjPnsxMjcsIDEyOX0v
MjU2PC9jPgorIDxjPjI8L2M+IDxjPns1MywgMTQ5LCA1NH0vMjU2PC9jPgorIDxjPjM8L2M+IDxj
PnsyMiwgMTA1LCAxMDYsIDIzfS8yNTY8L2M+CisgPGM+NDwvYz4gPGM+ezExLCA2MSwgMTExLCA2
MywgMTB9LzI1NjwvYz4KKyA8Yz41PC9jPiA8Yz57NiwgMzUsIDg2LCA4OCwgMzYsIDV9LzI1Njwv
Yz4KKyA8Yz42PC9jPiA8Yz57NCwgMjAsIDU5LCA4NywgNjIsIDIxLCAzfS8yNTY8L2M+CisgPGM+
NzwvYz4gPGM+ezMsIDEzLCA0MCwgNzEsIDczLCA0MSwgMTMsIDJ9LzI1NjwvYz4KKyA8Yz44PC9j
PiA8Yz57MywgOSwgMjcsIDUzLCA3MCwgNTYsIDI4LCA5LCAxfS8yNTY8L2M+CisgPGM+OTwvYz4g
PGM+ezMsIDgsIDE5LCAzNywgNTcsIDYxLCA0NCwgMjAsIDYsIDF9LzI1NjwvYz4KKzxjPjEwPC9j
PiA8Yz57MywgNywgMTUsIDI4LCA0NCwgNTQsIDQ5LCAzMywgMTcsIDUsIDF9LzI1NjwvYz4KKzxj
PjExPC9jPiA8Yz57MSwgNywgMTMsIDIyLCAzNCwgNDYsIDQ4LCAzOCwgMjgsIDE0LCA0LCAxfS8y
NTY8L2M+Cis8Yz4xMjwvYz4gPGM+ezEsIDEsIDExLCAyMiwgMjcsIDM1LCA0MiwgNDcsIDMzLCAy
NSwgMTAsIDEsIDF9LzI1NjwvYz4KKzxjPjEzPC9jPiA8Yz57MSwgMSwgNiwgMTQsIDI2LCAzNywg
NDMsIDQzLCAzNywgMjYsIDE0LCA2LCAxLCAxfS8yNTY8L2M+Cis8Yz4xNDwvYz4gPGM+ezEsIDEs
IDQsIDEwLCAyMCwgMzEsIDQwLCA0MiwgNDAsIDMxLCAyMCwgMTAsIDQsIDEsIDF9LzI1NjwvYz4K
KzxjPjE1PC9jPiA8Yz57MSwgMSwgMywgOCwgMTYsIDI2LCAzNSwgMzgsIDM4LCAzNSwgMjYsIDE2
LCA4LCAzLCAxLCAxfS8yNTY8L2M+Cis8Yz4xNjwvYz4gPGM+ezEsIDEsIDIsIDYsIDEyLCAyMSwg
MzAsIDM2LCAzOCwgMzYsIDMwLCAyMSwgMTIsIDYsIDIsIDEsIDF9LzI1NjwvYz4KKzwvdGV4dHRh
YmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19zaGVsbF9jb2RlMV9wZGZzIgorIHRpdGxl
PSJQREZzIGZvciBQdWxzZSBDb3VudCBTcGxpdCwgNCBTYW1wbGUgUGFydGl0aW9ucyI+Cis8dHRj
b2w+UHVsc2UgQ291bnQ8L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+CisgPGM+MTwvYz4gPGM+
ezEyNywgMTI5fS8yNTY8L2M+CisgPGM+MjwvYz4gPGM+ezQ5LCAxNTcsIDUwfS8yNTY8L2M+Cisg
PGM+MzwvYz4gPGM+ezIwLCAxMDcsIDEwOSwgMjB9LzI1NjwvYz4KKyA8Yz40PC9jPiA8Yz57MTEs
IDYwLCAxMTMsIDYyLCAxMH0vMjU2PC9jPgorIDxjPjU8L2M+IDxjPns3LCAzNiwgODQsIDg3LCAz
NiwgNn0vMjU2PC9jPgorIDxjPjY8L2M+IDxjPns2LCAyNCwgNTcsIDgyLCA2MCwgMjMsIDR9LzI1
NjwvYz4KKyA8Yz43PC9jPiA8Yz57NSwgMTgsIDM5LCA2NCwgNjgsIDQyLCAxNiwgNH0vMjU2PC9j
PgorIDxjPjg8L2M+IDxjPns2LCAxNCwgMjksIDQ3LCA2MSwgNTIsIDMwLCAxNCwgM30vMjU2PC9j
PgorIDxjPjk8L2M+IDxjPnsxLCAxNSwgMjMsIDM1LCA1MSwgNTAsIDQwLCAzMCwgMTAsIDF9LzI1
NjwvYz4KKzxjPjEwPC9jPiA8Yz57MSwgMSwgMjEsIDMyLCA0MiwgNTIsIDQ2LCA0MSwgMTgsIDEs
IDF9LzI1NjwvYz4KKzxjPjExPC9jPiA8Yz57MSwgNiwgMTYsIDI3LCAzNiwgNDIsIDQyLCAzNiwg
MjcsIDE2LCA2LCAxfS8yNTY8L2M+Cis8Yz4xMjwvYz4gPGM+ezEsIDUsIDEyLCAyMSwgMzEsIDM4
LCA0MCwgMzgsIDMxLCAyMSwgMTIsIDUsIDF9LzI1NjwvYz4KKzxjPjEzPC9jPiA8Yz57MSwgMywg
OSwgMTcsIDI2LCAzNCwgMzgsIDM4LCAzNCwgMjYsIDE3LCA5LCAzLCAxfS8yNTY8L2M+Cis8Yz4x
NDwvYz4gPGM+ezEsIDMsIDcsIDE0LCAyMiwgMjksIDM0LCAzNiwgMzQsIDI5LCAyMiwgMTQsIDcs
IDMsIDF9LzI1NjwvYz4KKzxjPjE1PC9jPiA8Yz57MSwgMiwgNSwgMTEsIDE4LCAyNSwgMzEsIDM1
LCAzNSwgMzEsIDI1LCAxOCwgMTEsIDUsIDIsIDF9LzI1NjwvYz4KKzxjPjE2PC9jPiA8Yz57MSwg
MSwgNCwgOSwgMTUsIDIxLCAyOCwgMzIsIDM0LCAzMiwgMjgsIDIxLCAxNSwgOSwgNCwgMSwgMX0v
MjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3NoZWxsX2Nv
ZGUwX3BkZnMiCisgdGl0bGU9IlBERnMgZm9yIFB1bHNlIENvdW50IFNwbGl0LCAyIFNhbXBsZSBQ
YXJ0aXRpb25zIj4KKzx0dGNvbD5QdWxzZSBDb3VudDwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNv
bD4KKyA8Yz4xPC9jPiA8Yz57MTI4LCAxMjh9LzI1NjwvYz4KKyA8Yz4yPC9jPiA8Yz57NDIsIDE3
MiwgNDJ9LzI1NjwvYz4KKyA8Yz4zPC9jPiA8Yz57MjEsIDEwNywgMTA3LCAyMX0vMjU2PC9jPgor
IDxjPjQ8L2M+IDxjPnsxMiwgNjAsIDExMiwgNjEsIDExfS8yNTY8L2M+CisgPGM+NTwvYz4gPGM+
ezgsIDM0LCA4NiwgODYsIDM1LCA3fS8yNTY8L2M+CisgPGM+NjwvYz4gPGM+ezgsIDIzLCA1NSwg
OTAsIDU1LCAyMCwgNX0vMjU2PC9jPgorIDxjPjc8L2M+IDxjPns1LCAxNSwgMzgsIDcyLCA3Miwg
MzYsIDE1LCAzfS8yNTY8L2M+CisgPGM+ODwvYz4gPGM+ezYsIDEyLCAyNywgNTIsIDc3LCA0Nywg
MjAsIDEwLCA1fS8yNTY8L2M+CisgPGM+OTwvYz4gPGM+ezYsIDE5LCAyOCwgMzUsIDQwLCA0MCwg
MzUsIDI4LCAxOSwgNn0vMjU2PC9jPgorPGM+MTA8L2M+IDxjPns0LCAxNCwgMjIsIDMxLCAzNywg
NDAsIDM3LCAzMSwgMjIsIDE0LCA0fS8yNTY8L2M+Cis8Yz4xMTwvYz4gPGM+ezMsIDEwLCAxOCwg
MjYsIDMzLCAzOCwgMzgsIDMzLCAyNiwgMTgsIDEwLCAzfS8yNTY8L2M+Cis8Yz4xMjwvYz4gPGM+
ezIsIDgsIDEzLCAyMSwgMjksIDM2LCAzOCwgMzYsIDI5LCAyMSwgMTMsIDgsIDJ9LzI1NjwvYz4K
KzxjPjEzPC9jPiA8Yz57MSwgNSwgMTAsIDE3LCAyNSwgMzIsIDM4LCAzOCwgMzIsIDI1LCAxNywg
MTAsIDUsIDF9LzI1NjwvYz4KKzxjPjE0PC9jPiA8Yz57MSwgNCwgNywgMTMsIDIxLCAyOSwgMzUs
IDM2LCAzNSwgMjksIDIxLCAxMywgNywgNCwgMX0vMjU2PC9jPgorPGM+MTU8L2M+IDxjPnsxLCAy
LCA1LCAxMCwgMTcsIDI1LCAzMiwgMzYsIDM2LCAzMiwgMjUsIDE3LCAxMCwgNSwgMiwgMX0vMjU2
PC9jPgorPGM+MTY8L2M+IDxjPnsxLCAyLCA0LCA3LCAxMywgMjEsIDI4LCAzNCwgMzYsIDM0LCAy
OCwgMjEsIDEzLCA3LCA0LCAyLCAxfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPC9zZWN0aW9u
PgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfc2hlbGxfbHNiIiB0aXRsZT0iTFNCIERlY29kaW5n
Ij4KKzx0PgorQWZ0ZXIgdGhlIGRlY29kZXIgcmVhZHMgdGhlIHB1bHNlIGxvY2F0aW9ucyBmb3Ig
YWxsIGJsb2NrcywgaXQgcmVhZHMgdGhlIExTQnMKKyAoaWYgYW55KSBmb3IgZWFjaCBibG9jayBp
biB0dXJuLgorSW5zaWRlIGVhY2ggYmxvY2ssIGl0IHJlYWRzIGFsbCB0aGUgTFNCcyBmb3IgZWFj
aCBjb2VmZmljaWVudCBpbiB0dXJuLCBldmVuCisgdGhvc2Ugd2hlcmUgbm8gcHVsc2VzIHdlcmUg
YWxsb2NhdGVkLCBiZWZvcmUgcHJvY2VlZGluZyB0byB0aGUgbmV4dCBvbmUuCitGb3IgMTAmbmJz
cDttcyBNQiBmcmFtZXMsIGl0IHJlYWRzIExTQnMgZXZlbiBmb3IgdGhlIGV4dHJhIDgmbmJzcDtz
YW1wbGVzIGluCisgdGhlIGxhc3QgYmxvY2suCitUaGUgTFNCcyBhcmUgY29kZWQgZnJvbSBtb3N0
IHNpZ25pZmljYW50IHRvIGxlYXN0IHNpZ25pZmljYW50LCBhbmQgdGhleSBhbGwgdXNlCisgdGhl
IFBERiBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfc2hlbGxfbHNiX3BkZiIvPi4KKzwvdD4KKworPHRl
eHR0YWJsZSBhbmNob3I9InNpbGtfc2hlbGxfbHNiX3BkZiIgdGl0bGU9IlBERiBmb3IgRXhjaXRh
dGlvbiBMU0JzIj4KKzx0dGNvbD5QREY8L3R0Y29sPgorPGM+ezEzNiwgMTIwfS8yNTY8L2M+Cis8
L3RleHR0YWJsZT4KKworPHQ+CitUaGUgbnVtYmVyIG9mIExTQnMgcmVhZCBmb3IgZWFjaCBjb2Vm
ZmljaWVudCBpbiBhIGJsb2NrIGlzIGRldGVybWluZWQgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtf
cHVsc2VfY291bnRzIi8+LgorVGhlIG1hZ25pdHVkZSBvZiB0aGUgY29lZmZpY2llbnQgaXMgaW5p
dGlhbGx5IGVxdWFsIHRvIHRoZSBudW1iZXIgb2YgcHVsc2VzCisgcGxhY2VkIGF0IHRoYXQgbG9j
YXRpb24gaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX3B1bHNlX2xvY2F0aW9ucyIvPi4KK0FzIGVhY2gg
TFNCIGlzIGRlY29kZWQsIHRoZSBtYWduaXR1ZGUgaXMgZG91YmxlZCwgYW5kIHRoZW4gdGhlIHZh
bHVlIG9mIHRoZSBMU0IKKyBhZGRlZCB0byBpdCwgdG8gb2J0YWluIGFuIHVwZGF0ZWQgbWFnbml0
dWRlLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfc2lnbnMiIHRp
dGxlPSJTaWduIERlY29kaW5nIj4KKzx0PgorQWZ0ZXIgZGVjb2RpbmcgdGhlIHB1bHNlIGxvY2F0
aW9ucyBhbmQgdGhlIExTQnMsIHRoZSBkZWNvZGVyIGtub3dzIHRoZQorIG1hZ25pdHVkZSBvZiBl
YWNoIGNvZWZmaWNpZW50IGluIHRoZSBleGNpdGF0aW9uLgorSXQgdGhlbiBkZWNvZGVzIGEgc2ln
biBmb3IgYWxsIGNvZWZmaWNpZW50cyB3aXRoIGEgbm9uLXplcm8gbWFnbml0dWRlLCB1c2luZwor
IG9uZSBvZiB0aGUgUERGcyBmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19zaWduX3BkZnMiLz4uCitJ
ZiB0aGUgdmFsdWUgZGVjb2RlZCBpcyAwLCB0aGVuIHRoZSBjb2VmZmljaWVudCBtYWduaXR1ZGUg
aXMgbmVnYXRlZC4KK090aGVyd2lzZSwgaXQgcmVtYWlucyBwb3NpdGl2ZS4KKzwvdD4KKworPHQ+
CitUaGUgZGVjb2RlciBjaG9vc2VzIHRoZSBQREYgZm9yIHRoZSBzaWduIGJhc2VkIG9uIHRoZSBz
aWduYWwgdHlwZSBhbmQKKyBxdWFudGl6YXRpb24gb2Zmc2V0IHR5cGUgKGZyb20gPHhyZWYgdGFy
Z2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pIGFuZCB0aGUKKyBudW1iZXIgb2YgcHVsc2VzIGluIHRo
ZSBibG9jayAoZnJvbSA8eHJlZiB0YXJnZXQ9InNpbGtfcHVsc2VfY291bnRzIi8+KS4KK1RoZSBu
dW1iZXIgb2YgcHVsc2VzIGluIHRoZSBibG9jayBkb2VzIG5vdCB0YWtlIGludG8gYWNjb3VudCBh
bnkgTFNCcy4KK01vc3QgUERGcyBhcmUgc2tld2VkIHRvd2FyZHMgbmVnYXRpdmUgc2lnbnMgYmVj
YXVzZSBvZiB0aGUgcXVhbnRpemF0aW9uIG9mZnNldCwKKyBidXQgdGhlIFBERnMgZm9yIHplcm8g
cHVsc2VzIGFyZSBoaWdobHkgc2tld2VkIHRvd2FyZHMgcG9zaXRpdmUgc2lnbnMuCitJZiBhIGJs
b2NrIGNvbnRhaW5zIG1hbnkgcG9zaXRpdmUgY29lZmZpY2llbnRzLCBpdCBpcyBzb21ldGltZXMg
YmVuZWZpY2lhbCB0bworIGNvZGUgaXQgc29sZWx5IHVzaW5nIExTQnMgKGkuZS4sIHdpdGggemVy
byBwdWxzZXMpLCBzaW5jZSB0aGUgZW5jb2RlciBtYXkgYmUKKyBhYmxlIHRvIHNhdmUgZW5vdWdo
IGJpdHMgb24gdGhlIHNpZ25zIHRvIGp1c3RpZnkgdGhlIGxlc3MgZWZmaWNpZW50CisgY29lZmZp
Y2llbnQgbWFnbml0dWRlIGVuY29kaW5nLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2ls
a19zaWduX3BkZnMiCisgdGl0bGU9IlBERnMgZm9yIEV4Y2l0YXRpb24gU2lnbnMiPgorPHR0Y29s
PlNpZ25hbCBUeXBlPC90dGNvbD4KKzx0dGNvbD5RdWFudGl6YXRpb24gT2Zmc2V0IFR5cGU8L3R0
Y29sPgorPHR0Y29sPlB1bHNlIENvdW50PC90dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29sPgorPGM+
SW5hY3RpdmU8L2M+IDxjPkxvdzwvYz4gIDxjPjA8L2M+ICAgICAgICAgPGM+ezIsIDI1NH0vMjU2
PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkxvdzwvYz4gIDxjPjE8L2M+ICAgICAgICAgPGM+ezIw
NywgNDl9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4yPC9jPiAgICAg
ICAgIDxjPnsxODksIDY3fS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+TG93PC9jPiAgPGM+
MzwvYz4gICAgICAgICA8Yz57MTc5LCA3N30vMjU2PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkxv
dzwvYz4gIDxjPjQ8L2M+ICAgICAgICAgPGM+ezE3NCwgODJ9LzI1NjwvYz4KKzxjPkluYWN0aXZl
PC9jPiA8Yz5Mb3c8L2M+ICA8Yz41PC9jPiAgICAgICAgIDxjPnsxNjMsIDkzfS8yNTY8L2M+Cis8
Yz5JbmFjdGl2ZTwvYz4gPGM+TG93PC9jPiAgPGM+NiBvciBtb3JlPC9jPiA8Yz57MTU3LCA5OX0v
MjU2PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkhpZ2g8L2M+IDxjPjA8L2M+ICAgICAgICAgPGM+
ezU4LCAxOTh9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5IaWdoPC9jPiA8Yz4xPC9jPiAg
ICAgICAgIDxjPnsyNDUsIDExfS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+SGlnaDwvYz4g
PGM+MjwvYz4gICAgICAgICA8Yz57MjM4LCAxOH0vMjU2PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxj
PkhpZ2g8L2M+IDxjPjM8L2M+ICAgICAgICAgPGM+ezIzMiwgMjR9LzI1NjwvYz4KKzxjPkluYWN0
aXZlPC9jPiA8Yz5IaWdoPC9jPiA8Yz40PC9jPiAgICAgICAgIDxjPnsyMjUsIDMxfS8yNTY8L2M+
Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+SGlnaDwvYz4gPGM+NTwvYz4gICAgICAgICA8Yz57MjIwLCAz
Nn0vMjU2PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkhpZ2g8L2M+IDxjPjYgb3IgbW9yZTwvYz4g
PGM+ezIxMSwgNDV9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4wPC9j
PiAgICAgICAgIDxjPnsxLCAyNTV9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5Mb3c8L2M+
ICA8Yz4xPC9jPiAgICAgICAgIDxjPnsyMTAsIDQ2fS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4g
PGM+TG93PC9jPiAgPGM+MjwvYz4gICAgICAgICA8Yz57MTkwLCA2Nn0vMjU2PC9jPgorPGM+VW52
b2ljZWQ8L2M+IDxjPkxvdzwvYz4gIDxjPjM8L2M+ICAgICAgICAgPGM+ezE3OCwgNzh9LzI1Njwv
Yz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5Mb3c8L2M+ICA8Yz40PC9jPiAgICAgICAgIDxjPnsxNjks
IDg3fS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+TG93PC9jPiAgPGM+NTwvYz4gICAgICAg
ICA8Yz57MTYyLCA5NH0vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkxvdzwvYz4gIDxjPjYg
b3IgbW9yZTwvYz4gPGM+ezE1MiwgMTA0fS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+SGln
aDwvYz4gPGM+MDwvYz4gICAgICAgICA8Yz57NDgsIDIwOH0vMjU2PC9jPgorPGM+VW52b2ljZWQ8
L2M+IDxjPkhpZ2g8L2M+IDxjPjE8L2M+ICAgICAgICAgPGM+ezI0MiwgMTR9LzI1NjwvYz4KKzxj
PlVudm9pY2VkPC9jPiA8Yz5IaWdoPC9jPiA8Yz4yPC9jPiAgICAgICAgIDxjPnsyMzUsIDIxfS8y
NTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+SGlnaDwvYz4gPGM+MzwvYz4gICAgICAgICA8Yz57
MjI0LCAzMn0vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkhpZ2g8L2M+IDxjPjQ8L2M+ICAg
ICAgICAgPGM+ezIxNCwgNDJ9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5IaWdoPC9jPiA8
Yz41PC9jPiAgICAgICAgIDxjPnsyMDUsIDUxfS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+
SGlnaDwvYz4gPGM+NiBvciBtb3JlPC9jPiA8Yz57MTkwLCA2Nn0vMjU2PC9jPgorPGM+Vm9pY2Vk
PC9jPiAgIDxjPkxvdzwvYz4gIDxjPjA8L2M+ICAgICAgICAgPGM+ezEsIDI1NX0vMjU2PC9jPgor
PGM+Vm9pY2VkPC9jPiAgIDxjPkxvdzwvYz4gIDxjPjE8L2M+ICAgICAgICAgPGM+ezE2MiwgOTR9
LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICA8Yz4yPC9jPiAgICAgICAgIDxj
PnsxNTIsIDEwNH0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkxvdzwvYz4gIDxjPjM8L2M+
ICAgICAgICAgPGM+ezE0NywgMTA5fS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+TG93PC9j
PiAgPGM+NDwvYz4gICAgICAgICA8Yz57MTQ0LCAxMTJ9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4g
ICA8Yz5Mb3c8L2M+ICA8Yz41PC9jPiAgICAgICAgIDxjPnsxNDEsIDExNX0vMjU2PC9jPgorPGM+
Vm9pY2VkPC9jPiAgIDxjPkxvdzwvYz4gIDxjPjYgb3IgbW9yZTwvYz4gPGM+ezEzOCwgMTE4fS8y
NTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+SGlnaDwvYz4gPGM+MDwvYz4gICAgICAgICA8Yz57
OCwgMjQ4fS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+SGlnaDwvYz4gPGM+MTwvYz4gICAg
ICAgICA8Yz57MjAzLCA1M30vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+IDxj
PjI8L2M+ICAgICAgICAgPGM+ezE4NywgNjl9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5I
aWdoPC9jPiA8Yz4zPC9jPiAgICAgICAgIDxjPnsxNzYsIDgwfS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8
L2M+ICAgPGM+SGlnaDwvYz4gPGM+NDwvYz4gICAgICAgICA8Yz57MTY4LCA4OH0vMjU2PC9jPgor
PGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+IDxjPjU8L2M+ICAgICAgICAgPGM+ezE2MSwgOTV9
LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5IaWdoPC9jPiA8Yz42IG9yIG1vcmU8L2M+IDxj
PnsxNTQsIDEwMn0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rp
b24gYW5jaG9yPSJzaWxrX2V4Y2l0YXRpb25fcmVjb25zdHJ1Y3Rpb24iCisgdGl0bGU9IlJlY29u
c3RydWN0aW5nIHRoZSBFeGNpdGF0aW9uIj4KKworPHQ+CitBZnRlciB0aGUgc2lnbnMgaGF2ZSBi
ZWVuIHJlYWQsIHRoZXJlIGlzIGVub3VnaCBpbmZvcm1hdGlvbiB0byByZWNvbnN0cnVjdCB0aGUK
KyBjb21wbGV0ZSBleGNpdGF0aW9uIHNpZ25hbC4KK1RoaXMgcmVxdWlyZXMgYWRkaW5nIGEgY29u
c3RhbnQgcXVhbnRpemF0aW9uIG9mZnNldCB0byBlYWNoIG5vbi16ZXJvIHNhbXBsZSwKKyBhbmQg
dGhlbiBwc2V1ZG9yYW5kb21seSBpbnZlcnRpbmcgYW5kIG9mZnNldHRpbmcgZXZlcnkgc2FtcGxl
LgorVGhlIGNvbnN0YW50IHF1YW50aXphdGlvbiBvZmZzZXQgdmFyaWVzIGRlcGVuZGluZyBvbiB0
aGUgc2lnbmFsIHR5cGUgYW5kCisgcXVhbnRpemF0aW9uIG9mZnNldCB0eXBlIChzZWUgPHhyZWYg
dGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0i
c2lsa19xdWFudGl6YXRpb25fb2Zmc2V0cyIKKyB0aXRsZT0iRXhjaXRhdGlvbiBRdWFudGl6YXRp
b24gT2Zmc2V0cyI+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlNpZ25hbCBUeXBlPC90dGNvbD4KKzx0
dGNvbCBhbGlnbj0ibGVmdCI+UXVhbnRpemF0aW9uIE9mZnNldCBUeXBlPC90dGNvbD4KKzx0dGNv
bCBhbGlnbj0icmlnaHQiPlF1YW50aXphdGlvbiBPZmZzZXQgKFEyMyk8L3R0Y29sPgorPGM+SW5h
Y3RpdmU8L2M+IDxjPkxvdzwvYz4gIDxjPjI1PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkhpZ2g8
L2M+IDxjPjYwPC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkxvdzwvYz4gIDxjPjI1PC9jPgorPGM+
VW52b2ljZWQ8L2M+IDxjPkhpZ2g8L2M+IDxjPjYwPC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkxv
dzwvYz4gICA8Yz44PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+IDxjPjI1PC9jPgor
PC90ZXh0dGFibGU+CisKKzx0PgorTGV0IGVfcmF3W2ldIGJlIHRoZSByYXcgZXhjaXRhdGlvbiB2
YWx1ZSBhdCBwb3NpdGlvbiBpLCB3aXRoIGEgbWFnbml0dWRlCisgY29tcG9zZWQgb2YgdGhlIHB1
bHNlcyBhdCB0aGF0IGxvY2F0aW9uIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNpbGtfcHVsc2VfbG9j
YXRpb25zIi8+KSBjb21iaW5lZCB3aXRoIGFueSBhZGRpdGlvbmFsIExTQnMgKHNlZQorIDx4cmVm
IHRhcmdldD0ic2lsa19zaGVsbF9sc2IiLz4pLCBhbmQgd2l0aCB0aGUgY29ycmVzcG9uZGluZyBz
aWduIGRlY29kZWQgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtfc2lnbnMiLz4uCitBZGRpdGlvbmFs
bHksIGxldCBzZWVkIGJlIHRoZSBjdXJyZW50IHBzZXVkb3JhbmRvbSBzZWVkLCB3aGljaCBpcyBp
bml0aWFsaXplZAorIHRvIHRoZSB2YWx1ZSBkZWNvZGVkIGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxr
X3NlZWQiLz4gZm9yIHRoZSBmaXJzdCBzYW1wbGUgaW4KKyB0aGUgY3VycmVudCBTSUxLIGZyYW1l
LCBhbmQgdXBkYXRlZCBmb3IgZWFjaCBzdWJzZXF1ZW50IHNhbXBsZSBhY2NvcmRpbmcgdG8KKyB0
aGUgcHJvY2VkdXJlIGJlbG93LgorRmluYWxseSwgbGV0IG9mZnNldF9RMjMgYmUgdGhlIHF1YW50
aXphdGlvbiBvZmZzZXQgZnJvbQorIDx4cmVmIHRhcmdldD0ic2lsa19xdWFudGl6YXRpb25fb2Zm
c2V0cyIvPi4KK1RoZW4gdGhlIGZvbGxvd2luZyBwcm9jZWR1cmUgcHJvZHVjZXMgdGhlIGZpbmFs
IHJlY29uc3RydWN0ZWQgZXhjaXRhdGlvbiB2YWx1ZSwKKyBlX1EyM1tpXToKKzxmaWd1cmUgYWxp
Z249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2VfUTIzW2ld
ID0gKGVfcmF3W2ldIDw8IDgpIC0gc2lnbihlX3Jhd1tpXSkqMjAgKyBvZmZzZXRfUTIzOworICAg
IHNlZWQgPSAoMTk2MzE0MTY1KnNlZWQgKyA5MDc2MzM1MTUpICYgMHhGRkZGRkZGRjsKK2VfUTIz
W2ldID0gKHNlZWQgJiAweDgwMDAwMDAwKSA/IC1lX1EyM1tpXSA6IGVfUTIzW2ldOworICAgIHNl
ZWQgPSAoc2VlZCArIGVfcmF3W2ldKSAmIDB4RkZGRkZGRkY7CitdXT48L2FydHdvcms+Cis8L2Zp
Z3VyZT4KK1doZW4gZV9yYXdbaV0gaXMgemVybywgc2lnbigpIHJldHVybnMgMCBieSB0aGUgZGVm
aW5pdGlvbiBpbgorIDx4cmVmIHRhcmdldD0ic2lnbiIvPiwgc28gdGhlIGZhY3RvciBvZiAyMCBk
b2VzIG5vdCBnZXQgYWRkZWQuCitUaGUgZmluYWwgZV9RMjNbaV0gdmFsdWUgbWF5IHJlcXVpcmUg
bW9yZSB0aGFuIDE2IGJpdHMgcGVyIHNhbXBsZSwgYnV0IHdpbGwgbm90CisgcmVxdWlyZSBtb3Jl
IHRoYW4gMjMsIGluY2x1ZGluZyB0aGUgc2lnbi4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8L3Nl
Y3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19mcmFtZV9yZWNvbnN0cnVjdGlvbiIgdG9j
PSJpbmNsdWRlIgorIHRpdGxlPSJTSUxLIEZyYW1lIFJlY29uc3RydWN0aW9uIj4KKworPHQ+CitU
aGUgcmVtYWluZGVyIG9mIHRoZSByZWNvbnN0cnVjdGlvbiBwcm9jZXNzIGZvciB0aGUgZnJhbWUg
ZG9lcyBub3QgbmVlZCB0byBiZQorIGJpdC1leGFjdCwgYXMgc21hbGwgZXJyb3JzIHNob3VsZCBv
bmx5IGludHJvZHVjZSBwcm9wb3J0aW9uYWxseSBzbWFsbAorIGRpc3RvcnRpb25zLgorQWx0aG91
Z2ggdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBvbmx5IGluY2x1ZGVzIGEgZml4ZWQtcG9p
bnQgdmVyc2lvbiBvZgorIHRoZSByZW1haW5pbmcgc3RlcHMsIHRoaXMgc2VjdGlvbiBkZXNjcmli
ZXMgdGhlbSBpbiB0ZXJtcyBvZiBhIGZsb2F0aW5nLXBvaW50CisgdmVyc2lvbiBmb3Igc2ltcGxp
Y2l0eS4KK1RoaXMgcHJvZHVjZXMgYSBzaWduYWwgd2l0aCBhIG5vbWluYWwgcmFuZ2Ugb2YgLTEu
MCB0byAxLjAuCis8L3Q+CisKKzx0Pgorc2lsa19kZWNvZGVfY29yZSgpIChkZWNvZGVfY29yZS5j
KSBjb250YWlucyB0aGUgY29kZSBmb3IgdGhlIG1haW4KKyByZWNvbnN0cnVjdGlvbiBwcm9jZXNz
LgorSXQgcHJvY2VlZHMgc3ViZnJhbWUtYnktc3ViZnJhbWUsIHNpbmNlIHF1YW50aXphdGlvbiBn
YWlucywgTFRQIHBhcmFtZXRlcnMsIGFuZAorIChpbiAyMCZuYnNwO21zIFNJTEsgZnJhbWVzKSBM
UEMgY29lZmZpY2llbnRzIGNhbiB2YXJ5IGZyb20gb25lIHRvIHRoZQorIG5leHQuCis8L3Q+CisK
Kzx0PgorTGV0IGFfUTEyW2tdIGJlIHRoZSBMUEMgY29lZmZpY2llbnRzIGZvciB0aGUgY3VycmVu
dCBzdWJmcmFtZS4KK0lmIHRoaXMgaXMgdGhlIGZpcnN0IG9yIHNlY29uZCBzdWJmcmFtZSBvZiBh
IDIwJm5ic3A7bXMgU0lMSyBmcmFtZSBhbmQgdGhlIExTRgorIGludGVycG9sYXRpb24gZmFjdG9y
LCB3X1EyIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfaW50ZXJwb2xhdGlvbiIvPiksIGlz
CisgbGVzcyB0aGFuIDQsIHRoZW4gdGhlc2UgY29ycmVzcG9uZCB0byB0aGUgZmluYWwgTFBDIGNv
ZWZmaWNpZW50cyBwcm9kdWNlZCBieQorIDx4cmVmIHRhcmdldD0ic2lsa19scGNfZ2Fpbl9saW1p
dCIvPiBmcm9tIHRoZSBpbnRlcnBvbGF0ZWQgTFNGIGNvZWZmaWNpZW50cywKKyBuMV9RMTVba10g
KGNvbXB1dGVkIGluIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX2ludGVycG9sYXRpb24iLz4pLgor
T3RoZXJ3aXNlLCB0aGV5IGNvcnJlc3BvbmQgdG8gdGhlIGZpbmFsIExQQyBjb2VmZmljaWVudHMg
cHJvZHVjZWQgZnJvbSB0aGUKKyB1bmludGVycG9sYXRlZCBMU0YgY29lZmZpY2llbnRzIGZvciB0
aGUgY3VycmVudCBmcmFtZSwgbjJfUTE1W2tdLgorPC90PgorCis8dD4KK0Fsc28sIGxldCBuIGJl
IHRoZSBudW1iZXIgb2Ygc2FtcGxlcyBpbiBhIHN1YmZyYW1lICg0MCBmb3IgTkIsIDYwIGZvciBN
QiwgYW5kCisgODAgZm9yIFdCKSwgcyBiZSB0aGUgaW5kZXggb2YgdGhlIGN1cnJlbnQgc3ViZnJh
bWUgaW4gdGhpcyBTSUxLIGZyYW1lICgwIG9yIDEKKyBmb3IgMTAmbmJzcDttcyBmcmFtZXMsIG9y
IDAgdG8gMyBmb3IgMjAmbmJzcDttcyBmcmFtZXMpLCBhbmQgaiBiZSB0aGUgaW5kZXggb2YKKyB0
aGUgZmlyc3Qgc2FtcGxlIGluIHRoZSByZXNpZHVhbCBjb3JyZXNwb25kaW5nIHRvIHRoZSBjdXJy
ZW50IHN1YmZyYW1lLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbHRwX3N5bnRoZXNp
cyIgdGl0bGU9IkxUUCBTeW50aGVzaXMiPgorPHQ+CitWb2ljZWQgU0lMSyBmcmFtZXMgKHNlZSA8
eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWVfdHlwZSIvPikgcGFzcyB0aGUgZXhjaXRhdGlvbgorIHRo
cm91Z2ggYW4gTFRQIGZpbHRlciB1c2luZyB0aGUgcGFyYW1ldGVycyBkZWNvZGVkIGluCisgPHhy
ZWYgdGFyZ2V0PSJzaWxrX2x0cF9wYXJhbXMiLz4gdG8gcHJvZHVjZSBhbiBMUEMgcmVzaWR1YWwu
CitUaGUgTFRQIGZpbHRlciByZXF1aXJlcyBMUEMgcmVzaWR1YWwgdmFsdWVzIGZyb20gYmVmb3Jl
IHRoZSBjdXJyZW50IHN1YmZyYW1lIGFzCisgaW5wdXQuCitIb3dldmVyLCBzaW5jZSB0aGUgTFBD
IGNvZWZmaWNpZW50cyBtYXkgaGF2ZSBjaGFuZ2VkLCBpdCBvYnRhaW5zIHRoaXMgcmVzaWR1YWwK
KyBieSAicmV3aGl0ZW5pbmciIHRoZSBjb3JyZXNwb25kaW5nIG91dHB1dCBzaWduYWwgdXNpbmcg
dGhlIExQQyBjb2VmZmljaWVudHMKKyBmcm9tIHRoZSBjdXJyZW50IHN1YmZyYW1lLgorTGV0IG91
dFtpXSBmb3IKKyAoaiZuYnNwOy0mbmJzcDtwaXRjaF9sYWdzW3NdJm5ic3A7LSZuYnNwO2RfTFBD
Jm5ic3A7LSZuYnNwOzIpJm5ic3A7Jmx0Oz0mbmJzcDtpJm5ic3A7Jmx0OyZuYnNwO2oKKyBiZSB0
aGUgZnVsbHkgcmVjb25zdHJ1Y3RlZCBvdXRwdXQgc2lnbmFsIGZyb20gdGhlIGxhc3QKKyAocGl0
Y2hfbGFnc1tzXSZuYnNwOysmbmJzcDtkX0xQQyZuYnNwOysmbmJzcDsyKSBzYW1wbGVzIG9mIHBy
ZXZpb3VzIHN1YmZyYW1lcworIChzZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2xwY19zeW50aGVzaXMi
Lz4pLCB3aGVyZSBwaXRjaF9sYWdzW3NdIGlzIHRoZSBwaXRjaAorIGxhZyBmb3IgdGhlIGN1cnJl
bnQgc3ViZnJhbWUgZnJvbSA8eHJlZiB0YXJnZXQ9InNpbGtfbHRwX2xhZ3MiLz4uCitEdXJpbmcg
cmVjb25zdHJ1Y3Rpb24gb2YgdGhlIGZpcnN0IHN1YmZyYW1lIGZvciB0aGlzIGNoYW5uZWwgYWZ0
ZXIgZWl0aGVyCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5BbiB1bmNvZGVkIHJlZ3VsYXIg
U0lMSyBmcmFtZSAoaWYgdGhpcyBpcyB0aGUgc2lkZSBjaGFubmVsKSwgb3I8L3Q+Cis8dD5BIGRl
Y29kZXIgcmVzZXQgKHNlZSA8eHJlZiB0YXJnZXQ9ImRlY29kZXItcmVzZXQiLz4pLDwvdD4KKzwv
bGlzdD4KKyBvdXRbXSBpcyByZXdoaXRlbmVkIGludG8gYW4gTFBDIHJlc2lkdWFsLAorIHJlc1tp
XSwgdmlhCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCisgICAgICAgICA0LjAqTFRQX3NjYWxlX1ExNAorcmVzW2ldID0gLS0tLS0tLS0t
LS0tLS0tLS0gKiBjbGFtcCgtMS4wLAorICAgICAgICAgICAgZ2Fpbl9RMTZbc10KKworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkX0xQQy0xCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgX18gICAgICAgICAgICAgIGFfUTEyW2tdCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgb3V0W2ldIC0gXCAgb3V0W2ktay0xXSAqIC0tLS0tLS0tLCAxLjApIC4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvXyAgICAgICAgICAgICAgIDQw
OTYuMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGs9MAorXV0+PC9hcnR3
b3JrPgorPC9maWd1cmU+CitUaGlzIHJlcXVpcmVzIHN0b3JhZ2UgdG8gYnVmZmVyIHVwIHRvIDMw
NiB2YWx1ZXMgb2Ygb3V0W2ldIGZyb20gcHJldmlvdXMKKyBzdWJmcmFtZXMuCitUaGlzIGNvcnJl
c3BvbmRzIHRvIFdCIHdpdGggYSBtYXhpbXVtIHBpdGNoIGxhZyBvZgorIDE4Jm5ic3A7bXMmbmJz
cDsqJm5ic3A7MTYmbmJzcDtrSHogc2FtcGxlcywgcGx1cyAxNiBzYW1wbGVzIGZvciBkX0xQQywg
cGx1cyAyCisgc2FtcGxlcyBmb3IgdGhlIHdpZHRoIG9mIHRoZSBMVFAgZmlsdGVyLgorPC90Pgor
Cis8dD4KK0xldCBlX1EyM1tpXSBmb3IgaiZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsmbmJz
cDsoaiZuYnNwOysmbmJzcDtuKSBiZSB0aGUKKyBleGNpdGF0aW9uIGZvciB0aGUgY3VycmVudCBz
dWJmcmFtZSwgYW5kIGJfUTdba10gZm9yCisgMCZuYnNwOyZsdDs9Jm5ic3A7ayZuYnNwOyZsdDsm
bmJzcDs1IGJlIHRoZSBjb2VmZmljaWVudHMgb2YgdGhlIExUUCBmaWx0ZXIKKyB0YWtlbiBmcm9t
IHRoZSBjb2RlYm9vayBlbnRyeSBpbiBvbmUgb2YKKyBUYWJsZXMmbmJzcDs8eHJlZiBmb3JtYXQ9
ImNvdW50ZXIiIHRhcmdldD0ic2lsa19sdHBfZmlsdGVyX2NvZWZmczAiLz4KKyB0aHJvdWdoJm5i
c3A7PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfbHRwX2ZpbHRlcl9jb2VmZnMy
Ii8+CisgY29ycmVzcG9uZGluZyB0byB0aGUgaW5kZXggZGVjb2RlZCBmb3IgdGhlIGN1cnJlbnQg
c3ViZnJhbWUgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtfbHRwX2ZpbHRlciIvPi4KK1RoZW4gZm9y
IGkgc3VjaCB0aGF0IGombmJzcDsmbHQ7PSZuYnNwO2kmbmJzcDsmbHQ7Jm5ic3A7KGombmJzcDsr
Jm5ic3A7biksCisgdGhlIExQQyByZXNpZHVhbCBpcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4K
KzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgICAgICAgICAg
IDQKKyAgICAgICAgICBlX1EyM1tpXSAgIF9fICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGJfUTdba10KK3Jlc1tpXSA9IC0tLS0tLS0tLSArIFwgIHJlc1tpIC0gcGl0Y2hfbGFnc1tz
XSArIDIgLSBrXSAqIC0tLS0tLS0gLgorICAgICAgICAgIDIuMCoqMjMgICAgL18gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDEyOC4wCisgICAgICAgICAgICAgICAgICAgICBrPTAK
K11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorCis8dD4KK0ZvciB1bnZvaWNlZCBmcmFt
ZXMsIHRoZSBMUEMgcmVzaWR1YWwgZm9yCisgaiZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsm
bmJzcDsoaiZuYnNwOysmbmJzcDtuKSBpcyBzaW1wbHkgYSBub3JtYWxpemVkCisgY29weSBvZiB0
aGUgZXhjaXRhdGlvbiBzaWduYWwsIGkuZS4sCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFy
dHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgZV9RMjNbaV0KK3Jlc1tp
XSA9IC0tLS0tLS0tLQorICAgICAgICAgIDIuMCoqMjMKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbHBjX3N5bnRoZXNp
cyIgdGl0bGU9IkxQQyBTeW50aGVzaXMiPgorPHQ+CitMUEMgc3ludGhlc2lzIHVzZXMgdGhlIHNo
b3J0LXRlcm0gTFBDIGZpbHRlciB0byBwcmVkaWN0IHRoZSBuZXh0IG91dHB1dAorIGNvZWZmaWNp
ZW50LgorRm9yIGkgc3VjaCB0aGF0IChqJm5ic3A7LSZuYnNwO2RfTFBDKSZuYnNwOyZsdDs9Jm5i
c3A7aSZuYnNwOyZsdDsmbmJzcDtqLCBsZXQKKyBscGNbaV0gYmUgdGhlIHJlc3VsdCBvZiBMUEMg
c3ludGhlc2lzIGZyb20gdGhlIGxhc3QgZF9MUEMgc2FtcGxlcyBvZiB0aGUKKyBwcmV2aW91cyBz
dWJmcmFtZSwgb3IgemVyb3MgaW4gdGhlIGZpcnN0IHN1YmZyYW1lIGZvciB0aGlzIGNoYW5uZWwg
YWZ0ZXIKKyBlaXRoZXIKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PkFuIHVuY29kZWQgcmVn
dWxhciBTSUxLIGZyYW1lIChpZiB0aGlzIGlzIHRoZSBzaWRlIGNoYW5uZWwpLCBvcjwvdD4KKzx0
PkEgZGVjb2RlciByZXNldCAoc2VlIDx4cmVmIHRhcmdldD0iZGVjb2Rlci1yZXNldCIvPikuPC90
PgorPC9saXN0PgorVGhlbiBmb3IgaSBzdWNoIHRoYXQgaiZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNw
OyZsdDsmbmJzcDsoaiZuYnNwOysmbmJzcDtuKSwgdGhlCisgcmVzdWx0IG9mIExQQyBzeW50aGVz
aXMgZm9yIHRoZSBjdXJyZW50IHN1YmZyYW1lIGlzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBkX0xQQy0xCisgICAgICAgICBnYWluX1ExNltpXSAgICAgICAgICAgIF9fICAgICAg
ICAgICAgICBhX1ExMltrXQorbHBjW2ldID0gLS0tLS0tLS0tLS0gKiByZXNbaV0gKyBcICBscGNb
aS1rLTFdICogLS0tLS0tLS0gLgorICAgICAgICAgICA2NTUzNi4wICAgICAgICAgICAgICAvXyAg
ICAgICAgICAgICAgIDQwOTYuMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrPTAK
K11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlIGRlY29kZXIgc2F2ZXMgdGhlIGZpbmFsIGRf
TFBDIHZhbHVlcywgaS5lLiwgbHBjW2ldIHN1Y2ggdGhhdAorIChqJm5ic3A7KyZuYnNwO24mbmJz
cDstJm5ic3A7ZF9MUEMpJm5ic3A7Jmx0Oz0mbmJzcDtpJm5ic3A7Jmx0OyZuYnNwOyhqJm5ic3A7
KyZuYnNwO24pLAorIHRvIGZlZWQgaW50byB0aGUgTFBDIHN5bnRoZXNpcyBvZiB0aGUgbmV4dCBz
dWJmcmFtZS4KK1RoaXMgcmVxdWlyZXMgc3RvcmFnZSBmb3IgdXAgdG8gMTYgdmFsdWVzIG9mIGxw
Y1tpXSAoZm9yIFdCIGZyYW1lcykuCis8L3Q+CisKKzx0PgorVGhlbiwgdGhlIHNpZ25hbCBpcyBj
bGFtcGVkIGludG8gdGhlIGZpbmFsIG5vbWluYWwgcmFuZ2U6Cis8ZmlndXJlIGFsaWduPSJjZW50
ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitvdXRbaV0gPSBjbGFtcCgt
MS4wLCBscGNbaV0sIDEuMCkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGlzIGNsYW1w
aW5nIG9jY3VycyBlbnRpcmVseSBhZnRlciB0aGUgTFBDIHN5bnRoZXNpcyBmaWx0ZXIgaGFzIHJ1
bi4KK1RoZSBkZWNvZGVyIHNhdmVzIHRoZSB1bmNsYW1wZWQgdmFsdWVzLCBscGNbaV0sIHRvIGZl
ZWQgaW50byB0aGUgTFBDIGZpbHRlciBmb3IKKyB0aGUgbmV4dCBzdWJmcmFtZSwgYnV0IHNhdmVz
IHRoZSBjbGFtcGVkIHZhbHVlcywgb3V0W2ldLCBmb3IgcmV3aGl0ZW5pbmcgaW4KKyB2b2ljZWQg
ZnJhbWVzLgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gYW5jaG9yPSJzaWxrX3N0ZXJlb191bm1peGluZyIgdGl0bGU9IlN0ZXJlbyBVbm1p
eGluZyI+Cis8dD4KK0ZvciBzdGVyZW8gc3RyZWFtcywgYWZ0ZXIgZGVjb2RpbmcgYSBmcmFtZSBm
cm9tIGVhY2ggY2hhbm5lbCwgdGhlIGRlY29kZXIgbXVzdAorIGNvbnZlcnQgdGhlIG1pZC1zaWRl
IChNUykgcmVwcmVzZW50YXRpb24gaW50byBhIGxlZnQtcmlnaHQgKExSKQorIHJlcHJlc2VudGF0
aW9uLgorVGhlIGZ1bmN0aW9uIHNpbGtfc3RlcmVvX01TX3RvX0xSIChzdGVyZW9fTVNfdG9fTFIu
YykgaW1wbGVtZW50cyB0aGlzIHByb2Nlc3MuCitJbiBpdCwgdGhlIGRlY29kZXIgcHJlZGljdHMg
dGhlIHNpZGUgY2hhbm5lbCB1c2luZyBhKSBhIHNpbXBsZSBsb3ctcGFzc2VkCisgdmVyc2lvbiBv
ZiB0aGUgbWlkIGNoYW5uZWwsIGFuZCBiKSB0aGUgdW5maWx0ZXJlZCBtaWQgY2hhbm5lbCwgdXNp
bmcgdGhlCisgcHJlZGljdGlvbiB3ZWlnaHRzIGRlY29kZWQgaW4gPHhyZWYgdGFyZ2V0PSJzaWxr
X3N0ZXJlb19wcmVkIi8+LgorVGhpcyBzaW1wbGUgbG93LXBhc3MgZmlsdGVyIGltcG9zZXMgYSBv
bmUtc2FtcGxlIGRlbGF5LCBhbmQgdGhlIHVuZmlsdGVyZWQKK21pZCBjaGFubmVsIGlzIGFsc28g
ZGVsYXllZCBieSBvbmUgc2FtcGxlLgorSW4gb3JkZXIgdG8gYWxsb3cgc2VhbWxlc3Mgc3dpdGNo
aW5nIGJldHdlZW4gc3RlcmVvIGFuZCBtb25vLCBtb25vIHN0cmVhbXMgbXVzdAorIGFsc28gaW1w
b3NlIHRoZSBzYW1lIG9uZS1zYW1wbGUgZGVsYXkuCitUaGUgZW5jb2RlciByZXF1aXJlcyBhbiBh
ZGRpdGlvbmFsIG9uZS1zYW1wbGUgZGVsYXkgZm9yIGJvdGggbW9ubyBhbmQgc3RlcmVvCisgc3Ry
ZWFtcywgdGhvdWdoIGFuIGVuY29kZXIgbWF5IG9taXQgdGhlIGRlbGF5IGZvciBtb25vIGlmIGl0
IGtub3dzIGl0IHdpbGwKKyBuZXZlciBzd2l0Y2ggdG8gc3RlcmVvLgorPC90PgorCis8dD4KK1Ro
ZSB1bm1peGluZyBwcm9jZXNzIG9wZXJhdGVzIGluIHR3byBwaGFzZXMuCitUaGUgZmlyc3QgcGhh
c2UgbGFzdHMgZm9yIDgmbmJzcDttcywgZHVyaW5nIHdoaWNoIGl0IGludGVycG9sYXRlcyB0aGUK
KyBwcmVkaWN0aW9uIHdlaWdodHMgZnJvbSB0aGUgcHJldmlvdXMgZnJhbWUsIHByZXZfdzBfUTEz
IGFuZCBwcmV2X3cxX1ExMywgdG8KKyB0aGUgdmFsdWVzIGZvciB0aGUgY3VycmVudCBmcmFtZSwg
dzBfUTEzIGFuZCB3MV9RMTMuCitUaGUgc2Vjb25kIHBoYXNlIHNpbXBseSB1c2VzIHRoZXNlIHdl
aWdodHMgZm9yIHRoZSByZW1haW5kZXIgb2YgdGhlIGZyYW1lLgorPC90PgorCis8dD4KK0xldCBt
aWRbaV0gYW5kIHNpZGVbaV0gYmUgdGhlIGNvbnRlbnRzIG9mIG91dFtpXSAoZnJvbQorIDx4cmVm
IHRhcmdldD0ic2lsa19scGNfc3ludGhlc2lzIi8+KSBmb3IgdGhlIGN1cnJlbnQgbWlkIGFuZCBz
aWRlIGNoYW5uZWxzLAorIHJlc3BlY3RpdmVseSwgYW5kIGxldCBsZWZ0W2ldIGFuZCByaWdodFtp
XSBiZSB0aGUgY29ycmVzcG9uZGluZyBzdGVyZW8gb3V0cHV0CisgY2hhbm5lbHMuCitJZiB0aGUg
c2lkZSBjaGFubmVsIGlzIG5vdCBjb2RlZCAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19taWRfb25s
eV9mbGFnIi8+KSwKKyB0aGVuIHNpZGVbaV0gaXMgc2V0IHRvIHplcm8uCitBbHNvIGxldCBqIGJl
IGRlZmluZWQgYXMgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3JlY29uc3RydWN0aW9uIi8+
LCBuMSBiZQorIHRoZSBudW1iZXIgb2Ygc2FtcGxlcyBpbiBwaGFzZSZuYnNwOzEgKDY0IGZvciBO
QiwgOTYgZm9yIE1CLCBhbmQgMTI4IGZvciBXQiksCisgYW5kIG4yIGJlIHRoZSB0b3RhbCBudW1i
ZXIgb2Ygc2FtcGxlcyBpbiB0aGUgZnJhbWUuCitUaGVuIGZvciBpIHN1Y2ggdGhhdCBqJm5ic3A7
Jmx0Oz0mbmJzcDtpJm5ic3A7Jmx0OyZuYnNwOyhqJm5ic3A7KyZuYnNwO24yKSwKKyB0aGUgbGVm
dCBhbmQgcmlnaHQgY2hhbm5lbCBvdXRwdXQgaXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8
YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgcHJldl93MF9R
MTMgICAgICAgICAgICAgICAgICAodzBfUTEzIC0gcHJldl93MF9RMTMpCisgICAgICAgIHcwID0g
IC0tLS0tLS0tLS0tICsgbWluKGkgLSBqLCBuMSkqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAsCisg
ICAgICAgICAgICAgICAgODE5Mi4wICAgICAgICAgICAgICAgICAgICAgICAgICAgODE5Mi4wKm4x
CisKKyAgICAgICAgICAgICAgcHJldl93MV9RMTMgICAgICAgICAgICAgICAgICAodzFfUTEzIC0g
cHJldl93MV9RMTMpCisgICAgICAgIHcxID0gIC0tLS0tLS0tLS0tICsgbWluKGkgLSBqLCBuMSkq
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAsCisgICAgICAgICAgICAgICAgODE5Mi4wICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDgxOTIuMCpuMQorCisgICAgICAgICAgICAgbWlkW2ktMl0gKyAy
Km1pZFtpLTFdICsgbWlkW2ldCisgICAgICAgIHAwID0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tICwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgNC4wCisKKyBsZWZ0W2ldID0gY2xh
bXAoLTEuMCwgKDEgKyB3MSkqbWlkW2ktMV0gKyBzaWRlW2ktMV0gKyB3MCpwMCwgMS4wKSAsCisK
K3JpZ2h0W2ldID0gY2xhbXAoLTEuMCwgKDEgLSB3MSkqbWlkW2ktMV0gLSBzaWRlW2ktMV0gLSB3
MCpwMCwgMS4wKSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZXNlIGZvcm11bGFzIHJl
cXVpcmUgdHdvIHNhbXBsZXMgcHJpb3IgdG8gaW5kZXgmbmJzcDtqLCB0aGUgc3RhcnQgb2YgdGhl
CisgZnJhbWUsIGZvciB0aGUgbWlkIGNoYW5uZWwsIGFuZCBvbmUgcHJpb3Igc2FtcGxlIGZvciB0
aGUgc2lkZSBjaGFubmVsLgorRm9yIHRoZSBmaXJzdCBmcmFtZSBhZnRlciBhIGRlY29kZXIgcmVz
ZXQsIHplcm9zIGFyZSB1c2VkIGluc3RlYWQuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rp
b24gdGl0bGU9IlJlc2FtcGxpbmciPgorPHQ+CitBZnRlciBzdGVyZW8gdW5taXhpbmcgKGlmIGFu
eSksIHRoZSBkZWNvZGVyIGFwcGxpZXMgcmVzYW1wbGluZyB0byBjb252ZXJ0IHRoZQorIGRlY29k
ZWQgU0lMSyBvdXRwdXQgdG8gdGhlIHNhbXBsZSByYXRlIGRlc2lyZWQgYnkgdGhlIGFwcGxpY2F0
aW9uLgorVGhpcyBpcyBuZWNlc3Nhcnkgd2hlbiBkZWNvZGluZyBhIEh5YnJpZCBmcmFtZSBhdCBT
V0Igb3IgRkIgc2FtcGxlIHJhdGVzLCBvcgorIHdoZW5ldmVyIHRoZSBkZWNvZGVyIHdhbnRzIHRo
ZSBvdXRwdXQgYXQgYSBkaWZmZXJlbnQgc2FtcGxlIHJhdGUgdGhhbiB0aGUKKyBpbnRlcm5hbCBT
SUxLIHNhbXBsaW5nIHJhdGUgKGUuZy4sIHRvIGFsbG93IGEgY29uc3RhbnQgc2FtcGxlIHJhdGUg
d2hlbiB0aGUKKyBhdWRpbyBiYW5kd2lkdGggY2hhbmdlcywgb3IgdG8gYWxsb3cgbWl4aW5nIHdp
dGggYXVkaW8gZnJvbSBvdGhlcgorIGFwcGxpY2F0aW9ucykuCitUaGUgcmVzYW1wbGVyIGl0c2Vs
ZiBpcyBub24tbm9ybWF0aXZlLCBhbmQgYSBkZWNvZGVyIGNhbiB1c2UgYW55IG1ldGhvZCBpdAor
IHdhbnRzIHRvIHBlcmZvcm0gdGhlIHJlc2FtcGxpbmcuCis8L3Q+CisKKzx0PgorSG93ZXZlciwg
YSBtaW5pbXVtIGFtb3VudCBvZiBkZWxheSBpcyBpbXBvc2VkIHRvIGFsbG93IHRoZSByZXNhbXBs
ZXIgdG8KKyBvcGVyYXRlLCBhbmQgdGhpcyBkZWxheSBpcyBub3JtYXRpdmUsIHNvIHRoYXQgdGhl
IGNvcnJlc3BvbmRpbmcgZGVsYXkgY2FuIGJlCisgYXBwbGllZCB0byB0aGUgTURDVCBsYXllciBp
biB0aGUgZW5jb2Rlci4KK0EgZGVjb2RlciBpcyBhbHdheXMgZnJlZSB0byB1c2UgYSByZXNhbXBs
ZXIgd2hpY2ggcmVxdWlyZXMgbW9yZSBkZWxheSB0aGFuCisgYWxsb3dlZCBmb3IgaGVyZSAoZS5n
LiwgdG8gaW1wcm92ZSBxdWFsaXR5KSwgYnV0IGl0IG11c3QgdGhlbiBkZWxheSB0aGUgb3V0cHV0
Cisgb2YgdGhlIE1EQ1QgbGF5ZXIgYnkgdGhpcyBleHRyYSBhbW91bnQuCitLZWVwaW5nIGFzIG11
Y2ggZGVsYXkgYXMgcG9zc2libGUgb24gdGhlIGVuY29kZXIgc2lkZSBhbGxvd3MgYW4gZW5jb2Rl
ciB3aGljaAorIGtub3dzIGl0IHdpbGwgbmV2ZXIgdXNlIGFueSBvZiB0aGUgU0lMSyBvciBIeWJy
aWQgbW9kZXMgdG8gc2tpcCB0aGlzIGRlbGF5LgorQnkgY29udHJhc3QsIGlmIGl0IHdlcmUgYWxs
IGFwcGxpZWQgYnkgdGhlIGRlY29kZXIsIHRoZW4gYSBkZWNvZGVyIHdoaWNoCisgcHJvY2Vzc2Vz
IGF1ZGlvIGluIGZpeGVkLXNpemUgYmxvY2tzIHdvdWxkIGJlIGZvcmNlZCB0byBkZWxheSB0aGUg
b3V0cHV0IG9mCisgQ0VMVCBmcmFtZXMganVzdCBpbiBjYXNlIG9mIGEgbGF0ZXIgc3dpdGNoIHRv
IGEgU0lMSyBvciBIeWJyaWQgbW9kZS4KKzwvdD4KKworPHQ+Cis8eHJlZiB0YXJnZXQ9InNpbGtf
cmVzYW1wbGVyX2RlbGF5X2FsbG9jIi8+IGdpdmVzIHRoZSBtYXhpbXVtIHJlc2FtcGxlciBkZWxh
eQorIGluIHNhbXBsZXMgYXQgNDgmbmJzcDtrSHogZm9yIGVhY2ggU0lMSyBhdWRpbyBiYW5kd2lk
dGguCitCZWNhdXNlIHRoZSBhY3R1YWwgb3V0cHV0IHJhdGUgbWF5IG5vdCBiZSA0OCZuYnNwO2tI
eiwgaXQgbWF5IG5vdCBiZSBwb3NzaWJsZQorIHRvIGFjaGlldmUgZXhhY3RseSB0aGVzZSBkZWxh
eXMgd2hpbGUgdXNpbmcgYSB3aG9sZSBudW1iZXIgb2YgaW5wdXQgb3Igb3V0cHV0Cisgc2FtcGxl
cy4KK1RoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gaXMgYWJsZSB0byByZXNhbXBsZSB0byBh
bnkgb2YgdGhlIHN1cHBvcnRlZAorIG91dHB1dCBzYW1wbGluZyByYXRlcyAoOCwgMTIsIDE2LCAy
NCwgb3IgNDgmbmJzcDtrSHopIHdpdGhpbiBvciBuZWFyIHRoaXMKKyBkZWxheSBjb25zdHJhaW50
LgorU29tZSByZXNhbXBsaW5nIGZpbHRlcnMgKGluY2x1ZGluZyB0aG9zZSB1c2VkIGJ5IHRoZSBy
ZWZlcmVuY2UgaW1wbGVtZW50YXRpb24pCisgbWF5IGFkZCBhIGRlbGF5IHRoYXQgaXMgbm90IGFu
IGV4YWN0IGludGVnZXIsIG9yIGlzIG5vdCBsaW5lYXItcGhhc2UsIGFuZCBzbworIGNhbm5vdCBi
ZSByZXByZXNlbnRlZCBieSBhIHNpbmdsZSBkZWxheSBhdCBhbGwgZnJlcXVlbmNpZXMuCitIb3dl
dmVyLCBzdWNoIGRldmlhdGlvbnMgYXJlIHVubGlrZWx5IHRvIGJlIHBlcmNlcHRpYmxlLCBhbmQg
dGhlIGNvbXBhcmlzb24KKyB0b29sIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9ImNvbmZvcm1h
bmNlIi8+IGlzIGRlc2lnbmVkIHRvIGJlIHJlbGF0aXZlbHkKKyBpbnNlbnNpdGl2ZSB0byB0aGVt
LgorVGhlIGRlbGF5cyBsaXN0ZWQgaGVyZSBhcmUgdGhlIG9uZXMgdGhhdCBzaG91bGQgYmUgdGFy
Z2V0ZWQgYnkgdGhlIGVuY29kZXIuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3Jl
c2FtcGxlcl9kZWxheV9hbGxvYyIKKyB0aXRsZT0iU0lMSyBSZXNhbXBsZXIgRGVsYXkgQWxsb2Nh
dGlvbnMiPgorPHR0Y29sPkF1ZGlvIEJhbmR3aWR0aDwvdHRjb2w+Cis8dHRjb2w+RGVsYXkgaW4g
bWlsbGlzZWNvbmQ8L3R0Y29sPgorPGM+TkI8L2M+IDxjPjAuNTM4PC9jPgorPGM+TUI8L2M+IDxj
PjAuNjkyPC9jPgorPGM+V0I8L2M+IDxjPjAuNzA2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0Pgor
TkIgaXMgZ2l2ZW4gYSBzbWFsbGVyIGRlY29kZXIgZGVsYXkgYWxsb2NhdGlvbiB0aGFuIE1CIGFu
ZCBXQiB0byBhbGxvdyBhCisgaGlnaGVyLW9yZGVyIGZpbHRlciB3aGVuIHJlc2FtcGxpbmcgdG8g
OCZuYnNwO2tIeiBpbiBib3RoIHRoZSBlbmNvZGVyIGFuZAorIGRlY29kZXIuCitUaGlzIGltcGxp
ZXMgdGhhdCB0aGUgYXVkaW8gY29udGVudCBvZiB0d28gU0lMSyBmcmFtZXMgb3BlcmF0aW5nIGF0
IGRpZmZlcmVudAorIGJhbmR3aWR0aHMgYXJlIG5vdCBwZXJmZWN0bHkgYWxpZ25lZCBpbiB0aW1l
LgorVGhpcyBpcyBub3QgYW4gaXNzdWUgZm9yIGFueSB0cmFuc2l0aW9ucyBkZXNjcmliZWQgaW4K
KyA8eHJlZiB0YXJnZXQ9InN3aXRjaGluZyIvPiwgYmVjYXVzZSB0aGV5IGFsbCBpbnZvbHZlIGEg
U0lMSyBkZWNvZGVyIHJlc2V0LgorV2hlbiB0aGUgZGVjb2RlciBpcyByZXNldCwgYW55IHNhbXBs
ZXMgcmVtYWluaW5nIGluIHRoZSByZXNhbXBsaW5nIGJ1ZmZlcgorIGFyZSBkaXNjYXJkZWQsIGFu
ZCB0aGUgcmVzYW1wbGVyIGlzIHJlLWluaXRpYWxpemVkIHdpdGggc2lsZW5jZS4KKzwvdD4KKwor
PC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKworPHNlY3Rpb24gdGl0bGU9IkNFTFQgRGVjb2Rl
ciI+CisKKzx0PgorVGhlIENFTFQgbGF5ZXIgb2YgT3B1cyBpcyBiYXNlZCBvbiB0aGUgTW9kaWZp
ZWQgRGlzY3JldGUgQ29zaW5lIFRyYW5zZm9ybQorPHhyZWYgdGFyZ2V0PSdNRENUJy8+IHdpdGgg
cGFydGlhbGx5IG92ZXJsYXBwaW5nIHdpbmRvd3Mgb2YgNSB0byAyMi41IG1zLgorVGhlIG1haW4g
cHJpbmNpcGxlIGJlaGluZCBDRUxUIGlzIHRoYXQgdGhlIE1EQ1Qgc3BlY3RydW0gaXMgZGl2aWRl
ZCBpbnRvCitiYW5kcyB0aGF0IChyb3VnaGx5KSBmb2xsb3cgdGhlIEJhcmsgc2NhbGUsIGkuZS4s
IHRoZSBzY2FsZSBvZiB0aGUgZWFyJ3MKK2NyaXRpY2FsIGJhbmRzJm5ic3A7PHhyZWYgdGFyZ2V0
PSJad2lja2VyNjEiLz4uIFRoZSBub3JtYWwgQ0VMVCBsYXllciB1c2VzIDIxIG9mIHRob3NlIGJh
bmRzLCB0aG91Z2ggT3B1cworIEN1c3RvbSAoc2VlIDx4cmVmIHRhcmdldD0ib3B1cy1jdXN0b20i
Lz4pIG1heSB1c2UgYSBkaWZmZXJlbnQgbnVtYmVyIG9mIGJhbmRzLgorSW4gSHlicmlkIG1vZGUs
IHRoZSBmaXJzdCAxNyBiYW5kcyAodXAgdG8gOCZuYnNwO2tIeikgYXJlIG5vdCBjb2RlZC4KK0Eg
YmFuZCBjYW4gY29udGFpbiBhcyBsaXR0bGUgYXMgb25lIE1EQ1QgYmluIHBlciBjaGFubmVsLCBh
bmQgYXMgbWFueSBhcyAxNzYKK2JpbnMgcGVyIGNoYW5uZWwsIGFzIGRldGFpbGVkIGluIDx4cmVm
IHRhcmdldD0iY2VsdF9iYW5kX3NpemVzIi8+LgorSW4gZWFjaCBiYW5kLCB0aGUgZ2FpbiAoZW5l
cmd5KSBpcyBjb2RlZCBzZXBhcmF0ZWx5IGZyb20KK3RoZSBzaGFwZSBvZiB0aGUgc3BlY3RydW0u
IENvZGluZyB0aGUgZ2FpbiBleHBsaWNpdGx5IG1ha2VzIGl0IGVhc3kgdG8KK3ByZXNlcnZlIHRo
ZSBzcGVjdHJhbCBlbnZlbG9wZSBvZiB0aGUgc2lnbmFsLiBUaGUgcmVtYWluaW5nIHVuaXQtbm9y
bSBzaGFwZQordmVjdG9yIGlzIGVuY29kZWQgdXNpbmcgYSBQeXJhbWlkIFZlY3RvciBRdWFudGl6
ZXIgKFBWUSkmbmJzcDs8eHJlZiB0YXJnZXQ9J1BWUS1kZWNvZGVyJy8+LgorPC90PgorCis8dGV4
dHRhYmxlIGFuY2hvcj0iY2VsdF9iYW5kX3NpemVzIgorIHRpdGxlPSJNRENUIEJpbnMgUGVyIENo
YW5uZWwgUGVyIEJhbmQgZm9yIEVhY2ggRnJhbWUgU2l6ZSI+Cis8dHRjb2w+RnJhbWUgU2l6ZTo8
L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+Mi41Jm5ic3A7bXM8L3R0Y29sPgorPHR0Y29s
IGFsaWduPSJyaWdodCI+NSZuYnNwO21zPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjEw
Jm5ic3A7bXM8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+MjAmbmJzcDttczwvdHRjb2w+
Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5TdGFydCBGcmVxdWVuY3k8L3R0Y29sPgorPHR0Y29sIGFs
aWduPSJyaWdodCI+U3RvcCBGcmVxdWVuY3k8L3R0Y29sPgorPGM+QmFuZDwvYz4gPGM+Qmluczo8
L2M+IDxjLz4gPGMvPiA8Yy8+IDxjLz4gPGMvPgorIDxjPjA8L2M+ICA8Yz4xPC9jPiAgPGM+Mjwv
Yz4gIDxjPjQ8L2M+ICAgPGM+ODwvYz4gICAgIDxjPjAmbmJzcDtIejwvYz4gICA8Yz4yMDAmbmJz
cDtIejwvYz4KKyA8Yz4xPC9jPiAgPGM+MTwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgIDxjPjg8
L2M+ICAgPGM+MjAwJm5ic3A7SHo8L2M+ICAgPGM+NDAwJm5ic3A7SHo8L2M+CisgPGM+MjwvYz4g
IDxjPjE8L2M+ICA8Yz4yPC9jPiAgPGM+NDwvYz4gICA8Yz44PC9jPiAgIDxjPjQwMCZuYnNwO0h6
PC9jPiAgIDxjPjYwMCZuYnNwO0h6PC9jPgorIDxjPjM8L2M+ICA8Yz4xPC9jPiAgPGM+MjwvYz4g
IDxjPjQ8L2M+ICAgPGM+ODwvYz4gICA8Yz42MDAmbmJzcDtIejwvYz4gICA8Yz44MDAmbmJzcDtI
ejwvYz4KKyA8Yz40PC9jPiAgPGM+MTwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgIDxjPjg8L2M+
ICAgPGM+ODAwJm5ic3A7SHo8L2M+ICA8Yz4xMDAwJm5ic3A7SHo8L2M+CisgPGM+NTwvYz4gIDxj
PjE8L2M+ICA8Yz4yPC9jPiAgPGM+NDwvYz4gICA8Yz44PC9jPiAgPGM+MTAwMCZuYnNwO0h6PC9j
PiAgPGM+MTIwMCZuYnNwO0h6PC9jPgorIDxjPjY8L2M+ICA8Yz4xPC9jPiAgPGM+MjwvYz4gIDxj
PjQ8L2M+ICAgPGM+ODwvYz4gIDxjPjEyMDAmbmJzcDtIejwvYz4gIDxjPjE0MDAmbmJzcDtIejwv
Yz4KKyA8Yz43PC9jPiAgPGM+MTwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgIDxjPjg8L2M+ICA8
Yz4xNDAwJm5ic3A7SHo8L2M+ICA8Yz4xNjAwJm5ic3A7SHo8L2M+CisgPGM+ODwvYz4gIDxjPjI8
L2M+ICA8Yz40PC9jPiAgPGM+ODwvYz4gIDxjPjE2PC9jPiAgPGM+MTYwMCZuYnNwO0h6PC9jPiAg
PGM+MjAwMCZuYnNwO0h6PC9jPgorIDxjPjk8L2M+ICA8Yz4yPC9jPiAgPGM+NDwvYz4gIDxjPjg8
L2M+ICA8Yz4xNjwvYz4gIDxjPjIwMDAmbmJzcDtIejwvYz4gIDxjPjI0MDAmbmJzcDtIejwvYz4K
KzxjPjEwPC9jPiAgPGM+MjwvYz4gIDxjPjQ8L2M+ICA8Yz44PC9jPiAgPGM+MTY8L2M+ICA8Yz4y
NDAwJm5ic3A7SHo8L2M+ICA8Yz4yODAwJm5ic3A7SHo8L2M+Cis8Yz4xMTwvYz4gIDxjPjI8L2M+
ICA8Yz40PC9jPiAgPGM+ODwvYz4gIDxjPjE2PC9jPiAgPGM+MjgwMCZuYnNwO0h6PC9jPiAgPGM+
MzIwMCZuYnNwO0h6PC9jPgorPGM+MTI8L2M+ICA8Yz40PC9jPiAgPGM+ODwvYz4gPGM+MTY8L2M+
ICA8Yz4zMjwvYz4gIDxjPjMyMDAmbmJzcDtIejwvYz4gIDxjPjQwMDAmbmJzcDtIejwvYz4KKzxj
PjEzPC9jPiAgPGM+NDwvYz4gIDxjPjg8L2M+IDxjPjE2PC9jPiAgPGM+MzI8L2M+ICA8Yz40MDAw
Jm5ic3A7SHo8L2M+ICA8Yz40ODAwJm5ic3A7SHo8L2M+Cis8Yz4xNDwvYz4gIDxjPjQ8L2M+ICA8
Yz44PC9jPiA8Yz4xNjwvYz4gIDxjPjMyPC9jPiAgPGM+NDgwMCZuYnNwO0h6PC9jPiAgPGM+NTYw
MCZuYnNwO0h6PC9jPgorPGM+MTU8L2M+ICA8Yz42PC9jPiA8Yz4xMjwvYz4gPGM+MjQ8L2M+ICA8
Yz40ODwvYz4gIDxjPjU2MDAmbmJzcDtIejwvYz4gIDxjPjY4MDAmbmJzcDtIejwvYz4KKzxjPjE2
PC9jPiAgPGM+NjwvYz4gPGM+MTI8L2M+IDxjPjI0PC9jPiAgPGM+NDg8L2M+ICA8Yz42ODAwJm5i
c3A7SHo8L2M+ICA8Yz44MDAwJm5ic3A7SHo8L2M+Cis8Yz4xNzwvYz4gIDxjPjg8L2M+IDxjPjE2
PC9jPiA8Yz4zMjwvYz4gIDxjPjY0PC9jPiAgPGM+ODAwMCZuYnNwO0h6PC9jPiAgPGM+OTYwMCZu
YnNwO0h6PC9jPgorPGM+MTg8L2M+IDxjPjEyPC9jPiA8Yz4yNDwvYz4gPGM+NDg8L2M+ICA8Yz45
NjwvYz4gIDxjPjk2MDAmbmJzcDtIejwvYz4gPGM+MTIwMDAmbmJzcDtIejwvYz4KKzxjPjE5PC9j
PiA8Yz4xODwvYz4gPGM+MzY8L2M+IDxjPjcyPC9jPiA8Yz4xNDQ8L2M+IDxjPjEyMDAwJm5ic3A7
SHo8L2M+IDxjPjE1NjAwJm5ic3A7SHo8L2M+Cis8Yz4yMDwvYz4gPGM+MjI8L2M+IDxjPjQ0PC9j
PiA8Yz44ODwvYz4gPGM+MTc2PC9jPiA8Yz4xNTYwMCZuYnNwO0h6PC9jPiA8Yz4yMDAwMCZuYnNw
O0h6PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorVHJhbnNpZW50cyBhcmUgbm90b3Jpb3VzbHkg
ZGlmZmljdWx0IGZvciB0cmFuc2Zvcm0gY29kZWNzIHRvIGNvZGUuCitDRUxUIHVzZXMgdHdvIGRp
ZmZlcmVudCBzdHJhdGVnaWVzIGZvciB0aGVtOgorPGxpc3Qgc3R5bGU9Im51bWJlcnMiPgorPHQ+
VXNpbmcgbXVsdGlwbGUgc21hbGxlciBNRENUcyBpbnN0ZWFkIG9mIGEgc2luZ2xlIGxhcmdlIE1E
Q1QsIGFuZDwvdD4KKzx0PkR5bmFtaWMgdGltZS1mcmVxdWVuY3kgcmVzb2x1dGlvbiBjaGFuZ2Vz
IChTZWUgPHhyZWYgdGFyZ2V0PSd0Zi1jaGFuZ2UnLz4pLjwvdD4KKzwvbGlzdD4KK1RvIGltcHJv
dmUgcXVhbGl0eSBvbiBoaWdobHkgdG9uYWwgYW5kIHBlcmlvZGljIHNpZ25hbHMsIENFTFQgaW5j
bHVkZXMKK2EgcHJlZmlsdGVyL3Bvc3RmaWx0ZXIgY29tYmluYXRpb24uIFRoZSBwcmVmaWx0ZXIg
b24gdGhlIGVuY29kZXIgc2lkZQorYXR0ZW51YXRlcyB0aGUgc2lnbmFsJ3MgaGFybW9uaWNzLiBU
aGUgcG9zdGZpbHRlciBvbiB0aGUgZGVjb2RlciBzaWRlCityZXN0b3JlcyB0aGUgb3JpZ2luYWwg
Z2FpbiBvZiB0aGUgaGFybW9uaWNzLCB3aGlsZSBzaGFwaW5nIHRoZSBjb2Rpbmcgbm9pc2UKK3Rv
IHJvdWdobHkgZm9sbG93IHRoZSBoYXJtb25pY3MuIFN1Y2ggbm9pc2Ugc2hhcGluZyByZWR1Y2Vz
IHRoZSBwZXJjZXB0aW9uCitvZiB0aGUgbm9pc2UuCis8L3Q+CisKKzx0PgorV2hlbiBjb2Rpbmcg
YSBzdGVyZW8gc2lnbmFsLCB0aHJlZSBjb2RpbmcgbWV0aG9kcyBhcmUgYXZhaWxhYmxlOgorPGxp
c3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+bWlkLXNpZGUgc3RlcmVvOiBlbmNvZGVzIHRoZSBtZWFu
IGFuZCB0aGUgZGlmZmVyZW5jZSBvZiB0aGUgbGVmdCBhbmQgcmlnaHQgY2hhbm5lbHMsPC90Pgor
PHQ+aW50ZW5zaXR5IHN0ZXJlbzogb25seSBlbmNvZGVzIHRoZSBtZWFuIG9mIHRoZSBsZWZ0IGFu
ZCByaWdodCBjaGFubmVscyAoZGlzY2FyZHMgdGhlIGRpZmZlcmVuY2UpLDwvdD4KKzx0PmR1YWwg
c3RlcmVvOiBlbmNvZGVzIHRoZSBsZWZ0IGFuZCByaWdodCBjaGFubmVscyBzZXBhcmF0ZWx5Ljwv
dD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitBbiBvdmVydmlldyBvZiB0aGUgZGVjb2RlciBpcyBn
aXZlbiBpbiA8eHJlZiB0YXJnZXQ9ImNlbHQtZGVjb2Rlci1vdmVydmlldyIvPi4KKzwvdD4KKwor
PGZpZ3VyZSBhbmNob3I9ImNlbHQtZGVjb2Rlci1vdmVydmlldyIgdGl0bGU9IlN0cnVjdHVyZSBv
ZiB0aGUgQ0VMVCBkZWNvZGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
ICAgICAgICAgICAgICAgKy0tLS0tLS0tLSsKKyAgICAgICAgICAgICAgIHwgQ29hcnNlICB8Cisg
ICAgICAgICAgICArLT58IGRlY29kZXIgfC0tLS0rCisgICAgICAgICAgICB8ICArLS0tLS0tLS0t
KyAgICB8CisgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICB8ICAr
LS0tLS0tLS0tKyAgICB2CisgICAgICAgICAgICB8ICB8ICBGaW5lICAgfCAgKy0tLSsKKyAgICAg
ICAgICAgICstPnwgZGVjb2RlciB8LT58ICsgfAorICAgICAgICAgICAgfCAgKy0tLS0tLS0tLSsg
ICstLS0rCisgICAgICAgICAgICB8ICAgICAgIF4gICAgICAgICB8CisrLS0tLS0tLS0tKyB8ICAg
ICAgIHwgICAgICAgICB8Cit8ICBSYW5nZSAgfCB8ICstLS0tLS0tLS0tKyAgICB2Cit8IERlY29k
ZXIgfC0rIHwgICBCaXQgICAgfCArLS0tLS0tKworKy0tLS0tLS0tLSsgfCB8QWxsb2NhdGlvbnwg
fCAyKip4IHwKKyAgICAgICAgICAgIHwgKy0tLS0tLS0tLS0rICstLS0tLS0rCisgICAgICAgICAg
ICB8ICAgICAgIHwgICAgICAgICB8CisgICAgICAgICAgICB8ICAgICAgIHYgICAgICAgICB2ICAg
ICAgICAgICAgICAgKy0tLS0tLS0tKworICAgICAgICAgICAgfCAgKy0tLS0tLS0tLSsgICstLS0r
ICArLS0tLS0tLSsgIHwgcGl0Y2ggIHwKKyAgICAgICAgICAgICstPnwgICBQVlEgICB8LT58ICog
fC0+fCBJTURDVCB8LT58IHBvc3QtICB8LS0tPgorICAgICAgICAgICAgfCAgfCBkZWNvZGVyIHwg
ICstLS0rICArLS0tLS0tLSsgIHwgZmlsdGVyIHwKKyAgICAgICAgICAgIHwgICstLS0tLS0tLS0r
ICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBeCisgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+
CitUaGUgZGVjb2RlciBpcyBiYXNlZCBvbiB0aGUgZm9sbG93aW5nIHN5bWJvbHMgYW5kIHNldHMg
b2Ygc3ltYm9sczoKKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9ImNlbHRfc3ltYm9scyIKKyB0
aXRsZT0iT3JkZXIgb2YgdGhlIFN5bWJvbHMgaW4gdGhlIENFTFQgU2VjdGlvbiBvZiB0aGUgQml0
c3RyZWFtIj4KKzx0dGNvbCBhbGlnbj0iY2VudGVyIj5TeW1ib2wocyk8L3R0Y29sPgorPHR0Y29s
IGFsaWduPSJjZW50ZXIiPlBERjwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+Q29uZGl0
aW9uPC90dGNvbD4KKzxjPnNpbGVuY2U8L2M+ICAgICAgPGM+ezMyNzY3LCAxfS8zMjc2ODwvYz4g
PGM+PC9jPgorPGM+cG9zdC1maWx0ZXI8L2M+ICA8Yz57MSwgMX0vMjwvYz4gPGM+PC9jPgorPGM+
b2N0YXZlPC9jPiAgICAgICA8Yz51bmlmb3JtICg2KTwvYz48Yz5wb3N0LWZpbHRlcjwvYz4KKzxj
PnBlcmlvZDwvYz4gICAgICAgPGM+cmF3IGJpdHMgKDQrb2N0YXZlKTwvYz48Yz5wb3N0LWZpbHRl
cjwvYz4KKzxjPmdhaW48L2M+ICAgICAgICAgPGM+cmF3IGJpdHMgKDMpPC9jPjxjPnBvc3QtZmls
dGVyPC9jPgorPGM+dGFwc2V0PC9jPiAgICAgICA8Yz57MiwgMSwgMX0vNDwvYz48Yz5wb3N0LWZp
bHRlcjwvYz4KKzxjPnRyYW5zaWVudDwvYz4gICAgPGM+ezcsIDF9Lzg8L2M+PGM+PC9jPgorPGM+
aW50cmE8L2M+ICAgICAgICA8Yz57NywgMX0vODwvYz48Yz48L2M+Cis8Yz5jb2Fyc2UgZW5lcmd5
PC9jPjxjPjx4cmVmIHRhcmdldD0iZW5lcmd5LWRlY29kaW5nIi8+PC9jPjxjPjwvYz4KKzxjPnRm
X2NoYW5nZTwvYz4gICAgPGM+PHhyZWYgdGFyZ2V0PSJ0cmFuc2llbnQtZGVjb2RpbmciLz48L2M+
PGM+PC9jPgorPGM+dGZfc2VsZWN0PC9jPiAgICA8Yz57MSwgMX0vMjwvYz48Yz48eHJlZiB0YXJn
ZXQ9InRyYW5zaWVudC1kZWNvZGluZyIvPjwvYz4KKzxjPnNwcmVhZDwvYz4gICAgICAgPGM+ezcs
IDIsIDIxLCAyfS8zMjwvYz48Yz48L2M+Cis8Yz5keW4uIGFsbG9jLjwvYz4gIDxjPjx4cmVmIHRh
cmdldD0iYWxsb2NhdGlvbiIvPjwvYz48Yz48L2M+Cis8Yz5hbGxvYy4gdHJpbTwvYz4gIDxjPnsy
LCAyLCA1LCAxMCwgMjIsIDQ2LCAyMiwgMTAsIDUsIDIsIDJ9LzEyODwvYz48Yz48L2M+Cis8Yz5z
a2lwPC9jPiAgICAgICAgIDxjPnsxLCAxfS8yPC9jPjxjPjx4cmVmIHRhcmdldD0iYWxsb2NhdGlv
biIvPjwvYz4KKzxjPmludGVuc2l0eTwvYz4gICAgPGM+dW5pZm9ybTwvYz48Yz48eHJlZiB0YXJn
ZXQ9ImFsbG9jYXRpb24iLz48L2M+Cis8Yz5kdWFsPC9jPiAgICAgICAgIDxjPnsxLCAxfS8yPC9j
PjxjPjwvYz4KKzxjPmZpbmUgZW5lcmd5PC9jPiAgPGM+PHhyZWYgdGFyZ2V0PSJlbmVyZ3ktZGVj
b2RpbmciLz48L2M+PGM+PC9jPgorPGM+cmVzaWR1YWw8L2M+ICAgICA8Yz48eHJlZiB0YXJnZXQ9
IlBWUS1kZWNvZGVyIi8+PC9jPjxjPjwvYz4KKzxjPmFudGktY29sbGFwc2U8L2M+PGM+ezEsIDF9
LzI8L2M+PGM+PHhyZWYgdGFyZ2V0PSJhbnRpLWNvbGxhcHNlIi8+PC9jPgorPGM+ZmluYWxpemU8
L2M+ICAgICA8Yz48eHJlZiB0YXJnZXQ9ImVuZXJneS1kZWNvZGluZyIvPjwvYz48Yz48L2M+Cis8
L3RleHR0YWJsZT4KKworPHQ+CitUaGUgZGVjb2RlciBleHRyYWN0cyBpbmZvcm1hdGlvbiBmcm9t
IHRoZSByYW5nZS1jb2RlZCBiaXRzdHJlYW0gaW4gdGhlIG9yZGVyCitkZXNjcmliZWQgaW4gPHhy
ZWYgdGFyZ2V0PSdjZWx0X3N5bWJvbHMnLz4uIEluIHNvbWUgY2lyY3Vtc3RhbmNlcywgaXQgaXMK
K3Bvc3NpYmxlIGZvciBhIGRlY29kZWQgdmFsdWUgdG8gYmUgb3V0IG9mIHJhbmdlIGR1ZSB0byBh
IHZlcnkgc21hbGwgYW1vdW50IG9mIHJlZHVuZGFuY3kKK2luIHRoZSBlbmNvZGluZyBvZiBsYXJn
ZSBpbnRlZ2VycyBieSB0aGUgcmFuZ2UgY29kZXIuCitJbiB0aGF0IGNhc2UsIHRoZSBkZWNvZGVy
IHNob3VsZCBhc3N1bWUgdGhlcmUgaGFzIGJlZW4gYW4gZXJyb3IgaW4gdGhlIGNvZGluZywKK2Rl
Y29kaW5nLCBvciB0cmFuc21pc3Npb24gYW5kIFNIT1VMRCB0YWtlIG1lYXN1cmVzIHRvIGNvbmNl
YWwgdGhlIGVycm9yIGFuZC9vciByZXBvcnQKK3RvIHRoZSBhcHBsaWNhdGlvbiB0aGF0IGEgcHJv
YmxlbSBoYXMgb2NjdXJyZWQuIFN1Y2ggb3V0IG9mIHJhbmdlIGVycm9ycyBjYW5ub3Qgb2NjdXIK
K2luIHRoZSBTSUxLIGxheWVyLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9InRyYW5zaWVudC1k
ZWNvZGluZyIgdGl0bGU9IlRyYW5zaWVudCBEZWNvZGluZyI+Cis8dD4KK1RoZSAidHJhbnNpZW50
IiBmbGFnIGluZGljYXRlcyB3aGV0aGVyIHRoZSBmcmFtZSB1c2VzIGEgc2luZ2xlIGxvbmcgTURD
VCBvciBzZXZlcmFsIHNob3J0IE1EQ1RzLgorV2hlbiBpdCBpcyBzZXQsIHRoZW4gdGhlIE1EQ1Qg
Y29lZmZpY2llbnRzIHJlcHJlc2VudCBtdWx0aXBsZQorc2hvcnQgTURDVHMgaW4gdGhlIGZyYW1l
LiBXaGVuIG5vdCBzZXQsIHRoZSBjb2VmZmljaWVudHMgcmVwcmVzZW50IGEgc2luZ2xlCitsb25n
IE1EQ1QgZm9yIHRoZSBmcmFtZS4gVGhlIGZsYWcgaXMgZW5jb2RlZCBpbiB0aGUgYml0c3RyZWFt
IHdpdGggYSBwcm9iYWJpbGl0eSBvZiAxLzguCitJbiBhZGRpdGlvbiB0byB0aGUgZ2xvYmFsIHRy
YW5zaWVudCBmbGFnIGlzIGEgcGVyLWJhbmQKK2JpbmFyeSBmbGFnIHRvIGNoYW5nZSB0aGUgdGlt
ZS1mcmVxdWVuY3kgKHRmKSByZXNvbHV0aW9uIGluZGVwZW5kZW50bHkgaW4gZWFjaCBiYW5kLiBU
aGUKK2NoYW5nZSBpbiB0ZiByZXNvbHV0aW9uIGlzIGRlZmluZWQgaW4gdGZfc2VsZWN0X3RhYmxl
W11bXSBpbiBjZWx0LmMgYW5kIGRlcGVuZHMKK29uIHRoZSBmcmFtZSBzaXplLCB3aGV0aGVyIHRo
ZSB0cmFuc2llbnQgZmxhZyBpcyBzZXQsIGFuZCB0aGUgdmFsdWUgb2YgdGZfc2VsZWN0LgorVGhl
IHRmX3NlbGVjdCBmbGFnIHVzZXMgYSAxLzIgcHJvYmFiaWxpdHksIGJ1dCBpcyBvbmx5IGRlY29k
ZWQKK2lmIGl0IGNhbiBoYXZlIGFuIGltcGFjdCBvbiB0aGUgcmVzdWx0IGtub3dpbmcgdGhlIHZh
bHVlIG9mIGFsbCBwZXItYmFuZAordGZfY2hhbmdlIGZsYWdzLgorPC90PgorPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiBhbmNob3I9ImVuZXJneS1kZWNvZGluZyIgdGl0bGU9IkVuZXJneSBFbnZlbG9w
ZSBEZWNvZGluZyI+CisKKzx0PgorSXQgaXMgaW1wb3J0YW50IHRvIHF1YW50aXplIHRoZSBlbmVy
Z3kgd2l0aCBzdWZmaWNpZW50IHJlc29sdXRpb24gYmVjYXVzZQorYW55IGVuZXJneSBxdWFudGl6
YXRpb24gZXJyb3IgY2Fubm90IGJlIGNvbXBlbnNhdGVkIGZvciBhdCBhIGxhdGVyCitzdGFnZS4g
UmVnYXJkbGVzcyBvZiB0aGUgcmVzb2x1dGlvbiB1c2VkIGZvciBlbmNvZGluZyB0aGUgc3BlY3Ry
YWwgc2hhcGUgb2YgYSBiYW5kLAoraXQgaXMgcGVyY2VwdHVhbGx5IGltcG9ydGFudCB0byBwcmVz
ZXJ2ZSB0aGUgZW5lcmd5IGluIGVhY2ggYmFuZC4gQ0VMVCB1c2VzIGEKK3RocmVlLXN0ZXAgY29h
cnNlLWZpbmUtZmluZSBzdHJhdGVneSBmb3IgZW5jb2RpbmcgdGhlIGVuZXJneSBpbiB0aGUgYmFz
ZS0yIGxvZworZG9tYWluLCBhcyBpbXBsZW1lbnRlZCBpbiBxdWFudF9iYW5kcy5jPC90PgorCis8
c2VjdGlvbiBhbmNob3I9ImNvYXJzZS1lbmVyZ3ktZGVjb2RpbmciIHRpdGxlPSJDb2Fyc2UgZW5l
cmd5IGRlY29kaW5nIj4KKzx0PgorQ29hcnNlIHF1YW50aXphdGlvbiBvZiB0aGUgZW5lcmd5IHVz
ZXMgYSBmaXhlZCByZXNvbHV0aW9uIG9mIDYgZEIKKyhpbnRlZ2VyIHBhcnQgb2YgYmFzZS0yIGxv
ZykuIFRvIG1pbmltaXplIHRoZSBiaXRyYXRlLCBwcmVkaWN0aW9uIGlzIGFwcGxpZWQKK2JvdGgg
aW4gdGltZSAodXNpbmcgdGhlIHByZXZpb3VzIGZyYW1lKSBhbmQgaW4gZnJlcXVlbmN5ICh1c2lu
ZyB0aGUgcHJldmlvdXMKK2JhbmRzKS4gVGhlIHBhcnQgb2YgdGhlIHByZWRpY3Rpb24gdGhhdCBp
cyBiYXNlZCBvbiB0aGUKK3ByZXZpb3VzIGZyYW1lIGNhbiBiZSBkaXNhYmxlZCwgY3JlYXRpbmcg
YW4gImludHJhIiBmcmFtZSB3aGVyZSB0aGUgZW5lcmd5CitpcyBjb2RlZCB3aXRob3V0IHJlZmVy
ZW5jZSB0byBwcmlvciBmcmFtZXMuIFRoZSBkZWNvZGVyIGZpcnN0IHJlYWRzIHRoZSBpbnRyYSBm
bGFnCit0byBkZXRlcm1pbmUgd2hhdCBwcmVkaWN0aW9uIGlzIHVzZWQuCitUaGUgMi1EIHotdHJh
bnNmb3JtIDx4cmVmIHRhcmdldD0nei10cmFuc2Zvcm0nLz4gb2YKK3RoZSBwcmVkaWN0aW9uIGZp
bHRlciBpczoKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij48IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMSAgICAgICAgICAtMQor
ICAgICAgICAgICAgICAoMSAtIGFscGhhKnpfbCAgKSooMSAtIHpfYiAgKQorQSh6X2wsIHpfYikg
PSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLTEKKyAgICAgICAgICAgICAgICAgICAgIDEgLSBiZXRhKnpfYgorXV0+PC9hcnR3
b3JrPgorPC9maWd1cmU+Cit3aGVyZSBiIGlzIHRoZSBiYW5kIGluZGV4IGFuZCBsIGlzIHRoZSBm
cmFtZSBpbmRleC4gVGhlIHByZWRpY3Rpb24gY29lZmZpY2llbnRzCithcHBsaWVkIGRlcGVuZCBv
biB0aGUgZnJhbWUgc2l6ZSBpbiB1c2Ugd2hlbiBub3QgdXNpbmcgaW50cmEgZW5lcmd5IGFuZCBh
cmUgYWxwaGE9MCwgYmV0YT00OTE1LzMyNzY4Cit3aGVuIHVzaW5nIGludHJhIGVuZXJneS4KK1Ro
ZSB0aW1lLWRvbWFpbiBwcmVkaWN0aW9uIGlzIGJhc2VkIG9uIHRoZSBmaW5hbCBmaW5lIHF1YW50
aXphdGlvbiBvZiB0aGUgcHJldmlvdXMKK2ZyYW1lLCB3aGlsZSB0aGUgZnJlcXVlbmN5IGRvbWFp
biAod2l0aGluIHRoZSBjdXJyZW50IGZyYW1lKSBwcmVkaWN0aW9uIGlzIGJhc2VkCitvbiBjb2Fy
c2UgcXVhbnRpemF0aW9uIG9ubHkgKGJlY2F1c2UgdGhlIGZpbmUgcXVhbnRpemF0aW9uIGhhcyBu
b3QgYmVlbiBjb21wdXRlZAoreWV0KS4gVGhlIHByZWRpY3Rpb24gaXMgY2xhbXBlZCBpbnRlcm5h
bGx5IHNvIHRoYXQgZml4ZWQgcG9pbnQgaW1wbGVtZW50YXRpb25zIHdpdGgKK2xpbWl0ZWQgZHlu
YW1pYyByYW5nZSBhbHdheXMgcmVtYWluIGluIHRoZSBzYW1lIHN0YXRlIGFzIGZsb2F0aW5nIHBv
aW50IGltcGxlbWVudGF0aW9ucy4KK1dlIGFwcHJveGltYXRlIHRoZSBpZGVhbAorcHJvYmFiaWxp
dHkgZGlzdHJpYnV0aW9uIG9mIHRoZSBwcmVkaWN0aW9uIGVycm9yIHVzaW5nIGEgTGFwbGFjZSBk
aXN0cmlidXRpb24KK3dpdGggc2VwYXJhdGUgcGFyYW1ldGVycyBmb3IgZWFjaCBmcmFtZSBzaXpl
IGluIGludHJhLSBhbmQgaW50ZXItZnJhbWUgbW9kZXMuIFRoZXNlCitwYXJhbWV0ZXJzIGFyZSBo
ZWxkIGluIHRoZSBlX3Byb2JfbW9kZWwgdGFibGUgaW4gcXVhbnRfYmFuZHMuYy4KK1RoZQorY29h
cnNlIGVuZXJneSBxdWFudGl6YXRpb24gaXMgcGVyZm9ybWVkIGJ5IHVucXVhbnRfY29hcnNlX2Vu
ZXJneSgpIGFuZAordW5xdWFudF9jb2Fyc2VfZW5lcmd5X2ltcGwoKSAocXVhbnRfYmFuZHMuYyku
IFRoZSBlbmNvZGluZyBvZiB0aGUgTGFwbGFjZS1kaXN0cmlidXRlZCB2YWx1ZXMgaXMKK2ltcGxl
bWVudGVkIGluIGVjX2xhcGxhY2VfZGVjb2RlKCkgKGxhcGxhY2UuYykuCis8L3Q+CisKKzwvc2Vj
dGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJmaW5lLWVuZXJneS1kZWNvZGluZyIgdGl0bGU9IkZp
bmUgZW5lcmd5IHF1YW50aXphdGlvbiI+Cis8dD4KK1RoZSBudW1iZXIgb2YgYml0cyBhc3NpZ25l
ZCB0byBmaW5lIGVuZXJneSBxdWFudGl6YXRpb24gaW4gZWFjaCBiYW5kIGlzIGRldGVybWluZWQK
K2J5IHRoZSBiaXQgYWxsb2NhdGlvbiBjb21wdXRhdGlvbiBkZXNjcmliZWQgaW4gPHhyZWYgdGFy
Z2V0PSJhbGxvY2F0aW9uIj48L3hyZWY+LgorTGV0IEJfaSBiZSB0aGUgbnVtYmVyIG9mIGZpbmUg
ZW5lcmd5IGJpdHMKK2ZvciBiYW5kIGk7IHRoZSByZWZpbmVtZW50IGlzIGFuIGludGVnZXIgZiBp
biB0aGUgcmFuZ2UgWzAsMioqQl9pLTFdLiBUaGUgbWFwcGluZyBiZXR3ZWVuIGYKK2FuZCB0aGUg
Y29ycmVjdGlvbiBhcHBsaWVkIHRvIHRoZSBjb2Fyc2UgZW5lcmd5IGlzIGVxdWFsIHRvIChmKzEv
MikvMioqQl9pIC0gMS8yLiBGaW5lCitlbmVyZ3kgcXVhbnRpemF0aW9uIGlzIGltcGxlbWVudGVk
IGluIHF1YW50X2ZpbmVfZW5lcmd5KCkgKHF1YW50X2JhbmRzLmMpLgorPC90PgorPHQ+CitXaGVu
IHNvbWUgYml0cyBhcmUgbGVmdCAidW51c2VkIiBhZnRlciBhbGwgb3RoZXIgZmxhZ3MgaGF2ZSBi
ZWVuIGRlY29kZWQsIHRoZXNlIGJpdHMKK2FyZSBhc3NpZ25lZCB0byBhICJmaW5hbCIgc3RlcCBv
ZiBmaW5lIGFsbG9jYXRpb24uIEluIGVmZmVjdCwgdGhlc2UgYml0cyBhcmUgdXNlZAordG8gYWRk
IG9uZSBleHRyYSBmaW5lIGVuZXJneSBiaXQgcGVyIGJhbmQgcGVyIGNoYW5uZWwuIFRoZSBhbGxv
Y2F0aW9uIHByb2Nlc3MKK2RldGVybWluZXMgdHdvICJwcmlvcml0aWVzIiBmb3IgdGhlIGZpbmFs
IGZpbmUgYml0cy4KK0FueSByZW1haW5pbmcgYml0cyBhcmUgZmlyc3QgYXNzaWduZWQgb25seSB0
byBiYW5kcyBvZiBwcmlvcml0eSAwLCBzdGFydGluZworZnJvbSBiYW5kIDAgYW5kIGdvaW5nIHVw
LiBJZiBhbGwgYmFuZHMgb2YgcHJpb3JpdHkgMCBoYXZlIHJlY2VpdmVkIG9uZSBiaXQgcGVyCitj
aGFubmVsLCB0aGVuIGJhbmRzIG9mIHByaW9yaXR5IDEgYXJlIGFzc2lnbmVkIGFuIGV4dHJhIGJp
dCBwZXIgY2hhbm5lbCwKK3N0YXJ0aW5nIGZyb20gYmFuZCAwLiBJZiBhbnkgYml0cyBhcmUgbGVm
dCBhZnRlciB0aGlzLCB0aGV5IGFyZSBsZWZ0IHVudXNlZC4KK1RoaXMgaXMgaW1wbGVtZW50ZWQg
aW4gdW5xdWFudF9lbmVyZ3lfZmluYWxpc2UoKSAocXVhbnRfYmFuZHMuYykuCis8L3Q+CisKKzwv
c2VjdGlvbj4gPCEtLSBmaW5lIGVuZXJneSAtLT4KKworPC9zZWN0aW9uPiA8IS0tIEVuZXJneSBk
ZWNvZGUgLS0+CisKKzxzZWN0aW9uIGFuY2hvcj0iYWxsb2NhdGlvbiIgdGl0bGU9IkJpdCBBbGxv
Y2F0aW9uIj4KKworPHQ+QmVjYXVzZSB0aGUgYml0IGFsbG9jYXRpb24gZHJpdmVzIHRoZSBkZWNv
ZGluZyBvZiB0aGUgcmFuZ2UtY29kZXIKK3N0cmVhbSwgaXQgTVVTVCBiZSByZWNvdmVyZWQgZXhh
Y3RseSBzbyB0aGF0IGlkZW50aWNhbCBjb2RpbmcgZGVjaXNpb25zIGFyZQorbWFkZSBpbiB0aGUg
ZW5jb2RlciBhbmQgZGVjb2Rlci4gQW55IGRldmlhdGlvbiBmcm9tIHRoZSByZWZlcmVuY2UncyBy
ZXN1bHRpbmcKK2JpdCBhbGxvY2F0aW9uIHdpbGwgcmVzdWx0IGluIGNvcnJ1cHRlZCBvdXRwdXQs
IHRob3VnaCBpbXBsZW1lbnRlcnMgYXJlCitmcmVlIHRvIGltcGxlbWVudCB0aGUgcHJvY2VkdXJl
IGluIGFueSB3YXkgd2hpY2ggcHJvZHVjZXMgaWRlbnRpY2FsIHJlc3VsdHMuPC90PgorCis8dD5U
aGUgcGVyLWJhbmQgZ2Fpbi1zaGFwZSBzdHJ1Y3R1cmUgb2YgdGhlIENFTFQgbGF5ZXIgZW5zdXJl
cyB0aGF0IHVzaW5nCisgdGhlIHNhbWUgbnVtYmVyIG9mIGJpdHMgZm9yIHRoZSBzcGVjdHJhbCBz
aGFwZSBvZiBhIGJhbmQgaW4gZXZlcnkgZnJhbWUgd2lsbAorIHJlc3VsdCBpbiBhIHJvdWdobHkg
Y29uc3RhbnQgc2lnbmFsLXRvLW5vaXNlIHJhdGlvIGluIHRoYXQgYmFuZC4KK1RoaXMgcmVzdWx0
cyBpbiBjb2Rpbmcgbm9pc2UgdGhhdCBoYXMgdGhlIHNhbWUgc3BlY3RyYWwgZW52ZWxvcGUgYXMg
dGhlIHNpZ25hbC4KK1RoZSBtYXNraW5nIGN1cnZlIHByb2R1Y2VkIGJ5IGEgc3RhbmRhcmQgcHN5
Y2hvYWNvdXN0aWMgbW9kZWwgYWxzbyBjbG9zZWx5CisgZm9sbG93cyB0aGUgc3BlY3RyYWwgZW52
ZWxvcGUgb2YgdGhlIHNpZ25hbC4KK1RoaXMgc3RydWN0dXJlIG1lYW5zIHRoYXQgdGhlIGlkZWFs
IGFsbG9jYXRpb24gaXMgbW9yZSBjb25zaXN0ZW50IGZyb20gZnJhbWUgdG8KKyBmcmFtZSB0aGFu
IGl0IGlzIGZvciBvdGhlciBjb2RlY3Mgd2l0aG91dCBhbiBlcXVpdmFsZW50IHN0cnVjdHVyZSwg
YW5kIHRoYXQgYQorIGZpeGVkIGFsbG9jYXRpb24gcHJvdmlkZXMgZmFpcmx5IGNvbnNpc3RlbnQg
cGVyY2VwdHVhbAorIHBlcmZvcm1hbmNlJm5ic3A7PHhyZWYgdGFyZ2V0PSdWYWxpbjIwMTAnLz4u
PC90PgorCis8dD5NYW55IGNvZGVjcyB0cmFuc21pdCBzaWduaWZpY2FudCBhbW91bnRzIG9mIHNp
ZGUgaW5mb3JtYXRpb24gdG8gY29udHJvbCB0aGUKKyBiaXQgYWxsb2NhdGlvbiB3aXRoaW4gYSBm
cmFtZS4KK09mdGVuIHRoaXMgY29udHJvbCBpcyBvbmx5IGluZGlyZWN0LCBhbmQgbXVzdCBiZSBl
eGVyY2lzZWQgY2FyZWZ1bGx5IHRvCisgYWNoaWV2ZSB0aGUgZGVzaXJlZCByYXRlIGNvbnN0cmFp
bnRzLgorVGhlIENFTFQgbGF5ZXIsIGhvd2V2ZXIsIGNhbiBhZGFwdCBvdmVyIGEgdmVyeSB3aWRl
IHJhbmdlIG9mIHJhdGVzLCBhbmQgdGh1cworIGhhcyBhIGxhcmdlIG51bWJlciBvZiBjb2RlYm9v
ayBzaXplcyB0byBjaG9vc2UgZnJvbSBmb3IgZWFjaCBiYW5kLgorRXhwbGljaXRseSBzaWduYWxp
bmcgdGhlIHNpemUgb2YgZWFjaCBvZiB0aGVzZSBjb2RlYm9va3Mgd291bGQgaW1wb3NlCisgY29u
c2lkZXJhYmxlIG92ZXJoZWFkLCBldmVuIHRob3VnaCB0aGUgYWxsb2NhdGlvbiBpcyByZWxhdGl2
ZWx5IHN0YXRpYyBmcm9tCisgZnJhbWUgdG8gZnJhbWUuCitUaGlzIGlzIGJlY2F1c2UgYWxsIG9m
IHRoZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byBjb21wdXRlIHRoZXNlIGNvZGVib29rIHNpemVz
CisgbXVzdCBiZSBkZXJpdmVkIGZyb20gYSBzaW5nbGUgZnJhbWUgYnkgaXRzZWxmLCBpbiBvcmRl
ciB0byByZXRhaW4gcm9idXN0bmVzcworIHRvIHBhY2tldCBsb3NzLCBzbyB0aGUgc2lnbmFsaW5n
IGNhbm5vdCB0YWtlIGFkdmFudGFnZSBvZiBrbm93bGVkZ2Ugb2YgdGhlCisgYWxsb2NhdGlvbiBp
biBuZWlnaGJvcmluZyBmcmFtZXMuCitUaGlzIHByb2JsZW0gaXMgZXhhY2VyYmF0ZWQgaW4gbG93
LWxhdGVuY3kgKHNtYWxsIGZyYW1lIHNpemUpIGFwcGxpY2F0aW9ucywKKyB3aGljaCB3b3VsZCBp
bmNsdWRlIHRoaXMgb3ZlcmhlYWQgaW4gZXZlcnkgZnJhbWUuPC90PgorCis8dD5Gb3IgdGhpcyBy
ZWFzb24sIGluIHRoZSBNRENUIG1vZGUgT3B1cyB1c2VzIGEgcHJpbWFyaWx5IGltcGxpY2l0IGJp
dAorYWxsb2NhdGlvbi4gVGhlIGF2YWlsYWJsZSBiaXRzdHJlYW0gY2FwYWNpdHkgaXMga25vd24g
aW4gYWR2YW5jZSB0byBib3RoCit0aGUgZW5jb2RlciBhbmQgZGVjb2RlciB3aXRob3V0IGFkZGl0
aW9uYWwgc2lnbmFsaW5nLCB1bHRpbWF0ZWx5IGZyb20gdGhlCitwYWNrZXQgc2l6ZXMgZXhwcmVz
c2VkIGJ5IGEgaGlnaGVyLWxldmVsIHByb3RvY29sLiBVc2luZyB0aGlzIGluZm9ybWF0aW9uLAor
dGhlIGNvZGVjIGludGVycG9sYXRlcyBhbiBhbGxvY2F0aW9uIGZyb20gYSBoYXJkLWNvZGVkIHRh
YmxlLjwvdD4KKworPHQ+V2hpbGUgdGhlIGJhbmQtZW5lcmd5IHN0cnVjdHVyZSBlZmZlY3RpdmVs
eSBtb2RlbHMgaW50cmEtYmFuZCBtYXNraW5nLAoraXQgaWdub3JlcyB0aGUgd2Vha2VyIGludGVy
LWJhbmQgbWFza2luZywgYmFuZC10ZW1wb3JhbCBtYXNraW5nLCBhbmQKK290aGVyIGxlc3Mgc2ln
bmlmaWNhbnQgcGVyY2VwdHVhbCBlZmZlY3RzLiBXaGlsZSB0aGVzZSBlZmZlY3RzIGNhbgorb2Z0
ZW4gYmUgaWdub3JlZCwgdGhleSBjYW4gYmVjb21lIHNpZ25pZmljYW50IGZvciBwYXJ0aWN1bGFy
IHNhbXBsZXMuIE9uZQorbWVjaGFuaXNtIGF2YWlsYWJsZSB0byBlbmNvZGVycyB3b3VsZCBiZSB0
byBzaW1wbHkgaW5jcmVhc2UgdGhlIG92ZXJhbGwKK3JhdGUgZm9yIHRoZXNlIGZyYW1lcywgYnV0
IHRoaXMgaXMgbm90IHBvc3NpYmxlIGluIGEgY29uc3RhbnQgcmF0ZSBtb2RlCithbmQgY2FuIGJl
IGZhaXJseSBpbmVmZmljaWVudC4gQXMgYSByZXN1bHQgdGhyZWUgZXhwbGljaXRseSBzaWduYWxl
ZAorbWVjaGFuaXNtcyBhcmUgcHJvdmlkZWQgdG8gYWx0ZXIgdGhlIGltcGxpY2l0IGFsbG9jYXRp
b246PC90PgorCis8dD4KKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PkJhbmQgYm9vc3Q8L3Q+
Cis8dD5BbGxvY2F0aW9uIHRyaW08L3Q+Cis8dD5CYW5kIHNraXBwaW5nPC90PgorPC9saXN0Pgor
PC90PgorCis8dD5UaGUgZmlyc3Qgb2YgdGhlc2UgbWVjaGFuaXNtcywgYmFuZCBib29zdCwgYWxs
b3dzIGFuIGVuY29kZXIgdG8gYm9vc3QKK3RoZSBhbGxvY2F0aW9uIGluIHNwZWNpZmljIGJhbmRz
LiBUaGUgc2Vjb25kLCBhbGxvY2F0aW9uIHRyaW0sIHdvcmtzIGJ5CitiaWFzaW5nIHRoZSBvdmVy
YWxsIGFsbG9jYXRpb24gdG93YXJkcyBoaWdoZXIgb3IgbG93ZXIgZnJlcXVlbmN5IGJhbmRzLiBU
aGUgdGhpcmQsIGJhbmQKK3NraXBwaW5nLCBzZWxlY3RzIHdoaWNoIGxvdy1wcmVjaXNpb24gaGln
aCBmcmVxdWVuY3kgYmFuZHMKK3dpbGwgYmUgYWxsb2NhdGVkIG5vIHNoYXBlIGJpdHMgYXQgYWxs
LjwvdD4KKworPHQ+SW4gc3RlcmVvIG1vZGUgdGhlcmUgYXJlIHR3byBhZGRpdGlvbmFsIHBhcmFt
ZXRlcnMKK3BvdGVudGlhbGx5IGNvZGVkIGFzIHBhcnQgb2YgdGhlIGFsbG9jYXRpb24gcHJvY2Vk
dXJlOiBhIHBhcmFtZXRlciB0byBhbGxvdyB0aGUKK3NlbGVjdGl2ZSBlbGltaW5hdGlvbiBvZiBh
bGxvY2F0aW9uIGZvciB0aGUgJ3NpZGUnIChpLmUuLCBpbnRlbnNpdHkgc3RlcmVvKSBpbiBqb2lu
dGx5IGNvZGVkIGJhbmRzLAorYW5kIGEgZmxhZyB0byBkZWFjdGl2YXRlIGpvaW50IGNvZGluZyAo
aS5lLiwgZHVhbCBzdGVyZW8pLiBUaGVzZSB2YWx1ZXMgYXJlIG5vdCBzaWduYWxlZCBpZgordGhl
eSB3b3VsZCBiZSBtZWFuaW5nbGVzcyBpbiB0aGUgb3ZlcmFsbCBjb250ZXh0IG9mIHRoZSBhbGxv
Y2F0aW9uLjwvdD4KKworPHQ+QmVjYXVzZSBldmVyeSBzaWduYWxlZCBhZGp1c3RtZW50IGluY3Jl
YXNlcyBvdmVyaGVhZCBhbmQgaW1wbGVtZW50YXRpb24KK2NvbXBsZXhpdHksIG5vbmUgd2VyZSBp
bmNsdWRlZCBzcGVjdWxhdGl2ZWx5OiB0aGUgcmVmZXJlbmNlIGVuY29kZXIgbWFrZXMgdXNlCitv
ZiBhbGwgb2YgdGhlc2UgbWVjaGFuaXNtcy4gV2hpbGUgdGhlIGRlY2lzaW9uIGxvZ2ljIGluIHRo
ZSByZWZlcmVuY2Ugd2FzCitmb3VuZCB0byBiZSBlZmZlY3RpdmUgZW5vdWdoIHRvIGp1c3RpZnkg
dGhlIG92ZXJoZWFkIGFuZCBjb21wbGV4aXR5LCBmdXJ0aGVyCithbmFseXNpcyB0ZWNobmlxdWVz
IG1heSBiZSBkaXNjb3ZlcmVkIHdoaWNoIGluY3JlYXNlIHRoZSBlZmZlY3RpdmVuZXNzIG9mIHRo
ZXNlCitwYXJhbWV0ZXJzLiBBcyB3aXRoIG90aGVyIHNpZ25hbGVkIHBhcmFtZXRlcnMsIGFuIGVu
Y29kZXIgaXMgZnJlZSB0byBjaG9vc2UgdGhlCit2YWx1ZXMgaW4gYW55IG1hbm5lciwgYnV0IHVu
bGVzcyBhIHRlY2huaXF1ZSBpcyBrbm93biB0byBkZWxpdmVyIHN1cGVyaW9yCitwZXJjZXB0dWFs
IHJlc3VsdHMgdGhlIG1ldGhvZHMgdXNlZCBieSB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9u
IHNob3VsZCBiZQordXNlZC48L3Q+CisKKzx0PlRoZSBhbGxvY2F0aW9uIHByb2Nlc3MgY29uc2lz
dHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczogZGV0ZXJtaW5pbmcgdGhlIHBlci1iYW5kCittYXhp
bXVtIGFsbG9jYXRpb24gdmVjdG9yLCBkZWNvZGluZyB0aGUgYm9vc3RzLCBkZWNvZGluZyB0aGUg
dGlsdCwgZGV0ZXJtaW5pbmcKK3RoZSByZW1haW5pbmcgY2FwYWNpdHkgb2YgdGhlIGZyYW1lLCBz
ZWFyY2hpbmcgdGhlIG1vZGUgdGFibGUgZm9yIHRoZQorZW50cnkgbmVhcmVzdCBidXQgbm90IGV4
Y2VlZGluZyB0aGUgYXZhaWxhYmxlIHNwYWNlIChzdWJqZWN0IHRvIHRoZSB0aWx0LCBib29zdHMs
IGJhbmQKK21heGltdW1zLCBhbmQgYmFuZCBtaW5pbXVtcyksIGxpbmVhciBpbnRlcnBvbGF0aW9u
LCByZWFsbG9jYXRpb24gb2YKK3VudXNlZCBiaXRzIHdpdGggY29uY3VycmVudCBza2lwIGRlY29k
aW5nLCBkZXRlcm1pbmF0aW9uIG9mIHRoZQorZmluZS1lbmVyZ3kgdnMuIHNoYXBlIHNwbGl0LCBh
bmQgZmluYWwgcmVhbGxvY2F0aW9uLiBUaGlzIHByb2Nlc3MgcmVzdWx0cworaW4gYSBwZXItYmFu
ZCBzaGFwZSBhbGxvY2F0aW9uIChpbiAxLzh0aCBiaXQgdW5pdHMpLCBhIHBlci1iYW5kIGZpbmUt
ZW5lcmd5CithbGxvY2F0aW9uIChpbiAxIGJpdCBwZXIgY2hhbm5lbCB1bml0cyksIGEgc2V0IG9m
IGJhbmQgcHJpb3JpdGllcyBmb3IKK2NvbnRyb2xsaW5nIHRoZSB1c2Ugb2YgcmVtYWluaW5nIGJp
dHMgYXQgdGhlIGVuZCBvZiB0aGUgZnJhbWUsIGFuZCBhCityZW1haW5pbmcgYmFsYW5jZSBvZiB1
bmFsbG9jYXRlZCBzcGFjZSwgd2hpY2ggaXMgdXN1YWxseSB6ZXJvIGV4Y2VwdAorYXQgdmVyeSBo
aWdoIHJhdGVzLjwvdD4KKworPHQ+CitUaGUgInN0YXRpYyIgYml0IGFsbG9jYXRpb24gKGluIDEv
OCBiaXRzKSBmb3IgYSBxdWFsaXR5IHEsIGV4Y2x1ZGluZyB0aGUgbWluaW11bXMsIG1heGltdW1z
LAordGlsdCBhbmQgYm9vc3RzLCBpcyBlcXVhbCB0byBjaGFubmVscypOKmFsbG9jW2JhbmRdW3Fd
Jmx0OyZsdDtMTSZndDsmZ3Q7Miwgd2hlcmUKK2FsbG9jW11bXSBpcyBnaXZlbiBpbiA8eHJlZiB0
YXJnZXQ9InN0YXRpY19hbGxvYyIvPiBhbmQgTE09bG9nMihmcmFtZV9zaXplLzEyMCkuIFRoZSBh
bGxvY2F0aW9uCitpcyBvYnRhaW5lZCBieSBsaW5lYXJseSBpbnRlcnBvbGF0aW5nIGJldHdlZW4g
dHdvIHZhbHVlcyBvZiBxIChpbiBzdGVwcyBvZiAxLzY0KSB0byBmaW5kIHRoZQoraGlnaGVzdCBh
bGxvY2F0aW9uIHRoYXQgZG9lcyBub3QgZXhjZWVkIHRoZSBudW1iZXIgb2YgYml0cyByZW1haW5p
bmcuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzdGF0aWNfYWxsb2MiCisgdGl0bGU9IkNF
TFQgU3RhdGljIEFsbG9jYXRpb24gVGFibGUiPgorIDxwcmVhbWJsZT5Sb3dzIGluZGljYXRlIHRo
ZSBNRENUIGJhbmRzLCBjb2x1bW5zIGFyZSB0aGUgZGlmZmVyZW50IHF1YWxpdHkgKHEpIHBhcmFt
ZXRlcnMuIFRoZSB1bml0cyBhcmUgMS8zMiBiaXQgcGVyIE1EQ1QgYmluLjwvcHJlYW1ibGU+Cis8
dHRjb2wgYWxpZ249InJpZ2h0Ij4wPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjE8L3R0
Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+MjwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0
Ij4zPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjQ8L3R0Y29sPgorPHR0Y29sIGFsaWdu
PSJyaWdodCI+NTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij42PC90dGNvbD4KKzx0dGNv
bCBhbGlnbj0icmlnaHQiPjc8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+ODwvdHRjb2w+
Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij45PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjEw
PC90dGNvbD4KKzxjPjA8L2M+PGM+OTA8L2M+PGM+MTEwPC9jPjxjPjExODwvYz48Yz4xMjY8L2M+
PGM+MTM0PC9jPjxjPjE0NDwvYz48Yz4xNTI8L2M+PGM+MTYyPC9jPjxjPjE3MjwvYz48Yz4yMDA8
L2M+Cis8Yz4wPC9jPjxjPjgwPC9jPjxjPjEwMDwvYz48Yz4xMTA8L2M+PGM+MTE5PC9jPjxjPjEy
NzwvYz48Yz4xMzc8L2M+PGM+MTQ1PC9jPjxjPjE1NTwvYz48Yz4xNjU8L2M+PGM+MjAwPC9jPgor
PGM+MDwvYz48Yz43NTwvYz48Yz45MDwvYz48Yz4xMDM8L2M+PGM+MTEyPC9jPjxjPjEyMDwvYz48
Yz4xMzA8L2M+PGM+MTM4PC9jPjxjPjE0ODwvYz48Yz4xNTg8L2M+PGM+MjAwPC9jPgorPGM+MDwv
Yz48Yz42OTwvYz48Yz44NDwvYz48Yz45MzwvYz48Yz4xMDQ8L2M+PGM+MTE0PC9jPjxjPjEyNDwv
Yz48Yz4xMzI8L2M+PGM+MTQyPC9jPjxjPjE1MjwvYz48Yz4yMDA8L2M+Cis8Yz4wPC9jPjxjPjYz
PC9jPjxjPjc4PC9jPjxjPjg2PC9jPjxjPjk1PC9jPjxjPjEwMzwvYz48Yz4xMTM8L2M+PGM+MTIz
PC9jPjxjPjEzMzwvYz48Yz4xNDM8L2M+PGM+MjAwPC9jPgorPGM+MDwvYz48Yz41NjwvYz48Yz43
MTwvYz48Yz44MDwvYz48Yz44OTwvYz48Yz45NzwvYz48Yz4xMDc8L2M+PGM+MTE3PC9jPjxjPjEy
NzwvYz48Yz4xMzc8L2M+PGM+MjAwPC9jPgorPGM+MDwvYz48Yz40OTwvYz48Yz42NTwvYz48Yz43
NTwvYz48Yz44MzwvYz48Yz45MTwvYz48Yz4xMDE8L2M+PGM+MTExPC9jPjxjPjEyMTwvYz48Yz4x
MzE8L2M+PGM+MjAwPC9jPgorPGM+MDwvYz48Yz40MDwvYz48Yz41ODwvYz48Yz43MDwvYz48Yz43
ODwvYz48Yz44NTwvYz48Yz45NTwvYz48Yz4xMDU8L2M+PGM+MTE1PC9jPjxjPjEyNTwvYz48Yz4y
MDA8L2M+Cis8Yz4wPC9jPjxjPjM0PC9jPjxjPjUxPC9jPjxjPjY1PC9jPjxjPjcyPC9jPjxjPjc4
PC9jPjxjPjg4PC9jPjxjPjk4PC9jPjxjPjEwODwvYz48Yz4xMTg8L2M+PGM+MTk4PC9jPgorPGM+
MDwvYz48Yz4yOTwvYz48Yz40NTwvYz48Yz41OTwvYz48Yz42NjwvYz48Yz43MjwvYz48Yz44Mjwv
Yz48Yz45MjwvYz48Yz4xMDI8L2M+PGM+MTEyPC9jPjxjPjE5MzwvYz4KKzxjPjA8L2M+PGM+MjA8
L2M+PGM+Mzk8L2M+PGM+NTM8L2M+PGM+NjA8L2M+PGM+NjY8L2M+PGM+NzY8L2M+PGM+ODY8L2M+
PGM+OTY8L2M+PGM+MTA2PC9jPjxjPjE4ODwvYz4KKzxjPjA8L2M+PGM+MTg8L2M+PGM+MzI8L2M+
PGM+NDc8L2M+PGM+NTQ8L2M+PGM+NjA8L2M+PGM+NzA8L2M+PGM+ODA8L2M+PGM+OTA8L2M+PGM+
MTAwPC9jPjxjPjE4MzwvYz4KKzxjPjA8L2M+PGM+MTA8L2M+PGM+MjY8L2M+PGM+NDA8L2M+PGM+
NDc8L2M+PGM+NTQ8L2M+PGM+NjQ8L2M+PGM+NzQ8L2M+PGM+ODQ8L2M+PGM+OTQ8L2M+PGM+MTc4
PC9jPgorPGM+MDwvYz48Yz4wPC9jPjxjPjIwPC9jPjxjPjMxPC9jPjxjPjM5PC9jPjxjPjQ3PC9j
PjxjPjU3PC9jPjxjPjY3PC9jPjxjPjc3PC9jPjxjPjg3PC9jPjxjPjE3MzwvYz4KKzxjPjA8L2M+
PGM+MDwvYz48Yz4xMjwvYz48Yz4yMzwvYz48Yz4zMjwvYz48Yz40MTwvYz48Yz41MTwvYz48Yz42
MTwvYz48Yz43MTwvYz48Yz44MTwvYz48Yz4xNjg8L2M+Cis8Yz4wPC9jPjxjPjA8L2M+PGM+MDwv
Yz48Yz4xNTwvYz48Yz4yNTwvYz48Yz4zNTwvYz48Yz40NTwvYz48Yz41NTwvYz48Yz42NTwvYz48
Yz43NTwvYz48Yz4xNjM8L2M+Cis8Yz4wPC9jPjxjPjA8L2M+PGM+MDwvYz48Yz40PC9jPjxjPjE3
PC9jPjxjPjI5PC9jPjxjPjM5PC9jPjxjPjQ5PC9jPjxjPjU5PC9jPjxjPjY5PC9jPjxjPjE1ODwv
Yz4KKzxjPjA8L2M+PGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+MTI8L2M+PGM+MjM8L2M+PGM+
MzM8L2M+PGM+NDM8L2M+PGM+NTM8L2M+PGM+NjM8L2M+PGM+MTUzPC9jPgorPGM+MDwvYz48Yz4w
PC9jPjxjPjA8L2M+PGM+MDwvYz48Yz4xPC9jPjxjPjE2PC9jPjxjPjI2PC9jPjxjPjM2PC9jPjxj
PjQ2PC9jPjxjPjU2PC9jPjxjPjE0ODwvYz4KKzxjPjA8L2M+PGM+MDwvYz48Yz4wPC9jPjxjPjA8
L2M+PGM+MDwvYz48Yz4xMDwvYz48Yz4xNTwvYz48Yz4yMDwvYz48Yz4zMDwvYz48Yz40NTwvYz48
Yz4xMjk8L2M+Cis8Yz4wPC9jPjxjPjA8L2M+PGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+MTwv
Yz48Yz4xPC9jPjxjPjE8L2M+PGM+MTwvYz48Yz4yMDwvYz48Yz4xMDQ8L2M+Cis8L3RleHR0YWJs
ZT4KKworPHQ+VGhlIG1heGltdW0gYWxsb2NhdGlvbiB2ZWN0b3IgaXMgYW4gYXBwcm94aW1hdGlv
biBvZiB0aGUgbWF4aW11bSBzcGFjZQordGhhdCBjYW4gYmUgdXNlZCBieSBlYWNoIGJhbmQgZm9y
IGEgZ2l2ZW4gbW9kZS4gVGhlIHZhbHVlIGlzCithcHByb3hpbWF0ZSBiZWNhdXNlIHRoZSBzaGFw
ZSBlbmNvZGluZyBpcyB2YXJpYWJsZSByYXRlIChkdWUKK3RvIGVudHJvcHkgY29kaW5nIG9mIHNw
bGl0dGluZyBwYXJhbWV0ZXJzKS4gU2V0dGluZyB0aGUgbWF4aW11bSB0b28gbG93IHJlZHVjZXMg
dGhlCittYXhpbXVtIGFjaGlldmFibGUgcXVhbGl0eSBpbiBhIGJhbmQgd2hpbGUgc2V0dGluZyBp
dCB0b28gaGlnaAorbWF5IHJlc3VsdCBpbiB3YXN0ZTogYml0c3RyZWFtIGNhcGFjaXR5IGF2YWls
YWJsZSBhdCB0aGUgZW5kCitvZiB0aGUgZnJhbWUgd2hpY2ggY2FuIG5vdCBiZSBwdXQgdG8gYW55
IHVzZS4gVGhlIG1heGltdW1zCitzcGVjaWZpZWQgYnkgdGhlIGNvZGVjIHJlZmxlY3QgdGhlIGF2
ZXJhZ2UgbWF4aW11bS4gSW4gdGhlIHJlZmVyZW5jZQoraW1wbGVtZW50YXRpb24sIHRoZSBtYXhp
bXVtcyBpbiBiaXRzL3NhbXBsZSBhcmUgcHJlY29tcHV0ZWQgaW4gYSBzdGF0aWMgdGFibGUKKyhz
ZWUgY2FjaGVfY2FwczUwW10gaW4gc3RhdGljX21vZGVzX2Zsb2F0LmgpIGZvciBlYWNoIGJhbmQs
Citmb3IgZWFjaCB2YWx1ZSBvZiBMTSwgYW5kIGZvciBib3RoIG1vbm8gYW5kIHN0ZXJlby4KKwor
SW1wbGVtZW50YXRpb25zIGFyZSBleHBlY3RlZAordG8gc2ltcGx5IHVzZSB0aGUgc2FtZSB0YWJs
ZSBkYXRhLCBidXQgdGhlIHByb2NlZHVyZSBmb3IgZ2VuZXJhdGluZwordGhpcyB0YWJsZSBpcyBp
bmNsdWRlZCBpbiByYXRlLmMgYXMgcGFydCBvZiBjb21wdXRlX3B1bHNlX2NhY2hlKCkuPC90Pgor
Cis8dD5UbyBjb252ZXJ0IHRoZSB2YWx1ZXMgaW4gY2FjaGUuY2FwcyBpbnRvIHRoZSBhY3R1YWwg
bWF4aW11bXM6IGZpcnN0CitzZXQgbmJCYW5kcyB0byB0aGUgbWF4aW11bSBudW1iZXIgb2YgYmFu
ZHMgZm9yIHRoaXMgbW9kZSwgYW5kIHN0ZXJlbyB0bworemVybyBpZiBzdGVyZW8gaXMgbm90IGlu
IHVzZSBhbmQgb25lIG90aGVyd2lzZS4gRm9yIGVhY2ggYmFuZCBzZXQgTgordG8gdGhlIG51bWJl
ciBvZiBNRENUIGJpbnMgY292ZXJlZCBieSB0aGUgYmFuZCAoZm9yIG9uZSBjaGFubmVsKSwgc2V0
IExNCit0byB0aGUgc2hpZnQgdmFsdWUgZm9yIHRoZSBmcmFtZSBzaXplLAordGhlbiBzZXQgaSB0
byBuYkJhbmRzKigyKkxNK3N0ZXJlbykuIFRoZW4gc2V0IHRoZSBtYXhpbXVtIGZvciB0aGUgYmFu
ZCB0bwordGhlIGktdGggaW5kZXggb2YgY2FjaGUuY2FwcyArIDY0IGFuZCBtdWx0aXBseSBieSB0
aGUgbnVtYmVyIG9mIGNoYW5uZWxzCitpbiB0aGUgY3VycmVudCBmcmFtZSAob25lIG9yIHR3bykg
YW5kIGJ5IE4sIHRoZW4gZGl2aWRlIHRoZSByZXN1bHQgYnkgNAordXNpbmcgaW50ZWdlciBkaXZp
c2lvbi4gVGhlIHJlc3VsdGluZyB2ZWN0b3Igd2lsbCBiZSBjYWxsZWQKK2NhcFtdLiBUaGUgZWxl
bWVudHMgZml0IGluIHNpZ25lZCAxNi1iaXQgaW50ZWdlcnMgYnV0IGRvIG5vdCBmaXQgaW4gOCBi
aXRzLgorVGhpcyBwcm9jZWR1cmUgaXMgaW1wbGVtZW50ZWQgaW4gdGhlIHJlZmVyZW5jZSBpbiB0
aGUgZnVuY3Rpb24gaW5pdF9jYXBzKCkgaW4gY2VsdC5jLgorPC90PgorCis8dD5UaGUgYmFuZCBi
b29zdHMgYXJlIHJlcHJlc2VudGVkIGJ5IGEgc2VyaWVzIG9mIGJpbmFyeSBzeW1ib2xzIHdoaWNo
CithcmUgZW50cm9weSBjb2RlZCB3aXRoIHZlcnkgbG93IHByb2JhYmlsaXR5LiBFYWNoIGJhbmQg
Y2FuIHBvdGVudGlhbGx5IGJlIGJvb3N0ZWQKK211bHRpcGxlIHRpbWVzLCBzdWJqZWN0IHRvIHRo
ZSBmcmFtZSBhY3R1YWxseSBoYXZpbmcgZW5vdWdoIHJvb20gdG8gb2JleQordGhlIGJvb3N0IGFu
ZCBoYXZpbmcgZW5vdWdoIHJvb20gdG8gY29kZSB0aGUgYm9vc3Qgc3ltYm9sLiBUaGUgZGVmYXVs
dAorY29kaW5nIGNvc3QgZm9yIGEgYm9vc3Qgc3RhcnRzIG91dCBhdCBzaXggYml0cyAocHJvYmFi
aWxpdHkgcD0xLzY0KSwgYnV0IHN1YnNlcXVlbnQgYm9vc3RzCitpbiBhIGJhbmQgY29zdCBvbmx5
IGEgc2luZ2xlIGJpdCBhbmQgZXZlcnkgdGltZSBhIGJhbmQgaXMgYm9vc3RlZCB0aGUKK2luaXRp
YWwgY29zdCBpcyByZWR1Y2VkIChkb3duIHRvIGEgbWluaW11bSBvZiB0d28gYml0cywgb3IgcD0x
LzQpLiBTaW5jZSB0aGUgaW5pdGlhbAorY29zdCBvZiBjb2RpbmcgYSBib29zdCBpcyA2IGJpdHMs
IHRoZSBjb2RpbmcgY29zdCBvZiB0aGUgYm9vc3Qgc3ltYm9scyB3aGVuCitjb21wbGV0ZWx5IHVu
dXNlZCBpcyAwLjQ4IGJpdHMvZnJhbWUgZm9yIGEgMjEgYmFuZCBtb2RlICgyMSotbG9nMigxLTEv
MioqNikpLjwvdD4KKworPHQ+VG8gZGVjb2RlIHRoZSBiYW5kIGJvb3N0czogRmlyc3Qgc2V0ICdk
eW5hbGxvY19sb2dwJyB0byA2LCB0aGUgaW5pdGlhbAorYW1vdW50IG9mIHN0b3JhZ2UgcmVxdWly
ZWQgdG8gc2lnbmFsIGEgYm9vc3QgaW4gYml0cywgJ3RvdGFsX2JpdHMnIHRvIHRoZQorc2l6ZSBv
ZiB0aGUgZnJhbWUgaW4gOHRoIGJpdHMsICd0b3RhbF9ib29zdCcgdG8gemVybywgYW5kICd0ZWxs
JyB0byB0aGUgdG90YWwgbnVtYmVyCitvZiA4dGggYml0cyBkZWNvZGVkCitzbyBmYXIuIEZvciBl
YWNoIGJhbmQgZnJvbSB0aGUgY29kaW5nIHN0YXJ0ICgwIG5vcm1hbGx5LCBidXQgMTcgaW4gSHli
cmlkIG1vZGUpCit0byB0aGUgY29kaW5nIGVuZCAod2hpY2ggY2hhbmdlcyBkZXBlbmRpbmcgb24g
dGhlIHNpZ25hbGVkIGJhbmR3aWR0aCksIHRoZSBib29zdCBxdWFudGEKK2luIHVuaXRzIG9mIDEv
OCBiaXQgaXMgY2FsY3VsYXRlZCBhcyBxdWFudGEgPSBtaW4oOCpOLCBtYXgoNDgsIE4pKS4KK1Ro
aXMgcmVwcmVzZW50cyBhIGJvb3N0IHN0ZXAgc2l6ZSBvZiBzaXggYml0cywgc3ViamVjdCB0byBh
IGxvd2VyIGxpbWl0IG9mCisxLzh0aCZuYnNwO2JpdC9zYW1wbGUgYW5kIGFuIHVwcGVyIGxpbWl0
IG9mIDEmbmJzcDtiaXQvc2FtcGxlLgorU2V0ICdib29zdCcgdG8gemVybyBhbmQgJ2R5bmFsbG9j
X2xvb3BfbG9ncCcKK3RvIGR5bmFsbG9jX2xvZ3AuIFdoaWxlIGR5bmFsbG9jX2xvb3BfbG9nICh0
aGUgY3VycmVudCB3b3JzdCBjYXNlIHN5bWJvbCBjb3N0KSBpbgorOHRoIGJpdHMgcGx1cyB0ZWxs
IGlzIGxlc3MgdGhhbiB0b3RhbF9iaXRzIHBsdXMgdG90YWxfYm9vc3QgYW5kIGJvb3N0IGlzIGxl
c3MgdGhhbiBjYXBbXSBmb3IgdGhpcworYmFuZDogRGVjb2RlIGEgYml0IGZyb20gdGhlIGJpdHN0
cmVhbSB3aXRoIGEgd2l0aCBkeW5hbGxvY19sb29wX2xvZ3AgYXMgdGhlIGNvc3QKK29mIGEgb25l
LCB1cGRhdGUgdGVsbCB0byByZWZsZWN0IHRoZSBjdXJyZW50IHVzZWQgY2FwYWNpdHksIGlmIHRo
ZSBkZWNvZGVkIHZhbHVlCitpcyB6ZXJvIGJyZWFrIHRoZSAgbG9vcCBvdGhlcndpc2UgYWRkIHF1
YW50YSB0byBib29zdCBhbmQgdG90YWxfYm9vc3QsIHN1YnRyYWN0IHF1YW50YSBmcm9tCit0b3Rh
bF9iaXRzLCBhbmQgc2V0IGR5bmFsbG9jX2xvb3BfbG9nIHRvIDEuIFdoZW4gdGhlIHdoaWxlIGxv
b3AgZmluaXNoZXMKK2Jvb3N0IGNvbnRhaW5zIHRoZSBib29zdCBmb3IgdGhpcyBiYW5kLiBJZiBi
b29zdCBpcyBub24temVybyBhbmQgZHluYWxsb2NfbG9ncAoraXMgZ3JlYXRlciB0aGFuIDIsIGRl
Y3JlYXNlIGR5bmFsbG9jX2xvZ3AuICBPbmNlIHRoaXMgcHJvY2VzcyBoYXMgYmVlbgorZXhlY3V0
ZWQgb24gYWxsIGJhbmRzLCB0aGUgYmFuZCBib29zdHMgaGF2ZSBiZWVuIGRlY29kZWQuIFRoaXMg
cHJvY2VkdXJlCitpcyBpbXBsZW1lbnRlZCBhcm91bmQgbGluZSAyNDc0IG9mIGNlbHQuYy48L3Q+
CisKKzx0PkF0IHZlcnkgbG93IHJhdGVzIGl0IGlzIHBvc3NpYmxlIHRoYXQgdGhlcmUgd29uJ3Qg
YmUgZW5vdWdoIGF2YWlsYWJsZQorc3BhY2UgdG8gZXhlY3V0ZSB0aGUgaW5uZXIgbG9vcCBldmVu
IG9uY2UuIEluIHRoZXNlIGNhc2VzIGJhbmQgYm9vc3QKK2lzIG5vdCBwb3NzaWJsZSBidXQgaXRz
IG92ZXJoZWFkIGlzIGNvbXBsZXRlbHkgZWxpbWluYXRlZC4gQmVjYXVzZSBvZiB0aGUKK2hpZ2gg
Y29zdCBvZiBiYW5kIGJvb3N0IHdoZW4gYWN0aXZhdGVkLCBhIHJlYXNvbmFibGUgZW5jb2RlciBz
aG91bGQgbm90IGJlCit1c2luZyBpdCBhdCB2ZXJ5IGxvdyByYXRlcy4gVGhlIHJlZmVyZW5jZSBp
bXBsZW1lbnRzIGl0cyBkeW5hbGxvYyBkZWNpc2lvbgorbG9naWMgYXJvdW5kIGxpbmUgMTMwNCBv
ZiBjZWx0LmMuPC90PgorCis8dD5UaGUgYWxsb2NhdGlvbiB0cmltIGlzIGEgaW50ZWdlciB2YWx1
ZSBmcm9tIDAtMTAuIFRoZSBkZWZhdWx0IHZhbHVlIG9mCis1IGluZGljYXRlcyBubyB0cmltLiBU
aGUgdHJpbSBwYXJhbWV0ZXIgaXMgZW50cm9weSBjb2RlZCBpbiBvcmRlciB0bworbG93ZXIgdGhl
IGNvZGluZyBjb3N0IG9mIGxlc3MgZXh0cmVtZSBhZGp1c3RtZW50cy4gVmFsdWVzIGxvd2VyIHRo
YW4KKzUgYmlhcyB0aGUgYWxsb2NhdGlvbiB0b3dhcmRzIGxvd2VyIGZyZXF1ZW5jaWVzIGFuZCB2
YWx1ZXMgYWJvdmUgNQorYmlhcyBpdCB0b3dhcmRzIGhpZ2hlciBmcmVxdWVuY2llcy4gTGlrZSBv
dGhlciBzaWduYWxlZCBwYXJhbWV0ZXJzLCBzaWduYWxpbmcKK29mIHRoZSB0cmltIGlzIGdhdGVk
IHNvIHRoYXQgaXQgaXMgbm90IGluY2x1ZGVkIGlmIHRoZXJlIGlzIGluc3VmZmljaWVudCBzcGFj
ZQorYXZhaWxhYmxlIGluIHRoZSBiaXRzdHJlYW0uIFRvIGRlY29kZSB0aGUgdHJpbSwgZmlyc3Qg
c2V0Cit0aGUgdHJpbSB2YWx1ZSB0byA1LCB0aGVuIGlmIGFuZCBvbmx5IGlmIHRoZSBjb3VudCBv
ZiBkZWNvZGVkIDh0aCBiaXRzIHNvIGZhciAoZWNfdGVsbF9mcmFjKQorcGx1cyA0OCAoNiBiaXRz
KSBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gdGhlIHRvdGFsIGZyYW1lIHNpemUgaW4gOHRoCiti
aXRzIG1pbnVzIHRvdGFsX2Jvb3N0IChhIHByb2R1Y3Qgb2YgdGhlIGFib3ZlIGJhbmQgYm9vc3Qg
cHJvY2VkdXJlKSwKK2RlY29kZSB0aGUgdHJpbSB2YWx1ZSB1c2luZyB0aGUgUERGIGluIDx4cmVm
IHRhcmdldD0iY2VsdF90cmltX3BkZiIvPi48L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJjZWx0
X3RyaW1fcGRmIiB0aXRsZT0iUERGIGZvciB0aGUgVHJpbSI+Cis8dHRjb2w+UERGPC90dGNvbD4K
KzxjPnsxLCAxLCAyLCA1LCAxMCwgMjIsIDQ2LCAyMiwgMTAsIDUsIDIsIDJ9LzEyODwvYz4KKzwv
dGV4dHRhYmxlPgorCis8dD5Gb3IgMTAgbXMgYW5kIDIwIG1zIGZyYW1lcyB1c2luZyBzaG9ydCBi
bG9ja3MgYW5kIHRoYXQgaGF2ZSBhdCBsZWFzdCBMTSsyIGJpdHMgbGVmdCBwcmlvciB0bwordGhl
IGFsbG9jYXRpb24gcHJvY2VzcywgdGhlbiBvbmUgYW50aS1jb2xsYXBzZSBiaXQgaXMgcmVzZXJ2
ZWQgaW4gdGhlIGFsbG9jYXRpb24gcHJvY2VzcyBzbyBpdCBjYW4KK2JlIGRlY29kZWQgbGF0ZXIu
IEZvbGxvd2luZyB0aGUgdGhlIGFudGktY29sbGFwc2UgcmVzZXJ2YXRpb24sIG9uZSBiaXQgaXMg
cmVzZXJ2ZWQgZm9yIHNraXAgaWYgYXZhaWxhYmxlLjwvdD4KKworPHQ+Rm9yIHN0ZXJlbyBmcmFt
ZXMsIGJpdHMgYXJlIHJlc2VydmVkIGZvciBpbnRlbnNpdHkgc3RlcmVvIGFuZCBmb3IgZHVhbCBz
dGVyZW8uIEludGVuc2l0eSBzdGVyZW8KK3JlcXVpcmVzIGlsb2cyKGVuZC1zdGFydCkgYml0cy4g
VGhvc2UgYml0cyBhcmUgcmVzZXJ2ZWQgaWYgdGhlcmUgaXMgZW5vdWdoIGJpdHMgbGVmdC4gRm9s
bG93aW5nIHRoaXMsIG9uZQorYml0IGlzIHJlc2VydmVkIGZvciBkdWFsIHN0ZXJlbyBpZiBhdmFp
bGFibGUuPC90PgorCisKKzx0PlRoZSBhbGxvY2F0aW9uIGNvbXB1dGF0aW9uIGJlZ2lucyBieSBz
ZXR0aW5nIHVwIHNvbWUgaW5pdGlhbCBjb25kaXRpb25zLgorJ3RvdGFsJyBpcyBzZXQgdG8gdGhl
IHJlbWFpbmluZyBhdmFpbGFibGUgOHRoIGJpdHMsIGNvbXB1dGVkIGJ5IHRha2luZyB0aGUKK3Np
emUgb2YgdGhlIGNvZGVkIGZyYW1lIHRpbWVzIDggYW5kIHN1YnRyYWN0aW5nIGVjX3RlbGxfZnJh
YygpLiBGcm9tIHRoaXMgdmFsdWUsIG9uZSAoOHRoIGJpdCkKK2lzIHN1YnRyYWN0ZWQgdG8gZW5z
dXJlIHRoYXQgdGhlIHJlc3VsdGluZyBhbGxvY2F0aW9uIHdpbGwgYmUgY29uc2VydmF0aXZlLiAn
YW50aV9jb2xsYXBzZV9yc3YnCitpcyBzZXQgdG8gOCAoOHRoIGJpdHMpIGlmIGFuZCBvbmx5IGlm
IHRoZSBmcmFtZSBpcyBhIHRyYW5zaWVudCwgTE0gaXMgZ3JlYXRlciB0aGFuIDEsIGFuZCB0b3Rh
bCBpcworZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIChMTSsyKSAqIDguIFRvdGFsIGlzIHRoZW4g
ZGVjcmVtZW50ZWQgYnkgYW50aV9jb2xsYXBzZV9yc3YgYW5kIGNsYW1wZWQKK3RvIGJlIGVxdWFs
IHRvIG9yIGdyZWF0ZXIgdGhhbiB6ZXJvLiAnc2tpcF9yc3YnIGlzIHNldCB0byA4ICg4dGggYml0
cykgaWYgdG90YWwgaXMgZ3JlYXRlciB0aGFuCis4LCBvdGhlcndpc2UgaXQgaXMgemVyby4gVG90
YWwgaXMgdGhlbiBkZWNyZW1lbnRlZCBieSBza2lwX3Jzdi4gVGhpcyByZXNlcnZlcyBzcGFjZSBm
b3IgdGhlCitmaW5hbCBza2lwcGluZyBmbGFnLjwvdD4KKworPHQ+SWYgdGhlIGN1cnJlbnQgZnJh
bWUgaXMgc3RlcmVvLCBpbnRlbnNpdHlfcnN2IGlzIHNldCB0byB0aGUgY29uc2VydmF0aXZlIGxv
ZzIgaW4gOHRoIGJpdHMKK29mIHRoZSBudW1iZXIgb2YgY29kZWQgYmFuZHMgZm9yIHRoaXMgZnJh
bWUgKGdpdmVuIGJ5IHRoZSB0YWJsZSBMT0cyX0ZSQUNfVEFCTEUgaW4gcmF0ZS5jKS4gSWYKK2lu
dGVuc2l0eV9yc3YgaXMgZ3JlYXRlciB0aGFuIHRvdGFsIHRoZW4gaW50ZW5zaXR5X3JzdiBpcyBz
ZXQgdG8gemVyby4gT3RoZXJ3aXNlIHRvdGFsIGlzCitkZWNyZW1lbnRlZCBieSBpbnRlbnNpdHlf
cnN2LCBhbmQgaWYgdG90YWwgaXMgc3RpbGwgZ3JlYXRlciB0aGFuIDgsIGR1YWxfc3RlcmVvX3Jz
diBpcworc2V0IHRvIDggYW5kIHRvdGFsIGlzIGRlY3JlbWVudGVkIGJ5IGR1YWxfc3RlcmVvX3Jz
di48L3Q+CisKKzx0PlRoZSBhbGxvY2F0aW9uIHByb2Nlc3MgdGhlbiBjb21wdXRlcyBhIHZlY3Rv
ciByZXByZXNlbnRpbmcgdGhlIGhhcmQgbWluaW11bSBhbW91bnRzIGFsbG9jYXRpb24KK2FueSBi
YW5kIHdpbGwgcmVjZWl2ZSBmb3Igc2hhcGUuIFRoaXMgbWluaW11bSBpcyBoaWdoZXIgdGhhbiB0
aGUgdGVjaG5pY2FsIGxpbWl0IG9mIHRoZSBQVlEKK3Byb2Nlc3MsIGJ1dCB2ZXJ5IGxvdyByYXRl
IGFsbG9jYXRpb25zIHByb2R1Y2UgYW4gZXhjZXNzaXZlbHkgc3BhcnNlIHNwZWN0cnVtIGFuZCB0
aGVzZSBiYW5kcworYXJlIGJldHRlciBzZXJ2ZWQgYnkgaGF2aW5nIG5vIGFsbG9jYXRpb24gYXQg
YWxsLiBGb3IgZWFjaCBjb2RlZCBiYW5kLCBzZXQgdGhyZXNoW2JhbmRdIHRvCit0d2VudHktZm91
ciB0aW1lcyB0aGUgbnVtYmVyIG9mIE1EQ1QgYmlucyBpbiB0aGUgYmFuZCBhbmQgZGl2aWRlIGJ5
IDE2LiBJZiA4IHRpbWVzIHRoZSBudW1iZXIKK29mIGNoYW5uZWxzIGlzIGdyZWF0ZXIsIHVzZSB0
aGF0IGluc3RlYWQuIFRoaXMgc2V0cyB0aGUgbWluaW11bSBhbGxvY2F0aW9uIHRvIG9uZSBiaXQg
cGVyIGNoYW5uZWwKK29yIDQ4IDEyOHRoIGJpdHMgcGVyIE1EQ1QgYmluLCB3aGljaGV2ZXIgaXMg
Z3JlYXRlci4gVGhlIGJhbmQtc2l6ZSBkZXBlbmRlbnQgcGFydCBvZiB0aGlzCit2YWx1ZSBpcyBu
b3Qgc2NhbGVkIGJ5IHRoZSBjaGFubmVsIGNvdW50LCBiZWNhdXNlIGF0IHRoZSB2ZXJ5IGxvdyBy
YXRlcyB3aGVyZSB0aGlzIGxpbWl0IGlzCithcHBsaWNhYmxlIHRoZXJlIHdpbGwgdXN1YWxseSBi
ZSBubyBiaXRzIGFsbG9jYXRlZCB0byB0aGUgc2lkZS48L3Q+CisKKzx0PlRoZSBwcmV2aW91c2x5
IGRlY29kZWQgYWxsb2NhdGlvbiB0cmltIGlzIHVzZWQgdG8gZGVyaXZlIGEgdmVjdG9yIG9mIHBl
ci1iYW5kIGFkanVzdG1lbnRzLAorJ3RyaW1fb2Zmc2V0c1tdJy4gRm9yIGVhY2ggY29kZWQgYmFu
ZCB0YWtlIHRoZSBhbGxvY190cmltIGFuZCBzdWJ0cmFjdCA1IGFuZCBMTS4gVGhlbiBtdWx0aXBs
eQordGhlIHJlc3VsdCBieSB0aGUgbnVtYmVyIG9mIGNoYW5uZWxzLCB0aGUgbnVtYmVyIG9mIE1E
Q1QgYmlucyBpbiB0aGUgc2hvcnRlc3QgZnJhbWUgc2l6ZSBmb3IgdGhpcyBtb2RlLAordGhlIG51
bWJlciBvZiByZW1haW5pbmcgYmFuZHMsIDIqKkxNLCBhbmQgOC4gVGhlbiBkaXZpZGUgdGhpcyB2
YWx1ZSBieSA2NC4gRmluYWxseSwgaWYgdGhlCitudW1iZXIgb2YgTURDVCBiaW5zIGluIHRoZSBi
YW5kIHBlciBjaGFubmVsIGlzIG9ubHkgb25lLCA4IHRpbWVzIHRoZSBudW1iZXIgb2YgY2hhbm5l
bHMgaXMgc3VidHJhY3RlZAoraW4gb3JkZXIgdG8gZGltaW5pc2ggdGhlIGFsbG9jYXRpb24gYnkg
b25lIGJpdCwgYmVjYXVzZSB3aWR0aCAxIGJhbmRzIHJlY2VpdmUgZ3JlYXRlciBiZW5lZml0Citm
cm9tIHRoZSBjb2Fyc2UgZW5lcmd5IGNvZGluZy48L3Q+CisKKworPC9zZWN0aW9uPgorCis8c2Vj
dGlvbiBhbmNob3I9IlBWUS1kZWNvZGVyIiB0aXRsZT0iU2hhcGUgRGVjb2RpbmciPgorPHQ+CitJ
biBlYWNoIGJhbmQsIHRoZSBub3JtYWxpemVkICJzaGFwZSIgaXMgZW5jb2RlZAordXNpbmcgYSB2
ZWN0b3IgcXVhbnRpemF0aW9uIHNjaGVtZSBjYWxsZWQgYSAicHlyYW1pZCB2ZWN0b3IgcXVhbnRp
emVyIi4KKzwvdD4KKworPHQ+SW4KK3RoZSBzaW1wbGVzdCBjYXNlLCB0aGUgbnVtYmVyIG9mIGJp
dHMgYWxsb2NhdGVkIGluCis8eHJlZiB0YXJnZXQ9ImFsbG9jYXRpb24iPjwveHJlZj4gaXMgY29u
dmVydGVkIHRvIGEgbnVtYmVyIG9mIHB1bHNlcyBhcyBkZXNjcmliZWQKK2J5IDx4cmVmIHRhcmdl
dD0iYml0cy1wdWxzZXMiPjwveHJlZj4uIEtub3dpbmcgdGhlIG51bWJlciBvZiBwdWxzZXMgYW5k
IHRoZQorbnVtYmVyIG9mIHNhbXBsZXMgaW4gdGhlIGJhbmQsIHRoZSBkZWNvZGVyIGNhbGN1bGF0
ZXMgdGhlIHNpemUgb2YgdGhlIGNvZGVib29rCithcyBkZXRhaWxlZCBpbiA8eHJlZiB0YXJnZXQ9
ImN3cnMtZGVjb2RlciI+PC94cmVmPi4gVGhlIHNpemUgaXMgdXNlZCB0byBkZWNvZGUKK2FuIHVu
c2lnbmVkIGludGVnZXIgKHVuaWZvcm0gcHJvYmFiaWxpdHkgbW9kZWwpLCB3aGljaCBpcyB0aGUg
Y29kZXdvcmQgaW5kZXguCitUaGlzIGluZGV4IGlzIGNvbnZlcnRlZCBpbnRvIHRoZSBjb3JyZXNw
b25kaW5nIHZlY3RvciBhcyBleHBsYWluZWQgaW4KKzx4cmVmIHRhcmdldD0iY3dycy1kZWNvZGVy
Ij48L3hyZWY+LiBUaGlzIHZlY3RvciBpcyB0aGVuIHNjYWxlZCB0byB1bml0IG5vcm0uCis8L3Q+
CisKKzxzZWN0aW9uIGFuY2hvcj0iYml0cy1wdWxzZXMiIHRpdGxlPSJCaXRzIHRvIFB1bHNlcyI+
Cis8dD4KK0FsdGhvdWdoIHRoZSBhbGxvY2F0aW9uIGlzIHBlcmZvcm1lZCBpbiAxLzh0aCBiaXQg
dW5pdHMsIHRoZSBxdWFudGl6YXRpb24gcmVxdWlyZXMKK2FuIGludGVnZXIgbnVtYmVyIG9mIHB1
bHNlcyBLLiBUbyBkbyB0aGlzLCB0aGUgZW5jb2RlciBzZWFyY2hlcyBmb3IgdGhlIHZhbHVlCitv
ZiBLIHRoYXQgcHJvZHVjZXMgdGhlIG51bWJlciBvZiBiaXRzIG5lYXJlc3QgdG8gdGhlIGFsbG9j
YXRlZCB2YWx1ZQorKHJvdW5kaW5nIGRvd24gaWYgZXhhY3RseSBoYWxmd2F5IGJldHdlZW4gdHdv
IHZhbHVlcyksIG5vdCB0byBleGNlZWQKK3RoZSB0b3RhbCBudW1iZXIgb2YgYml0cyBhdmFpbGFi
bGUuIEZvciBlZmZpY2llbmN5IHJlYXNvbnMsIHRoZSBzZWFyY2ggaXMgcGVyZm9ybWVkIGFnYWlu
c3QgYQorcHJlY29tcHV0ZWQgYWxsb2NhdGlvbiB0YWJsZSB3aGljaCBvbmx5IHBlcm1pdHMgc29t
ZSBLIHZhbHVlcyBmb3IgZWFjaCBOLiBUaGUgbnVtYmVyIG9mCitjb2RlYm9vayBlbnRyaWVzIGNh
biBiZSBjb21wdXRlZCBhcyBleHBsYWluZWQgaW4gPHhyZWYgdGFyZ2V0PSJjd3JzLWRlY29kZXIi
PjwveHJlZj4uIFRoZSBkaWZmZXJlbmNlCitiZXR3ZWVuIHRoZSBudW1iZXIgb2YgYml0cyBhbGxv
Y2F0ZWQgYW5kIHRoZSBudW1iZXIgb2YgYml0cyB1c2VkIGlzIGFjY3VtdWxhdGVkIHRvIGEKKyJi
YWxhbmNlIiAoaW5pdGlhbGl6ZWQgdG8gemVybykgdGhhdCBoZWxwcyBhZGp1c3QgdGhlCithbGxv
Y2F0aW9uIGZvciB0aGUgbmV4dCBiYW5kcy4gT25lIHRoaXJkIG9mIHRoZSBiYWxhbmNlIGlzIGFw
cGxpZWQgdG8gdGhlCitiaXQgYWxsb2NhdGlvbiBvZiBlYWNoIGJhbmQgdG8gaGVscCBhY2hpZXZl
IHRoZSB0YXJnZXQgYWxsb2NhdGlvbi4gVGhlIG9ubHkKK2V4Y2VwdGlvbnMgYXJlIHRoZSBiYW5k
IGJlZm9yZSB0aGUgbGFzdCBhbmQgdGhlIGxhc3QgYmFuZCwgZm9yIHdoaWNoIGhhbGYgdGhlIGJh
bGFuY2UKK2FuZCB0aGUgd2hvbGUgYmFsYW5jZSBhcmUgYXBwbGllZCwgcmVzcGVjdGl2ZWx5Lgor
PC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImN3cnMtZGVjb2RlciIgdGl0bGU9
IlBWUSBEZWNvZGluZyI+CisKKzx0PgorRGVjb2Rpbmcgb2YgUFZRIHZlY3RvcnMgaXMgaW1wbGVt
ZW50ZWQgaW4gZGVjb2RlX3B1bHNlcygpIChjd3JzLmMpLgorVGhlIHVuaXF1ZSBjb2Rld29yZCBp
bmRleCBpcyBkZWNvZGVkIGFzIGEgdW5pZm9ybWx5LWRpc3RyaWJ1dGVkIGludGVnZXIgdmFsdWUg
YmV0d2VlbiAwIGFuZAorVihOLEspLTEsIHdoZXJlIFYoTixLKSBpcyB0aGUgbnVtYmVyIG9mIHBv
c3NpYmxlIGNvbWJpbmF0aW9ucyBvZiBLIHB1bHNlcyBpbgorTiBzYW1wbGVzLiBUaGUgaW5kZXgg
aXMgdGhlbiBjb252ZXJ0ZWQgdG8gYSB2ZWN0b3IgaW4gdGhlIHNhbWUgd2F5IHNwZWNpZmllZCBp
bgorPHhyZWYgdGFyZ2V0PSJQVlEiPjwveHJlZj4uIFRoZSBpbmRleGluZyBpcyBiYXNlZCBvbiB0
aGUgY2FsY3VsYXRpb24gb2YgVihOLEspCisoZGVub3RlZCBOKEwsSykgaW4gPHhyZWYgdGFyZ2V0
PSJQVlEiPjwveHJlZj4pLgorPC90PgorCis8dD4KKyBUaGUgbnVtYmVyIG9mIGNvbWJpbmF0aW9u
cyBjYW4gYmUgY29tcHV0ZWQgcmVjdXJzaXZlbHkgYXMKK1YoTixLKSA9IFYoTi0xLEspICsgVihO
LEstMSkgKyBWKE4tMSxLLTEpLCB3aXRoIFYoTiwwKSA9IDEgYW5kIFYoMCxLKSA9IDAsIEsgIT0g
MC4KK1RoZXJlIGFyZSBtYW55IGRpZmZlcmVudCB3YXlzIHRvIGNvbXB1dGUgVihOLEspLCBpbmNs
dWRpbmcgcHJlY29tcHV0ZWQgdGFibGVzIGFuZCBkaXJlY3QKK3VzZSBvZiB0aGUgcmVjdXJzaXZl
IGZvcm11bGF0aW9uLiBUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGFwcGxpZXMgdGhlIHJl
Y3Vyc2l2ZQorZm9ybXVsYXRpb24gb25lIGxpbmUgKG9yIGNvbHVtbikgYXQgYSB0aW1lIHRvIHNh
dmUgb24gbWVtb3J5IHVzZSwKK2Fsb25nIHdpdGggYW4gYWx0ZXJuYXRlLAordW5pdmFyaWF0ZSBy
ZWN1cnJlbmNlIHRvIGluaXRpYWxpemUgYW4gYXJiaXRyYXJ5IGxpbmUsIGFuZCBkaXJlY3QKK3Bv
bHlub21pYWwgc29sdXRpb25zIGZvciBzbWFsbCBOLiBBbGwgb2YgdGhlc2UgbWV0aG9kcyBhcmUK
K2VxdWl2YWxlbnQsIGFuZCBoYXZlIGRpZmZlcmVudCB0cmFkZS1vZmZzIGluIHNwZWVkLCBtZW1v
cnkgdXNhZ2UsIGFuZAorY29kZSBzaXplLiBJbXBsZW1lbnRhdGlvbnMgTUFZIHVzZSBhbnkgbWV0
aG9kcyB0aGV5IGxpa2UsIGFzIGxvbmcgYXMKK3RoZXkgYXJlIGVxdWl2YWxlbnQgdG8gdGhlIG1h
dGhlbWF0aWNhbCBkZWZpbml0aW9uLgorPC90PgorCis8dD4KK1RoZSBkZWNvZGVkIHZlY3RvciBY
IGlzIHJlY292ZXJlZCBhcyBmb2xsb3dzLgorTGV0IGkgYmUgdGhlIGluZGV4IGRlY29kZWQgd2l0
aCB0aGUgcHJvY2VkdXJlIGluIDx4cmVmIHRhcmdldD0iZWNfZGVjX3VpbnQiLz4KKyB3aXRoIGZ0
Jm5ic3A7PSZuYnNwO1YoTixLKSwgc28gdGhhdCAwJm5ic3A7Jmx0Oz0mbmJzcDtpJm5ic3A7Jmx0
OyZuYnNwO1YoTixLKS4KK0xldCBrJm5ic3A7PSZuYnNwO0suCitUaGVuIGZvciBqJm5ic3A7PSZu
YnNwOzAgdG8gKE4mbmJzcDstJm5ic3A7MSksIGluY2x1c2l2ZSwgZG86Cis8bGlzdCBzdHlsZT0i
bnVtYmVycyI+Cis8dD5MZXQgcCZuYnNwOz0mbmJzcDsoVihOLWotMSxrKSZuYnNwOysmbmJzcDtW
KE4taixrKSkvMi48L3Q+Cis8dD4KK0lmIGkmbmJzcDsmbHQ7Jm5ic3A7cCwgdGhlbiBsZXQgc2du
Jm5ic3A7PSZuYnNwOzEsIGVsc2UgbGV0IHNnbiZuYnNwOz0mbmJzcDstMQorIGFuZCBzZXQgaSZu
YnNwOz0mbmJzcDtpJm5ic3A7LSZuYnNwO3AuCis8L3Q+Cis8dD5MZXQgazAmbmJzcDs9Jm5ic3A7
ayBhbmQgc2V0IHAmbmJzcDs9Jm5ic3A7cCZuYnNwOy0mbmJzcDtWKE4tai0xLGspLjwvdD4KKzx0
PgorV2hpbGUgcCZuYnNwOyZndDsmbmJzcDtpLCBzZXQgayZuYnNwOz0mbmJzcDtrJm5ic3A7LSZu
YnNwOzEgYW5kCisgcCZuYnNwOz0mbmJzcDtwJm5ic3A7LSZuYnNwO1YoTi1qLTEsaykuCis8L3Q+
Cis8dD4KK1NldCBYW2pdJm5ic3A7PSZuYnNwO3NnbiooazAmbmJzcDstJm5ic3A7aykgYW5kIGkm
bmJzcDs9Jm5ic3A7aSZuYnNwOy0mbmJzcDtwLgorPC90PgorPC9saXN0PgorPC90PgorCis8dD4K
K1RoZSBkZWNvZGVkIHZlY3RvciBYIGlzIHRoZW4gbm9ybWFsaXplZCBzdWNoIHRoYXQgaXRzCitM
Mi1ub3JtIGVxdWFscyBvbmUuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0i
c3ByZWFkaW5nIiB0aXRsZT0iU3ByZWFkaW5nIj4KKzx0PgorVGhlIG5vcm1hbGl6ZWQgdmVjdG9y
IGRlY29kZWQgaW4gPHhyZWYgdGFyZ2V0PSJjd3JzLWRlY29kZXIiLz4gaXMgdGhlbiByb3RhdGVk
Citmb3IgdGhlIHB1cnBvc2Ugb2YgYXZvaWRpbmcgdG9uYWwgYXJ0aWZhY3RzLiBUaGUgcm90YXRp
b24gZ2FpbiBpcyBlcXVhbCB0bworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFs
aWduPSJjZW50ZXIiPjwhW0NEQVRBWworZ19yID0gTiAvIChOICsgZl9yKkspCitdXT48L2FydHdv
cms+Cis8L2ZpZ3VyZT4KKword2hlcmUgTiBpcyB0aGUgbnVtYmVyIG9mIGRpbWVuc2lvbnMsIEsg
aXMgdGhlIG51bWJlciBvZiBwdWxzZXMsIGFuZCBmX3IgZGVwZW5kcyBvbgordGhlIHZhbHVlIG9m
IHRoZSAic3ByZWFkIiBwYXJhbWV0ZXIgaW4gdGhlIGJpdC1zdHJlYW0uCis8L3Q+CisKKzx0ZXh0
dGFibGUgYW5jaG9yPSJzcHJlYWQgdmFsdWVzIiB0aXRsZT0iU3ByZWFkaW5nIFZhbHVlcyI+Cis8
dHRjb2w+U3ByZWFkIHZhbHVlPC90dGNvbD4KKzx0dGNvbD5mX3I8L3R0Y29sPgorIDxjPjA8L2M+
IDxjPmluZmluaXRlIChubyByb3RhdGlvbik8L2M+CisgPGM+MTwvYz4gPGM+MTU8L2M+CisgPGM+
MjwvYz4gPGM+MTA8L2M+CisgPGM+MzwvYz4gPGM+NTwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4K
K1RoZSByb3RhdGlvbiBhbmdsZSBpcyB0aGVuIGNhbGN1bGF0ZWQgYXMKKzxmaWd1cmUgYWxpZ249
ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAg
ICAgICAgMgorICAgICAgICBwaSAqICBnX3IKK3RoZXRhID0gLS0tLS0tLS0tLQorICAgICAgICAg
ICAgNAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitBIDItRCByb3RhdGlvbiBSKGksaikgYmV0
d2VlbiBwb2ludHMgeF9pIGFuZCB4X2ogaXMgZGVmaW5lZCBhczoKKzxmaWd1cmUgYWxpZ249ImNl
bnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3hfaScgPSAgY29zKHRo
ZXRhKSp4X2kgKyBzaW4odGhldGEpKnhfagoreF9qJyA9IC1zaW4odGhldGEpKnhfaSArIGNvcyh0
aGV0YSkqeF9qCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworQW4gTi1EIHJvdGF0aW9uIGlz
IHRoZW4gYWNoaWV2ZWQgYnkgYXBwbHlpbmcgYSBzZXJpZXMgb2YgMi1EIHJvdGF0aW9ucyBiYWNr
IGFuZCBmb3J0aCwgaW4gdGhlCitmb2xsb3dpbmcgb3JkZXI6IFIoeF8xLCB4XzIpLCBSKHhfMiwg
eF8zKSwgLi4uLCBSKHhfTi0yLCBYX04tMSksIFIoeF9OLTEsIFhfTiksCitSKHhfTi0yLCBYX04t
MSksIC4uLiwgUih4XzEsIHhfMikuCis8L3Q+CisKKzx0PgorSWYgdGhlIGRlY29kZWQgdmVjdG9y
IHJlcHJlc2VudHMgbW9yZQordGhhbiBvbmUgdGltZSBibG9jaywgdGhlbiB0aGlzIHNwcmVhZGlu
ZyBwcm9jZXNzIGlzIGFwcGxpZWQgc2VwYXJhdGVseSBvbiBlYWNoIHRpbWUgYmxvY2suCitBbHNv
LCBpZiBlYWNoIGJsb2NrIHJlcHJlc2VudHMgOCBzYW1wbGVzIG9yIG1vcmUsIHRoZW4gYW5vdGhl
ciBOLUQgcm90YXRpb24sIGJ5CisocGkvMi10aGV0YSksIGlzIGFwcGxpZWQgPHNwYW54IHN0eWxl
PSJlbXBoIj5iZWZvcmU8L3NwYW54PiB0aGUgcm90YXRpb24gZGVzY3JpYmVkIGFib3ZlLiBUaGlz
CitleHRyYSByb3RhdGlvbiBpcyBhcHBsaWVkIGluIGFuIGludGVybGVhdmVkIG1hbm5lciB3aXRo
IGEgc3RyaWRlIGVxdWFsIHRvIHJvdW5kKHNxcnQoTi9uYl9ibG9ja3MpKSwKK2kuZS4sIGl0IGlz
IGFwcGxpZWQgaW5kZXBlbmRlbnRseSBmb3IgZWFjaCBzZXQgb2Ygc2FtcGxlIFNfayA9IHtzdHJp
ZGUqbiArIGt9LCBuPTAuLk4vc3RyaWRlLTEuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9u
IGFuY2hvcj0ic3BsaXQiIHRpdGxlPSJTcGxpdCBkZWNvZGluZyI+Cis8dD4KK1RvIGF2b2lkIHRo
ZSBuZWVkIGZvciBtdWx0aS1wcmVjaXNpb24gY2FsY3VsYXRpb25zIHdoZW4gZGVjb2RpbmcgUFZR
IGNvZGV2ZWN0b3JzLAordGhlIG1heGltdW0gc2l6ZSBhbGxvd2VkIGZvciBjb2RlYm9va3MgaXMg
MzIgYml0cy4gV2hlbiBsYXJnZXIgY29kZWJvb2tzIGFyZQorbmVlZGVkLCB0aGUgdmVjdG9yIGlz
IGluc3RlYWQgc3BsaXQgaW4gdHdvIHN1Yi12ZWN0b3JzIG9mIHNpemUgTi8yLgorQSBxdWFudGl6
ZWQgZ2FpbiBwYXJhbWV0ZXIgd2l0aCBwcmVjaXNpb24KK2Rlcml2ZWQgZnJvbSB0aGUgY3VycmVu
dCBhbGxvY2F0aW9uIGlzIGVudHJvcHkgY29kZWQgdG8gcmVwcmVzZW50IHRoZSByZWxhdGl2ZQor
Z2FpbnMgb2YgZWFjaCBzaWRlIG9mIHRoZSBzcGxpdCwgYW5kIHRoZSBlbnRpcmUgZGVjb2Rpbmcg
cHJvY2VzcyBpcyByZWN1cnNpdmVseQorYXBwbGllZC4gTXVsdGlwbGUgbGV2ZWxzIG9mIHNwbGl0
dGluZyBtYXkgYmUgYXBwbGllZCB1cCB0byBhIGxpbWl0IG9mIExNKzEgc3BsaXRzLgorVGhlIHNh
bWUgcmVjdXJzaXZlIG1lY2hhbmlzbSBpcyBhcHBsaWVkIGZvciB0aGUgam9pbnQgY29kaW5nCitv
ZiBzdGVyZW8gYXVkaW8uCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJ0
Zi1jaGFuZ2UiIHRpdGxlPSJUaW1lLUZyZXF1ZW5jeSBjaGFuZ2UiPgorPHQ+CitUaGUgdGltZS1m
cmVxdWVuY3kgKFRGKSBwYXJhbWV0ZXJzIGFyZSB1c2VkIHRvIGNvbnRyb2wgdGhlIHRpbWUtZnJl
cXVlbmN5IHJlc29sdXRpb24gdHJhZGVvZmYKK2luIGVhY2ggY29kZWQgYmFuZC4gRm9yIGVhY2gg
YmFuZCwgdGhlcmUgYXJlIHR3byBwb3NzaWJsZSBURiBjaG9pY2VzLiBGb3IgdGhlIGZpcnN0Citi
YW5kIGNvZGVkLCB0aGUgUERGIGlzIHszLCAxfS80IGZvciBmcmFtZXMgbWFya2VkIGFzIHRyYW5z
aWVudCBhbmQgezE1LCAxfS8xNiBmb3IKK3RoZSBvdGhlciBmcmFtZXMuIEZvciBzdWJzZXF1ZW50
IGJhbmRzLCB0aGUgVEYgY2hvaWNlIGlzIGNvZGVkIHJlbGF0aXZlIHRvIHRoZQorcHJldmlvdXMg
VEYgY2hvaWNlIHdpdGggcHJvYmFiaWxpdHkgezE1LCAxfS8xNSBmb3IgdHJhbnNpZW50IGZyYW1l
cyBhbmQgezMxLCAxfS8zMgorb3RoZXJ3aXNlLiBUaGUgbWFwcGluZyBiZXR3ZWVuIHRoZSBkZWNv
ZGVkIFRGIGNob2ljZXMgYW5kIHRoZSBhZGp1c3RtZW50IGluIFRGCityZXNvbHV0aW9uIGlzIHNo
b3duIGluIHRoZSB0YWJsZXMgYmVsb3cuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSd0Zl8w
MCcKKyB0aXRsZT0iVEYgQWRqdXN0bWVudHMgZm9yIE5vbi10cmFuc2llbnQgRnJhbWVzIGFuZCB0
Zl9zZWxlY3Q9MCI+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+RnJhbWUgc2l6ZSAobXMpPC90dGNv
bD4KKzx0dGNvbCBhbGlnbj0nY2VudGVyJz4wPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0nY2VudGVy
Jz4xPC90dGNvbD4KKzxjPjIuNTwvYz4gICAgICA8Yz4wPC9jPiA8Yz4tMTwvYz4KKzxjPjU8L2M+
ICAgICAgPGM+MDwvYz4gPGM+LTE8L2M+Cis8Yz4xMDwvYz4gICAgICA8Yz4wPC9jPiA8Yz4tMjwv
Yz4KKzxjPjIwPC9jPiAgICAgIDxjPjA8L2M+IDxjPi0yPC9jPgorPC90ZXh0dGFibGU+CisKKzx0
ZXh0dGFibGUgYW5jaG9yPSd0Zl8wMScKKyB0aXRsZT0iVEYgQWRqdXN0bWVudHMgZm9yIE5vbi10
cmFuc2llbnQgRnJhbWVzIGFuZCB0Zl9zZWxlY3Q9MSI+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+
RnJhbWUgc2l6ZSAobXMpPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0nY2VudGVyJz4wPC90dGNvbD4K
Kzx0dGNvbCBhbGlnbj0nY2VudGVyJz4xPC90dGNvbD4KKzxjPjIuNTwvYz4gICAgICA8Yz4wPC9j
PiA8Yz4tMTwvYz4KKzxjPjU8L2M+ICAgICAgPGM+MDwvYz4gPGM+LTI8L2M+Cis8Yz4xMDwvYz4g
ICAgICA8Yz4wPC9jPiA8Yz4tMzwvYz4KKzxjPjIwPC9jPiAgICAgIDxjPjA8L2M+IDxjPi0zPC9j
PgorPC90ZXh0dGFibGU+CisKKworPHRleHR0YWJsZSBhbmNob3I9J3RmXzEwJworIHRpdGxlPSJU
RiBBZGp1c3RtZW50cyBmb3IgVHJhbnNpZW50IEZyYW1lcyBhbmQgdGZfc2VsZWN0PTAiPgorPHR0
Y29sIGFsaWduPSdjZW50ZXInPkZyYW1lIHNpemUgKG1zKTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249
J2NlbnRlcic+MDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MTwvdHRjb2w+Cis8Yz4y
LjU8L2M+ICAgICAgPGM+MDwvYz4gPGM+LTE8L2M+Cis8Yz41PC9jPiAgICAgIDxjPjE8L2M+IDxj
PjA8L2M+Cis8Yz4xMDwvYz4gICAgICA8Yz4yPC9jPiA8Yz4wPC9jPgorPGM+MjA8L2M+ICAgICAg
PGM+MzwvYz4gPGM+MDwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ndGZf
MTEnCisgdGl0bGU9IlRGIEFkanVzdG1lbnRzIGZvciBUcmFuc2llbnQgRnJhbWVzIGFuZCB0Zl9z
ZWxlY3Q9MSI+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+RnJhbWUgc2l6ZSAobXMpPC90dGNvbD4K
Kzx0dGNvbCBhbGlnbj0nY2VudGVyJz4wPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0nY2VudGVyJz4x
PC90dGNvbD4KKzxjPjIuNTwvYz4gICAgICA8Yz4wPC9jPiA8Yz4tMTwvYz4KKzxjPjU8L2M+ICAg
ICAgPGM+MTwvYz4gPGM+LTE8L2M+Cis8Yz4xMDwvYz4gICAgICA8Yz4xPC9jPiA8Yz4tMTwvYz4K
KzxjPjIwPC9jPiAgICAgIDxjPjE8L2M+IDxjPi0xPC9jPgorPC90ZXh0dGFibGU+CisKKzx0Pgor
QSBuZWdhdGl2ZSBURiBhZGp1c3RtZW50IG1lYW5zIHRoYXQgdGhlIHRlbXBvcmFsIHJlc29sdXRp
b24gaXMgaW5jcmVhc2VkLAord2hpbGUgYSBwb3NpdGl2ZSBURiBhZGp1c3RtZW50IG1lYW5zIHRo
YXQgdGhlIGZyZXF1ZW5jeSByZXNvbHV0aW9uIGlzIGluY3JlYXNlZC4KK0NoYW5nZXMgaW4gVEYg
cmVzb2x1dGlvbiBhcmUgaW1wbGVtZW50ZWQgdXNpbmcgdGhlIEhhZGFtYXJkIHRyYW5zZm9ybSA8
eHJlZiB0YXJnZXQ9IkhhZGFtYXJkIi8+LiBUbyBpbmNyZWFzZQordGhlIHRpbWUgcmVzb2x1dGlv
biBieSBOLCBOICJsZXZlbHMiIG9mIHRoZSBIYWRhbWFyZCB0cmFuc2Zvcm0gYXJlIGFwcGxpZWQg
dG8gdGhlCitkZWNvZGVkIHZlY3RvciBmb3IgZWFjaCBpbnRlcmxlYXZlZCBNRENUIHZlY3Rvci4g
VG8gaW5jcmVhc2UgdGhlIGZyZXF1ZW5jeSByZXNvbHV0aW9uCisoYXNzdW1lcyBhIHRyYW5zaWVu
dCBmcmFtZSksIHRoZW4gTiBsZXZlbHMgb2YgdGhlIEhhZGFtYXJkIHRyYW5zZm9ybSBhcmUgYXBw
bGllZAorPHNwYW54IHN0eWxlPSJlbXBoIj5hY3Jvc3M8L3NwYW54PiB0aGUgaW50ZXJsZWF2ZWQg
TURDVCB2ZWN0b3IuIEluIHRoZSBjYXNlIG9mIGluY3JlYXNlZAordGltZSByZXNvbHV0aW9uIHRo
ZSBkZWNvZGVyIHVzZXMgdGhlICJzZXF1ZW5jeSBvcmRlciIgYmVjYXVzZSB0aGUgaW5wdXQgdmVj
dG9yCitpcyBzb3J0ZWQgaW4gdGltZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworCis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0iYW50aS1jb2xsYXBzZSIgdGl0bGU9IkFudGktQ29sbGFwc2Ug
UHJvY2Vzc2luZyI+Cis8dD4KK1RoZSBhbnRpLWNvbGxhcHNlIGZlYXR1cmUgaXMgZGVzaWduZWQg
dG8gYXZvaWQgdGhlIHNpdHVhdGlvbiB3aGVyZSB0aGUgdXNlIG9mIG11bHRpcGxlCitzaG9ydCBN
RENUcyBjYXVzZXMgdGhlIGVuZXJneSBpbiBvbmUgb3IgbW9yZSBvZiB0aGUgTURDVHMgdG8gYmUg
emVybyBmb3IKK3NvbWUgYmFuZHMsIGNhdXNpbmcgdW5wbGVhc2FudCBhcnRpZmFjdHMuCitXaGVu
IHRoZSBmcmFtZSBoYXMgdGhlIHRyYW5zaWVudCBiaXQgc2V0LCBhbiBhbnRpLWNvbGxhcHNlIGJp
dCBpcyBkZWNvZGVkLgorV2hlbiBhbnRpLWNvbGxhcHNlIGlzIHNldCwgdGhlIGVuZXJneSBpbiBl
YWNoIHNtYWxsIE1EQ1QgaXMgcHJldmVudGVkCitmcm9tIGNvbGxhcHNpbmcgdG8gemVyby4gRm9y
IGVhY2ggYmFuZCBvZiBlYWNoIE1EQ1Qgd2hlcmUgYSBjb2xsYXBzZSBpcworZGV0ZWN0ZWQsIGEg
cHNldWRvLXJhbmRvbSBzaWduYWwgaXMgaW5zZXJ0ZWQgd2l0aCBhbiBlbmVyZ3kgY29ycmVzcG9u
ZGluZwordG8gdGhlIG1pbmltdW0gZW5lcmd5IG92ZXIgdGhlIHR3byBwcmV2aW91cyBmcmFtZXMu
IEEgcmVub3JtYWxpemF0aW9uIHN0ZXAgaXMKK3RoZW4gcmVxdWlyZWQgdG8gZW5zdXJlIHRoYXQg
dGhlIGFudGktY29sbGFwc2Ugc3RlcCBkaWQgbm90IGFsdGVyIHRoZQorZW5lcmd5IHByZXNlcnZh
dGlvbiBwcm9wZXJ0eS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJkZW5v
cm1hbGl6YXRpb24iIHRpdGxlPSJEZW5vcm1hbGl6YXRpb24iPgorPHQ+CitKdXN0IGFzIGVhY2gg
YmFuZCB3YXMgbm9ybWFsaXplZCBpbiB0aGUgZW5jb2RlciwgdGhlIGxhc3Qgc3RlcCBvZiB0aGUg
ZGVjb2RlciBiZWZvcmUKK3RoZSBpbnZlcnNlIE1EQ1QgaXMgdG8gZGVub3JtYWxpemUgdGhlIGJh
bmRzLiBFYWNoIGRlY29kZWQgbm9ybWFsaXplZCBiYW5kIGlzCittdWx0aXBsaWVkIGJ5IHRoZSBz
cXVhcmUgcm9vdCBvZiB0aGUgZGVjb2RlZCBlbmVyZ3kuIFRoaXMgaXMgZG9uZSBieSBkZW5vcm1h
bGlzZV9iYW5kcygpCisoYmFuZHMuYykuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFu
Y2hvcj0iaW52ZXJzZS1tZGN0IiB0aXRsZT0iSW52ZXJzZSBNRENUIj4KKworCis8dD5UaGUgaW52
ZXJzZSBNRENUIGltcGxlbWVudGF0aW9uIGhhcyBubyBzcGVjaWFsIGNoYXJhY3RlcmlzdGljcy4g
VGhlCitpbnB1dCBpcyBOIGZyZXF1ZW5jeS1kb21haW4gc2FtcGxlcyBhbmQgdGhlIG91dHB1dCBp
cyAyKk4gdGltZS1kb21haW4KK3NhbXBsZXMsIHdoaWxlIHNjYWxpbmcgYnkgMS8yLiBBICJsb3ct
b3ZlcmxhcCIgd2luZG93IHJlZHVjZXMgdGhlIGFsZ29yaXRobWljIGRlbGF5LgorSXQgaXMgZGVy
aXZlZCBmcm9tIGEgYmFzaWMgKGZ1bGwgb3ZlcmxhcCkgMjQwLXNhbXBsZSB2ZXJzaW9uIG9mIHRo
ZSB3aW5kb3cgdXNlZCBieSB0aGUgVm9yYmlzIGNvZGVjOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAyCisgICAgICAgLyAgIC9waSAgICAgIC9waSAgIG4gKyAxLzJc
IFwgXAorVyhuKSA9IHxzaW58LS0gKiBzaW58LS0gKiAtLS0tLS0tfCB8IHwgLgorICAgICAgIFwg
ICBcMiAgICAgICBcMiAgICAgICBMICAgLyAvIC8KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgor
VGhlIGxvdy1vdmVybGFwIHdpbmRvdyBpcyBjcmVhdGVkIGJ5IHplcm8tcGFkZGluZyB0aGUgYmFz
aWMgd2luZG93IGFuZCBpbnNlcnRpbmcgb25lcyBpbiB0aGUKK21pZGRsZSwgc3VjaCB0aGF0IHRo
ZSByZXN1bHRpbmcgd2luZG93IHN0aWxsIHNhdGlzZmllcyBwb3dlciBjb21wbGVtZW50YXJpdHkg
PHhyZWYgdGFyZ2V0PSdQcmluY2VuODYnLz4uCitUaGUgSU1EQ1QgYW5kCit3aW5kb3dpbmcgYXJl
IHBlcmZvcm1lZCBieSBtZGN0X2JhY2t3YXJkIChtZGN0LmMpLgorPC90PgorCis8c2VjdGlvbiBh
bmNob3I9InBvc3QtZmlsdGVyIiB0aXRsZT0iUG9zdC1maWx0ZXIiPgorPHQ+CitUaGUgb3V0cHV0
IG9mIHRoZSBpbnZlcnNlIE1EQ1QgKGFmdGVyIHdlaWdodGVkIG92ZXJsYXAtYWRkKSBpcyBzZW50
IHRvIHRoZQorcG9zdC1maWx0ZXIuIEFsdGhvdWdoIHRoZSBwb3N0LWZpbHRlciBpcyBhcHBsaWVk
IGF0IHRoZSBlbmQsIHRoZSBwb3N0LWZpbHRlcgorcGFyYW1ldGVycyBhcmUgZW5jb2RlZCBhdCB0
aGUgYmVnaW5uaW5nLCBqdXN0IGFmdGVyIHRoZSBzaWxlbmNlIGZsYWcuCitUaGUgcG9zdC1maWx0
ZXIgY2FuIGJlIHN3aXRjaGVkIG9uIG9yIG9mZiB1c2luZyBvbmUgYml0IChsb2dwPTEpLgorSWYg
dGhlIHBvc3QtZmlsdGVyIGlzIGVuYWJsZWQsIHRoZW4gdGhlIG9jdGF2ZSBpcyBkZWNvZGVkIGFz
IGFuIGludGVnZXIgdmFsdWUKK2JldHdlZW4gMCBhbmQgNiBvZiB1bmlmb3JtIHByb2JhYmlsaXR5
LiBPbmNlIHRoZSBvY3RhdmUgaXMga25vd24sIHRoZSBmaW5lIHBpdGNoCit3aXRoaW4gdGhlIG9j
dGF2ZSBpcyBkZWNvZGVkIHVzaW5nIDQrb2N0YXZlIHJhdyBiaXRzLiBUaGUgZmluYWwgcGl0Y2gg
cGVyaW9kCitpcyBlcXVhbCB0byAoMTYmbHQ7Jmx0O29jdGF2ZSkrZmluZV9waXRjaC0xIHNvIGl0
IGlzIGJvdW5kZWQgYmV0d2VlbiAxNSBhbmQgMTAyMiwKK2luY2x1c2l2ZWx5LiBOZXh0LCB0aGUg
Z2FpbiBpcyBkZWNvZGVkIGFzIHRocmVlIHJhdyBiaXRzIGFuZCBpcyBlcXVhbCB0bworRz0zKihp
bnRfZ2FpbisxKS8zMi4gVGhlIHNldCBvZiBwb3N0LWZpbHRlciB0YXBzIGlzIGRlY29kZWQgbGFz
dCwgdXNpbmcKK2EgcGRmIGVxdWFsIHRvIHsyLCAxLCAxfS80LiBUYXBzZXQgemVybyBjb3JyZXNw
b25kcyB0byB0aGUgZmlsdGVyIGNvZWZmaWNpZW50cworZzAgPSAwLjMwNjY0MDYyNTAsIGcxID0g
MC4yMTcwNDEwMTU2LCBnMiA9IDAuMTI5NjM4NjcxOS4gVGFwc2V0IG9uZQorY29ycmVzcG9uZHMg
dG8gdGhlIGZpbHRlciBjb2VmZmljaWVudHMgZzAgPSAwLjQ2Mzg2NzE4NzUsIGcxID0gMC4yNjgw
NjY0MDYyLAorZzIgPSAwLCBhbmQgdGFwc2V0IHR3byB1c2VzIGZpbHRlciBjb2VmZmljaWVudHMg
ZzAgPSAwLjc5OTgwNDY4NzUsCitnMSA9IDAuMTAwMDk3NjU2MiwgZzIgPSAwLgorPC90PgorCis8
dD4KK1RoZSBwb3N0LWZpbHRlciByZXNwb25zZSBpcyB0aHVzIGNvbXB1dGVkIGFzOgorICAgICAg
ICAgICAgICA8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorICAgICAgICAgICAgICAgIDxhcnR3b3Jr
IGFsaWduPSJjZW50ZXIiPgorICAgICAgICAgICAgICAgICAgPCFbQ0RBVEFbCisgICB5KG4pID0g
eChuKSArIEcqKGcwKnkobi1UKSArIGcxKih5KG4tVCsxKSt5KG4tVCsxKSkKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICsgZzIqKHkobi1UKzIpK3kobi1UKzIpKSkKK11dPgorICAgICAg
ICAgICAgICAgIDwvYXJ0d29yaz4KKyAgICAgICAgICAgICAgPC9maWd1cmU+CisKK0R1cmluZyBh
IHRyYW5zaXRpb24gYmV0d2VlbiBkaWZmZXJlbnQgZ2FpbnMsIGEgc21vb3RoIHRyYW5zaXRpb24g
aXMgY2FsY3VsYXRlZAordXNpbmcgdGhlIHNxdWFyZSBvZiB0aGUgTURDVCB3aW5kb3cuIEl0IGlz
IGltcG9ydGFudCB0aGF0IHZhbHVlcyBvZiB5KG4pIGJlCitpbnRlcnBvbGF0ZWQgb25lIGF0IGEg
dGltZSBzdWNoIHRoYXQgdGhlIHBhc3QgdmFsdWUgb2YgeShuKSB1c2VkIGlzIGludGVycG9sYXRl
ZC4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJkZWVtcGhhc2lzIiB0aXRs
ZT0iRGUtZW1waGFzaXMiPgorPHQ+CitBZnRlciB0aGUgcG9zdC1maWx0ZXIsCit0aGUgc2lnbmFs
IGlzIGRlLWVtcGhhc2l6ZWQgdXNpbmcgdGhlIGludmVyc2Ugb2YgdGhlIHByZS1lbXBoYXNpcyBm
aWx0ZXIKK3VzZWQgaW4gdGhlIGVuY29kZXI6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFy
dHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgMSAgICAgICAgICAgIDEKKy0tLS0gPSAt
LS0tLS0tLS0tLS0tLS0gLAorQSh6KSAgICAgICAgICAgICAgICAtMQorICAgICAgIDEgLSBhbHBo
YV9wKnoKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgord2hlcmUgYWxwaGFfcD0wLjg1MDAwNjEw
MzUuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2Vj
dGlvbiBhbmNob3I9IlBhY2tldCBMb3NzIENvbmNlYWxtZW50IiB0aXRsZT0iUGFja2V0IExvc3Mg
Q29uY2VhbG1lbnQgKFBMQykiPgorPHQ+CitQYWNrZXQgbG9zcyBjb25jZWFsbWVudCAoUExDKSBp
cyBhbiBvcHRpb25hbCBkZWNvZGVyLXNpZGUgZmVhdHVyZSB0aGF0CitTSE9VTEQgYmUgaW5jbHVk
ZWQgd2hlbiByZWNlaXZpbmcgZnJvbSBhbiB1bnJlbGlhYmxlIGNoYW5uZWwuIEJlY2F1c2UKK1BM
QyBpcyBub3QgcGFydCBvZiB0aGUgYml0c3RyZWFtLCB0aGVyZSBhcmUgbWFueSBhY2NlcHRhYmxl
IHdheXMgdG8KK2ltcGxlbWVudCBQTEMgd2l0aCBkaWZmZXJlbnQgY29tcGxleGl0eS9xdWFsaXR5
IHRyYWRlLW9mZnMuCis8L3Q+CisKKzx0PgorVGhlIFBMQyBpbgordGhlIHJlZmVyZW5jZSBpbXBs
ZW1lbnRhdGlvbiBkZXBlbmRzIG9uIHRoZSBtb2RlIG9mIGxhc3QgcGFja2V0IHJlY2VpdmVkLgor
SW4gQ0VMVCBtb2RlLCB0aGUgUExDIGZpbmRzIGEgcGVyaW9kaWNpdHkgaW4gdGhlIGRlY29kZWQK
K3NpZ25hbCBhbmQgcmVwZWF0cyB0aGUgd2luZG93ZWQgd2F2ZWZvcm0gdXNpbmcgdGhlIHBpdGNo
IG9mZnNldC4gVGhlIHdpbmRvd2VkCit3YXZlZm9ybSBpcyBvdmVybGFwcGVkIGluIHN1Y2ggYSB3
YXkgYXMgdG8gcHJlc2VydmUgdGhlIHRpbWUtZG9tYWluIGFsaWFzaW5nCitjYW5jZWxsYXRpb24g
d2l0aCB0aGUgcHJldmlvdXMgZnJhbWUgYW5kIHRoZSBuZXh0IGZyYW1lLiBUaGlzIGlzIGltcGxl
bWVudGVkCitpbiBjZWx0X2RlY29kZV9sb3N0KCkgKG1kY3QuYykuICBJbiBTSUxLIG1vZGUsIHRo
ZSBQTEMgdXNlcyBMUEMgZXh0cmFwb2xhdGlvbgorZnJvbSB0aGUgcHJldmlvdXMgZnJhbWUsIGlt
cGxlbWVudGVkIGluIHNpbGtfUExDKCkgKFBMQy5jKS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9y
PSJjbG9jay1kcmlmdCIgdGl0bGU9IkNsb2NrIERyaWZ0IENvbXBlbnNhdGlvbiI+Cis8dD4KK0Ns
b2NrIGRyaWZ0IHJlZmVycyB0byB0aGUgZ3JhZHVhbCBkZXN5bmNocm9uaXphdGlvbiBvZiB0d28g
ZW5kcG9pbnRzCit3aG9zZSBzYW1wbGUgY2xvY2tzIHJ1biBhdCBkaWZmZXJlbnQgZnJlcXVlbmNp
ZXMgd2hpbGUgdGhleSBhcmUgc3RyZWFtaW5nCitsaXZlIGF1ZGlvLiAgRGlmZmVyZW5jZXMgaW4g
Y2xvY2sgZnJlcXVlbmNpZXMgYXJlIGdlbmVyYWxseSBhdHRyaWJ1dGFibGUgdG8KK21hbnVmYWN0
dXJpbmcgdmFyaWF0aW9uIGluIHRoZSBlbmRwb2ludHMnIGNsb2NrIGhhcmR3YXJlLiAgRm9yIGxv
bmctbGl2ZWQKK3N0cmVhbXMsIHRoZSB0aW1lIGRpZmZlcmVuY2UgYmV0d2VlbiBzZW5kZXIgYW5k
IHJlY2VpdmVyIGNhbiBncm93IHdpdGhvdXQKK2JvdW5kLgorPC90PgorCis8dD4KK1doZW4gdGhl
IHNlbmRlcidzIGNsb2NrIHJ1bnMgc2xvd2VyIHRoYW4gdGhlIHJlY2VpdmVyJ3MsIHRoZSBlZmZl
Y3QgaXMgc2ltaWxhcgordG8gcGFja2V0IGxvc3M6IHRvbyBmZXcgcGFja2V0cyBhcmUgcmVjZWl2
ZWQuICBUaGUgcmVjZWl2ZXIgY2FuIGRpc3Rpbmd1aXNoCitiZXR3ZWVuIGRyaWZ0IGFuZCBsb3Nz
IGlmIHRoZSB0cmFuc3BvcnQgcHJvdmlkZXMgcGFja2V0IHRpbWVzdGFtcHMuICBBIHJlY2VpdmVy
Citmb3IgbGl2ZSBzdHJlYW1zIFNIT1VMRCBjb25jZWFsIHRoZSBlZmZlY3RzIG9mIGRyaWZ0LCBh
bmQgTUFZIGRvIHNvIGJ5IGludm9raW5nCit0aGUgUExDLgorPC90PgorCis8dD4KK1doZW4gdGhl
IHNlbmRlcidzIGNsb2NrIHJ1bnMgZmFzdGVyIHRoYW4gdGhlIHJlY2VpdmVyJ3MsIHRvbyBtYW55
IHBhY2tldHMgd2lsbAorYmUgcmVjZWl2ZWQuICBUaGUgcmVjZWl2ZXIgTUFZIHJlc3BvbmQgYnkg
c2tpcHBpbmcgYW55IHBhY2tldCAoaS5lLiwgbm90CitzdWJtaXR0aW5nIHRoZSBwYWNrZXQgZm9y
IGRlY29kaW5nKS4gIFRoaXMgaXMgbGlrZWx5IHRvIHByb2R1Y2UgYSBsZXNzIHNldmVyZQorYXJ0
aWZhY3QgdGhhbiBpZiB0aGUgZnJhbWUgd2VyZSBkcm9wcGVkIGFmdGVyIGRlY29kaW5nLgorPC90
PgorCis8dD4KK0EgZGVjb2RlciBNQVkgZW1wbG95IGEgbW9yZSBzb3BoaXN0aWNhdGVkIGRyaWZ0
IGNvbXBlbnNhdGlvbiBtZXRob2QuIEZvcgorZXhhbXBsZSwgdGhlCis8eHJlZiB0YXJnZXQ9J0dv
b2dsZS1OZXRFUSc+TmV0RVEgY29tcG9uZW50PC94cmVmPgorb2YgdGhlCis8eHJlZiB0YXJnZXQ9
J0dvb2dsZS1XZWJSVEMnPkdvb2dsZSBXZWJSVEMgY29kZWJhc2U8L3hyZWY+Citjb21wZW5zYXRl
cyBmb3IgZHJpZnQgYnkgYWRkaW5nIG9yIHJlbW92aW5nCitvbmUgcGVyaW9kIHdoZW4gdGhlIHNp
Z25hbCBpcyBoaWdobHkgcGVyaW9kaWMuIFRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gb2YK
K09wdXMgYWxsb3dzIGEgY2FsbGVyIHRvIGxlYXJuIHdoZXRoZXIgdGhlIGN1cnJlbnQgZnJhbWUn
cyBzaWduYWwgaXMgaGlnaGx5CitwZXJpb2RpYywgYW5kIGlmIHNvIHdoYXQgdGhlIHBlcmlvZCBp
cywgdXNpbmcgdGhlIE9QVVNfR0VUX1BJVENIKCkgcmVxdWVzdC4KKzwvdD4KKzwvc2VjdGlvbj4K
KworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InN3aXRjaGluZyIgdGl0bGU9IkNvbmZp
Z3VyYXRpb24gU3dpdGNoaW5nIj4KKworPHQ+CitTd2l0Y2hpbmcgYmV0d2VlbiB0aGUgT3B1cyBj
b2RpbmcgbW9kZXMsIGF1ZGlvIGJhbmR3aWR0aHMsIGFuZCBjaGFubmVsIGNvdW50cworIHJlcXVp
cmVzIGNhcmVmdWwgY29uc2lkZXJhdGlvbiB0byBhdm9pZCBhdWRpYmxlIGdsaXRjaGVzLgorU3dp
dGNoaW5nIGJldHdlZW4gYW55IHR3byBjb25maWd1cmF0aW9ucyBvZiB0aGUgQ0VMVC1vbmx5IG1v
ZGUsIGFueSB0d28KKyBjb25maWd1cmF0aW9ucyBvZiB0aGUgSHlicmlkIG1vZGUsIG9yIGZyb20g
V0IgU0lMSyB0byBIeWJyaWQgbW9kZSBkb2VzIG5vdAorIHJlcXVpcmUgYW55IHNwZWNpYWwgdHJl
YXRtZW50IGluIHRoZSBkZWNvZGVyLCBhcyB0aGUgTURDVCBvdmVybGFwIHdpbGwgc21vb3RoCisg
dGhlIHRyYW5zaXRpb24uCitTd2l0Y2hpbmcgZnJvbSBIeWJyaWQgbW9kZSB0byBXQiBTSUxLIHJl
cXVpcmVzIGFkZGluZyBpbiB0aGUgZmluYWwgY29udGVudHMKKyBvZiB0aGUgQ0VMVCBvdmVybGFw
IGJ1ZmZlciB0byB0aGUgZmlyc3QgU0lMSy1vbmx5IHBhY2tldC4KK1RoaXMgY2FuIGJlIGRvbmUg
YnkgZGVjb2RpbmcgYSAyLjUmbmJzcDttcyBzaWxlbmNlIGZyYW1lIHdpdGggdGhlIENFTFQgZGVj
b2RlcgorIHVzaW5nIHRoZSBjaGFubmVsIGNvdW50IG9mIHRoZSBTSUxLLW9ubHkgcGFja2V0IChh
bmQgYW55IGNob2ljZSBvZiBhdWRpbworIGJhbmR3aWR0aCksIHdoaWNoIHdpbGwgY29ycmVjdGx5
IGhhbmRsZSB0aGUgY2FzZXMgd2hlbiB0aGUgY2hhbm5lbCBjb3VudAorIGNoYW5nZXMgYXMgd2Vs
bC4KKzwvdD4KKworPHQ+CitXaGVuIGNoYW5naW5nIHRoZSBjaGFubmVsIGNvdW50IGZvciBTSUxL
LW9ubHkgb3IgSHlicmlkIHBhY2tldHMsIHRoZSBlbmNvZGVyCisgY2FuIGF2b2lkIGdsaXRjaGVz
IGJ5IHNtb290aGx5IHZhcnlpbmcgdGhlIHN0ZXJlbyB3aWR0aCBvZiB0aGUgaW5wdXQgc2lnbmFs
CisgYmVmb3JlIG9yIGFmdGVyIHRoZSB0cmFuc2l0aW9uLCBhbmQgU0hPVUxEIGRvIHNvLgorSG93
ZXZlciwgb3RoZXIgdHJhbnNpdGlvbnMgYmV0d2VlbiBTSUxLLW9ubHkgcGFja2V0cyBvciBiZXR3
ZWVuIE5CIG9yIE1CIFNJTEsKKyBhbmQgSHlicmlkIHBhY2tldHMgbWF5IGNhdXNlIGdsaXRjaGVz
LCBiZWNhdXNlIG5laXRoZXIgdGhlIExTRiBjb2VmZmljaWVudHMKKyBub3IgdGhlIExUUCwgTFBD
LCBzdGVyZW8gdW5taXhpbmcsIGFuZCByZXNhbXBsZXIgYnVmZmVycyBhcmUgYXZhaWxhYmxlIGF0
IHRoZQorIG5ldyBzYW1wbGUgcmF0ZS4KK1RoZXNlIHN3aXRjaGVzIFNIT1VMRCBiZSBkZWxheWVk
IGJ5IHRoZSBlbmNvZGVyIHVudGlsIHF1aWV0IHBlcmlvZHMgb3IKKyB0cmFuc2llbnRzLCB3aGVy
ZSB0aGUgaW5ldml0YWJsZSBnbGl0Y2hlcyB3aWxsIGJlIGxlc3MgYXVkaWJsZS4gQWRkaXRpb25h
bGx5LAorIHRoZSBiaXQtc3RyZWFtIE1BWSBpbmNsdWRlIHJlZHVuZGFudCBzaWRlIGluZm9ybWF0
aW9uICgicmVkdW5kYW5jeSIpLCBpbiB0aGUKKyBmb3JtIG9mIGFkZGl0aW9uYWwgQ0VMVCBmcmFt
ZXMgZW1iZWRkZWQgaW4gZWFjaCBvZiB0aGUgT3B1cyBmcmFtZXMgYXJvdW5kIHRoZQorIHRyYW5z
aXRpb24uCis8L3Q+CisKKzx0PgorVGhlIG90aGVyIHRyYW5zaXRpb25zIHRoYXQgY2Fubm90IGJl
IGVhc2lseSBoYW5kbGVkIGFyZSB0aG9zZSB3aGVyZSB0aGUgbG93ZXIKKyBmcmVxdWVuY2llcyBz
d2l0Y2ggYmV0d2VlbiB0aGUgU0lMSyBMUC1iYXNlZCBtb2RlbCBhbmQgdGhlIENFTFQgTURDVCBt
b2RlbC4KK0hvd2V2ZXIsIGFuIGVuY29kZXIgbWF5IG5vdCBoYXZlIGFuIG9wcG9ydHVuaXR5IHRv
IGRlbGF5IHN1Y2ggYSBzd2l0Y2ggdG8gYQorIGNvbnZlbmllbnQgcG9pbnQuCitGb3IgZXhhbXBs
ZSwgaWYgdGhlIGNvbnRlbnQgc3dpdGNoZXMgZnJvbSBzcGVlY2ggdG8gbXVzaWMsIGFuZCB0aGUg
ZW5jb2RlciBkb2VzCisgbm90IGhhdmUgZW5vdWdoIGxhdGVuY3kgaW4gaXRzIGFuYWx5c2lzIHRv
IGRldGVjdCB0aGlzIGluIGFkdmFuY2UsIHRoZXJlIG1heQorIGJlIG5vIGNvbnZlbmllbnQgc2ls
ZW5jZSBwZXJpb2QgZHVyaW5nIHdoaWNoIHRvIG1ha2UgdGhlIHRyYW5zaXRpb24gZm9yIHF1aXRl
Cisgc29tZSB0aW1lLgorVG8gYXZvaWQgb3IgcmVkdWNlIGdsaXRjaGVzIGR1cmluZyB0aGVzZSBw
cm9ibGVtYXRpYyBtb2RlIHRyYW5zaXRpb25zLCBhbmQKKyBhbHNvIGJldHdlZW4gYXVkaW8gYmFu
ZHdpZHRoIGNoYW5nZXMgaW4gdGhlIFNJTEstb25seSBtb2RlcywgdHJhbnNpdGlvbnMgTUFZCisg
aW5jbHVkZSByZWR1bmRhbnQgc2lkZSBpbmZvcm1hdGlvbiAoInJlZHVuZGFuY3kiKSwgaW4gdGhl
IGZvcm0gb2YgYW4KKyBhZGRpdGlvbmFsIENFTFQgZnJhbWUgZW1iZWRkZWQgaW4gdGhlIE9wdXMg
ZnJhbWUuCis8L3Q+CisKKzx0PgorQSB0cmFuc2l0aW9uIGJldHdlZW4gY29kaW5nIHRoZSBsb3dl
ciBmcmVxdWVuY2llcyB3aXRoIHRoZSBMUCBtb2RlbCBhbmQgdGhlCisgTURDVCBtb2RlbCBvciBh
IHRyYW5zaXRpb24gdGhhdCBpbnZvbHZlcyBjaGFuZ2luZyB0aGUgU0lMSyBiYW5kd2lkdGgKKyBp
cyBvbmx5IG5vcm1hdGl2ZWx5IHNwZWNpZmllZCB3aGVuIGl0IGluY2x1ZGVzIHJlZHVuZGFuY3ku
CitGb3IgdGhvc2Ugd2l0aG91dCByZWR1bmRhbmN5LCBpdCBpcyBSRUNPTU1FTkRFRCB0aGF0IHRo
ZSBkZWNvZGVyIHVzZSBhCisgY29uY2VhbG1lbnQgdGVjaG5pcXVlIChlLmcuLCBtYWtlIHVzZSBv
ZiBhIFBMQyBhbGdvcml0aG0pIHRvICJmaWxsIGluIiB0aGUKKyBnYXAgb3IgZGlzY29udGludWl0
eSBjYXVzZWQgYnkgdGhlIG1vZGUgdHJhbnNpdGlvbi4KK1RoZXJlZm9yZSwgUExDIE1VU1QgTk9U
IGJlIGFwcGxpZWQgZHVyaW5nIGFueSBub3JtYXRpdmUgdHJhbnNpdGlvbiwgaS5lLiwgd2hlbgor
PGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+QSBwYWNrZXQgaW5jbHVkZXMgcmVkdW5kYW5jeSBm
b3IgdGhpcyB0cmFuc2l0aW9uIChhcyBkZXNjcmliZWQgYmVsb3cpLDwvdD4KKzx0PlRoZSB0cmFu
c2l0aW9uIGlzIGJldHdlZW4gYW55IFdCIFNJTEsgcGFja2V0IGFuZCBhbnkgSHlicmlkIHBhY2tl
dCwgb3IgdmljZQorIHZlcnNhLDwvdD4KKzx0PlRoZSB0cmFuc2l0aW9uIGlzIGJldHdlZW4gYW55
IHR3byBIeWJyaWQgbW9kZSBwYWNrZXRzLCBvcjwvdD4KKzx0PlRoZSB0cmFuc2l0aW9uIGlzIGJl
dHdlZW4gYW55IHR3byBDRUxUIG1vZGUgcGFja2V0cyw8L3Q+Cis8L2xpc3Q+CisgdW5sZXNzIHRo
ZXJlIGlzIGFjdHVhbCBwYWNrZXQgbG9zcy4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWRl
LWluZm8iIHRpdGxlPSJUcmFuc2l0aW9uIFNpZGUgSW5mb3JtYXRpb24gKFJlZHVuZGFuY3kpIj4K
Kzx0PgorVHJhbnNpdGlvbnMgd2l0aCBzaWRlIGluZm9ybWF0aW9uIGluY2x1ZGUgYW4gZXh0cmEg
NSZuYnNwO21zICJyZWR1bmRhbnQiIENFTFQKKyBmcmFtZSB3aXRoaW4gdGhlIE9wdXMgZnJhbWUu
CitUaGlzIGZyYW1lIGlzIGRlc2lnbmVkIHRvIGZpbGwgaW4gdGhlIGdhcCBvciBkaXNjb250aW51
aXR5IGluIHRoZSBkaWZmZXJlbnQKKyBsYXllcnMgd2l0aG91dCByZXF1aXJpbmcgdGhlIGRlY29k
ZXIgdG8gY29uY2VhbCBpdC4KK0ZvciB0cmFuc2l0aW9ucyBmcm9tIENFTFQtb25seSB0byBTSUxL
LW9ubHkgb3IgSHlicmlkLCB0aGUgcmVkdW5kYW50IGZyYW1lIGlzCisgaW5zZXJ0ZWQgaW4gdGhl
IGZpcnN0IE9wdXMgZnJhbWUgYWZ0ZXIgdGhlIHRyYW5zaXRpb24gKGkuZS4sIHRoZSBmaXJzdAor
IFNJTEstb25seSBvciBIeWJyaWQgZnJhbWUpLgorRm9yIHRyYW5zaXRpb25zIGZyb20gU0lMSy1v
bmx5IG9yIEh5YnJpZCB0byBDRUxULW9ubHksIHRoZSByZWR1bmRhbnQgZnJhbWUgaXMKKyBpbnNl
cnRlZCBpbiB0aGUgbGFzdCBPcHVzIGZyYW1lIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiAoaS5lLiwg
dGhlIGxhc3QKKyBTSUxLLW9ubHkgb3IgSHlicmlkIGZyYW1lKS4KKzwvdD4KKworPHNlY3Rpb24g
YW5jaG9yPSJvcHVzX3JlZHVuZGFuY3lfZmxhZyIgdGl0bGU9IlJlZHVuZGFuY3kgRmxhZyI+Cis8
dD4KK1RoZSBwcmVzZW5jZSBvZiByZWR1bmRhbmN5IGlzIHNpZ25hbGVkIGluIGFsbCBTSUxLLW9u
bHkgYW5kIEh5YnJpZCBmcmFtZXMsIG5vdAorIGp1c3QgdGhvc2UgaW52b2x2ZWQgaW4gYSBtb2Rl
IHRyYW5zaXRpb24uCitUaGlzIGFsbG93cyB0aGUgZnJhbWVzIHRvIGJlIGRlY29kZWQgY29ycmVj
dGx5IGV2ZW4gaWYgYW4gYWRqYWNlbnQgZnJhbWUgaXMKKyBsb3N0LgorRm9yIFNJTEstb25seSBm
cmFtZXMsIHRoaXMgc2lnbmFsaW5nIGlzIGltcGxpY2l0LCBiYXNlZCBvbiB0aGUgc2l6ZSBvZiB0
aGUKKyBvZiB0aGUgT3B1cyBmcmFtZSBhbmQgdGhlIG51bWJlciBvZiBiaXRzIGNvbnN1bWVkIGRl
Y29kaW5nIHRoZSBTSUxLIHBvcnRpb24gb2YKKyBpdC4KK0FmdGVyIGRlY29kaW5nIHRoZSBTSUxL
IHBvcnRpb24gb2YgdGhlIE9wdXMgZnJhbWUsIHRoZSBkZWNvZGVyIHVzZXMgZWNfdGVsbCgpCisg
KHNlZSA8eHJlZiB0YXJnZXQ9ImVjX3RlbGwiLz4pIHRvIGNoZWNrIGlmIHRoZXJlIGFyZSBhdCBs
ZWFzdCAxNyBiaXRzCisgcmVtYWluaW5nLgorSWYgc28sIHRoZW4gdGhlIGZyYW1lIGNvbnRhaW5z
IHJlZHVuZGFuY3kuCis8L3Q+CisKKzx0PgorRm9yIEh5YnJpZCBmcmFtZXMsIHRoaXMgc2lnbmFs
aW5nIGlzIGV4cGxpY2l0LgorQWZ0ZXIgZGVjb2RpbmcgdGhlIFNJTEsgcG9ydGlvbiBvZiB0aGUg
T3B1cyBmcmFtZSwgdGhlIGRlY29kZXIgdXNlcyBlY190ZWxsKCkKKyAoc2VlIDx4cmVmIHRhcmdl
dD0iZWNfdGVsbCIvPikgdG8gZW5zdXJlIHRoZXJlIGFyZSBhdCBsZWFzdCAzNyBiaXRzIHJlbWFp
bmluZy4KK0lmIHNvLCBpdCByZWFkcyBhIHN5bWJvbCB3aXRoIHRoZSBQREYgaW4KKyA8eHJlZiB0
YXJnZXQ9Im9wdXNfcmVkdW5kYW5jeV9mbGFnX3BkZiIvPiwgYW5kIGlmIHRoZSB2YWx1ZSBpcyAx
LCB0aGVuIHRoZQorIGZyYW1lIGNvbnRhaW5zIHJlZHVuZGFuY3kuCitPdGhlcndpc2UgKGlmIHRo
ZXJlIHdlcmUgZmV3ZXIgdGhhbiAzNyBiaXRzIGxlZnQgb3IgdGhlIHZhbHVlIHdhcyAwKSwgdGhl
IGZyYW1lCisgZG9lcyBub3QgY29udGFpbiByZWR1bmRhbmN5LgorPC90PgorCis8dGV4dHRhYmxl
IGFuY2hvcj0ib3B1c19yZWR1bmRhbmN5X2ZsYWdfcGRmIiB0aXRsZT0iUmVkdW5kYW5jeSBGbGFn
IFBERiI+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPns0MDk1LCAxfS80MDk2PC9jPgorPC90ZXh0
dGFibGU+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ib3B1c19yZWR1bmRhbmN5X3Bv
cyIgdGl0bGU9IlJlZHVuZGFuY3kgUG9zaXRpb24gRmxhZyI+Cis8dD4KK1NpbmNlIHRoZSBjdXJy
ZW50IGZyYW1lIGlzIGEgU0lMSy1vbmx5IG9yIGEgSHlicmlkIGZyYW1lLCBpdCBtdXN0IGJlIGF0
IGxlYXN0CisgMTAmbmJzcDttcy4KK1RoZXJlZm9yZSwgaXQgbmVlZHMgYW4gYWRkaXRpb25hbCBm
bGFnIHRvIGluZGljYXRlIHdoZXRoZXIgdGhlIHJlZHVuZGFudAorIDUmbmJzcDttcyBDRUxUIGZy
YW1lIHNob3VsZCBiZSBtaXhlZCBpbnRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGN1cnJlbnQgZnJh
bWUsCisgb3IgdGhlIGVuZC4KK0FmdGVyIGRldGVybWluaW5nIHRoYXQgYSBmcmFtZSBjb250YWlu
cyByZWR1bmRhbmN5LCB0aGUgZGVjb2RlciByZWFkcyBhCisgMSZuYnNwO2JpdCBzeW1ib2wgd2l0
aCBhIHVuaWZvcm0gUERGCisgKDx4cmVmIHRhcmdldD0ib3B1c19yZWR1bmRhbmN5X3Bvc19wZGYi
Lz4pLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ib3B1c19yZWR1bmRhbmN5X3Bvc19wZGYi
IHRpdGxlPSJSZWR1bmRhbmN5IFBvc2l0aW9uIFBERiI+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxj
PnsxLCAxfS8yPC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorSWYgdGhlIHZhbHVlIGlzIHplcm8s
IHRoaXMgaXMgdGhlIGZpcnN0IGZyYW1lIGluIHRoZSB0cmFuc2l0aW9uLCBhbmQgdGhlCisgcmVk
dW5kYW5jeSBiZWxvbmdzIGF0IHRoZSBlbmQuCitJZiB0aGUgdmFsdWUgaXMgb25lLCB0aGlzIGlz
IHRoZSBzZWNvbmQgZnJhbWUgaW4gdGhlIHRyYW5zaXRpb24sIGFuZCB0aGUKKyByZWR1bmRhbmN5
IGJlbG9uZ3MgYXQgdGhlIGJlZ2lubmluZy4KK1RoZXJlIGlzIG5vIHdheSB0byBzcGVjaWZ5IHRo
YXQgYW4gT3B1cyBmcmFtZSBjb250YWlucyBzZXBhcmF0ZSByZWR1bmRhbnQgQ0VMVAorIGZyYW1l
cyBhdCBib3RoIHRoZSBiZWdpbm5pbmcgYW5kIHRoZSBlbmQuCis8L3Q+Cis8L3NlY3Rpb24+CisK
KzxzZWN0aW9uIGFuY2hvcj0ib3B1c19yZWR1bmRhbmN5X3NpemUiIHRpdGxlPSJSZWR1bmRhbmN5
IFNpemUiPgorPHQ+CitVbmxpa2UgdGhlIENFTFQgcG9ydGlvbiBvZiBhIEh5YnJpZCBmcmFtZSwg
dGhlIHJlZHVuZGFudCBDRUxUIGZyYW1lIGRvZXMgbm90CisgdXNlIHRoZSBzYW1lIGVudHJvcHkg
Y29kZXIgc3RhdGUgYXMgdGhlIHJlc3Qgb2YgdGhlIE9wdXMgZnJhbWUsIGJlY2F1c2UgdGhpcwor
IHdvdWxkIGJyZWFrIHRoZSBDRUxUIGJpdCBhbGxvY2F0aW9uIG1lY2hhbmlzbSBpbiBIeWJyaWQg
ZnJhbWVzLgorVGh1cywgYSByZWR1bmRhbnQgQ0VMVCBmcmFtZSBhbHdheXMgc3RhcnRzIGFuZCBl
bmRzIG9uIGEgYnl0ZSBib3VuZGFyeSwgZXZlbiBpbgorIFNJTEstb25seSBmcmFtZXMsIHdoZXJl
IHRoaXMgaXMgbm90IHN0cmljdGx5IG5lY2Vzc2FyeS4KKzwvdD4KKworPHQ+CitGb3IgU0lMSy1v
bmx5IGZyYW1lcywgdGhlIG51bWJlciBvZiBieXRlcyBpbiB0aGUgcmVkdW5kYW50IENFTFQgZnJh
bWUgaXMgc2ltcGx5CisgdGhlIG51bWJlciBvZiB3aG9sZSBieXRlcyByZW1haW5pbmcsIHdoaWNo
IG11c3QgYmUgYXQgbGVhc3QgMiwgZHVlIHRvIHRoZQorIHNwYWNlIGNoZWNrIGluIDx4cmVmIHRh
cmdldD0ib3B1c19yZWR1bmRhbmN5X2ZsYWciLz4uCitGb3IgSHlicmlkIGZyYW1lcywgdGhlIG51
bWJlciBvZiBieXRlcyBpcyBlcXVhbCB0byAyLCBwbHVzIGEgZGVjb2RlZCB1bnNpZ25lZAorIGlu
dGVnZXIgbGVzcyB0aGFuIDI1NiAoc2VlIDx4cmVmIHRhcmdldD0iZWNfZGVjX3VpbnQiLz4pLgor
VGhpcyBtYXkgYmUgbW9yZSB0aGFuIHRoZSBudW1iZXIgb2Ygd2hvbGUgYnl0ZXMgcmVtYWluaW5n
IGluIHRoZSBPcHVzIGZyYW1lLAorIGluIHdoaWNoIGNhc2UgdGhlIGZyYW1lIGlzIGludmFsaWQu
CitIb3dldmVyLCBhIGRlY29kZXIgaXMgbm90IHJlcXVpcmVkIHRvIGlnbm9yZSB0aGUgZW50aXJl
IGZyYW1lLCBhcyB0aGlzIG1heSBiZQorIHRoZSByZXN1bHQgb2YgYSBiaXQgZXJyb3IgdGhhdCBk
ZXN5bmNocm9uaXplZCB0aGUgcmFuZ2UgY29kZXIuCitUaGVyZSBtYXkgc3RpbGwgYmUgdXNlZnVs
IGRhdGEgYmVmb3JlIHRoZSBlcnJvciwgYW5kIGEgZGVjb2RlciBNQVkga2VlcCBhbnkKKyBhdWRp
byBkZWNvZGVkIHNvIGZhciBpbnN0ZWFkIG9mIGludm9raW5nIHRoZSBQTEMsIGJ1dCBpdCBpcyBS
RUNPTU1FTkRFRCB0aGF0CisgdGhlIGRlY29kZXIgc3RvcCBkZWNvZGluZyBhbmQgZGlzY2FyZCB0
aGUgcmVzdCBvZiB0aGUgY3VycmVudCBPcHVzIGZyYW1lLgorPC90PgorCis8dD4KK0l0IHdvdWxk
IGhhdmUgYmVlbiBwb3NzaWJsZSB0byBhdm9pZCB0aGVzZSBpbnZhbGlkIHN0YXRlcyBpbiB0aGUg
ZGVzaWduIG9mIE9wdXMKKyBieSBsaW1pdGluZyB0aGUgcmFuZ2Ugb2YgdGhlIGV4cGxpY2l0IGxl
bmd0aCBkZWNvZGVkIGZyb20gSHlicmlkIGZyYW1lcyBieSB0aGUKKyBhY3R1YWwgbnVtYmVyIG9m
IHdob2xlIGJ5dGVzIHJlbWFpbmluZy4KK0hvd2V2ZXIsIHRoaXMgd291bGQgcmVxdWlyZSBhbiBl
bmNvZGVyIHRvIGRldGVybWluZSB0aGUgcmF0ZSBhbGxvY2F0aW9uIGZvciB0aGUKKyBNRENUIGxh
eWVyIHVwIGZyb250LCBiZWZvcmUgaXQgYmVnYW4gZW5jb2RpbmcgdGhhdCBsYXllci4KK0J5IGFs
bG93aW5nIHNvbWUgaW52YWxpZCBzaXplcywgdGhlIGVuY29kZXIgaXMgYWJsZSB0byBkZWZlciB0
aGF0IGRlY2lzaW9uCisgdW50aWwgbXVjaCBsYXRlci4KK1doZW4gZW5jb2RpbmcgSHlicmlkIGZy
YW1lcyB3aGljaCBkbyBub3QgaW5jbHVkZSByZWR1bmRhbmN5LCB0aGUgZW5jb2RlciBtdXN0Cisg
c3RpbGwgZGVjaWRlIHVwLWZyb250IGlmIGl0IHdpc2hlcyB0byB1c2UgdGhlIG1pbmltdW0gMzcg
Yml0cyByZXF1aXJlZCB0bworIHRyaWdnZXIgZW5jb2Rpbmcgb2YgdGhlIHJlZHVuZGFuY3kgZmxh
ZywgYnV0IHRoaXMgaXMgYSBtdWNoIGxvb3NlcgorIHJlc3RyaWN0aW9uLgorPC90PgorCis8dD4K
K0FmdGVyIGRldGVybWluaW5nIHRoZSBzaXplIG9mIHRoZSByZWR1bmRhbnQgQ0VMVCBmcmFtZSwg
dGhlIGRlY29kZXIgcmVkdWNlcworIHRoZSBzaXplIG9mIHRoZSBidWZmZXIgY3VycmVudGx5IGlu
IHVzZSBieSB0aGUgcmFuZ2UgY29kZXIgYnkgdGhhdCBhbW91bnQuCitUaGUgQ0VMVCBsYXllciBy
ZWFkIGFueSByYXcgYml0cyBmcm9tIHRoZSBlbmQgb2YgdGhpcyByZWR1Y2VkIGJ1ZmZlciwgYW5k
IGFsbAorIGNhbGN1bGF0aW9ucyBvZiB0aGUgbnVtYmVyIG9mIGJpdHMgcmVtYWluaW5nIGluIHRo
ZSBidWZmZXIgbXVzdCBiZSBkb25lIHVzaW5nCisgdGhpcyBuZXcsIHJlZHVjZWQgc2l6ZSwgcmF0
aGVyIHRoYW4gdGhlIG9yaWdpbmFsIHNpemUgb2YgdGhlIE9wdXMgZnJhbWUuCis8L3Q+Cis8L3Nl
Y3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ib3B1c19yZWR1bmRhbmN5X2RlY29kaW5nIiB0aXRs
ZT0iRGVjb2RpbmcgdGhlIFJlZHVuZGFuY3kiPgorPHQ+CitUaGUgcmVkdW5kYW50IGZyYW1lIGlz
IGRlY29kZWQgbGlrZSBhbnkgb3RoZXIgQ0VMVC1vbmx5IGZyYW1lLCB3aXRoIHRoZQorIGV4Y2Vw
dGlvbiB0aGF0IGl0IGRvZXMgbm90IGNvbnRhaW4gYSBUT0MgYnl0ZS4KK1RoZSBmcmFtZSBzaXpl
IGlzIGZpeGVkIGF0IDUmbmJzcDttcywgdGhlIGNoYW5uZWwgY291bnQgaXMgc2V0IHRvIHRoYXQg
b2YgdGhlCisgY3VycmVudCBmcmFtZSwgYW5kIHRoZSBhdWRpbyBiYW5kd2lkdGggaXMgYWxzbyBz
ZXQgdG8gdGhhdCBvZiB0aGUgY3VycmVudAorIGZyYW1lLCB3aXRoIHRoZSBleGNlcHRpb24gdGhh
dCBmb3IgTUIgU0lMSyBmcmFtZXMsIGl0IGlzIHNldCB0byBXQi4KKzwvdD4KKworPHQ+CitJZiB0
aGUgcmVkdW5kYW5jeSBiZWxvbmdzIGF0IHRoZSBiZWdpbm5pbmcgKGluIGEgQ0VMVC1vbmx5IHRv
IFNJTEstb25seSBvcgorIEh5YnJpZCB0cmFuc2l0aW9uKSwgdGhlIGZpbmFsIHJlY29uc3RydWN0
ZWQgb3V0cHV0IHVzZXMgdGhlIGZpcnN0IDIuNSZuYnNwO21zCisgb2YgYXVkaW8gb3V0cHV0IGJ5
IHRoZSBkZWNvZGVyIGZvciB0aGUgcmVkdW5kYW50IGZyYW1lIGFzLWlzLCBkaXNjYXJkaW5nCisg
dGhlIGNvcnJlc3BvbmRpbmcgb3V0cHV0IGZyb20gdGhlIFNJTEstb25seSBvciBIeWJyaWQgcG9y
dGlvbiBvZiB0aGUgZnJhbWUuCitUaGUgcmVtYWluaW5nIDIuNSZuYnNwO21zIGlzIGNyb3NzLWxh
cHBlZCB3aXRoIHRoZSBkZWNvZGVkIFNJTEsvSHlicmlkIHNpZ25hbAorIHVzaW5nIHRoZSBDRUxU
J3MgcG93ZXItY29tcGxlbWVudGFyeSBNRENUIHdpbmRvdyB0byBlbnN1cmUgYSBzbW9vdGgKKyB0
cmFuc2l0aW9uLgorPC90PgorCis8dD4KK0lmIHRoZSByZWR1bmRhbmN5IGJlbG9uZ3MgYXQgdGhl
IGVuZCAoaW4gYSBTSUxLLW9ubHkgb3IgSHlicmlkIHRvIENFTFQtb25seQorIHRyYW5zaXRpb24p
LCBvbmx5IHRoZSBzZWNvbmQgaGFsZiAoMi41Jm5ic3A7bXMpIG9mIHRoZSBhdWRpbyBvdXRwdXQg
YnkgdGhlCisgZGVjb2RlciBmb3IgdGhlIHJlZHVuZGFudCBmcmFtZSBpcyB1c2VkLgorSW4gdGhh
dCBjYXNlLCB0aGUgc2Vjb25kIGhhbGYgb2YgdGhlIHJlZHVuZGFudCBmcmFtZSBpcyBjcm9zcy1s
YXBwZWQgd2l0aCB0aGUKKyBlbmQgb2YgdGhlIFNJTEsvSHlicmlkIHNpZ25hbCwgYWdhaW4gdXNp
bmcgQ0VMVCdzIHBvd2VyLWNvbXBsZW1lbnRhcnkgTURDVAorIHdpbmRvdyB0byBlbnN1cmUgYSBz
bW9vdGggdHJhbnNpdGlvbi4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2Vj
dGlvbiBhbmNob3I9ImRlY29kZXItcmVzZXQiIHRpdGxlPSJTdGF0ZSBSZXNldCI+Cis8dD4KK1do
ZW4gYSB0cmFuc2l0aW9uIG9jY3VycywgdGhlIHN0YXRlIG9mIHRoZSBTSUxLIG9yIHRoZSBDRUxU
IGRlY29kZXIgKG9yIGJvdGgpCisgbWF5IG5lZWQgdG8gYmUgcmVzZXQgYmVmb3JlIGRlY29kaW5n
IGEgZnJhbWUgaW4gdGhlIG5ldyBtb2RlLgorVGhpcyBhdm9pZHMgcmV1c2luZyAib3V0IG9mIGRh
dGUiIG1lbW9yeSwgd2hpY2ggbWF5IG5vdCBoYXZlIGJlZW4gdXBkYXRlZCBpbgorIHNvbWUgdGlt
ZSBvciBtYXkgbm90IGJlIGluIGEgd2VsbC1kZWZpbmVkIHN0YXRlIGR1ZSB0bywgZS5nLiwgUExD
LgorVGhlIFNJTEsgc3RhdGUgaXMgcmVzZXQgYmVmb3JlIGV2ZXJ5IFNJTEstb25seSBvciBIeWJy
aWQgZnJhbWUgd2hlcmUgdGhlCisgcHJldmlvdXMgZnJhbWUgd2FzIENFTFQtb25seS4KK1RoZSBD
RUxUIHN0YXRlIGlzIHJlc2V0IGV2ZXJ5IHRpbWUgdGhlIG9wZXJhdGluZyBtb2RlIGNoYW5nZXMg
YW5kIHRoZSBuZXcgbW9kZQorIGlzIGVpdGhlciBIeWJyaWQgb3IgQ0VMVC1vbmx5LCBleGNlcHQg
d2hlbiB0aGUgdHJhbnNpdGlvbiB1c2VzIHJlZHVuZGFuY3kgYXMKKyBkZXNjcmliZWQgYWJvdmUu
CitXaGVuIHN3aXRjaGluZyBmcm9tIFNJTEstb25seSBvciBIeWJyaWQgdG8gQ0VMVC1vbmx5IHdp
dGggcmVkdW5kYW5jeSwgdGhlIENFTFQKKyBzdGF0ZSBpcyByZXNldCBiZWZvcmUgZGVjb2Rpbmcg
dGhlIHJlZHVuZGFudCBDRUxUIGZyYW1lIGVtYmVkZGVkIGluIHRoZQorIFNJTEstb25seSBvciBI
eWJyaWQgZnJhbWUsIGJ1dCBpdCBpcyBub3QgcmVzZXQgYmVmb3JlIGRlY29kaW5nIHRoZSBmb2xs
b3dpbmcKKyBDRUxULW9ubHkgZnJhbWUuCitXaGVuIHN3aXRjaGluZyBmcm9tIENFTFQtb25seSBt
b2RlIHRvIFNJTEstb25seSBvciBIeWJyaWQgbW9kZSB3aXRoIHJlZHVuZGFuY3ksCisgdGhlIENF
TFQgZGVjb2RlciBpcyBub3QgcmVzZXQgZm9yIGRlY29kaW5nIHRoZSByZWR1bmRhbnQgQ0VMVCBm
cmFtZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IlN1bW1hcnkgb2YgVHJh
bnNpdGlvbnMiPgorCis8dD4KKzx4cmVmIHRhcmdldD0ibm9ybWF0aXZlX3RyYW5zaXRpb25zIi8+
IGlsbHVzdHJhdGVzIGFsbCBvZiB0aGUgbm9ybWF0aXZlCisgdHJhbnNpdGlvbnMgaW52b2x2aW5n
IGEgbW9kZSBjaGFuZ2UsIGFuIGF1ZGlvIGJhbmR3aWR0aCBjaGFuZ2UsIG9yIGJvdGguCitFYWNo
IG9uZSB1c2VzIGFuIFMsIEgsIG9yIEMgdG8gcmVwcmVzZW50IGFuIE9wdXMgZnJhbWUgaW4gdGhl
IGNvcnJlc3BvbmRpbmcKKyBtb2RlLgorSW4gYWRkaXRpb24sIGFuIFIgaW5kaWNhdGVzIHRoZSBw
cmVzZW5jZSBvZiByZWR1bmRhbmN5IGluIHRoZSBPcHVzIGZyYW1lIGl0IGlzCisgY3Jvc3MtbGFw
cGVkIHdpdGguCitJdHMgbG9jYXRpb24gaW4gdGhlIGZpcnN0IG9yIGxhc3QgNSZuYnNwO21zIGlz
IGFzc3VtZWQgdG8gY29ycmVzcG9uZCB0byB3aGV0aGVyCisgaXQgaXMgdGhlIGZyYW1lIGJlZm9y
ZSBvciBhZnRlciB0aGUgdHJhbnNpdGlvbi4KK090aGVyIHVzZXMgb2YgcmVkdW5kYW5jeSBhcmUg
bm9uLW5vcm1hdGl2ZS4KK0ZpbmFsbHksIGEgYyBpbmRpY2F0ZXMgdGhlIGNvbnRlbnRzIG9mIHRo
ZSBDRUxUIG92ZXJsYXAgYnVmZmVyIGFmdGVyIHRoZQorIHByZXZpb3VzbHkgZGVjb2RlZCBmcmFt
ZSAoaS5lLiwgYXMgZXh0cmFjdGVkIGJ5IGRlY29kaW5nIGEgc2lsZW5jZSBmcmFtZSkuCis8Zmln
dXJlIGFsaWduPSJjZW50ZXIiIGFuY2hvcj0ibm9ybWF0aXZlX3RyYW5zaXRpb25zIgorIHRpdGxl
PSJOb3JtYXRpdmUgVHJhbnNpdGlvbnMiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RB
VEFbCitTSUxLIHRvIFNJTEsgd2l0aCBSZWR1bmRhbmN5OiAgICAgICAgICAgICBTIC0+IFMgLT4g
UworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFSIC0+
IFIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgO1MgLT4gUyAtPiBTCisKK05CIG9yIE1CIFNJTEsgdG8gSHlicmlkIHdpdGggUmVkdW5k
YW5jeTogIFMgLT4gUyAtPiBTCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgJgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIVIgLT47SCAtPiBIIC0+IEgKKworV0IgU0lMSyB0byBIeWJyaWQ6ICAgICAg
ICAgICAgICAgICAgICAgICAgUyAtPiBTIC0+IFMgLT4hSCAtPiBIIC0+IEgKKworU0lMSyB0byBD
RUxUIHdpdGggUmVkdW5kYW5jeTogICAgICAgICAgICAgUyAtPiBTIC0+IFMKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhUiAtPiBDIC0+IEMgLT4gQwor
CitIeWJyaWQgdG8gTkIgb3IgTUIgU0lMSyB3aXRoIFJlZHVuZGFuY3k6ICBIIC0+IEggLT4gSAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFSIC0+IFIK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgO1MgLT4gUyAtPiBTCisKK0h5YnJpZCB0byBXQiBTSUxLOiAgICAgICAgICAgICAgICAgICAg
ICAgIEggLT4gSCAtPiBIIC0+IGMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwgICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA+IFMgLT4gUyAtPiBTCisKK0h5YnJpZCB0byBDRUxUIHdp
dGggUmVkdW5kYW5jeTogICAgICAgICAgIEggLT4gSCAtPiBICisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIVIgLT4gQyAtPiBDIC0+IEMKKworQ0VMVCB0
byBTSUxLIHdpdGggUmVkdW5kYW5jeTogICAgICAgICAgICAgQyAtPiBDIC0+IEMgLT4gUgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7
UyAtPiBTIC0+IFMKKworQ0VMVCB0byBIeWJyaWQgd2l0aCBSZWR1bmRhbmN5OiAgICAgICAgICAg
QyAtPiBDIC0+IEMgLT4gUgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8SCAtPiBIIC0+IEgKKworS2V5OgorUyAgIFNJTEstb25seSBm
cmFtZSAgICAgICAgICAgICAgICAgOyAgIFNJTEsgZGVjb2RlciByZXNldAorSCAgIEh5YnJpZCBm
cmFtZSAgICAgICAgICAgICAgICAgICAgfCAgIENFTFQgYW5kIFNJTEsgZGVjb2RlciByZXNldHMK
K0MgICBDRUxULW9ubHkgZnJhbWUgICAgICAgICAgICAgICAgICEgICBDRUxUIGRlY29kZXIgcmVz
ZXQKK2MgICBDRUxUIG92ZXJsYXAgICAgICAgICAgICAgICAgICAgICsgICBEaXJlY3QgbWl4aW5n
CitSICAgUmVkdW5kYW50IENFTFQgZnJhbWUgICAgICAgICAgICAmICAgV2luZG93ZWQgY3Jvc3Mt
bGFwCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBmaXJzdCB0d28gYW5kIHRoZSBsYXN0
IHR3byBPcHVzIGZyYW1lcyBpbiBlYWNoIGV4YW1wbGUgYXJlIGlsbHVzdHJhdGl2ZSwKKyBpLmUu
LCB0aGVyZSBpcyBubyByZXF1aXJlbWVudCB0aGF0IGEgc3RyZWFtIHJlbWFpbiBpbiB0aGUgc2Ft
ZSBjb25maWd1cmF0aW9uCisgZm9yIHRocmVlIGNvbnNlY3V0aXZlIGZyYW1lcyBiZWZvcmUgb3Ig
YWZ0ZXIgYSBzd2l0Y2guCis8L3Q+CisKKzx0PgorVGhlIGJlaGF2aW9yIG9mIHRyYW5zaXRpb25z
IHdpdGhvdXQgcmVkdW5kYW5jeSB3aGVyZSBQTEMgaXMgYWxsb3dlZCBpcyBub24tbm9ybWF0aXZl
LgorQW4gZW5jb2RlciBtaWdodCBzdGlsbCB3aXNoIHRvIHVzZSB0aGVzZSB0cmFuc2l0aW9ucyBp
ZiwgZm9yIGV4YW1wbGUsIGl0CisgZG9lc24ndCB3YW50IHRvIGFkZCB0aGUgZXh0cmEgYml0cmF0
ZSByZXF1aXJlZCBmb3IgcmVkdW5kYW5jeSBvciBpZiBpdCBtYWtlcworIGEgZGVjaXNpb24gdG8g
c3dpdGNoIGFmdGVyIGl0IGhhcyBhbHJlYWR5IHRyYW5zbWl0dGVkIHRoZSBmcmFtZSB0aGF0IHdv
dWxkCisgaGF2ZSBoYWQgdG8gY29udGFpbiB0aGUgcmVkdW5kYW5jeS4KKzx4cmVmIHRhcmdldD0i
bm9ubm9ybWF0aXZlX3RyYW5zaXRpb25zIi8+IGlsbHVzdHJhdGVzIHRoZSByZWNvbW1lbmRlZAor
IGNyb3NzLWxhcHBpbmcgYW5kIGRlY29kZXIgcmVzZXRzIGZvciB0aGVzZSB0cmFuc2l0aW9ucy4K
KzxmaWd1cmUgYWxpZ249ImNlbnRlciIgYW5jaG9yPSJub25ub3JtYXRpdmVfdHJhbnNpdGlvbnMi
CisgdGl0bGU9IlJlY29tbWVuZGVkIE5vbi1Ob3JtYXRpdmUgVHJhbnNpdGlvbnMiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitTSUxLIHRvIFNJTEsgKGF1ZGlvIGJhbmR3aWR0
aCBjaGFuZ2UpOiAgICBTIC0+IFMgLT4gUyAgIDtTIC0+IFMgLT4gUworCitOQiBvciBNQiBTSUxL
IHRvIEh5YnJpZDogICAgICAgICAgICAgICAgICBTIC0+IFMgLT4gUyAgIHxIIC0+IEggLT4gSAor
CitTSUxLIHRvIENFTFQgd2l0aG91dCBSZWR1bmRhbmN5OiAgICAgICAgICBTIC0+IFMgLT4gUyAt
PiBQCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICFDIC0+IEMgLT4gQworCitIeWJyaWQgdG8gTkIgb3IgTUIgU0lMSzogICAgICAgICAg
ICAgICAgICBIIC0+IEggLT4gSCAtPiBjCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtTIC0+IFMgLT4gUworCitIeWJyaWQgdG8gQ0VM
VCB3aXRob3V0IFJlZHVuZGFuY3k6ICAgICAgICBIIC0+IEggLT4gSCAtPiBQCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFDIC0+IEMg
LT4gQworCitDRUxUIHRvIFNJTEsgd2l0aG91dCBSZWR1bmRhbmN5OiAgICAgICAgICBDIC0+IEMg
LT4gQyAtPiBQCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDtTIC0+IFMgLT4gUworCitDRUxUIHRvIEh5YnJpZCB3aXRob3V0IFJlZHVu
ZGFuY3k6ICAgICAgICBDIC0+IEMgLT4gQyAtPiBQCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxIIC0+IEggLT4gSAorCitLZXk6CitT
ICAgU0lMSy1vbmx5IGZyYW1lICAgICAgICAgICAgICAgICA7ICAgU0lMSyBkZWNvZGVyIHJlc2V0
CitIICAgSHlicmlkIGZyYW1lICAgICAgICAgICAgICAgICAgICB8ICAgQ0VMVCBhbmQgU0lMSyBk
ZWNvZGVyIHJlc2V0cworQyAgIENFTFQtb25seSBmcmFtZSAgICAgICAgICAgICAgICAgISAgIENF
TFQgZGVjb2RlciByZXNldAorYyAgIENFTFQgb3ZlcmxhcCAgICAgICAgICAgICAgICAgICAgKyAg
IERpcmVjdCBtaXhpbmcKK1AgICBQYWNrZXQgTG9zcyBDb25jZWFsbWVudCAgICAgICAgICYgICBX
aW5kb3dlZCBjcm9zcy1sYXAKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorRW5jb2RlcnMgU0hP
VUxEIE5PVCB1c2Ugb3RoZXIgdHJhbnNpdGlvbnMsIGUuZy4sIHRob3NlIHRoYXQgaW52b2x2ZSBy
ZWR1bmRhbmN5CisgaW4gd2F5cyBub3QgaWxsdXN0cmF0ZWQgaW4gPHhyZWYgdGFyZ2V0PSJub3Jt
YXRpdmVfdHJhbnNpdGlvbnMiLz4uCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgor
Cis8L3NlY3Rpb24+CisKKworPCEtLSAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAtLT4KKzwhLS0gICoqKioqKioqKioq
KioqKioqKioqKioqKioqICAgT1BVUyBFTkNPREVSICAgKioqKioqKioqKioqKioqKioqKioqKiog
LS0+Cis8IS0tICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqIC0tPgorCis8c2VjdGlvbiB0aXRsZT0iT3B1cyBFbmNvZGVy
Ij4KKzx0PgorSnVzdCBsaWtlIHRoZSBkZWNvZGVyLCB0aGUgT3B1cyBlbmNvZGVyIGFsc28gbm9y
bWFsbHkgY29uc2lzdHMgb2YgdHdvIG1haW4gYmxvY2tzOiB0aGUKK1NJTEsgZW5jb2RlciBhbmQg
dGhlIENFTFQgZW5jb2Rlci4gSG93ZXZlciwgdW5saWtlIHRoZSBjYXNlIG9mIHRoZSBkZWNvZGVy
LCBhIHZhbGlkCisodGhvdWdoIHBvdGVudGlhbGx5IHN1Ym9wdGltYWwpIE9wdXMgZW5jb2RlciBp
cyBub3QgcmVxdWlyZWQgdG8gc3VwcG9ydCBhbGwgbW9kZXMgYW5kCittYXkgdGh1cyBvbmx5IGlu
Y2x1ZGUgYSBTSUxLIGVuY29kZXIgbW9kdWxlIG9yIGEgQ0VMVCBlbmNvZGVyIG1vZHVsZS4KK1Ro
ZSBvdXRwdXQgYml0LXN0cmVhbSBvZiB0aGUgT3B1cyBlbmNvZGluZyBjb250YWlucyBiaXRzIGZy
b20gdGhlIFNJTEsgYW5kIENFTFQKKyBlbmNvZGVycywgdGhvdWdoIHRoZXNlIGFyZSBub3Qgc2Vw
YXJhYmxlIGR1ZSB0byB0aGUgdXNlIG9mIGEgcmFuZ2UgY29kZXIuCitBIGJsb2NrIGRpYWdyYW0g
b2YgdGhlIGVuY29kZXIgaXMgaWxsdXN0cmF0ZWQgYmVsb3cuCisKKzxmaWd1cmUgYWxpZ249ImNl
bnRlciIgYW5jaG9yPSJvcHVzLWVuY29kZXItZmlndXJlIiB0aXRsZT0iT3B1cyBFbmNvZGVyIj4K
KzxhcnR3b3JrPgorPCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLS0r
ICAgICstLS0tLS0tLS0rCisgICAgICAgICAgICAgICAgICAgIHwgICBTYW1wbGUgICB8ICAgIHwg
IFNJTEsgICB8LS0tLS0tKworICAgICAgICAgICAgICAgICArLT58ICAgIFJhdGUgICAgfC0tLT58
IEVuY29kZXIgfCAgICAgIFYKKyAgKy0tLS0tLS0tLS0tKyAgfCAgfCBDb252ZXJzaW9uIHwgICAg
fCAgICAgICAgIHwgKy0tLS0tLS0tLSsKKyAgfCBPcHRpb25hbCAgfCAgfCAgKy0tLS0tLS0tLS0t
LSsgICAgKy0tLS0tLS0tLSsgfCAgUmFuZ2UgIHwKKy0+fCBIaWdoLXBhc3MgfC0tKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCBFbmNvZGVyIHwtLS0tPgorICB8ICBGaWx0ZXIgICB8
ICB8ICArLS0tLS0tLS0tLS0tLS0rICArLS0tLS0tLS0tKyB8ICAgICAgICAgfCBCaXQtCisgICst
LS0tLS0tLS0tLSsgIHwgIHwgICAgRGVsYXkgICAgIHwgIHwgIENFTFQgICB8ICstLS0tLS0tLS0r
IHN0cmVhbQorICAgICAgICAgICAgICAgICArLT58IENvbXBlbnNhdGlvbiB8LT58IEVuY29kZXIg
fCAgICAgIF4KKyAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgfCAgfCAgICAgICAg
IHwtLS0tLS0rCisgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLS0tLSsgICstLS0tLS0t
LS0rCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorCis8dD4KK0ZvciBhIG5vcm1h
bCBlbmNvZGVyIHdoZXJlIGJvdGggdGhlIFNJTEsgYW5kIHRoZSBDRUxUIG1vZHVsZXMgYXJlIGlu
Y2x1ZGVkLCBhbiBvcHRpbWFsCitlbmNvZGVyIHNob3VsZCBzZWxlY3Qgd2hpY2ggY29kaW5nIG1v
ZGUgdG8gdXNlIGF0IHJ1bi10aW1lIGRlcGVuZGluZyBvbiB0aGUgY29uZGl0aW9ucy4KK0luIHRo
ZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24sIHRoZSBmcmFtZSBzaXplIGlzIHNlbGVjdGVkIGJ5
IHRoZSBhcHBsaWNhdGlvbiwgYnV0IHRoZQorb3RoZXIgY29uZmlndXJhdGlvbiBwYXJhbWV0ZXJz
IChudW1iZXIgb2YgY2hhbm5lbHMsIGJhbmR3aWR0aCwgbW9kZSkgYXJlIGF1dG9tYXRpY2FsbHkK
K3NlbGVjdGVkICh1bmxlc3MgZXhwbGljaXRseSBvdmVycmlkZGVuIGJ5IHRoZSBhcHBsaWNhdGlv
bikgZGVwZW5kIG9uIHRoZSBmb2xsb3dpbmc6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5S
ZXF1ZXN0ZWQgYml0cmF0ZTwvdD4KKzx0PklucHV0IHNhbXBsaW5nIHJhdGU8L3Q+Cis8dD5UeXBl
IG9mIHNpZ25hbCAoc3BlZWNoIHZzIG11c2ljKTwvdD4KKzx0PkZyYW1lIHNpemUgaW4gdXNlPC90
PgorPC9saXN0PgorCitUaGUgdHlwZSBvZiBzaWduYWwgY3VycmVudGx5IG5lZWRzIHRvIGJlIHBy
b3ZpZGVkIGJ5IHRoZSBhcHBsaWNhdGlvbiAodGhvdWdoIGl0IGNhbiBiZQorY2hhbmdlZCBpbiBy
ZWFsLXRpbWUpLiBBbiBPcHVzIGVuY29kZXIgaW1wbGVtZW50YXRpb24gY291bGQgYWxzbyBkbyBh
dXRvbWF0aWMgZGV0ZWN0aW9uLAorYnV0IHNpbmNlIE9wdXMgaXMgYW4gaW50ZXJhY3RpdmUgY29k
ZWMsIHN1Y2ggYW4gaW1wbGVtZW50YXRpb24gd291bGQgbGlrZWx5IGhhdmUgdG8gZWl0aGVyCitk
ZWxheSB0aGUgc2lnbmFsIChmb3Igbm9uLWludGVyYWN0aXZlIGFwcGxpY2F0aW9ucykgb3IgZGVs
YXkgdGhlIG1vZGUgc3dpdGNoaW5nIGRlY2lzaW9ucyAoZm9yCitpbnRlcmFjdGl2ZSBhcHBsaWNh
dGlvbnMpLgorPC90PgorCis8dD4KK1doZW4gdGhlIGVuY29kZXIgaXMgY29uZmlndXJlZCBmb3Ig
dm9pY2Ugb3ZlciBJUCBhcHBsaWNhdGlvbnMsIHRoZSBpbnB1dCBzaWduYWwgaXMKK2ZpbHRlcmVk
IGJ5IGEgaGlnaC1wYXNzIGZpbHRlciB0byByZW1vdmUgdGhlIGxvd2VzdCBwYXJ0IG9mIHRoZSBz
cGVjdHJ1bQordGhhdCBjb250YWlucyBsaXR0bGUgc3BlZWNoIGVuZXJneSBhbmQgbWF5IGNvbnRh
aW4gYmFja2dyb3VuZCBub2lzZS4gVGhpcyBpcyBhIHNlY29uZCBvcmRlcgorQXV0byBSZWdyZXNz
aXZlIE1vdmluZyBBdmVyYWdlIChpLmUuLCB3aXRoIHBvbGVzIGFuZCB6ZXJvcykgZmlsdGVyIHdp
dGggYSBjdXQtb2ZmIGZyZXF1ZW5jeSBhcm91bmQgNTAmbmJzcDtIei4KK0luIHRoZSBmdXR1cmUs
IGEgbXVzaWMgZGV0ZWN0b3IgbWF5IGFsc28gYmUgdXNlZCB0byBsb3dlciB0aGUgY3V0LW9mZiBm
cmVxdWVuY3kgd2hlbiB0aGUKK2lucHV0IHNpZ25hbCBpcyBkZXRlY3RlZCB0byBiZSBtdXNpYyBy
YXRoZXIgdGhhbiBzcGVlY2guCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0icmFuZ2UtZW5jb2Rl
ciIgdGl0bGU9IlJhbmdlIEVuY29kZXIiPgorPHQ+CitUaGUgcmFuZ2UgY29kZXIgYWN0cyBhcyB0
aGUgYml0LXBhY2tlciBmb3IgT3B1cy4KK0l0IGlzIHVzZWQgaW4gdGhyZWUgZGlmZmVyZW50IHdh
eXM6IHRvIGVuY29kZQorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitFbnRyb3B5LWNvZGVk
IHN5bWJvbHMgd2l0aCBhIGZpeGVkIHByb2JhYmlsaXR5IG1vZGVsIHVzaW5nIGVjX2VuY29kZSgp
CisgKGVudGVuYy5jKSwKKzwvdD4KKzx0PgorSW50ZWdlcnMgZnJvbSAwIHRvICgyKipNJm5ic3A7
LSZuYnNwOzEpIHVzaW5nIGVjX2VuY191aW50KCkgb3IgZWNfZW5jX2JpdHMoKQorIChlbnRlbmMu
YyksPC90PgorPHQ+CitJbnRlZ2VycyBmcm9tIDAgdG8gKGZ0Jm5ic3A7LSZuYnNwOzEpICh3aGVy
ZSBmdCBpcyBub3QgYSBwb3dlciBvZiB0d28pIHVzaW5nCisgZWNfZW5jX3VpbnQoKSAoZW50ZW5j
LmMpLgorPC90PgorPC9saXN0PgorPC90PgorCis8dD4KK1RoZSByYW5nZSBlbmNvZGVyIG1haW50
YWlucyBhbiBpbnRlcm5hbCBzdGF0ZSB2ZWN0b3IgY29tcG9zZWQgb2YgdGhlIGZvdXItdHVwbGUK
KyAodmFsLCZuYnNwO3JuZywmbmJzcDtyZW0sJm5ic3A7ZXh0KSByZXByZXNlbnRpbmcgdGhlIGxv
dyBlbmQgb2YgdGhlIGN1cnJlbnQKKyByYW5nZSwgdGhlIHNpemUgb2YgdGhlIGN1cnJlbnQgcmFu
Z2UsIGEgc2luZ2xlIGJ1ZmZlcmVkIG91dHB1dCBieXRlLCBhbmQgYQorIGNvdW50IG9mIGFkZGl0
aW9uYWwgY2FycnktcHJvcGFnYXRpbmcgb3V0cHV0IGJ5dGVzLgorQm90aCB2YWwgYW5kIHJuZyBh
cmUgMzItYml0IHVuc2lnbmVkIGludGVnZXIgdmFsdWVzLCByZW0gaXMgYSBieXRlIHZhbHVlIG9y
CisgbGVzcyB0aGFuIDI1NSBvciB0aGUgc3BlY2lhbCB2YWx1ZSAtMSwgYW5kIGV4dCBpcyBhbiB1
bnNpZ25lZCBpbnRlZ2VyIHdpdGggYXQKKyBsZWFzdCAxMSBiaXRzLgorVGhpcyBzdGF0ZSB2ZWN0
b3IgaXMgaW5pdGlhbGl6ZWQgYXQgdGhlIHN0YXJ0IG9mIGVhY2ggZWFjaCBmcmFtZSB0byB0aGUg
dmFsdWUKKyAoMCwmbmJzcDsyKiozMSwmbmJzcDstMSwmbmJzcDswKS4KK0FmdGVyIGVuY29kaW5n
IGEgc2VxdWVuY2Ugb2Ygc3ltYm9scywgdGhlIHZhbHVlIG9mIHJuZyBpbiB0aGUgZW5jb2RlciBz
aG91bGQKKyBleGFjdGx5IG1hdGNoIHRoZSB2YWx1ZSBvZiBybmcgaW4gdGhlIGRlY29kZXIgYWZ0
ZXIgZGVjb2RpbmcgdGhlIHNhbWUgc2VxdWVuY2UKKyBvZiBzeW1ib2xzLgorVGhpcyBpcyBhIHBv
d2VyZnVsIHRvb2wgZm9yIGRldGVjdGluZyBlcnJvcnMgaW4gZWl0aGVyIGFuIGVuY29kZXIgb3Ig
ZGVjb2RlcgorIGltcGxlbWVudGF0aW9uLgorVGhlIHZhbHVlIG9mIHZhbCwgb24gdGhlIG90aGVy
IGhhbmQsIHJlcHJlc2VudHMgZGlmZmVyZW50IHRoaW5ncyBpbiB0aGUgZW5jb2RlcgorIGFuZCBk
ZWNvZGVyLCBhbmQgaXMgbm90IGV4cGVjdGVkIHRvIG1hdGNoLgorPC90PgorCis8dD4KK1RoZSBk
ZWNvZGVyIGhhcyBubyBhbmFsb2cgZm9yIHJlbSBhbmQgZXh0LgorVGhlc2UgYXJlIHVzZWQgdG8g
cGVyZm9ybSBjYXJyeSBwcm9wYWdhdGlvbiBpbiB0aGUgcmVub3JtYWxpemF0aW9uIGxvb3AgYmVs
b3cuCitFYWNoIGl0ZXJhdGlvbiBvZiB0aGlzIGxvb3AgcHJvZHVjZXMgOSBiaXRzIG9mIG91dHB1
dCwgY29uc2lzdGluZyBvZiA4IGRhdGEKKyBiaXRzIGFuZCBhIGNhcnJ5IGZsYWcuCitUaGUgZW5j
b2RlciBjYW5ub3QgZGV0ZXJtaW5lIHRoZSBmaW5hbCB2YWx1ZSBvZiB0aGUgb3V0cHV0IGJ5dGVz
IHVudGlsIGl0CisgcHJvcGFnYXRlcyB0aGVzZSBjYXJyeSBmbGFncy4KK1RoZXJlZm9yZSB0aGUg
cmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGJ1ZmZlcnMgYSBzaW5nbGUgbm9uLXByb3BhZ2F0aW5n
IG91dHB1dAorIGJ5dGUgKGkuZS4sIG9uZSBsZXNzIHRoYW4gMjU1KSBpbiByZW0gYW5kIGtlZXBz
IGEgY291bnQgb2YgYWRkaXRpb25hbAorIHByb3BhZ2F0aW5nIChpLmUuLCAyNTUpIG91dHB1dCBi
eXRlcyBpbiBleHQuCitBbiBpbXBsZW1lbnRhdGlvbiBtYXkgY2hvb3NlIHRvIHVzZSBhbnkgbWF0
aGVtYXRpY2FsbHkgZXF1aXZhbGVudCBzY2hlbWUgdG8KKyBwZXJmb3JtIGNhcnJ5IHByb3BhZ2F0
aW9uLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImVuY29kaW5nLXN5bWJvbHMiIHRpdGxlPSJF
bmNvZGluZyBTeW1ib2xzIj4KKzx0PgorVGhlIG1haW4gZW5jb2RpbmcgZnVuY3Rpb24gaXMgZWNf
ZW5jb2RlKCkgKGVudGVuYy5jKSwgd2hpY2ggZW5jb2RlcyBzeW1ib2wgayBpbgorIHRoZSBjdXJy
ZW50IGNvbnRleHQgdXNpbmcgdGhlIHNhbWUgdGhyZWUtdHVwbGUgKGZsW2tdLCZuYnNwO2ZoW2td
LCZuYnNwO2Z0KQorIGFzIHRoZSBkZWNvZGVyIHRvIGRlc2NyaWJlIHRoZSByYW5nZSBvZiB0aGUg
c3ltYm9sIChzZWUKKyA8eHJlZiB0YXJnZXQ9InJhbmdlLWRlY29kZXIiLz4pLgorPC90PgorPHQ+
CitlY19lbmNvZGUoKSB1cGRhdGVzIHRoZSBzdGF0ZSBvZiB0aGUgZW5jb2RlciBhcyBmb2xsb3dz
LgorSWYgZmxba10gaXMgZ3JlYXRlciB0aGFuIHplcm8sIHRoZW4KKzxmaWd1cmUgYWxpZ249ImNl
bnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAg
ICAgIHJuZwordmFsID0gdmFsICsgcm5nIC0gLS0tICogKGZ0IC0gZmwpICwKKyAgICAgICAgICAg
ICAgICAgIGZ0CisKKyAgICAgIHJuZworcm5nID0gLS0tICogKGZoIC0gZmwpIC4KKyAgICAgIGZ0
CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK090aGVyd2lzZSwgdmFsIGlzIHVuY2hhbmdlZCBh
bmQKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKKyAgICAgICAgICAgIHJuZworcm5nID0gcm5nIC0gLS0tICogKGZoIC0gZmwpIC4KKyAg
ICAgICAgICAgIGZ0CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBkaXZpc2lvbnMgaGVy
ZSBhcmUgaW50ZWdlciBkaXZpc2lvbi4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJyYW5nZS1l
bmNvZGVyLXJlbm9ybSIgdGl0bGU9IlJlbm9ybWFsaXphdGlvbiI+Cis8dD4KK0FmdGVyIHRoaXMg
dXBkYXRlLCB0aGUgcmFuZ2UgaXMgbm9ybWFsaXplZCB1c2luZyBhIHByb2NlZHVyZSB2ZXJ5IHNp
bWlsYXIgdG8KKyB0aGF0IG9mIDx4cmVmIHRhcmdldD0icmFuZ2UtZGVjb2Rlci1yZW5vcm0iLz4s
IGltcGxlbWVudGVkIGJ5CisgZWNfZW5jX25vcm1hbGl6ZSgpIChlbnRlbmMuYykuCitUaGUgZm9s
bG93aW5nIHByb2Nlc3MgaXMgcmVwZWF0ZWQgdW50aWwgcm5nJm5ic3A7Jmd0OyZuYnNwOzIqKjIz
LgorRmlyc3QsIHRoZSB0b3AgOSBiaXRzIG9mIHZhbCwgKHZhbCZndDsmZ3Q7MjMpLCBhcmUgc2Vu
dCB0byB0aGUgY2FycnkgYnVmZmVyLAorIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9ImVjX2Vu
Y19jYXJyeV9vdXQiLz4uCitUaGVuLCB0aGUgZW5jb2RlciBzZXRzCis8ZmlndXJlIGFsaWduPSJj
ZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCit2YWwgPSAodmFsPDw4
KSAmIDB4N0ZGRkZGRkYgLAorCitybmcgPSBybmc8PDggLgorXV0+PC9hcnR3b3JrPgorPC9maWd1
cmU+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZWNfZW5jX2NhcnJ5X291
dCIKKyB0aXRsZT0iQ2FycnkgUHJvcGFnYXRpb24gYW5kIE91dHB1dCBCdWZmZXJpbmciPgorPHQ+
CitUaGUgZnVuY3Rpb24gZWNfZW5jX2NhcnJ5X291dCgpIChlbnRlbmMuYykgaW1wbGVtZW50cyBj
YXJyeSBwcm9wYWdhdGlvbiBhbmQKKyBvdXRwdXQgYnVmZmVyaW5nLgorSXQgdGFrZXMgYXMgaW5w
dXQgYSA5LWJpdCB2YWx1ZSwgYywgY29uc2lzdGluZyBvZiA4IGRhdGEgYml0cyBhbmQgYW4gYWRk
aXRpb25hbAorIGNhcnJ5IGJpdC4KK0lmIGMgaXMgZXF1YWwgdG8gdGhlIHZhbHVlIDI1NSwgdGhl
biBleHQgaXMgc2ltcGx5IGluY3JlbWVudGVkLCBhbmQgbm8gb3RoZXIKKyBzdGF0ZSB1cGRhdGVz
IGFyZSBwZXJmb3JtZWQuCitPdGhlcndpc2UsIGxldCBiJm5ic3A7PSZuYnNwOyhjJmd0OyZndDs4
KSBiZSB0aGUgY2FycnkgYml0LgorVGhlbiwKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0Pgor
SWYgdGhlIGJ1ZmZlcmVkIGJ5dGUgcmVtIGNvbnRhaW5zIGEgdmFsdWUgb3RoZXIgdGhhbiAtMSwg
dGhlIGVuY29kZXIgb3V0cHV0cworIHRoZSBieXRlIChyZW0mbmJzcDsrJm5ic3A7YikuCitPdGhl
cndpc2UsIGlmIHJlbSBpcyAtMSwgbm8gYnl0ZSBpcyBvdXRwdXQuCis8L3Q+Cis8dD4KK0lmIGV4
dCBpcyBub24temVybywgdGhlbiB0aGUgZW5jb2RlciBvdXRwdXRzIGV4dCBieXRlcy0tLWFsbCB3
aXRoIGEgdmFsdWUgb2YgMAorIGlmIGIgaXMgc2V0LCBvciAyNTUgaWYgYiBpcyB1bnNldC0tLWFu
ZCBzZXRzIGV4dCB0byAwLgorPC90PgorPHQ+CityZW0gaXMgc2V0IHRvIHRoZSA4IGRhdGEgYml0
czoKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKK3JlbSA9IGMgJiAyNTUgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8
L2xpc3Q+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9y
PSJlbmNvZGluZy1hbHRlcm5hdGUiIHRpdGxlPSJBbHRlcm5hdGUgRW5jb2RpbmcgTWV0aG9kcyI+
Cis8dD4KK1RoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gdXNlcyB0aHJlZSBhZGRpdGlvbmFs
IGVuY29kaW5nIG1ldGhvZHMgdGhhdCBhcmUKKyBleGFjdGx5IGVxdWl2YWxlbnQgdG8gdGhlIGFi
b3ZlLCBidXQgbWFrZSBhc3N1bXB0aW9ucyBhbmQgc2ltcGxpZmljYXRpb25zIHRoYXQKKyBhbGxv
dyBmb3IgYSBtb3JlIGVmZmljaWVudCBpbXBsZW1lbnRhdGlvbi4KKzwvdD4KKworPHNlY3Rpb24g
YW5jaG9yPSJlY19lbmNvZGVfYmluIiB0aXRsZT0iZWNfZW5jb2RlX2JpbigpIj4KKzx0PgorVGhl
IGZpcnN0IGlzIGVjX2VuY29kZV9iaW4oKSAoZW50ZW5jLmMpLCBkZWZpbmVkIHVzaW5nIHRoZSBw
YXJhbWV0ZXIgZnRiCisgaW5zdGVhZCBvZiBmdC4KK0l0IGlzIG1hdGhlbWF0aWNhbGx5IGVxdWl2
YWxlbnQgdG8gY2FsbGluZyBlY19lbmNvZGUoKSB3aXRoCisgZnQmbmJzcDs9Jm5ic3A7KDEmbHQ7
Jmx0O2Z0YiksIGJ1dCBhdm9pZHMgdXNpbmcgZGl2aXNpb24uCis8L3Q+Cis8L3NlY3Rpb24+CisK
KzxzZWN0aW9uIGFuY2hvcj0iZWNfZW5jX2JpdF9sb2dwIiB0aXRsZT0iZWNfZW5jX2JpdF9sb2dw
KCkiPgorPHQ+CitUaGUgbmV4dCBpcyBlY19lbmNfYml0X2xvZ3AoKSAoZW50ZW5jLmMpLCB3aGlj
aCBlbmNvZGVzIGEgc2luZ2xlIGJpbmFyeSBzeW1ib2wuCitUaGUgY29udGV4dCBpcyBkZXNjcmli
ZWQgYnkgYSBzaW5nbGUgcGFyYW1ldGVyLCBsb2dwLCB3aGljaCBpcyB0aGUgYWJzb2x1dGUKKyB2
YWx1ZSBvZiB0aGUgYmFzZS0yIGxvZ2FyaXRobSBvZiB0aGUgcHJvYmFiaWxpdHkgb2YgYSAiMSIu
CitJdCBpcyBtYXRoZW1hdGljYWxseSBlcXVpdmFsZW50IHRvIGNhbGxpbmcgZWNfZW5jb2RlKCkg
d2l0aCB0aGUgMy10dXBsZQorIChmbFtrXSZuYnNwOz0mbmJzcDswLCBmaFtrXSZuYnNwOz0mbmJz
cDsoMSZsdDsmbHQ7bG9ncCkmbmJzcDstJm5ic3A7MSwKKyBmdCZuYnNwOz0mbmJzcDsoMSZsdDsm
bHQ7bG9ncCkpIGlmIGsgaXMgMCBhbmQgd2l0aAorIChmbFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsm
bHQ7bG9ncCkmbmJzcDstJm5ic3A7MSwKKyBmaFtrXSZuYnNwOz0mbmJzcDtmdCZuYnNwOz0mbmJz
cDsoMSZsdDsmbHQ7bG9ncCkpIGlmIGsgaXMgMS4KK1RoZSBpbXBsZW1lbnRhdGlvbiByZXF1aXJl
cyBubyBtdWx0aXBsaWNhdGlvbnMgb3IgZGl2aXNpb25zLgorPC90PgorPC9zZWN0aW9uPgorCis8
c2VjdGlvbiBhbmNob3I9ImVjX2VuY19pY2RmIiB0aXRsZT0iZWNfZW5jX2ljZGYoKSI+Cis8dD4K
K1RoZSBsYXN0IGlzIGVjX2VuY19pY2RmKCkgKGVudGVuYy5jKSwgd2hpY2ggZW5jb2RlcyBhIHNp
bmdsZSBiaW5hcnkgc3ltYm9sIHdpdGgKKyBhIHRhYmxlLWJhc2VkIGNvbnRleHQgb2YgdXAgdG8g
OCBiaXRzLgorVGhpcyB1c2VzIHRoZSBzYW1lIGljZGYgdGFibGUgYXMgZWNfZGVjX2ljZGYoKSBm
cm9tCisgPHhyZWYgdGFyZ2V0PSJlY19kZWNfaWNkZiIvPi4KK1RoZSBmdW5jdGlvbiBpcyBtYXRo
ZW1hdGljYWxseSBlcXVpdmFsZW50IHRvIGNhbGxpbmcgZWNfZW5jb2RlKCkgd2l0aAorIGZsW2td
Jm5ic3A7PSZuYnNwOygxJmx0OyZsdDtmdGIpJm5ic3A7LSZuYnNwO2ljZGZbay0xXSAob3IgMCBp
ZgorIGsmbmJzcDs9PSZuYnNwOzApLCBmaFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7ZnRiKSZu
YnNwOy0mbmJzcDtpY2RmW2tdLCBhbmQKKyBmdCZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7ZnRiKS4K
K1RoaXMgb25seSBzYXZlcyBhIGZldyBhcml0aG1ldGljIG9wZXJhdGlvbnMgb3ZlciBlY19lbmNv
ZGVfYmluKCksIGJ1dCBhbGxvd3MKKyB0aGUgZW5jb2RlciB0byB1c2UgdGhlIHNhbWUgaWNkZiB0
YWJsZXMgYXMgdGhlIGRlY29kZXIuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gYW5jaG9yPSJlbmNvZGluZy1iaXRzIiB0aXRsZT0iRW5jb2RpbmcgUmF3IEJpdHMi
PgorPHQ+CitUaGUgcmF3IGJpdHMgdXNlZCBieSB0aGUgQ0VMVCBsYXllciBhcmUgcGFja2VkIGF0
IHRoZSBlbmQgb2YgdGhlIGJ1ZmZlciB1c2luZworIGVjX2VuY19iaXRzKCkgKGVudGVuYy5jKS4K
K0JlY2F1c2UgdGhlIHJhdyBiaXRzIG1heSBjb250aW51ZSBpbnRvIHRoZSBsYXN0IGJ5dGUgb3V0
cHV0IGJ5IHRoZSByYW5nZSBjb2RlcgorIGlmIHRoZXJlIGlzIHJvb20gaW4gdGhlIGxvdy1vcmRl
ciBiaXRzLCB0aGUgZW5jb2RlciBtdXN0IGJlIHByZXBhcmVkIHRvIG1lcmdlCisgdGhlc2UgdmFs
dWVzIGludG8gYSBzaW5nbGUgYnl0ZS4KK1RoZSBwcm9jZWR1cmUgaW4gPHhyZWYgdGFyZ2V0PSJl
bmNvZGVyLWZpbmFsaXppbmciLz4gZG9lcyB0aGlzIGluIGEgd2F5IHRoYXQKKyBlbnN1cmVzIGJv
dGggdGhlIHJhbmdlIGNvZGVkIGRhdGEgYW5kIHRoZSByYXcgYml0cyBjYW4gYmUgZGVjb2RlZAor
IHN1Y2Nlc3NmdWxseS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJlbmNv
ZGluZy1pbnRzIiB0aXRsZT0iRW5jb2RpbmcgVW5pZm9ybWx5IERpc3RyaWJ1dGVkIEludGVnZXJz
Ij4KKzx0PgorVGhlIGZ1bmN0aW9uIGVjX2VuY191aW50KCkgKGVudGVuYy5jKSBlbmNvZGVzIG9u
ZSBvZiBmdCBlcXVpcHJvYmFibGUgc3ltYm9scyBpbgorIHRoZSByYW5nZSAwIHRvIChmdCZuYnNw
Oy0mbmJzcDsxKSwgaW5jbHVzaXZlLCBlYWNoIHdpdGggYSBmcmVxdWVuY3kgb2YgMSwKKyB3aGVy
ZSBmdCBtYXkgYmUgYXMgbGFyZ2UgYXMgKDIqKjMyJm5ic3A7LSZuYnNwOzEpLgorTGlrZSB0aGUg
ZGVjb2RlciAoc2VlIDx4cmVmIHRhcmdldD0iZWNfZGVjX3VpbnQiLz4pLCBpdCBzcGxpdHMgdXAg
dGhlCisgdmFsdWUgaW50byBhIHJhbmdlIGNvZGVkIHN5bWJvbCByZXByZXNlbnRpbmcgdXAgdG8g
OCBvZiB0aGUgaGlnaCBiaXRzLCBhbmQsIGlmCisgbmVjZXNzYXJ5LCByYXcgYml0cyByZXByZXNl
bnRpbmcgdGhlIHJlbWFpbmRlciBvZiB0aGUgdmFsdWUuCis8L3Q+Cis8dD4KK2VjX2VuY191aW50
KCkgdGFrZXMgYSB0d28tdHVwbGUgKHQsJm5ic3A7ZnQpLCB3aGVyZSB0IGlzIHRoZSB2YWx1ZSB0
byBiZQorIGVuY29kZWQsIDAmbmJzcDsmbHQ7PSZuYnNwO3QmbmJzcDsmbHQ7Jm5ic3A7ZnQsIGFu
ZCBmdCBpcyBub3QgbmVjZXNzYXJpbHkgYQorIHBvd2VyIG9mIHR3by4KK0xldCBmdGImbmJzcDs9
Jm5ic3A7aWxvZyhmdCZuYnNwOy0mbmJzcDsxKSwgaS5lLiwgdGhlIG51bWJlciBvZiBiaXRzIHJl
cXVpcmVkCisgdG8gc3RvcmUgKGZ0Jm5ic3A7LSZuYnNwOzEpIGluIHR3bydzIGNvbXBsZW1lbnQg
bm90YXRpb24uCitJZiBmdGIgaXMgOCBvciBsZXNzLCB0aGVuIHQgaXMgZW5jb2RlZCBkaXJlY3Rs
eSB1c2luZyBlY19lbmNvZGUoKSB3aXRoIHRoZQorIHRocmVlLXR1cGxlICh0LCB0Jm5ic3A7KyZu
YnNwOzEsIGZ0KS4KKzwvdD4KKzx0PgorSWYgZnRiIGlzIGdyZWF0ZXIgdGhhbiA4LCB0aGVuIHRo
ZSB0b3AgOCBiaXRzIG9mIHQgYXJlIGVuY29kZWQgdXNpbmcgdGhlCisgdGhyZWUtdHVwbGUgKHQm
Z3Q7Jmd0OyhmdGImbmJzcDstJm5ic3A7OCksCisgKHQmZ3Q7Jmd0OyhmdGImbmJzcDstJm5ic3A7
OCkpJm5ic3A7KyZuYnNwOzEsCisgKChmdCZuYnNwOy0mbmJzcDsxKSZndDsmZ3Q7KGZ0YiZuYnNw
Oy0mbmJzcDs4KSkmbmJzcDsrJm5ic3A7MSksIGFuZCB0aGUKKyByZW1haW5pbmcgYml0cywKKyAo
dCZuYnNwOyZhbXA7Jm5ic3A7KCgxJmx0OyZsdDsoZnRiJm5ic3A7LSZuYnNwOzgpKSZuYnNwOy0m
bmJzcDsxKSwKKyBhcmUgZW5jb2RlZCBhcyByYXcgYml0cyB3aXRoIGVjX2VuY19iaXRzKCkuCis8
L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZW5jb2Rlci1maW5hbGl6aW5nIiB0
aXRsZT0iRmluYWxpemluZyB0aGUgU3RyZWFtIj4KKzx0PgorQWZ0ZXIgYWxsIHN5bWJvbHMgYXJl
IGVuY29kZWQsIHRoZSBzdHJlYW0gbXVzdCBiZSBmaW5hbGl6ZWQgYnkgb3V0cHV0dGluZyBhCisg
dmFsdWUgaW5zaWRlIHRoZSBjdXJyZW50IHJhbmdlLgorTGV0IGVuZCBiZSB0aGUgaW50ZWdlciBp
biB0aGUgaW50ZXJ2YWwgW3ZhbCwmbmJzcDt2YWwmbmJzcDsrJm5ic3A7cm5nKSB3aXRoIHRoZQor
IGxhcmdlc3QgbnVtYmVyIG9mIHRyYWlsaW5nIHplcm8gYml0cywgYiwgc3VjaCB0aGF0CisgKGVu
ZCZuYnNwOysmbmJzcDsoMSZsdDsmbHQ7YikmbmJzcDstJm5ic3A7MSkgaXMgYWxzbyBpbiB0aGUg
aW50ZXJ2YWwKKyBbdmFsLCZuYnNwO3ZhbCZuYnNwOysmbmJzcDtybmcpLgorVGhpcyBjaG9pY2Ug
b2YgZW5kIGFsbG93cyB0aGUgbWF4aW11bSBudW1iZXIgb2YgdHJhaWxpbmcgYml0cyB0byBiZSBz
ZXQgdG8KKyBhcmJpdHJhcnkgdmFsdWVzIHdoaWxlIHN0aWxsIGVuc3VyaW5nIHRoZSByYW5nZSBj
b2RlZCBwYXJ0IG9mIHRoZSBidWZmZXIgY2FuCisgYmUgZGVjb2RlZCBjb3JyZWN0bHkuCitUaGVu
LCB3aGlsZSBlbmQgaXMgbm90IHplcm8sIHRoZSB0b3AgOSBiaXRzIG9mIGVuZCwgaS5lLiwgKGVu
ZCZndDsmZ3Q7MjMpLCBhcmUKKyBwYXNzZWQgdG8gdGhlIGNhcnJ5IGJ1ZmZlciBpbiBhY2NvcmRh
bmNlIHdpdGggdGhlIHByb2NlZHVyZSBpbgorIDx4cmVmIHRhcmdldD0iZWNfZW5jX2NhcnJ5X291
dCIvPiwgYW5kIGVuZCBpcyB1cGRhdGVkIHZpYQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxh
cnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworZW5kID0gKGVuZDw8OCkgJiAweDdGRkZG
RkZGIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorRmluYWxseSwgaWYgdGhlIGJ1ZmZlcmVk
IG91dHB1dCBieXRlLCByZW0sIGlzIG5laXRoZXIgemVybyBub3IgdGhlIHNwZWNpYWwKKyB2YWx1
ZSAtMSwgb3IgdGhlIGNhcnJ5IGNvdW50LCBleHQsIGlzIGdyZWF0ZXIgdGhhbiB6ZXJvLCB0aGVu
IDkgemVybyBiaXRzIGFyZQorIHNlbnQgdG8gdGhlIGNhcnJ5IGJ1ZmZlciB0byBmbHVzaCBpdCB0
byB0aGUgb3V0cHV0IGJ1ZmZlci4KK1doZW4gb3V0cHV0dGluZyB0aGUgZmluYWwgYnl0ZSBmcm9t
IHRoZSByYW5nZSBjb2RlciwgaWYgaXQgd291bGQgb3ZlcmxhcCBhbnkKKyByYXcgYml0cyBhbHJl
YWR5IHBhY2tlZCBpbnRvIHRoZSBlbmQgb2YgdGhlIG91dHB1dCBidWZmZXIsIHRoZXkgc2hvdWxk
IGJlIE9SZWQKKyBpbnRvIHRoZSBzYW1lIGJ5dGUuCitUaGUgYml0IGFsbG9jYXRpb24gcm91dGlu
ZXMgaW4gdGhlIENFTFQgbGF5ZXIgc2hvdWxkIGVuc3VyZSB0aGF0IHRoaXMgY2FuIGJlCisgZG9u
ZSB3aXRob3V0IGNvcnJ1cHRpbmcgdGhlIHJhbmdlIGNvZGVyIGRhdGEgc28gbG9uZyBhcyBlbmQg
aXMgY2hvc2VuIGFzCisgZGVzY3JpYmVkIGFib3ZlLgorSWYgdGhlcmUgaXMgYW55IHNwYWNlIGJl
dHdlZW4gdGhlIGVuZCBvZiB0aGUgcmFuZ2UgY29kZXIgZGF0YSBhbmQgdGhlIGVuZCBvZgorIHRo
ZSByYXcgYml0cywgaXQgaXMgcGFkZGVkIHdpdGggemVybyBiaXRzLgorVGhpcyBlbnRpcmUgcHJv
Y2VzcyBpcyBpbXBsZW1lbnRlZCBieSBlY19lbmNfZG9uZSgpIChlbnRlbmMuYykuCis8L3Q+Cis8
L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZW5jb2Rlci10ZWxsIiB0aXRsZT0iQ3VycmVu
dCBCaXQgVXNhZ2UiPgorPHQ+CisgICBUaGUgYml0IGFsbG9jYXRpb24gcm91dGluZXMgaW4gT3B1
cyBuZWVkIHRvIGJlIGFibGUgdG8gZGV0ZXJtaW5lIGEKKyAgIGNvbnNlcnZhdGl2ZSB1cHBlciBi
b3VuZCBvbiB0aGUgbnVtYmVyIG9mIGJpdHMgdGhhdCBoYXZlIGJlZW4gdXNlZAorICAgdG8gZW5j
b2RlIHRoZSBjdXJyZW50IGZyYW1lIHRodXMgZmFyLiBUaGlzIGRyaXZlcyBhbGxvY2F0aW9uCisg
ICBkZWNpc2lvbnMgYW5kIGVuc3VyZXMgdGhhdCB0aGUgcmFuZ2UgY29kZXIgYW5kIHJhdyBiaXRz
IHdpbGwgbm90CisgICBvdmVyZmxvdyB0aGUgb3V0cHV0IGJ1ZmZlci4gVGhpcyBpcyBjb21wdXRl
ZCBpbiB0aGUKKyAgIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiB0byB3aG9sZS1iaXQgcHJlY2lz
aW9uIGJ5CisgICB0aGUgZnVuY3Rpb24gZWNfdGVsbCgpIChlbnRjb2RlLmgpIGFuZCB0byBmcmFj
dGlvbmFsIDEvOHRoIGJpdAorICAgcHJlY2lzaW9uIGJ5IHRoZSBmdW5jdGlvbiBlY190ZWxsX2Zy
YWMoKSAoZW50Y29kZS5jKS4KKyAgIExpa2UgYWxsIG9wZXJhdGlvbnMgaW4gdGhlIHJhbmdlIGNv
ZGVyLCBpdCBtdXN0IGJlIGltcGxlbWVudGVkIGluIGEKKyAgIGJpdC1leGFjdCBtYW5uZXIsIGFu
ZCBtdXN0IHByb2R1Y2UgZXhhY3RseSB0aGUgc2FtZSB2YWx1ZSByZXR1cm5lZCBieQorICAgdGhl
IHNhbWUgZnVuY3Rpb25zIGluIHRoZSBkZWNvZGVyIGFmdGVyIGRlY29kaW5nIHRoZSBzYW1lIHN5
bWJvbHMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9
J1NJTEsgRW5jb2Rlcic+CisgIDx0PgorICAgIEluIG1hbnkgcmVzcGVjdHMgdGhlIFNJTEsgZW5j
b2RlciBtaXJyb3JzIHRoZSBTSUxLIGRlY29kZXIgZGVzY3JpYmVkCisgICAgaW4gPHhyZWYgdGFy
Z2V0PSdzaWxrX2RlY29kZXJfb3V0bGluZScvPi4KKyAgICBEZXRhaWxzIHN1Y2ggYXMgdGhlIHF1
YW50aXphdGlvbiBhbmQgcmFuZ2UgY29kZXIgdGFibGVzIGNhbiBiZSBmb3VuZAorICAgIHRoZXJl
LCB3aGlsZSB0aGlzIHNlY3Rpb24gZGVzY3JpYmVzIHRoZSBoaWdoLWxldmVsIGRlc2lnbiBjaG9p
Y2VzIHRoYXQKKyAgICB3ZXJlIG1hZGUuCisgICAgVGhlIGRpYWdyYW0gYmVsb3cgc2hvd3MgdGhl
IGJhc2ljIG1vZHVsZXMgb2YgdGhlIFNJTEsgZW5jb2Rlci4KKzxmaWd1cmUgYWxpZ249ImNlbnRl
ciIgYW5jaG9yPSJzaWxrX2VuY29kZXJfZmlndXJlIiB0aXRsZT0iU0lMSyBFbmNvZGVyIj4KKzxh
cnR3b3JrPgorPCFbQ0RBVEFbCisgICAgICAgKy0tLS0tLS0tLS0rICAgICstLS0tLS0tLSsgICAg
Ky0tLS0tLS0tLSsKKyAgICAgICB8ICBTYW1wbGUgIHwgICAgfCBTdGVyZW8gfCAgICB8ICBTSUxL
ICAgfAorLS0tLS0tPnwgICBSYXRlICAgfC0tLT58IE1peGluZyB8LS0tPnwgIENvcmUgICB8LS0t
LS0tLS0tLT4KK0lucHV0ICB8Q29udmVyc2lvbnwgICAgfCAgICAgICAgfCAgICB8IEVuY29kZXIg
fCAgQml0c3RyZWFtCisgICAgICAgKy0tLS0tLS0tLS0rICAgICstLS0tLS0tLSsgICAgKy0tLS0t
LS0tLSsKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+CisKKzxzZWN0aW9uIHRpdGxl
PSdTYW1wbGUgUmF0ZSBDb252ZXJzaW9uJz4KKzx0PgorVGhlIGlucHV0IHNpZ25hbCdzIHNhbXBs
aW5nIHJhdGUgaXMgYWRqdXN0ZWQgYnkgYSBzYW1wbGUgcmF0ZSBjb252ZXJzaW9uCittb2R1bGUg
c28gdGhhdCBpdCBtYXRjaGVzIHRoZSBTSUxLIGludGVybmFsIHNhbXBsaW5nIHJhdGUuCitUaGUg
aW5wdXQgdG8gdGhlIHNhbXBsZSByYXRlIGNvbnZlcnRlciBpcyBkZWxheWVkIGJ5IGEgbnVtYmVy
IG9mIHNhbXBsZXMKK2RlcGVuZGluZyBvbiB0aGUgc2FtcGxlIHJhdGUgcmF0aW8sIHN1Y2ggdGhh
dCB0aGUgb3ZlcmFsbCBkZWxheSBpcyBjb25zdGFudAorZm9yIGFsbCBpbnB1dCBhbmQgb3V0cHV0
IHNhbXBsZSByYXRlcy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9J1N0ZXJl
byBNaXhpbmcnPgorPHQ+CitUaGUgc3RlcmVvIG1peGVyIGlzIG9ubHkgdXNlZCBmb3Igc3RlcmVv
IGlucHV0IHNpZ25hbHMuCitJdCBjb252ZXJ0cyBhIHN0ZXJlbyBsZWZ0L3JpZ2h0IHNpZ25hbCBp
bnRvIGFuIGFkYXB0aXZlCittaWQvc2lkZSByZXByZXNlbnRhdGlvbi4KK1RoZSBmaXJzdCBzdGVw
IGlzIHRvIGNvbXB1dGUgbm9uLWFkYXB0aXZlIG1pZC9zaWRlIHNpZ25hbHMKK2FzIGhhbGYgdGhl
IHN1bSBhbmQgZGlmZmVyZW5jZSBiZXR3ZWVuIGxlZnQgYW5kIHJpZ2h0IHNpZ25hbHMuCitUaGUg
c2lkZSBzaWduYWwgaXMgdGhlbiBtaW5pbWl6ZWQgaW4gZW5lcmd5IGJ5IHN1YnRyYWN0aW5nIGEK
K3ByZWRpY3Rpb24gb2YgaXQgYmFzZWQgb24gdGhlIG1pZCBzaWduYWwuCitUaGlzIHByZWRpY3Rp
b24gd29ya3Mgd2VsbCB3aGVuIHRoZSBsZWZ0IGFuZCByaWdodCBzaWduYWxzCitleGhpYml0IGxp
bmVhciBkZXBlbmRlbmN5LCBmb3IgaW5zdGFuY2UgZm9yIGFuIGFtcGxpdHVkZS1wYW5uZWQKK2lu
cHV0IHNpZ25hbC4KK0xpa2UgaW4gdGhlIGRlY29kZXIsIHRoZSBwcmVkaWN0aW9uIGNvZWZmaWNp
ZW50cyBhcmUgbGluZWFybHkKK2ludGVycG9sYXRlZCBkdXJpbmcgdGhlIGZpcnN0IDgmbmJzcDtt
cyBvZiB0aGUgZnJhbWUuCisgIFRoZSBtaWQgc2lnbmFsIGlzIGFsd2F5cyBlbmNvZGVkLCB3aGVy
ZWFzIHRoZSByZXNpZHVhbAorICBzaWRlIHNpZ25hbCBpcyBvbmx5IGVuY29kZWQgaWYgaXQgaGFz
IHN1ZmZpY2llbnQKKyAgZW5lcmd5IGNvbXBhcmVkIHRvIHRoZSBtaWQgc2lnbmFsJ3MgZW5lcmd5
LgorICBJZiBpdCBoYXMgbm90LAorICB0aGUgIm1pZF9vbmx5X2ZsYWciIGlzIHNldCB3aXRob3V0
IGVuY29kaW5nIHRoZSBzaWRlIHNpZ25hbC4KKzwvdD4KKzx0PgorVGhlIHByZWRpY3RvciBjb2Vm
ZmljaWVudHMgYXJlIGNvZGVkIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlcgordGhlIHNpZGUgc2lnbmFs
IGlzIGVuY29kZWQuCitGb3IgZWFjaCBmcmFtZSwgdHdvIHByZWRpY3RvciBjb2VmZmljaWVudHMg
YXJlIGNvbXB1dGVkLCBvbmUKK3RoYXQgcHJlZGljdHMgYmV0d2VlbiBsb3ctcGFzc2VkIG1pZCBh
bmQgc2lkZSBjaGFubmVscywgYW5kCitvbmUgdGhhdCBwcmVkaWN0cyBiZXR3ZWVuIGhpZ2gtcGFz
c2VkIG1pZCBhbmQgc2lkZSBjaGFubmVscy4KK1RoZSBsb3ctcGFzcyBmaWx0ZXIgaXMgYSBzaW1w
bGUgdGhyZWUtdGFwIGZpbHRlcgorYW5kIGNyZWF0ZXMgYSBkZWxheSBvZiBvbmUgc2FtcGxlLgor
VGhlIGhpZ2gtcGFzcyBmaWx0ZXJlZCBzaWduYWwgaXMgdGhlIGRpZmZlcmVuY2UgYmV0d2Vlbgor
dGhlIG1pZCBzaWduYWwgZGVsYXllZCBieSBvbmUgc2FtcGxlIGFuZCB0aGUgbG93LXBhc3NlZAor
c2lnbmFsLiAgSW5zdGVhZCBvZiBleHBsaWNpdGx5IGNvbXB1dGluZyB0aGUgaGlnaC1wYXNzZWQK
K3NpZ25hbCwgaXQgaXMgY29tcHV0YXRpb25hbGx5IG1vcmUgZWZmaWNpZW50IHRvIHRyYW5zZm9y
bQordGhlIHByZWRpY3Rpb24gY29lZmZpY2llbnRzIGJlZm9yZSBhcHBseWluZyB0aGVtIHRvIHRo
ZQorZmlsdGVyZWQgbWlkIHNpZ25hbCwgYXMgZm9sbG93cworPGZpZ3VyZSBhbGlnbj0iY2VudGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCitwcmVkKG4pID0gTFAobikg
KiB3MCArIEhQKG4pICogdzEKKyAgICAgICAgPSBMUChuKSAqIHcwICsgKG1pZChuLTEpIC0gTFAo
bikpICogdzEKKyAgICAgICAgPSBMUChuKSAqICh3MCAtIHcxKSArIG1pZChuLTEpICogdzEKK11d
PgorPC9hcnR3b3JrPgorPC9maWd1cmU+Cit3aGVyZSB3MCBhbmQgdzEgYXJlIHRoZSBsb3ctcGFz
cyBhbmQgaGlnaC1wYXNzIHByZWRpY3Rpb24KK2NvZWZmaWNpZW50cywgbWlkKG4tMSkgaXMgdGhl
IG1pZCBzaWduYWwgZGVsYXllZCBieSBvbmUgc2FtcGxlLAorTFAobikgYW5kIEhQKG4pIGFyZSB0
aGUgbG93LXBhc3NlZCBhbmQgaGlnaC1wYXNzZWQKK3NpZ25hbHMgYW5kIHByZWQobikgaXMgdGhl
IHByZWRpY3Rpb24gc2lnbmFsIHRoYXQgaXMgc3VidHJhY3RlZAorZnJvbSB0aGUgc2lkZSBzaWdu
YWwuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSdTSUxLIENvcmUgRW5jb2Rl
cic+Cis8dD4KK1doYXQgZm9sbG93cyBpcyBhIGRlc2NyaXB0aW9uIG9mIHRoZSBjb3JlIGVuY29k
ZXIgYW5kIGl0cyBjb21wb25lbnRzLgorRm9yIHNpbXBsaWNpdHksIHRoZSBjb3JlIGVuY29kZXIg
aXMgcmVmZXJyZWQgdG8gc2ltcGx5IGFzIHRoZSBlbmNvZGVyIGluCit0aGUgcmVtYWluZGVyIG9m
IHRoaXMgc2VjdGlvbi4gQW4gb3ZlcnZpZXcgb2YgdGhlIGVuY29kZXIgaXMgZ2l2ZW4gaW4KKzx4
cmVmIHRhcmdldD0iZW5jb2Rlcl9maWd1cmUiIC8+LgorPC90PgorPGZpZ3VyZSBhbGlnbj0iY2Vu
dGVyIiBhbmNob3I9ImVuY29kZXJfZmlndXJlIiB0aXRsZT0iU0lMSyBDb3JlIEVuY29kZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArLS0tKworICAgICAgICAg
ICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPnwgICB8
CisgICAgICstLS0tLS0tLS0rICAgICAgICAgIHwgICAgICArLS0tLS0tLS0tKyAgICAgICAgICAg
ICAgICAgfCAgIHwKKyAgICAgfFZvaWNlICAgIHwgICAgICAgICAgfCAgICAgIHxMVFAgICAgICB8
MTIgICAgICAgICAgICAgICB8ICAgfAorICstLT58QWN0aXZpdHkgfC0tKyAgICAgICArLS0tLS0+
fFNjYWxpbmcgIHwtLS0tLS0tLS0tLSstLS0tPnwgICB8CisgfCAgIHxEZXRlY3RvciB8MyB8ICAg
ICAgIHwgICAgICB8Q29udHJvbCAgfDwtLSsgICAgICAgfCAgICAgfCAgIHwKKyB8ICAgKy0tLS0t
LS0tLSsgIHwgICAgICAgfCAgICAgICstLS0tLS0tLS0rICAgfCAgICAgICB8ICAgICB8ICAgfAor
IHwgICAgICAgICAgICAgICAgfCAgICAgICB8ICAgICAgKy0tLS0tLS0tLSsgICB8ICAgICAgIHwg
ICAgIHwgICB8CisgfCAgICAgICAgICAgICAgICB8ICAgICAgIHwgICAgICB8R2FpbnMgICAgfCAg
IHwgICAgICAgfCAgICAgfCAgIHwKKyB8ICAgICAgICAgICAgICAgIHwgICAgICAgfCAgKy0tPnxQ
cm9jZXNzb3J8LS0tfC0tLSstLS18LS0tLT58IFIgfAorIHwgICAgICAgICAgICAgICAgfCAgICAg
ICB8ICB8ICAgfCAgICAgICAgIHwxMSB8ICAgfCAgIHwgICAgIHwgYSB8CisgfCAgICAgICAgICAg
ICAgIFwvICAgICAgIHwgIHwgICArLS0tLS0tLS0tKyAgIHwgICB8ICAgfCAgICAgfCBuIHwKKyB8
ICAgICAgICAgICstLS0tLS0tLS0rICAgfCAgfCAgICstLS0tLS0tLS0rICAgfCAgIHwgICB8ICAg
ICB8IGcgfAorIHwgICAgICAgICAgfFBpdGNoICAgIHwgICB8ICB8ICAgfExTRiAgICAgIHwgICB8
ICAgfCAgIHwgICAgIHwgZSB8CisgfCAgICAgICArLT58QW5hbHlzaXMgfC0tLSsgIHwgICB8UXVh
bnRpemVyfC0tLXwtLS18LS0tfC0tLS0+fCAgIHwKKyB8ICAgICAgIHwgIHwgICAgICAgICB8NCAg
fCAgfCAgIHwgICAgICAgICB8OCAgfCAgIHwgICB8ICAgICB8IEUgfC0tPgorIHwgICAgICAgfCAg
Ky0tLS0tLS0tLSsgICB8ICB8ICAgKy0tLS0tLS0tLSsgICB8ICAgfCAgIHwgICAgIHwgbiB8IDIK
KyB8ICAgICAgIHwgICAgICAgICAgICAgICAgfCAgfCAgICA5L1wgIDEwfCAgICAgfCAgIHwgICB8
ICAgICB8IGMgfAorIHwgICAgICAgfCAgICAgICAgICAgICAgICB8ICB8ICAgICB8ICAgIFwvICAg
ICB8ICAgfCAgIHwgICAgIHwgbyB8CisgfCAgICAgICB8ICArLS0tLS0tLS0tKyAgIHwgIHwgICAr
LS0tLS0tLS0tLSsgIHwgICB8ICAgfCAgICAgfCBkIHwKKyB8ICAgICAgIHwgIHxOb2lzZSAgICB8
ICAgKy0tfC0tPnxQcmVkaWN0aW9ufC0tKy0tLXwtLS18LS0tLT58IGUgfAorIHwgICAgICAgKy0+
fFNoYXBpbmcgIHwtLS18LS0rICAgfEFuYWx5c2lzICB8NyB8ICAgfCAgIHwgICAgIHwgciB8Cisg
fCAgICAgICB8ICB8QW5hbHlzaXMgfDUgIHwgIHwgICB8ICAgICAgICAgIHwgIHwgICB8ICAgfCAg
ICAgfCAgIHwKKyB8ICAgICAgIHwgICstLS0tLS0tLS0rICAgfCAgfCAgICstLS0tLS0tLS0tKyAg
fCAgIHwgICB8ICAgICB8ICAgfAorIHwgICAgICAgfCAgICAgICAgICAgICAgICB8ICB8ICAgICAg
ICAvXCAgICAgICB8ICAgfCAgIHwgICAgIHwgICB8CisgfCAgICAgICB8ICAgICArLS0tLS0tLS0t
LXwtLXwtLS0tLS0tLSsgICAgICAgIHwgICB8ICAgfCAgICAgfCAgIHwKKyB8ICAgICAgIHwgICAg
IHwgICAgICAgICBcLyAgXC8gICAgICAgICAgICAgICBcLyAgXC8gIFwvICAgICB8ICAgfAorIHwg
ICAgICAgfCAgICAgfCAgICAgICArLS0tLS0tLS0tKyAgICAgICAgICArLS0tLS0tLS0tLS0tKyAg
IHwgICB8CisgfCAgICAgICB8ICAgICB8ICAgICAgIHwgICAgICAgICB8ICAgICAgICAgIHxOb2lz
ZSAgICAgICB8ICAgfCAgIHwKKy0rLS0tLS0tLSstLS0tLSstLS0tLS0+fFByZWZpbHRlcnwtLS0t
LS0tLS0+fFNoYXBpbmcgICAgIHwtLT58ICAgfAorMSAgICAgICAgICAgICAgICAgICAgICB8ICAg
ICAgICAgfCA2ICAgICAgICB8UXVhbnRpemF0aW9ufDEzIHwgICB8CisgICAgICAgICAgICAgICAg
ICAgICAgICstLS0tLS0tLS0rICAgICAgICAgICstLS0tLS0tLS0tLS0rICAgKy0tLSsKKworMTog
IElucHV0IHNwZWVjaCBzaWduYWwKKzI6ICBSYW5nZSBlbmNvZGVkIGJpdHN0cmVhbQorMzogIFZv
aWNlIGFjdGl2aXR5IGVzdGltYXRlCis0OiAgUGl0Y2ggbGFncyAocGVyIDUgbXMpIGFuZCB2b2lj
aW5nIGRlY2lzaW9uIChwZXIgMjAgbXMpCis1OiAgTm9pc2Ugc2hhcGluZyBxdWFudGl6YXRpb24g
Y29lZmZpY2llbnRzCisgIC0gU2hvcnQgdGVybSBzeW50aGVzaXMgYW5kIGFuYWx5c2lzCisgICAg
bm9pc2Ugc2hhcGluZyBjb2VmZmljaWVudHMgKHBlciA1IG1zKQorICAtIExvbmcgdGVybSBzeW50
aGVzaXMgYW5kIGFuYWx5c2lzIG5vaXNlCisgICAgc2hhcGluZyBjb2VmZmljaWVudHMgKHBlciA1
IG1zIGFuZCBmb3Igdm9pY2VkIHNwZWVjaCBvbmx5KQorICAtIE5vaXNlIHNoYXBpbmcgdGlsdCAo
cGVyIDUgbXMpCisgIC0gUXVhbnRpemVyIGdhaW4vc3RlcCBzaXplIChwZXIgNSBtcykKKzY6ICBJ
bnB1dCBzaWduYWwgZmlsdGVyZWQgd2l0aCBhbmFseXNpcyBub2lzZSBzaGFwaW5nIGZpbHRlcnMK
Kzc6ICBTaG9ydCBhbmQgbG9uZyB0ZXJtIHByZWRpY3Rpb24gY29lZmZpY2llbnRzCisgICAgTFRQ
IChwZXIgNSBtcykgYW5kIExQQyAocGVyIDIwIG1zKQorODogIExTRiBxdWFudGl6YXRpb24gaW5k
aWNlcworOTogIExTRiBjb2VmZmljaWVudHMKKzEwOiBRdWFudGl6ZWQgTFNGIGNvZWZmaWNpZW50
cworMTE6IFByb2Nlc3NlZCBnYWlucywgYW5kIHN5bnRoZXNpcyBub2lzZSBzaGFwZSBjb2VmZmlj
aWVudHMKKzEyOiBMVFAgc3RhdGUgc2NhbGluZyBjb2VmZmljaWVudC4gQ29udHJvbGxpbmcgZXJy
b3IgcHJvcGFnYXRpb24KKyAgIC8gcHJlZGljdGlvbiBnYWluIHRyYWRlLW9mZgorMTM6IFF1YW50
aXplZCBzaWduYWwKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzxzZWN0aW9uIHRpdGxl
PSdWb2ljZSBBY3Rpdml0eSBEZXRlY3Rpb24nPgorPHQ+CitUaGUgaW5wdXQgc2lnbmFsIGlzIHBy
b2Nlc3NlZCBieSBhIFZvaWNlIEFjdGl2aXR5IERldGVjdG9yIChWQUQpIHRvIHByb2R1Y2UKK2Eg
bWVhc3VyZSBvZiB2b2ljZSBhY3Rpdml0eSwgc3BlY3RyYWwgdGlsdCwgYW5kIHNpZ25hbC10by1u
b2lzZSBlc3RpbWF0ZXMgZm9yCitlYWNoIGZyYW1lLiBUaGUgVkFEIHVzZXMgYSBzZXF1ZW5jZSBv
ZiBoYWxmLWJhbmQgZmlsdGVyYmFua3MgdG8gc3BsaXQgdGhlCitzaWduYWwgaW50byBmb3VyIHN1
YmJhbmRzOiAwLi4uRnMvMTYsIEZzLzE2Li4uRnMvOCwgRnMvOC4uLkZzLzQsIGFuZAorRnMvNC4u
LkZzLzIsIHdoZXJlIEZzIGlzIHRoZSBzYW1wbGluZyBmcmVxdWVuY3kgKDgsIDEyLCAxNiwgb3Ig
MjQmbmJzcDtrSHopLgorVGhlIGxvd2VzdCBzdWJiYW5kLCBmcm9tIDAgLSBGcy8xNiwgaXMgaGln
aC1wYXNzIGZpbHRlcmVkIHdpdGggYSBmaXJzdC1vcmRlcgorbW92aW5nIGF2ZXJhZ2UgKE1BKSBm
aWx0ZXIgKHdpdGggdHJhbnNmZXIgZnVuY3Rpb24gSCh6KSA9IDEteioqKC0xKSkgdG8KK3JlZHVj
ZSB0aGUgZW5lcmd5IGF0IHRoZSBsb3dlc3QgZnJlcXVlbmNpZXMuIEZvciBlYWNoIGZyYW1lLCB0
aGUgc2lnbmFsCitlbmVyZ3kgcGVyIHN1YmJhbmQgaXMgY29tcHV0ZWQuCitJbiBlYWNoIHN1YmJh
bmQsIGEgbm9pc2UgbGV2ZWwgZXN0aW1hdG9yIHRyYWNrcyB0aGUgYmFja2dyb3VuZCBub2lzZSBs
ZXZlbAorYW5kIGEgU2lnbmFsLXRvLU5vaXNlIFJhdGlvIChTTlIpIHZhbHVlIGlzIGNvbXB1dGVk
IGFzIHRoZSBsb2dhcml0aG0gb2YgdGhlCityYXRpbyBvZiBlbmVyZ3kgdG8gbm9pc2UgbGV2ZWwu
CitVc2luZyB0aGVzZSBpbnRlcm1lZGlhdGUgdmFyaWFibGVzLCB0aGUgZm9sbG93aW5nIHBhcmFt
ZXRlcnMgYXJlIGNhbGN1bGF0ZWQKK2ZvciB1c2UgaW4gb3RoZXIgU0lMSyBtb2R1bGVzOgorPGxp
c3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitBdmVyYWdlIFNOUi4gVGhlIGF2ZXJhZ2Ugb2YgdGhl
IHN1YmJhbmQgU05SIHZhbHVlcy4KKzwvdD4KKworPHQ+CitTbW9vdGhlZCBzdWJiYW5kIFNOUnMu
IFRlbXBvcmFsbHkgc21vb3RoZWQgc3ViYmFuZCBTTlIgdmFsdWVzLgorPC90PgorCis8dD4KK1Nw
ZWVjaCBhY3Rpdml0eSBsZXZlbC4gQmFzZWQgb24gdGhlIGF2ZXJhZ2UgU05SIGFuZCBhIHdlaWdo
dGVkIGF2ZXJhZ2Ugb2YgdGhlCitzdWJiYW5kIGVuZXJnaWVzLgorPC90PgorCis8dD4KK1NwZWN0
cmFsIHRpbHQuIEEgd2VpZ2h0ZWQgYXZlcmFnZSBvZiB0aGUgc3ViYmFuZCBTTlJzLCB3aXRoIHBv
c2l0aXZlIHdlaWdodHMKK2ZvciB0aGUgbG93IHN1YmJhbmRzIGFuZCBuZWdhdGl2ZSB3ZWlnaHRz
IGZvciB0aGUgaGlnaCBzdWJiYW5kcy4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKzwvc2VjdGlvbj4K
KworPHNlY3Rpb24gdGl0bGU9J1BpdGNoIEFuYWx5c2lzJyBhbmNob3I9J3BpdGNoX2VzdGltYXRv
cl9vdmVydmlld19zZWN0aW9uJz4KKzx0PgorVGhlIGlucHV0IHNpZ25hbCBpcyBwcm9jZXNzZWQg
YnkgdGhlIG9wZW4gbG9vcCBwaXRjaCBlc3RpbWF0b3Igc2hvd24gaW4KKzx4cmVmIHRhcmdldD0n
cGl0Y2hfZXN0aW1hdG9yX2ZpZ3VyZScgLz4uCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiIGFuY2hv
cj0icGl0Y2hfZXN0aW1hdG9yX2ZpZ3VyZSIKKyB0aXRsZT0iQmxvY2sgZGlhZ3JhbSBvZiB0aGUg
cGl0Y2ggZXN0aW1hdG9yIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0rICArLS0tLS0tLS0tLSsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwyIHggRG93bnwgIHxUaW1lLSAgICAg
fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0+fHNhbXBsaW5nfC0+fENvcnJlbGF0
b3J8ICAgICB8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICB8ICAgICAgICB8ICB8
ICAgICAgICAgIHwgICAgIHw0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICArLS0t
LS0tLS0rICArLS0tLS0tLS0tLSsgICAgXC8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAgICAgICAgICAgICAgICAgIHwgMiAgICArLS0tLS0tLSsKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgIHwgICstLT58U3BlZWNoIHw1CisgICAg
Ky0tLS0tLS0tLSsgICAgKy0tLS0tLS0tKyB8ICAgICAgICAgICAgICAgICAgIFwvICB8ICAgfFR5
cGUgICB8LT4KKyAgICB8TFBDICAgICAgfCAgICB8RG93biAgICB8IHwgICAgICAgICAgICAgICst
LS0tLS0tLS0tKyB8ICAgICAgIHwKKyArLT58QW5hbHlzaXMgfCArLT58c2FtcGxlICB8LSstLS0t
LS0tLS0tLS0tPnxUaW1lLSAgICAgfCArLS0tLS0tLSsKKyB8ICB8ICAgICAgICAgfCB8ICB8dG8g
OCBrSHp8ICAgICAgICAgICAgICAgIHxDb3JyZWxhdG9yfC0tLS0tLS0tLS0tPgorIHwgICstLS0t
LS0tLS0rIHwgICstLS0tLS0tLSsgICAgICAgICAgICAgICAgfF9fX19fX19fX198ICAgICAgICAg
IDYKKyB8ICAgICAgIHwgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwz
CisgfCAgICAgIFwvICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwvCisg
fCAgKy0tLS0tLS0tLSsgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLSsK
KyB8ICB8V2hpdGVuaW5nfCB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxUaW1lLSAgICAg
fAorLSstPnxGaWx0ZXIgICB8LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0+fENvcnJlbGF0
b3J8LS0tLS0tLS0tLS0+CisxICAgfCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgICAgICAgIHwgICAgICAgICAgNworICAgICstLS0tLS0tLS0rICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0rCisKKzE6IElucHV0IHNpZ25hbAorMjogTGFn
IGNhbmRpZGF0ZXMgZnJvbSBzdGFnZSAxCiszOiBMYWcgY2FuZGlkYXRlcyBmcm9tIHN0YWdlIDIK
KzQ6IENvcnJlbGF0aW9uIHRocmVzaG9sZAorNTogVm9pY2VkL3Vudm9pY2VkIGZsYWcKKzY6IFBp
dGNoIGNvcnJlbGF0aW9uCis3OiBQaXRjaCBsYWdzCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJl
PgorVGhlIHBpdGNoIGFuYWx5c2lzIGZpbmRzIGEgYmluYXJ5IHZvaWNlZC91bnZvaWNlZCBjbGFz
c2lmaWNhdGlvbiwgYW5kLCBmb3IKK2ZyYW1lcyBjbGFzc2lmaWVkIGFzIHZvaWNlZCwgZm91ciBw
aXRjaCBsYWdzIHBlciBmcmFtZSAtIG9uZSBmb3IgZWFjaAorNSZuYnNwO21zIHN1YmZyYW1lIC0g
YW5kIGEgcGl0Y2ggY29ycmVsYXRpb24gaW5kaWNhdGluZyB0aGUgcGVyaW9kaWNpdHkgb2YKK3Ro
ZSBzaWduYWwuCitUaGUgaW5wdXQgaXMgZmlyc3Qgd2hpdGVuZWQgdXNpbmcgYSBMaW5lYXIgUHJl
ZGljdGlvbiAoTFApIHdoaXRlbmluZyBmaWx0ZXIsCit3aGVyZSB0aGUgY29lZmZpY2llbnRzIGFy
ZSBjb21wdXRlZCB0aHJvdWdoIHN0YW5kYXJkIExpbmVhciBQcmVkaWN0aW9uIENvZGluZworKExQ
QykgYW5hbHlzaXMuIFRoZSBvcmRlciBvZiB0aGUgd2hpdGVuaW5nIGZpbHRlciBpcyAxNiBmb3Ig
YmVzdCByZXN1bHRzLCBidXQKK2lzIHJlZHVjZWQgdG8gMTIgZm9yIG1lZGl1bSBjb21wbGV4aXR5
IGFuZCA4IGZvciBsb3cgY29tcGxleGl0eSBtb2Rlcy4KK1RoZSB3aGl0ZW5lZCBzaWduYWwgaXMg
YW5hbHl6ZWQgdG8gZmluZCBwaXRjaCBsYWdzIGZvciB3aGljaCB0aGUgdGltZQorY29ycmVsYXRp
b24gaXMgaGlnaC4KK1RoZSBhbmFseXNpcyBjb25zaXN0cyBvZiB0aHJlZSBzdGFnZXMgZm9yIHJl
ZHVjaW5nIHRoZSBjb21wbGV4aXR5OgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+SW4gdGhl
IGZpcnN0IHN0YWdlLCB0aGUgd2hpdGVuZWQgc2lnbmFsIGlzIGRvd25zYW1wbGVkIHRvIDQmbmJz
cDtrSHoKKyhmcm9tIDgmbmJzcDtrSHopIGFuZCB0aGUgY3VycmVudCBmcmFtZSBpcyBjb3JyZWxh
dGVkIHRvIGEgc2lnbmFsIGRlbGF5ZWQKK2J5IGEgcmFuZ2Ugb2YgbGFncywgc3RhcnRpbmcgZnJv
bSBhIHNob3J0ZXN0IGxhZyBjb3JyZXNwb25kaW5nIHRvCis1MDAmbmJzcDtIeiwgdG8gYSBsb25n
ZXN0IGxhZyBjb3JyZXNwb25kaW5nIHRvIDU2Jm5ic3A7SHouPC90PgorCis8dD4KK1RoZSBzZWNv
bmQgc3RhZ2Ugb3BlcmF0ZXMgb24gYW4gOCZuYnNwO2tIeiBzaWduYWwgKGRvd25zYW1wbGVkIGZy
b20gMTIsIDE2LAorb3IgMjQmbmJzcDtrSHopIGFuZCBtZWFzdXJlcyB0aW1lIGNvcnJlbGF0aW9u
cyBvbmx5IG5lYXIgdGhlIGxhZ3MKK2NvcnJlc3BvbmRpbmcgdG8gdGhvc2UgdGhhdCBoYWQgc3Vm
ZmljaWVudGx5IGhpZ2ggY29ycmVsYXRpb25zIGluIHRoZSBmaXJzdAorc3RhZ2UuIFRoZSByZXN1
bHRpbmcgY29ycmVsYXRpb25zIGFyZSBhZGp1c3RlZCBmb3IgYSBzbWFsbCBiaWFzIHRvd2FyZHMK
K3Nob3J0IGxhZ3MgdG8gYXZvaWQgZW5kaW5nIHVwIHdpdGggYSBtdWx0aXBsZSBvZiB0aGUgdHJ1
ZSBwaXRjaCBsYWcuCitUaGUgaGlnaGVzdCBhZGp1c3RlZCBjb3JyZWxhdGlvbiBpcyBjb21wYXJl
ZCB0byBhIHRocmVzaG9sZCBkZXBlbmRpbmcgb246Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8
dD4KK1doZXRoZXIgdGhlIHByZXZpb3VzIGZyYW1lIHdhcyBjbGFzc2lmaWVkIGFzIHZvaWNlZAor
PC90PgorPHQ+CitUaGUgc3BlZWNoIGFjdGl2aXR5IGxldmVsCis8L3Q+Cis8dD4KK1RoZSBzcGVj
dHJhbCB0aWx0LgorPC90PgorPC9saXN0PgorSWYgdGhlIHRocmVzaG9sZCBpcyBleGNlZWRlZCwg
dGhlIGN1cnJlbnQgZnJhbWUgaXMgY2xhc3NpZmllZCBhcyB2b2ljZWQgYW5kCit0aGUgbGFnIHdp
dGggdGhlIGhpZ2hlc3QgYWRqdXN0ZWQgY29ycmVsYXRpb24gaXMgc3RvcmVkIGZvciBhIGZpbmFs
IHBpdGNoCithbmFseXNpcyBvZiB0aGUgaGlnaGVzdCBwcmVjaXNpb24gaW4gdGhlIHRoaXJkIHN0
YWdlLgorPC90PgorPHQ+CitUaGUgbGFzdCBzdGFnZSBvcGVyYXRlcyBkaXJlY3RseSBvbiB0aGUg
d2hpdGVuZWQgaW5wdXQgc2lnbmFsIHRvIGNvbXB1dGUgdGltZQorY29ycmVsYXRpb25zIGZvciBl
YWNoIG9mIHRoZSBmb3VyIHN1YmZyYW1lcyBpbmRlcGVuZGVudGx5IGluIGEgbmFycm93IHJhbmdl
Cithcm91bmQgdGhlIGxhZyB3aXRoIGhpZ2hlc3QgY29ycmVsYXRpb24gZnJvbSB0aGUgc2Vjb25k
IHN0YWdlLgorPC90PgorPC9saXN0PgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRs
ZT0nTm9pc2UgU2hhcGluZyBBbmFseXNpcycgYW5jaG9yPSdub2lzZV9zaGFwaW5nX2FuYWx5c2lz
X292ZXJ2aWV3X3NlY3Rpb24nPgorPHQ+CitUaGUgbm9pc2Ugc2hhcGluZyBhbmFseXNpcyBmaW5k
cyBnYWlucyBhbmQgZmlsdGVyIGNvZWZmaWNpZW50cyB1c2VkIGluIHRoZQorcHJlZmlsdGVyIGFu
ZCBub2lzZSBzaGFwaW5nIHF1YW50aXplci4gVGhlc2UgcGFyYW1ldGVycyBhcmUgY2hvc2VuIHN1
Y2ggdGhhdAordGhleSB3aWxsIGZ1bGZpbGwgc2V2ZXJhbCByZXF1aXJlbWVudHM6Cis8bGlzdCBz
dHlsZT0ic3ltYm9scyI+Cis8dD4KK0JhbGFuY2luZyBxdWFudGl6YXRpb24gbm9pc2UgYW5kIGJp
dHJhdGUuCitUaGUgcXVhbnRpemF0aW9uIGdhaW5zIGRldGVybWluZSB0aGUgc3RlcCBzaXplIGJl
dHdlZW4gcmVjb25zdHJ1Y3Rpb24gbGV2ZWxzCitvZiB0aGUgZXhjaXRhdGlvbiBzaWduYWwuIFRo
ZXJlZm9yZSwgaW5jcmVhc2luZyB0aGUgcXVhbnRpemF0aW9uIGdhaW4KK2FtcGxpZmllcyBxdWFu
dGl6YXRpb24gbm9pc2UsIGJ1dCBhbHNvIHJlZHVjZXMgdGhlIGJpdHJhdGUgYnkgbG93ZXJpbmcK
K3RoZSBlbnRyb3B5IG9mIHRoZSBxdWFudGl6YXRpb24gaW5kaWNlcy4KKzwvdD4KKzx0PgorU3Bl
Y3RyYWwgc2hhcGluZyBvZiB0aGUgcXVhbnRpemF0aW9uIG5vaXNlOyB0aGUgbm9pc2Ugc2hhcGlu
ZyBxdWFudGl6ZXIgaXMKK2NhcGFibGUgb2YgcmVkdWNpbmcgcXVhbnRpemF0aW9uIG5vaXNlIGlu
IHNvbWUgcGFydHMgb2YgdGhlIHNwZWN0cnVtIGF0IHRoZQorY29zdCBvZiBpbmNyZWFzZWQgbm9p
c2UgaW4gb3RoZXIgcGFydHMgd2l0aG91dCBzdWJzdGFudGlhbGx5IGNoYW5naW5nIHRoZQorYml0
cmF0ZS4KK0J5IHNoYXBpbmcgdGhlIG5vaXNlIHN1Y2ggdGhhdCBpdCBmb2xsb3dzIHRoZSBzaWdu
YWwgc3BlY3RydW0sIGl0IGJlY29tZXMKK2xlc3MgYXVkaWJsZS4gSW4gcHJhY3RpY2UsIGJlc3Qg
cmVzdWx0cyBhcmUgb2J0YWluZWQgYnkgbWFraW5nIHRoZSBzaGFwZQorb2YgdGhlIG5vaXNlIHNw
ZWN0cnVtIHNsaWdodGx5IGZsYXR0ZXIgdGhhbiB0aGUgc2lnbmFsIHNwZWN0cnVtLgorPC90Pgor
PHQ+CitEZS1lbXBoYXNpemluZyBzcGVjdHJhbCB2YWxsZXlzOyBieSB1c2luZyBkaWZmZXJlbnQg
Y29lZmZpY2llbnRzIGluIHRoZQorYW5hbHlzaXMgYW5kIHN5bnRoZXNpcyBwYXJ0IG9mIHRoZSBw
cmVmaWx0ZXIgYW5kIG5vaXNlIHNoYXBpbmcgcXVhbnRpemVyLAordGhlIGxldmVscyBvZiB0aGUg
c3BlY3RyYWwgdmFsbGV5cyBjYW4gYmUgZGVjcmVhc2VkIHJlbGF0aXZlIHRvIHRoZSBsZXZlbHMK
K29mIHRoZSBzcGVjdHJhbCBwZWFrcyBzdWNoIGFzIHNwZWVjaCBmb3JtYW50cyBhbmQgaGFybW9u
aWNzLgorVGhpcyByZWR1Y2VzIHRoZSBlbnRyb3B5IG9mIHRoZSBzaWduYWwsIHdoaWNoIGlzIHRo
ZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlCitjb2RlZCBzaWduYWwgYW5kIHRoZSBxdWFudGl6YXRp
b24gbm9pc2UsIHRodXMgbG93ZXJpbmcgdGhlIGJpdHJhdGUuCis8L3Q+Cis8dD4KK01hdGNoaW5n
IHRoZSBsZXZlbHMgb2YgdGhlIGRlY29kZWQgc3BlZWNoIGZvcm1hbnRzIHRvIHRoZSBsZXZlbHMg
b2YgdGhlCitvcmlnaW5hbCBzcGVlY2ggZm9ybWFudHM7IGFuIGFkanVzdG1lbnQgZ2FpbiBhbmQg
YSBmaXJzdCBvcmRlciB0aWx0Citjb2VmZmljaWVudCBhcmUgY29tcHV0ZWQgdG8gY29tcGVuc2F0
ZSBmb3IgdGhlIGVmZmVjdCBvZiB0aGUgbm9pc2UKK3NoYXBpbmcgcXVhbnRpemF0aW9uIG9uIHRo
ZSBsZXZlbCBhbmQgc3BlY3RyYWwgdGlsdC4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKzx0PgorPGZp
Z3VyZSBhbGlnbj0iY2VudGVyIiBhbmNob3I9Im5vaXNlX3NoYXBlX2FuYWx5c2lzX3NwZWN0cmFf
ZmlndXJlIgorIHRpdGxlPSJOb2lzZSBzaGFwaW5nIGFuZCBzcGVjdHJhbCBkZS1lbXBoYXNpcyBp
bGx1c3RyYXRpb24iPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKKyAgLyBc
ICAgX19fCisgICB8ICAgLy8gXFwKKyAgIHwgIC8vICAgXFwgICAgIF9fX18KKyAgIHxfLy8gICAg
IFxcX19fLy8gIFxcICAgICAgICAgX19fXworICAgfCAvICBfX18gIFwgICAvICAgIFxcICAgICAg
IC8vICBcXAorIFAgfC8gIC8gICBcICBcXy8gICAgICBcXF9fX19fLy8gICAgXFwKKyBvIHwgIC8g
ICAgIFwgICAgIF9fX18gIFwgICAgIC8gICAgICBcXAorIHcgfCAvICAgICAgIFxfX18vICAgIFwg
IFxfX18vICBfX19fICBcXF9fXyAxCisgZSB8LyAgICAgICAgICAgICAgICAgIFwgICAgICAgLyAg
ICBcICBcCisgciB8ICAgICAgICAgICAgICAgICAgICBcX19fX18vICAgICAgXCAgXF9fIDIKKyAg
IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgfCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXF9fXyAzCisgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLT4KKyAgICAgICAgICAgICAgICAgICAgRnJlcXVlbmN5CisK
KzE6IElucHV0IHNpZ25hbCBzcGVjdHJ1bQorMjogRGUtZW1waGFzaXplZCBhbmQgbGV2ZWwgbWF0
Y2hlZCBzcGVjdHJ1bQorMzogUXVhbnRpemF0aW9uIG5vaXNlIHNwZWN0cnVtCitdXT4KKzwvYXJ0
d29yaz4KKzwvZmlndXJlPgorPHhyZWYgdGFyZ2V0PSdub2lzZV9zaGFwZV9hbmFseXNpc19zcGVj
dHJhX2ZpZ3VyZScgLz4gc2hvd3MgYW4gZXhhbXBsZSBvZiBhbgoraW5wdXQgc2lnbmFsIHNwZWN0
cnVtICgxKS4KK0FmdGVyIGRlLWVtcGhhc2lzIGFuZCBsZXZlbCBtYXRjaGluZywgdGhlIHNwZWN0
cnVtIGhhcyBkZWVwZXIgdmFsbGV5cyAoMikuCitUaGUgcXVhbnRpemF0aW9uIG5vaXNlIHNwZWN0
cnVtICgzKSBtb3JlIG9yIGxlc3MgZm9sbG93cyB0aGUgaW5wdXQgc2lnbmFsCitzcGVjdHJ1bSwg
d2hpbGUgaGF2aW5nIHNsaWdodGx5IGxlc3MgcHJvbm91bmNlZCBwZWFrcy4KK1RoZSBlbnRyb3B5
LCB3aGljaCBwcm92aWRlcyBhIGxvd2VyIGJvdW5kIG9uIHRoZSBiaXRyYXRlIGZvciBlbmNvZGlu
ZyB0aGUKK2V4Y2l0YXRpb24gc2lnbmFsLCBpcyBwcm9wb3J0aW9uYWwgdG8gdGhlIGFyZWEgYmV0
d2VlbiB0aGUgZGUtZW1waGFzaXplZAorc3BlY3RydW0gKDIpIGFuZCB0aGUgcXVhbnRpemF0aW9u
IG5vaXNlIHNwZWN0cnVtICgzKS4gV2l0aG91dCBkZS1lbXBoYXNpcywKK3RoZSBlbnRyb3B5IGlz
IHByb3BvcnRpb25hbCB0byB0aGUgYXJlYSBiZXR3ZWVuIGlucHV0IHNwZWN0cnVtICgxKSBhbmQK
K3F1YW50aXphdGlvbiBub2lzZSAoMykgLSBjbGVhcmx5IGhpZ2hlci4KKzwvdD4KKworPHQ+CitU
aGUgdHJhbnNmb3JtYXRpb24gZnJvbSBpbnB1dCBzaWduYWwgdG8gZGUtZW1waGFzaXplZCBzaWdu
YWwgY2FuIGJlCitkZXNjcmliZWQgYXMgYSBmaWx0ZXJpbmcgb3BlcmF0aW9uIHdpdGggYSBmaWx0
ZXIKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwh
W0NEQVRBWworICAgICAgICAgICAgICAgICAgICAgICAgICAgLTEgICAgV2FuYSh6KQorSCh6KSA9
IEcgKiAoIDEgLSBjX3RpbHQgKiB6ICApICogLS0tLS0tLQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgV3N5bih6KSwKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+CitoYXZpbmcg
YW4gYWRqdXN0bWVudCBnYWluIEcsIGEgZmlyc3Qgb3JkZXIgdGlsdCBhZGp1c3RtZW50IGZpbHRl
ciB3aXRoCit0aWx0IGNvZWZmaWNpZW50IGNfdGlsdCwgYW5kIHdoZXJlCis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKKyAgICAgICAg
ICAgICAgIDE2ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQKKyAgICAgICAgICAgICAgIF9f
ICAgICAgICAgICAgIC1rICAgICAgICAtTCAgX18gICAgICAgICAgICAtaworV2FuYSh6KSA9ICgx
IC0gXCAoYV9hbmEoaykgKiB6ICApKigxIC0geiAgKiBcIGJfYW5hKGspICogeiAgKSwKKyAgICAg
ICAgICAgICAgIC9fICAgICAgICAgICAgICAgICAgICAgICAgICAgL18KKyAgICAgICAgICAgICAg
IGs9MSAgICAgICAgICAgICAgICAgICAgICAgICAgaz0tZAorXV0+Cis8L2FydHdvcms+Cis8L2Zp
Z3VyZT4KK2lzIHRoZSBhbmFseXNpcyBwYXJ0IG9mIHRoZSBkZS1lbXBoYXNpcyBmaWx0ZXIsIGNv
bnNpc3Rpbmcgb2YgdGhlIHNob3J0LXRlcm0KK3NoYXBpbmcgZmlsdGVyIHdpdGggY29lZmZpY2ll
bnRzIGFfYW5hKGspLCBhbmQgdGhlIGxvbmctdGVybSBzaGFwaW5nIGZpbHRlcgord2l0aCBjb2Vm
ZmljaWVudHMgYl9hbmEoaykgYW5kIHBpdGNoIGxhZyBMLgorVGhlIHBhcmFtZXRlciBkIGRldGVy
bWluZXMgdGhlIG51bWJlciBvZiBsb25nLXRlcm0gc2hhcGluZyBmaWx0ZXIgdGFwcy4KKzwvdD4K
KworPHQ+CitTaW1pbGFybHksIGJ1dCB3aXRob3V0IHRoZSB0aWx0IGFkanVzdG1lbnQsIHRoZSBz
eW50aGVzaXMgcGFydCBjYW4gYmUgd3JpdHRlbiBhcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4K
KzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisgICAgICAgICAgICAgICAxNiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBkCisgICAgICAgICAgICAgICBfXyAgICAgICAgICAg
ICAtayAgICAgICAgLUwgIF9fICAgICAgICAgICAgLWsKK1dzeW4oeikgPSAoMSAtIFwgKGFfc3lu
KGspICogeiAgKSooMSAtIHogICogXCBiX3N5bihrKSAqIHogICkuCisgICAgICAgICAgICAgICAv
XyAgICAgICAgICAgICAgICAgICAgICAgICAgIC9fCisgICAgICAgICAgICAgICBrPTEgICAgICAg
ICAgICAgICAgICAgICAgICAgIGs9LWQKKyAgICAgICAgICAgIF1dPgorPC9hcnR3b3JrPgorPC9m
aWd1cmU+Cis8L3Q+Cis8dD4KK0FsbCBub2lzZSBzaGFwaW5nIHBhcmFtZXRlcnMgYXJlIGNvbXB1
dGVkIGFuZCBhcHBsaWVkIHBlciBzdWJmcmFtZSBvZiA1Jm5ic3A7bXMuCitGaXJzdCwgYW4gTFBD
IGFuYWx5c2lzIGlzIHBlcmZvcm1lZCBvbiBhIHdpbmRvd2VkIHNpZ25hbCBibG9jayBvZiAxNSZu
YnNwO21zLgorVGhlIHNpZ25hbCBibG9jayBoYXMgYSBsb29rLWFoZWFkIG9mIDUmbmJzcDttcyBy
ZWxhdGl2ZSB0byB0aGUgY3VycmVudCBzdWJmcmFtZSwKK2FuZCB0aGUgd2luZG93IGlzIGFuIGFz
eW1tZXRyaWMgc2luZSB3aW5kb3cuIFRoZSBMUEMgYW5hbHlzaXMgaXMgZG9uZSB3aXRoIHRoZQor
YXV0b2NvcnJlbGF0aW9uIG1ldGhvZCwgd2l0aCBhbiBvcmRlciBvZiBiZXR3ZWVuIDgsIGluIGxv
d2VzdC1jb21wbGV4aXR5IG1vZGUsCithbmQgMTYsIGZvciBiZXN0IHF1YWxpdHkuCis8L3Q+Cis8
dD4KK09wdGlvbmFsbHkgdGhlIExQQyBhbmFseXNpcyBhbmQgbm9pc2Ugc2hhcGluZyBmaWx0ZXJz
IGFyZSB3YXJwZWQgYnkgcmVwbGFjaW5nCit0aGUgZGVsYXkgZWxlbWVudHMgYnkgZmlyc3Qtb3Jk
ZXIgYWxscGFzcyBmaWx0ZXJzLgorVGhpcyBpbmNyZWFzZXMgdGhlIGZyZXF1ZW5jeSByZXNvbHV0
aW9uIGF0IGxvdyBmcmVxdWVuY2llcyBhbmQgcmVkdWNlcyBpdCBhdAoraGlnaCBvbmVzLCB3aGlj
aCBiZXR0ZXIgbWF0Y2hlcyB0aGUgaHVtYW4gYXVkaXRvcnkgc3lzdGVtIGFuZCBpbXByb3Zlcwor
cXVhbGl0eS4KK1RoZSB3YXJwZWQgYW5hbHlzaXMgYW5kIGZpbHRlcmluZyBjb21lcyBhdCBhIGNv
c3QgaW4gY29tcGxleGl0eQorYW5kIGlzIHRoZXJlZm9yZSBvbmx5IGRvbmUgaW4gaGlnaGVyIGNv
bXBsZXhpdHkgbW9kZXMuCis8L3Q+Cis8dD4KK1RoZSBxdWFudGl6YXRpb24gZ2FpbiBpcyBmb3Vu
ZCBieSB0YWtpbmcgdGhlIHNxdWFyZSByb290IG9mIHRoZSByZXNpZHVhbCBlbmVyZ3kKK2Zyb20g
dGhlIExQQyBhbmFseXNpcyBhbmQgbXVsdGlwbHlpbmcgaXQgYnkgYSB2YWx1ZSBpbnZlcnNlbHkg
cHJvcG9ydGlvbmFsCit0byB0aGUgY29kaW5nIHF1YWxpdHkgY29udHJvbCBwYXJhbWV0ZXIgYW5k
IHRoZSBwaXRjaCBjb3JyZWxhdGlvbi4KKzwvdD4KKzx0PgorTmV4dCB0aGUgdHdvIHNldHMgb2Yg
c2hvcnQtdGVybSBub2lzZSBzaGFwaW5nIGNvZWZmaWNpZW50cyBhX2FuYShrKSBhbmQKK2Ffc3lu
KGspIGFyZSBvYnRhaW5lZCBieSBhcHBseWluZyBkaWZmZXJlbnQgYW1vdW50cyBvZiBiYW5kd2lk
dGggZXhwYW5zaW9uIHRvIHRoZQorY29lZmZpY2llbnRzIGZvdW5kIGluIHRoZSBMUEMgYW5hbHlz
aXMuCitUaGlzIGJhbmR3aWR0aCBleHBhbnNpb24gbW92ZXMgdGhlIHJvb3RzIG9mIHRoZSBMUEMg
cG9seW5vbWlhbCB0b3dhcmRzIHRoZQorb3JpZ2luLCB1c2luZyB0aGUgZm9ybXVsYXMKKzxmaWd1
cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWwor
ICAgICAgICAgICAgICAgICAgICAgIGsKKyBhX2FuYShrKSA9IGEoaykqZ19hbmEgLCBhbmQKKwor
ICAgICAgICAgICAgICAgICAgICAgIGsKKyBhX3N5bihrKSA9IGEoaykqZ19zeW4gLAorXV0+Cis8
L2FydHdvcms+Cis8L2ZpZ3VyZT4KK3doZXJlIGEoaykgaXMgdGhlIGsndGggTFBDIGNvZWZmaWNp
ZW50LCBhbmQgdGhlIGJhbmR3aWR0aCBleHBhbnNpb24gZmFjdG9ycworZ19hbmEgYW5kIGdfc3lu
IGFyZSBjYWxjdWxhdGVkIGFzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxp
Z249ImNlbnRlciI+Cis8IVtDREFUQVsKK2dfYW5hID0gMC45NSAtIDAuMDEqQywgYW5kCisKK2df
c3luID0gMC45NSArIDAuMDEqQywKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+Cit3aGVyZSBD
IGlzIHRoZSBjb2RpbmcgcXVhbGl0eSBjb250cm9sIHBhcmFtZXRlciBiZXR3ZWVuIDAgYW5kIDEu
CitBcHBseWluZyBtb3JlIGJhbmR3aWR0aCBleHBhbnNpb24gdG8gdGhlIGFuYWx5c2lzIHBhcnQg
dGhhbiB0byB0aGUgc3ludGhlc2lzCitwYXJ0IGdpdmVzIHRoZSBkZXNpcmVkIGRlLWVtcGhhc2lz
IG9mIHNwZWN0cmFsIHZhbGxleXMgaW4gYmV0d2VlbiBmb3JtYW50cy4KKzwvdD4KKworPHQ+CitU
aGUgbG9uZy10ZXJtIHNoYXBpbmcgaXMgYXBwbGllZCBvbmx5IGR1cmluZyB2b2ljZWQgZnJhbWVz
LgorSXQgdXNlcyB0aHJlZSBmaWx0ZXIgdGFwcywgZGVzY3JpYmVkIGJ5Cis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+CisgIDwhW0NEQVRBWworYl9hbmEg
PSBGX2FuYSAqIFswLjI1LCAwLjUsIDAuMjVdLCBhbmQKKworYl9zeW4gPSBGX3N5biAqIFswLjI1
LCAwLjUsIDAuMjVdLgorXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0ZvciB1bnZvaWNlZCBm
cmFtZXMgdGhlc2UgY29lZmZpY2llbnRzIGFyZSBzZXQgdG8gMC4gVGhlIG11bHRpcGxpY2F0aW9u
IGZhY3RvcnMKK0ZfYW5hIGFuZCBGX3N5biBhcmUgY2hvc2VuIGJldHdlZW4gMCBhbmQgMSwgZGVw
ZW5kaW5nIG9uIHRoZSBjb2RpbmcgcXVhbGl0eQorY29udHJvbCBwYXJhbWV0ZXIsIGFzIHdlbGwg
YXMgdGhlIGNhbGN1bGF0ZWQgcGl0Y2ggY29ycmVsYXRpb24gYW5kIHNtb290aGVkCitzdWJiYW5k
IFNOUiBvZiB0aGUgbG93ZXN0IHN1YmJhbmQuIEJ5IGhhdmluZyBGX2FuYSBsZXNzIHRoYW4gRl9z
eW4sCit0aGUgcGl0Y2ggaGFybW9uaWNzIGFyZSBlbXBoYXNpemVkIHJlbGF0aXZlIHRvIHRoZSB2
YWxsZXlzIGluIGJldHdlZW4gdGhlCitoYXJtb25pY3MuCis8L3Q+CisKKzx0PgorVGhlIHRpbHQg
Y29lZmZpY2llbnQgY190aWx0IGlzIGZvciB1bnZvaWNlZCBmcmFtZXMgY2hvc2VuIGFzCis8Zmln
dXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsK
K2NfdGlsdCA9IDAuMjUsCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorYW5kIGFzCis8Zmln
dXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsK
K2NfdGlsdCA9IDAuMjUgKyAwLjI2MjUgKiBWCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgor
Zm9yIHZvaWNlZCBmcmFtZXMsIHdoZXJlIFYgaXMgdGhlIHZvaWNlIGFjdGl2aXR5IGxldmVsIGJl
dHdlZW4gMCBhbmQgMS4KKzwvdD4KKzx0PgorVGhlIGFkanVzdG1lbnQgZ2FpbiBHIHNlcnZlcyB0
byBjb3JyZWN0IGFueSBsZXZlbCBtaXNtYXRjaCBiZXR3ZWVuIHRoZSBvcmlnaW5hbAorYW5kIGRl
Y29kZWQgc2lnbmFscyB0aGF0IG1pZ2h0IGFyaXNlIGZyb20gdGhlIG5vaXNlIHNoYXBpbmcgYW5k
IGRlLWVtcGhhc2lzLgorVGhpcyBnYWluIGlzIGNvbXB1dGVkIGFzIHRoZSByYXRpbyBvZiB0aGUg
cHJlZGljdGlvbiBnYWluIG9mIHRoZSBzaG9ydC10ZXJtCithbmFseXNpcyBhbmQgc3ludGhlc2lz
IGZpbHRlciBjb2VmZmljaWVudHMuIFRoZSBwcmVkaWN0aW9uIGdhaW4gb2YgYW4gTFBDCitzeW50
aGVzaXMgZmlsdGVyIGlzIHRoZSBzcXVhcmUgcm9vdCBvZiB0aGUgb3V0cHV0IGVuZXJneSB3aGVu
IHRoZSBmaWx0ZXIgaXMKK2V4Y2l0ZWQgYnkgYSB1bml0LWVuZXJneSBpbXB1bHNlIG9uIHRoZSBp
bnB1dC4KK0FuIGVmZmljaWVudCB3YXkgdG8gY29tcHV0ZSB0aGUgcHJlZGljdGlvbiBnYWluIGlz
IGJ5IGZpcnN0IGNvbXB1dGluZyB0aGUKK3JlZmxlY3Rpb24gY29lZmZpY2llbnRzIGZyb20gdGhl
IExQQyBjb2VmZmljaWVudHMgdGhyb3VnaCB0aGUgc3RlcC1kb3duCithbGdvcml0aG0sIGFuZCBl
eHRyYWN0aW5nIHRoZSBwcmVkaWN0aW9uIGdhaW4gZnJvbSB0aGUgcmVmbGVjdGlvbiBjb2VmZmlj
aWVudHMKK2FzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRl
ciI+Cis8IVtDREFUQVsKKyAgICAgICAgICAgICAgIEsKKyAgICAgICAgICAgICAgX19fICAgICAg
ICAgIDIgIC0wLjUKKyBwcmVkR2FpbiA9ICggfCB8IDEgLSAocl9rKSAgKSAgICAsCisgICAgICAg
ICAgICAgIGs9MQorXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KK3doZXJlIHJfayBpcyB0aGUg
ayd0aCByZWZsZWN0aW9uIGNvZWZmaWNpZW50LgorPC90PgorCis8dD4KK0luaXRpYWwgdmFsdWVz
IGZvciB0aGUgcXVhbnRpemF0aW9uIGdhaW5zIGFyZSBjb21wdXRlZCBhcyB0aGUgc3F1YXJlLXJv
b3Qgb2YKK3RoZSByZXNpZHVhbCBlbmVyZ3kgb2YgdGhlIExQQyBhbmFseXNpcywgYWRqdXN0ZWQg
YnkgdGhlIGNvZGluZyBxdWFsaXR5IGNvbnRyb2wKK3BhcmFtZXRlci4KK1RoZXNlIHF1YW50aXph
dGlvbiBnYWlucyBhcmUgbGF0ZXIgYWRqdXN0ZWQgYmFzZWQgb24gdGhlIHJlc3VsdHMgb2YgdGhl
CitwcmVkaWN0aW9uIGFuYWx5c2lzLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRs
ZT0nUHJlZGljdGlvbiBBbmFseXNpcycgYW5jaG9yPSdwcmVkX2FuYV9vdmVydmlld19zZWN0aW9u
Jz4KKzx0PgorVGhlIHByZWRpY3Rpb24gYW5hbHlzaXMgaXMgcGVyZm9ybWVkIGluIG9uZSBvZiB0
d28gd2F5cyBkZXBlbmRpbmcgb24gaG93Cit0aGUgcGl0Y2ggZXN0aW1hdG9yIGNsYXNzaWZpZWQg
dGhlIGZyYW1lLgorVGhlIHByb2Nlc3NpbmcgZm9yIHZvaWNlZCBhbmQgdW52b2ljZWQgc3BlZWNo
IGlzIGRlc2NyaWJlZCBpbgorPHhyZWYgdGFyZ2V0PSdwcmVkX2FuYV92b2ljZWRfb3ZlcnZpZXdf
c2VjdGlvbicgLz4gYW5kCisgIDx4cmVmIHRhcmdldD0ncHJlZF9hbmFfdW52b2ljZWRfb3ZlcnZp
ZXdfc2VjdGlvbicgLz4sIHJlc3BlY3RpdmVseS4KKyAgSW5wdXRzIHRvIHRoaXMgZnVuY3Rpb24g
aW5jbHVkZSB0aGUgcHJlLXdoaXRlbmVkIHNpZ25hbCBmcm9tIHRoZQorICBwaXRjaCBlc3RpbWF0
b3IgKHNlZSA8eHJlZiB0YXJnZXQ9J3BpdGNoX2VzdGltYXRvcl9vdmVydmlld19zZWN0aW9uJy8+
KS4KKzwvdD4KKworPHNlY3Rpb24gdGl0bGU9J1ZvaWNlZCBTcGVlY2gnIGFuY2hvcj0ncHJlZF9h
bmFfdm9pY2VkX292ZXJ2aWV3X3NlY3Rpb24nPgorPHQ+CisgIEZvciBhIGZyYW1lIG9mIHZvaWNl
ZCBzcGVlY2ggdGhlIHBpdGNoIHB1bHNlcyB3aWxsIHJlbWFpbiBkb21pbmFudCBpbiB0aGUKKyAg
cHJlLXdoaXRlbmVkIGlucHV0IHNpZ25hbC4KKyAgRnVydGhlciB3aGl0ZW5pbmcgaXMgZGVzaXJh
YmxlIGFzIGl0IGxlYWRzIHRvIGhpZ2hlciBxdWFsaXR5IGF0IHRoZSBzYW1lCisgIGF2YWlsYWJs
ZSBiaXRyYXRlLgorICBUbyBhY2hpZXZlIHRoaXMsIGEgTG9uZy1UZXJtIFByZWRpY3Rpb24gKExU
UCkgYW5hbHlzaXMgaXMgY2FycmllZCBvdXQgdG8KKyAgZXN0aW1hdGUgdGhlIGNvZWZmaWNpZW50
cyBvZiBhIGZpZnRoLW9yZGVyIExUUCBmaWx0ZXIgZm9yIGVhY2ggb2YgZm91cgorICBzdWJmcmFt
ZXMuCisgIFRoZSBMVFAgY29lZmZpY2llbnRzIGFyZSBxdWFudGl6ZWQgdXNpbmcgdGhlIG1ldGhv
ZCBkZXNjcmliZWQgaW4KKyAgPHhyZWYgdGFyZ2V0PSdsdHBfcXVhbnRpemVyX292ZXJ2aWV3X3Nl
Y3Rpb24nLz4sIGFuZCB0aGUgcXVhbnRpemVkIExUUAorICBjb2VmZmljaWVudHMgYXJlIHVzZWQg
dG8gY29tcHV0ZSB0aGUgTFRQIHJlc2lkdWFsIHNpZ25hbC4KKyAgVGhpcyBMVFAgcmVzaWR1YWwg
c2lnbmFsIGlzIHRoZSBpbnB1dCB0byBhbiBMUEMgYW5hbHlzaXMgd2hlcmUgdGhlIExQQyBjb2Vm
ZmljaWVudHMgYXJlCisgIGVzdGltYXRlZCB1c2luZyBCdXJnJ3MgbWV0aG9kIDx4cmVmIHRhcmdl
dD0iQnVyZyIvPiwgc3VjaCB0aGF0IHRoZSByZXNpZHVhbCBlbmVyZ3kgaXMgbWluaW1pemVkLgor
ICBUaGUgZXN0aW1hdGVkIExQQyBjb2VmZmljaWVudHMgYXJlIGNvbnZlcnRlZCB0byBhIExpbmUg
U3BlY3RyYWwgRnJlcXVlbmN5IChMU0YpIHZlY3RvcgorICBhbmQgcXVhbnRpemVkIGFzIGRlc2Ny
aWJlZCBpbiA8eHJlZiB0YXJnZXQ9J2xzZl9xdWFudGl6ZXJfb3ZlcnZpZXdfc2VjdGlvbicvPi4K
K0FmdGVyIHF1YW50aXphdGlvbiwgdGhlIHF1YW50aXplZCBMU0YgdmVjdG9yIGlzIGNvbnZlcnRl
ZCBiYWNrIHRvIExQQworY29lZmZpY2llbnRzIHVzaW5nIHRoZSBmdWxsIHByb2NlZHVyZSBpbiA8
eHJlZiB0YXJnZXQ9InNpbGtfbmxzZnMiLz4uCitCeSB1c2luZyBxdWFudGl6ZWQgTFRQIGNvZWZm
aWNpZW50cyBhbmQgTFBDIGNvZWZmaWNpZW50cyBkZXJpdmVkIGZyb20gdGhlCitxdWFudGl6ZWQg
TFNGIGNvZWZmaWNpZW50cywgdGhlIGVuY29kZXIgcmVtYWlucyBmdWxseSBzeW5jaHJvbml6ZWQg
d2l0aCB0aGUKK2RlY29kZXIuCitUaGUgcXVhbnRpemVkIExQQyBhbmQgTFRQIGNvZWZmaWNpZW50
cyBhcmUgYWxzbyB1c2VkIHRvIGZpbHRlciB0aGUgaW5wdXQKK3NpZ25hbCBhbmQgbWVhc3VyZSBy
ZXNpZHVhbCBlbmVyZ3kgZm9yIGVhY2ggb2YgdGhlIGZvdXIgc3ViZnJhbWVzLgorPC90PgorPC9z
ZWN0aW9uPgorPHNlY3Rpb24gdGl0bGU9J1Vudm9pY2VkIFNwZWVjaCcgYW5jaG9yPSdwcmVkX2Fu
YV91bnZvaWNlZF9vdmVydmlld19zZWN0aW9uJz4KKzx0PgorRm9yIGEgc3BlZWNoIHNpZ25hbCB0
aGF0IGhhcyBiZWVuIGNsYXNzaWZpZWQgYXMgdW52b2ljZWQsIHRoZXJlIGlzIG5vIG5lZWQKK2Zv
ciBMVFAgZmlsdGVyaW5nLCBhcyBpdCBoYXMgYWxyZWFkeSBiZWVuIGRldGVybWluZWQgdGhhdCB0
aGUgcHJlLXdoaXRlbmVkCitpbnB1dCBzaWduYWwgaXMgbm90IHBlcmlvZGljIGVub3VnaCB3aXRo
aW4gdGhlIGFsbG93ZWQgcGl0Y2ggcGVyaW9kIHJhbmdlCitmb3IgTFRQIGFuYWx5c2lzIHRvIGJl
IHdvcnRoIHRoZSBjb3N0IGluIHRlcm1zIG9mIGNvbXBsZXhpdHkgYW5kIGJpdHJhdGUuCitUaGUg
cHJlLXdoaXRlbmVkIGlucHV0IHNpZ25hbCBpcyB0aGVyZWZvcmUgZGlzY2FyZGVkLCBhbmQgaW5z
dGVhZCB0aGUgaW5wdXQKK3NpZ25hbCBpcyB1c2VkIGZvciBMUEMgYW5hbHlzaXMgdXNpbmcgQnVy
ZydzIG1ldGhvZC4KK1RoZSByZXN1bHRpbmcgTFBDIGNvZWZmaWNpZW50cyBhcmUgY29udmVydGVk
IHRvIGFuIExTRiB2ZWN0b3IgYW5kIHF1YW50aXplZAorYXMgZGVzY3JpYmVkIGluIHRoZSBmb2xs
b3dpbmcgc2VjdGlvbi4KK1RoZXkgYXJlIHRoZW4gdHJhbnNmb3JtZWQgYmFjayB0byBvYnRhaW4g
cXVhbnRpemVkIExQQyBjb2VmZmljaWVudHMsIHdoaWNoCithcmUgdGhlbiB1c2VkIHRvIGZpbHRl
ciB0aGUgaW5wdXQgc2lnbmFsIGFuZCBtZWFzdXJlIHJlc2lkdWFsIGVuZXJneSBmb3IKK2VhY2gg
b2YgdGhlIGZvdXIgc3ViZnJhbWVzLgorPC90PgorPHNlY3Rpb24gdGl0bGU9IkJ1cmcncyBNZXRo
b2QiPgorPHQ+CitUaGUgbWFpbiBwdXJwb3NlIG9mIGxpbmVhciBwcmVkaWN0aW9uIGluIFNJTEsg
aXMgdG8gcmVkdWNlIHRoZSBiaXRyYXRlIGJ5CittaW5pbWl6aW5nIHRoZSByZXNpZHVhbCBlbmVy
Z3kuCitBdCBsZWFzdCBhdCBoaWdoIGJpdHJhdGVzLCBwZXJjZXB0dWFsIGFzcGVjdHMgYXJlIGhh
bmRsZWQKK2luZGVwZW5kZW50bHkgYnkgdGhlIG5vaXNlIHNoYXBpbmcgZmlsdGVyLgorQnVyZydz
IG1ldGhvZCBpcyB1c2VkIGJlY2F1c2UgaXQgcHJvdmlkZXMgaGlnaGVyIHByZWRpY3Rpb24gZ2Fp
bgordGhhbiB0aGUgYXV0b2NvcnJlbGF0aW9uIG1ldGhvZCBhbmQsIHVubGlrZSB0aGUgY292YXJp
YW5jZSBtZXRob2QsCitwcm9kdWNlcyBzdGFibGUgZmlsdGVycyAoYXNzdW1pbmcgbnVtZXJpY2Fs
IGVycm9ycyBkb24ndCBzcG9pbAordGhhdCkuIFNJTEsncyBpbXBsZW1lbnRhdGlvbiBvZiBCdXJn
J3MgbWV0aG9kIGlzIGFsc28gY29tcHV0YXRpb25hbGx5CitmYXN0ZXIgdGhhbiB0aGUgYXV0b2Nv
dmFyaWFuY2UgbWV0aG9kLgorVGhlIGltcGxlbWVudGF0aW9uIG9mIEJ1cmcncyBtZXRob2QgZGlm
ZmVycyBmcm9tIHRyYWRpdGlvbmFsCitpbXBsZW1lbnRhdGlvbnMgaW4gdHdvIGFzcGVjdHMuCitU
aGUgZmlyc3QgZGlmZmVyZW5jZSBpcyB0aGF0IGl0CitvcGVyYXRlcyBvbiBhdXRvY29ycmVsYXRp
b25zLCBzaW1pbGFyIHRvIHRoZSBTY2h1ciBhbGdvcml0aG0gPHhyZWYgdGFyZ2V0PSJTY2h1ciIv
PiwgYnV0Cit3aXRoIGEgc2ltcGxlIHVwZGF0ZSB0byB0aGUgYXV0b2NvcnJlbGF0aW9ucyBhZnRl
ciBmaW5kaW5nIGVhY2gKK3JlZmxlY3Rpb24gY29lZmZpY2llbnQgdG8gbWFrZSB0aGUgcmVzdWx0
IGlkZW50aWNhbCB0byBCdXJnJ3MgbWV0aG9kLgorVGhpcyBicmluZ3MgZG93biB0aGUgY29tcGxl
eGl0eSBvZiBCdXJnJ3MgbWV0aG9kIHRvIG5lYXIgdGhhdCBvZgordGhlIGF1dG9jb3JyZWxhdGlv
biBtZXRob2QuCitUaGUgc2Vjb25kIGRpZmZlcmVuY2UgaXMgdGhhdCB0aGUgc2lnbmFsIGluIGVh
Y2ggc3ViZnJhbWUgaXMgc2NhbGVkCitieSB0aGUgaW52ZXJzZSBvZiB0aGUgcmVzaWR1YWwgcXVh
bnRpemF0aW9uIHN0ZXAgc2l6ZS4gIFN1YmZyYW1lcyB3aXRoCithIHNtYWxsIHF1YW50aXphdGlv
biBzdGVwIHNpemUgd2lsbCBvbiBhdmVyYWdlIHNwZW5kIG1vcmUgYml0cyBmb3IgYQorZ2l2ZW4g
YW1vdW50IG9mIHJlc2lkdWFsIGVuZXJneSB0aGFuIHN1YmZyYW1lcyB3aXRoIGEgbGFyZ2Ugc3Rl
cCBzaXplLgorV2l0aG91dCBzY2FsaW5nLCBCdXJnJ3MgbWV0aG9kIG1pbmltaXplcyB0aGUgdG90
YWwgcmVzaWR1YWwgZW5lcmd5IGluCithbGwgc3ViZnJhbWVzLCB3aGljaCBkb2Vzbid0IG5lY2Vz
c2FyaWx5IG1pbmltaXplIHRoZSB0b3RhbCBudW1iZXIgb2YKK2JpdHMgbmVlZGVkIGZvciBjb2Rp
bmcgdGhlIHF1YW50aXplZCByZXNpZHVhbC4gIFRoZSByZXNpZHVhbCBlbmVyZ3kKK29mIHRoZSBz
Y2FsZWQgc3ViZnJhbWVzIGlzIGEgYmV0dGVyIG1lYXN1cmUgZm9yIHRoYXQgbnVtYmVyIG9mCiti
aXRzLgorPC90PgorPC9zZWN0aW9uPgorPC9zZWN0aW9uPgorPC9zZWN0aW9uPgorCis8c2VjdGlv
biB0aXRsZT0nTFNGIFF1YW50aXphdGlvbicgYW5jaG9yPSdsc2ZfcXVhbnRpemVyX292ZXJ2aWV3
X3NlY3Rpb24nPgorPHQ+CitVbmxpa2UgbWFueSBvdGhlciBzcGVlY2ggY29kZWNzLCBTSUxLIHVz
ZXMgdmFyaWFibGUgYml0cmF0ZSBjb2RpbmcKK2ZvciB0aGUgTFNGcy4KK1RoaXMgaW1wcm92ZXMg
dGhlIGF2ZXJhZ2UgcmF0ZS1kaXN0b3J0aW9uIChSLUQpIHRyYWRlb2ZmIGFuZCByZWR1Y2VzIG91
dGxpZXJzLgorVGhlIHZhcmlhYmxlIGJpdHJhdGUgY29kaW5nIG1pbmltaXplcyBhIGxpbmVhciBj
b21iaW5hdGlvbiBvZiB0aGUgd2VpZ2h0ZWQKK3F1YW50aXphdGlvbiBlcnJvcnMgYW5kIHRoZSBi
aXRyYXRlLgorVGhlIHdlaWdodHMgZm9yIHRoZSBxdWFudGl6YXRpb24gZXJyb3JzIGFyZSB0aGUg
SW52ZXJzZQorSGFybW9uaWMgTWVhbiBXZWlnaHRpbmcgKElITVcpIGZ1bmN0aW9uIHByb3Bvc2Vk
IGJ5IExhcm9pYSBldCBhbC4KKyhzZWUgPHhyZWYgdGFyZ2V0PSJsYXJvaWEtaWNhc3NwIiAvPiku
CitUaGVzZSB3ZWlnaHRzIGFyZSByZWZlcnJlZCB0byBoZXJlIGFzIExhcm9pYSB3ZWlnaHRzLgor
PC90PgorPHQ+CitUaGUgTFNGIHF1YW50aXplciBjb25zaXN0cyBvZiB0d28gc3RhZ2VzLgorVGhl
IGZpcnN0IHN0YWdlIGlzIGFuICh1bndlaWdodGVkKSB2ZWN0b3IgcXVhbnRpemVyIChWUSksIHdp
dGggYQorY29kZWJvb2sgc2l6ZSBvZiAzMiB2ZWN0b3JzLgorVGhlIHF1YW50aXphdGlvbiBlcnJv
cnMgZm9yIHRoZSBjb2RlYm9vayB2ZWN0b3IgYXJlIHNvcnRlZCwgYW5kCitmb3IgdGhlIE4gYmVz
dCB2ZWN0b3JzIGEgc2Vjb25kIHN0YWdlIHF1YW50aXplciBpcyBydW4uCitCeSB2YXJ5aW5nIHRo
ZSBudW1iZXIgTiBhIHRyYWRlb2ZmIGlzIG1hZGUgYmV0d2VlbiBSLUQgcGVyZm9ybWFuY2UKK2Fu
ZCBjb21wdXRhdGlvbmFsIGVmZmljaWVuY3kuCitGb3IgZWFjaCBvZiB0aGUgTiBjb2RlYm9vayB2
ZWN0b3JzIHRoZSBMYXJvaWEgd2VpZ2h0cyBjb3JyZXNwb25kaW5nCit0byB0aGF0IHZlY3RvciAo
YW5kIG5vdCB0byB0aGUgaW5wdXQgdmVjdG9yKSBhcmUgY2FsY3VsYXRlZC4KK1RoZW4gdGhlIHJl
c2lkdWFsIGJldHdlZW4gdGhlIGlucHV0IExTRiB2ZWN0b3IgYW5kIHRoZSBjb2RlYm9vawordmVj
dG9yIGlzIHNjYWxlZCBieSB0aGUgc3F1YXJlIHJvb3RzIG9mIHRoZXNlIExhcm9pYSB3ZWlnaHRz
LgorVGhpcyBzY2FsaW5nIHBhcnRpYWxseSBub3JtYWxpemVzIGVycm9yIHNlbnNpdGl2aXR5IGZv
ciB0aGUKK3Jlc2lkdWFsIHZlY3Rvciwgc28gdGhhdCBhIHVuaWZvcm0gcXVhbnRpemVyIHdpdGgg
Zml4ZWQKK3N0ZXAgc2l6ZXMgY2FuIGJlIHVzZWQgaW4gdGhlIHNlY29uZCBzdGFnZSB3aXRob3V0
IHRvbyBtdWNoCitwZXJmb3JtYW5jZSBsb3NzLgorQW5kIGJ5IHNjYWxpbmcgd2l0aCBMYXJvaWEg
d2VpZ2h0cyBkZXRlcm1pbmVkIGZyb20gdGhlIGZpcnN0LXN0YWdlCitjb2RlYm9vayB2ZWN0b3Is
IHRoZSBwcm9jZXNzIGNhbiBiZSByZXZlcnNlZCBpbiB0aGUgZGVjb2Rlci4KKzwvdD4KKzx0Pgor
VGhlIHNlY29uZCBzdGFnZSB1c2VzIHByZWRpY3RpdmUgZGVsYXllZCBkZWNpc2lvbiBzY2FsYXIK
K3F1YW50aXphdGlvbi4KK1RoZSBxdWFudGl6YXRpb24gZXJyb3IgaXMgd2VpZ2h0ZWQgYnkgTGFy
b2lhIHdlaWdodHMgZGV0ZXJtaW5lZAorZnJvbSB0aGUgTFNGIGlucHV0IHZlY3Rvci4KK1RoZSBw
cmVkaWN0b3IgbXVsdGlwbGllcyB0aGUgcHJldmlvdXMgcXVhbnRpemVkIHJlc2lkdWFsIHZhbHVl
CitieSBhIHByZWRpY3Rpb24gY29lZmZpY2llbnQgdGhhdCBkZXBlbmRzIG9uIHRoZSB2ZWN0b3Ig
aW5kZXggZnJvbSB0aGUKK2ZpcnN0IHN0YWdlIFZRIGFuZCBvbiB0aGUgbG9jYXRpb24gaW4gdGhl
IExTRiB2ZWN0b3IuCitUaGUgcHJlZGljdGlvbiBpcyBzdWJ0cmFjdGVkIGZyb20gdGhlIExTRiBy
ZXNpZHVhbCB2YWx1ZSBiZWZvcmUKK3F1YW50aXppbmcgdGhlIHJlc3VsdCwgYW5kIGFkZGVkIGJh
Y2sgYWZ0ZXJ3YXJkcy4KK1RoaXMgc3VidHJhY3Rpb24gY2FuIGJlIGludGVycHJldGVkIGFzIHNo
aWZ0aW5nIHRoZSBxdWFudGl6YXRpb24gbGV2ZWxzCitvZiB0aGUgc2NhbGFyIHF1YW50aXplciwg
YW5kIGFzIGEgcmVzdWx0IHRoZSBxdWFudGl6YXRpb24gZXJyb3Igb2YKK2VhY2ggdmFsdWUgZGVw
ZW5kcyBvbiB0aGUgcXVhbnRpemF0aW9uIGRlY2lzaW9uIG9mIHRoZSBwcmV2aW91cyB2YWx1ZS4K
K1RoaXMgZGVwZW5kZW5jeSBpcyBleHBsb2l0ZWQgYnkgdGhlIGRlbGF5ZWQgZGVjaXNpb24gbWVj
aGFuaXNtIHRvCitzZWFyY2ggZm9yIGEgcXVhbnRpemF0aW9uIHNlcXVlbmN5IHdpdGggYmVzdCBS
LUQgcGVyZm9ybWFuY2UKK3dpdGggYSBWaXRlcmJpLWxpa2UgYWxnb3JpdGhtIDx4cmVmIHRhcmdl
dD0iVml0ZXJiaSIvPi4KK1RoZSBxdWFudGl6ZXIgcHJvY2Vzc2VzIHRoZSByZXNpZHVhbCBMU0Yg
dmVjdG9yIGluIHJldmVyc2Ugb3JkZXIKKyhpLmUuLCBpdCBzdGFydHMgd2l0aCB0aGUgaGlnaGVz
dCByZXNpZHVhbCBMU0YgdmFsdWUpLgorVGhpcyBpcyBkb25lIGJlY2F1c2UgdGhlIHByZWRpY3Rp
b24gd29ya3Mgc2xpZ2h0bHkKK2JldHRlciBpbiB0aGUgcmV2ZXJzZSBkaXJlY3Rpb24uCis8L3Q+
Cis8dD4KK1RoZSBxdWFudGl6YXRpb24gaW5kZXggb2YgdGhlIGZpcnN0IHN0YWdlIGlzIGVudHJv
cHkgY29kZWQuCitUaGUgcXVhbnRpemF0aW9uIHNlcXVlbmNlIGZyb20gdGhlIHNlY29uZCBzdGFn
ZSBpcyBhbHNvIGVudHJvcHkKK2NvZGVkLCB3aGVyZSBmb3IgZWFjaCBlbGVtZW50IHRoZSBwcm9i
YWJpbGl0eSB0YWJsZSBpcyBjaG9zZW4KK2RlcGVuZGluZyBvbiB0aGUgdmVjdG9yIGluZGV4IGZy
b20gdGhlIGZpcnN0IHN0YWdlIGFuZCB0aGUgbG9jYXRpb24KK29mIHRoYXQgZWxlbWVudCBpbiB0
aGUgTFNGIHZlY3Rvci4KKzwvdD4KKworPHNlY3Rpb24gdGl0bGU9J0xTRiBTdGFiaWxpemF0aW9u
JyBhbmNob3I9J2xzZl9zdGFiaWxpemVyX292ZXJ2aWV3X3NlY3Rpb24nPgorPHQ+CitJZiB0aGUg
aW5wdXQgaXMgc3RhYmxlLCBmaW5kaW5nIHRoZSBiZXN0IGNhbmRpZGF0ZSB1c3VhbGx5IHJlc3Vs
dHMgaW4gYQorcXVhbnRpemVkIHZlY3RvciB0aGF0IGlzIGFsc28gc3RhYmxlLiBCZWNhdXNlIG9m
IHRoZSB0d28tc3RhZ2UgYXBwcm9hY2gsCitob3dldmVyLCBpdCBpcyBwb3NzaWJsZSB0aGF0IHRo
ZSBiZXN0IHF1YW50aXphdGlvbiBjYW5kaWRhdGUgaXMgdW5zdGFibGUuCitUaGUgZW5jb2RlciBh
cHBsaWVzIHRoZSBzYW1lIHN0YWJpbGl6YXRpb24gcHJvY2VkdXJlIGFwcGxpZWQgYnkgdGhlIGRl
Y29kZXIKKyAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3N0YWJpbGl6YXRpb24iLz4gdG8g
ZW5zdXJlIHRoZSBMU0YgcGFyYW1ldGVycworIGFyZSB3aXRoaW4gdGhlaXIgdmFsaWQgcmFuZ2Us
IGluY3JlYXNpbmdseSBzb3J0ZWQsIGFuZCBoYXZlIG1pbmltdW0KKyBkaXN0YW5jZXMgYmV0d2Vl
biBlYWNoIG90aGVyIGFuZCB0aGUgYm9yZGVyIHZhbHVlcy4KKzwvdD4KKzwvc2VjdGlvbj4KKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9J0xUUCBRdWFudGl6YXRpb24nIGFuY2hvcj0nbHRw
X3F1YW50aXplcl9vdmVydmlld19zZWN0aW9uJz4KKzx0PgorRm9yIHZvaWNlZCBmcmFtZXMsIHRo
ZSBwcmVkaWN0aW9uIGFuYWx5c2lzIGRlc2NyaWJlZCBpbgorPHhyZWYgdGFyZ2V0PSdwcmVkX2Fu
YV92b2ljZWRfb3ZlcnZpZXdfc2VjdGlvbicgLz4gcmVzdWx0ZWQgaW4gZm91ciBzZXRzCisob25l
IHNldCBwZXIgc3ViZnJhbWUpIG9mIGZpdmUgTFRQIGNvZWZmaWNpZW50cywgcGx1cyBmb3VyIHdl
aWdodGluZyBtYXRyaWNlcy4KK1RoZSBMVFAgY29lZmZpY2llbnRzIGZvciBlYWNoIHN1YmZyYW1l
IGFyZSBxdWFudGl6ZWQgdXNpbmcgZW50cm9weSBjb25zdHJhaW5lZAordmVjdG9yIHF1YW50aXph
dGlvbi4KK0EgdG90YWwgb2YgdGhyZWUgdmVjdG9yIGNvZGVib29rcyBhcmUgYXZhaWxhYmxlIGZv
ciBxdWFudGl6YXRpb24sIHdpdGgKK2RpZmZlcmVudCByYXRlLWRpc3RvcnRpb24gdHJhZGUtb2Zm
cy4gVGhlIHRocmVlIGNvZGVib29rcyBoYXZlIDEwLCAyMCwgYW5kCis0MCB2ZWN0b3JzIGFuZCBh
dmVyYWdlIHJhdGVzIG9mIGFib3V0IDMsIDQsIGFuZCA1IGJpdHMgcGVyIHZlY3RvciwgcmVzcGVj
dGl2ZWx5LgorQ29uc2VxdWVudGx5LCB0aGUgZmlyc3QgY29kZWJvb2sgaGFzIGxhcmdlciBhdmVy
YWdlIHF1YW50aXphdGlvbiBkaXN0b3J0aW9uIGF0CithIGxvd2VyIHJhdGUsIHdoZXJlYXMgdGhl
IGxhc3QgY29kZWJvb2sgaGFzIHNtYWxsZXIgYXZlcmFnZSBxdWFudGl6YXRpb24KK2Rpc3RvcnRp
b24gYXQgYSBoaWdoZXIgcmF0ZS4KK0dpdmVuIHRoZSB3ZWlnaHRpbmcgbWF0cml4IFdfbHRwIGFu
ZCBMVFAgdmVjdG9yIGIsIHRoZSB3ZWlnaHRlZCByYXRlLWRpc3RvcnRpb24KK21lYXN1cmUgZm9y
IGEgY29kZWJvb2sgdmVjdG9yIGNiX2kgd2l0aCByYXRlIHJfaSBpcyBnaXZlIGJ5Cis8ZmlndXJl
IGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFUQVsKKyBS
RCA9IHUgKiAoYiAtIGNiX2kpJyAqIFdfbHRwICogKGIgLSBjYl9pKSArIHJfaSwKK11dPgorPC9h
cnR3b3JrPgorPC9maWd1cmU+Cit3aGVyZSB1IGlzIGEgZml4ZWQsIGhldXJpc3RpY2FsbHktZGV0
ZXJtaW5lZCBwYXJhbWV0ZXIgYmFsYW5jaW5nIHRoZSBkaXN0b3J0aW9uCithbmQgcmF0ZS4KK1do
aWNoIGNvZGVib29rIGdpdmVzIHRoZSBiZXN0IHBlcmZvcm1hbmNlIGZvciBhIGdpdmVuIExUUCB2
ZWN0b3IgZGVwZW5kcyBvbiB0aGUKK3dlaWdodGluZyBtYXRyaXggZm9yIHRoYXQgTFRQIHZlY3Rv
ci4KK0ZvciBleGFtcGxlLCBmb3IgYSBsb3cgdmFsdWVkIFdfbHRwLCBpdCBpcyBhZHZhbnRhZ2Vv
dXMgdG8gdXNlIHRoZSBjb2RlYm9vaword2l0aCAxMCB2ZWN0b3JzIGFzIGl0IGhhcyBhIGxvd2Vy
IGF2ZXJhZ2UgcmF0ZS4KK0ZvciBhIGxhcmdlIFdfbHRwLCBvbiB0aGUgb3RoZXIgaGFuZCwgaXQg
aXMgb2Z0ZW4gYmV0dGVyIHRvIHVzZSB0aGUgY29kZWJvb2sKK3dpdGggNDAgdmVjdG9ycywgYXMg
aXQgaXMgbW9yZSBsaWtlbHkgdG8gY29udGFpbiB0aGUgYmVzdCBjb2RlYm9vayB2ZWN0b3IuCitU
aGUgd2VpZ2h0aW5nIG1hdHJpeCBXX2x0cCBkZXBlbmRzIG1vc3RseSBvbiB0d28gYXNwZWN0cyBv
ZiB0aGUgaW5wdXQgc2lnbmFsLgorVGhlIGZpcnN0IGlzIHRoZSBwZXJpb2RpY2l0eSBvZiB0aGUg
c2lnbmFsOyB0aGUgbW9yZSBwZXJpb2RpYywgdGhlIGxhcmdlciBXX2x0cC4KK1RoZSBzZWNvbmQg
aXMgdGhlIGNoYW5nZSBpbiBzaWduYWwgZW5lcmd5IGluIHRoZSBjdXJyZW50IHN1YmZyYW1lLCBy
ZWxhdGl2ZSB0bwordGhlIHNpZ25hbCBvbmUgcGl0Y2ggbGFnIGVhcmxpZXIuCitBIGRlY2F5aW5n
IGVuZXJneSBsZWFkcyB0byBhIGxhcmdlciBXX2x0cCB0aGFuIGFuIGluY3JlYXNpbmcgZW5lcmd5
LgorQm90aCBhc3BlY3RzIGZsdWN0dWF0ZSByZWxhdGl2ZWx5IHNsb3dseSwgd2hpY2ggY2F1c2Vz
IHRoZSBXX2x0cCBtYXRyaWNlcyBmb3IKK2RpZmZlcmVudCBzdWJmcmFtZXMgb2Ygb25lIGZyYW1l
IG9mdGVuIHRvIGJlIHNpbWlsYXIuCitCZWNhdXNlIG9mIHRoaXMsIG9uZSBvZiB0aGUgdGhyZWUg
Y29kZWJvb2tzIHR5cGljYWxseSBnaXZlcyBnb29kIHBlcmZvcm1hbmNlCitmb3IgYWxsIHN1YmZy
YW1lcywgYW5kIHRoZXJlZm9yZSB0aGUgY29kZWJvb2sgc2VhcmNoIGZvciB0aGUgc3ViZnJhbWUg
TFRQCit2ZWN0b3JzIGlzIGNvbnN0cmFpbmVkIHRvIG9ubHkgYWxsb3cgY29kZWJvb2sgdmVjdG9y
cyB0byBiZSBjaG9zZW4gZnJvbSB0aGUKK3NhbWUgY29kZWJvb2ssIHJlc3VsdGluZyBpbiBhIHJh
dGUgcmVkdWN0aW9uLgorPC90PgorCis8dD4KK1RvIGZpbmQgdGhlIGJlc3QgY29kZWJvb2ssIGVh
Y2ggb2YgdGhlIHRocmVlIHZlY3RvciBjb2RlYm9va3MgaXMKK3VzZWQgdG8gcXVhbnRpemUgYWxs
IHN1YmZyYW1lIExUUCB2ZWN0b3JzIGFuZCBwcm9kdWNlIGEgY29tYmluZWQKK3dlaWdodGVkIHJh
dGUtZGlzdG9ydGlvbiBtZWFzdXJlIGZvciBlYWNoIHZlY3RvciBjb2RlYm9vay4KK1RoZSB2ZWN0
b3IgY29kZWJvb2sgd2l0aCB0aGUgbG93ZXN0IGNvbWJpbmVkIHJhdGUtZGlzdG9ydGlvbgorb3Zl
ciBhbGwgc3ViZnJhbWVzIGlzIGNob3Nlbi4gVGhlIHF1YW50aXplZCBMVFAgdmVjdG9ycyBhcmUg
dXNlZAoraW4gdGhlIG5vaXNlIHNoYXBpbmcgcXVhbnRpemVyLCBhbmQgdGhlIGluZGV4IG9mIHRo
ZSBjb2RlYm9vaworcGx1cyB0aGUgZm91ciBpbmRpY2VzIGZvciB0aGUgZm91ciBzdWJmcmFtZSBj
b2RlYm9vayB2ZWN0b3JzCithcmUgcGFzc2VkIG9uIHRvIHRoZSByYW5nZSBlbmNvZGVyLgorPC90
PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0nUHJlZmlsdGVyJz4KKzx0PgorSW4gdGhl
IHByZWZpbHRlciB0aGUgaW5wdXQgc2lnbmFsIGlzIGZpbHRlcmVkIHVzaW5nIHRoZSBzcGVjdHJh
bCB2YWxsZXkKK2RlLWVtcGhhc2lzIGZpbHRlciBjb2VmZmljaWVudHMgZnJvbSB0aGUgbm9pc2Ug
c2hhcGluZyBhbmFseXNpcworKHNlZSA8eHJlZiB0YXJnZXQ9J25vaXNlX3NoYXBpbmdfYW5hbHlz
aXNfb3ZlcnZpZXdfc2VjdGlvbicvPikuCitCeSBhcHBseWluZyBvbmx5IHRoZSBub2lzZSBzaGFw
aW5nIGFuYWx5c2lzIGZpbHRlciB0byB0aGUgaW5wdXQgc2lnbmFsLAoraXQgcHJvdmlkZXMgdGhl
IGlucHV0IHRvIHRoZSBub2lzZSBzaGFwaW5nIHF1YW50aXplci4KKzwvdD4KKzwvc2VjdGlvbj4K
KworPHNlY3Rpb24gdGl0bGU9J05vaXNlIFNoYXBpbmcgUXVhbnRpemVyJz4KKzx0PgorVGhlIG5v
aXNlIHNoYXBpbmcgcXVhbnRpemVyIGluZGVwZW5kZW50bHkgc2hhcGVzIHRoZSBzaWduYWwgYW5k
IGNvZGluZyBub2lzZQorc3BlY3RyYSB0byBvYnRhaW4gYSBwZXJjZXB0dWFsbHkgaGlnaGVyIHF1
YWxpdHkgYXQgdGhlIHNhbWUgYml0cmF0ZS4KKzwvdD4KKzx0PgorVGhlIHByZWZpbHRlciBvdXRw
dXQgc2lnbmFsIGlzIG11bHRpcGxpZWQgd2l0aCBhIGNvbXBlbnNhdGlvbiBnYWluIEcgY29tcHV0
ZWQKK2luIHRoZSBub2lzZSBzaGFwaW5nIGFuYWx5c2lzLiBUaGVuIHRoZSBvdXRwdXQgb2YgYSBz
eW50aGVzaXMgc2hhcGluZyBmaWx0ZXIKK2lzIGFkZGVkLCBhbmQgdGhlIG91dHB1dCBvZiBhIHBy
ZWRpY3Rpb24gZmlsdGVyIGlzIHN1YnRyYWN0ZWQgdG8gY3JlYXRlIGEKK3Jlc2lkdWFsIHNpZ25h
bC4KK1RoZSByZXNpZHVhbCBzaWduYWwgaXMgbXVsdGlwbGllZCBieSB0aGUgaW52ZXJzZSBxdWFu
dGl6ZWQgcXVhbnRpemF0aW9uIGdhaW4KK2Zyb20gdGhlIG5vaXNlIHNoYXBpbmcgYW5hbHlzaXMs
IGFuZCBpbnB1dCB0byBhIHNjYWxhciBxdWFudGl6ZXIuCitUaGUgcXVhbnRpemF0aW9uIGluZGlj
ZXMgb2YgdGhlIHNjYWxhciBxdWFudGl6ZXIgcmVwcmVzZW50IGEgc2lnbmFsIG9mIHB1bHNlcwor
dGhhdCBpcyBpbnB1dCB0byB0aGUgcHlyYW1pZCByYW5nZSBlbmNvZGVyLgorVGhlIHNjYWxhciBx
dWFudGl6ZXIgYWxzbyBvdXRwdXRzIGEgcXVhbnRpemF0aW9uIHNpZ25hbCwgd2hpY2ggaXMgbXVs
dGlwbGllZAorYnkgdGhlIHF1YW50aXplZCBxdWFudGl6YXRpb24gZ2FpbiBmcm9tIHRoZSBub2lz
ZSBzaGFwaW5nIGFuYWx5c2lzIHRvIGNyZWF0ZQorYW4gZXhjaXRhdGlvbiBzaWduYWwuCitUaGUg
b3V0cHV0IG9mIHRoZSBwcmVkaWN0aW9uIGZpbHRlciBpcyBhZGRlZCB0byB0aGUgZXhjaXRhdGlv
biBzaWduYWwgdG8gZm9ybQordGhlIHF1YW50aXplZCBvdXRwdXQgc2lnbmFsIHkobikuCitUaGUg
cXVhbnRpemVkIG91dHB1dCBzaWduYWwgeShuKSBpcyBpbnB1dCB0byB0aGUgc3ludGhlc2lzIHNo
YXBpbmcgYW5kCitwcmVkaWN0aW9uIGZpbHRlcnMuCis8L3Q+Cis8dD4KK09wdGlvbmFsbHkgdGhl
IG5vaXNlIHNoYXBpbmcgcXVhbnRpemVyIG9wZXJhdGVzIGluIGEgZGVsYXllZCBkZWNpc2lvbgor
bW9kZS4KK0luIHRoaXMgbW9kZSBpdCB1c2VzIGEgVml0ZXJiaSBhbGdvcml0aG0gdG8ga2VlcCB0
cmFjayBvZgorbXVsdGlwbGUgcm91bmRpbmcgY2hvaWNlcyBpbiB0aGUgcXVhbnRpemVyIGFuZCBz
ZWxlY3QgdGhlIGJlc3QKK29uZSBhZnRlciBhIGRlbGF5IG9mIDMyIHNhbXBsZXMuICBUaGlzIGlt
cHJvdmVzIHRoZSByYXRlL2Rpc3RvcnRpb24KK3BlcmZvcm1hbmNlIG9mIHRoZSBxdWFudGl6ZXIu
Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSdDb25zdGFudCBCaXRyYXRlIE1v
ZGUnPgorPHQ+CisgIFNJTEsgd2FzIGRlc2lnbmVkIHRvIHJ1biBpbiBWYXJpYWJsZSBCaXRyYXRl
IChWQlIpIG1vZGUuICBIb3dldmVyCisgIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gYWxz
byBoYXMgYSBDb25zdGFudCBCaXRyYXRlIChDQlIpIG1vZGUKKyAgZm9yIFNJTEsuICBJbiBDQlIg
bW9kZSBTSUxLIHdpbGwgYXR0ZW1wdCB0byBlbmNvZGUgZWFjaCBwYWNrZXQgd2l0aAorICBubyBt
b3JlIHRoYW4gdGhlIGFsbG93ZWQgbnVtYmVyIG9mIGJpdHMuICBUaGUgT3B1cyB3cmFwcGVyIGNv
ZGUKKyAgdGhlbiBwYWRzIHRoZSBiaXRzdHJlYW0gaWYgYW55IHVudXNlZCBiaXRzIGFyZSBsZWZ0
IGluIFNJTEsgbW9kZSwgb3IKKyAgZW5jb2RlcyB0aGUgaGlnaCBiYW5kIHdpdGggdGhlIHJlbWFp
bmluZyBudW1iZXIgb2YgYml0cyBpbiBIeWJyaWQgbW9kZS4KKyAgVGhlIG51bWJlciBvZiBwYXls
b2FkIGJpdHMgaXMgYWRqdXN0ZWQgYnkgY2hhbmdpbmcKKyAgdGhlIHF1YW50aXphdGlvbiBnYWlu
cyBhbmQgdGhlIHJhdGUvZGlzdG9ydGlvbiB0cmFkZW9mZiBpbiB0aGUgbm9pc2UKKyAgc2hhcGlu
ZyBxdWFudGl6ZXIsIGluIGFuIGl0ZXJhdGl2ZSBsb29wCisgIGFyb3VuZCB0aGUgbm9pc2Ugc2hh
cGluZyBxdWFudGl6ZXIgYW5kIGVudHJvcHkgY29kaW5nLgorICBDb21wYXJlZCB0byB0aGUgU0lM
SyBWQlIgbW9kZSwgdGhlIENCUiBtb2RlIGhhcyBsb3dlcgorICBhdWRpbyBxdWFsaXR5IGF0IGEg
Z2l2ZW4gYXZlcmFnZSBiaXRyYXRlLCBhbmQgYWxzbyBoYXMgaGlnaGVyCisgIGNvbXB1dGF0aW9u
YWwgY29tcGxleGl0eS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rp
b24+CisKKworPHNlY3Rpb24gdGl0bGU9IkNFTFQgRW5jb2RlciI+Cis8dD4KK01vc3Qgb2YgdGhl
IGFzcGVjdHMgb2YgdGhlIENFTFQgZW5jb2RlciBjYW4gYmUgZGlyZWN0bHkgZGVyaXZlZCBmcm9t
IHRoZSBkZXNjcmlwdGlvbgorb2YgdGhlIGRlY29kZXIuIEZvciBleGFtcGxlLCB0aGUgZmlsdGVy
cyBhbmQgcm90YXRpb25zIGluIHRoZSBlbmNvZGVyIGFyZSBzaW1wbHkgdGhlCitpbnZlcnNlIG9m
IHRoZSBvcGVyYXRpb24gcGVyZm9ybWVkIGJ5IHRoZSBkZWNvZGVyLiBTaW1pbGFybHksIHRoZSBx
dWFudGl6ZXJzIGdlbmVyYWxseQorb3B0aW1pemUgZm9yIHRoZSBtZWFuIHNxdWFyZSBlcnJvciAo
YmVjYXVzZSBub2lzZSBzaGFwaW5nIGlzIHBhcnQgb2YgdGhlIGJpdC1zdHJlYW0gaXRzZWxmKSwK
K3NvIG5vIHNwZWNpYWwgc2VhcmNoIGlzIHJlcXVpcmVkLiBGb3IgdGhpcyByZWFzb24sIG9ubHkg
dGhlIGxlc3Mgc3RyYWlnaHRmb3J3YXJkIGFzcGVjdHMgb2YgdGhlCitlbmNvZGVyIGFyZSBkZXNj
cmliZWQgaGVyZS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJwaXRjaC1wcmVmaWx0ZXIiIHRp
dGxlPSJQaXRjaCBQcmVmaWx0ZXIiPgorPHQ+VGhlIHBpdGNoIHByZWZpbHRlciBpcyBhcHBsaWVk
IGFmdGVyIHRoZSBwcmUtZW1waGFzaXMuIEl0IGlzIGFwcGxpZWQKK2luIHN1Y2ggYSB3YXkgYXMg
dG8gYmUgdGhlIGludmVyc2Ugb2YgdGhlIGRlY29kZXIncyBwb3N0LWZpbHRlci4gVGhlIG1haW4g
bm9uLW9idmlvdXMgYXNwZWN0IG9mIHRoZQorcHJlZmlsdGVyIGlzIHRoZSBzZWxlY3Rpb24gb2Yg
dGhlIHBpdGNoIHBlcmlvZC4gVGhlIHBpdGNoIHNlYXJjaCBzaG91bGQgYmUgb3B0aW1pemVkIGZv
ciB0aGUKK2ZvbGxvd2luZyBjcml0ZXJpYToKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PmNv
bnRpbnVpdHk6IGl0IGlzIGltcG9ydGFudCB0aGF0IHRoZSBwaXRjaCBwZXJpb2QKK2RvZXMgbm90
IGNoYW5nZSBhYnJ1cHRseSBiZXR3ZWVuIGZyYW1lczsgYW5kPC90PgorPHQ+YXZvaWRhbmNlIG9m
IHBpdGNoIG11bHRpcGxlczogd2hlbiB0aGUgcGVyaW9kIHVzZWQgaXMgYSBtdWx0aXBsZSBvZiB0
aGUgcmVhbCBwZXJpb2QKKyhsb3dlciBmcmVxdWVuY3kgZnVuZGFtZW50YWwpLCB0aGUgcG9zdC1m
aWx0ZXIgbG9zZXMgbW9zdCBvZiBpdHMgYWJpbGl0eSB0byByZWR1Y2Ugbm9pc2U8L3Q+Cis8L2xp
c3Q+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ibm9ybWFsaXphdGlvbiIg
dGl0bGU9IkJhbmRzIGFuZCBOb3JtYWxpemF0aW9uIj4KKzx0PgorVGhlIE1EQ1Qgb3V0cHV0IGlz
IGRpdmlkZWQgaW50byBiYW5kcyB0aGF0IGFyZSBkZXNpZ25lZCB0byBtYXRjaCB0aGUgZWFyJ3Mg
Y3JpdGljYWwKK2JhbmRzIGZvciB0aGUgc21hbGxlc3QgKDIuNSZuYnNwO21zKSBmcmFtZSBzaXpl
LiBUaGUgbGFyZ2VyIGZyYW1lIHNpemVzIHVzZSBpbnRlZ2VyCittdWx0aXBsZXMgb2YgdGhlIDIu
NSZuYnNwO21zIGxheW91dC4gRm9yIGVhY2ggYmFuZCwgdGhlIGVuY29kZXIKK2NvbXB1dGVzIHRo
ZSBlbmVyZ3kgdGhhdCB3aWxsIGxhdGVyIGJlIGVuY29kZWQuIEVhY2ggYmFuZCBpcyB0aGVuIG5v
cm1hbGl6ZWQgYnkgdGhlCitzcXVhcmUgcm9vdCBvZiB0aGUgPHNwYW54IHN0eWxlPSJzdHJvbmci
PnVucXVhbnRpemVkPC9zcGFueD4gZW5lcmd5LCBzdWNoIHRoYXQgZWFjaCBiYW5kIG5vdyBmb3Jt
cyBhIHVuaXQgdmVjdG9yIFguCitUaGUgZW5lcmd5IGFuZCB0aGUgbm9ybWFsaXphdGlvbiBhcmUg
Y29tcHV0ZWQgYnkgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKCkKK2FuZCBub3JtYWxpc2VfYmFuZHMo
KSAoYmFuZHMuYyksIHJlc3BlY3RpdmVseS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
YW5jaG9yPSJlbmVyZ3ktcXVhbnRpemF0aW9uIiB0aXRsZT0iRW5lcmd5IEVudmVsb3BlIFF1YW50
aXphdGlvbiI+CisKKzx0PgorRW5lcmd5IHF1YW50aXphdGlvbiAoYm90aCBjb2Fyc2UgYW5kIGZp
bmUpIGNhbiBiZSBlYXNpbHkgdW5kZXJzdG9vZCBmcm9tIHRoZSBkZWNvZGluZyBwcm9jZXNzLgor
Rm9yIGFsbCB1c2VmdWwgYml0cmF0ZXMsIHRoZSBjb2Fyc2UgcXVhbnRpemVyIGFsd2F5cyBjaG9v
c2VzIHRoZSBxdWFudGl6ZWQgbG9nIGVuZXJneSB2YWx1ZSB0aGF0CittaW5pbWl6ZXMgdGhlIGVy
cm9yIGZvciBlYWNoIGJhbmQuIE9ubHkgYXQgdmVyeSBsb3cgcmF0ZSBkb2VzIHRoZSBlbmNvZGVy
IGFsbG93IGxhcmdlciBlcnJvcnMgdG8KK21pbmltaXplIHRoZSByYXRlIGFuZCBhdm9pZCB1c2lu
ZyBtb3JlIGJpdHMgdGhhbiBhcmUgYXZhaWxhYmxlLiBXaGVuIHRoZQorYXZhaWxhYmxlIENQVSBy
ZXF1aXJlbWVudHMgYWxsb3cgaXQsIGl0IGlzIGJlc3QgdG8gdHJ5IGVuY29kaW5nIHRoZSBjb2Fy
c2UgZW5lcmd5IGJvdGggd2l0aCBhbmQgd2l0aG91dAoraW50ZXItZnJhbWUgcHJlZGljdGlvbiBz
dWNoIHRoYXQgdGhlIGJlc3QgcHJlZGljdGlvbiBtb2RlIGNhbiBiZSBzZWxlY3RlZC4gVGhlIG9w
dGltYWwgbW9kZSBkZXBlbmRzIG9uCit0aGUgY29kaW5nIHJhdGUsIHRoZSBhdmFpbGFibGUgYml0
cmF0ZSwgYW5kIHRoZSBjdXJyZW50IHJhdGUgb2YgcGFja2V0IGxvc3MuCis8L3Q+CisKKzx0PlRo
ZSBmaW5lIGVuZXJneSBxdWFudGl6ZXIgYWx3YXlzIGNob29zZXMgdGhlIHF1YW50aXplZCBsb2cg
ZW5lcmd5IHZhbHVlIHRoYXQKK21pbmltaXplcyB0aGUgZXJyb3IgZm9yIGVhY2ggYmFuZCBiZWNh
dXNlIHRoZSByYXRlIG9mIHRoZSBmaW5lIHF1YW50aXphdGlvbiBkZXBlbmRzIG9ubHkKK29uIHRo
ZSBiaXQgYWxsb2NhdGlvbiBhbmQgbm90IG9uIHRoZSB2YWx1ZXMgdGhhdCBhcmUgY29kZWQuCis8
L3Q+Cis8L3NlY3Rpb24+IDwhLS0gRW5lcmd5IHF1YW50IC0tPgorCis8c2VjdGlvbiB0aXRsZT0i
Qml0IEFsbG9jYXRpb24iPgorPHQ+VGhlIGVuY29kZXIgbXVzdCB1c2UgZXhhY3RseSB0aGUgc2Ft
ZSBiaXQgYWxsb2NhdGlvbiBwcm9jZXNzIGFzIHVzZWQgYnkgdGhlIGRlY29kZXIKK2FuZCBkZXNj
cmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJhbGxvY2F0aW9uIi8+LiBUaGUgdGhyZWUgbWVjaGFuaXNt
cyB0aGF0IGNhbiBiZSB1c2VkIGJ5IHRoZQorZW5jb2RlciB0byBhZGp1c3QgdGhlIGJpdHJhdGUg
b24gYSBmcmFtZS1ieS1mcmFtZSBiYXNpcyBhcmUgYmFuZCBib29zdCwgYWxsb2NhdGlvbiB0cmlt
LAorYW5kIGJhbmQgc2tpcHBpbmcuCis8L3Q+CisKKzxzZWN0aW9uIHRpdGxlPSJCYW5kIEJvb3N0
Ij4KKzx0PlRoZSByZWZlcmVuY2UgZW5jb2RlciBtYWtlcyBhIGRlY2lzaW9uIHRvIGJvb3N0IGEg
YmFuZCB3aGVuIHRoZSBlbmVyZ3kgb2YgdGhhdCBiYW5kIGlzIHNpZ25pZmljYW50bHkKK2hpZ2hl
ciB0aGFuIHRoYXQgb2YgdGhlIG5laWdoYm9yaW5nIGJhbmRzLiBMZXQgRV9qIGJlIHRoZSBsb2ct
ZW5lcmd5IG9mIGJhbmQgaiwgd2UgZGVmaW5lCis8bGlzdD4KKzx0PkRfaiA9IDIqRV9qIC0gRV9q
LTEgLSBFX2orMSA8L3Q+Cis8L2xpc3Q+CisKK1RoZSBhbGxvY2F0aW9uIG9mIGJhbmQgaiBpcyBi
b29zdGVkIG9uY2UgaWYgRF9qICZndDsgdDEgYW5kIHR3aWNlIGlmIERfaiAmZ3Q7IHQyLiBGb3Ig
TE0mZ3Q7PTEsIHQxPTIgYW5kIHQyPTQsCit3aGlsZSBmb3IgTE0mbHQ7MSwgdDE9MyBhbmQgdDI9
NS4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQWxsb2NhdGlvbiBUcmlt
Ij4KKzx0PlRoZSBhbGxvY2F0aW9uIHRyaW0gaXMgYSB2YWx1ZSBiZXR3ZWVuIDAgYW5kIDEwIChp
bmNsdXNpdmVseSkgdGhhdCBjb250cm9scyB0aGUgYWxsb2NhdGlvbgorYmFsYW5jZSBiZXR3ZWVu
IHRoZSBsb3cgYW5kIGhpZ2ggZnJlcXVlbmNpZXMuIFRoZSBlbmNvZGVyIHN0YXJ0cyB3aXRoIGEg
c2FmZSAiZGVmYXVsdCIgb2YgNQorYW5kIGRldmlhdGVzIGZyb20gdGhhdCBkZWZhdWx0IGluIHR3
byBkaWZmZXJlbnQgd2F5cy4gRmlyc3QgdGhlIHRyaW0gY2FuIGRldmlhdGUgYnkgKy8tIDIKK2Rl
cGVuZGluZyBvbiB0aGUgc3BlY3RyYWwgdGlsdCBvZiB0aGUgaW5wdXQgc2lnbmFsLiBGb3Igc2ln
bmFscyB3aXRoIG1vcmUgbG93IGZyZXF1ZW5jaWVzLCB0aGUKK3RyaW0gaXMgaW5jcmVhc2VkIGJ5
IHVwIHRvIDIsIHdoaWxlIGZvciBzaWduYWxzIHdpdGggbW9yZSBoaWdoIGZyZXF1ZW5jaWVzLCB0
aGUgdHJpbSBpcworZGVjcmVhc2VkIGJ5IHVwIHRvIDIuCitGb3Igc3RlcmVvIGlucHV0cywgdGhl
IHRyaW0gdmFsdWUgY2FuCitiZSBkZWNyZWFzZWQgYnkgdXAgdG8gNCB3aGVuIHRoZSBpbnRlci1j
aGFubmVsIGNvcnJlbGF0aW9uIGF0IGxvdyBmcmVxdWVuY3kgKGZpcnN0IDggYmFuZHMpCitpcyBo
aWdoLiA8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJCYW5kIFNraXBwaW5nIj4K
Kzx0PlRoZSBlbmNvZGVyIHVzZXMgYmFuZCBza2lwcGluZyB0byBlbnN1cmUgdGhhdCB0aGUgc2hh
cGUgb2YgdGhlIGJhbmRzIGlzIG9ubHkgY29kZWQKK2lmIHRoZXJlIGlzIGF0IGxlYXN0IDEvMiBi
aXQgcGVyIHNhbXBsZSBhdmFpbGFibGUgZm9yIHRoZSBQVlEuIElmIG5vdCwgdGhlbiBubyBiaXQg
aXMgYWxsb2NhdGVkCithbmQgZm9sZGluZyBpcyB1c2VkIGluc3RlYWQuIFRvIGVuc3VyZSBjb250
aW51aXR5IGluIHRoZSBhbGxvY2F0aW9uLCBzb21lIGFtb3VudCBvZiBoeXN0ZXJlc2lzIGlzCith
ZGRlZCB0byB0aGUgcHJvY2Vzcywgc3VjaCB0aGF0IGEgYmFuZCB0aGF0IHJlY2VpdmVkIFBWUSBi
aXRzIGluIHRoZSBwcmV2aW91cyBmcmFtZSBvbmx5IG5lZWRzIDcvMTYKK2JpdC9zYW1wbGUgdG8g
YmUgY29kZWQgZm9yIHRoZSBjdXJyZW50IGZyYW1lLCB3aGlsZSBhIGJhbmQgdGhhdCBkaWQgbm90
IHJlY2VpdmUgUFZRIGJpdHMgaW4gdGhlCitwcmV2aW91cyBmcmFtZXMgbmVlZHMgYXQgbGVhc3Qg
OS8xNiBiaXQvc2FtcGxlIHRvIGJlIGNvZGVkLjwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9u
PgorCis8c2VjdGlvbiB0aXRsZT0iU3RlcmVvIERlY2lzaW9ucyI+Cis8dD5CZWNhdXNlIENFTFQg
YXBwbGllcyBtaWQtc2lkZSBzdGVyZW8gY291cGxpbmcgaW4gdGhlIG5vcm1hbGl6ZWQgZG9tYWlu
LCBpdCBkb2VzIG5vdCBzdWZmZXIgZnJvbQoraW1wb3J0YW50IHN0ZXJlbyBpbWFnZSBwcm9ibGVt
cyBldmVuIHdoZW4gdGhlIHR3byBjaGFubmVscyBhcmUgY29tcGxldGVseSB1bmNvcnJlbGF0ZWQu
IEZvciB0aGlzIHJlYXNvbgoraXQgaXMgYWx3YXlzIHNhZmUgdG8gdXNlIHN0ZXJlbyBjb3VwbGlu
ZyBvbiBhbnkgYXVkaW8gZnJhbWUuIFRoYXQgYmVpbmcgc2FpZCwgdGhlcmUgYXJlIHNvbWUgZnJh
bWVzCitmb3Igd2hpY2ggZHVhbCAoaW5kZXBlbmRlbnQpIHN0ZXJlbyBpcyBzdGlsbCBtb3JlIGVm
ZmljaWVudC4gVGhpcyBkZWNpc2lvbiBpcyBtYWRlIGJ5IGNvbXBhcmluZyB0aGUgZXN0aW1hdGVk
CitlbnRyb3B5IHdpdGggYW5kIHdpdGhvdXQgY291cGxpbmcgb3ZlciB0aGUgZmlyc3QgMTMgYmFu
ZHMsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGZhY3QgdGhhdCBhbGwgYmFuZHMgd2l0aAorbW9y
ZSB0aGFuIHR3byBNRENUIGJpbnMgcmVxdWlyZSBvbmUgZXh0cmEgZGVncmVlIG9mIGZyZWVkb20g
d2hlbiBjb2RlZCBpbiBtaWQtc2lkZS4gTGV0IEwxX21zIGFuZCBMMV9scgorYmUgdGhlIEwxLW5v
cm0gb2YgdGhlIG1pZC1zaWRlIHZlY3RvciBhbmQgdGhlIEwxLW5vcm0gb2YgdGhlIGxlZnQtcmln
aHQgdmVjdG9yLCByZXNwZWN0aXZlbHkuIFRoZSBkZWNpc2lvbgordG8gdXNlIG1pZC1zaWRlIGlz
IG1hZGUgaWYgYW5kIG9ubHkgaWYKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBh
bGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyBMMV9tcyAgICAgICAgICBMMV9scgorLS0tLS0tLS0g
ICAgPCAgIC0tLS0tCitiaW5zICsgRSAgICAgICAgYmlucworXV0+PC9hcnR3b3JrPgorPC9maWd1
cmU+Cit3aGVyZSBiaW5zIGlzIHRoZSBudW1iZXIgb2YgTURDVCBiaW5zIGluIHRoZSBmaXJzdCAx
MyBiYW5kcyBhbmQgRSBpcyB0aGUgbnVtYmVyIG9mIGV4dHJhIGRlZ3JlZXMgb2YKK2ZyZWVkb20g
Zm9yIG1pZC1zaWRlIGNvZGluZy4gRm9yIExNPjEsIEU9MTMsIG90aGVyd2lzZSBFPTUuCis8L3Q+
CisKKzx0PlRoZSByZWZlcmVuY2UgZW5jb2RlciBkZWNpZGVzIG9uIHRoZSBpbnRlbnNpdHkgc3Rl
cmVvIHRocmVzaG9sZCBiYXNlZCBvbiB0aGUgYml0cmF0ZSBhbG9uZS4gQWZ0ZXIKK3Rha2luZyBp
bnRvIGFjY291bnQgdGhlIGZyYW1lIHNpemUgYnkgc3VidHJhY3RpbmcgODAgYml0cyBwZXIgZnJh
bWUgZm9yIGNvYXJzZSBlbmVyZ3ksIHRoZSBmaXJzdAorYmFuZCB1c2luZyBpbnRlbnNpdHkgY29k
aW5nIGlzIGFzIGZvbGxvd3M6Cis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJpbnRlbnNpdHkt
dGhyZXNob2xkcyIKKyB0aXRsZT0iVGhyZXNob2xkcyBmb3IgSW50ZW5zaXR5IFN0ZXJlbyI+Cis8
dHRjb2wgYWxpZ249J2NlbnRlcic+Yml0cmF0ZSAoa2Ivcyk8L3R0Y29sPgorPHR0Y29sIGFsaWdu
PSdjZW50ZXInPnN0YXJ0IGJhbmQ8L3R0Y29sPgorPGM+Jmx0OzM1PC9jPiAgICAgIDxjPjg8L2M+
Cis8Yz4zNS01MDwvYz4gICAgICA8Yz4xMjwvYz4KKzxjPjUwLTY4PC9jPiAgICAgIDxjPjE2PC9j
PgorPGM+ODQtODQ8L2M+ICAgICAgPGM+MTg8L2M+Cis8Yz44NC0xMDI8L2M+ICAgICA8Yz4xOTwv
Yz4KKzxjPjEwMi0xMzA8L2M+ICAgICA8Yz4yMDwvYz4KKzxjPiZndDsxMzA8L2M+ICAgICA8Yz5k
aXNhYmxlZDwvYz4KKzwvdGV4dHRhYmxlPgorCisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0
bGU9IlRpbWUtRnJlcXVlbmN5IERlY2lzaW9uIj4KKzx0PgorVGhlIGNob2ljZSBvZiB0aW1lLWZy
ZXF1ZW5jeSByZXNvbHV0aW9uIHVzZWQgaW4gPHhyZWYgdGFyZ2V0PSJ0Zi1jaGFuZ2UiPjwveHJl
Zj4gaXMgYmFzZWQgb24KK1ItRCBvcHRpbWl6YXRpb24uIFRoZSBkaXN0b3J0aW9uIGlzIHRoZSBM
MS1ub3JtIChzdW0gb2YgYWJzb2x1dGUgdmFsdWVzKSBvZiBlYWNoIGJhbmQKK2FmdGVyIGVhY2gg
VEYgcmVzb2x1dGlvbiB1bmRlciBjb25zaWRlcmF0aW9uLiBUaGUgTDEgbm9ybSBpcyB1c2VkIGJl
Y2F1c2UgaXQgcmVwcmVzZW50cyB0aGUgZW50cm9weQorZm9yIGEgTGFwbGFjaWFuIHNvdXJjZS4g
VGhlIG51bWJlciBvZiBiaXRzIHJlcXVpcmVkIHRvIGNvZGUgYSBjaGFuZ2UgaW4gVEYgcmVzb2x1
dGlvbiBiZXR3ZWVuCit0d28gYmFuZHMgaXMgaGlnaGVyIHRoYW4gdGhlIGNvc3Qgb2YgaGF2aW5n
IHRob3NlIHR3byBiYW5kcyB1c2UgdGhlIHNhbWUgcmVzb2x1dGlvbiwgd2hpY2ggaXMKK3doYXQg
cmVxdWlyZXMgdGhlIFItRCBvcHRpbWl6YXRpb24uIFRoZSBvcHRpbWFsIGRlY2lzaW9uIGlzIGNv
bXB1dGVkIHVzaW5nIHRoZSBWaXRlcmJpIGFsZ29yaXRobS4KK1NlZSB0Zl9hbmFseXNpcygpIGlu
IGNlbHQvY2VsdC5jLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iU3ByZWFk
aW5nIFZhbHVlcyBEZWNpc2lvbiI+Cis8dD4KK1RoZSBjaG9pY2Ugb2YgdGhlIHNwcmVhZGluZyB2
YWx1ZSBpbiA8eHJlZiB0YXJnZXQ9InNwcmVhZCB2YWx1ZXMiPjwveHJlZj4gaGFzIGFuCitpbXBh
Y3Qgb24gdGhlIG5hdHVyZSBvZiB0aGUgY29kaW5nIG5vaXNlIGludHJvZHVjZWQgYnkgQ0VMVC4g
VGhlIGxhcmdlciB0aGUgZl9yIHZhbHVlLCB0aGUKK2xvd2VyIHRoZSBpbXBhY3Qgb2YgdGhlIHJv
dGF0aW9uLCBhbmQgdGhlIG1vcmUgdG9uYWwgdGhlIGNvZGluZyBub2lzZS4gVGhlCittb3JlIHRv
bmFsIHRoZSBzaWduYWwsIHRoZSBtb3JlIHRvbmFsIHRoZSBub2lzZSBzaG91bGQgYmUsIHNvIHRo
ZSBDRUxUIGVuY29kZXIgZGV0ZXJtaW5lcwordGhlIG9wdGltYWwgdmFsdWUgZm9yIGZfciBieSBl
c3RpbWF0aW5nIGhvdyB0b25hbCB0aGUgc2lnbmFsIGlzLiBUaGUgdG9uYWxpdHkgZXN0aW1hdGUK
K2lzIGJhc2VkIG9uIGRpc2NyZXRlIHBkZiAoNC1iaW4gaGlzdG9ncmFtKSBvZiBlYWNoIGJhbmQu
IEJhbmRzIHRoYXQgaGF2ZSBhIGxhcmdlIG51bWJlciBvZiBzbWFsbAordmFsdWVzIGFyZSBjb25z
aWRlcmVkIG1vcmUgdG9uYWwgYW5kIGEgZGVjaXNpb24gaXMgbWFkZSBieSBjb21iaW5pbmcgYWxs
IGJhbmRzIHdpdGggbW9yZSB0aGFuCis4IHNhbXBsZXMuIFNlZSBzcHJlYWRpbmdfZGVjaXNpb24o
KSBpbiBjZWx0L2JhbmRzLmMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0i
cHZxIiB0aXRsZT0iU3BoZXJpY2FsIFZlY3RvciBRdWFudGl6YXRpb24iPgorPHQ+Q0VMVCB1c2Vz
IGEgUHlyYW1pZCBWZWN0b3IgUXVhbnRpemF0aW9uIChQVlEpIDx4cmVmIHRhcmdldD0iUFZRIj48
L3hyZWY+Citjb2RlYm9vayBmb3IgcXVhbnRpemluZyB0aGUgZGV0YWlscyBvZiB0aGUgc3BlY3Ry
dW0gaW4gZWFjaCBiYW5kIHRoYXQgaGF2ZSBub3QKK2JlZW4gcHJlZGljdGVkIGJ5IHRoZSBwaXRj
aCBwcmVkaWN0b3IuIFRoZSBQVlEgY29kZWJvb2sgY29uc2lzdHMgb2YgYWxsIHN1bXMKK29mIEsg
c2lnbmVkIHB1bHNlcyBpbiBhIHZlY3RvciBvZiBOIHNhbXBsZXMsIHdoZXJlIHR3byBwdWxzZXMg
YXQgdGhlIHNhbWUgcG9zaXRpb24KK2FyZSByZXF1aXJlZCB0byBoYXZlIHRoZSBzYW1lIHNpZ24u
IFRodXMgdGhlIGNvZGVib29rIGluY2x1ZGVzCithbGwgaW50ZWdlciBjb2RldmVjdG9ycyB5IG9m
IE4gZGltZW5zaW9ucyB0aGF0IHNhdGlzZnkgc3VtKGFicyh5KGopKSkgPSBLLgorPC90PgorCis8
dD4KK0luIGJhbmRzIHdoZXJlIHRoZXJlIGFyZSBzdWZmaWNpZW50IGJpdHMgYWxsb2NhdGVkIFBW
USBpcyB1c2VkIHRvIGVuY29kZQordGhlIHVuaXQgdmVjdG9yIHRoYXQgcmVzdWx0cyBmcm9tIHRo
ZSBub3JtYWxpemF0aW9uIGluCis8eHJlZiB0YXJnZXQ9Im5vcm1hbGl6YXRpb24iPjwveHJlZj4g
ZGlyZWN0bHkuIEdpdmVuIGEgUFZRIGNvZGV2ZWN0b3IgeSwKK3RoZSB1bml0IHZlY3RvciBYIGlz
IG9idGFpbmVkIGFzIFggPSB5L3x8eXx8LCB3aGVyZSB8fC58fCBkZW5vdGVzIHRoZQorTDIgbm9y
bS4KKzwvdD4KKworCis8c2VjdGlvbiBhbmNob3I9InB2cS1zZWFyY2giIHRpdGxlPSJQVlEgU2Vh
cmNoIj4KKworPHQ+CitUaGUgc2VhcmNoIGZvciB0aGUgYmVzdCBjb2RldmVjdG9yIHkgaXMgcGVy
Zm9ybWVkIGJ5IGFsZ19xdWFudCgpCisodnEuYykuIFRoZXJlIGFyZSBzZXZlcmFsIHBvc3NpYmxl
IGFwcHJvYWNoZXMgdG8gdGhlCitzZWFyY2gsIHdpdGggYSB0cmFkZS1vZmYgYmV0d2VlbiBxdWFs
aXR5IGFuZCBjb21wbGV4aXR5LiBUaGUgbWV0aG9kIHVzZWQgaW4gdGhlIHJlZmVyZW5jZQoraW1w
bGVtZW50YXRpb24gY29tcHV0ZXMgYW4gaW5pdGlhbCBjb2Rld29yZCB5MSBieSBwcm9qZWN0aW5n
IHRoZSBub3JtYWxpemVkIHNwZWN0cnVtCitYIG9udG8gdGhlIGNvZGVib29rIHB5cmFtaWQgb2Yg
Sy0xIHB1bHNlczoKKzwvdD4KKzx0PgoreTAgPSB0cnVuY2F0ZV90b3dhcmRzX3plcm8oIChLLTEp
ICogWCAvIHN1bShhYnMoWCkpKQorPC90PgorCis8dD4KK0RlcGVuZGluZyBvbiBOLCBLIGFuZCB0
aGUgaW5wdXQgZGF0YSwgdGhlIGluaXRpYWwgY29kZXdvcmQgeTAgbWF5IGNvbnRhaW4gZnJvbQor
MCB0byBLLTEgbm9uLXplcm8gdmFsdWVzLiBBbGwgdGhlIHJlbWFpbmluZyBwdWxzZXMsIHdpdGgg
dGhlIGV4Y2VwdGlvbiBvZiB0aGUgbGFzdCBvbmUsCithcmUgZm91bmQgaXRlcmF0aXZlbHkgd2l0
aCBhIGdyZWVkeSBzZWFyY2ggdGhhdCBtaW5pbWl6ZXMgdGhlIG5vcm1hbGl6ZWQgY29ycmVsYXRp
b24KK2JldHdlZW4geSBhbmQgWDoKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBh
bGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgIFQKK0ogPSAtWCAqIHkgLyB8fHl8fAorXV0+
PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+CisKKzx0PgorVGhlIHNlYXJjaCBkZXNjcmliZWQg
YWJvdmUgaXMgY29uc2lkZXJlZCB0byBiZSBhIGdvb2QgdHJhZGUtb2ZmIGJldHdlZW4gcXVhbGl0
eQorYW5kIGNvbXB1dGF0aW9uYWwgY29zdC4gSG93ZXZlciwgdGhlcmUgYXJlIG90aGVyIHBvc3Np
YmxlIHdheXMgdG8gc2VhcmNoIHRoZSBQVlEKK2NvZGVib29rIGFuZCB0aGUgaW1wbGVtZW50ZXJz
IE1BWSB1c2UgYW55IG90aGVyIHNlYXJjaCBtZXRob2RzLiBTZWUgYWxnX3F1YW50KCkgaW4gY2Vs
dC92cS5jLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImN3cnMtZW5jb2Rl
ciIgdGl0bGU9IlBWUSBFbmNvZGluZyI+CisKKzx0PgorVGhlIHZlY3RvciB0byBlbmNvZGUsIFgs
IGlzIGNvbnZlcnRlZCBpbnRvIGFuIGluZGV4IGkgc3VjaCB0aGF0CisgMCZuYnNwOyZsdDs9Jm5i
c3A7aSZuYnNwOyZsdDsmbmJzcDtWKE4sSykgYXMgZm9sbG93cy4KK0xldCBpJm5ic3A7PSZuYnNw
OzAgYW5kIGsmbmJzcDs9Jm5ic3A7MC4KK1RoZW4gZm9yIGombmJzcDs9Jm5ic3A7KE4mbmJzcDst
Jm5ic3A7MSkgZG93biB0byAwLCBpbmNsdXNpdmUsIGRvOgorPGxpc3Qgc3R5bGU9Im51bWJlcnMi
PgorPHQ+CitJZiBrJm5ic3A7PiZuYnNwOzAsIHNldAorIGkmbmJzcDs9Jm5ic3A7aSZuYnNwOysm
bmJzcDsoVihOLWotMSxrLTEpJm5ic3A7KyZuYnNwO1YoTi1qLGstMSkpLzIuCis8L3Q+Cis8dD5T
ZXQgayZuYnNwOz0mbmJzcDtrJm5ic3A7KyZuYnNwO2FicyhYW2pdKS48L3Q+Cis8dD4KK0lmIFhb
al0mbmJzcDsmbHQ7Jm5ic3A7MCwgc2V0CisgaSZuYnNwOz0mbmJzcDtpJm5ic3A7KyZuYnNwOyhW
KE4tai0xLGspJm5ic3A7KyZuYnNwO1YoTi1qLGspKS8yLgorPC90PgorPC9saXN0PgorPC90Pgor
Cis8dD4KK1RoZSBpbmRleCBpIGlzIHRoZW4gZW5jb2RlZCB1c2luZyB0aGUgcHJvY2VkdXJlIGlu
CisgPHhyZWYgdGFyZ2V0PSJlbmNvZGluZy1pbnRzIi8+IHdpdGggZnQmbmJzcDs9Jm5ic3A7VihO
LEspLgorPC90PgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworCisKKworCis8L3NlY3Rp
b24+CisKKzwvc2VjdGlvbj4KKworCis8c2VjdGlvbiBhbmNob3I9ImNvbmZvcm1hbmNlIiB0aXRs
ZT0iQ29uZm9ybWFuY2UiPgorCis8dD4KK0l0IGlzIG91ciBpbnRlbnRpb24gdG8gYWxsb3cgdGhl
IGdyZWF0ZXN0IHBvc3NpYmxlIGNob2ljZSBvZiBmcmVlZG9tIGluCitpbXBsZW1lbnRpbmcgdGhl
IHNwZWNpZmljYXRpb24uIEZvciB0aGlzIHJlYXNvbiwgb3V0c2lkZSBvZiB0aGUgZXhjZXB0aW9u
cworbm90ZWQgaW4gdGhpcyBzZWN0aW9uLCBjb25mb3JtYW5jZSBpcyBkZWZpbmVkIHRocm91Z2gg
dGhlIHJlZmVyZW5jZQoraW1wbGVtZW50YXRpb24gb2YgdGhlIGRlY29kZXIgcHJvdmlkZWQgaW4g
PHhyZWYgdGFyZ2V0PSJyZWYtaW1wbGVtZW50YXRpb24iLz4uCitBbHRob3VnaCB0aGlzIGRvY3Vt
ZW50IGluY2x1ZGVzIGFuIEVuZ2xpc2ggZGVzY3JpcHRpb24gb2YgdGhlIGNvZGVjLCBzaG91bGQK
K3RoZSBkZXNjcmlwdGlvbiBjb250cmFkaWN0IHRoZSBzb3VyY2UgY29kZSBvZiB0aGUgcmVmZXJl
bmNlIGltcGxlbWVudGF0aW9uLAordGhlIGxhdHRlciBzaGFsbCB0YWtlIHByZWNlZGVuY2UuCis8
L3Q+CisKKzx0PgorQ29tcGxpYW5jZSB3aXRoIHRoaXMgc3BlY2lmaWNhdGlvbiBtZWFucyB0aGF0
IGluIGFkZGl0aW9uIHRvIGZvbGxvd2luZyB0aGUgbm9ybWF0aXZlIGtleXdvcmRzIGluIHRoaXMg
ZG9jdW1lbnQsCisgYSBkZWNvZGVyJ3Mgb3V0cHV0IE1VU1QgYWxzbyBiZQorIHdpdGhpbiB0aGUg
dGhyZXNob2xkcyBzcGVjaWZpZWQgYnkgdGhlIG9wdXNfY29tcGFyZS5jIHRvb2wgKGluY2x1ZGVk
Cisgd2l0aCB0aGUgY29kZSkgd2hlbiBjb21wYXJlZCB0byB0aGUgcmVmZXJlbmNlIGltcGxlbWVu
dGF0aW9uIGZvciBlYWNoIG9mIHRoZQorIHRlc3QgdmVjdG9ycyBwcm92aWRlZCAoc2VlIDx4cmVm
IHRhcmdldD0idGVzdC12ZWN0b3JzIj48L3hyZWY+KSBhbmQgZm9yIGVhY2ggb3V0cHV0Cisgc2Ft
cGxpbmcgcmF0ZSBhbmQgY2hhbm5lbCBjb3VudCBzdXBwb3J0ZWQuIEluIGFkZGl0aW9uLCBhIGNv
bXBsaWFudAorIGRlY29kZXIgaW1wbGVtZW50YXRpb24gTVVTVCBoYXZlIHRoZSBzYW1lIGZpbmFs
IHJhbmdlIGRlY29kZXIgc3RhdGUgYXMgdGhhdCBvZiB0aGUKKyByZWZlcmVuY2UgZGVjb2Rlci4g
SXQgaXMgdGhlcmVmb3JlIFJFQ09NTUVOREVEIHRoYXQgdGhlCisgZGVjb2RlciBpbXBsZW1lbnQg
dGhlIHNhbWUgZnVuY3Rpb25hbCBiZWhhdmlvciBhcyB0aGUgcmVmZXJlbmNlLgorCisgQSBkZWNv
ZGVyIGltcGxlbWVudGF0aW9uIGlzIG5vdCByZXF1aXJlZCB0byBzdXBwb3J0IGFsbCBvdXRwdXQg
c2FtcGxpbmcKKyByYXRlcyBvciBhbGwgb3V0cHV0IGNoYW5uZWwgY291bnRzLgorPC90PgorCis8
c2VjdGlvbiB0aXRsZT0iVGVzdGluZyI+Cis8dD4KK1VzaW5nIHRoZSByZWZlcmVuY2UgY29kZSBw
cm92aWRlZCBpbiA8eHJlZiB0YXJnZXQ9InJlZi1pbXBsZW1lbnRhdGlvbiI+PC94cmVmPiwKK2Eg
dGVzdCB2ZWN0b3IgY2FuIGJlIGRlY29kZWQgd2l0aAorPGxpc3Q+Cis8dD5vcHVzX2RlbW8gLWQg
Jmx0O3JhdGUmZ3Q7ICZsdDtjaGFubmVscyZndDsgdGVzdHZlY3RvclguYml0IHRlc3RYLm91dDwv
dD4KKzwvbGlzdD4KK3doZXJlICZsdDtyYXRlJmd0OyBpcyB0aGUgc2FtcGxpbmcgcmF0ZSBhbmQg
Y2FuIGJlIDgwMDAsIDEyMDAwLCAxNjAwMCwgMjQwMDAsIG9yIDQ4MDAwLCBhbmQKKyZsdDtjaGFu
bmVscyZndDsgaXMgMSBmb3IgbW9ubyBvciAyIGZvciBzdGVyZW8uCis8L3Q+CisKKzx0PgorSWYg
dGhlIHJhbmdlIGRlY29kZXIgc3RhdGUgaXMgaW5jb3JyZWN0IGZvciBvbmUgb2YgdGhlIGZyYW1l
cywgdGhlIGRlY29kZXIgd2lsbCBleGl0IHdpdGgKKyJFcnJvcjogUmFuZ2UgY29kZXIgc3RhdGUg
bWlzbWF0Y2ggYmV0d2VlbiBlbmNvZGVyIGFuZCBkZWNvZGVyIi4gSWYgdGhlIGRlY29kZXIgc3Vj
Y2VlZHMsIHRoZW4KK3RoZSBvdXRwdXQgY2FuIGJlIGNvbXBhcmVkIHdpdGggdGhlICJyZWZlcmVu
Y2UiIG91dHB1dCB3aXRoCis8bGlzdD4KKzx0Pm9wdXNfY29tcGFyZSAtcyAtciAmbHQ7cmF0ZSZn
dDsgdGVzdHZlY3RvclguZGVjIHRlc3RYLm91dDwvdD4KKzwvbGlzdD4KK2ZvciBzdGVyZW8gb3IK
KzxsaXN0PgorPHQ+b3B1c19jb21wYXJlIC1yICZsdDtyYXRlJmd0OyB0ZXN0dmVjdG9yWC5kZWMg
dGVzdFgub3V0PC90PgorPC9saXN0PgorZm9yIG1vbm8uCis8L3Q+CisKKzx0PkluIGFkZGl0aW9u
IHRvIGluZGljYXRpbmcgd2hldGhlciB0aGUgdGVzdCB2ZWN0b3IgY29tcGFyaXNvbiBwYXNzZXMs
IHRoZSBvcHVzX2NvbXBhcmUgdG9vbAorb3V0cHV0cyBhbiAiT3B1cyBxdWFsaXR5IG1ldHJpYyIg
dGhhdCBpbmRpY2F0ZXMgaG93IHdlbGwgdGhlIHRlc3RlZCBkZWNvZGVyIG1hdGNoZXMgdGhlCity
ZWZlcmVuY2UgaW1wbGVtZW50YXRpb24uIEEgcXVhbGl0eSBvZiAwIGNvcnJlc3BvbmRzIHRvIHRo
ZSBwYXNzaW5nIHRocmVzaG9sZCwgd2hpbGUKK2EgcXVhbGl0eSBvZiAxMDAgaXMgdGhlIGhpZ2hl
c3QgcG9zc2libGUgdmFsdWUgYW5kIG1lYW5zIHRoYXQgdGhlIG91dHB1dCBvZiB0aGUgdGVzdGVk
IGRlY29kZXIgaXMgaWRlbnRpY2FsIHRvIHRoZSByZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uLiBU
aGUgcGFzc2luZyB0aHJlc2hvbGQgKHF1YWxpdHkgMCkgd2FzIGNhbGlicmF0ZWQgaW4gc3VjaCBh
IHdheSB0aGF0IGl0IGNvcnJlc3BvbmRzIHRvCithZGRpdGl2ZSB3aGl0ZSBub2lzZSB3aXRoIGEg
NDggZEIgU05SIChzaW1pbGFyIHRvIHdoYXQgY2FuIGJlIG9idGFpbmVkIG9uIGEgY2Fzc2V0dGUg
ZGVjaykuCitJdCBpcyBzdGlsbCBwb3NzaWJsZSBmb3IgYW4gaW1wbGVtZW50YXRpb24gdG8gc291
bmQgdmVyeSBnb29kIHdpdGggc3VjaCBhIGxvdyBxdWFsaXR5IG1lYXN1cmUKKyhlLmcuIGlmIHRo
ZSBkZXZpYXRpb24gaXMgZHVlIHRvIGluYXVkaWJsZSBwaGFzZSBkaXN0b3J0aW9uKSwgYnV0IHVu
bGVzcyB0aGlzIGlzIHZlcmlmaWVkIGJ5CitsaXN0ZW5pbmcgdGVzdHMsIGl0IGlzIFJFQ09NTUVO
REVEIHRoYXQgaW1wbGVtZW50YXRpb25zIGFjaGlldmUgYSBxdWFsaXR5IGFib3ZlIDkwIGZvciA0
OCZuYnNwO2tIegorZGVjb2RpbmcuIEZvciBvdGhlciBzYW1wbGluZyByYXRlcywgaXQgaXMgbm9y
bWFsIGZvciB0aGUgcXVhbGl0eSBtZXRyaWMgdG8gYmUgbG93ZXIKKyh0eXBpY2FsbHkgYXMgbG93
IGFzIDUwIGV2ZW4gZm9yIGEgZ29vZCBpbXBsZW1lbnRhdGlvbikgYmVjYXVzZSBvZiBoYXJtbGVz
cyBtaXNtYXRjaCB3aXRoCit0aGUgZGVsYXkgYW5kIHBoYXNlIG9mIHRoZSBpbnRlcm5hbCBzYW1w
bGluZyByYXRlIGNvbnZlcnNpb24uCis8L3Q+CisKKzx0PgorT24gUE9TSVggZW52aXJvbm1lbnRz
LCB0aGUgcnVuX3ZlY3RvcnMuc2ggc2NyaXB0IGNhbiBiZSB1c2VkIHRvIHZlcmlmeSBhbGwgdGVz
dAordmVjdG9ycy4gVGhpcyBjYW4gYmUgZG9uZSB3aXRoCis8bGlzdD4KKzx0PnJ1bl92ZWN0b3Jz
LnNoICZsdDtleGVjIHBhdGgmZ3Q7ICZsdDt2ZWN0b3IgcGF0aCZndDsgJmx0O3JhdGUmZ3Q7PC90
PgorPC9saXN0Pgord2hlcmUgJmx0O2V4ZWMgcGF0aCZndDsgaXMgdGhlIGRpcmVjdG9yeSB3aGVy
ZSB0aGUgb3B1c19kZW1vIGFuZCBvcHVzX2NvbXBhcmUgZXhlY3V0YWJsZXMKK2FyZSBidWlsdCBh
bmQgJmx0O3ZlY3RvciBwYXRoJmd0OyBpcyB0aGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlIHRl
c3QgdmVjdG9ycy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJvcHVzLWN1
c3RvbSIgdGl0bGU9Ik9wdXMgQ3VzdG9tIj4KKzx0PgorT3B1cyBDdXN0b20gaXMgYW4gT1BUSU9O
QUwgcGFydCBvZiB0aGUgc3BlY2lmaWNhdGlvbiB0aGF0IGlzIGRlZmluZWQgdG8KK2hhbmRsZSBz
cGVjaWFsIHNhbXBsZSByYXRlcyBhbmQgZnJhbWUgcmF0ZXMgdGhhdCBhcmUgbm90IHN1cHBvcnRl
ZCBieSB0aGUKK21haW4gT3B1cyBzcGVjaWZpY2F0aW9uLiBVc2Ugb2YgT3B1cyBDdXN0b20gaXMg
ZGlzY291cmFnZWQgZm9yIGFsbCBidXQgdmVyeQorc3BlY2lhbCBhcHBsaWNhdGlvbnMgZm9yIHdo
aWNoIGEgZnJhbWUgc2l6ZSBkaWZmZXJlbnQgZnJvbSAyLjUsIDUsIDEwLCBvciAyMCZuYnNwO21z
IGlzCituZWVkZWQgKGZvciBlaXRoZXIgY29tcGxleGl0eSBvciBsYXRlbmN5IHJlYXNvbnMpLiBC
ZWNhdXNlIE9wdXMgQ3VzdG9tIGlzCitvcHRpb25hbCwgc3RyZWFtcyBlbmNvZGVkIHVzaW5nIE9w
dXMgQ3VzdG9tIGNhbm5vdCBiZSBleHBlY3RlZCB0byBiZSBkZWNvZGFibGUgYnkgYWxsIE9wdXMK
K2ltcGxlbWVudGF0aW9ucy4gQWxzbywgYmVjYXVzZSBubyBpbi1iYW5kIG1lY2hhbmlzbSBleGlz
dHMgZm9yIHNwZWNpZnlpbmcgdGhlIHNhbXBsaW5nCityYXRlIGFuZCBmcmFtZSBzaXplIG9mIE9w
dXMgQ3VzdG9tIHN0cmVhbXMsIG91dC1vZi1iYW5kIHNpZ25hbGluZyBpcyByZXF1aXJlZC4KK0lu
IE9wdXMgQ3VzdG9tIG9wZXJhdGlvbiwgb25seSB0aGUgQ0VMVCBsYXllciBpcyBhdmFpbGFibGUs
IHVzaW5nIHRoZSBvcHVzX2N1c3RvbV8qIGZ1bmN0aW9uCitjYWxscyBpbiBvcHVzX2N1c3RvbS5o
LgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2Vj
dXJpdHkiIHRpdGxlPSJTZWN1cml0eSBDb25zaWRlcmF0aW9ucyI+CisKKzx0PgorSW1wbGVtZW50
YXRpb25zIG9mIHRoZSBPcHVzIGNvZGVjIG5lZWQgdG8gdGFrZSBhcHByb3ByaWF0ZSBzZWN1cml0
eSBjb25zaWRlcmF0aW9ucworaW50byBhY2NvdW50LCBhcyBvdXRsaW5lZCBpbiA8eHJlZiB0YXJn
ZXQ9IkRPUyIvPi4KK0l0IGlzIGV4dHJlbWVseSBpbXBvcnRhbnQgZm9yIHRoZSBkZWNvZGVyIHRv
IGJlIHJvYnVzdCBhZ2FpbnN0IG1hbGljaW91cworcGF5bG9hZHMuCitNYWxpY2lvdXMgcGF5bG9h
ZHMgbXVzdCBub3QgY2F1c2UgdGhlIGRlY29kZXIgdG8gb3ZlcnJ1biBpdHMgYWxsb2NhdGVkIG1l
bW9yeQorIG9yIHRvIHRha2UgYW4gZXhjZXNzaXZlIGFtb3VudCBvZiByZXNvdXJjZXMgdG8gZGVj
b2RlLgorQWx0aG91Z2ggcHJvYmxlbXMKK2luIGVuY29kZXJzIGFyZSB0eXBpY2FsbHkgcmFyZXIs
IHRoZSBzYW1lIGFwcGxpZXMgdG8gdGhlIGVuY29kZXIuIE1hbGljaW91cworYXVkaW8gc3RyZWFt
cyBtdXN0IG5vdCBjYXVzZSB0aGUgZW5jb2RlciB0byBtaXNiZWhhdmUgYmVjYXVzZSB0aGlzIHdv
dWxkCithbGxvdyBhbiBhdHRhY2tlciB0byBhdHRhY2sgdHJhbnNjb2RpbmcgZ2F0ZXdheXMuCis8
L3Q+Cis8dD4KK1RoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gY29udGFpbnMgbm8ga25vd24g
YnVmZmVyIG92ZXJmbG93IG9yIGNhc2VzIHdoZXJlCisgYSBzcGVjaWFsbHkgY3JhZnRlZCBwYWNr
ZXQgb3IgYXVkaW8gc2VnbWVudCBjb3VsZCBjYXVzZSBhIHNpZ25pZmljYW50IGluY3JlYXNlCisg
aW4gQ1BVIGxvYWQuCitIb3dldmVyLCBvbiBjZXJ0YWluIENQVSBhcmNoaXRlY3R1cmVzIHdoZXJl
IGRlbm9ybWFsaXplZCBmbG9hdGluZy1wb2ludAorIG9wZXJhdGlvbnMgYXJlIG11Y2ggc2xvd2Vy
IHRoYW4gbm9ybWFsIGZsb2F0aW5nLXBvaW50IG9wZXJhdGlvbnMsIGl0IGlzCisgcG9zc2libGUg
Zm9yIHNvbWUgYXVkaW8gY29udGVudCAoZS5nLiwgc2lsZW5jZSBvciBuZWFyLXNpbGVuY2UpIHRv
IGNhdXNlIGFuCisgaW5jcmVhc2UgaW4gQ1BVIGxvYWQuCitEZW5vcm1hbHMgY2FuIGJlIGludHJv
ZHVjZWQgYnkgcmVvcmRlcmluZyBvcGVyYXRpb25zIGluIHRoZSBjb21waWxlciBhbmQgZGVwZW5k
Cisgb24gdGhlIHRhcmdldCBhcmNoaXRlY3R1cmUsIHNvIGl0IGlzIGRpZmZpY3VsdCB0byBndWFy
YW50ZWUgdGhhdCBhbiBpbXBsZW1lbnRhdGlvbgorIGF2b2lkcyB0aGVtLgorRm9yIGFyY2hpdGVj
dHVyZXMgb24gd2hpY2ggZGVub3JtYWxzIGFyZSBwcm9ibGVtYXRpYywgYWRkaW5nIHZlcnkgc21h
bGwKKyBmbG9hdGluZy1wb2ludCBvZmZzZXRzIHRvIHRoZSBhZmZlY3RlZCBzaWduYWxzIHRvIHBy
ZXZlbnQgc2lnbmlmaWNhbnQgbnVtYmVycworIG9mIGRlbm9ybWFsaXplZCBvcGVyYXRpb25zIGlz
IFJFQ09NTUVOREVELgorQWx0ZXJuYXRpdmVseSwgaXQgaXMgb2Z0ZW4gcG9zc2libGUgdG8gY29u
ZmlndXJlIHRoZSBoYXJkd2FyZSB0byB0cmVhdAorIGRlbm9ybWFscyBhcyB6ZXJvIChEQVopLgor
Tm8gc3VjaCBpc3N1ZSBleGlzdHMgZm9yIHRoZSBmaXhlZC1wb2ludCByZWZlcmVuY2UgaW1wbGVt
ZW50YXRpb24uCis8L3Q+Cis8dD5UaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIHdhcyB2YWxp
ZGF0ZWQgaW4gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgorPGxpc3Qgc3R5bGU9Im51bWJlcnMi
PgorPHQ+CitTZW5kaW5nIHRoZSBkZWNvZGVyIHZhbGlkIHBhY2tldHMgZ2VuZXJhdGVkIGJ5IHRo
ZSByZWZlcmVuY2UgZW5jb2RlciBhbmQKKyB2ZXJpZnlpbmcgdGhhdCB0aGUgZGVjb2RlcidzIGZp
bmFsIHJhbmdlIGNvZGVyIHN0YXRlIG1hdGNoZXMgdGhhdCBvZiB0aGUKKyBlbmNvZGVyLgorPC90
PgorPHQ+CitTZW5kaW5nIHRoZSBkZWNvZGVyIHBhY2tldHMgZ2VuZXJhdGVkIGJ5IHRoZSByZWZl
cmVuY2UgZW5jb2RlciBhbmQgdGhlbgorIHN1YmplY3RlZCB0byByYW5kb20gY29ycnVwdGlvbi4K
KzwvdD4KKzx0PlNlbmRpbmcgdGhlIGRlY29kZXIgcmFuZG9tIHBhY2tldHMuPC90PgorPHQ+CitT
ZW5kaW5nIHRoZSBkZWNvZGVyIHBhY2tldHMgZ2VuZXJhdGVkIGJ5IGEgdmVyc2lvbiBvZiB0aGUg
cmVmZXJlbmNlIGVuY29kZXIKKyBtb2RpZmllZCB0byBtYWtlIHJhbmRvbSBjb2RpbmcgZGVjaXNp
b25zIChpbnRlcm5hbCBmdXp6aW5nKSwgaW5jbHVkaW5nIG1vZGUKKyBzd2l0Y2hpbmcsIGFuZCB2
ZXJpZnlpbmcgdGhhdCB0aGUgcmFuZ2UgY29kZXIgZmluYWwgc3RhdGVzIG1hdGNoLgorPC90Pgor
PC9saXN0PgorSW4gYWxsIG9mIHRoZSBjb25kaXRpb25zIGFib3ZlLCBib3RoIHRoZSBlbmNvZGVy
IGFuZCB0aGUgZGVjb2RlciB3ZXJlIHJ1bgorIGluc2lkZSB0aGUgPHhyZWYgdGFyZ2V0PSJWYWxn
cmluZCI+VmFsZ3JpbmQ8L3hyZWY+IG1lbW9yeQorIGRlYnVnZ2VyLCB3aGljaCB0cmFja3MgcmVh
ZHMgYW5kIHdyaXRlcyB0byBpbnZhbGlkIG1lbW9yeSByZWdpb25zIGFzIHdlbGwgYXMKKyB0aGUg
dXNlIG9mIHVuaW5pdGlhbGl6ZWQgbWVtb3J5LgorVGhlcmUgd2VyZSBubyBlcnJvcnMgcmVwb3J0
ZWQgb24gYW55IG9mIHRoZSB0ZXN0ZWQgY29uZGl0aW9ucy4KKzwvdD4KKzwvc2VjdGlvbj4KKwor
Cis8c2VjdGlvbiB0aXRsZT0iSUFOQSBDb25zaWRlcmF0aW9ucyI+Cis8dD4KK1RoaXMgZG9jdW1l
bnQgaGFzIG5vIGFjdGlvbnMgZm9yIElBTkEuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9u
IGFuY2hvcj0iQWNrbm93bGVkZ2VtZW50cyIgdGl0bGU9IkFja25vd2xlZGdlbWVudHMiPgorPHQ+
CitUaGFua3MgdG8gYWxsIG90aGVyIGRldmVsb3BlcnMsIGluY2x1ZGluZyBSYXltb25kIENoZW4s
IFNvZXJlbiBTa2FrIEplbnNlbiwgR3JlZ29yeSBNYXh3ZWxsLAorQ2hyaXN0b3BoZXIgTW9udGdv
bWVyeSwgYW5kIEthcnN0ZW4gVmFuZGJvcmcgU29lcmVuc2VuLiBXZSB3b3VsZCBhbHNvCitsaWtl
IHRvIHRoYW5rIElnb3IgRHlha29ub3YsIEphbiBTa29nbHVuZCwgYW5kIENocmlzdGlhbiBIb2Vu
ZSBmb3IgdGhlaXIgaGVscCB3aXRoIHN1YmplY3RpdmUgdGVzdGluZyBvZiB0aGUKK09wdXMgY29k
ZWMuIFRoYW5rcyB0byBSYWxwaCBHaWxlcywgSm9obiBSaWRnZXMsIEJlbiBTY2h3YXJ0eiwgS2Vp
dGggWWFuLCBDaHJpc3RpYW4gSG9lbmUsIEthdCBXYWxzaCwgYW5kIG1hbnkgb3RoZXJzIG9uIHRo
ZSBPcHVzIGFuZCBDRUxUIG1haWxpbmcgbGlzdHMKK2ZvciB0aGVpciBidWcgcmVwb3J0cyBhbmQg
ZmVlZGJhY2suCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJDb3B5aW5nIENv
bmRpdGlvbnMiPgorPHQ+VGhlIGF1dGhvcnMgYWdyZWUgdG8gZ3JhbnQgdGhpcmQgcGFydGllcyB0
aGUgaXJyZXZvY2FibGUgcmlnaHQgdG8gY29weSwgdXNlIGFuZCBkaXN0cmlidXRlCit0aGUgd29y
ayAoZXhjbHVkaW5nIENvZGUgQ29tcG9uZW50cyBhdmFpbGFibGUgdW5kZXIgdGhlIHNpbXBsaWZp
ZWQgQlNEIGxpY2Vuc2UpLCB3aXRoIG9yCit3aXRob3V0IG1vZGlmaWNhdGlvbiwgaW4gYW55IG1l
ZGl1bSwgd2l0aG91dCByb3lhbHR5LCBwcm92aWRlZCB0aGF0LCB1bmxlc3Mgc2VwYXJhdGUKK3Bl
cm1pc3Npb24gaXMgZ3JhbnRlZCwgcmVkaXN0cmlidXRlZCBtb2RpZmllZCB3b3JrcyBkbyBub3Qg
Y29udGFpbiBtaXNsZWFkaW5nIGF1dGhvciwgdmVyc2lvbiwKK25hbWUgb2Ygd29yaywgb3IgZW5k
b3JzZW1lbnQgaW5mb3JtYXRpb24uPC90PgorPC9zZWN0aW9uPgorCis8L21pZGRsZT4KKworPGJh
Y2s+CisKKzxyZWZlcmVuY2VzIHRpdGxlPSJOb3JtYXRpdmUgUmVmZXJlbmNlcyI+CisKKzxyZWZl
cmVuY2UgYW5jaG9yPSJyZmMyMTE5Ij4KKzxmcm9udD4KKzx0aXRsZT5LZXkgd29yZHMgZm9yIHVz
ZSBpbiBSRkNzIHRvIEluZGljYXRlIFJlcXVpcmVtZW50IExldmVscyA8L3RpdGxlPgorPGF1dGhv
ciBpbml0aWFscz0iUy4iIHN1cm5hbWU9IkJyYWRuZXIiIGZ1bGxuYW1lPSJTY290dCBCcmFkbmVy
Ij48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJSRkMiIHZhbHVlPSIyMTE5
IiAvPgorPC9yZWZlcmVuY2U+CisKKzwvcmVmZXJlbmNlcz4KKworPHJlZmVyZW5jZXMgdGl0bGU9
IkluZm9ybWF0aXZlIFJlZmVyZW5jZXMiPgorCis8cmVmZXJlbmNlIGFuY2hvcj0ncmVxdWlyZW1l
bnRzJz4KKzxmcm9udD4KKzx0aXRsZT5SZXF1aXJlbWVudHMgZm9yIGFuIEludGVybmV0IEF1ZGlv
IENvZGVjPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9J0ouLU0uJyBzdXJuYW1lPSdWYWxpbicg
ZnVsbG5hbWU9J0ouLU0uIFZhbGluJz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxhdXRo
b3IgaW5pdGlhbHM9J0suJyBzdXJuYW1lPSdWb3MnIGZ1bGxuYW1lPSdLLiBWb3MnPgorPG9yZ2Fu
aXphdGlvbiAvPjwvYXV0aG9yPgorPGF1dGhvcj4KKzxvcmdhbml6YXRpb24+SUVURjwvb3JnYW5p
emF0aW9uPjwvYXV0aG9yPgorPGRhdGUgeWVhcj0nMjAxMScgbW9udGg9J0F1Z3VzdCcgLz4KKzxh
YnN0cmFjdD4KKzx0PlRoaXMgZG9jdW1lbnQgcHJvdmlkZXMgc3BlY2lmaWMgcmVxdWlyZW1lbnRz
IGZvciBhbiBJbnRlcm5ldCBhdWRpbworICAgY29kZWMuICBUaGVzZSByZXF1aXJlbWVudHMgYWRk
cmVzcyBxdWFsaXR5LCBzYW1wbGUgcmF0ZSwgYml0cmF0ZSwKKyAgIGFuZCBwYWNrZXQtbG9zcyBy
b2J1c3RuZXNzLCBhcyB3ZWxsIGFzIG90aGVyIGRlc2lyYWJsZSBwcm9wZXJ0aWVzLgorPC90Pjwv
YWJzdHJhY3Q+PC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9J1JGQycgdmFsdWU9JzYzNjYnIC8+
Cis8Zm9ybWF0IHR5cGU9J1RYVCcgdGFyZ2V0PSdodHRwOi8vdG9vbHMuaWV0Zi5vcmcvcmZjL3Jm
YzYzNjYudHh0JyAvPgorPC9yZWZlcmVuY2U+CisKKzw/cmZjIGluY2x1ZGU9Imh0dHA6Ly94bWwu
cmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzU1MC54bWwiPz4K
Kzw/cmZjIGluY2x1ZGU9Imh0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1s
L3JlZmVyZW5jZS5SRkMuMzUzMy54bWwiPz4KKworPHJlZmVyZW5jZSBhbmNob3I9J1NJTEsnIHRh
cmdldD0naHR0cDovL2RldmVsb3Blci5za3lwZS5jb20vc2lsayc+Cis8ZnJvbnQ+Cis8dGl0bGU+
U0lMSyBTcGVlY2ggQ29kZWM8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0nSy4nIHN1cm5hbWU9
J1ZvcycgZnVsbG5hbWU9J0suIFZvcyc+Cis8b3JnYW5pemF0aW9uIC8+PC9hdXRob3I+Cis8YXV0
aG9yIGluaXRpYWxzPSdTLicgc3VybmFtZT0nSmVuc2VuJyBmdWxsbmFtZT0nUy4gSmVuc2VuJz4K
Kzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9J0suJyBzdXJuYW1l
PSdTb2VyZW5zZW4nIGZ1bGxuYW1lPSdLLiBTb2VyZW5zZW4nPgorPG9yZ2FuaXphdGlvbiAvPjwv
YXV0aG9yPgorPGRhdGUgeWVhcj0nMjAxMCcgbW9udGg9J01hcmNoJyAvPgorPGFic3RyYWN0Pgor
PHQ+PC90PgorPC9hYnN0cmFjdD48L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0nSW50ZXJuZXQt
RHJhZnQnIHZhbHVlPSdkcmFmdC12b3Mtc2lsay0wMScgLz4KKzxmb3JtYXQgdHlwZT0nVFhUJyB0
YXJnZXQ9J2h0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL2RyYWZ0LXZvcy1zaWxrLTAxJyAvPgor
PC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJsYXJvaWEtaWNhc3NwIj4KKzxmcm9u
dD4KKzx0aXRsZSBhYmJyZXY9IlJvYnVzdCBhbmQgRWZmaWNpZW50IFF1YW50aXphdGlvbiBvZiBT
cGVlY2ggTFNQIj4KK1JvYnVzdCBhbmQgRWZmaWNpZW50IFF1YW50aXphdGlvbiBvZiBTcGVlY2gg
TFNQIFBhcmFtZXRlcnMgVXNpbmcgU3RydWN0dXJlZCBWZWN0b3IgUXVhbnRpemF0aW9uCis8L3Rp
dGxlPgorPGF1dGhvciBpbml0aWFscz0iUi5MLiIgc3VybmFtZT0iTGFyb2lhIiBmdWxsbmFtZT0i
Ui4iPgorPG9yZ2FuaXphdGlvbi8+Cis8L2F1dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9Ik4uUC4i
IHN1cm5hbWU9IlBoYW1kbyIgZnVsbG5hbWU9Ik4uIj4KKzxvcmdhbml6YXRpb24vPgorPC9hdXRo
b3I+Cis8YXV0aG9yIGluaXRpYWxzPSJOLkYuIiBzdXJuYW1lPSJGYXJ2YXJkaW4iIGZ1bGxuYW1l
PSJOLiI+Cis8b3JnYW5pemF0aW9uLz4KKzwvYXV0aG9yPgorPC9mcm9udD4KKzxzZXJpZXNJbmZv
IG5hbWU9IklDQVNTUC0xOTkxLCBQcm9jLiBJRUVFIEludC4gQ29uZi4gQWNvdXN0LiwgU3BlZWNo
LCBTaWduYWwgUHJvY2Vzc2luZywgcHAuIDY0MS02NDQsIE9jdG9iZXIiIHZhbHVlPSIxOTkxIi8+
Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9J0NFTFQnIHRhcmdldD0naHR0cDov
L2NlbHQtY29kZWMub3JnLyc+Cis8ZnJvbnQ+Cis8dGl0bGU+Q29uc3RyYWluZWQtRW5lcmd5IExh
cHBlZCBUcmFuc2Zvcm0gKENFTFQpIENvZGVjPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9J0ot
TS4nIHN1cm5hbWU9J1ZhbGluJyBmdWxsbmFtZT0nSi1NLiBWYWxpbic+Cis8b3JnYW5pemF0aW9u
IC8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSdUJiN4MkU7Qi4nIHN1cm5hbWU9J1RlcnJp
YmVycnknIGZ1bGxuYW1lPSdUaW1vdGh5IEIuIFRlcnJpYmVycnknPgorPG9yZ2FuaXphdGlvbiAv
PjwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0nRy4nIHN1cm5hbWU9J01heHdlbGwnIGZ1bGxu
YW1lPSdHLiBNYXh3ZWxsJz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxhdXRob3IgaW5p
dGlhbHM9J0MuJyBzdXJuYW1lPSdNb250Z29tZXJ5JyBmdWxsbmFtZT0nQy4gTW9udGdvbWVyeSc+
Cis8b3JnYW5pemF0aW9uIC8+PC9hdXRob3I+Cis8ZGF0ZSB5ZWFyPScyMDEwJyBtb250aD0nSnVs
eScgLz4KKzxhYnN0cmFjdD4KKzx0PjwvdD4KKzwvYWJzdHJhY3Q+PC9mcm9udD4KKzxzZXJpZXNJ
bmZvIG5hbWU9J0ludGVybmV0LURyYWZ0JyB2YWx1ZT0nZHJhZnQtdmFsaW4tY2VsdC1jb2RlYy0w
MicgLz4KKzxmb3JtYXQgdHlwZT0nVFhUJyB0YXJnZXQ9J2h0dHA6Ly90b29scy5pZXRmLm9yZy9o
dG1sL2RyYWZ0LXZhbGluLWNlbHQtY29kZWMtMDInIC8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVy
ZW5jZSBhbmNob3I9J1NSVFAtVkJSJz4KKzxmcm9udD4KKzx0aXRsZT5HdWlkZWxpbmVzIGZvciB0
aGUgdXNlIG9mIFZhcmlhYmxlIEJpdCBSYXRlIEF1ZGlvIHdpdGggU2VjdXJlIFJUUDwvdGl0bGU+
Cis8YXV0aG9yIGluaXRpYWxzPSdDLicgc3VybmFtZT0nUGVya2lucycgZnVsbG5hbWU9J0suIFZv
cyc+Cis8b3JnYW5pemF0aW9uIC8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSdKLk0uJyBz
dXJuYW1lPSdWYWxpbicgZnVsbG5hbWU9J0ouTS4gVmFsaW4nPgorPG9yZ2FuaXphdGlvbiAvPjwv
YXV0aG9yPgorPGRhdGUgeWVhcj0nMjAxMScgbW9udGg9J0p1bHknIC8+Cis8YWJzdHJhY3Q+Cis8
dD48L3Q+Cis8L2Fic3RyYWN0PjwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSdSRkMnIHZhbHVl
PSc2NTYyJyAvPgorPGZvcm1hdCB0eXBlPSdUWFQnIHRhcmdldD0naHR0cDovL3Rvb2xzLmlldGYu
b3JnL2h0bWwvcmZjNjU2MicgLz4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0n
RE9TJz4KKzxmcm9udD4KKzx0aXRsZT5JbnRlcm5ldCBEZW5pYWwtb2YtU2VydmljZSBDb25zaWRl
cmF0aW9uczwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSdNLicgc3VybmFtZT0nSGFuZGxleScg
ZnVsbG5hbWU9J00uIEhhbmRsZXknPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGF1dGhv
ciBpbml0aWFscz0nRS4nIHN1cm5hbWU9J1Jlc2NvcmxhJyBmdWxsbmFtZT0nRS4gUmVzY29ybGEn
PgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGF1dGhvcj4KKzxvcmdhbml6YXRpb24+SUFC
PC9vcmdhbml6YXRpb24+PC9hdXRob3I+Cis8ZGF0ZSB5ZWFyPScyMDA2JyBtb250aD0nRGVjZW1i
ZXInIC8+Cis8YWJzdHJhY3Q+Cis8dD5UaGlzIGRvY3VtZW50IHByb3ZpZGVzIGFuIG92ZXJ2aWV3
IG9mIHBvc3NpYmxlIGF2ZW51ZXMgZm9yIGRlbmlhbC1vZi1zZXJ2aWNlIChEb1MpIGF0dGFjayBv
biBJbnRlcm5ldCBzeXN0ZW1zLiAgVGhlIGFpbSBpcyB0byBlbmNvdXJhZ2UgcHJvdG9jb2wgZGVz
aWduZXJzIGFuZCBuZXR3b3JrIGVuZ2luZWVycyB0b3dhcmRzIGRlc2lnbnMgdGhhdCBhcmUgbW9y
ZSByb2J1c3QuICBXZSBkaXNjdXNzIHBhcnRpYWwgc29sdXRpb25zIHRoYXQgcmVkdWNlIHRoZSBl
ZmZlY3RpdmVuZXNzIG9mIGF0dGFja3MsIGFuZCBob3cgc29tZSBzb2x1dGlvbnMgbWlnaHQgaW5h
ZHZlcnRlbnRseSBvcGVuIHVwIGFsdGVybmF0aXZlIHZ1bG5lcmFiaWxpdGllcy4gIFRoaXMgbWVt
byBwcm92aWRlcyBpbmZvcm1hdGlvbiBmb3IgdGhlIEludGVybmV0IGNvbW11bml0eS48L3Q+PC9h
YnN0cmFjdD48L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0nUkZDJyB2YWx1ZT0nNDczMicgLz4K
Kzxmb3JtYXQgdHlwZT0nVFhUJyBvY3RldHM9JzkxODQ0JyB0YXJnZXQ9J2Z0cDovL2Z0cC5pc2ku
ZWR1L2luLW5vdGVzL3JmYzQ3MzIudHh0JyAvPgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2Ug
YW5jaG9yPSJNYXJ0aW43OSI+Cis8ZnJvbnQ+Cis8dGl0bGU+UmFuZ2UgZW5jb2Rpbmc6IEFuIGFs
Z29yaXRobSBmb3IgcmVtb3ZpbmcgcmVkdW5kYW5jeSBmcm9tIGEgZGlnaXRpc2VkIG1lc3NhZ2U8
L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0iRy5OLk4uIiBzdXJuYW1lPSJNYXJ0aW4iIGZ1bGxu
YW1lPSJHLiBOaWdlbCBOLiBNYXJ0aW4iPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPGRhdGUg
eWVhcj0iMTk3OSIgLz4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJQcm9jLiBJbnN0aXR1
dGlvbiBvZiBFbGVjdHJvbmljIGFuZCBSYWRpbyBFbmdpbmVlcnMgSW50ZXJuYXRpb25hbCBDb25m
ZXJlbmNlIG9uIFZpZGVvIGFuZCBEYXRhIFJlY29yZGluZyIgdmFsdWU9IiIgLz4KKzwvcmVmZXJl
bmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iY29kaW5nLXRoZXNpcyI+Cis8ZnJvbnQ+Cis8dGl0
bGU+U291cmNlIGNvZGluZyBhbGdvcml0aG1zIGZvciBmYXN0IGRhdGEgY29tcHJlc3Npb248L3Rp
dGxlPgorPGF1dGhvciBpbml0aWFscz0iUi4iIHN1cm5hbWU9IlBhc2NvIiBmdWxsbmFtZT0iIj48
b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzxkYXRlIG1vbnRoPSJNYXkiIHllYXI9IjE5NzYiIC8+
Cis8L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0iUGguRC4gdGhlc2lzIiB2YWx1ZT0iRGVwdC4g
b2YgRWxlY3RyaWNhbCBFbmdpbmVlcmluZywgU3RhbmZvcmQgVW5pdmVyc2l0eSIgLz4KKzwvcmVm
ZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iUFZRIj4KKzxmcm9udD4KKzx0aXRsZT5BIFB5
cmFtaWQgVmVjdG9yIFF1YW50aXplcjwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSJULiIgc3Vy
bmFtZT0iRmlzY2hlciIgZnVsbG5hbWU9IiI+PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8ZGF0
ZSBtb250aD0iSnVseSIgeWVhcj0iMTk4NiIgLz4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1l
PSJJRUVFIFRyYW5zLiBvbiBJbmZvcm1hdGlvbiBUaGVvcnksIFZvbC4gMzIiIHZhbHVlPSJwcC4g
NTY4LTU4MyIgLz4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iS2FiYWw4NiI+
Cis8ZnJvbnQ+Cis8dGl0bGU+VGhlIENvbXB1dGF0aW9uIG9mIExpbmUgU3BlY3RyYWwgRnJlcXVl
bmNpZXMgVXNpbmcgQ2hlYnlzaGV2IFBvbHlub21pYWxzPC90aXRsZT4KKzxhdXRob3IgaW5pdGlh
bHM9IlAuIiBzdXJuYW1lPSJLYWJhbCIgZnVsbG5hbWU9IlAuIEthYmFsIj48b3JnYW5pemF0aW9u
Lz48L2F1dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9IlIuIiBzdXJuYW1lPSJSYW1hY2hhbmRyYW4i
IGZ1bGxuYW1lPSJSLiBQLiBSYW1hY2hhbmRyYW4iPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgor
PGRhdGUgbW9udGg9IkRlY2VtYmVyIiB5ZWFyPSIxOTg2IiAvPgorPC9mcm9udD4KKzxzZXJpZXNJ
bmZvIG5hbWU9IklFRUUgVHJhbnMuIEFjb3VzdGljcywgU3BlZWNoLCBTaWduYWwgUHJvY2Vzc2lu
Zywgdm9sLiAzNCwgbm8uIDYiIHZhbHVlPSJwcC4gMTQxOS0xNDI2IiAvPgorPC9yZWZlcmVuY2U+
CisKKworPHJlZmVyZW5jZSBhbmNob3I9IlZhbGdyaW5kIiB0YXJnZXQ9Imh0dHA6Ly92YWxncmlu
ZC5vcmcvIj4KKzxmcm9udD4KKzx0aXRsZT5WYWxncmluZCB3ZWJzaXRlPC90aXRsZT4KKzxhdXRo
b3I+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9y
PSJHb29nbGUtTmV0RVEiIHRhcmdldD0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL3dlYnJ0Yy9z
b3VyY2UvYnJvd3NlL3RydW5rL3NyYy9tb2R1bGVzL2F1ZGlvX2NvZGluZy9OZXRFUS9tYWluL3Nv
dXJjZS8/cj01ODMiPgorPGZyb250PgorPHRpdGxlPkdvb2dsZSBOZXRFUSBjb2RlPC90aXRsZT4K
KzxhdXRob3I+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2Ug
YW5jaG9yPSJHb29nbGUtV2ViUlRDIiB0YXJnZXQ9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC93
ZWJydGMvIj4KKzxmcm9udD4KKzx0aXRsZT5Hb29nbGUgV2ViUlRDIGNvZGU8L3RpdGxlPgorPGF1
dGhvcj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworCis8cmVmZXJlbmNlIGFu
Y2hvcj0iT3B1cy1naXQiIHRhcmdldD0iZ2l0Oi8vZ2l0LnhpcGgub3JnL29wdXMuZ2l0Ij4KKzxm
cm9udD4KKzx0aXRsZT5PcHVzIEdpdCBSZXBvc2l0b3J5PC90aXRsZT4KKzxhdXRob3I+PC9hdXRo
b3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJPcHVzLXdl
YnNpdGUiIHRhcmdldD0iaHR0cDovL29wdXMtY29kZWMub3JnLyI+Cis8ZnJvbnQ+Cis8dGl0bGU+
T3B1cyB3ZWJzaXRlPC90aXRsZT4KKzxhdXRob3I+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZl
cmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJWb3JiaXMtd2Vic2l0ZSIgdGFyZ2V0PSJodHRw
Oi8veGlwaC5vcmcvdm9yYmlzLyI+Cis8ZnJvbnQ+Cis8dGl0bGU+Vm9yYmlzIHdlYnNpdGU8L3Rp
dGxlPgorPGF1dGhvcj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVy
ZW5jZSBhbmNob3I9Ik1hdHJvc2thLXdlYnNpdGUiIHRhcmdldD0iaHR0cDovL21hdHJvc2thLm9y
Zy8iPgorPGZyb250PgorPHRpdGxlPk1hdHJvc2thIHdlYnNpdGU8L3RpdGxlPgorPGF1dGhvcj48
L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IlZl
Y3RvcnMtd2Vic2l0ZSIgdGFyZ2V0PSJodHRwOi8vb3B1cy1jb2RlYy5vcmcvdGVzdHZlY3RvcnMv
Ij4KKzxmcm9udD4KKzx0aXRsZT5PcHVzIFRlc3R2ZWN0b3JzICh3ZWJzaWRlKTwvdGl0bGU+Cis8
YXV0aG9yPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFu
Y2hvcj0iVmVjdG9ycy1wcm9jIiB0YXJnZXQ9Imh0dHA6Ly93d3cuaWV0Zi5vcmcvcHJvY2VlZGlu
Z3MvODMvc2xpZGVzL3NsaWRlcy04My1jb2RlYy0wLmd6Ij4KKzxmcm9udD4KKzx0aXRsZT5PcHVz
IFRlc3R2ZWN0b3JzIChwcm9jZWVkaW5ncyk8L3RpdGxlPgorPGF1dGhvcj48L2F1dGhvcj4KKzwv
ZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9ImxpbmUtc3BlY3RyYWwt
cGFpcnMiIHRhcmdldD0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9MaW5lX3NwZWN0cmFs
X3BhaXJzIj4KKzxmcm9udD4KKzx0aXRsZT5MaW5lIFNwZWN0cmFsIFBhaXJzPC90aXRsZT4KKzxh
dXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzwv
ZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9InJhbmdlLWNvZGluZyIg
dGFyZ2V0PSJodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1JhbmdlX2NvZGluZyI+Cis8ZnJv
bnQ+Cis8dGl0bGU+UmFuZ2UgQ29kaW5nPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXphdGlvbj5X
aWtpcGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4K
KworPHJlZmVyZW5jZSBhbmNob3I9IkhhZGFtYXJkIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVk
aWEub3JnL3dpa2kvSGFkYW1hcmRfdHJhbnNmb3JtIj4KKzxmcm9udD4KKzx0aXRsZT5IYWRhbWFy
ZCBUcmFuc2Zvcm08L3RpdGxlPgorPGF1dGhvcj48b3JnYW5pemF0aW9uPldpa2lwZWRpYTwvb3Jn
YW5pemF0aW9uPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNl
IGFuY2hvcj0iVml0ZXJiaSIgdGFyZ2V0PSJodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1Zp
dGVyYmlfYWxnb3JpdGhtIj4KKzxmcm9udD4KKzx0aXRsZT5WaXRlcmJpIEFsZ29yaXRobTwvdGl0
bGU+Cis8YXV0aG9yPjxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+PC9hdXRo
b3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJXaGl0ZW5p
bmciIHRhcmdldD0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9XaGl0ZV9ub2lzZSI+Cis8
ZnJvbnQ+Cis8dGl0bGU+V2hpdGUgTm9pc2U8L3RpdGxlPgorPGF1dGhvcj48b3JnYW5pemF0aW9u
Pldpa2lwZWRpYTwvb3JnYW5pemF0aW9uPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNl
PgorCis8cmVmZXJlbmNlIGFuY2hvcj0iTFBDIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEu
b3JnL3dpa2kvTGluZWFyX3ByZWRpY3Rpb24iPgorPGZyb250PgorPHRpdGxlPkxpbmVhciBQcmVk
aWN0aW9uPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXph
dGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNo
b3I9Ik1EQ1QiIHRhcmdldD0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Nb2RpZmllZF9k
aXNjcmV0ZV9jb3NpbmVfdHJhbnNmb3JtIj4KKzxmcm9udD4KKzx0aXRsZT5Nb2RpZmllZCBEaXNj
cmV0ZSBDb3NpbmUgVHJhbnNmb3JtPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtp
cGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKwor
PHJlZmVyZW5jZSBhbmNob3I9IkZGVCIgdGFyZ2V0PSJodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93
aWtpL0Zhc3RfRm91cmllcl90cmFuc2Zvcm0iPgorPGZyb250PgorPHRpdGxlPkZhc3QgRm91cmll
ciBUcmFuc2Zvcm08L3RpdGxlPgorPGF1dGhvcj48b3JnYW5pemF0aW9uPldpa2lwZWRpYTwvb3Jn
YW5pemF0aW9uPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNl
IGFuY2hvcj0iei10cmFuc2Zvcm0iIHRhcmdldD0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lr
aS9aLXRyYW5zZm9ybSI+Cis8ZnJvbnQ+Cis8dGl0bGU+Wi10cmFuc2Zvcm08L3RpdGxlPgorPGF1
dGhvcj48b3JnYW5pemF0aW9uPldpa2lwZWRpYTwvb3JnYW5pemF0aW9uPjwvYXV0aG9yPgorPC9m
cm9udD4KKzwvcmVmZXJlbmNlPgorCisKKzxyZWZlcmVuY2UgYW5jaG9yPSJCdXJnIj4KKzxmcm9u
dD4KKzx0aXRsZT5NYXhpbXVtIEVudHJvcHkgU3BlY3RyYWwgQW5hbHlzaXM8L3RpdGxlPgorPGF1
dGhvciBpbml0aWFscz0iSlAuIiBzdXJuYW1lPSJCdXJnIiBmdWxsbmFtZT0iSi5QLiBCdXJnIj48
b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVy
ZW5jZSBhbmNob3I9IlNjaHVyIj4KKzxmcm9udD4KKzx0aXRsZT5BIGZpeGVkIHBvaW50IGNvbXB1
dGF0aW9uIG9mIHBhcnRpYWwgY29ycmVsYXRpb24gY29lZmZpY2llbnRzPC90aXRsZT4KKzxhdXRo
b3IgaW5pdGlhbHM9IkouIiBzdXJuYW1lPSJMZSBSb3V4IiBmdWxsbmFtZT0iSi4gTGUgUm91eCI+
PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJDLiIgc3VybmFtZT0i
R3VlZ3VlbiIgZnVsbG5hbWU9IkMuIEd1ZWd1ZW4iPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgor
PC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9IklDQVNTUC0xOTc3LCBQcm9jLiBJRUVFIEludC4g
Q29uZi4gQWNvdXN0LiwgU3BlZWNoLCBTaWduYWwgUHJvY2Vzc2luZywgcHAuIDI1Ny0yNTksIE9j
dG9iZXIiIHZhbHVlPSIxOTc3Ii8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9
IlByaW5jZW44NiI+Cis8ZnJvbnQ+Cis8dGl0bGU+QW5hbHlzaXMvc3ludGhlc2lzIGZpbHRlciBi
YW5rIGRlc2lnbiBiYXNlZCBvbiB0aW1lIGRvbWFpbiBhbGlhc2luZyBjYW5jZWxsYXRpb248L3Rp
dGxlPgorPGF1dGhvciBpbml0aWFscz0iSi4iIHN1cm5hbWU9IlByaW5jZW4iIGZ1bGxuYW1lPSJK
b2huIFAuIFByaW5jZW4iPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFs
cz0iQS4iIHN1cm5hbWU9IkJyYWRsZXkiIGZ1bGxuYW1lPSJBbGFuIEIuIEJyYWRsZXkiPjxvcmdh
bml6YXRpb24vPjwvYXV0aG9yPgorPC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9IklFRUUgVHJh
bnMuIEFjb3VzdC4gU3BlZWNoIFNpZy4gUHJvYy4gQVNTUC0zNCAoNSksIDExNTMtMTE2MSIgdmFs
dWU9IjE5ODYiLz4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iVmFsaW4yMDEw
Ij4KKzxmcm9udD4KKzx0aXRsZT5BIEhpZ2gtUXVhbGl0eSBTcGVlY2ggYW5kIEF1ZGlvIENvZGVj
IFdpdGggTGVzcyBUaGFuIDEwIG1zIGRlbGF5PC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IkpN
IiBzdXJuYW1lPSJWYWxpbiIgZnVsbG5hbWU9IkplYW4tTWFyYyBWYWxpbiI+PG9yZ2FuaXphdGlv
bi8+Cis8L2F1dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9IlQuIEIuIiBzdXJuYW1lPSJUZXJyaWJl
cnJ5IiBmdWxsbmFtZT0iVGltb3RoeSBUZXJyaWJlcnJ5Ij48b3JnYW5pemF0aW9uLz48L2F1dGhv
cj4KKzxhdXRob3IgaW5pdGlhbHM9IkMuIiBzdXJuYW1lPSJNb250Z29tZXJ5IiBmdWxsbmFtZT0i
Q2hyaXN0b3BoZXIgTW9udGdvbWVyeSI+PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8YXV0aG9y
IGluaXRpYWxzPSJHLiIgc3VybmFtZT0iTWF4d2VsbCIgZnVsbG5hbWU9IkdyZWdvcnkgTWF4d2Vs
bCI+PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0i
SUVFRSBUcmFucy4gb24gQXVkaW8sIFNwZWVjaCBhbmQgTGFuZ3VhZ2UgUHJvY2Vzc2luZywgVm9s
LiAxOCwgTm8uIDEsIHBwLiA1OC02NyIgdmFsdWU9IjIwMTAiIC8+Cis8L3JlZmVyZW5jZT4KKwor
Cis8cmVmZXJlbmNlIGFuY2hvcj0iWndpY2tlcjYxIj4KKzxmcm9udD4KKzx0aXRsZT5TdWJkaXZp
c2lvbiBvZiB0aGUgYXVkaWJsZSBmcmVxdWVuY3kgcmFuZ2UgaW50byBjcml0aWNhbCBiYW5kczwv
dGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSJFLiIgc3VybmFtZT0iWndpY2tlciIgZnVsbG5hbWU9
IkUuIFp3aWNrZXIiPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPGRhdGUgbW9udGg9IkZlYnJ1
YXJ5IiB5ZWFyPSIxOTYxIiAvPgorPC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9IlRoZSBKb3Vy
bmFsIG9mIHRoZSBBY291c3RpY2FsIFNvY2lldHkgb2YgQW1lcmljYSwgVm9sLiAzMywgTm8gMiIg
dmFsdWU9InAuIDI0OCIgLz4KKzwvcmVmZXJlbmNlPgorCisKKzwvcmVmZXJlbmNlcz4KKworPHNl
Y3Rpb24gYW5jaG9yPSJyZWYtaW1wbGVtZW50YXRpb24iIHRpdGxlPSJSZWZlcmVuY2UgSW1wbGVt
ZW50YXRpb24iPgorCis8dD5UaGlzIGFwcGVuZGl4IGNvbnRhaW5zIHRoZSBjb21wbGV0ZSBzb3Vy
Y2UgY29kZSBmb3IgdGhlCityZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gb2YgdGhlIE9wdXMgY29k
ZWMgd3JpdHRlbiBpbiBDLiBCeSBkZWZhdWx0LAordGhpcyBpbXBsZW1lbnRhdGlvbiByZWxpZXMg
b24gZmxvYXRpbmctcG9pbnQgYXJpdGhtZXRpYywgYnV0IGl0IGNhbiBiZQorY29tcGlsZWQgdG8g
dXNlIG9ubHkgZml4ZWQtcG9pbnQgYXJpdGhtZXRpYyBieSBkZWZpbmluZyB0aGUgRklYRURfUE9J
TlQKK21hY3JvLiBJbmZvcm1hdGlvbiBvbiBidWlsZGluZyBhbmQgdXNpbmcgdGhlIHJlZmVyZW5j
ZSBpbXBsZW1lbnRhdGlvbiBpcworYXZhaWxhYmxlIGluIHRoZSBSRUFETUUgZmlsZS4KKzwvdD4K
KworPHQ+VGhlIGltcGxlbWVudGF0aW9uIGNhbiBiZSBjb21waWxlZCB3aXRoIGVpdGhlciBhIEM4
OSBvciBhIEM5OQorY29tcGlsZXIuIEl0IGlzIHJlYXNvbmFibHkgb3B0aW1pemVkIGZvciBtb3N0
IHBsYXRmb3JtcyBzdWNoIHRoYXQKK29ubHkgYXJjaGl0ZWN0dXJlLXNwZWNpZmljIG9wdGltaXph
dGlvbnMgYXJlIGxpa2VseSB0byBiZSB1c2VmdWwuCitUaGUgRkZUIDx4cmVmIHRhcmdldD0iRkZU
Ii8+IHVzZWQgaXMgYSBzbGlnaHRseSBtb2RpZmllZCB2ZXJzaW9uIG9mIHRoZSBLSVNTLUZGVCBs
aWJyYXJ5LAorYnV0IGl0IGlzIGVhc3kgdG8gc3Vic3RpdHV0ZSBhbnkgb3RoZXIgRkZUIGxpYnJh
cnkuCis8L3Q+CisKKzx0PgorV2hpbGUgdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBkb2Vz
IG5vdCByZWx5IG9uIGFueQorPHNwYW54IHN0eWxlPSJlbXBoIj51bmRlZmluZWQgYmVoYXZpb3I8
L3NwYW54PiBhcyBkZWZpbmVkIGJ5IEM4OSBvciBDOTksCitpdCByZWxpZXMgb24gY29tbW9uIDxz
cGFueCBzdHlsZT0iZW1waCI+aW1wbGVtZW50YXRpb24tZGVmaW5lZCBiZWhhdmlvcjwvc3Bhbng+
Citmb3IgdHdvJ3MgY29tcGxlbWVudCBhcmNoaXRlY3R1cmVzOgorPGxpc3Qgc3R5bGU9InN5bWJv
bHMiPgorPHQ+UmlnaHQgc2hpZnRzIG9mIG5lZ2F0aXZlIHZhbHVlcyBhcmUgY29uc2lzdGVudCB3
aXRoIHR3bydzIGNvbXBsZW1lbnQgYXJpdGhtZXRpYywgc28gdGhhdCBhPj5iIGlzIGVxdWl2YWxl
bnQgdG8gZmxvb3IoYS8oMioqYikpLDwvdD4KKzx0PkZvciBjb252ZXJzaW9uIHRvIGEgc2lnbmVk
IGludGVnZXIgb2YgTiBiaXRzLCB0aGUgdmFsdWUgaXMgcmVkdWNlZCBtb2R1bG8gMioqTiB0byBi
ZSB3aXRoaW4gcmFuZ2Ugb2YgdGhlIHR5cGUsPC90PgorPHQ+VGhlIHJlc3VsdCBvZiBpbnRlZ2Vy
IGRpdmlzaW9uIG9mIGEgbmVnYXRpdmUgdmFsdWUgaXMgdHJ1bmNhdGVkIHRvd2FyZHMgemVybywg
YW5kPC90PgorPHQ+VGhlIGNvbXBpbGVyIHByb3ZpZGVzIGEgNjQtYml0IGludGVnZXIgdHlwZSAo
YSBDOTkgcmVxdWlyZW1lbnQgd2hpY2ggaXMgc3VwcG9ydGVkIGJ5IG1vc3QgQzg5IGNvbXBpbGVy
cykuPC90PgorPC9saXN0PgorPC90PgorCis8dD4KK0luIGl0cyBjdXJyZW50IGZvcm0sIHRoZSBy
ZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gYWxzbyByZXF1aXJlcyB0aGUgZm9sbG93aW5nCithcmNo
aXRlY3R1cmFsIGNoYXJhY3RlcmlzdGljcyB0byBvYnRhaW4gYWNjZXB0YWJsZSBwZXJmb3JtYW5j
ZToKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PlR3bydzIGNvbXBsZW1lbnQgYXJpdGhtZXRp
Yyw8L3Q+Cis8dD5BdCBsZWFzdCBhIDE2IGJpdCBieSAxNiBiaXQgaW50ZWdlciBtdWx0aXBsaWVy
ICgzMi1iaXQgcmVzdWx0KSwgYW5kPC90PgorPHQ+QXQgbGVhc3QgYSAzMi1iaXQgYWRkZXIvYWNj
dW11bGF0b3IuPC90PgorPC9saXN0PgorPC90PgorCisKKzxzZWN0aW9uIHRpdGxlPSJFeHRyYWN0
aW5nIHRoZSBzb3VyY2UiPgorPHQ+CitUaGUgY29tcGxldGUgc291cmNlIGNvZGUgY2FuIGJlIGV4
dHJhY3RlZCBmcm9tIHRoaXMgZHJhZnQsIGJ5IHJ1bm5pbmcgdGhlCitmb2xsb3dpbmcgY29tbWFu
ZCBsaW5lOgorCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD48IVtDREFUQVsKK2NhdCBkcmFm
dC1pZXRmLWNvZGVjLW9wdXMudHh0IHwgZ3JlcCAnXlwgXCBcICMjIycgfCBzZWQgLWUgJ3MvLi4u
IyMjLy8nIHwgYmFzZTY0IC1kID4gb3B1c19zb3VyY2UudGFyLmd6CitdXT48L3Q+Cis8dD4KK3Rh
ciB4enZmIG9wdXNfc291cmNlLnRhci5negorPC90PgorPHQ+Y2Qgb3B1c19zb3VyY2U8L3Q+Cis8
dD5tYWtlPC90PgorPC9saXN0PgorT24gc3lzdGVtcyB3aGVyZSB0aGUgcHJvdmlkZWQgTWFrZWZp
bGUgZG9lcyBub3Qgd29yaywgdGhlIGZvbGxvd2luZyBjb21tYW5kIGxpbmUgbWF5IGJlIHVzZWQg
dG8gY29tcGlsZQordGhlIHNvdXJjZSBjb2RlOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+
PCFbQ0RBVEFbCitjYyAtTzIgLWcgLW8gb3B1c19kZW1vIHNyYy9vcHVzX2RlbW8uYyBgY2F0ICou
bWsgfCBncmVwIC12IGZpeGVkIHwgc2VkIC1lICdzLy4qPS8vJyAtZSAncy9cXFxcLy8nYCAtRE9Q
VVNfQlVJTEQgLUlpbmNsdWRlIC1JY2VsdCAtSXNpbGsgLUlzaWxrL2Zsb2F0IC1EVVNFX0FMTE9D
QSAtRHJlc3RyaWN0PSAtbG0KK11dPjwvdD48L2xpc3Q+Cis8L3Q+CisKKzx0PgorT24gc3lzdGVt
cyB3aGVyZSB0aGUgYmFzZTY0IHV0aWxpdHkgaXMgbm90IHByZXNlbnQsIHRoZSBmb2xsb3dpbmcg
Y29tbWFuZHMgY2FuIGJlIHVzZWQgaW5zdGVhZDoKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0
PjwhW0NEQVRBWworY2F0IGRyYWZ0LWlldGYtY29kZWMtb3B1cy50eHQgfCBncmVwICdeXCBcIFwg
IyMjJyB8IHNlZCAtZSAncy8uLi4jIyMvLycgPiBvcHVzLmI2NAorXV0+PC90PgorPHQ+b3BlbnNz
bCBiYXNlNjQgLWQgLWluIG9wdXMuYjY0ID4gb3B1c19zb3VyY2UudGFyLmd6PC90PgorPC9saXN0
PgorCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJVcC10by1kYXRlIEltcGxl
bWVudGF0aW9uIj4KKzx0PgorQXMgb2YgdGhlIHRpbWUgb2YgcHVibGljYXRpb24gb2YgdGhpcyBt
ZW1vLCBhbiB1cC10by1kYXRlIGltcGxlbWVudGF0aW9uIGNvbmZvcm1pbmcgdG8KK3RoaXMgc3Rh
bmRhcmQgaXMgYXZhaWxhYmxlIGluIGEKKyA8eHJlZiB0YXJnZXQ9J09wdXMtZ2l0Jz5HaXQgcmVw
b3NpdG9yeTwveHJlZj4uCitSZWxlYXNlcyBhbmQgb3RoZXIgcmVzb3VyY2VzIGFyZSBhdmFpbGFi
bGUgYXQKKyA8eHJlZiB0YXJnZXQ9J09wdXMtd2Vic2l0ZScvPi4gSG93ZXZlciwgYWx0aG91Z2gg
dGhhdCBpbXBsZW1lbnRhdGlvbiBpcyBleHBlY3RlZCB0bworIHJlbWFpbiBjb25mb3JtYW50IHdp
dGggdGhlIHN0YW5kYXJkLCBpdCBpcyB0aGUgY29kZSBpbiB0aGlzIGRvY3VtZW50IHRoYXQgc2hh
bGwKKyByZW1haW4gbm9ybWF0aXZlLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRs
ZT0iQmFzZTY0LWVuY29kZWQgU291cmNlIENvZGUiPgorPHQ+Cis8P3JmYyBpbmNsdWRlPSJvcHVz
X3NvdXJjZS5iYXNlNjQiPz4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJ0
ZXN0LXZlY3RvcnMiIHRpdGxlPSJUZXN0IFZlY3RvcnMiPgorPHQ+CitCZWNhdXNlIG9mIHNpemUg
Y29uc3RyYWludHMsIHRoZSBPcHVzIHRlc3QgdmVjdG9ycyBhcmUgbm90IGRpc3RyaWJ1dGVkIGlu
IHRoaXMKK2RyYWZ0LiBUaGV5IGFyZSBhdmFpbGFibGUgaW4gdGhlIHByb2NlZWRpbmdzIG9mIHRo
ZSA4M3RoIElFVEYgbWVldGluZyAoUGFyaXMpIDx4cmVmIHRhcmdldD0iVmVjdG9ycy1wcm9jIi8+
IGFuZCBmcm9tIHRoZSBPcHVzIGNvZGVjIHdlYnNpdGUgYXQKKzx4cmVmIHRhcmdldD0iVmVjdG9y
cy13ZWJzaXRlIi8+LiBUaGVzZSB0ZXN0IHZlY3RvcnMgd2VyZSBjcmVhdGVkIHNwZWNpZmljYWxs
eSB0byBleGVyY2lzZQorYWxsIGFzcGVjdHMgb2YgdGhlIGRlY29kZXIgYW5kIHRoZXJlZm9yZSB0
aGUgYXVkaW8gcXVhbGl0eSBvZiB0aGUgZGVjb2RlZCBvdXRwdXQgaXMKK3NpZ25pZmljYW50bHkg
bG93ZXIgdGhhbiB3aGF0IE9wdXMgY2FuIGFjaGlldmUgaW4gbm9ybWFsIG9wZXJhdGlvbi4KKzwv
dD4KKworPHQ+CitUaGUgU0hBMSBoYXNoIG9mIHRoZSBmaWxlcyBpbiB0aGUgdGVzdCB2ZWN0b3Ig
cGFja2FnZSBhcmUKKzw/cmZjIGluY2x1ZGU9InRlc3R2ZWN0b3JzX3NoYTEiPz4KKzwvdD4KKwor
PC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2VsZi1kZWxpbWl0
aW5nLWZyYW1pbmciIHRpdGxlPSJTZWxmLURlbGltaXRpbmcgRnJhbWluZyI+Cis8dD4KK1RvIHVz
ZSB0aGUgaW50ZXJuYWwgZnJhbWluZyBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJtb2RlcyIv
PiwgdGhlIGRlY29kZXIKKyBtdXN0IGtub3cgdGhlIHRvdGFsIGxlbmd0aCBvZiB0aGUgT3B1cyBw
YWNrZXQsIGluIGJ5dGVzLgorVGhpcyBzZWN0aW9uIGRlc2NyaWJlcyBhIHNpbXBsZSB2YXJpYXRp
b24gb2YgdGhhdCBmcmFtaW5nIHdoaWNoIGNhbiBiZSB1c2VkCisgd2hlbiB0aGUgdG90YWwgbGVu
Z3RoIG9mIHRoZSBwYWNrZXQgaXMgbm90IGtub3duLgorTm90aGluZyBpbiB0aGUgZW5jb2Rpbmcg
b2YgdGhlIHBhY2tldCBpdHNlbGYgYWxsb3dzIGEgZGVjb2RlciB0byBkaXN0aW5ndWlzaAorIGJl
dHdlZW4gdGhlIHJlZ3VsYXIsIHVuZGVsaW1pdGVkIGZyYW1pbmcgYW5kIHRoZSBzZWxmLWRlbGlt
aXRpbmcgZnJhbWluZworIGRlc2NyaWJlZCBpbiB0aGlzIGFwcGVuZGl4LgorV2hpY2ggb25lIGlz
IHVzZWQgYW5kIHdoZXJlIG11c3QgYmUgZXN0YWJsaXNoZWQgYnkgY29udGV4dCBhdCB0aGUgdHJh
bnNwb3J0CisgbGF5ZXIuCitJdCBpcyBSRUNPTU1FTkRFRCB0aGF0IGEgdHJhbnNwb3J0IGxheWVy
IGNob29zZSBleGFjdGx5IG9uZSBmcmFtaW5nIHNjaGVtZSwKKyByYXRoZXIgdGhhbiBhbGxvd2lu
ZyBhbiBlbmNvZGVyIHRvIHNpZ25hbCB3aGljaCBvbmUgaXQgd2FudHMgdG8gdXNlLgorPC90Pgor
Cis8dD4KK0ZvciBleGFtcGxlLCBhbHRob3VnaCBhIHJlZ3VsYXIgT3B1cyBzdHJlYW0gZG9lcyBu
b3Qgc3VwcG9ydCBtb3JlIHRoYW4gdHdvCisgY2hhbm5lbHMsIGEgbXVsdGktY2hhbm5lbCBPcHVz
IHN0cmVhbSBtYXkgYmUgZm9ybWVkIGZyb20gc2V2ZXJhbCBvbmUtIGFuZAorIHR3by1jaGFubmVs
IHN0cmVhbXMuCitUbyBwYWNrIGFuIE9wdXMgcGFja2V0IGZyb20gZWFjaCBvZiB0aGVzZSBzdHJl
YW1zIHRvZ2V0aGVyIGluIGEgc2luZ2xlIHBhY2tldAorIGF0IHRoZSB0cmFuc3BvcnQgbGF5ZXIs
IG9uZSBjb3VsZCB1c2UgdGhlIHNlbGYtZGVsaW1pdGluZyBmcmFtaW5nIGZvciBhbGwgYnV0Cisg
dGhlIGxhc3Qgc3RyZWFtLCBhbmQgdGhlbiB0aGUgcmVndWxhciwgdW5kZWxpbWl0ZWQgZnJhbWlu
ZyBmb3IgdGhlIGxhc3Qgb25lLgorUmV2ZXJ0aW5nIHRvIHRoZSB1bmRlbGltaXRlZCBmcmFtaW5n
IGZvciB0aGUgbGFzdCBzdHJlYW0gc2F2ZXMgb3ZlcmhlYWQKKyAoYmVjYXVzZSB0aGUgdG90YWwg
c2l6ZSBvZiB0aGUgdHJhbnNwb3J0LWxheWVyIHBhY2tldCB3aWxsIHN0aWxsIGJlIGtub3duKSwK
KyBhbmQgZW5zdXJlcyB0aGF0IGEgIm11bHRpLWNoYW5uZWwiIHN0cmVhbSB3aGljaCBvbmx5IGhh
cyBhIHNpbmdsZSBPcHVzIHN0cmVhbQorIHVzZXMgdGhlIHNhbWUgZnJhbWluZyBhcyBhIHJlZ3Vs
YXIgT3B1cyBzdHJlYW0gZG9lcy4KK1RoaXMgYXZvaWRzIHRoZSBuZWVkIGZvciBzaWduYWxpbmcg
dG8gZGlzdGluZ3Vpc2ggdGhlc2UgdHdvIGNhc2VzLgorPC90PgorCis8dD4KK1RoZSBzZWxmLWRl
bGltaXRpbmcgZnJhbWluZyBpcyBpZGVudGljYWwgdG8gdGhlIHJlZ3VsYXIsIHVuZGVsaW1pdGVk
IGZyYW1pbmcKKyBmcm9tIDx4cmVmIHRhcmdldD0ibW9kZXMiLz4sIGV4Y2VwdCB0aGF0IGVhY2gg
T3B1cyBwYWNrZXQgY29udGFpbnMgb25lIGV4dHJhCisgbGVuZ3RoIGZpZWxkLCBlbmNvZGVkIHVz
aW5nIHRoZSBzYW1lIG9uZS0gb3IgdHdvLWJ5dGUgc2NoZW1lIGZyb20KKyA8eHJlZiB0YXJnZXQ9
ImZyYW1lLWxlbmd0aC1jb2RpbmciLz4uCitUaGlzIGV4dHJhIGxlbmd0aCBpbW1lZGlhdGVseSBw
cmVjZWRlcyB0aGUgY29tcHJlc3NlZCBkYXRhIG9mIHRoZSBmaXJzdCBPcHVzCisgZnJhbWUgaW4g
dGhlIHBhY2tldCwgYW5kIGlzIGludGVycHJldGVkIGluIHRoZSB2YXJpb3VzIG1vZGVzIGFzIGZv
bGxvd3M6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD4KK0NvZGUmbmJzcDswIHBhY2tldHM6
IEl0IGlzIHRoZSBsZW5ndGggb2YgdGhlIHNpbmdsZSBPcHVzIGZyYW1lIChzZWUKKyA8eHJlZiB0
YXJnZXQ9InNkX2NvZGUwX3BhY2tldCIvPikuCis8L3Q+Cis8dD4KK0NvZGUmbmJzcDsxIHBhY2tl
dHM6IEl0IGlzIHRoZSBsZW5ndGggdXNlZCBmb3IgYm90aCBvZiB0aGUgT3B1cyBmcmFtZXMgKHNl
ZQorIDx4cmVmIHRhcmdldD0ic2RfY29kZTFfcGFja2V0Ii8+KS4KKzwvdD4KKzx0PgorQ29kZSZu
YnNwOzIgcGFja2V0czogSXQgaXMgdGhlIGxlbmd0aCBvZiB0aGUgc2Vjb25kIE9wdXMgZnJhbWUg
KHNlZQorIDx4cmVmIHRhcmdldD0ic2RfY29kZTJfcGFja2V0Ii8+KS48L3Q+Cis8dD4KK0NCUiBD
b2RlJm5ic3A7MyBwYWNrZXRzOiBJdCBpcyB0aGUgbGVuZ3RoIHVzZWQgZm9yIGFsbCBvZiB0aGUg
T3B1cyBmcmFtZXMgKHNlZQorIDx4cmVmIHRhcmdldD0ic2RfY29kZTNjYnJfcGFja2V0Ii8+KS4K
KzwvdD4KKzx0PlZCUiBDb2RlJm5ic3A7MyBwYWNrZXRzOiBJdCBpcyB0aGUgbGVuZ3RoIG9mIHRo
ZSBsYXN0IE9wdXMgZnJhbWUgKHNlZQorIDx4cmVmIHRhcmdldD0ic2RfY29kZTN2YnJfcGFja2V0
Ii8+KS4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9InNkX2NvZGUwX3Bh
Y2tldCIgdGl0bGU9IkEgU2VsZi1EZWxpbWl0ZWQgQ29kZSAwIFBhY2tldCIKKyBhbGlnbj0iY2Vu
dGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAg
ICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAz
IDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEK
KystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rCit8IGNvbmZpZyAgfHN8MHwwfCBOMSAoMS0yIGJ5dGVzKTogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAgICAgICBDb21wcmVzc2Vk
IGZyYW1lIDEgKE4xIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICA6Cis6ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorfCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPGZpZ3VyZSBhbmNob3I9
InNkX2NvZGUxX3BhY2tldCIgdGl0bGU9IkEgU2VsZi1EZWxpbWl0ZWQgQ29kZSAxIFBhY2tldCIK
KyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAg
ICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAg
IDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUg
NiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rCit8IGNvbmZpZyAgfHN8MHwxfCBOMSAoMS0yIGJ5dGVzKTog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAg
ICBDb21wcmVzc2VkIGZyYW1lIDEgKE4xIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICB8Cis6ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFt
ZSAyIChOMSBieXRlcykuLi4gICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorCis8ZmlndXJlIGFuY2hvcj0ic2RfY29kZTJfcGFja2V0IiB0aXRsZT0iQSBTZWxmLURlbGlt
aXRlZCBDb2RlIDIgUGFja2V0IgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNl
bnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAg
IDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUg
NiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgY29uZmlnICB8c3wx
fDB8IE4xICgxLTIgYnl0ZXMpOiBOMiAoMS0yIGJ5dGVzIDogICAgICAgICAgICAgICB8CisrLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rICAgICAgICAgICAg
ICAgOgorfCAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMSAoTjEgYnl0ZXMpLi4uICAg
ICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAg
ICAgICBDb21wcmVzc2VkIGZyYW1lIDIgKE4yIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICA6Cis6
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKwor
PGZpZ3VyZSBhbmNob3I9InNkX2NvZGUzY2JyX3BhY2tldCIgdGl0bGU9IkEgU2VsZi1EZWxpbWl0
ZWQgQ0JSIENvZGUgMyBQYWNrZXQiCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0i
Y2VudGVyIj48IVtDREFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAg
ICAgMiAgICAgICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQg
NSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxz
fDF8MXwwfHB8ICAgICBNICAgICB8IFBhZCBsZW4gKE9wdCkgOiBOMSAoMS0yIGJ5dGVzKToKKyst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMSAoTjEg
Ynl0ZXMpLi4uICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwK
KzogICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDIgKE4xIGJ5dGVzKS4uLiAgICAgICAg
ICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOgorfCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUg
TSAoTjEgYnl0ZXMpLi4uICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworOiAg
ICAgICAgICAgICAgICAgIE9wdXMgUGFkZGluZyAoT3B0aW9uYWwpLi4uICAgICAgICAgICAgICAg
ICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPGZpZ3VyZSBhbmNo
b3I9InNkX2NvZGUzdmJyX3BhY2tldCIgdGl0bGU9IkEgU2VsZi1EZWxpbWl0ZWQgVkJSIENvZGUg
MyBQYWNrZXQiCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAg
ICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAg
MSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxzfDF8MXwxfHB8ICAg
ICBNICAgICB8IFBhZGRpbmcgbGVuZ3RoIChPcHRpb25hbCkgICAgIDoKKystKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCis6IE4x
ICgxLTIgYnl0ZXMpOiAgICAgLi4uICAgICAgIDogICAgIE5bTS0xXSAgICB8ICAgICBOW01dICAg
ICAgOgorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFt
ZSAxIChOMSBieXRlcykuLi4gICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfAorOiAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMiAoTjIgYnl0ZXMpLi4u
ICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAuLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6
Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICBDb21wcmVzc2Vk
IGZyYW1lIE0gKE5bTV0gYnl0ZXMpLi4uICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rCis6ICAgICAgICAgICAgICAgICAgT3B1cyBQYWRkaW5nIChPcHRpb25hbCkuLi4gICAgICAg
ICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8L3Nl
Y3Rpb24+CisKKzwvYmFjaz4KKworPC9yZmM+CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9kcmFmdC1pZXRmLXBh
eWxvYWQtcnRwLW9wdXMueG1sIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1wYXlsb2FkLXJ0cC1vcHVzLnhtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5jNGViMjEwNzdiNzIyNGVmMTQ0M2Y2ZDQ1NjU4MzI2MDRmNDdkZDM4Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1wYXlsb2FkLXJ0cC1vcHVzLnhtbApAQCAtMCww
ICsxLDk2MCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzwhRE9D
VFlQRSByZmMgU1lTVEVNICJyZmMyNjI5LmR0ZCIgWworPCFFTlRJVFkgcmZjMjExOSBQVUJMSUMg
JycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5S
RkMuMjExOS54bWwnPgorPCFFTlRJVFkgcmZjMzM4OSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVz
b3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzM4OS54bWwnPgorPCFF
TlRJVFkgcmZjMzU1MCBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9y
ZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzU1MC54bWwnPgorPCFFTlRJVFkgcmZjMzcxMSBQVUJM
SUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5j
ZS5SRkMuMzcxMS54bWwnPgorPCFFTlRJVFkgcmZjMzU1MSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwu
cmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzU1MS54bWwnPgor
PCFFTlRJVFkgcmZjNjgzOCBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1Ymxp
Yy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNjgzOC54bWwnPgorPCFFTlRJVFkgcmZjNDg1NSBQ
VUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVy
ZW5jZS5SRkMuNDg1NS54bWwnPgorPCFFTlRJVFkgcmZjNDU2NiBQVUJMSUMgJycgJ2h0dHA6Ly94
bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNDU2Ni54bWwn
PgorPCFFTlRJVFkgcmZjNDU4NSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1
YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNDU4NS54bWwnPgorPCFFTlRJVFkgcmZjMzI2
NCBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3Jl
ZmVyZW5jZS5SRkMuMzI2NC54bWwnPgorPCFFTlRJVFkgcmZjMjk3NCBQVUJMSUMgJycgJ2h0dHA6
Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMjk3NC54
bWwnPgorPCFFTlRJVFkgcmZjMjMyNiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3Jn
L3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMjMyNi54bWwnPgorPCFFTlRJVFkgcmZj
MzU1NSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1s
L3JlZmVyZW5jZS5SRkMuMzU1NS54bWwnPgorPCFFTlRJVFkgcmZjNTEyNCBQVUJMSUMgJycgJ2h0
dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNTEy
NC54bWwnPgorPCFFTlRJVFkgcmZjNTQwNSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uu
b3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNTQwNS54bWwnPgorPCFFTlRJVFkg
cmZjNTU3NiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmli
eG1sL3JlZmVyZW5jZS5SRkMuNTU3Ni54bWwnPgorPCFFTlRJVFkgcmZjNjU2MiBQVUJMSUMgJycg
J2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMu
NjU2Mi54bWwnPgorPCFFTlRJVFkgcmZjNjcxNiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3Vy
Y2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNjcxNi54bWwnPgorPCFFTlRJ
VFkgcmZjNzIwMiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMv
YmlieG1sL3JlZmVyZW5jZS5SRkMuNzIwMi54bWwnPgorPCFFTlRJVFkgbmJzcCAiJiMxNjA7Ij4K
KyAgXT4KKworICA8cmZjIGNhdGVnb3J5PSJzdGQiIGlwcj0idHJ1c3QyMDA5MDIiIGRvY05hbWU9
ImRyYWZ0LWlldGYtcGF5bG9hZC1ydHAtb3B1cy0xMSI+Cis8P3htbC1zdHlsZXNoZWV0IHR5cGU9
J3RleHQveHNsJyBocmVmPSdyZmMyNjI5LnhzbHQnID8+CisKKzw/cmZjIHN0cmljdD0ieWVzIiA/
PgorPD9yZmMgdG9jPSJ5ZXMiID8+Cis8P3JmYyB0b2NkZXB0aD0iMyIgPz4KKzw/cmZjIHRvY2Fw
cGVuZGl4PSdubycgPz4KKzw/cmZjIHRvY2luZGVudD0neWVzJyA/PgorPD9yZmMgc3ltcmVmcz0i
eWVzIiA/PgorPD9yZmMgc29ydHJlZnM9InllcyIgPz4KKzw/cmZjIGNvbXBhY3Q9Im5vIiA/Pgor
PD9yZmMgc3ViY29tcGFjdD0ieWVzIiA/PgorPD9yZmMgaXBybm90aWZpZWQ9InllcyIgPz4KKwor
ICA8ZnJvbnQ+CisgICAgPHRpdGxlIGFiYnJldj0iUlRQIFBheWxvYWQgRm9ybWF0IGZvciBPcHVz
Ij4KKyAgICAgIFJUUCBQYXlsb2FkIEZvcm1hdCBmb3IgdGhlIE9wdXMgU3BlZWNoIGFuZCBBdWRp
byBDb2RlYworICAgIDwvdGl0bGU+CisKKyAgICA8YXV0aG9yIGZ1bGxuYW1lPSJKdWxpYW4gU3Bp
dHRrYSIgaW5pdGlhbHM9IkouIiBzdXJuYW1lPSJTcGl0dGthIj4KKyAgICAgIDxhZGRyZXNzPgor
ICAgICAgICA8ZW1haWw+anNwaXR0a2FAZ21haWwuY29tPC9lbWFpbD4KKyAgICAgIDwvYWRkcmVz
cz4KKyAgICA8L2F1dGhvcj4KKworICAgIDxhdXRob3IgaW5pdGlhbHM9J0suJyBzdXJuYW1lPSdW
b3MnIGZ1bGxuYW1lPSdLb2VuIFZvcyc+CisgICAgICA8b3JnYW5pemF0aW9uPnZvY1RvbmU8L29y
Z2FuaXphdGlvbj4KKyAgICAgIDxhZGRyZXNzPgorICAgICAgICA8cG9zdGFsPgorICAgICAgICAg
IDxzdHJlZXQ+PC9zdHJlZXQ+CisgICAgICAgICAgPGNvZGU+PC9jb2RlPgorICAgICAgICAgIDxj
aXR5PjwvY2l0eT4KKyAgICAgICAgICA8cmVnaW9uPjwvcmVnaW9uPgorICAgICAgICAgIDxjb3Vu
dHJ5PjwvY291bnRyeT4KKyAgICAgICAgPC9wb3N0YWw+CisgICAgICAgIDxlbWFpbD5rb2Vudm9z
NzRAZ21haWwuY29tPC9lbWFpbD4KKyAgICAgIDwvYWRkcmVzcz4KKyAgICA8L2F1dGhvcj4KKwor
ICAgIDxhdXRob3IgaW5pdGlhbHM9IkpNIiBzdXJuYW1lPSJWYWxpbiIgZnVsbG5hbWU9IkplYW4t
TWFyYyBWYWxpbiI+CisgICAgICA8b3JnYW5pemF0aW9uPk1vemlsbGE8L29yZ2FuaXphdGlvbj4K
KyAgICAgIDxhZGRyZXNzPgorICAgICAgICA8cG9zdGFsPgorICAgICAgICAgIDxzdHJlZXQ+MzMx
IEUuIEV2ZWx5biBBdmVudWU8L3N0cmVldD4KKyAgICAgICAgICA8Y2l0eT5Nb3VudGFpbiBWaWV3
PC9jaXR5PgorICAgICAgICAgIDxyZWdpb24+Q0E8L3JlZ2lvbj4KKyAgICAgICAgICA8Y29kZT45
NDA0MTwvY29kZT4KKyAgICAgICAgICA8Y291bnRyeT5VU0E8L2NvdW50cnk+CisgICAgICAgIDwv
cG9zdGFsPgorICAgICAgICA8ZW1haWw+am12YWxpbkBqbXZhbGluLmNhPC9lbWFpbD4KKyAgICAg
IDwvYWRkcmVzcz4KKyAgICA8L2F1dGhvcj4KKworICAgIDxkYXRlIGRheT0nMTQnIG1vbnRoPSdB
cHJpbCcgeWVhcj0nMjAxNScgLz4KKworICAgIDxhYnN0cmFjdD4KKyAgICAgIDx0PgorICAgICAg
ICBUaGlzIGRvY3VtZW50IGRlZmluZXMgdGhlIFJlYWwtdGltZSBUcmFuc3BvcnQgUHJvdG9jb2wg
KFJUUCkgcGF5bG9hZAorICAgICAgICBmb3JtYXQgZm9yIHBhY2tldGl6YXRpb24gb2YgT3B1cyBl
bmNvZGVkCisgICAgICAgIHNwZWVjaCBhbmQgYXVkaW8gZGF0YSBuZWNlc3NhcnkgdG8gaW50ZWdy
YXRlIHRoZSBjb2RlYyBpbiB0aGUKKyAgICAgICAgbW9zdCBjb21wYXRpYmxlIHdheS4gSXQgYWxz
byBwcm92aWRlcyBhbiBhcHBsaWNhYmlsaXR5IHN0YXRlbWVudAorICAgICAgICBmb3IgdGhlIHVz
ZSBvZiBPcHVzIG92ZXIgUlRQLiBGdXJ0aGVyLCBpdCBkZXNjcmliZXMgbWVkaWEgdHlwZSByZWdp
c3RyYXRpb25zCisgICAgICAgIGZvciB0aGUgUlRQIHBheWxvYWQgZm9ybWF0LgorICAgICAgPC90
PgorICAgIDwvYWJzdHJhY3Q+CisgIDwvZnJvbnQ+CisKKyAgPG1pZGRsZT4KKyAgICA8c2VjdGlv
biB0aXRsZT0nSW50cm9kdWN0aW9uJz4KKyAgICAgIDx0PgorICAgICAgICBPcHVzIDx4cmVmIHRh
cmdldD0iUkZDNjcxNiIvPiBpcyBhIHNwZWVjaCBhbmQgYXVkaW8gY29kZWMgZGV2ZWxvcGVkIHdp
dGhpbiB0aGUKKyAgICAgICAgSUVURiBJbnRlcm5ldCBXaWRlYmFuZCBBdWRpbyBDb2RlYyB3b3Jr
aW5nIGdyb3VwLiBUaGUgY29kZWMKKyAgICAgICAgaGFzIGEgdmVyeSBsb3cgYWxnb3JpdGhtaWMg
ZGVsYXkgYW5kIGl0CisgICAgICAgIGlzIGhpZ2hseSBzY2FsYWJsZSBpbiB0ZXJtcyBvZiBhdWRp
byBiYW5kd2lkdGgsIGJpdHJhdGUsIGFuZAorICAgICAgICBjb21wbGV4aXR5LiBGdXJ0aGVyLCBp
dCBwcm92aWRlcyBkaWZmZXJlbnQgbW9kZXMgdG8gZWZmaWNpZW50bHkgZW5jb2RlIHNwZWVjaCBz
aWduYWxzCisgICAgICAgIGFzIHdlbGwgYXMgbXVzaWMgc2lnbmFscywgdGh1cyBtYWtpbmcgaXQg
dGhlIGNvZGVjIG9mIGNob2ljZSBmb3IKKyAgICAgICAgdmFyaW91cyBhcHBsaWNhdGlvbnMgdXNp
bmcgdGhlIEludGVybmV0IG9yIHNpbWlsYXIgbmV0d29ya3MuCisgICAgICA8L3Q+CisgICAgICA8
dD4KKyAgICAgICAgVGhpcyBkb2N1bWVudCBkZWZpbmVzIHRoZSBSZWFsLXRpbWUgVHJhbnNwb3J0
IFByb3RvY29sIChSVFApCisgICAgICAgIDx4cmVmIHRhcmdldD0iUkZDMzU1MCIvPiBwYXlsb2Fk
IGZvcm1hdCBmb3IgcGFja2V0aXphdGlvbgorICAgICAgICBvZiBPcHVzIGVuY29kZWQgc3BlZWNo
IGFuZCBhdWRpbyBkYXRhIG5lY2Vzc2FyeSB0bworICAgICAgICBpbnRlZ3JhdGUgT3B1cyBpbiB0
aGUKKyAgICAgICAgbW9zdCBjb21wYXRpYmxlIHdheS4gSXQgYWxzbyBwcm92aWRlcyBhbiBhcHBs
aWNhYmlsaXR5IHN0YXRlbWVudAorICAgICAgICBmb3IgdGhlIHVzZSBvZiBPcHVzIG92ZXIgUlRQ
LgorICAgICAgICBGdXJ0aGVyLCBpdCBkZXNjcmliZXMgbWVkaWEgdHlwZSByZWdpc3RyYXRpb25z
IGZvcgorICAgICAgICB0aGUgUlRQIHBheWxvYWQgZm9ybWF0LgorICAgICAgPC90PgorICAgIDwv
c2VjdGlvbj4KKworICAgIDxzZWN0aW9uIHRpdGxlPSdDb252ZW50aW9ucywgRGVmaW5pdGlvbnMg
YW5kIEFjcm9ueW1zIHVzZWQgaW4gdGhpcyBkb2N1bWVudCc+CisgICAgICA8dD5UaGUga2V5IHdv
cmRzICJNVVNUIiwgIk1VU1QgTk9UIiwgIlJFUVVJUkVEIiwgIlNIQUxMIiwgIlNIQUxMIE5PVCIs
CisgICAgICAiU0hPVUxEIiwgIlNIT1VMRCBOT1QiLCAiUkVDT01NRU5ERUQiLCAiTUFZIiwgYW5k
ICJPUFRJT05BTCIgaW4gdGhpcworICAgICAgZG9jdW1lbnQgYXJlIHRvIGJlIGludGVycHJldGVk
IGFzIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9IlJGQzIxMTkiLz4uPC90PgorICAgICAgPHQ+
CisgICAgICA8bGlzdCBzdHlsZT0naGFuZ2luZyc+CisgICAgICAgICAgPHQgaGFuZ1RleHQ9ImF1
ZGlvIGJhbmR3aWR0aDoiPiBUaGUgcmFuZ2Ugb2YgYXVkaW8gZnJlcXVlY2llcyBiZWluZyBjb2Rl
ZDwvdD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0iQ0JSOiI+IENvbnN0YW50IGJpdHJhdGU8L3Q+
CisgICAgICAgICAgPHQgaGFuZ1RleHQ9IkNQVToiPiBDZW50cmFsIFByb2Nlc3NpbmcgVW5pdDwv
dD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0iRFRYOiI+IERpc2NvbnRpbnVvdXMgdHJhbnNtaXNz
aW9uPC90PgorICAgICAgICAgIDx0IGhhbmdUZXh0PSJGRUM6Ij4gRm9yd2FyZCBlcnJvciBjb3Jy
ZWN0aW9uPC90PgorICAgICAgICAgIDx0IGhhbmdUZXh0PSJJUDoiPiBJbnRlcm5ldCBQcm90b2Nv
bDwvdD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0ic2FtcGxlczoiPiBTcGVlY2ggb3IgYXVkaW8g
c2FtcGxlcyAocGVyIGNoYW5uZWwpPC90PgorICAgICAgICAgIDx0IGhhbmdUZXh0PSJTRFA6Ij4g
U2Vzc2lvbiBEZXNjcmlwdGlvbiBQcm90b2NvbDwvdD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0i
VkJSOiI+IFZhcmlhYmxlIGJpdHJhdGU8L3Q+CisgICAgICA8L2xpc3Q+CisgICAgICA8L3Q+Cisg
ICAgICAgIDx0PgorICAgICAgICAgIFRocm91Z2hvdXQgdGhpcyBkb2N1bWVudCwgd2UgcmVmZXIg
dG8gdGhlIGZvbGxvd2luZyBkZWZpbml0aW9uczoKKyAgICAgICAgPC90PgorICAgICAgICAgIDx0
ZXh0dGFibGUgYW5jaG9yPSdiYW5kd2lkdGhfZGVmaW5pdGlvbnMnPgorICAgICAgICAgICAgPHR0
Y29sIGFsaWduPSdjZW50ZXInPkFiYnJldmlhdGlvbjwvdHRjb2w+CisgICAgICAgICAgICA8dHRj
b2wgYWxpZ249J2NlbnRlcic+TmFtZTwvdHRjb2w+CisgICAgICAgICAgICA8dHRjb2wgYWxpZ249
J2NlbnRlcic+QXVkaW8gQmFuZHdpZHRoIChIeik8L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29s
IGFsaWduPSdjZW50ZXInPlNhbXBsaW5nIFJhdGUgKEh6KTwvdHRjb2w+CisgICAgICAgICAgICA8
Yz5OQjwvYz4KKyAgICAgICAgICAgIDxjPk5hcnJvd2JhbmQ8L2M+CisgICAgICAgICAgICA8Yz4w
IC0gNDAwMDwvYz4KKyAgICAgICAgICAgIDxjPjgwMDA8L2M+CisKKyAgICAgICAgICAgIDxjPk1C
PC9jPgorICAgICAgICAgICAgPGM+TWVkaXVtYmFuZDwvYz4KKyAgICAgICAgICAgIDxjPjAgLSA2
MDAwPC9jPgorICAgICAgICAgICAgPGM+MTIwMDA8L2M+CisKKyAgICAgICAgICAgIDxjPldCPC9j
PgorICAgICAgICAgICAgPGM+V2lkZWJhbmQ8L2M+CisgICAgICAgICAgICA8Yz4wIC0gODAwMDwv
Yz4KKyAgICAgICAgICAgIDxjPjE2MDAwPC9jPgorCisgICAgICAgICAgICA8Yz5TV0I8L2M+Cisg
ICAgICAgICAgICA8Yz5TdXBlci13aWRlYmFuZDwvYz4KKyAgICAgICAgICAgIDxjPjAgLSAxMjAw
MDwvYz4KKyAgICAgICAgICAgIDxjPjI0MDAwPC9jPgorCisgICAgICAgICAgICA8Yz5GQjwvYz4K
KyAgICAgICAgICAgIDxjPkZ1bGxiYW5kPC9jPgorICAgICAgICAgICAgPGM+MCAtIDIwMDAwPC9j
PgorICAgICAgICAgICAgPGM+NDgwMDA8L2M+CisKKyAgICAgICAgICAgIDxwb3N0YW1ibGU+Cisg
ICAgICAgICAgICAgIEF1ZGlvIGJhbmR3aWR0aCBuYW1pbmcKKyAgICAgICAgICAgIDwvcG9zdGFt
YmxlPgorICAgICAgICAgIDwvdGV4dHRhYmxlPgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0
aW9uIHRpdGxlPSdPcHVzIENvZGVjJz4KKyAgICAgIDx0PgorICAgICAgICBPcHVzIGVuY29kZXMg
c3BlZWNoCisgICAgICAgIHNpZ25hbHMgYXMgd2VsbCBhcyBnZW5lcmFsIGF1ZGlvIHNpZ25hbHMu
IFR3byBkaWZmZXJlbnQgbW9kZXMgY2FuIGJlCisgICAgICAgIGNob3NlbiwgYSB2b2ljZSBtb2Rl
IG9yIGFuIGF1ZGlvIG1vZGUsIHRvIGFsbG93IHRoZSBtb3N0IGVmZmljaWVudCBjb2RpbmcKKyAg
ICAgICAgZGVwZW5kaW5nIG9uIHRoZSB0eXBlIG9mIHRoZSBpbnB1dCBzaWduYWwsIHRoZSBzYW1w
bGluZyBmcmVxdWVuY3kgb2YgdGhlCisgICAgICAgIGlucHV0IHNpZ25hbCwgYW5kIHRoZSBpbnRl
bmRlZCBhcHBsaWNhdGlvbi4KKyAgICAgIDwvdD4KKworICAgICAgPHQ+CisgICAgICAgIFRoZSB2
b2ljZSBtb2RlIGFsbG93cyBlZmZpY2llbnQgZW5jb2Rpbmcgb2Ygdm9pY2Ugc2lnbmFscyBhdCBs
b3dlciBiaXQKKyAgICAgICAgcmF0ZXMgd2hpbGUgdGhlIGF1ZGlvIG1vZGUgaXMgb3B0aW1pemVk
IGZvciBnZW5lcmFsIGF1ZGlvIHNpZ25hbHMgYXQgbWVkaXVtIGFuZAorICAgICAgICBoaWdoZXIg
Yml0cmF0ZXMuCisgICAgICA8L3Q+CisKKyAgICAgIDx0PgorICAgICAgICBPcHVzIGlzIGhpZ2hs
eSBzY2FsYWJsZSBpbiB0ZXJtcyBvZiBhdWRpbworICAgICAgICBiYW5kd2lkdGgsIGJpdHJhdGUs
IGFuZCBjb21wbGV4aXR5LiBGdXJ0aGVyLCBPcHVzIGFsbG93cworICAgICAgICB0cmFuc21pdHRp
bmcgc3RlcmVvIHNpZ25hbHMgd2l0aCBpbi1iYW5kIHNpZ25hbGluZyBpbiB0aGUgYml0LXN0cmVh
bS4KKyAgICAgIDwvdD4KKworICAgICAgPHNlY3Rpb24gdGl0bGU9J05ldHdvcmsgQmFuZHdpZHRo
Jz4KKyAgICAgICAgICA8dD4KKyAgICAgICAgICAgIE9wdXMgc3VwcG9ydHMgYml0cmF0ZXMgZnJv
bSA2Jm5ic3A7a2IvcyB0byA1MTAmbmJzcDtrYi9zLgorICAgICAgICAgICAgVGhlIGJpdHJhdGUg
Y2FuIGJlIGNoYW5nZWQgZHluYW1pY2FsbHkgd2l0aGluIHRoYXQgcmFuZ2UuCisgICAgICAgICAg
ICBBbGwKKyAgICAgICAgICAgIG90aGVyIHBhcmFtZXRlcnMgYmVpbmcKKyAgICAgICAgICAgIGVx
dWFsLCBoaWdoZXIgYml0cmF0ZXMgcmVzdWx0IGluIGhpZ2hlciBhdWRpbyBxdWFsaXR5LgorICAg
ICAgICAgIDwvdD4KKyAgICAgICAgICA8c2VjdGlvbiB0aXRsZT0nUmVjb21tZW5kZWQgQml0cmF0
ZScgYW5jaG9yPSdiaXRyYXRlX2J5X2JhbmR3aWR0aCc+CisgICAgICAgICAgPHQ+CisgICAgICAg
ICAgICBGb3IgYSBmcmFtZSBzaXplIG9mCisgICAgICAgICAgICAyMCZuYnNwO21zLCB0aGVzZQor
ICAgICAgICAgICAgYXJlIHRoZSBiaXRyYXRlICJzd2VldCBzcG90cyIgZm9yIE9wdXMgaW4gdmFy
aW91cyBjb25maWd1cmF0aW9uczoKKworICAgICAgICAgIDxsaXN0IHN0eWxlPSJzeW1ib2xzIj4K
KyAgICAgICAgICAgIDx0PjgtMTIga2IvcyBmb3IgTkIgc3BlZWNoLDwvdD4KKyAgICAgICAgICAg
IDx0PjE2LTIwIGtiL3MgZm9yIFdCIHNwZWVjaCw8L3Q+CisgICAgICAgICAgICA8dD4yOC00MCBr
Yi9zIGZvciBGQiBzcGVlY2gsPC90PgorICAgICAgICAgICAgPHQ+NDgtNjQga2IvcyBmb3IgRkIg
bW9ubyBtdXNpYywgYW5kPC90PgorICAgICAgICAgICAgPHQ+NjQtMTI4IGtiL3MgZm9yIEZCIHN0
ZXJlbyBtdXNpYy48L3Q+CisgICAgICAgICAgPC9saXN0PgorICAgICAgICA8L3Q+CisgICAgICA8
L3NlY3Rpb24+CisgICAgICAgIDxzZWN0aW9uIHRpdGxlPSdWYXJpYWJsZSB2ZXJzdXMgQ29uc3Rh
bnQgQml0cmF0ZScgIGFuY2hvcj0ndmFyaWFibGUtdnMtY29uc3RhbnQtYml0cmF0ZSc+CisgICAg
ICAgICAgPHQ+CisgICAgICAgICAgICBGb3IgdGhlIHNhbWUgYXZlcmFnZSBiaXRyYXRlLCB2YXJp
YWJsZSBiaXRyYXRlIChWQlIpIGNhbiBhY2hpZXZlIGhpZ2hlciBhdWRpbyBxdWFsaXR5CisgICAg
ICAgICAgICB0aGFuIGNvbnN0YW50IGJpdHJhdGUgKENCUikuIEZvciB0aGUgbWFqb3JpdHkgb2Yg
dm9pY2UgdHJhbnNtaXNzaW9uIGFwcGxpY2F0aW9ucywgVkJSCisgICAgICAgICAgICBpcyB0aGUg
YmVzdCBjaG9pY2UuIE9uZSByZWFzb24gZm9yIGNob29zaW5nIENCUiBpcyB0aGUgcG90ZW50aWFs
CisgICAgICAgICAgICBpbmZvcm1hdGlvbiBsZWFrIHRoYXQgPHNwYW54IHN0eWxlPSdlbXBoJz5t
aWdodDwvc3Bhbng+IG9jY3VyIHdoZW4gZW5jcnlwdGluZyB0aGUKKyAgICAgICAgICAgIGNvbXBy
ZXNzZWQgc3RyZWFtLiBTZWUgPHhyZWYgdGFyZ2V0PSJSRkM2NTYyIi8+IGZvciBndWlkZWxpbmVz
IG9uIHdoZW4gVkJSIGlzCisgICAgICAgICAgICBhcHByb3ByaWF0ZSBmb3IgZW5jcnlwdGVkIGF1
ZGlvIGNvbW11bmljYXRpb25zLiBJbiB0aGUgY2FzZSB3aGVyZSBhbiBleGlzdGluZworICAgICAg
ICAgICAgVkJSIHN0cmVhbSBuZWVkcyB0byBiZSBjb252ZXJ0ZWQgdG8gQ0JSIGZvciBzZWN1cml0
eSByZWFzb25zLCB0aGVuIHRoZSBPcHVzIHBhZGRpbmcKKyAgICAgICAgICAgIG1lY2hhbmlzbSBk
ZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+IGlzIHRoZSBSRUNPTU1FTkRFRCB3
YXkgdG8gYWNoaWV2ZSBwYWRkaW5nCisgICAgICAgICAgICBiZWNhdXNlIHRoZSBSVFAgcGFkZGlu
ZyBiaXQgaXMgdW5lbmNyeXB0ZWQuPC90PgorCisgICAgICAgICAgPHQ+CisgICAgICAgICAgICBU
aGUgYml0cmF0ZSBjYW4gYmUgYWRqdXN0ZWQgYXQgYW55IHBvaW50IGluIHRpbWUuIFRvIGF2b2lk
IGNvbmdlc3Rpb24sCisgICAgICAgICAgICB0aGUgYXZlcmFnZSBiaXRyYXRlIFNIT1VMRCBOT1Qg
ZXhjZWVkIHRoZSBhdmFpbGFibGUKKyAgICAgICAgICAgIG5ldHdvcmsgYmFuZHdpZHRoLiBJZiBu
byB0YXJnZXQgYml0cmF0ZSBpcyBzcGVjaWZpZWQsIHRoZSBiaXRyYXRlcyBzcGVjaWZpZWQgaW4K
KyAgICAgICAgICAgIDx4cmVmIHRhcmdldD0nYml0cmF0ZV9ieV9iYW5kd2lkdGgnLz4gYXJlIFJF
Q09NTUVOREVELgorICAgICAgICAgIDwvdD4KKworICAgICAgICA8L3NlY3Rpb24+CisKKyAgICAg
ICAgPHNlY3Rpb24gdGl0bGU9J0Rpc2NvbnRpbnVvdXMgVHJhbnNtaXNzaW9uIChEVFgpJz4KKwor
ICAgICAgICAgIDx0PgorICAgICAgICAgICAgT3B1cyBjYW4sIGFzIGRlc2NyaWJlZCBpbiA8eHJl
ZiB0YXJnZXQ9J3ZhcmlhYmxlLXZzLWNvbnN0YW50LWJpdHJhdGUnLz4sCisgICAgICAgICAgICBi
ZSBvcGVyYXRlZCB3aXRoIGEgdmFyaWFibGUgYml0cmF0ZS4gSW4gdGhhdCBjYXNlLCB0aGUgZW5j
b2RlciB3aWxsCisgICAgICAgICAgICBhdXRvbWF0aWNhbGx5IHJlZHVjZSB0aGUgYml0cmF0ZSBm
b3IgY2VydGFpbiBpbnB1dCBzaWduYWxzLCBsaWtlIHBlcmlvZHMKKyAgICAgICAgICAgIG9mIHNp
bGVuY2UuIFdoZW4gdXNpbmcgY29udGludW91cyB0cmFuc21pc3Npb24sIGl0IHdpbGwgcmVkdWNl
IHRoZQorICAgICAgICAgICAgYml0cmF0ZSB3aGVuIHRoZSBjaGFyYWN0ZXJpc3RpY3Mgb2YgdGhl
IGlucHV0IHNpZ25hbCBwZXJtaXQsIGJ1dAorICAgICAgICAgICAgd2lsbCBuZXZlciBpbnRlcnJ1
cHQgdGhlIHRyYW5zbWlzc2lvbiB0byB0aGUgcmVjZWl2ZXIuIFRoZXJlZm9yZSwgdGhlCisgICAg
ICAgICAgICByZWNlaXZlZCBzaWduYWwgd2lsbCBtYWludGFpbiB0aGUgc2FtZSBoaWdoIGxldmVs
IG9mIGF1ZGlvIHF1YWxpdHkgb3ZlciB0aGUKKyAgICAgICAgICAgIGZ1bGwgZHVyYXRpb24gb2Yg
YSB0cmFuc21pc3Npb24gd2hpbGUgbWluaW1pemluZyB0aGUgYXZlcmFnZSBiaXQKKyAgICAgICAg
ICAgIHJhdGUgb3ZlciB0aW1lLgorICAgICAgICAgIDwvdD4KKworICAgICAgICAgIDx0PgorICAg
ICAgICAgICAgSW4gY2FzZXMgd2hlcmUgdGhlIGJpdHJhdGUgb2YgT3B1cyBuZWVkcyB0byBiZSBy
ZWR1Y2VkIGV2ZW4KKyAgICAgICAgICAgIGZ1cnRoZXIgb3IgaW4gY2FzZXMgd2hlcmUgb25seSBj
b25zdGFudCBiaXRyYXRlIGlzIGF2YWlsYWJsZSwKKyAgICAgICAgICAgIHRoZSBPcHVzIGVuY29k
ZXIgY2FuIHVzZSBkaXNjb250aW51b3VzCisgICAgICAgICAgICB0cmFuc21pc3Npb24gKERUWCks
IHdoZXJlIHBhcnRzIG9mIHRoZSBlbmNvZGVkIHNpZ25hbCB0aGF0CisgICAgICAgICAgICBjb3Jy
ZXNwb25kIHRvIHBlcmlvZHMgb2Ygc2lsZW5jZSBpbiB0aGUgaW5wdXQgc3BlZWNoIG9yIGF1ZGlv
IHNpZ25hbAorICAgICAgICAgICAgYXJlIG5vdCB0cmFuc21pdHRlZCB0byB0aGUgcmVjZWl2ZXIu
IEEgcmVjZWl2ZXIgY2FuIGRpc3Rpbmd1aXNoCisgICAgICAgICAgICBiZXR3ZWVuIERUWCBhbmQg
cGFja2V0IGxvc3MgYnkgbG9va2luZyBmb3IgZ2FwcyBpbiB0aGUgc2VxdWVuY2UKKyAgICAgICAg
ICAgIG51bWJlciwgYXMgZGVzY3JpYmVkIGJ5IFNlY3Rpb24gNC4xCisgICAgICAgICAgICBvZiZu
YnNwOzx4cmVmIHRhcmdldD0iUkZDMzU1MSIvPi4KKyAgICAgICAgICA8L3Q+CisKKyAgICAgICAg
ICA8dD4KKyAgICAgICAgICAgIE9uIHRoZSByZWNlaXZpbmcgc2lkZSwgdGhlIG5vbi10cmFuc21p
dHRlZCBwYXJ0cyB3aWxsIGJlIGhhbmRsZWQgYnkgYQorICAgICAgICAgICAgZnJhbWUgbG9zcyBj
b25jZWFsbWVudCB1bml0IGluIHRoZSBPcHVzIGRlY29kZXIgd2hpY2ggZ2VuZXJhdGVzIGEKKyAg
ICAgICAgICAgIGNvbWZvcnQgbm9pc2Ugc2lnbmFsIHRvIHJlcGxhY2UgdGhlIG5vbiB0cmFuc21p
dHRlZCBwYXJ0cyBvZiB0aGUKKyAgICAgICAgICAgIHNwZWVjaCBvciBhdWRpbyBzaWduYWwuIFVz
ZSBvZiA8eHJlZiB0YXJnZXQ9IlJGQzMzODkiLz4gQ29tZm9ydAorICAgICAgICAgICAgTm9pc2Ug
KENOKSB3aXRoIE9wdXMgaXMgZGlzY291cmFnZWQuCisgICAgICAgICAgICBUaGUgdHJhbnNtaXR0
ZXIgTVVTVCBkcm9wIHdob2xlIGZyYW1lcyBvbmx5LAorICAgICAgICAgICAgYmFzZWQgb24gdGhl
IHNpemUgb2YgdGhlIGxhc3QgdHJhbnNtaXR0ZWQgZnJhbWUsCisgICAgICAgICAgICB0byBlbnN1
cmUgc3VjY2Vzc2l2ZSBSVFAgdGltZXN0YW1wcyBkaWZmZXIgYnkgYSBtdWx0aXBsZSBvZiAxMjAg
YW5kCisgICAgICAgICAgICB0byBhbGxvdyB0aGUgcmVjZWl2ZXIgdG8gdXNlIHdob2xlIGZyYW1l
cyBmb3IgY29uY2VhbG1lbnQuCisgICAgICAgICAgPC90PgorCisgICAgICAgICAgPHQ+CisgICAg
ICAgICAgICBEVFggY2FuIGJlIHVzZWQgd2l0aCBib3RoIHZhcmlhYmxlIGFuZCBjb25zdGFudCBi
aXRyYXRlLgorICAgICAgICAgICAgSXQgd2lsbCBoYXZlIGEgc2xpZ2h0bHkgbG93ZXIgc3BlZWNo
IG9yIGF1ZGlvCisgICAgICAgICAgICBxdWFsaXR5IHRoYW4gY29udGludW91cyB0cmFuc21pc3Np
b24uIFRoZXJlZm9yZSwgdXNpbmcgY29udGludW91cworICAgICAgICAgICAgdHJhbnNtaXNzaW9u
IGlzIFJFQ09NTUVOREVEIHVubGVzcyBjb25zdHJhaW50cyBvbiBhdmFpbGFibGUgbmV0d29yayBi
YW5kd2lkdGgKKyAgICAgICAgICAgIGFyZSBzZXZlcmUuCisgICAgICAgICAgPC90PgorCisgICAg
ICAgIDwvc2VjdGlvbj4KKworICAgICAgICA8L3NlY3Rpb24+CisKKyAgICAgIDxzZWN0aW9uIHRp
dGxlPSdDb21wbGV4aXR5Jz4KKworICAgICAgICA8dD4KKyAgICAgICAgICBDb21wbGV4aXR5IG9m
IHRoZSBlbmNvZGVyIGNhbiBiZSBzY2FsZWQgdG8gb3B0aW1pemUgZm9yIENQVSByZXNvdXJjZXMg
aW4gcmVhbC10aW1lLCBtb3N0bHkgYXMKKyAgICAgICAgICBhIHRyYWRlLW9mZiBiZXR3ZWVuIGF1
ZGlvIHF1YWxpdHkgYW5kIGJpdHJhdGUuIEFsc28sIGRpZmZlcmVudCBtb2RlcyBvZiBPcHVzIGhh
dmUgZGlmZmVyZW50IGNvbXBsZXhpdHkuCisgICAgICAgIDwvdD4KKworICAgICAgPC9zZWN0aW9u
PgorCisgICAgICA8c2VjdGlvbiB0aXRsZT0iRm9yd2FyZCBFcnJvciBDb3JyZWN0aW9uIChGRUMp
Ij4KKworICAgICAgICA8dD4KKyAgICAgICAgICBUaGUgdm9pY2UgbW9kZSBvZiBPcHVzIGFsbG93
cyBmb3IgZW1iZWRkaW5nICJpbi1iYW5kIiBmb3J3YXJkIGVycm9yIGNvcnJlY3Rpb24gKEZFQykK
KyAgICAgICAgICBkYXRhIGludG8gdGhlIE9wdXMgYml0IHN0cmVhbS4gVGhpcyBGRUMgc2NoZW1l
IGFkZHMKKyAgICAgICAgICByZWR1bmRhbnQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHByZXZpb3Vz
IHBhY2tldCAoTi0xKSB0byB0aGUgY3VycmVudAorICAgICAgICAgIG91dHB1dCBwYWNrZXQgTi4g
Rm9yCisgICAgICAgICAgZWFjaCBmcmFtZSwgdGhlIGVuY29kZXIgZGVjaWRlcyB3aGV0aGVyIHRv
IHVzZSBGRUMgYmFzZWQgb24gKDEpIGFuCisgICAgICAgICAgZXh0ZXJuYWxseS1wcm92aWRlZCBl
c3RpbWF0ZSBvZiB0aGUgY2hhbm5lbCdzIHBhY2tldCBsb3NzIHJhdGU7ICgyKSBhbgorICAgICAg
ICAgIGV4dGVybmFsbHktcHJvdmlkZWQgZXN0aW1hdGUgb2YgdGhlIGNoYW5uZWwncyBjYXBhY2l0
eTsgKDMpIHRoZQorICAgICAgICAgIHNlbnNpdGl2aXR5IG9mIHRoZSBhdWRpbyBvciBzcGVlY2gg
c2lnbmFsIHRvIHBhY2tldCBsb3NzOyAoNCkgd2hldGhlcgorICAgICAgICAgIHRoZSByZWNlaXZp
bmcgZGVjb2RlciBoYXMgaW5kaWNhdGVkIGl0IGNhbiB0YWtlIGFkdmFudGFnZSBvZiAiaW4tYmFu
ZCIKKyAgICAgICAgICBGRUMgaW5mb3JtYXRpb24uIFRoZSBkZWNpc2lvbiB0byBzZW5kICJpbi1i
YW5kIiBGRUMgaW5mb3JtYXRpb24gaXMKKyAgICAgICAgICBlbnRpcmVseSBjb250cm9sbGVkIGJ5
IHRoZSBlbmNvZGVyIGFuZCB0aGVyZWZvcmUgbm8gc3BlY2lhbCBwcmVjYXV0aW9ucworICAgICAg
ICAgIGZvciB0aGUgcGF5bG9hZCBoYXZlIHRvIGJlIHRha2VuLgorICAgICAgICA8L3Q+CisKKyAg
ICAgICAgPHQ+CisgICAgICAgICAgT24gdGhlIHJlY2VpdmluZyBzaWRlLCB0aGUgZGVjb2RlciBj
YW4gdGFrZSBhZHZhbnRhZ2Ugb2YgdGhpcworICAgICAgICAgIGFkZGl0aW9uYWwgaW5mb3JtYXRp
b24gd2hlbiBpdCBsb3NlcyBhIHBhY2tldCBhbmQgdGhlIG5leHQgcGFja2V0CisgICAgICAgICAg
aXMgYXZhaWxhYmxlLiAgSW4gb3JkZXIgdG8gdXNlIHRoZSBGRUMgZGF0YSwgdGhlIGppdHRlciBi
dWZmZXIgbmVlZHMKKyAgICAgICAgICB0byBwcm92aWRlIGFjY2VzcyB0byBwYXlsb2FkcyB3aXRo
IHRoZSBGRUMgZGF0YS4gIAorICAgICAgICAgIEluc3RlYWQgb2YgcGVyZm9ybWluZyBsb3NzIGNv
bmNlYWxtZW50IGZvciBhIG1pc3NpbmcgcGFja2V0LCB0aGUKKyAgICAgICAgICByZWNlaXZlciBj
YW4gdGhlbiBjb25maWd1cmUgaXRzIGRlY29kZXIgdG8gZGVjb2RlIHRoZSBGRUMgZGF0YSBmcm9t
IHRoZSBuZXh0IHBhY2tldC4KKyAgICAgICAgPC90PgorCisgICAgICAgIDx0PgorICAgICAgICAg
IEFueSBjb21wbGlhbnQgT3B1cyBkZWNvZGVyIGlzIGNhcGFibGUgb2YgaWdub3JpbmcKKyAgICAg
ICAgICBGRUMgaW5mb3JtYXRpb24gd2hlbiBpdCBpcyBub3QgbmVlZGVkLCBzbyBlbmNvZGluZyB3
aXRoIEZFQyBjYW5ub3QgY2F1c2UKKyAgICAgICAgICBpbnRlcm9wZXJhYmlsaXR5IHByb2JsZW1z
LgorICAgICAgICAgIEhvd2V2ZXIsIGlmIEZFQyBjYW5ub3QgYmUgdXNlZCBvbiB0aGUgcmVjZWl2
aW5nIHNpZGUsIHRoZW4gRkVDCisgICAgICAgICAgU0hPVUxEIE5PVCBiZSB1c2VkLCBhcyBpdCBs
ZWFkcyB0byBhbiBpbmVmZmljaWVudCB1c2FnZSBvZiBuZXR3b3JrCisgICAgICAgICAgcmVzb3Vy
Y2VzLiBEZWNvZGVyIHN1cHBvcnQgZm9yIEZFQyBTSE9VTEQgYmUgaW5kaWNhdGVkIGF0IHRoZSB0
aW1lIGEKKyAgICAgICAgICBzZXNzaW9uIGlzIHNldCB1cC4KKyAgICAgICAgPC90PgorCisgICAg
ICA8L3NlY3Rpb24+CisKKyAgICAgIDxzZWN0aW9uIHRpdGxlPSdTdGVyZW8gT3BlcmF0aW9uJz4K
KworICAgICAgICA8dD4KKyAgICAgICAgICBPcHVzIGFsbG93cyBmb3IgdHJhbnNtaXNzaW9uIG9m
IHN0ZXJlbyBhdWRpbyBzaWduYWxzLiBUaGlzIG9wZXJhdGlvbgorICAgICAgICAgIGlzIHNpZ25h
bGVkIGluLWJhbmQgaW4gdGhlIE9wdXMgYml0LXN0cmVhbSBhbmQgbm8gc3BlY2lhbCBhcnJhbmdl
bWVudAorICAgICAgICAgIGlzIG5lZWRlZCBpbiB0aGUgcGF5bG9hZCBmb3JtYXQuIEFuCisgICAg
ICAgICAgT3B1cyBkZWNvZGVyIGlzIGNhcGFibGUgb2YgaGFuZGxpbmcgYSBzdGVyZW8gZW5jb2Rp
bmcsIGJ1dCBhbgorICAgICAgICAgIGFwcGxpY2F0aW9uIG1pZ2h0IG9ubHkgYmUgY2FwYWJsZSBv
ZiBjb25zdW1pbmcgYSBzaW5nbGUgYXVkaW8KKyAgICAgICAgICBjaGFubmVsLgorICAgICAgICA8
L3Q+CisgICAgICAgIDx0PgorICAgICAgICAgIElmIGEgZGVjb2RlciBjYW5ub3QgdGFrZSBhZHZh
bnRhZ2Ugb2YgdGhlIGJlbmVmaXRzIG9mIGEgc3RlcmVvIHNpZ25hbAorICAgICAgICAgIHRoaXMg
U0hPVUxEIGJlIGluZGljYXRlZCBhdCB0aGUgdGltZSBhIHNlc3Npb24gaXMgc2V0IHVwLiBJbiB0
aGF0IGNhc2UKKyAgICAgICAgICB0aGUgc2VuZGluZyBzaWRlIFNIT1VMRCBOT1Qgc2VuZCBzdGVy
ZW8gc2lnbmFscyBhcyBpdCBsZWFkcyB0byBhbgorICAgICAgICAgIGluZWZmaWNpZW50IHVzYWdl
IG9mIG5ldHdvcmsgcmVzb3VyY2VzLgorICAgICAgICA8L3Q+CisKKyAgICAgIDwvc2VjdGlvbj4K
KworICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIHRpdGxlPSdPcHVzIFJUUCBQYXlsb2Fk
IEZvcm1hdCcgYW5jaG9yPSdvcHVzLXJ0cC1wYXlsb2FkLWZvcm1hdCc+CisgICAgICA8dD5UaGUg
cGF5bG9hZCBmb3JtYXQgZm9yIE9wdXMgY29uc2lzdHMgb2YgdGhlIFJUUCBoZWFkZXIgYW5kIE9w
dXMgcGF5bG9hZAorICAgICAgZGF0YS48L3Q+CisgICAgICA8c2VjdGlvbiB0aXRsZT0nUlRQIEhl
YWRlciBVc2FnZSc+CisgICAgICAgIDx0PlRoZSBmb3JtYXQgb2YgdGhlIFJUUCBoZWFkZXIgaXMg
c3BlY2lmaWVkIGluIDx4cmVmIHRhcmdldD0iUkZDMzU1MCIvPi4KKyAgICAgICAgVGhlIHVzZSBv
ZiB0aGUgZmllbGRzIG9mIHRoZSBSVFAgaGVhZGVyIGJ5IHRoZSBPcHVzIHBheWxvYWQgZm9ybWF0
IGlzCisgICAgICAgIGNvbnNpc3RlbnQgd2l0aCB0aGF0IHNwZWNpZmljYXRpb24uPC90PgorCisg
ICAgICAgIDx0PlRoZSBwYXlsb2FkIGxlbmd0aCBvZiBPcHVzIGlzIGFuIGludGVnZXIgbnVtYmVy
IG9mIG9jdGV0cyBhbmQKKyAgICAgICAgdGhlcmVmb3JlIG5vIHBhZGRpbmcgaXMgbmVjZXNzYXJ5
LiBUaGUgcGF5bG9hZCBNQVkgYmUgcGFkZGVkIGJ5IGFuCisgICAgICAgIGludGVnZXIgbnVtYmVy
IG9mIG9jdGV0cyBhY2NvcmRpbmcgdG8gPHhyZWYgdGFyZ2V0PSJSRkMzNTUwIi8+LAorICAgICAg
ICBhbHRob3VnaCB0aGUgT3B1cyBpbnRlcm5hbCBwYWRkaW5nIGlzIHByZWZlcnJlZC48L3Q+CisK
KyAgICAgICAgPHQ+VGhlIHRpbWVzdGFtcCwgc2VxdWVuY2UgbnVtYmVyLCBhbmQgbWFya2VyIGJp
dCAoTSkgb2YgdGhlIFJUUCBoZWFkZXIKKyAgICAgICAgYXJlIHVzZWQgaW4gYWNjb3JkYW5jZSB3
aXRoIFNlY3Rpb24gNC4xCisgICAgICAgIG9mJm5ic3A7PHhyZWYgdGFyZ2V0PSJSRkMzNTUxIi8+
LjwvdD4KKworICAgICAgICA8dD5UaGUgUlRQIHBheWxvYWQgdHlwZSBmb3IgT3B1cyBpcyB0byBi
ZSBhc3NpZ25lZCBkeW5hbWljYWxseS48L3Q+CisKKyAgICAgICAgPHQ+VGhlIHJlY2VpdmluZyBz
aWRlIE1VU1QgYmUgcHJlcGFyZWQgdG8gcmVjZWl2ZSBkdXBsaWNhdGUgUlRQCisgICAgICAgIHBh
Y2tldHMuIFRoZSByZWNlaXZlciBNVVNUIHByb3ZpZGUgYXQgbW9zdCBvbmUgb2YgdGhvc2UgcGF5
bG9hZHMgdG8gdGhlCisgICAgICAgIE9wdXMgZGVjb2RlciBmb3IgZGVjb2RpbmcsIGFuZCBNVVNU
IGRpc2NhcmQgdGhlIG90aGVycy48L3Q+CisKKyAgICAgICAgPHQ+T3B1cyBzdXBwb3J0cyA1IGRp
ZmZlcmVudCBhdWRpbyBiYW5kd2lkdGhzLCB3aGljaCBjYW4gYmUgYWRqdXN0ZWQgZHVyaW5nCisg
ICAgICAgIGEgc3RyZWFtLgorICAgICAgICBUaGUgUlRQIHRpbWVzdGFtcCBpcyBpbmNyZW1lbnRl
ZCB3aXRoIGEgNDgwMDAgSHogY2xvY2sgcmF0ZQorICAgICAgICBmb3IgYWxsIG1vZGVzIG9mIE9w
dXMgYW5kIGFsbCBzYW1wbGluZyByYXRlcy4KKyAgICAgICAgVGhlIHVuaXQKKyAgICAgICAgZm9y
IHRoZSB0aW1lc3RhbXAgaXMgc2FtcGxlcyBwZXIgc2luZ2xlIChtb25vKSBjaGFubmVsLiBUaGUg
UlRQIHRpbWVzdGFtcCBjb3JyZXNwb25kcyB0byB0aGUKKyAgICAgICAgc2FtcGxlIHRpbWUgb2Yg
dGhlIGZpcnN0IGVuY29kZWQgc2FtcGxlIGluIHRoZSBlbmNvZGVkIGZyYW1lLgorICAgICAgICBG
b3IgZGF0YSBlbmNvZGVkIHdpdGggc2FtcGxpbmcgcmF0ZXMgb3RoZXIgdGhhbiA0ODAwMCBIeiwK
Kwl0aGUgc2FtcGxpbmcgcmF0ZSBoYXMgdG8gYmUgYWRqdXN0ZWQgdG8gNDgwMDAgSHouPC90Pgor
CisgICAgICA8L3NlY3Rpb24+CisKKyAgICAgIDxzZWN0aW9uIHRpdGxlPSdQYXlsb2FkIFN0cnVj
dHVyZSc+CisgICAgICAgIDx0PgorICAgICAgICAgIFRoZSBPcHVzIGVuY29kZXIgY2FuIG91dHB1
dCBlbmNvZGVkIGZyYW1lcyByZXByZXNlbnRpbmcgMi41LCA1LCAxMCwgMjAsCisgICAgICAgICAg
NDAsIG9yIDYwJm5ic3A7bXMgb2Ygc3BlZWNoIG9yIGF1ZGlvIGRhdGEuIEZ1cnRoZXIsIGFuIGFy
Yml0cmFyeSBudW1iZXIgb2YgZnJhbWVzIGNhbiBiZQorICAgICAgICAgIGNvbWJpbmVkIGludG8g
YSBwYWNrZXQsIHVwIHRvIGEgbWF4aW11bSBwYWNrZXQgZHVyYXRpb24gcmVwcmVzZW50aW5nCisg
ICAgICAgICAgMTIwJm5ic3A7bXMgb2Ygc3BlZWNoIG9yIGF1ZGlvIGRhdGEuIFRoZSBncm91cGlu
ZyBvZiBvbmUgb3IgbW9yZSBPcHVzCisgICAgICAgICAgZnJhbWVzIGludG8gYSBzaW5nbGUgT3B1
cyBwYWNrZXQgaXMgZGVmaW5lZCBpbiBTZWN0aW9uJm5ic3A7MyBvZgorICAgICAgICAgIDx4cmVm
IHRhcmdldD0iUkZDNjcxNiIvPi4gQW4gUlRQIHBheWxvYWQgTVVTVCBjb250YWluIGV4YWN0bHkg
b25lCisgICAgICAgICAgT3B1cyBwYWNrZXQgYXMgZGVmaW5lZCBieSB0aGF0IGRvY3VtZW50Lgor
ICAgICAgICA8L3Q+CisKKyAgICAgICAgPHQ+PHhyZWYgdGFyZ2V0PSdwYXlsb2FkLXN0cnVjdHVy
ZScvPiBzaG93cyB0aGUgc3RydWN0dXJlIGNvbWJpbmVkIHdpdGggdGhlIFJUUCBoZWFkZXIuPC90
PgorCisgICAgICAgIDxmaWd1cmUgYW5jaG9yPSJwYXlsb2FkLXN0cnVjdHVyZSIKKyAgICAgICAg
ICAgICAgICB0aXRsZT0iUGFja2V0IHN0cnVjdHVyZSB3aXRoIFJUUCBoZWFkZXIiPgorICAgICAg
ICAgIDxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorICAgICAgICAgICAgPCFbQ0RBVEFbCisrLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLSsKK3xSVFAgSGVhZGVyfCBPcHVzIFBheWxvYWQgfAorKy0t
LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgIF1dPgorICAgICAgICAgIDwvYXJ0
d29yaz4KKyAgICAgICAgPC9maWd1cmU+CisKKyAgICAgICAgPHQ+CisgICAgICAgICAgPHhyZWYg
dGFyZ2V0PSdvcHVzLXBhY2tldGl6YXRpb24nLz4gc2hvd3Mgc3VwcG9ydGVkIGZyYW1lIHNpemVz
IGluCisgICAgICAgICAgbWlsbGlzZWNvbmRzIG9mIGVuY29kZWQgc3BlZWNoIG9yIGF1ZGlvIGRh
dGEgZm9yIHRoZSBzcGVlY2ggYW5kIGF1ZGlvIG1vZGVzCisgICAgICAgICAgKE1vZGUpIGFuZCBz
YW1wbGluZyByYXRlcyAoZnMpIG9mIE9wdXMgYW5kIHNob3dzIGhvdyB0aGUgdGltZXN0YW1wIGlz
CisgICAgICAgICAgaW5jcmVtZW50ZWQgZm9yIHBhY2tldGl6YXRpb24gKHRzIGluY3IpLiBJZiB0
aGUgT3B1cyBlbmNvZGVyCisgICAgICAgICAgb3V0cHV0cyBtdWx0aXBsZSBlbmNvZGVkIGZyYW1l
cyBpbnRvIGEgc2luZ2xlIHBhY2tldCwgdGhlIHRpbWVzdGFtcAorICAgICAgICAgIGluY3JlbWVu
dCBpcyB0aGUgc3VtIG9mIHRoZSBpbmNyZW1lbnRzIGZvciB0aGUgaW5kaXZpZHVhbCBmcmFtZXMu
CisgICAgICAgIDwvdD4KKworICAgICAgICA8dGV4dHRhYmxlIGFuY2hvcj0nb3B1cy1wYWNrZXRp
emF0aW9uJyB0aXRsZT0iU3VwcG9ydGVkIE9wdXMgZnJhbWUKKyAgICAgICAgIHNpemVzIGFuZCB0
aW1lc3RhbXAgaW5jcmVtZW50cyBtYXJrZWQgd2l0aCBhbiBvLiBVbnN1cHBvcnRlZCBtYXJrZWQg
d2l0aCBhbiB4LiI+CisgICAgICAgICAgICA8dHRjb2wgYWxpZ249J2NlbnRlcic+TW9kZTwvdHRj
b2w+CisgICAgICAgICAgICA8dHRjb2wgYWxpZ249J2NlbnRlcic+ZnM8L3R0Y29sPgorICAgICAg
ICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPjIuNTwvdHRjb2w+CisgICAgICAgICAgICA8dHRj
b2wgYWxpZ249J2NlbnRlcic+NTwvdHRjb2w+CisgICAgICAgICAgICA8dHRjb2wgYWxpZ249J2Nl
bnRlcic+MTA8L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPjIwPC90
dGNvbD4KKyAgICAgICAgICAgIDx0dGNvbCBhbGlnbj0nY2VudGVyJz40MDwvdHRjb2w+CisgICAg
ICAgICAgICA8dHRjb2wgYWxpZ249J2NlbnRlcic+NjA8L3R0Y29sPgorICAgICAgICAgICAgPGM+
dHMgaW5jcjwvYz4KKyAgICAgICAgICAgIDxjPmFsbDwvYz4KKyAgICAgICAgICAgIDxjPjEyMDwv
Yz4KKyAgICAgICAgICAgIDxjPjI0MDwvYz4KKyAgICAgICAgICAgIDxjPjQ4MDwvYz4KKyAgICAg
ICAgICAgIDxjPjk2MDwvYz4KKyAgICAgICAgICAgIDxjPjE5MjA8L2M+CisgICAgICAgICAgICA8
Yz4yODgwPC9jPgorICAgICAgICAgICAgPGM+dm9pY2U8L2M+CisgICAgICAgICAgICA8Yz5OQi9N
Qi9XQi9TV0IvRkI8L2M+CisgICAgICAgICAgICA8Yz54PC9jPgorICAgICAgICAgICAgPGM+eDwv
Yz4KKyAgICAgICAgICAgIDxjPm88L2M+CisgICAgICAgICAgICA8Yz5vPC9jPgorICAgICAgICAg
ICAgPGM+bzwvYz4KKyAgICAgICAgICAgIDxjPm88L2M+CisgICAgICAgICAgICA8Yz5hdWRpbzwv
Yz4KKyAgICAgICAgICAgIDxjPk5CL1dCL1NXQi9GQjwvYz4KKyAgICAgICAgICAgIDxjPm88L2M+
CisgICAgICAgICAgICA8Yz5vPC9jPgorICAgICAgICAgICAgPGM+bzwvYz4KKyAgICAgICAgICAg
IDxjPm88L2M+CisgICAgICAgICAgICA8Yz54PC9jPgorICAgICAgICAgICAgPGM+eDwvYz4KKyAg
ICAgICAgICA8L3RleHR0YWJsZT4KKworICAgICAgPC9zZWN0aW9uPgorCisgICAgPC9zZWN0aW9u
PgorCisgICAgPHNlY3Rpb24gdGl0bGU9J0Nvbmdlc3Rpb24gQ29udHJvbCc+CisKKyAgICAgIDx0
PlRoZSB0YXJnZXQgYml0cmF0ZSBvZiBPcHVzIGNhbiBiZSBhZGp1c3RlZCBhdCBhbnkgcG9pbnQg
aW4gdGltZSwgdGh1cworICAgICAgYWxsb3dpbmcgZWZmaWNpZW50IGNvbmdlc3Rpb24gY29udHJv
bC4gRnVydGhlcm1vcmUsIHRoZSBhbW91bnQKKyAgICAgIG9mIGVuY29kZWQgc3BlZWNoIG9yIGF1
ZGlvIGRhdGEgZW5jb2RlZCBpbiBhCisgICAgICBzaW5nbGUgcGFja2V0IGNhbiBiZSB1c2VkIGZv
ciBjb25nZXN0aW9uIGNvbnRyb2wsIHNpbmNlIHRoZSB0cmFuc21pc3Npb24KKyAgICAgIHJhdGUg
aXMgaW52ZXJzZWx5IHByb3BvcnRpb25hbCB0byB0aGUgcGFja2V0IGR1cmF0aW9uLiBBIGxvd2Vy
IHBhY2tldAorICAgICAgdHJhbnNtaXNzaW9uIHJhdGUgcmVkdWNlcyB0aGUgYW1vdW50IG9mIGhl
YWRlciBvdmVyaGVhZCwgYnV0IGF0IHRoZSBzYW1lCisgICAgICB0aW1lIGluY3JlYXNlcyBsYXRl
bmN5IGFuZCBsb3NzIHNlbnNpdGl2aXR5LCBzbyBpdCBvdWdodCB0byBiZSB1c2VkIHdpdGgKKyAg
ICAgIGNhcmUuPC90PgorCisgICAgICA8dD5TaW5jZSBVRFAgZG9lcyBub3QgcHJvdmlkZSBjb25n
ZXN0aW9uIGNvbnRyb2wsIGFwcGxpY2F0aW9ucyB0aGF0IHVzZQorICAgICAgUlRQIG92ZXIgVURQ
IFNIT1VMRCBpbXBsZW1lbnQgdGhlaXIgb3duIGNvbmdlc3Rpb24gY29udHJvbCBhYm92ZSB0aGUK
KyAgICAgIFVEUCBsYXllciA8eHJlZiB0YXJnZXQ9IlJGQzU0MDUiLz4uIFdvcmsgaW4gdGhlIHJt
Y2F0IHdvcmtpbmcgZ3JvdXAKKyAgICAgIDx4cmVmIHRhcmdldD0icm1jYXQiLz4gZGVzY3JpYmVz
IHRoZQorICAgICAgaW50ZXJhY3Rpb25zIGFuZCBjb25jZXB0dWFsIGludGVyZmFjZXMgbmVjZXNz
YXJ5IGJldHdlZW4gdGhlIGFwcGxpY2F0aW9uCisgICAgICBjb21wb25lbnRzIHRoYXQgcmVsYXRl
IHRvIGNvbmdlc3Rpb24gY29udHJvbCwgaW5jbHVkaW5nIHRoZSBSVFAgbGF5ZXIsCisgICAgICB0
aGUgaGlnaGVyLWxldmVsIG1lZGlhIGNvZGVjIGNvbnRyb2wgbGF5ZXIsIGFuZCB0aGUgbG93ZXIt
bGV2ZWwKKyAgICAgIHRyYW5zcG9ydCBpbnRlcmZhY2UsIGFzIHdlbGwgYXMgY29tcG9uZW50cyBk
ZWRpY2F0ZWQgdG8gY29uZ2VzdGlvbgorICAgICAgY29udHJvbCBmdW5jdGlvbnMuPC90PgorICAg
IDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIHRpdGxlPSdJQU5BIENvbnNpZGVyYXRpb25zJz4K
KyAgICAgIDx0Pk9uZSBtZWRpYSBzdWJ0eXBlIChhdWRpby9vcHVzKSBoYXMgYmVlbiBkZWZpbmVk
IGFuZCByZWdpc3RlcmVkIGFzCisgICAgICBkZXNjcmliZWQgaW4gdGhlIGZvbGxvd2luZyBzZWN0
aW9uLjwvdD4KKworICAgICAgPHNlY3Rpb24gdGl0bGU9J09wdXMgTWVkaWEgVHlwZSBSZWdpc3Ry
YXRpb24nPgorICAgICAgICA8dD5NZWRpYSB0eXBlIHJlZ2lzdHJhdGlvbiBpcyBkb25lIGFjY29y
ZGluZyB0byA8eHJlZgorICAgICAgICB0YXJnZXQ9IlJGQzY4MzgiLz4gYW5kIDx4cmVmIHRhcmdl
dD0iUkZDNDg1NSIvPi48dnNwYWNlCisgICAgICAgIGJsYW5rTGluZXM9JzEnLz48L3Q+CisKKyAg
ICAgICAgICA8dD5UeXBlIG5hbWU6IGF1ZGlvPHZzcGFjZSBibGFua0xpbmVzPScxJy8+PC90Pgor
ICAgICAgICAgIDx0PlN1YnR5cGUgbmFtZTogb3B1czx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwv
dD4KKworICAgICAgICAgIDx0PlJlcXVpcmVkIHBhcmFtZXRlcnM6PC90PgorICAgICAgICAgIDx0
PjxsaXN0IHN0eWxlPSJoYW5naW5nIj4KKyAgICAgICAgICAgIDx0IGhhbmdUZXh0PSJyYXRlOiI+
IHRoZSBSVFAgdGltZXN0YW1wIGlzIGluY3JlbWVudGVkIHdpdGggYQorICAgICAgICAgICAgNDgw
MDAgSHogY2xvY2sgcmF0ZSBmb3IgYWxsIG1vZGVzIG9mIE9wdXMgYW5kIGFsbCBzYW1wbGluZwor
ICAgICAgICAgICAgcmF0ZXMuIEZvciBkYXRhIGVuY29kZWQgd2l0aCBzYW1wbGluZyByYXRlcyBv
dGhlciB0aGFuIDQ4MDAwIEh6LAorICAgICAgICAgICAgdGhlIHNhbXBsaW5nIHJhdGUgaGFzIHRv
IGJlIGFkanVzdGVkIHRvIDQ4MDAwIEh6LgorICAgICAgICAgIDwvdD4KKyAgICAgICAgICA8L2xp
c3Q+PC90PgorCisgICAgICAgICAgPHQ+T3B0aW9uYWwgcGFyYW1ldGVyczo8L3Q+CisKKyAgICAg
ICAgICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dCBoYW5nVGV4dD0i
bWF4cGxheWJhY2tyYXRlOiI+CisgICAgICAgICAgICAgIGEgaGludCBhYm91dCB0aGUgbWF4aW11
bSBvdXRwdXQgc2FtcGxpbmcgcmF0ZSB0aGF0IHRoZSByZWNlaXZlciBpcworICAgICAgICAgICAg
ICBjYXBhYmxlIG9mIHJlbmRlcmluZyBpbiBIei4KKyAgICAgICAgICAgICAgVGhlIGRlY29kZXIg
TVVTVCBiZSBjYXBhYmxlIG9mIGRlY29kaW5nCisgICAgICAgICAgICAgIGFueSBhdWRpbyBiYW5k
d2lkdGggYnV0IGR1ZSB0byBoYXJkd2FyZSBsaW1pdGF0aW9ucyBvbmx5IHNpZ25hbHMKKyAgICAg
ICAgICAgICAgdXAgdG8gdGhlIHNwZWNpZmllZCBzYW1wbGluZyByYXRlIGNhbiBiZSBwbGF5ZWQg
YmFjay4gU2VuZGluZyBzaWduYWxzCisgICAgICAgICAgICAgIHdpdGggaGlnaGVyIGF1ZGlvIGJh
bmR3aWR0aCByZXN1bHRzIGluIGhpZ2hlciB0aGFuIG5lY2Vzc2FyeSBuZXR3b3JrCisgICAgICAg
ICAgICAgIHVzYWdlIGFuZCBlbmNvZGluZyBjb21wbGV4aXR5LCBzbyBhbiBlbmNvZGVyIFNIT1VM
RCBOT1QgZW5jb2RlCisgICAgICAgICAgICAgIGZyZXF1ZW5jaWVzIGFib3ZlIHRoZSBhdWRpbyBi
YW5kd2lkdGggc3BlY2lmaWVkIGJ5IG1heHBsYXliYWNrcmF0ZS4KKyAgICAgICAgICAgICAgVGhp
cyBwYXJhbWV0ZXIgY2FuIHRha2UgYW55IHZhbHVlIGJldHdlZW4gODAwMCBhbmQgNDgwMDAsIGFs
dGhvdWdoCisgICAgICAgICAgICAgIGNvbW1vbmx5IHRoZSB2YWx1ZSB3aWxsIG1hdGNoIG9uZSBv
ZiB0aGUgT3B1cyBiYW5kd2lkdGhzCisgICAgICAgICAgICAgICg8eHJlZiB0YXJnZXQ9ImJhbmR3
aWR0aF9kZWZpbml0aW9ucyIvPikuCisgICAgICAgICAgICAgIEJ5IGRlZmF1bHQsIHRoZSByZWNl
aXZlciBpcyBhc3N1bWVkIHRvIGhhdmUgbm8gbGltaXRhdGlvbnMsIGkuZS4gNDgwMDAuCisgICAg
ICAgICAgICAgIDx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPgorICAgICAgICAgICAgPC90PgorCisg
ICAgICAgICAgICA8dCBoYW5nVGV4dD0ic3Byb3AtbWF4Y2FwdHVyZXJhdGU6Ij4KKyAgICAgICAg
ICAgICAgYSBoaW50IGFib3V0IHRoZSBtYXhpbXVtIGlucHV0IHNhbXBsaW5nIHJhdGUgdGhhdCB0
aGUgc2VuZGVyIGlzIGxpa2VseSB0byBwcm9kdWNlLgorICAgICAgICAgICAgICBUaGlzIGlzIG5v
dCBhIGd1YXJhbnRlZSB0aGF0IHRoZSBzZW5kZXIgd2lsbCBuZXZlciBzZW5kIGFueSBoaWdoZXIg
YmFuZHdpZHRoCisgICAgICAgICAgICAgIChlLmcuIGl0IGNvdWxkIHNlbmQgYSBwcmUtcmVjb3Jk
ZWQgcHJvbXB0IHRoYXQgdXNlcyBhIGhpZ2hlciBiYW5kd2lkdGgpLCBidXQgaXQKKyAgICAgICAg
ICAgICAgaW5kaWNhdGVzIHRvIHRoZSByZWNlaXZlciB0aGF0IGZyZXF1ZW5jaWVzIGFib3ZlIHRo
aXMgbWF4aW11bSBjYW4gc2FmZWx5IGJlIGRpc2NhcmRlZC4KKyAgICAgICAgICAgICAgVGhpcyBw
YXJhbWV0ZXIgaXMgdXNlZnVsIHRvIGF2b2lkIHdhc3RpbmcgcmVjZWl2ZXIgcmVzb3VyY2VzIGJ5
IG9wZXJhdGluZyB0aGUgYXVkaW8KKyAgICAgICAgICAgICAgcHJvY2Vzc2luZyBwaXBlbGluZSAo
ZS5nLiBlY2hvIGNhbmNlbGxhdGlvbikgYXQgYSBoaWdoZXIgcmF0ZSB0aGFuIG5lY2Vzc2FyeS4K
KyAgICAgICAgICAgICAgVGhpcyBwYXJhbWV0ZXIgY2FuIHRha2UgYW55IHZhbHVlIGJldHdlZW4g
ODAwMCBhbmQgNDgwMDAsIGFsdGhvdWdoCisgICAgICAgICAgICAgIGNvbW1vbmx5IHRoZSB2YWx1
ZSB3aWxsIG1hdGNoIG9uZSBvZiB0aGUgT3B1cyBiYW5kd2lkdGhzCisgICAgICAgICAgICAgICg8
eHJlZiB0YXJnZXQ9ImJhbmR3aWR0aF9kZWZpbml0aW9ucyIvPikuCisgICAgICAgICAgICAgIEJ5
IGRlZmF1bHQsIHRoZSBzZW5kZXIgaXMgYXNzdW1lZCB0byBoYXZlIG5vIGxpbWl0YXRpb25zLCBp
LmUuIDQ4MDAwLgorICAgICAgICAgICAgICA8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz4KKyAgICAg
ICAgICAgIDwvdD4KKworICAgICAgICAgICAgPHQgaGFuZ1RleHQ9Im1heHB0aW1lOiI+IHRoZSBt
YXhpbXVtIGR1cmF0aW9uIG9mIG1lZGlhIHJlcHJlc2VudGVkCisgICAgICAgICAgICBieSBhIHBh
Y2tldCAoYWNjb3JkaW5nIHRvIFNlY3Rpb24mbmJzcDs2IG9mCisgICAgICAgICAgICA8eHJlZiB0
YXJnZXQ9IlJGQzQ1NjYiLz4pIHRoYXQgYSBkZWNvZGVyIHdhbnRzIHRvIHJlY2VpdmUsIGluCisg
ICAgICAgICAgICBtaWxsaXNlY29uZHMgcm91bmRlZCB1cCB0byB0aGUgbmV4dCBmdWxsIGludGVn
ZXIgdmFsdWUuCisgICAgICAgICAgICBQb3NzaWJsZSB2YWx1ZXMgYXJlIDMsIDUsIDEwLCAyMCwg
NDAsIDYwLCBvciBhbiBhcmJpdHJhcnkKKyAgICAgICAgICAgIG11bHRpcGxlIG9mIGFuIE9wdXMg
ZnJhbWUgc2l6ZSByb3VuZGVkIHVwIHRvIHRoZSBuZXh0IGZ1bGwgaW50ZWdlcgorICAgICAgICAg
ICAgdmFsdWUsIHVwIHRvIGEgbWF4aW11bSB2YWx1ZSBvZiAxMjAsIGFzCisgICAgICAgICAgICBk
ZWZpbmVkIGluIDx4cmVmIHRhcmdldD0nb3B1cy1ydHAtcGF5bG9hZC1mb3JtYXQnLz4uIElmIG5v
IHZhbHVlIGlzCisgICAgICAgICAgICAgIHNwZWNpZmllZCwgdGhlIGRlZmF1bHQgaXMgMTIwLgor
ICAgICAgICAgICAgICA8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisKKyAgICAgICAgICAg
IDx0IGhhbmdUZXh0PSJwdGltZToiPiB0aGUgcHJlZmVycmVkIGR1cmF0aW9uIG9mIG1lZGlhIHJl
cHJlc2VudGVkCisgICAgICAgICAgICBieSBhIHBhY2tldCAoYWNjb3JkaW5nIHRvIFNlY3Rpb24m
bmJzcDs2IG9mCisgICAgICAgICAgICA8eHJlZiB0YXJnZXQ9IlJGQzQ1NjYiLz4pIHRoYXQgYSBk
ZWNvZGVyIHdhbnRzIHRvIHJlY2VpdmUsIGluCisgICAgICAgICAgICBtaWxsaXNlY29uZHMgcm91
bmRlZCB1cCB0byB0aGUgbmV4dCBmdWxsIGludGVnZXIgdmFsdWUuCisgICAgICAgICAgICBQb3Nz
aWJsZSB2YWx1ZXMgYXJlIDMsIDUsIDEwLCAyMCwgNDAsIDYwLCBvciBhbiBhcmJpdHJhcnkKKyAg
ICAgICAgICAgIG11bHRpcGxlIG9mIGFuIE9wdXMgZnJhbWUgc2l6ZSByb3VuZGVkIHVwIHRvIHRo
ZSBuZXh0IGZ1bGwgaW50ZWdlcgorICAgICAgICAgICAgdmFsdWUsIHVwIHRvIGEgbWF4aW11bSB2
YWx1ZSBvZiAxMjAsIGFzIGRlZmluZWQgaW4gPHhyZWYKKyAgICAgICAgICAgIHRhcmdldD0nb3B1
cy1ydHAtcGF5bG9hZC1mb3JtYXQnLz4uIElmIG5vIHZhbHVlIGlzCisgICAgICAgICAgICAgIHNw
ZWNpZmllZCwgdGhlIGRlZmF1bHQgaXMgMjAuIAorICAgICAgICAgICAgICA8dnNwYWNlIGJsYW5r
TGluZXM9JzEnLz48L3Q+CisKKyAgICAgICAgICAgIDx0IGhhbmdUZXh0PSJtYXhhdmVyYWdlYml0
cmF0ZToiPiBzcGVjaWZpZXMgdGhlIG1heGltdW0gYXZlcmFnZQorICAgICAgICAgICAgcmVjZWl2
ZSBiaXRyYXRlIG9mIGEgc2Vzc2lvbiBpbiBiaXRzIHBlciBzZWNvbmQgKGIvcykuIFRoZSBhY3R1
YWwKKyAgICAgICAgICAgIHZhbHVlIG9mIHRoZSBiaXRyYXRlIGNhbiB2YXJ5LCBhcyBpdCBpcyBk
ZXBlbmRlbnQgb24gdGhlCisgICAgICAgICAgICBjaGFyYWN0ZXJpc3RpY3Mgb2YgdGhlIG1lZGlh
IGluIGEgcGFja2V0LiBOb3RlIHRoYXQgdGhlIG1heGltdW0KKyAgICAgICAgICAgIGF2ZXJhZ2Ug
Yml0cmF0ZSBNQVkgYmUgbW9kaWZpZWQgZHluYW1pY2FsbHkgZHVyaW5nIGEgc2Vzc2lvbi4gQW55
CisgICAgICAgICAgICBwb3NpdGl2ZSBpbnRlZ2VyIGlzIGFsbG93ZWQsIGJ1dCB2YWx1ZXMgb3V0
c2lkZSB0aGUgcmFuZ2UKKyAgICAgICAgICAgIDYwMDAgdG8gNTEwMDAwIFNIT1VMRCBiZSBpZ25v
cmVkLiBJZiBubyB2YWx1ZSBpcyBzcGVjaWZpZWQsIHRoZQorICAgICAgICAgICAgbWF4aW11bSB2
YWx1ZSBzcGVjaWZpZWQgaW4gPHhyZWYgdGFyZ2V0PSdiaXRyYXRlX2J5X2JhbmR3aWR0aCcvPgor
ICAgICAgICAgICAgZm9yIHRoZSBjb3JyZXNwb25kaW5nIG1vZGUgb2YgT3B1cyBhbmQgY29ycmVz
cG9uZGluZyBtYXhwbGF5YmFja3JhdGUKKyAgICAgICAgICAgIGlzIHRoZSBkZWZhdWx0Ljx2c3Bh
Y2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKworICAgICAgICAgICAgPHQgaGFuZ1RleHQ9InN0ZXJl
bzoiPgorICAgICAgICAgICAgICBzcGVjaWZpZXMgd2hldGhlciB0aGUgZGVjb2RlciBwcmVmZXJz
IHJlY2VpdmluZyBzdGVyZW8gb3IgbW9ubyBzaWduYWxzLgorICAgICAgICAgICAgICBQb3NzaWJs
ZSB2YWx1ZXMgYXJlIDEgYW5kIDAgd2hlcmUgMSBzcGVjaWZpZXMgdGhhdCBzdGVyZW8gc2lnbmFs
cyBhcmUgcHJlZmVycmVkLAorICAgICAgICAgICAgICBhbmQgMCBzcGVjaWZpZXMgdGhhdCBvbmx5
IG1vbm8gc2lnbmFscyBhcmUgcHJlZmVycmVkLgorICAgICAgICAgICAgICBJbmRlcGVuZGVudCBv
ZiB0aGUgc3RlcmVvIHBhcmFtZXRlciBldmVyeSByZWNlaXZlciBNVVNUIGJlIGFibGUgdG8gcmVj
ZWl2ZSBhbmQKKyAgICAgICAgICAgICAgZGVjb2RlIHN0ZXJlbyBzaWduYWxzIGJ1dCBzZW5kaW5n
IHN0ZXJlbyBzaWduYWxzIHRvIGEgcmVjZWl2ZXIgdGhhdCBzaWduYWxlZCBhCisgICAgICAgICAg
ICAgIHByZWZlcmVuY2UgZm9yIG1vbm8gc2lnbmFscyBtYXkgcmVzdWx0IGluIGhpZ2hlciB0aGFu
IG5lY2Vzc2FyeSBuZXR3b3JrCisgICAgICAgICAgICAgIHV0aWxpemF0aW9uIGFuZCBlbmNvZGlu
ZyBjb21wbGV4aXR5LiBJZiBubyB2YWx1ZSBpcyBzcGVjaWZpZWQsCisgICAgICAgICAgICAgIHRo
ZSBkZWZhdWx0IGlzIDAgKG1vbm8pLjx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPgorICAgICAgICAg
ICAgPC90PgorCisgICAgICAgICAgICA8dCBoYW5nVGV4dD0ic3Byb3Atc3RlcmVvOiI+CisgICAg
ICAgICAgICAgIHNwZWNpZmllcyB3aGV0aGVyIHRoZSBzZW5kZXIgaXMgbGlrZWx5IHRvIHByb2R1
Y2Ugc3RlcmVvIGF1ZGlvLgorICAgICAgICAgICAgICBQb3NzaWJsZSB2YWx1ZXMgYXJlIDEgYW5k
IDAsIHdoZXJlIDEgc3BlY2lmaWVzIHRoYXQgc3RlcmVvIHNpZ25hbHMgYXJlIGxpa2VseSB0bwor
ICAgICAgICAgICAgICBiZSBzZW50LCBhbmQgMCBzcGVjaWZpZXMgdGhhdCB0aGUgc2VuZGVyIHdp
bGwgbGlrZWx5IG9ubHkgc2VuZCBtb25vLgorICAgICAgICAgICAgICBUaGlzIGlzIG5vdCBhIGd1
YXJhbnRlZSB0aGF0IHRoZSBzZW5kZXIgd2lsbCBuZXZlciBzZW5kIHN0ZXJlbyBhdWRpbworICAg
ICAgICAgICAgICAoZS5nLiBpdCBjb3VsZCBzZW5kIGEgcHJlLXJlY29yZGVkIHByb21wdCB0aGF0
IHVzZXMgc3RlcmVvKSwgYnV0IGl0CisgICAgICAgICAgICAgIGluZGljYXRlcyB0byB0aGUgcmVj
ZWl2ZXIgdGhhdCB0aGUgcmVjZWl2ZWQgc2lnbmFsIGNhbiBiZSBzYWZlbHkgZG93bm1peGVkIHRv
IG1vbm8uCisgICAgICAgICAgICAgIFRoaXMgcGFyYW1ldGVyIGlzIHVzZWZ1bCB0byBhdm9pZCB3
YXN0aW5nIHJlY2VpdmVyIHJlc291cmNlcyBieSBvcGVyYXRpbmcgdGhlIGF1ZGlvCisgICAgICAg
ICAgICAgIHByb2Nlc3NpbmcgcGlwZWxpbmUgKGUuZy4gZWNobyBjYW5jZWxsYXRpb24pIGluIHN0
ZXJlbyB3aGVuIG5vdCBuZWNlc3NhcnkuCisgICAgICAgICAgICAgIElmIG5vIHZhbHVlIGlzIHNw
ZWNpZmllZCwgdGhlIGRlZmF1bHQgaXMgMAorICAgICAgICAgICAgICAobW9ubykuPHZzcGFjZSBi
bGFua0xpbmVzPScxJy8+CisgICAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICAgIDx0IGhhbmdU
ZXh0PSJjYnI6Ij4KKyAgICAgICAgICAgICAgc3BlY2lmaWVzIGlmIHRoZSBkZWNvZGVyIHByZWZl
cnMgdGhlIHVzZSBvZiBhIGNvbnN0YW50IGJpdHJhdGUgdmVyc3VzCisgICAgICAgICAgICAgIHZh
cmlhYmxlIGJpdHJhdGUuIFBvc3NpYmxlIHZhbHVlcyBhcmUgMSBhbmQgMCwgd2hlcmUgMSBzcGVj
aWZpZXMgY29uc3RhbnQKKyAgICAgICAgICAgICAgYml0cmF0ZSBhbmQgMCBzcGVjaWZpZXMgdmFy
aWFibGUgYml0cmF0ZS4gSWYgbm8gdmFsdWUgaXMgc3BlY2lmaWVkLAorICAgICAgICAgICAgICB0
aGUgZGVmYXVsdCBpcyAwICh2YnIpLiBXaGVuIGNiciBpcyAxLCB0aGUgbWF4aW11bSBhdmVyYWdl
IGJpdHJhdGUgY2FuIHN0aWxsCisgICAgICAgICAgICAgIGNoYW5nZSwgZS5nLiB0byBhZGFwdCB0
byBjaGFuZ2luZyBuZXR3b3JrIGNvbmRpdGlvbnMuPHZzcGFjZSBibGFua0xpbmVzPScxJy8+Cisg
ICAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICAgIDx0IGhhbmdUZXh0PSJ1c2VpbmJhbmRmZWM6
Ij4gc3BlY2lmaWVzIHRoYXQgdGhlIGRlY29kZXIgaGFzIHRoZSBjYXBhYmlsaXR5IHRvCisgICAg
ICAgICAgICB0YWtlIGFkdmFudGFnZSBvZiB0aGUgT3B1cyBpbi1iYW5kIEZFQy4gUG9zc2libGUg
dmFsdWVzIGFyZSAxIGFuZCAwLgorICAgICAgICAgICAgUHJvdmlkaW5nIDAgd2hlbiBGRUMgY2Fu
bm90IGJlIHVzZWQgb24gdGhlIHJlY2VpdmluZyBzaWRlIGlzCisgICAgICAgICAgICBSRUNPTU1F
TkRFRC4gSWYgbm8KKyAgICAgICAgICAgIHZhbHVlIGlzIHNwZWNpZmllZCwgdXNlaW5iYW5kZmVj
IGlzIGFzc3VtZWQgdG8gYmUgMC4KKyAgICAgICAgICAgIFRoaXMgcGFyYW1ldGVyIGlzIG9ubHkg
YSBwcmVmZXJlbmNlIGFuZCB0aGUgcmVjZWl2ZXIgTVVTVCBiZSBhYmxlIHRvIHByb2Nlc3MKKyAg
ICAgICAgICAgIHBhY2tldHMgdGhhdCBpbmNsdWRlIEZFQyBpbmZvcm1hdGlvbiwgZXZlbiBpZiBp
dCBtZWFucyB0aGUgRkVDIHBhcnQgaXMgZGlzY2FyZGVkLgorICAgICAgICAgICAgPHZzcGFjZSBi
bGFua0xpbmVzPScxJy8+PC90PgorCisgICAgICAgICAgICA8dCBoYW5nVGV4dD0idXNlZHR4OiI+
IHNwZWNpZmllcyBpZiB0aGUgZGVjb2RlciBwcmVmZXJzIHRoZSB1c2Ugb2YKKyAgICAgICAgICAg
IERUWC4gUG9zc2libGUgdmFsdWVzIGFyZSAxIGFuZCAwLiBJZiBubyB2YWx1ZSBpcyBzcGVjaWZp
ZWQsIHRoZQorICAgICAgICAgICAgZGVmYXVsdCBpcyAwLjx2c3BhY2UgYmxhbmtMaW5lcz0nMScv
PjwvdD4KKyAgICAgICAgICA8L2xpc3Q+PC90PgorCisgICAgICAgICAgPHQ+RW5jb2RpbmcgY29u
c2lkZXJhdGlvbnM6PHZzcGFjZSBibGFua0xpbmVzPScxJy8+PC90PgorICAgICAgICAgIDx0Pjxs
aXN0IHN0eWxlPSJoYW5naW5nIj4KKyAgICAgICAgICAgIDx0PlRoZSBPcHVzIG1lZGlhIHR5cGUg
aXMgZnJhbWVkIGFuZCBjb25zaXN0cyBvZiBiaW5hcnkgZGF0YSBhY2NvcmRpbmcKKyAgICAgICAg
ICAgIHRvIFNlY3Rpb24mbmJzcDs0LjggaW4gPHhyZWYgdGFyZ2V0PSJSRkM2ODM4Ii8+LjwvdD4K
KyAgICAgICAgICA8L2xpc3Q+PC90PgorCisgICAgICAgICAgPHQ+U2VjdXJpdHkgY29uc2lkZXJh
dGlvbnM6IDwvdD4KKyAgICAgICAgICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAg
ICAgICA8dD5TZWUgPHhyZWYgdGFyZ2V0PSdzZWN1cml0eS1jb25zaWRlcmF0aW9ucycvPiBvZiB0
aGlzIGRvY3VtZW50LjwvdD4KKyAgICAgICAgICA8L2xpc3Q+PC90PgorCisgICAgICAgICAgPHQ+
SW50ZXJvcGVyYWJpbGl0eSBjb25zaWRlcmF0aW9uczogbm9uZTx2c3BhY2UgYmxhbmtMaW5lcz0n
MScvPjwvdD4KKwkgIDx0PlB1Ymxpc2hlZCBzcGVjaWZpY2F0aW9uOiBSRkMgW1hYWFhdPC90Pgor
CSAgPHQ+Tm90ZSB0byB0aGUgUkZDIEVkaXRvcjogUmVwbGFjZSBbWFhYWF0gd2l0aCB0aGUgbnVt
YmVyIG9mIHRoZSBwdWJsaXNoZWQKKyAgICAgICAgICBSRkMuPHZzcGFjZSBibGFua0xpbmVzPScx
Jy8+PC90PgorCisgICAgICAgICAgPHQ+QXBwbGljYXRpb25zIHRoYXQgdXNlIHRoaXMgbWVkaWEg
dHlwZTogPC90PgorICAgICAgICAgIDx0PjxsaXN0IHN0eWxlPSJoYW5naW5nIj4KKyAgICAgICAg
ICAgIDx0PkFueSBhcHBsaWNhdGlvbiB0aGF0IHJlcXVpcmVzIHRoZSB0cmFuc3BvcnQgb2YKKyAg
ICAgICAgICAgIHNwZWVjaCBvciBhdWRpbyBkYXRhIGNhbiB1c2UgdGhpcyBtZWRpYSB0eXBlLiBT
b21lIGV4YW1wbGVzIGFyZSwKKyAgICAgICAgICAgIGJ1dCBub3QgbGltaXRlZCB0bywgYXVkaW8g
YW5kIHZpZGVvIGNvbmZlcmVuY2luZywgVm9pY2Ugb3ZlciBJUCwKKyAgICAgICAgICAgIG1lZGlh
IHN0cmVhbWluZy48L3Q+CisgICAgICAgICAgPC9saXN0PjwvdD4KKworICAgICAgICAgIDx0PkZy
YWdtZW50IGlkZW50aWZpZXIgY29uc2lkZXJhdGlvbnM6IE4vQTx2c3BhY2UgYmxhbmtMaW5lcz0n
MScvPjwvdD4KKworICAgICAgICAgIDx0PlBlcnNvbiAmYW1wOyBlbWFpbCBhZGRyZXNzIHRvIGNv
bnRhY3QgZm9yIGZ1cnRoZXIgaW5mb3JtYXRpb246PC90PgorICAgICAgICAgIDx0PjxsaXN0IHN0
eWxlPSJoYW5naW5nIj4KKyAgICAgICAgICAgIDx0PlNJTEsgU3VwcG9ydCBzaWxrc3VwcG9ydEBz
a3lwZS5uZXQ8L3Q+CisgICAgICAgICAgICA8dD5KZWFuLU1hcmMgVmFsaW4gam12YWxpbkBqbXZh
bGluLmNhPC90PgorICAgICAgICAgIDwvbGlzdD48L3Q+CisKKyAgICAgICAgICA8dD5JbnRlbmRl
ZCB1c2FnZTogQ09NTU9OPHZzcGFjZSBibGFua0xpbmVzPScxJy8+PC90PgorCisgICAgICAgICAg
PHQ+UmVzdHJpY3Rpb25zIG9uIHVzYWdlOjx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKwor
ICAgICAgICAgIDx0PjxsaXN0IHN0eWxlPSJoYW5naW5nIj4KKyAgICAgICAgICAgIDx0PkZvciB0
cmFuc2ZlciBvdmVyIFJUUCwgdGhlIFJUUCBwYXlsb2FkIGZvcm1hdCAoPHhyZWYKKyAgICAgICAg
ICAgIHRhcmdldD0nb3B1cy1ydHAtcGF5bG9hZC1mb3JtYXQnLz4gb2YgdGhpcyBkb2N1bWVudCkg
U0hBTEwgYmUKKyAgICAgICAgICAgIHVzZWQuPC90PgorICAgICAgICAgIDwvbGlzdD48L3Q+CisK
KyAgICAgICAgICA8dD5BdXRob3I6PC90PgorICAgICAgICAgIDx0PjxsaXN0IHN0eWxlPSJoYW5n
aW5nIj4KKyAgICAgICAgICAgIDx0Pkp1bGlhbiBTcGl0dGthIGpzcGl0dGthQGdtYWlsLmNvbTx2
c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKyAgICAgICAgICAgIDx0PktvZW4gVm9zIGtvZW52
b3M3NEBnbWFpbC5jb208dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisgICAgICAgICAgICA8
dD5KZWFuLU1hcmMgVmFsaW4gam12YWxpbkBqbXZhbGluLmNhPHZzcGFjZSBibGFua0xpbmVzPScx
Jy8+PC90PgorICAgICAgICAgIDwvbGlzdD48L3Q+CisKKyAgICAgICAgICA8dD4gQ2hhbmdlIGNv
bnRyb2xsZXI6IElFVEYgUGF5bG9hZCBXb3JraW5nIEdyb3VwIGRlbGVnYXRlZCBmcm9tIHRoZSBJ
RVNHPC90PgorICAgICAgPC9zZWN0aW9uPgorICAgIDwvc2VjdGlvbj4KKyAgICAKKyAgICA8c2Vj
dGlvbiB0aXRsZT0nU0RQIENvbnNpZGVyYXRpb25zJz4KKyAgICAgICAgPHQ+VGhlIGluZm9ybWF0
aW9uIGRlc2NyaWJlZCBpbiB0aGUgbWVkaWEgdHlwZSBzcGVjaWZpY2F0aW9uIGhhcyBhCisgICAg
ICAgIHNwZWNpZmljIG1hcHBpbmcgdG8gZmllbGRzIGluIHRoZSBTZXNzaW9uIERlc2NyaXB0aW9u
IFByb3RvY29sIChTRFApCisgICAgICAgIDx4cmVmIHRhcmdldD0iUkZDNDU2NiIvPiwgd2hpY2gg
aXMgY29tbW9ubHkgdXNlZCB0byBkZXNjcmliZSBSVFAKKyAgICAgICAgc2Vzc2lvbnMuIFdoZW4g
U0RQIGlzIHVzZWQgdG8gc3BlY2lmeSBzZXNzaW9ucyBlbXBsb3lpbmcgT3B1cywKKyAgICAgICAg
dGhlIG1hcHBpbmcgaXMgYXMgZm9sbG93czo8L3Q+CisKKyAgICAgICAgPHQ+CisgICAgICAgICAg
PGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorICAgICAgICAgICAgPHQ+VGhlIG1lZGlhIHR5cGUgKCJh
dWRpbyIpIGdvZXMgaW4gU0RQICJtPSIgYXMgdGhlIG1lZGlhIG5hbWUuPC90PgorCisgICAgICAg
ICAgICA8dD5UaGUgbWVkaWEgc3VidHlwZSAoIm9wdXMiKSBnb2VzIGluIFNEUCAiYT1ydHBtYXAi
IGFzIHRoZSBlbmNvZGluZworICAgICAgICAgICAgbmFtZS4gVGhlIFJUUCBjbG9jayByYXRlIGlu
ICJhPXJ0cG1hcCIgTVVTVCBiZSA0ODAwMCBhbmQgdGhlIG51bWJlciBvZgorICAgICAgICAgICAg
Y2hhbm5lbHMgTVVTVCBiZSAyLjwvdD4KKworICAgICAgICAgICAgPHQ+VGhlIE9QVElPTkFMIG1l
ZGlhIHR5cGUgcGFyYW1ldGVycyAicHRpbWUiIGFuZCAibWF4cHRpbWUiIGFyZQorICAgICAgICAg
ICAgbWFwcGVkIHRvICJhPXB0aW1lIiBhbmQgImE9bWF4cHRpbWUiIGF0dHJpYnV0ZXMsIHJlc3Bl
Y3RpdmVseSwgaW4gdGhlCisgICAgICAgICAgICBTRFAuPC90PgorCisgICAgICAgICAgICA8dD5U
aGUgT1BUSU9OQUwgbWVkaWEgdHlwZSBwYXJhbWV0ZXJzICJtYXhhdmVyYWdlYml0cmF0ZSIsCisg
ICAgICAgICAgICAibWF4cGxheWJhY2tyYXRlIiwgInN0ZXJlbyIsICJjYnIiLCAidXNlaW5iYW5k
ZmVjIiwgYW5kCisgICAgICAgICAgICAidXNlZHR4Iiwgd2hlbiBwcmVzZW50LCBNVVNUIGJlIGlu
Y2x1ZGVkIGluIHRoZSAiYT1mbXRwIiBhdHRyaWJ1dGUKKyAgICAgICAgICAgIGluIHRoZSBTRFAs
IGV4cHJlc3NlZCBhcyBhIG1lZGlhIHR5cGUgc3RyaW5nIGluIHRoZSBmb3JtIG9mIGEKKyAgICAg
ICAgICAgIHNlbWljb2xvbi1zZXBhcmF0ZWQgbGlzdCBvZiBwYXJhbWV0ZXI9dmFsdWUgcGFpcnMg
KGUuZy4sCisgICAgICAgICAgICBtYXhwbGF5YmFja3JhdGU9NDgwMDApLiBUaGV5IE1VU1QgTk9U
IGJlIHNwZWNpZmllZCBpbiBhbgorICAgICAgICAgICAgU1NSQy1zcGVjaWZpYyAiZm10cCIgc291
cmNlLWxldmVsIGF0dHJpYnV0ZSAoYXMgZGVmaW5lZCBpbgorICAgICAgICAgICAgU2VjdGlvbiZu
YnNwOzYuMyBvZiZuYnNwOzx4cmVmIHRhcmdldD0iUkZDNTU3NiIvPikuPC90PgorCisgICAgICAg
ICAgICA8dD5UaGUgT1BUSU9OQUwgbWVkaWEgdHlwZSBwYXJhbWV0ZXJzICJzcHJvcC1tYXhjYXB0
dXJlcmF0ZSIsCisgICAgICAgICAgICBhbmQgInNwcm9wLXN0ZXJlbyIgTUFZIGJlIG1hcHBlZCB0
byB0aGUgImE9Zm10cCIgU0RQIGF0dHJpYnV0ZSBieQorICAgICAgICAgICAgY29weWluZyB0aGVt
IGRpcmVjdGx5IGZyb20gdGhlIG1lZGlhIHR5cGUgcGFyYW1ldGVyIHN0cmluZyBhcyBwYXJ0Cisg
ICAgICAgICAgICBvZiB0aGUgc2VtaWNvbG9uLXNlcGFyYXRlZCBsaXN0IG9mIHBhcmFtZXRlcj12
YWx1ZSBwYWlycyAoZS5nLiwKKyAgICAgICAgICAgIHNwcm9wLXN0ZXJlbz0xKS4gVGhlc2Ugc2Ft
ZSBPUFRJT05BTCBtZWRpYSB0eXBlIHBhcmFtZXRlcnMgTUFZIGFsc28KKyAgICAgICAgICAgIGJl
IHNwZWNpZmllZCB1c2luZyBhbiBTU1JDLXNwZWNpZmljICJmbXRwIiBzb3VyY2UtbGV2ZWwgYXR0
cmlidXRlCisgICAgICAgICAgICBhcyBkZXNjcmliZWQgaW4gU2VjdGlvbiZuYnNwOzYuMyBvZiZu
YnNwOzx4cmVmIHRhcmdldD0iUkZDNTU3NiIvPi4KKyAgICAgICAgICAgIFRoZXkgTUFZIGJlIHNw
ZWNpZmllZCBpbiBib3RoIHBsYWNlcywgaW4gd2hpY2ggY2FzZSB0aGUgcGFyYW1ldGVyCisgICAg
ICAgICAgICBpbiB0aGUgc291cmNlLWxldmVsIGF0dHJpYnV0ZSBvdmVycmlkZXMgdGhlIG9uZSBm
b3VuZCBvbiB0aGUKKyAgICAgICAgICAgICJhPWZtdHAiIGxpbmUuIFRoZSB2YWx1ZSBvZiBhbnkg
cGFyYW1ldGVyIHdoaWNoIGlzIG5vdCBzcGVjaWZpZWQgaW4KKyAgICAgICAgICAgIGEgc291cmNl
LWxldmVsIHNvdXJjZSBhdHRyaWJ1dGUgTVVTVCBiZSB0YWtlbiBmcm9tIHRoZSAiYT1mbXRwIgor
ICAgICAgICAgICAgbGluZSwgaWYgaXQgaXMgcHJlc2VudCB0aGVyZS48L3Q+CisKKyAgICAgICAg
ICA8L2xpc3Q+CisgICAgICAgIDwvdD4KKworICAgICAgICA8dD5CZWxvdyBhcmUgc29tZSBleGFt
cGxlcyBvZiBTRFAgc2Vzc2lvbiBkZXNjcmlwdGlvbnMgZm9yIE9wdXM6PC90PgorCisgICAgICAg
IDx0PkV4YW1wbGUgMTogU3RhbmRhcmQgbW9ubyBzZXNzaW9uIHdpdGggNDgwMDAgSHogY2xvY2sg
cmF0ZTwvdD4KKyAgICAgICAgICA8ZmlndXJlPgorICAgICAgICAgICAgPGFydHdvcms+CisgICAg
ICAgICAgICAgIDwhW0NEQVRBWworICAgIG09YXVkaW8gNTQzMTIgUlRQL0FWUCAxMDEKKyAgICBh
PXJ0cG1hcDoxMDEgb3B1cy80ODAwMC8yCisgICAgICAgICAgICAgIF1dPgorICAgICAgICAgICAg
PC9hcnR3b3JrPgorICAgICAgICAgIDwvZmlndXJlPgorCisKKyAgICAgICAgPHQ+RXhhbXBsZSAy
OiAxNjAwMCBIeiBjbG9jayByYXRlLCBtYXhpbXVtIHBhY2tldCBzaXplIG9mIDQwIG1zLAorICAg
ICAgICByZWNvbW1lbmRlZCBwYWNrZXQgc2l6ZSBvZiA0MCBtcywgbWF4aW11bSBhdmVyYWdlIGJp
dHJhdGUgb2YgMjAwMDAgYnBzLAorICAgICAgICBwcmVmZXJzIHRvIHJlY2VpdmUgc3RlcmVvIGJ1
dCBvbmx5IHBsYW5zIHRvIHNlbmQgbW9ubywgRkVDIGlzIGRlc2lyZWQsCisgICAgICAgIERUWCBp
cyBub3QgZGVzaXJlZDwvdD4KKworICAgICAgICA8ZmlndXJlPgorICAgICAgICAgIDxhcnR3b3Jr
PgorICAgICAgICAgICAgPCFbQ0RBVEFbCisgICAgbT1hdWRpbyA1NDMxMiBSVFAvQVZQIDEwMQor
ICAgIGE9cnRwbWFwOjEwMSBvcHVzLzQ4MDAwLzIKKyAgICBhPWZtdHA6MTAxIG1heHBsYXliYWNr
cmF0ZT0xNjAwMDsgc3Byb3AtbWF4Y2FwdHVyZXJhdGU9MTYwMDA7CisgICAgbWF4YXZlcmFnZWJp
dHJhdGU9MjAwMDA7IHN0ZXJlbz0xOyB1c2VpbmJhbmRmZWM9MTsgdXNlZHR4PTAKKyAgICBhPXB0
aW1lOjQwCisgICAgYT1tYXhwdGltZTo0MAorICAgICAgICAgICAgXV0+CisgICAgICAgICAgPC9h
cnR3b3JrPgorICAgICAgICA8L2ZpZ3VyZT4KKworICAgICAgICA8dD5FeGFtcGxlIDM6IFR3by13
YXkgZnVsbC1iYW5kIHN0ZXJlbyBwcmVmZXJyZWQ8L3Q+CisKKyAgICAgICAgPGZpZ3VyZT4KKyAg
ICAgICAgICA8YXJ0d29yaz4KKyAgICAgICAgICAgIDwhW0NEQVRBWworICAgIG09YXVkaW8gNTQz
MTIgUlRQL0FWUCAxMDEKKyAgICBhPXJ0cG1hcDoxMDEgb3B1cy80ODAwMC8yCisgICAgYT1mbXRw
OjEwMSBzdGVyZW89MTsgc3Byb3Atc3RlcmVvPTEKKyAgICAgICAgICAgIF1dPgorICAgICAgICAg
IDwvYXJ0d29yaz4KKyAgICAgICAgPC9maWd1cmU+CisKKworICAgICAgPHNlY3Rpb24gdGl0bGU9
J1NEUCBPZmZlci9BbnN3ZXIgQ29uc2lkZXJhdGlvbnMnPgorCisgICAgICAgICAgPHQ+V2hlbiB1
c2luZyB0aGUgb2ZmZXItYW5zd2VyIHByb2NlZHVyZSBkZXNjcmliZWQgaW4gPHhyZWYKKyAgICAg
ICAgICB0YXJnZXQ9IlJGQzMyNjQiLz4gdG8gbmVnb3RpYXRlIHRoZSB1c2Ugb2YgT3B1cywgdGhl
IGZvbGxvd2luZworICAgICAgICAgIGNvbnNpZGVyYXRpb25zIGFwcGx5OjwvdD4KKworICAgICAg
ICAgIDx0PjxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKworICAgICAgICAgICAgPHQ+T3B1cyBzdXBw
b3J0cyBzZXZlcmFsIGNsb2NrIHJhdGVzLiBGb3Igc2lnbmFsaW5nIHB1cnBvc2VzIG9ubHkKKyAg
ICAgICAgICAgIHRoZSBoaWdoZXN0LCBpLmUuIDQ4MDAwLCBpcyB1c2VkLiBUaGUgYWN0dWFsIGNs
b2NrIHJhdGUgb2YgdGhlCisgICAgICAgICAgICBjb3JyZXNwb25kaW5nIG1lZGlhIGlzIHNpZ25h
bGVkIGluc2lkZSB0aGUgcGF5bG9hZCBhbmQgaXMgbm90CisgICAgICAgICAgICByZXN0cmljdGVk
IGJ5IHRoaXMgcGF5bG9hZCBmb3JtYXQgZGVzY3JpcHRpb24uIFRoZSBkZWNvZGVyIE1VU1QgYmUK
KyAgICAgICAgICAgIGNhcGFibGUgb2YgZGVjb2RpbmcgZXZlcnkgcmVjZWl2ZWQgY2xvY2sgcmF0
ZS4gQW4gZXhhbXBsZQorICAgICAgICAgICAgaXMgc2hvd24gYmVsb3c6CisKKyAgICAgICAgICAg
IDxmaWd1cmU+CisgICAgICAgICAgICAgIDxhcnR3b3JrPgorICAgICAgICAgICAgICAgIDwhW0NE
QVRBWworICAgIG09YXVkaW8gNTQzMTIgUlRQL0FWUCAxMDAKKyAgICBhPXJ0cG1hcDoxMDAgb3B1
cy80ODAwMC8yCisgICAgICAgICAgICAgICAgXV0+CisgICAgICAgICAgICAgIDwvYXJ0d29yaz4K
KyAgICAgICAgICAgIDwvZmlndXJlPgorICAgICAgICAgICAgPC90PgorCisgICAgICAgICAgICA8
dD5UaGUgInB0aW1lIiBhbmQgIm1heHB0aW1lIiBwYXJhbWV0ZXJzIGFyZSB1bmlkaXJlY3Rpb25h
bAorICAgICAgICAgICAgcmVjZWl2ZS1vbmx5IHBhcmFtZXRlcnMgYW5kIHR5cGljYWxseSB3aWxs
IG5vdCBjb21wcm9taXNlCisgICAgICAgICAgICBpbnRlcm9wZXJhYmlsaXR5OyBob3dldmVyLCBz
b21lIHZhbHVlcyBtaWdodCBjYXVzZSBhcHBsaWNhdGlvbgorICAgICAgICAgICAgcGVyZm9ybWFu
Y2UgdG8gc3VmZmVyLiA8eHJlZgorICAgICAgICAgICAgdGFyZ2V0PSJSRkMzMjY0Ii8+IGRlZmlu
ZXMgdGhlIFNEUCBvZmZlci1hbnN3ZXIgaGFuZGxpbmcgb2YgdGhlCisgICAgICAgICAgICAicHRp
bWUiIHBhcmFtZXRlci4gVGhlICJtYXhwdGltZSIgcGFyYW1ldGVyIE1VU1QgYmUgaGFuZGxlZCBp
biB0aGUKKyAgICAgICAgICAgIHNhbWUgd2F5LjwvdD4KKworICAgICAgICAgICAgPHQ+CisgICAg
ICAgICAgICAgIFRoZSAibWF4cGxheWJhY2tyYXRlIiBwYXJhbWV0ZXIgaXMgYSB1bmlkaXJlY3Rp
b25hbCByZWNlaXZlLW9ubHkKKyAgICAgICAgICAgICAgcGFyYW1ldGVyIHRoYXQgcmVmbGVjdHMg
bGltaXRhdGlvbnMgb2YgdGhlIGxvY2FsIHJlY2VpdmVyLiBXaGVuCisgICAgICAgICAgICAgIHNl
bmRpbmcgdG8gYSBzaW5nbGUgZGVzdGluYXRpb24sIGEgc2VuZGVyIE1VU1QgTk9UIHVzZSBhbiBh
dWRpbworICAgICAgICAgICAgICBiYW5kd2lkdGggaGlnaGVyIHRoYW4gbmVjZXNzYXJ5IHRvIG1h
a2UgZnVsbCB1c2Ugb2YgYXVkaW8gc2FtcGxlZCBhdAorICAgICAgICAgICAgICBhIHNhbXBsaW5n
IHJhdGUgb2YgIm1heHBsYXliYWNrcmF0ZSIuIEdhdGV3YXlzIG9yIHNlbmRlcnMgdGhhdAorICAg
ICAgICAgICAgICBhcmUgc2VuZGluZyB0aGUgc2FtZSBlbmNvZGVkIGF1ZGlvIHRvIG11bHRpcGxl
IGRlc3RpbmF0aW9ucworICAgICAgICAgICAgICBTSE9VTEQgTk9UIHVzZSBhbiBhdWRpbyBiYW5k
d2lkdGggaGlnaGVyIHRoYW4gbmVjZXNzYXJ5IHRvCisgICAgICAgICAgICAgIHJlcHJlc2VudCBh
dWRpbyBzYW1wbGVkIGF0ICJtYXhwbGF5YmFja3JhdGUiLCBhcyB0aGlzIHdvdWxkIGxlYWQKKyAg
ICAgICAgICAgICAgdG8gaW5lZmZpY2llbnQgdXNlIG9mIG5ldHdvcmsgcmVzb3VyY2VzLgorICAg
ICAgICAgICAgICBUaGUgIm1heHBsYXliYWNrcmF0ZSIgcGFyYW1ldGVyIGRvZXMgbm90CisgICAg
ICAgICAgICAgIGFmZmVjdCBpbnRlcm9wZXJhYmlsaXR5LiBBbHNvLCB0aGlzIHBhcmFtZXRlciBT
SE9VTEQgTk9UIGJlIHVzZWQKKyAgICAgICAgICAgICAgdG8gYWRqdXN0IHRoZSBhdWRpbyBiYW5k
d2lkdGggYXMgYSBmdW5jdGlvbiBvZiB0aGUgYml0cmF0ZSwgYXMgdGhpcworICAgICAgICAgICAg
ICBpcyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGhlIE9wdXMgZW5jb2RlciBpbXBsZW1lbnRhdGlv
bi4KKyAgICAgICAgICAgIDwvdD4KKworICAgICAgICAgICAgPHQ+VGhlICJtYXhhdmVyYWdlYml0
cmF0ZSIgcGFyYW1ldGVyIGlzIGEgdW5pZGlyZWN0aW9uYWwgcmVjZWl2ZS1vbmx5CisgICAgICAg
ICAgICBwYXJhbWV0ZXIgdGhhdCByZWZsZWN0cyBsaW1pdGF0aW9ucyBvZiB0aGUgbG9jYWwgcmVj
ZWl2ZXIuIFRoZSBzZW5kZXIKKyAgICAgICAgICAgIG9mIHRoZSBvdGhlciBzaWRlIE1VU1QgTk9U
IHNlbmQgd2l0aCBhbiBhdmVyYWdlIGJpdHJhdGUgaGlnaGVyIHRoYW4KKyAgICAgICAgICAgICJt
YXhhdmVyYWdlYml0cmF0ZSIgYXMgaXQgbWlnaHQgb3ZlcmxvYWQgdGhlIG5ldHdvcmsgYW5kL29y
CisgICAgICAgICAgICByZWNlaXZlci4gVGhlICJtYXhhdmVyYWdlYml0cmF0ZSIgcGFyYW1ldGVy
IHR5cGljYWxseSB3aWxsIG5vdAorICAgICAgICAgICAgY29tcHJvbWlzZSBpbnRlcm9wZXJhYmls
aXR5OyBob3dldmVyLCBzb21lIHZhbHVlcyBtaWdodCBjYXVzZQorICAgICAgICAgICAgYXBwbGlj
YXRpb24gcGVyZm9ybWFuY2UgdG8gc3VmZmVyLCBhbmQgb3VnaHQgdG8gYmUgc2V0IHdpdGgKKyAg
ICAgICAgICAgIGNhcmUuPC90PgorCisgICAgICAgICAgICA8dD5UaGUgInNwcm9wLW1heGNhcHR1
cmVyYXRlIiBhbmQgInNwcm9wLXN0ZXJlbyIgcGFyYW1ldGVycyBhcmUKKyAgICAgICAgICAgIHVu
aWRpcmVjdGlvbmFsIHNlbmRlci1vbmx5IHBhcmFtZXRlcnMgdGhhdCByZWZsZWN0IGxpbWl0YXRp
b25zIG9mCisgICAgICAgICAgICB0aGUgc2VuZGVyIHNpZGUuCisgICAgICAgICAgICBUaGV5IGFs
bG93IHRoZSByZWNlaXZlciB0byBzZXQgdXAgYSByZWR1Y2VkLWNvbXBsZXhpdHkgYXVkaW8KKyAg
ICAgICAgICAgIHByb2Nlc3NpbmcgcGlwZWxpbmUgaWYgdGhlICBzZW5kZXIgaXMgbm90IHBsYW5u
aW5nIHRvIHVzZSB0aGUgZnVsbAorICAgICAgICAgICAgcmFuZ2Ugb2YgT3B1cydzIGNhcGFiaWxp
dGllcy4KKyAgICAgICAgICAgIE5laXRoZXIgInNwcm9wLW1heGNhcHR1cmVyYXRlIiBub3IgInNw
cm9wLXN0ZXJlbyIgYWZmZWN0CisgICAgICAgICAgICBpbnRlcm9wZXJhYmlsaXR5IGFuZCB0aGUg
cmVjZWl2ZXIgTVVTVCBiZSBjYXBhYmxlIG9mIHJlY2VpdmluZyBhbnkgc2lnbmFsLgorICAgICAg
ICAgICAgPC90PgorCisgICAgICAgICAgICA8dD4KKyAgICAgICAgICAgICAgVGhlICJzdGVyZW8i
IHBhcmFtZXRlciBpcyBhIHVuaWRpcmVjdGlvbmFsIHJlY2VpdmUtb25seQorICAgICAgICAgICAg
ICBwYXJhbWV0ZXIuIFdoZW4gc2VuZGluZyB0byBhIHNpbmdsZSBkZXN0aW5hdGlvbiwgYSBzZW5k
ZXIgTVVTVAorICAgICAgICAgICAgICBOT1QgdXNlIHN0ZXJlbyB3aGVuICJzdGVyZW8iIGlzIDAu
IEdhdGV3YXlzIG9yIHNlbmRlcnMgdGhhdCBhcmUKKyAgICAgICAgICAgICAgc2VuZGluZyB0aGUg
c2FtZSBlbmNvZGVkIGF1ZGlvIHRvIG11bHRpcGxlIGRlc3RpbmF0aW9ucyBTSE9VTEQKKyAgICAg
ICAgICAgICAgTk9UIHVzZSBzdGVyZW8gd2hlbiAic3RlcmVvIiBpcyAwLCBhcyB0aGlzIHdvdWxk
IGxlYWQgdG8KKyAgICAgICAgICAgICAgaW5lZmZpY2llbnQgdXNlIG9mIG5ldHdvcmsgcmVzb3Vy
Y2VzLiBUaGUgInN0ZXJlbyIgcGFyYW1ldGVyIGRvZXMKKyAgICAgICAgICAgICAgbm90IGFmZmVj
dCBpbnRlcm9wZXJhYmlsaXR5LgorICAgICAgICAgICAgPC90PgorCisgICAgICAgICAgICA8dD4K
KyAgICAgICAgICAgICAgVGhlICJjYnIiIHBhcmFtZXRlciBpcyBhIHVuaWRpcmVjdGlvbmFsIHJl
Y2VpdmUtb25seQorICAgICAgICAgICAgICBwYXJhbWV0ZXIuCisgICAgICAgICAgICA8L3Q+CisK
KyAgICAgICAgICAgIDx0PlRoZSAidXNlaW5iYW5kZmVjIiBwYXJhbWV0ZXIgaXMgYSB1bmlkaXJl
Y3Rpb25hbCByZWNlaXZlLW9ubHkKKyAgICAgICAgICAgIHBhcmFtZXRlci48L3Q+CisKKyAgICAg
ICAgICAgIDx0PlRoZSAidXNlZHR4IiBwYXJhbWV0ZXIgaXMgYSB1bmlkaXJlY3Rpb25hbCByZWNl
aXZlLW9ubHkKKyAgICAgICAgICAgIHBhcmFtZXRlci48L3Q+CisKKyAgICAgICAgICAgIDx0PkFu
eSB1bmtub3duIHBhcmFtZXRlciBpbiBhbiBvZmZlciBNVVNUIGJlIGlnbm9yZWQgYnkgdGhlIHJl
Y2VpdmVyCisgICAgICAgICAgICBhbmQgTVVTVCBiZSByZW1vdmVkIGZyb20gdGhlIGFuc3dlci48
L3Q+CisKKyAgICAgICAgICA8L2xpc3Q+PC90PgorICAgICAgCisgICAgICAgIDx0PgorCSAgVGhl
IE9wdXMgcGFyYW1ldGVycyBpbiBhbiBTRFAgT2ZmZXIvQW5zd2VyIGV4Y2hhbmdlIGFyZSBjb21w
bGV0ZWx5CisgICAgICAgICAgb3J0aG9nb25hbCwgYW5kIHRoZXJlIGlzIG5vIHJlbGF0aW9uc2hp
cCBiZXR3ZWVuIHRoZSBTRFAgT2ZmZXIgYW5kCisgICAgICAgICAgdGhlIEFuc3dlci4KKyAgICAg
ICAgPC90PgorICAgICAgPC9zZWN0aW9uPgorCisgICAgICA8c2VjdGlvbiB0aXRsZT0nRGVjbGFy
YXRpdmUgU0RQIENvbnNpZGVyYXRpb25zIGZvciBPcHVzJz4KKworICAgICAgICA8dD5Gb3IgZGVj
bGFyYXRpdmUgdXNlIG9mIFNEUCBzdWNoIGFzIGluIFNlc3Npb24gQW5ub3VuY2VtZW50IFByb3Rv
Y29sCisgICAgICAgIChTQVApLCA8eHJlZiB0YXJnZXQ9IlJGQzI5NzQiLz4sIGFuZCBSVFNQLCA8
eHJlZiB0YXJnZXQ9IlJGQzIzMjYiLz4sIGZvcgorICAgICAgICBPcHVzLCB0aGUgZm9sbG93aW5n
IG5lZWRzIHRvIGJlIGNvbnNpZGVyZWQ6PC90PgorCisgICAgICAgIDx0PjxsaXN0IHN0eWxlPSJz
eW1ib2xzIj4KKworICAgICAgICAgIDx0PlRoZSB2YWx1ZXMgZm9yICJtYXhwdGltZSIsICJwdGlt
ZSIsICJtYXhwbGF5YmFja3JhdGUiLCBhbmQKKyAgICAgICAgICAibWF4YXZlcmFnZWJpdHJhdGUi
IG91Z2h0IHRvIGJlIHNlbGVjdGVkIGNhcmVmdWxseSB0byBlbnN1cmUgdGhhdCBhCisgICAgICAg
ICAgcmVhc29uYWJsZSBwZXJmb3JtYW5jZSBjYW4gYmUgYWNoaWV2ZWQgZm9yIHRoZSBwYXJ0aWNp
cGFudHMgb2YgYSBzZXNzaW9uLjwvdD4KKworICAgICAgICAgIDx0PgorICAgICAgICAgICAgVGhl
IHZhbHVlcyBmb3IgIm1heHB0aW1lIiwgInB0aW1lIiwgYW5kIG9mIHRoZSBwYXlsb2FkCisgICAg
ICAgICAgICBmb3JtYXQgY29uZmlndXJhdGlvbiBhcmUgcmVjb21tZW5kYXRpb25zIGJ5IHRoZSBk
ZWNvZGluZyBzaWRlIHRvIGVuc3VyZQorICAgICAgICAgICAgdGhlIGJlc3QgcGVyZm9ybWFuY2Ug
Zm9yIHRoZSBkZWNvZGVyLgorICAgICAgICAgIDwvdD4KKworICAgICAgICAgIDx0PkFsbCBvdGhl
ciBwYXJhbWV0ZXJzIG9mIHRoZSBwYXlsb2FkIGZvcm1hdCBjb25maWd1cmF0aW9uIGFyZSBkZWNs
YXJhdGl2ZQorICAgICAgICAgIGFuZCBhIHBhcnRpY2lwYW50IE1VU1QgdXNlIHRoZSBjb25maWd1
cmF0aW9ucyB0aGF0IGFyZSBwcm92aWRlZCBmb3IKKyAgICAgICAgICB0aGUgc2Vzc2lvbi4gTW9y
ZSB0aGFuIG9uZSBjb25maWd1cmF0aW9uIGNhbiBiZSBwcm92aWRlZCBpZiBuZWNlc3NhcnkKKyAg
ICAgICAgICBieSBkZWNsYXJpbmcgbXVsdGlwbGUgUlRQIHBheWxvYWQgdHlwZXM7IGhvd2V2ZXIs
IHRoZSBudW1iZXIgb2YgdHlwZXMKKyAgICAgICAgICBvdWdodCB0byBiZSBrZXB0IHNtYWxsLjwv
dD4KKyAgICAgICAgPC9saXN0PjwvdD4KKyAgICAgIDwvc2VjdGlvbj4KKyAgPC9zZWN0aW9uPgor
CisgICAgPHNlY3Rpb24gdGl0bGU9J1NlY3VyaXR5IENvbnNpZGVyYXRpb25zJyBhbmNob3I9J3Nl
Y3VyaXR5LWNvbnNpZGVyYXRpb25zJz4KKworICAgICAgPHQ+VXNlIG9mIHZhcmlhYmxlIGJpdHJh
dGUgKFZCUikgaXMgc3ViamVjdCB0byB0aGUgc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMgaW4KKyAg
ICAgIDx4cmVmIHRhcmdldD0iUkZDNjU2MiIvPi48L3Q+CisKKyAgICAgIDx0PlJUUCBwYWNrZXRz
IHVzaW5nIHRoZSBwYXlsb2FkIGZvcm1hdCBkZWZpbmVkIGluIHRoaXMgc3BlY2lmaWNhdGlvbgor
ICAgICAgYXJlIHN1YmplY3QgdG8gdGhlIHNlY3VyaXR5IGNvbnNpZGVyYXRpb25zIGRpc2N1c3Nl
ZCBpbiB0aGUgUlRQCisgICAgICBzcGVjaWZpY2F0aW9uIDx4cmVmIHRhcmdldD0iUkZDMzU1MCIv
PiwgYW5kIGluIGFueSBhcHBsaWNhYmxlIFJUUCBwcm9maWxlIHN1Y2ggYXMKKyAgICAgIFJUUC9B
VlAgPHhyZWYgdGFyZ2V0PSJSRkMzNTUxIi8+LCBSVFAvQVZQRiA8eHJlZiB0YXJnZXQ9IlJGQzQ1
ODUiLz4sCisgICAgICBSVFAvU0FWUCA8eHJlZiB0YXJnZXQ9IlJGQzM3MTEiLz4gb3IgUlRQL1NB
VlBGIDx4cmVmIHRhcmdldD0iUkZDNTEyNCIvPi4KKyAgICAgIEhvd2V2ZXIsIGFzICJTZWN1cmlu
ZyB0aGUgUlRQIFByb3RvY29sIEZyYW1ld29yazoKKyAgICAgIFdoeSBSVFAgRG9lcyBOb3QgTWFu
ZGF0ZSBhIFNpbmdsZSBNZWRpYSBTZWN1cml0eSBTb2x1dGlvbiIKKyAgICAgIDx4cmVmIHRhcmdl
dD0iUkZDNzIwMiIvPiBkaXNjdXNzZXMsIGl0IGlzIG5vdCBhbiBSVFAgcGF5bG9hZAorICAgICAg
Zm9ybWF0J3MgcmVzcG9uc2liaWxpdHkgdG8gZGlzY3VzcyBvciBtYW5kYXRlIHdoYXQgc29sdXRp
b25zIGFyZSB1c2VkCisgICAgICB0byBtZWV0IHRoZSBiYXNpYyBzZWN1cml0eSBnb2FscyBsaWtl
IGNvbmZpZGVudGlhbGl0eSwgaW50ZWdyaXR5IGFuZAorICAgICAgc291cmNlIGF1dGhlbnRpY2l0
eSBmb3IgUlRQIGluIGdlbmVyYWwuICBUaGlzIHJlc3BvbnNpYmlsaXR5IGxheXMgb24KKyAgICAg
IGFueW9uZSB1c2luZyBSVFAgaW4gYW4gYXBwbGljYXRpb24uICBUaGV5IGNhbiBmaW5kIGd1aWRh
bmNlIG9uCisgICAgICBhdmFpbGFibGUgc2VjdXJpdHkgbWVjaGFuaXNtcyBhbmQgaW1wb3J0YW50
IGNvbnNpZGVyYXRpb25zIGluIE9wdGlvbnMKKyAgICAgIGZvciBTZWN1cmluZyBSVFAgU2Vzc2lv
bnMgW0ktRC5pZXRmLWF2dGNvcmUtcnRwLXNlY3VyaXR5LW9wdGlvbnNdLgorICAgICAgQXBwbGlj
YXRpb25zIFNIT1VMRCB1c2Ugb25lIG9yIG1vcmUgYXBwcm9wcmlhdGUgc3Ryb25nIHNlY3VyaXR5
CisgICAgICBtZWNoYW5pc21zLjwvdD4KKworICAgICAgPHQ+VGhpcyBwYXlsb2FkIGZvcm1hdCBh
bmQgdGhlIE9wdXMgZW5jb2RpbmcgZG8gbm90IGV4aGliaXQgYW55CisgICAgICBzaWduaWZpY2Fu
dCBub24tdW5pZm9ybWl0eSBpbiB0aGUgcmVjZWl2ZXItZW5kIGNvbXB1dGF0aW9uYWwgbG9hZCBh
bmQgdGh1cworICAgICAgYXJlIHVubGlrZWx5IHRvIHBvc2UgYSBkZW5pYWwtb2Ytc2VydmljZSB0
aHJlYXQgZHVlIHRvIHRoZSByZWNlaXB0IG9mCisgICAgICBwYXRob2xvZ2ljYWwgZGF0YWdyYW1z
LjwvdD4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0nQWNrbm93bGVkZ2Vt
ZW50cyc+CisgICAgPHQ+TWFueSBwZW9wbGUgaGF2ZSBtYWRlIHVzZWZ1bCBjb21tZW50cyBhbmQg
c3VnZ2VzdGlvbnMgY29udHJpYnV0aW5nIHRvIHRoaXMgZG9jdW1lbnQuIAorICAgICAgSW4gcGFy
dGljdWxhciwgd2Ugd291bGQgbGlrZSB0byB0aGFuaworICAgICAgVGluYSBsZSBHcmFuZCwgQ3Vs
bGVuIEplbm5pbmdzLCBKb25hdGhhbiBMZW5ub3gsIEdyZWdvcnkgTWF4d2VsbCwgQ29saW4gUGVy
a2lucywgSmFuIFNrb2dsdW5kLAorICAgICAgVGltb3RoeSBCLiBUZXJyaWJlcnJ5LCBNYXJ0aW4g
VGhvbXBzb24sIEp1c3RpbiBVYmVydGksIE1hZ251cyBXZXN0ZXJsdW5kLCBhbmQgTW8gWmFuYXR5
LjwvdD4KKyAgICA8L3NlY3Rpb24+CisgIDwvbWlkZGxlPgorCisgIDxiYWNrPgorICAgIDxyZWZl
cmVuY2VzIHRpdGxlPSJOb3JtYXRpdmUgUmVmZXJlbmNlcyI+CisgICAgICAmcmZjMjExOTsKKyAg
ICAgICZyZmMzMzg5OworICAgICAgJnJmYzM1NTA7CisgICAgICAmcmZjMzcxMTsKKyAgICAgICZy
ZmMzNTUxOworICAgICAgJnJmYzY4Mzg7CisgICAgICAmcmZjNDg1NTsKKyAgICAgICZyZmM0NTY2
OworICAgICAgJnJmYzMyNjQ7CisgICAgICAmcmZjMjMyNjsKKyAgICAgICZyZmM1NTc2OworICAg
ICAgJnJmYzY1NjI7CisgICAgICAmcmZjNjcxNjsKKyAgICA8L3JlZmVyZW5jZXM+CisKKyAgICA8
cmVmZXJlbmNlcyB0aXRsZT0iSW5mb3JtYXRpdmUgUmVmZXJlbmNlcyI+CisgICAgICAmcmZjMjk3
NDsKKyAgICAgICZyZmM0NTg1OworICAgICAgJnJmYzUxMjQ7CisgICAgICAmcmZjNTQwNTsKKyAg
ICAgICZyZmM3MjAyOworICAgICAgCisgICAgICA8cmVmZXJlbmNlIGFuY2hvcj0ncm1jYXQnIHRh
cmdldD0naHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy93Zy9ybWNhdC9kb2N1bWVudHMvJz4K
KyAgICAgICAgPGZyb250PgorICAgICAgICAgIDx0aXRsZT5ybWNhdCBkb2N1bWVudHM8L3RpdGxl
PgorICAgICAgICAgIDxhdXRob3IvPgorICAgICAgICAgIDxkYXRlLz4KKyAgICAgICAgICA8YWJz
dHJhY3Q+CisgICAgICAgICAgICA8dD48L3Q+CisgICAgICAgICAgPC9hYnN0cmFjdD48L2Zyb250
PgorICAgICAgPC9yZWZlcmVuY2U+CisKKworICAgIDwvcmVmZXJlbmNlcz4KKworICA8L2JhY2s+
Cis8L3JmYz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL29wdXNfaW5faXNvYm1mZi5jc3MgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9vcHVzX2lu
X2lzb2JtZmYuY3NzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJmZmU4ZjQ1YWU5OTU5YmJkOWM4NGY5NmVjODMyYTlh
MGFlNWUwZGMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9vcHVzX2luX2lzb2JtZmYuY3NzCkBAIC0w
LDAgKzEsNjAgQEAKKy8qIE5vcm1hbCBsaW5rcyAqLworLm5vcm1hbF9saW5rIGE6bGluaworewor
ICAgIGNvbG9yIDogeWVsbG93OworfQorLm5vcm1hbF9saW5rIGE6dmlzaXRlZAoreworICAgIGNv
bG9yIDogZ3JlZW47Cit9CisKKy8qIEJveGVzICovCisucHJlCit7CisJd2hpdGUtc3BhY2U6IHBy
ZTsgICAgICAgICAgIC8qIENTUyAyLjAgKi8KKwl3aGl0ZS1zcGFjZTogcHJlLXdyYXA7ICAgICAg
LyogQ1NTIDIuMSAqLworCXdoaXRlLXNwYWNlOiAtcHJlLXdyYXA7ICAgICAvKiBPcGVyYSA0LTYg
Ki8KKwl3aGl0ZS1zcGFjZTogLW8tcHJlLXdyYXA7ICAgLyogT3BlcmEgNyAqLworCXdoaXRlLXNw
YWNlOiAtbW96LXByZS13cmFwOyAvKiBNb3ppbGxhICovCisJd2hpdGUtc3BhY2U6IC1ocC1wcmUt
d3JhcDsgIC8qIEhQIFByaW50ZXJzICovCisJd29yZC13cmFwICA6IGJyZWFrLXdvcmQ7ICAgIC8q
IElFIDUrICovCit9CisKKy50aXRsZV9ib3gKK3sKKyAgICB3aWR0aCAgICAgICAgICAgIDogNDcw
cHg7CisgICAgaGVpZ2h0ICAgICAgICAgICA6IDcwcHg7CisgICAgbWFyZ2luICAgICAgICAgICA6
IDJweCA1MHB4IDJweCAycHg7CisgICAgcGFkZGluZyAgICAgICAgICA6IDEwcHg7CisgICAgYm9y
ZGVyICAgICAgICAgICA6IDFweCBzb2xpZCBibGFjazsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yIDog
IzY2NjY2NjsKKyAgICB3aGl0ZS1zcGFjZSAgICAgIDogcHJlOworICAgIGZsb2F0ICAgICAgICAg
ICAgOiBsZWZ0OworICAgIHRleHQtYWxpZ24gICAgICAgOiBjZW50ZXI7CisgICAgY29sb3IgICAg
ICAgICAgICA6ICNDMEMwQzA7CisgICAgZm9udC1zaXplICAgICAgICA6IDUwcHQ7CisgICAgZm9u
dC1zdHlsZSAgICAgICA6IGl0YWxpYzsKK30KKworLnN1YmluZGV4X2JveAoreworICAgIG1hcmdp
biAgICAgICAgICAgOiA1cHg7CisgICAgcGFkZGluZyAgICAgICAgICA6IDE0cHggMjJweDsKKyAg
ICBib3JkZXIgICAgICAgICAgIDogMXB4IHNvbGlkIGJsYWNrOworICAgIGJhY2tncm91bmQtY29s
b3IgOiAjNzc4ODc3OworICAgIGZsb2F0ICAgICAgICAgICAgOiBsZWZ0OworICAgIHRleHQtYWxp
Z24gICAgICAgOiBjZW50ZXI7CisgICAgY29sb3IgICAgICAgICAgICA6ICMxMTU1NTU7CisgICAg
Zm9udC1zaXplICAgICAgICA6IDMycHQ7Cit9CisKKy5mcmFtZV9ib3gKK3sKKyAgICBtYXJnaW4g
ICAgICAgICAgIDogMTBweDsKKyAgICBwYWRkaW5nICAgICAgICAgIDogMTBweDsKKyAgICBib3Jk
ZXIgICAgICAgICAgIDogMHB4OworICAgIGJhY2tncm91bmQtY29sb3IgOiAjMDg0MDQwOworICAg
IHRleHQtYWxpZ24gICAgICAgOiBsZWZ0OworICAgIGNvbG9yICAgICAgICAgICAgOiAjQzBDMEMw
OworICAgIGZvbnQtZmFtaWx5ICAgICAgOiBtb25vc3BhY2U7Cit9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9v
cHVzX2luX2lzb2JtZmYuaHRtbCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL29wdXNfaW5faXNvYm1mZi5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmExMTc1ZGJmZGRlMjVlODM3MmVkNmZjNGQwNDAxZmNhOTIyYzU5OWUKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2RvYy9vcHVzX2luX2lzb2JtZmYuaHRtbApAQCAtMCwwICsxLDY4NCBAQAorPCFET0NUWVBF
IEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEvL0VOIiAiaHR0cDovL3d3dy53My5v
cmcvVFIvaHRtbDQvc3RyaWN0LmR0ZCI+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPGxp
bmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0ib3B1c19pbl9pc29ibWZm
LmNzcyIvPgorICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9
InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCIgLz4KKyAgICAgICAgPHRpdGxlPkVuY2Fwc3VsYXRp
b24gb2YgT3B1cyBpbiBJU08gQmFzZSBNZWRpYSBGaWxlIEZvcm1hdDwvdGl0bGU+CisgICAgPC9o
ZWFkPgorICAgIDxib2R5IGJnY29sb3I9IjB4MzMzMzMzIiB0ZXh0PSIjNjBCMEMwIj4KKyAgICAg
ICAgPGI+PHU+RW5jYXBzdWxhdGlvbiBvZiBPcHVzIGluIElTTyBCYXNlIE1lZGlhIEZpbGUgRm9y
bWF0PC91PjwvYj48YnI+CisgICAgICAgIDxmb250IHNpemU9IjIiPmxhc3QgdXBkYXRlZDogQXBy
aWwgMjgsIDIwMTY8L2ZvbnQ+PGJyPgorICAgICAgICA8YnI+CisgICAgICAgIDxkaXYgY2xhc3M9
Im5vcm1hbF9saW5rIHByZSBmcmFtZV9ib3giPgorCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEVuY2Fwc3VsYXRpb24gb2YgT3B1cyBpbiBJU08gQmFzZSBNZWRpYSBGaWxlIEZvcm1h
dAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZlcnNpb24gMC42Ljgg
KGluY29tcGxldGUpCisKKworVGFibGUgb2YgQ29udGVudHMKKzxhIGhyZWY9IiMxIj4xPC9hPiBT
Y29wZQorPGEgaHJlZj0iIzIiPjI8L2E+IE5vcm1hdGl2ZSBSZWZlcmVuY2VzCis8YSBocmVmPSIj
MyI+MzwvYT4gVGVybXMgYW5kIERlZmluaXRpb25zCis8YSBocmVmPSIjNCI+NDwvYT4gRGVzaWdu
IFJ1bGVzIG9mIEVuY2Fwc3VsYXRpb24KKyAgICA8YSBocmVmPSIjNC4xIj40LjE8L2E+IEZpbGUg
VHlwZSBJbmRlbnRpZmljYXRpb24KKyAgICA8YSBocmVmPSIjNC4yIj40LjI8L2E+IE92ZXJ2aWV3
IG9mIFRyYWNrIFN0cnVjdHVyZQorICAgIDxhIGhyZWY9IiM0LjMiPjQuMzwvYT4gRGVmaW5pdGlv
bnMgb2YgT3B1cyBzYW1wbGUKKyAgICAgICAgPGEgaHJlZj0iIzQuMy4xIj40LjMuMTwvYT4gU2Ft
cGxlIGVudHJ5IGZvcm1hdAorICAgICAgICA8YSBocmVmPSIjNC4zLjIiPjQuMy4yPC9hPiBPcHVz
IFNwZWNpZmljIEJveAorICAgICAgICA8YSBocmVmPSIjNC4zLjMiPjQuMy4zPC9hPiBTYW1wbGUg
Zm9ybWF0CisgICAgICAgIDxhIGhyZWY9IiM0LjMuNCI+NC4zLjQ8L2E+IER1cmF0aW9uIG9mIE9w
dXMgc2FtcGxlCisgICAgICAgIDxhIGhyZWY9IiM0LjMuNSI+NC4zLjU8L2E+IFN1Yi1zYW1wbGUK
KyAgICAgICAgPGEgaHJlZj0iIzQuMy42Ij40LjMuNjwvYT4gUmFuZG9tIEFjY2VzcworICAgICAg
ICAgICAgPGEgaHJlZj0iIzQuMy42LjEiPjQuMy42LjE8L2E+IFJhbmRvbSBBY2Nlc3MgUG9pbnQK
KyAgICAgICAgICAgIDxhIGhyZWY9IiM0LjMuNi4yIj40LjMuNi4yPC9hPiBQcmUtcm9sbAorICAg
IDxhIGhyZWY9IiM0LjQiPjQuNDwvYT4gVHJpbW1pbmcgb2YgQWN0dWFsIER1cmF0aW9uCisgICAg
PGEgaHJlZj0iIzQuNSI+NC41PC9hPiBDaGFubmVsIExheW91dCAoaW5mb3JtYXRpdmUpCisgICAg
PGEgaHJlZj0iIzQuNiI+NC42PC9hPiBCYXNpYyBTdHJ1Y3R1cmUgKGluZm9ybWF0aXZlKQorICAg
ICAgICA8YSBocmVmPSIjNC42LjEiPjQuNi4yPC9hPiBJbml0aWFsIE1vdmllCisgICAgICAgIDxh
IGhyZWY9IiM0LjYuMiI+NC42LjM8L2E+IE1vdmllIEZyYWdtZW50cworICAgIDxhIGhyZWY9IiM0
LjciPjQuNzwvYT4gRXhhbXBsZSBvZiBFbmNhcHN1bGF0aW9uIChpbmZvcm1hdGl2ZSkKKzxhIGhy
ZWY9IiM1Ij41PC9hPiBBdXRob3IncyBBZGRyZXNzCisKKzxhIG5hbWU9IjEiPjwvYT4KKzEgU2Nv
cGUKKyAgICBUaGlzIHNwZWNpZmljYXRpb24gc3BlY2lmaWVzIHRoZSBmdW5kYW1lbnRhbCB3YXkg
b2YgdGhlIGVuY2Fwc3VsYXRpb24gb2YgT3B1cyBjb2RlZCBiaXRzdHJlYW1zIGluIElTTyBCYXNl
IE1lZGlhCisgICAgZmlsZSBmb3JtYXQgYW5kIGl0cyBkZXJpdmF0aXZlcy4gVGhlIGVuY2Fwc3Vs
YXRpb24gb2YgT3B1cyBjb2RlZCBiaXRzdHJlYW1zIGluIFF1aWNrVGltZSBmaWxlIGZvcm1hdCBp
cyBvdXRzaWRlCisgICAgdGhlIHNjb3BlIG9mIHRoaXMgc3BlY2lmaWNhdGlvbi4KKworPGEgbmFt
ZT0iMiI+PC9hPgorMiBOb3JtYXRpdmUgUmVmZXJlbmNlcworICAgIFsxXSBJU08vSUVDIDE0NDk2
LTEyOjIwMTUgQ29ycmVjdGVkIHZlcnNpb24KKyAgICAgICAgSW5mb3JtYXRpb24gdGVjaG5vbG9n
eSDigJQgQ29kaW5nIG9mIGF1ZGlvLXZpc3VhbCBvYmplY3RzIOKAlCBQYXJ0IDEyOiBJU08gYmFz
ZSBtZWRpYSBmaWxlIGZvcm1hdAorCisgICAgWzJdIFJGQyA2NzE2CisgICAgICAgIERlZmluaXRp
b24gb2YgdGhlIE9wdXMgQXVkaW8gQ29kZWMKKworICAgIFszXSBkcmFmdC1pZXRmLWNvZGVjLW9n
Z29wdXMtMDYKKyAgICAgICAgT2dnIEVuY2Fwc3VsYXRpb24gZm9yIHRoZSBPcHVzIEF1ZGlvIENv
ZGVjCisKKzxhIG5hbWU9IjMiPjwvYT4KKzMgVGVybXMgYW5kIERlZmluaXRpb25zCisgICAgMy4x
IGFjdGl2ZSB0cmFjaworICAgICAgICBlbmFibGVkIHRyYWNrIGZyb20gdGhlIG5vbi1hbHRlcm5h
dGUgZ3JvdXAgb3Igc2VsZWN0ZWQgdHJhY2sgZnJvbSBhbHRlcm5hdGUgZ3JvdXAKKworICAgIDMu
MiBhY3R1YWwgZHVyYXRpb24KKyAgICAgICAgZHVyYXRpb24gY29uc3RydWN0ZWQgZnJvbSB2YWxp
ZCBzYW1wbGVzCisKKyAgICAzLjMgZWRpdAorICAgICAgICBlbnRyeSBpbiB0aGUgRWRpdCBMaXN0
IEJveAorCisgICAgMy40IHBhZGRlZCBzYW1wbGVzCisgICAgICAgIFBDTSBzYW1wbGVzIGFmdGVy
IGRlY29kaW5nIE9wdXMgc2FtcGxlKHMpIHdoaWNoIGFyZSBub3QgdmFsaWQgc2FtcGxlcworICAg
ICAgICBBbiBPcHVzIGJpdHN0cmVhbSBhbHdheXMgY29udGFpbnMgdGhlbSBwYXJ0aWFsbHkgYXQg
dGhlIGJlZ2lubmluZyBhbmQgbWF5IGNvbnRhaW4gdGhlbSBpbiBwYXJ0IGF0IHRoZSBlbmQsIGFz
CisgICAgICAgIGxvbmcgYXMgbm90IHBoeXNpY2FsbHkgcmVtb3ZlZCB5ZXQgYXQgdGhlIGJlZ2lu
bmluZyBhbmQvb3IgdGhlIGVuZC4KKworICAgIDMuNSBwcmltaW5nIHNhbXBsZXMKKyAgICAgICAg
cGFkZGVkIHNhbXBsZXMgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgT3B1cyBiaXRzdHJlYW0KKwor
ICAgIDMuNiBzYW1wbGUtYWNjdXJhdGUKKyAgICAgICAgZm9yIGFueSBQQ00gc2FtcGxlLCBhIHRp
bWVzdGFtcCBleGFjdGx5IG1hdGNoaW5nIGl0cyBzYW1wbGluZyB0aW1lc3RhbXAgaXMgcHJlc2Vu
dCBpbiB0aGUgbWVkaWEgdGltZWxpbmUuCisKKyAgICAzLjcgdmFsaWQgc2FtcGxlcworICAgICAg
ICBQQ00gc2FtcGxlcyBhZnRlciBkZWNvZGluZyBPcHVzIHNhbXBsZShzKSBjb3JyZXNwb25kaW5n
IHRvIGlucHV0IFBDTSBzYW1wbGVzCisKKzxhIG5hbWU9IjQiPjwvYT4KKzQgRGVzaWduIFJ1bGVz
IG9mIEVuY2Fwc3VsYXRpb24KKyAgICA0LjEgRmlsZSBUeXBlIEluZGVudGlmaWNhdGlvbjxhIG5h
bWU9IjQuMSI+PC9hPgorICAgICAgICBUaGlzIHNwZWNpZmljYXRpb24gZG9lcyBub3QgZGVmaW5l
IGFueSBicmFuZCB0byBkZWNsYXJlIGZpbGVzIGFyZSBjb25mb3JtYW50IHRvIHRoaXMgc3BlY2lm
aWNhdGlvbi4gSG93ZXZlciwKKyAgICAgICAgZmlsZXMgY29uZm9ybWFudCB0byB0aGlzIHNwZWNp
ZmljYXRpb24gc2hhbGwgY29udGFpbiBhdCBsZWFzdCBvbmUgYnJhbmQsIHdoaWNoIHN1cHBvcnRz
IHRoZSByZXF1aXJlbWVudHMgYW5kIHRoZQorICAgICAgICByZXF1aXJlbWVudHMgZGVzY3JpYmVk
IGluIHRoaXMgY2xhdXNlIHdpdGhvdXQgY29udHJhZGljdGlvbiwgaW4gdGhlIGNvbXBhdGlibGUg
YnJhbmRzIGxpc3Qgb2YgdGhlIEZpbGUgVHlwZSBCb3guCisgICAgICAgIEFzIGFuIGV4YW1wbGUs
IHRoZSBtaW5pbWFsIHN1cHBvcnQgb2YgdGhlIGVuY2Fwc3VsYXRpb24gb2YgT3B1cyBiaXRzdHJl
YW1zIGluIElTTyBCYXNlIE1lZGlhIGZpbGUgZm9ybWF0IHJlcXVpcmVzCisgICAgICAgIHRoZSAn
aXNvMicgYnJhbmQgaW4gdGhlIGNvbXBhdGlibGUgYnJhbmRzIGxpc3Qgc2luY2Ugc3VwcG9ydCBv
ZiByb2xsIGdyb3VwcyBpcyByZXF1aXJlZC4KKzxhIG5hbWU9IjQuMiI+PC9hPgorICAgIDQuMiBP
dmVydmlldyBvZiBUcmFjayBTdHJ1Y3R1cmUKKyAgICAgICAgVGhpcyBjbGF1c2Ugc3VtbWFyaXpl
cyByZXF1aXJlbWVudHMgb2YgdGhlIGVuY2Fwc3VsYXRpb24gb2YgT3B1cyBjb2RlZCBiaXRzdHJl
YW0gYXMgbWVkaWEgZGF0YSBpbiBhdWRpbyB0cmFja3MKKyAgICAgICAgaW4gZmlsZSBmb3JtYXRz
IGNvbXBsaWFudCB3aXRoIHRoZSBJU08gQmFzZSBNZWRpYSBGaWxlIEZvcm1hdC4gVGhlIGRldGFp
bHMgYXJlIGRlc2NyaWJlZCBpbiBjbGF1c2VzIGFmdGVyIHRoaXMKKyAgICAgICAgY2xhdXNlLgor
ICAgICAgICAgICAgKyBUaGUgaGFuZGxlcl90eXBlIGZpZWxkIGluIHRoZSBIYW5kbGVyIFJlZmVy
ZW5jZSBCb3ggc2hhbGwgYmUgc2V0IHRvICdzb3VuJy4KKyAgICAgICAgICAgICsgVGhlIE1lZGlh
IEluZm9ybWF0aW9uIEJveCBzaGFsbCBjb250YWluIHRoZSBTb3VuZCBNZWRpYSBIZWFkZXIgQm94
LgorICAgICAgICAgICAgKyBUaGUgY29kaW5nbmFtZSBvZiB0aGUgc2FtcGxlIGVudHJ5IGlzICdP
cHVzJy4KKyAgICAgICAgICAgICAgICBUaGlzIHNwZWNpZmljYXRpb24gZG9lcyBub3QgZGVmaW5l
IGFueSBlbmNhcHN1bGF0aW9uIHVzaW5nIE1QNEF1ZGlvU2FtcGxlRW50cnkgd2l0aCBvYmplY3RU
eXBlSW5kaWNhdGlvbgorICAgICAgICAgICAgICAgIHNwZWNpZmllZCBieSB0aGUgTVBFRy00IFJl
Z2lzdHJhdGlvbiBBdXRob3JpdHkgKGh0dHA6Ly93d3cubXA0cmEub3JnLykuCisgICAgICAgICAg
ICAgICAgU2VlIDQuMy4xIFNhbXBsZSBlbnRyeSBmb3JtYXQgdG8gZ2V0IHRoZSBkZXRhaWxzIGFi
b3V0IHRoZSBzYW1wbGUgZW50cnkuCisgICAgICAgICAgICArIFRoZSAnZE9wcycgYm94IGlzIGFk
ZGVkIHRvIHRoZSBzYW1wbGUgZW50cnkgdG8gY29udmV5IGluaXRpYWxpemluZyBpbmZvcm1hdGlv
biBmb3IgdGhlIGRlY29kZXIuCisgICAgICAgICAgICAgICAgU2VlIDQuMy4yIE9wdXMgU3BlY2lm
aWMgQm94IHRvIGdldCB0aGUgZGV0YWlscy4KKyAgICAgICAgICAgICsgQW4gT3B1cyBzYW1wbGUg
aXMgZXhhY3RseSBvbmUgT3B1cyBwYWNrZXQgZm9yIGVhY2ggb2YgZGlmZmVyZW50IE9wdXMgYml0
c3RyZWFtcy4KKyAgICAgICAgICAgICAgICBTZWUgNC4zLjMgU2FtcGxlIGZvcm1hdCB0byBnZXQg
dGhlIGRldGFpbHMuCisgICAgICAgICAgICArIEV2ZXJ5IE9wdXMgc2FtcGxlIGlzIGEgc3luYyBz
YW1wbGUgYnV0IHJlcXVpcmVzIHByZS1yb2xsIGZvciBldmVyeSByYW5kb20gYWNjZXNzIHRvIGdl
dCBjb3JyZWN0IG91dHB1dC4KKyAgICAgICAgICAgICAgICBTZWUgNC4zLjYgUmFuZG9tIEFjY2Vz
cyB0byBnZXQgdGhlIGRldGFpbHMuCis8YSBuYW1lPSI0LjMiPjwvYT4KKyAgICA0LjMgRGVmaW5p
dGlvbnMgb2YgT3B1cyBzYW1wbGUKKyAgICAgICAgNC4zLjEgU2FtcGxlIGVudHJ5IGZvcm1hdDxh
IG5hbWU9IjQuMy4xIj48L2E+CisgICAgICAgICAgICBGb3IgYW55IHRyYWNrIGNvbnRhaW5pbmcg
T3B1cyBiaXRzdHJlYW1zLCBhdCBsZWFzdCBvbmUgc2FtcGxlIGVudHJ5IGRlc2NyaWJpbmcgY29y
cmVzcG9uZGluZyBPcHVzIGJpdHN0cmVhbQorICAgICAgICAgICAgc2hhbGwgYmUgcHJlc2VudCBp
bnNpZGUgdGhlIFNhbXBsZSBUYWJsZSBCb3guIFRoaXMgdmVyc2lvbiBvZiB0aGUgc3BlY2lmaWNh
dGlvbiBkZWZpbmVzIG9ubHkgb25lIHNhbXBsZQorICAgICAgICAgICAgZW50cnkgZm9ybWF0IG5h
bWVkIE9wdXNTYW1wbGVFbnRyeSB3aG9zZSBjb2RpbmduYW1lIGlzICdPcHVzJy4gVGhpcyBzYW1w
bGUgZW50cnkgaW5jbHVkZXMgZXhhY3RseSBvbmUgT3B1cworICAgICAgICAgICAgU3BlY2lmaWMg
Qm94IGRlZmluZWQgaW4gNC4zLjIgYXMgYSBtYW5kYXRvcnkgYm94IGFuZCBpbmRpY2F0ZXMgdGhh
dCBPcHVzIHNhbXBsZXMgZGVzY3JpYmVkIGJ5IHRoaXMgc2FtcGxlCisgICAgICAgICAgICBlbnRy
eSBhcmUgc3RvcmVkIGJ5IHRoZSBzYW1wbGUgZm9ybWF0IGRlc2NyaWJlZCBpbiA0LjMuMy4KKwor
ICAgICAgICAgICAgVGhlIHN5bnRheCBhbmQgc2VtYW50aWNzIG9mIHRoZSBPcHVzU2FtcGxlRW50
cnkgaXMgc2hvd24gYXMgZm9sbG93cy4KKworICAgICAgICAgICAgY2xhc3MgT3B1c1NhbXBsZUVu
dHJ5KCkgZXh0ZW5kcyBBdWRpb1NhbXBsZUVudHJ5ICgnT3B1cycpeworICAgICAgICAgICAgICAg
IE9wdXNTcGVjaWZpY0JveCgpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICArIGNoYW5u
ZWxjb3VudDoKKyAgICAgICAgICAgICAgICBUaGUgY2hhbm5lbGNvdW50IGZpZWxkIHNoYWxsIGJl
IHNldCB0byB0aGUgc3VtIG9mIHRoZSB0b3RhbCBudW1iZXIgb2YgT3B1cyBiaXRzdHJlYW1zIGFu
ZCB0aGUgbnVtYmVyCisgICAgICAgICAgICAgICAgb2YgT3B1cyBiaXRzdHJlYW1zIHByb2R1Y2lu
ZyB0d28gY2hhbm5lbHMuIFRoaXMgdmFsdWUgaXMgaW5kZW50aWNhbCB3aXRoIChNK04pLCB3aGVy
ZSBNIGlzIHRoZSB2YWx1ZSBvZgorICAgICAgICAgICAgICAgIHRoZSAqQ291cGxlZCBTdHJlYW0g
Q291bnQqIGZpZWxkIGFuZCBOIGlzIHRoZSB2YWx1ZSBvZiB0aGUgKlN0cmVhbSBDb3VudCogZmll
bGQgaW4gdGhlICpDaGFubmVsIE1hcHBpbmcKKyAgICAgICAgICAgICAgICBUYWJsZSogaW4gdGhl
IGlkZW50aWZpY2F0aW9uIGhlYWRlciBkZWZpbmVkIGluIE9nZyBPcHVzIFszXS4KKyAgICAgICAg
ICAgICsgc2FtcGxlc2l6ZToKKyAgICAgICAgICAgICAgICBUaGUgc2FtcGxlc2l6ZSBmaWVsZCBz
aGFsbCBiZSBzZXQgdG8gMTYuCisgICAgICAgICAgICArIHNhbXBsZXJhdGU6CisgICAgICAgICAg
ICAgICAgVGhlIHNhbXBsZXJhdGUgZmllbGQgc2hhbGwgYmUgc2V0IHRvIDQ4MDAwJmx0Jmx0MTYu
CisgICAgICAgICAgICArIE9wdXNTcGVjaWZpY0JveAorICAgICAgICAgICAgICAgIFRoaXMgYm94
IGNvbnRhaW5zIGluaXRpYWxpemluZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGRlY29kZXIgYXMgZGVm
aW5lZCBpbiA0LjMuMi4KKworICAgICAgICA0LjMuMiBPcHVzIFNwZWNpZmljIEJveDxhIG5hbWU9
IjQuMy4yIj48L2E+CisgICAgICAgICAgICBFeGFjdGx5IG9uZSBPcHVzIFNwZWNpZmljIEJveCBz
aGFsbCBiZSBwcmVzZW50IGluIGVhY2ggT3B1c1NhbXBsZUVudHJ5LgorICAgICAgICAgICAgVGhl
IE9wdXMgU3BlY2lmaWMgQm94IGNvbnRhaW5zIHRoZSBWZXJzaW9uIGZpZWxkIGFuZCB0aGlzIHNw
ZWNpZmljYXRpb24gZGVmaW5lcyB2ZXJzaW9uIDAgb2YgdGhpcyBib3guCisgICAgICAgICAgICBJ
ZiBpbmNvbXBhdGlibGUgY2hhbmdlcyBvY2N1cmVkIGluIHRoZSBmaWVsZHMgYWZ0ZXIgdGhlIFZl
cnNpb24gZmllbGQgd2l0aGluIHRoZSBPcHVzU3BlY2lmaWNCb3ggaW4gdGhlCisgICAgICAgICAg
ICBmdXR1cmUgdmVyc2lvbnMgb2YgdGhpcyBzcGVjaWZpY2F0aW9uLCBhbm90aGVyIHZlcnNpb24g
d2lsbCBiZSBkZWZpbmVkLgorICAgICAgICAgICAgVGhpcyBib3ggcmVmZXJzIHRvIE9nZyBPcHVz
IFszXSBhdCBtYW55IHBhcnRzIGJ1dCBhbGwgdGhlIGRhdGEgYXJlIHN0b3JlZCBhcyBiaWctZW5k
aWFuIGZvcm1hdC4KKworICAgICAgICAgICAgVGhlIHN5bnRheCBhbmQgc2VtYW50aWNzIG9mIHRo
ZSBPcHVzIFNwZWNpZmljIEJveCBpcyBzaG93biBhcyBmb2xsb3dzLgorCisgICAgICAgICAgICBj
bGFzcyBDaGFubmVsTWFwcGluZ1RhYmxlICh1bnNpZ25lZCBpbnQoOCkgT3V0cHV0Q2hhbm5lbENv
dW50KXsKKyAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQoOCkgU3RyZWFtQ291bnQ7CisgICAg
ICAgICAgICAgICAgdW5zaWduZWQgaW50KDgpIENvdXBsZWRDb3VudDsKKyAgICAgICAgICAgICAg
ICB1bnNpZ25lZCBpbnQoOCAqIE91dHB1dENoYW5uZWxDb3VudCkgQ2hhbm5lbE1hcHBpbmc7Cisg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGFsaWduZWQoOCkgY2xhc3MgT3B1c1NwZWNpZmlj
Qm94IGV4dGVuZHMgQm94KCdkT3BzJyl7CisgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50KDgp
IFZlcnNpb247CisgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50KDgpIE91dHB1dENoYW5uZWxD
b3VudDsKKyAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQoMTYpIFByZVNraXA7CisgICAgICAg
ICAgICAgICAgdW5zaWduZWQgaW50KDMyKSBJbnB1dFNhbXBsZVJhdGU7CisgICAgICAgICAgICAg
ICAgc2lnbmVkIGludCgxNikgT3V0cHV0R2FpbjsKKyAgICAgICAgICAgICAgICB1bnNpZ25lZCBp
bnQoOCkgQ2hhbm5lbE1hcHBpbmdGYW1pbHk7CisgICAgICAgICAgICAgICAgaWYgKENoYW5uZWxN
YXBwaW5nRmFtaWx5ICE9IDApIHsKKyAgICAgICAgICAgICAgICAgICAgQ2hhbm5lbE1hcHBpbmdU
YWJsZShPdXRwdXRDaGFubmVsQ291bnQpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgKyBWZXJzaW9uOgorICAgICAgICAgICAgICAgIFRoZSBWZXJzaW9u
IGZpZWxkIHNoYWxsIGJlIHNldCB0byAwLgorICAgICAgICAgICAgICAgIEluIHRoZSBmdXR1cmUg
dmVyc2lvbnMgb2YgdGhpcyBzcGVjaWZpY2F0aW9uLCB0aGlzIGZpZWxkIG1heSBiZSBzZXQgdG8g
b3RoZXIgdmFsdWVzLiBBbmQgd2l0aG91dCBzdXBwb3J0CisgICAgICAgICAgICAgICAgb2YgdGhv
c2UgdmFsdWVzLCB0aGUgcmVhZGVyIHNoYWxsIG5vdCByZWFkIHRoZSBmaWVsZHMgYWZ0ZXIgdGhp
cyB3aXRoaW4gdGhlIE9wdXNTcGVjaWZpY0JveC4KKyAgICAgICAgICAgICsgT3V0cHV0Q2hhbm5l
bENvdW50OgorICAgICAgICAgICAgICAgIFRoZSBPdXRwdXRDaGFubmVsQ291bnQgZmllbGQgc2hh
bGwgYmUgc2V0IHRvIHRoZSBzYW1lIHZhbHVlIGFzIHRoZSAqT3V0cHV0IENoYW5uZWwgQ291bnQq
IGZpZWxkIGluIHRoZQorICAgICAgICAgICAgICAgIGlkZW50aWZpY2F0aW9uIGhlYWRlciBkZWZp
bmVkIGluIE9nZyBPcHVzIFszXS4KKyAgICAgICAgICAgICsgUHJlU2tpcDoKKyAgICAgICAgICAg
ICAgICBUaGUgUHJlU2tpcCBmaWVsZCBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiB0aGUgcHJpbWlu
ZyBzYW1wbGVzLCB0aGF0IGlzLCB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgYXQgNDgwMDAgSHoKKyAg
ICAgICAgICAgICAgICB0byBkaXNjYXJkIGZyb20gdGhlIGRlY29kZXIgb3V0cHV0IHdoZW4gc3Rh
cnRpbmcgcGxheWJhY2suIFRoZSB2YWx1ZSBvZiB0aGUgUHJlU2tpcCBmaWVsZCBzaGFsbCBiZSBh
dCBsZWFzdAorICAgICAgICAgICAgICAgIDgwIG1pbGxpc2Vjb25kcycgd29ydGggb2YgUENNIHNh
bXBsZXMgZXZlbiB3aGVuIHJlbW92aW5nIGFueSBudW1iZXIgb2YgT3B1cyBzYW1wbGVzIHdoaWNo
IG1heSBvciBtYXkgbm90CisgICAgICAgICAgICAgICAgY29udGFpbiB0aGUgcHJpbWluZyBzYW1w
bGVzLiBUaGUgUHJlU2tpcCBmaWVsZCBpcyBub3QgdXNlZCBmb3IgZGlzY2FyZGluZyB0aGUgcHJp
bWluZyBzYW1wbGVzIGF0IHRoZSB3aG9sZQorICAgICAgICAgICAgICAgIHBsYXliYWNrIGF0IGFs
bCBzaW5jZSBpdCBpcyBpbmZvcm1hdGl2ZSBvbmx5LCBhbmQgdGhhdCB0YXNrIGZhbGxzIG9uIHRo
ZSBFZGl0IExpc3QgQm94LgorICAgICAgICAgICAgKyBJbnB1dFNhbXBsZVJhdGU6CisgICAgICAg
ICAgICAgICAgVGhlIElucHV0U2FtcGxlUmF0ZSBmaWVsZCBzaGFsbCBiZSBzZXQgdG8gdGhlIHNh
bWUgdmFsdWUgYXMgdGhlICpJbnB1dCBTYW1wbGUgUmF0ZSogZmllbGQgaW4gdGhlCisgICAgICAg
ICAgICAgICAgaWRlbnRpZmljYXRpb24gaGVhZGVyIGRlZmluZWQgaW4gT2dnIE9wdXMgWzNdLgor
ICAgICAgICAgICAgKyBPdXRwdXRHYWluOgorICAgICAgICAgICAgICAgIFRoZSBPdXRwdXRHYWlu
IGZpZWxkIHNoYWxsIGJlIHNldCB0byB0aGUgc2FtZSB2YWx1ZSBhcyB0aGUgKk91dHB1dCBHYWlu
KiBmaWVsZCBpbiB0aGUgaWRlbnRpZmljYXRpb24KKyAgICAgICAgICAgICAgICBoZWFkZXIgZGVm
aW5lIGluIE9nZyBPcHVzIFszXS4gTm90ZSB0aGF0IHRoZSB2YWx1ZSBpcyBzdG9yZWQgYXMgOC44
IGZpeGVkLXBvaW50LgorICAgICAgICAgICAgKyBDaGFubmVsTWFwcGluZ0ZhbWlseToKKyAgICAg
ICAgICAgICAgICBUaGUgQ2hhbm5lbE1hcHBpbmdGYW1pbHkgZmllbGQgc2hhbGwgYmUgc2V0IHRv
IHRoZSBzYW1lIHZhbHVlIGFzIHRoZSAqQ2hhbm5lbCBNYXBwaW5nIEZhbWlseSogZmllbGQgaW4K
KyAgICAgICAgICAgICAgICB0aGUgaWRlbnRpZmljYXRpb24gaGVhZGVyIGRlZmluZWQgaW4gT2dn
IE9wdXMgWzNdLgorICAgICAgICAgICAgKyBTdHJlYW1Db3VudDoKKyAgICAgICAgICAgICAgICBU
aGUgU3RyZWFtQ291bnQgZmllbGQgc2hhbGwgYmUgc2V0IHRvIHRoZSBzYW1lIHZhbHVlIGFzIHRo
ZSAqU3RyZWFtIENvdW50KiBmaWVsZCBpbiB0aGUgaWRlbnRpZmljYXRpb24KKyAgICAgICAgICAg
ICAgICBoZWFkZXIgZGVmaW5lZCBpbiBPZ2cgT3B1cyBbM10uCisgICAgICAgICAgICArIENvdXBs
ZWRDb3VudDoKKyAgICAgICAgICAgICAgICBUaGUgQ291cGxlZENvdW50IGZpZWxkIHNoYWxsIGJl
IHNldCB0byB0aGUgc2FtZSB2YWx1ZSBhcyB0aGUgKkNvdXBsZWQgQ291bnQqIGZpZWxkIGluIHRo
ZSBpZGVudGlmaWNhdGlvbgorICAgICAgICAgICAgICAgIGhlYWRlciBkZWZpbmVkIGluIE9nZyBP
cHVzIFszXS4KKyAgICAgICAgICAgICsgQ2hhbm5lbE1hcHBpbmc6CisgICAgICAgICAgICAgICAg
VGhlIENoYW5uZWxNYXBwaW5nIGZpZWxkIHNoYWxsIGJlIHNldCB0byB0aGUgc2FtZSBvY3RldCBz
dHJpbmcgYXMgKkNoYW5uZWwgTWFwcGluZyogZmllbGQgaW4gdGhlIGlkZW50aS0KKyAgICAgICAg
ICAgICAgICBmaWNhdGlvbiBoZWFkZXIgZGVmaW5lZCBpbiBPZ2cgT3B1cyBbM10uCisKKyAgICAg
ICAgNC4zLjMgU2FtcGxlIGZvcm1hdDxhIG5hbWU9IjQuMy4zIj48L2E+CisgICAgICAgICAgICBB
biBPcHVzIHNhbXBsZSBpcyBleGFjdGx5IG9uZSBPcHVzIHBhY2tldCBmb3IgZWFjaCBvZiBkaWZm
ZXJlbnQgT3B1cyBiaXRzdHJlYW1zLiBEdWUgdG8gc3VwcG9ydCBtb3JlIHRoYW4KKyAgICAgICAg
ICAgIHR3byBjaGFubmVscywgYW4gT3B1cyBzYW1wbGUgY2FuIGNvbnRhaW4gZnJhbWVzIGZyb20g
bXVsdGlwbGUgT3B1cyBiaXRzdHJlYW1zIGJ1dCBhbGwgT3B1cyBwYWNrZXRzIHNoYWxsCisgICAg
ICAgICAgICBzaGFyZSB3aXRoIHRoZSB0b3RhbCBvZiBmcmFtZSBzaXplcyBpbiBhIHNpbmdsZSBP
cHVzIHNhbXBsZS4gVGhlIHdheSBvZiBob3cgdG8gcGFjayBhbiBPcHVzIHBhY2tldCBmcm9tCisg
ICAgICAgICAgICBlYWNoIG9mIE9wdXMgYml0c3RyZWFtcyBpbnRvIGEgc2luZ2xlIE9wdXMgc2Ft
cGxlIGZvbGxvd3MgQXBwZW5kaXggQi4gaW4gUkZDIDY3MTYgWzJdLgorICAgICAgICAgICAgVGhl
IGVuZGlhbm5lc3MgaGFzIG5vdGhpbmcgdG8gZG8gd2l0aCBhbnkgT3B1cyBzYW1wbGUgc2luY2Ug
ZXZlcnkgT3B1cyBwYWNrZXQgaXMgcHJvY2Vzc2VkIGJ5dGUtYnktYnl0ZS4KKyAgICAgICAgICAg
IEluIHRoaXMgc3BlY2lmaWNhdGlvbiwgJ3NhbXBsZScgbWVhbnMgJ09wdXMgc2FtcGxlJyBleGNl
cHQgZm9yICdwYWRkZWQgc2FtcGxlcycsICdwcmltaW5nIHNhbXBsZXMnLCAndmFsaWQKKyAgICAg
ICAgICAgIHNhbXBsZScgYW5kICdzYW1wbGUtYWNjdXJhdGUnLCBpLmUuICdzYW1wbGUnIGlzICdz
YW1wbGUnIGluIHRoZSB0ZXJtIGRlZmluZWQgaW4gSVNPL0lFQyAxNDQ5Ni0xMiBbMV0uCisKKyAg
ICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgICAgICB8
IE9wdXMgcGFja2V0IDAgKHNlbGYtZGVsaW1pdGluZyBmcmFtaW5nKSB8IE9wdXMgcGFja2V0IDEg
KHVuZGVsaW1pdGVkIGZyYW1pbmcpIHwKKyAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSsKKyAgICAgICAgICAgICAgICB8PC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g
dGhlIHNpemUgb2YgT3B1cyBzYW1wbGUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPnwKKworICAg
ICAgICAgICAgICAgICAgICBGaWd1cmUgMSAtIEV4YW1wbGUgc3RydWN0dXJlIG9mIGFuIE9wdXMg
c2FtcGxlIGNvbnRhaW5pbmcgdHdvIE9wdXMgYml0c3RyZWFtcworCisgICAgICAgIDQuMy40IER1
cmF0aW9uIG9mIE9wdXMgc2FtcGxlPGEgbmFtZT0iNC4zLjQiPjwvYT4KKyAgICAgICAgICAgIFRo
ZSBkdXJhdGlvbiBvZiBPcHVzIHNhbXBsZSBpcyBnaXZlbiBieSBtdWx0aXBseWluZyB0aGUgdG90
YWwgb2YgZnJhbWUgc2l6ZXMgZm9yIGEgc2luZ2xlIE9wdXMgYml0c3RyZWFtCisgICAgICAgICAg
ICBleHByZXNzZWQgaW4gc2Vjb25kcyBieSB0aGUgdmFsdWUgb2YgdGhlIHRpbWVzY2FsZSBmaWVs
ZCBpbiB0aGUgTWVkaWEgSGVhZGVyIEJveC4KKyAgICAgICAgICAgIExldCdzIHNheSBhbiBPcHVz
IHNhbXBsZSBjb25zaXN0cyBvZiB0d28gT3B1cyBiaXRzdHJlYW1zLCB3aGVyZSB0aGUgZnJhbWUg
c2l6ZSBvZiBvbmUgYml0c3RyZWFtIGlzIDQwIG1pbGxpLQorICAgICAgICAgICAgc2Vjb25kcyBh
bmQgdGhlIGZyYW1lIHNpemUgb2YgYW5vdGhlciBpcyA2MCBtaWxsaXNlY29uZHMsIGFuZCB0aGUg
dGltZXNjYWxlIGZpZWxkIGluIHRoZSBNZWRpYSBIZWFkZXIgQm94CisgICAgICAgICAgICBpcyBz
ZXQgdG8gNDgwMDAsIHRoZW4gdGhlIGR1cmF0aW9uIG9mIHRoYXQgT3B1cyBzYW1wbGUgc2hhbGwg
YmUgMTIwIG1pbGxpc2Vjb25kcyBzaW5jZSB0aHJlZSA0MCBtaWxsaXNlY29uZAorICAgICAgICAg
ICAgZnJhbWUgYW5kIHR3byA2MCBtaWxsaXNlY29uZCBmcmFtZXMgc2hhbGwgYmUgY29udGFpbmVk
IGJlY2F1c2Ugb2YgdGhlIG1heGltdW0gZHVyYXRpb24gb2YgT3B1cyBwYWNrZXQsIDEyMAorICAg
ICAgICAgICAgbWlsbGlzZWNvbmRzLCBhbmQgNTc2MCBpbiB0aGUgdGltZXNjYWxlIGluZGljYXRl
ZCBpbiB0aGUgTWVkaWEgSGVhZGVyIEJveC4KKworICAgICAgICAgICAgVG8gaW5kaWNhdGUgdGhl
IHZhbGlkIHNhbXBsZXMgZXhjbHVkaW5nIHRoZSBwYWRkZWQgc2FtcGxlcyBhdCB0aGUgZW5kIG9m
IE9wdXMgYml0c3RyZWFtLCB0aGUgZHVyYXRpb24gb2YKKyAgICAgICAgICAgIHRoZSBsYXN0IE9w
dXMgc2FtcGxlIG9mIGFuIE9wdXMgYml0c3RyZWFtIGlzIGdpdmVuIGJ5IG11bHRpcGx5aW5nIHRo
ZSBudW1iZXIgb2YgdGhlIHZhbGlkIHNhbXBsZXMgYnkgdGhlCisgICAgICAgICAgICB2YWx1ZSBw
cm9kdWNlZCBieSBkaXZpZGluZyB0aGUgdmFsdWUgb2YgdGhlIHRpbWVzY2FsZSBmaWVsZCBpbiB0
aGUgTWVkaWEgSGVhZGVyIEJveCBieSA0ODAwMC4KKworICAgICAgICA0LjMuNSBTdWItc2FtcGxl
PGEgbmFtZT0iNC4zLjUiPjwvYT4KKyAgICAgICAgICAgIFRoZSBzdHJ1Y3R1cmUgb2YgdGhlIGxh
c3QgT3B1cyBwYWNrZXQgaW4gYW4gT3B1cyBzYW1wbGUgaXMgZGlmZmVyZW50IGZyb20gdGhlIG90
aGVycyBpbiB0aGUgc2FtZSBPcHVzIHNhbXBsZSwKKyAgICAgICAgICAgIGFuZCB0aGUgb3RoZXJz
IGFyZSBpbnZhbGlkIE9wdXMgcGFja2V0cyBhcyBhbiBPcHVzIHNhbXBsZSBiZWNhdXNlIG9mIHNl
bGYtZGVsaW1pdGluZyBmcmFtaW5nLiBUbyBhdm9pZAorICAgICAgICAgICAgY29tcGxleGl0aWVz
LCBzdWItc2FtcGxlIGlzIG5vdCBkZWZpbmVkIGZvciBPcHVzIHNhbXBsZSBpbiB0aGlzIHNwZWNp
ZmljYXRpb24uCisKKyAgICAgICAgNC4zLjYgUmFuZG9tIEFjY2VzczxhIG5hbWU9IjQuMy42Ij48
L2E+CisgICAgICAgICAgICBUaGlzIHN1YmNsYXVzZSBkZXNjcmliZXMgdGhlIG5hdHVyZSBvZiB0
aGUgcmFuZG9tIGFjY2VzcyBvZiBPcHVzIHNhbXBsZS4KKworICAgICAgICAgICAgNC4zLjYuMSBS
YW5kb20gQWNjZXNzIFBvaW50PGEgbmFtZT0iNC4zLjYuMSI+PC9hPgorICAgICAgICAgICAgICAg
IEFsbCBPcHVzIHNhbXBsZXMgY2FuIGJlIGluZGVwZW5kZW50bHkgZGVjb2RlZCBpLmUuIGV2ZXJ5
IE9wdXMgc2FtcGxlIGlzIGEgc3luYyBzYW1wbGUuIFRoZXJlZm9yZSwgdGhlCisgICAgICAgICAg
ICAgICAgU3luYyBTYW1wbGUgQm94IHNoYWxsIG5vdCBiZSBwcmVzZW50IGFzIGxvbmcgYXMgdGhl
cmUgYXJlIG5vIHNhbXBsZXMgb3RoZXIgdGhhbiBPcHVzIHNhbXBsZXMgaW4gdGhlIHNhbWUKKyAg
ICAgICAgICAgICAgICB0cmFjay4gQW5kIHRoZSBzYW1wbGVfaXNfbm9uX3N5bmNfc2FtcGxlIGZp
ZWxkIGZvciBPcHVzIHNhbXBsZXMgc2hhbGwgYmUgc2V0IHRvIDAuCisKKyAgICAgICAgICAgIDQu
My42LjIgUHJlLXJvbGw8YSBuYW1lPSI0LjMuNi4yIj48L2E+CisgICAgICAgICAgICAgICAgT3B1
cyBiaXRzdHJlYW0gcmVxdWlyZXMgYXQgbGVhc3QgODAgbWlsbGlzZWNvbmQgcHJlLXJvbGwgYWZ0
ZXIgZWFjaCByYW5kb20gYWNjZXNzIHRvIGdldCBjb3JyZWN0IG91dHB1dC4KKyAgICAgICAgICAg
ICAgICBQcmUtcm9sbCBpcyBpbmRpY2F0ZWQgYnkgdGhlIHJvbGxfZGlzdGFuY2UgZmllbGQgaW4g
QXVkaW9Sb2xsUmVjb3ZlcnlFbnRyeS4gQXVkaW9QcmVSb2xsRW50cnkgc2hhbGwgbm90CisgICAg
ICAgICAgICAgICAgYmUgdXNlZCBzaW5jZSBldmVyeSBPcHVzIHNhbXBsZSBpcyBhIHN5bmMgc2Ft
cGxlIGluIE9wdXMgYml0c3RyZWFtLiBOb3RlIHRoYXQgcm9sbF9kaXN0YW5jZSBpcyBleHByZXNz
ZWQKKyAgICAgICAgICAgICAgICBpbiBzYW1wbGUgdW5pdHMgaW4gYSB0ZXJtIG9mIElTTyBCYXNl
IE1lZGlhIEZpbGUgRm9ybWF0LCBhbmQgYWx3YXlzIHRha2VzIG5lZ2F0aXZlIHZhbHVlcy4KKwor
ICAgICAgICAgICAgICAgIEZvciBhbnkgdHJhY2sgY29udGFpbmluZyBPcHVzIGJpdHN0cmVhbXMs
IGF0IGxlYXN0IG9uZSBTYW1wbGUgR3JvdXAgRGVzY3JpcHRpb24gQm94IGFuZCBhdCBsZWFzdCBv
bmUKKyAgICAgICAgICAgICAgICBTYW1wbGUgdG8gR3JvdXAgQm94IHdpdGhpbiB0aGUgU2FtcGxl
IFRhYmxlIEJveCBzaGFsbCBiZSBwcmVzZW50IGFuZCB0aGVzZSBoYXZlIHRoZSBncm91cGluZ190
eXBlIGZpZWxkCisgICAgICAgICAgICAgICAgc2V0IHRvICdyb2xsJy4gSWYgYW55IE9wdXMgc2Ft
cGxlIGlzIGNvbnRhaW5lZCBpbiBhIHRyYWNrIGZyYWdtZW50LCB0aGUgU2FtcGxlIHRvIEdyb3Vw
IEJveCB3aXRoIHRoZQorICAgICAgICAgICAgICAgIGdyb3VwaW5nX3R5cGUgZmllbGQgc2V0IHRv
ICdyb2xsJyBzaGFsbCBiZSBwcmVzZW50IGZvciB0aGF0IHRyYWNrIGZyYWdtZW50LgorCisgICAg
ICAgICAgICAgICAgRm9yIHRoZSByZXF1aXJlbWVudCBvZiBBdWRpb1JvbGxSZWNvdmVyeUVudHJ5
LCB0aGUgY29tcGF0aWJsZV9icmFuZHMgZmllbGQgaW4gdGhlIEZpbGUgVHlwZSBCb3ggc2hhbGwK
KyAgICAgICAgICAgICAgICBjb250YWluIGF0IGxlYXN0IG9uZSBicmFuZCB3aGljaCByZXF1aXJl
cyBzdXBwb3J0IGZvciByb2xsIGdyb3Vwcy4KKzxhIG5hbWU9IjQuNCI+PC9hPgorICAgIDQuNCBU
cmltbWluZyBvZiBBY3R1YWwgRHVyYXRpb24KKyAgICAgICAgRHVlIHRvIHRoZSBwcmltaW5nIHNh
bXBsZXMgKG9yIHRoZSBwYWRkaW5nIGF0IHRoZSBiZWdpbm5pbmcpIGRlcml2ZWQgZnJvbSB0aGUg
cHJlLXJvbGwgZm9yIHRoZSBzdGFydHVwIGFuZCB0aGUKKyAgICAgICAgcGFkZGVkIHNhbXBsZXMg
YXQgdGhlIGVuZCwgd2UgbmVlZCB0cmltIGZyb20gbWVkaWEgdG8gZ2V0IHRoZSBhY3R1YWwgZHVy
YXRpb24uIEFuIGVkaXQgaW4gdGhlIEVkaXQgTGlzdCBCb3ggY2FuCisgICAgICAgIGFjaGlldmUg
dGhpcyBkZW1hbmQsIGFuZCB0aGUgRWRpdCBCb3ggYW5kIHRoZSBFZGl0IExpc3QgQm94IHNoYWxs
IGJlIHByZXNlbnQuCisKKyAgICAgICAgRm9yIHNhbXBsZS1hY2N1cmF0ZSB0cmltbWluZywgcHJv
cGVyIHRpbWVzY2FsZSBzaG91bGQgYmUgc2V0IHRvIHRoZSB0aW1lc2NhbGUgZmllbGQgaW4gdGhl
IE1vdmllIEhlYWRlciBCb3gKKyAgICAgICAgYW5kIHRoZSBNZWRpYSBIZWFkZXIgQm94IGluc2lk
ZSBUcmFjayBCb3goZXMpIGZvciBPcHVzIGJpdHN0cmVhbS4gVGhlIHRpbWVzY2FsZSBmaWVsZCBp
biB0aGUgTWVkaWEgSGVhZGVyIEJveCBpcworICAgICAgICB0eXBpY2FsbHkgc2V0IHRvIDQ4MDAw
LiBJdCBpcyByZWNvbW1lbmRlZCB0aGF0IHRoZSB0aW1lc2NhbGUgZmllbGQgaW4gdGhlIE1vdmll
IEhlYWRlciBCb3ggYmUgc2V0IHRvIHRoZSBzYW1lCisgICAgICAgIHZhbHVlIG9mIHRoZSB0aW1l
c2NhbGUgZmllbGQgaW4gdGhlIE1lZGlhIEhlYWRlciBCb3ggaW4gb3JkZXIgdG8gYXZvaWQgdGhl
IHJvdW5kaW5nIHByb2JsZW0gd2hlbiBzcGVjaWZ5aW5nCisgICAgICAgIGR1cmF0aW9uIG9mIGVk
aXQgaWYgdGhlIHRpbWVzY2FsZXMgaW4gYWxsIG9mIHRoZSBNZWRpYSBIZWFkZXIgQm94ZXMgYXJl
IHNldCB0byB0aGUgc2FtZSB2YWx1ZS4KKworICAgICAgICBGb3IgZXhhbXBsZSwgdG8gaW5kaWNh
dGUgdGhlIGFjdHVhbCBkdXJhdGlvbiBvZiBhbiBPcHVzIGJpdHN0cmVhbSBpbiBhIHRyYWNrIHdp
dGggdGhlIHRpbWVzY2FsZSBmaWVsZHMgb2YgYm90aAorICAgICAgICB0aGUgTW92aWUgSGVhZGVy
IEJveCBhbmQgdGhlIE1lZGlhIEhlYWRlciBCb3ggc2V0IHRvIDQ4MDAwLCB3ZSB3b3VsZCB1c2Ug
dGhlIGZvbGxvd2luZyBlZGl0OgorICAgICAgICAgICAgc2VnbWVudF9kdXJhdGlvbiA9IHRoZSBu
dW1iZXIgb2YgdGhlIHZhbGlkIHNhbXBsZXMKKyAgICAgICAgICAgIG1lZGlhX3RpbWUgPSB0aGUg
bnVtYmVyIG9mIHRoZSBwcmltaW5nIHNhbXBsZXMKKyAgICAgICAgICAgIG1lZGlhX3JhdGUgPSAx
ICZsdCZsdCAxNgorCisgICAgICAgIFRoZSBFZGl0IExpc3QgQm94IGlzIGFwcGxpZWQgdG8gd2hv
bGUgbW92aWUgaW5jbHVkaW5nIGFsbCBtb3ZpZSBmcmFnbWVudHMuIFRoZXJlZm9yZSwgaXQgaXMg
aW1wb3NzaWJsZSB0byB0ZWxsCisgICAgICAgIHRoZSBhY3R1YWwgZHVyYXRpb24gaW4gdGhlIGNh
c2UgcHJvZHVjaW5nIG1vdmllIGZyYWdtZW50cyBvbiB0aGUgZmx5IHN1Y2ggYXMgbGl2ZS1zdHJl
YW1pbmcuIEluIHN1Y2ggY2FzZXMsCisgICAgICAgIHRoZSBkdXJhdGlvbiBvZiB0aGUgbGFzdCBP
cHVzIHNhbXBsZSBtYXkgYmUgaGVscGZ1bCBieSBzZXR0aW5nIHplcm8gdG8gdGhlIHNlZ21lbnRf
ZHVyYXRpb24gZmllbGQgc2luY2UgdGhlCisgICAgICAgIHZhbHVlIDAgcmVwcmVzZW50cyBpbXBs
aWNpdCBkdXJhdGlvbiBlcXVhbCB0byB0aGUgc3VtIG9mIHRoZSBkdXJhdGlvbiBvZiBhbGwgc2Ft
cGxlcy4KKzxhIG5hbWU9IjQuNSI+PC9hPgorICAgIDQuNSBDaGFubmVsIExheW91dCAoaW5mb3Jt
YXRpdmUpCisgICAgICAgIEJ5IHRoZSBhcHBsaWNhdGlvbiBvZiBhbHRlcm5hdGVfZ3JvdXAgaW4g
dGhlIFRyYWNrIEhlYWRlciBCb3gsIHdob2xlIGF1ZGlvIGNoYW5uZWxzIGluIGFsbCBhY3RpdmUg
dHJhY2tzIGZyb20KKyAgICAgICAgbm9uLWFsdGVybmF0ZSBncm91cCBhbmQvb3IgZGlmZmVyZW50
IGFsdGVybmF0ZSBncm91cCBmcm9tIGVhY2ggb3RoZXIgYXJlIGNvbXBvc2l0ZWQgaW50byB0aGUg
cHJlc2VudGF0aW9uLiBJZgorICAgICAgICBhbiBPcHVzIHNhbXBsZSBjb25zaXN0cyBvZiBtdWx0
aXBsZSBPcHVzIGJpdHN0cmVhbXMsIGl0IGNhbiBiZSBzcGxpdHRlZCBpbnRvIGluZGl2aWR1YWwg
T3B1cyBiaXRzdHJlYW1zIGFuZAorICAgICAgICByZWNvbnN0cnVjdGVkIGludG8gbmV3IE9wdXMg
c2FtcGxlcyBhcyBsb25nIGFzIGV2ZXJ5IE9wdXMgYml0c3RyZWFtIGhhcyB0aGUgc2FtZSB0b3Rh
bCBkdXJhdGlvbiBpbiBlYWNoIE9wdXMKKyAgICAgICAgc2FtcGxlLiBUaGlzIG5hdHVyZSBjYW4g
YmUgdXRpbGl6ZWQgdG8gZW5jYXBzdWxhdGUgYSBzaW5nbGUgT3B1cyBiaXRzdHJlYW0gaW4gZWFj
aCB0cmFjayB3aXRob3V0IGJyZWFraW5nIHRoZQorICAgICAgICBvcmlnaW5hbCBjaGFubmVsIGxh
eW91dC4KKworICAgICAgICBBcyBhbiBleGFtcGxlLCBsZXQncyBzYXkgdGhlcmUgaXMgYSBmb2xs
b3dpbmcgdHJhY2s6CisgICAgICAgICAgICBPdXRwdXRDaGFubmVsQ291bnQgPSA2OworICAgICAg
ICAgICAgU3RyZWFtQ291bnQgICAgICAgID0gNDsKKyAgICAgICAgICAgIENvdXBsZWRDb3VudCAg
ICAgICA9IDI7CisgICAgICAgICAgICBDaGFubmVsTWFwcGluZyAgICAgPSB7MCwgNCwgMSwgMiwg
MywgNX07IC8vIGZyb250IGxlZnQsIGZyb250IGNlbnRlciwgZnJvbnQgcmlnaHQsIHJlYXIgbGVm
dCwgcmVhciByaWdodCwgTEZFCisgICAgICAgIEhlcmUsIHRvIGNvdXBsZSBmcm9udCBsZWZ0IHRv
IGZyb250IHJpZ2h0IGNoYW5uZWxzIGludG8gdGhlIGZpcnN0IHN0cmVhbSwgYW5kIGNvdXBsZSBy
ZWFyIGxlZnQgdG8gcmVhciByaWdodAorICAgICAgICBjaGFubmVscyBpbnRvIHRoZSBzZWNvbmQg
c3RyZWFtLCByZW9yZGVyaW5nIGlzIG5lZWRlZCBzaW5jZSBjb3VwbGVkIHN0cmVhbXMgbXVzdCBw
cmVjZWRlIGFueSBub24tY291cGxlZCBzdHJlYW0uCisgICAgICAgIFlvdSBleHRyYWN0IHRoZSBm
b3VyIE9wdXMgYml0c3RyZWFtcyBmcm9tIHRoaXMgdHJhY2sgYW5kIHlvdSBlbmNhcHN1bGF0ZSB0
d28gb2YgdGhlIGZvdXIgaW50byBhIHRyYWNrIGFuZCB0aGUKKyAgICAgICAgb3RoZXJzIGludG8g
YW5vdGhlciB0cmFjay4gVGhlIGZvcm1lciB0cmFjayBpcyBhcyBmb2xsb3dzLgorICAgICAgICAg
ICAgT3V0cHV0Q2hhbm5lbENvdW50ID0gNjsKKyAgICAgICAgICAgIFN0cmVhbUNvdW50ICAgICAg
ICA9IDI7CisgICAgICAgICAgICBDb3VwbGVkQ291bnQgICAgICAgPSAyOworICAgICAgICAgICAg
Q2hhbm5lbE1hcHBpbmcgICAgID0gezAsIDI1NSwgMSwgMiwgMywgMjU1fTsgLy8gZnJvbnQgbGVm
dCwgZnJvbnQgY2VudGVyLCBmcm9udCByaWdodCwgcmVhciBsZWZ0LCByZWFyIHJpZ2h0LCBMRkUK
KyAgICAgICAgQW5kIHRoZSBsYXR0ZXIgdHJhY2sgaXMgYXMgZm9sbG93cy4KKyAgICAgICAgICAg
IE91dHB1dENoYW5uZWxDb3VudCA9IDY7CisgICAgICAgICAgICBTdHJlYW1Db3VudCAgICAgICAg
PSAyOworICAgICAgICAgICAgQ291cGxlZENvdW50ICAgICAgID0gMDsKKyAgICAgICAgICAgIENo
YW5uZWxNYXBwaW5nICAgICA9IHsyNTUsIDAsIDI1NSwgMjU1LCAyNTUsIDF9OyAvLyBmcm9udCBs
ZWZ0LCBmcm9udCBjZW50ZXIsIGZyb250IHJpZ2h0LCByZWFyIGxlZnQsIHJlYXIgcmlnaHQsIExG
RQorICAgICAgICBJbiBhZGRpdGlvbiwgdGhlIHZhbHVlIG9mIHRoZSBhbHRlcm5hdGVfZ3JvdXAg
ZmllbGQgaW4gdGhlIGJvdGggdHJhY2tzIGlzIHNldCB0byAwLiBBcyB0aGUgcmVzdWx0LCB0aGUg
cGxheWVyCisgICAgICAgIG1heSBwbGF5IGFzIGlmIGNoYW5uZWxzIHdpdGggMjU1IGFyZSBub3Qg
cHJlc2VudCwgYW5kIHBsYXkgdGhlIHByZXNlbnRhdGlvbiBjb25zdHJ1Y3RlZCBmcm9tIHRoZSBi
b3RoIHRyYWNrcworICAgICAgICBpbiB0aGUgc2FtZSBjaGFubmVsIGxheW91dCBhcyB0aGUgb25l
IG9mIHRoZSBvcmlnaW5hbCB0cmFjay4gS2VlcCBpbiBtaW5kIHRoYXQgdGhlIHdheSBvZiB0aGUg
Y29tcG9zaXRpb24sIGkuZS4KKyAgICAgICAgdGhlIG1peGluZyBmb3IgcGxheWJhY2ssIGlzIG5v
dCBkZWZpbmVkIGhlcmUsIGFuZCBtYXliZSBkaWZmZXJlbnQgcmVzdWx0cyBjb3VsZCBvY2N1ciBl
eGNlcHQgZm9yIHRoZSBjaGFubmVsCisgICAgICAgIGxheW91dCBvZiB0aGUgb3JpZ2luYWwsIGRl
cGVuZGluZyBvbiBhbiBpbXBsZW1lbnRhdGlvbiBvciB0aGUgZGVmaW5pdGlvbiBvZiBhIGRlcml2
ZWQgZmlsZSBmb3JtYXQuCisKKyAgICAgICAgTm90ZSB0aGF0IHNvbWUgZGVyaXZlZCBmaWxlIGZv
cm1hdHMgbWF5IHNwZWNpZnkgdGhlIHJlc3RyaWN0aW9uIHRvIGlnbm9yZSBhbHRlcm5hdGUgZ3Jv
dXBpbmcuIEluIHRoZSBjb250ZXh0IG9mCisgICAgICAgIHN1Y2ggZmlsZSBmb3JtYXRzLCB0aGlz
IGFwcGxpY2F0aW9uIGlzIG5vdCBhdmFpbGFibGUuIFRoaXMgdW5hdmFpbGFiaWxpdHkgZG9lcyBu
b3QgbWVhbiBpbmNvbXBhdGliaWxpdGllcyBhbW9uZworICAgICAgICBmaWxlIGZvcm1hdHMgdW5s
ZXNzIHRoZSByZXN0cmljdGlvbiB0byB0aGUgdmFsdWUgb2YgdGhlIGFsdGVybmF0ZV9ncm91cCBm
aWVsZCBpcyBzcGVjaWZpZWQgYW5kIGJyaW5ncyBhYm91dAorICAgICAgICBhbnkgY29uZmxpY3Qg
YW1vbmcgdGhlaXIgZGVmaW5pdGlvbnMuCis8YSBuYW1lPSI0LjYiPjwvYT4KKyAgICA0LjYgQmFz
aWMgU3RydWN0dXJlIChpbmZvcm1hdGl2ZSkKKyAgICAgICAgNC42LjEgSW5pdGlhbCBNb3ZpZTxh
IG5hbWU9IjQuNi4xIj48L2E+CisgICAgICAgICAgICBUaGlzIHN1YmNsYXVzZSBzaG93cyBhIGJh
c2ljIHN0cnVjdHVyZSBvZiB0aGUgTW92aWUgQm94IGFzIGZvbGxvd3M6CisKKyAgICAgICAgICAg
ICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfG1vb3Z8ICAgIHwgICAgfCAgICB8ICAgIHwg
ICAgfCAgICB8ICAgIHwgTW92aWUgQm94ICAgICAgICAgICAgICAgICAgICB8CisgICAgICAgICAg
ICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfG12aGR8ICAgIHwgICAgfCAgICB8
ICAgIHwgICAgfCAgICB8IE1vdmllIEhlYWRlciBCb3ggICAgICAgICAgICAgfAorICAgICAgICAg
ICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHx0cmFrfCAgICB8ICAgIHwgICAg
fCAgICB8ICAgIHwgICAgfCBUcmFjayBCb3ggICAgICAgICAgICAgICAgICAgIHwKKyAgICAgICAg
ICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHx0a2hkfCAgICB8ICAg
IHwgICAgfCAgICB8ICAgIHwgVHJhY2sgSGVhZGVyIEJveCAgICAgICAgICAgICB8CisgICAgICAg
ICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ZWR0c3wgICAgfCAg
ICB8ICAgIHwgICAgfCAgICB8IEVkaXQgQm94ICAgICAgICAgICAgICAgICAgICAgfAorICAgICAg
ICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8ZWxzdHwg
ICAgfCAgICB8ICAgIHwgICAgfCBFZGl0IExpc3QgQm94ICAgICAgICAgICAgICAgIHwKKyAgICAg
ICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHxtZGlhfCAgICB8
ICAgIHwgICAgfCAgICB8ICAgIHwgTWVkaWEgQm94ICAgICAgICAgICAgICAgICAgICB8CisgICAg
ICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHxtZGhk
fCAgICB8ICAgIHwgICAgfCAgICB8IE1lZGlhIEhlYWRlciBCb3ggICAgICAgICAgICAgfAorICAg
ICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8aGRs
cnwgICAgfCAgICB8ICAgIHwgICAgfCBIYW5kbGVyIFJlZmVyZW5jZSBCb3ggICAgICAgIHwKKyAg
ICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfG1p
bmZ8ICAgIHwgICAgfCAgICB8ICAgIHwgTWVkaWEgSW5mb3JtYXRpb24gQm94ICAgICAgICB8Cisg
ICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAgIHwg
ICAgfHNtaGR8ICAgIHwgICAgfCAgICB8IFNvdW5kIE1lZGlhIEhlYWRlciBCb3ggICAgICAgfAor
ICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8
ICAgIHxkaW5mfCAgICB8ICAgIHwgICAgfCBEYXRhIEluZm9ybWF0aW9uIEJveCAgICAgICAgIHwK
KyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAg
fCAgICB8ICAgIHxkcmVmfCAgICB8ICAgIHwgRGF0YSBSZWZlcmVuY2UgQm94ICAgICAgICAgICB8
CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAg
IHwgICAgfCAgICB8ICAgIHx1cmwgfCAgICB8IERhdGFFbnRyeVVybEJveCAgICAgICAgICAgICAg
fAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKyBvciArLS0tLSst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAg
ICB8ICAgIHwgICAgfCAgICB8dXJuIHwgICAgfCBEYXRhRW50cnlVcm5Cb3ggICAgICAgICAgICAg
IHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwg
ICAgfCAgICB8c3RibHwgICAgfCAgICB8ICAgIHwgU2FtcGxlIFRhYmxlICAgICAgICAgICAgICAg
ICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8
ICAgIHwgICAgfCAgICB8c3RzZHwgICAgfCAgICB8IFNhbXBsZSBEZXNjcmlwdGlvbiBCb3ggICAg
ICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAg
fCAgICB8ICAgIHwgICAgfCAgICB8T3B1c3wgICAgfCBPcHVzU2FtcGxlRW50cnkgICAgICAgICAg
ICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAg
IHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ZE9wc3wgT3B1cyBTcGVjaWZpYyBCb3ggICAgICAg
ICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAg
ICB8ICAgIHwgICAgfCAgICB8c3R0c3wgICAgfCAgICB8IERlY29kaW5nIFRpbWUgdG8gU2FtcGxl
IEJveCAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwg
ICAgfCAgICB8ICAgIHwgICAgfHN0c2N8ICAgIHwgICAgfCBTYW1wbGUgVG8gQ2h1bmsgQm94ICAg
ICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8
ICAgIHwgICAgfCAgICB8ICAgIHxzdHN6fCAgICB8ICAgIHwgU2FtcGxlIFNpemUgQm94ICAgICAg
ICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKyBvciArLS0t
LSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAg
fCAgICB8ICAgIHwgICAgfCAgICB8c3R6MnwgICAgfCAgICB8IENvbXBhY3QgU2FtcGxlIFNpemUg
Qm94ICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAg
IHwgICAgfCAgICB8ICAgIHwgICAgfHN0Y298ICAgIHwgICAgfCBDaHVuayBPZmZzZXQgQm94ICAg
ICAgICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rIG9yICst
LS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAg
ICB8ICAgIHwgICAgfCAgICB8ICAgIHxjbzY0fCAgICB8ICAgIHwgQ2h1bmsgTGFyZ2UgT2Zmc2V0
IEJveCAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwg
ICAgfCAgICB8ICAgIHwgICAgfCAgICB8c2dwZHwgICAgfCAgICB8IFNhbXBsZSBHcm91cCBEZXNj
cmlwdGlvbiBCb3ggfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8
ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfHNiZ3B8ICAgIHwgICAgfCBTYW1wbGUgdG8gR3JvdXAg
Qm94ICAgICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAg
fCAgICB8bXZleHwqICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgTW92aWUgRXh0ZW5kcyBC
b3ggICAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAg
IHwgICAgfCAgICB8dHJleHwqICAgfCAgICB8ICAgIHwgICAgfCAgICB8IFRyYWNrIEV4dGVuZHMg
Qm94ICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisKKyAgICAgICAg
ICAgICAgICAgICAgRmlndXJlIDIgLSBCYXNpYyBzdHJ1Y3R1cmUgb2YgTW92aWUgQm94CisKKyAg
ICAgICAgICAgIEl0IGlzIHN0cm9uZ2x5IHJlY29tbWVuZGVkIHRoYXQgdGhlIG9yZGVyIG9mIGJv
eGVzIHNob3VsZCBmb2xsb3cgdGhlIGFib3ZlIHN0cnVjdHVyZS4KKyAgICAgICAgICAgIEJveGVz
IG1hcmtlZCB3aXRoIGFuIGFzdGVyaXNrICgqKSBtYXkgYmUgcHJlc2VudC4KKyAgICAgICAgICAg
IEZvciBtb3N0IGJveGVzIGxpc3RlZCBhYm92ZSwgdGhlIGRlZmluaXRpb24gaXMgYXMgaXMgZGVm
aW5lZCBpbiBJU08vSUVDIDE0NDk2LTEyIFsxXS4gVGhlIGFkZGl0aW9uYWwgYm94ZXMKKyAgICAg
ICAgICAgIGFuZCB0aGUgYWRkaXRpb25hbCByZXF1aXJlbWVudHMsIHJlc3RyaWN0aW9ucyBhbmQg
cmVjb21tZW5kYXRpb25zIHRvIHRoZSBvdGhlciBib3hlcyBhcmUgZGVzY3JpYmVkIGluIHRoaXMK
KyAgICAgICAgICAgIHNwZWNpZmljYXRpb24uCisKKyAgICAgICAgNC42LjIgTW92aWUgRnJhZ21l
bnRzPGEgbmFtZT0iNC42LjIiPjwvYT4KKyAgICAgICAgICAgIFRoaXMgc3ViY2xhdXNlIHNob3dz
IGEgYmFzaWMgc3RydWN0dXJlIG9mIHRoZSBNb3ZpZSBGcmFnbWVudCBCb3ggYXMgZm9sbG93czoK
KworICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8bW9vZnwgICAgfCAg
ICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBNb3ZpZSBGcmFnbWVudCBCb3ggICAgICAgICAg
IHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8bWZoZHwg
ICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgTW92aWUgRnJhZ21lbnQgSGVhZGVyIEJveCAg
ICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfHRyYWZ8
ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8IFRyYWNrIEZyYWdtZW50IEJveCAgICAgICAg
ICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAg
fHRmaGR8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBUcmFjayBGcmFnbWVudCBIZWFkZXIgQm94
ICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAg
IHx0cnVufCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgVHJhY2sgRnJhZ21lbnQgUnVuIEJveCAg
ICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAg
ICB8c2dwZHwqICAgfCAgICB8ICAgIHwgICAgfCAgICB8IFNhbXBsZSBHcm91cCBEZXNjcmlwdGlv
biBCb3ggfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwg
ICAgfHNiZ3B8KiAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBTYW1wbGUgdG8gR3JvdXAgQm94ICAg
ICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCisgICAgICAgICAgICAgICAg
ICAgIEZpZ3VyZSAzIC0gQmFzaWMgc3RydWN0dXJlIG9mIE1vdmllIEZyYWdtZW50IEJveAorCisg
ICAgICAgICAgICBJdCBpcyBzdHJvbmdseSByZWNvbW1lbmRlZCB0aGF0IHRoZSBNb3ZpZSBGcmFn
bWVudCBIZWFkZXIgQm94IGFuZCB0aGUgVHJhY2sgRnJhZ21lbnQgSGVhZGVyIEJveCBiZQorICAg
ICAgICAgICAgcGxhY2VkIGZpcnN0IGluIHRoZWlyIGNvbnRhaW5lci4KKyAgICAgICAgICAgIEJv
eGVzIG1hcmtlZCB3aXRoIGFuIGFzdGVyaXNrICgqKSBtYXkgYmUgcHJlc2VudC4KKyAgICAgICAg
ICAgIEZvciB0aGUgYm94ZXMgbGlzdGVkIGFib3ZlLCB0aGUgZGVmaW5pdGlvbiBpcyBhcyBpcyBk
ZWZpbmVkIGluIElTTy9JRUMgMTQ0OTYtMTIgWzFdLgorPGEgbmFtZT0iNC43Ij48L2E+CisgICAg
NC43IEV4YW1wbGUgb2YgRW5jYXBzdWxhdGlvbiAoaW5mb3JtYXRpdmUpCisgICAgICAgIFtGaWxl
XQorICAgICAgICAgICAgc2l6ZSA9IDE3NzkwCisgICAgICAgICAgICBbZnR5cDogRmlsZSBUeXBl
IEJveF0KKyAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDAKKyAgICAgICAgICAgICAgICBzaXpl
ID0gMjQKKyAgICAgICAgICAgICAgICBtYWpvcl9icmFuZCA9IG1wNDIgOiBNUDQgdmVyc2lvbiAy
CisgICAgICAgICAgICAgICAgbWlub3JfdmVyc2lvbiA9IDAKKyAgICAgICAgICAgICAgICBjb21w
YXRpYmxlX2JyYW5kcworICAgICAgICAgICAgICAgICAgICBicmFuZFswXSA9IG1wNDIgOiBNUDQg
dmVyc2lvbiAyCisgICAgICAgICAgICAgICAgICAgIGJyYW5kWzFdID0gaXNvMiA6IElTTyBCYXNl
IE1lZGlhIGZpbGUgZm9ybWF0IHZlcnNpb24gMgorICAgICAgICAgICAgW21vb3Y6IE1vdmllIEJv
eF0KKyAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDI0CisgICAgICAgICAgICAgICAgc2l6ZSA9
IDc1NworICAgICAgICAgICAgICAgIFttdmhkOiBNb3ZpZSBIZWFkZXIgQm94XQorICAgICAgICAg
ICAgICAgICAgICBwb3NpdGlvbiA9IDMyCisgICAgICAgICAgICAgICAgICAgIHNpemUgPSAxMDgK
KyAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IDAKKyAgICAgICAgICAgICAgICAgICAgZmxh
Z3MgPSAweDAwMDAwMAorICAgICAgICAgICAgICAgICAgICBjcmVhdGlvbl90aW1lID0gVVRDIDIw
MTQvMTIvMTIsIDE4OjQxOjE5CisgICAgICAgICAgICAgICAgICAgIG1vZGlmaWNhdGlvbl90aW1l
ID0gVVRDIDIwMTQvMTIvMTIsIDE4OjQxOjE5CisgICAgICAgICAgICAgICAgICAgIHRpbWVzY2Fs
ZSA9IDQ4MDAwCisgICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uID0gMzM2MDAgKDAwOjAwOjAw
LjcwMCkKKyAgICAgICAgICAgICAgICAgICAgcmF0ZSA9IDEuMDAwMDAwCisgICAgICAgICAgICAg
ICAgICAgIHZvbHVtZSA9IDEuMDAwMDAwCisgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0g
MHgwMDAwCisgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwMDAwMAorICAgICAg
ICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAg
dHJhbnNmb3JtYXRpb24gbWF0cml4CisgICAgICAgICAgICAgICAgICAgICAgICB8IGEsIGIsIHUg
fCAgIHwgMS4wMDAwMDAsIDAuMDAwMDAwLCAwLjAwMDAwMCB8CisgICAgICAgICAgICAgICAgICAg
ICAgICB8IGMsIGQsIHYgfCA9IHwgMC4wMDAwMDAsIDEuMDAwMDAwLCAwLjAwMDAwMCB8CisgICAg
ICAgICAgICAgICAgICAgICAgICB8IHgsIHksIHcgfCAgIHwgMC4wMDAwMDAsIDAuMDAwMDAwLCAx
LjAwMDAwMCB8CisgICAgICAgICAgICAgICAgICAgIHByZV9kZWZpbmVkID0gMHgwMDAwMDAwMAor
ICAgICAgICAgICAgICAgICAgICBwcmVfZGVmaW5lZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAg
ICAgICAgICAgcHJlX2RlZmluZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgIHBy
ZV9kZWZpbmVkID0gMHgwMDAwMDAwMAorICAgICAgICAgICAgICAgICAgICBwcmVfZGVmaW5lZCA9
IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgcHJlX2RlZmluZWQgPSAweDAwMDAwMDAw
CisgICAgICAgICAgICAgICAgICAgIG5leHRfdHJhY2tfSUQgPSAyCisgICAgICAgICAgICAgICAg
W2lvZHM6IE9iamVjdCBEZXNjcmlwdG9yIEJveF0KKyAgICAgICAgICAgICAgICAgICAgcG9zaXRp
b24gPSAxNDAKKyAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDMzCisgICAgICAgICAgICAgICAg
ICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAg
ICAgICAgICAgICAgICAgICAgW3RhZyA9IDB4MTA6IE1QNF9JT0RdCisgICAgICAgICAgICAgICAg
ICAgICAgICBleHBhbmRhYmxlQ2xhc3NTaXplID0gMTYKKyAgICAgICAgICAgICAgICAgICAgICAg
IE9iamVjdERlc2NyaXB0b3JJRCA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgIFVSTF9GbGFn
ID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZUlubGluZVByb2ZpbGVMZXZlbEZs
YWcgPSAwCisgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4ZgorICAgICAgICAg
ICAgICAgICAgICAgICAgT0RQcm9maWxlTGV2ZWxJbmRpY2F0aW9uID0gMHhmZgorICAgICAgICAg
ICAgICAgICAgICAgICAgc2NlbmVQcm9maWxlTGV2ZWxJbmRpY2F0aW9uID0gMHhmZgorICAgICAg
ICAgICAgICAgICAgICAgICAgYXVkaW9Qcm9maWxlTGV2ZWxJbmRpY2F0aW9uID0gMHhmZQorICAg
ICAgICAgICAgICAgICAgICAgICAgdmlzdWFsUHJvZmlsZUxldmVsSW5kaWNhdGlvbiA9IDB4ZmYK
KyAgICAgICAgICAgICAgICAgICAgICAgIGdyYXBoaWNzUHJvZmlsZUxldmVsSW5kaWNhdGlvbiA9
IDB4ZmYKKyAgICAgICAgICAgICAgICAgICAgICAgIFt0YWcgPSAweDBlOiBFU19JRF9JbmNdCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwYW5kYWJsZUNsYXNzU2l6ZSA9IDQKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBUcmFja19JRCA9IDEKKyAgICAgICAgICAgICAgICBbdHJh
azogVHJhY2sgQm94XQorICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDE3MworICAgICAg
ICAgICAgICAgICAgICBzaXplID0gNjA4CisgICAgICAgICAgICAgICAgICAgIFt0a2hkOiBUcmFj
ayBIZWFkZXIgQm94XQorICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAxODEKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSA5MgorICAgICAgICAgICAgICAgICAgICAgICAg
dmVyc2lvbiA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDcKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBUcmFjayBlbmFibGVkCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgVHJhY2sgaW4gbW92aWUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBU
cmFjayBpbiBwcmV2aWV3CisgICAgICAgICAgICAgICAgICAgICAgICBjcmVhdGlvbl90aW1lID0g
VVRDIDIwMTQvMTIvMTIsIDE4OjQxOjE5CisgICAgICAgICAgICAgICAgICAgICAgICBtb2RpZmlj
YXRpb25fdGltZSA9IFVUQyAyMDE0LzEyLzEyLCAxODo0MToxOQorICAgICAgICAgICAgICAgICAg
ICAgICAgdHJhY2tfSUQgPSAxCisgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4
MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uID0gMzM2MDAgKDAwOjAw
OjAwLjcwMCkKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwMDAwMAor
ICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAg
ICAgICAgICAgICAgICBsYXllciA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgIGFsdGVybmF0
ZV9ncm91cCA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgIHZvbHVtZSA9IDEuMDAwMDAwCisg
ICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMAorICAgICAgICAgICAgICAg
ICAgICAgICAgdHJhbnNmb3JtYXRpb24gbWF0cml4CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCBhLCBiLCB1IHwgICB8IDEuMDAwMDAwLCAwLjAwMDAwMCwgMC4wMDAwMDAgfAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgYywgZCwgdiB8ID0gfCAwLjAwMDAwMCwgMS4wMDAwMDAs
IDAuMDAwMDAwIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHgsIHksIHcgfCAgIHwg
MC4wMDAwMDAsIDAuMDAwMDAwLCAxLjAwMDAwMCB8CisgICAgICAgICAgICAgICAgICAgICAgICB3
aWR0aCA9IDAuMDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQgPSAwLjAwMDAw
MAorICAgICAgICAgICAgICAgICAgICBbZWR0czogRWRpdCBCb3hdCisgICAgICAgICAgICAgICAg
ICAgICAgICBwb3NpdGlvbiA9IDI3MworICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDM2
CisgICAgICAgICAgICAgICAgICAgICAgICBbZWxzdDogRWRpdCBMaXN0IEJveF0KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDI4MQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNpemUgPSAyOAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAw
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGVudHJ5X2NvdW50ID0gMQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGVudHJ5WzBdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlZ21lbnRf
ZHVyYXRpb24gPSAzMzYwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZWRpYV90
aW1lID0gMzEyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lZGlhX3JhdGUgPSAx
LjAwMDAwMAorICAgICAgICAgICAgICAgICAgICBbbWRpYTogTWVkaWEgQm94XQorICAgICAgICAg
ICAgICAgICAgICAgICAgcG9zaXRpb24gPSAzMDkKKyAgICAgICAgICAgICAgICAgICAgICAgIHNp
emUgPSA0NzIKKyAgICAgICAgICAgICAgICAgICAgICAgIFttZGhkOiBNZWRpYSBIZWFkZXIgQm94
XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gMzE3CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2l6ZSA9IDMyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dmVyc2lvbiA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDAw
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRpb25fdGltZSA9IFVUQyAyMDE0LzEy
LzEyLCAxODo0MToxOQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGlmaWNhdGlvbl90
aW1lID0gVVRDIDIwMTQvMTIvMTIsIDE4OjQxOjE5CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdGltZXNjYWxlID0gNDgwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdXJhdGlv
biA9IDM0NTYwICgwMDowMDowMC43MjApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFu
Z3VhZ2UgPSB1bmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVfZGVmaW5lZCA9IDB4
MDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgW2hkbHI6IEhhbmRsZXIgUmVmZXJlbmNlIEJv
eF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDM0OQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNpemUgPSA1MQorICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAw
MAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZV9kZWZpbmVkID0gMHgwMDAwMDAwMAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZXJfdHlwZSA9IHNvdW4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICByZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBuYW1lID0gWGlwaCBBdWRpbyBIYW5kbGVyCisgICAgICAgICAgICAgICAgICAgICAgICBbbWlu
ZjogTWVkaWEgSW5mb3JtYXRpb24gQm94XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBv
c2l0aW9uID0gNDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDM4MQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFtzbWhkOiBTb3VuZCBNZWRpYSBIZWFkZXIgQm94XQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDQwOAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gMTYKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdmVyc2lvbiA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxh
Z3MgPSAweDAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWxhbmNlID0g
MC4wMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAw
MDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGluZjogRGF0YSBJbmZvcm1hdGlvbiBC
b3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNDI0CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSAzNgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBbZHJlZjogRGF0YSBSZWZlcmVuY2UgQm94XQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSA0MzIKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHNpemUgPSAyOAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdmVyc2lvbiA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZs
YWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5
X2NvdW50ID0gMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3VybCA6IERh
dGEgRW50cnkgVXJsIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBwb3NpdGlvbiA9IDQ0OAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNpemUgPSAxMgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNp
b24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAw
eDAwMDAwMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9u
ID0gaW4gdGhlIHNhbWUgZmlsZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdGJsOiBT
YW1wbGUgVGFibGUgQm94XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlv
biA9IDQ2MAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gMzIxCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHNkOiBTYW1wbGUgRGVzY3JpcHRpb24gQm94
XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSA0NjgKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSA3OQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IDAKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGVudHJ5X2NvdW50ID0gMQorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgW09wdXM6IEF1ZGlvIERlc2NyaXB0aW9uXQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNDg0CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2l6ZSA9IDYzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwMDAwMAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGRhdGFfcmVmZXJlbmNlX2luZGV4ID0gMQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMDAwMDAK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFubmVsY291bnQgPSA2
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FtcGxlc2l6ZSA9IDE2
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlX2RlZmluZWQgPSAw
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAwCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FtcGxlcmF0ZSA9IDQ4MDAw
LjAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkT3BzOiBP
cHVzIFNwZWNpZmljIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcG9zaXRpb24gPSA1MjAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc2l6ZSA9IDI3CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIE91dHB1dENoYW5uZWxDb3VudCA9IDYKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgUHJlU2tpcCA9IDMxMgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBJbnB1dFNhbXBsZVJhdGUgPSA0ODAwMAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPdXRwdXRHYWluID0gMAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGFubmVsTWFwcGluZ0ZhbWlseSA9
IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RyZWFtQ291
bnQgPSA0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvdXBs
ZWRDb3VudCA9IDIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Q2hhbm5lbE1hcHBpbmcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDAgLT4gMDogZnJvbnQgbGVmdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgMSAtPiA0OiBmcm9uIGNlbnRlcgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiAtPiAxOiBmcm9udCByaWdodAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMyAtPiAyOiBzaWRlIGxl
ZnQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQgLT4g
Mzogc2lkZSByaWdodAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgNSAtPiA1OiByZWFyIGNlbnRlcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBbc3R0czogRGVjb2RpbmcgVGltZSB0byBTYW1wbGUgQm94XQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSA1NDcKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHNpemUgPSAyNAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdmVyc2lvbiA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdz
ID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5X2Nv
dW50ID0gMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlbMF0KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYW1wbGVfY291bnQgPSAxOAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhbXBsZV9kZWx0YSA9IDE5
MjAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0c2M6IFNhbXBsZSBUbyBDaHVu
ayBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDU3
MQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDQwCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZW50cnlfY291bnQgPSAyCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeVswXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGZpcnN0X2NodW5rID0gMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNhbXBsZXNfcGVyX2NodW5rID0gMTMKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzYW1wbGVfZGVzY3JpcHRpb25faW5kZXggPSAxCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBlbnRyeVsxXQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGZpcnN0X2NodW5rID0gMgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHNhbXBsZXNfcGVyX2NodW5rID0gNQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNhbXBsZV9kZXNjcmlwdGlvbl9pbmRleCA9IDEKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0c3o6IFNhbXBsZSBTaXplIEJveF0KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNjExCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gOTIKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBmbGFncyA9IDB4MDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzYW1wbGVfc2l6ZSA9IDAgKHZhcmlhYmxlKQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc2FtcGxlX2NvdW50ID0gMTgKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5X3NpemVbMF0gPSA5NzcKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5X3NpemVbMV0gPSA5MzgKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5X3NpemVbMl0gPSA5MzkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5X3NpemVbM10gPSA5MzgKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5X3NpemVbNF0gPSA5MzQKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5X3NpemVbNV0gPSA5NDUKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5X3NpemVbNl0gPSA5NDgKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5X3NpemVbN10gPSA5NTYKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5X3NpemVbOF0gPSA5NTUKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5X3NpemVbOV0gPSA5MzAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGVudHJ5X3NpemVbMTBdID0gOTMzCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBlbnRyeV9zaXplWzExXSA9IDkzNAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZW50cnlfc2l6ZVsxMl0gPSA5NzIKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGVudHJ5X3NpemVbMTNdID0gOTc3CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9zaXplWzE0XSA9IDk1OAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZW50cnlfc2l6ZVsxNV0gPSA5NDkKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGVudHJ5X3NpemVbMTZdID0gOTYyCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzE3XSA9IDg0OAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBbc3RjbzogQ2h1bmsgT2Zmc2V0IEJveF0KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNzAzCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzaXplID0gMjQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFn
cyA9IDB4MDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9j
b3VudCA9IDIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNodW5rX29mZnNl
dFswXSA9IDc5NworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2h1bmtfb2Zm
c2V0WzFdID0gMTMwOTYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NncGQ6IFNh
bXBsZSBHcm91cCBEZXNjcmlwdGlvbiBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBwb3NpdGlvbiA9IDcyNworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc2l6ZSA9IDI2CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9u
ID0gMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAw
MAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JvdXBpbmdfdHlwZSA9IHJv
bGwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRfbGVuZ3RoID0g
MiAoY29uc3RhbnQpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9j
b3VudCA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvbGxfZGlzdGFu
Y2VbMF0gPSAtMgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2JncDogU2FtcGxl
IHRvIEdyb3VwIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0
aW9uID0gNzUzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gMjgK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDAwCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBncm91cGluZ190eXBlID0gcm9sbAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlfY291bnQgPSAxCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBlbnRyeVswXQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHNhbXBsZV9jb3VudCA9IDE4CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZ3JvdXBfZGVzY3JpcHRpb25faW5kZXggPSAxCisgICAgICAgICAg
ICBbZnJlZTogRnJlZSBTcGFjZSBCb3hdCisgICAgICAgICAgICAgICAgcG9zaXRpb24gPSA3ODEK
KyAgICAgICAgICAgICAgICBzaXplID0gOAorICAgICAgICAgICAgW21kYXQ6IE1lZGlhIERhdGEg
Qm94XQorICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNzg5CisgICAgICAgICAgICAgICAgc2l6
ZSA9IDE3MDAxCis8YSBuYW1lPSI1Ij48L2E+Cis1IEF1dGhvcnMnIEFkZHJlc3MKKyAgICBZdXN1
a2UgTmFrYW11cmEKKyAgICAgICAgRW1haWw6IG11a2VuLnRoZS52ZnJtYW5pYWMgfGF0fCBnbWFp
bC5jb20KKyAgICAgICAgPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9k
b2Mvb3B1c191cGRhdGUucGF0Y2ggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9vcHVzX3VwZGF0ZS5wYXRjaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4x
MWYwNjZjNzAyMmZmNmY4OTZlMzFjODYwMGEzZDZmMDZmMGY0MTgyCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9kb2Mvb3B1c191cGRhdGUucGF0Y2gKQEAgLTAsMCArMSwyNDQgQEAKK2RpZmYgLS1naXQgYS9j
ZWx0L2JhbmRzLmMgYi9jZWx0L2JhbmRzLmMKK2luZGV4IDY5NjI1ODcuLjMyZTFkZTYgMTAwNjQ0
CistLS0gYS9jZWx0L2JhbmRzLmMKKysrKyBiL2NlbHQvYmFuZHMuYworQEAgLTEyMzQsOSArMTIz
NCwyMyBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhpbnQgZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAq
bSwgaW50IHN0YXJ0LCBpbnQgZW5kLAorICAgICAgICAgIGIgPSAwOworICAgICAgIH0KKyAKKy0g
ICAgICBpZiAocmVzeW50aCAmJiBNKmVCYW5kc1tpXS1OID49IE0qZUJhbmRzW3N0YXJ0XSAmJiAo
dXBkYXRlX2xvd2JhbmQgfHwgbG93YmFuZF9vZmZzZXQ9PTApKQorKyAgICAgIGlmIChyZXN5bnRo
ICYmIChNKmVCYW5kc1tpXS1OID49IE0qZUJhbmRzW3N0YXJ0XSB8fCBpPT1zdGFydCsxKSAmJiAo
dXBkYXRlX2xvd2JhbmQgfHwgbG93YmFuZF9vZmZzZXQ9PTApKQorICAgICAgICAgICAgIGxvd2Jh
bmRfb2Zmc2V0ID0gaTsKKyAKKysgICAgICBpZiAoaSA9PSBzdGFydCsxKQorKyAgICAgIHsKKysg
ICAgICAgICBpbnQgbjEsIG4yOworKyAgICAgICAgIGludCBvZmZzZXQ7CisrICAgICAgICAgbjEg
PSBNKihlQmFuZHNbc3RhcnQrMV0tZUJhbmRzW3N0YXJ0XSk7CisrICAgICAgICAgbjIgPSBNKihl
QmFuZHNbc3RhcnQrMl0tZUJhbmRzW3N0YXJ0KzFdKTsKKysgICAgICAgICBvZmZzZXQgPSBNKmVC
YW5kc1tzdGFydF07CisrICAgICAgICAgLyogRHVwbGljYXRlIGVub3VnaCBvZiB0aGUgZmlyc3Qg
YmFuZCBmb2xkaW5nIGRhdGEgdG8gYmUgYWJsZSB0byBmb2xkIHRoZSBzZWNvbmQgYmFuZC4KKysg
ICAgICAgICAgICBDb3BpZXMgbm8gZGF0YSBmb3IgQ0VMVC1vbmx5IG1vZGUuICovCisrICAgICAg
ICAgT1BVU19DT1BZKCZub3JtW29mZnNldCtuMV0sICZub3JtW29mZnNldCsyKm4xIC0gbjJdLCBu
Mi1uMSk7CisrICAgICAgICAgaWYgKEM9PTIpCisrICAgICAgICAgICAgT1BVU19DT1BZKCZub3Jt
MltvZmZzZXQrbjFdLCAmbm9ybTJbb2Zmc2V0KzIqbjEgLSBuMl0sIG4yLW4xKTsKKysgICAgICB9
CisrCisgICAgICAgdGZfY2hhbmdlID0gdGZfcmVzW2ldOworICAgICAgIGlmIChpPj1tLT5lZmZF
QmFuZHMpCisgICAgICAgeworQEAgLTEyNTcsNyArMTI3MSw3IEBAIHZvaWQgcXVhbnRfYWxsX2Jh
bmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQsCisg
ICAgICAgICAgZm9sZF9zdGFydCA9IGxvd2JhbmRfb2Zmc2V0OworICAgICAgICAgIHdoaWxlKE0q
ZUJhbmRzWy0tZm9sZF9zdGFydF0gPiBlZmZlY3RpdmVfbG93YmFuZCk7CisgICAgICAgICAgZm9s
ZF9lbmQgPSBsb3diYW5kX29mZnNldC0xOworLSAgICAgICAgIHdoaWxlKE0qZUJhbmRzWysrZm9s
ZF9lbmRdIDwgZWZmZWN0aXZlX2xvd2JhbmQrTik7CisrICAgICAgICAgd2hpbGUoKytmb2xkX2Vu
ZCA8IGkgJiYgTSplQmFuZHNbZm9sZF9lbmRdIDwgZWZmZWN0aXZlX2xvd2JhbmQrTik7CisgICAg
ICAgICAgeF9jbSA9IHlfY20gPSAwOworICAgICAgICAgIGZvbGRfaSA9IGZvbGRfc3RhcnQ7IGRv
IHsKKyAgICAgICAgICAgIHhfY20gfD0gY29sbGFwc2VfbWFza3NbZm9sZF9pKkMrMF07CitkaWZm
IC0tZ2l0IGEvY2VsdC9xdWFudF9iYW5kcy5jIGIvY2VsdC9xdWFudF9iYW5kcy5jCitpbmRleCBl
NWVkOWVmLi44MmZiODIzIDEwMDY0NAorLS0tIGEvY2VsdC9xdWFudF9iYW5kcy5jCisrKysgYi9j
ZWx0L3F1YW50X2JhbmRzLmMKK0BAIC01NTIsNiArNTUyLDcgQEAgdm9pZCBsb2cyQW1wKGNvbnN0
IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQsCisgICAgICAgeworICAgICAgICAgIG9w
dXNfdmFsMTYgbGcgPSBBREQxNihvbGRFQmFuZHNbaStjKm0tPm5iRUJhbmRzXSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgU0hMMTYoKG9wdXNfdmFsMTYpZU1lYW5zW2ldLDYpKTsKKysgICAg
ICAgICBsZyA9IE1JTjMyKFFDT05TVDMyKDMyLmYsIDE2KSwgbGcpOworICAgICAgICAgIGVCYW5k
c1tpK2MqbS0+bmJFQmFuZHNdID0gUFNIUjMyKGNlbHRfZXhwMihsZyksNCk7CisgICAgICAgfQor
ICAgICAgIGZvciAoO2k8bS0+bmJFQmFuZHM7aSsrKQorZGlmZiAtLWdpdCBhL3NpbGsvTFBDX2lu
dl9wcmVkX2dhaW4uYyBiL3NpbGsvTFBDX2ludl9wcmVkX2dhaW4uYworaW5kZXggNjBjNDM5Yi4u
NmMzMDFkYSAxMDA2NDQKKy0tLSBhL3NpbGsvTFBDX2ludl9wcmVkX2dhaW4uYworKysrIGIvc2ls
ay9MUENfaW52X3ByZWRfZ2Fpbi5jCitAQCAtODQsOCArODQsMTMgQEAgc3RhdGljIG9wdXNfaW50
MzIgTFBDX2ludmVyc2VfcHJlZF9nYWluX1FBKCAgICAgICAgICAgICAgICAgLyogTyAgIFJldHVy
bnMgaW52ZXIKKyAKKyAgICAgICAgIC8qIFVwZGF0ZSBBUiBjb2VmZmljaWVudCAqLworICAgICAg
ICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyApIHsKKy0gICAgICAgICAgICB0bXBfUUEgPSBBb2xk
X1FBWyBuIF0gLSBNVUwzMl9GUkFDX1EoIEFvbGRfUUFbIGsgLSBuIC0gMSBdLCByY19RMzEsIDMx
ICk7CistICAgICAgICAgICAgQW5ld19RQVsgbiBdID0gTVVMMzJfRlJBQ19RKCB0bXBfUUEsIHJj
X211bHQyICwgbXVsdDJRICk7CisrICAgICAgICAgICAgb3B1c19pbnQ2NCB0bXA2NDsKKysgICAg
ICAgICAgICB0bXBfUUEgPSBzaWxrX1NVQl9TQVQzMiggQW9sZF9RQVsgbiBdLCBNVUwzMl9GUkFD
X1EoIEFvbGRfUUFbIGsgLSBuIC0gMSBdLCByY19RMzEsIDMxICkgKTsKKysgICAgICAgICAgICB0
bXA2NCA9IHNpbGtfUlNISUZUX1JPVU5ENjQoIHNpbGtfU01VTEwoIHRtcF9RQSwgcmNfbXVsdDIg
KSwgbXVsdDJRKTsKKysgICAgICAgICAgICBpZiggdG1wNjQgPiBzaWxrX2ludDMyX01BWCB8fCB0
bXA2NCA8IHNpbGtfaW50MzJfTUlOICkgeworKyAgICAgICAgICAgICAgIHJldHVybiAwOworKyAg
ICAgICAgICAgIH0KKysgICAgICAgICAgICBBbmV3X1FBWyBuIF0gPSAoIG9wdXNfaW50MzIgKXRt
cDY0OworICAgICAgICAgfQorICAgICB9CisgCitkaWZmIC0tZ2l0IGEvc2lsay9OTFNGX3N0YWJp
bGl6ZS5jIGIvc2lsay9OTFNGX3N0YWJpbGl6ZS5jCitpbmRleCA5NzlhYWJhLi4yZWYyMzk4IDEw
MDY0NAorLS0tIGEvc2lsay9OTFNGX3N0YWJpbGl6ZS5jCisrKysgYi9zaWxrL05MU0Zfc3RhYmls
aXplLmMKK0BAIC0xMzQsNyArMTM0LDcgQEAgdm9pZCBzaWxrX05MU0Zfc3RhYmlsaXplKAorIAor
ICAgICAgICAgLyogS2VlcCBkZWx0YV9taW4gZGlzdGFuY2UgYmV0d2VlbiB0aGUgTkxTRnMgKi8K
KyAgICAgICAgIGZvciggaSA9IDE7IGkgPCBMOyBpKysgKQorLSAgICAgICAgICAgIE5MU0ZfUTE1
W2ldID0gc2lsa19tYXhfaW50KCBOTFNGX1ExNVtpXSwgTkxTRl9RMTVbaS0xXSArIE5EZWx0YU1p
bl9RMTVbaV0gKTsKKysgICAgICAgICAgICBOTFNGX1ExNVtpXSA9IHNpbGtfbWF4X2ludCggTkxT
Rl9RMTVbaV0sIHNpbGtfQUREX1NBVDE2KCBOTFNGX1ExNVtpLTFdLCBORGVsdGFNaW5fUTE1W2ld
ICkgKTsKKyAKKyAgICAgICAgIC8qIExhc3QgTkxTRiBzaG91bGQgYmUgbm8gaGlnaGVyIHRoYW4g
MSAtIE5EZWx0YU1pbltMXSAqLworICAgICAgICAgTkxTRl9RMTVbTC0xXSA9IHNpbGtfbWluX2lu
dCggTkxTRl9RMTVbTC0xXSwgKDE8PDE1KSAtIE5EZWx0YU1pbl9RMTVbTF0gKTsKK2RpZmYgLS1n
aXQgYS9zaWxrL2RlY19BUEkuYyBiL3NpbGsvZGVjX0FQSS5jCitpbmRleCBlZmQ3OTE4Li4yMWJi
N2UwIDEwMDY0NAorLS0tIGEvc2lsay9kZWNfQVBJLmMKKysrKyBiL3NpbGsvZGVjX0FQSS5jCitA
QCAtNzIsNiArNzIsOSBAQCBvcHVzX2ludCBzaWxrX0luaXREZWNvZGVyKCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBlcnJvciBjbworICAgICBmb3IoIG4gPSAw
OyBuIDwgREVDT0RFUl9OVU1fQ0hBTk5FTFM7IG4rKyApIHsKKyAgICAgICAgIHJldCAgPSBzaWxr
X2luaXRfZGVjb2RlciggJmNoYW5uZWxfc3RhdGVbIG4gXSApOworICAgICB9CisrICAgIHNpbGtf
bWVtc2V0KCYoKHNpbGtfZGVjb2RlciAqKWRlY1N0YXRlKS0+c1N0ZXJlbywgMCwgc2l6ZW9mKCgo
c2lsa19kZWNvZGVyICopZGVjU3RhdGUpLT5zU3RlcmVvKSk7CisrICAgIC8qIE5vdCBzdHJpY3Rs
eSBuZWVkZWQsIGJ1dCBpdCdzIGNsZWFuZXIgdGhhdCB3YXkgKi8KKysgICAgKChzaWxrX2RlY29k
ZXIgKilkZWNTdGF0ZSktPnByZXZfZGVjb2RlX29ubHlfbWlkZGxlID0gMDsKKyAKKyAgICAgcmV0
dXJuIHJldDsKKyB9CitkaWZmIC0tZ2l0IGEvc2lsay9yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklS
LmMgYi9zaWxrL3Jlc2FtcGxlcl9wcml2YXRlX0lJUl9GSVIuYworaW5kZXggZGJkNmQ5YS4uOTFh
NDNhYSAxMDA2NDQKKy0tLSBhL3NpbGsvcmVzYW1wbGVyX3ByaXZhdGVfSUlSX0ZJUi5jCisrKysg
Yi9zaWxrL3Jlc2FtcGxlcl9wcml2YXRlX0lJUl9GSVIuYworQEAgLTc1LDEwICs3NSwxMCBAQCB2
b2lkIHNpbGtfcmVzYW1wbGVyX3ByaXZhdGVfSUlSX0ZJUigKKyAgICAgc2lsa19yZXNhbXBsZXJf
c3RhdGVfc3RydWN0ICpTID0gKHNpbGtfcmVzYW1wbGVyX3N0YXRlX3N0cnVjdCAqKVNTOworICAg
ICBvcHVzX2ludDMyIG5TYW1wbGVzSW47CisgICAgIG9wdXNfaW50MzIgbWF4X2luZGV4X1ExNiwg
aW5kZXhfaW5jcmVtZW50X1ExNjsKKy0gICAgb3B1c19pbnQxNiBidWZbIFJFU0FNUExFUl9NQVhf
QkFUQ0hfU0laRV9JTiArIFJFU0FNUExFUl9PUkRFUl9GSVJfMTIgXTsKKysgICAgb3B1c19pbnQx
NiBidWZbIDIqUkVTQU1QTEVSX01BWF9CQVRDSF9TSVpFX0lOICsgUkVTQU1QTEVSX09SREVSX0ZJ
Ul8xMiBdOworIAorICAgICAvKiBDb3B5IGJ1ZmZlcmVkIHNhbXBsZXMgdG8gc3RhcnQgb2YgYnVm
ZmVyICovCistICAgIHNpbGtfbWVtY3B5KCBidWYsIFMtPnNGSVIsIFJFU0FNUExFUl9PUkRFUl9G
SVJfMTIgKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOworKyAgICBzaWxrX21lbWNweSggYnVmLCBT
LT5zRklSLCBSRVNBTVBMRVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsK
KyAKKyAgICAgLyogSXRlcmF0ZSBvdmVyIGJsb2NrcyBvZiBmcmFtZVNpemVJbiBpbnB1dCBzYW1w
bGVzICovCisgICAgIGluZGV4X2luY3JlbWVudF9RMTYgPSBTLT5pbnZSYXRpb19RMTY7CitAQCAt
OTUsMTMgKzk1LDEzIEBAIHZvaWQgc2lsa19yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSKAorIAor
ICAgICAgICAgaWYoIGluTGVuID4gMCApIHsKKyAgICAgICAgICAgICAvKiBNb3JlIGl0ZXJhdGlv
bnMgdG8gZG87IGNvcHkgbGFzdCBwYXJ0IG9mIGZpbHRlcmVkIHNpZ25hbCB0byBiZWdpbm5pbmcg
b2YgYnVmZmVyICovCistICAgICAgICAgICAgc2lsa19tZW1jcHkoIGJ1ZiwgJmJ1ZlsgblNhbXBs
ZXNJbiA8PCAxIF0sIFJFU0FNUExFUl9PUkRFUl9GSVJfMTIgKiBzaXplb2YoIG9wdXNfaW50MzIg
KSApOworKyAgICAgICAgICAgIHNpbGtfbWVtbW92ZSggYnVmLCAmYnVmWyBuU2FtcGxlc0luIDw8
IDEgXSwgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQxNiApICk7Cisg
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgfQorICAgICB9
CisgCisgICAgIC8qIENvcHkgbGFzdCBwYXJ0IG9mIGZpbHRlcmVkIHNpZ25hbCB0byB0aGUgc3Rh
dGUgZm9yIHRoZSBuZXh0IGNhbGwgKi8KKy0gICAgc2lsa19tZW1jcHkoIFMtPnNGSVIsICZidWZb
IG5TYW1wbGVzSW4gPDwgMSBdLCBSRVNBTVBMRVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVz
X2ludDMyICkgKTsKKysgICAgc2lsa19tZW1jcHkoIFMtPnNGSVIsICZidWZbIG5TYW1wbGVzSW4g
PDwgMSBdLCBSRVNBTVBMRVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsK
KyB9CisgCitkaWZmIC0tZ2l0IGEvc3JjL29wdXNfZGVjb2Rlci5jIGIvc3JjL29wdXNfZGVjb2Rl
ci5jCitpbmRleCAwY2M1NmY4Li44YTMwZmJjIDEwMDY0NAorLS0tIGEvc3JjL29wdXNfZGVjb2Rl
ci5jCisrKysgYi9zcmMvb3B1c19kZWNvZGVyLmMKK0BAIC01OTUsMTYgKzU5NSwxNCBAQCBzdGF0
aWMgaW50IG9wdXNfcGFja2V0X3BhcnNlX2ltcGwoY29uc3QgdW5zaWduZWQgY2hhciAqZGF0YSwg
aW50IGxlbiwKKyAgICAgICAvKiBQYWRkaW5nIGZsYWcgaXMgYml0IDYgKi8KKyAgICAgICBpZiAo
Y2gmMHg0MCkKKyAgICAgICB7CistICAgICAgICAgaW50IHBhZGRpbmc9MDsKKyAgICAgICAgICBp
bnQgcDsKKyAgICAgICAgICBkbyB7CisgICAgICAgICAgICAgaWYgKGxlbjw9MCkKKyAgICAgICAg
ICAgICAgICByZXR1cm4gT1BVU19JTlZBTElEX1BBQ0tFVDsKKyAgICAgICAgICAgICBwID0gKmRh
dGErKzsKKyAgICAgICAgICAgICBsZW4tLTsKKy0gICAgICAgICAgICBwYWRkaW5nICs9IHA9PTI1
NSA/IDI1NDogcDsKKysgICAgICAgICAgICBsZW4gLT0gcD09MjU1ID8gMjU0OiBwOworICAgICAg
ICAgIH0gd2hpbGUgKHA9PTI1NSk7CistICAgICAgICAgbGVuIC09IHBhZGRpbmc7CisgICAgICAg
fQorICAgICAgIGlmIChsZW48MCkKKyAgICAgICAgICByZXR1cm4gT1BVU19JTlZBTElEX1BBQ0tF
VDsKK2RpZmYgLS1naXQgYS9ydW5fdmVjdG9ycy5zaCBiL3J1bl92ZWN0b3JzLnNoCitpbmRleCA3
Y2QyM2VkLi40ODQxYjBhIDEwMDc1NQorLS0tIGEvcnVuX3ZlY3RvcnMuc2gKKysrKyBiL3J1bl92
ZWN0b3JzLnNoCitAQCAtMSwzICsxLDUgQEAKKysjIS9iaW4vc2gKKysjCisgIyBDb3B5cmlnaHQg
KGMpIDIwMTEtMjAxMiBJRVRGIFRydXN0LCBKZWFuLU1hcmMgVmFsaW4uIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgIworICMgIFRoaXMgZmlsZSBpcyBleHRyYWN0ZWQgZnJvbSBSRkM2NzE2LiBQbGVh
c2Ugc2VlIHRoYXQgUkZDIGZvciBhZGRpdGlvbmFsCitAQCAtMzEsMTAgKzMzLDggQEAKKyAjICBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMKKyAjICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAKKy0jIS9iaW4vc2gKKy0KKy1ybSBsb2dzX21vbm8udHh0Cist
cm0gbG9nc19zdGVyZW8udHh0Cisrcm0gLWYgbG9nc19tb25vLnR4dCBsb2dzX21vbm8yLnR4dAor
K3JtIC1mIGxvZ3Nfc3RlcmVvLnR4dCBsb2dzX3N0ZXJlbzIudHh0CisgCisgaWYgWyAiJCMiIC1u
ZSAiMyIgXTsgdGhlbgorICAgICBlY2hvICJ1c2FnZTogcnVuX3ZlY3RvcnMuc2ggPGV4ZWMgcGF0
aD4gPHZlY3RvciBwYXRoPiA8cmF0ZT4iCitAQCAtNDUsMTggKzQ1LDIzIEBAIENNRF9QQVRIPSQx
CisgVkVDVE9SX1BBVEg9JDIKKyBSQVRFPSQzCisgCistT1BVU19ERU1PPSRDTURfUEFUSC9vcHVz
X2RlbW8KKy1PUFVTX0NPTVBBUkU9JENNRF9QQVRIL29wdXNfY29tcGFyZQorKzogJHtPUFVTX0RF
TU86PSRDTURfUEFUSC9vcHVzX2RlbW99CisrOiAke09QVVNfQ09NUEFSRTo9JENNRF9QQVRIL29w
dXNfY29tcGFyZX0KKyAKKyBpZiBbIC1kICRWRUNUT1JfUEFUSCBdOyB0aGVuCisgICAgIGVjaG8g
VGVzdCB2ZWN0b3JzIGZvdW5kIGluICRWRUNUT1JfUEFUSAorIGVsc2UKKyAgICAgZWNobyBObyB0
ZXN0IHZlY3RvcnMgZm91bmQKKy0gICAgI0Rvbid0IG1ha2UgdGhlIHRlc3QgZmFpbCBoZXJlIGJl
Y2F1c2UgdGhlIHRlc3QgdmVjdG9ycyB3aWxsIGJlCistICAgICNkaXN0cmlidXRlZCBzZXBhcmF0
ZWx5CisrICAgICNEb24ndCBtYWtlIHRoZSB0ZXN0IGZhaWwgaGVyZSBiZWNhdXNlIHRoZSB0ZXN0
IHZlY3RvcnMKKysgICAgI3dpbGwgYmUgZGlzdHJpYnV0ZWQgc2VwYXJhdGVseQorICAgICBleGl0
IDAKKyBmaQorIAorK2lmIFsgISAteCAkT1BVU19DT01QQVJFIF07IHRoZW4KKysgICAgZWNobyBF
UlJPUjogQ29tcGFyZSBwcm9ncmFtIG5vdCBmb3VuZDogJE9QVVNfQ09NUEFSRQorKyAgICBleGl0
IDEKKytmaQorKworIGlmIFsgLXggJE9QVVNfREVNTyBdOyB0aGVuCisgICAgIGVjaG8gRGVjb2Rp
bmcgd2l0aCAkT1BVU19ERU1PCisgZWxzZQorQEAgLTgyLDkgKzg3LDExIEBAIGRvCisgICAgICAg
ICBlY2hvIEVSUk9SOiBkZWNvZGluZyBmYWlsZWQKKyAgICAgICAgIGV4aXQgMQorICAgICBmaQor
LSAgICAkT1BVU19DT01QQVJFIC1yICRSQVRFICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUu
ZGVjIHRtcC5vdXQgPj4gbG9nc19tb25vLnR4dCAyPiYxCisrICAgICRPUFVTX0NPTVBBUkUgLXIg
JFJBVEUgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3Ike2ZpbGV9LmRlYyB0bXAub3V0ID4+IGxvZ3Nf
bW9uby50eHQgMj4mMQorICAgICBmbG9hdF9yZXQ9JD8KKy0gICAgaWYgWyAiJGZsb2F0X3JldCIg
LWVxICIwIiBdOyB0aGVuCisrICAgICRPUFVTX0NPTVBBUkUgLXIgJFJBVEUgJFZFQ1RPUl9QQVRI
L3Rlc3R2ZWN0b3Ike2ZpbGV9bS5kZWMgdG1wLm91dCA+PiBsb2dzX21vbm8yLnR4dCAyPiYxCisr
ICAgIGZsb2F0X3JldDI9JD8KKysgICAgaWYgWyAiJGZsb2F0X3JldCIgLWVxICIwIiBdIHx8IFsg
IiRmbG9hdF9yZXQyIiAtZXEgIjAiIF07IHRoZW4KKyAgICAgICAgIGVjaG8gb3V0cHV0IG1hdGNo
ZXMgcmVmZXJlbmNlCisgICAgIGVsc2UKKyAgICAgICAgIGVjaG8gRVJST1I6IG91dHB1dCBkb2Vz
IG5vdCBtYXRjaCByZWZlcmVuY2UKK0BAIC0xMTEsOSArMTE4LDExIEBAIGRvCisgICAgICAgICBl
Y2hvIEVSUk9SOiBkZWNvZGluZyBmYWlsZWQKKyAgICAgICAgIGV4aXQgMQorICAgICBmaQorLSAg
ICAkT1BVU19DT01QQVJFIC1zIC1yICRSQVRFICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUu
ZGVjIHRtcC5vdXQgPj4gbG9nc19zdGVyZW8udHh0IDI+JjEKKysgICAgJE9QVVNfQ09NUEFSRSAt
cyAtciAkUkFURSAkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciR7ZmlsZX0uZGVjIHRtcC5vdXQgPj4g
bG9nc19zdGVyZW8udHh0IDI+JjEKKyAgICAgZmxvYXRfcmV0PSQ/CistICAgIGlmIFsgIiRmbG9h
dF9yZXQiIC1lcSAiMCIgXTsgdGhlbgorKyAgICAkT1BVU19DT01QQVJFIC1zIC1yICRSQVRFICRW
RUNUT1JfUEFUSC90ZXN0dmVjdG9yJHtmaWxlfW0uZGVjIHRtcC5vdXQgPj4gbG9nc19zdGVyZW8y
LnR4dCAyPiYxCisrICAgIGZsb2F0X3JldDI9JD8KKysgICAgaWYgWyAiJGZsb2F0X3JldCIgLWVx
ICIwIiBdIHx8IFsgIiRmbG9hdF9yZXQyIiAtZXEgIjAiIF07IHRoZW4KKyAgICAgICAgIGVjaG8g
b3V0cHV0IG1hdGNoZXMgcmVmZXJlbmNlCisgICAgIGVsc2UKKyAgICAgICAgIGVjaG8gRVJST1I6
IG91dHB1dCBkb2VzIG5vdCBtYXRjaCByZWZlcmVuY2UKK0BAIC0xMjUsNSArMTM0LDEwIEBAIGRv
bmUKKyAKKyAKKyBlY2hvIEFsbCB0ZXN0cyBoYXZlIHBhc3NlZCBzdWNjZXNzZnVsbHkKKy1ncmVw
IHF1YWxpdHkgbG9nc19tb25vLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee3ByaW50ICJBdmVyYWdl
IG1vbm8gcXVhbGl0eSBpcyIsIHN1bS9OUiwgIiUifScKKy1ncmVwIHF1YWxpdHkgbG9nc19zdGVy
ZW8udHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7cHJpbnQgIkF2ZXJhZ2Ugc3RlcmVvIHF1YWxpdHkg
aXMiLCBzdW0vTlIsICIlIn0nCisrbW9ubzE9YGdyZXAgcXVhbGl0eSBsb2dzX21vbm8udHh0IHwg
YXdrICd7c3VtKz0kNH1FTkR7aWYgKE5SID09IDEyKSBzdW0gLz0gMTI7IGVsc2Ugc3VtID0gMDsg
cHJpbnQgc3VtfSdgCisrbW9ubzI9YGdyZXAgcXVhbGl0eSBsb2dzX21vbm8yLnR4dCB8IGF3ayAn
e3N1bSs9JDR9RU5Ee2lmIChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNlIHN1bSA9IDA7IHByaW50
IHN1bX0nYAorK2VjaG8gJG1vbm8xICRtb25vMiB8IGF3ayAne2lmICgkMiA+ICQxKSAkMSA9ICQy
OyBwcmludCAiQXZlcmFnZSBtb25vIHF1YWxpdHkgaXMiLCAkMSwgIiUifScKKysKKytzdGVyZW8x
PWBncmVwIHF1YWxpdHkgbG9nc19zdGVyZW8udHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7aWYgKE5S
ID09IDEyKSBzdW0gLz0gMTI7IGVsc2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdgCisrc3RlcmVvMj1g
Z3JlcCBxdWFsaXR5IGxvZ3Nfc3RlcmVvMi50eHQgfCBhd2sgJ3tzdW0rPSQ0fUVORHtpZiAoTlIg
PT0gMTIpIHN1bSAvPSAxMjsgZWxzZSBzdW0gPSAwOyBwcmludCBzdW19J2AKKytlY2hvICRzdGVy
ZW8xICRzdGVyZW8yIHwgYXdrICd7aWYgKCQyID4gJDEpICQxID0gJDI7IHByaW50ICJBdmVyYWdl
IHN0ZXJlbyBxdWFsaXR5IGlzIiwgJDEsICIlIn0nCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9yZWxlYXNlLnR4
dCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvZG9jL3JlbGVhc2UudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZkM2ZmYTIzOTAxYzA0ZDJmYjk4ODZmNTJk
NGNiNzRjYTQyN2I2ZDEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9yZWxlYXNlLnR4dApAQCAtMCww
ICsxLDQzIEBACis9IFJlbGVhc2UgY2hlY2tsaXN0ID0KKworPT0gU291cmNlIHJlbGVhc2UgPT0K
KworLSBDaGVjayBmb3IgdW5jb21taXR0ZWQgY2hhbmdlcyB0byBtYXN0ZXIuCistIFVwZGF0ZSBP
UFVTX0xUXyogQVBJIHZlcnNpb25pbmcgaW4gY29uZmlndXJlLmFjLgorLSBUYWcgdGhlIHJlbGVh
c2UgY29tbWl0IHdpdGggJ2dpdCB0YWcgLXMgdk4uTScuCisgLSBJbmNsdWRlIHJlbGVhc2Ugbm90
ZXMgaW4gdGhlIHRhZyBhbm5vdGF0aW9uLgorLSBWZXJpZnkgJ21ha2UgZGlzdGNoZWNrJyBwcm9k
dWNlcyBhIHRhcmJhbGwgd2l0aAorICB0aGUgZGVzaXJlZCBuYW1lLgorLSBQdXNoIHRhZyB0byBw
dWJsaWMgcmVwby4KKy0gVXBsb2FkIHNvdXJjZSBwYWNrYWdlICdvcHVzLSR7dmVyc2lvbn0udGFy
Lmd6JworIC0gQWRkIHRvIGh0dHBzOi8vc3ZuLnhpcGgub3JnL3JlbGVhc2VzL29wdXMvCisgLSBV
cGRhdGUgY2hlY2tzdW0gZmlsZXMKKyAtIHN2biBjb21taXQKKyAtIENvcHkgdG8gYXJjaGl2ZS5t
b3ppbGxhLm9yZy9wdWIvb3B1cy8KKyAtIFVwZGF0ZSBjaGVja3N1bSBmaWxlcyB0aGVyZSBhcyB3
ZWxsLgorLSBBZGQgcmVsZWFzZSBub3RlcyB0byBodHRwczovL2dpdC54aXBoLm9yZy9vcHVzLXdl
YnNpdGUuZ2l0CistIFVwZGF0ZSBsaW5rcyBhbmQgY2hlY2tzdW1zIG9uIHRoZSBkb3dubG9hZHMg
cGFnZS4KKy0gQWRkIGEgY29weSBvZiB0aGUgZG9jdW1lbnRhdGlvbiB0byA8aHR0cHM6Ly93d3cu
b3B1cy1jb2RlYy5vcmcvZG9jcy8+CisgIGFuZCB1cGRhdGUgdGhlIGxpbmtzLgorLSBVcGRhdGUg
L3RvcGljIGluICNvcHVzIElSQyBjaGFubmVsLgorCitSZWxlYXNlcyBhcmUgY29tbWl0ZWQgdG8g
aHR0cHM6Ly9zdm4ueGlwaC5vcmcvcmVsZWFzZXMvb3B1cy8KK3doaWNoIHByb3BhZ2F0ZXMgdG8g
ZG93bmxvYWRzLnhpcGgub3JnLCBhbmQgY29waWVkIG1hbnVhbGx5Cit0byBodHRwczovL2FyY2hp
dmUubW96aWxsYS5vcmcvcHViL29wdXMvCisKK1dlYnNpdGUgdXBkYXRlcyBhcmUgY29tbWl0dGVk
IHRvIGh0dHBzOi8vZ2l0LnhpcGgub3JnL29wdXMtd2Vic2l0ZS5naXQKK3doaWNoIHByb3BhZ2F0
ZXMgdG8gaHR0cHM6Ly9vcHVzLWNvZGVjLm9yZy8KKworPT0gQmluYXJ5IHJlbGVhc2UgPT0KKwor
V2UgdXN1YWxseSBidWlsZCBvcHVzLXRvb2xzIGJpbmFyaWVzIGZvciBNYWNPUyBhbmQgV2luZG93
cy4KKworQmluYXJ5IHJlbGVhc2VzIGFyZSBjb3BpZWQgbWFudWFsbHkgdG8KK2h0dHBzOi8vYXJj
aGl2ZS5tb3ppbGxhLm9yZy9wdWIvb3B1cy93aW4zMi8KKworRm9yIE1hYywgc3VibWl0IGEgcHVs
bCByZXF1ZXN0IHRvIGhvbWVicmV3LgorCis9PSBXZWJzaXRlIHVwZGF0ZXMgPT0KKworRm9yIG1h
am9yIHJlbGVhc2VzLCByZWNyZWF0ZSB0aGUgZmlsZXMgb24gaHR0cHM6Ly9vcHVzLWNvZGVjLm9y
Zy9leGFtcGxlcy8KK3dpdGggdGhlIG5leHQgZW5jb2Rlci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvaW5jbHVkZS9v
cHVzX2RlZmluZXMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvaW5jbHVkZS9vcHVzX2RlZmluZXMuaAppbmRleCAzMTU0MTJkZDFkMjM4
M2NmOTAwOTY5MGQzYWExMDJhYWEzMGFhODEzLi4zM2M1YWNkYjMzOTM1MDFjOWRkNjI4OTc4Yzc4
ZmQyMjY0NTlkYzU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUvb3B1c19kZWZpbmVzLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNs
dWRlL29wdXNfZGVmaW5lcy5oCkBAIC0xNjUsOCArMTY1LDkgQEAgZXh0ZXJuICJDIiB7CiAjZGVm
aW5lIE9QVVNfR0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTl9SRVFVRVNUIDQwNDEKICNkZWZpbmUg
T1BVU19TRVRfUFJFRElDVElPTl9ESVNBQkxFRF9SRVFVRVNUIDQwNDIKICNkZWZpbmUgT1BVU19H
RVRfUFJFRElDVElPTl9ESVNBQkxFRF9SRVFVRVNUIDQwNDMKLQogLyogRG9uJ3QgdXNlIDQwNDUs
IGl0J3MgYWxyZWFkeSB0YWtlbiBieSBPUFVTX0dFVF9HQUlOX1JFUVVFU1QgKi8KKyNkZWZpbmUg
T1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1QgNDA0NgorI2RlZmluZSBP
UFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVCA0MDQ3CiAKIC8qIE1hY3Jv
cyB0byB0cmlnZ2VyIGNvbXBpbGF0aW9uIGVycm9ycyB3aGVuIHRoZSB3cm9uZyB0eXBlcyBhcmUg
cHJvdmlkZWQgdG8gYSBDVEwgKi8KICNkZWZpbmUgX19vcHVzX2NoZWNrX2ludCh4KSAoKCh2b2lk
KSgoeCkgPT0gKG9wdXNfaW50MzIpMCkpLCAob3B1c19pbnQzMikoeCkpCkBAIC0yMDgsNiArMjA5
LDkgQEAgZXh0ZXJuICJDIiB7CiAjZGVmaW5lIE9QVVNfRlJBTUVTSVpFXzIwX01TICAgICAgICAg
ICAgICAgICA1MDA0IC8qKjwgVXNlIDIwIG1zIGZyYW1lcyAqLwogI2RlZmluZSBPUFVTX0ZSQU1F
U0laRV80MF9NUyAgICAgICAgICAgICAgICAgNTAwNSAvKio8IFVzZSA0MCBtcyBmcmFtZXMgKi8K
ICNkZWZpbmUgT1BVU19GUkFNRVNJWkVfNjBfTVMgICAgICAgICAgICAgICAgIDUwMDYgLyoqPCBV
c2UgNjAgbXMgZnJhbWVzICovCisjZGVmaW5lIE9QVVNfRlJBTUVTSVpFXzgwX01TICAgICAgICAg
ICAgICAgICA1MDA3IC8qKjwgVXNlIDgwIG1zIGZyYW1lcyAqLworI2RlZmluZSBPUFVTX0ZSQU1F
U0laRV8xMDBfTVMgICAgICAgICAgICAgICAgNTAwOCAvKio8IFVzZSAxMDAgbXMgZnJhbWVzICov
CisjZGVmaW5lIE9QVVNfRlJBTUVTSVpFXzEyMF9NUyAgICAgICAgICAgICAgICA1MDA5IC8qKjwg
VXNlIDEyMCBtcyBmcmFtZXMgKi8KIAogLyoqQH0qLwogCkBAIC01NjYsNyArNTcwLDkgQEAgZXh0
ZXJuICJDIiB7CiAgICogPGR0Pk9QVVNfRlJBTUVTSVpFXzIwX01TPC9kdD48ZGQ+VXNlIDIwIG1z
IGZyYW1lcy48L2RkPgogICAqIDxkdD5PUFVTX0ZSQU1FU0laRV80MF9NUzwvZHQ+PGRkPlVzZSA0
MCBtcyBmcmFtZXMuPC9kZD4KICAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfNjBfTVM8L2R0PjxkZD5V
c2UgNjAgbXMgZnJhbWVzLjwvZGQ+Ci0gICogPGR0Pk9QVVNfRlJBTUVTSVpFX1ZBUklBQkxFPC9k
dD48ZGQ+T3B0aW1pemUgdGhlIGZyYW1lIHNpemUgZHluYW1pY2FsbHkuPC9kZD4KKyAgKiA8ZHQ+
T1BVU19GUkFNRVNJWkVfODBfTVM8L2R0PjxkZD5Vc2UgODAgbXMgZnJhbWVzLjwvZGQ+CisgICog
PGR0Pk9QVVNfRlJBTUVTSVpFXzEwMF9NUzwvZHQ+PGRkPlVzZSAxMDAgbXMgZnJhbWVzLjwvZGQ+
CisgICogPGR0Pk9QVVNfRlJBTUVTSVpFXzEyMF9NUzwvZHQ+PGRkPlVzZSAxMjAgbXMgZnJhbWVz
LjwvZGQ+CiAgICogPC9kbD4KICAgKiBAaGlkZWluaXRpYWxpemVyICovCiAjZGVmaW5lIE9QVVNf
U0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTih4KSBPUFVTX1NFVF9FWFBFUlRfRlJBTUVfRFVSQVRJ
T05fUkVRVUVTVCwgX19vcHVzX2NoZWNrX2ludCh4KQpAQCAtNTgxLDcgKzU4Nyw5IEBAIGV4dGVy
biAiQyIgewogICAqIDxkdD5PUFVTX0ZSQU1FU0laRV8yMF9NUzwvZHQ+PGRkPlVzZSAyMCBtcyBm
cmFtZXMuPC9kZD4KICAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfNDBfTVM8L2R0PjxkZD5Vc2UgNDAg
bXMgZnJhbWVzLjwvZGQ+CiAgICogPGR0Pk9QVVNfRlJBTUVTSVpFXzYwX01TPC9kdD48ZGQ+VXNl
IDYwIG1zIGZyYW1lcy48L2RkPgotICAqIDxkdD5PUFVTX0ZSQU1FU0laRV9WQVJJQUJMRTwvZHQ+
PGRkPk9wdGltaXplIHRoZSBmcmFtZSBzaXplIGR5bmFtaWNhbGx5LjwvZGQ+CisgICogPGR0Pk9Q
VVNfRlJBTUVTSVpFXzgwX01TPC9kdD48ZGQ+VXNlIDgwIG1zIGZyYW1lcy48L2RkPgorICAqIDxk
dD5PUFVTX0ZSQU1FU0laRV8xMDBfTVM8L2R0PjxkZD5Vc2UgMTAwIG1zIGZyYW1lcy48L2RkPgor
ICAqIDxkdD5PUFVTX0ZSQU1FU0laRV8xMjBfTVM8L2R0PjxkZD5Vc2UgMTIwIG1zIGZyYW1lcy48
L2RkPgogICAqIDwvZGw+CiAgICogQGhpZGVpbml0aWFsaXplciAqLwogI2RlZmluZSBPUFVTX0dF
VF9FWFBFUlRfRlJBTUVfRFVSQVRJT04oeCkgT1BVU19HRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9O
X1JFUVVFU1QsIF9fb3B1c19jaGVja19pbnRfcHRyKHgpCkBAIC02ODEsNiArNjg5LDMwIEBAIGV4
dGVybiAiQyIgewogICAqLwogI2RlZmluZSBPUFVTX0dFVF9TQU1QTEVfUkFURSh4KSBPUFVTX0dF
VF9TQU1QTEVfUkFURV9SRVFVRVNULCBfX29wdXNfY2hlY2tfaW50X3B0cih4KQogCisvKiogSWYg
c2V0IHRvIDEsIGRpc2FibGVzIHRoZSB1c2Ugb2YgcGhhc2UgaW52ZXJzaW9uIGZvciBpbnRlbnNp
dHkgc3RlcmVvLAorICAqIGltcHJvdmluZyB0aGUgcXVhbGl0eSBvZiBtb25vIGRvd25taXhlcywg
YnV0IHNsaWdodGx5IHJlZHVjaW5nIG5vcm1hbAorICAqIHN0ZXJlbyBxdWFsaXR5LiBEaXNhYmxp
bmcgcGhhc2UgaW52ZXJzaW9uIGluIHRoZSBkZWNvZGVyIGRvZXMgbm90IGNvbXBseQorICAqIHdp
dGggUkZDIDY3MTYsIGFsdGhvdWdoIGl0IGRvZXMgbm90IGNhdXNlIGFueSBpbnRlcm9wZXJhYmls
aXR5IGlzc3VlIGFuZAorICAqIGlzIGV4cGVjdGVkIHRvIGJlY29tZSBwYXJ0IG9mIHRoZSBPcHVz
IHN0YW5kYXJkIG9uY2UgUkZDIDY3MTYgaXMgdXBkYXRlZAorICAqIGJ5IGRyYWZ0LWlldGYtY29k
ZWMtb3B1cy11cGRhdGUuCisgICogQHNlZSBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJM
RUQKKyAgKiBAcGFyYW1baW5dIHggPHR0Pm9wdXNfaW50MzI8L3R0PjogQWxsb3dlZCB2YWx1ZXM6
CisgICogPGRsPgorICAqIDxkdD4wPC9kdD48ZGQ+RW5hYmxlIHBoYXNlIGludmVyc2lvbiAoZGVm
YXVsdCkuPC9kZD4KKyAgKiA8ZHQ+MTwvZHQ+PGRkPkRpc2FibGUgcGhhc2UgaW52ZXJzaW9uLjwv
ZGQ+CisgICogPC9kbD4KKyAgKiBAaGlkZWluaXRpYWxpemVyICovCisjZGVmaW5lIE9QVVNfU0VU
X1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCh4KSBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElT
QUJMRURfUkVRVUVTVCwgX19vcHVzX2NoZWNrX2ludCh4KQorLyoqIEdldHMgdGhlIGVuY29kZXIn
cyBjb25maWd1cmVkIHBoYXNlIGludmVyc2lvbiBzdGF0dXMuCisgICogQHNlZSBPUFVTX1NFVF9Q
SEFTRV9JTlZFUlNJT05fRElTQUJMRUQKKyAgKiBAcGFyYW1bb3V0XSB4IDx0dD5vcHVzX2ludDMy
ICo8L3R0PjogUmV0dXJucyBvbmUgb2YgdGhlIGZvbGxvd2luZyB2YWx1ZXM6CisgICogPGRsPgor
ICAqIDxkdD4wPC9kdD48ZGQ+U3RlcmVvIHBoYXNlIGludmVyc2lvbiBlbmFibGVkIChkZWZhdWx0
KS48L2RkPgorICAqIDxkdD4xPC9kdD48ZGQ+U3RlcmVvIHBoYXNlIGludmVyc2lvbiBkaXNhYmxl
ZC48L2RkPgorICAqIDwvZGw+CisgICogQGhpZGVpbml0aWFsaXplciAqLworI2RlZmluZSBPUFVT
X0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoeCkgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9O
X0RJU0FCTEVEX1JFUVVFU1QsIF9fb3B1c19jaGVja19pbnRfcHRyKHgpCisKIC8qKkB9Ki8KIAog
LyoqIEBkZWZncm91cCBvcHVzX2RlY29kZXJjdGxzIERlY29kZXIgcmVsYXRlZCBDVExzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2luY2x1ZGUvb3B1c19tdWx0aXN0cmVhbS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfbXVsdGlzdHJl
YW0uaAppbmRleCAzNjIyZTAwOWZiNTMwNTJkZGIxMzc1Y2YzNzBlYjg1ZWIwMjk3MGU3Li5iYWJj
ZWU2OTA1YmY5ZjcwZDkyMmViOTAzZDI4YTkxNTFmMDUzNTA1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUv
b3B1c19tdWx0aXN0cmVhbS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvaW5jbHVkZS9vcHVzX211bHRpc3RyZWFtLmgKQEAgLTI3
Myw3ICsyNzMsNyBAQCBPUFVTX0VYUE9SVCBPUFVTX1dBUk5fVU5VU0VEX1JFU1VMVCBPcHVzTVNF
bmNvZGVyICpvcHVzX211bHRpc3RyZWFtX3N1cnJvdW5kX2VuYwogICAgICAgdW5zaWduZWQgY2hh
ciAqbWFwcGluZywKICAgICAgIGludCBhcHBsaWNhdGlvbiwKICAgICAgIGludCAqZXJyb3IKLSkg
T1BVU19BUkdfTk9OTlVMTCg1KTsKKykgT1BVU19BUkdfTk9OTlVMTCg0KSBPUFVTX0FSR19OT05O
VUxMKDUpIE9QVVNfQVJHX05PTk5VTEwoNik7CiAKIC8qKiBJbml0aWFsaXplIGEgcHJldmlvdXNs
eSBhbGxvY2F0ZWQgbXVsdGlzdHJlYW0gZW5jb2RlciBzdGF0ZS4KICAgKiBUaGUgbWVtb3J5IHBv
aW50ZWQgdG8gYnkgXGEgc3QgbXVzdCBiZSBhdCBsZWFzdCB0aGUgc2l6ZSByZXR1cm5lZCBieQpA
QCAtMzQyLDcgKzM0Miw3IEBAIE9QVVNfRVhQT1JUIGludCBvcHVzX211bHRpc3RyZWFtX3N1cnJv
dW5kX2VuY29kZXJfaW5pdCgKICAgICAgIGludCAqY291cGxlZF9zdHJlYW1zLAogICAgICAgdW5z
aWduZWQgY2hhciAqbWFwcGluZywKICAgICAgIGludCBhcHBsaWNhdGlvbgotKSBPUFVTX0FSR19O
T05OVUxMKDEpIE9QVVNfQVJHX05PTk5VTEwoNik7CispIE9QVVNfQVJHX05PTk5VTEwoMSkgT1BV
U19BUkdfTk9OTlVMTCg1KSBPUFVTX0FSR19OT05OVUxMKDYpIE9QVVNfQVJHX05PTk5VTEwoNyk7
CiAKIC8qKiBFbmNvZGVzIGEgbXVsdGlzdHJlYW0gT3B1cyBmcmFtZS4KICAgKiBAcGFyYW0gc3Qg
PHR0Pk9wdXNNU0VuY29kZXIqPC90dD46IE11bHRpc3RyZWFtIGVuY29kZXIgc3RhdGUuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2luY2x1ZGUvb3B1c190eXBlcy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfdHlwZXMuaAppbmRleCBi
MjhlMDNhZWEyMDJkOTdmZTcxY2Y1OGFmYzkwZGFjMjA4NDE0NGE5Li43Y2Y2NzU1ODBmZmIwYWQ5
YmE3YjA0MGE1YzAzZWIyODI4OTEwNDg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUvb3B1c190eXBlcy5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvaW5jbHVkZS9vcHVzX3R5cGVzLmgKQEAgLTMzLDE0ICszMywyOSBAQAogI2lmbmRlZiBP
UFVTX1RZUEVTX0gKICNkZWZpbmUgT1BVU19UWVBFU19ICiAKKyNkZWZpbmUgb3B1c19pbnQgICAg
ICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAvKiB1c2VkIGZvciBjb3VudGVycyBldGM7IGF0
IGxlYXN0IDE2IGJpdHMgKi8KKyNkZWZpbmUgb3B1c19pbnQ2NCAgICAgICBsb25nIGxvbmcKKyNk
ZWZpbmUgb3B1c19pbnQ4ICAgICAgICBzaWduZWQgY2hhcgorCisjZGVmaW5lIG9wdXNfdWludCAg
ICAgICAgdW5zaWduZWQgaW50ICAgICAgICAgICAgLyogdXNlZCBmb3IgY291bnRlcnMgZXRjOyBh
dCBsZWFzdCAxNiBiaXRzICovCisjZGVmaW5lIG9wdXNfdWludDY0ICAgICAgdW5zaWduZWQgbG9u
ZyBsb25nCisjZGVmaW5lIG9wdXNfdWludDggICAgICAgdW5zaWduZWQgY2hhcgorCiAvKiBVc2Ug
dGhlIHJlYWwgc3RkaW50LmggaWYgaXQncyB0aGVyZSAodGFrZW4gZnJvbSBQYXVsIEhzaWVoJ3Mg
cHN0ZGludC5oKSAqLwotI2lmIChkZWZpbmVkKF9fU1REQ19fKSAmJiBfX1NURENfXyAmJiBfX1NU
RENfVkVSU0lPTl9fID49IDE5OTkwMUwpIHx8IChkZWZpbmVkKF9fR05VQ19fKSAmJiAoZGVmaW5l
ZChfU1RESU5UX0gpIHx8IGRlZmluZWQoX1NURElOVF9IXykpIHx8IGRlZmluZWQgKEhBVkVfU1RE
SU5UX0gpKQorI2lmIChkZWZpbmVkKF9fU1REQ19fKSAmJiBfX1NURENfXyAmJiBkZWZpbmVkKF9f
U1REQ19WRVJTSU9OX18pICYmIF9fU1REQ19WRVJTSU9OX18gPj0gMTk5OTAxTCkgfHwgKGRlZmlu
ZWQoX19HTlVDX18pICYmIChkZWZpbmVkKF9TVERJTlRfSCkgfHwgZGVmaW5lZChfU1RESU5UX0hf
KSkgfHwgZGVmaW5lZCAoSEFWRV9TVERJTlRfSCkpCiAjaW5jbHVkZSA8c3RkaW50Lmg+Ci0KKyMg
IHVuZGVmIG9wdXNfaW50NjQKKyMgIHVuZGVmIG9wdXNfaW50OAorIyAgdW5kZWYgb3B1c191aW50
NjQKKyMgIHVuZGVmIG9wdXNfdWludDgKKyAgIHR5cGVkZWYgaW50OF90IG9wdXNfaW50ODsKKyAg
IHR5cGVkZWYgdWludDhfdCBvcHVzX3VpbnQ4OwogICAgdHlwZWRlZiBpbnQxNl90IG9wdXNfaW50
MTY7CiAgICB0eXBlZGVmIHVpbnQxNl90IG9wdXNfdWludDE2OwogICAgdHlwZWRlZiBpbnQzMl90
IG9wdXNfaW50MzI7CiAgICB0eXBlZGVmIHVpbnQzMl90IG9wdXNfdWludDMyOworICAgdHlwZWRl
ZiBpbnQ2NF90IG9wdXNfaW50NjQ7CisgICB0eXBlZGVmIHVpbnQ2NF90IG9wdXNfdWludDY0Owog
I2VsaWYgZGVmaW5lZChfV0lOMzIpCiAKICMgIGlmIGRlZmluZWQoX19DWUdXSU5fXykKQEAgLTE0
OCwxMiArMTYzLDQgQEAKIAogI2VuZGlmCiAKLSNkZWZpbmUgb3B1c19pbnQgICAgICAgICBpbnQg
ICAgICAgICAgICAgICAgICAgICAvKiB1c2VkIGZvciBjb3VudGVycyBldGM7IGF0IGxlYXN0IDE2
IGJpdHMgKi8KLSNkZWZpbmUgb3B1c19pbnQ2NCAgICAgICBsb25nIGxvbmcKLSNkZWZpbmUgb3B1
c19pbnQ4ICAgICAgICBzaWduZWQgY2hhcgotCi0jZGVmaW5lIG9wdXNfdWludCAgICAgICAgdW5z
aWduZWQgaW50ICAgICAgICAgICAgLyogdXNlZCBmb3IgY291bnRlcnMgZXRjOyBhdCBsZWFzdCAx
NiBiaXRzICovCi0jZGVmaW5lIG9wdXNfdWludDY0ICAgICAgdW5zaWduZWQgbG9uZyBsb25nCi0j
ZGVmaW5lIG9wdXNfdWludDggICAgICAgdW5zaWduZWQgY2hhcgotCiAjZW5kaWYgIC8qIE9QVVNf
VFlQRVNfSCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9yZWxlYXNlcy5zaGEyIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9yZWxlYXNlcy5zaGEyCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmIxYjMyYzAwNTUxOGZmZDQ0YWQ1MDU5NzIyNWY3OGQzOWI1NTZlYjkKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3JlbGVhc2VzLnNoYTIKQEAgLTAsMCArMSw2MyBAQAorYjJmNzVjNGFjNWFiODM3
ODQ1ZWIwMjg0MTNmYWUyYTI4NzU0YmZiMGE2ZDc2NDE2ZTJhZjE0NDFlZjQ0NzY0OSAgb3B1cy0w
LjkuMC50YXIuZ3oKKzRlMzc5YTk4YmE5NWJiYmZlOTA4N2VmMTBmZGQwNWM4YWM5MDYwYjZkNjk1
ZjU4N2VhODJhN2I0M2EwZGY0ZmUgIG9wdXMtMC45LjEwLnRhci5negorYjFjYWQ2ODQ2YThmODE5
YTE0MTAwOWZlM2Y4ZjEwYzk0NmU4ZWZmN2U5YzIzMzljZDUxN2JiMTM2Y2M1OWVhZSAgb3B1cy0w
LjkuMTQudGFyLmd6CisyMDYyMjFhZmM0N2I4NzQ5NjU4ODAxM2JkNDUyM2UxZTlmNTU2MzM2YzA4
MTNmNDM3Mjc3M2ZjNTM2ZGQ0MjkzICBvcHVzLTAuOS4xLnRhci5negorNmU4NWMxYjU3ZTFkN2I3
ZGZlMjkyOGJmOTI1ODZiOTZiNzNhOTA2N2UwNTRlZGU0NWJkOGU2ZDI0YmQzMDU4MiAgb3B1cy0w
LjkuMi50YXIuZ3oKK2Q5MTZlMzRjMThhMzk2ZWI3ZGZmYzQ3YWY3NTRmNDQxYWY1MmEyOTBiNzYx
ZTIwZGI5YWVkYjY1OTI4YzY5OWUgIG9wdXMtMC45LjMudGFyLmd6Cis1MzgwMTA2NmZhOTczMjk3
NjhlN2I4NzFmZDE0OTU3NDAyNjllYzQ2ODAyZTFjOTA1MWFhN2U3OGM2ZWRlZTViICBvcHVzLTAu
OS41LnRhci5negorM2JmYWViMjVmNGI0YTYyNWEwYmM5OTRkNmZjNmY2Nzc2YTA1MTkzZjYwMDk5
ZTBhOTlmNzUzMGM2YjI1NjMwOSAgb3B1cy0wLjkuNi50YXIuZ3oKKzFiNjk3NzJjMzFjNWNiYWE0
M2QxZGZhNWIxYzQ5NWZjMjk3MTJlOGUwZmY2OWQ2ZjhhZDQ2NDU5ZTVjNjcxNWYgIG9wdXMtMC45
LjcudGFyLmd6Cis0YWEzMGQyZTA2NTJmZmI0YTdhMjJjYzhhMjljNGNlNzgyNjc2MjZmNTYwYTJk
OTIxM2IxZDJkNGU2MThjZjM2ICBvcHVzLTAuOS44LnRhci5negorMmY2MjM1OWYwOTE1MWZhM2Iy
NDIwNDBkYzliNGM1YjZiZGExNTU1N2M1ZGFlYTU5Yzg0MjBmMWEyZmYzMjhiNyAgb3B1cy0wLjku
OS50YXIuZ3oKKzQzYmNlYTUxYWZhNTMxZjMyYTZhNWZkZDljYmE0YmQ0OTY5OTNlMjZhMTQxMjE3
ZGIzY2NjY2U2Y2FhN2NkNzQgIG9wdXMtMS4wLjAtcmMudGFyLmd6Cis5MjUwZmNjNzQ0NzJkNDVj
MWUxNDc0NTU0MmVjOWM4ZDA5OTgyNTM4YWVmZWQ1Njk2MjQ5NTYxNGJlM2UwZDJkICBvcHVzLTEu
MC4wLnRhci5negorNzZiYzBhMzE1MDJhNTFkYWU5YWI3MzdiNGRiMDQzYjllY2ZjZDBiNTg2MWYw
YmZkYTQxYjY2MmJkNWI5MjIyNyAgb3B1cy0xLjAuMS1yYzIudGFyLmd6CiszZGU4ZDY4MDlkYWMz
ODk3MWViYjMwNTUzMmQ0ZWE1MzI1MTlkM2JlZDA4OTg1ZjI1ZDZjNTU3ZjljZTVlOGZmICBvcHVz
LTEuMC4xLXJjMy50YXIuZ3oKKzgwNDQzOTdhNjM2NWEwNzExN2IwOGNiZThmOTgxOGJmN2M5Mzc0
NjkwODgwNmJhNzRhMjkxNzE4N2JiZGRhNWYgIG9wdXMtMS4wLjEtcmMudGFyLmd6Cis4MGZhNWMz
Y2FmMmFjMGZkNjhmOGEyMmNjZTE1NjRmYzQ2YjM2OGM3NzNhMTc1NTQ4ODdkMDA2NmZlMTg0MWVm
ICBvcHVzLTEuMC4xLnRhci5negorZGE2MTVlZGJlZTVkMDE5YzE4MzMwNzFkNjlhNDc4MmMxOWYx
NzhjZjljYTE0MDEzNzUwMzZlY2VmMjVjZDc4YSAgb3B1cy0xLjAuMi50YXIuZ3oKKzE5MWEwODlj
OTJkYmM0MDNkZTY5ODA0NjNkZDM2MDRiNjViZWIxMmQyODNjNjA3ZTI0NmM4MDc2MzYzY2I0OWMg
IG9wdXMtMS4wLjMudGFyLmd6CithOGQ0MGVmZTg3ZjZjM2U3NjcyNTM5MTQ1N2Q0NjI3Nzg3OGM3
YTgxNmFlMTY0Mjg0MzI2MTQ2MzEzM2ZhNWM4ICBvcHVzLTEuMS1hbHBoYS50YXIuZ3oKK2VjMTc4
NDI4N2YzODVhZWY5OTRiNjQ3MzRhYWVjYWUwNDg2MGU2MWFhNTBmYzZlZWY2NjQzZmE3ZTQwZGQx
OTMgIG9wdXMtMS4xLWJldGEudGFyLmd6Cis4YWExNjM2MGY1OWE5NGQzZTM4ZjM4ZjI4ZDI0MDM5
Zjc2NjMxNzk2ODJjYmFlODJhYTQyZjFkZDllNTJlNmVkICBvcHVzLTEuMS1yYy50YXIuZ3oKK2Vi
Yzg3YTA4NmQ0ZmU2NzdjNWU0MmQ1Njg4OGIxZmQyNWFmODU4ZTQxNzllYWU0Zjg2NTYyNzA0MTBk
ZmZhYzMgIG9wdXMtMS4xLXJjMi50YXIuZ3oKK2NiZmQwOWM1OGNjMTBhNGQzZmNiNzI3YWQ1ZDQ2
ZDdiYjU0OWY4MTg1YWM5MjJlZTI4YjQ1ODFiNTJhN2JlZTkgIG9wdXMtMS4xLXJjMy50YXIuZ3oK
K2I5NzI3MDE1YTU4YWZmY2YzZGI1MjczMjJiZjhjNGQyZmNmMzlmNWY2YjhmMTVkYmNlY2EyMDIw
NmNiZTFkOTUgIG9wdXMtMS4xLnRhci5negorMGM2Njg2MzlkY2QxNmIxNDcwOWZjOWRjNDllNjY4
NjYwNmY1YTI1NmYyZWFhMWViYWEyZjM5YTY2Zjg2MjZjZCAgb3B1cy0xLjEuMS1iZXRhLnRhci5n
egorNjZmMmE1ODc3Yzg4MDNkYzlhNWE0NGI0ZjNkMGJkYzhmMDZiZDA2NjMyNDIyMmQxNDRlYjI1
NTYxMmI2ODE1MiAgb3B1cy0xLjEuMS1yYy50YXIuZ3oKKzliODRmZjU2YmQ3NzIwZDU1NTQxMDNj
NTU3NjY0ZWZhYzJiOGIxOGFjYzRiYmNjMjM0Y2I4ODFhYjlhMzM3MWUgIG9wdXMtMS4xLjEudGFy
Lmd6CiswZTI5MDA3OGUzMTIxMWJhYTdiNTg4NmJjYzhhYjZiYzA0OGI5ZmM4Mzg4MjUzMmRhNGEx
YTQ1ZTU4ZTkwN2ZkICBvcHVzLTEuMS4yLnRhci5negorNThiNmZlODAyZTdlMzAxODJlOTVkMGNk
ZTg5MGMwYWNlNDBiNmYxMjVjZmZjNTA2MzVmMGFkMmVlZjY5YjYzMyAgb3B1cy0xLjEuMy50YXIu
Z3oKKzkxMjJiNmIzODAwODFkZDI2NjUxODlmOTdiZmQ3NzdmMDRmOTJkYzNhYjY2OThlZWExZGJi
MjdhZDU5ZDg2OTIgIG9wdXMtMS4xLjQudGFyLmd6CitlYjg0OTgxY2EwZjQwYTNlNWQ1ZTU4ZDJl
ODU4MmNiMmZlZTA1YTAyMjgyNWE2ZGZlMTRkMTRiMDRlYjU2M2U0ICBvcHVzLTEuMS41LnRhci5n
egorNjU0YTliZWJiNzMyNjYyNzFhMjhlZGNmZmY0MzFlNGNmZDliZmNkZTcxZjQyODQ5YTBjZGQ3
M2JlY2U4MDNhNyAgb3B1cy0xLjItYWxwaGEudGFyLmd6CitjMGU5MDUwNzI1OWNmMjFjZTdiMmM4
MmZiOWFjNTUzNjdkODU0M2RhZTkxY2MzZDRkMmM1OWFmZDM3ZjQ0MDIzICBvcHVzLTEuMi1hbHBo
YTIudGFyLmd6CisyOTFlOTc5YThhMmZiNjc5ZWQzNWE1ZGZmNWQ3NjFhOWQ5YTVlMjI1ODZmZDA3
OTM0ZWQ5NDQ2MWUyNjM2YzdhICBvcHVzLTEuMi1iZXRhLnRhci5negorODUzNDNmZGFlZDk2NTI5
ZDk0YzFlMWYzYTIxMGZhNTEyNDBkMDRjYTYyZmEwMWU5N2VmMDJmODgwMjBjMmNlOSAgb3B1cy0x
LjItcmMxLnRhci5negorNzdkYjQ1YTg3YjUxNTc4ZmJjNDk1NTVlZjFiMTA5MjYxNzk4NjFkODU0
ZWIyNjEzMjA3ZGM3OWQ5ZWMwYTlhOSAgb3B1cy0xLjIudGFyLmd6CitjZmFmZDMzOWNjZDljNWVm
OGQ2YWIxNWQ3ZTFhNDEyYzA1NGJmNGNiNGVjYmJiY2M3OGMxMmVmMmRlZjcwNzMyICBvcHVzLTEu
Mi4xLnRhci5negorOTRhYzc4Y2E0Zjc0YzRlNDNiYzlmZTRlYzFhZDBhYTM2ZjM4YWI5MGY0NWIw
NzI3YzQwZGQxZTk2MDk2ZTc2NyAgb3B1c190ZXN0dmVjdG9ycy1kcmFmdDExLnRhci5negorOTRh
Yzc4Y2E0Zjc0YzRlNDNiYzlmZTRlYzFhZDBhYTM2ZjM4YWI5MGY0NWIwNzI3YzQwZGQxZTk2MDk2
ZTc2NyAgb3B1c190ZXN0dmVjdG9ycy50YXIuZ3oKKzVkMmI5OTc1N2JjYjYyOGJhYjI2MTFmM2Vk
MjdhZjZmMzUyNzZjZTNhYmM5NmMwZWQ0Mzk5ZDZjNjQ2M2RkYTUgIG9wdXMtdG9vbHMtMC4xLjIu
dGFyLmd6CiswMDgzMTcyOTdkNmNlODRmODQ5OTJhYmY4Y2M5NDhhMDQ4YTRmYTEzNWUxZDFjYWY0
MjlmYWZkZTg5NjVhNzkyICBvcHVzLXRvb2xzLTAuMS4zLnRhci5negorZGU4MDQ4NWM1YWZhMWZk
ODNjMGUxNmEwZGQ0ODYwNDcwYzg3Mjk5N2E3ZGQwYTU4ZTk5YjJlZThhOTNlNTE2OCAgb3B1cy10
b29scy0wLjEuNC50YXIuZ3oKKzc2Njc4ZDBlYjdhOWIzZDc5M2JkMDI0M2Y5Y2VkOWFiMGVjZGFi
MjYzZjUyMzJlZDk0MGM4ZjU3OTVmYjA0MDUgIG9wdXMtdG9vbHMtMC4xLjUudGFyLmd6CitjYzg2
ZGJjMmE0ZDc2ZGE3ZTFlZDlhZmVlODU0NDhjOGY3OThjNDY1YTU0MTIyMzNmMTc4NzgzMjIwZjNh
MmMxICBvcHVzLXRvb2xzLTAuMS42LnRhci5negorZTBmMDhkMzAxNTU1ZGZmYzQxNzYwNDI2OWI1
YTg1ZDJiZDE5N2YyNTljN2Q2Yzk1N2YzNzBmZmQzM2Q2ZDljZCAgb3B1cy10b29scy0wLjEuNy50
YXIuZ3oKK2U0ZTE4ODU3OWVhMWM0ZTRkNTA2NjQ2MGQ0YTcyMTRhN2VhZmUzNTM5ZTlhNDQ2NmZk
Yzk4YWY0MWJhNGEyZjYgIG9wdXMtdG9vbHMtMC4xLjgudGFyLmd6CitiMTg3M2RkNzhjN2ZiYzk4
Y2Y2NWQ2ZTEwY2ZkZGI1YzJjMDNiM2FmOTNmOTIyMTM5YTIxMDRiYWVkYjQ2NDNhICBvcHVzLXRv
b2xzLTAuMS45LnRhci5negorYTIzNTc1MzJkMTk0NzFiNzA2NjZlMGUwZWMxN2Q1MTQyNDZkOGIz
Y2IyZWIxNjhmNjhiYjBmNmZkMzcyYjI4YyAgb3B1cy10b29scy0wLjEuMTAudGFyLmd6CitiZDZk
MTRlODg5N2EyZjgwMDY1ZWYzNGE1MTZjNzBlNzRmOGUwMDA2MGFiZGJjMjM4ZTc5ZTVmOTliY2Ez
ZTk2ICBsaWJvcHVzZW5jLTAuMS50YXIuZ3oKKzgwNzFiOTY4NDc1YzFhMTdmNTRiNjg0MGQ2ZGU5
ZDllZTIwZjkzMGU4MjdiMDQwMWFiZTNjNGNmNGYzYmYzMGEgIG9wdXNmaWxlLTAuMS50YXIuZ3oK
K2I0YTY3OGIzYjZjNGFkZmI2YWZmMWY2N2VmNjU4YmVjZmUxNDZlYTdjN2ZmMjI4ZTk5NTQzNzYy
MTcxNTU3ZjkgIG9wdXNmaWxlLTAuMi50YXIuZ3oKKzQyNDg5MjdmMmM0ZTMxNmVhNWI4NGZiMDJi
ZDEwMGJmZWM4ZmE0NjI0YTY5MTBkNzdmMGFmN2YwYzZjYjhiYWEgIG9wdXNmaWxlLTAuMy50YXIu
Z3oKKzk4MzZlYTExNzA2YzQ0ZjM2ZGU5MmM0YzliMTI0OGUwM2E0YzUyMWU3ZmIyY2ZmMThhMGNi
NGY4YjBlNzkxNDAgIG9wdXNmaWxlLTAuNC50YXIuZ3oKK2YxODc5MDZiMWIzNWY3ZjBkN2RlNmE3
NTliNGFhYjUxMmE5Mjc5ZDIzYWRiMzVkODAwOWU3ZTMzYmQ2YTkyMmEgIG9wdXNmaWxlLTAuNC56
aXAKKzJjZTUyZDAwNmFlZWVjOWYxMDI2MGRiZTMwNzNjNDYzNjk1NGExYWIxOWM4MmI4YmFhZmVm
ZTAxODBhYTRhMzkgIG9wdXNmaWxlLTAuNS50YXIuZ3oKK2I5NDBkNjJiZWIxNWI1OTc0NzY0NTc0
YjlmMjY1NDgxZmU1YjZlZTE2OTAyZmI3MDU3Mjc1NDZjYWY5NTYyNjEgIG9wdXNmaWxlLTAuNS56
aXAKKzI0Mjg3MTdiMzU2ZTEzOWYxOGVkMmZkYjVhZDk5MGI1NjU0YTIzODkwN2EwMDU4MjAwYjM5
YzQ2YTdkMDNlYTYgIG9wdXNmaWxlLTAuNi50YXIuZ3oKKzc1MzMzOTIyNTE5M2RmNjA1MzcyOTQ0
ODg5MDIzYjliM2M1Mzc4ZDY3MmU4Nzg0ZDY5ZmEyNDFjZDQ2NTI3OGMgIG9wdXNmaWxlLTAuNi56
aXAKKzllMmJlZDEzYmM3MjkwNTg1OTFhMGYxY2FiMjUwNWU4Y2ZkOGU3YWM0NjBiZjEwYTc4YmNj
M2IxMjVlN2MzMDEgIG9wdXNmaWxlLTAuNy50YXIuZ3oKKzM0Njk2N2Q3OTg5YmI4M2IwNTk0OTQ4
M2I3NmJkMGY2OWExMmM1OWJkOGI0NDU3ZTg2NDkwMmI1MmJiMGFjMzQgIG9wdXNmaWxlLTAuNy56
aXAKKzJjMjMxZWQzY2ZhYTFiMzE3M2Y1MmQ3NDBlNWJiZDc3ZDUxYjlkZmVjYjg3MDE0YjQwNDkx
N2ZiYTRiODU1YTQgIG9wdXNmaWxlLTAuOC50YXIuZ3oKKzg5ZGZmNDM0MmMzYjc4OTU3NGNiZWE1
YzU3ZjExYjk2ZDRlYmU0ZDI4YWI5MDI0OGMxNzgzZWE1NjliMWU5ZTMgIG9wdXNmaWxlLTAuOC56
aXAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9BMk5MU0YuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9BMk5MU0YuYwppbmRleCBiNmU5ZTVm
ZmNjYWEwNTk5NWRmZGJmZTYwMDE2Njg2NWQ4OTkwMTNlLi5iNDg3Njg2ZmY5YzZkMTI5YzA2NTZm
YjEwOTVkZThhMjg5ZmM0ZGJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvQTJOTFNGLmMKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0Ey
TkxTRi5jCkBAIC00MCw3ICs0MCw3IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCiAv
KiBOdW1iZXIgb2YgYmluYXJ5IGRpdmlzaW9ucywgd2hlbiBub3QgaW4gbG93IGNvbXBsZXhpdHkg
bW9kZSAqLwogI2RlZmluZSBCSU5fRElWX1NURVBTX0EyTkxTRl9GSVggICAgICAzIC8qIG11c3Qg
YmUgbm8gaGlnaGVyIHRoYW4gMTYgLSBsb2cyKCBMU0ZfQ09TX1RBQl9TWl9GSVggKSAqLwotI2Rl
ZmluZSBNQVhfSVRFUkFUSU9OU19BMk5MU0ZfRklYICAgIDMwCisjZGVmaW5lIE1BWF9JVEVSQVRJ
T05TX0EyTkxTRl9GSVggICAgMTYKIAogLyogSGVscGVyIGZ1bmN0aW9uIGZvciBBMk5MU0YoLi4p
ICAgICAgICAgICAgICAgICAgICAqLwogLyogVHJhbnNmb3JtcyBwb2x5bm9taWFscyBmcm9tIGNv
cyhuKmYpIHRvIGNvcyhmKV5uICAqLwpAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgc2lsa19BMk5M
U0YoCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAg
LyogSSAgICBGaWx0ZXIgb3JkZXIgKG11c3QgYmUgZXZlbikgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogKQogewotICAgIG9wdXNfaW50ICAgICAgaSwgaywgbSwgZGQsIHJvb3Rf
aXgsIGZmcmFjOworICAgIG9wdXNfaW50ICAgaSwgaywgbSwgZGQsIHJvb3RfaXgsIGZmcmFjOwog
ICAgIG9wdXNfaW50MzIgeGxvLCB4aGksIHhtaWQ7CiAgICAgb3B1c19pbnQzMiB5bG8sIHloaSwg
eW1pZCwgdGhyOwogICAgIG9wdXNfaW50MzIgbm9tLCBkZW47CkBAIC0yMzksMTMgKzIzOSwxMyBA
QCB2b2lkIHNpbGtfQTJOTFNGKAogICAgICAgICAgICAgICAgICAgICAvKiBTZXQgTkxTRnMgdG8g
d2hpdGUgc3BlY3RydW0gYW5kIGV4aXQgKi8KICAgICAgICAgICAgICAgICAgICAgTkxTRlsgMCBd
ID0gKG9wdXNfaW50MTYpc2lsa19ESVYzMl8xNiggMSA8PCAxNSwgZCArIDEgKTsKICAgICAgICAg
ICAgICAgICAgICAgZm9yKCBrID0gMTsgayA8IGQ7IGsrKyApIHsKLSAgICAgICAgICAgICAgICAg
ICAgICAgIE5MU0ZbIGsgXSA9IChvcHVzX2ludDE2KXNpbGtfU01VTEJCKCBrICsgMSwgTkxTRlsg
MCBdICk7CisgICAgICAgICAgICAgICAgICAgICAgICBOTFNGWyBrIF0gPSAob3B1c19pbnQxNilz
aWxrX0FERDE2KCBOTFNGWyBrLTEgXSwgTkxTRlsgMCBdICk7CiAgICAgICAgICAgICAgICAgICAg
IH0KICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgIH0KIAogICAg
ICAgICAgICAgICAgIC8qIEVycm9yOiBBcHBseSBwcm9ncmVzc2l2ZWx5IG1vcmUgYmFuZHdpZHRo
IGV4cGFuc2lvbiBhbmQgcnVuIGFnYWluICovCi0gICAgICAgICAgICAgICAgc2lsa19id2V4cGFu
ZGVyXzMyKCBhX1ExNiwgZCwgNjU1MzYgLSBzaWxrX1NNVUxCQiggMTAgKyBpLCBpICkgKTsgLyog
MTBfUTE2ID0gMC4wMDAxNSovCisgICAgICAgICAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBh
X1ExNiwgZCwgNjU1MzYgLSBzaWxrX0xTSElGVCggMSwgaSApICk7CiAKICAgICAgICAgICAgICAg
ICBzaWxrX0EyTkxTRl9pbml0KCBhX1ExNiwgUCwgUSwgZGQgKTsKICAgICAgICAgICAgICAgICBw
ID0gUDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUG9pbnRlciB0byBwb2x5bm9taWFs
ICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvQVBJLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvQVBJLmgKaW5kZXggMDEzMWFjYmIwOGZi
MDdhOGRkMGQxNTUwMjc1OGRlZDVhMWJjN2ZhNi4uNGQ5MGZmOWFhM2VjZDJiMTZkZjQwMjBiNTEw
Yzg4YTcyNWIxMzY0OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0FQSS5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9BUEkuaApAQCAt
ODAsNyArODAsOCBAQCBvcHVzX2ludCBzaWxrX0VuY29kZSggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBlcnJvciBjbwogICAgIG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgICAgICAgblNhbXBsZXNJbiwgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBz
YW1wbGVzIGluIGlucHV0IHZlY3RvciAgICAgICAgICAgICAgICovCiAgICAgZWNfZW5jICAgICAg
ICAgICAgICAgICAgICAgICAgICAqcHNSYW5nZUVuYywgICAgICAgIC8qIEkvTyAgQ29tcHJlc3Nv
ciBkYXRhIHN0cnVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMy
ICAgICAgICAgICAgICAgICAgICAgICpuQnl0ZXNPdXQsICAgICAgICAgLyogSS9PICBOdW1iZXIg
b2YgYnl0ZXMgaW4gcGF5bG9hZCAoaW5wdXQ6IE1heCBieXRlcykgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgcHJlZmlsbEZsYWcgICAgICAgICAvKiBJICAgIEZsYWcg
dG8gaW5kaWNhdGUgcHJlZmlsbGluZyBidWZmZXJzIG5vIGNvZGluZyAgICovCisgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgICAgICBwcmVmaWxsRmxhZywgICAgICAgIC8qIEkgICAgRmxh
ZyB0byBpbmRpY2F0ZSBwcmVmaWxsaW5nIGJ1ZmZlcnMgbm8gY29kaW5nICAgKi8KKyAgICBpbnQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2aXR5ICAgICAgICAgICAgLyogSSAgICBE
ZWNpc2lvbiBvZiBPcHVzIHZvaWNlIGFjdGl2aXR5IGRldGVjdG9yICAgICAgICAqLwogKTsKIAog
LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvQ05HLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvQ05HLmMKaW5kZXggNzAxYjM2YTM4YTMxMDVkZmE0OGRjYmM1NGU4ODFl
NDliZTE5OWZmNi4uZTZkOWI4NjFlOTVlNzQzZjFkMDg1N2NlNDhhZWRmM2NlYmZiZjFlNCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL0NORy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9DTkcuYwpAQCAtMTM4LDExICsxMzgsMTEgQEAg
dm9pZCBzaWxrX0NORygKICAgICAgICAgICAgIGdhaW5fUTE2ID0gc2lsa19MU0hJRlQzMiggc2ls
a19TUVJUX0FQUFJPWCggZ2Fpbl9RMTYgKSwgOCApOwogICAgICAgICB9CiAgICAgICAgIGdhaW5f
UTEwID0gc2lsa19SU0hJRlQoIGdhaW5fUTE2LCA2ICk7Ci0gICAgICAgIAorCiAgICAgICAgIHNp
bGtfQ05HX2V4YyggQ05HX3NpZ19RMTQgKyBNQVhfTFBDX09SREVSLCBwc0NORy0+Q05HX2V4Y19i
dWZfUTE0LCBsZW5ndGgsICZwc0NORy0+cmFuZF9zZWVkICk7CiAKICAgICAgICAgLyogQ29udmVy
dCBDTkcgTkxTRiB0byBmaWx0ZXIgcmVwcmVzZW50YXRpb24gKi8KLSAgICAgICAgc2lsa19OTFNG
MkEoIEFfUTEyLCBwc0NORy0+Q05HX3NtdGhfTkxTRl9RMTUsIHBzRGVjLT5MUENfb3JkZXIgKTsK
KyAgICAgICAgc2lsa19OTFNGMkEoIEFfUTEyLCBwc0NORy0+Q05HX3NtdGhfTkxTRl9RMTUsIHBz
RGVjLT5MUENfb3JkZXIsIHBzRGVjLT5hcmNoICk7CiAKICAgICAgICAgLyogR2VuZXJhdGUgQ05H
IHNpZ25hbCwgYnkgc3ludGhlc2lzIGZpbHRlcmluZyAqLwogICAgICAgICBzaWxrX21lbWNweSgg
Q05HX3NpZ19RMTQsIHBzQ05HLT5DTkdfc3ludGhfc3RhdGUsIE1BWF9MUENfT1JERVIgKiBzaXpl
b2YoIG9wdXNfaW50MzIgKSApOwpAQCAtMTcxLDEwICsxNzEsMTAgQEAgdm9pZCBzaWxrX0NORygK
IAogICAgICAgICAgICAgLyogVXBkYXRlIHN0YXRlcyAqLwogICAgICAgICAgICAgQ05HX3NpZ19R
MTRbIE1BWF9MUENfT1JERVIgKyBpIF0gPSBzaWxrX0FERF9TQVQzMiggQ05HX3NpZ19RMTRbIE1B
WF9MUENfT1JERVIgKyBpIF0sIHNpbGtfTFNISUZUX1NBVDMyKCBMUENfcHJlZF9RMTAsIDQgKSAp
OwotICAgICAgICAgICAgCisKICAgICAgICAgICAgIC8qIFNjYWxlIHdpdGggR2FpbiBhbmQgYWRk
IHRvIGlucHV0IHNpZ25hbCAqLwogICAgICAgICAgICAgZnJhbWVbIGkgXSA9IChvcHVzX2ludDE2
KXNpbGtfQUREX1NBVDE2KCBmcmFtZVsgaSBdLCBzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VO
RCggc2lsa19TTVVMV1coIENOR19zaWdfUTE0WyBNQVhfTFBDX09SREVSICsgaSBdLCBnYWluX1Ex
MCApLCA4ICkgKSApOwotICAgICAgICAgICAgCisKICAgICAgICAgfQogICAgICAgICBzaWxrX21l
bWNweSggcHNDTkctPkNOR19zeW50aF9zdGF0ZSwgJkNOR19zaWdfUTE0WyBsZW5ndGggXSwgTUFY
X0xQQ19PUkRFUiAqIHNpemVvZiggb3B1c19pbnQzMiApICk7CiAgICAgfSBlbHNlIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9MUENfYW5hbHlzaXNfZmlsdGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBDX2FuYWx5c2lzX2ZpbHRl
ci5jCmluZGV4IDIwOTA2NjczZmYxMjQ2MTBkZjIwNzFjYjc2NWNiZjliMDliMzNmMDguLjc3MTVm
NzBmOGQ2NzYzNzU3YjBlZjE5NGJlNGNkMDE0ZmZkMGMyMjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENf
YW5hbHlzaXNfZmlsdGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQQ19hbmFseXNpc19maWx0ZXIuYwpAQCAtMzks
NiArMzksMTMgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAvKiBmaXJzdCBkIG91dHB1
dCBzYW1wbGVzIGFyZSBzZXQgdG8gemVybyAgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqLwogCisvKiBPUFQ6IFVzaW5nIGNlbHRfZmlyKCkgZm9yIHRoaXMg
ZnVuY3Rpb24gc2hvdWxkIGJlIGZhc3RlciwgYnV0IGl0IG1heSBjYXVzZQorICAgaW50ZWdlciBv
dmVyZmxvd3MgaW4gaW50ZXJtZWRpYXRlIHZhbHVlcyAobm90IGZpbmFsIHJlc3VsdHMpLCB3aGlj
aCB0aGUKKyAgIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gc2lsZW5jZXMgYnkgY2FzdGluZyB0byB1
bnNpZ25lZC4gRW5hYmxpbmcKKyAgIHRoaXMgc2hvdWxkIGJlIHNhZmUgaW4gcHJldHR5IG11Y2gg
YWxsIGNhc2VzLCBldmVuIHRob3VnaCBpdCBpcyBub3QgdGVjaG5pY2FsbHkKKyAgIEM4OS1jb21w
bGlhbnQuICovCisjZGVmaW5lIFVTRV9DRUxUX0ZJUiAwCisKIHZvaWQgc2lsa19MUENfYW5hbHlz
aXNfZmlsdGVyKAogICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqb3V0LCAgICAgICAg
ICAgICAgIC8qIE8gICAgT3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmlu
LCAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCkBAIC00OSw4ICs1Niw3IEBAIHZvaWQgc2ls
a19MUENfYW5hbHlzaXNfZmlsdGVyKAogKQogewogICAgIG9wdXNfaW50ICAgajsKLSNpZmRlZiBG
SVhFRF9QT0lOVAotICAgIG9wdXNfaW50MTYgbWVtW1NJTEtfTUFYX09SREVSX0xQQ107CisjaWYg
ZGVmaW5lZChGSVhFRF9QT0lOVCkgJiYgVVNFX0NFTFRfRklSCiAgICAgb3B1c19pbnQxNiBudW1b
U0lMS19NQVhfT1JERVJfTFBDXTsKICNlbHNlCiAgICAgaW50IGl4OwpAQCAtNjIsMTUgKzY4LDEy
IEBAIHZvaWQgc2lsa19MUENfYW5hbHlzaXNfZmlsdGVyKAogICAgIHNpbGtfYXNzZXJ0KCAoZCAm
IDEpID09IDAgKTsKICAgICBzaWxrX2Fzc2VydCggZCA8PSBsZW4gKTsKIAotI2lmZGVmIEZJWEVE
X1BPSU5UCisjaWYgZGVmaW5lZChGSVhFRF9QT0lOVCkgJiYgVVNFX0NFTFRfRklSCiAgICAgc2ls
a19hc3NlcnQoIGQgPD0gU0lMS19NQVhfT1JERVJfTFBDICk7CiAgICAgZm9yICggaiA9IDA7IGog
PCBkOyBqKysgKSB7CiAgICAgICAgIG51bVsgaiBdID0gLUJbIGogXTsKICAgICB9Ci0gICAgZm9y
IChqPTA7ajxkO2orKykgewotICAgICAgICBtZW1bIGogXSA9IGluWyBkIC0gaiAtIDEgXTsKLSAg
ICB9Ci0gICAgY2VsdF9maXIoIGluICsgZCwgbnVtLCBvdXQgKyBkLCBsZW4gLSBkLCBkLCBtZW0s
IGFyY2ggKTsKKyAgICBjZWx0X2ZpciggaW4gKyBkLCBudW0sIG91dCArIGQsIGxlbiAtIGQsIGQs
IGFyY2ggKTsKICAgICBmb3IgKCBqID0gMDsgaiA8IGQ7IGorKyApIHsKICAgICAgICAgb3V0WyBq
IF0gPSAwOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENfZml0LmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBDX2ZpdC5j
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmNkZWE0ZjNhYmNhZjdmY2QxNDFhNGI4NmUyZjkyNGI2NzllZmZkOTQKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvTFBDX2ZpdC5jCkBAIC0wLDAgKzEsODEgQEAKKy8qKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKgorQ29weXJpZ2h0IChjKSAyMDEzLCBLb2VuIFZvcy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCit0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLSBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKy0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRl
cm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKK25hbWVzIG9mIHNwZWNp
ZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCitwcm9k
dWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdy
aXR0ZW4KK3Blcm1pc3Npb24uCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKK0FORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
K0lNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KiovCisKKyNpZmRlZiBIQVZFX0NPTkZJR19ICisjaW5jbHVkZSAiY29uZmlnLmgiCisjZW5kaWYK
KworI2luY2x1ZGUgIlNpZ1Byb2NfRklYLmgiCisKKy8qIENvbnZlcnQgaW50MzIgY29lZmZpY2ll
bnRzIHRvIGludDE2IGNvZWZzIGFuZCBtYWtlIHN1cmUgdGhlcmUncyBubyB3cmFwLWFyb3VuZCAq
Lwordm9pZCBzaWxrX0xQQ19maXQoCisgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICph
X1FPVVQsICAgICAgICAgICAgLyogTyAgICBPdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAg
ICAgICAgICAgICphX1FJTiwgICAgICAgICAgICAgLyogSS9PICBJbnB1dCBzaWduYWwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICBRT1VULCAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgUSBk
b21haW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgUUlOLCAgICAgICAgICAgICAgICAvKiBJICAg
IElucHV0IFEgZG9tYWluICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBGaWx0ZXIgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworKQoreworICAgIG9wdXNfaW50ICAgIGksIGssIGlkeCA9IDA7Cisg
ICAgb3B1c19pbnQzMiAgICBtYXhhYnMsIGFic3ZhbCwgY2hpcnBfUTE2OworCisgICAgLyogTGlt
aXQgdGhlIG1heGltdW0gYWJzb2x1dGUgdmFsdWUgb2YgdGhlIHByZWRpY3Rpb24gY29lZmZpY2ll
bnRzLCBzbyB0aGF0IHRoZXknbGwgZml0IGluIGludDE2ICovCisgICAgZm9yKCBpID0gMDsgaSA8
IDEwOyBpKysgKSB7CisgICAgICAgIC8qIEZpbmQgbWF4aW11bSBhYnNvbHV0ZSB2YWx1ZSBhbmQg
aXRzIGluZGV4ICovCisgICAgICAgIG1heGFicyA9IDA7CisgICAgICAgIGZvciggayA9IDA7IGsg
PCBkOyBrKysgKSB7CisgICAgICAgICAgICBhYnN2YWwgPSBzaWxrX2FicyggYV9RSU5ba10gKTsK
KyAgICAgICAgICAgIGlmKCBhYnN2YWwgPiBtYXhhYnMgKSB7CisgICAgICAgICAgICAgICAgbWF4
YWJzID0gYWJzdmFsOworICAgICAgICAgICAgICAgIGlkeCAgICA9IGs7CisgICAgICAgICAgICB9
CisgICAgICAgIH0KKyAgICAgICAgbWF4YWJzID0gc2lsa19SU0hJRlRfUk9VTkQoIG1heGFicywg
UUlOIC0gUU9VVCApOworCisgICAgICAgIGlmKCBtYXhhYnMgPiBzaWxrX2ludDE2X01BWCApIHsK
KyAgICAgICAgICAgIC8qIFJlZHVjZSBtYWduaXR1ZGUgb2YgcHJlZGljdGlvbiBjb2VmZmljaWVu
dHMgKi8KKyAgICAgICAgICAgIG1heGFicyA9IHNpbGtfbWluKCBtYXhhYnMsIDE2MzgzOCApOyAg
LyogKCBzaWxrX2ludDMyX01BWCA+PiAxNCApICsgc2lsa19pbnQxNl9NQVggPSAxNjM4MzggKi8K
KyAgICAgICAgICAgIGNoaXJwX1ExNiA9IFNJTEtfRklYX0NPTlNUKCAwLjk5OSwgMTYgKSAtIHNp
bGtfRElWMzIoIHNpbGtfTFNISUZUKCBtYXhhYnMgLSBzaWxrX2ludDE2X01BWCwgMTQgKSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWxrX1JTSElGVDMyKCBzaWxr
X01VTCggbWF4YWJzLCBpZHggKyAxKSwgMiApICk7CisgICAgICAgICAgICBzaWxrX2J3ZXhwYW5k
ZXJfMzIoIGFfUUlOLCBkLCBjaGlycF9RMTYgKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICB9CisgICAgfQorCisgICAgaWYoIGkgPT0gMTAgKSB7CisgICAg
ICAgIC8qIFJlYWNoZWQgdGhlIGxhc3QgaXRlcmF0aW9uLCBjbGlwIHRoZSBjb2VmZmljaWVudHMg
Ki8KKyAgICAgICAgZm9yKCBrID0gMDsgayA8IGQ7IGsrKyApIHsKKyAgICAgICAgICAgIGFfUU9V
VFsgayBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIGFfUUlO
WyBrIF0sIFFJTiAtIFFPVVQgKSApOworICAgICAgICAgICAgYV9RSU5bIGsgXSA9IHNpbGtfTFNI
SUZUKCAob3B1c19pbnQzMilhX1FPVVRbIGsgXSwgUUlOIC0gUU9VVCApOworICAgICAgICB9Cisg
ICAgfSBlbHNlIHsKKyAgICAgICAgZm9yKCBrID0gMDsgayA8IGQ7IGsrKyApIHsKKyAgICAgICAg
ICAgIGFfUU9VVFsgayBdID0gKG9wdXNfaW50MTYpc2lsa19SU0hJRlRfUk9VTkQoIGFfUUlOWyBr
IF0sIFFJTiAtIFFPVVQgKTsKKyAgICAgICAgfQorICAgIH0KK30KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9M
UENfaW52X3ByZWRfZ2Fpbi5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQQ19pbnZfcHJlZF9nYWluLmMKaW5kZXggNGFmODlh
YTVmYWQzMjQ3OTk2MjBlNjRjM2ZhMjJlM2VhNmJkOTQwMC4uYTM3NDZhNmVmOWYzMTg3NDY4Y2Nk
Njk0NDgzN2Q4YzAyYmJhZGQxOCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQQ19pbnZfcHJlZF9nYWluLmMK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL0xQQ19pbnZfcHJlZF9nYWluLmMKQEAgLTMwLDYgKzMwLDcgQEAgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAjZW5kaWYKIAogI2luY2x1ZGUgIlNpZ1Byb2NfRklYLmgiCisj
aW5jbHVkZSAiZGVmaW5lLmgiCiAKICNkZWZpbmUgUUEgICAgICAgICAgICAgICAgICAgICAgICAg
IDI0CiAjZGVmaW5lIEFfTElNSVQgICAgICAgICAgICAgICAgICAgICBTSUxLX0ZJWF9DT05TVCgg
MC45OTk3NSwgUUEgKQpAQCAtMzgsMTE3ICszOSwxMDMgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCiAKIC8qIENvbXB1dGUgaW52ZXJzZSBvZiBMUEMgcHJlZGljdGlvbiBnYWluLCBhbmQg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCiAvKiB0ZXN0IGlmIExQQyBjb2VmZmljaWVudHMg
YXJlIHN0YWJsZSAoYWxsIHBvbGVzIHdpdGhpbiB1bml0IGNpcmNsZSkgICAqLwotc3RhdGljIG9w
dXNfaW50MzIgTFBDX2ludmVyc2VfcHJlZF9nYWluX1FBKCAgICAgICAgICAgICAgICAgLyogTyAg
IFJldHVybnMgaW52ZXJzZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAg
ICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgQV9RQVsgMiBdWyBTSUxLX01BWF9PUkRFUl9M
UEMgXSwgICAvKiBJICAgUHJlZGljdGlvbiBjb2VmZmljaWVudHMgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KK3N0YXRpYyBvcHVzX2ludDMyIExQQ19pbnZlcnNlX3ByZWRfZ2Fp
bl9RQV9jKCAgICAgICAgICAgICAgIC8qIE8gICBSZXR1cm5zIGludmVyc2UgcHJlZGljdGlvbiBn
YWluIGluIGVuZXJneSBkb21haW4sIFEzMCAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAg
IEFfUUFbIFNJTEtfTUFYX09SREVSX0xQQyBdLCAgICAgICAgLyogSSAgIFByZWRpY3Rpb24gY29l
ZmZpY2llbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
UHJlZGljdGlvbiBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICkKIHsKICAgICBvcHVzX2ludCAgIGssIG4sIG11bHQyUTsKLSAgICBvcHVzX2ludDMyIGlu
dkdhaW5fUTMwLCByY19RMzEsIHJjX211bHQxX1EzMCwgcmNfbXVsdDIsIHRtcF9RQTsKLSAgICBv
cHVzX2ludDMyICpBb2xkX1FBLCAqQW5ld19RQTsKKyAgICBvcHVzX2ludDMyIGludkdhaW5fUTMw
LCByY19RMzEsIHJjX211bHQxX1EzMCwgcmNfbXVsdDIsIHRtcDEsIHRtcDI7CiAKLSAgICBBbmV3
X1FBID0gQV9RQVsgb3JkZXIgJiAxIF07Ci0KLSAgICBpbnZHYWluX1EzMCA9IChvcHVzX2ludDMy
KTEgPDwgMzA7CisgICAgaW52R2Fpbl9RMzAgPSBTSUxLX0ZJWF9DT05TVCggMSwgMzAgKTsKICAg
ICBmb3IoIGsgPSBvcmRlciAtIDE7IGsgPiAwOyBrLS0gKSB7CiAgICAgICAgIC8qIENoZWNrIGZv
ciBzdGFiaWxpdHkgKi8KLSAgICAgICAgaWYoICggQW5ld19RQVsgayBdID4gQV9MSU1JVCApIHx8
ICggQW5ld19RQVsgayBdIDwgLUFfTElNSVQgKSApIHsKKyAgICAgICAgaWYoICggQV9RQVsgayBd
ID4gQV9MSU1JVCApIHx8ICggQV9RQVsgayBdIDwgLUFfTElNSVQgKSApIHsKICAgICAgICAgICAg
IHJldHVybiAwOwogICAgICAgICB9CiAKICAgICAgICAgLyogU2V0IFJDIGVxdWFsIHRvIG5lZ2F0
ZWQgQVIgY29lZiAqLwotICAgICAgICByY19RMzEgPSAtc2lsa19MU0hJRlQoIEFuZXdfUUFbIGsg
XSwgMzEgLSBRQSApOworICAgICAgICByY19RMzEgPSAtc2lsa19MU0hJRlQoIEFfUUFbIGsgXSwg
MzEgLSBRQSApOwogCiAgICAgICAgIC8qIHJjX211bHQxX1EzMCByYW5nZTogWyAxIDogMl4zMCBd
ICovCi0gICAgICAgIHJjX211bHQxX1EzMCA9ICggKG9wdXNfaW50MzIpMSA8PCAzMCApIC0gc2ls
a19TTU1VTCggcmNfUTMxLCByY19RMzEgKTsKKyAgICAgICAgcmNfbXVsdDFfUTMwID0gc2lsa19T
VUIzMiggU0lMS19GSVhfQ09OU1QoIDEsIDMwICksIHNpbGtfU01NVUwoIHJjX1EzMSwgcmNfUTMx
ICkgKTsKICAgICAgICAgc2lsa19hc3NlcnQoIHJjX211bHQxX1EzMCA+ICggMSA8PCAxNSApICk7
ICAgICAgICAgICAgICAgICAgIC8qIHJlZHVjZSBBX0xJTUlUIGlmIGZhaWxzICovCiAgICAgICAg
IHNpbGtfYXNzZXJ0KCByY19tdWx0MV9RMzAgPD0gKCAxIDw8IDMwICkgKTsKIAotICAgICAgICAv
KiByY19tdWx0MiByYW5nZTogWyAyXjMwIDogc2lsa19pbnQzMl9NQVggXSAqLwotICAgICAgICBt
dWx0MlEgPSAzMiAtIHNpbGtfQ0xaMzIoIHNpbGtfYWJzKCByY19tdWx0MV9RMzAgKSApOwotICAg
ICAgICByY19tdWx0MiA9IHNpbGtfSU5WRVJTRTMyX3ZhclEoIHJjX211bHQxX1EzMCwgbXVsdDJR
ICsgMzAgKTsKLQogICAgICAgICAvKiBVcGRhdGUgaW52ZXJzZSBnYWluICovCiAgICAgICAgIC8q
IGludkdhaW5fUTMwIHJhbmdlOiBbIDAgOiAyXjMwIF0gKi8KICAgICAgICAgaW52R2Fpbl9RMzAg
PSBzaWxrX0xTSElGVCggc2lsa19TTU1VTCggaW52R2Fpbl9RMzAsIHJjX211bHQxX1EzMCApLCAy
ICk7CiAgICAgICAgIHNpbGtfYXNzZXJ0KCBpbnZHYWluX1EzMCA+PSAwICAgICAgICAgICApOwog
ICAgICAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPD0gKCAxIDw8IDMwICkgKTsKKyAgICAg
ICAgaWYoIGludkdhaW5fUTMwIDwgU0lMS19GSVhfQ09OU1QoIDEuMGYgLyBNQVhfUFJFRElDVElP
Tl9QT1dFUl9HQUlOLCAzMCApICkgeworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0K
IAotICAgICAgICAvKiBTd2FwIHBvaW50ZXJzICovCi0gICAgICAgIEFvbGRfUUEgPSBBbmV3X1FB
OwotICAgICAgICBBbmV3X1FBID0gQV9RQVsgayAmIDEgXTsKKyAgICAgICAgLyogcmNfbXVsdDIg
cmFuZ2U6IFsgMl4zMCA6IHNpbGtfaW50MzJfTUFYIF0gKi8KKyAgICAgICAgbXVsdDJRID0gMzIg
LSBzaWxrX0NMWjMyKCBzaWxrX2FicyggcmNfbXVsdDFfUTMwICkgKTsKKyAgICAgICAgcmNfbXVs
dDIgPSBzaWxrX0lOVkVSU0UzMl92YXJRKCByY19tdWx0MV9RMzAsIG11bHQyUSArIDMwICk7CiAK
ICAgICAgICAgLyogVXBkYXRlIEFSIGNvZWZmaWNpZW50ICovCi0gICAgICAgIGZvciggbiA9IDA7
IG4gPCBrOyBuKysgKSB7Ci0gICAgICAgICAgICB0bXBfUUEgPSBBb2xkX1FBWyBuIF0gLSBNVUwz
Ml9GUkFDX1EoIEFvbGRfUUFbIGsgLSBuIC0gMSBdLCByY19RMzEsIDMxICk7Ci0gICAgICAgICAg
ICBBbmV3X1FBWyBuIF0gPSBNVUwzMl9GUkFDX1EoIHRtcF9RQSwgcmNfbXVsdDIgLCBtdWx0MlEg
KTsKKyAgICAgICAgZm9yKCBuID0gMDsgbiA8IChrICsgMSkgPj4gMTsgbisrICkgeworICAgICAg
ICAgICAgb3B1c19pbnQ2NCB0bXA2NDsKKyAgICAgICAgICAgIHRtcDEgPSBBX1FBWyBuIF07Cisg
ICAgICAgICAgICB0bXAyID0gQV9RQVsgayAtIG4gLSAxIF07CisgICAgICAgICAgICB0bXA2NCA9
IHNpbGtfUlNISUZUX1JPVU5ENjQoIHNpbGtfU01VTEwoIHNpbGtfU1VCX1NBVDMyKHRtcDEsCisg
ICAgICAgICAgICAgICAgICBNVUwzMl9GUkFDX1EoIHRtcDIsIHJjX1EzMSwgMzEgKSApLCByY19t
dWx0MiApLCBtdWx0MlEpOworICAgICAgICAgICAgaWYoIHRtcDY0ID4gc2lsa19pbnQzMl9NQVgg
fHwgdG1wNjQgPCBzaWxrX2ludDMyX01JTiApIHsKKyAgICAgICAgICAgICAgIHJldHVybiAwOwor
ICAgICAgICAgICAgfQorICAgICAgICAgICAgQV9RQVsgbiBdID0gKCBvcHVzX2ludDMyICl0bXA2
NDsKKyAgICAgICAgICAgIHRtcDY0ID0gc2lsa19SU0hJRlRfUk9VTkQ2NCggc2lsa19TTVVMTCgg
c2lsa19TVUJfU0FUMzIodG1wMiwKKyAgICAgICAgICAgICAgICAgIE1VTDMyX0ZSQUNfUSggdG1w
MSwgcmNfUTMxLCAzMSApICksIHJjX211bHQyKSwgbXVsdDJRKTsKKyAgICAgICAgICAgIGlmKCB0
bXA2NCA+IHNpbGtfaW50MzJfTUFYIHx8IHRtcDY0IDwgc2lsa19pbnQzMl9NSU4gKSB7CisgICAg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIEFfUUFbIGsg
LSBuIC0gMSBdID0gKCBvcHVzX2ludDMyICl0bXA2NDsKICAgICAgICAgfQogICAgIH0KIAogICAg
IC8qIENoZWNrIGZvciBzdGFiaWxpdHkgKi8KLSAgICBpZiggKCBBbmV3X1FBWyAwIF0gPiBBX0xJ
TUlUICkgfHwgKCBBbmV3X1FBWyAwIF0gPCAtQV9MSU1JVCApICkgeworICAgIGlmKCAoIEFfUUFb
IGsgXSA+IEFfTElNSVQgKSB8fCAoIEFfUUFbIGsgXSA8IC1BX0xJTUlUICkgKSB7CiAgICAgICAg
IHJldHVybiAwOwogICAgIH0KIAogICAgIC8qIFNldCBSQyBlcXVhbCB0byBuZWdhdGVkIEFSIGNv
ZWYgKi8KLSAgICByY19RMzEgPSAtc2lsa19MU0hJRlQoIEFuZXdfUUFbIDAgXSwgMzEgLSBRQSAp
OworICAgIHJjX1EzMSA9IC1zaWxrX0xTSElGVCggQV9RQVsgMCBdLCAzMSAtIFFBICk7CiAKICAg
ICAvKiBSYW5nZTogWyAxIDogMl4zMCBdICovCi0gICAgcmNfbXVsdDFfUTMwID0gKCAob3B1c19p
bnQzMikxIDw8IDMwICkgLSBzaWxrX1NNTVVMKCByY19RMzEsIHJjX1EzMSApOworICAgIHJjX211
bHQxX1EzMCA9IHNpbGtfU1VCMzIoIFNJTEtfRklYX0NPTlNUKCAxLCAzMCApLCBzaWxrX1NNTVVM
KCByY19RMzEsIHJjX1EzMSApICk7CiAKICAgICAvKiBVcGRhdGUgaW52ZXJzZSBnYWluICovCiAg
ICAgLyogUmFuZ2U6IFsgMCA6IDJeMzAgXSAqLwogICAgIGludkdhaW5fUTMwID0gc2lsa19MU0hJ
RlQoIHNpbGtfU01NVUwoIGludkdhaW5fUTMwLCByY19tdWx0MV9RMzAgKSwgMiApOwotICAgIHNp
bGtfYXNzZXJ0KCBpbnZHYWluX1EzMCA+PSAwICAgICApOwotICAgIHNpbGtfYXNzZXJ0KCBpbnZH
YWluX1EzMCA8PSAxPDwzMCApOworICAgIHNpbGtfYXNzZXJ0KCBpbnZHYWluX1EzMCA+PSAwICAg
ICAgICAgICApOworICAgIHNpbGtfYXNzZXJ0KCBpbnZHYWluX1EzMCA8PSAoIDEgPDwgMzAgKSAp
OworICAgIGlmKCBpbnZHYWluX1EzMCA8IFNJTEtfRklYX0NPTlNUKCAxLjBmIC8gTUFYX1BSRURJ
Q1RJT05fUE9XRVJfR0FJTiwgMzAgKSApIHsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQogCiAg
ICAgcmV0dXJuIGludkdhaW5fUTMwOwogfQogCiAvKiBGb3IgaW5wdXQgaW4gUTEyIGRvbWFpbiAq
Lwotb3B1c19pbnQzMiBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbiggICAgICAgICAgICAgIC8q
IE8gICBSZXR1cm5zIGludmVyc2UgcHJlZGljdGlvbiBnYWluIGluIGVuZXJneSBkb21haW4sIFEz
MCAgICAgICAgKi8KK29wdXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fYyggICAg
ICAgICAgICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kg
ZG9tYWluLCBRMzAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICpB
X1ExMiwgICAgICAgICAgICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRzLCBRMTIgW29y
ZGVyXSAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICBvcmRlciAgICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIG9yZGVyICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKICAgICBvcHVz
X2ludCAgIGs7Ci0gICAgb3B1c19pbnQzMiBBdG1wX1FBWyAyIF1bIFNJTEtfTUFYX09SREVSX0xQ
QyBdOwotICAgIG9wdXNfaW50MzIgKkFuZXdfUUE7CisgICAgb3B1c19pbnQzMiBBdG1wX1FBWyBT
SUxLX01BWF9PUkRFUl9MUEMgXTsKICAgICBvcHVzX2ludDMyIERDX3Jlc3AgPSAwOwogCi0gICAg
QW5ld19RQSA9IEF0bXBfUUFbIG9yZGVyICYgMSBdOwotCiAgICAgLyogSW5jcmVhc2UgUSBkb21h
aW4gb2YgdGhlIEFSIGNvZWZmaWNpZW50cyAqLwogICAgIGZvciggayA9IDA7IGsgPCBvcmRlcjsg
aysrICkgewogICAgICAgICBEQ19yZXNwICs9IChvcHVzX2ludDMyKUFfUTEyWyBrIF07Ci0gICAg
ICAgIEFuZXdfUUFbIGsgXSA9IHNpbGtfTFNISUZUMzIoIChvcHVzX2ludDMyKUFfUTEyWyBrIF0s
IFFBIC0gMTIgKTsKKyAgICAgICAgQXRtcF9RQVsgayBdID0gc2lsa19MU0hJRlQzMiggKG9wdXNf
aW50MzIpQV9RMTJbIGsgXSwgUUEgLSAxMiApOwogICAgIH0KICAgICAvKiBJZiB0aGUgREMgaXMg
dW5zdGFibGUsIHdlIGRvbid0IGV2ZW4gbmVlZCB0byBkbyB0aGUgZnVsbCBjYWxjdWxhdGlvbnMg
Ki8KICAgICBpZiggRENfcmVzcCA+PSA0MDk2ICkgewogICAgICAgICByZXR1cm4gMDsKICAgICB9
Ci0gICAgcmV0dXJuIExQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RQSggQXRtcF9RQSwgb3JkZXIgKTsK
KyAgICByZXR1cm4gTFBDX2ludmVyc2VfcHJlZF9nYWluX1FBX2MoIEF0bXBfUUEsIG9yZGVyICk7
CiB9Ci0KLSNpZmRlZiBGSVhFRF9QT0lOVAotCi0vKiBGb3IgaW5wdXQgaW4gUTI0IGRvbWFpbiAq
Lwotb3B1c19pbnQzMiBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoICAgICAgICAgIC8q
IE8gICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBR
MzAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKkFfUTI0LCAgICAg
ICAgICAgICAvKiBJICAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRzIFtvcmRlcl0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG9y
ZGVyICAgICAgICAgICAgICAgLyogSSAgICBQcmVkaWN0aW9uIG9yZGVyICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50ICAgazsK
LSAgICBvcHVzX2ludDMyIEF0bXBfUUFbIDIgXVsgU0lMS19NQVhfT1JERVJfTFBDIF07Ci0gICAg
b3B1c19pbnQzMiAqQW5ld19RQTsKLQotICAgIEFuZXdfUUEgPSBBdG1wX1FBWyBvcmRlciAmIDEg
XTsKLQotICAgIC8qIEluY3JlYXNlIFEgZG9tYWluIG9mIHRoZSBBUiBjb2VmZmljaWVudHMgKi8K
LSAgICBmb3IoIGsgPSAwOyBrIDwgb3JkZXI7IGsrKyApIHsKLSAgICAgICAgQW5ld19RQVsgayBd
ID0gc2lsa19SU0hJRlQzMiggQV9RMjRbIGsgXSwgMjQgLSBRQSApOwotICAgIH0KLQotICAgIHJl
dHVybiBMUENfaW52ZXJzZV9wcmVkX2dhaW5fUUEoIEF0bXBfUUEsIG9yZGVyICk7Ci19Ci0jZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9MUF92YXJpYWJsZV9jdXRvZmYuYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUF92YXJpYWJs
ZV9jdXRvZmYuYwppbmRleCBmNjM5ZTFmODk5YTljMjNlN2U1NDIwNTUyODdjOTNlOTlmM2I4Nzc0
Li43OTExMmFkMzU0YTE1N2FlNjhiZWRhNGQzNTVmMGYxMTZmMmI2ZjhhIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvTFBfdmFyaWFibGVfY3V0b2ZmLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQX3ZhcmlhYmxlX2N1dG9mZi5jCkBA
IC0xMzAsNiArMTMwLDYgQEAgdm9pZCBzaWxrX0xQX3ZhcmlhYmxlX2N1dG9mZigKIAogICAgICAg
ICAvKiBBUk1BIGxvdy1wYXNzIGZpbHRlcmluZyAqLwogICAgICAgICBzaWxrX2Fzc2VydCggVFJB
TlNJVElPTl9OQiA9PSAzICYmIFRSQU5TSVRJT05fTkEgPT0gMiApOwotICAgICAgICBzaWxrX2Jp
cXVhZF9hbHQoIGZyYW1lLCBCX1EyOCwgQV9RMjgsIHBzTFAtPkluX0xQX1N0YXRlLCBmcmFtZSwg
ZnJhbWVfbGVuZ3RoLCAxKTsKKyAgICAgICAgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTEoIGZyYW1l
LCBCX1EyOCwgQV9RMjgsIHBzTFAtPkluX0xQX1N0YXRlLCBmcmFtZSwgZnJhbWVfbGVuZ3RoKTsK
ICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTWFjcm9Db3VudC5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL01hY3JvQ291bnQu
aAppbmRleCA4MzQ4MTdkMDU4YjllOWU0YjhlN2MyNDRhOWNlNzM1Mjc4Y2YzNTQ0Li43ODEwMGZm
ZWRlYjI5MDYxODA5MzI3MzA5NTk5ODYzYTRkYzRhZjQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTWFjcm9D
b3VudC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9NYWNyb0NvdW50LmgKQEAgLTMxOSwxNCArMzE5LDYgQEAgc3RhdGlj
IE9QVVNfSU5MSU5FIG9wdXNfaW50MzIgc2lsa19BRERfUE9TX1NBVDMyKG9wdXNfaW50NjQgYSwg
b3B1c19pbnQ2NCBiKXsKICAgICByZXR1cm4odG1wKTsKIH0KIAotI3VuZGVmIHNpbGtfQUREX1BP
U19TQVQ2NAotc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50NjQgc2lsa19BRERfUE9TX1NBVDY0
KG9wdXNfaW50NjQgYSwgb3B1c19pbnQ2NCBiKXsKLSAgICBvcHVzX2ludDY0IHRtcDsKLSAgICBv
cHNfY291bnQgKz0gMTsKLSAgICB0bXAgPSAoKCgoYSkrKGIpKSAmIDB4ODAwMDAwMDAwMDAwMDAw
MExMKSA/IHNpbGtfaW50NjRfTUFYIDogKChhKSsoYikpKTsKLSAgICByZXR1cm4odG1wKTsKLX0K
LQogI3VuZGVmICAgIHNpbGtfTFNISUZUOAogc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50OCBz
aWxrX0xTSElGVDgob3B1c19pbnQ4IGEsIG9wdXNfaW50MzIgc2hpZnQpewogICAgIG9wdXNfaW50
OCByZXQ7CkBAIC02OTksNyArNjkxLDcgQEAgcmV0dXJuKHJldCk7CiAKIAogI3VuZGVmIHNpbGtf
TElNSVRfMzIKLXN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludCBzaWxrX0xJTUlUXzMyKG9wdXNf
aW50MzIgYSwgb3B1c19pbnQzMiBsaW1pdDEsIG9wdXNfaW50MzIgbGltaXQyKQorc3RhdGljIE9Q
VVNfSU5MSU5FIG9wdXNfaW50MzIgc2lsa19MSU1JVF8zMihvcHVzX2ludDMyIGEsIG9wdXNfaW50
MzIgbGltaXQxLCBvcHVzX2ludDMyIGxpbWl0MikKIHsKICAgICBvcHVzX2ludDMyIHJldDsKICAg
ICBvcHNfY291bnQgKz0gNjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9NYWNyb0RlYnVnLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTWFj
cm9EZWJ1Zy5oCmluZGV4IDM1YWVkYzVjNWZhNjQ2NzIyZTY4NzllZTUxYzc4ZjMyNDQ5MWVkODQu
LjhkZDRjZTJlZTI3NWE2YTY0ZjRiMWVkZTUyNmZhOGI0MjhmNjEyMmIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9NYWNyb0RlYnVnLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL01hY3JvRGVidWcuaApAQCAtNTM5LDggKzUzOSw3IEBA
IHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMyIHNpbGtfRElWMzJfMTZfKG9wdXNfaW50MzIg
YTMyLCBvcHVzX2ludDMyIGIzMiwgY2hhCiAgICBubyBjaGVja2luZyBuZWVkZWQgZm9yIHNpbGtf
UE9TX1NBVDMyCiAgICBubyBjaGVja2luZyBuZWVkZWQgZm9yIHNpbGtfQUREX1BPU19TQVQ4CiAg
ICBubyBjaGVja2luZyBuZWVkZWQgZm9yIHNpbGtfQUREX1BPU19TQVQxNgotICAgbm8gY2hlY2tp
bmcgbmVlZGVkIGZvciBzaWxrX0FERF9QT1NfU0FUMzIKLSAgIG5vIGNoZWNraW5nIG5lZWRlZCBm
b3Igc2lsa19BRERfUE9TX1NBVDY0ICovCisgICBubyBjaGVja2luZyBuZWVkZWQgZm9yIHNpbGtf
QUREX1BPU19TQVQzMiAqLwogCiAjdW5kZWYgc2lsa19MU0hJRlQ4CiAjZGVmaW5lIHNpbGtfTFNI
SUZUOChhLGIpIHNpbGtfTFNISUZUOF8oKGEpLCAoYiksIF9fRklMRV9fLCBfX0xJTkVfXykKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9OTFNGMkEuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGMkEuYwppbmRleCBiMWM1NTllYTY4MjEz
ZTA2ZDM5ZGU3OWM5NzdlODZmNTczYmQ1MWM4Li4xMTZiNDY1YjFkYjhjNjc4MTc3YWRlZGJjNmQy
NWZmOWVkMzg3NTEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRjJBLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0YyQS5j
CkBAIC02Niw3ICs2Niw4IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTkxTRjJBX2Zp
bmRfcG9seSgKIHZvaWQgc2lsa19OTFNGMkEoCiAgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAg
ICAgICphX1ExMiwgICAgICAgICAgICAgLyogTyAgICBtb25pYyB3aGl0ZW5pbmcgZmlsdGVyIGNv
ZWZmaWNpZW50cyBpbiBRMTIsICBbIGQgXSAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgICAgICAgICAqTkxTRiwgICAgICAgICAgICAgIC8qIEkgICAgbm9ybWFsaXplZCBsaW5l
IHNwZWN0cmFsIGZyZXF1ZW5jaWVzIGluIFExNSwgWyBkIF0gICAgICAgICAgKi8KLSAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAvKiBJICAgIGZpbHRl
ciBvcmRlciAoc2hvdWxkIGJlIGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGQsICAgICAgICAgICAgICAgICAgLyog
SSAgICBmaWx0ZXIgb3JkZXIgKHNob3VsZCBiZSBldmVuKSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAg
ICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICkKIHsKICAgICAvKiBUaGlzIG9yZGVyaW5nIHdhcyBmb3Vu
ZCB0byBtYXhpbWl6ZSBxdWFsaXR5LiBJdCBpbXByb3ZlcyBudW1lcmljYWwgYWNjdXJhY3kgb2YK
QEAgLTgzLDE1ICs4NCwxNCBAQCB2b2lkIHNpbGtfTkxTRjJBKAogICAgIG9wdXNfaW50MzIgUFsg
U0lMS19NQVhfT1JERVJfTFBDIC8gMiArIDEgXSwgUVsgU0lMS19NQVhfT1JERVJfTFBDIC8gMiAr
IDEgXTsKICAgICBvcHVzX2ludDMyIFB0bXAsIFF0bXAsIGZfaW50LCBmX2ZyYWMsIGNvc192YWws
IGRlbHRhOwogICAgIG9wdXNfaW50MzIgYTMyX1FBMVsgU0lMS19NQVhfT1JERVJfTFBDIF07Ci0g
ICAgb3B1c19pbnQzMiBtYXhhYnMsIGFic3ZhbCwgaWR4PTAsIHNjX1ExNjsKIAogICAgIHNpbGtf
YXNzZXJ0KCBMU0ZfQ09TX1RBQl9TWl9GSVggPT0gMTI4ICk7Ci0gICAgc2lsa19hc3NlcnQoIGQ9
PTEwfHxkPT0xNiApOworICAgIHNpbGtfYXNzZXJ0KCBkPT0xMCB8fCBkPT0xNiApOwogCiAgICAg
LyogY29udmVydCBMU0ZzIHRvIDIqY29zKExTRiksIHVzaW5nIHBpZWNld2lzZSBsaW5lYXIgY3Vy
dmUgZnJvbSB0YWJsZSAqLwogICAgIG9yZGVyaW5nID0gZCA9PSAxNiA/IG9yZGVyaW5nMTYgOiBv
cmRlcmluZzEwOwogICAgIGZvciggayA9IDA7IGsgPCBkOyBrKysgKSB7Ci0gICAgICAgIHNpbGtf
YXNzZXJ0KE5MU0Zba10gPj0gMCApOworICAgICAgICBzaWxrX2Fzc2VydCggTkxTRltrXSA+PSAw
ICk7CiAKICAgICAgICAgLyogZl9pbnQgb24gYSBzY2FsZSAwLTEyNyAocm91bmRlZCBkb3duKSAq
LwogICAgICAgICBmX2ludCA9IHNpbGtfUlNISUZUKCBOTFNGW2tdLCAxNSAtIDcgKTsKQEAgLTEy
Niw1MiArMTI2LDE1IEBAIHZvaWQgc2lsa19OTFNGMkEoCiAgICAgICAgIGEzMl9RQTFbIGQtay0x
IF0gPSAgUXRtcCAtIFB0bXA7ICAgICAgICAvKiBRQSsxICovCiAgICAgfQogCi0gICAgLyogTGlt
aXQgdGhlIG1heGltdW0gYWJzb2x1dGUgdmFsdWUgb2YgdGhlIHByZWRpY3Rpb24gY29lZmZpY2ll
bnRzLCBzbyB0aGF0IHRoZXknbGwgZml0IGluIGludDE2ICovCi0gICAgZm9yKCBpID0gMDsgaSA8
IDEwOyBpKysgKSB7Ci0gICAgICAgIC8qIEZpbmQgbWF4aW11bSBhYnNvbHV0ZSB2YWx1ZSBhbmQg
aXRzIGluZGV4ICovCi0gICAgICAgIG1heGFicyA9IDA7Ci0gICAgICAgIGZvciggayA9IDA7IGsg
PCBkOyBrKysgKSB7Ci0gICAgICAgICAgICBhYnN2YWwgPSBzaWxrX2FicyggYTMyX1FBMVtrXSAp
OwotICAgICAgICAgICAgaWYoIGFic3ZhbCA+IG1heGFicyApIHsKLSAgICAgICAgICAgICAgICBt
YXhhYnMgPSBhYnN2YWw7Ci0gICAgICAgICAgICAgICAgaWR4ICAgID0gazsKLSAgICAgICAgICAg
IH0KLSAgICAgICAgfQotICAgICAgICBtYXhhYnMgPSBzaWxrX1JTSElGVF9ST1VORCggbWF4YWJz
LCBRQSArIDEgLSAxMiApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIFFBKzEgLT4gUTEyICovCi0KLSAgICAgICAgaWYoIG1heGFicyA+IHNpbGtfaW50MTZfTUFY
ICkgewotICAgICAgICAgICAgLyogUmVkdWNlIG1hZ25pdHVkZSBvZiBwcmVkaWN0aW9uIGNvZWZm
aWNpZW50cyAqLwotICAgICAgICAgICAgbWF4YWJzID0gc2lsa19taW4oIG1heGFicywgMTYzODM4
ICk7ICAvKiAoIHNpbGtfaW50MzJfTUFYID4+IDE0ICkgKyBzaWxrX2ludDE2X01BWCA9IDE2Mzgz
OCAqLwotICAgICAgICAgICAgc2NfUTE2ID0gU0lMS19GSVhfQ09OU1QoIDAuOTk5LCAxNiApIC0g
c2lsa19ESVYzMiggc2lsa19MU0hJRlQoIG1heGFicyAtIHNpbGtfaW50MTZfTUFYLCAxNCApLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpbGtfUlNISUZUMzIoIHNp
bGtfTVVMKCBtYXhhYnMsIGlkeCArIDEpLCAyICkgKTsKLSAgICAgICAgICAgIHNpbGtfYndleHBh
bmRlcl8zMiggYTMyX1FBMSwgZCwgc2NfUTE2ICk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAg
ICAgICBicmVhazsKLSAgICAgICAgfQotICAgIH0KKyAgICAvKiBDb252ZXJ0IGludDMyIGNvZWZm
aWNpZW50cyB0byBRMTIgaW50MTYgY29lZnMgKi8KKyAgICBzaWxrX0xQQ19maXQoIGFfUTEyLCBh
MzJfUUExLCAxMiwgUUEgKyAxLCBkICk7CiAKLSAgICBpZiggaSA9PSAxMCApIHsKLSAgICAgICAg
LyogUmVhY2hlZCB0aGUgbGFzdCBpdGVyYXRpb24sIGNsaXAgdGhlIGNvZWZmaWNpZW50cyAqLwor
ICAgIGZvciggaSA9IDA7IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKCBhX1ExMiwgZCwgYXJj
aCApID09IDAgJiYgaSA8IE1BWF9MUENfU1RBQklMSVpFX0lURVJBVElPTlM7IGkrKyApIHsKKyAg
ICAgICAgLyogUHJlZGljdGlvbiBjb2VmZmljaWVudHMgYXJlICh0b28gY2xvc2UgdG8pIHVuc3Rh
YmxlOyBhcHBseSBiYW5kd2lkdGggZXhwYW5zaW9uICAgKi8KKyAgICAgICAgLyogb24gdGhlIHVu
c2NhbGVkIGNvZWZmaWNpZW50cywgY29udmVydCB0byBRMTIgYW5kIG1lYXN1cmUgYWdhaW4gICAg
ICAgICAgICAgICAgICAgKi8KKyAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBhMzJfUUExLCBk
LCA2NTUzNiAtIHNpbGtfTFNISUZUKCAyLCBpICkgKTsKICAgICAgICAgZm9yKCBrID0gMDsgayA8
IGQ7IGsrKyApIHsKLSAgICAgICAgICAgIGFfUTEyWyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1NB
VDE2KCBzaWxrX1JTSElGVF9ST1VORCggYTMyX1FBMVsgayBdLCBRQSArIDEgLSAxMiApICk7ICAv
KiBRQSsxIC0+IFExMiAqLwotICAgICAgICAgICAgYTMyX1FBMVsgayBdID0gc2lsa19MU0hJRlQo
IChvcHVzX2ludDMyKWFfUTEyWyBrIF0sIFFBICsgMSAtIDEyICk7Ci0gICAgICAgIH0KLSAgICB9
IGVsc2UgewotICAgICAgICBmb3IoIGsgPSAwOyBrIDwgZDsgaysrICkgewotICAgICAgICAgICAg
YV9RMTJbIGsgXSA9IChvcHVzX2ludDE2KXNpbGtfUlNISUZUX1JPVU5EKCBhMzJfUUExWyBrIF0s
IFFBICsgMSAtIDEyICk7ICAgICAgICAgICAgICAgIC8qIFFBKzEgLT4gUTEyICovCi0gICAgICAg
IH0KLSAgICB9Ci0KLSAgICBmb3IoIGkgPSAwOyBpIDwgTUFYX0xQQ19TVEFCSUxJWkVfSVRFUkFU
SU9OUzsgaSsrICkgewotICAgICAgICBpZiggc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4oIGFf
UTEyLCBkICkgPCBTSUxLX0ZJWF9DT05TVCggMS4wIC8gTUFYX1BSRURJQ1RJT05fUE9XRVJfR0FJ
TiwgMzAgKSApIHsKLSAgICAgICAgICAgIC8qIFByZWRpY3Rpb24gY29lZmZpY2llbnRzIGFyZSAo
dG9vIGNsb3NlIHRvKSB1bnN0YWJsZTsgYXBwbHkgYmFuZHdpZHRoIGV4cGFuc2lvbiAgICovCi0g
ICAgICAgICAgICAvKiBvbiB0aGUgdW5zY2FsZWQgY29lZmZpY2llbnRzLCBjb252ZXJ0IHRvIFEx
MiBhbmQgbWVhc3VyZSBhZ2FpbiAgICAgICAgICAgICAgICAgICAqLwotICAgICAgICAgICAgc2ls
a19id2V4cGFuZGVyXzMyKCBhMzJfUUExLCBkLCA2NTUzNiAtIHNpbGtfTFNISUZUKCAyLCBpICkg
KTsKLSAgICAgICAgICAgIGZvciggayA9IDA7IGsgPCBkOyBrKysgKSB7Ci0gICAgICAgICAgICAg
ICAgYV9RMTJbIGsgXSA9IChvcHVzX2ludDE2KXNpbGtfUlNISUZUX1JPVU5EKCBhMzJfUUExWyBr
IF0sIFFBICsgMSAtIDEyICk7ICAgICAgICAgICAgLyogUUErMSAtPiBRMTIgKi8KLSAgICAgICAg
ICAgIH0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAg
YV9RMTJbIGsgXSA9IChvcHVzX2ludDE2KXNpbGtfUlNISUZUX1JPVU5EKCBhMzJfUUExWyBrIF0s
IFFBICsgMSAtIDEyICk7ICAgICAgICAgICAgLyogUUErMSAtPiBRMTIgKi8KICAgICAgICAgfQog
ICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX1ZRLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9WUS5jCmluZGV4
IDY5YjZlMjJlMTg5NjVhOTgwNGI1NGFlYzFiOWZmN2NiODI0NTM2NTIuLjQ1MmYzZGNiN2RkZDhh
Nzg4YTAwZjNjMjdjMTM5ZTk1ZWEyMGJiZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX1ZRLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL05MU0ZfVlEuYwpAQCAtMzMsMzYgKzMzLDQ0IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogCiAvKiBDb21wdXRlIHF1YW50aXphdGlvbiBlcnJvcnMgZm9yIGFuIExQQ19vcmRl
ciBlbGVtZW50IGlucHV0IHZlY3RvciBmb3IgYSBWUSBjb2RlYm9vayAqLwogdm9pZCBzaWxrX05M
U0ZfVlEoCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIGVycl9RMjZbXSwgICAgICAg
ICAgICAgICAgICAgICAgLyogTyAgICBRdWFudGl6YXRpb24gZXJyb3JzIFtLXSAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIGVycl9RMjRbXSwg
ICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBRdWFudGl6YXRpb24gZXJyb3JzIFtLXSAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGluX1Ex
NVtdLCAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCB2ZWN0b3JzIHRvIGJlIHF1
YW50aXplZCBbTFBDX29yZGVyXSAgICovCiAgICAgY29uc3Qgb3B1c191aW50OCAgICAgICAgICAg
IHBDQl9ROFtdLCAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb2RlYm9vayB2ZWN0b3Jz
IFtLKkxQQ19vcmRlcl0gICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgIHBXZ2h0X1E5W10sICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb2RlYm9vayB3
ZWlnaHRzIFtLKkxQQ19vcmRlcl0gICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQg
ICAgICAgICAgICAgIEssICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1i
ZXIgb2YgY29kZWJvb2sgdmVjdG9ycyAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgIExQQ19vcmRlciAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBOdW1iZXIgb2YgTFBDcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7Ci0g
ICAgb3B1c19pbnQgICAgICAgIGksIG07Ci0gICAgb3B1c19pbnQzMiAgICAgIGRpZmZfUTE1LCBz
dW1fZXJyb3JfUTMwLCBzdW1fZXJyb3JfUTI2OworICAgIG9wdXNfaW50ICAgICAgICAgaSwgbTsK
KyAgICBvcHVzX2ludDMyICAgICAgIGRpZmZfUTE1LCBkaWZmd19RMjQsIHN1bV9lcnJvcl9RMjQs
IHByZWRfUTI0OworICAgIGNvbnN0IG9wdXNfaW50MTYgKndfUTlfcHRyOworICAgIGNvbnN0IG9w
dXNfdWludDggKmNiX1E4X3B0cjsKIAotICAgIHNpbGtfYXNzZXJ0KCBMUENfb3JkZXIgPD0gMTYg
KTsKICAgICBzaWxrX2Fzc2VydCggKCBMUENfb3JkZXIgJiAxICkgPT0gMCApOwogCiAgICAgLyog
TG9vcCBvdmVyIGNvZGVib29rICovCisgICAgY2JfUThfcHRyID0gcENCX1E4OworICAgIHdfUTlf
cHRyID0gcFdnaHRfUTk7CiAgICAgZm9yKCBpID0gMDsgaSA8IEs7IGkrKyApIHsKLSAgICAgICAg
c3VtX2Vycm9yX1EyNiA9IDA7Ci0gICAgICAgIGZvciggbSA9IDA7IG0gPCBMUENfb3JkZXI7IG0g
Kz0gMiApIHsKLSAgICAgICAgICAgIC8qIENvbXB1dGUgd2VpZ2h0ZWQgc3F1YXJlZCBxdWFudGl6
YXRpb24gZXJyb3IgZm9yIGluZGV4IG0gKi8KLSAgICAgICAgICAgIGRpZmZfUTE1ID0gc2lsa19T
VUJfTFNISUZUMzIoIGluX1ExNVsgbSBdLCAob3B1c19pbnQzMikqcENCX1E4KyssIDcgKTsgLyog
cmFuZ2U6IFsgLTMyNzY3IDogMzI3NjcgXSovCi0gICAgICAgICAgICBzdW1fZXJyb3JfUTMwID0g
c2lsa19TTVVMQkIoIGRpZmZfUTE1LCBkaWZmX1ExNSApOworICAgICAgICBzdW1fZXJyb3JfUTI0
ID0gMDsKKyAgICAgICAgcHJlZF9RMjQgPSAwOworICAgICAgICBmb3IoIG0gPSBMUENfb3JkZXIt
MjsgbSA+PSAwOyBtIC09IDIgKSB7CisgICAgICAgICAgICAvKiBDb21wdXRlIHdlaWdodGVkIGFi
c29sdXRlIHByZWRpY3RpdmUgcXVhbnRpemF0aW9uIGVycm9yIGZvciBpbmRleCBtICsgMSAqLwor
ICAgICAgICAgICAgZGlmZl9RMTUgPSBzaWxrX1NVQl9MU0hJRlQzMiggaW5fUTE1WyBtICsgMSBd
LCAob3B1c19pbnQzMiljYl9ROF9wdHJbIG0gKyAxIF0sIDcgKTsgLyogcmFuZ2U6IFsgLTMyNzY3
IDogMzI3NjcgXSovCisgICAgICAgICAgICBkaWZmd19RMjQgPSBzaWxrX1NNVUxCQiggZGlmZl9R
MTUsIHdfUTlfcHRyWyBtICsgMSBdICk7CisgICAgICAgICAgICBzdW1fZXJyb3JfUTI0ID0gc2ls
a19BREQzMiggc3VtX2Vycm9yX1EyNCwgc2lsa19hYnMoIHNpbGtfU1VCX1JTSElGVDMyKCBkaWZm
d19RMjQsIHByZWRfUTI0LCAxICkgKSApOworICAgICAgICAgICAgcHJlZF9RMjQgPSBkaWZmd19R
MjQ7CiAKLSAgICAgICAgICAgIC8qIENvbXB1dGUgd2VpZ2h0ZWQgc3F1YXJlZCBxdWFudGl6YXRp
b24gZXJyb3IgZm9yIGluZGV4IG0gKyAxICovCi0gICAgICAgICAgICBkaWZmX1ExNSA9IHNpbGtf
U1VCX0xTSElGVDMyKCBpbl9RMTVbbSArIDFdLCAob3B1c19pbnQzMikqcENCX1E4KyssIDcgKTsg
LyogcmFuZ2U6IFsgLTMyNzY3IDogMzI3NjcgXSovCi0gICAgICAgICAgICBzdW1fZXJyb3JfUTMw
ID0gc2lsa19TTUxBQkIoIHN1bV9lcnJvcl9RMzAsIGRpZmZfUTE1LCBkaWZmX1ExNSApOworICAg
ICAgICAgICAgLyogQ29tcHV0ZSB3ZWlnaHRlZCBhYnNvbHV0ZSBwcmVkaWN0aXZlIHF1YW50aXph
dGlvbiBlcnJvciBmb3IgaW5kZXggbSAqLworICAgICAgICAgICAgZGlmZl9RMTUgPSBzaWxrX1NV
Ql9MU0hJRlQzMiggaW5fUTE1WyBtIF0sIChvcHVzX2ludDMyKWNiX1E4X3B0clsgbSBdLCA3ICk7
IC8qIHJhbmdlOiBbIC0zMjc2NyA6IDMyNzY3IF0qLworICAgICAgICAgICAgZGlmZndfUTI0ID0g
c2lsa19TTVVMQkIoIGRpZmZfUTE1LCB3X1E5X3B0clsgbSBdICk7CisgICAgICAgICAgICBzdW1f
ZXJyb3JfUTI0ID0gc2lsa19BREQzMiggc3VtX2Vycm9yX1EyNCwgc2lsa19hYnMoIHNpbGtfU1VC
X1JTSElGVDMyKCBkaWZmd19RMjQsIHByZWRfUTI0LCAxICkgKSApOworICAgICAgICAgICAgcHJl
ZF9RMjQgPSBkaWZmd19RMjQ7CiAKLSAgICAgICAgICAgIHN1bV9lcnJvcl9RMjYgPSBzaWxrX0FE
RF9SU0hJRlQzMiggc3VtX2Vycm9yX1EyNiwgc3VtX2Vycm9yX1EzMCwgNCApOwotCi0gICAgICAg
ICAgICBzaWxrX2Fzc2VydCggc3VtX2Vycm9yX1EyNiA+PSAwICk7Ci0gICAgICAgICAgICBzaWxr
X2Fzc2VydCggc3VtX2Vycm9yX1EzMCA+PSAwICk7CisgICAgICAgICAgICBzaWxrX2Fzc2VydCgg
c3VtX2Vycm9yX1EyNCA+PSAwICk7CiAgICAgICAgIH0KLSAgICAgICAgZXJyX1EyNlsgaSBdID0g
c3VtX2Vycm9yX1EyNjsKKyAgICAgICAgZXJyX1EyNFsgaSBdID0gc3VtX2Vycm9yX1EyNDsKKyAg
ICAgICAgY2JfUThfcHRyICs9IExQQ19vcmRlcjsKKyAgICAgICAgd19ROV9wdHIgKz0gTFBDX29y
ZGVyOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX2RlY29kZS5jIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0Zf
ZGVjb2RlLmMKaW5kZXggOWY3MTUwNjBiOGVmYjJjM2M2ZDg0YzEwZWRjNjgwMzZmMDI1M2Y0Ni4u
ZWViMGJhOGM5MmM4YjYwZjdkYzYxOTUzZmQ4MDU0ZTg3NGJhMDdkMiAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L05MU0ZfZGVjb2RlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZGVjb2RlLmMKQEAgLTMyLDcgKzMyLDcgQEAg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaW5jbHVkZSAibWFpbi5oIgogCiAvKiBQcmVk
aWN0aXZlIGRlcXVhbnRpemVyIGZvciBOTFNGIHJlc2lkdWFscyAqLwotc3RhdGljIE9QVVNfSU5M
SU5FIHZvaWQgc2lsa19OTFNGX3Jlc2lkdWFsX2RlcXVhbnQoICAgICAgICAgICAgICAgLyogTyAg
ICBSZXR1cm5zIFJEIHZhbHVlIGluIFEzMCAgICAgICAgICAgICAgICAgICAgICovCitzdGF0aWMg
T1BVU19JTkxJTkUgdm9pZCBzaWxrX05MU0ZfcmVzaWR1YWxfZGVxdWFudCggICAgICAgICAgLyog
TyAgICBSZXR1cm5zIFJEIHZhbHVlIGluIFEzMCAgICAgICAgICAgICAgICAgICAgICovCiAgICAg
ICAgICAgb3B1c19pbnQxNiAgICAgICAgIHhfUTEwW10sICAgICAgICAgICAgICAgICAgICAgICAg
LyogTyAgICBPdXRwdXQgWyBvcmRlciBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgY29uc3Qgb3B1c19pbnQ4ICAgICAgICAgIGluZGljZXNbXSwgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBRdWFudGl6YXRpb24gaW5kaWNlcyBbIG9yZGVyIF0gICAgICAgICAgICAgICov
CiAgICAgY29uc3Qgb3B1c191aW50OCAgICAgICAgIHByZWRfY29lZl9ROFtdLCAgICAgICAgICAg
ICAgICAgLyogSSAgICBCYWNrd2FyZCBwcmVkaWN0b3IgY29lZnMgWyBvcmRlciBdICAgICAgICAg
ICovCkBAIC03MCwxNSArNzAsOSBAQCB2b2lkIHNpbGtfTkxTRl9kZWNvZGUoCiAgICAgb3B1c191
aW50OCAgICAgICBwcmVkX1E4WyAgTUFYX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfaW50MTYgICAg
ICAgZWNfaXhbICAgIE1BWF9MUENfT1JERVIgXTsKICAgICBvcHVzX2ludDE2ICAgICAgIHJlc19R
MTBbICBNQVhfTFBDX09SREVSIF07Ci0gICAgb3B1c19pbnQxNiAgICAgICBXX3RtcF9RV1sgTUFY
X0xQQ19PUkRFUiBdOwotICAgIG9wdXNfaW50MzIgICAgICAgV190bXBfUTksIE5MU0ZfUTE1X3Rt
cDsKKyAgICBvcHVzX2ludDMyICAgICAgIE5MU0ZfUTE1X3RtcDsKICAgICBjb25zdCBvcHVzX3Vp
bnQ4ICpwQ0JfZWxlbWVudDsKLQotICAgIC8qIERlY29kZSBmaXJzdCBzdGFnZSAqLwotICAgIHBD
Ql9lbGVtZW50ID0gJnBzTkxTRl9DQi0+Q0IxX05MU0ZfUThbIE5MU0ZJbmRpY2VzWyAwIF0gKiBw
c05MU0ZfQ0ItPm9yZGVyIF07Ci0gICAgZm9yKCBpID0gMDsgaSA8IHBzTkxTRl9DQi0+b3JkZXI7
IGkrKyApIHsKLSAgICAgICAgcE5MU0ZfUTE1WyBpIF0gPSBzaWxrX0xTSElGVCggKG9wdXNfaW50
MTYpcENCX2VsZW1lbnRbIGkgXSwgNyApOwotICAgIH0KKyAgICBjb25zdCBvcHVzX2ludDE2ICpw
Q0JfV2dodF9ROTsKIAogICAgIC8qIFVucGFjayBlbnRyb3B5IHRhYmxlIGluZGljZXMgYW5kIHBy
ZWRpY3RvciBmb3IgY3VycmVudCBDQjEgaW5kZXggKi8KICAgICBzaWxrX05MU0ZfdW5wYWNrKCBl
Y19peCwgcHJlZF9ROCwgcHNOTFNGX0NCLCBOTFNGSW5kaWNlc1sgMCBdICk7CkBAIC04NiwxMyAr
ODAsMTEgQEAgdm9pZCBzaWxrX05MU0ZfZGVjb2RlKAogICAgIC8qIFByZWRpY3RpdmUgcmVzaWR1
YWwgZGVxdWFudGl6ZXIgKi8KICAgICBzaWxrX05MU0ZfcmVzaWR1YWxfZGVxdWFudCggcmVzX1Ex
MCwgJk5MU0ZJbmRpY2VzWyAxIF0sIHByZWRfUTgsIHBzTkxTRl9DQi0+cXVhbnRTdGVwU2l6ZV9R
MTYsIHBzTkxTRl9DQi0+b3JkZXIgKTsKIAotICAgIC8qIFdlaWdodHMgZnJvbSBjb2RlYm9vayB2
ZWN0b3IgKi8KLSAgICBzaWxrX05MU0ZfVlFfd2VpZ2h0c19sYXJvaWEoIFdfdG1wX1FXLCBwTkxT
Rl9RMTUsIHBzTkxTRl9DQi0+b3JkZXIgKTsKLQotICAgIC8qIEFwcGx5IGludmVyc2Ugc3F1YXJl
LXJvb3RlZCB3ZWlnaHRzIGFuZCBhZGQgdG8gb3V0cHV0ICovCisgICAgLyogQXBwbHkgaW52ZXJz
ZSBzcXVhcmUtcm9vdGVkIHdlaWdodHMgdG8gZmlyc3Qgc3RhZ2UgYW5kIGFkZCB0byBvdXRwdXQg
Ki8KKyAgICBwQ0JfZWxlbWVudCA9ICZwc05MU0ZfQ0ItPkNCMV9OTFNGX1E4WyBOTFNGSW5kaWNl
c1sgMCBdICogcHNOTFNGX0NCLT5vcmRlciBdOworICAgIHBDQl9XZ2h0X1E5ID0gJnBzTkxTRl9D
Qi0+Q0IxX1dnaHRfUTlbIE5MU0ZJbmRpY2VzWyAwIF0gKiBwc05MU0ZfQ0ItPm9yZGVyIF07CiAg
ICAgZm9yKCBpID0gMDsgaSA8IHBzTkxTRl9DQi0+b3JkZXI7IGkrKyApIHsKLSAgICAgICAgV190
bXBfUTkgPSBzaWxrX1NRUlRfQVBQUk9YKCBzaWxrX0xTSElGVCggKG9wdXNfaW50MzIpV190bXBf
UVdbIGkgXSwgMTggLSBOTFNGX1dfUSApICk7Ci0gICAgICAgIE5MU0ZfUTE1X3RtcCA9IHNpbGtf
QUREMzIoIHBOTFNGX1ExNVsgaSBdLCBzaWxrX0RJVjMyXzE2KCBzaWxrX0xTSElGVCggKG9wdXNf
aW50MzIpcmVzX1ExMFsgaSBdLCAxNCApLCBXX3RtcF9ROSApICk7CisgICAgICAgIE5MU0ZfUTE1
X3RtcCA9IHNpbGtfQUREX0xTSElGVDMyKCBzaWxrX0RJVjMyXzE2KCBzaWxrX0xTSElGVCggKG9w
dXNfaW50MzIpcmVzX1ExMFsgaSBdLCAxNCApLCBwQ0JfV2dodF9ROVsgaSBdICksIChvcHVzX2lu
dDE2KXBDQl9lbGVtZW50WyBpIF0sIDcgKTsKICAgICAgICAgcE5MU0ZfUTE1WyBpIF0gPSAob3B1
c19pbnQxNilzaWxrX0xJTUlUKCBOTFNGX1ExNV90bXAsIDAsIDMyNzY3ICk7CiAgICAgfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvTkxTRl9kZWxfZGVjX3F1YW50LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9kZWxfZGVjX3F1
YW50LmMKaW5kZXggZGU4OGZlZTA2MGUzNzcyZWI0M2M0ZDBkZjY4MTJhYTEwMTU5MGRiZi4uNDRh
MTZhY2QwYmMxMWFiNzMzYmJiMGJiZTQyYzM3OGIyMWQ0YWYxZiAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05M
U0ZfZGVsX2RlY19xdWFudC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX2RlbF9kZWNfcXVhbnQuYwpAQCAtODQs
NyArODQsNyBAQCBvcHVzX2ludDMyIHNpbGtfTkxTRl9kZWxfZGVjX3F1YW50KCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zCiAgICAgblN0YXRlcyA9IDE7CiAgICAg
UkRfUTI1WyAwIF0gPSAwOwogICAgIHByZXZfb3V0X1ExMFsgMCBdID0gMDsKLSAgICBmb3IoIGkg
PSBvcmRlciAtIDE7IDsgaS0tICkgeworICAgIGZvciggaSA9IG9yZGVyIC0gMTsgaSA+PSAwOyBp
LS0gKSB7CiAgICAgICAgIHJhdGVzX1E1ID0gJmVjX3JhdGVzX1E1WyBlY19peFsgaSBdIF07CiAg
ICAgICAgIGluX1ExMCA9IHhfUTEwWyBpIF07CiAgICAgICAgIGZvciggaiA9IDA7IGogPCBuU3Rh
dGVzOyBqKysgKSB7CkBAIC0xMzEsNyArMTMxLDcgQEAgb3B1c19pbnQzMiBzaWxrX05MU0ZfZGVs
X2RlY19xdWFudCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucwog
ICAgICAgICAgICAgUkRfUTI1WyBqICsgblN0YXRlcyBdID0gc2lsa19TTUxBQkIoIHNpbGtfTUxB
KCBSRF90bXBfUTI1LCBzaWxrX1NNVUxCQiggZGlmZl9RMTAsIGRpZmZfUTEwICksIHdfUTVbIGkg
XSApLCBtdV9RMjAsIHJhdGUxX1E1ICk7CiAgICAgICAgIH0KIAotICAgICAgICBpZiggblN0YXRl
cyA8PSAoIE5MU0ZfUVVBTlRfREVMX0RFQ19TVEFURVMgPj4gMSApICkgeworICAgICAgICBpZigg
blN0YXRlcyA8PSBOTFNGX1FVQU5UX0RFTF9ERUNfU1RBVEVTLzIgKSB7CiAgICAgICAgICAgICAv
KiBkb3VibGUgbnVtYmVyIG9mIHN0YXRlcyBhbmQgY29weSAqLwogICAgICAgICAgICAgZm9yKCBq
ID0gMDsgaiA8IG5TdGF0ZXM7IGorKyApIHsKICAgICAgICAgICAgICAgICBpbmRbIGogKyBuU3Rh
dGVzIF1bIGkgXSA9IGluZFsgaiBdWyBpIF0gKyAxOwpAQCAtMTQwLDcgKzE0MCw3IEBAIG9wdXNf
aW50MzIgc2lsa19OTFNGX2RlbF9kZWNfcXVhbnQoICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBPICAgIFJldHVybnMKICAgICAgICAgICAgIGZvciggaiA9IG5TdGF0ZXM7IGogPCBOTFNG
X1FVQU5UX0RFTF9ERUNfU1RBVEVTOyBqKysgKSB7CiAgICAgICAgICAgICAgICAgaW5kWyBqIF1b
IGkgXSA9IGluZFsgaiAtIG5TdGF0ZXMgXVsgaSBdOwogICAgICAgICAgICAgfQotICAgICAgICB9
IGVsc2UgaWYoIGkgPiAwICkgeworICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLyogc29y
dCBsb3dlciBhbmQgdXBwZXIgaGFsZiBvZiBSRF9RMjUsIHBhaXJ3aXNlICovCiAgICAgICAgICAg
ICBmb3IoIGogPSAwOyBqIDwgTkxTRl9RVUFOVF9ERUxfREVDX1NUQVRFUzsgaisrICkgewogICAg
ICAgICAgICAgICAgIGlmKCBSRF9RMjVbIGogXSA+IFJEX1EyNVsgaiArIE5MU0ZfUVVBTlRfREVM
X0RFQ19TVEFURVMgXSApIHsKQEAgLTE5MSw4ICsxOTEsNiBAQCBvcHVzX2ludDMyIHNpbGtfTkxT
Rl9kZWxfZGVjX3F1YW50KCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1
cm5zCiAgICAgICAgICAgICBmb3IoIGogPSAwOyBqIDwgTkxTRl9RVUFOVF9ERUxfREVDX1NUQVRF
UzsgaisrICkgewogICAgICAgICAgICAgICAgIGluZFsgaiBdWyBpIF0gKz0gc2lsa19SU0hJRlQo
IGluZF9zb3J0WyBqIF0sIE5MU0ZfUVVBTlRfREVMX0RFQ19TVEFURVNfTE9HMiApOwogICAgICAg
ICAgICAgfQotICAgICAgICB9IGVsc2UgeyAgLyogaSA9PSAwICovCi0gICAgICAgICAgICBicmVh
azsKICAgICAgICAgfQogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZW5jb2RlLmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvTkxTRl9lbmNvZGUuYwppbmRleCBmMDNjM2YxYzM1NDlkOWRjY2Y0ZjUxMTUzN2I0MDAxYzQw
OWY3ZTZiLi4yNjhiOWExOTViNTA4NTY1MzY3ODEyYmEyNzQ3YTdiYTZhMWY0YWEwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvTkxTRl9lbmNvZGUuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9lbmNvZGUuYwpAQCAtMzcsOSAr
MzcsOSBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIC8qKioqKioqKioqKioqKioqKioq
KioqKi8KIG9wdXNfaW50MzIgc2lsa19OTFNGX2VuY29kZSggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBPICAgIFJldHVybnMgUkQgdmFsdWUgaW4gUTI1ICAgICAgICAgICAg
ICAgICAgICAgKi8KICAgICAgICAgICBvcHVzX2ludDggICAgICAgICAgICAgKk5MU0ZJbmRpY2Vz
LCAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvZGVib29rIHBhdGggdmVjdG9yIFsgTFBDX09S
REVSICsgMSBdICAgICAgKi8KLSAgICAgICAgICBvcHVzX2ludDE2ICAgICAgICAgICAgKnBOTFNG
X1ExNSwgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFF1YW50aXplZCBOTFNGIHZlY3RvciBb
IExQQ19PUkRFUiBdICAgICAgICAgKi8KKyAgICAgICAgICBvcHVzX2ludDE2ICAgICAgICAgICAg
KnBOTFNGX1ExNSwgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIChVbilxdWFudGl6ZWQgTkxT
RiB2ZWN0b3IgWyBMUENfT1JERVIgXSAgICAgKi8KICAgICBjb25zdCBzaWxrX05MU0ZfQ0Jfc3Ry
dWN0ICAgKnBzTkxTRl9DQiwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvZGVib29rIG9i
amVjdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2
ICAgICAgICAgICAgKnBXX1FXLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE5MU0Yg
d2VpZ2h0IHZlY3RvciBbIExQQ19PUkRFUiBdICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVz
X2ludDE2ICAgICAgICAgICAgKnBXX1EyLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IE5MU0Ygd2VpZ2h0IHZlY3RvciBbIExQQ19PUkRFUiBdICAgICAgICAgICAgKi8KICAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgICAgTkxTRl9tdV9RMjAsICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIFJhdGUgd2VpZ2h0IGZvciB0aGUgUkQgb3B0aW1pemF0aW9uICAgICAgICAgKi8KICAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgblN1cnZpdm9ycywgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIE1heCBzdXJ2aXZvcnMgYWZ0ZXIgZmlyc3Qgc3RhZ2UgICAgICAgICAgICAg
Ki8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgc2lnbmFsVHlwZSAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBlOiAwLzEvMiAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KQEAgLTQ3LDIxICs0NywxOSBAQCBvcHVzX2ludDMyIHNpbGtfTkxTRl9lbmNvZGUo
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zCiB7CiAg
ICAgb3B1c19pbnQgICAgICAgICBpLCBzLCBpbmQxLCBiZXN0SW5kZXgsIHByb2JfUTgsIGJpdHNf
cTc7CiAgICAgb3B1c19pbnQzMiAgICAgICBXX3RtcF9ROSwgcmV0OwotICAgIFZBUkRFQ0woIG9w
dXNfaW50MzIsIGVycl9RMjYgKTsKKyAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBlcnJfUTI0ICk7
CiAgICAgVkFSREVDTCggb3B1c19pbnQzMiwgUkRfUTI1ICk7CiAgICAgVkFSREVDTCggb3B1c19p
bnQsIHRlbXBJbmRpY2VzMSApOwogICAgIFZBUkRFQ0woIG9wdXNfaW50OCwgdGVtcEluZGljZXMy
ICk7Ci0gICAgb3B1c19pbnQxNiAgICAgICByZXNfUTE1WyAgICAgIE1BWF9MUENfT1JERVIgXTsK
ICAgICBvcHVzX2ludDE2ICAgICAgIHJlc19RMTBbICAgICAgTUFYX0xQQ19PUkRFUiBdOwogICAg
IG9wdXNfaW50MTYgICAgICAgTkxTRl90bXBfUTE1WyBNQVhfTFBDX09SREVSIF07Ci0gICAgb3B1
c19pbnQxNiAgICAgICBXX3RtcF9RV1sgICAgIE1BWF9MUENfT1JERVIgXTsKICAgICBvcHVzX2lu
dDE2ICAgICAgIFdfYWRqX1E1WyAgICAgTUFYX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfdWludDgg
ICAgICAgcHJlZF9ROFsgICAgICBNQVhfTFBDX09SREVSIF07CiAgICAgb3B1c19pbnQxNiAgICAg
ICBlY19peFsgICAgICAgIE1BWF9MUENfT1JERVIgXTsKICAgICBjb25zdCBvcHVzX3VpbnQ4ICpw
Q0JfZWxlbWVudCwgKmlDREZfcHRyOworICAgIGNvbnN0IG9wdXNfaW50MTYgKnBDQl9XZ2h0X1E5
OwogICAgIFNBVkVfU1RBQ0s7CiAKLSAgICBzaWxrX2Fzc2VydCggblN1cnZpdm9ycyA8PSBOTFNG
X1ZRX01BWF9TVVJWSVZPUlMgKTsKICAgICBzaWxrX2Fzc2VydCggc2lnbmFsVHlwZSA+PSAwICYm
IHNpZ25hbFR5cGUgPD0gMiApOwogICAgIHNpbGtfYXNzZXJ0KCBOTFNGX211X1EyMCA8PSAzMjc2
NyAmJiBOTFNGX211X1EyMCA+PSAwICk7CiAKQEAgLTY5LDEyICs2NywxMiBAQCBvcHVzX2ludDMy
IHNpbGtfTkxTRl9lbmNvZGUoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
TyAgICBSZXR1cm5zCiAgICAgc2lsa19OTFNGX3N0YWJpbGl6ZSggcE5MU0ZfUTE1LCBwc05MU0Zf
Q0ItPmRlbHRhTWluX1ExNSwgcHNOTFNGX0NCLT5vcmRlciApOwogCiAgICAgLyogRmlyc3Qgc3Rh
Z2U6IFZRICovCi0gICAgQUxMT0MoIGVycl9RMjYsIHBzTkxTRl9DQi0+blZlY3RvcnMsIG9wdXNf
aW50MzIgKTsKLSAgICBzaWxrX05MU0ZfVlEoIGVycl9RMjYsIHBOTFNGX1ExNSwgcHNOTFNGX0NC
LT5DQjFfTkxTRl9ROCwgcHNOTFNGX0NCLT5uVmVjdG9ycywgcHNOTFNGX0NCLT5vcmRlciApOwor
ICAgIEFMTE9DKCBlcnJfUTI0LCBwc05MU0ZfQ0ItPm5WZWN0b3JzLCBvcHVzX2ludDMyICk7Cisg
ICAgc2lsa19OTFNGX1ZRKCBlcnJfUTI0LCBwTkxTRl9RMTUsIHBzTkxTRl9DQi0+Q0IxX05MU0Zf
UTgsIHBzTkxTRl9DQi0+Q0IxX1dnaHRfUTksIHBzTkxTRl9DQi0+blZlY3RvcnMsIHBzTkxTRl9D
Qi0+b3JkZXIgKTsKIAogICAgIC8qIFNvcnQgdGhlIHF1YW50aXphdGlvbiBlcnJvcnMgKi8KICAg
ICBBTExPQyggdGVtcEluZGljZXMxLCBuU3Vydml2b3JzLCBvcHVzX2ludCApOwotICAgIHNpbGtf
aW5zZXJ0aW9uX3NvcnRfaW5jcmVhc2luZyggZXJyX1EyNiwgdGVtcEluZGljZXMxLCBwc05MU0Zf
Q0ItPm5WZWN0b3JzLCBuU3Vydml2b3JzICk7CisgICAgc2lsa19pbnNlcnRpb25fc29ydF9pbmNy
ZWFzaW5nKCBlcnJfUTI0LCB0ZW1wSW5kaWNlczEsIHBzTkxTRl9DQi0+blZlY3RvcnMsIG5TdXJ2
aXZvcnMgKTsKIAogICAgIEFMTE9DKCBSRF9RMjUsIG5TdXJ2aXZvcnMsIG9wdXNfaW50MzIgKTsK
ICAgICBBTExPQyggdGVtcEluZGljZXMyLCBuU3Vydml2b3JzICogTUFYX0xQQ19PUkRFUiwgb3B1
c19pbnQ4ICk7CkBAIC04NSwyMyArODMsMTIgQEAgb3B1c19pbnQzMiBzaWxrX05MU0ZfZW5jb2Rl
KCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucwogCiAg
ICAgICAgIC8qIFJlc2lkdWFsIGFmdGVyIGZpcnN0IHN0YWdlICovCiAgICAgICAgIHBDQl9lbGVt
ZW50ID0gJnBzTkxTRl9DQi0+Q0IxX05MU0ZfUThbIGluZDEgKiBwc05MU0ZfQ0ItPm9yZGVyIF07
CisgICAgICAgIHBDQl9XZ2h0X1E5ID0gJnBzTkxTRl9DQi0+Q0IxX1dnaHRfUTlbIGluZDEgKiBw
c05MU0ZfQ0ItPm9yZGVyIF07CiAgICAgICAgIGZvciggaSA9IDA7IGkgPCBwc05MU0ZfQ0ItPm9y
ZGVyOyBpKysgKSB7CiAgICAgICAgICAgICBOTFNGX3RtcF9RMTVbIGkgXSA9IHNpbGtfTFNISUZU
MTYoIChvcHVzX2ludDE2KXBDQl9lbGVtZW50WyBpIF0sIDcgKTsKLSAgICAgICAgICAgIHJlc19R
MTVbIGkgXSA9IHBOTFNGX1ExNVsgaSBdIC0gTkxTRl90bXBfUTE1WyBpIF07Ci0gICAgICAgIH0K
LQotICAgICAgICAvKiBXZWlnaHRzIGZyb20gY29kZWJvb2sgdmVjdG9yICovCi0gICAgICAgIHNp
bGtfTkxTRl9WUV93ZWlnaHRzX2xhcm9pYSggV190bXBfUVcsIE5MU0ZfdG1wX1ExNSwgcHNOTFNG
X0NCLT5vcmRlciApOwotCi0gICAgICAgIC8qIEFwcGx5IHNxdWFyZS1yb290ZWQgd2VpZ2h0cyAq
LwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgcHNOTFNGX0NCLT5vcmRlcjsgaSsrICkgewotICAg
ICAgICAgICAgV190bXBfUTkgPSBzaWxrX1NRUlRfQVBQUk9YKCBzaWxrX0xTSElGVCggKG9wdXNf
aW50MzIpV190bXBfUVdbIGkgXSwgMTggLSBOTFNGX1dfUSApICk7Ci0gICAgICAgICAgICByZXNf
UTEwWyBpIF0gPSAob3B1c19pbnQxNilzaWxrX1JTSElGVCggc2lsa19TTVVMQkIoIHJlc19RMTVb
IGkgXSwgV190bXBfUTkgKSwgMTQgKTsKLSAgICAgICAgfQotCi0gICAgICAgIC8qIE1vZGlmeSBp
bnB1dCB3ZWlnaHRzIGFjY29yZGluZ2x5ICovCi0gICAgICAgIGZvciggaSA9IDA7IGkgPCBwc05M
U0ZfQ0ItPm9yZGVyOyBpKysgKSB7Ci0gICAgICAgICAgICBXX2Fkal9RNVsgaSBdID0gc2lsa19E
SVYzMl8xNiggc2lsa19MU0hJRlQoIChvcHVzX2ludDMyKXBXX1FXWyBpIF0sIDUgKSwgV190bXBf
UVdbIGkgXSApOworICAgICAgICAgICAgV190bXBfUTkgPSBwQ0JfV2dodF9ROVsgaSBdOworICAg
ICAgICAgICAgcmVzX1ExMFsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19SU0hJRlQoIHNpbGtfU01V
TEJCKCBwTkxTRl9RMTVbIGkgXSAtIE5MU0ZfdG1wX1ExNVsgaSBdLCBXX3RtcF9ROSApLCAxNCAp
OworICAgICAgICAgICAgV19hZGpfUTVbIGkgXSA9IHNpbGtfRElWMzJfdmFyUSggKG9wdXNfaW50
MzIpcFdfUTJbIGkgXSwgc2lsa19TTVVMQkIoIFdfdG1wX1E5LCBXX3RtcF9ROSApLCAyMSApOwog
ICAgICAgICB9CiAKICAgICAgICAgLyogVW5wYWNrIGVudHJvcHkgdGFibGUgaW5kaWNlcyBhbmQg
cHJlZGljdG9yIGZvciBjdXJyZW50IENCMSBpbmRleCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05TUS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL05TUS5jCmluZGV4IDQzZTNmZWU3ZTBhZDkyOTM5NGVmN2NiY2Y4MTRiYWRlMjg3MTli
ZWMuLjYxN2ExOWZlYWRlZjhkNTU3YjA4NmMzNDU1OGQzMTc1MDI3NmExYzUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9OU1EuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvTlNRLmMKQEAgLTM3LDcgKzM3LDcgQEAgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9zY2FsZV9z
dGF0ZXMoCiAgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICpwc0VuY0MsICAgICAgICAgICAv
KiBJICAgIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX25zcV9z
dGF0ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgeF9RM1tdLCAgICAg
ICAgICAgICAgICAgLyogSSAgICBpbnB1dCBpbiBRMyAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgY29uc3Qgb3B1c19pbnQxNiAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAvKiBJICAgIGlu
cHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAg
IHhfc2NfUTEwW10sICAgICAgICAgICAgIC8qIE8gICAgaW5wdXQgc2NhbGVkIHdpdGggMS9HYWlu
ICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgc0xUUFtdLCAgICAgICAgICAgICAg
ICAgLyogSSAgICByZS13aGl0ZW5lZCBMVFAgc3RhdGUgaW4gUTAgICAgICovCiAgICAgb3B1c19p
bnQzMiAgICAgICAgICBzTFRQX1ExNVtdLCAgICAgICAgICAgICAvKiBPICAgIExUUCBzdGF0ZSBt
YXRjaGluZyBzY2FsZWQgaW5wdXQgKi8KQEAgLTc1LDE0ICs3NSwxNCBAQCBzdGF0aWMgT1BVU19J
TkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcigKIAogdm9pZCBzaWxrX05TUV9j
CiAoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAg
ICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAg
ICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAgICAgICAgICpw
c0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6
YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAg
ICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQ
cmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAg
ICAgICAgICAgIHgxNltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIElucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDgg
ICAgICAgICAgICAgICAgICAgcHVsc2VzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBPICAgIFF1YW50aXplZCBwdWxzZSBzaWduYWwgICAgICAgICAgKi8KICAgICBjb25z
dCBvcHVzX2ludDE2ICAgICAgICAgICAgUHJlZENvZWZfUTEyWyAyICogTUFYX0xQQ19PUkRFUiBd
LCAgICAgICAgICAvKiBJICAgIFNob3J0IHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAgKi8KICAg
ICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgTFRQQ29lZl9RMTRbIExUUF9PUkRFUiAqIE1B
WF9OQl9TVUJGUiBdLCAgICAvKiBJICAgIExvbmcgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAg
Ki8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgQVIyX1ExM1sgTUFYX05CX1NVQkZS
ICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAvKiBJIE5vaXNlIHNoYXBpbmcgY29lZnMgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgQVJfUTEzWyBNQVhfTkJf
U1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sIC8qIEkgTm9pc2Ugc2hhcGluZyBjb2VmcyAg
ICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgSGFybVNoYXBl
R2Fpbl9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAvKiBJICAgIExvbmcgdGVybSBzaGFw
aW5nIGNvZWZzICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgVGls
dF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNwZWN0cmFs
IHRpbHQgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAg
ICAgTEZfc2hwX1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAvKiBJICAgIExv
dyBmcmVxdWVuY3kgc2hhcGluZyBjb2VmcyAgICAgKi8KQEAgLTExNyw4ICsxMTcsNyBAQCB2b2lk
IHNpbGtfTlNRX2MKICAgICAgICAgTFNGX2ludGVycG9sYXRpb25fZmxhZyA9IDE7CiAgICAgfQog
Ci0gICAgQUxMT0MoIHNMVFBfUTE1LAotICAgICAgICAgICBwc0VuY0MtPmx0cF9tZW1fbGVuZ3Ro
ICsgcHNFbmNDLT5mcmFtZV9sZW5ndGgsIG9wdXNfaW50MzIgKTsKKyAgICBBTExPQyggc0xUUF9R
MTUsIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKyBwc0VuY0MtPmZyYW1lX2xlbmd0aCwgb3B1c19p
bnQzMiApOwogICAgIEFMTE9DKCBzTFRQLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsgcHNFbmND
LT5mcmFtZV9sZW5ndGgsIG9wdXNfaW50MTYgKTsKICAgICBBTExPQyggeF9zY19RMTAsIHBzRW5j
Qy0+c3ViZnJfbGVuZ3RoLCBvcHVzX2ludDMyICk7CiAgICAgLyogU2V0IHVwIHBvaW50ZXJzIHRv
IHN0YXJ0IG9mIHN1YiBmcmFtZSAqLwpAQCAtMTI4LDcgKzEyNyw3IEBAIHZvaWQgc2lsa19OU1Ff
YwogICAgIGZvciggayA9IDA7IGsgPCBwc0VuY0MtPm5iX3N1YmZyOyBrKysgKSB7CiAgICAgICAg
IEFfUTEyICAgICAgPSAmUHJlZENvZWZfUTEyWyAoKCBrID4+IDEgKSB8ICggMSAtIExTRl9pbnRl
cnBvbGF0aW9uX2ZsYWcgKSkgKiBNQVhfTFBDX09SREVSIF07CiAgICAgICAgIEJfUTE0ICAgICAg
PSAmTFRQQ29lZl9RMTRbIGsgKiBMVFBfT1JERVIgXTsKLSAgICAgICAgQVJfc2hwX1ExMyA9ICZB
UjJfUTEzWyAgICAgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKKyAgICAgICAgQVJfc2hwX1Ex
MyA9ICZBUl9RMTNbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07CiAKICAgICAgICAgLyogTm9p
c2Ugc2hhcGUgcGFyYW1ldGVycyAqLwogICAgICAgICBzaWxrX2Fzc2VydCggSGFybVNoYXBlR2Fp
bl9RMTRbIGsgXSA+PSAwICk7CkBAIC0xNTQsMTMgKzE1MywxMyBAQCB2b2lkIHNpbGtfTlNRX2MK
ICAgICAgICAgICAgIH0KICAgICAgICAgfQogCi0gICAgICAgIHNpbGtfbnNxX3NjYWxlX3N0YXRl
cyggcHNFbmNDLCBOU1EsIHhfUTMsIHhfc2NfUTEwLCBzTFRQLCBzTFRQX1ExNSwgaywgTFRQX3Nj
YWxlX1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIHBzSW5kaWNlcy0+c2lnbmFsVHlwZSApOworICAg
ICAgICBzaWxrX25zcV9zY2FsZV9zdGF0ZXMoIHBzRW5jQywgTlNRLCB4MTYsIHhfc2NfUTEwLCBz
TFRQLCBzTFRQX1ExNSwgaywgTFRQX3NjYWxlX1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIHBzSW5k
aWNlcy0+c2lnbmFsVHlwZSApOwogCiAgICAgICAgIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVy
KCBOU1EsIHBzSW5kaWNlcy0+c2lnbmFsVHlwZSwgeF9zY19RMTAsIHB1bHNlcywgcHhxLCBzTFRQ
X1ExNSwgQV9RMTIsIEJfUTE0LAogICAgICAgICAgICAgQVJfc2hwX1ExMywgbGFnLCBIYXJtU2hh
cGVGSVJQYWNrZWRfUTE0LCBUaWx0X1ExNFsgayBdLCBMRl9zaHBfUTE0WyBrIF0sIEdhaW5zX1Ex
NlsgayBdLCBMYW1iZGFfUTEwLAogICAgICAgICAgICAgb2Zmc2V0X1ExMCwgcHNFbmNDLT5zdWJm
cl9sZW5ndGgsIHBzRW5jQy0+c2hhcGluZ0xQQ09yZGVyLCBwc0VuY0MtPnByZWRpY3RMUENPcmRl
ciwgcHNFbmNDLT5hcmNoICk7CiAKLSAgICAgICAgeF9RMyAgICs9IHBzRW5jQy0+c3ViZnJfbGVu
Z3RoOworICAgICAgICB4MTYgICAgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7CiAgICAgICAgIHB1
bHNlcyArPSBwc0VuY0MtPnN1YmZyX2xlbmd0aDsKICAgICAgICAgcHhxICAgICs9IHBzRW5jQy0+
c3ViZnJfbGVuZ3RoOwogICAgIH0KQEAgLTE2OSw3ICsxNjgsNiBAQCB2b2lkIHNpbGtfTlNRX2MK
ICAgICBOU1EtPmxhZ1ByZXYgPSBwaXRjaExbIHBzRW5jQy0+bmJfc3ViZnIgLSAxIF07CiAKICAg
ICAvKiBTYXZlIHF1YW50aXplZCBzcGVlY2ggYW5kIG5vaXNlIHNoYXBpbmcgc2lnbmFscyAqLwot
ICAgIC8qIERFQlVHX1NUT1JFX0RBVEEoIGVuYy5wY20sICZOU1EtPnhxWyBwc0VuY0MtPmx0cF9t
ZW1fbGVuZ3RoIF0sIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDE2ICkg
KSAqLwogICAgIHNpbGtfbWVtbW92ZSggTlNRLT54cSwgICAgICAgICAgICZOU1EtPnhxWyAgICAg
ICAgICAgcHNFbmNDLT5mcmFtZV9sZW5ndGggXSwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAqIHNp
emVvZiggb3B1c19pbnQxNiApICk7CiAgICAgc2lsa19tZW1tb3ZlKCBOU1EtPnNMVFBfc2hwX1Ex
NCwgJk5TUS0+c0xUUF9zaHBfUTE0WyBwc0VuY0MtPmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0
cF9tZW1fbGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKICAgICBSRVNUT1JFX1NUQUNL
OwpAQCAtMjUwLDcgKzI0OCw3IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXIoCiAK
ICAgICAgICAgLyogTm9pc2Ugc2hhcGUgZmVlZGJhY2sgKi8KICAgICAgICAgc2lsa19hc3NlcnQo
ICggc2hhcGluZ0xQQ09yZGVyICYgMSApID09IDAgKTsgICAvKiBjaGVjayB0aGF0IG9yZGVyIGlz
IGV2ZW4gKi8KLSAgICAgICAgbl9BUl9RMTIgPSBzaWxrX05TUV9ub2lzZV9zaGFwZV9mZWVkYmFj
a19sb29wKHBzTFBDX1ExNCwgTlNRLT5zQVIyX1ExNCwgQVJfc2hwX1ExMywgc2hhcGluZ0xQQ09y
ZGVyLCBhcmNoKTsKKyAgICAgICAgbl9BUl9RMTIgPSBzaWxrX05TUV9ub2lzZV9zaGFwZV9mZWVk
YmFja19sb29wKCZOU1EtPnNEaWZmX3NocF9RMTQsIE5TUS0+c0FSMl9RMTQsIEFSX3NocF9RMTMs
IHNoYXBpbmdMUENPcmRlciwgYXJjaCk7CiAKICAgICAgICAgbl9BUl9RMTIgPSBzaWxrX1NNTEFX
Qiggbl9BUl9RMTIsIE5TUS0+c0xGX0FSX3NocF9RMTQsIFRpbHRfUTE0ICk7CiAKQEAgLTI3OSwx
NCArMjc3LDI3IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXIoCiAgICAgICAgIHJf
UTEwID0gc2lsa19TVUIzMiggeF9zY19RMTBbIGkgXSwgdG1wMSApOyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIHJlc2lkdWFsIGVycm9yIFExMCAqLwogCiAgICAgICAgIC8qIEZsaXAg
c2lnbiBkZXBlbmRpbmcgb24gZGl0aGVyICovCi0gICAgICAgIGlmICggTlNRLT5yYW5kX3NlZWQg
PCAwICkgewotICAgICAgICAgICByX1ExMCA9IC1yX1ExMDsKKyAgICAgICAgaWYoIE5TUS0+cmFu
ZF9zZWVkIDwgMCApIHsKKyAgICAgICAgICAgIHJfUTEwID0gLXJfUTEwOwogICAgICAgICB9CiAg
ICAgICAgIHJfUTEwID0gc2lsa19MSU1JVF8zMiggcl9RMTAsIC0oMzEgPDwgMTApLCAzMCA8PCAx
MCApOwogCiAgICAgICAgIC8qIEZpbmQgdHdvIHF1YW50aXphdGlvbiBsZXZlbCBjYW5kaWRhdGVz
IGFuZCBtZWFzdXJlIHRoZWlyIHJhdGUtZGlzdG9ydGlvbiAqLwogICAgICAgICBxMV9RMTAgPSBz
aWxrX1NVQjMyKCByX1ExMCwgb2Zmc2V0X1ExMCApOwogICAgICAgICBxMV9RMCA9IHNpbGtfUlNI
SUZUKCBxMV9RMTAsIDEwICk7CisgICAgICAgIGlmIChMYW1iZGFfUTEwID4gMjA0OCkgeworICAg
ICAgICAgICAgLyogRm9yIGFnZ3Jlc3NpdmUgUkRPLCB0aGUgYmlhcyBiZWNvbWVzIG1vcmUgdGhh
biBvbmUgcHVsc2UuICovCisgICAgICAgICAgICBpbnQgcmRvX29mZnNldCA9IExhbWJkYV9RMTAv
MiAtIDUxMjsKKyAgICAgICAgICAgIGlmIChxMV9RMTAgPiByZG9fb2Zmc2V0KSB7CisgICAgICAg
ICAgICAgICAgcTFfUTAgPSBzaWxrX1JTSElGVCggcTFfUTEwIC0gcmRvX29mZnNldCwgMTAgKTsK
KyAgICAgICAgICAgIH0gZWxzZSBpZiAocTFfUTEwIDwgLXJkb19vZmZzZXQpIHsKKyAgICAgICAg
ICAgICAgICBxMV9RMCA9IHNpbGtfUlNISUZUKCBxMV9RMTAgKyByZG9fb2Zmc2V0LCAxMCApOwor
ICAgICAgICAgICAgfSBlbHNlIGlmIChxMV9RMTAgPCAwKSB7CisgICAgICAgICAgICAgICAgcTFf
UTAgPSAtMTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgcTFfUTAgPSAw
OworICAgICAgICAgICAgfQorICAgICAgICB9CiAgICAgICAgIGlmKCBxMV9RMCA+IDAgKSB7CiAg
ICAgICAgICAgICBxMV9RMTAgID0gc2lsa19TVUIzMiggc2lsa19MU0hJRlQoIHExX1EwLCAxMCAp
LCBRVUFOVF9MRVZFTF9BREpVU1RfUTEwICk7CiAgICAgICAgICAgICBxMV9RMTAgID0gc2lsa19B
REQzMiggcTFfUTEwLCBvZmZzZXRfUTEwICk7CkBAIC0zMzcsNyArMzQ4LDggQEAgdm9pZCBzaWxr
X25vaXNlX3NoYXBlX3F1YW50aXplcigKICAgICAgICAgLyogVXBkYXRlIHN0YXRlcyAqLwogICAg
ICAgICBwc0xQQ19RMTQrKzsKICAgICAgICAgKnBzTFBDX1ExNCA9IHhxX1ExNDsKLSAgICAgICAg
c0xGX0FSX3NocF9RMTQgPSBzaWxrX1NVQl9MU0hJRlQzMiggeHFfUTE0LCBuX0FSX1ExMiwgMiAp
OworICAgICAgICBOU1EtPnNEaWZmX3NocF9RMTQgPSBzaWxrX1NVQl9MU0hJRlQzMiggeHFfUTE0
LCB4X3NjX1ExMFsgaSBdLCA0ICk7CisgICAgICAgIHNMRl9BUl9zaHBfUTE0ID0gc2lsa19TVUJf
TFNISUZUMzIoIE5TUS0+c0RpZmZfc2hwX1ExNCwgbl9BUl9RMTIsIDIgKTsKICAgICAgICAgTlNR
LT5zTEZfQVJfc2hwX1ExNCA9IHNMRl9BUl9zaHBfUTE0OwogCiAgICAgICAgIE5TUS0+c0xUUF9z
aHBfUTE0WyBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggXSA9IHNpbGtfU1VCX0xTSElGVDMyKCBzTEZf
QVJfc2hwX1ExNCwgbl9MRl9RMTIsIDIgKTsKQEAgLTM1Niw3ICszNjgsNyBAQCB2b2lkIHNpbGtf
bm9pc2Vfc2hhcGVfcXVhbnRpemVyKAogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3Ff
c2NhbGVfc3RhdGVzKAogICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbmNDLCAgICAg
ICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2ls
a19uc3Ffc3RhdGUgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0
ZSAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgIHhfUTNb
XSwgICAgICAgICAgICAgICAgIC8qIEkgICAgaW5wdXQgaW4gUTMgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgeDE2W10sICAgICAgICAgICAgICAgICAgLyog
SSAgICBpbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAg
ICAgICAgICB4X3NjX1ExMFtdLCAgICAgICAgICAgICAvKiBPICAgIGlucHV0IHNjYWxlZCB3aXRo
IDEvR2FpbiAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgIHNMVFBbXSwgICAgICAg
ICAgICAgICAgIC8qIEkgICAgcmUtd2hpdGVuZWQgTFRQIHN0YXRlIGluIFEwICAgICAqLwogICAg
IG9wdXNfaW50MzIgICAgICAgICAgc0xUUF9RMTVbXSwgICAgICAgICAgICAgLyogTyAgICBMVFAg
c3RhdGUgbWF0Y2hpbmcgc2NhbGVkIGlucHV0ICovCkBAIC0zNjgsMjggKzM4MCwxOCBAQCBzdGF0
aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9zY2FsZV9zdGF0ZXMoCiApCiB7CiAgICAgb3B1
c19pbnQgICBpLCBsYWc7Ci0gICAgb3B1c19pbnQzMiBnYWluX2Fkal9RMTYsIGludl9nYWluX1Ez
MSwgaW52X2dhaW5fUTIzOworICAgIG9wdXNfaW50MzIgZ2Fpbl9hZGpfUTE2LCBpbnZfZ2Fpbl9R
MzEsIGludl9nYWluX1EyNjsKIAogICAgIGxhZyAgICAgICAgICA9IHBpdGNoTFsgc3ViZnIgXTsK
ICAgICBpbnZfZ2Fpbl9RMzEgPSBzaWxrX0lOVkVSU0UzMl92YXJRKCBzaWxrX21heCggR2FpbnNf
UTE2WyBzdWJmciBdLCAxICksIDQ3ICk7CiAgICAgc2lsa19hc3NlcnQoIGludl9nYWluX1EzMSAh
PSAwICk7CiAKLSAgICAvKiBDYWxjdWxhdGUgZ2FpbiBhZGp1c3RtZW50IGZhY3RvciAqLwotICAg
IGlmKCBHYWluc19RMTZbIHN1YmZyIF0gIT0gTlNRLT5wcmV2X2dhaW5fUTE2ICkgewotICAgICAg
ICBnYWluX2Fkal9RMTYgPSAgc2lsa19ESVYzMl92YXJRKCBOU1EtPnByZXZfZ2Fpbl9RMTYsIEdh
aW5zX1ExNlsgc3ViZnIgXSwgMTYgKTsKLSAgICB9IGVsc2UgewotICAgICAgICBnYWluX2Fkal9R
MTYgPSAob3B1c19pbnQzMikxIDw8IDE2OwotICAgIH0KLQogICAgIC8qIFNjYWxlIGlucHV0ICov
Ci0gICAgaW52X2dhaW5fUTIzID0gc2lsa19SU0hJRlRfUk9VTkQoIGludl9nYWluX1EzMSwgOCAp
OworICAgIGludl9nYWluX1EyNiA9IHNpbGtfUlNISUZUX1JPVU5EKCBpbnZfZ2Fpbl9RMzEsIDUg
KTsKICAgICBmb3IoIGkgPSAwOyBpIDwgcHNFbmNDLT5zdWJmcl9sZW5ndGg7IGkrKyApIHsKLSAg
ICAgICAgeF9zY19RMTBbIGkgXSA9IHNpbGtfU01VTFdXKCB4X1EzWyBpIF0sIGludl9nYWluX1Ey
MyApOworICAgICAgICB4X3NjX1ExMFsgaSBdID0gc2lsa19TTVVMV1coIHgxNlsgaSBdLCBpbnZf
Z2Fpbl9RMjYgKTsKICAgICB9CiAKLSAgICAvKiBTYXZlIGludmVyc2UgZ2FpbiAqLwotICAgIE5T
US0+cHJldl9nYWluX1ExNiA9IEdhaW5zX1ExNlsgc3ViZnIgXTsKLQogICAgIC8qIEFmdGVyIHJl
d2hpdGVuaW5nIHRoZSBMVFAgc3RhdGUgaXMgdW4tc2NhbGVkLCBzbyBzY2FsZSB3aXRoIGludl9n
YWluX1ExNiAqLwogICAgIGlmKCBOU1EtPnJld2hpdGVfZmxhZyApIHsKICAgICAgICAgaWYoIHN1
YmZyID09IDAgKSB7CkBAIC00MDMsNyArNDA1LDkgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19uc3Ffc2NhbGVfc3RhdGVzKAogICAgIH0KIAogICAgIC8qIEFkanVzdCBmb3IgY2hhbmdp
bmcgZ2FpbiAqLwotICAgIGlmKCBnYWluX2Fkal9RMTYgIT0gKG9wdXNfaW50MzIpMSA8PCAxNiAp
IHsKKyAgICBpZiggR2FpbnNfUTE2WyBzdWJmciBdICE9IE5TUS0+cHJldl9nYWluX1ExNiApIHsK
KyAgICAgICAgZ2Fpbl9hZGpfUTE2ID0gIHNpbGtfRElWMzJfdmFyUSggTlNRLT5wcmV2X2dhaW5f
UTE2LCBHYWluc19RMTZbIHN1YmZyIF0sIDE2ICk7CisKICAgICAgICAgLyogU2NhbGUgbG9uZy10
ZXJtIHNoYXBpbmcgc3RhdGUgKi8KICAgICAgICAgZm9yKCBpID0gTlNRLT5zTFRQX3NocF9idWZf
aWR4IC0gcHNFbmNDLT5sdHBfbWVtX2xlbmd0aDsgaSA8IE5TUS0+c0xUUF9zaHBfYnVmX2lkeDsg
aSsrICkgewogICAgICAgICAgICAgTlNRLT5zTFRQX3NocF9RMTRbIGkgXSA9IHNpbGtfU01VTFdX
KCBnYWluX2Fkal9RMTYsIE5TUS0+c0xUUF9zaHBfUTE0WyBpIF0gKTsKQEAgLTQxNyw2ICs0MjEs
NyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9zY2FsZV9zdGF0ZXMoCiAgICAg
ICAgIH0KIAogICAgICAgICBOU1EtPnNMRl9BUl9zaHBfUTE0ID0gc2lsa19TTVVMV1coIGdhaW5f
YWRqX1ExNiwgTlNRLT5zTEZfQVJfc2hwX1ExNCApOworICAgICAgICBOU1EtPnNEaWZmX3NocF9R
MTQgPSBzaWxrX1NNVUxXVyggZ2Fpbl9hZGpfUTE2LCBOU1EtPnNEaWZmX3NocF9RMTQgKTsKIAog
ICAgICAgICAvKiBTY2FsZSBzaG9ydC10ZXJtIHByZWRpY3Rpb24gYW5kIHNoYXBpbmcgc3RhdGVz
ICovCiAgICAgICAgIGZvciggaSA9IDA7IGkgPCBOU1FfTFBDX0JVRl9MRU5HVEg7IGkrKyApIHsK
QEAgLTQyNSw1ICs0MzAsOCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9zY2Fs
ZV9zdGF0ZXMoCiAgICAgICAgIGZvciggaSA9IDA7IGkgPCBNQVhfU0hBUEVfTFBDX09SREVSOyBp
KysgKSB7CiAgICAgICAgICAgICBOU1EtPnNBUjJfUTE0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fp
bl9hZGpfUTE2LCBOU1EtPnNBUjJfUTE0WyBpIF0gKTsKICAgICAgICAgfQorCisgICAgICAgIC8q
IFNhdmUgaW52ZXJzZSBnYWluICovCisgICAgICAgIE5TUS0+cHJldl9nYWluX1ExNiA9IEdhaW5z
X1ExNlsgc3ViZnIgXTsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTlNRX2RlbF9kZWMuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9OU1FfZGVsX2RlYy5jCmluZGV4IGFiNmZlZWFjOTg3MDJhYmFhNTZlMTIwNDNhNTVlOWEy
NWY5NmRmZmMuLjU5OWUyNWYxYzhiYmYzY2JhOTg4ZjY2MGE2MTA2NGE4NjY1ZTZiNjcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9OU1FfZGVsX2RlYy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OU1FfZGVsX2RlYy5jCkBAIC00Myw2
ICs0Myw3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBvcHVzX2ludDMyIFNoYXBlX1ExNFsgREVD
SVNJT05fREVMQVkgXTsKICAgICBvcHVzX2ludDMyIHNBUjJfUTE0WyBNQVhfU0hBUEVfTFBDX09S
REVSIF07CiAgICAgb3B1c19pbnQzMiBMRl9BUl9RMTQ7CisgICAgb3B1c19pbnQzMiBEaWZmX1Ex
NDsKICAgICBvcHVzX2ludDMyIFNlZWQ7CiAgICAgb3B1c19pbnQzMiBTZWVkSW5pdDsKICAgICBv
cHVzX2ludDMyIFJEX1ExMDsKQEAgLTUzLDYgKzU0LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICAg
IG9wdXNfaW50MzIgUkRfUTEwOwogICAgIG9wdXNfaW50MzIgeHFfUTE0OwogICAgIG9wdXNfaW50
MzIgTEZfQVJfUTE0OworICAgIG9wdXNfaW50MzIgRGlmZl9RMTQ7CiAgICAgb3B1c19pbnQzMiBz
TFRQX3NocF9RMTQ7CiAgICAgb3B1c19pbnQzMiBMUENfZXhjX1ExNDsKIH0gTlNRX3NhbXBsZV9z
dHJ1Y3Q7CkBAIC02Niw3ICs2OCw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNx
X2RlbF9kZWNfc2NhbGVfc3RhdGVzKAogICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNF
bmNDLCAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAg
ICAgICAgKi8KICAgICBzaWxrX25zcV9zdGF0ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAg
TlNRX2RlbF9kZWNfc3RydWN0ICBwc0RlbERlY1tdLCAgICAgICAgICAgICAgICAgLyogSS9PICBE
ZWxheWVkIGRlY2lzaW9uIHN0YXRlcyAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50
MzIgICAgeF9RM1tdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgaW4gUTMgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIHgxNltdLCAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICB4X3NjX1ExMFtdLCAgICAgICAgICAg
ICAgICAgLyogTyAgICBJbnB1dCBzY2FsZWQgd2l0aCAxL0dhaW4gaW4gUTEwICAgICAqLwogICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgc0xUUFtdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
UmUtd2hpdGVuZWQgTFRQIHN0YXRlIGluIFEwICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAg
ICAgICAgIHNMVFBfUTE1W10sICAgICAgICAgICAgICAgICAvKiBPICAgIExUUCBzdGF0ZSBtYXRj
aGluZyBzY2FsZWQgaW5wdXQgICAgICovCkBAIC0xMDcsMjAgKzEwOSwyMCBAQCBzdGF0aWMgT1BV
U19JTkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgIG9w
dXNfaW50ICAgICAgICAgICAgcHJlZGljdExQQ09yZGVyLCAgICAgICAgLyogSSAgICBQcmVkaWN0
aW9uIGZpbHRlciBvcmRlciAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAg
d2FycGluZ19RMTYsICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgblN0YXRlc0RlbGF5ZWREZWNp
c2lvbiwgLyogSSAgICBOdW1iZXIgb2Ygc3RhdGVzIGluIGRlY2lzaW9uIHRyZWUgICAqLwotICAg
IG9wdXNfaW50ICAgICAgICAgICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAgLyogSSAgICBJbmRl
eCB0byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZmZXJzICAqLworICAgIG9wdXNfaW50ICAgICAgICAg
ICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAgLyogSS9PICBJbmRleCB0byBuZXdlc3Qgc2FtcGxl
cyBpbiBidWZmZXJzICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgZGVjaXNpb25EZWxheSwg
ICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIGludCAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgLyogSSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKTsKIAogdm9pZCBzaWxrX05T
UV9kZWxfZGVjX2MoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAg
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0Vu
Y0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0
YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAg
ICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Eg
c3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAg
ICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9P
ICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQz
MiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgIHgxNltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIElucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBv
cHVzX2ludDggICAgICAgICAgICAgICAgICAgcHVsc2VzW10sICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBPICAgIFF1YW50aXplZCBwdWxzZSBzaWduYWwgICAgICAgICAgKi8K
ICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgUHJlZENvZWZfUTEyWyAyICogTUFYX0xQ
Q19PUkRFUiBdLCAgICAgICAgICAvKiBJICAgIFNob3J0IHRlcm0gcHJlZGljdGlvbiBjb2VmcyAg
ICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgTFRQQ29lZl9RMTRbIExUUF9P
UkRFUiAqIE1BWF9OQl9TVUJGUiBdLCAgICAvKiBJICAgIExvbmcgdGVybSBwcmVkaWN0aW9uIGNv
ZWZzICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgQVIyX1ExM1sgTUFY
X05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAvKiBJIE5vaXNlIHNoYXBpbmcgY29l
ZnMgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgQVJfUTEz
WyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sIC8qIEkgTm9pc2Ugc2hhcGlu
ZyBjb2VmcyAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAg
SGFybVNoYXBlR2Fpbl9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAvKiBJICAgIExvbmcg
dGVybSBzaGFwaW5nIGNvZWZzICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAg
ICAgICAgVGlsdF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgICAvKiBJICAg
IFNwZWN0cmFsIHRpbHQgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDMy
ICAgICAgICAgICAgTEZfc2hwX1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAv
KiBJICAgIExvdyBmcmVxdWVuY3kgc2hhcGluZyBjb2VmcyAgICAgKi8KQEAgLTE1OSw2ICsxNjEs
NyBAQCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfYygKICAgICAgICAgcHNERC0+U2VlZEluaXQgICAg
ICAgPSBwc0RELT5TZWVkOwogICAgICAgICBwc0RELT5SRF9RMTAgICAgICAgICA9IDA7CiAgICAg
ICAgIHBzREQtPkxGX0FSX1ExNCAgICAgID0gTlNRLT5zTEZfQVJfc2hwX1ExNDsKKyAgICAgICAg
cHNERC0+RGlmZl9RMTQgICAgICAgPSBOU1EtPnNEaWZmX3NocF9RMTQ7CiAgICAgICAgIHBzREQt
PlNoYXBlX1ExNFsgMCBdID0gTlNRLT5zTFRQX3NocF9RMTRbIHBzRW5jQy0+bHRwX21lbV9sZW5n
dGggLSAxIF07CiAgICAgICAgIHNpbGtfbWVtY3B5KCBwc0RELT5zTFBDX1ExNCwgTlNRLT5zTFBD
X1ExNCwgTlNRX0xQQ19CVUZfTEVOR1RIICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKICAgICAg
ICAgc2lsa19tZW1jcHkoIHBzREQtPnNBUjJfUTE0LCBOU1EtPnNBUjJfUTE0LCBzaXplb2YoIE5T
US0+c0FSMl9RMTQgKSApOwpAQCAtMTg2LDggKzE4OSw3IEBAIHZvaWQgc2lsa19OU1FfZGVsX2Rl
Y19jKAogICAgICAgICBMU0ZfaW50ZXJwb2xhdGlvbl9mbGFnID0gMTsKICAgICB9CiAKLSAgICBB
TExPQyggc0xUUF9RMTUsCi0gICAgICAgICAgIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKyBwc0Vu
Y0MtPmZyYW1lX2xlbmd0aCwgb3B1c19pbnQzMiApOworICAgIEFMTE9DKCBzTFRQX1ExNSwgcHNF
bmNDLT5sdHBfbWVtX2xlbmd0aCArIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoLCBvcHVzX2ludDMyICk7
CiAgICAgQUxMT0MoIHNMVFAsIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKyBwc0VuY0MtPmZyYW1l
X2xlbmd0aCwgb3B1c19pbnQxNiApOwogICAgIEFMTE9DKCB4X3NjX1ExMCwgcHNFbmNDLT5zdWJm
cl9sZW5ndGgsIG9wdXNfaW50MzIgKTsKICAgICBBTExPQyggZGVsYXllZEdhaW5fUTEwLCBERUNJ
U0lPTl9ERUxBWSwgb3B1c19pbnQzMiApOwpAQCAtMTk5LDcgKzIwMSw3IEBAIHZvaWQgc2lsa19O
U1FfZGVsX2RlY19jKAogICAgIGZvciggayA9IDA7IGsgPCBwc0VuY0MtPm5iX3N1YmZyOyBrKysg
KSB7CiAgICAgICAgIEFfUTEyICAgICAgPSAmUHJlZENvZWZfUTEyWyAoICggayA+PiAxICkgfCAo
IDEgLSBMU0ZfaW50ZXJwb2xhdGlvbl9mbGFnICkgKSAqIE1BWF9MUENfT1JERVIgXTsKICAgICAg
ICAgQl9RMTQgICAgICA9ICZMVFBDb2VmX1ExNFsgayAqIExUUF9PUkRFUiAgICAgICAgICAgXTsK
LSAgICAgICAgQVJfc2hwX1ExMyA9ICZBUjJfUTEzWyAgICAgayAqIE1BWF9TSEFQRV9MUENfT1JE
RVIgXTsKKyAgICAgICAgQVJfc2hwX1ExMyA9ICZBUl9RMTNbICAgICBrICogTUFYX1NIQVBFX0xQ
Q19PUkRFUiBdOwogCiAgICAgICAgIC8qIE5vaXNlIHNoYXBlIHBhcmFtZXRlcnMgKi8KICAgICAg
ICAgc2lsa19hc3NlcnQoIEhhcm1TaGFwZUdhaW5fUTE0WyBrIF0gPj0gMCApOwpAQCAtMjM1LDcg
KzIzNyw4IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAogICAgICAgICAgICAgICAgICAgICBw
c0REID0gJnBzRGVsRGVjWyBXaW5uZXJfaW5kIF07CiAgICAgICAgICAgICAgICAgICAgIGxhc3Rf
c21wbGVfaWR4ID0gc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheTsKICAgICAgICAgICAgICAg
ICAgICAgZm9yKCBpID0gMDsgaSA8IGRlY2lzaW9uRGVsYXk7IGkrKyApIHsKLSAgICAgICAgICAg
ICAgICAgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAmIERF
Q0lTSU9OX0RFTEFZX01BU0s7CisgICAgICAgICAgICAgICAgICAgICAgICBsYXN0X3NtcGxlX2lk
eCA9ICggbGFzdF9zbXBsZV9pZHggLSAxICkgJSBERUNJU0lPTl9ERUxBWTsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIGlmKCBsYXN0X3NtcGxlX2lkeCA8IDAgKSBsYXN0X3NtcGxlX2lkeCArPSBE
RUNJU0lPTl9ERUxBWTsKICAgICAgICAgICAgICAgICAgICAgICAgIHB1bHNlc1sgICBpIC0gZGVj
aXNpb25EZWxheSBdID0gKG9wdXNfaW50OClzaWxrX1JTSElGVF9ST1VORCggcHNERC0+UV9RMTBb
IGxhc3Rfc21wbGVfaWR4IF0sIDEwICk7CiAgICAgICAgICAgICAgICAgICAgICAgICBweHFbIGkg
LSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9S
T1VORCgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWxrX1NNVUxXVyggcHNERC0+WHFf
UTE0WyBsYXN0X3NtcGxlX2lkeCBdLCBHYWluc19RMTZbIDEgXSApLCAxNCApICk7CkBAIC0yNTcs
NyArMjYwLDcgQEAgdm9pZCBzaWxrX05TUV9kZWxfZGVjX2MoCiAgICAgICAgICAgICB9CiAgICAg
ICAgIH0KIAotICAgICAgICBzaWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlcyggcHNFbmNDLCBO
U1EsIHBzRGVsRGVjLCB4X1EzLCB4X3NjX1ExMCwgc0xUUCwgc0xUUF9RMTUsIGssCisgICAgICAg
IHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVfc3RhdGVzKCBwc0VuY0MsIE5TUSwgcHNEZWxEZWMsIHgx
NiwgeF9zY19RMTAsIHNMVFAsIHNMVFBfUTE1LCBrLAogICAgICAgICAgICAgcHNFbmNDLT5uU3Rh
dGVzRGVsYXllZERlY2lzaW9uLCBMVFBfc2NhbGVfUTE0LCBHYWluc19RMTYsIHBpdGNoTCwgcHNJ
bmRpY2VzLT5zaWduYWxUeXBlLCBkZWNpc2lvbkRlbGF5ICk7CiAKICAgICAgICAgc2lsa19ub2lz
ZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlYyggTlNRLCBwc0RlbERlYywgcHNJbmRpY2VzLT5zaWdu
YWxUeXBlLCB4X3NjX1ExMCwgcHVsc2VzLCBweHEsIHNMVFBfUTE1LApAQCAtMjY1LDcgKzI2OCw3
IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAogICAgICAgICAgICAgR2FpbnNfUTE2WyBrIF0s
IExhbWJkYV9RMTAsIG9mZnNldF9RMTAsIHBzRW5jQy0+c3ViZnJfbGVuZ3RoLCBzdWJmcisrLCBw
c0VuY0MtPnNoYXBpbmdMUENPcmRlciwKICAgICAgICAgICAgIHBzRW5jQy0+cHJlZGljdExQQ09y
ZGVyLCBwc0VuY0MtPndhcnBpbmdfUTE2LCBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24s
ICZzbXBsX2J1Zl9pZHgsIGRlY2lzaW9uRGVsYXksIHBzRW5jQy0+YXJjaCApOwogCi0gICAgICAg
IHhfUTMgICArPSBwc0VuY0MtPnN1YmZyX2xlbmd0aDsKKyAgICAgICAgeDE2ICAgICs9IHBzRW5j
Qy0+c3ViZnJfbGVuZ3RoOwogICAgICAgICBwdWxzZXMgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7
CiAgICAgICAgIHB4cSAgICArPSBwc0VuY0MtPnN1YmZyX2xlbmd0aDsKICAgICB9CkBAIC0yODYs
NyArMjg5LDkgQEAgdm9pZCBzaWxrX05TUV9kZWxfZGVjX2MoCiAgICAgbGFzdF9zbXBsZV9pZHgg
PSBzbXBsX2J1Zl9pZHggKyBkZWNpc2lvbkRlbGF5OwogICAgIEdhaW5fUTEwID0gc2lsa19SU0hJ
RlQzMiggR2FpbnNfUTE2WyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBdLCA2ICk7CiAgICAgZm9yKCBp
ID0gMDsgaSA8IGRlY2lzaW9uRGVsYXk7IGkrKyApIHsKLSAgICAgICAgbGFzdF9zbXBsZV9pZHgg
PSAoIGxhc3Rfc21wbGVfaWR4IC0gMSApICYgREVDSVNJT05fREVMQVlfTUFTSzsKKyAgICAgICAg
bGFzdF9zbXBsZV9pZHggPSAoIGxhc3Rfc21wbGVfaWR4IC0gMSApICUgREVDSVNJT05fREVMQVk7
CisgICAgICAgIGlmKCBsYXN0X3NtcGxlX2lkeCA8IDAgKSBsYXN0X3NtcGxlX2lkeCArPSBERUNJ
U0lPTl9ERUxBWTsKKwogICAgICAgICBwdWxzZXNbICAgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChv
cHVzX2ludDgpc2lsa19SU0hJRlRfUk9VTkQoIHBzREQtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCBd
LCAxMCApOwogICAgICAgICBweHFbIGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQxNilz
aWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCgKICAgICAgICAgICAgIHNpbGtfU01VTFdXKCBw
c0RELT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IF0sIEdhaW5fUTEwICksIDggKSApOwpAQCAtMjk3
LDEwICszMDIsMTAgQEAgdm9pZCBzaWxrX05TUV9kZWxfZGVjX2MoCiAKICAgICAvKiBVcGRhdGUg
c3RhdGVzICovCiAgICAgTlNRLT5zTEZfQVJfc2hwX1ExNCA9IHBzREQtPkxGX0FSX1ExNDsKKyAg
ICBOU1EtPnNEaWZmX3NocF9RMTQgID0gcHNERC0+RGlmZl9RMTQ7CiAgICAgTlNRLT5sYWdQcmV2
ICAgICAgICA9IHBpdGNoTFsgcHNFbmNDLT5uYl9zdWJmciAtIDEgXTsKIAogICAgIC8qIFNhdmUg
cXVhbnRpemVkIHNwZWVjaCBzaWduYWwgKi8KLSAgICAvKiBERUJVR19TVE9SRV9EQVRBKCBlbmMu
cGNtLCAmTlNRLT54cVtwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoXSwgcHNFbmNDLT5mcmFtZV9sZW5n
dGggKiBzaXplb2YoIG9wdXNfaW50MTYgKSApICovCiAgICAgc2lsa19tZW1tb3ZlKCBOU1EtPnhx
LCAgICAgICAgICAgJk5TUS0+eHFbICAgICAgICAgICBwc0VuY0MtPmZyYW1lX2xlbmd0aCBdLCBw
c0VuY0MtPmx0cF9tZW1fbGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKICAgICBzaWxr
X21lbW1vdmUoIE5TUS0+c0xUUF9zaHBfUTE0LCAmTlNRLT5zTFRQX3NocF9RMTRbIHBzRW5jQy0+
ZnJhbWVfbGVuZ3RoIF0sIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50
MzIgKSApOwogICAgIFJFU1RPUkVfU1RBQ0s7CkBAIC0zMzUsNyArMzQwLDcgQEAgc3RhdGljIE9Q
VVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlYygKICAgICBv
cHVzX2ludCAgICAgICAgICAgIHByZWRpY3RMUENPcmRlciwgICAgICAgIC8qIEkgICAgUHJlZGlj
dGlvbiBmaWx0ZXIgb3JkZXIgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAg
IHdhcnBpbmdfUTE2LCAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgIG5TdGF0ZXNEZWxheWVkRGVj
aXNpb24sIC8qIEkgICAgTnVtYmVyIG9mIHN0YXRlcyBpbiBkZWNpc2lvbiB0cmVlICAgKi8KLSAg
ICBvcHVzX2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkgICAgSW5k
ZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAgKi8KKyAgICBvcHVzX2ludCAgICAgICAg
ICAgICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkvTyAgSW5kZXggdG8gbmV3ZXN0IHNhbXBs
ZXMgaW4gYnVmZmVycyAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgIGRlY2lzaW9uRGVsYXks
ICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
ICAgICBpbnQgICAgICAgICAgICAgICAgIGFyY2ggICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKQEAgLTM4OSw3ICszOTQs
NyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9k
ZWxfZGVjKAogICAgICAgICAvKiBMb25nLXRlcm0gc2hhcGluZyAqLwogICAgICAgICBpZiggbGFn
ID4gMCApIHsKICAgICAgICAgICAgIC8qIFN5bW1ldHJpYywgcGFja2VkIEZJUiBjb2VmZmljaWVu
dHMgKi8KLSAgICAgICAgICAgIG5fTFRQX1ExNCA9IHNpbGtfU01VTFdCKCBzaWxrX0FERDMyKCBz
aHBfbGFnX3B0clsgMCBdLCBzaHBfbGFnX3B0clsgLTIgXSApLCBIYXJtU2hhcGVGSVJQYWNrZWRf
UTE0ICk7CisgICAgICAgICAgICBuX0xUUF9RMTQgPSBzaWxrX1NNVUxXQiggc2lsa19BRERfU0FU
MzIoIHNocF9sYWdfcHRyWyAwIF0sIHNocF9sYWdfcHRyWyAtMiBdICksIEhhcm1TaGFwZUZJUlBh
Y2tlZF9RMTQgKTsKICAgICAgICAgICAgIG5fTFRQX1ExNCA9IHNpbGtfU01MQVdUKCBuX0xUUF9R
MTQsIHNocF9sYWdfcHRyWyAtMSBdLCAgICAgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVGSVJQ
YWNrZWRfUTE0ICk7CiAgICAgICAgICAgICBuX0xUUF9RMTQgPSBzaWxrX1NVQl9MU0hJRlQzMigg
TFRQX3ByZWRfUTE0LCBuX0xUUF9RMTQsIDIgKTsgICAgICAgICAgICAvKiBRMTIgLT4gUTE0ICov
CiAgICAgICAgICAgICBzaHBfbGFnX3B0cisrOwpAQCAtNDE2LDcgKzQyMSw3IEBAIHN0YXRpYyBP
UFVTX0lOTElORSB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWMoCiAgICAg
ICAgICAgICAvKiBOb2lzZSBzaGFwZSBmZWVkYmFjayAqLwogICAgICAgICAgICAgc2lsa19hc3Nl
cnQoICggc2hhcGluZ0xQQ09yZGVyICYgMSApID09IDAgKTsgICAvKiBjaGVjayB0aGF0IG9yZGVy
IGlzIGV2ZW4gKi8KICAgICAgICAgICAgIC8qIE91dHB1dCBvZiBsb3dwYXNzIHNlY3Rpb24gKi8K
LSAgICAgICAgICAgIHRtcDIgPSBzaWxrX1NNTEFXQiggcHNMUENfUTE0WyAwIF0sIHBzREQtPnNB
UjJfUTE0WyAwIF0sIHdhcnBpbmdfUTE2ICk7CisgICAgICAgICAgICB0bXAyID0gc2lsa19TTUxB
V0IoIHBzREQtPkRpZmZfUTE0LCBwc0RELT5zQVIyX1ExNFsgMCBdLCB3YXJwaW5nX1ExNiApOwog
ICAgICAgICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwogICAgICAgICAgICAg
dG1wMSA9IHNpbGtfU01MQVdCKCBwc0RELT5zQVIyX1ExNFsgMCBdLCBwc0RELT5zQVIyX1ExNFsg
MSBdIC0gdG1wMiwgd2FycGluZ19RMTYgKTsKICAgICAgICAgICAgIHBzREQtPnNBUjJfUTE0WyAw
IF0gPSB0bXAyOwpAQCAtNDYyLDYgKzQ2NywxOSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBz
aWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgICAgICAgICAgLyogRmluZCB0
d28gcXVhbnRpemF0aW9uIGxldmVsIGNhbmRpZGF0ZXMgYW5kIG1lYXN1cmUgdGhlaXIgcmF0ZS1k
aXN0b3J0aW9uICovCiAgICAgICAgICAgICBxMV9RMTAgPSBzaWxrX1NVQjMyKCByX1ExMCwgb2Zm
c2V0X1ExMCApOwogICAgICAgICAgICAgcTFfUTAgPSBzaWxrX1JTSElGVCggcTFfUTEwLCAxMCAp
OworICAgICAgICAgICAgaWYgKExhbWJkYV9RMTAgPiAyMDQ4KSB7CisgICAgICAgICAgICAgICAg
LyogRm9yIGFnZ3Jlc3NpdmUgUkRPLCB0aGUgYmlhcyBiZWNvbWVzIG1vcmUgdGhhbiBvbmUgcHVs
c2UuICovCisgICAgICAgICAgICAgICAgaW50IHJkb19vZmZzZXQgPSBMYW1iZGFfUTEwLzIgLSA1
MTI7CisgICAgICAgICAgICAgICAgaWYgKHExX1ExMCA+IHJkb19vZmZzZXQpIHsKKyAgICAgICAg
ICAgICAgICAgICAgcTFfUTAgPSBzaWxrX1JTSElGVCggcTFfUTEwIC0gcmRvX29mZnNldCwgMTAg
KTsKKyAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHExX1ExMCA8IC1yZG9fb2Zmc2V0KSB7Cisg
ICAgICAgICAgICAgICAgICAgIHExX1EwID0gc2lsa19SU0hJRlQoIHExX1ExMCArIHJkb19vZmZz
ZXQsIDEwICk7CisgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChxMV9RMTAgPCAwKSB7CisgICAg
ICAgICAgICAgICAgICAgIHExX1EwID0gLTE7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgICAgICAgICAgcTFfUTAgPSAwOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIGlmKCBxMV9RMCA+IDAgKSB7CiAgICAgICAgICAgICAgICAgcTFf
UTEwICA9IHNpbGtfU1VCMzIoIHNpbGtfTFNISUZUKCBxMV9RMCwgMTAgKSwgUVVBTlRfTEVWRUxf
QURKVVNUX1ExMCApOwogICAgICAgICAgICAgICAgIHExX1ExMCAgPSBzaWxrX0FERDMyKCBxMV9R
MTAsIG9mZnNldF9RMTAgKTsKQEAgLTUxNSw3ICs1MzMsOCBAQCBzdGF0aWMgT1BVU19JTkxJTkUg
dm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgICAgICAgICAgeHFf
UTE0ICAgICAgPSBzaWxrX0FERDMyKCBMUENfZXhjX1ExNCwgTFBDX3ByZWRfUTE0ICk7CiAKICAg
ICAgICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMgKi8KLSAgICAgICAgICAgIHNMRl9BUl9zaHBfUTE0
ICAgICAgICAgPSBzaWxrX1NVQjMyKCB4cV9RMTQsIG5fQVJfUTE0ICk7CisgICAgICAgICAgICBw
c1NTWyAwIF0uRGlmZl9RMTQgICAgID0gc2lsa19TVUJfTFNISUZUMzIoIHhxX1ExNCwgeF9RMTBb
IGkgXSwgNCApOworICAgICAgICAgICAgc0xGX0FSX3NocF9RMTQgICAgICAgICA9IHNpbGtfU1VC
MzIoIHBzU1NbIDAgXS5EaWZmX1ExNCwgbl9BUl9RMTQgKTsKICAgICAgICAgICAgIHBzU1NbIDAg
XS5zTFRQX3NocF9RMTQgPSBzaWxrX1NVQjMyKCBzTEZfQVJfc2hwX1ExNCwgbl9MRl9RMTQgKTsK
ICAgICAgICAgICAgIHBzU1NbIDAgXS5MRl9BUl9RMTQgICAgPSBzTEZfQVJfc2hwX1ExNDsKICAg
ICAgICAgICAgIHBzU1NbIDAgXS5MUENfZXhjX1ExNCAgPSBMUENfZXhjX1ExNDsKQEAgLTUyOSwy
MSArNTQ4LDIyIEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVh
bnRpemVyX2RlbF9kZWMoCiAgICAgICAgICAgICAgICAgZXhjX1ExNCA9IC1leGNfUTE0OwogICAg
ICAgICAgICAgfQogCi0KICAgICAgICAgICAgIC8qIEFkZCBwcmVkaWN0aW9ucyAqLwogICAgICAg
ICAgICAgTFBDX2V4Y19RMTQgPSBzaWxrX0FERDMyKCBleGNfUTE0LCBMVFBfcHJlZF9RMTQgKTsK
ICAgICAgICAgICAgIHhxX1ExNCAgICAgID0gc2lsa19BREQzMiggTFBDX2V4Y19RMTQsIExQQ19w
cmVkX1ExNCApOwogCiAgICAgICAgICAgICAvKiBVcGRhdGUgc3RhdGVzICovCi0gICAgICAgICAg
ICBzTEZfQVJfc2hwX1ExNCAgICAgICAgID0gc2lsa19TVUIzMiggeHFfUTE0LCBuX0FSX1ExNCAp
OworICAgICAgICAgICAgcHNTU1sgMSBdLkRpZmZfUTE0ICAgICA9IHNpbGtfU1VCX0xTSElGVDMy
KCB4cV9RMTQsIHhfUTEwWyBpIF0sIDQgKTsKKyAgICAgICAgICAgIHNMRl9BUl9zaHBfUTE0ICAg
ICAgICAgPSBzaWxrX1NVQjMyKCBwc1NTWyAxIF0uRGlmZl9RMTQsIG5fQVJfUTE0ICk7CiAgICAg
ICAgICAgICBwc1NTWyAxIF0uc0xUUF9zaHBfUTE0ID0gc2lsa19TVUIzMiggc0xGX0FSX3NocF9R
MTQsIG5fTEZfUTE0ICk7CiAgICAgICAgICAgICBwc1NTWyAxIF0uTEZfQVJfUTE0ICAgID0gc0xG
X0FSX3NocF9RMTQ7CiAgICAgICAgICAgICBwc1NTWyAxIF0uTFBDX2V4Y19RMTQgID0gTFBDX2V4
Y19RMTQ7CiAgICAgICAgICAgICBwc1NTWyAxIF0ueHFfUTE0ICAgICAgID0geHFfUTE0OwogICAg
ICAgICB9CiAKLSAgICAgICAgKnNtcGxfYnVmX2lkeCAgPSAoICpzbXBsX2J1Zl9pZHggLSAxICkg
JiBERUNJU0lPTl9ERUxBWV9NQVNLOyAgICAgICAgICAgICAgICAgICAvKiBJbmRleCB0byBuZXdl
c3Qgc2FtcGxlcyAgICAgICAgICAgICAgKi8KLSAgICAgICAgbGFzdF9zbXBsZV9pZHggPSAoICpz
bXBsX2J1Zl9pZHggKyBkZWNpc2lvbkRlbGF5ICkgJiBERUNJU0lPTl9ERUxBWV9NQVNLOyAgICAg
ICAvKiBJbmRleCB0byBkZWNpc2lvbkRlbGF5IG9sZCBzYW1wbGVzICAgKi8KKyAgICAgICAgKnNt
cGxfYnVmX2lkeCAgPSAoICpzbXBsX2J1Zl9pZHggLSAxICkgJSBERUNJU0lPTl9ERUxBWTsKKyAg
ICAgICAgaWYoICpzbXBsX2J1Zl9pZHggPCAwICkgKnNtcGxfYnVmX2lkeCArPSBERUNJU0lPTl9E
RUxBWTsKKyAgICAgICAgbGFzdF9zbXBsZV9pZHggPSAoICpzbXBsX2J1Zl9pZHggKyBkZWNpc2lv
bkRlbGF5ICkgJSBERUNJU0lPTl9ERUxBWTsKIAogICAgICAgICAvKiBGaW5kIHdpbm5lciAqLwog
ICAgICAgICBSRG1pbl9RMTAgPSBwc1NhbXBsZVN0YXRlWyAwIF1bIDAgXS5SRF9RMTA7CkBAIC02
MDcsNiArNjI3LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9x
dWFudGl6ZXJfZGVsX2RlYygKICAgICAgICAgICAgIHBzREQgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPSAmcHNEZWxEZWNbIGsgXTsKICAgICAgICAgICAgIHBzU1MgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAmcHNTYW1wbGVTdGF0ZVsgayBdWyAwIF07
CiAgICAgICAgICAgICBwc0RELT5MRl9BUl9RMTQgICAgICAgICAgICAgICAgICAgICAgICAgID0g
cHNTUy0+TEZfQVJfUTE0OworICAgICAgICAgICAgcHNERC0+RGlmZl9RMTQgICAgICAgICAgICAg
ICAgICAgICAgICAgICA9IHBzU1MtPkRpZmZfUTE0OwogICAgICAgICAgICAgcHNERC0+c0xQQ19R
MTRbIE5TUV9MUENfQlVGX0xFTkdUSCArIGkgXSA9IHBzU1MtPnhxX1ExNDsKICAgICAgICAgICAg
IHBzREQtPlhxX1ExNFsgICAgKnNtcGxfYnVmX2lkeCBdICAgICAgICAgPSBwc1NTLT54cV9RMTQ7
CiAgICAgICAgICAgICBwc0RELT5RX1ExMFsgICAgICpzbXBsX2J1Zl9pZHggXSAgICAgICAgID0g
cHNTUy0+UV9RMTA7CkBAIC02MzEsNyArNjUyLDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19uc3FfZGVsX2RlY19zY2FsZV9zdGF0ZXMoCiAgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0
YXRlICpwc0VuY0MsICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgKk5TUSwgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICAgICBOU1FfZGVsX2RlY19zdHJ1Y3QgIHBzRGVsRGVjW10sICAgICAgICAgICAgICAgICAv
KiBJL08gIERlbGF5ZWQgZGVjaXNpb24gc3RhdGVzICAgICAgICAgICAgICovCi0gICAgY29uc3Qg
b3B1c19pbnQzMiAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBp
biBRMyAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAg
eDE2W10sICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgIHhfc2NfUTEwW10sICAg
ICAgICAgICAgICAgICAvKiBPICAgIElucHV0IHNjYWxlZCB3aXRoIDEvR2FpbiBpbiBRMTAgICAg
ICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICBzTFRQW10sICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBSZS13aGl0ZW5lZCBMVFAgc3RhdGUgaW4gUTAgICAgICAgICAqLwogICAgIG9wdXNf
aW50MzIgICAgICAgICAgc0xUUF9RMTVbXSwgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIHN0
YXRlIG1hdGNoaW5nIHNjYWxlZCBpbnB1dCAgICAgKi8KQEAgLTY0NSwyOSArNjY2LDE5IEBAIHN0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVfc3RhdGVzKAogKQog
ewogICAgIG9wdXNfaW50ICAgICAgICAgICAgaSwgaywgbGFnOwotICAgIG9wdXNfaW50MzIgICAg
ICAgICAgZ2Fpbl9hZGpfUTE2LCBpbnZfZ2Fpbl9RMzEsIGludl9nYWluX1EyMzsKKyAgICBvcHVz
X2ludDMyICAgICAgICAgIGdhaW5fYWRqX1ExNiwgaW52X2dhaW5fUTMxLCBpbnZfZ2Fpbl9RMjY7
CiAgICAgTlNRX2RlbF9kZWNfc3RydWN0ICAqcHNERDsKIAogICAgIGxhZyAgICAgICAgICA9IHBp
dGNoTFsgc3ViZnIgXTsKICAgICBpbnZfZ2Fpbl9RMzEgPSBzaWxrX0lOVkVSU0UzMl92YXJRKCBz
aWxrX21heCggR2FpbnNfUTE2WyBzdWJmciBdLCAxICksIDQ3ICk7CiAgICAgc2lsa19hc3NlcnQo
IGludl9nYWluX1EzMSAhPSAwICk7CiAKLSAgICAvKiBDYWxjdWxhdGUgZ2FpbiBhZGp1c3RtZW50
IGZhY3RvciAqLwotICAgIGlmKCBHYWluc19RMTZbIHN1YmZyIF0gIT0gTlNRLT5wcmV2X2dhaW5f
UTE2ICkgewotICAgICAgICBnYWluX2Fkal9RMTYgPSAgc2lsa19ESVYzMl92YXJRKCBOU1EtPnBy
ZXZfZ2Fpbl9RMTYsIEdhaW5zX1ExNlsgc3ViZnIgXSwgMTYgKTsKLSAgICB9IGVsc2UgewotICAg
ICAgICBnYWluX2Fkal9RMTYgPSAob3B1c19pbnQzMikxIDw8IDE2OwotICAgIH0KLQogICAgIC8q
IFNjYWxlIGlucHV0ICovCi0gICAgaW52X2dhaW5fUTIzID0gc2lsa19SU0hJRlRfUk9VTkQoIGlu
dl9nYWluX1EzMSwgOCApOworICAgIGludl9nYWluX1EyNiA9IHNpbGtfUlNISUZUX1JPVU5EKCBp
bnZfZ2Fpbl9RMzEsIDUgKTsKICAgICBmb3IoIGkgPSAwOyBpIDwgcHNFbmNDLT5zdWJmcl9sZW5n
dGg7IGkrKyApIHsKLSAgICAgICAgeF9zY19RMTBbIGkgXSA9IHNpbGtfU01VTFdXKCB4X1EzWyBp
IF0sIGludl9nYWluX1EyMyApOworICAgICAgICB4X3NjX1ExMFsgaSBdID0gc2lsa19TTVVMV1co
IHgxNlsgaSBdLCBpbnZfZ2Fpbl9RMjYgKTsKICAgICB9CiAKLSAgICAvKiBTYXZlIGludmVyc2Ug
Z2FpbiAqLwotICAgIE5TUS0+cHJldl9nYWluX1ExNiA9IEdhaW5zX1ExNlsgc3ViZnIgXTsKLQog
ICAgIC8qIEFmdGVyIHJld2hpdGVuaW5nIHRoZSBMVFAgc3RhdGUgaXMgdW4tc2NhbGVkLCBzbyBz
Y2FsZSB3aXRoIGludl9nYWluX1ExNiAqLwogICAgIGlmKCBOU1EtPnJld2hpdGVfZmxhZyApIHsK
ICAgICAgICAgaWYoIHN1YmZyID09IDAgKSB7CkBAIC02ODEsNyArNjkyLDkgQEAgc3RhdGljIE9Q
VVNfSU5MSU5FIHZvaWQgc2lsa19uc3FfZGVsX2RlY19zY2FsZV9zdGF0ZXMoCiAgICAgfQogCiAg
ICAgLyogQWRqdXN0IGZvciBjaGFuZ2luZyBnYWluICovCi0gICAgaWYoIGdhaW5fYWRqX1ExNiAh
PSAob3B1c19pbnQzMikxIDw8IDE2ICkgeworICAgIGlmKCBHYWluc19RMTZbIHN1YmZyIF0gIT0g
TlNRLT5wcmV2X2dhaW5fUTE2ICkgeworICAgICAgICBnYWluX2Fkal9RMTYgPSAgc2lsa19ESVYz
Ml92YXJRKCBOU1EtPnByZXZfZ2Fpbl9RMTYsIEdhaW5zX1ExNlsgc3ViZnIgXSwgMTYgKTsKKwog
ICAgICAgICAvKiBTY2FsZSBsb25nLXRlcm0gc2hhcGluZyBzdGF0ZSAqLwogICAgICAgICBmb3Io
IGkgPSBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggLSBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoOyBpIDwg
TlNRLT5zTFRQX3NocF9idWZfaWR4OyBpKysgKSB7CiAgICAgICAgICAgICBOU1EtPnNMVFBfc2hw
X1ExNFsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgTlNRLT5zTFRQX3NocF9RMTRb
IGkgXSApOwpAQCAtNjk5LDYgKzcxMiw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtf
bnNxX2RlbF9kZWNfc2NhbGVfc3RhdGVzKAogCiAgICAgICAgICAgICAvKiBTY2FsZSBzY2FsYXIg
c3RhdGVzICovCiAgICAgICAgICAgICBwc0RELT5MRl9BUl9RMTQgPSBzaWxrX1NNVUxXVyggZ2Fp
bl9hZGpfUTE2LCBwc0RELT5MRl9BUl9RMTQgKTsKKyAgICAgICAgICAgIHBzREQtPkRpZmZfUTE0
ID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgcHNERC0+RGlmZl9RMTQgKTsKIAogICAgICAg
ICAgICAgLyogU2NhbGUgc2hvcnQtdGVybSBwcmVkaWN0aW9uIGFuZCBzaGFwaW5nIHN0YXRlcyAq
LwogICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IE5TUV9MUENfQlVGX0xFTkdUSDsgaSsrICkg
ewpAQCAtNzEyLDUgKzcyNiw4IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX2Rl
bF9kZWNfc2NhbGVfc3RhdGVzKAogICAgICAgICAgICAgICAgIHBzREQtPlNoYXBlX1ExNFsgaSBd
ID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgcHNERC0+U2hhcGVfUTE0WyBpIF0gKTsKICAg
ICAgICAgICAgIH0KICAgICAgICAgfQorCisgICAgICAgIC8qIFNhdmUgaW52ZXJzZSBnYWluICov
CisgICAgICAgIE5TUS0+cHJldl9nYWluX1ExNiA9IEdhaW5zX1ExNlsgc3ViZnIgXTsKICAgICB9
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvUExDLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvUExDLmMKaW5kZXggZmI2ZWE4ODdiN2Vl
MjU0YjFiODU4YTZhNTJiYzU4NDVlMGQ1NzM4ZC4uYTNlNTVlYTc2NWVmNGY0YjA3MTkwMTU1NWQz
M2QwM2MwNjMzZWFlMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1BMQy5jCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9QTEMuYwpAQCAt
Mjc1LDcgKzI3NSw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfUExDX2NvbmNlYWwo
CiAgICAgICAgICAgICAvKiBSZWR1Y2UgcmFuZG9tIG5vaXNlIGZvciB1bnZvaWNlZCBmcmFtZXMg
d2l0aCBoaWdoIExQQyBnYWluICovCiAgICAgICAgICAgICBvcHVzX2ludDMyIGludkdhaW5fUTMw
LCBkb3duX3NjYWxlX1EzMDsKIAotICAgICAgICAgICAgaW52R2Fpbl9RMzAgPSBzaWxrX0xQQ19p
bnZlcnNlX3ByZWRfZ2FpbiggcHNQTEMtPnByZXZMUENfUTEyLCBwc0RlYy0+TFBDX29yZGVyICk7
CisgICAgICAgICAgICBpbnZHYWluX1EzMCA9IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKCBw
c1BMQy0+cHJldkxQQ19RMTIsIHBzRGVjLT5MUENfb3JkZXIsIGFyY2ggKTsKIAogICAgICAgICAg
ICAgZG93bl9zY2FsZV9RMzAgPSBzaWxrX21pbl8zMiggc2lsa19SU0hJRlQoIChvcHVzX2ludDMy
KTEgPDwgMzAsIExPRzJfSU5WX0xQQ19HQUlOX0hJR0hfVEhSRVMgKSwgaW52R2Fpbl9RMzAgKTsK
ICAgICAgICAgICAgIGRvd25fc2NhbGVfUTMwID0gc2lsa19tYXhfMzIoIHNpbGtfUlNISUZUKCAo
b3B1c19pbnQzMikxIDw8IDMwLCBMT0cyX0lOVl9MUENfR0FJTl9MT1dfVEhSRVMgKSwgZG93bl9z
Y2FsZV9RMzAgKTsKQEAgLTMyOCw4ICszMjgsMTAgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19QTENfY29uY2VhbCgKICAgICAgICAgZm9yKCBqID0gMDsgaiA8IExUUF9PUkRFUjsgaisr
ICkgewogICAgICAgICAgICAgQl9RMTRbIGogXSA9IHNpbGtfUlNISUZUKCBzaWxrX1NNVUxCQigg
aGFybV9HYWluX1ExNSwgQl9RMTRbIGogXSApLCAxNSApOwogICAgICAgICB9Ci0gICAgICAgIC8q
IEdyYWR1YWxseSByZWR1Y2UgZXhjaXRhdGlvbiBnYWluICovCi0gICAgICAgIHJhbmRfc2NhbGVf
UTE0ID0gc2lsa19SU0hJRlQoIHNpbGtfU01VTEJCKCByYW5kX3NjYWxlX1ExNCwgcmFuZF9HYWlu
X1ExNSApLCAxNSApOworICAgICAgICBpZiAoIHBzRGVjLT5pbmRpY2VzLnNpZ25hbFR5cGUgIT0g
VFlQRV9OT19WT0lDRV9BQ1RJVklUWSApIHsKKyAgICAgICAgICAgIC8qIEdyYWR1YWxseSByZWR1
Y2UgZXhjaXRhdGlvbiBnYWluICovCisgICAgICAgICAgICByYW5kX3NjYWxlX1ExNCA9IHNpbGtf
UlNISUZUKCBzaWxrX1NNVUxCQiggcmFuZF9zY2FsZV9RMTQsIHJhbmRfR2Fpbl9RMTUgKSwgMTUg
KTsKKyAgICAgICAgfQogCiAgICAgICAgIC8qIFNsb3dseSBpbmNyZWFzZSBwaXRjaCBsYWcgKi8K
ICAgICAgICAgcHNQTEMtPnBpdGNoTF9ROCA9IHNpbGtfU01MQVdCKCBwc1BMQy0+cGl0Y2hMX1E4
LCBwc1BMQy0+cGl0Y2hMX1E4LCBQSVRDSF9EUklGVF9GQUNfUTE2ICk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvU2lnUHJvY19GSVguaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9TaWdQcm9jX0ZJWC5oCmluZGV4IGI2MzI5OTQ0MWU5MzBh
Mzg1ZTk3ZWY5YzEzZDU3NTVjYzBmOWM0MTMuLmY5YWUzMjYzMjZkMzFhODFjZGY5YzRmZjJiYjVh
YTgyN2E0ZWJhYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9TaWdQcm9jX0ZJWC5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9TaWdQ
cm9jX0ZJWC5oCkBAIC0zNSw3ICszNSw3IEBAIGV4dGVybiAiQyIKIAogLyojZGVmaW5lIHNpbGtf
TUFDUk9fQ09VTlQgKi8gICAgICAgICAgLyogVXNlZCB0byBlbmFibGUgV01PUFMgY291bnRpbmcg
Ki8KIAotI2RlZmluZSBTSUxLX01BWF9PUkRFUl9MUEMgICAgICAgICAgICAxNiAgICAgICAgICAg
IC8qIG1heCBvcmRlciBvZiB0aGUgTFBDIGFuYWx5c2lzIGluIHNjaHVyKCkgYW5kIGsyYSgpICov
CisjZGVmaW5lIFNJTEtfTUFYX09SREVSX0xQQyAgICAgICAgICAgIDI0ICAgICAgICAgICAgLyog
bWF4IG9yZGVyIG9mIHRoZSBMUEMgYW5hbHlzaXMgaW4gc2NodXIoKSBhbmQgazJhKCkgKi8KIAog
I2luY2x1ZGUgPHN0cmluZy5oPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGZv
ciBtZW1zZXQoKSwgbWVtY3B5KCksIG1lbW1vdmUoKSAqLwogI2luY2x1ZGUgInR5cGVkZWYuaCIK
QEAgLTQ3LDYgKzQ3LDExIEBAIGV4dGVybiAiQyIKICNpbmNsdWRlICJ4ODYvU2lnUHJvY19GSVhf
c3NlLmgiCiAjZW5kaWYKIAorI2lmIChkZWZpbmVkKE9QVVNfQVJNX0FTTSkgfHwgZGVmaW5lZChP
UFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpKQorI2luY2x1ZGUgImFybS9iaXF1YWRfYWx0X2Fy
bS5oIgorI2luY2x1ZGUgImFybS9MUENfaW52X3ByZWRfZ2Fpbl9hcm0uaCIKKyNlbmRpZgorCiAv
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKiovCiAvKiAgICAgICAgICAgICAgICAgICAgU0lHTkFMIFBST0NFU1NJTkcgRlVO
Q1RJT05TICAgICAgICAgICAgICAgICAgICovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC05NiwxNCArMTAx
LDIyIEBAIHZvaWQgc2lsa19yZXNhbXBsZXJfZG93bjJfMygKICAqIHNsb3dlciB0aGFuIGJpcXVh
ZCgpIGJ1dCB1c2VzIG1vcmUgcHJlY2lzZSBjb2VmZmljaWVudHMKICAqIGNhbiBoYW5kbGUgKHNs
b3dseSkgdmFyeWluZyBjb2VmZmljaWVudHMKICAqLwotdm9pZCBzaWxrX2JpcXVhZF9hbHQoCit2
b2lkIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUxKAogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICAqaW4sICAgICAgICAgICAgICAgIC8qIEkgICAgIGlucHV0IHNpZ25hbCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2lu
dDMyICAgICAgICAgICAgKkJfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBNQSBjb2VmZmljaWVu
dHMgWzNdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29u
c3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpBX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgQVIg
Y29lZmZpY2llbnRzIFsyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqUywgICAgICAgICAgICAgICAgIC8q
IEkvTyAgIFN0YXRlIHZlY3RvciBbMl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KICAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKm91dCwgICAgICAg
ICAgICAgICAvKiBPICAgICBvdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxl
biwgICAgICAgICAgICAgICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgICBzdHJpZGUgICAgICAgICAgICAgIC8qIEkgICAgIE9wZXJhdGUgb24gaW50ZXJsZWF2
ZWQgc2lnbmFsIGlmID4gMSAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVz
X2ludDMyICAgICAgICAgICAgbGVuICAgICAgICAgICAgICAgICAvKiBJICAgICBzaWduYWwgbGVu
Z3RoIChtdXN0IGJlIGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCispOwor
Cit2b2lkIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyX2MoCisgICAgY29uc3Qgb3B1c19pbnQxNiAg
ICAgICAgICAgICppbiwgICAgICAgICAgICAgICAgLyogSSAgICAgaW5wdXQgc2lnbmFsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICAqQl9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIE1BIGNvZWZm
aWNpZW50cyBbM10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKkFfUTI4LCAgICAgICAgICAgICAvKiBJICAg
ICBBUiBjb2VmZmljaWVudHMgWzJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpTLCAgICAgICAgICAgICAg
ICAgLyogSS9PICAgU3RhdGUgdmVjdG9yIFs0XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqb3V0LCAg
ICAgICAgICAgICAgIC8qIE8gICAgIG91dHB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAg
ICAgbGVuICAgICAgICAgICAgICAgICAvKiBJICAgICBzaWduYWwgbGVuZ3RoIChtdXN0IGJlIGV2
ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCiAvKiBWYXJpYWJsZSBv
cmRlciBNQSBwcmVkaWN0aW9uIGVycm9yIGZpbHRlci4gKi8KQEAgLTEzMiwxNyArMTQ1LDExIEBA
IHZvaWQgc2lsa19id2V4cGFuZGVyXzMyKAogCiAvKiBDb21wdXRlIGludmVyc2Ugb2YgTFBDIHBy
ZWRpY3Rpb24gZ2FpbiwgYW5kICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KIC8qIHRlc3Qg
aWYgTFBDIGNvZWZmaWNpZW50cyBhcmUgc3RhYmxlIChhbGwgcG9sZXMgd2l0aGluIHVuaXQgY2ly
Y2xlKSAgICAqLwotb3B1c19pbnQzMiBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbiggICAgICAg
ICAgICAgIC8qIE8gICBSZXR1cm5zIGludmVyc2UgcHJlZGljdGlvbiBnYWluIGluIGVuZXJneSBk
b21haW4sIFEzMCAgICAgICAgKi8KK29wdXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dh
aW5fYyggICAgICAgICAgICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBp
biBlbmVyZ3kgZG9tYWluLCBRMzAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgICpBX1ExMiwgICAgICAgICAgICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRz
LCBRMTIgW29yZGVyXSAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIG9y
ZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAK
LS8qIEZvciBpbnB1dCBpbiBRMjQgZG9tYWluICovCi1vcHVzX2ludDMyIHNpbGtfTFBDX2ludmVy
c2VfcHJlZF9nYWluX1EyNCggICAgICAgICAgLyogTyAgICBSZXR1cm5zIGludmVyc2UgcHJlZGlj
dGlvbiBnYWluIGluIGVuZXJneSBkb21haW4sIFEzMCAgICAgICAqLwotICAgIGNvbnN0IG9wdXNf
aW50MzIgICAgICAgICAgICAqQV9RMjQsICAgICAgICAgICAgIC8qIEkgICAgUHJlZGljdGlvbiBj
b2VmZmljaWVudHMgW29yZGVyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgIFBy
ZWRpY3Rpb24gb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0pOwotCiAvKiBTcGxpdCBzaWduYWwgaW4gdHdvIGRlY2ltYXRlZCBiYW5kcyB1c2luZyBm
aXJzdC1vcmRlciBhbGxwYXNzIGZpbHRlcnMgKi8KIHZvaWQgc2lsa19hbmFfZmlsdF9iYW5rXzEo
CiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICppbiwgICAgICAgICAgICAgICAgLyog
SSAgICBJbnB1dCBzaWduYWwgW05dICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwpAQCAtMTUyLDYgKzE1OSwxNCBAQCB2b2lkIHNpbGtfYW5hX2ZpbHRfYmFua18x
KAogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBOICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgTnVtYmVyIG9mIGlucHV0IHNhbXBsZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KICk7CiAKKyNpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX2JpcXVhZF9hbHRf
c3RyaWRlMikKKyNkZWZpbmUgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTIoaW4sIEJfUTI4LCBBX1Ey
OCwgUywgb3V0LCBsZW4sIGFyY2gpICgodm9pZCkoYXJjaCksIHNpbGtfYmlxdWFkX2FsdF9zdHJp
ZGUyX2MoaW4sIEJfUTI4LCBBX1EyOCwgUywgb3V0LCBsZW4pKQorI2VuZGlmCisKKyNpZiAhZGVm
aW5lZChPVkVSUklERV9zaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbikKKyNkZWZpbmUgc2lsa19M
UENfaW52ZXJzZV9wcmVkX2dhaW4oQV9RMTIsIG9yZGVyLCBhcmNoKSAgICAgKCh2b2lkKShhcmNo
KSwgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fYyhBX1ExMiwgb3JkZXIpKQorI2VuZGlmCisK
IC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KIC8qICAgICAgICAgICAgICAgICAgICAgICAgU0NBTEFSIEZVTkNUSU9O
UyAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KQEAgLTI3MSw3ICsy
ODYsMTcgQEAgdm9pZCBzaWxrX0EyTkxTRigKIHZvaWQgc2lsa19OTFNGMkEoCiAgICAgb3B1c19p
bnQxNiAgICAgICAgICAgICAgICAgICphX1ExMiwgICAgICAgICAgICAgLyogTyAgICBtb25pYyB3
aGl0ZW5pbmcgZmlsdGVyIGNvZWZmaWNpZW50cyBpbiBRMTIsICBbIGQgXSAgICAgICAgICAqLwog
ICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqTkxTRiwgICAgICAgICAgICAgIC8qIEkg
ICAgbm9ybWFsaXplZCBsaW5lIHNwZWN0cmFsIGZyZXF1ZW5jaWVzIGluIFExNSwgWyBkIF0gICAg
ICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgZCAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIGZpbHRlciBvcmRlciAoc2hvdWxkIGJlIGV2ZW4pICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGQsICAg
ICAgICAgICAgICAgICAgLyogSSAgICBmaWx0ZXIgb3JkZXIgKHNob3VsZCBiZSBldmVuKSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGludCAgICAgICAgICAgICAgICAgICAg
ICAgICBhcmNoICAgICAgICAgICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyk7CisKKy8qIENvbnZlcnQg
aW50MzIgY29lZmZpY2llbnRzIHRvIGludDE2IGNvZWZzIGFuZCBtYWtlIHN1cmUgdGhlcmUncyBu
byB3cmFwLWFyb3VuZCAqLwordm9pZCBzaWxrX0xQQ19maXQoCisgICAgb3B1c19pbnQxNiAgICAg
ICAgICAgICAgICAgICphX1FPVVQsICAgICAgICAgICAgLyogTyAgICBPdXRwdXQgc2lnbmFsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNf
aW50MzIgICAgICAgICAgICAgICAgICAqYV9RSU4sICAgICAgICAgICAgIC8qIEkvTyAgSW5wdXQg
c2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgUU9VVCwgICAgICAgICAgICAgICAvKiBJ
ICAgIElucHV0IFEgZG9tYWluICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIFFJTiwgICAgICAgICAg
ICAgICAgLyogSSAgICBJbnB1dCBRIGRvbWFpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBkICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgRmlsdGVyIG9yZGVyICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKIHZvaWQgc2lsa19pbnNlcnRpb25f
c29ydF9pbmNyZWFzaW5nKApAQCAtNDcxLDggKzQ5Niw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSBv
cHVzX2ludDMyIHNpbGtfUk9SMzIoIG9wdXNfaW50MzIgYTMyLCBvcHVzX2ludCByb3QgKQogLyog
QWRkIHdpdGggc2F0dXJhdGlvbiBmb3IgcG9zaXRpdmUgaW5wdXQgdmFsdWVzICovCiAjZGVmaW5l
IHNpbGtfQUREX1BPU19TQVQ4KGEsIGIpICAgICAgICAgICAgICgoKChhKSsoYikpICYgMHg4MCkg
ICAgICAgICAgICAgICAgID8gc2lsa19pbnQ4X01BWCAgOiAoKGEpKyhiKSkpCiAjZGVmaW5lIHNp
bGtfQUREX1BPU19TQVQxNihhLCBiKSAgICAgICAgICAgICgoKChhKSsoYikpICYgMHg4MDAwKSAg
ICAgICAgICAgICAgID8gc2lsa19pbnQxNl9NQVggOiAoKGEpKyhiKSkpCi0jZGVmaW5lIHNpbGtf
QUREX1BPU19TQVQzMihhLCBiKSAgICAgICAgICAgICgoKChhKSsoYikpICYgMHg4MDAwMDAwMCkg
ICAgICAgICAgID8gc2lsa19pbnQzMl9NQVggOiAoKGEpKyhiKSkpCi0jZGVmaW5lIHNpbGtfQURE
X1BPU19TQVQ2NChhLCBiKSAgICAgICAgICAgICgoKChhKSsoYikpICYgMHg4MDAwMDAwMDAwMDAw
MDAwTEwpID8gc2lsa19pbnQ2NF9NQVggOiAoKGEpKyhiKSkpCisjZGVmaW5lIHNpbGtfQUREX1BP
U19TQVQzMihhLCBiKSAgICAgICAgICAgICgoKChvcHVzX3VpbnQzMikoYSkrKG9wdXNfdWludDMy
KShiKSkgJiAweDgwMDAwMDAwKSA/IHNpbGtfaW50MzJfTUFYIDogKChhKSsoYikpKQogCiAjZGVm
aW5lIHNpbGtfTFNISUZUOChhLCBzaGlmdCkgICAgICAgICAgICAgICgob3B1c19pbnQ4KSgob3B1
c191aW50OCkoYSk8PChzaGlmdCkpKSAgICAgICAgIC8qIHNoaWZ0ID49IDAsIHNoaWZ0IDwgOCAg
Ki8KICNkZWZpbmUgc2lsa19MU0hJRlQxNihhLCBzaGlmdCkgICAgICAgICAgICAgKChvcHVzX2lu
dDE2KSgob3B1c191aW50MTYpKGEpPDwoc2hpZnQpKSkgICAgICAgLyogc2hpZnQgPj0gMCwgc2hp
ZnQgPCAxNiAqLwpAQCAtNTcyLDcgKzU5Niw5IEBAIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2lu
dDY0IHNpbGtfbWF4XzY0KG9wdXNfaW50NjQgYSwgb3B1c19pbnQ2NCBiKQogLyogTWFrZSBzdXJl
IHRvIHN0b3JlIHRoZSByZXN1bHQgYXMgdGhlIHNlZWQgZm9yIHRoZSBuZXh0IGNhbGwgKGFsc28g
aW4gYmV0d2VlbiAgICAgKi8KIC8qIGZyYW1lcyksIG90aGVyd2lzZSByZXN1bHQgd29uJ3QgYmUg
cmFuZG9tIGF0IGFsbC4gV2hlbiBvbmx5IHVzaW5nIHNvbWUgb2YgdGhlICAgICovCiAvKiBiaXRz
LCB0YWtlIHRoZSBtb3N0IHNpZ25pZmljYW50IGJpdHMgYnkgcmlnaHQtc2hpZnRpbmcuICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwotI2RlZmluZSBzaWxrX1JBTkQoc2VlZCkgICAgICAgICAg
ICAgICAgICAgICAoc2lsa19NTEFfb3ZmbHcoOTA3NjMzNTE1LCAoc2VlZCksIDE5NjMxNDE2NSkp
CisjZGVmaW5lIFJBTkRfTVVMVElQTElFUiAgICAgICAgICAgICAgICAgICAgIDE5NjMxNDE2NQor
I2RlZmluZSBSQU5EX0lOQ1JFTUVOVCAgICAgICAgICAgICAgICAgICAgICA5MDc2MzM1MTUKKyNk
ZWZpbmUgc2lsa19SQU5EKHNlZWQpICAgICAgICAgICAgICAgICAgICAgKHNpbGtfTUxBX292Zmx3
KChSQU5EX0lOQ1JFTUVOVCksIChzZWVkKSwgKFJBTkRfTVVMVElQTElFUikpKQogCiAvKiAgQWRk
IHNvbWUgbXVsdGlwbGljYXRpb24gZnVuY3Rpb25zIHRoYXQgY2FuIGJlIGVhc2lseSBtYXBwZWQg
dG8gQVJNLiAqLwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvVlFfV01hdF9FQy5jIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1ZRX1dNYXRf
RUMuYwppbmRleCA3OTgzZjFkYjgwY2NjZWNhNThiZDdhNzYyZWE5MDU0Y2ZhNTRiNmI5Li4wZjNk
NTQ1YzRlZjhjMTMzZWU1MTUzMzZlMTljMTZmYTYyNzJkYmUzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvVlFf
V01hdF9FQy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9WUV9XTWF0X0VDLmMKQEAgLTM0LDg0ICszNCw5NSBAQCBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIC8qIEVudHJvcHkgY29uc3RyYWluZWQgbWF0cml4LXdl
aWdodGVkIFZRLCBoYXJkLWNvZGVkIHRvIDUtZWxlbWVudCB2ZWN0b3JzLCBmb3IgYSBzaW5nbGUg
aW5wdXQgZGF0YSB2ZWN0b3IgKi8KIHZvaWQgc2lsa19WUV9XTWF0X0VDX2MoCiAgICAgb3B1c19p
bnQ4ICAgICAgICAgICAgICAgICAgICppbmQsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
TyAgICBpbmRleCBvZiBiZXN0IGNvZGVib29rIHZlY3RvciAgICAgICAgICAgICAgICovCi0gICAg
b3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpyYXRlX2Rpc3RfUTE0LCAgICAgICAgICAgICAg
ICAgLyogTyAgICBiZXN0IHdlaWdodGVkIHF1YW50IGVycm9yICsgbXUgKiByYXRlICAgICAgICov
CisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpyZXNfbnJnX1ExNSwgICAgICAgICAg
ICAgICAgICAgLyogTyAgICBiZXN0IHJlc2lkdWFsIGVuZXJneSAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpyYXRlX2Rpc3RfUTgsICAg
ICAgICAgICAgICAgICAgLyogTyAgICBiZXN0IHRvdGFsIGJpdHJhdGUgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICpnYWluX1E3LCAg
ICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBzdW0gb2YgYWJzb2x1dGUgTFRQIGNvZWZmaWNp
ZW50cyAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICppbl9R
MTQsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBpbnB1dCB2ZWN0b3IgdG8gYmUgcXVh
bnRpemVkICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAg
ICpXX1ExOCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICB3ZWlnaHRpbmcgbWF0cml4
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAg
ICAgICAgICpYWF9RMTcsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb3JyZWxhdGlv
biBtYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQz
MiAgICAgICAgICAgICp4WF9RMTcsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb3Jy
ZWxhdGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1
c19pbnQ4ICAgICAgICAgICAgICpjYl9RNywgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBjb2RlYm9vayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29u
c3Qgb3B1c191aW50OCAgICAgICAgICAgICpjYl9nYWluX1E3LCAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBjb2RlYm9vayBlZmZlY3RpdmUgZ2FpbiAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgY29uc3Qgb3B1c191aW50OCAgICAgICAgICAgICpjbF9RNSwgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBjb2RlIGxlbmd0aCBmb3IgZWFjaCBjb2RlYm9vayB2ZWN0b3IgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG11X1E5LCAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICB0cmFkZW9mZiBiZXR3LiB3ZWlnaHRlZCBlcnJvciBhbmQgcmF0
ZSAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHN1YmZyX2xlbiwgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3ViZnJhbWUg
ICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIG1heF9nYWlu
X1E3LCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBtYXhpbXVtIHN1bSBvZiBhYnNvbHV0ZSBM
VFAgY29lZmZpY2llbnRzICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIEwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2YgdmVjdG9ycyBp
biBjb2RlYm9vayAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICAgIEwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2YgdmVj
dG9ycyBpbiBjb2RlYm9vayAgICAgICAgICAgICAgICovCiApCiB7CiAgICAgb3B1c19pbnQgICBr
LCBnYWluX3RtcF9RNzsKICAgICBjb25zdCBvcHVzX2ludDggKmNiX3Jvd19RNzsKLSAgICBvcHVz
X2ludDE2IGRpZmZfUTE0WyA1IF07Ci0gICAgb3B1c19pbnQzMiBzdW0xX1ExNCwgc3VtMl9RMTY7
CisgICAgb3B1c19pbnQzMiBuZWdfeFhfUTI0WyA1IF07CisgICAgb3B1c19pbnQzMiBzdW0xX1Ex
NSwgc3VtMl9RMjQ7CisgICAgb3B1c19pbnQzMiBiaXRzX3Jlc19ROCwgYml0c190b3RfUTg7CisK
KyAgICAvKiBOZWdhdGUgYW5kIGNvbnZlcnQgdG8gbmV3IFEgZG9tYWluICovCisgICAgbmVnX3hY
X1EyNFsgMCBdID0gLXNpbGtfTFNISUZUMzIoIHhYX1ExN1sgMCBdLCA3ICk7CisgICAgbmVnX3hY
X1EyNFsgMSBdID0gLXNpbGtfTFNISUZUMzIoIHhYX1ExN1sgMSBdLCA3ICk7CisgICAgbmVnX3hY
X1EyNFsgMiBdID0gLXNpbGtfTFNISUZUMzIoIHhYX1ExN1sgMiBdLCA3ICk7CisgICAgbmVnX3hY
X1EyNFsgMyBdID0gLXNpbGtfTFNISUZUMzIoIHhYX1ExN1sgMyBdLCA3ICk7CisgICAgbmVnX3hY
X1EyNFsgNCBdID0gLXNpbGtfTFNISUZUMzIoIHhYX1ExN1sgNCBdLCA3ICk7CiAKICAgICAvKiBM
b29wIG92ZXIgY29kZWJvb2sgKi8KLSAgICAqcmF0ZV9kaXN0X1ExNCA9IHNpbGtfaW50MzJfTUFY
OworICAgICpyYXRlX2Rpc3RfUTggPSBzaWxrX2ludDMyX01BWDsKKyAgICAqcmVzX25yZ19RMTUg
PSBzaWxrX2ludDMyX01BWDsKICAgICBjYl9yb3dfUTcgPSBjYl9RNzsKKyAgICAvKiBJbiB0aGlu
Z3MgZ28gcmVhbGx5IGJhZCwgYXQgbGVhc3QgKmluZCBpcyBzZXQgdG8gc29tZXRoaW5nIHNhZmUu
ICovCisgICAgKmluZCA9IDA7CiAgICAgZm9yKCBrID0gMDsgayA8IEw7IGsrKyApIHsKKyAgICAg
ICAgb3B1c19pbnQzMiBwZW5hbHR5OwogICAgICAgICBnYWluX3RtcF9RNyA9IGNiX2dhaW5fUTdb
a107Ci0KLSAgICAgICAgZGlmZl9RMTRbIDAgXSA9IGluX1ExNFsgMCBdIC0gc2lsa19MU0hJRlQo
IGNiX3Jvd19RN1sgMCBdLCA3ICk7Ci0gICAgICAgIGRpZmZfUTE0WyAxIF0gPSBpbl9RMTRbIDEg
XSAtIHNpbGtfTFNISUZUKCBjYl9yb3dfUTdbIDEgXSwgNyApOwotICAgICAgICBkaWZmX1ExNFsg
MiBdID0gaW5fUTE0WyAyIF0gLSBzaWxrX0xTSElGVCggY2Jfcm93X1E3WyAyIF0sIDcgKTsKLSAg
ICAgICAgZGlmZl9RMTRbIDMgXSA9IGluX1ExNFsgMyBdIC0gc2lsa19MU0hJRlQoIGNiX3Jvd19R
N1sgMyBdLCA3ICk7Ci0gICAgICAgIGRpZmZfUTE0WyA0IF0gPSBpbl9RMTRbIDQgXSAtIHNpbGtf
TFNISUZUKCBjYl9yb3dfUTdbIDQgXSwgNyApOwotCiAgICAgICAgIC8qIFdlaWdodGVkIHJhdGUg
Ki8KLSAgICAgICAgc3VtMV9RMTQgPSBzaWxrX1NNVUxCQiggbXVfUTksIGNsX1E1WyBrIF0gKTsK
KyAgICAgICAgLyogUXVhbnRpemF0aW9uIGVycm9yOiAxIC0gMiAqIHhYICogY2IgKyBjYicgKiBY
WCAqIGNiICovCisgICAgICAgIHN1bTFfUTE1ID0gU0lMS19GSVhfQ09OU1QoIDEuMDAxLCAxNSAp
OwogCiAgICAgICAgIC8qIFBlbmFsdHkgZm9yIHRvbyBsYXJnZSBnYWluICovCi0gICAgICAgIHN1
bTFfUTE0ID0gc2lsa19BRERfTFNISUZUMzIoIHN1bTFfUTE0LCBzaWxrX21heCggc2lsa19TVUIz
MiggZ2Fpbl90bXBfUTcsIG1heF9nYWluX1E3ICksIDAgKSwgMTAgKTsKLQotICAgICAgICBzaWxr
X2Fzc2VydCggc3VtMV9RMTQgPj0gMCApOwotCi0gICAgICAgIC8qIGZpcnN0IHJvdyBvZiBXX1Ex
OCAqLwotICAgICAgICBzdW0yX1ExNiA9IHNpbGtfU01VTFdCKCAgICAgICAgICAgV19RMThbICAx
IF0sIGRpZmZfUTE0WyAxIF0gKTsKLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNTEFXQiggc3Vt
Ml9RMTYsIFdfUTE4WyAgMiBdLCBkaWZmX1ExNFsgMiBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0g
c2lsa19TTUxBV0IoIHN1bTJfUTE2LCBXX1ExOFsgIDMgXSwgZGlmZl9RMTRbIDMgXSApOwotICAg
ICAgICBzdW0yX1ExNiA9IHNpbGtfU01MQVdCKCBzdW0yX1ExNiwgV19RMThbICA0IF0sIGRpZmZf
UTE0WyA0IF0gKTsKLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX0xTSElGVCggc3VtMl9RMTYsIDEg
KTsKLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdfUTE4WyAgMCBd
LCBkaWZmX1ExNFsgMCBdICk7Ci0gICAgICAgIHN1bTFfUTE0ID0gc2lsa19TTUxBV0IoIHN1bTFf
UTE0LCBzdW0yX1ExNiwgICAgZGlmZl9RMTRbIDAgXSApOwotCi0gICAgICAgIC8qIHNlY29uZCBy
b3cgb2YgV19RMTggKi8KLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNVUxXQiggICAgICAgICAg
IFdfUTE4WyAgNyBdLCBkaWZmX1ExNFsgMiBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19T
TUxBV0IoIHN1bTJfUTE2LCBXX1ExOFsgIDggXSwgZGlmZl9RMTRbIDMgXSApOwotICAgICAgICBz
dW0yX1ExNiA9IHNpbGtfU01MQVdCKCBzdW0yX1ExNiwgV19RMThbICA5IF0sIGRpZmZfUTE0WyA0
IF0gKTsKLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX0xTSElGVCggc3VtMl9RMTYsIDEgKTsKLSAg
ICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdfUTE4WyAgNiBdLCBkaWZm
X1ExNFsgMSBdICk7Ci0gICAgICAgIHN1bTFfUTE0ID0gc2lsa19TTUxBV0IoIHN1bTFfUTE0LCBz
dW0yX1ExNiwgICAgZGlmZl9RMTRbIDEgXSApOwotCi0gICAgICAgIC8qIHRoaXJkIHJvdyBvZiBX
X1ExOCAqLwotICAgICAgICBzdW0yX1ExNiA9IHNpbGtfU01VTFdCKCAgICAgICAgICAgV19RMThb
IDEzIF0sIGRpZmZfUTE0WyAzIF0gKTsKLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNTEFXQigg
c3VtMl9RMTYsIFdfUTE4WyAxNCBdLCBkaWZmX1ExNFsgNCBdICk7Ci0gICAgICAgIHN1bTJfUTE2
ID0gc2lsa19MU0hJRlQoIHN1bTJfUTE2LCAxICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19T
TUxBV0IoIHN1bTJfUTE2LCBXX1ExOFsgMTIgXSwgZGlmZl9RMTRbIDIgXSApOwotICAgICAgICBz
dW0xX1ExNCA9IHNpbGtfU01MQVdCKCBzdW0xX1ExNCwgc3VtMl9RMTYsICAgIGRpZmZfUTE0WyAy
IF0gKTsKLQotICAgICAgICAvKiBmb3VydGggcm93IG9mIFdfUTE4ICovCi0gICAgICAgIHN1bTJf
UTE2ID0gc2lsa19TTVVMV0IoICAgICAgICAgICBXX1ExOFsgMTkgXSwgZGlmZl9RMTRbIDQgXSAp
OwotICAgICAgICBzdW0yX1ExNiA9IHNpbGtfTFNISUZUKCBzdW0yX1ExNiwgMSApOwotICAgICAg
ICBzdW0yX1ExNiA9IHNpbGtfU01MQVdCKCBzdW0yX1ExNiwgV19RMThbIDE4IF0sIGRpZmZfUTE0
WyAzIF0gKTsKLSAgICAgICAgc3VtMV9RMTQgPSBzaWxrX1NNTEFXQiggc3VtMV9RMTQsIHN1bTJf
UTE2LCAgICBkaWZmX1ExNFsgMyBdICk7Ci0KLSAgICAgICAgLyogbGFzdCByb3cgb2YgV19RMTgg
Ki8KLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNVUxXQiggICAgICAgICAgIFdfUTE4WyAyNCBd
LCBkaWZmX1ExNFsgNCBdICk7Ci0gICAgICAgIHN1bTFfUTE0ID0gc2lsa19TTUxBV0IoIHN1bTFf
UTE0LCBzdW0yX1ExNiwgICAgZGlmZl9RMTRbIDQgXSApOwotCi0gICAgICAgIHNpbGtfYXNzZXJ0
KCBzdW0xX1ExNCA+PSAwICk7CisgICAgICAgIHBlbmFsdHkgPSBzaWxrX0xTSElGVDMyKCBzaWxr
X21heCggc2lsa19TVUIzMiggZ2Fpbl90bXBfUTcsIG1heF9nYWluX1E3ICksIDAgKSwgMTEgKTsK
KworICAgICAgICAvKiBmaXJzdCByb3cgb2YgWFhfUTE3ICovCisgICAgICAgIHN1bTJfUTI0ID0g
c2lsa19NTEEoIG5lZ194WF9RMjRbIDAgXSwgWFhfUTE3WyAgMSBdLCBjYl9yb3dfUTdbIDEgXSAp
OworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBzdW0yX1EyNCwgICAgICAgIFhYX1ExN1sg
IDIgXSwgY2Jfcm93X1E3WyAyIF0gKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggc3Vt
Ml9RMjQsICAgICAgICBYWF9RMTdbICAzIF0sIGNiX3Jvd19RN1sgMyBdICk7CisgICAgICAgIHN1
bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJfUTI0LCAgICAgICAgWFhfUTE3WyAgNCBdLCBjYl9yb3df
UTdbIDQgXSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTFNISUZUMzIoIHN1bTJfUTI0LCAx
ICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJfUTI0LCAgICAgICAgWFhfUTE3
WyAgMCBdLCBjYl9yb3dfUTdbIDAgXSApOworICAgICAgICBzdW0xX1ExNSA9IHNpbGtfU01MQVdC
KCBzdW0xX1ExNSwgICAgICAgIHN1bTJfUTI0LCAgY2Jfcm93X1E3WyAwIF0gKTsKKworICAgICAg
ICAvKiBzZWNvbmQgcm93IG9mIFhYX1ExNyAqLworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxB
KCBuZWdfeFhfUTI0WyAxIF0sIFhYX1ExN1sgIDcgXSwgY2Jfcm93X1E3WyAyIF0gKTsKKyAgICAg
ICAgc3VtMl9RMjQgPSBzaWxrX01MQSggc3VtMl9RMjQsICAgICAgICBYWF9RMTdbICA4IF0sIGNi
X3Jvd19RN1sgMyBdICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJfUTI0LCAg
ICAgICAgWFhfUTE3WyAgOSBdLCBjYl9yb3dfUTdbIDQgXSApOworICAgICAgICBzdW0yX1EyNCA9
IHNpbGtfTFNISUZUMzIoIHN1bTJfUTI0LCAxICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19N
TEEoIHN1bTJfUTI0LCAgICAgICAgWFhfUTE3WyAgNiBdLCBjYl9yb3dfUTdbIDEgXSApOworICAg
ICAgICBzdW0xX1ExNSA9IHNpbGtfU01MQVdCKCBzdW0xX1ExNSwgICAgICAgIHN1bTJfUTI0LCAg
Y2Jfcm93X1E3WyAxIF0gKTsKKworICAgICAgICAvKiB0aGlyZCByb3cgb2YgWFhfUTE3ICovCisg
ICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIG5lZ194WF9RMjRbIDIgXSwgWFhfUTE3WyAxMyBd
LCBjYl9yb3dfUTdbIDMgXSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBzdW0yX1Ey
NCwgICAgICAgIFhYX1ExN1sgMTQgXSwgY2Jfcm93X1E3WyA0IF0gKTsKKyAgICAgICAgc3VtMl9R
MjQgPSBzaWxrX0xTSElGVDMyKCBzdW0yX1EyNCwgMSApOworICAgICAgICBzdW0yX1EyNCA9IHNp
bGtfTUxBKCBzdW0yX1EyNCwgICAgICAgIFhYX1ExN1sgMTIgXSwgY2Jfcm93X1E3WyAyIF0gKTsK
KyAgICAgICAgc3VtMV9RMTUgPSBzaWxrX1NNTEFXQiggc3VtMV9RMTUsICAgICAgICBzdW0yX1Ey
NCwgIGNiX3Jvd19RN1sgMiBdICk7CisKKyAgICAgICAgLyogZm91cnRoIHJvdyBvZiBYWF9RMTcg
Ki8KKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggbmVnX3hYX1EyNFsgMyBdLCBYWF9RMTdb
IDE5IF0sIGNiX3Jvd19RN1sgNCBdICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19MU0hJRlQz
Miggc3VtMl9RMjQsIDEgKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggc3VtMl9RMjQs
ICAgICAgICBYWF9RMTdbIDE4IF0sIGNiX3Jvd19RN1sgMyBdICk7CisgICAgICAgIHN1bTFfUTE1
ID0gc2lsa19TTUxBV0IoIHN1bTFfUTE1LCAgICAgICAgc3VtMl9RMjQsICBjYl9yb3dfUTdbIDMg
XSApOworCisgICAgICAgIC8qIGxhc3Qgcm93IG9mIFhYX1ExNyAqLworICAgICAgICBzdW0yX1Ey
NCA9IHNpbGtfTFNISUZUMzIoIG5lZ194WF9RMjRbIDQgXSwgMSApOworICAgICAgICBzdW0yX1Ey
NCA9IHNpbGtfTUxBKCBzdW0yX1EyNCwgICAgICAgIFhYX1ExN1sgMjQgXSwgY2Jfcm93X1E3WyA0
IF0gKTsKKyAgICAgICAgc3VtMV9RMTUgPSBzaWxrX1NNTEFXQiggc3VtMV9RMTUsICAgICAgICBz
dW0yX1EyNCwgIGNiX3Jvd19RN1sgNCBdICk7CiAKICAgICAgICAgLyogZmluZCBiZXN0ICovCi0g
ICAgICAgIGlmKCBzdW0xX1ExNCA8ICpyYXRlX2Rpc3RfUTE0ICkgewotICAgICAgICAgICAgKnJh
dGVfZGlzdF9RMTQgPSBzdW0xX1ExNDsKLSAgICAgICAgICAgICppbmQgPSAob3B1c19pbnQ4KWs7
Ci0gICAgICAgICAgICAqZ2Fpbl9RNyA9IGdhaW5fdG1wX1E3OworICAgICAgICBpZiggc3VtMV9R
MTUgPj0gMCApIHsKKyAgICAgICAgICAgIC8qIFRyYW5zbGF0ZSByZXNpZHVhbCBlbmVyZ3kgdG8g
Yml0cyB1c2luZyBoaWdoLXJhdGUgYXNzdW1wdGlvbiAoNiBkQiA9PT4gMSBiaXQvc2FtcGxlKSAq
LworICAgICAgICAgICAgYml0c19yZXNfUTggPSBzaWxrX1NNVUxCQiggc3ViZnJfbGVuLCBzaWxr
X2xpbjJsb2coIHN1bTFfUTE1ICsgcGVuYWx0eSkgLSAoMTUgPDwgNykgKTsKKyAgICAgICAgICAg
IC8qIEluIHRoZSBmb2xsb3dpbmcgbGluZSB3ZSByZWR1Y2UgdGhlIGNvZGVsZW5ndGggY29tcG9u
ZW50IGJ5IGhhbGYgKCItMSIpOyBzZWVtcyB0byBzbGdodGx5IGltcHJvdmUgcXVhbGl0eSAqLwor
ICAgICAgICAgICAgYml0c190b3RfUTggPSBzaWxrX0FERF9MU0hJRlQzMiggYml0c19yZXNfUTgs
IGNsX1E1WyBrIF0sIDMtMSApOworICAgICAgICAgICAgaWYoIGJpdHNfdG90X1E4IDw9ICpyYXRl
X2Rpc3RfUTggKSB7CisgICAgICAgICAgICAgICAgKnJhdGVfZGlzdF9ROCA9IGJpdHNfdG90X1E4
OworICAgICAgICAgICAgICAgICpyZXNfbnJnX1ExNSA9IHN1bTFfUTE1ICsgcGVuYWx0eTsKKyAg
ICAgICAgICAgICAgICAqaW5kID0gKG9wdXNfaW50OClrOworICAgICAgICAgICAgICAgICpnYWlu
X1E3ID0gZ2Fpbl90bXBfUTc7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KIAogICAgICAgICAv
KiBHbyB0byBuZXh0IGNiayB2ZWN0b3IgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vTFBDX2ludl9w
cmVkX2dhaW5fYXJtLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL0xQQ19pbnZfcHJlZF9nYWluX2FybS5oCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjk4OTViNTU1Yzg4NzA1MjBkMDI5MDZmYWFkYjUyZGNmYmJmYmM5NjQKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvYXJtL0xQQ19pbnZfcHJlZF9nYWluX2FybS5oCkBAIC0wLDAgKzEsNTcgQEAK
Ky8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKgorQ29weXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuCitSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworYXJlIG1ldDoKKy0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKK25vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKK2RvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCistIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0
eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBjb250cmli
dXRvcnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMgZGVyaXZl
ZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCitwZXJt
aXNzaW9uLgorVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRQorQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQg
T1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFCitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCitDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCitJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFCitQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaWZu
ZGVmIFNJTEtfTFBDX0lOVl9QUkVEX0dBSU5fQVJNX0gKKyMgZGVmaW5lIFNJTEtfTFBDX0lOVl9Q
UkVEX0dBSU5fQVJNX0gKKworIyBpbmNsdWRlICJjZWx0L2FybS9hcm1jcHUuaCIKKworIyBpZiBk
ZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikKK29wdXNfaW50MzIgc2lsa19MUENf
aW52ZXJzZV9wcmVkX2dhaW5fbmVvbiggICAgICAgICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHBy
ZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgICAgICovCisgICAgY29uc3Qg
b3B1c19pbnQxNiAgICAgICAgICAgICpBX1ExMiwgICAgICAgICAgICAgLyogSSAgIFByZWRpY3Rp
b24gY29lZmZpY2llbnRzLCBRMTIgW29yZGVyXSAgICAgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgIC8qIEkg
ICBQcmVkaWN0aW9uIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyk7CisKKyMgIGlmICFkZWZpbmVkKE9QVVNfSEFWRV9SVENEKSAmJiBkZWZpbmVk
KE9QVVNfQVJNX1BSRVNVTUVfTkVPTikKKyMgICBkZWZpbmUgT1ZFUlJJREVfc2lsa19MUENfaW52
ZXJzZV9wcmVkX2dhaW4gICAgICAgICAgICAoMSkKKyMgICBkZWZpbmUgc2lsa19MUENfaW52ZXJz
ZV9wcmVkX2dhaW4oQV9RMTIsIG9yZGVyLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBQUkVTVU1FX05F
T04oc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4pKEFfUTEyLCBvcmRlcikpCisjICBlbmRpZgor
IyBlbmRpZgorCisjIGlmICFkZWZpbmVkKE9WRVJSSURFX3NpbGtfTFBDX2ludmVyc2VfcHJlZF9n
YWluKQorLypJcyBydW4tdGltZSBDUFUgZGV0ZWN0aW9uIGVuYWJsZWQgb24gdGhpcyBwbGF0Zm9y
bT8qLworIyAgaWYgZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgKGRlZmluZWQoT1BVU19BUk1f
TUFZX0hBVkVfTkVPTl9JTlRSKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5U
UikpCitleHRlcm4gb3B1c19pbnQzMiAoKmNvbnN0IFNJTEtfTFBDX0lOVkVSU0VfUFJFRF9HQUlO
X0lNUExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qgb3B1c19pbnQxNiAqQV9RMTIsIGNvbnN0IG9w
dXNfaW50IG9yZGVyKTsKKyMgICBkZWZpbmUgT1ZFUlJJREVfc2lsa19MUENfaW52ZXJzZV9wcmVk
X2dhaW4gICAgICAgICAgICAoMSkKKyMgICBkZWZpbmUgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dh
aW4oQV9RMTIsIG9yZGVyLCBhcmNoKSAoKCpTSUxLX0xQQ19JTlZFUlNFX1BSRURfR0FJTl9JTVBM
WyhhcmNoKSZPUFVTX0FSQ0hNQVNLXSkoQV9RMTIsIG9yZGVyKSkKKyMgIGVsaWYgZGVmaW5lZChP
UFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikKKyMgICBkZWZpbmUgT1ZFUlJJREVfc2lsa19MUENf
aW52ZXJzZV9wcmVkX2dhaW4gICAgICAgICAgICAoMSkKKyMgICBkZWZpbmUgc2lsa19MUENfaW52
ZXJzZV9wcmVkX2dhaW4oQV9RMTIsIG9yZGVyLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBzaWxrX0xQ
Q19pbnZlcnNlX3ByZWRfZ2Fpbl9uZW9uKEFfUTEyLCBvcmRlcikpCisjICBlbmRpZgorIyBlbmRp
ZgorCisjZW5kaWYgLyogZW5kIFNJTEtfTFBDX0lOVl9QUkVEX0dBSU5fQVJNX0ggKi8KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9hcm0vTFBDX2ludl9wcmVkX2dhaW5fbmVvbl9pbnRyLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL0xQ
Q19pbnZfcHJlZF9nYWluX25lb25faW50ci5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI3MTQyZjM0Y2ViZTY5NDY1
MDZjOThjN2M4MGVkNzA2ZTYwNzM4YmUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL0xQQ19p
bnZfcHJlZF9nYWluX25lb25faW50ci5jCkBAIC0wLDAgKzEsMjgwIEBACisvKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioKK0NvcHlyaWdodCAoYykgMjAxNyBHb29nbGUgSW5jLgorUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
K2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCitkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVU
RiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVybWlzc2lvbi4KK1RISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklC
VVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKK0FSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRS
SUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2lmZGVmIEhBVkVfQ09ORklH
X0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVkZSA8YXJtX25lb24uaD4K
KyNpbmNsdWRlICJTaWdQcm9jX0ZJWC5oIgorI2luY2x1ZGUgImRlZmluZS5oIgorCisjZGVmaW5l
IFFBICAgICAgICAgICAgICAgICAgICAgICAgICAyNAorI2RlZmluZSBBX0xJTUlUICAgICAgICAg
ICAgICAgICAgICAgU0lMS19GSVhfQ09OU1QoIDAuOTk5NzUsIFFBICkKKworI2RlZmluZSBNVUwz
Ml9GUkFDX1EoYTMyLCBiMzIsIFEpICAgKChvcHVzX2ludDMyKShzaWxrX1JTSElGVF9ST1VORDY0
KHNpbGtfU01VTEwoYTMyLCBiMzIpLCBRKSkpCisKKy8qIFRoZSBkaWZmaWN1bHR5IGlzIGhvdyB0
byBqdWRnZSBhIDY0LWJpdCBzaWduZWQgaW50ZWdlciB0bXA2NCBpcyAzMi1iaXQgb3ZlcmZsb3dl
ZCwKKyAqIHNpbmNlIE5FT04gaGFzIG5vIDY0LWJpdCBtaW4sIG1heCBvciBjb21wYXJpc29uIGlu
c3RydWN0aW9ucy4KKyAqIEEgZmFpbGVkIGlkZWEgaXMgdG8gY29tcGFyZSB0aGUgcmVzdWx0cyBv
ZiB2bW92bih0bXA2NCkgYW5kIHZxbW92bih0bXA2NCkgd2hldGhlciB0aGV5IGFyZSBlcXVhbCBv
ciBub3QuCisgKiBIb3dldmVyLCB0aGlzIGlkZWEgZmFpbHMgd2hlbiB0aGUgdG1wNjQgaXMgc29t
ZXRoaW5nIGxpa2UgMHhGRkZGRkZGOTgwMDAwMDAwLgorICogSGVyZSB3ZSBrbm93IHRoYXQgbXVs
dDJRID49IDEsIHNvIHRoZSBoaWdoZXN0IGJpdCAoYml0IDYzLCBzaWduIGJpdCkgb2YgdG1wNjQg
bXVzdCBlcXVhbCB0byBiaXQgNjIuCisgKiB0bXA2NCB3YXMgc2hpZnRlZCBsZWZ0IGJ5IDEgYW5k
IHdlIGdvdCB0bXA2NCcuIElmIGhpZ2hfaGFsZih0bXA2NCcpICE9IDAgYW5kIGhpZ2hfaGFsZih0
bXA2NCcpICE9IC0xLAorICogdGhlbiB3ZSBrbm93IHRoYXQgYml0IDMxIHRvIGJpdCA2MyBvZiB0
bXA2NCBjYW4gbm90IGFsbCBiZSB0aGUgc2lnbiBiaXQsIGFuZCB0aGVyZWZvcmUgdG1wNjQgaXMg
MzItYml0IG92ZXJmbG93ZWQuCisgKiBUaGF0IGlzLCB3ZSBqdWRnZSBpZiB0bXA2NCcgPiAweDAw
MDAwMDAwRkZGRkZGRkYsIG9yIHRtcDY0JyA8PSAweEZGRkZGRkZGMDAwMDAwMDAuCisgKiBXZSB1
c2UgbmFycm93aW5nIHNoaWZ0IHJpZ2h0IDMxIGJpdHMgdG8gdG1wMzInIHRvIHNhdmUgZGF0YSBi
YW5kd2lkdGggYW5kIGluc3RydWN0aW9ucy4KKyAqIFRoYXQgaXMsIHdlIGp1ZGdlIGlmIHRtcDMy
JyA+IDB4MDAwMDAwMDAsIG9yIHRtcDMyJyA8PSAweEZGRkZGRkZGLgorICovCisKKy8qIENvbXB1
dGUgaW52ZXJzZSBvZiBMUEMgcHJlZGljdGlvbiBnYWluLCBhbmQgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCisvKiB0ZXN0IGlmIExQQyBjb2VmZmljaWVudHMgYXJlIHN0YWJsZSAoYWxsIHBv
bGVzIHdpdGhpbiB1bml0IGNpcmNsZSkgICAqLworc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50
MzIgTFBDX2ludmVyc2VfcHJlZF9nYWluX1FBX25lb24oIC8qIE8gICBSZXR1cm5zIGludmVyc2Ug
cHJlZGljdGlvbiBnYWluIGluIGVuZXJneSBkb21haW4sIFEzMCAgICAqLworICAgIG9wdXNfaW50
MzIgICAgICAgICAgIEFfUUFbIFNJTEtfTUFYX09SREVSX0xQQyBdLCAgICAgICAgIC8qIEkgICBQ
cmVkaWN0aW9uIGNvZWZmaWNpZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworKQoreworICAgIG9wdXNfaW50ICAgaywgbiwgbXVsdDJROworICAg
IG9wdXNfaW50MzIgaW52R2Fpbl9RMzAsIHJjX1EzMSwgcmNfbXVsdDFfUTMwLCByY19tdWx0Miwg
dG1wMSwgdG1wMjsKKyAgICBvcHVzX2ludDMyIG1heCwgbWluOworICAgIGludDMyeDRfdCAgbWF4
X3MzMng0LCBtaW5fczMyeDQ7CisgICAgaW50MzJ4Ml90ICBtYXhfczMyeDIsIG1pbl9zMzJ4MjsK
KworICAgIG1heF9zMzJ4NCA9IHZkdXBxX25fczMyKCBzaWxrX2ludDMyX01JTiApOworICAgIG1p
bl9zMzJ4NCA9IHZkdXBxX25fczMyKCBzaWxrX2ludDMyX01BWCApOworICAgIGludkdhaW5fUTMw
ID0gU0lMS19GSVhfQ09OU1QoIDEsIDMwICk7CisgICAgZm9yKCBrID0gb3JkZXIgLSAxOyBrID4g
MDsgay0tICkgeworICAgICAgICBpbnQzMngyX3QgcmNfUTMxX3MzMngyLCByY19tdWx0Ml9zMzJ4
MjsKKyAgICAgICAgaW50NjR4Ml90IG11bHQyUV9zNjR4MjsKKworICAgICAgICAvKiBDaGVjayBm
b3Igc3RhYmlsaXR5ICovCisgICAgICAgIGlmKCAoIEFfUUFbIGsgXSA+IEFfTElNSVQgKSB8fCAo
IEFfUUFbIGsgXSA8IC1BX0xJTUlUICkgKSB7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAg
ICAgfQorCisgICAgICAgIC8qIFNldCBSQyBlcXVhbCB0byBuZWdhdGVkIEFSIGNvZWYgKi8KKyAg
ICAgICAgcmNfUTMxID0gLXNpbGtfTFNISUZUKCBBX1FBWyBrIF0sIDMxIC0gUUEgKTsKKworICAg
ICAgICAvKiByY19tdWx0MV9RMzAgcmFuZ2U6IFsgMSA6IDJeMzAgXSAqLworICAgICAgICByY19t
dWx0MV9RMzAgPSBzaWxrX1NVQjMyKCBTSUxLX0ZJWF9DT05TVCggMSwgMzAgKSwgc2lsa19TTU1V
TCggcmNfUTMxLCByY19RMzEgKSApOworICAgICAgICBzaWxrX2Fzc2VydCggcmNfbXVsdDFfUTMw
ID4gKCAxIDw8IDE1ICkgKTsgICAgICAgICAgICAgICAgICAgLyogcmVkdWNlIEFfTElNSVQgaWYg
ZmFpbHMgKi8KKyAgICAgICAgc2lsa19hc3NlcnQoIHJjX211bHQxX1EzMCA8PSAoIDEgPDwgMzAg
KSApOworCisgICAgICAgIC8qIFVwZGF0ZSBpbnZlcnNlIGdhaW4gKi8KKyAgICAgICAgLyogaW52
R2Fpbl9RMzAgcmFuZ2U6IFsgMCA6IDJeMzAgXSAqLworICAgICAgICBpbnZHYWluX1EzMCA9IHNp
bGtfTFNISUZUKCBzaWxrX1NNTVVMKCBpbnZHYWluX1EzMCwgcmNfbXVsdDFfUTMwICksIDIgKTsK
KyAgICAgICAgc2lsa19hc3NlcnQoIGludkdhaW5fUTMwID49IDAgICAgICAgICAgICk7CisgICAg
ICAgIHNpbGtfYXNzZXJ0KCBpbnZHYWluX1EzMCA8PSAoIDEgPDwgMzAgKSApOworICAgICAgICBp
ZiggaW52R2Fpbl9RMzAgPCBTSUxLX0ZJWF9DT05TVCggMS4wZiAvIE1BWF9QUkVESUNUSU9OX1BP
V0VSX0dBSU4sIDMwICkgKSB7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorCisg
ICAgICAgIC8qIHJjX211bHQyIHJhbmdlOiBbIDJeMzAgOiBzaWxrX2ludDMyX01BWCBdICovCisg
ICAgICAgIG11bHQyUSA9IDMyIC0gc2lsa19DTFozMiggc2lsa19hYnMoIHJjX211bHQxX1EzMCAp
ICk7CisgICAgICAgIHJjX211bHQyID0gc2lsa19JTlZFUlNFMzJfdmFyUSggcmNfbXVsdDFfUTMw
LCBtdWx0MlEgKyAzMCApOworCisgICAgICAgIC8qIFVwZGF0ZSBBUiBjb2VmZmljaWVudCAqLwor
ICAgICAgICByY19RMzFfczMyeDIgICA9IHZkdXBfbl9zMzIoIHJjX1EzMSApOworICAgICAgICBt
dWx0MlFfczY0eDIgICA9IHZkdXBxX25fczY0KCAtbXVsdDJRICk7CisgICAgICAgIHJjX211bHQy
X3MzMngyID0gdmR1cF9uX3MzMiggcmNfbXVsdDIgKTsKKworICAgICAgICBmb3IoIG4gPSAwOyBu
IDwgKCAoIGsgKyAxICkgPj4gMSApIC0gMzsgbiArPSA0ICkgeworICAgICAgICAgICAgLyogV2Ug
YWx3YXlzIGNhbGN1bGF0ZSBleHRyYSBlbGVtZW50cyBvZiBBX1FBIGJ1ZmZlciB3aGVuICggayAl
IDQgKSAhPSAwLCB0byB0YWtlIHRoZSBhZHZhbnRhZ2Ugb2YgU0lNRCBwYXJhbGxlbGl6YXRpb24u
ICovCisgICAgICAgICAgICBpbnQzMng0X3QgdG1wMV9zMzJ4NCwgdG1wMl9zMzJ4NCwgdDBfczMy
eDQsIHQxX3MzMng0LCBzMF9zMzJ4NCwgczFfczMyeDQsIHRfUUEwX3MzMng0LCB0X1FBMV9zMzJ4
NDsKKyAgICAgICAgICAgIGludDY0eDJfdCB0MF9zNjR4MiwgdDFfczY0eDIsIHQyX3M2NHgyLCB0
M19zNjR4MjsKKyAgICAgICAgICAgIHRtcDFfczMyeDQgID0gdmxkMXFfczMyKCBBX1FBICsgbiAp
OworICAgICAgICAgICAgdG1wMl9zMzJ4NCAgPSB2bGQxcV9zMzIoIEFfUUEgKyBrIC0gbiAtIDQg
KTsKKyAgICAgICAgICAgIHRtcDJfczMyeDQgID0gdnJldjY0cV9zMzIoIHRtcDJfczMyeDQgKTsK
KyAgICAgICAgICAgIHRtcDJfczMyeDQgID0gdmNvbWJpbmVfczMyKCB2Z2V0X2hpZ2hfczMyKCB0
bXAyX3MzMng0ICksIHZnZXRfbG93X3MzMiggdG1wMl9zMzJ4NCApICk7CisgICAgICAgICAgICB0
MF9zMzJ4NCAgICA9IHZxcmRtdWxocV9sYW5lX3MzMiggdG1wMl9zMzJ4NCwgcmNfUTMxX3MzMngy
LCAwICk7CisgICAgICAgICAgICB0MV9zMzJ4NCAgICA9IHZxcmRtdWxocV9sYW5lX3MzMiggdG1w
MV9zMzJ4NCwgcmNfUTMxX3MzMngyLCAwICk7CisgICAgICAgICAgICB0X1FBMF9zMzJ4NCA9IHZx
c3VicV9zMzIoIHRtcDFfczMyeDQsIHQwX3MzMng0ICk7CisgICAgICAgICAgICB0X1FBMV9zMzJ4
NCA9IHZxc3VicV9zMzIoIHRtcDJfczMyeDQsIHQxX3MzMng0ICk7CisgICAgICAgICAgICB0MF9z
NjR4MiAgICA9IHZtdWxsX3MzMiggdmdldF9sb3dfczMyICggdF9RQTBfczMyeDQgKSwgcmNfbXVs
dDJfczMyeDIgKTsKKyAgICAgICAgICAgIHQxX3M2NHgyICAgID0gdm11bGxfczMyKCB2Z2V0X2hp
Z2hfczMyKCB0X1FBMF9zMzJ4NCApLCByY19tdWx0Ml9zMzJ4MiApOworICAgICAgICAgICAgdDJf
czY0eDIgICAgPSB2bXVsbF9zMzIoIHZnZXRfbG93X3MzMiAoIHRfUUExX3MzMng0ICksIHJjX211
bHQyX3MzMngyICk7CisgICAgICAgICAgICB0M19zNjR4MiAgICA9IHZtdWxsX3MzMiggdmdldF9o
aWdoX3MzMiggdF9RQTFfczMyeDQgKSwgcmNfbXVsdDJfczMyeDIgKTsKKyAgICAgICAgICAgIHQw
X3M2NHgyICAgID0gdnJzaGxxX3M2NCggdDBfczY0eDIsIG11bHQyUV9zNjR4MiApOworICAgICAg
ICAgICAgdDFfczY0eDIgICAgPSB2cnNobHFfczY0KCB0MV9zNjR4MiwgbXVsdDJRX3M2NHgyICk7
CisgICAgICAgICAgICB0Ml9zNjR4MiAgICA9IHZyc2hscV9zNjQoIHQyX3M2NHgyLCBtdWx0MlFf
czY0eDIgKTsKKyAgICAgICAgICAgIHQzX3M2NHgyICAgID0gdnJzaGxxX3M2NCggdDNfczY0eDIs
IG11bHQyUV9zNjR4MiApOworICAgICAgICAgICAgdDBfczMyeDQgICAgPSB2Y29tYmluZV9zMzIo
IHZtb3ZuX3M2NCggdDBfczY0eDIgKSwgdm1vdm5fczY0KCB0MV9zNjR4MiApICk7CisgICAgICAg
ICAgICB0MV9zMzJ4NCAgICA9IHZjb21iaW5lX3MzMiggdm1vdm5fczY0KCB0Ml9zNjR4MiApLCB2
bW92bl9zNjQoIHQzX3M2NHgyICkgKTsKKyAgICAgICAgICAgIHMwX3MzMng0ICAgID0gdmNvbWJp
bmVfczMyKCB2c2hybl9uX3M2NCggdDBfczY0eDIsIDMxICksIHZzaHJuX25fczY0KCB0MV9zNjR4
MiwgMzEgKSApOworICAgICAgICAgICAgczFfczMyeDQgICAgPSB2Y29tYmluZV9zMzIoIHZzaHJu
X25fczY0KCB0Ml9zNjR4MiwgMzEgKSwgdnNocm5fbl9zNjQoIHQzX3M2NHgyLCAzMSApICk7Cisg
ICAgICAgICAgICBtYXhfczMyeDQgICA9IHZtYXhxX3MzMiggbWF4X3MzMng0LCBzMF9zMzJ4NCAp
OworICAgICAgICAgICAgbWluX3MzMng0ICAgPSB2bWlucV9zMzIoIG1pbl9zMzJ4NCwgczBfczMy
eDQgKTsKKyAgICAgICAgICAgIG1heF9zMzJ4NCAgID0gdm1heHFfczMyKCBtYXhfczMyeDQsIHMx
X3MzMng0ICk7CisgICAgICAgICAgICBtaW5fczMyeDQgICA9IHZtaW5xX3MzMiggbWluX3MzMng0
LCBzMV9zMzJ4NCApOworICAgICAgICAgICAgdDFfczMyeDQgICAgPSB2cmV2NjRxX3MzMiggdDFf
czMyeDQgKTsKKyAgICAgICAgICAgIHQxX3MzMng0ICAgID0gdmNvbWJpbmVfczMyKCB2Z2V0X2hp
Z2hfczMyKCB0MV9zMzJ4NCApLCB2Z2V0X2xvd19zMzIoIHQxX3MzMng0ICkgKTsKKyAgICAgICAg
ICAgIHZzdDFxX3MzMiggQV9RQSArIG4sICAgICAgICAgdDBfczMyeDQgKTsKKyAgICAgICAgICAg
IHZzdDFxX3MzMiggQV9RQSArIGsgLSBuIC0gNCwgdDFfczMyeDQgKTsKKyAgICAgICAgfQorICAg
ICAgICBmb3IoIDsgbiA8IChrICsgMSkgPj4gMTsgbisrICkgeworICAgICAgICAgICAgb3B1c19p
bnQ2NCB0bXA2NDsKKyAgICAgICAgICAgIHRtcDEgPSBBX1FBWyBuIF07CisgICAgICAgICAgICB0
bXAyID0gQV9RQVsgayAtIG4gLSAxIF07CisgICAgICAgICAgICB0bXA2NCA9IHNpbGtfUlNISUZU
X1JPVU5ENjQoIHNpbGtfU01VTEwoIHNpbGtfU1VCX1NBVDMyKHRtcDEsCisgICAgICAgICAgICAg
ICAgICBNVUwzMl9GUkFDX1EoIHRtcDIsIHJjX1EzMSwgMzEgKSApLCByY19tdWx0MiApLCBtdWx0
MlEpOworICAgICAgICAgICAgaWYoIHRtcDY0ID4gc2lsa19pbnQzMl9NQVggfHwgdG1wNjQgPCBz
aWxrX2ludDMyX01JTiApIHsKKyAgICAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICAgICAg
fQorICAgICAgICAgICAgQV9RQVsgbiBdID0gKCBvcHVzX2ludDMyICl0bXA2NDsKKyAgICAgICAg
ICAgIHRtcDY0ID0gc2lsa19SU0hJRlRfUk9VTkQ2NCggc2lsa19TTVVMTCggc2lsa19TVUJfU0FU
MzIodG1wMiwKKyAgICAgICAgICAgICAgICAgIE1VTDMyX0ZSQUNfUSggdG1wMSwgcmNfUTMxLCAz
MSApICksIHJjX211bHQyKSwgbXVsdDJRKTsKKyAgICAgICAgICAgIGlmKCB0bXA2NCA+IHNpbGtf
aW50MzJfTUFYIHx8IHRtcDY0IDwgc2lsa19pbnQzMl9NSU4gKSB7CisgICAgICAgICAgICAgICBy
ZXR1cm4gMDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIEFfUUFbIGsgLSBuIC0gMSBdID0g
KCBvcHVzX2ludDMyICl0bXA2NDsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8qIENoZWNrIGZv
ciBzdGFiaWxpdHkgKi8KKyAgICBpZiggKCBBX1FBWyBrIF0gPiBBX0xJTUlUICkgfHwgKCBBX1FB
WyBrIF0gPCAtQV9MSU1JVCApICkgeworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBt
YXhfczMyeDIgPSB2bWF4X3MzMiggdmdldF9sb3dfczMyKCBtYXhfczMyeDQgKSwgdmdldF9oaWdo
X3MzMiggbWF4X3MzMng0ICkgKTsKKyAgICBtaW5fczMyeDIgPSB2bWluX3MzMiggdmdldF9sb3df
czMyKCBtaW5fczMyeDQgKSwgdmdldF9oaWdoX3MzMiggbWluX3MzMng0ICkgKTsKKyAgICBtYXhf
czMyeDIgPSB2bWF4X3MzMiggbWF4X3MzMngyLCB2cmVpbnRlcnByZXRfczMyX3M2NCggdnNocl9u
X3M2NCggdnJlaW50ZXJwcmV0X3M2NF9zMzIoIG1heF9zMzJ4MiApLCAzMiApICkgKTsKKyAgICBt
aW5fczMyeDIgPSB2bWluX3MzMiggbWluX3MzMngyLCB2cmVpbnRlcnByZXRfczMyX3M2NCggdnNo
cl9uX3M2NCggdnJlaW50ZXJwcmV0X3M2NF9zMzIoIG1pbl9zMzJ4MiApLCAzMiApICkgKTsKKyAg
ICBtYXggPSB2Z2V0X2xhbmVfczMyKCBtYXhfczMyeDIsIDAgKTsKKyAgICBtaW4gPSB2Z2V0X2xh
bmVfczMyKCBtaW5fczMyeDIsIDAgKTsKKyAgICBpZiggKCBtYXggPiAwICkgfHwgKCBtaW4gPCAt
MSApICkgeworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICAvKiBTZXQgUkMgZXF1YWwg
dG8gbmVnYXRlZCBBUiBjb2VmICovCisgICAgcmNfUTMxID0gLXNpbGtfTFNISUZUKCBBX1FBWyAw
IF0sIDMxIC0gUUEgKTsKKworICAgIC8qIFJhbmdlOiBbIDEgOiAyXjMwIF0gKi8KKyAgICByY19t
dWx0MV9RMzAgPSBzaWxrX1NVQjMyKCBTSUxLX0ZJWF9DT05TVCggMSwgMzAgKSwgc2lsa19TTU1V
TCggcmNfUTMxLCByY19RMzEgKSApOworCisgICAgLyogVXBkYXRlIGludmVyc2UgZ2FpbiAqLwor
ICAgIC8qIFJhbmdlOiBbIDAgOiAyXjMwIF0gKi8KKyAgICBpbnZHYWluX1EzMCA9IHNpbGtfTFNI
SUZUKCBzaWxrX1NNTVVMKCBpbnZHYWluX1EzMCwgcmNfbXVsdDFfUTMwICksIDIgKTsKKyAgICBz
aWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPj0gMCAgICAgICAgICAgKTsKKyAgICBzaWxrX2Fzc2Vy
dCggaW52R2Fpbl9RMzAgPD0gKCAxIDw8IDMwICkgKTsKKyAgICBpZiggaW52R2Fpbl9RMzAgPCBT
SUxLX0ZJWF9DT05TVCggMS4wZiAvIE1BWF9QUkVESUNUSU9OX1BPV0VSX0dBSU4sIDMwICkgKSB7
CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIHJldHVybiBpbnZHYWluX1EzMDsKK30K
KworLyogRm9yIGlucHV0IGluIFExMiBkb21haW4gKi8KK29wdXNfaW50MzIgc2lsa19MUENfaW52
ZXJzZV9wcmVkX2dhaW5fbmVvbiggICAgICAgICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRp
Y3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgICpBX1ExMiwgICAgICAgICAgICAgLyogSSAgIFByZWRpY3Rpb24g
Y29lZmZpY2llbnRzLCBRMTIgW29yZGVyXSAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgIC8qIEkgICBQ
cmVkaWN0aW9uIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKykKK3sKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIGNvbnN0IG9wdXNfaW50MzIg
aW52R2Fpbl9RMzBfYyA9IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2MoIEFfUTEyLCBvcmRl
ciApOworI2VuZGlmCisKKyAgICBvcHVzX2ludDMyIGludkdhaW5fUTMwOworICAgIGlmKCAoIFNJ
TEtfTUFYX09SREVSX0xQQyAhPSAyNCApIHx8ICggb3JkZXIgJiAxICkpIHsKKyAgICAgICAgaW52
R2Fpbl9RMzAgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9jKCBBX1ExMiwgb3JkZXIgKTsK
KyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIG9wdXNfaW50MzIgQXRtcF9RQVsgU0lMS19NQVhf
T1JERVJfTFBDIF07CisgICAgICAgIG9wdXNfaW50MzIgRENfcmVzcDsKKyAgICAgICAgaW50MTZ4
OF90ICB0MF9zMTZ4OCwgdDFfczE2eDgsIHQyX3MxNng4OworICAgICAgICBpbnQzMng0X3QgIHQw
X3MzMng0OworICAgICAgICBjb25zdCBvcHVzX2ludCBsZWZ0b3ZlciA9IG9yZGVyICYgNzsKKwor
ICAgICAgICAvKiBJbmNyZWFzZSBRIGRvbWFpbiBvZiB0aGUgQVIgY29lZmZpY2llbnRzICovCisg
ICAgICAgIHQwX3MxNng4ID0gdmxkMXFfczE2KCBBX1ExMiArICAwICk7CisgICAgICAgIHQxX3Mx
Nng4ID0gdmxkMXFfczE2KCBBX1ExMiArICA4ICk7CisgICAgICAgIHQyX3MxNng4ID0gdmxkMXFf
czE2KCBBX1ExMiArIDE2ICk7CisgICAgICAgIHQwX3MzMng0ID0gdnBhZGRscV9zMTYoIHQwX3Mx
Nng4ICk7CisKKyAgICAgICAgc3dpdGNoKCBvcmRlciAtIGxlZnRvdmVyICkKKyAgICAgICAgewor
ICAgICAgICBjYXNlIDI0OgorICAgICAgICAgICAgdDBfczMyeDQgPSB2cGFkYWxxX3MxNiggdDBf
czMyeDQsIHQyX3MxNng4ICk7CisgICAgICAgICAgICAvKiBJbnRlbmQgdG8gZmFsbCB0aHJvdWdo
ICovCisKKyAgICAgICAgY2FzZSAxNjoKKyAgICAgICAgICAgIHQwX3MzMng0ID0gdnBhZGFscV9z
MTYoIHQwX3MzMng0LCB0MV9zMTZ4OCApOworICAgICAgICAgICAgdnN0MXFfczMyKCBBdG1wX1FB
ICsgMTYsIHZzaGxsX25fczE2KCB2Z2V0X2xvd19zMTYgKCB0Ml9zMTZ4OCApLCBRQSAtIDEyICkg
KTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggQXRtcF9RQSArIDIwLCB2c2hsbF9uX3MxNiggdmdl
dF9oaWdoX3MxNiggdDJfczE2eDggKSwgUUEgLSAxMiApICk7CisgICAgICAgICAgICAvKiBJbnRl
bmQgdG8gZmFsbCB0aHJvdWdoICovCisKKyAgICAgICAgY2FzZSA4OgorICAgICAgICB7CisgICAg
ICAgICAgICBjb25zdCBpbnQzMngyX3QgdF9zMzJ4MiA9IHZwYWRkX3MzMiggdmdldF9sb3dfczMy
KCB0MF9zMzJ4NCApLCB2Z2V0X2hpZ2hfczMyKCB0MF9zMzJ4NCApICk7CisgICAgICAgICAgICBj
b25zdCBpbnQ2NHgxX3QgdF9zNjR4MSA9IHZwYWRkbF9zMzIoIHRfczMyeDIgKTsKKyAgICAgICAg
ICAgIERDX3Jlc3AgPSB2Z2V0X2xhbmVfczMyKCB2cmVpbnRlcnByZXRfczMyX3M2NCggdF9zNjR4
MSApLCAwICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIEF0bXBfUUEgKyAgOCwgdnNobGxfbl9z
MTYoIHZnZXRfbG93X3MxNiAoIHQxX3MxNng4ICksIFFBIC0gMTIgKSApOworICAgICAgICAgICAg
dnN0MXFfczMyKCBBdG1wX1FBICsgMTIsIHZzaGxsX25fczE2KCB2Z2V0X2hpZ2hfczE2KCB0MV9z
MTZ4OCApLCBRQSAtIDEyICkgKTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKworICAgICAg
ICBkZWZhdWx0OgorICAgICAgICAgICAgRENfcmVzcCA9IDA7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgfQorICAgICAgICBBX1ExMiArPSBvcmRlciAtIGxlZnRvdmVyOworCisgICAgICAg
IHN3aXRjaCggbGVmdG92ZXIgKQorICAgICAgICB7CisgICAgICAgIGNhc2UgNjoKKyAgICAgICAg
ICAgIERDX3Jlc3AgKz0gKG9wdXNfaW50MzIpQV9RMTJbIDUgXTsKKyAgICAgICAgICAgIERDX3Jl
c3AgKz0gKG9wdXNfaW50MzIpQV9RMTJbIDQgXTsKKyAgICAgICAgICAgIC8qIEludGVuZCB0byBm
YWxsIHRocm91Z2ggKi8KKworICAgICAgICBjYXNlIDQ6CisgICAgICAgICAgICBEQ19yZXNwICs9
IChvcHVzX2ludDMyKUFfUTEyWyAzIF07CisgICAgICAgICAgICBEQ19yZXNwICs9IChvcHVzX2lu
dDMyKUFfUTEyWyAyIF07CisgICAgICAgICAgICAvKiBJbnRlbmQgdG8gZmFsbCB0aHJvdWdoICov
CisKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgRENfcmVzcCArPSAob3B1c19pbnQzMilB
X1ExMlsgMSBdOworICAgICAgICAgICAgRENfcmVzcCArPSAob3B1c19pbnQzMilBX1ExMlsgMCBd
OworICAgICAgICAgICAgLyogSW50ZW5kIHRvIGZhbGwgdGhyb3VnaCAqLworCisgICAgICAgIGRl
ZmF1bHQ6CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorCisgICAgICAgIC8qIElmIHRo
ZSBEQyBpcyB1bnN0YWJsZSwgd2UgZG9uJ3QgZXZlbiBuZWVkIHRvIGRvIHRoZSBmdWxsIGNhbGN1
bGF0aW9ucyAqLworICAgICAgICBpZiggRENfcmVzcCA+PSA0MDk2ICkgeworICAgICAgICAgICAg
aW52R2Fpbl9RMzAgPSAwOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgdnN0MXFfczMy
KCBBdG1wX1FBICsgMCwgdnNobGxfbl9zMTYoIHZnZXRfbG93X3MxNiAoIHQwX3MxNng4ICksIFFB
IC0gMTIgKSApOworICAgICAgICAgICAgdnN0MXFfczMyKCBBdG1wX1FBICsgNCwgdnNobGxfbl9z
MTYoIHZnZXRfaGlnaF9zMTYoIHQwX3MxNng4ICksIFFBIC0gMTIgKSApOworICAgICAgICAgICAg
aW52R2Fpbl9RMzAgPSBMUENfaW52ZXJzZV9wcmVkX2dhaW5fUUFfbmVvbiggQXRtcF9RQSwgb3Jk
ZXIgKTsKKyAgICAgICAgfQorICAgIH0KKworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisgICAgc2ls
a19hc3NlcnQoIGludkdhaW5fUTMwX2MgPT0gaW52R2Fpbl9RMzAgKTsKKyNlbmRpZgorCisgICAg
cmV0dXJuIGludkdhaW5fUTMwOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfZGVsX2RlY19h
cm0uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9hcm0vTlNRX2RlbF9kZWNfYXJtLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWU3NmUxNjkyNzk5
YjQyZjNlYjQ0M2FiYjQ3YWQzNzIyYTUxZjJjNAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0v
TlNRX2RlbF9kZWNfYXJtLmgKQEAgLTAsMCArMSwxMDAgQEAKKy8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorQ29w
eXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworYXJlIG1l
dDoKKy0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKK25vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKK2RvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCist
IE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0
LCBub3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCitwZXJtaXNzaW9uLgorVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAi
QVMgSVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JT
IEJFCitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SCitDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCitJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCitQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaWZuZGVmIFNJTEtfTlNRX0RFTF9ERUNf
QVJNX0gKKyNkZWZpbmUgU0lMS19OU1FfREVMX0RFQ19BUk1fSAorCisjaW5jbHVkZSAiY2VsdC9h
cm0vYXJtY3B1LmgiCisKKyNpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikK
K3ZvaWQgc2lsa19OU1FfZGVsX2RlY19uZW9uKAorICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0
ZSAqcHNFbmNDLCBzaWxrX25zcV9zdGF0ZSAqTlNRLAorICAgIFNpZGVJbmZvSW5kaWNlcyAqcHNJ
bmRpY2VzLCBjb25zdCBvcHVzX2ludDE2IHgxNltdLCBvcHVzX2ludDggcHVsc2VzW10sCisgICAg
Y29uc3Qgb3B1c19pbnQxNiBQcmVkQ29lZl9RMTJbMiAqIE1BWF9MUENfT1JERVJdLAorICAgIGNv
bnN0IG9wdXNfaW50MTYgTFRQQ29lZl9RMTRbTFRQX09SREVSICogTUFYX05CX1NVQkZSXSwKKyAg
ICBjb25zdCBvcHVzX2ludDE2IEFSX1ExM1tNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09S
REVSXSwKKyAgICBjb25zdCBvcHVzX2ludCBIYXJtU2hhcGVHYWluX1ExNFtNQVhfTkJfU1VCRlJd
LAorICAgIGNvbnN0IG9wdXNfaW50IFRpbHRfUTE0W01BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qg
b3B1c19pbnQzMiBMRl9zaHBfUTE0W01BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19pbnQz
MiBHYWluc19RMTZbTUFYX05CX1NVQkZSXSwKKyAgICBjb25zdCBvcHVzX2ludCBwaXRjaExbTUFY
X05CX1NVQkZSXSwgY29uc3Qgb3B1c19pbnQgTGFtYmRhX1ExMCwKKyAgICBjb25zdCBvcHVzX2lu
dCBMVFBfc2NhbGVfUTE0KTsKKworI2lmICFkZWZpbmVkKE9QVVNfSEFWRV9SVENEKQorI2RlZmlu
ZSBPVkVSUklERV9zaWxrX05TUV9kZWxfZGVjICgxKQorI2RlZmluZSBzaWxrX05TUV9kZWxfZGVj
KHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsICBcCisg
ICAgICAgICAgICAgICAgICAgICAgICAgTFRQQ29lZl9RMTQsIEFSX1ExMywgSGFybVNoYXBlR2Fp
bl9RMTQsIFRpbHRfUTE0LCAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBMRl9zaHBfUTE0
LCBHYWluc19RMTYsIHBpdGNoTCwgTGFtYmRhX1ExMCwgICAgICAgICAgXAorICAgICAgICAgICAg
ICAgICAgICAgICAgIExUUF9zY2FsZV9RMTQsIGFyY2gpICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgKCh2b2lkKShhcmNoKSwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgUFJFU1VNRV9ORU9OKHNpbGtf
TlNRX2RlbF9kZWMpKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgICAgICAgcHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1Ex
MiwgTFRQQ29lZl9RMTQsICAgICBcCisgICAgICAgICBBUl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0
LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIFwKKyAgICAgICAgIExh
bWJkYV9RMTAsIExUUF9zY2FsZV9RMTQpKQorI2VuZGlmCisjZW5kaWYKKworI2lmICFkZWZpbmVk
KE9WRVJSSURFX3NpbGtfTlNRX2RlbF9kZWMpCisvKklzIHJ1bi10aW1lIENQVSBkZXRlY3Rpb24g
ZW5hYmxlZCBvbiB0aGlzIHBsYXRmb3JtPyovCisjaWYgZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkg
JiYgKGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSAmJiBcCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRS
KSkKK2V4dGVybiB2b2lkICgqY29uc3QgU0lMS19OU1FfREVMX0RFQ19JTVBMW09QVVNfQVJDSE1B
U0sgKyAxXSkoCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICpwc0VuY0MsIHNpbGtfbnNx
X3N0YXRlICpOU1EsCisgICAgU2lkZUluZm9JbmRpY2VzICpwc0luZGljZXMsIGNvbnN0IG9wdXNf
aW50MTYgeDE2W10sIG9wdXNfaW50OCBwdWxzZXNbXSwKKyAgICBjb25zdCBvcHVzX2ludDE2IFBy
ZWRDb2VmX1ExMlsyICogTUFYX0xQQ19PUkRFUl0sCisgICAgY29uc3Qgb3B1c19pbnQxNiBMVFBD
b2VmX1ExNFtMVFBfT1JERVIgKiBNQVhfTkJfU1VCRlJdLAorICAgIGNvbnN0IG9wdXNfaW50MTYg
QVJfUTEzW01BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVJdLAorICAgIGNvbnN0IG9w
dXNfaW50IEhhcm1TaGFwZUdhaW5fUTE0W01BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19p
bnQgVGlsdF9RMTRbTUFYX05CX1NVQkZSXSwKKyAgICBjb25zdCBvcHVzX2ludDMyIExGX3NocF9R
MTRbTUFYX05CX1NVQkZSXSwKKyAgICBjb25zdCBvcHVzX2ludDMyIEdhaW5zX1ExNltNQVhfTkJf
U1VCRlJdLAorICAgIGNvbnN0IG9wdXNfaW50IHBpdGNoTFtNQVhfTkJfU1VCRlJdLCBjb25zdCBv
cHVzX2ludCBMYW1iZGFfUTEwLAorICAgIGNvbnN0IG9wdXNfaW50IExUUF9zY2FsZV9RMTQpOwor
I2RlZmluZSBPVkVSUklERV9zaWxrX05TUV9kZWxfZGVjICgxKQorI2RlZmluZSBzaWxrX05TUV9k
ZWxfZGVjKHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIs
IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBMVFBDb2VmX1ExNCwgQVJfUTEzLCBIYXJtU2hh
cGVHYWluX1ExNCwgVGlsdF9RMTQsICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgTEZfc2hw
X1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIExhbWJkYV9RMTAsICAgICAgICAgXAorICAgICAgICAg
ICAgICAgICAgICAgICAgIExUUF9zY2FsZV9RMTQsIGFyY2gpICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAoKCpTSUxLX05TUV9ERUxfREVDX0lNUExbKGFyY2gpJk9QVVNfQVJD
SE1BU0tdKSggICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIHBzRW5jQywgTlNRLCBw
c0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0LCAgICAgXAor
ICAgICAgICBBUl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwg
R2FpbnNfUTE2LCBwaXRjaEwsIFwKKyAgICAgICAgTGFtYmRhX1ExMCwgTFRQX3NjYWxlX1ExNCkp
CisjZWxpZiBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKQorI2RlZmluZSBPVkVS
UklERV9zaWxrX05TUV9kZWxfZGVjICgxKQorI2RlZmluZSBzaWxrX05TUV9kZWxfZGVjKHBzRW5j
QywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsICAgXAorICAgICAg
ICAgICAgICAgICAgICAgICAgIExUUENvZWZfUTE0LCBBUl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0
LCBUaWx0X1ExNCwgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgIExGX3NocF9RMTQsIEdh
aW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCAgICAgICAgICAgXAorICAgICAgICAgICAgICAg
ICAgICAgICAgIExUUF9zY2FsZV9RMTQsIGFyY2gpICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICAgICgodm9pZCkoYXJjaCksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICBzaWxrX05TUV9kZWxfZGVjX25l
b24ocHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgXAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgTFRQQ29lZl9RMTQsIEFSX1ExMywgSGFybVNoYXBl
R2Fpbl9RMTQsIFRpbHRfUTE0LCAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgTEZfc2hw
X1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIExhbWJkYV9RMTAsICAgICAgICAgXAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgTFRQX3NjYWxlX1ExNCkpCisjZW5kaWYKKyNlbmRpZgorCisjZW5k
aWYgLyogZW5kIFNJTEtfTlNRX0RFTF9ERUNfQVJNX0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0v
TlNRX2RlbF9kZWNfbmVvbl9pbnRyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL05TUV9kZWxfZGVjX25lb25faW50ci5j
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjIxMjQxMGYzNjI5MjYzMWQyMmRlNWVhYzI3MmRhMDY4Y2ZiOGMxNTkKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL05TUV9kZWxfZGVjX25lb25faW50ci5jCkBAIC0wLDAg
KzEsMTEyNCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqCitDb3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIElu
Yy4KK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCit0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLSBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKy0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRl
cm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKK25hbWVzIG9mIHNwZWNp
ZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCitwcm9k
dWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdy
aXR0ZW4KK3Blcm1pc3Npb24uCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKK0FORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
K0lNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KiovCisKKyNpZmRlZiBIQVZFX0NPTkZJR19ICisjaW5jbHVkZSAiY29uZmlnLmgiCisjZW5kaWYK
KworI2luY2x1ZGUgPGFybV9uZW9uLmg+CisjaWZkZWYgT1BVU19DSEVDS19BU00KKyMgaW5jbHVk
ZSA8c3RyaW5nLmg+CisjZW5kaWYKKyNpbmNsdWRlICJtYWluLmgiCisjaW5jbHVkZSAic3RhY2tf
YWxsb2MuaCIKKworLyogTkVPTiBpbnRyaW5zaWNzIG9wdGltaXphdGlvbiBub3cgY2FuIG9ubHkg
cGFyYWxsZWxpemUgdXAgdG8gNCBkZWxheSBkZWNpc2lvbiBzdGF0ZXMuICAgICovCisvKiBJZiB0
aGVyZSBhcmUgbW9yZSBzdGF0ZXMsIEMgZnVuY3Rpb24gaXMgY2FsbGVkLCBhbmQgdGhpcyBvcHRp
bWl6YXRpb24gbXVzdCBiZSBleHBhbmRlZC4gKi8KKyNkZWZpbmUgTkVPTl9NQVhfREVMX0RFQ19T
VEFURVMgNAorCit0eXBlZGVmIHN0cnVjdCB7CisgICAgb3B1c19pbnQzMiBzTFBDX1ExNFsgTUFY
X1NVQl9GUkFNRV9MRU5HVEggKyBOU1FfTFBDX0JVRl9MRU5HVEggXVsgTkVPTl9NQVhfREVMX0RF
Q19TVEFURVMgXTsKKyAgICBvcHVzX2ludDMyIFJhbmRTdGF0ZVsgREVDSVNJT05fREVMQVkgXVsg
ICAgIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBRX1ExMFsgICAg
IERFQ0lTSU9OX0RFTEFZIF1bICAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9w
dXNfaW50MzIgWHFfUTE0WyAgICBERUNJU0lPTl9ERUxBWSBdWyAgICAgTkVPTl9NQVhfREVMX0RF
Q19TVEFURVMgXTsKKyAgICBvcHVzX2ludDMyIFByZWRfUTE1WyAgREVDSVNJT05fREVMQVkgXVsg
ICAgIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBTaGFwZV9RMTRb
IERFQ0lTSU9OX0RFTEFZIF1bICAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9w
dXNfaW50MzIgc0FSMl9RMTRbIE1BWF9TSEFQRV9MUENfT1JERVIgXVsgTkVPTl9NQVhfREVMX0RF
Q19TVEFURVMgXTsKKyAgICBvcHVzX2ludDMyIExGX0FSX1ExNFsgTkVPTl9NQVhfREVMX0RFQ19T
VEFURVMgXTsKKyAgICBvcHVzX2ludDMyIERpZmZfUTE0WyAgTkVPTl9NQVhfREVMX0RFQ19TVEFU
RVMgXTsKKyAgICBvcHVzX2ludDMyIFNlZWRbICAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMg
XTsKKyAgICBvcHVzX2ludDMyIFNlZWRJbml0WyAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsK
KyAgICBvcHVzX2ludDMyIFJEX1ExMFsgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKK30g
TlNRX2RlbF9kZWNzX3N0cnVjdDsKKwordHlwZWRlZiBzdHJ1Y3QgeworICAgIG9wdXNfaW50MzIg
UV9RMTBbICAgICAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIg
UkRfUTEwWyAgICAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIg
eHFfUTE0WyAgICAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIg
TEZfQVJfUTE0WyAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIg
RGlmZl9RMTRbICAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIg
c0xUUF9zaHBfUTE0WyBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIg
TFBDX2V4Y19RMTRbICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworfSBOU1Ffc2FtcGxlc19z
dHJ1Y3Q7CisKK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVf
c3RhdGVzX25lb24oCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICpwc0VuY0MsICAgICAg
ICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgIHNpbGtfbnNxX3N0YXRlICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgICAgIC8qIEkv
TyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOU1FfZGVsX2Rl
Y3Nfc3RydWN0IHBzRGVsRGVjW10sICAgICAgICAgICAgICAgICAvKiBJL08gIERlbGF5ZWQgZGVj
aXNpb24gc3RhdGVzICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICB4MTZb
XSwgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgeF9zY19RMTBbXSwgICAgICAg
ICAgICAgICAgIC8qIE8gICAgSW5wdXQgc2NhbGVkIHdpdGggMS9HYWluIGluIFExMCAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludDE2ICAgIHNMVFBbXSwgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIFJlLXdoaXRlbmVkIExUUCBzdGF0ZSBpbiBRMCAgICAgICAgICovCisgICAgb3B1c19pbnQz
MiAgICAgICAgICBzTFRQX1ExNVtdLCAgICAgICAgICAgICAgICAgLyogTyAgICBMVFAgc3RhdGUg
bWF0Y2hpbmcgc2NhbGVkIGlucHV0ICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgc3Vi
ZnIsICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3ViZnJhbWUgbnVtYmVyICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgIExUUF9zY2FsZV9RMTQsICAg
ICAgICAgICAgICAvKiBJICAgIExUUCBzdGF0ZSBzY2FsaW5nICAgICAgICAgICAgICAgICAgICov
CisgICAgY29uc3Qgb3B1c19pbnQzMiAgICBHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdLCAgLyog
SSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgcGl0Y2hMWyBNQVhfTkJfU1VCRlIgXSwgICAgIC8qIEkgICAgUGl0Y2ggbGFn
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgIHNp
Z25hbF90eXBlLCAgICAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBlICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICBkZWNpc2lvbkRlbGF5ICAg
ICAgICAgICAgICAgLyogSSAgICBEZWNpc2lvbiBkZWxheSAgICAgICAgICAgICAgICAgICAgICAq
LworKTsKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8q
IE5vaXNlIHNoYXBlIHF1YW50aXplciBmb3Igb25lIHN1YmZyYW1lICovCisvKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlY19uZW9uKAorICAgIHNpbGtfbnNxX3N0
YXRlICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIE5TUV9kZWxfZGVjc19zdHJ1Y3QgcHNEZWxEZWNb
XSwgICAgICAgICAgICAgLyogSS9PICBEZWxheWVkIGRlY2lzaW9uIHN0YXRlcyAgICAgICAgICAg
ICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgc2lnbmFsVHlwZSwgICAgICAgICAgICAgLyog
SSAgICBTaWduYWwgdHlwZSAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgeF9RMTBbXSwgICAgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50OCAgICAgICAgICAgcHVsc2Vz
W10sICAgICAgICAgICAgICAgLyogTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIG9wdXNfaW50MTYgICAgICAgICAgeHFbXSwgICAgICAgICAgICAgICAgICAg
LyogTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNf
aW50MzIgICAgICAgICAgc0xUUF9RMTVbXSwgICAgICAgICAgICAgLyogSS9PICBMVFAgZmlsdGVy
IHN0YXRlICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgZGVs
YXllZEdhaW5fUTEwW10sICAgICAgLyogSS9PICBHYWluIGRlbGF5IGJ1ZmZlciAgICAgICAgICAg
ICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgYV9RMTJbXSwgICAgICAgICAgICAg
ICAgLyogSSAgICBTaG9ydCB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50MTYgICAgYl9RMTRbXSwgICAgICAgICAgICAgICAgLyogSSAgICBMb25nIHRl
cm0gcHJlZGljdGlvbiBjb2VmcyAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAg
QVJfc2hwX1ExM1tdLCAgICAgICAgICAgLyogSSAgICBOb2lzZSBzaGFwaW5nIGNvZWZzICAgICAg
ICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgbGFnLCAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBQaXRjaCBsYWcgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IG9wdXNfaW50MzIgICAgICAgICAgSGFybVNoYXBlRklSUGFja2VkX1ExNCwgLyogSSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAg
ICAgVGlsdF9RMTQsICAgICAgICAgICAgICAgLyogSSAgICBTcGVjdHJhbCB0aWx0ICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgTEZfc2hwX1ExNCwgICAg
ICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgIG9wdXNfaW50MzIgICAgICAgICAgR2Fpbl9RMTYsICAgICAgICAgICAgICAgLyogSSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAg
ICAgICAgTGFtYmRhX1ExMCwgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgb2Zmc2V0X1ExMCwg
ICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50ICAgICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAgLyogSSAg
ICBJbnB1dCBsZW5ndGggICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAg
ICAgICAgICAgc3ViZnIsICAgICAgICAgICAgICAgICAgLyogSSAgICBTdWJmcmFtZSBudW1iZXIg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgc2hhcGluZ0xQ
Q09yZGVyLCAgICAgICAgLyogSSAgICBTaGFwaW5nIExQQyBmaWx0ZXIgb3JkZXIgICAgICAgICAg
ICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgcHJlZGljdExQQ09yZGVyLCAgICAgICAgLyog
SSAgICBQcmVkaWN0aW9uIGZpbHRlciBvcmRlciAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50
ICAgICAgICAgICAgd2FycGluZ19RMTYsICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgblN0YXRl
c0RlbGF5ZWREZWNpc2lvbiwgLyogSSAgICBOdW1iZXIgb2Ygc3RhdGVzIGluIGRlY2lzaW9uIHRy
ZWUgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAg
LyogSS9PICBJbmRleCB0byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZmZXJzICAqLworICAgIG9wdXNf
aW50ICAgICAgICAgICAgZGVjaXNpb25EZWxheSAgICAgICAgICAgLyogSSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworKTsKKworc3RhdGljIE9QVVNfSU5MSU5FIHZv
aWQgY29weV93aW5uZXJfc3RhdGVfa2VybmVsKAorICAgIGNvbnN0IE5TUV9kZWxfZGVjc19zdHJ1
Y3QgKnBzRGVsRGVjLAorICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgb2Zmc2V0LAorICAg
IGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgbGFzdF9zbXBsZV9pZHgsCisgICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICBXaW5uZXJfaW5kLAorICAgIGNvbnN0IGludDMyeDJfdCAgICAgICAg
ICAgZ2Fpbl9sb19zMzJ4MiwKKyAgICBjb25zdCBpbnQzMngyX3QgICAgICAgICAgIGdhaW5faGlf
czMyeDIsCisgICAgY29uc3QgaW50MzJ4NF90ICAgICAgICAgICBzaGlmdF9zMzJ4NCwKKyAgICBp
bnQzMng0X3QgICAgICAgICAgICAgICAgIHQwX3MzMng0LAorICAgIGludDMyeDRfdCAgICAgICAg
ICAgICAgICAgdDFfczMyeDQsCisgICAgb3B1c19pbnQ4ICpjb25zdCAgICAgICAgICBwdWxzZXMs
CisgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAqcHhxLAorICAgIHNpbGtfbnNxX3N0YXRl
ICAgICAgICAgICAgKk5TUQorKQoreworICAgIGludDE2eDhfdCB0X3MxNng4OworICAgIGludDMy
eDRfdCBvMF9zMzJ4NCwgbzFfczMyeDQ7CisKKyAgICB0MF9zMzJ4NCA9IHZsZDFxX2xhbmVfczMy
KCAmcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCAtIDAgXVsgV2lubmVyX2luZCBdLCB0
MF9zMzJ4NCwgMCApOworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+
UV9RMTBbIGxhc3Rfc21wbGVfaWR4IC0gMSBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAxICk7
CisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5RX1ExMFsgbGFzdF9z
bXBsZV9pZHggLSAyIF1bIFdpbm5lcl9pbmQgXSwgdDBfczMyeDQsIDIgKTsKKyAgICB0MF9zMzJ4
NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCAtIDMg
XVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMyApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFu
ZV9zMzIoICZwc0RlbERlYy0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4IC0gNCBdWyBXaW5uZXJfaW5k
IF0sIHQxX3MzMng0LCAwICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVs
RGVjLT5RX1ExMFsgbGFzdF9zbXBsZV9pZHggLSA1IF1bIFdpbm5lcl9pbmQgXSwgdDFfczMyeDQs
IDEgKTsKKyAgICB0MV9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPlFfUTEwWyBs
YXN0X3NtcGxlX2lkeCAtIDYgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMiApOworICAgIHQx
X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4
IC0gNyBdWyBXaW5uZXJfaW5kIF0sIHQxX3MzMng0LCAzICk7CisgICAgdF9zMTZ4OCA9IHZjb21i
aW5lX3MxNiggdnJzaHJuX25fczMyKCB0MF9zMzJ4NCwgMTAgKSwgdnJzaHJuX25fczMyKCB0MV9z
MzJ4NCwgMTAgKSApOworICAgIHZzdDFfczgoICZwdWxzZXNbIG9mZnNldCBdLCB2bW92bl9zMTYo
IHRfczE2eDggKSApOworCisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVj
LT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gMCBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAw
ICk7CisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5YcV9RMTRbIGxh
c3Rfc21wbGVfaWR4IC0gMSBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAxICk7CisgICAgdDBf
czMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4
IC0gMiBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAyICk7CisgICAgdDBfczMyeDQgPSB2bGQx
cV9sYW5lX3MzMiggJnBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gMyBdWyBXaW5u
ZXJfaW5kIF0sIHQwX3MzMng0LCAzICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMigg
JnBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gNCBdWyBXaW5uZXJfaW5kIF0sIHQx
X3MzMng0LCAwICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5Y
cV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gNSBdWyBXaW5uZXJfaW5kIF0sIHQxX3MzMng0LCAxICk7
CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rf
c21wbGVfaWR4IC0gNiBdWyBXaW5uZXJfaW5kIF0sIHQxX3MzMng0LCAyICk7CisgICAgdDFfczMy
eDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0g
NyBdWyBXaW5uZXJfaW5kIF0sIHQxX3MzMng0LCAzICk7CisgICAgbzBfczMyeDQgPSB2cWRtdWxo
cV9sYW5lX3MzMiggdDBfczMyeDQsIGdhaW5fbG9fczMyeDIsIDAgKTsKKyAgICBvMV9zMzJ4NCA9
IHZxZG11bGhxX2xhbmVfczMyKCB0MV9zMzJ4NCwgZ2Fpbl9sb19zMzJ4MiwgMCApOworICAgIG8w
X3MzMng0ID0gdm1sYXFfbGFuZV9zMzIoIG8wX3MzMng0LCB0MF9zMzJ4NCwgZ2Fpbl9oaV9zMzJ4
MiwgMCApOworICAgIG8xX3MzMng0ID0gdm1sYXFfbGFuZV9zMzIoIG8xX3MzMng0LCB0MV9zMzJ4
NCwgZ2Fpbl9oaV9zMzJ4MiwgMCApOworICAgIG8wX3MzMng0ID0gdnJzaGxxX3MzMiggbzBfczMy
eDQsIHNoaWZ0X3MzMng0ICk7CisgICAgbzFfczMyeDQgPSB2cnNobHFfczMyKCBvMV9zMzJ4NCwg
c2hpZnRfczMyeDQgKTsKKyAgICB2c3QxX3MxNiggJnB4cVsgb2Zmc2V0ICsgMCBdLCB2cW1vdm5f
czMyKCBvMF9zMzJ4NCApICk7CisgICAgdnN0MV9zMTYoICZweHFbIG9mZnNldCArIDQgXSwgdnFt
b3ZuX3MzMiggbzFfczMyeDQgKSApOworCisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMigg
JnBzRGVsRGVjLT5TaGFwZV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gMCBdWyBXaW5uZXJfaW5kIF0s
IHQwX3MzMng0LCAwICk7CisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVj
LT5TaGFwZV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gMSBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0
LCAxICk7CisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5TaGFwZV9R
MTRbIGxhc3Rfc21wbGVfaWR4IC0gMiBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAyICk7Cisg
ICAgdDBfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5TaGFwZV9RMTRbIGxhc3Rf
c21wbGVfaWR4IC0gMyBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAzICk7CisgICAgdDFfczMy
eDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5TaGFwZV9RMTRbIGxhc3Rfc21wbGVfaWR4
IC0gNCBdWyBXaW5uZXJfaW5kIF0sIHQxX3MzMng0LCAwICk7CisgICAgdDFfczMyeDQgPSB2bGQx
cV9sYW5lX3MzMiggJnBzRGVsRGVjLT5TaGFwZV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gNSBdWyBX
aW5uZXJfaW5kIF0sIHQxX3MzMng0LCAxICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3Mz
MiggJnBzRGVsRGVjLT5TaGFwZV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gNiBdWyBXaW5uZXJfaW5k
IF0sIHQxX3MzMng0LCAyICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVs
RGVjLT5TaGFwZV9RMTRbIGxhc3Rfc21wbGVfaWR4IC0gNyBdWyBXaW5uZXJfaW5kIF0sIHQxX3Mz
Mng0LCAzICk7CisgICAgdnN0MXFfczMyKCAmTlNRLT5zTFRQX3NocF9RMTRbIE5TUS0+c0xUUF9z
aHBfYnVmX2lkeCArIG9mZnNldCArIDAgXSwgdDBfczMyeDQgKTsKKyAgICB2c3QxcV9zMzIoICZO
U1EtPnNMVFBfc2hwX1ExNFsgTlNRLT5zTFRQX3NocF9idWZfaWR4ICsgb2Zmc2V0ICsgNCBdLCB0
MV9zMzJ4NCApOworfQorCitzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBjb3B5X3dpbm5lcl9zdGF0
ZSgKKyAgICBjb25zdCBOU1FfZGVsX2RlY3Nfc3RydWN0ICpwc0RlbERlYywKKyAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgIGRlY2lzaW9uRGVsYXksCisgICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICBzbXBsX2J1Zl9pZHgsCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICBXaW5u
ZXJfaW5kLAorICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgZ2FpbiwKKyAgICBjb25zdCBv
cHVzX2ludDMyICAgICAgICAgIHNoaWZ0LAorICAgIG9wdXNfaW50OCAqY29uc3QgICAgICAgICAg
cHVsc2VzLAorICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKnB4cSwKKyAgICBzaWxrX25z
cV9zdGF0ZSAgICAgICAgICAgICpOU1EKKykKK3sKKyAgICBvcHVzX2ludCAgICAgICAgaSwgbGFz
dF9zbXBsZV9pZHg7CisgICAgY29uc3QgaW50MzJ4Ml90IGdhaW5fbG9fczMyeDIgPSB2ZHVwX25f
czMyKCBzaWxrX0xTSElGVDMyKCBnYWluICYgMHgwMDAwRkZGRiwgMTUgKSApOworICAgIGNvbnN0
IGludDMyeDJfdCBnYWluX2hpX3MzMngyID0gdmR1cF9uX3MzMiggZ2FpbiA+PiAxNiApOworICAg
IGNvbnN0IGludDMyeDRfdCBzaGlmdF9zMzJ4NCA9IHZkdXBxX25fczMyKCAtc2hpZnQgKTsKKyAg
ICBpbnQzMng0X3QgICAgICAgdDBfczMyeDQsIHQxX3MzMng0OworCisgICAgdDBfczMyeDQgPSB0
MV9zMzJ4NCA9IHZkdXBxX25fczMyKCAwICk7IC8qIGluaXRpYWxpemF0aW9uICovCisgICAgbGFz
dF9zbXBsZV9pZHggPSBzbXBsX2J1Zl9pZHggKyBkZWNpc2lvbkRlbGF5IC0gMSArIERFQ0lTSU9O
X0RFTEFZOworICAgIGlmKCBsYXN0X3NtcGxlX2lkeCA+PSBERUNJU0lPTl9ERUxBWSApIGxhc3Rf
c21wbGVfaWR4IC09IERFQ0lTSU9OX0RFTEFZOworICAgIGlmKCBsYXN0X3NtcGxlX2lkeCA+PSBE
RUNJU0lPTl9ERUxBWSApIGxhc3Rfc21wbGVfaWR4IC09IERFQ0lTSU9OX0RFTEFZOworCisgICAg
Zm9yKCBpID0gMDsgKCBpIDwgKCBkZWNpc2lvbkRlbGF5IC0gNyApICkgJiYgKCBsYXN0X3NtcGxl
X2lkeCA+PSA3ICk7IGkgKz0gOCwgbGFzdF9zbXBsZV9pZHggLT0gOCApIHsKKyAgICAgICAgY29w
eV93aW5uZXJfc3RhdGVfa2VybmVsKCBwc0RlbERlYywgaSAtIGRlY2lzaW9uRGVsYXksIGxhc3Rf
c21wbGVfaWR4LCBXaW5uZXJfaW5kLCBnYWluX2xvX3MzMngyLCBnYWluX2hpX3MzMngyLCBzaGlm
dF9zMzJ4NCwgdDBfczMyeDQsIHQxX3MzMng0LCBwdWxzZXMsIHB4cSwgTlNRICk7CisgICAgfQor
ICAgIGZvciggOyAoIGkgPCBkZWNpc2lvbkRlbGF5ICkgJiYgKCBsYXN0X3NtcGxlX2lkeCA+PSAw
ICk7IGkrKywgbGFzdF9zbXBsZV9pZHgtLSApIHsKKyAgICAgICAgcHVsc2VzWyBpIC0gZGVjaXNp
b25EZWxheSBdID0gKG9wdXNfaW50OClzaWxrX1JTSElGVF9ST1VORCggcHNEZWxEZWMtPlFfUTEw
WyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5kIF0sIDEwICk7CisgICAgICAgIHB4cVsgaSAt
IGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JP
VU5EKCBzaWxrX1NNVUxXVyggcHNEZWxEZWMtPlhxX1ExNFsgbGFzdF9zbXBsZV9pZHggXVsgV2lu
bmVyX2luZCBdLCBnYWluICksIHNoaWZ0ICkgKTsKKyAgICAgICAgTlNRLT5zTFRQX3NocF9RMTRb
IE5TUS0+c0xUUF9zaHBfYnVmX2lkeCAtIGRlY2lzaW9uRGVsYXkgKyBpIF0gPSBwc0RlbERlYy0+
U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5kIF07CisgICAgfQorCisgICAg
bGFzdF9zbXBsZV9pZHggKz0gREVDSVNJT05fREVMQVk7CisgICAgZm9yKCA7IGkgPCAoIGRlY2lz
aW9uRGVsYXkgLSA3ICk7IGkrKywgbGFzdF9zbXBsZV9pZHgtLSApIHsKKyAgICAgICAgY29weV93
aW5uZXJfc3RhdGVfa2VybmVsKCBwc0RlbERlYywgaSAtIGRlY2lzaW9uRGVsYXksIGxhc3Rfc21w
bGVfaWR4LCBXaW5uZXJfaW5kLCBnYWluX2xvX3MzMngyLCBnYWluX2hpX3MzMngyLCBzaGlmdF9z
MzJ4NCwgdDBfczMyeDQsIHQxX3MzMng0LCBwdWxzZXMsIHB4cSwgTlNRICk7CisgICAgfQorICAg
IGZvciggOyBpIDwgZGVjaXNpb25EZWxheTsgaSsrLCBsYXN0X3NtcGxlX2lkeC0tICkgeworICAg
ICAgICBwdWxzZXNbIGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQ4KXNpbGtfUlNISUZU
X1JPVU5EKCBwc0RlbERlYy0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4IF1bIFdpbm5lcl9pbmQgXSwg
MTAgKTsKKyAgICAgICAgcHhxWyBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50MTYpc2ls
a19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIHNpbGtfU01VTFdXKCBwc0RlbERlYy0+WHFfUTE0
WyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5kIF0sIGdhaW4gKSwgc2hpZnQgKSApOworICAg
ICAgICBOU1EtPnNMVFBfc2hwX1ExNFsgTlNRLT5zTFRQX3NocF9idWZfaWR4IC0gZGVjaXNpb25E
ZWxheSArIGkgXSA9IHBzRGVsRGVjLT5TaGFwZV9RMTRbIGxhc3Rfc21wbGVfaWR4IF1bIFdpbm5l
cl9pbmQgXTsKKyAgICB9Cit9CisKK3ZvaWQgc2lsa19OU1FfZGVsX2RlY19uZW9uKAorICAgIGNv
bnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwor
ICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAg
ICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICB4MTZbXSwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICBwdWxzZXNb
XSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRpemVkIHB1
bHNlIHNpZ25hbCAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBQ
cmVkQ29lZl9RMTJbIDIgKiBNQVhfTFBDX09SREVSIF0sICAgICAgICAgIC8qIEkgICAgU2hvcnQg
dGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICBMVFBDb2VmX1ExNFsgTFRQX09SREVSICogTUFYX05CX1NVQkZSIF0sICAgIC8qIEkgICAg
TG9uZyB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYg
ICAgICAgICAgICBBUl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwg
LyogSSBOb2lzZSBzaGFwaW5nIGNvZWZzICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAg
ICAgIC8qIEkgICAgTG9uZyB0ZXJtIHNoYXBpbmcgY29lZnMgICAgICAgICAqLworICAgIGNvbnN0
IG9wdXNfaW50ICAgICAgICAgICAgICBUaWx0X1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgU3BlY3RyYWwgdGlsdCAgICAgICAgICAgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBMRl9zaHBfUTE0WyBNQVhfTkJfU1VCRlIgXSwg
ICAgICAgICAgICAgICAgIC8qIEkgICAgTG93IGZyZXF1ZW5jeSBzaGFwaW5nIGNvZWZzICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBHYWluc19RMTZbIE1BWF9OQl9TVUJG
UiBdLCAgICAgICAgICAgICAgICAgIC8qIEkgICAgUXVhbnRpemF0aW9uIHN0ZXAgc2l6ZXMgICAg
ICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBwaXRjaExbIE1BWF9OQl9T
VUJGUiBdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUGl0Y2ggbGFncyAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBMYW1iZGFfUTEw
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUmF0ZS9kaXN0b3J0aW9u
IHRyYWRlb2ZmICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBMVFBf
c2NhbGVfUTE0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFRQIHN0YXRl
IHNjYWxpbmcgICAgICAgICAgICAgICAqLworKQoreworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisg
ICAgc2lsa19uc3Ffc3RhdGUgTlNRX2M7CisgICAgU2lkZUluZm9JbmRpY2VzIHBzSW5kaWNlc19j
OworICAgIG9wdXNfaW50OCBwdWxzZXNfY1sgTUFYX0ZSQU1FX0xFTkdUSCBdOworICAgIGNvbnN0
IG9wdXNfaW50OCAqY29uc3QgcHVsc2VzX2EgPSBwdWxzZXM7CisKKyAgICAoIHZvaWQgKXB1bHNl
c19hOworICAgIHNpbGtfbWVtY3B5KCAmTlNRX2MsIE5TUSwgc2l6ZW9mKCBOU1FfYyApICk7Cisg
ICAgc2lsa19tZW1jcHkoICZwc0luZGljZXNfYywgcHNJbmRpY2VzLCBzaXplb2YoIHBzSW5kaWNl
c19jICkgKTsKKyAgICBzaWxrX21lbWNweSggcHVsc2VzX2MsIHB1bHNlcywgc2l6ZW9mKCBwdWxz
ZXNfYyApICk7CisgICAgc2lsa19OU1FfZGVsX2RlY19jKCBwc0VuY0MsICZOU1FfYywgJnBzSW5k
aWNlc19jLCB4MTYsIHB1bHNlc19jLCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0LCBBUl9RMTMs
IEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LAorICAg
ICAgICAgICAgICAgICAgICAgICBwaXRjaEwsIExhbWJkYV9RMTAsIExUUF9zY2FsZV9RMTQgKTsK
KyNlbmRpZgorCisgICAgLyogVGhlIG9wdGltaXphdGlvbiBwYXJhbGxlbGl6ZXMgdGhlIGRpZmZl
cmVudCBkZWxheSBkZWNpc2lvbiBzdGF0ZXMuICovCisgICAgaWYoKCBwc0VuY0MtPm5TdGF0ZXNE
ZWxheWVkRGVjaXNpb24gPiBORU9OX01BWF9ERUxfREVDX1NUQVRFUyApIHx8ICggcHNFbmNDLT5u
U3RhdGVzRGVsYXllZERlY2lzaW9uIDw9IDIgKSkgeworICAgICAgICAvKiBORU9OIGludHJpbnNp
Y3Mgb3B0aW1pemF0aW9uIG5vdyBjYW4gb25seSBwYXJhbGxlbGl6ZSB1cCB0byA0IGRlbGF5IGRl
Y2lzaW9uIHN0YXRlcy4gICAgKi8KKyAgICAgICAgLyogSWYgdGhlcmUgYXJlIG1vcmUgc3RhdGVz
LCBDIGZ1bmN0aW9uIGlzIGNhbGxlZCwgYW5kIHRoaXMgb3B0aW1pemF0aW9uIG11c3QgYmUgZXhw
YW5kZWQuICovCisgICAgICAgIC8qIFdoZW4gdGhlIG51bWJlciBvZiBkZWxheSBkZWNpc2lvbiBz
dGF0ZXMgaXMgbGVzcyB0aGFuIDMsIHRoZXJlIGFyZSBwZW5hbHRpZXMgdXNpbmcgdGhpcyAqLwor
ICAgICAgICAvKiBvcHRpbWl6YXRpb24sIGFuZCBDIGZ1bmN0aW9uIGlzIGNhbGxlZC4gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgLyog
V2hlbiB0aGUgbnVtYmVyIG9mIGRlbGF5IGRlY2lzaW9uIHN0YXRlcyBpcyAyLCBpdCdzIGJldHRl
ciB0byBzcGVjaWFsaXplIGFub3RoZXIgICAgICAgICovCisgICAgICAgIC8qIHN0cnVjdHVyZSBO
U1FfZGVsX2RlYzJfc3RydWN0IGFuZCBvcHRpbWl6ZSB3aXRoIHNob3J0ZXIgTkVPTiByZWdpc3Rl
cnMuIChMb3cgcHJpb3JpdHkpICAqLworICAgICAgICBzaWxrX05TUV9kZWxfZGVjX2MoIHBzRW5j
QywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExUUENvZWZfUTE0
LCBBUl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0LAorICAgICAgICAgICAgVGlsdF9RMTQsIExGX3No
cF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0ICk7Cisg
ICAgfSBlbHNlIHsKKyAgICAgICAgb3B1c19pbnQgICAgICAgICAgICBpLCBrLCBsYWcsIHN0YXJ0
X2lkeCwgTFNGX2ludGVycG9sYXRpb25fZmxhZywgV2lubmVyX2luZCwgc3ViZnI7CisgICAgICAg
IG9wdXNfaW50ICAgICAgICAgICAgc21wbF9idWZfaWR4LCBkZWNpc2lvbkRlbGF5OworICAgICAg
ICBjb25zdCBvcHVzX2ludDE2ICAgICpBX1ExMiwgKkJfUTE0LCAqQVJfc2hwX1ExMzsKKyAgICAg
ICAgb3B1c19pbnQxNiAgICAgICAgICAqcHhxOworICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMy
LCBzTFRQX1ExNSApOworICAgICAgICBWQVJERUNMKCBvcHVzX2ludDE2LCBzTFRQICk7CisgICAg
ICAgIG9wdXNfaW50MzIgICAgICAgICAgSGFybVNoYXBlRklSUGFja2VkX1ExNDsKKyAgICAgICAg
b3B1c19pbnQgICAgICAgICAgICBvZmZzZXRfUTEwOworICAgICAgICBvcHVzX2ludDMyICAgICAg
ICAgIFJEbWluX1ExMCwgR2Fpbl9RMTA7CisgICAgICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIHhf
c2NfUTEwICk7CisgICAgICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIGRlbGF5ZWRHYWluX1ExMCAp
OworICAgICAgICBWQVJERUNMKCBOU1FfZGVsX2RlY3Nfc3RydWN0LCBwc0RlbERlYyApOworICAg
ICAgICBpbnQzMng0X3QgICAgICAgICAgIHRfczMyeDQ7CisgICAgICAgIFNBVkVfU1RBQ0s7CisK
KyAgICAgICAgLyogU2V0IHVudm9pY2VkIGxhZyB0byB0aGUgcHJldmlvdXMgb25lLCBvdmVyd3Jp
dGUgbGF0ZXIgZm9yIHZvaWNlZCAqLworICAgICAgICBsYWcgPSBOU1EtPmxhZ1ByZXY7CisKKyAg
ICAgICAgc2lsa19hc3NlcnQoIE5TUS0+cHJldl9nYWluX1ExNiAhPSAwICk7CisKKyAgICAgICAg
LyogSW5pdGlhbGl6ZSBkZWxheWVkIGRlY2lzaW9uIHN0YXRlcyAqLworICAgICAgICBBTExPQygg
cHNEZWxEZWMsIDEsIE5TUV9kZWxfZGVjc19zdHJ1Y3QgKTsKKyAgICAgICAgLyogT25seSBSYW5k
U3RhdGUgYW5kIFJEX1ExMCBuZWVkIHRvIGJlIGluaXRpYWxpemVkIHRvIDAuICovCisgICAgICAg
IHNpbGtfbWVtc2V0KCBwc0RlbERlYy0+UmFuZFN0YXRlLCAwLCBzaXplb2YoIHBzRGVsRGVjLT5S
YW5kU3RhdGUgKSApOworICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5SRF9RMTAsIHZkdXBx
X25fczMyKCAwICkgKTsKKworICAgICAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmNDLT5uU3RhdGVz
RGVsYXllZERlY2lzaW9uOyBrKysgKSB7CisgICAgICAgICAgICBwc0RlbERlYy0+U2VlZEluaXRb
IGsgXSA9IHBzRGVsRGVjLT5TZWVkWyBrIF0gPSAoIGsgKyBwc0luZGljZXMtPlNlZWQgKSAmIDM7
CisgICAgICAgIH0KKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+TEZfQVJfUTE0LCB2bGQx
cV9kdXBfczMyKCAmTlNRLT5zTEZfQVJfc2hwX1ExNCApICk7CisgICAgICAgIHZzdDFxX3MzMigg
cHNEZWxEZWMtPkRpZmZfUTE0LCB2bGQxcV9kdXBfczMyKCAmTlNRLT5zRGlmZl9zaHBfUTE0ICkg
KTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+U2hhcGVfUTE0WyAwIF0sIHZsZDFxX2R1
cF9zMzIoICZOU1EtPnNMVFBfc2hwX1ExNFsgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAtIDEgXSAp
ICk7CisgICAgICAgIGZvciggaSA9IDA7IGkgPCBOU1FfTFBDX0JVRl9MRU5HVEg7IGkrKyApIHsK
KyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPnNMUENfUTE0WyBpIF0sIHZsZDFxX2R1
cF9zMzIoICZOU1EtPnNMUENfUTE0WyBpIF0gKSApOworICAgICAgICB9CisgICAgICAgIGZvcigg
aSA9IDA7IGkgPCAob3B1c19pbnQpKCBzaXplb2YoIE5TUS0+c0FSMl9RMTQgKSAvIHNpemVvZigg
TlNRLT5zQVIyX1ExNFsgMCBdICkgKTsgaSsrICkgeworICAgICAgICAgICAgdnN0MXFfczMyKCBw
c0RlbERlYy0+c0FSMl9RMTRbIGkgXSwgdmxkMXFfZHVwX3MzMiggJk5TUS0+c0FSMl9RMTRbIGkg
XSApICk7CisgICAgICAgIH0KKworICAgICAgICBvZmZzZXRfUTEwICAgPSBzaWxrX1F1YW50aXph
dGlvbl9PZmZzZXRzX1ExMFsgcHNJbmRpY2VzLT5zaWduYWxUeXBlID4+IDEgXVsgcHNJbmRpY2Vz
LT5xdWFudE9mZnNldFR5cGUgXTsKKyAgICAgICAgc21wbF9idWZfaWR4ID0gMDsgLyogaW5kZXgg
b2Ygb2xkZXN0IHNhbXBsZXMgKi8KKworICAgICAgICBkZWNpc2lvbkRlbGF5ID0gc2lsa19taW5f
aW50KCBERUNJU0lPTl9ERUxBWSwgcHNFbmNDLT5zdWJmcl9sZW5ndGggKTsKKworICAgICAgICAv
KiBGb3Igdm9pY2VkIGZyYW1lcyBsaW1pdCB0aGUgZGVjaXNpb24gZGVsYXkgdG8gbG93ZXIgdGhh
biB0aGUgcGl0Y2ggbGFnICovCisgICAgICAgIGlmKCBwc0luZGljZXMtPnNpZ25hbFR5cGUgPT0g
VFlQRV9WT0lDRUQgKSB7CisgICAgICAgICAgICBvcHVzX2ludCBwaXRjaF9taW4gPSBwaXRjaExb
IDAgXTsKKyAgICAgICAgICAgIGZvciggayA9IDE7IGsgPCBwc0VuY0MtPm5iX3N1YmZyOyBrKysg
KSB7CisgICAgICAgICAgICAgICAgcGl0Y2hfbWluID0gc2lsa19taW5faW50KCBwaXRjaF9taW4s
IHBpdGNoTFsgayBdICk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBkZWNpc2lvbkRlbGF5
ID0gc2lsa19taW5faW50KCBkZWNpc2lvbkRlbGF5LCBwaXRjaF9taW4gLSBMVFBfT1JERVIgLyAy
IC0gMSApOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYoIGxhZyA+IDAgKSB7Cisg
ICAgICAgICAgICAgICAgZGVjaXNpb25EZWxheSA9IHNpbGtfbWluX2ludCggZGVjaXNpb25EZWxh
eSwgbGFnIC0gTFRQX09SREVSIC8gMiAtIDEgKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQor
CisgICAgICAgIGlmKCBwc0luZGljZXMtPk5MU0ZJbnRlcnBDb2VmX1EyID09IDQgKSB7CisgICAg
ICAgICAgICBMU0ZfaW50ZXJwb2xhdGlvbl9mbGFnID0gMDsKKyAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgIExTRl9pbnRlcnBvbGF0aW9uX2ZsYWcgPSAxOworICAgICAgICB9CisKKyAgICAg
ICAgQUxMT0MoIHNMVFBfUTE1LCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsgcHNFbmNDLT5mcmFt
ZV9sZW5ndGgsIG9wdXNfaW50MzIgKTsKKyAgICAgICAgQUxMT0MoIHNMVFAsIHBzRW5jQy0+bHRw
X21lbV9sZW5ndGggKyBwc0VuY0MtPmZyYW1lX2xlbmd0aCwgb3B1c19pbnQxNiApOworICAgICAg
ICBBTExPQyggeF9zY19RMTAsIHBzRW5jQy0+c3ViZnJfbGVuZ3RoLCBvcHVzX2ludDMyICk7Cisg
ICAgICAgIEFMTE9DKCBkZWxheWVkR2Fpbl9RMTAsIERFQ0lTSU9OX0RFTEFZLCBvcHVzX2ludDMy
ICk7CisgICAgICAgIC8qIFNldCB1cCBwb2ludGVycyB0byBzdGFydCBvZiBzdWIgZnJhbWUgKi8K
KyAgICAgICAgcHhxICAgICAgICAgICAgICAgICAgID0gJk5TUS0+eHFbIHBzRW5jQy0+bHRwX21l
bV9sZW5ndGggXTsKKyAgICAgICAgTlNRLT5zTFRQX3NocF9idWZfaWR4ID0gcHNFbmNDLT5sdHBf
bWVtX2xlbmd0aDsKKyAgICAgICAgTlNRLT5zTFRQX2J1Zl9pZHggICAgID0gcHNFbmNDLT5sdHBf
bWVtX2xlbmd0aDsKKyAgICAgICAgc3ViZnIgPSAwOworICAgICAgICBmb3IoIGsgPSAwOyBrIDwg
cHNFbmNDLT5uYl9zdWJmcjsgaysrICkgeworICAgICAgICAgICAgQV9RMTIgICAgICA9ICZQcmVk
Q29lZl9RMTJbICggKCBrID4+IDEgKSB8ICggMSAtIExTRl9pbnRlcnBvbGF0aW9uX2ZsYWcgKSAp
ICogTUFYX0xQQ19PUkRFUiBdOworICAgICAgICAgICAgQl9RMTQgICAgICA9ICZMVFBDb2VmX1Ex
NFsgayAqIExUUF9PUkRFUiAgICAgICAgICAgXTsKKyAgICAgICAgICAgIEFSX3NocF9RMTMgPSAm
QVJfUTEzWyAgICAgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKKworICAgICAgICAgICAgLyog
Tm9pc2Ugc2hhcGUgcGFyYW1ldGVycyAqLworICAgICAgICAgICAgc2lsa19hc3NlcnQoIEhhcm1T
aGFwZUdhaW5fUTE0WyBrIF0gPj0gMCApOworICAgICAgICAgICAgSGFybVNoYXBlRklSUGFja2Vk
X1ExNCAgPSAgICAgICAgICAgICAgICAgICAgICAgICAgc2lsa19SU0hJRlQoIEhhcm1TaGFwZUdh
aW5fUTE0WyBrIF0sIDIgKTsKKyAgICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQgfD0g
c2lsa19MU0hJRlQoIChvcHVzX2ludDMyKXNpbGtfUlNISUZUKCBIYXJtU2hhcGVHYWluX1ExNFsg
ayBdLCAxICksIDE2ICk7CisKKyAgICAgICAgICAgIE5TUS0+cmV3aGl0ZV9mbGFnID0gMDsKKyAg
ICAgICAgICAgIGlmKCBwc0luZGljZXMtPnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7Cisg
ICAgICAgICAgICAgICAgLyogVm9pY2VkICovCisgICAgICAgICAgICAgICAgbGFnID0gcGl0Y2hM
WyBrIF07CisKKyAgICAgICAgICAgICAgICAvKiBSZS13aGl0ZW5pbmcgKi8KKyAgICAgICAgICAg
ICAgICBpZiggKCBrICYgKCAzIC0gc2lsa19MU0hJRlQoIExTRl9pbnRlcnBvbGF0aW9uX2ZsYWcs
IDEgKSApICkgPT0gMCApIHsKKyAgICAgICAgICAgICAgICAgICAgaWYoIGsgPT0gMiApIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIFJFU0VUIERFTEFZRUQgREVDSVNJT05TICovCisgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBGaW5kIHdpbm5lciAqLworICAgICAgICAgICAgICAgICAg
ICAgICAgaW50MzJ4NF90IFJEX1ExMF9zMzJ4NDsKKyAgICAgICAgICAgICAgICAgICAgICAgIFJE
bWluX1ExMCA9IHBzRGVsRGVjLT5SRF9RMTBbIDAgXTsKKyAgICAgICAgICAgICAgICAgICAgICAg
IFdpbm5lcl9pbmQgPSAwOworICAgICAgICAgICAgICAgICAgICAgICAgZm9yKCBpID0gMTsgaSA8
IHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbjsgaSsrICkgeworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGlmKCBwc0RlbERlYy0+UkRfUTEwWyBpIF0gPCBSRG1pbl9RMTAgKSB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJEbWluX1ExMCA9IHBzRGVsRGVjLT5SRF9R
MTBbIGkgXTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2lubmVyX2luZCA9IGk7
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgICAgICAgICAgcHNEZWxEZWMtPlJEX1ExMFsgV2lubmVyX2luZCBd
IC09ICggc2lsa19pbnQzMl9NQVggPj4gNCApOworICAgICAgICAgICAgICAgICAgICAgICAgUkRf
UTEwX3MzMng0ID0gdmxkMXFfczMyKCBwc0RlbERlYy0+UkRfUTEwICk7CisgICAgICAgICAgICAg
ICAgICAgICAgICBSRF9RMTBfczMyeDQgPSB2YWRkcV9zMzIoIFJEX1ExMF9zMzJ4NCwgdmR1cHFf
bl9zMzIoIHNpbGtfaW50MzJfTUFYID4+IDQgKSApOworICAgICAgICAgICAgICAgICAgICAgICAg
dnN0MXFfczMyKCBwc0RlbERlYy0+UkRfUTEwLCBSRF9RMTBfczMyeDQgKTsKKworICAgICAgICAg
ICAgICAgICAgICAgICAgLyogQ29weSBmaW5hbCBwYXJ0IG9mIHNpZ25hbHMgZnJvbSB3aW5uZXIg
c3RhdGUgdG8gb3V0cHV0IGFuZCBsb25nLXRlcm0gZmlsdGVyIHN0YXRlcyAqLworICAgICAgICAg
ICAgICAgICAgICAgICAgY29weV93aW5uZXJfc3RhdGUoIHBzRGVsRGVjLCBkZWNpc2lvbkRlbGF5
LCBzbXBsX2J1Zl9pZHgsIFdpbm5lcl9pbmQsIEdhaW5zX1ExNlsgMSBdLCAxNCwgcHVsc2VzLCBw
eHEsIE5TUSApOworCisgICAgICAgICAgICAgICAgICAgICAgICBzdWJmciA9IDA7CisgICAgICAg
ICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgICAgICAvKiBSZXdoaXRlbiB3aXRoIG5l
dyBBIGNvZWZzICovCisgICAgICAgICAgICAgICAgICAgIHN0YXJ0X2lkeCA9IHBzRW5jQy0+bHRw
X21lbV9sZW5ndGggLSBsYWcgLSBwc0VuY0MtPnByZWRpY3RMUENPcmRlciAtIExUUF9PUkRFUiAv
IDI7CisgICAgICAgICAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBzdGFydF9pZHggPiAwICk7CisK
KyAgICAgICAgICAgICAgICAgICAgc2lsa19MUENfYW5hbHlzaXNfZmlsdGVyKCAmc0xUUFsgc3Rh
cnRfaWR4IF0sICZOU1EtPnhxWyBzdGFydF9pZHggKyBrICogcHNFbmNDLT5zdWJmcl9sZW5ndGgg
XSwKKyAgICAgICAgICAgICAgICAgICAgICAgIEFfUTEyLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3Ro
IC0gc3RhcnRfaWR4LCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciwgcHNFbmNDLT5hcmNoICk7CisK
KyAgICAgICAgICAgICAgICAgICAgTlNRLT5zTFRQX2J1Zl9pZHggPSBwc0VuY0MtPmx0cF9tZW1f
bGVuZ3RoOworICAgICAgICAgICAgICAgICAgICBOU1EtPnJld2hpdGVfZmxhZyA9IDE7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorCisgICAgICAgICAgICBzaWxrX25zcV9kZWxf
ZGVjX3NjYWxlX3N0YXRlc19uZW9uKCBwc0VuY0MsIE5TUSwgcHNEZWxEZWMsIHgxNiwgeF9zY19R
MTAsIHNMVFAsIHNMVFBfUTE1LCBrLAorICAgICAgICAgICAgICAgIExUUF9zY2FsZV9RMTQsIEdh
aW5zX1ExNiwgcGl0Y2hMLCBwc0luZGljZXMtPnNpZ25hbFR5cGUsIGRlY2lzaW9uRGVsYXkgKTsK
KworICAgICAgICAgICAgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlY19uZW9uKCBO
U1EsIHBzRGVsRGVjLCBwc0luZGljZXMtPnNpZ25hbFR5cGUsIHhfc2NfUTEwLCBwdWxzZXMsIHB4
cSwgc0xUUF9RMTUsCisgICAgICAgICAgICAgICAgZGVsYXllZEdhaW5fUTEwLCBBX1ExMiwgQl9R
MTQsIEFSX3NocF9RMTMsIGxhZywgSGFybVNoYXBlRklSUGFja2VkX1ExNCwgVGlsdF9RMTRbIGsg
XSwgTEZfc2hwX1ExNFsgayBdLAorICAgICAgICAgICAgICAgIEdhaW5zX1ExNlsgayBdLCBMYW1i
ZGFfUTEwLCBvZmZzZXRfUTEwLCBwc0VuY0MtPnN1YmZyX2xlbmd0aCwgc3ViZnIrKywgcHNFbmND
LT5zaGFwaW5nTFBDT3JkZXIsCisgICAgICAgICAgICAgICAgcHNFbmNDLT5wcmVkaWN0TFBDT3Jk
ZXIsIHBzRW5jQy0+d2FycGluZ19RMTYsIHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbiwg
JnNtcGxfYnVmX2lkeCwgZGVjaXNpb25EZWxheSApOworCisgICAgICAgICAgICB4MTYgICAgKz0g
cHNFbmNDLT5zdWJmcl9sZW5ndGg7CisgICAgICAgICAgICBwdWxzZXMgKz0gcHNFbmNDLT5zdWJm
cl9sZW5ndGg7CisgICAgICAgICAgICBweHEgICAgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7Cisg
ICAgICAgIH0KKworICAgICAgICAvKiBGaW5kIHdpbm5lciAqLworICAgICAgICBSRG1pbl9RMTAg
PSBwc0RlbERlYy0+UkRfUTEwWyAwIF07CisgICAgICAgIFdpbm5lcl9pbmQgPSAwOworICAgICAg
ICBmb3IoIGsgPSAxOyBrIDwgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lzaW9uOyBrKysgKSB7
CisgICAgICAgICAgICBpZiggcHNEZWxEZWMtPlJEX1ExMFsgayBdIDwgUkRtaW5fUTEwICkgewor
ICAgICAgICAgICAgICAgIFJEbWluX1ExMCA9IHBzRGVsRGVjLT5SRF9RMTBbIGsgXTsKKyAgICAg
ICAgICAgICAgICBXaW5uZXJfaW5kID0gazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisg
ICAgICAgIC8qIENvcHkgZmluYWwgcGFydCBvZiBzaWduYWxzIGZyb20gd2lubmVyIHN0YXRlIHRv
IG91dHB1dCBhbmQgbG9uZy10ZXJtIGZpbHRlciBzdGF0ZXMgKi8KKyAgICAgICAgcHNJbmRpY2Vz
LT5TZWVkID0gcHNEZWxEZWMtPlNlZWRJbml0WyBXaW5uZXJfaW5kIF07CisgICAgICAgIEdhaW5f
UTEwID0gc2lsa19SU0hJRlQzMiggR2FpbnNfUTE2WyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBdLCA2
ICk7CisgICAgICAgIGNvcHlfd2lubmVyX3N0YXRlKCBwc0RlbERlYywgZGVjaXNpb25EZWxheSwg
c21wbF9idWZfaWR4LCBXaW5uZXJfaW5kLCBHYWluX1ExMCwgOCwgcHVsc2VzLCBweHEsIE5TUSAp
OworCisgICAgICAgIHRfczMyeDQgPSB2ZHVwcV9uX3MzMiggMCApOyAvKiBpbml0aWFsaXphdGlv
biAqLworICAgICAgICBmb3IoIGkgPSAwOyBpIDwgKCBOU1FfTFBDX0JVRl9MRU5HVEggLSAzICk7
IGkgKz0gNCApIHsKKyAgICAgICAgICAgIHRfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVs
RGVjLT5zTFBDX1ExNFsgaSArIDAgXVsgV2lubmVyX2luZCBdLCB0X3MzMng0LCAwICk7CisgICAg
ICAgICAgICB0X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+c0xQQ19RMTRbIGkg
KyAxIF1bIFdpbm5lcl9pbmQgXSwgdF9zMzJ4NCwgMSApOworICAgICAgICAgICAgdF9zMzJ4NCA9
IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPnNMUENfUTE0WyBpICsgMiBdWyBXaW5uZXJfaW5k
IF0sIHRfczMyeDQsIDIgKTsKKyAgICAgICAgICAgIHRfczMyeDQgPSB2bGQxcV9sYW5lX3MzMigg
JnBzRGVsRGVjLT5zTFBDX1ExNFsgaSArIDMgXVsgV2lubmVyX2luZCBdLCB0X3MzMng0LCAzICk7
CisgICAgICAgICAgICB2c3QxcV9zMzIoICZOU1EtPnNMUENfUTE0WyBpIF0sIHRfczMyeDQgKTsK
KyAgICAgICAgfQorCisgICAgICAgIGZvciggOyBpIDwgTlNRX0xQQ19CVUZfTEVOR1RIOyBpKysg
KSB7CisgICAgICAgICAgTlNRLT5zTFBDX1ExNFsgaSBdID0gcHNEZWxEZWMtPnNMUENfUTE0WyBp
IF1bIFdpbm5lcl9pbmQgXTsKKyAgICAgICAgfQorCisgICAgICAgIGZvciggaSA9IDA7IGkgPCAo
b3B1c19pbnQpKCBzaXplb2YoIE5TUS0+c0FSMl9RMTQgKSAvIHNpemVvZiggTlNRLT5zQVIyX1Ex
NFsgMCBdICkgLSAzICk7IGkgKz0gNCApIHsKKyAgICAgICAgICAgIHRfczMyeDQgPSB2bGQxcV9s
YW5lX3MzMiggJnBzRGVsRGVjLT5zQVIyX1ExNFsgaSArIDAgXVsgV2lubmVyX2luZCBdLCB0X3Mz
Mng0LCAwICk7CisgICAgICAgICAgICB0X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERl
Yy0+c0FSMl9RMTRbIGkgKyAxIF1bIFdpbm5lcl9pbmQgXSwgdF9zMzJ4NCwgMSApOworICAgICAg
ICAgICAgdF9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPnNBUjJfUTE0WyBpICsg
MiBdWyBXaW5uZXJfaW5kIF0sIHRfczMyeDQsIDIgKTsKKyAgICAgICAgICAgIHRfczMyeDQgPSB2
bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5zQVIyX1ExNFsgaSArIDMgXVsgV2lubmVyX2luZCBd
LCB0X3MzMng0LCAzICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoICZOU1EtPnNBUjJfUTE0WyBp
IF0sIHRfczMyeDQgKTsKKyAgICAgICAgfQorCisgICAgICAgIGZvciggOyBpIDwgKG9wdXNfaW50
KSggc2l6ZW9mKCBOU1EtPnNBUjJfUTE0ICkgLyBzaXplb2YoIE5TUS0+c0FSMl9RMTRbIDAgXSAp
ICk7IGkrKyApIHsKKyAgICAgICAgICBOU1EtPnNBUjJfUTE0WyBpIF0gPSBwc0RlbERlYy0+c0FS
Ml9RMTRbIGkgXVsgV2lubmVyX2luZCBdOworICAgICAgICB9CisKKyAgICAgICAgLyogVXBkYXRl
IHN0YXRlcyAqLworICAgICAgICBOU1EtPnNMRl9BUl9zaHBfUTE0ID0gcHNEZWxEZWMtPkxGX0FS
X1ExNFsgV2lubmVyX2luZCBdOworICAgICAgICBOU1EtPnNEaWZmX3NocF9RMTQgID0gcHNEZWxE
ZWMtPkRpZmZfUTE0WyBXaW5uZXJfaW5kIF07CisgICAgICAgIE5TUS0+bGFnUHJldiAgICAgICAg
PSBwaXRjaExbIHBzRW5jQy0+bmJfc3ViZnIgLSAxIF07CisKKyAgICAgICAgLyogU2F2ZSBxdWFu
dGl6ZWQgc3BlZWNoIHNpZ25hbCAqLworICAgICAgICBzaWxrX21lbW1vdmUoIE5TUS0+eHEsICAg
ICAgICAgICAmTlNRLT54cVsgICAgICAgICAgIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoIF0sIHBzRW5j
Qy0+bHRwX21lbV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOworICAgICAgICBzaWxr
X21lbW1vdmUoIE5TUS0+c0xUUF9zaHBfUTE0LCAmTlNRLT5zTFRQX3NocF9RMTRbIHBzRW5jQy0+
ZnJhbWVfbGVuZ3RoIF0sIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50
MzIgKSApOworICAgICAgICBSRVNUT1JFX1NUQUNLOworICAgIH0KKworI2lmZGVmIE9QVVNfQ0hF
Q0tfQVNNCisgICAgc2lsa19hc3NlcnQoICFtZW1jbXAoICZOU1FfYywgTlNRLCBzaXplb2YoIE5T
UV9jICkgKSApOworICAgIHNpbGtfYXNzZXJ0KCAhbWVtY21wKCAmcHNJbmRpY2VzX2MsIHBzSW5k
aWNlcywgc2l6ZW9mKCBwc0luZGljZXNfYyApICkgKTsKKyAgICBzaWxrX2Fzc2VydCggIW1lbWNt
cCggcHVsc2VzX2MsIHB1bHNlc19hLCBzaXplb2YoIHB1bHNlc19jICkgKSApOworI2VuZGlmCit9
CisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiBOb2lz
ZSBzaGFwZSBxdWFudGl6ZXIgZm9yIG9uZSBzdWJmcmFtZSAqLworLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qIE5vdGU6IEZ1bmN0aW9uIHNpbGtfc2hvcnRf
cHJlZGljdGlvbl9jcmVhdGVfYXJjaF9jb2VmX25lb24oKSBkZWZpbmVkIGluIE5TUV9uZW9uLmgg
aXMgYWN0dWFsbHkgYSBoYWNraW5nIEMgZnVuY3Rpb24uICovCisvKiAgICAgICBUaGVyZWZvcmUg
aGVyZSB3ZSBhcHBlbmQgIl9sb2NhbCIgdG8gdGhlIE5FT04gZnVuY3Rpb24gbmFtZSB0byBhdm9p
ZCBjb25mdXNpb24uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworc3RhdGljIE9Q
VVNfSU5MSU5FIHZvaWQgc2lsa19zaG9ydF9wcmVkaWN0aW9uX2NyZWF0ZV9hcmNoX2NvZWZfbmVv
bl9sb2NhbChvcHVzX2ludDMyICpvdXQsIGNvbnN0IG9wdXNfaW50MTYgKmluLCBvcHVzX2ludCBv
cmRlcikKK3sKKyAgaW50MTZ4OF90IHRfczE2eDg7CisgIGludDMyeDRfdCB0MF9zMzJ4NCwgdDFf
czMyeDQsIHQyX3MzMng0LCB0M19zMzJ4NDsKKyAgc2lsa19hc3NlcnQoIG9yZGVyID09IDEwIHx8
IG9yZGVyID09IDE2ICk7CisKKyAgdF9zMTZ4OCA9IHZsZDFxX3MxNiggaW4gKyAwICk7ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogNyA2IDUgNCAg
MyAyIDEgMCAgICAqLworICB0X3MxNng4ID0gdnJldjY0cV9zMTYoIHRfczE2eDggKTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiA0IDUgNiA3ICAwIDEg
MiAzICAgICovCisgIHQyX3MzMng0ID0gdnNobGxfbl9zMTYoIHZnZXRfaGlnaF9zMTYoIHRfczE2
eDggKSwgMTUgKTsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIDQgNSA2IDcgICAgICAgICAg
ICAgKi8KKyAgdDNfczMyeDQgPSB2c2hsbF9uX3MxNiggdmdldF9sb3dfczE2KCAgdF9zMTZ4OCAp
LCAxNSApOyAgICAgICAgICAgICAgICAgICAgICAgICAgLyogMCAxIDIgMyAgICAgICAgICAgICAq
LworCisgIGlmKCBvcmRlciA9PSAxNiApIHsKKyAgICAgIHRfczE2eDggPSB2bGQxcV9zMTYoIGlu
ICsgOCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
RiBFIEQgQyAgQiBBIDkgOCAgICAqLworICAgICAgdF9zMTZ4OCA9IHZyZXY2NHFfczE2KCB0X3Mx
Nng4ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBDIEQg
RSBGICA4IDkgQSBCICAgICovCisgICAgICB0MF9zMzJ4NCA9IHZzaGxsX25fczE2KCB2Z2V0X2hp
Z2hfczE2KCB0X3MxNng4ICksIDE1ICk7ICAgICAgICAgICAgICAgICAgICAgIC8qIEMgRCBFIEYg
ICAgICAgICAgICAgKi8KKyAgICAgIHQxX3MzMng0ID0gdnNobGxfbl9zMTYoIHZnZXRfbG93X3Mx
NiggIHRfczE2eDggKSwgMTUgKTsgICAgICAgICAgICAgICAgICAgICAgLyogOCA5IEEgQiAgICAg
ICAgICAgICAqLworICB9IGVsc2UgeworICAgICAgaW50MTZ4NF90IHRfczE2eDQ7CisKKyAgICAg
IHQwX3MzMng0ID0gdmR1cHFfbl9zMzIoIDAgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogemVybyB6ZXJvIHplcm8gemVybyAqLworICAgICAgdF9z
MTZ4NCA9IHZsZDFfczE2KCBpbiArIDYgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiA5ICAgIDggICAgNyAgICA2ICAgICovCisgICAgICB0X3MxNng0
ID0gdnJldjY0X3MxNiggdF9zMTZ4NCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIDYgICAgNyAgICA4ICAgIDkgICAgKi8KKyAgICAgIHQxX3MzMng0ID0g
dnNobGxfbl9zMTYoIHRfczE2eDQsIDE1ICk7CisgICAgICB0MV9zMzJ4NCA9IHZjb21iaW5lX3Mz
MiggdmdldF9sb3dfczMyKHQwX3MzMng0KSwgdmdldF9sb3dfczMyKCB0MV9zMzJ4NCApICk7IC8q
IDggICAgOSAgICB6ZXJvIHplcm8gKi8KKyAgfQorICB2c3QxcV9zMzIoIG91dCArICAwLCB0MF9z
MzJ4NCApOworICB2c3QxcV9zMzIoIG91dCArICA0LCB0MV9zMzJ4NCApOworICB2c3QxcV9zMzIo
IG91dCArICA4LCB0Ml9zMzJ4NCApOworICB2c3QxcV9zMzIoIG91dCArIDEyLCB0M19zMzJ4NCAp
OworfQorCitzdGF0aWMgT1BVU19JTkxJTkUgaW50MzJ4NF90IHNpbGtfU01MQVdCX2xhbmUwX25l
b24oCisgICAgY29uc3QgaW50MzJ4NF90IG91dF9zMzJ4NCwKKyAgICBjb25zdCBpbnQzMng0X3Qg
aW5fczMyeDQsCisgICAgY29uc3QgaW50MzJ4Ml90IGNvZWZfczMyeDIKKykKK3sKKyAgICByZXR1
cm4gdmFkZHFfczMyKCBvdXRfczMyeDQsIHZxZG11bGhxX2xhbmVfczMyKCBpbl9zMzJ4NCwgY29l
Zl9zMzJ4MiwgMCApICk7Cit9CisKK3N0YXRpYyBPUFVTX0lOTElORSBpbnQzMng0X3Qgc2lsa19T
TUxBV0JfbGFuZTFfbmVvbigKKyAgICBjb25zdCBpbnQzMng0X3Qgb3V0X3MzMng0LAorICAgIGNv
bnN0IGludDMyeDRfdCBpbl9zMzJ4NCwKKyAgICBjb25zdCBpbnQzMngyX3QgY29lZl9zMzJ4Mgor
KQoreworICAgIHJldHVybiB2YWRkcV9zMzIoIG91dF9zMzJ4NCwgdnFkbXVsaHFfbGFuZV9zMzIo
IGluX3MzMng0LCBjb2VmX3MzMngyLCAxICkgKTsKK30KKworLyogTm90ZTogVGhpcyBmdW5jdGlv
biBoYXMgZGlmZmVyZW50IHJldHVybiB2YWx1ZSB0aGFuIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRp
emVyX3Nob3J0X3ByZWRpY3Rpb25fbmVvbigpLiAqLworLyogICAgICAgVGhlcmVmb3JlIGhlcmUg
d2UgYXBwZW5kICJfbG9jYWwiIHRvIHRoZSBmdW5jdGlvbiBuYW1lIHRvIGF2b2lkIGNvbmZ1c2lv
bi4gICAgICAgICAgICAgICAgICAgICAgICAqLworc3RhdGljIE9QVVNfSU5MSU5FIGludDMyeDRf
dCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9zaG9ydF9wcmVkaWN0aW9uX25lb25fbG9jYWwo
Y29uc3Qgb3B1c19pbnQzMiAqYnVmMzIsIGNvbnN0IG9wdXNfaW50MzIgKmFfUTEyX2FyY2gsIG9w
dXNfaW50IG9yZGVyKQoreworICAgIGNvbnN0IGludDMyeDRfdCBhX1ExMl9hcmNoMF9zMzJ4NCA9
IHZsZDFxX3MzMiggYV9RMTJfYXJjaCArIDAgKTsKKyAgICBjb25zdCBpbnQzMng0X3QgYV9RMTJf
YXJjaDFfczMyeDQgPSB2bGQxcV9zMzIoIGFfUTEyX2FyY2ggKyA0ICk7CisgICAgY29uc3QgaW50
MzJ4NF90IGFfUTEyX2FyY2gyX3MzMng0ID0gdmxkMXFfczMyKCBhX1ExMl9hcmNoICsgOCApOwor
ICAgIGNvbnN0IGludDMyeDRfdCBhX1ExMl9hcmNoM19zMzJ4NCA9IHZsZDFxX3MzMiggYV9RMTJf
YXJjaCArIDEyICk7CisgICAgaW50MzJ4NF90IExQQ19wcmVkX1ExNF9zMzJ4NDsKKworICAgIHNp
bGtfYXNzZXJ0KCBvcmRlciA9PSAxMCB8fCBvcmRlciA9PSAxNiApOworICAgIC8qIEF2b2lkcyBp
bnRyb2R1Y2luZyBhIGJpYXMgYmVjYXVzZSBzaWxrX1NNTEFXQigpIGFsd2F5cyByb3VuZHMgdG8g
LWluZiAqLworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHZkdXBxX25fczMyKCBzaWxrX1JTSElG
VCggb3JkZXIsIDEgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xh
bmUwX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArICAwICogTkVP
Tl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9sb3dfczMyKCAgYV9RMTJfYXJjaDBfczMyeDQg
KSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUxX25lb24oIExQ
Q19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArICAxICogTkVPTl9NQVhfREVMX0RF
Q19TVEFURVMgKSwgdmdldF9sb3dfczMyKCAgYV9RMTJfYXJjaDBfczMyeDQgKSApOworICAgIExQ
Q19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIExQQ19wcmVkX1ExNF9z
MzJ4NCwgdmxkMXFfczMyKCBidWYzMiArICAyICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwg
dmdldF9oaWdoX3MzMiggYV9RMTJfYXJjaDBfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9z
MzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUxX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFf
czMyKCBidWYzMiArICAzICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9oaWdoX3Mz
MiggYV9RMTJfYXJjaDBfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtf
U01MQVdCX2xhbmUwX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiAr
ICA0ICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9sb3dfczMyKCAgYV9RMTJfYXJj
aDFfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUx
X25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArICA1ICogTkVPTl9N
QVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9sb3dfczMyKCAgYV9RMTJfYXJjaDFfczMyeDQgKSAp
OworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIExQQ19w
cmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArICA2ICogTkVPTl9NQVhfREVMX0RFQ19T
VEFURVMgKSwgdmdldF9oaWdoX3MzMiggYV9RMTJfYXJjaDFfczMyeDQgKSApOworICAgIExQQ19w
cmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUxX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4
NCwgdmxkMXFfczMyKCBidWYzMiArICA3ICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdl
dF9oaWdoX3MzMiggYV9RMTJfYXJjaDFfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4
NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMy
KCBidWYzMiArICA4ICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9sb3dfczMyKCAg
YV9RMTJfYXJjaDJfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01M
QVdCX2xhbmUxX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArICA5
ICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9sb3dfczMyKCAgYV9RMTJfYXJjaDJf
czMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25l
b24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArIDEwICogTkVPTl9NQVhf
REVMX0RFQ19TVEFURVMgKSwgdmdldF9oaWdoX3MzMiggYV9RMTJfYXJjaDJfczMyeDQgKSApOwor
ICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUxX25lb24oIExQQ19wcmVk
X1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArIDExICogTkVPTl9NQVhfREVMX0RFQ19TVEFU
RVMgKSwgdmdldF9oaWdoX3MzMiggYV9RMTJfYXJjaDJfczMyeDQgKSApOworICAgIExQQ19wcmVk
X1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwg
dmxkMXFfczMyKCBidWYzMiArIDEyICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9s
b3dfczMyKCAgYV9RMTJfYXJjaDNfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9
IHNpbGtfU01MQVdCX2xhbmUxX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBi
dWYzMiArIDEzICogTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9sb3dfczMyKCAgYV9R
MTJfYXJjaDNfczMyeDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdC
X2xhbmUwX25lb24oIExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArIDE0ICog
TkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSwgdmdldF9oaWdoX3MzMiggYV9RMTJfYXJjaDNfczMy
eDQgKSApOworICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUxX25lb24o
IExQQ19wcmVkX1ExNF9zMzJ4NCwgdmxkMXFfczMyKCBidWYzMiArIDE1ICogTkVPTl9NQVhfREVM
X0RFQ19TVEFURVMgKSwgdmdldF9oaWdoX3MzMiggYV9RMTJfYXJjaDNfczMyeDQgKSApOworCisg
ICAgcmV0dXJuIExQQ19wcmVkX1ExNF9zMzJ4NDsKK30KKworc3RhdGljIE9QVVNfSU5MSU5FIHZv
aWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlY19uZW9uKAorICAgIHNpbGtfbnNx
X3N0YXRlICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIE5TUV9kZWxfZGVjc19zdHJ1Y3QgcHNEZWxE
ZWNbXSwgICAgICAgICAgICAgLyogSS9PICBEZWxheWVkIGRlY2lzaW9uIHN0YXRlcyAgICAgICAg
ICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgc2lnbmFsVHlwZSwgICAgICAgICAgICAg
LyogSSAgICBTaWduYWwgdHlwZSAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0
IG9wdXNfaW50MzIgICAgeF9RMTBbXSwgICAgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50OCAgICAgICAgICAgcHVs
c2VzW10sICAgICAgICAgICAgICAgLyogTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIG9wdXNfaW50MTYgICAgICAgICAgeHFbXSwgICAgICAgICAgICAgICAg
ICAgLyogTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9w
dXNfaW50MzIgICAgICAgICAgc0xUUF9RMTVbXSwgICAgICAgICAgICAgLyogSS9PICBMVFAgZmls
dGVyIHN0YXRlICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAg
ZGVsYXllZEdhaW5fUTEwW10sICAgICAgLyogSS9PICBHYWluIGRlbGF5IGJ1ZmZlciAgICAgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgYV9RMTJbXSwgICAgICAgICAg
ICAgICAgLyogSSAgICBTaG9ydCB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgYl9RMTRbXSwgICAgICAgICAgICAgICAgLyogSSAgICBMb25n
IHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYg
ICAgQVJfc2hwX1ExM1tdLCAgICAgICAgICAgLyogSSAgICBOb2lzZSBzaGFwaW5nIGNvZWZzICAg
ICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgbGFnLCAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBQaXRjaCBsYWcgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgIG9wdXNfaW50MzIgICAgICAgICAgSGFybVNoYXBlRklSUGFja2VkX1ExNCwgLyogSSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAg
ICAgICAgVGlsdF9RMTQsICAgICAgICAgICAgICAgLyogSSAgICBTcGVjdHJhbCB0aWx0ICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgTEZfc2hwX1ExNCwg
ICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50MzIgICAgICAgICAgR2Fpbl9RMTYsICAgICAgICAgICAgICAgLyogSSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAg
ICAgICAgICAgTGFtYmRhX1ExMCwgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgb2Zmc2V0X1Ex
MCwgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAgLyog
SSAgICBJbnB1dCBsZW5ndGggICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50
ICAgICAgICAgICAgc3ViZnIsICAgICAgICAgICAgICAgICAgLyogSSAgICBTdWJmcmFtZSBudW1i
ZXIgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgc2hhcGlu
Z0xQQ09yZGVyLCAgICAgICAgLyogSSAgICBTaGFwaW5nIExQQyBmaWx0ZXIgb3JkZXIgICAgICAg
ICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgcHJlZGljdExQQ09yZGVyLCAgICAgICAg
LyogSSAgICBQcmVkaWN0aW9uIGZpbHRlciBvcmRlciAgICAgICAgICAgICAqLworICAgIG9wdXNf
aW50ICAgICAgICAgICAgd2FycGluZ19RMTYsICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgblN0
YXRlc0RlbGF5ZWREZWNpc2lvbiwgLyogSSAgICBOdW1iZXIgb2Ygc3RhdGVzIGluIGRlY2lzaW9u
IHRyZWUgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgKnNtcGxfYnVmX2lkeCwgICAgICAg
ICAgLyogSS9PICBJbmRleCB0byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZmZXJzICAqLworICAgIG9w
dXNfaW50ICAgICAgICAgICAgZGVjaXNpb25EZWxheSAgICAgICAgICAgLyogSSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworKQoreworICAgIG9wdXNfaW50ICAgICBp
LCBqLCBrLCBXaW5uZXJfaW5kLCBSRG1pbl9pbmQsIFJEbWF4X2luZCwgbGFzdF9zbXBsZV9pZHg7
CisgICAgb3B1c19pbnQzMiAgIFdpbm5lcl9yYW5kX3N0YXRlOworICAgIG9wdXNfaW50MzIgICBM
VFBfcHJlZF9RMTQsIG5fTFRQX1ExNDsKKyAgICBvcHVzX2ludDMyICAgUkRtaW5fUTEwLCBSRG1h
eF9RMTA7CisgICAgb3B1c19pbnQzMiAgIEdhaW5fUTEwOworICAgIG9wdXNfaW50MzIgICAqcHJl
ZF9sYWdfcHRyLCAqc2hwX2xhZ19wdHI7CisgICAgb3B1c19pbnQzMiAgIGFfUTEyX2FyY2hbTUFY
X0xQQ19PUkRFUl07CisgICAgY29uc3QgaW50MzJ4Ml90IHdhcnBpbmdfUTE2X3MzMngyID0gdmR1
cF9uX3MzMiggc2lsa19MU0hJRlQzMiggd2FycGluZ19RMTYsIDE2ICkgPj4gMSApOworICAgIGNv
bnN0IG9wdXNfaW50MzIgTEZfc2hwX1EyOSA9IHNpbGtfTFNISUZUMzIoIExGX3NocF9RMTQsIDE2
ICkgPj4gMTsKKyAgICBvcHVzX2ludDMyIEFSX3NocF9RMjhbIE1BWF9TSEFQRV9MUENfT1JERVIg
XTsKKyAgICBjb25zdCB1aW50MzJ4NF90IHJhbmRfbXVsdGlwbGllcl91MzJ4NCA9IHZkdXBxX25f
dTMyKCBSQU5EX01VTFRJUExJRVIgKTsKKyAgICBjb25zdCB1aW50MzJ4NF90IHJhbmRfaW5jcmVt
ZW50X3UzMng0ID0gdmR1cHFfbl91MzIoIFJBTkRfSU5DUkVNRU5UICk7CisKKyAgICBWQVJERUNM
KCBOU1Ffc2FtcGxlc19zdHJ1Y3QsIHBzU2FtcGxlU3RhdGUgKTsKKyAgICBTQVZFX1NUQUNLOwor
CisgICAgc2lsa19hc3NlcnQoIG5TdGF0ZXNEZWxheWVkRGVjaXNpb24gPiAwICk7CisgICAgc2ls
a19hc3NlcnQoICggc2hhcGluZ0xQQ09yZGVyICYgMSApID09IDAgKTsgICAvKiBjaGVjayB0aGF0
IG9yZGVyIGlzIGV2ZW4gKi8KKyAgICBBTExPQyggcHNTYW1wbGVTdGF0ZSwgMiwgTlNRX3NhbXBs
ZXNfc3RydWN0ICk7CisKKyAgICBzaHBfbGFnX3B0ciAgPSAmTlNRLT5zTFRQX3NocF9RMTRbIE5T
US0+c0xUUF9zaHBfYnVmX2lkeCAtIGxhZyArIEhBUk1fU0hBUEVfRklSX1RBUFMgLyAyIF07Cisg
ICAgcHJlZF9sYWdfcHRyID0gJnNMVFBfUTE1WyBOU1EtPnNMVFBfYnVmX2lkeCAtIGxhZyArIExU
UF9PUkRFUiAvIDIgXTsKKyAgICBHYWluX1ExMCAgICAgPSBzaWxrX1JTSElGVCggR2Fpbl9RMTYs
IDYgKTsKKworICAgIGZvciggaSA9IDA7IGkgPCAoIE1BWF9TSEFQRV9MUENfT1JERVIgLSA3ICk7
IGkgKz0gOCApIHsKKyAgICAgIGNvbnN0IGludDE2eDhfdCB0X3MxNng4ID0gdmxkMXFfczE2KCBB
Ul9zaHBfUTEzICsgIGkgKTsKKyAgICAgIHZzdDFxX3MzMiggQVJfc2hwX1EyOCArIGkgKyAwLCB2
c2hsbF9uX3MxNiggdmdldF9sb3dfczE2KCAgdF9zMTZ4OCApLCAxNSApICk7CisgICAgICB2c3Qx
cV9zMzIoIEFSX3NocF9RMjggKyBpICsgNCwgdnNobGxfbl9zMTYoIHZnZXRfaGlnaF9zMTYoIHRf
czE2eDggKSwgMTUgKSApOworICAgIH0KKworICAgIGZvciggOyBpIDwgTUFYX1NIQVBFX0xQQ19P
UkRFUjsgaSsrICkgeworICAgICAgQVJfc2hwX1EyOFtpXSA9IHNpbGtfTFNISUZUMzIoIEFSX3No
cF9RMTNbaV0sIDE1ICk7CisgICAgfQorCisgICAgc2lsa19zaG9ydF9wcmVkaWN0aW9uX2NyZWF0
ZV9hcmNoX2NvZWZfbmVvbl9sb2NhbCggYV9RMTJfYXJjaCwgYV9RMTIsIHByZWRpY3RMUENPcmRl
ciApOworCisgICAgZm9yKCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrICkgeworICAgICAgICBpbnQz
Mng0X3QgU2VlZF9zMzJ4NCwgTFBDX3ByZWRfUTE0X3MzMng0OworICAgICAgICBpbnQzMng0X3Qg
c2lnbl9zMzJ4NCwgdG1wMV9zMzJ4NCwgdG1wMl9zMzJ4NDsKKyAgICAgICAgaW50MzJ4NF90IG5f
QVJfUTE0X3MzMng0LCBuX0xGX1ExNF9zMzJ4NDsKKyAgICAgICAgaW50MzJ4Ml90IEFSX3NocF9R
MjhfczMyeDI7CisgICAgICAgIGludDE2eDRfdCByX1ExMF9zMTZ4NCwgcnJfUTEwX3MxNng0Owor
CisgICAgICAgIC8qIFBlcmZvcm0gY29tbW9uIGNhbGN1bGF0aW9ucyB1c2VkIGluIGFsbCBzdGF0
ZXMgKi8KKworICAgICAgICAvKiBMb25nLXRlcm0gcHJlZGljdGlvbiAqLworICAgICAgICBpZigg
c2lnbmFsVHlwZSA9PSBUWVBFX1ZPSUNFRCApIHsKKyAgICAgICAgICAgIC8qIFVucm9sbGVkIGxv
b3AgKi8KKyAgICAgICAgICAgIC8qIEF2b2lkcyBpbnRyb2R1Y2luZyBhIGJpYXMgYmVjYXVzZSBz
aWxrX1NNTEFXQigpIGFsd2F5cyByb3VuZHMgdG8gLWluZiAqLworICAgICAgICAgICAgTFRQX3By
ZWRfUTE0ID0gMjsKKyAgICAgICAgICAgIExUUF9wcmVkX1ExNCA9IHNpbGtfU01MQVdCKCBMVFBf
cHJlZF9RMTQsIHByZWRfbGFnX3B0clsgIDAgXSwgYl9RMTRbIDAgXSApOworICAgICAgICAgICAg
TFRQX3ByZWRfUTE0ID0gc2lsa19TTUxBV0IoIExUUF9wcmVkX1ExNCwgcHJlZF9sYWdfcHRyWyAt
MSBdLCBiX1ExNFsgMSBdICk7CisgICAgICAgICAgICBMVFBfcHJlZF9RMTQgPSBzaWxrX1NNTEFX
QiggTFRQX3ByZWRfUTE0LCBwcmVkX2xhZ19wdHJbIC0yIF0sIGJfUTE0WyAyIF0gKTsKKyAgICAg
ICAgICAgIExUUF9wcmVkX1ExNCA9IHNpbGtfU01MQVdCKCBMVFBfcHJlZF9RMTQsIHByZWRfbGFn
X3B0clsgLTMgXSwgYl9RMTRbIDMgXSApOworICAgICAgICAgICAgTFRQX3ByZWRfUTE0ID0gc2ls
a19TTUxBV0IoIExUUF9wcmVkX1ExNCwgcHJlZF9sYWdfcHRyWyAtNCBdLCBiX1ExNFsgNCBdICk7
CisgICAgICAgICAgICBMVFBfcHJlZF9RMTQgPSBzaWxrX0xTSElGVCggTFRQX3ByZWRfUTE0LCAx
ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBRMTMgLT4gUTE0ICovCisgICAgICAgICAg
ICBwcmVkX2xhZ19wdHIrKzsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIExUUF9wcmVk
X1ExNCA9IDA7CisgICAgICAgIH0KKworICAgICAgICAvKiBMb25nLXRlcm0gc2hhcGluZyAqLwor
ICAgICAgICBpZiggbGFnID4gMCApIHsKKyAgICAgICAgICAgIC8qIFN5bW1ldHJpYywgcGFja2Vk
IEZJUiBjb2VmZmljaWVudHMgKi8KKyAgICAgICAgICAgIG5fTFRQX1ExNCA9IHNpbGtfU01VTFdC
KCBzaWxrX0FERDMyKCBzaHBfbGFnX3B0clsgMCBdLCBzaHBfbGFnX3B0clsgLTIgXSApLCBIYXJt
U2hhcGVGSVJQYWNrZWRfUTE0ICk7CisgICAgICAgICAgICBuX0xUUF9RMTQgPSBzaWxrX1NNTEFX
VCggbl9MVFBfUTE0LCBzaHBfbGFnX3B0clsgLTEgXSwgICAgICAgICAgICAgICAgICAgICAgSGFy
bVNoYXBlRklSUGFja2VkX1ExNCApOworICAgICAgICAgICAgbl9MVFBfUTE0ID0gc2lsa19TVUJf
TFNISUZUMzIoIExUUF9wcmVkX1ExNCwgbl9MVFBfUTE0LCAyICk7ICAgICAgICAgICAgLyogUTEy
IC0+IFExNCAqLworICAgICAgICAgICAgc2hwX2xhZ19wdHIrKzsKKyAgICAgICAgfSBlbHNlIHsK
KyAgICAgICAgICAgIG5fTFRQX1ExNCA9IDA7CisgICAgICAgIH0KKworICAgICAgICAvKiBHZW5l
cmF0ZSBkaXRoZXIgKi8KKyAgICAgICAgU2VlZF9zMzJ4NCA9IHZsZDFxX3MzMiggcHNEZWxEZWMt
PlNlZWQgKTsKKyAgICAgICAgU2VlZF9zMzJ4NCA9IHZyZWludGVycHJldHFfczMyX3UzMiggdm1s
YXFfdTMyKCByYW5kX2luY3JlbWVudF91MzJ4NCwgdnJlaW50ZXJwcmV0cV91MzJfczMyKCBTZWVk
X3MzMng0ICksIHJhbmRfbXVsdGlwbGllcl91MzJ4NCApICk7CisgICAgICAgIHZzdDFxX3MzMigg
cHNEZWxEZWMtPlNlZWQsIFNlZWRfczMyeDQgKTsKKworICAgICAgICAvKiBTaG9ydC10ZXJtIHBy
ZWRpY3Rpb24gKi8KKyAgICAgICAgTFBDX3ByZWRfUTE0X3MzMng0ID0gc2lsa19ub2lzZV9zaGFw
ZV9xdWFudGl6ZXJfc2hvcnRfcHJlZGljdGlvbl9uZW9uX2xvY2FsKHBzRGVsRGVjLT5zTFBDX1Ex
NFsgTlNRX0xQQ19CVUZfTEVOR1RIIC0gMTYgKyBpIF0sIGFfUTEyX2FyY2gsIHByZWRpY3RMUENP
cmRlcik7CisgICAgICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHZzaGxxX25fczMyKCBMUENfcHJl
ZF9RMTRfczMyeDQsIDQgKTsgLyogUTEwIC0+IFExNCAqLworCisgICAgICAgIC8qIE5vaXNlIHNo
YXBlIGZlZWRiYWNrICovCisgICAgICAgIC8qIE91dHB1dCBvZiBsb3dwYXNzIHNlY3Rpb24gKi8K
KyAgICAgICAgdG1wMl9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIHZsZDFxX3MzMigg
cHNEZWxEZWMtPkRpZmZfUTE0ICksIHZsZDFxX3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyAwIF0g
KSwgd2FycGluZ19RMTZfczMyeDIgKTsKKyAgICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2Vj
dGlvbiAqLworICAgICAgICB0bXAxX3MzMng0ID0gdnN1YnFfczMyKCB2bGQxcV9zMzIoIHBzRGVs
RGVjLT5zQVIyX1ExNFsgMSBdICksIHRtcDJfczMyeDQgKTsKKyAgICAgICAgdG1wMV9zMzJ4NCA9
IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIHZsZDFxX3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyAw
IF0gKSwgdG1wMV9zMzJ4NCwgd2FycGluZ19RMTZfczMyeDIgKTsKKyAgICAgICAgdnN0MXFfczMy
KCBwc0RlbERlYy0+c0FSMl9RMTRbIDAgXSwgdG1wMl9zMzJ4NCApOworICAgICAgICBBUl9zaHBf
UTI4X3MzMngyID0gdmxkMV9zMzIoIEFSX3NocF9RMjggKTsKKyAgICAgICAgbl9BUl9RMTRfczMy
eDQgPSB2YWRkcV9zMzIoIHZkdXBxX25fczMyKCBzaWxrX1JTSElGVCggc2hhcGluZ0xQQ09yZGVy
LCAxICkgKSwgdnFkbXVsaHFfbGFuZV9zMzIoIHRtcDJfczMyeDQsIEFSX3NocF9RMjhfczMyeDIs
IDAgKSApOworCisgICAgICAgIC8qIExvb3Agb3ZlciBhbGxwYXNzIHNlY3Rpb25zICovCisgICAg
ICAgIGZvciggaiA9IDI7IGogPCBzaGFwaW5nTFBDT3JkZXI7IGogKz0gMiApIHsKKyAgICAgICAg
ICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNlY3Rpb24gKi8KKyAgICAgICAgICAgIHRtcDJfczMy
eDQgPSB2c3VicV9zMzIoIHZsZDFxX3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyBqICsgMCBdICks
IHRtcDFfczMyeDQgKTsKKyAgICAgICAgICAgIHRtcDJfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5l
MF9uZW9uKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5zQVIyX1ExNFsgaiAtIDEgXSApLCB0bXAyX3Mz
Mng0LCB3YXJwaW5nX1ExNl9zMzJ4MiApOworICAgICAgICAgICAgdnN0MXFfczMyKCBwc0RlbERl
Yy0+c0FSMl9RMTRbIGogLSAxIF0sIHRtcDFfczMyeDQgKTsKKyAgICAgICAgICAgIG5fQVJfUTE0
X3MzMng0ID0gdmFkZHFfczMyKCBuX0FSX1ExNF9zMzJ4NCwgdnFkbXVsaHFfbGFuZV9zMzIoIHRt
cDFfczMyeDQsIEFSX3NocF9RMjhfczMyeDIsIDEgKSApOworICAgICAgICAgICAgLyogT3V0cHV0
IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHZzdWJxX3Mz
MiggdmxkMXFfczMyKCBwc0RlbERlYy0+c0FSMl9RMTRbIGogKyAxIF0gKSwgdG1wMl9zMzJ4NCAp
OworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHNpbGtfU01MQVdCX2xhbmUwX25lb24oIHZsZDFx
X3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyBqICsgMCBdICksIHRtcDFfczMyeDQsIHdhcnBpbmdf
UTE2X3MzMngyICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5zQVIyX1ExNFsg
aiArIDAgXSwgdG1wMl9zMzJ4NCApOworICAgICAgICAgICAgQVJfc2hwX1EyOF9zMzJ4MiA9IHZs
ZDFfczMyKCAmQVJfc2hwX1EyOFsgaiBdICk7CisgICAgICAgICAgICBuX0FSX1ExNF9zMzJ4NCA9
IHZhZGRxX3MzMiggbl9BUl9RMTRfczMyeDQsIHZxZG11bGhxX2xhbmVfczMyKCB0bXAyX3MzMng0
LCBBUl9zaHBfUTI4X3MzMngyLCAwICkgKTsKKyAgICAgICAgfQorICAgICAgICB2c3QxcV9zMzIo
IHBzRGVsRGVjLT5zQVIyX1ExNFsgc2hhcGluZ0xQQ09yZGVyIC0gMSBdLCB0bXAxX3MzMng0ICk7
CisgICAgICAgIG5fQVJfUTE0X3MzMng0ID0gdmFkZHFfczMyKCBuX0FSX1ExNF9zMzJ4NCwgdnFk
bXVsaHFfbGFuZV9zMzIoIHRtcDFfczMyeDQsIEFSX3NocF9RMjhfczMyeDIsIDEgKSApOworICAg
ICAgICBuX0FSX1ExNF9zMzJ4NCA9IHZzaGxxX25fczMyKCBuX0FSX1ExNF9zMzJ4NCwgMSApOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBRMTEgLT4gUTEyICovCisgICAgICAgIG5f
QVJfUTE0X3MzMng0ID0gdmFkZHFfczMyKCBuX0FSX1ExNF9zMzJ4NCwgdnFkbXVsaHFfbl9zMzIo
IHZsZDFxX3MzMiggcHNEZWxEZWMtPkxGX0FSX1ExNCApLCBzaWxrX0xTSElGVDMyKCBUaWx0X1Ex
NCwgMTYgKSA+PiAxICkgKTsgICAgIC8qIFExMiAqLworICAgICAgICBuX0FSX1ExNF9zMzJ4NCA9
IHZzaGxxX25fczMyKCBuX0FSX1ExNF9zMzJ4NCwgMiApOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBRMTIgLT4gUTE0ICovCisgICAgICAgIG5fTEZfUTE0X3MzMng0ID0gdnFkbXVs
aHFfbl9zMzIoIHZsZDFxX3MzMiggcHNEZWxEZWMtPlNoYXBlX1ExNFsgKnNtcGxfYnVmX2lkeCBd
ICksIExGX3NocF9RMjkgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIFExMiAqLworICAgICAgICBuX0xGX1ExNF9zMzJ4NCA9IHZhZGRxX3MzMiggbl9MRl9RMTRf
czMyeDQsIHZxZG11bGhxX25fczMyKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5MRl9BUl9RMTQgKSwg
c2lsa19MU0hJRlQzMiggTEZfc2hwX1ExNCA+PiAxNiAsIDE1ICkgKSApOyAvKiBRMTIgKi8KKyAg
ICAgICAgbl9MRl9RMTRfczMyeDQgPSB2c2hscV9uX3MzMiggbl9MRl9RMTRfczMyeDQsIDIgKTsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUTEyIC0+IFExNCAqLworCisgICAgICAg
IC8qIElucHV0IG1pbnVzIHByZWRpY3Rpb24gcGx1cyBub2lzZSBmZWVkYmFjayAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICAgICAgLyogciA9IHhbIGkgXSAtIExUUF9wcmVkIC0gTFBDX3By
ZWQgKyBuX0FSICsgbl9UaWx0ICsgbl9MRiArIG5fTFRQICAqLworICAgICAgICB0bXAxX3MzMng0
ID0gdmFkZHFfczMyKCBuX0FSX1ExNF9zMzJ4NCwgbl9MRl9RMTRfczMyeDQgKTsgICAgICAgICAg
ICAgICAvKiBRMTQgKi8KKyAgICAgICAgdG1wMl9zMzJ4NCA9IHZhZGRxX3MzMiggdmR1cHFfbl9z
MzIoIG5fTFRQX1ExNCApLCBMUENfcHJlZF9RMTRfczMyeDQgKTsgLyogUTEzICovCisgICAgICAg
IHRtcDFfczMyeDQgPSB2c3VicV9zMzIoIHRtcDJfczMyeDQsIHRtcDFfczMyeDQgKTsgICAgICAg
ICAgICAgICAgICAgICAgIC8qIFExMyAqLworICAgICAgICB0bXAxX3MzMng0ID0gdnJzaHJxX25f
czMyKCB0bXAxX3MzMng0LCA0ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBRMTAg
Ki8KKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZzdWJxX3MzMiggdmR1cHFfbl9zMzIoIHhfUTEwWyBp
IF0gKSwgdG1wMV9zMzJ4NCApOyAgICAgICAgLyogcmVzaWR1YWwgZXJyb3IgUTEwICovCisKKyAg
ICAgICAgLyogRmxpcCBzaWduIGRlcGVuZGluZyBvbiBkaXRoZXIgKi8KKyAgICAgICAgc2lnbl9z
MzJ4NCA9IHZyZWludGVycHJldHFfczMyX3UzMiggdmNsdHFfczMyKCBTZWVkX3MzMng0LCB2ZHVw
cV9uX3MzMiggMCApICkgKTsKKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZlb3JxX3MzMiggdG1wMV9z
MzJ4NCwgc2lnbl9zMzJ4NCApOworICAgICAgICB0bXAxX3MzMng0ID0gdnN1YnFfczMyKCB0bXAx
X3MzMng0LCBzaWduX3MzMng0ICk7CisgICAgICAgIHRtcDFfczMyeDQgPSB2bWF4cV9zMzIoIHRt
cDFfczMyeDQsIHZkdXBxX25fczMyKCAtKCAzMSA8PCAxMCApICkgKTsKKyAgICAgICAgdG1wMV9z
MzJ4NCA9IHZtaW5xX3MzMiggdG1wMV9zMzJ4NCwgdmR1cHFfbl9zMzIoIDMwIDw8IDEwICkgKTsK
KyAgICAgICAgcl9RMTBfczE2eDQgPSB2bW92bl9zMzIoIHRtcDFfczMyeDQgKTsKKworICAgICAg
ICAvKiBGaW5kIHR3byBxdWFudGl6YXRpb24gbGV2ZWwgY2FuZGlkYXRlcyBhbmQgbWVhc3VyZSB0
aGVpciByYXRlLWRpc3RvcnRpb24gKi8KKyAgICAgICAgeworICAgICAgICAgICAgaW50MTZ4NF90
IHExX1ExMF9zMTZ4NCA9IHZzdWJfczE2KCByX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNiggb2Zmc2V0
X1ExMCApICk7CisgICAgICAgICAgICBpbnQxNng0X3QgcTFfUTBfczE2eDQgPSB2c2hyX25fczE2
KCBxMV9RMTBfczE2eDQsIDEwICk7CisgICAgICAgICAgICBpbnQxNng0X3QgcTJfUTEwX3MxNng0
OworICAgICAgICAgICAgaW50MzJ4NF90IHJkMV9RMTBfczMyeDQsIHJkMl9RMTBfczMyeDQ7Cisg
ICAgICAgICAgICB1aW50MzJ4NF90IHRfdTMyeDQ7CisKKyAgICAgICAgICAgIGlmKCBMYW1iZGFf
UTEwID4gMjA0OCApIHsKKyAgICAgICAgICAgICAgICAvKiBGb3IgYWdncmVzc2l2ZSBSRE8sIHRo
ZSBiaWFzIGJlY29tZXMgbW9yZSB0aGFuIG9uZSBwdWxzZS4gKi8KKyAgICAgICAgICAgICAgICBj
b25zdCBpbnQgcmRvX29mZnNldCA9IExhbWJkYV9RMTAvMiAtIDUxMjsKKyAgICAgICAgICAgICAg
ICBjb25zdCB1aW50MTZ4NF90IGdyZWF0ZXJUaGFuUmRvID0gdmNndF9zMTYoIHExX1ExMF9zMTZ4
NCwgdmR1cF9uX3MxNiggcmRvX29mZnNldCApICk7CisgICAgICAgICAgICAgICAgY29uc3QgdWlu
dDE2eDRfdCBsZXNzVGhhbk1pbnVzUmRvID0gdmNsdF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9u
X3MxNiggLXJkb19vZmZzZXQgKSApOworICAgICAgICAgICAgICAgIC8qIElmIExhbWJkYV9RMTAg
PiAzMjc2NywgdGhlbiBxMV9RMCwgcTFfUTEwIGFuZCBxMl9RMTAgbXVzdCBjaGFuZ2UgdG8gMzIt
Yml0LiAqLworICAgICAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBMYW1iZGFfUTEwIDw9IDMyNzY3
ICk7CisKKyAgICAgICAgICAgICAgICBxMV9RMF9zMTZ4NCA9IHZyZWludGVycHJldF9zMTZfdTE2
KCB2Y2x0X3MxNiggcTFfUTEwX3MxNng0LCB2ZHVwX25fczE2KCAwICkgKSApOworICAgICAgICAg
ICAgICAgIHExX1EwX3MxNng0ID0gdmJzbF9zMTYoIGdyZWF0ZXJUaGFuUmRvLCB2c3ViX3MxNigg
cTFfUTEwX3MxNng0LCB2ZHVwX25fczE2KCByZG9fb2Zmc2V0ICkgKSwgcTFfUTBfczE2eDQgKTsK
KyAgICAgICAgICAgICAgICBxMV9RMF9zMTZ4NCA9IHZic2xfczE2KCBsZXNzVGhhbk1pbnVzUmRv
LCB2YWRkX3MxNiggcTFfUTEwX3MxNng0LCB2ZHVwX25fczE2KCByZG9fb2Zmc2V0ICkgKSwgcTFf
UTBfczE2eDQgKTsKKyAgICAgICAgICAgICAgICBxMV9RMF9zMTZ4NCA9IHZzaHJfbl9zMTYoIHEx
X1EwX3MxNng0LCAxMCApOworICAgICAgICAgICAgfQorICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgIGNvbnN0IHVpbnQxNng0X3QgZXF1YWwwX3UxNng0ID0gdmNlcV9zMTYoIHExX1EwX3Mx
Nng0LCB2ZHVwX25fczE2KCAwICkgKTsKKyAgICAgICAgICAgICAgICBjb25zdCB1aW50MTZ4NF90
IGVxdWFsTWludXMxX3UxNng0ID0gdmNlcV9zMTYoIHExX1EwX3MxNng0LCB2ZHVwX25fczE2KCAt
MSApICk7CisgICAgICAgICAgICAgICAgY29uc3QgdWludDE2eDRfdCBsZXNzVGhhbk1pbnVzMV91
MTZ4NCA9IHZjbHRfczE2KCBxMV9RMF9zMTZ4NCwgdmR1cF9uX3MxNiggLTEgKSApOworICAgICAg
ICAgICAgICAgIGludDE2eDRfdCB0bXAxX3MxNng0LCB0bXAyX3MxNng0OworCisgICAgICAgICAg
ICAgICAgcTFfUTEwX3MxNng0ID0gdnNobF9uX3MxNiggcTFfUTBfczE2eDQsIDEwICk7CisgICAg
ICAgICAgICAgICAgdG1wMV9zMTZ4NCA9IHZhZGRfczE2KCBxMV9RMTBfczE2eDQsIHZkdXBfbl9z
MTYoIG9mZnNldF9RMTAgLSBRVUFOVF9MRVZFTF9BREpVU1RfUTEwICkgKTsKKyAgICAgICAgICAg
ICAgICBxMV9RMTBfczE2eDQgPSB2YWRkX3MxNiggcTFfUTEwX3MxNng0LCB2ZHVwX25fczE2KCBv
ZmZzZXRfUTEwICsgUVVBTlRfTEVWRUxfQURKVVNUX1ExMCApICk7CisgICAgICAgICAgICAgICAg
cTFfUTEwX3MxNng0ID0gdmJzbF9zMTYoIGxlc3NUaGFuTWludXMxX3UxNng0LCBxMV9RMTBfczE2
eDQsIHRtcDFfczE2eDQgKTsKKyAgICAgICAgICAgICAgICBxMV9RMTBfczE2eDQgPSB2YnNsX3Mx
NiggZXF1YWwwX3UxNng0LCB2ZHVwX25fczE2KCBvZmZzZXRfUTEwICksIHExX1ExMF9zMTZ4NCAp
OworICAgICAgICAgICAgICAgIHExX1ExMF9zMTZ4NCA9IHZic2xfczE2KCBlcXVhbE1pbnVzMV91
MTZ4NCwgdmR1cF9uX3MxNiggb2Zmc2V0X1ExMCAtICggMTAyNCAtIFFVQU5UX0xFVkVMX0FESlVT
VF9RMTAgKSApLCBxMV9RMTBfczE2eDQgKTsKKyAgICAgICAgICAgICAgICBxMl9RMTBfczE2eDQg
PSB2YWRkX3MxNiggcTFfUTEwX3MxNng0LCB2ZHVwX25fczE2KCAxMDI0ICkgKTsKKyAgICAgICAg
ICAgICAgICBxMl9RMTBfczE2eDQgPSB2YnNsX3MxNiggZXF1YWwwX3UxNng0LCB2ZHVwX25fczE2
KCBvZmZzZXRfUTEwICsgMTAyNCAtIFFVQU5UX0xFVkVMX0FESlVTVF9RMTAgKSwgcTJfUTEwX3Mx
Nng0ICk7CisgICAgICAgICAgICAgICAgcTJfUTEwX3MxNng0ID0gdmJzbF9zMTYoIGVxdWFsTWlu
dXMxX3UxNng0LCB2ZHVwX25fczE2KCBvZmZzZXRfUTEwICksIHEyX1ExMF9zMTZ4NCApOworICAg
ICAgICAgICAgICAgIHRtcDFfczE2eDQgPSBxMV9RMTBfczE2eDQ7CisgICAgICAgICAgICAgICAg
dG1wMl9zMTZ4NCA9IHEyX1ExMF9zMTZ4NDsKKyAgICAgICAgICAgICAgICB0bXAxX3MxNng0ID0g
dmJzbF9zMTYoIHZvcnJfdTE2KCBlcXVhbE1pbnVzMV91MTZ4NCwgbGVzc1RoYW5NaW51czFfdTE2
eDQgKSwgdm5lZ19zMTYoIHRtcDFfczE2eDQgKSwgdG1wMV9zMTZ4NCApOworICAgICAgICAgICAg
ICAgIHRtcDJfczE2eDQgPSB2YnNsX3MxNiggbGVzc1RoYW5NaW51czFfdTE2eDQsIHZuZWdfczE2
KCB0bXAyX3MxNng0ICksIHRtcDJfczE2eDQgKTsKKyAgICAgICAgICAgICAgICByZDFfUTEwX3Mz
Mng0ID0gdm11bGxfczE2KCB0bXAxX3MxNng0LCB2ZHVwX25fczE2KCBMYW1iZGFfUTEwICkgKTsK
KyAgICAgICAgICAgICAgICByZDJfUTEwX3MzMng0ID0gdm11bGxfczE2KCB0bXAyX3MxNng0LCB2
ZHVwX25fczE2KCBMYW1iZGFfUTEwICkgKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
cnJfUTEwX3MxNng0ID0gdnN1Yl9zMTYoIHJfUTEwX3MxNng0LCBxMV9RMTBfczE2eDQgKTsKKyAg
ICAgICAgICAgIHJkMV9RMTBfczMyeDQgPSB2bWxhbF9zMTYoIHJkMV9RMTBfczMyeDQsIHJyX1Ex
MF9zMTZ4NCwgcnJfUTEwX3MxNng0ICk7CisgICAgICAgICAgICByZDFfUTEwX3MzMng0ID0gdnNo
cnFfbl9zMzIoIHJkMV9RMTBfczMyeDQsIDEwICk7CisKKyAgICAgICAgICAgIHJyX1ExMF9zMTZ4
NCA9IHZzdWJfczE2KCByX1ExMF9zMTZ4NCwgcTJfUTEwX3MxNng0ICk7CisgICAgICAgICAgICBy
ZDJfUTEwX3MzMng0ID0gdm1sYWxfczE2KCByZDJfUTEwX3MzMng0LCBycl9RMTBfczE2eDQsIHJy
X1ExMF9zMTZ4NCApOworICAgICAgICAgICAgcmQyX1ExMF9zMzJ4NCA9IHZzaHJxX25fczMyKCBy
ZDJfUTEwX3MzMng0LCAxMCApOworCisgICAgICAgICAgICB0bXAyX3MzMng0ID0gdmxkMXFfczMy
KCBwc0RlbERlYy0+UkRfUTEwICk7CisgICAgICAgICAgICB0bXAxX3MzMng0ID0gdmFkZHFfczMy
KCB0bXAyX3MzMng0LCB2bWlucV9zMzIoIHJkMV9RMTBfczMyeDQsIHJkMl9RMTBfczMyeDQgKSAp
OworICAgICAgICAgICAgdG1wMl9zMzJ4NCA9IHZhZGRxX3MzMiggdG1wMl9zMzJ4NCwgdm1heHFf
czMyKCByZDFfUTEwX3MzMng0LCByZDJfUTEwX3MzMng0ICkgKTsKKyAgICAgICAgICAgIHZzdDFx
X3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLlJEX1ExMCwgdG1wMV9zMzJ4NCApOworICAgICAgICAg
ICAgdnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAxIF0uUkRfUTEwLCB0bXAyX3MzMng0ICk7Cisg
ICAgICAgICAgICB0X3UzMng0ID0gdmNsdHFfczMyKCByZDFfUTEwX3MzMng0LCByZDJfUTEwX3Mz
Mng0ICk7CisgICAgICAgICAgICB0bXAxX3MzMng0ID0gdmJzbHFfczMyKCB0X3UzMng0LCB2bW92
bF9zMTYoIHExX1ExMF9zMTZ4NCApLCB2bW92bF9zMTYoIHEyX1ExMF9zMTZ4NCApICk7CisgICAg
ICAgICAgICB0bXAyX3MzMng0ID0gdmJzbHFfczMyKCB0X3UzMng0LCB2bW92bF9zMTYoIHEyX1Ex
MF9zMTZ4NCApLCB2bW92bF9zMTYoIHExX1ExMF9zMTZ4NCApICk7CisgICAgICAgICAgICB2c3Qx
cV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5RX1ExMCwgdG1wMV9zMzJ4NCApOworICAgICAgICAg
ICAgdnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAxIF0uUV9RMTAsIHRtcDJfczMyeDQgKTsKKyAg
ICAgICAgfQorCisgICAgICAgIHsKKyAgICAgICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMgZm9yIGJl
c3QgcXVhbnRpemF0aW9uICovCisgICAgICAgICAgICBpbnQzMng0X3QgZXhjX1ExNF9zMzJ4NCwg
TFBDX2V4Y19RMTRfczMyeDQsIHhxX1ExNF9zMzJ4NCwgc0xGX0FSX3NocF9RMTRfczMyeDQ7CisK
KyAgICAgICAgICAgIC8qIFF1YW50aXplZCBleGNpdGF0aW9uICovCisgICAgICAgICAgICBleGNf
UTE0X3MzMng0ID0gdnNobHFfbl9zMzIoIHRtcDFfczMyeDQsIDQgKTsKKyAgICAgICAgICAgIGV4
Y19RMTRfczMyeDQgPSB2ZW9ycV9zMzIoIGV4Y19RMTRfczMyeDQsIHNpZ25fczMyeDQgKTsKKyAg
ICAgICAgICAgIGV4Y19RMTRfczMyeDQgPSB2c3VicV9zMzIoIGV4Y19RMTRfczMyeDQsIHNpZ25f
czMyeDQgKTsKKworICAgICAgICAgICAgLyogQWRkIHByZWRpY3Rpb25zICovCisgICAgICAgICAg
ICBMUENfZXhjX1ExNF9zMzJ4NCA9IHZhZGRxX3MzMiggZXhjX1ExNF9zMzJ4NCwgdmR1cHFfbl9z
MzIoIExUUF9wcmVkX1ExNCApICk7CisgICAgICAgICAgICB4cV9RMTRfczMyeDQgICAgICA9IHZh
ZGRxX3MzMiggTFBDX2V4Y19RMTRfczMyeDQsIExQQ19wcmVkX1ExNF9zMzJ4NCApOworCisgICAg
ICAgICAgICAvKiBVcGRhdGUgc3RhdGVzICovCisgICAgICAgICAgICB0bXAxX3MzMng0ID0gdnN1
YnFfczMyKCB4cV9RMTRfczMyeDQsIHZzaGxxX25fczMyKCB2ZHVwcV9uX3MzMiggeF9RMTBbIGkg
XSApLCA0ICkgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLkRp
ZmZfUTE0LCB0bXAxX3MzMng0ICk7CisgICAgICAgICAgICBzTEZfQVJfc2hwX1ExNF9zMzJ4NCA9
IHZzdWJxX3MzMiggdG1wMV9zMzJ4NCwgbl9BUl9RMTRfczMyeDQgKTsKKyAgICAgICAgICAgIHZz
dDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLnNMVFBfc2hwX1ExNCwgdnN1YnFfczMyKCBzTEZf
QVJfc2hwX1ExNF9zMzJ4NCwgbl9MRl9RMTRfczMyeDQgKSApOworICAgICAgICAgICAgdnN0MXFf
czMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uTEZfQVJfUTE0LCBzTEZfQVJfc2hwX1ExNF9zMzJ4NCAp
OworICAgICAgICAgICAgdnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uTFBDX2V4Y19RMTQs
IExQQ19leGNfUTE0X3MzMng0ICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3Rh
dGVbIDAgXS54cV9RMTQsIHhxX1ExNF9zMzJ4NCApOworCisgICAgICAgICAgICAvKiBRdWFudGl6
ZWQgZXhjaXRhdGlvbiAqLworICAgICAgICAgICAgZXhjX1ExNF9zMzJ4NCA9IHZzaGxxX25fczMy
KCB0bXAyX3MzMng0LCA0ICk7CisgICAgICAgICAgICBleGNfUTE0X3MzMng0ID0gdmVvcnFfczMy
KCBleGNfUTE0X3MzMng0LCBzaWduX3MzMng0ICk7CisgICAgICAgICAgICBleGNfUTE0X3MzMng0
ID0gdnN1YnFfczMyKCBleGNfUTE0X3MzMng0LCBzaWduX3MzMng0ICk7CisKKyAgICAgICAgICAg
IC8qIEFkZCBwcmVkaWN0aW9ucyAqLworICAgICAgICAgICAgTFBDX2V4Y19RMTRfczMyeDQgPSB2
YWRkcV9zMzIoIGV4Y19RMTRfczMyeDQsIHZkdXBxX25fczMyKCBMVFBfcHJlZF9RMTQgKSApOwor
ICAgICAgICAgICAgeHFfUTE0X3MzMng0ICAgICAgPSB2YWRkcV9zMzIoIExQQ19leGNfUTE0X3Mz
Mng0LCBMUENfcHJlZF9RMTRfczMyeDQgKTsKKworICAgICAgICAgICAgLyogVXBkYXRlIHN0YXRl
cyAqLworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHZzdWJxX3MzMiggeHFfUTE0X3MzMng0LCB2
c2hscV9uX3MzMiggdmR1cHFfbl9zMzIoIHhfUTEwWyBpIF0gKSwgNCApICk7CisgICAgICAgICAg
ICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDEgXS5EaWZmX1ExNCwgdG1wMV9zMzJ4NCApOwor
ICAgICAgICAgICAgc0xGX0FSX3NocF9RMTRfczMyeDQgPSB2c3VicV9zMzIoIHRtcDFfczMyeDQs
IG5fQVJfUTE0X3MzMng0ICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVb
IDEgXS5zTFRQX3NocF9RMTQsIHZzdWJxX3MzMiggc0xGX0FSX3NocF9RMTRfczMyeDQsIG5fTEZf
UTE0X3MzMng0ICkgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMSBd
LkxGX0FSX1ExNCwgc0xGX0FSX3NocF9RMTRfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFxX3Mz
MiggcHNTYW1wbGVTdGF0ZVsgMSBdLkxQQ19leGNfUTE0LCBMUENfZXhjX1ExNF9zMzJ4NCApOwor
ICAgICAgICAgICAgdnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAxIF0ueHFfUTE0LCB4cV9RMTRf
czMyeDQgKTsKKyAgICAgICAgfQorCisgICAgICAgICpzbXBsX2J1Zl9pZHggPSAqc21wbF9idWZf
aWR4ID8gKCAqc21wbF9idWZfaWR4IC0gMSApIDogKCBERUNJU0lPTl9ERUxBWSAtIDEpOworICAg
ICAgICBsYXN0X3NtcGxlX2lkeCA9ICpzbXBsX2J1Zl9pZHggKyBkZWNpc2lvbkRlbGF5ICsgREVD
SVNJT05fREVMQVk7CisgICAgICAgIGlmKCBsYXN0X3NtcGxlX2lkeCA+PSBERUNJU0lPTl9ERUxB
WSApIGxhc3Rfc21wbGVfaWR4IC09IERFQ0lTSU9OX0RFTEFZOworICAgICAgICBpZiggbGFzdF9z
bXBsZV9pZHggPj0gREVDSVNJT05fREVMQVkgKSBsYXN0X3NtcGxlX2lkeCAtPSBERUNJU0lPTl9E
RUxBWTsKKworICAgICAgICAvKiBGaW5kIHdpbm5lciAqLworICAgICAgICBSRG1pbl9RMTAgPSBw
c1NhbXBsZVN0YXRlWyAwIF0uUkRfUTEwWyAwIF07CisgICAgICAgIFdpbm5lcl9pbmQgPSAwOwor
ICAgICAgICBmb3IoIGsgPSAxOyBrIDwgblN0YXRlc0RlbGF5ZWREZWNpc2lvbjsgaysrICkgewor
ICAgICAgICAgICAgaWYoIHBzU2FtcGxlU3RhdGVbIDAgXS5SRF9RMTBbIGsgXSA8IFJEbWluX1Ex
MCApIHsKKyAgICAgICAgICAgICAgICBSRG1pbl9RMTAgPSBwc1NhbXBsZVN0YXRlWyAwIF0uUkRf
UTEwWyBrIF07CisgICAgICAgICAgICAgICAgV2lubmVyX2luZCA9IGs7CisgICAgICAgICAgICB9
CisgICAgICAgIH0KKworICAgICAgICAvKiBJbmNyZWFzZSBSRCB2YWx1ZXMgb2YgZXhwaXJlZCBz
dGF0ZXMgKi8KKyAgICAgICAgeworICAgICAgICAgICAgdWludDMyeDRfdCB0X3UzMng0OworICAg
ICAgICAgICAgV2lubmVyX3JhbmRfc3RhdGUgPSBwc0RlbERlYy0+UmFuZFN0YXRlWyBsYXN0X3Nt
cGxlX2lkeCBdWyBXaW5uZXJfaW5kIF07CisgICAgICAgICAgICB0X3UzMng0ID0gdmNlcXFfczMy
KCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5SYW5kU3RhdGVbIGxhc3Rfc21wbGVfaWR4IF0gKSwgdmR1
cHFfbl9zMzIoIFdpbm5lcl9yYW5kX3N0YXRlICkgKTsKKyAgICAgICAgICAgIHRfdTMyeDQgPSB2
bXZucV91MzIoIHRfdTMyeDQgKTsKKyAgICAgICAgICAgIHRfdTMyeDQgPSB2c2hycV9uX3UzMigg
dF91MzJ4NCwgNSApOworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHZsZDFxX3MzMiggcHNTYW1w
bGVTdGF0ZVsgMCBdLlJEX1ExMCApOworICAgICAgICAgICAgdG1wMl9zMzJ4NCA9IHZsZDFxX3Mz
MiggcHNTYW1wbGVTdGF0ZVsgMSBdLlJEX1ExMCApOworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9
IHZhZGRxX3MzMiggdG1wMV9zMzJ4NCwgdnJlaW50ZXJwcmV0cV9zMzJfdTMyKCB0X3UzMng0ICkg
KTsKKyAgICAgICAgICAgIHRtcDJfczMyeDQgPSB2YWRkcV9zMzIoIHRtcDJfczMyeDQsIHZyZWlu
dGVycHJldHFfczMyX3UzMiggdF91MzJ4NCApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBz
U2FtcGxlU3RhdGVbIDAgXS5SRF9RMTAsIHRtcDFfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFx
X3MzMiggcHNTYW1wbGVTdGF0ZVsgMSBdLlJEX1ExMCwgdG1wMl9zMzJ4NCApOworCisgICAgICAg
ICAgICAvKiBGaW5kIHdvcnN0IGluIGZpcnN0IHNldCBhbmQgYmVzdCBpbiBzZWNvbmQgc2V0ICov
CisgICAgICAgICAgICBSRG1heF9RMTAgPSBwc1NhbXBsZVN0YXRlWyAwIF0uUkRfUTEwWyAwIF07
CisgICAgICAgICAgICBSRG1pbl9RMTAgPSBwc1NhbXBsZVN0YXRlWyAxIF0uUkRfUTEwWyAwIF07
CisgICAgICAgICAgICBSRG1heF9pbmQgPSAwOworICAgICAgICAgICAgUkRtaW5faW5kID0gMDsK
KyAgICAgICAgICAgIGZvciggayA9IDE7IGsgPCBuU3RhdGVzRGVsYXllZERlY2lzaW9uOyBrKysg
KSB7CisgICAgICAgICAgICAgICAgLyogZmluZCB3b3JzdCBpbiBmaXJzdCBzZXQgKi8KKyAgICAg
ICAgICAgICAgICBpZiggcHNTYW1wbGVTdGF0ZVsgMCBdLlJEX1ExMFsgayBdID4gUkRtYXhfUTEw
ICkgeworICAgICAgICAgICAgICAgICAgICBSRG1heF9RMTAgPSBwc1NhbXBsZVN0YXRlWyAwIF0u
UkRfUTEwWyBrIF07CisgICAgICAgICAgICAgICAgICAgIFJEbWF4X2luZCA9IGs7CisgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgICAgIC8qIGZpbmQgYmVzdCBpbiBzZWNvbmQgc2V0ICov
CisgICAgICAgICAgICAgICAgaWYoIHBzU2FtcGxlU3RhdGVbIDEgXS5SRF9RMTBbIGsgXSA8IFJE
bWluX1ExMCApIHsKKyAgICAgICAgICAgICAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0
ZVsgMSBdLlJEX1ExMFsgayBdOworICAgICAgICAgICAgICAgICAgICBSRG1pbl9pbmQgPSBrOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIC8q
IFJlcGxhY2UgYSBzdGF0ZSBpZiBiZXN0IGZyb20gc2Vjb25kIHNldCBvdXRwZXJmb3JtcyB3b3Jz
dCBpbiBmaXJzdCBzZXQgKi8KKyAgICAgICAgaWYoIFJEbWluX1ExMCA8IFJEbWF4X1ExMCApIHsK
KyAgICAgICAgICAgIG9wdXNfaW50MzIgKCpwdHIpW05FT05fTUFYX0RFTF9ERUNfU1RBVEVTXSA9
IHBzRGVsRGVjLT5SYW5kU3RhdGU7CisgICAgICAgICAgICBjb25zdCBpbnQgbnVtT3RoZXJzID0g
KGludCkoICggc2l6ZW9mKCBOU1FfZGVsX2RlY3Nfc3RydWN0ICkgLSBzaXplb2YoICggKE5TUV9k
ZWxfZGVjc19zdHJ1Y3QgKikwICktPnNMUENfUTE0ICkgKQorICAgICAgICAgICAgICAgIC8gKCBO
RU9OX01BWF9ERUxfREVDX1NUQVRFUyAqIHNpemVvZiggb3B1c19pbnQzMiApICkgKTsKKyAgICAg
ICAgICAgIC8qIE9ubHkgKCBwcmVkaWN0TFBDT3JkZXIgLSAxICkgb2Ygc0xQQ19RMTQgYnVmZmVy
IG5lZWQgdG8gYmUgdXBkYXRlZCwgdGhvdWdoIHRoZSBmaXJzdCBzZXZlcmFsICAgICAqLworICAg
ICAgICAgICAgLyogdXNlbGVzcyBzTFBDX1ExNFtdIHdpbGwgYmUgZGlmZmVyZW50IGNvbXBhcmlu
ZyB3aXRoIEMgd2hlbiBwcmVkaWN0TFBDT3JkZXIgPCBOU1FfTFBDX0JVRl9MRU5HVEguICovCisg
ICAgICAgICAgICAvKiBIZXJlIGp1c3QgdXBkYXRlIGNvbnN0YW50ICggTlNRX0xQQ19CVUZfTEVO
R1RIIC0gMSApIGZvciBzaW1wbGljaXR5LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICAgICAgICAgIGZvciggaiA9IGkgKyAxOyBqIDwgaSArIE5TUV9MUENfQlVGX0xFTkdUSDsg
aisrICkgeworICAgICAgICAgICAgICAgIHBzRGVsRGVjLT5zTFBDX1ExNFsgaiBdWyBSRG1heF9p
bmQgXSA9IHBzRGVsRGVjLT5zTFBDX1ExNFsgaiBdWyBSRG1pbl9pbmQgXTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgICAgIGZvciggaiA9IDA7IGogPCBudW1PdGhlcnM7IGorKyApIHsKKyAgICAg
ICAgICAgICAgICBwdHJbIGogXVsgUkRtYXhfaW5kIF0gPSBwdHJbIGogXVsgUkRtaW5faW5kIF07
CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIHBzU2FtcGxlU3RhdGVbIDAgXS5RX1ExMFsg
UkRtYXhfaW5kIF0gPSBwc1NhbXBsZVN0YXRlWyAxIF0uUV9RMTBbIFJEbWluX2luZCBdOworICAg
ICAgICAgICAgcHNTYW1wbGVTdGF0ZVsgMCBdLlJEX1ExMFsgUkRtYXhfaW5kIF0gPSBwc1NhbXBs
ZVN0YXRlWyAxIF0uUkRfUTEwWyBSRG1pbl9pbmQgXTsKKyAgICAgICAgICAgIHBzU2FtcGxlU3Rh
dGVbIDAgXS54cV9RMTRbIFJEbWF4X2luZCBdID0gcHNTYW1wbGVTdGF0ZVsgMSBdLnhxX1ExNFsg
UkRtaW5faW5kIF07CisgICAgICAgICAgICBwc1NhbXBsZVN0YXRlWyAwIF0uTEZfQVJfUTE0WyBS
RG1heF9pbmQgXSA9IHBzU2FtcGxlU3RhdGVbIDEgXS5MRl9BUl9RMTRbIFJEbWluX2luZCBdOwor
ICAgICAgICAgICAgcHNTYW1wbGVTdGF0ZVsgMCBdLkRpZmZfUTE0WyBSRG1heF9pbmQgXSA9IHBz
U2FtcGxlU3RhdGVbIDEgXS5EaWZmX1ExNFsgUkRtaW5faW5kIF07CisgICAgICAgICAgICBwc1Nh
bXBsZVN0YXRlWyAwIF0uc0xUUF9zaHBfUTE0WyBSRG1heF9pbmQgXSA9IHBzU2FtcGxlU3RhdGVb
IDEgXS5zTFRQX3NocF9RMTRbIFJEbWluX2luZCBdOworICAgICAgICAgICAgcHNTYW1wbGVTdGF0
ZVsgMCBdLkxQQ19leGNfUTE0WyBSRG1heF9pbmQgXSA9IHBzU2FtcGxlU3RhdGVbIDEgXS5MUENf
ZXhjX1ExNFsgUkRtaW5faW5kIF07CisgICAgICAgIH0KKworICAgICAgICAvKiBXcml0ZSBzYW1w
bGVzIGZyb20gd2lubmVyIHRvIG91dHB1dCBhbmQgbG9uZy10ZXJtIGZpbHRlciBzdGF0ZXMgKi8K
KyAgICAgICAgaWYoIHN1YmZyID4gMCB8fCBpID49IGRlY2lzaW9uRGVsYXkgKSB7CisgICAgICAg
ICAgICBwdWxzZXNbICBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50OClzaWxrX1JTSElG
VF9ST1VORCggcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5kIF0s
IDEwICk7CisgICAgICAgICAgICB4cVsgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDE2
KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKAorICAgICAgICAgICAgICAgIHNpbGtfU01V
TFdXKCBwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5kIF0sIGRl
bGF5ZWRHYWluX1ExMFsgbGFzdF9zbXBsZV9pZHggXSApLCA4ICkgKTsKKyAgICAgICAgICAgIE5T
US0+c0xUUF9zaHBfUTE0WyBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggLSBkZWNpc2lvbkRlbGF5IF0g
PSBwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5kIF07Cisg
ICAgICAgICAgICBzTFRQX1ExNVsgICAgICAgICAgTlNRLT5zTFRQX2J1Zl9pZHggICAgIC0gZGVj
aXNpb25EZWxheSBdID0gcHNEZWxEZWMtPlByZWRfUTE1WyAgbGFzdF9zbXBsZV9pZHggXVsgV2lu
bmVyX2luZCBdOworICAgICAgICB9CisgICAgICAgIE5TUS0+c0xUUF9zaHBfYnVmX2lkeCsrOwor
ICAgICAgICBOU1EtPnNMVFBfYnVmX2lkeCsrOworCisgICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMg
Ki8KKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+TEZfQVJfUTE0LCB2bGQxcV9zMzIoIHBz
U2FtcGxlU3RhdGVbIDAgXS5MRl9BUl9RMTQgKSApOworICAgICAgICB2c3QxcV9zMzIoIHBzRGVs
RGVjLT5EaWZmX1ExNCwgdmxkMXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uRGlmZl9RMTQgKSAp
OworICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5zTFBDX1ExNFsgTlNRX0xQQ19CVUZfTEVO
R1RIICsgaSBdLCB2bGQxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS54cV9RMTQgKSApOworICAg
ICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5YcV9RMTRbICpzbXBsX2J1Zl9pZHggXSwgdmxkMXFf
czMyKCBwc1NhbXBsZVN0YXRlWyAwIF0ueHFfUTE0ICkgKTsKKyAgICAgICAgdG1wMV9zMzJ4NCA9
IHZsZDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLlFfUTEwICk7CisgICAgICAgIHZzdDFxX3Mz
MiggcHNEZWxEZWMtPlFfUTEwWyAqc21wbF9idWZfaWR4IF0sIHRtcDFfczMyeDQgKTsKKyAgICAg
ICAgdnN0MXFfczMyKCBwc0RlbERlYy0+UHJlZF9RMTVbICpzbXBsX2J1Zl9pZHggXSwgdnNobHFf
bl9zMzIoIHZsZDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLkxQQ19leGNfUTE0ICksIDEgKSAp
OworICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5TaGFwZV9RMTRbICpzbXBsX2J1Zl9pZHgg
XSwgdmxkMXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uc0xUUF9zaHBfUTE0ICkgKTsKKyAgICAg
ICAgdG1wMV9zMzJ4NCA9IHZyc2hycV9uX3MzMiggdG1wMV9zMzJ4NCwgMTAgKTsKKyAgICAgICAg
dG1wMV9zMzJ4NCA9IHZhZGRxX3MzMiggdmxkMXFfczMyKCBwc0RlbERlYy0+U2VlZCApLCB0bXAx
X3MzMng0ICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlNlZWQsIHRtcDFfczMyeDQg
KTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+UmFuZFN0YXRlWyAqc21wbF9idWZfaWR4
IF0sIHRtcDFfczMyeDQgKTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+UkRfUTEwLCB2
bGQxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5SRF9RMTAgKSApOworICAgICAgICBkZWxheWVk
R2Fpbl9RMTBbICpzbXBsX2J1Zl9pZHggXSA9IEdhaW5fUTEwOworICAgIH0KKyAgICAvKiBVcGRh
dGUgTFBDIHN0YXRlcyAqLworICAgIHNpbGtfbWVtY3B5KCBwc0RlbERlYy0+c0xQQ19RMTRbIDAg
XSwgcHNEZWxEZWMtPnNMUENfUTE0WyBsZW5ndGggXSwgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMg
KiBOU1FfTFBDX0JVRl9MRU5HVEggKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOworCisgICAgUkVT
VE9SRV9TVEFDSzsKK30KKworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19TTVVMV0JfOF9u
ZW9uKAorICAgIGNvbnN0IG9wdXNfaW50MTYgKmEsCisgICAgY29uc3QgaW50MzJ4Ml90ICBiLAor
ICAgIG9wdXNfaW50MzIgICAgICAgKm8KKykKK3sKKyAgICBjb25zdCBpbnQxNng4X3QgYV9zMTZ4
OCA9IHZsZDFxX3MxNiggYSApOworICAgIGludDMyeDRfdCBvMF9zMzJ4NCwgbzFfczMyeDQ7CisK
KyAgICBvMF9zMzJ4NCA9IHZzaGxsX25fczE2KCB2Z2V0X2xvd19zMTYoIGFfczE2eDggKSwgMTUg
KTsKKyAgICBvMV9zMzJ4NCA9IHZzaGxsX25fczE2KCB2Z2V0X2hpZ2hfczE2KCBhX3MxNng4ICks
IDE1ICk7CisgICAgbzBfczMyeDQgPSB2cWRtdWxocV9sYW5lX3MzMiggbzBfczMyeDQsIGIsIDAg
KTsKKyAgICBvMV9zMzJ4NCA9IHZxZG11bGhxX2xhbmVfczMyKCBvMV9zMzJ4NCwgYiwgMCApOwor
ICAgIHZzdDFxX3MzMiggbywgbzBfczMyeDQgKTsKKyAgICB2c3QxcV9zMzIoIG8gKyA0LCBvMV9z
MzJ4NCApOworfQorCisvKiBPbmx5IHdvcmtzIHdoZW4gKCBiID49IC02NTUzNiApICYmICggYiA8
IDY1NTM2ICkuICovCitzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX1NNVUxXV19zbWFsbF9i
XzRfbmVvbigKKyAgICBvcHVzX2ludDMyICAgICAgICphLAorICAgIGNvbnN0IGludDMyeDJfdCAg
Yl9zMzJ4MikKK3sKKyAgICBpbnQzMng0X3Qgb19zMzJ4NDsKKworICAgIG9fczMyeDQgPSB2bGQx
cV9zMzIoIGEgKTsKKyAgICBvX3MzMng0ID0gdnFkbXVsaHFfbGFuZV9zMzIoIG9fczMyeDQsIGJf
czMyeDIsIDAgKTsKKyAgICB2c3QxcV9zMzIoIGEsIG9fczMyeDQgKTsKK30KKworLyogT25seSB3
b3JrcyB3aGVuICggYiA+PSAtNjU1MzYgKSAmJiAoIGIgPCA2NTUzNiApLiAqLworc3RhdGljIE9Q
VVNfSU5MSU5FIHZvaWQgc2lsa19TTVVMV1dfc21hbGxfYl84X25lb24oCisgICAgb3B1c19pbnQz
MiAgICAgICAqYSwKKyAgICBjb25zdCBpbnQzMngyX3QgIGJfczMyeDIKKykKK3sKKyAgICBpbnQz
Mng0X3QgbzBfczMyeDQsIG8xX3MzMng0OworCisgICAgbzBfczMyeDQgPSB2bGQxcV9zMzIoIGEg
KTsKKyAgICBvMV9zMzJ4NCA9IHZsZDFxX3MzMiggYSArIDQgKTsKKyAgICBvMF9zMzJ4NCA9IHZx
ZG11bGhxX2xhbmVfczMyKCBvMF9zMzJ4NCwgYl9zMzJ4MiwgMCApOworICAgIG8xX3MzMng0ID0g
dnFkbXVsaHFfbGFuZV9zMzIoIG8xX3MzMng0LCBiX3MzMngyLCAwICk7CisgICAgdnN0MXFfczMy
KCBhLCBvMF9zMzJ4NCApOworICAgIHZzdDFxX3MzMiggYSArIDQsIG8xX3MzMng0ICk7Cit9CisK
K3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfU01VTFdXXzRfbmVvbigKKyAgICBvcHVzX2lu
dDMyICAgICAgICphLAorICAgIGNvbnN0IGludDMyeDJfdCAgYl9zMzJ4MikKK3sKKyAgICBpbnQz
Mng0X3QgYV9zMzJ4NCwgb19zMzJ4NDsKKworICAgIGFfczMyeDQgPSB2bGQxcV9zMzIoIGEgKTsK
KyAgICBvX3MzMng0ID0gdnFkbXVsaHFfbGFuZV9zMzIoIGFfczMyeDQsIGJfczMyeDIsIDAgKTsK
KyAgICBvX3MzMng0ID0gdm1sYXFfbGFuZV9zMzIoIG9fczMyeDQsIGFfczMyeDQsIGJfczMyeDIs
IDEgKTsKKyAgICB2c3QxcV9zMzIoIGEsIG9fczMyeDQgKTsKK30KKworc3RhdGljIE9QVVNfSU5M
SU5FIHZvaWQgc2lsa19TTVVMV1dfOF9uZW9uKAorICAgIG9wdXNfaW50MzIgICAgICAgKmEsCisg
ICAgY29uc3QgaW50MzJ4Ml90ICBiX3MzMngyCispCit7CisgICAgaW50MzJ4NF90IGEwX3MzMng0
LCBhMV9zMzJ4NCwgbzBfczMyeDQsIG8xX3MzMng0OworCisgICAgYTBfczMyeDQgPSB2bGQxcV9z
MzIoIGEgKTsKKyAgICBhMV9zMzJ4NCA9IHZsZDFxX3MzMiggYSArIDQgKTsKKyAgICBvMF9zMzJ4
NCA9IHZxZG11bGhxX2xhbmVfczMyKCBhMF9zMzJ4NCwgYl9zMzJ4MiwgMCApOworICAgIG8xX3Mz
Mng0ID0gdnFkbXVsaHFfbGFuZV9zMzIoIGExX3MzMng0LCBiX3MzMngyLCAwICk7CisgICAgbzBf
czMyeDQgPSB2bWxhcV9sYW5lX3MzMiggbzBfczMyeDQsIGEwX3MzMng0LCBiX3MzMngyLCAxICk7
CisgICAgbzFfczMyeDQgPSB2bWxhcV9sYW5lX3MzMiggbzFfczMyeDQsIGExX3MzMng0LCBiX3Mz
MngyLCAxICk7CisgICAgdnN0MXFfczMyKCBhLCBvMF9zMzJ4NCApOworICAgIHZzdDFxX3MzMigg
YSArIDQsIG8xX3MzMng0ICk7Cit9CisKK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfU01V
TFdXX2xvb3BfbmVvbigKKyAgICBjb25zdCBvcHVzX2ludDE2ICphLAorICAgIGNvbnN0IG9wdXNf
aW50MzIgYiwKKyAgICBvcHVzX2ludDMyICAgICAgICpvLAorICAgIGNvbnN0IG9wdXNfaW50ICAg
bG9vcF9udW0KKykKK3sKKyAgICBvcHVzX2ludCBpOworICAgIGludDMyeDJfdCBiX3MzMngyOwor
CisgICAgYl9zMzJ4MiA9IHZkdXBfbl9zMzIoIGIgKTsKKyAgICBmb3IoIGkgPSAwOyBpIDwgbG9v
cF9udW0gLSA3OyBpICs9IDggKSB7CisgICAgICAgIHNpbGtfU01VTFdCXzhfbmVvbiggYSArIGks
IGJfczMyeDIsIG8gKyBpICk7CisgICAgfQorICAgIGZvciggOyBpIDwgbG9vcF9udW07IGkrKyAp
IHsKKyAgICAgICAgb1sgaSBdID0gc2lsa19TTVVMV1coIGFbIGkgXSwgYiApOworICAgIH0KK30K
Kworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3FfZGVsX2RlY19zY2FsZV9zdGF0ZXNf
bmVvbigKKyAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgKnBzRW5jQywgICAgICAgICAgICAg
ICAvKiBJICAgIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgc2ls
a19uc3Ffc3RhdGUgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Eg
c3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIE5TUV9kZWxfZGVjc19zdHJ1
Y3QgcHNEZWxEZWNbXSwgICAgICAgICAgICAgICAgIC8qIEkvTyAgRGVsYXllZCBkZWNpc2lvbiBz
dGF0ZXMgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIHgxNltdLCAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICB4X3NjX1ExMFtdLCAgICAgICAgICAgICAg
ICAgLyogTyAgICBJbnB1dCBzY2FsZWQgd2l0aCAxL0dhaW4gaW4gUTEwICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50MTYgICAgc0xUUFtdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUmUt
d2hpdGVuZWQgTFRQIHN0YXRlIGluIFEwICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAg
ICAgIHNMVFBfUTE1W10sICAgICAgICAgICAgICAgICAvKiBPICAgIExUUCBzdGF0ZSBtYXRjaGlu
ZyBzY2FsZWQgaW5wdXQgICAgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICBzdWJmciwgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBTdWJmcmFtZSBudW1iZXIgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgTFRQX3NjYWxlX1ExNCwgICAgICAgICAg
ICAgIC8qIEkgICAgTFRQIHN0YXRlIHNjYWxpbmcgICAgICAgICAgICAgICAgICAgKi8KKyAgICBj
b25zdCBvcHVzX2ludDMyICAgIEdhaW5zX1ExNlsgTUFYX05CX1NVQkZSIF0sICAvKiBJICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQg
ICAgICBwaXRjaExbIE1BWF9OQl9TVUJGUiBdLCAgICAgLyogSSAgICBQaXRjaCBsYWcgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgc2lnbmFsX3R5
cGUsICAgICAgICAgICAgICAgIC8qIEkgICAgU2lnbmFsIHR5cGUgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgIGRlY2lzaW9uRGVsYXkgICAgICAgICAg
ICAgICAvKiBJICAgIERlY2lzaW9uIGRlbGF5ICAgICAgICAgICAgICAgICAgICAgICovCispCit7
CisgICAgb3B1c19pbnQgICAgICAgICAgICBpLCBsYWc7CisgICAgb3B1c19pbnQzMiAgICAgICAg
ICBnYWluX2Fkal9RMTYsIGludl9nYWluX1EzMSwgaW52X2dhaW5fUTI2OworCisgICAgbGFnICAg
ICAgICAgID0gcGl0Y2hMWyBzdWJmciBdOworICAgIGludl9nYWluX1EzMSA9IHNpbGtfSU5WRVJT
RTMyX3ZhclEoIHNpbGtfbWF4KCBHYWluc19RMTZbIHN1YmZyIF0sIDEgKSwgNDcgKTsKKyAgICBz
aWxrX2Fzc2VydCggaW52X2dhaW5fUTMxICE9IDAgKTsKKworICAgIC8qIFNjYWxlIGlucHV0ICov
CisgICAgaW52X2dhaW5fUTI2ID0gc2lsa19SU0hJRlRfUk9VTkQoIGludl9nYWluX1EzMSwgNSAp
OworICAgIHNpbGtfU01VTFdXX2xvb3BfbmVvbiggeDE2LCBpbnZfZ2Fpbl9RMjYsIHhfc2NfUTEw
LCBwc0VuY0MtPnN1YmZyX2xlbmd0aCApOworCisgICAgLyogQWZ0ZXIgcmV3aGl0ZW5pbmcgdGhl
IExUUCBzdGF0ZSBpcyB1bi1zY2FsZWQsIHNvIHNjYWxlIHdpdGggaW52X2dhaW5fUTE2ICovCisg
ICAgaWYoIE5TUS0+cmV3aGl0ZV9mbGFnICkgeworICAgICAgICBpZiggc3ViZnIgPT0gMCApIHsK
KyAgICAgICAgICAgIC8qIERvIExUUCBkb3duc2NhbGluZyAqLworICAgICAgICAgICAgaW52X2dh
aW5fUTMxID0gc2lsa19MU0hJRlQoIHNpbGtfU01VTFdCKCBpbnZfZ2Fpbl9RMzEsIExUUF9zY2Fs
ZV9RMTQgKSwgMiApOworICAgICAgICB9CisgICAgICAgIHNpbGtfU01VTFdXX2xvb3BfbmVvbigg
c0xUUCArIE5TUS0+c0xUUF9idWZfaWR4IC0gbGFnIC0gTFRQX09SREVSIC8gMiwgaW52X2dhaW5f
UTMxLCBzTFRQX1ExNSArIE5TUS0+c0xUUF9idWZfaWR4IC0gbGFnIC0gTFRQX09SREVSIC8gMiwg
bGFnICsgTFRQX09SREVSIC8gMiApOworICAgIH0KKworICAgIC8qIEFkanVzdCBmb3IgY2hhbmdp
bmcgZ2FpbiAqLworICAgIGlmKCBHYWluc19RMTZbIHN1YmZyIF0gIT0gTlNRLT5wcmV2X2dhaW5f
UTE2ICkgeworICAgICAgICBpbnQzMngyX3QgZ2Fpbl9hZGpfUTE2X3MzMngyOworICAgICAgICBn
YWluX2Fkal9RMTYgPSBzaWxrX0RJVjMyX3ZhclEoIE5TUS0+cHJldl9nYWluX1ExNiwgR2FpbnNf
UTE2WyBzdWJmciBdLCAxNiApOworCisgICAgICAgIC8qIFNjYWxlIGxvbmctdGVybSBzaGFwaW5n
IHN0YXRlICovCisgICAgICAgIGlmKCAoIGdhaW5fYWRqX1ExNiA+PSAtNjU1MzYgKSAmJiAoIGdh
aW5fYWRqX1ExNiA8IDY1NTM2ICkgKSB7CisgICAgICAgICAgICBnYWluX2Fkal9RMTZfczMyeDIg
PSB2ZHVwX25fczMyKCBzaWxrX0xTSElGVDMyKCBnYWluX2Fkal9RMTYsIDE1ICkgKTsKKyAgICAg
ICAgICAgIGZvciggaSA9IE5TUS0+c0xUUF9zaHBfYnVmX2lkeCAtIHBzRW5jQy0+bHRwX21lbV9s
ZW5ndGg7IGkgPCBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggLSA3OyBpICs9IDggKSB7CisgICAgICAg
ICAgICAgICAgc2lsa19TTVVMV1dfc21hbGxfYl84X25lb24oIE5TUS0+c0xUUF9zaHBfUTE0ICsg
aSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBmb3Io
IDsgaSA8IE5TUS0+c0xUUF9zaHBfYnVmX2lkeDsgaSsrICkgeworICAgICAgICAgICAgICAgIE5T
US0+c0xUUF9zaHBfUTE0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9hZGpfUTE2LCBOU1EtPnNM
VFBfc2hwX1ExNFsgaSBdICk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC8qIFNjYWxl
IGxvbmctdGVybSBwcmVkaWN0aW9uIHN0YXRlICovCisgICAgICAgICAgICBpZiggc2lnbmFsX3R5
cGUgPT0gVFlQRV9WT0lDRUQgJiYgTlNRLT5yZXdoaXRlX2ZsYWcgPT0gMCApIHsKKyAgICAgICAg
ICAgICAgICBmb3IoIGkgPSBOU1EtPnNMVFBfYnVmX2lkeCAtIGxhZyAtIExUUF9PUkRFUiAvIDI7
IGkgPCBOU1EtPnNMVFBfYnVmX2lkeCAtIGRlY2lzaW9uRGVsYXkgLSA3OyBpICs9IDggKSB7Cisg
ICAgICAgICAgICAgICAgICAgIHNpbGtfU01VTFdXX3NtYWxsX2JfOF9uZW9uKCBzTFRQX1ExNSAr
IGksIGdhaW5fYWRqX1ExNl9zMzJ4MiApOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
ICAgICBmb3IoIDsgaSA8IE5TUS0+c0xUUF9idWZfaWR4IC0gZGVjaXNpb25EZWxheTsgaSsrICkg
eworICAgICAgICAgICAgICAgICAgICBzTFRQX1ExNVsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5f
YWRqX1ExNiwgc0xUUF9RMTVbIGkgXSApOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgLyogU2NhbGUgc2NhbGFyIHN0YXRlcyAqLworICAgICAgICAgICAg
c2lsa19TTVVMV1dfc21hbGxfYl80X25lb24oIHBzRGVsRGVjLT5MRl9BUl9RMTQsIGdhaW5fYWRq
X1ExNl9zMzJ4MiApOworICAgICAgICAgICAgc2lsa19TTVVMV1dfc21hbGxfYl80X25lb24oIHBz
RGVsRGVjLT5EaWZmX1ExNCwgIGdhaW5fYWRqX1ExNl9zMzJ4MiApOworCisgICAgICAgICAgICAv
KiBTY2FsZSBzaG9ydC10ZXJtIHByZWRpY3Rpb24gYW5kIHNoYXBpbmcgc3RhdGVzICovCisgICAg
ICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTlNRX0xQQ19CVUZfTEVOR1RIOyBpKysgKSB7CisgICAg
ICAgICAgICAgICAgc2lsa19TTVVMV1dfc21hbGxfYl80X25lb24oIHBzRGVsRGVjLT5zTFBDX1Ex
NFsgaSBdLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgZm9yKCBpID0gMDsgaSA8IE1BWF9TSEFQRV9MUENfT1JERVI7IGkrKyApIHsKKyAgICAgICAg
ICAgICAgICBzaWxrX1NNVUxXV19zbWFsbF9iXzRfbmVvbiggcHNEZWxEZWMtPnNBUjJfUTE0WyBp
IF0sIGdhaW5fYWRqX1ExNl9zMzJ4MiApOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBm
b3IoIGkgPSAwOyBpIDwgREVDSVNJT05fREVMQVk7IGkrKyApIHsKKyAgICAgICAgICAgICAgICBz
aWxrX1NNVUxXV19zbWFsbF9iXzRfbmVvbiggcHNEZWxEZWMtPlByZWRfUTE1WyAgaSBdLCBnYWlu
X2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgICAgICBzaWxrX1NNVUxXV19zbWFsbF9iXzRf
bmVvbiggcHNEZWxEZWMtPlNoYXBlX1ExNFsgaSBdLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGdhaW5fYWRqX1ExNl9z
MzJ4MiA9IHZkdXBfbl9zMzIoIHNpbGtfTFNISUZUMzIoIGdhaW5fYWRqX1ExNiAmIDB4MDAwMEZG
RkYsIDE1ICkgKTsKKyAgICAgICAgICAgIGdhaW5fYWRqX1ExNl9zMzJ4MiA9IHZzZXRfbGFuZV9z
MzIoIGdhaW5fYWRqX1ExNiA+PiAxNiwgZ2Fpbl9hZGpfUTE2X3MzMngyLCAxICk7CisgICAgICAg
ICAgICBmb3IoIGkgPSBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggLSBwc0VuY0MtPmx0cF9tZW1fbGVu
Z3RoOyBpIDwgTlNRLT5zTFRQX3NocF9idWZfaWR4IC0gNzsgaSArPSA4ICkgeworICAgICAgICAg
ICAgICAgIHNpbGtfU01VTFdXXzhfbmVvbiggTlNRLT5zTFRQX3NocF9RMTQgKyBpLCBnYWluX2Fk
al9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGZvciggOyBpIDwgTlNR
LT5zTFRQX3NocF9idWZfaWR4OyBpKysgKSB7CisgICAgICAgICAgICAgICAgTlNRLT5zTFRQX3No
cF9RMTRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIE5TUS0+c0xUUF9zaHBfUTE0
WyBpIF0gKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLyogU2NhbGUgbG9uZy10ZXJt
IHByZWRpY3Rpb24gc3RhdGUgKi8KKyAgICAgICAgICAgIGlmKCBzaWduYWxfdHlwZSA9PSBUWVBF
X1ZPSUNFRCAmJiBOU1EtPnJld2hpdGVfZmxhZyA9PSAwICkgeworICAgICAgICAgICAgICAgIGZv
ciggaSA9IE5TUS0+c0xUUF9idWZfaWR4IC0gbGFnIC0gTFRQX09SREVSIC8gMjsgaSA8IE5TUS0+
c0xUUF9idWZfaWR4IC0gZGVjaXNpb25EZWxheSAtIDc7IGkgKz0gOCApIHsKKyAgICAgICAgICAg
ICAgICAgICAgc2lsa19TTVVMV1dfOF9uZW9uKCBzTFRQX1ExNSArIGksIGdhaW5fYWRqX1ExNl9z
MzJ4MiApOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBmb3IoIDsgaSA8IE5T
US0+c0xUUF9idWZfaWR4IC0gZGVjaXNpb25EZWxheTsgaSsrICkgeworICAgICAgICAgICAgICAg
ICAgICBzTFRQX1ExNVsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgc0xUUF9RMTVb
IGkgXSApOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
LyogU2NhbGUgc2NhbGFyIHN0YXRlcyAqLworICAgICAgICAgICAgc2lsa19TTVVMV1dfNF9uZW9u
KCBwc0RlbERlYy0+TEZfQVJfUTE0LCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAg
IHNpbGtfU01VTFdXXzRfbmVvbiggcHNEZWxEZWMtPkRpZmZfUTE0LCAgZ2Fpbl9hZGpfUTE2X3Mz
MngyICk7CisKKyAgICAgICAgICAgIC8qIFNjYWxlIHNob3J0LXRlcm0gcHJlZGljdGlvbiBhbmQg
c2hhcGluZyBzdGF0ZXMgKi8KKyAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBOU1FfTFBDX0JV
Rl9MRU5HVEg7IGkrKyApIHsKKyAgICAgICAgICAgICAgICBzaWxrX1NNVUxXV180X25lb24oIHBz
RGVsRGVjLT5zTFBDX1ExNFsgaSBdLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IE1BWF9TSEFQRV9MUENfT1JERVI7IGkr
KyApIHsKKyAgICAgICAgICAgICAgICBzaWxrX1NNVUxXV180X25lb24oIHBzRGVsRGVjLT5zQVIy
X1ExNFsgaSBdLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIH0KKworICAgICAg
ICAgICAgZm9yKCBpID0gMDsgaSA8IERFQ0lTSU9OX0RFTEFZOyBpKysgKSB7CisgICAgICAgICAg
ICAgICAgc2lsa19TTVVMV1dfNF9uZW9uKCBwc0RlbERlYy0+UHJlZF9RMTVbICBpIF0sIGdhaW5f
YWRqX1ExNl9zMzJ4MiApOworICAgICAgICAgICAgICAgIHNpbGtfU01VTFdXXzRfbmVvbiggcHNE
ZWxEZWMtPlNoYXBlX1ExNFsgaSBdLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgfQorCisgICAgICAgIC8qIFNhdmUgaW52ZXJzZSBnYWluICovCisgICAgICAg
IE5TUS0+cHJldl9nYWluX1ExNiA9IEdhaW5zX1ExNlsgc3ViZnIgXTsKKyAgICB9Cit9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvYXJtL05TUV9uZW9uLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL05TUV9uZW9uLmgKaW5kZXggNzdj
OTQ2YWY4NTQ0Nzg2ZTMxMTM0NTcxYThlNTU3NGY5ZTA5OGM4Yy4uYjMxZDk0NDJkNjk5MWM0OWFk
NTIwMmYyOWQ5ZDAyYjhkMTEzOTUwNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfbmVvbi5oCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9hcm0vTlNRX25lb24uaApAQCAtMjgsMzAgKzI4LDMxIEBAIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgogI2RlZmluZSBTSUxLX05TUV9ORU9OX0gKIAogI2luY2x1ZGUgImNwdV9z
dXBwb3J0LmgiCisjaW5jbHVkZSAiU2lnUHJvY19GSVguaCIKIAogI3VuZGVmIHNpbGtfc2hvcnRf
cHJlZGljdGlvbl9jcmVhdGVfYXJjaF9jb2VmCiAvKiBGb3IgdmVjdG9yaXplZCBjYWxjLCByZXZl
cnNlIGFfUTEyIGNvZWZzLCBjb252ZXJ0IHRvIDMyLWJpdCwgYW5kIHNoaWZ0IGZvciB2cWRtdWxo
cV9zMzIuICovCiBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX3Nob3J0X3ByZWRpY3Rpb25f
Y3JlYXRlX2FyY2hfY29lZl9uZW9uKG9wdXNfaW50MzIgKm91dCwgY29uc3Qgb3B1c19pbnQxNiAq
aW4sIG9wdXNfaW50IG9yZGVyKQogewotICAgIG91dFsxNV0gPSBpblswXSA8PCAxNTsKLSAgICBv
dXRbMTRdID0gaW5bMV0gPDwgMTU7Ci0gICAgb3V0WzEzXSA9IGluWzJdIDw8IDE1OwotICAgIG91
dFsxMl0gPSBpblszXSA8PCAxNTsKLSAgICBvdXRbMTFdID0gaW5bNF0gPDwgMTU7Ci0gICAgb3V0
WzEwXSA9IGluWzVdIDw8IDE1OwotICAgIG91dFs5XSAgPSBpbls2XSA8PCAxNTsKLSAgICBvdXRb
OF0gID0gaW5bN10gPDwgMTU7Ci0gICAgb3V0WzddICA9IGluWzhdIDw8IDE1OwotICAgIG91dFs2
XSAgPSBpbls5XSA8PCAxNTsKKyAgICBvdXRbMTVdID0gc2lsa19MU0hJRlQzMihpblswXSwgMTUp
OworICAgIG91dFsxNF0gPSBzaWxrX0xTSElGVDMyKGluWzFdLCAxNSk7CisgICAgb3V0WzEzXSA9
IHNpbGtfTFNISUZUMzIoaW5bMl0sIDE1KTsKKyAgICBvdXRbMTJdID0gc2lsa19MU0hJRlQzMihp
blszXSwgMTUpOworICAgIG91dFsxMV0gPSBzaWxrX0xTSElGVDMyKGluWzRdLCAxNSk7CisgICAg
b3V0WzEwXSA9IHNpbGtfTFNISUZUMzIoaW5bNV0sIDE1KTsKKyAgICBvdXRbOV0gID0gc2lsa19M
U0hJRlQzMihpbls2XSwgMTUpOworICAgIG91dFs4XSAgPSBzaWxrX0xTSElGVDMyKGluWzddLCAx
NSk7CisgICAgb3V0WzddICA9IHNpbGtfTFNISUZUMzIoaW5bOF0sIDE1KTsKKyAgICBvdXRbNl0g
ID0gc2lsa19MU0hJRlQzMihpbls5XSwgMTUpOwogCiAgICAgaWYgKG9yZGVyID09IDE2KQogICAg
IHsKLSAgICAgICAgb3V0WzVdID0gaW5bMTBdIDw8IDE1OwotICAgICAgICBvdXRbNF0gPSBpblsx
MV0gPDwgMTU7Ci0gICAgICAgIG91dFszXSA9IGluWzEyXSA8PCAxNTsKLSAgICAgICAgb3V0WzJd
ID0gaW5bMTNdIDw8IDE1OwotICAgICAgICBvdXRbMV0gPSBpblsxNF0gPDwgMTU7Ci0gICAgICAg
IG91dFswXSA9IGluWzE1XSA8PCAxNTsKKyAgICAgICAgb3V0WzVdID0gc2lsa19MU0hJRlQzMihp
blsxMF0sIDE1KTsKKyAgICAgICAgb3V0WzRdID0gc2lsa19MU0hJRlQzMihpblsxMV0sIDE1KTsK
KyAgICAgICAgb3V0WzNdID0gc2lsa19MU0hJRlQzMihpblsxMl0sIDE1KTsKKyAgICAgICAgb3V0
WzJdID0gc2lsa19MU0hJRlQzMihpblsxM10sIDE1KTsKKyAgICAgICAgb3V0WzFdID0gc2lsa19M
U0hJRlQzMihpblsxNF0sIDE1KTsKKyAgICAgICAgb3V0WzBdID0gc2lsa19MU0hJRlQzMihpblsx
NV0sIDE1KTsKICAgICB9CiAgICAgZWxzZQogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vYXJt
X3NpbGtfbWFwLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvYXJtL2FybV9zaWxrX21hcC5jCmluZGV4IDliZDg2YTdiMjE1MjI0
OWZhODUwZTllZWMwY2Q2YTZjYTI2Y2U3MTUuLjBiOWJmZWMyY2E5NzQ3NjhjNTllMDlmNDQ4YWNh
ODFjZWIxZDhmNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vYXJtX3NpbGtfbWFwLmMKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2FybS9hcm1fc2lsa19tYXAuYwpAQCAtMjgsMTMgKzI4LDYyIEBAIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogIyBpbmNsdWRlICJjb25maWcuaCIKICNlbmRpZgogCisjaW5jbHVkZSAibWFp
bl9GSVguaCIKICNpbmNsdWRlICJOU1EuaCIKKyNpbmNsdWRlICJTaWdQcm9jX0ZJWC5oIgogCiAj
aWYgZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkKIAogIyBpZiAoZGVmaW5lZChPUFVTX0FSTV9NQVlf
SEFWRV9ORU9OX0lOVFIpICYmIFwKICAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5U
UikpCiAKK3ZvaWQgKCpjb25zdCBTSUxLX0JJUVVBRF9BTFRfU1RSSURFMl9JTVBMW09QVVNfQVJD
SE1BU0sgKyAxXSkoCisgICAgICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqaW4sICAg
ICAgICAgICAgICAgIC8qIEkgICAgIGlucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAg
ICAgICAgICpCX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgTUEgY29lZmZpY2llbnRzIFszXSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBjb25zdCBv
cHVzX2ludDMyICAgICAgICAgICAgKkFfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBBUiBjb2Vm
ZmljaWVudHMgWzJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqUywgICAgICAgICAgICAgICAgIC8q
IEkvTyAgIFN0YXRlIHZlY3RvciBbNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICAgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICpvdXQsICAg
ICAgICAgICAgICAgLyogTyAgICAgb3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludDMyICAgICAg
ICAgICAgbGVuICAgICAgICAgICAgICAgICAvKiBJICAgICBzaWduYWwgbGVuZ3RoIChtdXN0IGJl
IGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCispID0geworICAgICAgc2ls
a19iaXF1YWRfYWx0X3N0cmlkZTJfYywgICAgLyogQVJNdjQgKi8KKyAgICAgIHNpbGtfYmlxdWFk
X2FsdF9zdHJpZGUyX2MsICAgIC8qIEVEU1AgKi8KKyAgICAgIHNpbGtfYmlxdWFkX2FsdF9zdHJp
ZGUyX2MsICAgIC8qIE1lZGlhICovCisgICAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9uZW9u
LCAvKiBOZW9uICovCit9OworCitvcHVzX2ludDMyICgqY29uc3QgU0lMS19MUENfSU5WRVJTRV9Q
UkVEX0dBSU5fSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKCAvKiBPICAgUmV0dXJucyBpbnZlcnNl
IHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgICAgICovCisgICAgICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqQV9RMTIsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgUHJlZGljdGlvbiBjb2VmZmljaWVudHMsIFExMiBbb3JkZXJdICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgUHJlZGljdGlvbiBv
cmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCispID0g
eworICAgICAgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fYywgICAgLyogQVJNdjQgKi8KKyAg
ICAgIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2MsICAgIC8qIEVEU1AgKi8KKyAgICAgIHNp
bGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2MsICAgIC8qIE1lZGlhICovCisgICAgICBzaWxrX0xQ
Q19pbnZlcnNlX3ByZWRfZ2Fpbl9uZW9uLCAvKiBOZW9uICovCit9OworCit2b2lkICAoKmNvbnN0
IFNJTEtfTlNRX0RFTF9ERUNfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKAorICAgICAgICBjb25z
dCBzaWxrX2VuY29kZXJfc3RhdGUgICAgKnBzRW5jQywgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGlj
ZXMgICAgICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgeDE2
W10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgb3B1c19pbnQ4ICAgICAgICAgICAg
ICAgICAgIHB1bHNlc1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAg
ICBRdWFudGl6ZWQgcHVsc2Ugc2lnbmFsICAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNf
aW50MTYgICAgICAgICAgICBQcmVkQ29lZl9RMTJbIDIgKiBNQVhfTFBDX09SREVSIF0sICAgICAg
ICAgIC8qIEkgICAgU2hvcnQgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAqLworICAgICAgICBj
b25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgTFRQQ29lZl9RMTRbIExUUF9PUkRFUiAqIE1BWF9O
Ql9TVUJGUiBdLCAgICAvKiBJICAgIExvbmcgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAgKi8K
KyAgICAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFSX1ExM1sgTUFYX05CX1NVQkZS
ICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAvKiBJIE5vaXNlIHNoYXBpbmcgY29lZnMgICAgICAg
ICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBIYXJtU2hhcGVH
YWluX1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgIC8qIEkgICAgTG9uZyB0ZXJtIHNoYXBp
bmcgY29lZnMgICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAg
VGlsdF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNwZWN0
cmFsIHRpbHQgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgICAgICAgIExGX3NocF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgLyog
SSAgICBMb3cgZnJlcXVlbmN5IHNoYXBpbmcgY29lZnMgICAgICovCisgICAgICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICBHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgUXVhbnRpemF0aW9uIHN0ZXAgc2l6ZXMgICAgICAgICAqLworICAgICAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgcGl0Y2hMWyBNQVhfTkJfU1VCRlIgXSwgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIFBpdGNoIGxhZ3MgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIExhbWJkYV9RMTAsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSYXRlL2Rpc3RvcnRpb24gdHJhZGVv
ZmYgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBMVFBfc2Nh
bGVfUTE0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFRQIHN0YXRlIHNj
YWxpbmcgICAgICAgICAgICAgICAqLworKSA9IHsKKyAgICAgIHNpbGtfTlNRX2RlbF9kZWNfYywg
ICAgLyogQVJNdjQgKi8KKyAgICAgIHNpbGtfTlNRX2RlbF9kZWNfYywgICAgLyogRURTUCAqLwor
ICAgICAgc2lsa19OU1FfZGVsX2RlY19jLCAgICAvKiBNZWRpYSAqLworICAgICAgc2lsa19OU1Ff
ZGVsX2RlY19uZW9uLCAvKiBOZW9uICovCit9OworCiAvKlRoZXJlIGlzIG5vIHRhYmxlIGZvciBz
aWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9zaG9ydF9wcmVkaWN0aW9uIGJlY2F1c2UgdGhlCiAg
ICBORU9OIHZlcnNpb24gdGFrZXMgZGlmZmVyZW50IHBhcmFtZXRlcnMgdGhhbiB0aGUgQyB2ZXJz
aW9uLgogICBJbnN0ZWFkIFJUQ0QgaXMgZG9uZSB2aWEgaWYgc3RhdGVtZW50cyBhdCB0aGUgY2Fs
bCBzaXRlcy4KQEAgLTUyLDQgKzEwMSwyMyBAQCBvcHVzX2ludDMyCiAKICMgZW5kaWYKIAorIyBp
ZiBkZWZpbmVkKEZJWEVEX1BPSU5UKSAmJiBcCisgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9O
RU9OX0lOVFIpICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKQorCit2b2lk
ICgqY29uc3QgU0lMS19XQVJQRURfQVVUT0NPUlJFTEFUSU9OX0ZJWF9JTVBMW09QVVNfQVJDSE1B
U0sgKyAxXSkoCisgICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAqY29yciwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXN1bHQgW29yZGVyICsgMV0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICAgICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICpzY2FsZSwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFNjYWxpbmcgb2YgdGhlIGNvcnJlbGF0aW9u
IHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKmlucHV0LCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgZGF0YSB0byBjb3JyZWxhdGUgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgICAgICB3YXJwaW5nX1ExNiwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBXYXJwaW5nIGNvZWZmaWNpZW50ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIExlbmd0aCBvZiBpbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgQ29ycmVsYXRpb24gb3JkZXIgKGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCispID0geworICAgICAgc2lsa193YXJwZWRfYXV0b2Nv
cnJlbGF0aW9uX0ZJWF9jLCAgICAvKiBBUk12NCAqLworICAgICAgc2lsa193YXJwZWRfYXV0b2Nv
cnJlbGF0aW9uX0ZJWF9jLCAgICAvKiBFRFNQICovCisgICAgICBzaWxrX3dhcnBlZF9hdXRvY29y
cmVsYXRpb25fRklYX2MsICAgIC8qIE1lZGlhICovCisgICAgICBzaWxrX3dhcnBlZF9hdXRvY29y
cmVsYXRpb25fRklYX25lb24sIC8qIE5lb24gKi8KK307CisKKyMgZW5kaWYKKwogI2VuZGlmIC8q
IE9QVVNfSEFWRV9SVENEICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL2JpcXVhZF9hbHRfYXJtLmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvYXJtL2JpcXVhZF9hbHRfYXJtLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjZlYTlmNDNkZDBiMzdiMmQ2
MzMwODdmMWEyNWU5OTg2ZmNlMmQ2ZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vYmlxdWFk
X2FsdF9hcm0uaApAQCAtMCwwICsxLDY4IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK0NvcHlyaWdodCAo
YykgMjAxNyBHb29nbGUgSW5jLgorUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVy
IHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRo
ZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNl
IG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVybWlzc2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgor
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KKworI2lmbmRlZiBTSUxLX0JJUVVBRF9BTFRfQVJNX0gKKyMg
ZGVmaW5lIFNJTEtfQklRVUFEX0FMVF9BUk1fSAorCisjIGluY2x1ZGUgImNlbHQvYXJtL2FybWNw
dS5oIgorCisjIGlmIGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKQordm9pZCBz
aWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9uZW9uKAorICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICAqaW4sICAgICAgICAgICAgICAgIC8qIEkgICAgIGlucHV0IHNpZ25hbCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dDMyICAgICAgICAgICAgKkJfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBNQSBjb2VmZmljaWVu
dHMgWzNdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29u
c3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpBX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgQVIg
Y29lZmZpY2llbnRzIFsyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqUywgICAgICAgICAgICAgICAgIC8q
IEkvTyAgIFN0YXRlIHZlY3RvciBbNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKm91dCwgICAgICAg
ICAgICAgICAvKiBPICAgICBvdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxl
biAgICAgICAgICAgICAgICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworKTsKKworIyAgaWYgIWRlZmluZWQoT1BV
U19IQVZFX1JUQ0QpICYmIGRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OKQorIyAgIGRlZmlu
ZSBPVkVSUklERV9zaWxrX2JpcXVhZF9hbHRfc3RyaWRlMiAgICAgICAgICAgICAgICAgICAoMSkK
KyMgICBkZWZpbmUgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTIoaW4sIEJfUTI4LCBBX1EyOCwgUywg
b3V0LCBsZW4sIGFyY2gpICgodm9pZCkoYXJjaCksIFBSRVNVTUVfTkVPTihzaWxrX2JpcXVhZF9h
bHRfc3RyaWRlMikoaW4sIEJfUTI4LCBBX1EyOCwgUywgb3V0LCBsZW4pKQorIyAgZW5kaWYKKyMg
ZW5kaWYKKworIyBpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX2JpcXVhZF9hbHRfc3RyaWRlMikK
Ky8qSXMgcnVuLXRpbWUgQ1BVIGRldGVjdGlvbiBlbmFibGVkIG9uIHRoaXMgcGxhdGZvcm0/Ki8K
KyMgIGlmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpICYmIChkZWZpbmVkKE9QVVNfQVJNX01BWV9I
QVZFX05FT05fSU5UUikgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpKQor
ZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxLX0JJUVVBRF9BTFRfU1RSSURFMl9JTVBMW09QVVNfQVJD
SE1BU0srMV0pKAorICAgICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmluLCAgICAg
ICAgICAgICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAg
ICAgICAqQl9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIE1BIGNvZWZmaWNpZW50cyBbM10gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1
c19pbnQzMiAgICAgICAgICAgICpBX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgQVIgY29lZmZp
Y2llbnRzIFsyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
ICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAgICAvKiBJ
L08gICBTdGF0ZSB2ZWN0b3IgWzRdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqb3V0LCAgICAg
ICAgICAgICAgIC8qIE8gICAgIG91dHB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAg
ICAgIGxlbiAgICAgICAgICAgICAgICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBl
dmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICk7CisjICAgZGVmaW5l
IE9WRVJSSURFX3NpbGtfYmlxdWFkX2FsdF9zdHJpZGUyICAgICAgICAgICAgICAgICAgKDEpCisj
ICAgZGVmaW5lIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyKGluLCBCX1EyOCwgQV9RMjgsIFMsIG91
dCwgbGVuLCBhcmNoKSAoKCpTSUxLX0JJUVVBRF9BTFRfU1RSSURFMl9JTVBMWyhhcmNoKSZPUFVT
X0FSQ0hNQVNLXSkoaW4sIEJfUTI4LCBBX1EyOCwgUywgb3V0LCBsZW4pKQorIyAgZWxpZiBkZWZp
bmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKQorIyAgIGRlZmluZSBPVkVSUklERV9zaWxr
X2JpcXVhZF9hbHRfc3RyaWRlMiAgICAgICAgICAgICAgICAgICgxKQorIyAgIGRlZmluZSBzaWxr
X2JpcXVhZF9hbHRfc3RyaWRlMihpbiwgQl9RMjgsIEFfUTI4LCBTLCBvdXQsIGxlbiwgYXJjaCkg
KCh2b2lkKShhcmNoKSwgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTJfbmVvbihpbiwgQl9RMjgsIEFf
UTI4LCBTLCBvdXQsIGxlbikpCisjICBlbmRpZgorIyBlbmRpZgorCisjZW5kaWYgLyogZW5kIFNJ
TEtfQklRVUFEX0FMVF9BUk1fSCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9iaXF1YWRfYWx0X25l
b25faW50ci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2FybS9iaXF1YWRfYWx0X25lb25faW50ci5jCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk3
MTU3MzMxODU4Y2E4YmY2OWFjNTI5M2NiNjhlMjNjZDZkNGYzM2IKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvYXJtL2JpcXVhZF9hbHRfbmVvbl9pbnRyLmMKQEAgLTAsMCArMSwxNTYgQEAKKy8qKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKgorQ29weXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuCitSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworYXJlIG1ldDoKKy0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKK25vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
K2RvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCistIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVU
RiBvciBJRVRGIFRydXN0LCBub3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMs
IG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMgZGVyaXZlZCBmcm9t
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCitwZXJtaXNzaW9u
LgorVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5E
IENPTlRSSUJVVE9SUyAiQVMgSVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RQorQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIg
T1IgQ09OVFJJQlVUT1JTIEJFCitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCitDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCitJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCitQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaWZkZWYgSEFW
RV9DT05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDxhcm1f
bmVvbi5oPgorI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisjIGluY2x1ZGUgPHN0cmluZy5oPgorIyBp
bmNsdWRlICJzdGFja19hbGxvYy5oIgorI2VuZGlmCisjaW5jbHVkZSAiU2lnUHJvY19GSVguaCIK
Kworc3RhdGljIGlubGluZSB2b2lkIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyX2tlcm5lbCggY29u
c3QgaW50MzJ4NF90IEFfTF9zMzJ4NCwgY29uc3QgaW50MzJ4NF90IEFfVV9zMzJ4NCwgY29uc3Qg
aW50MzJ4NF90IEJfUTI4X3MzMng0LCBjb25zdCBpbnQzMngyX3QgdF9zMzJ4MiwgY29uc3QgaW50
MzJ4NF90IGluX3MzMng0LCBpbnQzMng0X3QgKlNfczMyeDQsIGludDMyeDJfdCAqb3V0MzJfUTE0
X3MzMngyICkKK3sKKyAgICBpbnQzMng0X3QgdF9zMzJ4NCwgb3V0MzJfUTE0X3MzMng0OworCisg
ICAgKm91dDMyX1ExNF9zMzJ4MiA9IHZhZGRfczMyKCB2Z2V0X2xvd19zMzIoICpTX3MzMng0ICks
IHRfczMyeDIgKTsgICAgICAgICAgICAgIC8qIHNpbGtfU01MQVdCKCBTezAsMX0sIEJfUTI4WyAw
IF0sIGluezAsMX0gKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICAqU19zMzJ4NCAgICAgICAgID0gdmNvbWJpbmVfczMyKCB2Z2V0X2hpZ2hfczMyKCAqU19zMzJ4
NCApLCB2ZHVwX25fczMyKCAwICkgKTsgLyogU3swLDF9ID0gU3syLDN9OyBTezIsM30gPSAwOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
ICpvdXQzMl9RMTRfczMyeDIgPSB2c2hsX25fczMyKCAqb3V0MzJfUTE0X3MzMngyLCAyICk7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBvdXQzMl9RMTRfezAsMX0gPSBzaWxrX0xTSElGVCgg
c2lsa19TTUxBV0IoIFN7MCwxfSwgQl9RMjhbIDAgXSwgaW57MCwxfSApLCAyICk7ICovCisgICAg
b3V0MzJfUTE0X3MzMng0ICA9IHZjb21iaW5lX3MzMiggKm91dDMyX1ExNF9zMzJ4MiwgKm91dDMy
X1ExNF9zMzJ4MiApOyAgICAgICAgIC8qIG91dDMyX1ExNF97MCwxLDAsMX0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICB0
X3MzMng0ICAgICAgICAgID0gdnFkbXVsaHFfczMyKCBvdXQzMl9RMTRfczMyeDQsIEFfTF9zMzJ4
NCApOyAgICAgICAgICAgICAgICAgLyogc2lsa19TTVVMV0IoIG91dDMyX1ExNF97MCwxLDAsMX0s
IEF7MCwwLDEsMX1fTF9RMjggKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICpT
X3MzMng0ICAgICAgICAgPSB2cnNyYXFfbl9zMzIoICpTX3MzMng0LCB0X3MzMng0LCAxNCApOyAg
ICAgICAgICAgICAgICAgICAgICAvKiBTezAsMX0gPSBTezIsM30gKyBzaWxrX1JTSElGVF9ST1VO
RCgpOyAgU3syLDN9ID0gc2lsa19SU0hJRlRfUk9VTkQoKTsgICAgICAgICAgICovCisgICAgdF9z
MzJ4NCAgICAgICAgICA9IHZxZG11bGhxX3MzMiggb3V0MzJfUTE0X3MzMng0LCBBX1VfczMyeDQg
KTsgICAgICAgICAgICAgICAgIC8qIHNpbGtfU01VTFdCKCBvdXQzMl9RMTRfezAsMSwwLDF9LCBB
ezAsMCwxLDF9X1VfUTI4ICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAqU19z
MzJ4NCAgICAgICAgID0gdmFkZHFfczMyKCAqU19zMzJ4NCwgdF9zMzJ4NCApOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogUzAgPSBzaWxrX1NNTEFXQiggU3swLDEsMiwzfSwgb3V0MzJf
UTE0X3swLDEsMCwxfSwgQXswLDAsMSwxfV9VX1EyOCApOyAgICAgICAgICAqLworICAgIHRfczMy
eDQgICAgICAgICAgPSB2cWRtdWxocV9zMzIoIGluX3MzMng0LCBCX1EyOF9zMzJ4NCApOyAgICAg
ICAgICAgICAgICAgICAgICAvKiBzaWxrX1NNVUxXQiggQl9RMjhbIHsxLDEsMiwyfSBdLCBpbnsw
LDEsMCwxfSApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgKlNfczMy
eDQgICAgICAgICA9IHZhZGRxX3MzMiggKlNfczMyeDQsIHRfczMyeDQgKTsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIFMwID0gc2lsa19TTUxBV0IoIFMwLCBCX1EyOFsgezEsMSwyLDJ9
IF0sIGluezAsMSwwLDF9ICk7ICAgICAgICAgICAgICAgICAgICAgICAgKi8KK30KKwordm9pZCBz
aWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9uZW9uKAorICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICAqaW4sICAgICAgICAgICAgICAgIC8qIEkgICAgIGlucHV0IHNpZ25hbCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dDMyICAgICAgICAgICAgKkJfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBNQSBjb2VmZmljaWVu
dHMgWzNdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29u
c3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpBX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgQVIg
Y29lZmZpY2llbnRzIFsyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqUywgICAgICAgICAgICAgICAgIC8q
IEkvTyAgIFN0YXRlIHZlY3RvciBbNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKm91dCwgICAgICAg
ICAgICAgICAvKiBPICAgICBvdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxl
biAgICAgICAgICAgICAgICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworKQoreworICAgIC8qIERJUkVDVCBGT1JN
IElJIFRSQU5TUE9TRUQgKHVzZXMgMiBlbGVtZW50IHN0YXRlIHZlY3RvcikgKi8KKyAgICBvcHVz
X2ludCAgICAgICAgayAgICAgICAgICAgID0gMDsKKyAgICBjb25zdCBpbnQzMngyX3Qgb2Zmc2V0
X3MzMngyID0gdmR1cF9uX3MzMiggKDE8PDE0KSAtIDEgKTsKKyAgICBjb25zdCBpbnQzMng0X3Qg
b2Zmc2V0X3MzMng0ID0gdmNvbWJpbmVfczMyKCBvZmZzZXRfczMyeDIsIG9mZnNldF9zMzJ4MiAp
OworICAgIGludDE2eDRfdCAgICAgICBpbl9zMTZ4NCAgPSB2ZHVwX25fczE2KCAwICk7CisgICAg
aW50MTZ4NF90ICAgICAgIG91dF9zMTZ4NDsKKyAgICBpbnQzMngyX3QgICAgICAgQV9RMjhfczMy
eDIsIEFfTF9zMzJ4MiwgQV9VX3MzMngyLCBCX1EyOF9zMzJ4MiwgdF9zMzJ4MjsKKyAgICBpbnQz
Mng0X3QgICAgICAgQV9MX3MzMng0LCBBX1VfczMyeDQsIEJfUTI4X3MzMng0LCBTX3MzMng0LCBv
dXQzMl9RMTRfczMyeDQ7CisgICAgaW50MzJ4MngyX3QgICAgIHQwX3MzMngyeDIsIHQxX3MzMngy
eDIsIHQyX3MzMngyeDIsIFNfczMyeDJ4MjsKKworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisgICAg
b3B1c19pbnQzMiBTX2NbIDQgXTsKKyAgICBWQVJERUNMKCBvcHVzX2ludDE2LCBvdXRfYyApOwor
ICAgIFNBVkVfU1RBQ0s7CisgICAgQUxMT0MoIG91dF9jLCAyICogbGVuLCBvcHVzX2ludDE2ICk7
CisKKyAgICBzaWxrX21lbWNweSggJlNfYywgUywgc2l6ZW9mKCBTX2MgKSApOworICAgIHNpbGtf
YmlxdWFkX2FsdF9zdHJpZGUyX2MoIGluLCBCX1EyOCwgQV9RMjgsIFNfYywgb3V0X2MsIGxlbiAp
OworI2VuZGlmCisKKyAgICAvKiBOZWdhdGUgQV9RMjggdmFsdWVzIGFuZCBzcGxpdCBpbiB0d28g
cGFydHMgKi8KKyAgICBBX1EyOF9zMzJ4MiA9IHZsZDFfczMyKCBBX1EyOCApOworICAgIEFfUTI4
X3MzMngyID0gdm5lZ19zMzIoIEFfUTI4X3MzMngyICk7CisgICAgQV9MX3MzMngyICAgPSB2c2hs
X25fczMyKCBBX1EyOF9zMzJ4MiwgMTggKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qICggLUFfUTI4W10gJiAweDAwMDAzRkZGICkgPDwg
MTggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgQV9MX3MzMngyICAgPSB2cmVpbnRlcnByZXRfczMyX3UzMiggdnNocl9uX3UzMiggdnJl
aW50ZXJwcmV0X3UzMl9zMzIoIEFfTF9zMzJ4MiApLCAzICkgKTsgICAgICAgICAgIC8qICggLUFf
UTI4W10gJiAweDAwMDAzRkZGICkgPDwgMTUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgQV9VX3MzMngyICAgPSB2c2hyX25fczMyKCBB
X1EyOF9zMzJ4MiwgMTQgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIHNpbGtfUlNISUZUKCAtQV9RMjhbXSwgMTQgKSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgQV9V
X3MzMngyICAgPSB2c2hsX25fczMyKCBBX1VfczMyeDIsIDE2ICk7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNpbGtfUlNISUZUKCAt
QV9RMjhbXSwgMTQgKSA8PCAxNiAoQ2xpcCB0d28gbGVhZGluZyBiaXRzIHRvIGNvbmZvcm0gdG8g
QyBmdW5jdGlvbi4pICovCisgICAgQV9VX3MzMngyICAgPSB2c2hyX25fczMyKCBBX1VfczMyeDIs
IDEgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIHNpbGtfUlNISUZUKCAtQV9RMjhbXSwgMTQgKSA8PCAxNSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisKKyAgICBCX1EyOF9zMzJ4
MiAgPSB2bGQxX3MzMiggQl9RMjggKTsKKyAgICB0X3MzMngyICAgICAgPSB2bGQxX3MzMiggQl9R
MjggKyAxICk7CisgICAgdDBfczMyeDJ4MiAgID0gdnppcF9zMzIoIEFfTF9zMzJ4MiwgQV9MX3Mz
MngyICk7CisgICAgdDFfczMyeDJ4MiAgID0gdnppcF9zMzIoIEFfVV9zMzJ4MiwgQV9VX3MzMngy
ICk7CisgICAgdDJfczMyeDJ4MiAgID0gdnppcF9zMzIoIHRfczMyeDIsIHRfczMyeDIgKTsKKyAg
ICBBX0xfczMyeDQgICAgPSB2Y29tYmluZV9zMzIoIHQwX3MzMngyeDIudmFsWyAwIF0sIHQwX3Mz
MngyeDIudmFsWyAxIF0gKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogQXswLDAsMSwx
fV9MX1EyOCAgICAgICAgICAqLworICAgIEFfVV9zMzJ4NCAgICA9IHZjb21iaW5lX3MzMiggdDFf
czMyeDJ4Mi52YWxbIDAgXSwgdDFfczMyeDJ4Mi52YWxbIDEgXSApOyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBBezAsMCwxLDF9X1VfUTI4ICAgICAgICAgICovCisgICAgQl9RMjhfczMy
eDQgID0gdmNvbWJpbmVfczMyKCB0Ml9zMzJ4MngyLnZhbFsgMCBdLCB0Ml9zMzJ4MngyLnZhbFsg
MSBdICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEJfUTI4WyB7MSwxLDIsMn0gXSAg
ICAgICAgKi8KKyAgICBTX3MzMng0ICAgICAgPSB2bGQxcV9zMzIoIFMgKTsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogUzAgPSBTWyAwIF07IFMzID0gU1sgMyBdOyAqLworICAgIFNfczMyeDJ4MiAgICA9IHZ0cm5f
czMyKCB2Z2V0X2xvd19zMzIoIFNfczMyeDQgKSwgdmdldF9oaWdoX3MzMiggU19zMzJ4NCApICk7
ICAgICAgICAgICAgICAgICAgICAgICAvKiBTMiA9IFNbIDEgXTsgUzEgPSBTWyAyIF07ICovCisg
ICAgU19zMzJ4NCAgICAgID0gdmNvbWJpbmVfczMyKCBTX3MzMngyeDIudmFsWyAwIF0sIFNfczMy
eDJ4Mi52YWxbIDEgXSApOworCisgICAgZm9yKCA7IGsgPCBsZW4gLSAxOyBrICs9IDIgKSB7Cisg
ICAgICAgIGludDMyeDRfdCBpbl9zMzJ4NFsgMiBdLCB0X3MzMng0OworICAgICAgICBpbnQzMngy
X3Qgb3V0MzJfUTE0X3MzMngyWyAyIF07CisKKyAgICAgICAgLyogU1sgMiAqIGkgKyAwIF0sIFNb
IDIgKiBpICsgMSBdLCBTWyAyICogaSArIDIgXSwgU1sgMiAqIGkgKyAzIF06IFExMiAqLworICAg
ICAgICBpbl9zMTZ4NCAgICAgID0gdmxkMV9zMTYoICZpblsgMiAqIGsgXSApOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBpbnswLDEsMiwz
fSA9IGluWyAyICogayArIHswLDEsMiwzfSBdOyAqLworICAgICAgICBpbl9zMzJ4NFsgMCBdID0g
dnNobGxfbl9zMTYoIGluX3MxNng0LCAxNSApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBpbnswLDEsMiwzfSA8PCAxNSAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgICAgICB0X3MzMng0ICAgICAgID0gdnFkbXVsaHFfbGFuZV9zMzIoIGlu
X3MzMng0WyAwIF0sIEJfUTI4X3MzMngyLCAwICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBzaWxrX1NNVUxXQiggQl9RMjhbIDAgXSwgaW57MCwxLDIsM30gKSAqLworICAgICAgICBp
bl9zMzJ4NFsgMSBdID0gdmNvbWJpbmVfczMyKCB2Z2V0X2hpZ2hfczMyKCBpbl9zMzJ4NFsgMCBd
ICksIHZnZXRfaGlnaF9zMzIoIGluX3MzMng0WyAwIF0gKSApOyAvKiBpbnsyLDMsMiwzfSA8PCAx
NSAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBpbl9zMzJ4NFsgMCBdID0gdmNvbWJp
bmVfczMyKCB2Z2V0X2xvd19zMzIgKCBpbl9zMzJ4NFsgMCBdICksIHZnZXRfbG93X3MzMiAoIGlu
X3MzMng0WyAwIF0gKSApOyAvKiBpbnswLDEsMCwxfSA8PCAxNSAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgICAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9rZXJuZWwoIEFfTF9zMzJ4NCwg
QV9VX3MzMng0LCBCX1EyOF9zMzJ4NCwgdmdldF9sb3dfczMyICggdF9zMzJ4NCApLCBpbl9zMzJ4
NFsgMCBdLCAmU19zMzJ4NCwgJm91dDMyX1ExNF9zMzJ4MlsgMCBdICk7CisgICAgICAgIHNpbGtf
YmlxdWFkX2FsdF9zdHJpZGUyX2tlcm5lbCggQV9MX3MzMng0LCBBX1VfczMyeDQsIEJfUTI4X3Mz
Mng0LCB2Z2V0X2hpZ2hfczMyKCB0X3MzMng0ICksIGluX3MzMng0WyAxIF0sICZTX3MzMng0LCAm
b3V0MzJfUTE0X3MzMngyWyAxIF0gKTsKKworICAgICAgICAvKiBTY2FsZSBiYWNrIHRvIFEwIGFu
ZCBzYXR1cmF0ZSAqLworICAgICAgICBvdXQzMl9RMTRfczMyeDQgPSB2Y29tYmluZV9zMzIoIG91
dDMyX1ExNF9zMzJ4MlsgMCBdLCBvdXQzMl9RMTRfczMyeDJbIDEgXSApOyAgICAgICAgICAgICAg
ICAgICAvKiBvdXQzMl9RMTRfezAsMSwyLDN9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgICAgIG91dDMyX1ExNF9zMzJ4NCA9IHZhZGRxX3MzMiggb3V0MzJfUTE0X3MzMng0
LCBvZmZzZXRfczMyeDQgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG91
dDMyX1ExNF97MCwxLDIsM30gKyAoMTw8MTQpIC0gMSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAg
ICAgb3V0X3MxNng0ICAgICAgID0gdnFzaHJuX25fczMyKCBvdXQzMl9RMTRfczMyeDQsIDE0ICk7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogKG9wdXNfaW50MTYp
c2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMyX1ExNF97MCwxLDIsM30gKyAoMTw8MTQpIC0g
MSwgMTQgKSApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICB2c3QxX3Mx
NiggJm91dFsgMiAqIGsgXSwgb3V0X3MxNng0ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvdXRbIDIgKiBrICsgezAsMSwyLDN9
IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVCggb3V0MzJfUTE0X3swLDEs
MiwzfSArICgxPDwxNCkgLSAxLCAxNCApICk7ICovCisgICAgfQorCisgICAgLyogUHJvY2VzcyBs
ZWZ0b3Zlci4gKi8KKyAgICBpZiggayA8IGxlbiApIHsKKyAgICAgICAgaW50MzJ4NF90IGluX3Mz
Mng0OworICAgICAgICBpbnQzMngyX3Qgb3V0MzJfUTE0X3MzMngyOworCisgICAgICAgIC8qIFNb
IDIgKiBpICsgMCBdLCBTWyAyICogaSArIDEgXTogUTEyICovCisgICAgICAgIGluX3MxNng0ICAg
ICA9IHZsZDFfbGFuZV9zMTYoICZpblsgMiAqIGsgKyAwIF0sIGluX3MxNng0LCAwICk7ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGluezAsMX0gPSBpblsgMiAqIGsgKyB7MCwx
fSBdOyAgICAgKi8KKyAgICAgICAgaW5fczE2eDQgICAgID0gdmxkMV9sYW5lX3MxNiggJmluWyAy
ICogayArIDEgXSwgaW5fczE2eDQsIDEgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogaW57MCwxfSA9IGluWyAyICogayArIHswLDF9IF07ICAgICAqLworICAgICAgICBpbl9z
MzJ4NCAgICAgPSB2c2hsbF9uX3MxNiggaW5fczE2eDQsIDE1ICk7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBpbnswLDF9IDw8IDE1ICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgICAgIHRfczMyeDIgICAgICA9IHZxZG11bGhfbGFuZV9z
MzIoIHZnZXRfbG93X3MzMiggaW5fczMyeDQgKSwgQl9RMjhfczMyeDIsIDAgKTsgICAgICAgICAg
ICAgICAgICAgIC8qIHNpbGtfU01VTFdCKCBCX1EyOFsgMCBdLCBpbnswLDF9ICkgKi8KKyAgICAg
ICAgaW5fczMyeDQgICAgID0gdmNvbWJpbmVfczMyKCB2Z2V0X2xvd19zMzIoIGluX3MzMng0ICks
IHZnZXRfbG93X3MzMiggaW5fczMyeDQgKSApOyAgICAgICAgICAgICAgLyogaW57MCwxLDAsMX0g
PDwgMTUgICAgICAgICAgICAgICAgICAqLworICAgICAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRl
Ml9rZXJuZWwoIEFfTF9zMzJ4NCwgQV9VX3MzMng0LCBCX1EyOF9zMzJ4NCwgdF9zMzJ4MiwgaW5f
czMyeDQsICZTX3MzMng0LCAmb3V0MzJfUTE0X3MzMngyICk7CisKKyAgICAgICAgLyogU2NhbGUg
YmFjayB0byBRMCBhbmQgc2F0dXJhdGUgKi8KKyAgICAgICAgb3V0MzJfUTE0X3MzMngyID0gdmFk
ZF9zMzIoIG91dDMyX1ExNF9zMzJ4Miwgb2Zmc2V0X3MzMngyICk7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogb3V0MzJfUTE0X3swLDF9ICsgKDE8PDE0KSAtIDEgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgICAgIG91dDMyX1ExNF9zMzJ4NCA9IHZjb21iaW5lX3MzMiggb3V0MzJfUTE0X3MzMngy
LCBvdXQzMl9RMTRfczMyeDIgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG91dDMy
X1ExNF97MCwxLDAsMX0gKyAoMTw8MTQpIC0gMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBvdXRfczE2eDQgICAgICAg
PSB2cXNocm5fbl9zMzIoIG91dDMyX1ExNF9zMzJ4NCwgMTQgKTsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JT
SElGVCggb3V0MzJfUTE0X3swLDEsMCwxfSArICgxPDwxNCkgLSAxLCAxNCApICkgICAgICAgICAg
ICAgKi8KKyAgICAgICAgdnN0MV9sYW5lX3MxNiggJm91dFsgMiAqIGsgKyAwIF0sIG91dF9zMTZ4
NCwgMCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
b3V0WyAyICogayArIDAgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUKCBv
dXQzMl9RMTRfMCArICgxPDwxNCkgLSAxLCAxNCApICk7ICovCisgICAgICAgIHZzdDFfbGFuZV9z
MTYoICZvdXRbIDIgKiBrICsgMSBdLCBvdXRfczE2eDQsIDEgKTsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG91dFsgMiAqIGsgKyAxIF0gPSAob3B1c19p
bnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVCggb3V0MzJfUTE0XzEgKyAoMTw8MTQpIC0gMSwg
MTQgKSApOyAqLworICAgIH0KKworICAgIHZzdDFxX2xhbmVfczMyKCAmU1sgMCBdLCBTX3MzMng0
LCAwICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBTWyAwIF0gPSBTMDsgKi8KKyAgICB2c3QxcV9sYW5lX3MzMiggJlNbIDEg
XSwgU19zMzJ4NCwgMiApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogU1sgMSBdID0gUzI7ICovCisgICAgdnN0MXFfbGFuZV9z
MzIoICZTWyAyIF0sIFNfczMyeDQsIDEgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNbIDIgXSA9IFMxOyAqLworICAgIHZz
dDFxX2xhbmVfczMyKCAmU1sgMyBdLCBTX3MzMng0LCAzICk7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTWyAzIF0gPSBTMzsg
Ki8KKworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisgICAgc2lsa19hc3NlcnQoICFtZW1jbXAoIFNf
YywgUywgc2l6ZW9mKCBTX2MgKSApICk7CisgICAgc2lsa19hc3NlcnQoICFtZW1jbXAoIG91dF9j
LCBvdXQsIDIgKiBsZW4gKiBzaXplb2YoIG9wdXNfaW50MTYgKSApICk7CisgICAgUkVTVE9SRV9T
VEFDSzsKKyNlbmRpZgorfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9tYWNyb3NfYXJtdjQuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9hcm0vbWFjcm9zX2FybXY0LmgKaW5kZXggM2YzMGU5NzI4OGZkNzdiM2EyMjk4ZGY2NjhhNDE5
Nzc3MTY0YzYyMi4uODc3ZWIxOGRkNTgxMjljYzE1OTE1MmRkNGIwOWQ2NzU5YTg0YTI3NyAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2FybS9tYWNyb3NfYXJtdjQuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL21hY3Jvc19hcm12
NC5oCkBAIC0yOCw2ICsyOCwxMSBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICNpZm5k
ZWYgU0lMS19NQUNST1NfQVJNdjRfSAogI2RlZmluZSBTSUxLX01BQ1JPU19BUk12NF9ICiAKKy8q
IFRoaXMgbWFjcm8gb25seSBhdm9pZHMgdGhlIHVuZGVmaW5lZCBiZWhhdmlvdXIgZnJvbSBhIGxl
ZnQgc2hpZnQgb2YKKyAgIGEgbmVnYXRpdmUgdmFsdWUuIEl0IHNob3VsZCBvbmx5IGJlIHVzZWQg
aW4gbWFjcm9zIHRoYXQgY2FuJ3QgaW5jbHVkZQorICAgU2lnUHJvY19GSVguaC4gSW4gb3RoZXIg
Y2FzZXMsIHVzZSBzaWxrX0xTSElGVDMyKCkuICovCisjZGVmaW5lIFNBRkVfU0hMKGEsYikgKChv
cHVzX2ludDMyKSgob3B1c191aW50MzIpKGEpIDw8IChiKSkpCisKIC8qIChhMzIgKiAob3B1c19p
bnQzMikoKG9wdXNfaW50MTYpKGIzMikpKSA+PiAxNiBvdXRwdXQgaGF2ZSB0byBiZSAzMmJpdCBp
bnQgKi8KICN1bmRlZiBzaWxrX1NNVUxXQgogc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIg
c2lsa19TTVVMV0JfYXJtdjQob3B1c19pbnQzMiBhLCBvcHVzX2ludDE2IGIpCkBAIC0zOCw3ICs0
Myw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMyIHNpbGtfU01VTFdCX2FybXY0KG9w
dXNfaW50MzIgYSwgb3B1c19pbnQxNiBiKQogICAgICAgIiNzaWxrX1NNVUxXQlxuXHQiCiAgICAg
ICAic211bGwgJTAsICUxLCAlMiwgJTNcblx0IgogICAgICAgOiAiPSZyIihyZF9sbyksICI9JnIi
KHJkX2hpKQotICAgICAgOiAiJXIiKGEpLCAiciIoYjw8MTYpCisgICAgICA6ICIlciIoYSksICJy
IihTQUZFX1NITChiLDE2KSkKICAgKTsKICAgcmV0dXJuIHJkX2hpOwogfQpAQCAtODAsNyArODUs
NyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX1NNVUxXV19hcm12NChvcHVz
X2ludDMyIGEsIG9wdXNfaW50MzIgYikKICAgICA6ICI9JnIiKHJkX2xvKSwgIj0mciIocmRfaGkp
CiAgICAgOiAiJXIiKGEpLCAiciIoYikKICAgKTsKLSAgcmV0dXJuIChyZF9oaTw8MTYpKyhyZF9s
bz4+MTYpOworICByZXR1cm4gU0FGRV9TSEwocmRfaGksMTYpKyhyZF9sbz4+MTYpOwogfQogI2Rl
ZmluZSBzaWxrX1NNVUxXVyhhLCBiKSAoc2lsa19TTVVMV1dfYXJtdjQoYSwgYikpCiAKQEAgLTk2
LDggKzEwMSwxMCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX1NNTEFXV19h
cm12NChvcHVzX2ludDMyIGEsIG9wdXNfaW50MzIgYiwKICAgICA6ICI9JnIiKHJkX2xvKSwgIj0m
ciIocmRfaGkpCiAgICAgOiAiJXIiKGIpLCAiciIoYykKICAgKTsKLSAgcmV0dXJuIGErKHJkX2hp
PDwxNikrKHJkX2xvPj4xNik7CisgIHJldHVybiBhK1NBRkVfU0hMKHJkX2hpLDE2KSsocmRfbG8+
PjE2KTsKIH0KICNkZWZpbmUgc2lsa19TTUxBV1coYSwgYiwgYykgKHNpbGtfU01MQVdXX2FybXY0
KGEsIGIsIGMpKQogCisjdW5kZWYgU0FGRV9TSEwKKwogI2VuZGlmIC8qIFNJTEtfTUFDUk9TX0FS
TXY0X0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vbWFjcm9zX2FybXY1ZS5oIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9t
YWNyb3NfYXJtdjVlLmgKaW5kZXggYWFkNDExN2U0NmE1ZmFmYWFlYTNiMGU1ZGNjMGJlODViMTFj
NmNmOS4uYjE0ZWM2NWRkYjI5YTIyYjA5MzQ2MGMzOGFlYjY4YmE1ZWQ1NDA3ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2FybS9tYWNyb3NfYXJtdjVlLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9tYWNyb3NfYXJtdjVlLmgK
QEAgLTI5LDYgKzI5LDExIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2lmbmRlZiBT
SUxLX01BQ1JPU19BUk12NUVfSAogI2RlZmluZSBTSUxLX01BQ1JPU19BUk12NUVfSAogCisvKiBU
aGlzIG1hY3JvIG9ubHkgYXZvaWRzIHRoZSB1bmRlZmluZWQgYmVoYXZpb3VyIGZyb20gYSBsZWZ0
IHNoaWZ0IG9mCisgICBhIG5lZ2F0aXZlIHZhbHVlLiBJdCBzaG91bGQgb25seSBiZSB1c2VkIGlu
IG1hY3JvcyB0aGF0IGNhbid0IGluY2x1ZGUKKyAgIFNpZ1Byb2NfRklYLmguIEluIG90aGVyIGNh
c2VzLCB1c2Ugc2lsa19MU0hJRlQzMigpLiAqLworI2RlZmluZSBTQUZFX1NITChhLGIpICgob3B1
c19pbnQzMikoKG9wdXNfdWludDMyKShhKSA8PCAoYikpKQorCiAvKiAoYTMyICogKG9wdXNfaW50
MzIpKChvcHVzX2ludDE2KShiMzIpKSkgPj4gMTYgb3V0cHV0IGhhdmUgdG8gYmUgMzJiaXQgaW50
ICovCiAjdW5kZWYgc2lsa19TTVVMV0IKIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMyIHNp
bGtfU01VTFdCX2FybXY1ZShvcHVzX2ludDMyIGEsIG9wdXNfaW50MTYgYikKQEAgLTE5MCw3ICsx
OTUsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX0NMWjE2X2FybXY1KG9w
dXNfaW50MTYgaW4xNikKICAgICAgICIjc2lsa19DTFoxNlxuXHQiCiAgICAgICAiY2x6ICUwLCAl
MTtcbiIKICAgICAgIDogIj1yIihyZXMpCi0gICAgICA6ICJyIihpbjE2PDwxNnwweDgwMDApCisg
ICAgICA6ICJyIihTQUZFX1NITChpbjE2LDE2KXwweDgwMDApCiAgICk7CiAgIHJldHVybiByZXM7
CiB9CkBAIC0yMTAsNCArMjE1LDYgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIgc2ls
a19DTFozMl9hcm12NShvcHVzX2ludDMyIGluMzIpCiB9CiAjZGVmaW5lIHNpbGtfQ0xaMzIoaW4z
MikgKHNpbGtfQ0xaMzJfYXJtdjUoaW4zMikpCiAKKyN1bmRlZiBTQUZFX1NITAorCiAjZW5kaWYg
LyogU0lMS19NQUNST1NfQVJNdjVFX0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9iaXF1YWRfYWx0LmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvYmlxdWFkX2FsdC5jCmluZGV4IGQ1NWY1ZWU5MmVjMmQ5YjQyMTc4MTAzNzdhMWM0YTM5
MGY4MTA0ZjkuLjU0NTY2YTQzYzAwMTNjN2I3ZWQzNzgwNjlhNDQ4NjdjY2E5MzIzMWYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9iaXF1YWRfYWx0LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2JpcXVhZF9hbHQuYwpAQCAtMzksMTQg
KzM5LDEzIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgIlNpZ1Byb2Nf
RklYLmgiCiAKIC8qIFNlY29uZCBvcmRlciBBUk1BIGZpbHRlciwgYWx0ZXJuYXRpdmUgaW1wbGVt
ZW50YXRpb24gKi8KLXZvaWQgc2lsa19iaXF1YWRfYWx0KAordm9pZCBzaWxrX2JpcXVhZF9hbHRf
c3RyaWRlMSgKICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmluLCAgICAgICAgICAg
ICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpCX1Ey
OCwgICAgICAgICAgICAgLyogSSAgICAgTUEgY29lZmZpY2llbnRzIFszXSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAg
ICAgICAqQV9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIEFSIGNvZWZmaWNpZW50cyBbMl0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAg
ICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAgICAvKiBJL08gICBTdGF0ZSB2ZWN0b3Ig
WzJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1
c19pbnQxNiAgICAgICAgICAgICAgICAgICpvdXQsICAgICAgICAgICAgICAgLyogTyAgICAgb3V0
cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBsZW4sICAgICAgICAgICAgICAgIC8q
IEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3QgYmUgZXZlbikgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgc3RyaWRlICAgICAg
ICAgICAgICAvKiBJICAgICBPcGVyYXRlIG9uIGludGVybGVhdmVkIHNpZ25hbCBpZiA+IDEgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIGxl
biAgICAgICAgICAgICAgICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBiZSBldmVuKSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKQogewogICAgIC8qIERJUkVDVCBGT1JN
IElJIFRSQU5TUE9TRUQgKHVzZXMgMiBlbGVtZW50IHN0YXRlIHZlY3RvcikgKi8KQEAgLTYxLDcg
KzYwLDcgQEAgdm9pZCBzaWxrX2JpcXVhZF9hbHQoCiAKICAgICBmb3IoIGsgPSAwOyBrIDwgbGVu
OyBrKysgKSB7CiAgICAgICAgIC8qIFNbIDAgXSwgU1sgMSBdOiBRMTIgKi8KLSAgICAgICAgaW52
YWwgPSBpblsgayAqIHN0cmlkZSBdOworICAgICAgICBpbnZhbCA9IGluWyBrIF07CiAgICAgICAg
IG91dDMyX1ExNCA9IHNpbGtfTFNISUZUKCBzaWxrX1NNTEFXQiggU1sgMCBdLCBCX1EyOFsgMCBd
LCBpbnZhbCApLCAyICk7CiAKICAgICAgICAgU1sgMCBdID0gU1sxXSArIHNpbGtfUlNISUZUX1JP
VU5EKCBzaWxrX1NNVUxXQiggb3V0MzJfUTE0LCBBMF9MX1EyOCApLCAxNCApOwpAQCAtNzMsNiAr
NzIsNTAgQEAgdm9pZCBzaWxrX2JpcXVhZF9hbHQoCiAgICAgICAgIFNbIDEgXSA9IHNpbGtfU01M
QVdCKCBTWyAxIF0sIEJfUTI4WyAyIF0sIGludmFsICk7CiAKICAgICAgICAgLyogU2NhbGUgYmFj
ayB0byBRMCBhbmQgc2F0dXJhdGUgKi8KLSAgICAgICAgb3V0WyBrICogc3RyaWRlIF0gPSAob3B1
c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVCggb3V0MzJfUTE0ICsgKDE8PDE0KSAtIDEs
IDE0ICkgKTsKKyAgICAgICAgb3V0WyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxr
X1JTSElGVCggb3V0MzJfUTE0ICsgKDE8PDE0KSAtIDEsIDE0ICkgKTsKKyAgICB9Cit9CisKK3Zv
aWQgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTJfYygKKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAg
ICAgICAgKmluLCAgICAgICAgICAgICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19p
bnQzMiAgICAgICAgICAgICpCX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgTUEgY29lZmZpY2ll
bnRzIFszXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIEFS
IGNvZWZmaWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAgICAv
KiBJL08gICBTdGF0ZSB2ZWN0b3IgWzRdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICpvdXQsICAgICAg
ICAgICAgICAgLyogTyAgICAgb3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBs
ZW4gICAgICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3QgYmUgZXZlbikg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyAgICAvKiBESVJFQ1QgRk9S
TSBJSSBUUkFOU1BPU0VEICh1c2VzIDIgZWxlbWVudCBzdGF0ZSB2ZWN0b3IpICovCisgICAgb3B1
c19pbnQgICBrOworICAgIG9wdXNfaW50MzIgQTBfVV9RMjgsIEEwX0xfUTI4LCBBMV9VX1EyOCwg
QTFfTF9RMjgsIG91dDMyX1ExNFsgMiBdOworCisgICAgLyogTmVnYXRlIEFfUTI4IHZhbHVlcyBh
bmQgc3BsaXQgaW4gdHdvIHBhcnRzICovCisgICAgQTBfTF9RMjggPSAoIC1BX1EyOFsgMCBdICkg
JiAweDAwMDAzRkZGOyAgICAgICAgLyogbG93ZXIgcGFydCAqLworICAgIEEwX1VfUTI4ID0gc2ls
a19SU0hJRlQoIC1BX1EyOFsgMCBdLCAxNCApOyAgICAgIC8qIHVwcGVyIHBhcnQgKi8KKyAgICBB
MV9MX1EyOCA9ICggLUFfUTI4WyAxIF0gKSAmIDB4MDAwMDNGRkY7ICAgICAgICAvKiBsb3dlciBw
YXJ0ICovCisgICAgQTFfVV9RMjggPSBzaWxrX1JTSElGVCggLUFfUTI4WyAxIF0sIDE0ICk7ICAg
ICAgLyogdXBwZXIgcGFydCAqLworCisgICAgZm9yKCBrID0gMDsgayA8IGxlbjsgaysrICkgewor
ICAgICAgICAvKiBTWyAwIF0sIFNbIDEgXSwgU1sgMiBdLCBTWyAzIF06IFExMiAqLworICAgICAg
ICBvdXQzMl9RMTRbIDAgXSA9IHNpbGtfTFNISUZUKCBzaWxrX1NNTEFXQiggU1sgMCBdLCBCX1Ey
OFsgMCBdLCBpblsgMiAqIGsgKyAwIF0gKSwgMiApOworICAgICAgICBvdXQzMl9RMTRbIDEgXSA9
IHNpbGtfTFNISUZUKCBzaWxrX1NNTEFXQiggU1sgMiBdLCBCX1EyOFsgMCBdLCBpblsgMiAqIGsg
KyAxIF0gKSwgMiApOworCisgICAgICAgIFNbIDAgXSA9IFNbIDEgXSArIHNpbGtfUlNISUZUX1JP
VU5EKCBzaWxrX1NNVUxXQiggb3V0MzJfUTE0WyAwIF0sIEEwX0xfUTI4ICksIDE0ICk7CisgICAg
ICAgIFNbIDIgXSA9IFNbIDMgXSArIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX1NNVUxXQiggb3V0
MzJfUTE0WyAxIF0sIEEwX0xfUTI4ICksIDE0ICk7CisgICAgICAgIFNbIDAgXSA9IHNpbGtfU01M
QVdCKCBTWyAwIF0sIG91dDMyX1ExNFsgMCBdLCBBMF9VX1EyOCApOworICAgICAgICBTWyAyIF0g
PSBzaWxrX1NNTEFXQiggU1sgMiBdLCBvdXQzMl9RMTRbIDEgXSwgQTBfVV9RMjggKTsKKyAgICAg
ICAgU1sgMCBdID0gc2lsa19TTUxBV0IoIFNbIDAgXSwgQl9RMjhbIDEgXSwgaW5bIDIgKiBrICsg
MCBdICk7CisgICAgICAgIFNbIDIgXSA9IHNpbGtfU01MQVdCKCBTWyAyIF0sIEJfUTI4WyAxIF0s
IGluWyAyICogayArIDEgXSApOworCisgICAgICAgIFNbIDEgXSA9IHNpbGtfUlNISUZUX1JPVU5E
KCBzaWxrX1NNVUxXQiggb3V0MzJfUTE0WyAwIF0sIEExX0xfUTI4ICksIDE0ICk7CisgICAgICAg
IFNbIDMgXSA9IHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX1NNVUxXQiggb3V0MzJfUTE0WyAxIF0s
IEExX0xfUTI4ICksIDE0ICk7CisgICAgICAgIFNbIDEgXSA9IHNpbGtfU01MQVdCKCBTWyAxIF0s
IG91dDMyX1ExNFsgMCBdLCBBMV9VX1EyOCApOworICAgICAgICBTWyAzIF0gPSBzaWxrX1NNTEFX
QiggU1sgMyBdLCBvdXQzMl9RMTRbIDEgXSwgQTFfVV9RMjggKTsKKyAgICAgICAgU1sgMSBdID0g
c2lsa19TTUxBV0IoIFNbIDEgXSwgQl9RMjhbIDIgXSwgaW5bIDIgKiBrICsgMCBdICk7CisgICAg
ICAgIFNbIDMgXSA9IHNpbGtfU01MQVdCKCBTWyAzIF0sIEJfUTI4WyAyIF0sIGluWyAyICogayAr
IDEgXSApOworCisgICAgICAgIC8qIFNjYWxlIGJhY2sgdG8gUTAgYW5kIHNhdHVyYXRlICovCisg
ICAgICAgIG91dFsgMiAqIGsgKyAwIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JT
SElGVCggb3V0MzJfUTE0WyAwIF0gKyAoMTw8MTQpIC0gMSwgMTQgKSApOworICAgICAgICBvdXRb
IDIgKiBrICsgMSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMy
X1ExNFsgMSBdICsgKDE8PDE0KSAtIDEsIDE0ICkgKTsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvYndleHBhbmRlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2J3ZXhwYW5kZXIuYwppbmRleCAyZWI0NDU2Njk1ZTc5MTky
MDM3NTdiOGZmOGY2MDY3MzkxM2VmMTE2Li5hZmE5NzkwN2VjODAyYzYzYzY1ZDUyNjdjMTQ1OGMw
N2M4MjU3MjA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYndleHBhbmRlci5jCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9id2V4cGFu
ZGVyLmMKQEAgLTQ1LDcgKzQ1LDcgQEAgdm9pZCBzaWxrX2J3ZXhwYW5kZXIoCiAgICAgLyogQmlh
cyBpbiBzaWxrX1NNVUxXQiBjYW4gbGVhZCB0byB1bnN0YWJsZSBmaWx0ZXJzICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwogICAgIGZvciggaSA9IDA7IGkgPCBkIC0gMTsgaSsrICkg
ewogICAgICAgICBhclsgaSBdICAgID0gKG9wdXNfaW50MTYpc2lsa19SU0hJRlRfUk9VTkQoIHNp
bGtfTVVMKCBjaGlycF9RMTYsIGFyWyBpIF0gICAgICAgICAgICAgKSwgMTYgKTsKLSAgICAgICAg
Y2hpcnBfUTE2ICs9ICAgICAgICAgICAgc2lsa19SU0hJRlRfUk9VTkQoIHNpbGtfTVVMKCBjaGly
cF9RMTYsIGNoaXJwX21pbnVzX29uZV9RMTYgKSwgMTYgKTsKKyAgICAgICAgY2hpcnBfUTE2ICs9
ICAgICAgICAgICAgIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX01VTCggY2hpcnBfUTE2LCBjaGly
cF9taW51c19vbmVfUTE2ICksIDE2ICk7CiAgICAgfQogICAgIGFyWyBkIC0gMSBdID0gKG9wdXNf
aW50MTYpc2lsa19SU0hJRlRfUk9VTkQoIHNpbGtfTVVMKCBjaGlycF9RMTYsIGFyWyBkIC0gMSBd
ICksIDE2ICk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvY29udHJvbC5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2wuaApp
bmRleCA3NDdlNTQyNmEwYzNmYzdjYjliNWJkYjc4MzRkZGQ5OGEyM2U5NzkxLi5iNzZlYzMzY2Q2
ZGRiNjM4NmY1NjRlMWQ5OWQzZmY1N2Q3ZTY5M2FkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvY29udHJvbC5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9jb250cm9sLmgKQEAgLTc3LDYgKzc3LDkgQEAgdHlwZWRlZiBzdHJ1Y3Qgewog
ICAgIC8qIEk6ICAgRmxhZyB0byBlbmFibGUgaW4tYmFuZCBGb3J3YXJkIEVycm9yIENvcnJlY3Rp
b24gKEZFQyk7IDAvMSAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50IHVzZUlu
QmFuZEZFQzsKIAorICAgIC8qIEk6ICAgRmxhZyB0byBhY3R1YWxseSBjb2RlIGluLWJhbmQgRm9y
d2FyZCBFcnJvciBDb3JyZWN0aW9uIChGRUMpIGluIHRoZSBjdXJyZW50IHBhY2tldDsgMC8xICov
CisgICAgb3B1c19pbnQgTEJSUl9jb2RlZDsKKwogICAgIC8qIEk6ICAgRmxhZyB0byBlbmFibGUg
ZGlzY29udGludW91cyB0cmFuc21pc3Npb24gKERUWCk7IDAvMSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwogICAgIG9wdXNfaW50IHVzZURUWDsKIApAQCAtMTEwLDYgKzExMywxMSBAQCB0
eXBlZGVmIHN0cnVjdCB7CiAgICAgLyogTzogICBUZWxscyB0aGUgT3B1cyBlbmNvZGVyIHdlJ3Jl
IHJlYWR5IHRvIHN3aXRjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgb3B1c19pbnQgc3dpdGNoUmVhZHk7CiAKKyAgICAvKiBPOiBTSUxLIFNpZ25hbCB0eXBlICov
CisgICAgb3B1c19pbnQgc2lnbmFsVHlwZTsKKworICAgIC8qIE86IFNJTEsgb2Zmc2V0IChkaXRo
ZXJpbmcpICovCisgICAgb3B1c19pbnQgb2Zmc2V0OwogfSBzaWxrX0VuY0NvbnRyb2xTdHJ1Y3Q7
CiAKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9jb250cm9sX1NOUi5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2NvbnRyb2xfU05SLmMKaW5kZXggY2VlODdlYjBkOGIzN2M1NGUwNTcwNmZiNjhhOGNkYzE4
YzlhYWI0Yy4uNDY0YzFhY2ZlODg0NTFhYmY2YTNlZDQ1ZGIyNmIyNWNkMGM2NTNmMCAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2NvbnRyb2xfU05SLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2xfU05SLmMKQEAgLTY0LDgg
KzY0LDcgQEAgb3B1c19pbnQgc2lsa19jb250cm9sX1NOUigKICAgICAgICAgLyogRmluZCBiaXRy
YXRlIGludGVydmFsIGluIHRhYmxlIGFuZCBpbnRlcnBvbGF0ZSAqLwogICAgICAgICBmb3IoIGsg
PSAxOyBrIDwgVEFSR0VUX1JBVEVfVEFCX1NaOyBrKysgKSB7CiAgICAgICAgICAgICBpZiggVGFy
Z2V0UmF0ZV9icHMgPD0gcmF0ZVRhYmxlWyBrIF0gKSB7Ci0gICAgICAgICAgICAgICAgZnJhY19R
NiA9IHNpbGtfRElWMzIoIHNpbGtfTFNISUZUKCBUYXJnZXRSYXRlX2JwcyAtIHJhdGVUYWJsZVsg
ayAtIDEgXSwgNiApLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHJhdGVUYWJsZVsgayBdIC0gcmF0ZVRhYmxlWyBrIC0gMSBdICk7CisgICAgICAgICAg
ICAgICAgZnJhY19RNiA9IHNpbGtfRElWMzIoIHNpbGtfTFNISUZUKCBUYXJnZXRSYXRlX2JwcyAt
IHJhdGVUYWJsZVsgayAtIDEgXSwgNiApLCByYXRlVGFibGVbIGsgXSAtIHJhdGVUYWJsZVsgayAt
IDEgXSApOwogICAgICAgICAgICAgICAgIHBzRW5jQy0+U05SX2RCX1E3ID0gc2lsa19MU0hJRlQo
IHNpbGtfU05SX3RhYmxlX1ExWyBrIC0gMSBdLCA2ICkgKyBzaWxrX01VTCggZnJhY19RNiwgc2ls
a19TTlJfdGFibGVfUTFbIGsgXSAtIHNpbGtfU05SX3RhYmxlX1ExWyBrIC0gMSBdICk7CiAgICAg
ICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvY29udHJv
bF9jb2RlYy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2xfY29kZWMuYwppbmRleCAwNDRlZWEzZjJhODRlMGFhNDQz
ZjA1Y2ZjNWFmMmY1YzVlNDU0Y2FkLi45MzUwZmQ0YjJiNGNjOWI1ODg5MWQ4M2I3YjdiNzc0ZjI3
NGIxODFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvY29udHJvbF9jb2RlYy5jCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9jb250cm9s
X2NvZGVjLmMKQEAgLTU3LDcgKzU3LDcgQEAgc3RhdGljIG9wdXNfaW50IHNpbGtfc2V0dXBfY29t
cGxleGl0eSgKIAogc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50IHNpbGtfc2V0dXBfTEJSUigK
ICAgICBzaWxrX2VuY29kZXJfc3RhdGUgICAgICAgICAgICAgICpwc0VuY0MsICAgICAgICAgICAg
LyogSS9PICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAg
ICAgICAgICAgICBUYXJnZXRSYXRlX2JwcyAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IHNpbGtfRW5jQ29udHJvbFN0cnVjdCAgICAgKmVuY0NvbnRyb2wgICAg
ICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKIApAQCAtNjUsNyArNjUs
NiBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQgc2lsa19zZXR1cF9MQlJSKAogb3B1c19p
bnQgc2lsa19jb250cm9sX2VuY29kZXIoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRlX0Z4eCAgICAg
ICAgICAqcHNFbmMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBQb2lu
dGVyIHRvIFNpbGsgZW5jb2RlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX0VuY0NvbnRyb2xTdHJ1Y3QgICAgICAgICAgICpl
bmNDb250cm9sLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvbnRyb2wgc3Ry
dWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgVGFyZ2V0UmF0
ZV9icHMsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgVGFyZ2V0IG1heCBiaXRyYXRl
IChicHMpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBhbGxvd19id19zd2l0Y2gs
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBGbGFnIHRvIGFsbG93IHN3aXRjaGluZyBh
dWRpbyBiYW5kd2lkdGggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGNoYW5uZWxOYiwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIENoYW5uZWwgbnVtYmVyICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0
IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgZm9yY2VfZnNfa0h6CkBAIC0xMjUsNyArMTI0LDcg
QEAgb3B1c19pbnQgc2lsa19jb250cm9sX2VuY29kZXIoCiAgICAgLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIFNldCBMQlJSIHVzYWdlICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCi0gICAgcmV0ICs9IHNpbGtfc2V0dXBfTEJSUiggJnBzRW5jLT5z
Q21uLCBUYXJnZXRSYXRlX2JwcyApOworICAgIHJldCArPSBzaWxrX3NldHVwX0xCUlIoICZwc0Vu
Yy0+c0NtbiwgZW5jQ29udHJvbCApOwogCiAgICAgcHNFbmMtPnNDbW4uY29udHJvbGxlZF9zaW5j
ZV9sYXN0X3BheWxvYWQgPSAxOwogCkBAIC0yNDQsNyArMjQzLDYgQEAgc3RhdGljIG9wdXNfaW50
IHNpbGtfc2V0dXBfZnMoCiAgICAgaWYoIHBzRW5jLT5zQ21uLmZzX2tIeiAhPSBmc19rSHogKSB7
CiAgICAgICAgIC8qIHJlc2V0IHBhcnQgb2YgdGhlIHN0YXRlICovCiAgICAgICAgIHNpbGtfbWVt
c2V0KCAmcHNFbmMtPnNTaGFwZSwgICAgICAgICAgICAgICAwLCBzaXplb2YoIHBzRW5jLT5zU2hh
cGUgKSApOwotICAgICAgICBzaWxrX21lbXNldCggJnBzRW5jLT5zUHJlZmlsdCwgICAgICAgICAg
ICAgMCwgc2l6ZW9mKCBwc0VuYy0+c1ByZWZpbHQgKSApOwogICAgICAgICBzaWxrX21lbXNldCgg
JnBzRW5jLT5zQ21uLnNOU1EsICAgICAgICAgICAgMCwgc2l6ZW9mKCBwc0VuYy0+c0Ntbi5zTlNR
ICkgKTsKICAgICAgICAgc2lsa19tZW1zZXQoIHBzRW5jLT5zQ21uLnByZXZfTkxTRnFfUTE1LCAg
IDAsIHNpemVvZiggcHNFbmMtPnNDbW4ucHJldl9OTFNGcV9RMTUgKSApOwogICAgICAgICBzaWxr
X21lbXNldCggJnBzRW5jLT5zQ21uLnNMUC5Jbl9MUF9TdGF0ZSwgMCwgc2l6ZW9mKCBwc0VuYy0+
c0Ntbi5zTFAuSW5fTFBfU3RhdGUgKSApOwpAQCAtMjU1LDcgKzI1Myw2IEBAIHN0YXRpYyBvcHVz
X2ludCBzaWxrX3NldHVwX2ZzKAogICAgICAgICAvKiBJbml0aWFsaXplIG5vbi16ZXJvIHBhcmFt
ZXRlcnMgKi8KICAgICAgICAgcHNFbmMtPnNDbW4ucHJldkxhZyAgICAgICAgICAgICAgICAgICAg
ID0gMTAwOwogICAgICAgICBwc0VuYy0+c0Ntbi5maXJzdF9mcmFtZV9hZnRlcl9yZXNldCAgICAg
PSAxOwotICAgICAgICBwc0VuYy0+c1ByZWZpbHQubGFnUHJldiAgICAgICAgICAgICAgICAgPSAx
MDA7CiAgICAgICAgIHBzRW5jLT5zU2hhcGUuTGFzdEdhaW5JbmRleCAgICAgICAgICAgICA9IDEw
OwogICAgICAgICBwc0VuYy0+c0Ntbi5zTlNRLmxhZ1ByZXYgICAgICAgICAgICAgICAgPSAxMDA7
CiAgICAgICAgIHBzRW5jLT5zQ21uLnNOU1EucHJldl9nYWluX1ExNiAgICAgICAgICA9IDY1NTM2
OwpAQCAtMjkzLDEzICsyOTAsMTAgQEAgc3RhdGljIG9wdXNfaW50IHNpbGtfc2V0dXBfZnMoCiAg
ICAgICAgICAgICBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCA9IHNpbGtfU01VTEJC
KCBGSU5EX1BJVENIX0xQQ19XSU5fTVNfMl9TRiwgZnNfa0h6ICk7CiAgICAgICAgIH0KICAgICAg
ICAgaWYoIHBzRW5jLT5zQ21uLmZzX2tIeiA9PSAxNiApIHsKLSAgICAgICAgICAgIHBzRW5jLT5z
Q21uLm11X0xUUF9ROSA9IFNJTEtfRklYX0NPTlNUKCBNVV9MVFBfUVVBTlRfV0IsIDkgKTsKICAg
ICAgICAgICAgIHBzRW5jLT5zQ21uLnBpdGNoX2xhZ19sb3dfYml0c19pQ0RGID0gc2lsa191bmlm
b3JtOF9pQ0RGOwogICAgICAgICB9IGVsc2UgaWYoIHBzRW5jLT5zQ21uLmZzX2tIeiA9PSAxMiAp
IHsKLSAgICAgICAgICAgIHBzRW5jLT5zQ21uLm11X0xUUF9ROSA9IFNJTEtfRklYX0NPTlNUKCBN
VV9MVFBfUVVBTlRfTUIsIDkgKTsKICAgICAgICAgICAgIHBzRW5jLT5zQ21uLnBpdGNoX2xhZ19s
b3dfYml0c19pQ0RGID0gc2lsa191bmlmb3JtNl9pQ0RGOwogICAgICAgICB9IGVsc2UgewotICAg
ICAgICAgICAgcHNFbmMtPnNDbW4ubXVfTFRQX1E5ID0gU0lMS19GSVhfQ09OU1QoIE1VX0xUUF9R
VUFOVF9OQiwgOSApOwogICAgICAgICAgICAgcHNFbmMtPnNDbW4ucGl0Y2hfbGFnX2xvd19iaXRz
X2lDREYgPSBzaWxrX3VuaWZvcm00X2lDREY7CiAgICAgICAgIH0KICAgICB9CkBAIC0zMTksNjAg
KzMxMyw3NSBAQCBzdGF0aWMgb3B1c19pbnQgc2lsa19zZXR1cF9jb21wbGV4aXR5KAogCiAgICAg
LyogU2V0IGVuY29kaW5nIGNvbXBsZXhpdHkgKi8KICAgICBzaWxrX2Fzc2VydCggQ29tcGxleGl0
eSA+PSAwICYmIENvbXBsZXhpdHkgPD0gMTAgKTsKLSAgICBpZiggQ29tcGxleGl0eSA8IDIgKSB7
CisgICAgaWYoIENvbXBsZXhpdHkgPCAxICkgewogICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1h
dGlvbkNvbXBsZXhpdHkgICAgICAgPSBTSUxLX1BFX01JTl9DT01QTEVYOwogICAgICAgICBwc0Vu
Y0MtPnBpdGNoRXN0aW1hdGlvblRocmVzaG9sZF9RMTYgICAgPSBTSUxLX0ZJWF9DT05TVCggMC44
LCAxNiApOwogICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyICAgICAgICAg
PSA2OwotICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSA4
OworICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAxMjsK
ICAgICAgICAgcHNFbmNDLT5sYV9zaGFwZSAgICAgICAgICAgICAgICAgICAgICAgID0gMyAqIHBz
RW5jQy0+ZnNfa0h6OwogICAgICAgICBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gICAg
ICAgICAgPSAxOwogICAgICAgICBwc0VuY0MtPnVzZUludGVycG9sYXRlZE5MU0ZzICAgICAgICAg
ICAgPSAwOwotICAgICAgICBwc0VuY0MtPkxUUFF1YW50TG93Q29tcGxleGl0eSAgICAgICAgICAg
PSAxOwogICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMgICAgICAgICAgICAgPSAy
OwogICAgICAgICBwc0VuY0MtPndhcnBpbmdfUTE2ICAgICAgICAgICAgICAgICAgICAgPSAwOwot
ICAgIH0gZWxzZSBpZiggQ29tcGxleGl0eSA8IDQgKSB7CisgICAgfSBlbHNlIGlmKCBDb21wbGV4
aXR5IDwgMiApIHsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25Db21wbGV4aXR5ICAg
ICAgID0gU0lMS19QRV9NSURfQ09NUExFWDsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRp
b25UaHJlc2hvbGRfUTE2ICAgID0gU0lMS19GSVhfQ09OU1QoIDAuNzYsIDE2ICk7CiAgICAgICAg
IHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIgICAgICAgICA9IDg7Ci0gICAgICAgIHBz
RW5jQy0+c2hhcGluZ0xQQ09yZGVyICAgICAgICAgICAgICAgICA9IDEwOworICAgICAgICBwc0Vu
Y0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAxNDsKICAgICAgICAgcHNFbmND
LT5sYV9zaGFwZSAgICAgICAgICAgICAgICAgICAgICAgID0gNSAqIHBzRW5jQy0+ZnNfa0h6Owog
ICAgICAgICBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gICAgICAgICAgPSAxOwogICAg
ICAgICBwc0VuY0MtPnVzZUludGVycG9sYXRlZE5MU0ZzICAgICAgICAgICAgPSAwOwotICAgICAg
ICBwc0VuY0MtPkxUUFF1YW50TG93Q29tcGxleGl0eSAgICAgICAgICAgPSAwOworICAgICAgICBw
c0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMgICAgICAgICAgICAgPSAzOworICAgICAgICBwc0Vu
Y0MtPndhcnBpbmdfUTE2ICAgICAgICAgICAgICAgICAgICAgPSAwOworICAgIH0gZWxzZSBpZigg
Q29tcGxleGl0eSA8IDMgKSB7CisgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uQ29tcGxl
eGl0eSAgICAgICA9IFNJTEtfUEVfTUlOX0NPTVBMRVg7CisgICAgICAgIHBzRW5jQy0+cGl0Y2hF
c3RpbWF0aW9uVGhyZXNob2xkX1ExNiAgICA9IFNJTEtfRklYX0NPTlNUKCAwLjgsIDE2ICk7Cisg
ICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIgICAgICAgICA9IDY7CisgICAg
ICAgIHBzRW5jQy0+c2hhcGluZ0xQQ09yZGVyICAgICAgICAgICAgICAgICA9IDEyOworICAgICAg
ICBwc0VuY0MtPmxhX3NoYXBlICAgICAgICAgICAgICAgICAgICAgICAgPSAzICogcHNFbmNDLT5m
c19rSHo7CisgICAgICAgIHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbiAgICAgICAgICA9
IDI7CisgICAgICAgIHBzRW5jQy0+dXNlSW50ZXJwb2xhdGVkTkxTRnMgICAgICAgICAgICA9IDA7
CisgICAgICAgIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9ycyAgICAgICAgICAgICA9IDI7Cisg
ICAgICAgIHBzRW5jQy0+d2FycGluZ19RMTYgICAgICAgICAgICAgICAgICAgICA9IDA7CisgICAg
fSBlbHNlIGlmKCBDb21wbGV4aXR5IDwgNCApIHsKKyAgICAgICAgcHNFbmNDLT5waXRjaEVzdGlt
YXRpb25Db21wbGV4aXR5ICAgICAgID0gU0lMS19QRV9NSURfQ09NUExFWDsKKyAgICAgICAgcHNF
bmNDLT5waXRjaEVzdGltYXRpb25UaHJlc2hvbGRfUTE2ICAgID0gU0lMS19GSVhfQ09OU1QoIDAu
NzYsIDE2ICk7CisgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIgICAgICAg
ICA9IDg7CisgICAgICAgIHBzRW5jQy0+c2hhcGluZ0xQQ09yZGVyICAgICAgICAgICAgICAgICA9
IDE0OworICAgICAgICBwc0VuY0MtPmxhX3NoYXBlICAgICAgICAgICAgICAgICAgICAgICAgPSA1
ICogcHNFbmNDLT5mc19rSHo7CisgICAgICAgIHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lv
biAgICAgICAgICA9IDI7CisgICAgICAgIHBzRW5jQy0+dXNlSW50ZXJwb2xhdGVkTkxTRnMgICAg
ICAgICAgICA9IDA7CiAgICAgICAgIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9ycyAgICAgICAg
ICAgICA9IDQ7CiAgICAgICAgIHBzRW5jQy0+d2FycGluZ19RMTYgICAgICAgICAgICAgICAgICAg
ICA9IDA7CiAgICAgfSBlbHNlIGlmKCBDb21wbGV4aXR5IDwgNiApIHsKICAgICAgICAgcHNFbmND
LT5waXRjaEVzdGltYXRpb25Db21wbGV4aXR5ICAgICAgID0gU0lMS19QRV9NSURfQ09NUExFWDsK
ICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25UaHJlc2hvbGRfUTE2ICAgID0gU0lMS19G
SVhfQ09OU1QoIDAuNzQsIDE2ICk7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uTFBD
T3JkZXIgICAgICAgICA9IDEwOwotICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAg
ICAgICAgICAgICAgPSAxMjsKKyAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIgICAgICAg
ICAgICAgICAgID0gMTY7CiAgICAgICAgIHBzRW5jQy0+bGFfc2hhcGUgICAgICAgICAgICAgICAg
ICAgICAgICA9IDUgKiBwc0VuY0MtPmZzX2tIejsKICAgICAgICAgcHNFbmNDLT5uU3RhdGVzRGVs
YXllZERlY2lzaW9uICAgICAgICAgID0gMjsKICAgICAgICAgcHNFbmNDLT51c2VJbnRlcnBvbGF0
ZWROTFNGcyAgICAgICAgICAgID0gMTsKLSAgICAgICAgcHNFbmNDLT5MVFBRdWFudExvd0NvbXBs
ZXhpdHkgICAgICAgICAgID0gMDsKLSAgICAgICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vydml2b3Jz
ICAgICAgICAgICAgID0gODsKKyAgICAgICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vydml2b3JzICAg
ICAgICAgICAgID0gNjsKICAgICAgICAgcHNFbmNDLT53YXJwaW5nX1ExNiAgICAgICAgICAgICAg
ICAgICAgID0gcHNFbmNDLT5mc19rSHogKiBTSUxLX0ZJWF9DT05TVCggV0FSUElOR19NVUxUSVBM
SUVSLCAxNiApOwogICAgIH0gZWxzZSBpZiggQ29tcGxleGl0eSA8IDggKSB7CiAgICAgICAgIHBz
RW5jQy0+cGl0Y2hFc3RpbWF0aW9uQ29tcGxleGl0eSAgICAgICA9IFNJTEtfUEVfTUlEX0NPTVBM
RVg7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNiAgICA9IFNJ
TEtfRklYX0NPTlNUKCAwLjcyLCAxNiApOwogICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlv
bkxQQ09yZGVyICAgICAgICAgPSAxMjsKLSAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIg
ICAgICAgICAgICAgICAgID0gMTQ7CisgICAgICAgIHBzRW5jQy0+c2hhcGluZ0xQQ09yZGVyICAg
ICAgICAgICAgICAgICA9IDIwOwogICAgICAgICBwc0VuY0MtPmxhX3NoYXBlICAgICAgICAgICAg
ICAgICAgICAgICAgPSA1ICogcHNFbmNDLT5mc19rSHo7CiAgICAgICAgIHBzRW5jQy0+blN0YXRl
c0RlbGF5ZWREZWNpc2lvbiAgICAgICAgICA9IDM7CiAgICAgICAgIHBzRW5jQy0+dXNlSW50ZXJw
b2xhdGVkTkxTRnMgICAgICAgICAgICA9IDE7Ci0gICAgICAgIHBzRW5jQy0+TFRQUXVhbnRMb3dD
b21wbGV4aXR5ICAgICAgICAgICA9IDA7Ci0gICAgICAgIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZp
dm9ycyAgICAgICAgICAgICA9IDE2OworICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZv
cnMgICAgICAgICAgICAgPSA4OwogICAgICAgICBwc0VuY0MtPndhcnBpbmdfUTE2ICAgICAgICAg
ICAgICAgICAgICAgPSBwc0VuY0MtPmZzX2tIeiAqIFNJTEtfRklYX0NPTlNUKCBXQVJQSU5HX01V
TFRJUExJRVIsIDE2ICk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGlt
YXRpb25Db21wbGV4aXR5ICAgICAgID0gU0lMS19QRV9NQVhfQ09NUExFWDsKICAgICAgICAgcHNF
bmNDLT5waXRjaEVzdGltYXRpb25UaHJlc2hvbGRfUTE2ICAgID0gU0lMS19GSVhfQ09OU1QoIDAu
NywgMTYgKTsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25MUENPcmRlciAgICAgICAg
ID0gMTY7Ci0gICAgICAgIHBzRW5jQy0+c2hhcGluZ0xQQ09yZGVyICAgICAgICAgICAgICAgICA9
IDE2OworICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAy
NDsKICAgICAgICAgcHNFbmNDLT5sYV9zaGFwZSAgICAgICAgICAgICAgICAgICAgICAgID0gNSAq
IHBzRW5jQy0+ZnNfa0h6OwogICAgICAgICBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24g
ICAgICAgICAgPSBNQVhfREVMX0RFQ19TVEFURVM7CiAgICAgICAgIHBzRW5jQy0+dXNlSW50ZXJw
b2xhdGVkTkxTRnMgICAgICAgICAgICA9IDE7Ci0gICAgICAgIHBzRW5jQy0+TFRQUXVhbnRMb3dD
b21wbGV4aXR5ICAgICAgICAgICA9IDA7Ci0gICAgICAgIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZp
dm9ycyAgICAgICAgICAgICA9IDMyOworICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZv
cnMgICAgICAgICAgICAgPSAxNjsKICAgICAgICAgcHNFbmNDLT53YXJwaW5nX1ExNiAgICAgICAg
ICAgICAgICAgICAgID0gcHNFbmNDLT5mc19rSHogKiBTSUxLX0ZJWF9DT05TVCggV0FSUElOR19N
VUxUSVBMSUVSLCAxNiApOwogICAgIH0KIApAQCAtMzg3LDQwICszOTYsMjYgQEAgc3RhdGljIG9w
dXNfaW50IHNpbGtfc2V0dXBfY29tcGxleGl0eSgKICAgICBzaWxrX2Fzc2VydCggcHNFbmNDLT53
YXJwaW5nX1ExNiAgICAgICAgICAgICA8PSAzMjc2NyAgICAgICAgICAgICAgICAgICAgKTsKICAg
ICBzaWxrX2Fzc2VydCggcHNFbmNDLT5sYV9zaGFwZSAgICAgICAgICAgICAgICA8PSBMQV9TSEFQ
RV9NQVggICAgICAgICAgICAgKTsKICAgICBzaWxrX2Fzc2VydCggcHNFbmNDLT5zaGFwZVdpbkxl
bmd0aCAgICAgICAgICA8PSBTSEFQRV9MUENfV0lOX01BWCAgICAgICAgKTsKLSAgICBzaWxrX2Fz
c2VydCggcHNFbmNDLT5OTFNGX01TVlFfU3Vydml2b3JzICAgICA8PSBOTFNGX1ZRX01BWF9TVVJW
SVZPUlMgICAgKTsKIAogICAgIHJldHVybiByZXQ7CiB9CiAKIHN0YXRpYyBPUFVTX0lOTElORSBv
cHVzX2ludCBzaWxrX3NldHVwX0xCUlIoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRlICAgICAgICAg
ICpwc0VuY0MsICAgICAgICAgICAgLyogSS9PICAgICAgICAgICAgICAgICAgICAgICovCi0gICAg
Y29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIFRhcmdldFJhdGVfYnBzICAgICAgLyogSSAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19FbmNDb250cm9sU3RydWN0ICpl
bmNDb250cm9sICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7CiAg
ICAgb3B1c19pbnQgICBMQlJSX2luX3ByZXZpb3VzX3BhY2tldCwgcmV0ID0gU0lMS19OT19FUlJP
UjsKLSAgICBvcHVzX2ludDMyIExCUlJfcmF0ZV90aHJlc19icHM7CiAKICAgICBMQlJSX2luX3By
ZXZpb3VzX3BhY2tldCA9IHBzRW5jQy0+TEJSUl9lbmFibGVkOwotICAgIHBzRW5jQy0+TEJSUl9l
bmFibGVkID0gMDsKLSAgICBpZiggcHNFbmNDLT51c2VJbkJhbmRGRUMgJiYgcHNFbmNDLT5QYWNr
ZXRMb3NzX3BlcmMgPiAwICkgewotICAgICAgICBpZiggcHNFbmNDLT5mc19rSHogPT0gOCApIHsK
LSAgICAgICAgICAgIExCUlJfcmF0ZV90aHJlc19icHMgPSBMQlJSX05CX01JTl9SQVRFX0JQUzsK
LSAgICAgICAgfSBlbHNlIGlmKCBwc0VuY0MtPmZzX2tIeiA9PSAxMiApIHsKLSAgICAgICAgICAg
IExCUlJfcmF0ZV90aHJlc19icHMgPSBMQlJSX01CX01JTl9SQVRFX0JQUzsKKyAgICBwc0VuY0Mt
PkxCUlJfZW5hYmxlZCA9IGVuY0NvbnRyb2wtPkxCUlJfY29kZWQ7CisgICAgaWYoIHBzRW5jQy0+
TEJSUl9lbmFibGVkICkgeworICAgICAgICAvKiBTZXQgZ2FpbiBpbmNyZWFzZSBmb3IgY29kaW5n
IExCUlIgZXhjaXRhdGlvbiAqLworICAgICAgICBpZiggTEJSUl9pbl9wcmV2aW91c19wYWNrZXQg
PT0gMCApIHsKKyAgICAgICAgICAgIC8qIFByZXZpb3VzIHBhY2tldCBkaWQgbm90IGhhdmUgTEJS
UiwgYW5kIHdhcyB0aGVyZWZvcmUgY29kZWQgYXQgYSBoaWdoZXIgYml0cmF0ZSAqLworICAgICAg
ICAgICAgcHNFbmNDLT5MQlJSX0dhaW5JbmNyZWFzZXMgPSA3OwogICAgICAgICB9IGVsc2Ugewot
ICAgICAgICAgICAgTEJSUl9yYXRlX3RocmVzX2JwcyA9IExCUlJfV0JfTUlOX1JBVEVfQlBTOwot
ICAgICAgICB9Ci0gICAgICAgIExCUlJfcmF0ZV90aHJlc19icHMgPSBzaWxrX1NNVUxXQiggc2ls
a19NVUwoIExCUlJfcmF0ZV90aHJlc19icHMsIDEyNSAtIHNpbGtfbWluKCBwc0VuY0MtPlBhY2tl
dExvc3NfcGVyYywgMjUgKSApLCBTSUxLX0ZJWF9DT05TVCggMC4wMSwgMTYgKSApOwotCi0gICAg
ICAgIGlmKCBUYXJnZXRSYXRlX2JwcyA+IExCUlJfcmF0ZV90aHJlc19icHMgKSB7Ci0gICAgICAg
ICAgICAvKiBTZXQgZ2FpbiBpbmNyZWFzZSBmb3IgY29kaW5nIExCUlIgZXhjaXRhdGlvbiAqLwot
ICAgICAgICAgICAgaWYoIExCUlJfaW5fcHJldmlvdXNfcGFja2V0ID09IDAgKSB7Ci0gICAgICAg
ICAgICAgICAgLyogUHJldmlvdXMgcGFja2V0IGRpZCBub3QgaGF2ZSBMQlJSLCBhbmQgd2FzIHRo
ZXJlZm9yZSBjb2RlZCBhdCBhIGhpZ2hlciBiaXRyYXRlICovCi0gICAgICAgICAgICAgICAgcHNF
bmNDLT5MQlJSX0dhaW5JbmNyZWFzZXMgPSA3OwotICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAg
ICAgICAgICAgICBwc0VuY0MtPkxCUlJfR2FpbkluY3JlYXNlcyA9IHNpbGtfbWF4X2ludCggNyAt
IHNpbGtfU01VTFdCKCAob3B1c19pbnQzMilwc0VuY0MtPlBhY2tldExvc3NfcGVyYywgU0lMS19G
SVhfQ09OU1QoIDAuNCwgMTYgKSApLCAyICk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBw
c0VuY0MtPkxCUlJfZW5hYmxlZCA9IDE7CisgICAgICAgICAgICBwc0VuY0MtPkxCUlJfR2Fpbklu
Y3JlYXNlcyA9IHNpbGtfbWF4X2ludCggNyAtIHNpbGtfU01VTFdCKCAob3B1c19pbnQzMilwc0Vu
Y0MtPlBhY2tldExvc3NfcGVyYywgU0lMS19GSVhfQ09OU1QoIDAuNCwgMTYgKSApLCAyICk7CiAg
ICAgICAgIH0KICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWJ1Zy5oIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlYnVnLmgK
aW5kZXggZWZiNmQzZTk5ZTdmODMxNzVmZTAzNDJkZTAwNGM4NjdjMDhhZjhkYi4uNmY2OGMxY2Ew
ZjAyMjU3NzMzMDM4ZTBmOTFjNDE4YzMxOWE5ODZiMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlYnVnLmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2RlYnVnLmgKQEAgLTM5LDIzICszOSwxMCBAQCBleHRlcm4gIkMiCiAKIHVuc2ln
bmVkIGxvbmcgR2V0SGlnaFJlc29sdXRpb25UaW1lKHZvaWQpOyAvKiBPICB0aW1lIGluIHVzZWMq
LwogCi0vKiBtYWtlIFNJTEtfREVCVUcgZGVwZW5kZW50IG9uIGNvbXBpbGVyJ3MgX0RFQlVHICov
Ci0jaWYgZGVmaW5lZCBfV0lOMzIKLSAgICAjaWZkZWYgX0RFQlVHCi0gICAgICAgICNkZWZpbmUg
U0lMS19ERUJVRyAgMQotICAgICNlbHNlCi0gICAgICAgICNkZWZpbmUgU0lMS19ERUJVRyAgMAot
ICAgICNlbmRpZgotCi0gICAgLyogb3ZlcnJ1bGUgdGhlIGFib3ZlICovCi0gICAgI2lmIDAKLSAg
ICAvKiAgI2RlZmluZSBOT19BU1NFUlRTKi8KLSAgICAjdW5kZWYgIFNJTEtfREVCVUcKLSAgICAj
ZGVmaW5lIFNJTEtfREVCVUcgIDEKLSAgICAjZW5kaWYKLSNlbHNlCi0gICAgI2RlZmluZSBTSUxL
X0RFQlVHICAwCi0jZW5kaWYKKy8qIFNldCB0byAxIHRvIGVuYWJsZSBERUJVR19TVE9SRV9EQVRB
KCkgbWFjcm9zIGZvciBkdW1waW5nCisgKiBpbnRlcm1lZGlhdGUgc2lnbmFscyBmcm9tIHRoZSBj
b2RlYy4KKyAqLworI2RlZmluZSBTSUxLX0RFQlVHIDAKIAogLyogRmxhZyBmb3IgdXNpbmcgdGlt
ZXJzICovCiAjZGVmaW5lIFNJTEtfVElDX1RPQyAgICAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2Rl
X2NvcmUuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9kZWNvZGVfY29yZS5jCmluZGV4IGU1NjljMGU3MmIzZTE3MTgyNmQ3MzBh
NGJlNjQ4MzZmYjBlYzBkOWEuLmZkNGU4NTdhZmE4YWNjYzZkN2ZhZDIwM2JiOTYwMTg4OWFkMDFk
OTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9kZWNvZGVfY29yZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWNvZGVfY29yZS5j
CkBAIC0yMjUsOCArMjI1LDYgQEAgdm9pZCBzaWxrX2RlY29kZV9jb3JlKAogICAgICAgICAgICAg
cHhxWyBpIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCggc2ls
a19TTVVMV1coIHNMUENfUTE0WyBNQVhfTFBDX09SREVSICsgaSBdLCBHYWluX1ExMCApLCA4ICkg
KTsKICAgICAgICAgfQogCi0gICAgICAgIC8qIERFQlVHX1NUT1JFX0RBVEEoIGRlYy5wY20sIHB4
cSwgcHNEZWMtPnN1YmZyX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQxNiApICkgKi8KLQogICAg
ICAgICAvKiBVcGRhdGUgTFBDIGZpbHRlciBzdGF0ZSAqLwogICAgICAgICBzaWxrX21lbWNweSgg
c0xQQ19RMTQsICZzTFBDX1ExNFsgcHNEZWMtPnN1YmZyX2xlbmd0aCBdLCBNQVhfTFBDX09SREVS
ICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKICAgICAgICAgcGV4Y19RMTQgKz0gcHNEZWMtPnN1
YmZyX2xlbmd0aDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWNvZGVfZnJhbWUuYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWNvZGVf
ZnJhbWUuYwppbmRleCBhNjA1ZDk1YWM2YWIxMGE3YWNlZjdhNWZhNTdlMzNlMDQwYmIwZjg2Li5k
ZmE3M2M0YTI5NjcwNjM0YWViNzAwNjEyNTJhZGE3MTM2ZWMyZGMyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
ZGVjb2RlX2ZyYW1lLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlY29kZV9mcmFtZS5jCkBAIC05Nyw2ICs5Nyw3IEBA
IG9wdXNfaW50IHNpbGtfZGVjb2RlX2ZyYW1lKAogICAgICAgICBwc0RlYy0+Zmlyc3RfZnJhbWVf
YWZ0ZXJfcmVzZXQgPSAwOwogICAgIH0gZWxzZSB7CiAgICAgICAgIC8qIEhhbmRsZSBwYWNrZXQg
bG9zcyBieSBleHRyYXBvbGF0aW9uICovCisgICAgICAgIHBzRGVjLT5pbmRpY2VzLnNpZ25hbFR5
cGUgPSBwc0RlYy0+cHJldlNpZ25hbFR5cGU7CiAgICAgICAgIHNpbGtfUExDKCBwc0RlYywgcHNE
ZWNDdHJsLCBwT3V0LCAxLCBhcmNoICk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2Rl
X3BhcmFtZXRlcnMuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9kZWNvZGVfcGFyYW1ldGVycy5jCmluZGV4IGUzNDViMWRjZWZi
OTQ2MDZiODljYTZhMWJhMDcwMDBiNGVmYjQ0MmYuLmE1NmE0MDk4NTg3NGY1NzliM2Q0MDkyMWY1
NmQwY2U0MDFjZDQ4MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWNvZGVfcGFyYW1ldGVycy5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9kZWNvZGVfcGFyYW1ldGVycy5jCkBAIC01Miw3ICs1Miw3IEBAIHZvaWQgc2lsa19kZWNv
ZGVfcGFyYW1ldGVycygKICAgICBzaWxrX05MU0ZfZGVjb2RlKCBwTkxTRl9RMTUsIHBzRGVjLT5p
bmRpY2VzLk5MU0ZJbmRpY2VzLCBwc0RlYy0+cHNOTFNGX0NCICk7CiAKICAgICAvKiBDb252ZXJ0
IE5MU0YgcGFyYW1ldGVycyB0byBBUiBwcmVkaWN0aW9uIGZpbHRlciBjb2VmZmljaWVudHMgKi8K
LSAgICBzaWxrX05MU0YyQSggcHNEZWNDdHJsLT5QcmVkQ29lZl9RMTJbIDEgXSwgcE5MU0ZfUTE1
LCBwc0RlYy0+TFBDX29yZGVyICk7CisgICAgc2lsa19OTFNGMkEoIHBzRGVjQ3RybC0+UHJlZENv
ZWZfUTEyWyAxIF0sIHBOTFNGX1ExNSwgcHNEZWMtPkxQQ19vcmRlciwgcHNEZWMtPmFyY2ggKTsK
IAogICAgIC8qIElmIGp1c3QgcmVzZXQsIGUuZy4sIGJlY2F1c2UgaW50ZXJuYWwgRnMgY2hhbmdl
ZCwgZG8gbm90IGFsbG93IGludGVycG9sYXRpb24gKi8KICAgICAvKiBpbXByb3ZlcyB0aGUgY2Fz
ZSBvZiBwYWNrZXQgbG9zcyBpbiB0aGUgZmlyc3QgZnJhbWUgYWZ0ZXIgYSBzd2l0Y2ggICAgICAg
ICAgICovCkBAIC02OSw3ICs2OSw3IEBAIHZvaWQgc2lsa19kZWNvZGVfcGFyYW1ldGVycygKICAg
ICAgICAgfQogCiAgICAgICAgIC8qIENvbnZlcnQgTkxTRiBwYXJhbWV0ZXJzIHRvIEFSIHByZWRp
Y3Rpb24gZmlsdGVyIGNvZWZmaWNpZW50cyAqLwotICAgICAgICBzaWxrX05MU0YyQSggcHNEZWND
dHJsLT5QcmVkQ29lZl9RMTJbIDAgXSwgcE5MU0YwX1ExNSwgcHNEZWMtPkxQQ19vcmRlciApOwor
ICAgICAgICBzaWxrX05MU0YyQSggcHNEZWNDdHJsLT5QcmVkQ29lZl9RMTJbIDAgXSwgcE5MU0Yw
X1ExNSwgcHNEZWMtPkxQQ19vcmRlciwgcHNEZWMtPmFyY2ggKTsKICAgICB9IGVsc2UgewogICAg
ICAgICAvKiBDb3B5IExQQyBjb2VmZmljaWVudHMgZm9yIGZpcnN0IGhhbGYgZnJvbSBzZWNvbmQg
aGFsZiAqLwogICAgICAgICBzaWxrX21lbWNweSggcHNEZWNDdHJsLT5QcmVkQ29lZl9RMTJbIDAg
XSwgcHNEZWNDdHJsLT5QcmVkQ29lZl9RMTJbIDEgXSwgcHNEZWMtPkxQQ19vcmRlciAqIHNpemVv
Ziggb3B1c19pbnQxNiApICk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVmaW5lLmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVmaW5l
LmgKaW5kZXggMTljOWIwMGUyNTllNzcxNmJjYjAyMzU0ZTM5MTRiMTM5NjAyZjM1My4uMjJmZDcy
MGI5NzZhZjIzM2VjMmRhZmM4M2Q2ZDk1YmUyNzkzZWQ2YiAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlZmlu
ZS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9kZWZpbmUuaApAQCAtNTYsNiArNTYsMTIgQEAgZXh0ZXJuICJDIgogLyog
RFRYIHNldHRpbmdzICovCiAjZGVmaW5lIE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCAgICAg
ICAgICAgICAxMCAgICAgIC8qIGVxIDIwMCBtcyAqLwogI2RlZmluZSBNQVhfQ09OU0VDVVRJVkVf
RFRYICAgICAgICAgICAgICAgICAgICAgMjAgICAgICAvKiBlcSA0MDAgbXMgKi8KKyNkZWZpbmUg
RFRYX0FDVElWSVRZX1RIUkVTSE9MRCAgICAgICAgICAgICAgICAgIDAuMWYKKworLyogVkFEIGRl
Y2lzaW9uICovCisjZGVmaW5lIFZBRF9OT19ERUNJU0lPTiAgICAgICAgICAgICAgICAgICAgICAg
ICAtMQorI2RlZmluZSBWQURfTk9fQUNUSVZJVFkgICAgICAgICAgICAgICAgICAgICAgICAgMAor
I2RlZmluZSBWQURfQUNUSVZJVFkgICAgICAgICAgICAgICAgICAgICAgICAgICAgMQogCiAvKiBN
YXhpbXVtIHNhbXBsaW5nIGZyZXF1ZW5jeSAqLwogI2RlZmluZSBNQVhfRlNfS0haICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgMTYKQEAgLTE0Nyw3ICsxNTMsNyBAQCBleHRlcm4gIkMiCiAj
ZGVmaW5lIFVTRV9IQVJNX1NIQVBJTkcgICAgICAgICAgICAgICAgICAgICAgICAxCiAKIC8qIE1h
eCBMUEMgb3JkZXIgb2Ygbm9pc2Ugc2hhcGluZyBmaWx0ZXJzICovCi0jZGVmaW5lIE1BWF9TSEFQ
RV9MUENfT1JERVIgICAgICAgICAgICAgICAgICAgICAxNgorI2RlZmluZSBNQVhfU0hBUEVfTFBD
X09SREVSICAgICAgICAgICAgICAgICAgICAgMjQKIAogI2RlZmluZSBIQVJNX1NIQVBFX0ZJUl9U
QVBTICAgICAgICAgICAgICAgICAgICAgMwogCkBAIC0xNTcsOCArMTYzLDcgQEAgZXh0ZXJuICJD
IgogI2RlZmluZSBMVFBfQlVGX0xFTkdUSCAgICAgICAgICAgICAgICAgICAgICAgICAgNTEyCiAj
ZGVmaW5lIExUUF9NQVNLICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoIExUUF9CVUZf
TEVOR1RIIC0gMSApCiAKLSNkZWZpbmUgREVDSVNJT05fREVMQVkgICAgICAgICAgICAgICAgICAg
ICAgICAgIDMyCi0jZGVmaW5lIERFQ0lTSU9OX0RFTEFZX01BU0sgICAgICAgICAgICAgICAgICAg
ICAoIERFQ0lTSU9OX0RFTEFZIC0gMSApCisjZGVmaW5lIERFQ0lTSU9OX0RFTEFZICAgICAgICAg
ICAgICAgICAgICAgICAgICA0MAogCiAvKiBOdW1iZXIgb2Ygc3ViZnJhbWVzIGZvciBleGNpdGF0
aW9uIGVudHJvcHkgY29kaW5nICovCiAjZGVmaW5lIFNIRUxMX0NPREVDX0ZSQU1FX0xFTkdUSCAg
ICAgICAgICAgICAgICAxNgpAQCAtMTczLDExICsxNzgsNyBAQCBleHRlcm4gIkMiCiAKICNkZWZp
bmUgTUFYX01BVFJJWF9TSVpFICAgICAgICAgICAgICAgICAgICAgICAgIE1BWF9MUENfT1JERVIg
LyogTWF4IG9mIExQQyBPcmRlciBhbmQgTFRQIG9yZGVyICovCiAKLSNpZiggTUFYX0xQQ19PUkRF
UiA+IERFQ0lTSU9OX0RFTEFZICkKICMgZGVmaW5lIE5TUV9MUENfQlVGX0xFTkdUSCAgICAgICAg
ICAgICAgICAgICAgIE1BWF9MUENfT1JERVIKLSNlbHNlCi0jIGRlZmluZSBOU1FfTFBDX0JVRl9M
RU5HVEggICAgICAgICAgICAgICAgICAgICBERUNJU0lPTl9ERUxBWQotI2VuZGlmCiAKIC8qKioq
KioqKioqKioqKioqKioqKioqKioqKiovCiAvKiBWb2ljZSBhY3Rpdml0eSBkZXRlY3RvciAqLwpA
QCAtMjA1LDcgKzIwNiw2IEBAIGV4dGVybiAiQyIKIC8qKioqKioqKioqKioqKioqKiovCiAjZGVm
aW5lIE5MU0ZfV19RICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyCiAjZGVmaW5lIE5M
U0ZfVlFfTUFYX1ZFQ1RPUlMgICAgICAgICAgICAgICAgICAgICAzMgotI2RlZmluZSBOTFNGX1ZR
X01BWF9TVVJWSVZPUlMgICAgICAgICAgICAgICAgICAgMzIKICNkZWZpbmUgTkxTRl9RVUFOVF9N
QVhfQU1QTElUVURFICAgICAgICAgICAgICAgIDQKICNkZWZpbmUgTkxTRl9RVUFOVF9NQVhfQU1Q
TElUVURFX0VYVCAgICAgICAgICAgIDEwCiAjZGVmaW5lIE5MU0ZfUVVBTlRfTEVWRUxfQURKICAg
ICAgICAgICAgICAgICAgICAwLjEKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9lbmNfQVBJLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZW5j
X0FQSS5jCmluZGV4IGY4MDYwMjg2ZGJhZmE5YTFmYTc4MGY0ZWI3NDQ2YWRkZGYyZWQwOGUuLjBh
NjJhM2MxZDcyYWZkMGE2MjEyOGU0MmRjYWE4MDNhZDBmNDQzMTggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9l
bmNfQVBJLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2VuY19BUEkuYwpAQCAtMTQ0LDcgKzE0NCw4IEBAIG9wdXNfaW50
IHNpbGtfRW5jb2RlKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBS
ZXR1cm5zIGVycm9yIGNvCiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBuU2Ft
cGxlc0luLCAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMgaW4gaW5wdXQgdmVjdG9y
ICAgICAgICAgICAgICAgKi8KICAgICBlY19lbmMgICAgICAgICAgICAgICAgICAgICAgICAgICpw
c1JhbmdlRW5jLCAgICAgICAgLyogSS9PICBDb21wcmVzc29yIGRhdGEgc3RydWN0dXJlICAgICAg
ICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAg
Km5CeXRlc091dCwgICAgICAgICAvKiBJL08gIE51bWJlciBvZiBieXRlcyBpbiBwYXlsb2FkIChp
bnB1dDogTWF4IGJ5dGVzKSAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICBwcmVmaWxsRmxhZyAgICAgICAgIC8qIEkgICAgRmxhZyB0byBpbmRpY2F0ZSBwcmVmaWxsaW5n
IGJ1ZmZlcnMgbm8gY29kaW5nICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAg
ICAgIHByZWZpbGxGbGFnLCAgICAgICAgLyogSSAgICBGbGFnIHRvIGluZGljYXRlIHByZWZpbGxp
bmcgYnVmZmVycyBubyBjb2RpbmcgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
ICAgICAgYWN0aXZpdHkgICAgICAgICAgICAvKiBJICAgIERlY2lzaW9uIG9mIE9wdXMgdm9pY2Ug
YWN0aXZpdHkgZGV0ZWN0b3IgICAgICAgICovCiApCiB7CiAgICAgb3B1c19pbnQgICBuLCBpLCBu
Qml0cywgZmxhZ3MsIHRtcF9wYXlsb2FkU2l6ZV9tcyA9IDAsIHRtcF9jb21wbGV4aXR5ID0gMCwg
cmV0ID0gMDsKQEAgLTIzMywxMSArMjM0LDEwIEBAIG9wdXNfaW50IHNpbGtfRW5jb2RlKCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zIGVycm9yIGNvCiAg
ICAgICAgIH0KICAgICB9CiAKLSAgICBUYXJnZXRSYXRlX2JwcyA9IHNpbGtfUlNISUZUMzIoIGVu
Y0NvbnRyb2wtPmJpdFJhdGUsIGVuY0NvbnRyb2wtPm5DaGFubmVsc0ludGVybmFsIC0gMSApOwog
ICAgIGZvciggbiA9IDA7IG4gPCBlbmNDb250cm9sLT5uQ2hhbm5lbHNJbnRlcm5hbDsgbisrICkg
ewogICAgICAgICAvKiBGb3JjZSB0aGUgc2lkZSBjaGFubmVsIHRvIHRoZSBzYW1lIHJhdGUgYXMg
dGhlIG1pZCAqLwogICAgICAgICBvcHVzX2ludCBmb3JjZV9mc19rSHogPSAobj09MSkgPyBwc0Vu
Yy0+c3RhdGVfRnh4WzBdLnNDbW4uZnNfa0h6IDogMDsKLSAgICAgICAgaWYoICggcmV0ID0gc2ls
a19jb250cm9sX2VuY29kZXIoICZwc0VuYy0+c3RhdGVfRnh4WyBuIF0sIGVuY0NvbnRyb2wsIFRh
cmdldFJhdGVfYnBzLCBwc0VuYy0+YWxsb3dCYW5kd2lkdGhTd2l0Y2gsIG4sIGZvcmNlX2ZzX2tI
eiApICkgIT0gMCApIHsKKyAgICAgICAgaWYoICggcmV0ID0gc2lsa19jb250cm9sX2VuY29kZXIo
ICZwc0VuYy0+c3RhdGVfRnh4WyBuIF0sIGVuY0NvbnRyb2wsIHBzRW5jLT5hbGxvd0JhbmR3aWR0
aFN3aXRjaCwgbiwgZm9yY2VfZnNfa0h6ICkgKSAhPSAwICkgewogICAgICAgICAgICAgc2lsa19h
c3NlcnQoIDAgKTsKICAgICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7CiAgICAgICAgICAgICByZXR1
cm4gcmV0OwpAQCAtNDE2LDcgKzQxNiw2IEBAIG9wdXNfaW50IHNpbGtfRW5jb2RlKCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zIGVycm9yIGNvCiAgICAg
ICAgICAgICAgICAgICAgIC8qIFJlc2V0IHNpZGUgY2hhbm5lbCBlbmNvZGVyIG1lbW9yeSBmb3Ig
Zmlyc3QgZnJhbWUgd2l0aCBzaWRlIGNvZGluZyAqLwogICAgICAgICAgICAgICAgICAgICBpZigg
cHNFbmMtPnByZXZfZGVjb2RlX29ubHlfbWlkZGxlID09IDEgKSB7CiAgICAgICAgICAgICAgICAg
ICAgICAgICBzaWxrX21lbXNldCggJnBzRW5jLT5zdGF0ZV9GeHhbIDEgXS5zU2hhcGUsICAgICAg
ICAgICAgICAgMCwgc2l6ZW9mKCBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc1NoYXBlICkgKTsKLSAg
ICAgICAgICAgICAgICAgICAgICAgIHNpbGtfbWVtc2V0KCAmcHNFbmMtPnN0YXRlX0Z4eFsgMSBd
LnNQcmVmaWx0LCAgICAgICAgICAgICAwLCBzaXplb2YoIHBzRW5jLT5zdGF0ZV9GeHhbIDEgXS5z
UHJlZmlsdCApICk7CiAgICAgICAgICAgICAgICAgICAgICAgICBzaWxrX21lbXNldCggJnBzRW5j
LT5zdGF0ZV9GeHhbIDEgXS5zQ21uLnNOU1EsICAgICAgICAgICAgMCwgc2l6ZW9mKCBwc0VuYy0+
c3RhdGVfRnh4WyAxIF0uc0Ntbi5zTlNRICkgKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHNp
bGtfbWVtc2V0KCBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5wcmV2X05MU0ZxX1ExNSwgICAw
LCBzaXplb2YoIHBzRW5jLT5zdGF0ZV9GeHhbIDEgXS5zQ21uLnByZXZfTkxTRnFfUTE1ICkgKTsK
ICAgICAgICAgICAgICAgICAgICAgICAgIHNpbGtfbWVtc2V0KCAmcHNFbmMtPnN0YXRlX0Z4eFsg
MSBdLnNDbW4uc0xQLkluX0xQX1N0YXRlLCAwLCBzaXplb2YoIHBzRW5jLT5zdGF0ZV9GeHhbIDEg
XS5zQ21uLnNMUC5Jbl9MUF9TdGF0ZSApICk7CkBAIC00MjcsNyArNDI2LDcgQEAgb3B1c19pbnQg
c2lsa19FbmNvZGUoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJl
dHVybnMgZXJyb3IgY28KICAgICAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zdGF0ZV9GeHhb
IDEgXS5zQ21uLnNOU1EucHJldl9nYWluX1ExNiAgICAgID0gNjU1MzY7CiAgICAgICAgICAgICAg
ICAgICAgICAgICBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5maXJzdF9mcmFtZV9hZnRlcl9y
ZXNldCA9IDE7CiAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgc2ls
a19lbmNvZGVfZG9fVkFEX0Z4eCggJnBzRW5jLT5zdGF0ZV9GeHhbIDEgXSApOworICAgICAgICAg
ICAgICAgICAgICBzaWxrX2VuY29kZV9kb19WQURfRnh4KCAmcHNFbmMtPnN0YXRlX0Z4eFsgMSBd
LCBhY3Rpdml0eSApOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAg
ICAgIHBzRW5jLT5zdGF0ZV9GeHhbIDEgXS5zQ21uLlZBRF9mbGFnc1sgcHNFbmMtPnN0YXRlX0Z4
eFsgMCBdLnNDbW4ubkZyYW1lc0VuY29kZWQgXSA9IDA7CiAgICAgICAgICAgICAgICAgfQpAQCAt
NDQyLDcgKzQ0MSw3IEBAIG9wdXNfaW50IHNpbGtfRW5jb2RlKCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zIGVycm9yIGNvCiAgICAgICAgICAgICAgICAg
c2lsa19tZW1jcHkoIHBzRW5jLT5zdGF0ZV9GeHhbIDAgXS5zQ21uLmlucHV0QnVmLCBwc0VuYy0+
c1N0ZXJlby5zTWlkLCAyICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKICAgICAgICAgICAgICAg
ICBzaWxrX21lbWNweSggcHNFbmMtPnNTdGVyZW8uc01pZCwgJnBzRW5jLT5zdGF0ZV9GeHhbIDAg
XS5zQ21uLmlucHV0QnVmWyBwc0VuYy0+c3RhdGVfRnh4WyAwIF0uc0Ntbi5mcmFtZV9sZW5ndGgg
XSwgMiAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAg
ICBzaWxrX2VuY29kZV9kb19WQURfRnh4KCAmcHNFbmMtPnN0YXRlX0Z4eFsgMCBdICk7CisgICAg
ICAgICAgICBzaWxrX2VuY29kZV9kb19WQURfRnh4KCAmcHNFbmMtPnN0YXRlX0Z4eFsgMCBdLCBh
Y3Rpdml0eSApOwogCiAgICAgICAgICAgICAvKiBFbmNvZGUgKi8KICAgICAgICAgICAgIGZvcigg
biA9IDA7IG4gPCBlbmNDb250cm9sLT5uQ2hhbm5lbHNJbnRlcm5hbDsgbisrICkgewpAQCAtNTU3
LDYgKzU1NiwxMCBAQCBvcHVzX2ludCBzaWxrX0VuY29kZSggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBlcnJvciBjbwogICAgICAgICB9CiAgICAgfQog
CisgICAgZW5jQ29udHJvbC0+c2lnbmFsVHlwZSA9IHBzRW5jLT5zdGF0ZV9GeHhbMF0uc0Ntbi5p
bmRpY2VzLnNpZ25hbFR5cGU7CisgICAgZW5jQ29udHJvbC0+b2Zmc2V0ID0gc2lsa19RdWFudGl6
YXRpb25fT2Zmc2V0c19RMTAKKyAgICAgICAgICAgICAgICAgICAgICAgICBbIHBzRW5jLT5zdGF0
ZV9GeHhbMF0uc0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPj4gMSBdCisgICAgICAgICAgICAgICAg
ICAgICAgICAgWyBwc0VuYy0+c3RhdGVfRnh4WzBdLnNDbW4uaW5kaWNlcy5xdWFudE9mZnNldFR5
cGUgXTsKICAgICBSRVNUT1JFX1NUQUNLOwogICAgIHJldHVybiByZXQ7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZml4ZWQvYXJtL3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX2FybS5oIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zp
eGVkL2FybS93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9hcm0uaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xOTky
ZTQzMjg4NTE5ZjhhZGI1ZmY0ZDNjMzgyNDgwNGNkZmE0NGM1Ci0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2ZpeGVkL2FybS93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9hcm0uaApAQCAtMCwwICsx
LDY4IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioKK0NvcHlyaWdodCAoYykgMjAxNyBHb29nbGUgSW5jLgor
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
Citub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0
IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMg
Y29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3Byb2R1Y3Rz
IGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
bgorcGVybWlzc2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
K1NVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8K
KworI2lmbmRlZiBTSUxLX1dBUlBFRF9BVVRPQ09SUkVMQVRJT05fRklYX0FSTV9ICisjIGRlZmlu
ZSBTSUxLX1dBUlBFRF9BVVRPQ09SUkVMQVRJT05fRklYX0FSTV9ICisKKyMgaW5jbHVkZSAiY2Vs
dC9hcm0vYXJtY3B1LmgiCisKKyMgaWYgZGVmaW5lZChGSVhFRF9QT0lOVCkKKworIyAgaWYgZGVm
aW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpCit2b2lkIHNpbGtfd2FycGVkX2F1dG9j
b3JyZWxhdGlvbl9GSVhfbmVvbigKKyAgICAgICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAg
ICpjb3JyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJlc3VsdCBb
b3JkZXIgKyAxXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgICAgICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgKnNjYWxl
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgU2NhbGluZyBvZiB0aGUg
Y29ycmVsYXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAqaW5wdXQsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBkYXRhIHRvIGNvcnJlbGF0
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFdhcnBpbmcgY29lZmZpY2llbnQgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgTGVuZ3RoIG9mIGlucHV0ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBDb3JyZWxhdGlvbiBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyk7CisKKyMgIGlmICFkZWZpbmVk
KE9QVVNfSEFWRV9SVENEKSAmJiBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTikKKyMgICBk
ZWZpbmUgT1ZFUlJJREVfc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCAoMSkKKyMgICBk
ZWZpbmUgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWChjb3JyLCBzY2FsZSwgaW5wdXQs
IHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVyLCBhcmNoKSBcCisgICAgKCh2b2lkKShhcmNoKSwg
UFJFU1VNRV9ORU9OKHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgpKGNvcnIsIHNjYWxl
LCBpbnB1dCwgd2FycGluZ19RMTYsIGxlbmd0aCwgb3JkZXIpKQorIyAgZW5kaWYKKyMgIGVuZGlm
CisKKyMgIGlmICFkZWZpbmVkKE9WRVJSSURFX3NpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9G
SVgpCisvKklzIHJ1bi10aW1lIENQVSBkZXRlY3Rpb24gZW5hYmxlZCBvbiB0aGlzIHBsYXRmb3Jt
PyovCisjICAgaWYgZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgKGRlZmluZWQoT1BVU19BUk1f
TUFZX0hBVkVfTkVPTl9JTlRSKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5U
UikpCitleHRlcm4gdm9pZCAoKmNvbnN0IFNJTEtfV0FSUEVEX0FVVE9DT1JSRUxBVElPTl9GSVhf
SU1QTFtPUFVTX0FSQ0hNQVNLKzFdKShvcHVzX2ludDMyKiwgb3B1c19pbnQqLCBjb25zdCBvcHVz
X2ludDE2KiwgY29uc3Qgb3B1c19pbnQsIGNvbnN0IG9wdXNfaW50LCBjb25zdCBvcHVzX2ludCk7
CisjICAgIGRlZmluZSBPVkVSUklERV9zaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYICgx
KQorIyAgICBkZWZpbmUgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWChjb3JyLCBzY2Fs
ZSwgaW5wdXQsIHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVyLCBhcmNoKSBcCisgICAgKCgqU0lM
S19XQVJQRURfQVVUT0NPUlJFTEFUSU9OX0ZJWF9JTVBMWyhhcmNoKSZPUFVTX0FSQ0hNQVNLXSko
Y29yciwgc2NhbGUsIGlucHV0LCB3YXJwaW5nX1ExNiwgbGVuZ3RoLCBvcmRlcikpCisjICAgZWxp
ZiBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKQorIyAgICBkZWZpbmUgT1ZFUlJJ
REVfc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCAoMSkKKyMgICAgZGVmaW5lIHNpbGtf
d2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoY29yciwgc2NhbGUsIGlucHV0LCB3YXJwaW5nX1Ex
NiwgbGVuZ3RoLCBvcmRlciwgYXJjaCkgXAorICAgICgodm9pZCkoYXJjaCksIHNpbGtfd2FycGVk
X2F1dG9jb3JyZWxhdGlvbl9GSVhfbmVvbihjb3JyLCBzY2FsZSwgaW5wdXQsIHdhcnBpbmdfUTE2
LCBsZW5ndGgsIG9yZGVyKSkKKyMgICBlbmRpZgorIyAgZW5kaWYKKworIyBlbmRpZiAvKiBlbmQg
RklYRURfUE9JTlQgKi8KKworI2VuZGlmIC8qIGVuZCBTSUxLX1dBUlBFRF9BVVRPQ09SUkVMQVRJ
T05fRklYX0FSTV9IICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvYXJtL3dhcnBlZF9hdXRvY29y
cmVsYXRpb25fRklYX25lb25faW50ci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2FybS93YXJwZWRfYXV0b2NvcnJl
bGF0aW9uX0ZJWF9uZW9uX2ludHIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMGE3MGNiNTFmZmJmMzljMzdlYTA0
MWJhNjZlZDA2NGYwZDMwODRmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2FybS93YXJw
ZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9uZW9uX2ludHIuYwpAQCAtMCwwICsxLDI2MCBAQAorLyoq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqCitDb3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4sIEplYW4tTWFyYyBW
YWxpbgorUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3Ro
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0Citub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIElu
dGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3Bl
Y2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3By
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbgorcGVybWlzc2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQorSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKK1NVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KKworI2lmZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNlbmRp
ZgorCisjaW5jbHVkZSA8YXJtX25lb24uaD4KKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorIyBpbmNs
dWRlIDxzdHJpbmcuaD4KKyNlbmRpZgorI2luY2x1ZGUgInN0YWNrX2FsbG9jLmgiCisjaW5jbHVk
ZSAibWFpbl9GSVguaCIKKworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgY2FsY19jb3JyKCBjb25z
dCBvcHVzX2ludDMyICpjb25zdCBpbnB1dF9RUywgb3B1c19pbnQ2NCAqY29uc3QgY29ycl9RQywg
Y29uc3Qgb3B1c19pbnQgb2Zmc2V0LCBjb25zdCBpbnQzMng0X3Qgc3RhdGVfUVNfczMyeDQgKQor
eworICAgIGludDY0eDJfdCBjb3JyX1FDX3M2NHgyWyAyIF0sIHRfczY0eDJbIDIgXTsKKyAgICBj
b25zdCBpbnQzMng0X3QgaW5wdXRfUVNfczMyeDQgPSB2bGQxcV9zMzIoIGlucHV0X1FTICsgb2Zm
c2V0ICk7CisgICAgY29ycl9RQ19zNjR4MlsgMCBdID0gdmxkMXFfczY0KCBjb3JyX1FDICsgb2Zm
c2V0ICsgMCApOworICAgIGNvcnJfUUNfczY0eDJbIDEgXSA9IHZsZDFxX3M2NCggY29ycl9RQyAr
IG9mZnNldCArIDIgKTsKKyAgICB0X3M2NHgyWyAwIF0gPSB2bXVsbF9zMzIoIHZnZXRfbG93X3Mz
Miggc3RhdGVfUVNfczMyeDQgKSwgdmdldF9sb3dfczMyKCBpbnB1dF9RU19zMzJ4NCApICk7Cisg
ICAgdF9zNjR4MlsgMSBdID0gdm11bGxfczMyKCB2Z2V0X2hpZ2hfczMyKCBzdGF0ZV9RU19zMzJ4
NCApLCB2Z2V0X2hpZ2hfczMyKCBpbnB1dF9RU19zMzJ4NCApICk7CisgICAgY29ycl9RQ19zNjR4
MlsgMCBdID0gdnNyYXFfbl9zNjQoIGNvcnJfUUNfczY0eDJbIDAgXSwgdF9zNjR4MlsgMCBdLCAy
ICogUVMgLSBRQyApOworICAgIGNvcnJfUUNfczY0eDJbIDEgXSA9IHZzcmFxX25fczY0KCBjb3Jy
X1FDX3M2NHgyWyAxIF0sIHRfczY0eDJbIDEgXSwgMiAqIFFTIC0gUUMgKTsKKyAgICB2c3QxcV9z
NjQoIGNvcnJfUUMgKyBvZmZzZXQgKyAwLCBjb3JyX1FDX3M2NHgyWyAwIF0gKTsKKyAgICB2c3Qx
cV9zNjQoIGNvcnJfUUMgKyBvZmZzZXQgKyAyLCBjb3JyX1FDX3M2NHgyWyAxIF0gKTsKK30KKwor
c3RhdGljIE9QVVNfSU5MSU5FIGludDMyeDRfdCBjYWxjX3N0YXRlKCBjb25zdCBpbnQzMng0X3Qg
c3RhdGVfUVMwX3MzMng0LCBjb25zdCBpbnQzMng0X3Qgc3RhdGVfUVMwXzFfczMyeDQsIGNvbnN0
IGludDMyeDRfdCBzdGF0ZV9RUzFfMV9zMzJ4NCwgY29uc3QgaW50MzJ4NF90IHdhcnBpbmdfUTE2
X3MzMng0ICkKK3sKKyAgICBpbnQzMng0X3QgdF9zMzJ4NCA9IHZzdWJxX3MzMiggc3RhdGVfUVMw
X3MzMng0LCBzdGF0ZV9RUzBfMV9zMzJ4NCApOworICAgIHRfczMyeDQgPSB2cWRtdWxocV9zMzIo
IHRfczMyeDQsIHdhcnBpbmdfUTE2X3MzMng0ICk7CisgICAgcmV0dXJuIHZhZGRxX3MzMiggc3Rh
dGVfUVMxXzFfczMyeDQsIHRfczMyeDQgKTsKK30KKwordm9pZCBzaWxrX3dhcnBlZF9hdXRvY29y
cmVsYXRpb25fRklYX25lb24oCisgICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAq
Y29yciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXN1bHQgW29y
ZGVyICsgMV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICAgICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICpzY2FsZSwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFNjYWxpbmcgb2YgdGhlIGNv
cnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKmlucHV0LCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgZGF0YSB0byBjb3JyZWxhdGUg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICB3YXJwaW5nX1ExNiwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBXYXJwaW5nIGNvZWZmaWNpZW50ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1dCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgQ29ycmVsYXRpb24gb3JkZXIgKGV2ZW4pICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCispCit7CisgICAgaWYoICggTUFYX1NI
QVBFX0xQQ19PUkRFUiA+IDI0ICkgfHwgKCBvcmRlciA8IDYgKSApIHsKKyAgICAgICAgc2lsa193
YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9jKCBjb3JyLCBzY2FsZSwgaW5wdXQsIHdhcnBpbmdf
UTE2LCBsZW5ndGgsIG9yZGVyICk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgb3B1c19pbnQgICAg
ICAgbiwgaSwgbHNoOworICAgICAgICBvcHVzX2ludDY0ICAgICBjb3JyX1FDWyBNQVhfU0hBUEVf
TFBDX09SREVSICsgMSBdID0geyAwIH07IC8qIEluIHJldmVyc2Ugb3JkZXIgKi8KKyAgICAgICAg
b3B1c19pbnQ2NCAgICAgY29ycl9RQ19vcmRlclQ7CisgICAgICAgIGludDY0eDJfdCAgICAgIGxz
aF9zNjR4MjsKKyAgICAgICAgY29uc3Qgb3B1c19pbnQgb3JkZXJUID0gKCBvcmRlciArIDMgKSAm
IH4zOworICAgICAgICBvcHVzX2ludDY0ICAgICAqY29ycl9RQ1Q7CisgICAgICAgIG9wdXNfaW50
MzIgICAgICppbnB1dF9RUzsKKyAgICAgICAgVkFSREVDTCggb3B1c19pbnQzMiwgaW5wdXRfUVNU
ICk7CisgICAgICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIHN0YXRlICk7CisgICAgICAgIFNBVkVf
U1RBQ0s7CisKKyAgICAgICAgLyogT3JkZXIgbXVzdCBiZSBldmVuICovCisgICAgICAgIHNpbGtf
YXNzZXJ0KCAoIG9yZGVyICYgMSApID09IDAgKTsKKyAgICAgICAgc2lsa19hc3NlcnQoIDIgKiBR
UyAtIFFDID49IDAgKTsKKworICAgICAgICBBTExPQyggaW5wdXRfUVNULCBsZW5ndGggKyAyICog
TUFYX1NIQVBFX0xQQ19PUkRFUiwgb3B1c19pbnQzMiApOworCisgICAgICAgIGlucHV0X1FTID0g
aW5wdXRfUVNUOworICAgICAgICAvKiBpbnB1dF9RUyBoYXMgemVybyBwYWRkaW5ncyBpbiB0aGUg
YmVnaW5uaW5nIGFuZCBlbmQuICovCisgICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMsIHZkdXBx
X25fczMyKCAwICkgKTsKKyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAgICAgICAgdnN0MXFfczMy
KCBpbnB1dF9RUywgdmR1cHFfbl9zMzIoIDAgKSApOworICAgICAgICBpbnB1dF9RUyArPSA0Owor
ICAgICAgICB2c3QxcV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAg
IGlucHV0X1FTICs9IDQ7CisgICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMy
KCAwICkgKTsKKyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1
dF9RUywgdmR1cHFfbl9zMzIoIDAgKSApOworICAgICAgICBpbnB1dF9RUyArPSA0OworICAgICAg
ICB2c3QxcV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlucHV0
X1FTICs9IDQ7CisKKyAgICAgICAgLyogTG9vcCBvdmVyIHNhbXBsZXMgKi8KKyAgICAgICAgZm9y
KCBuID0gMDsgbiA8IGxlbmd0aCAtIDc7IG4gKz0gOCwgaW5wdXRfUVMgKz0gOCApIHsKKyAgICAg
ICAgICAgIGNvbnN0IGludDE2eDhfdCB0MF9zMTZ4NCA9IHZsZDFxX3MxNiggaW5wdXQgKyBuICk7
CisgICAgICAgICAgICB2c3QxcV9zMzIoIGlucHV0X1FTICsgMCwgdnNobGxfbl9zMTYoIHZnZXRf
bG93X3MxNiggdDBfczE2eDQgKSwgUVMgKSApOworICAgICAgICAgICAgdnN0MXFfczMyKCBpbnB1
dF9RUyArIDQsIHZzaGxsX25fczE2KCB2Z2V0X2hpZ2hfczE2KCB0MF9zMTZ4NCApLCBRUyApICk7
CisgICAgICAgIH0KKyAgICAgICAgZm9yKCA7IG4gPCBsZW5ndGg7IG4rKywgaW5wdXRfUVMrKyAp
IHsKKyAgICAgICAgICAgIGlucHV0X1FTWyAwIF0gPSBzaWxrX0xTSElGVDMyKCAob3B1c19pbnQz
MilpbnB1dFsgbiBdLCBRUyApOworICAgICAgICB9CisgICAgICAgIHZzdDFxX3MzMiggaW5wdXRf
UVMsIHZkdXBxX25fczMyKCAwICkgKTsKKyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAgICAgICAg
dnN0MXFfczMyKCBpbnB1dF9RUywgdmR1cHFfbl9zMzIoIDAgKSApOworICAgICAgICBpbnB1dF9R
UyArPSA0OworICAgICAgICB2c3QxcV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7
CisgICAgICAgIGlucHV0X1FTICs9IDQ7CisgICAgICAgIHZzdDFxX3MzMiggaW5wdXRfUVMsIHZk
dXBxX25fczMyKCAwICkgKTsKKyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAgICAgICAgdnN0MXFf
czMyKCBpbnB1dF9RUywgdmR1cHFfbl9zMzIoIDAgKSApOworICAgICAgICBpbnB1dF9RUyArPSA0
OworICAgICAgICB2c3QxcV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAg
ICAgIGlucHV0X1FTID0gaW5wdXRfUVNUICsgTUFYX1NIQVBFX0xQQ19PUkRFUiAtIG9yZGVyVDsK
KworICAgICAgICAvKiBUaGUgZm9sbG93aW5nIGxvb3AgcnVucyAoIGxlbmd0aCArIG9yZGVyICkg
dGltZXMsIHdpdGggKCBvcmRlciApIGV4dHJhIGVwaWxvZ3Vlcy4gICAgICAgICAgICAgICAgICAq
LworICAgICAgICAvKiBUaGUgemVybyBwYWRkaW5ncyBpbiBpbnB1dF9RUyBndWFyYW50ZWUgY29y
cl9RQydzIGNvcnJlY3RuZXNzIGV2ZW4gd2l0aCB0aGUgZXh0cmEgZXBpbG9ndWVzLiAgICAgICAq
LworICAgICAgICAvKiBUaGUgdmFsdWVzIG9mIHN0YXRlX1FTIHdpbGwgYmUgcG9sbHV0ZWQgYnkg
dGhlIGV4dHJhIGVwaWxvZ3VlcywgaG93ZXZlciB0aGV5IGFyZSB0ZW1wb3JhcnkgdmFsdWVzLiAq
LworCisgICAgICAgIC8qIEtlZXAgdGhlIEMgY29kZSBoZXJlIHRvIGhlbHAgdW5kZXJzdGFuZCB0
aGUgaW50cmluc2ljcyBvcHRpbWl6YXRpb24uICovCisgICAgICAgIC8qCisgICAgICAgIHsKKyAg
ICAgICAgICAgIG9wdXNfaW50MzIgc3RhdGVfUVNbIDIgXVsgTUFYX1NIQVBFX0xQQ19PUkRFUiAr
IDEgXSA9IHsgMCB9OworICAgICAgICAgICAgb3B1c19pbnQzMiAqc3RhdGVfUVNUWyAzIF07Cisg
ICAgICAgICAgICBzdGF0ZV9RU1RbIDAgXSA9IHN0YXRlX1FTWyAwIF07CisgICAgICAgICAgICBz
dGF0ZV9RU1RbIDEgXSA9IHN0YXRlX1FTWyAxIF07CisgICAgICAgICAgICBmb3IoIG4gPSAwOyBu
IDwgbGVuZ3RoICsgb3JkZXI7IG4rKywgaW5wdXRfUVMrKyApIHsKKyAgICAgICAgICAgICAgICBz
dGF0ZV9RU1RbIDAgXVsgb3JkZXJUIF0gPSBpbnB1dF9RU1sgb3JkZXJUIF07CisgICAgICAgICAg
ICAgICAgZm9yKCBpID0gMDsgaSA8IG9yZGVyVDsgaSsrICkgeworICAgICAgICAgICAgICAgICAg
ICBjb3JyX1FDWyBpIF0gKz0gc2lsa19SU0hJRlQ2NCggc2lsa19TTVVMTCggc3RhdGVfUVNUWyAw
IF1bIGkgXSwgaW5wdXRfUVNbIGkgXSApLCAyICogUVMgLSBRQyApOworICAgICAgICAgICAgICAg
ICAgICBzdGF0ZV9RU1RbIDEgXVsgaSBdID0gc2lsa19TTUxBV0IoIHN0YXRlX1FTVFsgMSBdWyBp
ICsgMSBdLCBzdGF0ZV9RU1RbIDAgXVsgaSBdIC0gc3RhdGVfUVNUWyAwIF1bIGkgKyAxIF0sIHdh
cnBpbmdfUTE2ICk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHN0YXRlX1FT
VFsgMiBdID0gc3RhdGVfUVNUWyAwIF07CisgICAgICAgICAgICAgICAgc3RhdGVfUVNUWyAwIF0g
PSBzdGF0ZV9RU1RbIDEgXTsKKyAgICAgICAgICAgICAgICBzdGF0ZV9RU1RbIDEgXSA9IHN0YXRl
X1FTVFsgMiBdOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgICovCisKKyAgICAg
ICAgeworICAgICAgICAgICAgY29uc3QgaW50MzJ4NF90IHdhcnBpbmdfUTE2X3MzMng0ID0gdmR1
cHFfbl9zMzIoIHdhcnBpbmdfUTE2IDw8IDE1ICk7CisgICAgICAgICAgICBjb25zdCBvcHVzX2lu
dDMyICppbiA9IGlucHV0X1FTICsgb3JkZXJUOworICAgICAgICAgICAgb3B1c19pbnQgbyA9IG9y
ZGVyVDsKKyAgICAgICAgICAgIGludDMyeDRfdCBzdGF0ZV9RU19zMzJ4NFsgMyBdWyAyIF07CisK
KyAgICAgICAgICAgIEFMTE9DKCBzdGF0ZSwgbGVuZ3RoICsgb3JkZXJULCBvcHVzX2ludDMyICk7
CisgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAxIF0gPSB2ZHVwcV9uX3MzMiggMCAp
OworCisgICAgICAgICAgICAvKiBDYWxjdWxhdGUgOCB0YXBzIG9mIGFsbCBpbnB1dHMgaW4gZWFj
aCBsb29wLiAqLworICAgICAgICAgICAgZG8geworICAgICAgICAgICAgICAgIHN0YXRlX1FTX3Mz
Mng0WyAwIF1bIDAgXSA9IHN0YXRlX1FTX3MzMng0WyAwIF1bIDEgXSA9CisgICAgICAgICAgICAg
ICAgc3RhdGVfUVNfczMyeDRbIDEgXVsgMCBdID0gc3RhdGVfUVNfczMyeDRbIDEgXVsgMSBdID0g
dmR1cHFfbl9zMzIoIDAgKTsKKyAgICAgICAgICAgICAgICBuID0gMDsKKyAgICAgICAgICAgICAg
ICBkbyB7CisgICAgICAgICAgICAgICAgICAgIGNhbGNfY29yciggaW5wdXRfUVMgKyBuLCBjb3Jy
X1FDLCBvIC0gOCwgc3RhdGVfUVNfczMyeDRbIDAgXVsgMCBdICk7CisgICAgICAgICAgICAgICAg
ICAgIGNhbGNfY29yciggaW5wdXRfUVMgKyBuLCBjb3JyX1FDLCBvIC0gNCwgc3RhdGVfUVNfczMy
eDRbIDAgXVsgMSBdICk7CisgICAgICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAyIF1b
IDEgXSA9IHZsZDFxX3MzMiggaW4gKyBuICk7CisgICAgICAgICAgICAgICAgICAgIHZzdDFxX2xh
bmVfczMyKCBzdGF0ZSArIG4sIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSwgMCApOworICAgICAg
ICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAwIF0gPSB2ZXh0cV9zMzIoIHN0YXRl
X1FTX3MzMng0WyAwIF1bIDAgXSwgc3RhdGVfUVNfczMyeDRbIDAgXVsgMSBdLCAxICk7CisgICAg
ICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAyIF1bIDEgXSA9IHZleHRxX3MzMiggc3Rh
dGVfUVNfczMyeDRbIDAgXVsgMSBdLCBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAxIF0sIDEgKTsKKyAg
ICAgICAgICAgICAgICAgICAgc3RhdGVfUVNfczMyeDRbIDAgXVsgMCBdID0gY2FsY19zdGF0ZSgg
c3RhdGVfUVNfczMyeDRbIDAgXVsgMCBdLCBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAwIF0sIHN0YXRl
X1FTX3MzMng0WyAxIF1bIDAgXSwgd2FycGluZ19RMTZfczMyeDQgKTsKKyAgICAgICAgICAgICAg
ICAgICAgc3RhdGVfUVNfczMyeDRbIDAgXVsgMSBdID0gY2FsY19zdGF0ZSggc3RhdGVfUVNfczMy
eDRbIDAgXVsgMSBdLCBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAxIF0sIHN0YXRlX1FTX3MzMng0WyAx
IF1bIDEgXSwgd2FycGluZ19RMTZfczMyeDQgKTsKKyAgICAgICAgICAgICAgICAgICAgc3RhdGVf
UVNfczMyeDRbIDEgXVsgMCBdID0gc3RhdGVfUVNfczMyeDRbIDIgXVsgMCBdOworICAgICAgICAg
ICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMSBdWyAxIF0gPSBzdGF0ZV9RU19zMzJ4NFsgMiBd
WyAxIF07CisgICAgICAgICAgICAgICAgfSB3aGlsZSggKytuIDwgKCBsZW5ndGggKyBvcmRlciAp
ICk7CisgICAgICAgICAgICAgICAgaW4gPSBzdGF0ZTsKKyAgICAgICAgICAgICAgICBvIC09IDg7
CisgICAgICAgICAgICB9IHdoaWxlKCBvID4gNCApOworCisgICAgICAgICAgICBpZiggbyApIHsK
KyAgICAgICAgICAgICAgICAvKiBDYWxjdWxhdGUgdGhlIGxhc3QgNCB0YXBzIG9mIGFsbCBpbnB1
dHMuICovCisgICAgICAgICAgICAgICAgb3B1c19pbnQzMiAqc3RhdGVUID0gc3RhdGU7CisgICAg
ICAgICAgICAgICAgc2lsa19hc3NlcnQoIG8gPT0gNCApOworICAgICAgICAgICAgICAgIHN0YXRl
X1FTX3MzMng0WyAwIF1bIDAgXSA9IHN0YXRlX1FTX3MzMng0WyAxIF1bIDAgXSA9IHZkdXBxX25f
czMyKCAwICk7CisgICAgICAgICAgICAgICAgbiA9IGxlbmd0aCArIG9yZGVyOworICAgICAgICAg
ICAgICAgIGRvIHsKKyAgICAgICAgICAgICAgICAgICAgY2FsY19jb3JyKCBpbnB1dF9RUywgY29y
cl9RQywgMCwgc3RhdGVfUVNfczMyeDRbIDAgXVsgMCBdICk7CisgICAgICAgICAgICAgICAgICAg
IHN0YXRlX1FTX3MzMng0WyAyIF1bIDAgXSA9IHZsZDFxX3MzMiggc3RhdGVUICk7CisgICAgICAg
ICAgICAgICAgICAgIHZzdDFxX2xhbmVfczMyKCBzdGF0ZVQsIHN0YXRlX1FTX3MzMng0WyAwIF1b
IDAgXSwgMCApOworICAgICAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAwIF0g
PSB2ZXh0cV9zMzIoIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSwgc3RhdGVfUVNfczMyeDRbIDIg
XVsgMCBdLCAxICk7CisgICAgICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAg
XSA9IGNhbGNfc3RhdGUoIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSwgc3RhdGVfUVNfczMyeDRb
IDIgXVsgMCBdLCBzdGF0ZV9RU19zMzJ4NFsgMSBdWyAwIF0sIHdhcnBpbmdfUTE2X3MzMng0ICk7
CisgICAgICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAxIF1bIDAgXSA9IHN0YXRlX1FT
X3MzMng0WyAyIF1bIDAgXTsKKyAgICAgICAgICAgICAgICAgICAgaW5wdXRfUVMrKzsKKyAgICAg
ICAgICAgICAgICAgICAgc3RhdGVUKys7CisgICAgICAgICAgICAgICAgfSB3aGlsZSggLS1uICk7
CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICB7CisgICAgICAgICAgICBjb25z
dCBvcHVzX2ludDE2ICppbnB1dFQgPSBpbnB1dDsKKyAgICAgICAgICAgIGludDMyeDRfdCB0X3Mz
Mng0OworICAgICAgICAgICAgaW50NjR4MV90IHRfczY0eDE7CisgICAgICAgICAgICBpbnQ2NHgy
X3QgdF9zNjR4MiA9IHZkdXBxX25fczY0KCAwICk7CisgICAgICAgICAgICBmb3IoIG4gPSAwOyBu
IDw9IGxlbmd0aCAtIDg7IG4gKz0gOCApIHsKKyAgICAgICAgICAgICAgICBpbnQxNng4X3QgaW5w
dXRfczE2eDggPSB2bGQxcV9zMTYoIGlucHV0VCApOworICAgICAgICAgICAgICAgIHRfczMyeDQg
PSB2bXVsbF9zMTYoIHZnZXRfbG93X3MxNiggaW5wdXRfczE2eDggKSwgdmdldF9sb3dfczE2KCBp
bnB1dF9zMTZ4OCApICk7CisgICAgICAgICAgICAgICAgdF9zMzJ4NCA9IHZtbGFsX3MxNiggdF9z
MzJ4NCwgdmdldF9oaWdoX3MxNiggaW5wdXRfczE2eDggKSwgdmdldF9oaWdoX3MxNiggaW5wdXRf
czE2eDggKSApOworICAgICAgICAgICAgICAgIHRfczY0eDIgPSB2YWRkd19zMzIoIHRfczY0eDIs
IHZnZXRfbG93X3MzMiggdF9zMzJ4NCApICk7CisgICAgICAgICAgICAgICAgdF9zNjR4MiA9IHZh
ZGR3X3MzMiggdF9zNjR4MiwgdmdldF9oaWdoX3MzMiggdF9zMzJ4NCApICk7CisgICAgICAgICAg
ICAgICAgaW5wdXRUICs9IDg7CisgICAgICAgICAgICB9CisgICAgICAgICAgICB0X3M2NHgxID0g
dmFkZF9zNjQoIHZnZXRfbG93X3M2NCggdF9zNjR4MiApLCB2Z2V0X2hpZ2hfczY0KCB0X3M2NHgy
ICkgKTsKKyAgICAgICAgICAgIGNvcnJfUUNfb3JkZXJUID0gdmdldF9sYW5lX3M2NCggdF9zNjR4
MSwgMCApOworICAgICAgICAgICAgZm9yKCA7IG4gPCBsZW5ndGg7IG4rKyApIHsKKyAgICAgICAg
ICAgICAgICBjb3JyX1FDX29yZGVyVCArPSBzaWxrX1NNVUxMKCBpbnB1dFsgbiBdLCBpbnB1dFsg
biBdICk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBjb3JyX1FDX29yZGVyVCA9IHNpbGtf
TFNISUZUNjQoIGNvcnJfUUNfb3JkZXJULCBRQyApOworICAgICAgICAgICAgY29ycl9RQ1sgb3Jk
ZXJUIF0gPSBjb3JyX1FDX29yZGVyVDsKKyAgICAgICAgfQorCisgICAgICAgIGNvcnJfUUNUID0g
Y29ycl9RQyArIG9yZGVyVCAtIG9yZGVyOworICAgICAgICBsc2ggPSBzaWxrX0NMWjY0KCBjb3Jy
X1FDX29yZGVyVCApIC0gMzU7CisgICAgICAgIGxzaCA9IHNpbGtfTElNSVQoIGxzaCwgLTEyIC0g
UUMsIDMwIC0gUUMgKTsKKyAgICAgICAgKnNjYWxlID0gLSggUUMgKyBsc2ggKTsKKyAgICAgICAg
c2lsa19hc3NlcnQoICpzY2FsZSA+PSAtMzAgJiYgKnNjYWxlIDw9IDEyICk7CisgICAgICAgIGxz
aF9zNjR4MiA9IHZkdXBxX25fczY0KCBsc2ggKTsKKyAgICAgICAgZm9yKCBpID0gMDsgaSA8PSBv
cmRlciAtIDM7IGkgKz0gNCApIHsKKyAgICAgICAgICAgIGludDMyeDRfdCBjb3JyX3MzMng0Owor
ICAgICAgICAgICAgaW50NjR4Ml90IGNvcnJfUUMwX3M2NHgyLCBjb3JyX1FDMV9zNjR4MjsKKyAg
ICAgICAgICAgIGNvcnJfUUMwX3M2NHgyID0gdmxkMXFfczY0KCBjb3JyX1FDVCArIGkgKTsKKyAg
ICAgICAgICAgIGNvcnJfUUMxX3M2NHgyID0gdmxkMXFfczY0KCBjb3JyX1FDVCArIGkgKyAyICk7
CisgICAgICAgICAgICBjb3JyX1FDMF9zNjR4MiA9IHZzaGxxX3M2NCggY29ycl9RQzBfczY0eDIs
IGxzaF9zNjR4MiApOworICAgICAgICAgICAgY29ycl9RQzFfczY0eDIgPSB2c2hscV9zNjQoIGNv
cnJfUUMxX3M2NHgyLCBsc2hfczY0eDIgKTsKKyAgICAgICAgICAgIGNvcnJfczMyeDQgICAgID0g
dmNvbWJpbmVfczMyKCB2bW92bl9zNjQoIGNvcnJfUUMxX3M2NHgyICksIHZtb3ZuX3M2NCggY29y
cl9RQzBfczY0eDIgKSApOworICAgICAgICAgICAgY29ycl9zMzJ4NCAgICAgPSB2cmV2NjRxX3Mz
MiggY29ycl9zMzJ4NCApOworICAgICAgICAgICAgdnN0MXFfczMyKCBjb3JyICsgb3JkZXIgLSBp
IC0gMywgY29ycl9zMzJ4NCApOworICAgICAgICB9CisgICAgICAgIGlmKCBsc2ggPj0gMCApIHsK
KyAgICAgICAgICAgIGZvciggOyBpIDwgb3JkZXIgKyAxOyBpKysgKSB7CisgICAgICAgICAgICAg
ICAgY29yclsgb3JkZXIgLSBpIF0gPSAob3B1c19pbnQzMilzaWxrX0NIRUNLX0ZJVDMyKCBzaWxr
X0xTSElGVDY0KCBjb3JyX1FDVFsgaSBdLCBsc2ggKSApOworICAgICAgICAgICAgfQorICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgICAgZm9yKCA7IGkgPCBvcmRlciArIDE7IGkrKyApIHsKKyAg
ICAgICAgICAgICAgICBjb3JyWyBvcmRlciAtIGkgXSA9IChvcHVzX2ludDMyKXNpbGtfQ0hFQ0tf
RklUMzIoIHNpbGtfUlNISUZUNjQoIGNvcnJfUUNUWyBpIF0sIC1sc2ggKSApOworICAgICAgICAg
ICAgfQorICAgICAgICB9CisgICAgICAgIHNpbGtfYXNzZXJ0KCBjb3JyX1FDVFsgb3JkZXIgXSA+
PSAwICk7IC8qIElmIGJyZWFraW5nLCBkZWNyZWFzZSBRQyovCisgICAgICAgIFJFU1RPUkVfU1RB
Q0s7CisgICAgfQorCisjaWZkZWYgT1BVU19DSEVDS19BU00KKyAgICB7CisgICAgICAgIG9wdXNf
aW50MzIgY29ycl9jWyBNQVhfU0hBUEVfTFBDX09SREVSICsgMSBdOworICAgICAgICBvcHVzX2lu
dCAgIHNjYWxlX2M7CisgICAgICAgIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYygg
Y29ycl9jLCAmc2NhbGVfYywgaW5wdXQsIHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVyICk7Cisg
ICAgICAgIHNpbGtfYXNzZXJ0KCAhbWVtY21wKCBjb3JyX2MsIGNvcnIsIHNpemVvZiggY29ycl9j
WyAwIF0gKSAqICggb3JkZXIgKyAxICkgKSApOworICAgICAgICBzaWxrX2Fzc2VydCggc2NhbGVf
YyA9PSAqc2NhbGUgKTsKKyAgICB9CisjZW5kaWYKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9i
dXJnX21vZGlmaWVkX0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2J1cmdfbW9kaWZpZWRfRklYLmMKaW5kZXgg
MTdkMGUwOTkzY2Y1YmExODhkYjE4MjljMTJkZWQ3NGNiZTA3MTkxNS4uODBlZGJkZmE4YTY1MTQw
ODQ4YzJlODkwMzE5MGJjZDg1YTVmOTBiNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2J1cmdfbW9k
aWZpZWRfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2J1cmdfbW9kaWZpZWRfRklYLmMKQEAgLTM3LDcg
KzM3LDcgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjZGVmaW5lIE1BWF9GUkFNRV9T
SVpFICAgICAgICAgICAgICAzODQgICAgICAgICAgICAgLyogc3ViZnJfbGVuZ3RoICogbmJfc3Vi
ZnIgPSAoIDAuMDA1ICogMTYwMDAgKyAxNiApICogNCA9IDM4NCAqLwogCiAjZGVmaW5lIFFBICAg
ICAgICAgICAgICAgICAgICAgICAgICAyNQotI2RlZmluZSBOX0JJVFNfSEVBRF9ST09NICAgICAg
ICAgICAgMgorI2RlZmluZSBOX0JJVFNfSEVBRF9ST09NICAgICAgICAgICAgMwogI2RlZmluZSBN
SU5fUlNISUZUUyAgICAgICAgICAgICAgICAgLTE2CiAjZGVmaW5lIE1BWF9SU0hJRlRTICAgICAg
ICAgICAgICAgICAoMzIgLSBRQSkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2NvcnJNYXRyaXhf
RklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZml4ZWQvY29yck1hdHJpeF9GSVguYwppbmRleCBjMWQ0MzdjNzg1OWUzYTIy
YzNhZTBmYmUwZDYzNzZiNzA4MTJhNDM3Li4xYjRhMjljMjMyYmZlZWFmOGI2YjdiNTMyNTc3ZTIz
NGM5ODJmNDJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvY29yck1hdHJpeF9GSVguYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZml4ZWQvY29yck1hdHJpeF9GSVguYwpAQCAtNTgsNyArNTgsNyBAQCB2b2lkIHNpbGtfY29y
clZlY3Rvcl9GSVgoCiAgICAgICAgIGZvciggbGFnID0gMDsgbGFnIDwgb3JkZXI7IGxhZysrICkg
ewogICAgICAgICAgICAgaW5uZXJfcHJvZCA9IDA7CiAgICAgICAgICAgICBmb3IoIGkgPSAwOyBp
IDwgTDsgaSsrICkgewotICAgICAgICAgICAgICAgIGlubmVyX3Byb2QgKz0gc2lsa19SU0hJRlQz
Miggc2lsa19TTVVMQkIoIHB0cjFbIGkgXSwgcHRyMltpXSApLCByc2hpZnRzICk7CisgICAgICAg
ICAgICAgICAgaW5uZXJfcHJvZCA9IHNpbGtfQUREX1JTSElGVDMyKCBpbm5lcl9wcm9kLCBzaWxr
X1NNVUxCQiggcHRyMVsgaSBdLCBwdHIyW2ldICksIHJzaGlmdHMgKTsKICAgICAgICAgICAgIH0K
ICAgICAgICAgICAgIFh0WyBsYWcgXSA9IGlubmVyX3Byb2Q7IC8qIFhbOixsYWddJyp0ICovCiAg
ICAgICAgICAgICBwdHIxLS07IC8qIEdvIHRvIG5leHQgY29sdW1uIG9mIFggKi8KQEAgLTc3LDYx
ICs3Nyw1NCBAQCB2b2lkIHNpbGtfY29yck1hdHJpeF9GSVgoCiAgICAgY29uc3Qgb3B1c19pbnQx
NiAgICAgICAgICAgICAgICAqeCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICB4IHZlY3RvciBbTCArIG9yZGVyIC0gMV0gdXNlZCB0byBmb3JtIGRhdGEgbWF0cml4
IFggICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAg
ICAgICAgICAgIEwsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IExlbmd0aCBvZiB2ZWN0b3JzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgb3JkZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTWF4IGxh
ZyBmb3IgY29ycmVsYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBoZWFk
X3Jvb20sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBEZXNpcmVkIGhlYWRy
b29tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgICpYWCwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFBvaW50ZXIgdG8gWCcqWCBjb3Jy
ZWxhdGlvbiBtYXRyaXggWyBvcmRlciB4IG9yZGVyIF0gICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgKnJzaGlmdHMsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUmlnaHQgc2hpZnRzIG9mIGNvcnJlbGF0aW9u
cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
b3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAqbnJnLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIE8gICAgRW5lcmd5IG9mIHggdmVjdG9yICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVz
X2ludCAgICAgICAgICAgICAgICAgICAgICAgICpyc2hpZnRzLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBPICAgIFJpZ2h0IHNoaWZ0cyBvZiBjb3JyZWxhdGlvbnMgYW5kIGVuZXJn
eSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGludCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7Ci0gICAgb3B1c19pbnQgICAg
ICAgICBpLCBqLCBsYWcsIHJzaGlmdHNfbG9jYWwsIGhlYWRfcm9vbV9yc2hpZnRzOworICAgIG9w
dXNfaW50ICAgICAgICAgaSwgaiwgbGFnOwogICAgIG9wdXNfaW50MzIgICAgICAgZW5lcmd5Owog
ICAgIGNvbnN0IG9wdXNfaW50MTYgKnB0cjEsICpwdHIyOwogCiAgICAgLyogQ2FsY3VsYXRlIGVu
ZXJneSB0byBmaW5kIHNoaWZ0IHVzZWQgdG8gZml0IGluIDMyIGJpdHMgKi8KLSAgICBzaWxrX3N1
bV9zcXJfc2hpZnQoICZlbmVyZ3ksICZyc2hpZnRzX2xvY2FsLCB4LCBMICsgb3JkZXIgLSAxICk7
Ci0gICAgLyogQWRkIHNoaWZ0cyB0byBnZXQgdGhlIGRlc2lyZWQgaGVhZCByb29tICovCi0gICAg
aGVhZF9yb29tX3JzaGlmdHMgPSBzaWxrX21heCggaGVhZF9yb29tIC0gc2lsa19DTFozMiggZW5l
cmd5ICksIDAgKTsKLQotICAgIGVuZXJneSA9IHNpbGtfUlNISUZUMzIoIGVuZXJneSwgaGVhZF9y
b29tX3JzaGlmdHMgKTsKLSAgICByc2hpZnRzX2xvY2FsICs9IGhlYWRfcm9vbV9yc2hpZnRzOwor
ICAgIHNpbGtfc3VtX3Nxcl9zaGlmdCggbnJnLCByc2hpZnRzLCB4LCBMICsgb3JkZXIgLSAxICk7
CisgICAgZW5lcmd5ID0gKm5yZzsKIAogICAgIC8qIENhbGN1bGF0ZSBlbmVyZ3kgb2YgZmlyc3Qg
Y29sdW1uICgwKSBvZiBYOiBYWzosMF0nKlhbOiwwXSAqLwogICAgIC8qIFJlbW92ZSBjb250cmli
dXRpb24gb2YgZmlyc3Qgb3JkZXIgLSAxIHNhbXBsZXMgKi8KICAgICBmb3IoIGkgPSAwOyBpIDwg
b3JkZXIgLSAxOyBpKysgKSB7Ci0gICAgICAgIGVuZXJneSAtPSBzaWxrX1JTSElGVDMyKCBzaWxr
X1NNVUxCQiggeFsgaSBdLCB4WyBpIF0gKSwgcnNoaWZ0c19sb2NhbCApOwotICAgIH0KLSAgICBp
ZiggcnNoaWZ0c19sb2NhbCA8ICpyc2hpZnRzICkgewotICAgICAgICAvKiBBZGp1c3QgZW5lcmd5
ICovCi0gICAgICAgIGVuZXJneSA9IHNpbGtfUlNISUZUMzIoIGVuZXJneSwgKnJzaGlmdHMgLSBy
c2hpZnRzX2xvY2FsICk7Ci0gICAgICAgIHJzaGlmdHNfbG9jYWwgPSAqcnNoaWZ0czsKKyAgICAg
ICAgZW5lcmd5IC09IHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCB4WyBpIF0sIHhbIGkgXSAp
LCAqcnNoaWZ0cyApOwogICAgIH0KIAogICAgIC8qIENhbGN1bGF0ZSBlbmVyZ3kgb2YgcmVtYWlu
aW5nIGNvbHVtbnMgb2YgWDogWFs6LGpdJypYWzosal0gKi8KICAgICAvKiBGaWxsIG91dCB0aGUg
ZGlhZ29uYWwgb2YgdGhlIGNvcnJlbGF0aW9uIG1hdHJpeCAqLwogICAgIG1hdHJpeF9wdHIoIFhY
LCAwLCAwLCBvcmRlciApID0gZW5lcmd5OworICAgIHNpbGtfYXNzZXJ0KCBlbmVyZ3kgPj0gMCAp
OwogICAgIHB0cjEgPSAmeFsgb3JkZXIgLSAxIF07IC8qIEZpcnN0IHNhbXBsZSBvZiBjb2x1bW4g
MCBvZiBYICovCiAgICAgZm9yKCBqID0gMTsgaiA8IG9yZGVyOyBqKysgKSB7Ci0gICAgICAgIGVu
ZXJneSA9IHNpbGtfU1VCMzIoIGVuZXJneSwgc2lsa19SU0hJRlQzMiggc2lsa19TTVVMQkIoIHB0
cjFbIEwgLSBqIF0sIHB0cjFbIEwgLSBqIF0gKSwgcnNoaWZ0c19sb2NhbCApICk7Ci0gICAgICAg
IGVuZXJneSA9IHNpbGtfQUREMzIoIGVuZXJneSwgc2lsa19SU0hJRlQzMiggc2lsa19TTVVMQkIo
IHB0cjFbIC1qIF0sIHB0cjFbIC1qIF0gKSwgcnNoaWZ0c19sb2NhbCApICk7CisgICAgICAgIGVu
ZXJneSA9IHNpbGtfU1VCMzIoIGVuZXJneSwgc2lsa19SU0hJRlQzMiggc2lsa19TTVVMQkIoIHB0
cjFbIEwgLSBqIF0sIHB0cjFbIEwgLSBqIF0gKSwgKnJzaGlmdHMgKSApOworICAgICAgICBlbmVy
Z3kgPSBzaWxrX0FERDMyKCBlbmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIx
WyAtaiBdLCBwdHIxWyAtaiBdICksICpyc2hpZnRzICkgKTsKICAgICAgICAgbWF0cml4X3B0cigg
WFgsIGosIGosIG9yZGVyICkgPSBlbmVyZ3k7CisgICAgICAgIHNpbGtfYXNzZXJ0KCBlbmVyZ3kg
Pj0gMCApOwogICAgIH0KIAogICAgIHB0cjIgPSAmeFsgb3JkZXIgLSAyIF07IC8qIEZpcnN0IHNh
bXBsZSBvZiBjb2x1bW4gMSBvZiBYICovCiAgICAgLyogQ2FsY3VsYXRlIHRoZSByZW1haW5pbmcg
ZWxlbWVudHMgb2YgdGhlIGNvcnJlbGF0aW9uIG1hdHJpeCAqLwotICAgIGlmKCByc2hpZnRzX2xv
Y2FsID4gMCApIHsKKyAgICBpZiggKnJzaGlmdHMgPiAwICkgewogICAgICAgICAvKiBSaWdodCBz
aGlmdGluZyB1c2VkICovCiAgICAgICAgIGZvciggbGFnID0gMTsgbGFnIDwgb3JkZXI7IGxhZysr
ICkgewogICAgICAgICAgICAgLyogSW5uZXIgcHJvZHVjdCBvZiBjb2x1bW4gMCBhbmQgY29sdW1u
IGxhZzogWFs6LDBdJypYWzosbGFnXSAqLwogICAgICAgICAgICAgZW5lcmd5ID0gMDsKICAgICAg
ICAgICAgIGZvciggaSA9IDA7IGkgPCBMOyBpKysgKSB7Ci0gICAgICAgICAgICAgICAgZW5lcmd5
ICs9IHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyBpIF0sIHB0cjJbaV0gKSwgcnNo
aWZ0c19sb2NhbCApOworICAgICAgICAgICAgICAgIGVuZXJneSArPSBzaWxrX1JTSElGVDMyKCBz
aWxrX1NNVUxCQiggcHRyMVsgaSBdLCBwdHIyW2ldICksICpyc2hpZnRzICk7CiAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICAvKiBDYWxjdWxhdGUgcmVtYWluaW5nIG9mZiBkaWFnb25hbDogWFs6
LGpdJypYWzosaiArIGxhZ10gKi8KICAgICAgICAgICAgIG1hdHJpeF9wdHIoIFhYLCBsYWcsIDAs
IG9yZGVyICkgPSBlbmVyZ3k7CiAgICAgICAgICAgICBtYXRyaXhfcHRyKCBYWCwgMCwgbGFnLCBv
cmRlciApID0gZW5lcmd5OwogICAgICAgICAgICAgZm9yKCBqID0gMTsgaiA8ICggb3JkZXIgLSBs
YWcgKTsgaisrICkgewotICAgICAgICAgICAgICAgIGVuZXJneSA9IHNpbGtfU1VCMzIoIGVuZXJn
eSwgc2lsa19SU0hJRlQzMiggc2lsa19TTVVMQkIoIHB0cjFbIEwgLSBqIF0sIHB0cjJbIEwgLSBq
IF0gKSwgcnNoaWZ0c19sb2NhbCApICk7Ci0gICAgICAgICAgICAgICAgZW5lcmd5ID0gc2lsa19B
REQzMiggZW5lcmd5LCBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggcHRyMVsgLWogXSwgcHRy
MlsgLWogXSApLCByc2hpZnRzX2xvY2FsICkgKTsKKyAgICAgICAgICAgICAgICBlbmVyZ3kgPSBz
aWxrX1NVQjMyKCBlbmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyBMIC0g
aiBdLCBwdHIyWyBMIC0gaiBdICksICpyc2hpZnRzICkgKTsKKyAgICAgICAgICAgICAgICBlbmVy
Z3kgPSBzaWxrX0FERDMyKCBlbmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIx
WyAtaiBdLCBwdHIyWyAtaiBdICksICpyc2hpZnRzICkgKTsKICAgICAgICAgICAgICAgICBtYXRy
aXhfcHRyKCBYWCwgbGFnICsgaiwgaiwgb3JkZXIgKSA9IGVuZXJneTsKICAgICAgICAgICAgICAg
ICBtYXRyaXhfcHRyKCBYWCwgaiwgbGFnICsgaiwgb3JkZXIgKSA9IGVuZXJneTsKICAgICAgICAg
ICAgIH0KQEAgLTE1Myw2ICsxNDYsNSBAQCB2b2lkIHNpbGtfY29yck1hdHJpeF9GSVgoCiAgICAg
ICAgICAgICBwdHIyLS07LyogVXBkYXRlIHBvaW50ZXIgdG8gZmlyc3Qgc2FtcGxlIG9mIG5leHQg
Y29sdW1uIChsYWcpIGluIFggKi8KICAgICAgICAgfQogICAgIH0KLSAgICAqcnNoaWZ0cyA9IHJz
aGlmdHNfbG9jYWw7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9lbmNvZGVfZnJhbWVfRklY
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZml4ZWQvZW5jb2RlX2ZyYW1lX0ZJWC5jCmluZGV4IDVlZjQ0YjAzZmM0YzU4NTk5
OWJjZWMyODIzNWUwZWQ0YTU1NDg2YjEuLmY2ZWU4MTNiOTdmYTU2NGQzM2Y5NjQ4ZTA4MGY5ODQx
NTljOTQ0YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9lbmNvZGVfZnJhbWVfRklYLmMKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2ZpeGVkL2VuY29kZV9mcmFtZV9GSVguYwpAQCAtMjksNiArMjksNyBAQCBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KICNpbmNsdWRlICJjb25maWcuaCIKICNlbmRpZgogCisjaW5jbHVk
ZSA8c3RkbGliLmg+CiAjaW5jbHVkZSAibWFpbl9GSVguaCIKICNpbmNsdWRlICJzdGFja19hbGxv
Yy5oIgogI2luY2x1ZGUgInR1bmluZ19wYXJhbWV0ZXJzLmgiCkBAIC0zNywyNiArMzgsMzMgQEAg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxr
X0xCUlJfZW5jb2RlX0ZJWCgKICAgICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAgICpw
c0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8g
U2lsayBGSVggZW5jb2RlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwogICAgIHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZJWCAgICAgICAgKnBzRW5jQ3Ry
bCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIEZJ
WCBlbmNvZGVyIGNvbnRyb2wgc3RydWN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICAgICB4ZndfUTNbXSwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgIHgxNltdLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgICAgICAgY29uZENvZGluZyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgVGhlIHR5cGUgb2YgY29uZGl0aW9uYWwgY29kaW5nIHVzZWQgc28g
ZmFyIGZvciB0aGlzIGZyYW1lICAgICAgICAgICAgICAgICAgICovCiApOwogCiB2b2lkIHNpbGtf
ZW5jb2RlX2RvX1ZBRF9GSVgoCi0gICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZJWCAgICAgICAgICAq
cHNFbmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBQb2ludGVyIHRv
IFNpbGsgRklYIGVuY29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAgICpwc0VuYywg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU2lsayBG
SVggZW5jb2RlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgYWN0aXZpdHkgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRGVjaXNpb24gb2YgT3B1cyB2b2ljZSBh
Y3Rpdml0eSBkZXRlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAp
CiB7CisgICAgY29uc3Qgb3B1c19pbnQgYWN0aXZpdHlfdGhyZXNob2xkID0gU0lMS19GSVhfQ09O
U1QoIFNQRUVDSF9BQ1RJVklUWV9EVFhfVEhSRVMsIDggKTsKKwogICAgIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwogICAgIC8qIFZvaWNlIEFjdGl2aXR5IERldGVjdGlvbiAqLwogICAg
IC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIHNpbGtfVkFEX0dldFNBX1E4KCAm
cHNFbmMtPnNDbW4sIHBzRW5jLT5zQ21uLmlucHV0QnVmICsgMSwgcHNFbmMtPnNDbW4uYXJjaCAp
OworICAgIC8qIElmIE9wdXMgVkFEIGlzIGluYWN0aXZlIGFuZCBTaWxrIFZBRCBpcyBhY3RpdmU6
IGxvd2VyIFNpbGsgVkFEIHRvIGp1c3QgdW5kZXIgdGhlIHRocmVzaG9sZCAqLworICAgIGlmKCBh
Y3Rpdml0eSA9PSBWQURfTk9fQUNUSVZJVFkgJiYgcHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5
X1E4ID49IGFjdGl2aXR5X3RocmVzaG9sZCApIHsKKyAgICAgICAgcHNFbmMtPnNDbW4uc3BlZWNo
X2FjdGl2aXR5X1E4ID0gYWN0aXZpdHlfdGhyZXNob2xkIC0gMTsKKyAgICB9CiAKICAgICAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgLyog
Q29udmVydCBzcGVlY2ggYWN0aXZpdHkgaW50byBWQUQgYW5kIERUWCBmbGFncyAqLwogICAgIC8q
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICBp
ZiggcHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5X1E4IDwgU0lMS19GSVhfQ09OU1QoIFNQRUVD
SF9BQ1RJVklUWV9EVFhfVEhSRVMsIDggKSApIHsKKyAgICBpZiggcHNFbmMtPnNDbW4uc3BlZWNo
X2FjdGl2aXR5X1E4IDwgYWN0aXZpdHlfdGhyZXNob2xkICkgewogICAgICAgICBwc0VuYy0+c0Nt
bi5pbmRpY2VzLnNpZ25hbFR5cGUgPSBUWVBFX05PX1ZPSUNFX0FDVElWSVRZOwogICAgICAgICBw
c0VuYy0+c0Ntbi5ub1NwZWVjaENvdW50ZXIrKzsKLSAgICAgICAgaWYoIHBzRW5jLT5zQ21uLm5v
U3BlZWNoQ291bnRlciA8IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCApIHsKKyAgICAgICAg
aWYoIHBzRW5jLT5zQ21uLm5vU3BlZWNoQ291bnRlciA8PSBOQl9TUEVFQ0hfRlJBTUVTX0JFRk9S
RV9EVFggKSB7CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5pbkRUWCA9IDA7CiAgICAgICAgIH0g
ZWxzZSBpZiggcHNFbmMtPnNDbW4ubm9TcGVlY2hDb3VudGVyID4gTUFYX0NPTlNFQ1VUSVZFX0RU
WCArIE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCApIHsKICAgICAgICAgICAgIHBzRW5jLT5z
Q21uLm5vU3BlZWNoQ291bnRlciA9IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWDsKQEAgLTk0
LDYgKzEwMiw5IEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZJWCgKICAgICBvcHVzX2lu
dDE2ICAgZWNfcHJldkxhZ0luZGV4X2NvcHk7CiAgICAgb3B1c19pbnQgICAgIGVjX3ByZXZTaWdu
YWxUeXBlX2NvcHk7CiAgICAgb3B1c19pbnQ4ICAgIExhc3RHYWluSW5kZXhfY29weTI7CisgICAg
b3B1c19pbnQgICAgIGdhaW5fbG9ja1sgTUFYX05CX1NVQkZSIF0gPSB7MH07CisgICAgb3B1c19p
bnQxNiAgIGJlc3RfZ2Fpbl9tdWx0WyBNQVhfTkJfU1VCRlIgXTsKKyAgICBvcHVzX2ludCAgICAg
YmVzdF9zdW1bIE1BWF9OQl9TVUJGUiBdOwogICAgIFNBVkVfU1RBQ0s7CiAKICAgICAvKiBUaGlz
IGlzIHRvdGFsbHkgdW5uZWNlc3NhcnkgYnV0IG1hbnkgY29tcGlsZXJzIChpbmNsdWRpbmcgZ2Nj
KSBhcmUgdG9vIGR1bWIgdG8gcmVhbGlzZSBpdCAqLwpAQCAtMTE4LDcgKzEyOSw2IEBAIG9wdXNf
aW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZJWCgKICAgICBzaWxrX21lbWNweSggeF9mcmFtZSArIExB
X1NIQVBFX01TICogcHNFbmMtPnNDbW4uZnNfa0h6LCBwc0VuYy0+c0Ntbi5pbnB1dEJ1ZiArIDEs
IHBzRW5jLT5zQ21uLmZyYW1lX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CiAKICAg
ICBpZiggIXBzRW5jLT5zQ21uLnByZWZpbGxGbGFnICkgewotICAgICAgICBWQVJERUNMKCBvcHVz
X2ludDMyLCB4ZndfUTMgKTsKICAgICAgICAgVkFSREVDTCggb3B1c19pbnQxNiwgcmVzX3BpdGNo
ICk7CiAgICAgICAgIFZBUkRFQ0woIG9wdXNfdWludDgsIGVjX2J1Zl9jb3B5ICk7CiAgICAgICAg
IG9wdXNfaW50MTYgKnJlc19waXRjaF9mcmFtZTsKQEAgLTEzMiw3ICsxNDIsNyBAQCBvcHVzX2lu
dCBzaWxrX2VuY29kZV9mcmFtZV9GSVgoCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogRmluZCBwaXRjaCBsYWdzLCBpbml0aWFs
IExQQyBhbmFseXNpcyAqLwogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKiovCi0gICAgICAgIHNpbGtfZmluZF9waXRjaF9sYWdzX0ZJWCggcHNFbmMsICZz
RW5jQ3RybCwgcmVzX3BpdGNoLCB4X2ZyYW1lLCBwc0VuYy0+c0Ntbi5hcmNoICk7CisgICAgICAg
IHNpbGtfZmluZF9waXRjaF9sYWdzX0ZJWCggcHNFbmMsICZzRW5jQ3RybCwgcmVzX3BpdGNoLCB4
X2ZyYW1lIC0gcHNFbmMtPnNDbW4ubHRwX21lbV9sZW5ndGgsIHBzRW5jLT5zQ21uLmFyY2ggKTsK
IAogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgICAgICAvKiBOb2lzZSBz
aGFwZSBhbmFseXNpcyAqLwpAQCAtMTQyLDIzICsxNTIsMTcgQEAgb3B1c19pbnQgc2lsa19lbmNv
ZGVfZnJhbWVfRklYKAogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqLwogICAgICAgICAvKiBGaW5kIGxpbmVhciBwcmVkaWN0aW9uIGNv
ZWZmaWNpZW50cyAoTFBDICsgTFRQKSAqLwogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICBzaWxrX2ZpbmRfcHJlZF9j
b2Vmc19GSVgoIHBzRW5jLCAmc0VuY0N0cmwsIHJlc19waXRjaCwgeF9mcmFtZSwgY29uZENvZGlu
ZyApOworICAgICAgICBzaWxrX2ZpbmRfcHJlZF9jb2Vmc19GSVgoIHBzRW5jLCAmc0VuY0N0cmws
IHJlc19waXRjaF9mcmFtZSwgeF9mcmFtZSwgY29uZENvZGluZyApOwogCiAgICAgICAgIC8qKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgICAgICAvKiBQcm9jZXNz
IGdhaW5zICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgLyoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgICAgIHNpbGtfcHJvY2Vzc19nYWluc19G
SVgoIHBzRW5jLCAmc0VuY0N0cmwsIGNvbmRDb2RpbmcgKTsKIAotICAgICAgICAvKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgICAgIC8qIFByZWZpbHRlcmlu
ZyBmb3Igbm9pc2Ugc2hhcGVyICAgICAgICAgKi8KLSAgICAgICAgLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICBBTExPQyggeGZ3X1EzLCBwc0VuYy0+
c0Ntbi5mcmFtZV9sZW5ndGgsIG9wdXNfaW50MzIgKTsKLSAgICAgICAgc2lsa19wcmVmaWx0ZXJf
RklYKCBwc0VuYywgJnNFbmNDdHJsLCB4ZndfUTMsIHhfZnJhbWUgKTsKLQogICAgICAgICAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogTG93IEJp
dHJhdGUgUmVkdW5kYW50IEVuY29kaW5nICAgICAgICovCiAgICAgICAgIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICBzaWxrX0xCUlJfZW5jb2RlX0ZJ
WCggcHNFbmMsICZzRW5jQ3RybCwgeGZ3X1EzLCBjb25kQ29kaW5nICk7CisgICAgICAgIHNpbGtf
TEJSUl9lbmNvZGVfRklYKCBwc0VuYywgJnNFbmNDdHJsLCB4X2ZyYW1lLCBjb25kQ29kaW5nICk7
CiAKICAgICAgICAgLyogTG9vcCBvdmVyIHF1YW50aXplciBhbmQgZW50cm9weSBjb2RpbmcgdG8g
Y29udHJvbCBiaXRyYXRlICovCiAgICAgICAgIG1heEl0ZXIgPSA2OwpAQCAtMTk0LDE3ICsxOTgs
MjEgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRklYKAogICAgICAgICAgICAgICAgIC8q
IE5vaXNlIHNoYXBpbmcgcXVhbnRpemF0aW9uICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAg
ICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgICAgICAg
ICAgICAgaWYoIHBzRW5jLT5zQ21uLm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gPiAxIHx8IHBzRW5j
LT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKLSAgICAgICAgICAgICAgICAgICAgc2lsa19OU1Ff
ZGVsX2RlYyggJnBzRW5jLT5zQ21uLCAmcHNFbmMtPnNDbW4uc05TUSwgJnBzRW5jLT5zQ21uLmlu
ZGljZXMsIHhmd19RMywgcHNFbmMtPnNDbW4ucHVsc2VzLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc0VuY0N0cmwuUHJlZENvZWZfUTEyWyAwIF0sIHNFbmNDdHJsLkxUUENvZWZfUTE0LCBz
RW5jQ3RybC5BUjJfUTEzLCBzRW5jQ3RybC5IYXJtU2hhcGVHYWluX1ExNCwKKyAgICAgICAgICAg
ICAgICAgICAgc2lsa19OU1FfZGVsX2RlYyggJnBzRW5jLT5zQ21uLCAmcHNFbmMtPnNDbW4uc05T
USwgJnBzRW5jLT5zQ21uLmluZGljZXMsIHhfZnJhbWUsIHBzRW5jLT5zQ21uLnB1bHNlcywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHNFbmNDdHJsLlByZWRDb2VmX1ExMlsgMCBdLCBzRW5j
Q3RybC5MVFBDb2VmX1ExNCwgc0VuY0N0cmwuQVJfUTEzLCBzRW5jQ3RybC5IYXJtU2hhcGVHYWlu
X1ExNCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNFbmNDdHJsLlRpbHRfUTE0LCBzRW5j
Q3RybC5MRl9zaHBfUTE0LCBzRW5jQ3RybC5HYWluc19RMTYsIHNFbmNDdHJsLnBpdGNoTCwgc0Vu
Y0N0cmwuTGFtYmRhX1ExMCwgc0VuY0N0cmwuTFRQX3NjYWxlX1ExNCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmFyY2ggKTsKICAgICAgICAgICAgICAgICB9IGVsc2Ug
ewotICAgICAgICAgICAgICAgICAgICBzaWxrX05TUSggJnBzRW5jLT5zQ21uLCAmcHNFbmMtPnND
bW4uc05TUSwgJnBzRW5jLT5zQ21uLmluZGljZXMsIHhmd19RMywgcHNFbmMtPnNDbW4ucHVsc2Vz
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNFbmNDdHJsLlByZWRDb2VmX1ExMlsgMCBd
LCBzRW5jQ3RybC5MVFBDb2VmX1ExNCwgc0VuY0N0cmwuQVIyX1ExMywgc0VuY0N0cmwuSGFybVNo
YXBlR2Fpbl9RMTQsCisgICAgICAgICAgICAgICAgICAgIHNpbGtfTlNRKCAmcHNFbmMtPnNDbW4s
ICZwc0VuYy0+c0Ntbi5zTlNRLCAmcHNFbmMtPnNDbW4uaW5kaWNlcywgeF9mcmFtZSwgcHNFbmMt
PnNDbW4ucHVsc2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNFbmNDdHJsLlByZWRD
b2VmX1ExMlsgMCBdLCBzRW5jQ3RybC5MVFBDb2VmX1ExNCwgc0VuY0N0cmwuQVJfUTEzLCBzRW5j
Q3RybC5IYXJtU2hhcGVHYWluX1ExNCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzRW5j
Q3RybC5UaWx0X1ExNCwgc0VuY0N0cmwuTEZfc2hwX1ExNCwgc0VuY0N0cmwuR2FpbnNfUTE2LCBz
RW5jQ3RybC5waXRjaEwsIHNFbmNDdHJsLkxhbWJkYV9RMTAsIHNFbmNDdHJsLkxUUF9zY2FsZV9R
MTQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4uYXJjaCk7CiAgICAg
ICAgICAgICAgICAgfQogCisgICAgICAgICAgICAgICAgaWYgKCBpdGVyID09IG1heEl0ZXIgJiYg
IWZvdW5kX2xvd2VyICkgeworICAgICAgICAgICAgICAgICAgICBzaWxrX21lbWNweSggJnNSYW5n
ZUVuY19jb3B5MiwgcHNSYW5nZUVuYywgc2l6ZW9mKCBlY19lbmMgKSApOworICAgICAgICAgICAg
ICAgIH0KKwogICAgICAgICAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqLwogICAgICAgICAgICAgICAgIC8qIEVuY29kZSBQYXJhbWV0ZXJzICAgICAgICAg
ICAgICAgICAgICAqLwogICAgICAgICAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwpAQCAtMjE4LDYgKzIyNiwzMyBAQCBvcHVzX2ludCBzaWxrX2VuY29k
ZV9mcmFtZV9GSVgoCiAKICAgICAgICAgICAgICAgICBuQml0cyA9IGVjX3RlbGwoIHBzUmFuZ2VF
bmMgKTsKIAorICAgICAgICAgICAgICAgIC8qIElmIHdlIHN0aWxsIGJ1c3QgYWZ0ZXIgdGhlIGxh
c3QgaXRlcmF0aW9uLCBkbyBzb21lIGRhbWFnZSBjb250cm9sLiAqLworICAgICAgICAgICAgICAg
IGlmICggaXRlciA9PSBtYXhJdGVyICYmICFmb3VuZF9sb3dlciAmJiBuQml0cyA+IG1heEJpdHMg
KSB7CisgICAgICAgICAgICAgICAgICAgIHNpbGtfbWVtY3B5KCBwc1JhbmdlRW5jLCAmc1Jhbmdl
RW5jX2NvcHkyLCBzaXplb2YoIGVjX2VuYyApICk7CisKKyAgICAgICAgICAgICAgICAgICAgLyog
S2VlcCBnYWlucyB0aGUgc2FtZSBhcyB0aGUgbGFzdCBmcmFtZS4gKi8KKyAgICAgICAgICAgICAg
ICAgICAgcHNFbmMtPnNTaGFwZS5MYXN0R2FpbkluZGV4ID0gc0VuY0N0cmwubGFzdEdhaW5JbmRl
eFByZXY7CisgICAgICAgICAgICAgICAgICAgIGZvciAoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4u
bmJfc3ViZnI7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmlu
ZGljZXMuR2FpbnNJbmRpY2VzWyBpIF0gPSA0OworICAgICAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgICAgIGlmIChjb25kQ29kaW5nICE9IENPREVfQ09ORElUSU9OQUxMWSkgewor
ICAgICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2VzLkdhaW5zSW5kaWNlc1sg
MCBdID0gc0VuY0N0cmwubGFzdEdhaW5JbmRleFByZXY7CisgICAgICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4uZWNfcHJldkxhZ0luZGV4ID0gZWNfcHJl
dkxhZ0luZGV4X2NvcHk7CisgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmVjX3ByZXZT
aWduYWxUeXBlID0gZWNfcHJldlNpZ25hbFR5cGVfY29weTsKKyAgICAgICAgICAgICAgICAgICAg
LyogQ2xlYXIgYWxsIHB1bHNlcy4gKi8KKyAgICAgICAgICAgICAgICAgICAgZm9yICggaSA9IDA7
IGkgPCBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGg7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIHBzRW5jLT5zQ21uLnB1bHNlc1sgaSBdID0gMDsKKyAgICAgICAgICAgICAgICAgICAg
fQorCisgICAgICAgICAgICAgICAgICAgIHNpbGtfZW5jb2RlX2luZGljZXMoICZwc0VuYy0+c0Nt
biwgcHNSYW5nZUVuYywgcHNFbmMtPnNDbW4ubkZyYW1lc0VuY29kZWQsIDAsIGNvbmRDb2Rpbmcg
KTsKKworICAgICAgICAgICAgICAgICAgICBzaWxrX2VuY29kZV9wdWxzZXMoIHBzUmFuZ2VFbmMs
IHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSwgcHNFbmMtPnNDbW4uaW5kaWNlcy5xdWFu
dE9mZnNldFR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5wdWxzZXMs
IHBzRW5jLT5zQ21uLmZyYW1lX2xlbmd0aCApOworCisgICAgICAgICAgICAgICAgICAgIG5CaXRz
ID0gZWNfdGVsbCggcHNSYW5nZUVuYyApOworICAgICAgICAgICAgICAgIH0KKwogICAgICAgICAg
ICAgICAgIGlmKCB1c2VDQlIgPT0gMCAmJiBpdGVyID09IDAgJiYgbkJpdHMgPD0gbWF4Qml0cyAp
IHsKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQpAQCAtMjY1
LDE1ICszMDAsMzUgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRklYKAogICAgICAgICAg
ICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQogCisgICAgICAgICAgICBpZiAoICFmb3VuZF9s
b3dlciAmJiBuQml0cyA+IG1heEJpdHMgKSB7CisgICAgICAgICAgICAgICAgaW50IGo7CisgICAg
ICAgICAgICAgICAgZm9yICggaSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaSsrICkg
eworICAgICAgICAgICAgICAgICAgICBpbnQgc3VtPTA7CisgICAgICAgICAgICAgICAgICAgIGZv
ciAoIGogPSBpKnBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aDsgaiA8IChpKzEpKnBzRW5jLT5zQ21u
LnN1YmZyX2xlbmd0aDsgaisrICkgeworICAgICAgICAgICAgICAgICAgICAgICAgc3VtICs9IGFi
cyggcHNFbmMtPnNDbW4ucHVsc2VzW2pdICk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICAgICAgaWYgKCBpdGVyID09IDAgfHwgKHN1bSA8IGJlc3Rfc3VtW2ldICYmICFn
YWluX2xvY2tbaV0pICkgeworICAgICAgICAgICAgICAgICAgICAgICAgYmVzdF9zdW1baV0gPSBz
dW07CisgICAgICAgICAgICAgICAgICAgICAgICBiZXN0X2dhaW5fbXVsdFtpXSA9IGdhaW5NdWx0
X1E4OworICAgICAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICAg
ICAgZ2Fpbl9sb2NrW2ldID0gMTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmKCAoIGZvdW5kX2xvd2VyICYgZm91
bmRfdXBwZXIgKSA9PSAwICkgewogICAgICAgICAgICAgICAgIC8qIEFkanVzdCBnYWluIGFjY29y
ZGluZyB0byBoaWdoLXJhdGUgcmF0ZS9kaXN0b3J0aW9uIGN1cnZlICovCi0gICAgICAgICAgICAg
ICAgb3B1c19pbnQzMiBnYWluX2ZhY3Rvcl9RMTY7Ci0gICAgICAgICAgICAgICAgZ2Fpbl9mYWN0
b3JfUTE2ID0gc2lsa19sb2cybGluKCBzaWxrX0xTSElGVCggbkJpdHMgLSBtYXhCaXRzLCA3ICkg
LyBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGggKyBTSUxLX0ZJWF9DT05TVCggMTYsIDcgKSApOwot
ICAgICAgICAgICAgICAgIGdhaW5fZmFjdG9yX1ExNiA9IHNpbGtfbWluXzMyKCBnYWluX2ZhY3Rv
cl9RMTYsIFNJTEtfRklYX0NPTlNUKCAyLCAxNiApICk7CiAgICAgICAgICAgICAgICAgaWYoIG5C
aXRzID4gbWF4Qml0cyApIHsKLSAgICAgICAgICAgICAgICAgICAgZ2Fpbl9mYWN0b3JfUTE2ID0g
c2lsa19tYXhfMzIoIGdhaW5fZmFjdG9yX1ExNiwgU0lMS19GSVhfQ09OU1QoIDEuMywgMTYgKSAp
OworICAgICAgICAgICAgICAgICAgICBpZiAoZ2Fpbk11bHRfUTggPCAxNjM4NCkgeworICAgICAg
ICAgICAgICAgICAgICAgICAgZ2Fpbk11bHRfUTggKj0gMjsKKyAgICAgICAgICAgICAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGdhaW5NdWx0X1E4ID0gMzI3Njc7Cisg
ICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgICAgICAgICBvcHVzX2ludDMyIGdhaW5fZmFjdG9yX1ExNjsKKyAgICAgICAgICAgICAgICAg
ICAgZ2Fpbl9mYWN0b3JfUTE2ID0gc2lsa19sb2cybGluKCBzaWxrX0xTSElGVCggbkJpdHMgLSBt
YXhCaXRzLCA3ICkgLyBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGggKyBTSUxLX0ZJWF9DT05TVCgg
MTYsIDcgKSApOworICAgICAgICAgICAgICAgICAgICBnYWluTXVsdF9ROCA9IHNpbGtfU01VTFdC
KCBnYWluX2ZhY3Rvcl9RMTYsIGdhaW5NdWx0X1E4ICk7CiAgICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgICAgIGdhaW5NdWx0X1E4ID0gc2lsa19TTVVMV0IoIGdhaW5fZmFjdG9yX1ExNiwg
Z2Fpbk11bHRfUTggKTsKKwogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAv
KiBBZGp1c3QgZ2FpbiBieSBpbnRlcnBvbGF0aW5nICovCiAgICAgICAgICAgICAgICAgZ2Fpbk11
bHRfUTggPSBnYWluTXVsdF9sb3dlciArIHNpbGtfRElWMzJfMTYoIHNpbGtfTVVMKCBnYWluTXVs
dF91cHBlciAtIGdhaW5NdWx0X2xvd2VyLCBtYXhCaXRzIC0gbkJpdHNfbG93ZXIgKSwgbkJpdHNf
dXBwZXIgLSBuQml0c19sb3dlciApOwpAQCAtMjg3LDcgKzM0MiwxMyBAQCBvcHVzX2ludCBzaWxr
X2VuY29kZV9mcmFtZV9GSVgoCiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIGZvciggaSA9
IDA7IGkgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaSsrICkgewotICAgICAgICAgICAgICAgIHNF
bmNDdHJsLkdhaW5zX1ExNlsgaSBdID0gc2lsa19MU0hJRlRfU0FUMzIoIHNpbGtfU01VTFdCKCBz
RW5jQ3RybC5HYWluc1VucV9RMTZbIGkgXSwgZ2Fpbk11bHRfUTggKSwgOCApOworICAgICAgICAg
ICAgICAgIG9wdXNfaW50MTYgdG1wOworICAgICAgICAgICAgICAgIGlmICggZ2Fpbl9sb2NrW2ld
ICkgeworICAgICAgICAgICAgICAgICAgICB0bXAgPSBiZXN0X2dhaW5fbXVsdFtpXTsKKyAgICAg
ICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICB0bXAgPSBnYWluTXVsdF9R
ODsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgc0VuY0N0cmwuR2FpbnNfUTE2
WyBpIF0gPSBzaWxrX0xTSElGVF9TQVQzMiggc2lsa19TTVVMV0IoIHNFbmNDdHJsLkdhaW5zVW5x
X1ExNlsgaSBdLCB0bXAgKSwgOCApOwogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICAvKiBR
dWFudGl6ZSBnYWlucyAqLwpAQCAtMzMxLDcgKzM5Miw3IEBAIG9wdXNfaW50IHNpbGtfZW5jb2Rl
X2ZyYW1lX0ZJWCgKIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTEJSUl9lbmNvZGVfRklY
KAogICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GSVggICAgICAgICAgKnBzRW5jLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIEZJWCBlbmNvZGVy
IHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAg
c2lsa19lbmNvZGVyX2NvbnRyb2xfRklYICAgICAgICAqcHNFbmNDdHJsLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSS9PICBQb2ludGVyIHRvIFNpbGsgRklYIGVuY29kZXIgY29udHJv
bCBzdHJ1Y3QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludDMyICAgICAgICAgICAgICAgIHhmd19RM1tdLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIElucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgICAgICAgICAgICAgeDE2W10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgSW5wdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICAg
ICAgICAgICAgICBjb25kQ29kaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBUaGUgdHlwZSBvZiBjb25kaXRpb25hbCBjb2RpbmcgdXNlZCBzbyBmYXIgZm9yIHRoaXMgZnJh
bWUgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKQEAgLTM3MCwxNCArNDMxLDE0IEBAIHN0YXRp
YyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTEJSUl9lbmNvZGVfRklYKAogICAgICAgICAvKiBOb2lz
ZSBzaGFwaW5nIHF1YW50aXphdGlvbiAgICAgICAgICAgICovCiAgICAgICAgIC8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgaWYoIHBzRW5jLT5zQ21u
Lm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gPiAxIHx8IHBzRW5jLT5zQ21uLndhcnBpbmdfUTE2ID4g
MCApIHsKLSAgICAgICAgICAgIHNpbGtfTlNRX2RlbF9kZWMoICZwc0VuYy0+c0NtbiwgJnNOU1Ff
TEJSUiwgcHNJbmRpY2VzX0xCUlIsIHhmd19RMywKKyAgICAgICAgICAgIHNpbGtfTlNRX2RlbF9k
ZWMoICZwc0VuYy0+c0NtbiwgJnNOU1FfTEJSUiwgcHNJbmRpY2VzX0xCUlIsIHgxNiwKICAgICAg
ICAgICAgICAgICBwc0VuYy0+c0Ntbi5wdWxzZXNfTEJSUlsgcHNFbmMtPnNDbW4ubkZyYW1lc0Vu
Y29kZWQgXSwgcHNFbmNDdHJsLT5QcmVkQ29lZl9RMTJbIDAgXSwgcHNFbmNDdHJsLT5MVFBDb2Vm
X1ExNCwKLSAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkFSMl9RMTMsIHBzRW5jQ3RybC0+SGFy
bVNoYXBlR2Fpbl9RMTQsIHBzRW5jQ3RybC0+VGlsdF9RMTQsIHBzRW5jQ3RybC0+TEZfc2hwX1Ex
NCwKKyAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkFSX1ExMywgcHNFbmNDdHJsLT5IYXJtU2hh
cGVHYWluX1ExNCwgcHNFbmNDdHJsLT5UaWx0X1ExNCwgcHNFbmNDdHJsLT5MRl9zaHBfUTE0LAog
ICAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+R2FpbnNfUTE2LCBwc0VuY0N0cmwtPnBpdGNoTCwg
cHNFbmNDdHJsLT5MYW1iZGFfUTEwLCBwc0VuY0N0cmwtPkxUUF9zY2FsZV9RMTQsIHBzRW5jLT5z
Q21uLmFyY2ggKTsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHNpbGtfTlNRKCAmcHNF
bmMtPnNDbW4sICZzTlNRX0xCUlIsIHBzSW5kaWNlc19MQlJSLCB4ZndfUTMsCisgICAgICAgICAg
ICBzaWxrX05TUSggJnBzRW5jLT5zQ21uLCAmc05TUV9MQlJSLCBwc0luZGljZXNfTEJSUiwgeDE2
LAogICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLnB1bHNlc19MQlJSWyBwc0VuYy0+c0Ntbi5u
RnJhbWVzRW5jb2RlZCBdLCBwc0VuY0N0cmwtPlByZWRDb2VmX1ExMlsgMCBdLCBwc0VuY0N0cmwt
PkxUUENvZWZfUTE0LAotICAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+QVIyX1ExMywgcHNFbmND
dHJsLT5IYXJtU2hhcGVHYWluX1ExNCwgcHNFbmNDdHJsLT5UaWx0X1ExNCwgcHNFbmNDdHJsLT5M
Rl9zaHBfUTE0LAorICAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+QVJfUTEzLCBwc0VuY0N0cmwt
Pkhhcm1TaGFwZUdhaW5fUTE0LCBwc0VuY0N0cmwtPlRpbHRfUTE0LCBwc0VuY0N0cmwtPkxGX3No
cF9RMTQsCiAgICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5HYWluc19RMTYsIHBzRW5jQ3RybC0+
cGl0Y2hMLCBwc0VuY0N0cmwtPkxhbWJkYV9RMTAsIHBzRW5jQ3RybC0+TFRQX3NjYWxlX1ExNCwg
cHNFbmMtPnNDbW4uYXJjaCApOwogICAgICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9m
aW5kX0xQQ19GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX0xQQ19GSVguYwppbmRleCBlMTFjZGM4NmU2
N2QwZjgzNmM3NWU0MDMzYjllZTJiMjkxNTM5NGE4Li5lNTViNjNhYzMyOWEyMTRkYzVhYzlmZjQw
ODkzOTQzZTMzYWQwODNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9MUENfRklYLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2ZpeGVkL2ZpbmRfTFBDX0ZJWC5jCkBAIC05Miw3ICs5Miw3IEBAIHZvaWQgc2lsa19m
aW5kX0xQQ19GSVgoCiAgICAgICAgICAgICBzaWxrX2ludGVycG9sYXRlKCBOTFNGMF9RMTUsIHBz
RW5jQy0+cHJldl9OTFNGcV9RMTUsIE5MU0ZfUTE1LCBrLCBwc0VuY0MtPnByZWRpY3RMUENPcmRl
ciApOwogCiAgICAgICAgICAgICAvKiBDb252ZXJ0IHRvIExQQyBmb3IgcmVzaWR1YWwgZW5lcmd5
IGV2YWx1YXRpb24gKi8KLSAgICAgICAgICAgIHNpbGtfTkxTRjJBKCBhX3RtcF9RMTIsIE5MU0Yw
X1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIgKTsKKyAgICAgICAgICAgIHNpbGtfTkxTRjJB
KCBhX3RtcF9RMTIsIE5MU0YwX1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIsIHBzRW5jQy0+
YXJjaCApOwogCiAgICAgICAgICAgICAvKiBDYWxjdWxhdGUgcmVzaWR1YWwgZW5lcmd5IHdpdGgg
TkxTRiBpbnRlcnBvbGF0aW9uICovCiAgICAgICAgICAgICBzaWxrX0xQQ19hbmFseXNpc19maWx0
ZXIoIExQQ19yZXMsIHgsIGFfdG1wX1ExMiwgMiAqIHN1YmZyX2xlbmd0aCwgcHNFbmNDLT5wcmVk
aWN0TFBDT3JkZXIsIHBzRW5jQy0+YXJjaCApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRf
TFRQX0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfTFRQX0ZJWC5jCmluZGV4IDEzMTRhMjgxMzc1YmQ2
OWM3MjcwY2EyNWZkZDkxZTg4ZTM4YzBjNzYuLjYyZDRhZmIyNTA3NDA3MjY3MTEyZWM0Mzk0NmFj
ZWVlZWRiMjVjMjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX0xUUF9GSVguYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZml4ZWQvZmluZF9MVFBfRklYLmMKQEAgLTMyLDIxNCArMzIsNjggQEAgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiAjaW5jbHVkZSAibWFpbl9GSVguaCIKICNpbmNsdWRlICJ0dW5pbmdf
cGFyYW1ldGVycy5oIgogCi0vKiBIZWFkIHJvb20gZm9yIGNvcnJlbGF0aW9ucyAqLwotI2RlZmlu
ZSBMVFBfQ09SUlNfSEVBRF9ST09NICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyCi0KLXZv
aWQgc2lsa19maXRfTFRQKAotICAgIG9wdXNfaW50MzIgTFRQX2NvZWZzX1ExNlsgTFRQX09SREVS
IF0sCi0gICAgb3B1c19pbnQxNiBMVFBfY29lZnNfUTE0WyBMVFBfT1JERVIgXQotKTsKLQogdm9p
ZCBzaWxrX2ZpbmRfTFRQX0ZJWCgKLSAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgICAg
IGJfUTE0WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgICAvKiBPICAgIExUUCBjb2Vm
cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgV0xUUFsg
TUFYX05CX1NVQkZSICogTFRQX09SREVSICogTFRQX09SREVSIF0sIC8qIE8gICAgV2VpZ2h0IGZv
ciBMVFAgcXVhbnRpemF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICAqTFRQcmVkQ29kR2Fp
bl9RNywgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBMVFAgY29kaW5nIGdhaW4gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
LSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgIHJfbHBjW10sICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIHJlc2lkdWFsIHNpZ25hbCBhZnRlciBMUEMgc2ln
bmFsICsgc3RhdGUgZm9yIGZpcnN0IDEwIG1zICAgICAgICAgICAgICAgICAgICAqLworICAgIG9w
dXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgWFhMVFBfUTE3WyBNQVhfTkJfU1VCRlIgKiBM
VFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyogTyAgICBDb3JyZWxhdGlvbiBtYXRyaXggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQz
MiAgICAgICAgICAgICAgICAgICAgICB4WExUUF9RMTdbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRF
UiBdLCAgLyogTyAgICBDb3JyZWxhdGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2
ICAgICAgICAgICAgICAgIHJfcHRyW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIFJlc2lkdWFsIHNpZ25hbCBhZnRlciBMUEMgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgbGFnWyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
TFRQIGxhZ3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICAg
ICBXZ2h0X1ExNVsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgLyogSSAgICB3ZWlnaHRz
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIHN1YmZy
X2xlbmd0aCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIHN1YmZyYW1lIGxlbmd0
aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbmJfc3ViZnIsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBtZW1fb2Zmc2V0LCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2Ygc2FtcGxlcyBpbiBMVFAgbWVt
b3J5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBv
cHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgIGNvcnJfcnNoaWZ0c1sgTUFYX05CX1NVQkZS
IF0sICAgICAgICAgICAvKiBPICAgIHJpZ2h0IHNoaWZ0cyBhcHBsaWVkIHRvIGNvcnJlbGF0aW9u
cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgc3ViZnJfbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgU3ViZnJhbWUgbGVuZ3RoICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQg
ICAgICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBOdW1iZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBpbnQgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGFyY2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwogKQogewotICAgIG9wdXNfaW50ICAgaSwgaywgbHNoaWZ0
OwotICAgIGNvbnN0IG9wdXNfaW50MTYgKnJfcHRyLCAqbGFnX3B0cjsKLSAgICBvcHVzX2ludDE2
ICpiX1ExNF9wdHI7Ci0KLSAgICBvcHVzX2ludDMyIHJlZ3U7Ci0gICAgb3B1c19pbnQzMiAqV0xU
UF9wdHI7Ci0gICAgb3B1c19pbnQzMiBiX1ExNlsgTFRQX09SREVSIF0sIGRlbHRhX2JfUTE0WyBM
VFBfT1JERVIgXSwgZF9RMTRbIE1BWF9OQl9TVUJGUiBdLCBucmdbIE1BWF9OQl9TVUJGUiBdLCBn
X1EyNjsKLSAgICBvcHVzX2ludDMyIHdbIE1BWF9OQl9TVUJGUiBdLCBXTFRQX21heCwgbWF4X2Fi
c19kX1ExNCwgbWF4X3dfYml0czsKLQotICAgIG9wdXNfaW50MzIgdGVtcDMyLCBkZW5vbTMyOwot
ICAgIG9wdXNfaW50ICAgZXh0cmFfc2hpZnRzOwotICAgIG9wdXNfaW50ICAgcnJfc2hpZnRzLCBt
YXhSc2hpZnRzLCBtYXhSc2hpZnRzX3d4dHJhLCBMWnM7Ci0gICAgb3B1c19pbnQzMiBMUENfcmVz
X25yZywgTFBDX0xUUF9yZXNfbnJnLCBkaXZfUTE2OwotICAgIG9wdXNfaW50MzIgUnJbIExUUF9P
UkRFUiBdLCByclsgTUFYX05CX1NVQkZSIF07Ci0gICAgb3B1c19pbnQzMiB3ZCwgbV9RMTI7Ci0K
LSAgICBiX1ExNF9wdHIgPSBiX1ExNDsKLSAgICBXTFRQX3B0ciAgPSBXTFRQOwotICAgIHJfcHRy
ICAgICA9ICZyX2xwY1sgbWVtX29mZnNldCBdOworICAgIG9wdXNfaW50ICAgaSwgaywgZXh0cmFf
c2hpZnRzOworICAgIG9wdXNfaW50ICAgeHhfc2hpZnRzLCB4WF9zaGlmdHMsIFhYX3NoaWZ0czsK
KyAgICBjb25zdCBvcHVzX2ludDE2ICpsYWdfcHRyOworICAgIG9wdXNfaW50MzIgKlhYTFRQX1Ex
N19wdHIsICp4WExUUF9RMTdfcHRyOworICAgIG9wdXNfaW50MzIgeHgsIG5yZywgdGVtcDsKKwor
ICAgIHhYTFRQX1ExN19wdHIgPSB4WExUUF9RMTc7CisgICAgWFhMVFBfUTE3X3B0ciA9IFhYTFRQ
X1ExNzsKICAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKICAgICAgICAgbGFn
X3B0ciA9IHJfcHRyIC0gKCBsYWdbIGsgXSArIExUUF9PUkRFUiAvIDIgKTsKIAotICAgICAgICBz
aWxrX3N1bV9zcXJfc2hpZnQoICZyclsgayBdLCAmcnJfc2hpZnRzLCByX3B0ciwgc3ViZnJfbGVu
Z3RoICk7IC8qIHJyWyBrIF0gaW4gUSggLXJyX3NoaWZ0cyApICovCi0KLSAgICAgICAgLyogQXNz
dXJlIGhlYWRyb29tICovCi0gICAgICAgIExacyA9IHNpbGtfQ0xaMzIoIHJyW2tdICk7Ci0gICAg
ICAgIGlmKCBMWnMgPCBMVFBfQ09SUlNfSEVBRF9ST09NICkgewotICAgICAgICAgICAgcnJbIGsg
XSA9IHNpbGtfUlNISUZUX1JPVU5EKCByclsgayBdLCBMVFBfQ09SUlNfSEVBRF9ST09NIC0gTFpz
ICk7Ci0gICAgICAgICAgICBycl9zaGlmdHMgKz0gKCBMVFBfQ09SUlNfSEVBRF9ST09NIC0gTFpz
ICk7Ci0gICAgICAgIH0KLSAgICAgICAgY29ycl9yc2hpZnRzWyBrIF0gPSBycl9zaGlmdHM7Ci0g
ICAgICAgIHNpbGtfY29yck1hdHJpeF9GSVgoIGxhZ19wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09S
REVSLCBMVFBfQ09SUlNfSEVBRF9ST09NLCBXTFRQX3B0ciwgJmNvcnJfcnNoaWZ0c1sgayBdLCBh
cmNoICk7ICAvKiBXTFRQX2ZpeF9wdHIgaW4gUSggLWNvcnJfcnNoaWZ0c1sgayBdICkgKi8KLQot
ICAgICAgICAvKiBUaGUgY29ycmVsYXRpb24gdmVjdG9yIGFsd2F5cyBoYXMgbG93ZXIgbWF4IGFi
cyB2YWx1ZSB0aGFuIHJyIGFuZC9vciBSUiBzbyBoZWFkIHJvb20gaXMgYXNzdXJlZCAqLwotICAg
ICAgICBzaWxrX2NvcnJWZWN0b3JfRklYKCBsYWdfcHRyLCByX3B0ciwgc3ViZnJfbGVuZ3RoLCBM
VFBfT1JERVIsIFJyLCBjb3JyX3JzaGlmdHNbIGsgXSwgYXJjaCApOyAgLyogUnJfZml4X3B0ciAg
IGluIFEoIC1jb3JyX3JzaGlmdHNbIGsgXSApICovCi0gICAgICAgIGlmKCBjb3JyX3JzaGlmdHNb
IGsgXSA+IHJyX3NoaWZ0cyApIHsKLSAgICAgICAgICAgIHJyWyBrIF0gPSBzaWxrX1JTSElGVCgg
cnJbIGsgXSwgY29ycl9yc2hpZnRzWyBrIF0gLSBycl9zaGlmdHMgKTsgLyogcnJbIGsgXSBpbiBR
KCAtY29ycl9yc2hpZnRzWyBrIF0gKSAqLworICAgICAgICBzaWxrX3N1bV9zcXJfc2hpZnQoICZ4
eCwgJnh4X3NoaWZ0cywgcl9wdHIsIHN1YmZyX2xlbmd0aCArIExUUF9PUkRFUiApOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiB4eCBpbiBRKCAteHhfc2hpZnRzICkgKi8KKyAgICAgICAg
c2lsa19jb3JyTWF0cml4X0ZJWCggbGFnX3B0ciwgc3ViZnJfbGVuZ3RoLCBMVFBfT1JERVIsIFhY
TFRQX1ExN19wdHIsICZucmcsICZYWF9zaGlmdHMsIGFyY2ggKTsgICAgLyogWFhMVFBfUTE3X3B0
ciBhbmQgbnJnIGluIFEoIC1YWF9zaGlmdHMgKSAqLworICAgICAgICBleHRyYV9zaGlmdHMgPSB4
eF9zaGlmdHMgLSBYWF9zaGlmdHM7CisgICAgICAgIGlmKCBleHRyYV9zaGlmdHMgPiAwICkgewor
ICAgICAgICAgICAgLyogU2hpZnQgWFggKi8KKyAgICAgICAgICAgIHhYX3NoaWZ0cyA9IHh4X3No
aWZ0czsKKyAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBMVFBfT1JERVIgKiBMVFBfT1JERVI7
IGkrKyApIHsKKyAgICAgICAgICAgICAgICBYWExUUF9RMTdfcHRyWyBpIF0gPSBzaWxrX1JTSElG
VDMyKCBYWExUUF9RMTdfcHRyWyBpIF0sIGV4dHJhX3NoaWZ0cyApOyAgICAgICAgICAgICAgLyog
USggLXhYX3NoaWZ0cyApICovCisgICAgICAgICAgICB9CisgICAgICAgICAgICBucmcgPSBzaWxr
X1JTSElGVDMyKCBucmcsIGV4dHJhX3NoaWZ0cyApOyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIFEoIC14WF9zaGlmdHMgKSAqLworICAgICAgICB9IGVs
c2UgaWYoIGV4dHJhX3NoaWZ0cyA8IDAgKSB7CisgICAgICAgICAgICAvKiBTaGlmdCB4eCAqLwor
ICAgICAgICAgICAgeFhfc2hpZnRzID0gWFhfc2hpZnRzOworICAgICAgICAgICAgeHggPSBzaWxr
X1JTSElGVDMyKCB4eCwgLWV4dHJhX3NoaWZ0cyApOyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBRKCAteFhfc2hpZnRzICkgKi8KKyAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgIHhYX3NoaWZ0cyA9IHh4X3NoaWZ0czsKICAgICAgICAgfQotICAg
ICAgICBzaWxrX2Fzc2VydCggcnJbIGsgXSA+PSAwICk7Ci0KLSAgICAgICAgcmVndSA9IDE7Ci0g
ICAgICAgIHJlZ3UgPSBzaWxrX1NNTEFXQiggcmVndSwgcnJbIGsgXSwgU0lMS19GSVhfQ09OU1Qo
IExUUF9EQU1QSU5HLzMsIDE2ICkgKTsKLSAgICAgICAgcmVndSA9IHNpbGtfU01MQVdCKCByZWd1
LCBtYXRyaXhfcHRyKCBXTFRQX3B0ciwgMCwgMCwgTFRQX09SREVSICksIFNJTEtfRklYX0NPTlNU
KCBMVFBfREFNUElORy8zLCAxNiApICk7Ci0gICAgICAgIHJlZ3UgPSBzaWxrX1NNTEFXQiggcmVn
dSwgbWF0cml4X3B0ciggV0xUUF9wdHIsIExUUF9PUkRFUi0xLCBMVFBfT1JERVItMSwgTFRQX09S
REVSICksIFNJTEtfRklYX0NPTlNUKCBMVFBfREFNUElORy8zLCAxNiApICk7Ci0gICAgICAgIHNp
bGtfcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRklYKCBXTFRQX3B0ciwgJnJyW2tdLCByZWd1LCBM
VFBfT1JERVIgKTsKLQotICAgICAgICBzaWxrX3NvbHZlX0xETF9GSVgoIFdMVFBfcHRyLCBMVFBf
T1JERVIsIFJyLCBiX1ExNiApOyAvKiBXTFRQX2ZpeF9wdHIgYW5kIFJyX2ZpeF9wdHIgYm90aCBp
biBRKC1jb3JyX3JzaGlmdHNba10pICovCi0KLSAgICAgICAgLyogTGltaXQgYW5kIHN0b3JlIGlu
IFExNCAqLwotICAgICAgICBzaWxrX2ZpdF9MVFAoIGJfUTE2LCBiX1ExNF9wdHIgKTsKLQotICAg
ICAgICAvKiBDYWxjdWxhdGUgcmVzaWR1YWwgZW5lcmd5ICovCi0gICAgICAgIG5yZ1sgayBdID0g
c2lsa19yZXNpZHVhbF9lbmVyZ3kxNl9jb3Zhcl9GSVgoIGJfUTE0X3B0ciwgV0xUUF9wdHIsIFJy
LCByclsgayBdLCBMVFBfT1JERVIsIDE0ICk7IC8qIG5yZ19maXggaW4gUSggLWNvcnJfcnNoaWZ0
c1sgayBdICkgKi8KLQotICAgICAgICAvKiB0ZW1wID0gV2dodFsgayBdIC8gKCBucmdbIGsgXSAq
IFdnaHRbIGsgXSArIDAuMDFmICogc3ViZnJfbGVuZ3RoICk7ICovCi0gICAgICAgIGV4dHJhX3No
aWZ0cyA9IHNpbGtfbWluX2ludCggY29ycl9yc2hpZnRzWyBrIF0sIExUUF9DT1JSU19IRUFEX1JP
T00gKTsKLSAgICAgICAgZGVub20zMiA9IHNpbGtfTFNISUZUX1NBVDMyKCBzaWxrX1NNVUxXQigg
bnJnWyBrIF0sIFdnaHRfUTE1WyBrIF0gKSwgMSArIGV4dHJhX3NoaWZ0cyApICsgLyogUSggLWNv
cnJfcnNoaWZ0c1sgayBdICsgZXh0cmFfc2hpZnRzICkgKi8KLSAgICAgICAgICAgIHNpbGtfUlNI
SUZUKCBzaWxrX1NNVUxXQiggKG9wdXNfaW50MzIpc3ViZnJfbGVuZ3RoLCA2NTUgKSwgY29ycl9y
c2hpZnRzWyBrIF0gLSBleHRyYV9zaGlmdHMgKTsgICAgLyogUSggLWNvcnJfcnNoaWZ0c1sgayBd
ICsgZXh0cmFfc2hpZnRzICkgKi8KLSAgICAgICAgZGVub20zMiA9IHNpbGtfbWF4KCBkZW5vbTMy
LCAxICk7Ci0gICAgICAgIHNpbGtfYXNzZXJ0KCAoKG9wdXNfaW50NjQpV2dodF9RMTVbIGsgXSA8
PCAxNiApIDwgc2lsa19pbnQzMl9NQVggKTsgICAgICAgICAgICAgICAgICAgICAgIC8qIFdnaHQg
YWx3YXlzIDwgMC41IGluIFEwICovCi0gICAgICAgIHRlbXAzMiA9IHNpbGtfRElWMzIoIHNpbGtf
TFNISUZUKCAob3B1c19pbnQzMilXZ2h0X1ExNVsgayBdLCAxNiApLCBkZW5vbTMyICk7ICAgICAg
ICAgICAgIC8qIFEoIDE1ICsgMTYgKyBjb3JyX3JzaGlmdHNba10gLSBleHRyYV9zaGlmdHMgKSAq
LwotICAgICAgICB0ZW1wMzIgPSBzaWxrX1JTSElGVCggdGVtcDMyLCAzMSArIGNvcnJfcnNoaWZ0
c1sgayBdIC0gZXh0cmFfc2hpZnRzIC0gMjYgKTsgICAgICAgICAgICAgICAvKiBRMjYgKi8KKyAg
ICAgICAgc2lsa19jb3JyVmVjdG9yX0ZJWCggbGFnX3B0ciwgcl9wdHIsIHN1YmZyX2xlbmd0aCwg
TFRQX09SREVSLCB4WExUUF9RMTdfcHRyLCB4WF9zaGlmdHMsIGFyY2ggKTsgICAgLyogeFhMVFBf
UTE3X3B0ciBpbiBRKCAteFhfc2hpZnRzICkgKi8KIAotICAgICAgICAvKiBMaW1pdCB0ZW1wIHN1
Y2ggdGhhdCB0aGUgYmVsb3cgc2NhbGluZyBuZXZlciB3cmFwcyBhcm91bmQgKi8KLSAgICAgICAg
V0xUUF9tYXggPSAwOworICAgICAgICAvKiBBdCB0aGlzIHBvaW50IGFsbCBjb3JyZWxhdGlvbnMg
YXJlIGluIFEoLXhYX3NoaWZ0cykgKi8KKyAgICAgICAgdGVtcCA9IHNpbGtfU01MQVdCKCAxLCBu
cmcsIFNJTEtfRklYX0NPTlNUKCBMVFBfQ09SUl9JTlZfTUFYLCAxNiApICk7CisgICAgICAgIHRl
bXAgPSBzaWxrX21heCggdGVtcCwgeHggKTsKK1RJQyhkaXYpCisjaWYgMAogICAgICAgICBmb3Io
IGkgPSAwOyBpIDwgTFRQX09SREVSICogTFRQX09SREVSOyBpKysgKSB7Ci0gICAgICAgICAgICBX
TFRQX21heCA9IHNpbGtfbWF4KCBXTFRQX3B0clsgaSBdLCBXTFRQX21heCApOworICAgICAgICAg
ICAgWFhMVFBfUTE3X3B0clsgaSBdID0gc2lsa19ESVYzMl92YXJRKCBYWExUUF9RMTdfcHRyWyBp
IF0sIHRlbXAsIDE3ICk7CiAgICAgICAgIH0KLSAgICAgICAgbHNoaWZ0ID0gc2lsa19DTFozMigg
V0xUUF9tYXggKSAtIDEgLSAzOyAvKiBrZWVwIDMgYml0cyBmcmVlIGZvciB2cV9uZWFyZXN0X25l
aWdoYm9yX2ZpeCAqLwotICAgICAgICBzaWxrX2Fzc2VydCggMjYgLSAxOCArIGxzaGlmdCA+PSAw
ICk7Ci0gICAgICAgIGlmKCAyNiAtIDE4ICsgbHNoaWZ0IDwgMzEgKSB7Ci0gICAgICAgICAgICB0
ZW1wMzIgPSBzaWxrX21pbl8zMiggdGVtcDMyLCBzaWxrX0xTSElGVCggKG9wdXNfaW50MzIpMSwg
MjYgLSAxOCArIGxzaGlmdCApICk7Ci0gICAgICAgIH0KLQotICAgICAgICBzaWxrX3NjYWxlX3Zl
Y3RvcjMyX1EyNl9sc2hpZnRfMTgoIFdMVFBfcHRyLCB0ZW1wMzIsIExUUF9PUkRFUiAqIExUUF9P
UkRFUiApOyAvKiBXTFRQX3B0ciBpbiBRKCAxOCAtIGNvcnJfcnNoaWZ0c1sgayBdICkgKi8KLQot
ICAgICAgICB3WyBrIF0gPSBtYXRyaXhfcHRyKCBXTFRQX3B0ciwgTFRQX09SREVSLzIsIExUUF9P
UkRFUi8yLCBMVFBfT1JERVIgKTsgLyogdyBpbiBRKCAxOCAtIGNvcnJfcnNoaWZ0c1sgayBdICkg
Ki8KLSAgICAgICAgc2lsa19hc3NlcnQoIHdba10gPj0gMCApOwotCi0gICAgICAgIHJfcHRyICAg
ICArPSBzdWJmcl9sZW5ndGg7Ci0gICAgICAgIGJfUTE0X3B0ciArPSBMVFBfT1JERVI7Ci0gICAg
ICAgIFdMVFBfcHRyICArPSBMVFBfT1JERVIgKiBMVFBfT1JERVI7Ci0gICAgfQotCi0gICAgbWF4
UnNoaWZ0cyA9IDA7Ci0gICAgZm9yKCBrID0gMDsgayA8IG5iX3N1YmZyOyBrKysgKSB7Ci0gICAg
ICAgIG1heFJzaGlmdHMgPSBzaWxrX21heF9pbnQoIGNvcnJfcnNoaWZ0c1sgayBdLCBtYXhSc2hp
ZnRzICk7Ci0gICAgfQotCi0gICAgLyogQ29tcHV0ZSBMVFAgY29kaW5nIGdhaW4gKi8KLSAgICBp
ZiggTFRQcmVkQ29kR2Fpbl9RNyAhPSBOVUxMICkgewotICAgICAgICBMUENfTFRQX3Jlc19ucmcg
PSAwOwotICAgICAgICBMUENfcmVzX25yZyAgICAgPSAwOwotICAgICAgICBzaWxrX2Fzc2VydCgg
TFRQX0NPUlJTX0hFQURfUk9PTSA+PSAyICk7IC8qIENoZWNrIHRoYXQgbm8gb3ZlcmZsb3cgd2ls
bCBoYXBwZW4gd2hlbiBhZGRpbmcgKi8KLSAgICAgICAgZm9yKCBrID0gMDsgayA8IG5iX3N1YmZy
OyBrKysgKSB7Ci0gICAgICAgICAgICBMUENfcmVzX25yZyAgICAgPSBzaWxrX0FERDMyKCBMUENf
cmVzX25yZywgICAgIHNpbGtfUlNISUZUKCBzaWxrX0FERDMyKCBzaWxrX1NNVUxXQiggIHJyWyBr
IF0sIFdnaHRfUTE1WyBrIF0gKSwgMSApLCAxICsgKCBtYXhSc2hpZnRzIC0gY29ycl9yc2hpZnRz
WyBrIF0gKSApICk7IC8qIFEoIC1tYXhSc2hpZnRzICkgKi8KLSAgICAgICAgICAgIExQQ19MVFBf
cmVzX25yZyA9IHNpbGtfQUREMzIoIExQQ19MVFBfcmVzX25yZywgc2lsa19SU0hJRlQoIHNpbGtf
QUREMzIoIHNpbGtfU01VTFdCKCBucmdbIGsgXSwgV2dodF9RMTVbIGsgXSApLCAxICksIDEgKyAo
IG1heFJzaGlmdHMgLSBjb3JyX3JzaGlmdHNbIGsgXSApICkgKTsgLyogUSggLW1heFJzaGlmdHMg
KSAqLwotICAgICAgICB9Ci0gICAgICAgIExQQ19MVFBfcmVzX25yZyA9IHNpbGtfbWF4KCBMUENf
TFRQX3Jlc19ucmcsIDEgKTsgLyogYXZvaWQgZGl2aXNpb24gYnkgemVybyAqLwotCi0gICAgICAg
IGRpdl9RMTYgPSBzaWxrX0RJVjMyX3ZhclEoIExQQ19yZXNfbnJnLCBMUENfTFRQX3Jlc19ucmcs
IDE2ICk7Ci0gICAgICAgICpMVFByZWRDb2RHYWluX1E3ID0gKCBvcHVzX2ludCApc2lsa19TTVVM
QkIoIDMsIHNpbGtfbGluMmxvZyggZGl2X1ExNiApIC0gKCAxNiA8PCA3ICkgKTsKLQotICAgICAg
ICBzaWxrX2Fzc2VydCggKkxUUHJlZENvZEdhaW5fUTcgPT0gKCBvcHVzX2ludCApc2lsa19TQVQx
Niggc2lsa19NVUwoIDMsIHNpbGtfbGluMmxvZyggZGl2X1ExNiApIC0gKCAxNiA8PCA3ICkgKSAp
ICk7Ci0gICAgfQotCi0gICAgLyogc21vb3RoaW5nICovCi0gICAgLyogZCA9IHN1bSggQiwgMSAp
OyAqLwotICAgIGJfUTE0X3B0ciA9IGJfUTE0OwotICAgIGZvciggayA9IDA7IGsgPCBuYl9zdWJm
cjsgaysrICkgewotICAgICAgICBkX1ExNFsgayBdID0gMDsKICAgICAgICAgZm9yKCBpID0gMDsg
aSA8IExUUF9PUkRFUjsgaSsrICkgewotICAgICAgICAgICAgZF9RMTRbIGsgXSArPSBiX1ExNF9w
dHJbIGkgXTsKLSAgICAgICAgfQotICAgICAgICBiX1ExNF9wdHIgKz0gTFRQX09SREVSOwotICAg
IH0KLQotICAgIC8qIG0gPSAoIHcgKiBkJyApIC8gKCBzdW0oIHcgKSArIDFlLTMgKTsgKi8KLQot
ICAgIC8qIEZpbmQgbWF4aW11bSBhYnNvbHV0ZSB2YWx1ZSBvZiBkX1ExNCBhbmQgdGhlIGJpdHMg
dXNlZCBieSB3IGluIFEwICovCi0gICAgbWF4X2Fic19kX1ExNCA9IDA7Ci0gICAgbWF4X3dfYml0
cyAgICA9IDA7Ci0gICAgZm9yKCBrID0gMDsgayA8IG5iX3N1YmZyOyBrKysgKSB7Ci0gICAgICAg
IG1heF9hYnNfZF9RMTQgPSBzaWxrX21heF8zMiggbWF4X2Fic19kX1ExNCwgc2lsa19hYnMoIGRf
UTE0WyBrIF0gKSApOwotICAgICAgICAvKiB3WyBrIF0gaXMgaW4gUSggMTggLSBjb3JyX3JzaGlm
dHNbIGsgXSApICovCi0gICAgICAgIC8qIEZpbmQgYml0cyBuZWVkZWQgaW4gUSggMTggLSBtYXhS
c2hpZnRzICkgKi8KLSAgICAgICAgbWF4X3dfYml0cyA9IHNpbGtfbWF4XzMyKCBtYXhfd19iaXRz
LCAzMiAtIHNpbGtfQ0xaMzIoIHdbIGsgXSApICsgY29ycl9yc2hpZnRzWyBrIF0gLSBtYXhSc2hp
ZnRzICk7Ci0gICAgfQotCi0gICAgLyogbWF4X2Fic19kX1ExNCA9ICg1IDw8IDE1KTsgd29yc3Qg
Y2FzZSwgaS5lLiBMVFBfT1JERVIgKiAtc2lsa19pbnQxNl9NSU4gKi8KLSAgICBzaWxrX2Fzc2Vy
dCggbWF4X2Fic19kX1ExNCA8PSAoIDUgPDwgMTUgKSApOwotCi0gICAgLyogSG93IG1hbnkgYml0
cyBpcyBuZWVkZWQgZm9yIHcqZCcgaW4gUSggMTggLSBtYXhSc2hpZnRzICkgaW4gdGhlIHdvcnN0
IGNhc2UsIG9mIGFsbCBkX1ExNCdzIGJlaW5nIGVxdWFsIHRvIG1heF9hYnNfZF9RMTQgKi8KLSAg
ICBleHRyYV9zaGlmdHMgPSBtYXhfd19iaXRzICsgMzIgLSBzaWxrX0NMWjMyKCBtYXhfYWJzX2Rf
UTE0ICkgLSAxNDsKLQotICAgIC8qIFN1YnRyYWN0IHdoYXQgd2UgZ290IGF2YWlsYWJsZTsgYml0
cyBpbiBvdXRwdXQgdmFyIHBsdXMgbWF4UnNoaWZ0cyAqLwotICAgIGV4dHJhX3NoaWZ0cyAtPSAo
IDMyIC0gMSAtIDIgKyBtYXhSc2hpZnRzICk7IC8qIEtlZXAgc2lnbiBiaXQgZnJlZSBhcyB3ZWxs
IGFzIDIgYml0cyBmb3IgYWNjdW11bGF0aW9uICovCi0gICAgZXh0cmFfc2hpZnRzID0gc2lsa19t
YXhfaW50KCBleHRyYV9zaGlmdHMsIDAgKTsKLQotICAgIG1heFJzaGlmdHNfd3h0cmEgPSBtYXhS
c2hpZnRzICsgZXh0cmFfc2hpZnRzOwotCi0gICAgdGVtcDMyID0gc2lsa19SU0hJRlQoIDI2Miwg
bWF4UnNoaWZ0cyArIGV4dHJhX3NoaWZ0cyApICsgMTsgLyogMWUtM2YgaW4gUSggMTggLSAobWF4
UnNoaWZ0cyArIGV4dHJhX3NoaWZ0cykgKSAqLwotICAgIHdkID0gMDsKLSAgICBmb3IoIGsgPSAw
OyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgLyogdyBoYXMgYXQgbGVhc3QgMiBiaXRz
IG9mIGhlYWRyb29tIHNvIG5vIG92ZXJmbG93IHNob3VsZCBoYXBwZW4gKi8KLSAgICAgICAgdGVt
cDMyID0gc2lsa19BREQzMiggdGVtcDMyLCAgICAgICAgICAgICAgICAgICAgIHNpbGtfUlNISUZU
KCB3WyBrIF0sIG1heFJzaGlmdHNfd3h0cmEgLSBjb3JyX3JzaGlmdHNbIGsgXSApICk7ICAgICAg
ICAgICAgICAgICAgICAgIC8qIFEoIDE4IC0gbWF4UnNoaWZ0c193eHRyYSApICovCi0gICAgICAg
IHdkICAgICA9IHNpbGtfQUREMzIoIHdkLCBzaWxrX0xTSElGVCggc2lsa19TTVVMV1coIHNpbGtf
UlNISUZUKCB3WyBrIF0sIG1heFJzaGlmdHNfd3h0cmEgLSBjb3JyX3JzaGlmdHNbIGsgXSApLCBk
X1ExNFsgayBdICksIDIgKSApOyAvKiBRKCAxOCAtIG1heFJzaGlmdHNfd3h0cmEgKSAqLwotICAg
IH0KLSAgICBtX1ExMiA9IHNpbGtfRElWMzJfdmFyUSggd2QsIHRlbXAzMiwgMTIgKTsKLQotICAg
IGJfUTE0X3B0ciA9IGJfUTE0OwotICAgIGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysrICkg
ewotICAgICAgICAvKiB3X2ZpeFsgayBdIGZyb20gUSggMTggLSBjb3JyX3JzaGlmdHNbIGsgXSAp
IHRvIFEoIDE2ICkgKi8KLSAgICAgICAgaWYoIDIgLSBjb3JyX3JzaGlmdHNba10gPiAwICkgewot
ICAgICAgICAgICAgdGVtcDMyID0gc2lsa19SU0hJRlQoIHdbIGsgXSwgMiAtIGNvcnJfcnNoaWZ0
c1sgayBdICk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICB0ZW1wMzIgPSBzaWxrX0xT
SElGVF9TQVQzMiggd1sgayBdLCBjb3JyX3JzaGlmdHNbIGsgXSAtIDIgKTsKKyAgICAgICAgICAg
IHhYTFRQX1ExN19wdHJbIGkgXSA9IHNpbGtfRElWMzJfdmFyUSggeFhMVFBfUTE3X3B0clsgaSBd
LCB0ZW1wLCAxNyApOwogICAgICAgICB9Ci0KLSAgICAgICAgZ19RMjYgPSBzaWxrX01VTCgKLSAg
ICAgICAgICAgIHNpbGtfRElWMzIoCi0gICAgICAgICAgICAgICAgU0lMS19GSVhfQ09OU1QoIExU
UF9TTU9PVEhJTkcsIDI2ICksCi0gICAgICAgICAgICAgICAgc2lsa19SU0hJRlQoIFNJTEtfRklY
X0NPTlNUKCBMVFBfU01PT1RISU5HLCAyNiApLCAxMCApICsgdGVtcDMyICksICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBRMTAgKi8KLSAgICAgICAgICAgIHNpbGtfTFNISUZUX1NBVDMyKCBz
aWxrX1NVQl9TQVQzMiggKG9wdXNfaW50MzIpbV9RMTIsIHNpbGtfUlNISUZUKCBkX1ExNFsgayBd
LCAyICkgKSwgNCApICk7ICAgIC8qIFExNiAqLwotCi0gICAgICAgIHRlbXAzMiA9IDA7Ci0gICAg
ICAgIGZvciggaSA9IDA7IGkgPCBMVFBfT1JERVI7IGkrKyApIHsKLSAgICAgICAgICAgIGRlbHRh
X2JfUTE0WyBpIF0gPSBzaWxrX21heF8xNiggYl9RMTRfcHRyWyBpIF0sIDE2MzggKTsgICAgIC8q
IDE2MzhfUTE0ID0gMC4xX1EwICovCi0gICAgICAgICAgICB0ZW1wMzIgKz0gZGVsdGFfYl9RMTRb
IGkgXTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBRMTQgKi8KKyNlbHNlCisg
ICAgICAgIGZvciggaSA9IDA7IGkgPCBMVFBfT1JERVIgKiBMVFBfT1JERVI7IGkrKyApIHsKKyAg
ICAgICAgICAgIFhYTFRQX1ExN19wdHJbIGkgXSA9IChvcHVzX2ludDMyKSggc2lsa19MU0hJRlQ2
NCggKG9wdXNfaW50NjQpWFhMVFBfUTE3X3B0clsgaSBdLCAxNyApIC8gdGVtcCApOwogICAgICAg
ICB9Ci0gICAgICAgIHRlbXAzMiA9IHNpbGtfRElWMzIoIGdfUTI2LCB0ZW1wMzIgKTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBRMTQgLT4gUTEyICovCiAgICAgICAgIGZvciggaSA9IDA7
IGkgPCBMVFBfT1JERVI7IGkrKyApIHsKLSAgICAgICAgICAgIGJfUTE0X3B0clsgaSBdID0gc2ls
a19MSU1JVF8zMiggKG9wdXNfaW50MzIpYl9RMTRfcHRyWyBpIF0gKyBzaWxrX1NNVUxXQiggc2ls
a19MU0hJRlRfU0FUMzIoIHRlbXAzMiwgNCApLCBkZWx0YV9iX1ExNFsgaSBdICksIC0xNjAwMCwg
MjgwMDAgKTsKKyAgICAgICAgICAgIHhYTFRQX1ExN19wdHJbIGkgXSA9IChvcHVzX2ludDMyKSgg
c2lsa19MU0hJRlQ2NCggKG9wdXNfaW50NjQpeFhMVFBfUTE3X3B0clsgaSBdLCAxNyApIC8gdGVt
cCApOwogICAgICAgICB9Ci0gICAgICAgIGJfUTE0X3B0ciArPSBMVFBfT1JERVI7Ci0gICAgfQot
fQotCi12b2lkIHNpbGtfZml0X0xUUCgKLSAgICBvcHVzX2ludDMyIExUUF9jb2Vmc19RMTZbIExU
UF9PUkRFUiBdLAotICAgIG9wdXNfaW50MTYgTFRQX2NvZWZzX1ExNFsgTFRQX09SREVSIF0KLSkK
LXsKLSAgICBvcHVzX2ludCBpOwotCi0gICAgZm9yKCBpID0gMDsgaSA8IExUUF9PUkRFUjsgaSsr
ICkgewotICAgICAgICBMVFBfY29lZnNfUTE0WyBpIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2
KCBzaWxrX1JTSElGVF9ST1VORCggTFRQX2NvZWZzX1ExNlsgaSBdLCAyICkgKTsKKyNlbmRpZgor
VE9DKGRpdikKKyAgICAgICAgcl9wdHIgICAgICAgICArPSBzdWJmcl9sZW5ndGg7CisgICAgICAg
IFhYTFRQX1ExN19wdHIgKz0gTFRQX09SREVSICogTFRQX09SREVSOworICAgICAgICB4WExUUF9R
MTdfcHRyICs9IExUUF9PUkRFUjsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmlu
ZF9waXRjaF9sYWdzX0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfcGl0Y2hfbGFnc19GSVguYwppbmRl
eCBiODQ0MGE4MjQ3YTMxY2U0Y2Y3NjhmNmYxNDhkZDRhOWU3NWYzNTMzLi45MzAzZTlkYjFmMzM4
Y2NjMTc3MWU5MGNiNmI1M2MwNWU2MDU0N2RiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9w
aXRjaF9sYWdzX0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX3BpdGNoX2xhZ3NfRklYLmMKQEAg
LTQ0LDcgKzQ0LDcgQEAgdm9pZCBzaWxrX2ZpbmRfcGl0Y2hfbGFnc19GSVgoCiB7CiAgICAgb3B1
c19pbnQgICBidWZfbGVuLCBpLCBzY2FsZTsKICAgICBvcHVzX2ludDMyIHRocmhsZF9RMTMsIHJl
c19ucmc7Ci0gICAgY29uc3Qgb3B1c19pbnQxNiAqeF9idWYsICp4X2J1Zl9wdHI7CisgICAgY29u
c3Qgb3B1c19pbnQxNiAqeF9wdHI7CiAgICAgVkFSREVDTCggb3B1c19pbnQxNiwgV3NpZyApOwog
ICAgIG9wdXNfaW50MTYgKldzaWdfcHRyOwogICAgIG9wdXNfaW50MzIgYXV0b19jb3JyWyBNQVhf
RklORF9QSVRDSF9MUENfT1JERVIgKyAxIF07CkBAIC02MSw4ICs2MSw2IEBAIHZvaWQgc2lsa19m
aW5kX3BpdGNoX2xhZ3NfRklYKAogICAgIC8qIFNhZmV0eSBjaGVjayAqLwogICAgIHNpbGtfYXNz
ZXJ0KCBidWZfbGVuID49IHBzRW5jLT5zQ21uLnBpdGNoX0xQQ193aW5fbGVuZ3RoICk7CiAKLSAg
ICB4X2J1ZiA9IHggLSBwc0VuYy0+c0Ntbi5sdHBfbWVtX2xlbmd0aDsKLQogICAgIC8qKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIEVzdGltYXRlIExQQyBBUiBj
b2VmZmljaWVudHMgICAgICAqLwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwpAQCAtNzIsMTkgKzcwLDE5IEBAIHZvaWQgc2lsa19maW5kX3BpdGNoX2xhZ3NfRklY
KAogICAgIEFMTE9DKCBXc2lnLCBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCwgb3B1
c19pbnQxNiApOwogCiAgICAgLyogRmlyc3QgTEFfTFRQIHNhbXBsZXMgKi8KLSAgICB4X2J1Zl9w
dHIgPSB4X2J1ZiArIGJ1Zl9sZW4gLSBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aDsK
KyAgICB4X3B0ciA9IHggKyBidWZfbGVuIC0gcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5n
dGg7CiAgICAgV3NpZ19wdHIgID0gV3NpZzsKLSAgICBzaWxrX2FwcGx5X3NpbmVfd2luZG93KCBX
c2lnX3B0ciwgeF9idWZfcHRyLCAxLCBwc0VuYy0+c0Ntbi5sYV9waXRjaCApOworICAgIHNpbGtf
YXBwbHlfc2luZV93aW5kb3coIFdzaWdfcHRyLCB4X3B0ciwgMSwgcHNFbmMtPnNDbW4ubGFfcGl0
Y2ggKTsKIAogICAgIC8qIE1pZGRsZSB1biAtIHdpbmRvd2VkIHNhbXBsZXMgKi8KICAgICBXc2ln
X3B0ciAgKz0gcHNFbmMtPnNDbW4ubGFfcGl0Y2g7Ci0gICAgeF9idWZfcHRyICs9IHBzRW5jLT5z
Q21uLmxhX3BpdGNoOwotICAgIHNpbGtfbWVtY3B5KCBXc2lnX3B0ciwgeF9idWZfcHRyLCAoIHBz
RW5jLT5zQ21uLnBpdGNoX0xQQ193aW5fbGVuZ3RoIC0gc2lsa19MU0hJRlQoIHBzRW5jLT5zQ21u
LmxhX3BpdGNoLCAxICkgKSAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CisgICAgeF9wdHIgKz0g
cHNFbmMtPnNDbW4ubGFfcGl0Y2g7CisgICAgc2lsa19tZW1jcHkoIFdzaWdfcHRyLCB4X3B0ciwg
KCBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCAtIHNpbGtfTFNISUZUKCBwc0VuYy0+
c0Ntbi5sYV9waXRjaCwgMSApICkgKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOwogCiAgICAgLyog
TGFzdCBMQV9MVFAgc2FtcGxlcyAqLwogICAgIFdzaWdfcHRyICArPSBwc0VuYy0+c0Ntbi5waXRj
aF9MUENfd2luX2xlbmd0aCAtIHNpbGtfTFNISUZUKCBwc0VuYy0+c0Ntbi5sYV9waXRjaCwgMSAp
OwotICAgIHhfYnVmX3B0ciArPSBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCAtIHNp
bGtfTFNISUZUKCBwc0VuYy0+c0Ntbi5sYV9waXRjaCwgMSApOwotICAgIHNpbGtfYXBwbHlfc2lu
ZV93aW5kb3coIFdzaWdfcHRyLCB4X2J1Zl9wdHIsIDIsIHBzRW5jLT5zQ21uLmxhX3BpdGNoICk7
CisgICAgeF9wdHIgKz0gcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGggLSBzaWxrX0xT
SElGVCggcHNFbmMtPnNDbW4ubGFfcGl0Y2gsIDEgKTsKKyAgICBzaWxrX2FwcGx5X3NpbmVfd2lu
ZG93KCBXc2lnX3B0ciwgeF9wdHIsIDIsIHBzRW5jLT5zQ21uLmxhX3BpdGNoICk7CiAKICAgICAv
KiBDYWxjdWxhdGUgYXV0b2NvcnJlbGF0aW9uIHNlcXVlbmNlICovCiAgICAgc2lsa19hdXRvY29y
ciggYXV0b19jb3JyLCAmc2NhbGUsIFdzaWcsIHBzRW5jLT5zQ21uLnBpdGNoX0xQQ193aW5fbGVu
Z3RoLCBwc0VuYy0+c0Ntbi5waXRjaEVzdGltYXRpb25MUENPcmRlciArIDEsIGFyY2ggKTsKQEAg
LTExMiw3ICsxMTAsNyBAQCB2b2lkIHNpbGtfZmluZF9waXRjaF9sYWdzX0ZJWCgKICAgICAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgLyogTFBDIGFuYWx5
c2lzIGZpbHRlcmluZyAgICAgICAgICAgICAgICAqLwogICAgIC8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KLSAgICBzaWxrX0xQQ19hbmFseXNpc19maWx0ZXIoIHJl
cywgeF9idWYsIEFfUTEyLCBidWZfbGVuLCBwc0VuYy0+c0Ntbi5waXRjaEVzdGltYXRpb25MUENP
cmRlciwgcHNFbmMtPnNDbW4uYXJjaCApOworICAgIHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlcigg
cmVzLCB4LCBBX1ExMiwgYnVmX2xlbiwgcHNFbmMtPnNDbW4ucGl0Y2hFc3RpbWF0aW9uTFBDT3Jk
ZXIsIHBzRW5jLT5zQ21uLmFyY2ggKTsKIAogICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNp
Z25hbFR5cGUgIT0gVFlQRV9OT19WT0lDRV9BQ1RJVklUWSAmJiBwc0VuYy0+c0Ntbi5maXJzdF9m
cmFtZV9hZnRlcl9yZXNldCA9PSAwICkgewogICAgICAgICAvKiBUaHJlc2hvbGQgZm9yIHBpdGNo
IGVzdGltYXRvciAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfcHJlZF9jb2Vmc19GSVgu
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9maXhlZC9maW5kX3ByZWRfY29lZnNfRklYLmMKaW5kZXggZDMwOGU5Y2Y1ZmU2MDll
MTdiMDZiNGQxMzM5MTkzMTM0Y2NjZjNmOC4uMjRjNmFhYjNhNzdjOTVlMWM5MDQ2NmUzY2ZiMTMx
ZTUyYjgxZTEwNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfcHJlZF9jb2Vmc19GSVguYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZml4ZWQvZmluZF9wcmVkX2NvZWZzX0ZJWC5jCkBAIC00MSwxMyArNDEsMTIgQEAg
dm9pZCBzaWxrX2ZpbmRfcHJlZF9jb2Vmc19GSVgoCiApCiB7CiAgICAgb3B1c19pbnQgICAgICAg
ICBpOwotICAgIG9wdXNfaW50MzIgICAgICAgaW52R2FpbnNfUTE2WyBNQVhfTkJfU1VCRlIgXSwg
bG9jYWxfZ2FpbnNbIE1BWF9OQl9TVUJGUiBdLCBXZ2h0X1ExNVsgTUFYX05CX1NVQkZSIF07Cisg
ICAgb3B1c19pbnQzMiAgICAgICBpbnZHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdLCBsb2NhbF9n
YWluc1sgTUFYX05CX1NVQkZSIF07CiAgICAgb3B1c19pbnQxNiAgICAgICBOTFNGX1ExNVsgTUFY
X0xQQ19PUkRFUiBdOwogICAgIGNvbnN0IG9wdXNfaW50MTYgKnhfcHRyOwogICAgIG9wdXNfaW50
MTYgICAgICAgKnhfcHJlX3B0cjsKICAgICBWQVJERUNMKCBvcHVzX2ludDE2LCBMUENfaW5fcHJl
ICk7Ci0gICAgb3B1c19pbnQzMiAgICAgICB0bXAsIG1pbl9nYWluX1ExNiwgbWluSW52R2Fpbl9R
MzA7Ci0gICAgb3B1c19pbnQgICAgICAgICBMVFBfY29ycnNfcnNoaWZ0WyBNQVhfTkJfU1VCRlIg
XTsKKyAgICBvcHVzX2ludDMyICAgICAgIG1pbl9nYWluX1ExNiwgbWluSW52R2Fpbl9RMzA7CiAg
ICAgU0FWRV9TVEFDSzsKIAogICAgIC8qIHdlaWdodGluZyBmb3Igd2VpZ2h0ZWQgbGVhc3Qgc3F1
YXJlcyAqLwpAQCAtNjEsMTMgKzYwLDExIEBAIHZvaWQgc2lsa19maW5kX3ByZWRfY29lZnNfRklY
KAogICAgICAgICAvKiBJbnZlcnQgYW5kIG5vcm1hbGl6ZSBnYWlucywgYW5kIGVuc3VyZSB0aGF0
IG1heGltdW0gaW52R2FpbnNfUTE2IGlzIHdpdGhpbiByYW5nZSBvZiBhIDE2IGJpdCBpbnQgKi8K
ICAgICAgICAgaW52R2FpbnNfUTE2WyBpIF0gPSBzaWxrX0RJVjMyX3ZhclEoIG1pbl9nYWluX1Ex
NiwgcHNFbmNDdHJsLT5HYWluc19RMTZbIGkgXSwgMTYgLSAyICk7CiAKLSAgICAgICAgLyogRW5z
dXJlIFdnaHRfUTE1IGEgbWluaW11bSB2YWx1ZSAxICovCi0gICAgICAgIGludkdhaW5zX1ExNlsg
aSBdID0gc2lsa19tYXgoIGludkdhaW5zX1ExNlsgaSBdLCAzNjMgKTsKKyAgICAgICAgLyogTGlt
aXQgaW52ZXJzZSAqLworICAgICAgICBpbnZHYWluc19RMTZbIGkgXSA9IHNpbGtfbWF4KCBpbnZH
YWluc19RMTZbIGkgXSwgMTAwICk7CiAKICAgICAgICAgLyogU3F1YXJlIHRoZSBpbnZlcnRlZCBn
YWlucyAqLwogICAgICAgICBzaWxrX2Fzc2VydCggaW52R2FpbnNfUTE2WyBpIF0gPT0gc2lsa19T
QVQxNiggaW52R2FpbnNfUTE2WyBpIF0gKSApOwotICAgICAgICB0bXAgPSBzaWxrX1NNVUxXQigg
aW52R2FpbnNfUTE2WyBpIF0sIGludkdhaW5zX1ExNlsgaSBdICk7Ci0gICAgICAgIFdnaHRfUTE1
WyBpIF0gPSBzaWxrX1JTSElGVCggdG1wLCAxICk7CiAKICAgICAgICAgLyogSW52ZXJ0IHRoZSBp
bnZlcnRlZCBhbmQgbm9ybWFsaXplZCBnYWlucyAqLwogICAgICAgICBsb2NhbF9nYWluc1sgaSBd
ID0gc2lsa19ESVYzMiggKCAob3B1c19pbnQzMikxIDw8IDE2ICksIGludkdhaW5zX1ExNlsgaSBd
ICk7CkBAIC03NywyNCArNzQsMjQgQEAgdm9pZCBzaWxrX2ZpbmRfcHJlZF9jb2Vmc19GSVgoCiAg
ICAgICAgICAgIHBzRW5jLT5zQ21uLm5iX3N1YmZyICogcHNFbmMtPnNDbW4ucHJlZGljdExQQ09y
ZGVyCiAgICAgICAgICAgICAgICArIHBzRW5jLT5zQ21uLmZyYW1lX2xlbmd0aCwgb3B1c19pbnQx
NiApOwogICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lD
RUQgKSB7Ci0gICAgICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIFdMVFAgKTsKKyAgICAgICAgVkFS
REVDTCggb3B1c19pbnQzMiwgeFhMVFBfUTE3ICk7CisgICAgICAgIFZBUkRFQ0woIG9wdXNfaW50
MzIsIFhYTFRQX1ExNyApOwogCiAgICAgICAgIC8qKioqKioqKioqLwogICAgICAgICAvKiBWT0lD
RUQgKi8KICAgICAgICAgLyoqKioqKioqKiovCiAgICAgICAgIHNpbGtfYXNzZXJ0KCBwc0VuYy0+
c0Ntbi5sdHBfbWVtX2xlbmd0aCAtIHBzRW5jLT5zQ21uLnByZWRpY3RMUENPcmRlciA+PSBwc0Vu
Y0N0cmwtPnBpdGNoTFsgMCBdICsgTFRQX09SREVSIC8gMiApOwogCi0gICAgICAgIEFMTE9DKCBX
TFRQLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiwgb3B1c19p
bnQzMiApOworICAgICAgICBBTExPQyggeFhMVFBfUTE3LCBwc0VuYy0+c0Ntbi5uYl9zdWJmciAq
IExUUF9PUkRFUiwgb3B1c19pbnQzMiApOworICAgICAgICBBTExPQyggWFhMVFBfUTE3LCBwc0Vu
Yy0+c0Ntbi5uYl9zdWJmciAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiwgb3B1c19pbnQzMiApOwog
CiAgICAgICAgIC8qIExUUCBhbmFseXNpcyAqLwotICAgICAgICBzaWxrX2ZpbmRfTFRQX0ZJWCgg
cHNFbmNDdHJsLT5MVFBDb2VmX1ExNCwgV0xUUCwgJnBzRW5jQ3RybC0+TFRQcmVkQ29kR2Fpbl9R
NywKLSAgICAgICAgICAgIHJlc19waXRjaCwgcHNFbmNDdHJsLT5waXRjaEwsIFdnaHRfUTE1LCBw
c0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGgsCi0gICAgICAgICAgICBwc0VuYy0+c0Ntbi5uYl9zdWJm
ciwgcHNFbmMtPnNDbW4ubHRwX21lbV9sZW5ndGgsIExUUF9jb3Jyc19yc2hpZnQsIHBzRW5jLT5z
Q21uLmFyY2ggKTsKKyAgICAgICAgc2lsa19maW5kX0xUUF9GSVgoIFhYTFRQX1ExNywgeFhMVFBf
UTE3LCByZXNfcGl0Y2gsCisgICAgICAgICAgICBwc0VuY0N0cmwtPnBpdGNoTCwgcHNFbmMtPnND
bW4uc3ViZnJfbGVuZ3RoLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciwgcHNFbmMtPnNDbW4uYXJjaCAp
OwogCiAgICAgICAgIC8qIFF1YW50aXplIExUUCBnYWluIHBhcmFtZXRlcnMgKi8KICAgICAgICAg
c2lsa19xdWFudF9MVFBfZ2FpbnMoIHBzRW5jQ3RybC0+TFRQQ29lZl9RMTQsIHBzRW5jLT5zQ21u
LmluZGljZXMuTFRQSW5kZXgsICZwc0VuYy0+c0Ntbi5pbmRpY2VzLlBFUkluZGV4LAotICAgICAg
ICAgICAgJnBzRW5jLT5zQ21uLnN1bV9sb2dfZ2Fpbl9RNywgV0xUUCwgcHNFbmMtPnNDbW4ubXVf
TFRQX1E5LCBwc0VuYy0+c0Ntbi5MVFBRdWFudExvd0NvbXBsZXhpdHksIHBzRW5jLT5zQ21uLm5i
X3N1YmZyLAotICAgICAgICAgICAgcHNFbmMtPnNDbW4uYXJjaCk7CisgICAgICAgICAgICAmcHNF
bmMtPnNDbW4uc3VtX2xvZ19nYWluX1E3LCAmcHNFbmNDdHJsLT5MVFByZWRDb2RHYWluX1E3LCBY
WExUUF9RMTcsIHhYTFRQX1ExNywgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoLCBwc0VuYy0+c0Nt
bi5uYl9zdWJmciwgcHNFbmMtPnNDbW4uYXJjaCApOwogCiAgICAgICAgIC8qIENvbnRyb2wgTFRQ
IHNjYWxpbmcgKi8KICAgICAgICAgc2lsa19MVFBfc2NhbGVfY3RybF9GSVgoIHBzRW5jLCBwc0Vu
Y0N0cmwsIGNvbmRDb2RpbmcgKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9rMmFfRklYLmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZml4ZWQvazJhX0ZJWC5jCmluZGV4IDVmZWU1OTliY2I3NDMwNWExZDQ1YzQxZTg3OTVhMGVl
M2Y5Y2I1ZDkuLjU0OWY2ZWFkYWEyOWRlODViZmQ0YzI2N2M3OTI1OWM2YzExNGE5ZDkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9maXhlZC9rMmFfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2syYV9GSVguYwpAQCAt
MzksMTQgKzM5LDE1IEBAIHZvaWQgc2lsa19rMmEoCiApCiB7CiAgICAgb3B1c19pbnQgICBrLCBu
OwotICAgIG9wdXNfaW50MzIgQXRtcFsgU0lMS19NQVhfT1JERVJfTFBDIF07CisgICAgb3B1c19p
bnQzMiByYywgdG1wMSwgdG1wMjsKIAogICAgIGZvciggayA9IDA7IGsgPCBvcmRlcjsgaysrICkg
ewotICAgICAgICBmb3IoIG4gPSAwOyBuIDwgazsgbisrICkgewotICAgICAgICAgICAgQXRtcFsg
biBdID0gQV9RMjRbIG4gXTsKLSAgICAgICAgfQotICAgICAgICBmb3IoIG4gPSAwOyBuIDwgazsg
bisrICkgewotICAgICAgICAgICAgQV9RMjRbIG4gXSA9IHNpbGtfU01MQVdCKCBBX1EyNFsgbiBd
LCBzaWxrX0xTSElGVCggQXRtcFsgayAtIG4gLSAxIF0sIDEgKSwgcmNfUTE1WyBrIF0gKTsKKyAg
ICAgICAgcmMgPSByY19RMTVbIGsgXTsKKyAgICAgICAgZm9yKCBuID0gMDsgbiA8IChrICsgMSkg
Pj4gMTsgbisrICkgeworICAgICAgICAgICAgdG1wMSA9IEFfUTI0WyBuIF07CisgICAgICAgICAg
ICB0bXAyID0gQV9RMjRbIGsgLSBuIC0gMSBdOworICAgICAgICAgICAgQV9RMjRbIG4gXSAgICAg
ICAgID0gc2lsa19TTUxBV0IoIHRtcDEsIHNpbGtfTFNISUZUKCB0bXAyLCAxICksIHJjICk7Cisg
ICAgICAgICAgICBBX1EyNFsgayAtIG4gLSAxIF0gPSBzaWxrX1NNTEFXQiggdG1wMiwgc2lsa19M
U0hJRlQoIHRtcDEsIDEgKSwgcmMgKTsKICAgICAgICAgfQogICAgICAgICBBX1EyNFsgayBdID0g
LXNpbGtfTFNISUZUKCAob3B1c19pbnQzMilyY19RMTVbIGsgXSwgOSApOwogICAgIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9maXhlZC9rMmFfUTE2X0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2syYV9RMTZfRklYLmMK
aW5kZXggM2IwMzk4NzU0NDZhMTM4ODZhOWIyMmVhMWUyYjBmNTRjMjA2MmEwNS4uMTU5NWFhNjIx
MjY2MjU3NTA3MDViNWQ0N2I0MmJkYzU4NmYwNTk0MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2sy
YV9RMTZfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2syYV9RMTZfRklYLmMKQEAgLTM5LDE1ICszOSwx
NiBAQCB2b2lkIHNpbGtfazJhX1ExNigKICkKIHsKICAgICBvcHVzX2ludCAgIGssIG47Ci0gICAg
b3B1c19pbnQzMiBBdG1wWyBTSUxLX01BWF9PUkRFUl9MUEMgXTsKKyAgICBvcHVzX2ludDMyIHJj
LCB0bXAxLCB0bXAyOwogCiAgICAgZm9yKCBrID0gMDsgayA8IG9yZGVyOyBrKysgKSB7Ci0gICAg
ICAgIGZvciggbiA9IDA7IG4gPCBrOyBuKysgKSB7Ci0gICAgICAgICAgICBBdG1wWyBuIF0gPSBB
X1EyNFsgbiBdOworICAgICAgICByYyA9IHJjX1ExNlsgayBdOworICAgICAgICBmb3IoIG4gPSAw
OyBuIDwgKGsgKyAxKSA+PiAxOyBuKysgKSB7CisgICAgICAgICAgICB0bXAxID0gQV9RMjRbIG4g
XTsKKyAgICAgICAgICAgIHRtcDIgPSBBX1EyNFsgayAtIG4gLSAxIF07CisgICAgICAgICAgICBB
X1EyNFsgbiBdICAgICAgICAgPSBzaWxrX1NNTEFXVyggdG1wMSwgdG1wMiwgcmMgKTsKKyAgICAg
ICAgICAgIEFfUTI0WyBrIC0gbiAtIDEgXSA9IHNpbGtfU01MQVdXKCB0bXAyLCB0bXAxLCByYyAp
OwogICAgICAgICB9Ci0gICAgICAgIGZvciggbiA9IDA7IG4gPCBrOyBuKysgKSB7Ci0gICAgICAg
ICAgICBBX1EyNFsgbiBdID0gc2lsa19TTUxBV1coIEFfUTI0WyBuIF0sIEF0bXBbIGsgLSBuIC0g
MSBdLCByY19RMTZbIGsgXSApOwotICAgICAgICB9Ci0gICAgICAgIEFfUTI0WyBrIF0gPSAtc2ls
a19MU0hJRlQoIHJjX1ExNlsgayBdLCA4ICk7CisgICAgICAgIEFfUTI0WyBrIF0gPSAtc2lsa19M
U0hJRlQoIHJjLCA4ICk7CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21haW5fRklY
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZml4ZWQvbWFpbl9GSVguaAppbmRleCAzNzViNWViMzJlZTZjNmFlYzYyNDdiZjY4
MGI0ZTkzMzJjODJkMzRiLi42ZDIxMTJlNTExZDBhZWY0NDU4MmQ1MmQ2NTAyZGNiNWM5NGVkMDY4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbWFpbl9GSVguaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbWFpbl9G
SVguaApAQCAtMzYsNiArMzYsMTEgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaW5j
bHVkZSAiZGVidWcuaCIKICNpbmNsdWRlICJlbnRlbmMuaCIKIAorI2lmICgoZGVmaW5lZChPUFVT
X0FSTV9BU00pICYmIGRlZmluZWQoRklYRURfUE9JTlQpKSBcCisgICB8fCBkZWZpbmVkKE9QVVNf
QVJNX01BWV9IQVZFX05FT05fSU5UUikpCisjaW5jbHVkZSAiZml4ZWQvYXJtL3dhcnBlZF9hdXRv
Y29ycmVsYXRpb25fRklYX2FybS5oIgorI2VuZGlmCisKICNpZm5kZWYgRk9SQ0VfQ1BQX0JVSUxE
CiAjaWZkZWYgX19jcGx1c3BsdXMKIGV4dGVybiAiQyIKQEAgLTQ3LDYgKzUyLDkgQEAgZXh0ZXJu
ICJDIgogI2RlZmluZSBzaWxrX2VuY29kZV9kb19WQURfRnh4ICAgICAgc2lsa19lbmNvZGVfZG9f
VkFEX0ZJWAogI2RlZmluZSBzaWxrX2VuY29kZV9mcmFtZV9GeHggICAgICAgc2lsa19lbmNvZGVf
ZnJhbWVfRklYCiAKKyNkZWZpbmUgUUMgIDEwCisjZGVmaW5lIFFTICAxMworCiAvKioqKioqKioq
KioqKioqKioqKioqLwogLyogRW5jb2RlciBGdW5jdGlvbnMgKi8KIC8qKioqKioqKioqKioqKioq
KioqKiovCkBAIC01OCw3ICs2Niw4IEBAIHZvaWQgc2lsa19IUF92YXJpYWJsZV9jdXRvZmYoCiAK
IC8qIEVuY29kZXIgbWFpbiBmdW5jdGlvbiAqLwogdm9pZCBzaWxrX2VuY29kZV9kb19WQURfRklY
KAotICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GSVggICAgICAgICAgKnBzRW5jICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIEZJWCBlbmNvZGVy
IHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
c2lsa19lbmNvZGVyX3N0YXRlX0ZJWCAgICAgICAgICAqcHNFbmMsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSS9PICBQb2ludGVyIHRvIFNpbGsgRklYIGVuY29kZXIgc3RhdGUg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2lu
dCAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2aXR5ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIERlY2lzaW9uIG9mIE9wdXMgdm9pY2UgYWN0aXZpdHkgZGV0ZWN0b3Ig
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKTsKIAogLyogRW5jb2RlciBt
YWluIGZ1bmN0aW9uICovCkBAIC04MSwzMyArOTAsMTEgQEAgb3B1c19pbnQgc2lsa19pbml0X2Vu
Y29kZXIoCiBvcHVzX2ludCBzaWxrX2NvbnRyb2xfZW5jb2RlcigKICAgICBzaWxrX2VuY29kZXJf
c3RhdGVfRnh4ICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJL08gIFBvaW50ZXIgdG8gU2lsayBlbmNvZGVyIHN0YXRlICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfRW5jQ29udHJvbFN0cnVj
dCAgICAgICAgICAgKmVuY0NvbnRyb2wsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgQ29udHJvbCBzdHJ1Y3R1cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAg
ICAgICBUYXJnZXRSYXRlX2JwcywgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBUYXJn
ZXQgbWF4IGJpdHJhdGUgKGJwcykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGFs
bG93X2J3X3N3aXRjaCwgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZsYWcgdG8gYWxs
b3cgc3dpdGNoaW5nIGF1ZGlvIGJhbmR3aWR0aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgY2hhbm5lbE5i
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ2hhbm5lbCBudW1iZXIgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBmb3JjZV9mc19rSHoKICk7
CiAKLS8qKioqKioqKioqKioqKioqLwotLyogUHJlZmlsdGVyaW5nICovCi0vKioqKioqKioqKioq
KioqKi8KLXZvaWQgc2lsa19wcmVmaWx0ZXJfRklYKAotICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9G
SVggICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkv
TyAgRW5jb2RlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX2NvbnRyb2xf
RklYICAqcHNFbmNDdHJsLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNv
ZGVyIGNvbnRyb2wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgIHh3
X1ExMFtdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFdlaWdodGVkIHNp
Z25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgeFtdICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3BlZWNoIHNpZ25hbCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0pOwotCi12b2lkIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYX2MoCi0g
ICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgIHN0YXRlW10sICAgICAgICAgICAgICAgICAg
ICAvKiBJL08gIFN0YXRlIFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICovCi0gICAgICAg
ICAgb3B1c19pbnQzMiAgICAgICAgICAgIHJlc19RMltdLCAgICAgICAgICAgICAgICAgICAvKiBP
ICAgIFJlc2lkdWFsIHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgIGNvZWZfUTEzW10sICAgICAgICAgICAgICAgICAvKiBJICAgIENv
ZWZmaWNpZW50cyBbb3JkZXJdICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQx
NiAgICAgICAgICAgIGlucHV0W10sICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IHNp
Z25hbCBbbGVuZ3RoXSAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgIGxhbWJkYV9RMTYsICAgICAgICAgICAgICAgICAvKiBJICAgIFdhcnBpbmcgZmFjdG9y
ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAg
IGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1dCBzaWdu
YWwgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG9yZGVy
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAoZXZlbikgICAgICAg
ICAgICAgICAgICovCi0pOwotCi0KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKi8KIC8qIE5v
aXNlIHNoYXBpbmcgYW5hbHlzaXMgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKi8KQEAg
LTEyMSw3ICsxMDgsNyBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogKTsK
IAogLyogQXV0b2NvcnJlbGF0aW9ucyBmb3IgYSB3YXJwZWQgZnJlcXVlbmN5IGF4aXMgKi8KLXZv
aWQgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCgKK3ZvaWQgc2lsa193YXJwZWRfYXV0
b2NvcnJlbGF0aW9uX0ZJWF9jKAogICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAg
KmNvcnIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmVzdWx0IFtv
cmRlciArIDFdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgICAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAqc2NhbGUs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBTY2FsaW5nIG9mIHRoZSBj
b3JyZWxhdGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICppbnB1dCwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IGRhdGEgdG8gY29ycmVsYXRl
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwpA
QCAtMTMwLDYgKzExNywxMSBAQCB2b2lkIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgo
CiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb3JyZWxhdGlvbiBvcmRlciAoZXZlbikgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAK
KyNpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKQor
I2RlZmluZSBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKGNvcnIsIHNjYWxlLCBpbnB1
dCwgd2FycGluZ19RMTYsIGxlbmd0aCwgb3JkZXIsIGFyY2gpIFwKKyAgICAgICAgKCh2b2lkKShh
cmNoKSwgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9jKGNvcnIsIHNjYWxlLCBpbnB1
dCwgd2FycGluZ19RMTYsIGxlbmd0aCwgb3JkZXIpKQorI2VuZGlmCisKIC8qIENhbGN1bGF0aW9u
IG9mIExUUCBzdGF0ZSBzY2FsaW5nICovCiB2b2lkIHNpbGtfTFRQX3NjYWxlX2N0cmxfRklYKAog
ICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GSVggICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgZW5jb2RlciBzdGF0ZSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCkBAIC0xNjgs
MTYgKzE2MCwxMiBAQCB2b2lkIHNpbGtfZmluZF9MUENfRklYKAogCiAvKiBMVFAgYW5hbHlzaXMg
Ki8KIHZvaWQgc2lsa19maW5kX0xUUF9GSVgoCi0gICAgb3B1c19pbnQxNiAgICAgICAgICAgICAg
ICAgICAgICBiX1ExNFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgLyogTyAgICBM
VFAgY29lZnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAg
IFdMVFBbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBPICAgIFdl
aWdodCBmb3IgTFRQIHF1YW50aXphdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgKkxUUHJl
ZENvZEdhaW5fUTcsICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIGNvZGluZyBnYWlu
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICByX2xwY1tdLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICByZXNpZHVhbCBzaWduYWwgYWZ0ZXIg
TFBDIHNpZ25hbCArIHN0YXRlIGZvciBmaXJzdCAxMCBtcyAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgIFhYTFRQX1ExN1sgTUFYX05CX1NV
QkZSICogTFRQX09SREVSICogTFRQX09SREVSIF0sIC8qIE8gICAgQ29ycmVsYXRpb24gbWF0cml4
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9w
dXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgeFhMVFBfUTE3WyBNQVhfTkJfU1VCRlIgKiBM
VFBfT1JERVIgXSwgIC8qIE8gICAgQ29ycmVsYXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgICAgICByX2xwY1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBSZXNpZHVhbCBzaWduYWwgYWZ0ZXIgTFBDICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgIGxhZ1sgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIExUUCBsYWdzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAg
ICAgICAgICAgV2dodF9RMTVbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgIC8qIEkgICAg
d2VpZ2h0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICBzdWJmcl9sZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBzdWJmcmFt
ZSBsZW5ndGggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG5iX3N1
YmZyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJm
cmFtZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbWVtX29mZnNldCwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHNhbXBsZXMgaW4g
TFRQIG1lbW9yeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBjb3JyX3JzaGlmdHNbIE1BWF9O
Ql9TVUJGUiBdLCAgICAgICAgICAgLyogTyAgICByaWdodCBzaGlmdHMgYXBwbGllZCB0byBjb3Jy
ZWxhdGlvbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIHN1YmZyX2xlbmd0aCwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIFN1YmZyYW1lIGxlbmd0aCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgbmJfc3ViZnIsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgaW50ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKQEAgLTIzMSw5ICsyMTksOSBAQCB2
b2lkIHNpbGtfY29yck1hdHJpeF9GSVgoCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAg
ICAgICAqeCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICB4IHZl
Y3RvciBbTCArIG9yZGVyIC0gMV0gdXNlZCB0byBmb3JtIGRhdGEgbWF0cml4IFggICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIEws
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiB2
ZWN0b3JzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgb3JkZXIsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTWF4IGxhZyBmb3IgY29ycmVs
YXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBoZWFkX3Jvb20sICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBEZXNpcmVkIGhlYWRyb29tICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAg
ICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgICpYWCwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBPICAgIFBvaW50ZXIgdG8gWCcqWCBjb3JyZWxhdGlvbiBtYXRy
aXggWyBvcmRlciB4IG9yZGVyIF0gICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgICAgICAgKnJzaGlmdHMsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgUmlnaHQgc2hpZnRzIG9mIGNvcnJlbGF0aW9ucyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQzMiAg
ICAgICAgICAgICAgICAgICAgICAqbnJnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogTyAgICBFbmVyZ3kgb2YgeCB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgICAgICAgICpyc2hpZnRzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBP
ICAgIFJpZ2h0IHNoaWZ0cyBvZiBjb3JyZWxhdGlvbnMgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGludCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGFyY2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUnVu
LXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiApOwogCkBAIC0yNDgsMjIgKzIzNiw2IEBAIHZvaWQgc2lsa19j
b3JyVmVjdG9yX0ZJWCgKICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2gg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hp
dGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwogKTsKIAotLyogQWRkIG5vaXNlIHRvIG1hdHJpeCBkaWFnb25hbCAqLwotdm9pZCBz
aWxrX3JlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZJWCgKLSAgICBvcHVzX2ludDMyICAgICAgICAg
ICAgICAgICAgICAgICpYWCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
L08gIENvcnJlbGF0aW9uIG1hdHJpY2VzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAg
ICAgICAgKnh4LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgQ29y
cmVsYXRpb24gdmFsdWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICBu
b2lzZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOb2lzZSB0byBh
ZGQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgIEQgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIERpbWVuc2lvbiBvZiBYWCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwotKTsKLQotLyogU29sdmVzIEF4ID0gYiwgYXNzdW1pbmcgQSBpcyBzeW1tZXRyaWMgKi8K
LXZvaWQgc2lsa19zb2x2ZV9MRExfRklYKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAg
ICAgICAgKkEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUG9p
bnRlciB0byBzeW1ldHJpYyBzcXVhcmUgbWF0cml4IEEgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBN
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTaXplIG9mIG1h
dHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgICAgICpiLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFBvaW50ZXIgdG8gYiB2ZWN0
b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgKnhfUTE2ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUG9pbnRlciB0byB4IHNvbHV0aW9uIHZl
Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0p
OwotCiAjaWZuZGVmIEZPUkNFX0NQUF9CVUlMRAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZml4ZWQvbWlwcy9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVhfbWlwc3IxLmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZml4ZWQvbWlwcy9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVhfbWlwc3IxLmgKaW5kZXgg
YzMwNDgxZTQzNzUxZGMwMGZlYTAyNTkzY2YzNDMwMmVkNjM5Nzc5Zi4uMzk5OWI1YmQwOWRkOGE5
NDY0ZWQyMjc4MGQ1NDU3OGYzZGJjZGVmOCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21pcHMvbm9p
c2Vfc2hhcGVfYW5hbHlzaXNfRklYX21pcHNyMS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9taXBzL25vaXNl
X3NoYXBlX2FuYWx5c2lzX0ZJWF9taXBzcjEuaApAQCAtMTY5LDcgKzE2OSw3IEBAIHZvaWQgc2ls
a19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAKICAgICAgICAgaWYoIHBzRW5jLT5zQ21uLndh
cnBpbmdfUTE2ID4gMCApIHsKICAgICAgICAgICAgIC8qIENhbGN1bGF0ZSB3YXJwZWQgYXV0byBj
b3JyZWxhdGlvbiAqLwotICAgICAgICAgICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJ
WCggYXV0b19jb3JyLCAmc2NhbGUsIHhfd2luZG93ZWQsIHdhcnBpbmdfUTE2LCBwc0VuYy0+c0Nt
bi5zaGFwZVdpbkxlbmd0aCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAgICAg
ICAgICBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKCBhdXRvX2NvcnIsICZzY2FsZSwg
eF93aW5kb3dlZCwgd2FycGluZ19RMTYsIHBzRW5jLT5zQ21uLnNoYXBlV2luTGVuZ3RoLCBwc0Vu
Yy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIGFyY2ggKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAg
ICAgICAgIC8qIENhbGN1bGF0ZSByZWd1bGFyIGF1dG8gY29ycmVsYXRpb24gKi8KICAgICAgICAg
ICAgIHNpbGtfYXV0b2NvcnIoIGF1dG9fY29yciwgJnNjYWxlLCB4X3dpbmRvd2VkLCBwc0VuYy0+
c0Ntbi5zaGFwZVdpbkxlbmd0aCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICsgMSwgYXJj
aCApOwpAQCAtMjI0LDggKzIyNCw4IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19G
SVgoCiAgICAgICAgIHNpbGtfYndleHBhbmRlcl8zMiggQVIxX1EyNCwgcHNFbmMtPnNDbW4uc2hh
cGluZ0xQQ09yZGVyLCBCV0V4cDFfUTE2ICk7CiAKICAgICAgICAgLyogUmF0aW8gb2YgcHJlZGlj
dGlvbiBnYWlucywgaW4gZW5lcmd5IGRvbWFpbiAqLwotICAgICAgICBwcmVfbnJnX1EzMCA9IHNp
bGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX1EyNCggQVIyX1EyNCwgcHNFbmMtPnNDbW4uc2hhcGlu
Z0xQQ09yZGVyICk7Ci0gICAgICAgIG5yZyAgICAgICAgID0gc2lsa19MUENfaW52ZXJzZV9wcmVk
X2dhaW5fUTI0KCBBUjFfUTI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAg
ICAgcHJlX25yZ19RMzAgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoIEFSMl9RMjQs
IHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciwgYXJjaCApOworICAgICAgICBucmcgICAgICAg
ICA9IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX1EyNCggQVIxX1EyNCwgcHNFbmMtPnNDbW4u
c2hhcGluZ0xQQ09yZGVyLCBhcmNoICk7CiAKICAgICAgICAgLypwc0VuY0N0cmwtPkdhaW5zUHJl
WyBrIF0gPSAxLjBmIC0gMC43ZiAqICggMS4wZiAtIHByZV9ucmcgLyBucmcgKSA9IDAuM2YgKyAw
LjdmICogcHJlX25yZyAvIG5yZzsqLwogICAgICAgICBwcmVfbnJnX1EzMCA9IHNpbGtfTFNISUZU
MzIoIHNpbGtfU01VTFdCKCBwcmVfbnJnX1EzMCwgU0lMS19GSVhfQ09OU1QoIDAuNywgMTUgKSAp
LCAxICk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbWlwcy93YXJwZWRfYXV0b2NvcnJlbGF0aW9u
X0ZJWF9taXBzcjEuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9taXBzL3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklY
X21pcHNyMS5oCmluZGV4IGU4MDNlZjBmY2ViMDRiM2NhMTUyNjRjYjNhNWVkZDhlOTcxODg3Yjku
LmZjYmQ5NmM4OGQ5OGFhYTA1YjNlNGE1Yzk1NmUyZWFiMDliNmJjNDUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9maXhlZC9taXBzL3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX21pcHNyMS5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9maXhlZC9taXBzL3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX21pcHNyMS5oCkBAIC00OCw3
ICs0OCw4IEBAIHZvaWQgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCgKICAgICBjb25z
dCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICppbnB1dCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIElucHV0IGRhdGEgdG8gY29ycmVsYXRlICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgd2FycGluZ19RMTYsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgV2FycGluZyBjb2VmZmljaWVudCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICBsZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBMZW5ndGggb2YgaW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENv
cnJlbGF0aW9uIG9yZGVyIChldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
b3JkZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29ycmVsYXRp
b24gb3JkZXIgKGV2ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRl
Y3R1cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICkKIHsKICAgICBvcHVzX2ludCAgIG4sIGksIGxzaDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9m
aXhlZC9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9ub2lzZV9zaGFwZV9h
bmFseXNpc19GSVguYwppbmRleCAyMmE4OWY3NWFlYzBmYzhkNjI0NDA5ZGY4NjFjYmI2YzJjYTM4
NTk1Li44NWZlYTBiZjA5NjAwNTk0NjI4MDAxZDc0MTA3MTJjNGVlOGMyNjEyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZml4ZWQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL25v
aXNlX3NoYXBlX2FuYWx5c2lzX0ZJWC5jCkBAIC01Nyw4OCArNTcsNzkgQEAgc3RhdGljIE9QVVNf
SU5MSU5FIG9wdXNfaW50MzIgd2FycGVkX2dhaW4oIC8qIGdhaW4gaW4gUTE2Ki8KIC8qIENvbnZl
cnQgd2FycGVkIGZpbHRlciBjb2VmZmljaWVudHMgdG8gbW9uaWMgcHNldWRvLXdhcnBlZCBjb2Vm
ZmljaWVudHMgYW5kIGxpbWl0IG1heGltdW0gICAgICovCiAvKiBhbXBsaXR1ZGUgb2YgbW9uaWMg
d2FycGVkIGNvZWZmaWNpZW50cyBieSB1c2luZyBiYW5kd2lkdGggZXhwYW5zaW9uIG9uIHRoZSB0
cnVlIGNvZWZmaWNpZW50cyAqLwogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgbGltaXRfd2FycGVk
X2NvZWZzKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgICpjb2Vmc19zeW5fUTI0LAotICAgIG9w
dXNfaW50MzIgICAgICAgICAgICpjb2Vmc19hbmFfUTI0LAorICAgIG9wdXNfaW50MzIgICAgICAg
ICAgICpjb2Vmc19RMjQsCiAgICAgb3B1c19pbnQgICAgICAgICAgICAgbGFtYmRhX1ExNiwKICAg
ICBvcHVzX2ludDMyICAgICAgICAgICBsaW1pdF9RMjQsCiAgICAgb3B1c19pbnQgICAgICAgICAg
ICAgb3JkZXIKICkgewogICAgIG9wdXNfaW50ICAgaSwgaXRlciwgaW5kID0gMDsKLSAgICBvcHVz
X2ludDMyIHRtcCwgbWF4YWJzX1EyNCwgY2hpcnBfUTE2LCBnYWluX3N5bl9RMTYsIGdhaW5fYW5h
X1ExNjsKKyAgICBvcHVzX2ludDMyIHRtcCwgbWF4YWJzX1EyNCwgY2hpcnBfUTE2LCBnYWluX1Ex
NjsKICAgICBvcHVzX2ludDMyIG5vbV9RMTYsIGRlbl9RMjQ7CisgICAgb3B1c19pbnQzMiBsaW1p
dF9RMjAsIG1heGFic19RMjA7CiAKICAgICAvKiBDb252ZXJ0IHRvIG1vbmljIGNvZWZmaWNpZW50
cyAqLwogICAgIGxhbWJkYV9RMTYgPSAtbGFtYmRhX1ExNjsKICAgICBmb3IoIGkgPSBvcmRlciAt
IDE7IGkgPiAwOyBpLS0gKSB7Ci0gICAgICAgIGNvZWZzX3N5bl9RMjRbIGkgLSAxIF0gPSBzaWxr
X1NNTEFXQiggY29lZnNfc3luX1EyNFsgaSAtIDEgXSwgY29lZnNfc3luX1EyNFsgaSBdLCBsYW1i
ZGFfUTE2ICk7Ci0gICAgICAgIGNvZWZzX2FuYV9RMjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQigg
Y29lZnNfYW5hX1EyNFsgaSAtIDEgXSwgY29lZnNfYW5hX1EyNFsgaSBdLCBsYW1iZGFfUTE2ICk7
CisgICAgICAgIGNvZWZzX1EyNFsgaSAtIDEgXSA9IHNpbGtfU01MQVdCKCBjb2Vmc19RMjRbIGkg
LSAxIF0sIGNvZWZzX1EyNFsgaSBdLCBsYW1iZGFfUTE2ICk7CiAgICAgfQogICAgIGxhbWJkYV9R
MTYgPSAtbGFtYmRhX1ExNjsKLSAgICBub21fUTE2ICA9IHNpbGtfU01MQVdCKCBTSUxLX0ZJWF9D
T05TVCggMS4wLCAxNiApLCAtKG9wdXNfaW50MzIpbGFtYmRhX1ExNiwgICAgICAgIGxhbWJkYV9R
MTYgKTsKLSAgICBkZW5fUTI0ICA9IHNpbGtfU01MQVdCKCBTSUxLX0ZJWF9DT05TVCggMS4wLCAy
NCApLCBjb2Vmc19zeW5fUTI0WyAwIF0sIGxhbWJkYV9RMTYgKTsKLSAgICBnYWluX3N5bl9RMTYg
PSBzaWxrX0RJVjMyX3ZhclEoIG5vbV9RMTYsIGRlbl9RMjQsIDI0ICk7Ci0gICAgZGVuX1EyNCAg
PSBzaWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1QoIDEuMCwgMjQgKSwgY29lZnNfYW5hX1EyNFsg
MCBdLCBsYW1iZGFfUTE2ICk7Ci0gICAgZ2Fpbl9hbmFfUTE2ID0gc2lsa19ESVYzMl92YXJRKCBu
b21fUTE2LCBkZW5fUTI0LCAyNCApOworICAgIG5vbV9RMTYgID0gc2lsa19TTUxBV0IoIFNJTEtf
RklYX0NPTlNUKCAxLjAsIDE2ICksIC0ob3B1c19pbnQzMilsYW1iZGFfUTE2LCBsYW1iZGFfUTE2
ICk7CisgICAgZGVuX1EyNCAgPSBzaWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1QoIDEuMCwgMjQg
KSwgY29lZnNfUTI0WyAwIF0sIGxhbWJkYV9RMTYgKTsKKyAgICBnYWluX1ExNiA9IHNpbGtfRElW
MzJfdmFyUSggbm9tX1ExNiwgZGVuX1EyNCwgMjQgKTsKICAgICBmb3IoIGkgPSAwOyBpIDwgb3Jk
ZXI7IGkrKyApIHsKLSAgICAgICAgY29lZnNfc3luX1EyNFsgaSBdID0gc2lsa19TTVVMV1coIGdh
aW5fc3luX1ExNiwgY29lZnNfc3luX1EyNFsgaSBdICk7Ci0gICAgICAgIGNvZWZzX2FuYV9RMjRb
IGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX2FuYV9RMTYsIGNvZWZzX2FuYV9RMjRbIGkgXSApOwor
ICAgICAgICBjb2Vmc19RMjRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX1ExNiwgY29lZnNfUTI0
WyBpIF0gKTsKICAgICB9Ci0KKyAgICBsaW1pdF9RMjAgPSBzaWxrX1JTSElGVChsaW1pdF9RMjQs
IDQpOwogICAgIGZvciggaXRlciA9IDA7IGl0ZXIgPCAxMDsgaXRlcisrICkgewogICAgICAgICAv
KiBGaW5kIG1heGltdW0gYWJzb2x1dGUgdmFsdWUgKi8KICAgICAgICAgbWF4YWJzX1EyNCA9IC0x
OwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAgICAgIHRt
cCA9IHNpbGtfbWF4KCBzaWxrX2Fic19pbnQzMiggY29lZnNfc3luX1EyNFsgaSBdICksIHNpbGtf
YWJzX2ludDMyKCBjb2Vmc19hbmFfUTI0WyBpIF0gKSApOworICAgICAgICAgICAgdG1wID0gc2ls
a19hYnNfaW50MzIoIGNvZWZzX1EyNFsgaSBdICk7CiAgICAgICAgICAgICBpZiggdG1wID4gbWF4
YWJzX1EyNCApIHsKICAgICAgICAgICAgICAgICBtYXhhYnNfUTI0ID0gdG1wOwogICAgICAgICAg
ICAgICAgIGluZCA9IGk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KLSAgICAgICAgaWYoIG1h
eGFic19RMjQgPD0gbGltaXRfUTI0ICkgeworICAgICAgICAvKiBVc2UgUTIwIHRvIGF2b2lkIGFu
eSBvdmVyZmxvdyB3aGVuIG11bHRpcGx5aW5nIGJ5IChpbmQgKyAxKSBsYXRlci4gKi8KKyAgICAg
ICAgbWF4YWJzX1EyMCA9IHNpbGtfUlNISUZUKG1heGFic19RMjQsIDQpOworICAgICAgICBpZigg
bWF4YWJzX1EyMCA8PSBsaW1pdF9RMjAgKSB7CiAgICAgICAgICAgICAvKiBDb2VmZmljaWVudHMg
YXJlIHdpdGhpbiByYW5nZSAtIGRvbmUgKi8KICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAg
fQogCiAgICAgICAgIC8qIENvbnZlcnQgYmFjayB0byB0cnVlIHdhcnBlZCBjb2VmZmljaWVudHMg
Ki8KICAgICAgICAgZm9yKCBpID0gMTsgaSA8IG9yZGVyOyBpKysgKSB7Ci0gICAgICAgICAgICBj
b2Vmc19zeW5fUTI0WyBpIC0gMSBdID0gc2lsa19TTUxBV0IoIGNvZWZzX3N5bl9RMjRbIGkgLSAx
IF0sIGNvZWZzX3N5bl9RMjRbIGkgXSwgbGFtYmRhX1ExNiApOwotICAgICAgICAgICAgY29lZnNf
YW5hX1EyNFsgaSAtIDEgXSA9IHNpbGtfU01MQVdCKCBjb2Vmc19hbmFfUTI0WyBpIC0gMSBdLCBj
b2Vmc19hbmFfUTI0WyBpIF0sIGxhbWJkYV9RMTYgKTsKKyAgICAgICAgICAgIGNvZWZzX1EyNFsg
aSAtIDEgXSA9IHNpbGtfU01MQVdCKCBjb2Vmc19RMjRbIGkgLSAxIF0sIGNvZWZzX1EyNFsgaSBd
LCBsYW1iZGFfUTE2ICk7CiAgICAgICAgIH0KLSAgICAgICAgZ2Fpbl9zeW5fUTE2ID0gc2lsa19J
TlZFUlNFMzJfdmFyUSggZ2Fpbl9zeW5fUTE2LCAzMiApOwotICAgICAgICBnYWluX2FuYV9RMTYg
PSBzaWxrX0lOVkVSU0UzMl92YXJRKCBnYWluX2FuYV9RMTYsIDMyICk7CisgICAgICAgIGdhaW5f
UTE2ID0gc2lsa19JTlZFUlNFMzJfdmFyUSggZ2Fpbl9RMTYsIDMyICk7CiAgICAgICAgIGZvcigg
aSA9IDA7IGkgPCBvcmRlcjsgaSsrICkgewotICAgICAgICAgICAgY29lZnNfc3luX1EyNFsgaSBd
ID0gc2lsa19TTVVMV1coIGdhaW5fc3luX1ExNiwgY29lZnNfc3luX1EyNFsgaSBdICk7Ci0gICAg
ICAgICAgICBjb2Vmc19hbmFfUTI0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9hbmFfUTE2LCBj
b2Vmc19hbmFfUTI0WyBpIF0gKTsKKyAgICAgICAgICAgIGNvZWZzX1EyNFsgaSBdID0gc2lsa19T
TVVMV1coIGdhaW5fUTE2LCBjb2Vmc19RMjRbIGkgXSApOwogICAgICAgICB9CiAKICAgICAgICAg
LyogQXBwbHkgYmFuZHdpZHRoIGV4cGFuc2lvbiAqLwogICAgICAgICBjaGlycF9RMTYgPSBTSUxL
X0ZJWF9DT05TVCggMC45OSwgMTYgKSAtIHNpbGtfRElWMzJfdmFyUSgKLSAgICAgICAgICAgIHNp
bGtfU01VTFdCKCBtYXhhYnNfUTI0IC0gbGltaXRfUTI0LCBzaWxrX1NNTEFCQiggU0lMS19GSVhf
Q09OU1QoIDAuOCwgMTAgKSwgU0lMS19GSVhfQ09OU1QoIDAuMSwgMTAgKSwgaXRlciApICksCi0g
ICAgICAgICAgICBzaWxrX01VTCggbWF4YWJzX1EyNCwgaW5kICsgMSApLCAyMiApOwotICAgICAg
ICBzaWxrX2J3ZXhwYW5kZXJfMzIoIGNvZWZzX3N5bl9RMjQsIG9yZGVyLCBjaGlycF9RMTYgKTsK
LSAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBjb2Vmc19hbmFfUTI0LCBvcmRlciwgY2hpcnBf
UTE2ICk7CisgICAgICAgICAgICBzaWxrX1NNVUxXQiggbWF4YWJzX1EyMCAtIGxpbWl0X1EyMCwg
c2lsa19TTUxBQkIoIFNJTEtfRklYX0NPTlNUKCAwLjgsIDEwICksIFNJTEtfRklYX0NPTlNUKCAw
LjEsIDEwICksIGl0ZXIgKSApLAorICAgICAgICAgICAgc2lsa19NVUwoIG1heGFic19RMjAsIGlu
ZCArIDEgKSwgMjIgKTsKKyAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBjb2Vmc19RMjQsIG9y
ZGVyLCBjaGlycF9RMTYgKTsKIAogICAgICAgICAvKiBDb252ZXJ0IHRvIG1vbmljIHdhcnBlZCBj
b2VmZmljaWVudHMgKi8KICAgICAgICAgbGFtYmRhX1ExNiA9IC1sYW1iZGFfUTE2OwogICAgICAg
ICBmb3IoIGkgPSBvcmRlciAtIDE7IGkgPiAwOyBpLS0gKSB7Ci0gICAgICAgICAgICBjb2Vmc19z
eW5fUTI0WyBpIC0gMSBdID0gc2lsa19TTUxBV0IoIGNvZWZzX3N5bl9RMjRbIGkgLSAxIF0sIGNv
ZWZzX3N5bl9RMjRbIGkgXSwgbGFtYmRhX1ExNiApOwotICAgICAgICAgICAgY29lZnNfYW5hX1Ey
NFsgaSAtIDEgXSA9IHNpbGtfU01MQVdCKCBjb2Vmc19hbmFfUTI0WyBpIC0gMSBdLCBjb2Vmc19h
bmFfUTI0WyBpIF0sIGxhbWJkYV9RMTYgKTsKKyAgICAgICAgICAgIGNvZWZzX1EyNFsgaSAtIDEg
XSA9IHNpbGtfU01MQVdCKCBjb2Vmc19RMjRbIGkgLSAxIF0sIGNvZWZzX1EyNFsgaSBdLCBsYW1i
ZGFfUTE2ICk7CiAgICAgICAgIH0KICAgICAgICAgbGFtYmRhX1ExNiA9IC1sYW1iZGFfUTE2Owog
ICAgICAgICBub21fUTE2ICA9IHNpbGtfU01MQVdCKCBTSUxLX0ZJWF9DT05TVCggMS4wLCAxNiAp
LCAtKG9wdXNfaW50MzIpbGFtYmRhX1ExNiwgICAgICAgIGxhbWJkYV9RMTYgKTsKLSAgICAgICAg
ZGVuX1EyNCAgPSBzaWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1QoIDEuMCwgMjQgKSwgY29lZnNf
c3luX1EyNFsgMCBdLCBsYW1iZGFfUTE2ICk7Ci0gICAgICAgIGdhaW5fc3luX1ExNiA9IHNpbGtf
RElWMzJfdmFyUSggbm9tX1ExNiwgZGVuX1EyNCwgMjQgKTsKLSAgICAgICAgZGVuX1EyNCAgPSBz
aWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1QoIDEuMCwgMjQgKSwgY29lZnNfYW5hX1EyNFsgMCBd
LCBsYW1iZGFfUTE2ICk7Ci0gICAgICAgIGdhaW5fYW5hX1ExNiA9IHNpbGtfRElWMzJfdmFyUSgg
bm9tX1ExNiwgZGVuX1EyNCwgMjQgKTsKKyAgICAgICAgZGVuX1EyNCAgPSBzaWxrX1NNTEFXQigg
U0lMS19GSVhfQ09OU1QoIDEuMCwgMjQgKSwgY29lZnNfUTI0WyAwIF0sIGxhbWJkYV9RMTYgKTsK
KyAgICAgICAgZ2Fpbl9RMTYgPSBzaWxrX0RJVjMyX3ZhclEoIG5vbV9RMTYsIGRlbl9RMjQsIDI0
ICk7CiAgICAgICAgIGZvciggaSA9IDA7IGkgPCBvcmRlcjsgaSsrICkgewotICAgICAgICAgICAg
Y29lZnNfc3luX1EyNFsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fc3luX1ExNiwgY29lZnNfc3lu
X1EyNFsgaSBdICk7Ci0gICAgICAgICAgICBjb2Vmc19hbmFfUTI0WyBpIF0gPSBzaWxrX1NNVUxX
VyggZ2Fpbl9hbmFfUTE2LCBjb2Vmc19hbmFfUTI0WyBpIF0gKTsKKyAgICAgICAgICAgIGNvZWZz
X1EyNFsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fUTE2LCBjb2Vmc19RMjRbIGkgXSApOwogICAg
ICAgICB9CiAgICAgfQogICAgIHNpbGtfYXNzZXJ0KCAwICk7CiB9CiAKLSNpZiBkZWZpbmVkKE1J
UFNyMV9BU00pCisvKiBEaXNhYmxlIE1JUFMgdmVyc2lvbiB1bnRpbCBpdCdzIHVwZGF0ZWQuICov
CisjaWYgMCAmJiBkZWZpbmVkKE1JUFNyMV9BU00pCiAjaW5jbHVkZSAibWlwcy9ub2lzZV9zaGFw
ZV9hbmFseXNpc19GSVhfbWlwc3IxLmgiCiAjZW5kaWYKIApAQCAtMTU1LDE0ICsxNDYsMTMgQEAg
dm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWCgKICkKIHsKICAgICBzaWxrX3NoYXBl
X3N0YXRlX0ZJWCAqcHNTaGFwZVN0ID0gJnBzRW5jLT5zU2hhcGU7Ci0gICAgb3B1c19pbnQgICAg
IGssIGksIG5TYW1wbGVzLCBRbnJnLCBiX1ExNCwgd2FycGluZ19RMTYsIHNjYWxlID0gMDsKLSAg
ICBvcHVzX2ludDMyICAgU05SX2Fkal9kQl9RNywgSGFybUJvb3N0X1ExNiwgSGFybVNoYXBlR2Fp
bl9RMTYsIFRpbHRfUTE2LCB0bXAzMjsKLSAgICBvcHVzX2ludDMyICAgbnJnLCBwcmVfbnJnX1Ez
MCwgbG9nX2VuZXJneV9RNywgbG9nX2VuZXJneV9wcmV2X1E3LCBlbmVyZ3lfdmFyaWF0aW9uX1E3
OwotICAgIG9wdXNfaW50MzIgICBkZWx0YV9RMTYsIEJXRXhwMV9RMTYsIEJXRXhwMl9RMTYsIGdh
aW5fbXVsdF9RMTYsIGdhaW5fYWRkX1ExNiwgc3RyZW5ndGhfUTE2LCBiX1E4OworICAgIG9wdXNf
aW50ICAgICBrLCBpLCBuU2FtcGxlcywgblNlZ3MsIFFucmcsIGJfUTE0LCB3YXJwaW5nX1ExNiwg
c2NhbGUgPSAwOworICAgIG9wdXNfaW50MzIgICBTTlJfYWRqX2RCX1E3LCBIYXJtU2hhcGVHYWlu
X1ExNiwgVGlsdF9RMTYsIHRtcDMyOworICAgIG9wdXNfaW50MzIgICBucmcsIGxvZ19lbmVyZ3lf
UTcsIGxvZ19lbmVyZ3lfcHJldl9RNywgZW5lcmd5X3ZhcmlhdGlvbl9RNzsKKyAgICBvcHVzX2lu
dDMyICAgQldFeHBfUTE2LCBnYWluX211bHRfUTE2LCBnYWluX2FkZF9RMTYsIHN0cmVuZ3RoX1Ex
NiwgYl9RODsKICAgICBvcHVzX2ludDMyICAgYXV0b19jb3JyWyAgICAgTUFYX1NIQVBFX0xQQ19P
UkRFUiArIDEgXTsKICAgICBvcHVzX2ludDMyICAgcmVmbF9jb2VmX1ExNlsgTUFYX1NIQVBFX0xQ
Q19PUkRFUiBdOwotICAgIG9wdXNfaW50MzIgICBBUjFfUTI0WyAgICAgICBNQVhfU0hBUEVfTFBD
X09SREVSIF07Ci0gICAgb3B1c19pbnQzMiAgIEFSMl9RMjRbICAgICAgIE1BWF9TSEFQRV9MUENf
T1JERVIgXTsKKyAgICBvcHVzX2ludDMyICAgQVJfUTI0WyAgICAgICBNQVhfU0hBUEVfTFBDX09S
REVSIF07CiAgICAgVkFSREVDTCggb3B1c19pbnQxNiwgeF93aW5kb3dlZCApOwogICAgIGNvbnN0
IG9wdXNfaW50MTYgKnhfcHRyLCAqcGl0Y2hfcmVzX3B0cjsKICAgICBTQVZFX1NUQUNLOwpAQCAt
MjA5LDE0ICsxOTksMTQgQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWCgKICAg
ICBpZiggcHNFbmMtPnNDbW4uaW5kaWNlcy5zaWduYWxUeXBlID09IFRZUEVfVk9JQ0VEICkgewog
ICAgICAgICAvKiBJbml0aWFsbHkgc2V0IHRvIDA7IG1heSBiZSBvdmVycnVsZWQgaW4gcHJvY2Vz
c19nYWlucyguLikgKi8KICAgICAgICAgcHNFbmMtPnNDbW4uaW5kaWNlcy5xdWFudE9mZnNldFR5
cGUgPSAwOwotICAgICAgICBwc0VuY0N0cmwtPnNwYXJzZW5lc3NfUTggPSAwOwogICAgIH0gZWxz
ZSB7CiAgICAgICAgIC8qIFNwYXJzZW5lc3MgbWVhc3VyZSwgYmFzZWQgb24gcmVsYXRpdmUgZmx1
Y3R1YXRpb25zIG9mIGVuZXJneSBwZXIgMiBtaWxsaXNlY29uZHMgKi8KICAgICAgICAgblNhbXBs
ZXMgPSBzaWxrX0xTSElGVCggcHNFbmMtPnNDbW4uZnNfa0h6LCAxICk7CiAgICAgICAgIGVuZXJn
eV92YXJpYXRpb25fUTcgPSAwOwogICAgICAgICBsb2dfZW5lcmd5X3ByZXZfUTcgID0gMDsKICAg
ICAgICAgcGl0Y2hfcmVzX3B0ciA9IHBpdGNoX3JlczsKLSAgICAgICAgZm9yKCBrID0gMDsgayA8
IHNpbGtfU01VTEJCKCBTVUJfRlJBTUVfTEVOR1RIX01TLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciAp
IC8gMjsgaysrICkgeworICAgICAgICBuU2VncyA9IHNpbGtfU01VTEJCKCBTVUJfRlJBTUVfTEVO
R1RIX01TLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciApIC8gMjsKKyAgICAgICAgZm9yKCBrID0gMDsg
ayA8IG5TZWdzOyBrKysgKSB7CiAgICAgICAgICAgICBzaWxrX3N1bV9zcXJfc2hpZnQoICZucmcs
ICZzY2FsZSwgcGl0Y2hfcmVzX3B0ciwgblNhbXBsZXMgKTsKICAgICAgICAgICAgIG5yZyArPSBz
aWxrX1JTSElGVCggblNhbXBsZXMsIHNjYWxlICk7ICAgICAgICAgICAvKiBRKC1zY2FsZSkqLwog
CkBAIC0yMjgsMTggKzIxOCwxMiBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklY
KAogICAgICAgICAgICAgcGl0Y2hfcmVzX3B0ciArPSBuU2FtcGxlczsKICAgICAgICAgfQogCi0g
ICAgICAgIHBzRW5jQ3RybC0+c3BhcnNlbmVzc19ROCA9IHNpbGtfUlNISUZUKCBzaWxrX3NpZ21f
UTE1KCBzaWxrX1NNVUxXQiggZW5lcmd5X3ZhcmlhdGlvbl9RNyAtCi0gICAgICAgICAgICBTSUxL
X0ZJWF9DT05TVCggNS4wLCA3ICksIFNJTEtfRklYX0NPTlNUKCAwLjEsIDE2ICkgKSApLCA3ICk7
Ci0KICAgICAgICAgLyogU2V0IHF1YW50aXphdGlvbiBvZmZzZXQgZGVwZW5kaW5nIG9uIHNwYXJz
ZW5lc3MgbWVhc3VyZSAqLwotICAgICAgICBpZiggcHNFbmNDdHJsLT5zcGFyc2VuZXNzX1E4ID4g
U0lMS19GSVhfQ09OU1QoIFNQQVJTRU5FU1NfVEhSRVNIT0xEX1FOVF9PRkZTRVQsIDggKSApIHsK
KyAgICAgICAgaWYoIGVuZXJneV92YXJpYXRpb25fUTcgPiBTSUxLX0ZJWF9DT05TVCggRU5FUkdZ
X1ZBUklBVElPTl9USFJFU0hPTERfUU5UX09GRlNFVCwgNyApICogKG5TZWdzLTEpICkgewogICAg
ICAgICAgICAgcHNFbmMtPnNDbW4uaW5kaWNlcy5xdWFudE9mZnNldFR5cGUgPSAwOwogICAgICAg
ICB9IGVsc2UgewogICAgICAgICAgICAgcHNFbmMtPnNDbW4uaW5kaWNlcy5xdWFudE9mZnNldFR5
cGUgPSAxOwogICAgICAgICB9Ci0KLSAgICAgICAgLyogSW5jcmVhc2UgY29kaW5nIFNOUiBmb3Ig
c3BhcnNlIHNpZ25hbHMgKi8KLSAgICAgICAgU05SX2Fkal9kQl9RNyA9IHNpbGtfU01MQVdCKCBT
TlJfYWRqX2RCX1E3LCBTSUxLX0ZJWF9DT05TVCggU1BBUlNFX1NOUl9JTkNSX2RCLCAxNSApLCBw
c0VuY0N0cmwtPnNwYXJzZW5lc3NfUTggLSBTSUxLX0ZJWF9DT05TVCggMC41LCA4ICkgKTsKICAg
ICB9CiAKICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KQEAgLTI0NywxNCAr
MjMxLDggQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWCgKICAgICAvKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBNb3JlIEJXRSBmb3Igc2lnbmFscyB3
aXRoIGhpZ2ggcHJlZGljdGlvbiBnYWluICovCiAgICAgc3RyZW5ndGhfUTE2ID0gc2lsa19TTVVM
V0IoIHBzRW5jQ3RybC0+cHJlZEdhaW5fUTE2LCBTSUxLX0ZJWF9DT05TVCggRklORF9QSVRDSF9X
SElURV9OT0lTRV9GUkFDVElPTiwgMTYgKSApOwotICAgIEJXRXhwMV9RMTYgPSBCV0V4cDJfUTE2
ID0gc2lsa19ESVYzMl92YXJRKCBTSUxLX0ZJWF9DT05TVCggQkFORFdJRFRIX0VYUEFOU0lPTiwg
MTYgKSwKKyAgICBCV0V4cF9RMTYgPSBzaWxrX0RJVjMyX3ZhclEoIFNJTEtfRklYX0NPTlNUKCBC
QU5EV0lEVEhfRVhQQU5TSU9OLCAxNiApLAogICAgICAgICBzaWxrX1NNTEFXVyggU0lMS19GSVhf
Q09OU1QoIDEuMCwgMTYgKSwgc3RyZW5ndGhfUTE2LCBzdHJlbmd0aF9RMTYgKSwgMTYgKTsKLSAg
ICBkZWx0YV9RMTYgID0gc2lsa19TTVVMV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDE2ICkgLSBz
aWxrX1NNVUxCQiggMywgcHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eV9RMTQgKSwKLSAgICAgICAg
U0lMS19GSVhfQ09OU1QoIExPV19SQVRFX0JBTkRXSURUSF9FWFBBTlNJT05fREVMVEEsIDE2ICkg
KTsKLSAgICBCV0V4cDFfUTE2ID0gc2lsa19TVUIzMiggQldFeHAxX1ExNiwgZGVsdGFfUTE2ICk7
Ci0gICAgQldFeHAyX1ExNiA9IHNpbGtfQUREMzIoIEJXRXhwMl9RMTYsIGRlbHRhX1ExNiApOwot
ICAgIC8qIEJXRXhwMSB3aWxsIGJlIGFwcGxpZWQgYWZ0ZXIgQldFeHAyLCBzbyBtYWtlIGl0IHJl
bGF0aXZlICovCi0gICAgQldFeHAxX1ExNiA9IHNpbGtfRElWMzJfMTYoIHNpbGtfTFNISUZUKCBC
V0V4cDFfUTE2LCAxNCApLCBzaWxrX1JTSElGVCggQldFeHAyX1ExNiwgMiApICk7CiAKICAgICBp
ZiggcHNFbmMtPnNDbW4ud2FycGluZ19RMTYgPiAwICkgewogICAgICAgICAvKiBTbGlnaHRseSBt
b3JlIHdhcnBpbmcgaW4gYW5hbHlzaXMgd2lsbCBtb3ZlIHF1YW50aXphdGlvbiBub2lzZSB1cCBp
biBmcmVxdWVuY3ksIHdoZXJlIGl0J3MgYmV0dGVyIG1hc2tlZCAqLwpAQCAtMjg0LDcgKzI2Miw3
IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAKICAgICAgICAgaWYoIHBz
RW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKICAgICAgICAgICAgIC8qIENhbGN1bGF0ZSB3
YXJwZWQgYXV0byBjb3JyZWxhdGlvbiAqLwotICAgICAgICAgICAgc2lsa193YXJwZWRfYXV0b2Nv
cnJlbGF0aW9uX0ZJWCggYXV0b19jb3JyLCAmc2NhbGUsIHhfd2luZG93ZWQsIHdhcnBpbmdfUTE2
LCBwc0VuYy0+c0Ntbi5zaGFwZVdpbkxlbmd0aCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVy
ICk7CisgICAgICAgICAgICBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKCBhdXRvX2Nv
cnIsICZzY2FsZSwgeF93aW5kb3dlZCwgd2FycGluZ19RMTYsIHBzRW5jLT5zQ21uLnNoYXBlV2lu
TGVuZ3RoLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIGFyY2ggKTsKICAgICAgICAgfSBl
bHNlIHsKICAgICAgICAgICAgIC8qIENhbGN1bGF0ZSByZWd1bGFyIGF1dG8gY29ycmVsYXRpb24g
Ki8KICAgICAgICAgICAgIHNpbGtfYXV0b2NvcnIoIGF1dG9fY29yciwgJnNjYWxlLCB4X3dpbmRv
d2VkLCBwc0VuYy0+c0Ntbi5zaGFwZVdpbkxlbmd0aCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09y
ZGVyICsgMSwgYXJjaCApOwpAQCAtMjk5LDcgKzI3Nyw3IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFw
ZV9hbmFseXNpc19GSVgoCiAgICAgICAgIHNpbGtfYXNzZXJ0KCBucmcgPj0gMCApOwogCiAgICAg
ICAgIC8qIENvbnZlcnQgcmVmbGVjdGlvbiBjb2VmZmljaWVudHMgdG8gcHJlZGljdGlvbiBjb2Vm
ZmljaWVudHMgKi8KLSAgICAgICAgc2lsa19rMmFfUTE2KCBBUjJfUTI0LCByZWZsX2NvZWZfUTE2
LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAgc2lsa19rMmFfUTE2KCBB
Ul9RMjQsIHJlZmxfY29lZl9RMTYsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwogCiAg
ICAgICAgIFFucmcgPSAtc2NhbGU7ICAgICAgICAgIC8qIHJhbmdlOiAtMTIuLi4zMCovCiAgICAg
ICAgIHNpbGtfYXNzZXJ0KCBRbnJnID49IC0xMiApOwpAQCAtMzE4LDQwICsyOTYsMzQgQEAgdm9p
ZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWCgKIAogICAgICAgICBpZiggcHNFbmMtPnND
bW4ud2FycGluZ19RMTYgPiAwICkgewogICAgICAgICAgICAgLyogQWRqdXN0IGdhaW4gZm9yIHdh
cnBpbmcgKi8KLSAgICAgICAgICAgIGdhaW5fbXVsdF9RMTYgPSB3YXJwZWRfZ2FpbiggQVIyX1Ey
NCwgd2FycGluZ19RMTYsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwotICAgICAgICAg
ICAgc2lsa19hc3NlcnQoIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0gPj0gMCApOwotICAgICAg
ICAgICAgaWYgKCBzaWxrX1NNVUxXVyggc2lsa19SU0hJRlRfUk9VTkQoIHBzRW5jQ3RybC0+R2Fp
bnNfUTE2WyBrIF0sIDEgKSwgZ2Fpbl9tdWx0X1ExNiApID49ICggc2lsa19pbnQzMl9NQVggPj4g
MSApICkgewotICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSA9IHNpbGtf
aW50MzJfTUFYOworICAgICAgICAgICAgZ2Fpbl9tdWx0X1ExNiA9IHdhcnBlZF9nYWluKCBBUl9R
MjQsIHdhcnBpbmdfUTE2LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAg
ICAgIHNpbGtfYXNzZXJ0KCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID4gMCApOworICAgICAg
ICAgICAgaWYoIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0gPCBTSUxLX0ZJWF9DT05TVCggMC4y
NSwgMTYgKSApIHsKKyAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID0g
c2lsa19TTVVMV1coIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0sIGdhaW5fbXVsdF9RMTYgKTsK
ICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1Ex
NlsgayBdID0gc2lsa19TTVVMV1coIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0sIGdhaW5fbXVs
dF9RMTYgKTsKKyAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID0gc2ls
a19TTVVMV1coIHNpbGtfUlNISUZUX1JPVU5EKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdLCAx
ICksIGdhaW5fbXVsdF9RMTYgKTsKKyAgICAgICAgICAgICAgICBpZiAoIHBzRW5jQ3RybC0+R2Fp
bnNfUTE2WyBrIF0gPj0gKCBzaWxrX2ludDMyX01BWCA+PiAxICkgKSB7CisgICAgICAgICAgICAg
ICAgICAgIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0gPSBzaWxrX2ludDMyX01BWDsKKyAgICAg
ICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5z
X1ExNlsgayBdID0gc2lsa19MU0hJRlQzMiggcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSwgMSAp
OworICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHNpbGtfYXNz
ZXJ0KCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID4gMCApOwogICAgICAgICB9CiAKLSAgICAg
ICAgLyogQmFuZHdpZHRoIGV4cGFuc2lvbiBmb3Igc3ludGhlc2lzIGZpbHRlciBzaGFwaW5nICov
Ci0gICAgICAgIHNpbGtfYndleHBhbmRlcl8zMiggQVIyX1EyNCwgcHNFbmMtPnNDbW4uc2hhcGlu
Z0xQQ09yZGVyLCBCV0V4cDJfUTE2ICk7Ci0KLSAgICAgICAgLyogQ29tcHV0ZSBub2lzZSBzaGFw
aW5nIGZpbHRlciBjb2VmZmljaWVudHMgKi8KLSAgICAgICAgc2lsa19tZW1jcHkoIEFSMV9RMjQs
IEFSMl9RMjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciAqIHNpemVvZiggb3B1c19pbnQz
MiApICk7Ci0KLSAgICAgICAgLyogQmFuZHdpZHRoIGV4cGFuc2lvbiBmb3IgYW5hbHlzaXMgZmls
dGVyIHNoYXBpbmcgKi8KLSAgICAgICAgc2lsa19hc3NlcnQoIEJXRXhwMV9RMTYgPD0gU0lMS19G
SVhfQ09OU1QoIDEuMCwgMTYgKSApOwotICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfMzIoIEFSMV9R
MjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciwgQldFeHAxX1ExNiApOwotCi0gICAgICAg
IC8qIFJhdGlvIG9mIHByZWRpY3Rpb24gZ2FpbnMsIGluIGVuZXJneSBkb21haW4gKi8KLSAgICAg
ICAgcHJlX25yZ19RMzAgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoIEFSMl9RMjQs
IHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwotICAgICAgICBucmcgICAgICAgICA9IHNp
bGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX1EyNCggQVIxX1EyNCwgcHNFbmMtPnNDbW4uc2hhcGlu
Z0xQQ09yZGVyICk7Ci0KLSAgICAgICAgLypwc0VuY0N0cmwtPkdhaW5zUHJlWyBrIF0gPSAxLjBm
IC0gMC43ZiAqICggMS4wZiAtIHByZV9ucmcgLyBucmcgKSA9IDAuM2YgKyAwLjdmICogcHJlX25y
ZyAvIG5yZzsqLwotICAgICAgICBwcmVfbnJnX1EzMCA9IHNpbGtfTFNISUZUMzIoIHNpbGtfU01V
TFdCKCBwcmVfbnJnX1EzMCwgU0lMS19GSVhfQ09OU1QoIDAuNywgMTUgKSApLCAxICk7Ci0gICAg
ICAgIHBzRW5jQ3RybC0+R2FpbnNQcmVfUTE0WyBrIF0gPSAoIG9wdXNfaW50ICkgU0lMS19GSVhf
Q09OU1QoIDAuMywgMTQgKSArIHNpbGtfRElWMzJfdmFyUSggcHJlX25yZ19RMzAsIG5yZywgMTQg
KTsKKyAgICAgICAgLyogQmFuZHdpZHRoIGV4cGFuc2lvbiAqLworICAgICAgICBzaWxrX2J3ZXhw
YW5kZXJfMzIoIEFSX1EyNCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBCV0V4cF9RMTYg
KTsKIAotICAgICAgICAvKiBDb252ZXJ0IHRvIG1vbmljIHdhcnBlZCBwcmVkaWN0aW9uIGNvZWZm
aWNpZW50cyBhbmQgbGltaXQgYWJzb2x1dGUgdmFsdWVzICovCi0gICAgICAgIGxpbWl0X3dhcnBl
ZF9jb2VmcyggQVIyX1EyNCwgQVIxX1EyNCwgd2FycGluZ19RMTYsIFNJTEtfRklYX0NPTlNUKCAz
Ljk5OSwgMjQgKSwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAgICAgIGlmKCBw
c0VuYy0+c0Ntbi53YXJwaW5nX1ExNiA+IDAgKSB7CisgICAgICAgICAgICAvKiBDb252ZXJ0IHRv
IG1vbmljIHdhcnBlZCBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cyBhbmQgbGltaXQgYWJzb2x1dGUg
dmFsdWVzICovCisgICAgICAgICAgICBsaW1pdF93YXJwZWRfY29lZnMoIEFSX1EyNCwgd2FycGlu
Z19RMTYsIFNJTEtfRklYX0NPTlNUKCAzLjk5OSwgMjQgKSwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQ
Q09yZGVyICk7CiAKLSAgICAgICAgLyogQ29udmVydCBmcm9tIFEyNCB0byBRMTMgYW5kIHN0b3Jl
IGluIGludDE2ICovCi0gICAgICAgIGZvciggaSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5zaGFwaW5n
TFBDT3JkZXI7IGkrKyApIHsKLSAgICAgICAgICAgIHBzRW5jQ3RybC0+QVIxX1ExM1sgayAqIE1B
WF9TSEFQRV9MUENfT1JERVIgKyBpIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JT
SElGVF9ST1VORCggQVIxX1EyNFsgaSBdLCAxMSApICk7Ci0gICAgICAgICAgICBwc0VuY0N0cmwt
PkFSMl9RMTNbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSICsgaSBdID0gKG9wdXNfaW50MTYpc2ls
a19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIEFSMl9RMjRbIGkgXSwgMTEgKSApOworICAgICAg
ICAgICAgLyogQ29udmVydCBmcm9tIFEyNCB0byBRMTMgYW5kIHN0b3JlIGluIGludDE2ICovCisg
ICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyOyBp
KysgKSB7CisgICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5BUl9RMTNbIGsgKiBNQVhfU0hBUEVf
TFBDX09SREVSICsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9V
TkQoIEFSX1EyNFsgaSBdLCAxMSApICk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7
CisgICAgICAgICAgICBzaWxrX0xQQ19maXQoICZwc0VuY0N0cmwtPkFSX1ExM1sgayAqIE1BWF9T
SEFQRV9MUENfT1JERVIgXSwgQVJfUTI0LCAxMywgMjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENP
cmRlciApOwogICAgICAgICB9CiAgICAgfQogCkBAIC0zNjgsMTEgKzM0MCw2IEBAIHZvaWQgc2ls
a19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAgICAgICAgIHBzRW5jQ3RybC0+R2FpbnNfUTE2
WyBrIF0gPSBzaWxrX0FERF9QT1NfU0FUMzIoIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0sIGdh
aW5fYWRkX1ExNiApOwogICAgIH0KIAotICAgIGdhaW5fbXVsdF9RMTYgPSBTSUxLX0ZJWF9DT05T
VCggMS4wLCAxNiApICsgc2lsa19SU0hJRlRfUk9VTkQoIHNpbGtfTUxBKCBTSUxLX0ZJWF9DT05T
VCggSU5QVVRfVElMVCwgMjYgKSwKLSAgICAgICAgcHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eV9R
MTQsIFNJTEtfRklYX0NPTlNUKCBISUdIX1JBVEVfSU5QVVRfVElMVCwgMTIgKSApLCAxMCApOwot
ICAgIGZvciggayA9IDA7IGsgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaysrICkgewotICAgICAg
ICBwc0VuY0N0cmwtPkdhaW5zUHJlX1ExNFsgayBdID0gc2lsa19TTVVMV0IoIGdhaW5fbXVsdF9R
MTYsIHBzRW5jQ3RybC0+R2FpbnNQcmVfUTE0WyBrIF0gKTsKLSAgICB9CiAKICAgICAvKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIENvbnRy
b2wgbG93LWZyZXF1ZW5jeSBzaGFwaW5nIGFuZCBub2lzZSB0aWx0ICovCkBAIC00MTAsMTQgKzM3
Nyw2IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAgICAgLyoqKioqKioq
KioqKioqKioqKioqKioqKioqKiovCiAgICAgLyogSEFSTU9OSUMgU0hBUElORyBDT05UUk9MICov
CiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgLyogQ29udHJvbCBib29z
dGluZyBvZiBoYXJtb25pYyBmcmVxdWVuY2llcyAqLwotICAgIEhhcm1Cb29zdF9RMTYgPSBzaWxr
X1NNVUxXQiggc2lsa19TTVVMV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDE3ICkgLSBzaWxrX0xT
SElGVCggcHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eV9RMTQsIDMgKSwKLSAgICAgICAgcHNFbmMt
PkxUUENvcnJfUTE1ICksIFNJTEtfRklYX0NPTlNUKCBMT1dfUkFURV9IQVJNT05JQ19CT09TVCwg
MTYgKSApOwotCi0gICAgLyogTW9yZSBoYXJtb25pYyBib29zdCBmb3Igbm9pc3kgaW5wdXQgc2ln
bmFscyAqLwotICAgIEhhcm1Cb29zdF9RMTYgPSBzaWxrX1NNTEFXQiggSGFybUJvb3N0X1ExNiwK
LSAgICAgICAgU0lMS19GSVhfQ09OU1QoIDEuMCwgMTYgKSAtIHNpbGtfTFNISUZUKCBwc0VuY0N0
cmwtPmlucHV0X3F1YWxpdHlfUTE0LCAyICksIFNJTEtfRklYX0NPTlNUKCBMT1dfSU5QVVRfUVVB
TElUWV9IQVJNT05JQ19CT09TVCwgMTYgKSApOwotCiAgICAgaWYoIFVTRV9IQVJNX1NIQVBJTkcg
JiYgcHNFbmMtPnNDbW4uaW5kaWNlcy5zaWduYWxUeXBlID09IFRZUEVfVk9JQ0VEICkgewogICAg
ICAgICAvKiBNb3JlIGhhcm1vbmljIG5vaXNlIHNoYXBpbmcgZm9yIGhpZ2ggYml0cmF0ZXMgb3Ig
bm9pc3kgaW5wdXQgKi8KICAgICAgICAgSGFybVNoYXBlR2Fpbl9RMTYgPSBzaWxrX1NNTEFXQigg
U0lMS19GSVhfQ09OU1QoIEhBUk1PTklDX1NIQVBJTkcsIDE2ICksCkBAIC00MzUsMTQgKzM5NCwx
MSBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogICAgIC8qIFNtb290aCBv
dmVyIHN1YmZyYW1lcyAqLwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIGZv
ciggayA9IDA7IGsgPCBNQVhfTkJfU1VCRlI7IGsrKyApIHsKLSAgICAgICAgcHNTaGFwZVN0LT5I
YXJtQm9vc3Rfc210aF9RMTYgPQotICAgICAgICAgICAgc2lsa19TTUxBV0IoIHBzU2hhcGVTdC0+
SGFybUJvb3N0X3NtdGhfUTE2LCAgICAgSGFybUJvb3N0X1ExNiAgICAgLSBwc1NoYXBlU3QtPkhh
cm1Cb29zdF9zbXRoX1ExNiwgICAgIFNJTEtfRklYX0NPTlNUKCBTVUJGUl9TTVRIX0NPRUYsIDE2
ICkgKTsKICAgICAgICAgcHNTaGFwZVN0LT5IYXJtU2hhcGVHYWluX3NtdGhfUTE2ID0KICAgICAg
ICAgICAgIHNpbGtfU01MQVdCKCBwc1NoYXBlU3QtPkhhcm1TaGFwZUdhaW5fc210aF9RMTYsIEhh
cm1TaGFwZUdhaW5fUTE2IC0gcHNTaGFwZVN0LT5IYXJtU2hhcGVHYWluX3NtdGhfUTE2LCBTSUxL
X0ZJWF9DT05TVCggU1VCRlJfU01USF9DT0VGLCAxNiApICk7CiAgICAgICAgIHBzU2hhcGVTdC0+
VGlsdF9zbXRoX1ExNiA9CiAgICAgICAgICAgICBzaWxrX1NNTEFXQiggcHNTaGFwZVN0LT5UaWx0
X3NtdGhfUTE2LCAgICAgICAgICBUaWx0X1ExNiAgICAgICAgICAtIHBzU2hhcGVTdC0+VGlsdF9z
bXRoX1ExNiwgICAgICAgICAgU0lMS19GSVhfQ09OU1QoIFNVQkZSX1NNVEhfQ09FRiwgMTYgKSAp
OwogCi0gICAgICAgIHBzRW5jQ3RybC0+SGFybUJvb3N0X1ExNFsgayBdICAgICA9ICggb3B1c19p
bnQgKXNpbGtfUlNISUZUX1JPVU5EKCBwc1NoYXBlU3QtPkhhcm1Cb29zdF9zbXRoX1ExNiwgICAg
IDIgKTsKICAgICAgICAgcHNFbmNDdHJsLT5IYXJtU2hhcGVHYWluX1ExNFsgayBdID0gKCBvcHVz
X2ludCApc2lsa19SU0hJRlRfUk9VTkQoIHBzU2hhcGVTdC0+SGFybVNoYXBlR2Fpbl9zbXRoX1Ex
NiwgMiApOwogICAgICAgICBwc0VuY0N0cmwtPlRpbHRfUTE0WyBrIF0gICAgICAgICAgPSAoIG9w
dXNfaW50IClzaWxrX1JTSElGVF9ST1VORCggcHNTaGFwZVN0LT5UaWx0X3NtdGhfUTE2LCAgICAg
ICAgICAyICk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3BpdGNoX2FuYWx5c2lzX2Nv
cmVfRklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZml4ZWQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYwppbmRleCAwMWJi
OWZjMGE4MzdiNmMzNDkzM2ZjYjA2NmE3OTE4NzM1NDBkZWEzLi44ZGYxMDllNmNmNTExMDdlNDc3
NmM3MDNlMmE1NjJkODliODI2ZmVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvcGl0Y2hfYW5hbHlz
aXNfY29yZV9GSVguYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYwpA
QCAtODAsNyArODAsNyBAQCBzdGF0aWMgdm9pZCBzaWxrX1BfQW5hX2NhbGNfZW5lcmd5X3N0MygK
IC8qICAgICAgRklYRUQgUE9JTlQgQ09SRSBQSVRDSCBBTkFMWVNJUyBGVU5DVElPTiAgICAgICAg
ICAgICAqLwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKiovCiBvcHVzX2ludCBzaWxrX3BpdGNoX2FuYWx5c2lzX2NvcmUoICAgICAg
ICAgICAgICAgICAgLyogTyAgICBWb2ljaW5nIGVzdGltYXRlOiAwIHZvaWNlZCwgMSB1bnZvaWNl
ZCAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAg
ICAqZnJhbWUsICAgICAgICAgICAgIC8qIEkgICAgU2lnbmFsIG9mIGxlbmd0aCBQRV9GUkFNRV9M
RU5HVEhfTVMqRnNfa0h6ICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2
ICAgICAgICAgICAgKmZyYW1lX3Vuc2NhbGVkLCAgICAvKiBJICAgIFNpZ25hbCBvZiBsZW5ndGgg
UEVfRlJBTUVfTEVOR1RIX01TKkZzX2tIeiAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19p
bnQgICAgICAgICAgICAgICAgICAgICpwaXRjaF9vdXQsICAgICAgICAgLyogTyAgICA0IHBpdGNo
IGxhZyB2YWx1ZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqbGFnSW5kZXgsICAgICAgICAgIC8qIE8g
ICAgTGFnIEluZGV4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgKmNvbnRvdXJJbmRleCwg
ICAgICAvKiBPICAgIFBpdGNoIGNvbnRvdXIgSW5kZXggICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCkBAIC05NCwxNiArOTQsMTcgQEAgb3B1c19pbnQgc2lsa19waXRj
aF9hbmFseXNpc19jb3JlKCAgICAgICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0
ZTogMAogICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAg
IC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICkKIHsKLSAgICBWQVJERUNMKCBvcHVzX2ludDE2LCBmcmFtZV84a0h6
ICk7CisgICAgVkFSREVDTCggb3B1c19pbnQxNiwgZnJhbWVfOGtIel9idWYgKTsKICAgICBWQVJE
RUNMKCBvcHVzX2ludDE2LCBmcmFtZV80a0h6ICk7CisgICAgVkFSREVDTCggb3B1c19pbnQxNiwg
ZnJhbWVfc2NhbGVkICk7CiAgICAgb3B1c19pbnQzMiBmaWx0X3N0YXRlWyA2IF07Ci0gICAgY29u
c3Qgb3B1c19pbnQxNiAqaW5wdXRfZnJhbWVfcHRyOworICAgIGNvbnN0IG9wdXNfaW50MTYgKmZy
YW1lLCAqZnJhbWVfOGtIejsKICAgICBvcHVzX2ludCAgIGksIGssIGQsIGo7CiAgICAgVkFSREVD
TCggb3B1c19pbnQxNiwgQyApOwogICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIHhjb3JyMzIgKTsK
ICAgICBjb25zdCBvcHVzX2ludDE2ICp0YXJnZXRfcHRyLCAqYmFzaXNfcHRyOwotICAgIG9wdXNf
aW50MzIgY3Jvc3NfY29yciwgbm9ybWFsaXplciwgZW5lcmd5LCBzaGlmdCwgZW5lcmd5X2Jhc2lz
LCBlbmVyZ3lfdGFyZ2V0OwotICAgIG9wdXNfaW50ICAgZF9zcmNoWyBQRV9EX1NSQ0hfTEVOR1RI
IF0sIENtYXgsIGxlbmd0aF9kX3NyY2gsIGxlbmd0aF9kX2NvbXA7CisgICAgb3B1c19pbnQzMiBj
cm9zc19jb3JyLCBub3JtYWxpemVyLCBlbmVyZ3ksIGVuZXJneV9iYXNpcywgZW5lcmd5X3Rhcmdl
dDsKKyAgICBvcHVzX2ludCAgIGRfc3JjaFsgUEVfRF9TUkNIX0xFTkdUSCBdLCBDbWF4LCBsZW5n
dGhfZF9zcmNoLCBsZW5ndGhfZF9jb21wLCBzaGlmdDsKICAgICBWQVJERUNMKCBvcHVzX2ludDE2
LCBkX2NvbXAgKTsKICAgICBvcHVzX2ludDMyIHN1bSwgdGhyZXNob2xkLCBsYWdfY291bnRlcjsK
ICAgICBvcHVzX2ludCAgIENCaW1heCwgQ0JpbWF4X25ldywgQ0JpbWF4X29sZCwgbGFnLCBzdGFy
dF9sYWcsIGVuZF9sYWcsIGxhZ19uZXc7CkBAIC0xMTksNiArMTIwLDcgQEAgb3B1c19pbnQgc2ls
a19waXRjaF9hbmFseXNpc19jb3JlKCAgICAgICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBl
c3RpbWF0ZTogMAogICAgIG9wdXNfaW50MzIgZGVsdGFfbGFnX2xvZzJfc3FyX1E3LCBsYWdfbG9n
Ml9RNywgcHJldkxhZ19sb2cyX1E3LCBwcmV2X2xhZ19iaWFzX1ExMzsKICAgICBjb25zdCBvcHVz
X2ludDggKkxhZ19DQl9wdHI7CiAgICAgU0FWRV9TVEFDSzsKKwogICAgIC8qIENoZWNrIGZvciB2
YWxpZCBzYW1wbGluZyBmcmVxdWVuY3kgKi8KICAgICBzaWxrX2Fzc2VydCggRnNfa0h6ID09IDgg
fHwgRnNfa0h6ID09IDEyIHx8IEZzX2tIeiA9PSAxNiApOwogCkBAIC0xMzcsMTcgKzEzOSwzMyBA
QCBvcHVzX2ludCBzaWxrX3BpdGNoX2FuYWx5c2lzX2NvcmUoICAgICAgICAgICAgICAgICAgLyog
TyAgICBWb2ljaW5nIGVzdGltYXRlOiAwCiAgICAgbWluX2xhZyAgICAgICAgICAgPSBQRV9NSU5f
TEFHX01TICogRnNfa0h6OwogICAgIG1heF9sYWcgICAgICAgICAgID0gUEVfTUFYX0xBR19NUyAq
IEZzX2tIeiAtIDE7CiAKKyAgICAvKiBEb3duc2NhbGUgaW5wdXQgaWYgbmVjZXNzYXJ5ICovCisg
ICAgc2lsa19zdW1fc3FyX3NoaWZ0KCAmZW5lcmd5LCAmc2hpZnQsIGZyYW1lX3Vuc2NhbGVkLCBm
cmFtZV9sZW5ndGggKTsKKyAgICBzaGlmdCArPSAzIC0gc2lsa19DTFozMiggZW5lcmd5ICk7ICAg
ICAgICAvKiBhdCBsZWFzdCB0d28gYml0cyBoZWFkcm9vbSAqLworICAgIEFMTE9DKCBmcmFtZV9z
Y2FsZWQsIGZyYW1lX2xlbmd0aCwgb3B1c19pbnQxNiApOworICAgIGlmKCBzaGlmdCA+IDAgKSB7
CisgICAgICAgIHNoaWZ0ID0gc2lsa19SU0hJRlQoIHNoaWZ0ICsgMSwgMSApOworICAgICAgICBm
b3IoIGkgPSAwOyBpIDwgZnJhbWVfbGVuZ3RoOyBpKysgKSB7CisgICAgICAgICAgICBmcmFtZV9z
Y2FsZWRbIGkgXSA9IHNpbGtfUlNISUZUKCBmcmFtZV91bnNjYWxlZFsgaSBdLCBzaGlmdCApOwor
ICAgICAgICB9CisgICAgICAgIGZyYW1lID0gZnJhbWVfc2NhbGVkOworICAgIH0gZWxzZSB7Cisg
ICAgICAgIGZyYW1lID0gZnJhbWVfdW5zY2FsZWQ7CisgICAgfQorCisgICAgQUxMT0MoIGZyYW1l
XzhrSHpfYnVmLCAoIEZzX2tIeiA9PSA4ICkgPyAxIDogZnJhbWVfbGVuZ3RoXzhrSHosIG9wdXNf
aW50MTYgKTsKICAgICAvKiBSZXNhbXBsZSBmcm9tIGlucHV0IHNhbXBsZWQgYXQgRnNfa0h6IHRv
IDgga0h6ICovCi0gICAgQUxMT0MoIGZyYW1lXzhrSHosIGZyYW1lX2xlbmd0aF84a0h6LCBvcHVz
X2ludDE2ICk7CiAgICAgaWYoIEZzX2tIeiA9PSAxNiApIHsKICAgICAgICAgc2lsa19tZW1zZXQo
IGZpbHRfc3RhdGUsIDAsIDIgKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOwotICAgICAgICBzaWxr
X3Jlc2FtcGxlcl9kb3duMiggZmlsdF9zdGF0ZSwgZnJhbWVfOGtIeiwgZnJhbWUsIGZyYW1lX2xl
bmd0aCApOworICAgICAgICBzaWxrX3Jlc2FtcGxlcl9kb3duMiggZmlsdF9zdGF0ZSwgZnJhbWVf
OGtIel9idWYsIGZyYW1lLCBmcmFtZV9sZW5ndGggKTsKKyAgICAgICAgZnJhbWVfOGtIeiA9IGZy
YW1lXzhrSHpfYnVmOwogICAgIH0gZWxzZSBpZiggRnNfa0h6ID09IDEyICkgewogICAgICAgICBz
aWxrX21lbXNldCggZmlsdF9zdGF0ZSwgMCwgNiAqIHNpemVvZiggb3B1c19pbnQzMiApICk7Ci0g
ICAgICAgIHNpbGtfcmVzYW1wbGVyX2Rvd24yXzMoIGZpbHRfc3RhdGUsIGZyYW1lXzhrSHosIGZy
YW1lLCBmcmFtZV9sZW5ndGggKTsKKyAgICAgICAgc2lsa19yZXNhbXBsZXJfZG93bjJfMyggZmls
dF9zdGF0ZSwgZnJhbWVfOGtIel9idWYsIGZyYW1lLCBmcmFtZV9sZW5ndGggKTsKKyAgICAgICAg
ZnJhbWVfOGtIeiA9IGZyYW1lXzhrSHpfYnVmOwogICAgIH0gZWxzZSB7CiAgICAgICAgIHNpbGtf
YXNzZXJ0KCBGc19rSHogPT0gOCApOwotICAgICAgICBzaWxrX21lbWNweSggZnJhbWVfOGtIeiwg
ZnJhbWUsIGZyYW1lX2xlbmd0aF84a0h6ICogc2l6ZW9mKG9wdXNfaW50MTYpICk7CisgICAgICAg
IGZyYW1lXzhrSHogPSBmcmFtZTsKICAgICB9CiAKICAgICAvKiBEZWNpbWF0ZSBhZ2FpbiB0byA0
IGtIeiAqLwpAQCAtMTYwLDE5ICsxNzgsNiBAQCBvcHVzX2ludCBzaWxrX3BpdGNoX2FuYWx5c2lz
X2NvcmUoICAgICAgICAgICAgICAgICAgLyogTyAgICBWb2ljaW5nIGVzdGltYXRlOiAwCiAgICAg
ICAgIGZyYW1lXzRrSHpbIGkgXSA9IHNpbGtfQUREX1NBVDE2KCBmcmFtZV80a0h6WyBpIF0sIGZy
YW1lXzRrSHpbIGkgLSAxIF0gKTsKICAgICB9CiAKLSAgICAvKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KgotICAgICoqIFNjYWxlIDQga0h6IHNpZ25hbCBkb3duIHRvIHByZXZlbnQgY29ycmVsYXRpb25z
IG1lYXN1cmVzIGZyb20gb3ZlcmZsb3dpbmcKLSAgICAqKiBmaW5kIHNjYWxpbmcgYXMgbWF4IHNj
YWxpbmcgZm9yIGVhY2ggOGtIeig/KSBzdWJmcmFtZQotICAgICoqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KiovCi0KLSAgICAvKiBJbm5lciBwcm9kdWN0IGlzIGNhbGN1bGF0ZWQgd2l0aCBkaWZmZXJlbnQg
bGVuZ3Rocywgc28gc2NhbGUgZm9yIHRoZSB3b3JzdCBjYXNlICovCi0gICAgc2lsa19zdW1fc3Fy
X3NoaWZ0KCAmZW5lcmd5LCAmc2hpZnQsIGZyYW1lXzRrSHosIGZyYW1lX2xlbmd0aF80a0h6ICk7
Ci0gICAgaWYoIHNoaWZ0ID4gMCApIHsKLSAgICAgICAgc2hpZnQgPSBzaWxrX1JTSElGVCggc2hp
ZnQsIDEgKTsKLSAgICAgICAgZm9yKCBpID0gMDsgaSA8IGZyYW1lX2xlbmd0aF80a0h6OyBpKysg
KSB7Ci0gICAgICAgICAgICBmcmFtZV80a0h6WyBpIF0gPSBzaWxrX1JTSElGVCggZnJhbWVfNGtI
elsgaSBdLCBzaGlmdCApOwotICAgICAgICB9Ci0gICAgfQogCiAgICAgLyoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKgogICAgICogRklSU1QgU1RBR0UsIG9wZXJhdGluZyBpbiA0IGtoegpAQCAtMzExLDE4
ICszMTYsNiBAQCBvcHVzX2ludCBzaWxrX3BpdGNoX2FuYWx5c2lzX2NvcmUoICAgICAgICAgICAg
ICAgICAgLyogTyAgICBWb2ljaW5nIGVzdGltYXRlOiAwCiAgICAgKiogU0VDT05EIFNUQUdFLCBv
cGVyYXRpbmcgYXQgOCBrSHosIG9uIGxhZyBzZWN0aW9ucyB3aXRoIGhpZ2ggY29ycmVsYXRpb24K
ICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogCi0gICAgLyoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKgotICAgICoqIFNjYWxlIHNpZ25hbCBkb3duIHRvIGF2b2lkIGNvcnJlbGF0aW9ucyBt
ZWFzdXJlcyBmcm9tIG92ZXJmbG93aW5nCi0gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAg
ICAvKiBmaW5kIHNjYWxpbmcgYXMgbWF4IHNjYWxpbmcgZm9yIGVhY2ggc3ViZnJhbWUgKi8KLSAg
ICBzaWxrX3N1bV9zcXJfc2hpZnQoICZlbmVyZ3ksICZzaGlmdCwgZnJhbWVfOGtIeiwgZnJhbWVf
bGVuZ3RoXzhrSHogKTsKLSAgICBpZiggc2hpZnQgPiAwICkgewotICAgICAgICBzaGlmdCA9IHNp
bGtfUlNISUZUKCBzaGlmdCwgMSApOwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgZnJhbWVfbGVu
Z3RoXzhrSHo7IGkrKyApIHsKLSAgICAgICAgICAgIGZyYW1lXzhrSHpbIGkgXSA9IHNpbGtfUlNI
SUZUKCBmcmFtZV84a0h6WyBpIF0sIHNoaWZ0ICk7Ci0gICAgICAgIH0KLSAgICB9Ci0KICAgICAv
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqCiAgICAgKiBGaW5kIGVuZXJneSBvZiBlYWNoIHN1YmZy
YW1lIHByb2plY3RlZCBvbnRvIGl0cyBoaXN0b3J5LCBmb3IgYSByYW5nZSBvZiBkZWxheXMKICAg
ICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC00NjIsMjQgKzQ1NSw2IEBAIG9wdXNfaW50
IHNpbGtfcGl0Y2hfYW5hbHlzaXNfY29yZSggICAgICAgICAgICAgICAgICAvKiBPICAgIFZvaWNp
bmcgZXN0aW1hdGU6IDAKICAgICBzaWxrX2Fzc2VydCggKkxUUENvcnJfUTE1ID49IDAgKTsKIAog
ICAgIGlmKCBGc19rSHogPiA4ICkgewotICAgICAgICBWQVJERUNMKCBvcHVzX2ludDE2LCBzY3Jh
dGNoX21lbSApOwotICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICAvKiBTY2Fs
ZSBpbnB1dCBzaWduYWwgZG93biB0byBhdm9pZCBjb3JyZWxhdGlvbnMgbWVhc3VyZXMgZnJvbSBv
dmVyZmxvd2luZyAqLwotICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICAvKiBm
aW5kIHNjYWxpbmcgYXMgbWF4IHNjYWxpbmcgZm9yIGVhY2ggc3ViZnJhbWUgKi8KLSAgICAgICAg
c2lsa19zdW1fc3FyX3NoaWZ0KCAmZW5lcmd5LCAmc2hpZnQsIGZyYW1lLCBmcmFtZV9sZW5ndGgg
KTsKLSAgICAgICAgQUxMT0MoIHNjcmF0Y2hfbWVtLCBzaGlmdCA+IDAgPyBmcmFtZV9sZW5ndGgg
OiBBTExPQ19OT05FLCBvcHVzX2ludDE2ICk7Ci0gICAgICAgIGlmKCBzaGlmdCA+IDAgKSB7Ci0g
ICAgICAgICAgICAvKiBNb3ZlIHNpZ25hbCB0byBzY3JhdGNoIG1lbSBiZWNhdXNlIHRoZSBpbnB1
dCBzaWduYWwgc2hvdWxkIGJlIHVuY2hhbmdlZCAqLwotICAgICAgICAgICAgc2hpZnQgPSBzaWxr
X1JTSElGVCggc2hpZnQsIDEgKTsKLSAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBmcmFtZV9s
ZW5ndGg7IGkrKyApIHsKLSAgICAgICAgICAgICAgICBzY3JhdGNoX21lbVsgaSBdID0gc2lsa19S
U0hJRlQoIGZyYW1lWyBpIF0sIHNoaWZ0ICk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBp
bnB1dF9mcmFtZV9wdHIgPSBzY3JhdGNoX21lbTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAg
ICAgIGlucHV0X2ZyYW1lX3B0ciA9IGZyYW1lOwotICAgICAgICB9Ci0KICAgICAgICAgLyogU2Vh
cmNoIGluIG9yaWdpbmFsIHNpZ25hbCAqLwogCiAgICAgICAgIENCaW1heF9vbGQgPSBDQmltYXg7
CkBAIC01MTksMTQgKzQ5NCwxNCBAQCBvcHVzX2ludCBzaWxrX3BpdGNoX2FuYWx5c2lzX2NvcmUo
ICAgICAgICAgICAgICAgICAgLyogTyAgICBWb2ljaW5nIGVzdGltYXRlOiAwCiAgICAgICAgIC8q
IENhbGN1bGF0ZSB0aGUgY29ycmVsYXRpb25zIGFuZCBlbmVyZ2llcyBuZWVkZWQgaW4gc3RhZ2Ug
MyAqLwogICAgICAgICBBTExPQyggZW5lcmdpZXNfc3QzLCBuYl9zdWJmciAqIG5iX2Nia19zZWFy
Y2gsIHNpbGtfcGVfc3RhZ2UzX3ZhbHMgKTsKICAgICAgICAgQUxMT0MoIGNyb3NzX2NvcnJfc3Qz
LCBuYl9zdWJmciAqIG5iX2Nia19zZWFyY2gsIHNpbGtfcGVfc3RhZ2UzX3ZhbHMgKTsKLSAgICAg
ICAgc2lsa19QX0FuYV9jYWxjX2NvcnJfc3QzKCAgY3Jvc3NfY29ycl9zdDMsIGlucHV0X2ZyYW1l
X3B0ciwgc3RhcnRfbGFnLCBzZl9sZW5ndGgsIG5iX3N1YmZyLCBjb21wbGV4aXR5LCBhcmNoICk7
Ci0gICAgICAgIHNpbGtfUF9BbmFfY2FsY19lbmVyZ3lfc3QzKCBlbmVyZ2llc19zdDMsIGlucHV0
X2ZyYW1lX3B0ciwgc3RhcnRfbGFnLCBzZl9sZW5ndGgsIG5iX3N1YmZyLCBjb21wbGV4aXR5LCBh
cmNoICk7CisgICAgICAgIHNpbGtfUF9BbmFfY2FsY19jb3JyX3N0MyggIGNyb3NzX2NvcnJfc3Qz
LCBmcmFtZSwgc3RhcnRfbGFnLCBzZl9sZW5ndGgsIG5iX3N1YmZyLCBjb21wbGV4aXR5LCBhcmNo
ICk7CisgICAgICAgIHNpbGtfUF9BbmFfY2FsY19lbmVyZ3lfc3QzKCBlbmVyZ2llc19zdDMsIGZy
YW1lLCBzdGFydF9sYWcsIHNmX2xlbmd0aCwgbmJfc3ViZnIsIGNvbXBsZXhpdHksIGFyY2ggKTsK
IAogICAgICAgICBsYWdfY291bnRlciA9IDA7CiAgICAgICAgIHNpbGtfYXNzZXJ0KCBsYWcgPT0g
c2lsa19TQVQxNiggbGFnICkgKTsKICAgICAgICAgY29udG91cl9iaWFzX1ExNSA9IHNpbGtfRElW
MzJfMTYoIFNJTEtfRklYX0NPTlNUKCBQRV9GTEFUQ09OVE9VUl9CSUFTLCAxNSApLCBsYWcgKTsK
IAotICAgICAgICB0YXJnZXRfcHRyID0gJmlucHV0X2ZyYW1lX3B0clsgUEVfTFRQX01FTV9MRU5H
VEhfTVMgKiBGc19rSHogXTsKKyAgICAgICAgdGFyZ2V0X3B0ciA9ICZmcmFtZVsgUEVfTFRQX01F
TV9MRU5HVEhfTVMgKiBGc19rSHogXTsKICAgICAgICAgZW5lcmd5X3RhcmdldCA9IHNpbGtfQURE
MzIoIHNpbGtfaW5uZXJfcHJvZF9hbGlnbmVkKCB0YXJnZXRfcHRyLCB0YXJnZXRfcHRyLCBuYl9z
dWJmciAqIHNmX2xlbmd0aCwgYXJjaCApLCAxICk7CiAgICAgICAgIGZvciggZCA9IHN0YXJ0X2xh
ZzsgZCA8PSBlbmRfbGFnOyBkKysgKSB7CiAgICAgICAgICAgICBmb3IoIGogPSAwOyBqIDwgbmJf
Y2JrX3NlYXJjaDsgaisrICkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3ByZWZpbHRlcl9GSVgu
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9maXhlZC9wcmVmaWx0ZXJfRklYLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDZhOGUzNTE1MmVmYmQ2ZDBiMTcyMjdhYTc1MjVhM2EyM2RlZTkyNTQuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3ByZWZpbHRlcl9G
SVguYworKysgL2Rldi9udWxsCkBAIC0xLDIyMSArMCwwIEBACi0vKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLUNv
cHlyaWdodCAoYykgMjAwNi0yMDExLCBTa3lwZSBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgotUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0tIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKLXRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0tIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0Ci1ub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCi1kb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVy
bmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQotbmFtZXMgb2Ygc3BlY2lm
aWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKLXByb2R1
Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3Jp
dHRlbgotcGVybWlzc2lvbi4KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgotQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQot
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UKLUFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
Q09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQotTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKLVNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUwotSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLUNPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi1BUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRQotUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
Ki8KLQotI2lmZGVmIEhBVkVfQ09ORklHX0gKLSNpbmNsdWRlICJjb25maWcuaCIKLSNlbmRpZgot
Ci0jaW5jbHVkZSAibWFpbl9GSVguaCIKLSNpbmNsdWRlICJzdGFja19hbGxvYy5oIgotI2luY2x1
ZGUgInR1bmluZ19wYXJhbWV0ZXJzLmgiCi0KLSNpZiBkZWZpbmVkKE1JUFNyMV9BU00pCi0jaW5j
bHVkZSAibWlwcy9wcmVmaWx0ZXJfRklYX21pcHNyMS5oIgotI2VuZGlmCi0KLQotI2lmICFkZWZp
bmVkKE9WRVJSSURFX3NpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYKQotI2RlZmlu
ZSBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWChzdGF0ZSwgcmVzX1EyLCBjb2Vm
X1ExMywgaW5wdXQsIGxhbWJkYV9RMTYsIGxlbmd0aCwgb3JkZXIsIGFyY2gpIFwKLSAgICAoKHZv
aWQpKGFyY2gpLHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYX2Moc3RhdGUsIHJl
c19RMiwgY29lZl9RMTMsIGlucHV0LCBsYW1iZGFfUTE2LCBsZW5ndGgsIG9yZGVyKSkKLSNlbmRp
ZgotCi0vKiBQcmVmaWx0ZXIgZm9yIGZpbmRpbmcgUXVhbnRpemVyIGlucHV0IHNpZ25hbCAqLwot
c3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19wcmVmaWx0X0ZJWCgKLSAgICBzaWxrX3ByZWZp
bHRlcl9zdGF0ZV9GSVggICAgKlAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgc3Rh
dGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAg
ICAgICAgICAgICAgc3RfcmVzX1ExMltdLCAgICAgICAgICAgICAgIC8qIEkgICAgc2hvcnQgdGVy
bSByZXNpZHVhbCBzaWduYWwgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAg
ICAgICAgeHdfUTNbXSwgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgcHJlZmlsdGVyZWQgc2ln
bmFsICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAg
SGFybVNoYXBlRklSUGFja2VkX1ExMiwgICAgIC8qIEkgICAgSGFybW9uaWMgc2hhcGluZyBjb2Vm
aWNpZW50cyAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgVGlsdF9R
MTQsICAgICAgICAgICAgICAgICAgIC8qIEkgICAgVGlsdCBzaGFwaW5nIGNvZWZpY2llbnQgICAg
ICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgTEZfc2hwX1ExNCwg
ICAgICAgICAgICAgICAgIC8qIEkgICAgTG93LWZyZXF1YW5jeSBzaGFwaW5nIGNvZWZpY2llbnRz
ICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbGFnLCAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgTGFnIGZvciBoYXJtb25pYyBzaGFwaW5nICAgICAgICAgICAgKi8K
LSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbGVuZ3RoICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgTGVuZ3RoIG9mIHNpZ25hbHMgICAgICAgICAgICAgICAgICAgKi8KLSk7Ci0K
LXZvaWQgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GSVhfYygKLSAgICAgICAgICBv
cHVzX2ludDMyICAgICAgICAgICAgc3RhdGVbXSwgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAg
U3RhdGUgW29yZGVyICsgMV0gICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICBvcHVzX2lu
dDMyICAgICAgICAgICAgcmVzX1EyW10sICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmVzaWR1
YWwgc2lnbmFsIFtsZW5ndGhdICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgY29lZl9RMTNbXSwgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29lZmZpY2llbnRz
IFtvcmRlcl0gICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAg
ICAgaW5wdXRbXSwgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgc2lnbmFsIFtsZW5n
dGhdICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgbGFt
YmRhX1ExNiwgICAgICAgICAgICAgICAgIC8qIEkgICAgV2FycGluZyBmYWN0b3IgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgbGVuZ3RoLCAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTGVuZ3RoIG9mIGlucHV0IHNpZ25hbCAgICAgICAg
ICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgRmlsdGVyIG9yZGVyIChldmVuKSAgICAgICAgICAgICAgICAg
Ki8KLSkKLXsKLSAgICBvcHVzX2ludCAgICAgbiwgaTsKLSAgICBvcHVzX2ludDMyICAgYWNjX1Ex
MSwgdG1wMSwgdG1wMjsKLQotICAgIC8qIE9yZGVyIG11c3QgYmUgZXZlbiAqLwotICAgIHNpbGtf
YXNzZXJ0KCAoIG9yZGVyICYgMSApID09IDAgKTsKLQotICAgIGZvciggbiA9IDA7IG4gPCBsZW5n
dGg7IG4rKyApIHsKLSAgICAgICAgLyogT3V0cHV0IG9mIGxvd3Bhc3Mgc2VjdGlvbiAqLwotICAg
ICAgICB0bXAyID0gc2lsa19TTUxBV0IoIHN0YXRlWyAwIF0sIHN0YXRlWyAxIF0sIGxhbWJkYV9R
MTYgKTsKLSAgICAgICAgc3RhdGVbIDAgXSA9IHNpbGtfTFNISUZUKCBpbnB1dFsgbiBdLCAxNCAp
OwotICAgICAgICAvKiBPdXRwdXQgb2YgYWxscGFzcyBzZWN0aW9uICovCi0gICAgICAgIHRtcDEg
PSBzaWxrX1NNTEFXQiggc3RhdGVbIDEgXSwgc3RhdGVbIDIgXSAtIHRtcDIsIGxhbWJkYV9RMTYg
KTsKLSAgICAgICAgc3RhdGVbIDEgXSA9IHRtcDI7Ci0gICAgICAgIGFjY19RMTEgPSBzaWxrX1JT
SElGVCggb3JkZXIsIDEgKTsKLSAgICAgICAgYWNjX1ExMSA9IHNpbGtfU01MQVdCKCBhY2NfUTEx
LCB0bXAyLCBjb2VmX1ExM1sgMCBdICk7Ci0gICAgICAgIC8qIExvb3Agb3ZlciBhbGxwYXNzIHNl
Y3Rpb25zICovCi0gICAgICAgIGZvciggaSA9IDI7IGkgPCBvcmRlcjsgaSArPSAyICkgewotICAg
ICAgICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwotICAgICAgICAgICAgdG1w
MiA9IHNpbGtfU01MQVdCKCBzdGF0ZVsgaSBdLCBzdGF0ZVsgaSArIDEgXSAtIHRtcDEsIGxhbWJk
YV9RMTYgKTsKLSAgICAgICAgICAgIHN0YXRlWyBpIF0gPSB0bXAxOwotICAgICAgICAgICAgYWNj
X1ExMSA9IHNpbGtfU01MQVdCKCBhY2NfUTExLCB0bXAxLCBjb2VmX1ExM1sgaSAtIDEgXSApOwot
ICAgICAgICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwotICAgICAgICAgICAg
dG1wMSA9IHNpbGtfU01MQVdCKCBzdGF0ZVsgaSArIDEgXSwgc3RhdGVbIGkgKyAyIF0gLSB0bXAy
LCBsYW1iZGFfUTE2ICk7Ci0gICAgICAgICAgICBzdGF0ZVsgaSArIDEgXSA9IHRtcDI7Ci0gICAg
ICAgICAgICBhY2NfUTExID0gc2lsa19TTUxBV0IoIGFjY19RMTEsIHRtcDIsIGNvZWZfUTEzWyBp
IF0gKTsKLSAgICAgICAgfQotICAgICAgICBzdGF0ZVsgb3JkZXIgXSA9IHRtcDE7Ci0gICAgICAg
IGFjY19RMTEgPSBzaWxrX1NNTEFXQiggYWNjX1ExMSwgdG1wMSwgY29lZl9RMTNbIG9yZGVyIC0g
MSBdICk7Ci0gICAgICAgIHJlc19RMlsgbiBdID0gc2lsa19MU0hJRlQoIChvcHVzX2ludDMyKWlu
cHV0WyBuIF0sIDIgKSAtIHNpbGtfUlNISUZUX1JPVU5EKCBhY2NfUTExLCA5ICk7Ci0gICAgfQot
fQotCi12b2lkIHNpbGtfcHJlZmlsdGVyX0ZJWCgKLSAgICBzaWxrX2VuY29kZXJfc3RhdGVfRklY
ICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08g
IEVuY29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZJ
WCAgKnBzRW5jQ3RybCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2Rl
ciBjb250cm9sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICB4d19R
M1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBXZWlnaHRlZCBzaWdu
YWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgIHhbXSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNwZWVjaCBzaWduYWwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotKQotewotICAgIHNpbGtfcHJlZmlsdGVyX3N0YXRlX0ZJWCAqUCA9ICZwc0VuYy0+c1ByZWZp
bHQ7Ci0gICAgb3B1c19pbnQgICBqLCBrLCBsYWc7Ci0gICAgb3B1c19pbnQzMiB0bXBfMzI7Ci0g
ICAgY29uc3Qgb3B1c19pbnQxNiAqQVIxX3NocF9RMTM7Ci0gICAgY29uc3Qgb3B1c19pbnQxNiAq
cHg7Ci0gICAgb3B1c19pbnQzMiAqcHh3X1EzOwotICAgIG9wdXNfaW50ICAgSGFybVNoYXBlR2Fp
bl9RMTIsIFRpbHRfUTE0OwotICAgIG9wdXNfaW50MzIgSGFybVNoYXBlRklSUGFja2VkX1ExMiwg
TEZfc2hwX1ExNDsKLSAgICBWQVJERUNMKCBvcHVzX2ludDMyLCB4X2ZpbHRfUTEyICk7Ci0gICAg
VkFSREVDTCggb3B1c19pbnQzMiwgc3RfcmVzX1EyICk7Ci0gICAgb3B1c19pbnQxNiBCX1ExMFsg
MiBdOwotICAgIFNBVkVfU1RBQ0s7Ci0KLSAgICAvKiBTZXQgdXAgcG9pbnRlcnMgKi8KLSAgICBw
eCAgPSB4OwotICAgIHB4d19RMyA9IHh3X1EzOwotICAgIGxhZyA9IFAtPmxhZ1ByZXY7Ci0gICAg
QUxMT0MoIHhfZmlsdF9RMTIsIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCwgb3B1c19pbnQzMiAp
OwotICAgIEFMTE9DKCBzdF9yZXNfUTIsIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCwgb3B1c19p
bnQzMiApOwotICAgIGZvciggayA9IDA7IGsgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaysrICkg
ewotICAgICAgICAvKiBVcGRhdGUgVmFyaWFibGVzIHRoYXQgY2hhbmdlIHBlciBzdWIgZnJhbWUg
Ki8KLSAgICAgICAgaWYoIHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9PSBUWVBFX1ZP
SUNFRCApIHsKLSAgICAgICAgICAgIGxhZyA9IHBzRW5jQ3RybC0+cGl0Y2hMWyBrIF07Ci0gICAg
ICAgIH0KLQotICAgICAgICAvKiBOb2lzZSBzaGFwZSBwYXJhbWV0ZXJzICovCi0gICAgICAgIEhh
cm1TaGFwZUdhaW5fUTEyID0gc2lsa19TTVVMV0IoIChvcHVzX2ludDMyKXBzRW5jQ3RybC0+SGFy
bVNoYXBlR2Fpbl9RMTRbIGsgXSwgMTYzODQgLSBwc0VuY0N0cmwtPkhhcm1Cb29zdF9RMTRbIGsg
XSApOwotICAgICAgICBzaWxrX2Fzc2VydCggSGFybVNoYXBlR2Fpbl9RMTIgPj0gMCApOwotICAg
ICAgICBIYXJtU2hhcGVGSVJQYWNrZWRfUTEyICA9ICAgICAgICAgICAgICAgICAgICAgICAgICBz
aWxrX1JTSElGVCggSGFybVNoYXBlR2Fpbl9RMTIsIDIgKTsKLSAgICAgICAgSGFybVNoYXBlRklS
UGFja2VkX1ExMiB8PSBzaWxrX0xTSElGVCggKG9wdXNfaW50MzIpc2lsa19SU0hJRlQoIEhhcm1T
aGFwZUdhaW5fUTEyLCAxICksIDE2ICk7Ci0gICAgICAgIFRpbHRfUTE0ICAgID0gcHNFbmNDdHJs
LT5UaWx0X1ExNFsgICBrIF07Ci0gICAgICAgIExGX3NocF9RMTQgID0gcHNFbmNDdHJsLT5MRl9z
aHBfUTE0WyBrIF07Ci0gICAgICAgIEFSMV9zaHBfUTEzID0gJnBzRW5jQ3RybC0+QVIxX1ExM1sg
ICBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwotCi0gICAgICAgIC8qIFNob3J0IHRlcm0gRklS
IGZpbHRlcmluZyovCi0gICAgICAgIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklY
KCBQLT5zQVJfc2hwLCBzdF9yZXNfUTIsIEFSMV9zaHBfUTEzLCBweCwKLSAgICAgICAgICAgIHBz
RW5jLT5zQ21uLndhcnBpbmdfUTE2LCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGgsIHBzRW5jLT5z
Q21uLnNoYXBpbmdMUENPcmRlciwgcHNFbmMtPnNDbW4uYXJjaCApOwotCi0gICAgICAgIC8qIFJl
ZHVjZSAobWFpbmx5KSBsb3cgZnJlcXVlbmNpZXMgZHVyaW5nIGhhcm1vbmljIGVtcGhhc2lzICov
Ci0gICAgICAgIEJfUTEwWyAwIF0gPSBzaWxrX1JTSElGVF9ST1VORCggcHNFbmNDdHJsLT5HYWlu
c1ByZV9RMTRbIGsgXSwgNCApOwotICAgICAgICB0bXBfMzIgPSBzaWxrX1NNTEFCQiggU0lMS19G
SVhfQ09OU1QoIElOUFVUX1RJTFQsIDI2ICksIHBzRW5jQ3RybC0+SGFybUJvb3N0X1ExNFsgayBd
LCBIYXJtU2hhcGVHYWluX1ExMiApOyAgIC8qIFEyNiAqLwotICAgICAgICB0bXBfMzIgPSBzaWxr
X1NNTEFCQiggdG1wXzMyLCBwc0VuY0N0cmwtPmNvZGluZ19xdWFsaXR5X1ExNCwgU0lMS19GSVhf
Q09OU1QoIEhJR0hfUkFURV9JTlBVVF9USUxULCAxMiApICk7ICAgIC8qIFEyNiAqLwotICAgICAg
ICB0bXBfMzIgPSBzaWxrX1NNVUxXQiggdG1wXzMyLCAtcHNFbmNDdHJsLT5HYWluc1ByZV9RMTRb
IGsgXSApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IFEyNCAqLwotICAgICAgICB0bXBfMzIgPSBzaWxrX1JTSElGVF9ST1VORCggdG1wXzMyLCAxNCAp
OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIFExMCAqLwotICAgICAgICBCX1ExMFsgMSBdPSBzaWxrX1NBVDE2KCB0
bXBfMzIgKTsKLSAgICAgICAgeF9maWx0X1ExMlsgMCBdID0gc2lsa19NTEEoIHNpbGtfTVVMKCBz
dF9yZXNfUTJbIDAgXSwgQl9RMTBbIDAgXSApLCBQLT5zSGFybUhQX1EyLCBCX1ExMFsgMSBdICk7
Ci0gICAgICAgIGZvciggaiA9IDE7IGogPCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7IGorKyAp
IHsKLSAgICAgICAgICAgIHhfZmlsdF9RMTJbIGogXSA9IHNpbGtfTUxBKCBzaWxrX01VTCggc3Rf
cmVzX1EyWyBqIF0sIEJfUTEwWyAwIF0gKSwgc3RfcmVzX1EyWyBqIC0gMSBdLCBCX1ExMFsgMSBd
ICk7Ci0gICAgICAgIH0KLSAgICAgICAgUC0+c0hhcm1IUF9RMiA9IHN0X3Jlc19RMlsgcHNFbmMt
PnNDbW4uc3ViZnJfbGVuZ3RoIC0gMSBdOwotCi0gICAgICAgIHNpbGtfcHJlZmlsdF9GSVgoIFAs
IHhfZmlsdF9RMTIsIHB4d19RMywgSGFybVNoYXBlRklSUGFja2VkX1ExMiwgVGlsdF9RMTQsIExG
X3NocF9RMTQsIGxhZywgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoICk7Ci0KLSAgICAgICAgcHgg
ICs9IHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aDsKLSAgICAgICAgcHh3X1EzICs9IHBzRW5jLT5z
Q21uLnN1YmZyX2xlbmd0aDsKLSAgICB9Ci0KLSAgICBQLT5sYWdQcmV2ID0gcHNFbmNDdHJsLT5w
aXRjaExbIHBzRW5jLT5zQ21uLm5iX3N1YmZyIC0gMSBdOwotICAgIFJFU1RPUkVfU1RBQ0s7Ci19
Ci0KLSNpZm5kZWYgT1ZFUlJJREVfc2lsa19wcmVmaWx0X0ZJWAotLyogUHJlZmlsdGVyIGZvciBm
aW5kaW5nIFF1YW50aXplciBpbnB1dCBzaWduYWwgKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lk
IHNpbGtfcHJlZmlsdF9GSVgoCi0gICAgc2lsa19wcmVmaWx0ZXJfc3RhdGVfRklYICAgICpQLCAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIHN0YXRlICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHN0X3Jlc19RMTJb
XSwgICAgICAgICAgICAgICAvKiBJICAgIHNob3J0IHRlcm0gcmVzaWR1YWwgc2lnbmFsICAgICAg
ICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHh3X1EzW10sICAgICAgICAg
ICAgICAgICAgICAvKiBPICAgIHByZWZpbHRlcmVkIHNpZ25hbCAgICAgICAgICAgICAgICAgICov
Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTIs
ICAgICAvKiBJICAgIEhhcm1vbmljIHNoYXBpbmcgY29lZmljaWVudHMgICAgICAgICovCi0gICAg
b3B1c19pbnQgICAgICAgICAgICAgICAgICAgIFRpbHRfUTE0LCAgICAgICAgICAgICAgICAgICAv
KiBJICAgIFRpbHQgc2hhcGluZyBjb2VmaWNpZW50ICAgICAgICAgICAgICovCi0gICAgb3B1c19p
bnQzMiAgICAgICAgICAgICAgICAgIExGX3NocF9RMTQsICAgICAgICAgICAgICAgICAvKiBJICAg
IExvdy1mcmVxdWFuY3kgc2hhcGluZyBjb2VmaWNpZW50cyAgICovCi0gICAgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICAgIGxhZywgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExhZyBm
b3IgaGFybW9uaWMgc2hhcGluZyAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAg
ICAgICAgICAgIGxlbmd0aCAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBz
aWduYWxzICAgICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICBpLCBpZHgs
IExUUF9zaHBfYnVmX2lkeDsKLSAgICBvcHVzX2ludDMyIG5fTFRQX1ExMiwgbl9UaWx0X1ExMCwg
bl9MRl9RMTA7Ci0gICAgb3B1c19pbnQzMiBzTEZfTUFfc2hwX1ExMiwgc0xGX0FSX3NocF9RMTI7
Ci0gICAgb3B1c19pbnQxNiAqTFRQX3NocF9idWY7Ci0KLSAgICAvKiBUbyBzcGVlZCB1cCB1c2Ug
dGVtcCB2YXJpYWJsZXMgaW5zdGVhZCBvZiB1c2luZyB0aGUgc3RydWN0ICovCi0gICAgTFRQX3No
cF9idWYgICAgID0gUC0+c0xUUF9zaHA7Ci0gICAgTFRQX3NocF9idWZfaWR4ID0gUC0+c0xUUF9z
aHBfYnVmX2lkeDsKLSAgICBzTEZfQVJfc2hwX1ExMiAgPSBQLT5zTEZfQVJfc2hwX1ExMjsKLSAg
ICBzTEZfTUFfc2hwX1ExMiAgPSBQLT5zTEZfTUFfc2hwX1ExMjsKLQotICAgIGZvciggaSA9IDA7
IGkgPCBsZW5ndGg7IGkrKyApIHsKLSAgICAgICAgaWYoIGxhZyA+IDAgKSB7Ci0gICAgICAgICAg
ICAvKiB1bnJvbGxlZCBsb29wICovCi0gICAgICAgICAgICBzaWxrX2Fzc2VydCggSEFSTV9TSEFQ
RV9GSVJfVEFQUyA9PSAzICk7Ci0gICAgICAgICAgICBpZHggPSBsYWcgKyBMVFBfc2hwX2J1Zl9p
ZHg7Ci0gICAgICAgICAgICBuX0xUUF9RMTIgPSBzaWxrX1NNVUxCQiggICAgICAgICAgICBMVFBf
c2hwX2J1ZlsgKCBpZHggLSBIQVJNX1NIQVBFX0ZJUl9UQVBTIC8gMiAtIDEpICYgTFRQX01BU0sg
XSwgSGFybVNoYXBlRklSUGFja2VkX1ExMiApOwotICAgICAgICAgICAgbl9MVFBfUTEyID0gc2ls
a19TTUxBQlQoIG5fTFRQX1ExMiwgTFRQX3NocF9idWZbICggaWR4IC0gSEFSTV9TSEFQRV9GSVJf
VEFQUyAvIDIgICAgKSAmIExUUF9NQVNLIF0sIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTIgKTsKLSAg
ICAgICAgICAgIG5fTFRQX1ExMiA9IHNpbGtfU01MQUJCKCBuX0xUUF9RMTIsIExUUF9zaHBfYnVm
WyAoIGlkeCAtIEhBUk1fU0hBUEVfRklSX1RBUFMgLyAyICsgMSkgJiBMVFBfTUFTSyBdLCBIYXJt
U2hhcGVGSVJQYWNrZWRfUTEyICk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBuX0xU
UF9RMTIgPSAwOwotICAgICAgICB9Ci0KLSAgICAgICAgbl9UaWx0X1ExMCA9IHNpbGtfU01VTFdC
KCBzTEZfQVJfc2hwX1ExMiwgVGlsdF9RMTQgKTsKLSAgICAgICAgbl9MRl9RMTAgICA9IHNpbGtf
U01MQVdCKCBzaWxrX1NNVUxXVCggc0xGX0FSX3NocF9RMTIsIExGX3NocF9RMTQgKSwgc0xGX01B
X3NocF9RMTIsIExGX3NocF9RMTQgKTsKLQotICAgICAgICBzTEZfQVJfc2hwX1ExMiA9IHNpbGtf
U1VCMzIoIHN0X3Jlc19RMTJbIGkgXSwgc2lsa19MU0hJRlQoIG5fVGlsdF9RMTAsIDIgKSApOwot
ICAgICAgICBzTEZfTUFfc2hwX1ExMiA9IHNpbGtfU1VCMzIoIHNMRl9BUl9zaHBfUTEyLCAgc2ls
a19MU0hJRlQoIG5fTEZfUTEwLCAgIDIgKSApOwotCi0gICAgICAgIExUUF9zaHBfYnVmX2lkeCA9
ICggTFRQX3NocF9idWZfaWR4IC0gMSApICYgTFRQX01BU0s7Ci0gICAgICAgIExUUF9zaHBfYnVm
WyBMVFBfc2hwX2J1Zl9pZHggXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZU
X1JPVU5EKCBzTEZfTUFfc2hwX1ExMiwgMTIgKSApOwotCi0gICAgICAgIHh3X1EzW2ldID0gc2ls
a19SU0hJRlRfUk9VTkQoIHNpbGtfU1VCMzIoIHNMRl9NQV9zaHBfUTEyLCBuX0xUUF9RMTIgKSwg
OSApOwotICAgIH0KLQotICAgIC8qIENvcHkgdGVtcCB2YXJpYWJsZSBiYWNrIHRvIHN0YXRlICov
Ci0gICAgUC0+c0xGX0FSX3NocF9RMTIgICA9IHNMRl9BUl9zaHBfUTEyOwotICAgIFAtPnNMRl9N
QV9zaHBfUTEyICAgPSBzTEZfTUFfc2hwX1ExMjsKLSAgICBQLT5zTFRQX3NocF9idWZfaWR4ID0g
TFRQX3NocF9idWZfaWR4OwotfQotI2VuZGlmIC8qIE9WRVJSSURFX3NpbGtfcHJlZmlsdF9GSVgg
Ki8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zY2h1cjY0X0ZJWC5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NjaHVy
NjRfRklYLmMKaW5kZXggNzY0YTEwZWYzZWE1ZDJhMmY2ODU0ZjNhZTUzNDE1MWE1MWEwMThiYy4u
YjJjYjEyZDliMTYwYTA3MTVmODhlNzI0MzllNWEwMzZiODYyOGFjNSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2ZpeGVkL3NjaHVyNjRfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NjaHVyNjRfRklYLmMKQEAgLTQz
LDcgKzQzLDcgQEAgb3B1c19pbnQzMiBzaWxrX3NjaHVyNjQoICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIE8gICAgcmV0dXJucyByZXNpZHVhbCBlbmUKICAgICBvcHVzX2ludDMyIENbIFNJ
TEtfTUFYX09SREVSX0xQQyArIDEgXVsgMiBdOwogICAgIG9wdXNfaW50MzIgQ3RtcDFfUTMwLCBD
dG1wMl9RMzAsIHJjX3RtcF9RMzE7CiAKLSAgICBzaWxrX2Fzc2VydCggb3JkZXI9PTZ8fG9yZGVy
PT04fHxvcmRlcj09MTB8fG9yZGVyPT0xMnx8b3JkZXI9PTE0fHxvcmRlcj09MTYgKTsKKyAgICBz
aWxrX2Fzc2VydCggb3JkZXIgPj0gMCAmJiBvcmRlciA8PSBTSUxLX01BWF9PUkRFUl9MUEMgKTsK
IAogICAgIC8qIENoZWNrIGZvciBpbnZhbGlkIGlucHV0ICovCiAgICAgaWYoIGNbIDAgXSA8PSAw
ICkgewpAQCAtNTEsOSArNTEsMTAgQEAgb3B1c19pbnQzMiBzaWxrX3NjaHVyNjQoICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgcmV0dXJucyByZXNpZHVhbCBlbmUKICAgICAgICAg
cmV0dXJuIDA7CiAgICAgfQogCi0gICAgZm9yKCBrID0gMDsgayA8IG9yZGVyICsgMTsgaysrICkg
eworICAgIGsgPSAwOworICAgIGRvIHsKICAgICAgICAgQ1sgayBdWyAwIF0gPSBDWyBrIF1bIDEg
XSA9IGNbIGsgXTsKLSAgICB9CisgICAgfSB3aGlsZSggKytrIDw9IG9yZGVyICk7CiAKICAgICBm
b3IoIGsgPSAwOyBrIDwgb3JkZXI7IGsrKyApIHsKICAgICAgICAgLyogQ2hlY2sgdGhhdCB3ZSB3
b24ndCBiZSBnZXR0aW5nIGFuIHVuc3RhYmxlIHJjLCBvdGhlcndpc2Ugc3RvcCBoZXJlLiAqLwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NjaHVyX0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NjaHVyX0ZJWC5j
CmluZGV4IGM0YzBlZjIzYjQ3ODA0ZTVmNTZjN2M1ZDU4YzY2NTU2ZWVmNWEwMWUuLjU5ZDQ0YTZm
N2ZlODU4YzIxZWViY2EzMWI2YmU0NDMwYWNkNDgzMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9z
Y2h1cl9GSVguYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvc2NodXJfRklYLmMKQEAgLTQzLDI4ICs0MywyOSBA
QCBvcHVzX2ludDMyIHNpbGtfc2NodXIoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
TyAgICBSZXR1cm5zIHJlc2lkdWFsIGVuZQogICAgIG9wdXNfaW50MzIgICAgQ1sgU0lMS19NQVhf
T1JERVJfTFBDICsgMSBdWyAyIF07CiAgICAgb3B1c19pbnQzMiAgICBDdG1wMSwgQ3RtcDIsIHJj
X3RtcF9RMTU7CiAKLSAgICBzaWxrX2Fzc2VydCggb3JkZXI9PTZ8fG9yZGVyPT04fHxvcmRlcj09
MTB8fG9yZGVyPT0xMnx8b3JkZXI9PTE0fHxvcmRlcj09MTYgKTsKKyAgICBzaWxrX2Fzc2VydCgg
b3JkZXIgPj0gMCAmJiBvcmRlciA8PSBTSUxLX01BWF9PUkRFUl9MUEMgKTsKIAogICAgIC8qIEdl
dCBudW1iZXIgb2YgbGVhZGluZyB6ZXJvcyAqLwogICAgIGx6ID0gc2lsa19DTFozMiggY1sgMCBd
ICk7CiAKICAgICAvKiBDb3B5IGNvcnJlbGF0aW9ucyBhbmQgYWRqdXN0IGxldmVsIHRvIFEzMCAq
LworICAgIGsgPSAwOwogICAgIGlmKCBseiA8IDIgKSB7CiAgICAgICAgIC8qIGx6IG11c3QgYmUg
MSwgc28gc2hpZnQgb25lIHRvIHRoZSByaWdodCAqLwotICAgICAgICBmb3IoIGsgPSAwOyBrIDwg
b3JkZXIgKyAxOyBrKysgKSB7CisgICAgICAgIGRvIHsKICAgICAgICAgICAgIENbIGsgXVsgMCBd
ID0gQ1sgayBdWyAxIF0gPSBzaWxrX1JTSElGVCggY1sgayBdLCAxICk7Ci0gICAgICAgIH0KKyAg
ICAgICAgfSB3aGlsZSggKytrIDw9IG9yZGVyICk7CiAgICAgfSBlbHNlIGlmKCBseiA+IDIgKSB7
CiAgICAgICAgIC8qIFNoaWZ0IHRvIHRoZSBsZWZ0ICovCiAgICAgICAgIGx6IC09IDI7Ci0gICAg
ICAgIGZvciggayA9IDA7IGsgPCBvcmRlciArIDE7IGsrKyApIHsKKyAgICAgICAgZG8gewogICAg
ICAgICAgICAgQ1sgayBdWyAwIF0gPSBDWyBrIF1bIDEgXSA9IHNpbGtfTFNISUZUKCBjWyBrIF0s
IGx6ICk7Ci0gICAgICAgIH0KKyAgICAgICAgfSB3aGlsZSggKytrIDw9IG9yZGVyICk7CiAgICAg
fSBlbHNlIHsKICAgICAgICAgLyogTm8gbmVlZCB0byBzaGlmdCAqLwotICAgICAgICBmb3IoIGsg
PSAwOyBrIDwgb3JkZXIgKyAxOyBrKysgKSB7CisgICAgICAgIGRvIHsKICAgICAgICAgICAgIENb
IGsgXVsgMCBdID0gQ1sgayBdWyAxIF0gPSBjWyBrIF07Ci0gICAgICAgIH0KKyAgICAgICAgfSB3
aGlsZSggKytrIDw9IG9yZGVyICk7CiAgICAgfQogCiAgICAgZm9yKCBrID0gMDsgayA8IG9yZGVy
OyBrKysgKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvc29sdmVfTFNfRklYLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4
ZWQvc29sdmVfTFNfRklYLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxZDdkNDlk
MDJhNWU3Y2JhOTI0NTI5NWViYTZhYTI2YmMyYmVlN2UuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NvbHZlX0xTX0ZJWC5jCisrKyAvZGV2
L251bGwKQEAgLTEsMjQ5ICswLDAgQEAKLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotQ29weXJpZ2h0IChjKSAy
MDA2LTIwMTEsIFNreXBlIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi1SZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LW1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotYXJlIG1ldDoKLS0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAotdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLS0gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLW5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKLWRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCi0tIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwg
SUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCi1uYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRv
cnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQotcHJvZHVjdHMgZGVyaXZlZCBm
cm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCi1wZXJtaXNz
aW9uLgotVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCi1BTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi1JTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRQotQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFCi1MSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi1DT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCi1JTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgotQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLUFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
Ci1QT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotCi0jaWZkZWYg
SEFWRV9DT05GSUdfSAotI2luY2x1ZGUgImNvbmZpZy5oIgotI2VuZGlmCi0KLSNpbmNsdWRlICJt
YWluX0ZJWC5oIgotI2luY2x1ZGUgInN0YWNrX2FsbG9jLmgiCi0jaW5jbHVkZSAidHVuaW5nX3Bh
cmFtZXRlcnMuaCIKLQotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotLyogSW50ZXJu
YWwgZnVuY3Rpb24gaGVhZGVycyAqLwotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwot
Ci10eXBlZGVmIHN0cnVjdCB7Ci0gICAgb3B1c19pbnQzMiBRMzZfcGFydDsKLSAgICBvcHVzX2lu
dDMyIFE0OF9wYXJ0OwotfSBpbnZfRF90OwotCi0vKiBGYWN0b3JpemUgc3F1YXJlIG1hdHJpeCBB
IGludG8gTERMIGZvcm0gKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTERMX2ZhY3Rv
cml6ZV9GSVgoCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAqQSwgICAgICAgICAvKiBJL08gUG9p
bnRlciB0byBTeW1ldHJpYyBTcXVhcmUgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBNLCAgICAgICAgICAvKiBJICAgU2l6ZSBvZiBN
YXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgb3B1c19pbnQzMiAgICAgICAgICAqTF9RMTYsICAgICAvKiBJL08gUG9pbnRlciB0byBTcXVh
cmUgVXBwZXIgdHJpYW5ndWxhciBNYXRyaXggICAgICAgICAgICAgICAgICAgICovCi0gICAgaW52
X0RfdCAgICAgICAgICAgICAqaW52X0QgICAgICAvKiBJL08gUG9pbnRlciB0byB2ZWN0b3IgaG9s
ZGluZyBpbnZlcnRlZCBkaWFnb25hbCBlbGVtZW50cyBvZiBEICAgICovCi0pOwotCi0vKiBTb2x2
ZSBMeCA9IGIsIHdoZW4gTCBpcyBsb3dlciB0cmlhbmd1bGFyIGFuZCBoYXMgb25lcyBvbiB0aGUg
ZGlhZ29uYWwgKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTFNfU29sdmVGaXJzdF9G
SVgoCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAqTF9RMTYsICAgICAvKiBJICAgIFBvaW50ZXIg
dG8gTG93ZXIgVHJpYW5ndWxhciBNYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgb3B1c19pbnQgICAgICAgICAgICBNLCAgICAgICAgICAvKiBJICAgIERpbSBvZiBNYXRyaXgg
ZXF1YXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgb3B1c19pbnQzMiAgICAqYiwgICAgICAgICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQz
MiAgICAgICAgICAqeF9RMTYgICAgICAvKiBPICAgIHggVmVjdG9yICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pOwotCi0vKiBTb2x2ZSBMXnQq
eCA9IGIsIHdoZXJlIEwgaXMgbG93ZXIgdHJpYW5ndWxhciB3aXRoIG9uZXMgb24gdGhlIGRpYWdv
bmFsICovCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xTX1NvbHZlTGFzdF9GSVgoCi0g
ICAgY29uc3Qgb3B1c19pbnQzMiAgICAqTF9RMTYsICAgICAvKiBJICAgIFBvaW50ZXIgdG8gTG93
ZXIgVHJpYW5ndWxhciBNYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgb3B1c19pbnQgICAgICBNLCAgICAgICAgICAvKiBJICAgIERpbSBvZiBNYXRyaXggZXF1YXRp
b24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1
c19pbnQzMiAgICAqYiwgICAgICAgICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAg
ICAgICAqeF9RMTYgICAgICAvKiBPICAgIHggVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pOwotCi1zdGF0aWMgT1BVU19JTkxJTkUg
dm9pZCBzaWxrX0xTX2RpdmlkZV9RMTZfRklYKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgVFtd
LCAgICAgICAgLyogSS9PICBOdW1lbmF0b3IgdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwotICAgIGludl9EX3QgICAgICAgICAgICAgKmludl9ELCAg
ICAgLyogSSAgICAxIC8gRCB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgTSAgICAgICAgICAgLyog
SSAgICBkaW1lbnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotKTsKLQotLyogU29sdmVzIEF4ID0gYiwgYXNzdW1pbmcgQSBpcyBzeW1tZXRy
aWMgKi8KLXZvaWQgc2lsa19zb2x2ZV9MRExfRklYKAotICAgIG9wdXNfaW50MzIgICAgICAgICAg
ICAgICAgICAgICAgKkEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgUG9pbnRlciB0byBzeW1ldHJpYyBzcXVhcmUgbWF0cml4IEEgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAg
ICAgICBNLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTaXpl
IG9mIG1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgICAgICpi
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFBvaW50ZXIgdG8g
YiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgKnhfUTE2ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUG9pbnRlciB0byB4IHNvbHV0
aW9uIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0pCi17Ci0gICAgVkFSREVDTCggb3B1c19pbnQzMiwgTF9RMTYgKTsKLSAgICBvcHVzX2lu
dDMyIFlbICAgICAgTUFYX01BVFJJWF9TSVpFIF07Ci0gICAgaW52X0RfdCAgIGludl9EWyAgTUFY
X01BVFJJWF9TSVpFIF07Ci0gICAgU0FWRV9TVEFDSzsKLQotICAgIHNpbGtfYXNzZXJ0KCBNIDw9
IE1BWF9NQVRSSVhfU0laRSApOwotICAgIEFMTE9DKCBMX1ExNiwgTSAqIE0sIG9wdXNfaW50MzIg
KTsKLQotICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioKLSAgICBGYWN0b3JpemUgQSBieSBMREwgc3VjaCB0aGF0IEEgPSBMKkQqTCcsCi0gICAg
d2hlcmUgTCBpcyBsb3dlciB0cmlhbmd1bGFyIHdpdGggb25lcyBvbiBkaWFnb25hbAotICAgICoq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAg
c2lsa19MRExfZmFjdG9yaXplX0ZJWCggQSwgTSwgTF9RMTYsIGludl9EICk7Ci0KLSAgICAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICAgICog
c3Vic3RpdHV0ZSBEKkwnKnggPSBZLiBpZToKLSAgICBMKkQqTCcqeCA9IGIgPT4gTCpZID0gYiA8
PT4gWSA9IGludihMKSpiCi0gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqLwotICAgIHNpbGtfTFNfU29sdmVGaXJzdF9GSVgoIExfUTE2LCBN
LCBiLCBZICk7Ci0KLSAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKgotICAgIEQqTCcqeCA9IFkgPD0+IEwnKnggPSBpbnYoRCkqWSwgYmVjYXVz
ZSBEIGlzCi0gICAgZGlhZ29uYWwganVzdCBtdWx0aXBseSB3aXRoIDEvZF9pCi0gICAgKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICBzaWxr
X0xTX2RpdmlkZV9RMTZfRklYKCBZLCBpbnZfRCwgTSApOwotCi0gICAgLyoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAgICB4ID0gaW52KEwnKSAq
IGludihEKSAqIFkKLSAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KLSAgICBzaWxrX0xTX1NvbHZlTGFzdF9GSVgoIExfUTE2LCBNLCBZLCB4
X1ExNiApOwotICAgIFJFU1RPUkVfU1RBQ0s7Ci19Ci0KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lk
IHNpbGtfTERMX2ZhY3Rvcml6ZV9GSVgoCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAqQSwgICAg
ICAgICAvKiBJL08gUG9pbnRlciB0byBTeW1ldHJpYyBTcXVhcmUgTWF0cml4ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBNLCAgICAgICAgICAv
KiBJICAgU2l6ZSBvZiBNYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAqTF9RMTYsICAgICAvKiBJL08g
UG9pbnRlciB0byBTcXVhcmUgVXBwZXIgdHJpYW5ndWxhciBNYXRyaXggICAgICAgICAgICAgICAg
ICAgICovCi0gICAgaW52X0RfdCAgICAgICAgICAgICAqaW52X0QgICAgICAvKiBJL08gUG9pbnRl
ciB0byB2ZWN0b3IgaG9sZGluZyBpbnZlcnRlZCBkaWFnb25hbCBlbGVtZW50cyBvZiBEICAgICov
Ci0pCi17Ci0gICAgb3B1c19pbnQgICBpLCBqLCBrLCBzdGF0dXMsIGxvb3BfY291bnQ7Ci0gICAg
Y29uc3Qgb3B1c19pbnQzMiAqcHRyMSwgKnB0cjI7Ci0gICAgb3B1c19pbnQzMiBkaWFnX21pbl92
YWx1ZSwgdG1wXzMyLCBlcnI7Ci0gICAgb3B1c19pbnQzMiB2X1EwWyBNQVhfTUFUUklYX1NJWkUg
XSwgRF9RMFsgTUFYX01BVFJJWF9TSVpFIF07Ci0gICAgb3B1c19pbnQzMiBvbmVfZGl2X2RpYWdf
UTM2LCBvbmVfZGl2X2RpYWdfUTQwLCBvbmVfZGl2X2RpYWdfUTQ4OwotCi0gICAgc2lsa19hc3Nl
cnQoIE0gPD0gTUFYX01BVFJJWF9TSVpFICk7Ci0KLSAgICBzdGF0dXMgPSAxOwotICAgIGRpYWdf
bWluX3ZhbHVlID0gc2lsa19tYXhfMzIoIHNpbGtfU01NVUwoIHNpbGtfQUREX1NBVDMyKCBBWyAw
IF0sIEFbIHNpbGtfU01VTEJCKCBNLCBNICkgLSAxIF0gKSwgU0lMS19GSVhfQ09OU1QoIEZJTkRf
TFRQX0NPTkRfRkFDLCAzMSApICksIDEgPDwgOSApOwotICAgIGZvciggbG9vcF9jb3VudCA9IDA7
IGxvb3BfY291bnQgPCBNICYmIHN0YXR1cyA9PSAxOyBsb29wX2NvdW50KysgKSB7Ci0gICAgICAg
IHN0YXR1cyA9IDA7Ci0gICAgICAgIGZvciggaiA9IDA7IGogPCBNOyBqKysgKSB7Ci0gICAgICAg
ICAgICBwdHIxID0gbWF0cml4X2FkciggTF9RMTYsIGosIDAsIE0gKTsKLSAgICAgICAgICAgIHRt
cF8zMiA9IDA7Ci0gICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgajsgaSsrICkgewotICAgICAg
ICAgICAgICAgIHZfUTBbIGkgXSA9IHNpbGtfU01VTFdXKCAgICAgICAgIERfUTBbIGkgXSwgcHRy
MVsgaSBdICk7IC8qIFEwICovCi0gICAgICAgICAgICAgICAgdG1wXzMyICAgID0gc2lsa19TTUxB
V1coIHRtcF8zMiwgdl9RMFsgaSBdLCBwdHIxWyBpIF0gKTsgLyogUTAgKi8KLSAgICAgICAgICAg
IH0KLSAgICAgICAgICAgIHRtcF8zMiA9IHNpbGtfU1VCMzIoIG1hdHJpeF9wdHIoIEEsIGosIGos
IE0gKSwgdG1wXzMyICk7Ci0KLSAgICAgICAgICAgIGlmKCB0bXBfMzIgPCBkaWFnX21pbl92YWx1
ZSApIHsKLSAgICAgICAgICAgICAgICB0bXBfMzIgPSBzaWxrX1NVQjMyKCBzaWxrX1NNVUxCQigg
bG9vcF9jb3VudCArIDEsIGRpYWdfbWluX3ZhbHVlICksIHRtcF8zMiApOwotICAgICAgICAgICAg
ICAgIC8qIE1hdHJpeCBub3QgcG9zaXRpdmUgc2VtaS1kZWZpbml0ZSwgb3IgaWxsIGNvbmRpdGlv
bmVkICovCi0gICAgICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IE07IGkrKyApIHsKLSAgICAg
ICAgICAgICAgICAgICAgbWF0cml4X3B0ciggQSwgaSwgaSwgTSApID0gc2lsa19BREQzMiggbWF0
cml4X3B0ciggQSwgaSwgaSwgTSApLCB0bXBfMzIgKTsKLSAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgc3RhdHVzID0gMTsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgIERfUTBbIGogXSA9IHRtcF8zMjsgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogYWx3YXlzIDwgbWF4KENvcnJlbGF0aW9uKSAqLwotCi0gICAgICAgICAgICAvKiB0
d28tc3RlcCBkaXZpc2lvbiAqLwotICAgICAgICAgICAgb25lX2Rpdl9kaWFnX1EzNiA9IHNpbGtf
SU5WRVJTRTMyX3ZhclEoIHRtcF8zMiwgMzYgKTsgICAgICAgICAgICAgICAgICAgIC8qIFEzNiAq
LwotICAgICAgICAgICAgb25lX2Rpdl9kaWFnX1E0MCA9IHNpbGtfTFNISUZUKCBvbmVfZGl2X2Rp
YWdfUTM2LCA0ICk7ICAgICAgICAgICAgICAgICAgIC8qIFE0MCAqLwotICAgICAgICAgICAgZXJy
ID0gc2lsa19TVUIzMiggKG9wdXNfaW50MzIpMSA8PCAyNCwgc2lsa19TTVVMV1coIHRtcF8zMiwg
b25lX2Rpdl9kaWFnX1E0MCApICk7ICAgICAvKiBRMjQgKi8KLSAgICAgICAgICAgIG9uZV9kaXZf
ZGlhZ19RNDggPSBzaWxrX1NNVUxXVyggZXJyLCBvbmVfZGl2X2RpYWdfUTQwICk7ICAgICAgICAg
ICAgICAgICAvKiBRNDggKi8KLQotICAgICAgICAgICAgLyogU2F2ZSAxL0RzICovCi0gICAgICAg
ICAgICBpbnZfRFsgaiBdLlEzNl9wYXJ0ID0gb25lX2Rpdl9kaWFnX1EzNjsKLSAgICAgICAgICAg
IGludl9EWyBqIF0uUTQ4X3BhcnQgPSBvbmVfZGl2X2RpYWdfUTQ4OwotCi0gICAgICAgICAgICBt
YXRyaXhfcHRyKCBMX1ExNiwgaiwgaiwgTSApID0gNjU1MzY7IC8qIDEuMCBpbiBRMTYgKi8KLSAg
ICAgICAgICAgIHB0cjEgPSBtYXRyaXhfYWRyKCBBLCBqLCAwLCBNICk7Ci0gICAgICAgICAgICBw
dHIyID0gbWF0cml4X2FkciggTF9RMTYsIGogKyAxLCAwLCBNICk7Ci0gICAgICAgICAgICBmb3Io
IGkgPSBqICsgMTsgaSA8IE07IGkrKyApIHsKLSAgICAgICAgICAgICAgICB0bXBfMzIgPSAwOwot
ICAgICAgICAgICAgICAgIGZvciggayA9IDA7IGsgPCBqOyBrKysgKSB7Ci0gICAgICAgICAgICAg
ICAgICAgIHRtcF8zMiA9IHNpbGtfU01MQVdXKCB0bXBfMzIsIHZfUTBbIGsgXSwgcHRyMlsgayBd
ICk7IC8qIFEwICovCi0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIHRtcF8zMiA9
IHNpbGtfU1VCMzIoIHB0cjFbIGkgXSwgdG1wXzMyICk7IC8qIGFsd2F5cyA8IG1heChDb3JyZWxh
dGlvbikgKi8KLQotICAgICAgICAgICAgICAgIC8qIHRtcF8zMiAvIERfUTBbal0gOiBEaXZpZGUg
dG8gUTE2ICovCi0gICAgICAgICAgICAgICAgbWF0cml4X3B0ciggTF9RMTYsIGksIGosIE0gKSA9
IHNpbGtfQUREMzIoIHNpbGtfU01NVUwoIHRtcF8zMiwgb25lX2Rpdl9kaWFnX1E0OCApLAotICAg
ICAgICAgICAgICAgICAgICBzaWxrX1JTSElGVCggc2lsa19TTVVMV1coIHRtcF8zMiwgb25lX2Rp
dl9kaWFnX1EzNiApLCA0ICkgKTsKLQotICAgICAgICAgICAgICAgIC8qIGdvIHRvIG5leHQgY29s
dW1uICovCi0gICAgICAgICAgICAgICAgcHRyMiArPSBNOwotICAgICAgICAgICAgfQotICAgICAg
ICB9Ci0gICAgfQotCi0gICAgc2lsa19hc3NlcnQoIHN0YXR1cyA9PSAwICk7Ci19Ci0KLXN0YXRp
YyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTFNfZGl2aWRlX1ExNl9GSVgoCi0gICAgb3B1c19pbnQz
MiAgICAgICAgICBUW10sICAgICAgICAvKiBJL08gIE51bWVuYXRvciB2ZWN0b3IgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgaW52X0RfdCAgICAgICAg
ICAgICAqaW52X0QsICAgICAvKiBJICAgIDEgLyBEIHZlY3RvciAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBN
ICAgICAgICAgICAvKiBJICAgIGRpbWVuc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICBpOwotICAgIG9w
dXNfaW50MzIgdG1wXzMyOwotICAgIG9wdXNfaW50MzIgb25lX2Rpdl9kaWFnX1EzNiwgb25lX2Rp
dl9kaWFnX1E0ODsKLQotICAgIGZvciggaSA9IDA7IGkgPCBNOyBpKysgKSB7Ci0gICAgICAgIG9u
ZV9kaXZfZGlhZ19RMzYgPSBpbnZfRFsgaSBdLlEzNl9wYXJ0OwotICAgICAgICBvbmVfZGl2X2Rp
YWdfUTQ4ID0gaW52X0RbIGkgXS5RNDhfcGFydDsKLQotICAgICAgICB0bXBfMzIgPSBUWyBpIF07
Ci0gICAgICAgIFRbIGkgXSA9IHNpbGtfQUREMzIoIHNpbGtfU01NVUwoIHRtcF8zMiwgb25lX2Rp
dl9kaWFnX1E0OCApLCBzaWxrX1JTSElGVCggc2lsa19TTVVMV1coIHRtcF8zMiwgb25lX2Rpdl9k
aWFnX1EzNiApLCA0ICkgKTsKLSAgICB9Ci19Ci0KLS8qIFNvbHZlIEx4ID0gYiwgd2hlbiBMIGlz
IGxvd2VyIHRyaWFuZ3VsYXIgYW5kIGhhcyBvbmVzIG9uIHRoZSBkaWFnb25hbCAqLwotc3RhdGlj
IE9QVVNfSU5MSU5FIHZvaWQgc2lsa19MU19Tb2x2ZUZpcnN0X0ZJWCgKLSAgICBjb25zdCBvcHVz
X2ludDMyICAgICpMX1ExNiwgICAgIC8qIEkgICAgUG9pbnRlciB0byBMb3dlciBUcmlhbmd1bGFy
IE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAg
ICAgIE0sICAgICAgICAgIC8qIEkgICAgRGltIG9mIE1hdHJpeCBlcXVhdGlvbiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICpi
LCAgICAgICAgIC8qIEkgICAgYiBWZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICp4X1ExNiAg
ICAgIC8qIE8gICAgeCBWZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSkKLXsKLSAgICBvcHVzX2ludCBpLCBqOwotICAgIGNvbnN0IG9w
dXNfaW50MzIgKnB0cjMyOwotICAgIG9wdXNfaW50MzIgdG1wXzMyOwotCi0gICAgZm9yKCBpID0g
MDsgaSA8IE07IGkrKyApIHsKLSAgICAgICAgcHRyMzIgPSBtYXRyaXhfYWRyKCBMX1ExNiwgaSwg
MCwgTSApOwotICAgICAgICB0bXBfMzIgPSAwOwotICAgICAgICBmb3IoIGogPSAwOyBqIDwgaTsg
aisrICkgewotICAgICAgICAgICAgdG1wXzMyID0gc2lsa19TTUxBV1coIHRtcF8zMiwgcHRyMzJb
IGogXSwgeF9RMTZbIGogXSApOwotICAgICAgICB9Ci0gICAgICAgIHhfUTE2WyBpIF0gPSBzaWxr
X1NVQjMyKCBiWyBpIF0sIHRtcF8zMiApOwotICAgIH0KLX0KLQotLyogU29sdmUgTF50KnggPSBi
LCB3aGVyZSBMIGlzIGxvd2VyIHRyaWFuZ3VsYXIgd2l0aCBvbmVzIG9uIHRoZSBkaWFnb25hbCAq
Lwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19MU19Tb2x2ZUxhc3RfRklYKAotICAgIGNv
bnN0IG9wdXNfaW50MzIgICAgKkxfUTE2LCAgICAgLyogSSAgICBQb2ludGVyIHRvIExvd2VyIFRy
aWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgTSwgICAgICAgICAgLyogSSAgICBEaW0gb2YgTWF0cml4IGVxdWF0aW9uICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50
MzIgICAgKmIsICAgICAgICAgLyogSSAgICBiIFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAg
KnhfUTE2ICAgICAgLyogTyAgICB4IFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50IGksIGo7Ci0gICAg
Y29uc3Qgb3B1c19pbnQzMiAqcHRyMzI7Ci0gICAgb3B1c19pbnQzMiB0bXBfMzI7Ci0KLSAgICBm
b3IoIGkgPSBNIC0gMTsgaSA+PSAwOyBpLS0gKSB7Ci0gICAgICAgIHB0cjMyID0gbWF0cml4X2Fk
ciggTF9RMTYsIDAsIGksIE0gKTsKLSAgICAgICAgdG1wXzMyID0gMDsKLSAgICAgICAgZm9yKCBq
ID0gTSAtIDE7IGogPiBpOyBqLS0gKSB7Ci0gICAgICAgICAgICB0bXBfMzIgPSBzaWxrX1NNTEFX
VyggdG1wXzMyLCBwdHIzMlsgc2lsa19TTVVMQkIoIGosIE0gKSBdLCB4X1ExNlsgaiBdICk7Ci0g
ICAgICAgIH0KLSAgICAgICAgeF9RMTZbIGkgXSA9IHNpbGtfU1VCMzIoIGJbIGkgXSwgdG1wXzMy
ICk7Ci0gICAgfQotfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3N0cnVjdHNfRklYLmggYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
Zml4ZWQvc3RydWN0c19GSVguaAppbmRleCAzMjk0YjI1MTI4MWVkODI2NWQ0MjNjNTRlMGQwMjI3
M2Y3Zjk5NDUyLi4yNzc0YTk3YjI0ZmU2NzdiN2QxODJhOWExMjAyOGE3YzFkODdmYTg5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZml4ZWQvc3RydWN0c19GSVguaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvc3RydWN0c19G
SVguaApAQCAtNDcsMzEgKzQ3LDE3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBvcHVzX2ludDMy
ICAgICAgICAgICAgICAgICAgVGlsdF9zbXRoX1ExNjsKIH0gc2lsa19zaGFwZV9zdGF0ZV9GSVg7
CiAKLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qIFByZWZpbHRlciBzdGF0
ZSAgICAgICAgICAgICAgKi8KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLXR5
cGVkZWYgc3RydWN0IHsKLSAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgc0xUUF9zaHBb
IExUUF9CVUZfTEVOR1RIIF07Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHNBUl9z
aHBbIE1BWF9TSEFQRV9MUENfT1JERVIgKyAxIF07Ci0gICAgb3B1c19pbnQgICAgICAgICAgICAg
ICAgICAgIHNMVFBfc2hwX2J1Zl9pZHg7Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAg
IHNMRl9BUl9zaHBfUTEyOwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBzTEZfTUFf
c2hwX1ExMjsKLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgc0hhcm1IUF9RMjsKLSAg
ICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgcmFuZF9zZWVkOwotICAgIG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgICBsYWdQcmV2OwotfSBzaWxrX3ByZWZpbHRlcl9zdGF0ZV9GSVg7Ci0K
IC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIC8qIEVuY29kZXIgc3RhdGUgRklY
ICAgICAgICAgICAgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIHR5cGVk
ZWYgc3RydWN0IHsKICAgICBzaWxrX2VuY29kZXJfc3RhdGUgICAgICAgICAgc0NtbjsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIENvbW1vbiBzdHJ1Y3QsIHNoYXJlZCB3aXRo
IGZsb2F0aW5nLXBvaW50IGNvZGUgICAgICAgKi8KICAgICBzaWxrX3NoYXBlX3N0YXRlX0ZJWCAg
ICAgICAgc1NoYXBlOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNoYXBlIHN0
YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxr
X3ByZWZpbHRlcl9zdGF0ZV9GSVggICAgc1ByZWZpbHQ7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIFByZWZpbHRlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KIAogICAgIC8qIEJ1ZmZlciBmb3IgZmluZCBwaXRjaCBhbmQgbm9pc2Ugc2hhcGUg
YW5hbHlzaXMgKi8KICAgICBzaWxrX0RXT1JEX0FMSUdOIG9wdXNfaW50MTYgeF9idWZbIDIgKiBN
QVhfRlJBTUVfTEVOR1RIICsgTEFfU0hBUEVfTUFYIF07LyogQnVmZmVyIGZvciBmaW5kIHBpdGNo
IGFuZCBub2lzZSBzaGFwZSBhbmFseXNpcyAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgICAg
ICAgICAgTFRQQ29ycl9RMTU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE5vcm1hbGl6
ZWQgY29ycmVsYXRpb24gZnJvbSBwaXRjaCBsYWcgZXN0aW1hdG9yICAgICAgKi8KKyAgICBvcHVz
X2ludDMyICAgICAgICAgICAgICAgICAgICByZXNOcmdTbXRoOwogfSBzaWxrX2VuY29kZXJfc3Rh
dGVfRklYOwogCiAvKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtODcsMTEgKzczLDggQEAg
dHlwZWRlZiBzdHJ1Y3QgewogCiAgICAgLyogTm9pc2Ugc2hhcGluZyBwYXJhbWV0ZXJzICovCiAg
ICAgLyogVGVzdGluZyAqLwotICAgIHNpbGtfRFdPUkRfQUxJR04gb3B1c19pbnQxNiBBUjFfUTEz
WyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07Ci0gICAgc2lsa19EV09SRF9B
TElHTiBvcHVzX2ludDE2IEFSMl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JE
RVIgXTsKKyAgICBzaWxrX0RXT1JEX0FMSUdOIG9wdXNfaW50MTYgQVJfUTEzWyBNQVhfTkJfU1VC
RlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07CiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAg
ICAgIExGX3NocF9RMTRbICAgICAgICBNQVhfTkJfU1VCRlIgXTsgICAgICAvKiBQYWNrcyB0d28g
aW50MTYgY29lZmZpY2llbnRzIHBlciBpbnQzMiB2YWx1ZSAgICAgICAgICovCi0gICAgb3B1c19p
bnQgICAgICAgICAgICAgICAgICAgIEdhaW5zUHJlX1ExNFsgICAgICBNQVhfTkJfU1VCRlIgXTsK
LSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgSGFybUJvb3N0X1ExNFsgICAgIE1BWF9O
Ql9TVUJGUiBdOwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBUaWx0X1ExNFsgICAg
ICAgICAgTUFYX05CX1NVQkZSIF07CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIEhh
cm1TaGFwZUdhaW5fUTE0WyBNQVhfTkJfU1VCRlIgXTsKICAgICBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgICAgTGFtYmRhX1ExMDsKQEAgLTk5LDcgKzgyLDYgQEAgdHlwZWRlZiBzdHJ1Y3Qgewog
ICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBjb2RpbmdfcXVhbGl0eV9RMTQ7CiAKICAg
ICAvKiBtZWFzdXJlcyAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBzcGFyc2Vu
ZXNzX1E4OwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBwcmVkR2Fpbl9RMTY7CiAg
ICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIExUUHJlZENvZEdhaW5fUTc7CiAgICAgb3B1
c19pbnQzMiAgICAgICAgICAgICAgICAgIFJlc05yZ1sgTUFYX05CX1NVQkZSIF07ICAgICAgICAg
ICAgICAgICAvKiBSZXNpZHVhbCBlbmVyZ3kgcGVyIHN1YmZyYW1lICAgICAgICAgICAgICAgICAg
ICAgICAgICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9G
SVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9maXhlZC93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jCmluZGV4IDZjYTZj
MTE4NGQ4NjVmN2ZiYmMxNWJjYzZjYmIzMjliMjZiODZhMDIuLjk5NGMyOTlhYmQxMjQwY2RiMzc1
OTdlM2E4YWNhODIwN2U4OWE5NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC93YXJwZWRfYXV0b2Nv
cnJlbGF0aW9uX0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJ
WC5jCkBAIC0zMSwxNyArMzEsMTMgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKICNp
bmNsdWRlICJtYWluX0ZJWC5oIgogCi0jZGVmaW5lIFFDICAxMAotI2RlZmluZSBRUyAgMTQKLQog
I2lmIGRlZmluZWQoTUlQU3IxX0FTTSkKICNpbmNsdWRlICJtaXBzL3dhcnBlZF9hdXRvY29ycmVs
YXRpb25fRklYX21pcHNyMS5oIgogI2VuZGlmCiAKIAotI2lmbmRlZiBPVkVSUklERV9zaWxrX3dh
cnBlZF9hdXRvY29ycmVsYXRpb25fRklYCiAvKiBBdXRvY29ycmVsYXRpb25zIGZvciBhIHdhcnBl
ZCBmcmVxdWVuY3kgYXhpcyAqLwotdm9pZCBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklY
KAordm9pZCBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX2MoCiAgICAgICAgICAgb3B1
c19pbnQzMiAgICAgICAgICAgICAgICAqY29yciwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogTyAgICBSZXN1bHQgW29yZGVyICsgMV0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgICBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgICpzY2FsZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBPICAgIFNjYWxpbmcgb2YgdGhlIGNvcnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICAgICAgKmlucHV0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
SW5wdXQgZGF0YSB0byBjb3JyZWxhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCkBAIC05Miw0ICs4OCwzIEBAIHZvaWQgc2lsa193YXJwZWRf
YXV0b2NvcnJlbGF0aW9uX0ZJWCgKICAgICB9CiAgICAgc2lsa19hc3NlcnQoIGNvcnJfUUNbIDAg
XSA+PSAwICk7IC8qIElmIGJyZWFraW5nLCBkZWNyZWFzZSBRQyovCiB9Ci0jZW5kaWYgLyogT1ZF
UlJJREVfc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCAqLwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2ZpeGVkL3g4Ni9wcmVmaWx0ZXJfRklYX3NzZS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3g4Ni9wcmVmaWx0ZXJf
RklYX3NzZS5jCmluZGV4IDQ4OGE2MDNmNWRkMDE5OWI3MTJmZTQxNjAxZWRmM2EzOGIwMGFlMTAu
LmQ4YzljMmY1NWYwNjY0NTA4MjkzMDk4MDJiODE1OTNiZjU1OGE0ZWQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9maXhlZC94ODYvcHJlZmlsdGVyX0ZJWF9zc2UuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQveDg2L3ByZWZp
bHRlcl9GSVhfc3NlLmMKQEAgLTEwNyw4ICsxMDcsOCBAQCB2b2lkIHNpbGtfd2FycGVkX0xQQ19h
bmFseXNpc19maWx0ZXJfRklYX3NzZTRfMSgKICAgICAgICAgICAgICAgICB4bW1fdGVtcGIgPSBf
bW1fYWRkX2VwaTMyKCB4bW1fdGVtcGIsIHhtbV9wcm9kdWN0MiApOwogICAgICAgICAgICAgICAg
IHhtbV90ZW1wYSA9IF9tbV9hZGRfZXBpMzIoIHhtbV90ZW1wYSwgeG1tX3RlbXBiICk7CiAKLSAg
ICAgICAgICAgICAgICBzdW0gID0gKGNvZWZfUTEzXzggKiBzdGF0ZV84KSA+PiAxNjsKLSAgICAg
ICAgICAgICAgICBzdW0gKz0gKGNvZWZfUTEzXzkgKiBzdGF0ZV85KSA+PiAxNjsKKyAgICAgICAg
ICAgICAgICBzdW0gID0gKG9wdXNfaW50MzIpKChjb2VmX1ExM184ICogc3RhdGVfOCkgPj4gMTYp
OworICAgICAgICAgICAgICAgIHN1bSArPSAob3B1c19pbnQzMikoKGNvZWZfUTEzXzkgKiBzdGF0
ZV85KSA+PiAxNik7CiAKICAgICAgICAgICAgICAgICB4bW1fdGVtcGEgPSBfbW1fYWRkX2VwaTMy
KCB4bW1fdGVtcGEsIF9tbV9zaHVmZmxlX2VwaTMyKCB4bW1fdGVtcGEsIF9NTV9TSFVGRkxFKCAw
LCAwLCAwLCAyICkgKSApOwogICAgICAgICAgICAgICAgIHN1bSArPSBfbW1fY3Z0c2kxMjhfc2kz
MiggeG1tX3RlbXBhKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9MUENfaW52X3ByZWRfZ2Fpbl9G
TFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9mbG9hdC9MUENfaW52X3ByZWRfZ2Fpbl9GTFAuYwppbmRleCAyNTE3OGJhY2Rk
ZTQ2MTBiZTA5YTMxYjU5ZmZmNzliMzVmNzFlMDMzLi4yYmUyMTIyZDYxNDA4YWZmZmIxZGJmZDhj
ZDA2NzIzZmIyODIyOWI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvTFBDX2ludl9wcmVkX2dhaW5f
RkxQLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L0xQQ19pbnZfcHJlZF9nYWluX0ZMUC5jCkBAIC0zMSw4ICsz
MSw3IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCiAjaW5jbHVkZSAiU2lnUHJvY19G
SVguaCIKICNpbmNsdWRlICJTaWdQcm9jX0ZMUC5oIgotCi0jZGVmaW5lIFJDX1RIUkVTSE9MRCAg
ICAgICAgMC45OTk5ZgorI2luY2x1ZGUgImRlZmluZS5oIgogCiAvKiBjb21wdXRlIGludmVyc2Ug
b2YgTFBDIHByZWRpY3Rpb24gZ2FpbiwgYW5kICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
LyogdGVzdCBpZiBMUEMgY29lZmZpY2llbnRzIGFyZSBzdGFibGUgKGFsbCBwb2xlcyB3aXRoaW4g
dW5pdCBjaXJjbGUpICAgKi8KQEAgLTQzLDM0ICs0MiwzMiBAQCBzaWxrX2Zsb2F0IHNpbGtfTFBD
X2ludmVyc2VfcHJlZF9nYWluX0ZMUCggIC8qIE8gICAgcmV0dXJuIGludmVyc2UgcHJlZGljdGlv
biBnYQogKQogewogICAgIG9wdXNfaW50ICAgaywgbjsKLSAgICBkb3VibGUgICAgIGludkdhaW4s
IHJjLCByY19tdWx0MSwgcmNfbXVsdDI7Ci0gICAgc2lsa19mbG9hdCBBdG1wWyAyIF1bIFNJTEtf
TUFYX09SREVSX0xQQyBdOwotICAgIHNpbGtfZmxvYXQgKkFvbGQsICpBbmV3OworICAgIGRvdWJs
ZSAgICAgaW52R2FpbiwgcmMsIHJjX211bHQxLCByY19tdWx0MiwgdG1wMSwgdG1wMjsKKyAgICBz
aWxrX2Zsb2F0IEF0bXBbIFNJTEtfTUFYX09SREVSX0xQQyBdOwogCi0gICAgQW5ldyA9IEF0bXBb
IG9yZGVyICYgMSBdOwotICAgIHNpbGtfbWVtY3B5KCBBbmV3LCBBLCBvcmRlciAqIHNpemVvZihz
aWxrX2Zsb2F0KSApOworICAgIHNpbGtfbWVtY3B5KCBBdG1wLCBBLCBvcmRlciAqIHNpemVvZihz
aWxrX2Zsb2F0KSApOwogCiAgICAgaW52R2FpbiA9IDEuMDsKICAgICBmb3IoIGsgPSBvcmRlciAt
IDE7IGsgPiAwOyBrLS0gKSB7Ci0gICAgICAgIHJjID0gLUFuZXdbIGsgXTsKLSAgICAgICAgaWYo
IHJjID4gUkNfVEhSRVNIT0xEIHx8IHJjIDwgLVJDX1RIUkVTSE9MRCApIHsKKyAgICAgICAgcmMg
PSAtQXRtcFsgayBdOworICAgICAgICByY19tdWx0MSA9IDEuMGYgLSByYyAqIHJjOworICAgICAg
ICBpbnZHYWluICo9IHJjX211bHQxOworICAgICAgICBpZiggaW52R2FpbiAqIE1BWF9QUkVESUNU
SU9OX1BPV0VSX0dBSU4gPCAxLjBmICkgewogICAgICAgICAgICAgcmV0dXJuIDAuMGY7CiAgICAg
ICAgIH0KLSAgICAgICAgcmNfbXVsdDEgPSAxLjBmIC0gcmMgKiByYzsKICAgICAgICAgcmNfbXVs
dDIgPSAxLjBmIC8gcmNfbXVsdDE7Ci0gICAgICAgIGludkdhaW4gKj0gcmNfbXVsdDE7Ci0gICAg
ICAgIC8qIHN3YXAgcG9pbnRlcnMgKi8KLSAgICAgICAgQW9sZCA9IEFuZXc7Ci0gICAgICAgIEFu
ZXcgPSBBdG1wWyBrICYgMSBdOwotICAgICAgICBmb3IoIG4gPSAwOyBuIDwgazsgbisrICkgewot
ICAgICAgICAgICAgQW5ld1sgbiBdID0gKHNpbGtfZmxvYXQpKCAoIEFvbGRbIG4gXSAtIEFvbGRb
IGsgLSBuIC0gMSBdICogcmMgKSAqIHJjX211bHQyICk7CisgICAgICAgIGZvciggbiA9IDA7IG4g
PCAoayArIDEpID4+IDE7IG4rKyApIHsKKyAgICAgICAgICAgIHRtcDEgPSBBdG1wWyBuIF07Cisg
ICAgICAgICAgICB0bXAyID0gQXRtcFsgayAtIG4gLSAxIF07CisgICAgICAgICAgICBBdG1wWyBu
IF0gICAgICAgICA9IChzaWxrX2Zsb2F0KSggKCB0bXAxIC0gdG1wMiAqIHJjICkgKiByY19tdWx0
MiApOworICAgICAgICAgICAgQXRtcFsgayAtIG4gLSAxIF0gPSAoc2lsa19mbG9hdCkoICggdG1w
MiAtIHRtcDEgKiByYyApICogcmNfbXVsdDIgKTsKICAgICAgICAgfQogICAgIH0KLSAgICByYyA9
IC1BbmV3WyAwIF07Ci0gICAgaWYoIHJjID4gUkNfVEhSRVNIT0xEIHx8IHJjIDwgLVJDX1RIUkVT
SE9MRCApIHsKLSAgICAgICAgcmV0dXJuIDAuMGY7Ci0gICAgfQorICAgIHJjID0gLUF0bXBbIDAg
XTsKICAgICByY19tdWx0MSA9IDEuMGYgLSByYyAqIHJjOwogICAgIGludkdhaW4gKj0gcmNfbXVs
dDE7CisgICAgaWYoIGludkdhaW4gKiBNQVhfUFJFRElDVElPTl9QT1dFUl9HQUlOIDwgMS4wZiAp
IHsKKyAgICAgICAgcmV0dXJuIDAuMGY7CisgICAgfQogICAgIHJldHVybiAoc2lsa19mbG9hdClp
bnZHYWluOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L1NpZ1Byb2NfRkxQLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxv
YXQvU2lnUHJvY19GTFAuaAppbmRleCBmMGNiMzczM2JlNmM3ODY1YTg4MzFiNjUyN2IxYjAxNmZk
MGI1NjcyLi45NTNkZThiMDllMzdiZDY5MjRkMzY1NTQxMDJlNWI5YWE2NWE2NmRkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZmxvYXQvU2lnUHJvY19GTFAuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvU2lnUHJvY19GTFAu
aApAQCAtNjgsMTMgKzY4LDYgQEAgdm9pZCBzaWxrX2syYV9GTFAoCiAgICAgb3B1c19pbnQzMiAg
ICAgICAgICBvcmRlciAgICAgICAgICAgICAgIC8qIEkgICAgIHByZWRpY3Rpb24gb3JkZXIgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKLS8qIFNvbHZl
IHRoZSBub3JtYWwgZXF1YXRpb25zIHVzaW5nIHRoZSBMZXZpbnNvbi1EdXJiaW4gcmVjdXJzaW9u
ICovCi1zaWxrX2Zsb2F0IHNpbGtfbGV2aW5zb25kdXJiaW5fRkxQKCAgICAgICAgIC8qIE8gICAg
cHJlZGljdGlvbiBlcnJvciBlbmVyZ3kgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgIEFbXSwgICAgICAgICAgICAgICAgLyogTyAg
ICBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cyBbb3JkZXJdICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgY29ycltdLCAgICAgICAgICAgICAvKiBJ
ICAgIGlucHV0IGF1dG8tY29ycmVsYXRpb25zIFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICBvcmRlciAgICAgICAgICAgICAgIC8q
IEkgICAgcHJlZGljdGlvbiBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSk7Ci0KIC8qIGNvbXB1dGUgYXV0b2NvcnJlbGF0aW9uICovCiB2b2lkIHNp
bGtfYXV0b2NvcnJlbGF0aW9uX0ZMUCgKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICpyZXN1bHRz
LCAgICAgICAgICAgLyogTyAgICByZXN1bHQgKGxlbmd0aCBjb3JyZWxhdGlvbkNvdW50KSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2VuY29kZV9m
cmFtZV9GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9mbG9hdC9lbmNvZGVfZnJhbWVfRkxQLmMKaW5kZXggMjA5MmE0ZDll
MjQ4Mjk5NjNlNDc5YmMwM2VjZjdhZmE4ZmQxM2FkOS4uNDk5NTZhMmQ3NTJjNjkzOGIzMDMzMTc5
MmJiNTJkNzI0YTg5ZWNlMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2VuY29kZV9mcmFtZV9GTFAu
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZmxvYXQvZW5jb2RlX2ZyYW1lX0ZMUC5jCkBAIC0yOSw2ICsyOSw3IEBAIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgImNvbmZpZy5oIgogI2VuZGlmCiAK
KyNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNsdWRlICJtYWluX0ZMUC5oIgogI2luY2x1ZGUgInR1
bmluZ19wYXJhbWV0ZXJzLmgiCiAKQEAgLTQxLDIxICs0MiwyOCBAQCBzdGF0aWMgT1BVU19JTkxJ
TkUgdm9pZCBzaWxrX0xCUlJfZW5jb2RlX0ZMUCgKICk7CiAKIHZvaWQgc2lsa19lbmNvZGVfZG9f
VkFEX0ZMUCgKLSAgICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQICAgICAgICAgICpwc0VuYyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0ZSBGTFAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GTFAgICAgICAg
ICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIHN0
YXRlIEZMUCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICAgICAgICBhY3Rpdml0eSAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIERlY2lzaW9uIG9mIE9wdXMgdm9pY2UgYWN0aXZpdHkgZGV0ZWN0b3IgICAgKi8KICkKIHsK
KyAgICBjb25zdCBvcHVzX2ludCBhY3Rpdml0eV90aHJlc2hvbGQgPSBTSUxLX0ZJWF9DT05TVCgg
U1BFRUNIX0FDVElWSVRZX0RUWF9USFJFUywgOCApOworCiAgICAgLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKiovCiAgICAgLyogVm9pY2UgQWN0aXZpdHkgRGV0ZWN0aW9uICovCiAgICAgLyoq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgc2lsa19WQURfR2V0U0FfUTgoICZwc0Vu
Yy0+c0NtbiwgcHNFbmMtPnNDbW4uaW5wdXRCdWYgKyAxLCBwc0VuYy0+c0Ntbi5hcmNoICk7Cisg
ICAgLyogSWYgT3B1cyBWQUQgaXMgaW5hY3RpdmUgYW5kIFNpbGsgVkFEIGlzIGFjdGl2ZTogbG93
ZXIgU2lsayBWQUQgdG8ganVzdCB1bmRlciB0aGUgdGhyZXNob2xkICovCisgICAgaWYoIGFjdGl2
aXR5ID09IFZBRF9OT19BQ1RJVklUWSAmJiBwc0VuYy0+c0Ntbi5zcGVlY2hfYWN0aXZpdHlfUTgg
Pj0gYWN0aXZpdHlfdGhyZXNob2xkICkgeworICAgICAgICBwc0VuYy0+c0Ntbi5zcGVlY2hfYWN0
aXZpdHlfUTggPSBhY3Rpdml0eV90aHJlc2hvbGQgLSAxOworICAgIH0KIAogICAgIC8qKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBDb252
ZXJ0IHNwZWVjaCBhY3Rpdml0eSBpbnRvIFZBRCBhbmQgRFRYIGZsYWdzICovCiAgICAgLyoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgIGlmKCBw
c0VuYy0+c0Ntbi5zcGVlY2hfYWN0aXZpdHlfUTggPCBTSUxLX0ZJWF9DT05TVCggU1BFRUNIX0FD
VElWSVRZX0RUWF9USFJFUywgOCApICkgeworICAgIGlmKCBwc0VuYy0+c0Ntbi5zcGVlY2hfYWN0
aXZpdHlfUTggPCBhY3Rpdml0eV90aHJlc2hvbGQgKSB7CiAgICAgICAgIHBzRW5jLT5zQ21uLmlu
ZGljZXMuc2lnbmFsVHlwZSA9IFRZUEVfTk9fVk9JQ0VfQUNUSVZJVFk7CiAgICAgICAgIHBzRW5j
LT5zQ21uLm5vU3BlZWNoQ291bnRlcisrOwotICAgICAgICBpZiggcHNFbmMtPnNDbW4ubm9TcGVl
Y2hDb3VudGVyIDwgTkJfU1BFRUNIX0ZSQU1FU19CRUZPUkVfRFRYICkgeworICAgICAgICBpZigg
cHNFbmMtPnNDbW4ubm9TcGVlY2hDb3VudGVyIDw9IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RU
WCApIHsKICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmluRFRYID0gMDsKICAgICAgICAgfSBlbHNl
IGlmKCBwc0VuYy0+c0Ntbi5ub1NwZWVjaENvdW50ZXIgPiBNQVhfQ09OU0VDVVRJVkVfRFRYICsg
TkJfU1BFRUNIX0ZSQU1FU19CRUZPUkVfRFRYICkgewogICAgICAgICAgICAgcHNFbmMtPnNDbW4u
bm9TcGVlY2hDb3VudGVyID0gTkJfU1BFRUNIX0ZSQU1FU19CRUZPUkVfRFRYOwpAQCAtODUsNyAr
OTMsNiBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GTFAoCiAgICAgc2lsa19lbmNvZGVy
X2NvbnRyb2xfRkxQIHNFbmNDdHJsOwogICAgIG9wdXNfaW50ICAgICBpLCBpdGVyLCBtYXhJdGVy
LCBmb3VuZF91cHBlciwgZm91bmRfbG93ZXIsIHJldCA9IDA7CiAgICAgc2lsa19mbG9hdCAgICp4
X2ZyYW1lLCAqcmVzX3BpdGNoX2ZyYW1lOwotICAgIHNpbGtfZmxvYXQgICB4ZndbIE1BWF9GUkFN
RV9MRU5HVEggXTsKICAgICBzaWxrX2Zsb2F0ICAgcmVzX3BpdGNoWyAyICogTUFYX0ZSQU1FX0xF
TkdUSCArIExBX1BJVENIX01BWCBdOwogICAgIGVjX2VuYyAgICAgICBzUmFuZ2VFbmNfY29weSwg
c1JhbmdlRW5jX2NvcHkyOwogICAgIHNpbGtfbnNxX3N0YXRlIHNOU1FfY29weSwgc05TUV9jb3B5
MjsKQEAgLTk3LDYgKzEwNCw5IEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZMUCgKICAg
ICBvcHVzX2ludDggICAgTGFzdEdhaW5JbmRleF9jb3B5MjsKICAgICBvcHVzX2ludDMyICAgcEdh
aW5zX1ExNlsgTUFYX05CX1NVQkZSIF07CiAgICAgb3B1c191aW50OCAgIGVjX2J1Zl9jb3B5WyAx
Mjc1IF07CisgICAgb3B1c19pbnQgICAgIGdhaW5fbG9ja1sgTUFYX05CX1NVQkZSIF0gPSB7MH07
CisgICAgb3B1c19pbnQxNiAgIGJlc3RfZ2Fpbl9tdWx0WyBNQVhfTkJfU1VCRlIgXTsKKyAgICBv
cHVzX2ludCAgICAgYmVzdF9zdW1bIE1BWF9OQl9TVUJGUiBdOwogCiAgICAgLyogVGhpcyBpcyB0
b3RhbGx5IHVubmVjZXNzYXJ5IGJ1dCBtYW55IGNvbXBpbGVycyAoaW5jbHVkaW5nIGdjYykgYXJl
IHRvbyBkdW1iIHRvIHJlYWxpc2UgaXQgKi8KICAgICBMYXN0R2FpbkluZGV4X2NvcHkyID0gbkJp
dHNfbG93ZXIgPSBuQml0c191cHBlciA9IGdhaW5NdWx0X2xvd2VyID0gZ2Fpbk11bHRfdXBwZXIg
PSAwOwpAQCAtMTM5LDIyICsxNDksMTcgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRkxQ
KAogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwogICAgICAgICAvKiBGaW5kIGxpbmVhciBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cyAo
TFBDICsgTFRQKSAqLwogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqLwotICAgICAgICBzaWxrX2ZpbmRfcHJlZF9jb2Vmc19GTFAoIHBz
RW5jLCAmc0VuY0N0cmwsIHJlc19waXRjaCwgeF9mcmFtZSwgY29uZENvZGluZyApOworICAgICAg
ICBzaWxrX2ZpbmRfcHJlZF9jb2Vmc19GTFAoIHBzRW5jLCAmc0VuY0N0cmwsIHJlc19waXRjaF9m
cmFtZSwgeF9mcmFtZSwgY29uZENvZGluZyApOwogCiAgICAgICAgIC8qKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqLwogICAgICAgICAvKiBQcm9jZXNzIGdhaW5zICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKiovCiAgICAgICAgIHNpbGtfcHJvY2Vzc19nYWluc19GTFAoIHBzRW5jLCAm
c0VuY0N0cmwsIGNvbmRDb2RpbmcgKTsKIAotICAgICAgICAvKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKiovCi0gICAgICAgIC8qIFByZWZpbHRlcmluZyBmb3Igbm9pc2Ug
c2hhcGVyICAgICAgICAgKi8KLSAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqLwotICAgICAgICBzaWxrX3ByZWZpbHRlcl9GTFAoIHBzRW5jLCAmc0VuY0N0
cmwsIHhmdywgeF9mcmFtZSApOwotCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwogICAgICAgICAvKiBMb3cgQml0cmF0ZSBSZWR1bmRhbnQgRW5jb2Rp
bmcgICAgICAgKi8KICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKiovCi0gICAgICAgIHNpbGtfTEJSUl9lbmNvZGVfRkxQKCBwc0VuYywgJnNFbmNDdHJsLCB4
ZncsIGNvbmRDb2RpbmcgKTsKKyAgICAgICAgc2lsa19MQlJSX2VuY29kZV9GTFAoIHBzRW5jLCAm
c0VuY0N0cmwsIHhfZnJhbWUsIGNvbmRDb2RpbmcgKTsKIAogICAgICAgICAvKiBMb29wIG92ZXIg
cXVhbnRpemVyIGFuZCBlbnRyb3kgY29kaW5nIHRvIGNvbnRyb2wgYml0cmF0ZSAqLwogICAgICAg
ICBtYXhJdGVyID0gNjsKQEAgLTE4OCw3ICsxOTMsMTEgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVf
ZnJhbWVfRkxQKAogICAgICAgICAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KICAgICAgICAgICAgICAgICAvKiBOb2lzZSBzaGFwaW5nIHF1YW50aXph
dGlvbiAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICAgICAgICAgIHNpbGtfTlNRX3dyYXBwZXJf
RkxQKCBwc0VuYywgJnNFbmNDdHJsLCAmcHNFbmMtPnNDbW4uaW5kaWNlcywgJnBzRW5jLT5zQ21u
LnNOU1EsIHBzRW5jLT5zQ21uLnB1bHNlcywgeGZ3ICk7CisgICAgICAgICAgICAgICAgc2lsa19O
U1Ffd3JhcHBlcl9GTFAoIHBzRW5jLCAmc0VuY0N0cmwsICZwc0VuYy0+c0Ntbi5pbmRpY2VzLCAm
cHNFbmMtPnNDbW4uc05TUSwgcHNFbmMtPnNDbW4ucHVsc2VzLCB4X2ZyYW1lICk7CisKKyAgICAg
ICAgICAgICAgICBpZiAoIGl0ZXIgPT0gbWF4SXRlciAmJiAhZm91bmRfbG93ZXIgKSB7CisgICAg
ICAgICAgICAgICAgICAgIHNpbGtfbWVtY3B5KCAmc1JhbmdlRW5jX2NvcHkyLCBwc1JhbmdlRW5j
LCBzaXplb2YoIGVjX2VuYyApICk7CisgICAgICAgICAgICAgICAgfQogCiAgICAgICAgICAgICAg
ICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgICAgICAg
ICAgICAgLyogRW5jb2RlIFBhcmFtZXRlcnMgICAgICAgICAgICAgICAgICAgICovCkBAIC0yMDMs
NiArMjEyLDMzIEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZMUCgKIAogICAgICAgICAg
ICAgICAgIG5CaXRzID0gZWNfdGVsbCggcHNSYW5nZUVuYyApOwogCisgICAgICAgICAgICAgICAg
LyogSWYgd2Ugc3RpbGwgYnVzdCBhZnRlciB0aGUgbGFzdCBpdGVyYXRpb24sIGRvIHNvbWUgZGFt
YWdlIGNvbnRyb2wuICovCisgICAgICAgICAgICAgICAgaWYgKCBpdGVyID09IG1heEl0ZXIgJiYg
IWZvdW5kX2xvd2VyICYmIG5CaXRzID4gbWF4Qml0cyApIHsKKyAgICAgICAgICAgICAgICAgICAg
c2lsa19tZW1jcHkoIHBzUmFuZ2VFbmMsICZzUmFuZ2VFbmNfY29weTIsIHNpemVvZiggZWNfZW5j
ICkgKTsKKworICAgICAgICAgICAgICAgICAgICAvKiBLZWVwIGdhaW5zIHRoZSBzYW1lIGFzIHRo
ZSBsYXN0IGZyYW1lLiAqLworICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c1NoYXBlLkxhc3RH
YWluSW5kZXggPSBzRW5jQ3RybC5sYXN0R2FpbkluZGV4UHJldjsKKyAgICAgICAgICAgICAgICAg
ICAgZm9yICggaSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaSsrICkgeworICAgICAg
ICAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4uaW5kaWNlcy5HYWluc0luZGljZXNbIGkgXSA9
IDQ7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgaWYgKGNvbmRD
b2RpbmcgIT0gQ09ERV9DT05ESVRJT05BTExZKSB7CisgICAgICAgICAgICAgICAgICAgICAgIHBz
RW5jLT5zQ21uLmluZGljZXMuR2FpbnNJbmRpY2VzWyAwIF0gPSBzRW5jQ3RybC5sYXN0R2Fpbklu
ZGV4UHJldjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBwc0Vu
Yy0+c0Ntbi5lY19wcmV2TGFnSW5kZXggPSBlY19wcmV2TGFnSW5kZXhfY29weTsKKyAgICAgICAg
ICAgICAgICAgICAgcHNFbmMtPnNDbW4uZWNfcHJldlNpZ25hbFR5cGUgPSBlY19wcmV2U2lnbmFs
VHlwZV9jb3B5OworICAgICAgICAgICAgICAgICAgICAvKiBDbGVhciBhbGwgcHVsc2VzLiAqLwor
ICAgICAgICAgICAgICAgICAgICBmb3IgKCBpID0gMDsgaSA8IHBzRW5jLT5zQ21uLmZyYW1lX2xl
bmd0aDsgaSsrICkgeworICAgICAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4ucHVsc2Vz
WyBpIF0gPSAwOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAg
c2lsa19lbmNvZGVfaW5kaWNlcyggJnBzRW5jLT5zQ21uLCBwc1JhbmdlRW5jLCBwc0VuYy0+c0Nt
bi5uRnJhbWVzRW5jb2RlZCwgMCwgY29uZENvZGluZyApOworCisgICAgICAgICAgICAgICAgICAg
IHNpbGtfZW5jb2RlX3B1bHNlcyggcHNSYW5nZUVuYywgcHNFbmMtPnNDbW4uaW5kaWNlcy5zaWdu
YWxUeXBlLCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnF1YW50T2Zmc2V0VHlwZSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHBzRW5jLT5zQ21uLnB1bHNlcywgcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3Ro
ICk7CisKKyAgICAgICAgICAgICAgICAgICAgbkJpdHMgPSBlY190ZWxsKCBwc1JhbmdlRW5jICk7
CisgICAgICAgICAgICAgICAgfQorCiAgICAgICAgICAgICAgICAgaWYoIHVzZUNCUiA9PSAwICYm
IGl0ZXIgPT0gMCAmJiBuQml0cyA8PSBtYXhCaXRzICkgewogICAgICAgICAgICAgICAgICAgICBi
cmVhazsKICAgICAgICAgICAgICAgICB9CkBAIC0yMjMsNyArMjU5LDkgQEAgb3B1c19pbnQgc2ls
a19lbmNvZGVfZnJhbWVfRkxQKAogICAgICAgICAgICAgaWYoIG5CaXRzID4gbWF4Qml0cyApIHsK
ICAgICAgICAgICAgICAgICBpZiggZm91bmRfbG93ZXIgPT0gMCAmJiBpdGVyID49IDIgKSB7CiAg
ICAgICAgICAgICAgICAgICAgIC8qIEFkanVzdCB0aGUgcXVhbnRpemVyJ3MgcmF0ZS9kaXN0b3J0
aW9uIHRyYWRlb2ZmIGFuZCBkaXNjYXJkIHByZXZpb3VzICJ1cHBlciIgcmVzdWx0cyAqLwotICAg
ICAgICAgICAgICAgICAgICBzRW5jQ3RybC5MYW1iZGEgKj0gMS41ZjsKKyAgICAgICAgICAgICAg
ICAgICAgc0VuY0N0cmwuTGFtYmRhID0gc2lsa19tYXhfZmxvYXQoc0VuY0N0cmwuTGFtYmRhKjEu
NWYsIDEuNWYpOworICAgICAgICAgICAgICAgICAgICAvKiBSZWR1Y2luZyBkaXRoZXJpbmcgY2Fu
IGhlbHAgdXMgaGl0IHRoZSB0YXJnZXQuICovCisgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5z
Q21uLmluZGljZXMucXVhbnRPZmZzZXRUeXBlID0gMDsKICAgICAgICAgICAgICAgICAgICAgZm91
bmRfdXBwZXIgPSAwOwogICAgICAgICAgICAgICAgICAgICBnYWluc0lEX3VwcGVyID0gLTE7CiAg
ICAgICAgICAgICAgICAgfSBlbHNlIHsKQEAgLTI1MCwxNSArMjg4LDM0IEBAIG9wdXNfaW50IHNp
bGtfZW5jb2RlX2ZyYW1lX0ZMUCgKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAg
IH0KIAorICAgICAgICAgICAgaWYgKCAhZm91bmRfbG93ZXIgJiYgbkJpdHMgPiBtYXhCaXRzICkg
eworICAgICAgICAgICAgICAgIGludCBqOworICAgICAgICAgICAgICAgIGZvciAoIGkgPSAwOyBp
IDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAgaW50
IHN1bT0wOworICAgICAgICAgICAgICAgICAgICBmb3IgKCBqID0gaSpwc0VuYy0+c0Ntbi5zdWJm
cl9sZW5ndGg7IGogPCAoaSsxKSpwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7IGorKyApIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHN1bSArPSBhYnMoIHBzRW5jLT5zQ21uLnB1bHNlc1tqXSAp
OworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGlmICggaXRlciA9
PSAwIHx8IChzdW0gPCBiZXN0X3N1bVtpXSAmJiAhZ2Fpbl9sb2NrW2ldKSApIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIGJlc3Rfc3VtW2ldID0gc3VtOworICAgICAgICAgICAgICAgICAgICAg
ICAgYmVzdF9nYWluX211bHRbaV0gPSBnYWluTXVsdF9RODsKKyAgICAgICAgICAgICAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGdhaW5fbG9ja1tpXSA9IDE7CisgICAg
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CiAgICAg
ICAgICAgICBpZiggKCBmb3VuZF9sb3dlciAmIGZvdW5kX3VwcGVyICkgPT0gMCApIHsKICAgICAg
ICAgICAgICAgICAvKiBBZGp1c3QgZ2FpbiBhY2NvcmRpbmcgdG8gaGlnaC1yYXRlIHJhdGUvZGlz
dG9ydGlvbiBjdXJ2ZSAqLwotICAgICAgICAgICAgICAgIG9wdXNfaW50MzIgZ2Fpbl9mYWN0b3Jf
UTE2OwotICAgICAgICAgICAgICAgIGdhaW5fZmFjdG9yX1ExNiA9IHNpbGtfbG9nMmxpbiggc2ls
a19MU0hJRlQoIG5CaXRzIC0gbWF4Qml0cywgNyApIC8gcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3Ro
ICsgU0lMS19GSVhfQ09OU1QoIDE2LCA3ICkgKTsKLSAgICAgICAgICAgICAgICBnYWluX2ZhY3Rv
cl9RMTYgPSBzaWxrX21pbl8zMiggZ2Fpbl9mYWN0b3JfUTE2LCBTSUxLX0ZJWF9DT05TVCggMiwg
MTYgKSApOwogICAgICAgICAgICAgICAgIGlmKCBuQml0cyA+IG1heEJpdHMgKSB7Ci0gICAgICAg
ICAgICAgICAgICAgIGdhaW5fZmFjdG9yX1ExNiA9IHNpbGtfbWF4XzMyKCBnYWluX2ZhY3Rvcl9R
MTYsIFNJTEtfRklYX0NPTlNUKCAxLjMsIDE2ICkgKTsKKyAgICAgICAgICAgICAgICAgICAgaWYg
KGdhaW5NdWx0X1E4IDwgMTYzODQpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGdhaW5NdWx0
X1E4ICo9IDI7CisgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAg
ICAgICAgICBnYWluTXVsdF9ROCA9IDMyNzY3OworICAgICAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgb3B1c19pbnQzMiBnYWlu
X2ZhY3Rvcl9RMTY7CisgICAgICAgICAgICAgICAgICAgIGdhaW5fZmFjdG9yX1ExNiA9IHNpbGtf
bG9nMmxpbiggc2lsa19MU0hJRlQoIG5CaXRzIC0gbWF4Qml0cywgNyApIC8gcHNFbmMtPnNDbW4u
ZnJhbWVfbGVuZ3RoICsgU0lMS19GSVhfQ09OU1QoIDE2LCA3ICkgKTsKKyAgICAgICAgICAgICAg
ICAgICAgZ2Fpbk11bHRfUTggPSBzaWxrX1NNVUxXQiggZ2Fpbl9mYWN0b3JfUTE2LCBnYWluTXVs
dF9ROCApOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBnYWluTXVsdF9ROCA9
IHNpbGtfU01VTFdCKCBnYWluX2ZhY3Rvcl9RMTYsIGdhaW5NdWx0X1E4ICk7CiAgICAgICAgICAg
ICB9IGVsc2UgewogICAgICAgICAgICAgICAgIC8qIEFkanVzdCBnYWluIGJ5IGludGVycG9sYXRp
bmcgKi8KICAgICAgICAgICAgICAgICBnYWluTXVsdF9ROCA9IGdhaW5NdWx0X2xvd2VyICsgKCAo
IGdhaW5NdWx0X3VwcGVyIC0gZ2Fpbk11bHRfbG93ZXIgKSAqICggbWF4Qml0cyAtIG5CaXRzX2xv
d2VyICkgKSAvICggbkJpdHNfdXBwZXIgLSBuQml0c19sb3dlciApOwpAQCAtMjcyLDcgKzMyOSwx
MyBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GTFAoCiAgICAgICAgICAgICB9CiAKICAg
ICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaSsrICkgewot
ICAgICAgICAgICAgICAgIHBHYWluc19RMTZbIGkgXSA9IHNpbGtfTFNISUZUX1NBVDMyKCBzaWxr
X1NNVUxXQiggc0VuY0N0cmwuR2FpbnNVbnFfUTE2WyBpIF0sIGdhaW5NdWx0X1E4ICksIDggKTsK
KyAgICAgICAgICAgICAgICBvcHVzX2ludDE2IHRtcDsKKyAgICAgICAgICAgICAgICBpZiAoIGdh
aW5fbG9ja1tpXSApIHsKKyAgICAgICAgICAgICAgICAgICAgdG1wID0gYmVzdF9nYWluX211bHRb
aV07CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgdG1wID0g
Z2Fpbk11bHRfUTg7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHBHYWluc19R
MTZbIGkgXSA9IHNpbGtfTFNISUZUX1NBVDMyKCBzaWxrX1NNVUxXQiggc0VuY0N0cmwuR2FpbnNV
bnFfUTE2WyBpIF0sIHRtcCApLCA4ICk7CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIC8q
IFF1YW50aXplIGdhaW5zICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZW5lcmd5X0ZMUC5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2Zsb2F0L2VuZXJneV9GTFAuYwppbmRleCAyNGI4MTc5ZjllM2I0ZjNjODhlOTkyY2Y5ZmQ4
MWE0ZDkwMjk0Yzc2Li43YmM3MTczYzljZjNmNDY2OTllODljZDEzZGIzYjI3N2FkZTY2MDZhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZmxvYXQvZW5lcmd5X0ZMUC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9lbmVyZ3lf
RkxQLmMKQEAgLTM3LDEzICszNywxMiBAQCBkb3VibGUgc2lsa19lbmVyZ3lfRkxQKAogICAgIG9w
dXNfaW50ICAgICAgICAgICAgZGF0YVNpemUKICkKIHsKLSAgICBvcHVzX2ludCAgaSwgZGF0YVNp
emU0OworICAgIG9wdXNfaW50IGk7CiAgICAgZG91YmxlICAgcmVzdWx0OwogCiAgICAgLyogNHgg
dW5yb2xsZWQgbG9vcCAqLwogICAgIHJlc3VsdCA9IDAuMDsKLSAgICBkYXRhU2l6ZTQgPSBkYXRh
U2l6ZSAmIDB4RkZGQzsKLSAgICBmb3IoIGkgPSAwOyBpIDwgZGF0YVNpemU0OyBpICs9IDQgKSB7
CisgICAgZm9yKCBpID0gMDsgaSA8IGRhdGFTaXplIC0gMzsgaSArPSA0ICkgewogICAgICAgICBy
ZXN1bHQgKz0gZGF0YVsgaSArIDAgXSAqIChkb3VibGUpZGF0YVsgaSArIDAgXSArCiAgICAgICAg
ICAgICAgICAgICBkYXRhWyBpICsgMSBdICogKGRvdWJsZSlkYXRhWyBpICsgMSBdICsKICAgICAg
ICAgICAgICAgICAgIGRhdGFbIGkgKyAyIF0gKiAoZG91YmxlKWRhdGFbIGkgKyAyIF0gKwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfTFBDX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfTFBDX0ZM
UC5jCmluZGV4IGZjZmUxYzM2ODFlYjYxZjQyNzM2MzhjYzQyZTFlMTcwMDA0OTFlZGUuLjRkNjM5
NjRmZWJiOGIyOTMyZWY5Y2Y5OGZmZTk2YjM5NmEzN2I4MjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9h
dC9maW5kX0xQQ19GTFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZmluZF9MUENfRkxQLmMKQEAgLTczLDcg
KzczLDcgQEAgdm9pZCBzaWxrX2ZpbmRfTFBDX0ZMUCgKICAgICAgICAgICAgIHNpbGtfaW50ZXJw
b2xhdGUoIE5MU0YwX1ExNSwgcHNFbmNDLT5wcmV2X05MU0ZxX1ExNSwgTkxTRl9RMTUsIGssIHBz
RW5jQy0+cHJlZGljdExQQ09yZGVyICk7CiAKICAgICAgICAgICAgIC8qIENvbnZlcnQgdG8gTFBD
IGZvciByZXNpZHVhbCBlbmVyZ3kgZXZhbHVhdGlvbiAqLwotICAgICAgICAgICAgc2lsa19OTFNG
MkFfRkxQKCBhX3RtcCwgTkxTRjBfUTE1LCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciApOworICAg
ICAgICAgICAgc2lsa19OTFNGMkFfRkxQKCBhX3RtcCwgTkxTRjBfUTE1LCBwc0VuY0MtPnByZWRp
Y3RMUENPcmRlciwgcHNFbmNDLT5hcmNoICk7CiAKICAgICAgICAgICAgIC8qIENhbGN1bGF0ZSBy
ZXNpZHVhbCBlbmVyZ3kgd2l0aCBMU0YgaW50ZXJwb2xhdGlvbiAqLwogICAgICAgICAgICAgc2ls
a19MUENfYW5hbHlzaXNfZmlsdGVyX0ZMUCggTFBDX3JlcywgYV90bXAsIHgsIDIgKiBzdWJmcl9s
ZW5ndGgsIHBzRW5jQy0+cHJlZGljdExQQ09yZGVyICk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQv
ZmluZF9MVFBfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZmluZF9MVFBfRkxQLmMKaW5kZXggNzIyOTk5NjAx
NDA5ZDNkOTQ2MzkyMjZjMGExZjIzZjE5YTdlNGQ3NS4uZjk3MDY0OTMwZTg0MTZjZmRmZTk1MmVh
ZGJiOGJhNzRiMDljOGY0MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfTFRQX0ZMUC5jCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9mbG9hdC9maW5kX0xUUF9GTFAuYwpAQCAtMzMsMTAwICszMywzMiBAQCBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KICNpbmNsdWRlICJ0dW5pbmdfcGFyYW1ldGVycy5oIgogCiB2
b2lkIHNpbGtfZmluZF9MVFBfRkxQKAotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAg
ICAgYlsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgLyogTyAgICBMVFAgY29lZnMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAg
ICAgICAgICAgICAgICAgICBXTFRQWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JE
RVIgXSwgLyogTyAgICBXZWlnaHQgZm9yIExUUCBxdWFudGl6YXRpb24gICAgICAgKi8KLSAgICBz
aWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgICpMVFByZWRDb2RHYWluLCAgICAgICAgICAg
ICAgICAgICAgIC8qIE8gICAgTFRQIGNvZGluZyBnYWluICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgcl9scGNbXSwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMUEMgcmVzaWR1YWwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICBsYWdbICBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAvKiBJICAgIExUUCBsYWdzICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0
ICAgICAgICAgICAgICAgIFdnaHRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgIC8qIEkg
ICAgV2VpZ2h0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNp
bGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgWFhbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRF
UiAqIExUUF9PUkRFUiBdLCAvKiBPICAgIFdlaWdodCBmb3IgTFRQIHF1YW50aXphdGlvbiAgICAg
ICAgICovCisgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICB4WFsgTUFYX05CX1NV
QkZSICogTFRQX09SREVSIF0sICAgICAvKiBPICAgIFdlaWdodCBmb3IgTFRQIHF1YW50aXphdGlv
biAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
IHJfcHRyW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFBDIHJlc2lkdWFs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgbGFnWyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgLyogSSAg
ICBMVFAgbGFncyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBzdWJmcl9sZW5ndGgsICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIFN1YmZyYW1lIGxlbmd0aCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
bWVtX29mZnNldCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc2Ft
cGxlcyBpbiBMVFAgbWVtb3J5ICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICBuYl9zdWJmciAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKLSAg
ICBvcHVzX2ludCAgIGksIGs7Ci0gICAgc2lsa19mbG9hdCAqYl9wdHIsIHRlbXAsICpXTFRQX3B0
cjsKLSAgICBzaWxrX2Zsb2F0IExQQ19yZXNfbnJnLCBMUENfTFRQX3Jlc19ucmc7Ci0gICAgc2ls
a19mbG9hdCBkWyBNQVhfTkJfU1VCRlIgXSwgbSwgZywgZGVsdGFfYlsgTFRQX09SREVSIF07Ci0g
ICAgc2lsa19mbG9hdCB3WyBNQVhfTkJfU1VCRlIgXSwgbnJnWyBNQVhfTkJfU1VCRlIgXSwgcmVn
dTsKLSAgICBzaWxrX2Zsb2F0IFJyWyBMVFBfT1JERVIgXSwgcnJbIE1BWF9OQl9TVUJGUiBdOwot
ICAgIGNvbnN0IHNpbGtfZmxvYXQgKnJfcHRyLCAqbGFnX3B0cjsKKyAgICBvcHVzX2ludCAgIGs7
CisgICAgc2lsa19mbG9hdCAqeFhfcHRyLCAqWFhfcHRyOworICAgIGNvbnN0IHNpbGtfZmxvYXQg
KmxhZ19wdHI7CisgICAgc2lsa19mbG9hdCB4eCwgdGVtcDsKIAotICAgIGJfcHRyICAgID0gYjsK
LSAgICBXTFRQX3B0ciA9IFdMVFA7Ci0gICAgcl9wdHIgICAgPSAmcl9scGNbIG1lbV9vZmZzZXQg
XTsKKyAgICB4WF9wdHIgPSB4WDsKKyAgICBYWF9wdHIgPSBYWDsKICAgICBmb3IoIGsgPSAwOyBr
IDwgbmJfc3ViZnI7IGsrKyApIHsKICAgICAgICAgbGFnX3B0ciA9IHJfcHRyIC0gKCBsYWdbIGsg
XSArIExUUF9PUkRFUiAvIDIgKTsKKyAgICAgICAgc2lsa19jb3JyTWF0cml4X0ZMUCggbGFnX3B0
ciwgc3ViZnJfbGVuZ3RoLCBMVFBfT1JERVIsIFhYX3B0ciApOworICAgICAgICBzaWxrX2NvcnJW
ZWN0b3JfRkxQKCBsYWdfcHRyLCByX3B0ciwgc3ViZnJfbGVuZ3RoLCBMVFBfT1JERVIsIHhYX3B0
ciApOworICAgICAgICB4eCA9ICggc2lsa19mbG9hdCApc2lsa19lbmVyZ3lfRkxQKCByX3B0ciwg
c3ViZnJfbGVuZ3RoICsgTFRQX09SREVSICk7CisgICAgICAgIHRlbXAgPSAxLjBmIC8gc2lsa19t
YXgoIHh4LCBMVFBfQ09SUl9JTlZfTUFYICogMC41ZiAqICggWFhfcHRyWyAwIF0gKyBYWF9wdHJb
IDI0IF0gKSArIDEuMGYgKTsKKyAgICAgICAgc2lsa19zY2FsZV92ZWN0b3JfRkxQKCBYWF9wdHIs
IHRlbXAsIExUUF9PUkRFUiAqIExUUF9PUkRFUiApOworICAgICAgICBzaWxrX3NjYWxlX3ZlY3Rv
cl9GTFAoIHhYX3B0ciwgdGVtcCwgTFRQX09SREVSICk7CiAKLSAgICAgICAgc2lsa19jb3JyTWF0
cml4X0ZMUCggbGFnX3B0ciwgc3ViZnJfbGVuZ3RoLCBMVFBfT1JERVIsIFdMVFBfcHRyICk7Ci0g
ICAgICAgIHNpbGtfY29yclZlY3Rvcl9GTFAoIGxhZ19wdHIsIHJfcHRyLCBzdWJmcl9sZW5ndGgs
IExUUF9PUkRFUiwgUnIgKTsKLQotICAgICAgICByclsgayBdID0gKCBzaWxrX2Zsb2F0IClzaWxr
X2VuZXJneV9GTFAoIHJfcHRyLCBzdWJmcl9sZW5ndGggKTsKLSAgICAgICAgcmVndSA9IDEuMGYg
KyByclsgayBdICsKLSAgICAgICAgICAgIG1hdHJpeF9wdHIoIFdMVFBfcHRyLCAwLCAwLCBMVFBf
T1JERVIgKSArCi0gICAgICAgICAgICBtYXRyaXhfcHRyKCBXTFRQX3B0ciwgTFRQX09SREVSLTEs
IExUUF9PUkRFUi0xLCBMVFBfT1JERVIgKTsKLSAgICAgICAgcmVndSAqPSBMVFBfREFNUElORyAv
IDM7Ci0gICAgICAgIHNpbGtfcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRkxQKCBXTFRQX3B0ciwg
JnJyWyBrIF0sIHJlZ3UsIExUUF9PUkRFUiApOwotICAgICAgICBzaWxrX3NvbHZlX0xETF9GTFAo
IFdMVFBfcHRyLCBMVFBfT1JERVIsIFJyLCBiX3B0ciApOwotCi0gICAgICAgIC8qIENhbGN1bGF0
ZSByZXNpZHVhbCBlbmVyZ3kgKi8KLSAgICAgICAgbnJnWyBrIF0gPSBzaWxrX3Jlc2lkdWFsX2Vu
ZXJneV9jb3Zhcl9GTFAoIGJfcHRyLCBXTFRQX3B0ciwgUnIsIHJyWyBrIF0sIExUUF9PUkRFUiAp
OwotCi0gICAgICAgIHRlbXAgPSBXZ2h0WyBrIF0gLyAoIG5yZ1sgayBdICogV2dodFsgayBdICsg
MC4wMWYgKiBzdWJmcl9sZW5ndGggKTsKLSAgICAgICAgc2lsa19zY2FsZV92ZWN0b3JfRkxQKCBX
TFRQX3B0ciwgdGVtcCwgTFRQX09SREVSICogTFRQX09SREVSICk7Ci0gICAgICAgIHdbIGsgXSA9
IG1hdHJpeF9wdHIoIFdMVFBfcHRyLCBMVFBfT1JERVIgLyAyLCBMVFBfT1JERVIgLyAyLCBMVFBf
T1JERVIgKTsKLQotICAgICAgICByX3B0ciAgICArPSBzdWJmcl9sZW5ndGg7Ci0gICAgICAgIGJf
cHRyICAgICs9IExUUF9PUkRFUjsKLSAgICAgICAgV0xUUF9wdHIgKz0gTFRQX09SREVSICogTFRQ
X09SREVSOwotICAgIH0KLQotICAgIC8qIENvbXB1dGUgTFRQIGNvZGluZyBnYWluICovCi0gICAg
aWYoIExUUHJlZENvZEdhaW4gIT0gTlVMTCApIHsKLSAgICAgICAgTFBDX0xUUF9yZXNfbnJnID0g
MWUtNmY7Ci0gICAgICAgIExQQ19yZXNfbnJnICAgICA9IDAuMGY7Ci0gICAgICAgIGZvciggayA9
IDA7IGsgPCBuYl9zdWJmcjsgaysrICkgewotICAgICAgICAgICAgTFBDX3Jlc19ucmcgICAgICs9
IHJyWyAgayBdICogV2dodFsgayBdOwotICAgICAgICAgICAgTFBDX0xUUF9yZXNfbnJnICs9IG5y
Z1sgayBdICogV2dodFsgayBdOwotICAgICAgICB9Ci0KLSAgICAgICAgc2lsa19hc3NlcnQoIExQ
Q19MVFBfcmVzX25yZyA+IDAgKTsKLSAgICAgICAgKkxUUHJlZENvZEdhaW4gPSAzLjBmICogc2ls
a19sb2cyKCBMUENfcmVzX25yZyAvIExQQ19MVFBfcmVzX25yZyApOwotICAgIH0KLQotICAgIC8q
IFNtb290aGluZyAqLwotICAgIC8qIGQgPSBzdW0oIEIsIDEgKTsgKi8KLSAgICBiX3B0ciA9IGI7
Ci0gICAgZm9yKCBrID0gMDsgayA8IG5iX3N1YmZyOyBrKysgKSB7Ci0gICAgICAgIGRbIGsgXSA9
IDA7Ci0gICAgICAgIGZvciggaSA9IDA7IGkgPCBMVFBfT1JERVI7IGkrKyApIHsKLSAgICAgICAg
ICAgIGRbIGsgXSArPSBiX3B0clsgaSBdOwotICAgICAgICB9Ci0gICAgICAgIGJfcHRyICs9IExU
UF9PUkRFUjsKLSAgICB9Ci0gICAgLyogbSA9ICggdyAqIGQnICkgLyAoIHN1bSggdyApICsgMWUt
MyApOyAqLwotICAgIHRlbXAgPSAxZS0zZjsKLSAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7
IGsrKyApIHsKLSAgICAgICAgdGVtcCArPSB3WyBrIF07Ci0gICAgfQotICAgIG0gPSAwOwotICAg
IGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysrICkgewotICAgICAgICBtICs9IGRbIGsgXSAq
IHdbIGsgXTsKLSAgICB9Ci0gICAgbSA9IG0gLyB0ZW1wOwotCi0gICAgYl9wdHIgPSBiOwotICAg
IGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysrICkgewotICAgICAgICBnID0gTFRQX1NNT09U
SElORyAvICggTFRQX1NNT09USElORyArIHdbIGsgXSApICogKCBtIC0gZFsgayBdICk7Ci0gICAg
ICAgIHRlbXAgPSAwOwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSOyBpKysgKSB7
Ci0gICAgICAgICAgICBkZWx0YV9iWyBpIF0gPSBzaWxrX21heF9mbG9hdCggYl9wdHJbIGkgXSwg
MC4xZiApOwotICAgICAgICAgICAgdGVtcCArPSBkZWx0YV9iWyBpIF07Ci0gICAgICAgIH0KLSAg
ICAgICAgdGVtcCA9IGcgLyB0ZW1wOwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVS
OyBpKysgKSB7Ci0gICAgICAgICAgICBiX3B0clsgaSBdID0gYl9wdHJbIGkgXSArIGRlbHRhX2Jb
IGkgXSAqIHRlbXA7Ci0gICAgICAgIH0KLSAgICAgICAgYl9wdHIgKz0gTFRQX09SREVSOworICAg
ICAgICByX3B0ciAgKz0gc3ViZnJfbGVuZ3RoOworICAgICAgICBYWF9wdHIgKz0gTFRQX09SREVS
ICogTFRQX09SREVSOworICAgICAgICB4WF9wdHIgKz0gTFRQX09SREVSOwogICAgIH0KIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9mbG9hdC9maW5kX3ByZWRfY29lZnNfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZmlu
ZF9wcmVkX2NvZWZzX0ZMUC5jCmluZGV4IDFhZjRmZTVmMWIyZDE2NzZjYTI2ODJjMDI2ZDk4YzJl
NzgxYWU1MGMuLmNiMmU3NjNiMWRiMDJiYjNmZDBjMTY2ZjZhOTAwZDU3ZmMyM2I4MjQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9mbG9hdC9maW5kX3ByZWRfY29lZnNfRkxQLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2Zp
bmRfcHJlZF9jb2Vmc19GTFAuYwpAQCAtNDEsOCArNDEsOSBAQCB2b2lkIHNpbGtfZmluZF9wcmVk
X2NvZWZzX0ZMUCgKICkKIHsKICAgICBvcHVzX2ludCAgICAgICAgIGk7Ci0gICAgc2lsa19mbG9h
dCAgICAgICBXTFRQWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXTsKLSAg
ICBzaWxrX2Zsb2F0ICAgICAgIGludkdhaW5zWyBNQVhfTkJfU1VCRlIgXSwgV2dodFsgTUFYX05C
X1NVQkZSIF07CisgICAgc2lsa19mbG9hdCAgICAgICBYWExUUFsgTUFYX05CX1NVQkZSICogTFRQ
X09SREVSICogTFRQX09SREVSIF07CisgICAgc2lsa19mbG9hdCAgICAgICB4WExUUFsgTUFYX05C
X1NVQkZSICogTFRQX09SREVSIF07CisgICAgc2lsa19mbG9hdCAgICAgICBpbnZHYWluc1sgTUFY
X05CX1NVQkZSIF07CiAgICAgb3B1c19pbnQxNiAgICAgICBOTFNGX1ExNVsgTUFYX0xQQ19PUkRF
UiBdOwogICAgIGNvbnN0IHNpbGtfZmxvYXQgKnhfcHRyOwogICAgIHNpbGtfZmxvYXQgICAgICAg
KnhfcHJlX3B0ciwgTFBDX2luX3ByZVsgTUFYX05CX1NVQkZSICogTUFYX0xQQ19PUkRFUiArIE1B
WF9GUkFNRV9MRU5HVEggXTsKQEAgLTUyLDcgKzUzLDYgQEAgdm9pZCBzaWxrX2ZpbmRfcHJlZF9j
b2Vmc19GTFAoCiAgICAgZm9yKCBpID0gMDsgaSA8IHBzRW5jLT5zQ21uLm5iX3N1YmZyOyBpKysg
KSB7CiAgICAgICAgIHNpbGtfYXNzZXJ0KCBwc0VuY0N0cmwtPkdhaW5zWyBpIF0gPiAwLjBmICk7
CiAgICAgICAgIGludkdhaW5zWyBpIF0gPSAxLjBmIC8gcHNFbmNDdHJsLT5HYWluc1sgaSBdOwot
ICAgICAgICBXZ2h0WyBpIF0gICAgID0gaW52R2FpbnNbIGkgXSAqIGludkdhaW5zWyBpIF07CiAg
ICAgfQogCiAgICAgaWYoIHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9PSBUWVBFX1ZP
SUNFRCApIHsKQEAgLTYyLDEzICs2MiwxMSBAQCB2b2lkIHNpbGtfZmluZF9wcmVkX2NvZWZzX0ZM
UCgKICAgICAgICAgc2lsa19hc3NlcnQoIHBzRW5jLT5zQ21uLmx0cF9tZW1fbGVuZ3RoIC0gcHNF
bmMtPnNDbW4ucHJlZGljdExQQ09yZGVyID49IHBzRW5jQ3RybC0+cGl0Y2hMWyAwIF0gKyBMVFBf
T1JERVIgLyAyICk7CiAKICAgICAgICAgLyogTFRQIGFuYWx5c2lzICovCi0gICAgICAgIHNpbGtf
ZmluZF9MVFBfRkxQKCBwc0VuY0N0cmwtPkxUUENvZWYsIFdMVFAsICZwc0VuY0N0cmwtPkxUUHJl
ZENvZEdhaW4sIHJlc19waXRjaCwKLSAgICAgICAgICAgIHBzRW5jQ3RybC0+cGl0Y2hMLCBXZ2h0
LCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGgsIHBzRW5jLT5zQ21uLm5iX3N1YmZyLCBwc0VuYy0+
c0Ntbi5sdHBfbWVtX2xlbmd0aCApOworICAgICAgICBzaWxrX2ZpbmRfTFRQX0ZMUCggWFhMVFAs
IHhYTFRQLCByZXNfcGl0Y2gsIHBzRW5jQ3RybC0+cGl0Y2hMLCBwc0VuYy0+c0Ntbi5zdWJmcl9s
ZW5ndGgsIHBzRW5jLT5zQ21uLm5iX3N1YmZyICk7CiAKICAgICAgICAgLyogUXVhbnRpemUgTFRQ
IGdhaW4gcGFyYW1ldGVycyAqLwogICAgICAgICBzaWxrX3F1YW50X0xUUF9nYWluc19GTFAoIHBz
RW5jQ3RybC0+TFRQQ29lZiwgcHNFbmMtPnNDbW4uaW5kaWNlcy5MVFBJbmRleCwgJnBzRW5jLT5z
Q21uLmluZGljZXMuUEVSSW5kZXgsCi0gICAgICAgICAgICAmcHNFbmMtPnNDbW4uc3VtX2xvZ19n
YWluX1E3LCBXTFRQLCBwc0VuYy0+c0Ntbi5tdV9MVFBfUTksIHBzRW5jLT5zQ21uLkxUUFF1YW50
TG93Q29tcGxleGl0eSwgcHNFbmMtPnNDbW4ubmJfc3ViZnIsCi0gICAgICAgICAgICBwc0VuYy0+
c0Ntbi5hcmNoICk7CisgICAgICAgICAgICAmcHNFbmMtPnNDbW4uc3VtX2xvZ19nYWluX1E3LCAm
cHNFbmNDdHJsLT5MVFByZWRDb2RHYWluLCBYWExUUCwgeFhMVFAsIHBzRW5jLT5zQ21uLnN1YmZy
X2xlbmd0aCwgcHNFbmMtPnNDbW4ubmJfc3ViZnIsIHBzRW5jLT5zQ21uLmFyY2ggKTsKIAogICAg
ICAgICAvKiBDb250cm9sIExUUCBzY2FsaW5nICovCiAgICAgICAgIHNpbGtfTFRQX3NjYWxlX2N0
cmxfRkxQKCBwc0VuYywgcHNFbmNDdHJsLCBjb25kQ29kaW5nICk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
ZmxvYXQvaW5uZXJfcHJvZHVjdF9GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9pbm5lcl9wcm9kdWN0X0ZMUC5j
CmluZGV4IDAyOWMwMTI5MTFkYWRkNjczMmZmMTM3M2ZiYTA0YjI5NmUzYWM2OWUuLmNkZDM5ZDI0
Y2U5NDE4OTE2ZGIzNDZiYTkzYWQ1OGNmMGQ5ZmMxNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9p
bm5lcl9wcm9kdWN0X0ZMUC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9pbm5lcl9wcm9kdWN0X0ZMUC5jCkBA
IC0zOCwxMyArMzgsMTIgQEAgZG91YmxlIHNpbGtfaW5uZXJfcHJvZHVjdF9GTFAoCiAgICAgb3B1
c19pbnQgICAgICAgICAgICBkYXRhU2l6ZQogKQogewotICAgIG9wdXNfaW50ICBpLCBkYXRhU2l6
ZTQ7CisgICAgb3B1c19pbnQgaTsKICAgICBkb3VibGUgICByZXN1bHQ7CiAKICAgICAvKiA0eCB1
bnJvbGxlZCBsb29wICovCiAgICAgcmVzdWx0ID0gMC4wOwotICAgIGRhdGFTaXplNCA9IGRhdGFT
aXplICYgMHhGRkZDOwotICAgIGZvciggaSA9IDA7IGkgPCBkYXRhU2l6ZTQ7IGkgKz0gNCApIHsK
KyAgICBmb3IoIGkgPSAwOyBpIDwgZGF0YVNpemUgLSAzOyBpICs9IDQgKSB7CiAgICAgICAgIHJl
c3VsdCArPSBkYXRhMVsgaSArIDAgXSAqIChkb3VibGUpZGF0YTJbIGkgKyAwIF0gKwogICAgICAg
ICAgICAgICAgICAgZGF0YTFbIGkgKyAxIF0gKiAoZG91YmxlKWRhdGEyWyBpICsgMSBdICsKICAg
ICAgICAgICAgICAgICAgIGRhdGExWyBpICsgMiBdICogKGRvdWJsZSlkYXRhMlsgaSArIDIgXSAr
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvazJhX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2syYV9GTFAuYwpp
bmRleCAxMmFmNGU3NjY5N2E4Njk4MzFiNzNkZTUzM2UzMTZhODg1OWI4MTYzLi4xNDQ4MDA4ZGJi
ZWQxMzk3OTEwODkxMzJiMGUzOTFiMmU3ZTA3ZjZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvazJh
X0ZMUC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9mbG9hdC9rMmFfRkxQLmMKQEAgLTM5LDE1ICszOSwxNiBAQCB2b2lk
IHNpbGtfazJhX0ZMUCgKICkKIHsKICAgICBvcHVzX2ludCAgIGssIG47Ci0gICAgc2lsa19mbG9h
dCBBdG1wWyBTSUxLX01BWF9PUkRFUl9MUEMgXTsKKyAgICBzaWxrX2Zsb2F0IHJjaywgdG1wMSwg
dG1wMjsKIAogICAgIGZvciggayA9IDA7IGsgPCBvcmRlcjsgaysrICkgewotICAgICAgICBmb3Io
IG4gPSAwOyBuIDwgazsgbisrICkgewotICAgICAgICAgICAgQXRtcFsgbiBdID0gQVsgbiBdOwor
ICAgICAgICByY2sgPSByY1sgayBdOworICAgICAgICBmb3IoIG4gPSAwOyBuIDwgKGsgKyAxKSA+
PiAxOyBuKysgKSB7CisgICAgICAgICAgICB0bXAxID0gQVsgbiBdOworICAgICAgICAgICAgdG1w
MiA9IEFbIGsgLSBuIC0gMSBdOworICAgICAgICAgICAgQVsgbiBdICAgICAgICAgPSB0bXAxICsg
dG1wMiAqIHJjazsKKyAgICAgICAgICAgIEFbIGsgLSBuIC0gMSBdID0gdG1wMiArIHRtcDEgKiBy
Y2s7CiAgICAgICAgIH0KLSAgICAgICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyApIHsKLSAgICAg
ICAgICAgIEFbIG4gXSArPSBBdG1wWyBrIC0gbiAtIDEgXSAqIHJjWyBrIF07Ci0gICAgICAgIH0K
LSAgICAgICAgQVsgayBdID0gLXJjWyBrIF07CisgICAgICAgIEFbIGsgXSA9IC1yY2s7CiAgICAg
fQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2xldmluc29uZHVyYmluX0ZMUC5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zs
b2F0L2xldmluc29uZHVyYmluX0ZMUC5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBm
MGJhNjA2OTgxMmZkMzJiOTJjYmVhNjQ5ZDliYjdlMGI1NWE0ZjAyLi4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9sZXZpbnNvbmR1cmJpbl9G
TFAuYworKysgL2Rldi9udWxsCkBAIC0xLDgxICswLDAgQEAKLS8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotQ29w
eXJpZ2h0IChjKSAyMDA2LTIwMTEsIFNreXBlIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci1SZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKLW1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotYXJlIG1ldDoKLS0gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAotdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLS0gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKLW5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKLWRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0tIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJu
ZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCi1uYW1lcyBvZiBzcGVjaWZp
YyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQotcHJvZHVj
dHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0
dGVuCi1wZXJtaXNzaW9uLgotVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJ
R0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCi1BTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi1J
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRQotQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFCi1MSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi1DT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgotU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCi1JTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLUFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFCi1QT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
LwotCi0jaWZkZWYgSEFWRV9DT05GSUdfSAotI2luY2x1ZGUgImNvbmZpZy5oIgotI2VuZGlmCi0K
LSNpbmNsdWRlICJTaWdQcm9jX0ZMUC5oIgotCi0vKiBTb2x2ZSB0aGUgbm9ybWFsIGVxdWF0aW9u
cyB1c2luZyB0aGUgTGV2aW5zb24tRHVyYmluIHJlY3Vyc2lvbiAqLwotc2lsa19mbG9hdCBzaWxr
X2xldmluc29uZHVyYmluX0ZMUCggICAgICAgICAvKiBPICAgIHByZWRpY3Rpb24gZXJyb3IgZW5l
cmd5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9h
dCAgICAgICAgICBBW10sICAgICAgICAgICAgICAgIC8qIE8gICAgcHJlZGljdGlvbiBjb2VmZmlj
aWVudHMgICAgW29yZGVyXSAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBz
aWxrX2Zsb2F0ICAgIGNvcnJbXSwgICAgICAgICAgICAgLyogSSAgICBpbnB1dCBhdXRvLWNvcnJl
bGF0aW9ucyBbb3JkZXIgKyAxXSAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0
IG9wdXNfaW50ICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgIHByZWRpY3Rpb24gb3Jk
ZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pCi17Ci0g
ICAgb3B1c19pbnQgICBpLCBtSGFsZiwgbTsKLSAgICBzaWxrX2Zsb2F0IG1pbl9ucmcsIG5yZywg
dCwga20sIEF0bXAxLCBBdG1wMjsKLQotICAgIG1pbl9ucmcgPSAxZS0xMmYgKiBjb3JyWyAwIF0g
KyAxZS05ZjsKLSAgICBucmcgPSBjb3JyWyAwIF07Ci0gICAgbnJnID0gc2lsa19tYXhfZmxvYXQo
bWluX25yZywgbnJnKTsKLSAgICBBWyAwIF0gPSBjb3JyWyAxIF0gLyBucmc7Ci0gICAgbnJnIC09
IEFbIDAgXSAqIGNvcnJbIDEgXTsKLSAgICBucmcgPSBzaWxrX21heF9mbG9hdChtaW5fbnJnLCBu
cmcpOwotCi0gICAgZm9yKCBtID0gMTsgbSA8IG9yZGVyOyBtKysgKQotICAgIHsKLSAgICAgICAg
dCA9IGNvcnJbIG0gKyAxIF07Ci0gICAgICAgIGZvciggaSA9IDA7IGkgPCBtOyBpKysgKSB7Ci0g
ICAgICAgICAgICB0IC09IEFbIGkgXSAqIGNvcnJbIG0gLSBpIF07Ci0gICAgICAgIH0KLQotICAg
ICAgICAvKiByZWZsZWN0aW9uIGNvZWZmaWNpZW50ICovCi0gICAgICAgIGttID0gdCAvIG5yZzsK
LQotICAgICAgICAvKiByZXNpZHVhbCBlbmVyZ3kgKi8KLSAgICAgICAgbnJnIC09IGttICogdDsK
LSAgICAgICAgbnJnID0gc2lsa19tYXhfZmxvYXQobWluX25yZywgbnJnKTsKLQotICAgICAgICBt
SGFsZiA9IG0gPj4gMTsKLSAgICAgICAgZm9yKCBpID0gMDsgaSA8IG1IYWxmOyBpKysgKSB7Ci0g
ICAgICAgICAgICBBdG1wMSA9IEFbIGkgXTsKLSAgICAgICAgICAgIEF0bXAyID0gQVsgbSAtIGkg
LSAxIF07Ci0gICAgICAgICAgICBBWyBtIC0gaSAtIDEgXSAtPSBrbSAqIEF0bXAxOwotICAgICAg
ICAgICAgQVsgaSBdICAgICAgICAgLT0ga20gKiBBdG1wMjsKLSAgICAgICAgfQotICAgICAgICBp
ZiggbSAmIDEgKSB7Ci0gICAgICAgICAgICBBWyBtSGFsZiBdICAgICAtPSBrbSAqIEFbIG1IYWxm
IF07Ci0gICAgICAgIH0KLSAgICAgICAgQVsgbSBdID0ga207Ci0gICAgfQotCi0gICAgLyogcmV0
dXJuIHRoZSByZXNpZHVhbCBlbmVyZ3kgKi8KLSAgICByZXR1cm4gbnJnOwotfQotCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZmxvYXQvbWFpbl9GTFAuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9tYWluX0ZMUC5oCmluZGV4IGU1
YTc1OTcyZTVmOGMwMzBhMTA3NmM2NWQzMzZhN2QwMjg3NjNjNTQuLjVkYzBjY2Y0YTQxM2IzYTJk
M2VjNzkxMTRmYWEzMzRjNDJiNzY1M2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9tYWluX0ZMUC5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9mbG9hdC9tYWluX0ZMUC5oCkBAIC01Niw3ICs1Niw4IEBAIHZvaWQgc2lsa19I
UF92YXJpYWJsZV9jdXRvZmYoCiAKIC8qIEVuY29kZXIgbWFpbiBmdW5jdGlvbiAqLwogdm9pZCBz
aWxrX2VuY29kZV9kb19WQURfRkxQKAotICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GTFAgICAgICAg
ICAgKnBzRW5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIHN0
YXRlIEZMUCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgc2lsa19lbmNvZGVyX3N0
YXRlX0ZMUCAgICAgICAgICAqcHNFbmMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
L08gIEVuY29kZXIgc3RhdGUgRkxQICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBv
cHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2aXR5ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgRGVjaXNpb24gb2YgT3B1cyB2b2ljZSBhY3Rpdml0eSBkZXRlY3Rv
ciAgICAqLwogKTsKIAogLyogRW5jb2RlciBtYWluIGZ1bmN0aW9uICovCkBAIC03OSwyMiArODAs
MTEgQEAgb3B1c19pbnQgc2lsa19pbml0X2VuY29kZXIoCiBvcHVzX2ludCBzaWxrX2NvbnRyb2xf
ZW5jb2RlcigKICAgICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQICAgICAgICAgICpwc0VuYywgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIGVuY29kZXIg
c3RhdGUgRkxQICAgICAgICAgICAqLwogICAgIHNpbGtfRW5jQ29udHJvbFN0cnVjdCAgICAgICAg
ICAgKmVuY0NvbnRyb2wsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb250cm9sIHN0
cnVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQz
MiAgICAgICAgICAgICAgICBUYXJnZXRSYXRlX2JwcywgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIFRhcmdldCBtYXggYml0cmF0ZSAoYnBzKSAgICAgICAgICAgICAgICAgICAgKi8KICAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGFsbG93X2J3X3N3aXRjaCwgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgRmxhZyB0byBhbGxvdyBzd2l0Y2hpbmcgYXVkaW8gYmFuZHdpZHRo
ICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgY2hhbm5lbE5iLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDaGFubmVsIG51bWJlciAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICBmb3JjZV9mc19rSHoKICk7CiAKLS8qKioqKioqKioqKioqKioqLwotLyogUHJlZmlsdGVyaW5n
ICovCi0vKioqKioqKioqKioqKioqKi8KLXZvaWQgc2lsa19wcmVmaWx0ZXJfRkxQKAotICAgIHNp
bGtfZW5jb2Rlcl9zdGF0ZV9GTFAgICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSS9PICBFbmNvZGVyIHN0YXRlIEZMUCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX2NvbnRyb2xfRkxQICAqcHNFbmNDdHJsLCAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEVuY29kZXIgY29udHJvbCBGTFAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAg
IHh3W10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgV2VpZ2h0ZWQgc2ln
bmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQg
ICAgICAgICAgICAgICAgeFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBTcGVlY2ggc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pOwotCiAv
KioqKioqKioqKioqKioqKioqKioqKioqKiovCiAvKiBOb2lzZSBzaGFwaW5nIGFuYWx5c2lzICov
CiAvKioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0xNTMsMTUgKzE0MywxMiBAQCB2b2lk
IHNpbGtfZmluZF9MUENfRkxQKAogCiAvKiBMVFAgYW5hbHlzaXMgKi8KIHZvaWQgc2lsa19maW5k
X0xUUF9GTFAoCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICBiWyBNQVhfTkJf
U1VCRlIgKiBMVFBfT1JERVIgXSwgICAgICAvKiBPICAgIExUUCBjb2VmcyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAg
ICAgIFdMVFBbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBPICAg
IFdlaWdodCBmb3IgTFRQIHF1YW50aXphdGlvbiAgICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAg
ICAgICAgICAgICAgICAgICAgKkxUUHJlZENvZEdhaW4sICAgICAgICAgICAgICAgICAgICAgLyog
TyAgICBMVFAgY29kaW5nIGdhaW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAg
Y29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICByX2xwY1tdLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIExQQyByZXNpZHVhbCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIFhYWyBNQVhfTkJf
U1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyogTyAgICBXZWlnaHQgZm9yIExUUCBx
dWFudGl6YXRpb24gICAgICAgICAqLworICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAg
ICAgeFhbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdLCAgICAgLyogTyAgICBXZWlnaHQgZm9y
IExUUCBxdWFudGl6YXRpb24gICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19mbG9h
dCAgICAgICAgICAgICAgICByX3B0cltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIExQQyByZXNpZHVhbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGxhZ1sgIE1BWF9OQl9TVUJGUiBdLCAgICAg
ICAgICAgICAgIC8qIEkgICAgTFRQIGxhZ3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgV2dodFsgTUFYX05C
X1NVQkZSIF0sICAgICAgICAgICAgICAgLyogSSAgICBXZWlnaHRzICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICBzdWJmcl9sZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFN1YmZyYW1lIGxl
bmd0aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbWVtX29mZnNldCAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc2FtcGxlcyBpbiBMVFAgbWVtb3J5ICAgICAgICAg
ICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBuYl9zdWJmciAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICk7CiAKIHZvaWQgc2lsa19MVFBfYW5hbHlzaXNfZmlsdGVy
X0ZMUCgKQEAgLTE5OCwxNCArMTg1LDE1IEBAIHZvaWQgc2lsa19MUENfYW5hbHlzaXNfZmlsdGVy
X0ZMUCgKIAogLyogTFRQIHRhcCBxdWFudGl6ZXIgKi8KIHZvaWQgc2lsa19xdWFudF9MVFBfZ2Fp
bnNfRkxQKAotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgQlsgTUFYX05CX1NV
QkZSICogTFRQX09SREVSIF0sICAgICAgLyogSS9PICAoVW4tKXF1YW50aXplZCBMVFAgZ2FpbnMg
ICAgICAgICAgICAgICAgICAgICovCisgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAg
ICBCWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgICAvKiBPICAgIFF1YW50aXplZCBM
VFAgZ2FpbnMgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAg
ICAgICAgICAgICAgICAgIGNia19pbmRleFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgIC8qIE8g
ICAgQ29kZWJvb2sgaW5kZXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9w
dXNfaW50OCAgICAgICAgICAgICAgICAgICAgICAgKnBlcmlvZGljaXR5X2luZGV4LCAgICAgICAg
ICAgICAgICAgLyogTyAgICBQZXJpb2RpY2l0eSBpbmRleCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAqc3VtX2xvZ19nYWlu
X1E3LCAgICAgICAgICAgICAgICAgICAvKiBJL08gIEN1bXVsYXRpdmUgbWF4IHByZWRpY3Rpb24g
Z2FpbiAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIFdbIE1BWF9OQl9T
VUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBJICAgIEVycm9yIHdlaWdodHMgICAg
ICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgbXVfUTEwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBNdSB2YWx1ZSAo
Ui9EIHRyYWRlb2ZmKSAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQg
ICAgICAgICAgICAgICAgICBsb3dDb21wbGV4aXR5LCAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIEZsYWcgZm9yIGxvdyBjb21wbGV4aXR5ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgKnByZWRfZ2Fpbl9k
QiwgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBMVFAgcHJlZGljdGlvbiBnYWluICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAg
ICBYWFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSICogTFRQX09SREVSIF0sIC8qIEkgICAgQ29y
cmVsYXRpb24gbWF0cml4ICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2Zsb2F0
ICAgICAgICAgICAgICAgIHhYWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgIC8qIEkg
ICAgQ29ycmVsYXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgc3ViZnJfbGVuLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3ViZnJhbWUgICAgICAgICAg
ICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBuYl9zdWJmciwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBzdWJmcmFtZXMgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGFyY2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJj
aGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAqLwogKTsKIApAQCAtMjQ1LDIyICsyMzMs
NiBAQCB2b2lkIHNpbGtfY29yclZlY3Rvcl9GTFAoCiAgICAgc2lsa19mbG9hdCAgICAgICAgICAg
ICAgICAgICAgICAqWHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFgn
KnQgY29ycmVsYXRpb24gdmVjdG9yIFtvcmRlcl0gICAgICAgICAgICAgKi8KICk7CiAKLS8qIEFk
ZCBub2lzZSB0byBtYXRyaXggZGlhZ29uYWwgKi8KLXZvaWQgc2lsa19yZWd1bGFyaXplX2NvcnJl
bGF0aW9uc19GTFAoCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICAqWFgsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIENvcnJlbGF0aW9uIG1hdHJpY2Vz
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
ICAgICAgICp4eCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgQ29ycmVs
YXRpb24gdmFsdWVzICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtf
ZmxvYXQgICAgICAgICAgICAgICAgbm9pc2UsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBOb2lzZSBlbmVyZ3kgdG8gYWRkICAgICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBEICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIERpbWVuc2lvbiBvZiBYWCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSk7Ci0KLS8qIEZ1bmN0aW9uIHRvIHNvbHZlIGxpbmVhciBlcXVhdGlvbiBB
eCA9IGIsIHdoZXJlIEEgaXMgYW4gTXhNIHN5bW1ldHJpYyBtYXRyaXggKi8KLXZvaWQgc2lsa19z
b2x2ZV9MRExfRkxQKAotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgKkEsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBTeW1tZXRyaWMgc3F1YXJlIG1h
dHJpeCwgb3V0OiByZWcuICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICAgICAgICBNLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNpemUg
b2YgbWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxr
X2Zsb2F0ICAgICAgICAgICAgICAgICpiLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgUG9pbnRlciB0byBiIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgKnggICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogTyAgICBQb2ludGVyIHRvIHggc29sdXRpb24gdmVjdG9yICAgICAg
ICAgICAgICAgICovCi0pOwotCiAvKiBBcHBseSBzaW5lIHdpbmRvdyB0byBzaWduYWwgdmVjdG9y
LiAgKi8KIC8qIFdpbmRvdyB0eXBlczogICAgICAgICAgICAgICAgICAgICAgICAqLwogLyogIDEg
LT4gc2luZSB3aW5kb3cgZnJvbSAwIHRvIHBpLzIgICAgICovCkBAIC0yODUsNyArMjU3LDggQEAg
dm9pZCBzaWxrX0EyTkxTRl9GTFAoCiB2b2lkIHNpbGtfTkxTRjJBX0ZMUCgKICAgICBzaWxrX2Zs
b2F0ICAgICAgICAgICAgICAgICAgICAgICpwQVIsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIE8gICAgTFBDIGNvZWZmaWNpZW50cyBbIExQQ19vcmRlciBdICAgICAgICAgICAgICAq
LwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKk5MU0ZfUTE1LCAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBOTFNGIHZlY3RvciAgICAgIFsgTFBDX29yZGVyIF0g
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBMUENf
b3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExQQyBvcmRlciAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAg
ICAgICAgICAgIExQQ19vcmRlciwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFBD
IG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGludCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAgICAgICov
CiApOwogCiAvKiBMaW1pdCwgc3RhYmlsaXplLCBhbmQgcXVhbnRpemUgTkxTRnMgKi8KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9mbG9hdC9ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAuYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9u
b2lzZV9zaGFwZV9hbmFseXNpc19GTFAuYwppbmRleCA2NWY2ZWE1ODcwNTM4MTljZGIxNDFjMDRl
YjdkY2Y5MGU4ZGVkNzU0Li5jYjNkOGE1MGI3Y2I3NzA5NWJmYzJiZjg3MzU5YTViNzFjZmQzZGM1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQLmMKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2Zsb2F0L25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jCkBAIC01NSwyNSArNTUsMjEgQEAg
c3RhdGljIE9QVVNfSU5MSU5FIHNpbGtfZmxvYXQgd2FycGVkX2dhaW4oCiAvKiBDb252ZXJ0IHdh
cnBlZCBmaWx0ZXIgY29lZmZpY2llbnRzIHRvIG1vbmljIHBzZXVkby13YXJwZWQgY29lZmZpY2ll
bnRzIGFuZCBsaW1pdCBtYXhpbXVtICAgICAqLwogLyogYW1wbGl0dWRlIG9mIG1vbmljIHdhcnBl
ZCBjb2VmZmljaWVudHMgYnkgdXNpbmcgYmFuZHdpZHRoIGV4cGFuc2lvbiBvbiB0aGUgdHJ1ZSBj
b2VmZmljaWVudHMgKi8KIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHdhcnBlZF90cnVlMm1vbmlj
X2NvZWZzKAotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICpjb2Vmc19zeW4sCi0gICAgc2lsa19m
bG9hdCAgICAgICAgICAgKmNvZWZzX2FuYSwKKyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAqY29l
ZnMsCiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgbGFtYmRhLAogICAgIHNpbGtfZmxvYXQgICAg
ICAgICAgIGxpbWl0LAogICAgIG9wdXNfaW50ICAgICAgICAgICAgIG9yZGVyCiApIHsKICAgICBv
cHVzX2ludCAgIGksIGl0ZXIsIGluZCA9IDA7Ci0gICAgc2lsa19mbG9hdCB0bXAsIG1heGFicywg
Y2hpcnAsIGdhaW5fc3luLCBnYWluX2FuYTsKKyAgICBzaWxrX2Zsb2F0IHRtcCwgbWF4YWJzLCBj
aGlycCwgZ2FpbjsKIAogICAgIC8qIENvbnZlcnQgdG8gbW9uaWMgY29lZmZpY2llbnRzICovCiAg
ICAgZm9yKCBpID0gb3JkZXIgLSAxOyBpID4gMDsgaS0tICkgewotICAgICAgICBjb2Vmc19zeW5b
IGkgLSAxIF0gLT0gbGFtYmRhICogY29lZnNfc3luWyBpIF07Ci0gICAgICAgIGNvZWZzX2FuYVsg
aSAtIDEgXSAtPSBsYW1iZGEgKiBjb2Vmc19hbmFbIGkgXTsKKyAgICAgICAgY29lZnNbIGkgLSAx
IF0gLT0gbGFtYmRhICogY29lZnNbIGkgXTsKICAgICB9Ci0gICAgZ2Fpbl9zeW4gPSAoIDEuMGYg
LSBsYW1iZGEgKiBsYW1iZGEgKSAvICggMS4wZiArIGxhbWJkYSAqIGNvZWZzX3N5blsgMCBdICk7
Ci0gICAgZ2Fpbl9hbmEgPSAoIDEuMGYgLSBsYW1iZGEgKiBsYW1iZGEgKSAvICggMS4wZiArIGxh
bWJkYSAqIGNvZWZzX2FuYVsgMCBdICk7CisgICAgZ2FpbiA9ICggMS4wZiAtIGxhbWJkYSAqIGxh
bWJkYSApIC8gKCAxLjBmICsgbGFtYmRhICogY29lZnNbIDAgXSApOwogICAgIGZvciggaSA9IDA7
IGkgPCBvcmRlcjsgaSsrICkgewotICAgICAgICBjb2Vmc19zeW5bIGkgXSAqPSBnYWluX3N5bjsK
LSAgICAgICAgY29lZnNfYW5hWyBpIF0gKj0gZ2Fpbl9hbmE7CisgICAgICAgIGNvZWZzWyBpIF0g
Kj0gZ2FpbjsKICAgICB9CiAKICAgICAvKiBMaW1pdCAqLwpAQCAtODEsNyArNzcsNyBAQCBzdGF0
aWMgT1BVU19JTkxJTkUgdm9pZCB3YXJwZWRfdHJ1ZTJtb25pY19jb2VmcygKICAgICAgICAgLyog
RmluZCBtYXhpbXVtIGFic29sdXRlIHZhbHVlICovCiAgICAgICAgIG1heGFicyA9IC0xLjBmOwog
ICAgICAgICBmb3IoIGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAgICAgIHRtcCA9
IHNpbGtfbWF4KCBzaWxrX2Fic19mbG9hdCggY29lZnNfc3luWyBpIF0gKSwgc2lsa19hYnNfZmxv
YXQoIGNvZWZzX2FuYVsgaSBdICkgKTsKKyAgICAgICAgICAgIHRtcCA9IHNpbGtfYWJzX2Zsb2F0
KCBjb2Vmc1sgaSBdICk7CiAgICAgICAgICAgICBpZiggdG1wID4gbWF4YWJzICkgewogICAgICAg
ICAgICAgICAgIG1heGFicyA9IHRtcDsKICAgICAgICAgICAgICAgICBpbmQgPSBpOwpAQCAtOTQs
MzYgKzkwLDU5IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHdhcnBlZF90cnVlMm1vbmljX2Nv
ZWZzKAogCiAgICAgICAgIC8qIENvbnZlcnQgYmFjayB0byB0cnVlIHdhcnBlZCBjb2VmZmljaWVu
dHMgKi8KICAgICAgICAgZm9yKCBpID0gMTsgaSA8IG9yZGVyOyBpKysgKSB7Ci0gICAgICAgICAg
ICBjb2Vmc19zeW5bIGkgLSAxIF0gKz0gbGFtYmRhICogY29lZnNfc3luWyBpIF07Ci0gICAgICAg
ICAgICBjb2Vmc19hbmFbIGkgLSAxIF0gKz0gbGFtYmRhICogY29lZnNfYW5hWyBpIF07CisgICAg
ICAgICAgICBjb2Vmc1sgaSAtIDEgXSArPSBsYW1iZGEgKiBjb2Vmc1sgaSBdOwogICAgICAgICB9
Ci0gICAgICAgIGdhaW5fc3luID0gMS4wZiAvIGdhaW5fc3luOwotICAgICAgICBnYWluX2FuYSA9
IDEuMGYgLyBnYWluX2FuYTsKKyAgICAgICAgZ2FpbiA9IDEuMGYgLyBnYWluOwogICAgICAgICBm
b3IoIGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAgICAgIGNvZWZzX3N5blsgaSBd
ICo9IGdhaW5fc3luOwotICAgICAgICAgICAgY29lZnNfYW5hWyBpIF0gKj0gZ2Fpbl9hbmE7Cisg
ICAgICAgICAgICBjb2Vmc1sgaSBdICo9IGdhaW47CiAgICAgICAgIH0KIAogICAgICAgICAvKiBB
cHBseSBiYW5kd2lkdGggZXhwYW5zaW9uICovCiAgICAgICAgIGNoaXJwID0gMC45OWYgLSAoIDAu
OGYgKyAwLjFmICogaXRlciApICogKCBtYXhhYnMgLSBsaW1pdCApIC8gKCBtYXhhYnMgKiAoIGlu
ZCArIDEgKSApOwotICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfRkxQKCBjb2Vmc19zeW4sIG9yZGVy
LCBjaGlycCApOwotICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfRkxQKCBjb2Vmc19hbmEsIG9yZGVy
LCBjaGlycCApOworICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfRkxQKCBjb2Vmcywgb3JkZXIsIGNo
aXJwICk7CiAKICAgICAgICAgLyogQ29udmVydCB0byBtb25pYyB3YXJwZWQgY29lZmZpY2llbnRz
ICovCiAgICAgICAgIGZvciggaSA9IG9yZGVyIC0gMTsgaSA+IDA7IGktLSApIHsKLSAgICAgICAg
ICAgIGNvZWZzX3N5blsgaSAtIDEgXSAtPSBsYW1iZGEgKiBjb2Vmc19zeW5bIGkgXTsKLSAgICAg
ICAgICAgIGNvZWZzX2FuYVsgaSAtIDEgXSAtPSBsYW1iZGEgKiBjb2Vmc19hbmFbIGkgXTsKKyAg
ICAgICAgICAgIGNvZWZzWyBpIC0gMSBdIC09IGxhbWJkYSAqIGNvZWZzWyBpIF07CiAgICAgICAg
IH0KLSAgICAgICAgZ2Fpbl9zeW4gPSAoIDEuMGYgLSBsYW1iZGEgKiBsYW1iZGEgKSAvICggMS4w
ZiArIGxhbWJkYSAqIGNvZWZzX3N5blsgMCBdICk7Ci0gICAgICAgIGdhaW5fYW5hID0gKCAxLjBm
IC0gbGFtYmRhICogbGFtYmRhICkgLyAoIDEuMGYgKyBsYW1iZGEgKiBjb2Vmc19hbmFbIDAgXSAp
OworICAgICAgICBnYWluID0gKCAxLjBmIC0gbGFtYmRhICogbGFtYmRhICkgLyAoIDEuMGYgKyBs
YW1iZGEgKiBjb2Vmc1sgMCBdICk7CiAgICAgICAgIGZvciggaSA9IDA7IGkgPCBvcmRlcjsgaSsr
ICkgewotICAgICAgICAgICAgY29lZnNfc3luWyBpIF0gKj0gZ2Fpbl9zeW47Ci0gICAgICAgICAg
ICBjb2Vmc19hbmFbIGkgXSAqPSBnYWluX2FuYTsKKyAgICAgICAgICAgIGNvZWZzWyBpIF0gKj0g
Z2FpbjsKICAgICAgICAgfQogICAgIH0KICAgICBzaWxrX2Fzc2VydCggMCApOwogfQogCitzdGF0
aWMgT1BVU19JTkxJTkUgdm9pZCBsaW1pdF9jb2VmcygKKyAgICBzaWxrX2Zsb2F0ICAgICAgICAg
ICAqY29lZnMsCisgICAgc2lsa19mbG9hdCAgICAgICAgICAgbGltaXQsCisgICAgb3B1c19pbnQg
ICAgICAgICAgICAgb3JkZXIKKykgeworICAgIG9wdXNfaW50ICAgaSwgaXRlciwgaW5kID0gMDsK
KyAgICBzaWxrX2Zsb2F0IHRtcCwgbWF4YWJzLCBjaGlycDsKKworICAgIGZvciggaXRlciA9IDA7
IGl0ZXIgPCAxMDsgaXRlcisrICkgeworICAgICAgICAvKiBGaW5kIG1heGltdW0gYWJzb2x1dGUg
dmFsdWUgKi8KKyAgICAgICAgbWF4YWJzID0gLTEuMGY7CisgICAgICAgIGZvciggaSA9IDA7IGkg
PCBvcmRlcjsgaSsrICkgeworICAgICAgICAgICAgdG1wID0gc2lsa19hYnNfZmxvYXQoIGNvZWZz
WyBpIF0gKTsKKyAgICAgICAgICAgIGlmKCB0bXAgPiBtYXhhYnMgKSB7CisgICAgICAgICAgICAg
ICAgbWF4YWJzID0gdG1wOworICAgICAgICAgICAgICAgIGluZCA9IGk7CisgICAgICAgICAgICB9
CisgICAgICAgIH0KKyAgICAgICAgaWYoIG1heGFicyA8PSBsaW1pdCApIHsKKyAgICAgICAgICAg
IC8qIENvZWZmaWNpZW50cyBhcmUgd2l0aGluIHJhbmdlIC0gZG9uZSAqLworICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgLyogQXBwbHkgYmFuZHdpZHRoIGV4cGFuc2lv
biAqLworICAgICAgICBjaGlycCA9IDAuOTlmIC0gKCAwLjhmICsgMC4xZiAqIGl0ZXIgKSAqICgg
bWF4YWJzIC0gbGltaXQgKSAvICggbWF4YWJzICogKCBpbmQgKyAxICkgKTsKKyAgICAgICAgc2ls
a19id2V4cGFuZGVyX0ZMUCggY29lZnMsIG9yZGVyLCBjaGlycCApOworICAgIH0KKyAgICBzaWxr
X2Fzc2VydCggMCApOworfQorCiAvKiBDb21wdXRlIG5vaXNlIHNoYXBpbmcgY29lZmZpY2llbnRz
IGFuZCBpbml0aWFsIGdhaW4gdmFsdWVzICovCiB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlz
aXNfRkxQKAogICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GTFAgICAgICAgICAgKnBzRW5jLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIHN0YXRlIEZMUCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCkBAIC0xMzMsMTIgKzE1MiwxMyBAQCB2b2lkIHNpbGtfbm9p
c2Vfc2hhcGVfYW5hbHlzaXNfRkxQKAogKQogewogICAgIHNpbGtfc2hhcGVfc3RhdGVfRkxQICpw
c1NoYXBlU3QgPSAmcHNFbmMtPnNTaGFwZTsKLSAgICBvcHVzX2ludCAgICAgaywgblNhbXBsZXM7
Ci0gICAgc2lsa19mbG9hdCAgIFNOUl9hZGpfZEIsIEhhcm1Cb29zdCwgSGFybVNoYXBlR2Fpbiwg
VGlsdDsKLSAgICBzaWxrX2Zsb2F0ICAgbnJnLCBwcmVfbnJnLCBsb2dfZW5lcmd5LCBsb2dfZW5l
cmd5X3ByZXYsIGVuZXJneV92YXJpYXRpb247Ci0gICAgc2lsa19mbG9hdCAgIGRlbHRhLCBCV0V4
cDEsIEJXRXhwMiwgZ2Fpbl9tdWx0LCBnYWluX2FkZCwgc3RyZW5ndGgsIGIsIHdhcnBpbmc7Cisg
ICAgb3B1c19pbnQgICAgIGssIG5TYW1wbGVzLCBuU2VnczsKKyAgICBzaWxrX2Zsb2F0ICAgU05S
X2Fkal9kQiwgSGFybVNoYXBlR2FpbiwgVGlsdDsKKyAgICBzaWxrX2Zsb2F0ICAgbnJnLCBsb2df
ZW5lcmd5LCBsb2dfZW5lcmd5X3ByZXYsIGVuZXJneV92YXJpYXRpb247CisgICAgc2lsa19mbG9h
dCAgIEJXRXhwLCBnYWluX211bHQsIGdhaW5fYWRkLCBzdHJlbmd0aCwgYiwgd2FycGluZzsKICAg
ICBzaWxrX2Zsb2F0ICAgeF93aW5kb3dlZFsgU0hBUEVfTFBDX1dJTl9NQVggXTsKICAgICBzaWxr
X2Zsb2F0ICAgYXV0b19jb3JyWyBNQVhfU0hBUEVfTFBDX09SREVSICsgMSBdOworICAgIHNpbGtf
ZmxvYXQgICByY1sgTUFYX1NIQVBFX0xQQ19PUkRFUiArIDEgXTsKICAgICBjb25zdCBzaWxrX2Zs
b2F0ICp4X3B0ciwgKnBpdGNoX3Jlc19wdHI7CiAKICAgICAvKiBQb2ludCB0byBzdGFydCBvZiBm
aXJzdCBMUEMgYW5hbHlzaXMgYmxvY2sgKi8KQEAgLTE3NiwxNCArMTk2LDE0IEBAIHZvaWQgc2ls
a19ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAoCiAgICAgaWYoIHBzRW5jLT5zQ21uLmluZGljZXMu
c2lnbmFsVHlwZSA9PSBUWVBFX1ZPSUNFRCApIHsKICAgICAgICAgLyogSW5pdGlhbGx5IHNldCB0
byAwOyBtYXkgYmUgb3ZlcnJ1bGVkIGluIHByb2Nlc3NfZ2FpbnMoLi4pICovCiAgICAgICAgIHBz
RW5jLT5zQ21uLmluZGljZXMucXVhbnRPZmZzZXRUeXBlID0gMDsKLSAgICAgICAgcHNFbmNDdHJs
LT5zcGFyc2VuZXNzID0gMC4wZjsKICAgICB9IGVsc2UgewogICAgICAgICAvKiBTcGFyc2VuZXNz
IG1lYXN1cmUsIGJhc2VkIG9uIHJlbGF0aXZlIGZsdWN0dWF0aW9ucyBvZiBlbmVyZ3kgcGVyIDIg
bWlsbGlzZWNvbmRzICovCiAgICAgICAgIG5TYW1wbGVzID0gMiAqIHBzRW5jLT5zQ21uLmZzX2tI
ejsKICAgICAgICAgZW5lcmd5X3ZhcmlhdGlvbiA9IDAuMGY7CiAgICAgICAgIGxvZ19lbmVyZ3lf
cHJldiAgPSAwLjBmOwogICAgICAgICBwaXRjaF9yZXNfcHRyID0gcGl0Y2hfcmVzOwotICAgICAg
ICBmb3IoIGsgPSAwOyBrIDwgc2lsa19TTVVMQkIoIFNVQl9GUkFNRV9MRU5HVEhfTVMsIHBzRW5j
LT5zQ21uLm5iX3N1YmZyICkgLyAyOyBrKysgKSB7CisgICAgICAgIG5TZWdzID0gc2lsa19TTVVM
QkIoIFNVQl9GUkFNRV9MRU5HVEhfTVMsIHBzRW5jLT5zQ21uLm5iX3N1YmZyICkgLyAyOworICAg
ICAgICBmb3IoIGsgPSAwOyBrIDwgblNlZ3M7IGsrKyApIHsKICAgICAgICAgICAgIG5yZyA9ICgg
c2lsa19mbG9hdCApblNhbXBsZXMgKyAoIHNpbGtfZmxvYXQgKXNpbGtfZW5lcmd5X0ZMUCggcGl0
Y2hfcmVzX3B0ciwgblNhbXBsZXMgKTsKICAgICAgICAgICAgIGxvZ19lbmVyZ3kgPSBzaWxrX2xv
ZzIoIG5yZyApOwogICAgICAgICAgICAgaWYoIGsgPiAwICkgewpAQCAtMTkyLDE3ICsyMTIsMTMg
QEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUCgKICAgICAgICAgICAgIGxvZ19l
bmVyZ3lfcHJldiA9IGxvZ19lbmVyZ3k7CiAgICAgICAgICAgICBwaXRjaF9yZXNfcHRyICs9IG5T
YW1wbGVzOwogICAgICAgICB9Ci0gICAgICAgIHBzRW5jQ3RybC0+c3BhcnNlbmVzcyA9IHNpbGtf
c2lnbW9pZCggMC40ZiAqICggZW5lcmd5X3ZhcmlhdGlvbiAtIDUuMGYgKSApOwogCiAgICAgICAg
IC8qIFNldCBxdWFudGl6YXRpb24gb2Zmc2V0IGRlcGVuZGluZyBvbiBzcGFyc2VuZXNzIG1lYXN1
cmUgKi8KLSAgICAgICAgaWYoIHBzRW5jQ3RybC0+c3BhcnNlbmVzcyA+IFNQQVJTRU5FU1NfVEhS
RVNIT0xEX1FOVF9PRkZTRVQgKSB7CisgICAgICAgIGlmKCBlbmVyZ3lfdmFyaWF0aW9uID4gRU5F
UkdZX1ZBUklBVElPTl9USFJFU0hPTERfUU5UX09GRlNFVCAqIChuU2Vncy0xKSApIHsKICAgICAg
ICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMucXVhbnRPZmZzZXRUeXBlID0gMDsKICAgICAgICAg
fSBlbHNlIHsKICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMucXVhbnRPZmZzZXRUeXBl
ID0gMTsKICAgICAgICAgfQotCi0gICAgICAgIC8qIEluY3JlYXNlIGNvZGluZyBTTlIgZm9yIHNw
YXJzZSBzaWduYWxzICovCi0gICAgICAgIFNOUl9hZGpfZEIgKz0gU1BBUlNFX1NOUl9JTkNSX2RC
ICogKCBwc0VuY0N0cmwtPnNwYXJzZW5lc3MgLSAwLjVmICk7CiAgICAgfQogCiAgICAgLyoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0yMTAsMTkgKzIyNiwxMCBAQCB2b2lkIHNp
bGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQKAogICAgIC8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqLwogICAgIC8qIE1vcmUgQldFIGZvciBzaWduYWxzIHdpdGggaGlnaCBwcmVkaWN0
aW9uIGdhaW4gKi8KICAgICBzdHJlbmd0aCA9IEZJTkRfUElUQ0hfV0hJVEVfTk9JU0VfRlJBQ1RJ
T04gKiBwc0VuY0N0cmwtPnByZWRHYWluOyAgICAgICAgICAgLyogYmV0d2VlbiAwLjAgYW5kIDEu
MCAqLwotICAgIEJXRXhwMSA9IEJXRXhwMiA9IEJBTkRXSURUSF9FWFBBTlNJT04gLyAoIDEuMGYg
KyBzdHJlbmd0aCAqIHN0cmVuZ3RoICk7Ci0gICAgZGVsdGEgID0gTE9XX1JBVEVfQkFORFdJRFRI
X0VYUEFOU0lPTl9ERUxUQSAqICggMS4wZiAtIDAuNzVmICogcHNFbmNDdHJsLT5jb2RpbmdfcXVh
bGl0eSApOwotICAgIEJXRXhwMSAtPSBkZWx0YTsKLSAgICBCV0V4cDIgKz0gZGVsdGE7Ci0gICAg
LyogQldFeHAxIHdpbGwgYmUgYXBwbGllZCBhZnRlciBCV0V4cDIsIHNvIG1ha2UgaXQgcmVsYXRp
dmUgKi8KLSAgICBCV0V4cDEgLz0gQldFeHAyOwotCi0gICAgaWYoIHBzRW5jLT5zQ21uLndhcnBp
bmdfUTE2ID4gMCApIHsKLSAgICAgICAgLyogU2xpZ2h0bHkgbW9yZSB3YXJwaW5nIGluIGFuYWx5
c2lzIHdpbGwgbW92ZSBxdWFudGl6YXRpb24gbm9pc2UgdXAgaW4gZnJlcXVlbmN5LCB3aGVyZSBp
dCdzIGJldHRlciBtYXNrZWQgKi8KLSAgICAgICAgd2FycGluZyA9IChzaWxrX2Zsb2F0KXBzRW5j
LT5zQ21uLndhcnBpbmdfUTE2IC8gNjU1MzYuMGYgKyAwLjAxZiAqIHBzRW5jQ3RybC0+Y29kaW5n
X3F1YWxpdHk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgd2FycGluZyA9IDAuMGY7Ci0gICAgfQor
ICAgIEJXRXhwID0gQkFORFdJRFRIX0VYUEFOU0lPTiAvICggMS4wZiArIHN0cmVuZ3RoICogc3Ry
ZW5ndGggKTsKKworICAgIC8qIFNsaWdodGx5IG1vcmUgd2FycGluZyBpbiBhbmFseXNpcyB3aWxs
IG1vdmUgcXVhbnRpemF0aW9uIG5vaXNlIHVwIGluIGZyZXF1ZW5jeSwgd2hlcmUgaXQncyBiZXR0
ZXIgbWFza2VkICovCisgICAgd2FycGluZyA9IChzaWxrX2Zsb2F0KXBzRW5jLT5zQ21uLndhcnBp
bmdfUTE2IC8gNjU1MzYuMGYgKyAwLjAxZiAqIHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxpdHk7CiAK
ICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAg
LyogQ29tcHV0ZSBub2lzZSBzaGFwaW5nIEFSIGNvZWZzIGFuZCBnYWlucyAqLwpAQCAtMjUyLDM3
ICsyNTksMjggQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUCgKICAgICAgICAg
fQogCiAgICAgICAgIC8qIEFkZCB3aGl0ZSBub2lzZSwgYXMgYSBmcmFjdGlvbiBvZiBlbmVyZ3kg
Ki8KLSAgICAgICAgYXV0b19jb3JyWyAwIF0gKz0gYXV0b19jb3JyWyAwIF0gKiBTSEFQRV9XSElU
RV9OT0lTRV9GUkFDVElPTjsKKyAgICAgICAgYXV0b19jb3JyWyAwIF0gKz0gYXV0b19jb3JyWyAw
IF0gKiBTSEFQRV9XSElURV9OT0lTRV9GUkFDVElPTiArIDEuMGY7CiAKICAgICAgICAgLyogQ29u
dmVydCBjb3JyZWxhdGlvbnMgdG8gcHJlZGljdGlvbiBjb2VmZmljaWVudHMsIGFuZCBjb21wdXRl
IHJlc2lkdWFsIGVuZXJneSAqLwotICAgICAgICBucmcgPSBzaWxrX2xldmluc29uZHVyYmluX0ZM
UCggJnBzRW5jQ3RybC0+QVIyWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCBhdXRvX2NvcnIs
IHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOworICAgICAgICBucmcgPSBzaWxrX3NjaHVy
X0ZMUCggcmMsIGF1dG9fY29yciwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAg
ICAgIHNpbGtfazJhX0ZMUCggJnBzRW5jQ3RybC0+QVJbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVS
IF0sIHJjLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKICAgICAgICAgcHNFbmNDdHJs
LT5HYWluc1sgayBdID0gKCBzaWxrX2Zsb2F0IClzcXJ0KCBucmcgKTsKIAogICAgICAgICBpZigg
cHNFbmMtPnNDbW4ud2FycGluZ19RMTYgPiAwICkgewogICAgICAgICAgICAgLyogQWRqdXN0IGdh
aW4gZm9yIHdhcnBpbmcgKi8KLSAgICAgICAgICAgIHBzRW5jQ3RybC0+R2FpbnNbIGsgXSAqPSB3
YXJwZWRfZ2FpbiggJnBzRW5jQ3RybC0+QVIyWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCB3
YXJwaW5nLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAgICAgIHBzRW5j
Q3RybC0+R2FpbnNbIGsgXSAqPSB3YXJwZWRfZ2FpbiggJnBzRW5jQ3RybC0+QVJbIGsgKiBNQVhf
U0hBUEVfTFBDX09SREVSIF0sIHdhcnBpbmcsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciAp
OwogICAgICAgICB9CiAKICAgICAgICAgLyogQmFuZHdpZHRoIGV4cGFuc2lvbiBmb3Igc3ludGhl
c2lzIGZpbHRlciBzaGFwaW5nICovCi0gICAgICAgIHNpbGtfYndleHBhbmRlcl9GTFAoICZwc0Vu
Y0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgcHNFbmMtPnNDbW4uc2hhcGlu
Z0xQQ09yZGVyLCBCV0V4cDIgKTsKLQotICAgICAgICAvKiBDb21wdXRlIG5vaXNlIHNoYXBpbmcg
ZmlsdGVyIGNvZWZmaWNpZW50cyAqLwotICAgICAgICBzaWxrX21lbWNweSgKLSAgICAgICAgICAg
ICZwc0VuY0N0cmwtPkFSMVsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwKLSAgICAgICAgICAg
ICZwc0VuY0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwKLSAgICAgICAgICAg
IHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciAqIHNpemVvZiggc2lsa19mbG9hdCApICk7Cisg
ICAgICAgIHNpbGtfYndleHBhbmRlcl9GTFAoICZwc0VuY0N0cmwtPkFSWyBrICogTUFYX1NIQVBF
X0xQQ19PUkRFUiBdLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIEJXRXhwICk7CiAKLSAg
ICAgICAgLyogQmFuZHdpZHRoIGV4cGFuc2lvbiBmb3IgYW5hbHlzaXMgZmlsdGVyIHNoYXBpbmcg
Ki8KLSAgICAgICAgc2lsa19id2V4cGFuZGVyX0ZMUCggJnBzRW5jQ3RybC0+QVIxWyBrICogTUFY
X1NIQVBFX0xQQ19PUkRFUiBdLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIEJXRXhwMSAp
OwotCi0gICAgICAgIC8qIFJhdGlvIG9mIHByZWRpY3Rpb24gZ2FpbnMsIGluIGVuZXJneSBkb21h
aW4gKi8KLSAgICAgICAgcHJlX25yZyA9IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX0ZMUCgg
JnBzRW5jQ3RybC0+QVIyWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCBwc0VuYy0+c0Ntbi5z
aGFwaW5nTFBDT3JkZXIgKTsKLSAgICAgICAgbnJnICAgICA9IHNpbGtfTFBDX2ludmVyc2VfcHJl
ZF9nYWluX0ZMUCggJnBzRW5jQ3RybC0+QVIxWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCBw
c0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKLSAgICAgICAgcHNFbmNDdHJsLT5HYWluc1By
ZVsgayBdID0gMS4wZiAtIDAuN2YgKiAoIDEuMGYgLSBwcmVfbnJnIC8gbnJnICk7Ci0KLSAgICAg
ICAgLyogQ29udmVydCB0byBtb25pYyB3YXJwZWQgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgYW5k
IGxpbWl0IGFic29sdXRlIHZhbHVlcyAqLwotICAgICAgICB3YXJwZWRfdHJ1ZTJtb25pY19jb2Vm
cyggJnBzRW5jQ3RybC0+QVIyWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAmcHNFbmNDdHJs
LT5BUjFbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sCi0gICAgICAgICAgICB3YXJwaW5nLCAz
Ljk5OWYsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOworICAgICAgICBpZiggcHNFbmMt
PnNDbW4ud2FycGluZ19RMTYgPiAwICkgeworICAgICAgICAgICAgLyogQ29udmVydCB0byBtb25p
YyB3YXJwZWQgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgYW5kIGxpbWl0IGFic29sdXRlIHZhbHVl
cyAqLworICAgICAgICAgICAgd2FycGVkX3RydWUybW9uaWNfY29lZnMoICZwc0VuY0N0cmwtPkFS
WyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCB3YXJwaW5nLCAzLjk5OWYsIHBzRW5jLT5zQ21u
LnNoYXBpbmdMUENPcmRlciApOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgLyogTGlt
aXQgYWJzb2x1dGUgdmFsdWVzICovCisgICAgICAgICAgICBsaW1pdF9jb2VmcyggJnBzRW5jQ3Ry
bC0+QVJbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sIDMuOTk5ZiwgcHNFbmMtPnNDbW4uc2hh
cGluZ0xQQ09yZGVyICk7CisgICAgICAgIH0KICAgICB9CiAKICAgICAvKioqKioqKioqKioqKioq
KiovCkBAIC0yOTYsMTEgKzI5NCw2IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19G
TFAoCiAgICAgICAgIHBzRW5jQ3RybC0+R2FpbnNbIGsgXSArPSBnYWluX2FkZDsKICAgICB9CiAK
LSAgICBnYWluX211bHQgPSAxLjBmICsgSU5QVVRfVElMVCArIHBzRW5jQ3RybC0+Y29kaW5nX3F1
YWxpdHkgKiBISUdIX1JBVEVfSU5QVVRfVElMVDsKLSAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmMt
PnNDbW4ubmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgcHNFbmNDdHJsLT5HYWluc1ByZVsgayBd
ICo9IGdhaW5fbXVsdDsKLSAgICB9Ci0KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIENvbnRyb2wgbG93LWZyZXF1ZW5jeSBzaGFw
aW5nIGFuZCBub2lzZSB0aWx0ICovCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KQEAgLTMzMSwxMiArMzI0LDYgQEAgdm9pZCBzaWxrX25vaXNl
X3NoYXBlX2FuYWx5c2lzX0ZMUCgKICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8K
ICAgICAvKiBIQVJNT05JQyBTSEFQSU5HIENPTlRST0wgKi8KICAgICAvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KLSAgICAvKiBDb250cm9sIGJvb3N0aW5nIG9mIGhhcm1vbmljIGZyZXF1
ZW5jaWVzICovCi0gICAgSGFybUJvb3N0ID0gTE9XX1JBVEVfSEFSTU9OSUNfQk9PU1QgKiAoIDEu
MGYgLSBwc0VuY0N0cmwtPmNvZGluZ19xdWFsaXR5ICkgKiBwc0VuYy0+TFRQQ29ycjsKLQotICAg
IC8qIE1vcmUgaGFybW9uaWMgYm9vc3QgZm9yIG5vaXN5IGlucHV0IHNpZ25hbHMgKi8KLSAgICBI
YXJtQm9vc3QgKz0gTE9XX0lOUFVUX1FVQUxJVFlfSEFSTU9OSUNfQk9PU1QgKiAoIDEuMGYgLSBw
c0VuY0N0cmwtPmlucHV0X3F1YWxpdHkgKTsKLQogICAgIGlmKCBVU0VfSEFSTV9TSEFQSU5HICYm
IHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9PSBUWVBFX1ZPSUNFRCApIHsKICAgICAg
ICAgLyogSGFybW9uaWMgbm9pc2Ugc2hhcGluZyAqLwogICAgICAgICBIYXJtU2hhcGVHYWluID0g
SEFSTU9OSUNfU0hBUElORzsKQEAgLTM1NSw4ICszNDIsNiBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hh
cGVfYW5hbHlzaXNfRkxQKAogICAgIC8qIFNtb290aCBvdmVyIHN1YmZyYW1lcyAqLwogICAgIC8q
KioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIGZvciggayA9IDA7IGsgPCBwc0VuYy0+c0Nt
bi5uYl9zdWJmcjsgaysrICkgewotICAgICAgICBwc1NoYXBlU3QtPkhhcm1Cb29zdF9zbXRoICAg
ICArPSBTVUJGUl9TTVRIX0NPRUYgKiAoIEhhcm1Cb29zdCAtIHBzU2hhcGVTdC0+SGFybUJvb3N0
X3NtdGggKTsKLSAgICAgICAgcHNFbmNDdHJsLT5IYXJtQm9vc3RbIGsgXSAgICAgID0gcHNTaGFw
ZVN0LT5IYXJtQm9vc3Rfc210aDsKICAgICAgICAgcHNTaGFwZVN0LT5IYXJtU2hhcGVHYWluX3Nt
dGggKz0gU1VCRlJfU01USF9DT0VGICogKCBIYXJtU2hhcGVHYWluIC0gcHNTaGFwZVN0LT5IYXJt
U2hhcGVHYWluX3NtdGggKTsKICAgICAgICAgcHNFbmNDdHJsLT5IYXJtU2hhcGVHYWluWyBrIF0g
ID0gcHNTaGFwZVN0LT5IYXJtU2hhcGVHYWluX3NtdGg7CiAgICAgICAgIHBzU2hhcGVTdC0+VGls
dF9zbXRoICAgICAgICAgICs9IFNVQkZSX1NNVEhfQ09FRiAqICggVGlsdCAtIHBzU2hhcGVTdC0+
VGlsdF9zbXRoICk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcGl0Y2hfYW5hbHlzaXNfY29yZV9G
TFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9mbG9hdC9waXRjaF9hbmFseXNpc19jb3JlX0ZMUC5jCmluZGV4IGQwZTYzN2Ey
OWRjOTVkNWU2M2FkZTE0ZDk4ZjllM2Y0Y2U3ZTBiZDguLmIzNzE2OTM3OGIxZjUyNTY2MGZjY2Vm
NjVmOGEyZmI0MzFlY2M4MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9waXRjaF9hbmFseXNpc19j
b3JlX0ZMUC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9waXRjaF9hbmFseXNpc19jb3JlX0ZMUC5jCkBAIC0x
NTksNyArMTU5LDcgQEAgb3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19jb3JlX0ZMUCggICAg
ICAvKiBPICAgIFZvaWNpbmcgZXN0aW1hdGU6IDAgdm9pY2VkLAogCiAgICAgLyogTG93LXBhc3Mg
ZmlsdGVyICovCiAgICAgZm9yKCBpID0gZnJhbWVfbGVuZ3RoXzRrSHogLSAxOyBpID4gMDsgaS0t
ICkgewotICAgICAgICBmcmFtZV80a0h6WyBpIF0gKz0gZnJhbWVfNGtIelsgaSAtIDEgXTsKKyAg
ICAgICAgZnJhbWVfNGtIelsgaSBdID0gc2lsa19BRERfU0FUMTYoIGZyYW1lXzRrSHpbIGkgXSwg
ZnJhbWVfNGtIelsgaSAtIDEgXSApOwogICAgIH0KIAogICAgIC8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9wcmVmaWx0ZXJfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcHJl
ZmlsdGVyX0ZMUC5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4YmMzMmZiNDEwNDBl
ZjdiNGYwZjEyMjQ2ODliYjBiMDQ0OGVjMDUwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9wcmVmaWx0ZXJfRkxQLmMKKysrIC9kZXYvbnVs
bApAQCAtMSwyMDYgKzAsMCBAQAotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi1Db3B5cmlnaHQgKGMpIDIwMDYt
MjAxMSwgU2t5cGUgTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLVJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCi1hcmUgbWV0OgotLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCi10aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQot
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KLS0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRG
IG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKLW5hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywg
bWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCi1wcm9kdWN0cyBkZXJpdmVkIGZyb20g
dGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KLXBlcm1pc3Npb24u
Ci1USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTICJBUyBJUyIKLUFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLUlNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
Ci1BUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBP
UiBDT05UUklCVVRPUlMgQkUKLUxJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLUNPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi1TVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKLUlOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCi1DT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKLVBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0KLSNpZmRlZiBIQVZF
X0NPTkZJR19ICi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jZW5kaWYKLQotI2luY2x1ZGUgIm1haW5f
RkxQLmgiCi0jaW5jbHVkZSAidHVuaW5nX3BhcmFtZXRlcnMuaCIKLQotLyoKLSogUHJlZmlsdGVy
IGZvciBmaW5kaW5nIFF1YW50aXplciBpbnB1dCBzaWduYWwKLSovCi1zdGF0aWMgT1BVU19JTkxJ
TkUgdm9pZCBzaWxrX3ByZWZpbHRfRkxQKAotICAgIHNpbGtfcHJlZmlsdGVyX3N0YXRlX0ZMUCAg
ICAqUCwgICAgICAgICAgICAgICAgIC8qIEkvTyBzdGF0ZSAqLwotICAgIHNpbGtfZmxvYXQgICAg
ICAgICAgICAgICAgICBzdF9yZXNbXSwgICAgICAgICAgIC8qIEkgKi8KLSAgICBzaWxrX2Zsb2F0
ICAgICAgICAgICAgICAgICAgeHdbXSwgICAgICAgICAgICAgICAvKiBPICovCi0gICAgc2lsa19m
bG9hdCAgICAgICAgICAgICAgICAgICpIYXJtU2hhcGVGSVIsICAgICAgLyogSSAqLwotICAgIHNp
bGtfZmxvYXQgICAgICAgICAgICAgICAgICBUaWx0LCAgICAgICAgICAgICAgIC8qIEkgKi8KLSAg
ICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgTEZfTUFfc2hwLCAgICAgICAgICAvKiBJICov
Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIExGX0FSX3NocCwgICAgICAgICAgLyog
SSAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsYWcsICAgICAgICAgICAgICAg
IC8qIEkgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbGVuZ3RoICAgICAgICAg
ICAgICAvKiBJICovCi0pOwotCi1zdGF0aWMgdm9pZCBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNf
ZmlsdGVyX0ZMUCgKLSAgICAgICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICBzdGF0ZVtd
LCAgICAgICAgICAgIC8qIEkvTyAgU3RhdGUgW29yZGVyICsgMV0gICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgICAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgcmVzW10sICAgICAg
ICAgICAgICAvKiBPICAgIFJlc2lkdWFsIHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICAgICAq
LwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgIGNvZWZbXSwgICAgICAgICAg
ICAgLyogSSAgICBDb2VmZmljaWVudHMgW29yZGVyXSAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICBpbnB1dFtdLCAgICAgICAgICAgIC8q
IEkgICAgSW5wdXQgc2lnbmFsIFtsZW5ndGhdICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgbGFtYmRhLCAgICAgICAgICAgICAvKiBJICAg
IFdhcnBpbmcgZmFjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgLyogSSAgICBMZW5n
dGggb2YgaW5wdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgIC8qIEkgICAgRmlsdGVyIG9y
ZGVyIChldmVuKSAgICAgICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICAg
IG4sIGk7Ci0gICAgc2lsa19mbG9hdCAgIGFjYywgdG1wMSwgdG1wMjsKLQotICAgIC8qIE9yZGVy
IG11c3QgYmUgZXZlbiAqLwotICAgIHNpbGtfYXNzZXJ0KCAoIG9yZGVyICYgMSApID09IDAgKTsK
LQotICAgIGZvciggbiA9IDA7IG4gPCBsZW5ndGg7IG4rKyApIHsKLSAgICAgICAgLyogT3V0cHV0
IG9mIGxvd3Bhc3Mgc2VjdGlvbiAqLwotICAgICAgICB0bXAyID0gc3RhdGVbIDAgXSArIGxhbWJk
YSAqIHN0YXRlWyAxIF07Ci0gICAgICAgIHN0YXRlWyAwIF0gPSBpbnB1dFsgbiBdOwotICAgICAg
ICAvKiBPdXRwdXQgb2YgYWxscGFzcyBzZWN0aW9uICovCi0gICAgICAgIHRtcDEgPSBzdGF0ZVsg
MSBdICsgbGFtYmRhICogKCBzdGF0ZVsgMiBdIC0gdG1wMiApOwotICAgICAgICBzdGF0ZVsgMSBd
ID0gdG1wMjsKLSAgICAgICAgYWNjID0gY29lZlsgMCBdICogdG1wMjsKLSAgICAgICAgLyogTG9v
cCBvdmVyIGFsbHBhc3Mgc2VjdGlvbnMgKi8KLSAgICAgICAgZm9yKCBpID0gMjsgaSA8IG9yZGVy
OyBpICs9IDIgKSB7Ci0gICAgICAgICAgICAvKiBPdXRwdXQgb2YgYWxscGFzcyBzZWN0aW9uICov
Ci0gICAgICAgICAgICB0bXAyID0gc3RhdGVbIGkgXSArIGxhbWJkYSAqICggc3RhdGVbIGkgKyAx
IF0gLSB0bXAxICk7Ci0gICAgICAgICAgICBzdGF0ZVsgaSBdID0gdG1wMTsKLSAgICAgICAgICAg
IGFjYyArPSBjb2VmWyBpIC0gMSBdICogdG1wMTsKLSAgICAgICAgICAgIC8qIE91dHB1dCBvZiBh
bGxwYXNzIHNlY3Rpb24gKi8KLSAgICAgICAgICAgIHRtcDEgPSBzdGF0ZVsgaSArIDEgXSArIGxh
bWJkYSAqICggc3RhdGVbIGkgKyAyIF0gLSB0bXAyICk7Ci0gICAgICAgICAgICBzdGF0ZVsgaSAr
IDEgXSA9IHRtcDI7Ci0gICAgICAgICAgICBhY2MgKz0gY29lZlsgaSBdICogdG1wMjsKLSAgICAg
ICAgfQotICAgICAgICBzdGF0ZVsgb3JkZXIgXSA9IHRtcDE7Ci0gICAgICAgIGFjYyArPSBjb2Vm
WyBvcmRlciAtIDEgXSAqIHRtcDE7Ci0gICAgICAgIHJlc1sgbiBdID0gaW5wdXRbIG4gXSAtIGFj
YzsKLSAgICB9Ci19Ci0KLS8qCi0qIHNpbGtfcHJlZmlsdGVyLiBNYWluIHByZWZpbHRlciBmdW5j
dGlvbgotKi8KLXZvaWQgc2lsa19wcmVmaWx0ZXJfRkxQKAotICAgIHNpbGtfZW5jb2Rlcl9zdGF0
ZV9GTFAgICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9P
ICBFbmNvZGVyIHN0YXRlIEZMUCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgc2lsa19lbmNvZGVyX2NvbnRyb2xfRkxQICAqcHNFbmNDdHJsLCAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIEVuY29kZXIgY29udHJvbCBGTFAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIHh3W10sICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgV2VpZ2h0ZWQgc2lnbmFsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAg
eFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTcGVlY2ggc2lnbmFs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAgc2lsa19wcmVmaWx0
ZXJfc3RhdGVfRkxQICpQID0gJnBzRW5jLT5zUHJlZmlsdDsKLSAgICBvcHVzX2ludCAgIGosIGss
IGxhZzsKLSAgICBzaWxrX2Zsb2F0IEhhcm1TaGFwZUdhaW4sIFRpbHQsIExGX01BX3NocCwgTEZf
QVJfc2hwOwotICAgIHNpbGtfZmxvYXQgQlsgMiBdOwotICAgIGNvbnN0IHNpbGtfZmxvYXQgKkFS
MV9zaHA7Ci0gICAgY29uc3Qgc2lsa19mbG9hdCAqcHg7Ci0gICAgc2lsa19mbG9hdCAqcHh3Owot
ICAgIHNpbGtfZmxvYXQgSGFybVNoYXBlRklSWyAzIF07Ci0gICAgc2lsa19mbG9hdCBzdF9yZXNb
IE1BWF9TVUJfRlJBTUVfTEVOR1RIICsgTUFYX0xQQ19PUkRFUiBdOwotCi0gICAgLyogU2V0IHVw
IHBvaW50ZXJzICovCi0gICAgcHggID0geDsKLSAgICBweHcgPSB4dzsKLSAgICBsYWcgPSBQLT5s
YWdQcmV2OwotICAgIGZvciggayA9IDA7IGsgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsgaysrICkg
ewotICAgICAgICAvKiBVcGRhdGUgVmFyaWFibGVzIHRoYXQgY2hhbmdlIHBlciBzdWIgZnJhbWUg
Ki8KLSAgICAgICAgaWYoIHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9PSBUWVBFX1ZP
SUNFRCApIHsKLSAgICAgICAgICAgIGxhZyA9IHBzRW5jQ3RybC0+cGl0Y2hMWyBrIF07Ci0gICAg
ICAgIH0KLQotICAgICAgICAvKiBOb2lzZSBzaGFwZSBwYXJhbWV0ZXJzICovCi0gICAgICAgIEhh
cm1TaGFwZUdhaW4gPSBwc0VuY0N0cmwtPkhhcm1TaGFwZUdhaW5bIGsgXSAqICggMS4wZiAtIHBz
RW5jQ3RybC0+SGFybUJvb3N0WyBrIF0gKTsKLSAgICAgICAgSGFybVNoYXBlRklSWyAwIF0gPSAw
LjI1ZiAgICAgICAgICAgICAgICogSGFybVNoYXBlR2FpbjsKLSAgICAgICAgSGFybVNoYXBlRklS
WyAxIF0gPSAzMjc2Ny4wZiAvIDY1NTM2LjBmICogSGFybVNoYXBlR2FpbjsKLSAgICAgICAgSGFy
bVNoYXBlRklSWyAyIF0gPSAwLjI1ZiAgICAgICAgICAgICAgICogSGFybVNoYXBlR2FpbjsKLSAg
ICAgICAgVGlsdCAgICAgID0gIHBzRW5jQ3RybC0+VGlsdFsgayBdOwotICAgICAgICBMRl9NQV9z
aHAgPSAgcHNFbmNDdHJsLT5MRl9NQV9zaHBbIGsgXTsKLSAgICAgICAgTEZfQVJfc2hwID0gIHBz
RW5jQ3RybC0+TEZfQVJfc2hwWyBrIF07Ci0gICAgICAgIEFSMV9zaHAgICA9ICZwc0VuY0N0cmwt
PkFSMVsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKLQotICAgICAgICAvKiBTaG9ydCB0ZXJt
IEZJUiBmaWx0ZXJpbmcgKi8KLSAgICAgICAgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRl
cl9GTFAoIFAtPnNBUl9zaHAsIHN0X3JlcywgQVIxX3NocCwgcHgsCi0gICAgICAgICAgICAoc2ls
a19mbG9hdClwc0VuYy0+c0Ntbi53YXJwaW5nX1ExNiAvIDY1NTM2LjBmLCBwc0VuYy0+c0Ntbi5z
dWJmcl9sZW5ndGgsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwotCi0gICAgICAgIC8q
IFJlZHVjZSAobWFpbmx5KSBsb3cgZnJlcXVlbmNpZXMgZHVyaW5nIGhhcm1vbmljIGVtcGhhc2lz
ICovCi0gICAgICAgIEJbIDAgXSA9ICBwc0VuY0N0cmwtPkdhaW5zUHJlWyBrIF07Ci0gICAgICAg
IEJbIDEgXSA9IC1wc0VuY0N0cmwtPkdhaW5zUHJlWyBrIF0gKgotICAgICAgICAgICAgKCBwc0Vu
Y0N0cmwtPkhhcm1Cb29zdFsgayBdICogSGFybVNoYXBlR2FpbiArIElOUFVUX1RJTFQgKyBwc0Vu
Y0N0cmwtPmNvZGluZ19xdWFsaXR5ICogSElHSF9SQVRFX0lOUFVUX1RJTFQgKTsKLSAgICAgICAg
cHh3WyAwIF0gPSBCWyAwIF0gKiBzdF9yZXNbIDAgXSArIEJbIDEgXSAqIFAtPnNIYXJtSFA7Ci0g
ICAgICAgIGZvciggaiA9IDE7IGogPCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7IGorKyApIHsK
LSAgICAgICAgICAgIHB4d1sgaiBdID0gQlsgMCBdICogc3RfcmVzWyBqIF0gKyBCWyAxIF0gKiBz
dF9yZXNbIGogLSAxIF07Ci0gICAgICAgIH0KLSAgICAgICAgUC0+c0hhcm1IUCA9IHN0X3Jlc1sg
cHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoIC0gMSBdOwotCi0gICAgICAgIHNpbGtfcHJlZmlsdF9G
TFAoIFAsIHB4dywgcHh3LCBIYXJtU2hhcGVGSVIsIFRpbHQsIExGX01BX3NocCwgTEZfQVJfc2hw
LCBsYWcsIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCApOwotCi0gICAgICAgIHB4ICArPSBwc0Vu
Yy0+c0Ntbi5zdWJmcl9sZW5ndGg7Ci0gICAgICAgIHB4dyArPSBwc0VuYy0+c0Ntbi5zdWJmcl9s
ZW5ndGg7Ci0gICAgfQotICAgIFAtPmxhZ1ByZXYgPSBwc0VuY0N0cmwtPnBpdGNoTFsgcHNFbmMt
PnNDbW4ubmJfc3ViZnIgLSAxIF07Ci19Ci0KLS8qCi0qIFByZWZpbHRlciBmb3IgZmluZGluZyBR
dWFudGl6ZXIgaW5wdXQgc2lnbmFsCi0qLwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19w
cmVmaWx0X0ZMUCgKLSAgICBzaWxrX3ByZWZpbHRlcl9zdGF0ZV9GTFAgICAgKlAsICAgICAgICAg
ICAgICAgICAvKiBJL08gc3RhdGUgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAg
c3RfcmVzW10sICAgICAgICAgICAvKiBJICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAg
ICAgIHh3W10sICAgICAgICAgICAgICAgLyogTyAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAg
ICAgICAgICAqSGFybVNoYXBlRklSLCAgICAgIC8qIEkgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAg
ICAgICAgICAgICAgVGlsdCwgICAgICAgICAgICAgICAvKiBJICovCi0gICAgc2lsa19mbG9hdCAg
ICAgICAgICAgICAgICAgIExGX01BX3NocCwgICAgICAgICAgLyogSSAqLwotICAgIHNpbGtfZmxv
YXQgICAgICAgICAgICAgICAgICBMRl9BUl9zaHAsICAgICAgICAgIC8qIEkgKi8KLSAgICBvcHVz
X2ludCAgICAgICAgICAgICAgICAgICAgbGFnLCAgICAgICAgICAgICAgICAvKiBJICovCi0gICAg
b3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0aCAgICAgICAgICAgICAgLyogSSAqLwot
KQotewotICAgIG9wdXNfaW50ICAgaTsKLSAgICBvcHVzX2ludCAgIGlkeCwgTFRQX3NocF9idWZf
aWR4OwotICAgIHNpbGtfZmxvYXQgbl9UaWx0LCBuX0xGLCBuX0xUUDsKLSAgICBzaWxrX2Zsb2F0
IHNMRl9BUl9zaHAsIHNMRl9NQV9zaHA7Ci0gICAgc2lsa19mbG9hdCAqTFRQX3NocF9idWY7Ci0K
LSAgICAvKiBUbyBzcGVlZCB1cCB1c2UgdGVtcCB2YXJpYWJsZXMgaW5zdGVhZCBvZiB1c2luZyB0
aGUgc3RydWN0ICovCi0gICAgTFRQX3NocF9idWYgICAgID0gUC0+c0xUUF9zaHA7Ci0gICAgTFRQ
X3NocF9idWZfaWR4ID0gUC0+c0xUUF9zaHBfYnVmX2lkeDsKLSAgICBzTEZfQVJfc2hwICAgICAg
PSBQLT5zTEZfQVJfc2hwOwotICAgIHNMRl9NQV9zaHAgICAgICA9IFAtPnNMRl9NQV9zaHA7Ci0K
LSAgICBmb3IoIGkgPSAwOyBpIDwgbGVuZ3RoOyBpKysgKSB7Ci0gICAgICAgIGlmKCBsYWcgPiAw
ICkgewotICAgICAgICAgICAgc2lsa19hc3NlcnQoIEhBUk1fU0hBUEVfRklSX1RBUFMgPT0gMyAp
OwotICAgICAgICAgICAgaWR4ID0gbGFnICsgTFRQX3NocF9idWZfaWR4OwotICAgICAgICAgICAg
bl9MVFAgID0gTFRQX3NocF9idWZbICggaWR4IC0gSEFSTV9TSEFQRV9GSVJfVEFQUyAvIDIgLSAx
KSAmIExUUF9NQVNLIF0gKiBIYXJtU2hhcGVGSVJbIDAgXTsKLSAgICAgICAgICAgIG5fTFRQICs9
IExUUF9zaHBfYnVmWyAoIGlkeCAtIEhBUk1fU0hBUEVfRklSX1RBUFMgLyAyICAgICkgJiBMVFBf
TUFTSyBdICogSGFybVNoYXBlRklSWyAxIF07Ci0gICAgICAgICAgICBuX0xUUCArPSBMVFBfc2hw
X2J1ZlsgKCBpZHggLSBIQVJNX1NIQVBFX0ZJUl9UQVBTIC8gMiArIDEpICYgTFRQX01BU0sgXSAq
IEhhcm1TaGFwZUZJUlsgMiBdOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgbl9MVFAg
PSAwOwotICAgICAgICB9Ci0KLSAgICAgICAgbl9UaWx0ID0gc0xGX0FSX3NocCAqIFRpbHQ7Ci0g
ICAgICAgIG5fTEYgICA9IHNMRl9BUl9zaHAgKiBMRl9BUl9zaHAgKyBzTEZfTUFfc2hwICogTEZf
TUFfc2hwOwotCi0gICAgICAgIHNMRl9BUl9zaHAgPSBzdF9yZXNbIGkgXSAtIG5fVGlsdDsKLSAg
ICAgICAgc0xGX01BX3NocCA9IHNMRl9BUl9zaHAgLSBuX0xGOwotCi0gICAgICAgIExUUF9zaHBf
YnVmX2lkeCA9ICggTFRQX3NocF9idWZfaWR4IC0gMSApICYgTFRQX01BU0s7Ci0gICAgICAgIExU
UF9zaHBfYnVmWyBMVFBfc2hwX2J1Zl9pZHggXSA9IHNMRl9NQV9zaHA7Ci0KLSAgICAgICAgeHdb
IGkgXSA9IHNMRl9NQV9zaHAgLSBuX0xUUDsKLSAgICB9Ci0gICAgLyogQ29weSB0ZW1wIHZhcmlh
YmxlIGJhY2sgdG8gc3RhdGUgKi8KLSAgICBQLT5zTEZfQVJfc2hwICAgICAgID0gc0xGX0FSX3No
cDsKLSAgICBQLT5zTEZfTUFfc2hwICAgICAgID0gc0xGX01BX3NocDsKLSAgICBQLT5zTFRQX3No
cF9idWZfaWR4ID0gTFRQX3NocF9idWZfaWR4OwotfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3Nj
aHVyX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3NjaHVyX0ZMUC5jCmluZGV4IGVlNDM2ZjgzNTFjOGFkZjFl
ZTM2ZmE1MDUyNjEyY2NmNDYyYTU1YWUuLmMxZTBiYmI1NDExYzk5NTljYTNmN2Y2YzI5NTc3MTM2
MTcwNDgxZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9zY2h1cl9GTFAuYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxv
YXQvc2NodXJfRkxQLmMKQEAgLTM4LDIyICszOCwyMyBAQCBzaWxrX2Zsb2F0IHNpbGtfc2NodXJf
RkxQKCAgICAgICAgICAgICAgICAgIC8qIE8gICAgcmV0dXJucyByZXNpZHVhbCBlbmVyZ3kKICkK
IHsKICAgICBvcHVzX2ludCAgIGssIG47Ci0gICAgc2lsa19mbG9hdCBDWyBTSUxLX01BWF9PUkRF
Ul9MUEMgKyAxIF1bIDIgXTsKLSAgICBzaWxrX2Zsb2F0IEN0bXAxLCBDdG1wMiwgcmNfdG1wOwor
ICAgIGRvdWJsZSBDWyBTSUxLX01BWF9PUkRFUl9MUEMgKyAxIF1bIDIgXTsKKyAgICBkb3VibGUg
Q3RtcDEsIEN0bXAyLCByY190bXA7CiAKLSAgICBzaWxrX2Fzc2VydCggb3JkZXI9PTZ8fG9yZGVy
PT04fHxvcmRlcj09MTB8fG9yZGVyPT0xMnx8b3JkZXI9PTE0fHxvcmRlcj09MTYgKTsKKyAgICBz
aWxrX2Fzc2VydCggb3JkZXIgPj0gMCAmJiBvcmRlciA8PSBTSUxLX01BWF9PUkRFUl9MUEMgKTsK
IAogICAgIC8qIENvcHkgY29ycmVsYXRpb25zICovCi0gICAgZm9yKCBrID0gMDsgayA8IG9yZGVy
KzE7IGsrKyApIHsKKyAgICBrID0gMDsKKyAgICBkbyB7CiAgICAgICAgIENbIGsgXVsgMCBdID0g
Q1sgayBdWyAxIF0gPSBhdXRvX2NvcnJbIGsgXTsKLSAgICB9CisgICAgfSB3aGlsZSggKytrIDw9
IG9yZGVyICk7CiAKICAgICBmb3IoIGsgPSAwOyBrIDwgb3JkZXI7IGsrKyApIHsKICAgICAgICAg
LyogR2V0IHJlZmxlY3Rpb24gY29lZmZpY2llbnQgKi8KICAgICAgICAgcmNfdG1wID0gLUNbIGsg
KyAxIF1bIDAgXSAvIHNpbGtfbWF4X2Zsb2F0KCBDWyAwIF1bIDEgXSwgMWUtOWYgKTsKIAogICAg
ICAgICAvKiBTYXZlIHRoZSBvdXRwdXQgKi8KLSAgICAgICAgcmVmbF9jb2VmWyBrIF0gPSByY190
bXA7CisgICAgICAgIHJlZmxfY29lZlsgayBdID0gKHNpbGtfZmxvYXQpcmNfdG1wOwogCiAgICAg
ICAgIC8qIFVwZGF0ZSBjb3JyZWxhdGlvbnMgKi8KICAgICAgICAgZm9yKCBuID0gMDsgbiA8IG9y
ZGVyIC0gazsgbisrICkgewpAQCAtNjUsNiArNjYsNSBAQCBzaWxrX2Zsb2F0IHNpbGtfc2NodXJf
RkxQKCAgICAgICAgICAgICAgICAgIC8qIE8gICAgcmV0dXJucyByZXNpZHVhbCBlbmVyZ3kKICAg
ICB9CiAKICAgICAvKiBSZXR1cm4gcmVzaWR1YWwgZW5lcmd5ICovCi0gICAgcmV0dXJuIENbIDAg
XVsgMSBdOworICAgIHJldHVybiAoc2lsa19mbG9hdClDWyAwIF1bIDEgXTsKIH0KLQpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2Zsb2F0L3NvbHZlX0xTX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3NvbHZlX0xTX0ZMUC5j
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3YzkwZDY2NWEwZjBkMThiNTczYjYzMmE5
MzI4NTYwNTExYmYyYTgxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9mbG9hdC9zb2x2ZV9MU19GTFAuYworKysgL2Rldi9udWxsCkBAIC0xLDIwNyAr
MCwwIEBACi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioKLUNvcHlyaWdodCAoYykgMjAwNi0yMDExLCBTa3lwZSBM
aW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci1tb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLWFyZSBt
ZXQ6Ci0tIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwKLXRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0tIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci1ub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi1kb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
LSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVz
dCwgbm9yIHRoZQotbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUKLXByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgotcGVybWlzc2lvbi4KLVRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMg
IkFTIElTIgotQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLUFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9S
UyBCRQotTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgotQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLVNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KLUNPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCi1BUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQotUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCi0qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLQotI2lmZGVmIEhBVkVfQ09ORklHX0gKLSNp
bmNsdWRlICJjb25maWcuaCIKLSNlbmRpZgotCi0jaW5jbHVkZSAibWFpbl9GTFAuaCIKLSNpbmNs
dWRlICJ0dW5pbmdfcGFyYW1ldGVycy5oIgotCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICogTERMIEZhY3Rv
cmlzYXRpb24uIEZpbmRzIHRoZSB1cHBlciB0cmlhbmd1bGFyIG1hdHJpeCBMIGFuZCB0aGUgZGlh
Z29uYWwKLSAqIE1hdHJpeCBEIChvbmx5IHRoZSBkaWFnb25hbCBlbGVtZW50cyByZXR1cm5lZCBp
biBhIHZlY3RvcilzdWNoIHRoYXQKLSAqIHRoZSBzeW1tZXRyaWMgbWF0cmljIEEgaXMgZ2l2ZW4g
YnkgQSA9IEwqRCpMJy4KLSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19MRExfRkxQKAotICAgIHNpbGtfZmxvYXQgICAgICAgICAgKkEsICAgICAgICAgLyogSS9P
ICBQb2ludGVyIHRvIFN5bWV0cmljIFNxdWFyZSBNYXRyaXggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgIE0sICAgICAgICAgIC8qIEkgICAg
U2l6ZSBvZiBNYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAqTCwgICAgICAgICAvKiBJL08gIFBv
aW50ZXIgdG8gU3F1YXJlIFVwcGVyIHRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgKkRpbnYgICAgICAgLyogSS9PICBQb2lu
dGVyIHRvIHZlY3RvciBob2xkaW5nIHRoZSBpbnZlcnNlIGRpYWdvbmFsIGVsZW1lbnRzIG9mIEQg
ICAgKi8KLSk7Ci0KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gKiBGdW5jdGlvbiB0byBzb2x2ZSBsaW5lYXIg
ZXF1YXRpb24gQXggPSBiLCB3aGVuIEEgaXMgYSBNeE0gbG93ZXIKLSAqIHRyaWFuZ3VsYXIgbWF0
cml4LCB3aXRoIG9uZXMgb24gdGhlIGRpYWdvbmFsLgotICoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi1zdGF0aWMg
T1BVU19JTkxJTkUgdm9pZCBzaWxrX1NvbHZlV2l0aExvd2VyVHJpYW5ndWxhcldkaWFnT25lc19G
TFAoCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAqTCwgICAgICAgICAvKiBJICAgIFBvaW50ZXIg
dG8gTG93ZXIgVHJpYW5ndWxhciBNYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIG9wdXNfaW50ICAgICAgICAgICAgTSwgICAgICAgICAgLyogSSAgICBEaW0gb2YgTWF0
cml4IGVxdWF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
LSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICpiLCAgICAgICAgIC8qIEkgICAgYiBWZWN0b3IgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgc2lsa19mbG9hdCAgICAgICAgICAqeCAgICAgICAgICAvKiBPICAgIHggVmVjdG9yICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsK
LQotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioKLSAqIEZ1bmN0aW9uIHRvIHNvbHZlIGxpbmVhciBlcXVhdGlvbiAo
QV5UKXggPSBiLCB3aGVuIEEgaXMgYSBNeE0gbG93ZXIKLSAqIHRyaWFuZ3VsYXIsIHdpdGggb25l
cyBvbiB0aGUgZGlhZ29uYWwuIChpZSB0aGVuIEFeVCBpcyB1cHBlciB0cmlhbmd1bGFyKQotICoq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKiovCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX1NvbHZlV2l0aFVwcGVy
VHJpYW5ndWxhckZyb21Mb3dlcldkaWFnT25lc19GTFAoCi0gICAgY29uc3Qgc2lsa19mbG9hdCAg
ICAqTCwgICAgICAgICAvKiBJICAgIFBvaW50ZXIgdG8gTG93ZXIgVHJpYW5ndWxhciBNYXRyaXgg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAg
TSwgICAgICAgICAgLyogSSAgICBEaW0gb2YgTWF0cml4IGVxdWF0aW9uICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICpi
LCAgICAgICAgIC8qIEkgICAgYiBWZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAqeCAg
ICAgICAgICAvKiBPICAgIHggVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsKLQotLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAqIEZ1bmN0
aW9uIHRvIHNvbHZlIGxpbmVhciBlcXVhdGlvbiBBeCA9IGIsIHdoZW4gQSBpcyBhIE14TQotICog
c3ltbWV0cmljIHNxdWFyZSBtYXRyaXggLSB1c2luZyBMREwgZmFjdG9yaXNhdGlvbgotICoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKiovCi12b2lkIHNpbGtfc29sdmVfTERMX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAg
ICAgICAgICAgICAgICAgICpBLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkv
TyAgU3ltbWV0cmljIHNxdWFyZSBtYXRyaXgsIG91dDogcmVnLiAgICAgICAgICAqLwotICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgTSwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBTaXplIG9mIG1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAqYiwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFBvaW50ZXIgdG8gYiB2ZWN0b3IgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAg
ICp4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUG9pbnRlciB0byB4
IHNvbHV0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50ICAg
aTsKLSAgICBzaWxrX2Zsb2F0IExbICAgIE1BWF9NQVRSSVhfU0laRSBdWyBNQVhfTUFUUklYX1NJ
WkUgXTsKLSAgICBzaWxrX2Zsb2F0IFRbICAgIE1BWF9NQVRSSVhfU0laRSBdOwotICAgIHNpbGtf
ZmxvYXQgRGludlsgTUFYX01BVFJJWF9TSVpFIF07IC8qIGludmVyc2UgZGlhZ29uYWwgZWxlbWVu
dHMgb2YgRCovCi0KLSAgICBzaWxrX2Fzc2VydCggTSA8PSBNQVhfTUFUUklYX1NJWkUgKTsKLQot
ICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioK
LSAgICBGYWN0b3JpemUgQSBieSBMREwgc3VjaCB0aGF0IEEgPSBMKkQqKExeVCksCi0gICAgd2hl
cmUgTCBpcyBsb3dlciB0cmlhbmd1bGFyIHdpdGggb25lcyBvbiBkaWFnb25hbAotICAgICoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgc2ls
a19MRExfRkxQKCBBLCBNLCAmTFsgMCBdWyAwIF0sIERpbnYgKTsKLQotICAgIC8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gICAgKiBzdWJzdGl0
dXRlIEQqKExeVCkgPSBULiBpZToKLSAgICBMKkQqKExeVCkqeCA9IGIgPT4gTCpUID0gYiA8PT4g
VCA9IGludihMKSpiCi0gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwotICAgIHNpbGtfU29sdmVXaXRoTG93ZXJUcmlhbmd1bGFyV2RpYWdP
bmVzX0ZMUCggJkxbIDAgXVsgMCBdLCBNLCBiLCBUICk7Ci0KLSAgICAvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICAgIEQqKExeVCkqeCA9IFQg
PD0+IChMXlQpKnggPSBpbnYoRCkqVCwgYmVjYXVzZSBEIGlzCi0gICAgZGlhZ29uYWwganVzdCBt
dWx0aXBseSB3aXRoIDEvZF9pCi0gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KLSAgICBmb3IoIGkgPSAwOyBpIDwgTTsgaSsrICkgewotICAg
ICAgICBUWyBpIF0gPSBUWyBpIF0gKiBEaW52WyBpIF07Ci0gICAgfQotICAgIC8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gICAgeCA9IGludihM
JykgKiBpbnYoRCkgKiBUCi0gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCi0gICAgc2lsa19Tb2x2ZVdpdGhVcHBlclRyaWFuZ3VsYXJGcm9t
TG93ZXJXZGlhZ09uZXNfRkxQKCAmTFsgMCBdWyAwIF0sIE0sIFQsIHggKTsKLX0KLQotc3RhdGlj
IE9QVVNfSU5MSU5FIHZvaWQgc2lsa19Tb2x2ZVdpdGhVcHBlclRyaWFuZ3VsYXJGcm9tTG93ZXJX
ZGlhZ09uZXNfRkxQKAotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKkwsICAgICAgICAgLyogSSAg
ICBQb2ludGVyIHRvIExvd2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgIE0sICAgICAgICAgIC8qIEkgICAg
RGltIG9mIE1hdHJpeCBlcXVhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAqYiwgICAgICAgICAvKiBJICAgIGIg
VmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgKnggICAgICAgICAgLyogTyAgICB4IFZl
Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSkKLXsKLSAgICBvcHVzX2ludCAgIGksIGo7Ci0gICAgc2lsa19mbG9hdCB0ZW1wOwot
ICAgIGNvbnN0IHNpbGtfZmxvYXQgKnB0cjE7Ci0KLSAgICBmb3IoIGkgPSBNIC0gMTsgaSA+PSAw
OyBpLS0gKSB7Ci0gICAgICAgIHB0cjEgPSAgbWF0cml4X2FkciggTCwgMCwgaSwgTSApOwotICAg
ICAgICB0ZW1wID0gMDsKLSAgICAgICAgZm9yKCBqID0gTSAtIDE7IGogPiBpIDsgai0tICkgewot
ICAgICAgICAgICAgdGVtcCArPSBwdHIxWyBqICogTSBdICogeFsgaiBdOwotICAgICAgICB9Ci0g
ICAgICAgIHRlbXAgPSBiWyBpIF0gLSB0ZW1wOwotICAgICAgICB4WyBpIF0gPSB0ZW1wOwotICAg
IH0KLX0KLQotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19Tb2x2ZVdpdGhMb3dlclRyaWFu
Z3VsYXJXZGlhZ09uZXNfRkxQKAotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKkwsICAgICAgICAg
LyogSSAgICBQb2ludGVyIHRvIExvd2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgIE0sICAgICAgICAgIC8q
IEkgICAgRGltIG9mIE1hdHJpeCBlcXVhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAqYiwgICAgICAgICAvKiBJ
ICAgIGIgVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgKnggICAgICAgICAgLyogTyAg
ICB4IFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSkKLXsKLSAgICBvcHVzX2ludCAgIGksIGo7Ci0gICAgc2lsa19mbG9hdCB0
ZW1wOwotICAgIGNvbnN0IHNpbGtfZmxvYXQgKnB0cjE7Ci0KLSAgICBmb3IoIGkgPSAwOyBpIDwg
TTsgaSsrICkgewotICAgICAgICBwdHIxID0gIG1hdHJpeF9hZHIoIEwsIGksIDAsIE0gKTsKLSAg
ICAgICAgdGVtcCA9IDA7Ci0gICAgICAgIGZvciggaiA9IDA7IGogPCBpOyBqKysgKSB7Ci0gICAg
ICAgICAgICB0ZW1wICs9IHB0cjFbIGogXSAqIHhbIGogXTsKLSAgICAgICAgfQotICAgICAgICB0
ZW1wID0gYlsgaSBdIC0gdGVtcDsKLSAgICAgICAgeFsgaSBdID0gdGVtcDsKLSAgICB9Ci19Ci0K
LXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTERMX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAg
ICAgICAgICpBLCAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTeW1ldHJpYyBTcXVhcmUgTWF0
cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAg
ICAgICBNLCAgICAgICAgICAvKiBJICAgIFNpemUgb2YgTWF0cml4ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAg
ICAgKkwsICAgICAgICAgLyogSS9PICBQb2ludGVyIHRvIFNxdWFyZSBVcHBlciB0cmlhbmd1bGFy
IE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAg
ICpEaW52ICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byB2ZWN0b3IgaG9sZGluZyB0aGUgaW52ZXJz
ZSBkaWFnb25hbCBlbGVtZW50cyBvZiBEICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgaSwgaiwg
aywgbG9vcF9jb3VudCwgZXJyID0gMTsKLSAgICBzaWxrX2Zsb2F0ICpwdHIxLCAqcHRyMjsKLSAg
ICBkb3VibGUgdGVtcCwgZGlhZ19taW5fdmFsdWU7Ci0gICAgc2lsa19mbG9hdCB2WyBNQVhfTUFU
UklYX1NJWkUgXSwgRFsgTUFYX01BVFJJWF9TSVpFIF07IC8qIHRlbXAgYXJyYXlzKi8KLQotICAg
IHNpbGtfYXNzZXJ0KCBNIDw9IE1BWF9NQVRSSVhfU0laRSApOwotCi0gICAgZGlhZ19taW5fdmFs
dWUgPSBGSU5EX0xUUF9DT05EX0ZBQyAqIDAuNWYgKiAoIEFbIDAgXSArIEFbIE0gKiBNIC0gMSBd
ICk7Ci0gICAgZm9yKCBsb29wX2NvdW50ID0gMDsgbG9vcF9jb3VudCA8IE0gJiYgZXJyID09IDE7
IGxvb3BfY291bnQrKyApIHsKLSAgICAgICAgZXJyID0gMDsKLSAgICAgICAgZm9yKCBqID0gMDsg
aiA8IE07IGorKyApIHsKLSAgICAgICAgICAgIHB0cjEgPSBtYXRyaXhfYWRyKCBMLCBqLCAwLCBN
ICk7Ci0gICAgICAgICAgICB0ZW1wID0gbWF0cml4X3B0ciggQSwgaiwgaiwgTSApOyAvKiBlbGVt
ZW50IGluIHJvdyBqIGNvbHVtbiBqKi8KLSAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBqOyBp
KysgKSB7Ci0gICAgICAgICAgICAgICAgdlsgaSBdID0gcHRyMVsgaSBdICogRFsgaSBdOwotICAg
ICAgICAgICAgICAgIHRlbXAgIC09IHB0cjFbIGkgXSAqIHZbIGkgXTsKLSAgICAgICAgICAgIH0K
LSAgICAgICAgICAgIGlmKCB0ZW1wIDwgZGlhZ19taW5fdmFsdWUgKSB7Ci0gICAgICAgICAgICAg
ICAgLyogQmFkbHkgY29uZGl0aW9uZWQgbWF0cml4OiBhZGQgd2hpdGUgbm9pc2UgYW5kIHJ1biBh
Z2FpbiAqLwotICAgICAgICAgICAgICAgIHRlbXAgPSAoIGxvb3BfY291bnQgKyAxICkgKiBkaWFn
X21pbl92YWx1ZSAtIHRlbXA7Ci0gICAgICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IE07IGkr
KyApIHsKLSAgICAgICAgICAgICAgICAgICAgbWF0cml4X3B0ciggQSwgaSwgaSwgTSApICs9ICgg
c2lsa19mbG9hdCApdGVtcDsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgZXJy
ID0gMTsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IERbIGogXSAgICA9ICggc2lsa19mbG9hdCApdGVtcDsKLSAgICAgICAgICAgIERpbnZbIGogXSA9
ICggc2lsa19mbG9hdCApKCAxLjBmIC8gdGVtcCApOwotICAgICAgICAgICAgbWF0cml4X3B0cigg
TCwgaiwgaiwgTSApID0gMS4wZjsKLQotICAgICAgICAgICAgcHRyMSA9IG1hdHJpeF9hZHIoIEEs
IGosIDAsIE0gKTsKLSAgICAgICAgICAgIHB0cjIgPSBtYXRyaXhfYWRyKCBMLCBqICsgMSwgMCwg
TSk7Ci0gICAgICAgICAgICBmb3IoIGkgPSBqICsgMTsgaSA8IE07IGkrKyApIHsKLSAgICAgICAg
ICAgICAgICB0ZW1wID0gMC4wOwotICAgICAgICAgICAgICAgIGZvciggayA9IDA7IGsgPCBqOyBr
KysgKSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlbXAgKz0gcHRyMlsgayBdICogdlsgayBdOwot
ICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBtYXRyaXhfcHRyKCBMLCBpLCBqLCBN
ICkgPSAoIHNpbGtfZmxvYXQgKSggKCBwdHIxWyBpIF0gLSB0ZW1wICkgKiBEaW52WyBqIF0gKTsK
LSAgICAgICAgICAgICAgICBwdHIyICs9IE07IC8qIGdvIHRvIG5leHQgY29sdW1uKi8KLSAgICAg
ICAgICAgIH0KLSAgICAgICAgfQotICAgIH0KLSAgICBzaWxrX2Fzc2VydCggZXJyID09IDAgKTsK
LX0KLQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3N0cnVjdHNfRkxQLmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvc3Ry
dWN0c19GTFAuaAppbmRleCAxNGQ2NDdjZWQyN2U2YjZhNmRlNTY3ZmFkMzk4MjJkNjdhM2NkNGM4
Li4zMTUwYjM4NmU0Nzg1MDZkYzg4ODRhZTY5MTk3MTI5ZWYxYzQxNjMzIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZmxvYXQvc3RydWN0c19GTFAuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvc3RydWN0c19GTFAuaApAQCAt
NDIsMzIgKzQyLDE2IEBAIGV4dGVybiAiQyIKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KIHR5cGVkZWYgc3RydWN0IHsKICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAg
TGFzdEdhaW5JbmRleDsKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgSGFybUJvb3N0
X3NtdGg7CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5fc210
aDsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgVGlsdF9zbXRoOwogfSBzaWxrX3No
YXBlX3N0YXRlX0ZMUDsKIAotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotLyog
UHJlZmlsdGVyIHN0YXRlICAgICAgICAgICAgICAqLwotLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqLwotdHlwZWRlZiBzdHJ1Y3QgewotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAg
ICAgICBzTFRQX3NocFsgTFRQX0JVRl9MRU5HVEggXTsKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAg
ICAgICAgICAgc0FSX3NocFsgTUFYX1NIQVBFX0xQQ19PUkRFUiArIDEgXTsKLSAgICBvcHVzX2lu
dCAgICAgICAgICAgICAgICAgICAgc0xUUF9zaHBfYnVmX2lkeDsKLSAgICBzaWxrX2Zsb2F0ICAg
ICAgICAgICAgICAgICAgc0xGX0FSX3NocDsKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
ICAgc0xGX01BX3NocDsKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgc0hhcm1IUDsK
LSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgcmFuZF9zZWVkOwotICAgIG9wdXNfaW50
ICAgICAgICAgICAgICAgICAgICBsYWdQcmV2OwotfSBzaWxrX3ByZWZpbHRlcl9zdGF0ZV9GTFA7
Ci0KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIC8qIEVuY29kZXIgc3RhdGUg
RkxQICAgICAgICAgICAgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIHR5
cGVkZWYgc3RydWN0IHsKICAgICBzaWxrX2VuY29kZXJfc3RhdGUgICAgICAgICAgc0NtbjsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogQ29tbW9uIHN0cnVjdCwgc2hhcmVkIHdpdGgg
Zml4ZWQtcG9pbnQgY29kZSAqLwogICAgIHNpbGtfc2hhcGVfc3RhdGVfRkxQICAgICAgICBzU2hh
cGU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBOb2lzZSBzaGFwaW5nIHN0YXRlICov
Ci0gICAgc2lsa19wcmVmaWx0ZXJfc3RhdGVfRkxQICAgIHNQcmVmaWx0OyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIFByZWZpbHRlciBTdGF0ZSAqLwogCiAgICAgLyogQnVmZmVyIGZvciBm
aW5kIHBpdGNoIGFuZCBub2lzZSBzaGFwZSBhbmFseXNpcyAqLwogICAgIHNpbGtfZmxvYXQgICAg
ICAgICAgICAgICAgICB4X2J1ZlsgMiAqIE1BWF9GUkFNRV9MRU5HVEggKyBMQV9TSEFQRV9NQVgg
XTsvKiBCdWZmZXIgZm9yIGZpbmQgcGl0Y2ggYW5kIG5vaXNlIHNoYXBlIGFuYWx5c2lzICovCkBA
IC04NiwxMiArNzAsOSBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1c19pbnQgICAgICAgICAg
ICAgICAgICAgIHBpdGNoTFsgTUFYX05CX1NVQkZSIF07CiAKICAgICAvKiBOb2lzZSBzaGFwaW5n
IHBhcmFtZXRlcnMgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgQVIxWyBNQVhf
TkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07Ci0gICAgc2lsa19mbG9hdCAgICAgICAg
ICAgICAgICAgIEFSMlsgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOworICAg
IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBBUlsgTUFYX05CX1NVQkZSICogTUFYX1NIQVBF
X0xQQ19PUkRFUiBdOwogICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBMRl9NQV9zaHBb
ICAgICBNQVhfTkJfU1VCRlIgXTsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgTEZf
QVJfc2hwWyAgICAgTUFYX05CX1NVQkZSIF07Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAg
ICAgIEdhaW5zUHJlWyAgICAgIE1BWF9OQl9TVUJGUiBdOwotICAgIHNpbGtfZmxvYXQgICAgICAg
ICAgICAgICAgICBIYXJtQm9vc3RbICAgICBNQVhfTkJfU1VCRlIgXTsKICAgICBzaWxrX2Zsb2F0
ICAgICAgICAgICAgICAgICAgVGlsdFsgICAgICAgICAgTUFYX05CX1NVQkZSIF07CiAgICAgc2ls
a19mbG9hdCAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5bIE1BWF9OQl9TVUJGUiBdOwog
ICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBMYW1iZGE7CkBAIC05OSw3ICs4MCw2IEBA
IHR5cGVkZWYgc3RydWN0IHsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgY29kaW5n
X3F1YWxpdHk7CiAKICAgICAvKiBNZWFzdXJlcyAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAg
ICAgICAgICBzcGFyc2VuZXNzOwogICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBwcmVk
R2FpbjsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgTFRQcmVkQ29kR2FpbjsKICAg
ICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgUmVzTnJnWyBNQVhfTkJfU1VCRlIgXTsgICAg
ICAgICAgICAgLyogUmVzaWR1YWwgZW5lcmd5IHBlciBzdWJmcmFtZSAqLwpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2Zsb2F0L3dyYXBwZXJzX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3dyYXBwZXJzX0ZMUC5jCmluZGV4
IDY2NjZiOGVmYWFkZTJmMGNlOWVlZjM3MTgxYzA3NjgzZDU0MzNlYzIuLmFkOTBiODc0YTRkODE0
YTYxNWM5MTQxNzQyMDVmZGZiMTBkZjA5NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC93cmFwcGVy
c19GTFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvd3JhcHBlcnNfRkxQLmMKQEAgLTU0LDEzICs1NCwxNCBA
QCB2b2lkIHNpbGtfQTJOTFNGX0ZMUCgKIHZvaWQgc2lsa19OTFNGMkFfRkxQKAogICAgIHNpbGtf
ZmxvYXQgICAgICAgICAgICAgICAgICAgICAgKnBBUiwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogTyAgICBMUEMgY29lZmZpY2llbnRzIFsgTFBDX29yZGVyIF0gICAgICAgICAgICAg
ICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAqTkxTRl9RMTUsICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE5MU0YgdmVjdG9yICAgICAgWyBMUENfb3JkZXIg
XSAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIExQ
Q19vcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFBDIG9yZGVyICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgTFBDX29yZGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBM
UEMgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgaW50ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICkKIHsKICAgICBvcHVzX2ludCAgIGk7CiAgICAgb3B1c19pbnQxNiBhX2ZpeF9RMTJbIE1B
WF9MUENfT1JERVIgXTsKIAotICAgIHNpbGtfTkxTRjJBKCBhX2ZpeF9RMTIsIE5MU0ZfUTE1LCBM
UENfb3JkZXIgKTsKKyAgICBzaWxrX05MU0YyQSggYV9maXhfUTEyLCBOTFNGX1ExNSwgTFBDX29y
ZGVyLCBhcmNoICk7CiAKICAgICBmb3IoIGkgPSAwOyBpIDwgTFBDX29yZGVyOyBpKysgKSB7CiAg
ICAgICAgIHBBUlsgaSBdID0gKCBzaWxrX2Zsb2F0IClhX2ZpeF9RMTJbIGkgXSAqICggMS4wZiAv
IDQwOTYuMGYgKTsKQEAgLTEwMiwxNCArMTAzLDE0IEBAIHZvaWQgc2lsa19OU1Ffd3JhcHBlcl9G
TFAoCiApCiB7CiAgICAgb3B1c19pbnQgICAgIGksIGo7Ci0gICAgb3B1c19pbnQzMiAgIHhfUTNb
IE1BWF9GUkFNRV9MRU5HVEggXTsKKyAgICBvcHVzX2ludDE2ICAgeDE2WyBNQVhfRlJBTUVfTEVO
R1RIIF07CiAgICAgb3B1c19pbnQzMiAgIEdhaW5zX1ExNlsgTUFYX05CX1NVQkZSIF07CiAgICAg
c2lsa19EV09SRF9BTElHTiBvcHVzX2ludDE2IFByZWRDb2VmX1ExMlsgMiBdWyBNQVhfTFBDX09S
REVSIF07CiAgICAgb3B1c19pbnQxNiAgIExUUENvZWZfUTE0WyBMVFBfT1JERVIgKiBNQVhfTkJf
U1VCRlIgXTsKICAgICBvcHVzX2ludCAgICAgTFRQX3NjYWxlX1ExNDsKIAogICAgIC8qIE5vaXNl
IHNoYXBpbmcgcGFyYW1ldGVycyAqLwotICAgIG9wdXNfaW50MTYgICBBUjJfUTEzWyBNQVhfTkJf
U1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07CisgICAgb3B1c19pbnQxNiAgIEFSX1ExM1sg
TUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfaW50MzIgICBM
Rl9zaHBfUTE0WyBNQVhfTkJfU1VCRlIgXTsgICAgICAgICAvKiBQYWNrcyB0d28gaW50MTYgY29l
ZmZpY2llbnRzIHBlciBpbnQzMiB2YWx1ZSAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAg
ICBMYW1iZGFfUTEwOwogICAgIG9wdXNfaW50ICAgICBUaWx0X1ExNFsgTUFYX05CX1NVQkZSIF07
CkBAIC0xMTksNyArMTIwLDcgQEAgdm9pZCBzaWxrX05TUV93cmFwcGVyX0ZMUCgKICAgICAvKiBO
b2lzZSBzaGFwZSBwYXJhbWV0ZXJzICovCiAgICAgZm9yKCBpID0gMDsgaSA8IHBzRW5jLT5zQ21u
Lm5iX3N1YmZyOyBpKysgKSB7CiAgICAgICAgIGZvciggaiA9IDA7IGogPCBwc0VuYy0+c0Ntbi5z
aGFwaW5nTFBDT3JkZXI7IGorKyApIHsKLSAgICAgICAgICAgIEFSMl9RMTNbIGkgKiBNQVhfU0hB
UEVfTFBDX09SREVSICsgaiBdID0gc2lsa19mbG9hdDJpbnQoIHBzRW5jQ3RybC0+QVIyWyBpICog
TUFYX1NIQVBFX0xQQ19PUkRFUiArIGogXSAqIDgxOTIuMGYgKTsKKyAgICAgICAgICAgIEFSX1Ex
M1sgaSAqIE1BWF9TSEFQRV9MUENfT1JERVIgKyBqIF0gPSBzaWxrX2Zsb2F0MmludCggcHNFbmND
dHJsLT5BUlsgaSAqIE1BWF9TSEFQRV9MUENfT1JERVIgKyBqIF0gKiA4MTkyLjBmICk7CiAgICAg
ICAgIH0KICAgICB9CiAKQEAgLTE1NSwxNiArMTU2LDE2IEBAIHZvaWQgc2lsa19OU1Ffd3JhcHBl
cl9GTFAoCiAKICAgICAvKiBDb252ZXJ0IGlucHV0IHRvIGZpeCAqLwogICAgIGZvciggaSA9IDA7
IGkgPCBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGg7IGkrKyApIHsKLSAgICAgICAgeF9RM1sgaSBd
ID0gc2lsa19mbG9hdDJpbnQoIDguMGYgKiB4WyBpIF0gKTsKKyAgICAgICAgeDE2WyBpIF0gPSBz
aWxrX2Zsb2F0MmludCggeFsgaSBdICk7CiAgICAgfQogCiAgICAgLyogQ2FsbCBOU1EgKi8KICAg
ICBpZiggcHNFbmMtPnNDbW4ublN0YXRlc0RlbGF5ZWREZWNpc2lvbiA+IDEgfHwgcHNFbmMtPnND
bW4ud2FycGluZ19RMTYgPiAwICkgewotICAgICAgICBzaWxrX05TUV9kZWxfZGVjKCAmcHNFbmMt
PnNDbW4sIHBzTlNRLCBwc0luZGljZXMsIHhfUTMsIHB1bHNlcywgUHJlZENvZWZfUTEyWyAwIF0s
IExUUENvZWZfUTE0LAotICAgICAgICAgICAgQVIyX1ExMywgSGFybVNoYXBlR2Fpbl9RMTQsIFRp
bHRfUTE0LCBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBzRW5jQ3RybC0+cGl0Y2hMLCBMYW1iZGFf
UTEwLCBMVFBfc2NhbGVfUTE0LCBwc0VuYy0+c0Ntbi5hcmNoICk7CisgICAgICAgIHNpbGtfTlNR
X2RlbF9kZWMoICZwc0VuYy0+c0NtbiwgcHNOU1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFBy
ZWRDb2VmX1ExMlsgMCBdLCBMVFBDb2VmX1ExNCwKKyAgICAgICAgICAgIEFSX1ExMywgSGFybVNo
YXBlR2Fpbl9RMTQsIFRpbHRfUTE0LCBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBzRW5jQ3RybC0+
cGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0LCBwc0VuYy0+c0Ntbi5hcmNoICk7CiAg
ICAgfSBlbHNlIHsKLSAgICAgICAgc2lsa19OU1EoICZwc0VuYy0+c0NtbiwgcHNOU1EsIHBzSW5k
aWNlcywgeF9RMywgcHVsc2VzLCBQcmVkQ29lZl9RMTJbIDAgXSwgTFRQQ29lZl9RMTQsCi0gICAg
ICAgICAgICBBUjJfUTEzLCBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsIExGX3NocF9RMTQs
IEdhaW5zX1ExNiwgcHNFbmNDdHJsLT5waXRjaEwsIExhbWJkYV9RMTAsIExUUF9zY2FsZV9RMTQs
IHBzRW5jLT5zQ21uLmFyY2ggKTsKKyAgICAgICAgc2lsa19OU1EoICZwc0VuYy0+c0NtbiwgcHNO
U1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMlsgMCBdLCBMVFBDb2VmX1Ex
NCwKKyAgICAgICAgICAgIEFSX1ExMywgSGFybVNoYXBlR2Fpbl9RMTQsIFRpbHRfUTE0LCBMRl9z
aHBfUTE0LCBHYWluc19RMTYsIHBzRW5jQ3RybC0+cGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2Nh
bGVfUTE0LCBwc0VuYy0+c0Ntbi5hcmNoICk7CiAgICAgfQogfQogCkBAIC0xNzIsMzEgKzE3Mywz
NSBAQCB2b2lkIHNpbGtfTlNRX3dyYXBwZXJfRkxQKAogLyogRmxvYXRpbmctcG9pbnQgU2lsayBM
VFAgcXVhbnRpYXRpb24gd3JhcHBlciAqLwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqLwogdm9pZCBzaWxrX3F1YW50X0xUUF9nYWluc19GTFAoCi0gICAg
c2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICBCWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JE
RVIgXSwgICAgICAvKiBJL08gIChVbi0pcXVhbnRpemVkIExUUCBnYWlucyAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIEJbIE1BWF9OQl9T
VUJGUiAqIExUUF9PUkRFUiBdLCAgICAgIC8qIE8gICAgUXVhbnRpemVkIExUUCBnYWlucyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAg
ICAgICAgY2JrX2luZGV4WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgLyogTyAgICBDb2RlYm9v
ayBpbmRleCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQ4ICAg
ICAgICAgICAgICAgICAgICAgICAqcGVyaW9kaWNpdHlfaW5kZXgsICAgICAgICAgICAgICAgICAv
KiBPICAgIFBlcmlvZGljaXR5IGluZGV4ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAg
ICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgICpzdW1fbG9nX2dhaW5fUTcsICAgICAg
ICAgICAgICAgICAgIC8qIEkvTyAgQ3VtdWxhdGl2ZSBtYXggcHJlZGljdGlvbiBnYWluICAqLwot
ICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgV1sgTUFYX05CX1NVQkZSICogTFRQ
X09SREVSICogTFRQX09SREVSIF0sIC8qIEkgICAgRXJyb3Igd2VpZ2h0cyAgICAgICAgICAgICAg
ICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBtdV9RMTAs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE11IHZhbHVlIChSL0QgdHJhZGVv
ZmYpICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgIGxvd0NvbXBsZXhpdHksICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRmxhZyBm
b3IgbG93IGNvbXBsZXhpdHkgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgbmJfc3ViZnIsICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBudW1iZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICAqcHJlZF9nYWluX2RCLCAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIHByZWRpY3Rpb24gZ2FpbiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgWFhb
IE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBJICAgIENvcnJlbGF0
aW9uIG1hdHJpeCAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2Zsb2F0ICAg
ICAgICAgICAgICAgIHhYWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgICAgIC8qIEkg
ICAgQ29ycmVsYXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
Y29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIHN1YmZyX2xlbiwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3ViZnJhbWUgICAg
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbmJf
c3ViZnIsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc3ViZnJh
bWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgaW50ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKLSAg
ICBvcHVzX2ludCAgIGk7CisgICAgb3B1c19pbnQgICBpLCBwcmVkX2dhaW5fZEJfUTc7CiAgICAg
b3B1c19pbnQxNiBCX1ExNFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF07Ci0gICAgb3B1c19p
bnQzMiBXX1ExOFsgTUFYX05CX1NVQkZSKkxUUF9PUkRFUipMVFBfT1JERVIgXTsKKyAgICBvcHVz
X2ludDMyIFhYX1ExN1sgTUFYX05CX1NVQkZSICogTFRQX09SREVSICogTFRQX09SREVSIF07Cisg
ICAgb3B1c19pbnQzMiB4WF9RMTdbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdOwogCi0gICAg
Zm9yKCBpID0gMDsgaSA8IG5iX3N1YmZyICogTFRQX09SREVSOyBpKysgKSB7Ci0gICAgICAgIEJf
UTE0WyBpIF0gPSAob3B1c19pbnQxNilzaWxrX2Zsb2F0MmludCggQlsgaSBdICogMTYzODQuMGYg
KTsKLSAgICB9CiAgICAgZm9yKCBpID0gMDsgaSA8IG5iX3N1YmZyICogTFRQX09SREVSICogTFRQ
X09SREVSOyBpKysgKSB7Ci0gICAgICAgIFdfUTE4WyBpIF0gPSAob3B1c19pbnQzMilzaWxrX2Zs
b2F0MmludCggV1sgaSBdICogMjYyMTQ0LjBmICk7CisgICAgICAgIFhYX1ExN1sgaSBdID0gKG9w
dXNfaW50MzIpc2lsa19mbG9hdDJpbnQoIFhYWyBpIF0gKiAxMzEwNzIuMGYgKTsKKyAgICB9Cisg
ICAgZm9yKCBpID0gMDsgaSA8IG5iX3N1YmZyICogTFRQX09SREVSOyBpKysgKSB7CisgICAgICAg
IHhYX1ExN1sgaSBdID0gKG9wdXNfaW50MzIpc2lsa19mbG9hdDJpbnQoIHhYWyBpIF0gKiAxMzEw
NzIuMGYgKTsKICAgICB9CiAKLSAgICBzaWxrX3F1YW50X0xUUF9nYWlucyggQl9RMTQsIGNia19p
bmRleCwgcGVyaW9kaWNpdHlfaW5kZXgsIHN1bV9sb2dfZ2Fpbl9RNywgV19RMTgsIG11X1ExMCwg
bG93Q29tcGxleGl0eSwgbmJfc3ViZnIsIGFyY2ggKTsKKyAgICBzaWxrX3F1YW50X0xUUF9nYWlu
cyggQl9RMTQsIGNia19pbmRleCwgcGVyaW9kaWNpdHlfaW5kZXgsIHN1bV9sb2dfZ2Fpbl9RNywg
JnByZWRfZ2Fpbl9kQl9RNywgWFhfUTE3LCB4WF9RMTcsIHN1YmZyX2xlbiwgbmJfc3ViZnIsIGFy
Y2ggKTsKIAogICAgIGZvciggaSA9IDA7IGkgPCBuYl9zdWJmciAqIExUUF9PUkRFUjsgaSsrICkg
ewogICAgICAgICBCWyBpIF0gPSAoc2lsa19mbG9hdClCX1ExNFsgaSBdICogKCAxLjBmIC8gMTYz
ODQuMGYgKTsKICAgICB9CisKKyAgICAqcHJlZF9nYWluX2RCID0gKHNpbGtfZmxvYXQpcHJlZF9n
YWluX2RCX1E3ICogKCAxLjBmIC8gMTI4LjBmICk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZ2Fpbl9x
dWFudC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2dhaW5fcXVhbnQuYwppbmRleCA2NGNjZDA2MTFiZmYzNjhjZjc5Zjk1MGRm
NWExNjdiYWE4ZDQxMGJkLi5lZTY1MjQ1YWEzNjcxMDVlZTFlMGRmYThiNWYyNjE5ZDhjMjIzODIw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZ2Fpbl9xdWFudC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9nYWluX3F1YW50LmMKQEAg
LTc2LDYgKzc2LDcgQEAgdm9pZCBzaWxrX2dhaW5zX3F1YW50KAogICAgICAgICAgICAgLyogQWNj
dW11bGF0ZSBkZWx0YXMgKi8KICAgICAgICAgICAgIGlmKCBpbmRbIGsgXSA+IGRvdWJsZV9zdGVw
X3NpemVfdGhyZXNob2xkICkgewogICAgICAgICAgICAgICAgICpwcmV2X2luZCArPSBzaWxrX0xT
SElGVCggaW5kWyBrIF0sIDEgKSAtIGRvdWJsZV9zdGVwX3NpemVfdGhyZXNob2xkOworICAgICAg
ICAgICAgICAgICpwcmV2X2luZCA9IHNpbGtfbWluX2ludCggKnByZXZfaW5kLCBOX0xFVkVMU19R
R0FJTiAtIDEgKTsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgKnByZXZf
aW5kICs9IGluZFsgayBdOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2luaXRfZGVj
b2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2luaXRfZGVjb2Rlci5jCmluZGV4IGY4ODdjNjc4ODZmYjU3YWNkNTRiMDNh
M2RjNTIxMGMzYjA5YmI0YjIuLjE2YzAzZGNkMWNhMWIzM2I0ODQwOTk5ZDhkYjZjN2Y1YjJiMTVl
YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9pbml0X2RlY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvaW5pdF9kZWNvZGVy
LmMKQEAgLTQ0LDYgKzQ0LDcgQEAgb3B1c19pbnQgc2lsa19pbml0X2RlY29kZXIoCiAgICAgLyog
VXNlZCB0byBkZWFjdGl2YXRlIExTRiBpbnRlcnBvbGF0aW9uICovCiAgICAgcHNEZWMtPmZpcnN0
X2ZyYW1lX2FmdGVyX3Jlc2V0ID0gMTsKICAgICBwc0RlYy0+cHJldl9nYWluX1ExNiA9IDY1NTM2
OworICAgIHBzRGVjLT5hcmNoID0gb3B1c19zZWxlY3RfYXJjaCgpOwogCiAgICAgLyogUmVzZXQg
Q05HIHN0YXRlICovCiAgICAgc2lsa19DTkdfUmVzZXQoIHBzRGVjICk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvbGluMmxvZy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2xpbjJsb2cuYwppbmRleCBkNGZlNTE1MzIxZjBkNWI3NmQ2ZDMx
NGNjZmY0ZDE2ZjkzZjkxODM4Li4wZDUxNTVhYTg2ZTRkNjc2MzBjNTQxZDY4ZmE3YTVlMWJmNDAw
YmNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvbGluMmxvZy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9saW4ybG9nLmMKQEAgLTQx
LDYgKzQxLDYgQEAgb3B1c19pbnQzMiBzaWxrX2xpbjJsb2coCiAgICAgc2lsa19DTFpfRlJBQygg
aW5MaW4sICZseiwgJmZyYWNfUTcgKTsKIAogICAgIC8qIFBpZWNlLXdpc2UgcGFyYWJvbGljIGFw
cHJveGltYXRpb24gKi8KLSAgICByZXR1cm4gc2lsa19MU0hJRlQoIDMxIC0gbHosIDcgKSArIHNp
bGtfU01MQVdCKCBmcmFjX1E3LCBzaWxrX01VTCggZnJhY19RNywgMTI4IC0gZnJhY19RNyApLCAx
NzkgKTsKKyAgICByZXR1cm4gc2lsa19BRERfTFNISUZUMzIoIHNpbGtfU01MQVdCKCBmcmFjX1E3
LCBzaWxrX01VTCggZnJhY19RNywgMTI4IC0gZnJhY19RNyApLCAxNzkgKSwgMzEgLSBseiwgNyAp
OwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWFjcm9zLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWFjcm9zLmgKaW5kZXggZDNj
YTM0NzUyMDA0NTA2YjZmZDZhZTRiZGQ4OGI3ODY0YWY2ODA3Mi4uM2M2N2I2ZTVkOTdjMzY2Zjk4
NDFlMmJhOWJkZWVmYmZiZmViMjBlYyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21hY3Jvcy5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9tYWNyb3MuaApAQCAtMzYsMTQgKzM2LDYgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAjaW5jbHVkZSAib3B1c19kZWZpbmVzLmgiCiAjaW5jbHVkZSAiYXJjaC5oIgogCi0jaWYgT1BV
U19HTlVDX1BSRVJFUSgzLCAwKQotI2RlZmluZSBvcHVzX2xpa2VseSh4KSAgICAgICAoX19idWls
dGluX2V4cGVjdCghISh4KSwgMSkpCi0jZGVmaW5lIG9wdXNfdW5saWtlbHkoeCkgICAgIChfX2J1
aWx0aW5fZXhwZWN0KCEhKHgpLCAwKSkKLSNlbHNlCi0jZGVmaW5lIG9wdXNfbGlrZWx5KHgpICAg
ICAgICghISh4KSkKLSNkZWZpbmUgb3B1c191bmxpa2VseSh4KSAgICAgKCEhKHgpKQotI2VuZGlm
Ci0KIC8qIFRoaXMgaXMgYW4gT1BVU19JTkxJTkUgaGVhZGVyIGZpbGUgZm9yIGdlbmVyYWwgcGxh
dGZvcm0uICovCiAKIC8qIChhMzIgKiAob3B1c19pbnQzMikoKG9wdXNfaW50MTYpKGIzMikpKSA+
PiAxNiBvdXRwdXQgaGF2ZSB0byBiZSAzMmJpdCBpbnQgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9tYWlu
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvbWFpbi5oCmluZGV4IDJmOTBkNjhmN2RhMGM3ZDRiMDliNzA2YWY3MDFhNjRlMjcy
YWY1MDcuLjFhMzNlZWQ1NDliNmEyMDg1ZDYxMjBkNTIxMGFlMWMyYmQ0YjI4YjYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9tYWluLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21haW4uaApAQCAtNDIsNiArNDIsMTAgQEAgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaW5jbHVkZSAieDg2L21haW5fc3NlLmgiCiAjZW5kaWYK
IAorI2lmIChkZWZpbmVkKE9QVVNfQVJNX0FTTSkgfHwgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFW
RV9ORU9OX0lOVFIpKQorI2luY2x1ZGUgImFybS9OU1FfZGVsX2RlY19hcm0uaCIKKyNlbmRpZgor
CiAvKiBDb252ZXJ0IExlZnQvUmlnaHQgc3RlcmVvIHNpZ25hbCB0byBhZGFwdGl2ZSBNaWQvU2lk
ZSByZXByZXNlbnRhdGlvbiAqLwogdm9pZCBzaWxrX3N0ZXJlb19MUl90b19NUygKICAgICBzdGVy
ZW9fZW5jX3N0YXRlICAgICAgICAgICAgKnN0YXRlLCAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJL08gIFN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KQEAg
LTEwOSwyMiArMTEzLDIyIEBAIHZvaWQgc2lsa19zdGVyZW9fZGVjb2RlX21pZF9vbmx5KAogCiAv
KiBFbmNvZGVzIHNpZ25zIG9mIGV4Y2l0YXRpb24gKi8KIHZvaWQgc2lsa19lbmNvZGVfc2lnbnMo
Ci0gICAgZWNfZW5jICAgICAgICAgICAgICAgICAgICAgICpwc1JhbmdlRW5jLCAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkvTyAgQ29tcHJlc3NvciBkYXRhIHN0cnVjdHVyZSAgICAgICAgICAg
ICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50OCAgICAgICAgICAgICBwdWxzZXNbXSwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIHB1bHNlIHNpZ25hbCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbGVu
Z3RoLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBsZW5ndGggb2YgaW5wdXQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAg
ICAgICAgIHNpZ25hbFR5cGUsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU2lnbmFs
IHR5cGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICBxdWFudE9mZnNldFR5cGUsICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIFF1YW50aXphdGlvbiBvZmZzZXQgdHlwZSAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgc3VtX3B1bHNlc1sgTUFYX05CX1NIRUxMX0JMT0NL
UyBdICAgLyogSSAgICBTdW0gb2YgYWJzb2x1dGUgcHVsc2VzIHBlciBibG9jayAgICAgICAgICAg
ICovCisgICAgZWNfZW5jICAgICAgICAgICAgICAgICAgICAgICpwc1JhbmdlRW5jLCAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkvTyAgQ29tcHJlc3NvciBkYXRhIHN0cnVjdHVyZSAgICAgICAg
ICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQ4ICAgICAgICAgICAgIHB1bHNlc1tdLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgcHVsc2Ugc2lnbmFsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0aCwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbGVuZ3RoIG9mIGlucHV0ICAgICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHNp
Z25hbFR5cGUsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU2lnbmFsIHR5cGUgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICAgIHF1YW50T2Zmc2V0VHlwZSwgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUXVhbnRpemF0
aW9uIG9mZnNldCB0eXBlICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICAgIHN1bV9wdWxzZXNbIE1BWF9OQl9TSEVMTF9CTE9DS1MgXSAgIC8qIEkgICAgU3Vt
IG9mIGFic29sdXRlIHB1bHNlcyBwZXIgYmxvY2sgICAgICAgICovCiApOwogCiAvKiBEZWNvZGVz
IHNpZ25zIG9mIGV4Y2l0YXRpb24gKi8KIHZvaWQgc2lsa19kZWNvZGVfc2lnbnMoCi0gICAgZWNf
ZGVjICAgICAgICAgICAgICAgICAgICAgICpwc1JhbmdlRGVjLCAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgQ29tcHJlc3NvciBkYXRhIHN0cnVjdHVyZSAgICAgICAgICAgICAgICAgICAq
LwotICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICBwdWxzZXNbXSwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJL08gIHB1bHNlIHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbGVuZ3RoLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBsZW5ndGggb2YgaW5wdXQgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHNp
Z25hbFR5cGUsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU2lnbmFsIHR5cGUgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICBxdWFudE9mZnNldFR5cGUsICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFF1YW50
aXphdGlvbiBvZmZzZXQgdHlwZSAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVz
X2ludCAgICAgICAgICAgICAgc3VtX3B1bHNlc1sgTUFYX05CX1NIRUxMX0JMT0NLUyBdICAgLyog
SSAgICBTdW0gb2YgYWJzb2x1dGUgcHVsc2VzIHBlciBibG9jayAgICAgICAgICAgICovCisgICAg
ZWNfZGVjICAgICAgICAgICAgICAgICAgICAgICpwc1JhbmdlRGVjLCAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkvTyAgQ29tcHJlc3NvciBkYXRhIHN0cnVjdHVyZSAgICAgICAgICAgICAgICov
CisgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkvTyAgcHVsc2Ugc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbGVuZ3RoIG9mIGlucHV0ICAgICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHNpZ25hbFR5cGUs
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU2lnbmFsIHR5cGUgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHF1YW50
T2Zmc2V0VHlwZSwgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUXVhbnRpemF0aW9uIG9mZnNl
dCB0eXBlICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAg
IHN1bV9wdWxzZXNbIE1BWF9OQl9TSEVMTF9CTE9DS1MgXSAgIC8qIEkgICAgU3VtIG9mIGFic29s
dXRlIHB1bHNlcyBwZXIgYmxvY2sgICAgICAgICovCiApOwogCiAvKiBDaGVjayBlbmNvZGVyIGNv
bnRyb2wgc3RydWN0ICovCkBAIC0yMDUsMzcgKzIwOSwzNyBAQCB2b2lkIHNpbGtfaW50ZXJwb2xh
dGUoCiAKIC8qIExUUCB0YXAgcXVhbnRpemVyICovCiB2b2lkIHNpbGtfcXVhbnRfTFRQX2dhaW5z
KAotICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICBCX1ExNFsgTUFYX05CX1NVQkZSICog
TFRQX09SREVSIF0sICAgICAgICAgIC8qIEkvTyAgKHVuKXF1YW50aXplZCBMVFAgZ2FpbnMgICAg
ICAgICAqLworICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICBCX1ExNFsgTUFYX05CX1NV
QkZSICogTFRQX09SREVSIF0sICAgICAgICAgIC8qIE8gICAgUXVhbnRpemVkIExUUCBnYWlucyAg
ICAgICAgICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICBjYmtfaW5kZXhb
IE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgIC8qIE8gICAgQ29kZWJvb2sgSW5kZXgg
ICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICAqcGVy
aW9kaWNpdHlfaW5kZXgsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUGVyaW9kaWNp
dHkgSW5kZXggICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAg
ICAqc3VtX2dhaW5fZEJfUTcsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgQ3Vt
dWxhdGl2ZSBtYXggcHJlZGljdGlvbiBnYWluICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAg
ICAgICAgICBXX1ExOFsgTUFYX05CX1NVQkZSKkxUUF9PUkRFUipMVFBfT1JERVIgXSwgIC8qIEkg
ICAgRXJyb3IgV2VpZ2h0cyBpbiBRMTggICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgICBtdV9ROSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgTXUgdmFsdWUgKFIvRCB0cmFkZW9mZikgICAgICAgICAqLwotICAgIG9wdXNfaW50
ICAgICAgICAgICAgICAgICAgICBsb3dDb21wbGV4aXR5LCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgRmxhZyBmb3IgbG93IGNvbXBsZXhpdHkgICAgICAgICAqLwotICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAqLwor
ICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAqcHJlZF9nYWluX2RCX1E3LCAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIHByZWRpY3Rpb24gZ2FpbiAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBYWF9RMTdbIE1BWF9OQl9TVUJG
UipMVFBfT1JERVIqTFRQX09SREVSIF0sIC8qIEkgICAgQ29ycmVsYXRpb24gbWF0cml4IGluIFEx
OCAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4WF9RMTdbIE1BWF9O
Ql9TVUJGUipMVFBfT1JERVIgXSwgICAgICAgICAgIC8qIEkgICAgQ29ycmVsYXRpb24gdmVjdG9y
IGluIFExOCAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzdWJmcl9s
ZW4sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNh
bXBsZXMgcGVyIHN1YmZyYW1lICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBu
Yl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVy
IG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAqLwogICAgIGludCAgICAgICAgICAgICAgICAgICAg
ICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
UnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAqLwogKTsKIAogLyogRW50cm9weSBjb25z
dHJhaW5lZCBtYXRyaXgtd2VpZ2h0ZWQgVlEsIGZvciBhIHNpbmdsZSBpbnB1dCBkYXRhIHZlY3Rv
ciAqLwogdm9pZCBzaWxrX1ZRX1dNYXRfRUNfYygKICAgICBvcHVzX2ludDggICAgICAgICAgICAg
ICAgICAgKmluZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIGluZGV4IG9mIGJl
c3QgY29kZWJvb2sgdmVjdG9yICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAg
ICAgICAgICAgICAgKnJhdGVfZGlzdF9RMTQsICAgICAgICAgICAgICAgICAvKiBPICAgIGJlc3Qg
d2VpZ2h0ZWQgcXVhbnQgZXJyb3IgKyBtdSAqIHJhdGUgICAgICAgKi8KKyAgICBvcHVzX2ludDMy
ICAgICAgICAgICAgICAgICAgKnJlc19ucmdfUTE1LCAgICAgICAgICAgICAgICAgICAvKiBPICAg
IGJlc3QgcmVzaWR1YWwgZW5lcmd5ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVz
X2ludDMyICAgICAgICAgICAgICAgICAgKnJhdGVfZGlzdF9ROCwgICAgICAgICAgICAgICAgICAv
KiBPICAgIGJlc3QgdG90YWwgYml0cmF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAg
ICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgKmdhaW5fUTcsICAgICAgICAgICAgICAgICAg
ICAgICAvKiBPICAgIHN1bSBvZiBhYnNvbHV0ZSBMVFAgY29lZmZpY2llbnRzICAgICAgICAgICAg
Ki8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmluX1ExNCwgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIGlucHV0IHZlY3RvciB0byBiZSBxdWFudGl6ZWQgICAgICAgICAg
ICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKldfUTE4LCAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIHdlaWdodGluZyBtYXRyaXggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKlhYX1ExNywg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIGNvcnJlbGF0aW9uIG1hdHJpeCAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKnhY
X1ExNywgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIGNvcnJlbGF0aW9uIHZlY3RvciAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDggICAgICAgICAg
ICAgKmNiX1E3LCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIGNvZGVib29rICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX3VpbnQ4ICAg
ICAgICAgICAgKmNiX2dhaW5fUTcsICAgICAgICAgICAgICAgICAgICAvKiBJICAgIGNvZGVib29r
IGVmZmVjdGl2ZSBnYWluICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX3Vp
bnQ4ICAgICAgICAgICAgKmNsX1E1LCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIGNv
ZGUgbGVuZ3RoIGZvciBlYWNoIGNvZGVib29rIHZlY3RvciAgICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgbXVfUTksICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIHRyYWRlb2ZmIGJldHcuIHdlaWdodGVkIGVycm9yIGFuZCByYXRlICAgICAgKi8KKyAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgc3ViZnJfbGVuLCAgICAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIG51bWJlciBvZiBzYW1wbGVzIHBlciBzdWJmcmFtZSAgICAgICAgICAgICAgKi8K
ICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgbWF4X2dhaW5fUTcsICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIG1heGltdW0gc3VtIG9mIGFic29sdXRlIExUUCBjb2VmZmljaWVudHMg
ICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgTCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiB2ZWN0b3JzIGluIGNvZGVib29rICAgICAg
ICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgTCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiB2ZWN0b3JzIGluIGNvZGVib29r
ICAgICAgICAgICAgICAgKi8KICk7CiAKICNpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX1ZRX1dN
YXRfRUMpCi0jZGVmaW5lIHNpbGtfVlFfV01hdF9FQyhpbmQsIHJhdGVfZGlzdF9RMTQsIGdhaW5f
UTcsIGluX1ExNCwgV19RMTgsIGNiX1E3LCBjYl9nYWluX1E3LCBjbF9RNSwgXAotICAgICAgICAg
ICAgICAgICAgICAgICAgICBtdV9ROSwgbWF4X2dhaW5fUTcsIEwsIGFyY2gpIFwKLSAgICAoKHZv
aWQpKGFyY2gpLHNpbGtfVlFfV01hdF9FQ19jKGluZCwgcmF0ZV9kaXN0X1ExNCwgZ2Fpbl9RNywg
aW5fUTE0LCBXX1ExOCwgY2JfUTcsIGNiX2dhaW5fUTcsIGNsX1E1LCBcCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgIG11X1E5LCBtYXhfZ2Fpbl9RNywgTCkpCisjZGVmaW5lIHNpbGtfVlFfV01h
dF9FQyhpbmQsIHJlc19ucmdfUTE1LCByYXRlX2Rpc3RfUTgsIGdhaW5fUTcsIFhYX1ExNywgeFhf
UTE3LCBjYl9RNywgY2JfZ2Fpbl9RNywgY2xfUTUsIHN1YmZyX2xlbiwgbWF4X2dhaW5fUTcsIEws
IGFyY2gpIFwKKyAgICAoKHZvaWQpKGFyY2gpLHNpbGtfVlFfV01hdF9FQ19jKGluZCwgcmVzX25y
Z19RMTUsIHJhdGVfZGlzdF9ROCwgZ2Fpbl9RNywgWFhfUTE3LCB4WF9RMTcsIGNiX1E3LCBjYl9n
YWluX1E3LCBjbF9RNSwgc3ViZnJfbGVuLCBtYXhfZ2Fpbl9RNywgTCkpCiAjZW5kaWYKIAogLyoq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KQEAgLTI0MywxNCArMjQ3LDE0IEBA
IHZvaWQgc2lsa19WUV9XTWF0X0VDX2MoCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwogCiB2b2lkIHNpbGtfTlNRX2MoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRl
ICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBF
bmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVy
X3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3Rh
dGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUlu
Zm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCi0gICAg
Y29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICov
CisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIHgxNltdLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBRdWFudGl6ZWQgcHVsc2Ugc2lnbmFs
ICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIFByZWRDb2VmX1Ex
MlsgMiAqIE1BWF9MUENfT1JERVIgXSwgICAgICAgICAgLyogSSAgICBTaG9ydCB0ZXJtIHByZWRp
Y3Rpb24gY29lZnMgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIExUUENv
ZWZfUTE0WyBMVFBfT1JERVIgKiBNQVhfTkJfU1VCRlIgXSwgICAgLyogSSAgICBMb25nIHRlcm0g
cHJlZGljdGlvbiBjb2VmcyAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAg
IEFSMl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSBOb2lz
ZSBzaGFwaW5nIGNvZWZzICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgIEFSX1ExM1sgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAvKiBJ
ICBOb2lzZSBzaGFwaW5nIGNvZWZzICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQg
ICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5fUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAg
LyogSSAgICBMb25nIHRlcm0gc2hhcGluZyBjb2VmcyAgICAgICAgICovCiAgICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgIFRpbHRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBTcGVjdHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29u
c3Qgb3B1c19pbnQzMiAgICAgICAgICAgIExGX3NocF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAg
ICAgICAgICAgICAgLyogSSAgICBMb3cgZnJlcXVlbmN5IHNoYXBpbmcgY29lZnMgICAgICovCkBA
IC0yNjEsMjIgKzI2NSwyMiBAQCB2b2lkIHNpbGtfTlNRX2MoCiApOwogCiAjaWYgIWRlZmluZWQo
T1ZFUlJJREVfc2lsa19OU1EpCi0jZGVmaW5lIHNpbGtfTlNRKHBzRW5jQywgTlNRLCBwc0luZGlj
ZXMsIHhfUTMsIHB1bHNlcywgUHJlZENvZWZfUTEyLCBMVFBDb2VmX1ExNCwgQVIyX1ExMywgXAor
I2RlZmluZSBzaWxrX05TUShwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJl
ZENvZWZfUTEyLCBMVFBDb2VmX1ExNCwgQVJfUTEzLCBcCiAgICAgICAgICAgICAgICAgICAgSGFy
bVNoYXBlR2Fpbl9RMTQsIFRpbHRfUTE0LCBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBpdGNoTCwg
TGFtYmRhX1ExMCwgTFRQX3NjYWxlX1ExNCwgYXJjaCkgXAotICAgICgodm9pZCkoYXJjaCksc2ls
a19OU1FfYyhwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4X1EzLCBwdWxzZXMsIFByZWRDb2VmX1Ex
MiwgTFRQQ29lZl9RMTQsIEFSMl9RMTMsIFwKKyAgICAoKHZvaWQpKGFyY2gpLHNpbGtfTlNRX2Mo
cHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQQ29l
Zl9RMTQsIEFSX1ExMywgXAogICAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5fUTE0LCBU
aWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIExhbWJkYV9RMTAsIExUUF9z
Y2FsZV9RMTQpKQogI2VuZGlmCiAKIC8qIE5vaXNlIHNoYXBpbmcgdXNpbmcgZGVsYXllZCBkZWNp
c2lvbiAqLwogdm9pZCBzaWxrX05TUV9kZWxfZGVjX2MoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVy
X3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19l
bmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19u
c3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAg
U2lkZUluZm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICov
Ci0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAg
ICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIHgxNltdLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgIHB1bHNlc1tdLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBRdWFudGl6ZWQgcHVsc2Ug
c2lnbmFsICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIFByZWRD
b2VmX1ExMlsgMiAqIE1BWF9MUENfT1JERVIgXSwgICAgICAgICAgLyogSSAgICBTaG9ydCB0ZXJt
IHByZWRpY3Rpb24gY29lZnMgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAg
IExUUENvZWZfUTE0WyBMVFBfT1JERVIgKiBNQVhfTkJfU1VCRlIgXSwgICAgLyogSSAgICBMb25n
IHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgIEFSMl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyog
SSBOb2lzZSBzaGFwaW5nIGNvZWZzICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQx
NiAgICAgICAgICAgIEFSX1ExM1sgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBd
LCAvKiBJICBOb2lzZSBzaGFwaW5nIGNvZWZzICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5fUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAg
ICAgICAgLyogSSAgICBMb25nIHRlcm0gc2hhcGluZyBjb2VmcyAgICAgICAgICovCiAgICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgIFRpbHRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBTcGVjdHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICovCiAg
ICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIExGX3NocF9RMTRbIE1BWF9OQl9TVUJGUiBd
LCAgICAgICAgICAgICAgICAgLyogSSAgICBMb3cgZnJlcXVlbmN5IHNoYXBpbmcgY29lZnMgICAg
ICovCkBAIC0yODcsOSArMjkxLDkgQEAgdm9pZCBzaWxrX05TUV9kZWxfZGVjX2MoCiApOwogCiAj
aWYgIWRlZmluZWQoT1ZFUlJJREVfc2lsa19OU1FfZGVsX2RlYykKLSNkZWZpbmUgc2lsa19OU1Ff
ZGVsX2RlYyhwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4X1EzLCBwdWxzZXMsIFByZWRDb2VmX1Ex
MiwgTFRQQ29lZl9RMTQsIEFSMl9RMTMsIFwKKyNkZWZpbmUgc2lsa19OU1FfZGVsX2RlYyhwc0Vu
Y0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEyLCBMVFBDb2VmX1Ex
NCwgQVJfUTEzLCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1Ex
NCwgVGlsdF9RMTQsIExGX3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCBM
VFBfc2NhbGVfUTE0LCBhcmNoKSBcCi0gICAgKCh2b2lkKShhcmNoKSxzaWxrX05TUV9kZWxfZGVj
X2MocHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeF9RMywgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExU
UENvZWZfUTE0LCBBUjJfUTEzLCBcCisgICAgKCh2b2lkKShhcmNoKSxzaWxrX05TUV9kZWxfZGVj
X2MocHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQ
Q29lZl9RMTQsIEFSX1ExMywgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgSGFybVNoYXBl
R2Fpbl9RMTQsIFRpbHRfUTE0LCBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBpdGNoTCwgTGFtYmRh
X1ExMCwgTFRQX3NjYWxlX1ExNCkpCiAjZW5kaWYKIApAQCAtMzQ2LDYgKzM1MCw3IEBAIHZvaWQg
c2lsa19OTFNGX1ZRKAogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBlcnJfUTI2W10s
ICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRpemF0aW9uIGVycm9ycyBbS10gICAg
ICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBpbl9R
MTVbXSwgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgdmVjdG9ycyB0byBiZSBx
dWFudGl6ZWQgW0xQQ19vcmRlcl0gICAqLwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICAg
ICBwQ0JfUThbXSwgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29kZWJvb2sgdmVjdG9y
cyBbSypMUENfb3JkZXJdICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAg
ICAgICAgICBwV2dodF9ROVtdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29kZWJvb2sg
d2VpZ2h0cyBbSypMUENfb3JkZXJdICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgICBLLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVt
YmVyIG9mIGNvZGVib29rIHZlY3RvcnMgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9w
dXNfaW50ICAgICAgICAgICAgICBMUENfb3JkZXIgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgTnVtYmVyIG9mIExQQ3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9taXBzL05TUV9kZWxfZGVjX21pcHNyMS5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21pcHMvTlNRX2Rl
bF9kZWNfbWlwc3IxLmgKaW5kZXggYWQxY2ZlMmE5YjA4NDEwMTI3MDFiMWZlNzdkN2RhMmYwNDRk
MGIyNi4uY2Q3MDcxM2E4ZjVkOTQ1M2VjNjJkNzc4NmJjMzBhOTBhYmRkYzQwOSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL21pcHMvTlNRX2RlbF9kZWNfbWlwc3IxLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21pcHMvTlNRX2RlbF9k
ZWNfbWlwc3IxLmgKQEAgLTYxLDcgKzYxLDcgQEAgc3RhdGljIGlubGluZSB2b2lkIHNpbGtfbm9p
c2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWMoCiAgICAgb3B1c19pbnQgICAgICAgICAgICBwcmVk
aWN0TFBDT3JkZXIsICAgICAgICAvKiBJICAgIFByZWRpY3Rpb24gZmlsdGVyIG9yZGVyICAgICAg
ICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICB3YXJwaW5nX1ExNiwgICAgICAgICAg
ICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1
c19pbnQgICAgICAgICAgICBuU3RhdGVzRGVsYXllZERlY2lzaW9uLCAvKiBJICAgIE51bWJlciBv
ZiBzdGF0ZXMgaW4gZGVjaXNpb24gdHJlZSAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAq
c21wbF9idWZfaWR4LCAgICAgICAgICAvKiBJICAgIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGlu
IGJ1ZmZlcnMgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9idWZfaWR4LCAgICAg
ICAgICAvKiBJL08gIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZlcnMgICovCiAgICAg
b3B1c19pbnQgICAgICAgICAgICBkZWNpc2lvbkRlbGF5LCAgICAgICAgICAvKiBJICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgaW50ICAgICAgICAgICAgICAg
ICBhcmNoICAgICAgICAgICAgICAgICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCiApCkBAIC0zMjMsOCArMzIzLDkgQEAgc3RhdGljIGlubGluZSB2b2lk
IHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWMoCiAgICAgICAgICAgICBwc1NTWyAx
IF0ueHFfUTE0ICAgICAgID0geHFfUTE0OwogICAgICAgICB9CiAKLSAgICAgICAgKnNtcGxfYnVm
X2lkeCAgPSAoICpzbXBsX2J1Zl9pZHggLSAxICkgJiBERUNJU0lPTl9ERUxBWV9NQVNLOyAgICAg
ICAgICAgICAgICAgICAvKiBJbmRleCB0byBuZXdlc3Qgc2FtcGxlcyAgICAgICAgICAgICAgKi8K
LSAgICAgICAgbGFzdF9zbXBsZV9pZHggPSAoICpzbXBsX2J1Zl9pZHggKyBkZWNpc2lvbkRlbGF5
ICkgJiBERUNJU0lPTl9ERUxBWV9NQVNLOyAgICAgICAvKiBJbmRleCB0byBkZWNpc2lvbkRlbGF5
IG9sZCBzYW1wbGVzICAgKi8KKyAgICAgICAgKnNtcGxfYnVmX2lkeCAgPSAoICpzbXBsX2J1Zl9p
ZHggLSAxICkgJSBERUNJU0lPTl9ERUxBWTsKKyAgICAgICAgaWYoICpzbXBsX2J1Zl9pZHggPCAw
ICkgKnNtcGxfYnVmX2lkeCArPSBERUNJU0lPTl9ERUxBWTsKKyAgICAgICAgbGFzdF9zbXBsZV9p
ZHggPSAoICpzbXBsX2J1Zl9pZHggKyBkZWNpc2lvbkRlbGF5ICkgJSBERUNJU0lPTl9ERUxBWTsK
IAogICAgICAgICAvKiBGaW5kIHdpbm5lciAqLwogICAgICAgICBSRG1pbl9RMTAgPSBwc1NhbXBs
ZVN0YXRlWyAwIF1bIDAgXS5SRF9RMTA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWlwcy9zaWdwcm9jX2Zp
eF9taXBzcjEuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9taXBzL3NpZ3Byb2NfZml4X21pcHNyMS5oCmluZGV4IDNiMGE2OTUz
NjU2ZDk3MzE4ZjNhYTgzZWJiYTlmMjA4YmUxYmQ4OGIuLjUxNTIwYzBhNmZkNTUwY2I4NzI5MDYy
NDRlNmFmYzFjMGNjMTM4YWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9taXBzL3NpZ3Byb2NfZml4X21pcHNy
MS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9taXBzL3NpZ3Byb2NfZml4X21pcHNyMS5oCkBAIC0yOCwxMSArMjgsNiBA
QCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICNpZm5kZWYgU0lMS19TSUdQUk9DX0ZJWF9N
SVBTUjFfSAogI2RlZmluZSBTSUxLX1NJR1BST0NfRklYX01JUFNSMV9ICiAKLSNpZmRlZiAgX19j
cGx1c3BsdXMKLWV4dGVybiAiQyIKLXsKLSNlbmRpZgotCiAjdW5kZWYgc2lsa19TQVQxNgogc3Rh
dGljIGlubGluZSBzaG9ydCBpbnQgc2lsa19TQVQxNihpbnQgYSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9wcm9jZXNzX05MU0ZzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvcHJvY2Vzc19OTFNGcy5jCmluZGV4IDBhYjcxZjAxNjM0
MDdmODU0YmM0MmYwNmE1OTAwZTZiMWFiZTI5MzcuLjJmMTBmOGRmNWIzZDcwZTU4MjNmZTJkYjU1
YjViMTE3NGIyNmFmYmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9wcm9jZXNzX05MU0ZzLmMKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L3Byb2Nlc3NfTkxTRnMuYwpAQCAtODksNyArODksNyBAQCB2b2lkIHNpbGtfcHJvY2Vzc19OTFNG
cygKICAgICAgICAgTkxTRl9tdV9RMjAsIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9ycywgcHNF
bmNDLT5pbmRpY2VzLnNpZ25hbFR5cGUgKTsKIAogICAgIC8qIENvbnZlcnQgcXVhbnRpemVkIE5M
U0ZzIGJhY2sgdG8gTFBDIGNvZWZmaWNpZW50cyAqLwotICAgIHNpbGtfTkxTRjJBKCBQcmVkQ29l
Zl9RMTJbIDEgXSwgcE5MU0ZfUTE1LCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciApOworICAgIHNp
bGtfTkxTRjJBKCBQcmVkQ29lZl9RMTJbIDEgXSwgcE5MU0ZfUTE1LCBwc0VuY0MtPnByZWRpY3RM
UENPcmRlciwgcHNFbmNDLT5hcmNoICk7CiAKICAgICBpZiggZG9JbnRlcnBvbGF0ZSApIHsKICAg
ICAgICAgLyogQ2FsY3VsYXRlIHRoZSBpbnRlcnBvbGF0ZWQsIHF1YW50aXplZCBMU0YgdmVjdG9y
IGZvciB0aGUgZmlyc3QgaGFsZiAqLwpAQCAtOTcsNyArOTcsNyBAQCB2b2lkIHNpbGtfcHJvY2Vz
c19OTFNGcygKICAgICAgICAgICAgIHBzRW5jQy0+aW5kaWNlcy5OTFNGSW50ZXJwQ29lZl9RMiwg
cHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIgKTsKIAogICAgICAgICAvKiBDb252ZXJ0IGJhY2sgdG8g
TFBDIGNvZWZmaWNpZW50cyAqLwotICAgICAgICBzaWxrX05MU0YyQSggUHJlZENvZWZfUTEyWyAw
IF0sIHBOTFNGMF90ZW1wX1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIgKTsKKyAgICAgICAg
c2lsa19OTFNGMkEoIFByZWRDb2VmX1ExMlsgMCBdLCBwTkxTRjBfdGVtcF9RMTUsIHBzRW5jQy0+
cHJlZGljdExQQ09yZGVyLCBwc0VuY0MtPmFyY2ggKTsKIAogICAgIH0gZWxzZSB7CiAgICAgICAg
IC8qIENvcHkgTFBDIGNvZWZmaWNpZW50cyBmb3IgZmlyc3QgaGFsZiBmcm9tIHNlY29uZCBoYWxm
ICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvcXVhbnRfTFRQX2dhaW5zLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvcXVhbnRfTFRQX2dh
aW5zLmMKaW5kZXggNTEzYThjNDQ2OGZmYzRjODdhNzQxNDYwMDY1ZjYzZWJlNjc3NTJhNi4uZDZi
OGVmZjhkMTg2NGNjZmEyMWEyNmE2YmM1OTdlYmMyZGJjZWRiMyAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3F1
YW50X0xUUF9nYWlucy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9xdWFudF9MVFBfZ2FpbnMuYwpAQCAtMzMsMTQgKzMz
LDE1IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgInR1bmluZ19wYXJh
bWV0ZXJzLmgiCiAKIHZvaWQgc2lsa19xdWFudF9MVFBfZ2FpbnMoCi0gICAgb3B1c19pbnQxNiAg
ICAgICAgICAgICAgICAgIEJfUTE0WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgICAg
ICAgLyogSS9PICAodW4pcXVhbnRpemVkIExUUCBnYWlucyAgICAgICAgICovCisgICAgb3B1c19p
bnQxNiAgICAgICAgICAgICAgICAgIEJfUTE0WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwg
ICAgICAgICAgLyogTyAgICBRdWFudGl6ZWQgTFRQIGdhaW5zICAgICAgICAgICAgICovCiAgICAg
b3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgIGNia19pbmRleFsgTUFYX05CX1NVQkZSIF0sICAg
ICAgICAgICAgICAgICAgLyogTyAgICBDb2RlYm9vayBJbmRleCAgICAgICAgICAgICAgICAgICov
CiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgICpwZXJpb2RpY2l0eV9pbmRleCwgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBQZXJpb2RpY2l0eSBJbmRleCAgICAgICAgICAg
ICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpzdW1fbG9nX2dhaW5fUTcs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBDdW11bGF0aXZlIG1heCBwcmVkaWN0
aW9uIGdhaW4gICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIFdfUTE4WyBNQVhf
TkJfU1VCRlIqTFRQX09SREVSKkxUUF9PUkRFUiBdLCAgLyogSSAgICBFcnJvciBXZWlnaHRzIGlu
IFExOCAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIG11X1E5
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBNdSB2YWx1ZSAo
Ui9EIHRyYWRlb2ZmKSAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAg
IGxvd0NvbXBsZXhpdHksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBGbGFn
IGZvciBsb3cgY29tcGxleGl0eSAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAg
ICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBudW1iZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICAgICpwcmVkX2dhaW5fZEJfUTcsICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogTyAgICBMVFAgcHJlZGljdGlvbiBnYWluICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQzMiAgICAgICAgICAgIFhYX1ExN1sgTUFYX05CX1NVQkZSKkxUUF9PUkRFUipMVFBfT1JE
RVIgXSwgLyogSSAgICBDb3JyZWxhdGlvbiBtYXRyaXggaW4gUTE4ICAgICAgICovCisgICAgY29u
c3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhYX1ExN1sgTUFYX05CX1NVQkZSKkxUUF9PUkRFUiBd
LCAgICAgICAgICAgLyogSSAgICBDb3JyZWxhdGlvbiB2ZWN0b3IgaW4gUTE4ICAgICAgICovCisg
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHN1YmZyX2xlbiwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3ViZnJhbWUg
ICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc3ViZnJhbWVzICAgICAg
ICAgICAgICovCiAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2ggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1
cmUgICAgICAgICAgICovCiApCiB7CkBAIC00OSwxNiArNTAsMTYgQEAgdm9pZCBzaWxrX3F1YW50
X0xUUF9nYWlucygKICAgICBjb25zdCBvcHVzX3VpbnQ4ICAgICAqY2xfcHRyX1E1OwogICAgIGNv
bnN0IG9wdXNfaW50OCAgICAgICpjYmtfcHRyX1E3OwogICAgIGNvbnN0IG9wdXNfdWludDggICAg
ICpjYmtfZ2Fpbl9wdHJfUTc7Ci0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgKmJfUTE0X3B0cjsK
LSAgICBjb25zdCBvcHVzX2ludDMyICAgICAqV19RMThfcHRyOwotICAgIG9wdXNfaW50MzIgICAg
ICAgICAgIHJhdGVfZGlzdF9RMTRfc3ViZnIsIHJhdGVfZGlzdF9RMTQsIG1pbl9yYXRlX2Rpc3Rf
UTE0OwotICAgIG9wdXNfaW50MzIgICAgICAgICAgIHN1bV9sb2dfZ2Fpbl90bXBfUTcsIGJlc3Rf
c3VtX2xvZ19nYWluX1E3LCBtYXhfZ2Fpbl9RNywgZ2Fpbl9RNzsKKyAgICBjb25zdCBvcHVzX2lu
dDMyICAgICAqWFhfUTE3X3B0ciwgKnhYX1ExN19wdHI7CisgICAgb3B1c19pbnQzMiAgICAgICAg
ICAgcmVzX25yZ19RMTVfc3ViZnIsIHJlc19ucmdfUTE1LCByYXRlX2Rpc3RfUTdfc3ViZnIsIHJh
dGVfZGlzdF9RNywgbWluX3JhdGVfZGlzdF9RNzsKKyAgICBvcHVzX2ludDMyICAgICAgICAgICBz
dW1fbG9nX2dhaW5fdG1wX1E3LCBiZXN0X3N1bV9sb2dfZ2Fpbl9RNywgbWF4X2dhaW5fUTc7Cisg
ICAgb3B1c19pbnQgICAgICAgICAgICAgZ2Fpbl9RNzsKIAogICAgIC8qKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgLyogaXRlcmF0ZSBvdmVy
IGRpZmZlcmVudCBjb2RlYm9va3Mgd2l0aCBkaWZmZXJlbnQgKi8KICAgICAvKiByYXRlcy9kaXN0
b3J0aW9ucywgYW5kIGNob29zZSBiZXN0ICovCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICBtaW5fcmF0ZV9kaXN0X1ExNCA9IHNp
bGtfaW50MzJfTUFYOworICAgIG1pbl9yYXRlX2Rpc3RfUTcgPSBzaWxrX2ludDMyX01BWDsKICAg
ICBiZXN0X3N1bV9sb2dfZ2Fpbl9RNyA9IDA7CiAgICAgZm9yKCBrID0gMDsgayA8IDM7IGsrKyAp
IHsKICAgICAgICAgLyogU2FmZXR5IG1hcmdpbiBmb3IgcGl0Y2ggZ2FpbiBjb250cm9sLCB0byB0
YWtlIGludG8gYWNjb3VudCBmYWN0b3JzCkBAIC03MCw1MyArNzEsNDcgQEAgdm9pZCBzaWxrX3F1
YW50X0xUUF9nYWlucygKICAgICAgICAgY2JrX2dhaW5fcHRyX1E3ID0gc2lsa19MVFBfdnFfZ2Fp
bl9wdHJzX1E3WyBrIF07CiAgICAgICAgIGNia19zaXplICAgPSBzaWxrX0xUUF92cV9zaXplc1sg
ICAgICAgICAgayBdOwogCi0gICAgICAgIC8qIFNldCB1cCBwb2ludGVyIHRvIGZpcnN0IHN1YmZy
YW1lICovCi0gICAgICAgIFdfUTE4X3B0ciA9IFdfUTE4OwotICAgICAgICBiX1ExNF9wdHIgPSBC
X1ExNDsKKyAgICAgICAgLyogU2V0IHVwIHBvaW50ZXJzIHRvIGZpcnN0IHN1YmZyYW1lICovCisg
ICAgICAgIFhYX1ExN19wdHIgPSBYWF9RMTc7CisgICAgICAgIHhYX1ExN19wdHIgPSB4WF9RMTc7
CiAKLSAgICAgICAgcmF0ZV9kaXN0X1ExNCA9IDA7CisgICAgICAgIHJlc19ucmdfUTE1ID0gMDsK
KyAgICAgICAgcmF0ZV9kaXN0X1E3ID0gMDsKICAgICAgICAgc3VtX2xvZ19nYWluX3RtcF9RNyA9
ICpzdW1fbG9nX2dhaW5fUTc7CiAgICAgICAgIGZvciggaiA9IDA7IGogPCBuYl9zdWJmcjsgaisr
ICkgewogICAgICAgICAgICAgbWF4X2dhaW5fUTcgPSBzaWxrX2xvZzJsaW4oICggU0lMS19GSVhf
Q09OU1QoIE1BWF9TVU1fTE9HX0dBSU5fREIgLyA2LjAsIDcgKSAtIHN1bV9sb2dfZ2Fpbl90bXBf
UTcgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgU0lMS19GSVhf
Q09OU1QoIDcsIDcgKSApIC0gZ2Fpbl9zYWZldHk7Ci0KICAgICAgICAgICAgIHNpbGtfVlFfV01h
dF9FQygKICAgICAgICAgICAgICAgICAmdGVtcF9pZHhbIGogXSwgICAgICAgICAvKiBPICAgIGlu
ZGV4IG9mIGJlc3QgY29kZWJvb2sgdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
LSAgICAgICAgICAgICAgICAmcmF0ZV9kaXN0X1ExNF9zdWJmciwgICAvKiBPICAgIGJlc3Qgd2Vp
Z2h0ZWQgcXVhbnRpemF0aW9uIGVycm9yICsgbXUgKiByYXRlICAgICAgICAgICAgKi8KKyAgICAg
ICAgICAgICAgICAmcmVzX25yZ19RMTVfc3ViZnIsICAgICAvKiBPICAgIHJlc2lkdWFsIGVuZXJn
eSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICAg
ICAgICAmcmF0ZV9kaXN0X1E3X3N1YmZyLCAgICAvKiBPICAgIGJlc3Qgd2VpZ2h0ZWQgcXVhbnRp
emF0aW9uIGVycm9yICsgbXUgKiByYXRlICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICAm
Z2Fpbl9RNywgICAgICAgICAgICAgICAvKiBPICAgIHN1bSBvZiBhYnNvbHV0ZSBMVFAgY29lZmZp
Y2llbnRzICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgICAgICBiX1ExNF9w
dHIsICAgICAgICAgICAgICAvKiBJICAgIGlucHV0IHZlY3RvciB0byBiZSBxdWFudGl6ZWQgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgICAgICBXX1ExOF9wdHIsICAg
ICAgICAgICAgICAvKiBJICAgIHdlaWdodGluZyBtYXRyaXggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICBYWF9RMTdfcHRyLCAgICAgICAg
ICAgICAvKiBJICAgIGNvcnJlbGF0aW9uIG1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICB4WF9RMTdfcHRyLCAgICAgICAgICAgICAv
KiBJICAgIGNvcnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KICAgICAgICAgICAgICAgICBjYmtfcHRyX1E3LCAgICAgICAgICAgICAvKiBJICAg
IGNvZGVib29rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICAgICAgICAgICAgICAgICBjYmtfZ2Fpbl9wdHJfUTcsICAgICAgICAvKiBJICAgIGNvZGVi
b29rIGVmZmVjdGl2ZSBnYWlucyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAg
ICAgICAgICAgICAgICBjbF9wdHJfUTUsICAgICAgICAgICAgICAvKiBJICAgIGNvZGUgbGVuZ3Ro
IGZvciBlYWNoIGNvZGVib29rIHZlY3RvciAgICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAg
ICAgICAgICBtdV9ROSwgICAgICAgICAgICAgICAgICAvKiBJICAgIHRyYWRlb2ZmIGJldHdlZW4g
d2VpZ2h0ZWQgZXJyb3IgYW5kIHJhdGUgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAg
ICBzdWJmcl9sZW4sICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzYW1wbGVzIHBlciBz
dWJmcmFtZSAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICBtYXhf
Z2Fpbl9RNywgICAgICAgICAgICAvKiBJICAgIG1heGltdW0gc3VtIG9mIGFic29sdXRlIExUUCBj
b2VmZmljaWVudHMgICAgICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICBjYmtfc2l6ZSwg
ICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiB2ZWN0b3JzIGluIGNvZGVib29rICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICAgICAgICAgICAgICk7CiAKLSAgICAgICAgICAgIHJhdGVfZGlz
dF9RMTQgPSBzaWxrX0FERF9QT1NfU0FUMzIoIHJhdGVfZGlzdF9RMTQsIHJhdGVfZGlzdF9RMTRf
c3ViZnIgKTsKKyAgICAgICAgICAgIHJlc19ucmdfUTE1ICA9IHNpbGtfQUREX1BPU19TQVQzMigg
cmVzX25yZ19RMTUsIHJlc19ucmdfUTE1X3N1YmZyICk7CisgICAgICAgICAgICByYXRlX2Rpc3Rf
UTcgPSBzaWxrX0FERF9QT1NfU0FUMzIoIHJhdGVfZGlzdF9RNywgcmF0ZV9kaXN0X1E3X3N1YmZy
ICk7CiAgICAgICAgICAgICBzdW1fbG9nX2dhaW5fdG1wX1E3ID0gc2lsa19tYXgoMCwgc3VtX2xv
Z19nYWluX3RtcF9RNwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIHNpbGtfbGlu
MmxvZyggZ2Fpbl9zYWZldHkgKyBnYWluX1E3ICkgLSBTSUxLX0ZJWF9DT05TVCggNywgNyApKTsK
IAotICAgICAgICAgICAgYl9RMTRfcHRyICs9IExUUF9PUkRFUjsKLSAgICAgICAgICAgIFdfUTE4
X3B0ciArPSBMVFBfT1JERVIgKiBMVFBfT1JERVI7CisgICAgICAgICAgICBYWF9RMTdfcHRyICs9
IExUUF9PUkRFUiAqIExUUF9PUkRFUjsKKyAgICAgICAgICAgIHhYX1ExN19wdHIgKz0gTFRQX09S
REVSOwogICAgICAgICB9CiAKLSAgICAgICAgLyogQXZvaWQgbmV2ZXIgZmluZGluZyBhIGNvZGVi
b29rICovCi0gICAgICAgIHJhdGVfZGlzdF9RMTQgPSBzaWxrX21pbiggc2lsa19pbnQzMl9NQVgg
LSAxLCByYXRlX2Rpc3RfUTE0ICk7Ci0KLSAgICAgICAgaWYoIHJhdGVfZGlzdF9RMTQgPCBtaW5f
cmF0ZV9kaXN0X1ExNCApIHsKLSAgICAgICAgICAgIG1pbl9yYXRlX2Rpc3RfUTE0ID0gcmF0ZV9k
aXN0X1ExNDsKKyAgICAgICAgaWYoIHJhdGVfZGlzdF9RNyA8PSBtaW5fcmF0ZV9kaXN0X1E3ICkg
eworICAgICAgICAgICAgbWluX3JhdGVfZGlzdF9RNyA9IHJhdGVfZGlzdF9RNzsKICAgICAgICAg
ICAgICpwZXJpb2RpY2l0eV9pbmRleCA9IChvcHVzX2ludDgpazsKICAgICAgICAgICAgIHNpbGtf
bWVtY3B5KCBjYmtfaW5kZXgsIHRlbXBfaWR4LCBuYl9zdWJmciAqIHNpemVvZiggb3B1c19pbnQ4
ICkgKTsKICAgICAgICAgICAgIGJlc3Rfc3VtX2xvZ19nYWluX1E3ID0gc3VtX2xvZ19nYWluX3Rt
cF9RNzsKICAgICAgICAgfQotCi0gICAgICAgIC8qIEJyZWFrIGVhcmx5IGluIGxvdy1jb21wbGV4
aXR5IG1vZGUgaWYgcmF0ZSBkaXN0b3J0aW9uIGlzIGJlbG93IHRocmVzaG9sZCAqLwotICAgICAg
ICBpZiggbG93Q29tcGxleGl0eSAmJiAoIHJhdGVfZGlzdF9RMTQgPCBzaWxrX0xUUF9nYWluX21p
ZGRsZV9hdmdfUkRfUTE0ICkgKSB7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQogICAg
IH0KIAogICAgIGNia19wdHJfUTcgPSBzaWxrX0xUUF92cV9wdHJzX1E3WyAqcGVyaW9kaWNpdHlf
aW5kZXggXTsKQEAgLTEyNSw1ICsxMjAsMTMgQEAgdm9pZCBzaWxrX3F1YW50X0xUUF9nYWlucygK
ICAgICAgICAgICAgIEJfUTE0WyBqICogTFRQX09SREVSICsgayBdID0gc2lsa19MU0hJRlQoIGNi
a19wdHJfUTdbIGNia19pbmRleFsgaiBdICogTFRQX09SREVSICsgayBdLCA3ICk7CiAgICAgICAg
IH0KICAgICB9CisKKyAgICBpZiggbmJfc3ViZnIgPT0gMiApIHsKKyAgICAgICAgcmVzX25yZ19R
MTUgPSBzaWxrX1JTSElGVDMyKCByZXNfbnJnX1ExNSwgMSApOworICAgIH0gZWxzZSB7CisgICAg
ICAgIHJlc19ucmdfUTE1ID0gc2lsa19SU0hJRlQzMiggcmVzX25yZ19RMTUsIDIgKTsKKyAgICB9
CisKICAgICAqc3VtX2xvZ19nYWluX1E3ID0gYmVzdF9zdW1fbG9nX2dhaW5fUTc7CisgICAgKnBy
ZWRfZ2Fpbl9kQl9RNyA9IChvcHVzX2ludClzaWxrX1NNVUxCQiggLTMsIHNpbGtfbGluMmxvZygg
cmVzX25yZ19RMTUgKSAtICggMTUgPDwgNyApICk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvc3RydWN0
cy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL3N0cnVjdHMuaAppbmRleCA4Mjc4MjlkYzZmMzJjZTEzNDg1YmUxN2E3MWVmYzM5
NjNkN2M0MjI0Li40ZmY1OTBiMDRjYWJhNTA4MzVmY2QxODAwOTQzN2JjNzkwYWFhYWFlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvc3RydWN0cy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9zdHJ1Y3RzLmgKQEAgLTQ4LDYgKzQ4LDcg
QEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBzTFBD
X1ExNFsgTUFYX1NVQl9GUkFNRV9MRU5HVEggKyBOU1FfTFBDX0JVRl9MRU5HVEggXTsKICAgICBv
cHVzX2ludDMyICAgICAgICAgICAgICAgICAgc0FSMl9RMTRbIE1BWF9TSEFQRV9MUENfT1JERVIg
XTsKICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgc0xGX0FSX3NocF9RMTQ7CisgICAg
b3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHNEaWZmX3NocF9RMTQ7CiAgICAgb3B1c19pbnQg
ICAgICAgICAgICAgICAgICAgIGxhZ1ByZXY7CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICAgIHNMVFBfYnVmX2lkeDsKICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgc0xUUF9z
aHBfYnVmX2lkeDsKQEAgLTg2LDYgKzg3LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIGNvbnN0
IG9wdXNfaW50MTYgICAgICAgICAgICAgcXVhbnRTdGVwU2l6ZV9RMTY7CiAgICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgICBpbnZRdWFudFN0ZXBTaXplX1E2OwogICAgIGNvbnN0IG9wdXNf
dWludDggICAgICAgICAgICAgKkNCMV9OTFNGX1E4OworICAgIGNvbnN0IG9wdXNfaW50MTYgICAg
ICAgICAgICAgKkNCMV9XZ2h0X1E5OwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICAgICAg
KkNCMV9pQ0RGOwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICAgICAgKnByZWRfUTg7CiAg
ICAgY29uc3Qgb3B1c191aW50OCAgICAgICAgICAgICAqZWNfc2VsOwpAQCAtMTY5LDggKzE3MSw2
IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgIHBp
dGNoRXN0aW1hdGlvbkNvbXBsZXhpdHk7ICAgICAgICAgLyogQ29tcGxleGl0eSBsZXZlbCBmb3Ig
cGl0Y2ggZXN0aW1hdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgICAgcGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXI7ICAgICAgICAg
ICAvKiBXaGl0ZW5pbmcgZmlsdGVyIG9yZGVyIGZvciBwaXRjaCBlc3RpbWF0b3IgICAgICAgICAg
ICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICBwaXRjaEVz
dGltYXRpb25UaHJlc2hvbGRfUTE2OyAgICAgIC8qIFRocmVzaG9sZCBmb3IgcGl0Y2ggZXN0aW1h
dG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgICAgIExUUFF1YW50TG93Q29tcGxleGl0eTsgICAgICAgICAgICAgLyog
RmxhZyBmb3IgbG93IGNvbXBsZXhpdHkgTFRQIHF1YW50aXphdGlvbiAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgbXVfTFRQX1E5OyAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBSYXRlLWRpc3RvcnRpb24gdHJhZGVvZmYgaW4gTFRQ
IHF1YW50aXphdGlvbiAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAg
ICAgICAgICAgICAgICBzdW1fbG9nX2dhaW5fUTc7ICAgICAgICAgICAgICAgICAgIC8qIEN1bXVs
YXRpdmUgbWF4IHByZWRpY3Rpb24gZ2FpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgIE5MU0ZfTVNWUV9TdXJ2aXZv
cnM7ICAgICAgICAgICAgICAgLyogTnVtYmVyIG9mIHN1cnZpdm9ycyBpbiBOTFNGIE1TVlEgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgICAgZmlyc3RfZnJhbWVfYWZ0ZXJfcmVzZXQ7ICAgICAgICAgICAvKiBGbGFnIGZvciBk
ZWFjdGl2YXRpbmcgTkxTRiBpbnRlcnBvbGF0aW9uLCBwaXRjaCBwcmVkaWN0aW9uICAgICAgICov
CkBAIC0zMDEsNiArMzAxLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIC8qIFN0dWZmIHVzZWQg
Zm9yIFBMQyAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsb3NzQ250OwogICAg
IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBwcmV2U2lnbmFsVHlwZTsKKyAgICBpbnQgICAg
ICAgICAgICAgICAgICAgICAgICAgYXJjaDsKIAogICAgIHNpbGtfUExDX3N0cnVjdCBzUExDOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvc3VtX3Nxcl9zaGlmdC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3N1bV9zcXJfc2hpZnQuYwpp
bmRleCAxMjlkZjE5MWQ4ZGVkNGQ4NGUwMDNhZWEzNmQ5OGE1OWEzNDlkZDQ3Li40ZmQwYzNkN2Q1
MzZjM2I1ZTNiYTU0OWQxOTA0ODgzM2QwMGI0ZTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvc3VtX3Nxcl9z
aGlmdC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9zdW1fc3FyX3NoaWZ0LmMKQEAgLTQxLDQzICs0MSw0MCBAQCB2b2lk
IHNpbGtfc3VtX3Nxcl9zaGlmdCgKICkKIHsKICAgICBvcHVzX2ludCAgIGksIHNoZnQ7Ci0gICAg
b3B1c19pbnQzMiBucmdfdG1wLCBucmc7CisgICAgb3B1c191aW50MzIgbnJnX3RtcDsKKyAgICBv
cHVzX2ludDMyIG5yZzsKIAotICAgIG5yZyAgPSAwOwotICAgIHNoZnQgPSAwOwotICAgIGxlbi0t
OwotICAgIGZvciggaSA9IDA7IGkgPCBsZW47IGkgKz0gMiApIHsKLSAgICAgICAgbnJnID0gc2ls
a19TTUxBQkJfb3ZmbHcoIG5yZywgeFsgaSBdLCB4WyBpIF0gKTsKLSAgICAgICAgbnJnID0gc2ls
a19TTUxBQkJfb3ZmbHcoIG5yZywgeFsgaSArIDEgXSwgeFsgaSArIDEgXSApOwotICAgICAgICBp
ZiggbnJnIDwgMCApIHsKLSAgICAgICAgICAgIC8qIFNjYWxlIGRvd24gKi8KLSAgICAgICAgICAg
IG5yZyA9IChvcHVzX2ludDMyKXNpbGtfUlNISUZUX3VpbnQoIChvcHVzX3VpbnQzMilucmcsIDIg
KTsKLSAgICAgICAgICAgIHNoZnQgPSAyOwotICAgICAgICAgICAgaSs9MjsKLSAgICAgICAgICAg
IGJyZWFrOwotICAgICAgICB9CisgICAgLyogRG8gYSBmaXJzdCBydW4gd2l0aCB0aGUgbWF4aW11
bSBzaGlmdCB3ZSBjb3VsZCBoYXZlLiAqLworICAgIHNoZnQgPSAzMS1zaWxrX0NMWjMyKGxlbik7
CisgICAgLyogTGV0J3MgYmUgY29uc2VydmF0aXZlIHdpdGggcm91bmRpbmcgYW5kIHN0YXJ0IHdp
dGggbnJnPWxlbi4gKi8KKyAgICBucmcgID0gbGVuOworICAgIGZvciggaSA9IDA7IGkgPCBsZW4g
LSAxOyBpICs9IDIgKSB7CisgICAgICAgIG5yZ190bXAgPSBzaWxrX1NNVUxCQiggeFsgaSBdLCB4
WyBpIF0gKTsKKyAgICAgICAgbnJnX3RtcCA9IHNpbGtfU01MQUJCX292Zmx3KCBucmdfdG1wLCB4
WyBpICsgMSBdLCB4WyBpICsgMSBdICk7CisgICAgICAgIG5yZyA9IChvcHVzX2ludDMyKXNpbGtf
QUREX1JTSElGVF91aW50KCBucmcsIG5yZ190bXAsIHNoZnQgKTsKICAgICB9Ci0gICAgZm9yKCA7
IGkgPCBsZW47IGkgKz0gMiApIHsKKyAgICBpZiggaSA8IGxlbiApIHsKKyAgICAgICAgLyogT25l
IHNhbXBsZSBsZWZ0IHRvIHByb2Nlc3MgKi8KKyAgICAgICAgbnJnX3RtcCA9IHNpbGtfU01VTEJC
KCB4WyBpIF0sIHhbIGkgXSApOworICAgICAgICBucmcgPSAob3B1c19pbnQzMilzaWxrX0FERF9S
U0hJRlRfdWludCggbnJnLCBucmdfdG1wLCBzaGZ0ICk7CisgICAgfQorICAgIHNpbGtfYXNzZXJ0
KCBucmcgPj0gMCApOworICAgIC8qIE1ha2Ugc3VyZSB0aGUgcmVzdWx0IHdpbGwgZml0IGluIGEg
MzItYml0IHNpZ25lZCBpbnRlZ2VyIHdpdGggdHdvIGJpdHMKKyAgICAgICBvZiBoZWFkcm9vbS4g
Ki8KKyAgICBzaGZ0ID0gc2lsa19tYXhfMzIoMCwgc2hmdCszIC0gc2lsa19DTFozMihucmcpKTsK
KyAgICBucmcgPSAwOworICAgIGZvciggaSA9IDAgOyBpIDwgbGVuIC0gMTsgaSArPSAyICkgewog
ICAgICAgICBucmdfdG1wID0gc2lsa19TTVVMQkIoIHhbIGkgXSwgeFsgaSBdICk7CiAgICAgICAg
IG5yZ190bXAgPSBzaWxrX1NNTEFCQl9vdmZsdyggbnJnX3RtcCwgeFsgaSArIDEgXSwgeFsgaSAr
IDEgXSApOwotICAgICAgICBucmcgPSAob3B1c19pbnQzMilzaWxrX0FERF9SU0hJRlRfdWludCgg
bnJnLCAob3B1c191aW50MzIpbnJnX3RtcCwgc2hmdCApOwotICAgICAgICBpZiggbnJnIDwgMCAp
IHsKLSAgICAgICAgICAgIC8qIFNjYWxlIGRvd24gKi8KLSAgICAgICAgICAgIG5yZyA9IChvcHVz
X2ludDMyKXNpbGtfUlNISUZUX3VpbnQoIChvcHVzX3VpbnQzMilucmcsIDIgKTsKLSAgICAgICAg
ICAgIHNoZnQgKz0gMjsKLSAgICAgICAgfQorICAgICAgICBucmcgPSAob3B1c19pbnQzMilzaWxr
X0FERF9SU0hJRlRfdWludCggbnJnLCBucmdfdG1wLCBzaGZ0ICk7CiAgICAgfQotICAgIGlmKCBp
ID09IGxlbiApIHsKKyAgICBpZiggaSA8IGxlbiApIHsKICAgICAgICAgLyogT25lIHNhbXBsZSBs
ZWZ0IHRvIHByb2Nlc3MgKi8KICAgICAgICAgbnJnX3RtcCA9IHNpbGtfU01VTEJCKCB4WyBpIF0s
IHhbIGkgXSApOwogICAgICAgICBucmcgPSAob3B1c19pbnQzMilzaWxrX0FERF9SU0hJRlRfdWlu
dCggbnJnLCBucmdfdG1wLCBzaGZ0ICk7CiAgICAgfQogCi0gICAgLyogTWFrZSBzdXJlIHRvIGhh
dmUgYXQgbGVhc3Qgb25lIGV4dHJhIGxlYWRpbmcgemVybyAodHdvIGxlYWRpbmcgemVyb3MgaW4g
dG90YWwpICovCi0gICAgaWYoIG5yZyAmIDB4QzAwMDAwMDAgKSB7Ci0gICAgICAgIG5yZyA9IHNp
bGtfUlNISUZUX3VpbnQoIChvcHVzX3VpbnQzMilucmcsIDIgKTsKLSAgICAgICAgc2hmdCArPSAy
OwotICAgIH0KKyAgICBzaWxrX2Fzc2VydCggbnJnID49IDAgKTsKIAogICAgIC8qIE91dHB1dCBh
cmd1bWVudHMgKi8KICAgICAqc2hpZnQgID0gc2hmdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXMu
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay90YWJsZXMuaAppbmRleCA3ZmVhNmZkYTM5ZGE0NjMzODRjMzE1ZDViNjUyYzMzNTJm
Njk2MTgyLi44YjAzODBlZWIwOTg0YzE3YjM4MjU2NzI5Nzg1MWMyZDVhMjcwYWFlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvdGFibGVzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxlcy5oCkBAIC03NiwxMCArNzYsOCBAQCBl
eHRlcm4gY29uc3Qgb3B1c191aW50OCAgc2lsa19OTFNGX0VYVF9pQ0RGWyA3IF07CiBleHRlcm4g
Y29uc3Qgb3B1c191aW50OCAgc2lsa19MVFBfcGVyX2luZGV4X2lDREZbIDMgXTsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogICAzICovCiBleHRlcm4gY29u
c3Qgb3B1c191aW50OCAgKiBjb25zdCBzaWxrX0xUUF9nYWluX2lDREZfcHRyc1sgTkJfTFRQX0NC
S1MgXTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogICAzICovCiBleHRlcm4gY29uc3Qg
b3B1c191aW50OCAgKiBjb25zdCBzaWxrX0xUUF9nYWluX0JJVFNfUTVfcHRyc1sgTkJfTFRQX0NC
S1MgXTsgICAgICAgICAgICAgICAgICAgICAgICAgLyogICAzICovCi1leHRlcm4gY29uc3Qgb3B1
c19pbnQxNiAgc2lsa19MVFBfZ2Fpbl9taWRkbGVfYXZnX1JEX1ExNDsKIGV4dGVybiBjb25zdCBv
cHVzX2ludDggICAqIGNvbnN0IHNpbGtfTFRQX3ZxX3B0cnNfUTdbIE5CX0xUUF9DQktTIF07ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAxNjggKi8KIGV4dGVybiBjb25zdCBvcHVz
X3VpbnQ4ICAqIGNvbnN0IHNpbGtfTFRQX3ZxX2dhaW5fcHRyc19RN1tOQl9MVFBfQ0JLU107Ci0K
IGV4dGVybiBjb25zdCBvcHVzX2ludDggICBzaWxrX0xUUF92cV9zaXplc1sgTkJfTFRQX0NCS1Mg
XTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAgIDMgKi8KIAog
ZXh0ZXJuIGNvbnN0IG9wdXNfdWludDggIHNpbGtfTFRQc2NhbGVfaUNERlsgMyBdOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qICAgNCAqLwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL3RhYmxlc19MVFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXNfTFRQLmMKaW5kZXggMGU2YTAy
NTRkNWRiNTUyNjJjZWNlMDI2OThkNTNlYjRiMTMyN2Q2Yi4uNWUxMmM4NjQzZTViMGYxNWMxYzk0
ODZhODg0NWM4MzNmMWRkZjM0MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxlc19MVFAuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvdGFibGVzX0xUUC5jCkBAIC01MSw4ICs1MSw2IEBAIHN0YXRpYyBjb25zdCBvcHVzX3VpbnQ4
IHNpbGtfTFRQX2dhaW5faUNERl8yWzMyXSA9IHsKICAgICAgICAgMjQsICAgICAyMCwgICAgIDE2
LCAgICAgMTIsICAgICAgOSwgICAgICA1LCAgICAgIDIsICAgICAgMAogfTsKIAotY29uc3Qgb3B1
c19pbnQxNiBzaWxrX0xUUF9nYWluX21pZGRsZV9hdmdfUkRfUTE0ID0gMTIzMDQ7Ci0KIHN0YXRp
YyBjb25zdCBvcHVzX3VpbnQ4IHNpbGtfTFRQX2dhaW5fQklUU19RNV8wWzhdID0gewogICAgICAg
ICAxNSwgICAgMTMxLCAgICAxMzgsICAgIDEzOCwgICAgMTU1LCAgICAxNTUsICAgIDE3MywgICAg
MTczCiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxlc19OTFNGX0NCX05CX01CLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFi
bGVzX05MU0ZfQ0JfTkJfTUIuYwppbmRleCA4YzU5ZDIwN2FhMDA4MDg2NTdjNjYyYjY1ODhkMWZj
ZmMzYWM3OTViLi4xOTVkNWI5NWJkMTU0Y2M0YTk0ZjJlZTYzYjc2ODhhNWVjMDY3MWY3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvdGFibGVzX05MU0ZfQ0JfTkJfTUIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX05MU0Zf
Q0JfTkJfTUIuYwpAQCAtNzQsNiArNzQsNDEgQEAgc3RhdGljIGNvbnN0IG9wdXNfdWludDggc2ls
a19OTFNGX0NCMV9OQl9NQl9ROFsgMzIwIF0gPSB7CiAgICAgICAgIDY0LCAgICAgODQsICAgIDEw
NCwgICAgMTE4LCAgICAxNTYsICAgIDE3NywgICAgMjAxLCAgICAyMzAKIH07CiAKK3N0YXRpYyBj
b25zdCBvcHVzX2ludDE2IHNpbGtfTkxTRl9DQjFfV2dodF9ROVsgMzIwIF0gPSB7CisgICAgIDI4
OTcsIDIzMTQsIDIzMTQsIDIzMTQsIDIyODcsIDIyODcsIDIzMTQsIDIzMDAsIDIzMjcsIDIyODcs
CisgICAgIDI4ODgsIDI1ODAsIDIzOTQsIDIzNjcsIDIzMTQsIDIyNzQsIDIyNzQsIDIyNzQsIDIy
NzQsIDIxOTQsCisgICAgIDI0ODcsIDIzNDAsIDIzNDAsIDIzMTQsIDIzMTQsIDIzMTQsIDIzNDAs
IDIzNDAsIDIzNjcsIDIzNTQsCisgICAgIDMyMTYsIDI3NjYsIDIzNDAsIDIzNDAsIDIzMTQsIDIy
NzQsIDIyMjEsIDIyMDcsIDIyNjEsIDIxOTQsCisgICAgIDI0NjAsIDI0NzQsIDIzNjcsIDIzOTQs
IDIzOTQsIDIzOTQsIDIzOTQsIDIzNjcsIDI0MDcsIDIzMTQsCisgICAgIDM0NzksIDMwNTYsIDIx
MjcsIDIyMDcsIDIyNzQsIDIyNzQsIDIyNzQsIDIyODcsIDIzMTQsIDIyNjEsCisgICAgIDMyODIs
IDMxNDEsIDI1ODAsIDIzOTQsIDIyNDcsIDIyMjEsIDIyMDcsIDIxOTQsIDIxOTQsIDIxMTQsCisg
ICAgIDQwOTYsIDM4NDUsIDIyMjEsIDI2MjAsIDI2MjAsIDI0MDcsIDIzMTQsIDIzOTQsIDIzNjcs
IDIwNzQsCisgICAgIDMxNzgsIDMyNDQsIDIzNjcsIDIyMjEsIDI1NTMsIDI0MzQsIDIzNDAsIDIz
MTQsIDIxNjcsIDIyMjEsCisgICAgIDMzMzgsIDM0ODgsIDI3MjYsIDIxOTQsIDIyNjEsIDI0NjAs
IDIzNTQsIDIzNjcsIDIyMDcsIDIxMDEsCisgICAgIDIzNTQsIDI0MjAsIDIzMjcsIDIzNjcsIDIz
OTQsIDI0MjAsIDI0MjAsIDI0MjAsIDI0NjAsIDIzNjcsCisgICAgIDM3NzksIDM2MjksIDI0MzQs
IDI1MjcsIDIzNjcsIDIyNzQsIDIyNzQsIDIzMDAsIDIyMDcsIDIwNDgsCisgICAgIDMyNTQsIDMy
MjUsIDI3MTMsIDI4NDYsIDI0NDcsIDIzMjcsIDIzMDAsIDIzMDAsIDIyNzQsIDIxMjcsCisgICAg
IDMyNjMsIDMzMDAsIDI3NTMsIDI4MDYsIDI0NDcsIDIyNjEsIDIyNjEsIDIyNDcsIDIxMjcsIDIx
MDEsCisgICAgIDI4NzMsIDI5ODEsIDI2MzMsIDIzNjcsIDI0MDcsIDIzNTQsIDIxOTQsIDIyNDcs
IDIyNDcsIDIxMTQsCisgICAgIDMyMjUsIDMxOTcsIDI2MzMsIDI1ODAsIDIyNzQsIDIxODEsIDIy
NDcsIDIyMjEsIDIyMjEsIDIxNDEsCisgICAgIDMxNzgsIDMzMTAsIDI3NDAsIDI0MDcsIDIyNzQs
IDIyNzQsIDIyNzQsIDIyODcsIDIxOTQsIDIxMTQsCisgICAgIDMxNDEsIDMyNzIsIDI0NjAsIDIw
NjEsIDIyODcsIDI1MDAsIDIzNjcsIDI0ODcsIDI0MzQsIDIxODEsCisgICAgIDM1MDcsIDMyODIs
IDIzMTQsIDI3MDAsIDI2NDcsIDI0NzQsIDIzNjcsIDIzOTQsIDIzNDAsIDIxMjcsCisgICAgIDM0
MjMsIDM1MzUsIDMwMzgsIDMwNTYsIDIzMDAsIDE5NTAsIDIyMjEsIDIyNzQsIDIyNzQsIDIyNzQs
CisgICAgIDM0MDQsIDMzNjYsIDIwODcsIDI2ODcsIDI4NzMsIDIzNTQsIDI0MjAsIDIyNzQsIDI0
NzQsIDI1NDAsCisgICAgIDM3NjAsIDM0ODgsIDE5NTAsIDI2NjAsIDI4OTcsIDI1MjcsIDIzOTQs
IDIzNjcsIDI0NjAsIDIyNjEsCisgICAgIDMwMjgsIDMyNzIsIDI3NDAsIDI4ODgsIDI3NDAsIDIx
NTQsIDIxMjcsIDIyODcsIDIyMzQsIDIyNDcsCisgICAgIDM2OTUsIDM2NTcsIDIwMjUsIDE5Njks
IDI2NjAsIDI3MDAsIDI1ODAsIDI1MDAsIDIzMjcsIDIzNjcsCisgICAgIDMyMDcsIDM0MTMsIDIz
NTQsIDIwNzQsIDI4ODgsIDI4ODgsIDIzNDAsIDI0ODcsIDIyNDcsIDIxNjcsCisgICAgIDMzMzgs
IDMzNjYsIDI4NDYsIDI3ODAsIDIzMjcsIDIxNTQsIDIyNzQsIDIyODcsIDIxMTQsIDIwNjEsCisg
ICAgIDIzMjcsIDIzMDAsIDIxODEsIDIxNjcsIDIxODEsIDIzNjcsIDI2MzMsIDI3MDAsIDI3MDAs
IDI1NTMsCisgICAgIDI0MDcsIDI0MzQsIDIyMjEsIDIyNjEsIDIyMjEsIDIyMjEsIDIzNDAsIDI0
MjAsIDI2MDcsIDI3MDAsCisgICAgIDMwMzgsIDMyNDQsIDI4MDYsIDI4ODgsIDI0NzQsIDIwNzQs
IDIzMDAsIDIzMTQsIDIzNTQsIDIzODAsCisgICAgIDIyMjEsIDIxNTQsIDIxMjcsIDIyODcsIDI1
MDAsIDI3OTMsIDI3OTMsIDI2MjAsIDI1ODAsIDIzNjcsCisgICAgIDM2NzYsIDM3MTMsIDIyMzQs
IDE4MzgsIDIxODEsIDI3NTMsIDI3MjYsIDI2NzMsIDI1MTMsIDIyMDcsCisgICAgIDI3OTMsIDMx
NjAsIDI3MjYsIDI1NTMsIDI4NDYsIDI1MTMsIDIxODEsIDIzOTQsIDIyMjEsIDIxODEKK307CisK
IHN0YXRpYyBjb25zdCBvcHVzX3VpbnQ4IHNpbGtfTkxTRl9DQjFfaUNERl9OQl9NQlsgNjQgXSA9
IHsKICAgICAgICAyMTIsICAgIDE3OCwgICAgMTQ4LCAgICAxMjksICAgIDEwOCwgICAgIDk2LCAg
ICAgODUsICAgICA4MiwKICAgICAgICAgNzksICAgICA3NywgICAgIDYxLCAgICAgNTksICAgICA1
NywgICAgIDU2LCAgICAgNTEsICAgICA0OSwKQEAgLTE1MCw2ICsxODUsNyBAQCBjb25zdCBzaWxr
X05MU0ZfQ0Jfc3RydWN0IHNpbGtfTkxTRl9DQl9OQl9NQiA9CiAgICAgU0lMS19GSVhfQ09OU1Qo
IDAuMTgsIDE2ICksCiAgICAgU0lMS19GSVhfQ09OU1QoIDEuMCAvIDAuMTgsIDYgKSwKICAgICBz
aWxrX05MU0ZfQ0IxX05CX01CX1E4LAorICAgIHNpbGtfTkxTRl9DQjFfV2dodF9ROSwKICAgICBz
aWxrX05MU0ZfQ0IxX2lDREZfTkJfTUIsCiAgICAgc2lsa19OTFNGX1BSRURfTkJfTUJfUTgsCiAg
ICAgc2lsa19OTFNGX0NCMl9TRUxFQ1RfTkJfTUIsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX05M
U0ZfQ0JfV0IuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay90YWJsZXNfTkxTRl9DQl9XQi5jCmluZGV4IDUwYWY4N2ViMmUxYzFk
NzQyODYyNjkwNzRiNWQ4YTA5MjYyMDI3YzMuLjVjYzlmNTdiZmZjYTc3ODg2ZGU4NzY0ZDMyZDYy
MjEzZGE1ZGFmZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXNfTkxTRl9DQl9XQi5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay90YWJsZXNfTkxTRl9DQl9XQi5jCkBAIC05OCw2ICs5OCw0MSBAQCBzdGF0aWMgY29uc3Qgb3B1
c191aW50OCBzaWxrX05MU0ZfQ0IxX1dCX1E4WyA1MTIgXSA9IHsKICAgICAgICAxMTAsICAgIDEx
OSwgICAgMTI5LCAgICAxNDEsICAgIDE3NSwgICAgMTk4LCAgICAyMTgsICAgIDIzNwogfTsKIAor
c3RhdGljIGNvbnN0IG9wdXNfaW50MTYgc2lsa19OTFNGX0NCMV9XQl9XZ2h0X1E5WyA1MTIgXSA9
IHsKKyAgICAgMzY1NywgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwg
MjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjk2MywgMjk2MywgMjkyNSwgMjg0NiwKKyAgICAgMzIx
NiwgMzA4NSwgMjk3MiwgMzA1NiwgMzA1NiwgMzAxMCwgMzAxMCwgMzAxMCwgMjk2MywgMjk2Mywg
MzAxMCwgMjk3MiwgMjg4OCwgMjg0NiwgMjg0NiwgMjcyNiwKKyAgICAgMzkyMCwgNDAxNCwgMjk4
MSwgMzIwNywgMzIwNywgMjkzNCwgMzA1NiwgMjg0NiwgMzEyMiwgMzI0NCwgMjkyNSwgMjg0Niwg
MjYyMCwgMjU1MywgMjc4MCwgMjkyNSwKKyAgICAgMzUxNiwgMzE5NywgMzAxMCwgMzEwMywgMzAx
OSwgMjg4OCwgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjg4OCwgMjg4OCwgMjg4OCwgMjg4OCwg
Mjg4OCwgMjc1MywKKyAgICAgNTA1NCwgNTA1NCwgMjkzNCwgMzU3MywgMzM4NSwgMzA1NiwgMzA4
NSwgMjc5MywgMzE2MCwgMzE2MCwgMjk3MiwgMjg0NiwgMjUxMywgMjU0MCwgMjc1MywgMjg4OCwK
KyAgICAgNDQyOCwgNDE0OSwgMjcwMCwgMjc1MywgMjk3MiwgMzAxMCwgMjkyNSwgMjg0NiwgMjk4
MSwgMzAxOSwgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwgMjg4OCwgMjcyNiwKKyAgICAgMzYyMCwg
MzAxOSwgMjk3MiwgMzA1NiwgMzA1NiwgMjg3MywgMjgwNiwgMzA1NiwgMzIxNiwgMzA0NywgMjk4
MSwgMzI5MSwgMzI5MSwgMjk4MSwgMzMxMCwgMjk5MSwKKyAgICAgNTIyNywgNTAxNCwgMjU0MCwg
MzMzOCwgMzUyNiwgMzM4NSwgMzE5NywgMzA5NCwgMzM3NiwgMjk4MSwgMjcwMCwgMjY0NywgMjY4
NywgMjc5MywgMjg0NiwgMjY3MywKKyAgICAgNTA4MSwgNTE3NCwgNDYxNSwgNDQyOCwgMjQ2MCwg
Mjg5NywgMzA0NywgMzIwNywgMzE2OSwgMjY4NywgMjc0MCwgMjg4OCwgMjg0NiwgMjc5MywgMjg0
NiwgMjcwMCwKKyAgICAgMzEyMiwgMjg4OCwgMjk2MywgMjkyNSwgMjkyNSwgMjkyNSwgMjkyNSwg
Mjk2MywgMjk2MywgMjk2MywgMjk2MywgMjkyNSwgMjkyNSwgMjk2MywgMjk2MywgMjk2MywKKyAg
ICAgNDIwMiwgMzIwNywgMjk4MSwgMzEwMywgMzAxMCwgMjg4OCwgMjg4OCwgMjkyNSwgMjk3Miwg
Mjg3MywgMjkxNiwgMzAxOSwgMjk3MiwgMzAxMCwgMzE5NywgMjg3MywKKyAgICAgMzc2MCwgMzc2
MCwgMzI0NCwgMzEwMywgMjk4MSwgMjg4OCwgMjkyNSwgMjg4OCwgMjk3MiwgMjkzNCwgMjc5Mywg
Mjc5MywgMjg0NiwgMjg4OCwgMjg4OCwgMjY2MCwKKyAgICAgMzg1NCwgNDAxNCwgMzIwNywgMzEy
MiwgMzI0NCwgMjkzNCwgMzA0NywgMjk2MywgMjk2MywgMzA4NSwgMjg0NiwgMjc5MywgMjc5Mywg
Mjc5MywgMjc5MywgMjU4MCwKKyAgICAgMzg0NSwgNDA4MCwgMzM1NywgMzUxNiwgMzA5NCwgMjc0
MCwgMzAxMCwgMjkzNCwgMzEyMiwgMzA4NSwgMjg0NiwgMjg0NiwgMjY0NywgMjY0NywgMjg0Niwg
MjgwNiwKKyAgICAgNTE0NywgNDg5NCwgMzIyNSwgMzg0NSwgMzQ0MSwgMzE2OSwgMjg5NywgMzQx
MywgMzQ1MSwgMjcwMCwgMjU4MCwgMjY3MywgMjc0MCwgMjg0NiwgMjgwNiwgMjc1MywKKyAgICAg
NDEwOSwgMzc4OSwgMzI5MSwgMzE2MCwgMjkyNSwgMjg4OCwgMjg4OCwgMjkyNSwgMjc5MywgMjc0
MCwgMjc5MywgMjc0MCwgMjc5MywgMjg0NiwgMjg4OCwgMjgwNiwKKyAgICAgNTA4MSwgNTA1NCwg
MzA0NywgMzU0NSwgMzI0NCwgMzA1NiwgMzA4NSwgMjk0NCwgMzEwMywgMjg5NywgMjc0MCwgMjc0
MCwgMjc0MCwgMjg0NiwgMjc5MywgMjYyMCwKKyAgICAgNDMwOSwgNDMwOSwgMjg2MCwgMjUyNywg
MzIwNywgMzM3NiwgMzM3NiwgMzA3NSwgMzA3NSwgMzM3NiwgMzA1NiwgMjg0NiwgMjY0NywgMjU4
MCwgMjcyNiwgMjc1MywKKyAgICAgMzA1NiwgMjkxNiwgMjgwNiwgMjg4OCwgMjc0MCwgMjY4Nywg
Mjg5NywgMzEwMywgMzE1MCwgMzE1MCwgMzIxNiwgMzE2OSwgMzA1NiwgMzAxMCwgMjk2MywgMjg0
NiwKKyAgICAgNDM3NSwgMzg4MiwgMjkyNSwgMjg4OCwgMjg0NiwgMjg4OCwgMjg0NiwgMjg0Niwg
Mjg4OCwgMjg4OCwgMjg4OCwgMjg0NiwgMjg4OCwgMjkyNSwgMjg4OCwgMjg0NiwKKyAgICAgMjk4
MSwgMjkxNiwgMjkxNiwgMjk4MSwgMjk4MSwgMzA1NiwgMzEyMiwgMzIxNiwgMzE1MCwgMzA1Niwg
MzAxMCwgMjk3MiwgMjk3MiwgMjk3MiwgMjkyNSwgMjc0MCwKKyAgICAgNDIyOSwgNDE0OSwgMzMx
MCwgMzM0NywgMjkyNSwgMjk2MywgMjg4OCwgMjk4MSwgMjk4MSwgMjg0NiwgMjc5MywgMjc0MCwg
Mjg0NiwgMjg0NiwgMjg0NiwgMjc5MywKKyAgICAgNDA4MCwgNDAxNCwgMzEwMywgMzAxMCwgMjky
NSwgMjkyNSwgMjkyNSwgMjg4OCwgMjkyNSwgMjkyNSwgMjg0NiwgMjg0NiwgMjg0NiwgMjc5Mywg
Mjg4OCwgMjc4MCwKKyAgICAgNDYxNSwgNDU3NSwgMzE2OSwgMzQ0MSwgMzIwNywgMjk4MSwgMjg5
NywgMzAzOCwgMzEyMiwgMjc0MCwgMjY4NywgMjY4NywgMjY4NywgMjc0MCwgMjc5MywgMjcwMCwK
KyAgICAgNDE0OSwgNDI2OSwgMzc4OSwgMzY1NywgMjcyNiwgMjc4MCwgMjg4OCwgMjg4OCwgMzAx
MCwgMjk3MiwgMjkyNSwgMjg0NiwgMjY4NywgMjY4NywgMjc5MywgMjg4OCwKKyAgICAgNDIxNSwg
MzU1NCwgMjc1MywgMjg0NiwgMjg0NiwgMjg4OCwgMjg4OCwgMjg4OCwgMjkyNSwgMjkyNSwgMjg4
OCwgMjkyNSwgMjkyNSwgMjkyNSwgMjk2MywgMjg4OCwKKyAgICAgNTE3NCwgNDkyMSwgMjI2MSwg
MzQzMiwgMzc4OSwgMzQ3OSwgMzM0NywgMjg0NiwgMzMxMCwgMzQ3OSwgMzE1MCwgMjg5NywgMjQ2
MCwgMjQ4NywgMjc1MywgMjkyNSwKKyAgICAgMzQ1MSwgMzY4NSwgMzEyMiwgMzE5NywgMzM1Nywg
MzA0NywgMzIwNywgMzIwNywgMjk4MSwgMzIxNiwgMzA4NSwgMjkyNSwgMjkyNSwgMjY4NywgMjU0
MCwgMjQzNCwKKyAgICAgMjk4MSwgMzAxMCwgMjc5MywgMjc5MywgMjc0MCwgMjc5MywgMjg0Niwg
Mjk3MiwgMzA1NiwgMzEwMywgMzE1MCwgMzE1MCwgMzE1MCwgMzEwMywgMzAxMCwgMzAxMCwKKyAg
ICAgMjk0NCwgMjg3MywgMjY4NywgMjcyNiwgMjc4MCwgMzAxMCwgMzQzMiwgMzU0NSwgMzM1Nywg
MzI0NCwgMzA1NiwgMzAxMCwgMjk2MywgMjkyNSwgMjg4OCwgMjg0NiwKKyAgICAgMzAxOSwgMjk0
NCwgMjg5NywgMzAxMCwgMzAxMCwgMjk3MiwgMzAxOSwgMzEwMywgMzA1NiwgMzA1NiwgMzAxMCwg
Mjg4OCwgMjg0NiwgMjkyNSwgMjkyNSwgMjg4OCwKKyAgICAgMzkyMCwgMzk2NywgMzAxMCwgMzE5
NywgMzM1NywgMzIxNiwgMzI5MSwgMzI5MSwgMzQ3OSwgMzcwNCwgMzQ0MSwgMjcyNiwgMjE4MSwg
MjQ2MCwgMjU4MCwgMjYwNworfTsKKwogc3RhdGljIGNvbnN0IG9wdXNfdWludDggc2lsa19OTFNG
X0NCMV9pQ0RGX1dCWyA2NCBdID0gewogICAgICAgIDIyNSwgICAgMjA0LCAgICAyMDEsICAgIDE4
NCwgICAgMTgzLCAgICAxNzUsICAgIDE1OCwgICAgMTU0LAogICAgICAgIDE1MywgICAgMTM1LCAg
ICAxMTksICAgIDExNSwgICAgMTEzLCAgICAxMTAsICAgIDEwOSwgICAgIDk5LApAQCAtMTg4LDYg
KzIyMyw3IEBAIGNvbnN0IHNpbGtfTkxTRl9DQl9zdHJ1Y3Qgc2lsa19OTFNGX0NCX1dCID0KICAg
ICBTSUxLX0ZJWF9DT05TVCggMC4xNSwgMTYgKSwKICAgICBTSUxLX0ZJWF9DT05TVCggMS4wIC8g
MC4xNSwgNiApLAogICAgIHNpbGtfTkxTRl9DQjFfV0JfUTgsCisgICAgc2lsa19OTFNGX0NCMV9X
Ql9XZ2h0X1E5LAogICAgIHNpbGtfTkxTRl9DQjFfaUNERl9XQiwKICAgICBzaWxrX05MU0ZfUFJF
RF9XQl9ROCwKICAgICBzaWxrX05MU0ZfQ0IyX1NFTEVDVF9XQiwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90
ZXN0cy90ZXN0X3VuaXRfTFBDX2ludl9wcmVkX2dhaW4uYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90ZXN0cy90ZXN0X3VuaXRf
TFBDX2ludl9wcmVkX2dhaW4uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NzA2N2NlYWQ3MDI5N2ZlNzczNjFhZTU1
NWFhOWJjMzA0Yjg3ZmY2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3Rlc3RzL3Rlc3RfdW5pdF9M
UENfaW52X3ByZWRfZ2Fpbi5jCkBAIC0wLDAgKzEsMTI5IEBACisvKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK0Nv
cHlyaWdodCAoYykgMjAxNyBHb29nbGUgSW5jLiwgSmVhbi1NYXJjIFZhbGluCitSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
K21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworYXJlIG1ldDoKKy0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKK25vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKK2RvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCistIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwg
SUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRv
cnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMgZGVyaXZlZCBm
cm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCitwZXJtaXNz
aW9uLgorVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRQorQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFCitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCitDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCitJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
CitQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaWZkZWYg
SEFWRV9DT05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDxz
dGRpby5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgImNlbHQvc3RhY2tfYWxsb2Mu
aCIKKyNpbmNsdWRlICJjcHVfc3VwcG9ydC5oIgorI2luY2x1ZGUgIlNpZ1Byb2NfRklYLmgiCisK
Ky8qIENvbXB1dGVzIHRoZSBpbXB1bHNlIHJlc3BvbnNlIG9mIHRoZSBmaWx0ZXIgc28gd2UKKyAg
IGNhbiBjYXRjaCBmaWx0ZXJzIHRoYXQgYXJlIGRlZmluaXRlbHkgdW5zdGFibGUuIFNvbWUKKyAg
IHVuc3RhYmxlIGZpbHRlcnMgbWF5IGJlIGNsYXNzaWZpZWQgYXMgc3RhYmxlLCBidXQgbm90Cisg
ICB0aGUgb3RoZXIgd2F5IGFyb3VuZC4gKi8KK2ludCBjaGVja19zdGFiaWxpdHkob3B1c19pbnQx
NiAqQV9RMTIsIGludCBvcmRlcikgeworICAgIGludCBpOworICAgIGludCBqOworICAgIGludCBz
dW1fYSwgc3VtX2Fic19hOworICAgIHN1bV9hID0gc3VtX2Fic19hID0gMDsKKyAgICBmb3IoIGog
PSAwOyBqIDwgb3JkZXI7IGorKyApIHsKKyAgICAgICAgc3VtX2EgKz0gQV9RMTJbIGogXTsKKyAg
ICAgICAgc3VtX2Fic19hICs9IHNpbGtfYWJzKCBBX1ExMlsgaiBdICk7CisgICAgfQorICAgIC8q
IENoZWNrIERDIHN0YWJpbGl0eS4gKi8KKyAgICBpZiggc3VtX2EgPj0gNDA5NiApIHsKKyAgICAg
ICAgcmV0dXJuIDA7CisgICAgfQorICAgIC8qIElmIHRoZSBzdW0gb2YgYWJzb2x1dGUgdmFsdWVz
IGlzIGxlc3MgdGhhbiAxLCB0aGUgZmlsdGVyCisgICAgICAgaGFzIHRvIGJlIHN0YWJsZS4gKi8K
KyAgICBpZiggc3VtX2Fic19hIDwgNDA5NiApIHsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQor
ICAgIGRvdWJsZSB5W1NJTEtfTUFYX09SREVSX0xQQ10gPSB7MH07CisgICAgeVswXSA9IDE7Cisg
ICAgZm9yKCBpID0gMDsgaSA8IDEwMDAwOyBpKysgKSB7CisgICAgICAgIGRvdWJsZSBzdW0gPSAw
OworICAgICAgICBmb3IoIGogPSAwOyBqIDwgb3JkZXI7IGorKyApIHsKKyAgICAgICAgICAgIHN1
bSArPSB5WyBqIF0qQV9RMTJbIGogXTsKKyAgICAgICAgfQorICAgICAgICBmb3IoIGogPSBvcmRl
ciAtIDE7IGogPiAwOyBqLS0gKSB7CisgICAgICAgICAgICB5WyBqIF0gPSB5WyBqIC0gMSBdOwor
ICAgICAgICB9CisgICAgICAgIHlbIDAgXSA9IHN1bSooMS4vNDA5Nik7CisgICAgICAgIC8qIElm
IGltcHVsc2UgcmVzcG9uc2UgcmVhY2hlcyArLy0gMTAwMDAsIHRoZSBmaWx0ZXIKKyAgICAgICAg
ICAgaXMgZGVmaW5pdGVseSB1bnN0YWJsZS4gKi8KKyAgICAgICAgaWYoICEoeVsgMCBdIDwgMTAw
MDAgJiYgeVsgMCBdID4gLTEwMDAwKSApIHsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAg
ICB9CisgICAgICAgIC8qIFRlc3QgZXZlcnkgOCBzYW1wbGUgZm9yIGxvdyBhbXBsaXR1ZGUuICov
CisgICAgICAgIGlmKCAoIGkgJiAweDcgKSA9PSAwICkgeworICAgICAgICAgICAgZG91YmxlIGFt
cCA9IDA7CisgICAgICAgICAgICBmb3IoIGogPSAwOyBqIDwgb3JkZXI7IGorKyApIHsKKyAgICAg
ICAgICAgICAgICBhbXAgKz0gZmFicyh5W2pdKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IGlmKCBhbXAgPCAwLjAwMDAxICkgeworICAgICAgICAgICAgICAgIHJldHVybiAxOworICAgICAg
ICAgICAgfQorICAgICAgICB9CisgICAgfQorICAgIHJldHVybiAxOworfQorCitpbnQgbWFpbih2
b2lkKSB7CisgICAgY29uc3QgaW50IGFyY2ggPSBvcHVzX3NlbGVjdF9hcmNoKCk7CisgICAgLyog
U2V0IHRvIDEwMDAwIHNvIGFsbCBicmFuY2hlcyBpbiBDIGZ1bmN0aW9uIGFyZSB0cmlnZ2VyZWQg
Ki8KKyAgICBjb25zdCBpbnQgbG9vcF9udW0gPSAxMDAwMDsKKyAgICBpbnQgY291bnQgPSAwOwor
ICAgIEFMTE9DX1NUQUNLOworCisgICAgLyogRklYTUU6IE1ha2UgdGhlIHNlZWQgcmFuZG9tICh3
aXRoIG9wdGlvbiB0byBzZXQgaXQgZXhwbGljaXRseSkKKyAgICAgICBzbyB3ZSBnZXQgd2lkZXIg
Y292ZXJhZ2UuICovCisgICAgc3JhbmQoMCk7CisKKyAgICBwcmludGYoIlRlc3Rpbmcgc2lsa19M
UENfaW52ZXJzZV9wcmVkX2dhaW4oKSBvcHRpbWl6YXRpb24gLi4uXG4iKTsKKyAgICBmb3IoIGNv
dW50ID0gMDsgY291bnQgPCBsb29wX251bTsgY291bnQrKyApIHsKKyAgICAgICAgdW5zaWduZWQg
aW50IGk7CisgICAgICAgIG9wdXNfaW50ICAgICBvcmRlcjsKKyAgICAgICAgdW5zaWduZWQgaW50
IHNoaWZ0OworICAgICAgICBvcHVzX2ludDE2ICAgQV9RMTJbIFNJTEtfTUFYX09SREVSX0xQQyBd
OworICAgICAgICBvcHVzX2ludDMyIGdhaW47CisKKyAgICAgICAgZm9yKCBvcmRlciA9IDI7IG9y
ZGVyIDw9IFNJTEtfTUFYX09SREVSX0xQQzsgb3JkZXIgKz0gMiApIHsgLyogb3JkZXIgbXVzdCBi
ZSBldmVuLiAqLworICAgICAgICAgICAgZm9yKCBzaGlmdCA9IDA7IHNoaWZ0IDwgMTY7IHNoaWZ0
KysgKSB7IC8qIERpZmZlcmVudCBkeW5hbWljIHJhbmdlLiAqLworICAgICAgICAgICAgICAgIGZv
ciggaSA9IDA7IGkgPCBTSUxLX01BWF9PUkRFUl9MUEM7IGkrKyApIHsKKyAgICAgICAgICAgICAg
ICAgICAgQV9RMTJbaV0gPSAoKG9wdXNfaW50MTYpcmFuZCgpKSA+PiBzaGlmdDsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgZ2FpbiA9IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9n
YWluKEFfUTEyLCBvcmRlciwgYXJjaCk7CisgICAgICAgICAgICAgICAgLyogTG9vayBmb3IgZmls
dGVycyB0aGF0IHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKCkgdGhpbmtzIGFyZQorICAgICAg
ICAgICAgICAgICAgIHN0YWJsZSBidXQgZGVmaW5pdGVseSBhcmVuJ3QuICovCisgICAgICAgICAg
ICAgICAgaWYoIGdhaW4gIT0gMCAmJiAhY2hlY2tfc3RhYmlsaXR5KEFfUTEyLCBvcmRlcikgKSB7
CisgICAgICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiKipMb29wICU0ZCBmYWlsZWQh
KipcbiIsIGNvdW50KTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmKCAhKGNvdW50ICUg
NTAwKSApIHsKKyAgICAgICAgICAgIHByaW50ZigiTG9vcCAlNGQgcGFzc2VkXG4iLCBjb3VudCk7
CisgICAgICAgIH0KKyAgICB9CisgICAgcHJpbnRmKCJzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fp
bigpIG9wdGltaXphdGlvbiBwYXNzZWRcbiIpOworICAgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL3R1bmluZ19wYXJhbWV0ZXJzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdHVuaW5nX3BhcmFtZXRlcnMuaAppbmRl
eCA1YjhmNDA0MjM1ZjQ5MWQ5YjRiZWRhYTQ4ZjM5NDIzMDdlN2QxMmExLi5kNzAyNzVmZDhmNWRk
MTVlM2M2OGJkMjhkMzIxNWI0MGM0OWJiZTU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdHVuaW5nX3BhcmFt
ZXRlcnMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvdHVuaW5nX3BhcmFtZXRlcnMuaApAQCAtNTMsMTkgKzUzLDEyIEBA
IGV4dGVybiAiQyIKIC8qIExQQyBhbmFseXNpcyByZWd1bGFyaXphdGlvbiAqLwogI2RlZmluZSBG
SU5EX0xQQ19DT05EX0ZBQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxZS01ZgogCi0v
KiBMVFAgYW5hbHlzaXMgZGVmaW5lcyAqLwotI2RlZmluZSBGSU5EX0xUUF9DT05EX0ZBQyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAxZS01ZgotI2RlZmluZSBMVFBfREFNUElORyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjA1ZgotI2RlZmluZSBMVFBfU01PT1RI
SU5HICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjFmCi0KLS8qIExUUCBxdWFu
dGl6YXRpb24gc2V0dGluZ3MgKi8KLSNkZWZpbmUgTVVfTFRQX1FVQU5UX05CICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgMC4wM2YKLSNkZWZpbmUgTVVfTFRQX1FVQU5UX01CICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wMjVmCi0jZGVmaW5lIE1VX0xUUF9RVUFOVF9X
QiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMDJmCi0KIC8qIE1heCBjdW11bGF0
aXZlIExUUCBnYWluICovCiAjZGVmaW5lIE1BWF9TVU1fTE9HX0dBSU5fREIgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDI1MC4wZgogCisvKiBMVFAgYW5hbHlzaXMgZGVmaW5lcyAqLworI2Rl
ZmluZSBMVFBfQ09SUl9JTlZfTUFYICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjAz
ZgorCiAvKioqKioqKioqKioqKioqKioqKioqKiovCiAvKiBIaWdoIHBhc3MgZmlsdGVyaW5nICov
CiAvKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0xMDMsMjUgKzk2LDE2IEBAIGV4dGVybiAi
QyIKICNkZWZpbmUgU1BBUlNFX1NOUl9JTkNSX2RCICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgMi4wZgogCiAvKiB0aHJlc2hvbGQgZm9yIHNwYXJzZW5lc3MgbWVhc3VyZSBhYm92ZSB3aGlj
aCB0byB1c2UgbG93ZXIgcXVhbnRpemF0aW9uIG9mZnNldCBkdXJpbmcgdW52b2ljZWQgKi8KLSNk
ZWZpbmUgU1BBUlNFTkVTU19USFJFU0hPTERfUU5UX09GRlNFVCAgICAgICAgICAgICAgICAgMC43
NWYKKyNkZWZpbmUgRU5FUkdZX1ZBUklBVElPTl9USFJFU0hPTERfUU5UX09GRlNFVCAgICAgICAg
ICAgMC42ZgogCiAvKiB3YXJwaW5nIGNvbnRyb2wgKi8KICNkZWZpbmUgV0FSUElOR19NVUxUSVBM
SUVSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wMTVmCiAKIC8qIGZyYWN0aW9uIGFk
ZGVkIHRvIGZpcnN0IGF1dG9jb3JyZWxhdGlvbiB2YWx1ZSAqLwotI2RlZmluZSBTSEFQRV9XSElU
RV9OT0lTRV9GUkFDVElPTiAgICAgICAgICAgICAgICAgICAgICA1ZS01ZgorI2RlZmluZSBTSEFQ
RV9XSElURV9OT0lTRV9GUkFDVElPTiAgICAgICAgICAgICAgICAgICAgICAzZS01ZgogCiAvKiBu
b2lzZSBzaGFwaW5nIGZpbHRlciBjaGlycCBmYWN0b3IgKi8KLSNkZWZpbmUgQkFORFdJRFRIX0VY
UEFOU0lPTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC45NWYKLQotLyogZGlmZmVyZW5j
ZSBiZXR3ZWVuIGNoaXJwIGZhY3RvcnMgZm9yIGFuYWx5c2lzIGFuZCBzeW50aGVzaXMgbm9pc2Ug
c2hhcGluZyBmaWx0ZXJzIGF0IGxvdyBiaXRyYXRlcyAqLwotI2RlZmluZSBMT1dfUkFURV9CQU5E
V0lEVEhfRVhQQU5TSU9OX0RFTFRBICAgICAgICAgICAgICAwLjAxZgotCi0vKiBleHRyYSBoYXJt
b25pYyBib29zdGluZyAoc2lnbmFsIHNoYXBpbmcpIGF0IGxvdyBiaXRyYXRlcyAqLwotI2RlZmlu
ZSBMT1dfUkFURV9IQVJNT05JQ19CT09TVCAgICAgICAgICAgICAgICAgICAgICAgICAwLjFmCi0K
LS8qIGV4dHJhIGhhcm1vbmljIGJvb3N0aW5nIChzaWduYWwgc2hhcGluZykgZm9yIG5vaXN5IGlu
cHV0IHNpZ25hbHMgKi8KLSNkZWZpbmUgTE9XX0lOUFVUX1FVQUxJVFlfSEFSTU9OSUNfQk9PU1Qg
ICAgICAgICAgICAgICAgMC4xZgorI2RlZmluZSBCQU5EV0lEVEhfRVhQQU5TSU9OICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAwLjk0ZgogCiAvKiBoYXJtb25pYyBub2lzZSBzaGFwaW5nICov
CiAjZGVmaW5lIEhBUk1PTklDX1NIQVBJTkcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDAuM2YKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYvTlNRX2RlbF9kZWNfc3NlLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L05T
UV9kZWxfZGVjX3NzZS5jCmluZGV4IDIxZDRhOGJjMWU5NjBhZjlhOTVhYjIwMmNjOTUxZDE0YzA0
NjAxYjMuLmM1MjEyYmVlOGQzYTFiMWMyMTYyY2U4MzI2ODExNDViYjc0N2M3NmIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay94ODYvTlNRX2RlbF9kZWNfc3NlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni9OU1FfZGVsX2RlY19z
c2UuYwpAQCAtMTA3LDEyICsxMDcsMTIgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19u
b2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlY19zc2U0XzEoCiAgICAgb3B1c19pbnQgICAgICAg
ICAgICBwcmVkaWN0TFBDT3JkZXIsICAgICAgICAvKiBJICAgIFByZWRpY3Rpb24gZmlsdGVyIG9y
ZGVyICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICB3YXJwaW5nX1ExNiwg
ICAgICAgICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgb3B1c19pbnQgICAgICAgICAgICBuU3RhdGVzRGVsYXllZERlY2lzaW9uLCAvKiBJICAg
IE51bWJlciBvZiBzdGF0ZXMgaW4gZGVjaXNpb24gdHJlZSAgICovCi0gICAgb3B1c19pbnQgICAg
ICAgICAgICAqc21wbF9idWZfaWR4LCAgICAgICAgICAvKiBJICAgIEluZGV4IHRvIG5ld2VzdCBz
YW1wbGVzIGluIGJ1ZmZlcnMgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9idWZf
aWR4LCAgICAgICAgICAvKiBJL08gIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZlcnMg
ICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICBkZWNpc2lvbkRlbGF5ICAgICAgICAgICAvKiBJ
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCiB2b2lkIHNp
bGtfTlNRX2RlbF9kZWNfc3NlNF8xKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAq
cHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2Rl
ciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0
ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
RW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAg
ICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5k
aWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwogICAgIGNvbnN0
IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLwpAQCAt
MjM0LDcgKzIzNCw4IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19zc2U0XzEoCiAgICAgICAgICAg
ICAgICAgICAgIHBzREQgPSAmcHNEZWxEZWNbIFdpbm5lcl9pbmQgXTsKICAgICAgICAgICAgICAg
ICAgICAgbGFzdF9zbXBsZV9pZHggPSBzbXBsX2J1Zl9pZHggKyBkZWNpc2lvbkRlbGF5OwogICAg
ICAgICAgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgZGVjaXNpb25EZWxheTsgaSsrICkgewot
ICAgICAgICAgICAgICAgICAgICAgICAgbGFzdF9zbXBsZV9pZHggPSAoIGxhc3Rfc21wbGVfaWR4
IC0gMSApICYgREVDSVNJT05fREVMQVlfTUFTSzsKKyAgICAgICAgICAgICAgICAgICAgICAgIGxh
c3Rfc21wbGVfaWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAlIERFQ0lTSU9OX0RFTEFZOwor
ICAgICAgICAgICAgICAgICAgICAgICAgaWYoIGxhc3Rfc21wbGVfaWR4IDwgMCApIGxhc3Rfc21w
bGVfaWR4ICs9IERFQ0lTSU9OX0RFTEFZOwogICAgICAgICAgICAgICAgICAgICAgICAgcHVsc2Vz
WyAgIGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQ4KXNpbGtfUlNISUZUX1JPVU5EKCBw
c0RELT5RX1ExMFsgbGFzdF9zbXBsZV9pZHggXSwgMTAgKTsKICAgICAgICAgICAgICAgICAgICAg
ICAgIHB4cVsgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNp
bGtfUlNISUZUX1JPVU5EKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpbGtfU01VTFdX
KCBwc0RELT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IF0sIEdhaW5zX1ExNlsgMSBdICksIDE0ICkg
KTsKQEAgLTI4NSw3ICsyODYsOCBAQCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfc3NlNF8xKAogICAg
IGxhc3Rfc21wbGVfaWR4ID0gc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheTsKICAgICBHYWlu
X1ExMCA9IHNpbGtfUlNISUZUMzIoIEdhaW5zX1ExNlsgcHNFbmNDLT5uYl9zdWJmciAtIDEgXSwg
NiApOwogICAgIGZvciggaSA9IDA7IGkgPCBkZWNpc2lvbkRlbGF5OyBpKysgKSB7Ci0gICAgICAg
IGxhc3Rfc21wbGVfaWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAmIERFQ0lTSU9OX0RFTEFZ
X01BU0s7CisgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAl
IERFQ0lTSU9OX0RFTEFZOworICAgICAgICBpZiggbGFzdF9zbXBsZV9pZHggPCAwICkgbGFzdF9z
bXBsZV9pZHggKz0gREVDSVNJT05fREVMQVk7CiAgICAgICAgIHB1bHNlc1sgICBpIC0gZGVjaXNp
b25EZWxheSBdID0gKG9wdXNfaW50OClzaWxrX1JTSElGVF9ST1VORCggcHNERC0+UV9RMTBbIGxh
c3Rfc21wbGVfaWR4IF0sIDEwICk7CiAgICAgICAgIHB4cVsgaSAtIGRlY2lzaW9uRGVsYXkgXSA9
IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKAogICAgICAgICAgICAg
c2lsa19TTVVMV1coIHBzREQtPlhxX1ExNFsgbGFzdF9zbXBsZV9pZHggXSwgR2Fpbl9RMTAgKSwg
OCApICk7CkBAIC0yOTksNyArMzAxLDYgQEAgdm9pZCBzaWxrX05TUV9kZWxfZGVjX3NzZTRfMSgK
ICAgICBOU1EtPmxhZ1ByZXYgICAgICAgID0gcGl0Y2hMWyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBd
OwogCiAgICAgLyogU2F2ZSBxdWFudGl6ZWQgc3BlZWNoIHNpZ25hbCAqLwotICAgIC8qIERFQlVH
X1NUT1JFX0RBVEEoIGVuYy5wY20sICZOU1EtPnhxW3BzRW5jQy0+bHRwX21lbV9sZW5ndGhdLCBw
c0VuY0MtPmZyYW1lX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQxNiApICkgKi8KICAgICBzaWxr
X21lbW1vdmUoIE5TUS0+eHEsICAgICAgICAgICAmTlNRLT54cVsgICAgICAgICAgIHBzRW5jQy0+
ZnJhbWVfbGVuZ3RoIF0sIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50
MTYgKSApOwogICAgIHNpbGtfbWVtbW92ZSggTlNRLT5zTFRQX3NocF9RMTQsICZOU1EtPnNMVFBf
c2hwX1ExNFsgcHNFbmNDLT5mcmFtZV9sZW5ndGggXSwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAq
IHNpemVvZiggb3B1c19pbnQzMiApICk7CiAgICAgUkVTVE9SRV9TVEFDSzsKQEAgLTMzMyw3ICsz
MzQsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXpl
cl9kZWxfZGVjX3NzZTRfMSgKICAgICBvcHVzX2ludCAgICAgICAgICAgIHByZWRpY3RMUENPcmRl
ciwgICAgICAgIC8qIEkgICAgUHJlZGljdGlvbiBmaWx0ZXIgb3JkZXIgICAgICAgICAgICAgKi8K
ICAgICBvcHVzX2ludCAgICAgICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAgICAgIC8qIEkgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAg
ICAgICAgIG5TdGF0ZXNEZWxheWVkRGVjaXNpb24sIC8qIEkgICAgTnVtYmVyIG9mIHN0YXRlcyBp
biBkZWNpc2lvbiB0cmVlICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9p
ZHgsICAgICAgICAgIC8qIEkgICAgSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAg
Ki8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkv
TyAgSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAgKi8KICAgICBvcHVzX2ludCAg
ICAgICAgICAgIGRlY2lzaW9uRGVsYXkgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKQEAgLTYzOCw4ICs2MzksOSBAQCBzdGF0aWMg
T1BVU19JTkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjX3NzZTRf
MSgKICAgICAgICAgICAgICAgICBwc1NTWyAxIF0ueHFfUTE0ICAgICAgID0geHFfUTE0OwogICAg
ICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgICpzbXBsX2J1Zl9pZHggID0gKCAqc21wbF9i
dWZfaWR4IC0gMSApICYgREVDSVNJT05fREVMQVlfTUFTSzsgICAgICAgICAgICAgICAgICAgLyog
SW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgICAgICAgICAgICAgICovCi0gICAgICAgIGxhc3Rfc21w
bGVfaWR4ID0gKCAqc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheSApICYgREVDSVNJT05fREVM
QVlfTUFTSzsgICAgICAgLyogSW5kZXggdG8gZGVjaXNpb25EZWxheSBvbGQgc2FtcGxlcyAgICov
CisgICAgICAgICpzbXBsX2J1Zl9pZHggID0gKCAqc21wbF9idWZfaWR4IC0gMSApICUgREVDSVNJ
T05fREVMQVk7CisgICAgICAgIGlmKCAqc21wbF9idWZfaWR4IDwgMCApICpzbXBsX2J1Zl9pZHgg
Kz0gREVDSVNJT05fREVMQVk7CisgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCAqc21wbF9idWZf
aWR4ICsgZGVjaXNpb25EZWxheSApICUgREVDSVNJT05fREVMQVk7CiAKICAgICAgICAgLyogRmlu
ZCB3aW5uZXIgKi8KICAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0ZVsgMCBdWyAwIF0u
UkRfUTEwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni9OU1Ffc3NlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L05TUV9zc2Uu
YwppbmRleCBiYjNjNWYxOTU1NzBlYmNkODdkZGM2YjBmNmY0MDBiY2NlM2IyMTI3Li42YTllNmU5
NmNmYWI4NWM0N2FlZGQ1MmFkY2E1ZWM0YjQ2MmFiODE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L05T
UV9zc2UuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsveDg2L05TUV9zc2UuYwpAQCAtNzEsNyArNzEsNyBAQCBzdGF0aWMg
T1BVU19JTkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl8xMF8xNl9zc2U0XzEo
CiApOwogCiB2b2lkIHNpbGtfTlNRX3NzZTRfMSgKLSAgICBjb25zdCBzaWxrX2VuY29kZXJfc3Rh
dGUgICAgKnBzRW5jQywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08g
IEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2VuY29k
ZXJfc3RhdGUgICAgKnBzRW5jQywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX25zcV9z
dGF0ZSAgICAgICAgICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBTaWRl
SW5mb0luZGljZXMgICAgICAgICAgICAgKnBzSW5kaWNlcywgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJL08gIFF1YW50aXphdGlvbiBJbmRpY2VzICAgICAgICAgICAgKi8KICAg
ICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgeF9RM1tdLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIFByZWZpbHRlcmVkIGlucHV0IHNpZ25hbCAgICAgICAg
Ki8KQEAgLTIzMyw3ICsyMzMsNiBAQCB2b2lkIHNpbGtfTlNRX3NzZTRfMSgKICAgICBOU1EtPmxh
Z1ByZXYgPSBwaXRjaExbIHBzRW5jQy0+bmJfc3ViZnIgLSAxIF07CiAKICAgICAvKiBTYXZlIHF1
YW50aXplZCBzcGVlY2ggYW5kIG5vaXNlIHNoYXBpbmcgc2lnbmFscyAqLwotICAgIC8qIERFQlVH
X1NUT1JFX0RBVEEoIGVuYy5wY20sICZOU1EtPnhxWyBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoIF0s
IHBzRW5jQy0+ZnJhbWVfbGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKSAqLwogICAgIHNp
bGtfbWVtbW92ZSggTlNRLT54cSwgICAgICAgICAgICZOU1EtPnhxWyAgICAgICAgICAgcHNFbmND
LT5mcmFtZV9sZW5ndGggXSwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAqIHNpemVvZiggb3B1c19p
bnQxNiApICk7CiAgICAgc2lsa19tZW1tb3ZlKCBOU1EtPnNMVFBfc2hwX1ExNCwgJk5TUS0+c0xU
UF9zaHBfUTE0WyBwc0VuY0MtPmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3Ro
ICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKICAgICBSRVNUT1JFX1NUQUNLOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL3g4Ni9tYWluX3NzZS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni9tYWluX3NzZS5oCmluZGV4IGQ4ZDYxMzEw
ZWRjZjk2ZTAxZWFlZDQyNDY4ZTMyN2I5ZGUyZDRhMzguLjJmMTVkNDQ4Njk3ODFjNDM1MDE0ZGQx
ZGRiMmMwMjQyM2IxNmUzYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYvbWFpbl9zc2UuaAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsveDg2L21haW5fc3NlLmgKQEAgLTM0LDYgKzM0LDcgQEAKIAogIyBpZiBkZWZpbmVkKE9QVVNf
WDg2X01BWV9IQVZFX1NTRTRfMSkKIAorI2lmIDAgLyogRklYTUU6IFNTRSBkaXNhYmxlZCB1bnRp
bCBzaWxrX1ZRX1dNYXRfRUNfc3NlNF8xKCkgZ2V0cyB1cGRhdGVkLiAqLwogIyAgZGVmaW5lIE9W
RVJSSURFX3NpbGtfVlFfV01hdF9FQwogCiB2b2lkIHNpbGtfVlFfV01hdF9FQ19zc2U0XzEoCkBA
IC03OSwxMSArODAsMTMgQEAgZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxLX1ZRX1dNQVRfRUNfSU1Q
TFtPUFVTX0FSQ0hNQVNLICsgMV0pKAogICAgICAgICAgICAgICAgICAgICAgICAgICBtdV9ROSwg
bWF4X2dhaW5fUTcsIEwpKQogCiAjZW5kaWYKKyNlbmRpZgogCisjaWYgMCAvKiBGSVhNRTogU1NF
IGRpc2FibGVkIHVudGlsIHRoZSBOU1EgY29kZSBnZXRzIHVwZGF0ZWQuICovCiAjICBkZWZpbmUg
T1ZFUlJJREVfc2lsa19OU1EKIAogdm9pZCBzaWxrX05TUV9zc2U0XzEoCi0gICAgY29uc3Qgc2ls
a19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCisgICAgY29u
c3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAg
ICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGljZXMsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAg
ICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNbXSwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBz
aWduYWwgICAgICAgICovCkBAIC0xMTAsNyArMTEzLDcgQEAgdm9pZCBzaWxrX05TUV9zc2U0XzEo
CiAjZWxzZQogCiBleHRlcm4gdm9pZCAoKmNvbnN0IFNJTEtfTlNRX0lNUExbT1BVU19BUkNITUFT
SyArIDFdKSgKLSAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgICAgKnBzRW5jQywgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIEVuY29kZXIgU3RhdGUgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgICAgKnBzRW5jQywg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEVuY29kZXIgU3RhdGUg
ICAgICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX25zcV9zdGF0ZSAgICAgICAgICAgICAgKk5T
USwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0
ZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBTaWRlSW5mb0luZGljZXMgICAgICAgICAg
ICAgKnBzSW5kaWNlcywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFF1
YW50aXphdGlvbiBJbmRpY2VzICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDMyICAg
ICAgICAgICAgeF9RM1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIFByZWZpbHRlcmVkIGlucHV0IHNpZ25hbCAgICAgICAgKi8KQEAgLTEzNyw3ICsxNDAsNyBA
QCBleHRlcm4gdm9pZCAoKmNvbnN0IFNJTEtfTlNRX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgK
ICMgIGRlZmluZSBPVkVSUklERV9zaWxrX05TUV9kZWxfZGVjCiAKIHZvaWQgc2lsa19OU1FfZGVs
X2RlY19zc2U0XzEoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAg
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0Vu
Y0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0
YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAg
ICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Eg
c3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAg
ICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9P
ICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQz
MiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCkBAIC0xNjQsNyArMTY3
LDcgQEAgdm9pZCBzaWxrX05TUV9kZWxfZGVjX3NzZTRfMSgKICNlbHNlCiAKIGV4dGVybiB2b2lk
ICgqY29uc3QgU0lMS19OU1FfREVMX0RFQ19JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCi0gICAg
Y29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICov
CisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAg
ICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGljZXMs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5k
aWNlcyAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNb
XSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJl
ZCBpbnB1dCBzaWduYWwgICAgICAgICovCkBAIC0xODcsNiArMTkwLDcgQEAgZXh0ZXJuIHZvaWQg
KCpjb25zdCBTSUxLX05TUV9ERUxfREVDX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hw
X1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIExhbWJkYV9RMTAsIExUUF9zY2FsZV9RMTQpKQogCiAj
ZW5kaWYKKyNlbmRpZgogCiB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyKAogICAgIHNp
bGtfbnNxX3N0YXRlICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3Rh
dGUgICAgICAgICAgICAgICAgICAgICAgICovCkBAIC0yMzgsMzkgKzI0Miw2IEBAIGV4dGVybiBv
cHVzX2ludCAoKmNvbnN0IFNJTEtfVkFEX0dFVFNBX1E4X0lNUExbT1BVU19BUkNITUFTSyArIDFd
KSgKICAgICAgc2lsa19lbmNvZGVyX3N0YXRlICpwc0VuQywKICAgICAgY29uc3Qgb3B1c19pbnQx
NiAgIHBJbltdKTsKIAotIyAgZGVmaW5lIE9WRVJSSURFX3NpbGtfd2FycGVkX0xQQ19hbmFseXNp
c19maWx0ZXJfRklYCi0KLSNlbmRpZgotCi12b2lkIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19m
aWx0ZXJfRklYX3NzZTRfMSgKLSAgICAgICAgICBvcHVzX2ludDMyICAgICAgICAgICAgc3RhdGVb
XSwgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgU3RhdGUgW29yZGVyICsgMV0gICAgICAgICAg
ICAgICAgICAgKi8KLSAgICAgICAgICBvcHVzX2ludDMyICAgICAgICAgICAgcmVzX1EyW10sICAg
ICAgICAgICAgICAgICAgIC8qIE8gICAgUmVzaWR1YWwgc2lnbmFsIFtsZW5ndGhdICAgICAgICAg
ICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgY29lZl9RMTNbXSwgICAgICAg
ICAgICAgICAgIC8qIEkgICAgQ29lZmZpY2llbnRzIFtvcmRlcl0gICAgICAgICAgICAgICAgKi8K
LSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgaW5wdXRbXSwgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgSW5wdXQgc2lnbmFsIFtsZW5ndGhdICAgICAgICAgICAgICAgKi8KLSAgICBj
b25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgbGFtYmRhX1ExNiwgICAgICAgICAgICAgICAgIC8q
IEkgICAgV2FycGluZyBmYWN0b3IgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
TGVuZ3RoIG9mIGlucHV0IHNpZ25hbCAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRmlsdGVy
IG9yZGVyIChldmVuKSAgICAgICAgICAgICAgICAgKi8KLSk7Ci0KLSNpZiBkZWZpbmVkKE9QVVNf
WDg2X1BSRVNVTUVfU1NFNF8xKQotI2RlZmluZSBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmls
dGVyX0ZJWChzdGF0ZSwgcmVzX1EyLCBjb2VmX1ExMywgaW5wdXQsIGxhbWJkYV9RMTYsIGxlbmd0
aCwgb3JkZXIsIGFyY2gpIFwKLSAgICAoKHZvaWQpKGFyY2gpLHNpbGtfd2FycGVkX0xQQ19hbmFs
eXNpc19maWx0ZXJfRklYX2Moc3RhdGUsIHJlc19RMiwgY29lZl9RMTMsIGlucHV0LCBsYW1iZGFf
UTE2LCBsZW5ndGgsIG9yZGVyKSkKLQotI2Vsc2UKLQotZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxL
X1dBUlBFRF9MUENfQU5BTFlTSVNfRklMVEVSX0ZJWF9JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSko
Ci0gICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgIHN0YXRlW10sICAgICAgICAgICAgICAg
ICAgICAvKiBJL08gIFN0YXRlIFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICovCi0gICAg
ICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgIHJlc19RMltdLCAgICAgICAgICAgICAgICAgICAv
KiBPICAgIFJlc2lkdWFsIHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICovCi0gICAgY29uc3Qg
b3B1c19pbnQxNiAgICAgICAgICAgIGNvZWZfUTEzW10sICAgICAgICAgICAgICAgICAvKiBJICAg
IENvZWZmaWNpZW50cyBbb3JkZXJdICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19p
bnQxNiAgICAgICAgICAgIGlucHV0W10sICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0
IHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAg
ICAgICAgICAgIGxhbWJkYV9RMTYsICAgICAgICAgICAgICAgICAvKiBJICAgIFdhcnBpbmcgZmFj
dG9yICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1dCBz
aWduYWwgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG9y
ZGVyICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAoZXZlbikgICAg
ICAgICAgICAgICAgICovCi0pOwotCi0jICBkZWZpbmUgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lz
X2ZpbHRlcl9GSVgoc3RhdGUsIHJlc19RMiwgY29lZl9RMTMsIGlucHV0LCBsYW1iZGFfUTE2LCBs
ZW5ndGgsIG9yZGVyLCBhcmNoKSBcCi0gICAgKCgqU0lMS19XQVJQRURfTFBDX0FOQUxZU0lTX0ZJ
TFRFUl9GSVhfSU1QTFsoYXJjaCkgJiBPUFVTX0FSQ0hNQVNLXSkoc3RhdGUsIHJlc19RMiwgY29l
Zl9RMTMsIGlucHV0LCBsYW1iZGFfUTE2LCBsZW5ndGgsIG9yZGVyKSkKLQogI2VuZGlmCiAKICMg
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYveDg2X3NpbGtfbWFwLmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L3g4Nl9z
aWxrX21hcC5jCmluZGV4IDgxODg0MWYyYzE5MDc5OWYzM2EzZmFkODllZGVmNjFhY2UxYWM3MTYu
LjMyZGNjM2NhYjdhOTNiZDZjMzUwOWE4OWQ0YjgwNzcxYWFkMmRkZjUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay94ODYveDg2X3NpbGtfbWFwLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni94ODZfc2lsa19tYXAuYwpAQCAtNjYs
OCArNjYsOSBAQCBvcHVzX2ludCAoKmNvbnN0IFNJTEtfVkFEX0dFVFNBX1E4X0lNUExbIE9QVVNf
QVJDSE1BU0sgKyAxIF0gKSgKICAgTUFZX0hBVkVfU1NFNF8xKCBzaWxrX1ZBRF9HZXRTQV9ROCAp
ICAvKiBhdnggKi8KIH07CiAKKyNpZiAwIC8qIEZJWE1FOiBTU0UgZGlzYWJsZWQgdW50aWwgdGhl
IE5TUSBjb2RlIGdldHMgdXBkYXRlZC4gKi8KIHZvaWQgKCpjb25zdCBTSUxLX05TUV9JTVBMWyBP
UFVTX0FSQ0hNQVNLICsgMSBdICkoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpw
c0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVy
IFN0YXRlICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRl
ICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBF
bmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAg
ICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRp
Y2VzICAgICAgICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCiAgICAgY29uc3Qg
b3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCkBAIC04
OSw3ICs5MCw5IEBAIHZvaWQgKCpjb25zdCBTSUxLX05TUV9JTVBMWyBPUFVTX0FSQ0hNQVNLICsg
MSBdICkoCiAgIE1BWV9IQVZFX1NTRTRfMSggc2lsa19OU1EgKSwgLyogc3NlNC4xICovCiAgIE1B
WV9IQVZFX1NTRTRfMSggc2lsa19OU1EgKSAgLyogYXZ4ICovCiB9OworI2VuZGlmCiAKKyNpZiAw
IC8qIEZJWE1FOiBTU0UgZGlzYWJsZWQgdW50aWwgc2lsa19WUV9XTWF0X0VDX3NzZTRfMSgpIGdl
dHMgdXBkYXRlZC4gKi8KIHZvaWQgKCpjb25zdCBTSUxLX1ZRX1dNQVRfRUNfSU1QTFsgT1BVU19B
UkNITUFTSyArIDEgXSApKAogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICAqaW5kLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgaW5kZXggb2YgYmVzdCBjb2RlYm9vayB2
ZWN0b3IgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAq
cmF0ZV9kaXN0X1ExNCwgICAgICAgICAgICAgICAgIC8qIE8gICAgYmVzdCB3ZWlnaHRlZCBxdWFu
dCBlcnJvciArIG11ICogcmF0ZSAgICAgICAqLwpAQCAtMTA5LDkgKzExMiwxMSBAQCB2b2lkICgq
Y29uc3QgU0lMS19WUV9XTUFUX0VDX0lNUExbIE9QVVNfQVJDSE1BU0sgKyAxIF0gKSgKICAgTUFZ
X0hBVkVfU1NFNF8xKCBzaWxrX1ZRX1dNYXRfRUMgKSwgLyogc3NlNC4xICovCiAgIE1BWV9IQVZF
X1NTRTRfMSggc2lsa19WUV9XTWF0X0VDICkgIC8qIGF2eCAqLwogfTsKKyNlbmRpZgogCisjaWYg
MCAvKiBGSVhNRTogU1NFIGRpc2FibGVkIHVudGlsIHRoZSBOU1EgY29kZSBnZXRzIHVwZGF0ZWQu
ICovCiB2b2lkICgqY29uc3QgU0lMS19OU1FfREVMX0RFQ19JTVBMWyBPUFVTX0FSQ0hNQVNLICsg
MSBdICkoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAg
ICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAg
ICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAgICpOU1Es
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUg
ICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAgICAgICAg
ICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFu
dGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAg
ICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCkBAIC0xMzMsMjUgKzEzOCwxMCBA
QCB2b2lkICgqY29uc3QgU0lMS19OU1FfREVMX0RFQ19JTVBMWyBPUFVTX0FSQ0hNQVNLICsgMSBd
ICkoCiAgIE1BWV9IQVZFX1NTRTRfMSggc2lsa19OU1FfZGVsX2RlYyApLCAvKiBzc2U0LjEgKi8K
ICAgTUFZX0hBVkVfU1NFNF8xKCBzaWxrX05TUV9kZWxfZGVjICkgIC8qIGF2eCAqLwogfTsKKyNl
bmRpZgogCiAjaWYgZGVmaW5lZChGSVhFRF9QT0lOVCkKIAotdm9pZCAoKmNvbnN0IFNJTEtfV0FS
UEVEX0xQQ19BTkFMWVNJU19GSUxURVJfRklYX0lNUExbIE9QVVNfQVJDSE1BU0sgKyAxIF0gKSgK
LSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgc3RhdGVbXSwgICAgICAgICAgICAgICAg
ICAgIC8qIEkvTyAgU3RhdGUgW29yZGVyICsgMV0gICAgICAgICAgICAgICAgICAgKi8KLSAgICBv
cHVzX2ludDMyICAgICAgICAgICAgICAgICAgcmVzX1EyW10sICAgICAgICAgICAgICAgICAgIC8q
IE8gICAgUmVzaWR1YWwgc2lnbmFsIFtsZW5ndGhdICAgICAgICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludDE2ICAgICAgICAgICAgY29lZl9RMTNbXSwgICAgICAgICAgICAgICAgIC8qIEkgICAg
Q29lZmZpY2llbnRzIFtvcmRlcl0gICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2lu
dDE2ICAgICAgICAgICAgaW5wdXRbXSwgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQg
c2lnbmFsIFtsZW5ndGhdICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgbGFtYmRhX1ExNiwgICAgICAgICAgICAgICAgIC8qIEkgICAgV2FycGluZyBmYWN0
b3IgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAg
ICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTGVuZ3RoIG9mIGlucHV0IHNp
Z25hbCAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3Jk
ZXIgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRmlsdGVyIG9yZGVyIChldmVuKSAgICAg
ICAgICAgICAgICAgKi8KLSkgPSB7Ci0gIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJf
RklYX2MsICAgICAgICAgICAgICAgICAgLyogbm9uLXNzZSAqLwotICBzaWxrX3dhcnBlZF9MUENf
YW5hbHlzaXNfZmlsdGVyX0ZJWF9jLAotICBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVy
X0ZJWF9jLAotICBNQVlfSEFWRV9TU0U0XzEoIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0
ZXJfRklYICksIC8qIHNzZTQuMSAqLwotICBNQVlfSEFWRV9TU0U0XzEoIHNpbGtfd2FycGVkX0xQ
Q19hbmFseXNpc19maWx0ZXJfRklYICkgIC8qIGF2eCAqLwotfTsKLQogdm9pZCAoKmNvbnN0IFNJ
TEtfQlVSR19NT0RJRklFRF9JTVBMWyBPUFVTX0FSQ0hNQVNLICsgMSBdICkoCiAgICAgb3B1c19p
bnQzMiAgICAgICAgICAgICAgICAgICpyZXNfbnJnLCAgICAgICAgICAgLyogTyAgICBSZXNpZHVh
bCBlbmVyZ3kgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAqcmVzX25yZ19RLCAgICAgICAgIC8qIE8g
ICAgUmVzaWR1YWwgZW5lcmd5IFEgdmFsdWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL2FuYWx5c2lzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5jCmluZGV4
IDY2MzQzMWE0MzZhMWM4MWE5YmE3M2ZmMmE2ZjJkN2ZmZmFlYmIxNTguLmY0MTYwZTRiNGVkNWMx
MTRjZjdkNjEwZGJkOTdhMTU2OTA2MGEwNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL2FuYWx5c2lzLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zcmMvYW5hbHlzaXMuYwpAQCAtMjksMjAgKzI5LDI3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjZW5kaWYKIAorI2RlZmluZSBBTkFMWVNJU19DCisKKyNpbmNsdWRlIDxzdGRpby5oPgorCisj
aW5jbHVkZSAibWF0aG9wcy5oIgogI2luY2x1ZGUgImtpc3NfZmZ0LmgiCiAjaW5jbHVkZSAiY2Vs
dC5oIgogI2luY2x1ZGUgIm1vZGVzLmgiCiAjaW5jbHVkZSAiYXJjaC5oIgogI2luY2x1ZGUgInF1
YW50X2JhbmRzLmgiCi0jaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlICJhbmFseXNpcy5oIgog
I2luY2x1ZGUgIm1scC5oIgogI2luY2x1ZGUgInN0YWNrX2FsbG9jLmgiCisjaW5jbHVkZSAiZmxv
YXRfY2FzdC5oIgogCiAjaWZuZGVmIE1fUEkKICNkZWZpbmUgTV9QSSAzLjE0MTU5MjY1MwogI2Vu
ZGlmCiAKKyNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKKwogc3RhdGljIGNvbnN0IGZsb2F0IGRj
dF90YWJsZVsxMjhdID0gewogICAgICAgICAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBm
LCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwK
ICAgICAgICAgMC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1
MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1MDAwMGYsCkBAIC05Niw1MiArMTAzLDEx
OCBAQCBzdGF0aWMgY29uc3QgZmxvYXQgYW5hbHlzaXNfd2luZG93WzI0MF0gPSB7CiB9OwogCiBz
dGF0aWMgY29uc3QgaW50IHRiYW5kc1tOQl9UQkFORFMrMV0gPSB7Ci0gICAgICAgMiwgIDQsICA2
LCAgOCwgMTAsIDEyLCAxNCwgMTYsIDIwLCAyNCwgMjgsIDMyLCA0MCwgNDgsIDU2LCA2OCwgODAs
IDk2LCAxMjAKKyAgICAgIDQsIDgsIDEyLCAxNiwgMjAsIDI0LCAyOCwgMzIsIDQwLCA0OCwgNTYs
IDY0LCA4MCwgOTYsIDExMiwgMTM2LCAxNjAsIDE5MiwgMjQwCiB9OwogCi1zdGF0aWMgY29uc3Qg
aW50IGV4dHJhX2JhbmRzW05CX1RPVF9CQU5EUysxXSA9IHsKLSAgICAgIDEsIDIsICA0LCAgNiwg
IDgsIDEwLCAxMiwgMTQsIDE2LCAyMCwgMjQsIDI4LCAzMiwgNDAsIDQ4LCA1NiwgNjgsIDgwLCA5
NiwgMTIwLCAxNjAsIDIwMAotfTsKLQotLypzdGF0aWMgY29uc3QgZmxvYXQgdHdlaWdodFtOQl9U
QkFORFMrMV0gPSB7Ci0gICAgICAuMywgLjQsIC41LCAuNiwgLjcsIC44LCAuOSwgMS4sIDEuLCAx
LiwgMS4sIDEuLCAxLiwgMS4sIC44LCAuNywgLjYsIC41Ci19OyovCi0KICNkZWZpbmUgTkJfVE9O
QUxfU0tJUF9CQU5EUyA5CiAKLSNkZWZpbmUgY0EgMC40MzE1Nzk3NGYKLSNkZWZpbmUgY0IgMC42
Nzg0ODQwM2YKLSNkZWZpbmUgY0MgMC4wODU5NTU0MmYKLSNkZWZpbmUgY0UgKChmbG9hdClNX1BJ
LzIpCi1zdGF0aWMgT1BVU19JTkxJTkUgZmxvYXQgZmFzdF9hdGFuMmYoZmxvYXQgeSwgZmxvYXQg
eCkgewotICAgZmxvYXQgeDIsIHkyOwotICAgLyogU2hvdWxkIGF2b2lkIHVuZGVyZmxvdyBvbiB0
aGUgdmFsdWVzIHdlJ2xsIGdldCAqLwotICAgaWYgKEFCUzE2KHgpK0FCUzE2KHkpPDFlLTlmKQor
c3RhdGljIG9wdXNfdmFsMzIgc2lsa19yZXNhbXBsZXJfZG93bjJfaHAoCisgICAgb3B1c192YWwz
MiAgICAgICAgICAgICAgICAgICpTLCAgICAgICAgICAgICAgICAgLyogSS9PICBTdGF0ZSB2ZWN0
b3IgWyAyIF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IG9wdXNfdmFsMzIgICAgICAgICAgICAgICAgICAqb3V0LCAgICAgICAgICAgICAgIC8qIE8gICAg
T3V0cHV0IHNpZ25hbCBbIGZsb29yKGxlbi8yKSBdICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBjb25zdCBvcHVzX3ZhbDMyICAgICAgICAgICAgKmluLCAgICAgICAgICAgICAg
ICAvKiBJICAgIElucHV0IHNpZ25hbCBbIGxlbiBdICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgIGluTGVuICAg
ICAgICAgICAgICAgLyogSSAgICBOdW1iZXIgb2YgaW5wdXQgc2FtcGxlcyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworKQoreworICAgIGludCBrLCBsZW4yID0gaW5MZW4v
MjsKKyAgICBvcHVzX3ZhbDMyIGluMzIsIG91dDMyLCBvdXQzMl9ocCwgWSwgWDsKKyAgICBvcHVz
X3ZhbDY0IGhwX2VuZXIgPSAwOworICAgIC8qIEludGVybmFsIHZhcmlhYmxlcyBhbmQgc3RhdGUg
YXJlIGluIFExMCBmb3JtYXQgKi8KKyAgICBmb3IoIGsgPSAwOyBrIDwgbGVuMjsgaysrICkgewor
ICAgICAgICAvKiBDb252ZXJ0IHRvIFExMCAqLworICAgICAgICBpbjMyID0gaW5bIDIgKiBrIF07
CisKKyAgICAgICAgLyogQWxsLXBhc3Mgc2VjdGlvbiBmb3IgZXZlbiBpbnB1dCBzYW1wbGUgKi8K
KyAgICAgICAgWSAgICAgID0gU1VCMzIoIGluMzIsIFNbIDAgXSApOworICAgICAgICBYICAgICAg
PSBNVUxUMTZfMzJfUTE1KFFDT05TVDE2KDAuNjA3NDM3MWYsIDE1KSwgWSk7CisgICAgICAgIG91
dDMyICA9IEFERDMyKCBTWyAwIF0sIFggKTsKKyAgICAgICAgU1sgMCBdID0gQUREMzIoIGluMzIs
IFggKTsKKyAgICAgICAgb3V0MzJfaHAgPSBvdXQzMjsKKyAgICAgICAgLyogQ29udmVydCB0byBR
MTAgKi8KKyAgICAgICAgaW4zMiA9IGluWyAyICogayArIDEgXTsKKworICAgICAgICAvKiBBbGwt
cGFzcyBzZWN0aW9uIGZvciBvZGQgaW5wdXQgc2FtcGxlLCBhbmQgYWRkIHRvIG91dHB1dCBvZiBw
cmV2aW91cyBzZWN0aW9uICovCisgICAgICAgIFkgICAgICA9IFNVQjMyKCBpbjMyLCBTWyAxIF0g
KTsKKyAgICAgICAgWCAgICAgID0gTVVMVDE2XzMyX1ExNShRQ09OU1QxNigwLjE1MDYzZiwgMTUp
LCBZKTsKKyAgICAgICAgb3V0MzIgID0gQUREMzIoIG91dDMyLCBTWyAxIF0gKTsKKyAgICAgICAg
b3V0MzIgID0gQUREMzIoIG91dDMyLCBYICk7CisgICAgICAgIFNbIDEgXSA9IEFERDMyKCBpbjMy
LCBYICk7CisKKyAgICAgICAgWSAgICAgID0gU1VCMzIoIC1pbjMyLCBTWyAyIF0gKTsKKyAgICAg
ICAgWCAgICAgID0gTVVMVDE2XzMyX1ExNShRQ09OU1QxNigwLjE1MDYzZiwgMTUpLCBZKTsKKyAg
ICAgICAgb3V0MzJfaHAgID0gQUREMzIoIG91dDMyX2hwLCBTWyAyIF0gKTsKKyAgICAgICAgb3V0
MzJfaHAgID0gQUREMzIoIG91dDMyX2hwLCBYICk7CisgICAgICAgIFNbIDIgXSA9IEFERDMyKCAt
aW4zMiwgWCApOworCisgICAgICAgIGhwX2VuZXIgKz0gb3V0MzJfaHAqKG9wdXNfdmFsNjQpb3V0
MzJfaHA7CisgICAgICAgIC8qIEFkZCwgY29udmVydCBiYWNrIHRvIGludDE2IGFuZCBzdG9yZSB0
byBvdXRwdXQgKi8KKyAgICAgICAgb3V0WyBrIF0gPSBIQUxGMzIob3V0MzIpOworICAgIH0KKyNp
ZmRlZiBGSVhFRF9QT0lOVAorICAgIC8qIGxlbjIgY2FuIGJlIHVwIHRvIDQ4MCwgc28gd2Ugc2hp
ZnQgYnkgOCBtb3JlIHRvIG1ha2UgaXQgZml0LiAqLworICAgIGhwX2VuZXIgPSBocF9lbmVyID4+
ICgyKlNJR19TSElGVCArIDgpOworI2VuZGlmCisgICAgcmV0dXJuIChvcHVzX3ZhbDMyKWhwX2Vu
ZXI7Cit9CisKK3N0YXRpYyBvcHVzX3ZhbDMyIGRvd25taXhfYW5kX3Jlc2FtcGxlKGRvd25taXhf
ZnVuYyBkb3dubWl4LCBjb25zdCB2b2lkICpfeCwgb3B1c192YWwzMiAqeSwgb3B1c192YWwzMiBT
WzNdLCBpbnQgc3ViZnJhbWUsIGludCBvZmZzZXQsIGludCBjMSwgaW50IGMyLCBpbnQgQywgaW50
IEZzKQoreworICAgVkFSREVDTChvcHVzX3ZhbDMyLCB0bXApOworICAgb3B1c192YWwzMiBzY2Fs
ZTsKKyAgIGludCBqOworICAgb3B1c192YWwzMiByZXQgPSAwOworICAgU0FWRV9TVEFDSzsKKwor
ICAgaWYgKHN1YmZyYW1lPT0wKSByZXR1cm4gMDsKKyAgIGlmIChGcyA9PSA0ODAwMCkKICAgIHsK
LSAgICAgIHgqPTFlMTJmOwotICAgICAgeSo9MWUxMmY7CisgICAgICBzdWJmcmFtZSAqPSAyOwor
ICAgICAgb2Zmc2V0ICo9IDI7CisgICB9IGVsc2UgaWYgKEZzID09IDE2MDAwKSB7CisgICAgICBz
dWJmcmFtZSA9IHN1YmZyYW1lKjIvMzsKKyAgICAgIG9mZnNldCA9IG9mZnNldCoyLzM7CiAgICB9
Ci0gICB4MiA9IHgqeDsKLSAgIHkyID0geSp5OwotICAgaWYoeDI8eTIpewotICAgICAgZmxvYXQg
ZGVuID0gKHkyICsgY0IqeDIpICogKHkyICsgY0MqeDIpOwotICAgICAgaWYgKGRlbiE9MCkKLSAg
ICAgICAgIHJldHVybiAteCp5Kih5MiArIGNBKngyKSAvIGRlbiArICh5PDAgPyAtY0UgOiBjRSk7
Ci0gICAgICBlbHNlCi0gICAgICAgICByZXR1cm4gKHk8MCA/IC1jRSA6IGNFKTsKLSAgIH1lbHNl
ewotICAgICAgZmxvYXQgZGVuID0gKHgyICsgY0IqeTIpICogKHgyICsgY0MqeTIpOwotICAgICAg
aWYgKGRlbiE9MCkKLSAgICAgICAgIHJldHVybiAgeCp5Kih4MiArIGNBKnkyKSAvIGRlbiArICh5
PDAgPyAtY0UgOiBjRSkgLSAoeCp5PDAgPyAtY0UgOiBjRSk7Ci0gICAgICBlbHNlCi0gICAgICAg
ICByZXR1cm4gKHk8MCA/IC1jRSA6IGNFKSAtICh4Knk8MCA/IC1jRSA6IGNFKTsKKyAgIEFMTE9D
KHRtcCwgc3ViZnJhbWUsIG9wdXNfdmFsMzIpOworCisgICBkb3dubWl4KF94LCB0bXAsIHN1YmZy
YW1lLCBvZmZzZXQsIGMxLCBjMiwgQyk7CisjaWZkZWYgRklYRURfUE9JTlQKKyAgIHNjYWxlID0g
KDE8PFNJR19TSElGVCk7CisjZWxzZQorICAgc2NhbGUgPSAxLmYvMzI3Njg7CisjZW5kaWYKKyAg
IGlmIChjMj09LTIpCisgICAgICBzY2FsZSAvPSBDOworICAgZWxzZSBpZiAoYzI+LTEpCisgICAg
ICBzY2FsZSAvPSAyOworICAgZm9yIChqPTA7ajxzdWJmcmFtZTtqKyspCisgICAgICB0bXBbal0g
Kj0gc2NhbGU7CisgICBpZiAoRnMgPT0gNDgwMDApCisgICB7CisgICAgICByZXQgPSBzaWxrX3Jl
c2FtcGxlcl9kb3duMl9ocChTLCB5LCB0bXAsIHN1YmZyYW1lKTsKKyAgIH0gZWxzZSBpZiAoRnMg
PT0gMjQwMDApIHsKKyAgICAgIE9QVVNfQ09QWSh5LCB0bXAsIHN1YmZyYW1lKTsKKyAgIH0gZWxz
ZSBpZiAoRnMgPT0gMTYwMDApIHsKKyAgICAgIFZBUkRFQ0wob3B1c192YWwzMiwgdG1wM3gpOwor
ICAgICAgQUxMT0ModG1wM3gsIDMqc3ViZnJhbWUsIG9wdXNfdmFsMzIpOworICAgICAgLyogRG9u
J3QgZG8gdGhpcyBhdCBob21lISBUaGlzIHJlc2FtcGxlciBpcyBob3JyaWJsZSBhbmQgaXQncyBv
bmx5IChiYXJlbHkpCisgICAgICAgICB1c2FibGUgZm9yIHRoZSBwdXJwb3NlIG9mIHRoZSBhbmFs
eXNpcyBiZWNhdXNlIHdlIGRvbid0IGNhcmUgYWJvdXQgYWxsCisgICAgICAgICB0aGUgYWxpYXNp
bmcgYmV0d2VlbiA4IGtIeiBhbmQgMTIga0h6LiAqLworICAgICAgZm9yIChqPTA7ajxzdWJmcmFt
ZTtqKyspCisgICAgICB7CisgICAgICAgICB0bXAzeFszKmpdID0gdG1wW2pdOworICAgICAgICAg
dG1wM3hbMypqKzFdID0gdG1wW2pdOworICAgICAgICAgdG1wM3hbMypqKzJdID0gdG1wW2pdOwor
ICAgICAgfQorICAgICAgc2lsa19yZXNhbXBsZXJfZG93bjJfaHAoUywgeSwgdG1wM3gsIDMqc3Vi
ZnJhbWUpOwogICAgfQorICAgUkVTVE9SRV9TVEFDSzsKKyAgIHJldHVybiByZXQ7CiB9CiAKLXZv
aWQgdG9uYWxpdHlfYW5hbHlzaXNfaW5pdChUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsKQor
dm9pZCB0b25hbGl0eV9hbmFseXNpc19pbml0KFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWws
IG9wdXNfaW50MzIgRnMpCiB7CiAgIC8qIEluaXRpYWxpemUgcmV1c2FibGUgZmllbGRzLiAqLwog
ICB0b25hbC0+YXJjaCA9IG9wdXNfc2VsZWN0X2FyY2goKTsKKyAgdG9uYWwtPkZzID0gRnM7CiAg
IC8qIENsZWFyIHJlbWFpbmluZyBmaWVsZHMuICovCiAgIHRvbmFsaXR5X2FuYWx5c2lzX3Jlc2V0
KHRvbmFsKTsKIH0KQEAgLTE1MSw2ICsyMjQsOCBAQCB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzX3Jl
c2V0KFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwpCiAgIC8qIENsZWFyIG5vbi1yZXVzYWJs
ZSBmaWVsZHMuICovCiAgIGNoYXIgKnN0YXJ0ID0gKGNoYXIqKSZ0b25hbC0+VE9OQUxJVFlfQU5B
TFlTSVNfUkVTRVRfU1RBUlQ7CiAgIE9QVVNfQ0xFQVIoc3RhcnQsIHNpemVvZihUb25hbGl0eUFu
YWx5c2lzU3RhdGUpIC0gKHN0YXJ0IC0gKGNoYXIqKXRvbmFsKSk7CisgIHRvbmFsLT5tdXNpY19j
b25maWRlbmNlID0gLjlmOworICB0b25hbC0+c3BlZWNoX2NvbmZpZGVuY2UgPSAuMWY7CiB9CiAK
IHZvaWQgdG9uYWxpdHlfZ2V0X2luZm8oVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgQW5h
bHlzaXNJbmZvICppbmZvX291dCwgaW50IGxlbikKQEAgLTE1OCw2ICsyMzMsOSBAQCB2b2lkIHRv
bmFsaXR5X2dldF9pbmZvKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIEFuYWx5c2lzSW5m
byAqaW5mb19vdXQsIGludAogICAgaW50IHBvczsKICAgIGludCBjdXJyX2xvb2thaGVhZDsKICAg
IGZsb2F0IHBzdW07CisgICBmbG9hdCB0b25hbGl0eV9tYXg7CisgICBmbG9hdCB0b25hbGl0eV9h
dmc7CisgICBpbnQgdG9uYWxpdHlfY291bnQ7CiAgICBpbnQgaTsKIAogICAgcG9zID0gdG9uYWwt
PnJlYWRfcG9zOwpAQCAtMTY1LDcgKzI0Myw4IEBAIHZvaWQgdG9uYWxpdHlfZ2V0X2luZm8oVG9u
YWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgQW5hbHlzaXNJbmZvICppbmZvX291dCwgaW50CiAg
ICBpZiAoY3Vycl9sb29rYWhlYWQ8MCkKICAgICAgIGN1cnJfbG9va2FoZWFkICs9IERFVEVDVF9T
SVpFOwogCi0gICBpZiAobGVuID4gNDgwICYmIHBvcyAhPSB0b25hbC0+d3JpdGVfcG9zKQorICAg
LyogT24gbG9uZyBmcmFtZXMsIGxvb2sgYXQgdGhlIHNlY29uZCBhbmFseXNpcyB3aW5kb3cgcmF0
aGVyIHRoYW4gdGhlIGZpcnN0LiAqLworICAgaWYgKGxlbiA+IHRvbmFsLT5Gcy81MCAmJiBwb3Mg
IT0gdG9uYWwtPndyaXRlX3BvcykKICAgIHsKICAgICAgIHBvcysrOwogICAgICAgaWYgKHBvcz09
REVURUNUX1NJWkUpCkBAIC0xNzYsMTggKzI1NSwzMiBAQCB2b2lkIHRvbmFsaXR5X2dldF9pbmZv
KFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIEFuYWx5c2lzSW5mbyAqaW5mb19vdXQsIGlu
dAogICAgaWYgKHBvczwwKQogICAgICAgcG9zID0gREVURUNUX1NJWkUtMTsKICAgIE9QVVNfQ09Q
WShpbmZvX291dCwgJnRvbmFsLT5pbmZvW3Bvc10sIDEpOwotICAgdG9uYWwtPnJlYWRfc3ViZnJh
bWUgKz0gbGVuLzEyMDsKLSAgIHdoaWxlICh0b25hbC0+cmVhZF9zdWJmcmFtZT49NCkKKyAgIHRv
bmFsaXR5X21heCA9IHRvbmFsaXR5X2F2ZyA9IGluZm9fb3V0LT50b25hbGl0eTsKKyAgIHRvbmFs
aXR5X2NvdW50ID0gMTsKKyAgIC8qIElmIHBvc3NpYmxlLCBsb29rIGFoZWFkIGZvciBhIHRvbmUg
dG8gY29tcGVuc2F0ZSBmb3IgdGhlIGRlbGF5IGluIHRoZSB0b25lIGRldGVjdG9yLiAqLworICAg
Zm9yIChpPTA7aTwzO2krKykKICAgIHsKLSAgICAgIHRvbmFsLT5yZWFkX3N1YmZyYW1lIC09IDQ7
CisgICAgICBwb3MrKzsKKyAgICAgIGlmIChwb3M9PURFVEVDVF9TSVpFKQorICAgICAgICAgcG9z
ID0gMDsKKyAgICAgIGlmIChwb3MgPT0gdG9uYWwtPndyaXRlX3BvcykKKyAgICAgICAgIGJyZWFr
OworICAgICAgdG9uYWxpdHlfbWF4ID0gTUFYMzIodG9uYWxpdHlfbWF4LCB0b25hbC0+aW5mb1tw
b3NdLnRvbmFsaXR5KTsKKyAgICAgIHRvbmFsaXR5X2F2ZyArPSB0b25hbC0+aW5mb1twb3NdLnRv
bmFsaXR5OworICAgICAgdG9uYWxpdHlfY291bnQrKzsKKyAgIH0KKyAgIGluZm9fb3V0LT50b25h
bGl0eSA9IE1BWDMyKHRvbmFsaXR5X2F2Zy90b25hbGl0eV9jb3VudCwgdG9uYWxpdHlfbWF4LS4y
Zik7CisgICB0b25hbC0+cmVhZF9zdWJmcmFtZSArPSBsZW4vKHRvbmFsLT5Gcy80MDApOworICAg
d2hpbGUgKHRvbmFsLT5yZWFkX3N1YmZyYW1lPj04KQorICAgeworICAgICAgdG9uYWwtPnJlYWRf
c3ViZnJhbWUgLT0gODsKICAgICAgIHRvbmFsLT5yZWFkX3BvcysrOwogICAgfQogICAgaWYgKHRv
bmFsLT5yZWFkX3Bvcz49REVURUNUX1NJWkUpCiAgICAgICB0b25hbC0+cmVhZF9wb3MtPURFVEVD
VF9TSVpFOwogCi0gICAvKiBDb21wZW5zYXRlIGZvciB0aGUgZGVsYXkgaW4gdGhlIGZlYXR1cmVz
IHRoZW1zZWx2ZXMuCi0gICAgICBGSVhNRTogTmVlZCBhIGJldHRlciBlc3RpbWF0ZSB0aGUgMTAg
SSBqdXN0IG1hZGUgdXAgKi8KLSAgIGN1cnJfbG9va2FoZWFkID0gSU1BWChjdXJyX2xvb2thaGVh
ZC0xMCwgMCk7CisgICAvKiBUaGUgLTEgaXMgdG8gY29tcGVuc2F0ZSBmb3IgdGhlIGRlbGF5IGlu
IHRoZSBmZWF0dXJlcyB0aGVtc2VsdmVzLiAqLworICAgY3Vycl9sb29rYWhlYWQgPSBJTUFYKGN1
cnJfbG9va2FoZWFkLTEsIDApOwogCiAgICBwc3VtPTA7CiAgICAvKiBTdW1taW5nIHRoZSBwcm9i
YWJpbGl0eSBvZiB0cmFuc2l0aW9uIHBhdHRlcm5zIHRoYXQgaW52b2x2ZSBtdXNpYyBhdApAQCAt
MTk3LDExICsyOTAsMjggQEAgdm9pZCB0b25hbGl0eV9nZXRfaW5mbyhUb25hbGl0eUFuYWx5c2lz
U3RhdGUgKnRvbmFsLCBBbmFseXNpc0luZm8gKmluZm9fb3V0LCBpbnQKICAgIGZvciAoO2k8REVU
RUNUX1NJWkU7aSsrKQogICAgICAgcHN1bSArPSB0b25hbC0+cHNwZWVjaFtpXTsKICAgIHBzdW0g
PSBwc3VtKnRvbmFsLT5tdXNpY19jb25maWRlbmNlICsgKDEtcHN1bSkqdG9uYWwtPnNwZWVjaF9j
b25maWRlbmNlOwotICAgLypwcmludGYoIiVmICVmICVmXG4iLCBwc3VtLCBpbmZvX291dC0+bXVz
aWNfcHJvYiwgaW5mb19vdXQtPnRvbmFsaXR5KTsqLworICAgLypwcmludGYoIiVmICVmICVmICVm
ICVmXG4iLCBwc3VtLCBpbmZvX291dC0+bXVzaWNfcHJvYiwgaW5mb19vdXQtPnZhZF9wcm9iLCBp
bmZvX291dC0+YWN0aXZpdHlfcHJvYmFiaWxpdHksIGluZm9fb3V0LT50b25hbGl0eSk7Ki8KIAog
ICAgaW5mb19vdXQtPm11c2ljX3Byb2IgPSBwc3VtOwogfQogCitzdGF0aWMgY29uc3QgZmxvYXQg
c3RkX2ZlYXR1cmVfYmlhc1s5XSA9IHsKKyAgICAgIDUuNjg0OTQ3ZiwgMy40NzUyODhmLCAxLjc3
MDYzNGYsIDEuNTk5Nzg0ZiwgMy43NzMyMTVmLAorICAgICAgMi4xNjMzMTNmLCAxLjI2MDc1NmYs
IDEuMTE2ODY4ZiwgMS45MTg3OTVmCit9OworCisjZGVmaW5lIExFQUtBR0VfT0ZGU0VUIDIuNWYK
KyNkZWZpbmUgTEVBS0FHRV9TTE9QRSAyLmYKKworI2lmZGVmIEZJWEVEX1BPSU5UCisvKiBGb3Ig
Zml4ZWQtcG9pbnQsIHRoZSBpbnB1dCBpcyArLy0yXjE1IHNoaWZ0ZWQgdXAgYnkgU0lHX1NISUZU
LCBzbyB3ZSBuZWVkIHRvCisgICBjb21wZW5zYXRlIGZvciB0aGF0IGluIHRoZSBlbmVyZ3kuICov
CisjZGVmaW5lIFNDQUxFX0NPTVBFTlMgKDEuZi8oKG9wdXNfaW50MzIpMTw8KDE1K1NJR19TSElG
VCkpKQorI2RlZmluZSBTQ0FMRV9FTkVSKGUpICgoU0NBTEVfQ09NUEVOUypTQ0FMRV9DT01QRU5T
KSooZSkpCisjZWxzZQorI2RlZmluZSBTQ0FMRV9FTkVSKGUpIChlKQorI2VuZGlmCisKIHN0YXRp
YyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNv
bnN0IENFTFRNb2RlICpjZWx0X21vZGUsIGNvbnN0IHZvaWQgKngsIGludCBsZW4sIGludCBvZmZz
ZXQsIGludCBjMSwgaW50IGMyLCBpbnQgQywgaW50IGxzYl9kZXB0aCwgZG93bm1peF9mdW5jIGRv
d25taXgpCiB7CiAgICAgaW50IGksIGI7CkBAIC0yMzUsMTkgKzM0NSw0MSBAQCBzdGF0aWMgdm9p
ZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBD
RUxUTW9kZSAqY2VsdAogICAgIGZsb2F0IG5vaXNlX2Zsb29yOwogICAgIGludCByZW1haW5pbmc7
CiAgICAgQW5hbHlzaXNJbmZvICppbmZvOworICAgIGZsb2F0IGhwX2VuZXI7CisgICAgZmxvYXQg
dG9uYWxpdHkyWzI0MF07CisgICAgZmxvYXQgbWlkRVs4XTsKKyAgICBmbG9hdCBzcGVjX3Zhcmlh
YmlsaXR5PTA7CisgICAgZmxvYXQgYmFuZF9sb2cyW05CX1RCQU5EUysxXTsKKyAgICBmbG9hdCBs
ZWFrYWdlX2Zyb21bTkJfVEJBTkRTKzFdOworICAgIGZsb2F0IGxlYWthZ2VfdG9bTkJfVEJBTkRT
KzFdOwogICAgIFNBVkVfU1RBQ0s7CiAKLSAgICB0b25hbC0+bGFzdF90cmFuc2l0aW9uKys7Ci0g
ICAgYWxwaGEgPSAxLmYvSU1JTigyMCwgMSt0b25hbC0+Y291bnQpOwotICAgIGFscGhhRSA9IDEu
Zi9JTUlOKDUwLCAxK3RvbmFsLT5jb3VudCk7Ci0gICAgYWxwaGFFMiA9IDEuZi9JTUlOKDEwMDAs
IDErdG9uYWwtPmNvdW50KTsKKyAgICBhbHBoYSA9IDEuZi9JTUlOKDEwLCAxK3RvbmFsLT5jb3Vu
dCk7CisgICAgYWxwaGFFID0gMS5mL0lNSU4oMjUsIDErdG9uYWwtPmNvdW50KTsKKyAgICBhbHBo
YUUyID0gMS5mL0lNSU4oNTAwLCAxK3RvbmFsLT5jb3VudCk7CisKKyAgICBpZiAodG9uYWwtPkZz
ID09IDQ4MDAwKQorICAgIHsKKyAgICAgICAvKiBsZW4gYW5kIG9mZnNldCBhcmUgbm93IGF0IDI0
IGtIei4gKi8KKyAgICAgICBsZW4vPSAyOworICAgICAgIG9mZnNldCAvPSAyOworICAgIH0gZWxz
ZSBpZiAodG9uYWwtPkZzID09IDE2MDAwKSB7CisgICAgICAgbGVuID0gMypsZW4vMjsKKyAgICAg
ICBvZmZzZXQgPSAzKm9mZnNldC8yOworICAgIH0KIAotICAgIGlmICh0b25hbC0+Y291bnQ8NCkK
LSAgICAgICB0b25hbC0+bXVzaWNfcHJvYiA9IC41OworICAgIGlmICh0b25hbC0+Y291bnQ8NCkg
eworICAgICAgIGlmICh0b25hbC0+YXBwbGljYXRpb24gPT0gT1BVU19BUFBMSUNBVElPTl9WT0lQ
KQorICAgICAgICAgIHRvbmFsLT5tdXNpY19wcm9iID0gLjFmOworICAgICAgIGVsc2UKKyAgICAg
ICAgICB0b25hbC0+bXVzaWNfcHJvYiA9IC42MjVmOworICAgIH0KICAgICBrZmZ0ID0gY2VsdF9t
b2RlLT5tZGN0LmtmZnRbMF07CiAgICAgaWYgKHRvbmFsLT5jb3VudD09MCkKICAgICAgICB0b25h
bC0+bWVtX2ZpbGwgPSAyNDA7Ci0gICAgZG93bm1peCh4LCAmdG9uYWwtPmlubWVtW3RvbmFsLT5t
ZW1fZmlsbF0sIElNSU4obGVuLCBBTkFMWVNJU19CVUZfU0laRS10b25hbC0+bWVtX2ZpbGwpLCBv
ZmZzZXQsIGMxLCBjMiwgQyk7CisgICAgdG9uYWwtPmhwX2VuZXJfYWNjdW0gKz0gKGZsb2F0KWRv
d25taXhfYW5kX3Jlc2FtcGxlKGRvd25taXgsIHgsCisgICAgICAgICAgJnRvbmFsLT5pbm1lbVt0
b25hbC0+bWVtX2ZpbGxdLCB0b25hbC0+ZG93bm1peF9zdGF0ZSwKKyAgICAgICAgICBJTUlOKGxl
biwgQU5BTFlTSVNfQlVGX1NJWkUtdG9uYWwtPm1lbV9maWxsKSwgb2Zmc2V0LCBjMSwgYzIsIEMs
IHRvbmFsLT5Gcyk7CiAgICAgaWYgKHRvbmFsLT5tZW1fZmlsbCtsZW4gPCBBTkFMWVNJU19CVUZf
U0laRSkKICAgICB7CiAgICAgICAgdG9uYWwtPm1lbV9maWxsICs9IGxlbjsKQEAgLTI1NSw2ICsz
ODcsNyBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3Rh
dGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgICAgIFJFU1RPUkVfU1RBQ0s7CiAg
ICAgICAgcmV0dXJuOwogICAgIH0KKyAgICBocF9lbmVyID0gdG9uYWwtPmhwX2VuZXJfYWNjdW07
CiAgICAgaW5mbyA9ICZ0b25hbC0+aW5mb1t0b25hbC0+d3JpdGVfcG9zKytdOwogICAgIGlmICh0
b25hbC0+d3JpdGVfcG9zPj1ERVRFQ1RfU0laRSkKICAgICAgICB0b25hbC0+d3JpdGVfcG9zLT1E
RVRFQ1RfU0laRTsKQEAgLTI3Myw3ICs0MDYsOSBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFs
eXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAog
ICAgIH0KICAgICBPUFVTX01PVkUodG9uYWwtPmlubWVtLCB0b25hbC0+aW5tZW0rQU5BTFlTSVNf
QlVGX1NJWkUtMjQwLCAyNDApOwogICAgIHJlbWFpbmluZyA9IGxlbiAtIChBTkFMWVNJU19CVUZf
U0laRS10b25hbC0+bWVtX2ZpbGwpOwotICAgIGRvd25taXgoeCwgJnRvbmFsLT5pbm1lbVsyNDBd
LCByZW1haW5pbmcsIG9mZnNldCtBTkFMWVNJU19CVUZfU0laRS10b25hbC0+bWVtX2ZpbGwsIGMx
LCBjMiwgQyk7CisgICAgdG9uYWwtPmhwX2VuZXJfYWNjdW0gPSAoZmxvYXQpZG93bm1peF9hbmRf
cmVzYW1wbGUoZG93bm1peCwgeCwKKyAgICAgICAgICAmdG9uYWwtPmlubWVtWzI0MF0sIHRvbmFs
LT5kb3dubWl4X3N0YXRlLCByZW1haW5pbmcsCisgICAgICAgICAgb2Zmc2V0K0FOQUxZU0lTX0JV
Rl9TSVpFLXRvbmFsLT5tZW1fZmlsbCwgYzEsIGMyLCBDLCB0b25hbC0+RnMpOwogICAgIHRvbmFs
LT5tZW1fZmlsbCA9IDI0MCArIHJlbWFpbmluZzsKICAgICBvcHVzX2ZmdChrZmZ0LCBpbiwgb3V0
LCB0b25hbC0+YXJjaCk7CiAjaWZuZGVmIEZJWEVEX1BPSU5UCkBAIC0zMDUsMjQgKzQ0MCwzMSBA
QCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRv
bmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgICAgIGRfYW5nbGUyID0gYW5nbGUyIC0gYW5n
bGU7CiAgICAgICAgZDJfYW5nbGUyID0gZF9hbmdsZTIgLSBkX2FuZ2xlOwogCi0gICAgICAgbW9k
MSA9IGQyX2FuZ2xlIC0gKGZsb2F0KWZsb29yKC41K2QyX2FuZ2xlKTsKKyAgICAgICBtb2QxID0g
ZDJfYW5nbGUgLSAoZmxvYXQpZmxvYXQyaW50KGQyX2FuZ2xlKTsKICAgICAgICBub2lzaW5lc3Nb
aV0gPSBBQlMxNihtb2QxKTsKICAgICAgICBtb2QxICo9IG1vZDE7CiAgICAgICAgbW9kMSAqPSBt
b2QxOwogCi0gICAgICAgbW9kMiA9IGQyX2FuZ2xlMiAtIChmbG9hdClmbG9vciguNStkMl9hbmds
ZTIpOworICAgICAgIG1vZDIgPSBkMl9hbmdsZTIgLSAoZmxvYXQpZmxvYXQyaW50KGQyX2FuZ2xl
Mik7CiAgICAgICAgbm9pc2luZXNzW2ldICs9IEFCUzE2KG1vZDIpOwogICAgICAgIG1vZDIgKj0g
bW9kMjsKICAgICAgICBtb2QyICo9IG1vZDI7CiAKLSAgICAgICBhdmdfbW9kID0gLjI1ZiooZDJB
W2ldKzIuZiptb2QxK21vZDIpOworICAgICAgIGF2Z19tb2QgPSAuMjVmKihkMkFbaV0rbW9kMSsy
Km1vZDIpOworICAgICAgIC8qIFRoaXMgaW50cm9kdWNlcyBhbiBleHRyYSBkZWxheSBvZiAyIGZy
YW1lcyBpbiB0aGUgZGV0ZWN0aW9uLiAqLwogICAgICAgIHRvbmFsaXR5W2ldID0gMS5mLygxLmYr
NDAuZioxNi5mKnBpNCphdmdfbW9kKS0uMDE1ZjsKKyAgICAgICAvKiBObyBkZWxheSBvbiB0aGlz
IGRldGVjdGlvbiwgYnV0IGl0J3MgbGVzcyByZWxpYWJsZS4gKi8KKyAgICAgICB0b25hbGl0eTJb
aV0gPSAxLmYvKDEuZis0MC5mKjE2LmYqcGk0Km1vZDIpLS4wMTVmOwogCiAgICAgICAgQVtpXSA9
IGFuZ2xlMjsKICAgICAgICBkQVtpXSA9IGRfYW5nbGUyOwogICAgICAgIGQyQVtpXSA9IG1vZDI7
CiAgICAgfQotCisgICAgZm9yIChpPTI7aTxOMi0xO2krKykKKyAgICB7CisgICAgICAgZmxvYXQg
dHQgPSBNSU4zMih0b25hbGl0eTJbaV0sIE1BWDMyKHRvbmFsaXR5MltpLTFdLCB0b25hbGl0eTJb
aSsxXSkpOworICAgICAgIHRvbmFsaXR5W2ldID0gLjlmKk1BWDMyKHRvbmFsaXR5W2ldLCB0dC0u
MWYpOworICAgIH0KICAgICBmcmFtZV90b25hbGl0eSA9IDA7CiAgICAgbWF4X2ZyYW1lX3RvbmFs
aXR5ID0gMDsKICAgICAvKnR3X3N1bSA9IDA7Ki8KQEAgLTMzOSw2ICs0ODEsMjIgQEAgc3RhdGlj
IHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29u
c3QgQ0VMVE1vZGUgKmNlbHQKICAgICB9CiAgICAgcmVsYXRpdmVFID0gMDsKICAgICBmcmFtZV9s
b3VkbmVzcyA9IDA7CisgICAgLyogVGhlIGVuZXJneSBvZiB0aGUgdmVyeSBmaXJzdCBiYW5kIGlz
IHNwZWNpYWwgYmVjYXVzZSBvZiBEQy4gKi8KKyAgICB7CisgICAgICAgZmxvYXQgRSA9IDA7Cisg
ICAgICAgZmxvYXQgWDFyLCBYMnI7CisgICAgICAgWDFyID0gMiooZmxvYXQpb3V0WzBdLnI7Cisg
ICAgICAgWDJyID0gMiooZmxvYXQpb3V0WzBdLmk7CisgICAgICAgRSA9IFgxcipYMXIgKyBYMnIq
WDJyOworICAgICAgIGZvciAoaT0xO2k8NDtpKyspCisgICAgICAgeworICAgICAgICAgIGZsb2F0
IGJpbkUgPSBvdXRbaV0uciooZmxvYXQpb3V0W2ldLnIgKyBvdXRbTi1pXS5yKihmbG9hdClvdXRb
Ti1pXS5yCisgICAgICAgICAgICAgICAgICAgICArIG91dFtpXS5pKihmbG9hdClvdXRbaV0uaSAr
IG91dFtOLWldLmkqKGZsb2F0KW91dFtOLWldLmk7CisgICAgICAgICAgRSArPSBiaW5FOworICAg
ICAgIH0KKyAgICAgICBFID0gU0NBTEVfRU5FUihFKTsKKyAgICAgICBiYW5kX2xvZzJbMF0gPSAu
NWYqMS40NDI2OTVmKihmbG9hdClsb2coRSsxZS0xMGYpOworICAgIH0KICAgICBmb3IgKGI9MDti
PE5CX1RCQU5EUztiKyspCiAgICAgewogICAgICAgIGZsb2F0IEU9MCwgdEU9MCwgbkU9MDsKQEAg
LTM0OCwxMiArNTA2LDkgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlB
bmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICB7CiAgICAg
ICAgICAgZmxvYXQgYmluRSA9IG91dFtpXS5yKihmbG9hdClvdXRbaV0uciArIG91dFtOLWldLnIq
KGZsb2F0KW91dFtOLWldLnIKICAgICAgICAgICAgICAgICAgICAgICsgb3V0W2ldLmkqKGZsb2F0
KW91dFtpXS5pICsgb3V0W04taV0uaSooZmxvYXQpb3V0W04taV0uaTsKLSNpZmRlZiBGSVhFRF9Q
T0lOVAotICAgICAgICAgIC8qIEZJWE1FOiBJdCdzIHByb2JhYmx5IGJlc3QgdG8gY2hhbmdlIHRo
ZSBCRkNDIGZpbHRlciBpbml0aWFsIHN0YXRlIGluc3RlYWQgKi8KLSAgICAgICAgICBiaW5FICo9
IDUuNTVlLTE3ZjsKLSNlbmRpZgorICAgICAgICAgIGJpbkUgPSBTQ0FMRV9FTkVSKGJpbkUpOwog
ICAgICAgICAgIEUgKz0gYmluRTsKLSAgICAgICAgICB0RSArPSBiaW5FKnRvbmFsaXR5W2ldOwor
ICAgICAgICAgIHRFICs9IGJpbkUqTUFYMzIoMCwgdG9uYWxpdHlbaV0pOwogICAgICAgICAgIG5F
ICs9IGJpbkUqMi5mKiguNWYtbm9pc2luZXNzW2ldKTsKICAgICAgICB9CiAjaWZuZGVmIEZJWEVE
X1BPSU5UCkBAIC0zNzEsMTQgKzUyNiwyNyBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNp
cyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogCiAg
ICAgICAgZnJhbWVfbG91ZG5lc3MgKz0gKGZsb2F0KXNxcnQoRSsxZS0xMGYpOwogICAgICAgIGxv
Z0VbYl0gPSAoZmxvYXQpbG9nKEUrMWUtMTBmKTsKLSAgICAgICB0b25hbC0+bG93RVtiXSA9IE1J
TjMyKGxvZ0VbYl0sIHRvbmFsLT5sb3dFW2JdKy4wMWYpOwotICAgICAgIHRvbmFsLT5oaWdoRVti
XSA9IE1BWDMyKGxvZ0VbYl0sIHRvbmFsLT5oaWdoRVtiXS0uMWYpOwotICAgICAgIGlmICh0b25h
bC0+aGlnaEVbYl0gPCB0b25hbC0+bG93RVtiXSsxLmYpCisgICAgICAgYmFuZF9sb2cyW2IrMV0g
PSAuNWYqMS40NDI2OTVmKihmbG9hdClsb2coRSsxZS0xMGYpOworICAgICAgIHRvbmFsLT5sb2dF
W3RvbmFsLT5FX2NvdW50XVtiXSA9IGxvZ0VbYl07CisgICAgICAgaWYgKHRvbmFsLT5jb3VudD09
MCkKKyAgICAgICAgICB0b25hbC0+aGlnaEVbYl0gPSB0b25hbC0+bG93RVtiXSA9IGxvZ0VbYl07
CisgICAgICAgaWYgKHRvbmFsLT5oaWdoRVtiXSA+IHRvbmFsLT5sb3dFW2JdICsgNy41KQorICAg
ICAgIHsKKyAgICAgICAgICBpZiAodG9uYWwtPmhpZ2hFW2JdIC0gbG9nRVtiXSA+IGxvZ0VbYl0g
LSB0b25hbC0+bG93RVtiXSkKKyAgICAgICAgICAgICB0b25hbC0+aGlnaEVbYl0gLT0gLjAxZjsK
KyAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgdG9uYWwtPmxvd0VbYl0gKz0gLjAxZjsKKyAg
ICAgICB9CisgICAgICAgaWYgKGxvZ0VbYl0gPiB0b25hbC0+aGlnaEVbYl0pCiAgICAgICAgewot
ICAgICAgICAgIHRvbmFsLT5oaWdoRVtiXSs9LjVmOwotICAgICAgICAgIHRvbmFsLT5sb3dFW2Jd
LT0uNWY7CisgICAgICAgICAgdG9uYWwtPmhpZ2hFW2JdID0gbG9nRVtiXTsKKyAgICAgICAgICB0
b25hbC0+bG93RVtiXSA9IE1BWDMyKHRvbmFsLT5oaWdoRVtiXS0xNSwgdG9uYWwtPmxvd0VbYl0p
OworICAgICAgIH0gZWxzZSBpZiAobG9nRVtiXSA8IHRvbmFsLT5sb3dFW2JdKQorICAgICAgIHsK
KyAgICAgICAgICB0b25hbC0+bG93RVtiXSA9IGxvZ0VbYl07CisgICAgICAgICAgdG9uYWwtPmhp
Z2hFW2JdID0gTUlOMzIodG9uYWwtPmxvd0VbYl0rMTUsIHRvbmFsLT5oaWdoRVtiXSk7CiAgICAg
ICAgfQotICAgICAgIHJlbGF0aXZlRSArPSAobG9nRVtiXS10b25hbC0+bG93RVtiXSkvKDFlLTE1
Zit0b25hbC0+aGlnaEVbYl0tdG9uYWwtPmxvd0VbYl0pOworICAgICAgIHJlbGF0aXZlRSArPSAo
bG9nRVtiXS10b25hbC0+bG93RVtiXSkvKDFlLTE1ZiArICh0b25hbC0+aGlnaEVbYl0tdG9uYWwt
Pmxvd0VbYl0pKTsKIAogICAgICAgIEwxPUwyPTA7CiAgICAgICAgZm9yIChpPTA7aTxOQl9GUkFN
RVM7aSsrKQpAQCAtNDEwLDI3ICs1NzgsNzQgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlz
aXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAg
ICAgICB0b25hbC0+cHJldl9iYW5kX3RvbmFsaXR5W2JdID0gYmFuZF90b25hbGl0eVtiXTsKICAg
ICB9CiAKKyAgICBsZWFrYWdlX2Zyb21bMF0gPSBiYW5kX2xvZzJbMF07CisgICAgbGVha2FnZV90
b1swXSA9IGJhbmRfbG9nMlswXSAtIExFQUtBR0VfT0ZGU0VUOworICAgIGZvciAoYj0xO2I8TkJf
VEJBTkRTKzE7YisrKQorICAgIHsKKyAgICAgICBmbG9hdCBsZWFrX3Nsb3BlID0gTEVBS0FHRV9T
TE9QRSoodGJhbmRzW2JdLXRiYW5kc1tiLTFdKS80OworICAgICAgIGxlYWthZ2VfZnJvbVtiXSA9
IE1JTjE2KGxlYWthZ2VfZnJvbVtiLTFdK2xlYWtfc2xvcGUsIGJhbmRfbG9nMltiXSk7CisgICAg
ICAgbGVha2FnZV90b1tiXSA9IE1BWDE2KGxlYWthZ2VfdG9bYi0xXS1sZWFrX3Nsb3BlLCBiYW5k
X2xvZzJbYl0tTEVBS0FHRV9PRkZTRVQpOworICAgIH0KKyAgICBmb3IgKGI9TkJfVEJBTkRTLTI7
Yj49MDtiLS0pCisgICAgeworICAgICAgIGZsb2F0IGxlYWtfc2xvcGUgPSBMRUFLQUdFX1NMT1BF
Kih0YmFuZHNbYisxXS10YmFuZHNbYl0pLzQ7CisgICAgICAgbGVha2FnZV9mcm9tW2JdID0gTUlO
MTYobGVha2FnZV9mcm9tW2IrMV0rbGVha19zbG9wZSwgbGVha2FnZV9mcm9tW2JdKTsKKyAgICAg
ICBsZWFrYWdlX3RvW2JdID0gTUFYMTYobGVha2FnZV90b1tiKzFdLWxlYWtfc2xvcGUsIGxlYWth
Z2VfdG9bYl0pOworICAgIH0KKyAgICBjZWx0X2Fzc2VydChOQl9UQkFORFMrMSA8PSBMRUFLX0JB
TkRTKTsKKyAgICBmb3IgKGI9MDtiPE5CX1RCQU5EUysxO2IrKykKKyAgICB7CisgICAgICAgLyog
bGVha19ib29zdFtdIGlzIG1hZGUgdXAgb2YgdHdvIHRlcm1zLiBUaGUgZmlyc3QsIGJhc2VkIG9u
IGxlYWthZ2VfdG9bXSwKKyAgICAgICAgICByZXByZXNlbnRzIHRoZSBib29zdCBuZWVkZWQgdG8g
b3ZlcmNvbWUgdGhlIGFtb3VudCBvZiBhbmFseXNpcyBsZWFrYWdlCisgICAgICAgICAgY2F1c2Ug
aW4gYSB3ZWFrZXIgYmFuZCBiIGJ5IGxvdWRlciBuZWlnaGJvdXJpbmcgYmFuZHMuCisgICAgICAg
ICAgVGhlIHNlY29uZCwgYmFzZWQgb24gbGVha2FnZV9mcm9tW10sIGFwcGxpZXMgdG8gYSBsb3Vk
IGJhbmQgYiBmb3IKKyAgICAgICAgICB3aGljaCB0aGUgcXVhbnRpemF0aW9uIG5vaXNlIGNhdXNl
cyBzeW50aGVzaXMgbGVha2FnZSB0byB0aGUgd2Vha2VyCisgICAgICAgICAgbmVpZ2hib3VyaW5n
IGJhbmRzLiAqLworICAgICAgIGZsb2F0IGJvb3N0ID0gTUFYMTYoMCwgbGVha2FnZV90b1tiXSAt
IGJhbmRfbG9nMltiXSkgKworICAgICAgICAgICAgIE1BWDE2KDAsIGJhbmRfbG9nMltiXSAtIChs
ZWFrYWdlX2Zyb21bYl0rTEVBS0FHRV9PRkZTRVQpKTsKKyAgICAgICBpbmZvLT5sZWFrX2Jvb3N0
W2JdID0gSU1JTigyNTUsIChpbnQpZmxvb3IoLjUgKyA2NC5mKmJvb3N0KSk7CisgICAgfQorICAg
IGZvciAoO2I8TEVBS19CQU5EUztiKyspIGluZm8tPmxlYWtfYm9vc3RbYl0gPSAwOworCisgICAg
Zm9yIChpPTA7aTxOQl9GUkFNRVM7aSsrKQorICAgIHsKKyAgICAgICBpbnQgajsKKyAgICAgICBm
bG9hdCBtaW5kaXN0ID0gMWUxNWY7CisgICAgICAgZm9yIChqPTA7ajxOQl9GUkFNRVM7aisrKQor
ICAgICAgIHsKKyAgICAgICAgICBpbnQgazsKKyAgICAgICAgICBmbG9hdCBkaXN0PTA7CisgICAg
ICAgICAgZm9yIChrPTA7azxOQl9UQkFORFM7aysrKQorICAgICAgICAgIHsKKyAgICAgICAgICAg
ICBmbG9hdCB0bXA7CisgICAgICAgICAgICAgdG1wID0gdG9uYWwtPmxvZ0VbaV1ba10gLSB0b25h
bC0+bG9nRVtqXVtrXTsKKyAgICAgICAgICAgICBkaXN0ICs9IHRtcCp0bXA7CisgICAgICAgICAg
fQorICAgICAgICAgIGlmIChqIT1pKQorICAgICAgICAgICAgIG1pbmRpc3QgPSBNSU4zMihtaW5k
aXN0LCBkaXN0KTsKKyAgICAgICB9CisgICAgICAgc3BlY192YXJpYWJpbGl0eSArPSBtaW5kaXN0
OworICAgIH0KKyAgICBzcGVjX3ZhcmlhYmlsaXR5ID0gKGZsb2F0KXNxcnQoc3BlY192YXJpYWJp
bGl0eS9OQl9GUkFNRVMvTkJfVEJBTkRTKTsKICAgICBiYW5kd2lkdGhfbWFzayA9IDA7CiAgICAg
YmFuZHdpZHRoID0gMDsKICAgICBtYXhFID0gMDsKICAgICBub2lzZV9mbG9vciA9IDUuN2UtNGYv
KDE8PChJTUFYKDAsbHNiX2RlcHRoLTgpKSk7Ci0jaWZkZWYgRklYRURfUE9JTlQKLSAgICBub2lz
ZV9mbG9vciAqPSAxPDwoMTUrU0lHX1NISUZUKTsKLSNlbmRpZgogICAgIG5vaXNlX2Zsb29yICo9
IG5vaXNlX2Zsb29yOwotICAgIGZvciAoYj0wO2I8TkJfVE9UX0JBTkRTO2IrKykKKyAgICBmb3Ig
KGI9MDtiPE5CX1RCQU5EUztiKyspCiAgICAgewogICAgICAgIGZsb2F0IEU9MDsKICAgICAgICBp
bnQgYmFuZF9zdGFydCwgYmFuZF9lbmQ7CiAgICAgICAgLyogS2VlcCBhIG1hcmdpbiBvZiAzMDAg
SHogZm9yIGFsaWFzaW5nICovCi0gICAgICAgYmFuZF9zdGFydCA9IGV4dHJhX2JhbmRzW2JdOwot
ICAgICAgIGJhbmRfZW5kID0gZXh0cmFfYmFuZHNbYisxXTsKKyAgICAgICBiYW5kX3N0YXJ0ID0g
dGJhbmRzW2JdOworICAgICAgIGJhbmRfZW5kID0gdGJhbmRzW2IrMV07CiAgICAgICAgZm9yIChp
PWJhbmRfc3RhcnQ7aTxiYW5kX2VuZDtpKyspCiAgICAgICAgewogICAgICAgICAgIGZsb2F0IGJp
bkUgPSBvdXRbaV0uciooZmxvYXQpb3V0W2ldLnIgKyBvdXRbTi1pXS5yKihmbG9hdClvdXRbTi1p
XS5yCiAgICAgICAgICAgICAgICAgICAgICArIG91dFtpXS5pKihmbG9hdClvdXRbaV0uaSArIG91
dFtOLWldLmkqKGZsb2F0KW91dFtOLWldLmk7CiAgICAgICAgICAgRSArPSBiaW5FOwogICAgICAg
IH0KKyAgICAgICBFID0gU0NBTEVfRU5FUihFKTsKICAgICAgICBtYXhFID0gTUFYMzIobWF4RSwg
RSk7CiAgICAgICAgdG9uYWwtPm1lYW5FW2JdID0gTUFYMzIoKDEtYWxwaGFFMikqdG9uYWwtPm1l
YW5FW2JdLCBFKTsKICAgICAgICBFID0gTUFYMzIoRSwgdG9uYWwtPm1lYW5FW2JdKTsKQEAgLTQ0
MSwxNCArNjU2LDM2IEBAIHN0YXRpYyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5h
bHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2RlICpjZWx0CiAgICAgICAgICAgMikgbGVz
cyB0aGFuIDkwIGRCIGJlbG93IHRoZSBwZWFrIGJhbmQgKG1heGltYWwgbWFza2luZyBwb3NzaWJs
ZSBjb25zaWRlcmluZwogICAgICAgICAgICAgIGJvdGggdGhlIEFUSCBhbmQgdGhlIGxvdWRuZXNz
LWRlcGVuZGVudCBzbG9wZSBvZiB0aGUgc3ByZWFkaW5nIGZ1bmN0aW9uKQogICAgICAgICAgIDMp
IGFib3ZlIHRoZSBQQ00gcXVhbnRpemF0aW9uIG5vaXNlIGZsb29yCisgICAgICAgICAgV2UgdXNl
IGIrMSBiZWNhdXNlIHRoZSBmaXJzdCBDRUxUIGJhbmQgaXNuJ3QgaW5jbHVkZWQgaW4gdGJhbmRz
W10KICAgICAgICAqLwogICAgICAgIGlmIChFPi4xKmJhbmR3aWR0aF9tYXNrICYmIEUqMWU5ZiA+
IG1heEUgJiYgRSA+IG5vaXNlX2Zsb29yKihiYW5kX2VuZC1iYW5kX3N0YXJ0KSkKLSAgICAgICAg
ICBiYW5kd2lkdGggPSBiOworICAgICAgICAgIGJhbmR3aWR0aCA9IGIrMTsKKyAgICB9CisgICAg
LyogU3BlY2lhbCBjYXNlIGZvciB0aGUgbGFzdCB0d28gYmFuZHMsIGZvciB3aGljaCB3ZSBkb24n
dCBoYXZlIHNwZWN0cnVtIGJ1dCBvbmx5CisgICAgICAgdGhlIGVuZXJneSBhYm92ZSAxMiBrSHou
ICovCisgICAgaWYgKHRvbmFsLT5GcyA9PSA0ODAwMCkgeworICAgICAgIGZsb2F0IHJhdGlvOwor
ICAgICAgIGZsb2F0IEUgPSBocF9lbmVyKigxLmYvKDI0MCoyNDApKTsKKyAgICAgICByYXRpbyA9
IHRvbmFsLT5wcmV2X2JhbmR3aWR0aD09MjAgPyAwLjAzZiA6IDAuMDdmOworI2lmZGVmIEZJWEVE
X1BPSU5UCisgICAgICAgLyogc2lsa19yZXNhbXBsZXJfZG93bjJfaHAoKSBzaGlmdGVkIHJpZ2h0
IGJ5IGFuIGV4dHJhIDggYml0cy4gKi8KKyAgICAgICBFICo9IDI1Ni5mKigxLmYvUTE1T05FKSoo
MS5mL1ExNU9ORSk7CisjZW5kaWYKKyAgICAgICBtYXhFID0gTUFYMzIobWF4RSwgRSk7CisgICAg
ICAgdG9uYWwtPm1lYW5FW2JdID0gTUFYMzIoKDEtYWxwaGFFMikqdG9uYWwtPm1lYW5FW2JdLCBF
KTsKKyAgICAgICBFID0gTUFYMzIoRSwgdG9uYWwtPm1lYW5FW2JdKTsKKyAgICAgICAvKiBVc2Ug
YSBzaW1wbGUgZm9sbG93ZXIgd2l0aCAxMyBkQi9CYXJrIHNsb3BlIGZvciBzcHJlYWRpbmcgZnVu
Y3Rpb24gKi8KKyAgICAgICBiYW5kd2lkdGhfbWFzayA9IE1BWDMyKC4wNWYqYmFuZHdpZHRoX21h
c2ssIEUpOworICAgICAgIGlmIChFPnJhdGlvKmJhbmR3aWR0aF9tYXNrICYmIEUqMWU5ZiA+IG1h
eEUgJiYgRSA+IG5vaXNlX2Zsb29yKjE2MCkKKyAgICAgICAgICBiYW5kd2lkdGggPSAyMDsKKyAg
ICAgICAvKiBUaGlzIGRldGVjdG9yIGlzIHVucmVsaWFibGUsIHNvIGlmIHRoZSBiYW5kd2lkdGgg
aXMgY2xvc2UgdG8gU1dCLCBhc3N1bWUgaXQncyBGQi4gKi8KKyAgICAgICBpZiAoYmFuZHdpZHRo
ID49IDE3KQorICAgICAgICAgIGJhbmR3aWR0aCA9IDIwOwogICAgIH0KICAgICBpZiAodG9uYWwt
PmNvdW50PD0yKQogICAgICAgIGJhbmR3aWR0aCA9IDIwOwogICAgIGZyYW1lX2xvdWRuZXNzID0g
MjAqKGZsb2F0KWxvZzEwKGZyYW1lX2xvdWRuZXNzKTsKLSAgICB0b25hbC0+RXRyYWNrZXIgPSBN
QVgzMih0b25hbC0+RXRyYWNrZXItLjAzZiwgZnJhbWVfbG91ZG5lc3MpOworICAgIHRvbmFsLT5F
dHJhY2tlciA9IE1BWDMyKHRvbmFsLT5FdHJhY2tlci0uMDAzZiwgZnJhbWVfbG91ZG5lc3MpOwog
ICAgIHRvbmFsLT5sb3dFQ291bnQgKj0gKDEtYWxwaGFFKTsKICAgICBpZiAoZnJhbWVfbG91ZG5l
c3MgPCB0b25hbC0+RXRyYWNrZXItMzApCiAgICAgICAgdG9uYWwtPmxvd0VDb3VudCArPSBhbHBo
YUU7CkBAIC00NjAsMTEgKzY5NywxOCBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhU
b25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgICAg
ICAgIHN1bSArPSBkY3RfdGFibGVbaSoxNitiXSpsb2dFW2JdOwogICAgICAgIEJGQ0NbaV0gPSBz
dW07CiAgICAgfQorICAgIGZvciAoaT0wO2k8ODtpKyspCisgICAgeworICAgICAgIGZsb2F0IHN1
bT0wOworICAgICAgIGZvciAoYj0wO2I8MTY7YisrKQorICAgICAgICAgIHN1bSArPSBkY3RfdGFi
bGVbaSoxNitiXSouNWYqKHRvbmFsLT5oaWdoRVtiXSt0b25hbC0+bG93RVtiXSk7CisgICAgICAg
bWlkRVtpXSA9IHN1bTsKKyAgICB9CiAKICAgICBmcmFtZV9zdGF0aW9uYXJpdHkgLz0gTkJfVEJB
TkRTOwogICAgIHJlbGF0aXZlRSAvPSBOQl9UQkFORFM7CiAgICAgaWYgKHRvbmFsLT5jb3VudDwx
MCkKLSAgICAgICByZWxhdGl2ZUUgPSAuNTsKKyAgICAgICByZWxhdGl2ZUUgPSAuNWY7CiAgICAg
ZnJhbWVfbm9pc2luZXNzIC89IE5CX1RCQU5EUzsKICNpZiAxCiAgICAgaW5mby0+YWN0aXZpdHkg
PSBmcmFtZV9ub2lzaW5lc3MgKyAoMS1mcmFtZV9ub2lzaW5lc3MpKnJlbGF0aXZlRTsKQEAgLTQ3
OSw3ICs3MjMsNyBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5
c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgIGluZm8tPnRvbmFsaXR5
X3Nsb3BlID0gc2xvcGU7CiAKICAgICB0b25hbC0+RV9jb3VudCA9ICh0b25hbC0+RV9jb3VudCsx
KSVOQl9GUkFNRVM7Ci0gICAgdG9uYWwtPmNvdW50Kys7CisgICAgdG9uYWwtPmNvdW50ID0gSU1J
Tih0b25hbC0+Y291bnQrMSwgQU5BTFlTSVNfQ09VTlRfTUFYKTsKICAgICBpbmZvLT50b25hbGl0
eSA9IGZyYW1lX3RvbmFsaXR5OwogCiAgICAgZm9yIChpPTA7aTw0O2krKykKQEAgLTQ5OCw2ICs3
NDIsOCBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3Rh
dGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgICAgIGZvciAoaT0wO2k8OTtpKysp
CiAgICAgICAgICAgdG9uYWwtPnN0ZFtpXSA9ICgxLWFscGhhKSp0b25hbC0+c3RkW2ldICsgYWxw
aGEqZmVhdHVyZXNbaV0qZmVhdHVyZXNbaV07CiAgICAgfQorICAgIGZvciAoaT0wO2k8NDtpKysp
CisgICAgICAgZmVhdHVyZXNbaV0gPSBCRkNDW2ldLW1pZEVbaV07CiAKICAgICBmb3IgKGk9MDtp
PDg7aSsrKQogICAgIHsKQEAgLTUwNywyNCArNzUzLDI2IEBAIHN0YXRpYyB2b2lkIHRvbmFsaXR5
X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2RlICpj
ZWx0CiAgICAgICAgdG9uYWwtPm1lbVtpXSA9IEJGQ0NbaV07CiAgICAgfQogICAgIGZvciAoaT0w
O2k8OTtpKyspCi0gICAgICAgZmVhdHVyZXNbMTEraV0gPSAoZmxvYXQpc3FydCh0b25hbC0+c3Rk
W2ldKTsKLSAgICBmZWF0dXJlc1syMF0gPSBpbmZvLT50b25hbGl0eTsKLSAgICBmZWF0dXJlc1sy
MV0gPSBpbmZvLT5hY3Rpdml0eTsKLSAgICBmZWF0dXJlc1syMl0gPSBmcmFtZV9zdGF0aW9uYXJp
dHk7Ci0gICAgZmVhdHVyZXNbMjNdID0gaW5mby0+dG9uYWxpdHlfc2xvcGU7Ci0gICAgZmVhdHVy
ZXNbMjRdID0gdG9uYWwtPmxvd0VDb3VudDsKKyAgICAgICBmZWF0dXJlc1sxMStpXSA9IChmbG9h
dClzcXJ0KHRvbmFsLT5zdGRbaV0pIC0gc3RkX2ZlYXR1cmVfYmlhc1tpXTsKKyAgICBmZWF0dXJl
c1sxOF0gPSBzcGVjX3ZhcmlhYmlsaXR5IC0gMC43OGY7CisgICAgZmVhdHVyZXNbMjBdID0gaW5m
by0+dG9uYWxpdHkgLSAwLjE1NDcyM2Y7CisgICAgZmVhdHVyZXNbMjFdID0gaW5mby0+YWN0aXZp
dHkgLSAwLjcyNDY0M2Y7CisgICAgZmVhdHVyZXNbMjJdID0gZnJhbWVfc3RhdGlvbmFyaXR5IC0g
MC43NDM3MTdmOworICAgIGZlYXR1cmVzWzIzXSA9IGluZm8tPnRvbmFsaXR5X3Nsb3BlICsgMC4w
NjkyMTZmOworICAgIGZlYXR1cmVzWzI0XSA9IHRvbmFsLT5sb3dFQ291bnQgLSAwLjA2NzkzMGY7
CiAKLSNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKICAgICBtbHBfcHJvY2VzcygmbmV0LCBmZWF0
dXJlcywgZnJhbWVfcHJvYnMpOwogICAgIGZyYW1lX3Byb2JzWzBdID0gLjVmKihmcmFtZV9wcm9i
c1swXSsxKTsKICAgICAvKiBDdXJ2ZSBmaXR0aW5nIGJldHdlZW4gdGhlIE1MUCBwcm9iYWJpbGl0
eSBhbmQgdGhlIGFjdHVhbCBwcm9iYWJpbGl0eSAqLwotICAgIGZyYW1lX3Byb2JzWzBdID0gLjAx
ZiArIDEuMjFmKmZyYW1lX3Byb2JzWzBdKmZyYW1lX3Byb2JzWzBdIC0gLjIzZiooZmxvYXQpcG93
KGZyYW1lX3Byb2JzWzBdLCAxMCk7CisgICAgLypmcmFtZV9wcm9ic1swXSA9IC4wMWYgKyAxLjIx
ZipmcmFtZV9wcm9ic1swXSpmcmFtZV9wcm9ic1swXSAtIC4yM2YqKGZsb2F0KXBvdyhmcmFtZV9w
cm9ic1swXSwgMTApOyovCiAgICAgLyogUHJvYmFiaWxpdHkgb2YgYWN0aXZlIGF1ZGlvIChhcyBv
cHBvc2VkIHRvIHNpbGVuY2UpICovCiAgICAgZnJhbWVfcHJvYnNbMV0gPSAuNWYqZnJhbWVfcHJv
YnNbMV0rLjVmOwotICAgIC8qIENvbnNpZGVyIHRoYXQgc2lsZW5jZSBoYXMgYSA1MC01MCBwcm9i
YWJpbGl0eS4gKi8KLSAgICBmcmFtZV9wcm9ic1swXSA9IGZyYW1lX3Byb2JzWzFdKmZyYW1lX3By
b2JzWzBdICsgKDEtZnJhbWVfcHJvYnNbMV0pKi41ZjsKKyAgICBmcmFtZV9wcm9ic1sxXSAqPSBm
cmFtZV9wcm9ic1sxXTsKKworICAgIC8qIFByb2JhYmlsaXR5IG9mIHNwZWVjaCBvciBtdXNpYyB2
cyBub2lzZSAqLworICAgIGluZm8tPmFjdGl2aXR5X3Byb2JhYmlsaXR5ID0gZnJhbWVfcHJvYnNb
MV07CiAKLSAgICAvKnByaW50ZigiJWYgJWYgIiwgZnJhbWVfcHJvYnNbMF0sIGZyYW1lX3Byb2Jz
WzFdKTsqLworICAgIC8qcHJpbnRmKCIlZiAlZlxuIiwgZnJhbWVfcHJvYnNbMF0sIGZyYW1lX3By
b2JzWzFdKTsqLwogICAgIHsKICAgICAgICAvKiBQcm9iYWJpbGl0eSBvZiBzdGF0ZSB0cmFuc2l0
aW9uICovCiAgICAgICAgZmxvYXQgdGF1OwpAQCAtNTQyLDEyICs3OTAsMzIgQEAgc3RhdGljIHZv
aWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3Qg
Q0VMVE1vZGUgKmNlbHQKICAgICAgICBmbG9hdCBtdXNpYzA7CiAgICAgICAgZmxvYXQgcCwgcTsK
IAorICAgICAgIC8qIE1vcmUgc2lsZW5jZSB0cmFuc2l0aW9ucyBmb3Igc3BlZWNoIHRoYW4gZm9y
IG11c2ljLiAqLworICAgICAgIHRhdSA9IC4wMDFmKnRvbmFsLT5tdXNpY19wcm9iICsgLjAxZioo
MS10b25hbC0+bXVzaWNfcHJvYik7CisgICAgICAgcCA9IE1BWDE2KC4wNWYsTUlOMTYoLjk1Zixm
cmFtZV9wcm9ic1sxXSkpOworICAgICAgIHEgPSBNQVgxNiguMDVmLE1JTjE2KC45NWYsdG9uYWwt
PnZhZF9wcm9iKSk7CisgICAgICAgYmV0YSA9IC4wMmYrLjA1ZipBQlMxNihwLXEpLyhwKigxLXEp
K3EqKDEtcCkpOworICAgICAgIC8qIHAwIGFuZCBwMSBhcmUgdGhlIHByb2JhYmlsaXRpZXMgb2Yg
c3BlZWNoIGFuZCBtdXNpYyBhdCB0aGlzIGZyYW1lCisgICAgICAgICAgdXNpbmcgb25seSBpbmZv
cm1hdGlvbiBmcm9tIHByZXZpb3VzIGZyYW1lIGFuZCBhcHBseWluZyB0aGUKKyAgICAgICAgICBz
dGF0ZSB0cmFuc2l0aW9uIG1vZGVsICovCisgICAgICAgcDAgPSAoMS10b25hbC0+dmFkX3Byb2Ip
KigxLXRhdSkgKyAgICB0b25hbC0+dmFkX3Byb2IgKnRhdTsKKyAgICAgICBwMSA9ICAgIHRvbmFs
LT52YWRfcHJvYiAqKDEtdGF1KSArICgxLXRvbmFsLT52YWRfcHJvYikqdGF1OworICAgICAgIC8q
IFdlIGFwcGx5IHRoZSBjdXJyZW50IHByb2JhYmlsaXR5IHdpdGggZXhwb25lbnQgYmV0YSB0byB3
b3JrIGFyb3VuZAorICAgICAgICAgIHRoZSBmYWN0IHRoYXQgdGhlIHByb2JhYmlsaXR5IGVzdGlt
YXRlcyBhcmVuJ3QgaW5kZXBlbmRlbnQuICovCisgICAgICAgcDAgKj0gKGZsb2F0KXBvdygxLWZy
YW1lX3Byb2JzWzFdLCBiZXRhKTsKKyAgICAgICBwMSAqPSAoZmxvYXQpcG93KGZyYW1lX3Byb2Jz
WzFdLCBiZXRhKTsKKyAgICAgICAvKiBOb3JtYWxpc2UgdGhlIHByb2JhYmlsaXRpZXMgdG8gZ2V0
IHRoZSBNYXJva3YgcHJvYmFiaWxpdHkgb2YgbXVzaWMuICovCisgICAgICAgdG9uYWwtPnZhZF9w
cm9iID0gcDEvKHAwK3AxKTsKKyAgICAgICBpbmZvLT52YWRfcHJvYiA9IHRvbmFsLT52YWRfcHJv
YjsKKyAgICAgICAvKiBDb25zaWRlciB0aGF0IHNpbGVuY2UgaGFzIGEgNTAtNTAgcHJvYmFiaWxp
dHkgb2YgYmVpbmcgc3BlZWNoIG9yIG11c2ljLiAqLworICAgICAgIGZyYW1lX3Byb2JzWzBdID0g
dG9uYWwtPnZhZF9wcm9iKmZyYW1lX3Byb2JzWzBdICsgKDEtdG9uYWwtPnZhZF9wcm9iKSouNWY7
CisKICAgICAgICAvKiBPbmUgdHJhbnNpdGlvbiBldmVyeSAzIG1pbnV0ZXMgb2YgYWN0aXZlIGF1
ZGlvICovCi0gICAgICAgdGF1ID0gLjAwMDA1ZipmcmFtZV9wcm9ic1sxXTsKKyAgICAgICB0YXUg
PSAuMDAwMWY7CiAgICAgICAgLyogQWRhcHQgYmV0YSBiYXNlZCBvbiBob3cgInVuZXhwZWN0ZWQi
IHRoZSBuZXcgcHJvYiBpcyAqLwogICAgICAgIHAgPSBNQVgxNiguMDVmLE1JTjE2KC45NWYsZnJh
bWVfcHJvYnNbMF0pKTsKICAgICAgICBxID0gTUFYMTYoLjA1ZixNSU4xNiguOTVmLHRvbmFsLT5t
dXNpY19wcm9iKSk7Ci0gICAgICAgYmV0YSA9IC4wMWYrLjA1ZipBQlMxNihwLXEpLyhwKigxLXEp
K3EqKDEtcCkpOworICAgICAgIGJldGEgPSAuMDJmKy4wNWYqQUJTMTYocC1xKS8ocCooMS1xKStx
KigxLXApKTsKICAgICAgICAvKiBwMCBhbmQgcDEgYXJlIHRoZSBwcm9iYWJpbGl0aWVzIG9mIHNw
ZWVjaCBhbmQgbXVzaWMgYXQgdGhpcyBmcmFtZQogICAgICAgICAgIHVzaW5nIG9ubHkgaW5mb3Jt
YXRpb24gZnJvbSBwcmV2aW91cyBmcmFtZSBhbmQgYXBwbHlpbmcgdGhlCiAgICAgICAgICAgc3Rh
dGUgdHJhbnNpdGlvbiBtb2RlbCAqLwpAQCAtNTYxLDYgKzgyOSw3IEBAIHN0YXRpYyB2b2lkIHRv
bmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRN
b2RlICpjZWx0CiAgICAgICAgdG9uYWwtPm11c2ljX3Byb2IgPSBwMS8ocDArcDEpOwogICAgICAg
IGluZm8tPm11c2ljX3Byb2IgPSB0b25hbC0+bXVzaWNfcHJvYjsKIAorICAgICAgIC8qcHJpbnRm
KCIlZiAlZiAlZiAlZlxuIiwgZnJhbWVfcHJvYnNbMF0sIGZyYW1lX3Byb2JzWzFdLCB0b25hbC0+
bXVzaWNfcHJvYiwgdG9uYWwtPnZhZF9wcm9iKTsqLwogICAgICAgIC8qIFRoaXMgY2h1bmsgb2Yg
Y29kZSBkZWFscyB3aXRoIGRlbGF5ZWQgZGVjaXNpb24uICovCiAgICAgICAgcHN1bT0xZS0yMGY7
CiAgICAgICAgLyogSW5zdGFudGFuZW91cyBwcm9iYWJpbGl0eSBvZiBzcGVlY2ggYW5kIG11c2lj
LCB3aXRoIGJldGEgcHJlLWFwcGxpZWQuICovCkBAIC01NjgsOCArODM3LDExIEBAIHN0YXRpYyB2
b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0
IENFTFRNb2RlICpjZWx0CiAgICAgICAgbXVzaWMwICA9IChmbG9hdClwb3coZnJhbWVfcHJvYnNb
MF0sIGJldGEpOwogICAgICAgIGlmICh0b25hbC0+Y291bnQ9PTEpCiAgICAgICAgewotICAgICAg
ICAgIHRvbmFsLT5wc3BlZWNoWzBdPS41OwotICAgICAgICAgIHRvbmFsLT5wbXVzaWMgWzBdPS41
OworICAgICAgICAgIGlmICh0b25hbC0+YXBwbGljYXRpb24gPT0gT1BVU19BUFBMSUNBVElPTl9W
T0lQKQorICAgICAgICAgICAgIHRvbmFsLT5wbXVzaWNbMF0gPSAuMWY7CisgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgIHRvbmFsLT5wbXVzaWNbMF0gPSAuNjI1ZjsKKyAgICAgICAgICB0b25h
bC0+cHNwZWVjaFswXSA9IDEtdG9uYWwtPnBtdXNpY1swXTsKICAgICAgICB9CiAgICAgICAgLyog
VXBkYXRlZCBwcm9iYWJpbGl0eSBvZiBoYXZpbmcgb25seSBzcGVlY2ggKHMwKSBvciBvbmx5IG11
c2ljIChtMCksCiAgICAgICAgICAgYmVmb3JlIGNvbnNpZGVyaW5nIHRoZSBuZXcgb2JzZXJ2YXRp
b24uICovCkBAIC02MTksMjQgKzg5MSwxNyBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNp
cyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAg
ICAgICAgICAgIHRvbmFsLT5zcGVlY2hfY29uZmlkZW5jZV9jb3VudCA9IElNSU4odG9uYWwtPnNw
ZWVjaF9jb25maWRlbmNlX2NvdW50LCA1MDApOwogICAgICAgICAgICAgIHRvbmFsLT5zcGVlY2hf
Y29uZmlkZW5jZSArPSBhZGFwdCpNSU4xNiguMmYsZnJhbWVfcHJvYnNbMF0tdG9uYWwtPnNwZWVj
aF9jb25maWRlbmNlKTsKICAgICAgICAgICB9Ci0gICAgICAgfSBlbHNlIHsKLSAgICAgICAgICBp
ZiAodG9uYWwtPm11c2ljX2NvbmZpZGVuY2VfY291bnQ9PTApCi0gICAgICAgICAgICAgdG9uYWwt
Pm11c2ljX2NvbmZpZGVuY2UgPSAuOWY7Ci0gICAgICAgICAgaWYgKHRvbmFsLT5zcGVlY2hfY29u
ZmlkZW5jZV9jb3VudD09MCkKLSAgICAgICAgICAgICB0b25hbC0+c3BlZWNoX2NvbmZpZGVuY2Ug
PSAuMWY7CiAgICAgICAgfQogICAgIH0KLSAgICBpZiAodG9uYWwtPmxhc3RfbXVzaWMgIT0gKHRv
bmFsLT5tdXNpY19wcm9iPi41ZikpCi0gICAgICAgdG9uYWwtPmxhc3RfdHJhbnNpdGlvbj0wOwog
ICAgIHRvbmFsLT5sYXN0X211c2ljID0gdG9uYWwtPm11c2ljX3Byb2I+LjVmOwotI2Vsc2UKLSAg
ICBpbmZvLT5tdXNpY19wcm9iID0gMDsKLSNlbmRpZgotICAgIC8qZm9yIChpPTA7aTwyNTtpKysp
CisjaWZkZWYgTUxQX1RSQUlOSU5HCisgICAgZm9yIChpPTA7aTwyNTtpKyspCiAgICAgICAgcHJp
bnRmKCIlZiAiLCBmZWF0dXJlc1tpXSk7Ci0gICAgcHJpbnRmKCJcbiIpOyovCisgICAgcHJpbnRm
KCJcbiIpOworI2VuZGlmCiAKICAgICBpbmZvLT5iYW5kd2lkdGggPSBiYW5kd2lkdGg7CisgICAg
dG9uYWwtPnByZXZfYmFuZHdpZHRoID0gYmFuZHdpZHRoOwogICAgIC8qcHJpbnRmKCIlZCAlZFxu
IiwgaW5mby0+YmFuZHdpZHRoLCBpbmZvLT5vcHVzX2JhbmR3aWR0aCk7Ki8KICAgICBpbmZvLT5u
b2lzaW5lc3MgPSBmcmFtZV9ub2lzaW5lc3M7CiAgICAgaW5mby0+dmFsaWQgPSAxOwpAQCAtNjUw
LDE4ICs5MTUsMTkgQEAgdm9pZCBydW5fYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICph
bmFseXNpcywgY29uc3QgQ0VMVE1vZGUgKmNlbHRfbW9kZSwgY28KICAgIGludCBvZmZzZXQ7CiAg
ICBpbnQgcGNtX2xlbjsKIAorICAgYW5hbHlzaXNfZnJhbWVfc2l6ZSAtPSBhbmFseXNpc19mcmFt
ZV9zaXplJjE7CiAgICBpZiAoYW5hbHlzaXNfcGNtICE9IE5VTEwpCiAgICB7CiAgICAgICAvKiBB
dm9pZCBvdmVyZmxvdy93cmFwLWFyb3VuZCBvZiB0aGUgYW5hbHlzaXMgYnVmZmVyICovCi0gICAg
ICBhbmFseXNpc19mcmFtZV9zaXplID0gSU1JTigoREVURUNUX1NJWkUtNSkqRnMvMTAwLCBhbmFs
eXNpc19mcmFtZV9zaXplKTsKKyAgICAgIGFuYWx5c2lzX2ZyYW1lX3NpemUgPSBJTUlOKChERVRF
Q1RfU0laRS01KSpGcy81MCwgYW5hbHlzaXNfZnJhbWVfc2l6ZSk7CiAKICAgICAgIHBjbV9sZW4g
PSBhbmFseXNpc19mcmFtZV9zaXplIC0gYW5hbHlzaXMtPmFuYWx5c2lzX29mZnNldDsKICAgICAg
IG9mZnNldCA9IGFuYWx5c2lzLT5hbmFseXNpc19vZmZzZXQ7Ci0gICAgICBkbyB7Ci0gICAgICAg
ICB0b25hbGl0eV9hbmFseXNpcyhhbmFseXNpcywgY2VsdF9tb2RlLCBhbmFseXNpc19wY20sIElN
SU4oNDgwLCBwY21fbGVuKSwgb2Zmc2V0LCBjMSwgYzIsIEMsIGxzYl9kZXB0aCwgZG93bm1peCk7
Ci0gICAgICAgICBvZmZzZXQgKz0gNDgwOwotICAgICAgICAgcGNtX2xlbiAtPSA0ODA7Ci0gICAg
ICB9IHdoaWxlIChwY21fbGVuPjApOworICAgICAgd2hpbGUgKHBjbV9sZW4+MCkgeworICAgICAg
ICAgdG9uYWxpdHlfYW5hbHlzaXMoYW5hbHlzaXMsIGNlbHRfbW9kZSwgYW5hbHlzaXNfcGNtLCBJ
TUlOKEZzLzUwLCBwY21fbGVuKSwgb2Zmc2V0LCBjMSwgYzIsIEMsIGxzYl9kZXB0aCwgZG93bm1p
eCk7CisgICAgICAgICBvZmZzZXQgKz0gRnMvNTA7CisgICAgICAgICBwY21fbGVuIC09IEZzLzUw
OworICAgICAgfQogICAgICAgYW5hbHlzaXMtPmFuYWx5c2lzX29mZnNldCA9IGFuYWx5c2lzX2Zy
YW1lX3NpemU7CiAKICAgICAgIGFuYWx5c2lzLT5hbmFseXNpc19vZmZzZXQgLT0gZnJhbWVfc2l6
ZTsKQEAgLTY3MCwzICs5MzYsNSBAQCB2b2lkIHJ1bl9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lz
U3RhdGUgKmFuYWx5c2lzLCBjb25zdCBDRUxUTW9kZSAqY2VsdF9tb2RlLCBjbwogICAgYW5hbHlz
aXNfaW5mby0+dmFsaWQgPSAwOwogICAgdG9uYWxpdHlfZ2V0X2luZm8oYW5hbHlzaXMsIGFuYWx5
c2lzX2luZm8sIGZyYW1lX3NpemUpOwogfQorCisjZW5kaWYgLyogRElTQUJMRV9GTE9BVF9BUEkg
Ki8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc3JjL2FuYWx5c2lzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5oCmluZGV4IDllYWU1
NmE1MjUzNzhhMzYwMjQ0NGNlOTYwOTU3ZDQ0YmY5MWZhNjEuLmNhYzUxZGZhNGViNTVkOGQxYWJi
YjBkZWU5ZjA3MDQ2MzU0MmRmMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL2FuYWx5c2lzLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMv
YW5hbHlzaXMuaApAQCAtMzMsMTMgKzMzLDIwIEBACiAKICNkZWZpbmUgTkJfRlJBTUVTIDgKICNk
ZWZpbmUgTkJfVEJBTkRTIDE4Ci0jZGVmaW5lIE5CX1RPVF9CQU5EUyAyMQotI2RlZmluZSBBTkFM
WVNJU19CVUZfU0laRSA3MjAgLyogMTUgbXMgYXQgNDgga0h6ICovCisjZGVmaW5lIEFOQUxZU0lT
X0JVRl9TSVpFIDcyMCAvKiAzMCBtcyBhdCAyNCBrSHogKi8KIAotI2RlZmluZSBERVRFQ1RfU0la
RSAyMDAKKy8qIEF0IHRoYXQgcG9pbnQgd2UgY2FuIHN0b3AgY291bnRpbmcgZnJhbWVzIGJlY2F1
c2UgaXQgbm8gbG9uZ2VyIG1hdHRlcnMuICovCisjZGVmaW5lIEFOQUxZU0lTX0NPVU5UX01BWCAx
MDAwMAorCisjZGVmaW5lIERFVEVDVF9TSVpFIDEwMAorCisvKiBVbmNvbW1lbnQgdGhpcyB0byBw
cmludCB0aGUgTUxQIGZlYXR1cmVzIG9uIHN0ZG91dC4gKi8KKy8qI2RlZmluZSBNTFBfVFJBSU5J
TkcqLwogCiB0eXBlZGVmIHN0cnVjdCB7CiAgICBpbnQgYXJjaDsKKyAgIGludCBhcHBsaWNhdGlv
bjsKKyAgIG9wdXNfaW50MzIgRnM7CiAjZGVmaW5lIFRPTkFMSVRZX0FOQUxZU0lTX1JFU0VUX1NU
QVJUIGFuZ2xlCiAgICBmbG9hdCBhbmdsZVsyNDBdOwogICAgZmxvYXQgZF9hbmdsZVsyNDBdOwpA
QCAtNDgsMjEgKzU1LDIyIEBAIHR5cGVkZWYgc3RydWN0IHsKICAgIGludCAgIG1lbV9maWxsOyAg
ICAgICAgICAgICAgICAgICAgICAvKiBudW1iZXIgb2YgdXNhYmxlIHNhbXBsZXMgaW4gdGhlIGJ1
ZmZlciAqLwogICAgZmxvYXQgcHJldl9iYW5kX3RvbmFsaXR5W05CX1RCQU5EU107CiAgICBmbG9h
dCBwcmV2X3RvbmFsaXR5OworICAgaW50IHByZXZfYmFuZHdpZHRoOwogICAgZmxvYXQgRVtOQl9G
UkFNRVNdW05CX1RCQU5EU107CisgICBmbG9hdCBsb2dFW05CX0ZSQU1FU11bTkJfVEJBTkRTXTsK
ICAgIGZsb2F0IGxvd0VbTkJfVEJBTkRTXTsKICAgIGZsb2F0IGhpZ2hFW05CX1RCQU5EU107Ci0g
ICBmbG9hdCBtZWFuRVtOQl9UT1RfQkFORFNdOworICAgZmxvYXQgbWVhbkVbTkJfVEJBTkRTKzFd
OwogICAgZmxvYXQgbWVtWzMyXTsKICAgIGZsb2F0IGNtZWFuWzhdOwogICAgZmxvYXQgc3RkWzld
OwogICAgZmxvYXQgbXVzaWNfcHJvYjsKKyAgIGZsb2F0IHZhZF9wcm9iOwogICAgZmxvYXQgRXRy
YWNrZXI7CiAgICBmbG9hdCBsb3dFQ291bnQ7CiAgICBpbnQgRV9jb3VudDsKICAgIGludCBsYXN0
X211c2ljOwotICAgaW50IGxhc3RfdHJhbnNpdGlvbjsKICAgIGludCBjb3VudDsKLSAgIGZsb2F0
IHN1YmZyYW1lX21lbVszXTsKICAgIGludCBhbmFseXNpc19vZmZzZXQ7CiAgICAvKiogUHJvYmFi
aWxpdHkgb2YgaGF2aW5nIHNwZWVjaCBmb3IgdGltZSBpIHRvIERFVEVDVF9TSVpFLTEgKGFuZCBt
dXNpYyBiZWZvcmUpLgogICAgICAgIHBzcGVlY2hbMF0gaXMgdGhlIHByb2JhYmlsaXR5IHRoYXQg
YWxsIGZyYW1lcyBpbiB0aGUgd2luZG93IGFyZSBzcGVlY2guICovCkBAIC03Nyw2ICs4NSw4IEBA
IHR5cGVkZWYgc3RydWN0IHsKICAgIGludCB3cml0ZV9wb3M7CiAgICBpbnQgcmVhZF9wb3M7CiAg
ICBpbnQgcmVhZF9zdWJmcmFtZTsKKyAgIGZsb2F0IGhwX2VuZXJfYWNjdW07CisgICBvcHVzX3Zh
bDMyIGRvd25taXhfc3RhdGVbM107CiAgICBBbmFseXNpc0luZm8gaW5mb1tERVRFQ1RfU0laRV07
CiB9IFRvbmFsaXR5QW5hbHlzaXNTdGF0ZTsKIApAQCAtODYsNyArOTYsNyBAQCB0eXBlZGVmIHN0
cnVjdCB7CiAgKiBub3QgYmUgcmVwZWF0ZWQgZXZlcnkgYW5hbHlzaXMgc3RlcC4gTm8gYWxsb2Nh
dGVkIG1lbW9yeSBpcyByZXRhaW5lZAogICogYnkgdGhlIHN0YXRlIHN0cnVjdCwgc28gbm8gY2xl
YW51cCBjYWxsIGlzIHJlcXVpcmVkLgogICovCi12b2lkIHRvbmFsaXR5X2FuYWx5c2lzX2luaXQo
VG9uYWxpdHlBbmFseXNpc1N0YXRlICphbmFseXNpcyk7Cit2b2lkIHRvbmFsaXR5X2FuYWx5c2lz
X2luaXQoVG9uYWxpdHlBbmFseXNpc1N0YXRlICphbmFseXNpcywgb3B1c19pbnQzMiBGcyk7CiAK
IC8qKiBSZXNldCBhIFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSBzdHVjdC4KICAqCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NyYy9tbHBfZGF0YS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zcmMvbWxwX2RhdGEuYwppbmRleCBjMmZkYTRlMmU1OTNmZDM3Mjg2
M2Q0MzM3NTk0Nzg2MmIyNzdlNDg4Li5hODE5ODgwYmZmNWE4OTk1ZDIxMWI3YmIzNDNhNzAzM2M5
YzcxNjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NyYy9tbHBfZGF0YS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL21scF9kYXRhLmMKQEAg
LTEsMTA2ICsxLDEwOSBAQAotLyogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZmlsZSB3YXMgYXV0b21h
dGljYWxseSBnZW5lcmF0ZWQgYnkgbWxwX3RyYWluLmMKLSAgIEl0IGNvbnRhaW5zIG11bHRpLWxh
eWVyIHBlcmNlcHRyb24gKE1MUCkgd2VpZ2h0cy4gKi8KLQogI2lmZGVmIEhBVkVfQ09ORklHX0gK
ICNpbmNsdWRlICJjb25maWcuaCIKICNlbmRpZgogCiAjaW5jbHVkZSAibWxwLmgiCiAKLS8qIFJN
UyBlcnJvciB3YXMgMC4xMzgzMjAsIHNlZWQgd2FzIDEzNjE1MzU2NjMgKi8KKy8qIFJNUyBlcnJv
ciB3YXMgMC4yODA0OTIsIHNlZWQgd2FzIDE0ODA0NzgxNzMgKi8KKy8qIDAuMDA1OTc2IDAuMDMx
ODIxICgwLjI4MDQ5NCAwLjI4MDQ5MikgZG9uZSAqLwogCi1zdGF0aWMgY29uc3QgZmxvYXQgd2Vp
Z2h0c1s0MjJdID0geworc3RhdGljIGNvbnN0IGZsb2F0IHdlaWdodHNbNDUwXSA9IHsKIAogLyog
aGlkZGVuIGxheWVyICovCi0tMC4wOTQxMTI1ZiwgLTAuMzAyOTc2ZiwgLTAuNjAzNTU1ZiwgLTAu
MTkzOTNmLCAtMC4xODU5ODNmLAotLTAuNjAxNjE3ZiwgLTAuMDQ2NTMxN2YsIC0wLjExNDU2M2Ys
IC0wLjEwMzU5OWYsIC0wLjYxODkzOGYsCi0tMC4zMTc4NTlmLCAtMC4xNjk5NDlmLCAtMC4wNzAy
ODg1ZiwgMC4xNDgwNjVmLCAwLjQwOTUyNGYsCi0wLjU0ODQzMmYsIDAuMzY3NjQ5ZiwgLTAuNDk0
MzkzZiwgMC43NjQzMDZmLCAtMS44Mzk1N2YsCi0wLjE3MDg0OWYsIDEyLjc4NmYsIC0xLjA4ODQ4
ZiwgLTEuMjcyODRmLCAtMTYuMjYwNmYsCi0yNC4xNzczZiwgLTUuNTc0NTRmLCAtMC4xNzI3NmYs
IC0wLjE2MzM4OGYsIC0wLjIyNDQyMWYsCi0tMC4wOTQ4OTQ0ZiwgLTAuMDcyODY5NWYsIC0wLjI2
NTU3ZiwgLTAuMTAwMjgzZiwgLTAuMDUxNTQ1OWYsCi0tMC4xNDYxNDJmLCAtMC4xMjA2NzRmLCAt
MC4xODA2NTVmLCAwLjEyODU3ZiwgMC40NDIxMzhmLAotLTAuNDkzNzM1ZiwgMC4xNjc3NjdmLCAw
LjIwNjY5OWYsIC0wLjE5NzU2N2YsIDAuNDE3OTk5ZiwKLTEuNTAzNjRmLCAtMC43NzMzNDFmLCAt
MTAuMDQwMWYsIDAuNDAxODcyZiwgMi45Nzk2NmYsCi0xNS4yMTY1ZiwgLTEuODg5MDVmLCAtMS4x
OTI1NGYsIDAuMDI4NTM5N2YsIC0wLjAwNDA1MTM5ZiwKLTAuMDcwNzU2NWYsIDAuMDA4MjU2OTlm
LCAtMC4wOTI3MjY5ZiwgLTAuMDEwMzkzZiwgLTAuMDA0Mjg4ODJmLAotLTAuMDA0ODk3NDNmLCAt
MC4wNzA5NzMxZiwgLTAuMDAyNTU5OTJmLCAwLjAzOTU2MTlmLCAwLjIyNjQyNGYsCi0wLjAzMjUy
MzFmLCAwLjE2MjE3NWYsIC0wLjEwMDExOGYsIDAuNDg1Nzg5ZiwgMC4xMjY5N2YsCi0wLjI4NTkz
N2YsIDAuMDE1NTYzN2YsIDAuMTA1NDZmLCAzLjA1NTU4ZiwgMS4xNTA1OWYsCi0tMS4wMDkwNGYs
IC0xLjgzMDg4ZiwgMy4zMTc2NmYsIC0zLjQyNTE2ZiwgLTAuMTE5MTM1ZiwKLS0wLjA0MDU2NTRm
LCAwLjAwNjkwMDY4ZiwgMC4wMTc5ODc3ZiwgLTAuMDM4MjQ4N2YsIDAuMDA1OTc5NDFmLAotLTAu
MDE4MzYxMWYsIDAuMDAxOTAzOTVmLCAtMC4xNDQzMjJmLCAtMC4wNDM1NjcxZiwgMC4wMDA5OTA1
OTRmLAotMC4yMjEwODdmLCAwLjE0MjQwNWYsIDAuNDg0MDY2ZiwgMC40MDQzOTVmLCAwLjUxMTk1
NWYsCi0tMC4yMzcyNTVmLCAwLjI0MTc0MmYsIDAuMzUwNDVmLCAtMC42OTk0MjhmLCAxMC4zOTkz
ZiwKLTIuNjUwN2YsIC0yLjQzNDU5ZiwgLTQuMTg4MzhmLCAxLjA1OTI4ZiwgMS43MTA2N2YsCi0w
LjAwNjY3ODExZiwgLTAuMDcyMTMzNWYsIC0wLjAzOTczNDZmLCAwLjAzNjI3MDRmLCAtMC4xMTQ5
NmYsCi0tMC4wMjM1Nzc2ZiwgMC4wMDgyMTYxZiwgLTAuMDE0MTc0MWYsIC0wLjAzMjk2OTlmLCAt
MC4wMzU0MjUzZiwKLTAuMDAyNzc0MDRmLCAtMC4yOTA2NTRmLCAtMS4xNDc2N2YsIC0wLjMxOTE1
N2YsIC0wLjY4NjU0NGYsCi0wLjM2ODk3ZiwgMC40Nzg4OTlmLCAwLjE4MjU3OWYsIC0wLjQxMTA2
OWYsIDAuODgxMTA0ZiwKLS00LjYwNjgzZiwgMS40Njk3ZiwgMC4zMzU4NDVmLCAtMS44MTkwNWYs
IC0zMC4xNjk5ZiwKLTUuNTUyMjVmLCAwLjAwMTk1MDhmLCAtMC4xMjM1NzZmLCAtMC4wNzI3MzMy
ZiwgLTAuMDY0MTU5N2YsCi0tMC4wNTM0NDU4ZiwgLTAuMTA4MTY2ZiwgLTAuMDkzNzM2OGYsIC0w
LjA2OTc4ODNmLCAtMC4wMjc1NDc1ZiwKLS0wLjE5MjMwOWYsIC0wLjExMDA3NGYsIDAuMjg1Mzc1
ZiwgLTAuNDA1NTk3ZiwgMC4wOTI2NzI0ZiwKLS0wLjI4Nzg4MWYsIC0wLjg1MTE5M2YsIC0wLjA5
OTQ5M2YsIC0wLjIzMzc2NGYsIC0xLjI4NTJmLAotMS4xMzYxMWYsIDMuMTIxNjhmLCAtMC4wNjk5
ZiwgLTEuODYyMTZmLCAyLjY1MjkyZiwKLS03LjMxMDM2ZiwgMi40NDc3NmYsIC0wLjAwMTExODAy
ZiwgLTAuMDYzMjc4NmYsIC0wLjAzNzYyOTZmLAotLTAuMTQ5ODUxZiwgMC4xNDI5NjNmLCAwLjE4
NDM2OGYsIDAuMTIzNDMzZiwgMC4wNzU2MTU4ZiwKLTAuMTE3MzEyZiwgMC4wOTMzMzk1ZiwgMC4w
NjkyMTYzZiwgMC4wODQyNTkyZiwgMC4wNzA0NjgzZiwKLTAuMDU4OTk2M2YsIDAuMDk0MjIwNWYs
IC0wLjQ0ODg2MmYsIDAuMDI2MjY3N2YsIDAuMjcwMzUyZiwKLS0wLjI2MjMxN2YsIDAuMTcyNTg2
ZiwgMi4wMDIyN2YsIC0wLjE1OTIxNmYsIDAuMDM4NDIyZiwKLTEwLjIwNzNmLCA0LjE1NTM2Ziwg
LTIuMzQwN2YsIC0wLjA1NTAyNjVmLCAwLjAwOTY0NzkyZiwKLS0wLjE0MTMzNmYsIDAuMDI3NDUw
MWYsIDAuMDM0MzkyMWYsIC0wLjA0ODc0MjhmLCAwLjA5NTAxNzJmLAotLTAuMDA3NzUwMTdmLCAt
MC4wMzcyNDkyZiwgLTAuMDA1NDgxMjFmLCAtMC4wNjYzNjk1ZiwgMC4wOTYwNTA2ZiwKLS0wLjIw
MDAwOGYsIC0wLjA0MTI4MjdmLCAwLjU4NzI4ZiwgMC4wNTE1Nzg3ZiwgMC4zMzcyNTRmLAotMC44
NTUwMjRmLCAwLjY2ODM3MWYsIC0wLjExNDkwNGYsIC0zLjYyOTYyZiwgLTAuNDY3NDc3ZiwKLS0w
LjIxNTQ3MmYsIDIuNjE1MzdmLCAwLjQwNjExN2YsIC0xLjM2MzczZiwgMC4wNDI1Mzk0ZiwKLTAu
MTIyMDhmLCAwLjA5MzQ1MDJmLCAwLjEyMzA1NWYsIDAuMDM0MDkzNWYsIC0wLjE0MjQ2NmYsCi0w
LjAzNTAzN2YsIC0wLjA0OTA2NjZmLCAwLjA3MzMyMDhmLCAwLjA1NzY2NzJmLCAwLjEyMzk4NGYs
Ci0tMC4wNTE3MTk0ZiwgLTAuMjUzMDE4ZiwgMC41OTA1NjVmLCAwLjE0NTg0OWYsIDAuMzE1MTg1
ZiwKLTAuMjIxNTM0ZiwgLTAuMTQ5MDgxZiwgMC4yMTYxNjFmLCAtMC4zNDk1NzVmLCAyNC41NjY0
ZiwKLS0wLjk5NDE5NmYsIDAuNjE0Mjg5ZiwgLTE4Ljc5MDVmLCAtMi44MzI3N2YsIC0wLjcxNjgw
MWYsCi0tMC4zNDcyMDFmLCAwLjQ3OTUxNWYsIC0wLjI0NjAyN2YsIDAuMDc1ODY4M2YsIDAuMTM3
MjkzZiwKLS0wLjE3NzgxZiwgMC4xMTg3NTFmLCAtMC4wMDEwODMyOWYsIC0wLjIzNzMzNGYsIDAu
MzU1NzMyZiwKLS0wLjEyOTkxZiwgLTAuMDU0NzYyN2YsIC0wLjMxODU3NmYsIC0wLjMyNTUyNGYs
IDAuMTgwNDk0ZiwKLS0wLjA2MjU2MDRmLCAwLjE0MTIxOWYsIDAuMzQ0MDY0ZiwgMC4zNzY1OGYs
IC0wLjU5MTc3MmYsCi01Ljg0MjdmLCAtMC4zODA3NWYsIDAuMjIxODk0ZiwgLTEuNDE5MzRmLCAt
MS44Nzk0M2UrMDZmLAotMS4zNDExNGYsIDAuMDI4MzM1NWYsIC0wLjA0NDc4NTZmLCAtMC4wMjEx
NDY2ZiwgLTAuMDI1NjkyN2YsCi0wLjAxMzk2MThmLCAwLjAyMDc5MzRmLCAtMC4wMTA3NjY2Ziwg
MC4wMTEwOTY5ZiwgMC4wNTg2MDY5ZiwKLS0wLjAyNTM1NDVmLCAtMC4wMzI4NDMzZiwgMC4xMTg3
MmYsIC0wLjIxNjk0M2YsIDAuMTQ1NzQ4ZiwKLTAuMTE5ODA4ZiwgLTAuMDkxNTIxMWYsIC0wLjEy
MDY0N2YsIC0wLjA3ODc3MTlmLCAtMC4xNDM2NDRmLAotLTAuNTk1MTE2ZiwgLTEuMTUyZiwgLTEu
MjUzMzVmLCAtMS4xNzA5MmYsIDQuMzQwMjNmLAotLTk3NTI2OC5mLCAtMS4zNzAzM2YsIC0wLjA0
MDExMjNmLCAwLjIxMDYwMmYsIC0wLjEzNjY1NmYsCi0wLjEzNTk2MmYsIC0wLjA1MjMyOTNmLCAw
LjA0NDQ2MDRmLCAwLjAxNDM5MjhmLCAwLjAwNDEyNjY2ZiwKLS0wLjAxOTMwMDNmLCAwLjIxODQ1
MmYsIC0wLjExMDIwNGYsIC0yLjAyNTYzZiwgMC45MTgyMzhmLAotLTIuNDUzNjJmLCAxLjE5NTQy
ZiwgLTAuMDYxMzYyZiwgLTEuOTIyNDNmLCAwLjMwODExMWYsCi0wLjQ5NzY0ZiwgMC45MTIzNTZm
LCAwLjIwOTI3MmYsIC0yLjM0NTI1ZiwgMi4xOTMyNmYsCi0tNi40NzEyMWYsIDEuNjk3NzFmLCAt
MC43MjUxMjNmLCAwLjAxMTg5MjlmLCAwLjAzNzc5NDRmLAotMC4wNTU0MDAzZiwgMC4wMjI2NDUy
ZiwgLTAuMDcwNDQyMWYsIC0wLjAzMDAzMDlmLCAwLjAxMjI5NzhmLAotLTAuMDA0MTc4MmYsIC0w
LjA2ODY2MTJmLCAwLjAzMTMxMTVmLCAwLjAzOTExMWYsIDAuMzY0MTExZiwKLS0wLjA5NDU1NDhm
LCAwLjAyMjk4NzZmLCAtMC4xNzQxNGYsIDAuMzI5Nzk1ZiwgMC4xMTQ3MTRmLAotMC4zMDAyMmYs
IDAuMTA2OTk3ZiwgMC4xMzIzNTVmLCA1Ljc5OTMyZiwgMC45MDgwNThmLAotLTAuOTA1MzI0Ziwg
LTMuMzU2MWYsIDAuMTkwNjQ3ZiwgMC4xODQyMTFmLCAtMC42NzM2NDhmLAotMC4yMzE4MDdmLCAt
MC4wNTg2MjIyZiwgMC4yMzA3NTJmLCAtMC40MzgyNzdmLCAwLjI0NTg1N2YsCi0tMC4xNzIxNWYs
IDAuMDg3NjM4M2YsIC0wLjcyMDUxMmYsIDAuMTYyNTE1ZiwgMC4wMTcwNTcxZiwKLTAuMTAxNzgx
ZiwgMC4zODg0NzdmLCAxLjMyOTMxZiwgMS4wODU0OGYsIC0wLjkzNjMwMWYsCi0tMi4zNjk1OGYs
IC02LjcxOTg4ZiwgLTMuNDQzNzZmLCAyLjEzODE4ZiwgMTQuMjMxOGYsCi00LjkxNDU5ZiwgLTMu
MDkwNTJmLCAtOS42OTE5MWYsIC0wLjc2ODIzNGYsIDEuNzk2MDRmLAotMC4wNTQ5NjUzZiwgMC4x
NjMzOTlmLCAwLjA3OTcwMjVmLCAwLjAzNDM5MzNmLCAtMC4wNTU1ODc2ZiwKLS0wLjAwNTA1Njcz
ZiwgMC4wMTg3MjU4ZiwgMC4wMzI2NjI4ZiwgMC4wMjMxNDg2ZiwgMC4xNTU3M2YsCi0wLjA0NzYy
MjNmLCAtMC4yNTQ4MjRmLCAxLjYwMTU1ZiwgLTAuODAxMjIxZiwgMi41NTQ5NmYsCi0wLjczNzYy
OWYsIC0xLjM2MjQ5ZiwgLTAuNjk1NDYzZiwgLTIuNDQzMDFmLCAtMS43MzE4OGYsCi0zLjk1Mjc5
ZiwgMS44OTA2OGYsIDAuNDg2MDg3ZiwgLTExLjMzNDNmLCAzLjk0MTZlKzA2ZiwKLQorLTAuNTE0
NjI0ZiwgMC4wMjM0MjI3ZiwgLTAuMTQzMjlmLCAtMC4wODc4MjE2ZiwgLTAuMDAxODc4MjdmLAor
LTAuMDI1NzQ0M2YsIDAuMTA4NTI0ZiwgMC4wMDMzMzg4MWYsIDAuMDA1ODUwMTdmLCAtMC4wMjQ2
MTMyZiwKKzAuMTQyNzIzZiwgLTAuMDA0MzY0OTRmLCAwLjAxMDEzNTRmLCAtMC4xMTEyNGYsIC0w
LjA4MDkzNjdmLAorLTAuMDc1MDc3MmYsIDAuMDI5NTUyNGYsIDAuMDA4MjM5NDRmLCAwLjE1MDM5
MmYsIDAuMDMyMDg3NmYsCistMC4wNzEwNTY0ZiwgLTEuNDM4MThmLCAwLjY1MjA3NmYsIDAuMDY1
MDc0NGYsIC0xLjU0ODIxZiwKKzAuMTY4OTQ5ZiwgLTEuOTI3MjRmLCAwLjA1MTc5NzZmLCAtMC4w
NjcwNzM3ZiwgLTAuMDY5MDEyMWYsCiswLjAwMjQ3NTI4ZiwgLTAuMDUyMjAyNGYsIDAuMDYzMTM2
OGYsIDAuMDUzMjc3NmYsIDAuMDQ3NzUxZiwKKy0wLjAxMTcxNWYsIDAuMTQyMzc0ZiwgLTAuMDI5
MDg4NWYsIC0wLjI3OTI2M2YsIC0wLjQzMzQ5OWYsCistMC4wNzk1MTc0ZiwgLTAuMzgwNDU4Ziwg
LTAuMDUxMjYzZiwgMC4yMTg1MzdmLCAtMC4zMjI0NzhmLAorMS4wNjY2N2YsIC0wLjEwNDYwN2Ys
IC00LjcwMTA4ZiwgMC4zMTIwMzdmLCAwLjI3NzM5N2YsCistMi43MTg1OWYsIDEuNzAwMzdmLCAt
MC4xNDE4NDVmLCAwLjAxMTU2MThmLCAwLjA2Mjk4ODNmLAorMC4wNDAzODcxZiwgMC4wMTM5NDI4
ZiwgLTAuMDA0MzA3MzNmLCAtMC4wNDI5MDM4ZiwgLTAuMDU5MDMxOGYsCistMC4wNTAxNTI2Ziwg
LTAuMDI4NDgwMmYsIC0wLjA0MTU2ODZmLCAtMC4wNDM4OTk5ZiwgMC4wODIyNjY2ZiwKKzAuMTk3
MTk0ZiwgMC4wMzYzMjc1ZiwgLTAuMDU4NDMwN2YsIDAuMDc1MjM2NGYsIC0wLjA3OTk3OTZmLAor
LTAuMTQ2Mjc1ZiwgMC4xNjE2NjFmLCAtMC4xODQ1ODVmLCAwLjE0NTU2OGYsIDAuNDQyODIzZiwK
KzEuNjEyMjFmLCAxLjExMTYyZiwgMi42MjE3N2YsIC0yLjQ4MmYsIC0wLjExMjU5OWYsCistMC4x
MTAzNjZmLCAtMC4xNDA3OTRmLCAtMC4xODE2OTRmLCAwLjA2NDg2NzRmLCAwLjA4NDIyNDhmLAor
MC4wOTMzOTkzZiwgMC4xNTAxMjJmLCAwLjEyOTE3MWYsIDAuMTc2ODQ4ZiwgMC4xNDE3NThmLAor
LTAuMjcxODIyZiwgMC4yMzUxMTNmLCAwLjA2Njg1NzlmLCAtMC40MzM5NTdmLCAwLjExMzYzM2Ys
CistMC4xNjkzNDhmLCAtMS40MDA5MWYsIDAuNjI4NjFmLCAtMC4xMzQyMzZmLCAwLjQwMjE3M2Ys
CisxLjg2MzczZiwgMS41Mzk5OGYsIC00LjMyMDg0ZiwgMC43MzUzNDNmLCAwLjgwMDIxNGYsCist
MC4wMDk2ODQxNWYsIDAuMDQyNTkwNGYsIDAuMDE5NjgxMWYsIC0wLjAxODQyNmYsIC0wLjAwMDM0
Mzk1M2YsCistMC4wMDQxNjM4OWYsIDAuMDAxMTE1NThmLCAwLjAxNzMwNjlmLCAtMC4wMDk5ODU5
NmYsIC0wLjAyNTg5OGYsCiswLjAwMTIzNzY0ZiwgLTAuMDA1MjAzNzNmLCAtMC4wNTY1MDMzZiwg
MC4wNjM3Mzk0ZiwgMC4wMDUxMjEzZiwKKzAuMDIyMTM2MWYsIDAuMDA4MTk5NjJmLCAtMC4wNDY3
MDYxZiwgLTAuMDU0ODI1OGYsIC0wLjAwMzE0MDYzZiwKKy0xLjE4MzMyZiwgMS44ODA5MWYsIC0w
LjQxMTQ4ZiwgLTIuOTU3MjdmLCAtMC41MjE0NDlmLAorLTAuMjcxNjQxZiwgMC4xMjQ5NDZmLCAt
MC4wNTMyOTM2ZiwgMC4xMDE1MTVmLCAwLjAwMDIwODU2NGYsCistMC4wNDg4NzQ4ZiwgMC4wNjQy
Mzg4ZiwgLTAuMDM4Mzg0OGYsIDAuMDEzNTA0NmYsIC0wLjA0MTM1OTJmLAorLTAuMDMyNjQwMmYs
IC0wLjAxMzc0MjFmLCAtMC4wMjI1MjE5ZiwgLTAuMDkxNzI5NGYsIC0wLjI3Nzc1OWYsCistMC4x
ODU0MThmLCAwLjA0NzExMjhmLCAtMC4xMjU4NzlmLCAwLjI2MjQ2N2YsIC0wLjIxMjc5NGYsCist
MC4xMTI5MzFmLCAtMS45OTg4NWYsIC0wLjQwNDc4N2YsIDAuMjI0NDAyZiwgMC42Mzc5NjJmLAor
LTAuMjc4MDhmLCAtMC4wNzIzOTUzZiwgLTAuMDUzNzY1NWYsIC0wLjAzMzYzNTlmLCAtMC4wOTA2
NjAxZiwKKy0wLjA2NDEzMDlmLCAtMC4wNzEzNTQyZiwgMC4wNTI0MzE3ZiwgMC4wMDYwODgxOWYs
IDAuMDc1NDEwMWYsCistMC4wNDg4NDAxZiwgLTAuMDA2NzE4NjVmLCAwLjA0MTgyMzlmLCAwLjA1
MzYyODRmLCAtMC4xMzI2MzlmLAorMC4wMjY3NjQ4ZiwgLTAuMjQ4NDMyZiwgLTAuMDEwNDE1M2Ys
IDAuMDM1NTQ0ZiwgLTAuMjEyNzUzZiwKKy0wLjMwMjg5NWYsIC0wLjAzNTc4NTRmLCAwLjM3Njgz
OGYsIDAuNTk3MDI1ZiwgLTAuNjY0NjQ3ZiwKKzAuMjY4NDIyZiwgLTAuMzc2NzcyZiwgLTEuMDU0
NzJmLCAwLjAxNDQxNzhmLCAwLjE3OTEyMmYsCiswLjAzNjAxNTVmLCAwLjIyMDI2MmYsIC0wLjAw
NTYzODFmLCAwLjAzMTcxOTdmLCAwLjA2MjEwNjZmLAorLTAuMDA3NzkyOThmLCAwLjAwNzg5Mzc4
ZiwgMC4wMDM1MDYwNWYsIDAuMDEwNDgwOWYsIDAuMDM2Mjg3MWYsCistMC4xNTc3MDhmLCAtMC4w
NjU5Nzc5ZiwgLTAuMDkyNjI3OGYsIDAuMDA3NzA3OTFmLCAwLjA2MzE2MjFmLAorMC4wODE3MzQz
ZiwgLTAuNDI0Mjk1ZiwgLTAuMDQzNzcyN2YsIC0wLjI0MjUxZiwgMC43MTEyMTdmLAorLTAuNzM2
NDU1ZiwgLTIuMTk0ZiwgLTAuMTA3NjEyZiwgLTAuMTc1MTU2ZiwgLTAuMDM2NjU3M2YsCistMC4w
MTIzMTU2ZiwgLTAuMDYyODUxNmYsIC0wLjAyMTg5NzdmLCAtMC4wMDY5MzY5OWYsIDAuMDA2OTUx
ODVmLAorMC4wMDUwNzM2MmYsIDAuMDAzNTkzMzRmLCAwLjAwNTI2NjFmLCAwLjAzNTU2MWYsIDAu
MDM4MjcwMWYsCiswLjAzNDIxNzlmLCAtMC4wMDc5MDI3MWYsIC0wLjAxNzA5MjVmLCAwLjA0NzAy
OWYsIDAuMDE5NzM2MmYsCistMC4wMTUzNDM1ZiwgMC4wNjQ0MTUyZiwgLTAuMzY4NjJmLCAtMC4w
Njc0ODc2ZiwgLTIuODI2NzJmLAorMS4zNDEyMmYsIC0wLjA3ODgwMjlmLCAtMy40Nzc5MmYsIDAu
NTA3MjQ2ZiwgLTAuODE2Mzc4ZiwKKy0wLjAxNDIzODNmLCAtMC4xMjczNDlmLCAtMC4xMDY5MjZm
LCAtMC4wMzU5NTI0ZiwgMC4xMDUwNDVmLAorMC4yOTE1NTRmLCAwLjE5NTQxM2YsIDAuMDg2NjIx
NGYsIC0wLjA2NjU3N2YsIC0wLjEwMjE4OGYsCiswLjA5Nzk0NjZmLCAtMC4xMjk4MmYsIDAuNDAw
MTgxZiwgLTAuNDA5MzM2ZiwgLTAuMDU5MzMyNmYsCistMC4wNjU2MjAzZiwgLTAuMjA0NDc0Ziwg
MC4xNzk4MDJmLCAwLjAwMDUwOTA4NGYsIDAuMDk5NTk1NGYsCistMi4zNzdmLCAtMC42ODYzNTlm
LCAwLjkzNDg2MWYsIDEuMTAyNjFmLCAxLjM5MDFmLAorLTQuMzM2MTZmLCAtMC4wMDI2NDAxN2Ys
IDAuMDA3MTMwNDVmLCAwLjEwNjI2NGYsIDAuMTQzNzI2ZiwKKy0wLjA2ODUzMDVmLCAtMC4wNTQ2
NTZmLCAtMC4wMTc2NzI1ZiwgLTAuMDc3MjY2OWYsIC0wLjAyNjQ1MjZmLAorLTAuMDEwMzgyNGYs
IC0wLjAyNjk4NzJmLCAtMC4wMDY4N2YsIDAuMjI1ODA0ZiwgMC40MDc3NTFmLAorLTAuMDYxMjYx
MWYsIC0wLjA1NzY4NjNmLCAtMC4xODAxMzFmLCAtMC4yMjI3NzJmLCAtMC40NjE3NDJmLAorMC4z
MzUyMzZmLCAxLjAzMzk5ZiwgNC4yNDExMmYsIC0wLjM0NTc5NmYsIC0wLjU5NDU0OWYsCistNzYu
MTQwN2YsIC0wLjI2NTI3NmYsIDAuMDUwNzcxOWYsIDAuMDY0MzA0NGYsIDAuMDM4NDgzMmYsCisw
LjA0MjQ0NTlmLCAtMC4wMzg3ODE3ZiwgLTAuMDIzNTk5NmYsIC0wLjA3NDA1NTZmLCAtMC4wMjcw
MDI5ZiwKKzAuMDA4ODIxNzdmLCAtMC4wNTUyMzcxZiwgLTAuMDA0ODU4NTFmLCAwLjMxNDI5NWYs
IDAuMzYwNDMxZiwKKy0wLjA3ODcwODVmLCAwLjExMDM1NWYsIC0wLjQxNTk1OGYsIC0wLjM4NTA4
OGYsIC0wLjI3MjIyNGYsCistMS41NTEwOGYsIC0wLjE0MTg0OGYsIDAuNDQ4ODc3ZiwgLTAuNTYz
NDQ3ZiwgLTIuMzE0MDNmLAorLTAuMTIwMDc3ZiwgLTEuNDk5MThmLCAtMC44MTc3MjZmLCAtMC4w
NDk1ODU0ZiwgLTAuMDIzMDc4MmYsCistMC4wMjI0MDE0ZiwgMC4xMTcwNzZmLCAwLjAzOTMyMTZm
LCAwLjA1MTk5N2YsIDAuMDMzMDc2M2YsCistMC4xMTA3OTZmLCAwLjAyMTExMTdmLCAtMC4wMTk3
MjU4ZiwgMC4wMTg3NDYxZiwgMC4wMTI1MTgzZiwKKzAuMTQ4NzZmLCAwLjA5MjA1NjVmLCAtMC4z
NDI0NzVmLCAwLjEzNTI3MmYsIC0wLjE2ODE1NWYsCistMC4wMzM0MjNmLCAtMC4wNjA0NjExZiwg
LTAuMTI4ODM1ZiwgMC42NjQ5NDdmLCAtMC4xNDQ5OTdmLAorMi4yNzY0OWYsIDEuMjg2NjNmLCAw
Ljg0MTIxN2YsIC0yLjQyODA3ZiwgMC4wMjMwNDcxZiwKKzAuMjI2NzA5ZiwgLTAuMDM3NDgwM2Ys
IDAuMTU1NDM2ZiwgMC4wNDAwMzQyZiwgLTAuMTg0Njg2ZiwKKzAuMTI4NDg4ZiwgLTAuMDkzOTUx
OGYsIC0wLjA1Nzg1NTlmLCAwLjAyNjU5NjdmLCAtMC4wOTk5MzIyZiwKKy0wLjAzMjI3NjhmLCAt
MC4zMjI5OTRmLCAtMC4xODkzNzFmLCAtMC43MzgwNjlmLCAtMC4wNzU0OTE0ZiwKKzAuMjE0NzE3
ZiwgLTAuMDkzNzI4ZiwgLTAuNjk1NzQxZiwgMC4wODk5Mjk4ZiwgLTIuMDYxODhmLAorLTAuMjcz
NzE5ZiwgLTAuODk2OTc3ZiwgMC4xMzA1NTNmLCAwLjEzNDYzOGYsIDEuMjkzNTVmLAorMC4wMDUy
MDc0OWYsIC0wLjAzMjQyMjRmLCAwLjAwNTMwNDUxZiwgMC4wMTkyMzg1ZiwgMC4wMDMyODcwOGYs
CiswLjAyNTA4MzhmLCAwLjAwNTMzNjVmLCAtMC4wMTc3MzIxZiwgMC4wMDYxODc4OWYsIDAuMDA1
MjUzNjRmLAorMC4wMDEwNDU5NmYsIC0wLjAzNjA0NTlmLCAwLjA0MDI0MDNmLCAtMC4wNDA2MzUx
ZiwgMC4wMTM2ODgzZiwKKzAuMDg4MDcyMmYsIC0wLjAxOTc0NDlmLCAwLjA4OTkzOGYsIDAuMDEw
MDQ1NmYsIC0wLjA0NzU2MzhmLAorLTAuNzMyNjdmLCAwLjAzNzQzM2YsIC0wLjE0NjU1MWYsIC0w
LjIzMDIyMWYsIC0zLjA2NDg5ZiwKKy0xLjQwMTk0ZiwgMC4wMTk4NDgzZiwgMC4wMzk3OTUzZiwg
LTAuMDE5MDIzOWYsIDAuMDQ3MDcxNWYsCistMC4xMzEzNjNmLCAtMC4xOTE3MjFmLCAtMC4wMTc2
MjI0ZiwgLTAuMDQ4MDM1MmYsIC0wLjIyMTc5OWYsCistMC4yNjc5NGYsIC0wLjAyOTI2MTVmLCAw
LjA2MTIxMjdmLCAtMC4xMjk4NzdmLCAwLjAwNjI4MzMyZiwKKy0wLjA4NTkxOGYsIDAuMDE3NTM3
OWYsIDAuMDU0MTAxMWYsIC0wLjA4MTA4NzRmLCAtMC4zODA4MDlmLAorLTAuMjIyMDU2ZiwgLTAu
NTA4ODU5ZiwgLTAuNDczMzY5ZiwgMC40ODQ5NThmLCAtMi4yODQxMWYsCiswLjAxMzk1MTZmLAog
Lyogb3V0cHV0IGxheWVyICovCi0tMC4zODE0MzlmLCAwLjEyMTE1ZiwgLTAuOTA2OTI3ZiwgMi45
Mzg3OGYsIDEuNjM4OGYsCi0wLjg4MjgxMWYsIDAuODc0MzQ0ZiwgMS4yMTcyNmYsIC0wLjg3NDU0
NWYsIDAuMzIxNzA2ZiwKLTAuNzg1MDU1ZiwgMC45NDY1NThmLCAtMC41NzUwNjZmLCAtMy40NjU1
M2YsIDAuODg0OTA1ZiwKLTAuMDkyNDA0N2YsIC05LjkwNzEyZiwgMC4zOTEzMzhmLCAwLjE2MDEw
M2YsIC0yLjA0OTU0ZiwKLTQuMTQ1NWYsIDAuMDY4NDAyOWYsIC0wLjE0NDc2MWYsIC0wLjI4NTI4
MmYsIDAuMzc5MjQ0ZiwKLS0xLjE1ODRmLCAtMC4wMjc3MjQxZiwgLTkuODVmLCAtNC44MjM4NmYs
IDMuNzEzMzNmLAotMy44NzMwOGYsIDMuNTI1NThmfTsKKzMuOTAwMTdmLCAxLjcxNzg5ZiwgLTEu
NDMzNzJmLCAtMi43MDgzOWYsIDEuNzcxMDdmLAorNS40ODAwNmYsIDEuNDQ2NjFmLCAyLjAxMTM0
ZiwgLTEuODgzODNmLCAtMy42NDk1OGYsCistMS4yNjM1MWYsIDAuNzc5NDIxZiwgMi4xMTM1N2Ys
IDMuMTA0MDlmLCAxLjY4ODQ2ZiwKKy00LjQ2MTk3ZiwgLTEuNjE0NTVmLCAzLjU5ODMyZiwgMi40
MzUzMWYsIC0xLjI2NDU4ZiwKKzAuNDE3OTQxZiwgMS40NzQzN2YsIDIuMTY2MzVmLCAtMS45MDlm
LCAtMC44Mjg4NjlmLAorMS4zODgwNWYsIC0yLjY3OTc1ZiwgLTAuMTEwMDQ0ZiwgMS45NTU5NmYs
IDAuNjk3OTMxZiwKKy0wLjMxMzIyNmYsIC0wLjg4OTMxNWYsIDAuMjgzMjM2ZiwgMC45NDYxMDJm
LCB9OwogCi1zdGF0aWMgY29uc3QgaW50IHRvcG9bM10gPSB7MjUsIDE1LCAyfTsKK3N0YXRpYyBj
b25zdCBpbnQgdG9wb1szXSA9IHsyNSwgMTYsIDJ9OwogCiBjb25zdCBNTFAgbmV0ID0gewogICAg
IDMsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NyYy9tbHBfdHJhaW4uYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL21scF90cmFpbi5jCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjhkOWQxMjdhNmRiYmI0ZTU5NmU5ZmQyOGI1YzFhYjFhYzUzMDdmMTkKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NyYy9tbHBfdHJhaW4uYwpAQCAtMCwwICsxLDUwMSBAQAorLyogQ29weXJpZ2h0IChj
KSAyMDA4LTIwMTEgT2N0YXNpYyBJbmMuCisgICBXcml0dGVuIGJ5IEplYW4tTWFyYyBWYWxpbiAq
LworLyoKKyAgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgICBhcmUgbWV0OgorCisgICAtIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisKKyAgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisKKyAgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIEFORCBDT05UUklCVVRPUlMKKyAgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAgIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICAg
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgRk9VTkRBVElPTiBPUgorICAgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAg
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorKi8KKworCisjaW5jbHVkZSAibWxwX3RyYWluLmgiCisjaW5jbHVkZSA8c3RkbGliLmg+
CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzZW1h
cGhvcmUuaD4KKyNpbmNsdWRlIDxwdGhyZWFkLmg+CisjaW5jbHVkZSA8dGltZS5oPgorI2luY2x1
ZGUgPHNpZ25hbC5oPgorCitpbnQgc3RvcHBlZCA9IDA7CisKK3ZvaWQgaGFuZGxlcihpbnQgc2ln
KQoreworICAgIHN0b3BwZWQgPSAxOworICAgIHNpZ25hbChzaWcsIGhhbmRsZXIpOworfQorCitN
TFBUcmFpbiAqIG1scF9pbml0KGludCAqdG9wbywgaW50IG5iTGF5ZXJzLCBmbG9hdCAqaW5wdXRz
LCBmbG9hdCAqb3V0cHV0cywgaW50IG5iU2FtcGxlcykKK3sKKyAgICBpbnQgaSwgaiwgazsKKyAg
ICBNTFBUcmFpbiAqbmV0OworICAgIGludCBpbkRpbSwgb3V0RGltOworICAgIG5ldCA9IG1hbGxv
YyhzaXplb2YoKm5ldCkpOworICAgIG5ldC0+dG9wbyA9IG1hbGxvYyhuYkxheWVycypzaXplb2Yo
bmV0LT50b3BvWzBdKSk7CisgICAgZm9yIChpPTA7aTxuYkxheWVycztpKyspCisgICAgICAgIG5l
dC0+dG9wb1tpXSA9IHRvcG9baV07CisgICAgaW5EaW0gPSB0b3BvWzBdOworICAgIG91dERpbSA9
IHRvcG9bbmJMYXllcnMtMV07CisgICAgbmV0LT5pbl9yYXRlID0gbWFsbG9jKChpbkRpbSsxKSpz
aXplb2YobmV0LT5pbl9yYXRlWzBdKSk7CisgICAgbmV0LT53ZWlnaHRzID0gbWFsbG9jKChuYkxh
eWVycy0xKSpzaXplb2YobmV0LT53ZWlnaHRzKSk7CisgICAgbmV0LT5iZXN0X3dlaWdodHMgPSBt
YWxsb2MoKG5iTGF5ZXJzLTEpKnNpemVvZihuZXQtPndlaWdodHMpKTsKKyAgICBmb3IgKGk9MDtp
PG5iTGF5ZXJzLTE7aSsrKQorICAgIHsKKyAgICAgICAgbmV0LT53ZWlnaHRzW2ldID0gbWFsbG9j
KCh0b3BvW2ldKzEpKnRvcG9baSsxXSpzaXplb2YobmV0LT53ZWlnaHRzWzBdWzBdKSk7CisgICAg
ICAgIG5ldC0+YmVzdF93ZWlnaHRzW2ldID0gbWFsbG9jKCh0b3BvW2ldKzEpKnRvcG9baSsxXSpz
aXplb2YobmV0LT53ZWlnaHRzWzBdWzBdKSk7CisgICAgfQorICAgIGRvdWJsZSBpbk1lYW5baW5E
aW1dOworICAgIGZvciAoaj0wO2o8aW5EaW07aisrKQorICAgIHsKKyAgICAgICAgZG91YmxlIHN0
ZD0wOworICAgICAgICBpbk1lYW5bal0gPSAwOworICAgICAgICBmb3IgKGk9MDtpPG5iU2FtcGxl
cztpKyspCisgICAgICAgIHsKKyAgICAgICAgICAgIGluTWVhbltqXSArPSBpbnB1dHNbaSppbkRp
bStqXTsKKyAgICAgICAgICAgIHN0ZCArPSBpbnB1dHNbaSppbkRpbStqXSppbnB1dHNbaSppbkRp
bStqXTsKKyAgICAgICAgfQorICAgICAgICBpbk1lYW5bal0gLz0gbmJTYW1wbGVzOworICAgICAg
ICBzdGQgLz0gbmJTYW1wbGVzOworICAgICAgICBuZXQtPmluX3JhdGVbMStqXSA9IC41LyguMDAw
MStzdGQpOworICAgICAgICBzdGQgPSBzdGQtaW5NZWFuW2pdKmluTWVhbltqXTsKKyAgICAgICAg
aWYgKHN0ZDwuMDAxKQorICAgICAgICAgICAgc3RkID0gLjAwMTsKKyAgICAgICAgc3RkID0gMS9z
cXJ0KGluRGltKnN0ZCk7CisgICAgICAgIGZvciAoaz0wO2s8dG9wb1sxXTtrKyspCisgICAgICAg
ICAgICBuZXQtPndlaWdodHNbMF1bayoodG9wb1swXSsxKStqKzFdID0gcmFuZG4oc3RkKTsKKyAg
ICB9CisgICAgbmV0LT5pbl9yYXRlWzBdID0gMTsKKyAgICBmb3IgKGo9MDtqPHRvcG9bMV07aisr
KQorICAgIHsKKyAgICAgICAgZG91YmxlIHN1bSA9IDA7CisgICAgICAgIGZvciAoaz0wO2s8aW5E
aW07aysrKQorICAgICAgICAgICAgc3VtICs9IGluTWVhbltrXSpuZXQtPndlaWdodHNbMF1baioo
dG9wb1swXSsxKStrKzFdOworICAgICAgICBuZXQtPndlaWdodHNbMF1baioodG9wb1swXSsxKV0g
PSAtc3VtOworICAgIH0KKyAgICBmb3IgKGo9MDtqPG91dERpbTtqKyspCisgICAgeworICAgICAg
ICBkb3VibGUgbWVhbiA9IDA7CisgICAgICAgIGRvdWJsZSBzdGQ7CisgICAgICAgIGZvciAoaT0w
O2k8bmJTYW1wbGVzO2krKykKKyAgICAgICAgICAgIG1lYW4gKz0gb3V0cHV0c1tpKm91dERpbStq
XTsKKyAgICAgICAgbWVhbiAvPSBuYlNhbXBsZXM7CisgICAgICAgIHN0ZCA9IDEvc3FydCh0b3Bv
W25iTGF5ZXJzLTJdKTsKKyAgICAgICAgbmV0LT53ZWlnaHRzW25iTGF5ZXJzLTJdW2oqKHRvcG9b
bmJMYXllcnMtMl0rMSldID0gbWVhbjsKKyAgICAgICAgZm9yIChrPTA7azx0b3BvW25iTGF5ZXJz
LTJdO2srKykKKyAgICAgICAgICAgIG5ldC0+d2VpZ2h0c1tuYkxheWVycy0yXVtqKih0b3BvW25i
TGF5ZXJzLTJdKzEpK2srMV0gPSByYW5kbihzdGQpOworICAgIH0KKyAgICByZXR1cm4gbmV0Owor
fQorCisjZGVmaW5lIE1BWF9ORVVST05TIDEwMAorI2RlZmluZSBNQVhfT1VUIDEwCisKK2RvdWJs
ZSBjb21wdXRlX2dyYWRpZW50KE1MUFRyYWluICpuZXQsIGZsb2F0ICppbnB1dHMsIGZsb2F0ICpv
dXRwdXRzLCBpbnQgbmJTYW1wbGVzLCBkb3VibGUgKlcwX2dyYWQsIGRvdWJsZSAqVzFfZ3JhZCwg
ZG91YmxlICplcnJvcl9yYXRlKQoreworICAgIGludCBpLGo7CisgICAgaW50IHM7CisgICAgaW50
IGluRGltLCBvdXREaW0sIGhpZGRlbkRpbTsKKyAgICBpbnQgKnRvcG87CisgICAgZG91YmxlICpX
MCwgKlcxOworICAgIGRvdWJsZSBybXM9MDsKKyAgICBpbnQgVzBfc2l6ZSwgVzFfc2l6ZTsKKyAg
ICBkb3VibGUgaGlkZGVuW01BWF9ORVVST05TXTsKKyAgICBkb3VibGUgbmV0T3V0W01BWF9ORVVS
T05TXTsKKyAgICBkb3VibGUgZXJyb3JbTUFYX05FVVJPTlNdOworCisgICAgdG9wbyA9IG5ldC0+
dG9wbzsKKyAgICBpbkRpbSA9IG5ldC0+dG9wb1swXTsKKyAgICBoaWRkZW5EaW0gPSBuZXQtPnRv
cG9bMV07CisgICAgb3V0RGltID0gbmV0LT50b3BvWzJdOworICAgIFcwX3NpemUgPSAodG9wb1sw
XSsxKSp0b3BvWzFdOworICAgIFcxX3NpemUgPSAodG9wb1sxXSsxKSp0b3BvWzJdOworICAgIFcw
ID0gbmV0LT53ZWlnaHRzWzBdOworICAgIFcxID0gbmV0LT53ZWlnaHRzWzFdOworICAgIG1lbXNl
dChXMF9ncmFkLCAwLCBXMF9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBtZW1zZXQoVzFfZ3Jh
ZCwgMCwgVzFfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgZm9yIChpPTA7aTxvdXREaW07aSsr
KQorICAgICAgICBuZXRPdXRbaV0gPSBvdXRwdXRzW2ldOworICAgIGZvciAoaT0wO2k8b3V0RGlt
O2krKykKKyAgICAgICAgZXJyb3JfcmF0ZVtpXSA9IDA7CisgICAgZm9yIChzPTA7czxuYlNhbXBs
ZXM7cysrKQorICAgIHsKKyAgICAgICAgZmxvYXQgKmluLCAqb3V0OworICAgICAgICBmbG9hdCBp
bnBbaW5EaW1dOworICAgICAgICBpbiA9IGlucHV0cytzKmluRGltOworICAgICAgICBvdXQgPSBv
dXRwdXRzICsgcypvdXREaW07CisgICAgICAgIGZvciAoaj0wO2o8aW5EaW07aisrKQorICAgICAg
ICAgICBpbnBbal0gPSBpbltqXTsKKyAgICAgICAgZm9yIChpPTA7aTxoaWRkZW5EaW07aSsrKQor
ICAgICAgICB7CisgICAgICAgICAgICBkb3VibGUgc3VtID0gVzBbaSooaW5EaW0rMSldOworICAg
ICAgICAgICAgZm9yIChqPTA7ajxpbkRpbTtqKyspCisgICAgICAgICAgICAgICAgc3VtICs9IFcw
W2kqKGluRGltKzEpK2orMV0qaW5wW2pdOworICAgICAgICAgICAgaGlkZGVuW2ldID0gdGFuc2ln
X2FwcHJveChzdW0pOworICAgICAgICB9CisgICAgICAgIGZvciAoaT0wO2k8b3V0RGltO2krKykK
KyAgICAgICAgeworICAgICAgICAgICAgZG91YmxlIHN1bSA9IFcxW2kqKGhpZGRlbkRpbSsxKV07
CisgICAgICAgICAgICBmb3IgKGo9MDtqPGhpZGRlbkRpbTtqKyspCisgICAgICAgICAgICAgICAg
c3VtICs9IFcxW2kqKGhpZGRlbkRpbSsxKStqKzFdKmhpZGRlbltqXTsKKyAgICAgICAgICAgIG5l
dE91dFtpXSA9IHRhbnNpZ19hcHByb3goc3VtKTsKKyAgICAgICAgICAgIGVycm9yW2ldID0gb3V0
W2ldIC0gbmV0T3V0W2ldOworICAgICAgICAgICAgaWYgKG91dFtpXSA9PSAwKSBlcnJvcltpXSAq
PSAuMDsKKyAgICAgICAgICAgIGVycm9yX3JhdGVbaV0gKz0gZmFicyhlcnJvcltpXSk+MTsKKyAg
ICAgICAgICAgIGlmIChpPT0wKSBlcnJvcltpXSAqPSA1OworICAgICAgICAgICAgcm1zICs9IGVy
cm9yW2ldKmVycm9yW2ldOworICAgICAgICAgICAgLyplcnJvcltpXSA9IGVycm9yW2ldLygxK2Zh
YnMoZXJyb3JbaV0pKTsqLworICAgICAgICB9CisgICAgICAgIC8qIEJhY2stcHJvcGFnYXRlIGVy
cm9yICovCisgICAgICAgIGZvciAoaT0wO2k8b3V0RGltO2krKykKKyAgICAgICAgeworICAgICAg
ICAgICAgZG91YmxlIGdyYWQgPSAxLW5ldE91dFtpXSpuZXRPdXRbaV07CisgICAgICAgICAgICBX
MV9ncmFkW2kqKGhpZGRlbkRpbSsxKV0gKz0gZXJyb3JbaV0qZ3JhZDsKKyAgICAgICAgICAgIGZv
ciAoaj0wO2o8aGlkZGVuRGltO2orKykKKyAgICAgICAgICAgICAgICBXMV9ncmFkW2kqKGhpZGRl
bkRpbSsxKStqKzFdICs9IGdyYWQqZXJyb3JbaV0qaGlkZGVuW2pdOworICAgICAgICB9CisgICAg
ICAgIGZvciAoaT0wO2k8aGlkZGVuRGltO2krKykKKyAgICAgICAgeworICAgICAgICAgICAgZG91
YmxlIGdyYWQ7CisgICAgICAgICAgICBncmFkID0gMDsKKyAgICAgICAgICAgIGZvciAoaj0wO2o8
b3V0RGltO2orKykKKyAgICAgICAgICAgICAgICBncmFkICs9IGVycm9yW2pdKlcxW2oqKGhpZGRl
bkRpbSsxKStpKzFdOworICAgICAgICAgICAgZ3JhZCAqPSAxLWhpZGRlbltpXSpoaWRkZW5baV07
CisgICAgICAgICAgICBXMF9ncmFkW2kqKGluRGltKzEpXSArPSBncmFkOworICAgICAgICAgICAg
Zm9yIChqPTA7ajxpbkRpbTtqKyspCisgICAgICAgICAgICAgICAgVzBfZ3JhZFtpKihpbkRpbSsx
KStqKzFdICs9IGdyYWQqaW5wW2pdOworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiBybXM7
Cit9CisKKyNkZWZpbmUgTkJfVEhSRUFEUyA4CisKK3NlbV90IHNlbV9iZWdpbltOQl9USFJFQURT
XTsKK3NlbV90IHNlbV9lbmRbTkJfVEhSRUFEU107CisKK3N0cnVjdCBHcmFkaWVudEFyZyB7Cisg
ICAgaW50IGlkOworICAgIGludCBkb25lOworICAgIE1MUFRyYWluICpuZXQ7CisgICAgZmxvYXQg
KmlucHV0czsKKyAgICBmbG9hdCAqb3V0cHV0czsKKyAgICBpbnQgbmJTYW1wbGVzOworICAgIGRv
dWJsZSAqVzBfZ3JhZDsKKyAgICBkb3VibGUgKlcxX2dyYWQ7CisgICAgZG91YmxlIHJtczsKKyAg
ICBkb3VibGUgZXJyb3JfcmF0ZVtNQVhfT1VUXTsKK307CisKK3ZvaWQgKmdyYWRpZW50X3RocmVh
ZF9wcm9jZXNzKHZvaWQgKl9hcmcpCit7CisgICAgaW50IFcwX3NpemUsIFcxX3NpemU7CisgICAg
c3RydWN0IEdyYWRpZW50QXJnICphcmcgPSBfYXJnOworICAgIGludCAqdG9wbyA9IGFyZy0+bmV0
LT50b3BvOworICAgIFcwX3NpemUgPSAodG9wb1swXSsxKSp0b3BvWzFdOworICAgIFcxX3NpemUg
PSAodG9wb1sxXSsxKSp0b3BvWzJdOworICAgIGRvdWJsZSBXMF9ncmFkW1cwX3NpemVdOworICAg
IGRvdWJsZSBXMV9ncmFkW1cxX3NpemVdOworICAgIGFyZy0+VzBfZ3JhZCA9IFcwX2dyYWQ7Cisg
ICAgYXJnLT5XMV9ncmFkID0gVzFfZ3JhZDsKKyAgICB3aGlsZSAoMSkKKyAgICB7CisgICAgICAg
IHNlbV93YWl0KCZzZW1fYmVnaW5bYXJnLT5pZF0pOworICAgICAgICBpZiAoYXJnLT5kb25lKQor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGFyZy0+cm1zID0gY29tcHV0ZV9ncmFkaWVudChh
cmctPm5ldCwgYXJnLT5pbnB1dHMsIGFyZy0+b3V0cHV0cywgYXJnLT5uYlNhbXBsZXMsIGFyZy0+
VzBfZ3JhZCwgYXJnLT5XMV9ncmFkLCBhcmctPmVycm9yX3JhdGUpOworICAgICAgICBzZW1fcG9z
dCgmc2VtX2VuZFthcmctPmlkXSk7CisgICAgfQorICAgIGZwcmludGYoc3RkZXJyLCAiZG9uZVxu
Iik7CisgICAgcmV0dXJuIE5VTEw7Cit9CisKK2Zsb2F0IG1scF90cmFpbl9iYWNrcHJvcChNTFBU
cmFpbiAqbmV0LCBmbG9hdCAqaW5wdXRzLCBmbG9hdCAqb3V0cHV0cywgaW50IG5iU2FtcGxlcywg
aW50IG5iRXBvY2gsIGZsb2F0IHJhdGUpCit7CisgICAgaW50IGksIGo7CisgICAgaW50IGU7Cisg
ICAgZmxvYXQgYmVzdF9ybXMgPSAxZTEwOworICAgIGludCBpbkRpbSwgb3V0RGltLCBoaWRkZW5E
aW07CisgICAgaW50ICp0b3BvOworICAgIGRvdWJsZSAqVzAsICpXMSwgKmJlc3RfVzAsICpiZXN0
X1cxOworICAgIGRvdWJsZSAqVzBfZ3JhZCwgKlcxX2dyYWQ7CisgICAgZG91YmxlICpXMF9vbGRn
cmFkLCAqVzFfb2xkZ3JhZDsKKyAgICBkb3VibGUgKlcwX3JhdGUsICpXMV9yYXRlOworICAgIGRv
dWJsZSAqYmVzdF9XMF9yYXRlLCAqYmVzdF9XMV9yYXRlOworICAgIGludCBXMF9zaXplLCBXMV9z
aXplOworICAgIHRvcG8gPSBuZXQtPnRvcG87CisgICAgVzBfc2l6ZSA9ICh0b3BvWzBdKzEpKnRv
cG9bMV07CisgICAgVzFfc2l6ZSA9ICh0b3BvWzFdKzEpKnRvcG9bMl07CisgICAgc3RydWN0IEdy
YWRpZW50QXJnIGFyZ3NbTkJfVEhSRUFEU107CisgICAgcHRocmVhZF90IHRocmVhZFtOQl9USFJF
QURTXTsKKyAgICBpbnQgc2FtcGxlUGVyUGFydCA9IG5iU2FtcGxlcy9OQl9USFJFQURTOworICAg
IGludCBjb3VudF93b3JzZT0wOworICAgIGludCBjb3VudF9yZXRyaWVzPTA7CisKKyAgICB0b3Bv
ID0gbmV0LT50b3BvOworICAgIGluRGltID0gbmV0LT50b3BvWzBdOworICAgIGhpZGRlbkRpbSA9
IG5ldC0+dG9wb1sxXTsKKyAgICBvdXREaW0gPSBuZXQtPnRvcG9bMl07CisgICAgVzAgPSBuZXQt
PndlaWdodHNbMF07CisgICAgVzEgPSBuZXQtPndlaWdodHNbMV07CisgICAgYmVzdF9XMCA9IG5l
dC0+YmVzdF93ZWlnaHRzWzBdOworICAgIGJlc3RfVzEgPSBuZXQtPmJlc3Rfd2VpZ2h0c1sxXTsK
KyAgICBXMF9ncmFkID0gbWFsbG9jKFcwX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIFcxX2dy
YWQgPSBtYWxsb2MoVzFfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgVzBfb2xkZ3JhZCA9IG1h
bGxvYyhXMF9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBXMV9vbGRncmFkID0gbWFsbG9jKFcx
X3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIFcwX3JhdGUgPSBtYWxsb2MoVzBfc2l6ZSpzaXpl
b2YoZG91YmxlKSk7CisgICAgVzFfcmF0ZSA9IG1hbGxvYyhXMV9zaXplKnNpemVvZihkb3VibGUp
KTsKKyAgICBiZXN0X1cwX3JhdGUgPSBtYWxsb2MoVzBfc2l6ZSpzaXplb2YoZG91YmxlKSk7Cisg
ICAgYmVzdF9XMV9yYXRlID0gbWFsbG9jKFcxX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIG1l
bXNldChXMF9ncmFkLCAwLCBXMF9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBtZW1zZXQoVzBf
b2xkZ3JhZCwgMCwgVzBfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgbWVtc2V0KFcxX2dyYWQs
IDAsIFcxX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIG1lbXNldChXMV9vbGRncmFkLCAwLCBX
MV9zaXplKnNpemVvZihkb3VibGUpKTsKKworICAgIHJhdGUgLz0gbmJTYW1wbGVzOworICAgIGZv
ciAoaT0wO2k8aGlkZGVuRGltO2krKykKKyAgICAgICAgZm9yIChqPTA7ajxpbkRpbSsxO2orKykK
KyAgICAgICAgICAgIFcwX3JhdGVbaSooaW5EaW0rMSkral0gPSByYXRlKm5ldC0+aW5fcmF0ZVtq
XTsKKyAgICBmb3IgKGk9MDtpPFcxX3NpemU7aSsrKQorICAgICAgICBXMV9yYXRlW2ldID0gcmF0
ZTsKKworICAgIGZvciAoaT0wO2k8TkJfVEhSRUFEUztpKyspCisgICAgeworICAgICAgICBhcmdz
W2ldLm5ldCA9IG5ldDsKKyAgICAgICAgYXJnc1tpXS5pbnB1dHMgPSBpbnB1dHMraSpzYW1wbGVQ
ZXJQYXJ0KmluRGltOworICAgICAgICBhcmdzW2ldLm91dHB1dHMgPSBvdXRwdXRzK2kqc2FtcGxl
UGVyUGFydCpvdXREaW07CisgICAgICAgIGFyZ3NbaV0ubmJTYW1wbGVzID0gc2FtcGxlUGVyUGFy
dDsKKyAgICAgICAgYXJnc1tpXS5pZCA9IGk7CisgICAgICAgIGFyZ3NbaV0uZG9uZSA9IDA7Cisg
ICAgICAgIHNlbV9pbml0KCZzZW1fYmVnaW5baV0sIDAsIDApOworICAgICAgICBzZW1faW5pdCgm
c2VtX2VuZFtpXSwgMCwgMCk7CisgICAgICAgIHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWRbaV0sIE5V
TEwsIGdyYWRpZW50X3RocmVhZF9wcm9jZXNzLCAmYXJnc1tpXSk7CisgICAgfQorICAgIGZvciAo
ZT0wO2U8bmJFcG9jaDtlKyspCisgICAgeworICAgICAgICBkb3VibGUgcm1zPTA7CisgICAgICAg
IGRvdWJsZSBlcnJvcl9yYXRlWzJdID0gezAsMH07CisgICAgICAgIGZvciAoaT0wO2k8TkJfVEhS
RUFEUztpKyspCisgICAgICAgIHsKKyAgICAgICAgICAgIHNlbV9wb3N0KCZzZW1fYmVnaW5baV0p
OworICAgICAgICB9CisgICAgICAgIG1lbXNldChXMF9ncmFkLCAwLCBXMF9zaXplKnNpemVvZihk
b3VibGUpKTsKKyAgICAgICAgbWVtc2V0KFcxX2dyYWQsIDAsIFcxX3NpemUqc2l6ZW9mKGRvdWJs
ZSkpOworICAgICAgICBmb3IgKGk9MDtpPE5CX1RIUkVBRFM7aSsrKQorICAgICAgICB7CisgICAg
ICAgICAgICBzZW1fd2FpdCgmc2VtX2VuZFtpXSk7CisgICAgICAgICAgICBybXMgKz0gYXJnc1tp
XS5ybXM7CisgICAgICAgICAgICBlcnJvcl9yYXRlWzBdICs9IGFyZ3NbaV0uZXJyb3JfcmF0ZVsw
XTsKKyAgICAgICAgICAgIGVycm9yX3JhdGVbMV0gKz0gYXJnc1tpXS5lcnJvcl9yYXRlWzFdOwor
ICAgICAgICAgICAgZm9yIChqPTA7ajxXMF9zaXplO2orKykKKyAgICAgICAgICAgICAgICBXMF9n
cmFkW2pdICs9IGFyZ3NbaV0uVzBfZ3JhZFtqXTsKKyAgICAgICAgICAgIGZvciAoaj0wO2o8VzFf
c2l6ZTtqKyspCisgICAgICAgICAgICAgICAgVzFfZ3JhZFtqXSArPSBhcmdzW2ldLlcxX2dyYWRb
al07CisgICAgICAgIH0KKworICAgICAgICBmbG9hdCBtZWFuX3JhdGUgPSAwLCBtaW5fcmF0ZSA9
IDFlMTA7CisgICAgICAgIHJtcyA9IChybXMvKG91dERpbSpuYlNhbXBsZXMpKTsKKyAgICAgICAg
ZXJyb3JfcmF0ZVswXSA9IChlcnJvcl9yYXRlWzBdLyhuYlNhbXBsZXMpKTsKKyAgICAgICAgZXJy
b3JfcmF0ZVsxXSA9IChlcnJvcl9yYXRlWzFdLyhuYlNhbXBsZXMpKTsKKyAgICAgICAgZnByaW50
ZiAoc3RkZXJyLCAiJWYgJWYgKCVmICVmKSAiLCBlcnJvcl9yYXRlWzBdLCBlcnJvcl9yYXRlWzFd
LCBybXMsIGJlc3Rfcm1zKTsKKyAgICAgICAgaWYgKHJtcyA8IGJlc3Rfcm1zKQorICAgICAgICB7
CisgICAgICAgICAgICBiZXN0X3JtcyA9IHJtczsKKyAgICAgICAgICAgIGZvciAoaT0wO2k8VzBf
c2l6ZTtpKyspCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgYmVzdF9XMFtpXSA9IFcw
W2ldOworICAgICAgICAgICAgICAgIGJlc3RfVzBfcmF0ZVtpXSA9IFcwX3JhdGVbaV07CisgICAg
ICAgICAgICB9CisgICAgICAgICAgICBmb3IgKGk9MDtpPFcxX3NpemU7aSsrKQorICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgIGJlc3RfVzFbaV0gPSBXMVtpXTsKKyAgICAgICAgICAgICAg
ICBiZXN0X1cxX3JhdGVbaV0gPSBXMV9yYXRlW2ldOworICAgICAgICAgICAgfQorICAgICAgICAg
ICAgY291bnRfd29yc2U9MDsKKyAgICAgICAgICAgIGNvdW50X3JldHJpZXM9MDsKKyAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgIGNvdW50X3dvcnNlKys7CisgICAgICAgICAgICBpZiAoY291
bnRfd29yc2U+MzApCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgY291bnRfcmV0cmll
cysrOworICAgICAgICAgICAgICAgIGNvdW50X3dvcnNlPTA7CisgICAgICAgICAgICAgICAgZm9y
IChpPTA7aTxXMF9zaXplO2krKykKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICAgIFcwW2ldID0gYmVzdF9XMFtpXTsKKyAgICAgICAgICAgICAgICAgICAgYmVzdF9XMF9yYXRl
W2ldICo9IC43OworICAgICAgICAgICAgICAgICAgICBpZiAoYmVzdF9XMF9yYXRlW2ldPDFlLTE1
KSBiZXN0X1cwX3JhdGVbaV09MWUtMTU7CisgICAgICAgICAgICAgICAgICAgIFcwX3JhdGVbaV0g
PSBiZXN0X1cwX3JhdGVbaV07CisgICAgICAgICAgICAgICAgICAgIFcwX2dyYWRbaV0gPSAwOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBmb3IgKGk9MDtpPFcxX3NpemU7aSsr
KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgVzFbaV0gPSBiZXN0X1cx
W2ldOworICAgICAgICAgICAgICAgICAgICBiZXN0X1cxX3JhdGVbaV0gKj0gLjg7CisgICAgICAg
ICAgICAgICAgICAgIGlmIChiZXN0X1cxX3JhdGVbaV08MWUtMTUpIGJlc3RfVzFfcmF0ZVtpXT0x
ZS0xNTsKKyAgICAgICAgICAgICAgICAgICAgVzFfcmF0ZVtpXSA9IGJlc3RfVzFfcmF0ZVtpXTsK
KyAgICAgICAgICAgICAgICAgICAgVzFfZ3JhZFtpXSA9IDA7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmIChjb3VudF9yZXRyaWVzPjEwKQor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGZvciAoaT0wO2k8VzBfc2l6ZTtpKyspCisgICAg
ICAgIHsKKyAgICAgICAgICAgIGlmIChXMF9vbGRncmFkW2ldKlcwX2dyYWRbaV0gPiAwKQorICAg
ICAgICAgICAgICAgIFcwX3JhdGVbaV0gKj0gMS4wMTsKKyAgICAgICAgICAgIGVsc2UgaWYgKFcw
X29sZGdyYWRbaV0qVzBfZ3JhZFtpXSA8IDApCisgICAgICAgICAgICAgICAgVzBfcmF0ZVtpXSAq
PSAuOTsKKyAgICAgICAgICAgIG1lYW5fcmF0ZSArPSBXMF9yYXRlW2ldOworICAgICAgICAgICAg
aWYgKFcwX3JhdGVbaV0gPCBtaW5fcmF0ZSkKKyAgICAgICAgICAgICAgICBtaW5fcmF0ZSA9IFcw
X3JhdGVbaV07CisgICAgICAgICAgICBpZiAoVzBfcmF0ZVtpXSA8IDFlLTE1KQorICAgICAgICAg
ICAgICAgIFcwX3JhdGVbaV0gPSAxZS0xNTsKKyAgICAgICAgICAgIC8qaWYgKFcwX3JhdGVbaV0g
PiAuMDEpCisgICAgICAgICAgICAgICAgVzBfcmF0ZVtpXSA9IC4wMTsqLworICAgICAgICAgICAg
VzBfb2xkZ3JhZFtpXSA9IFcwX2dyYWRbaV07CisgICAgICAgICAgICBXMFtpXSArPSBXMF9ncmFk
W2ldKlcwX3JhdGVbaV07CisgICAgICAgIH0KKyAgICAgICAgZm9yIChpPTA7aTxXMV9zaXplO2kr
KykKKyAgICAgICAgeworICAgICAgICAgICAgaWYgKFcxX29sZGdyYWRbaV0qVzFfZ3JhZFtpXSA+
IDApCisgICAgICAgICAgICAgICAgVzFfcmF0ZVtpXSAqPSAxLjAxOworICAgICAgICAgICAgZWxz
ZSBpZiAoVzFfb2xkZ3JhZFtpXSpXMV9ncmFkW2ldIDwgMCkKKyAgICAgICAgICAgICAgICBXMV9y
YXRlW2ldICo9IC45OworICAgICAgICAgICAgbWVhbl9yYXRlICs9IFcxX3JhdGVbaV07CisgICAg
ICAgICAgICBpZiAoVzFfcmF0ZVtpXSA8IG1pbl9yYXRlKQorICAgICAgICAgICAgICAgIG1pbl9y
YXRlID0gVzFfcmF0ZVtpXTsKKyAgICAgICAgICAgIGlmIChXMV9yYXRlW2ldIDwgMWUtMTUpCisg
ICAgICAgICAgICAgICAgVzFfcmF0ZVtpXSA9IDFlLTE1OworICAgICAgICAgICAgVzFfb2xkZ3Jh
ZFtpXSA9IFcxX2dyYWRbaV07CisgICAgICAgICAgICBXMVtpXSArPSBXMV9ncmFkW2ldKlcxX3Jh
dGVbaV07CisgICAgICAgIH0KKyAgICAgICAgbWVhbl9yYXRlIC89ICh0b3BvWzBdKzEpKnRvcG9b
MV0gKyAodG9wb1sxXSsxKSp0b3BvWzJdOworICAgICAgICBmcHJpbnRmIChzdGRlcnIsICIlZyAl
ZCIsIG1lYW5fcmF0ZSwgZSk7CisgICAgICAgIGlmIChjb3VudF9yZXRyaWVzKQorICAgICAgICAg
ICAgZnByaW50ZihzdGRlcnIsICIgJWQiLCBjb3VudF9yZXRyaWVzKTsKKyAgICAgICAgZnByaW50
ZihzdGRlcnIsICJcbiIpOworICAgICAgICBpZiAoc3RvcHBlZCkKKyAgICAgICAgICAgIGJyZWFr
OworICAgIH0KKyAgICBmb3IgKGk9MDtpPE5CX1RIUkVBRFM7aSsrKQorICAgIHsKKyAgICAgICAg
YXJnc1tpXS5kb25lID0gMTsKKyAgICAgICAgc2VtX3Bvc3QoJnNlbV9iZWdpbltpXSk7CisgICAg
ICAgIHB0aHJlYWRfam9pbih0aHJlYWRbaV0sIE5VTEwpOworICAgICAgICBmcHJpbnRmIChzdGRl
cnIsICJqb2luZWQgJWRcbiIsIGkpOworICAgIH0KKyAgICBmcmVlKFcwX2dyYWQpOworICAgIGZy
ZWUoVzBfb2xkZ3JhZCk7CisgICAgZnJlZShXMV9ncmFkKTsKKyAgICBmcmVlKFcxX29sZGdyYWQp
OworICAgIGZyZWUoVzBfcmF0ZSk7CisgICAgZnJlZShiZXN0X1cwX3JhdGUpOworICAgIGZyZWUo
VzFfcmF0ZSk7CisgICAgZnJlZShiZXN0X1cxX3JhdGUpOworICAgIHJldHVybiBiZXN0X3JtczsK
K30KKworaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQoreworICAgIGludCBpLCBqOwor
ICAgIGludCBuYklucHV0czsKKyAgICBpbnQgbmJPdXRwdXRzOworICAgIGludCBuYkhpZGRlbjsK
KyAgICBpbnQgbmJTYW1wbGVzOworICAgIGludCBuYkVwb2NoOworICAgIGludCBuYlJlYWxJbnB1
dHM7CisgICAgdW5zaWduZWQgaW50IHNlZWQ7CisgICAgaW50IHJldDsKKyAgICBmbG9hdCBybXM7
CisgICAgZmxvYXQgKmlucHV0czsKKyAgICBmbG9hdCAqb3V0cHV0czsKKyAgICBpZiAoYXJnYyE9
NikKKyAgICB7CisgICAgICAgIGZwcmludGYgKHN0ZGVyciwgInVzYWdlOiBtbHBfdHJhaW4gPGlu
cHV0cz4gPGhpZGRlbj4gPG91dHB1dHM+IDxuYiBzYW1wbGVzPiA8bmIgZXBvY2g+XG4iKTsKKyAg
ICAgICAgcmV0dXJuIDE7CisgICAgfQorICAgIG5iSW5wdXRzID0gYXRvaShhcmd2WzFdKTsKKyAg
ICBuYkhpZGRlbiA9IGF0b2koYXJndlsyXSk7CisgICAgbmJPdXRwdXRzID0gYXRvaShhcmd2WzNd
KTsKKyAgICBuYlNhbXBsZXMgPSBhdG9pKGFyZ3ZbNF0pOworICAgIG5iRXBvY2ggPSBhdG9pKGFy
Z3ZbNV0pOworICAgIG5iUmVhbElucHV0cyA9IG5iSW5wdXRzOworICAgIGlucHV0cyA9IG1hbGxv
YyhuYklucHV0cypuYlNhbXBsZXMqc2l6ZW9mKCppbnB1dHMpKTsKKyAgICBvdXRwdXRzID0gbWFs
bG9jKG5iT3V0cHV0cypuYlNhbXBsZXMqc2l6ZW9mKCpvdXRwdXRzKSk7CisKKyAgICBzZWVkID0g
dGltZShOVUxMKTsKKyAgICAvKnNlZWQgPSAxNDUyMjA5MDQwOyovCisgICAgZnByaW50ZiAoc3Rk
ZXJyLCAiU2VlZCBpcyAldVxuIiwgc2VlZCk7CisgICAgc3JhbmQoc2VlZCk7CisgICAgYnVpbGRf
dGFuc2lnX3RhYmxlKCk7CisgICAgc2lnbmFsKFNJR1RFUk0sIGhhbmRsZXIpOworICAgIHNpZ25h
bChTSUdJTlQsIGhhbmRsZXIpOworICAgIHNpZ25hbChTSUdIVVAsIGhhbmRsZXIpOworICAgIGZv
ciAoaT0wO2k8bmJTYW1wbGVzO2krKykKKyAgICB7CisgICAgICAgIGZvciAoaj0wO2o8bmJSZWFs
SW5wdXRzO2orKykKKyAgICAgICAgICAgIHJldCA9IHNjYW5mKCIgJWYiLCAmaW5wdXRzW2kqbmJJ
bnB1dHMral0pOworICAgICAgICBmb3IgKGo9MDtqPG5iT3V0cHV0cztqKyspCisgICAgICAgICAg
ICByZXQgPSBzY2FuZigiICVmIiwgJm91dHB1dHNbaSpuYk91dHB1dHMral0pOworICAgICAgICBp
ZiAoZmVvZihzdGRpbikpCisgICAgICAgIHsKKyAgICAgICAgICAgIG5iU2FtcGxlcyA9IGk7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgIH0KKyAgICBpbnQgdG9wb1szXSA9IHtu
YklucHV0cywgbmJIaWRkZW4sIG5iT3V0cHV0c307CisgICAgTUxQVHJhaW4gKm5ldDsKKworICAg
IGZwcmludGYgKHN0ZGVyciwgIkdvdCAlZCBzYW1wbGVzXG4iLCBuYlNhbXBsZXMpOworICAgIG5l
dCA9IG1scF9pbml0KHRvcG8sIDMsIGlucHV0cywgb3V0cHV0cywgbmJTYW1wbGVzKTsKKyAgICBy
bXMgPSBtbHBfdHJhaW5fYmFja3Byb3AobmV0LCBpbnB1dHMsIG91dHB1dHMsIG5iU2FtcGxlcywg
bmJFcG9jaCwgMSk7CisgICAgcHJpbnRmICgiI2lmZGVmIEhBVkVfQ09ORklHX0hcbiIpOworICAg
IHByaW50ZiAoIiNpbmNsdWRlIFwiY29uZmlnLmhcIlxuIik7CisgICAgcHJpbnRmICgiI2VuZGlm
XG5cbiIpOworICAgIHByaW50ZiAoIiNpbmNsdWRlIFwibWxwLmhcIlxuXG4iKTsKKyAgICBwcmlu
dGYgKCIvKiBSTVMgZXJyb3Igd2FzICVmLCBzZWVkIHdhcyAldSAqL1xuXG4iLCBybXMsIHNlZWQp
OworICAgIHByaW50ZiAoInN0YXRpYyBjb25zdCBmbG9hdCB3ZWlnaHRzWyVkXSA9IHtcbiIsICh0
b3BvWzBdKzEpKnRvcG9bMV0gKyAodG9wb1sxXSsxKSp0b3BvWzJdKTsKKyAgICBwcmludGYgKCJc
bi8qIGhpZGRlbiBsYXllciAqL1xuIik7CisgICAgZm9yIChpPTA7aTwodG9wb1swXSsxKSp0b3Bv
WzFdO2krKykKKyAgICB7CisgICAgICAgIHByaW50ZiAoIiVnZiwiLCBuZXQtPndlaWdodHNbMF1b
aV0pOworICAgICAgICBpZiAoaSU1PT00KQorICAgICAgICAgICAgcHJpbnRmKCJcbiIpOworICAg
ICAgICBlbHNlCisgICAgICAgICAgICBwcmludGYoIiAiKTsKKyAgICB9CisgICAgcHJpbnRmICgi
XG4vKiBvdXRwdXQgbGF5ZXIgKi9cbiIpOworICAgIGZvciAoaT0wO2k8KHRvcG9bMV0rMSkqdG9w
b1syXTtpKyspCisgICAgeworICAgICAgICBwcmludGYgKCIlZ2YsIiwgbmV0LT53ZWlnaHRzWzFd
W2ldKTsKKyAgICAgICAgaWYgKGklNT09NCkKKyAgICAgICAgICAgIHByaW50ZigiXG4iKTsKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgcHJpbnRmKCIgIik7CisgICAgfQorICAgIHByaW50ZiAo
In07XG5cbiIpOworICAgIHByaW50ZiAoInN0YXRpYyBjb25zdCBpbnQgdG9wb1szXSA9IHslZCwg
JWQsICVkfTtcblxuIiwgdG9wb1swXSwgdG9wb1sxXSwgdG9wb1syXSk7CisgICAgcHJpbnRmICgi
Y29uc3QgTUxQIG5ldCA9IHtcbiIpOworICAgIHByaW50ZiAoIiAgICAzLFxuIik7CisgICAgcHJp
bnRmICgiICAgIHRvcG8sXG4iKTsKKyAgICBwcmludGYgKCIgICAgd2VpZ2h0c1xufTtcbiIpOwor
ICAgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvbWxwX3RyYWluLmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9tbHBfdHJh
aW4uaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40OTQwNDE1ODVhM2Y5Y2I2NDMzNDhhOTkyMTQ1YWJjZTA2ZmU3ZWJk
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvbWxwX3RyYWluLmgKQEAgLTAsMCArMSw4NiBAQAorLyog
Q29weXJpZ2h0IChjKSAyMDA4LTIwMTEgT2N0YXNpYyBJbmMuCisgICBXcml0dGVuIGJ5IEplYW4t
TWFyYyBWYWxpbiAqLworLyoKKyAgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgICBhcmUgbWV0
OgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisKKyAgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAgIGBgQVMgSVMnJyBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAgIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUgorICAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgRk9VTkRBVElPTiBPUgorICAgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lmbmRlZiBfTUxQX1RSQUlOX0hfCisjZGVmaW5lIF9N
TFBfVFJBSU5fSF8KKworI2luY2x1ZGUgPG1hdGguaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKwor
ZG91YmxlIHRhbnNpZ190YWJsZVs1MDFdOworc3RhdGljIGlubGluZSBkb3VibGUgdGFuc2lnX2Rv
dWJsZShkb3VibGUgeCkKK3sKKyAgICByZXR1cm4gMi4vKDEuK2V4cCgtMi4qeCkpIC0gMS47Cit9
CitzdGF0aWMgaW5saW5lIHZvaWQgYnVpbGRfdGFuc2lnX3RhYmxlKHZvaWQpCit7CisgICAgaW50
IGk7CisgICAgZm9yIChpPTA7aTw1MDE7aSsrKQorICAgICAgICB0YW5zaWdfdGFibGVbaV0gPSB0
YW5zaWdfZG91YmxlKC4wNCooaS0yNTApKTsKK30KKworc3RhdGljIGlubGluZSBkb3VibGUgdGFu
c2lnX2FwcHJveChkb3VibGUgeCkKK3sKKyAgICBpbnQgaTsKKyAgICBkb3VibGUgeSwgZHk7Cisg
ICAgaWYgKHg+PTEwKQorICAgICAgICByZXR1cm4gMTsKKyAgICBpZiAoeDw9LTEwKQorICAgICAg
ICByZXR1cm4gLTE7CisgICAgaSA9IGxyaW50KDI1KngpOworICAgIHggLT0gLjA0Kmk7CisgICAg
eSA9IHRhbnNpZ190YWJsZVsyNTAraV07CisgICAgZHkgPSAxLXkqeTsKKyAgICB5ID0geSArIHgq
ZHkqKDEgLSB5KngpOworICAgIHJldHVybiB5OworfQorCitzdGF0aWMgaW5saW5lIGZsb2F0IHJh
bmRuKGZsb2F0IHNkKQoreworICAgZmxvYXQgVTEsIFUyLCBTLCB4OworICAgZG8geworICAgICAg
VTEgPSAoKGZsb2F0KXJhbmQoKSkvUkFORF9NQVg7CisgICAgICBVMiA9ICgoZmxvYXQpcmFuZCgp
KS9SQU5EX01BWDsKKyAgICAgIFUxID0gMipVMS0xOworICAgICAgVTIgPSAyKlUyLTE7CisgICAg
ICBTID0gVTEqVTEgKyBVMipVMjsKKyAgIH0gd2hpbGUgKFMgPj0gMSB8fCBTID09IDAuMGYpOwor
ICAgeCA9IHNkKnNxcnQoLTIgKiBsb2coUykgLyBTKSAqIFUxOworICAgcmV0dXJuIHg7Cit9CisK
KwordHlwZWRlZiBzdHJ1Y3QgeworICAgIGludCBsYXllcnM7CisgICAgaW50ICp0b3BvOworICAg
IGRvdWJsZSAqKndlaWdodHM7CisgICAgZG91YmxlICoqYmVzdF93ZWlnaHRzOworICAgIGRvdWJs
ZSAqaW5fcmF0ZTsKK30gTUxQVHJhaW47CisKKworI2VuZGlmIC8qIF9NTFBfVFJBSU5fSF8gKi8K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc3JjL29wdXMuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXMuYwppbmRleCBmNzZmMTI1Y2ZhMzAwNDI2
Nzk4ZWMyYzJhMWE4YzRhOTM0MjA0ZDU4Li5jZGJkMTNhMTFjZDc4ZDQ3MGE5ODE1NGZjMWVhMWU4
YTZjM2RjZWYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1cy5jCkBAIC0xMDcs
NyArMTA3LDcgQEAgT1BVU19FWFBPUlQgdm9pZCBvcHVzX3BjbV9zb2Z0X2NsaXAoZmxvYXQgKl94
LCBpbnQgTiwgaW50IEMsIGZsb2F0ICpkZWNsaXBfbWVtKQogICAgICAgICAgLyogU2xpZ2h0bHkg
Ym9vc3QgImEiIGJ5IDJeLTIyLiBUaGlzIGlzIGp1c3QgZW5vdWdoIHRvIGVuc3VyZSAtZmZhc3Qt
bWF0aAogICAgICAgICAgICAgZG9lcyBub3QgY2F1c2Ugb3V0cHV0IHZhbHVlcyBsYXJnZXIgdGhh
biArLy0xLCBidXQgc21hbGwgZW5vdWdoIG5vdAogICAgICAgICAgICAgdG8gbWF0dGVyIGV2ZW4g
Zm9yIDI0LWJpdCBvdXRwdXQuICAqLwotICAgICAgICAgYSArPSBhKjIuNGUtNzsKKyAgICAgICAg
IGEgKz0gYSoyLjRlLTdmOwogICAgICAgICAgaWYgKHhbaSpDXT4wKQogICAgICAgICAgICAgYSA9
IC1hOwogICAgICAgICAgLyogQXBwbHkgc29mdCBjbGlwcGluZyAqLwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMv
b3B1c19jb21wYXJlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX2NvbXBhcmUuYwppbmRleCA2NjgyOGZkOGNhZWY2Yzhm
N2NjOTBmODdlMzc5ZTJjZmIwN2QwY2U4Li4xOTU2ZTA4ZmE1Y2VlMGU5Yjg3ZTVmMmFiNTIxN2Uy
NGVhYzk4ZDUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX2NvbXBhcmUuYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX2Nv
bXBhcmUuYwpAQCAtMjM4LDE1ICsyMzgsMTEgQEAgaW50IG1haW4oaW50IF9hcmdjLGNvbnN0IGNo
YXIgKipfYXJndil7CiAgIGlmKHhsZW5ndGghPXlsZW5ndGgqZG93bnNhbXBsZSl7CiAgICAgZnBy
aW50ZihzdGRlcnIsIlNhbXBsZSBjb3VudHMgZG8gbm90IG1hdGNoICglbHUhPSVsdSkuXG4iLAog
ICAgICAodW5zaWduZWQgbG9uZyl4bGVuZ3RoLCh1bnNpZ25lZCBsb25nKXlsZW5ndGgqZG93bnNh
bXBsZSk7Ci0gICAgZnJlZSh4KTsKLSAgICBmcmVlKHkpOwogICAgIHJldHVybiBFWElUX0ZBSUxV
UkU7CiAgIH0KICAgaWYoeGxlbmd0aDxURVNUX1dJTl9TSVpFKXsKICAgICBmcHJpbnRmKHN0ZGVy
ciwiSW5zdWZmaWNpZW50IHNhbXBsZSBkYXRhICglbHU8JWkpLlxuIiwKICAgICAgKHVuc2lnbmVk
IGxvbmcpeGxlbmd0aCxURVNUX1dJTl9TSVpFKTsKLSAgICBmcmVlKHgpOwotICAgIGZyZWUoeSk7
CiAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKICAgfQogICBuZnJhbWVzPSh4bGVuZ3RoLVRFU1Rf
V0lOX1NJWkUrVEVTVF9XSU5fU1RFUCkvVEVTVF9XSU5fU1RFUDsKQEAgLTM2Nyw2ICszNjMsOSBA
QCBpbnQgbWFpbihpbnQgX2FyZ2MsY29uc3QgY2hhciAqKl9hcmd2KXsKICAgICBFZio9RWY7CiAg
ICAgZXJyKz1FZipFZjsKICAgfQorICBmcmVlKHhiKTsKKyAgZnJlZShYKTsKKyAgZnJlZShZKTsK
ICAgZXJyPXBvdyhlcnIvbmZyYW1lcywxLjAvMTYpOwogICBRPTEwMCooMS0wLjUqbG9nKDErZXJy
KS9sb2coMS4xMykpOwogICBpZihRPDApewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19kZWNvZGVyLmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NyYy9vcHVzX2RlY29kZXIuYwppbmRleCA5YTA4OTZiNTUwZDM0NjUxODE0ZTRiZGUyZmQzNDc5
MjFhNThjMTZmLi4xNDlhZTdmMjFkOGJiNDE2N2ZjYzkyNjJkMzJkNDM5M2IzMTlmNDYwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NyYy9vcHVzX2RlY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX2RlY29kZXIuYwpAQCAtMzMs
NyArMzMsNyBAQAogIyBlcnJvciAiT1BVU19CVUlMRCBfTVVTVF8gYmUgZGVmaW5lZCB0byBidWls
ZCBPcHVzLiBUaGlzIHByb2JhYmx5IG1lYW5zIHlvdSBuZWVkIG90aGVyIGRlZmluZXMgYXMgd2Vs
bCwgYXMgaW4gYSBjb25maWcuaC4gU2VlIHRoZSBpbmNsdWRlZCBidWlsZCBmaWxlcyBmb3IgZGV0
YWlscy4iCiAjZW5kaWYKIAotI2lmIGRlZmluZWQoX19HTlVDX18pICYmIChfX0dOVUNfXyA+PSAy
KSAmJiAhZGVmaW5lZChfX09QVElNSVpFX18pICYmICFkZWZpbmVkKE9QVVNfV0lMTF9CRV9TTE9X
KSAmJiBkZWZpbmVkKE5ERUJVRykKKyNpZiBkZWZpbmVkKF9fR05VQ19fKSAmJiAoX19HTlVDX18g
Pj0gMikgJiYgIWRlZmluZWQoX19PUFRJTUlaRV9fKSAmJiAhZGVmaW5lZChPUFVTX1dJTExfQkVf
U0xPVykKICMgcHJhZ21hIG1lc3NhZ2UgIllvdSBhcHBlYXIgdG8gYmUgY29tcGlsaW5nIHdpdGhv
dXQgb3B0aW1pemF0aW9uLCBpZiBzbyBvcHVzIHdpbGwgYmUgdmVyeSBzbG93LiIKICNlbmRpZgog
CkBAIC04OTEsNyArODkxLDcgQEAgaW50IG9wdXNfZGVjb2Rlcl9jdGwoT3B1c0RlY29kZXIgKnN0
LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgYnJlYWs7CiAgICBjYXNlIE9QVVNfR0VUX0xBU1RfUEFD
S0VUX0RVUkFUSU9OX1JFUVVFU1Q6CiAgICB7Ci0gICAgICBvcHVzX3VpbnQzMiAqdmFsdWUgPSB2
YV9hcmcoYXAsIG9wdXNfdWludDMyKik7CisgICAgICBvcHVzX2ludDMyICp2YWx1ZSA9IHZhX2Fy
ZyhhcCwgb3B1c19pbnQzMiopOwogICAgICAgaWYgKCF2YWx1ZSkKICAgICAgIHsKICAgICAgICAg
IGdvdG8gYmFkX2FyZzsKQEAgLTg5OSw2ICs4OTksMjYgQEAgaW50IG9wdXNfZGVjb2Rlcl9jdGwo
T3B1c0RlY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgICAgKnZhbHVlID0gc3QtPmxh
c3RfcGFja2V0X2R1cmF0aW9uOwogICAgfQogICAgYnJlYWs7CisgICBjYXNlIE9QVVNfU0VUX1BI
QVNFX0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUOgorICAgeworICAgICAgIG9wdXNfaW50MzIg
dmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50MzIpOworICAgICAgIGlmKHZhbHVlPDAgfHwgdmFs
dWU+MSkKKyAgICAgICB7CisgICAgICAgICAgZ290byBiYWRfYXJnOworICAgICAgIH0KKyAgICAg
ICBjZWx0X2RlY29kZXJfY3RsKGNlbHRfZGVjLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElT
QUJMRUQodmFsdWUpKTsKKyAgIH0KKyAgIGJyZWFrOworICAgY2FzZSBPUFVTX0dFVF9QSEFTRV9J
TlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgIHsKKyAgICAgICBvcHVzX2ludDMyICp2YWx1
ZSA9IHZhX2FyZyhhcCwgb3B1c19pbnQzMiopOworICAgICAgIGlmICghdmFsdWUpCisgICAgICAg
eworICAgICAgICAgIGdvdG8gYmFkX2FyZzsKKyAgICAgICB9CisgICAgICAgY2VsdF9kZWNvZGVy
X2N0bChjZWx0X2RlYywgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKHZhbHVlKSk7
CisgICB9CisgICBicmVhazsKICAgIGRlZmF1bHQ6CiAgICAgICAvKmZwcmludGYoc3RkZXJyLCAi
dW5rbm93biBvcHVzX2RlY29kZXJfY3RsKCkgcmVxdWVzdDogJWQiLCByZXF1ZXN0KTsqLwogICAg
ICAgcmV0ID0gT1BVU19VTklNUExFTUVOVEVEOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19kZW1vLmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NyYy9vcHVzX2RlbW8uYwppbmRleCA2OTg4YThjYjE1ZDZlNjA4ZjU4NjUyNzcxNzhlMWMwNGM2
OTYxZDRiLi41MDk4N2M5NmYyNjVmNjA2MDc2MmY5YzA0ZTYyODdjYjliNWFhYjZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NyYy9vcHVzX2RlbW8uYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX2RlbW8uYwpAQCAtNTQsOSArNTQsOSBA
QCB2b2lkIHByaW50X3VzYWdlKCBjaGFyKiBhcmd2W10gKQogICAgIGZwcmludGYoc3RkZXJyLCAi
LWQgICAgICAgICAgICAgICAgICAgOiBvbmx5IHJ1bnMgdGhlIGRlY29kZXIgKHJlYWRzIHRoZSBi
aXQtc3RyZWFtIGFzIGlucHV0KVxuIiApOwogICAgIGZwcmludGYoc3RkZXJyLCAiLWNiciAgICAg
ICAgICAgICAgICAgOiBlbmFibGUgY29uc3RhbnQgYml0cmF0ZTsgZGVmYXVsdDogdmFyaWFibGUg
Yml0cmF0ZVxuIiApOwogICAgIGZwcmludGYoc3RkZXJyLCAiLWN2YnIgICAgICAgICAgICAgICAg
OiBlbmFibGUgY29uc3RyYWluZWQgdmFyaWFibGUgYml0cmF0ZTsgZGVmYXVsdDogdW5jb25zdHJh
aW5lZFxuIiApOwotICAgIGZwcmludGYoc3RkZXJyLCAiLXZhcmlhYmxlLWR1cmF0aW9uICAgOiBl
bmFibGUgZnJhbWVzIG9mIHZhcmlhYmxlIGR1cmF0aW9uIChleHBlcnRzIG9ubHkpOyBkZWZhdWx0
OiBkaXNhYmxlZFxuIiApOworICAgIGZwcmludGYoc3RkZXJyLCAiLWRlbGF5ZWQtZGVjaXNpb24g
ICAgOiB1c2UgbG9vay1haGVhZCBmb3Igc3BlZWNoL211c2ljIGRldGVjdGlvbiAoZXhwZXJ0cyBv
bmx5KTsgZGVmYXVsdDogZGlzYWJsZWRcbiIgKTsKICAgICBmcHJpbnRmKHN0ZGVyciwgIi1iYW5k
d2lkdGggPE5CfE1CfFdCfFNXQnxGQj4gOiBhdWRpbyBiYW5kd2lkdGggKGZyb20gbmFycm93YmFu
ZCB0byBmdWxsYmFuZCk7IGRlZmF1bHQ6IHNhbXBsaW5nIHJhdGVcbiIgKTsKLSAgICBmcHJpbnRm
KHN0ZGVyciwgIi1mcmFtZXNpemUgPDIuNXw1fDEwfDIwfDQwfDYwPiA6IGZyYW1lIHNpemUgaW4g
bXM7IGRlZmF1bHQ6IDIwIFxuIiApOworICAgIGZwcmludGYoc3RkZXJyLCAiLWZyYW1lc2l6ZSA8
Mi41fDV8MTB8MjB8NDB8NjB8ODB8MTAwfDEyMD4gOiBmcmFtZSBzaXplIGluIG1zOyBkZWZhdWx0
OiAyMCBcbiIgKTsKICAgICBmcHJpbnRmKHN0ZGVyciwgIi1tYXhfcGF5bG9hZCA8Ynl0ZXM+IDog
bWF4aW11bSBwYXlsb2FkIHNpemUgaW4gYnl0ZXMsIGRlZmF1bHQ6IDEwMjRcbiIgKTsKICAgICBm
cHJpbnRmKHN0ZGVyciwgIi1jb21wbGV4aXR5IDxjb21wPiAgIDogY29tcGxleGl0eSwgMCAobG93
ZXN0KSAuLi4gMTAgKGhpZ2hlc3QpOyBkZWZhdWx0OiAxMFxuIiApOwogICAgIGZwcmludGYoc3Rk
ZXJyLCAiLWluYmFuZGZlYyAgICAgICAgICAgOiBlbmFibGUgU0lMSyBpbmJhbmQgRkVDXG4iICk7
CkBAIC0yNTMsNiArMjUzLDcgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAg
ICBvcHVzX3VpbnQzMiBkZWNfZmluYWxfcmFuZ2U7CiAgICAgaW50IGVuY29kZV9vbmx5PTAsIGRl
Y29kZV9vbmx5PTA7CiAgICAgaW50IG1heF9mcmFtZV9zaXplID0gNDgwMDAqMjsKKyAgICBzaXpl
X3QgbnVtX3JlYWQ7CiAgICAgaW50IGN1cnJfcmVhZD0wOwogICAgIGludCBzd2VlcF9icHMgPSAw
OwogICAgIGludCByYW5kb21fZnJhbWVzaXplPTAsIG5ld3NpemU9MCwgZGVsYXllZF9jZWx0PTA7
CkBAIC0zODIsOSArMzgzLDE1IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAg
ICAgICAgICAgICAgICAgZnJhbWVfc2l6ZSA9IHNhbXBsaW5nX3JhdGUvMjU7CiAgICAgICAgICAg
ICBlbHNlIGlmIChzdHJjbXAoYXJndlsgYXJncyArIDEgXSwgIjYwIik9PTApCiAgICAgICAgICAg
ICAgICAgZnJhbWVfc2l6ZSA9IDMqc2FtcGxpbmdfcmF0ZS81MDsKKyAgICAgICAgICAgIGVsc2Ug
aWYgKHN0cmNtcChhcmd2WyBhcmdzICsgMSBdLCAiODAiKT09MCkKKyAgICAgICAgICAgICAgICBm
cmFtZV9zaXplID0gNCpzYW1wbGluZ19yYXRlLzUwOworICAgICAgICAgICAgZWxzZSBpZiAoc3Ry
Y21wKGFyZ3ZbIGFyZ3MgKyAxIF0sICIxMDAiKT09MCkKKyAgICAgICAgICAgICAgICBmcmFtZV9z
aXplID0gNSpzYW1wbGluZ19yYXRlLzUwOworICAgICAgICAgICAgZWxzZSBpZiAoc3RyY21wKGFy
Z3ZbIGFyZ3MgKyAxIF0sICIxMjAiKT09MCkKKyAgICAgICAgICAgICAgICBmcmFtZV9zaXplID0g
NipzYW1wbGluZ19yYXRlLzUwOwogICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAg
ZnByaW50ZihzdGRlcnIsICJVbnN1cHBvcnRlZCBmcmFtZSBzaXplOiAlcyBtcy4gIgotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAiU3VwcG9ydGVkIGFyZSAyLjUsIDUsIDEwLCAyMCwg
NDAsIDYwLlxuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlN1cHBvcnRlZCBh
cmUgMi41LCA1LCAxMCwgMjAsIDQwLCA2MCwgODAsIDEwMCwgMTIwLlxuIiwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYXJndlsgYXJncyArIDEgXSk7CiAgICAgICAgICAgICAgICAg
cmV0dXJuIEVYSVRfRkFJTFVSRTsKICAgICAgICAgICAgIH0KQEAgLTQwOCwxMCArNDE1LDYgQEAg
aW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgIGNoZWNrX2VuY29k
ZXJfb3B0aW9uKGRlY29kZV9vbmx5LCAiLWN2YnIiKTsKICAgICAgICAgICAgIGN2YnIgPSAxOwog
ICAgICAgICAgICAgYXJncysrOwotICAgICAgICB9IGVsc2UgaWYoIHN0cmNtcCggYXJndlsgYXJn
cyBdLCAiLXZhcmlhYmxlLWR1cmF0aW9uIiApID09IDAgKSB7Ci0gICAgICAgICAgICBjaGVja19l
bmNvZGVyX29wdGlvbihkZWNvZGVfb25seSwgIi12YXJpYWJsZS1kdXJhdGlvbiIpOwotICAgICAg
ICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV9WQVJJQUJMRTsKLSAgICAg
ICAgICAgIGFyZ3MrKzsKICAgICAgICAgfSBlbHNlIGlmKCBzdHJjbXAoIGFyZ3ZbIGFyZ3MgXSwg
Ii1kZWxheWVkLWRlY2lzaW9uIiApID09IDAgKSB7CiAgICAgICAgICAgICBjaGVja19lbmNvZGVy
X29wdGlvbihkZWNvZGVfb25seSwgIi1kZWxheWVkLWRlY2lzaW9uIik7CiAgICAgICAgICAgICBk
ZWxheWVkX2RlY2lzaW9uID0gMTsKQEAgLTU5OSwyMiArNjAyLDI1IEBAIGludCBtYWluKGludCBh
cmdjLCBjaGFyICphcmd2W10pCiAgICAgfQogICAgIGlmKGRlbGF5ZWRfZGVjaXNpb24pCiAgICAg
ewotICAgICAgIGlmICh2YXJpYWJsZV9kdXJhdGlvbiE9T1BVU19GUkFNRVNJWkVfVkFSSUFCTEUp
Ci0gICAgICAgewotICAgICAgICAgIGlmIChmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzQwMCkK
LSAgICAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzJfNV9NUzsK
LSAgICAgICAgICBlbHNlIGlmIChmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzIwMCkKLSAgICAg
ICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzVfTVM7Ci0gICAgICAg
ICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS8xMDApCi0gICAgICAgICAgICAg
dmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV8xMF9NUzsKLSAgICAgICAgICBlbHNl
IGlmIChmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzUwKQotICAgICAgICAgICAgIHZhcmlhYmxl
X2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfMjBfTVM7Ci0gICAgICAgICAgZWxzZSBpZiAoZnJh
bWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS8yNSkKLSAgICAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlv
biA9IE9QVVNfRlJBTUVTSVpFXzQwX01TOwotICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICB2
YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzYwX01TOwotICAgICAgICAgIG9wdXNf
ZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT04odmFyaWFibGVf
ZHVyYXRpb24pKTsKLSAgICAgICB9CisgICAgICAgaWYgKGZyYW1lX3NpemU9PXNhbXBsaW5nX3Jh
dGUvNDAwKQorICAgICAgICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfMl81
X01TOworICAgICAgIGVsc2UgaWYgKGZyYW1lX3NpemU9PXNhbXBsaW5nX3JhdGUvMjAwKQorICAg
ICAgICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfNV9NUzsKKyAgICAgICBl
bHNlIGlmIChmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzEwMCkKKyAgICAgICAgICB2YXJpYWJs
ZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzEwX01TOworICAgICAgIGVsc2UgaWYgKGZyYW1l
X3NpemU9PXNhbXBsaW5nX3JhdGUvNTApCisgICAgICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBP
UFVTX0ZSQU1FU0laRV8yMF9NUzsKKyAgICAgICBlbHNlIGlmIChmcmFtZV9zaXplPT1zYW1wbGlu
Z19yYXRlLzI1KQorICAgICAgICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVf
NDBfTVM7CisgICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09MypzYW1wbGluZ19yYXRlLzUwKQor
ICAgICAgICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfNjBfTVM7CisgICAg
ICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09NCpzYW1wbGluZ19yYXRlLzUwKQorICAgICAgICAgIHZh
cmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfODBfTVM7CisgICAgICAgZWxzZSBpZiAo
ZnJhbWVfc2l6ZT09NSpzYW1wbGluZ19yYXRlLzUwKQorICAgICAgICAgIHZhcmlhYmxlX2R1cmF0
aW9uID0gT1BVU19GUkFNRVNJWkVfMTAwX01TOworICAgICAgIGVsc2UKKyAgICAgICAgICB2YXJp
YWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzEyMF9NUzsKKyAgICAgICBvcHVzX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKHZhcmlhYmxlX2R1cmF0
aW9uKSk7CiAgICAgICAgZnJhbWVfc2l6ZSA9IDIqNDgwMDA7CiAgICAgfQogICAgIHdoaWxlICgh
c3RvcCkKQEAgLTY1Miw4ICs2NTgsOCBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltd
KQogICAgICAgICBpZiAoZGVjb2RlX29ubHkpCiAgICAgICAgIHsKICAgICAgICAgICAgIHVuc2ln
bmVkIGNoYXIgY2hbNF07Ci0gICAgICAgICAgICBlcnIgPSBmcmVhZChjaCwgMSwgNCwgZmluKTsK
LSAgICAgICAgICAgIGlmIChmZW9mKGZpbikpCisgICAgICAgICAgICBudW1fcmVhZCA9IGZyZWFk
KGNoLCAxLCA0LCBmaW4pOworICAgICAgICAgICAgaWYgKG51bV9yZWFkIT00KQogICAgICAgICAg
ICAgICAgIGJyZWFrOwogICAgICAgICAgICAgbGVuW3RvZ2dsZV0gPSBjaGFyX3RvX2ludChjaCk7
CiAgICAgICAgICAgICBpZiAobGVuW3RvZ2dsZV0+bWF4X3BheWxvYWRfYnl0ZXMgfHwgbGVuW3Rv
Z2dsZV08MCkKQEAgLTY2MSwxNCArNjY3LDE2IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICph
cmd2W10pCiAgICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJJbnZhbGlkIHBheWxvYWQg
bGVuZ3RoOiAlZFxuIixsZW5bdG9nZ2xlXSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgICAgICB9Ci0gICAgICAgICAgICBlcnIgPSBmcmVhZChjaCwgMSwgNCwgZmluKTsKKyAgICAg
ICAgICAgIG51bV9yZWFkID0gZnJlYWQoY2gsIDEsIDQsIGZpbik7CisgICAgICAgICAgICBpZiAo
bnVtX3JlYWQhPTQpCisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBlbmNfZmlu
YWxfcmFuZ2VbdG9nZ2xlXSA9IGNoYXJfdG9faW50KGNoKTsKLSAgICAgICAgICAgIGVyciA9IGZy
ZWFkKGRhdGFbdG9nZ2xlXSwgMSwgbGVuW3RvZ2dsZV0sIGZpbik7Ci0gICAgICAgICAgICBpZiAo
ZXJyPGxlblt0b2dnbGVdKQorICAgICAgICAgICAgbnVtX3JlYWQgPSBmcmVhZChkYXRhW3RvZ2ds
ZV0sIDEsIGxlblt0b2dnbGVdLCBmaW4pOworICAgICAgICAgICAgaWYgKG51bV9yZWFkIT0oc2l6
ZV90KWxlblt0b2dnbGVdKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIGZwcmludGYo
c3RkZXJyLCAiUmFuIG91dCBvZiBpbnB1dCwgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAiZXhwZWN0aW5nICVkIGJ5dGVzIGdvdCAlZFxuIiwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbGVuW3RvZ2dsZV0sZXJyKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgbGVuW3RvZ2dsZV0sKGludCludW1fcmVhZCk7CiAgICAgICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7CkBAIC02ODAsOCArNjg4LDggQEAgaW50
IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgICAgICBvcHVzX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfRk9SQ0VfQ0hBTk5FTFMobW9kZV9saXN0W2N1cnJfbW9kZV1b
M10pKTsKICAgICAgICAgICAgICAgICBmcmFtZV9zaXplID0gbW9kZV9saXN0W2N1cnJfbW9kZV1b
Ml07CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBlcnIgPSBmcmVhZChmYnl0ZXMsIHNpemVv
ZihzaG9ydCkqY2hhbm5lbHMsIGZyYW1lX3NpemUtcmVtYWluaW5nLCBmaW4pOwotICAgICAgICAg
ICAgY3Vycl9yZWFkID0gZXJyOworICAgICAgICAgICAgbnVtX3JlYWQgPSBmcmVhZChmYnl0ZXMs
IHNpemVvZihzaG9ydCkqY2hhbm5lbHMsIGZyYW1lX3NpemUtcmVtYWluaW5nLCBmaW4pOworICAg
ICAgICAgICAgY3Vycl9yZWFkID0gKGludCludW1fcmVhZDsKICAgICAgICAgICAgIHRvdF9pbiAr
PSBjdXJyX3JlYWQ7CiAgICAgICAgICAgICBmb3IoaT0wO2k8Y3Vycl9yZWFkKmNoYW5uZWxzO2kr
KykKICAgICAgICAgICAgIHsKQEAgLTcyMSwxNCArNzI5LDggQEAgaW50IG1haW4oaW50IGFyZ2Ms
IGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgIGlmIChsZW5bdG9nZ2xlXSA8IDApCiAgICAgICAg
ICAgICB7CiAgICAgICAgICAgICAgICAgZnByaW50ZiAoc3RkZXJyLCAib3B1c19lbmNvZGUoKSBy
ZXR1cm5lZCAlZFxuIiwgbGVuW3RvZ2dsZV0pOwotICAgICAgICAgICAgICAgIGZyZWUoZGF0YVsw
XSk7Ci0gICAgICAgICAgICAgICAgaWYgKHVzZV9pbmJhbmRmZWMpCi0gICAgICAgICAgICAgICAg
ICAgIGZyZWUoZGF0YVsxXSk7CiAgICAgICAgICAgICAgICAgZmNsb3NlKGZpbik7CiAgICAgICAg
ICAgICAgICAgZmNsb3NlKGZvdXQpOwotICAgICAgICAgICAgICAgIGZyZWUoaW4pOwotICAgICAg
ICAgICAgICAgIGZyZWUob3V0KTsKLSAgICAgICAgICAgICAgICBmcmVlKGZieXRlcyk7CiAgICAg
ICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIGN1cnJfbW9kZV9jb3VudCArPSBmcmFtZV9zaXplOwpAQCAtNzQ2LDE0ICs3NDgsNiBAQCBp
bnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICAgICBpZiAoKGVyciA9IG9w
dXNfcGFja2V0X3BhZChkYXRhW3RvZ2dsZV0sIGxlblt0b2dnbGVdLCBuZXdfbGVuKSkgIT0gT1BV
U19PSykKICAgICAgICAgICAgewogICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgInBhZGRp
bmcgZmFpbGVkOiAlc1xuIiwgb3B1c19zdHJlcnJvcihlcnIpKTsKLSAgICAgICAgICAgICAgZnJl
ZShkYXRhWzBdKTsKLSAgICAgICAgICAgICAgaWYgKHVzZV9pbmJhbmRmZWMpCi0gICAgICAgICAg
ICAgICAgICBmcmVlKGRhdGFbMV0pOwotICAgICAgICAgICAgICBmY2xvc2UoZmluKTsKLSAgICAg
ICAgICAgICAgZmNsb3NlKGZvdXQpOwotICAgICAgICAgICAgICBmcmVlKGluKTsKLSAgICAgICAg
ICAgICAgZnJlZShvdXQpOwotICAgICAgICAgICAgICBmcmVlKGZieXRlcyk7CiAgICAgICAgICAg
ICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGVuW3Rv
Z2dsZV0gPSBuZXdfbGVuOwpAQCAtNzY1LDQ0ICs3NTksMjAgQEAgaW50IG1haW4oaW50IGFyZ2Ms
IGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgIGludF90b19jaGFyKGxlblt0b2dnbGVdLCBpbnRf
ZmllbGQpOwogICAgICAgICAgICAgaWYgKGZ3cml0ZShpbnRfZmllbGQsIDEsIDQsIGZvdXQpICE9
IDQpIHsKICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiRXJyb3Igd3JpdGluZy5cbiIp
OwotICAgICAgICAgICAgICAgZnJlZShkYXRhWzBdKTsKLSAgICAgICAgICAgICAgIGlmICh1c2Vf
aW5iYW5kZmVjKQotICAgICAgICAgICAgICAgICAgIGZyZWUoZGF0YVsxXSk7Ci0gICAgICAgICAg
ICAgICBmY2xvc2UoZmluKTsKLSAgICAgICAgICAgICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAg
ICAgICAgIGZyZWUoaW4pOwotICAgICAgICAgICAgICAgZnJlZShvdXQpOwotICAgICAgICAgICAg
ICAgZnJlZShmYnl0ZXMpOwogICAgICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgIGludF90b19jaGFyKGVuY19maW5hbF9yYW5nZVt0b2dn
bGVdLCBpbnRfZmllbGQpOwogICAgICAgICAgICAgaWYgKGZ3cml0ZShpbnRfZmllbGQsIDEsIDQs
IGZvdXQpICE9IDQpIHsKICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiRXJyb3Igd3Jp
dGluZy5cbiIpOwotICAgICAgICAgICAgICAgZnJlZShkYXRhWzBdKTsKLSAgICAgICAgICAgICAg
IGlmICh1c2VfaW5iYW5kZmVjKQotICAgICAgICAgICAgICAgICAgIGZyZWUoZGF0YVsxXSk7Ci0g
ICAgICAgICAgICAgICBmY2xvc2UoZmluKTsKLSAgICAgICAgICAgICAgIGZjbG9zZShmb3V0KTsK
LSAgICAgICAgICAgICAgIGZyZWUoaW4pOwotICAgICAgICAgICAgICAgZnJlZShvdXQpOwotICAg
ICAgICAgICAgICAgZnJlZShmYnl0ZXMpOwogICAgICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJ
TFVSRTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmIChmd3JpdGUoZGF0YVt0b2dnbGVd
LCAxLCBsZW5bdG9nZ2xlXSwgZm91dCkgIT0gKHVuc2lnbmVkKWxlblt0b2dnbGVdKSB7CiAgICAg
ICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkVycm9yIHdyaXRpbmcuXG4iKTsKLSAgICAgICAg
ICAgICAgIGZyZWUoZGF0YVswXSk7Ci0gICAgICAgICAgICAgICBpZiAodXNlX2luYmFuZGZlYykK
LSAgICAgICAgICAgICAgICAgICBmcmVlKGRhdGFbMV0pOwotICAgICAgICAgICAgICAgZmNsb3Nl
KGZpbik7Ci0gICAgICAgICAgICAgICBmY2xvc2UoZm91dCk7Ci0gICAgICAgICAgICAgICBmcmVl
KGluKTsKLSAgICAgICAgICAgICAgIGZyZWUob3V0KTsKLSAgICAgICAgICAgICAgIGZyZWUoZmJ5
dGVzKTsKICAgICAgICAgICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAgICAgICAgICAgICB9
CiAgICAgICAgICAgICB0b3Rfc2FtcGxlcyArPSBuYl9lbmNvZGVkOwogICAgICAgICB9IGVsc2Ug
ewotICAgICAgICAgICAgaW50IG91dHB1dF9zYW1wbGVzOworICAgICAgICAgICAgb3B1c19pbnQz
MiBvdXRwdXRfc2FtcGxlczsKICAgICAgICAgICAgIGxvc3QgPSBsZW5bdG9nZ2xlXT09MCB8fCAo
cGFja2V0X2xvc3NfcGVyYz4wICYmIHJhbmQoKSUxMDAgPCBwYWNrZXRfbG9zc19wZXJjKTsKICAg
ICAgICAgICAgIGlmIChsb3N0KQogICAgICAgICAgICAgICAgb3B1c19kZWNvZGVyX2N0bChkZWMs
IE9QVVNfR0VUX0xBU1RfUEFDS0VUX0RVUkFUSU9OKCZvdXRwdXRfc2FtcGxlcykpOwpAQCAtODI4
LDcgKzc5OCw3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAg
ICAgICAgICAgIGlmICghZGVjb2RlX29ubHkgJiYgdG90X291dCArIG91dHB1dF9zYW1wbGVzID4g
dG90X2luKQogICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHN0
b3A9MTsKLSAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X3NhbXBsZXMgID0gdG90X2luLXRv
dF9vdXQ7CisgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dF9zYW1wbGVzID0gKG9wdXNfaW50
MzIpKHRvdF9pbiAtIHRvdF9vdXQpOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICAgICAgICAgIGlmIChvdXRwdXRfc2FtcGxlcz5za2lwKSB7CiAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBpOwpAQCAtODQxLDE0ICs4MTEsNiBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAq
YXJndltdKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAg
IGlmIChmd3JpdGUoZmJ5dGVzLCBzaXplb2Yoc2hvcnQpKmNoYW5uZWxzLCBvdXRwdXRfc2FtcGxl
cy1za2lwLCBmb3V0KSAhPSAodW5zaWduZWQpKG91dHB1dF9zYW1wbGVzLXNraXApKXsKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJFcnJvciB3cml0aW5nLlxuIik7
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGZyZWUoZGF0YVswXSk7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgIGlmICh1c2VfaW5iYW5kZmVjKQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZnJlZShkYXRhWzFdKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZmNsb3NlKGZp
bik7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgZnJlZShpbik7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGZyZWUo
b3V0KTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZnJlZShmYnl0ZXMpOwogICAgICAgICAg
ICAgICAgICAgICAgICAgICByZXR1cm4gRVhJVF9GQUlMVVJFOwogICAgICAgICAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIHRvdF9vdXQgKz0gb3V0cHV0X3NhbXBsZXMt
c2tpcDsKQEAgLTg3NSwxNCArODM3LDggQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3Zb
XSkKICAgICAgICAgICAgICAgICAgICAgICAgICAobG9uZyljb3VudCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAodW5zaWduZWQgbG9uZyllbmNfZmluYWxfcmFuZ2VbdG9nZ2xlXnVzZV9pbmJh
bmRmZWNdLAogICAgICAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBsb25nKWRlY19maW5h
bF9yYW5nZSk7Ci0gICAgICAgICAgICBmcmVlKGRhdGFbMF0pOwotICAgICAgICAgICAgaWYgKHVz
ZV9pbmJhbmRmZWMpCi0gICAgICAgICAgICAgICAgZnJlZShkYXRhWzFdKTsKICAgICAgICAgICAg
IGZjbG9zZShmaW4pOwogICAgICAgICAgICAgZmNsb3NlKGZvdXQpOwotICAgICAgICAgICAgZnJl
ZShpbik7Ci0gICAgICAgICAgICBmcmVlKG91dCk7Ci0gICAgICAgICAgICBmcmVlKGZieXRlcyk7
CiAgICAgICAgICAgICByZXR1cm4gRVhJVF9GQUlMVVJFOwogICAgICAgICB9CiAKQEAgLTkyMiw4
ICs4NzgsNiBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICAgICAg
ICAgMWUtMypiaXRzX2FjdCpzYW1wbGluZ19yYXRlLygxZS0xNStmcmFtZV9zaXplKihkb3VibGUp
Y291bnRfYWN0KSk7CiAgICAgZnByaW50ZiAoc3RkZXJyLCAiYml0cmF0ZSBzdGFuZGFyZCBkZXZp
YXRpb246ICAlNy4zZiBrYi9zXG4iLAogICAgICAgICAgICAgMWUtMypzcXJ0KGJpdHMyL2NvdW50
IC0gYml0cypiaXRzLyhjb3VudCooZG91YmxlKWNvdW50KSkqc2FtcGxpbmdfcmF0ZS9mcmFtZV9z
aXplKTsKLSAgICAvKiBDbG9zZSBhbnkgZmlsZXMgdG8gd2hpY2ggaW50ZXJtZWRpYXRlIHJlc3Vs
dHMgd2VyZSBzdG9yZWQgKi8KLSAgICBTSUxLX0RFQlVHX1NUT1JFX0NMT1NFX0ZJTEVTCiAgICAg
c2lsa19UaW1lclNhdmUoIm9wdXNfdGltaW5nLnR4dCIpOwogICAgIG9wdXNfZW5jb2Rlcl9kZXN0
cm95KGVuYyk7CiAgICAgb3B1c19kZWNvZGVyX2Rlc3Ryb3koZGVjKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3Jj
L29wdXNfZW5jb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19lbmNvZGVyLmMKaW5kZXggOWE1MTZhODg0YWE3Nzc4
ZTg1NzdhNTU5ODE5MTUzMGJjNjkwNjdiMi4uMjE0OWMyMGI0MTkwYTA0N2NiNDRmZjYzZTJkYWFj
MWM3OTM5NTZmMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19lbmNvZGVyLmMKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19l
bmNvZGVyLmMKQEAgLTUzLDYgKzUzLDEwIEBACiAKICNkZWZpbmUgTUFYX0VOQ09ERVJfQlVGRkVS
IDQ4MAogCisjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCisjZGVmaW5lIFBTRVVET19TTlJfVEhS
RVNIT0xEIDMxNi4yM2YgICAgLyogMTBeKDI1LzEwKSAqLworI2VuZGlmCisKIHR5cGVkZWYgc3Ry
dWN0IHsKICAgIG9wdXNfdmFsMzIgWFgsIFhZLCBZWTsKICAgIG9wdXNfdmFsMTYgc21vb3RoZWRf
d2lkdGg7CkBAIC04Miw2ICs4Niw3IEBAIHN0cnVjdCBPcHVzRW5jb2RlciB7CiAgICAgaW50ICAg
ICAgICAgIGVuY29kZXJfYnVmZmVyOwogICAgIGludCAgICAgICAgICBsZmU7CiAgICAgaW50ICAg
ICAgICAgIGFyY2g7CisgICAgaW50ICAgICAgICAgIHVzZV9kdHg7ICAgICAgICAgICAgICAgICAv
KiBnZW5lcmFsIERUWCBmb3IgYm90aCBTSUxLIGFuZCBDRUxUICovCiAjaWZuZGVmIERJU0FCTEVf
RkxPQVRfQVBJCiAgICAgVG9uYWxpdHlBbmFseXNpc1N0YXRlIGFuYWx5c2lzOwogI2VuZGlmCkBA
IC05Nyw2ICsxMDIsOCBAQCBzdHJ1Y3QgT3B1c0VuY29kZXIgewogICAgIGludCAgICAgICAgICBw
cmV2X2NoYW5uZWxzOwogICAgIGludCAgICAgICAgICBwcmV2X2ZyYW1lc2l6ZTsKICAgICBpbnQg
ICAgICAgICAgYmFuZHdpZHRoOworICAgIC8qIEJhbmR3aWR0aCBkZXRlcm1pbmVkIGF1dG9tYXRp
Y2FsbHkgZnJvbSB0aGUgcmF0ZSAoYmVmb3JlIGFueSBvdGhlciBhZGp1c3RtZW50KSAqLworICAg
IGludCAgICAgICAgICBhdXRvX2JhbmR3aWR0aDsKICAgICBpbnQgICAgICAgICAgc2lsa19id19z
d2l0Y2g7CiAgICAgLyogU2FtcGxpbmcgcmF0ZSAoYXQgdGhlIEFQSSBsZXZlbCkgKi8KICAgICBp
bnQgICAgICAgICAgZmlyc3Q7CkBAIC0xMDUsNyArMTEyLDEwIEBAIHN0cnVjdCBPcHVzRW5jb2Rl
ciB7CiAgICAgb3B1c192YWwxNiAgIGRlbGF5X2J1ZmZlcltNQVhfRU5DT0RFUl9CVUZGRVIqMl07
CiAjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCiAgICAgaW50ICAgICAgICAgIGRldGVjdGVkX2Jh
bmR3aWR0aDsKKyAgICBpbnQgICAgICAgICAgbmJfbm9fYWN0aXZpdHlfZnJhbWVzOworICAgIG9w
dXNfdmFsMzIgICBwZWFrX3NpZ25hbF9lbmVyZ3k7CiAjZW5kaWYKKyAgICBpbnQgICAgICAgICAg
bm9uZmluYWxfZnJhbWU7IC8qIGN1cnJlbnQgZnJhbWUgaXMgbm90IHRoZSBmaW5hbCBpbiBhIHBh
Y2tldCAqLwogICAgIG9wdXNfdWludDMyICByYW5nZUZpbmFsOwogfTsKIApAQCAtMTEzLDMyICsx
MjMsMzIgQEAgc3RydWN0IE9wdXNFbmNvZGVyIHsKICAgIG1pZGRsZSAobWVtb3JpbGVzcykgdGhy
ZXNob2xkLiBUaGUgc2Vjb25kIGNvbHVtbiBpcyB0aGUgaHlzdGVyZXNpcwogICAgKGRpZmZlcmVu
Y2Ugd2l0aCB0aGUgbWlkZGxlKSAqLwogc3RhdGljIGNvbnN0IG9wdXNfaW50MzIgbW9ub192b2lj
ZV9iYW5kd2lkdGhfdGhyZXNob2xkc1s4XSA9IHsKLSAgICAgICAgMTEwMDAsIDEwMDAsIC8qIE5C
PC0+TUIgKi8KLSAgICAgICAgMTQwMDAsIDEwMDAsIC8qIE1CPC0+V0IgKi8KLSAgICAgICAgMTcw
MDAsIDEwMDAsIC8qIFdCPC0+U1dCICovCi0gICAgICAgIDIxMDAwLCAyMDAwLCAvKiBTV0I8LT5G
QiAqLworICAgICAgICAxMDAwMCwgMTAwMCwgLyogTkI8LT5NQiAqLworICAgICAgICAxMTAwMCwg
MTAwMCwgLyogTUI8LT5XQiAqLworICAgICAgICAxMzUwMCwgMTAwMCwgLyogV0I8LT5TV0IgKi8K
KyAgICAgICAgMTQwMDAsIDIwMDAsIC8qIFNXQjwtPkZCICovCiB9Owogc3RhdGljIGNvbnN0IG9w
dXNfaW50MzIgbW9ub19tdXNpY19iYW5kd2lkdGhfdGhyZXNob2xkc1s4XSA9IHsKLSAgICAgICAg
MTIwMDAsIDEwMDAsIC8qIE5CPC0+TUIgKi8KLSAgICAgICAgMTUwMDAsIDEwMDAsIC8qIE1CPC0+
V0IgKi8KLSAgICAgICAgMTgwMDAsIDIwMDAsIC8qIFdCPC0+U1dCICovCi0gICAgICAgIDIyMDAw
LCAyMDAwLCAvKiBTV0I8LT5GQiAqLworICAgICAgICAxMDAwMCwgMTAwMCwgLyogTkI8LT5NQiAq
LworICAgICAgICAxMTAwMCwgMTAwMCwgLyogTUI8LT5XQiAqLworICAgICAgICAxMzUwMCwgMTAw
MCwgLyogV0I8LT5TV0IgKi8KKyAgICAgICAgMTQwMDAsIDIwMDAsIC8qIFNXQjwtPkZCICovCiB9
Owogc3RhdGljIGNvbnN0IG9wdXNfaW50MzIgc3RlcmVvX3ZvaWNlX2JhbmR3aWR0aF90aHJlc2hv
bGRzWzhdID0gewotICAgICAgICAxMTAwMCwgMTAwMCwgLyogTkI8LT5NQiAqLwotICAgICAgICAx
NDAwMCwgMTAwMCwgLyogTUI8LT5XQiAqLwotICAgICAgICAyMTAwMCwgMjAwMCwgLyogV0I8LT5T
V0IgKi8KLSAgICAgICAgMjgwMDAsIDIwMDAsIC8qIFNXQjwtPkZCICovCisgICAgICAgIDEwMDAw
LCAxMDAwLCAvKiBOQjwtPk1CICovCisgICAgICAgIDExMDAwLCAxMDAwLCAvKiBNQjwtPldCICov
CisgICAgICAgIDEzNTAwLCAxMDAwLCAvKiBXQjwtPlNXQiAqLworICAgICAgICAxNDAwMCwgMjAw
MCwgLyogU1dCPC0+RkIgKi8KIH07CiBzdGF0aWMgY29uc3Qgb3B1c19pbnQzMiBzdGVyZW9fbXVz
aWNfYmFuZHdpZHRoX3RocmVzaG9sZHNbOF0gPSB7Ci0gICAgICAgIDEyMDAwLCAxMDAwLCAvKiBO
QjwtPk1CICovCi0gICAgICAgIDE4MDAwLCAyMDAwLCAvKiBNQjwtPldCICovCi0gICAgICAgIDIx
MDAwLCAyMDAwLCAvKiBXQjwtPlNXQiAqLwotICAgICAgICAzMDAwMCwgMjAwMCwgLyogU1dCPC0+
RkIgKi8KKyAgICAgICAgMTAwMDAsIDEwMDAsIC8qIE5CPC0+TUIgKi8KKyAgICAgICAgMTEwMDAs
IDEwMDAsIC8qIE1CPC0+V0IgKi8KKyAgICAgICAgMTM1MDAsIDEwMDAsIC8qIFdCPC0+U1dCICov
CisgICAgICAgIDE0MDAwLCAyMDAwLCAvKiBTV0I8LT5GQiAqLwogfTsKIC8qIFRocmVzaG9sZCBi
aXQtcmF0ZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG1vbm8gYW5kIHN0ZXJlbyAqLwotc3RhdGlj
IGNvbnN0IG9wdXNfaW50MzIgc3RlcmVvX3ZvaWNlX3RocmVzaG9sZCA9IDMwMDAwOwotc3RhdGlj
IGNvbnN0IG9wdXNfaW50MzIgc3RlcmVvX211c2ljX3RocmVzaG9sZCA9IDMwMDAwOworc3RhdGlj
IGNvbnN0IG9wdXNfaW50MzIgc3RlcmVvX3ZvaWNlX3RocmVzaG9sZCA9IDI0MDAwOworc3RhdGlj
IGNvbnN0IG9wdXNfaW50MzIgc3RlcmVvX211c2ljX3RocmVzaG9sZCA9IDI0MDAwOwogCiAvKiBU
aHJlc2hvbGQgYml0LXJhdGUgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIFNJTEsvaHlicmlkIGFuZCBD
RUxULW9ubHkgKi8KIHN0YXRpYyBjb25zdCBvcHVzX2ludDMyIG1vZGVfdGhyZXNob2xkc1syXVsy
XSA9IHsKQEAgLTE0Nyw2ICsxNTcsMTQgQEAgc3RhdGljIGNvbnN0IG9wdXNfaW50MzIgbW9kZV90
aHJlc2hvbGRzWzJdWzJdID0gewogICAgICAgeyAgMzYwMDAsICAgICAgMTYwMDB9LCAvKiBzdGVy
ZW8gKi8KIH07CiAKK3N0YXRpYyBjb25zdCBvcHVzX2ludDMyIGZlY190aHJlc2hvbGRzW10gPSB7
CisgICAgICAgIDEyMDAwLCAxMDAwLCAvKiBOQiAqLworICAgICAgICAxNDAwMCwgMTAwMCwgLyog
TUIgKi8KKyAgICAgICAgMTYwMDAsIDEwMDAsIC8qIFdCICovCisgICAgICAgIDIwMDAwLCAxMDAw
LCAvKiBTV0IgKi8KKyAgICAgICAgMjIwMDAsIDEwMDAsIC8qIEZCICovCit9OworCiBpbnQgb3B1
c19lbmNvZGVyX2dldF9zaXplKGludCBjaGFubmVscykKIHsKICAgICBpbnQgc2lsa0VuY1NpemVC
eXRlcywgY2VsdEVuY1NpemVCeXRlczsKQEAgLTI0NSw3ICsyNjMsOCBAQCBpbnQgb3B1c19lbmNv
ZGVyX2luaXQoT3B1c0VuY29kZXIqIHN0LCBvcHVzX2ludDMyIEZzLCBpbnQgY2hhbm5lbHMsIGlu
dCBhcHBsaWNhdAogICAgIHN0LT5iYW5kd2lkdGggPSBPUFVTX0JBTkRXSURUSF9GVUxMQkFORDsK
IAogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQotICAgIHRvbmFsaXR5X2FuYWx5c2lzX2luaXQo
JnN0LT5hbmFseXNpcyk7CisgICAgdG9uYWxpdHlfYW5hbHlzaXNfaW5pdCgmc3QtPmFuYWx5c2lz
LCBzdC0+RnMpOworICAgIHN0LT5hbmFseXNpcy5hcHBsaWNhdGlvbiA9IHN0LT5hcHBsaWNhdGlv
bjsKICNlbmRpZgogCiAgICAgcmV0dXJuIE9QVVNfT0s7CkBAIC0zMjMsMTAgKzM0MiwxMSBAQCBz
dGF0aWMgdm9pZCBzaWxrX2JpcXVhZF9mbG9hdCgKIH0KICNlbmRpZgogCi1zdGF0aWMgdm9pZCBo
cF9jdXRvZmYoY29uc3Qgb3B1c192YWwxNiAqaW4sIG9wdXNfaW50MzIgY3V0b2ZmX0h6LCBvcHVz
X3ZhbDE2ICpvdXQsIG9wdXNfdmFsMzIgKmhwX21lbSwgaW50IGxlbiwgaW50IGNoYW5uZWxzLCBv
cHVzX2ludDMyIEZzKQorc3RhdGljIHZvaWQgaHBfY3V0b2ZmKGNvbnN0IG9wdXNfdmFsMTYgKmlu
LCBvcHVzX2ludDMyIGN1dG9mZl9Ieiwgb3B1c192YWwxNiAqb3V0LCBvcHVzX3ZhbDMyICpocF9t
ZW0sIGludCBsZW4sIGludCBjaGFubmVscywgb3B1c19pbnQzMiBGcywgaW50IGFyY2gpCiB7CiAg
ICBvcHVzX2ludDMyIEJfUTI4WyAzIF0sIEFfUTI4WyAyIF07CiAgICBvcHVzX2ludDMyIEZjX1Ex
OSwgcl9RMjgsIHJfUTIyOworICAgKHZvaWQpYXJjaDsKIAogICAgc2lsa19hc3NlcnQoIGN1dG9m
Zl9IeiA8PSBzaWxrX2ludDMyX01BWCAvIFNJTEtfRklYX0NPTlNUKCAxLjUgKiAzLjE0MTU5IC8g
MTAwMCwgMTkgKSApOwogICAgRmNfUTE5ID0gc2lsa19ESVYzMl8xNiggc2lsa19TTVVMQkIoIFNJ
TEtfRklYX0NPTlNUKCAxLjUgKiAzLjE0MTU5IC8gMTAwMCwgMTkgKSwgY3V0b2ZmX0h6ICksIEZz
LzEwMDAgKTsKQEAgLTM0Niw5ICszNjYsMTAgQEAgc3RhdGljIHZvaWQgaHBfY3V0b2ZmKGNvbnN0
IG9wdXNfdmFsMTYgKmluLCBvcHVzX2ludDMyIGN1dG9mZl9Ieiwgb3B1c192YWwxNiAqb3UKICAg
IEFfUTI4WyAxIF0gPSBzaWxrX1NNVUxXVyggcl9RMjIsIHJfUTIyICk7CiAKICNpZmRlZiBGSVhF
RF9QT0lOVAotICAgc2lsa19iaXF1YWRfYWx0KCBpbiwgQl9RMjgsIEFfUTI4LCBocF9tZW0sIG91
dCwgbGVuLCBjaGFubmVscyApOwotICAgaWYoIGNoYW5uZWxzID09IDIgKSB7Ci0gICAgICAgc2ls
a19iaXF1YWRfYWx0KCBpbisxLCBCX1EyOCwgQV9RMjgsIGhwX21lbSsyLCBvdXQrMSwgbGVuLCBj
aGFubmVscyApOworICAgaWYoIGNoYW5uZWxzID09IDEgKSB7CisgICAgICBzaWxrX2JpcXVhZF9h
bHRfc3RyaWRlMSggaW4sIEJfUTI4LCBBX1EyOCwgaHBfbWVtLCBvdXQsIGxlbiApOworICAgfSBl
bHNlIHsKKyAgICAgIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyKCBpbiwgQl9RMjgsIEFfUTI4LCBo
cF9tZW0sIG91dCwgbGVuLCBhcmNoICk7CiAgICB9CiAjZWxzZQogICAgc2lsa19iaXF1YWRfZmxv
YXQoIGluLCBCX1EyOCwgQV9RMjgsIGhwX21lbSwgb3V0LCBsZW4sIGNoYW5uZWxzICk7CkBAIC0z
NzEsMTQgKzM5MiwxNCBAQCBzdGF0aWMgdm9pZCBkY19yZWplY3QoY29uc3Qgb3B1c192YWwxNiAq
aW4sIG9wdXNfaW50MzIgY3V0b2ZmX0h6LCBvcHVzX3ZhbDE2ICpvdQogICAgICAgZm9yIChpPTA7
aTxsZW47aSsrKQogICAgICAgewogICAgICAgICAgb3B1c192YWwzMiB4LCB0bXAsIHk7Ci0gICAg
ICAgICB4ID0gU0hMMzIoRVhURU5EMzIoaW5bY2hhbm5lbHMqaStjXSksIDE1KTsKKyAgICAgICAg
IHggPSBTSEwzMihFWFRFTkQzMihpbltjaGFubmVscyppK2NdKSwgMTQpOwogICAgICAgICAgLyog
Rmlyc3Qgc3RhZ2UgKi8KICAgICAgICAgIHRtcCA9IHgtaHBfbWVtWzIqY107CiAgICAgICAgICBo
cF9tZW1bMipjXSA9IGhwX21lbVsyKmNdICsgUFNIUjMyKHggLSBocF9tZW1bMipjXSwgc2hpZnQp
OwogICAgICAgICAgLyogU2Vjb25kIHN0YWdlICovCiAgICAgICAgICB5ID0gdG1wIC0gaHBfbWVt
WzIqYysxXTsKICAgICAgICAgIGhwX21lbVsyKmMrMV0gPSBocF9tZW1bMipjKzFdICsgUFNIUjMy
KHRtcCAtIGhwX21lbVsyKmMrMV0sIHNoaWZ0KTsKLSAgICAgICAgIG91dFtjaGFubmVscyppK2Nd
ID0gRVhUUkFDVDE2KFNBVFVSQVRFKFBTSFIzMih5LCAxNSksIDMyNzY3KSk7CisgICAgICAgICBv
dXRbY2hhbm5lbHMqaStjXSA9IEVYVFJBQ1QxNihTQVRVUkFURShQU0hSMzIoeSwgMTQpLCAzMjc2
NykpOwogICAgICAgfQogICAgfQogfQpAQCAtMzg2LDI0ICs0MDcsNTcgQEAgc3RhdGljIHZvaWQg
ZGNfcmVqZWN0KGNvbnN0IG9wdXNfdmFsMTYgKmluLCBvcHVzX2ludDMyIGN1dG9mZl9Ieiwgb3B1
c192YWwxNiAqb3UKICNlbHNlCiBzdGF0aWMgdm9pZCBkY19yZWplY3QoY29uc3Qgb3B1c192YWwx
NiAqaW4sIG9wdXNfaW50MzIgY3V0b2ZmX0h6LCBvcHVzX3ZhbDE2ICpvdXQsIG9wdXNfdmFsMzIg
KmhwX21lbSwgaW50IGxlbiwgaW50IGNoYW5uZWxzLCBvcHVzX2ludDMyIEZzKQogewotICAgaW50
IGMsIGk7Ci0gICBmbG9hdCBjb2VmOwotCisgICBpbnQgaTsKKyAgIGZsb2F0IGNvZWYsIGNvZWYy
OwogICAgY29lZiA9IDQuMGYqY3V0b2ZmX0h6L0ZzOwotICAgZm9yIChjPTA7YzxjaGFubmVscztj
KyspCisgICBjb2VmMiA9IDEtY29lZjsKKyAgIGlmIChjaGFubmVscz09MikKICAgIHsKKyAgICAg
IGZsb2F0IG0wLCBtMSwgbTIsIG0zOworICAgICAgbTAgPSBocF9tZW1bMF07CisgICAgICBtMSA9
IGhwX21lbVsxXTsKKyAgICAgIG0yID0gaHBfbWVtWzJdOworICAgICAgbTMgPSBocF9tZW1bM107
CisgICAgICBmb3IgKGk9MDtpPGxlbjtpKyspCisgICAgICB7CisgICAgICAgICBvcHVzX3ZhbDMy
IHgwLCB4MSwgdG1wMCwgdG1wMSwgb3V0MCwgb3V0MTsKKyAgICAgICAgIHgwID0gaW5bMippKzBd
OworICAgICAgICAgeDEgPSBpblsyKmkrMV07CisgICAgICAgICAvKiBGaXJzdCBzdGFnZSAqLwor
ICAgICAgICAgdG1wMCA9IHgwLW0wOworICAgICAgICAgdG1wMSA9IHgxLW0yOworICAgICAgICAg
bTAgPSBjb2VmKngwICsgVkVSWV9TTUFMTCArIGNvZWYyKm0wOworICAgICAgICAgbTIgPSBjb2Vm
KngxICsgVkVSWV9TTUFMTCArIGNvZWYyKm0yOworICAgICAgICAgLyogU2Vjb25kIHN0YWdlICov
CisgICAgICAgICBvdXQwID0gdG1wMCAtIG0xOworICAgICAgICAgb3V0MSA9IHRtcDEgLSBtMzsK
KyAgICAgICAgIG0xID0gY29lZip0bXAwICsgVkVSWV9TTUFMTCArIGNvZWYyKm0xOworICAgICAg
ICAgbTMgPSBjb2VmKnRtcDEgKyBWRVJZX1NNQUxMICsgY29lZjIqbTM7CisgICAgICAgICBvdXRb
MippKzBdID0gb3V0MDsKKyAgICAgICAgIG91dFsyKmkrMV0gPSBvdXQxOworICAgICAgfQorICAg
ICAgaHBfbWVtWzBdID0gbTA7CisgICAgICBocF9tZW1bMV0gPSBtMTsKKyAgICAgIGhwX21lbVsy
XSA9IG0yOworICAgICAgaHBfbWVtWzNdID0gbTM7CisgICB9IGVsc2UgeworICAgICAgZmxvYXQg
bTAsIG0xOworICAgICAgbTAgPSBocF9tZW1bMF07CisgICAgICBtMSA9IGhwX21lbVsxXTsKICAg
ICAgIGZvciAoaT0wO2k8bGVuO2krKykKICAgICAgIHsKICAgICAgICAgIG9wdXNfdmFsMzIgeCwg
dG1wLCB5OwotICAgICAgICAgeCA9IGluW2NoYW5uZWxzKmkrY107CisgICAgICAgICB4ID0gaW5b
aV07CiAgICAgICAgICAvKiBGaXJzdCBzdGFnZSAqLwotICAgICAgICAgdG1wID0geC1ocF9tZW1b
MipjXTsKLSAgICAgICAgIGhwX21lbVsyKmNdID0gaHBfbWVtWzIqY10gKyBjb2VmKih4IC0gaHBf
bWVtWzIqY10pICsgVkVSWV9TTUFMTDsKKyAgICAgICAgIHRtcCA9IHgtbTA7CisgICAgICAgICBt
MCA9IGNvZWYqeCArIFZFUllfU01BTEwgKyBjb2VmMiptMDsKICAgICAgICAgIC8qIFNlY29uZCBz
dGFnZSAqLwotICAgICAgICAgeSA9IHRtcCAtIGhwX21lbVsyKmMrMV07Ci0gICAgICAgICBocF9t
ZW1bMipjKzFdID0gaHBfbWVtWzIqYysxXSArIGNvZWYqKHRtcCAtIGhwX21lbVsyKmMrMV0pICsg
VkVSWV9TTUFMTDsKLSAgICAgICAgIG91dFtjaGFubmVscyppK2NdID0geTsKKyAgICAgICAgIHkg
PSB0bXAgLSBtMTsKKyAgICAgICAgIG0xID0gY29lZip0bXAgKyBWRVJZX1NNQUxMICsgY29lZjIq
bTE7CisgICAgICAgICBvdXRbaV0gPSB5OwogICAgICAgfQorICAgICAgaHBfbWVtWzBdID0gbTA7
CisgICAgICBocF9tZW1bMV0gPSBtMTsKICAgIH0KIH0KICNlbmRpZgpAQCAtNTIwLDI4OCArNTc0
LDU4IEBAIHN0YXRpYyBvcHVzX2ludDMyIHVzZXJfYml0cmF0ZV90b19iaXRyYXRlKE9wdXNFbmNv
ZGVyICpzdCwgaW50IGZyYW1lX3NpemUsIGludCBtCiAgICAgcmV0dXJuIHN0LT51c2VyX2JpdHJh
dGVfYnBzOwogfQogCi0jaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCi0vKiBEb24ndCB1c2UgbW9y
ZSB0aGFuIDYwIG1zIGZvciB0aGUgZnJhbWUgc2l6ZSBhbmFseXNpcyAqLwotI2RlZmluZSBNQVhf
RFlOQU1JQ19GUkFNRVNJWkUgMjQKLS8qIEVzdGltYXRlcyBob3cgbXVjaCB0aGUgYml0cmF0ZSB3
aWxsIGJlIGJvb3N0ZWQgYmFzZWQgb24gdGhlIHN1Yi1mcmFtZSBlbmVyZ3kgKi8KLXN0YXRpYyBm
bG9hdCB0cmFuc2llbnRfYm9vc3QoY29uc3QgZmxvYXQgKkUsIGNvbnN0IGZsb2F0ICpFXzEsIGlu
dCBMTSwgaW50IG1heE0pCi17Ci0gICBpbnQgaTsKLSAgIGludCBNOwotICAgZmxvYXQgc3VtRT0w
LCBzdW1FXzE9MDsKLSAgIGZsb2F0IG1ldHJpYzsKLQotICAgTSA9IElNSU4obWF4TSwgKDE8PExN
KSsxKTsKLSAgIGZvciAoaT0wO2k8TTtpKyspCi0gICB7Ci0gICAgICBzdW1FICs9IEVbaV07Ci0g
ICAgICBzdW1FXzEgKz0gRV8xW2ldOwotICAgfQotICAgbWV0cmljID0gc3VtRSpzdW1FXzEvKE0q
TSk7Ci0gICAvKmlmIChMTT09MykKLSAgICAgIHByaW50ZigiJWZcbiIsIG1ldHJpYyk7Ki8KLSAg
IC8qcmV0dXJuIG1ldHJpYz4xMCA/IDEgOiAwOyovCi0gICAvKnJldHVybiBNQVgxNigwLDEtZXhw
KC0uMjUqKG1ldHJpYy0yLikpKTsqLwotICAgcmV0dXJuIE1JTjE2KDEsKGZsb2F0KXNxcnQoTUFY
MTYoMCwuMDVmKihtZXRyaWMtMikpKSk7Ci19Ci0KLS8qIFZpdGVyYmkgZGVjb2RpbmcgdHJ5aW5n
IHRvIGZpbmQgdGhlIGJlc3QgZnJhbWUgc2l6ZSBjb21iaW5hdGlvbiB1c2luZyBsb29rLWFoZWFk
Ci0KLSAgIFN0YXRlIG51bWJlcmluZzoKLSAgICAwOiB1bnVzZWQKLSAgICAxOiAgMi41IG1zCi0g
ICAgMjogIDUgbXMgKCMxKQotICAgIDM6ICA1IG1zICgjMikKLSAgICA0OiAxMCBtcyAoIzEpCi0g
ICAgNTogMTAgbXMgKCMyKQotICAgIDY6IDEwIG1zICgjMykKLSAgICA3OiAxMCBtcyAoIzQpCi0g
ICAgODogMjAgbXMgKCMxKQotICAgIDk6IDIwIG1zICgjMikKLSAgIDEwOiAyMCBtcyAoIzMpCi0g
ICAxMTogMjAgbXMgKCM0KQotICAgMTI6IDIwIG1zICgjNSkKLSAgIDEzOiAyMCBtcyAoIzYpCi0g
ICAxNDogMjAgbXMgKCM3KQotICAgMTU6IDIwIG1zICgjOCkKLSovCi1zdGF0aWMgaW50IHRyYW5z
aWVudF92aXRlcmJpKGNvbnN0IGZsb2F0ICpFLCBjb25zdCBmbG9hdCAqRV8xLCBpbnQgTiwgaW50
IGZyYW1lX2Nvc3QsIGludCByYXRlKQotewotICAgaW50IGk7Ci0gICBmbG9hdCBjb3N0W01BWF9E
WU5BTUlDX0ZSQU1FU0laRV1bMTZdOwotICAgaW50IHN0YXRlc1tNQVhfRFlOQU1JQ19GUkFNRVNJ
WkVdWzE2XTsKLSAgIGZsb2F0IGJlc3RfY29zdDsKLSAgIGludCBiZXN0X3N0YXRlOwotICAgZmxv
YXQgZmFjdG9yOwotICAgLyogVGFrZSBpbnRvIGFjY291bnQgdGhhdCB3ZSBkYW1wIFZCUiBpbiB0
aGUgMzIga2IvcyB0byA2NCBrYi9zIHJhbmdlLiAqLwotICAgaWYgKHJhdGU8ODApCi0gICAgICBm
YWN0b3I9MDsKLSAgIGVsc2UgaWYgKHJhdGU+MTYwKQotICAgICAgZmFjdG9yPTE7Ci0gICBlbHNl
Ci0gICAgICBmYWN0b3IgPSAocmF0ZS04MC5mKS84MC5mOwotICAgLyogTWFrZXMgdmFyaWFibGUg
ZnJhbWVzaXplIGxlc3MgYWdncmVzc2l2ZSBhdCBsb3dlciBiaXRyYXRlcywgYnV0IEkgY2FuJ3QK
LSAgICAgIGZpbmQgYW55IHZhbGlkIHRoZW9yZXRpY2FsIGp1c3RpZmljYXRpb24gZm9yIHRoaXMg
KG90aGVyIHRoYW4gaXQgc2VlbXMKLSAgICAgIHRvIGhlbHApICovCi0gICBmb3IgKGk9MDtpPDE2
O2krKykKLSAgIHsKLSAgICAgIC8qIEltcG9zc2libGUgc3RhdGUgKi8KLSAgICAgIHN0YXRlc1sw
XVtpXSA9IC0xOwotICAgICAgY29zdFswXVtpXSA9IDFlMTA7Ci0gICB9Ci0gICBmb3IgKGk9MDtp
PDQ7aSsrKQotICAgewotICAgICAgY29zdFswXVsxPDxpXSA9IChmcmFtZV9jb3N0ICsgcmF0ZSoo
MTw8aSkpKigxK2ZhY3Rvcip0cmFuc2llbnRfYm9vc3QoRSwgRV8xLCBpLCBOKzEpKTsKLSAgICAg
IHN0YXRlc1swXVsxPDxpXSA9IGk7Ci0gICB9Ci0gICBmb3IgKGk9MTtpPE47aSsrKQotICAgewot
ICAgICAgaW50IGo7Ci0KLSAgICAgIC8qIEZvbGxvdyBjb250aW51YXRpb25zICovCi0gICAgICBm
b3IgKGo9MjtqPDE2O2orKykKLSAgICAgIHsKLSAgICAgICAgIGNvc3RbaV1bal0gPSBjb3N0W2kt
MV1bai0xXTsKLSAgICAgICAgIHN0YXRlc1tpXVtqXSA9IGotMTsKLSAgICAgIH0KLQotICAgICAg
LyogTmV3IGZyYW1lcyAqLwotICAgICAgZm9yKGo9MDtqPDQ7aisrKQotICAgICAgewotICAgICAg
ICAgaW50IGs7Ci0gICAgICAgICBmbG9hdCBtaW5fY29zdDsKLSAgICAgICAgIGZsb2F0IGN1cnJf
Y29zdDsKLSAgICAgICAgIHN0YXRlc1tpXVsxPDxqXSA9IDE7Ci0gICAgICAgICBtaW5fY29zdCA9
IGNvc3RbaS0xXVsxXTsKLSAgICAgICAgIGZvcihrPTE7azw0O2srKykKLSAgICAgICAgIHsKLSAg
ICAgICAgICAgIGZsb2F0IHRtcCA9IGNvc3RbaS0xXVsoMTw8KGsrMSkpLTFdOwotICAgICAgICAg
ICAgaWYgKHRtcCA8IG1pbl9jb3N0KQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgc3Rh
dGVzW2ldWzE8PGpdID0gKDE8PChrKzEpKS0xOwotICAgICAgICAgICAgICAgbWluX2Nvc3QgPSB0
bXA7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICB9Ci0gICAgICAgICBjdXJyX2Nvc3QgPSAoZnJh
bWVfY29zdCArIHJhdGUqKDE8PGopKSooMStmYWN0b3IqdHJhbnNpZW50X2Jvb3N0KEUraSwgRV8x
K2ksIGosIE4taSsxKSk7Ci0gICAgICAgICBjb3N0W2ldWzE8PGpdID0gbWluX2Nvc3Q7Ci0gICAg
ICAgICAvKiBJZiBwYXJ0IG9mIHRoZSBmcmFtZSBpcyBvdXRzaWRlIHRoZSBhbmFseXNpcyB3aW5k
b3csIG9ubHkgY291bnQgcGFydCBvZiB0aGUgY29zdCAqLwotICAgICAgICAgaWYgKE4taSA8ICgx
PDxqKSkKLSAgICAgICAgICAgIGNvc3RbaV1bMTw8al0gKz0gY3Vycl9jb3N0KihmbG9hdCkoTi1p
KS8oMTw8aik7Ci0gICAgICAgICBlbHNlCi0gICAgICAgICAgICBjb3N0W2ldWzE8PGpdICs9IGN1
cnJfY29zdDsKLSAgICAgIH0KLSAgIH0KLQotICAgYmVzdF9zdGF0ZT0xOwotICAgYmVzdF9jb3N0
ID0gY29zdFtOLTFdWzFdOwotICAgLyogRmluZCBiZXN0IGVuZCBzdGF0ZSAoZG9lc24ndCBmb3Jj
ZSBhIGZyYW1lIHRvIGVuZCBhdCBOLTEpICovCi0gICBmb3IgKGk9MjtpPDE2O2krKykKLSAgIHsK
LSAgICAgIGlmIChjb3N0W04tMV1baV08YmVzdF9jb3N0KQotICAgICAgewotICAgICAgICAgYmVz
dF9jb3N0ID0gY29zdFtOLTFdW2ldOwotICAgICAgICAgYmVzdF9zdGF0ZSA9IGk7Ci0gICAgICB9
Ci0gICB9Ci0KLSAgIC8qIEZvbGxvdyB0cmFuc2l0aW9ucyBiYWNrICovCi0gICBmb3IgKGk9Ti0x
O2k+PTA7aS0tKQotICAgewotICAgICAgLypwcmludGYoIiVkICIsIGJlc3Rfc3RhdGUpOyovCi0g
ICAgICBiZXN0X3N0YXRlID0gc3RhdGVzW2ldW2Jlc3Rfc3RhdGVdOwotICAgfQotICAgLypwcmlu
dGYoIiVkXG4iLCBiZXN0X3N0YXRlKTsqLwotICAgcmV0dXJuIGJlc3Rfc3RhdGU7Ci19Ci0KLXN0
YXRpYyBpbnQgb3B0aW1pemVfZnJhbWVzaXplKGNvbnN0IHZvaWQgKngsIGludCBsZW4sIGludCBD
LCBvcHVzX2ludDMyIEZzLAotICAgICAgICAgICAgICAgIGludCBiaXRyYXRlLCBvcHVzX3ZhbDE2
IHRvbmFsaXR5LCBmbG9hdCAqbWVtLCBpbnQgYnVmZmVyaW5nLAotICAgICAgICAgICAgICAgIGRv
d25taXhfZnVuYyBkb3dubWl4KQotewotICAgaW50IE47Ci0gICBpbnQgaTsKLSAgIGZsb2F0IGVb
TUFYX0RZTkFNSUNfRlJBTUVTSVpFKzRdOwotICAgZmxvYXQgZV8xW01BWF9EWU5BTUlDX0ZSQU1F
U0laRSszXTsKLSAgIG9wdXNfdmFsMzIgbWVteDsKLSAgIGludCBiZXN0TE09MDsKLSAgIGludCBz
dWJmcmFtZTsKLSAgIGludCBwb3M7Ci0gICBpbnQgb2Zmc2V0OwotICAgVkFSREVDTChvcHVzX3Zh
bDMyLCBzdWIpOwotCi0gICBzdWJmcmFtZSA9IEZzLzQwMDsKLSAgIEFMTE9DKHN1Yiwgc3ViZnJh
bWUsIG9wdXNfdmFsMzIpOwotICAgZVswXT1tZW1bMF07Ci0gICBlXzFbMF09MS5mLyhFUFNJTE9O
K21lbVswXSk7Ci0gICBpZiAoYnVmZmVyaW5nKQotICAgewotICAgICAgLyogQ29uc2lkZXIgdGhl
IENFTFQgZGVsYXkgd2hlbiBub3QgaW4gcmVzdHJpY3RlZC1sb3dkZWxheSAqLwotICAgICAgLyog
V2UgYXNzdW1lIHRoZSBidWZmZXJpbmcgaXMgYmV0d2VlbiAyLjUgYW5kIDUgbXMgKi8KLSAgICAg
IG9mZnNldCA9IDIqc3ViZnJhbWUgLSBidWZmZXJpbmc7Ci0gICAgICBjZWx0X2Fzc2VydChvZmZz
ZXQ+PTAgJiYgb2Zmc2V0IDw9IHN1YmZyYW1lKTsKLSAgICAgIGxlbiAtPSBvZmZzZXQ7Ci0gICAg
ICBlWzFdPW1lbVsxXTsKLSAgICAgIGVfMVsxXT0xLmYvKEVQU0lMT04rbWVtWzFdKTsKLSAgICAg
IGVbMl09bWVtWzJdOwotICAgICAgZV8xWzJdPTEuZi8oRVBTSUxPTittZW1bMl0pOwotICAgICAg
cG9zID0gMzsKLSAgIH0gZWxzZSB7Ci0gICAgICBwb3M9MTsKLSAgICAgIG9mZnNldD0wOwotICAg
fQotICAgTj1JTUlOKGxlbi9zdWJmcmFtZSwgTUFYX0RZTkFNSUNfRlJBTUVTSVpFKTsKLSAgIC8q
IEp1c3Qgc2lsZW5jaW5nIGEgd2FybmluZywgaXQncyByZWFsbHkgaW5pdGlhbGl6ZWQgbGF0ZXIg
Ki8KLSAgIG1lbXggPSAwOwotICAgZm9yIChpPTA7aTxOO2krKykKLSAgIHsKLSAgICAgIGZsb2F0
IHRtcDsKLSAgICAgIG9wdXNfdmFsMzIgdG1weDsKLSAgICAgIGludCBqOwotICAgICAgdG1wPUVQ
U0lMT047Ci0KLSAgICAgIGRvd25taXgoeCwgc3ViLCBzdWJmcmFtZSwgaSpzdWJmcmFtZStvZmZz
ZXQsIDAsIC0yLCBDKTsKLSAgICAgIGlmIChpPT0wKQotICAgICAgICAgbWVteCA9IHN1YlswXTsK
LSAgICAgIGZvciAoaj0wO2o8c3ViZnJhbWU7aisrKQotICAgICAgewotICAgICAgICAgdG1weCA9
IHN1YltqXTsKLSAgICAgICAgIHRtcCArPSAodG1weC1tZW14KSooZmxvYXQpKHRtcHgtbWVteCk7
Ci0gICAgICAgICBtZW14ID0gdG1weDsKLSAgICAgIH0KLSAgICAgIGVbaStwb3NdID0gdG1wOwot
ICAgICAgZV8xW2krcG9zXSA9IDEuZi90bXA7Ci0gICB9Ci0gICAvKiBIYWNrIHRvIGdldCAyMCBt
cyB3b3JraW5nIHdpdGggQVBQTElDQVRJT05fQVVESU8KLSAgICAgIFRoZSByZWFsIHByb2JsZW0g
aXMgdGhhdCB0aGUgY29ycmVzcG9uZGluZyBtZW1vcnkgbmVlZHMgdG8gdXNlIDEuNSBtcwotICAg
ICAgZnJvbSB0aGlzIGZyYW1lIGFuZCAxIG1zIGZyb20gdGhlIG5leHQgZnJhbWUgKi8KLSAgIGVb
aStwb3NdID0gZVtpK3Bvcy0xXTsKLSAgIGlmIChidWZmZXJpbmcpCi0gICAgICBOPUlNSU4oTUFY
X0RZTkFNSUNfRlJBTUVTSVpFLCBOKzIpOwotICAgYmVzdExNID0gdHJhbnNpZW50X3ZpdGVyYmko
ZSwgZV8xLCBOLCAoaW50KSgoMS5mKy41Zip0b25hbGl0eSkqKDYwKkMrNDApKSwgYml0cmF0ZS80
MDApOwotICAgbWVtWzBdID0gZVsxPDxiZXN0TE1dOwotICAgaWYgKGJ1ZmZlcmluZykKLSAgIHsK
LSAgICAgIG1lbVsxXSA9IGVbKDE8PGJlc3RMTSkrMV07Ci0gICAgICBtZW1bMl0gPSBlWygxPDxi
ZXN0TE0pKzJdOwotICAgfQotICAgcmV0dXJuIGJlc3RMTTsKLX0KLQotI2VuZGlmCi0KICNpZm5k
ZWYgRElTQUJMRV9GTE9BVF9BUEkKICNpZmRlZiBGSVhFRF9QT0lOVAogI2RlZmluZSBQQ00yVkFM
KHgpIEZMT0FUMklOVDE2KHgpCiAjZWxzZQogI2RlZmluZSBQQ00yVkFMKHgpIFNDQUxFSU4oeCkK
ICNlbmRpZgotdm9pZCBkb3dubWl4X2Zsb2F0KGNvbnN0IHZvaWQgKl94LCBvcHVzX3ZhbDMyICpz
dWIsIGludCBzdWJmcmFtZSwgaW50IG9mZnNldCwgaW50IGMxLCBpbnQgYzIsIGludCBDKQorCit2
b2lkIGRvd25taXhfZmxvYXQoY29uc3Qgdm9pZCAqX3gsIG9wdXNfdmFsMzIgKnksIGludCBzdWJm
cmFtZSwgaW50IG9mZnNldCwgaW50IGMxLCBpbnQgYzIsIGludCBDKQogewogICAgY29uc3QgZmxv
YXQgKng7Ci0gICBvcHVzX3ZhbDMyIHNjYWxlOwogICAgaW50IGo7CisKICAgIHggPSAoY29uc3Qg
ZmxvYXQgKilfeDsKICAgIGZvciAoaj0wO2o8c3ViZnJhbWU7aisrKQotICAgICAgc3ViW2pdID0g
UENNMlZBTCh4WyhqK29mZnNldCkqQytjMV0pOworICAgICAgeVtqXSA9IFBDTTJWQUwoeFsoaitv
ZmZzZXQpKkMrYzFdKTsKICAgIGlmIChjMj4tMSkKICAgIHsKICAgICAgIGZvciAoaj0wO2o8c3Vi
ZnJhbWU7aisrKQotICAgICAgICAgc3ViW2pdICs9IFBDTTJWQUwoeFsoaitvZmZzZXQpKkMrYzJd
KTsKKyAgICAgICAgIHlbal0gKz0gUENNMlZBTCh4WyhqK29mZnNldCkqQytjMl0pOwogICAgfSBl
bHNlIGlmIChjMj09LTIpCiAgICB7CiAgICAgICBpbnQgYzsKICAgICAgIGZvciAoYz0xO2M8Qztj
KyspCiAgICAgICB7CiAgICAgICAgICBmb3IgKGo9MDtqPHN1YmZyYW1lO2orKykKLSAgICAgICAg
ICAgIHN1YltqXSArPSBQQ00yVkFMKHhbKGorb2Zmc2V0KSpDK2NdKTsKKyAgICAgICAgICAgIHlb
al0gKz0gUENNMlZBTCh4WyhqK29mZnNldCkqQytjXSk7CiAgICAgICB9CiAgICB9Ci0jaWZkZWYg
RklYRURfUE9JTlQKLSAgIHNjYWxlID0gKDE8PFNJR19TSElGVCk7Ci0jZWxzZQotICAgc2NhbGUg
PSAxLmY7Ci0jZW5kaWYKLSAgIGlmIChDPT0tMikKLSAgICAgIHNjYWxlIC89IEM7Ci0gICBlbHNl
Ci0gICAgICBzY2FsZSAvPSAyOwotICAgZm9yIChqPTA7ajxzdWJmcmFtZTtqKyspCi0gICAgICBz
dWJbal0gKj0gc2NhbGU7CiB9CiAjZW5kaWYKIAotdm9pZCBkb3dubWl4X2ludChjb25zdCB2b2lk
ICpfeCwgb3B1c192YWwzMiAqc3ViLCBpbnQgc3ViZnJhbWUsIGludCBvZmZzZXQsIGludCBjMSwg
aW50IGMyLCBpbnQgQykKK3ZvaWQgZG93bm1peF9pbnQoY29uc3Qgdm9pZCAqX3gsIG9wdXNfdmFs
MzIgKnksIGludCBzdWJmcmFtZSwgaW50IG9mZnNldCwgaW50IGMxLCBpbnQgYzIsIGludCBDKQog
ewogICAgY29uc3Qgb3B1c19pbnQxNiAqeDsKLSAgIG9wdXNfdmFsMzIgc2NhbGU7CiAgICBpbnQg
ajsKKwogICAgeCA9IChjb25zdCBvcHVzX2ludDE2ICopX3g7CiAgICBmb3IgKGo9MDtqPHN1YmZy
YW1lO2orKykKLSAgICAgIHN1YltqXSA9IHhbKGorb2Zmc2V0KSpDK2MxXTsKKyAgICAgIHlbal0g
PSB4WyhqK29mZnNldCkqQytjMV07CiAgICBpZiAoYzI+LTEpCiAgICB7CiAgICAgICBmb3IgKGo9
MDtqPHN1YmZyYW1lO2orKykKLSAgICAgICAgIHN1YltqXSArPSB4WyhqK29mZnNldCkqQytjMl07
CisgICAgICAgICB5W2pdICs9IHhbKGorb2Zmc2V0KSpDK2MyXTsKICAgIH0gZWxzZSBpZiAoYzI9
PS0yKQogICAgewogICAgICAgaW50IGM7CiAgICAgICBmb3IgKGM9MTtjPEM7YysrKQogICAgICAg
ewogICAgICAgICAgZm9yIChqPTA7ajxzdWJmcmFtZTtqKyspCi0gICAgICAgICAgICBzdWJbal0g
Kz0geFsoaitvZmZzZXQpKkMrY107CisgICAgICAgICAgICB5W2pdICs9IHhbKGorb2Zmc2V0KSpD
K2NdOwogICAgICAgfQogICAgfQotI2lmZGVmIEZJWEVEX1BPSU5UCi0gICBzY2FsZSA9ICgxPDxT
SUdfU0hJRlQpOwotI2Vsc2UKLSAgIHNjYWxlID0gMS5mLzMyNzY4OwotI2VuZGlmCi0gICBpZiAo
Qz09LTIpCi0gICAgICBzY2FsZSAvPSBDOwotICAgZWxzZQotICAgICAgc2NhbGUgLz0gMjsKLSAg
IGZvciAoaj0wO2o8c3ViZnJhbWU7aisrKQotICAgICAgc3ViW2pdICo9IHNjYWxlOwogfQogCiBv
cHVzX2ludDMyIGZyYW1lX3NpemVfc2VsZWN0KG9wdXNfaW50MzIgZnJhbWVfc2l6ZSwgaW50IHZh
cmlhYmxlX2R1cmF0aW9uLCBvcHVzX2ludDMyIEZzKQpAQCAtODExLDUzICs2MzUsMjQgQEAgb3B1
c19pbnQzMiBmcmFtZV9zaXplX3NlbGVjdChvcHVzX2ludDMyIGZyYW1lX3NpemUsIGludCB2YXJp
YWJsZV9kdXJhdGlvbiwgb3B1c18KICAgICAgIHJldHVybiAtMTsKICAgIGlmICh2YXJpYWJsZV9k
dXJhdGlvbiA9PSBPUFVTX0ZSQU1FU0laRV9BUkcpCiAgICAgICBuZXdfc2l6ZSA9IGZyYW1lX3Np
emU7Ci0gICBlbHNlIGlmICh2YXJpYWJsZV9kdXJhdGlvbiA9PSBPUFVTX0ZSQU1FU0laRV9WQVJJ
QUJMRSkKLSAgICAgIG5ld19zaXplID0gRnMvNTA7Ci0gICBlbHNlIGlmICh2YXJpYWJsZV9kdXJh
dGlvbiA+PSBPUFVTX0ZSQU1FU0laRV8yXzVfTVMgJiYgdmFyaWFibGVfZHVyYXRpb24gPD0gT1BV
U19GUkFNRVNJWkVfNjBfTVMpCi0gICAgICBuZXdfc2l6ZSA9IElNSU4oMypGcy81MCwgKEZzLzQw
MCk8PCh2YXJpYWJsZV9kdXJhdGlvbi1PUFVTX0ZSQU1FU0laRV8yXzVfTVMpKTsKKyAgIGVsc2Ug
aWYgKHZhcmlhYmxlX2R1cmF0aW9uID49IE9QVVNfRlJBTUVTSVpFXzJfNV9NUyAmJiB2YXJpYWJs
ZV9kdXJhdGlvbiA8PSBPUFVTX0ZSQU1FU0laRV8xMjBfTVMpCisgICB7CisgICAgICBpZiAodmFy
aWFibGVfZHVyYXRpb24gPD0gT1BVU19GUkFNRVNJWkVfNDBfTVMpCisgICAgICAgICBuZXdfc2l6
ZSA9IChGcy80MDApPDwodmFyaWFibGVfZHVyYXRpb24tT1BVU19GUkFNRVNJWkVfMl81X01TKTsK
KyAgICAgIGVsc2UKKyAgICAgICAgIG5ld19zaXplID0gKHZhcmlhYmxlX2R1cmF0aW9uLU9QVVNf
RlJBTUVTSVpFXzJfNV9NUy0yKSpGcy81MDsKKyAgIH0KICAgIGVsc2UKICAgICAgIHJldHVybiAt
MTsKICAgIGlmIChuZXdfc2l6ZT5mcmFtZV9zaXplKQogICAgICAgcmV0dXJuIC0xOwotICAgaWYg
KDQwMCpuZXdfc2l6ZSE9RnMgJiYgMjAwKm5ld19zaXplIT1GcyAmJiAxMDAqbmV3X3NpemUhPUZz
ICYmCi0gICAgICAgICAgICA1MCpuZXdfc2l6ZSE9RnMgJiYgMjUqbmV3X3NpemUhPUZzICYmIDUw
Km5ld19zaXplIT0zKkZzKQorICAgaWYgKDQwMCpuZXdfc2l6ZSE9RnMgICAmJiAyMDAqbmV3X3Np
emUhPUZzICAgJiYgMTAwKm5ld19zaXplIT1GcyAgICYmCisgICAgICAgIDUwKm5ld19zaXplIT1G
cyAgICYmICAyNSpuZXdfc2l6ZSE9RnMgICAmJiAgNTAqbmV3X3NpemUhPTMqRnMgJiYKKyAgICAg
ICAgNTAqbmV3X3NpemUhPTQqRnMgJiYgIDUwKm5ld19zaXplIT01KkZzICYmICA1MCpuZXdfc2l6
ZSE9NipGcykKICAgICAgIHJldHVybiAtMTsKICAgIHJldHVybiBuZXdfc2l6ZTsKIH0KIAotb3B1
c19pbnQzMiBjb21wdXRlX2ZyYW1lX3NpemUoY29uc3Qgdm9pZCAqYW5hbHlzaXNfcGNtLCBpbnQg
ZnJhbWVfc2l6ZSwKLSAgICAgIGludCB2YXJpYWJsZV9kdXJhdGlvbiwgaW50IEMsIG9wdXNfaW50
MzIgRnMsIGludCBiaXRyYXRlX2JwcywKLSAgICAgIGludCBkZWxheV9jb21wZW5zYXRpb24sIGRv
d25taXhfZnVuYyBkb3dubWl4Ci0jaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCi0gICAgICAsIGZs
b2F0ICpzdWJmcmFtZV9tZW0KLSNlbmRpZgotICAgICAgKQotewotI2lmbmRlZiBESVNBQkxFX0ZM
T0FUX0FQSQotICAgaWYgKHZhcmlhYmxlX2R1cmF0aW9uID09IE9QVVNfRlJBTUVTSVpFX1ZBUklB
QkxFICYmIGZyYW1lX3NpemUgPj0gRnMvMjAwKQotICAgewotICAgICAgaW50IExNID0gMzsKLSAg
ICAgIExNID0gb3B0aW1pemVfZnJhbWVzaXplKGFuYWx5c2lzX3BjbSwgZnJhbWVfc2l6ZSwgQywg
RnMsIGJpdHJhdGVfYnBzLAotICAgICAgICAgICAgMCwgc3ViZnJhbWVfbWVtLCBkZWxheV9jb21w
ZW5zYXRpb24sIGRvd25taXgpOwotICAgICAgd2hpbGUgKChGcy80MDA8PExNKT5mcmFtZV9zaXpl
KQotICAgICAgICAgTE0tLTsKLSAgICAgIGZyYW1lX3NpemUgPSAoRnMvNDAwPDxMTSk7Ci0gICB9
IGVsc2UKLSNlbHNlCi0gICAodm9pZClhbmFseXNpc19wY207Ci0gICAodm9pZClDOwotICAgKHZv
aWQpYml0cmF0ZV9icHM7Ci0gICAodm9pZClkZWxheV9jb21wZW5zYXRpb247Ci0gICAodm9pZClk
b3dubWl4OwotI2VuZGlmCi0gICB7Ci0gICAgICBmcmFtZV9zaXplID0gZnJhbWVfc2l6ZV9zZWxl
Y3QoZnJhbWVfc2l6ZSwgdmFyaWFibGVfZHVyYXRpb24sIEZzKTsKLSAgIH0KLSAgIGlmIChmcmFt
ZV9zaXplPDApCi0gICAgICByZXR1cm4gLTE7Ci0gICByZXR1cm4gZnJhbWVfc2l6ZTsKLX0KLQog
b3B1c192YWwxNiBjb21wdXRlX3N0ZXJlb193aWR0aChjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGlu
dCBmcmFtZV9zaXplLCBvcHVzX2ludDMyIEZzLCBTdGVyZW9XaWR0aFN0YXRlICptZW0pCiB7CiAg
ICBvcHVzX3ZhbDMyIHh4LCB4eSwgeXk7CkBAIC05MzQsNiArNzI5LDM0NyBAQCBvcHVzX3ZhbDE2
IGNvbXB1dGVfc3RlcmVvX3dpZHRoKGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lX3Np
emUsIG9wdXNfaW50MwogICAgcmV0dXJuIEVYVFJBQ1QxNihNSU4zMihRMTVPTkUsIE1VTFQxNl8x
NigyMCwgbWVtLT5tYXhfZm9sbG93ZXIpKSk7CiB9CiAKK3N0YXRpYyBpbnQgZGVjaWRlX2ZlYyhp
bnQgdXNlSW5CYW5kRkVDLCBpbnQgUGFja2V0TG9zc19wZXJjLCBpbnQgbGFzdF9mZWMsIGludCBt
b2RlLCBpbnQgKmJhbmR3aWR0aCwgb3B1c19pbnQzMiByYXRlKQoreworICAgaW50IG9yaWdfYmFu
ZHdpZHRoOworICAgaWYgKCF1c2VJbkJhbmRGRUMgfHwgUGFja2V0TG9zc19wZXJjID09IDAgfHwg
bW9kZSA9PSBNT0RFX0NFTFRfT05MWSkKKyAgICAgIHJldHVybiAwOworICAgb3JpZ19iYW5kd2lk
dGggPSAqYmFuZHdpZHRoOworICAgZm9yICg7OykKKyAgIHsKKyAgICAgIG9wdXNfaW50MzIgaHlz
dGVyZXNpczsKKyAgICAgIG9wdXNfaW50MzIgTEJSUl9yYXRlX3RocmVzX2JwczsKKyAgICAgIC8q
IENvbXB1dGUgdGhyZXNob2xkIGZvciB1c2luZyBGRUMgYXQgdGhlIGN1cnJlbnQgYmFuZHdpZHRo
IHNldHRpbmcgKi8KKyAgICAgIExCUlJfcmF0ZV90aHJlc19icHMgPSBmZWNfdGhyZXNob2xkc1sy
KigqYmFuZHdpZHRoIC0gT1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORCldOworICAgICAgaHlzdGVy
ZXNpcyA9IGZlY190aHJlc2hvbGRzWzIqKCpiYW5kd2lkdGggLSBPUFVTX0JBTkRXSURUSF9OQVJS
T1dCQU5EKSArIDFdOworICAgICAgaWYgKGxhc3RfZmVjID09IDEpIExCUlJfcmF0ZV90aHJlc19i
cHMgLT0gaHlzdGVyZXNpczsKKyAgICAgIGlmIChsYXN0X2ZlYyA9PSAwKSBMQlJSX3JhdGVfdGhy
ZXNfYnBzICs9IGh5c3RlcmVzaXM7CisgICAgICBMQlJSX3JhdGVfdGhyZXNfYnBzID0gc2lsa19T
TVVMV0IoIHNpbGtfTVVMKCBMQlJSX3JhdGVfdGhyZXNfYnBzLAorICAgICAgICAgICAgMTI1IC0g
c2lsa19taW4oIFBhY2tldExvc3NfcGVyYywgMjUgKSApLCBTSUxLX0ZJWF9DT05TVCggMC4wMSwg
MTYgKSApOworICAgICAgLyogSWYgbG9zcyA8PSA1JSwgd2UgbG9vayBhdCB3aGV0aGVyIHdlIGhh
dmUgZW5vdWdoIHJhdGUgdG8gZW5hYmxlIEZFQy4KKyAgICAgICAgIElmIGxvc3MgPiA1JSwgd2Ug
ZGVjcmVhc2UgdGhlIGJhbmR3aWR0aCB1bnRpbCB3ZSBjYW4gZW5hYmxlIEZFQy4gKi8KKyAgICAg
IGlmIChyYXRlID4gTEJSUl9yYXRlX3RocmVzX2JwcykKKyAgICAgICAgIHJldHVybiAxOworICAg
ICAgZWxzZSBpZiAoUGFja2V0TG9zc19wZXJjIDw9IDUpCisgICAgICAgICByZXR1cm4gMDsKKyAg
ICAgIGVsc2UgaWYgKCpiYW5kd2lkdGggPiBPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKQorICAg
ICAgICAgKCpiYW5kd2lkdGgpLS07CisgICAgICBlbHNlCisgICAgICAgICBicmVhazsKKyAgIH0K
KyAgIC8qIENvdWxkbid0IGZpbmQgYW55IGJhbmR3aWR0aCB0byBlbmFibGUgRkVDLCBrZWVwIG9y
aWdpbmFsIGJhbmR3aWR0aC4gKi8KKyAgICpiYW5kd2lkdGggPSBvcmlnX2JhbmR3aWR0aDsKKyAg
IHJldHVybiAwOworfQorCitzdGF0aWMgaW50IGNvbXB1dGVfc2lsa19yYXRlX2Zvcl9oeWJyaWQo
aW50IHJhdGUsIGludCBiYW5kd2lkdGgsIGludCBmcmFtZTIwbXMsIGludCB2YnIsIGludCBmZWMp
IHsKKyAgIGludCBlbnRyeTsKKyAgIGludCBpOworICAgaW50IE47CisgICBpbnQgc2lsa19yYXRl
OworICAgc3RhdGljIGludCByYXRlX3RhYmxlW11bNV0gPSB7CisgIC8qICB8dG90YWx8IHwtLS0t
LS0tLSBTSUxLLS0tLS0tLS0tLS0tfAorICAgICAgICAgICAgICB8LS0gTm8gRkVDIC18IHwtLS0g
RkVDIC0tLXwKKyAgICAgICAgICAgICAgIDEwbXMgICAyMG1zICAgMTBtcyAgIDIwbXMgKi8KKyAg
ICAgIHsgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDB9LAorICAgICAgezEyMDAwLCAx
MDAwMCwgMTAwMDAsIDExMDAwLCAxMTAwMH0sCisgICAgICB7MTYwMDAsIDEzNTAwLCAxMzUwMCwg
MTUwMDAsIDE1MDAwfSwKKyAgICAgIHsyMDAwMCwgMTYwMDAsIDE2MDAwLCAxODAwMCwgMTgwMDB9
LAorICAgICAgezI0MDAwLCAxODAwMCwgMTgwMDAsIDIxMDAwLCAyMTAwMH0sCisgICAgICB7MzIw
MDAsIDIyMDAwLCAyMjAwMCwgMjgwMDAsIDI4MDAwfSwKKyAgICAgIHs2NDAwMCwgMzgwMDAsIDM4
MDAwLCA1MDAwMCwgNTAwMDB9CisgICB9OworICAgZW50cnkgPSAxICsgZnJhbWUyMG1zICsgMipm
ZWM7CisgICBOID0gc2l6ZW9mKHJhdGVfdGFibGUpL3NpemVvZihyYXRlX3RhYmxlWzBdKTsKKyAg
IGZvciAoaT0xO2k8TjtpKyspCisgICB7CisgICAgICBpZiAocmF0ZV90YWJsZVtpXVswXSA+IHJh
dGUpIGJyZWFrOworICAgfQorICAgaWYgKGkgPT0gTikKKyAgIHsKKyAgICAgIHNpbGtfcmF0ZSA9
IHJhdGVfdGFibGVbaS0xXVtlbnRyeV07CisgICAgICAvKiBGb3Igbm93LCBqdXN0IGdpdmUgNTAl
IG9mIHRoZSBleHRyYSBiaXRzIHRvIFNJTEsuICovCisgICAgICBzaWxrX3JhdGUgKz0gKHJhdGUt
cmF0ZV90YWJsZVtpLTFdWzBdKS8yOworICAgfSBlbHNlIHsKKyAgICAgIG9wdXNfaW50MzIgbG8s
IGhpLCB4MCwgeDE7CisgICAgICBsbyA9IHJhdGVfdGFibGVbaS0xXVtlbnRyeV07CisgICAgICBo
aSA9IHJhdGVfdGFibGVbaV1bZW50cnldOworICAgICAgeDAgPSByYXRlX3RhYmxlW2ktMV1bMF07
CisgICAgICB4MSA9IHJhdGVfdGFibGVbaV1bMF07CisgICAgICBzaWxrX3JhdGUgPSAobG8qKHgx
LXJhdGUpICsgaGkqKHJhdGUteDApKS8oeDEteDApOworICAgfQorICAgaWYgKCF2YnIpCisgICB7
CisgICAgICAvKiBUaW55IGJvb3N0IHRvIFNJTEsgZm9yIENCUi4gV2Ugc2hvdWxkIHByb2JhYmx5
IHR1bmUgdGhpcyBiZXR0ZXIuICovCisgICAgICBzaWxrX3JhdGUgKz0gMTAwOworICAgfQorICAg
aWYgKGJhbmR3aWR0aD09T1BVU19CQU5EV0lEVEhfU1VQRVJXSURFQkFORCkKKyAgICAgIHNpbGtf
cmF0ZSArPSAzMDA7CisgICByZXR1cm4gc2lsa19yYXRlOworfQorCisvKiBSZXR1cm5zIHRoZSBl
cXVpdmFsZW50IGJpdHJhdGUgY29ycmVzcG9uZGluZyB0byAyMCBtcyBmcmFtZXMsCisgICBjb21w
bGV4aXR5IDEwIFZCUiBvcGVyYXRpb24uICovCitzdGF0aWMgb3B1c19pbnQzMiBjb21wdXRlX2Vx
dWl2X3JhdGUob3B1c19pbnQzMiBiaXRyYXRlLCBpbnQgY2hhbm5lbHMsCisgICAgICBpbnQgZnJh
bWVfcmF0ZSwgaW50IHZiciwgaW50IG1vZGUsIGludCBjb21wbGV4aXR5LCBpbnQgbG9zcykKK3sK
KyAgIG9wdXNfaW50MzIgZXF1aXY7CisgICBlcXVpdiA9IGJpdHJhdGU7CisgICAvKiBUYWtlIGlu
dG8gYWNjb3VudCBvdmVyaGVhZCBmcm9tIHNtYWxsZXIgZnJhbWVzLiAqLworICAgZXF1aXYgLT0g
KDQwKmNoYW5uZWxzKzIwKSooZnJhbWVfcmF0ZSAtIDUwKTsKKyAgIC8qIENCUiBpcyBhYm91dCBh
IDglIHBlbmFsdHkgZm9yIGJvdGggU0lMSyBhbmQgQ0VMVC4gKi8KKyAgIGlmICghdmJyKQorICAg
ICAgZXF1aXYgLT0gZXF1aXYvMTI7CisgICAvKiBDb21wbGV4aXR5IG1ha2VzIGFib3V0IDEwJSBk
aWZmZXJlbmNlIChmcm9tIDAgdG8gMTApIGluIGdlbmVyYWwuICovCisgICBlcXVpdiA9IGVxdWl2
ICogKDkwK2NvbXBsZXhpdHkpLzEwMDsKKyAgIGlmIChtb2RlID09IE1PREVfU0lMS19PTkxZIHx8
IG1vZGUgPT0gTU9ERV9IWUJSSUQpCisgICB7CisgICAgICAvKiBTSUxLIGNvbXBsZXhpdHkgMC0x
IHVzZXMgdGhlIG5vbi1kZWxheWVkLWRlY2lzaW9uIE5TUSwgd2hpY2gKKyAgICAgICAgIGNvc3Rz
IGFib3V0IDIwJS4gKi8KKyAgICAgIGlmIChjb21wbGV4aXR5PDIpCisgICAgICAgICBlcXVpdiA9
IGVxdWl2KjQvNTsKKyAgICAgIGVxdWl2IC09IGVxdWl2Kmxvc3MvKDYqbG9zcyArIDEwKTsKKyAg
IH0gZWxzZSBpZiAobW9kZSA9PSBNT0RFX0NFTFRfT05MWSkgeworICAgICAgLyogQ0VMVCBjb21w
bGV4aXR5IDAtNCBkb2Vzbid0IGhhdmUgdGhlIHBpdGNoIGZpbHRlciwgd2hpY2ggY29zdHMKKyAg
ICAgICAgIGFib3V0IDEwJS4gKi8KKyAgICAgIGlmIChjb21wbGV4aXR5PDUpCisgICAgICAgICBl
cXVpdiA9IGVxdWl2KjkvMTA7CisgICB9IGVsc2UgeworICAgICAgLyogTW9kZSBub3Qga25vd24g
eWV0ICovCisgICAgICAvKiBIYWxmIHRoZSBTSUxLIGxvc3MqLworICAgICAgZXF1aXYgLT0gZXF1
aXYqbG9zcy8oMTIqbG9zcyArIDIwKTsKKyAgIH0KKyAgIHJldHVybiBlcXVpdjsKK30KKworI2lm
bmRlZiBESVNBQkxFX0ZMT0FUX0FQSQorCitzdGF0aWMgaW50IGlzX2RpZ2l0YWxfc2lsZW5jZShj
b25zdCBvcHVzX3ZhbDE2KiBwY20sIGludCBmcmFtZV9zaXplLCBpbnQgY2hhbm5lbHMsIGludCBs
c2JfZGVwdGgpCit7CisgICBpbnQgc2lsZW5jZSA9IDA7CisgICBvcHVzX3ZhbDMyIHNhbXBsZV9t
YXggPSAwOworI2lmZGVmIE1MUF9UUkFJTklORworICAgcmV0dXJuIDA7CisjZW5kaWYKKyAgIHNh
bXBsZV9tYXggPSBjZWx0X21heGFiczE2KHBjbSwgZnJhbWVfc2l6ZSpjaGFubmVscyk7CisKKyNp
ZmRlZiBGSVhFRF9QT0lOVAorICAgc2lsZW5jZSA9IChzYW1wbGVfbWF4ID09IDApOworICAgKHZv
aWQpbHNiX2RlcHRoOworI2Vsc2UKKyAgIHNpbGVuY2UgPSAoc2FtcGxlX21heCA8PSAob3B1c192
YWwxNikgMSAvICgxIDw8IGxzYl9kZXB0aCkpOworI2VuZGlmCisKKyAgIHJldHVybiBzaWxlbmNl
OworfQorCisjaWZkZWYgRklYRURfUE9JTlQKK3N0YXRpYyBvcHVzX3ZhbDMyIGNvbXB1dGVfZnJh
bWVfZW5lcmd5KGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lX3NpemUsIGludCBjaGFu
bmVscywgaW50IGFyY2gpCit7CisgICBpbnQgaTsKKyAgIG9wdXNfdmFsMzIgc2FtcGxlX21heDsK
KyAgIGludCBtYXhfc2hpZnQ7CisgICBpbnQgc2hpZnQ7CisgICBvcHVzX3ZhbDMyIGVuZXJneSA9
IDA7CisgICBpbnQgbGVuID0gZnJhbWVfc2l6ZSpjaGFubmVsczsKKyAgICh2b2lkKWFyY2g7Cisg
ICAvKiBNYXggYW1wbGl0dWRlIGluIHRoZSBzaWduYWwgKi8KKyAgIHNhbXBsZV9tYXggPSBjZWx0
X21heGFiczE2KHBjbSwgbGVuKTsKKworICAgLyogQ29tcHV0ZSB0aGUgcmlnaHQgc2hpZnQgcmVx
dWlyZWQgaW4gdGhlIE1BQyB0byBhdm9pZCBhbiBvdmVyZmxvdyAqLworICAgbWF4X3NoaWZ0ID0g
Y2VsdF9pbG9nMihsZW4pOworICAgc2hpZnQgPSBJTUFYKDAsIChjZWx0X2lsb2cyKHNhbXBsZV9t
YXgpIDw8IDEpICsgbWF4X3NoaWZ0IC0gMjgpOworCisgICAvKiBDb21wdXRlIHRoZSBlbmVyZ3kg
Ki8KKyAgIGZvciAoaT0wOyBpPGxlbjsgaSsrKQorICAgICAgZW5lcmd5ICs9IFNIUjMyKE1VTFQx
Nl8xNihwY21baV0sIHBjbVtpXSksIHNoaWZ0KTsKKworICAgLyogTm9ybWFsaXplIGVuZXJneSBi
eSB0aGUgZnJhbWUgc2l6ZSBhbmQgbGVmdC1zaGlmdCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBwb3Np
dGlvbiAqLworICAgZW5lcmd5IC89IGxlbjsKKyAgIGVuZXJneSA9IFNITDMyKGVuZXJneSwgc2hp
ZnQpOworCisgICByZXR1cm4gZW5lcmd5OworfQorI2Vsc2UKK3N0YXRpYyBvcHVzX3ZhbDMyIGNv
bXB1dGVfZnJhbWVfZW5lcmd5KGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lX3NpemUs
IGludCBjaGFubmVscywgaW50IGFyY2gpCit7CisgICBpbnQgbGVuID0gZnJhbWVfc2l6ZSpjaGFu
bmVsczsKKyAgIHJldHVybiBjZWx0X2lubmVyX3Byb2QocGNtLCBwY20sIGxlbiwgYXJjaCkvbGVu
OworfQorI2VuZGlmCisKKy8qIERlY2lkZXMgaWYgRFRYIHNob3VsZCBiZSB0dXJuZWQgb24gKD0x
KSBvciBvZmYgKD0wKSAqLworc3RhdGljIGludCBkZWNpZGVfZHR4X21vZGUoZmxvYXQgYWN0aXZp
dHlfcHJvYmFiaWxpdHksICAgIC8qIHByb2JhYmlsaXR5IHRoYXQgY3VycmVudCBmcmFtZSBjb250
YWlucyBzcGVlY2gvbXVzaWMgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqbmJf
bm9fYWN0aXZpdHlfZnJhbWVzLCAgICAvKiBudW1iZXIgb2YgY29uc2VjdXRpdmUgZnJhbWVzIHdp
dGggbm8gYWN0aXZpdHkgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdXNfdmFsMzIg
cGVha19zaWduYWxfZW5lcmd5LCAvKiBwZWFrIGVuZXJneSBvZiBkZXNpcmVkIHNpZ25hbCBkZXRl
Y3RlZCBzbyBmYXIgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG9wdXNfdmFs
MTYgKnBjbSwgICAgICAgICAvKiBpbnB1dCBwY20gc2lnbmFsICovCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgZnJhbWVfc2l6ZSwgICAgICAgICAgICAgICAgLyogZnJhbWUgc2l6ZSAq
LworICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGNoYW5uZWxzLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IGlzX3NpbGVuY2UsICAgICAgICAgICAgICAgICAvKiBvbmx5IGRp
Z2l0YWwgc2lsZW5jZSBkZXRlY3RlZCBpbiB0aGlzIGZyYW1lICovCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgYXJjaAorICAgICAgICAgICAgICAgICAgICAgICAgICApCit7CisgICBv
cHVzX3ZhbDMyIG5vaXNlX2VuZXJneTsKKworICAgaWYgKCFpc19zaWxlbmNlKQorICAgeworICAg
ICAgaWYgKGFjdGl2aXR5X3Byb2JhYmlsaXR5IDwgRFRYX0FDVElWSVRZX1RIUkVTSE9MRCkgIC8q
IGlzIG5vaXNlICovCisgICAgICB7CisgICAgICAgICBub2lzZV9lbmVyZ3kgPSBjb21wdXRlX2Zy
YW1lX2VuZXJneShwY20sIGZyYW1lX3NpemUsIGNoYW5uZWxzLCBhcmNoKTsKKworICAgICAgICAg
LyogYnV0IGlzIHN1ZmZpY2llbnRseSBxdWlldCAqLworICAgICAgICAgaXNfc2lsZW5jZSA9IHBl
YWtfc2lnbmFsX2VuZXJneSA+PSAoUFNFVURPX1NOUl9USFJFU0hPTEQgKiBub2lzZV9lbmVyZ3kp
OworICAgICAgfQorICAgfQorCisgICBpZiAoaXNfc2lsZW5jZSkKKyAgIHsKKyAgICAgIC8qIFRo
ZSBudW1iZXIgb2YgY29uc2VjdXRpdmUgRFRYIGZyYW1lcyBzaG91bGQgYmUgd2l0aGluIHRoZSBh
bGxvd2VkIGJvdW5kcyAqLworICAgICAgKCpuYl9ub19hY3Rpdml0eV9mcmFtZXMpKys7CisKKyAg
ICAgIGlmICgqbmJfbm9fYWN0aXZpdHlfZnJhbWVzID4gTkJfU1BFRUNIX0ZSQU1FU19CRUZPUkVf
RFRYKQorICAgICAgeworICAgICAgICAgaWYgKCpuYl9ub19hY3Rpdml0eV9mcmFtZXMgPD0gKE5C
X1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCArIE1BWF9DT05TRUNVVElWRV9EVFgpKQorICAgICAg
ICAgICAgLyogVmFsaWQgZnJhbWUgZm9yIERUWCEgKi8KKyAgICAgICAgICAgIHJldHVybiAxOwor
ICAgICAgICAgZWxzZQorICAgICAgICAgICAgKCpuYl9ub19hY3Rpdml0eV9mcmFtZXMpID0gTkJf
U1BFRUNIX0ZSQU1FU19CRUZPUkVfRFRYOworICAgICAgfQorICAgfSBlbHNlCisgICAgICAoKm5i
X25vX2FjdGl2aXR5X2ZyYW1lcykgPSAwOworCisgICByZXR1cm4gMDsKK30KKworI2VuZGlmCisK
K3N0YXRpYyBvcHVzX2ludDMyIGVuY29kZV9tdWx0aWZyYW1lX3BhY2tldChPcHVzRW5jb2RlciAq
c3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3B1
c192YWwxNiAqcGNtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCBuYl9mcmFtZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW50IGZyYW1lX3NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdW5zaWduZWQgY2hhciAqZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBvcHVzX2ludDMyIG91dF9kYXRhX2J5dGVzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB0b19jZWx0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBsc2JfZGVwdGgsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGZsb2F0X2FwaSkKK3sKKyAgIGludCBp
OworICAgaW50IHJldCA9IDA7CisgICBWQVJERUNMKHVuc2lnbmVkIGNoYXIsIHRtcF9kYXRhKTsK
KyAgIGludCBiYWtfbW9kZSwgYmFrX2JhbmR3aWR0aCwgYmFrX2NoYW5uZWxzLCBiYWtfdG9fbW9u
bzsKKyAgIFZBUkRFQ0woT3B1c1JlcGFja2V0aXplciwgcnApOworICAgaW50IG1heF9oZWFkZXJf
Ynl0ZXM7CisgICBvcHVzX2ludDMyIGJ5dGVzX3Blcl9mcmFtZTsKKyAgIG9wdXNfaW50MzIgY2Jy
X2J5dGVzOworICAgb3B1c19pbnQzMiByZXBhY2tldGl6ZV9sZW47CisgICBpbnQgdG1wX2xlbjsK
KyAgIEFMTE9DX1NUQUNLOworCisgICAvKiBXb3JzdCBjYXNlczoKKyAgICAqIDIgZnJhbWVzOiBD
b2RlIDIgd2l0aCBkaWZmZXJlbnQgY29tcHJlc3NlZCBzaXplcworICAgICogPjIgZnJhbWVzOiBD
b2RlIDMgVkJSICovCisgICBtYXhfaGVhZGVyX2J5dGVzID0gbmJfZnJhbWVzID09IDIgPyAzIDog
KDIrKG5iX2ZyYW1lcy0xKSoyKTsKKworICAgaWYgKHN0LT51c2VfdmJyIHx8IHN0LT51c2VyX2Jp
dHJhdGVfYnBzPT1PUFVTX0JJVFJBVEVfTUFYKQorICAgICAgcmVwYWNrZXRpemVfbGVuID0gb3V0
X2RhdGFfYnl0ZXM7CisgICBlbHNlIHsKKyAgICAgIGNicl9ieXRlcyA9IDMqc3QtPmJpdHJhdGVf
YnBzLygzKjgqc3QtPkZzLyhmcmFtZV9zaXplKm5iX2ZyYW1lcykpOworICAgICAgcmVwYWNrZXRp
emVfbGVuID0gSU1JTihjYnJfYnl0ZXMsIG91dF9kYXRhX2J5dGVzKTsKKyAgIH0KKyAgIGJ5dGVz
X3Blcl9mcmFtZSA9IElNSU4oMTI3NiwgMSsocmVwYWNrZXRpemVfbGVuLW1heF9oZWFkZXJfYnl0
ZXMpL25iX2ZyYW1lcyk7CisKKyAgIEFMTE9DKHRtcF9kYXRhLCBuYl9mcmFtZXMqYnl0ZXNfcGVy
X2ZyYW1lLCB1bnNpZ25lZCBjaGFyKTsKKyAgIEFMTE9DKHJwLCAxLCBPcHVzUmVwYWNrZXRpemVy
KTsKKyAgIG9wdXNfcmVwYWNrZXRpemVyX2luaXQocnApOworCisgICBiYWtfbW9kZSA9IHN0LT51
c2VyX2ZvcmNlZF9tb2RlOworICAgYmFrX2JhbmR3aWR0aCA9IHN0LT51c2VyX2JhbmR3aWR0aDsK
KyAgIGJha19jaGFubmVscyA9IHN0LT5mb3JjZV9jaGFubmVsczsKKworICAgc3QtPnVzZXJfZm9y
Y2VkX21vZGUgPSBzdC0+bW9kZTsKKyAgIHN0LT51c2VyX2JhbmR3aWR0aCA9IHN0LT5iYW5kd2lk
dGg7CisgICBzdC0+Zm9yY2VfY2hhbm5lbHMgPSBzdC0+c3RyZWFtX2NoYW5uZWxzOworCisgICBi
YWtfdG9fbW9ubyA9IHN0LT5zaWxrX21vZGUudG9Nb25vOworICAgaWYgKGJha190b19tb25vKQor
ICAgICAgc3QtPmZvcmNlX2NoYW5uZWxzID0gMTsKKyAgIGVsc2UKKyAgICAgIHN0LT5wcmV2X2No
YW5uZWxzID0gc3QtPnN0cmVhbV9jaGFubmVsczsKKworICAgZm9yIChpPTA7aTxuYl9mcmFtZXM7
aSsrKQorICAgeworICAgICAgc3QtPnNpbGtfbW9kZS50b01vbm8gPSAwOworICAgICAgc3QtPm5v
bmZpbmFsX2ZyYW1lID0gaTwobmJfZnJhbWVzLTEpOworCisgICAgICAvKiBXaGVuIHN3aXRjaGlu
ZyBmcm9tIFNJTEsvSHlicmlkIHRvIENFTFQsIG9ubHkgYXNrIGZvciBhIHN3aXRjaCBhdCB0aGUg
bGFzdCBmcmFtZSAqLworICAgICAgaWYgKHRvX2NlbHQgJiYgaT09bmJfZnJhbWVzLTEpCisgICAg
ICAgICBzdC0+dXNlcl9mb3JjZWRfbW9kZSA9IE1PREVfQ0VMVF9PTkxZOworCisgICAgICB0bXBf
bGVuID0gb3B1c19lbmNvZGVfbmF0aXZlKHN0LCBwY20raSooc3QtPmNoYW5uZWxzKmZyYW1lX3Np
emUpLCBmcmFtZV9zaXplLAorICAgICAgICAgdG1wX2RhdGEraSpieXRlc19wZXJfZnJhbWUsIGJ5
dGVzX3Blcl9mcmFtZSwgbHNiX2RlcHRoLCBOVUxMLCAwLCAwLCAwLCAwLAorICAgICAgICAgTlVM
TCwgZmxvYXRfYXBpKTsKKworICAgICAgaWYgKHRtcF9sZW48MCkKKyAgICAgIHsKKyAgICAgICAg
IFJFU1RPUkVfU1RBQ0s7CisgICAgICAgICByZXR1cm4gT1BVU19JTlRFUk5BTF9FUlJPUjsKKyAg
ICAgIH0KKworICAgICAgcmV0ID0gb3B1c19yZXBhY2tldGl6ZXJfY2F0KHJwLCB0bXBfZGF0YStp
KmJ5dGVzX3Blcl9mcmFtZSwgdG1wX2xlbik7CisKKyAgICAgIGlmIChyZXQ8MCkKKyAgICAgIHsK
KyAgICAgICAgIFJFU1RPUkVfU1RBQ0s7CisgICAgICAgICByZXR1cm4gT1BVU19JTlRFUk5BTF9F
UlJPUjsKKyAgICAgIH0KKyAgIH0KKworICAgcmV0ID0gb3B1c19yZXBhY2tldGl6ZXJfb3V0X3Jh
bmdlX2ltcGwocnAsIDAsIG5iX2ZyYW1lcywgZGF0YSwgcmVwYWNrZXRpemVfbGVuLCAwLCAhc3Qt
PnVzZV92YnIpOworCisgICBpZiAocmV0PDApCisgICB7CisgICAgICBSRVNUT1JFX1NUQUNLOwor
ICAgICAgcmV0dXJuIE9QVVNfSU5URVJOQUxfRVJST1I7CisgICB9CisKKyAgIC8qIERpc2NhcmQg
Y29uZmlncyB0aGF0IHdlcmUgZm9yY2VkIGxvY2FsbHkgZm9yIHRoZSBwdXJwb3NlIG9mIHJlcGFj
a2V0aXphdGlvbiAqLworICAgc3QtPnVzZXJfZm9yY2VkX21vZGUgPSBiYWtfbW9kZTsKKyAgIHN0
LT51c2VyX2JhbmR3aWR0aCA9IGJha19iYW5kd2lkdGg7CisgICBzdC0+Zm9yY2VfY2hhbm5lbHMg
PSBiYWtfY2hhbm5lbHM7CisgICBzdC0+c2lsa19tb2RlLnRvTW9ubyA9IGJha190b19tb25vOwor
CisgICBSRVNUT1JFX1NUQUNLOworICAgcmV0dXJuIHJldDsKK30KKworc3RhdGljIGludCBjb21w
dXRlX3JlZHVuZGFuY3lfYnl0ZXMob3B1c19pbnQzMiBtYXhfZGF0YV9ieXRlcywgb3B1c19pbnQz
MiBiaXRyYXRlX2JwcywgaW50IGZyYW1lX3JhdGUsIGludCBjaGFubmVscykKK3sKKyAgIGludCBy
ZWR1bmRhbmN5X2J5dGVzX2NhcDsKKyAgIGludCByZWR1bmRhbmN5X2J5dGVzOworICAgb3B1c19p
bnQzMiByZWR1bmRhbmN5X3JhdGU7CisgICBpbnQgYmFzZV9iaXRzOworICAgb3B1c19pbnQzMiBh
dmFpbGFibGVfYml0czsKKyAgIGJhc2VfYml0cyA9ICg0MCpjaGFubmVscysyMCk7CisKKyAgIC8q
IEVxdWl2YWxlbnQgcmF0ZSBmb3IgNSBtcyBmcmFtZXMuICovCisgICByZWR1bmRhbmN5X3JhdGUg
PSBiaXRyYXRlX2JwcyArIGJhc2VfYml0cyooMjAwIC0gZnJhbWVfcmF0ZSk7CisgICAvKiBGb3Ig
VkJSLCBmdXJ0aGVyIGluY3JlYXNlIHRoZSBiaXRyYXRlIGlmIHdlIGNhbiBhZmZvcmQgaXQuIEl0
J3MgcHJldHR5IHNob3J0CisgICAgICBhbmQgd2UnbGwgYXZvaWQgYXJ0ZWZhY3RzLiAqLworICAg
cmVkdW5kYW5jeV9yYXRlID0gMypyZWR1bmRhbmN5X3JhdGUvMjsKKyAgIHJlZHVuZGFuY3lfYnl0
ZXMgPSByZWR1bmRhbmN5X3JhdGUvMTYwMDsKKworICAgLyogQ29tcHV0ZSB0aGUgbWF4IHJhdGUg
d2UgY2FuIHVzZSBnaXZlbiBDQlIgb3IgVkJSIHdpdGggY2FwLiAqLworICAgYXZhaWxhYmxlX2Jp
dHMgPSBtYXhfZGF0YV9ieXRlcyo4IC0gMipiYXNlX2JpdHM7CisgICByZWR1bmRhbmN5X2J5dGVz
X2NhcCA9IChhdmFpbGFibGVfYml0cyoyNDAvKDI0MCs0ODAwMC9mcmFtZV9yYXRlKSArIGJhc2Vf
Yml0cykvODsKKyAgIHJlZHVuZGFuY3lfYnl0ZXMgPSBJTUlOKHJlZHVuZGFuY3lfYnl0ZXMsIHJl
ZHVuZGFuY3lfYnl0ZXNfY2FwKTsKKyAgIC8qIEl0IHdlIGNhbid0IGdldCBlbm91Z2ggYml0cyBm
b3IgcmVkdW5kYW5jeSB0byBiZSB3b3J0aCBpdCwgcmVseSBvbiB0aGUgZGVjb2RlciBQTEMuICov
CisgICBpZiAocmVkdW5kYW5jeV9ieXRlcyA+IDQgKyA4KmNoYW5uZWxzKQorICAgICAgcmVkdW5k
YW5jeV9ieXRlcyA9IElNSU4oMjU3LCByZWR1bmRhbmN5X2J5dGVzKTsKKyAgIGVsc2UKKyAgICAg
IHJlZHVuZGFuY3lfYnl0ZXMgPSAwOworICAgcmV0dXJuIHJlZHVuZGFuY3lfYnl0ZXM7Cit9CisK
IG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1
c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfc2l6ZSwKICAgICAgICAgICAgICAgICB1bnNpZ25lZCBj
aGFyICpkYXRhLCBvcHVzX2ludDMyIG91dF9kYXRhX2J5dGVzLCBpbnQgbHNiX2RlcHRoLAogICAg
ICAgICAgICAgICAgIGNvbnN0IHZvaWQgKmFuYWx5c2lzX3BjbSwgb3B1c19pbnQzMiBhbmFseXNp
c19zaXplLCBpbnQgYzEsIGludCBjMiwKQEAgLTk3MSw2ICsxMTA3LDcgQEAgb3B1c19pbnQzMiBv
cHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20s
IGludCBmcmFtZV8KICAgICBBbmFseXNpc0luZm8gYW5hbHlzaXNfaW5mbzsKICAgICBpbnQgYW5h
bHlzaXNfcmVhZF9wb3NfYmFrPS0xOwogICAgIGludCBhbmFseXNpc19yZWFkX3N1YmZyYW1lX2Jh
az0tMTsKKyAgICBpbnQgaXNfc2lsZW5jZSA9IDA7CiAjZW5kaWYKICAgICBWQVJERUNMKG9wdXNf
dmFsMTYsIHRtcF9wcmVmaWxsKTsKIApAQCAtOTc5LDE1ICsxMTE2LDE5IEBAIG9wdXNfaW50MzIg
b3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNt
LCBpbnQgZnJhbWVfCiAgICAgbWF4X2RhdGFfYnl0ZXMgPSBJTUlOKDEyNzYsIG91dF9kYXRhX2J5
dGVzKTsKIAogICAgIHN0LT5yYW5nZUZpbmFsID0gMDsKLSAgICBpZiAoKCFzdC0+dmFyaWFibGVf
ZHVyYXRpb24gJiYgNDAwKmZyYW1lX3NpemUgIT0gc3QtPkZzICYmIDIwMCpmcmFtZV9zaXplICE9
IHN0LT5GcyAmJiAxMDAqZnJhbWVfc2l6ZSAhPSBzdC0+RnMgJiYKLSAgICAgICAgIDUwKmZyYW1l
X3NpemUgIT0gc3QtPkZzICYmICAyNSpmcmFtZV9zaXplICE9IHN0LT5GcyAmJiAgNTAqZnJhbWVf
c2l6ZSAhPSAzKnN0LT5GcykKLSAgICAgICAgIHx8ICg0MDAqZnJhbWVfc2l6ZSA8IHN0LT5GcykK
LSAgICAgICAgIHx8IG1heF9kYXRhX2J5dGVzPD0wCi0gICAgICAgICApCisgICAgaWYgKGZyYW1l
X3NpemUgPD0gMCB8fCBtYXhfZGF0YV9ieXRlcyA8PSAwKQogICAgIHsKICAgICAgICBSRVNUT1JF
X1NUQUNLOwogICAgICAgIHJldHVybiBPUFVTX0JBRF9BUkc7CiAgICAgfQorCisgICAgLyogQ2Fu
bm90IGVuY29kZSAxMDAgbXMgaW4gMSBieXRlICovCisgICAgaWYgKG1heF9kYXRhX2J5dGVzPT0x
ICYmIHN0LT5Gcz09KGZyYW1lX3NpemUqMTApKQorICAgIHsKKyAgICAgIFJFU1RPUkVfU1RBQ0s7
CisgICAgICByZXR1cm4gT1BVU19CVUZGRVJfVE9PX1NNQUxMOworICAgIH0KKwogICAgIHNpbGtf
ZW5jID0gKGNoYXIqKXN0K3N0LT5zaWxrX2VuY19vZmZzZXQ7CiAgICAgY2VsdF9lbmMgPSAoQ0VM
VEVuY29kZXIqKSgoY2hhciopc3Qrc3QtPmNlbHRfZW5jX29mZnNldCk7CiAgICAgaWYgKHN0LT5h
cHBsaWNhdGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVMQVkpCkBAIC0x
MDAxLDI1ICsxMTQyLDQyIEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNv
ZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAjaWZuZGVmIERJU0FC
TEVfRkxPQVRfQVBJCiAgICAgYW5hbHlzaXNfaW5mby52YWxpZCA9IDA7CiAjaWZkZWYgRklYRURf
UE9JTlQKLSAgICBpZiAoc3QtPnNpbGtfbW9kZS5jb21wbGV4aXR5ID49IDEwICYmIHN0LT5Gcz09
NDgwMDApCisgICAgaWYgKHN0LT5zaWxrX21vZGUuY29tcGxleGl0eSA+PSAxMCAmJiBzdC0+RnM+
PTE2MDAwKQogI2Vsc2UKLSAgICBpZiAoc3QtPnNpbGtfbW9kZS5jb21wbGV4aXR5ID49IDcgJiYg
c3QtPkZzPT00ODAwMCkKKyAgICBpZiAoc3QtPnNpbGtfbW9kZS5jb21wbGV4aXR5ID49IDcgJiYg
c3QtPkZzPj0xNjAwMCkKICNlbmRpZgogICAgIHsKLSAgICAgICBhbmFseXNpc19yZWFkX3Bvc19i
YWsgPSBzdC0+YW5hbHlzaXMucmVhZF9wb3M7Ci0gICAgICAgYW5hbHlzaXNfcmVhZF9zdWJmcmFt
ZV9iYWsgPSBzdC0+YW5hbHlzaXMucmVhZF9zdWJmcmFtZTsKLSAgICAgICBydW5fYW5hbHlzaXMo
JnN0LT5hbmFseXNpcywgY2VsdF9tb2RlLCBhbmFseXNpc19wY20sIGFuYWx5c2lzX3NpemUsIGZy
YW1lX3NpemUsCi0gICAgICAgICAgICAgYzEsIGMyLCBhbmFseXNpc19jaGFubmVscywgc3QtPkZz
LAotICAgICAgICAgICAgIGxzYl9kZXB0aCwgZG93bm1peCwgJmFuYWx5c2lzX2luZm8pOworICAg
ICAgIGlmIChpc19kaWdpdGFsX3NpbGVuY2UocGNtLCBmcmFtZV9zaXplLCBzdC0+Y2hhbm5lbHMs
IGxzYl9kZXB0aCkpCisgICAgICAgeworICAgICAgICAgIGlzX3NpbGVuY2UgPSAxOworICAgICAg
IH0gZWxzZSB7CisgICAgICAgICAgYW5hbHlzaXNfcmVhZF9wb3NfYmFrID0gc3QtPmFuYWx5c2lz
LnJlYWRfcG9zOworICAgICAgICAgIGFuYWx5c2lzX3JlYWRfc3ViZnJhbWVfYmFrID0gc3QtPmFu
YWx5c2lzLnJlYWRfc3ViZnJhbWU7CisgICAgICAgICAgcnVuX2FuYWx5c2lzKCZzdC0+YW5hbHlz
aXMsIGNlbHRfbW9kZSwgYW5hbHlzaXNfcGNtLCBhbmFseXNpc19zaXplLCBmcmFtZV9zaXplLAor
ICAgICAgICAgICAgICAgIGMxLCBjMiwgYW5hbHlzaXNfY2hhbm5lbHMsIHN0LT5GcywKKyAgICAg
ICAgICAgICAgICBsc2JfZGVwdGgsIGRvd25taXgsICZhbmFseXNpc19pbmZvKTsKKyAgICAgICB9
CisKKyAgICAgICAvKiBUcmFjayB0aGUgcGVhayBzaWduYWwgZW5lcmd5ICovCisgICAgICAgaWYg
KCFpc19zaWxlbmNlICYmIGFuYWx5c2lzX2luZm8uYWN0aXZpdHlfcHJvYmFiaWxpdHkgPiBEVFhf
QUNUSVZJVFlfVEhSRVNIT0xEKQorICAgICAgICAgIHN0LT5wZWFrX3NpZ25hbF9lbmVyZ3kgPSBN
QVgzMihNVUxUMTZfMzJfUTE1KFFDT05TVDE2KDAuOTk5ZiwgMTUpLCBzdC0+cGVha19zaWduYWxf
ZW5lcmd5KSwKKyAgICAgICAgICAgICAgICBjb21wdXRlX2ZyYW1lX2VuZXJneShwY20sIGZyYW1l
X3NpemUsIHN0LT5jaGFubmVscywgc3QtPmFyY2gpKTsKICAgICB9CiAjZWxzZQogICAgICh2b2lk
KWFuYWx5c2lzX3BjbTsKICAgICAodm9pZClhbmFseXNpc19zaXplOworICAgICh2b2lkKWMxOwor
ICAgICh2b2lkKWMyOworICAgICh2b2lkKWFuYWx5c2lzX2NoYW5uZWxzOworICAgICh2b2lkKWRv
d25taXg7CiAjZW5kaWYKIAotICAgIHN0LT52b2ljZV9yYXRpbyA9IC0xOwotCiAjaWZuZGVmIERJ
U0FCTEVfRkxPQVRfQVBJCisgICAgLyogUmVzZXQgdm9pY2VfcmF0aW8gaWYgdGhpcyBmcmFtZSBp
cyBub3Qgc2lsZW50IG9yIGlmIGFuYWx5c2lzIGlzIGRpc2FibGVkLgorICAgICAqIE90aGVyd2lz
ZSwgcHJlc2VydmUgdm9pY2VfcmF0aW8gZnJvbSB0aGUgbGFzdCBub24tc2lsZW50IGZyYW1lICov
CisgICAgaWYgKCFpc19zaWxlbmNlKQorICAgICAgc3QtPnZvaWNlX3JhdGlvID0gLTE7CisKICAg
ICBzdC0+ZGV0ZWN0ZWRfYmFuZHdpZHRoID0gMDsKICAgICBpZiAoYW5hbHlzaXNfaW5mby52YWxp
ZCkKICAgICB7CkBAIC0xMDM5LDYgKzExOTcsOCBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25h
dGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwog
ICAgICAgIGVsc2UKICAgICAgICAgICBzdC0+ZGV0ZWN0ZWRfYmFuZHdpZHRoID0gT1BVU19CQU5E
V0lEVEhfRlVMTEJBTkQ7CiAgICAgfQorI2Vsc2UKKyAgICBzdC0+dm9pY2VfcmF0aW8gPSAtMTsK
ICNlbmRpZgogCiAgICAgaWYgKHN0LT5jaGFubmVscz09MiAmJiBzdC0+Zm9yY2VfY2hhbm5lbHMh
PTEpCkBAIC0xMDUyLDEyICsxMjEyLDEzIEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZl
KE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAg
aWYgKCFzdC0+dXNlX3ZicikKICAgICB7CiAgICAgICAgaW50IGNickJ5dGVzOwotICAgICAgIC8q
IE11bHRpcGx5IGJ5IDMgdG8gbWFrZSBzdXJlIHRoZSBkaXZpc2lvbiBpcyBleGFjdC4gKi8KLSAg
ICAgICBpbnQgZnJhbWVfcmF0ZTMgPSAzKnN0LT5Gcy9mcmFtZV9zaXplOworICAgICAgIC8qIE11
bHRpcGx5IGJ5IDEyIHRvIG1ha2Ugc3VyZSB0aGUgZGl2aXNpb24gaXMgZXhhY3QuICovCisgICAg
ICAgaW50IGZyYW1lX3JhdGUxMiA9IDEyKnN0LT5Gcy9mcmFtZV9zaXplOwogICAgICAgIC8qIFdl
IG5lZWQgdG8gbWFrZSBzdXJlIHRoYXQgImludCIgdmFsdWVzIGFsd2F5cyBmaXQgaW4gMTYgYml0
cy4gKi8KLSAgICAgICBjYnJCeXRlcyA9IElNSU4oICgzKnN0LT5iaXRyYXRlX2Jwcy84ICsgZnJh
bWVfcmF0ZTMvMikvZnJhbWVfcmF0ZTMsIG1heF9kYXRhX2J5dGVzKTsKLSAgICAgICBzdC0+Yml0
cmF0ZV9icHMgPSBjYnJCeXRlcyoob3B1c19pbnQzMilmcmFtZV9yYXRlMyo4LzM7Ci0gICAgICAg
bWF4X2RhdGFfYnl0ZXMgPSBjYnJCeXRlczsKKyAgICAgICBjYnJCeXRlcyA9IElNSU4oICgxMipz
dC0+Yml0cmF0ZV9icHMvOCArIGZyYW1lX3JhdGUxMi8yKS9mcmFtZV9yYXRlMTIsIG1heF9kYXRh
X2J5dGVzKTsKKyAgICAgICBzdC0+Yml0cmF0ZV9icHMgPSBjYnJCeXRlcyoob3B1c19pbnQzMilm
cmFtZV9yYXRlMTIqOC8xMjsKKyAgICAgICAvKiBNYWtlIHN1cmUgd2UgcHJvdmlkZSBhdCBsZWFz
dCBvbmUgYnl0ZSB0byBhdm9pZCBmYWlsaW5nLiAqLworICAgICAgIG1heF9kYXRhX2J5dGVzID0g
SU1BWCgxLCBjYnJCeXRlcyk7CiAgICAgfQogICAgIGlmIChtYXhfZGF0YV9ieXRlczwzIHx8IHN0
LT5iaXRyYXRlX2JwcyA8IDMqZnJhbWVfcmF0ZSo4CiAgICAgICAgfHwgKGZyYW1lX3JhdGU8NTAg
JiYgKG1heF9kYXRhX2J5dGVzKmZyYW1lX3JhdGU8MzAwIHx8IHN0LT5iaXRyYXRlX2JwcyA8IDI0
MDApKSkKQEAgLTEwNjUsMjUgKzEyMjYsNjMgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRp
dmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAg
ICAgICAvKklmIHRoZSBzcGFjZSBpcyB0b28gbG93IHRvIGRvIHNvbWV0aGluZyB1c2VmdWwsIGVt
aXQgJ1BMQycgZnJhbWVzLiovCiAgICAgICAgaW50IHRvY21vZGUgPSBzdC0+bW9kZTsKICAgICAg
ICBpbnQgYncgPSBzdC0+YmFuZHdpZHRoID09IDAgPyBPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5E
IDogc3QtPmJhbmR3aWR0aDsKKyAgICAgICBpbnQgcGFja2V0X2NvZGUgPSAwOworICAgICAgIGlu
dCBudW1fbXVsdGlmcmFtZXMgPSAwOworCiAgICAgICAgaWYgKHRvY21vZGU9PTApCiAgICAgICAg
ICAgdG9jbW9kZSA9IE1PREVfU0lMS19PTkxZOwogICAgICAgIGlmIChmcmFtZV9yYXRlPjEwMCkK
ICAgICAgICAgICB0b2Ntb2RlID0gTU9ERV9DRUxUX09OTFk7Ci0gICAgICAgaWYgKGZyYW1lX3Jh
dGUgPCA1MCkKLSAgICAgICAgICB0b2Ntb2RlID0gTU9ERV9TSUxLX09OTFk7CisgICAgICAgLyog
NDAgbXMgLT4gMiB4IDIwIG1zIGlmIGluIENFTFRfT05MWSBvciBIWUJSSUQgbW9kZSAqLworICAg
ICAgIGlmIChmcmFtZV9yYXRlPT0yNSAmJiB0b2Ntb2RlIT1NT0RFX1NJTEtfT05MWSkKKyAgICAg
ICB7CisgICAgICAgICAgZnJhbWVfcmF0ZSA9IDUwOworICAgICAgICAgIHBhY2tldF9jb2RlID0g
MTsKKyAgICAgICB9CisKKyAgICAgICAvKiA+PSA2MCBtcyBmcmFtZXMgKi8KKyAgICAgICBpZiAo
ZnJhbWVfcmF0ZTw9MTYpCisgICAgICAgeworICAgICAgICAgIC8qIDEgeCA2MCBtcywgMiB4IDQw
IG1zLCAyIHggNjAgbXMgKi8KKyAgICAgICAgICBpZiAob3V0X2RhdGFfYnl0ZXM9PTEgfHwgKHRv
Y21vZGU9PU1PREVfU0lMS19PTkxZICYmIGZyYW1lX3JhdGUhPTEwKSkKKyAgICAgICAgICB7Cisg
ICAgICAgICAgICAgdG9jbW9kZSA9IE1PREVfU0lMS19PTkxZOworCisgICAgICAgICAgICAgcGFj
a2V0X2NvZGUgPSBmcmFtZV9yYXRlIDw9IDEyOworICAgICAgICAgICAgIGZyYW1lX3JhdGUgPSBm
cmFtZV9yYXRlID09IDEyID8gMjUgOiAxNjsKKyAgICAgICAgICB9CisgICAgICAgICAgZWxzZQor
ICAgICAgICAgIHsKKyAgICAgICAgICAgICBudW1fbXVsdGlmcmFtZXMgPSA1MC9mcmFtZV9yYXRl
OworICAgICAgICAgICAgIGZyYW1lX3JhdGUgPSA1MDsKKyAgICAgICAgICAgICBwYWNrZXRfY29k
ZSA9IDM7CisgICAgICAgICAgfQorICAgICAgIH0KKwogICAgICAgIGlmKHRvY21vZGU9PU1PREVf
U0lMS19PTkxZJiZidz5PUFVTX0JBTkRXSURUSF9XSURFQkFORCkKICAgICAgICAgICBidz1PUFVT
X0JBTkRXSURUSF9XSURFQkFORDsKICAgICAgICBlbHNlIGlmICh0b2Ntb2RlPT1NT0RFX0NFTFRf
T05MWSYmYnc9PU9QVVNfQkFORFdJRFRIX01FRElVTUJBTkQpCiAgICAgICAgICAgYnc9T1BVU19C
QU5EV0lEVEhfTkFSUk9XQkFORDsKICAgICAgICBlbHNlIGlmICh0b2Ntb2RlPT1NT0RFX0hZQlJJ
RCYmYnc8PU9QVVNfQkFORFdJRFRIX1NVUEVSV0lERUJBTkQpCiAgICAgICAgICAgYnc9T1BVU19C
QU5EV0lEVEhfU1VQRVJXSURFQkFORDsKKwogICAgICAgIGRhdGFbMF0gPSBnZW5fdG9jKHRvY21v
ZGUsIGZyYW1lX3JhdGUsIGJ3LCBzdC0+c3RyZWFtX2NoYW5uZWxzKTsKLSAgICAgICByZXQgPSAx
OworICAgICAgIGRhdGFbMF0gfD0gcGFja2V0X2NvZGU7CisKKyAgICAgICByZXQgPSBwYWNrZXRf
Y29kZSA8PSAxID8gMSA6IDI7CisKKyAgICAgICBtYXhfZGF0YV9ieXRlcyA9IElNQVgobWF4X2Rh
dGFfYnl0ZXMsIHJldCk7CisKKyAgICAgICBpZiAocGFja2V0X2NvZGU9PTMpCisgICAgICAgICAg
ZGF0YVsxXSA9IG51bV9tdWx0aWZyYW1lczsKKwogICAgICAgIGlmICghc3QtPnVzZV92YnIpCiAg
ICAgICAgewogICAgICAgICAgIHJldCA9IG9wdXNfcGFja2V0X3BhZChkYXRhLCByZXQsIG1heF9k
YXRhX2J5dGVzKTsKICAgICAgICAgICBpZiAocmV0ID09IE9QVVNfT0spCiAgICAgICAgICAgICAg
cmV0ID0gbWF4X2RhdGFfYnl0ZXM7CisgICAgICAgICAgZWxzZQorICAgICAgICAgICAgIHJldCA9
IE9QVVNfSU5URVJOQUxfRVJST1I7CiAgICAgICAgfQogICAgICAgIFJFU1RPUkVfU1RBQ0s7CiAg
ICAgICAgcmV0dXJuIHJldDsKQEAgLTEwOTEsNyArMTI5MCw4IEBAIG9wdXNfaW50MzIgb3B1c19l
bmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQg
ZnJhbWVfCiAgICAgbWF4X3JhdGUgPSBmcmFtZV9yYXRlKm1heF9kYXRhX2J5dGVzKjg7CiAKICAg
ICAvKiBFcXVpdmFsZW50IDIwLW1zIHJhdGUgZm9yIG1vZGUvY2hhbm5lbC9iYW5kd2lkdGggZGVj
aXNpb25zICovCi0gICAgZXF1aXZfcmF0ZSA9IHN0LT5iaXRyYXRlX2JwcyAtICg0MCpzdC0+Y2hh
bm5lbHMrMjApKihzdC0+RnMvZnJhbWVfc2l6ZSAtIDUwKTsKKyAgICBlcXVpdl9yYXRlID0gY29t
cHV0ZV9lcXVpdl9yYXRlKHN0LT5iaXRyYXRlX2Jwcywgc3QtPmNoYW5uZWxzLCBzdC0+RnMvZnJh
bWVfc2l6ZSwKKyAgICAgICAgICBzdC0+dXNlX3ZiciwgMCwgc3QtPnNpbGtfbW9kZS5jb21wbGV4
aXR5LCBzdC0+c2lsa19tb2RlLnBhY2tldExvc3NQZXJjZW50YWdlKTsKIAogICAgIGlmIChzdC0+
c2lnbmFsX3R5cGUgPT0gT1BVU19TSUdOQUxfVk9JQ0UpCiAgICAgICAgdm9pY2VfZXN0ID0gMTI3
OwpAQCAtMTEzMiw3ICsxMzMyLDkgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1
c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICB9
CiAjZW5kaWYKICAgICB9Ci0gICAgZXF1aXZfcmF0ZSA9IHN0LT5iaXRyYXRlX2JwcyAtICg0MCpz
dC0+c3RyZWFtX2NoYW5uZWxzKzIwKSooc3QtPkZzL2ZyYW1lX3NpemUgLSA1MCk7CisgICAgLyog
VXBkYXRlIGVxdWl2YWxlbnQgcmF0ZSBmb3IgY2hhbm5lbHMgZGVjaXNpb24uICovCisgICAgZXF1
aXZfcmF0ZSA9IGNvbXB1dGVfZXF1aXZfcmF0ZShzdC0+Yml0cmF0ZV9icHMsIHN0LT5zdHJlYW1f
Y2hhbm5lbHMsIHN0LT5Gcy9mcmFtZV9zaXplLAorICAgICAgICAgIHN0LT51c2VfdmJyLCAwLCBz
dC0+c2lsa19tb2RlLmNvbXBsZXhpdHksIHN0LT5zaWxrX21vZGUucGFja2V0TG9zc1BlcmNlbnRh
Z2UpOwogCiAgICAgLyogTW9kZSBzZWxlY3Rpb24gZGVwZW5kaW5nIG9uIGFwcGxpY2F0aW9uIGFu
ZCBzaWduYWwgdHlwZSAqLwogICAgIGlmIChzdC0+YXBwbGljYXRpb24gPT0gT1BVU19BUFBMSUNB
VElPTl9SRVNUUklDVEVEX0xPV0RFTEFZKQpAQCAtMTE4MSwxMCArMTM4MywyMSBAQCBvcHVzX2lu
dDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYg
KnBjbSwgaW50IGZyYW1lXwogICAgICAgIC8qIFdoZW4gRkVDIGlzIGVuYWJsZWQgYW5kIHRoZXJl
J3MgZW5vdWdoIHBhY2tldCBsb3NzLCB1c2UgU0lMSyAqLwogICAgICAgIGlmIChzdC0+c2lsa19t
b2RlLnVzZUluQmFuZEZFQyAmJiBzdC0+c2lsa19tb2RlLnBhY2tldExvc3NQZXJjZW50YWdlID4g
KDEyOC12b2ljZV9lc3QpPj40KQogICAgICAgICAgIHN0LT5tb2RlID0gTU9ERV9TSUxLX09OTFk7
Ci0gICAgICAgLyogV2hlbiBlbmNvZGluZyB2b2ljZSBhbmQgRFRYIGlzIGVuYWJsZWQsIHNldCB0
aGUgZW5jb2RlciB0byBTSUxLIG1vZGUgKGF0IGxlYXN0IGZvciBub3cpICovCisgICAgICAgLyog
V2hlbiBlbmNvZGluZyB2b2ljZSBhbmQgRFRYIGlzIGVuYWJsZWQgYnV0IHRoZSBnZW5lcmFsaXpl
ZCBEVFggY2Fubm90IGJlIHVzZWQsCisgICAgICAgICAgYmVjYXVzZSBvZiBjb21wbGV4aXR5IGFu
ZCBzYW1wbGluZyBmcmVxdWVuY3kgc2V0dGluZ3MsIHN3aXRjaCB0byBTSUxLIERUWCBhbmQKKyAg
ICAgICAgICBzZXQgdGhlIGVuY29kZXIgdG8gU0lMSyBtb2RlICovCisjaWZuZGVmIERJU0FCTEVf
RkxPQVRfQVBJCisgICAgICAgc3QtPnNpbGtfbW9kZS51c2VEVFggPSBzdC0+dXNlX2R0eCAmJiAh
KGFuYWx5c2lzX2luZm8udmFsaWQgfHwgaXNfc2lsZW5jZSk7CisjZWxzZQorICAgICAgIHN0LT5z
aWxrX21vZGUudXNlRFRYID0gc3QtPnVzZV9kdHg7CisjZW5kaWYKICAgICAgICBpZiAoc3QtPnNp
bGtfbW9kZS51c2VEVFggJiYgdm9pY2VfZXN0ID4gMTAwKQogICAgICAgICAgIHN0LT5tb2RlID0g
TU9ERV9TSUxLX09OTFk7CiAjZW5kaWYKKworICAgICAgIC8qIElmIG1heF9kYXRhX2J5dGVzIHJl
cHJlc2VudHMgbGVzcyB0aGFuIDYga2Ivcywgc3dpdGNoIHRvIENFTFQtb25seSBtb2RlICovCisg
ICAgICAgaWYgKG1heF9kYXRhX2J5dGVzIDwgKGZyYW1lX3JhdGUgPiA1MCA/IDkwMDAgOiA2MDAw
KSpmcmFtZV9zaXplIC8gKHN0LT5GcyAqIDgpKQorICAgICAgICAgIHN0LT5tb2RlID0gTU9ERV9D
RUxUX09OTFk7CiAgICAgfSBlbHNlIHsKICAgICAgICBzdC0+bW9kZSA9IHN0LT51c2VyX2ZvcmNl
ZF9tb2RlOwogICAgIH0KQEAgLTExOTQsMTkgKzE0MDcsNiBAQCBvcHVzX2ludDMyIG9wdXNfZW5j
b2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZy
YW1lXwogICAgICAgIHN0LT5tb2RlID0gTU9ERV9DRUxUX09OTFk7CiAgICAgaWYgKHN0LT5sZmUp
CiAgICAgICAgc3QtPm1vZGUgPSBNT0RFX0NFTFRfT05MWTsKLSAgICAvKiBJZiBtYXhfZGF0YV9i
eXRlcyByZXByZXNlbnRzIGxlc3MgdGhhbiA4IGtiL3MsIHN3aXRjaCB0byBDRUxULW9ubHkgbW9k
ZSAqLwotICAgIGlmIChtYXhfZGF0YV9ieXRlcyA8IChmcmFtZV9yYXRlID4gNTAgPyAxMjAwMCA6
IDgwMDApKmZyYW1lX3NpemUgLyAoc3QtPkZzICogOCkpCi0gICAgICAgc3QtPm1vZGUgPSBNT0RF
X0NFTFRfT05MWTsKLQotICAgIGlmIChzdC0+c3RyZWFtX2NoYW5uZWxzID09IDEgJiYgc3QtPnBy
ZXZfY2hhbm5lbHMgPT0yICYmIHN0LT5zaWxrX21vZGUudG9Nb25vPT0wCi0gICAgICAgICAgJiYg
c3QtPm1vZGUgIT0gTU9ERV9DRUxUX09OTFkgJiYgc3QtPnByZXZfbW9kZSAhPSBNT0RFX0NFTFRf
T05MWSkKLSAgICB7Ci0gICAgICAgLyogRGVsYXkgc3RlcmVvLT5tb25vIHRyYW5zaXRpb24gYnkg
dHdvIGZyYW1lcyBzbyB0aGF0IFNJTEsgY2FuIGRvIGEgc21vb3RoIGRvd25taXggKi8KLSAgICAg
ICBzdC0+c2lsa19tb2RlLnRvTW9ubyA9IDE7Ci0gICAgICAgc3QtPnN0cmVhbV9jaGFubmVscyA9
IDI7Ci0gICAgfSBlbHNlIHsKLSAgICAgICBzdC0+c2lsa19tb2RlLnRvTW9ubyA9IDA7Ci0gICAg
fQogCiAgICAgaWYgKHN0LT5wcmV2X21vZGUgPiAwICYmCiAgICAgICAgICgoc3QtPm1vZGUgIT0g
TU9ERV9DRUxUX09OTFkgJiYgc3QtPnByZXZfbW9kZSA9PSBNT0RFX0NFTFRfT05MWSkgfHwKQEAg
LTEyMjYsMjQgKzE0MjYsMjMgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0Vu
Y29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAgICAg
IH0KICAgICAgICAgfQogICAgIH0KLSAgICAvKiBGb3IgdGhlIGZpcnN0IGZyYW1lIGF0IGEgbmV3
IFNJTEsgYmFuZHdpZHRoICovCi0gICAgaWYgKHN0LT5zaWxrX2J3X3N3aXRjaCkKLSAgICB7Ci0g
ICAgICAgcmVkdW5kYW5jeSA9IDE7Ci0gICAgICAgY2VsdF90b19zaWxrID0gMTsKLSAgICAgICBz
dC0+c2lsa19id19zd2l0Y2ggPSAwOwotICAgICAgIHByZWZpbGw9MTsKLSAgICB9CiAKLSAgICBp
ZiAocmVkdW5kYW5jeSkKKyAgICAvKiBXaGVuIGVuY29kaW5nIG11bHRpZnJhbWVzLCB3ZSBjYW4g
YXNrIGZvciBhIHN3aXRjaCB0byBDRUxUIG9ubHkgaW4gdGhlIGxhc3QgZnJhbWUuIFRoaXMgc3dp
dGNoCisgICAgICogaXMgcHJvY2Vzc2VkIGFib3ZlIGFzIHRoZSByZXF1ZXN0ZWQgbW9kZSBzaG91
bGRuJ3QgaW50ZXJydXB0IHN0ZXJlby0+bW9ubyB0cmFuc2l0aW9uLiAqLworICAgIGlmIChzdC0+
c3RyZWFtX2NoYW5uZWxzID09IDEgJiYgc3QtPnByZXZfY2hhbm5lbHMgPT0yICYmIHN0LT5zaWxr
X21vZGUudG9Nb25vPT0wCisgICAgICAgICAgJiYgc3QtPm1vZGUgIT0gTU9ERV9DRUxUX09OTFkg
JiYgc3QtPnByZXZfbW9kZSAhPSBNT0RFX0NFTFRfT05MWSkKICAgICB7Ci0gICAgICAgLyogRmFp
ciBzaGFyZSBvZiB0aGUgbWF4IHNpemUgYWxsb3dlZCAqLwotICAgICAgIHJlZHVuZGFuY3lfYnl0
ZXMgPSBJTUlOKDI1NywgbWF4X2RhdGFfYnl0ZXMqKG9wdXNfaW50MzIpKHN0LT5Gcy8yMDApLyhm
cmFtZV9zaXplK3N0LT5Gcy8yMDApKTsKLSAgICAgICAvKiBGb3IgVkJSLCB0YXJnZXQgdGhlIGFj
dHVhbCBiaXRyYXRlIChzdWJqZWN0IHRvIHRoZSBsaW1pdCBhYm92ZSkgKi8KLSAgICAgICBpZiAo
c3QtPnVzZV92YnIpCi0gICAgICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9IElNSU4ocmVkdW5kYW5j
eV9ieXRlcywgc3QtPmJpdHJhdGVfYnBzLzE2MDApOworICAgICAgIC8qIERlbGF5IHN0ZXJlby0+
bW9ubyB0cmFuc2l0aW9uIGJ5IHR3byBmcmFtZXMgc28gdGhhdCBTSUxLIGNhbiBkbyBhIHNtb290
aCBkb3dubWl4ICovCisgICAgICAgc3QtPnNpbGtfbW9kZS50b01vbm8gPSAxOworICAgICAgIHN0
LT5zdHJlYW1fY2hhbm5lbHMgPSAyOworICAgIH0gZWxzZSB7CisgICAgICAgc3QtPnNpbGtfbW9k
ZS50b01vbm8gPSAwOwogICAgIH0KIAorICAgIC8qIFVwZGF0ZSBlcXVpdmFsZW50IHJhdGUgd2l0
aCBtb2RlIGRlY2lzaW9uLiAqLworICAgIGVxdWl2X3JhdGUgPSBjb21wdXRlX2VxdWl2X3JhdGUo
c3QtPmJpdHJhdGVfYnBzLCBzdC0+c3RyZWFtX2NoYW5uZWxzLCBzdC0+RnMvZnJhbWVfc2l6ZSwK
KyAgICAgICAgICBzdC0+dXNlX3Ziciwgc3QtPm1vZGUsIHN0LT5zaWxrX21vZGUuY29tcGxleGl0
eSwgc3QtPnNpbGtfbW9kZS5wYWNrZXRMb3NzUGVyY2VudGFnZSk7CisKICAgICBpZiAoc3QtPm1v
ZGUgIT0gTU9ERV9DRUxUX09OTFkgJiYgc3QtPnByZXZfbW9kZSA9PSBNT0RFX0NFTFRfT05MWSkK
ICAgICB7CiAgICAgICAgIHNpbGtfRW5jQ29udHJvbFN0cnVjdCBkdW1teTsKQEAgLTEyNTcsMTcg
KzE0NTYsNyBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3Qs
IGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAgICBjb25zdCBvcHVzX2lu
dDMyICp2b2ljZV9iYW5kd2lkdGhfdGhyZXNob2xkcywgKm11c2ljX2JhbmR3aWR0aF90aHJlc2hv
bGRzOwogICAgICAgICBvcHVzX2ludDMyIGJhbmR3aWR0aF90aHJlc2hvbGRzWzhdOwogICAgICAg
ICBpbnQgYmFuZHdpZHRoID0gT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQ7Ci0gICAgICAgIG9wdXNf
aW50MzIgZXF1aXZfcmF0ZTI7CiAKLSAgICAgICAgZXF1aXZfcmF0ZTIgPSBlcXVpdl9yYXRlOwot
ICAgICAgICBpZiAoc3QtPm1vZGUgIT0gTU9ERV9DRUxUX09OTFkpCi0gICAgICAgIHsKLSAgICAg
ICAgICAgLyogQWRqdXN0IHRoZSB0aHJlc2hvbGQgKy8tIDEwJSBkZXBlbmRpbmcgb24gY29tcGxl
eGl0eSAqLwotICAgICAgICAgICBlcXVpdl9yYXRlMiA9IGVxdWl2X3JhdGUyICogKDQ1K3N0LT5z
aWxrX21vZGUuY29tcGxleGl0eSkvNTA7Ci0gICAgICAgICAgIC8qIENCUiBpcyBsZXNzIGVmZmlj
aWVudCBieSB+MSBrYi9zICovCi0gICAgICAgICAgIGlmICghc3QtPnVzZV92YnIpCi0gICAgICAg
ICAgICAgIGVxdWl2X3JhdGUyIC09IDEwMDA7Ci0gICAgICAgIH0KICAgICAgICAgaWYgKHN0LT5j
aGFubmVscz09MiAmJiBzdC0+Zm9yY2VfY2hhbm5lbHMhPTEpCiAgICAgICAgIHsKICAgICAgICAg
ICAgdm9pY2VfYmFuZHdpZHRoX3RocmVzaG9sZHMgPSBzdGVyZW9fdm9pY2VfYmFuZHdpZHRoX3Ro
cmVzaG9sZHM7CkBAIC0xMjg4LDE1ICsxNDc3LDE1IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVf
bmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVf
CiAgICAgICAgICAgICBoeXN0ZXJlc2lzID0gYmFuZHdpZHRoX3RocmVzaG9sZHNbMiooYmFuZHdp
ZHRoLU9QVVNfQkFORFdJRFRIX01FRElVTUJBTkQpKzFdOwogICAgICAgICAgICAgaWYgKCFzdC0+
Zmlyc3QpCiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgaWYgKHN0LT5iYW5kd2lkdGgg
Pj0gYmFuZHdpZHRoKQorICAgICAgICAgICAgICAgIGlmIChzdC0+YXV0b19iYW5kd2lkdGggPj0g
YmFuZHdpZHRoKQogICAgICAgICAgICAgICAgICAgICB0aHJlc2hvbGQgLT0gaHlzdGVyZXNpczsK
ICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgIHRocmVzaG9sZCArPSBo
eXN0ZXJlc2lzOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKGVxdWl2X3JhdGUyID49
IHRocmVzaG9sZCkKKyAgICAgICAgICAgIGlmIChlcXVpdl9yYXRlID49IHRocmVzaG9sZCkKICAg
ICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfSB3aGlsZSAoLS1iYW5kd2lkdGg+T1BVU19C
QU5EV0lEVEhfTkFSUk9XQkFORCk7Ci0gICAgICAgIHN0LT5iYW5kd2lkdGggPSBiYW5kd2lkdGg7
CisgICAgICAgIHN0LT5iYW5kd2lkdGggPSBzdC0+YXV0b19iYW5kd2lkdGggPSBiYW5kd2lkdGg7
CiAgICAgICAgIC8qIFByZXZlbnRzIGFueSB0cmFuc2l0aW9uIHRvIFNXQi9GQiB1bnRpbCB0aGUg
U0lMSyBsYXllciBoYXMgZnVsbHkKICAgICAgICAgICAgc3dpdGNoZWQgdG8gV0IgbW9kZSBhbmQg
dHVybmVkIHRoZSB2YXJpYWJsZSBMUCBmaWx0ZXIgb2ZmICovCiAgICAgICAgIGlmICghc3QtPmZp
cnN0ICYmIHN0LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZICYmICFzdC0+c2lsa19tb2RlLmluV0Jt
b2RlV2l0aG91dFZhcmlhYmxlTFAgJiYgc3QtPmJhbmR3aWR0aCA+IE9QVVNfQkFORFdJRFRIX1dJ
REVCQU5EKQpAQCAtMTM0OSw2ICsxNTM4LDggQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRp
dmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAg
ICAgICBzdC0+YmFuZHdpZHRoID0gSU1JTihzdC0+YmFuZHdpZHRoLCBzdC0+ZGV0ZWN0ZWRfYmFu
ZHdpZHRoKTsKICAgICB9CiAjZW5kaWYKKyAgICBzdC0+c2lsa19tb2RlLkxCUlJfY29kZWQgPSBk
ZWNpZGVfZmVjKHN0LT5zaWxrX21vZGUudXNlSW5CYW5kRkVDLCBzdC0+c2lsa19tb2RlLnBhY2tl
dExvc3NQZXJjZW50YWdlLAorICAgICAgICAgIHN0LT5zaWxrX21vZGUuTEJSUl9jb2RlZCwgc3Qt
Pm1vZGUsICZzdC0+YmFuZHdpZHRoLCBlcXVpdl9yYXRlKTsKICAgICBjZWx0X2VuY29kZXJfY3Rs
KGNlbHRfZW5jLCBPUFVTX1NFVF9MU0JfREVQVEgobHNiX2RlcHRoKSk7CiAKICAgICAvKiBDRUxU
IG1vZGUgZG9lc24ndCBzdXBwb3J0IG1lZGl1bWJhbmQsIHVzZSB3aWRlYmFuZCBpbnN0ZWFkICov
CkBAIC0xMzU3LDE1ICsxNTQ4LDM0IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9w
dXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgaWYg
KHN0LT5sZmUpCiAgICAgICAgc3QtPmJhbmR3aWR0aCA9IE9QVVNfQkFORFdJRFRIX05BUlJPV0JB
TkQ7CiAKLSAgICAvKiBDYW4ndCBzdXBwb3J0IGhpZ2hlciB0aGFuIHdpZGViYW5kIGZvciA+MjAg
bXMgZnJhbWVzICovCi0gICAgaWYgKGZyYW1lX3NpemUgPiBzdC0+RnMvNTAgJiYgKHN0LT5tb2Rl
ID09IE1PREVfQ0VMVF9PTkxZIHx8IHN0LT5iYW5kd2lkdGggPiBPUFVTX0JBTkRXSURUSF9XSURF
QkFORCkpCisgICAgY3Vycl9iYW5kd2lkdGggPSBzdC0+YmFuZHdpZHRoOworCisgICAgLyogQ2hv
b3NlcyB0aGUgYXBwcm9wcmlhdGUgbW9kZSBmb3Igc3BlZWNoCisgICAgICAgKk5FVkVSKiBzd2l0
Y2ggdG8vZnJvbSBDRUxULW9ubHkgbW9kZSBoZXJlIGFzIHRoaXMgd2lsbCBpbnZhbGlkYXRlIHNv
bWUgYXNzdW1wdGlvbnMgKi8KKyAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9TSUxLX09OTFkgJiYg
Y3Vycl9iYW5kd2lkdGggPiBPUFVTX0JBTkRXSURUSF9XSURFQkFORCkKKyAgICAgICAgc3QtPm1v
ZGUgPSBNT0RFX0hZQlJJRDsKKyAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQgJiYgY3Vy
cl9iYW5kd2lkdGggPD0gT1BVU19CQU5EV0lEVEhfV0lERUJBTkQpCisgICAgICAgIHN0LT5tb2Rl
ID0gTU9ERV9TSUxLX09OTFk7CisKKyAgICAvKiBDYW4ndCBzdXBwb3J0IGhpZ2hlciB0aGFuID42
MCBtcyBmcmFtZXMsIGFuZCA+MjAgbXMgd2hlbiBpbiBIeWJyaWQgb3IgQ0VMVC1vbmx5IG1vZGVz
ICovCisgICAgaWYgKChmcmFtZV9zaXplID4gc3QtPkZzLzUwICYmIChzdC0+bW9kZSAhPSBNT0RF
X1NJTEtfT05MWSkpIHx8IGZyYW1lX3NpemUgPiAzKnN0LT5Gcy81MCkKICAgICB7Ci0gICAgICAg
VkFSREVDTCh1bnNpZ25lZCBjaGFyLCB0bXBfZGF0YSk7CisgICAgICAgaW50IGVuY19mcmFtZV9z
aXplOwogICAgICAgIGludCBuYl9mcmFtZXM7Ci0gICAgICAgaW50IGJha19tb2RlLCBiYWtfYmFu
ZHdpZHRoLCBiYWtfY2hhbm5lbHMsIGJha190b19tb25vOwotICAgICAgIFZBUkRFQ0woT3B1c1Jl
cGFja2V0aXplciwgcnApOwotICAgICAgIG9wdXNfaW50MzIgYnl0ZXNfcGVyX2ZyYW1lOwotICAg
ICAgIG9wdXNfaW50MzIgcmVwYWNrZXRpemVfbGVuOworCisgICAgICAgaWYgKHN0LT5tb2RlID09
IE1PREVfU0lMS19PTkxZKQorICAgICAgIHsKKyAgICAgICAgIGlmIChmcmFtZV9zaXplID09IDIq
c3QtPkZzLzI1KSAgLyogODAgbXMgLT4gMnggNDAgbXMgKi8KKyAgICAgICAgICAgZW5jX2ZyYW1l
X3NpemUgPSBzdC0+RnMvMjU7CisgICAgICAgICBlbHNlIGlmIChmcmFtZV9zaXplID09IDMqc3Qt
PkZzLzI1KSAgLyogMTIwIG1zIC0+IDJ4IDYwIG1zICovCisgICAgICAgICAgIGVuY19mcmFtZV9z
aXplID0gMypzdC0+RnMvNTA7CisgICAgICAgICBlbHNlICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIDEwMCBtcyAtPiA1eCAyMCBtcyAqLworICAgICAgICAgICBlbmNfZnJhbWVfc2l6ZSA9
IHN0LT5Gcy81MDsKKyAgICAgICB9CisgICAgICAgZWxzZQorICAgICAgICAgZW5jX2ZyYW1lX3Np
emUgPSBzdC0+RnMvNTA7CisKKyAgICAgICBuYl9mcmFtZXMgPSBmcmFtZV9zaXplL2VuY19mcmFt
ZV9zaXplOwogCiAjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCiAgICAgICAgaWYgKGFuYWx5c2lz
X3JlYWRfcG9zX2JhayE9IC0xKQpAQCAtMTM3NSw3NCArMTU4NSwzMyBAQCBvcHVzX2ludDMyIG9w
dXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwg
aW50IGZyYW1lXwogICAgICAgIH0KICNlbmRpZgogCi0gICAgICAgbmJfZnJhbWVzID0gZnJhbWVf
c2l6ZSA+IHN0LT5Gcy8yNSA/IDMgOiAyOwotICAgICAgIGJ5dGVzX3Blcl9mcmFtZSA9IElNSU4o
MTI3Niwob3V0X2RhdGFfYnl0ZXMtMykvbmJfZnJhbWVzKTsKLQotICAgICAgIEFMTE9DKHRtcF9k
YXRhLCBuYl9mcmFtZXMqYnl0ZXNfcGVyX2ZyYW1lLCB1bnNpZ25lZCBjaGFyKTsKLQotICAgICAg
IEFMTE9DKHJwLCAxLCBPcHVzUmVwYWNrZXRpemVyKTsKLSAgICAgICBvcHVzX3JlcGFja2V0aXpl
cl9pbml0KHJwKTsKLQotICAgICAgIGJha19tb2RlID0gc3QtPnVzZXJfZm9yY2VkX21vZGU7Ci0g
ICAgICAgYmFrX2JhbmR3aWR0aCA9IHN0LT51c2VyX2JhbmR3aWR0aDsKLSAgICAgICBiYWtfY2hh
bm5lbHMgPSBzdC0+Zm9yY2VfY2hhbm5lbHM7CisgICAgICAgcmV0ID0gZW5jb2RlX211bHRpZnJh
bWVfcGFja2V0KHN0LCBwY20sIG5iX2ZyYW1lcywgZW5jX2ZyYW1lX3NpemUsIGRhdGEsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dF9kYXRhX2J5dGVzLCB0b19jZWx0
LCBsc2JfZGVwdGgsIGZsb2F0X2FwaSk7CiAKLSAgICAgICBzdC0+dXNlcl9mb3JjZWRfbW9kZSA9
IHN0LT5tb2RlOwotICAgICAgIHN0LT51c2VyX2JhbmR3aWR0aCA9IHN0LT5iYW5kd2lkdGg7Ci0g
ICAgICAgc3QtPmZvcmNlX2NoYW5uZWxzID0gc3QtPnN0cmVhbV9jaGFubmVsczsKLSAgICAgICBi
YWtfdG9fbW9ubyA9IHN0LT5zaWxrX21vZGUudG9Nb25vOwotCi0gICAgICAgaWYgKGJha190b19t
b25vKQotICAgICAgICAgIHN0LT5mb3JjZV9jaGFubmVscyA9IDE7Ci0gICAgICAgZWxzZQotICAg
ICAgICAgIHN0LT5wcmV2X2NoYW5uZWxzID0gc3QtPnN0cmVhbV9jaGFubmVsczsKLSAgICAgICBm
b3IgKGk9MDtpPG5iX2ZyYW1lcztpKyspCi0gICAgICAgewotICAgICAgICAgIGludCB0bXBfbGVu
OwotICAgICAgICAgIHN0LT5zaWxrX21vZGUudG9Nb25vID0gMDsKLSAgICAgICAgICAvKiBXaGVu
IHN3aXRjaGluZyBmcm9tIFNJTEsvSHlicmlkIHRvIENFTFQsIG9ubHkgYXNrIGZvciBhIHN3aXRj
aCBhdCB0aGUgbGFzdCBmcmFtZSAqLwotICAgICAgICAgIGlmICh0b19jZWx0ICYmIGk9PW5iX2Zy
YW1lcy0xKQotICAgICAgICAgICAgIHN0LT51c2VyX2ZvcmNlZF9tb2RlID0gTU9ERV9DRUxUX09O
TFk7Ci0gICAgICAgICAgdG1wX2xlbiA9IG9wdXNfZW5jb2RlX25hdGl2ZShzdCwgcGNtK2kqKHN0
LT5jaGFubmVscypzdC0+RnMvNTApLCBzdC0+RnMvNTAsCi0gICAgICAgICAgICAgICAgdG1wX2Rh
dGEraSpieXRlc19wZXJfZnJhbWUsIGJ5dGVzX3Blcl9mcmFtZSwgbHNiX2RlcHRoLAotICAgICAg
ICAgICAgICAgIE5VTEwsIDAsIGMxLCBjMiwgYW5hbHlzaXNfY2hhbm5lbHMsIGRvd25taXgsIGZs
b2F0X2FwaSk7Ci0gICAgICAgICAgaWYgKHRtcF9sZW48MCkKLSAgICAgICAgICB7Ci0gICAgICAg
ICAgICAgUkVTVE9SRV9TVEFDSzsKLSAgICAgICAgICAgICByZXR1cm4gT1BVU19JTlRFUk5BTF9F
UlJPUjsKLSAgICAgICAgICB9Ci0gICAgICAgICAgcmV0ID0gb3B1c19yZXBhY2tldGl6ZXJfY2F0
KHJwLCB0bXBfZGF0YStpKmJ5dGVzX3Blcl9mcmFtZSwgdG1wX2xlbik7Ci0gICAgICAgICAgaWYg
KHJldDwwKQotICAgICAgICAgIHsKLSAgICAgICAgICAgICBSRVNUT1JFX1NUQUNLOwotICAgICAg
ICAgICAgIHJldHVybiBPUFVTX0lOVEVSTkFMX0VSUk9SOwotICAgICAgICAgIH0KLSAgICAgICB9
Ci0gICAgICAgaWYgKHN0LT51c2VfdmJyKQotICAgICAgICAgIHJlcGFja2V0aXplX2xlbiA9IG91
dF9kYXRhX2J5dGVzOwotICAgICAgIGVsc2UKLSAgICAgICAgICByZXBhY2tldGl6ZV9sZW4gPSBJ
TUlOKDMqc3QtPmJpdHJhdGVfYnBzLygzKjgqNTAvbmJfZnJhbWVzKSwgb3V0X2RhdGFfYnl0ZXMp
OwotICAgICAgIHJldCA9IG9wdXNfcmVwYWNrZXRpemVyX291dF9yYW5nZV9pbXBsKHJwLCAwLCBu
Yl9mcmFtZXMsIGRhdGEsIHJlcGFja2V0aXplX2xlbiwgMCwgIXN0LT51c2VfdmJyKTsKLSAgICAg
ICBpZiAocmV0PDApCi0gICAgICAgewotICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7Ci0gICAgICAg
ICAgcmV0dXJuIE9QVVNfSU5URVJOQUxfRVJST1I7Ci0gICAgICAgfQotICAgICAgIHN0LT51c2Vy
X2ZvcmNlZF9tb2RlID0gYmFrX21vZGU7Ci0gICAgICAgc3QtPnVzZXJfYmFuZHdpZHRoID0gYmFr
X2JhbmR3aWR0aDsKLSAgICAgICBzdC0+Zm9yY2VfY2hhbm5lbHMgPSBiYWtfY2hhbm5lbHM7Ci0g
ICAgICAgc3QtPnNpbGtfbW9kZS50b01vbm8gPSBiYWtfdG9fbW9ubzsKICAgICAgICBSRVNUT1JF
X1NUQUNLOwogICAgICAgIHJldHVybiByZXQ7CiAgICAgfQotICAgIGN1cnJfYmFuZHdpZHRoID0g
c3QtPmJhbmR3aWR0aDsKIAotICAgIC8qIENob29zZXMgdGhlIGFwcHJvcHJpYXRlIG1vZGUgZm9y
IHNwZWVjaAotICAgICAgICpORVZFUiogc3dpdGNoIHRvL2Zyb20gQ0VMVC1vbmx5IG1vZGUgaGVy
ZSBhcyB0aGlzIHdpbGwgaW52YWxpZGF0ZSBzb21lIGFzc3VtcHRpb25zICovCi0gICAgaWYgKHN0
LT5tb2RlID09IE1PREVfU0lMS19PTkxZICYmIGN1cnJfYmFuZHdpZHRoID4gT1BVU19CQU5EV0lE
VEhfV0lERUJBTkQpCi0gICAgICAgIHN0LT5tb2RlID0gTU9ERV9IWUJSSUQ7Ci0gICAgaWYgKHN0
LT5tb2RlID09IE1PREVfSFlCUklEICYmIGN1cnJfYmFuZHdpZHRoIDw9IE9QVVNfQkFORFdJRFRI
X1dJREVCQU5EKQotICAgICAgICBzdC0+bW9kZSA9IE1PREVfU0lMS19PTkxZOworICAgIC8qIEZv
ciB0aGUgZmlyc3QgZnJhbWUgYXQgYSBuZXcgU0lMSyBiYW5kd2lkdGggKi8KKyAgICBpZiAoc3Qt
PnNpbGtfYndfc3dpdGNoKQorICAgIHsKKyAgICAgICByZWR1bmRhbmN5ID0gMTsKKyAgICAgICBj
ZWx0X3RvX3NpbGsgPSAxOworICAgICAgIHN0LT5zaWxrX2J3X3N3aXRjaCA9IDA7CisgICAgICAg
cHJlZmlsbD0xOworICAgIH0KKworICAgIC8qIElmIHdlIGRlY2lkZWQgdG8gZ28gd2l0aCBDRUxU
LCBtYWtlIHN1cmUgcmVkdW5kYW5jeSBpcyBvZmYsIG5vIG1hdHRlciB3aGF0CisgICAgICAgd2Ug
ZGVjaWRlZCBlYXJsaWVyLiAqLworICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX0NFTFRfT05MWSkK
KyAgICAgICAgcmVkdW5kYW5jeSA9IDA7CisKKyAgICBpZiAocmVkdW5kYW5jeSkKKyAgICB7Cisg
ICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9IGNvbXB1dGVfcmVkdW5kYW5jeV9ieXRlcyhtYXhfZGF0
YV9ieXRlcywgc3QtPmJpdHJhdGVfYnBzLCBmcmFtZV9yYXRlLCBzdC0+c3RyZWFtX2NoYW5uZWxz
KTsKKyAgICAgICBpZiAocmVkdW5kYW5jeV9ieXRlcyA9PSAwKQorICAgICAgICAgIHJlZHVuZGFu
Y3kgPSAwOworICAgIH0KIAogICAgIC8qIHByaW50ZigiJWQgJWQgJWQgJWRcbiIsIHN0LT5iaXRy
YXRlX2Jwcywgc3QtPnN0cmVhbV9jaGFubmVscywgc3QtPm1vZGUsIGN1cnJfYmFuZHdpZHRoKTsg
Ki8KICAgICBieXRlc190YXJnZXQgPSBJTUlOKG1heF9kYXRhX2J5dGVzLXJlZHVuZGFuY3lfYnl0
ZXMsIHN0LT5iaXRyYXRlX2JwcyAqIGZyYW1lX3NpemUgLyAoc3QtPkZzICogOCkpIC0gMTsKQEAg
LTE0NjcsNyArMTYzNiw3IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNv
ZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAKICAgICBpZiAoc3Qt
PmFwcGxpY2F0aW9uID09IE9QVVNfQVBQTElDQVRJT05fVk9JUCkKICAgICB7Ci0gICAgICAgaHBf
Y3V0b2ZmKHBjbSwgY3V0b2ZmX0h6LCAmcGNtX2J1Zlt0b3RhbF9idWZmZXIqc3QtPmNoYW5uZWxz
XSwgc3QtPmhwX21lbSwgZnJhbWVfc2l6ZSwgc3QtPmNoYW5uZWxzLCBzdC0+RnMpOworICAgICAg
IGhwX2N1dG9mZihwY20sIGN1dG9mZl9IeiwgJnBjbV9idWZbdG90YWxfYnVmZmVyKnN0LT5jaGFu
bmVsc10sIHN0LT5ocF9tZW0sIGZyYW1lX3NpemUsIHN0LT5jaGFubmVscywgc3QtPkZzLCBzdC0+
YXJjaCk7CiAgICAgfSBlbHNlIHsKICAgICAgICBkY19yZWplY3QocGNtLCAzLCAmcGNtX2J1Zlt0
b3RhbF9idWZmZXIqc3QtPmNoYW5uZWxzXSwgc3QtPmhwX21lbSwgZnJhbWVfc2l6ZSwgc3QtPmNo
YW5uZWxzLCBzdC0+RnMpOwogICAgIH0KQEAgLTE0OTIsNiArMTY2MSw3IEBAIG9wdXNfaW50MzIg
b3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNt
LCBpbnQgZnJhbWVfCiAgICAgaWYgKHN0LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZKQogICAgIHsK
ICAgICAgICAgb3B1c19pbnQzMiB0b3RhbF9iaXRSYXRlLCBjZWx0X3JhdGU7CisgICAgICAgIG9w
dXNfaW50IGFjdGl2aXR5OwogI2lmZGVmIEZJWEVEX1BPSU5UCiAgICAgICAgY29uc3Qgb3B1c19p
bnQxNiAqcGNtX3NpbGs7CiAjZWxzZQpAQCAtMTQ5OSwzMCArMTY2OSwzMSBAQCBvcHVzX2ludDMy
IG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBj
bSwgaW50IGZyYW1lXwogICAgICAgIEFMTE9DKHBjbV9zaWxrLCBzdC0+Y2hhbm5lbHMqZnJhbWVf
c2l6ZSwgb3B1c19pbnQxNik7CiAjZW5kaWYKIAorICAgICAgICBhY3Rpdml0eSA9IFZBRF9OT19E
RUNJU0lPTjsKKyNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKKyAgICAgICAgaWYoIGFuYWx5c2lz
X2luZm8udmFsaWQgKSB7CisgICAgICAgICAgICAvKiBJbmZvcm0gU0lMSyBhYm91dCB0aGUgT3B1
cyBWQUQgZGVjaXNpb24gKi8KKyAgICAgICAgICAgIGFjdGl2aXR5ID0gKCBhbmFseXNpc19pbmZv
LmFjdGl2aXR5X3Byb2JhYmlsaXR5ID49IERUWF9BQ1RJVklUWV9USFJFU0hPTEQgKTsKKyAgICAg
ICAgfQorI2VuZGlmCisKICAgICAgICAgLyogRGlzdHJpYnV0ZSBiaXRzIGJldHdlZW4gU0lMSyBh
bmQgQ0VMVCAqLwogICAgICAgICB0b3RhbF9iaXRSYXRlID0gOCAqIGJ5dGVzX3RhcmdldCAqIGZy
YW1lX3JhdGU7CiAgICAgICAgIGlmKCBzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCApIHsKLSAgICAg
ICAgICAgIGludCBIQl9nYWluX3JlZjsKICAgICAgICAgICAgIC8qIEJhc2UgcmF0ZSBmb3IgU0lM
SyAqLwotICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5iaXRSYXRlID0gc3QtPnN0cmVhbV9jaGFu
bmVscyAqICggNTAwMCArIDEwMDAgKiAoIHN0LT5GcyA9PSAxMDAgKiBmcmFtZV9zaXplICkgKTsK
LSAgICAgICAgICAgIGlmKCBjdXJyX2JhbmR3aWR0aCA9PSBPUFVTX0JBTkRXSURUSF9TVVBFUldJ
REVCQU5EICkgewotICAgICAgICAgICAgICAgIC8qIFNJTEsgZ2V0cyAyLzMgb2YgdGhlIHJlbWFp
bmluZyBiaXRzICovCi0gICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5iaXRSYXRlICs9ICgg
dG90YWxfYml0UmF0ZSAtIHN0LT5zaWxrX21vZGUuYml0UmF0ZSApICogMiAvIDM7Ci0gICAgICAg
ICAgICB9IGVsc2UgeyAvKiBGVUxMQkFORCAqLwotICAgICAgICAgICAgICAgIC8qIFNJTEsgZ2V0
cyAzLzUgb2YgdGhlIHJlbWFpbmluZyBiaXRzICovCi0gICAgICAgICAgICAgICAgc3QtPnNpbGtf
bW9kZS5iaXRSYXRlICs9ICggdG90YWxfYml0UmF0ZSAtIHN0LT5zaWxrX21vZGUuYml0UmF0ZSAp
ICogMyAvIDU7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAvKiBEb24ndCBsZXQgU0lMSyB1
c2UgbW9yZSB0aGFuIDgwJSAqLwotICAgICAgICAgICAgaWYoIHN0LT5zaWxrX21vZGUuYml0UmF0
ZSA+IHRvdGFsX2JpdFJhdGUgKiA0LzUgKSB7Ci0gICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9k
ZS5iaXRSYXRlID0gdG90YWxfYml0UmF0ZSAqIDQvNTsKLSAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIHN0LT5zaWxrX21vZGUuYml0UmF0ZSA9IGNvbXB1dGVfc2lsa19yYXRlX2Zvcl9oeWJyaWQo
dG90YWxfYml0UmF0ZSwKKyAgICAgICAgICAgICAgICAgIGN1cnJfYmFuZHdpZHRoLCBzdC0+RnMg
PT0gNTAgKiBmcmFtZV9zaXplLCBzdC0+dXNlX3Ziciwgc3QtPnNpbGtfbW9kZS5MQlJSX2NvZGVk
KTsKICAgICAgICAgICAgIGlmICghc3QtPmVuZXJneV9tYXNraW5nKQogICAgICAgICAgICAgewog
ICAgICAgICAgICAgICAgLyogSW5jcmVhc2luZ2x5IGF0dGVudWF0ZSBoaWdoIGJhbmQgd2hlbiBp
dCBnZXRzIGFsbG9jYXRlZCBmZXdlciBiaXRzICovCiAgICAgICAgICAgICAgICBjZWx0X3JhdGUg
PSB0b3RhbF9iaXRSYXRlIC0gc3QtPnNpbGtfbW9kZS5iaXRSYXRlOwotICAgICAgICAgICAgICAg
SEJfZ2Fpbl9yZWYgPSAoY3Vycl9iYW5kd2lkdGggPT0gT1BVU19CQU5EV0lEVEhfU1VQRVJXSURF
QkFORCkgPyAzMDAwIDogMzYwMDsKLSAgICAgICAgICAgICAgIEhCX2dhaW4gPSBTSEwzMigob3B1
c192YWwzMiljZWx0X3JhdGUsIDkpIC8gU0hSMzIoKG9wdXNfdmFsMzIpY2VsdF9yYXRlICsgc3Qt
PnN0cmVhbV9jaGFubmVscyAqIEhCX2dhaW5fcmVmLCA2KTsKLSAgICAgICAgICAgICAgIEhCX2dh
aW4gPSBIQl9nYWluIDwgKG9wdXNfdmFsMzIpUTE1T05FKjYvNyA/IEhCX2dhaW4gKyBRMTVPTkUv
NyA6IFExNU9ORTsKKyAgICAgICAgICAgICAgIEhCX2dhaW4gPSBRMTVPTkUgLSBTSFIzMihjZWx0
X2V4cDIoLWNlbHRfcmF0ZSAqIFFDT05TVDE2KDEuZi8xMDI0LCAxMCkpLCAxKTsKKyNpZm5kZWYg
RklYRURfUE9JTlQKKyAgICAgICAgICAgICAgIC8qIFNhbml0eSBjaGVjayBvZiBoaWdoIGJhbmQg
Z2FpbiAqLworICAgICAgICAgICAgICAgaWYgKGNlbHRfaXNuYW4oSEJfZ2FpbikpIHsKKyAgICAg
ICAgICAgICAgICAgICBIQl9nYWluID0gUTE1T05FOworICAgICAgICAgICAgICAgfQorI2VuZGlm
CiAgICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvKiBTSUxLIGdl
dHMgYWxsIGJpdHMgKi8KQEAgLTE1NjksNyArMTc0MCw2IEBAIG9wdXNfaW50MzIgb3B1c19lbmNv
ZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJh
bWVfCiAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUuYml0UmF0ZSArPSAzKnJhdGVfb2Zmc2V0
LzU7CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5iaXRSYXRl
ICs9IHJhdGVfb2Zmc2V0OwotICAgICAgICAgICBieXRlc190YXJnZXQgKz0gcmF0ZV9vZmZzZXQg
KiBmcmFtZV9zaXplIC8gKDggKiBzdC0+RnMpOwogICAgICAgICB9CiAKICAgICAgICAgc3QtPnNp
bGtfbW9kZS5wYXlsb2FkU2l6ZV9tcyA9IDEwMDAgKiBmcmFtZV9zaXplIC8gc3QtPkZzOwpAQCAt
MTU5MCw0MCArMTc2MCw1MiBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5j
b2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAgICAgICAg
c3QtPnNpbGtfbW9kZS5taW5JbnRlcm5hbFNhbXBsZVJhdGUgPSA4MDAwOwogICAgICAgICB9CiAK
KyAgICAgICAgc3QtPnNpbGtfbW9kZS5tYXhJbnRlcm5hbFNhbXBsZVJhdGUgPSAxNjAwMDsKICAg
ICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfU0lMS19PTkxZKQogICAgICAgICB7CiAgICAgICAg
ICAgIG9wdXNfaW50MzIgZWZmZWN0aXZlX21heF9yYXRlID0gbWF4X3JhdGU7Ci0gICAgICAgICAg
IHN0LT5zaWxrX21vZGUubWF4SW50ZXJuYWxTYW1wbGVSYXRlID0gMTYwMDA7CiAgICAgICAgICAg
IGlmIChmcmFtZV9yYXRlID4gNTApCiAgICAgICAgICAgICAgIGVmZmVjdGl2ZV9tYXhfcmF0ZSA9
IGVmZmVjdGl2ZV9tYXhfcmF0ZSoyLzM7Ci0gICAgICAgICAgIGlmIChlZmZlY3RpdmVfbWF4X3Jh
dGUgPCAxMzAwMCkKKyAgICAgICAgICAgaWYgKGVmZmVjdGl2ZV9tYXhfcmF0ZSA8IDgwMDApCiAg
ICAgICAgICAgIHsKICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5tYXhJbnRlcm5hbFNhbXBs
ZVJhdGUgPSAxMjAwMDsKICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5kZXNpcmVkSW50ZXJu
YWxTYW1wbGVSYXRlID0gSU1JTigxMjAwMCwgc3QtPnNpbGtfbW9kZS5kZXNpcmVkSW50ZXJuYWxT
YW1wbGVSYXRlKTsKICAgICAgICAgICAgfQotICAgICAgICAgICBpZiAoZWZmZWN0aXZlX21heF9y
YXRlIDwgOTYwMCkKKyAgICAgICAgICAgaWYgKGVmZmVjdGl2ZV9tYXhfcmF0ZSA8IDcwMDApCiAg
ICAgICAgICAgIHsKICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5tYXhJbnRlcm5hbFNhbXBs
ZVJhdGUgPSA4MDAwOwogICAgICAgICAgICAgICBzdC0+c2lsa19tb2RlLmRlc2lyZWRJbnRlcm5h
bFNhbXBsZVJhdGUgPSBJTUlOKDgwMDAsIHN0LT5zaWxrX21vZGUuZGVzaXJlZEludGVybmFsU2Ft
cGxlUmF0ZSk7CiAgICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgc3Qt
PnNpbGtfbW9kZS5tYXhJbnRlcm5hbFNhbXBsZVJhdGUgPSAxNjAwMDsKICAgICAgICAgfQogCiAg
ICAgICAgIHN0LT5zaWxrX21vZGUudXNlQ0JSID0gIXN0LT51c2VfdmJyOwogCiAgICAgICAgIC8q
IENhbGwgU0lMSyBlbmNvZGVyIGZvciB0aGUgbG93IGJhbmQgKi8KLSAgICAgICAgbkJ5dGVzID0g
SU1JTigxMjc1LCBtYXhfZGF0YV9ieXRlcy0xLXJlZHVuZGFuY3lfYnl0ZXMpOwogCi0gICAgICAg
IHN0LT5zaWxrX21vZGUubWF4Qml0cyA9IG5CeXRlcyo4OwotICAgICAgICAvKiBPbmx5IGFsbG93
IHVwIHRvIDkwJSBvZiB0aGUgYml0cyBmb3IgaHlicmlkIG1vZGUqLwotICAgICAgICBpZiAoc3Qt
Pm1vZGUgPT0gTU9ERV9IWUJSSUQpCi0gICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4Qml0cyA9
IChvcHVzX2ludDMyKXN0LT5zaWxrX21vZGUubWF4Qml0cyo5LzEwOworICAgICAgICAvKiBNYXgg
Yml0cyBmb3IgU0lMSywgY291bnRpbmcgVG9DLCByZWR1bmRhbmN5IGJ5dGVzLCBhbmQgb3B0aW9u
YWxseSByZWR1bmRhbmN5LiAqLworICAgICAgICBzdC0+c2lsa19tb2RlLm1heEJpdHMgPSAobWF4
X2RhdGFfYnl0ZXMtMSkqODsKKyAgICAgICAgaWYgKHJlZHVuZGFuY3kgJiYgcmVkdW5kYW5jeV9i
eXRlcyA+PSAyKQorICAgICAgICB7CisgICAgICAgICAgIC8qIENvdW50aW5nIDEgYml0IGZvciBy
ZWR1bmRhbmN5IHBvc2l0aW9uIGFuZCAyMCBiaXRzIGZvciBmbGFnK3NpemUgKG9ubHkgZm9yIGh5
YnJpZCkuICovCisgICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4Qml0cyAtPSByZWR1bmRhbmN5
X2J5dGVzKjggKyAxOworICAgICAgICAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQpCisg
ICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4Qml0cyAtPSAyMDsKKyAgICAgICAgfQogICAg
ICAgICBpZiAoc3QtPnNpbGtfbW9kZS51c2VDQlIpCiAgICAgICAgIHsKLSAgICAgICAgICAgc3Qt
PnNpbGtfbW9kZS5tYXhCaXRzID0gKHN0LT5zaWxrX21vZGUuYml0UmF0ZSAqIGZyYW1lX3NpemUg
LyAoc3QtPkZzICogOCkpKjg7Ci0gICAgICAgICAgIC8qIFJlZHVjZSB0aGUgaW5pdGlhbCB0YXJn
ZXQgdG8gbWFrZSBpdCBlYXNpZXIgdG8gcmVhY2ggdGhlIENCUiByYXRlICovCi0gICAgICAgICAg
IHN0LT5zaWxrX21vZGUuYml0UmF0ZSA9IElNQVgoMSwgc3QtPnNpbGtfbW9kZS5iaXRSYXRlLTIw
MDApOworICAgICAgICAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQpCisgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5tYXhCaXRzID0gSU1JTihzdC0+c2lsa19t
b2RlLm1heEJpdHMsIHN0LT5zaWxrX21vZGUuYml0UmF0ZSAqIGZyYW1lX3NpemUgLyBzdC0+RnMp
OworICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgIC8qIENvbnN0cmFp
bmVkIFZCUi4gKi8KKyAgICAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQorICAg
ICAgICAgICB7CisgICAgICAgICAgICAgIC8qIENvbXB1dGUgU0lMSyBiaXRyYXRlIGNvcnJlc3Bv
bmRpbmcgdG8gdGhlIG1heCB0b3RhbCBiaXRzIGF2YWlsYWJsZSAqLworICAgICAgICAgICAgICBv
cHVzX2ludDMyIG1heEJpdFJhdGUgPSBjb21wdXRlX3NpbGtfcmF0ZV9mb3JfaHlicmlkKHN0LT5z
aWxrX21vZGUubWF4Qml0cypzdC0+RnMgLyBmcmFtZV9zaXplLAorICAgICAgICAgICAgICAgICAg
ICBjdXJyX2JhbmR3aWR0aCwgc3QtPkZzID09IDUwICogZnJhbWVfc2l6ZSwgc3QtPnVzZV92YnIs
IHN0LT5zaWxrX21vZGUuTEJSUl9jb2RlZCk7CisgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUu
bWF4Qml0cyA9IG1heEJpdFJhdGUgKiBmcmFtZV9zaXplIC8gc3QtPkZzOworICAgICAgICAgICB9
CiAgICAgICAgIH0KIAogICAgICAgICBpZiAocHJlZmlsbCkKQEAgLTE2NDYsNyArMTgyOCw3IEBA
IG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1
c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAgICAgICBmb3IgKGk9MDtpPHN0LT5lbmNv
ZGVyX2J1ZmZlcipzdC0+Y2hhbm5lbHM7aSsrKQogICAgICAgICAgICAgICAgIHBjbV9zaWxrW2ld
ID0gRkxPQVQySU5UMTYoc3QtPmRlbGF5X2J1ZmZlcltpXSk7CiAjZW5kaWYKLSAgICAgICAgICAg
IHNpbGtfRW5jb2RlKCBzaWxrX2VuYywgJnN0LT5zaWxrX21vZGUsIHBjbV9zaWxrLCBzdC0+ZW5j
b2Rlcl9idWZmZXIsIE5VTEwsICZ6ZXJvLCAxICk7CisgICAgICAgICAgICBzaWxrX0VuY29kZSgg
c2lsa19lbmMsICZzdC0+c2lsa19tb2RlLCBwY21fc2lsaywgc3QtPmVuY29kZXJfYnVmZmVyLCBO
VUxMLCAmemVybywgMSwgYWN0aXZpdHkgKTsKICAgICAgICAgfQogCiAjaWZkZWYgRklYRURfUE9J
TlQKQEAgLTE2NTUsMjAgKzE4MzcsMTQgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUo
T3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAg
ICAgZm9yIChpPTA7aTxmcmFtZV9zaXplKnN0LT5jaGFubmVscztpKyspCiAgICAgICAgICAgICBw
Y21fc2lsa1tpXSA9IEZMT0FUMklOVDE2KHBjbV9idWZbdG90YWxfYnVmZmVyKnN0LT5jaGFubmVs
cyArIGldKTsKICNlbmRpZgotICAgICAgICByZXQgPSBzaWxrX0VuY29kZSggc2lsa19lbmMsICZz
dC0+c2lsa19tb2RlLCBwY21fc2lsaywgZnJhbWVfc2l6ZSwgJmVuYywgJm5CeXRlcywgMCApOwor
ICAgICAgICByZXQgPSBzaWxrX0VuY29kZSggc2lsa19lbmMsICZzdC0+c2lsa19tb2RlLCBwY21f
c2lsaywgZnJhbWVfc2l6ZSwgJmVuYywgJm5CeXRlcywgMCwgYWN0aXZpdHkgKTsKICAgICAgICAg
aWYoIHJldCApIHsKICAgICAgICAgICAgIC8qZnByaW50ZiAoc3RkZXJyLCAiU0lMSyBlbmNvZGUg
ZXJyb3I6ICVkXG4iLCByZXQpOyovCiAgICAgICAgICAgICAvKiBIYW5kbGUgZXJyb3IgKi8KICAg
ICAgICAgICAgUkVTVE9SRV9TVEFDSzsKICAgICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJOQUxf
RVJST1I7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKG5CeXRlcz09MCkKLSAgICAgICAgewotICAg
ICAgICAgICBzdC0+cmFuZ2VGaW5hbCA9IDA7Ci0gICAgICAgICAgIGRhdGFbLTFdID0gZ2VuX3Rv
YyhzdC0+bW9kZSwgc3QtPkZzL2ZyYW1lX3NpemUsIGN1cnJfYmFuZHdpZHRoLCBzdC0+c3RyZWFt
X2NoYW5uZWxzKTsKLSAgICAgICAgICAgUkVTVE9SRV9TVEFDSzsKLSAgICAgICAgICAgcmV0dXJu
IDE7Ci0gICAgICAgIH0KKwogICAgICAgICAvKiBFeHRyYWN0IFNJTEsgaW50ZXJuYWwgYmFuZHdp
ZHRoIGZvciBzaWduYWxpbmcgaW4gZmlyc3QgYnl0ZSAqLwogICAgICAgICBpZiggc3QtPm1vZGUg
PT0gTU9ERV9TSUxLX09OTFkgKSB7CiAgICAgICAgICAgICBpZiggc3QtPnNpbGtfbW9kZS5pbnRl
cm5hbFNhbXBsZVJhdGUgPT0gODAwMCApIHsKQEAgLTE2ODIsMTEgKzE4NTgsMjEgQEAgb3B1c19p
bnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2
ICpwY20sIGludCBmcmFtZV8KICAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBzdC0+c2lsa19tb2Rl
LmludGVybmFsU2FtcGxlUmF0ZSA9PSAxNjAwMCApOwogICAgICAgICB9CiAKLSAgICAgICAgc3Qt
PnNpbGtfbW9kZS5vcHVzQ2FuU3dpdGNoID0gc3QtPnNpbGtfbW9kZS5zd2l0Y2hSZWFkeTsKKyAg
ICAgICAgc3QtPnNpbGtfbW9kZS5vcHVzQ2FuU3dpdGNoID0gc3QtPnNpbGtfbW9kZS5zd2l0Y2hS
ZWFkeSAmJiAhc3QtPm5vbmZpbmFsX2ZyYW1lOworCisgICAgICAgIGlmIChuQnl0ZXM9PTApCisg
ICAgICAgIHsKKyAgICAgICAgICAgc3QtPnJhbmdlRmluYWwgPSAwOworICAgICAgICAgICBkYXRh
Wy0xXSA9IGdlbl90b2Moc3QtPm1vZGUsIHN0LT5Gcy9mcmFtZV9zaXplLCBjdXJyX2JhbmR3aWR0
aCwgc3QtPnN0cmVhbV9jaGFubmVscyk7CisgICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7CisgICAg
ICAgICAgIHJldHVybiAxOworICAgICAgICB9CisKICAgICAgICAgLyogRklYTUU6IEhvdyBkbyB3
ZSBhbGxvY2F0ZSB0aGUgcmVkdW5kYW5jeSBmb3IgQ0JSPyAqLwogICAgICAgICBpZiAoc3QtPnNp
bGtfbW9kZS5vcHVzQ2FuU3dpdGNoKQogICAgICAgICB7Ci0gICAgICAgICAgIHJlZHVuZGFuY3kg
PSAxOworICAgICAgICAgICByZWR1bmRhbmN5X2J5dGVzID0gY29tcHV0ZV9yZWR1bmRhbmN5X2J5
dGVzKG1heF9kYXRhX2J5dGVzLCBzdC0+Yml0cmF0ZV9icHMsIGZyYW1lX3JhdGUsIHN0LT5zdHJl
YW1fY2hhbm5lbHMpOworICAgICAgICAgICByZWR1bmRhbmN5ID0gKHJlZHVuZGFuY3lfYnl0ZXMg
IT0gMCk7CiAgICAgICAgICAgIGNlbHRfdG9fc2lsayA9IDA7CiAgICAgICAgICAgIHN0LT5zaWxr
X2J3X3N3aXRjaCA9IDE7CiAgICAgICAgIH0KQEAgLTE3MjcsNDAgKzE5MTMsMTggQEAgb3B1c19p
bnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2
ICpwY20sIGludCBmcmFtZV8KIAogICAgICAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQp
CiAgICAgICAgIHsKLSAgICAgICAgICAgIGludCBsZW47Ci0KLSAgICAgICAgICAgIGxlbiA9IChl
Y190ZWxsKCZlbmMpKzcpPj4zOwotICAgICAgICAgICAgaWYgKHJlZHVuZGFuY3kpCi0gICAgICAg
ICAgICAgICBsZW4gKz0gc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQgPyAzIDogMTsKICAgICAgICAg
ICAgIGlmKCBzdC0+dXNlX3ZiciApIHsKLSAgICAgICAgICAgICAgICBuYl9jb21wcl9ieXRlcyA9
IGxlbiArIGJ5dGVzX3RhcmdldCAtIChzdC0+c2lsa19tb2RlLmJpdFJhdGUgKiBmcmFtZV9zaXpl
KSAvICg4ICogc3QtPkZzKTsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAg
LyogY2hlY2sgaWYgU0lMSyB1c2VkIHVwIHRvbyBtdWNoICovCi0gICAgICAgICAgICAgICAgbmJf
Y29tcHJfYnl0ZXMgPSBsZW4gPiBieXRlc190YXJnZXQgPyBsZW4gOiBieXRlc190YXJnZXQ7Cisg
ICAgICAgICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfQklUUkFU
RShzdC0+Yml0cmF0ZV9icHMtc3QtPnNpbGtfbW9kZS5iaXRSYXRlKSk7CisgICAgICAgICAgICAg
ICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoMCkp
OwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgaWYgKHN0LT51
c2VfdmJyKQogICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIG9wdXNfaW50MzIgYm9udXM9
MDsKLSNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKLSAgICAgICAgICAgICAgICBpZiAoc3QtPnZh
cmlhYmxlX2R1cmF0aW9uPT1PUFVTX0ZSQU1FU0laRV9WQVJJQUJMRSAmJiBmcmFtZV9zaXplICE9
IHN0LT5Gcy81MCkKLSAgICAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgICAgYm9udXMg
PSAoNjAqc3QtPnN0cmVhbV9jaGFubmVscys0MCkqKHN0LT5Gcy9mcmFtZV9zaXplLTUwKTsKLSAg
ICAgICAgICAgICAgICAgICBpZiAoYW5hbHlzaXNfaW5mby52YWxpZCkKLSAgICAgICAgICAgICAg
ICAgICAgICBib251cyA9IChvcHVzX2ludDMyKShib251cyooMS5mKy41ZiphbmFseXNpc19pbmZv
LnRvbmFsaXR5KSk7Ci0gICAgICAgICAgICAgICAgfQotI2VuZGlmCiAgICAgICAgICAgICAgICAg
Y2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfVkJSKDEpKTsKICAgICAgICAgICAg
ICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVChz
dC0+dmJyX2NvbnN0cmFpbnQpKTsKLSAgICAgICAgICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNl
bHRfZW5jLCBPUFVTX1NFVF9CSVRSQVRFKHN0LT5iaXRyYXRlX2Jwcytib251cykpOwotICAgICAg
ICAgICAgICAgIG5iX2NvbXByX2J5dGVzID0gbWF4X2RhdGFfYnl0ZXMtMS1yZWR1bmRhbmN5X2J5
dGVzOwotICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBuYl9jb21wcl9ieXRl
cyA9IGJ5dGVzX3RhcmdldDsKKyAgICAgICAgICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRf
ZW5jLCBPUFVTX1NFVF9CSVRSQVRFKHN0LT5iaXRyYXRlX2JwcykpOwogICAgICAgICAgICAgfQog
ICAgICAgICB9Ci0KLSAgICB9IGVsc2UgewotICAgICAgICBuYl9jb21wcl9ieXRlcyA9IDA7CiAg
ICAgfQogCiAgICAgQUxMT0ModG1wX3ByZWZpbGwsIHN0LT5jaGFubmVscypzdC0+RnMvNDAwLCBv
cHVzX3ZhbDE2KTsKQEAgLTE3ODYsNyArMTk1MCw3IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVf
bmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVf
CiAgICAgfQogICAgIHN0LT5wcmV2X0hCX2dhaW4gPSBIQl9nYWluOwogICAgIGlmIChzdC0+bW9k
ZSAhPSBNT0RFX0hZQlJJRCB8fCBzdC0+c3RyZWFtX2NoYW5uZWxzPT0xKQotICAgICAgIHN0LT5z
aWxrX21vZGUuc3RlcmVvV2lkdGhfUTE0ID0gSU1JTigoMTw8MTQpLDIqSU1BWCgwLGVxdWl2X3Jh
dGUtMzAwMDApKTsKKyAgICAgICBzdC0+c2lsa19tb2RlLnN0ZXJlb1dpZHRoX1ExNCA9IElNSU4o
KDE8PDE0KSwyKklNQVgoMCxlcXVpdl9yYXRlLTI0MDAwKSk7CiAgICAgaWYoICFzdC0+ZW5lcmd5
X21hc2tpbmcgJiYgc3QtPmNoYW5uZWxzID09IDIgKSB7CiAgICAgICAgIC8qIEFwcGx5IHN0ZXJl
byB3aWR0aCByZWR1Y3Rpb24gKGF0IGxvdyBiaXRyYXRlcykgKi8KICAgICAgICAgaWYoIHN0LT5o
eWJyaWRfc3RlcmVvX3dpZHRoX1ExNCA8ICgxIDw8IDE0KSB8fCBzdC0+c2lsa19tb2RlLnN0ZXJl
b1dpZHRoX1ExNCA8ICgxIDw8IDE0KSApIHsKQEAgLTE4MDksMTkgKzE5NzMsMjMgQEAgb3B1c19p
bnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2
ICpwY20sIGludCBmcmFtZV8KICAgICBpZiAoIHN0LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZICYm
IGVjX3RlbGwoJmVuYykrMTcrMjAqKHN0LT5tb2RlID09IE1PREVfSFlCUklEKSA8PSA4KihtYXhf
ZGF0YV9ieXRlcy0xKSkKICAgICB7CiAgICAgICAgIC8qIEZvciBTSUxLIG1vZGUsIHRoZSByZWR1
bmRhbmN5IGlzIGluZmVycmVkIGZyb20gdGhlIGxlbmd0aCAqLwotICAgICAgICBpZiAoc3QtPm1v
ZGUgPT0gTU9ERV9IWUJSSUQgJiYgKHJlZHVuZGFuY3kgfHwgZWNfdGVsbCgmZW5jKSszNyA8PSA4
Km5iX2NvbXByX2J5dGVzKSkKKyAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQog
ICAgICAgICAgICBlY19lbmNfYml0X2xvZ3AoJmVuYywgcmVkdW5kYW5jeSwgMTIpOwogICAgICAg
ICBpZiAocmVkdW5kYW5jeSkKICAgICAgICAgewogICAgICAgICAgICAgaW50IG1heF9yZWR1bmRh
bmN5OwogICAgICAgICAgICAgZWNfZW5jX2JpdF9sb2dwKCZlbmMsIGNlbHRfdG9fc2lsaywgMSk7
CiAgICAgICAgICAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQpCi0gICAgICAgICAgICAg
ICBtYXhfcmVkdW5kYW5jeSA9IChtYXhfZGF0YV9ieXRlcy0xKS1uYl9jb21wcl9ieXRlczsKKyAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIC8qIFJlc2VydmUgdGhlIDggYml0cyBuZWVkZWQg
Zm9yIHRoZSByZWR1bmRhbmN5IGxlbmd0aCwKKyAgICAgICAgICAgICAgICAgIGFuZCBhdCBsZWFz
dCBhIGZldyBiaXRzIGZvciBDRUxUIGlmIHBvc3NpYmxlICovCisgICAgICAgICAgICAgICBtYXhf
cmVkdW5kYW5jeSA9IChtYXhfZGF0YV9ieXRlcy0xKS0oKGVjX3RlbGwoJmVuYykrOCszKzcpPj4z
KTsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgIG1heF9y
ZWR1bmRhbmN5ID0gKG1heF9kYXRhX2J5dGVzLTEpLSgoZWNfdGVsbCgmZW5jKSs3KT4+Myk7CiAg
ICAgICAgICAgICAvKiBUYXJnZXQgdGhlIHNhbWUgYml0LXJhdGUgZm9yIHJlZHVuZGFuY3kgYXMg
Zm9yIHRoZSByZXN0LAogICAgICAgICAgICAgICAgdXAgdG8gYSBtYXggb2YgMjU3IGJ5dGVzICov
Ci0gICAgICAgICAgICByZWR1bmRhbmN5X2J5dGVzID0gSU1JTihtYXhfcmVkdW5kYW5jeSwgc3Qt
PmJpdHJhdGVfYnBzLzE2MDApOworICAgICAgICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9IElNSU4o
bWF4X3JlZHVuZGFuY3ksIHJlZHVuZGFuY3lfYnl0ZXMpOwogICAgICAgICAgICAgcmVkdW5kYW5j
eV9ieXRlcyA9IElNSU4oMjU3LCBJTUFYKDIsIHJlZHVuZGFuY3lfYnl0ZXMpKTsKICAgICAgICAg
ICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCkKICAgICAgICAgICAgICAgICBlY19lbmNf
dWludCgmZW5jLCByZWR1bmRhbmN5X2J5dGVzLTIsIDI1Nik7CkBAIC0xODQzLDcgKzIwMTEsNyBA
QCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9w
dXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAgICBlY19lbmNfZG9uZSgmZW5jKTsKICAg
ICAgICAgbmJfY29tcHJfYnl0ZXMgPSByZXQ7CiAgICAgfSBlbHNlIHsKLSAgICAgICBuYl9jb21w
cl9ieXRlcyA9IElNSU4oKG1heF9kYXRhX2J5dGVzLTEpLXJlZHVuZGFuY3lfYnl0ZXMsIG5iX2Nv
bXByX2J5dGVzKTsKKyAgICAgICBuYl9jb21wcl9ieXRlcyA9IChtYXhfZGF0YV9ieXRlcy0xKS1y
ZWR1bmRhbmN5X2J5dGVzOwogICAgICAgIGVjX2VuY19zaHJpbmsoJmVuYywgbmJfY29tcHJfYnl0
ZXMpOwogICAgIH0KIApAQCAtMTg1MSw2ICsyMDE5LDE0IEBAIG9wdXNfaW50MzIgb3B1c19lbmNv
ZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJh
bWVfCiAgICAgaWYgKHJlZHVuZGFuY3kgfHwgc3QtPm1vZGUgIT0gTU9ERV9TSUxLX09OTFkpCiAg
ICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgQ0VMVF9TRVRfQU5BTFlTSVMoJmFuYWx5
c2lzX2luZm8pKTsKICNlbmRpZgorICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCkgewor
ICAgICAgIFNJTEtJbmZvIGluZm87CisgICAgICAgaW5mby5zaWduYWxUeXBlID0gc3QtPnNpbGtf
bW9kZS5zaWduYWxUeXBlOworICAgICAgIGluZm8ub2Zmc2V0ID0gc3QtPnNpbGtfbW9kZS5vZmZz
ZXQ7CisgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgQ0VMVF9TRVRfU0lMS19JTkZP
KCZpbmZvKSk7CisgICAgfSBlbHNlIHsKKyAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5j
LCBDRUxUX1NFVF9TSUxLX0lORk8oKFNJTEtJbmZvKilOVUxMKSk7CisgICAgfQogCiAgICAgLyog
NSBtcyByZWR1bmRhbnQgZnJhbWUgZm9yIENFTFQtPlNJTEsgKi8KICAgICBpZiAocmVkdW5kYW5j
eSAmJiBjZWx0X3RvX3NpbGspCkBAIC0xODU4LDYgKzIwMzQsNyBAQCBvcHVzX2ludDMyIG9wdXNf
ZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50
IGZyYW1lXwogICAgICAgICBpbnQgZXJyOwogICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRf
ZW5jLCBDRUxUX1NFVF9TVEFSVF9CQU5EKDApKTsKICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChj
ZWx0X2VuYywgT1BVU19TRVRfVkJSKDApKTsKKyAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0
X2VuYywgT1BVU19TRVRfQklUUkFURShPUFVTX0JJVFJBVEVfTUFYKSk7CiAgICAgICAgIGVyciA9
IGNlbHRfZW5jb2RlX3dpdGhfZWMoY2VsdF9lbmMsIHBjbV9idWYsIHN0LT5Gcy8yMDAsIGRhdGEr
bmJfY29tcHJfYnl0ZXMsIHJlZHVuZGFuY3lfYnl0ZXMsIE5VTEwpOwogICAgICAgICBpZiAoZXJy
IDwgMCkKICAgICAgICAgewpAQCAtMTg4MSwxNSArMjA1OCwyNSBAQCBvcHVzX2ludDMyIG9wdXNf
ZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50
IGZyYW1lXwogICAgICAgICAgICBjZWx0X2VuY29kZV93aXRoX2VjKGNlbHRfZW5jLCB0bXBfcHJl
ZmlsbCwgc3QtPkZzLzQwMCwgZHVtbXksIDIsIE5VTEwpOwogICAgICAgICAgICBjZWx0X2VuY29k
ZXJfY3RsKGNlbHRfZW5jLCBDRUxUX1NFVF9QUkVESUNUSU9OKDApKTsKICAgICAgICAgfQotICAg
ICAgICAvKiBJZiBmYWxzZSwgd2UgYWxyZWFkeSBidXN0ZWQgdGhlIGJ1ZGdldCBhbmQgd2UnbGwg
ZW5kIHVwIHdpdGggYSAiUExDIHBhY2tldCIgKi8KKyAgICAgICAgLyogSWYgZmFsc2UsIHdlIGFs
cmVhZHkgYnVzdGVkIHRoZSBidWRnZXQgYW5kIHdlJ2xsIGVuZCB1cCB3aXRoIGEgIlBMQyBmcmFt
ZSIgKi8KICAgICAgICAgaWYgKGVjX3RlbGwoJmVuYykgPD0gOCpuYl9jb21wcl9ieXRlcykKICAg
ICAgICAgeworICAgICAgICAgICAvKiBTZXQgdGhlIGJpdHJhdGUgYWdhaW4gaWYgaXQgd2FzIG92
ZXJyaWRkZW4gaW4gdGhlIHJlZHVuZGFuY3kgY29kZSBhYm92ZSovCisgICAgICAgICAgIGlmIChy
ZWR1bmRhbmN5ICYmIGNlbHRfdG9fc2lsayAmJiBzdC0+bW9kZT09TU9ERV9IWUJSSUQgJiYgc3Qt
PnVzZV92YnIpCisgICAgICAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNf
U0VUX0JJVFJBVEUoc3QtPmJpdHJhdGVfYnBzLXN0LT5zaWxrX21vZGUuYml0UmF0ZSkpOworICAg
ICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBPUFVTX1NFVF9WQlIoc3QtPnVzZV92
YnIpKTsKICAgICAgICAgICAgcmV0ID0gY2VsdF9lbmNvZGVfd2l0aF9lYyhjZWx0X2VuYywgcGNt
X2J1ZiwgZnJhbWVfc2l6ZSwgTlVMTCwgbmJfY29tcHJfYnl0ZXMsICZlbmMpOwogICAgICAgICAg
ICBpZiAocmV0IDwgMCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICBSRVNUT1JFX1NUQUNL
OwogICAgICAgICAgICAgICByZXR1cm4gT1BVU19JTlRFUk5BTF9FUlJPUjsKICAgICAgICAgICAg
fQorICAgICAgICAgICAvKiBQdXQgQ0VMVC0+U0lMSyByZWR1bmRhbmN5IGRhdGEgaW4gdGhlIHJp
Z2h0IHBsYWNlLiAqLworICAgICAgICAgICBpZiAocmVkdW5kYW5jeSAmJiBjZWx0X3RvX3NpbGsg
JiYgc3QtPm1vZGU9PU1PREVfSFlCUklEICYmIHN0LT51c2VfdmJyKQorICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgIE9QVVNfTU9WRShkYXRhK3JldCwgZGF0YStuYl9jb21wcl9ieXRlcywgcmVk
dW5kYW5jeV9ieXRlcyk7CisgICAgICAgICAgICAgIG5iX2NvbXByX2J5dGVzID0gbmJfY29tcHJf
Ynl0ZXMrcmVkdW5kYW5jeV9ieXRlczsKKyAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQog
CkBAIC0xOTA1LDcgKzIwOTIsMTUgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1
c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAg
Y2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19SRVNFVF9TVEFURSk7CiAgICAgICAgIGNl
bHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIENFTFRfU0VUX1NUQVJUX0JBTkQoMCkpOwogICAgICAg
ICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBDRUxUX1NFVF9QUkVESUNUSU9OKDApKTsKKyAg
ICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfVkJSKDApKTsKKyAgICAg
ICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfQklUUkFURShPUFVTX0JJVFJB
VEVfTUFYKSk7CiAKKyAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQorICAgICAg
ICB7CisgICAgICAgICAgIC8qIFNocmluayBwYWNrZXQgdG8gd2hhdCB0aGUgZW5jb2RlciBhY3R1
YWxseSB1c2VkLiAqLworICAgICAgICAgICBuYl9jb21wcl9ieXRlcyA9IHJldDsKKyAgICAgICAg
ICAgZWNfZW5jX3NocmluaygmZW5jLCBuYl9jb21wcl9ieXRlcyk7CisgICAgICAgIH0KICAgICAg
ICAgLyogTk9URTogV2UgY291bGQgc3BlZWQgdGhpcyB1cCBzbGlnaHRseSAoYXQgdGhlIGV4cGVu
c2Ugb2YgY29kZSBzaXplKSBieSBqdXN0IGFkZGluZyBhIGZ1bmN0aW9uIHRoYXQgcHJlZmlsbHMg
dGhlIGJ1ZmZlciAqLwogICAgICAgICBjZWx0X2VuY29kZV93aXRoX2VjKGNlbHRfZW5jLCBwY21f
YnVmK3N0LT5jaGFubmVscyooZnJhbWVfc2l6ZS1OMi1ONCksIE40LCBkdW1teSwgMiwgTlVMTCk7
CiAKQEAgLTE5MzUsNiArMjEzMCwyMSBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShP
cHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogCiAgICAg
c3QtPmZpcnN0ID0gMDsKIAorICAgIC8qIERUWCBkZWNpc2lvbiAqLworI2lmbmRlZiBESVNBQkxF
X0ZMT0FUX0FQSQorICAgIGlmIChzdC0+dXNlX2R0eCAmJiAoYW5hbHlzaXNfaW5mby52YWxpZCB8
fCBpc19zaWxlbmNlKSkKKyAgICB7CisgICAgICAgaWYgKGRlY2lkZV9kdHhfbW9kZShhbmFseXNp
c19pbmZvLmFjdGl2aXR5X3Byb2JhYmlsaXR5LCAmc3QtPm5iX25vX2FjdGl2aXR5X2ZyYW1lcywK
KyAgICAgICAgICAgICBzdC0+cGVha19zaWduYWxfZW5lcmd5LCBwY20sIGZyYW1lX3NpemUsIHN0
LT5jaGFubmVscywgaXNfc2lsZW5jZSwgc3QtPmFyY2gpKQorICAgICAgIHsKKyAgICAgICAgICBz
dC0+cmFuZ2VGaW5hbCA9IDA7CisgICAgICAgICAgZGF0YVswXSA9IGdlbl90b2Moc3QtPm1vZGUs
IHN0LT5Gcy9mcmFtZV9zaXplLCBjdXJyX2JhbmR3aWR0aCwgc3QtPnN0cmVhbV9jaGFubmVscyk7
CisgICAgICAgICAgUkVTVE9SRV9TVEFDSzsKKyAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICB9
CisgICAgfQorI2VuZGlmCisKICAgICAvKiBJbiB0aGUgdW5saWtlbHkgY2FzZSB0aGF0IHRoZSBT
SUxLIGVuY29kZXIgYnVzdGVkIGl0cyB0YXJnZXQsIHRlbGwKICAgICAgICB0aGUgZGVjb2RlciB0
byBjYWxsIHRoZSBQTEMgKi8KICAgICBpZiAoZWNfdGVsbCgmZW5jKSA+IChtYXhfZGF0YV9ieXRl
cy0xKSo4KQpAQCAtMTk2Miw3ICsyMTcyLDYgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRp
dmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAg
ICBpZiAoIXN0LT51c2VfdmJyKQogICAgIHsKICAgICAgICBpZiAob3B1c19wYWNrZXRfcGFkKGRh
dGEsIHJldCwgbWF4X2RhdGFfYnl0ZXMpICE9IE9QVVNfT0spCi0KICAgICAgICB7CiAgICAgICAg
ICAgUkVTVE9SRV9TVEFDSzsKICAgICAgICAgICByZXR1cm4gT1BVU19JTlRFUk5BTF9FUlJPUjsK
QEAgLTE5ODEsMTggKzIxOTAsMTUgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9mbG9hdChPcHVz
RW5jb2RlciAqc3QsIGNvbnN0IGZsb2F0ICpwY20sIGludCBhbmFseXNpc19mcmEKIHsKICAgIGlu
dCBpLCByZXQ7CiAgICBpbnQgZnJhbWVfc2l6ZTsKLSAgIGludCBkZWxheV9jb21wZW5zYXRpb247
CiAgICBWQVJERUNMKG9wdXNfaW50MTYsIGluKTsKICAgIEFMTE9DX1NUQUNLOwogCi0gICBpZiAo
c3QtPmFwcGxpY2F0aW9uID09IE9QVVNfQVBQTElDQVRJT05fUkVTVFJJQ1RFRF9MT1dERUxBWSkK
LSAgICAgIGRlbGF5X2NvbXBlbnNhdGlvbiA9IDA7Ci0gICBlbHNlCi0gICAgICBkZWxheV9jb21w
ZW5zYXRpb24gPSBzdC0+ZGVsYXlfY29tcGVuc2F0aW9uOwotICAgZnJhbWVfc2l6ZSA9IGNvbXB1
dGVfZnJhbWVfc2l6ZShwY20sIGFuYWx5c2lzX2ZyYW1lX3NpemUsCi0gICAgICAgICBzdC0+dmFy
aWFibGVfZHVyYXRpb24sIHN0LT5jaGFubmVscywgc3QtPkZzLCBzdC0+Yml0cmF0ZV9icHMsCi0g
ICAgICAgICBkZWxheV9jb21wZW5zYXRpb24sIGRvd25taXhfZmxvYXQsIHN0LT5hbmFseXNpcy5z
dWJmcmFtZV9tZW0pOwotCisgICBmcmFtZV9zaXplID0gZnJhbWVfc2l6ZV9zZWxlY3QoYW5hbHlz
aXNfZnJhbWVfc2l6ZSwgc3QtPnZhcmlhYmxlX2R1cmF0aW9uLCBzdC0+RnMpOworICAgaWYgKGZy
YW1lX3NpemUgPD0gMCkKKyAgIHsKKyAgICAgIFJFU1RPUkVfU1RBQ0s7CisgICAgICByZXR1cm4g
T1BVU19CQURfQVJHOworICAgfQogICAgQUxMT0MoaW4sIGZyYW1lX3NpemUqc3QtPmNoYW5uZWxz
LCBvcHVzX2ludDE2KTsKIAogICAgZm9yIChpPTA7aTxmcmFtZV9zaXplKnN0LT5jaGFubmVscztp
KyspCkBAIC0yMDA4LDE4ICsyMjE0LDcgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZShPcHVzRW5j
b2RlciAqc3QsIGNvbnN0IG9wdXNfaW50MTYgKnBjbSwgaW50IGFuYWx5c2lzX2ZyYW0KICAgICAg
ICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpkYXRhLCBvcHVzX2ludDMyIG91dF9kYXRhX2J5dGVz
KQogewogICAgaW50IGZyYW1lX3NpemU7Ci0gICBpbnQgZGVsYXlfY29tcGVuc2F0aW9uOwotICAg
aWYgKHN0LT5hcHBsaWNhdGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVM
QVkpCi0gICAgICBkZWxheV9jb21wZW5zYXRpb24gPSAwOwotICAgZWxzZQotICAgICAgZGVsYXlf
Y29tcGVuc2F0aW9uID0gc3QtPmRlbGF5X2NvbXBlbnNhdGlvbjsKLSAgIGZyYW1lX3NpemUgPSBj
b21wdXRlX2ZyYW1lX3NpemUocGNtLCBhbmFseXNpc19mcmFtZV9zaXplLAotICAgICAgICAgc3Qt
PnZhcmlhYmxlX2R1cmF0aW9uLCBzdC0+Y2hhbm5lbHMsIHN0LT5Gcywgc3QtPmJpdHJhdGVfYnBz
LAotICAgICAgICAgZGVsYXlfY29tcGVuc2F0aW9uLCBkb3dubWl4X2ludAotI2lmbmRlZiBESVNB
QkxFX0ZMT0FUX0FQSQotICAgICAgICAgLCBzdC0+YW5hbHlzaXMuc3ViZnJhbWVfbWVtCi0jZW5k
aWYKLSAgICAgICAgICk7CisgICBmcmFtZV9zaXplID0gZnJhbWVfc2l6ZV9zZWxlY3QoYW5hbHlz
aXNfZnJhbWVfc2l6ZSwgc3QtPnZhcmlhYmxlX2R1cmF0aW9uLCBzdC0+RnMpOwogICAgcmV0dXJu
IG9wdXNfZW5jb2RlX25hdGl2ZShzdCwgcGNtLCBmcmFtZV9zaXplLCBkYXRhLCBvdXRfZGF0YV9i
eXRlcywgMTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBjbSwgYW5hbHlzaXNfZnJh
bWVfc2l6ZSwgMCwgLTIsIHN0LT5jaGFubmVscywgZG93bm1peF9pbnQsIDApOwogfQpAQCAtMjAz
MCwxOCArMjIyNSwxNSBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlKE9wdXNFbmNvZGVyICpzdCwg
Y29uc3Qgb3B1c19pbnQxNiAqcGNtLCBpbnQgYW5hbHlzaXNfZnJhbQogewogICAgaW50IGksIHJl
dDsKICAgIGludCBmcmFtZV9zaXplOwotICAgaW50IGRlbGF5X2NvbXBlbnNhdGlvbjsKICAgIFZB
UkRFQ0woZmxvYXQsIGluKTsKICAgIEFMTE9DX1NUQUNLOwogCi0gICBpZiAoc3QtPmFwcGxpY2F0
aW9uID09IE9QVVNfQVBQTElDQVRJT05fUkVTVFJJQ1RFRF9MT1dERUxBWSkKLSAgICAgIGRlbGF5
X2NvbXBlbnNhdGlvbiA9IDA7Ci0gICBlbHNlCi0gICAgICBkZWxheV9jb21wZW5zYXRpb24gPSBz
dC0+ZGVsYXlfY29tcGVuc2F0aW9uOwotICAgZnJhbWVfc2l6ZSA9IGNvbXB1dGVfZnJhbWVfc2l6
ZShwY20sIGFuYWx5c2lzX2ZyYW1lX3NpemUsCi0gICAgICAgICBzdC0+dmFyaWFibGVfZHVyYXRp
b24sIHN0LT5jaGFubmVscywgc3QtPkZzLCBzdC0+Yml0cmF0ZV9icHMsCi0gICAgICAgICBkZWxh
eV9jb21wZW5zYXRpb24sIGRvd25taXhfaW50LCBzdC0+YW5hbHlzaXMuc3ViZnJhbWVfbWVtKTsK
LQorICAgZnJhbWVfc2l6ZSA9IGZyYW1lX3NpemVfc2VsZWN0KGFuYWx5c2lzX2ZyYW1lX3NpemUs
IHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgc3QtPkZzKTsKKyAgIGlmIChmcmFtZV9zaXplIDw9IDAp
CisgICB7CisgICAgICBSRVNUT1JFX1NUQUNLOworICAgICAgcmV0dXJuIE9QVVNfQkFEX0FSRzsK
KyAgIH0KICAgIEFMTE9DKGluLCBmcmFtZV9zaXplKnN0LT5jaGFubmVscywgZmxvYXQpOwogCiAg
ICBmb3IgKGk9MDtpPGZyYW1lX3NpemUqc3QtPmNoYW5uZWxzO2krKykKQEAgLTIwNTUsMTQgKzIy
NDcsNyBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX2Zsb2F0KE9wdXNFbmNvZGVyICpzdCwgY29u
c3QgZmxvYXQgKnBjbSwgaW50IGFuYWx5c2lzX2ZyYQogICAgICAgICAgICAgICAgICAgICAgIHVu
c2lnbmVkIGNoYXIgKmRhdGEsIG9wdXNfaW50MzIgb3V0X2RhdGFfYnl0ZXMpCiB7CiAgICBpbnQg
ZnJhbWVfc2l6ZTsKLSAgIGludCBkZWxheV9jb21wZW5zYXRpb247Ci0gICBpZiAoc3QtPmFwcGxp
Y2F0aW9uID09IE9QVVNfQVBQTElDQVRJT05fUkVTVFJJQ1RFRF9MT1dERUxBWSkKLSAgICAgIGRl
bGF5X2NvbXBlbnNhdGlvbiA9IDA7Ci0gICBlbHNlCi0gICAgICBkZWxheV9jb21wZW5zYXRpb24g
PSBzdC0+ZGVsYXlfY29tcGVuc2F0aW9uOwotICAgZnJhbWVfc2l6ZSA9IGNvbXB1dGVfZnJhbWVf
c2l6ZShwY20sIGFuYWx5c2lzX2ZyYW1lX3NpemUsCi0gICAgICAgICBzdC0+dmFyaWFibGVfZHVy
YXRpb24sIHN0LT5jaGFubmVscywgc3QtPkZzLCBzdC0+Yml0cmF0ZV9icHMsCi0gICAgICAgICBk
ZWxheV9jb21wZW5zYXRpb24sIGRvd25taXhfZmxvYXQsIHN0LT5hbmFseXNpcy5zdWJmcmFtZV9t
ZW0pOworICAgZnJhbWVfc2l6ZSA9IGZyYW1lX3NpemVfc2VsZWN0KGFuYWx5c2lzX2ZyYW1lX3Np
emUsIHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgc3QtPkZzKTsKICAgIHJldHVybiBvcHVzX2VuY29k
ZV9uYXRpdmUoc3QsIHBjbSwgZnJhbWVfc2l6ZSwgZGF0YSwgb3V0X2RhdGFfYnl0ZXMsIDI0LAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwY20sIGFuYWx5c2lzX2ZyYW1lX3NpemUsIDAs
IC0yLCBzdC0+Y2hhbm5lbHMsIGRvd25taXhfZmxvYXQsIDEpOwogfQpAQCAtMjA5Myw2ICsyMjc4
LDkgQEAgaW50IG9wdXNfZW5jb2Rlcl9jdGwoT3B1c0VuY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwg
Li4uKQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBz
dC0+YXBwbGljYXRpb24gPSB2YWx1ZTsKKyNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKKyAgICAg
ICAgICAgIHN0LT5hbmFseXNpcy5hcHBsaWNhdGlvbiA9IHZhbHVlOworI2VuZGlmCiAgICAgICAg
IH0KICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgT1BVU19HRVRfQVBQTElDQVRJT05fUkVR
VUVTVDoKQEAgLTIyMTEsNyArMjM5OSw3IEBAIGludCBvcHVzX2VuY29kZXJfY3RsKE9wdXNFbmNv
ZGVyICpzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
IGdvdG8gYmFkX2FyZzsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHN0LT5zaWxrX21vZGUu
dXNlRFRYID0gdmFsdWU7CisgICAgICAgICAgICBzdC0+dXNlX2R0eCA9IHZhbHVlOwogICAgICAg
ICB9CiAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIE9QVVNfR0VUX0RUWF9SRVFVRVNUOgpA
QCAtMjIyMSw3ICsyNDA5LDcgQEAgaW50IG9wdXNfZW5jb2Rlcl9jdGwoT3B1c0VuY29kZXIgKnN0
LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgZ290byBi
YWRfYXJnOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgKnZhbHVlID0gc3QtPnNpbGtfbW9k
ZS51c2VEVFg7CisgICAgICAgICAgICAqdmFsdWUgPSBzdC0+dXNlX2R0eDsKICAgICAgICAgfQog
ICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBPUFVTX1NFVF9DT01QTEVYSVRZX1JFUVVFU1Q6
CkBAIC0yNDIyLDEwICsyNjEwLDExIEBAIGludCBvcHVzX2VuY29kZXJfY3RsKE9wdXNFbmNvZGVy
ICpzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICAgY2FzZSBPUFVTX1NFVF9FWFBFUlRfRlJB
TUVfRFVSQVRJT05fUkVRVUVTVDoKICAgICAgICAgewogICAgICAgICAgICAgb3B1c19pbnQzMiB2
YWx1ZSA9IHZhX2FyZyhhcCwgb3B1c19pbnQzMik7Ci0gICAgICAgICAgICBpZiAodmFsdWUgIT0g
T1BVU19GUkFNRVNJWkVfQVJHICAgJiYgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfMl81X01TICYm
Ci0gICAgICAgICAgICAgICAgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfNV9NUyAgJiYgdmFsdWUg
IT0gT1BVU19GUkFNRVNJWkVfMTBfTVMgICYmCi0gICAgICAgICAgICAgICAgdmFsdWUgIT0gT1BV
U19GUkFNRVNJWkVfMjBfTVMgJiYgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfNDBfTVMgICYmCi0g
ICAgICAgICAgICAgICAgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfNjBfTVMgJiYgdmFsdWUgIT0g
T1BVU19GUkFNRVNJWkVfVkFSSUFCTEUpCisgICAgICAgICAgICBpZiAodmFsdWUgIT0gT1BVU19G
UkFNRVNJWkVfQVJHICAgICYmIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzJfNV9NUyAmJgorICAg
ICAgICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzVfTVMgICAmJiB2YWx1ZSAhPSBP
UFVTX0ZSQU1FU0laRV8xMF9NUyAgJiYKKyAgICAgICAgICAgICAgICB2YWx1ZSAhPSBPUFVTX0ZS
QU1FU0laRV8yMF9NUyAgJiYgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfNDBfTVMgICYmCisgICAg
ICAgICAgICAgICAgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfNjBfTVMgICYmIHZhbHVlICE9IE9Q
VVNfRlJBTUVTSVpFXzgwX01TICAmJgorICAgICAgICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJB
TUVTSVpFXzEwMF9NUyAmJiB2YWx1ZSAhPSBPUFVTX0ZSQU1FU0laRV8xMjBfTVMpCiAgICAgICAg
ICAgICB7CiAgICAgICAgICAgICAgICBnb3RvIGJhZF9hcmc7CiAgICAgICAgICAgICB9CkBAIC0y
NDU5LDYgKzI2NDgsMjYgQEAgaW50IG9wdXNfZW5jb2Rlcl9jdGwoT3B1c0VuY29kZXIgKnN0LCBp
bnQgcmVxdWVzdCwgLi4uKQogICAgICAgICAgICAqdmFsdWUgPSBzdC0+c2lsa19tb2RlLnJlZHVj
ZWREZXBlbmRlbmN5OwogICAgICAgICB9CiAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIE9Q
VVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUOgorICAgICAgICB7CisgICAg
ICAgICAgICBvcHVzX2ludDMyIHZhbHVlID0gdmFfYXJnKGFwLCBvcHVzX2ludDMyKTsKKyAgICAg
ICAgICAgIGlmKHZhbHVlPDAgfHwgdmFsdWU+MSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgIGdvdG8gYmFkX2FyZzsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGNlbHRfZW5jb2Rl
cl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCh2YWx1ZSkp
OworICAgICAgICB9CisgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIE9QVVNfR0VUX1BIQVNF
X0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUOgorICAgICAgICB7CisgICAgICAgICAgICBvcHVz
X2ludDMyICp2YWx1ZSA9IHZhX2FyZyhhcCwgb3B1c19pbnQzMiopOworICAgICAgICAgICAgaWYg
KCF2YWx1ZSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIGdvdG8gYmFkX2FyZzsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNf
R0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCh2YWx1ZSkpOworICAgICAgICB9CisgICAgICAg
IGJyZWFrOwogICAgICAgICBjYXNlIE9QVVNfUkVTRVRfU1RBVEU6CiAgICAgICAgIHsKICAgICAg
ICAgICAgdm9pZCAqc2lsa19lbmM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX211bHRpc3RyZWFtX2Rl
Y29kZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc3JjL29wdXNfbXVsdGlzdHJlYW1fZGVjb2Rlci5jCmluZGV4IGI5NWVhYTZlYWMx
MmYwMzZhYjlmMGE0ZGU2NTYyMWJmNTdlNWI4YzAuLmU0MjE3MjZmMmI0MjdkZDJkZGQ0ZDIwZjFk
ZmI5OWMyYWZiNzAwOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfbXVsdGlzdHJlYW1fZGVjb2Rlci5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc3JjL29wdXNfbXVsdGlzdHJlYW1fZGVjb2Rlci5jCkBAIC0yMzcsNyArMjM3LDggQEAg
c3RhdGljIGludCBvcHVzX211bHRpc3RyZWFtX2RlY29kZV9uYXRpdmUoCiAgICBmb3IgKHM9MDtz
PHN0LT5sYXlvdXQubmJfc3RyZWFtcztzKyspCiAgICB7CiAgICAgICBPcHVzRGVjb2RlciAqZGVj
OwotICAgICAgaW50IHBhY2tldF9vZmZzZXQsIHJldDsKKyAgICAgIG9wdXNfaW50MzIgcGFja2V0
X29mZnNldDsKKyAgICAgIGludCByZXQ7CiAKICAgICAgIGRlYyA9IChPcHVzRGVjb2RlciopcHRy
OwogICAgICAgcHRyICs9IChzIDwgc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXMpID8gYWxp
Z24oY291cGxlZF9zaXplKSA6IGFsaWduKG1vbm9fc2l6ZSk7CkBAIC00MjUsNiArNDI2LDcgQEAg
aW50IG9wdXNfbXVsdGlzdHJlYW1fZGVjb2Rlcl9jdGwoT3B1c01TRGVjb2RlciAqc3QsIGludCBy
ZXF1ZXN0LCAuLi4pCiAgICAgICAgY2FzZSBPUFVTX0dFVF9TQU1QTEVfUkFURV9SRVFVRVNUOgog
ICAgICAgIGNhc2UgT1BVU19HRVRfR0FJTl9SRVFVRVNUOgogICAgICAgIGNhc2UgT1BVU19HRVRf
TEFTVF9QQUNLRVRfRFVSQVRJT05fUkVRVUVTVDoKKyAgICAgICBjYXNlIE9QVVNfR0VUX1BIQVNF
X0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUOgogICAgICAgIHsKICAgICAgICAgICBPcHVzRGVj
b2RlciAqZGVjOwogICAgICAgICAgIC8qIEZvciBpbnQzMiogR0VUIHBhcmFtcywganVzdCBxdWVy
eSB0aGUgZmlyc3Qgc3RyZWFtICovCkBAIC00OTksNiArNTAxLDcgQEAgaW50IG9wdXNfbXVsdGlz
dHJlYW1fZGVjb2Rlcl9jdGwoT3B1c01TRGVjb2RlciAqc3QsIGludCByZXF1ZXN0LCAuLi4pCiAg
ICAgICAgfQogICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgT1BVU19TRVRfR0FJTl9SRVFVRVNU
OgorICAgICAgIGNhc2UgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1Q6
CiAgICAgICAgewogICAgICAgICAgIGludCBzOwogICAgICAgICAgIC8qIFRoaXMgd29ya3MgZm9y
IGludDMyIHBhcmFtcyAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVy
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NyYy9vcHVzX211bHRpc3RyZWFtX2VuY29kZXIuYwppbmRleCBlNzIyZTMxYWI4ZWU5ZjEw
MjQyOTQ0OTU0ZWE2ZjVhYzIwMThhMTNiLi4wMzJmYzAwMzliOTEzMTJlNzU2YmY4OWM2YmYwZGUw
NTJmNjhhY2YxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX211bHRpc3RyZWFtX2VuY29kZXIuYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NyYy9vcHVzX211bHRpc3RyZWFtX2VuY29kZXIuYwpAQCAtODcsNyArODcsNiBAQCBzdHJ1Y3Qg
T3B1c01TRW5jb2RlciB7CiAgICBpbnQgdmFyaWFibGVfZHVyYXRpb247CiAgICBNYXBwaW5nVHlw
ZSBtYXBwaW5nX3R5cGU7CiAgICBvcHVzX2ludDMyIGJpdHJhdGVfYnBzOwotICAgZmxvYXQgc3Vi
ZnJhbWVfbWVtWzNdOwogICAgLyogRW5jb2RlciBzdGF0ZXMgZ28gaGVyZSAqLwogICAgLyogdGhl
biBvcHVzX3ZhbDMyIHdpbmRvd19tZW1bY2hhbm5lbHMqMTIwXTsgKi8KICAgIC8qIHRoZW4gb3B1
c192YWwzMiBwcmVlbXBoX21lbVtjaGFubmVsc107ICovCkBAIC0xMzMsNiArMTMyLDI5IEBAIHN0
YXRpYyBvcHVzX3ZhbDMyICptc19nZXRfd2luZG93X21lbShPcHVzTVNFbmNvZGVyICpzdCkKICAg
IHJldHVybiAob3B1c192YWwzMiopKHZvaWQqKXB0cjsKIH0KIAorI2lmZGVmIEVOQUJMRV9FWFBF
UklNRU5UQUxfQU1CSVNPTklDUworc3RhdGljIGludCB2YWxpZGF0ZV9hbWJpc29uaWNzKGludCBu
Yl9jaGFubmVscywgaW50ICpuYl9zdHJlYW1zLCBpbnQgKm5iX2NvdXBsZWRfc3RyZWFtcykKK3sK
KyAgIGludCBvcmRlcl9wbHVzX29uZTsKKyAgIGludCBhY25fY2hhbm5lbHM7CisgICBpbnQgbm9u
ZGllZ2V0aWNfY2hhbm5lbHM7CisKKyAgIG9yZGVyX3BsdXNfb25lID0gaXNxcnQzMihuYl9jaGFu
bmVscyk7CisgICBhY25fY2hhbm5lbHMgPSBvcmRlcl9wbHVzX29uZSAqIG9yZGVyX3BsdXNfb25l
OworICAgbm9uZGllZ2V0aWNfY2hhbm5lbHMgPSBuYl9jaGFubmVscyAtIGFjbl9jaGFubmVsczsK
KworICAgaWYgKG9yZGVyX3BsdXNfb25lIDwgMSB8fCBvcmRlcl9wbHVzX29uZSA+IDE1IHx8Cisg
ICAgICAgKG5vbmRpZWdldGljX2NoYW5uZWxzICE9IDAgJiYgbm9uZGllZ2V0aWNfY2hhbm5lbHMg
IT0gMikpCisgICAgICByZXR1cm4gMDsKKworICAgaWYgKG5iX3N0cmVhbXMpCisgICAgICAqbmJf
c3RyZWFtcyA9IGFjbl9jaGFubmVscyArIChub25kaWVnZXRpY19jaGFubmVscyAhPSAwKTsKKyAg
IGlmIChuYl9jb3VwbGVkX3N0cmVhbXMpCisgICAgICAqbmJfY291cGxlZF9zdHJlYW1zID0gbm9u
ZGllZ2V0aWNfY2hhbm5lbHMgIT0gMDsKKyAgIHJldHVybiAxOworfQorI2VuZGlmCisKIHN0YXRp
YyBpbnQgdmFsaWRhdGVfZW5jb2Rlcl9sYXlvdXQoY29uc3QgQ2hhbm5lbExheW91dCAqbGF5b3V0
KQogewogICAgaW50IHM7CkBAIC0yNDAsNiArMjYyLDcgQEAgdm9pZCBzdXJyb3VuZF9hbmFseXNp
cyhjb25zdCBDRUxUTW9kZSAqY2VsdF9tb2RlLCBjb25zdCB2b2lkICpwY20sIG9wdXNfdmFsMTYg
KmIKICAgIGludCBwb3NbOF0gPSB7MH07CiAgICBpbnQgdXBzYW1wbGU7CiAgICBpbnQgZnJhbWVf
c2l6ZTsKKyAgIGludCBmcmVxX3NpemU7CiAgICBvcHVzX3ZhbDE2IGNoYW5uZWxfb2Zmc2V0Owog
ICAgb3B1c192YWwzMiBiYW5kRVsyMV07CiAgICBvcHVzX3ZhbDE2IG1hc2tMb2dFWzNdWzIxXTsK
QEAgLTI1MCw2ICsyNzMsNyBAQCB2b2lkIHN1cnJvdW5kX2FuYWx5c2lzKGNvbnN0IENFTFRNb2Rl
ICpjZWx0X21vZGUsIGNvbnN0IHZvaWQgKnBjbSwgb3B1c192YWwxNiAqYgogCiAgICB1cHNhbXBs
ZSA9IHJlc2FtcGxpbmdfZmFjdG9yKHJhdGUpOwogICAgZnJhbWVfc2l6ZSA9IGxlbip1cHNhbXBs
ZTsKKyAgIGZyZXFfc2l6ZSA9IElNSU4oOTYwLCBmcmFtZV9zaXplKTsKIAogICAgLyogTE0gPSBs
b2cyKGZyYW1lX3NpemUgLyAxMjApICovCiAgICBmb3IgKExNPTA7TE08Y2VsdF9tb2RlLT5tYXhM
TTtMTSsrKQpAQCAtMjU4LDcgKzI4Miw3IEBAIHZvaWQgc3Vycm91bmRfYW5hbHlzaXMoY29uc3Qg
Q0VMVE1vZGUgKmNlbHRfbW9kZSwgY29uc3Qgdm9pZCAqcGNtLCBvcHVzX3ZhbDE2ICpiCiAKICAg
IEFMTE9DKGluLCBmcmFtZV9zaXplK292ZXJsYXAsIG9wdXNfdmFsMzIpOwogICAgQUxMT0MoeCwg
bGVuLCBvcHVzX3ZhbDE2KTsKLSAgIEFMTE9DKGZyZXEsIGZyYW1lX3NpemUsIG9wdXNfdmFsMzIp
OworICAgQUxMT0MoZnJlcSwgZnJlcV9zaXplLCBvcHVzX3ZhbDMyKTsKIAogICAgY2hhbm5lbF9w
b3MoY2hhbm5lbHMsIHBvcyk7CiAKQEAgLTI2OCw2ICsyOTIsOSBAQCB2b2lkIHN1cnJvdW5kX2Fu
YWx5c2lzKGNvbnN0IENFTFRNb2RlICpjZWx0X21vZGUsIGNvbnN0IHZvaWQgKnBjbSwgb3B1c192
YWwxNiAqYgogCiAgICBmb3IgKGM9MDtjPGNoYW5uZWxzO2MrKykKICAgIHsKKyAgICAgIGludCBm
cmFtZTsKKyAgICAgIGludCBuYl9mcmFtZXMgPSBmcmFtZV9zaXplL2ZyZXFfc2l6ZTsKKyAgICAg
IGNlbHRfYXNzZXJ0KG5iX2ZyYW1lcypmcmVxX3NpemUgPT0gZnJhbWVfc2l6ZSk7CiAgICAgICBP
UFVTX0NPUFkoaW4sIG1lbStjKm92ZXJsYXAsIG92ZXJsYXApOwogICAgICAgKCpjb3B5X2NoYW5u
ZWxfaW4pKHgsIDEsIHBjbSwgY2hhbm5lbHMsIGMsIGxlbik7CiAgICAgICBjZWx0X3ByZWVtcGhh
c2lzKHgsIGluK292ZXJsYXAsIGZyYW1lX3NpemUsIDEsIHVwc2FtcGxlLCBjZWx0X21vZGUtPnBy
ZWVtcGgsIHByZWVtcGhfbWVtK2MsIDApOwpAQCAtMjc3LDI1ICszMDQsMzMgQEAgdm9pZCBzdXJy
b3VuZF9hbmFseXNpcyhjb25zdCBDRUxUTW9kZSAqY2VsdF9tb2RlLCBjb25zdCB2b2lkICpwY20s
IG9wdXNfdmFsMTYgKmIKICAgICAgICAgIHN1bSA9IGNlbHRfaW5uZXJfcHJvZChpbiwgaW4sIGZy
YW1lX3NpemUrb3ZlcmxhcCwgMCk7CiAgICAgICAgICAvKiBUaGlzIHNob3VsZCBmaWx0ZXIgb3V0
IGJvdGggTmFOcyBhbmQgcmlkaWN1bG91cyBzaWduYWxzIHRoYXQgY291bGQKICAgICAgICAgICAg
IGNhdXNlIE5hTnMgZnVydGhlciBkb3duLiAqLwotICAgICAgICAgaWYgKCEoc3VtIDwgMWU5Zikg
fHwgY2VsdF9pc25hbihzdW0pKQorICAgICAgICAgaWYgKCEoc3VtIDwgMWUxOGYpIHx8IGNlbHRf
aXNuYW4oc3VtKSkKICAgICAgICAgIHsKICAgICAgICAgICAgIE9QVVNfQ0xFQVIoaW4sIGZyYW1l
X3NpemUrb3ZlcmxhcCk7CiAgICAgICAgICAgICBwcmVlbXBoX21lbVtjXSA9IDA7CiAgICAgICAg
ICB9CiAgICAgICB9CiAjZW5kaWYKLSAgICAgIGNsdF9tZGN0X2ZvcndhcmQoJmNlbHRfbW9kZS0+
bWRjdCwgaW4sIGZyZXEsIGNlbHRfbW9kZS0+d2luZG93LAotICAgICAgICAgICAgb3ZlcmxhcCwg
Y2VsdF9tb2RlLT5tYXhMTS1MTSwgMSwgYXJjaCk7Ci0gICAgICBpZiAodXBzYW1wbGUgIT0gMSkK
KyAgICAgIE9QVVNfQ0xFQVIoYmFuZEUsIDIxKTsKKyAgICAgIGZvciAoZnJhbWU9MDtmcmFtZTxu
Yl9mcmFtZXM7ZnJhbWUrKykKICAgICAgIHsKLSAgICAgICAgIGludCBib3VuZCA9IGxlbjsKLSAg
ICAgICAgIGZvciAoaT0wO2k8Ym91bmQ7aSsrKQotICAgICAgICAgICAgZnJlcVtpXSAqPSB1cHNh
bXBsZTsKLSAgICAgICAgIGZvciAoO2k8ZnJhbWVfc2l6ZTtpKyspCi0gICAgICAgICAgICBmcmVx
W2ldID0gMDsKLSAgICAgIH0KKyAgICAgICAgIG9wdXNfdmFsMzIgdG1wRVsyMV07CisgICAgICAg
ICBjbHRfbWRjdF9mb3J3YXJkKCZjZWx0X21vZGUtPm1kY3QsIGluKzk2MCpmcmFtZSwgZnJlcSwg
Y2VsdF9tb2RlLT53aW5kb3csCisgICAgICAgICAgICAgICBvdmVybGFwLCBjZWx0X21vZGUtPm1h
eExNLUxNLCAxLCBhcmNoKTsKKyAgICAgICAgIGlmICh1cHNhbXBsZSAhPSAxKQorICAgICAgICAg
eworICAgICAgICAgICAgaW50IGJvdW5kID0gZnJlcV9zaXplL3Vwc2FtcGxlOworICAgICAgICAg
ICAgZm9yIChpPTA7aTxib3VuZDtpKyspCisgICAgICAgICAgICAgICBmcmVxW2ldICo9IHVwc2Ft
cGxlOworICAgICAgICAgICAgZm9yICg7aTxmcmVxX3NpemU7aSsrKQorICAgICAgICAgICAgICAg
ZnJlcVtpXSA9IDA7CisgICAgICAgICB9CiAKLSAgICAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhj
ZWx0X21vZGUsIGZyZXEsIGJhbmRFLCAyMSwgMSwgTE0pOworICAgICAgICAgY29tcHV0ZV9iYW5k
X2VuZXJnaWVzKGNlbHRfbW9kZSwgZnJlcSwgdG1wRSwgMjEsIDEsIExNLCBhcmNoKTsKKyAgICAg
ICAgIC8qIElmIHdlIGhhdmUgbXVsdGlwbGUgZnJhbWVzLCB0YWtlIHRoZSBtYXggZW5lcmd5LiAq
LworICAgICAgICAgZm9yIChpPTA7aTwyMTtpKyspCisgICAgICAgICAgICBiYW5kRVtpXSA9IE1B
WDMyKGJhbmRFW2ldLCB0bXBFW2ldKTsKKyAgICAgIH0KICAgICAgIGFtcDJMb2cyKGNlbHRfbW9k
ZSwgMjEsIDIxLCBiYW5kRSwgYmFuZExvZ0UrMjEqYywgMSk7CiAgICAgICAvKiBBcHBseSBzcHJl
YWRpbmcgZnVuY3Rpb24gd2l0aCAtNiBkQi9iYW5kIGdvaW5nIHVwIGFuZCAtMTIgZEIvYmFuZCBn
b2luZyBkb3duLiAqLwogICAgICAgZm9yIChpPTE7aTwyMTtpKyspCkBAIC00MTEsOCArNDQ2LDgg
QEAgb3B1c19pbnQzMiBvcHVzX211bHRpc3RyZWFtX3N1cnJvdW5kX2VuY29kZXJfZ2V0X3NpemUo
aW50IGNoYW5uZWxzLCBpbnQgbWFwcGluZ18KICNpZmRlZiBFTkFCTEVfRVhQRVJJTUVOVEFMX0FN
QklTT05JQ1MKICAgIH0gZWxzZSBpZiAobWFwcGluZ19mYW1pbHk9PTI1NCkKICAgIHsKLSAgICAg
IG5iX3N0cmVhbXM9Y2hhbm5lbHM7Ci0gICAgICBuYl9jb3VwbGVkX3N0cmVhbXM9MDsKKyAgICAg
IGlmICghdmFsaWRhdGVfYW1iaXNvbmljcyhjaGFubmVscywgJm5iX3N0cmVhbXMsICZuYl9jb3Vw
bGVkX3N0cmVhbXMpKQorICAgICAgICAgcmV0dXJuIDA7CiAjZW5kaWYKICAgIH0gZWxzZQogICAg
ICAgcmV0dXJuIDA7CkBAIC00NDgsNyArNDgzLDYgQEAgc3RhdGljIGludCBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfaW5pdF9pbXBsKAogICAgc3QtPmxheW91dC5uYl9jaGFubmVscyA9IGNoYW5u
ZWxzOwogICAgc3QtPmxheW91dC5uYl9zdHJlYW1zID0gc3RyZWFtczsKICAgIHN0LT5sYXlvdXQu
bmJfY291cGxlZF9zdHJlYW1zID0gY291cGxlZF9zdHJlYW1zOwotICAgc3QtPnN1YmZyYW1lX21l
bVswXT1zdC0+c3ViZnJhbWVfbWVtWzFdPXN0LT5zdWJmcmFtZV9tZW1bMl09MDsKICAgIGlmICht
YXBwaW5nX3R5cGUgIT0gTUFQUElOR19UWVBFX1NVUlJPVU5EKQogICAgICAgc3QtPmxmZV9zdHJl
YW0gPSAtMTsKICAgIHN0LT5iaXRyYXRlX2JwcyA9IE9QVVNfQVVUTzsKQEAgLTQ1Niw4ICs0OTAs
MTYgQEAgc3RhdGljIGludCBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfaW5pdF9pbXBsKAogICAg
c3QtPnZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfQVJHOwogICAgZm9yIChpPTA7
aTxzdC0+bGF5b3V0Lm5iX2NoYW5uZWxzO2krKykKICAgICAgIHN0LT5sYXlvdXQubWFwcGluZ1tp
XSA9IG1hcHBpbmdbaV07Ci0gICBpZiAoIXZhbGlkYXRlX2xheW91dCgmc3QtPmxheW91dCkgfHwg
IXZhbGlkYXRlX2VuY29kZXJfbGF5b3V0KCZzdC0+bGF5b3V0KSkKKyAgIGlmICghdmFsaWRhdGVf
bGF5b3V0KCZzdC0+bGF5b3V0KSkKICAgICAgIHJldHVybiBPUFVTX0JBRF9BUkc7CisgICBpZiAo
bWFwcGluZ190eXBlID09IE1BUFBJTkdfVFlQRV9TVVJST1VORCAmJgorICAgICAgICF2YWxpZGF0
ZV9lbmNvZGVyX2xheW91dCgmc3QtPmxheW91dCkpCisgICAgICByZXR1cm4gT1BVU19CQURfQVJH
OworI2lmZGVmIEVOQUJMRV9FWFBFUklNRU5UQUxfQU1CSVNPTklDUworICAgaWYgKG1hcHBpbmdf
dHlwZSA9PSBNQVBQSU5HX1RZUEVfQU1CSVNPTklDUyAmJgorICAgICAgICF2YWxpZGF0ZV9hbWJp
c29uaWNzKHN0LT5sYXlvdXQubmJfY2hhbm5lbHMsIE5VTEwsIE5VTEwpKQorICAgICAgcmV0dXJu
IE9QVVNfQkFEX0FSRzsKKyNlbmRpZgogICAgcHRyID0gKGNoYXIqKXN0ICsgYWxpZ24oc2l6ZW9m
KE9wdXNNU0VuY29kZXIpKTsKICAgIGNvdXBsZWRfc2l6ZSA9IG9wdXNfZW5jb2Rlcl9nZXRfc2l6
ZSgyKTsKICAgIG1vbm9fc2l6ZSA9IG9wdXNfZW5jb2Rlcl9nZXRfc2l6ZSgxKTsKQEAgLTU1Mywx
MCArNTk1LDEyIEBAIGludCBvcHVzX211bHRpc3RyZWFtX3N1cnJvdW5kX2VuY29kZXJfaW5pdCgK
ICAgIH0gZWxzZSBpZiAobWFwcGluZ19mYW1pbHk9PTI1NCkKICAgIHsKICAgICAgIGludCBpOwot
ICAgICAgKnN0cmVhbXM9Y2hhbm5lbHM7Ci0gICAgICAqY291cGxlZF9zdHJlYW1zPTA7Ci0gICAg
ICBmb3IoaT0wO2k8Y2hhbm5lbHM7aSsrKQotICAgICAgICAgbWFwcGluZ1tpXSA9IGk7CisgICAg
ICBpZiAoIXZhbGlkYXRlX2FtYmlzb25pY3MoY2hhbm5lbHMsIHN0cmVhbXMsIGNvdXBsZWRfc3Ry
ZWFtcykpCisgICAgICAgICByZXR1cm4gT1BVU19CQURfQVJHOworICAgICAgZm9yKGkgPSAwOyBp
IDwgKCpzdHJlYW1zIC0gKmNvdXBsZWRfc3RyZWFtcyk7IGkrKykKKyAgICAgICAgIG1hcHBpbmdb
aV0gPSBpICsgKCpjb3VwbGVkX3N0cmVhbXMgKiAyKTsKKyAgICAgIGZvcihpID0gMDsgaSA8ICpj
b3VwbGVkX3N0cmVhbXMgKiAyOyBpKyspCisgICAgICAgICBtYXBwaW5nW2kgKyAoKnN0cmVhbXMg
LSAqY291cGxlZF9zdHJlYW1zKV0gPSBpOwogI2VuZGlmCiAgICB9IGVsc2UKICAgICAgIHJldHVy
biBPUFVTX1VOSU1QTEVNRU5URUQ7CkBAIC02NzIsNTggKzcxNiw1OSBAQCBzdGF0aWMgdm9pZCBz
dXJyb3VuZF9yYXRlX2FsbG9jYXRpb24oCiAgICBpbnQgbGZlX29mZnNldDsKICAgIGludCBjb3Vw
bGVkX3JhdGlvOyAvKiBROCAqLwogICAgaW50IGxmZV9yYXRpbzsgICAgIC8qIFE4ICovCisgICBp
bnQgbmJfbGZlOworICAgaW50IG5iX3VuY291cGxlZDsKKyAgIGludCBuYl9jb3VwbGVkOworICAg
aW50IG5iX25vcm1hbDsKKyAgIG9wdXNfaW50MzIgY2hhbm5lbF9vZmZzZXQ7CisgICBvcHVzX2lu
dDMyIGJpdHJhdGU7CisgICBpbnQgdG90YWw7CisKKyAgIG5iX2xmZSA9IChzdC0+bGZlX3N0cmVh
bSE9LTEpOworICAgbmJfY291cGxlZCA9IHN0LT5sYXlvdXQubmJfY291cGxlZF9zdHJlYW1zOwor
ICAgbmJfdW5jb3VwbGVkID0gc3QtPmxheW91dC5uYl9zdHJlYW1zLW5iX2NvdXBsZWQtbmJfbGZl
OworICAgbmJfbm9ybWFsID0gMipuYl9jb3VwbGVkICsgbmJfdW5jb3VwbGVkOworCisgICAvKiBH
aXZlIGVhY2ggbm9uLUxGRSBjaGFubmVsIGVub3VnaCBiaXRzIHBlciBjaGFubmVsIGZvciBjb2Rp
bmcgYmFuZCBlbmVyZ3kuICovCisgICBjaGFubmVsX29mZnNldCA9IDQwKklNQVgoNTAsIEZzL2Zy
YW1lX3NpemUpOwogCi0gICBpZiAoc3QtPmJpdHJhdGVfYnBzID4gc3QtPmxheW91dC5uYl9jaGFu
bmVscyo0MDAwMCkKLSAgICAgIHN0cmVhbV9vZmZzZXQgPSAyMDAwMDsKLSAgIGVsc2UKLSAgICAg
IHN0cmVhbV9vZmZzZXQgPSBzdC0+Yml0cmF0ZV9icHMvc3QtPmxheW91dC5uYl9jaGFubmVscy8y
OwotICAgc3RyZWFtX29mZnNldCArPSA2MCooRnMvZnJhbWVfc2l6ZS01MCk7Ci0gICAvKiBXZSBz
dGFydCBieSBnaXZpbmcgZWFjaCBzdHJlYW0gKGNvdXBsZWQgb3IgdW5jb3VwbGVkKSB0aGUgc2Ft
ZSBiaXRyYXRlLgotICAgICAgVGhpcyBtb2RlbHMgdGhlIG1haW4gc2F2aW5nIG9mIGNvdXBsZWQg
Y2hhbm5lbHMgb3ZlciB1bmNvdXBsZWQuICovCi0gICAvKiBUaGUgTEZFIHN0cmVhbSBpcyBhbiBl
eGNlcHRpb24gdG8gdGhlIGFib3ZlIGFuZCBnZXRzIGZld2VyIGJpdHMuICovCi0gICBsZmVfb2Zm
c2V0ID0gMzUwMCArIDYwKihGcy9mcmFtZV9zaXplLTUwKTsKLSAgIC8qIENvdXBsZWQgc3RyZWFt
cyBnZXQgdHdpY2UgdGhlIG1vbm8gcmF0ZSBhZnRlciB0aGUgZmlyc3QgMjAga2Ivcy4gKi8KLSAg
IGNvdXBsZWRfcmF0aW8gPSA1MTI7Ci0gICAvKiBTaG91bGQgZGVwZW5kIG9uIHRoZSBiaXRyYXRl
LCBmb3Igbm93IHdlIGFzc3VtZSBMRkUgZ2V0cyAxLzggdGhlIGJpdHMgb2YgbW9ubyAqLwotICAg
bGZlX3JhdGlvID0gMzI7Ci0KLSAgIC8qIENvbXB1dGUgYml0cmF0ZSBhbGxvY2F0aW9uIGJldHdl
ZW4gc3RyZWFtcyAqLwogICAgaWYgKHN0LT5iaXRyYXRlX2Jwcz09T1BVU19BVVRPKQogICAgewot
ICAgICAgY2hhbm5lbF9yYXRlID0gRnMrNjAqRnMvZnJhbWVfc2l6ZTsKKyAgICAgIGJpdHJhdGUg
PSBuYl9ub3JtYWwqKGNoYW5uZWxfb2Zmc2V0ICsgRnMgKyAxMDAwMCkgKyA4MDAwKm5iX2xmZTsK
ICAgIH0gZWxzZSBpZiAoc3QtPmJpdHJhdGVfYnBzPT1PUFVTX0JJVFJBVEVfTUFYKQogICAgewot
ICAgICAgY2hhbm5lbF9yYXRlID0gMzAwMDAwOworICAgICAgYml0cmF0ZSA9IG5iX25vcm1hbCoz
MDAwMDAgKyBuYl9sZmUqMTI4MDAwOwogICAgfSBlbHNlIHsKLSAgICAgIGludCBuYl9sZmU7Ci0g
ICAgICBpbnQgbmJfdW5jb3VwbGVkOwotICAgICAgaW50IG5iX2NvdXBsZWQ7Ci0gICAgICBpbnQg
dG90YWw7Ci0gICAgICBuYl9sZmUgPSAoc3QtPmxmZV9zdHJlYW0hPS0xKTsKLSAgICAgIG5iX2Nv
dXBsZWQgPSBzdC0+bGF5b3V0Lm5iX2NvdXBsZWRfc3RyZWFtczsKLSAgICAgIG5iX3VuY291cGxl
ZCA9IHN0LT5sYXlvdXQubmJfc3RyZWFtcy1uYl9jb3VwbGVkLW5iX2xmZTsKLSAgICAgIHRvdGFs
ID0gKG5iX3VuY291cGxlZDw8OCkgICAgICAgICAvKiBtb25vICovCi0gICAgICAgICAgICArIGNv
dXBsZWRfcmF0aW8qbmJfY291cGxlZCAvKiBzdGVyZW8gKi8KLSAgICAgICAgICAgICsgbmJfbGZl
KmxmZV9yYXRpbzsKLSAgICAgIGNoYW5uZWxfcmF0ZSA9IDI1Niooc3QtPmJpdHJhdGVfYnBzLWxm
ZV9vZmZzZXQqbmJfbGZlLXN0cmVhbV9vZmZzZXQqKG5iX2NvdXBsZWQrbmJfdW5jb3VwbGVkKSkv
dG90YWw7CisgICAgICBiaXRyYXRlID0gc3QtPmJpdHJhdGVfYnBzOwogICAgfQotI2lmbmRlZiBG
SVhFRF9QT0lOVAotICAgaWYgKHN0LT52YXJpYWJsZV9kdXJhdGlvbj09T1BVU19GUkFNRVNJWkVf
VkFSSUFCTEUgJiYgZnJhbWVfc2l6ZSAhPSBGcy81MCkKLSAgIHsKLSAgICAgIG9wdXNfaW50MzIg
Ym9udXM7Ci0gICAgICBib251cyA9IDYwKihGcy9mcmFtZV9zaXplLTUwKTsKLSAgICAgIGNoYW5u
ZWxfcmF0ZSArPSBib251czsKLSAgIH0KLSNlbmRpZgorCisgICAvKiBHaXZlIExGRSBzb21lIGJh
c2ljIHN0cmVhbV9jaGFubmVsIGFsbG9jYXRpb24gYnV0IG5ldmVyIGV4Y2VlZCAxLzIwIG9mIHRo
ZQorICAgICAgdG90YWwgcmF0ZSBmb3IgdGhlIG5vbi1lbmVyZ3kgcGFydCB0byBhdm9pZCBwcm9i
bGVtcyBhdCByZWFsbHkgbG93IHJhdGUuICovCisgICBsZmVfb2Zmc2V0ID0gSU1JTihiaXRyYXRl
LzIwLCAzMDAwKSArIDE1KklNQVgoNTAsIEZzL2ZyYW1lX3NpemUpOworCisgICAvKiBXZSBnaXZl
IGVhY2ggc3RyZWFtIChjb3VwbGVkIG9yIHVuY291cGxlZCkgYSBzdGFydGluZyBiaXRyYXRlLgor
ICAgICAgVGhpcyBtb2RlbHMgdGhlIG1haW4gc2F2aW5nIG9mIGNvdXBsZWQgY2hhbm5lbHMgb3Zl
ciB1bmNvdXBsZWQuICovCisgICBzdHJlYW1fb2Zmc2V0ID0gKGJpdHJhdGUgLSBjaGFubmVsX29m
ZnNldCpuYl9ub3JtYWwgLSBsZmVfb2Zmc2V0Km5iX2xmZSkvbmJfbm9ybWFsLzI7CisgICBzdHJl
YW1fb2Zmc2V0ID0gSU1BWCgwLCBJTUlOKDIwMDAwLCBzdHJlYW1fb2Zmc2V0KSk7CisKKyAgIC8q
IENvdXBsZWQgc3RyZWFtcyBnZXQgdHdpY2UgdGhlIG1vbm8gcmF0ZSBhZnRlciB0aGUgb2Zmc2V0
IGlzIGFsbG9jYXRlZC4gKi8KKyAgIGNvdXBsZWRfcmF0aW8gPSA1MTI7CisgICAvKiBTaG91bGQg
ZGVwZW5kIG9uIHRoZSBiaXRyYXRlLCBmb3Igbm93IHdlIGFzc3VtZSBMRkUgZ2V0cyAxLzggdGhl
IGJpdHMgb2YgbW9ubyAqLworICAgbGZlX3JhdGlvID0gMzI7CisKKyAgIHRvdGFsID0gKG5iX3Vu
Y291cGxlZDw8OCkgICAgICAgICAvKiBtb25vICovCisgICAgICAgICArIGNvdXBsZWRfcmF0aW8q
bmJfY291cGxlZCAvKiBzdGVyZW8gKi8KKyAgICAgICAgICsgbmJfbGZlKmxmZV9yYXRpbzsKKyAg
IGNoYW5uZWxfcmF0ZSA9IDI1Nioob3B1c19pbnQ2NCkoYml0cmF0ZSAtIGxmZV9vZmZzZXQqbmJf
bGZlIC0gc3RyZWFtX29mZnNldCoobmJfY291cGxlZCtuYl91bmNvdXBsZWQpIC0gY2hhbm5lbF9v
ZmZzZXQqbmJfbm9ybWFsKS90b3RhbDsKIAogICAgZm9yIChpPTA7aTxzdC0+bGF5b3V0Lm5iX3N0
cmVhbXM7aSsrKQogICAgewogICAgICAgaWYgKGk8c3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVh
bXMpCi0gICAgICAgICByYXRlW2ldID0gc3RyZWFtX29mZnNldCsoY2hhbm5lbF9yYXRlKmNvdXBs
ZWRfcmF0aW8+PjgpOworICAgICAgICAgcmF0ZVtpXSA9IDIqY2hhbm5lbF9vZmZzZXQgKyBJTUFY
KDAsIHN0cmVhbV9vZmZzZXQrKGNoYW5uZWxfcmF0ZSpjb3VwbGVkX3JhdGlvPj44KSk7CiAgICAg
ICBlbHNlIGlmIChpIT1zdC0+bGZlX3N0cmVhbSkKLSAgICAgICAgIHJhdGVbaV0gPSBzdHJlYW1f
b2Zmc2V0K2NoYW5uZWxfcmF0ZTsKKyAgICAgICAgIHJhdGVbaV0gPSBjaGFubmVsX29mZnNldCAr
IElNQVgoMCwgc3RyZWFtX29mZnNldCArIGNoYW5uZWxfcmF0ZSk7CiAgICAgICBlbHNlCi0gICAg
ICAgICByYXRlW2ldID0gbGZlX29mZnNldCsoY2hhbm5lbF9yYXRlKmxmZV9yYXRpbz4+OCk7Cisg
ICAgICAgICByYXRlW2ldID0gSU1BWCgwLCBsZmVfb2Zmc2V0KyhjaGFubmVsX3JhdGUqbGZlX3Jh
dGlvPj44KSk7CiAgICB9CiB9CiAKQEAgLTczNiw0NyArNzgxLDcyIEBAIHN0YXRpYyB2b2lkIGFt
Ymlzb25pY3NfcmF0ZV9hbGxvY2F0aW9uKAogICAgICAgKQogewogICAgaW50IGk7Ci0gICBpbnQg
bm9uX21vbm9fcmF0ZTsKICAgIGludCB0b3RhbF9yYXRlOworICAgaW50IGRpcmVjdGlvbmFsX3Jh
dGU7CisgICBpbnQgbm9uZGlyZWN0aW9uYWxfcmF0ZTsKKyAgIGludCBsZWZ0b3Zlcl9iaXRzOwog
Ci0gICAvKiBUaGUgbW9ubyBjaGFubmVsIGdldHMgKHJhdGVfcmF0aW9fbnVtIC8gcmF0ZV9yYXRp
b19kZW4pIHRpbWVzIGFzIG1hbnkgYml0cwotICAgICogYXMgYWxsIG90aGVyIGNoYW5uZWxzICov
CisgICAvKiBFYWNoIG5vbmRpcmVjdGlvbmFsIGNoYW5uZWwgZ2V0cyAocmF0ZV9yYXRpb19udW0g
LyByYXRlX3JhdGlvX2RlbikgdGltZXMKKyAgICAqIGFzIG1hbnkgYml0cyBhcyBhbGwgb3RoZXIg
YW1iaXNvbmljcyBjaGFubmVscy4KKyAgICAqLwogICAgY29uc3QgaW50IHJhdGVfcmF0aW9fbnVt
ID0gNDsKICAgIGNvbnN0IGludCByYXRlX3JhdGlvX2RlbiA9IDM7Ci0gICBjb25zdCBpbnQgbnVt
X2NoYW5uZWxzID0gc3QtPmxheW91dC5uYl9zdHJlYW1zOworICAgY29uc3QgaW50IG5iX2NoYW5u
ZWxzID0gc3QtPmxheW91dC5uYl9zdHJlYW1zICsgc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVh
bXM7CisgICBjb25zdCBpbnQgbmJfbm9uZGlyZWN0aW9uYWxfY2hhbm5lbHMgPSBzdC0+bGF5b3V0
Lm5iX2NvdXBsZWRfc3RyZWFtcyAqIDIgKyAxOworICAgY29uc3QgaW50IG5iX2RpcmVjdGlvbmFs
X2NoYW5uZWxzID0gc3QtPmxheW91dC5uYl9zdHJlYW1zIC0gMTsKIAogICAgaWYgKHN0LT5iaXRy
YXRlX2Jwcz09T1BVU19BVVRPKQogICAgewotICAgICAgdG90YWxfcmF0ZSA9IG51bV9jaGFubmVs
cyAqICgyMDAwMCArIHN0LT5sYXlvdXQubmJfc3RyZWFtcyooRnMrNjAqRnMvZnJhbWVfc2l6ZSkp
OworICAgICAgdG90YWxfcmF0ZSA9IChzdC0+bGF5b3V0Lm5iX2NvdXBsZWRfc3RyZWFtcyArIHN0
LT5sYXlvdXQubmJfc3RyZWFtcykgKgorICAgICAgICAgKEZzKzYwKkZzL2ZyYW1lX3NpemUpICsg
c3QtPmxheW91dC5uYl9zdHJlYW1zICogMTUwMDA7CiAgICB9IGVsc2UgaWYgKHN0LT5iaXRyYXRl
X2Jwcz09T1BVU19CSVRSQVRFX01BWCkKICAgIHsKLSAgICAgIHRvdGFsX3JhdGUgPSBudW1fY2hh
bm5lbHMgKiAzMjAwMDA7Ci0gICB9IGVsc2UgeworICAgICAgdG90YWxfcmF0ZSA9IG5iX2NoYW5u
ZWxzICogMzIwMDAwOworICAgfSBlbHNlCisgICB7CiAgICAgICB0b3RhbF9yYXRlID0gc3QtPmJp
dHJhdGVfYnBzOwogICAgfQogCi0gICAvKiBMZXQgeSBiZSB0aGUgbm9uLW1vbm8gcmF0ZSBhbmQg
bGV0IHAsIHEgYmUgaW50ZWdlcnMgc3VjaCB0aGF0IHRoZSBtb25vCi0gICAgKiBjaGFubmVsIHJh
dGUgaXMgKHAvcSkgKiB5LgorICAgLyogTGV0IHkgYmUgdGhlIGRpcmVjdGlvbmFsIHJhdGUsIG0g
YmUgdGhlIG51bSBvZiBub25kaXJlY3Rpb25hbCBjaGFubmVscworICAgICogICBtID0gKHMgKyAx
KQorICAgICogYW5kIGxldCBwLCBxIGJlIGludGVnZXJzIHN1Y2ggdGhhdCB0aGUgbm9uZGlyZWN0
aW9uYWwgcmF0ZSBpcworICAgICogICBtX3JhdGUgPSAocCAvIHEpICogeQogICAgICogQWxzbyBs
ZXQgVCBiZSB0aGUgdG90YWwgYml0cmF0ZSB0byBhbGxvY2F0ZS4gVGhlbgotICAgICogICAobiAt
IDEpIHkgKyAocC9xKSB5ID0gVAotICAgICogICB5ID0gKFQgcSkgLyAocW4gLSBxICsgcCkKKyAg
ICAqICAgVCA9IChuIC0gbSkgKiB5ICsgbSAqIG1fcmF0ZQorICAgICogU29sdmluZyBmb3IgeSwK
KyAgICAqICAgeSA9IChxICogVCkgLyAobSAqIChwIC0gcSkgKyBuICogcSkKICAgICAqLwotICAg
bm9uX21vbm9fcmF0ZSA9Ci0gICAgICAgICB0b3RhbF9yYXRlICogcmF0ZV9yYXRpb19kZW4KLSAg
ICAgICAgIC8gKHJhdGVfcmF0aW9fZGVuKm51bV9jaGFubmVscyArIHJhdGVfcmF0aW9fbnVtIC0g
cmF0ZV9yYXRpb19kZW4pOworICAgZGlyZWN0aW9uYWxfcmF0ZSA9CisgICAgICB0b3RhbF9yYXRl
ICogcmF0ZV9yYXRpb19kZW4KKyAgICAgIC8gKG5iX25vbmRpcmVjdGlvbmFsX2NoYW5uZWxzICog
KHJhdGVfcmF0aW9fbnVtIC0gcmF0ZV9yYXRpb19kZW4pCisgICAgICAgKyBuYl9jaGFubmVscyAq
IHJhdGVfcmF0aW9fZGVuKTsKIAotI2lmbmRlZiBGSVhFRF9QT0lOVAotICAgaWYgKHN0LT52YXJp
YWJsZV9kdXJhdGlvbj09T1BVU19GUkFNRVNJWkVfVkFSSUFCTEUgJiYgZnJhbWVfc2l6ZSAhPSBG
cy81MCkKLSAgIHsKLSAgICAgIG9wdXNfaW50MzIgYm9udXMgPSA2MCooRnMvZnJhbWVfc2l6ZS01
MCk7Ci0gICAgICBub25fbW9ub19yYXRlICs9IGJvbnVzOwotICAgfQotI2VuZGlmCisgICAvKiBD
YWxjdWxhdGUgdGhlIG5vbmRpcmVjdGlvbmFsIHJhdGUuCisgICAgKiAgIG1fcmF0ZSA9IHkgKiAo
cCAvIHEpCisgICAgKi8KKyAgIG5vbmRpcmVjdGlvbmFsX3JhdGUgPSBkaXJlY3Rpb25hbF9yYXRl
ICogcmF0ZV9yYXRpb19udW0gLyByYXRlX3JhdGlvX2RlbjsKIAotICAgcmF0ZVswXSA9IHRvdGFs
X3JhdGUgLSAobnVtX2NoYW5uZWxzIC0gMSkgKiBub25fbW9ub19yYXRlOwotICAgZm9yIChpPTE7
aTxzdC0+bGF5b3V0Lm5iX3N0cmVhbXM7aSsrKQorICAgLyogQ2FsY3VsYXRlIHRoZSBsZWZ0b3Zl
ciBmcm9tIHRydW5jYXRpb24gZXJyb3IuCisgICAgKiAgIGxlZnRvdmVyID0gVCAtIHkgKiAobiAt
IG0pIC0gbV9yYXRlICogbQorICAgICogUGxhY2UgbGVmdG92ZXIgYml0cyBpbiBvbW5pZGlyZWN0
aW9uYWwgY2hhbm5lbC4KKyAgICAqLworICAgbGVmdG92ZXJfYml0cyA9IHRvdGFsX3JhdGUKKyAg
ICAgIC0gZGlyZWN0aW9uYWxfcmF0ZSAqIG5iX2RpcmVjdGlvbmFsX2NoYW5uZWxzCisgICAgICAt
IG5vbmRpcmVjdGlvbmFsX3JhdGUgKiBuYl9ub25kaXJlY3Rpb25hbF9jaGFubmVsczsKKworICAg
LyogQ2FsY3VsYXRlIHJhdGVzIGZvciBlYWNoIGNoYW5uZWwgKi8KKyAgIGZvciAoaSA9IDA7IGkg
PCBzdC0+bGF5b3V0Lm5iX3N0cmVhbXM7IGkrKykKICAgIHsKLSAgICAgIHJhdGVbaV0gPSBub25f
bW9ub19yYXRlOworICAgICAgaWYgKGkgPCBzdC0+bGF5b3V0Lm5iX2NvdXBsZWRfc3RyZWFtcykK
KyAgICAgIHsKKyAgICAgICAgIHJhdGVbaV0gPSBub25kaXJlY3Rpb25hbF9yYXRlICogMjsKKyAg
ICAgIH0gZWxzZSBpZiAoaSA9PSBzdC0+bGF5b3V0Lm5iX2NvdXBsZWRfc3RyZWFtcykKKyAgICAg
IHsKKyAgICAgICAgIHJhdGVbaV0gPSBub25kaXJlY3Rpb25hbF9yYXRlICsgbGVmdG92ZXJfYml0
czsKKyAgICAgIH0gZWxzZQorICAgICAgeworICAgICAgICAgcmF0ZVtpXSA9IGRpcmVjdGlvbmFs
X3JhdGU7CisgICAgICB9CiAgICB9CiB9CiAjZW5kaWYgLyogRU5BQkxFX0VYUEVSSU1FTlRBTF9B
TUJJU09OSUNTICovCkBAIC04MTIsOCArODgyLDggQEAgc3RhdGljIG9wdXNfaW50MzIgcmF0ZV9h
bGxvY2F0aW9uKAogICAgcmV0dXJuIHJhdGVfc3VtOwogfQogCi0vKiBNYXggc2l6ZSBpbiBjYXNl
IHRoZSBlbmNvZGVyIGRlY2lkZXMgdG8gcmV0dXJuIHRocmVlIGZyYW1lcyAqLwotI2RlZmluZSBN
U19GUkFNRV9UTVAgKDMqMTI3NSs3KQorLyogTWF4IHNpemUgaW4gY2FzZSB0aGUgZW5jb2RlciBk
ZWNpZGVzIHRvIHJldHVybiBzaXggZnJhbWVzICg2IHggMjAgbXMgPSAxMjAgbXMpICovCisjZGVm
aW5lIE1TX0ZSQU1FX1RNUCAoNioxMjc1KzEyKQogc3RhdGljIGludCBvcHVzX211bHRpc3RyZWFt
X2VuY29kZV9uYXRpdmUKICgKICAgICBPcHVzTVNFbmNvZGVyICpzdCwKQEAgLTg1OSwzMiArOTI5
LDggQEAgc3RhdGljIGludCBvcHVzX211bHRpc3RyZWFtX2VuY29kZV9uYXRpdmUKICAgIG9wdXNf
ZW5jb2Rlcl9jdGwoKE9wdXNFbmNvZGVyKilwdHIsIE9QVVNfR0VUX1ZCUigmdmJyKSk7CiAgICBv
cHVzX2VuY29kZXJfY3RsKChPcHVzRW5jb2RlciopcHRyLCBDRUxUX0dFVF9NT0RFKCZjZWx0X21v
ZGUpKTsKIAotICAgewotICAgICAgb3B1c19pbnQzMiBkZWxheV9jb21wZW5zYXRpb247Ci0gICAg
ICBpbnQgY2hhbm5lbHM7Ci0KLSAgICAgIGNoYW5uZWxzID0gc3QtPmxheW91dC5uYl9zdHJlYW1z
ICsgc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXM7Ci0gICAgICBvcHVzX2VuY29kZXJfY3Rs
KChPcHVzRW5jb2RlciopcHRyLCBPUFVTX0dFVF9MT09LQUhFQUQoJmRlbGF5X2NvbXBlbnNhdGlv
bikpOwotICAgICAgZGVsYXlfY29tcGVuc2F0aW9uIC09IEZzLzQwMDsKLSAgICAgIGZyYW1lX3Np
emUgPSBjb21wdXRlX2ZyYW1lX3NpemUocGNtLCBhbmFseXNpc19mcmFtZV9zaXplLAotICAgICAg
ICAgICAgc3QtPnZhcmlhYmxlX2R1cmF0aW9uLCBjaGFubmVscywgRnMsIHN0LT5iaXRyYXRlX2Jw
cywKLSAgICAgICAgICAgIGRlbGF5X2NvbXBlbnNhdGlvbiwgZG93bm1peAotI2lmbmRlZiBESVNB
QkxFX0ZMT0FUX0FQSQotICAgICAgICAgICAgLCBzdC0+c3ViZnJhbWVfbWVtCi0jZW5kaWYKLSAg
ICAgICAgICAgICk7Ci0gICB9Ci0KLSAgIGlmICg0MDAqZnJhbWVfc2l6ZSA8IEZzKQotICAgewot
ICAgICAgUkVTVE9SRV9TVEFDSzsKLSAgICAgIHJldHVybiBPUFVTX0JBRF9BUkc7Ci0gICB9Ci0g
ICAvKiBWYWxpZGF0ZSBmcmFtZV9zaXplIGJlZm9yZSB1c2luZyBpdCB0byBhbGxvY2F0ZSBzdGFj
ayBzcGFjZS4KLSAgICAgIFRoaXMgbWlycm9ycyB0aGUgY2hlY2tzIGluIG9wdXNfZW5jb2RlW19m
bG9hdF0oKS4gKi8KLSAgIGlmICg0MDAqZnJhbWVfc2l6ZSAhPSBGcyAmJiAyMDAqZnJhbWVfc2l6
ZSAhPSBGcyAmJgotICAgICAgIDEwMCpmcmFtZV9zaXplICE9IEZzICYmICA1MCpmcmFtZV9zaXpl
ICE9IEZzICYmCi0gICAgICAgIDI1KmZyYW1lX3NpemUgIT0gRnMgJiYgIDUwKmZyYW1lX3NpemUg
IT0gMypGcykKKyAgIGZyYW1lX3NpemUgPSBmcmFtZV9zaXplX3NlbGVjdChhbmFseXNpc19mcmFt
ZV9zaXplLCBzdC0+dmFyaWFibGVfZHVyYXRpb24sIEZzKTsKKyAgIGlmIChmcmFtZV9zaXplIDw9
IDApCiAgICB7CiAgICAgICBSRVNUT1JFX1NUQUNLOwogICAgICAgcmV0dXJuIE9QVVNfQkFEX0FS
RzsKQEAgLTg5Miw2ICs5MzgsOSBAQCBzdGF0aWMgaW50IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
X25hdGl2ZQogCiAgICAvKiBTbWFsbGVzdCBwYWNrZXQgdGhlIGVuY29kZXIgY2FuIHByb2R1Y2Uu
ICovCiAgICBzbWFsbGVzdF9wYWNrZXQgPSBzdC0+bGF5b3V0Lm5iX3N0cmVhbXMqMi0xOworICAg
LyogMTAwIG1zIG5lZWRzIGFuIGV4dHJhIGJ5dGUgcGVyIHN0cmVhbSBmb3IgdGhlIFRvQy4gKi8K
KyAgIGlmIChGcy9mcmFtZV9zaXplID09IDEwKQorICAgICBzbWFsbGVzdF9wYWNrZXQgKz0gc3Qt
PmxheW91dC5uYl9zdHJlYW1zOwogICAgaWYgKG1heF9kYXRhX2J5dGVzIDwgc21hbGxlc3RfcGFj
a2V0KQogICAgewogICAgICAgUkVTVE9SRV9TVEFDSzsKQEAgLTEwMTMsNiArMTA2Miw5IEBAIHN0
YXRpYyBpbnQgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVfbmF0aXZlCiAgICAgICBjdXJyX21heCA9
IG1heF9kYXRhX2J5dGVzIC0gdG90X3NpemU7CiAgICAgICAvKiBSZXNlcnZlIG9uZSBieXRlIGZv
ciB0aGUgbGFzdCBzdHJlYW0gYW5kIHR3byBmb3IgdGhlIG90aGVycyAqLwogICAgICAgY3Vycl9t
YXggLT0gSU1BWCgwLDIqKHN0LT5sYXlvdXQubmJfc3RyZWFtcy1zLTEpLTEpOworICAgICAgLyog
Rm9yIDEwMCBtcywgcmVzZXJ2ZSBhbiBleHRyYSBieXRlIHBlciBzdHJlYW0gZm9yIHRoZSBUb0Mg
Ki8KKyAgICAgIGlmIChGcy9mcmFtZV9zaXplID09IDEwKQorICAgICAgICBjdXJyX21heCAtPSBz
dC0+bGF5b3V0Lm5iX3N0cmVhbXMtcy0xOwogICAgICAgY3Vycl9tYXggPSBJTUlOKGN1cnJfbWF4
LE1TX0ZSQU1FX1RNUCk7CiAgICAgICAvKiBSZXBhY2tldGl6ZXIgd2lsbCBhZGQgb25lIG9yIHR3
byBieXRlcyBmb3Igc2VsZi1kZWxpbWl0ZWQgZnJhbWVzICovCiAgICAgICBpZiAocyAhPSBzdC0+
bGF5b3V0Lm5iX3N0cmVhbXMtMSkgY3Vycl9tYXggLT0gIGN1cnJfbWF4PjI1MyA/IDIgOiAxOwpA
QCAtMTE2MSw5ICsxMjEzLDExIEBAIGludCBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKE9w
dXNNU0VuY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgY2FzZSBPUFVTX1NFVF9CSVRS
QVRFX1JFUVVFU1Q6CiAgICB7CiAgICAgICBvcHVzX2ludDMyIHZhbHVlID0gdmFfYXJnKGFwLCBv
cHVzX2ludDMyKTsKLSAgICAgIGlmICh2YWx1ZTwwICYmIHZhbHVlIT1PUFVTX0FVVE8gJiYgdmFs
dWUhPU9QVVNfQklUUkFURV9NQVgpCisgICAgICBpZiAodmFsdWUgIT0gT1BVU19BVVRPICYmIHZh
bHVlICE9IE9QVVNfQklUUkFURV9NQVgpCiAgICAgICB7Ci0gICAgICAgICBnb3RvIGJhZF9hcmc7
CisgICAgICAgICBpZiAodmFsdWUgPD0gMCkKKyAgICAgICAgICAgIGdvdG8gYmFkX2FyZzsKKyAg
ICAgICAgIHZhbHVlID0gSU1JTigzMDAwMDAqc3QtPmxheW91dC5uYl9jaGFubmVscywgSU1BWCg1
MDAqc3QtPmxheW91dC5uYl9jaGFubmVscywgdmFsdWUpKTsKICAgICAgIH0KICAgICAgIHN0LT5i
aXRyYXRlX2JwcyA9IHZhbHVlOwogICAgfQpAQCAtMTIwNiw2ICsxMjYwLDcgQEAgaW50IG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoT3B1c01TRW5jb2RlciAqc3QsIGludCByZXF1ZXN0LCAu
Li4pCiAgICBjYXNlIE9QVVNfR0VUX0lOQkFORF9GRUNfUkVRVUVTVDoKICAgIGNhc2UgT1BVU19H
RVRfRk9SQ0VfQ0hBTk5FTFNfUkVRVUVTVDoKICAgIGNhc2UgT1BVU19HRVRfUFJFRElDVElPTl9E
SVNBQkxFRF9SRVFVRVNUOgorICAgY2FzZSBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJM
RURfUkVRVUVTVDoKICAgIHsKICAgICAgIE9wdXNFbmNvZGVyICplbmM7CiAgICAgICAvKiBGb3Ig
aW50MzIqIEdFVCBwYXJhbXMsIGp1c3QgcXVlcnkgdGhlIGZpcnN0IHN0cmVhbSAqLwpAQCAtMTI1
Miw2ICsxMzA3LDcgQEAgaW50IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoT3B1c01TRW5j
b2RlciAqc3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICBjYXNlIE9QVVNfU0VUX0ZPUkNFX01PREVf
UkVRVUVTVDoKICAgIGNhc2UgT1BVU19TRVRfRk9SQ0VfQ0hBTk5FTFNfUkVRVUVTVDoKICAgIGNh
c2UgT1BVU19TRVRfUFJFRElDVElPTl9ESVNBQkxFRF9SRVFVRVNUOgorICAgY2FzZSBPUFVTX1NF
VF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKICAgIHsKICAgICAgIGludCBzOwog
ICAgICAgLyogVGhpcyB3b3JrcyBmb3IgaW50MzIgcGFyYW1zICovCkBAIC0xMzEzLDcgKzEzNjks
NiBAQCBpbnQgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChPcHVzTVNFbmNvZGVyICpzdCwg
aW50IHJlcXVlc3QsIC4uLikKICAgIGNhc2UgT1BVU19SRVNFVF9TVEFURToKICAgIHsKICAgICAg
IGludCBzOwotICAgICAgc3QtPnN1YmZyYW1lX21lbVswXSA9IHN0LT5zdWJmcmFtZV9tZW1bMV0g
PSBzdC0+c3ViZnJhbWVfbWVtWzJdID0gMDsKICAgICAgIGlmIChzdC0+bWFwcGluZ190eXBlID09
IE1BUFBJTkdfVFlQRV9TVVJST1VORCkKICAgICAgIHsKICAgICAgICAgIE9QVVNfQ0xFQVIobXNf
Z2V0X3ByZWVtcGhfbWVtKHN0KSwgc3QtPmxheW91dC5uYl9jaGFubmVscyk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NyYy9vcHVzX3ByaXZhdGUuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfcHJpdmF0ZS5oCmluZGV4IDNiNjJlZWQwOTY0
ZjA1MzVlZjEyMDE3YzM4OWFiYjYyN2UzYzRkMGEuLmE3MzFjYzU1MGVhNDM3MjRkNTJiZWI2NTBj
NDk3MGRhOWFkYmRhMDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfcHJpdmF0ZS5oCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29w
dXNfcHJpdmF0ZS5oCkBAIC05MiwxNCArOTIsNiBAQCBpbnQgZW5jb2RlX3NpemUoaW50IHNpemUs
IHVuc2lnbmVkIGNoYXIgKmRhdGEpOwogCiBvcHVzX2ludDMyIGZyYW1lX3NpemVfc2VsZWN0KG9w
dXNfaW50MzIgZnJhbWVfc2l6ZSwgaW50IHZhcmlhYmxlX2R1cmF0aW9uLCBvcHVzX2ludDMyIEZz
KTsKIAotb3B1c19pbnQzMiBjb21wdXRlX2ZyYW1lX3NpemUoY29uc3Qgdm9pZCAqYW5hbHlzaXNf
cGNtLCBpbnQgZnJhbWVfc2l6ZSwKLSAgICAgIGludCB2YXJpYWJsZV9kdXJhdGlvbiwgaW50IEMs
IG9wdXNfaW50MzIgRnMsIGludCBiaXRyYXRlX2JwcywKLSAgICAgIGludCBkZWxheV9jb21wZW5z
YXRpb24sIGRvd25taXhfZnVuYyBkb3dubWl4Ci0jaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCi0g
ICAgICAsIGZsb2F0ICpzdWJmcmFtZV9tZW0KLSNlbmRpZgotICAgICAgKTsKLQogb3B1c19pbnQz
MiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpw
Y20sIGludCBmcmFtZV9zaXplLAogICAgICAgdW5zaWduZWQgY2hhciAqZGF0YSwgb3B1c19pbnQz
MiBvdXRfZGF0YV9ieXRlcywgaW50IGxzYl9kZXB0aCwKICAgICAgIGNvbnN0IHZvaWQgKmFuYWx5
c2lzX3BjbSwgb3B1c19pbnQzMiBhbmFseXNpc19zaXplLCBpbnQgYzEsIGludCBjMiwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvdGVzdHMvb3B1c19kZWNvZGVfZnV6emVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNfZGVjb2RlX2Z1enpl
ci5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjkwMDI2MjIxY2VhZjI5OWIzZjA0MTQ1ZmQ0OTcxNmZiNWIxNDZkMjIK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNfZGVjb2RlX2Z1enplci5jCkBAIC0wLDAgKzEs
MTI2IEBACisvKiBDb3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4gKi8KKy8qCisgICBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
CisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJ
QlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9X
TkVSCisgICBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAgIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAgIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICAg
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRgorICAgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcKKyAgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICAgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLwor
CisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNp
bmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcu
aD4KKyNpbmNsdWRlICJvcHVzLmgiCisjaW5jbHVkZSAib3B1c190eXBlcy5oIgorCisjZGVmaW5l
IE1BWF9GUkFNRV9TQU1QIDU3NjAKKyNkZWZpbmUgTUFYX1BBQ0tFVCAxNTAwCisKKy8qIDQgYnl0
ZXM6IHBhY2tldCBsZW5ndGgsIDQgYnl0ZXM6IGVuY29kZXIgZmluYWwgcmFuZ2UgKi8KKyNkZWZp
bmUgU0VUVVBfQllURV9DT1VOVCA4CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBpbnQgZnM7Cisg
ICAgaW50IGNoYW5uZWxzOworfSBUb2NJbmZvOworCitzdGF0aWMgdm9pZCBQYXJzZVRvYyhjb25z
dCB1aW50OF90ICp0b2MsIFRvY0luZm8gKmNvbnN0IGluZm8pIHsKKyAgICBjb25zdCBpbnQgc2Ft
cF9mcmVxc1s1XSA9IHs4MDAwLCAxMjAwMCwgMTYwMDAsIDI0MDAwLCA0ODAwMH07CisgICAgY29u
c3QgaW50IGJhbmR3aWR0aCA9IG9wdXNfcGFja2V0X2dldF9iYW5kd2lkdGgodG9jKTsKKworICAg
IGluZm8tPmZzID0gc2FtcF9mcmVxc1tiYW5kd2lkdGggLSBPUFVTX0JBTkRXSURUSF9OQVJST1dC
QU5EXTsKKyAgICBpbmZvLT5jaGFubmVscyA9IG9wdXNfcGFja2V0X2dldF9uYl9jaGFubmVscyh0
b2MpOworfQorCisvKiBUcmVhdHMgdGhlIGlucHV0IGRhdGEgYXMgY29uY2F0ZW5hdGVkIHBhY2tl
dHMgZW5jb2RlZCBieSBvcHVzX2RlbW8sCisgKiBzdHJ1Y3R1cmVkIGFzCisgKiAgICBieXRlcyAw
Li4zOiBwYWNrZXQgbGVuZ3RoCisgKiAgICBieXRlcyA0Li43OiBlbmNvZGVyIGZpbmFsIHJhbmdl
CisgKiAgICBieXRlcyA4KyAgOiBPcHVzIHBhY2tldCwgaW5jbHVkaW5nIFRvQworICovCitpbnQg
TExWTUZ1enplclRlc3RPbmVJbnB1dChjb25zdCB1aW50OF90ICpkYXRhLCBzaXplX3Qgc2l6ZSkg
eworICAgIE9wdXNEZWNvZGVyICpkZWM7CisgICAgb3B1c19pbnQxNiAqcGNtOworICAgIHVpbnQ4
X3QgKnBhY2tldDsKKyAgICBUb2NJbmZvIHRvYzsKKyAgICBpbnQgaSwgZXJyOworCisgICAgLyog
Tm90IGVub3VnaCBkYXRhIHRvIHNldHVwIHRoZSBkZWNvZGVyICgrMSBmb3IgdGhlIFRvQykgKi8K
KyAgICBpZiAoc2l6ZSA8IFNFVFVQX0JZVEVfQ09VTlQgKyAxKSB7CisgICAgICAgIHJldHVybiAw
OworICAgIH0KKworICAgIC8qIENyZWF0ZSBkZWNvZGVyIGJhc2VkIG9uIGluZm8gZnJvbSB0aGUg
Zmlyc3QgVG9DIGF2YWlsYWJsZSAqLworICAgIFBhcnNlVG9jKCZkYXRhW1NFVFVQX0JZVEVfQ09V
TlRdLCAmdG9jKTsKKworICAgIGRlYyA9IG9wdXNfZGVjb2Rlcl9jcmVhdGUodG9jLmZzLCB0b2Mu
Y2hhbm5lbHMsICZlcnIpOworICAgIGlmIChlcnIgIT0gT1BVU19PSyB8IGRlYyA9PSBOVUxMKSB7
CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIHBjbSA9IChvcHVzX2ludDE2KikgbWFs
bG9jKHNpemVvZigqcGNtKSAqIE1BWF9GUkFNRV9TQU1QICogdG9jLmNoYW5uZWxzKTsKKyAgICBw
YWNrZXQgPSAodWludDhfdCopIGNhbGxvYyhNQVhfUEFDS0VULCBzaXplb2YoKnBhY2tldCkpOwor
CisgICAgaSA9IDA7CisgICAgd2hpbGUgKDEpIHsKKyAgICAgICAgaW50IGxlbiwgZmVjOworCisg
ICAgICAgIGlmIChpICsgU0VUVVBfQllURV9DT1VOVCA+PSBzaXplKSB7CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgfQorCisgICAgICAgIGxlbiA9IChvcHVzX3VpbnQzMikgZGF0YVtpICAg
IF0gPDwgMjQgfAorICAgICAgICAgICAgICAob3B1c191aW50MzIpIGRhdGFbaSArIDFdIDw8IDE2
IHwKKyAgICAgICAgICAgICAgKG9wdXNfdWludDMyKSBkYXRhW2kgKyAyXSA8PCAgOCB8CisgICAg
ICAgICAgICAgIChvcHVzX3VpbnQzMikgZGF0YVtpICsgM107CisgICAgICAgIGlmIChsZW4gPiBN
QVhfUEFDS0VUIHx8IGxlbiA8IDApIHsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisK
KyAgICAgICAgLyogQnl0ZXMgNC4uNyByZXByZXNlbnQgZW5jb2RlciBmaW5hbCByYW5nZSwgYnV0
IGFyZSB1bnVzZWQgaGVyZS4KKyAgICAgICAgICogSW5zdGVhZCwgYnl0ZSA0IGlzIHJlcHVycG9z
ZWQgdG8gZGV0ZXJtaW5lIGlmIEZFQyBpcyB1c2VkLiAqLworICAgICAgICBmZWMgPSBkYXRhW2kg
KyA0XSAmIDE7CisKKyAgICAgICAgLyogTG9zdCBwYWNrZXQgKi8KKyAgICAgICAgaWYgKGxlbiA9
PSAwKSB7CisgICAgICAgICAgICBpbnQgZnJhbWVfc2l6ZTsKKyAgICAgICAgICAgIG9wdXNfZGVj
b2Rlcl9jdGwoZGVjLCBPUFVTX0dFVF9MQVNUX1BBQ0tFVF9EVVJBVElPTigmZnJhbWVfc2l6ZSkp
OworICAgICAgICAgICAgKHZvaWQpIG9wdXNfZGVjb2RlKGRlYywgTlVMTCwgc2l6ZSwgcGNtLCBm
cmFtZV9zaXplLCBmZWMpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKGkgKyBT
RVRVUF9CWVRFX0NPVU5UICsgbGVuID4gc2l6ZSkgeworICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgfQorICAgICAgICAgICAgbWVtY3B5KHBjbSwgJmRhdGFbaSArIFNFVFVQX0JZ
VEVfQ09VTlRdLCBsZW4pOworICAgICAgICAgICAgKHZvaWQpIG9wdXNfZGVjb2RlKGRlYywgZGF0
YSwgc2l6ZSwgcGNtLCBNQVhfRlJBTUVfU0FNUCwgZmVjKTsKKyAgICAgICAgfQorCisgICAgICAg
IGkgKz0gU0VUVVBfQllURV9DT1VOVCArIGxlbjsKKyAgICB9CisKKyAgICBvcHVzX2RlY29kZXJf
ZGVzdHJveShkZWMpOworICAgIGZyZWUocGNtKTsKKyAgICBmcmVlKHBhY2tldCk7CisKKyAgICBy
ZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvb3B1c19kZWNvZGVfZnV6emVyLm9wdGlvbnMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3Rlc3RzL29wdXNfZGVjb2RlX2Z1enplci5vcHRpb25zCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU1YWU3MWI5Mzdh
NGUzNTU3ZjA0NzU0NTA4MGYyZTUzODczNmQ3MGYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29w
dXNfZGVjb2RlX2Z1enplci5vcHRpb25zCkBAIC0wLDAgKzEsMiBAQAorW2xpYmZ1enplcl0KK21h
eF9sZW4gPSAxMDAwMDAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNfZW5jb2RlX3JlZ3Jlc3Npb25z
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3Rlc3RzL29wdXNfZW5jb2RlX3JlZ3Jlc3Npb25zLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjkyMzQ3MzAx
NDQzOTkzNDFiNTBhOGIzMjgyYzYyOTEyMjNiNjY5MQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMv
b3B1c19lbmNvZGVfcmVncmVzc2lvbnMuYwpAQCAtMCwwICsxLDEwMzUgQEAKKy8qIENvcHlyaWdo
dCAoYykgMjAxNiBNYXJrIEhhcnJpcywgSmVhbi1NYXJjIFZhbGluICovCisvKgorICAgUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKwor
ICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVAorICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05F
UgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKwor
CisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNp
bmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPGxpbWl0cy5o
PgorI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUgPG1hdGguaD4KKyNpbmNsdWRlIDxzdHJp
bmcuaD4KKyNpbmNsdWRlIDxhc3NlcnQuaD4KKyNpbmNsdWRlICJvcHVzX211bHRpc3RyZWFtLmgi
CisjaW5jbHVkZSAib3B1cy5oIgorI2luY2x1ZGUgInRlc3Rfb3B1c19jb21tb24uaCIKKworCitz
dGF0aWMgaW50IGNlbHRfZWNfaW50ZXJuYWxfZXJyb3Iodm9pZCkKK3sKKyAgICBPcHVzTVNFbmNv
ZGVyICplbmM7CisgICAgaW50IGVycjsKKyAgICB1bnNpZ25lZCBjaGFyIGRhdGFbMjQ2MF07Cisg
ICAgaW50IHN0cmVhbXM7CisgICAgaW50IGNvdXBsZWRfc3RyZWFtczsKKyAgICB1bnNpZ25lZCBj
aGFyIG1hcHBpbmdbMV07CisKKyAgICBlbmMgPSBvcHVzX211bHRpc3RyZWFtX3N1cnJvdW5kX2Vu
Y29kZXJfY3JlYXRlKDE2MDAwLCAxLCAxLCAmc3RyZWFtcywKKyAgICAgICAgJmNvdXBsZWRfc3Ry
ZWFtcywgbWFwcGluZywgT1BVU19BUFBMSUNBVElPTl9WT0lQLCAmZXJyKTsKKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX01V
U0lDKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZC
UigwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZC
Ul9DT05TVFJBSU5UKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfUFJFRElDVElPTl9ESVNBQkxFRCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgwKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgwKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFko
MCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhf
QkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX05BUlJPV0JBTkQpKTsKKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQVVUTykpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9MU0JfREVQVEgoOCkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9JTkJBTkRf
RkVDKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
UEFDS0VUX0xPU1NfUEVSQygwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX0JJVFJBVEUoT1BVU19BVVRPKSk7CisgICAgeworICAgICAgICBzdGF0aWMg
Y29uc3Qgc2hvcnQgcGNtWzMyMF0gPQorICAgICAgICB7CisgICAgICAgICAgICAgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAg
ICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgMTc5
MiwgIDE3OTksICAxNzk5LAorICAgICAgICAgICAgICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5
LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksCisgICAgICAgICAgICAgIDE3OTks
ICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgICAgMCwgMjU2MDAsICAxNzk5LCAgMTc5OSwK
KyAgICAgICAgICAgICAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAg
MTc5OSwgIDE3OTksICAxNzk5LAorICAgICAgICAgICAgICAxNzk5LCAgMTc5OSwgIDE3OTksICAx
Nzk5LCAgICAgNywgICAgIDAsICAgMjU1LCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsIDMyNzY3LCAgICAt
MSwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgIDEwMCwgICAgIDAsIDE2Mzg0
LCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAs
ICAgICA0LCAgICAgMCwgICAgIDAsICAtMjU2LCAgIDI1NSwgICAgIDAsCisgICAgICAgICAgICAg
ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwtMzI3
NjgsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAg
ICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLCAgIDEyOCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAg
ICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAtMjU2LCAgICAgMCwgICAgIDAsICAg
IDMyLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLCAgNDM1MiwgICAgIDQsICAgMjI4LAorICAgICAgICAgICAgICAgICAwLCAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAg
ICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgIDU2MzIs
ICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsLTMyNzY4LCAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisg
ICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgIDI1
NiwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAs
CisgICAgICAgICAgICAgLTM5NDQsIDEwNTAwLCAgNDI4NSwgMTA0NTksIC02NDc0LCAxMDIwNCwg
LTY1MzksIDExNjAxLCAtNjgyNCwKKyAgICAgICAgICAgICAxMzM4NSwgLTcxNDIsIDEzODcyLC0x
MTU1MywgMTM2NzAsIC03NzI1LCAxMzQ2MywgLTY4ODcsICA3ODc0LAorICAgICAgICAgICAgIC01
NTgwLCAxMjYwMCwgLTQ5NjQsIDEyNDgwLCAgMzI1NCwgMTE3NDEsIC00MjEwLCAgOTc0MSwgLTMx
NTUsCisgICAgICAgICAgICAgIDc1NTgsIC01NDY4LCAgNTQzMSwgLTEwNzMsICAzNjQxLCAtMTMw
NCwgICAgIDAsICAgIC0xLCAgIDM0MywKKyAgICAgICAgICAgICAgICAyNiwgICAgIDAsICAgICAw
LCAgIDE1MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAg
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwg
ICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAg
ICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgIDE3OTksICAxNzk5
LCAgMTc5OSwgIDE3OTksICAxNzk5LCAtMjU1MywKKyAgICAgICAgICAgICAgICAgNywgIDE3OTIs
ICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LAorICAgICAg
ICAgICAgICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAtOTcyMQorICAgICAgICB9OworICAg
ICAgICBlcnIgPSBvcHVzX211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBjbSwgMzIwLCBkYXRhLCAy
NDYwKTsKKyAgICAgICAgYXNzZXJ0KGVyciA+IDApOworICAgIH0KKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX01VU0lDKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUigwKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUl9DT05T
VFJBSU5UKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19T
RVRfUFJFRElDVElPTl9ESVNBQkxFRCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVy
X2N0bChlbmMsIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgwKSk7CisgICAgb3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgxKSk7CisgICAgb3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMTApKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRX
SURUSChPUFVTX0JBTkRXSURUSF9GVUxMQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQp
KTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTFNCX0RF
UFRIKDE4KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VU
X0lOQkFORF9GRUMoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDkwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMjgwMTMwKSk7CisgICAgeworICAgICAgICBz
dGF0aWMgY29uc3Qgc2hvcnQgcGNtWzE2MF0gPQorICAgICAgICB7CisgICAgICAgICAgICAgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUyNiwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAg
ICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgMjU2MDAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAg
ICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAg
ICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisg
ICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwCisgICAgICAgIH07Cisg
ICAgICAgIGVyciA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlKGVuYywgcGNtLCAxNjAsIGRhdGEs
IDI0NjApOworICAgICAgICBhc3NlcnQoZXJyID4gMCk7CisgICAgfQorICAgIG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfTVVTSUMp
KTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSKDAp
KTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSX0NP
TlNUUkFJTlQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVT
X1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKDApKTsKKyAgICBv
cHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRFRYKDEpKTsKKyAgICBv
cHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElUWSgxMCkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhfQkFO
RFdJRFRIKE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9GVUxMQkFO
RCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9MU0Jf
REVQVEgoMTgpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19T
RVRfSU5CQU5EX0ZFQygxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMs
IE9QVVNfU0VUX1BBQ0tFVF9MT1NTX1BFUkMoOTApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2Vu
Y29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURSgyODAxMzApKTsKKyAgICB7CisgICAgICAg
IHN0YXRpYyBjb25zdCBzaG9ydCBwY21bMTYwXSA9CisgICAgICAgIHsKKyAgICAgICAgICAgICAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAg
ICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAg
ICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAg
ICAgICAgICAtOTUxMCwgLTk0OTQsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAg
ICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwK
KyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAKKyAgICAgICAgfTsK
KyAgICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNvZGUoZW5jLCBwY20sIDE2MCwgZGF0
YSwgMjQ2MCk7CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICB9CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJ
QykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIo
MCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJf
Q09OU1RSQUlOVCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMCkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMSkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDEw
KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9C
QU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX0ZVTExC
QU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xT
Ql9ERVBUSCgxOCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVT
X1NFVF9JTkJBTkRfRkVDKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVu
YywgT1BVU19TRVRfUEFDS0VUX0xPU1NfUEVSQyg5MCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1f
ZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDI4MDEzMCkpOworICAgIHsKKyAgICAg
ICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbVsxNjBdID0KKyAgICAgICAgeworICAgICAgICAgICAg
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAg
ICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAg
ICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAg
ICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAor
ICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk0NzksIC05NTEw
LAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMAorICAgICAgICB9
OworICAgICAgICBlcnIgPSBvcHVzX211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBjbSwgMTYwLCBk
YXRhLCAyNDYwKTsKKyAgICAgICAgYXNzZXJ0KGVyciA+IDApOworICAgIH0KKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX01V
U0lDKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZC
UigwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZC
Ul9DT05TVFJBSU5UKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfUFJFRElDVElPTl9ESVNBQkxFRCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgwKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgxKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFko
MTApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFY
X0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9GVUxMQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfRlVM
TEJBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
TFNCX0RFUFRIKDE4KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX0lOQkFORF9GRUMoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDkwKSk7CisgICAgb3B1c19tdWx0aXN0cmVh
bV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMjgwMTMwKSk7CisgICAgeworICAg
ICAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtWzE2MF0gPQorICAgICAgICB7CisgICAgICAgICAg
ICAgLTk1MTAsIC05NTEwLCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5
LCAgMTc5OSwKKyAgICAgICAgICAgICAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTks
ICAxNzk5LCAgMTc5OSwgIDE3OTksICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAg
ICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAtMjU2LCAgIDI1
NSwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAg
ICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisg
ICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAxMjgsICAgICAwLAorICAgICAgICAgICAgICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAs
CisgICAgICAgICAgICAgICAgIDAsICAgIDMyLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgNDM1MiwgICAgIDQsICAgICAwLCAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgIDE0OCwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsCisgICAgICAgICAgICAgIDU2MzIKKyAgICAgICAgfTsKKyAgICAgICAgZXJyID0gb3B1c19t
dWx0aXN0cmVhbV9lbmNvZGUoZW5jLCBwY20sIDE2MCwgZGF0YSwgMjQ2MCk7CisgICAgICAgIGFz
c2VydChlcnIgPiAwKTsKKyAgICB9CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9WT0lDRSkpOworICAgIG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkpOworICAgIG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVCgxKSk7CisgICAg
b3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElT
QUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDApKTsKKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRXSURUSChPUFVTX0JBTkRXSURU
SF9OQVJST1dCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX0JBTkRXSURUSChPUFVTX0FVVE8pKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfTFNCX0RFUFRIKDEyKSk7CisgICAgb3B1c19tdWx0aXN0cmVh
bV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0lOQkFORF9GRUMoMCkpOworICAgIG9wdXNfbXVs
dGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDQxKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUo
MjE0MjUpKTsKKyAgICB7CisgICAgICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY21bNDBdID0KKyAg
ICAgICAgeworICAgICAgICAgICAgIDEwNDU5LCAtNjQ3NCwgMTAyMDQsIC02NTM5LCAxMTYwMSwg
LTY4MjQsIDEzMzg1LCAtNzE0MiwgMTM4NzIsCisgICAgICAgICAgICAtMTE1NTMsIDEzNjcwLCAt
NzcyNSwgMTM0NjMsIC02ODg3LCAxMjQ4MiwgLTU1ODAsIDEyNjAwLCAtNDk2NCwKKyAgICAgICAg
ICAgICAxMjQ4MCwgIDMyNTQsIDExNzQxLCAtNDIxMCwgIDk3NDEsIC0zMTU1LCAgNzU1OCwgLTU0
NjgsICA1NDMxLAorICAgICAgICAgICAgIC0xMDczLCAgMzY0MSwgLTEzMDQsICAgICAwLCAgICAt
MSwgICAzNDMsICAgIDI2LCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAw
LCAgLTI1NiwgICAyMjYKKyAgICAgICAgfTsKKyAgICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVh
bV9lbmNvZGUoZW5jLCBwY20sIDQwLCBkYXRhLCAyNDYwKTsKKyAgICAgICAgYXNzZXJ0KGVyciA+
IDApOworICAgICAgICAvKiByZXR1cm5zIC0zICovCisgICAgfQorICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9kZXN0cm95KGVuYyk7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQg
bXNjYnJfZW5jb2RlX2ZhaWwxMCh2b2lkKQoreworICAgIE9wdXNNU0VuY29kZXIgKmVuYzsKKyAg
ICBpbnQgZXJyOworICAgIHVuc2lnbmVkIGNoYXIgZGF0YVs2MjczMDBdOworICAgIHN0YXRpYyBj
b25zdCB1bnNpZ25lZCBjaGFyIG1hcHBpbmdbMjU1XSA9CisgICAgeworICAgICAgICAgIDAsICAx
LCAgMiwgIDMsICA0LCAgNSwgIDYsICA3LCAgOCwgIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUs
IDE2LAorICAgICAgICAgMTcsIDE4LCAxOSwgMjAsIDIxLCAyMiwgMjMsIDI0LCAyNSwgMjYsIDI3
LCAyOCwgMjksIDMwLCAzMSwgMzIsIDMzLAorICAgICAgICAgMzQsIDM1LCAzNiwgMzcsIDM4LCAz
OSwgNDAsIDQxLCA0MiwgNDMsIDQ0LCA0NSwgNDYsIDQ3LCA0OCwgNDksIDUwLAorICAgICAgICAg
NTEsIDUyLCA1MywgNTQsIDU1LCA1NiwgNTcsIDU4LCA1OSwgNjAsIDYxLCA2MiwgNjMsIDY0LCA2
NSwgNjYsIDY3LAorICAgICAgICAgNjgsIDY5LCA3MCwgNzEsIDcyLCA3MywgNzQsIDc1LCA3Niwg
NzcsIDc4LCA3OSwgODAsIDgxLCA4MiwgODMsIDg0LAorICAgICAgICAgODUsIDg2LCA4NywgODgs
IDg5LCA5MCwgOTEsIDkyLCA5MywgOTQsIDk1LCA5NiwgOTcsIDk4LCA5OSwxMDAsMTAxLAorICAg
ICAgICAxMDIsMTAzLDEwNCwxMDUsMTA2LDEwNywxMDgsMTA5LDExMCwxMTEsMTEyLDExMywxMTQs
MTE1LDExNiwxMTcsMTE4LAorICAgICAgICAxMTksMTIwLDEyMSwxMjIsMTIzLDEyNCwxMjUsMTI2
LDEyNywxMjgsMTI5LDEzMCwxMzEsMTMyLDEzMywxMzQsMTM1LAorICAgICAgICAxMzYsMTM3LDEz
OCwxMzksMTQwLDE0MSwxNDIsMTQzLDE0NCwxNDUsMTQ2LDE0NywxNDgsMTQ5LDE1MCwxNTEsMTUy
LAorICAgICAgICAxNTMsMTU0LDE1NSwxNTYsMTU3LDE1OCwxNTksMTYwLDE2MSwxNjIsMTYzLDE2
NCwxNjUsMTY2LDE2NywxNjgsMTY5LAorICAgICAgICAxNzAsMTcxLDE3MiwxNzMsMTc0LDE3NSwx
NzYsMTc3LDE3OCwxNzksMTgwLDE4MSwxODIsMTgzLDE4NCwxODUsMTg2LAorICAgICAgICAxODcs
MTg4LDE4OSwxOTAsMTkxLDE5MiwxOTMsMTk0LDE5NSwxOTYsMTk3LDE5OCwxOTksMjAwLDIwMSwy
MDIsMjAzLAorICAgICAgICAyMDQsMjA1LDIwNiwyMDcsMjA4LDIwOSwyMTAsMjExLDIxMiwyMTMs
MjE0LDIxNSwyMTYsMjE3LDIxOCwyMTksMjIwLAorICAgICAgICAyMjEsMjIyLDIyMywyMjQsMjI1
LDIyNiwyMjcsMjI4LDIyOSwyMzAsMjMxLDIzMiwyMzMsMjM0LDIzNSwyMzYsMjM3LAorICAgICAg
ICAyMzgsMjM5LDI0MCwyNDEsMjQyLDI0MywyNDQsMjQ1LDI0NiwyNDcsMjQ4LDI0OSwyNTAsMjUx
LDI1MiwyNTMsMjU0CisgICAgfTsKKworICAgIGVuYyA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jcmVhdGUoODAwMCwgMjU1LCAyNTQsIDEsIG1hcHBpbmcsCisgICAgICAgIE9QVVNfQVBQTElD
QVRJT05fUkVTVFJJQ1RFRF9MT1dERUxBWSwgJmVycik7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9WT0lDRSkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlO
VCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BS
RURJQ1RJT05fRElTQUJMRUQoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9GT1JDRV9DSEFOTkVMUygyKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgxKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgxKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFko
MikpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhf
QkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX05BUlJPV0JBTkQpKTsKKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQVVUTykpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9MU0JfREVQVEgoMTQp
KTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfSU5CQU5E
X0ZFQygwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VU
X1BBQ0tFVF9MT1NTX1BFUkMoNTcpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3Rs
KGVuYywgT1BVU19TRVRfQklUUkFURSgzNjQyNjc1KSk7CisgICAgeworICAgICAgICBzdGF0aWMg
Y29uc3Qgc2hvcnQgcGNtWzIwKjI1NV0gPQorICAgICAgICB7CisgICAgICAgICAgICAgICAgIDAK
KyAgICAgICAgfTsKKyAgICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNvZGUoZW5jLCBw
Y20sIDIwLCBkYXRhLCA2MjczMDApOworICAgICAgICBhc3NlcnQoZXJyID4gMCk7CisgICAgICAg
IC8qIHJldHVybnMgLTEgKi8KKyAgICB9CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2Rl
c3Ryb3koZW5jKTsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludCBtc2Nicl9lbmNvZGVf
ZmFpbCh2b2lkKQoreworICAgIE9wdXNNU0VuY29kZXIgKmVuYzsKKyAgICBpbnQgZXJyOworICAg
IHVuc2lnbmVkIGNoYXIgZGF0YVs0NzIzMjBdOworICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj
aGFyIG1hcHBpbmdbMTkyXSA9CisgICAgeworICAgICAgICAgIDAsICAxLCAgMiwgIDMsICA0LCAg
NSwgIDYsICA3LCAgOCwgIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LAorICAgICAgICAg
MTcsIDE4LCAxOSwgMjAsIDIxLCAyMiwgMjMsIDI0LCAyNSwgMjYsIDI3LCAyOCwgMjksIDMwLCAz
MSwgMzIsIDMzLAorICAgICAgICAgMzQsIDM1LCAzNiwgMzcsIDM4LCAzOSwgNDAsIDQxLCA0Miwg
NDMsIDQ0LCA0NSwgNDYsIDQ3LCA0OCwgNDksIDUwLAorICAgICAgICAgNTEsIDUyLCA1MywgNTQs
IDU1LCA1NiwgNTcsIDU4LCA1OSwgNjAsIDYxLCA2MiwgNjMsIDY0LCA2NSwgNjYsIDY3LAorICAg
ICAgICAgNjgsIDY5LCA3MCwgNzEsIDcyLCA3MywgNzQsIDc1LCA3NiwgNzcsIDc4LCA3OSwgODAs
IDgxLCA4MiwgODMsIDg0LAorICAgICAgICAgODUsIDg2LCA4NywgODgsIDg5LCA5MCwgOTEsIDky
LCA5MywgOTQsIDk1LCA5NiwgOTcsIDk4LCA5OSwxMDAsMTAxLAorICAgICAgICAxMDIsMTAzLDEw
NCwxMDUsMTA2LDEwNywxMDgsMTA5LDExMCwxMTEsMTEyLDExMywxMTQsMTE1LDExNiwxMTcsMTE4
LAorICAgICAgICAxMTksMTIwLDEyMSwxMjIsMTIzLDEyNCwxMjUsMTI2LDEyNywxMjgsMTI5LDEz
MCwxMzEsMTMyLDEzMywxMzQsMTM1LAorICAgICAgICAxMzYsMTM3LDEzOCwxMzksMTQwLDE0MSwx
NDIsMTQzLDE0NCwxNDUsMTQ2LDE0NywxNDgsMTQ5LDE1MCwxNTEsMTUyLAorICAgICAgICAxNTMs
MTU0LDE1NSwxNTYsMTU3LDE1OCwxNTksMTYwLDE2MSwxNjIsMTYzLDE2NCwxNjUsMTY2LDE2Nywx
NjgsMTY5LAorICAgICAgICAxNzAsMTcxLDE3MiwxNzMsMTc0LDE3NSwxNzYsMTc3LDE3OCwxNzks
MTgwLDE4MSwxODIsMTgzLDE4NCwxODUsMTg2LAorICAgICAgICAxODcsMTg4LDE4OSwxOTAsMTkx
CisgICAgfTsKKworICAgIGVuYyA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jcmVhdGUoODAw
MCwgMTkyLCAxODksIDMsIG1hcHBpbmcsCisgICAgICAgIE9QVVNfQVBQTElDQVRJT05fUkVTVFJJ
Q1RFRF9MT1dERUxBWSwgJmVycik7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJQykpOworICAgIG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkpOworICAgIG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVCgwKSk7CisgICAg
b3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElT
QUJMRUQoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9GT1JDRV9DSEFOTkVMUyhPUFVTX0FVVE8pKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKDApKTsKKyAgICBv
cHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRFRYKDApKTsKKyAgICBv
cHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElUWSgwKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9CQU5E
V0lEVEgoT1BVU19CQU5EV0lEVEhfTUVESVVNQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1f
ZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19BVVRPKSk7CisgICAgb3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSCg4KSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0lOQkFORF9GRUMo
MCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNL
RVRfTE9TU19QRVJDKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfQklUUkFURSgxNTM2MCkpOworICAgIHsKKyAgICAgICAgc3RhdGljIGNvbnN0IHNo
b3J0IHBjbVsyMCoxOTJdID0KKyAgICAgICAgeworICAgICAgICAgICAgICAgICAwCisgICAgICAg
IH07CisgICAgICAgIGVyciA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlKGVuYywgcGNtLCAyMCwg
ZGF0YSwgNDcyMzIwKTsKKyAgICAgICAgYXNzZXJ0KGVyciA+IDApOworICAgICAgICAvKiByZXR1
cm5zIC0xICovCisgICAgfQorICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9kZXN0cm95KGVu
Yyk7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgc3Vycm91bmRfYW5hbHlzaXNfdW5p
bml0KHZvaWQpCit7CisgICAgT3B1c01TRW5jb2RlciAqZW5jOworICAgIGludCBlcnI7CisgICAg
dW5zaWduZWQgY2hhciBkYXRhWzczODBdOworICAgIGludCBzdHJlYW1zOworICAgIGludCBjb3Vw
bGVkX3N0cmVhbXM7CisgICAgdW5zaWduZWQgY2hhciBtYXBwaW5nWzNdOworCisgICAgZW5jID0g
b3B1c19tdWx0aXN0cmVhbV9zdXJyb3VuZF9lbmNvZGVyX2NyZWF0ZSgyNDAwMCwgMywgMSwgJnN0
cmVhbXMsCisgICAgICAgICZjb3VwbGVkX3N0cmVhbXMsIG1hcHBpbmcsIE9QVVNfQVBQTElDQVRJ
T05fQVVESU8sICZlcnIpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfVk9JQ0UpKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoMSkpOworICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVE
KDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRk9S
Q0VfQ0hBTk5FTFMoT1BVU19BVVRPKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgwKSk7CisgICAgb3B1c19t
dWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgwKSk7CisgICAgb3B1c19t
dWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMCkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJRFRI
KE9QVVNfQkFORFdJRFRIX05BUlJPV0JBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29k
ZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX05BUlJPV0JBTkQp
KTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTFNCX0RF
UFRIKDgpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
SU5CQU5EX0ZFQygxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX0JJVFJBVEUoODQzMTUpKTsKKyAgICB7CisgICAgICAgIHN0YXRpYyBjb25zdCBzaG9y
dCBwY21bOTYwKjNdID0KKyAgICAgICAgeworICAgICAgICAgICAgIC02ODk2LCAgNDkwMSwgLTYx
NTgsICA0MTIwLCAtNTE2NCwgIDM2MzEsIC00NDQyLCAgMzE1MywgLTQwNzAsCisgICAgICAgICAg
ICAgIDMzNDksIC00NTc3LCAgNDQ3NCwgLTU1NDEsICA1MDU4LCAtNjcwMSwgIDM4ODEsIC03OTMz
LCAgMTg2MywKKyAgICAgICAgICAgICAtODA0MSwgICA2OTcsIC02NzM4LC0zMTQ2NCwgMTQzMzAs
LTEyNTIzLCAgNDA5NiwgLTYxMzAsIDI5MTc4LAorICAgICAgICAgICAgICAtMjUwLC0yMTI1Miwg
MTA0NjcsIDE2OTA3LCAtMzM1OSwgLTY2NDQsIDMxOTY1LCAxNDYwNywtMjE1NDQsCisgICAgICAg
ICAgICAtMzI0OTcsIDI0MDIwLCAxMjU1NywtMjY5MjYsLTE4NDIxLCAtMTg0MiwgMjQ1ODcsIDE5
NjU5LCAgNDg3OCwKKyAgICAgICAgICAgICAxMDk1NCwgMjMwNjAsICA4OTA3LC0xMDIxNSwtMTYx
NzksIDMxNzcyLC0xMTgyNSwtMTU1OTAsLTIzMDg5LAorICAgICAgICAgICAgIDE3MTczLC0yNTkw
MywtMTczODcsIDExNzMzLCAgNDg4NCwgMTAyMDQsLTE2NDc2LC0xNDM2NywgICA1MTYsCisgICAg
ICAgICAgICAgMjA0NTMsLTE2ODk4LCAyMDk2NywtMjM4MTMsICAgLTIwLCAyMjAxMSwtMTcxNjcs
ICA5NDU5LCAzMjQ5OSwKKyAgICAgICAgICAgIC0yNTg1NSwgIC01MjMsIC0zODgzLCAgLTM5MCwg
LTQyMDYsICAgNjM0LCAtMzc2NywgIDIzMjUsIC0yNzUxLAorICAgICAgICAgICAgICAzMTE1LCAt
MjM5MiwgIDI3NDYsIC0yMTczLCAgMjMxNywgLTExNDcsICAyMzI2LCAyMzE0MiwgMTEzMTQsCisg
ICAgICAgICAgICAtMTUzNTAsLTI0NTI5LCAgMzAyNiwgIDYxNDYsICAyMTUwLCAgMjQ3NiwgIDEx
MDUsICAtODMwLCAgMTc3NSwKKyAgICAgICAgICAgICAtMzQyNSwgIDM2NzQsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgICA0Mjkz
LC0xNDAyMywgIDM4NzksLTE1NTUzLCAgMzE1OCwtMTYxNjEsICAyNjI5LCAxODQzMywtMTI1MzUs
CisgICAgICAgICAgICAgLTY2NDUsLTIwNzM1LC0zMjc2MywtMTM4MjQsLTIwOTkyLCAyNTg1OSwg
MTMwNTIsIC04NzMxLCAgMjI5MiwKKyAgICAgICAgICAgICAtMzg2MCwgMjQwNDksIDEwMjI1LC0x
OTIyMCwgMTA0NzgsLTIyMjk0LCAyMjc3MywgMjgxMzcsIDEzODE2LAorICAgICAgICAgICAgIDMw
OTUzLC0yNTg2MywtMjQ1OTgsIDE2ODg4LC0xNDYxMiwtMjg5NDIsIDIwOTc0LC0yNzM5NywtMTg5
NDQsCisgICAgICAgICAgICAtMTg2OTAsIDIwOTkxLC0xNjYzOCwgIDU2MzIsLTE0MzMwLCAyODkx
MSwtMjU1OTQsIDE3NDA4LCAyOTk1OCwKKyAgICAgICAgICAgICAgLTUxNywtMjA5ODQsIC0xODAw
LCAxMTI4MSwgIDk5NzcsLTIxMjIxLC0xNDg1NCwgMjM4NDAsIC05NDc3LAorICAgICAgICAgICAg
ICAzMzYyLC0xMjgwNSwtMjI0OTMsIDMyNTA3LCAgIDE1NiwgMTYzODQsIC0xMTYzLCAgMjMwMSwg
LTE4NzQsCisgICAgICAgICAgICAgIDQ2MDAsIC0xNzQ4LCAgNjk1MCwgMTY1NTcsICA4MTkyLCAt
NzM3MiwgLTEwMzMsIC0zMjc4LCAgMjgwNiwKKyAgICAgICAgICAgICAyMDI3NSwgIDMzMTcsICAt
NzE3LCAgOTc5MiwgIC03NjcsICA5MDk5LCAgLTYxMywgIDgzNjIsICA1MDI3LAorICAgICAgICAg
ICAgICA3Nzc0LCAgMjU5NywgIDg1NDksICA1Mjc4LCAgODc0MywgIDkzNDMsICA2OTQwLCAxMzAz
OCwgIDQ4MjYsCisgICAgICAgICAgICAgMTQwODYsICAyOTY0LCAxMzIxNSwgIDEzNTUsIDExNTk2
LCAgIDQ1NSwgIDk4NTAsICAtNTE5LCAxMDY4MCwKKyAgICAgICAgICAgICAtMjI4NywgMTI1NTEs
IC0zNzM2LCAxMzYzOSwgLTQyOTEsIDEzNzkwLCAtMjcyMiwgMTQ1NDQsICAtODY2LAorICAgICAg
ICAgICAgIDE1MDUwLCAgLTMwNCwgMjI4MzMsIC0xMTk2LCAxMzUyMCwgLTIwNjMsIDEzMDUxLCAt
MjMxNywgMTMwNjYsCisgICAgICAgICAgICAgLTI3MzcsIDEzNzczLCAtMjY2NCwgMTQxMDUsIC0z
NDQ3LCAxMzg1NCwgMjQ1ODksIDI0NjcyLCAtNTI4MCwKKyAgICAgICAgICAgICAxMDM4OCwgLTQ5
MzMsICA3NTQzLCAtNDE0OSwgIDM2NTQsIC0xNTUyLCAgMTcyNiwgICA2NjEsICAgIDU3LAorICAg
ICAgICAgICAgICAyOTIyLCAgLTc1MSwgIDM5MTcsICA4NDE5LCAgMzg0MCwgLTUyMTgsICAzNDM1
LCAgNTU0MCwgLTEwNzMsCisgICAgICAgICAgICAgIDQxNTMsIC02NjU2LCAgMTY0OSwgIC03Njks
IC03Mjc2LC0xMzA3MiwgIDYzODAsIC03OTQ4LCAyMDcxNywKKyAgICAgICAgICAgICAxODQyNSwg
MTczOTIsIDE0MzM1LC0xODE5MCwgLTE4NDIsIDI0NTg3LCAxOTY1OSwgMTE3OTAsIDEwOTU0LAor
ICAgICAgICAgICAgIDIzMDYwLCAgODkwNywtMTAyMTUsLTE2MTc5LCAzMTc3MiwtMTE4MjUsLTE1
NTkwLC0yMzEwMSwgMTcxNzMsCisgICAgICAgICAgICAtMjU5MDMsLTE3Mzg3LCAxMTczMywgIDQ4
ODQsIDEwMTkyLC0xNjYyNywtMTQzNjcsICAgNTE2LCAyMDQ1MywKKyAgICAgICAgICAgIC0xNjg5
OCwgMjA5NjcsLTIzODEzLCAgIC0yMCwgMjIwMTEsLTE3MTY3LCAgOTQ2OCwgMzI0OTksLTI1NjA3
LAorICAgICAgICAgICAgICAtNTIzLCAtMzg4MywgIC0zOTAsIC00MjA2LCAgIDYzNCwgLTM3Njcs
ICAyMzI1LCAtMjc1MSwgIDMxMTUsCisgICAgICAgICAgICAgLTIzOTIsICAyNzQ2LCAtMjE2MSwg
IDIzMTcsIC0xMTQ3LCAgMjMyNiwgMjMxNDIsIDExMzE0LC0xNTM1MCwKKyAgICAgICAgICAgIC0y
OTEzNywgIDMwMjYsLTE1MDU2LCAgLTQ5MSwtMTUxNzAsICAtMzg2LC0xNjAxNSwgIC02NDEsLTE2
NTA1LAorICAgICAgICAgICAgICAtOTMwLC0xNjIwNiwgIC03MTcsLTE2MTc1LCAtMjgzOSwtMTYz
NzQsIC00NTU4LC0xNjIzNywgLTUyMDcsCisgICAgICAgICAgICAtMTU5MDMsIC02NDIxLCAgNjM3
MywgLTE0MDMsICA1NDMxLCAtMTA3MywgIDM2NDEsIC0xMzA0LCAtNDQ5NSwKKyAgICAgICAgICAg
ICAgLTc2OSwgLTcyNzYsICAyODU2LCAtNzg3MCwgIDMzMTQsIC04NzMwLCAgMzk2NCwtMTAxODMs
ICA0MDExLAorICAgICAgICAgICAgLTExMTM1LCAgMzQyMSwtMTE3MjcsICAyOTY2LC0xMjM2MCwg
IDI4MTgsLTEzNDcyLCAgMzY2MCwtMTM4MDUsCisgICAgICAgICAgICAgIDUxNjIsLTEzNDc4LCAg
NjQzNCwtMTI4NDAsICA3MzM1LC0xMjQyMCwgIDY4NjUsLTEyMzQ5LCAgNTU0MSwKKyAgICAgICAg
ICAgIC0xMTk2NSwgIDU1MzAsLTEwODIwLCAgNTEzMiwgLTkxOTcsICAzMzY3LCAtNzc0NSwgIDEy
MjMsIC02OTEwLAorICAgICAgICAgICAgICAtNDMzLCAtNjIxMSwgLTE3MTEsIC00OTU4LCAtMTAy
NSwgLTM3NTUsICAtODM2LCAtMzI5MiwgLTE2NjYsCisgICAgICAgICAgICAgLTI2NjEsLTEwNzU1
LCAzMTQ3MiwtMjc5MDYsIDMxNDcxLCAxODY5MCwgIDU2MTcsIDE2NjQ5LCAxMTI1MywKKyAgICAg
ICAgICAgIC0yMjUxNiwtMTc2NzQsLTMxOTkwLCAgMzU3NSwtMzE0NzksICA1ODgzLCAyNjEyMSwg
MTI4OTAsIC02NjEyLAorICAgICAgICAgICAgIDEyMjI4LC0xMTYzNCwgICA1MjMsIDI2MTM2LC0y
MTQ5NiwgMjA3NDUsLTE1ODY4LCAtNDEwMCwtMjQ4MjYsCisgICAgICAgICAgICAgMjMyODIsIDIy
Nzk4LCAgIDQ5MSwgLTE3NzQsIDE1MDc1LC0yNzM3MywtMTMwOTQsICA2NDE3LC0yOTQ4NywKKyAg
ICAgICAgICAgICAxNDYwOCwgMTAxODUsIDE2MTQzLCAyMjIxMSwgLTg0MzYsICA0Mjg4LCAtODY5
NCwgIDIzNzUsICAzMDIzLAorICAgICAgICAgICAgICAgNDg2LCAgMTQ1NSwgICAxMjgsICAgMjAy
LCAgIDk0MiwgIC05MjMsICAyMDY4LCAtMTIzMywgIC03MTcsCisgICAgICAgICAgICAgLTEwNDIs
IC0yMTY3LCAzMjI1NSwgLTQ2MzIsICAgMzEwLCAtNDQ1OCwgLTM2MzksIC01MjU4LCAgMjEwNiwK
KyAgICAgICAgICAgICAtNjg1NywgIDI2ODEsIC03NDk3LCAgMjc2NSwgLTY2MDEsICAxOTQ1LCAt
NTIxOSwgMTkxNTQsIC00ODc3LAorICAgICAgICAgICAgICAgNjE5LCAtNTcxOSwgLTE5MjgsIC02
MjA4LCAgLTEyMSwgICA1OTMsICAgMTg4LCAgMTU1OCwgLTQxNTIsCisgICAgICAgICAgICAgIDE2
NDgsICAgMTU2LCAgMTYwNCwgLTM2NjQsIC02ODYyLCAtMjg1MSwgLTUxMTIsIC0zNjAwLCAtMzc0
NywKKyAgICAgICAgICAgICAtNTA4MSwgLTQ0MjgsIC01NTkyLCAyMDk3NCwtMjczOTcsLTE4OTQ0
LC0xODY5MCwgMjA5OTEsLTE3NDA2LAorICAgICAgICAgICAgICA1NjMyLC0xNDMzMCwgMjg5MTEs
IDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsCisgICAgICAgICAgICAg
MTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwtMjU1OTQsIDE3NDA4LCAy
OTk1OCwKKyAgICAgICAgICAgICAtNzE3MywtMTY4ODgsICA5MDk4LCAgLTYxMywgIDgzNjIsICAg
Njc1LCAgNzc3NCwgIDI1OTcsICA4NTQ5LAorICAgICAgICAgICAgICA1Mjc4LCAgODc0MywgIDkz
NzUsICA2OTQwLCAxMzAzOCwgIDQ4MjYsIDE0NTk4LCAgNzcyMSwtMjQzMDgsCisgICAgICAgICAg
ICAtMjk5MDUsLTE5NzAzLC0xNzEwNiwtMTYxMjQsIC0zMjg3LC0yNjExOCwtMTk3MDksLTEwNzY5
LCAyNDM1MywKKyAgICAgICAgICAgICAyODY0OCwgIDY5NDYsIC0xMzYzLCAxMjQ4NSwgLTExODcs
IDI2MDc0LC0yNTA1NSwgMTAwMDQsLTI0Nzk4LAorICAgICAgICAgICAgICA3MjA0LCAtNDU4MSwg
LTk2NzgsICAxNTU0LCAxMDU1MywgIDMxMDIsIDEyMTkzLCAgMjQ0MywgMTE5NTUsCisgICAgICAg
ICAgICAgIDEyMTMsIDEwNjg5LCAtMTI5MywgICA5MjEsIC00MTczLCAxMDcwOSwgLTYwNDksICA4
ODE1LCAtNzEyOCwKKyAgICAgICAgICAgICAgODE0NywgLTgzMDgsICA2ODQ3LCAtMjk3NywgIDQ5
MjAsLTExNDQ3LC0yMjQyNiwtMTE3OTQsICAzNTE0LAorICAgICAgICAgICAgLTEwMjIwLCAgMzQz
MCwgLTc5OTMsICAxOTI2LCAtNzA3MiwgICAzMjcsIC03NTY5LCAgLTYwOCwgLTc2MDUsCisgICAg
ICAgICAgICAgIDM2OTUsIC02MjcxLCAtMTU3OSwgLTQ4NzcsIC0xNDE5LCAtMzEwMywgLTIxOTcs
ICAgMTI4LCAtMzkwNCwKKyAgICAgICAgICAgICAgMzc2MCwgLTU0MDEsICA0OTA2LCAtNjA1MSwg
IDQyNTAsIC02MjcyLCAgMzQ5MiwgLTYzNDMsICAzMTk3LAorICAgICAgICAgICAgIC02Mzk3LCAg
NDA0MSwgLTYzNDEsICA2MjU1LCAtNjM4MSwgIDc5MDUsIDE2NTA0LCAgICAgMCwgLTYxNDQsCisg
ICAgICAgICAgICAgIDgwNjIsIC01NjA2LCAgODYyMiwgLTU1NTUsICAgIC05LCAgICAtMSwgIDc0
MjMsICAgICAwLCAgICAgMSwKKyAgICAgICAgICAgICAgIDIzOCwgIDUxNDgsICAxMzA5LCAgNDcw
MCwgIDIyMTgsICA0NDAzLCAgMjU3MywgIDM1NjgsIDI4MzAzLAorICAgICAgICAgICAgICAxNzU4
LCAgMzQ1NCwgLTEyNDcsICAzNDM0LCAtNDkxMiwgIDI4NjIsIC03ODQ0LCAgMTcxOCwtMTAwOTUs
CisgICAgICAgICAgICAgICAzNjksLTEyNjMxLCAgIDEyOCwgLTM5MDQsICAzNjMyLCAtNTQwMSwg
IDQ5MDYsIC02MDUxLCAgNDI1MCwKKyAgICAgICAgICAgICAtNjI3MiwgIDM0OTIsIC02MzQzLCAg
MzE5NywgLTYzOTcsICA0MDQxLCAtNjM0MSwgIDYyNTUsIC02MzgxLAorICAgICAgICAgICAgICA3
OTA1LCAxNjUwNCwgICAgIDAsIC02MTQ0LCAgODA2MiwgLTU2MDYsICA4NjIyLCAtNTU1NSwgIDg0
MzksCisgICAgICAgICAgICAgLTMzODIsICA3Mzk4LCAtMTE3MCwgIDYxMzIsICAgMjM4LCAgNTE0
OCwgIDEzMDksICA0NzAwLCAgMjIxOCwKKyAgICAgICAgICAgICAgNDQwMywgIDI1NzMsICAzNTY4
LCAgMjcwMywgIDE3NTgsICAzNDU0LCAtMTI0NywgIDM0MzQsIC00OTEyLAorICAgICAgICAgICAg
ICAyODYyLCAtNzg0NCwgIDE3MTgsLTEwMDk1LCAgIDM2OSwtMTI2MzEsICAtMjU5LC0xNDYzMiwg
ICAyMzQsCisgICAgICAgICAgICAtMTUwNTYsICAtNTIxLC0xNTE3MCwgIC0zODYsLTE2MDE1LCAg
LTY0MSwtMTY1MDUsICAtOTMwLC0xNjIwNiwKKyAgICAgICAgICAgICAtMTIwOSwtMTYxNDYsIC0y
ODM5LC0xNjM3NCwgLTQ1NTgsLTE2MjE4LCAtNTIwNywtMTU5MDMsIC02NDIxLAorICAgICAgICAg
ICAgLTE1NjE1LCAtNjkyNSwtMTQ4NzEsIC02MTQ5LC0xMzc1OSwgLTUyMzMsLTEyODQ0LCAxODMx
MywgLTQzNTcsCisgICAgICAgICAgICAgLTU2OTYsICAyODA0LCAxMjk5MiwtMjI4MDIsIC02NzIw
LCAtOTc3MCwgLTcwODgsIC04OTk4LCAxNDMzMCwKKyAgICAgICAgICAgIC0xMjUyMywgMTQ4NDMs
IC02MTMwLCAyOTE3OCwgIC0yNTAsLTI3Mzk2LCAxMDQ2NywgMTY5MDcsIC0zMzU5LAorICAgICAg
ICAgICAgIC02NjQ0LCAzMTk2NSwgMTQ2MDcsLTIxNTQ0LC0zMjQ5NywgMjQwMjAsIDEyNTU3LC0y
NjkyNiwgIC0xNzMsCisgICAgICAgICAgICAgIC0xMjksIC02NDAxLCAgLTEzMCwtMjUwODksIC0z
ODQxLCAtNDkxNiwgLTMwNDgsICAgMjI0LCAgLTIzNywKKyAgICAgICAgICAgICAtMzk2OSwgIC0x
ODksIC0zNTI5LCAgLTUzNSwgLTM0NjQsLTE0ODYzLC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0Mzk1LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAor
ICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywgICAgIDAsIDMyNTEyLC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAg
IC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsICA5OTI1LCAgLTcxOCwgIDk3NTMs
ICAtNzY3LAorICAgICAgICAgICAgICA5MDk5LCAgLTYxMywgIDgzNjIsICAgNjc1LCAgNzc3NCwg
IDI1OTcsICA4NTQ5LCAgNTI3OCwgIDg3NDMsCisgICAgICAgICAgICAgIDkzNzUsICA2OTQwLCAx
MzAzOCwgIDQ4MjYsIDE0NTk4LCAgNzcyMSwtMjQzMDgsLTI5OTA1LC0xOTcwMywKKyAgICAgICAg
ICAgIC0xNzEwNiwtMTYxMjQsIC0zMjg3LC0yNjExOCwtMTk3MDksICAgICAwLCAyNDM1MywgMjg2
NDgsIDEwMjc0LAorICAgICAgICAgICAgLTExMjkyLC0yOTY2NSwtMTY0MTcsIDI0MzQ2LCAxNDU1
MywgMTg3MDcsIDI2MzIzLCAtNDU5NiwtMTc3MTEsCisgICAgICAgICAgICAgIDUxMzMsIDI2MzI4
LCAgICAxMywtMzExNjgsIDI0NTgzLCAxODQwNCwtMjg5MjcsLTI0MzUwLCAxOTQ1MywKKyAgICAg
ICAgICAgICAyODY0MiwgIDEwMTksLTEwNzc3LCAtMzA3OSwgMzAxODgsIC03Njg2LCAyNzYzNSwt
MzI1MjEsLTE2Mzg0LAorICAgICAgICAgICAgIDEyNTI4LCAtNjM4NiwgMTA5ODYsIDIzODI3LC0y
NTg4MCwtMzI3NTIsLTIzMzIxLCAxNDYwNSwgMzIyMzEsCisgICAgICAgICAgICAgICA3ODAsLTEz
ODQ5LCAxNTExOSwgMjg2NDcsICA0ODg4LCAtNzcwNSwgMzA3NTAsICAgIDY0LCAgICAgMCwKKyAg
ICAgICAgICAgICAzMjQ4OCwgIDY2ODcsLTIwNzU4LCAxOTc0NSwgLTIwNzAsLTEzNzkyLCAtNjQx
NCwgMjgxODgsIC0yODIxLAorICAgICAgICAgICAgIC00NTg1LCAgNzE2OCwgIDc0NDQsIDIzNTU3
LC0yMTk5OCwgMTMwNjQsICAzMzQ1LCAtNDA4NiwtMjg5MTUsCisgICAgICAgICAgICAgLTg2OTQs
IDMyMjYyLCAgODQ2MSwgMjczODcsLTEyMjc1LCAxMjAxMiwgMjM1NjMsLTE4NzE5LC0yODQxMCwK
KyAgICAgICAgICAgICAyOTE0NCwtMjIyNzEsICAtNTYyLCAtOTk4NiwgLTU0MzQsIDEyMjg4LCAg
NTU3MywtMTY2NDIsIDMyNDQ4LAorICAgICAgICAgICAgIDI5MTgyLCAzMjcwNSwtMzA3MjMsIDI0
MjU1LC0xOTcxNiwgMTgzNjgsIC00MzU3LCAtNTY5NiwgIDI4MDQsCisgICAgICAgICAgICAgMTI5
OTIsLTIyODAyLC0yMjA4MCwgLTc3MDEsIC01MTgzLCAgIDQ4NiwgLTMxMzMsIC01NjYwLCAtMTA4
MywKKyAgICAgICAgICAgICAxNjg3MSwtMjg3MjYsLTExMDI5LC0zMDI1OSwgLTEyMDksLTE2MTQ2
LCAtMjgzOSwtMTYzNzQsIC00NTU4LAorICAgICAgICAgICAgLTE2MjE4LC0xMDUyMywgMjA2OTcs
IC05NTAwLCAtMTMxNiwgIDU0MzEsIC0xMDczLCAgMzY0MSwgLTEzMDQsCisgICAgICAgICAgICAg
IDE2NDksICAtNzY5LCAtNzI3NiwgIDI4NTYsIC03ODcwLCAgMzMxNCwgLTg3MzAsICAzOTY0LC0x
MDE4MywKKyAgICAgICAgICAgICAgNDAxMSwtMTExMzUsICAzNDIxLC0xMTcyNywgMjEzOTgsIDMy
NzY3LCAgICAtMSwgMzI0ODYsICAgIC0xLAorICAgICAgICAgICAgICA2MzAxLC0xMzA3MSwgIDYz
ODAsIC03OTQ4LCAgICAtMSwgMzI3NjcsICAgMjQwLCAxNDA4MSwgLTU2NDYsCisgICAgICAgICAg
ICAgMzA5NzMsIC0zNTk4LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsIDMyNzY3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LCAgODkw
MSwgIDkzNzUsICA2OTQwLCAxMzAzOCwgIDQ4MjYsIDE0NTk4LCAgNzcyMSwtMjQzMDgsCisgICAg
ICAgICAgICAtMjk5MDUsLTE5NzAzLC0xNzEwNiwtMTYxMjQsIC0zMjg3LC0yNjExOCwtMTk3MDks
LTEwNzY5LCAyNDM2MSwKKyAgICAgICAgICAgICAyODY0OCwgMTAyNzQsLTExMjkyLC0yOTY2NSwt
MTY0MTcsIDI0MzQ2LCAxNDU4MCwgMTg3MDcsIDI2MzIzLAorICAgICAgICAgICAgIC00NDQwLC0x
NzcxMSwgIDUxMzMsIDI2MzI4LC0xNDU3OSwtMzEwMDgsIDI0NTgzLCAxODQwNCwgMjg0MTcsCisg
ICAgICAgICAgICAtMjQzNTAsIDE5NDUzLCAyODY0MiwtMzI1MTMsLTEwNzc3LCAtMzA3OSwgMzAx
ODgsIC03Njg2LCAyNzYzNSwKKyAgICAgICAgICAgIC0zMjUyMSwtMTYzODQsLTIwMjQwLCAtNjM4
NiwgMTA5ODYsIDIzODI3LC0yNTg4MCwtMzI3NTIsLTIzMzIxLAorICAgICAgICAgICAgIDE0NjA1
LCAzMjIzMSwgICA3ODAsLTEzODQ5LCAxNTExOSwgMjg2NDcsICA0ODg4LCAtNzcwNSwtMTUwNzQs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0
OTA3LC0xNDkwNywtMTQ5MDcsICA4MTkyLC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ4OTcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAg
ICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsCisgICAgICAgICAgICAtMTU5MzEsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAg
ICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAyNjEyMSwgMTI4OTAsICAyNjA0LAor
ICAgICAgICAgICAgIDEyMjI4LC0xMTYzNCwgMTIyOTksICA1NTczLC0xNjY0MiwgMzI0NTIsIDI5
MTgyLCAzMjcwNSwtMzA3MjMsCisgICAgICAgICAgICAgMjQyNTUsLTE5NzE2LCAxMzI0OCwtMTE3
NzksIC01Njk2LCAgMjgwNCwgMTI5OTIsLTI3NjY2LC0yMjA4MCwKKyAgICAgICAgICAgICAtNzcw
MSwgLTUxODMsIC02NjgyLC0zMTQ2NCwgMTQzMzAsLTEyNTIzLCAxNDg0MywgLTYxMzAsIDI5MTc4
LAorICAgICAgICAgICAgICAgLTE4LC0yNzM5NiwgMTA0NjcsIDE2OTA3LCAtMzM1OSwgLTY2NDQs
IDMxOTY1LCAxNDYwNywtMjE1NDQsCisgICAgICAgICAgICAtMzI0OTcsIDI0MDIwLCAxMjU1Nywt
MjY5MjYsLTE4NDIxLCAgIDcwNiwgMjQ1ODcsIDE5NjU5LCAgNDg3OCwKKyAgICAgICAgICAgICAx
MDk1NCwgMjMwNjAsICA4OTA3LC0xMDIxNSwtMjI1NzksIDMxNzcyLC0xMTgyNSwtMTU1OTAsLTIz
MDg5LAorICAgICAgICAgICAgIDE3MTczLC0yNTkwMywtMTczODcsICAzMjg1LCAgNDg4NCwgMTAy
MDQsLTE2NjI3LC0xNDM2NywgICA1MTYsCisgICAgICAgICAgICAgMjA0NTMsLTE2ODk4LCAyMDk2
NywtMjM4MTUsICAgLTIwLCAyMjAxMSwtMTcxNjcsICA5NDY4LCAzMjQ5OSwKKyAgICAgICAgICAg
IC0yNTYwNywgIC01MjMsIC0zODgzLCAgLTM5MCwgLTQyMDYsICAgNjM0LCAtMzc2NywgIDIzMjUs
IC0yNzUxLAorICAgICAgICAgICAgICAzMTE1LCAtMjM5MiwgIDI3NDYsIC0yMTczLCAgMjMxNywg
LTExNDcsICAyMzI2LCAyMzE0MiwgMTEzMTQsCisgICAgICAgICAgICAtMTUxMzAsLTI5MTM3LCAg
MzAyNiwgIDYxNDYsICAyMTUwLCAgMjQ3NiwgIDExMDUsICAtODMwLCAgMTc3NSwKKyAgICAgICAg
ICAgICAtMzQyNSwgIDM2NzQsIC01Mjg3LCAgNDYwOSwgLTcxNzUsICA0OTIyLCAtOTU3OSwgIDQ1
NTYsLTEyMDA3LAorICAgICAgICAgICAgICA0MjM2LC0xNDAyMywgIDM4NzksLTE1NTUzLCAgMzE1
OCwtMTYxNjEsICAyNTc2LCAxODM5OCwtMTI1MzUsCisgICAgICAgICAgICAgLTY2NDUsLTIwNzM1
LC0zMjc2MywtMTM4MjQsLTIwOTkyLCAyNTg1OSwgIDUzNzIsIDEyMDQwLCAxMzMwNywKKyAgICAg
ICAgICAgICAtNDM1NSwtMzAyMTMsICAgIC05LCAtNjAxOSwgMTQwNjEsLTMxNDg3LC0xMzg0Miwg
MzA0NDksIDE1MDgzLAorICAgICAgICAgICAgIDE0MDg4LCAzMTIwNSwtMTg2NzgsLTEyODMwLCAx
NDA5MCwtMjYxMzgsLTI1MzM3LC0xMTU0MSwgLTMyNTQsCisgICAgICAgICAgICAgMjc2MjgsLTIy
MjcwLCAzMDk1MywtMTYxMzYsLTMwNzQ1LCAyMDk5MSwtMTc0MDYsICA1NjMyLC0xNDMzMCwKKyAg
ICAgICAgICAgICAyODkxMSwtMjU1OTQsIDE3NDA4LC0yMDQ3NCwgMTMwNDEsIC04NzMxLCAgMjI5
MiwgLTM4NjAsIDI0MDQ5LAorICAgICAgICAgICAgIDEwMjI1LC0xOTIyMCwgMTA0NzgsIC00Mzc0
LCAtMTE5OSwgICAxNDgsICAtMzMwLCAgIC03NCwgICA1OTMsCisgICAgICAgICAgICAgICAxODgs
ICAxNTU4LCAtNDE1MiwgMTU5ODQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwK
KyAgICAgICAgICAgICAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAg
MTU5OCwgICAxNTYsICAxNjA0LAorICAgICAgICAgICAgIC0xMTYzLCAgMjI3OCwtMzAwMTgsLTI1
ODIxLC0yMTc2MywtMjM3NzYsIDI0MDY2LCAgOTUwMiwgMjU4NjYsCisgICAgICAgICAgICAtMjUw
NTUsIDEwMDA0LC0yNDc5OCwgIDcyMDQsIC00NTgxLCAtOTY3OCwgIDE1NTQsIDEwNTUzLCAgMzEw
MiwKKyAgICAgICAgICAgICAxMjE5MywgIDI0NDMsIDExOTU1LCAgMTIxMywgMTA2ODksIC0xMjkz
LCAgIDkyMSwgLTQxNzMsICA4NjYxLAorICAgICAgICAgICAgIC02MDQ5LCAgODgxNSwtMjEyMjEs
LTE0ODU0LCAyMzg0MCwgLTk0NzcsICA4NTQ5LCAgNTI3OCwgIDg3NDMsCisgICAgICAgICAgICAg
IDkzNzUsICA2OTQwLCAxMzAzOCwgIDQ4MjYsIDE0NTk4LCAgNzcyMSwtMjQzMDgsLTI5OTA1LC0x
OTcwMywKKyAgICAgICAgICAgIC0xNzEwNiwtMTYxMjQsIC0zMjg3LC0yNjExOCwtMTk3MDksLTEw
NzY5LCAyNDM2MSwgMjg2NDgsIDEwMjc0LAorICAgICAgICAgICAgLTExMjkyLC0yOTY2NSwtMTY0
MTcsIDI0MzQ2LCAxNDU4MCwgMTg3MDcsIDI2MzIzLCAtNDQxMCwtMTc3MTEsCisgICAgICAgICAg
ICAgIDUxMzMsIDI2MzI4LC0xNDU3OSwtMzEwMDgsIDI0NTgzLCAxODQwNCwgMjg0MTcsLTI0MzUw
LCAxOTQ1MywKKyAgICAgICAgICAgICAyODY0MiwtMzI1MTMsLTEwNzc3LCAtMzA3OSwgMzAxODgs
IC03Njg2LCAyNzYzNSwtMzI1MjEsLTE2Mzg0LAorICAgICAgICAgICAgLTIwMjQwLCAtNjM4Niwg
MTA5ODYsIDIzODI3LC0yNTg4MCwtMzI3NTIsLTIzMzIxLCAxNDYwNSwgMzIyMzEsCisgICAgICAg
ICAgICAgICA3ODAsLTEzODQ5LCAxNTExOSwgMjg2NDcsICA0ODg4LCAtNzcwNSwgMzA3NTAsICAg
IDY0LCAgICAgMCwKKyAgICAgICAgICAgICAzMjQ4OCwgIDY2ODcsLTIwNzU4LCAxOTc0NSwgLTIw
NzAsICAgIC0xLCAgICAtMSwgICAgMjgsICAgMjU2LAorICAgICAgICAgICAgIC00NjA4LCAgNzE2
OCwgIDc0NDQsIDIzNTU3LC0yMTk5OCwgMTMwNjQsICAzMzQ1LCAtNDA4NiwtMjg5MTUsCisgICAg
ICAgICAgICAgLTg1OTQsIDMyMjYyLCAgODQ2MSwgMjczODcsLTEyMjc1LCAxMjAxMiwgMjM1NjMs
LTE4NzE5LC0yODQxMCwKKyAgICAgICAgICAgICAyOTE0NCwtMjIyNzEsLTMyNTYyLC0xNjM4NCwg
MTI1MjgsIC02Mzg2LCAxMDk4NiwgMjM4MjcsLTI1ODgwLAorICAgICAgICAgICAgLTMyNzUyLC0y
MzMyMSwgMTQ2MDUsIDMyMjMxLCAgIDc4MCwtMTM4NDksIDE1MTE5LCAyODY0NywgIDQ4ODgsCisg
ICAgICAgICAgICAgLTc3MDUsIDMwNzUwLCAgICA2NCwgICAgIDAsIDMyNDg4LCAgNjY4NywtMjA3
NTgsIDE5NzQ1LCAtMjA3MCwKKyAgICAgICAgICAgIC0xMzc5MiwgLTY0MTQsIDI4MTg4LCAtMjgy
MSwgLTQ1ODUsICA3MTY4LCAgNzQ0NCwgMjM1NTcsLTIxOTk4LAorICAgICAgICAgICAgIDEzMDY0
LCAgMzM0NSwgLTQwODYsLTI4OTE1LCAtODY5NCwgMzIyNjIsICA4NDYxLCAyNzM4NywtMTIyNzUs
CisgICAgICAgICAgICAgMTIwMTIsIDIzNTYzLC0xODcxOSwtMjg0MTAsIDI5MTQ0LC0yMjI3MSwg
IC01NjIsIC05OTg2LCAtNTQzNCwKKyAgICAgICAgICAgICAxMjI4OCwgLTIxMDcsLTE2NjQzLCAz
MjQ1MiwgMjkxODIsIDMyNzA1LC0zMDcyMywgMjQyNTUsLTE5NzE2LAorICAgICAgICAgICAgIDE4
MzY4LCAtNDM1NywgLTU2OTYsICAyODA0LCAxMjk5MiwtMjI4MDIsLTIyMDgwLCAtNzcwMSwgLTUx
ODMsCisgICAgICAgICAgICAgICA0ODYsIC0zMTMzLCAtNTY2MCwgLTEwODMsIDE2ODcxLC0yODcy
NiwtMTEwMjksLTMwMjU5LCAtMTIwOSwKKyAgICAgICAgICAgIC0xNjE0NiwgLTI4MzksLTE2Mzc0
LCAtNDU1OCwtMTYyMTgsLTEwNTIzLCAyMDY5NywgLTk1MDAsIC0xMzE2LAorICAgICAgICAgICAg
ICA1NDMxLCAtMTA3MywgIDM2NDEsIC0xMzA0LCAgMTY0OSwgIC03NjksIC03Mjc2LCAgMjg1Niwg
LTc4NzAsCisgICAgICAgICAgICAgIDMzMTQsIC04NzMwLCAgMzk2NCwtMTAxODMsICA0MDExLC0x
MTEzNSwgIDM0MjEsLTExNzI3LCAyMTM5OCwKKyAgICAgICAgICAgICAzMjc2NywgICAgLTEsIDMy
NDg2LCAgICAtMSwgICAtOTksLTEzMDcyLCAgNjM4MCwgLTc5NDgsICA0ODY0LAorICAgICAgICAg
ICAgIDMyNzY3LCAxNzM5MiwgMTQzMzUsIC01NjQ2LCAzMDk3MywgLTM1OTgsLTEwMjk5LC0xNDkw
NywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcs
LTE0OTA1LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAg
ICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE5NzcxLC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTY0NDMsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAor
ICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAg
IC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAg
ICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNTkz
MSwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAg
ICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAg
ICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywgICAgLTEsLTE0OTA3LC0xNDkwNywK
KyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsICA3ODc3LCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAg
ICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAg
ICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIC05OTQsIC03Mjc2LCAgMjg1NiwgLTc4NzAsCisgICAg
ICAgICAgICAgIDMzMTQsIC04NzMwLCAgMzk2NCwtMTAxODMsICA0MDExLC0xMTEzNSwgIDM0MjEs
LTExNzI3LCAyMTM5OCwKKyAgICAgICAgICAgICAzMjc2NywgICAgLTEsIDMyNDg2LCAgICAtMSwg
ICAtOTksLTEzMDcyLCAgNjM4MCwgLTc5NDgsICA0ODY0LAorICAgICAgICAgICAgIDMyNzY3LCAx
NzM5MiwgMTQzMzUsIC01NjQ2LCAzMDk3MywgLTM1OTgsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisg
ICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA1LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LCAgIDE5NywgICAgIDAsLTE0OTc3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAg
ICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsIDEyODM4LCAgNjY1
MywgICAyOTQsCisgICAgICAgICAgICAtMjk2OTksLTI1ODIxLC0yMTc2MywtMjM3NzYsIDI0MDY2
LCAgOTUwMiwgMjU4NjYsLTI1MDU1LCAxMDAwNCwKKyAgICAgICAgICAgIC0yNDc5OCwgIDcyMDQs
IC00NTgxLCAtOTY3OCwgIDE1NTQsIDEwNTUzLCAgMzEwMiwgMTIxOTMsICAyNDQzLAorICAgICAg
ICAgICAgIDExOTU1LCAgMTIxMywgMTA2ODksIC0xMjkzLCAgIDkyMSwgICAxNzksICA4NDQ4LCAt
NjA0OSwgIDg4MTUsCisgICAgICAgICAgICAgLTcxMjgsICA4MTQ3LCAtODMwOCwgIDY4NDcsIC05
ODg5LCAgNDkyMCwtMTE0NDcsICAzMTc0LC0xMTc5NCwKKyAgICAgICAgICAgICAgMzUxNCwtMTAy
MjAsICAzNDMwLCAxNjM4NCwgIDE5MjYsIC03MDcyLCAgIDMyNywgLTc1MzcsICAtNjA4LAorICAg
ICAgICAgICAgIC03NjA1LCAtMTE2OSwgLTYzOTcsIC0xNTc5LCAtNDg3NywgLTE0MTksIC0zMTAz
LCAtMjE5NywgICAxMjgsCisgICAgICAgICAgICAgLTM5MDQsICAzNjMyLCAtNTQwMSwgIDQ5MDYs
IC02MDUxLCAgNDI1MCwgLTYyNzIsICAzNDkyLCAtNjM0MywKKyAgICAgICAgICAgICAgMzE5Nywg
LTYzOTcsICA0MDQxLCAtNjM0MSwgIDYyNTUsIC02MzgxLCAgNzkwNSwgMTY1MDQsICAgICAwLAor
ICAgICAgICAgICAgIC02MTQ0LCAgODA2MiwgLTU2MDYsICA4NjIyLCAtNTU1NSwgIDg0MzksIC0z
MzgyLCAgNzM5OCwgLTExNzAsCisgICAgICAgICAgICAgIDYxMzIsICAgMjM4LCAgNTE0OCwgIDEz
MDksICA0NzAwLCAgMjIxOCwgIDQ0MDMsICAyNTczLCAgMzU2OCwKKyAgICAgICAgICAgICAgMjcw
MywgIDE3NTgsICAzNDU0LCAtMTI0NywgIDM0MzQsIC00OTEyLCAgMjg2MiwgLTc4NDQsICAxNzE4
LAorICAgICAgICAgICAgLTEwMDk1LCAgIDM2OSwtMTI2MzEsICAtMjU5LC0xNDYzMiwgICAyMzQs
LTE1MDU2LCAgLTQ5MSwtMTYxOTQsCisgICAgICAgICAgICAgIC0zODYsLTE2MDE1LCAgLTY0MSwt
MTY1MDUsICAtOTMwLC0xNjIwNiwgLTEyMDksLTE2MTQ2LCAtMjgzOSwKKyAgICAgICAgICAgIC0x
NjM3NCwgLTQ1NTgsLTE2MjE4LCAtNTIwNywtMTU5MDMsIC02NDIxLC0xNTYxNSwgLTY5MjUsLTE0
ODcxLAorICAgICAgICAgICAgIC02MTQ5LC0xMzc1OSwgLTUyMzMsLTEyODQ0LCAxODMxMywgLTQz
NTcsIC01Njk2LCAgMjgwNCwgMTI5OTIsCisgICAgICAgICAgICAtMjI4MDIsIC02NzIwLCAtOTc3
MCwgLTcwODgsIC04OTk4LCAxNDMzMCwtMTI1MjMsIDE0ODQzLCAtNjEzMCwKKyAgICAgICAgICAg
ICAyOTE3OCwgIC0yNTAsLTI3Mzk2LCAxMDQ2NywgMTY5MDcsIC0zMzU5LCAtNjY0NCwgMzE5NjUs
IDE0NjA3LAorICAgICAgICAgICAgLTIxNTQ0LC0zMjQ5NywgMjQwMjAsIDEyNTU3LC0yNjkyNiwg
IC0xNzMsICAtMTI5LCAtNjQwMSwgIC0xMzAsCisgICAgICAgICAgICAtMjUwODksIC0zODE2LCAt
NDkxNiwgLTMwNDgsICAgLTMyLCAgICAtMSwgLTM5NjksICAgMjU2LCAtMzUyOSwKKyAgICAgICAg
ICAgICAgLTUzNSwgLTM0NjQsLTE0ODYzLC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAg
ICAgICAgICAtMTIwOSwtMTYxNDYsIC0yODM5LC0xNjM3NCwgLTQ1NTgsLTE2MjE4LC0xMDUyMywg
MjA2OTcsIC05NTAwLAorICAgICAgICAgICAgIC0xMzE2LCAgNTQzMSwgLTEwNzMsICAzNjQxLCAt
MTMwNCwgIDE2NDksICAtNzY5LCAtNzI3NiwgIDI4NTYsCisgICAgICAgICAgICAgLTc4NzAsICAz
MzE0LCAtODczMCwgIDM5NjQsLTEwMTgzLCAgNDAxMSwtMTExMzUsICAzNDIxLC0xMTcyNywKKyAg
ICAgICAgICAgICAyMTM5OCwgMzI3NjcsICAgIC0xLCAzMjQ4NiwgICAgLTEsICA2MzAxLC0xMzA3
MSwgIDYzODAsIC03OTQ4LAorICAgICAgICAgICAgICAgIC0xLCAzMjc2NywgICAyNDAsIDE0MDgx
LCAtNTY0NiwgMzA5NzMsIC0zNTk4LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywK
KyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAgMzI3
NjcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LCAgODkwMSwgIDkzNzUsICA2OTQwLAorICAgICAgICAgICAgIDEzMDM4LCAgNDgyNiwgMTQ1OTgs
ICA3NzIxLC0yNDMwOCwtMjk5MDUsLTE5NzAzLC0xNzEwNiwtMTYxMjQsCisgICAgICAgICAgICAg
LTMyODcsLTI2MTE4LC0xOTcwOSwtMTA3NjksIDI0MzYxLCAyODY0OCwgMTAyNzQsLTExMjkyLC0y
OTY2NSwKKyAgICAgICAgICAgIC0xNjQxNywgMjQzNDYsIDE0NTgwLCAxODcwNywgMjYzMjMsIC00
NDQwLC0xNzcxMSwgIDUxMzMsIDI2MzI4LAorICAgICAgICAgICAgLTE0NTc5LC0zMTAwOCwgMjQ1
ODMsIDE4NDA0LCAyODQxNywtMjQzNTAsIDE5NDUzLCAyODY0MiwtMzI1MTMsCisgICAgICAgICAg
ICAtMTA3NzcsIC0zMDc5LCAzMDE4OCwgLTc2ODYsIDI3NjM1LC0zMjUyMSwtMTYzODQsLTIwMjQw
LCAtNjM4NiwKKyAgICAgICAgICAgICAxMDk4NiwgMjM4MjcsLTI1ODgwLC0zMjc1MiwtMjMzMjEs
IDE0NjA1LCAzMjIzMSwgICA3ODAsLTEzODQ5LAorICAgICAgICAgICAgIDE1MTE5LCAyODY0Nywg
IDQ4ODgsIC03NzA1LC0xNTA3NCwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsICA4MTkyLAorICAgICAgICAgICAgLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAg
ICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ4OTcsCisg
ICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTU5MzEsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsIDI2
MTIxLCAxMjg5MCwgIDI2MDQsIDEyMjI4LC0xMTYzNCwgMTIyOTksICA1NTczLAorICAgICAgICAg
ICAgLTE2NjQyLCAzMjQ1MiwgMjkxODIsIDMyNzA1LC0zMDcyMywgMjQyNTUsLTE5NzE2LCAxMzI0
OCwtMTE3NzksCisgICAgICAgICAgICAgLTU2OTYsICAyODA0LCAxMjk5MiwtMjc2NjYsLTIyMDgw
LCAtNzcwMSwgLTUxODMsIC02NjgyLC0zMTQ2NCwKKyAgICAgICAgICAgICAxNDMzMCwtMTI1MjMs
IDE0ODQzLCAtNjEzMCwgMjkxNzgsICAgLTE4LC0yNzM5NiwgMTA0NjcsIDE2OTA3LAorICAgICAg
ICAgICAgIC0zMzU5LCAtNjY0NCwgMzE5NjUsIDE0NjA3LC0yMTU0NCwtMzI0OTcsIDI0MDIwLCAx
MjU1NywtMjY5MjYsCisgICAgICAgICAgICAtMTg0MjEsICAgNzA2LCAyNDU4NywgMTk2NTksICA0
ODc4LCAxMDk1NCwgMjMwNjAsICA4OTA3LC0xMDIxNSwKKyAgICAgICAgICAgIC0yMjU3OSwgMzE3
NzIsLTExODI1LC0xNTU5MCwtMjMwODksIDE3MTczLC0yNTkwMywtMTczODcsICAzMjg1LAorICAg
ICAgICAgICAgICA0ODg0LCAxMDIwNCwtMTY2MjcsLTE0MzY3LCAgIDUxNiwgMjA0NTMsLTE2ODk4
LCAyMDk2NywtMjM4MTUsCisgICAgICAgICAgICAgICAtMjAsIDIyMDExLC0xNzE2NywgIDk0Njgs
IDMyNDk5LC0yNTYwNywgIC01MjMsIC0zODgzLCAgLTM5MCwKKyAgICAgICAgICAgICAtNDIwNiwg
ICA2MzQsIC0zNzY3LCAgMjMyNSwgLTI3NTEsICAzMTE1LCAtMjM5MiwgIDI3NDYsIC0yMTczLAor
ICAgICAgICAgICAgICAyMzE3LCAtMTE0NywgIDIzMjYsIDIzMTQyLCAxMTMxNCwtMTUxMzAsLTI5
MTM3LCAgMzAyNiwgIDYxNDYsCisgICAgICAgICAgICAgIDIxNTAsICAyNDc2LCAgMTEwNSwgIC04
MzAsICAxNzc1LCAtMzQyNSwgIDM2NzQsIC01Mjg3LCAgNDYwOSwKKyAgICAgICAgICAgICAtNzE3
NSwgIDQ5MjIsIC05NTc5LCAgNDU1NiwtMTIwMDcsICA0MjM2LC0xNDAyMywgIDM4NzksLTE1NTUz
LAorICAgICAgICAgICAgICAzMTU4LC0xNjE2MSwgIDI1NzYsIDE4Mzk4LC0xMjUzNSwgLTY2NDUs
LTIwNzM1LC0zMjc2MywtMTM4MjQsCisgICAgICAgICAgICAtMjA5OTIsIDI1ODU5LCAgNTM3Miwg
MTIwNDAsIDEzMzA3LCAtNDM1NSwtMzAyMTMsICAgIC05LCAtNjAxOQorICAgICAgICB9OworICAg
ICAgICBlcnIgPSBvcHVzX211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBjbSwgOTYwLCBkYXRhLCA3
MzgwKTsKKyAgICAgICAgYXNzZXJ0KGVyciA+IDApOworICAgIH0KKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX01VU0lDKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUigxKSk7
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUl9DT05T
VFJBSU5UKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19T
RVRfUFJFRElDVElPTl9ESVNBQkxFRCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVy
X2N0bChlbmMsIE9QVVNfU0VUX0ZPUkNFX0NIQU5ORUxTKE9QVVNfQVVUTykpOworICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElT
QUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9EVFgoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9DT01QTEVYSVRZKDYpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfTUFYX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSk7CisgICAg
b3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVT
X0FVVE8pKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
TFNCX0RFUFRIKDkpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfSU5CQU5EX0ZFQygxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX1BBQ0tFVF9MT1NTX1BFUkMoNSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1f
ZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDc3NTQxMCkpOworICAgIHsKKyAgICAg
ICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbVsxNDQwKjNdID0KKyAgICAgICAgeworICAgICAgICAg
ICAgIDMwNDQ5LCAxNTA4MywgMTQwODgsIDMxMjA1LC0xODY3OCwtMTI4MzAsIDE0MDkwLC0yNjEz
OCwtMjUzMzcsCisgICAgICAgICAgICAtMTE1NDEsIC0zMjU0LCAyNzYyOCwtMjIyNzAsIDMwOTUz
LC0xNjEzNiwtMzA3NDUsIDIwOTkxLC0xNzQwNiwKKyAgICAgICAgICAgICAgNTYzMiwtMTQzMzAs
IDI4OTExLC0yNTU5NCwgMTc0MDgsLTIwNDc0LCAxMzA0MSwgLTg3MzEsICAyMjkyLAorICAgICAg
ICAgICAgIC0zODYwLCAyNDA0OSwgMTAyMjUsLTE5MjIwLCAxMDQ3OCwgLTQzNzQsIC0xMTk5LCAg
IDE0OCwgIC0zMzAsCisgICAgICAgICAgICAgICAtNzQsICAgNTkzLCAgIDE4OCwgIDE1NTgsIC00
MTUyLCAxNTk4NCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwKKyAgICAgICAgICAgICAxNTkzNCwgMTU5
MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsICAxNTk4LAorICAg
ICAgICAgICAgICAgMTU2LCAgMTYwNCwgLTExNjMsICAyMjc4LC0zMDAxOCwtMjU4MjEsLTIxNzYz
LC0yMzc3NiwgMjQwNjYsCisgICAgICAgICAgICAgIDk1MDIsIDI1ODY2LC0yNTA1NSwgMTAwMDQs
LTI0Nzk4LCAgNzIwNCwgLTQ1ODEsIC05Njc4LCAgMTU1NCwKKyAgICAgICAgICAgICAxMDU1Mywg
IDMxMDIsIDEyMTkzLCAgMjQ0MywgMTE5NTUsICAxMjEzLCAxMDY4OSwgLTEyOTMsICAgOTIxLAor
ICAgICAgICAgICAgIC00MTczLCAgODY2MSwgLTYwNDksICA4ODE1LC0yMTIyMSwtMTQ4NTQsIDIz
ODQwLCAtOTQ3NywgIDg1NDksCisgICAgICAgICAgICAgIDUyNzgsICA4NzQzLCAgOTM3NSwgIDY5
NDAsIDEzMDM4LCAgNDgyNiwgMTQ1OTgsICA3NzIxLC0yNDMwOCwKKyAgICAgICAgICAgIC0yOTkw
NSwtMTk3MDMsLTE3MTA2LC0xNjEyNCwgLTMyODcsLTI2MTE4LC0xOTcwOSwtMTA3NjksIDI0MzYx
LAorICAgICAgICAgICAgIDI4NjQ4LCAxMDI3NCwtMTEyOTIsLTI5NjY1LC0xNjQxNywgMjQzNDYs
IDE0NTgwLCAxODcwNywgMjYzMjMsCisgICAgICAgICAgICAgLTQ0MTAsLTE3NzExLCAgNTEzMywg
MjYzMjgsLTE0NTc5LC0zMTAwOCwgMjQ1ODMsIDE4NDA0LCAyODQxNywKKyAgICAgICAgICAgIC0y
NDM1MCwgMTk0NTMsIDI4NjQyLC0zMjUxMywtMTA3NzcsIC0zMDc5LCAzMDE4OCwgLTc2ODYsIDI3
NjM1LAorICAgICAgICAgICAgLTMyNTIxLC0xNjM4NCwtMjAyNDAsIC02Mzg2LCAxMDk4NiwgMjM4
MjcsLTI1ODgwLC0zMjc1MiwtMjMzMjEsCisgICAgICAgICAgICAgMTQ2MDUsIDMyMjMxLCAgIDc4
MCwtMTM4NDksIDE1MTE5LCAyODY0NywgIDQ4ODgsIC03NzA1LCAzMDc1MCwKKyAgICAgICAgICAg
ICAgICA2NCwgICAgIDAsIDMyNDg4LCAgNjY4NywtMjA3NTgsIDE5NzQ1LCAtMjA3MCwgICAgLTEs
ICAgIC0xLAorICAgICAgICAgICAgICAgIDI4LCAgIDI1NiwgLTQ2MDgsICA3MTY4LCAgNzQ0NCwg
MjM1NTcsLTIxOTk4LCAxMzA2NCwgIDMzNDUsCisgICAgICAgICAgICAgLTQwODYsLTI4OTE1LCAt
ODU5NCwgMzIyNjIsICA4NDYxLCAyNzM4NywtMTIyNzUsIDEyMDEyLCAyMzU2MywKKyAgICAgICAg
ICAgIC0xODcxOSwtMjg0MTAsIDI5MTQ0LC0yMjI3MSwtMzI1NjIsLTE2Mzg0LCAxMjUyOCwgLTYz
ODYsIDEwOTg2LAorICAgICAgICAgICAgIDIzODI3LC0yNTg4MCwtMzI3NTIsLTIzMzIxLCAxNDYw
NSwgMzIyMzEsICAgNzgwLC0xMzg0OSwgMTUxMTksCisgICAgICAgICAgICAgMjg2NDcsICA0ODg4
LCAtNzcwNSwgMzA3NTAsICAgIDY0LCAgICAgMCwgMzI0ODgsICA2Njg3LC0yMDc1OCwKKyAgICAg
ICAgICAgICAxOTc0NSwgLTIwNzAsLTEzNzkyLCAtNjQxNCwgMjgxODgsIC0yODIxLCAtNDU4NSwg
IDcxNjgsICA3NDQ0LAorICAgICAgICAgICAgIDIzNTU3LC0yMTk5OCwgMTMwNjQsICAzMzQ1LCAt
NDA4NiwtMjg5MTUsIC04Njk0LCAzMjI2MiwgIDg0NjEsCisgICAgICAgICAgICAtMTQ4NTMsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAzMjc2NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAg
ICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0ODkxLC0xNDkw
NywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywgIDg5MDEsICA5Mzc1
LCAgNjk0MCwgMTMwMzgsICA0ODI2LCAxNDU5OCwgIDc3MjEsCisgICAgICAgICAgICAtMjQzMDgs
LTI5OTA1LC0xOTcwMywtMTcxMDYsLTE2MTI0LCAtMzI4NywtMjYxMTgsLTE5NzA5LC0xMDc2OSwK
KyAgICAgICAgICAgICAyNDM2MSwgMjg2NDgsIDEwMjc0LC0xMTI5MiwtMjk2NjUsLTE2NDE3LCAy
NDM0NiwgMTQ1ODAsIDE4NzA3LAorICAgICAgICAgICAgIDI2MzIzLCAtNDQ0MCwtMTc3MTEsICA1
MTMzLCAyNjMyOCwtMTQ1NzksLTMxMDA4LCAyNDU4MywgMTg0MDQsCisgICAgICAgICAgICAgMjg0
MTcsLTI0MzUwLCAxOTQ1MywgMjg2NDIsLTMyNTEzLC0xMDc3NywgLTMwNzksIDMwMTg4LCAtNzY4
NiwKKyAgICAgICAgICAgICAyNzYzNSwtMzI1MjEsLTE2Mzg0LC0yMDI0MCwgLTYzODYsIDEwOTg2
LCAyMzgyNywtMjU4ODAsLTMyNzUyLAorICAgICAgICAgICAgLTIzMzIxLCAxNDYwNSwgMzIyMzEs
ICAgNzgwLC0xMzg0OSwgMTUxMTksIDI4NjQ3LCAgNDg4OCwgLTc3MDUsCisgICAgICAgICAgICAt
MTUwNzQsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LCAgODE5MiwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAg
ICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0ODk3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAg
ICAgICAgICAtMTQ5MDcsLTE1OTMxLC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisg
ICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywgMjYxMjEsIDEyODkwLAorICAgICAgICAgICAgICAy
NjA0LCAxMjIyOCwtMTE2MzQsIDEyMjk5LCAgNTU3MywtMTY2NDIsIDMyNDUyLCAyOTE4MiwgIDc3
MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAg
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAg
ICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAg
ICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAg
ICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAor
ICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAg
ICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAg
ICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAg
ICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTEwODExLC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAg
ICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MTcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MzgsLTE0OTA3LC0xNDkwNywK
KyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsICAtNTcxLCAtOTk4NiwgICAtNTgsIDEyNTQyLC0xODQ5
MSwKKyAgICAgICAgICAgICAzMjUwNywgMTI4MzgsICA2NjUzLCAgIDI5NCwgICAgLTEsICAgICAw
LC0xOTk2OCwgMTgzNjgsIC00MzU3LAorICAgICAgICAgICAgIC01Njk2LCAgMjgwNCwgMTI5OTgs
LTIyODAyLC0yMjA4MCwgLTc3MDEsIC01MTgzLCAgIDQ4NiwgLTMxMzMsCisgICAgICAgICAgICAg
LTU2NjAsIC0xMDgzLCAxMzc5OSwtMjg3MjYsLTExMDI5LCAgIDIwNSwtMTQ4NDgsIDMyNDY0LCAg
ICAtMSwKKyAgICAgICAgICAgICAgLTEyOSwtMTMwNzIsICA2MzgwLCAtNzk0OCwgMjA3MTcsIDE4
NDI1LCAxNzM5MiwgMTQzMzUsIC01NjQ2LAorICAgICAgICAgICAgIDMwOTczLCAtMzU5OCwgIDcx
ODgsIC0zODY3LCAgMzA1NSwgLTQyNDcsICA1NTk3LCAtNDAxMSwtMjY0MjcsCisgICAgICAgICAg
ICAgICAtMTEsLTMwNDE4LCAgNzkyMiwgIDI2MTQsICAgMjM3LCAtNTgzOSwtMjc0MTMsLTE3NjI0
LC0yOTcxNiwKKyAgICAgICAgICAgIC0xMzUzOSwgICAyMzksIDIwOTkxLCAxODE2NCwgLTQwODIs
LTE2NjQ3LC0yNzM4NiwgMTk0NTgsIDIwMjI0LAorICAgICAgICAgICAgICA0NjE5LCAxOTcyOCwg
LTc0MDksLTE4MTg2LC0yNTA3MywgMjc2MjcsLTIzNTM5LCAtNzk0NSwtMzE0NjQsCisgICAgICAg
ICAgICAgMTQzMzAsLTEyNTIzLC0yMjAyMSwgLTc3MDEsIC01MTgzLCAgIDQ4NiwgLTMxMzMsIC01
NjYwLCAtMTA4MywKKyAgICAgICAgICAgICAxMzc5OSwtMjg3MjYsLTExMDI5LCAgIDIwNSwtMTQ4
NDgsIDMyNDY0LCAgICAtMSwgIC0xMjksLTEzMDcyLAorICAgICAgICAgICAgICA2MzgwLCAtNzk0
OCwgMjA3MTcsIDE4NDI1LCAxNzM5MiwgMTQwOTMsIC01NjQ2LCAzMDk3MywgLTM1OTgsCisgICAg
ICAgICAgICAgIDcxODgsIC0zODY3LCAgMzA1NSwgIDM2ODksIC01NDAxLCAgNDkwNiwgLTYwNTEs
ICA0MjUwLCAtNjI3MiwKKyAgICAgICAgICAgICAgMzQ5MiwgLTYzNDMsICAzMTk3LCAtNjM5Nywg
IDQwNDEsIC02MzQxLCAgNjI1NSwgLTYzODEsICAgMjM5LAorICAgICAgICAgICAgIDIwOTkxLCAx
ODE2NCwgLTQwODIsLTE2NjQ3LC0yNzM4NiwgMTk0NTgsIDIwMjI0LCAgNDYxOSwgMTk3MjgsCisg
ICAgICAgICAgICAgLTc0MDksLTE4MTg2LC0yNTA3MywgMjc2MjcsLTIzNTM5LCAtNzk0NSwtMzE0
NjQsIDE0MzMwLC0xMjUyMywKKyAgICAgICAgICAgICAxNDg0MywgLTYxMzAsIDMwMjAyLCAgLTI1
MCwtMjg0MjAsIDEwNDY3LCAxNjkwNywgLTMzNTksIC02NjQ0LAorICAgICAgICAgICAgIDMxOTY1
LCAgMzM0MywtMTE3MjcsICAyOTY2LC0xMjYxNiwgIDMwNjQsLTEzNDcyLCAgNjczMiwtMTIzNDks
CisgICAgICAgICAgICAgIDU1NDEsLTExOTY1LCAgNTUzMCwtMTA4MjAsIC0xOTEyLCAtMzYzNywg
MzIyODUsIC00NjA3LCAgIDMxMCwKKyAgICAgICAgICAgIC0zMjc2OCwgICAgIDAsIC01MjU4LCAg
MjEwNiwgLTY4NTcsICAyNjgxLCAtNTQ0OSwgLTM2MDYsIC02NzE3LAorICAgICAgICAgICAgIC01
NDgyLCAtMzYwNiwgLTE4NTMsICA0MDgyLCAtNzYzMSwgLTk4MDgsIC0xNzQyLCAtMjg1MSwgLTUx
MTIsCisgICAgICAgICAgICAgICAgNjQsICAtODY4LC0xMzU0NiwtMTMzNjUsLTEzMzY1LC0xMzM2
NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwKKyAgICAgICAgICAgIC0xMzM2NSwtMTMzNjUsLTEzMzY1
LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LAorICAgICAgICAgICAg
LTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwt
MTMzNjUsCisgICAgICAgICAgICAtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0x
MzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwKKyAgICAgICAgICAgIC0xMzM2NSwtMTMzNjUsLTEz
MzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwgIDc4ODMsIC0yMzE2LAorICAgICAgICAg
ICAgICA5MDg2LCAtMzk0NCwgMTA1MDAsICA0Mjg1LCAxMDQ1OSwgLTY0NzQsIDEwMjA0LCAtNjUz
OSwgMTE2MDEsCisgICAgICAgICAgICAgLTY4MjQsIDEzMzg1LCAtNzE0MiwgMTM4NzIsIC03NDU3
LCAxMzY3MCwgLTc3MjUsIDEzNDYzLCAtNjg4NywKKyAgICAgICAgICAgICAxMjQ4MiwgLTU1ODAs
IDEyNjAwLCAtNDk2NCwgMTI0ODAsICAzMjU0LCAxMTc0MSwgLTQyMTAsLTI0ODE5LAorICAgICAg
ICAgICAgIDIzMjgyLCAyMjc5OCwgICA0OTEsIC0xNzc0LCAtMTA3MywgIDM2NDEsIC0xMzA0LCAy
ODkyOCwgIC0yNTAsCisgICAgICAgICAgICAtMjczOTYsICA2NjU3LCAtODk2MSwgMjI1MjQsIDE5
OTg3LCAxMDIzMSwgIDE3OTEsICA4OTQ3LC0zMjc2MywKKyAgICAgICAgICAgIC0yNjM4NSwtMzEy
MjcsICAtNzkyLC0zMDQ2MSwgIDg5MjYsICA0ODY2LCAyNzg2MywgMjc3NTYsIDI3NzU2LAorICAg
ICAgICAgICAgIDI3NzU2LCAyNzc1NiwgMjc3NTYsIDI3NzU2LCAyNzc1NiwgMjc3NTYsICA1NjMw
LC0xMTA3MCwtMTYxMzYsCisgICAgICAgICAgICAgMjA2NzEsLTExNTMwLCAyNzMyOCwgIDgxNzks
ICA1MDU5LC0zMTUwMywtMjQzNzksLTE5NDcyLCAxNzg2MywKKyAgICAgICAgICAgIC0yOTIwMiwg
MjI5ODYsICAgLTIzLCAgODkwOSwgIDg0MjIsIDEwNDUwCisgICAgICAgIH07CisgICAgICAgIGVy
ciA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlKGVuYywgcGNtLCAxNDQwLCBkYXRhLCA3MzgwKTsK
KyAgICAgICAgLyogcmVhZHMgdW5pbml0aWFsaXplZCBkYXRhIGF0IHNyYy9vcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXIuYzoyOTMgKi8KKyAgICAgICAgYXNzZXJ0KGVyciA+IDApOworICAgIH0KKyAg
ICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfZGVzdHJveShlbmMpOworICAgIHJldHVybiAwOwor
fQorCitzdGF0aWMgaW50IGVjX2VuY19zaHJpbmtfYXNzZXJ0KHZvaWQpCit7CisgICAgT3B1c0Vu
Y29kZXIgKmVuYzsKKyAgICBpbnQgZXJyOworICAgIGludCBkYXRhX2xlbjsKKyAgICB1bnNpZ25l
ZCBjaGFyIGRhdGFbMjAwMF07CisgICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbTFbOTYwXSA9IHsg
NTE0MCB9OworICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY20yWzI4ODBdID0KKyAgICB7CisgICAg
ICAgICAgLTI1NiwtMTIwMzMsICAgICAwLCAtMjgxNywgIDY5MTIsICAgICAwLCAtNTM1OSwgIDUy
MDAsICAzMDYxLAorICAgICAgICAgICAgIDAsIC0yOTAzLCAgNTY1MiwgLTEyODEsLTI0NjU2LC0x
NDQzMywtMjQ2NzgsICAgIDMyLC0yOTc5MywKKyAgICAgICAgICAyODcwLCAgICAgMCwgIDQwOTYs
ICA1MTIwLCAgNTE0MCwgIC0yMzQsLTIwMjMwLC0yNDY3MywtMjQ2MzMsCisgICAgICAgIC0yNDY3
MywtMjQ3MDUsICAgICAwLC0zMjc2OCwtMjU0NDQsLTI1NDQ0LCAgICAgMCwtMjU0NDQsLTI1NDQ0
LAorICAgICAgICAgICAxNTYsLTIwNDgwLCAtNzk0OCwgLTU5MjAsIC03OTY4LCAtNzk2OCwgICAy
MjQsICAgICAwLCAyMDQ4MCwKKyAgICAgICAgICAgIDExLCAyMDQ5NiwgICAgMTMsIDIwNDk2LCAg
ICAxMSwtMjA0ODAsICAyMjkyLC0yMDI0MCwgICAyNDQsCisgICAgICAgICAyMDQ4MCwgICAgMTEs
IDIwNDk2LCAgICAxMSwtMjA0ODAsICAgMjQ0LC0yMDI0MCwgIDcxNTYsIDIwNDU2LAorICAgICAg
ICAgIC0yNDYsLTIwMjQzLCAgIDI0NCwgICAxMjgsICAgMjQ0LCAyMDQ4MCwgICAgMTEsIDIwNDk2
LCAgICAxMSwKKyAgICAgICAgLTIwNDgwLCAgIDI0NCwtMjAyNTYsICAgMjQ0LCAyMDQ4MCwgICAy
NTYsICAgICAwLCAgLTI0NiwgMTY2MDksCisgICAgICAgICAgLTE3NiwgICAgIDAsIDI5ODcyLCAt
NDA5NiwgLTI4ODgsICAgNTE2LCAgMjg5NiwgIDQwOTYsICAyODk2LAorICAgICAgICAtMjA0ODAs
IC0zODUyLCAtMjg5NiwgLTEwMjUsLTMxMDU2LC0xNDQzMywgICAyNDQsICAxNzkyLCAgLTI1NiwK
KyAgICAgICAgLTEyMDMzLCAgICAgMCwgLTI4MTcsICAgICAwLCAgICAgMCwgLTUzNTksICA1MjAw
LCAgMzA2MSwgICAgMTYsCisgICAgICAgICAtMjkwMywgIDU2NTIsIC0xMjgxLC0yNDY1NiwtMTQ0
MzMsLTI0Njc4LCAgICAzMiwtMjk3OTMsICAyODcwLAorICAgICAgICAgICAgIDAsICA0MDk2LCAg
NTEyMCwgIDUxNDAsICAtMjM0LC0yMDIzMCwtMjQ2NzMsLTI0NjMzLC0yNDY3MywKKyAgICAgICAg
LTI0NzA1LCAgICAgMCwtMzI3NjgsLTI1NDQ0LC0yNTQ0NCwgICAgIDAsLTI1NDQ0LC0yNTQ0NCwg
ICAxNTYsCisgICAgICAgIC0yMDQ4MCwgLTc5NzMsIC01OTIwLCAtNzk2OCwgLTc5NjgsICAgMjI0
LCAgICAgMCwgMjA0ODAsICAgIDExLAorICAgICAgICAgMjA0OTYsICAgIDExLCAyMDQ5NiwgICAg
MTEsLTIwNDgwLCAgMjI5MiwtMjAyMTMsICAgMjQ0LCAyMDQ4MCwKKyAgICAgICAgICAgIDExLCAy
MDQ5NiwgICAgMTEsLTI0Njk4LCAtMjg3MywgICAgIDAsICAgICA3LCAgICAtMSwgICAyMDgsCisg
ICAgICAgICAgLTI1NiwgICAyNDQsICAgICAwLCAgNDM1MiwgMjA3MTUsIC0yNzk2LCAgICAxMSwt
MjIyNzIsICA1MzY0LAorICAgICAgICAgIC0yMzQsLTIwMjMwLC0yNDY3MywtMjU5MTMsICA4MzUx
LC0yNDgzMiwgMTM5NjMsICAgIDExLCAgICAgMCwKKyAgICAgICAgICAgIDE2LCAgNTE0MCwgIDU2
NTIsIC0xMjgxLC0yNDY1NiwtMTQ0MzMsLTI0NjczLCAzMjY3MSwgICAxNTksCisgICAgICAgICAg
ICAgMCwtMjU0NzIsLTI1NDQ0LCAgIDE1NiwtMjU2MDAsLTI1NDQ0LC0yNTQ0NCwgICAgIDAsIC0y
ODk2LAorICAgICAgICAgLTc5NjgsIC03OTYwLCAtNzk2OCwgLTc5NjgsICAgICAwLCAgICAgMCwg
IDI4OTYsICA0MDk2LCAgMjg5NiwKKyAgICAgICAgICA0MDk2LCAgMjg5NiwgICAgIDAsIC0yODk2
LCAtNDA4OCwgLTI4OTYsICAgICAwLCAgMjg5NiwgICAgIDAsCisgICAgICAgICAtMjg5NiwgLTQw
OTYsIC0yODk2LCAgICAxMSwgIDI2NDAsIC00NjA5LCAtMjg5NiwtMzI3NjgsIC0zMDcyLAorICAg
ICAgICAgICAgIDAsICAyODk2LCAgNDA5NiwgIDI4OTYsICAgICAwLCAtMjg5NiwgLTQwOTYsIC0y
ODk2LCAgICAgMCwKKyAgICAgICAgICAgIDgwLCAgICAgMSwgIDI4MTYsICAgICAwLCAyMDY1Niwg
ICAyNTUsLTIwNDgwLCAgIDExNiwtMTgxOTIKKyAgICB9OworICAgIHN0YXRpYyBjb25zdCBzaG9y
dCBwY20zWzI4ODBdID0geyAwIH07CisKKyAgICBlbmMgPSBvcHVzX2VuY29kZXJfY3JlYXRlKDQ4
MDAwLCAxLCBPUFVTX0FQUExJQ0FUSU9OX0FVRElPLCAmZXJyKTsKKyAgICBvcHVzX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElUWSgxMCkpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDYpKTsKKyAgICBvcHVzX2VuY29kZXJfY3Rs
KGVuYywgT1BVU19TRVRfQklUUkFURSg2MDAwKSk7CisgICAgZGF0YV9sZW4gPSBvcHVzX2VuY29k
ZShlbmMsIHBjbTEsIDk2MCwgZGF0YSwgMjAwMCk7CisgICAgYXNzZXJ0KGRhdGFfbGVuID4gMCk7
CisKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFM
X1ZPSUNFKSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05f
RElTQUJMRUQoMSkpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lE
VEgoT1BVU19CQU5EV0lEVEhfU1VQRVJXSURFQkFORCkpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9JTkJBTkRfRkVDKDEpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfQklUUkFURSgxNTYwMCkpOworICAgIGRhdGFfbGVuID0gb3B1c19lbmNvZGUoZW5j
LCBwY20yLCAyODgwLCBkYXRhLCAxMjIpOworICAgIGFzc2VydChkYXRhX2xlbiA+IDApOworCisg
ICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJ
QykpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDI3MDAwKSk7
CisgICAgZGF0YV9sZW4gPSBvcHVzX2VuY29kZShlbmMsIHBjbTMsIDI4ODAsIGRhdGEsIDEyMik7
IC8qIGFzc2VydGlvbiBmYWlsdXJlICovCisgICAgYXNzZXJ0KGRhdGFfbGVuID4gMCk7CisKKyAg
ICBvcHVzX2VuY29kZXJfZGVzdHJveShlbmMpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMg
aW50IGVjX2VuY19zaHJpbmtfYXNzZXJ0Mih2b2lkKQoreworICAgIE9wdXNFbmNvZGVyICplbmM7
CisgICAgaW50IGVycjsKKyAgICBpbnQgZGF0YV9sZW47CisgICAgdW5zaWduZWQgY2hhciBkYXRh
WzIwMDBdOworCisgICAgZW5jID0gb3B1c19lbmNvZGVyX2NyZWF0ZSg0ODAwMCwgMSwgT1BVU19B
UFBMSUNBVElPTl9BVURJTywgJmVycik7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX0NPTVBMRVhJVFkoNikpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9T
SUdOQUwoT1BVU19TSUdOQUxfVk9JQ0UpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EKSk7CisgICAgb3B1c19lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BBQ0tFVF9MT1NTX1BFUkMoMjYpKTsKKyAgICBvcHVzX2Vu
Y29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURSgyNzAwMCkpOworICAgIHsKKyAgICAgICAg
c3RhdGljIGNvbnN0IHNob3J0IHBjbVs5NjBdID0geyAwIH07CisgICAgICAgIGRhdGFfbGVuID0g
b3B1c19lbmNvZGUoZW5jLCBwY20sIDk2MCwgZGF0YSwgMjAwMCk7CisgICAgICAgIGFzc2VydChk
YXRhX2xlbiA+IDApOworICAgIH0KKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
U0lHTkFMKE9QVVNfU0lHTkFMX01VU0lDKSk7CisgICAgeworICAgICAgICBzdGF0aWMgY29uc3Qg
c2hvcnQgcGNtWzQ4MF0gPQorICAgICAgICB7CisgICAgICAgICAgICAzMjc2NywgMzI3NjcsIDAs
IDAsIDMyNzY3LCAzMjc2NywgMCwgMCwgMzI3NjcsIDMyNzY3LAorICAgICAgICAgICAgLTMyNzY4
LCAtMzI3NjgsIDAsIDAsIC0zMjc2OCwgLTMyNzY4LCAwLCAwLCAtMzI3NjgsIC0zMjc2OAorICAg
ICAgICB9OworICAgICAgICBkYXRhX2xlbiA9IG9wdXNfZW5jb2RlKGVuYywgcGNtLCA0ODAsIGRh
dGEsIDE5KTsKKyAgICAgICAgYXNzZXJ0KGRhdGFfbGVuID4gMCk7CisgICAgfQorICAgIG9wdXNf
ZW5jb2Rlcl9kZXN0cm95KGVuYyk7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgc2ls
a19nYWluX2Fzc2VydCh2b2lkKQoreworICAgIE9wdXNFbmNvZGVyICplbmM7CisgICAgaW50IGVy
cjsKKyAgICBpbnQgZGF0YV9sZW47CisgICAgdW5zaWduZWQgY2hhciBkYXRhWzEwMDBdOworICAg
IHN0YXRpYyBjb25zdCBzaG9ydCBwY20xWzE2MF0gPSB7IDAgfTsKKyAgICBzdGF0aWMgY29uc3Qg
c2hvcnQgcGNtMls5NjBdID0KKyAgICB7CisgICAgICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAs
IDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsCisgICAgICAgIDAsIDAsIDAsIDAs
IDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsCisgICAgICAg
IDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAs
IDAsCisgICAgICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAs
IDAsIDAsIDAsIDAsIDAsCisgICAgICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAs
IDAsIDAsIDAsIDAsIDAsIDAsIDAsCisgICAgICAgIDMyNzY3LCAwLCAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAorICAgICAgICAwLCAwLCAwLCAwLCAzMjc2
NworICAgIH07CisKKyAgICBlbmMgPSBvcHVzX2VuY29kZXJfY3JlYXRlKDgwMDAsIDEsIE9QVVNf
QVBQTElDQVRJT05fQVVESU8sICZlcnIpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVT
X1NFVF9DT01QTEVYSVRZKDMpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
TUFYX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSk7CisgICAgb3B1c19lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoNjAwMCkpOworICAgIGRhdGFfbGVuID0gb3B1
c19lbmNvZGUoZW5jLCBwY20xLCAxNjAsIGRhdGEsIDEwMDApOworICAgIGFzc2VydChkYXRhX2xl
biA+IDApOworCisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUigwKSk7Cisg
ICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMCkpOworICAgIG9w
dXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRI
X01FRElVTUJBTkQpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFU
RSgyODY3KSk7CisgICAgZGF0YV9sZW4gPSBvcHVzX2VuY29kZShlbmMsIHBjbTIsIDk2MCwgZGF0
YSwgMTAwMCk7CisgICAgYXNzZXJ0KGRhdGFfbGVuID4gMCk7CisKKyAgICBvcHVzX2VuY29kZXJf
ZGVzdHJveShlbmMpOworICAgIHJldHVybiAwOworfQorCit2b2lkIHJlZ3Jlc3Npb25fdGVzdCh2
b2lkKQoreworICAgZnByaW50ZihzdGRlcnIsICJSdW5uaW5nIHNpbXBsZSB0ZXN0cyBmb3IgYnVn
cyB0aGF0IGhhdmUgYmVlbiBmaXhlZCBwcmV2aW91c2x5XG4iKTsKKyAgIGNlbHRfZWNfaW50ZXJu
YWxfZXJyb3IoKTsKKyAgIG1zY2JyX2VuY29kZV9mYWlsMTAoKTsKKyAgIG1zY2JyX2VuY29kZV9m
YWlsKCk7CisgICBzdXJyb3VuZF9hbmFseXNpc191bmluaXQoKTsKKyAgIGVjX2VuY19zaHJpbmtf
YXNzZXJ0KCk7CisgICBlY19lbmNfc2hyaW5rX2Fzc2VydDIoKTsKKyAgIHNpbGtfZ2Fpbl9hc3Nl
cnQoKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvcnVuX3ZlY3RvcnMuc2ggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3J1bl92ZWN0
b3JzLnNoCmluZGV4IDFkNDQ3YzQzZjU5Njc3MDZiZDMwOWViYmYyMjAzOGExZjNhMTFmMjUuLmRj
Yjc2Y2YxODc5ZWYwODAxZDVhNWMzM2ZjNjc2ZWQ3OWJmNDFlODcgMTAwNzU1Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMv
cnVuX3ZlY3RvcnMuc2gKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9ydW5fdmVjdG9ycy5zaApAQCAtMzMsOCArMzMsOCBA
QAogIyAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTCiAjICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAotcm0gbG9nc19tb25vLnR4dAotcm0gbG9nc19zdGVy
ZW8udHh0CitybSAtZiBsb2dzX21vbm8udHh0IGxvZ3NfbW9ubzIudHh0CitybSAtZiBsb2dzX3N0
ZXJlby50eHQgbG9nc19zdGVyZW8yLnR4dAogCiBpZiBbICIkIyIgLW5lICIzIiBdOyB0aGVuCiAg
ICAgZWNobyAidXNhZ2U6IHJ1bl92ZWN0b3JzLnNoIDxleGVjIHBhdGg+IDx2ZWN0b3IgcGF0aD4g
PHJhdGU+IgpAQCAtNDgsNTEgKzQ4LDUzIEBAIFJBVEU9JDMKIDogJHtPUFVTX0RFTU86PSRDTURf
UEFUSC9vcHVzX2RlbW99CiA6ICR7T1BVU19DT01QQVJFOj0kQ01EX1BBVEgvb3B1c19jb21wYXJl
fQogCi1pZiBbIC1kICRWRUNUT1JfUEFUSCBdOyB0aGVuCi0gICAgZWNobyBUZXN0IHZlY3RvcnMg
Zm91bmQgaW4gJFZFQ1RPUl9QQVRICitpZiBbIC1kICIkVkVDVE9SX1BBVEgiIF07IHRoZW4KKyAg
ICBlY2hvICJUZXN0IHZlY3RvcnMgZm91bmQgaW4gJFZFQ1RPUl9QQVRIIgogZWxzZQotICAgIGVj
aG8gTm8gdGVzdCB2ZWN0b3JzIGZvdW5kCisgICAgZWNobyAiTm8gdGVzdCB2ZWN0b3JzIGZvdW5k
IgogICAgICNEb24ndCBtYWtlIHRoZSB0ZXN0IGZhaWwgaGVyZSBiZWNhdXNlIHRoZSB0ZXN0IHZl
Y3RvcnMKICAgICAjd2lsbCBiZSBkaXN0cmlidXRlZCBzZXBhcmF0ZWx5CiAgICAgZXhpdCAwCiBm
aQogCi1pZiBbICEgLXggJE9QVVNfQ09NUEFSRSBdOyB0aGVuCi0gICAgZWNobyBFUlJPUjogQ29t
cGFyZSBwcm9ncmFtIG5vdCBmb3VuZDogJE9QVVNfQ09NUEFSRQoraWYgWyAhIC14ICIkT1BVU19D
T01QQVJFIiBdOyB0aGVuCisgICAgZWNobyAiRVJST1I6IENvbXBhcmUgcHJvZ3JhbSBub3QgZm91
bmQ6ICRPUFVTX0NPTVBBUkUiCiAgICAgZXhpdCAxCiBmaQogCi1pZiBbIC14ICRPUFVTX0RFTU8g
XTsgdGhlbgotICAgIGVjaG8gRGVjb2Rpbmcgd2l0aCAkT1BVU19ERU1PCitpZiBbIC14ICIkT1BV
U19ERU1PIiBdOyB0aGVuCisgICAgZWNobyAiRGVjb2Rpbmcgd2l0aCAkT1BVU19ERU1PIgogZWxz
ZQotICAgIGVjaG8gRVJST1I6IERlY29kZXIgbm90IGZvdW5kOiAkT1BVU19ERU1PCisgICAgZWNo
byAiRVJST1I6IERlY29kZXIgbm90IGZvdW5kOiAkT1BVU19ERU1PIgogICAgIGV4aXQgMQogZmkK
IAogZWNobyAiPT09PT09PT09PT09PT0iCi1lY2hvIFRlc3RpbmcgbW9ubworZWNobyAiVGVzdGlu
ZyBtb25vIgogZWNobyAiPT09PT09PT09PT09PT0iCiBlY2hvCiAKIGZvciBmaWxlIGluIDAxIDAy
IDAzIDA0IDA1IDA2IDA3IDA4IDA5IDEwIDExIDEyCiBkbwotICAgIGlmIFsgLWUgJFZFQ1RPUl9Q
QVRIL3Rlc3R2ZWN0b3IkZmlsZS5iaXQgXTsgdGhlbgotICAgICAgICBlY2hvIFRlc3RpbmcgdGVz
dHZlY3RvciRmaWxlCisgICAgaWYgWyAtZSAiJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3IkZmlsZS5i
aXQiIF07IHRoZW4KKyAgICAgICAgZWNobyAiVGVzdGluZyB0ZXN0dmVjdG9yJGZpbGUiCiAgICAg
ZWxzZQotICAgICAgICBlY2hvIEJpdHN0cmVhbSBmaWxlIG5vdCBmb3VuZDogdGVzdHZlY3RvciRm
aWxlLmJpdAorICAgICAgICBlY2hvICJCaXRzdHJlYW0gZmlsZSBub3QgZm91bmQ6IHRlc3R2ZWN0
b3IkZmlsZS5iaXQiCiAgICAgZmkKLSAgICBpZiAkT1BVU19ERU1PIC1kICRSQVRFIDEgJFZFQ1RP
Ul9QQVRIL3Rlc3R2ZWN0b3IkZmlsZS5iaXQgdG1wLm91dCA+PiBsb2dzX21vbm8udHh0IDI+JjE7
IHRoZW4KLSAgICAgICAgZWNobyBzdWNjZXNzZnVsbHkgZGVjb2RlZAorICAgIGlmICIkT1BVU19E
RU1PIiAtZCAiJFJBVEUiIDEgIiRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuYml0IiB0bXAu
b3V0ID4+IGxvZ3NfbW9uby50eHQgMj4mMTsgdGhlbgorICAgICAgICBlY2hvICJzdWNjZXNzZnVs
bHkgZGVjb2RlZCIKICAgICBlbHNlCi0gICAgICAgIGVjaG8gRVJST1I6IGRlY29kaW5nIGZhaWxl
ZAorICAgICAgICBlY2hvICJFUlJPUjogZGVjb2RpbmcgZmFpbGVkIgogICAgICAgICBleGl0IDEK
ICAgICBmaQotICAgICRPUFVTX0NPTVBBUkUgLXIgJFJBVEUgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0
b3IkZmlsZS5kZWMgdG1wLm91dCA+PiBsb2dzX21vbm8udHh0IDI+JjEKKyAgICAiJE9QVVNfQ09N
UEFSRSIgLXIgIiRSQVRFIiAiJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3Ike2ZpbGV9LmRlYyIgdG1w
Lm91dCA+PiBsb2dzX21vbm8udHh0IDI+JjEKICAgICBmbG9hdF9yZXQ9JD8KLSAgICBpZiBbICIk
ZmxvYXRfcmV0IiAtZXEgIjAiIF07IHRoZW4KLSAgICAgICAgZWNobyBvdXRwdXQgbWF0Y2hlcyBy
ZWZlcmVuY2UKKyAgICAiJE9QVVNfQ09NUEFSRSIgLXIgIiRSQVRFIiAiJFZFQ1RPUl9QQVRIL3Rl
c3R2ZWN0b3Ike2ZpbGV9bS5kZWMiIHRtcC5vdXQgPj4gbG9nc19tb25vMi50eHQgMj4mMQorICAg
IGZsb2F0X3JldDI9JD8KKyAgICBpZiBbICIkZmxvYXRfcmV0IiAtZXEgIjAiIF0gfHwgWyAiJGZs
b2F0X3JldDIiIC1lcSAiMCIgXTsgdGhlbgorICAgICAgICBlY2hvICJvdXRwdXQgbWF0Y2hlcyBy
ZWZlcmVuY2UiCiAgICAgZWxzZQotICAgICAgICBlY2hvIEVSUk9SOiBvdXRwdXQgZG9lcyBub3Qg
bWF0Y2ggcmVmZXJlbmNlCisgICAgICAgIGVjaG8gIkVSUk9SOiBvdXRwdXQgZG9lcyBub3QgbWF0
Y2ggcmVmZXJlbmNlIgogICAgICAgICBleGl0IDEKICAgICBmaQogICAgIGVjaG8KQEAgLTEwNSwy
MyArMTA3LDI1IEBAIGVjaG8KIAogZm9yIGZpbGUgaW4gMDEgMDIgMDMgMDQgMDUgMDYgMDcgMDgg
MDkgMTAgMTEgMTIKIGRvCi0gICAgaWYgWyAtZSAkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciRmaWxl
LmJpdCBdOyB0aGVuCi0gICAgICAgIGVjaG8gVGVzdGluZyB0ZXN0dmVjdG9yJGZpbGUKKyAgICBp
ZiBbIC1lICIkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciRmaWxlLmJpdCIgXTsgdGhlbgorICAgICAg
ICBlY2hvICJUZXN0aW5nIHRlc3R2ZWN0b3IkZmlsZSIKICAgICBlbHNlCi0gICAgICAgIGVjaG8g
Qml0c3RyZWFtIGZpbGUgbm90IGZvdW5kOiB0ZXN0dmVjdG9yJGZpbGUKKyAgICAgICAgZWNobyAi
Qml0c3RyZWFtIGZpbGUgbm90IGZvdW5kOiB0ZXN0dmVjdG9yJGZpbGUiCiAgICAgZmkKLSAgICBp
ZiAkT1BVU19ERU1PIC1kICRSQVRFIDIgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3IkZmlsZS5iaXQg
dG1wLm91dCA+PiBsb2dzX3N0ZXJlby50eHQgMj4mMTsgdGhlbgotICAgICAgICBlY2hvIHN1Y2Nl
c3NmdWxseSBkZWNvZGVkCisgICAgaWYgIiRPUFVTX0RFTU8iIC1kICIkUkFURSIgMiAiJFZFQ1RP
Ul9QQVRIL3Rlc3R2ZWN0b3IkZmlsZS5iaXQiIHRtcC5vdXQgPj4gbG9nc19zdGVyZW8udHh0IDI+
JjE7IHRoZW4KKyAgICAgICAgZWNobyAic3VjY2Vzc2Z1bGx5IGRlY29kZWQiCiAgICAgZWxzZQot
ICAgICAgICBlY2hvIEVSUk9SOiBkZWNvZGluZyBmYWlsZWQKKyAgICAgICAgZWNobyAiRVJST1I6
IGRlY29kaW5nIGZhaWxlZCIKICAgICAgICAgZXhpdCAxCiAgICAgZmkKLSAgICAkT1BVU19DT01Q
QVJFIC1zIC1yICRSQVRFICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuZGVjIHRtcC5vdXQg
Pj4gbG9nc19zdGVyZW8udHh0IDI+JjEKKyAgICAiJE9QVVNfQ09NUEFSRSIgLXMgLXIgIiRSQVRF
IiAiJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3Ike2ZpbGV9LmRlYyIgdG1wLm91dCA+PiBsb2dzX3N0
ZXJlby50eHQgMj4mMQogICAgIGZsb2F0X3JldD0kPwotICAgIGlmIFsgIiRmbG9hdF9yZXQiIC1l
cSAiMCIgXTsgdGhlbgotICAgICAgICBlY2hvIG91dHB1dCBtYXRjaGVzIHJlZmVyZW5jZQorICAg
ICIkT1BVU19DT01QQVJFIiAtcyAtciAiJFJBVEUiICIkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciR7
ZmlsZX1tLmRlYyIgdG1wLm91dCA+PiBsb2dzX3N0ZXJlbzIudHh0IDI+JjEKKyAgICBmbG9hdF9y
ZXQyPSQ/CisgICAgaWYgWyAiJGZsb2F0X3JldCIgLWVxICIwIiBdIHx8IFsgIiRmbG9hdF9yZXQy
IiAtZXEgIjAiIF07IHRoZW4KKyAgICAgICAgZWNobyAib3V0cHV0IG1hdGNoZXMgcmVmZXJlbmNl
IgogICAgIGVsc2UKLSAgICAgICAgZWNobyBFUlJPUjogb3V0cHV0IGRvZXMgbm90IG1hdGNoIHJl
ZmVyZW5jZQorICAgICAgICBlY2hvICJFUlJPUjogb3V0cHV0IGRvZXMgbm90IG1hdGNoIHJlZmVy
ZW5jZSIKICAgICAgICAgZXhpdCAxCiAgICAgZmkKICAgICBlY2hvCkBAIC0xMjksNiArMTMzLDEx
IEBAIGRvbmUKIAogCiAKLWVjaG8gQWxsIHRlc3RzIGhhdmUgcGFzc2VkIHN1Y2Nlc3NmdWxseQot
Z3JlcCBxdWFsaXR5IGxvZ3NfbW9uby50eHQgfCBhd2sgJ3tzdW0rPSQ0fUVORHtwcmludCAiQXZl
cmFnZSBtb25vIHF1YWxpdHkgaXMiLCBzdW0vTlIsICIlIn0nCi1ncmVwIHF1YWxpdHkgbG9nc19z
dGVyZW8udHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7cHJpbnQgIkF2ZXJhZ2Ugc3RlcmVvIHF1YWxp
dHkgaXMiLCBzdW0vTlIsICIlIn0nCitlY2hvICJBbGwgdGVzdHMgaGF2ZSBwYXNzZWQgc3VjY2Vz
c2Z1bGx5IgorbW9ubzE9YGdyZXAgcXVhbGl0eSBsb2dzX21vbm8udHh0IHwgYXdrICd7c3VtKz0k
NH1FTkR7aWYgKE5SID09IDEyKSBzdW0gLz0gMTI7IGVsc2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdg
Cittb25vMj1gZ3JlcCBxdWFsaXR5IGxvZ3NfbW9ubzIudHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7
aWYgKE5SID09IDEyKSBzdW0gLz0gMTI7IGVsc2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdgCitlY2hv
ICRtb25vMSAkbW9ubzIgfCBhd2sgJ3tpZiAoJDIgPiAkMSkgJDEgPSAkMjsgcHJpbnQgIkF2ZXJh
Z2UgbW9ubyBxdWFsaXR5IGlzIiwgJDEsICIlIn0nCisKK3N0ZXJlbzE9YGdyZXAgcXVhbGl0eSBs
b2dzX3N0ZXJlby50eHQgfCBhd2sgJ3tzdW0rPSQ0fUVORHtpZiAoTlIgPT0gMTIpIHN1bSAvPSAx
MjsgZWxzZSBzdW0gPSAwOyBwcmludCBzdW19J2AKK3N0ZXJlbzI9YGdyZXAgcXVhbGl0eSBsb2dz
X3N0ZXJlbzIudHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7aWYgKE5SID09IDEyKSBzdW0gLz0gMTI7
IGVsc2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdgCitlY2hvICRzdGVyZW8xICRzdGVyZW8yIHwgYXdr
ICd7aWYgKCQyID4gJDEpICQxID0gJDI7IHByaW50ICJBdmVyYWdlIHN0ZXJlbyBxdWFsaXR5IGlz
IiwgJDEsICIlIn0nCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19hcGkuYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVz
dF9vcHVzX2FwaS5jCmluZGV4IDQ4OTA1MmQyMWZiMzBiYjhiMGZmOWMzM2NlZmZmMGYxYTUwMGZl
ZGEuLjFkMDA5NTA1OGY4MGExMjEzYjAxNTU2MTk4NGMzYmNjN2NmOGU1NDIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
dGVzdHMvdGVzdF9vcHVzX2FwaS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2FwaS5jCkBAIC0xMzgz
LDYgKzEzODMsMTUgQEAgb3B1c19pbnQzMiB0ZXN0X2VuY19hcGkodm9pZCkKICAgIGVycj1vcHVz
X2VuY29kZXJfY3RsKGVuYyxPUFVTX1NFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT04oT1BVU19GUkFN
RVNJWkVfNjBfTVMpKTsKICAgIGlmKGVyciE9T1BVU19PSyl0ZXN0X2ZhaWxlZCgpOwogICAgY2Zn
cysrOworICAgZXJyPW9wdXNfZW5jb2Rlcl9jdGwoZW5jLE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9E
VVJBVElPTihPUFVTX0ZSQU1FU0laRV84MF9NUykpOworICAgaWYoZXJyIT1PUFVTX09LKXRlc3Rf
ZmFpbGVkKCk7CisgICBjZmdzKys7CisgICBlcnI9b3B1c19lbmNvZGVyX2N0bChlbmMsT1BVU19T
RVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKE9QVVNfRlJBTUVTSVpFXzEwMF9NUykpOworICAgaWYo
ZXJyIT1PUFVTX09LKXRlc3RfZmFpbGVkKCk7CisgICBjZmdzKys7CisgICBlcnI9b3B1c19lbmNv
ZGVyX2N0bChlbmMsT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKE9QVVNfRlJBTUVTSVpF
XzEyMF9NUykpOworICAgaWYoZXJyIT1PUFVTX09LKXRlc3RfZmFpbGVkKCk7CisgICBjZmdzKys7
CiAgICBDSEVDS19TRVRHRVQoT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKGkpLE9QVVNf
R0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTigmaSksMCwtMSwKICAgICAgICAgIE9QVVNfRlJBTUVT
SVpFXzYwX01TLE9QVVNfRlJBTUVTSVpFX0FSRywKICAgICAgIiAgICBPUFVTX1NFVF9FWFBFUlRf
RlJBTUVfRFVSQVRJT04gLi4uLi4uLi4uLi4uLi4uIE9LLlxuIiwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMv
dGVzdF9vcHVzX2NvbW1vbi5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy90ZXN0X29wdXNfY29tbW9uLmgKaW5kZXggNjZiOTY5
MDAxODkzYzk4OGM4Y2VkZTNhNWUyOWIwZjAzY2QwZDYyYi4uMjM1Y2YxYzEwMTY4OTExMGEwMDEz
NWJiY2UyYzNhMmI1MWZkYTBiNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy90ZXN0X29wdXNfY29tbW9uLmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy90ZXN0cy90ZXN0X29wdXNfY29tbW9uLmgKQEAgLTY0LDYgKzY0LDggQEAgc3RhdGljIG9w
dXNfdWludDMyIGlzZWVkOwogCiAjaWZkZWYgX19HTlVDX18KIF9fYXR0cmlidXRlX18oKG5vcmV0
dXJuKSkKKyNlbGlmIGRlZmluZWQoX01TQ19WRVIpCitfX2RlY2xzcGVjKG5vcmV0dXJuKQogI2Vu
ZGlmCiBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBfdGVzdF9mYWlsZWQoY29uc3QgY2hhciAqZmls
ZSwgaW50IGxpbmUpCiB7CkBAIC03NiwzICs3OCw1IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lk
IF90ZXN0X2ZhaWxlZChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSkKICAgYWJvcnQoKTsKIH0K
ICNkZWZpbmUgdGVzdF9mYWlsZWQoKSBfdGVzdF9mYWlsZWQoX19GSUxFX18sIF9fTElORV9fKTsK
Kwordm9pZCByZWdyZXNzaW9uX3Rlc3Qodm9pZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1
c19kZWNvZGUuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2RlY29kZS5jCmluZGV4IDljMGViOWM3Mjg1OGQ1
YThmNGRjNGRhNmI5ZjMxZWIyY2FlYmM0MWUuLjUxOTdmYTFkZDJjZjEwYjVlNTAzN2QyYjIxNTNk
NmVmNjY0NDc3YjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2RlY29kZS5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVz
dHMvdGVzdF9vcHVzX2RlY29kZS5jCkBAIC0xMDQsNyArMTA0LDcgQEAgaW50IHRlc3RfZGVjb2Rl
cl9jb2RlMChpbnQgbm9fZnV6eikKICAgICAgIGludCBmYWN0b3I9NDgwMDAvZnN2W3Q+PjFdOwog
ICAgICAgZm9yKGZlYz0wO2ZlYzwyO2ZlYysrKQogICAgICAgewotICAgICAgICAgaW50IGR1cjsK
KyAgICAgICAgIG9wdXNfaW50MzIgZHVyOwogICAgICAgICAgLypUZXN0IFBMQyBvbiBhIGZyZXNo
IGRlY29kZXIqLwogICAgICAgICAgb3V0X3NhbXBsZXMgPSBvcHVzX2RlY29kZShkZWNbdF0sIDAs
IDAsIG91dGJ1ZiwgMTIwL2ZhY3RvciwgZmVjKTsKICAgICAgICAgIGlmKG91dF9zYW1wbGVzIT0x
MjAvZmFjdG9yKXRlc3RfZmFpbGVkKCk7CkBAIC0xMzUsNyArMTM1LDE0IEBAIGludCB0ZXN0X2Rl
Y29kZXJfY29kZTAoaW50IG5vX2Z1enopCiAgICAgICAgICBvdXRidWZbMF09MzI3NDk7CiAgICAg
ICAgICBvdXRfc2FtcGxlcyA9IG9wdXNfZGVjb2RlKGRlY1t0XSwgcGFja2V0LCAwLCBvdXRidWYs
IDAsIGZlYyk7CiAgICAgICAgICBpZihvdXRfc2FtcGxlcz4wKXRlc3RfZmFpbGVkKCk7CisjaWYg
IWRlZmluZWQoT1BVU19CVUlMRCkgJiYgKE9QVVNfR05VQ19QUkVSRVEoNCwgNikgfHwgKGRlZmlu
ZWQoX19jbGFuZ19tYWpvcl9fKSAmJiBfX2NsYW5nX21ham9yX18gPj0gMykpCisjcHJhZ21hIEdD
QyBkaWFnbm9zdGljIHB1c2gKKyNwcmFnbWEgR0NDIGRpYWdub3N0aWMgaWdub3JlZCAiLVdub25u
dWxsIgorI2VuZGlmCiAgICAgICAgICBvdXRfc2FtcGxlcyA9IG9wdXNfZGVjb2RlKGRlY1t0XSwg
cGFja2V0LCAwLCAwLCAwLCBmZWMpOworI2lmICFkZWZpbmVkKE9QVVNfQlVJTEQpICYmIChPUFVT
X0dOVUNfUFJFUkVRKDQsIDYpIHx8IChkZWZpbmVkKF9fY2xhbmdfbWFqb3JfXykgJiYgX19jbGFu
Z19tYWpvcl9fID49IDMpKQorI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBwb3AKKyNlbmRpZgogICAg
ICAgICAgaWYob3V0X3NhbXBsZXM+MCl0ZXN0X2ZhaWxlZCgpOwogICAgICAgICAgaWYob3V0YnVm
WzBdIT0zMjc0OSl0ZXN0X2ZhaWxlZCgpOwogCkBAIC0xNjAsNyArMTY3LDcgQEAgaW50IHRlc3Rf
ZGVjb2Rlcl9jb2RlMChpbnQgbm9fZnV6eikKICAgIC8qQ291bnQgY29kZSAwIHRlc3RzKi8KICAg
IGZvcihpPTA7aTw2NDtpKyspCiAgICB7Ci0gICAgICBpbnQgZHVyOworICAgICAgb3B1c19pbnQz
MiBkdXI7CiAgICAgICBpbnQgaixleHBlY3RlZFs1KjJdOwogICAgICAgcGFja2V0WzBdPWk8PDI7
CiAgICAgICBwYWNrZXRbMV09MjU1OwpAQCAtMzE0LDcgKzMyMSw3IEBAIGludCB0ZXN0X2RlY29k
ZXJfY29kZTAoaW50IG5vX2Z1enopCiAgICAgICBpZihvcHVzX2RlY29kZShkZWNiYWssICAwLCAw
LCBvdXRidWYsIE1BWF9GUkFNRV9TQU1QLCAwKTwyMCl0ZXN0X2ZhaWxlZCgpOwogICAgICAgZm9y
KHQ9MDt0PDUqMjt0KyspCiAgICAgICB7Ci0gICAgICAgICBpbnQgZHVyOworICAgICAgICAgb3B1
c19pbnQzMiBkdXI7CiAgICAgICAgICBvdXRfc2FtcGxlcyA9IG9wdXNfZGVjb2RlKGRlY1t0XSwg
cGFja2V0LCBwbGVuKzEsIG91dGJ1ZiwgTUFYX0ZSQU1FX1NBTVAsIDApOwogICAgICAgICAgaWYo
b3V0X3NhbXBsZXMhPWV4cGVjdGVkW3RdKXRlc3RfZmFpbGVkKCk7CiAgICAgICAgICBpZih0PT0w
KWRlY19maW5hbF9yYW5nZTI9ZGVjX2ZpbmFsX3JhbmdlMTsKQEAgLTM4NCwyNiArMzkxLDI2IEBA
IHZvaWQgdGVzdF9zb2Z0X2NsaXAodm9pZCkKICAgIHsKICAgICAgIGZvciAoaj0wO2o8MTAyNDtq
KyspCiAgICAgICB7Ci0gICAgICAgIHhbal09KGkmMjU1KSooMS8zMi5mKS00LmY7CisgICAgICAg
IHhbal09KGomMjU1KSooMS8zMi5mKS00LmY7CiAgICAgICB9CiAgICAgICBvcHVzX3BjbV9zb2Z0
X2NsaXAoJnhbaV0sMTAyNC1pLDEscyk7CiAgICAgICBmb3IgKGo9aTtqPDEwMjQ7aisrKQogICAg
ICAgewotICAgICAgICBpZih4W2ldPjEuZil0ZXN0X2ZhaWxlZCgpOwotICAgICAgICBpZih4W2ld
PC0xLmYpdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgaWYoeFtqXT4xLmYpdGVzdF9mYWlsZWQoKTsK
KyAgICAgICAgaWYoeFtqXTwtMS5mKXRlc3RfZmFpbGVkKCk7CiAgICAgICB9CiAgICB9CiAgICBm
b3IoaT0xO2k8OTtpKyspCiAgICB7CiAgICAgICBmb3IgKGo9MDtqPDEwMjQ7aisrKQogICAgICAg
ewotICAgICAgICB4W2pdPShpJjI1NSkqKDEvMzIuZiktNC5mOworICAgICAgICB4W2pdPShqJjI1
NSkqKDEvMzIuZiktNC5mOwogICAgICAgfQogICAgICAgb3B1c19wY21fc29mdF9jbGlwKHgsMTAy
NC9pLGkscyk7CiAgICAgICBmb3IgKGo9MDtqPCgxMDI0L2kpKmk7aisrKQogICAgICAgewotICAg
ICAgICBpZih4W2ldPjEuZil0ZXN0X2ZhaWxlZCgpOwotICAgICAgICBpZih4W2ldPC0xLmYpdGVz
dF9mYWlsZWQoKTsKKyAgICAgICAgaWYoeFtqXT4xLmYpdGVzdF9mYWlsZWQoKTsKKyAgICAgICAg
aWYoeFtqXTwtMS5mKXRlc3RfZmFpbGVkKCk7CiAgICAgICB9CiAgICB9CiAgICBvcHVzX3BjbV9z
b2Z0X2NsaXAoeCwwLDEscyk7CkBAIC00MzYsNyArNDQzLDcgQEAgaW50IG1haW4oaW50IF9hcmdj
LCBjaGFyICoqX2FyZ3YpCiAgICAgICBpc2VlZD1hdG9pKGVudl9zZWVkKTsKICAgICAgIGVudl91
c2VkPTE7CiAgICB9Ci0gICBlbHNlIGlzZWVkPShvcHVzX3VpbnQzMil0aW1lKE5VTEwpXigoZ2V0
cGlkKCkmNjU1MzUpPDwxNik7CisgICBlbHNlIGlzZWVkPShvcHVzX3VpbnQzMil0aW1lKE5VTEwp
XigoKG9wdXNfdWludDMyKWdldHBpZCgpJjY1NTM1KTw8MTYpOwogICAgUnc9Uno9aXNlZWQ7CiAK
ICAgIG92ZXJzaW9uPW9wdXNfZ2V0X3ZlcnNpb25fc3RyaW5nKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3Rz
L3Rlc3Rfb3B1c19lbmNvZGUuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2VuY29kZS5jCmluZGV4IDEzMmQw
NzRkMzAyNTQ1NmY5ZDIyOTdlNzk4OGU4NWFjNTE2MTBiODUuLmRhZTQ5YzNkNTM1MWJkNTU2YzAz
ZDc0ZWQ4YWU2OWMyMTk1MjA2MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2VuY29kZS5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2VuY29kZS5jCkBAIC01MSw4ICs1MSw4IEBACiAjZGVmaW5l
IFNBTVBMRVMgKDQ4MDAwKjMwKQogI2RlZmluZSBTU0FNUExFUyAoU0FNUExFUy8zKQogI2RlZmlu
ZSBNQVhfRlJBTUVfU0FNUCAoNTc2MCkKLQogI2RlZmluZSBQSSAoMy4xNDE1OTI2NTM1ODk3OTMy
Mzg0NjI2NDNmKQorI2RlZmluZSBSQU5EX1NBTVBMRShhKSAoYVtmYXN0X3JhbmQoKSAlIHNpemVv
ZihhKS9zaXplb2YoYVswXSldKQogCiB2b2lkIGdlbmVyYXRlX211c2ljKHNob3J0ICpidWYsIG9w
dXNfaW50MzIgbGVuKQogewpAQCAtMTEyLDE0ICsxMTIsMTY5IEBAIHN0YXRpYyBPUFVTX0lOTElO
RSB2b2lkIHNhdmVfcGFja2V0KHVuc2lnbmVkIGNoYXIqIHAsIGludCBsZW4sIG9wdXNfdWludDMy
IHJuZykKIH0KICNlbmRpZgogCitpbnQgZ2V0X2ZyYW1lX3NpemVfZW51bShpbnQgZnJhbWVfc2l6
ZSwgaW50IHNhbXBsaW5nX3JhdGUpCit7CisgICBpbnQgZnJhbWVfc2l6ZV9lbnVtOworCisgICBp
ZihmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzQwMCkKKyAgICAgIGZyYW1lX3NpemVfZW51bSA9
IE9QVVNfRlJBTUVTSVpFXzJfNV9NUzsKKyAgIGVsc2UgaWYoZnJhbWVfc2l6ZT09c2FtcGxpbmdf
cmF0ZS8yMDApCisgICAgICBmcmFtZV9zaXplX2VudW0gPSBPUFVTX0ZSQU1FU0laRV81X01TOwor
ICAgZWxzZSBpZihmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzEwMCkKKyAgICAgIGZyYW1lX3Np
emVfZW51bSA9IE9QVVNfRlJBTUVTSVpFXzEwX01TOworICAgZWxzZSBpZihmcmFtZV9zaXplPT1z
YW1wbGluZ19yYXRlLzUwKQorICAgICAgZnJhbWVfc2l6ZV9lbnVtID0gT1BVU19GUkFNRVNJWkVf
MjBfTVM7CisgICBlbHNlIGlmKGZyYW1lX3NpemU9PXNhbXBsaW5nX3JhdGUvMjUpCisgICAgICBm
cmFtZV9zaXplX2VudW0gPSBPUFVTX0ZSQU1FU0laRV80MF9NUzsKKyAgIGVsc2UgaWYoZnJhbWVf
c2l6ZT09MypzYW1wbGluZ19yYXRlLzUwKQorICAgICAgZnJhbWVfc2l6ZV9lbnVtID0gT1BVU19G
UkFNRVNJWkVfNjBfTVM7CisgICBlbHNlIGlmKGZyYW1lX3NpemU9PTQqc2FtcGxpbmdfcmF0ZS81
MCkKKyAgICAgIGZyYW1lX3NpemVfZW51bSA9IE9QVVNfRlJBTUVTSVpFXzgwX01TOworICAgZWxz
ZSBpZihmcmFtZV9zaXplPT01KnNhbXBsaW5nX3JhdGUvNTApCisgICAgICBmcmFtZV9zaXplX2Vu
dW0gPSBPUFVTX0ZSQU1FU0laRV8xMDBfTVM7CisgICBlbHNlIGlmKGZyYW1lX3NpemU9PTYqc2Ft
cGxpbmdfcmF0ZS81MCkKKyAgICAgIGZyYW1lX3NpemVfZW51bSA9IE9QVVNfRlJBTUVTSVpFXzEy
MF9NUzsKKyAgIGVsc2UKKyAgICAgIHRlc3RfZmFpbGVkKCk7CisKKyAgIHJldHVybiBmcmFtZV9z
aXplX2VudW07Cit9CisKK3ZvaWQgdGVzdF9lbmNvZGUoT3B1c0VuY29kZXIgKmVuYywgaW50IGNo
YW5uZWxzLCBpbnQgZnJhbWVfc2l6ZSwgT3B1c0RlY29kZXIgKmRlYywgY29uc3QgY2hhciogZGVi
dWdfaW5mbykKK3sKKyAgIGludCBzYW1wX2NvdW50ID0gMDsKKyAgIG9wdXNfaW50MTYgKmluYnVm
OworICAgdW5zaWduZWQgY2hhciBwYWNrZXRbTUFYX1BBQ0tFVCsyNTddOworICAgaW50IGxlbjsK
KyAgIG9wdXNfaW50MTYgKm91dGJ1ZjsKKyAgIGludCBvdXRfc2FtcGxlczsKKworICAgLyogR2Vu
ZXJhdGUgaW5wdXQgZGF0YSAqLworICAgaW5idWYgPSAob3B1c19pbnQxNiopbWFsbG9jKHNpemVv
ZigqaW5idWYpKlNTQU1QTEVTKTsKKyAgIGdlbmVyYXRlX211c2ljKGluYnVmLCBTU0FNUExFUy8y
KTsKKworICAgLyogQWxsb2NhdGUgbWVtb3J5IGZvciBvdXRwdXQgZGF0YSAqLworICAgb3V0YnVm
ID0gKG9wdXNfaW50MTYqKW1hbGxvYyhzaXplb2YoKm91dGJ1ZikqTUFYX0ZSQU1FX1NBTVAqMyk7
CisKKyAgIC8qIEVuY29kZSBkYXRhLCB0aGVuIGRlY29kZSBmb3Igc2FuaXR5IGNoZWNrICovCisg
ICBkbyB7CisgICAgICBsZW4gPSBvcHVzX2VuY29kZShlbmMsICZpbmJ1ZltzYW1wX2NvdW50KmNo
YW5uZWxzXSwgZnJhbWVfc2l6ZSwgcGFja2V0LCBNQVhfUEFDS0VUKTsKKyAgICAgIGlmKGxlbjww
IHx8IGxlbj5NQVhfUEFDS0VUKSB7CisgICAgICAgICBmcHJpbnRmKHN0ZGVyciwiJXNcbiIsZGVi
dWdfaW5mbyk7CisgICAgICAgICBmcHJpbnRmKHN0ZGVyciwib3B1c19lbmNvZGUoKSByZXR1cm5l
ZCAlZFxuIixsZW4pOworICAgICAgICAgdGVzdF9mYWlsZWQoKTsKKyAgICAgIH0KKworICAgICAg
b3V0X3NhbXBsZXMgPSBvcHVzX2RlY29kZShkZWMsIHBhY2tldCwgbGVuLCBvdXRidWYsIE1BWF9G
UkFNRV9TQU1QLCAwKTsKKyAgICAgIGlmKG91dF9zYW1wbGVzIT1mcmFtZV9zaXplKSB7CisgICAg
ICAgICBmcHJpbnRmKHN0ZGVyciwiJXNcbiIsZGVidWdfaW5mbyk7CisgICAgICAgICBmcHJpbnRm
KHN0ZGVyciwib3B1c19kZWNvZGUoKSByZXR1cm5lZCAlZFxuIixvdXRfc2FtcGxlcyk7CisgICAg
ICAgICB0ZXN0X2ZhaWxlZCgpOworICAgICAgfQorCisgICAgICBzYW1wX2NvdW50ICs9IGZyYW1l
X3NpemU7CisgICB9IHdoaWxlIChzYW1wX2NvdW50IDwgKChTU0FNUExFUy8yKS1NQVhfRlJBTUVf
U0FNUCkpOworCisgICAvKiBDbGVhbiB1cCAqLworICAgZnJlZShpbmJ1Zik7CisgICBmcmVlKG91
dGJ1Zik7Cit9CisKK3ZvaWQgZnV6el9lbmNvZGVyX3NldHRpbmdzKGNvbnN0IGludCBudW1fZW5j
b2RlcnMsIGNvbnN0IGludCBudW1fc2V0dGluZ19jaGFuZ2VzKQoreworICAgT3B1c0VuY29kZXIg
KmVuYzsKKyAgIE9wdXNEZWNvZGVyICpkZWM7CisgICBpbnQgaSxqLGVycjsKKworICAgLyogUGFy
YW1ldGVycyB0byBmdXp6LiBTb21lIHZhbHVlcyBhcmUgZHVwbGljYXRlZCB0byBpbmNyZWFzZSB0
aGVpciBwcm9iYWJpbGl0eSBvZiBiZWluZyB0ZXN0ZWQuICovCisgICBpbnQgc2FtcGxpbmdfcmF0
ZXNbNV0gPSB7ODAwMCwgMTIwMDAsIDE2MDAwLCAyNDAwMCwgNDgwMDB9OworICAgaW50IGNoYW5u
ZWxzWzJdID0gezEsIDJ9OworICAgaW50IGFwcGxpY2F0aW9uc1szXSA9IHtPUFVTX0FQUExJQ0FU
SU9OX0FVRElPLCBPUFVTX0FQUExJQ0FUSU9OX1ZPSVAsIE9QVVNfQVBQTElDQVRJT05fUkVTVFJJ
Q1RFRF9MT1dERUxBWX07CisgICBpbnQgYml0cmF0ZXNbMTFdID0gezYwMDAsIDEyMDAwLCAxNjAw
MCwgMjQwMDAsIDMyMDAwLCA0ODAwMCwgNjQwMDAsIDk2MDAwLCA1MTAwMDAsIE9QVVNfQVVUTywg
T1BVU19CSVRSQVRFX01BWH07CisgICBpbnQgZm9yY2VfY2hhbm5lbHNbNF0gPSB7T1BVU19BVVRP
LCBPUFVTX0FVVE8sIDEsIDJ9OworICAgaW50IHVzZV92YnJbM10gPSB7MCwgMSwgMX07CisgICBp
bnQgdmJyX2NvbnN0cmFpbnRzWzNdID0gezAsIDEsIDF9OworICAgaW50IGNvbXBsZXhpdGllc1sx
MV0gPSB7MCwgMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTB9OworICAgaW50IG1heF9iYW5k
d2lkdGhzWzZdID0ge09QVVNfQkFORFdJRFRIX05BUlJPV0JBTkQsIE9QVVNfQkFORFdJRFRIX01F
RElVTUJBTkQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgT1BVU19CQU5EV0lEVEhfV0lE
RUJBTkQsIE9QVVNfQkFORFdJRFRIX1NVUEVSV0lERUJBTkQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQsIE9QVVNfQkFORFdJRFRIX0ZVTExCQU5E
fTsKKyAgIGludCBzaWduYWxzWzRdID0ge09QVVNfQVVUTywgT1BVU19BVVRPLCBPUFVTX1NJR05B
TF9WT0lDRSwgT1BVU19TSUdOQUxfTVVTSUN9OworICAgaW50IGluYmFuZF9mZWNzWzNdID0gezAs
IDAsIDF9OworICAgaW50IHBhY2tldF9sb3NzX3BlcmNbNF0gPSB7MCwgMSwgMiwgNX07CisgICBp
bnQgbHNiX2RlcHRoc1syXSA9IHs4LCAyNH07CisgICBpbnQgcHJlZGljdGlvbl9kaXNhYmxlZFsz
XSA9IHswLCAwLCAxfTsKKyAgIGludCB1c2VfZHR4WzJdID0gezAsIDF9OworICAgaW50IGZyYW1l
X3NpemVzX21zX3gyWzldID0gezUsIDEwLCAyMCwgNDAsIDgwLCAxMjAsIDE2MCwgMjAwLCAyNDB9
OyAgLyogeDIgdG8gYXZvaWQgMi41IG1zICovCisgICBjaGFyIGRlYnVnX2luZm9bNTEyXTsKKwor
ICAgZm9yIChpPTA7IGk8bnVtX2VuY29kZXJzOyBpKyspIHsKKyAgICAgIGludCBzYW1wbGluZ19y
YXRlID0gUkFORF9TQU1QTEUoc2FtcGxpbmdfcmF0ZXMpOworICAgICAgaW50IG51bV9jaGFubmVs
cyA9IFJBTkRfU0FNUExFKGNoYW5uZWxzKTsKKyAgICAgIGludCBhcHBsaWNhdGlvbiA9IFJBTkRf
U0FNUExFKGFwcGxpY2F0aW9ucyk7CisKKyAgICAgIGRlYyA9IG9wdXNfZGVjb2Rlcl9jcmVhdGUo
c2FtcGxpbmdfcmF0ZSwgbnVtX2NoYW5uZWxzLCAmZXJyKTsKKyAgICAgIGlmKGVyciE9T1BVU19P
SyB8fCBkZWM9PU5VTEwpdGVzdF9mYWlsZWQoKTsKKworICAgICAgZW5jID0gb3B1c19lbmNvZGVy
X2NyZWF0ZShzYW1wbGluZ19yYXRlLCBudW1fY2hhbm5lbHMsIGFwcGxpY2F0aW9uLCAmZXJyKTsK
KyAgICAgIGlmKGVyciE9T1BVU19PSyB8fCBlbmM9PU5VTEwpdGVzdF9mYWlsZWQoKTsKKworICAg
ICAgZm9yIChqPTA7IGo8bnVtX3NldHRpbmdfY2hhbmdlczsgaisrKSB7CisgICAgICAgICBpbnQg
Yml0cmF0ZSA9IFJBTkRfU0FNUExFKGJpdHJhdGVzKTsKKyAgICAgICAgIGludCBmb3JjZV9jaGFu
bmVsID0gUkFORF9TQU1QTEUoZm9yY2VfY2hhbm5lbHMpOworICAgICAgICAgaW50IHZiciA9IFJB
TkRfU0FNUExFKHVzZV92YnIpOworICAgICAgICAgaW50IHZicl9jb25zdHJhaW50ID0gUkFORF9T
QU1QTEUodmJyX2NvbnN0cmFpbnRzKTsKKyAgICAgICAgIGludCBjb21wbGV4aXR5ID0gUkFORF9T
QU1QTEUoY29tcGxleGl0aWVzKTsKKyAgICAgICAgIGludCBtYXhfYncgPSBSQU5EX1NBTVBMRSht
YXhfYmFuZHdpZHRocyk7CisgICAgICAgICBpbnQgc2lnID0gUkFORF9TQU1QTEUoc2lnbmFscyk7
CisgICAgICAgICBpbnQgaW5iYW5kX2ZlYyA9IFJBTkRfU0FNUExFKGluYmFuZF9mZWNzKTsKKyAg
ICAgICAgIGludCBwa3RfbG9zcyA9IFJBTkRfU0FNUExFKHBhY2tldF9sb3NzX3BlcmMpOworICAg
ICAgICAgaW50IGxzYl9kZXB0aCA9IFJBTkRfU0FNUExFKGxzYl9kZXB0aHMpOworICAgICAgICAg
aW50IHByZWRfZGlzYWJsZWQgPSBSQU5EX1NBTVBMRShwcmVkaWN0aW9uX2Rpc2FibGVkKTsKKyAg
ICAgICAgIGludCBkdHggPSBSQU5EX1NBTVBMRSh1c2VfZHR4KTsKKyAgICAgICAgIGludCBmcmFt
ZV9zaXplX21zX3gyID0gUkFORF9TQU1QTEUoZnJhbWVfc2l6ZXNfbXNfeDIpOworICAgICAgICAg
aW50IGZyYW1lX3NpemUgPSBmcmFtZV9zaXplX21zX3gyKnNhbXBsaW5nX3JhdGUvMjAwMDsKKyAg
ICAgICAgIGludCBmcmFtZV9zaXplX2VudW0gPSBnZXRfZnJhbWVfc2l6ZV9lbnVtKGZyYW1lX3Np
emUsIHNhbXBsaW5nX3JhdGUpOworICAgICAgICAgZm9yY2VfY2hhbm5lbCA9IElNSU4oZm9yY2Vf
Y2hhbm5lbCwgbnVtX2NoYW5uZWxzKTsKKworICAgICAgICAgc3ByaW50ZihkZWJ1Z19pbmZvLAor
ICAgICAgICAgICAgICAgICAiZnV6el9lbmNvZGVyX3NldHRpbmdzOiAlZCBrSHosICVkIGNoLCBh
cHBsaWNhdGlvbjogJWQsICIKKyAgICAgICAgICAgICAgICAgIiVkIGJwcywgZm9yY2UgY2g6ICVk
LCB2YnI6ICVkLCB2YnIgY29uc3RyYWludDogJWQsIGNvbXBsZXhpdHk6ICVkLCAiCisgICAgICAg
ICAgICAgICAgICJtYXggYnc6ICVkLCBzaWduYWw6ICVkLCBpbmJhbmQgZmVjOiAlZCwgcGt0IGxv
c3M6ICVkJSUsIGxzYiBkZXB0aDogJWQsICIKKyAgICAgICAgICAgICAgICAgInByZWQgZGlzYWJs
ZWQ6ICVkLCBkdHg6ICVkLCAoJWQvMikgbXNcbiIsCisgICAgICAgICAgICAgICAgIHNhbXBsaW5n
X3JhdGUvMTAwMCwgbnVtX2NoYW5uZWxzLCBhcHBsaWNhdGlvbiwgYml0cmF0ZSwKKyAgICAgICAg
ICAgICAgICAgZm9yY2VfY2hhbm5lbCwgdmJyLCB2YnJfY29uc3RyYWludCwgY29tcGxleGl0eSwg
bWF4X2J3LCBzaWcsIGluYmFuZF9mZWMsCisgICAgICAgICAgICAgICAgIHBrdF9sb3NzLCBsc2Jf
ZGVwdGgsIHByZWRfZGlzYWJsZWQsIGR0eCwgZnJhbWVfc2l6ZV9tc194Mik7CisKKyAgICAgICAg
IGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKGJpdHJhdGUpKSAhPSBP
UFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMs
IE9QVVNfU0VUX0ZPUkNFX0NIQU5ORUxTKGZvcmNlX2NoYW5uZWwpKSAhPSBPUFVTX09LKSB0ZXN0
X2ZhaWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZC
Uih2YnIpKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUl9DT05TVFJBSU5UKHZicl9jb25zdHJhaW50KSkgIT0g
T1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9DT01QTEVYSVRZKGNvbXBsZXhpdHkpKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxl
ZCgpOworICAgICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9CQU5E
V0lEVEgobWF4X2J3KSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9w
dXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoc2lnKSkgIT0gT1BVU19PSykgdGVz
dF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9J
TkJBTkRfRkVDKGluYmFuZF9mZWMpKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworICAgICAg
ICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BBQ0tFVF9MT1NTX1BFUkMocGt0
X2xvc3MpKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSChsc2JfZGVwdGgpKSAhPSBPUFVTX09LKSB0
ZXN0X2ZhaWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VU
X1BSRURJQ1RJT05fRElTQUJMRUQocHJlZF9kaXNhYmxlZCkpICE9IE9QVVNfT0spIHRlc3RfZmFp
bGVkKCk7CisgICAgICAgICBpZihvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRFRYKGR0
eCkpICE9IE9QVVNfT0spIHRlc3RfZmFpbGVkKCk7CisgICAgICAgICBpZihvcHVzX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKGZyYW1lX3NpemVfZW51bSkp
ICE9IE9QVVNfT0spIHRlc3RfZmFpbGVkKCk7CisKKyAgICAgICAgIHRlc3RfZW5jb2RlKGVuYywg
bnVtX2NoYW5uZWxzLCBmcmFtZV9zaXplLCBkZWMsIGRlYnVnX2luZm8pOworICAgICAgfQorCisg
ICAgICBvcHVzX2VuY29kZXJfZGVzdHJveShlbmMpOworICAgICAgb3B1c19kZWNvZGVyX2Rlc3Ry
b3koZGVjKTsKKyAgIH0KK30KKwogaW50IHJ1bl90ZXN0MShpbnQgbm9fZnV6eikKIHsKICAgIHN0
YXRpYyBjb25zdCBpbnQgZnNpemVzWzZdPXs5NjAqMyw5NjAqMiwxMjAsMjQwLDQ4MCw5NjB9Owog
ICAgc3RhdGljIGNvbnN0IGNoYXIgKm1zdHJpbmdzWzNdID0geyIgICAgTFAiLCJIeWJyaWQiLCIg
IE1EQ1QifTsKICAgIHVuc2lnbmVkIGNoYXIgbWFwcGluZ1syNTZdID0gezAsMSwyNTV9OwogICAg
dW5zaWduZWQgY2hhciBkYjYyWzM2XTsKLSAgIG9wdXNfaW50MzIgaTsKLSAgIGludCByYyxqLGVy
cjsKKyAgIG9wdXNfaW50MzIgaSxqOworICAgaW50IHJjLGVycjsKICAgIE9wdXNFbmNvZGVyICpl
bmM7CiAgICBPcHVzTVNFbmNvZGVyICpNU2VuYzsKICAgIE9wdXNEZWNvZGVyICpkZWM7CkBAIC0y
MjksNiArMzg0LDcgQEAgaW50IHJ1bl90ZXN0MShpbnQgbm9fZnV6eikKIAogICAgaWYob3B1c19l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0FVVE8pKSE9T1BVU19PSyl0
ZXN0X2ZhaWxlZCgpOwogICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0ZPUkNF
X01PREUoLTIpKSE9T1BVU19CQURfQVJHKXRlc3RfZmFpbGVkKCk7CisgICBpZihvcHVzX2VuY29k
ZShlbmMsIGluYnVmLCA1MDAsIHBhY2tldCwgTUFYX1BBQ0tFVCkhPU9QVVNfQkFEX0FSRyl0ZXN0
X2ZhaWxlZCgpOwogCiAgICBmb3IocmM9MDtyYzwzO3JjKyspCiAgICB7CkBAIC0zMzUsNyArNDkx
LDggQEAgaW50IHJ1bl90ZXN0MShpbnQgbm9fZnV6eikKICAgICAgICAgIGlmKG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2Rlcl9jdGwoTVNlbmMsIE9QVVNfU0VUX0JJVFJBVEUocmF0ZSkpIT1PUFVTX09L
KXRlc3RfZmFpbGVkKCk7CiAgICAgICAgICBjb3VudD1pPTA7CiAgICAgICAgICBkbyB7Ci0gICAg
ICAgICAgICBpbnQgcHJlZCxsZW4sb3V0X3NhbXBsZXMsZnJhbWVfc2l6ZSxsb3NzOworICAgICAg
ICAgICAgaW50IGxlbixvdXRfc2FtcGxlcyxmcmFtZV9zaXplLGxvc3M7CisgICAgICAgICAgICBv
cHVzX2ludDMyIHByZWQ7CiAgICAgICAgICAgICBpZihvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKE1TZW5jLCBPUFVTX0dFVF9QUkVESUNUSU9OX0RJU0FCTEVEKCZwcmVkKSkhPU9QVVNfT0sp
dGVzdF9mYWlsZWQoKTsKICAgICAgICAgICAgIGlmKG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoTVNlbmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoKGludCkoZmFzdF9yYW5kKCkm
MTUpPChwcmVkPzExOjQpKSkhPU9QVVNfT0spdGVzdF9mYWlsZWQoKTsKICAgICAgICAgICAgIGZy
YW1lX3NpemU9ZnJhbWVbal07CkBAIC00MjUsNyArNTgyLDcgQEAgaW50IHJ1bl90ZXN0MShpbnQg
bm9fZnV6eikKICAgICAgICAgIHRoZSBkZWNvZGVycyBpbiBvcmRlciB0byBjb21wYXJlIHRoZW0u
ICovCiAgICAgICBpZihvcHVzX3BhY2tldF9wYXJzZShwYWNrZXQsbGVuLCZ0b2MsZnJhbWVzLHNp
emUsJnBheWxvYWRfb2Zmc2V0KTw9MCl0ZXN0X2ZhaWxlZCgpOwogICAgICAgaWYoKGZhc3RfcmFu
ZCgpJjEwMjMpPT0wKWxlbj0wOwotICAgICAgZm9yKGo9KGZyYW1lc1swXS1wYWNrZXQpO2o8bGVu
O2orKylmb3Ioamo9MDtqajw4O2pqKyspcGFja2V0W2pdXj0oKCFub19mdXp6KSYmKChmYXN0X3Jh
bmQoKSYxMDIzKT09MCkpPDxqajsKKyAgICAgIGZvcihqPShvcHVzX2ludDMyKShmcmFtZXNbMF0t
cGFja2V0KTtqPGxlbjtqKyspZm9yKGpqPTA7amo8ODtqaisrKXBhY2tldFtqXV49KCghbm9fZnV6
eikmJigoZmFzdF9yYW5kKCkmMTAyMyk9PTApKTw8amo7CiAgICAgICBvdXRfc2FtcGxlcyA9IG9w
dXNfZGVjb2RlKGRlY19lcnJbMF0sIGxlbj4wP3BhY2tldDpOVUxMLCBsZW4sIG91dDJidWYsIE1B
WF9GUkFNRV9TQU1QLCAwKTsKICAgICAgIGlmKG91dF9zYW1wbGVzPDB8fG91dF9zYW1wbGVzPk1B
WF9GUkFNRV9TQU1QKXRlc3RfZmFpbGVkKCk7CiAgICAgICBpZigobGVuPjAmJm91dF9zYW1wbGVz
IT1mcmFtZV9zaXplKSl0ZXN0X2ZhaWxlZCgpOyAvKkZJWE1FIHVzZSBsYXN0ZnJhbWUqLwpAQCAt
NDcwLDM5ICs2MjcsNzQgQEAgaW50IHJ1bl90ZXN0MShpbnQgbm9fZnV6eikKICAgIHJldHVybiAw
OwogfQogCit2b2lkIHByaW50X3VzYWdlKGNoYXIqIF9hcmd2W10pCit7CisgICBmcHJpbnRmKHN0
ZGVyciwiVXNhZ2U6ICVzIFs8c2VlZD5dIFstZnV6eiA8bnVtX2VuY29kZXJzPiA8bnVtX3NldHRp
bmdzX3Blcl9lbmNvZGVyPl1cbiIsX2FyZ3ZbMF0pOworfQorCiBpbnQgbWFpbihpbnQgX2FyZ2Ms
IGNoYXIgKipfYXJndikKIHsKKyAgIGludCBhcmdzPTE7CisgICBjaGFyICogc3RydG9sX3N0cj1O
VUxMOwogICAgY29uc3QgY2hhciAqIG92ZXJzaW9uOwogICAgY29uc3QgY2hhciAqIGVudl9zZWVk
OwogICAgaW50IGVudl91c2VkOwotCi0gICBpZihfYXJnYz4yKQotICAgewotICAgICAgZnByaW50
ZihzdGRlcnIsIlVzYWdlOiAlcyBbPHNlZWQ+XVxuIixfYXJndlswXSk7Ci0gICAgICByZXR1cm4g
MTsKLSAgIH0KKyAgIGludCBudW1fZW5jb2RlcnNfdG9fZnV6ej01OworICAgaW50IG51bV9zZXR0
aW5nX2NoYW5nZXM9NDA7CiAKICAgIGVudl91c2VkPTA7CiAgICBlbnZfc2VlZD1nZXRlbnYoIlNF
RUQiKTsKLSAgIGlmKF9hcmdjPjEpaXNlZWQ9YXRvaShfYXJndlsxXSk7Ci0gICBlbHNlIGlmKGVu
dl9zZWVkKQotICAgeworICAgaWYoX2FyZ2M+MSkKKyAgICAgIGlzZWVkPXN0cnRvbChfYXJndlsx
XSwgJnN0cnRvbF9zdHIsIDEwKTsgIC8qIHRoZSBmaXJzdCBpbnB1dCBhcmd1bWVudCBtaWdodCBi
ZSB0aGUgc2VlZCAqLworICAgaWYoc3RydG9sX3N0ciE9TlVMTCAmJiBzdHJ0b2xfc3RyWzBdPT0n
XDAnKSAgIC8qIGlzZWVkIGlzIGEgdmFsaWQgbnVtYmVyICovCisgICAgICBhcmdzKys7CisgICBl
bHNlIGlmKGVudl9zZWVkKSB7CiAgICAgICBpc2VlZD1hdG9pKGVudl9zZWVkKTsKICAgICAgIGVu
dl91c2VkPTE7CiAgICB9Ci0gICBlbHNlIGlzZWVkPShvcHVzX3VpbnQzMil0aW1lKE5VTEwpXigo
Z2V0cGlkKCkmNjU1MzUpPDwxNik7CisgICBlbHNlIGlzZWVkPShvcHVzX3VpbnQzMil0aW1lKE5V
TEwpXigoKG9wdXNfdWludDMyKWdldHBpZCgpJjY1NTM1KTw8MTYpOwogICAgUnc9Uno9aXNlZWQ7
CiAKKyAgIHdoaWxlKGFyZ3M8X2FyZ2MpCisgICB7CisgICAgICBpZihzdHJjbXAoX2FyZ3ZbYXJn
c10sICItZnV6eiIpPT0wICYmIF9hcmdjPT0oYXJncyszKSkgeworICAgICAgICAgbnVtX2VuY29k
ZXJzX3RvX2Z1eno9c3RydG9sKF9hcmd2W2FyZ3MrMV0sICZzdHJ0b2xfc3RyLCAxMCk7CisgICAg
ICAgICBpZihzdHJ0b2xfc3RyWzBdIT0nXDAnIHx8IG51bV9lbmNvZGVyc190b19mdXp6PD0wKSB7
CisgICAgICAgICAgICBwcmludF91c2FnZShfYXJndik7CisgICAgICAgICAgICByZXR1cm4gRVhJ
VF9GQUlMVVJFOworICAgICAgICAgfQorICAgICAgICAgbnVtX3NldHRpbmdfY2hhbmdlcz1zdHJ0
b2woX2FyZ3ZbYXJncysyXSwgJnN0cnRvbF9zdHIsIDEwKTsKKyAgICAgICAgIGlmKHN0cnRvbF9z
dHJbMF0hPSdcMCcgfHwgbnVtX3NldHRpbmdfY2hhbmdlczw9MCkgeworICAgICAgICAgICAgcHJp
bnRfdXNhZ2UoX2FyZ3YpOworICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKKyAgICAg
ICAgIH0KKyAgICAgICAgIGFyZ3MrPTM7CisgICAgICB9CisgICAgICBlbHNlIHsKKyAgICAgICAg
cHJpbnRfdXNhZ2UoX2FyZ3YpOworICAgICAgICByZXR1cm4gRVhJVF9GQUlMVVJFOworICAgICAg
fQorICAgfQorCiAgICBvdmVyc2lvbj1vcHVzX2dldF92ZXJzaW9uX3N0cmluZygpOwogICAgaWYo
IW92ZXJzaW9uKXRlc3RfZmFpbGVkKCk7CiAgICBmcHJpbnRmKHN0ZGVyciwiVGVzdGluZyAlcyBl
bmNvZGVyLiBSYW5kb20gc2VlZDogJXUgKCUuNFgpXG4iLCBvdmVyc2lvbiwgaXNlZWQsIGZhc3Rf
cmFuZCgpICUgNjU1MzUpOwogICAgaWYoZW52X3VzZWQpZnByaW50ZihzdGRlcnIsIiAgUmFuZG9t
IHNlZWQgc2V0IGZyb20gdGhlIGVudmlyb25tZW50IChTRUVEPSVzKS5cbiIsIGVudl9zZWVkKTsK
IAorICAgcmVncmVzc2lvbl90ZXN0KCk7CisKICAgIC8qU2V0dGluZyBURVNUX09QVVNfTk9GVVpa
IHRlbGxzIHRoZSB0b29sIG5vdCB0byBzZW5kIGdhcmJhZ2UgZGF0YQogICAgICBpbnRvIHRoZSBk
ZWNvZGVycy4gVGhpcyBpcyBoZWxwZnVsIGJlY2F1c2UgZ2FyYmFnZSBkYXRhCiAgICAgIG1heSBj
YXVzZSB0aGUgZGVjb2RlcnMgdG8gY2xpcCwgd2hpY2ggYW5nZXJzIENMQU5HIElPQy4qLwogICAg
cnVuX3Rlc3QxKGdldGVudigiVEVTVF9PUFVTX05PRlVaWiIpIT1OVUxMKTsKIAorICAgLyogRnV6
eiBlbmNvZGVyIHNldHRpbmdzIG9ubGluZSAqLworICAgaWYoZ2V0ZW52KCJURVNUX09QVVNfTk9G
VVpaIik9PU5VTEwpIHsKKyAgICAgIGZwcmludGYoc3RkZXJyLCJSdW5uaW5nIGZ1enpfZW5jb2Rl
cl9zZXR0aW5ncyB3aXRoICVkIGVuY29kZXIocykgYW5kICVkIHNldHRpbmcgY2hhbmdlKHMpIGVh
Y2guXG4iLAorICAgICAgICAgICAgICBudW1fZW5jb2RlcnNfdG9fZnV6eiwgbnVtX3NldHRpbmdf
Y2hhbmdlcyk7CisgICAgICBmdXp6X2VuY29kZXJfc2V0dGluZ3MobnVtX2VuY29kZXJzX3RvX2Z1
enosIG51bV9zZXR0aW5nX2NoYW5nZXMpOworICAgfQorCiAgICBmcHJpbnRmKHN0ZGVyciwiVGVz
dHMgY29tcGxldGVkIHN1Y2Nlc3NmdWxseS5cbiIpOwogCiAgICByZXR1cm4gMDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvdXBkYXRlX3ZlcnNpb24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3VwZGF0ZV92ZXJzaW9uCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE5OTk5OTE4ZDBm
N2UzY2Q1MmViMWMyY2RiYzcwYzFkODVjY2IyMjYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3VwZGF0ZV92
ZXJzaW9uCkBAIC0wLDAgKzEsNjUgQEAKKyMhL2Jpbi9iYXNoCisKKyMgQ3JlYXRlcyBhbmQgdXBk
YXRlcyB0aGUgcGFja2FnZV92ZXJzaW9uIGluZm9ybWF0aW9uIHVzZWQgYnkgY29uZmlndXJlLmFj
CisjIChvciBvdGhlciBtYWtlZmlsZXMpLiAgV2hlbiBydW4gaW5zaWRlIGEgZ2l0IHJlcG9zaXRv
cnkgaXQgd2lsbCB1c2UgdGhlCisjIHZlcnNpb24gaW5mb3JtYXRpb24gdGhhdCBjYW4gYmUgcXVl
cmllZCBmcm9tIGl0IHVubGVzcyBBVVRPX1VQREFURSBpcyBzZXQKKyMgdG8gJ25vJy4gIElmIG5v
IHZlcnNpb24gaXMgY3VycmVudGx5IGtub3duIGl0IHdpbGwgYmUgc2V0IHRvICd1bmtub3duJy4K
KyMKKyMgSWYgY2FsbGVkIHdpdGggdGhlIGFyZ3VtZW50ICdyZWxlYXNlJywgdGhlIFBBQ0tBR0Vf
VkVSU0lPTiB3aWxsIGJlIHVwZGF0ZWQKKyMgZXZlbiBpZiBBVVRPX1VQREFURT1ubywgYnV0IHRo
ZSB2YWx1ZSBvZiBBVVRPX1VQREFURSBzaGFsbCBiZSBwcmVzZXJ2ZWQuCisjIFRoaXMgaXMgdXNl
ZCB0byBmb3JjZSBhIHZlcnNpb24gdXBkYXRlIHdoZW5ldmVyIGBtYWtlIGRpc3RgIGlzIHJ1bi4K
KyMKKyMgVGhlIGV4aXQgc3RhdHVzIGlzIDEgaWYgcGFja2FnZV92ZXJzaW9uIGlzIG5vdCBtb2Rp
ZmllZCwgZWxzZSAwIGlzIHJldHVybmVkLgorIworIyBUaGlzIHNjcmlwdCBzaG91bGQgTk9UIGJl
IGluY2x1ZGVkIGluIGRpc3RyaWJ1dGVkIHRhcmJhbGxzLCBiZWNhdXNlIGlmIGEKKyMgcGFyZW50
IGRpcmVjdG9yeSBjb250YWlucyBhIGdpdCByZXBvc2l0b3J5IHdlIGRvIG5vdCB3YW50IHRvIGFj
Y2lkZW50YWxseQorIyByZXRyaWV2ZSB0aGUgdmVyc2lvbiBpbmZvcm1hdGlvbiBmcm9tIGl0IGlu
c3RlYWQuICBUYXJiYWxscyBzaG91bGQgc2hpcAorIyB3aXRoIG9ubHkgdGhlIHBhY2thZ2VfdmVy
c2lvbiBmaWxlLgorIworIyBSb24gPHJvbkBkZWJpYW4ub3JnPiwgMjAxMi4KKworU1JDRElSPSQo
ZGlybmFtZSAkMCkKKworaWYgWyAtZSAiJFNSQ0RJUi9wYWNrYWdlX3ZlcnNpb24iIF07IHRoZW4K
KyAgICAuICIkU1JDRElSL3BhY2thZ2VfdmVyc2lvbiIKK2ZpCisKK2lmIFsgIiRBVVRPX1VQREFU
RSIgPSBubyBdOyB0aGVuCisgICAgWyAiJDEiID0gcmVsZWFzZSBdIHx8IGV4aXQgMQorZWxzZQor
ICAgIEFVVE9fVVBEQVRFPXllcworZmkKKworIyBXZSBydW4gYGdpdCBzdGF0dXNgIGJlZm9yZSBk
ZXNjcmliZSBoZXJlIHRvIGVuc3VyZSB0aGF0IHdlIGRvbid0IGdldCBhIGZhbHNlCisjIC1kaXJ0
eSBmcm9tIGZpbGVzIHRoYXQgaGF2ZSBiZWVuIHRvdWNoZWQgYnV0IGFyZSBub3QgYWN0dWFsbHkg
YWx0ZXJlZCBpbiB0aGUKKyMgd29ya2luZyBkaXIuCitHSVRfVkVSU0lPTj0kKGNkICIkU1JDRElS
IiAmJiBnaXQgc3RhdHVzID4gL2Rldi9udWxsIDI+JjEgXAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgJiYgZ2l0IGRlc2NyaWJlIC0tdGFncyAtLW1hdGNoICd2KicgLS1kaXJ0eSAyPiAvZGV2
L251bGwpCitHSVRfVkVSU0lPTj0ke0dJVF9WRVJTSU9OI3Z9CisKK2lmIFsgLW4gIiRHSVRfVkVS
U0lPTiIgXTsgdGhlbgorCisgICAgWyAiJEdJVF9WRVJTSU9OIiAhPSAiJFBBQ0tBR0VfVkVSU0lP
TiIgXSB8fCBleGl0IDEKKyAgICBQQUNLQUdFX1ZFUlNJT049IiRHSVRfVkVSU0lPTiIKKworZWxp
ZiBbIC16ICIkUEFDS0FHRV9WRVJTSU9OIiBdOyB0aGVuCisgICAgIyBObyBjdXJyZW50IHBhY2th
Z2VfdmVyc2lvbiBhbmQgbm8gZ2l0IC4uLgorICAgICMgV2UgcmVhbGx5IHNob3VsZG4ndCBldmVy
IGdldCBoZXJlLCBiZWNhdXNlIHRoaXMgc2NyaXB0IHNob3VsZCBvbmx5IGJlCisgICAgIyBpbmNs
dWRlZCBpbiB0aGUgZ2l0IHJlcG9zaXRvcnksIGFuZCBzaG91bGQgdXN1YWxseSBiZSBleHBvcnQt
aWdub3JlZC4KKyAgICBQQUNLQUdFX1ZFUlNJT049InVua25vd24iCitlbHNlCisgICAgZXhpdCAx
CitmaQorCitjYXQgPiAiJFNSQ0RJUi9wYWNrYWdlX3ZlcnNpb24iIDw8LUVPRgorCSMgQXV0b21h
dGljYWxseSBnZW5lcmF0ZWQgYnkgdXBkYXRlX3ZlcnNpb24uCisJIyBUaGlzIGZpbGUgbWF5IGJl
IHNvdXJjZWQgaW50byBhIHNoZWxsIHNjcmlwdCBvciBtYWtlZmlsZS4KKworCSMgU2V0IHRoaXMg
dG8gJ25vJyBpZiB5b3UgZG8gbm90IHdpc2ggdGhlIHZlcnNpb24gaW5mb3JtYXRpb24KKwkjIHRv
IGJlIGNoZWNrZWQgYW5kIHVwZGF0ZWQgZm9yIGV2ZXJ5IGJ1aWxkLiAgTW9zdCBwZW9wbGUgd2ls
bAorCSMgbmV2ZXIgd2FudCB0byBjaGFuZ2UgdGhpcywgaXQgaXMgYW4gb3B0aW9uIGZvciBkZXZl
bG9wZXJzCisJIyBtYWtpbmcgZnJlcXVlbnQgY2hhbmdlcyB0aGF0IHRoZXkga25vdyB3aWxsIG5v
dCBiZSByZWxlYXNlZC4KKwlBVVRPX1VQREFURT0kQVVUT19VUERBVEUKKworCVBBQ0tBR0VfVkVS
U0lPTj0iJFBBQ0tBR0VfVkVSU0lPTiIKK0VPRgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy93aW4zMi8uZ2l0aWdub3Jl
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy93aW4zMi8uZ2l0aWdub3JlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMxN2ZlYWI3M2QzNDkyY2U4NjYyZWU2OTU0
NmRlYzBkOWVlYmJkN2QKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3dpbjMyLy5naXRpZ25vcmUKQEAgLTAs
MCArMSwyNiBAQAorIyBWaXN1YWwgU3R1ZGlvIGlnbm9yZXMKK1tEZF1lYnVnLworW0RkXWVidWdE
TEwvCitbRGRdZWJ1Z0RMTF9maXhlZC8KK1tEZF1lYnVnUHVibGljLworW1JyXWVsZWFzZS8KK1tS
cl1lbGVhc2VETEwvCitbUnJdZWxlYXNlRExMX2ZpeGVkLworW1JyXWVsZWFzZXMvCisqLm1hbmlm
ZXN0CisqLmxhc3RidWlsZHN0YXRlCisqLmxpYgorKi5sb2cKKyouaWRiCisqLmlwZGIKKyouaWxr
CisqLmlvYmoKKyoub2JqCisqLm9wZW5zZGYKKyoucGRiCisqLnNkZgorKi5zdW8KKyoudGxvZwor
Ki52Y3hwcm9qLnVzZXIKKyoudmMuZGIKKyoudmMub3BlbmRiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3dpbjMyL2dl
bnZlcnNpb24uYmF0IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy93aW4zMi9nZW52ZXJzaW9uLmJhdAppbmRleCBjZDFkNGRjZTZlZDhmNTQ4
NmVlMzFhM2Y1YTE0ZGFiOGJjMDM4ZTBjLi4xZGVmNzQ2MGI1ZTAyZmExODk5OGE1N2UwZTBlZmM1
YWIzMTM0ZWQ1IDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3dpbjMyL2dlbnZlcnNpb24uYmF0CisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvd2luMzIvZ2Vu
dmVyc2lvbi5iYXQKQEAgLTIsMTMgKzIsMTMgQEAKIAogc2V0bG9jYWwgZW5hYmxlZXh0ZW5zaW9u
cyBlbmFibGVkZWxheWVkZXhwYW5zaW9uCiAKLWZvciAvZiAlJXYgaW4gKCdnaXQgLS1naXQtZGly
PSIlfmRwMC4uXC5naXQiIGRlc2NyaWJlIC0tdGFncyAtLW1hdGNoICJ2KiInKSBkbyBzZXQgdmVy
c2lvbj0lJXYKK2ZvciAvZiAlJXYgaW4gKCdjZCAiJX5kcDAuLiIgXiZeJiBnaXQgc3RhdHVzIF4+
TlVMIDJePk5VTCBeJl4mIGdpdCBkZXNjcmliZSAtLXRhZ3MgLS1tYXRjaCAidioiIC0tZGlydHkg
Ml4+TlVMJykgZG8gc2V0IHZlcnNpb249JSV2CiAKLWlmIG5vdCAiJXZlcnNpb24lIj09IiIgZ290
byA6Z290dmVyc2lvbgoraWYgbm90ICIldmVyc2lvbiUiPT0iIiBzZXQgdmVyc2lvbj0hdmVyc2lv
bjp+MSEgJiYgZ290byA6Z290dmVyc2lvbgogCi1pZiBleGlzdCAiJX5kcDAuLlx2ZXJzaW9uLm1r
IiBnb3RvIDpnZXR2ZXJzaW9uCitpZiBleGlzdCAiJX5kcDAuLlxwYWNrYWdlX3ZlcnNpb24iIGdv
dG8gOmdldHZlcnNpb24KIAotZWNobyBHaXQgY2Fubm90IGJlIGZvdW5kLCBub3IgY2FuIHZlcnNp
b24ubWsuIEdlbmVyYXRpbmcgdW5rbm93biB2ZXJzaW9uLgorZWNobyBHaXQgY2Fubm90IGJlIGZv
dW5kLCBub3IgY2FuIHBhY2thZ2VfdmVyc2lvbi4gR2VuZXJhdGluZyB1bmtub3duIHZlcnNpb24u
CiAKIHNldCB2ZXJzaW9uPXVua25vd24KIApAQCAtMTYsMjUgKzE2LDE2IEBAIGdvdG8gOmdvdHZl
cnNpb24KIAogOmdldHZlcnNpb24KIAotZm9yIC9mICJkZWxpbXM9PSB0b2tlbnM9MiIgJSV2IGlu
ICglfmRwczAuLlx2ZXJzaW9uLm1rKSBkbyBzZXQgdmVyc2lvbj0lJXYKLQotc2V0IHZlcnNpb249
IXZlcnNpb246XiI9IQotc2V0IHZlcnNpb249IXZlcnNpb246ID0hCitmb3IgL2YgImRlbGltcz09
IHRva2Vucz0yIiAlJXYgaW4gKCV+ZHBzMC4uXHBhY2thZ2VfdmVyc2lvbikgZG8gc2V0IHZlcnNp
b249JSV2CitzZXQgdmVyc2lvbj0hdmVyc2lvbjoiPSEKIAogOmdvdHZlcnNpb24KIAorc2V0IHZl
cnNpb249IXZlcnNpb246ID0hCiBzZXQgdmVyc2lvbl9vdXQ9I2RlZmluZSAlfjIgIiV2ZXJzaW9u
JSIKLXNldCB2ZXJzaW9uX21rPSV+MiA9ICIldmVyc2lvbiUiCiAKIGVjaG8gJXZlcnNpb25fb3V0
JT4gIiV+MV90ZW1wIgogCi1pZiAldmVyc2lvbiU9PXVua25vd24gZ290byA6c2tpcGdlbmVyYXRl
Ci0KLWVjaG8gIyBzdGF0aWMgdmVyc2lvbiBzdHJpbmc7IHVwZGF0ZSBtYW51YWxseSBldmVyeSBy
ZWxlYXNlLj4gIiV+ZHAwLi5cdmVyc2lvbi5tayIKLWVjaG8gJXZlcnNpb25fbWslPj4gIiV+ZHAw
Li5cdmVyc2lvbi5tayIKLQotOnNraXBnZW5lcmF0ZQotCiBlY2hvIG4gfCBjb21wICIlfjFfdGVt
cCIgIiV+MSIgPiBOVUwgMj4gTlVMCiAKIGlmIG5vdCBlcnJvcmxldmVsIDEgZ290byBleGl0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvbGlid2VicnRjLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvbGlid2VicnRj
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggM2VjZjVhNjE0ZDNlMDAwNWFmMzg0NzZm
NzU3NjQxNzQ5OGEwY2FjMi4uNzc3MDc4MjZkNmY1MGUzMzUzNjI5YWMwZWI2ODVjZjA0Yzk4M2Vm
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndlYnJ0Yy54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9s
aWJ3ZWJydGMueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNTM1LDYgKzUzNSw4IEBACiAJ
CTQxNEQ3MTE0MUU0QUU5OEMwMDIzRTUyNiAvKiB1c2VyX3NvY2tldC5jIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE0RDcxMTIxRTRBRTk4MjAwMjNFNTI2
IC8qIHVzZXJfc29ja2V0LmMgKi87IH07CiAJCTQxNEQ3MTE3MUU0QUVBRkIwMDIzRTUyNiAvKiBz
Y3RwX2luZGF0YS5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNDE0RDcxMTUxRTRBRUFDRDAwMjNFNTI2IC8qIHNjdHBfaW5kYXRhLmMgKi87IH07CiAJCTQx
NEQ3MTE5MUU0QUVCMTEwMDIzRTUyNiAvKiBzY3RwX3VzZXJzcGFjZS5jIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE0RDcxMTgxRTRBRUIxMTAwMjNFNTI2
IC8qIHNjdHBfdXNlcnNwYWNlLmMgKi87IH07CisJCTQxNTNDRDI3MjFDQzY2MTAwMEMzRTE4OCAv
KiBMUENfZml0LmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0MTAwQ0RFNTIxQ0FDRkQwMDBGOUI4N0QgLyogTFBDX2ZpdC5jICovOyB9OworCQk0MTUzQ0Qy
ODIxQ0M2NjQ4MDBDM0UxODggLyogdnFfc3NlMi5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDEwMENERUQyMUNBRDFGNTAwRjlCODdEIC8qIHZxX3NzZTIu
YyAqLzsgfTsKIAkJNDE1RjFGQTYyMTI3MkZCQTAwMDY0Q0JGIC8qIGFkYXB0aXZlX2RpZ2l0YWxf
Z2Fpbl9hcHBsaWVyLmNjIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDFBMDhCRTQyMTI3MkY4NTAwMUQ1RDdCIC8qIGFkYXB0aXZlX2RpZ2l0YWxfZ2Fpbl9h
cHBsaWVyLmNjICovOyB9OwogCQk0MTVGMUZBNzIxMjcyRkJBMDAwNjRDQkYgLyogYWRhcHRpdmVf
ZGlnaXRhbF9nYWluX2FwcGxpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDQxQTA4QkRCMjEyNzJGODQwMDFENUQ3QiAvKiBhZGFwdGl2ZV9kaWdpdGFs
X2dhaW5fYXBwbGllci5oICovOyB9OwogCQk0MTVGMUZBODIxMjcyRkJBMDAwNjRDQkYgLyogYWRh
cHRpdmVfbW9kZV9sZXZlbF9lc3RpbWF0b3JfYWdjLmNjIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDFBMDhCRTkyMTI3MkY4NjAwMUQ1RDdCIC8qIGFkYXB0
aXZlX21vZGVfbGV2ZWxfZXN0aW1hdG9yX2FnYy5jYyAqLzsgfTsKQEAgLTMyNDYsNyArMzI0OCw2
IEBACiAJCTVDREQ4RUVBMUU0M0M5RjYwMDYyMUU5MiAvKiBmaW5kX3ByZWRfY29lZnNfRkxQLmMg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVBNjFF
NDNDOUMxMDA2MjFFOTIgLyogZmluZF9wcmVkX2NvZWZzX0ZMUC5jICovOyB9OwogCQk1Q0REOEVF
QjFFNDNDOUY2MDA2MjFFOTIgLyogaW5uZXJfcHJvZHVjdF9GTFAuYyBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUE3MUU0M0M5QzEwMDYyMUU5MiAv
KiBpbm5lcl9wcm9kdWN0X0ZMUC5jICovOyB9OwogCQk1Q0REOEVFQzFFNDNDOUY2MDA2MjFFOTIg
LyogazJhX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNUNERDhFQTgxRTQzQzlDMTAwNjIxRTkyIC8qIGsyYV9GTFAuYyAqLzsgfTsKLQkJNUNERDhF
RUQxRTQzQzlGNjAwNjIxRTkyIC8qIGxldmluc29uZHVyYmluX0ZMUC5jIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQTkxRTQzQzlDMTAwNjIxRTky
IC8qIGxldmluc29uZHVyYmluX0ZMUC5jICovOyB9OwogCQk1Q0REOEVFRTFFNDNDOUY2MDA2MjFF
OTIgLyogTFBDX2FuYWx5c2lzX2ZpbHRlcl9GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUFBMUU0M0M5QzEwMDYyMUU5MiAvKiBMUENfYW5h
bHlzaXNfZmlsdGVyX0ZMUC5jICovOyB9OwogCQk1Q0REOEVFRjFFNDNDOUY2MDA2MjFFOTIgLyog
TFBDX2ludl9wcmVkX2dhaW5fRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1Q0REOEVBQjFFNDNDOUMxMDA2MjFFOTIgLyogTFBDX2ludl9wcmVkX2dh
aW5fRkxQLmMgKi87IH07CiAJCTVDREQ4RUYwMUU0M0M5RjYwMDYyMUU5MiAvKiBMVFBfYW5hbHlz
aXNfZmlsdGVyX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNUNERDhFQUMxRTQzQzlDMTAwNjIxRTkyIC8qIExUUF9hbmFseXNpc19maWx0ZXJfRkxQ
LmMgKi87IH07CkBAIC0zMjU0LDcgKzMyNTUsNiBAQAogCQk1Q0REOEVGMjFFNDNDOUY2MDA2MjFF
OTIgLyogbWFpbl9GTFAuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDVDREQ4RUFFMUU0M0M5QzEwMDYyMUU5MiAvKiBtYWluX0ZMUC5oICovOyB9OwogCQk1
Q0REOEVGMzFFNDNDOUY2MDA2MjFFOTIgLyogbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQLmMgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVBRjFFNDND
OUMxMDA2MjFFOTIgLyogbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQLmMgKi87IH07CiAJCTVDREQ4
RUY0MUU0M0M5RjYwMDYyMUU5MiAvKiBwaXRjaF9hbmFseXNpc19jb3JlX0ZMUC5jIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQjAxRTQzQzlDMTAw
NjIxRTkyIC8qIHBpdGNoX2FuYWx5c2lzX2NvcmVfRkxQLmMgKi87IH07Ci0JCTVDREQ4RUY1MUU0
M0M5RjYwMDYyMUU5MiAvKiBwcmVmaWx0ZXJfRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVCMTFFNDNDOUMxMDA2MjFFOTIgLyogcHJlZmls
dGVyX0ZMUC5jICovOyB9OwogCQk1Q0REOEVGNjFFNDNDOUY2MDA2MjFFOTIgLyogcHJvY2Vzc19n
YWluc19GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDVDREQ4RUIyMUU0M0M5QzEwMDYyMUU5MiAvKiBwcm9jZXNzX2dhaW5zX0ZMUC5jICovOyB9Owog
CQk1Q0REOEVGNzFFNDNDOUY2MDA2MjFFOTIgLyogcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRkxQ
LmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVC
MzFFNDNDOUMxMDA2MjFFOTIgLyogcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRkxQLmMgKi87IH07
CiAJCTVDREQ4RUY4MUU0M0M5RjYwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3lfRkxQLmMgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVCNDFFNDND
OUMxMDA2MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5X0ZMUC5jICovOyB9OwpAQCAtMzI2Miw3ICsz
MjYyLDYgQEAKIAkJNUNERDhFRkExRTQzQzlGNjAwNjIxRTkyIC8qIHNjYWxlX3ZlY3Rvcl9GTFAu
YyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUI2
MUU0M0M5QzEwMDYyMUU5MiAvKiBzY2FsZV92ZWN0b3JfRkxQLmMgKi87IH07CiAJCTVDREQ4RUZC
MUU0M0M5RjYwMDYyMUU5MiAvKiBzY2h1cl9GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUI3MUU0M0M5QzEwMDYyMUU5MiAvKiBzY2h1cl9G
TFAuYyAqLzsgfTsKIAkJNUNERDhFRkMxRTQzQzlGNjAwNjIxRTkyIC8qIFNpZ1Byb2NfRkxQLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVCODFF
NDNDOUMxMDA2MjFFOTIgLyogU2lnUHJvY19GTFAuaCAqLzsgfTsKLQkJNUNERDhFRkQxRTQzQzlG
NjAwNjIxRTkyIC8qIHNvbHZlX0xTX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQjkxRTQzQzlDMTAwNjIxRTkyIC8qIHNvbHZlX0xTX0ZM
UC5jICovOyB9OwogCQk1Q0REOEVGRTFFNDNDOUY2MDA2MjFFOTIgLyogc29ydF9GTFAuYyBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUJBMUU0M0M5
QzEwMDYyMUU5MiAvKiBzb3J0X0ZMUC5jICovOyB9OwogCQk1Q0REOEVGRjFFNDNDOUY2MDA2MjFF
OTIgLyogc3RydWN0c19GTFAuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDVDREQ4RUJCMUU0M0M5QzEwMDYyMUU5MiAvKiBzdHJ1Y3RzX0ZMUC5oICovOyB9
OwogCQk1Q0REOEYwMDFFNDNDOUY2MDA2MjFFOTIgLyogd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9G
TFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4
RUJDMUU0M0M5QzEwMDYyMUU5MiAvKiB3YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZMUC5jICovOyB9
OwpAQCAtMzI4MywxNCArMzI4MiwxMiBAQAogCQk1Q0REOEY0NzFFNDNDQjFFMDA2MjFFOTIgLyog
bWFpbl9GSVguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDVDREQ4RjEwMUU0M0NBRjkwMDYyMUU5MiAvKiBtYWluX0ZJWC5oICovOyB9OwogCQk1Q0REOEY0
ODFFNDNDQjFFMDA2MjFFOTIgLyogbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYLmMgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYxMjFFNDNDQUY5MDA2
MjFFOTIgLyogbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYLmMgKi87IH07CiAJCTVDREQ4RjQ5MUU0
M0NCMUUwMDYyMUU5MiAvKiBwaXRjaF9hbmFseXNpc19jb3JlX0ZJWC5jIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMTMxRTQzQ0FGOTAwNjIxRTky
IC8qIHBpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmMgKi87IH07Ci0JCTVDREQ4RjRBMUU0M0NCMUUw
MDYyMUU5MiAvKiBwcmVmaWx0ZXJfRklYLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYxNDFFNDNDQUY5MDA2MjFFOTIgLyogcHJlZmlsdGVyX0ZJ
WC5jICovOyB9OwogCQk1Q0REOEY0QjFFNDNDQjFFMDA2MjFFOTIgLyogcHJvY2Vzc19nYWluc19G
SVguYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4
RjE1MUU0M0NBRjkwMDYyMUU5MiAvKiBwcm9jZXNzX2dhaW5zX0ZJWC5jICovOyB9OwogCQk1Q0RE
OEY0QzFFNDNDQjFFMDA2MjFFOTIgLyogcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRklYLmMgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYxNjFFNDND
QUY5MDA2MjFFOTIgLyogcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRklYLmMgKi87IH07CiAJCTVD
REQ4RjREMUU0M0NCMUUwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3lfRklYLmMgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYxNzFFNDNDQUY5MDA2
MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5X0ZJWC5jICovOyB9OwogCQk1Q0REOEY0RTFFNDNDQjFF
MDA2MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5MTZfRklYLmMgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYxODFFNDNDQUY5MDA2MjFFOTIgLyogcmVz
aWR1YWxfZW5lcmd5MTZfRklYLmMgKi87IH07CiAJCTVDREQ4RjRGMUU0M0NCMUUwMDYyMUU5MiAv
KiBzY2h1cl9GSVguYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDVDREQ4RjE5MUU0M0NBRjkwMDYyMUU5MiAvKiBzY2h1cl9GSVguYyAqLzsgfTsKIAkJNUNE
RDhGNTAxRTQzQ0IxRTAwNjIxRTkyIC8qIHNjaHVyNjRfRklYLmMgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYxQTFFNDNDQUY5MDA2MjFFOTIgLyog
c2NodXI2NF9GSVguYyAqLzsgfTsKLQkJNUNERDhGNTExRTQzQ0IxRTAwNjIxRTkyIC8qIHNvbHZl
X0xTX0ZJWC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NUNERDhGMUIxRTQzQ0FGOTAwNjIxRTkyIC8qIHNvbHZlX0xTX0ZJWC5jICovOyB9OwogCQk1Q0RE
OEY1MjFFNDNDQjFFMDA2MjFFOTIgLyogc3RydWN0c19GSVguaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RjFDMUU0M0NBRjkwMDYyMUU5MiAvKiBz
dHJ1Y3RzX0ZJWC5oICovOyB9OwogCQk1Q0REOEY1MzFFNDNDQjFFMDA2MjFFOTIgLyogdmVjdG9y
X29wc19GSVguYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDVDREQ4RjFEMUU0M0NBRjkwMDYyMUU5MiAvKiB2ZWN0b3Jfb3BzX0ZJWC5jICovOyB9OwogCQk1
Q0REOEY1NDFFNDNDQjFFMDA2MjFFOTIgLyogd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYyBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RjFFMUU0
M0NBRjkwMDYyMUU5MiAvKiB3YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jICovOyB9OwpAQCAt
MzY1NSw2ICszNjUyLDE1IEBACiAvKiBCZWdpbiBQQlhGaWxlUmVmZXJlbmNlIHNlY3Rpb24gKi8K
IAkJMzcxMTlBODAyMENDQjZERDAwMkM2REM5IC8qIFZlcnNpb24ueGNjb25maWcgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnhjY29uZmlnOyBw
YXRoID0gVmVyc2lvbi54Y2NvbmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzcx
MTlBODEyMENDQjZERDAwMkM2REM5IC8qIFdlYktpdFRhcmdldENvbmRpdGlvbmFscy54Y2NvbmZp
ZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQu
eGNjb25maWc7IHBhdGggPSBXZWJLaXRUYXJnZXRDb25kaXRpb25hbHMueGNjb25maWc7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMDBDREU1MjFDQUNGRDAwMEY5Qjg3RCAvKiBMUENf
Zml0LmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IExQQ19maXQuYzsgcGF0aCA9
IHNpbGsvTFBDX2ZpdC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTAwQ0RFODIx
Q0FEMDMzMDBGOUI4N0QgLyogdnFfc3NlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IHZxX3NzZS5oOyBwYXRoID0geDg2L3ZxX3NzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0MTAwQ0RFQjIxQ0FEMUY1MDBGOUI4N0QgLyogcGl0Y2hfc3NlNF8xLmMgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHBpdGNoX3NzZTRfMS5jOyBwYXRoID0geDg2L3Bp
dGNoX3NzZTRfMS5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTAwQ0RFQzIxQ0FE
MUY1MDBGOUI4N0QgLyogY2VsdF9scGNfc3NlLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsg
bmFtZSA9IGNlbHRfbHBjX3NzZS5jOyBwYXRoID0geDg2L2NlbHRfbHBjX3NzZS5jOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MTAwQ0RFRDIxQ0FEMUY1MDBGOUI4N0QgLyogdnFfc3Nl
Mi5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSB2cV9zc2UyLmM7IHBhdGggPSB4
ODYvdnFfc3NlMi5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTAwQ0RFRTIxQ0FE
MUY2MDBGOUI4N0QgLyogcGl0Y2hfc3NlLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFt
ZSA9IHBpdGNoX3NzZS5jOyBwYXRoID0geDg2L3BpdGNoX3NzZS5jOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0MTAwQ0RFRjIxQ0FEMUY2MDBGOUI4N0QgLyogcGl0Y2hfc3NlMi5jICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBwaXRjaF9zc2UyLmM7IHBhdGggPSB4ODYv
cGl0Y2hfc3NlMi5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTAwQ0RGMDIxQ0FE
MUY2MDBGOUI4N0QgLyogY2VsdF9scGNfc3NlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
bmFtZSA9IGNlbHRfbHBjX3NzZS5oOyBwYXRoID0geDg2L2NlbHRfbHBjX3NzZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MTAwQ0RGMTIxQ0FEMUY3MDBGOUI4N0QgLyogcGl0Y2hf
c3NlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IHBpdGNoX3NzZS5oOyBwYXRo
ID0geDg2L3BpdGNoX3NzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTAyRjY4
NDIxMjczMjA0MDA2QUU4RDcgLyogcnRjc3RhdHN0cmF2ZXJzYWwuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gcnRjc3RhdHN0cmF2ZXJzYWwuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNDEwMkY2ODUyMTI3MzIwNDAwNkFFOEQ3IC8qIGpzZXB0cmFuc3BvcnRjb250
cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IGpzZXB0cmFuc3BvcnRj
b250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMDJGNjg2MjEyNzMy
MDUwMDZBRThENyAvKiB0cmFuc3BvcnRzdGF0cy5jYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IHRyYW5zcG9ydHN0YXRzLmNjOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtNzE1OSw3ICs3MTY1LDYgQEAKIAkJNUNERDhFQTYxRTQzQzlDMTAwNjIxRTkyIC8qIGZp
bmRfcHJlZF9jb2Vmc19GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gZmlu
ZF9wcmVkX2NvZWZzX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9maW5kX3ByZWRfY29lZnNfRkxQ
LmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUE3MUU0M0M5QzEwMDYyMUU5
MiAvKiBpbm5lcl9wcm9kdWN0X0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUg
PSBpbm5lcl9wcm9kdWN0X0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9pbm5lcl9wcm9kdWN0X0ZM
UC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVBODFFNDNDOUMxMDA2MjFF
OTIgLyogazJhX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBrMmFfRkxQ
LmM7IHBhdGggPSBzaWxrL2Zsb2F0L2syYV9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKLQkJNUNERDhFQTkxRTQzQzlDMTAwNjIxRTkyIC8qIGxldmluc29uZHVyYmluX0ZMUC5jICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBsZXZpbnNvbmR1cmJpbl9GTFAuYzsgcGF0
aCA9IHNpbGsvZmxvYXQvbGV2aW5zb25kdXJiaW5fRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTVDREQ4RUFBMUU0M0M5QzEwMDYyMUU5MiAvKiBMUENfYW5hbHlzaXNfZmlsdGVy
X0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBMUENfYW5hbHlzaXNfZmls
dGVyX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9MUENfYW5hbHlzaXNfZmlsdGVyX0ZMUC5jOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVBQjFFNDNDOUMxMDA2MjFFOTIgLyog
TFBDX2ludl9wcmVkX2dhaW5fRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9
IExQQ19pbnZfcHJlZF9nYWluX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9MUENfaW52X3ByZWRf
Z2Fpbl9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQUMxRTQzQzlD
MTAwNjIxRTkyIC8qIExUUF9hbmFseXNpc19maWx0ZXJfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuYzsgbmFtZSA9IExUUF9hbmFseXNpc19maWx0ZXJfRkxQLmM7IHBhdGggPSBzaWxrL2Zs
b2F0L0xUUF9hbmFseXNpc19maWx0ZXJfRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC03MTY3LDcgKzcxNzIsNiBAQAogCQk1Q0REOEVBRTFFNDNDOUMxMDA2MjFFOTIgLyogbWFp
bl9GTFAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gbWFpbl9GTFAuaDsgcGF0
aCA9IHNpbGsvZmxvYXQvbWFpbl9GTFAuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NUNERDhFQUYxRTQzQzlDMTAwNjIxRTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBub2lzZV9zaGFwZV9hbmFseXNpc19GTFAu
YzsgcGF0aCA9IHNpbGsvZmxvYXQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQLmM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUIwMUU0M0M5QzEwMDYyMUU5MiAvKiBwaXRjaF9h
bmFseXNpc19jb3JlX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBwaXRj
aF9hbmFseXNpc19jb3JlX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9waXRjaF9hbmFseXNpc19j
b3JlX0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1Q0REOEVCMTFFNDNDOUMx
MDA2MjFFOTIgLyogcHJlZmlsdGVyX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5h
bWUgPSBwcmVmaWx0ZXJfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L3ByZWZpbHRlcl9GTFAuYzsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQjIxRTQzQzlDMTAwNjIxRTkyIC8q
IHByb2Nlc3NfZ2FpbnNfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHBy
b2Nlc3NfZ2FpbnNfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L3Byb2Nlc3NfZ2FpbnNfRkxQLmM7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUIzMUU0M0M5QzEwMDYyMUU5MiAv
KiByZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5j
OyBuYW1lID0gcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0
L3JlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1Q0REOEVCNDFFNDNDOUMxMDA2MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5X0ZMUC5jICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSByZXNpZHVhbF9lbmVyZ3lfRkxQLmM7IHBh
dGggPSBzaWxrL2Zsb2F0L3Jlc2lkdWFsX2VuZXJneV9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTcxNzUsNyArNzE3OSw2IEBACiAJCTVDREQ4RUI2MUU0M0M5QzEwMDYyMUU5
MiAvKiBzY2FsZV92ZWN0b3JfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9
IHNjYWxlX3ZlY3Rvcl9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvc2NhbGVfdmVjdG9yX0ZMUC5j
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVCNzFFNDNDOUMxMDA2MjFFOTIg
Lyogc2NodXJfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHNjaHVyX0ZM
UC5jOyBwYXRoID0gc2lsay9mbG9hdC9zY2h1cl9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNUNERDhFQjgxRTQzQzlDMTAwNjIxRTkyIC8qIFNpZ1Byb2NfRkxQLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFNpZ1Byb2NfRkxQLmg7IHBhdGggPSBzaWxrL2Zs
b2F0L1NpZ1Byb2NfRkxQLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTVDREQ4RUI5
MUU0M0M5QzEwMDYyMUU5MiAvKiBzb2x2ZV9MU19GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5jOyBuYW1lID0gc29sdmVfTFNfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L3NvbHZlX0xTX0ZM
UC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVCQTFFNDNDOUMxMDA2MjFF
OTIgLyogc29ydF9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gc29ydF9G
TFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvc29ydF9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNUNERDhFQkIxRTQzQzlDMTAwNjIxRTkyIC8qIHN0cnVjdHNfRkxQLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IHN0cnVjdHNfRkxQLmg7IHBhdGggPSBzaWxrL2Zs
b2F0L3N0cnVjdHNfRkxQLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUJD
MUU0M0M5QzEwMDYyMUU5MiAvKiB3YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZMUC5jICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSB3YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZMUC5jOyBw
YXRoID0gc2lsay9mbG9hdC93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZMUC5jOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtNzE5NiwxNCArNzE5OSwxMiBAQAogCQk1Q0REOEYxMDFFNDND
QUY5MDA2MjFFOTIgLyogbWFpbl9GSVguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1l
ID0gbWFpbl9GSVguaDsgcGF0aCA9IHNpbGsvZml4ZWQvbWFpbl9GSVguaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMTIxRTQzQ0FGOTAwNjIxRTkyIC8qIG5vaXNlX3NoYXBl
X2FuYWx5c2lzX0ZJWC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBub2lzZV9z
aGFwZV9hbmFseXNpc19GSVguYzsgcGF0aCA9IHNpbGsvZml4ZWQvbm9pc2Vfc2hhcGVfYW5hbHlz
aXNfRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjEzMUU0M0NBRjkw
MDYyMUU5MiAvKiBwaXRjaF9hbmFseXNpc19jb3JlX0ZJWC5jICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmM7IG5hbWUgPSBwaXRjaF9hbmFseXNpc19jb3JlX0ZJWC5jOyBwYXRoID0gc2lsay9maXhl
ZC9waXRjaF9hbmFseXNpc19jb3JlX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk1Q0REOEYxNDFFNDNDQUY5MDA2MjFFOTIgLyogcHJlZmlsdGVyX0ZJWC5jICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmM7IG5hbWUgPSBwcmVmaWx0ZXJfRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVk
L3ByZWZpbHRlcl9GSVguYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMTUx
RTQzQ0FGOTAwNjIxRTkyIC8qIHByb2Nlc3NfZ2FpbnNfRklYLmMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuYzsgbmFtZSA9IHByb2Nlc3NfZ2FpbnNfRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVkL3By
b2Nlc3NfZ2FpbnNfRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjE2
MUU0M0NBRjkwMDYyMUU5MiAvKiByZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GSVguYyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRklYLmM7
IHBhdGggPSBzaWxrL2ZpeGVkL3JlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZJWC5jOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEYxNzFFNDNDQUY5MDA2MjFFOTIgLyogcmVzaWR1
YWxfZW5lcmd5X0ZJWC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSByZXNpZHVh
bF9lbmVyZ3lfRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVkL3Jlc2lkdWFsX2VuZXJneV9GSVguYzsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMTgxRTQzQ0FGOTAwNjIxRTkyIC8q
IHJlc2lkdWFsX2VuZXJneTE2X0ZJWC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUg
PSByZXNpZHVhbF9lbmVyZ3kxNl9GSVguYzsgcGF0aCA9IHNpbGsvZml4ZWQvcmVzaWR1YWxfZW5l
cmd5MTZfRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjE5MUU0M0NB
RjkwMDYyMUU5MiAvKiBzY2h1cl9GSVguYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1l
ID0gc2NodXJfRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVkL3NjaHVyX0ZJWC5jOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEYxQTFFNDNDQUY5MDA2MjFFOTIgLyogc2NodXI2NF9G
SVguYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gc2NodXI2NF9GSVguYzsgcGF0
aCA9IHNpbGsvZml4ZWQvc2NodXI2NF9GSVguYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJNUNERDhGMUIxRTQzQ0FGOTAwNjIxRTkyIC8qIHNvbHZlX0xTX0ZJWC5jICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmM7IG5hbWUgPSBzb2x2ZV9MU19GSVguYzsgcGF0aCA9IHNpbGsvZml4ZWQv
c29sdmVfTFNfRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjFDMUU0
M0NBRjkwMDYyMUU5MiAvKiBzdHJ1Y3RzX0ZJWC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSBzdHJ1Y3RzX0ZJWC5oOyBwYXRoID0gc2lsay9maXhlZC9zdHJ1Y3RzX0ZJWC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEYxRDFFNDNDQUY5MDA2MjFFOTIgLyog
dmVjdG9yX29wc19GSVguYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gdmVjdG9y
X29wc19GSVguYzsgcGF0aCA9IHNpbGsvZml4ZWQvdmVjdG9yX29wc19GSVguYzsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMUUxRTQzQ0FGOTAwNjIxRTkyIC8qIHdhcnBlZF9h
dXRvY29ycmVsYXRpb25fRklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHdh
cnBlZF9hdXRvY29ycmVsYXRpb25fRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVkL3dhcnBlZF9hdXRv
Y29ycmVsYXRpb25fRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMzAzMyw2
ICsxMzAzNCwxNCBAQAogCQk1Q0REOEQxMzFFNDNDNzU1MDA2MjFFOTIgLyogeDg2ICovID0gewog
CQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQk0MTAwQ0RFQzIxQ0FEMUY1
MDBGOUI4N0QgLyogY2VsdF9scGNfc3NlLmMgKi8sCisJCQkJNDEwMENERjAyMUNBRDFGNjAwRjlC
ODdEIC8qIGNlbHRfbHBjX3NzZS5oICovLAorCQkJCTQxMDBDREVFMjFDQUQxRjYwMEY5Qjg3RCAv
KiBwaXRjaF9zc2UuYyAqLywKKwkJCQk0MTAwQ0RGMTIxQ0FEMUY3MDBGOUI4N0QgLyogcGl0Y2hf
c3NlLmggKi8sCisJCQkJNDEwMENERUYyMUNBRDFGNjAwRjlCODdEIC8qIHBpdGNoX3NzZTIuYyAq
LywKKwkJCQk0MTAwQ0RFQjIxQ0FEMUY1MDBGOUI4N0QgLyogcGl0Y2hfc3NlNF8xLmMgKi8sCisJ
CQkJNDEwMENERTgyMUNBRDAzMzAwRjlCODdEIC8qIHZxX3NzZS5oICovLAorCQkJCTQxMDBDREVE
MjFDQUQxRjUwMEY5Qjg3RCAvKiB2cV9zc2UyLmMgKi8sCiAJCQkJNUNERDhEMUExRTQzQzc2NDAw
NjIxRTkyIC8qIHg4Nl9jZWx0X21hcC5jICovLAogCQkJCTVDREQ4RDFCMUU0M0M3NjQwMDYyMUU5
MiAvKiB4ODZjcHUuYyAqLywKIAkJCQk1Q0REOEQxQzFFNDNDNzY0MDA2MjFFOTIgLyogeDg2Y3B1
LmggKi8sCkBAIC0xMzA4NSw2ICsxMzA5NCw3IEBACiAJCQkJNUNERDhEODUxRTQzQzdEOTAwNjIx
RTkyIC8qIGxvZzJsaW4uYyAqLywKIAkJCQk1Q0REOEQ4NjFFNDNDN0Q5MDA2MjFFOTIgLyogTFBf
dmFyaWFibGVfY3V0b2ZmLmMgKi8sCiAJCQkJNUNERDhEODcxRTQzQzdEOTAwNjIxRTkyIC8qIExQ
Q19hbmFseXNpc19maWx0ZXIuYyAqLywKKwkJCQk0MTAwQ0RFNTIxQ0FDRkQwMDBGOUI4N0QgLyog
TFBDX2ZpdC5jICovLAogCQkJCTVDREQ4RDg4MUU0M0M3RDkwMDYyMUU5MiAvKiBMUENfaW52X3By
ZWRfZ2Fpbi5jICovLAogCQkJCTVDREQ4RDg5MUU0M0M3RDkwMDYyMUU5MiAvKiBNYWNyb0NvdW50
LmggKi8sCiAJCQkJNUNERDhEOEExRTQzQzdEOTAwNjIxRTkyIC8qIE1hY3JvRGVidWcuaCAqLywK
QEAgLTEzMTc3LDcgKzEzMTg3LDYgQEAKIAkJCQk1Q0REOEVBNjFFNDNDOUMxMDA2MjFFOTIgLyog
ZmluZF9wcmVkX2NvZWZzX0ZMUC5jICovLAogCQkJCTVDREQ4RUE3MUU0M0M5QzEwMDYyMUU5MiAv
KiBpbm5lcl9wcm9kdWN0X0ZMUC5jICovLAogCQkJCTVDREQ4RUE4MUU0M0M5QzEwMDYyMUU5MiAv
KiBrMmFfRkxQLmMgKi8sCi0JCQkJNUNERDhFQTkxRTQzQzlDMTAwNjIxRTkyIC8qIGxldmluc29u
ZHVyYmluX0ZMUC5jICovLAogCQkJCTVDREQ4RUFBMUU0M0M5QzEwMDYyMUU5MiAvKiBMUENfYW5h
bHlzaXNfZmlsdGVyX0ZMUC5jICovLAogCQkJCTVDREQ4RUFCMUU0M0M5QzEwMDYyMUU5MiAvKiBM
UENfaW52X3ByZWRfZ2Fpbl9GTFAuYyAqLywKIAkJCQk1Q0REOEVBQzFFNDNDOUMxMDA2MjFFOTIg
LyogTFRQX2FuYWx5c2lzX2ZpbHRlcl9GTFAuYyAqLywKQEAgLTEzMTg1LDcgKzEzMTk0LDYgQEAK
IAkJCQk1Q0REOEVBRTFFNDNDOUMxMDA2MjFFOTIgLyogbWFpbl9GTFAuaCAqLywKIAkJCQk1Q0RE
OEVBRjFFNDNDOUMxMDA2MjFFOTIgLyogbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQLmMgKi8sCiAJ
CQkJNUNERDhFQjAxRTQzQzlDMTAwNjIxRTkyIC8qIHBpdGNoX2FuYWx5c2lzX2NvcmVfRkxQLmMg
Ki8sCi0JCQkJNUNERDhFQjExRTQzQzlDMTAwNjIxRTkyIC8qIHByZWZpbHRlcl9GTFAuYyAqLywK
IAkJCQk1Q0REOEVCMjFFNDNDOUMxMDA2MjFFOTIgLyogcHJvY2Vzc19nYWluc19GTFAuYyAqLywK
IAkJCQk1Q0REOEVCMzFFNDNDOUMxMDA2MjFFOTIgLyogcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNf
RkxQLmMgKi8sCiAJCQkJNUNERDhFQjQxRTQzQzlDMTAwNjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJn
eV9GTFAuYyAqLywKQEAgLTEzMTkzLDcgKzEzMjAxLDYgQEAKIAkJCQk1Q0REOEVCNjFFNDNDOUMx
MDA2MjFFOTIgLyogc2NhbGVfdmVjdG9yX0ZMUC5jICovLAogCQkJCTVDREQ4RUI3MUU0M0M5QzEw
MDYyMUU5MiAvKiBzY2h1cl9GTFAuYyAqLywKIAkJCQk1Q0REOEVCODFFNDNDOUMxMDA2MjFFOTIg
LyogU2lnUHJvY19GTFAuaCAqLywKLQkJCQk1Q0REOEVCOTFFNDNDOUMxMDA2MjFFOTIgLyogc29s
dmVfTFNfRkxQLmMgKi8sCiAJCQkJNUNERDhFQkExRTQzQzlDMTAwNjIxRTkyIC8qIHNvcnRfRkxQ
LmMgKi8sCiAJCQkJNUNERDhFQkIxRTQzQzlDMTAwNjIxRTkyIC8qIHN0cnVjdHNfRkxQLmggKi8s
CiAJCQkJNUNERDhFQkMxRTQzQzlDMTAwNjIxRTkyIC8qIHdhcnBlZF9hdXRvY29ycmVsYXRpb25f
RkxQLmMgKi8sCkBAIC0xMzIyMSwxNCArMTMyMjgsMTIgQEAKIAkJCQk1Q0REOEYxMDFFNDNDQUY5
MDA2MjFFOTIgLyogbWFpbl9GSVguaCAqLywKIAkJCQk1Q0REOEYxMjFFNDNDQUY5MDA2MjFFOTIg
Lyogbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYLmMgKi8sCiAJCQkJNUNERDhGMTMxRTQzQ0FGOTAw
NjIxRTkyIC8qIHBpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmMgKi8sCi0JCQkJNUNERDhGMTQxRTQz
Q0FGOTAwNjIxRTkyIC8qIHByZWZpbHRlcl9GSVguYyAqLywKIAkJCQk1Q0REOEYxNTFFNDNDQUY5
MDA2MjFFOTIgLyogcHJvY2Vzc19nYWluc19GSVguYyAqLywKIAkJCQk1Q0REOEYxNjFFNDNDQUY5
MDA2MjFFOTIgLyogcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRklYLmMgKi8sCiAJCQkJNUNERDhG
MTgxRTQzQ0FGOTAwNjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJneTE2X0ZJWC5jICovLAogCQkJCTVD
REQ4RjE3MUU0M0NBRjkwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3lfRklYLmMgKi8sCiAJCQkJ
NUNERDhGMUExRTQzQ0FGOTAwNjIxRTkyIC8qIHNjaHVyNjRfRklYLmMgKi8sCiAJCQkJNUNERDhG
MTkxRTQzQ0FGOTAwNjIxRTkyIC8qIHNjaHVyX0ZJWC5jICovLAotCQkJCTVDREQ4RjFCMUU0M0NB
RjkwMDYyMUU5MiAvKiBzb2x2ZV9MU19GSVguYyAqLywKIAkJCQk1Q0REOEYxQzFFNDNDQUY5MDA2
MjFFOTIgLyogc3RydWN0c19GSVguaCAqLywKIAkJCQk1Q0REOEYxRDFFNDNDQUY5MDA2MjFFOTIg
LyogdmVjdG9yX29wc19GSVguYyAqLywKIAkJCQk1Q0REOEYxRTFFNDNDQUY5MDA2MjFFOTIgLyog
d2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYyAqLywKQEAgLTE1NzEzLDggKzE1NzE4LDggQEAK
IAkJCQk1QzA4OEMxQzFFNEFBNDQ0MDA0MDM5OTUgLyogbWVkaWFzZXNzaW9uLmNjIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNUMwODhDMUUxRTRBQTQ0NDAwNDAzOTk1IC8qIHJ0Y3BtdXhmaWx0ZXIuY2Mg
aW4gU291cmNlcyAqLywKIAkJCQk1QzA4OEMyMDFFNEFBNDQ0MDA0MDM5OTUgLyogc3J0cGZpbHRl
ci5jYyBpbiBTb3VyY2VzICovLAotCQkJCTQxMjM5QjREMjE0Nzc0M0EwMDM5NkY4MSAvKiB2aWRl
b19zdHJlYW1fZW5jb2Rlcl9jcmVhdGUuY2MgaW4gU291cmNlcyAqLywKIAkJCQk0MTAwQ0RGOTIx
Q0FFMzM0MDBGOUI4N0QgLyogc3J0cHNlc3Npb24uY2MgaW4gU291cmNlcyAqLywKKwkJCQk0MTIz
OUI0RDIxNDc3NDNBMDAzOTZGODEgLyogdmlkZW9fc3RyZWFtX2VuY29kZXJfY3JlYXRlLmNjIGlu
IFNvdXJjZXMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2lu
ZyA9IDA7CiAJCX07CkBAIC0xNTgxNyw3ICsxNTgyMiw2IEBACiAJCQkJNUNERDhGNDQxRTQzQ0Ix
RTAwNjIxRTkyIC8qIGsyYV9RMTZfRklYLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEQ0NjFF
NDNDNzlDMDA2MjFFOTIgLyoga2lzc19mZnQuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RDQ4
MUU0M0M3OUMwMDYyMUU5MiAvKiBsYXBsYWNlLmMgaW4gU291cmNlcyAqLywKLQkJCQk1Q0REOEVF
RDFFNDNDOUY2MDA2MjFFOTIgLyogbGV2aW5zb25kdXJiaW5fRkxQLmMgaW4gU291cmNlcyAqLywK
IAkJCQk1Q0REOEU1RDFFNDNDODBDMDA2MjFFOTIgLyogbGluMmxvZy5jIGluIFNvdXJjZXMgKi8s
CiAJCQkJNUNERDhFNUUxRTQzQzgwQzAwNjIxRTkyIC8qIGxvZzJsaW4uYyBpbiBTb3VyY2VzICov
LAogCQkJCTVDREQ4RTVGMUU0M0M4MEMwMDYyMUU5MiAvKiBMUF92YXJpYWJsZV9jdXRvZmYuYyBp
biBTb3VyY2VzICovLApAQCAtMTU4NTksOCArMTU4NjMsNiBAQAogCQkJCTVDREQ4RUY0MUU0M0M5
RjYwMDYyMUU5MiAvKiBwaXRjaF9hbmFseXNpc19jb3JlX0ZMUC5jIGluIFNvdXJjZXMgKi8sCiAJ
CQkJNUNERDhFNzIxRTQzQzgwQzAwNjIxRTkyIC8qIHBpdGNoX2VzdF90YWJsZXMuYyBpbiBTb3Vy
Y2VzICovLAogCQkJCTVDREQ4RTczMUU0M0M4MEMwMDYyMUU5MiAvKiBQTEMuYyBpbiBTb3VyY2Vz
ICovLAotCQkJCTVDREQ4RjRBMUU0M0NCMUUwMDYyMUU5MiAvKiBwcmVmaWx0ZXJfRklYLmMgaW4g
U291cmNlcyAqLywKLQkJCQk1Q0REOEVGNTFFNDNDOUY2MDA2MjFFOTIgLyogcHJlZmlsdGVyX0ZM
UC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhGNEIxRTQzQ0IxRTAwNjIxRTkyIC8qIHByb2Nl
c3NfZ2FpbnNfRklYLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEVGNjFFNDNDOUY2MDA2MjFF
OTIgLyogcHJvY2Vzc19nYWluc19GTFAuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTc1MUU0
M0M4MEMwMDYyMUU5MiAvKiBwcm9jZXNzX05MU0ZzLmMgaW4gU291cmNlcyAqLywKQEAgLTE1ODc2
LDYgKzE1ODc4LDcgQEAKIAkJCQk1Q0REOEU3OTFFNDNDODBDMDA2MjFFOTIgLyogcmVzYW1wbGVy
X3ByaXZhdGVfQVIyLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEU3QTFFNDNDODBDMDA2MjFF
OTIgLyogcmVzYW1wbGVyX3ByaXZhdGVfZG93bl9GSVIuYyBpbiBTb3VyY2VzICovLAogCQkJCTVD
REQ4RTdCMUU0M0M4MEMwMDYyMUU5MiAvKiByZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSLmMgaW4g
U291cmNlcyAqLywKKwkJCQk0MTUzQ0QyODIxQ0M2NjQ4MDBDM0UxODggLyogdnFfc3NlMi5jIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFN0MxRTQzQzgwQzAwNjIxRTkyIC8qIHJlc2FtcGxlcl9w
cml2YXRlX3VwMl9IUS5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFN0UxRTQzQzgwQzAwNjIx
RTkyIC8qIHJlc2FtcGxlcl9yb20uYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RjRFMUU0M0NC
MUUwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3kxNl9GSVguYyBpbiBTb3VyY2VzICovLApAQCAt
MTU4ODgsOCArMTU4OTEsNyBAQAogCQkJCTVDREQ4RUZCMUU0M0M5RjYwMDYyMUU5MiAvKiBzY2h1
cl9GTFAuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTgyMUU0M0M4MEMwMDYyMUU5MiAvKiBz
aGVsbF9jb2Rlci5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFODMxRTQzQzgwQzAwNjIxRTky
IC8qIHNpZ21fUTE1LmMgaW4gU291cmNlcyAqLywKLQkJCQk1Q0REOEY1MTFFNDNDQjFFMDA2MjFF
OTIgLyogc29sdmVfTFNfRklYLmMgaW4gU291cmNlcyAqLywKLQkJCQk1Q0REOEVGRDFFNDNDOUY2
MDA2MjFFOTIgLyogc29sdmVfTFNfRkxQLmMgaW4gU291cmNlcyAqLywKKwkJCQk0MTUzQ0QyNzIx
Q0M2NjEwMDBDM0UxODggLyogTFBDX2ZpdC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFODUx
RTQzQzgwQzAwNjIxRTkyIC8qIHNvcnQuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RUZFMUU0
M0M5RjYwMDYyMUU5MiAvKiBzb3J0X0ZMUC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFODYx
RTQzQzgwQzAwNjIxRTkyIC8qIHN0ZXJlb19kZWNvZGVfcHJlZC5jIGluIFNvdXJjZXMgKi8sCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357903</attachid>
            <date>2018-12-20 17:00:56 -0800</date>
            <delta_ts>2018-12-21 11:38:06 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192867-20181220170054.patch</filename>
            <type>text/plain</type>
            <size>1685083</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5NDY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCAwN2I1MjBkODZiZTY4MDJkY2Q4NGIzNzkwYzYwYzcwMzU1N2MwMmVlLi4zZTFj
YWNkN2Q2YTcyOWI1NDc4N2RlZGZjYmJkNWYwMTIzMGU1YWI3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxOC0xMi0yMCAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzeW5jIG9wdXMgdG8gTTcyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI4NjcKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3Vy
YXRpb25zL29wdXMueGNjb25maWc6IFVwZGF0ZWQgY29tcGlsYXRpb24gZmxhZy4KKyAgICAgICAg
KiBTb3VyY2UvdGhpcmRfcGFydHkvb3B1czogUmVzeW5jZWQgdG8gQ2hyb21lIE03MiBicmFuY2gu
CisKIDIwMTgtMTItMTkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFJlZnJlc2ggdXNyc2N0cGxpYiB0byBNNzIKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Db25maWd1cmF0aW9ucy9vcHVzLnhjY29uZmlnIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL0NvbmZpZ3VyYXRpb25zL29wdXMueGNjb25maWcKaW5kZXggZDA1OGM3
NjQwNmFiNDM4NzY1NzY3YWYxYTE4ODM2MzliYThmYjljZi4uNDQzZDU1Yzg1YzMxM2ZjNmU4OTkx
MWNkMDZhNDk4ZTAxODIzZDY5NyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL0NvbmZpZ3VyYXRpb25zL29wdXMueGNjb25maWcKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL0NvbmZpZ3VyYXRpb25zL29wdXMueGNjb25maWcKQEAgLTEzLDExICsxMywxMiBA
QCBJTlNUQUxMX1BBVEggPSAvdXNyL2xvY2FsL2xpYjsKIFBVQkxJQ19IRUFERVJTX0ZPTERFUl9Q
QVRIID0gL3Vzci9sb2NhbC9pbmNsdWRlL2xpYndlYnJ0YzsKIFVTRV9IRUFERVJNQVAgPSBOTzsK
IFdBUk5JTkdfQ0ZMQUdTID0gLVduby1pbmNvbXBhdGlibGUtcG9pbnRlci10eXBlcyAkKGluaGVy
aXRlZCkKLUdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSBWQVJfQVJSQVlTIE9QVVNfQlVJ
TEQgT1BVU19FWFBPUlQ9IEhBVkVfTFJJTlQgSEFWRV9MUklOVEYgT1BVU19YODZfTUFZX0hBVkVf
U1NFMiAkKGluaGVyaXRlZCk7CitHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TID0gVkFSX0FS
UkFZUyBPUFVTX0JVSUxEIE9QVVNfRVhQT1JUPSBIQVZFX0xSSU5UIEhBVkVfTFJJTlRGICQoaW5o
ZXJpdGVkKTsKIEdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlNbYXJjaD1hcm02NCpdID0gJChp
bmhlcml0ZWQpIE9QVVNfQVJNX1BSRVNVTUVfQUFSQ0g2NF9ORU9OX0lOVFI7Ci1HQ0NfUFJFUFJP
Q0VTU09SX0RFRklOSVRJT05TW2FyY2g9eDg2XzY0XSA9ICQoaW5oZXJpdGVkKSAkKFNTRTRfRkxB
Ryk7CitHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TW2FyY2g9eDg2XzY0XSA9ICQoaW5oZXJp
dGVkKSBPUFVTX1g4Nl9NQVlfSEFWRV9TU0UyIE9QVVNfWDg2X1BSRVNVTUVfU1NFMiAkKFNTRTRf
RkxBRyk7CiAKLUVYQ0xVREVEX1NPVVJDRV9GSUxFX05BTUVTW3Nkaz1pcGhvbmUqXSA9ICpfc3Nl
LmMgKl9zc2UyLmM7CitFWENMVURFRF9TT1VSQ0VfRklMRV9OQU1FU1tzZGs9aXBob25lc2ltdWxh
dG9yKl0gPSAqX3NzZS5jICpfc3NlNF8xLmMgeDg2X3NpbGtfbWFwLmM7CitFWENMVURFRF9TT1VS
Q0VfRklMRV9OQU1FU1tzZGs9aXBob25lb3MqXSA9ICpfc3NlLmMgKl9zc2UyLmMgKl9zc2U0XzEu
YyB4ODZfc2lsa19tYXAuYzsKIEVYQ0xVREVEX1NPVVJDRV9GSUxFX05BTUVTW3Nkaz1tYWNvc3gq
XSA9ICQoRVhDTFVERURfU09VUkNFX0ZJTEVfTkFNRVNfbWFjb3N4XyQoVEFSR0VUX01BQ19PU19Y
X1ZFUlNJT05fTUFKT1IpKTsKIAogLy8gVGhlIGlPUyBTaW11bGF0b3IgY2FuJ3QgdXNlIFNTRTQg
aW50cmluc2ljcywgYnV0IG1hY09TIGNhbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9CVUlMRC5nbiBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9CVUlMRC5nbgppbmRleCAz
YmI1ZTBkZjQ5OWU5MmMyNjlmZjg0NTM2MzMzZmJmN2FhNDViYTI1Li5iNTRmODU2ODgyMzBlM2Ix
N2MxYWRmZTAxMzBlODVmYWQ0OWUwYTJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvQlVJTEQuZ24KKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL0JVSUxELmduCkBAIC05
LDEyICs5LDE5IEBAIGltcG9ydCgiLy90ZXN0aW5nL3Rlc3QuZ25pIikKIHVzZV9vcHVzX2ZpeGVk
X3BvaW50ID0gY3VycmVudF9jcHUgPT0gImFybSIgfHwgY3VycmVudF9jcHUgPT0gImFybTY0Igog
CiAjIElmIEFSTSBvcHRpbWl6YXRpb25zIHNoYWxsIGJlIHVzZWQgdG8gYWNjZWxlcmF0ZSBwZXJm
b3JtYW5jZS4KLXVzZV9vcHVzX2FybV9vcHRpbWl6YXRpb24gPSBjdXJyZW50X2NwdSA9PSAiYXJt
IgorIyBUT0RPKHNjb3R0bWcpOiBEaXNhYmxlZCBvbiBGdWNoc2lhIGZvciBub3csIHNlZSBodHRw
czovL2NyYnVnLmNvbS83NzUyNzIuCit1c2Vfb3B1c19hcm1fb3B0aW1pemF0aW9uID0KKyAgICBj
dXJyZW50X2NwdSA9PSAiYXJtIiB8fCAoY3VycmVudF9jcHUgPT0gImFybTY0IiAmJiBpc19pb3Mp
CisKKyMgTmFDbCwgdW5saWtlIENocm9tZSwgZG9lc24ndCB0YXJnZXQgU1NFMiBtaW5pbXVtLCBz
byBza2lwIG9wdGltaXphdGlvbnMgZm9yCisjIHRoZSBzYWtlIG9mIHNpbXBsaWNpdHkuCit1c2Vf
b3B1c194ODZfb3B0aW1pemF0aW9uID0KKyAgICAhaXNfbmFjbCAmJiAoY3VycmVudF9jcHUgPT0g
Ing4NiIgfHwgY3VycmVudF9jcHUgPT0gIng2NCIpCiAKICMgSWYgT1BVUyBSdW4gVGltZSBDUFUg
RGV0ZWN0aW9ucyAoUlRDRCkgc2hhbGwgYmUgdXNlZC4KICMgQmFzZWQgb24gdGhlIGNvbmRpdGlv
bnMgaW4gY2VsdC9hcm0vYXJtY3B1LmM6CiAjIGRlZmluZWQoX01TQ19WRVIpIHx8IGRlZmluZWQo
X19saW51eF9fKS4KLXVzZV9vcHVzX3J0Y2QgPSBjdXJyZW50X2NwdSA9PSAiYXJtIiAmJiAoaXNf
d2luIHx8IGlzX2FuZHJvaWQgfHwgaXNfbGludXgpCit1c2Vfb3B1c19hcm1fcnRjZCA9IGN1cnJl
bnRfY3B1ID09ICJhcm0iICYmIChpc193aW4gfHwgaXNfYW5kcm9pZCB8fCBpc19saW51eCkKIAog
Y29uZmlnKCJvcHVzX2NvbmZpZyIpIHsKICAgaW5jbHVkZV9kaXJzID0gWyAic3JjL2luY2x1ZGUi
IF0KQEAgLTI0LDYgKzMxLDEwNiBAQCBjb25maWcoIm9wdXNfY29uZmlnIikgewogICB9CiB9CiAK
K2NvbmZpZygib3B1c19wcml2YXRlX2NvbmZpZyIpIHsKKyAgZGVmaW5lcyA9IFsKKyAgICAiT1BV
U19CVUlMRCIsCisgICAgIk9QVVNfRVhQT1JUPSIsCisKKyAgICAjIFByZWZlciBhbGxvY2EoKSBv
dmVyIHZhcmlhYmxlIGxlbmd0aCBhcnJheXMgd2hpY2ggYXJlIG9mdGVuIGluZWZmaWNpZW50Owor
ICAgICMgdGhlIG9wdXMgY29kZSB3aWxsIGF1dG9tYXRpY2FsbHkgaGFuZGxlIHRoaXMgY29ycmVj
dGx5IHBlci1wbGF0Zm9ybS4KKyAgICAiVVNFX0FMTE9DQSIsCisgICAgIkhBVkVfQUxMT0NBX0gi
LAorICBdCisKKyAgaW5jbHVkZV9kaXJzID0gWworICAgICJzcmMiLAorICAgICJzcmMvY2VsdCIs
CisgICAgInNyYy9zaWxrIiwKKyAgXQorCisgIGNmbGFncyA9IFtdCisKKyAgaWYgKGlzX3dpbikg
eworICAgIGRlZmluZXMgKz0gWyAiaW5saW5lPV9faW5saW5lIiBdCisKKyAgICBjZmxhZ3MgKz0g
WworICAgICAgIi93ZDQzMDUiLCAgIyBEaXNhYmxlIHRydW5jYXRpb24gd2FybmluZyBpbiBjZWx0
L3BpdGNoLmMgLgorICAgICAgIi93ZDQzMzQiLCAgIyBEaXNhYmxlIDMyLWJpdCBzaGlmdCB3YXJu
aW5nIGluIHNyYy9vcHVzX2VuY29kZXIuYyAuCisgICAgXQorICB9IGVsc2UgeworICAgIGRlZmlu
ZXMgKz0gWworICAgICAgIkhBVkVfTFJJTlQiLAorICAgICAgIkhBVkVfTFJJTlRGIiwKKyAgICBd
CisgIH0KKworICBpZiAoaXNfZGVidWcpIHsKKyAgICAjIFR1cm4gb2ZmIGEgd2FybmluZyBpbiBv
cHVzX2RlY29kZXIuYyB3aGVuIGNvbXBpbGluZyB3aXRob3V0IG9wdGltaXphdGlvbi4KKyAgICBk
ZWZpbmVzICs9IFsgIk9QVVNfV0lMTF9CRV9TTE9XIiBdCisgIH0KKworICBpZiAodXNlX29wdXNf
eDg2X29wdGltaXphdGlvbikgeworICAgIGRlZmluZXMgKz0gWworICAgICAgIyBSdW4gVGltZSBD
UFUgRGV0ZWN0aW9ucyAoUlRDRCkgaXMgYWx3YXlzIGVuYWJsZWQgZm9yIHg4Ni4KKyAgICAgICJP
UFVTX0hBVkVfUlRDRCIsCisgICAgICAiQ1BVX0lORk9fQllfQVNNIiwKKworICAgICAgIyBDaHJv
bWUgYWx3YXlzIHRhcmdldHMgU1NFMisuCisgICAgICAiT1BVU19YODZfTUFZX0hBVkVfU1NFIiwK
KyAgICAgICJPUFVTX1g4Nl9NQVlfSEFWRV9TU0UyIiwKKyAgICAgICJPUFVTX1g4Nl9QUkVTVU1F
X1NTRSIsCisgICAgICAiT1BVU19YODZfUFJFU1VNRV9TU0UyIiwKKworICAgICAgIyBTb21lIHN5
c3RlbXMgbWF5IGhhdmUgU1NFNC4xKyBzdXBwb3J0LgorICAgICAgIk9QVVNfWDg2X01BWV9IQVZF
X1NTRTRfMSIsCisKKyAgICAgICMgQXQgcHJlc2VudCBsaWJvcHVzIGhhcyBubyBBVlggZnVuY3Rp
b25zIHNvIG5vIHNvdXJjZXMgYXJlIGFkZCBmb3IgdGhpcywKKyAgICAgICMgaWYgeW91IHNlZSBs
aW5rZXIgZXJyb3JzIG9uIEFWWCBjb2RlIHRoZSB0aGlzIGZsYWcgaXMgd2h5LgorICAgICAgIk9Q
VVNfWDg2X01BWV9IQVZFX0FWWCIsCisgICAgXQorICB9CisKKyAgaWYgKHVzZV9vcHVzX2ZpeGVk
X3BvaW50KSB7CisgICAgZGVmaW5lcyArPSBbICJGSVhFRF9QT0lOVCIgXQorICAgIGluY2x1ZGVf
ZGlycyArPSBbICJzcmMvc2lsay9maXhlZCIgXQorICB9IGVsc2UgeworICAgIGluY2x1ZGVfZGly
cyArPSBbICJzcmMvc2lsay9mbG9hdCIgXQorICB9CisKKyAgaWYgKHVzZV9vcHVzX2FybV9vcHRp
bWl6YXRpb24pIHsKKyAgICBpZiAoY3VycmVudF9jcHUgPT0gImFybSIpIHsKKyAgICAgIGRlZmlu
ZXMgKz0gWworICAgICAgICAiT1BVU19BUk1fQVNNIiwKKyAgICAgICAgIk9QVVNfQVJNX0lOTElO
RV9BU00iLAorICAgICAgICAiT1BVU19BUk1fSU5MSU5FX0VEU1AiLAorICAgICAgXQorICAgIH0K
KworICAgIGlmICh1c2Vfb3B1c19hcm1fcnRjZCkgeworICAgICAgZGVmaW5lcyArPSBbCisgICAg
ICAgICJPUFVTX0FSTV9NQVlfSEFWRV9FRFNQIiwKKyAgICAgICAgIk9QVVNfQVJNX01BWV9IQVZF
X01FRElBIiwKKyAgICAgICAgIk9QVVNfSEFWRV9SVENEIiwKKyAgICAgIF0KKyAgICB9CisKKyAg
ICBpZiAoYXJtX3VzZV9uZW9uKSB7CisgICAgICBkZWZpbmVzICs9IFsKKyAgICAgICAgIk9QVVNf
QVJNX01BWV9IQVZFX05FT04iLAorICAgICAgICAiT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRS
IiwKKyAgICAgIF0KKyAgICB9CisKKyAgICBpZiAoaXNfaW9zICYmIGN1cnJlbnRfY3B1ID09ICJh
cm02NCIpIHsKKyAgICAgICMgUnVudGltZSBkZXRlY3Rpb24gb2YgQ1BVIGZlYXR1cmVzIG5vdCBh
dmFpbGFibGUgb24gaU9TLgorICAgICAgZGVmaW5lcyArPSBbCisgICAgICAgICJPUFVTX0FSTV9Q
UkVTVU1FX05FT05fSU5UUiIsCisgICAgICAgICJPUFVTX0FSTV9QUkVTVU1FX0FBUkNINjRfTkVP
Tl9JTlRSIiwKKyAgICAgIF0KKyAgICB9CisgIH0KK30KKwogY29uZmlnKCJvcHVzX3Rlc3RfY29u
ZmlnIikgewogICBpbmNsdWRlX2RpcnMgPSBbCiAgICAgInNyYy9jZWx0IiwKQEAgLTQxLDcgKzE0
OCw3IEBAIGNvbmZpZygib3B1c190ZXN0X2NvbmZpZyIpIHsKICAgfQogfQogCi1pZiAodXNlX29w
dXNfcnRjZCkgeworaWYgKHVzZV9vcHVzX2FybV9ydGNkKSB7CiAgIGFjdGlvbigiY29udmVydF9y
dGNkX2Fzc2VtYmxlciIpIHsKICAgICBzY3JpcHQgPSAiY29udmVydF9ydGNkX2Fzc2VtYmxlci5w
eSIKICAgICBvdXRwdXRzID0gWwpAQCAtNTYsNiArMTYzLDMxIEBAIGlmICh1c2Vfb3B1c19ydGNk
KSB7CiAgIH0KIH0KIAoraWYgKHVzZV9vcHVzX3g4Nl9vcHRpbWl6YXRpb24pIHsKKyAgc291cmNl
X3NldCgib3B1c19zc2U0MSIpIHsKKyAgICBzb3VyY2VzID0gWworICAgICAgInNyYy9jZWx0L3g4
Ni9waXRjaF9zc2U0XzEuYyIsCisgICAgICAic3JjL3NpbGsveDg2L05TUV9kZWxfZGVjX3NzZS5j
IiwKKyAgICAgICJzcmMvc2lsay94ODYvTlNRX3NzZS5jIiwKKyAgICAgICJzcmMvc2lsay94ODYv
VkFEX3NzZS5jIiwKKyAgICBdCisKKyAgICBjb25maWdzIC09IFsgIi8vYnVpbGQvY29uZmlnL2Nv
bXBpbGVyOmNocm9taXVtX2NvZGUiIF0KKyAgICBjb25maWdzICs9IFsgIi8vYnVpbGQvY29uZmln
L2NvbXBpbGVyOm5vX2Nocm9taXVtX2NvZGUiIF0KKyAgICBjb25maWdzICs9IFsKKyAgICAgICI6
b3B1c19wcml2YXRlX2NvbmZpZyIsCisgICAgICAiOm9wdXNfY29uZmlnIiwKKyAgICBdCisKKyAg
ICBpZiAoIWlzX3dpbiB8fCBpc19jbGFuZykgeworICAgICAgY2ZsYWdzID0gWyAiLW1zc2U0LjEi
IF0KKyAgICB9CisgIH0KKyAgIyBUT0RPKGRhbGVjdXJ0aXMpOiBJZiBsaWJvcHVzIGV2ZXIgYWRk
cyBBVlggc3VwcG9ydCwgYWRkIGFuIG9wdXNfYXZ4IGJsb2NrLgorfQorCisjIE5vdGU6IERvIG5v
dCBhZGQgYW55IGRlZmluZXMgb3IgaW5jbHVkZV9kaXJzIHRvIHRoaXMgdGFyZ2V0LCB0aG9zZSBz
aG91bGQgYWxsCisjIGdvIGluIHRoZSBvcHVzX3ByaXZhdGVfY29uZmlnIHNvIHRoZXkgY2FuIGJl
IHNoYXJlZCB3aXRoIGludHJpbnNpYyB0YXJnZXRzLgogc3RhdGljX2xpYnJhcnkoIm9wdXMiKSB7
CiAgIHNvdXJjZXMgPSBbCiAgICAgInNyYy9jZWx0L19raXNzX2ZmdF9ndXRzLmgiLApAQCAtMTE1
LDYgKzI0Nyw3IEBAIHN0YXRpY19saWJyYXJ5KCJvcHVzIikgewogICAgICJzcmMvc2lsay9IUF92
YXJpYWJsZV9jdXRvZmYuYyIsCiAgICAgInNyYy9zaWxrL0lubGluZXMuaCIsCiAgICAgInNyYy9z
aWxrL0xQQ19hbmFseXNpc19maWx0ZXIuYyIsCisgICAgInNyYy9zaWxrL0xQQ19maXQuYyIsCiAg
ICAgInNyYy9zaWxrL0xQQ19pbnZfcHJlZF9nYWluLmMiLAogICAgICJzcmMvc2lsay9MUF92YXJp
YWJsZV9jdXRvZmYuYyIsCiAgICAgInNyYy9zaWxrL01hY3JvQ291bnQuaCIsCkBAIC0yMjEsNDcg
KzM1NCwxNCBAQCBzdGF0aWNfbGlicmFyeSgib3B1cyIpIHsKICAgICAic3JjL3NyYy90YW5zaWdf
dGFibGUuaCIsCiAgIF0KIAotICBkZWZpbmVzID0gWwotICAgICJPUFVTX0JVSUxEIiwKLSAgICAi
T1BVU19FWFBPUlQ9IiwKLSAgXQotCi0gIGluY2x1ZGVfZGlycyA9IFsKLSAgICAic3JjL2NlbHQi
LAotICAgICJzcmMvc2lsayIsCi0gIF0KLQogICBjb25maWdzIC09IFsgIi8vYnVpbGQvY29uZmln
L2NvbXBpbGVyOmNocm9taXVtX2NvZGUiIF0KLSAgY29uZmlncyArPSBbICIvL2J1aWxkL2NvbmZp
Zy9jb21waWxlcjpub19jaHJvbWl1bV9jb2RlIiBdCisgIGNvbmZpZ3MgKz0gWworICAgICIvL2J1
aWxkL2NvbmZpZy9jb21waWxlcjpub19jaHJvbWl1bV9jb2RlIiwKKyAgICAiOm9wdXNfcHJpdmF0
ZV9jb25maWciLAorICBdCiAgIHB1YmxpY19jb25maWdzID0gWyAiOm9wdXNfY29uZmlnIiBdCi0g
IGNmbGFncyA9IFtdCi0KLSAgaWYgKGlzX3dpbikgewotICAgIGRlZmluZXMgKz0gWwotICAgICAg
IlVTRV9BTExPQ0EiLAotICAgICAgImlubGluZT1fX2lubGluZSIsCi0gICAgXQogCi0gICAgY2Zs
YWdzICs9IFsKLSAgICAgICIvd2Q0MzA1IiwgICMgRGlzYWJsZSB0cnVuY2F0aW9uIHdhcm5pbmcg
aW4gY2VsdC9waXRjaC5jIC4KLSAgICAgICIvd2Q0MzM0IiwgICMgRGlzYWJsZSAzMi1iaXQgc2hp
ZnQgd2FybmluZyBpbiBzcmMvb3B1c19lbmNvZGVyLmMgLgotICAgIF0KLSAgfSBlbHNlIHsKLSAg
ICBkZWZpbmVzICs9IFsKLSAgICAgICJIQVZFX0xSSU5UIiwKLSAgICAgICJIQVZFX0xSSU5URiIs
Ci0gICAgICAiVkFSX0FSUkFZUyIsCi0gICAgXQotICB9Ci0KLSAgaWYgKGlzX3Bvc2l4ICYmICFp
c19hbmRyb2lkKSB7Ci0gICAgIyBTdXBwcmVzcyBhIHdhcm5pbmcgZ2l2ZW4gYnkgb3B1c19kZWNv
ZGVyLmMgdGhhdCB0ZWxscyB1cwotICAgICMgb3B0aW1pemF0aW9ucyBhcmUgdHVybmVkIG9mZi4K
LSAgICBjZmxhZ3MgKz0gWyAiLVduby0jcHJhZ21hLW1lc3NhZ2VzIiBdCi0gIH0KLQotICBpZiAo
IWlzX2RlYnVnICYmIGlzX3Bvc2l4ICYmCi0gICAgICAoY3VycmVudF9jcHUgPT0gImFybSIgfHwg
Y3VycmVudF9jcHUgPT0gImFybTY0IikpIHsKKyAgaWYgKCFpc19kZWJ1ZyAmJiAoY3VycmVudF9j
cHUgPT0gImFybSIgfHwgY3VycmVudF9jcHUgPT0gImFybTY0IikpIHsKICAgICBjb25maWdzIC09
IFsgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVyOmRlZmF1bHRfb3B0aW1pemF0aW9uIiBdCiAKICAg
ICAjIFRPRE8oY3JidWcuY29tLzYyMTMzNSkgUmV3b3JrIHRoaXMgc28gdGhhdCB3ZSBkb24ndCBo
YXZlIHRoZSBjb25mdXNpb24KQEAgLTI2OSw2ICszNjksMjYgQEAgc3RhdGljX2xpYnJhcnkoIm9w
dXMiKSB7CiAgICAgY29uZmlncyArPSBbICIvL2J1aWxkL2NvbmZpZy9jb21waWxlcjpvcHRpbWl6
ZV9zcGVlZCIgXQogICB9CiAKKyAgZGVwcyA9IFtdCisKKyAgaWYgKHVzZV9vcHVzX3g4Nl9vcHRp
bWl6YXRpb24pIHsKKyAgICBzb3VyY2VzICs9IFsKKyAgICAgICJzcmMvY2VsdC94ODYvY2VsdF9s
cGNfc3NlLmgiLAorICAgICAgInNyYy9jZWx0L3g4Ni9waXRjaF9zc2UuYyIsCisgICAgICAic3Jj
L2NlbHQveDg2L3BpdGNoX3NzZS5oIiwKKyAgICAgICJzcmMvY2VsdC94ODYvcGl0Y2hfc3NlMi5j
IiwKKyAgICAgICJzcmMvY2VsdC94ODYvdnFfc3NlLmgiLAorICAgICAgInNyYy9jZWx0L3g4Ni92
cV9zc2UyLmMiLAorICAgICAgInNyYy9jZWx0L3g4Ni94ODZfY2VsdF9tYXAuYyIsCisgICAgICAi
c3JjL2NlbHQveDg2L3g4NmNwdS5jIiwKKyAgICAgICJzcmMvY2VsdC94ODYveDg2Y3B1LmgiLAor
ICAgICAgInNyYy9zaWxrL3g4Ni9TaWdQcm9jX0ZJWF9zc2UuaCIsCisgICAgICAic3JjL3NpbGsv
eDg2L21haW5fc3NlLmgiLAorICAgICAgInNyYy9zaWxrL3g4Ni94ODZfc2lsa19tYXAuYyIsCisg
ICAgXQorICAgIGRlcHMgKz0gWyAiOm9wdXNfc3NlNDEiIF0KKyAgfQorCiAgIGlmICh1c2Vfb3B1
c19maXhlZF9wb2ludCkgewogICAgIHNvdXJjZXMgKz0gWwogICAgICAgInNyYy9zaWxrL2ZpeGVk
L0xUUF9hbmFseXNpc19maWx0ZXJfRklYLmMiLApAQCAtMjg3LDIyICs0MDcsMTYgQEAgc3RhdGlj
X2xpYnJhcnkoIm9wdXMiKSB7CiAgICAgICAic3JjL3NpbGsvZml4ZWQvbWFpbl9GSVguaCIsCiAg
ICAgICAic3JjL3NpbGsvZml4ZWQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYLmMiLAogICAgICAg
InNyYy9zaWxrL2ZpeGVkL3BpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmMiLAotICAgICAgInNyYy9z
aWxrL2ZpeGVkL3ByZWZpbHRlcl9GSVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvcHJvY2Vz
c19nYWluc19GSVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvcmVndWxhcml6ZV9jb3JyZWxh
dGlvbnNfRklYLmMiLAogICAgICAgInNyYy9zaWxrL2ZpeGVkL3Jlc2lkdWFsX2VuZXJneTE2X0ZJ
WC5jIiwKICAgICAgICJzcmMvc2lsay9maXhlZC9yZXNpZHVhbF9lbmVyZ3lfRklYLmMiLAogICAg
ICAgInNyYy9zaWxrL2ZpeGVkL3NjaHVyNjRfRklYLmMiLAogICAgICAgInNyYy9zaWxrL2ZpeGVk
L3NjaHVyX0ZJWC5jIiwKLSAgICAgICJzcmMvc2lsay9maXhlZC9zb2x2ZV9MU19GSVguYyIsCiAg
ICAgICAic3JjL3NpbGsvZml4ZWQvc3RydWN0c19GSVguaCIsCiAgICAgICAic3JjL3NpbGsvZml4
ZWQvdmVjdG9yX29wc19GSVguYyIsCiAgICAgICAic3JjL3NpbGsvZml4ZWQvd2FycGVkX2F1dG9j
b3JyZWxhdGlvbl9GSVguYyIsCiAgICAgXQotCi0gICAgZGVmaW5lcyArPSBbICJGSVhFRF9QT0lO
VCIgXQotCi0gICAgaW5jbHVkZV9kaXJzICs9IFsgInNyYy9zaWxrL2ZpeGVkIiBdCiAgIH0gZWxz
ZSB7CiAgICAgc291cmNlcyArPSBbCiAgICAgICAic3JjL3NpbGsvZmxvYXQvTFBDX2FuYWx5c2lz
X2ZpbHRlcl9GTFAuYyIsCkBAIC0zMjMsMjUgKzQzNywyMCBAQCBzdGF0aWNfbGlicmFyeSgib3B1
cyIpIHsKICAgICAgICJzcmMvc2lsay9mbG9hdC9maW5kX3ByZWRfY29lZnNfRkxQLmMiLAogICAg
ICAgInNyYy9zaWxrL2Zsb2F0L2lubmVyX3Byb2R1Y3RfRkxQLmMiLAogICAgICAgInNyYy9zaWxr
L2Zsb2F0L2syYV9GTFAuYyIsCi0gICAgICAic3JjL3NpbGsvZmxvYXQvbGV2aW5zb25kdXJiaW5f
RkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L21haW5fRkxQLmgiLAogICAgICAgInNyYy9z
aWxrL2Zsb2F0L25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jIiwKICAgICAgICJzcmMvc2lsay9m
bG9hdC9waXRjaF9hbmFseXNpc19jb3JlX0ZMUC5jIiwKLSAgICAgICJzcmMvc2lsay9mbG9hdC9w
cmVmaWx0ZXJfRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L3Byb2Nlc3NfZ2FpbnNfRkxQ
LmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L3JlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZMUC5j
IiwKICAgICAgICJzcmMvc2lsay9mbG9hdC9yZXNpZHVhbF9lbmVyZ3lfRkxQLmMiLAogICAgICAg
InNyYy9zaWxrL2Zsb2F0L3NjYWxlX2NvcHlfdmVjdG9yX0ZMUC5jIiwKICAgICAgICJzcmMvc2ls
ay9mbG9hdC9zY2FsZV92ZWN0b3JfRkxQLmMiLAogICAgICAgInNyYy9zaWxrL2Zsb2F0L3NjaHVy
X0ZMUC5jIiwKLSAgICAgICJzcmMvc2lsay9mbG9hdC9zb2x2ZV9MU19GTFAuYyIsCiAgICAgICAi
c3JjL3NpbGsvZmxvYXQvc29ydF9GTFAuYyIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvc3RydWN0
c19GTFAuaCIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9G
TFAuYyIsCiAgICAgICAic3JjL3NpbGsvZmxvYXQvd3JhcHBlcnNfRkxQLmMiLAogICAgIF0KLQot
ICAgIGluY2x1ZGVfZGlycyArPSBbICJzcmMvc2lsay9mbG9hdCIgXQogICB9CiAKICAgaWYgKHVz
ZV9vcHVzX2FybV9vcHRpbWl6YXRpb24pIHsKQEAgLTM1OSwzOSArNDY4LDM0IEBAIHN0YXRpY19s
aWJyYXJ5KCJvcHVzIikgewogICAgICAgInNyYy9zaWxrL2FybS9tYWNyb3NfYXJtdjVlLmgiLAog
ICAgIF0KIAotICAgIGRlZmluZXMgKz0gWwotICAgICAgIk9QVVNfQVJNX0FTTSIsCi0gICAgICAi
T1BVU19BUk1fSU5MSU5FX0FTTSIsCi0gICAgICAiT1BVU19BUk1fSU5MSU5FX0VEU1AiLAotICAg
IF0KLQotICAgIGlmICh1c2Vfb3B1c19ydGNkKSB7CisgICAgaWYgKHVzZV9vcHVzX2FybV9ydGNk
KSB7CiAgICAgICBzb3VyY2VzICs9IFsKICAgICAgICAgIiR0YXJnZXRfZ2VuX2Rpci9jZWx0X3Bp
dGNoX3hjb3JyX2FybV9nbnUuUyIsCiAgICAgICAgICJzcmMvY2VsdC9hcm0vYXJtX2NlbHRfbWFw
LmMiLAogICAgICAgICAic3JjL2NlbHQvYXJtL2FybWNwdS5jIiwKICAgICAgICAgInNyYy9jZWx0
L2FybS9hcm1jcHUuaCIsCi0gICAgICAgICJzcmMvY2VsdC9hcm0vY2VsdF9uZW9uX2ludHIuYyIs
CiAgICAgICAgICJzcmMvY2VsdC9hcm0vZmZ0X2FybS5oIiwKICAgICAgICAgInNyYy9jZWx0L2Fy
bS9tZGN0X2FybS5oIiwKICAgICAgICAgInNyYy9jZWx0L2FybS9waXRjaF9hcm0uaCIsCi0gICAg
ICAgICJzcmMvc2lsay9hcm0vTlNRX25lb24uYyIsCi0gICAgICAgICJzcmMvc2lsay9hcm0vTlNR
X25lb24uaCIsCiAgICAgICAgICJzcmMvc2lsay9hcm0vYXJtX3NpbGtfbWFwLmMiLAogICAgICAg
XQorICAgICAgZGVwcyArPSBbICI6Y29udmVydF9ydGNkX2Fzc2VtYmxlciIgXQorICAgIH0KIAot
ICAgICAgaW5jbHVkZV9kaXJzICs9IFsgInNyYyIgXQotCi0gICAgICBkZWZpbmVzICs9IFsKLSAg
ICAgICAgIk9QVVNfQVJNX01BWV9IQVZFX0VEU1AiLAotICAgICAgICAiT1BVU19BUk1fTUFZX0hB
VkVfTUVESUEiLAotICAgICAgICAiT1BVU19BUk1fTUFZX0hBVkVfTkVPTiIsCi0gICAgICAgICJP
UFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIiLAotICAgICAgICAiT1BVU19IQVZFX1JUQ0QiLAot
ICAgICAgXQotCi0gICAgICBkZXBzID0gWwotICAgICAgICAiOmNvbnZlcnRfcnRjZF9hc3NlbWJs
ZXIiLAorICAgIGlmIChhcm1fdXNlX25lb24pIHsKKyAgICAgIHNvdXJjZXMgKz0gWworICAgICAg
ICAic3JjL2NlbHQvYXJtL2NlbHRfbmVvbl9pbnRyLmMiLAorICAgICAgICAic3JjL2NlbHQvYXJt
L3BpdGNoX25lb25faW50ci5jIiwKKyAgICAgICAgInNyYy9zaWxrL2FybS9MUENfaW52X3ByZWRf
Z2Fpbl9hcm0uaCIsCisgICAgICAgICJzcmMvc2lsay9hcm0vTFBDX2ludl9wcmVkX2dhaW5fbmVv
bl9pbnRyLmMiLAorICAgICAgICAic3JjL3NpbGsvYXJtL05TUV9kZWxfZGVjX2FybS5oIiwKKyAg
ICAgICAgInNyYy9zaWxrL2FybS9OU1FfZGVsX2RlY19uZW9uX2ludHIuYyIsCisgICAgICAgICJz
cmMvc2lsay9hcm0vTlNRX25lb24uYyIsCisgICAgICAgICJzcmMvc2lsay9hcm0vTlNRX25lb24u
aCIsCisgICAgICAgICJzcmMvc2lsay9hcm0vYmlxdWFkX2FsdF9hcm0uaCIsCisgICAgICAgICJz
cmMvc2lsay9hcm0vYmlxdWFkX2FsdF9uZW9uX2ludHIuYyIsCisgICAgICAgICJzcmMvc2lsay9m
aXhlZC9hcm0vd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYXJtLmgiLAorICAgICAgICAic3Jj
L3NpbGsvZml4ZWQvYXJtL3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYX25lb25faW50ci5jIiwK
ICAgICAgIF0KICAgICB9CiAgIH0KQEAgLTQxMCw3ICs1MTQsNiBAQCBleGVjdXRhYmxlKCJvcHVz
X2NvbXBhcmUiKSB7CiAKICAgZGVwcyA9IFsKICAgICAiOm9wdXMiLAotICAgICIvL2J1aWxkL2Nv
bmZpZy9zYW5pdGl6ZXJzOmRlcHMiLAogICAgICIvL2J1aWxkL3dpbjpkZWZhdWx0X2V4ZV9tYW5p
ZmVzdCIsCiAgIF0KIH0KQEAgLTQyOCw3ICs1MzEsNiBAQCBleGVjdXRhYmxlKCJvcHVzX2RlbW8i
KSB7CiAKICAgZGVwcyA9IFsKICAgICAiOm9wdXMiLAotICAgICIvL2J1aWxkL2NvbmZpZy9zYW5p
dGl6ZXJzOmRlcHMiLAogICAgICIvL2J1aWxkL3dpbjpkZWZhdWx0X2V4ZV9tYW5pZmVzdCIsCiAg
IF0KIH0KQEAgLTQ1MSw2ICs1NTMsNyBAQCB0ZXN0KCJ0ZXN0X29wdXNfYXBpIikgewogCiB0ZXN0
KCJ0ZXN0X29wdXNfZW5jb2RlIikgewogICBzb3VyY2VzID0gWworICAgICJzcmMvdGVzdHMvb3B1
c19lbmNvZGVfcmVncmVzc2lvbnMuYyIsCiAgICAgInNyYy90ZXN0cy90ZXN0X29wdXNfZW5jb2Rl
LmMiLAogICBdCiAKQEAgLTQ3Myw3ICs1NzYsNyBAQCBjb25maWcoInRlc3Rfb3B1c19kZWNvZGVf
Y29uZmlnIikgewogICAjIG1hcmtlZCBhcyByZXF1aXJpbmcgYSBub24tbnVsbCB2YWx1ZSBieSB0
aGUgbm9ubnVsbCBmdW5jdGlvbiBhdHRyaWJ1dGUsCiAgICMgYW5kIGV4cGVjdHMgb3B1c19kZWNv
ZGUoKSB0byBmYWlsLiBEaXNhYmxlIHRoZSAtV25vbm51bGwgb3B0aW9uIHRvIGF2b2lkCiAgICMg
YSBjb21waWxhdGlvbiBlcnJvciBpZiAtV2Vycm9yIGlzIHNwZWNpZmllZC4KLSAgaWYgKGlzX3Bv
c2l4KSB7CisgIGlmIChpc19jbGFuZykgewogICAgIGNmbGFncyA9IFsgIi1Xbm8tbm9ubnVsbCIg
XQogICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvREVQUyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9ERVBTCmluZGV4IDdlNWJkMjZlZTY5MjhhY2M5NmUwMzUyYTQ1
NzY1NjJlZWEwNjEyOGUuLmZmZmNhYTVmZmMzNTI1ODI3ZDRjODdiMjJlYTcyMmNlOWMwMjNhOGYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9ERVBTCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9ERVBTCkBAIC0xLDUgKzEsNyBAQAogaW5jbHVkZV9ydWxlcyA9IFsKICAg
Iithcm0iLAorICAiK2NlbHQiLAorICAiK2ZpeGVkIiwKICAgIittaXBzIiwKICAgIit4ODYiLAog
XQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL1JFQURNRS5jaHJvbWl1bSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9SRUFETUUuY2hyb21pdW0KaW5kZXggNzExMWQwMjhjMGQ2
ZjY3MDI5MWRjNzExNWM5ZTVjNmIzOGMzZGU4Zi4uOGJkMzE5N2FmMjczMjAwMGMzNTFkZTNmNzk4
NjFmM2U5ODI0ZWRkMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL1JFQURNRS5jaHJvbWl1bQorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvUkVBRE1FLmNocm9taXVtCkBA
IC0xLDYgKzEsNiBAQAogTmFtZTogb3B1cwotVVJMOiBodHRwOi8vZG93bmxvYWRzLnhpcGgub3Jn
L3JlbGVhc2VzL29wdXMvb3B1cy0xLjEuMy50YXIuZ3oKLVZlcnNpb246IDEuMS4zCitVUkw6IGh0
dHBzOi8vZ2l0LnhpcGgub3JnLz9wPW9wdXMuZ2l0O2E9c25hcHNob3Q7aD0zZmU3NDRlYTA0ZmRj
YzQxOGZiODVjMmMxMzNkMTMzNzJlYmIwMTliO3NmPXRnegorVmVyc2lvbjogM2ZlNzQ0ZWEwNGZk
Y2M0MThmYjg1YzJjMTMzZDEzMzcyZWJiMDE5YgogTGljZW5zZTogQlNECiBMaWNlbnNlIEZpbGU6
IHNyYy9DT1BZSU5HCiBTZWN1cml0eSBDcml0aWNhbDogeWVzCkBAIC0xNCw3ICsxNCw5IEBAIGVu
Y29kaW5nL2RlY29kaW5nLgogTG9jYWwgY2hhbmdlczoKICogY29weSAuZ2l0aWdub3JlIGZyb20g
aHR0cHM6Ly9naXQueGlwaC5vcmcvP3A9b3B1cy5naXQ7YT10cmVlCiAqIHNldCAneCcgZmxhZ3M6
ICJjaG1vZCA3NTAgd2luMzIvZ2VudmVyc2lvbi5iYXQiCi0qIEFwcGx5IHBhdGNoZXMgZnJvbQot
ICBodHRwczovL2dpdC54aXBoLm9yZy8/cD1vcHVzLmdpdDthPWNvbW1pdDtoPTc5ZThmNTI3YjAz
NDRiMDg5N2E2NWJlMzVlNzdmNzg4NWJkOTk0MDkKLSAgaHR0cHM6Ly9naXQueGlwaC5vcmcvP3A9
b3B1cy5naXQ7YT1jb21taXRkaWZmO2g9ZTVhZDI2MTY5NTAyYzFmMGIwNjc5MTZlNzgyYzJiM2Zk
ZWE2ZmJhOQotICBodHRwczovL2dpdC54aXBoLm9yZy8/cD1vcHVzLmdpdDthPWNvbW1pdGRpZmY7
aD01ZGEwNDk4YTNlMjMzMzlhYWNlYmE2NTlhOTdlOTM1MDMxZDU2OTNkCisqIEFwcGx5IGh0dHBz
Oi8vZ2l0LnhpcGgub3JnLz9wPW9wdXMuZ2l0O2E9Y29tbWl0ZGlmZjtoPTQ2NTYwNTM0ZmNiNTcx
MGE4OTRhMzQxYzJmOTUyNmRiNThmZDcwODcjcGF0Y2gxCisqIEFwcGx5IGh0dHBzOi8vZ2l0aHVi
LmNvbS94aXBoL29wdXMvcHVsbC83MworKiBBcHBseSBodHRwczovL2dpdGh1Yi5jb20veGlwaC9v
cHVzL3B1bGwvODcKKyogTWFrZSBzdXJlIEhCX2dhaW4gaXMgbm90IE5hTiBpbiBhbiBhdHRlbXB0
IHRvIGZpeCBjaHJvbWl1bTo4MjY5MTQKKyogU2F0dXJhdGUgYWRkIHRvIGF2b2lkIGludCBvdmVy
ZmxvdyB0byBmaXggY2hyb21pdW06ODQyNTI4LiBUaGlzIHNob3VsZCBiZQorICByZXZlcnRlZCB3
aGVuIHVwZGF0aW5nIHRvIHYxLjMKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9jb252ZXJ0X3J0Y2RfYXNzZW1ibGVyLnB5IGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL2NvbnZl
cnRfcnRjZF9hc3NlbWJsZXIucHkKaW5kZXggZGM2M2M2NDFmNTdmNGM3Y2U0OWJkYTdmMzJiZjk3
NmY4NzIyNWVjNy4uMmY2MDcxZjQxMjE4NjFiYzBkMDc5ODkzNTcyZGQ3MDkyYWMxYzA0MiAxMDA3
NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL2NvbnZlcnRfcnRjZF9hc3NlbWJsZXIucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL2NvbnZlcnRfcnRjZF9hc3NlbWJsZXIucHkK
QEAgLTQ1LDcgKzQ1LDYgQEAgZGVmIG1haW4oYXJndik6CiAgICAgICAgICAnc2VkICJzL09QVVNf
QVJNX01BWV9IQVZFX1tBLVpdKi8xL2ciIHwgJwogICAgICAgICAgJ3NlZCAiLy5pbmNsdWRlL2Qi
ICcKICAgICAgICAgICc+ICVzJykgJSAoYXJtMmdudV9zY3JpcHQsIGlucHV0X2ZpbGUsIG91dHB1
dF9maWxlKQotICBwcmludCBjbWQKICAgcmV0dXJuIG9zLnN5c3RlbShjbWQpCiAKIGlmIF9fbmFt
ZV9fID09ICdfX21haW5fXyc6CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjLy5naXRpZ25vcmUgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjLy5naXRpZ25vcmUKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMzMxMjdjOWZlMGE2NjNiNjA2Njk1MzBiN2JkYjY1YTY3ZDFiZWNhNQotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvLmdpdGlnbm9yZQpAQCAtMCwwICsxLDgzIEBACitEb3h5ZmlsZQorTWFrZWZp
bGUKK01ha2VmaWxlLmluCitUQUdTCithY2xvY2FsLm00CithdXRvbTR0ZS5jYWNoZQorKi5rZGV2
ZWxvcC5wY3MKKyoua2RldnNlcworY29tcGlsZQorY29uZmlnLmd1ZXNzCitjb25maWcuaAorY29u
ZmlnLmguaW4KK2NvbmZpZy5sb2cKK2NvbmZpZy5zdGF0dXMKK2NvbmZpZy5zdWIKK2NvbmZpZ3Vy
ZQorZGVwY29tcAorSU5TVEFMTAoraW5zdGFsbC1zaAorLmRlcHMKKy5saWJzCisuZGlyc3RhbXAK
KyouYQorKi5leGUKKyoubGEKKyotZ251LlMKK3Rlc3RjZWx0CitsaWJ0b29sCitsdG1haW4uc2gK
K21pc3NpbmcKK200L2xpYnRvb2wubTQKK200L2x0b3B0aW9ucy5tNAorbTQvbHRzdWdhci5tNAor
bTQvbHR2ZXJzaW9uLm00CittNC9sdH5vYnNvbGV0ZS5tNAorb3B1c19jb21wYXJlCitvcHVzX2Rl
bW8KK3JlcGFja2V0aXplcl9kZW1vCitzdGFtcC1oMQordGVzdC1kcml2ZXIKKyouc3cqCisqLm8K
KyoubG8KKyoucGMKKyoudGFyLmd6CisqfgordGVzdHMvKnRlc3QKK3Rlc3RzL3Rlc3Rfb3B1c19h
cGkKK3Rlc3RzL3Rlc3Rfb3B1c19kZWNvZGUKK3Rlc3RzL3Rlc3Rfb3B1c19lbmNvZGUKK3Rlc3Rz
L3Rlc3Rfb3B1c19wYWRkaW5nCitjZWx0L2FybS9hcm1vcHRzLnMKK2NlbHQvZHVtcF9tb2Rlcy9k
dW1wX21vZGVzCitjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9jd3JzMzIKK2NlbHQvdGVzdHMvdGVzdF91
bml0X2RmdAorY2VsdC90ZXN0cy90ZXN0X3VuaXRfZW50cm9weQorY2VsdC90ZXN0cy90ZXN0X3Vu
aXRfbGFwbGFjZQorY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWF0aG9wcworY2VsdC90ZXN0cy90ZXN0
X3VuaXRfbWRjdAorY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24KK2NlbHQvdGVzdHMvdGVz
dF91bml0X3R5cGVzCitkb2MvZG94eWdlbl9zcWxpdGUzLmRiCitkb2MvZG94eWdlbi1idWlsZC5z
dGFtcAorZG9jL2h0bWwKK2RvYy9sYXRleAorZG9jL21hbgorcGFja2FnZV92ZXJzaW9uCit2ZXJz
aW9uLmgKK2NlbHQvRGVidWcKK2NlbHQvUmVsZWFzZQorY2VsdC94NjQKK3NpbGsvRGVidWcKK3Np
bGsvUmVsZWFzZQorc2lsay94NjQKK3NpbGsvZml4ZWQvRGVidWcKK3NpbGsvZml4ZWQvUmVsZWFz
ZQorc2lsay9maXhlZC94NjQKK3NpbGsvZmxvYXQvRGVidWcKK3NpbGsvZmxvYXQvUmVsZWFzZQor
c2lsay9mbG9hdC94NjQKK3NyYy9EZWJ1Zworc3JjL1JlbGVhc2UKK3NyYy94NjQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvTElDRU5TRV9QTEVBU0VfUkVBRC50eHQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL0xJQ0VOU0VfUExFQVNFX1JFQUQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmJjODhlZmE2Y2IwNTc4OWE2YTZlNjk3NTc3YWU2ZDhlNTUzMmU1ZGYKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL0xJQ0VOU0VfUExFQVNFX1JFQUQudHh0CkBAIC0wLDAgKzEsMjIgQEAKK0NvbnRy
aWJ1dGlvbnMgdG8gdGhlIGNvbGxhYm9yYXRpb24gc2hhbGwgbm90IGJlIGNvbnNpZGVyZWQgY29u
ZmlkZW50aWFsLgorCitFYWNoIGNvbnRyaWJ1dG9yIHJlcHJlc2VudHMgYW5kIHdhcnJhbnRzIHRo
YXQgaXQgaGFzIHRoZSByaWdodCBhbmQKK2F1dGhvcml0eSB0byBsaWNlbnNlIGNvcHlyaWdodCBp
biBpdHMgY29udHJpYnV0aW9ucyB0byB0aGUgY29sbGFib3JhdGlvbi4KKworRWFjaCBjb250cmli
dXRvciBhZ3JlZXMgdG8gbGljZW5zZSB0aGUgY29weXJpZ2h0IGluIHRoZSBjb250cmlidXRpb25z
Cit1bmRlciB0aGUgTW9kaWZpZWQgKDItY2xhdXNlIG9yIDMtY2xhdXNlKSBCU0QgTGljZW5zZSBv
ciB0aGUgQ2xlYXIgQlNEIExpY2Vuc2UuCisKK1BsZWFzZSBzZWUgdGhlIElQUiBzdGF0ZW1lbnRz
IHN1Ym1pdHRlZCB0byB0aGUgSUVURiBmb3IgdGhlIGNvbXBsZXRlCitwYXRlbnQgbGljZW5zaW5n
IGRldGFpbHM6CisKK1hpcGguT3JnIEZvdW5kYXRpb246CitodHRwczovL2RhdGF0cmFja2VyLmll
dGYub3JnL2lwci8xNTI0LworCitNaWNyb3NvZnQgQ29ycG9yYXRpb246CitodHRwczovL2RhdGF0
cmFja2VyLmlldGYub3JnL2lwci8xOTE0LworCitTa3lwZSBMaW1pdGVkOgoraHR0cHM6Ly9kYXRh
dHJhY2tlci5pZXRmLm9yZy9pcHIvMTYwMi8KKworQnJvYWRjb20gQ29ycG9yYXRpb246CitodHRw
czovL2RhdGF0cmFja2VyLmlldGYub3JnL2lwci8xNTI2LwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS5h
bSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvTWFrZWZpbGUuYW0KaW5kZXggN2E2OTExNDBlNTUzZDQ1NTRjNmVjMmI3Y2JhYzAyOThlM2Qx
NmIyYy4uNWI1N2IzMzcyZTU2Y2NhNTk5YzRkNDVhYWEwMWZlM2QzNzE4NjIzMiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9NYWtlZmlsZS5hbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLmFtCkBAIC0yMSw2ICsyMSw5IEBAIFNJTEtfU09V
UkNFUyArPSAkKFNJTEtfU09VUkNFU19GSVhFRCkKIGlmIEhBVkVfU1NFNF8xCiBTSUxLX1NPVVJD
RVMgKz0gJChTSUxLX1NPVVJDRVNfU1NFNF8xKSAkKFNJTEtfU09VUkNFU19GSVhFRF9TU0U0XzEp
CiBlbmRpZgoraWYgSEFWRV9BUk1fTkVPTl9JTlRSCitTSUxLX1NPVVJDRVMgKz0gJChTSUxLX1NP
VVJDRVNfRklYRURfQVJNX05FT05fSU5UUikKK2VuZGlmCiBlbHNlCiBTSUxLX1NPVVJDRVMgKz0g
JChTSUxLX1NPVVJDRVNfRkxPQVQpCiBpZiBIQVZFX1NTRTRfMQpAQCAtODQsOSArODcsMzYgQEAg
cGtnaW5jbHVkZV9IRUFERVJTID0gaW5jbHVkZS9vcHVzLmggaW5jbHVkZS9vcHVzX211bHRpc3Ry
ZWFtLmggaW5jbHVkZS9vcHVzX3R5cGUKIG5vaW5zdF9IRUFERVJTID0gJChPUFVTX0hFQUQpICQo
U0lMS19IRUFEKSAkKENFTFRfSEVBRCkKIAogaWYgRVhUUkFfUFJPR1JBTVMKLW5vaW5zdF9QUk9H
UkFNUyA9IG9wdXNfZGVtbyByZXBhY2tldGl6ZXJfZGVtbyBvcHVzX2NvbXBhcmUgdGVzdHMvdGVz
dF9vcHVzX2FwaSB0ZXN0cy90ZXN0X29wdXNfZW5jb2RlIHRlc3RzL3Rlc3Rfb3B1c19kZWNvZGUg
dGVzdHMvdGVzdF9vcHVzX3BhZGRpbmcgY2VsdC90ZXN0cy90ZXN0X3VuaXRfY3dyczMyIGNlbHQv
dGVzdHMvdGVzdF91bml0X2RmdCBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9lbnRyb3B5IGNlbHQvdGVz
dHMvdGVzdF91bml0X2xhcGxhY2UgY2VsdC90ZXN0cy90ZXN0X3VuaXRfbWF0aG9wcyBjZWx0L3Rl
c3RzL3Rlc3RfdW5pdF9tZGN0IGNlbHQvdGVzdHMvdGVzdF91bml0X3JvdGF0aW9uIGNlbHQvdGVz
dHMvdGVzdF91bml0X3R5cGVzCi0KLVRFU1RTID0gY2VsdC90ZXN0cy90ZXN0X3VuaXRfdHlwZXMg
Y2VsdC90ZXN0cy90ZXN0X3VuaXRfbWF0aG9wcyBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9lbnRyb3B5
IGNlbHQvdGVzdHMvdGVzdF91bml0X2xhcGxhY2UgY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0IGNl
bHQvdGVzdHMvdGVzdF91bml0X21kY3QgY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24gY2Vs
dC90ZXN0cy90ZXN0X3VuaXRfY3dyczMyIHRlc3RzL3Rlc3Rfb3B1c19hcGkgdGVzdHMvdGVzdF9v
cHVzX2RlY29kZSB0ZXN0cy90ZXN0X29wdXNfZW5jb2RlIHRlc3RzL3Rlc3Rfb3B1c19wYWRkaW5n
Citub2luc3RfUFJPR1JBTVMgPSBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9jd3JzMzIgXAorICAgICAg
ICAgICAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0IFwKKyAgICAgICAgICAgICAgICAg
IGNlbHQvdGVzdHMvdGVzdF91bml0X2VudHJvcHkgXAorICAgICAgICAgICAgICAgICAgY2VsdC90
ZXN0cy90ZXN0X3VuaXRfbGFwbGFjZSBcCisgICAgICAgICAgICAgICAgICBjZWx0L3Rlc3RzL3Rl
c3RfdW5pdF9tYXRob3BzIFwKKyAgICAgICAgICAgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0
X21kY3QgXAorICAgICAgICAgICAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24g
XAorICAgICAgICAgICAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3VuaXRfdHlwZXMgXAorICAgICAg
ICAgICAgICAgICAgb3B1c19jb21wYXJlIFwKKyAgICAgICAgICAgICAgICAgIG9wdXNfZGVtbyBc
CisgICAgICAgICAgICAgICAgICByZXBhY2tldGl6ZXJfZGVtbyBcCisgICAgICAgICAgICAgICAg
ICBzaWxrL3Rlc3RzL3Rlc3RfdW5pdF9MUENfaW52X3ByZWRfZ2FpbiBcCisgICAgICAgICAgICAg
ICAgICB0ZXN0cy90ZXN0X29wdXNfYXBpIFwKKyAgICAgICAgICAgICAgICAgIHRlc3RzL3Rlc3Rf
b3B1c19kZWNvZGUgXAorICAgICAgICAgICAgICAgICAgdGVzdHMvdGVzdF9vcHVzX2VuY29kZSBc
CisgICAgICAgICAgICAgICAgICB0ZXN0cy90ZXN0X29wdXNfcGFkZGluZworCitURVNUUyA9IGNl
bHQvdGVzdHMvdGVzdF91bml0X2N3cnMzMiBcCisgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0
X2RmdCBcCisgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0X2VudHJvcHkgXAorICAgICAgICBj
ZWx0L3Rlc3RzL3Rlc3RfdW5pdF9sYXBsYWNlIFwKKyAgICAgICAgY2VsdC90ZXN0cy90ZXN0X3Vu
aXRfbWF0aG9wcyBcCisgICAgICAgIGNlbHQvdGVzdHMvdGVzdF91bml0X21kY3QgXAorICAgICAg
ICBjZWx0L3Rlc3RzL3Rlc3RfdW5pdF9yb3RhdGlvbiBcCisgICAgICAgIGNlbHQvdGVzdHMvdGVz
dF91bml0X3R5cGVzIFwKKyAgICAgICAgc2lsay90ZXN0cy90ZXN0X3VuaXRfTFBDX2ludl9wcmVk
X2dhaW4gXAorICAgICAgICB0ZXN0cy90ZXN0X29wdXNfYXBpIFwKKyAgICAgICAgdGVzdHMvdGVz
dF9vcHVzX2RlY29kZSBcCisgICAgICAgIHRlc3RzL3Rlc3Rfb3B1c19lbmNvZGUgXAorICAgICAg
ICB0ZXN0cy90ZXN0X29wdXNfcGFkZGluZwogCiBvcHVzX2RlbW9fU09VUkNFUyA9IHNyYy9vcHVz
X2RlbW8uYwogCkBAIC0xMDIsNyArMTMyLDcgQEAgb3B1c19jb21wYXJlX0xEQUREID0gJChMSUJN
KQogdGVzdHNfdGVzdF9vcHVzX2FwaV9TT1VSQ0VTID0gdGVzdHMvdGVzdF9vcHVzX2FwaS5jIHRl
c3RzL3Rlc3Rfb3B1c19jb21tb24uaAogdGVzdHNfdGVzdF9vcHVzX2FwaV9MREFERCA9IGxpYm9w
dXMubGEgJChORTEwX0xJQlMpICQoTElCTSkKIAotdGVzdHNfdGVzdF9vcHVzX2VuY29kZV9TT1VS
Q0VTID0gdGVzdHMvdGVzdF9vcHVzX2VuY29kZS5jIHRlc3RzL3Rlc3Rfb3B1c19jb21tb24uaAor
dGVzdHNfdGVzdF9vcHVzX2VuY29kZV9TT1VSQ0VTID0gdGVzdHMvdGVzdF9vcHVzX2VuY29kZS5j
IHRlc3RzL29wdXNfZW5jb2RlX3JlZ3Jlc3Npb25zLmMgdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5o
CiB0ZXN0c190ZXN0X29wdXNfZW5jb2RlX0xEQUREID0gbGlib3B1cy5sYSAkKE5FMTBfTElCUykg
JChMSUJNKQogCiB0ZXN0c190ZXN0X29wdXNfZGVjb2RlX1NPVVJDRVMgPSB0ZXN0cy90ZXN0X29w
dXNfZGVjb2RlLmMgdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCkBAIC0xMTEsMTEgKzE0MSwyMCBA
QCB0ZXN0c190ZXN0X29wdXNfZGVjb2RlX0xEQUREID0gbGlib3B1cy5sYSAkKE5FMTBfTElCUykg
JChMSUJNKQogdGVzdHNfdGVzdF9vcHVzX3BhZGRpbmdfU09VUkNFUyA9IHRlc3RzL3Rlc3Rfb3B1
c19wYWRkaW5nLmMgdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCiB0ZXN0c190ZXN0X29wdXNfcGFk
ZGluZ19MREFERCA9IGxpYm9wdXMubGEgJChORTEwX0xJQlMpICQoTElCTSkKIAorQ0VMVF9PQkog
PSAkKENFTFRfU09VUkNFUzouYz0ubG8pCitTSUxLX09CSiA9ICQoU0lMS19TT1VSQ0VTOi5jPS5s
bykKKworc2lsa190ZXN0c190ZXN0X3VuaXRfTFBDX2ludl9wcmVkX2dhaW5fU09VUkNFUyA9IHNp
bGsvdGVzdHMvdGVzdF91bml0X0xQQ19pbnZfcHJlZF9nYWluLmMKK3NpbGtfdGVzdHNfdGVzdF91
bml0X0xQQ19pbnZfcHJlZF9nYWluX0xEQUREID0gJChTSUxLX09CSikgJChDRUxUX09CSikgJChO
RTEwX0xJQlMpICQoTElCTSkKK2lmIE9QVVNfQVJNX0VYVEVSTkFMX0FTTQorc2lsa190ZXN0c190
ZXN0X3VuaXRfTFBDX2ludl9wcmVkX2dhaW5fTERBREQgKz0gbGliYXJtYXNtLmxhCitlbmRpZgor
CiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9jd3JzMzJfU09VUkNFUyA9IGNlbHQvdGVzdHMvdGVzdF91
bml0X2N3cnMzMi5jCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9jd3JzMzJfTERBREQgPSAkKExJQk0p
CiAKIGNlbHRfdGVzdHNfdGVzdF91bml0X2RmdF9TT1VSQ0VTID0gY2VsdC90ZXN0cy90ZXN0X3Vu
aXRfZGZ0LmMKLWNlbHRfdGVzdHNfdGVzdF91bml0X2RmdF9MREFERCA9ICQoTkUxMF9MSUJTKSAk
KExJQk0pCitjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9kZnRfTERBREQgPSAkKENFTFRfT0JKKSAkKE5F
MTBfTElCUykgJChMSUJNKQogaWYgT1BVU19BUk1fRVhURVJOQUxfQVNNCiBjZWx0X3Rlc3RzX3Rl
c3RfdW5pdF9kZnRfTERBREQgKz0gbGliYXJtYXNtLmxhCiBlbmRpZgpAQCAtMTI3LDE5ICsxNjYs
MTkgQEAgY2VsdF90ZXN0c190ZXN0X3VuaXRfbGFwbGFjZV9TT1VSQ0VTID0gY2VsdC90ZXN0cy90
ZXN0X3VuaXRfbGFwbGFjZS5jCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9sYXBsYWNlX0xEQUREID0g
JChMSUJNKQogCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tYXRob3BzX1NPVVJDRVMgPSBjZWx0L3Rl
c3RzL3Rlc3RfdW5pdF9tYXRob3BzLmMKLWNlbHRfdGVzdHNfdGVzdF91bml0X21hdGhvcHNfTERB
REQgPSAkKE5FMTBfTElCUykgJChMSUJNKQorY2VsdF90ZXN0c190ZXN0X3VuaXRfbWF0aG9wc19M
REFERCA9ICQoQ0VMVF9PQkopICQoTkUxMF9MSUJTKSAkKExJQk0pCiBpZiBPUFVTX0FSTV9FWFRF
Uk5BTF9BU00KIGNlbHRfdGVzdHNfdGVzdF91bml0X21hdGhvcHNfTERBREQgKz0gbGliYXJtYXNt
LmxhCiBlbmRpZgogCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tZGN0X1NPVVJDRVMgPSBjZWx0L3Rl
c3RzL3Rlc3RfdW5pdF9tZGN0LmMKLWNlbHRfdGVzdHNfdGVzdF91bml0X21kY3RfTERBREQgPSAk
KE5FMTBfTElCUykgJChMSUJNKQorY2VsdF90ZXN0c190ZXN0X3VuaXRfbWRjdF9MREFERCA9ICQo
Q0VMVF9PQkopICQoTkUxMF9MSUJTKSAkKExJQk0pCiBpZiBPUFVTX0FSTV9FWFRFUk5BTF9BU00K
IGNlbHRfdGVzdHNfdGVzdF91bml0X21kY3RfTERBREQgKz0gbGliYXJtYXNtLmxhCiBlbmRpZgog
CiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9yb3RhdGlvbl9TT1VSQ0VTID0gY2VsdC90ZXN0cy90ZXN0
X3VuaXRfcm90YXRpb24uYwotY2VsdF90ZXN0c190ZXN0X3VuaXRfcm90YXRpb25fTERBREQgPSAk
KE5FMTBfTElCUykgJChMSUJNKQorY2VsdF90ZXN0c190ZXN0X3VuaXRfcm90YXRpb25fTERBREQg
PSAkKENFTFRfT0JKKSAkKE5FMTBfTElCUykgJChMSUJNKQogaWYgT1BVU19BUk1fRVhURVJOQUxf
QVNNCiBjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9yb3RhdGlvbl9MREFERCArPSBsaWJhcm1hc20ubGEK
IGVuZGlmCkBAIC0xNTcsOCArMTk2LDcgQEAgb3B1c19jdXN0b21fZGVtb19MREFERCA9IGxpYm9w
dXMubGEgJChMSUJNKQogZW5kaWYKIGVuZGlmCiAKLUVYVFJBX0RJU1QgPSB2ZXJzaW9uLm1rIFwK
LSAgICAgICAgICAgICBvcHVzLnBjLmluIFwKK0VYVFJBX0RJU1QgPSBvcHVzLnBjLmluIFwKICAg
ICAgICAgICAgICBvcHVzLXVuaW5zdGFsbGVkLnBjLmluIFwKICAgICAgICAgICAgICBvcHVzLm00
IFwKICAgICAgICAgICAgICBNYWtlZmlsZS5taXBzIFwKQEAgLTE2NiwyNSArMjA0LDE4IEBAIEVY
VFJBX0RJU1QgPSB2ZXJzaW9uLm1rIFwKICAgICAgICAgICAgICB0ZXN0cy9ydW5fdmVjdG9ycy5z
aCBcCiAgICAgICAgICAgICAgY2VsdC9hcm0vYXJtMmdudS5wbCBcCiAgICAgICAgICAgICAgY2Vs
dC9hcm0vY2VsdF9waXRjaF94Y29ycl9hcm0ucyBcCi0gICAgICAgICAgICAgd2luMzIvVlMyMDE1
L3NpbGtfZmxvYXQudmN4cHJvaiBcCi0gICAgICAgICAgICAgd2luMzIvVlMyMDE1L2NlbHQudmN4
cHJvai5maWx0ZXJzIFwKICAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvb3B1cy52Y3hwcm9qIFwK
LSAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvc2lsa19jb21tb24udmN4cHJvai5maWx0ZXJzIFwK
LSAgICAgICAgICAgICB3aW4zMi9WUzIwMTUvc2lsa19mbG9hdC52Y3hwcm9qLmZpbHRlcnMgXAog
ICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS90ZXN0X29wdXNfZW5jb2RlLnZjeHByb2ouZmlsdGVy
cyBcCi0gICAgICAgICAgICAgd2luMzIvVlMyMDE1L3NpbGtfY29tbW9uLnZjeHByb2ogXAogICAg
ICAgICAgICAgIHdpbjMyL1ZTMjAxNS90ZXN0X29wdXNfZW5jb2RlLnZjeHByb2ogXAogICAgICAg
ICAgICAgIHdpbjMyL1ZTMjAxNS9vcHVzX2RlbW8udmN4cHJvaiBcCiAgICAgICAgICAgICAgd2lu
MzIvVlMyMDE1L3Rlc3Rfb3B1c19hcGkudmN4cHJvai5maWx0ZXJzIFwKICAgICAgICAgICAgICB3
aW4zMi9WUzIwMTUvdGVzdF9vcHVzX2FwaS52Y3hwcm9qIFwKICAgICAgICAgICAgICB3aW4zMi9W
UzIwMTUvdGVzdF9vcHVzX2RlY29kZS52Y3hwcm9qLmZpbHRlcnMgXAotICAgICAgICAgICAgIHdp
bjMyL1ZTMjAxNS9zaWxrX2ZpeGVkLnZjeHByb2ouZmlsdGVycyBcCiAgICAgICAgICAgICAgd2lu
MzIvVlMyMDE1L29wdXNfZGVtby52Y3hwcm9qLmZpbHRlcnMgXAotICAgICAgICAgICAgIHdpbjMy
L1ZTMjAxNS9zaWxrX2ZpeGVkLnZjeHByb2ogXAogICAgICAgICAgICAgIHdpbjMyL1ZTMjAxNS9v
cHVzLnZjeHByb2ouZmlsdGVycyBcCiAgICAgICAgICAgICAgd2luMzIvVlMyMDE1L3Rlc3Rfb3B1
c19kZWNvZGUudmN4cHJvaiBcCi0gICAgICAgICAgICAgd2luMzIvVlMyMDE1L2NlbHQudmN4cHJv
aiBcCiAgICAgICAgICAgICAgd2luMzIvVlMyMDE1L29wdXMuc2xuIFwKKyAgICAgICAgICAgICB3
aW4zMi9WUzIwMTUvY29tbW9uLnByb3BzIFwKICAgICAgICAgICAgICB3aW4zMi9nZW52ZXJzaW9u
LmJhdCBcCiAgICAgICAgICAgICAgd2luMzIvY29uZmlnLmgKIApAQCAtMjc2LDI3ICszMDcsMzAg
QEAgJChDRUxUX1NPVVJDRVNfQVJNX0FTTTolLnM9JS1nbnUuUyk6ICQodG9wX3NyY2RpcikvY2Vs
dC9hcm0vYXJtMmdudS5wbAogT1BUX1VOSVRfVEVTVF9PQkogPSAkKGNlbHRfdGVzdHNfdGVzdF91
bml0X21hdGhvcHNfU09VUkNFUzouYz0ubykgXAogICAgICAgICAgICAgICAgICAgICAkKGNlbHRf
dGVzdHNfdGVzdF91bml0X3JvdGF0aW9uX1NPVVJDRVM6LmM9Lm8pIFwKICAgICAgICAgICAgICAg
ICAgICAgJChjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9tZGN0X1NPVVJDRVM6LmM9Lm8pIFwKLSAgICAg
ICAgICAgICAgICAgICAgJChjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9kZnRfU09VUkNFUzouYz0ubykK
KyAgICAgICAgICAgICAgICAgICAgJChjZWx0X3Rlc3RzX3Rlc3RfdW5pdF9kZnRfU09VUkNFUzou
Yz0ubykgXAorICAgICAgICAgICAgICAgICAgICAkKHNpbGtfdGVzdHNfdGVzdF91bml0X0xQQ19p
bnZfcHJlZF9nYWluX1NPVVJDRVM6LmM9Lm8pCiAKIGlmIEhBVkVfU1NFCiBTU0VfT0JKID0gJChD
RUxUX1NPVVJDRVNfU1NFOi5jPS5sbykKLSQoU1NFX09CSikgJChPUFRfVU5JVF9URVNUX09CSik6
IENGTEFHUyArPSAkKE9QVVNfWDg2X1NTRV9DRkxBR1MpCiskKFNTRV9PQkopOiBDRkxBR1MgKz0g
JChPUFVTX1g4Nl9TU0VfQ0ZMQUdTKQogZW5kaWYKIAogaWYgSEFWRV9TU0UyCiBTU0UyX09CSiA9
ICQoQ0VMVF9TT1VSQ0VTX1NTRTI6LmM9LmxvKQotJChTU0UyX09CSikgJChPUFRfVU5JVF9URVNU
X09CSik6IENGTEFHUyArPSAkKE9QVVNfWDg2X1NTRTJfQ0ZMQUdTKQorJChTU0UyX09CSik6IENG
TEFHUyArPSAkKE9QVVNfWDg2X1NTRTJfQ0ZMQUdTKQogZW5kaWYKIAogaWYgSEFWRV9TU0U0XzEK
IFNTRTRfMV9PQkogPSAkKENFTFRfU09VUkNFU19TU0U0XzE6LmM9LmxvKSBcCiAgICAgICAgICAg
ICAgJChTSUxLX1NPVVJDRVNfU1NFNF8xOi5jPS5sbykgXAogICAgICAgICAgICAgICQoU0lMS19T
T1VSQ0VTX0ZJWEVEX1NTRTRfMTouYz0ubG8pCi0kKFNTRTRfMV9PQkopICQoT1BUX1VOSVRfVEVT
VF9PQkopOiBDRkxBR1MgKz0gJChPUFVTX1g4Nl9TU0U0XzFfQ0ZMQUdTKQorJChTU0U0XzFfT0JK
KTogQ0ZMQUdTICs9ICQoT1BVU19YODZfU1NFNF8xX0NGTEFHUykKIGVuZGlmCiAKIGlmIEhBVkVf
QVJNX05FT05fSU5UUgotQVJNX05FT05fSU5UUl9PQkogPSAkKENFTFRfU09VUkNFU19BUk1fTkVP
Tl9JTlRSOi5jPS5sbykgJChTSUxLX1NPVVJDRVNfQVJNX05FT05fSU5UUjouYz0ubG8pCi0kKEFS
TV9ORU9OX0lOVFJfT0JKKSAkKE9QVF9VTklUX1RFU1RfT0JKKTogQ0ZMQUdTICs9IFwKK0FSTV9O
RU9OX0lOVFJfT0JKID0gJChDRUxUX1NPVVJDRVNfQVJNX05FT05fSU5UUjouYz0ubG8pIFwKKyAg
ICAgICAgICAgICAgICAgICAgJChTSUxLX1NPVVJDRVNfQVJNX05FT05fSU5UUjouYz0ubG8pIFwK
KyAgICAgICAgICAgICAgICAgICAgJChTSUxLX1NPVVJDRVNfRklYRURfQVJNX05FT05fSU5UUjou
Yz0ubG8pCiskKEFSTV9ORU9OX0lOVFJfT0JKKTogQ0ZMQUdTICs9IFwKICAkKE9QVVNfQVJNX05F
T05fSU5UUl9DRkxBR1MpICAkKE5FMTBfQ0ZMQUdTKQogZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvTWFrZWZp
bGUubWlwcyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvTWFrZWZpbGUubWlwcwppbmRleCA1NmE1MDYyMzhmNjQ2YTY3MjU0N2MzNDU2YTRk
NWFhYWYzNDI4MjY3Li5kMjVhZjhjYmMyOGU1ZTY5ZjUzZmU4N2IyNWYyNThiYTM4NWY1ZDI5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL01ha2VmaWxlLm1pcHMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS5taXBzCkBAIC05OSw3ICs5OSw3
IEBAIFRFU1RPUFVTQVBJX09CSlMgOj0gJChwYXRzdWJzdCAlLmMsJSQoT0JKU1VGRklYKSwkKFRF
U1RPUFVTQVBJX1NSQ1NfQykpCiBURVNUT1BVU0RFQ09ERV9TUkNTX0MgPSB0ZXN0cy90ZXN0X29w
dXNfZGVjb2RlLmMKIFRFU1RPUFVTREVDT0RFX09CSlMgOj0gJChwYXRzdWJzdCAlLmMsJSQoT0JK
U1VGRklYKSwkKFRFU1RPUFVTREVDT0RFX1NSQ1NfQykpCiAKLVRFU1RPUFVTRU5DT0RFX1NSQ1Nf
QyA9IHRlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYworVEVTVE9QVVNFTkNPREVfU1JDU19DID0gdGVz
dHMvdGVzdF9vcHVzX2VuY29kZS5jIHRlc3RzL29wdXNfZW5jb2RlX3JlZ3Jlc3Npb25zLmMKIFRF
U1RPUFVTRU5DT0RFX09CSlMgOj0gJChwYXRzdWJzdCAlLmMsJSQoT0JKU1VGRklYKSwkKFRFU1RP
UFVTRU5DT0RFX1NSQ1NfQykpCiAKIFRFU1RPUFVTUEFERElOR19TUkNTX0MgPSB0ZXN0cy90ZXN0
X29wdXNfcGFkZGluZy5jCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLnVuaXggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL01ha2VmaWxlLnVuaXgK
aW5kZXggYjEzMjMwZThmYmViZjVlYTk0YTU1N2UxOTNjMGQ1YTU3MjRmZDQ1Yy4uOTBhNDhmMGNj
MGU5MmU1MTRmMjcwYmIyYWY1NTJmZTZmNjZiM2U0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9NYWtlZmlsZS51bml4
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvTWFrZWZpbGUudW5peApAQCAtOTcsNyArOTcsNyBAQCBURVNUT1BVU0FQSV9PQkpTIDo9
ICQocGF0c3Vic3QgJS5jLCUkKE9CSlNVRkZJWCksJChURVNUT1BVU0FQSV9TUkNTX0MpKQogVEVT
VE9QVVNERUNPREVfU1JDU19DID0gdGVzdHMvdGVzdF9vcHVzX2RlY29kZS5jCiBURVNUT1BVU0RF
Q09ERV9PQkpTIDo9ICQocGF0c3Vic3QgJS5jLCUkKE9CSlNVRkZJWCksJChURVNUT1BVU0RFQ09E
RV9TUkNTX0MpKQogCi1URVNUT1BVU0VOQ09ERV9TUkNTX0MgPSB0ZXN0cy90ZXN0X29wdXNfZW5j
b2RlLmMKK1RFU1RPUFVTRU5DT0RFX1NSQ1NfQyA9IHRlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYyB0
ZXN0cy9vcHVzX2VuY29kZV9yZWdyZXNzaW9ucy5jCiBURVNUT1BVU0VOQ09ERV9PQkpTIDo9ICQo
cGF0c3Vic3QgJS5jLCUkKE9CSlNVRkZJWCksJChURVNUT1BVU0VOQ09ERV9TUkNTX0MpKQogCiBU
RVNUT1BVU1BBRERJTkdfU1JDU19DID0gdGVzdHMvdGVzdF9vcHVzX3BhZGRpbmcuYwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9SRUFETUUgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL1JFQURNRQppbmRleCBhYzYyNjRlYzI5MjM4MzllMDI5NDVlOGVhYTI2ODRl
MzU4MGU0Y2YxLi45YTA2ODExNjU0YjVjMjMzODIzYTA5NzQyNjY4MzUzMTM0MWE2ZDIyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL1JFQURNRQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL1JFQURNRQpAQCAtNDMsMjUgKzQzLDQzIEBAIG9yIG9uIHRoZSBt
YWluIE9wdXMgd2Vic2l0ZToKIAogVG8gYnVpbGQgZnJvbSBhIGRpc3RyaWJ1dGlvbiB0YXJiYWxs
LCB5b3Ugb25seSBuZWVkIHRvIGRvIHRoZSBmb2xsb3dpbmc6CiAKLSUgLi9jb25maWd1cmUKLSUg
bWFrZQorICAgICUgLi9jb25maWd1cmUKKyAgICAlIG1ha2UKIAogVG8gYnVpbGQgZnJvbSB0aGUg
Z2l0IHJlcG9zaXRvcnksIHRoZSBmb2xsb3dpbmcgc3RlcHMgYXJlIG5lY2Vzc2FyeToKIAorMCkg
U2V0IHVwIGEgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQ6CisKK09uIGFuIFVidW50dSBvciBEZWJp
YW4gZmFtaWx5IExpbnV4IGRpc3RyaWJ1dGlvbjoKKworICAgICUgc3VkbyBhcHQtZ2V0IGluc3Rh
bGwgZ2l0IGF1dG9jb25mIGF1dG9tYWtlIGxpYnRvb2wgZ2NjIG1ha2UKKworT24gYSBGZWRvcmEv
UmVkaGF0IGJhc2VkIExpbnV4OgorCisgICAgJSBzdWRvIGRuZiBpbnN0YWxsIGdpdCBhdXRvY29u
ZiBhdXRvbWFrZSBsaWJ0b29sIGdjYyBtYWtlCisKK09yIGZvciBvbGRlciBSZWRoYXQvQ2VudG9z
IExpbnV4IHJlbGVhc2VzOgorCisgICAgJSBzdWRvIHl1bSBpbnN0YWxsIGdpdCBhdXRvY29uZiBh
dXRvbWFrZSBsaWJ0b29sIGdjYyBtYWtlCisKK09uIEFwcGxlIG1hY09TLCBpbnN0YWxsIFhjb2Rl
IGFuZCBicmV3LnNoLCB0aGVuIGluIHRoZSBUZXJtaW5hbCBlbnRlcjoKKworICAgICUgYnJldyBp
bnN0YWxsIGF1dG9jb25mIGF1dG9tYWtlIGxpYnRvb2wKKwogMSkgQ2xvbmUgdGhlIHJlcG9zaXRv
cnk6CiAKLSUgZ2l0IGNsb25lIGh0dHBzOi8vZ2l0LnhpcGgub3JnL29wdXMuZ2l0Ci0lIGNkIG9w
dXMKKyAgICAlIGdpdCBjbG9uZSBodHRwczovL2dpdC54aXBoLm9yZy9vcHVzLmdpdAorICAgICUg
Y2Qgb3B1cwogCiAyKSBDb21waWxpbmcgdGhlIHNvdXJjZQogCi0lIC4vYXV0b2dlbi5zaAotJSAu
L2NvbmZpZ3VyZQotJSBtYWtlCisgICAgJSAuL2F1dG9nZW4uc2gKKyAgICAlIC4vY29uZmlndXJl
CisgICAgJSBtYWtlCiAKIDMpIEluc3RhbGwgdGhlIGNvZGVjIGxpYnJhcmllcyAob3B0aW9uYWwp
CiAKLSUgc3VkbyBtYWtlIGluc3RhbGwKKyAgICAlIHN1ZG8gbWFrZSBpbnN0YWxsCiAKIE9uY2Ug
eW91IGhhdmUgY29tcGlsZWQgdGhlIGNvZGVjLCB0aGVyZSB3aWxsIGJlIGEgb3B1c19kZW1vIGV4
ZWN1dGFibGUKIGluIHRoZSB0b3AgZGlyZWN0b3J5LgpAQCAtMTAyLDcgKzEyMCw4IEBAIHdoaWNo
IFNIT1VMRCBiZSBydW4gYWZ0ZXIgY29tcGlsaW5nIHRoZSBwYWNrYWdlIGVzcGVjaWFsbHkgdGhl
IGZpcnN0CiB0aW1lIGl0IGlzIHJ1biBvbiBhIG5ldyBwbGF0Zm9ybS4KIAogVG8gcnVuIHRoZSBp
bnRlZ3JhdGVkIHRlc3RzOgotJSBtYWtlIGNoZWNrCisKKyAgICAlIG1ha2UgY2hlY2sKIAogVGhl
cmUgaXMgYWxzbyBjb2xsZWN0aW9uIG9mIHN0YW5kYXJkIHRlc3QgdmVjdG9ycyB3aGljaCBhcmUg
bm90CiBpbmNsdWRlZCBpbiB0aGlzIHBhY2thZ2UgZm9yIHNpemUgcmVhc29ucyBidXQgY2FuIGJl
IG9idGFpbmVkIGZyb206CkBAIC0xMTAsOSArMTI5LDkgQEAgaHR0cHM6Ly9vcHVzLWNvZGVjLm9y
Zy90ZXN0dmVjdG9ycy9vcHVzX3Rlc3R2ZWN0b3JzLnRhci5negogCiBUbyBydW4gY29tcGFyZSB0
aGUgY29kZSB0byB0aGVzZSB0ZXN0IHZlY3RvcnM6CiAKLSUgY3VybCAtTyBodHRwczovL29wdXMt
Y29kZWMub3JnL3Rlc3R2ZWN0b3JzL29wdXNfdGVzdHZlY3RvcnMudGFyLmd6Ci0lIHRhciAtenhm
IG9wdXNfdGVzdHZlY3RvcnMudGFyLmd6Ci0lIC4vdGVzdHMvcnVuX3ZlY3RvcnMuc2ggLi8gb3B1
c190ZXN0dmVjdG9ycyA0ODAwMAorICAgICUgY3VybCAtT0wgaHR0cHM6Ly9vcHVzLWNvZGVjLm9y
Zy90ZXN0dmVjdG9ycy9vcHVzX3Rlc3R2ZWN0b3JzLnRhci5negorICAgICUgdGFyIC16eGYgb3B1
c190ZXN0dmVjdG9ycy50YXIuZ3oKKyAgICAlIC4vdGVzdHMvcnVuX3ZlY3RvcnMuc2ggLi8gb3B1
c190ZXN0dmVjdG9ycyA0ODAwMAogCiA9PSBQb3J0YWJpbGl0eSBub3RlcyA9PQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL1JFQURNRS5kcmFmdCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvUkVBRE1FLmRyYWZ0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhkOGUyNGRmMjJmZjg0
YTZkMWEyYjlhZTY2OTE4N2ZiMjg3YTMyNGIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL1JFQURNRS5kcmFm
dApAQCAtMCwwICsxLDU0IEBACitUbyBidWlsZCB0aGlzIHNvdXJjZSBjb2RlLCBzaW1wbHkgdHlw
ZToKKworJSBtYWtlCisKK0lmIHRoaXMgZG9lcyBub3Qgd29yaywgb3IgaWYgeW91IHdhbnQgdG8g
Y2hhbmdlIHRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24KKyhlLmcuLCB0byBjb21waWxlIGZvciBh
IGZpeGVkLXBvaW50IGFyY2hpdGVjdHVyZSksIHNpbXBseSBlZGl0IHRoZSBvcHRpb25zCitpbiB0
aGUgTWFrZWZpbGUuCisKK0FuIHVwLXRvLWRhdGUgaW1wbGVtZW50YXRpb24gY29uZm9ybWluZyB0
byB0aGlzIHN0YW5kYXJkIGlzIGF2YWlsYWJsZSBpbiBhCitHaXQgcmVwb3NpdG9yeSBhdCBodHRw
czovL2dpdC54aXBoLm9yZy9vcHVzLmdpdCBvciBvbiBhIHdlYnNpdGUgYXQ6CitodHRwczovL29w
dXMtY29kZWMub3JnLworSG93ZXZlciwgYWx0aG91Z2ggdGhhdCBpbXBsZW1lbnRhdGlvbiBpcyBl
eHBlY3RlZCB0byByZW1haW4gY29uZm9ybWFudAord2l0aCB0aGUgc3RhbmRhcmQsIGl0IGlzIHRo
ZSBjb2RlIGluIHRoaXMgUkZDIHRoYXQgc2hhbGwgcmVtYWluIG5vcm1hdGl2ZS4KK1RvIGJ1aWxk
IGZyb20gdGhlIGdpdCByZXBvc2l0b3J5IGluc3RlYWQgb2YgdXNpbmcgdGhpcyBSRkMsIGZvbGxv
dyB0aGVzZQorc3RlcHM6CisKKzEpIENsb25lIHRoZSByZXBvc2l0b3J5IChsYXRlc3QgaW1wbGVt
ZW50YXRpb24gb2YgdGhpcyBzdGFuZGFyZCBhdCB0aGUgdGltZQorb2YgcHVibGljYXRpb24pCisK
KyUgZ2l0IGNsb25lIGh0dHBzOi8vZ2l0LnhpcGgub3JnL29wdXMuZ2l0CislIGNkIG9wdXMKKwor
MikgQ29tcGlsZQorCislIC4vYXV0b2dlbi5zaAorJSAuL2NvbmZpZ3VyZQorJSBtYWtlCisKK09u
Y2UgeW91IGhhdmUgY29tcGlsZWQgdGhlIGNvZGVjLCB0aGVyZSB3aWxsIGJlIGEgb3B1c19kZW1v
IGV4ZWN1dGFibGUgaW4KK3RoZSB0b3AgZGlyZWN0b3J5LgorCitVc2FnZTogb3B1c19kZW1vIFst
ZV0gPGFwcGxpY2F0aW9uPiA8c2FtcGxpbmcgcmF0ZSAoSHopPiA8Y2hhbm5lbHMgKDEvMik+Cisg
ICAgICAgICA8Yml0cyBwZXIgc2Vjb25kPiBbb3B0aW9uc10gPGlucHV0PiA8b3V0cHV0PgorICAg
ICAgIG9wdXNfZGVtbyAtZCA8c2FtcGxpbmcgcmF0ZSAoSHopPiA8Y2hhbm5lbHMgKDEvMik+IFtv
cHRpb25zXQorICAgICAgICAgPGlucHV0PiA8b3V0cHV0PgorCittb2RlOiB2b2lwIHwgYXVkaW8g
fCByZXN0cmljdGVkLWxvd2RlbGF5CitvcHRpb25zOgorLWUgICAgICAgICAgICAgICAgICAgOiBv
bmx5IHJ1bnMgdGhlIGVuY29kZXIgKG91dHB1dCB0aGUgYml0LXN0cmVhbSkKKy1kICAgICAgICAg
ICAgICAgICAgIDogb25seSBydW5zIHRoZSBkZWNvZGVyIChyZWFkcyB0aGUgYml0LXN0cmVhbSBh
cyBpbnB1dCkKKy1jYnIgICAgICAgICAgICAgICAgIDogZW5hYmxlIGNvbnN0YW50IGJpdHJhdGU7
IGRlZmF1bHQ6IHZhcmlhYmxlIGJpdHJhdGUKKy1jdmJyICAgICAgICAgICAgICAgIDogZW5hYmxl
IGNvbnN0cmFpbmVkIHZhcmlhYmxlIGJpdHJhdGU7IGRlZmF1bHQ6IHVuY29uc3RyYWluZWQKKy1i
YW5kd2lkdGggPE5CfE1CfFdCfFNXQnxGQj4gOiBhdWRpbyBiYW5kd2lkdGggKGZyb20gbmFycm93
YmFuZCB0byBmdWxsYmFuZCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVs
dDogc2FtcGxpbmcgcmF0ZQorLWZyYW1lc2l6ZSA8Mi41fDV8MTB8MjB8NDB8NjA+IDogZnJhbWUg
c2l6ZSBpbiBtczsgZGVmYXVsdDogMjAKKy1tYXhfcGF5bG9hZCA8Ynl0ZXM+IDogbWF4aW11bSBw
YXlsb2FkIHNpemUgaW4gYnl0ZXMsIGRlZmF1bHQ6IDEwMjQKKy1jb21wbGV4aXR5IDxjb21wPiAg
IDogY29tcGxleGl0eSwgMCAobG93ZXN0KSAuLi4gMTAgKGhpZ2hlc3QpOyBkZWZhdWx0OiAxMAor
LWluYmFuZGZlYyAgICAgICAgICAgOiBlbmFibGUgU0lMSyBpbmJhbmQgRkVDCistZm9yY2Vtb25v
ICAgICAgICAgICA6IGZvcmNlIG1vbm8gZW5jb2RpbmcsIGV2ZW4gZm9yIHN0ZXJlbyBpbnB1dAor
LWR0eCAgICAgICAgICAgICAgICAgOiBlbmFibGUgU0lMSyBEVFgKKy1sb3NzIDxwZXJjPiAgICAg
ICAgIDogc2ltdWxhdGUgcGFja2V0IGxvc3MsIGluIHBlcmNlbnQgKDAtMTAwKTsgZGVmYXVsdDog
MAorCitpbnB1dCBhbmQgb3V0cHV0IGFyZSBsaXR0bGUgZW5kaWFuIHNpZ25lZCAxNi1iaXQgUENN
IGZpbGVzIG9yIG9wdXMgYml0c3RyZWFtcword2l0aCBzaW1wbGUgb3B1c19kZW1vIHByb3ByaWV0
YXJ5IGZyYW1pbmcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2F1dG9nZW4uc2ggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2F1dG9nZW4uc2gKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMzgwZDFmM2NhNmRjY2JjNDcxZWNmMmRlYWRlODM2ZDhlZDhmMmEyMAotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvYXV0b2dlbi5zaApAQCAtMCwwICsxLDE0IEBACisjIS9iaW4vc2gKKyMgQ29weXJpZ2h0
IChjKSAyMDEwLTIwMTUgWGlwaC5PcmcgRm91bmRhdGlvbiBhbmQgY29udHJpYnV0b3JzLgorIyBV
c2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNl
IHRoYXQgY2FuIGJlCisjIGZvdW5kIGluIHRoZSBDT1BZSU5HIGZpbGUuCisKKyMgUnVuIHRoaXMg
dG8gc2V0IHVwIHRoZSBidWlsZCBzeXN0ZW06IGNvbmZpZ3VyZSwgbWFrZWZpbGVzLCBldGMuCitz
ZXQgLWUKKworc3JjZGlyPWBkaXJuYW1lICQwYAordGVzdCAtbiAiJHNyY2RpciIgJiYgY2QgIiRz
cmNkaXIiCisKK2VjaG8gIlVwZGF0aW5nIGJ1aWxkIGNvbmZpZ3VyYXRpb24gZmlsZXMsIHBsZWFz
ZSB3YWl0Li4uLiIKKworYXV0b3JlY29uZiAtaXNmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvX2tpc3NfZmZ0
X2d1dHMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9fa2lzc19mZnRfZ3V0cy5oCmluZGV4IDVlM2Q1OGZkNjY0MWU1M2RmYjU2
YTJmMzJkNThjOGNkOTcxN2E0N2YuLjE3MzkyYjNlOTA5NzdiNzQwNDkwNDliN2ZhMDFhOWY4Y2Iw
ZmMwOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9fa2lzc19mZnRfZ3V0cy5oCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9fa2lzc19m
ZnRfZ3V0cy5oCkBAIC01OCwxMiArNTgsMTIgQEAKICMgICBkZWZpbmUgU19NVUwoYSxiKSBNVUxU
MTZfMzJfUTE1KGIsIGEpCiAKICMgICBkZWZpbmUgQ19NVUwobSxhLGIpIFwKLSAgICAgIGRveyAo
bSkuciA9IFNVQjMyKFNfTVVMKChhKS5yLChiKS5yKSAsIFNfTVVMKChhKS5pLChiKS5pKSk7IFwK
LSAgICAgICAgICAobSkuaSA9IEFERDMyKFNfTVVMKChhKS5yLChiKS5pKSAsIFNfTVVMKChhKS5p
LChiKS5yKSk7IH13aGlsZSgwKQorICAgICAgZG97IChtKS5yID0gU1VCMzJfb3ZmbHcoU19NVUwo
KGEpLnIsKGIpLnIpICwgU19NVUwoKGEpLmksKGIpLmkpKTsgXAorICAgICAgICAgIChtKS5pID0g
QUREMzJfb3ZmbHcoU19NVUwoKGEpLnIsKGIpLmkpICwgU19NVUwoKGEpLmksKGIpLnIpKTsgfXdo
aWxlKDApCiAKICMgICBkZWZpbmUgQ19NVUxDKG0sYSxiKSBcCi0gICAgICBkb3sgKG0pLnIgPSBB
REQzMihTX01VTCgoYSkuciwoYikucikgLCBTX01VTCgoYSkuaSwoYikuaSkpOyBcCi0gICAgICAg
ICAgKG0pLmkgPSBTVUIzMihTX01VTCgoYSkuaSwoYikucikgLCBTX01VTCgoYSkuciwoYikuaSkp
OyB9d2hpbGUoMCkKKyAgICAgIGRveyAobSkuciA9IEFERDMyX292Zmx3KFNfTVVMKChhKS5yLChi
KS5yKSAsIFNfTVVMKChhKS5pLChiKS5pKSk7IFwKKyAgICAgICAgICAobSkuaSA9IFNVQjMyX292
Zmx3KFNfTVVMKChhKS5pLChiKS5yKSAsIFNfTVVMKChhKS5yLChiKS5pKSk7IH13aGlsZSgwKQog
CiAjICAgZGVmaW5lIENfTVVMQllTQ0FMQVIoIGMsIHMgKSBcCiAgICAgICBkb3sgKGMpLnIgPSAg
U19NVUwoIChjKS5yICwgcyApIDtcCkBAIC03NywxNyArNzcsMTcgQEAKICAgICAgICAgICAgICAg
ICBESVZTQ0FMQVIoIChjKS5pICAsIGRpdik7IH13aGlsZSAoMCkKIAogI2RlZmluZSAgQ19BREQo
IHJlcywgYSxiKVwKLSAgICBkbyB7KHJlcykucj1BREQzMigoYSkuciwoYikucik7ICAocmVzKS5p
PUFERDMyKChhKS5pLChiKS5pKTsgXAorICAgIGRvIHsocmVzKS5yPUFERDMyX292Zmx3KChhKS5y
LChiKS5yKTsgIChyZXMpLmk9QUREMzJfb3ZmbHcoKGEpLmksKGIpLmkpOyBcCiAgICAgfXdoaWxl
KDApCiAjZGVmaW5lICBDX1NVQiggcmVzLCBhLGIpXAotICAgIGRvIHsocmVzKS5yPVNVQjMyKChh
KS5yLChiKS5yKTsgIChyZXMpLmk9U1VCMzIoKGEpLmksKGIpLmkpOyBcCisgICAgZG8geyhyZXMp
LnI9U1VCMzJfb3ZmbHcoKGEpLnIsKGIpLnIpOyAgKHJlcykuaT1TVUIzMl9vdmZsdygoYSkuaSwo
YikuaSk7IFwKICAgICB9d2hpbGUoMCkKICNkZWZpbmUgQ19BRERUTyggcmVzICwgYSlcCi0gICAg
ZG8geyhyZXMpLnIgPSBBREQzMigocmVzKS5yLCAoYSkucik7ICAocmVzKS5pID0gQUREMzIoKHJl
cykuaSwoYSkuaSk7XAorICAgIGRvIHsocmVzKS5yID0gQUREMzJfb3ZmbHcoKHJlcykuciwgKGEp
LnIpOyAgKHJlcykuaSA9IEFERDMyX292Zmx3KChyZXMpLmksKGEpLmkpO1wKICAgICB9d2hpbGUo
MCkKIAogI2RlZmluZSBDX1NVQkZST00oIHJlcyAsIGEpXAotICAgIGRvIHsocmVzKS5yID0gQURE
MzIoKHJlcykuciwoYSkucik7ICAocmVzKS5pID0gU1VCMzIoKHJlcykuaSwoYSkuaSk7IFwKKyAg
ICBkbyB7KHJlcykuciA9IEFERDMyX292Zmx3KChyZXMpLnIsKGEpLnIpOyAgKHJlcykuaSA9IFNV
QjMyX292Zmx3KChyZXMpLmksKGEpLmkpOyBcCiAgICAgfXdoaWxlKDApCiAKICNpZiBkZWZpbmVk
KE9QVVNfQVJNX0lOTElORV9BU00pCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJjaC5oIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FyY2gu
aAppbmRleCA4Y2VhYjVmZTEwZTkzNDExMzU5MmFkZTkzMzk5Mzk3NzFmNGEyYTAxLi5kMWU2NDU3
YzU0YTA3YzZlYzVjM2EwMzA1MTBkYThhYjQyMzU1MDA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJjaC5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC9hcmNoLmgKQEAgLTQ2LDYgKzQ2LDE0IEBACiAjICBlbmRpZgogIyBlbmRpZgog
CisjaWYgT1BVU19HTlVDX1BSRVJFUSgzLCAwKQorI2RlZmluZSBvcHVzX2xpa2VseSh4KSAgICAg
ICAoX19idWlsdGluX2V4cGVjdCghISh4KSwgMSkpCisjZGVmaW5lIG9wdXNfdW5saWtlbHkoeCkg
ICAgIChfX2J1aWx0aW5fZXhwZWN0KCEhKHgpLCAwKSkKKyNlbHNlCisjZGVmaW5lIG9wdXNfbGlr
ZWx5KHgpICAgICAgICghISh4KSkKKyNkZWZpbmUgb3B1c191bmxpa2VseSh4KSAgICAgKCEhKHgp
KQorI2VuZGlmCisKICNkZWZpbmUgQ0VMVF9TSUdfU0NBTEUgMzI3NjguZgogCiAjZGVmaW5lIGNl
bHRfZmF0YWwoc3RyKSBfY2VsdF9mYXRhbChzdHIsIF9fRklMRV9fLCBfX0xJTkVfXyk7CkBAIC05
Myw2ICsxMDEsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBfY2VsdF9mYXRhbChjb25zdCBj
aGFyICpzdHIsIGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lKQogCiB0eXBlZGVmIG9wdXNfaW50
MTYgb3B1c192YWwxNjsKIHR5cGVkZWYgb3B1c19pbnQzMiBvcHVzX3ZhbDMyOwordHlwZWRlZiBv
cHVzX2ludDY0IG9wdXNfdmFsNjQ7CiAKIHR5cGVkZWYgb3B1c192YWwzMiBjZWx0X3NpZzsKIHR5
cGVkZWYgb3B1c192YWwxNiBjZWx0X25vcm07CkBAIC0xMDEsNiArMTEwLDkgQEAgdHlwZWRlZiBv
cHVzX3ZhbDMyIGNlbHRfZW5lcjsKICNkZWZpbmUgUTE1T05FIDMyNzY3CiAKICNkZWZpbmUgU0lH
X1NISUZUIDEyCisvKiBTYWZlIHNhdHVyYXRpb24gdmFsdWUgZm9yIDMyLWJpdCBzaWduYWxzLiBT
aG91bGQgYmUgbGVzcyB0aGFuCisgICAyXjMxKigxLTAuODUpIHRvIGF2b2lkIGJsb3dpbmcgdXAg
b24gREMgYXQgZGVlbXBoYXNpcy4qLworI2RlZmluZSBTSUdfU0FUICgzMDAwMDAwMDApCiAKICNk
ZWZpbmUgTk9STV9TQ0FMSU5HIDE2Mzg0CiAKQEAgLTE0Nyw2ICsxNTksNyBAQCBzdGF0aWMgT1BV
U19JTkxJTkUgb3B1c19pbnQxNiBTQVQxNihvcHVzX2ludDMyIHgpIHsKIAogdHlwZWRlZiBmbG9h
dCBvcHVzX3ZhbDE2OwogdHlwZWRlZiBmbG9hdCBvcHVzX3ZhbDMyOwordHlwZWRlZiBmbG9hdCBv
cHVzX3ZhbDY0OwogCiB0eXBlZGVmIGZsb2F0IGNlbHRfc2lnOwogdHlwZWRlZiBmbG9hdCBjZWx0
X25vcm07CkBAIC0xODYsNiArMTk5LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIGludCBjZWx0X2lz
bmFuKGZsb2F0IHgpCiAKICNkZWZpbmUgTkVHMTYoeCkgKC0oeCkpCiAjZGVmaW5lIE5FRzMyKHgp
ICgtKHgpKQorI2RlZmluZSBORUczMl9vdmZsdyh4KSAoLSh4KSkKICNkZWZpbmUgRVhUUkFDVDE2
KHgpICh4KQogI2RlZmluZSBFWFRFTkQzMih4KSAoeCkKICNkZWZpbmUgU0hSMTYoYSxzaGlmdCkg
KGEpCkBAIC0yMDIsNiArMjE2LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIGludCBjZWx0X2lzbmFu
KGZsb2F0IHgpCiAjZGVmaW5lIFNBVFVSQVRFMTYoeCkgICAoeCkKIAogI2RlZmluZSBST1VORDE2
KGEsc2hpZnQpICAoYSkKKyNkZWZpbmUgU1JPVU5EMTYoYSxzaGlmdCkgKGEpCiAjZGVmaW5lIEhB
TEYxNih4KSAgICAgICAoLjVmKih4KSkKICNkZWZpbmUgSEFMRjMyKHgpICAgICAgICguNWYqKHgp
KQogCkBAIC0yMDksNiArMjI0LDggQEAgc3RhdGljIE9QVVNfSU5MSU5FIGludCBjZWx0X2lzbmFu
KGZsb2F0IHgpCiAjZGVmaW5lIFNVQjE2KGEsYikgKChhKS0oYikpCiAjZGVmaW5lIEFERDMyKGEs
YikgKChhKSsoYikpCiAjZGVmaW5lIFNVQjMyKGEsYikgKChhKS0oYikpCisjZGVmaW5lIEFERDMy
X292Zmx3KGEsYikgKChhKSsoYikpCisjZGVmaW5lIFNVQjMyX292Zmx3KGEsYikgKChhKS0oYikp
CiAjZGVmaW5lIE1VTFQxNl8xNl8xNihhLGIpICAgICAoKGEpKihiKSkKICNkZWZpbmUgTVVMVDE2
XzE2KGEsYikgICAgICgob3B1c192YWwzMikoYSkqKG9wdXNfdmFsMzIpKGIpKQogI2RlZmluZSBN
QUMxNl8xNihjLGEsYikgICAgICgoYykrKG9wdXNfdmFsMzIpKGEpKihvcHVzX3ZhbDMyKShiKSkK
QEAgLTI0Myw5ICsyNjAsOSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgaW50IGNlbHRfaXNuYW4oZmxv
YXQgeCkKIAogI2lmbmRlZiBHTE9CQUxfU1RBQ0tfU0laRQogI2lmZGVmIEZJWEVEX1BPSU5UCi0j
ZGVmaW5lIEdMT0JBTF9TVEFDS19TSVpFIDEwMDAwMAorI2RlZmluZSBHTE9CQUxfU1RBQ0tfU0la
RSAxMjAwMDAKICNlbHNlCi0jZGVmaW5lIEdMT0JBTF9TVEFDS19TSVpFIDEwMDAwMAorI2RlZmlu
ZSBHTE9CQUxfU1RBQ0tfU0laRSAxMjAwMDAKICNlbmRpZgogI2VuZGlmCiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9hcm0vYXJtMmdudS5wbCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vYXJtMmdudS5wbAppbmRleCA2YzkyMmFjODE5
ZDdlMDg4OWJkYmI3MmM0ZThiZWM5Y2Y2YmU1ZDRiLi5hMjg5NWY3NDQ1ZTg5NDMzNjY5MTUyZTNj
NDg5MTE2ZDA4NjBhN2I5IDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2FybTJnbnUucGwKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L2FybS9hcm0yZ251LnBsCkBAIC0xNjQsMTEgKzE2NCwxMSBAQCB3aGlsZSAoPD4pIHsKICAgICAg
ICAgJHByZWZpeCA9ICIiOwogICAgICAgICBpZiAoJHByb2MpCiAgICAgICAgIHsKLSAgICAgICAg
ICAgICRwcmVmaXggPSAkcHJlZml4LnNwcmludGYoIlx0LnR5cGVcdCVzLCAlJWZ1bmN0aW9uOyAi
LCRwcm9jKSB1bmxlc3MgKCRhcHBsZSk7CisgICAgICAgICAgICAkcHJlZml4ID0gJHByZWZpeC5z
cHJpbnRmKCJcdC50eXBlXHQlcywgJSVmdW5jdGlvbiIsICRwcm9jKSB1bmxlc3MgKCRhcHBsZSk7
CiAgICAgICAgICAgICAjIE1ha2Ugc3VyZSB3ZSAkcHJlZml4IGlzbid0IGVtcHR5IGhlcmUgKGZv
ciB0aGUgJGFwcGxlIGNhc2UpLgogICAgICAgICAgICAgIyBXZSBoYW5kbGUgbWFuZ2xpbmcgdGhl
IGxhYmVsIGhlcmUsIG1ha2Ugc3VyZSBpdCBkb2Vzbid0IG1hdGNoCiAgICAgICAgICAgICAjIHRo
ZSBsYWJlbCBoYW5kbGluZyBiZWxvdyAoaWYgJHByZWZpeCB3b3VsZCBiZSBlbXB0eSkuCi0gICAg
ICAgICAgICAkcHJlZml4ID0gIjsgIjsKKyAgICAgICAgICAgICRwcmVmaXggPSAkcHJlZml4LiI7
ICI7CiAgICAgICAgICAgICBwdXNoKEBwcm9jX3N0YWNrLCAkcHJvYyk7CiAgICAgICAgICAgICBz
L15bQS1aYS16X1wuXVx3Ky8kc3ltcHJlZml4JCY6LzsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L2FybS9hcm1fY2VsdF9tYXAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vYXJtX2NlbHRfbWFwLmMKaW5kZXggNGQ0
ZDA2OWE4NmZjMjc3YWE2MmEwOTA0ZTMxMjU2MDRmYzk2OWNjOS4uY2E5ODhiNjZmNTVkMTdjMTE2
ZjBiN2ExOWRiMWM2YTFiY2I0YjYyMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9hcm1fY2VsdF9tYXAu
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvYXJtL2FybV9jZWx0X21hcC5jCkBAIC0zNSwxMiArMzUsMjkgQEAKIAogI2lm
IGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpCiAKKyMgaWYgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFW
RV9ORU9OX0lOVFIpICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKQorb3B1
c192YWwzMiAoKmNvbnN0IENFTFRfSU5ORVJfUFJPRF9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNv
bnN0IG9wdXNfdmFsMTYgKngsIGNvbnN0IG9wdXNfdmFsMTYgKnksIGludCBOKSA9IHsKKyAgY2Vs
dF9pbm5lcl9wcm9kX2MsICAgLyogQVJNdjQgKi8KKyAgY2VsdF9pbm5lcl9wcm9kX2MsICAgLyog
RURTUCAqLworICBjZWx0X2lubmVyX3Byb2RfYywgICAvKiBNZWRpYSAqLworICBjZWx0X2lubmVy
X3Byb2RfbmVvbiAvKiBORU9OICovCit9OworCit2b2lkICgqY29uc3QgRFVBTF9JTk5FUl9QUk9E
X0lNUExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qgb3B1c192YWwxNiAqeCwgY29uc3Qgb3B1c192
YWwxNiAqeTAxLCBjb25zdCBvcHVzX3ZhbDE2ICp5MDIsCisgICAgICBpbnQgTiwgb3B1c192YWwz
MiAqeHkxLCBvcHVzX3ZhbDMyICp4eTIpID0geworICBkdWFsX2lubmVyX3Byb2RfYywgICAvKiBB
Uk12NCAqLworICBkdWFsX2lubmVyX3Byb2RfYywgICAvKiBFRFNQICovCisgIGR1YWxfaW5uZXJf
cHJvZF9jLCAgIC8qIE1lZGlhICovCisgIGR1YWxfaW5uZXJfcHJvZF9uZW9uIC8qIE5FT04gKi8K
K307CisjIGVuZGlmCisKICMgaWYgZGVmaW5lZChGSVhFRF9QT0lOVCkKICMgIGlmICgoZGVmaW5l
ZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05F
T04pKSB8fCBcCiAgICAgKGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTUVESUEpICYmICFkZWZp
bmVkKE9QVVNfQVJNX1BSRVNVTUVfTUVESUEpKSB8fCBcCiAgICAgKGRlZmluZWQoT1BVU19BUk1f
TUFZX0hBVkVfRURTUCkgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9FRFNQKSkpCiBvcHVz
X3ZhbDMyICgqY29uc3QgQ0VMVF9QSVRDSF9YQ09SUl9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNv
bnN0IG9wdXNfdmFsMTYgKiwKLSAgICBjb25zdCBvcHVzX3ZhbDE2ICosIG9wdXNfdmFsMzIgKiwg
aW50ICwgaW50KSA9IHsKKyAgICBjb25zdCBvcHVzX3ZhbDE2ICosIG9wdXNfdmFsMzIgKiwgaW50
LCBpbnQsIGludCkgPSB7CiAgIGNlbHRfcGl0Y2hfeGNvcnJfYywgICAgICAgICAgICAgICAvKiBB
Uk12NCAqLwogICBNQVlfSEFWRV9FRFNQKGNlbHRfcGl0Y2hfeGNvcnIpLCAgLyogRURTUCAqLwog
ICBNQVlfSEFWRV9NRURJQShjZWx0X3BpdGNoX3hjb3JyKSwgLyogTWVkaWEgKi8KQEAgLTUxLDcg
KzY4LDcgQEAgb3B1c192YWwzMiAoKmNvbnN0IENFTFRfUElUQ0hfWENPUlJfSU1QTFtPUFVTX0FS
Q0hNQVNLKzFdKShjb25zdCBvcHVzX3ZhbDE2ICosCiAjIGVsc2UgLyogIUZJWEVEX1BPSU5UICov
CiAjICBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikgJiYgIWRlZmluZWQo
T1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpCiB2b2lkICgqY29uc3QgQ0VMVF9QSVRDSF9YQ09S
Ul9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNfdmFsMTYgKiwKLSAgICBjb25zdCBv
cHVzX3ZhbDE2ICosIG9wdXNfdmFsMzIgKiwgaW50LCBpbnQpID0geworICAgIGNvbnN0IG9wdXNf
dmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQsIGludCwgaW50KSA9IHsKICAgY2VsdF9waXRjaF94
Y29ycl9jLCAgICAgICAgICAgICAgLyogQVJNdjQgKi8KICAgY2VsdF9waXRjaF94Y29ycl9jLCAg
ICAgICAgICAgICAgLyogRURTUCAqLwogICBjZWx0X3BpdGNoX3hjb3JyX2MsICAgICAgICAgICAg
ICAvKiBNZWRpYSAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0X25lMTBfZmZ0LmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
YXJtL2NlbHRfbmUxMF9mZnQuYwppbmRleCA0MmQ5NmE3MTE3NjBlM2E2ZGRmNGJlNjFjZGY3YmY5
NzFhYTc4YWEzLi5iOGM2MGFiZTk4YjgzNTcxYTBiYzg1ODUwODFhNTdmYWNiNWE1NmE5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvYXJtL2NlbHRfbmUxMF9mZnQuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfbmUxMF9m
ZnQuYwpAQCAtMzYsNyArMzYsNiBAQAogI2VuZGlmCiAjZW5kaWYKIAotI2luY2x1ZGUgPE5FMTBf
aW5pdC5oPgogI2luY2x1ZGUgPE5FMTBfZHNwLmg+CiAjaW5jbHVkZSAib3Nfc3VwcG9ydC5oIgog
I2luY2x1ZGUgImtpc3NfZmZ0LmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfbmVvbl9pbnRy
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvYXJtL2NlbHRfbmVvbl9pbnRyLmMKaW5kZXggNDdiYmUzZGMyMmVjOTNjZmViOTM5
ODI0OGJkMTQ0MTI4YzMzMzk3NS4uY2Y0NDM5ODhjZTVmZTUzMjNiODQ0NWNiNjU2YTk5MWE5OGRh
NTE0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0X25lb25faW50ci5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0v
Y2VsdF9uZW9uX2ludHIuYwpAQCAtMTkxLDEwNyArMTkxLDEwIEBAIHN0YXRpYyB2b2lkIHhjb3Jy
X2tlcm5lbF9uZW9uX2Zsb2F0KGNvbnN0IGZsb2F0MzJfdCAqeCwgY29uc3QgZmxvYXQzMl90ICp5
LAogICAgdnN0MXFfZjMyKHN1bSwgU1VNTSk7CiB9CiAKLS8qCi0gKiBGdW5jdGlvbjogeGNvcnJf
a2VybmVsX25lb25fZmxvYXRfcHJvY2VzczEKLSAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQotICogQ29tcHV0ZXMgc2luZ2xlIGNvcnJlbGF0aW9uIHZhbHVlcyBhbmQgc3RvcmVz
IGluICpzdW0KLSAqLwotc3RhdGljIHZvaWQgeGNvcnJfa2VybmVsX25lb25fZmxvYXRfcHJvY2Vz
czEoY29uc3QgZmxvYXQzMl90ICp4LAotICAgICAgY29uc3QgZmxvYXQzMl90ICp5LCBmbG9hdDMy
X3QgKnN1bSwgaW50IGxlbikgewotICAgZmxvYXQzMng0X3QgWFhbNF07Ci0gICBmbG9hdDMyeDRf
dCBZWVs0XTsKLSAgIGZsb2F0MzJ4Ml90IFhYXzI7Ci0gICBmbG9hdDMyeDJfdCBZWV8yOwotICAg
ZmxvYXQzMng0X3QgU1VNTTsKLSAgIGZsb2F0MzJ4Ml90IFNVTU1fMlsyXTsKLSAgIGNvbnN0IGZs
b2F0MzJfdCAqeGkgPSB4OwotICAgY29uc3QgZmxvYXQzMl90ICp5aSA9IHk7Ci0KLSAgIFNVTU0g
PSB2ZHVwcV9uX2YzMigwKTsKLQotICAgLyogV29yayBvbiAxNiB2YWx1ZXMgcGVyIGl0ZXJhdGlv
biAqLwotICAgd2hpbGUgKGxlbiA+PSAxNikgewotICAgICAgWFhbMF0gPSB2bGQxcV9mMzIoeGkp
OwotICAgICAgeGkgKz0gNDsKLSAgICAgIFhYWzFdID0gdmxkMXFfZjMyKHhpKTsKLSAgICAgIHhp
ICs9IDQ7Ci0gICAgICBYWFsyXSA9IHZsZDFxX2YzMih4aSk7Ci0gICAgICB4aSArPSA0OwotICAg
ICAgWFhbM10gPSB2bGQxcV9mMzIoeGkpOwotICAgICAgeGkgKz0gNDsKLQotICAgICAgWVlbMF0g
PSB2bGQxcV9mMzIoeWkpOwotICAgICAgeWkgKz0gNDsKLSAgICAgIFlZWzFdID0gdmxkMXFfZjMy
KHlpKTsKLSAgICAgIHlpICs9IDQ7Ci0gICAgICBZWVsyXSA9IHZsZDFxX2YzMih5aSk7Ci0gICAg
ICB5aSArPSA0OwotICAgICAgWVlbM10gPSB2bGQxcV9mMzIoeWkpOwotICAgICAgeWkgKz0gNDsK
LQotICAgICAgU1VNTSA9IHZtbGFxX2YzMihTVU1NLCBZWVswXSwgWFhbMF0pOwotICAgICAgU1VN
TSA9IHZtbGFxX2YzMihTVU1NLCBZWVsxXSwgWFhbMV0pOwotICAgICAgU1VNTSA9IHZtbGFxX2Yz
MihTVU1NLCBZWVsyXSwgWFhbMl0pOwotICAgICAgU1VNTSA9IHZtbGFxX2YzMihTVU1NLCBZWVsz
XSwgWFhbM10pOwotICAgICAgbGVuIC09IDE2OwotICAgfQotCi0gICAvKiBXb3JrIG9uIDggdmFs
dWVzICovCi0gICBpZiAobGVuID49IDgpIHsKLSAgICAgIFhYWzBdID0gdmxkMXFfZjMyKHhpKTsK
LSAgICAgIHhpICs9IDQ7Ci0gICAgICBYWFsxXSA9IHZsZDFxX2YzMih4aSk7Ci0gICAgICB4aSAr
PSA0OwotCi0gICAgICBZWVswXSA9IHZsZDFxX2YzMih5aSk7Ci0gICAgICB5aSArPSA0OwotICAg
ICAgWVlbMV0gPSB2bGQxcV9mMzIoeWkpOwotICAgICAgeWkgKz0gNDsKLQotICAgICAgU1VNTSA9
IHZtbGFxX2YzMihTVU1NLCBZWVswXSwgWFhbMF0pOwotICAgICAgU1VNTSA9IHZtbGFxX2YzMihT
VU1NLCBZWVsxXSwgWFhbMV0pOwotICAgICAgbGVuIC09IDg7Ci0gICB9Ci0KLSAgIC8qIFdvcmsg
b24gNCB2YWx1ZXMgKi8KLSAgIGlmIChsZW4gPj0gNCkgewotICAgICAgWFhbMF0gPSB2bGQxcV9m
MzIoeGkpOwotICAgICAgeGkgKz0gNDsKLSAgICAgIFlZWzBdID0gdmxkMXFfZjMyKHlpKTsKLSAg
ICAgIHlpICs9IDQ7Ci0gICAgICBTVU1NID0gdm1sYXFfZjMyKFNVTU0sIFlZWzBdLCBYWFswXSk7
Ci0gICAgICBsZW4gLT0gNDsKLSAgIH0KLQotICAgLyogU3RhcnQgYWNjdW11bGF0aW5nIHJlc3Vs
dHMgKi8KLSAgIFNVTU1fMlswXSA9IHZnZXRfbG93X2YzMihTVU1NKTsKLSAgIGlmIChsZW4gPj0g
MikgewotICAgICAgLyogV2hpbGUgYXQgaXQsIGNvbnN1bWUgMiBtb3JlIHZhbHVlcyBpZiBhdmFp
bGFibGUgKi8KLSAgICAgIFhYXzIgPSB2bGQxX2YzMih4aSk7Ci0gICAgICB4aSArPSAyOwotICAg
ICAgWVlfMiA9IHZsZDFfZjMyKHlpKTsKLSAgICAgIHlpICs9IDI7Ci0gICAgICBTVU1NXzJbMF0g
PSB2bWxhX2YzMihTVU1NXzJbMF0sIFlZXzIsIFhYXzIpOwotICAgICAgbGVuIC09IDI7Ci0gICB9
Ci0gICBTVU1NXzJbMV0gPSB2Z2V0X2hpZ2hfZjMyKFNVTU0pOwotICAgU1VNTV8yWzBdID0gdmFk
ZF9mMzIoU1VNTV8yWzBdLCBTVU1NXzJbMV0pOwotICAgU1VNTV8yWzBdID0gdnBhZGRfZjMyKFNV
TU1fMlswXSwgU1VNTV8yWzBdKTsKLSAgIC8qIE9rLCBub3cgd2UgaGF2ZSByZXN1bHQgYWNjdW11
bGF0ZWQgaW4gU1VNTV8yWzBdLjAgKi8KLQotICAgaWYgKGxlbiA+IDApIHsKLSAgICAgIC8qIENh
c2Ugd2hlbiB5b3UgaGF2ZSBvbmUgdmFsdWUgbGVmdCAqLwotICAgICAgWFhfMiA9IHZsZDFfZHVw
X2YzMih4aSk7Ci0gICAgICBZWV8yID0gdmxkMV9kdXBfZjMyKHlpKTsKLSAgICAgIFNVTU1fMlsw
XSA9IHZtbGFfZjMyKFNVTU1fMlswXSwgWFhfMiwgWVlfMik7Ci0gICB9Ci0KLSAgIHZzdDFfbGFu
ZV9mMzIoc3VtLCBTVU1NXzJbMF0sIDApOwotfQotCiB2b2lkIGNlbHRfcGl0Y2hfeGNvcnJfZmxv
YXRfbmVvbihjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCi0gICAg
ICAgICAgICAgICAgICAgICAgICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9w
aXRjaCkgeworICAgICAgICAgICAgICAgICAgICAgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBs
ZW4sIGludCBtYXhfcGl0Y2gsIGludCBhcmNoKSB7CiAgICBpbnQgaTsKKyAgICh2b2lkKWFyY2g7
CiAgICBjZWx0X2Fzc2VydChtYXhfcGl0Y2ggPiAwKTsKICAgIGNlbHRfYXNzZXJ0KCgoKHVuc2ln
bmVkIGNoYXIgKilfeC0odW5zaWduZWQgY2hhciAqKU5VTEwpJjMpPT0wKTsKIApAQCAtMzAwLDEy
ICsyMDMsOSBAQCB2b2lkIGNlbHRfcGl0Y2hfeGNvcnJfZmxvYXRfbmVvbihjb25zdCBvcHVzX3Zh
bDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCiAgICAgICAgICAgICAoZmxvYXQzMl90ICop
eGNvcnIraSwgbGVuKTsKICAgIH0KIAotICAgLyogSW4gY2FzZSBtYXhfcGl0Y2ggaXNuJ3QgbXVs
dGlwbGUgb2YgNAotICAgICogY29tcHV0ZSBzaW5nbGUgY29ycmVsYXRpb24gdmFsdWUgcGVyIGl0
ZXJhdGlvbgotICAgICovCisgICAvKiBJbiBjYXNlIG1heF9waXRjaCBpc24ndCBhIG11bHRpcGxl
IG9mIDQsIGRvIG5vbi11bnJvbGxlZCB2ZXJzaW9uLiAqLwogICAgZm9yICg7IGkgPCBtYXhfcGl0
Y2g7IGkrKykgewotICAgICAgeGNvcnJfa2VybmVsX25lb25fZmxvYXRfcHJvY2VzczEoKGNvbnN0
IGZsb2F0MzJfdCAqKV94LAotICAgICAgICAgICAgKGNvbnN0IGZsb2F0MzJfdCAqKV95K2ksIChm
bG9hdDMyX3QgKil4Y29ycitpLCBsZW4pOworICAgICAgeGNvcnJbaV0gPSBjZWx0X2lubmVyX3By
b2RfbmVvbihfeCwgX3kraSwgbGVuKTsKICAgIH0KIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L2FybS9jZWx0X3BpdGNoX3hjb3JyX2FybS5zIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9jZWx0X3BpdGNoX3hjb3JyX2Fy
bS5zCmluZGV4IGY5NmUwYTg4YmJlNjA5ZWQ2MzhiMWE0NGI2N2U5MDM4YTNlZDM0NDcuLjZlODcz
YWZjMzcxMjcyNGZlZDgzNzM0YjRiM2NlODE4NGUxOTE5ZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0v
Y2VsdF9waXRjaF94Y29ycl9hcm0ucworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2NlbHRfcGl0Y2hfeGNvcnJfYXJt
LnMKQEAgLTE1Myw3ICsxNTMsNyBAQCB4Y29ycl9rZXJuZWxfbmVvbl9wcm9jZXNzMQogICBFTkRQ
CiAKIDsgb3B1c192YWwzMiBjZWx0X3BpdGNoX3hjb3JyX25lb24ob3B1c192YWwxNiAqX3gsIG9w
dXNfdmFsMTYgKl95LAotOyAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0
Y2gpCis7ICBvcHVzX3ZhbDMyICp4Y29yciwgaW50IGxlbiwgaW50IG1heF9waXRjaCwgaW50IGFy
Y2gpCiBjZWx0X3BpdGNoX3hjb3JyX25lb24gUFJPQwogICA7IGlucHV0OgogICA7ICAgcjAgID0g
b3B1c192YWwxNiAqX3gKQEAgLTE2OCw2ICsxNjgsOCBAQCBjZWx0X3BpdGNoX3hjb3JyX25lb24g
UFJPQwogICA7ICAgcjYgID0gaW50ICAgICAgICAgbWF4X3BpdGNoCiAgIDsgICByMTIgPSBpbnQg
ICAgICAgICBqCiAgIDsgICBxMTUgPSBpbnQgICAgICAgICBtYXhjb3JyWzRdIChxMTUgaXMgbm90
IHVzZWQgYnkgeGNvcnJfa2VybmVsX25lb24oKSkKKyAgOyBpZ25vcmVkOgorICA7ICAgICAgICAg
aW50ICAgICAgICAgYXJjaAogICBTVE1GRCAgICAgICAgc3AhLCB7cjQtcjYsIGxyfQogICBMRFIg
ICAgICAgICAgcjYsIFtzcCwgIzE2XQogICBWTU9WLlMzMiAgICAgcTE1LCAjMQpAQCAtMzU4LDYg
KzM2MCw4IEBAIGNlbHRfcGl0Y2hfeGNvcnJfZWRzcCBQUk9DCiAgIDsgICByOSAgPSBvcHVzX3Zh
bDMyICBzdW0zCiAgIDsgICByMSAgPSBpbnQgICAgICAgICBtYXhfcGl0Y2gKICAgOyAgIHIxMiA9
IGludCAgICAgICAgIGoKKyAgOyBpZ25vcmVkOgorICA7ICAgICAgICAgaW50ICAgICAgICAgYXJj
aAogICBTVE1GRCAgICAgICAgc3AhLCB7cjQtcjExLCBscn0KICAgTU9WICAgICAgICAgIHI1LCBy
MQogICBMRFIgICAgICAgICAgcjEsIFtzcCwgIzM2XQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9mZnRf
YXJtLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvYXJtL2ZmdF9hcm0uaAppbmRleCAwY2I1NWQ4ZTIyZDJiODdlNjljMGU1NTgw
NmRhNDllNThhNThkZmQ0Li4wYjc4MTc1ZjNhOWFhNjMyMDQ1ZjEzZmFmYjIwZDRlOTE3OTlkMmI1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZmdF9hcm0uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZmdF9hcm0uaApA
QCAtMzQsNyArMzQsNiBAQAogI2lmICFkZWZpbmVkKEZGVF9BUk1fSCkKICNkZWZpbmUgRkZUX0FS
TV9ICiAKLSNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJraXNzX2ZmdC5oIgogCiAjaWYg
ZGVmaW5lZChIQVZFX0FSTV9ORTEwKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9maXhlZF9hcm12NC5o
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L2FybS9maXhlZF9hcm12NC5oCmluZGV4IGVmYjNiMTg5NmE4NjZiMWQ1ZWM4NjFmZWRi
YjMzNDU3NWE0NjRjNGQuLmQ4NDg4OGE3NzJhY2Y5Yjg1MzRiOGUwMzBmMjA0MTg5ZGZmZTc0OGMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY2VsdC9hcm0vZml4ZWRfYXJtdjQuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL2ZpeGVkX2Fy
bXY0LmgKQEAgLTM3LDcgKzM3LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfdmFsMzIgTVVM
VDE2XzMyX1ExNl9hcm12NChvcHVzX3ZhbDE2IGEsIG9wdXNfdmFsMzIgYikKICAgICAgICIjTVVM
VDE2XzMyX1ExNlxuXHQiCiAgICAgICAic211bGwgJTAsICUxLCAlMiwgJTNcblx0IgogICAgICAg
OiAiPSZyIihyZF9sbyksICI9JnIiKHJkX2hpKQotICAgICAgOiAiJXIiKGIpLCJyIihhPDwxNikK
KyAgICAgIDogIiVyIihiKSwiciIoU0hMMzIoYSwxNikpCiAgICk7CiAgIHJldHVybiByZF9oaTsK
IH0KQEAgLTU0LDEwICs1NCwxMCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c192YWwzMiBNVUxU
MTZfMzJfUTE1X2FybXY0KG9wdXNfdmFsMTYgYSwgb3B1c192YWwzMiBiKQogICAgICAgIiNNVUxU
MTZfMzJfUTE1XG5cdCIKICAgICAgICJzbXVsbCAlMCwgJTEsICUyLCAlM1xuXHQiCiAgICAgICA6
ICI9JnIiKHJkX2xvKSwgIj0mciIocmRfaGkpCi0gICAgICA6ICIlciIoYiksICJyIihhPDwxNikK
KyAgICAgIDogIiVyIihiKSwgInIiKFNITDMyKGEsMTYpKQogICApOwogICAvKldlIGludGVudGlv
bmFsbHkgZG9uJ3QgT1IgaW4gdGhlIGhpZ2ggYml0IG9mIHJkX2xvIGZvciBzcGVlZC4qLwotICBy
ZXR1cm4gcmRfaGk8PDE7CisgIHJldHVybiBTSEwzMihyZF9oaSwxKTsKIH0KICNkZWZpbmUgTVVM
VDE2XzMyX1ExNShhLCBiKSAoTVVMVDE2XzMyX1ExNV9hcm12NChhLCBiKSkKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L2FybS9maXhlZF9hcm12NWUuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vZml4ZWRfYXJtdjVlLmgKaW5kZXgg
MzZhNjMyMTEwMTM1N2U0NDdkMjk5ZDM3ZDJhNTVkNzUxYzMwZDkwOS4uNmJmNzNjYmFjZTM0NmJm
M2MyODg3ZDIzOTliNTA4YjZiOGJhNWQ3NyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9maXhlZF9hcm12
NWUuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQvYXJtL2ZpeGVkX2FybXY1ZS5oCkBAIC01OSw3ICs1OSw3IEBAIHN0YXRp
YyBPUFVTX0lOTElORSBvcHVzX3ZhbDMyIE1VTFQxNl8zMl9RMTVfYXJtdjVlKG9wdXNfdmFsMTYg
YSwgb3B1c192YWwzMiBiKQogICAgICAgOiAiPXIiKHJlcykKICAgICAgIDogInIiKGIpLCAiciIo
YSkKICAgKTsKLSAgcmV0dXJuIHJlczw8MTsKKyAgcmV0dXJuIFNITDMyKHJlcywxKTsKIH0KICNk
ZWZpbmUgTVVMVDE2XzMyX1ExNShhLCBiKSAoTVVMVDE2XzMyX1ExNV9hcm12NWUoYSwgYikpCiAK
QEAgLTc2LDcgKzc2LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfdmFsMzIgTUFDMTZfMzJf
UTE1X2FybXY1ZShvcHVzX3ZhbDMyIGMsIG9wdXNfdmFsMTYgYSwKICAgICAgICIjTUFDMTZfMzJf
UTE1XG5cdCIKICAgICAgICJzbWxhd2IgJTAsICUxLCAlMiwgJTM7XG4iCiAgICAgICA6ICI9ciIo
cmVzKQotICAgICAgOiAiciIoYjw8MSksICJyIihhKSwgInIiKGMpCisgICAgICA6ICJyIihTSEwz
MihiLDEpKSwgInIiKGEpLCAiciIoYykKICAgKTsKICAgcmV0dXJuIHJlczsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9hcm0vbWRjdF9hcm0uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vbWRjdF9hcm0uaAppbmRleCA0OWNiYjQ0
NTc2MDI4OTFlNGMzMDZiNTdkN2EwOTk3OTQ1MmQ0ZmMyLi4xNDIwMGJhYzRiMzQ2M2M2ZTcyMmVj
ZjJhMjFlOThjOWZkYTMzZDA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYXJtL21kY3RfYXJtLmgKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L2FybS9tZGN0X2FybS5oCkBAIC0zMyw3ICszMyw2IEBACiAjaWYgIWRlZmluZWQoTURDVF9B
Uk1fSCkKICNkZWZpbmUgTURDVF9BUk1fSAogCi0jaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAibWRjdC5oIgogCiAjaWYgZGVmaW5lZChIQVZFX0FSTV9ORTEwKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L2FybS9waXRjaF9hcm0uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vcGl0Y2hfYXJtLmgKaW5kZXggMTQzMzExNjllZWI3
YjI3YTVhZGIzMTUyYjFiYzgxM2YzYWZkMjQyMS4uYmVkOGIwNGVhYzExZmM2ZWQ3NzlmY2E5N2Qw
NGI0ZDJkMDFlNGI1MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9waXRjaF9hcm0uaAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
YXJtL3BpdGNoX2FybS5oCkBAIC0zMCwxMSArMzAsNDcgQEAKIAogIyBpbmNsdWRlICJhcm1jcHUu
aCIKIAorIyBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikKK29wdXNfdmFs
MzIgY2VsdF9pbm5lcl9wcm9kX25lb24oY29uc3Qgb3B1c192YWwxNiAqeCwgY29uc3Qgb3B1c192
YWwxNiAqeSwgaW50IE4pOwordm9pZCBkdWFsX2lubmVyX3Byb2RfbmVvbihjb25zdCBvcHVzX3Zh
bDE2ICp4LCBjb25zdCBvcHVzX3ZhbDE2ICp5MDEsCisgICAgICAgIGNvbnN0IG9wdXNfdmFsMTYg
KnkwMiwgaW50IE4sIG9wdXNfdmFsMzIgKnh5MSwgb3B1c192YWwzMiAqeHkyKTsKKworIyAgaWYg
IWRlZmluZWQoT1BVU19IQVZFX1JUQ0QpICYmIGRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9O
KQorIyAgIGRlZmluZSBPVkVSUklERV9DRUxUX0lOTkVSX1BST0QgKDEpCisjICAgZGVmaW5lIE9W
RVJSSURFX0RVQUxfSU5ORVJfUFJPRCAoMSkKKyMgICBkZWZpbmUgY2VsdF9pbm5lcl9wcm9kKHgs
IHksIE4sIGFyY2gpICgodm9pZCkoYXJjaCksIFBSRVNVTUVfTkVPTihjZWx0X2lubmVyX3Byb2Qp
KHgsIHksIE4pKQorIyAgIGRlZmluZSBkdWFsX2lubmVyX3Byb2QoeCwgeTAxLCB5MDIsIE4sIHh5
MSwgeHkyLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBQUkVTVU1FX05FT04oZHVhbF9pbm5lcl9wcm9k
KSh4LCB5MDEsIHkwMiwgTiwgeHkxLCB4eTIpKQorIyAgZW5kaWYKKyMgZW5kaWYKKworIyBpZiAh
ZGVmaW5lZChPVkVSUklERV9DRUxUX0lOTkVSX1BST0QpCisjICBpZiBkZWZpbmVkKE9QVVNfSEFW
RV9SVENEKSAmJiAoZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpICYmICFkZWZp
bmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKSkKK2V4dGVybiBvcHVzX3ZhbDMyICgqY29u
c3QgQ0VMVF9JTk5FUl9QUk9EX0lNUExbT1BVU19BUkNITUFTSysxXSkoY29uc3Qgb3B1c192YWwx
NiAqeCwgY29uc3Qgb3B1c192YWwxNiAqeSwgaW50IE4pOworIyAgIGRlZmluZSBPVkVSUklERV9D
RUxUX0lOTkVSX1BST0QgKDEpCisjICAgZGVmaW5lIGNlbHRfaW5uZXJfcHJvZCh4LCB5LCBOLCBh
cmNoKSAoKCpDRUxUX0lOTkVSX1BST0RfSU1QTFsoYXJjaCkmT1BVU19BUkNITUFTS10pKHgsIHks
IE4pKQorIyAgZWxpZiBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRSKQorIyAgIGRl
ZmluZSBPVkVSUklERV9DRUxUX0lOTkVSX1BST0QgKDEpCisjICAgZGVmaW5lIGNlbHRfaW5uZXJf
cHJvZCh4LCB5LCBOLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBjZWx0X2lubmVyX3Byb2RfbmVvbih4
LCB5LCBOKSkKKyMgIGVuZGlmCisjIGVuZGlmCisKKyMgaWYgIWRlZmluZWQoT1ZFUlJJREVfRFVB
TF9JTk5FUl9QUk9EKQorIyAgaWYgZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgKGRlZmluZWQo
T1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1F
X05FT05fSU5UUikpCitleHRlcm4gdm9pZCAoKmNvbnN0IERVQUxfSU5ORVJfUFJPRF9JTVBMW09Q
VVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNfdmFsMTYgKngsCisgICAgICAgIGNvbnN0IG9wdXNf
dmFsMTYgKnkwMSwgY29uc3Qgb3B1c192YWwxNiAqeTAyLCBpbnQgTiwgb3B1c192YWwzMiAqeHkx
LCBvcHVzX3ZhbDMyICp4eTIpOworIyAgIGRlZmluZSBPVkVSUklERV9EVUFMX0lOTkVSX1BST0Qg
KDEpCisjICAgZGVmaW5lIGR1YWxfaW5uZXJfcHJvZCh4LCB5MDEsIHkwMiwgTiwgeHkxLCB4eTIs
IGFyY2gpICgoKkRVQUxfSU5ORVJfUFJPRF9JTVBMWyhhcmNoKSZPUFVTX0FSQ0hNQVNLXSkoeCwg
eTAxLCB5MDIsIE4sIHh5MSwgeHkyKSkKKyMgIGVsaWYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1F
X05FT05fSU5UUikKKyMgICBkZWZpbmUgT1ZFUlJJREVfRFVBTF9JTk5FUl9QUk9EICgxKQorIyAg
IGRlZmluZSBkdWFsX2lubmVyX3Byb2QoeCwgeTAxLCB5MDIsIE4sIHh5MSwgeHkyLCBhcmNoKSAo
KHZvaWQpKGFyY2gpLCBkdWFsX2lubmVyX3Byb2RfbmVvbih4LCB5MDEsIHkwMiwgTiwgeHkxLCB4
eTIpKQorIyAgZW5kaWYKKyMgZW5kaWYKKwogIyBpZiBkZWZpbmVkKEZJWEVEX1BPSU5UKQogCiAj
ICBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT04pCiBvcHVzX3ZhbDMyIGNlbHRfcGl0
Y2hfeGNvcnJfbmVvbihjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ks
Ci0gICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gpOworICAgIG9w
dXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3BpdGNoLCBpbnQgYXJjaCk7CiAjICBl
bmRpZgogCiAjICBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX01FRElBKQpAQCAtNDMsNyAr
NzksNyBAQCBvcHVzX3ZhbDMyIGNlbHRfcGl0Y2hfeGNvcnJfbmVvbihjb25zdCBvcHVzX3ZhbDE2
ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCiAKICMgIGlmIGRlZmluZWQoT1BVU19BUk1fTUFZ
X0hBVkVfRURTUCkKIG9wdXNfdmFsMzIgY2VsdF9waXRjaF94Y29ycl9lZHNwKGNvbnN0IG9wdXNf
dmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKLSAgICBvcHVzX3ZhbDMyICp4Y29yciwg
aW50IGxlbiwgaW50IG1heF9waXRjaCk7CisgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4s
IGludCBtYXhfcGl0Y2gsIGludCBhcmNoKTsKICMgIGVuZGlmCiAKICMgIGlmIGRlZmluZWQoT1BV
U19IQVZFX1JUQ0QpICYmIFwKQEAgLTUyLDE4ICs4OCwxNyBAQCBvcHVzX3ZhbDMyIGNlbHRfcGl0
Y2hfeGNvcnJfZWRzcChjb25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ks
CiAgICAgIChkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX0VEU1ApICYmICFkZWZpbmVkKE9QVVNf
QVJNX1BSRVNVTUVfRURTUCkpKQogZXh0ZXJuIG9wdXNfdmFsMzIKICgqY29uc3QgQ0VMVF9QSVRD
SF9YQ09SUl9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNfdmFsMTYgKiwKLSAgICAg
IGNvbnN0IG9wdXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQsIGludCk7CisgICAgICBjb25z
dCBvcHVzX3ZhbDE2ICosIG9wdXNfdmFsMzIgKiwgaW50LCBpbnQsIGludCk7CiAjICAgZGVmaW5l
IE9WRVJSSURFX1BJVENIX1hDT1JSICgxKQogIyAgIGRlZmluZSBjZWx0X3BpdGNoX3hjb3JyKF94
LCBfeSwgeGNvcnIsIGxlbiwgbWF4X3BpdGNoLCBhcmNoKSBcCiAgICgoKkNFTFRfUElUQ0hfWENP
UlJfSU1QTFsoYXJjaCkmT1BVU19BUkNITUFTS10pKF94LCBfeSwgXAotICAgICAgICB4Y29yciwg
bGVuLCBtYXhfcGl0Y2gpKQorICAgICAgICB4Y29yciwgbGVuLCBtYXhfcGl0Y2gsIGFyY2gpKQog
CiAjICBlbGlmIGRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9FRFNQKSB8fCBcCiAgICAgZGVmaW5l
ZChPUFVTX0FSTV9QUkVTVU1FX01FRElBKSB8fCBcCiAgICAgZGVmaW5lZChPUFVTX0FSTV9QUkVT
VU1FX05FT04pCiAjICAgZGVmaW5lIE9WRVJSSURFX1BJVENIX1hDT1JSICgxKQotIyAgIGRlZmlu
ZSBjZWx0X3BpdGNoX3hjb3JyKF94LCBfeSwgeGNvcnIsIGxlbiwgbWF4X3BpdGNoLCBhcmNoKSBc
Ci0gICgodm9pZCkoYXJjaCksUFJFU1VNRV9ORU9OKGNlbHRfcGl0Y2hfeGNvcnIpKF94LCBfeSwg
eGNvcnIsIGxlbiwgbWF4X3BpdGNoKSkKKyMgICBkZWZpbmUgY2VsdF9waXRjaF94Y29yciAoUFJF
U1VNRV9ORU9OKGNlbHRfcGl0Y2hfeGNvcnIpKQogCiAjICBlbmRpZgogCkBAIC05OSwyNSArMTM0
LDI0IEBAIGV4dGVybiB2b2lkICgqY29uc3QgWENPUlJfS0VSTkVMX0lNUExbT1BVU19BUkNITUFT
SyArIDFdKSgKIC8qIEZsb2F0IGNhc2UgKi8KICNpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZF
X05FT05fSU5UUikKIHZvaWQgY2VsdF9waXRjaF94Y29ycl9mbG9hdF9uZW9uKGNvbnN0IG9wdXNf
dmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpfeSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3BpdGNoKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVu
LCBpbnQgbWF4X3BpdGNoLCBpbnQgYXJjaCk7CiAjZW5kaWYKIAogIyAgaWYgZGVmaW5lZChPUFVT
X0hBVkVfUlRDRCkgJiYgXAogICAgIChkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5U
UikgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpKQogZXh0ZXJuIHZvaWQK
ICgqY29uc3QgQ0VMVF9QSVRDSF9YQ09SUl9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9w
dXNfdmFsMTYgKiwKLSAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKiwgb3B1c192YWwzMiAqLCBpbnQs
IGludCk7CisgICAgICBjb25zdCBvcHVzX3ZhbDE2ICosIG9wdXNfdmFsMzIgKiwgaW50LCBpbnQs
IGludCk7CiAKICMgIGRlZmluZSBPVkVSUklERV9QSVRDSF9YQ09SUiAoMSkKICMgIGRlZmluZSBj
ZWx0X3BpdGNoX3hjb3JyKF94LCBfeSwgeGNvcnIsIGxlbiwgbWF4X3BpdGNoLCBhcmNoKSBcCiAg
ICgoKkNFTFRfUElUQ0hfWENPUlJfSU1QTFsoYXJjaCkmT1BVU19BUkNITUFTS10pKF94LCBfeSwg
XAotICAgICAgICB4Y29yciwgbGVuLCBtYXhfcGl0Y2gpKQorICAgICAgICB4Y29yciwgbGVuLCBt
YXhfcGl0Y2gsIGFyY2gpKQogCiAjICBlbGlmIGRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9O
X0lOVFIpCiAKICMgICBkZWZpbmUgT1ZFUlJJREVfUElUQ0hfWENPUlIgKDEpCi0jICAgZGVmaW5l
IGNlbHRfcGl0Y2hfeGNvcnIoX3gsIF95LCB4Y29yciwgbGVuLCBtYXhfcGl0Y2gsIGFyY2gpIFwK
LSAgICgodm9pZCkoYXJjaCksY2VsdF9waXRjaF94Y29ycl9mbG9hdF9uZW9uKF94LCBfeSwgeGNv
cnIsIGxlbiwgbWF4X3BpdGNoKSkKKyMgICBkZWZpbmUgY2VsdF9waXRjaF94Y29yciBjZWx0X3Bp
dGNoX3hjb3JyX2Zsb2F0X25lb24KIAogIyAgZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2FybS9w
aXRjaF9uZW9uX2ludHIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9hcm0vcGl0Y2hfbmVvbl9pbnRyLmMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MWFjMzhjNDMzYThhNzg1NTM1Zjk1ZjkzYWVmY2UxZDQzNjEzZmE4MAotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9hcm0vcGl0Y2hfbmVvbl9pbnRyLmMKQEAgLTAsMCArMSwyOTAgQEAKKy8qKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKgorQ29weXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuCitSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworYXJlIG1ldDoKKy0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAordGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKy0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKK25vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKK2Rv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCistIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwgSUVURiBv
ciBJRVRGIFRydXN0LCBub3IgdGhlCituYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRvcnMsIG1h
eSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQorcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCitwZXJtaXNzaW9uLgor
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENP
TlRSSUJVVE9SUyAiQVMgSVMiCitBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCitJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQor
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1Ig
Q09OVFJJQlVUT1JTIEJFCitMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCitDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
CitJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKK0FSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCitQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaWZkZWYgSEFWRV9D
T05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDxhcm1fbmVv
bi5oPgorI2luY2x1ZGUgInBpdGNoLmgiCisKKyNpZmRlZiBGSVhFRF9QT0lOVAorCitvcHVzX3Zh
bDMyIGNlbHRfaW5uZXJfcHJvZF9uZW9uKGNvbnN0IG9wdXNfdmFsMTYgKngsIGNvbnN0IG9wdXNf
dmFsMTYgKnksIGludCBOKQoreworICAgIGludCBpOworICAgIG9wdXNfdmFsMzIgeHk7CisgICAg
aW50MTZ4OF90IHhfczE2eDgsIHlfczE2eDg7CisgICAgaW50MzJ4NF90IHh5X3MzMng0ID0gdmR1
cHFfbl9zMzIoMCk7CisgICAgaW50NjR4Ml90IHh5X3M2NHgyOworICAgIGludDY0eDFfdCB4eV9z
NjR4MTsKKworICAgIGZvciAoaSA9IDA7IGkgPCBOIC0gNzsgaSArPSA4KSB7CisgICAgICAgIHhf
czE2eDggID0gdmxkMXFfczE2KCZ4W2ldKTsKKyAgICAgICAgeV9zMTZ4OCAgPSB2bGQxcV9zMTYo
JnlbaV0pOworICAgICAgICB4eV9zMzJ4NCA9IHZtbGFsX3MxNih4eV9zMzJ4NCwgdmdldF9sb3df
czE2ICh4X3MxNng4KSwgdmdldF9sb3dfczE2ICh5X3MxNng4KSk7CisgICAgICAgIHh5X3MzMng0
ID0gdm1sYWxfczE2KHh5X3MzMng0LCB2Z2V0X2hpZ2hfczE2KHhfczE2eDgpLCB2Z2V0X2hpZ2hf
czE2KHlfczE2eDgpKTsKKyAgICB9CisKKyAgICBpZiAoTiAtIGkgPj0gNCkgeworICAgICAgICBj
b25zdCBpbnQxNng0X3QgeF9zMTZ4NCA9IHZsZDFfczE2KCZ4W2ldKTsKKyAgICAgICAgY29uc3Qg
aW50MTZ4NF90IHlfczE2eDQgPSB2bGQxX3MxNigmeVtpXSk7CisgICAgICAgIHh5X3MzMng0ID0g
dm1sYWxfczE2KHh5X3MzMng0LCB4X3MxNng0LCB5X3MxNng0KTsKKyAgICAgICAgaSArPSA0Owor
ICAgIH0KKworICAgIHh5X3M2NHgyID0gdnBhZGRscV9zMzIoeHlfczMyeDQpOworICAgIHh5X3M2
NHgxID0gdmFkZF9zNjQodmdldF9sb3dfczY0KHh5X3M2NHgyKSwgdmdldF9oaWdoX3M2NCh4eV9z
NjR4MikpOworICAgIHh5ICAgICAgID0gdmdldF9sYW5lX3MzMih2cmVpbnRlcnByZXRfczMyX3M2
NCh4eV9zNjR4MSksIDApOworCisgICAgZm9yICg7IGkgPCBOOyBpKyspIHsKKyAgICAgICAgeHkg
PSBNQUMxNl8xNih4eSwgeFtpXSwgeVtpXSk7CisgICAgfQorCisjaWZkZWYgT1BVU19DSEVDS19B
U00KKyAgICBjZWx0X2Fzc2VydChjZWx0X2lubmVyX3Byb2RfYyh4LCB5LCBOKSA9PSB4eSk7Cisj
ZW5kaWYKKworICAgIHJldHVybiB4eTsKK30KKwordm9pZCBkdWFsX2lubmVyX3Byb2RfbmVvbihj
b25zdCBvcHVzX3ZhbDE2ICp4LCBjb25zdCBvcHVzX3ZhbDE2ICp5MDEsIGNvbnN0IG9wdXNfdmFs
MTYgKnkwMiwKKyAgICAgICAgaW50IE4sIG9wdXNfdmFsMzIgKnh5MSwgb3B1c192YWwzMiAqeHky
KQoreworICAgIGludCBpOworICAgIG9wdXNfdmFsMzIgeHkwMSwgeHkwMjsKKyAgICBpbnQxNng4
X3QgeF9zMTZ4OCwgeTAxX3MxNng4LCB5MDJfczE2eDg7CisgICAgaW50MzJ4NF90IHh5MDFfczMy
eDQgPSB2ZHVwcV9uX3MzMigwKTsKKyAgICBpbnQzMng0X3QgeHkwMl9zMzJ4NCA9IHZkdXBxX25f
czMyKDApOworICAgIGludDY0eDJfdCB4eTAxX3M2NHgyLCB4eTAyX3M2NHgyOworICAgIGludDY0
eDFfdCB4eTAxX3M2NHgxLCB4eTAyX3M2NHgxOworCisgICAgZm9yIChpID0gMDsgaSA8IE4gLSA3
OyBpICs9IDgpIHsKKyAgICAgICAgeF9zMTZ4OCAgICA9IHZsZDFxX3MxNigmeFtpXSk7CisgICAg
ICAgIHkwMV9zMTZ4OCAgPSB2bGQxcV9zMTYoJnkwMVtpXSk7CisgICAgICAgIHkwMl9zMTZ4OCAg
PSB2bGQxcV9zMTYoJnkwMltpXSk7CisgICAgICAgIHh5MDFfczMyeDQgPSB2bWxhbF9zMTYoeHkw
MV9zMzJ4NCwgdmdldF9sb3dfczE2ICh4X3MxNng4KSwgdmdldF9sb3dfczE2ICh5MDFfczE2eDgp
KTsKKyAgICAgICAgeHkwMl9zMzJ4NCA9IHZtbGFsX3MxNih4eTAyX3MzMng0LCB2Z2V0X2xvd19z
MTYgKHhfczE2eDgpLCB2Z2V0X2xvd19zMTYgKHkwMl9zMTZ4OCkpOworICAgICAgICB4eTAxX3Mz
Mng0ID0gdm1sYWxfczE2KHh5MDFfczMyeDQsIHZnZXRfaGlnaF9zMTYoeF9zMTZ4OCksIHZnZXRf
aGlnaF9zMTYoeTAxX3MxNng4KSk7CisgICAgICAgIHh5MDJfczMyeDQgPSB2bWxhbF9zMTYoeHkw
Ml9zMzJ4NCwgdmdldF9oaWdoX3MxNih4X3MxNng4KSwgdmdldF9oaWdoX3MxNih5MDJfczE2eDgp
KTsKKyAgICB9CisKKyAgICBpZiAoTiAtIGkgPj0gNCkgeworICAgICAgICBjb25zdCBpbnQxNng0
X3QgeF9zMTZ4NCAgID0gdmxkMV9zMTYoJnhbaV0pOworICAgICAgICBjb25zdCBpbnQxNng0X3Qg
eTAxX3MxNng0ID0gdmxkMV9zMTYoJnkwMVtpXSk7CisgICAgICAgIGNvbnN0IGludDE2eDRfdCB5
MDJfczE2eDQgPSB2bGQxX3MxNigmeTAyW2ldKTsKKyAgICAgICAgeHkwMV9zMzJ4NCA9IHZtbGFs
X3MxNih4eTAxX3MzMng0LCB4X3MxNng0LCB5MDFfczE2eDQpOworICAgICAgICB4eTAyX3MzMng0
ID0gdm1sYWxfczE2KHh5MDJfczMyeDQsIHhfczE2eDQsIHkwMl9zMTZ4NCk7CisgICAgICAgIGkg
Kz0gNDsKKyAgICB9CisKKyAgICB4eTAxX3M2NHgyID0gdnBhZGRscV9zMzIoeHkwMV9zMzJ4NCk7
CisgICAgeHkwMl9zNjR4MiA9IHZwYWRkbHFfczMyKHh5MDJfczMyeDQpOworICAgIHh5MDFfczY0
eDEgPSB2YWRkX3M2NCh2Z2V0X2xvd19zNjQoeHkwMV9zNjR4MiksIHZnZXRfaGlnaF9zNjQoeHkw
MV9zNjR4MikpOworICAgIHh5MDJfczY0eDEgPSB2YWRkX3M2NCh2Z2V0X2xvd19zNjQoeHkwMl9z
NjR4MiksIHZnZXRfaGlnaF9zNjQoeHkwMl9zNjR4MikpOworICAgIHh5MDEgICAgICAgPSB2Z2V0
X2xhbmVfczMyKHZyZWludGVycHJldF9zMzJfczY0KHh5MDFfczY0eDEpLCAwKTsKKyAgICB4eTAy
ICAgICAgID0gdmdldF9sYW5lX3MzMih2cmVpbnRlcnByZXRfczMyX3M2NCh4eTAyX3M2NHgxKSwg
MCk7CisKKyAgICBmb3IgKDsgaSA8IE47IGkrKykgeworICAgICAgICB4eTAxID0gTUFDMTZfMTYo
eHkwMSwgeFtpXSwgeTAxW2ldKTsKKyAgICAgICAgeHkwMiA9IE1BQzE2XzE2KHh5MDIsIHhbaV0s
IHkwMltpXSk7CisgICAgfQorICAgICp4eTEgPSB4eTAxOworICAgICp4eTIgPSB4eTAyOworCisj
aWZkZWYgT1BVU19DSEVDS19BU00KKyAgICB7CisgICAgICAgIG9wdXNfdmFsMzIgeHkxX2MsIHh5
Ml9jOworICAgICAgICBkdWFsX2lubmVyX3Byb2RfYyh4LCB5MDEsIHkwMiwgTiwgJnh5MV9jLCAm
eHkyX2MpOworICAgICAgICBjZWx0X2Fzc2VydCh4eTFfYyA9PSAqeHkxKTsKKyAgICAgICAgY2Vs
dF9hc3NlcnQoeHkyX2MgPT0gKnh5Mik7CisgICAgfQorI2VuZGlmCit9CisKKyNlbHNlIC8qICFG
SVhFRF9QT0lOVCAqLworCisvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLworCisjaWZkZWYgT1BVU19D
SEVDS19BU00KKworLyogVGhpcyBwYXJ0IG9mIGNvZGUgc2ltdWxhdGVzIGZsb2F0aW5nLXBvaW50
IE5FT04gb3BlcmF0aW9ucy4gKi8KKworLyogY2VsdF9pbm5lcl9wcm9kX25lb25fZmxvYXRfY19z
aW11bGF0aW9uKCkgc2ltdWxhdGVzIHRoZSBmbG9hdGluZy1wb2ludCAgICovCisvKiBvcGVyYXRp
b25zIG9mIGNlbHRfaW5uZXJfcHJvZF9uZW9uKCksIGFuZCBib3RoIGZ1bmN0aW9ucyBzaG91bGQg
aGF2ZSBiaXQgKi8KKy8qIGV4YWN0IG91dHB1dC4gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworc3RhdGljIG9wdXNfdmFsMzIgY2Vs
dF9pbm5lcl9wcm9kX25lb25fZmxvYXRfY19zaW11bGF0aW9uKGNvbnN0IG9wdXNfdmFsMTYgKngs
IGNvbnN0IG9wdXNfdmFsMTYgKnksIGludCBOKQoreworICAgaW50IGk7CisgICBvcHVzX3ZhbDMy
IHh5LCB4eTAgPSAwLCB4eTEgPSAwLCB4eTIgPSAwLCB4eTMgPSAwOworICAgZm9yIChpID0gMDsg
aSA8IE4gLSAzOyBpICs9IDQpIHsKKyAgICAgIHh5MCA9IE1BQzE2XzE2KHh5MCwgeFtpICsgMF0s
IHlbaSArIDBdKTsKKyAgICAgIHh5MSA9IE1BQzE2XzE2KHh5MSwgeFtpICsgMV0sIHlbaSArIDFd
KTsKKyAgICAgIHh5MiA9IE1BQzE2XzE2KHh5MiwgeFtpICsgMl0sIHlbaSArIDJdKTsKKyAgICAg
IHh5MyA9IE1BQzE2XzE2KHh5MywgeFtpICsgM10sIHlbaSArIDNdKTsKKyAgIH0KKyAgIHh5MCAr
PSB4eTI7CisgICB4eTEgKz0geHkzOworICAgeHkgPSB4eTAgKyB4eTE7CisgICBmb3IgKDsgaSA8
IE47IGkrKykgeworICAgICAgeHkgPSBNQUMxNl8xNih4eSwgeFtpXSwgeVtpXSk7CisgICB9Cisg
ICByZXR1cm4geHk7Cit9CisKKy8qIGR1YWxfaW5uZXJfcHJvZF9uZW9uX2Zsb2F0X2Nfc2ltdWxh
dGlvbigpIHNpbXVsYXRlcyB0aGUgZmxvYXRpbmctcG9pbnQgICAqLworLyogb3BlcmF0aW9ucyBv
ZiBkdWFsX2lubmVyX3Byb2RfbmVvbigpLCBhbmQgYm90aCBmdW5jdGlvbnMgc2hvdWxkIGhhdmUg
Yml0ICovCisvKiBleGFjdCBvdXRwdXQuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KK3N0YXRpYyB2b2lkIGR1YWxfaW5uZXJfcHJv
ZF9uZW9uX2Zsb2F0X2Nfc2ltdWxhdGlvbihjb25zdCBvcHVzX3ZhbDE2ICp4LCBjb25zdCBvcHVz
X3ZhbDE2ICp5MDEsIGNvbnN0IG9wdXNfdmFsMTYgKnkwMiwKKyAgICAgIGludCBOLCBvcHVzX3Zh
bDMyICp4eTEsIG9wdXNfdmFsMzIgKnh5MikKK3sKKyAgIGludCBpOworICAgb3B1c192YWwzMiB4
eTAxLCB4eTAyLCB4eTAxXzAgPSAwLCB4eTAxXzEgPSAwLCB4eTAxXzIgPSAwLCB4eTAxXzMgPSAw
LCB4eTAyXzAgPSAwLCB4eTAyXzEgPSAwLCB4eTAyXzIgPSAwLCB4eTAyXzMgPSAwOworICAgZm9y
IChpID0gMDsgaSA8IE4gLSAzOyBpICs9IDQpIHsKKyAgICAgIHh5MDFfMCA9IE1BQzE2XzE2KHh5
MDFfMCwgeFtpICsgMF0sIHkwMVtpICsgMF0pOworICAgICAgeHkwMV8xID0gTUFDMTZfMTYoeHkw
MV8xLCB4W2kgKyAxXSwgeTAxW2kgKyAxXSk7CisgICAgICB4eTAxXzIgPSBNQUMxNl8xNih4eTAx
XzIsIHhbaSArIDJdLCB5MDFbaSArIDJdKTsKKyAgICAgIHh5MDFfMyA9IE1BQzE2XzE2KHh5MDFf
MywgeFtpICsgM10sIHkwMVtpICsgM10pOworICAgICAgeHkwMl8wID0gTUFDMTZfMTYoeHkwMl8w
LCB4W2kgKyAwXSwgeTAyW2kgKyAwXSk7CisgICAgICB4eTAyXzEgPSBNQUMxNl8xNih4eTAyXzEs
IHhbaSArIDFdLCB5MDJbaSArIDFdKTsKKyAgICAgIHh5MDJfMiA9IE1BQzE2XzE2KHh5MDJfMiwg
eFtpICsgMl0sIHkwMltpICsgMl0pOworICAgICAgeHkwMl8zID0gTUFDMTZfMTYoeHkwMl8zLCB4
W2kgKyAzXSwgeTAyW2kgKyAzXSk7CisgICB9CisgICB4eTAxXzAgKz0geHkwMV8yOworICAgeHkw
Ml8wICs9IHh5MDJfMjsKKyAgIHh5MDFfMSArPSB4eTAxXzM7CisgICB4eTAyXzEgKz0geHkwMl8z
OworICAgeHkwMSA9IHh5MDFfMCArIHh5MDFfMTsKKyAgIHh5MDIgPSB4eTAyXzAgKyB4eTAyXzE7
CisgICBmb3IgKDsgaSA8IE47IGkrKykgeworICAgICAgeHkwMSA9IE1BQzE2XzE2KHh5MDEsIHhb
aV0sIHkwMVtpXSk7CisgICAgICB4eTAyID0gTUFDMTZfMTYoeHkwMiwgeFtpXSwgeTAyW2ldKTsK
KyAgIH0KKyAgICp4eTEgPSB4eTAxOworICAgKnh5MiA9IHh5MDI7Cit9CisKKyNlbmRpZiAvKiBP
UFVTX0NIRUNLX0FTTSAqLworCisvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLworCitvcHVzX3ZhbDMy
IGNlbHRfaW5uZXJfcHJvZF9uZW9uKGNvbnN0IG9wdXNfdmFsMTYgKngsIGNvbnN0IG9wdXNfdmFs
MTYgKnksIGludCBOKQoreworICAgIGludCBpOworICAgIG9wdXNfdmFsMzIgeHk7CisgICAgZmxv
YXQzMng0X3QgeHlfZjMyeDQgPSB2ZHVwcV9uX2YzMigwKTsKKyAgICBmbG9hdDMyeDJfdCB4eV9m
MzJ4MjsKKworICAgIGZvciAoaSA9IDA7IGkgPCBOIC0gNzsgaSArPSA4KSB7CisgICAgICAgIGZs
b2F0MzJ4NF90IHhfZjMyeDQsIHlfZjMyeDQ7CisgICAgICAgIHhfZjMyeDQgID0gdmxkMXFfZjMy
KCZ4W2ldKTsKKyAgICAgICAgeV9mMzJ4NCAgPSB2bGQxcV9mMzIoJnlbaV0pOworICAgICAgICB4
eV9mMzJ4NCA9IHZtbGFxX2YzMih4eV9mMzJ4NCwgeF9mMzJ4NCwgeV9mMzJ4NCk7CisgICAgICAg
IHhfZjMyeDQgID0gdmxkMXFfZjMyKCZ4W2kgKyA0XSk7CisgICAgICAgIHlfZjMyeDQgID0gdmxk
MXFfZjMyKCZ5W2kgKyA0XSk7CisgICAgICAgIHh5X2YzMng0ID0gdm1sYXFfZjMyKHh5X2YzMng0
LCB4X2YzMng0LCB5X2YzMng0KTsKKyAgICB9CisKKyAgICBpZiAoTiAtIGkgPj0gNCkgeworICAg
ICAgICBjb25zdCBmbG9hdDMyeDRfdCB4X2YzMng0ID0gdmxkMXFfZjMyKCZ4W2ldKTsKKyAgICAg
ICAgY29uc3QgZmxvYXQzMng0X3QgeV9mMzJ4NCA9IHZsZDFxX2YzMigmeVtpXSk7CisgICAgICAg
IHh5X2YzMng0ID0gdm1sYXFfZjMyKHh5X2YzMng0LCB4X2YzMng0LCB5X2YzMng0KTsKKyAgICAg
ICAgaSArPSA0OworICAgIH0KKworICAgIHh5X2YzMngyID0gdmFkZF9mMzIodmdldF9sb3dfZjMy
KHh5X2YzMng0KSwgdmdldF9oaWdoX2YzMih4eV9mMzJ4NCkpOworICAgIHh5X2YzMngyID0gdnBh
ZGRfZjMyKHh5X2YzMngyLCB4eV9mMzJ4Mik7CisgICAgeHkgICAgICAgPSB2Z2V0X2xhbmVfZjMy
KHh5X2YzMngyLCAwKTsKKworICAgIGZvciAoOyBpIDwgTjsgaSsrKSB7CisgICAgICAgIHh5ID0g
TUFDMTZfMTYoeHksIHhbaV0sIHlbaV0pOworICAgIH0KKworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNN
CisgICAgY2VsdF9hc3NlcnQoQUJTMzIoY2VsdF9pbm5lcl9wcm9kX25lb25fZmxvYXRfY19zaW11
bGF0aW9uKHgsIHksIE4pIC0geHkpIDw9IFZFUllfU01BTEwpOworI2VuZGlmCisKKyAgICByZXR1
cm4geHk7Cit9CisKK3ZvaWQgZHVhbF9pbm5lcl9wcm9kX25lb24oY29uc3Qgb3B1c192YWwxNiAq
eCwgY29uc3Qgb3B1c192YWwxNiAqeTAxLCBjb25zdCBvcHVzX3ZhbDE2ICp5MDIsCisgICAgICAg
IGludCBOLCBvcHVzX3ZhbDMyICp4eTEsIG9wdXNfdmFsMzIgKnh5MikKK3sKKyAgICBpbnQgaTsK
KyAgICBvcHVzX3ZhbDMyIHh5MDEsIHh5MDI7CisgICAgZmxvYXQzMng0X3QgeHkwMV9mMzJ4NCA9
IHZkdXBxX25fZjMyKDApOworICAgIGZsb2F0MzJ4NF90IHh5MDJfZjMyeDQgPSB2ZHVwcV9uX2Yz
MigwKTsKKyAgICBmbG9hdDMyeDJfdCB4eTAxX2YzMngyLCB4eTAyX2YzMngyOworCisgICAgZm9y
IChpID0gMDsgaSA8IE4gLSA3OyBpICs9IDgpIHsKKyAgICAgICAgZmxvYXQzMng0X3QgeF9mMzJ4
NCwgeTAxX2YzMng0LCB5MDJfZjMyeDQ7CisgICAgICAgIHhfZjMyeDQgICAgPSB2bGQxcV9mMzIo
JnhbaV0pOworICAgICAgICB5MDFfZjMyeDQgID0gdmxkMXFfZjMyKCZ5MDFbaV0pOworICAgICAg
ICB5MDJfZjMyeDQgID0gdmxkMXFfZjMyKCZ5MDJbaV0pOworICAgICAgICB4eTAxX2YzMng0ID0g
dm1sYXFfZjMyKHh5MDFfZjMyeDQsIHhfZjMyeDQsIHkwMV9mMzJ4NCk7CisgICAgICAgIHh5MDJf
ZjMyeDQgPSB2bWxhcV9mMzIoeHkwMl9mMzJ4NCwgeF9mMzJ4NCwgeTAyX2YzMng0KTsKKyAgICAg
ICAgeF9mMzJ4NCAgICA9IHZsZDFxX2YzMigmeFtpICsgNF0pOworICAgICAgICB5MDFfZjMyeDQg
ID0gdmxkMXFfZjMyKCZ5MDFbaSArIDRdKTsKKyAgICAgICAgeTAyX2YzMng0ICA9IHZsZDFxX2Yz
MigmeTAyW2kgKyA0XSk7CisgICAgICAgIHh5MDFfZjMyeDQgPSB2bWxhcV9mMzIoeHkwMV9mMzJ4
NCwgeF9mMzJ4NCwgeTAxX2YzMng0KTsKKyAgICAgICAgeHkwMl9mMzJ4NCA9IHZtbGFxX2YzMih4
eTAyX2YzMng0LCB4X2YzMng0LCB5MDJfZjMyeDQpOworICAgIH0KKworICAgIGlmIChOIC0gaSA+
PSA0KSB7CisgICAgICAgIGNvbnN0IGZsb2F0MzJ4NF90IHhfZjMyeDQgICA9IHZsZDFxX2YzMigm
eFtpXSk7CisgICAgICAgIGNvbnN0IGZsb2F0MzJ4NF90IHkwMV9mMzJ4NCA9IHZsZDFxX2YzMigm
eTAxW2ldKTsKKyAgICAgICAgY29uc3QgZmxvYXQzMng0X3QgeTAyX2YzMng0ID0gdmxkMXFfZjMy
KCZ5MDJbaV0pOworICAgICAgICB4eTAxX2YzMng0ID0gdm1sYXFfZjMyKHh5MDFfZjMyeDQsIHhf
ZjMyeDQsIHkwMV9mMzJ4NCk7CisgICAgICAgIHh5MDJfZjMyeDQgPSB2bWxhcV9mMzIoeHkwMl9m
MzJ4NCwgeF9mMzJ4NCwgeTAyX2YzMng0KTsKKyAgICAgICAgaSArPSA0OworICAgIH0KKworICAg
IHh5MDFfZjMyeDIgPSB2YWRkX2YzMih2Z2V0X2xvd19mMzIoeHkwMV9mMzJ4NCksIHZnZXRfaGln
aF9mMzIoeHkwMV9mMzJ4NCkpOworICAgIHh5MDJfZjMyeDIgPSB2YWRkX2YzMih2Z2V0X2xvd19m
MzIoeHkwMl9mMzJ4NCksIHZnZXRfaGlnaF9mMzIoeHkwMl9mMzJ4NCkpOworICAgIHh5MDFfZjMy
eDIgPSB2cGFkZF9mMzIoeHkwMV9mMzJ4MiwgeHkwMV9mMzJ4Mik7CisgICAgeHkwMl9mMzJ4MiA9
IHZwYWRkX2YzMih4eTAyX2YzMngyLCB4eTAyX2YzMngyKTsKKyAgICB4eTAxICAgICAgID0gdmdl
dF9sYW5lX2YzMih4eTAxX2YzMngyLCAwKTsKKyAgICB4eTAyICAgICAgID0gdmdldF9sYW5lX2Yz
Mih4eTAyX2YzMngyLCAwKTsKKworICAgIGZvciAoOyBpIDwgTjsgaSsrKSB7CisgICAgICAgIHh5
MDEgPSBNQUMxNl8xNih4eTAxLCB4W2ldLCB5MDFbaV0pOworICAgICAgICB4eTAyID0gTUFDMTZf
MTYoeHkwMiwgeFtpXSwgeTAyW2ldKTsKKyAgICB9CisgICAgKnh5MSA9IHh5MDE7CisgICAgKnh5
MiA9IHh5MDI7CisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIHsKKyAgICAgICAgb3B1c192
YWwzMiB4eTFfYywgeHkyX2M7CisgICAgICAgIGR1YWxfaW5uZXJfcHJvZF9uZW9uX2Zsb2F0X2Nf
c2ltdWxhdGlvbih4LCB5MDEsIHkwMiwgTiwgJnh5MV9jLCAmeHkyX2MpOworICAgICAgICBjZWx0
X2Fzc2VydChBQlMzMih4eTFfYyAtICp4eTEpIDw9IFZFUllfU01BTEwpOworICAgICAgICBjZWx0
X2Fzc2VydChBQlMzMih4eTJfYyAtICp4eTIpIDw9IFZFUllfU01BTEwpOworICAgIH0KKyNlbmRp
ZgorfQorCisjZW5kaWYgLyogRklYRURfUE9JTlQgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9iYW5kcy5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L2JhbmRzLmMKaW5kZXggZjUzMDdhZTJlZGI2N2EwM2E5NzRiYjVkZWNlNjQ4NWQ4MDY5
NjVjNi4uM2IxZjVjZmJiZThhODFjN2Y0N2I3MDBhYzg3ODk5ZDgwOTkwNjI4NSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L2JhbmRzLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2JhbmRzLmMKQEAgLTY1LDcgKzY1LDcgQEAgb3B1c191
aW50MzIgY2VsdF9sY2dfcmFuZChvcHVzX3VpbnQzMiBzZWVkKQogCiAvKiBUaGlzIGlzIGEgY29z
KCkgYXBwcm94aW1hdGlvbiBkZXNpZ25lZCB0byBiZSBiaXQtZXhhY3Qgb24gYW55IHBsYXRmb3Jt
LiBCaXQgZXhhY3RuZXNzCiAgICB3aXRoIHRoaXMgYXBwcm94aW1hdGlvbiBpcyBpbXBvcnRhbnQg
YmVjYXVzZSBpdCBoYXMgYW4gaW1wYWN0IG9uIHRoZSBiaXQgYWxsb2NhdGlvbiAqLwotc3RhdGlj
IG9wdXNfaW50MTYgYml0ZXhhY3RfY29zKG9wdXNfaW50MTYgeCkKK29wdXNfaW50MTYgYml0ZXhh
Y3RfY29zKG9wdXNfaW50MTYgeCkKIHsKICAgIG9wdXNfaW50MzIgdG1wOwogICAgb3B1c19pbnQx
NiB4MjsKQEAgLTc3LDcgKzc3LDcgQEAgc3RhdGljIG9wdXNfaW50MTYgYml0ZXhhY3RfY29zKG9w
dXNfaW50MTYgeCkKICAgIHJldHVybiAxK3gyOwogfQogCi1zdGF0aWMgaW50IGJpdGV4YWN0X2xv
ZzJ0YW4oaW50IGlzaW4saW50IGljb3MpCitpbnQgYml0ZXhhY3RfbG9nMnRhbihpbnQgaXNpbixp
bnQgaWNvcykKIHsKICAgIGludCBsYzsKICAgIGludCBsczsKQEAgLTkyLDEwICs5MiwxMSBAQCBz
dGF0aWMgaW50IGJpdGV4YWN0X2xvZzJ0YW4oaW50IGlzaW4saW50IGljb3MpCiAKICNpZmRlZiBG
SVhFRF9QT0lOVAogLyogQ29tcHV0ZSB0aGUgYW1wbGl0dWRlIChzcXJ0IGVuZXJneSkgaW4gZWFj
aCBvZiB0aGUgYmFuZHMgKi8KLXZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNvbnN0IENFTFRN
b2RlICptLCBjb25zdCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kRSwgaW50IGVuZCwgaW50
IEMsIGludCBMTSkKK3ZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNvbnN0IENFTFRNb2RlICpt
LCBjb25zdCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kRSwgaW50IGVuZCwgaW50IEMsIGlu
dCBMTSwgaW50IGFyY2gpCiB7CiAgICBpbnQgaSwgYywgTjsKICAgIGNvbnN0IG9wdXNfaW50MTYg
KmVCYW5kcyA9IG0tPmVCYW5kczsKKyAgICh2b2lkKWFyY2g7CiAgICBOID0gbS0+c2hvcnRNZGN0
U2l6ZTw8TE07CiAgICBjPTA7IGRvIHsKICAgICAgIGZvciAoaT0wO2k8ZW5kO2krKykKQEAgLTE1
NSw3ICsxNTYsNyBAQCB2b2lkIG5vcm1hbGlzZV9iYW5kcyhjb25zdCBDRUxUTW9kZSAqbSwgY29u
c3QgY2VsdF9zaWcgKiBPUFVTX1JFU1RSSUNUIGZyZXEsIGNlbAogCiAjZWxzZSAvKiBGSVhFRF9Q
T0lOVCAqLwogLyogQ29tcHV0ZSB0aGUgYW1wbGl0dWRlIChzcXJ0IGVuZXJneSkgaW4gZWFjaCBv
ZiB0aGUgYmFuZHMgKi8KLXZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNvbnN0IENFTFRNb2Rl
ICptLCBjb25zdCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kRSwgaW50IGVuZCwgaW50IEMs
IGludCBMTSkKK3ZvaWQgY29tcHV0ZV9iYW5kX2VuZXJnaWVzKGNvbnN0IENFTFRNb2RlICptLCBj
b25zdCBjZWx0X3NpZyAqWCwgY2VsdF9lbmVyICpiYW5kRSwgaW50IGVuZCwgaW50IEMsIGludCBM
TSwgaW50IGFyY2gpCiB7CiAgICBpbnQgaSwgYywgTjsKICAgIGNvbnN0IG9wdXNfaW50MTYgKmVC
YW5kcyA9IG0tPmVCYW5kczsKQEAgLTE2NCw3ICsxNjUsNyBAQCB2b2lkIGNvbXB1dGVfYmFuZF9l
bmVyZ2llcyhjb25zdCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9zaWcgKlgsIGNlbHRfZW5lciAq
YmFuZAogICAgICAgZm9yIChpPTA7aTxlbmQ7aSsrKQogICAgICAgewogICAgICAgICAgb3B1c192
YWwzMiBzdW07Ci0gICAgICAgICBzdW0gPSAxZS0yN2YgKyBjZWx0X2lubmVyX3Byb2RfYygmWFtj
Kk4rKGVCYW5kc1tpXTw8TE0pXSwgJlhbYypOKyhlQmFuZHNbaV08PExNKV0sIChlQmFuZHNbaSsx
XS1lQmFuZHNbaV0pPDxMTSk7CisgICAgICAgICBzdW0gPSAxZS0yN2YgKyBjZWx0X2lubmVyX3By
b2QoJlhbYypOKyhlQmFuZHNbaV08PExNKV0sICZYW2MqTisoZUJhbmRzW2ldPDxMTSldLCAoZUJh
bmRzW2krMV0tZUJhbmRzW2ldKTw8TE0sIGFyY2gpOwogICAgICAgICAgYmFuZEVbaStjKm0tPm5i
RUJhbmRzXSA9IGNlbHRfc3FydChzdW0pOwogICAgICAgICAgLypwcmludGYgKCIlZiAiLCBiYW5k
RVtpK2MqbS0+bmJFQmFuZHNdKTsqLwogICAgICAgfQpAQCAtMjI0LDcgKzIyNSw3IEBAIHZvaWQg
ZGVub3JtYWxpc2VfYmFuZHMoY29uc3QgQ0VMVE1vZGUgKm0sIGNvbnN0IGNlbHRfbm9ybSAqIE9Q
VVNfUkVTVFJJQ1QgWCwKICNlbmRpZgogICAgICAgaj1NKmVCYW5kc1tpXTsKICAgICAgIGJhbmRf
ZW5kID0gTSplQmFuZHNbaSsxXTsKLSAgICAgIGxnID0gQUREMTYoYmFuZExvZ0VbaV0sIFNITDE2
KChvcHVzX3ZhbDE2KWVNZWFuc1tpXSw2KSk7CisgICAgICBsZyA9IFNBVFVSQVRFMTYoQUREMzIo
YmFuZExvZ0VbaV0sIFNITDMyKChvcHVzX3ZhbDMyKWVNZWFuc1tpXSw2KSkpOwogI2lmbmRlZiBG
SVhFRF9QT0lOVAogICAgICAgZyA9IGNlbHRfZXhwMihNSU4zMigzMi5mLCBsZykpOwogI2Vsc2UK
QEAgLTI0MSwxMiArMjQyLDEyIEBAIHZvaWQgZGVub3JtYWxpc2VfYmFuZHMoY29uc3QgQ0VMVE1v
ZGUgKm0sIGNvbnN0IGNlbHRfbm9ybSAqIE9QVVNfUkVTVFJJQ1QgWCwKICAgICAgIC8qIEhhbmRs
ZSBleHRyZW1lIGdhaW5zIHdpdGggbmVnYXRpdmUgc2hpZnQuICovCiAgICAgICBpZiAoc2hpZnQ8
MCkKICAgICAgIHsKLSAgICAgICAgIC8qIEZvciBzaGlmdCA8IC0yIHdlJ2QgYmUgbGlrZWx5IHRv
IG92ZXJmbG93LCBzbyB3ZSdyZSBjYXBwaW5nCi0gICAgICAgICAgICAgICB0aGUgZ2FpbiBoZXJl
LiBUaGlzIHNob3VsZG4ndCBoYXBwZW4gdW5sZXNzIHRoZSBiaXRzdHJlYW0gaXMKLSAgICAgICAg
ICAgICAgIGFscmVhZHkgY29ycnVwdGVkLiAqLwotICAgICAgICAgaWYgKHNoaWZ0IDwgLTIpCisg
ICAgICAgICAvKiBGb3Igc2hpZnQgPD0gLTIgYW5kIGcgPiAxNjM4NCB3ZSdkIGJlIGxpa2VseSB0
byBvdmVyZmxvdywgc28gd2UncmUKKyAgICAgICAgICAgIGNhcHBpbmcgdGhlIGdhaW4gaGVyZSwg
d2hpY2ggaXMgZXF1aXZhbGVudCB0byBhIGNhcCBvZiAxOCBvbiBsZy4KKyAgICAgICAgICAgIFRo
aXMgc2hvdWxkbid0IHRyaWdnZXIgdW5sZXNzIHRoZSBiaXRzdHJlYW0gaXMgYWxyZWFkeSBjb3Jy
dXB0ZWQuICovCisgICAgICAgICBpZiAoc2hpZnQgPD0gLTIpCiAgICAgICAgICB7Ci0gICAgICAg
ICAgICBnID0gMzI3Njc7CisgICAgICAgICAgICBnID0gMTYzODQ7CiAgICAgICAgICAgICBzaGlm
dCA9IC0yOwogICAgICAgICAgfQogICAgICAgICAgZG8gewpAQCAtMzYwLDYgKzM2MSwzMCBAQCB2
b2lkIGFudGlfY29sbGFwc2UoY29uc3QgQ0VMVE1vZGUgKm0sIGNlbHRfbm9ybSAqWF8sIHVuc2ln
bmVkIGNoYXIgKmNvbGxhcHNlX21hcwogICAgfQogfQogCisvKiBDb21wdXRlIHRoZSB3ZWlnaHRz
IHRvIHVzZSBmb3Igb3B0aW1pemluZyBub3JtYWxpemVkIGRpc3RvcnRpb24gYWNyb3NzCisgICBj
aGFubmVscy4gV2UgdXNlIHRoZSBhbXBsaXR1ZGUgdG8gd2VpZ2h0IHNxdWFyZSBkaXN0b3J0aW9u
LCB3aGljaCBtZWFucworICAgdGhhdCB3ZSB1c2UgdGhlIHNxdWFyZSByb290IG9mIHRoZSB2YWx1
ZSB3ZSB3b3VsZCBoYXZlIGJlZW4gdXNpbmcgaWYgd2UKKyAgIHdhbnRlZCB0byBtaW5pbWl6ZSB0
aGUgTVNFIGluIHRoZSBub24tbm9ybWFsaXplZCBkb21haW4uIFRoaXMgcm91Z2hseQorICAgY29y
cmVzcG9uZHMgdG8gc29tZSBxdWljay1hbmQtZGlydHkgcGVyY2VwdHVhbCBleHBlcmltZW50cyBJ
IHJhbiB0bworICAgbWVhc3VyZSBpbnRlci1hdXJhbCBtYXNraW5nICh0aGVyZSBkb2Vzbid0IHNl
ZW0gdG8gYmUgYW55IHB1Ymxpc2hlZCBkYXRhCisgICBvbiB0aGUgdG9waWMpLiAqLworc3RhdGlj
IHZvaWQgY29tcHV0ZV9jaGFubmVsX3dlaWdodHMoY2VsdF9lbmVyIEV4LCBjZWx0X2VuZXIgRXks
IG9wdXNfdmFsMTYgd1syXSkKK3sKKyAgIGNlbHRfZW5lciBtaW5FOworI2lmIEZJWEVEX1BPSU5U
CisgICBpbnQgc2hpZnQ7CisjZW5kaWYKKyAgIG1pbkUgPSBNSU4zMihFeCwgRXkpOworICAgLyog
QWRqdXN0bWVudCB0byBtYWtlIHRoZSB3ZWlnaHRzIGEgYml0IG1vcmUgY29uc2VydmF0aXZlLiAq
LworICAgRXggPSBBREQzMihFeCwgbWluRS8zKTsKKyAgIEV5ID0gQUREMzIoRXksIG1pbkUvMyk7
CisjaWYgRklYRURfUE9JTlQKKyAgIHNoaWZ0ID0gY2VsdF9pbG9nMihFUFNJTE9OK01BWDMyKEV4
LCBFeSkpLTE0OworI2VuZGlmCisgICB3WzBdID0gVlNIUjMyKEV4LCBzaGlmdCk7CisgICB3WzFd
ID0gVlNIUjMyKEV5LCBzaGlmdCk7Cit9CisKIHN0YXRpYyB2b2lkIGludGVuc2l0eV9zdGVyZW8o
Y29uc3QgQ0VMVE1vZGUgKm0sIGNlbHRfbm9ybSAqIE9QVVNfUkVTVFJJQ1QgWCwgY29uc3QgY2Vs
dF9ub3JtICogT1BVU19SRVNUUklDVCBZLCBjb25zdCBjZWx0X2VuZXIgKmJhbmRFLCBpbnQgYmFu
ZElELCBpbnQgTikKIHsKICAgIGludCBpID0gYmFuZElEOwpAQCAtNjQ3LDYgKzY3Miw3IEBAIHN0
YXRpYyBpbnQgY29tcHV0ZV9xbihpbnQgTiwgaW50IGIsIGludCBvZmZzZXQsIGludCBwdWxzZV9j
YXAsIGludCBzdGVyZW8pCiAKIHN0cnVjdCBiYW5kX2N0eCB7CiAgICBpbnQgZW5jb2RlOworICAg
aW50IHJlc3ludGg7CiAgICBjb25zdCBDRUxUTW9kZSAqbTsKICAgIGludCBpOwogICAgaW50IGlu
dGVuc2l0eTsKQEAgLTY1Nyw2ICs2ODMsOSBAQCBzdHJ1Y3QgYmFuZF9jdHggewogICAgY29uc3Qg
Y2VsdF9lbmVyICpiYW5kRTsKICAgIG9wdXNfdWludDMyIHNlZWQ7CiAgICBpbnQgYXJjaDsKKyAg
IGludCB0aGV0YV9yb3VuZDsKKyAgIGludCBkaXNhYmxlX2ludjsKKyAgIGludCBhdm9pZF9zcGxp
dF9ub2lzZTsKIH07CiAKIHN0cnVjdCBzcGxpdF9jdHggewpAQCAtNzE0LDggKzc0MywzNSBAQCBz
dGF0aWMgdm9pZCBjb21wdXRlX3RoZXRhKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBzdHJ1Y3Qgc3Bs
aXRfY3R4ICpzY3R4LAogICAgaWYgKHFuIT0xKQogICAgewogICAgICAgaWYgKGVuY29kZSkKLSAg
ICAgICAgIGl0aGV0YSA9IChpdGhldGEqKG9wdXNfaW50MzIpcW4rODE5Mik+PjE0OwotCisgICAg
ICB7CisgICAgICAgICBpZiAoIXN0ZXJlbyB8fCBjdHgtPnRoZXRhX3JvdW5kID09IDApCisgICAg
ICAgICB7CisgICAgICAgICAgICBpdGhldGEgPSAoaXRoZXRhKihvcHVzX2ludDMyKXFuKzgxOTIp
Pj4xNDsKKyAgICAgICAgICAgIGlmICghc3RlcmVvICYmIGN0eC0+YXZvaWRfc3BsaXRfbm9pc2Ug
JiYgaXRoZXRhID4gMCAmJiBpdGhldGEgPCBxbikKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgIC8qIENoZWNrIGlmIHRoZSBzZWxlY3RlZCB2YWx1ZSBvZiB0aGV0YSB3aWxsIGNhdXNlIHRo
ZSBiaXQgYWxsb2NhdGlvbgorICAgICAgICAgICAgICAgICAgdG8gaW5qZWN0IG5vaXNlIG9uIG9u
ZSBzaWRlLiBJZiBzbywgbWFrZSBzdXJlIHRoZSBlbmVyZ3kgb2YgdGhhdCBzaWRlCisgICAgICAg
ICAgICAgICAgICBpcyB6ZXJvLiAqLworICAgICAgICAgICAgICAgaW50IHVucXVhbnRpemVkID0g
Y2VsdF91ZGl2KChvcHVzX2ludDMyKWl0aGV0YSoxNjM4NCwgcW4pOworICAgICAgICAgICAgICAg
aW1pZCA9IGJpdGV4YWN0X2Nvcygob3B1c19pbnQxNil1bnF1YW50aXplZCk7CisgICAgICAgICAg
ICAgICBpc2lkZSA9IGJpdGV4YWN0X2Nvcygob3B1c19pbnQxNikoMTYzODQtdW5xdWFudGl6ZWQp
KTsKKyAgICAgICAgICAgICAgIGRlbHRhID0gRlJBQ19NVUwxNigoTi0xKTw8NyxiaXRleGFjdF9s
b2cydGFuKGlzaWRlLGltaWQpKTsKKyAgICAgICAgICAgICAgIGlmIChkZWx0YSA+ICpiKQorICAg
ICAgICAgICAgICAgICAgaXRoZXRhID0gcW47CisgICAgICAgICAgICAgICBlbHNlIGlmIChkZWx0
YSA8IC0qYikKKyAgICAgICAgICAgICAgICAgIGl0aGV0YSA9IDA7CisgICAgICAgICAgICB9Cisg
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaW50IGRvd247CisgICAgICAgICAgICAvKiBC
aWFzIHF1YW50aXphdGlvbiB0b3dhcmRzIGl0aGV0YT0wIGFuZCBpdGhldGE9MTYzODQuICovCisg
ICAgICAgICAgICBpbnQgYmlhcyA9IGl0aGV0YSA+IDgxOTIgPyAzMjc2Ny9xbiA6IC0zMjc2Ny9x
bjsKKyAgICAgICAgICAgIGRvd24gPSBJTUlOKHFuLTEsIElNQVgoMCwgKGl0aGV0YSoob3B1c19p
bnQzMilxbiArIGJpYXMpPj4xNCkpOworICAgICAgICAgICAgaWYgKGN0eC0+dGhldGFfcm91bmQg
PCAwKQorICAgICAgICAgICAgICAgaXRoZXRhID0gZG93bjsKKyAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgIGl0aGV0YSA9IGRvd24rMTsKKyAgICAgICAgIH0KKyAgICAgIH0KICAgICAg
IC8qIEVudHJvcHkgY29kaW5nIG9mIHRoZSBhbmdsZS4gV2UgdXNlIGEgdW5pZm9ybSBwZGYgZm9y
IHRoZQogICAgICAgICAgdGltZSBzcGxpdCwgYSBzdGVwIGZvciBzdGVyZW8sIGFuZCBhIHRyaWFu
Z3VsYXIgb25lIGZvciB0aGUgcmVzdC4gKi8KICAgICAgIGlmIChzdGVyZW8gJiYgTj4yKQpAQCAt
NzkzLDcgKzg0OSw3IEBAIHN0YXRpYyB2b2lkIGNvbXB1dGVfdGhldGEoc3RydWN0IGJhbmRfY3R4
ICpjdHgsIHN0cnVjdCBzcGxpdF9jdHggKnNjdHgsCiAgICB9IGVsc2UgaWYgKHN0ZXJlbykgewog
ICAgICAgaWYgKGVuY29kZSkKICAgICAgIHsKLSAgICAgICAgIGludiA9IGl0aGV0YSA+IDgxOTI7
CisgICAgICAgICBpbnYgPSBpdGhldGEgPiA4MTkyICYmICFjdHgtPmRpc2FibGVfaW52OwogICAg
ICAgICAgaWYgKGludikKICAgICAgICAgIHsKICAgICAgICAgICAgIGludCBqOwpAQCAtODEwLDYg
Kzg2Niw5IEBAIHN0YXRpYyB2b2lkIGNvbXB1dGVfdGhldGEoc3RydWN0IGJhbmRfY3R4ICpjdHgs
IHN0cnVjdCBzcGxpdF9jdHggKnNjdHgsCiAgICAgICAgICAgICBpbnYgPSBlY19kZWNfYml0X2xv
Z3AoZWMsIDIpOwogICAgICAgfSBlbHNlCiAgICAgICAgICBpbnYgPSAwOworICAgICAgLyogaW52
IGZsYWcgb3ZlcnJpZGUgdG8gYXZvaWQgcHJvYmxlbXMgd2l0aCBkb3dubWl4aW5nLiAqLworICAg
ICAgaWYgKGN0eC0+ZGlzYWJsZV9pbnYpCisgICAgICAgICBpbnYgPSAwOwogICAgICAgaXRoZXRh
ID0gMDsKICAgIH0KICAgIHFhbGxvYyA9IGVjX3RlbGxfZnJhYyhlYykgLSB0ZWxsOwpAQCAtODQ1
LDExICs5MDQsNiBAQCBzdGF0aWMgdm9pZCBjb21wdXRlX3RoZXRhKHN0cnVjdCBiYW5kX2N0eCAq
Y3R4LCBzdHJ1Y3Qgc3BsaXRfY3R4ICpzY3R4LAogc3RhdGljIHVuc2lnbmVkIHF1YW50X2JhbmRf
bjEoc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwgY2VsdF9ub3JtICpZLCBpbnQg
YiwKICAgICAgIGNlbHRfbm9ybSAqbG93YmFuZF9vdXQpCiB7Ci0jaWZkZWYgUkVTWU5USAotICAg
aW50IHJlc3ludGggPSAxOwotI2Vsc2UKLSAgIGludCByZXN5bnRoID0gIWN0eC0+ZW5jb2RlOwot
I2VuZGlmCiAgICBpbnQgYzsKICAgIGludCBzdGVyZW87CiAgICBjZWx0X25vcm0gKnggPSBYOwpA
QCAtODc0LDcgKzkyOCw3IEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFudF9iYW5kX24xKHN0cnVjdCBi
YW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsIGNlbHRfbm9ybSAqWSwKICAgICAgICAgIGN0eC0+
cmVtYWluaW5nX2JpdHMgLT0gMTw8QklUUkVTOwogICAgICAgICAgYi09MTw8QklUUkVTOwogICAg
ICAgfQotICAgICAgaWYgKHJlc3ludGgpCisgICAgICBpZiAoY3R4LT5yZXN5bnRoKQogICAgICAg
ICAgeFswXSA9IHNpZ24gPyAtTk9STV9TQ0FMSU5HIDogTk9STV9TQ0FMSU5HOwogICAgICAgeCA9
IFk7CiAgICB9IHdoaWxlICgrK2M8MStzdGVyZW8pOwpAQCAtODk5LDExICs5NTMsNiBAQCBzdGF0
aWMgdW5zaWduZWQgcXVhbnRfcGFydGl0aW9uKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25v
cm0gKlgsCiAgICBpbnQgQjA9QjsKICAgIG9wdXNfdmFsMTYgbWlkPTAsIHNpZGU9MDsKICAgIHVu
c2lnbmVkIGNtPTA7Ci0jaWZkZWYgUkVTWU5USAotICAgaW50IHJlc3ludGggPSAxOwotI2Vsc2UK
LSAgIGludCByZXN5bnRoID0gIWN0eC0+ZW5jb2RlOwotI2VuZGlmCiAgICBjZWx0X25vcm0gKlk9
TlVMTDsKICAgIGludCBlbmNvZGU7CiAgICBjb25zdCBDRUxUTW9kZSAqbTsKQEAgLTkzNSw4ICs5
ODQsNyBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfcGFydGl0aW9uKHN0cnVjdCBiYW5kX2N0eCAq
Y3R4LCBjZWx0X25vcm0gKlgsCiAgICAgICAgICBmaWxsID0gKGZpbGwmMSl8KGZpbGw8PDEpOwog
ICAgICAgQiA9IChCKzEpPj4xOwogCi0gICAgICBjb21wdXRlX3RoZXRhKGN0eCwgJnNjdHgsIFgs
IFksIE4sICZiLCBCLCBCMCwKLSAgICAgICAgICAgIExNLCAwLCAmZmlsbCk7CisgICAgICBjb21w
dXRlX3RoZXRhKGN0eCwgJnNjdHgsIFgsIFksIE4sICZiLCBCLCBCMCwgTE0sIDAsICZmaWxsKTsK
ICAgICAgIGltaWQgPSBzY3R4LmltaWQ7CiAgICAgICBpc2lkZSA9IHNjdHguaXNpZGU7CiAgICAg
ICBkZWx0YSA9IHNjdHguZGVsdGE7CkBAIC05NzAsMjQgKzEwMTgsMjAgQEAgc3RhdGljIHVuc2ln
bmVkIHF1YW50X3BhcnRpdGlvbihzdHJ1Y3QgYmFuZF9jdHggKmN0eCwgY2VsdF9ub3JtICpYLAog
ICAgICAgcmViYWxhbmNlID0gY3R4LT5yZW1haW5pbmdfYml0czsKICAgICAgIGlmIChtYml0cyA+
PSBzYml0cykKICAgICAgIHsKLSAgICAgICAgIGNtID0gcXVhbnRfcGFydGl0aW9uKGN0eCwgWCwg
TiwgbWJpdHMsIEIsCi0gICAgICAgICAgICAgICBsb3diYW5kLCBMTSwKKyAgICAgICAgIGNtID0g
cXVhbnRfcGFydGl0aW9uKGN0eCwgWCwgTiwgbWJpdHMsIEIsIGxvd2JhbmQsIExNLAogICAgICAg
ICAgICAgICAgTVVMVDE2XzE2X1AxNShnYWluLG1pZCksIGZpbGwpOwogICAgICAgICAgcmViYWxh
bmNlID0gbWJpdHMgLSAocmViYWxhbmNlLWN0eC0+cmVtYWluaW5nX2JpdHMpOwogICAgICAgICAg
aWYgKHJlYmFsYW5jZSA+IDM8PEJJVFJFUyAmJiBpdGhldGEhPTApCiAgICAgICAgICAgICBzYml0
cyArPSByZWJhbGFuY2UgLSAoMzw8QklUUkVTKTsKLSAgICAgICAgIGNtIHw9IHF1YW50X3BhcnRp
dGlvbihjdHgsIFksIE4sIHNiaXRzLCBCLAotICAgICAgICAgICAgICAgbmV4dF9sb3diYW5kMiwg
TE0sCisgICAgICAgICBjbSB8PSBxdWFudF9wYXJ0aXRpb24oY3R4LCBZLCBOLCBzYml0cywgQiwg
bmV4dF9sb3diYW5kMiwgTE0sCiAgICAgICAgICAgICAgICBNVUxUMTZfMTZfUDE1KGdhaW4sc2lk
ZSksIGZpbGw+PkIpPDwoQjA+PjEpOwogICAgICAgfSBlbHNlIHsKLSAgICAgICAgIGNtID0gcXVh
bnRfcGFydGl0aW9uKGN0eCwgWSwgTiwgc2JpdHMsIEIsCi0gICAgICAgICAgICAgICBuZXh0X2xv
d2JhbmQyLCBMTSwKKyAgICAgICAgIGNtID0gcXVhbnRfcGFydGl0aW9uKGN0eCwgWSwgTiwgc2Jp
dHMsIEIsIG5leHRfbG93YmFuZDIsIExNLAogICAgICAgICAgICAgICAgTVVMVDE2XzE2X1AxNShn
YWluLHNpZGUpLCBmaWxsPj5CKTw8KEIwPj4xKTsKICAgICAgICAgIHJlYmFsYW5jZSA9IHNiaXRz
IC0gKHJlYmFsYW5jZS1jdHgtPnJlbWFpbmluZ19iaXRzKTsKICAgICAgICAgIGlmIChyZWJhbGFu
Y2UgPiAzPDxCSVRSRVMgJiYgaXRoZXRhIT0xNjM4NCkKICAgICAgICAgICAgIG1iaXRzICs9IHJl
YmFsYW5jZSAtICgzPDxCSVRSRVMpOwotICAgICAgICAgY20gfD0gcXVhbnRfcGFydGl0aW9uKGN0
eCwgWCwgTiwgbWJpdHMsIEIsCi0gICAgICAgICAgICAgICBsb3diYW5kLCBMTSwKKyAgICAgICAg
IGNtIHw9IHF1YW50X3BhcnRpdGlvbihjdHgsIFgsIE4sIG1iaXRzLCBCLCBsb3diYW5kLCBMTSwK
ICAgICAgICAgICAgICAgIE1VTFQxNl8xNl9QMTUoZ2FpbixtaWQpLCBmaWxsKTsKICAgICAgIH0K
ICAgIH0gZWxzZSB7CkBAIC0xMDEyLDE4ICsxMDU2LDE0IEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFu
dF9wYXJ0aXRpb24oc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwKICAgICAgICAg
IC8qIEZpbmFsbHkgZG8gdGhlIGFjdHVhbCBxdWFudGl6YXRpb24gKi8KICAgICAgICAgIGlmIChl
bmNvZGUpCiAgICAgICAgICB7Ci0gICAgICAgICAgICBjbSA9IGFsZ19xdWFudChYLCBOLCBLLCBz
cHJlYWQsIEIsIGVjCi0jaWZkZWYgUkVTWU5USAotICAgICAgICAgICAgICAgICAsIGdhaW4KLSNl
bmRpZgotICAgICAgICAgICAgICAgICApOworICAgICAgICAgICAgY20gPSBhbGdfcXVhbnQoWCwg
TiwgSywgc3ByZWFkLCBCLCBlYywgZ2FpbiwgY3R4LT5yZXN5bnRoLCBjdHgtPmFyY2gpOwogICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGNtID0gYWxnX3VucXVhbnQoWCwgTiwgSywgc3By
ZWFkLCBCLCBlYywgZ2Fpbik7CiAgICAgICAgICB9CiAgICAgICB9IGVsc2UgewogICAgICAgICAg
LyogSWYgdGhlcmUncyBubyBwdWxzZSwgZmlsbCB0aGUgYmFuZCBhbnl3YXkgKi8KICAgICAgICAg
IGludCBqOwotICAgICAgICAgaWYgKHJlc3ludGgpCisgICAgICAgICBpZiAoY3R4LT5yZXN5bnRo
KQogICAgICAgICAgewogICAgICAgICAgICAgdW5zaWduZWQgY21fbWFzazsKICAgICAgICAgICAg
IC8qIEIgY2FuIGJlIGFzIGxhcmdlIGFzIDE2LCBzbyB0aGlzIHNoaWZ0IG1pZ2h0IG92ZXJmbG93
IGFuIGludCBvbiBhCkBAIC0xMDgwLDExICsxMTIwLDYgQEAgc3RhdGljIHVuc2lnbmVkIHF1YW50
X2JhbmQoc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwKICAgIGludCByZWNvbWJp
bmU9MDsKICAgIGludCBsb25nQmxvY2tzOwogICAgdW5zaWduZWQgY209MDsKLSNpZmRlZiBSRVNZ
TlRICi0gICBpbnQgcmVzeW50aCA9IDE7Ci0jZWxzZQotICAgaW50IHJlc3ludGggPSAhY3R4LT5l
bmNvZGU7Ci0jZW5kaWYKICAgIGludCBrOwogICAgaW50IGVuY29kZTsKICAgIGludCB0Zl9jaGFu
Z2U7CkBAIC0xMTUxLDExICsxMTg2LDEwIEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFudF9iYW5kKHN0
cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsCiAgICAgICAgICBkZWludGVybGVhdmVf
aGFkYW1hcmQobG93YmFuZCwgTl9CPj5yZWNvbWJpbmUsIEIwPDxyZWNvbWJpbmUsIGxvbmdCbG9j
a3MpOwogICAgfQogCi0gICBjbSA9IHF1YW50X3BhcnRpdGlvbihjdHgsIFgsIE4sIGIsIEIsIGxv
d2JhbmQsCi0gICAgICAgICBMTSwgZ2FpbiwgZmlsbCk7CisgICBjbSA9IHF1YW50X3BhcnRpdGlv
bihjdHgsIFgsIE4sIGIsIEIsIGxvd2JhbmQsIExNLCBnYWluLCBmaWxsKTsKIAogICAgLyogVGhp
cyBjb2RlIGlzIHVzZWQgYnkgdGhlIGRlY29kZXIgYW5kIGJ5IHRoZSByZXN5bnRoZXNpcy1lbmFi
bGVkIGVuY29kZXIgKi8KLSAgIGlmIChyZXN5bnRoKQorICAgaWYgKGN0eC0+cmVzeW50aCkKICAg
IHsKICAgICAgIC8qIFVuZG8gdGhlIHNhbXBsZSByZW9yZ2FuaXphdGlvbiBnb2luZyBmcm9tIHRp
bWUgb3JkZXIgdG8gZnJlcXVlbmN5IG9yZGVyICovCiAgICAgICBpZiAoQjA+MSkKQEAgLTEyMDgs
MTEgKzEyNDIsNiBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfYmFuZF9zdGVyZW8oc3RydWN0IGJh
bmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwgY2VsdF9ub3JtCiAgICBpbnQgaW52ID0gMDsKICAg
IG9wdXNfdmFsMTYgbWlkPTAsIHNpZGU9MDsKICAgIHVuc2lnbmVkIGNtPTA7Ci0jaWZkZWYgUkVT
WU5USAotICAgaW50IHJlc3ludGggPSAxOwotI2Vsc2UKLSAgIGludCByZXN5bnRoID0gIWN0eC0+
ZW5jb2RlOwotI2VuZGlmCiAgICBpbnQgbWJpdHMsIHNiaXRzLCBkZWx0YTsKICAgIGludCBpdGhl
dGE7CiAgICBpbnQgcWFsbG9jOwpAQCAtMTIzMiw4ICsxMjYxLDcgQEAgc3RhdGljIHVuc2lnbmVk
IHF1YW50X2JhbmRfc3RlcmVvKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsIGNl
bHRfbm9ybQogCiAgICBvcmlnX2ZpbGwgPSBmaWxsOwogCi0gICBjb21wdXRlX3RoZXRhKGN0eCwg
JnNjdHgsIFgsIFksIE4sICZiLCBCLCBCLAotICAgICAgICAgTE0sIDEsICZmaWxsKTsKKyAgIGNv
bXB1dGVfdGhldGEoY3R4LCAmc2N0eCwgWCwgWSwgTiwgJmIsIEIsIEIsIExNLCAxLCAmZmlsbCk7
CiAgICBpbnYgPSBzY3R4LmludjsKICAgIGltaWQgPSBzY3R4LmltaWQ7CiAgICBpc2lkZSA9IHNj
dHguaXNpZGU7CkBAIC0xMjgxLDEzICsxMzA5LDEzIEBAIHN0YXRpYyB1bnNpZ25lZCBxdWFudF9i
YW5kX3N0ZXJlbyhzdHJ1Y3QgYmFuZF9jdHggKmN0eCwgY2VsdF9ub3JtICpYLCBjZWx0X25vcm0K
ICAgICAgIHNpZ24gPSAxLTIqc2lnbjsKICAgICAgIC8qIFdlIHVzZSBvcmlnX2ZpbGwgaGVyZSBi
ZWNhdXNlIHdlIHdhbnQgdG8gZm9sZCB0aGUgc2lkZSwgYnV0IGlmCiAgICAgICAgICBpdGhldGE9
PTE2Mzg0LCB3ZSdsbCBoYXZlIGNsZWFyZWQgdGhlIGxvdyBiaXRzIG9mIGZpbGwuICovCi0gICAg
ICBjbSA9IHF1YW50X2JhbmQoY3R4LCB4MiwgTiwgbWJpdHMsIEIsIGxvd2JhbmQsCi0gICAgICAg
ICAgICBMTSwgbG93YmFuZF9vdXQsIFExNU9ORSwgbG93YmFuZF9zY3JhdGNoLCBvcmlnX2ZpbGwp
OworICAgICAgY20gPSBxdWFudF9iYW5kKGN0eCwgeDIsIE4sIG1iaXRzLCBCLCBsb3diYW5kLCBM
TSwgbG93YmFuZF9vdXQsIFExNU9ORSwKKyAgICAgICAgICAgIGxvd2JhbmRfc2NyYXRjaCwgb3Jp
Z19maWxsKTsKICAgICAgIC8qIFdlIGRvbid0IHNwbGl0IE49MiBiYW5kcywgc28gY20gaXMgZWl0
aGVyIDEgb3IgMCAoZm9yIGEgZm9sZC1jb2xsYXBzZSksCiAgICAgICAgICBhbmQgdGhlcmUncyBu
byBuZWVkIHRvIHdvcnJ5IGFib3V0IG1peGluZyB3aXRoIHRoZSBvdGhlciBjaGFubmVsLiAqLwog
ICAgICAgeTJbMF0gPSAtc2lnbip4MlsxXTsKICAgICAgIHkyWzFdID0gc2lnbip4MlswXTsKLSAg
ICAgIGlmIChyZXN5bnRoKQorICAgICAgaWYgKGN0eC0+cmVzeW50aCkKICAgICAgIHsKICAgICAg
ICAgIGNlbHRfbm9ybSB0bXA7CiAgICAgICAgICBYWzBdID0gTVVMVDE2XzE2X1ExNShtaWQsIFhb
MF0pOwpAQCAtMTMxNCwzOCArMTM0MiwzMiBAQCBzdGF0aWMgdW5zaWduZWQgcXVhbnRfYmFuZF9z
dGVyZW8oc3RydWN0IGJhbmRfY3R4ICpjdHgsIGNlbHRfbm9ybSAqWCwgY2VsdF9ub3JtCiAgICAg
ICB7CiAgICAgICAgICAvKiBJbiBzdGVyZW8gbW9kZSwgd2UgZG8gbm90IGFwcGx5IGEgc2NhbGlu
ZyB0byB0aGUgbWlkIGJlY2F1c2Ugd2UgbmVlZCB0aGUgbm9ybWFsaXplZAogICAgICAgICAgICAg
bWlkIGZvciBmb2xkaW5nIGxhdGVyLiAqLwotICAgICAgICAgY20gPSBxdWFudF9iYW5kKGN0eCwg
WCwgTiwgbWJpdHMsIEIsCi0gICAgICAgICAgICAgICBsb3diYW5kLCBMTSwgbG93YmFuZF9vdXQs
Ci0gICAgICAgICAgICAgICBRMTVPTkUsIGxvd2JhbmRfc2NyYXRjaCwgZmlsbCk7CisgICAgICAg
ICBjbSA9IHF1YW50X2JhbmQoY3R4LCBYLCBOLCBtYml0cywgQiwgbG93YmFuZCwgTE0sIGxvd2Jh
bmRfb3V0LCBRMTVPTkUsCisgICAgICAgICAgICAgICBsb3diYW5kX3NjcmF0Y2gsIGZpbGwpOwog
ICAgICAgICAgcmViYWxhbmNlID0gbWJpdHMgLSAocmViYWxhbmNlLWN0eC0+cmVtYWluaW5nX2Jp
dHMpOwogICAgICAgICAgaWYgKHJlYmFsYW5jZSA+IDM8PEJJVFJFUyAmJiBpdGhldGEhPTApCiAg
ICAgICAgICAgICBzYml0cyArPSByZWJhbGFuY2UgLSAoMzw8QklUUkVTKTsKIAogICAgICAgICAg
LyogRm9yIGEgc3RlcmVvIHNwbGl0LCB0aGUgaGlnaCBiaXRzIG9mIGZpbGwgYXJlIGFsd2F5cyB6
ZXJvLCBzbyBubwogICAgICAgICAgICAgZm9sZGluZyB3aWxsIGJlIGRvbmUgdG8gdGhlIHNpZGUu
ICovCi0gICAgICAgICBjbSB8PSBxdWFudF9iYW5kKGN0eCwgWSwgTiwgc2JpdHMsIEIsCi0gICAg
ICAgICAgICAgICBOVUxMLCBMTSwgTlVMTCwKLSAgICAgICAgICAgICAgIHNpZGUsIE5VTEwsIGZp
bGw+PkIpOworICAgICAgICAgY20gfD0gcXVhbnRfYmFuZChjdHgsIFksIE4sIHNiaXRzLCBCLCBO
VUxMLCBMTSwgTlVMTCwgc2lkZSwgTlVMTCwgZmlsbD4+Qik7CiAgICAgICB9IGVsc2UgewogICAg
ICAgICAgLyogRm9yIGEgc3RlcmVvIHNwbGl0LCB0aGUgaGlnaCBiaXRzIG9mIGZpbGwgYXJlIGFs
d2F5cyB6ZXJvLCBzbyBubwogICAgICAgICAgICAgZm9sZGluZyB3aWxsIGJlIGRvbmUgdG8gdGhl
IHNpZGUuICovCi0gICAgICAgICBjbSA9IHF1YW50X2JhbmQoY3R4LCBZLCBOLCBzYml0cywgQiwK
LSAgICAgICAgICAgICAgIE5VTEwsIExNLCBOVUxMLAotICAgICAgICAgICAgICAgc2lkZSwgTlVM
TCwgZmlsbD4+Qik7CisgICAgICAgICBjbSA9IHF1YW50X2JhbmQoY3R4LCBZLCBOLCBzYml0cywg
QiwgTlVMTCwgTE0sIE5VTEwsIHNpZGUsIE5VTEwsIGZpbGw+PkIpOwogICAgICAgICAgcmViYWxh
bmNlID0gc2JpdHMgLSAocmViYWxhbmNlLWN0eC0+cmVtYWluaW5nX2JpdHMpOwogICAgICAgICAg
aWYgKHJlYmFsYW5jZSA+IDM8PEJJVFJFUyAmJiBpdGhldGEhPTE2Mzg0KQogICAgICAgICAgICAg
bWJpdHMgKz0gcmViYWxhbmNlIC0gKDM8PEJJVFJFUyk7CiAgICAgICAgICAvKiBJbiBzdGVyZW8g
bW9kZSwgd2UgZG8gbm90IGFwcGx5IGEgc2NhbGluZyB0byB0aGUgbWlkIGJlY2F1c2Ugd2UgbmVl
ZCB0aGUgbm9ybWFsaXplZAogICAgICAgICAgICAgbWlkIGZvciBmb2xkaW5nIGxhdGVyLiAqLwot
ICAgICAgICAgY20gfD0gcXVhbnRfYmFuZChjdHgsIFgsIE4sIG1iaXRzLCBCLAotICAgICAgICAg
ICAgICAgbG93YmFuZCwgTE0sIGxvd2JhbmRfb3V0LAotICAgICAgICAgICAgICAgUTE1T05FLCBs
b3diYW5kX3NjcmF0Y2gsIGZpbGwpOworICAgICAgICAgY20gfD0gcXVhbnRfYmFuZChjdHgsIFgs
IE4sIG1iaXRzLCBCLCBsb3diYW5kLCBMTSwgbG93YmFuZF9vdXQsIFExNU9ORSwKKyAgICAgICAg
ICAgICAgIGxvd2JhbmRfc2NyYXRjaCwgZmlsbCk7CiAgICAgICB9CiAgICB9CiAKIAogICAgLyog
VGhpcyBjb2RlIGlzIHVzZWQgYnkgdGhlIGRlY29kZXIgYW5kIGJ5IHRoZSByZXN5bnRoZXNpcy1l
bmFibGVkIGVuY29kZXIgKi8KLSAgIGlmIChyZXN5bnRoKQorICAgaWYgKGN0eC0+cmVzeW50aCkK
ICAgIHsKICAgICAgIGlmIChOIT0yKQogICAgICAgICAgc3RlcmVvX21lcmdlKFgsIFksIG1pZCwg
TiwgY3R4LT5hcmNoKTsKQEAgLTEzNTksMTkgKzEzODEsMzggQEAgc3RhdGljIHVuc2lnbmVkIHF1
YW50X2JhbmRfc3RlcmVvKHN0cnVjdCBiYW5kX2N0eCAqY3R4LCBjZWx0X25vcm0gKlgsIGNlbHRf
bm9ybQogICAgcmV0dXJuIGNtOwogfQogCitzdGF0aWMgdm9pZCBzcGVjaWFsX2h5YnJpZF9mb2xk
aW5nKGNvbnN0IENFTFRNb2RlICptLCBjZWx0X25vcm0gKm5vcm0sIGNlbHRfbm9ybSAqbm9ybTIs
IGludCBzdGFydCwgaW50IE0sIGludCBkdWFsX3N0ZXJlbykKK3sKKyAgIGludCBuMSwgbjI7Cisg
ICBjb25zdCBvcHVzX2ludDE2ICogT1BVU19SRVNUUklDVCBlQmFuZHMgPSBtLT5lQmFuZHM7Cisg
ICBuMSA9IE0qKGVCYW5kc1tzdGFydCsxXS1lQmFuZHNbc3RhcnRdKTsKKyAgIG4yID0gTSooZUJh
bmRzW3N0YXJ0KzJdLWVCYW5kc1tzdGFydCsxXSk7CisgICAvKiBEdXBsaWNhdGUgZW5vdWdoIG9m
IHRoZSBmaXJzdCBiYW5kIGZvbGRpbmcgZGF0YSB0byBiZSBhYmxlIHRvIGZvbGQgdGhlIHNlY29u
ZCBiYW5kLgorICAgICAgQ29waWVzIG5vIGRhdGEgZm9yIENFTFQtb25seSBtb2RlLiAqLworICAg
T1BVU19DT1BZKCZub3JtW24xXSwgJm5vcm1bMipuMSAtIG4yXSwgbjItbjEpOworICAgaWYgKGR1
YWxfc3RlcmVvKQorICAgICAgT1BVU19DT1BZKCZub3JtMltuMV0sICZub3JtMlsyKm4xIC0gbjJd
LCBuMi1uMSk7Cit9CiAKIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENF
TFRNb2RlICptLCBpbnQgc3RhcnQsIGludCBlbmQsCiAgICAgICBjZWx0X25vcm0gKlhfLCBjZWx0
X25vcm0gKllfLCB1bnNpZ25lZCBjaGFyICpjb2xsYXBzZV9tYXNrcywKICAgICAgIGNvbnN0IGNl
bHRfZW5lciAqYmFuZEUsIGludCAqcHVsc2VzLCBpbnQgc2hvcnRCbG9ja3MsIGludCBzcHJlYWQs
CiAgICAgICBpbnQgZHVhbF9zdGVyZW8sIGludCBpbnRlbnNpdHksIGludCAqdGZfcmVzLCBvcHVz
X2ludDMyIHRvdGFsX2JpdHMsCiAgICAgICBvcHVzX2ludDMyIGJhbGFuY2UsIGVjX2N0eCAqZWMs
IGludCBMTSwgaW50IGNvZGVkQmFuZHMsCi0gICAgICBvcHVzX3VpbnQzMiAqc2VlZCwgaW50IGFy
Y2gpCisgICAgICBvcHVzX3VpbnQzMiAqc2VlZCwgaW50IGNvbXBsZXhpdHksIGludCBhcmNoLCBp
bnQgZGlzYWJsZV9pbnYpCiB7CiAgICBpbnQgaTsKICAgIG9wdXNfaW50MzIgcmVtYWluaW5nX2Jp
dHM7CiAgICBjb25zdCBvcHVzX2ludDE2ICogT1BVU19SRVNUUklDVCBlQmFuZHMgPSBtLT5lQmFu
ZHM7CiAgICBjZWx0X25vcm0gKiBPUFVTX1JFU1RSSUNUIG5vcm0sICogT1BVU19SRVNUUklDVCBu
b3JtMjsKICAgIFZBUkRFQ0woY2VsdF9ub3JtLCBfbm9ybSk7CisgICBWQVJERUNMKGNlbHRfbm9y
bSwgX2xvd2JhbmRfc2NyYXRjaCk7CisgICBWQVJERUNMKGNlbHRfbm9ybSwgWF9zYXZlKTsKKyAg
IFZBUkRFQ0woY2VsdF9ub3JtLCBZX3NhdmUpOworICAgVkFSREVDTChjZWx0X25vcm0sIFhfc2F2
ZTIpOworICAgVkFSREVDTChjZWx0X25vcm0sIFlfc2F2ZTIpOworICAgVkFSREVDTChjZWx0X25v
cm0sIG5vcm1fc2F2ZTIpOworICAgaW50IHJlc3ludGhfYWxsb2M7CiAgICBjZWx0X25vcm0gKmxv
d2JhbmRfc2NyYXRjaDsKICAgIGludCBCOwogICAgaW50IE07CkBAIC0xMzc5LDEwICsxNDIwLDEx
IEBAIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBp
bnQgc3RhcnQsIGludCBlbmQsCiAgICBpbnQgdXBkYXRlX2xvd2JhbmQgPSAxOwogICAgaW50IEMg
PSBZXyAhPSBOVUxMID8gMiA6IDE7CiAgICBpbnQgbm9ybV9vZmZzZXQ7CisgICBpbnQgdGhldGFf
cmRvID0gZW5jb2RlICYmIFlfIT1OVUxMICYmICFkdWFsX3N0ZXJlbyAmJiBjb21wbGV4aXR5Pj04
OwogI2lmZGVmIFJFU1lOVEgKICAgIGludCByZXN5bnRoID0gMTsKICNlbHNlCi0gICBpbnQgcmVz
eW50aCA9ICFlbmNvZGU7CisgICBpbnQgcmVzeW50aCA9ICFlbmNvZGUgfHwgdGhldGFfcmRvOwog
I2VuZGlmCiAgICBzdHJ1Y3QgYmFuZF9jdHggY3R4OwogICAgU0FWRV9TVEFDSzsKQEAgLTEzOTUs
OSArMTQzNywyNCBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhpbnQgZW5jb2RlLCBjb25zdCBDRUxU
TW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAogICAgQUxMT0MoX25vcm0sIEMqKE0qZUJhbmRz
W20tPm5iRUJhbmRzLTFdLW5vcm1fb2Zmc2V0KSwgY2VsdF9ub3JtKTsKICAgIG5vcm0gPSBfbm9y
bTsKICAgIG5vcm0yID0gbm9ybSArIE0qZUJhbmRzW20tPm5iRUJhbmRzLTFdLW5vcm1fb2Zmc2V0
OwotICAgLyogV2UgY2FuIHVzZSB0aGUgbGFzdCBiYW5kIGFzIHNjcmF0Y2ggc3BhY2UgYmVjYXVz
ZSB3ZSBkb24ndCBuZWVkIHRoYXQKLSAgICAgIHNjcmF0Y2ggc3BhY2UgZm9yIHRoZSBsYXN0IGJh
bmQuICovCi0gICBsb3diYW5kX3NjcmF0Y2ggPSBYXytNKmVCYW5kc1ttLT5uYkVCYW5kcy0xXTsK
KworICAgLyogRm9yIGRlY29kaW5nLCB3ZSBjYW4gdXNlIHRoZSBsYXN0IGJhbmQgYXMgc2NyYXRj
aCBzcGFjZSBiZWNhdXNlIHdlIGRvbid0IG5lZWQgdGhhdAorICAgICAgc2NyYXRjaCBzcGFjZSBm
b3IgdGhlIGxhc3QgYmFuZCBhbmQgd2UgZG9uJ3QgY2FyZSBhYm91dCB0aGUgZGF0YSB0aGVyZSB1
bnRpbCB3ZSdyZQorICAgICAgZGVjb2RpbmcgdGhlIGxhc3QgYmFuZC4gKi8KKyAgIGlmIChlbmNv
ZGUgJiYgcmVzeW50aCkKKyAgICAgIHJlc3ludGhfYWxsb2MgPSBNKihlQmFuZHNbbS0+bmJFQmFu
ZHNdLWVCYW5kc1ttLT5uYkVCYW5kcy0xXSk7CisgICBlbHNlCisgICAgICByZXN5bnRoX2FsbG9j
ID0gQUxMT0NfTk9ORTsKKyAgIEFMTE9DKF9sb3diYW5kX3NjcmF0Y2gsIHJlc3ludGhfYWxsb2Ms
IGNlbHRfbm9ybSk7CisgICBpZiAoZW5jb2RlICYmIHJlc3ludGgpCisgICAgICBsb3diYW5kX3Nj
cmF0Y2ggPSBfbG93YmFuZF9zY3JhdGNoOworICAgZWxzZQorICAgICAgbG93YmFuZF9zY3JhdGNo
ID0gWF8rTSplQmFuZHNbbS0+bmJFQmFuZHMtMV07CisgICBBTExPQyhYX3NhdmUsIHJlc3ludGhf
YWxsb2MsIGNlbHRfbm9ybSk7CisgICBBTExPQyhZX3NhdmUsIHJlc3ludGhfYWxsb2MsIGNlbHRf
bm9ybSk7CisgICBBTExPQyhYX3NhdmUyLCByZXN5bnRoX2FsbG9jLCBjZWx0X25vcm0pOworICAg
QUxMT0MoWV9zYXZlMiwgcmVzeW50aF9hbGxvYywgY2VsdF9ub3JtKTsKKyAgIEFMTE9DKG5vcm1f
c2F2ZTIsIHJlc3ludGhfYWxsb2MsIGNlbHRfbm9ybSk7CiAKICAgIGxvd2JhbmRfb2Zmc2V0ID0g
MDsKICAgIGN0eC5iYW5kRSA9IGJhbmRFOwpAQCAtMTQwOCw2ICsxNDY1LDExIEBAIHZvaWQgcXVh
bnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBpbnQgc3RhcnQsIGlu
dCBlbmQsCiAgICBjdHguc2VlZCA9ICpzZWVkOwogICAgY3R4LnNwcmVhZCA9IHNwcmVhZDsKICAg
IGN0eC5hcmNoID0gYXJjaDsKKyAgIGN0eC5kaXNhYmxlX2ludiA9IGRpc2FibGVfaW52OworICAg
Y3R4LnJlc3ludGggPSByZXN5bnRoOworICAgY3R4LnRoZXRhX3JvdW5kID0gMDsKKyAgIC8qIEF2
b2lkIGluamVjdGluZyBub2lzZSBpbiB0aGUgZmlyc3QgYmFuZCBvbiB0cmFuc2llbnRzLiAqLwor
ICAgY3R4LmF2b2lkX3NwbGl0X25vaXNlID0gQiA+IDE7CiAgICBmb3IgKGk9c3RhcnQ7aTxlbmQ7
aSsrKQogICAgewogICAgICAgb3B1c19pbnQzMiB0ZWxsOwpAQCAtMTQ0NSw4ICsxNTA3LDE1IEBA
IHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBpbnQg
c3RhcnQsIGludCBlbmQsCiAgICAgICAgICBiID0gMDsKICAgICAgIH0KIAorI2lmZGVmIEVOQUJM
RV9VUERBVEVfRFJBRlQKKyAgICAgIGlmIChyZXN5bnRoICYmIChNKmVCYW5kc1tpXS1OID49IE0q
ZUJhbmRzW3N0YXJ0XSB8fCBpPT1zdGFydCsxKSAmJiAodXBkYXRlX2xvd2JhbmQgfHwgbG93YmFu
ZF9vZmZzZXQ9PTApKQorICAgICAgICAgICAgbG93YmFuZF9vZmZzZXQgPSBpOworICAgICAgaWYg
KGkgPT0gc3RhcnQrMSkKKyAgICAgICAgIHNwZWNpYWxfaHlicmlkX2ZvbGRpbmcobSwgbm9ybSwg
bm9ybTIsIHN0YXJ0LCBNLCBkdWFsX3N0ZXJlbyk7CisjZWxzZQogICAgICAgaWYgKHJlc3ludGgg
JiYgTSplQmFuZHNbaV0tTiA+PSBNKmVCYW5kc1tzdGFydF0gJiYgKHVwZGF0ZV9sb3diYW5kIHx8
IGxvd2JhbmRfb2Zmc2V0PT0wKSkKICAgICAgICAgICAgIGxvd2JhbmRfb2Zmc2V0ID0gaTsKKyNl
bmRpZgogCiAgICAgICB0Zl9jaGFuZ2UgPSB0Zl9yZXNbaV07CiAgICAgICBjdHgudGZfY2hhbmdl
ID0gdGZfY2hhbmdlOwpAQCAtMTQ1Nyw3ICsxNTI2LDcgQEAgdm9pZCBxdWFudF9hbGxfYmFuZHMo
aW50IGVuY29kZSwgY29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwKICAgICAg
ICAgICAgIFkgPSBub3JtOwogICAgICAgICAgbG93YmFuZF9zY3JhdGNoID0gTlVMTDsKICAgICAg
IH0KLSAgICAgIGlmIChpPT1lbmQtMSkKKyAgICAgIGlmIChsYXN0ICYmICF0aGV0YV9yZG8pCiAg
ICAgICAgICBsb3diYW5kX3NjcmF0Y2ggPSBOVUxMOwogCiAgICAgICAvKiBHZXQgYSBjb25zZXJ2
YXRpdmUgZXN0aW1hdGUgb2YgdGhlIGNvbGxhcHNlX21hc2sncyBmb3IgdGhlIGJhbmRzIHdlJ3Jl
CkBAIC0xNDcyLDcgKzE1NDEsMTEgQEAgdm9pZCBxdWFudF9hbGxfYmFuZHMoaW50IGVuY29kZSwg
Y29uc3QgQ0VMVE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwKICAgICAgICAgIGZvbGRfc3Rh
cnQgPSBsb3diYW5kX29mZnNldDsKICAgICAgICAgIHdoaWxlKE0qZUJhbmRzWy0tZm9sZF9zdGFy
dF0gPiBlZmZlY3RpdmVfbG93YmFuZCtub3JtX29mZnNldCk7CiAgICAgICAgICBmb2xkX2VuZCA9
IGxvd2JhbmRfb2Zmc2V0LTE7CisjaWZkZWYgRU5BQkxFX1VQREFURV9EUkFGVAorICAgICAgICAg
d2hpbGUoKytmb2xkX2VuZCA8IGkgJiYgTSplQmFuZHNbZm9sZF9lbmRdIDwgZWZmZWN0aXZlX2xv
d2JhbmQrbm9ybV9vZmZzZXQrTik7CisjZWxzZQogICAgICAgICAgd2hpbGUoTSplQmFuZHNbKytm
b2xkX2VuZF0gPCBlZmZlY3RpdmVfbG93YmFuZCtub3JtX29mZnNldCtOKTsKKyNlbmRpZgogICAg
ICAgICAgeF9jbSA9IHlfY20gPSAwOwogICAgICAgICAgZm9sZF9pID0gZm9sZF9zdGFydDsgZG8g
ewogICAgICAgICAgICB4X2NtIHw9IGNvbGxhcHNlX21hc2tzW2ZvbGRfaSpDKzBdOwpAQCAtMTUw
NSwxMyArMTU3OCw3NyBAQCB2b2lkIHF1YW50X2FsbF9iYW5kcyhpbnQgZW5jb2RlLCBjb25zdCBD
RUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAogICAgICAgfSBlbHNlIHsKICAgICAgICAg
IGlmIChZIT1OVUxMKQogICAgICAgICAgewotICAgICAgICAgICAgeF9jbSA9IHF1YW50X2JhbmRf
c3RlcmVvKCZjdHgsIFgsIFksIE4sIGIsIEIsCi0gICAgICAgICAgICAgICAgICBlZmZlY3RpdmVf
bG93YmFuZCAhPSAtMSA/IG5vcm0rZWZmZWN0aXZlX2xvd2JhbmQgOiBOVUxMLCBMTSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgIGxhc3Q/TlVMTDpub3JtK00qZUJhbmRzW2ldLW5vcm1fb2Zmc2V0
LCBsb3diYW5kX3NjcmF0Y2gsIHhfY218eV9jbSk7CisgICAgICAgICAgICBpZiAodGhldGFfcmRv
ICYmIGkgPCBpbnRlbnNpdHkpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICBlY19jdHgg
ZWNfc2F2ZSwgZWNfc2F2ZTI7CisgICAgICAgICAgICAgICBzdHJ1Y3QgYmFuZF9jdHggY3R4X3Nh
dmUsIGN0eF9zYXZlMjsKKyAgICAgICAgICAgICAgIG9wdXNfdmFsMzIgZGlzdDAsIGRpc3QxOwor
ICAgICAgICAgICAgICAgdW5zaWduZWQgY20sIGNtMjsKKyAgICAgICAgICAgICAgIGludCBuc3Rh
cnRfYnl0ZXMsIG5lbmRfYnl0ZXMsIHNhdmVfYnl0ZXM7CisgICAgICAgICAgICAgICB1bnNpZ25l
ZCBjaGFyICpieXRlc19idWY7CisgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyIGJ5dGVzX3Nh
dmVbMTI3NV07CisgICAgICAgICAgICAgICBvcHVzX3ZhbDE2IHdbMl07CisgICAgICAgICAgICAg
ICBjb21wdXRlX2NoYW5uZWxfd2VpZ2h0cyhiYW5kRVtpXSwgYmFuZEVbaSttLT5uYkVCYW5kc10s
IHcpOworICAgICAgICAgICAgICAgLyogTWFrZSBhIGNvcHkuICovCisgICAgICAgICAgICAgICBj
bSA9IHhfY218eV9jbTsKKyAgICAgICAgICAgICAgIGVjX3NhdmUgPSAqZWM7CisgICAgICAgICAg
ICAgICBjdHhfc2F2ZSA9IGN0eDsKKyAgICAgICAgICAgICAgIE9QVVNfQ09QWShYX3NhdmUsIFgs
IE4pOworICAgICAgICAgICAgICAgT1BVU19DT1BZKFlfc2F2ZSwgWSwgTik7CisgICAgICAgICAg
ICAgICAvKiBFbmNvZGUgYW5kIHJvdW5kIGRvd24uICovCisgICAgICAgICAgICAgICBjdHgudGhl
dGFfcm91bmQgPSAtMTsKKyAgICAgICAgICAgICAgIHhfY20gPSBxdWFudF9iYW5kX3N0ZXJlbygm
Y3R4LCBYLCBZLCBOLCBiLCBCLAorICAgICAgICAgICAgICAgICAgICAgZWZmZWN0aXZlX2xvd2Jh
bmQgIT0gLTEgPyBub3JtK2VmZmVjdGl2ZV9sb3diYW5kIDogTlVMTCwgTE0sCisgICAgICAgICAg
ICAgICAgICAgICBsYXN0P05VTEw6bm9ybStNKmVCYW5kc1tpXS1ub3JtX29mZnNldCwgbG93YmFu
ZF9zY3JhdGNoLCBjbSk7CisgICAgICAgICAgICAgICBkaXN0MCA9IE1VTFQxNl8zMl9RMTUod1sw
XSwgY2VsdF9pbm5lcl9wcm9kKFhfc2F2ZSwgWCwgTiwgYXJjaCkpICsgTVVMVDE2XzMyX1ExNSh3
WzFdLCBjZWx0X2lubmVyX3Byb2QoWV9zYXZlLCBZLCBOLCBhcmNoKSk7CisKKyAgICAgICAgICAg
ICAgIC8qIFNhdmUgZmlyc3QgcmVzdWx0LiAqLworICAgICAgICAgICAgICAgY20yID0geF9jbTsK
KyAgICAgICAgICAgICAgIGVjX3NhdmUyID0gKmVjOworICAgICAgICAgICAgICAgY3R4X3NhdmUy
ID0gY3R4OworICAgICAgICAgICAgICAgT1BVU19DT1BZKFhfc2F2ZTIsIFgsIE4pOworICAgICAg
ICAgICAgICAgT1BVU19DT1BZKFlfc2F2ZTIsIFksIE4pOworICAgICAgICAgICAgICAgaWYgKCFs
YXN0KQorICAgICAgICAgICAgICAgICAgT1BVU19DT1BZKG5vcm1fc2F2ZTIsIG5vcm0rTSplQmFu
ZHNbaV0tbm9ybV9vZmZzZXQsIE4pOworICAgICAgICAgICAgICAgbnN0YXJ0X2J5dGVzID0gZWNf
c2F2ZS5vZmZzOworICAgICAgICAgICAgICAgbmVuZF9ieXRlcyA9IGVjX3NhdmUuc3RvcmFnZTsK
KyAgICAgICAgICAgICAgIGJ5dGVzX2J1ZiA9IGVjX3NhdmUuYnVmK25zdGFydF9ieXRlczsKKyAg
ICAgICAgICAgICAgIHNhdmVfYnl0ZXMgPSBuZW5kX2J5dGVzLW5zdGFydF9ieXRlczsKKyAgICAg
ICAgICAgICAgIE9QVVNfQ09QWShieXRlc19zYXZlLCBieXRlc19idWYsIHNhdmVfYnl0ZXMpOwor
CisgICAgICAgICAgICAgICAvKiBSZXN0b3JlICovCisgICAgICAgICAgICAgICAqZWMgPSBlY19z
YXZlOworICAgICAgICAgICAgICAgY3R4ID0gY3R4X3NhdmU7CisgICAgICAgICAgICAgICBPUFVT
X0NPUFkoWCwgWF9zYXZlLCBOKTsKKyAgICAgICAgICAgICAgIE9QVVNfQ09QWShZLCBZX3NhdmUs
IE4pOworICAgICAgICAgICAgICAgaWYgKGkgPT0gc3RhcnQrMSkKKyAgICAgICAgICAgICAgICAg
IHNwZWNpYWxfaHlicmlkX2ZvbGRpbmcobSwgbm9ybSwgbm9ybTIsIHN0YXJ0LCBNLCBkdWFsX3N0
ZXJlbyk7CisgICAgICAgICAgICAgICAvKiBFbmNvZGUgYW5kIHJvdW5kIHVwLiAqLworICAgICAg
ICAgICAgICAgY3R4LnRoZXRhX3JvdW5kID0gMTsKKyAgICAgICAgICAgICAgIHhfY20gPSBxdWFu
dF9iYW5kX3N0ZXJlbygmY3R4LCBYLCBZLCBOLCBiLCBCLAorICAgICAgICAgICAgICAgICAgICAg
ZWZmZWN0aXZlX2xvd2JhbmQgIT0gLTEgPyBub3JtK2VmZmVjdGl2ZV9sb3diYW5kIDogTlVMTCwg
TE0sCisgICAgICAgICAgICAgICAgICAgICBsYXN0P05VTEw6bm9ybStNKmVCYW5kc1tpXS1ub3Jt
X29mZnNldCwgbG93YmFuZF9zY3JhdGNoLCBjbSk7CisgICAgICAgICAgICAgICBkaXN0MSA9IE1V
TFQxNl8zMl9RMTUod1swXSwgY2VsdF9pbm5lcl9wcm9kKFhfc2F2ZSwgWCwgTiwgYXJjaCkpICsg
TVVMVDE2XzMyX1ExNSh3WzFdLCBjZWx0X2lubmVyX3Byb2QoWV9zYXZlLCBZLCBOLCBhcmNoKSk7
CisgICAgICAgICAgICAgICBpZiAoZGlzdDAgPj0gZGlzdDEpIHsKKyAgICAgICAgICAgICAgICAg
IHhfY20gPSBjbTI7CisgICAgICAgICAgICAgICAgICAqZWMgPSBlY19zYXZlMjsKKyAgICAgICAg
ICAgICAgICAgIGN0eCA9IGN0eF9zYXZlMjsKKyAgICAgICAgICAgICAgICAgIE9QVVNfQ09QWShY
LCBYX3NhdmUyLCBOKTsKKyAgICAgICAgICAgICAgICAgIE9QVVNfQ09QWShZLCBZX3NhdmUyLCBO
KTsKKyAgICAgICAgICAgICAgICAgIGlmICghbGFzdCkKKyAgICAgICAgICAgICAgICAgICAgIE9Q
VVNfQ09QWShub3JtK00qZUJhbmRzW2ldLW5vcm1fb2Zmc2V0LCBub3JtX3NhdmUyLCBOKTsKKyAg
ICAgICAgICAgICAgICAgIE9QVVNfQ09QWShieXRlc19idWYsIGJ5dGVzX3NhdmUsIHNhdmVfYnl0
ZXMpOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAg
ICAgIGN0eC50aGV0YV9yb3VuZCA9IDA7CisgICAgICAgICAgICAgICB4X2NtID0gcXVhbnRfYmFu
ZF9zdGVyZW8oJmN0eCwgWCwgWSwgTiwgYiwgQiwKKyAgICAgICAgICAgICAgICAgICAgIGVmZmVj
dGl2ZV9sb3diYW5kICE9IC0xID8gbm9ybStlZmZlY3RpdmVfbG93YmFuZCA6IE5VTEwsIExNLAor
ICAgICAgICAgICAgICAgICAgICAgbGFzdD9OVUxMOm5vcm0rTSplQmFuZHNbaV0tbm9ybV9vZmZz
ZXQsIGxvd2JhbmRfc2NyYXRjaCwgeF9jbXx5X2NtKTsKKyAgICAgICAgICAgIH0KICAgICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgICB4X2NtID0gcXVhbnRfYmFuZCgmY3R4LCBYLCBOLCBiLCBC
LAogICAgICAgICAgICAgICAgICAgZWZmZWN0aXZlX2xvd2JhbmQgIT0gLTEgPyBub3JtK2VmZmVj
dGl2ZV9sb3diYW5kIDogTlVMTCwgTE0sCi0gICAgICAgICAgICAgICAgICAgICAgICBsYXN0P05V
TEw6bm9ybStNKmVCYW5kc1tpXS1ub3JtX29mZnNldCwgUTE1T05FLCBsb3diYW5kX3NjcmF0Y2gs
IHhfY218eV9jbSk7CisgICAgICAgICAgICAgICAgICBsYXN0P05VTEw6bm9ybStNKmVCYW5kc1tp
XS1ub3JtX29mZnNldCwgUTE1T05FLCBsb3diYW5kX3NjcmF0Y2gsIHhfY218eV9jbSk7CiAgICAg
ICAgICB9CiAgICAgICAgICB5X2NtID0geF9jbTsKICAgICAgIH0KQEAgLTE1MjEsNiArMTY1OCw5
IEBAIHZvaWQgcXVhbnRfYWxsX2JhbmRzKGludCBlbmNvZGUsIGNvbnN0IENFTFRNb2RlICptLCBp
bnQgc3RhcnQsIGludCBlbmQsCiAKICAgICAgIC8qIFVwZGF0ZSB0aGUgZm9sZGluZyBwb3NpdGlv
biBvbmx5IGFzIGxvbmcgYXMgd2UgaGF2ZSAxIGJpdC9zYW1wbGUgZGVwdGguICovCiAgICAgICB1
cGRhdGVfbG93YmFuZCA9IGI+KE48PEJJVFJFUyk7CisgICAgICAvKiBXZSBvbmx5IG5lZWQgdG8g
YXZvaWQgbm9pc2Ugb24gYSBzcGxpdCBmb3IgdGhlIGZpcnN0IGJhbmQuIEFmdGVyIHRoYXQsIHdl
CisgICAgICAgICBoYXZlIGZvbGRpbmcuICovCisgICAgICBjdHguYXZvaWRfc3BsaXRfbm9pc2Ug
PSAwOwogICAgfQogICAgKnNlZWQgPSBjdHguc2VlZDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2JhbmRz
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvYmFuZHMuaAppbmRleCBlOGJlZjRiYWQwZTBiMjU0ZDkxMDYyYzM2YjdhYWUyNWQz
MWRjNzhhLi4yNDg4YzE4NTIxMzBkNjVjMWU3NjBiZjU3ZWU4NWY2NWVjMWJiM2IwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvYmFuZHMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvYmFuZHMuaApAQCAtMzYsMTIgKzM2LDE1IEBACiAj
aW5jbHVkZSAiZW50ZGVjLmgiCiAjaW5jbHVkZSAicmF0ZS5oIgogCitvcHVzX2ludDE2IGJpdGV4
YWN0X2NvcyhvcHVzX2ludDE2IHgpOworaW50IGJpdGV4YWN0X2xvZzJ0YW4oaW50IGlzaW4saW50
IGljb3MpOworCiAvKiogQ29tcHV0ZSB0aGUgYW1wbGl0dWRlIChzcXJ0IGVuZXJneSkgaW4gZWFj
aCBvZiB0aGUgYmFuZHMKICAqIEBwYXJhbSBtIE1vZGUgZGF0YQogICogQHBhcmFtIFggU3BlY3Ry
dW0KICAqIEBwYXJhbSBiYW5kRSBTcXVhcmUgcm9vdCBvZiB0aGUgZW5lcmd5IGZvciBlYWNoIGJh
bmQgKHJldHVybmVkKQogICovCi12b2lkIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhjb25zdCBDRUxU
TW9kZSAqbSwgY29uc3QgY2VsdF9zaWcgKlgsIGNlbHRfZW5lciAqYmFuZEUsIGludCBlbmQsIGlu
dCBDLCBpbnQgTE0pOwordm9pZCBjb21wdXRlX2JhbmRfZW5lcmdpZXMoY29uc3QgQ0VMVE1vZGUg
Km0sIGNvbnN0IGNlbHRfc2lnICpYLCBjZWx0X2VuZXIgKmJhbmRFLCBpbnQgZW5kLCBpbnQgQywg
aW50IExNLCBpbnQgYXJjaCk7CiAKIC8qdm9pZCBjb21wdXRlX25vaXNlX2VuZXJnaWVzKGNvbnN0
IENFTFRNb2RlICptLCBjb25zdCBjZWx0X3NpZyAqWCwgY29uc3Qgb3B1c192YWwxNiAqdG9uYWxp
dHksIGNlbHRfZW5lciAqYmFuZEUpOyovCiAKQEAgLTEwNSw3ICsxMDgsNyBAQCB2b2lkIHF1YW50
X2FsbF9iYW5kcyhpbnQgZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQg
ZW5kLAogICAgICAgY29uc3QgY2VsdF9lbmVyICpiYW5kRSwgaW50ICpwdWxzZXMsIGludCBzaG9y
dEJsb2NrcywgaW50IHNwcmVhZCwKICAgICAgIGludCBkdWFsX3N0ZXJlbywgaW50IGludGVuc2l0
eSwgaW50ICp0Zl9yZXMsIG9wdXNfaW50MzIgdG90YWxfYml0cywKICAgICAgIG9wdXNfaW50MzIg
YmFsYW5jZSwgZWNfY3R4ICplYywgaW50IE0sIGludCBjb2RlZEJhbmRzLCBvcHVzX3VpbnQzMiAq
c2VlZCwKLSAgICAgIGludCBhcmNoKTsKKyAgICAgIGludCBjb21wbGV4aXR5LCBpbnQgYXJjaCwg
aW50IGRpc2FibGVfaW52KTsKIAogdm9pZCBhbnRpX2NvbGxhcHNlKGNvbnN0IENFTFRNb2RlICpt
LCBjZWx0X25vcm0gKlhfLAogICAgICAgdW5zaWduZWQgY2hhciAqY29sbGFwc2VfbWFza3MsIGlu
dCBMTSwgaW50IEMsIGludCBzaXplLCBpbnQgc3RhcnQsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdC5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L2NlbHQuYwppbmRleCBiMTIxYzUxYTFmYWE2NDg2MDcxOTUwZWU0YTQ1OTVlZGEwNWU4
YmM5Li45Y2UyMzQ2OTVjZTBkMzE0Mjc5MDIyODYxZGYxNWNhYmE1MTkwZDgzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvY2VsdC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0LmMKQEAgLTExMSwyNiArMTExLDMxIEBAIHZvaWQg
Y29tYl9maWx0ZXJfY29uc3RfYyhvcHVzX3ZhbDMyICp5LCBvcHVzX3ZhbDMyICp4LCBpbnQgVCwg
aW50IE4sCiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHhbaV0sIGcxMCwgeDIpOwogICAgICAgdCA9
IE1BQzE2XzMyX1ExNih0LCBnMTEsIEFERDMyKHgxLHgzKSk7CiAgICAgICB0ID0gTUFDMTZfMzJf
UTE2KHQsIGcxMiwgQUREMzIoeDAseDQpKTsKKyAgICAgIHQgPSBTQVRVUkFURSh0LCBTSUdfU0FU
KTsKICAgICAgIHlbaV0gPSB0OwogICAgICAgeDQ9U0hMMzIoeFtpLVQrM10sMSk7CiAgICAgICB0
ID0gTUFDMTZfMzJfUTE2KHhbaSsxXSwgZzEwLCB4MSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2
KHQsIGcxMSwgQUREMzIoeDAseDIpKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYodCwgZzEyLCBB
REQzMih4NCx4MykpOworICAgICAgdCA9IFNBVFVSQVRFKHQsIFNJR19TQVQpOwogICAgICAgeVtp
KzFdID0gdDsKICAgICAgIHgzPVNITDMyKHhbaS1UKzRdLDEpOwogICAgICAgdCA9IE1BQzE2XzMy
X1ExNih4W2krMl0sIGcxMCwgeDApOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTEsIEFE
RDMyKHg0LHgxKSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcxMiwgQUREMzIoeDMseDIp
KTsKKyAgICAgIHQgPSBTQVRVUkFURSh0LCBTSUdfU0FUKTsKICAgICAgIHlbaSsyXSA9IHQ7CiAg
ICAgICB4Mj1TSEwzMih4W2ktVCs1XSwxKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYoeFtpKzNd
LCBnMTAsIHg0KTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYodCwgZzExLCBBREQzMih4Myx4MCkp
OwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTIsIEFERDMyKHgyLHgxKSk7CisgICAgICB0
ID0gU0FUVVJBVEUodCwgU0lHX1NBVCk7CiAgICAgICB5W2krM10gPSB0OwogICAgICAgeDE9U0hM
MzIoeFtpLVQrNl0sMSk7CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHhbaSs0XSwgZzEwLCB4Myk7
CiAgICAgICB0ID0gTUFDMTZfMzJfUTE2KHQsIGcxMSwgQUREMzIoeDIseDQpKTsKICAgICAgIHQg
PSBNQUMxNl8zMl9RMTYodCwgZzEyLCBBREQzMih4MSx4MCkpOworICAgICAgdCA9IFNBVFVSQVRF
KHQsIFNJR19TQVQpOwogICAgICAgeVtpKzRdID0gdDsKICAgIH0KICNpZmRlZiBDVVNUT01fTU9E
RVMKQEAgLTE0MSw2ICsxNDYsNyBAQCB2b2lkIGNvbWJfZmlsdGVyX2NvbnN0X2Mob3B1c192YWwz
MiAqeSwgb3B1c192YWwzMiAqeCwgaW50IFQsIGludCBOLAogICAgICAgdCA9IE1BQzE2XzMyX1Ex
Nih4W2ldLCBnMTAsIHgyKTsKICAgICAgIHQgPSBNQUMxNl8zMl9RMTYodCwgZzExLCBBREQzMih4
MSx4MykpOwogICAgICAgdCA9IE1BQzE2XzMyX1ExNih0LCBnMTIsIEFERDMyKHgwLHg0KSk7Cisg
ICAgICB0ID0gU0FUVVJBVEUodCwgU0lHX1NBVCk7CiAgICAgICB5W2ldID0gdDsKICAgICAgIHg0
PXgzOwogICAgICAgeDM9eDI7CkBAIC0xNjksNiArMTc1LDcgQEAgdm9pZCBjb21iX2ZpbHRlcl9j
b25zdF9jKG9wdXNfdmFsMzIgKnksIG9wdXNfdmFsMzIgKngsIGludCBULCBpbnQgTiwKICAgICAg
ICAgICAgICAgICsgTVVMVDE2XzMyX1ExNShnMTAseDIpCiAgICAgICAgICAgICAgICArIE1VTFQx
Nl8zMl9RMTUoZzExLEFERDMyKHgxLHgzKSkKICAgICAgICAgICAgICAgICsgTVVMVDE2XzMyX1Ex
NShnMTIsQUREMzIoeDAseDQpKTsKKyAgICAgIHlbaV0gPSBTQVRVUkFURSh5W2ldLCBTSUdfU0FU
KTsKICAgICAgIHg0PXgzOwogICAgICAgeDM9eDI7CiAgICAgICB4Mj14MTsKQEAgLTIwMCw2ICsy
MDcsMTAgQEAgdm9pZCBjb21iX2ZpbHRlcihvcHVzX3ZhbDMyICp5LCBvcHVzX3ZhbDMyICp4LCBp
bnQgVDAsIGludCBUMSwgaW50IE4sCiAgICAgICAgICBPUFVTX01PVkUoeSwgeCwgTik7CiAgICAg
ICByZXR1cm47CiAgICB9CisgICAvKiBXaGVuIHRoZSBnYWluIGlzIHplcm8sIFQwIGFuZC9vciBU
MSBpcyBzZXQgdG8gemVyby4gV2UgbmVlZAorICAgICAgdG8gaGF2ZSB0aGVuIGJlIGF0IGxlYXN0
IDIgdG8gYXZvaWQgcHJvY2Vzc2luZyBnYXJiYWdlIGRhdGEuICovCisgICBUMCA9IElNQVgoVDAs
IENPTUJGSUxURVJfTUlOUEVSSU9EKTsKKyAgIFQxID0gSU1BWChUMSwgQ09NQkZJTFRFUl9NSU5Q
RVJJT0QpOwogICAgZzAwID0gTVVMVDE2XzE2X1AxNShnMCwgZ2FpbnNbdGFwc2V0MF1bMF0pOwog
ICAgZzAxID0gTVVMVDE2XzE2X1AxNShnMCwgZ2FpbnNbdGFwc2V0MF1bMV0pOwogICAgZzAyID0g
TVVMVDE2XzE2X1AxNShnMCwgZ2FpbnNbdGFwc2V0MF1bMl0pOwpAQCAtMjI1LDYgKzIzNiw3IEBA
IHZvaWQgY29tYl9maWx0ZXIob3B1c192YWwzMiAqeSwgb3B1c192YWwzMiAqeCwgaW50IFQwLCBp
bnQgVDEsIGludCBOLAogICAgICAgICAgICAgICAgKyBNVUxUMTZfMzJfUTE1KE1VTFQxNl8xNl9R
MTUoZixnMTApLHgyKQogICAgICAgICAgICAgICAgKyBNVUxUMTZfMzJfUTE1KE1VTFQxNl8xNl9R
MTUoZixnMTEpLEFERDMyKHgxLHgzKSkKICAgICAgICAgICAgICAgICsgTVVMVDE2XzMyX1ExNShN
VUxUMTZfMTZfUTE1KGYsZzEyKSxBREQzMih4MCx4NCkpOworICAgICAgeVtpXSA9IFNBVFVSQVRF
KHlbaV0sIFNJR19TQVQpOwogICAgICAgeDQ9eDM7CiAgICAgICB4Mz14MjsKICAgICAgIHgyPXgx
OwpAQCAtMjQ0LDExICsyNTYsMTYgQEAgdm9pZCBjb21iX2ZpbHRlcihvcHVzX3ZhbDMyICp5LCBv
cHVzX3ZhbDMyICp4LCBpbnQgVDAsIGludCBUMSwgaW50IE4sCiB9CiAjZW5kaWYgLyogT1ZFUlJJ
REVfY29tYl9maWx0ZXIgKi8KIAorLyogVEYgY2hhbmdlIHRhYmxlLiBQb3NpdGl2ZSB2YWx1ZXMg
bWVhbiBiZXR0ZXIgZnJlcXVlbmN5IHJlc29sdXRpb24gKGxvbmdlcgorICAgZWZmZWN0aXZlIHdp
bmRvdyksIHdoZXJlYXMgbmVnYXRpdmUgdmFsdWVzIG1lYW4gYmV0dGVyIHRpbWUgcmVzb2x1dGlv
bgorICAgKHNob3J0ZXIgZWZmZWN0aXZlIHdpbmRvdykuIFRoZSBzZWNvbmQgaW5kZXggaXMgY29t
cHV0ZWQgYXM6CisgICA0KmlzVHJhbnNpZW50ICsgMip0Zl9zZWxlY3QgKyBwZXJfYmFuZF9mbGFn
ICovCiBjb25zdCBzaWduZWQgY2hhciB0Zl9zZWxlY3RfdGFibGVbNF1bOF0gPSB7Ci0gICAgICB7
MCwgLTEsIDAsIC0xLCAgICAwLC0xLCAwLC0xfSwKLSAgICAgIHswLCAtMSwgMCwgLTIsICAgIDEs
IDAsIDEsLTF9LAotICAgICAgezAsIC0yLCAwLCAtMywgICAgMiwgMCwgMSwtMX0sCi0gICAgICB7
MCwgLTIsIDAsIC0zLCAgICAzLCAwLCAxLC0xfSwKKyAgICAvKmlzVHJhbnNpZW50PTAgICAgIGlz
VHJhbnNpZW50PTEgKi8KKyAgICAgIHswLCAtMSwgMCwgLTEsICAgIDAsLTEsIDAsLTF9LCAvKiAy
LjUgbXMgKi8KKyAgICAgIHswLCAtMSwgMCwgLTIsICAgIDEsIDAsIDEsLTF9LCAvKiA1IG1zICov
CisgICAgICB7MCwgLTIsIDAsIC0zLCAgICAyLCAwLCAxLC0xfSwgLyogMTAgbXMgKi8KKyAgICAg
IHswLCAtMiwgMCwgLTMsICAgIDMsIDAsIDEsLTF9LCAvKiAyMCBtcyAqLwogfTsKIAogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvY2VsdC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHQuaAppbmRleCBkMWY3ZWI2OTBkYjNmNjQxMDQ3
YjMxYmFjN2M0MTMyOGNmYmEzMDU4Li43MDE3NTMwMTAwYTNkOTA0NTZiNzY2YTU1ODQ0NWRiOWFl
NDMwODZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0LmgKQEAgLTUwLDYg
KzUwLDggQEAgZXh0ZXJuICJDIiB7CiAjZGVmaW5lIENFTFREZWNvZGVyIE9wdXNDdXN0b21EZWNv
ZGVyCiAjZGVmaW5lIENFTFRNb2RlIE9wdXNDdXN0b21Nb2RlCiAKKyNkZWZpbmUgTEVBS19CQU5E
UyAxOQorCiB0eXBlZGVmIHN0cnVjdCB7CiAgICBpbnQgdmFsaWQ7CiAgICBmbG9hdCB0b25hbGl0
eTsKQEAgLTU3LDE3ICs1OSwyNSBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICBmbG9hdCBub2lzaW5l
c3M7CiAgICBmbG9hdCBhY3Rpdml0eTsKICAgIGZsb2F0IG11c2ljX3Byb2I7Ci0gICBpbnQgICAg
ICAgIGJhbmR3aWR0aDsKLX1BbmFseXNpc0luZm87CisgICBmbG9hdCB2YWRfcHJvYjsKKyAgIGlu
dCAgIGJhbmR3aWR0aDsKKyAgIGZsb2F0IGFjdGl2aXR5X3Byb2JhYmlsaXR5OworICAgLyogU3Rv
cmUgYXMgUTYgY2hhciB0byBzYXZlIHNwYWNlLiAqLworICAgdW5zaWduZWQgY2hhciBsZWFrX2Jv
b3N0W0xFQUtfQkFORFNdOworfSBBbmFseXNpc0luZm87CisKK3R5cGVkZWYgc3RydWN0IHsKKyAg
IGludCBzaWduYWxUeXBlOworICAgaW50IG9mZnNldDsKK30gU0lMS0luZm87CiAKICNkZWZpbmUg
X19jZWx0X2NoZWNrX21vZGVfcHRyX3B0cihwdHIpICgocHRyKSArICgocHRyKSAtIChjb25zdCBD
RUxUTW9kZSoqKShwdHIpKSkKIAogI2RlZmluZSBfX2NlbHRfY2hlY2tfYW5hbHlzaXNfcHRyKHB0
cikgKChwdHIpICsgKChwdHIpIC0gKGNvbnN0IEFuYWx5c2lzSW5mbyopKHB0cikpKQogCi0vKiBF
bmNvZGVyL2RlY29kZXIgUmVxdWVzdHMgKi8KKyNkZWZpbmUgX19jZWx0X2NoZWNrX3NpbGtpbmZv
X3B0cihwdHIpICgocHRyKSArICgocHRyKSAtIChjb25zdCBTSUxLSW5mbyopKHB0cikpKQogCi0v
KiBFeHBvc2UgdGhpcyBvcHRpb24gYWdhaW4gd2hlbiB2YXJpYWJsZSBmcmFtZXNpemUgYWN0dWFs
bHkgd29ya3MgKi8KLSNkZWZpbmUgT1BVU19GUkFNRVNJWkVfVkFSSUFCTEUgICAgICAgICAgICAg
IDUwMTAgLyoqPCBPcHRpbWl6ZSB0aGUgZnJhbWUgc2l6ZSBkeW5hbWljYWxseSAqLworLyogRW5j
b2Rlci9kZWNvZGVyIFJlcXVlc3RzICovCiAKIAogI2RlZmluZSBDRUxUX1NFVF9QUkVESUNUSU9O
X1JFUVVFU1QgICAgMTAwMDIKQEAgLTExNiw2ICsxMjYsOSBAQCB0eXBlZGVmIHN0cnVjdCB7CiAj
ZGVmaW5lIE9QVVNfU0VUX0VORVJHWV9NQVNLX1JFUVVFU1QgICAgMTAwMjYKICNkZWZpbmUgT1BV
U19TRVRfRU5FUkdZX01BU0soeCkgT1BVU19TRVRfRU5FUkdZX01BU0tfUkVRVUVTVCwgX19vcHVz
X2NoZWNrX3ZhbDE2X3B0cih4KQogCisjZGVmaW5lIENFTFRfU0VUX1NJTEtfSU5GT19SRVFVRVNU
ICAgIDEwMDI4CisjZGVmaW5lIENFTFRfU0VUX1NJTEtfSU5GTyh4KSBDRUxUX1NFVF9TSUxLX0lO
Rk9fUkVRVUVTVCwgX19jZWx0X2NoZWNrX3NpbGtpbmZvX3B0cih4KQorCiAvKiBFbmNvZGVyIHN0
dWZmICovCiAKIGludCBjZWx0X2VuY29kZXJfZ2V0X3NpemUoaW50IGNoYW5uZWxzKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC9jZWx0X2RlY29kZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2RlY29kZXIuYwppbmRleCBiOTc4
YmIzNGQxYjcwMTU4MTc2MzdjZDAxNzI0MjVhYThmYWJiNjBiLi41NjdkNzQ1NjQ5Yjk4YWQ5YzY2
MWZiZjUzZjczZDBhN2RhMGE3OGIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9kZWNvZGVyLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L2NlbHRfZGVjb2Rlci5jCkBAIC03Myw2ICs3Myw3IEBAIHN0cnVjdCBPcHVzQ3VzdG9t
RGVjb2RlciB7CiAgICBpbnQgZG93bnNhbXBsZTsKICAgIGludCBzdGFydCwgZW5kOwogICAgaW50
IHNpZ25hbGxpbmc7CisgICBpbnQgZGlzYWJsZV9pbnY7CiAgICBpbnQgYXJjaDsKIAogICAgLyog
RXZlcnl0aGluZyBiZXlvbmQgdGhpcyBwb2ludCBnZXRzIGNsZWFyZWQgb24gYSByZXNldCAqLwpA
QCAtMTYzLDYgKzE2NCwxMSBAQCBPUFVTX0NVU1RPTV9OT1NUQVRJQyBpbnQgb3B1c19jdXN0b21f
ZGVjb2Rlcl9pbml0KENFTFREZWNvZGVyICpzdCwgY29uc3QgQ0VMVE1vZAogICAgc3QtPnN0YXJ0
ID0gMDsKICAgIHN0LT5lbmQgPSBzdC0+bW9kZS0+ZWZmRUJhbmRzOwogICAgc3QtPnNpZ25hbGxp
bmcgPSAxOworI2lmZGVmIEVOQUJMRV9VUERBVEVfRFJBRlQKKyAgIHN0LT5kaXNhYmxlX2ludiA9
IGNoYW5uZWxzID09IDE7CisjZWxzZQorICAgc3QtPmRpc2FibGVfaW52ID0gMDsKKyNlbmRpZgog
ICAgc3QtPmFyY2ggPSBvcHVzX3NlbGVjdF9hcmNoKCk7CiAKICAgIG9wdXNfY3VzdG9tX2RlY29k
ZXJfY3RsKHN0LCBPUFVTX1JFU0VUX1NUQVRFKTsKQEAgLTE3Nyw2ICsxODMsMzYgQEAgdm9pZCBv
cHVzX2N1c3RvbV9kZWNvZGVyX2Rlc3Ryb3koQ0VMVERlY29kZXIgKnN0KQogfQogI2VuZGlmIC8q
IENVU1RPTV9NT0RFUyAqLwogCisjaWZuZGVmIENVU1RPTV9NT0RFUworLyogU3BlY2lhbCBjYXNl
IGZvciBzdGVyZW8gd2l0aCBubyBkb3duc2FtcGxpbmcgYW5kIG5vIGFjY3VtdWxhdGlvbi4gVGhp
cyBpcworICAgcXVpdGUgY29tbW9uIGFuZCB3ZSBjYW4gbWFrZSBpdCBmYXN0ZXIgYnkgcHJvY2Vz
c2luZyBib3RoIGNoYW5uZWxzIGluIHRoZQorICAgc2FtZSBsb29wLCByZWR1Y2luZyBvdmVyaGVh
ZCBkdWUgdG8gdGhlIGRlcGVuZGVuY3kgbG9vcCBpbiB0aGUgSUlSIGZpbHRlci4gKi8KK3N0YXRp
YyB2b2lkIGRlZW1waGFzaXNfc3RlcmVvX3NpbXBsZShjZWx0X3NpZyAqaW5bXSwgb3B1c192YWwx
NiAqcGNtLCBpbnQgTiwgY29uc3Qgb3B1c192YWwxNiBjb2VmMCwKKyAgICAgIGNlbHRfc2lnICpt
ZW0pCit7CisgICBjZWx0X3NpZyAqIE9QVVNfUkVTVFJJQ1QgeDA7CisgICBjZWx0X3NpZyAqIE9Q
VVNfUkVTVFJJQ1QgeDE7CisgICBjZWx0X3NpZyBtMCwgbTE7CisgICBpbnQgajsKKyAgIHgwPWlu
WzBdOworICAgeDE9aW5bMV07CisgICBtMCA9IG1lbVswXTsKKyAgIG0xID0gbWVtWzFdOworICAg
Zm9yIChqPTA7ajxOO2orKykKKyAgIHsKKyAgICAgIGNlbHRfc2lnIHRtcDAsIHRtcDE7CisgICAg
ICAvKiBBZGQgVkVSWV9TTUFMTCB0byB4W10gZmlyc3QgdG8gcmVkdWNlIGRlcGVuZGVuY3kgY2hh
aW4uICovCisgICAgICB0bXAwID0geDBbal0gKyBWRVJZX1NNQUxMICsgbTA7CisgICAgICB0bXAx
ID0geDFbal0gKyBWRVJZX1NNQUxMICsgbTE7CisgICAgICBtMCA9IE1VTFQxNl8zMl9RMTUoY29l
ZjAsIHRtcDApOworICAgICAgbTEgPSBNVUxUMTZfMzJfUTE1KGNvZWYwLCB0bXAxKTsKKyAgICAg
IHBjbVsyKmogIF0gPSBTQ0FMRU9VVChTSUcyV09SRDE2KHRtcDApKTsKKyAgICAgIHBjbVsyKmor
MV0gPSBTQ0FMRU9VVChTSUcyV09SRDE2KHRtcDEpKTsKKyAgIH0KKyAgIG1lbVswXSA9IG0wOwor
ICAgbWVtWzFdID0gbTE7Cit9CisjZW5kaWYKIAogI2lmbmRlZiBSRVNZTlRICiBzdGF0aWMKQEAg
LTE5MCw2ICsyMjYsMTQgQEAgdm9pZCBkZWVtcGhhc2lzKGNlbHRfc2lnICppbltdLCBvcHVzX3Zh
bDE2ICpwY20sIGludCBOLCBpbnQgQywgaW50IGRvd25zYW1wbGUsIGMKICAgIG9wdXNfdmFsMTYg
Y29lZjA7CiAgICBWQVJERUNMKGNlbHRfc2lnLCBzY3JhdGNoKTsKICAgIFNBVkVfU1RBQ0s7Cisj
aWZuZGVmIENVU1RPTV9NT0RFUworICAgLyogU2hvcnQgdmVyc2lvbiBmb3IgY29tbW9uIGNhc2Uu
ICovCisgICBpZiAoZG93bnNhbXBsZSA9PSAxICYmIEMgPT0gMiAmJiAhYWNjdW0pCisgICB7Cisg
ICAgICBkZWVtcGhhc2lzX3N0ZXJlb19zaW1wbGUoaW4sIHBjbSwgTiwgY29lZlswXSwgbWVtKTsK
KyAgICAgIHJldHVybjsKKyAgIH0KKyNlbmRpZgogI2lmbmRlZiBGSVhFRF9QT0lOVAogICAgKHZv
aWQpYWNjdW07CiAgICBjZWx0X2Fzc2VydChhY2N1bT09MCk7CkBAIC0yMjUsNyArMjY5LDcgQEAg
dm9pZCBkZWVtcGhhc2lzKGNlbHRfc2lnICppbltdLCBvcHVzX3ZhbDE2ICpwY20sIGludCBOLCBp
bnQgQywgaW50IGRvd25zYW1wbGUsIGMKICAgICAgICAgIC8qIFNob3J0Y3V0IGZvciB0aGUgc3Rh
bmRhcmQgKG5vbi1jdXN0b20gbW9kZXMpIGNhc2UgKi8KICAgICAgICAgIGZvciAoaj0wO2o8Tjtq
KyspCiAgICAgICAgICB7Ci0gICAgICAgICAgICBjZWx0X3NpZyB0bXAgPSB4W2pdICsgbSArIFZF
UllfU01BTEw7CisgICAgICAgICAgICBjZWx0X3NpZyB0bXAgPSB4W2pdICsgVkVSWV9TTUFMTCAr
IG07CiAgICAgICAgICAgICBtID0gTVVMVDE2XzMyX1ExNShjb2VmMCwgdG1wKTsKICAgICAgICAg
ICAgIHNjcmF0Y2hbal0gPSB0bXA7CiAgICAgICAgICB9CkBAIC0yNDYsNyArMjkwLDcgQEAgdm9p
ZCBkZWVtcGhhc2lzKGNlbHRfc2lnICppbltdLCBvcHVzX3ZhbDE2ICpwY20sIGludCBOLCBpbnQg
QywgaW50IGRvd25zYW1wbGUsIGMKICAgICAgICAgIHsKICAgICAgICAgICAgIGZvciAoaj0wO2o8
TjtqKyspCiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICBjZWx0X3NpZyB0bXAgPSB4W2pd
ICsgbSArIFZFUllfU01BTEw7CisgICAgICAgICAgICAgICBjZWx0X3NpZyB0bXAgPSB4W2pdICsg
VkVSWV9TTUFMTCArIG07CiAgICAgICAgICAgICAgICBtID0gTVVMVDE2XzMyX1ExNShjb2VmMCwg
dG1wKTsKICAgICAgICAgICAgICAgIHlbaipDXSA9IFNDQUxFT1VUKFNJRzJXT1JEMTYodG1wKSk7
CiAgICAgICAgICAgICB9CkBAIC0zMzMsNyArMzc3LDcgQEAgdm9pZCBjZWx0X3N5bnRoZXNpcyhj
b25zdCBDRUxUTW9kZSAqbW9kZSwgY2VsdF9ub3JtICpYLCBjZWx0X3NpZyAqIG91dF9zeW5bXSwK
ICAgICAgIGRlbm9ybWFsaXNlX2JhbmRzKG1vZGUsIFgrTiwgZnJlcTIsIG9sZEJhbmRFK25iRUJh
bmRzLCBzdGFydCwgZWZmRW5kLCBNLAogICAgICAgICAgICAgZG93bnNhbXBsZSwgc2lsZW5jZSk7
CiAgICAgICBmb3IgKGk9MDtpPE47aSsrKQotICAgICAgICAgZnJlcVtpXSA9IEhBTEYzMihBREQz
MihmcmVxW2ldLGZyZXEyW2ldKSk7CisgICAgICAgICBmcmVxW2ldID0gQUREMzIoSEFMRjMyKGZy
ZXFbaV0pLCBIQUxGMzIoZnJlcTJbaV0pKTsKICAgICAgIGZvciAoYj0wO2I8QjtiKyspCiAgICAg
ICAgICBjbHRfbWRjdF9iYWNrd2FyZCgmbW9kZS0+bWRjdCwgJmZyZXFbYl0sIG91dF9zeW5bMF0r
TkIqYiwgbW9kZS0+d2luZG93LCBvdmVybGFwLCBzaGlmdCwgQiwgYXJjaCk7CiAgICB9IGVsc2Ug
ewpAQCAtMzQ1LDYgKzM4OSwxMiBAQCB2b2lkIGNlbHRfc3ludGhlc2lzKGNvbnN0IENFTFRNb2Rl
ICptb2RlLCBjZWx0X25vcm0gKlgsIGNlbHRfc2lnICogb3V0X3N5bltdLAogICAgICAgICAgICAg
Y2x0X21kY3RfYmFja3dhcmQoJm1vZGUtPm1kY3QsICZmcmVxW2JdLCBvdXRfc3luW2NdK05CKmIs
IG1vZGUtPndpbmRvdywgb3ZlcmxhcCwgc2hpZnQsIEIsIGFyY2gpOwogICAgICAgfSB3aGlsZSAo
KytjPENDKTsKICAgIH0KKyAgIC8qIFNhdHVyYXRlIElNRENUIG91dHB1dCBzbyB0aGF0IHdlIGNh
bid0IG92ZXJmbG93IGluIHRoZSBwaXRjaCBwb3N0ZmlsdGVyCisgICAgICBvciBpbiB0aGUgKi8K
KyAgIGM9MDsgZG8geworICAgICAgZm9yIChpPTA7aTxOO2krKykKKyAgICAgICAgIG91dF9zeW5b
Y11baV0gPSBTQVRVUkFURShvdXRfc3luW2NdW2ldLCBTSUdfU0FUKTsKKyAgIH0gd2hpbGUgKCsr
YzxDQyk7CiAgICBSRVNUT1JFX1NUQUNLOwogfQogCkBAIC01MDYsMTAgKzU1NiwxMSBAQCBzdGF0
aWMgdm9pZCBjZWx0X2RlY29kZV9sb3N0KENFTFREZWNvZGVyICogT1BVU19SRVNUUklDVCBzdCwg
aW50IE4sIGludCBMTSkKICAgIH0gZWxzZSB7CiAgICAgICAvKiBQaXRjaC1iYXNlZCBQTEMgKi8K
ICAgICAgIGNvbnN0IG9wdXNfdmFsMTYgKndpbmRvdzsKKyAgICAgIG9wdXNfdmFsMTYgKmV4YzsK
ICAgICAgIG9wdXNfdmFsMTYgZmFkZSA9IFExNU9ORTsKICAgICAgIGludCBwaXRjaF9pbmRleDsK
ICAgICAgIFZBUkRFQ0wob3B1c192YWwzMiwgZXRtcCk7Ci0gICAgICBWQVJERUNMKG9wdXNfdmFs
MTYsIGV4Yyk7CisgICAgICBWQVJERUNMKG9wdXNfdmFsMTYsIF9leGMpOwogCiAgICAgICBpZiAo
bG9zc19jb3VudCA9PSAwKQogICAgICAgewpAQCAtNTIwLDcgKzU3MSw4IEBAIHN0YXRpYyB2b2lk
IGNlbHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQgTiwg
aW50IExNKQogICAgICAgfQogCiAgICAgICBBTExPQyhldG1wLCBvdmVybGFwLCBvcHVzX3ZhbDMy
KTsKLSAgICAgIEFMTE9DKGV4YywgTUFYX1BFUklPRCwgb3B1c192YWwxNik7CisgICAgICBBTExP
QyhfZXhjLCBNQVhfUEVSSU9EK0xQQ19PUkRFUiwgb3B1c192YWwxNik7CisgICAgICBleGMgPSBf
ZXhjK0xQQ19PUkRFUjsKICAgICAgIHdpbmRvdyA9IG1vZGUtPndpbmRvdzsKICAgICAgIGM9MDsg
ZG8gewogICAgICAgICAgb3B1c192YWwxNiBkZWNheTsKQEAgLTU2MSw2ICs2MTMsMjMgQEAgc3Rh
dGljIHZvaWQgY2VsdF9kZWNvZGVfbG9zdChDRUxURGVjb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3Qs
IGludCBOLCBpbnQgTE0pCiAjZW5kaWYKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIF9jZWx0
X2xwYyhscGMrYypMUENfT1JERVIsIGFjLCBMUENfT1JERVIpOworI2lmZGVmIEZJWEVEX1BPSU5U
CisgICAgICAgICAvKiBGb3IgZml4ZWQtcG9pbnQsIGFwcGx5IGJhbmR3aWR0aCBleHBhbnNpb24g
dW50aWwgd2UgY2FuIGd1YXJhbnRlZSB0aGF0CisgICAgICAgICAgICBubyBvdmVyZmxvdyBjYW4g
aGFwcGVuIGluIHRoZSBJSVIgZmlsdGVyLiBUaGlzIG1lYW5zOgorICAgICAgICAgICAgMzI3Njgq
c3VtKGFicyhmaWx0ZXIpKSA8IDJeMzEgKi8KKyAgICAgICAgIHdoaWxlICgxKSB7CisgICAgICAg
ICAgICBvcHVzX3ZhbDE2IHRtcD1RMTVPTkU7CisgICAgICAgICAgICBvcHVzX3ZhbDMyIHN1bT1R
Q09OU1QxNigxLiwgU0lHX1NISUZUKTsKKyAgICAgICAgICAgIGZvciAoaT0wO2k8TFBDX09SREVS
O2krKykKKyAgICAgICAgICAgICAgIHN1bSArPSBBQlMxNihscGNbYypMUENfT1JERVIraV0pOwor
ICAgICAgICAgICAgaWYgKHN1bSA8IDY1NTM1KSBicmVhazsKKyAgICAgICAgICAgIGZvciAoaT0w
O2k8TFBDX09SREVSO2krKykKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHRtcCA9IE1V
TFQxNl8xNl9RMTUoUUNPTlNUMTYoLjk5ZiwxNSksIHRtcCk7CisgICAgICAgICAgICAgICBscGNb
YypMUENfT1JERVIraV0gPSBNVUxUMTZfMTZfUTE1KGxwY1tjKkxQQ19PUkRFUitpXSwgdG1wKTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgIH0KKyNlbmRpZgogICAgICAgICAgfQogICAgICAgICAg
LyogV2Ugd2FudCB0aGUgZXhjaXRhdGlvbiBmb3IgMiBwaXRjaCBwZXJpb2RzIGluIG9yZGVyIHRv
IGxvb2sgZm9yIGEKICAgICAgICAgICAgIGRlY2F5aW5nIHNpZ25hbCwgYnV0IHdlIGNhbid0IGdl
dCBtb3JlIHRoYW4gTUFYX1BFUklPRC4gKi8KQEAgLTU2OCwxNSArNjM3LDE0IEBAIHN0YXRpYyB2
b2lkIGNlbHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQg
TiwgaW50IExNKQogICAgICAgICAgLyogSW5pdGlhbGl6ZSB0aGUgTFBDIGhpc3Rvcnkgd2l0aCB0
aGUgc2FtcGxlcyBqdXN0IGJlZm9yZSB0aGUgc3RhcnQKICAgICAgICAgICAgIG9mIHRoZSByZWdp
b24gZm9yIHdoaWNoIHdlJ3JlIGNvbXB1dGluZyB0aGUgZXhjaXRhdGlvbi4gKi8KICAgICAgICAg
IHsKLSAgICAgICAgICAgIG9wdXNfdmFsMTYgbHBjX21lbVtMUENfT1JERVJdOwogICAgICAgICAg
ICAgZm9yIChpPTA7aTxMUENfT1JERVI7aSsrKQogICAgICAgICAgICAgewotICAgICAgICAgICAg
ICAgbHBjX21lbVtpXSA9Ci0gICAgICAgICAgICAgICAgICAgICBST1VORDE2KGJ1ZltERUNPREVf
QlVGRkVSX1NJWkUtZXhjX2xlbmd0aC0xLWldLCBTSUdfU0hJRlQpOworICAgICAgICAgICAgICAg
ZXhjW01BWF9QRVJJT0QtZXhjX2xlbmd0aC1MUENfT1JERVIraV0gPQorICAgICAgICAgICAgICAg
ICAgICAgUk9VTkQxNihidWZbREVDT0RFX0JVRkZFUl9TSVpFLWV4Y19sZW5ndGgtTFBDX09SREVS
K2ldLCBTSUdfU0hJRlQpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgLyogQ29tcHV0ZSB0
aGUgZXhjaXRhdGlvbiBmb3IgZXhjX2xlbmd0aCBzYW1wbGVzIGJlZm9yZSB0aGUgbG9zcy4gKi8K
ICAgICAgICAgICAgIGNlbHRfZmlyKGV4YytNQVhfUEVSSU9ELWV4Y19sZW5ndGgsIGxwYytjKkxQ
Q19PUkRFUiwKLSAgICAgICAgICAgICAgICAgIGV4YytNQVhfUEVSSU9ELWV4Y19sZW5ndGgsIGV4
Y19sZW5ndGgsIExQQ19PUkRFUiwgbHBjX21lbSwgc3QtPmFyY2gpOworICAgICAgICAgICAgICAg
ICAgZXhjK01BWF9QRVJJT0QtZXhjX2xlbmd0aCwgZXhjX2xlbmd0aCwgTFBDX09SREVSLCBzdC0+
YXJjaCk7CiAgICAgICAgICB9CiAKICAgICAgICAgIC8qIENoZWNrIGlmIHRoZSB3YXZlZm9ybSBp
cyBkZWNheWluZywgYW5kIGlmIHNvIGhvdyBmYXN0LgpAQCAtNjMwLDkgKzY5OCw4IEBAIHN0YXRp
YyB2b2lkIGNlbHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBp
bnQgTiwgaW50IExNKQogICAgICAgICAgICAgdG1wID0gUk9VTkQxNigKICAgICAgICAgICAgICAg
ICAgIGJ1ZltERUNPREVfQlVGRkVSX1NJWkUtTUFYX1BFUklPRC1OK2V4dHJhcG9sYXRpb25fb2Zm
c2V0K2pdLAogICAgICAgICAgICAgICAgICAgU0lHX1NISUZUKTsKLSAgICAgICAgICAgIFMxICs9
IFNIUjMyKE1VTFQxNl8xNih0bXAsIHRtcCksIDgpOworICAgICAgICAgICAgUzEgKz0gU0hSMzIo
TVVMVDE2XzE2KHRtcCwgdG1wKSwgMTApOwogICAgICAgICAgfQotCiAgICAgICAgICB7CiAgICAg
ICAgICAgICBvcHVzX3ZhbDE2IGxwY19tZW1bTFBDX09SREVSXTsKICAgICAgICAgICAgIC8qIENv
cHkgdGhlIGxhc3QgZGVjb2RlZCBzYW1wbGVzIChwcmlvciB0byB0aGUgb3ZlcmxhcCByZWdpb24p
IHRvCkBAIC02NDQsNiArNzExLDEwIEBAIHN0YXRpYyB2b2lkIGNlbHRfZGVjb2RlX2xvc3QoQ0VM
VERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQgTiwgaW50IExNKQogICAgICAgICAgICAg
Y2VsdF9paXIoYnVmK0RFQ09ERV9CVUZGRVJfU0laRS1OLCBscGMrYypMUENfT1JERVIsCiAgICAg
ICAgICAgICAgICAgICBidWYrREVDT0RFX0JVRkZFUl9TSVpFLU4sIGV4dHJhcG9sYXRpb25fbGVu
LCBMUENfT1JERVIsCiAgICAgICAgICAgICAgICAgICBscGNfbWVtLCBzdC0+YXJjaCk7CisjaWZk
ZWYgRklYRURfUE9JTlQKKyAgICAgICAgICAgIGZvciAoaT0wOyBpIDwgZXh0cmFwb2xhdGlvbl9s
ZW47IGkrKykKKyAgICAgICAgICAgICAgIGJ1ZltERUNPREVfQlVGRkVSX1NJWkUtTitpXSA9IFNB
VFVSQVRFKGJ1ZltERUNPREVfQlVGRkVSX1NJWkUtTitpXSwgU0lHX1NBVCk7CisjZW5kaWYKICAg
ICAgICAgIH0KIAogICAgICAgICAgLyogQ2hlY2sgaWYgdGhlIHN5bnRoZXNpcyBlbmVyZ3kgaXMg
aGlnaGVyIHRoYW4gZXhwZWN0ZWQsIHdoaWNoIGNhbgpAQCAtNjU0LDcgKzcyNSw3IEBAIHN0YXRp
YyB2b2lkIGNlbHRfZGVjb2RlX2xvc3QoQ0VMVERlY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBp
bnQgTiwgaW50IExNKQogICAgICAgICAgICAgZm9yIChpPTA7aTxleHRyYXBvbGF0aW9uX2xlbjtp
KyspCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBvcHVzX3ZhbDE2IHRtcCA9IFJPVU5E
MTYoYnVmW0RFQ09ERV9CVUZGRVJfU0laRS1OK2ldLCBTSUdfU0hJRlQpOwotICAgICAgICAgICAg
ICAgUzIgKz0gU0hSMzIoTVVMVDE2XzE2KHRtcCwgdG1wKSwgOCk7CisgICAgICAgICAgICAgICBT
MiArPSBTSFIzMihNVUxUMTZfMTYodG1wLCB0bXApLCAxMCk7CiAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICAvKiBUaGlzIGNoZWNrcyBmb3IgYW4gImV4cGxvc2lvbiIgaW4gdGhlIHN5bnRoZXNp
cy4gKi8KICNpZmRlZiBGSVhFRF9QT0lOVApAQCAtOTc5LDcgKzEwNTAsOCBAQCBpbnQgY2VsdF9k
ZWNvZGVfd2l0aF9lYyhDRUxURGVjb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IHVuc2ln
bmVkIGNoYXIgKmRhdAogCiAgICBxdWFudF9hbGxfYmFuZHMoMCwgbW9kZSwgc3RhcnQsIGVuZCwg
WCwgQz09MiA/IFgrTiA6IE5VTEwsIGNvbGxhcHNlX21hc2tzLAogICAgICAgICAgTlVMTCwgcHVs
c2VzLCBzaG9ydEJsb2Nrcywgc3ByZWFkX2RlY2lzaW9uLCBkdWFsX3N0ZXJlbywgaW50ZW5zaXR5
LCB0Zl9yZXMsCi0gICAgICAgICBsZW4qKDg8PEJJVFJFUyktYW50aV9jb2xsYXBzZV9yc3YsIGJh
bGFuY2UsIGRlYywgTE0sIGNvZGVkQmFuZHMsICZzdC0+cm5nLCBzdC0+YXJjaCk7CisgICAgICAg
ICBsZW4qKDg8PEJJVFJFUyktYW50aV9jb2xsYXBzZV9yc3YsIGJhbGFuY2UsIGRlYywgTE0sIGNv
ZGVkQmFuZHMsICZzdC0+cm5nLCAwLAorICAgICAgICAgc3QtPmFyY2gsIHN0LT5kaXNhYmxlX2lu
dik7CiAKICAgIGlmIChhbnRpX2NvbGxhcHNlX3JzdiA+IDApCiAgICB7CkBAIC0xMjM0LDYgKzEz
MDYsMjYgQEAgaW50IG9wdXNfY3VzdG9tX2RlY29kZXJfY3RsKENFTFREZWNvZGVyICogT1BVU19S
RVNUUklDVCBzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICAgICp2YWx1ZT1zdC0+cm5nOwog
ICAgICAgfQogICAgICAgYnJlYWs7CisgICAgICBjYXNlIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lP
Tl9ESVNBQkxFRF9SRVFVRVNUOgorICAgICAgeworICAgICAgICAgIG9wdXNfaW50MzIgdmFsdWUg
PSB2YV9hcmcoYXAsIG9wdXNfaW50MzIpOworICAgICAgICAgIGlmKHZhbHVlPDAgfHwgdmFsdWU+
MSkKKyAgICAgICAgICB7CisgICAgICAgICAgICAgZ290byBiYWRfYXJnOworICAgICAgICAgIH0K
KyAgICAgICAgICBzdC0+ZGlzYWJsZV9pbnYgPSB2YWx1ZTsKKyAgICAgIH0KKyAgICAgIGJyZWFr
OworICAgICAgY2FzZSBPUFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoK
KyAgICAgIHsKKyAgICAgICAgICBvcHVzX2ludDMyICp2YWx1ZSA9IHZhX2FyZyhhcCwgb3B1c19p
bnQzMiopOworICAgICAgICAgIGlmICghdmFsdWUpCisgICAgICAgICAgeworICAgICAgICAgICAg
IGdvdG8gYmFkX2FyZzsKKyAgICAgICAgICB9CisgICAgICAgICAgKnZhbHVlID0gc3QtPmRpc2Fi
bGVfaW52OworICAgICAgfQorICAgICAgYnJlYWs7CiAgICAgICBkZWZhdWx0OgogICAgICAgICAg
Z290byBiYWRfcmVxdWVzdDsKICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9jZWx0X2VuY29kZXIuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9jZWx0X2VuY29kZXIuYwppbmRleCAzZWU3YTRkM2Y3YTFkY2ViNzFlNmExYmVmMTQzMDZh
YzlkMjE3YTMyLi4wNTNlNWEzYjI5MDBjMTZmMjkwN2ZiMDNiZTUzN2NlM2I1YjEwOTJiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvY2VsdF9lbmNvZGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfZW5jb2Rlci5jCkBAIC03
Myw4ICs3Myw4IEBAIHN0cnVjdCBPcHVzQ3VzdG9tRW5jb2RlciB7CiAgICBpbnQgY29uc3RyYWlu
ZWRfdmJyOyAgICAgIC8qIElmIHplcm8sIFZCUiBjYW4gZG8gd2hhdGV2ZXIgaXQgbGlrZXMgd2l0
aCB0aGUgcmF0ZSAqLwogICAgaW50IGxvc3NfcmF0ZTsKICAgIGludCBsc2JfZGVwdGg7Ci0gICBp
bnQgdmFyaWFibGVfZHVyYXRpb247CiAgICBpbnQgbGZlOworICAgaW50IGRpc2FibGVfaW52Owog
ICAgaW50IGFyY2g7CiAKICAgIC8qIEV2ZXJ5dGhpbmcgYmV5b25kIHRoaXMgcG9pbnQgZ2V0cyBj
bGVhcmVkIG9uIGEgcmVzZXQgKi8KQEAgLTk4LDYgKzk4LDcgQEAgc3RydWN0IE9wdXNDdXN0b21F
bmNvZGVyIHsKICNlbmRpZgogICAgaW50IGNvbnNlY190cmFuc2llbnQ7CiAgICBBbmFseXNpc0lu
Zm8gYW5hbHlzaXM7CisgICBTSUxLSW5mbyBzaWxrX2luZm87CiAKICAgIG9wdXNfdmFsMzIgcHJl
ZW1waF9tZW1FWzJdOwogICAgb3B1c192YWwzMiBwcmVlbXBoX21lbURbMl07CkBAIC0xMjMsNiAr
MTI0LDcgQEAgc3RydWN0IE9wdXNDdXN0b21FbmNvZGVyIHsKICAgIC8qIG9wdXNfdmFsMTYgb2xk
QmFuZEVbXSwgICAgIFNpemUgPSBjaGFubmVscyptb2RlLT5uYkVCYW5kcyAqLwogICAgLyogb3B1
c192YWwxNiBvbGRMb2dFW10sICAgICAgU2l6ZSA9IGNoYW5uZWxzKm1vZGUtPm5iRUJhbmRzICov
CiAgICAvKiBvcHVzX3ZhbDE2IG9sZExvZ0UyW10sICAgICBTaXplID0gY2hhbm5lbHMqbW9kZS0+
bmJFQmFuZHMgKi8KKyAgIC8qIG9wdXNfdmFsMTYgZW5lcmd5RXJyb3JbXSwgIFNpemUgPSBjaGFu
bmVscyptb2RlLT5uYkVCYW5kcyAqLwogfTsKIAogaW50IGNlbHRfZW5jb2Rlcl9nZXRfc2l6ZShp
bnQgY2hhbm5lbHMpCkBAIC0xMzYsOSArMTM4LDEwIEBAIE9QVVNfQ1VTVE9NX05PU1RBVElDIGlu
dCBvcHVzX2N1c3RvbV9lbmNvZGVyX2dldF9zaXplKGNvbnN0IENFTFRNb2RlICptb2RlLCBpbnQK
ICAgIGludCBzaXplID0gc2l6ZW9mKHN0cnVjdCBDRUxURW5jb2RlcikKICAgICAgICAgICsgKGNo
YW5uZWxzKm1vZGUtPm92ZXJsYXAtMSkqc2l6ZW9mKGNlbHRfc2lnKSAgICAvKiBjZWx0X3NpZyBp
bl9tZW1bY2hhbm5lbHMqbW9kZS0+b3ZlcmxhcF07ICovCiAgICAgICAgICArIGNoYW5uZWxzKkNP
TUJGSUxURVJfTUFYUEVSSU9EKnNpemVvZihjZWx0X3NpZykgLyogY2VsdF9zaWcgcHJlZmlsdGVy
X21lbVtjaGFubmVscypDT01CRklMVEVSX01BWFBFUklPRF07ICovCi0gICAgICAgICArIDMqY2hh
bm5lbHMqbW9kZS0+bmJFQmFuZHMqc2l6ZW9mKG9wdXNfdmFsMTYpOyAgLyogb3B1c192YWwxNiBv
bGRCYW5kRVtjaGFubmVscyptb2RlLT5uYkVCYW5kc107ICovCisgICAgICAgICArIDQqY2hhbm5l
bHMqbW9kZS0+bmJFQmFuZHMqc2l6ZW9mKG9wdXNfdmFsMTYpOyAgLyogb3B1c192YWwxNiBvbGRC
YW5kRVtjaGFubmVscyptb2RlLT5uYkVCYW5kc107ICovCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb3B1c192YWwxNiBvbGRMb2dF
W2NoYW5uZWxzKm1vZGUtPm5iRUJhbmRzXTsgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvcHVzX3ZhbDE2IG9sZExvZ0UyW2No
YW5uZWxzKm1vZGUtPm5iRUJhbmRzXTsgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvcHVzX3ZhbDE2IGVuZXJneUVycm9yW2No
YW5uZWxzKm1vZGUtPm5iRUJhbmRzXTsgKi8KICAgIHJldHVybiBzaXplOwogfQogCkBAIC0xNzgs
NyArMTgxLDYgQEAgc3RhdGljIGludCBvcHVzX2N1c3RvbV9lbmNvZGVyX2luaXRfYXJjaChDRUxU
RW5jb2RlciAqc3QsIGNvbnN0IENFTFRNb2RlICptb2RlLAogICAgc3QtPnN0YXJ0ID0gMDsKICAg
IHN0LT5lbmQgPSBzdC0+bW9kZS0+ZWZmRUJhbmRzOwogICAgc3QtPnNpZ25hbGxpbmcgPSAxOwot
CiAgICBzdC0+YXJjaCA9IGFyY2g7CiAKICAgIHN0LT5jb25zdHJhaW5lZF92YnIgPSAxOwpAQCAt
MjIzLDcgKzIyNSw4IEBAIHZvaWQgb3B1c19jdXN0b21fZW5jb2Rlcl9kZXN0cm95KENFTFRFbmNv
ZGVyICpzdCkKIAogCiBzdGF0aWMgaW50IHRyYW5zaWVudF9hbmFseXNpcyhjb25zdCBvcHVzX3Zh
bDMyICogT1BVU19SRVNUUklDVCBpbiwgaW50IGxlbiwgaW50IEMsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBvcHVzX3ZhbDE2ICp0Zl9lc3RpbWF0ZSwgaW50ICp0Zl9jaGFuKQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B1c192YWwxNiAqdGZfZXN0aW1hdGUsIGludCAq
dGZfY2hhbiwgaW50IGFsbG93X3dlYWtfdHJhbnNpZW50cywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCAqd2Vha190cmFuc2llbnQpCiB7CiAgICBpbnQgaTsKICAgIFZBUkRFQ0wo
b3B1c192YWwxNiwgdG1wKTsKQEAgLTIzMyw2ICsyMzYsMTIgQEAgc3RhdGljIGludCB0cmFuc2ll
bnRfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGludCBsZW4s
IGludAogICAgaW50IGM7CiAgICBvcHVzX3ZhbDE2IHRmX21heDsKICAgIGludCBsZW4yOworICAg
LyogRm9yd2FyZCBtYXNraW5nOiA2LjcgZEIvbXMuICovCisjaWZkZWYgRklYRURfUE9JTlQKKyAg
IGludCBmb3J3YXJkX3NoaWZ0ID0gNDsKKyNlbHNlCisgICBvcHVzX3ZhbDE2IGZvcndhcmRfZGVj
YXkgPSBRQ09OU1QxNiguMDYyNWYsMTUpOworI2VuZGlmCiAgICAvKiBUYWJsZSBvZiA2KjY0L3gs
IHRyYWluZWQgb24gcmVhbCBkYXRhIHRvIG1pbmltaXplIHRoZSBhdmVyYWdlIGVycm9yICovCiAg
ICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBpbnZfdGFibGVbMTI4XSA9IHsKICAgICAgICAg
IDI1NSwyNTUsMTU2LDExMCwgODYsIDcwLCA1OSwgNTEsIDQ1LCA0MCwgMzcsIDMzLCAzMSwgMjgs
IDI2LCAyNSwKQEAgLTI0Nyw2ICsyNTYsMTkgQEAgc3RhdGljIGludCB0cmFuc2llbnRfYW5hbHlz
aXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGludCBsZW4sIGludAogICAg
U0FWRV9TVEFDSzsKICAgIEFMTE9DKHRtcCwgbGVuLCBvcHVzX3ZhbDE2KTsKIAorICAgKndlYWtf
dHJhbnNpZW50ID0gMDsKKyAgIC8qIEZvciBsb3dlciBiaXRyYXRlcywgbGV0J3MgYmUgbW9yZSBj
b25zZXJ2YXRpdmUgYW5kIGhhdmUgYSBmb3J3YXJkIG1hc2tpbmcKKyAgICAgIGRlY2F5IG9mIDMu
MyBkQi9tcy4gVGhpcyBhdm9pZHMgaGF2aW5nIHRvIGNvZGUgdHJhbnNpZW50cyBhdCB2ZXJ5IGxv
dworICAgICAgYml0cmF0ZSAobW9zdGx5IGZvciBoeWJyaWQpLCB3aGljaCBjYW4gcmVzdWx0IGlu
IHVuc3RhYmxlIGVuZXJneSBhbmQvb3IKKyAgICAgIHBhcnRpYWwgY29sbGFwc2UuICovCisgICBp
ZiAoYWxsb3dfd2Vha190cmFuc2llbnRzKQorICAgeworI2lmZGVmIEZJWEVEX1BPSU5UCisgICAg
ICBmb3J3YXJkX3NoaWZ0ID0gNTsKKyNlbHNlCisgICAgICBmb3J3YXJkX2RlY2F5ID0gUUNPTlNU
MTYoLjAzMTI1ZiwxNSk7CisjZW5kaWYKKyAgIH0KICAgIGxlbjI9bGVuLzI7CiAgICBmb3IgKGM9
MDtjPEM7YysrKQogICAgewpAQCAtMjY5LDcgKzI5MSw3IEBAIHN0YXRpYyBpbnQgdHJhbnNpZW50
X2FuYWx5c2lzKGNvbnN0IG9wdXNfdmFsMzIgKiBPUFVTX1JFU1RSSUNUIGluLCBpbnQgbGVuLCBp
bnQKICAgICAgICAgIG1lbTAgPSBtZW0xICsgeSAtIDIqeDsKICAgICAgICAgIG1lbTEgPSB4IC0g
LjVmKnk7CiAjZW5kaWYKLSAgICAgICAgIHRtcFtpXSA9IEVYVFJBQ1QxNihTSFIzMih5LDIpKTsK
KyAgICAgICAgIHRtcFtpXSA9IFNST1VORDE2KHksIDIpOwogICAgICAgICAgLypwcmludGYoIiVm
ICIsIHRtcFtpXSk7Ki8KICAgICAgIH0KICAgICAgIC8qcHJpbnRmKCJcbiIpOyovCkBAIC0yODAs
NyArMzAyLDcgQEAgc3RhdGljIGludCB0cmFuc2llbnRfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwz
MiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGludCBsZW4sIGludAogICAgICAgLyogTm9ybWFsaXplIHRt
cCB0byBtYXggcmFuZ2UgKi8KICAgICAgIHsKICAgICAgICAgIGludCBzaGlmdD0wOwotICAgICAg
ICAgc2hpZnQgPSAxNC1jZWx0X2lsb2cyKDErY2VsdF9tYXhhYnMxNih0bXAsIGxlbikpOworICAg
ICAgICAgc2hpZnQgPSAxNC1jZWx0X2lsb2cyKE1BWDE2KDEsIGNlbHRfbWF4YWJzMTYodG1wLCBs
ZW4pKSk7CiAgICAgICAgICBpZiAoc2hpZnQhPTApCiAgICAgICAgICB7CiAgICAgICAgICAgICBm
b3IgKGk9MDtpPGxlbjtpKyspCkBAIC0yOTksOSArMzIxLDkgQEAgc3RhdGljIGludCB0cmFuc2ll
bnRfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVTVFJJQ1QgaW4sIGludCBsZW4s
IGludAogICAgICAgICAgbWVhbiArPSB4MjsKICNpZmRlZiBGSVhFRF9QT0lOVAogICAgICAgICAg
LyogRklYTUU6IFVzZSBQU0hSMTYoKSBpbnN0ZWFkICovCi0gICAgICAgICB0bXBbaV0gPSBtZW0w
ICsgUFNIUjMyKHgyLW1lbTAsNCk7CisgICAgICAgICB0bXBbaV0gPSBtZW0wICsgUFNIUjMyKHgy
LW1lbTAsZm9yd2FyZF9zaGlmdCk7CiAjZWxzZQotICAgICAgICAgdG1wW2ldID0gbWVtMCArIE1V
TFQxNl8xNl9QMTUoUUNPTlNUMTYoLjA2MjVmLDE1KSx4Mi1tZW0wKTsKKyAgICAgICAgIHRtcFtp
XSA9IG1lbTAgKyBNVUxUMTZfMTZfUDE1KGZvcndhcmRfZGVjYXkseDItbWVtMCk7CiAjZW5kaWYK
ICAgICAgICAgIG1lbTAgPSB0bXBbaV07CiAgICAgICB9CkBAIC0zMTEsNiArMzMzLDcgQEAgc3Rh
dGljIGludCB0cmFuc2llbnRfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwzMiAqIE9QVVNfUkVTVFJJ
Q1QgaW4sIGludCBsZW4sIGludAogICAgICAgLyogQmFja3dhcmQgcGFzcyB0byBjb21wdXRlIHRo
ZSBwcmUtZWNobyB0aHJlc2hvbGQgKi8KICAgICAgIGZvciAoaT1sZW4yLTE7aT49MDtpLS0pCiAg
ICAgICB7CisgICAgICAgICAvKiBCYWNrd2FyZCBtYXNraW5nOiAxMy45IGRCL21zLiAqLwogI2lm
ZGVmIEZJWEVEX1BPSU5UCiAgICAgICAgICAvKiBGSVhNRTogVXNlIFBTSFIxNigpIGluc3RlYWQg
Ki8KICAgICAgICAgIHRtcFtpXSA9IG1lbTAgKyBQU0hSMzIodG1wW2ldLW1lbTAsMyk7CkBAIC0z
NTksNyArMzgyLDEyIEBAIHN0YXRpYyBpbnQgdHJhbnNpZW50X2FuYWx5c2lzKGNvbnN0IG9wdXNf
dmFsMzIgKiBPUFVTX1JFU1RSSUNUIGluLCBpbnQgbGVuLCBpbnQKICAgICAgIH0KICAgIH0KICAg
IGlzX3RyYW5zaWVudCA9IG1hc2tfbWV0cmljPjIwMDsKLQorICAgLyogRm9yIGxvdyBiaXRyYXRl
cywgZGVmaW5lICJ3ZWFrIHRyYW5zaWVudHMiIHRoYXQgbmVlZCB0byBiZQorICAgICAgaGFuZGxl
ZCBkaWZmZXJlbnRseSB0byBhdm9pZCBwYXJ0aWFsIGNvbGxhcHNlLiAqLworICAgaWYgKGFsbG93
X3dlYWtfdHJhbnNpZW50cyAmJiBpc190cmFuc2llbnQgJiYgbWFza19tZXRyaWM8NjAwKSB7Cisg
ICAgICBpc190cmFuc2llbnQgPSAwOworICAgICAgKndlYWtfdHJhbnNpZW50ID0gMTsKKyAgIH0K
ICAgIC8qIEFyYml0cmFyeSBtZXRyaWMgZm9yIFZCUiBib29zdCAqLwogICAgdGZfbWF4ID0gTUFY
MTYoMCxjZWx0X3NxcnQoMjcqbWFza19tZXRyaWMpLTQyKTsKICAgIC8qICp0Zl9lc3RpbWF0ZSA9
IDEgKyBNSU4xNigxLCBzcXJ0KE1BWDE2KDAsIHRmX21heC0zMCkpLzIwKTsgKi8KQEAgLTU0OSw3
ICs1NzcsNyBAQCBzdGF0aWMgb3B1c192YWwzMiBsMV9tZXRyaWMoY29uc3QgY2VsdF9ub3JtICp0
bXAsIGludCBOLCBpbnQgTE0sIG9wdXNfdmFsMTYgYmlhcwogCiBzdGF0aWMgaW50IHRmX2FuYWx5
c2lzKGNvbnN0IENFTFRNb2RlICptLCBpbnQgbGVuLCBpbnQgaXNUcmFuc2llbnQsCiAgICAgICBp
bnQgKnRmX3JlcywgaW50IGxhbWJkYSwgY2VsdF9ub3JtICpYLCBpbnQgTjAsIGludCBMTSwKLSAg
ICAgIGludCAqdGZfc3VtLCBvcHVzX3ZhbDE2IHRmX2VzdGltYXRlLCBpbnQgdGZfY2hhbikKKyAg
ICAgIG9wdXNfdmFsMTYgdGZfZXN0aW1hdGUsIGludCB0Zl9jaGFuKQogewogICAgaW50IGk7CiAg
ICBWQVJERUNMKGludCwgbWV0cmljKTsKQEAgLTU3NCw3ICs2MDIsNiBAQCBzdGF0aWMgaW50IHRm
X2FuYWx5c2lzKGNvbnN0IENFTFRNb2RlICptLCBpbnQgbGVuLCBpbnQgaXNUcmFuc2llbnQsCiAg
ICBBTExPQyhwYXRoMCwgbGVuLCBpbnQpOwogICAgQUxMT0MocGF0aDEsIGxlbiwgaW50KTsKIAot
ICAgKnRmX3N1bSA9IDA7CiAgICBmb3IgKGk9MDtpPGxlbjtpKyspCiAgICB7CiAgICAgICBpbnQg
aywgTjsKQEAgLTYyOSw3ICs2NTYsNiBAQCBzdGF0aWMgaW50IHRmX2FuYWx5c2lzKGNvbnN0IENF
TFRNb2RlICptLCBpbnQgbGVuLCBpbnQgaXNUcmFuc2llbnQsCiAgICAgICAgICBtZXRyaWNbaV0g
PSAyKmJlc3RfbGV2ZWw7CiAgICAgICBlbHNlCiAgICAgICAgICBtZXRyaWNbaV0gPSAtMipiZXN0
X2xldmVsOwotICAgICAgKnRmX3N1bSArPSAoaXNUcmFuc2llbnQgPyBMTSA6IDApIC0gbWV0cmlj
W2ldLzI7CiAgICAgICAvKiBGb3IgYmFuZHMgdGhhdCBjYW4ndCBiZSBzcGxpdCB0byAtMSwgc2V0
IHRoZSBtZXRyaWMgdG8gdGhlIGhhbGYtd2F5IHBvaW50IHRvIGF2b2lkCiAgICAgICAgICBiaWFz
aW5nIHRoZSBkZWNpc2lvbiAqLwogICAgICAgaWYgKG5hcnJvdyAmJiAobWV0cmljW2ldPT0wIHx8
IG1ldHJpY1tpXT09LTIqTE0pKQpAQCAtNzU0LDcgKzc4MCw3IEBAIHN0YXRpYyB2b2lkIHRmX2Vu
Y29kZShpbnQgc3RhcnQsIGludCBlbmQsIGludCBpc1RyYW5zaWVudCwgaW50ICp0Zl9yZXMsIGlu
dCBMTSwKIHN0YXRpYyBpbnQgYWxsb2NfdHJpbV9hbmFseXNpcyhjb25zdCBDRUxUTW9kZSAqbSwg
Y29uc3QgY2VsdF9ub3JtICpYLAogICAgICAgY29uc3Qgb3B1c192YWwxNiAqYmFuZExvZ0UsIGlu
dCBlbmQsIGludCBMTSwgaW50IEMsIGludCBOMCwKICAgICAgIEFuYWx5c2lzSW5mbyAqYW5hbHlz
aXMsIG9wdXNfdmFsMTYgKnN0ZXJlb19zYXZpbmcsIG9wdXNfdmFsMTYgdGZfZXN0aW1hdGUsCi0g
ICAgICBpbnQgaW50ZW5zaXR5LCBvcHVzX3ZhbDE2IHN1cnJvdW5kX3RyaW0sIGludCBhcmNoKQor
ICAgICAgaW50IGludGVuc2l0eSwgb3B1c192YWwxNiBzdXJyb3VuZF90cmltLCBvcHVzX2ludDMy
IGVxdWl2X3JhdGUsIGludCBhcmNoKQogewogICAgaW50IGk7CiAgICBvcHVzX3ZhbDMyIGRpZmY9
MDsKQEAgLTc2Miw2ICs3ODgsMTQgQEAgc3RhdGljIGludCBhbGxvY190cmltX2FuYWx5c2lzKGNv
bnN0IENFTFRNb2RlICptLCBjb25zdCBjZWx0X25vcm0gKlgsCiAgICBpbnQgdHJpbV9pbmRleDsK
ICAgIG9wdXNfdmFsMTYgdHJpbSA9IFFDT05TVDE2KDUuZiwgOCk7CiAgICBvcHVzX3ZhbDE2IGxv
Z1hDLCBsb2dYQzI7CisgICAvKiBBdCBsb3cgYml0cmF0ZSwgcmVkdWNpbmcgdGhlIHRyaW0gc2Vl
bXMgdG8gaGVscC4gQXQgaGlnaGVyIGJpdHJhdGVzLCBpdCdzIGxlc3MKKyAgICAgIGNsZWFyIHdo
YXQncyBiZXN0LCBzbyB3ZSdyZSBrZWVwaW5nIGl0IGFzIGl0IHdhcyBiZWZvcmUsIGF0IGxlYXN0
IGZvciBub3cuICovCisgICBpZiAoZXF1aXZfcmF0ZSA8IDY0MDAwKSB7CisgICAgICB0cmltID0g
UUNPTlNUMTYoNC5mLCA4KTsKKyAgIH0gZWxzZSBpZiAoZXF1aXZfcmF0ZSA8IDgwMDAwKSB7Cisg
ICAgICBvcHVzX2ludDMyIGZyYWMgPSAoZXF1aXZfcmF0ZS02NDAwMCkgPj4gMTA7CisgICAgICB0
cmltID0gUUNPTlNUMTYoNC5mLCA4KSArIFFDT05TVDE2KDEuZi8xNi5mLCA4KSpmcmFjOworICAg
fQogICAgaWYgKEM9PTIpCiAgICB7CiAgICAgICBvcHVzX3ZhbDE2IHN1bSA9IDA7IC8qIFExMCAq
LwpAQCAtODA5LDcgKzg0Myw3IEBAIHN0YXRpYyBpbnQgYWxsb2NfdHJpbV9hbmFseXNpcyhjb25z
dCBDRUxUTW9kZSAqbSwgY29uc3QgY2VsdF9ub3JtICpYLAogICAgfSB3aGlsZSAoKytjPEMpOwog
ICAgZGlmZiAvPSBDKihlbmQtMSk7CiAgICAvKnByaW50ZigiJWZcbiIsIGRpZmYpOyovCi0gICB0
cmltIC09IE1BWDE2KC1RQ09OU1QxNigyLmYsIDgpLCBNSU4xNihRQ09OU1QxNigyLmYsIDgpLCBT
SFIxNihkaWZmK1FDT05TVDE2KDEuZiwgREJfU0hJRlQpLERCX1NISUZULTgpLzYgKSk7CisgICB0
cmltIC09IE1BWDMyKC1RQ09OU1QxNigyLmYsIDgpLCBNSU4zMihRQ09OU1QxNigyLmYsIDgpLCBT
SFIzMihkaWZmK1FDT05TVDE2KDEuZiwgREJfU0hJRlQpLERCX1NISUZULTgpLzYgKSk7CiAgICB0
cmltIC09IFNIUjE2KHN1cnJvdW5kX3RyaW0sIERCX1NISUZULTgpOwogICAgdHJpbSAtPSAyKlNI
UjE2KHRmX2VzdGltYXRlLCAxNC04KTsKICNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKQEAgLTkz
MCw3ICs5NjQsNyBAQCBzdGF0aWMgb3B1c192YWwxNiBtZWRpYW5fb2ZfMyhjb25zdCBvcHVzX3Zh
bDE2ICp4KQogc3RhdGljIG9wdXNfdmFsMTYgZHluYWxsb2NfYW5hbHlzaXMoY29uc3Qgb3B1c192
YWwxNiAqYmFuZExvZ0UsIGNvbnN0IG9wdXNfdmFsMTYgKmJhbmRMb2dFMiwKICAgICAgIGludCBu
YkVCYW5kcywgaW50IHN0YXJ0LCBpbnQgZW5kLCBpbnQgQywgaW50ICpvZmZzZXRzLCBpbnQgbHNi
X2RlcHRoLCBjb25zdCBvcHVzX2ludDE2ICpsb2dOLAogICAgICAgaW50IGlzVHJhbnNpZW50LCBp
bnQgdmJyLCBpbnQgY29uc3RyYWluZWRfdmJyLCBjb25zdCBvcHVzX2ludDE2ICplQmFuZHMsIGlu
dCBMTSwKLSAgICAgIGludCBlZmZlY3RpdmVCeXRlcywgb3B1c19pbnQzMiAqdG90X2Jvb3N0Xywg
aW50IGxmZSwgb3B1c192YWwxNiAqc3Vycm91bmRfZHluYWxsb2MpCisgICAgICBpbnQgZWZmZWN0
aXZlQnl0ZXMsIG9wdXNfaW50MzIgKnRvdF9ib29zdF8sIGludCBsZmUsIG9wdXNfdmFsMTYgKnN1
cnJvdW5kX2R5bmFsbG9jLCBBbmFseXNpc0luZm8gKmFuYWx5c2lzKQogewogICAgaW50IGksIGM7
CiAgICBvcHVzX2ludDMyIHRvdF9ib29zdD0wOwpAQCAtMTAyMCwxNCArMTA1NCwyNiBAQCBzdGF0
aWMgb3B1c192YWwxNiBkeW5hbGxvY19hbmFseXNpcyhjb25zdCBvcHVzX3ZhbDE2ICpiYW5kTG9n
RSwgY29uc3Qgb3B1c192YWwxNgogICAgICAgfQogICAgICAgZm9yIChpPXN0YXJ0O2k8ZW5kO2kr
KykKICAgICAgIHsKLSAgICAgICAgIGludCB3aWR0aDsKLSAgICAgICAgIGludCBib29zdDsKLSAg
ICAgICAgIGludCBib29zdF9iaXRzOwotCiAgICAgICAgICBpZiAoaTw4KQogICAgICAgICAgICAg
Zm9sbG93ZXJbaV0gKj0gMjsKICAgICAgICAgIGlmIChpPj0xMikKICAgICAgICAgICAgIGZvbGxv
d2VyW2ldID0gSEFMRjE2KGZvbGxvd2VyW2ldKTsKKyAgICAgIH0KKyNpZmRlZiBESVNBQkxFX0ZM
T0FUX0FQSQorICAgICAgKHZvaWQpYW5hbHlzaXM7CisjZWxzZQorICAgICAgaWYgKGFuYWx5c2lz
LT52YWxpZCkKKyAgICAgIHsKKyAgICAgICAgIGZvciAoaT1zdGFydDtpPElNSU4oTEVBS19CQU5E
UywgZW5kKTtpKyspCisgICAgICAgICAgICBmb2xsb3dlcltpXSA9IGZvbGxvd2VyW2ldICsgIFFD
T05TVDE2KDEuZi82NC5mLCBEQl9TSElGVCkqYW5hbHlzaXMtPmxlYWtfYm9vc3RbaV07CisgICAg
ICB9CisjZW5kaWYKKyAgICAgIGZvciAoaT1zdGFydDtpPGVuZDtpKyspCisgICAgICB7CisgICAg
ICAgICBpbnQgd2lkdGg7CisgICAgICAgICBpbnQgYm9vc3Q7CisgICAgICAgICBpbnQgYm9vc3Rf
Yml0czsKKwogICAgICAgICAgZm9sbG93ZXJbaV0gPSBNSU4xNihmb2xsb3dlcltpXSwgUUNPTlNU
MTYoNCwgREJfU0hJRlQpKTsKIAogICAgICAgICAgd2lkdGggPSBDKihlQmFuZHNbaSsxXS1lQmFu
ZHNbaV0pPDxMTTsKQEAgLTEwNDIsMTEgKzEwODgsMTEgQEAgc3RhdGljIG9wdXNfdmFsMTYgZHlu
YWxsb2NfYW5hbHlzaXMoY29uc3Qgb3B1c192YWwxNiAqYmFuZExvZ0UsIGNvbnN0IG9wdXNfdmFs
MTYKICAgICAgICAgICAgIGJvb3N0ID0gKGludClTSFIzMihFWFRFTkQzMihmb2xsb3dlcltpXSkq
d2lkdGgvNixEQl9TSElGVCk7CiAgICAgICAgICAgICBib29zdF9iaXRzID0gYm9vc3QqNjw8QklU
UkVTOwogICAgICAgICAgfQotICAgICAgICAgLyogRm9yIENCUiBhbmQgbm9uLXRyYW5zaWVudCBD
VkJSIGZyYW1lcywgbGltaXQgZHluYWxsb2MgdG8gMS80IG9mIHRoZSBiaXRzICovCisgICAgICAg
ICAvKiBGb3IgQ0JSIGFuZCBub24tdHJhbnNpZW50IENWQlIgZnJhbWVzLCBsaW1pdCBkeW5hbGxv
YyB0byAyLzMgb2YgdGhlIGJpdHMgKi8KICAgICAgICAgIGlmICgoIXZiciB8fCAoY29uc3RyYWlu
ZWRfdmJyJiYhaXNUcmFuc2llbnQpKQotICAgICAgICAgICAgICAgJiYgKHRvdF9ib29zdCtib29z
dF9iaXRzKT4+QklUUkVTPj4zID4gZWZmZWN0aXZlQnl0ZXMvNCkKKyAgICAgICAgICAgICAgICYm
ICh0b3RfYm9vc3QrYm9vc3RfYml0cyk+PkJJVFJFUz4+MyA+IDIqZWZmZWN0aXZlQnl0ZXMvMykK
ICAgICAgICAgIHsKLSAgICAgICAgICAgIG9wdXNfaW50MzIgY2FwID0gKChlZmZlY3RpdmVCeXRl
cy80KTw8QklUUkVTPDwzKTsKKyAgICAgICAgICAgIG9wdXNfaW50MzIgY2FwID0gKCgyKmVmZmVj
dGl2ZUJ5dGVzLzMpPDxCSVRSRVM8PDMpOwogICAgICAgICAgICAgb2Zmc2V0c1tpXSA9IGNhcC10
b3RfYm9vc3Q7CiAgICAgICAgICAgICB0b3RfYm9vc3QgPSBjYXA7CiAgICAgICAgICAgICBicmVh
azsKQEAgLTExOTMsNyArMTIzOSw3IEBAIHN0YXRpYyBpbnQgY29tcHV0ZV92YnIoY29uc3QgQ0VM
VE1vZGUgKm1vZGUsIEFuYWx5c2lzSW5mbyAqYW5hbHlzaXMsIG9wdXNfaW50MzIKICAgICAgIGlu
dCBMTSwgb3B1c19pbnQzMiBiaXRyYXRlLCBpbnQgbGFzdENvZGVkQmFuZHMsIGludCBDLCBpbnQg
aW50ZW5zaXR5LAogICAgICAgaW50IGNvbnN0cmFpbmVkX3Ziciwgb3B1c192YWwxNiBzdGVyZW9f
c2F2aW5nLCBpbnQgdG90X2Jvb3N0LAogICAgICAgb3B1c192YWwxNiB0Zl9lc3RpbWF0ZSwgaW50
IHBpdGNoX2NoYW5nZSwgb3B1c192YWwxNiBtYXhEZXB0aCwKLSAgICAgIGludCB2YXJpYWJsZV9k
dXJhdGlvbiwgaW50IGxmZSwgaW50IGhhc19zdXJyb3VuZF9tYXNrLCBvcHVzX3ZhbDE2IHN1cnJv
dW5kX21hc2tpbmcsCisgICAgICBpbnQgbGZlLCBpbnQgaGFzX3N1cnJvdW5kX21hc2ssIG9wdXNf
dmFsMTYgc3Vycm91bmRfbWFza2luZywKICAgICAgIG9wdXNfdmFsMTYgdGVtcG9yYWxfdmJyKQog
ewogICAgLyogVGhlIHRhcmdldCByYXRlIGluIDh0aCBiaXRzIHBlciBmcmFtZSAqLwpAQCAtMTIz
NSwxMCArMTI4MSw5IEBAIHN0YXRpYyBpbnQgY29tcHV0ZV92YnIoY29uc3QgQ0VMVE1vZGUgKm1v
ZGUsIEFuYWx5c2lzSW5mbyAqYW5hbHlzaXMsIG9wdXNfaW50MzIKICAgICAgICAgICAgICAgICAg
ICAgICBTSFIzMihNVUxUMTZfMTYoc3RlcmVvX3NhdmluZy1RQ09OU1QxNigwLjFmLDgpLChjb2Rl
ZF9zdGVyZW9fZG9mPDxCSVRSRVMpKSw4KSk7CiAgICB9CiAgICAvKiBCb29zdCB0aGUgcmF0ZSBh
Y2NvcmRpbmcgdG8gZHluYWxsb2MgKG1pbnVzIHRoZSBkeW5hbGxvYyBhdmVyYWdlIGZvciBjYWxp
YnJhdGlvbikuICovCi0gICB0YXJnZXQgKz0gdG90X2Jvb3N0LSgxNjw8TE0pOworICAgdGFyZ2V0
ICs9IHRvdF9ib29zdC0oMTk8PExNKTsKICAgIC8qIEFwcGx5IHRyYW5zaWVudCBib29zdCwgY29t
cGVuc2F0aW5nIGZvciBhdmVyYWdlIGJvb3N0LiAqLwotICAgdGZfY2FsaWJyYXRpb24gPSB2YXJp
YWJsZV9kdXJhdGlvbj09T1BVU19GUkFNRVNJWkVfVkFSSUFCTEUgPwotICAgICAgICAgICAgICAg
ICAgICBRQ09OU1QxNigwLjAyZiwxNCkgOiBRQ09OU1QxNigwLjA0ZiwxNCk7CisgICB0Zl9jYWxp
YnJhdGlvbiA9IFFDT05TVDE2KDAuMDQ0ZiwxNCk7CiAgICB0YXJnZXQgKz0gKG9wdXNfaW50MzIp
U0hMMzIoTVVMVDE2XzMyX1ExNSh0Zl9lc3RpbWF0ZS10Zl9jYWxpYnJhdGlvbiwgdGFyZ2V0KSwx
KTsKIAogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQpAQCAtMTI0OSw3ICsxMjk0LDcgQEAgc3Rh
dGljIGludCBjb21wdXRlX3Zicihjb25zdCBDRUxUTW9kZSAqbW9kZSwgQW5hbHlzaXNJbmZvICph
bmFseXNpcywgb3B1c19pbnQzMgogICAgICAgZmxvYXQgdG9uYWw7CiAKICAgICAgIC8qIFRvbmFs
aXR5IGJvb3N0IChjb21wZW5zYXRpbmcgZm9yIHRoZSBhdmVyYWdlKS4gKi8KLSAgICAgIHRvbmFs
ID0gTUFYMTYoMC5mLGFuYWx5c2lzLT50b25hbGl0eS0uMTVmKS0wLjA5ZjsKKyAgICAgIHRvbmFs
ID0gTUFYMTYoMC5mLGFuYWx5c2lzLT50b25hbGl0eS0uMTVmKS0wLjEyZjsKICAgICAgIHRvbmFs
X3RhcmdldCA9IHRhcmdldCArIChvcHVzX2ludDMyKSgoY29kZWRfYmluczw8QklUUkVTKSoxLjJm
KnRvbmFsKTsKICAgICAgIGlmIChwaXRjaF9jaGFuZ2UpCiAgICAgICAgICB0b25hbF90YXJnZXQg
Kz0gIChvcHVzX2ludDMyKSgoY29kZWRfYmluczw8QklUUkVTKSouOGYpOwpAQCAtMTI3OSwyMSAr
MTMyNCwxMSBAQCBzdGF0aWMgaW50IGNvbXB1dGVfdmJyKGNvbnN0IENFTFRNb2RlICptb2RlLCBB
bmFseXNpc0luZm8gKmFuYWx5c2lzLCBvcHVzX2ludDMyCiAgICAgICAvKnByaW50ZigiJWYgJWRc
biIsIG1heERlcHRoLCBmbG9vcl9kZXB0aCk7Ki8KICAgIH0KIAotICAgaWYgKCghaGFzX3N1cnJv
dW5kX21hc2t8fGxmZSkgJiYgKGNvbnN0cmFpbmVkX3ZiciB8fCBiaXRyYXRlPDY0MDAwKSkKKyAg
IC8qIE1ha2UgVkJSIGxlc3MgYWdncmVzc2l2ZSBmb3IgY29uc3RyYWluZWQgVkJSIGJlY2F1c2Ug
d2UgY2FuJ3Qga2VlcCBhIGhpZ2hlciBiaXRyYXRlCisgICAgICBmb3IgbG9uZy4gTmVlZHMgdHVu
aW5nLiAqLworICAgaWYgKCghaGFzX3N1cnJvdW5kX21hc2t8fGxmZSkgJiYgY29uc3RyYWluZWRf
dmJyKQogICAgewotICAgICAgb3B1c192YWwxNiByYXRlX2ZhY3RvciA9IFExNU9ORTsKLSAgICAg
IGlmIChiaXRyYXRlIDwgNjQwMDApCi0gICAgICB7Ci0jaWZkZWYgRklYRURfUE9JTlQKLSAgICAg
ICAgIHJhdGVfZmFjdG9yID0gTUFYMTYoMCwoYml0cmF0ZS0zMjAwMCkpOwotI2Vsc2UKLSAgICAg
ICAgIHJhdGVfZmFjdG9yID0gTUFYMTYoMCwoMS5mLzMyNzY4KSooYml0cmF0ZS0zMjAwMCkpOwot
I2VuZGlmCi0gICAgICB9Ci0gICAgICBpZiAoY29uc3RyYWluZWRfdmJyKQotICAgICAgICAgcmF0
ZV9mYWN0b3IgPSBNSU4xNihyYXRlX2ZhY3RvciwgUUNPTlNUMTYoMC42N2YsIDE1KSk7Ci0gICAg
ICB0YXJnZXQgPSBiYXNlX3RhcmdldCArIChvcHVzX2ludDMyKU1VTFQxNl8zMl9RMTUocmF0ZV9m
YWN0b3IsIHRhcmdldC1iYXNlX3RhcmdldCk7Ci0KKyAgICAgIHRhcmdldCA9IGJhc2VfdGFyZ2V0
ICsgKG9wdXNfaW50MzIpTVVMVDE2XzMyX1ExNShRQ09OU1QxNigwLjY3ZiwgMTUpLCB0YXJnZXQt
YmFzZV90YXJnZXQpOwogICAgfQogCiAgICBpZiAoIWhhc19zdXJyb3VuZF9tYXNrICYmIHRmX2Vz
dGltYXRlIDwgUUNPTlNUMTYoLjJmLCAxNCkpCkBAIC0xMzMxLDcgKzEzNjYsNyBAQCBpbnQgY2Vs
dF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9w
dXNfdmFsMTYgKiBwY20sCiAgICBWQVJERUNMKGludCwgdGZfcmVzKTsKICAgIFZBUkRFQ0wodW5z
aWduZWQgY2hhciwgY29sbGFwc2VfbWFza3MpOwogICAgY2VsdF9zaWcgKnByZWZpbHRlcl9tZW07
Ci0gICBvcHVzX3ZhbDE2ICpvbGRCYW5kRSwgKm9sZExvZ0UsICpvbGRMb2dFMjsKKyAgIG9wdXNf
dmFsMTYgKm9sZEJhbmRFLCAqb2xkTG9nRSwgKm9sZExvZ0UyLCAqZW5lcmd5RXJyb3I7CiAgICBp
bnQgc2hvcnRCbG9ja3M9MDsKICAgIGludCBpc1RyYW5zaWVudD0wOwogICAgY29uc3QgaW50IEND
ID0gc3QtPmNoYW5uZWxzOwpAQCAtMTM0Myw3ICsxMzc4LDYgQEAgaW50IGNlbHRfZW5jb2RlX3dp
dGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICog
cGNtLAogICAgaW50IGVuZDsKICAgIGludCBlZmZFbmQ7CiAgICBpbnQgY29kZWRCYW5kczsKLSAg
IGludCB0Zl9zdW07CiAgICBpbnQgYWxsb2NfdHJpbTsKICAgIGludCBwaXRjaF9pbmRleD1DT01C
RklMVEVSX01JTlBFUklPRDsKICAgIG9wdXNfdmFsMTYgZ2FpbjEgPSAwOwpAQCAtMTM1NSw2ICsx
Mzg5LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RS
SUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgb3B1c19pbnQzMiB0b3RhbF9ib29z
dDsKICAgIG9wdXNfaW50MzIgYmFsYW5jZTsKICAgIG9wdXNfaW50MzIgdGVsbDsKKyAgIG9wdXNf
aW50MzIgdGVsbDBfZnJhYzsKICAgIGludCBwcmVmaWx0ZXJfdGFwc2V0PTA7CiAgICBpbnQgcGZf
b247CiAgICBpbnQgYW50aV9jb2xsYXBzZV9yc3Y7CkBAIC0xMzc2LDcgKzE0MTEsOSBAQCBpbnQg
Y2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0
IG9wdXNfdmFsMTYgKiBwY20sCiAgICBvcHVzX3ZhbDE2IHN1cnJvdW5kX21hc2tpbmc9MDsKICAg
IG9wdXNfdmFsMTYgdGVtcG9yYWxfdmJyPTA7CiAgICBvcHVzX3ZhbDE2IHN1cnJvdW5kX3RyaW0g
PSAwOwotICAgb3B1c19pbnQzMiBlcXVpdl9yYXRlID0gNTEwMDAwOworICAgb3B1c19pbnQzMiBl
cXVpdl9yYXRlOworICAgaW50IGh5YnJpZDsKKyAgIGludCB3ZWFrX3RyYW5zaWVudCA9IDA7CiAg
ICBWQVJERUNMKG9wdXNfdmFsMTYsIHN1cnJvdW5kX2R5bmFsbG9jKTsKICAgIEFMTE9DX1NUQUNL
OwogCkBAIC0xMzg2LDYgKzE0MjMsNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5j
b2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBlQmFu
ZHMgPSBtb2RlLT5lQmFuZHM7CiAgICBzdGFydCA9IHN0LT5zdGFydDsKICAgIGVuZCA9IHN0LT5l
bmQ7CisgICBoeWJyaWQgPSBzdGFydCAhPSAwOwogICAgdGZfZXN0aW1hdGUgPSAwOwogICAgaWYg
KG5iQ29tcHJlc3NlZEJ5dGVzPDIgfHwgcGNtPT1OVUxMKQogICAgewpAQCAtMTQwOSwxMiArMTQ0
NywxNCBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJ
Q1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBvbGRCYW5kRSA9IChvcHVzX3ZhbDE2
Kikoc3QtPmluX21lbStDQyoob3ZlcmxhcCtDT01CRklMVEVSX01BWFBFUklPRCkpOwogICAgb2xk
TG9nRSA9IG9sZEJhbmRFICsgQ0MqbmJFQmFuZHM7CiAgICBvbGRMb2dFMiA9IG9sZExvZ0UgKyBD
QypuYkVCYW5kczsKKyAgIGVuZXJneUVycm9yID0gb2xkTG9nRTIgKyBDQypuYkVCYW5kczsKIAog
ICAgaWYgKGVuYz09TlVMTCkKICAgIHsKLSAgICAgIHRlbGw9MTsKKyAgICAgIHRlbGwwX2ZyYWM9
dGVsbD0xOwogICAgICAgbmJGaWxsZWRCeXRlcz0wOwogICAgfSBlbHNlIHsKKyAgICAgIHRlbGww
X2ZyYWM9dGVsbD1lY190ZWxsX2ZyYWMoZW5jKTsKICAgICAgIHRlbGw9ZWNfdGVsbChlbmMpOwog
ICAgICAgbmJGaWxsZWRCeXRlcz0odGVsbCs0KT4+MzsKICAgIH0KQEAgLTE0NjcsMTAgKzE1MDcs
MTEgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNU
IHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgICAgaWYgKHN0LT5iaXRyYXRlIT1PUFVT
X0JJVFJBVEVfTUFYKQogICAgICAgICAgbmJDb21wcmVzc2VkQnl0ZXMgPSBJTUFYKDIsIElNSU4o
bmJDb21wcmVzc2VkQnl0ZXMsCiAgICAgICAgICAgICAgICAodG1wKzQqbW9kZS0+RnMpLyg4Km1v
ZGUtPkZzKS0hIXN0LT5zaWduYWxsaW5nKSk7Ci0gICAgICBlZmZlY3RpdmVCeXRlcyA9IG5iQ29t
cHJlc3NlZEJ5dGVzOworICAgICAgZWZmZWN0aXZlQnl0ZXMgPSBuYkNvbXByZXNzZWRCeXRlcyAt
IG5iRmlsbGVkQnl0ZXM7CiAgICB9CisgICBlcXVpdl9yYXRlID0gKChvcHVzX2ludDMyKW5iQ29t
cHJlc3NlZEJ5dGVzKjgqNTAgPj4gKDMtTE0pKSAtICg0MCpDKzIwKSooKDQwMD4+TE0pIC0gNTAp
OwogICAgaWYgKHN0LT5iaXRyYXRlICE9IE9QVVNfQklUUkFURV9NQVgpCi0gICAgICBlcXVpdl9y
YXRlID0gc3QtPmJpdHJhdGUgLSAoNDAqQysyMCkqKCg0MDA+PkxNKSAtIDUwKTsKKyAgICAgIGVx
dWl2X3JhdGUgPSBJTUlOKGVxdWl2X3JhdGUsIHN0LT5iaXRyYXRlIC0gKDQwKkMrMjApKigoNDAw
Pj5MTSkgLSA1MCkpOwogCiAgICBpZiAoZW5jPT1OVUxMKQogICAgewpAQCAtMTU1OCw4ICsxNTk5
LDggQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNU
IHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgewogICAgICAgaW50IGVuYWJsZWQ7CiAg
ICAgICBpbnQgcWc7Ci0gICAgICBlbmFibGVkID0gKChzdC0+bGZlJiZuYkF2YWlsYWJsZUJ5dGVz
PjMpIHx8IG5iQXZhaWxhYmxlQnl0ZXM+MTIqQykgJiYgc3RhcnQ9PTAgJiYgIXNpbGVuY2UgJiYg
IXN0LT5kaXNhYmxlX3BmCi0gICAgICAgICAgICAmJiBzdC0+Y29tcGxleGl0eSA+PSA1ICYmICEo
c3QtPmNvbnNlY190cmFuc2llbnQgJiYgTE0hPTMgJiYgc3QtPnZhcmlhYmxlX2R1cmF0aW9uPT1P
UFVTX0ZSQU1FU0laRV9WQVJJQUJMRSk7CisgICAgICBlbmFibGVkID0gKChzdC0+bGZlJiZuYkF2
YWlsYWJsZUJ5dGVzPjMpIHx8IG5iQXZhaWxhYmxlQnl0ZXM+MTIqQykgJiYgIWh5YnJpZCAmJiAh
c2lsZW5jZSAmJiAhc3QtPmRpc2FibGVfcGYKKyAgICAgICAgICAgICYmIHN0LT5jb21wbGV4aXR5
ID49IDU7CiAKICAgICAgIHByZWZpbHRlcl90YXBzZXQgPSBzdC0+dGFwc2V0X2RlY2lzaW9uOwog
ICAgICAgcGZfb24gPSBydW5fcHJlZmlsdGVyKHN0LCBpbiwgcHJlZmlsdGVyX21lbSwgQ0MsIE4s
IHByZWZpbHRlcl90YXBzZXQsICZwaXRjaF9pbmRleCwgJmdhaW4xLCAmcWcsIGVuYWJsZWQsIG5i
QXZhaWxhYmxlQnl0ZXMpOwpAQCAtMTU2OCw3ICsxNjA5LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dp
dGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICog
cGNtLAogICAgICAgICAgcGl0Y2hfY2hhbmdlID0gMTsKICAgICAgIGlmIChwZl9vbj09MCkKICAg
ICAgIHsKLSAgICAgICAgIGlmKHN0YXJ0PT0wICYmIHRlbGwrMTY8PXRvdGFsX2JpdHMpCisgICAg
ICAgICBpZighaHlicmlkICYmIHRlbGwrMTY8PXRvdGFsX2JpdHMpCiAgICAgICAgICAgICBlY19l
bmNfYml0X2xvZ3AoZW5jLCAwLCAxKTsKICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAvKlRoaXMg
YmxvY2sgaXMgbm90IGdhdGVkIGJ5IGEgdG90YWwgYml0cyBjaGVjayBvbmx5IGJlY2F1c2UKQEAg
LTE1ODksOCArMTYzMCwxMiBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAq
IE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBzaG9ydEJsb2Nr
cyA9IDA7CiAgICBpZiAoc3QtPmNvbXBsZXhpdHkgPj0gMSAmJiAhc3QtPmxmZSkKICAgIHsKKyAg
ICAgIC8qIFJlZHVjZXMgdGhlIGxpa2VsaWhvb2Qgb2YgZW5lcmd5IGluc3RhYmlsaXR5IG9uIGZy
aWNhdGl2ZXMgYXQgbG93IGJpdHJhdGUKKyAgICAgICAgIGluIGh5YnJpZCBtb2RlLiBJdCBzZWVt
cyBsaWtlIHdlIHN0aWxsIHdhbnQgdG8gaGF2ZSByZWFsIHRyYW5zaWVudHMgb24gdm93ZWxzCisg
ICAgICAgICB0aG91Z2ggKHNtYWxsIFNJTEsgcXVhbnRpemF0aW9uIG9mZnNldCB2YWx1ZSkuICov
CisgICAgICBpbnQgYWxsb3dfd2Vha190cmFuc2llbnRzID0gaHlicmlkICYmIGVmZmVjdGl2ZUJ5
dGVzPDE1ICYmIHN0LT5zaWxrX2luZm8ub2Zmc2V0ID49IDEwMDsKICAgICAgIGlzVHJhbnNpZW50
ID0gdHJhbnNpZW50X2FuYWx5c2lzKGluLCBOK292ZXJsYXAsIENDLAotICAgICAgICAgICAgJnRm
X2VzdGltYXRlLCAmdGZfY2hhbik7CisgICAgICAgICAgICAmdGZfZXN0aW1hdGUsICZ0Zl9jaGFu
LCBhbGxvd193ZWFrX3RyYW5zaWVudHMsICZ3ZWFrX3RyYW5zaWVudCk7CiAgICB9CiAgICBpZiAo
TE0+MCAmJiBlY190ZWxsKGVuYykrMzw9dG90YWxfYml0cykKICAgIHsKQEAgLTE2MTAsNyArMTY1
NSw3IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklD
VCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgIGlmIChzZWNvbmRNZGN0KQogICAgewog
ICAgICAgY29tcHV0ZV9tZGN0cyhtb2RlLCAwLCBpbiwgZnJlcSwgQywgQ0MsIExNLCBzdC0+dXBz
YW1wbGUsIHN0LT5hcmNoKTsKLSAgICAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhtb2RlLCBmcmVx
LCBiYW5kRSwgZWZmRW5kLCBDLCBMTSk7CisgICAgICBjb21wdXRlX2JhbmRfZW5lcmdpZXMobW9k
ZSwgZnJlcSwgYmFuZEUsIGVmZkVuZCwgQywgTE0sIHN0LT5hcmNoKTsKICAgICAgIGFtcDJMb2cy
KG1vZGUsIGVmZkVuZCwgZW5kLCBiYW5kRSwgYmFuZExvZ0UyLCBDKTsKICAgICAgIGZvciAoaT0w
O2k8QypuYkVCYW5kcztpKyspCiAgICAgICAgICBiYW5kTG9nRTJbaV0gKz0gSEFMRjE2KFNITDE2
KExNLCBEQl9TSElGVCkpOwpAQCAtMTYxOSw3ICsxNjY0LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dp
dGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICog
cGNtLAogICAgY29tcHV0ZV9tZGN0cyhtb2RlLCBzaG9ydEJsb2NrcywgaW4sIGZyZXEsIEMsIEND
LCBMTSwgc3QtPnVwc2FtcGxlLCBzdC0+YXJjaCk7CiAgICBpZiAoQ0M9PTImJkM9PTEpCiAgICAg
ICB0Zl9jaGFuID0gMDsKLSAgIGNvbXB1dGVfYmFuZF9lbmVyZ2llcyhtb2RlLCBmcmVxLCBiYW5k
RSwgZWZmRW5kLCBDLCBMTSk7CisgICBjb21wdXRlX2JhbmRfZW5lcmdpZXMobW9kZSwgZnJlcSwg
YmFuZEUsIGVmZkVuZCwgQywgTE0sIHN0LT5hcmNoKTsKIAogICAgaWYgKHN0LT5sZmUpCiAgICB7
CkBAIC0xNjM0LDcgKzE2NzksNyBAQCBpbnQgY2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2Rl
ciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFsMTYgKiBwY20sCiAgICBBTExPQyhz
dXJyb3VuZF9keW5hbGxvYywgQypuYkVCYW5kcywgb3B1c192YWwxNik7CiAgICBPUFVTX0NMRUFS
KHN1cnJvdW5kX2R5bmFsbG9jLCBlbmQpOwogICAgLyogVGhpcyBjb21wdXRlcyBob3cgbXVjaCBt
YXNraW5nIHRha2VzIHBsYWNlIGJldHdlZW4gc3Vycm91bmQgY2hhbm5lbHMgKi8KLSAgIGlmIChz
dGFydD09MCYmc3QtPmVuZXJneV9tYXNrJiYhc3QtPmxmZSkKKyAgIGlmICghaHlicmlkJiZzdC0+
ZW5lcmd5X21hc2smJiFzdC0+bGZlKQogICAgewogICAgICAgaW50IG1hc2tfZW5kOwogICAgICAg
aW50IG1pZGJhbmQ7CkBAIC0xNzM2LDE0ICsxNzgxLDE0IEBAIGludCBjZWx0X2VuY29kZV93aXRo
X2VjKENFTFRFbmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBj
bSwKIAogICAgLyogTGFzdCBjaGFuY2UgdG8gY2F0Y2ggYW55IHRyYW5zaWVudCB3ZSBtaWdodCBo
YXZlIG1pc3NlZCBpbiB0aGUKICAgICAgIHRpbWUtZG9tYWluIGFuYWx5c2lzICovCi0gICBpZiAo
TE0+MCAmJiBlY190ZWxsKGVuYykrMzw9dG90YWxfYml0cyAmJiAhaXNUcmFuc2llbnQgJiYgc3Qt
PmNvbXBsZXhpdHk+PTUgJiYgIXN0LT5sZmUpCisgICBpZiAoTE0+MCAmJiBlY190ZWxsKGVuYykr
Mzw9dG90YWxfYml0cyAmJiAhaXNUcmFuc2llbnQgJiYgc3QtPmNvbXBsZXhpdHk+PTUgJiYgIXN0
LT5sZmUgJiYgIWh5YnJpZCkKICAgIHsKICAgICAgIGlmIChwYXRjaF90cmFuc2llbnRfZGVjaXNp
b24oYmFuZExvZ0UsIG9sZEJhbmRFLCBuYkVCYW5kcywgc3RhcnQsIGVuZCwgQykpCiAgICAgICB7
CiAgICAgICAgICBpc1RyYW5zaWVudCA9IDE7CiAgICAgICAgICBzaG9ydEJsb2NrcyA9IE07CiAg
ICAgICAgICBjb21wdXRlX21kY3RzKG1vZGUsIHNob3J0QmxvY2tzLCBpbiwgZnJlcSwgQywgQ0Ms
IExNLCBzdC0+dXBzYW1wbGUsIHN0LT5hcmNoKTsKLSAgICAgICAgIGNvbXB1dGVfYmFuZF9lbmVy
Z2llcyhtb2RlLCBmcmVxLCBiYW5kRSwgZWZmRW5kLCBDLCBMTSk7CisgICAgICAgICBjb21wdXRl
X2JhbmRfZW5lcmdpZXMobW9kZSwgZnJlcSwgYmFuZEUsIGVmZkVuZCwgQywgTE0sIHN0LT5hcmNo
KTsKICAgICAgICAgIGFtcDJMb2cyKG1vZGUsIGVmZkVuZCwgZW5kLCBiYW5kRSwgYmFuZExvZ0Us
IEMpOwogICAgICAgICAgLyogQ29tcGVuc2F0ZSBmb3IgdGhlIHNjYWxpbmcgb2Ygc2hvcnQgdnMg
bG9uZyBtZGN0cyAqLwogICAgICAgICAgZm9yIChpPTA7aTxDKm5iRUJhbmRzO2krKykKQEAgLTE3
NjIsMjkgKzE4MDcsNDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBP
UFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogCiAgICBBTExPQyh0Zl9y
ZXMsIG5iRUJhbmRzLCBpbnQpOwogICAgLyogRGlzYWJsZSB2YXJpYWJsZSB0ZiByZXNvbHV0aW9u
IGZvciBoeWJyaWQgYW5kIGF0IHZlcnkgbG93IGJpdHJhdGUgKi8KLSAgIGlmIChlZmZlY3RpdmVC
eXRlcz49MTUqQyAmJiBzdGFydD09MCAmJiBzdC0+Y29tcGxleGl0eT49MiAmJiAhc3QtPmxmZSkK
KyAgIGlmIChlZmZlY3RpdmVCeXRlcz49MTUqQyAmJiAhaHlicmlkICYmIHN0LT5jb21wbGV4aXR5
Pj0yICYmICFzdC0+bGZlKQogICAgewogICAgICAgaW50IGxhbWJkYTsKLSAgICAgIGlmIChlZmZl
Y3RpdmVCeXRlczw0MCkKLSAgICAgICAgIGxhbWJkYSA9IDEyOwotICAgICAgZWxzZSBpZiAoZWZm
ZWN0aXZlQnl0ZXM8NjApCi0gICAgICAgICBsYW1iZGEgPSA2OwotICAgICAgZWxzZSBpZiAoZWZm
ZWN0aXZlQnl0ZXM8MTAwKQotICAgICAgICAgbGFtYmRhID0gNDsKLSAgICAgIGVsc2UKLSAgICAg
ICAgIGxhbWJkYSA9IDM7Ci0gICAgICBsYW1iZGEqPTI7Ci0gICAgICB0Zl9zZWxlY3QgPSB0Zl9h
bmFseXNpcyhtb2RlLCBlZmZFbmQsIGlzVHJhbnNpZW50LCB0Zl9yZXMsIGxhbWJkYSwgWCwgTiwg
TE0sICZ0Zl9zdW0sIHRmX2VzdGltYXRlLCB0Zl9jaGFuKTsKKyAgICAgIGxhbWJkYSA9IElNQVgo
NSwgMTI4MC9lZmZlY3RpdmVCeXRlcyArIDIpOworICAgICAgdGZfc2VsZWN0ID0gdGZfYW5hbHlz
aXMobW9kZSwgZWZmRW5kLCBpc1RyYW5zaWVudCwgdGZfcmVzLCBsYW1iZGEsIFgsIE4sIExNLCB0
Zl9lc3RpbWF0ZSwgdGZfY2hhbik7CiAgICAgICBmb3IgKGk9ZWZmRW5kO2k8ZW5kO2krKykKICAg
ICAgICAgIHRmX3Jlc1tpXSA9IHRmX3Jlc1tlZmZFbmQtMV07CisgICB9IGVsc2UgaWYgKGh5YnJp
ZCAmJiB3ZWFrX3RyYW5zaWVudCkKKyAgIHsKKyAgICAgIC8qIEZvciB3ZWFrIHRyYW5zaWVudHMs
IHdlIHJlbHkgb24gdGhlIGZhY3QgdGhhdCBpbXByb3ZpbmcgdGltZSByZXNvbHV0aW9uIHVzaW5n
CisgICAgICAgICBURiBvbiBhIGxvbmcgd2luZG93IGlzIGltcGVyZmVjdCBhbmQgd2lsbCBub3Qg
cmVzdWx0IGluIGFuIGVuZXJneSBjb2xsYXBzZSBhdAorICAgICAgICAgbG93IGJpdHJhdGUuICov
CisgICAgICBmb3IgKGk9MDtpPGVuZDtpKyspCisgICAgICAgICB0Zl9yZXNbaV0gPSAxOworICAg
ICAgdGZfc2VsZWN0PTA7CisgICB9IGVsc2UgaWYgKGh5YnJpZCAmJiBlZmZlY3RpdmVCeXRlczwx
NSkKKyAgIHsKKyAgICAgIC8qIEZvciBsb3cgYml0cmF0ZSBoeWJyaWQsIHdlIGZvcmNlIHRlbXBv
cmFsIHJlc29sdXRpb24gdG8gNSBtcyByYXRoZXIgdGhhbiAyLjUgbXMuICovCisgICAgICBmb3Ig
KGk9MDtpPGVuZDtpKyspCisgICAgICAgICB0Zl9yZXNbaV0gPSAwOworICAgICAgdGZfc2VsZWN0
PWlzVHJhbnNpZW50OwogICAgfSBlbHNlIHsKLSAgICAgIHRmX3N1bSA9IDA7CiAgICAgICBmb3Ig
KGk9MDtpPGVuZDtpKyspCiAgICAgICAgICB0Zl9yZXNbaV0gPSBpc1RyYW5zaWVudDsKICAgICAg
IHRmX3NlbGVjdD0wOwogICAgfQogCiAgICBBTExPQyhlcnJvciwgQypuYkVCYW5kcywgb3B1c192
YWwxNik7CisgICBjPTA7CisgICBkbyB7CisgICAgICBmb3IgKGk9c3RhcnQ7aTxlbmQ7aSsrKQor
ICAgICAgeworICAgICAgICAgLyogV2hlbiB0aGUgZW5lcmd5IGlzIHN0YWJsZSwgc2xpZ2h0bHkg
YmlhcyBlbmVyZ3kgcXVhbnRpemF0aW9uIHRvd2FyZHMKKyAgICAgICAgICAgIHRoZSBwcmV2aW91
cyBlcnJvciB0byBtYWtlIHRoZSBnYWluIG1vcmUgc3RhYmxlIChhIGNvbnN0YW50IG9mZnNldCBp
cworICAgICAgICAgICAgYmV0dGVyIHRoYW4gZmx1Y3R1YXRpb25zKS4gKi8KKyAgICAgICAgIGlm
IChBQlMzMihTVUIzMihiYW5kTG9nRVtpK2MqbmJFQmFuZHNdLCBvbGRCYW5kRVtpK2MqbmJFQmFu
ZHNdKSkgPCBRQ09OU1QxNigyLmYsIERCX1NISUZUKSkKKyAgICAgICAgIHsKKyAgICAgICAgICAg
IGJhbmRMb2dFW2krYypuYkVCYW5kc10gLT0gTVVMVDE2XzE2X1ExNShlbmVyZ3lFcnJvcltpK2Mq
bmJFQmFuZHNdLCBRQ09OU1QxNigwLjI1ZiwgMTUpKTsKKyAgICAgICAgIH0KKyAgICAgIH0KKyAg
IH0gd2hpbGUgKCsrYyA8IEMpOwogICAgcXVhbnRfY29hcnNlX2VuZXJneShtb2RlLCBzdGFydCwg
ZW5kLCBlZmZFbmQsIGJhbmRMb2dFLAogICAgICAgICAgb2xkQmFuZEUsIHRvdGFsX2JpdHMsIGVy
cm9yLCBlbmMsCiAgICAgICAgICBDLCBMTSwgbmJBdmFpbGFibGVCeXRlcywgc3QtPmZvcmNlX2lu
dHJhLApAQCAtMTc5OCw3ICsxODYxLDE1IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRF
bmNvZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgICAg
IHsKICAgICAgICAgIHN0LT50YXBzZXRfZGVjaXNpb24gPSAwOwogICAgICAgICAgc3QtPnNwcmVh
ZF9kZWNpc2lvbiA9IFNQUkVBRF9OT1JNQUw7Ci0gICAgICB9IGVsc2UgaWYgKHNob3J0QmxvY2tz
IHx8IHN0LT5jb21wbGV4aXR5IDwgMyB8fCBuYkF2YWlsYWJsZUJ5dGVzIDwgMTAqQyB8fCBzdGFy
dCAhPSAwKQorICAgICAgfSBlbHNlIGlmIChoeWJyaWQpCisgICAgICB7CisgICAgICAgICBpZiAo
c3QtPmNvbXBsZXhpdHkgPT0gMCkKKyAgICAgICAgICAgIHN0LT5zcHJlYWRfZGVjaXNpb24gPSBT
UFJFQURfTk9ORTsKKyAgICAgICAgIGVsc2UgaWYgKGlzVHJhbnNpZW50KQorICAgICAgICAgICAg
c3QtPnNwcmVhZF9kZWNpc2lvbiA9IFNQUkVBRF9OT1JNQUw7CisgICAgICAgICBlbHNlCisgICAg
ICAgICAgICBzdC0+c3ByZWFkX2RlY2lzaW9uID0gU1BSRUFEX0FHR1JFU1NJVkU7CisgICAgICB9
IGVsc2UgaWYgKHNob3J0QmxvY2tzIHx8IHN0LT5jb21wbGV4aXR5IDwgMyB8fCBuYkF2YWlsYWJs
ZUJ5dGVzIDwgMTAqQykKICAgICAgIHsKICAgICAgICAgIGlmIChzdC0+Y29tcGxleGl0eSA9PSAw
KQogICAgICAgICAgICAgc3QtPnNwcmVhZF9kZWNpc2lvbiA9IFNQUkVBRF9OT05FOwpAQCAtMTgz
NCw3ICsxOTA1LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVuY29kZXIgKiBPUFVT
X1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogCiAgICBtYXhEZXB0aCA9IGR5
bmFsbG9jX2FuYWx5c2lzKGJhbmRMb2dFLCBiYW5kTG9nRTIsIG5iRUJhbmRzLCBzdGFydCwgZW5k
LCBDLCBvZmZzZXRzLAogICAgICAgICAgc3QtPmxzYl9kZXB0aCwgbW9kZS0+bG9nTiwgaXNUcmFu
c2llbnQsIHN0LT52YnIsIHN0LT5jb25zdHJhaW5lZF92YnIsCi0gICAgICAgICBlQmFuZHMsIExN
LCBlZmZlY3RpdmVCeXRlcywgJnRvdF9ib29zdCwgc3QtPmxmZSwgc3Vycm91bmRfZHluYWxsb2Mp
OworICAgICAgICAgZUJhbmRzLCBMTSwgZWZmZWN0aXZlQnl0ZXMsICZ0b3RfYm9vc3QsIHN0LT5s
ZmUsIHN1cnJvdW5kX2R5bmFsbG9jLCAmc3QtPmFuYWx5c2lzKTsKICAgIC8qIEZvciBMRkUsIGV2
ZXJ5dGhpbmcgaW50ZXJlc3RpbmcgaXMgaW4gdGhlIGZpcnN0IGJhbmQgKi8KICAgIGlmIChzdC0+
bGZlKQogICAgICAgb2Zmc2V0c1swXSA9IElNSU4oOCwgZWZmZWN0aXZlQnl0ZXMvMyk7CkBAIC0x
ODk2LDEyICsxOTY3LDE1IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNvZGVyICog
T1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgIGFsbG9jX3RyaW0g
PSA1OwogICAgaWYgKHRlbGwrKDY8PEJJVFJFUykgPD0gdG90YWxfYml0cyAtIHRvdGFsX2Jvb3N0
KQogICAgewotICAgICAgaWYgKHN0LT5sZmUpCisgICAgICBpZiAoc3RhcnQgPiAwIHx8IHN0LT5s
ZmUpCisgICAgICB7CisgICAgICAgICBzdC0+c3RlcmVvX3NhdmluZyA9IDA7CiAgICAgICAgICBh
bGxvY190cmltID0gNTsKLSAgICAgIGVsc2UKKyAgICAgIH0gZWxzZSB7CiAgICAgICAgICBhbGxv
Y190cmltID0gYWxsb2NfdHJpbV9hbmFseXNpcyhtb2RlLCBYLCBiYW5kTG9nRSwKICAgICAgICAg
ICAgIGVuZCwgTE0sIEMsIE4sICZzdC0+YW5hbHlzaXMsICZzdC0+c3RlcmVvX3NhdmluZywgdGZf
ZXN0aW1hdGUsCi0gICAgICAgICAgICBzdC0+aW50ZW5zaXR5LCBzdXJyb3VuZF90cmltLCBzdC0+
YXJjaCk7CisgICAgICAgICAgICBzdC0+aW50ZW5zaXR5LCBzdXJyb3VuZF90cmltLCBlcXVpdl9y
YXRlLCBzdC0+YXJjaCk7CisgICAgICB9CiAgICAgICBlY19lbmNfaWNkZihlbmMsIGFsbG9jX3Ry
aW0sIHRyaW1faWNkZiwgNyk7CiAgICAgICB0ZWxsID0gZWNfdGVsbF9mcmFjKGVuYyk7CiAgICB9
CkBAIC0xOTE5LDE3ICsxOTkzLDM2IEBAIGludCBjZWx0X2VuY29kZV93aXRoX2VjKENFTFRFbmNv
ZGVyICogT1BVU19SRVNUUklDVCBzdCwgY29uc3Qgb3B1c192YWwxNiAqIHBjbSwKICAgICAgLyog
RG9uJ3QgYXR0ZW1wdCB0byB1c2UgbW9yZSB0aGFuIDUxMCBrYi9zLCBldmVuIGZvciBmcmFtZXMg
c21hbGxlciB0aGFuIDIwIG1zLgogICAgICAgICBUaGUgQ0VMVCBhbGxvY2F0b3Igd2lsbCBqdXN0
IG5vdCBiZSBhYmxlIHRvIHVzZSBtb3JlIHRoYW4gdGhhdCBhbnl3YXkuICovCiAgICAgIG5iQ29t
cHJlc3NlZEJ5dGVzID0gSU1JTihuYkNvbXByZXNzZWRCeXRlcywxMjc1Pj4oMy1MTSkpOwotICAg
ICBiYXNlX3RhcmdldCA9IHZicl9yYXRlIC0gKCg0MCpDKzIwKTw8QklUUkVTKTsKKyAgICAgaWYg
KCFoeWJyaWQpCisgICAgIHsKKyAgICAgICAgYmFzZV90YXJnZXQgPSB2YnJfcmF0ZSAtICgoNDAq
QysyMCk8PEJJVFJFUyk7CisgICAgIH0gZWxzZSB7CisgICAgICAgIGJhc2VfdGFyZ2V0ID0gSU1B
WCgwLCB2YnJfcmF0ZSAtICgoOSpDKzQpPDxCSVRSRVMpKTsKKyAgICAgfQogCiAgICAgIGlmIChz
dC0+Y29uc3RyYWluZWRfdmJyKQogICAgICAgICBiYXNlX3RhcmdldCArPSAoc3QtPnZicl9vZmZz
ZXQ+PmxtX2RpZmYpOwogCi0gICAgIHRhcmdldCA9IGNvbXB1dGVfdmJyKG1vZGUsICZzdC0+YW5h
bHlzaXMsIGJhc2VfdGFyZ2V0LCBMTSwgZXF1aXZfcmF0ZSwKKyAgICAgaWYgKCFoeWJyaWQpCisg
ICAgIHsKKyAgICAgICAgdGFyZ2V0ID0gY29tcHV0ZV92YnIobW9kZSwgJnN0LT5hbmFseXNpcywg
YmFzZV90YXJnZXQsIExNLCBlcXVpdl9yYXRlLAogICAgICAgICAgICBzdC0+bGFzdENvZGVkQmFu
ZHMsIEMsIHN0LT5pbnRlbnNpdHksIHN0LT5jb25zdHJhaW5lZF92YnIsCiAgICAgICAgICAgIHN0
LT5zdGVyZW9fc2F2aW5nLCB0b3RfYm9vc3QsIHRmX2VzdGltYXRlLCBwaXRjaF9jaGFuZ2UsIG1h
eERlcHRoLAotICAgICAgICAgICBzdC0+dmFyaWFibGVfZHVyYXRpb24sIHN0LT5sZmUsIHN0LT5l
bmVyZ3lfbWFzayE9TlVMTCwgc3Vycm91bmRfbWFza2luZywKKyAgICAgICAgICAgc3QtPmxmZSwg
c3QtPmVuZXJneV9tYXNrIT1OVUxMLCBzdXJyb3VuZF9tYXNraW5nLAogICAgICAgICAgICB0ZW1w
b3JhbF92YnIpOwotCisgICAgIH0gZWxzZSB7CisgICAgICAgIHRhcmdldCA9IGJhc2VfdGFyZ2V0
OworICAgICAgICAvKiBUb25hbCBmcmFtZXMgKG9mZnNldDwxMDApIG5lZWQgbW9yZSBiaXRzIHRo
YW4gbm9pc3kgKG9mZnNldD4xMDApIG9uZXMuICovCisgICAgICAgIGlmIChzdC0+c2lsa19pbmZv
Lm9mZnNldCA8IDEwMCkgdGFyZ2V0ICs9IDEyIDw8IEJJVFJFUyA+PiAoMy1MTSk7CisgICAgICAg
IGlmIChzdC0+c2lsa19pbmZvLm9mZnNldCA+IDEwMCkgdGFyZ2V0IC09IDE4IDw8IEJJVFJFUyA+
PiAoMy1MTSk7CisgICAgICAgIC8qIEJvb3N0aW5nIGJpdHJhdGUgb24gdHJhbnNpZW50cyBhbmQg
dm93ZWxzIHdpdGggc2lnbmlmaWNhbnQgdGVtcG9yYWwKKyAgICAgICAgICAgc3Bpa2VzLiAqLwor
ICAgICAgICB0YXJnZXQgKz0gKG9wdXNfaW50MzIpTVVMVDE2XzE2X1ExNCh0Zl9lc3RpbWF0ZS1R
Q09OU1QxNiguMjVmLDE0KSwgKDUwPDxCSVRSRVMpKTsKKyAgICAgICAgLyogSWYgd2UgaGF2ZSBh
IHN0cm9uZyB0cmFuc2llbnQsIGxldCdzIG1ha2Ugc3VyZSBpdCBoYXMgZW5vdWdoIGJpdHMgdG8g
Y29kZQorICAgICAgICAgICB0aGUgZmlyc3QgdHdvIGJhbmRzLCBzbyB0aGF0IGl0IGNhbiB1c2Ug
Zm9sZGluZyByYXRoZXIgdGhhbiBub2lzZS4gKi8KKyAgICAgICAgaWYgKHRmX2VzdGltYXRlID4g
UUNPTlNUMTYoLjdmLDE0KSkKKyAgICAgICAgICAgdGFyZ2V0ID0gSU1BWCh0YXJnZXQsIDUwPDxC
SVRSRVMpOworICAgICB9CiAgICAgIC8qIFRoZSBjdXJyZW50IG9mZnNldCBpcyByZW1vdmVkIGZy
b20gdGhlIHRhcmdldCBhbmQgdGhlIHNwYWNlIHVzZWQKICAgICAgICAgc28gZmFyIGlzIGFkZGVk
Ki8KICAgICAgdGFyZ2V0PXRhcmdldCt0ZWxsOwpAQCAtMTkzNywxMSArMjAzMCwxNiBAQCBpbnQg
Y2VsdF9lbmNvZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0
IG9wdXNfdmFsMTYgKiBwY20sCiAgICAgICAgICByZXN1bHQgaW4gdGhlIGVuY29kZXIgcnVubmlu
ZyBvdXQgb2YgYml0cy4KICAgICAgICAgVGhlIG1hcmdpbiBvZiAyIGJ5dGVzIGVuc3VyZXMgdGhh
dCBub25lIG9mIHRoZSBidXN0LXByZXZlbnRpb24gbG9naWMKICAgICAgICAgIGluIHRoZSBkZWNv
ZGVyIHdpbGwgaGF2ZSB0cmlnZ2VyZWQgc28gZmFyLiAqLwotICAgICBtaW5fYWxsb3dlZCA9ICgo
dGVsbCt0b3RhbF9ib29zdCsoMTw8KEJJVFJFUyszKSktMSk+PihCSVRSRVMrMykpICsgMiAtIG5i
RmlsbGVkQnl0ZXM7CisgICAgIG1pbl9hbGxvd2VkID0gKCh0ZWxsK3RvdGFsX2Jvb3N0KygxPDwo
QklUUkVTKzMpKS0xKT4+KEJJVFJFUyszKSkgKyAyOworICAgICAvKiBUYWtlIGludG8gYWNjb3Vu
dCB0aGUgMzcgYml0cyB3ZSBuZWVkIHRvIGhhdmUgbGVmdCBpbiB0aGUgcGFja2V0IHRvCisgICAg
ICAgIHNpZ25hbCBhIHJlZHVuZGFudCBmcmFtZSBpbiBoeWJyaWQgbW9kZS4gQ3JlYXRpbmcgYSBz
aG9ydGVyIHBhY2tldCB3b3VsZAorICAgICAgICBjcmVhdGUgYW4gZW50cm9weSBjb2RlciBkZXN5
bmMuICovCisgICAgIGlmIChoeWJyaWQpCisgICAgICAgIG1pbl9hbGxvd2VkID0gSU1BWChtaW5f
YWxsb3dlZCwgKHRlbGwwX2ZyYWMrKDM3PDxCSVRSRVMpK3RvdGFsX2Jvb3N0KygxPDwoQklUUkVT
KzMpKS0xKT4+KEJJVFJFUyszKSk7CiAKICAgICAgbmJBdmFpbGFibGVCeXRlcyA9ICh0YXJnZXQr
KDE8PChCSVRSRVMrMikpKT4+KEJJVFJFUyszKTsKICAgICAgbmJBdmFpbGFibGVCeXRlcyA9IElN
QVgobWluX2FsbG93ZWQsbmJBdmFpbGFibGVCeXRlcyk7Ci0gICAgIG5iQXZhaWxhYmxlQnl0ZXMg
PSBJTUlOKG5iQ29tcHJlc3NlZEJ5dGVzLG5iQXZhaWxhYmxlQnl0ZXMrbmJGaWxsZWRCeXRlcykg
LSBuYkZpbGxlZEJ5dGVzOworICAgICBuYkF2YWlsYWJsZUJ5dGVzID0gSU1JTihuYkNvbXByZXNz
ZWRCeXRlcyxuYkF2YWlsYWJsZUJ5dGVzKTsKIAogICAgICAvKiBCeSBob3cgbXVjaCBkaWQgd2Ug
Im1pc3MiIHRoZSB0YXJnZXQgb24gdGhhdCBmcmFtZSAqLwogICAgICBkZWx0YSA9IHRhcmdldCAt
IHZicl9yYXRlOwpAQCAtMTk4OCw3ICsyMDg2LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMo
Q0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAog
ICAgICAgICBzdC0+dmJyX3Jlc2Vydm9pciA9IDA7CiAgICAgICAgIC8qcHJpbnRmICgiKyVkXG4i
LCBhZGp1c3QpOyovCiAgICAgIH0KLSAgICAgbmJDb21wcmVzc2VkQnl0ZXMgPSBJTUlOKG5iQ29t
cHJlc3NlZEJ5dGVzLG5iQXZhaWxhYmxlQnl0ZXMrbmJGaWxsZWRCeXRlcyk7CisgICAgIG5iQ29t
cHJlc3NlZEJ5dGVzID0gSU1JTihuYkNvbXByZXNzZWRCeXRlcyxuYkF2YWlsYWJsZUJ5dGVzKTsK
ICAgICAgLypwcmludGYoIiVkXG4iLCBuYkNvbXByZXNzZWRCeXRlcyo1MCo4KTsqLwogICAgICAv
KiBUaGlzIG1vdmVzIHRoZSByYXcgYml0cyB0byB0YWtlIGludG8gYWNjb3VudCB0aGUgbmV3IGNv
bXByZXNzZWQgc2l6ZSAqLwogICAgICBlY19lbmNfc2hyaW5rKGVuYywgbmJDb21wcmVzc2VkQnl0
ZXMpOwpAQCAtMjAzOCw3ICsyMTM2LDcgQEAgaW50IGNlbHRfZW5jb2RlX3dpdGhfZWMoQ0VMVEVu
Y29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBjb25zdCBvcHVzX3ZhbDE2ICogcGNtLAogICAgcXVh
bnRfYWxsX2JhbmRzKDEsIG1vZGUsIHN0YXJ0LCBlbmQsIFgsIEM9PTIgPyBYK04gOiBOVUxMLCBj
b2xsYXBzZV9tYXNrcywKICAgICAgICAgIGJhbmRFLCBwdWxzZXMsIHNob3J0QmxvY2tzLCBzdC0+
c3ByZWFkX2RlY2lzaW9uLAogICAgICAgICAgZHVhbF9zdGVyZW8sIHN0LT5pbnRlbnNpdHksIHRm
X3JlcywgbmJDb21wcmVzc2VkQnl0ZXMqKDg8PEJJVFJFUyktYW50aV9jb2xsYXBzZV9yc3YsCi0g
ICAgICAgICBiYWxhbmNlLCBlbmMsIExNLCBjb2RlZEJhbmRzLCAmc3QtPnJuZywgc3QtPmFyY2gp
OworICAgICAgICAgYmFsYW5jZSwgZW5jLCBMTSwgY29kZWRCYW5kcywgJnN0LT5ybmcsIHN0LT5j
b21wbGV4aXR5LCBzdC0+YXJjaCwgc3QtPmRpc2FibGVfaW52KTsKIAogICAgaWYgKGFudGlfY29s
bGFwc2VfcnN2ID4gMCkKICAgIHsKQEAgLTIwNDksNiArMjE0NywxNCBAQCBpbnQgY2VsdF9lbmNv
ZGVfd2l0aF9lYyhDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGNvbnN0IG9wdXNfdmFs
MTYgKiBwY20sCiAgICAgICBlY19lbmNfYml0cyhlbmMsIGFudGlfY29sbGFwc2Vfb24sIDEpOwog
ICAgfQogICAgcXVhbnRfZW5lcmd5X2ZpbmFsaXNlKG1vZGUsIHN0YXJ0LCBlbmQsIG9sZEJhbmRF
LCBlcnJvciwgZmluZV9xdWFudCwgZmluZV9wcmlvcml0eSwgbmJDb21wcmVzc2VkQnl0ZXMqOC1l
Y190ZWxsKGVuYyksIGVuYywgQyk7CisgICBPUFVTX0NMRUFSKGVuZXJneUVycm9yLCBuYkVCYW5k
cypDQyk7CisgICBjPTA7CisgICBkbyB7CisgICAgICBmb3IgKGk9c3RhcnQ7aTxlbmQ7aSsrKQor
ICAgICAgeworICAgICAgICAgZW5lcmd5RXJyb3JbaStjKm5iRUJhbmRzXSA9IE1BWDE2KC1RQ09O
U1QxNigwLjVmLCAxNSksIE1JTjE2KFFDT05TVDE2KDAuNWYsIDE1KSwgZXJyb3JbaStjKm5iRUJh
bmRzXSkpOworICAgICAgfQorICAgfSB3aGlsZSAoKytjIDwgQyk7CiAKICAgIGlmIChzaWxlbmNl
KQogICAgewpAQCAtMjMyMSwxMCArMjQyNywyNCBAQCBpbnQgb3B1c19jdXN0b21fZW5jb2Rlcl9j
dGwoQ0VMVEVuY29kZXIgKiBPUFVTX1JFU1RSSUNUIHN0LCBpbnQgcmVxdWVzdCwgLi4uKQogICAg
ICAgICAgICp2YWx1ZT1zdC0+bHNiX2RlcHRoOwogICAgICAgfQogICAgICAgYnJlYWs7Ci0gICAg
ICBjYXNlIE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTl9SRVFVRVNUOgorICAgICAgY2Fz
ZSBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKICAgICAgIHsKICAg
ICAgICAgICBvcHVzX2ludDMyIHZhbHVlID0gdmFfYXJnKGFwLCBvcHVzX2ludDMyKTsKLSAgICAg
ICAgICBzdC0+dmFyaWFibGVfZHVyYXRpb24gPSB2YWx1ZTsKKyAgICAgICAgICBpZih2YWx1ZTww
IHx8IHZhbHVlPjEpCisgICAgICAgICAgeworICAgICAgICAgICAgIGdvdG8gYmFkX2FyZzsKKyAg
ICAgICAgICB9CisgICAgICAgICAgc3QtPmRpc2FibGVfaW52ID0gdmFsdWU7CisgICAgICB9Cisg
ICAgICBicmVhazsKKyAgICAgIGNhc2UgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVE
X1JFUVVFU1Q6CisgICAgICB7CisgICAgICAgICAgb3B1c19pbnQzMiAqdmFsdWUgPSB2YV9hcmco
YXAsIG9wdXNfaW50MzIqKTsKKyAgICAgICAgICBpZiAoIXZhbHVlKQorICAgICAgICAgIHsKKyAg
ICAgICAgICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAgICAgfQorICAgICAgICAgICp2YWx1ZSA9
IHN0LT5kaXNhYmxlX2ludjsKICAgICAgIH0KICAgICAgIGJyZWFrOwogICAgICAgY2FzZSBPUFVT
X1JFU0VUX1NUQVRFOgpAQCAtMjM2OCw2ICsyNDg4LDEzIEBAIGludCBvcHVzX2N1c3RvbV9lbmNv
ZGVyX2N0bChDRUxURW5jb2RlciAqIE9QVVNfUkVTVFJJQ1Qgc3QsIGludCByZXF1ZXN0LCAuLi4p
CiAgICAgICAgICAgICBPUFVTX0NPUFkoJnN0LT5hbmFseXNpcywgaW5mbywgMSk7CiAgICAgICB9
CiAgICAgICBicmVhazsKKyAgICAgIGNhc2UgQ0VMVF9TRVRfU0lMS19JTkZPX1JFUVVFU1Q6Cisg
ICAgICB7CisgICAgICAgICBTSUxLSW5mbyAqaW5mbyA9IHZhX2FyZyhhcCwgU0lMS0luZm8gKik7
CisgICAgICAgICBpZiAoaW5mbykKKyAgICAgICAgICAgIE9QVVNfQ09QWSgmc3QtPnNpbGtfaW5m
bywgaW5mbywgMSk7CisgICAgICB9CisgICAgICBicmVhazsKICAgICAgIGNhc2UgQ0VMVF9HRVRf
TU9ERV9SRVFVRVNUOgogICAgICAgewogICAgICAgICAgY29uc3QgQ0VMVE1vZGUgKiogdmFsdWUg
PSB2YV9hcmcoYXAsIGNvbnN0IENFTFRNb2RlKiopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfbHBj
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvY2VsdF9scGMuYwppbmRleCBiNDEwYTIxYzVmNmJmMDk1ZjJmMTZjNzM1MGE5YjQ3
MTE0MWZlZDg5Li41N2JjNWYzZGQzZmQ4ODYxNjJmZTRjM2E3ZmRiODcxOTdmYzUzZWJkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvY2VsdF9scGMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvY2VsdF9scGMuYwpAQCAtODksNTggKzg5
LDQwIEBAIGludCAgICAgICAgICBwCiAKIAogdm9pZCBjZWx0X2Zpcl9jKAotICAgICAgICAgY29u
c3Qgb3B1c192YWwxNiAqX3gsCisgICAgICAgICBjb25zdCBvcHVzX3ZhbDE2ICp4LAogICAgICAg
ICAgY29uc3Qgb3B1c192YWwxNiAqbnVtLAotICAgICAgICAgb3B1c192YWwxNiAqX3ksCisgICAg
ICAgICBvcHVzX3ZhbDE2ICp5LAogICAgICAgICAgaW50IE4sCiAgICAgICAgICBpbnQgb3JkLAot
ICAgICAgICAgb3B1c192YWwxNiAqbWVtLAogICAgICAgICAgaW50IGFyY2gpCiB7CiAgICBpbnQg
aSxqOwogICAgVkFSREVDTChvcHVzX3ZhbDE2LCBybnVtKTsKLSAgIFZBUkRFQ0wob3B1c192YWwx
NiwgeCk7CiAgICBTQVZFX1NUQUNLOwogCiAgICBBTExPQyhybnVtLCBvcmQsIG9wdXNfdmFsMTYp
OwotICAgQUxMT0MoeCwgTitvcmQsIG9wdXNfdmFsMTYpOwogICAgZm9yKGk9MDtpPG9yZDtpKysp
CiAgICAgICBybnVtW2ldID0gbnVtW29yZC1pLTFdOwotICAgZm9yKGk9MDtpPG9yZDtpKyspCi0g
ICAgICB4W2ldID0gbWVtW29yZC1pLTFdOwotICAgZm9yIChpPTA7aTxOO2krKykKLSAgICAgIHhb
aStvcmRdPV94W2ldOwotICAgZm9yKGk9MDtpPG9yZDtpKyspCi0gICAgICBtZW1baV0gPSBfeFtO
LWktMV07Ci0jaWZkZWYgU01BTExfRk9PVFBSSU5UCi0gICAodm9pZClhcmNoOwotICAgZm9yIChp
PTA7aTxOO2krKykKLSAgIHsKLSAgICAgIG9wdXNfdmFsMzIgc3VtID0gU0hMMzIoRVhURU5EMzIo
X3hbaV0pLCBTSUdfU0hJRlQpOwotICAgICAgZm9yIChqPTA7ajxvcmQ7aisrKQotICAgICAgewot
ICAgICAgICAgc3VtID0gTUFDMTZfMTYoc3VtLHJudW1bal0seFtpK2pdKTsKLSAgICAgIH0KLSAg
ICAgIF95W2ldID0gU0FUVVJBVEUxNihQU0hSMzIoc3VtLCBTSUdfU0hJRlQpKTsKLSAgIH0KLSNl
bHNlCiAgICBmb3IgKGk9MDtpPE4tMztpKz00KQogICAgewotICAgICAgb3B1c192YWwzMiBzdW1b
NF09ezAsMCwwLDB9OwotICAgICAgeGNvcnJfa2VybmVsKHJudW0sIHgraSwgc3VtLCBvcmQsIGFy
Y2gpOwotICAgICAgX3lbaSAgXSA9IFNBVFVSQVRFMTYoQUREMzIoRVhURU5EMzIoX3hbaSAgXSks
IFBTSFIzMihzdW1bMF0sIFNJR19TSElGVCkpKTsKLSAgICAgIF95W2krMV0gPSBTQVRVUkFURTE2
KEFERDMyKEVYVEVORDMyKF94W2krMV0pLCBQU0hSMzIoc3VtWzFdLCBTSUdfU0hJRlQpKSk7Ci0g
ICAgICBfeVtpKzJdID0gU0FUVVJBVEUxNihBREQzMihFWFRFTkQzMihfeFtpKzJdKSwgUFNIUjMy
KHN1bVsyXSwgU0lHX1NISUZUKSkpOwotICAgICAgX3lbaSszXSA9IFNBVFVSQVRFMTYoQUREMzIo
RVhURU5EMzIoX3hbaSszXSksIFBTSFIzMihzdW1bM10sIFNJR19TSElGVCkpKTsKKyAgICAgIG9w
dXNfdmFsMzIgc3VtWzRdOworICAgICAgc3VtWzBdID0gU0hMMzIoRVhURU5EMzIoeFtpICBdKSwg
U0lHX1NISUZUKTsKKyAgICAgIHN1bVsxXSA9IFNITDMyKEVYVEVORDMyKHhbaSsxXSksIFNJR19T
SElGVCksCisgICAgICBzdW1bMl0gPSBTSEwzMihFWFRFTkQzMih4W2krMl0pLCBTSUdfU0hJRlQp
OworICAgICAgc3VtWzNdID0gU0hMMzIoRVhURU5EMzIoeFtpKzNdKSwgU0lHX1NISUZUKTsKKyAg
ICAgIHhjb3JyX2tlcm5lbChybnVtLCB4K2ktb3JkLCBzdW0sIG9yZCwgYXJjaCk7CisgICAgICB5
W2kgIF0gPSBST1VORDE2KHN1bVswXSwgU0lHX1NISUZUKTsKKyAgICAgIHlbaSsxXSA9IFJPVU5E
MTYoc3VtWzFdLCBTSUdfU0hJRlQpOworICAgICAgeVtpKzJdID0gUk9VTkQxNihzdW1bMl0sIFNJ
R19TSElGVCk7CisgICAgICB5W2krM10gPSBST1VORDE2KHN1bVszXSwgU0lHX1NISUZUKTsKICAg
IH0KICAgIGZvciAoO2k8TjtpKyspCiAgICB7Ci0gICAgICBvcHVzX3ZhbDMyIHN1bSA9IDA7Cisg
ICAgICBvcHVzX3ZhbDMyIHN1bSA9IFNITDMyKEVYVEVORDMyKHhbaV0pLCBTSUdfU0hJRlQpOwog
ICAgICAgZm9yIChqPTA7ajxvcmQ7aisrKQotICAgICAgICAgc3VtID0gTUFDMTZfMTYoc3VtLHJu
dW1bal0seFtpK2pdKTsKLSAgICAgIF95W2ldID0gU0FUVVJBVEUxNihBREQzMihFWFRFTkQzMihf
eFtpXSksIFBTSFIzMihzdW0sIFNJR19TSElGVCkpKTsKKyAgICAgICAgIHN1bSA9IE1BQzE2XzE2
KHN1bSxybnVtW2pdLHhbaStqLW9yZF0pOworICAgICAgeVtpXSA9IFJPVU5EMTYoc3VtLCBTSUdf
U0hJRlQpOwogICAgfQotI2VuZGlmCiAgICBSRVNUT1JFX1NUQUNLOwogfQogCkBAIC0xNjYsNyAr
MTQ4LDcgQEAgdm9pZCBjZWx0X2lpcihjb25zdCBvcHVzX3ZhbDMyICpfeCwKICAgICAgIHsKICAg
ICAgICAgIG1lbVtqXT1tZW1bai0xXTsKICAgICAgIH0KLSAgICAgIG1lbVswXSA9IFJPVU5EMTYo
c3VtLFNJR19TSElGVCk7CisgICAgICBtZW1bMF0gPSBTUk9VTkQxNihzdW0sIFNJR19TSElGVCk7
CiAgICAgICBfeVtpXSA9IHN1bTsKICAgIH0KICNlbHNlCkBAIC0xOTUsMjAgKzE3NywyMCBAQCB2
b2lkIGNlbHRfaWlyKGNvbnN0IG9wdXNfdmFsMzIgKl94LAogICAgICAgeGNvcnJfa2VybmVsKHJk
ZW4sIHkraSwgc3VtLCBvcmQsIGFyY2gpOwogCiAgICAgICAvKiBQYXRjaCB1cCB0aGUgcmVzdWx0
IHRvIGNvbXBlbnNhdGUgZm9yIHRoZSBmYWN0IHRoYXQgdGhpcyBpcyBhbiBJSVIgKi8KLSAgICAg
IHlbaStvcmQgIF0gPSAtUk9VTkQxNihzdW1bMF0sU0lHX1NISUZUKTsKKyAgICAgIHlbaStvcmQg
IF0gPSAtU1JPVU5EMTYoc3VtWzBdLFNJR19TSElGVCk7CiAgICAgICBfeVtpICBdID0gc3VtWzBd
OwogICAgICAgc3VtWzFdID0gTUFDMTZfMTYoc3VtWzFdLCB5W2krb3JkICBdLCBkZW5bMF0pOwot
ICAgICAgeVtpK29yZCsxXSA9IC1ST1VORDE2KHN1bVsxXSxTSUdfU0hJRlQpOworICAgICAgeVtp
K29yZCsxXSA9IC1TUk9VTkQxNihzdW1bMV0sU0lHX1NISUZUKTsKICAgICAgIF95W2krMV0gPSBz
dW1bMV07CiAgICAgICBzdW1bMl0gPSBNQUMxNl8xNihzdW1bMl0sIHlbaStvcmQrMV0sIGRlblsw
XSk7CiAgICAgICBzdW1bMl0gPSBNQUMxNl8xNihzdW1bMl0sIHlbaStvcmQgIF0sIGRlblsxXSk7
Ci0gICAgICB5W2krb3JkKzJdID0gLVJPVU5EMTYoc3VtWzJdLFNJR19TSElGVCk7CisgICAgICB5
W2krb3JkKzJdID0gLVNST1VORDE2KHN1bVsyXSxTSUdfU0hJRlQpOwogICAgICAgX3lbaSsyXSA9
IHN1bVsyXTsKIAogICAgICAgc3VtWzNdID0gTUFDMTZfMTYoc3VtWzNdLCB5W2krb3JkKzJdLCBk
ZW5bMF0pOwogICAgICAgc3VtWzNdID0gTUFDMTZfMTYoc3VtWzNdLCB5W2krb3JkKzFdLCBkZW5b
MV0pOwogICAgICAgc3VtWzNdID0gTUFDMTZfMTYoc3VtWzNdLCB5W2krb3JkICBdLCBkZW5bMl0p
OwotICAgICAgeVtpK29yZCszXSA9IC1ST1VORDE2KHN1bVszXSxTSUdfU0hJRlQpOworICAgICAg
eVtpK29yZCszXSA9IC1TUk9VTkQxNihzdW1bM10sU0lHX1NISUZUKTsKICAgICAgIF95W2krM10g
PSBzdW1bM107CiAgICB9CiAgICBmb3IgKDtpPE47aSsrKQpAQCAtMjE2LDcgKzE5OCw3IEBAIHZv
aWQgY2VsdF9paXIoY29uc3Qgb3B1c192YWwzMiAqX3gsCiAgICAgICBvcHVzX3ZhbDMyIHN1bSA9
IF94W2ldOwogICAgICAgZm9yIChqPTA7ajxvcmQ7aisrKQogICAgICAgICAgc3VtIC09IE1VTFQx
Nl8xNihyZGVuW2pdLHlbaStqXSk7Ci0gICAgICB5W2krb3JkXSA9IFJPVU5EMTYoc3VtLFNJR19T
SElGVCk7CisgICAgICB5W2krb3JkXSA9IFNST1VORDE2KHN1bSxTSUdfU0hJRlQpOwogICAgICAg
X3lbaV0gPSBzdW07CiAgICB9CiAgICBmb3IoaT0wO2k8b3JkO2krKykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2Vs
dC9jZWx0X2xwYy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfbHBjLmgKaW5kZXggMzIzNDU5ZWIxYTgzMTU2NjY0Nzg0
NzQyZGRjYTc4ZTFjNDRlNmRjMC4uYTRjNWZkNmVhNWRjYTMxMmZhZGI5YzM2MWRiMmFiZDVlMWJl
N2Y2OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfbHBjLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2NlbHRfbHBjLmgKQEAg
LTQ1LDEyICs0NSwxMSBAQCB2b2lkIGNlbHRfZmlyX2MoCiAgICAgICAgICBvcHVzX3ZhbDE2ICp5
LAogICAgICAgICAgaW50IE4sCiAgICAgICAgICBpbnQgb3JkLAotICAgICAgICAgb3B1c192YWwx
NiAqbWVtLAogICAgICAgICAgaW50IGFyY2gpOwogCiAjaWYgIWRlZmluZWQoT1ZFUlJJREVfQ0VM
VF9GSVIpCi0jZGVmaW5lIGNlbHRfZmlyKHgsIG51bSwgeSwgTiwgb3JkLCBtZW0sIGFyY2gpIFwK
LSAgICAoY2VsdF9maXJfYyh4LCBudW0sIHksIE4sIG9yZCwgbWVtLCBhcmNoKSkKKyNkZWZpbmUg
Y2VsdF9maXIoeCwgbnVtLCB5LCBOLCBvcmQsIGFyY2gpIFwKKyAgICAoY2VsdF9maXJfYyh4LCBu
dW0sIHksIE4sIG9yZCwgYXJjaCkpCiAjZW5kaWYKIAogdm9pZCBjZWx0X2lpcihjb25zdCBvcHVz
X3ZhbDMyICp4LApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2R1bXBfbW9kZXMvZHVtcF9tb2Rlcy5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L2R1bXBfbW9kZXMvZHVtcF9tb2Rlcy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkxMDVhNTM0NGUzYmYzNGFlZjlj
YWMyNDdjMTA2MmY2OWJmNDQ3MWUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rlcy9k
dW1wX21vZGVzLmMKQEAgLTAsMCArMSwzNTMgQEAKKy8qIENvcHlyaWdodCAoYykgMjAwOCBDU0lS
TworICAgQ29weXJpZ2h0IChjKSAyMDA4LTIwMDkgWGlwaC5PcmcgRm91bmRhdGlvbgorICAgV3Jp
dHRlbiBieSBKZWFuLU1hcmMgVmFsaW4gKi8KKy8qCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICAgYXJlIG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElT
JycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UCisgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSCisgICBPUiBDT05UUklC
VVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwKKyAgIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAgIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICAgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgorICAg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcKKyAgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaWZkZWYgSEFWRV9DT05G
SUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2VuZGlmCisKKyNpbmNsdWRlIDxzdGRsaWIuaD4K
KyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgIm1vZGVzLmgiCisjaW5jbHVkZSAiY2VsdC5o
IgorI2luY2x1ZGUgInJhdGUuaCIKKyNpbmNsdWRlICJkdW1wX21vZGVzX2FyY2guaCIKKworI2Rl
ZmluZSBJTlQxNiAiJWQiCisjZGVmaW5lIElOVDMyICIlZCIKKyNkZWZpbmUgRkxPQVQgIiUjMC44
Z2YiCisKKyNpZmRlZiBGSVhFRF9QT0lOVAorI2RlZmluZSBXT1JEMTYgSU5UMTYKKyNkZWZpbmUg
V09SRDMyIElOVDMyCisjZWxzZQorI2RlZmluZSBXT1JEMTYgRkxPQVQKKyNkZWZpbmUgV09SRDMy
IEZMT0FUCisjZW5kaWYKKwordm9pZCBkdW1wX21vZGVzKEZJTEUgKmZpbGUsIENFTFRNb2RlICoq
bW9kZXMsIGludCBuYl9tb2RlcykKK3sKKyAgIGludCBpLCBqLCBrOworICAgaW50IG1kY3RfdHdp
ZGRsZXNfc2l6ZTsKKyAgIGZwcmludGYoZmlsZSwgIi8qIFRoZSBjb250ZW50cyBvZiB0aGlzIGZp
bGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IGR1bXBfbW9kZXMuY1xuIik7CisgICBm
cHJpbnRmKGZpbGUsICIgICB3aXRoIGFyZ3VtZW50czoiKTsKKyAgIGZvciAoaT0wO2k8bmJfbW9k
ZXM7aSsrKQorICAgeworICAgICAgQ0VMVE1vZGUgKm1vZGUgPSBtb2Rlc1tpXTsKKyAgICAgIGZw
cmludGYoZmlsZSwgIiAlZCAlZCIsbW9kZS0+RnMsbW9kZS0+c2hvcnRNZGN0U2l6ZSptb2RlLT5u
YlNob3J0TWRjdHMpOworICAgfQorICAgZnByaW50ZihmaWxlLCAiXG4gICBJdCBjb250YWlucyBz
dGF0aWMgZGVmaW5pdGlvbnMgZm9yIHNvbWUgcHJlLWRlZmluZWQgbW9kZXMuICovXG4iKTsKKyAg
IGZwcmludGYoZmlsZSwgIiNpbmNsdWRlIFwibW9kZXMuaFwiXG4iKTsKKyAgIGZwcmludGYoZmls
ZSwgIiNpbmNsdWRlIFwicmF0ZS5oXCJcbiIpOworICAgZnByaW50ZihmaWxlLCAiXG4jaWZkZWYg
SEFWRV9BUk1fTkUxMFxuIik7CisgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIE9WRVJSSURFX0ZG
VCAxXG4iKTsKKyAgIGZwcmludGYoZmlsZSwgIiNpbmNsdWRlIFwiJXNcIlxuIiwgQVJNX05FMTBf
QVJDSF9GSUxFX05BTUUpOworICAgZnByaW50ZihmaWxlLCAiI2VuZGlmXG4iKTsKKworICAgZnBy
aW50ZihmaWxlLCAiXG4iKTsKKworICAgZm9yIChpPTA7aTxuYl9tb2RlcztpKyspCisgICB7Cisg
ICAgICBDRUxUTW9kZSAqbW9kZSA9IG1vZGVzW2ldOworICAgICAgaW50IG1kY3RTaXplOworICAg
ICAgaW50IHN0YW5kYXJkLCBmcmFtZXJhdGU7CisKKyAgICAgIG1kY3RTaXplID0gbW9kZS0+c2hv
cnRNZGN0U2l6ZSptb2RlLT5uYlNob3J0TWRjdHM7CisgICAgICBzdGFuZGFyZCA9IChtb2RlLT5G
cyA9PSA0MDAqKG9wdXNfaW50MzIpbW9kZS0+c2hvcnRNZGN0U2l6ZSk7CisgICAgICBmcmFtZXJh
dGUgPSBtb2RlLT5Gcy9tb2RlLT5zaG9ydE1kY3RTaXplOworCisgICAgICBpZiAoIXN0YW5kYXJk
KQorICAgICAgeworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2lmbmRlZiBERUZfRUJBTkRTJWRf
JWRcbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjZGVm
aW5lIERFRl9FQkFORFMlZF8lZFxuIiwgbW9kZS0+RnMsIG1kY3RTaXplKTsKKyAgICAgICAgIGZw
cmludGYgKGZpbGUsICJzdGF0aWMgY29uc3Qgb3B1c19pbnQxNiBlQmFuZHMlZF8lZFslZF0gPSB7
XG4iLCBtb2RlLT5GcywgbWRjdFNpemUsIG1vZGUtPm5iRUJhbmRzKzIpOworICAgICAgICAgZm9y
IChqPTA7ajxtb2RlLT5uYkVCYW5kcysyO2orKykKKyAgICAgICAgICAgIGZwcmludGYgKGZpbGUs
ICIlZCwgIiwgbW9kZS0+ZUJhbmRzW2pdKTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xu
Iik7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjZW5kaWZcbiIpOworICAgICAgICAgZnByaW50
ZihmaWxlLCAiXG4iKTsKKyAgICAgIH0KKworICAgICAgZnByaW50ZihmaWxlLCAiI2lmbmRlZiBE
RUZfV0lORE9XJWRcbiIsIG1vZGUtPm92ZXJsYXApOworICAgICAgZnByaW50ZihmaWxlLCAiI2Rl
ZmluZSBERUZfV0lORE9XJWRcbiIsIG1vZGUtPm92ZXJsYXApOworICAgICAgZnByaW50ZiAoZmls
ZSwgInN0YXRpYyBjb25zdCBvcHVzX3ZhbDE2IHdpbmRvdyVkWyVkXSA9IHtcbiIsIG1vZGUtPm92
ZXJsYXAsIG1vZGUtPm92ZXJsYXApOworICAgICAgZm9yIChqPTA7ajxtb2RlLT5vdmVybGFwO2or
KykKKyAgICAgICAgIGZwcmludGYgKGZpbGUsIFdPUkQxNiAiLCVjIiwgbW9kZS0+d2luZG93W2pd
LChqKzYpJTU9PTA/J1xuJzonICcpOworICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAg
ICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICJcbiIp
OworCisgICAgICBpZiAoIXN0YW5kYXJkKQorICAgICAgeworICAgICAgICAgZnByaW50ZihmaWxl
LCAiI2lmbmRlZiBERUZfQUxMT0NfVkVDVE9SUyVkXyVkXG4iLCBtb2RlLT5GcywgbWRjdFNpemUp
OworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2RlZmluZSBERUZfQUxMT0NfVkVDVE9SUyVkXyVk
XG4iLCBtb2RlLT5GcywgbWRjdFNpemUpOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgInN0YXRp
YyBjb25zdCB1bnNpZ25lZCBjaGFyIGFsbG9jVmVjdG9ycyVkXyVkWyVkXSA9IHtcbiIsIG1vZGUt
PkZzLCBtZGN0U2l6ZSwgbW9kZS0+bmJFQmFuZHMqbW9kZS0+bmJBbGxvY1ZlY3RvcnMpOworICAg
ICAgICAgZm9yIChqPTA7ajxtb2RlLT5uYkFsbG9jVmVjdG9ycztqKyspCisgICAgICAgICB7Cisg
ICAgICAgICAgICBmb3IgKGs9MDtrPG1vZGUtPm5iRUJhbmRzO2srKykKKyAgICAgICAgICAgICAg
IGZwcmludGYgKGZpbGUsICIlMmQsICIsIG1vZGUtPmFsbG9jVmVjdG9yc1tqKm1vZGUtPm5iRUJh
bmRzK2tdKTsKKyAgICAgICAgICAgIGZwcmludGYgKGZpbGUsICJcbiIpOworICAgICAgICAgfQor
ICAgICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgICAgICAgIGZwcmludGYoZmlsZSwg
IiNlbmRpZlxuIik7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworICAgICAgfQorCisg
ICAgICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIERFRl9MT0dOJWRcbiIsIGZyYW1lcmF0ZSk7Cisg
ICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIERFRl9MT0dOJWRcbiIsIGZyYW1lcmF0ZSk7Cisg
ICAgICBmcHJpbnRmIChmaWxlLCAic3RhdGljIGNvbnN0IG9wdXNfaW50MTYgbG9nTiVkWyVkXSA9
IHtcbiIsIGZyYW1lcmF0ZSwgbW9kZS0+bmJFQmFuZHMpOworICAgICAgZm9yIChqPTA7ajxtb2Rl
LT5uYkVCYW5kcztqKyspCisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiJWQsICIsIG1vZGUtPmxv
Z05bal0pOworICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgICAgIGZwcmludGYoZmls
ZSwgIiNlbmRpZlxuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworCisgICAgICAvKiBQ
dWxzZSBjYWNoZSAqLworICAgICAgZnByaW50ZihmaWxlLCAiI2lmbmRlZiBERUZfUFVMU0VfQ0FD
SEUlZFxuIiwgbW9kZS0+RnMvbWRjdFNpemUpOworICAgICAgZnByaW50ZihmaWxlLCAiI2RlZmlu
ZSBERUZfUFVMU0VfQ0FDSEUlZFxuIiwgbW9kZS0+RnMvbWRjdFNpemUpOworICAgICAgZnByaW50
ZiAoZmlsZSwgInN0YXRpYyBjb25zdCBvcHVzX2ludDE2IGNhY2hlX2luZGV4JWRbJWRdID0ge1xu
IiwgbW9kZS0+RnMvbWRjdFNpemUsIChtb2RlLT5tYXhMTSsyKSptb2RlLT5uYkVCYW5kcyk7Cisg
ICAgICBmb3IgKGo9MDtqPG1vZGUtPm5iRUJhbmRzKihtb2RlLT5tYXhMTSsyKTtqKyspCisgICAg
ICAgICBmcHJpbnRmIChmaWxlLCAiJWQsJWMiLCBtb2RlLT5jYWNoZS5pbmRleFtqXSwoaisxNikl
MTU9PTA/J1xuJzonICcpOworICAgICAgZnByaW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgICAgIGZw
cmludGYgKGZpbGUsICJzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBjYWNoZV9iaXRzJWRbJWRd
ID0ge1xuIiwgbW9kZS0+RnMvbWRjdFNpemUsIG1vZGUtPmNhY2hlLnNpemUpOworICAgICAgZm9y
IChqPTA7ajxtb2RlLT5jYWNoZS5zaXplO2orKykKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICIl
ZCwlYyIsIG1vZGUtPmNhY2hlLmJpdHNbal0sKGorMTYpJTE1PT0wPydcbic6JyAnKTsKKyAgICAg
IGZwcmludGYgKGZpbGUsICJ9O1xuIik7CisgICAgICBmcHJpbnRmIChmaWxlLCAic3RhdGljIGNv
bnN0IHVuc2lnbmVkIGNoYXIgY2FjaGVfY2FwcyVkWyVkXSA9IHtcbiIsIG1vZGUtPkZzL21kY3RT
aXplLCAobW9kZS0+bWF4TE0rMSkqMiptb2RlLT5uYkVCYW5kcyk7CisgICAgICBmb3IgKGo9MDtq
PChtb2RlLT5tYXhMTSsxKSoyKm1vZGUtPm5iRUJhbmRzO2orKykKKyAgICAgICAgIGZwcmludGYg
KGZpbGUsICIlZCwlYyIsIG1vZGUtPmNhY2hlLmNhcHNbal0sKGorMTYpJTE1PT0wPydcbic6JyAn
KTsKKyAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xuIik7CisKKyAgICAgIGZwcmludGYoZmlsZSwg
IiNlbmRpZlxuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworCisgICAgICAvKiBGRlQg
dHdpZGRsZXMgKi8KKyAgICAgIGZwcmludGYoZmlsZSwgIiNpZm5kZWYgRkZUX1RXSURETEVTJWRf
JWRcbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7CisgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5l
IEZGVF9UV0lERExFUyVkXyVkXG4iLCBtb2RlLT5GcywgbWRjdFNpemUpOworICAgICAgZnByaW50
ZiAoZmlsZSwgInN0YXRpYyBjb25zdCBraXNzX3R3aWRkbGVfY3B4IGZmdF90d2lkZGxlcyVkXyVk
WyVkXSA9IHtcbiIsCisgICAgICAgICAgICBtb2RlLT5GcywgbWRjdFNpemUsIG1vZGUtPm1kY3Qu
a2ZmdFswXS0+bmZmdCk7CisgICAgICBmb3IgKGo9MDtqPG1vZGUtPm1kY3Qua2ZmdFswXS0+bmZm
dDtqKyspCisgICAgICAgICBmcHJpbnRmIChmaWxlLCAieyIgV09SRDE2ICIsICIgV09SRDE2ICJ9
LCVjIiwgbW9kZS0+bWRjdC5rZmZ0WzBdLT50d2lkZGxlc1tqXS5yLCBtb2RlLT5tZGN0LmtmZnRb
MF0tPnR3aWRkbGVzW2pdLmksKGorMyklMj09MD8nXG4nOicgJyk7CisgICAgICBmcHJpbnRmIChm
aWxlLCAifTtcbiIpOworCisjaWZkZWYgT1ZFUlJJREVfRkZUCisgICAgICBkdW1wX21vZGVfYXJj
aChtb2RlKTsKKyNlbmRpZgorICAgICAgLyogRkZUIEJpdHJldiB0YWJsZXMgKi8KKyAgICAgIGZv
ciAoaz0wO2s8PW1vZGUtPm1kY3QubWF4c2hpZnQ7aysrKQorICAgICAgeworICAgICAgICAgZnBy
aW50ZihmaWxlLCAiI2lmbmRlZiBGRlRfQklUUkVWJWRcbiIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+
bmZmdCk7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjZGVmaW5lIEZGVF9CSVRSRVYlZFxuIiwg
bW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsICJzdGF0
aWMgY29uc3Qgb3B1c19pbnQxNiBmZnRfYml0cmV2JWRbJWRdID0ge1xuIiwKKyAgICAgICAgICAg
ICAgIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsK
KyAgICAgICAgIGZvciAoaj0wO2o8bW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0O2orKykKKyAgICAg
ICAgICAgIGZwcmludGYgKGZpbGUsICIlZCwlYyIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+Yml0cmV2
W2pdLChqKzE2KSUxNT09MD8nXG4nOicgJyk7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAifTtc
biIpOworCisgICAgICAgICBmcHJpbnRmKGZpbGUsICIjZW5kaWZcbiIpOworICAgICAgICAgZnBy
aW50ZihmaWxlLCAiXG4iKTsKKyAgICAgIH0KKworICAgICAgLyogRkZUIFN0YXRlcyAqLworICAg
ICAgZm9yIChrPTA7azw9bW9kZS0+bWRjdC5tYXhzaGlmdDtrKyspCisgICAgICB7CisgICAgICAg
ICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIEZGVF9TVEFURSVkXyVkXyVkXG4iLCBtb2RlLT5Gcywg
bWRjdFNpemUsIGspOworICAgICAgICAgZnByaW50ZihmaWxlLCAiI2RlZmluZSBGRlRfU1RBVEUl
ZF8lZF8lZFxuIiwgbW9kZS0+RnMsIG1kY3RTaXplLCBrKTsKKyAgICAgICAgIGZwcmludGYgKGZp
bGUsICJzdGF0aWMgY29uc3Qga2lzc19mZnRfc3RhdGUgZmZ0X3N0YXRlJWRfJWRfJWQgPSB7XG4i
LAorICAgICAgICAgICAgICAgbW9kZS0+RnMsIG1kY3RTaXplLCBrKTsKKyAgICAgICAgIGZwcmlu
dGYgKGZpbGUsICIlZCwgICAgLyogbmZmdCAqL1xuIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0
KTsKKyAgICAgICAgIGZwcmludGYgKGZpbGUsIFdPUkQxNiAiLCAgICAvKiBzY2FsZSAqL1xuIiwg
bW9kZS0+bWRjdC5rZmZ0W2tdLT5zY2FsZSk7CisjaWZkZWYgRklYRURfUE9JTlQKKyAgICAgICAg
IGZwcmludGYgKGZpbGUsICIlZCwgICAgLyogc2NhbGVfc2hpZnQgKi9cbiIsIG1vZGUtPm1kY3Qu
a2ZmdFtrXS0+c2NhbGVfc2hpZnQpOworI2VuZGlmCisgICAgICAgICBmcHJpbnRmIChmaWxlLCAi
JWQsICAgIC8qIHNoaWZ0ICovXG4iLCBtb2RlLT5tZGN0LmtmZnRba10tPnNoaWZ0KTsKKyAgICAg
ICAgIGZwcmludGYgKGZpbGUsICJ7Iik7CisgICAgICAgICBmb3IgKGo9MDtqPDIqTUFYRkFDVE9S
UztqKyspCisgICAgICAgICAgICBmcHJpbnRmIChmaWxlLCAiJWQsICIsIG1vZGUtPm1kY3Qua2Zm
dFtrXS0+ZmFjdG9yc1tqXSk7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAifSwgICAgLyogZmFj
dG9ycyAqL1xuIik7CisgICAgICAgICBmcHJpbnRmIChmaWxlLCAiZmZ0X2JpdHJldiVkLCAgICAv
KiBiaXRyZXYgKi9cbiIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7CisgICAgICAgICBmcHJp
bnRmIChmaWxlLCAiZmZ0X3R3aWRkbGVzJWRfJWQsICAgIC8qIGJpdHJldiAqL1xuIiwgbW9kZS0+
RnMsIG1kY3RTaXplKTsKKworICAgICAgICAgZnByaW50ZiAoZmlsZSwgIiNpZmRlZiBPVkVSUklE
RV9GRlRcbiIpOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgIihhcmNoX2ZmdF9zdGF0ZSAqKSZj
ZmdfYXJjaF8lZCxcbiIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7CisgICAgICAgICBmcHJp
bnRmIChmaWxlLCAiI2Vsc2VcbiIpOworICAgICAgICAgZnByaW50ZiAoZmlsZSwgIk5VTEwsXG4i
KTsKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7CisKKyAgICAgICAgIGZwcmlu
dGYgKGZpbGUsICJ9O1xuIik7CisKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiNlbmRpZlxuIik7
CisgICAgICAgICBmcHJpbnRmKGZpbGUsICJcbiIpOworICAgICAgfQorCisgICAgICBmcHJpbnRm
KGZpbGUsICIjZW5kaWZcbiIpOworICAgICAgZnByaW50ZihmaWxlLCAiXG4iKTsKKworICAgICAg
LyogTURDVCB0d2lkZGxlcyAqLworICAgICAgbWRjdF90d2lkZGxlc19zaXplID0gbW9kZS0+bWRj
dC5uLShtb2RlLT5tZGN0Lm4vMj4+bW9kZS0+bWRjdC5tYXhzaGlmdCk7CisgICAgICBmcHJpbnRm
KGZpbGUsICIjaWZuZGVmIE1EQ1RfVFdJRERMRVMlZFxuIiwgbWRjdFNpemUpOworICAgICAgZnBy
aW50ZihmaWxlLCAiI2RlZmluZSBNRENUX1RXSURETEVTJWRcbiIsIG1kY3RTaXplKTsKKyAgICAg
IGZwcmludGYgKGZpbGUsICJzdGF0aWMgY29uc3Qgb3B1c192YWwxNiBtZGN0X3R3aWRkbGVzJWRb
JWRdID0ge1xuIiwKKyAgICAgICAgICAgIG1kY3RTaXplLCBtZGN0X3R3aWRkbGVzX3NpemUpOwor
ICAgICAgZm9yIChqPTA7ajxtZGN0X3R3aWRkbGVzX3NpemU7aisrKQorICAgICAgICAgZnByaW50
ZiAoZmlsZSwgV09SRDE2ICIsJWMiLCBtb2RlLT5tZGN0LnRyaWdbal0sKGorNiklNT09MD8nXG4n
OicgJyk7CisgICAgICBmcHJpbnRmIChmaWxlLCAifTtcbiIpOworCisgICAgICBmcHJpbnRmKGZp
bGUsICIjZW5kaWZcbiIpOworICAgICAgZnByaW50ZihmaWxlLCAiXG4iKTsKKworCisgICAgICAv
KiBQcmludCB0aGUgYWN0dWFsIG1vZGUgZGF0YSAqLworICAgICAgZnByaW50ZihmaWxlLCAic3Rh
dGljIGNvbnN0IENFTFRNb2RlIG1vZGUlZF8lZF8lZCA9IHtcbiIsIG1vZGUtPkZzLCBtZGN0U2l6
ZSwgbW9kZS0+b3ZlcmxhcCk7CisgICAgICBmcHJpbnRmKGZpbGUsIElOVDMyICIsICAgIC8qIEZz
ICovXG4iLCBtb2RlLT5Gcyk7CisgICAgICBmcHJpbnRmKGZpbGUsICIlZCwgICAgLyogb3Zlcmxh
cCAqL1xuIiwgbW9kZS0+b3ZlcmxhcCk7CisgICAgICBmcHJpbnRmKGZpbGUsICIlZCwgICAgLyog
bmJFQmFuZHMgKi9cbiIsIG1vZGUtPm5iRUJhbmRzKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIiVk
LCAgICAvKiBlZmZFQmFuZHMgKi9cbiIsIG1vZGUtPmVmZkVCYW5kcyk7CisgICAgICBmcHJpbnRm
KGZpbGUsICJ7Iik7CisgICAgICBmb3IgKGo9MDtqPDQ7aisrKQorICAgICAgICAgZnByaW50Zihm
aWxlLCBXT1JEMTYgIiwgIiwgbW9kZS0+cHJlZW1waFtqXSk7CisgICAgICBmcHJpbnRmKGZpbGUs
ICJ9LCAgICAvKiBwcmVlbXBoICovXG4iKTsKKyAgICAgIGlmIChzdGFuZGFyZCkKKyAgICAgICAg
IGZwcmludGYoZmlsZSwgImViYW5kNW1zLCAgICAvKiBlQmFuZHMgKi9cbiIpOworICAgICAgZWxz
ZQorICAgICAgICAgZnByaW50ZihmaWxlLCAiZUJhbmRzJWRfJWQsICAgIC8qIGVCYW5kcyAqL1xu
IiwgbW9kZS0+RnMsIG1kY3RTaXplKTsKKworICAgICAgZnByaW50ZihmaWxlLCAiJWQsICAgIC8q
IG1heExNICovXG4iLCBtb2RlLT5tYXhMTSk7CisgICAgICBmcHJpbnRmKGZpbGUsICIlZCwgICAg
LyogbmJTaG9ydE1kY3RzICovXG4iLCBtb2RlLT5uYlNob3J0TWRjdHMpOworICAgICAgZnByaW50
ZihmaWxlLCAiJWQsICAgIC8qIHNob3J0TWRjdFNpemUgKi9cbiIsIG1vZGUtPnNob3J0TWRjdFNp
emUpOworCisgICAgICBmcHJpbnRmKGZpbGUsICIlZCwgICAgLyogbmJBbGxvY1ZlY3RvcnMgKi9c
biIsIG1vZGUtPm5iQWxsb2NWZWN0b3JzKTsKKyAgICAgIGlmIChzdGFuZGFyZCkKKyAgICAgICAg
IGZwcmludGYoZmlsZSwgImJhbmRfYWxsb2NhdGlvbiwgICAgLyogYWxsb2NWZWN0b3JzICovXG4i
KTsKKyAgICAgIGVsc2UKKyAgICAgICAgIGZwcmludGYoZmlsZSwgImFsbG9jVmVjdG9ycyVkXyVk
LCAgICAvKiBhbGxvY1ZlY3RvcnMgKi9cbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7CisKKyAgICAg
IGZwcmludGYoZmlsZSwgImxvZ04lZCwgICAgLyogbG9nTiAqL1xuIiwgZnJhbWVyYXRlKTsKKyAg
ICAgIGZwcmludGYoZmlsZSwgIndpbmRvdyVkLCAgICAvKiB3aW5kb3cgKi9cbiIsIG1vZGUtPm92
ZXJsYXApOworICAgICAgZnByaW50ZihmaWxlLCAieyVkLCAlZCwgeyIsIG1vZGUtPm1kY3Qubiwg
bW9kZS0+bWRjdC5tYXhzaGlmdCk7CisgICAgICBmb3IgKGs9MDtrPD1tb2RlLT5tZGN0Lm1heHNo
aWZ0O2srKykKKyAgICAgICAgIGZwcmludGYoZmlsZSwgIiZmZnRfc3RhdGUlZF8lZF8lZCwgIiwg
bW9kZS0+RnMsIG1kY3RTaXplLCBrKTsKKyAgICAgIGZwcmludGYgKGZpbGUsICJ9LCBtZGN0X3R3
aWRkbGVzJWR9LCAgICAvKiBtZGN0ICovXG4iLCBtZGN0U2l6ZSk7CisKKyAgICAgIGZwcmludGYo
ZmlsZSwgInslZCwgY2FjaGVfaW5kZXglZCwgY2FjaGVfYml0cyVkLCBjYWNoZV9jYXBzJWR9LCAg
ICAvKiBjYWNoZSAqL1xuIiwKKyAgICAgICAgICAgIG1vZGUtPmNhY2hlLnNpemUsIG1vZGUtPkZz
L21kY3RTaXplLCBtb2RlLT5Gcy9tZGN0U2l6ZSwgbW9kZS0+RnMvbWRjdFNpemUpOworICAgICAg
ZnByaW50ZihmaWxlLCAifTtcbiIpOworICAgfQorICAgZnByaW50ZihmaWxlLCAiXG4iKTsKKyAg
IGZwcmludGYoZmlsZSwgIi8qIExpc3Qgb2YgYWxsIHRoZSBhdmFpbGFibGUgbW9kZXMgKi9cbiIp
OworICAgZnByaW50ZihmaWxlLCAiI2RlZmluZSBUT1RBTF9NT0RFUyAlZFxuIiwgbmJfbW9kZXMp
OworICAgZnByaW50ZihmaWxlLCAic3RhdGljIGNvbnN0IENFTFRNb2RlICogY29uc3Qgc3RhdGlj
X21vZGVfbGlzdFtUT1RBTF9NT0RFU10gPSB7XG4iKTsKKyAgIGZvciAoaT0wO2k8bmJfbW9kZXM7
aSsrKQorICAgeworICAgICAgQ0VMVE1vZGUgKm1vZGUgPSBtb2Rlc1tpXTsKKyAgICAgIGludCBt
ZGN0U2l6ZTsKKyAgICAgIG1kY3RTaXplID0gbW9kZS0+c2hvcnRNZGN0U2l6ZSptb2RlLT5uYlNo
b3J0TWRjdHM7CisgICAgICBmcHJpbnRmKGZpbGUsICImbW9kZSVkXyVkXyVkLFxuIiwgbW9kZS0+
RnMsIG1kY3RTaXplLCBtb2RlLT5vdmVybGFwKTsKKyAgIH0KKyAgIGZwcmludGYoZmlsZSwgIn07
XG4iKTsKK30KKwordm9pZCBkdW1wX2hlYWRlcihGSUxFICpmaWxlLCBDRUxUTW9kZSAqKm1vZGVz
LCBpbnQgbmJfbW9kZXMpCit7CisgICBpbnQgaTsKKyAgIGludCBjaGFubmVscyA9IDA7CisgICBp
bnQgZnJhbWVfc2l6ZSA9IDA7CisgICBpbnQgb3ZlcmxhcCA9IDA7CisgICBmcHJpbnRmIChmaWxl
LCAiLyogVGhpcyBoZWFkZXIgZmlsZSBpcyBnZW5lcmF0ZWQgYXV0b21hdGljYWxseSovXG4iKTsK
KyAgIGZvciAoaT0wO2k8bmJfbW9kZXM7aSsrKQorICAgeworICAgICAgQ0VMVE1vZGUgKm1vZGUg
PSBtb2Rlc1tpXTsKKyAgICAgIGlmIChmcmFtZV9zaXplPT0wKQorICAgICAgICAgZnJhbWVfc2l6
ZSA9IG1vZGUtPnNob3J0TWRjdFNpemUqbW9kZS0+bmJTaG9ydE1kY3RzOworICAgICAgZWxzZSBp
ZiAoZnJhbWVfc2l6ZSAhPSBtb2RlLT5zaG9ydE1kY3RTaXplKm1vZGUtPm5iU2hvcnRNZGN0cykK
KyAgICAgICAgIGZyYW1lX3NpemUgPSAtMTsKKyAgICAgIGlmIChvdmVybGFwPT0wKQorICAgICAg
ICAgb3ZlcmxhcCA9IG1vZGUtPm92ZXJsYXA7CisgICAgICBlbHNlIGlmIChvdmVybGFwICE9IG1v
ZGUtPm92ZXJsYXApCisgICAgICAgICBvdmVybGFwID0gLTE7CisgICB9CisgICBpZiAoY2hhbm5l
bHM+MCkKKyAgIHsKKyAgICAgIGZwcmludGYgKGZpbGUsICIjZGVmaW5lIENIQU5ORUxTKG1vZGUp
ICVkXG4iLCBjaGFubmVscyk7CisgICAgICBpZiAoY2hhbm5lbHM9PTEpCisgICAgICAgICBmcHJp
bnRmIChmaWxlLCAiI2RlZmluZSBESVNBQkxFX1NURVJFT1xuIik7CisgICB9CisgICBpZiAoZnJh
bWVfc2l6ZT4wKQorICAgeworICAgICAgZnByaW50ZiAoZmlsZSwgIiNkZWZpbmUgRlJBTUVTSVpF
KG1vZGUpICVkXG4iLCBmcmFtZV9zaXplKTsKKyAgIH0KKyAgIGlmIChvdmVybGFwPjApCisgICB7
CisgICAgICBmcHJpbnRmIChmaWxlLCAiI2RlZmluZSBPVkVSTEFQKG1vZGUpICVkXG4iLCBvdmVy
bGFwKTsKKyAgIH0KK30KKworI2lmZGVmIEZJWEVEX1BPSU5UCisjZGVmaW5lIEJBU0VOQU1FICJz
dGF0aWNfbW9kZXNfZml4ZWQiCisjZWxzZQorI2RlZmluZSBCQVNFTkFNRSAic3RhdGljX21vZGVz
X2Zsb2F0IgorI2VuZGlmCisKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKK3sKKyAg
IGludCBpLCBuYjsKKyAgIEZJTEUgKmZpbGU7CisgICBDRUxUTW9kZSAqKm07CisgICBpZiAoYXJn
YyUyICE9IDEgfHwgYXJnYzwzKQorICAgeworICAgICAgZnByaW50ZiAoc3RkZXJyLCAiVXNhZ2U6
ICVzIHJhdGUgZnJhbWVfc2l6ZSBbcmF0ZSBmcmFtZV9zaXplXSBbcmF0ZSBmcmFtZV9zaXplXS4u
LlxuIixhcmd2WzBdKTsKKyAgICAgIHJldHVybiAxOworICAgfQorICAgbmIgPSAoYXJnYy0xKS8y
OworICAgbSA9IG1hbGxvYyhuYipzaXplb2YoQ0VMVE1vZGUqKSk7CisgICBmb3IgKGk9MDtpPG5i
O2krKykKKyAgIHsKKyAgICAgIGludCBGcywgZnJhbWU7CisgICAgICBGcyAgICAgID0gYXRvaShh
cmd2WzIqaSsxXSk7CisgICAgICBmcmFtZSAgID0gYXRvaShhcmd2WzIqaSsyXSk7CisgICAgICBt
W2ldID0gb3B1c19jdXN0b21fbW9kZV9jcmVhdGUoRnMsIGZyYW1lLCBOVUxMKTsKKyAgICAgIGlm
IChtW2ldPT1OVUxMKQorICAgICAgeworICAgICAgICAgZnByaW50ZihzdGRlcnIsIkVycm9yIGNy
ZWF0aW5nIG1vZGUgd2l0aCBGcz0lcywgZnJhbWVfc2l6ZT0lc1xuIiwKKyAgICAgICAgICAgICAg
IGFyZ3ZbMippKzFdLGFyZ3ZbMippKzJdKTsKKyAgICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7
CisgICAgICB9CisgICB9CisgICBmaWxlID0gZm9wZW4oQkFTRU5BTUUgIi5oIiwgInciKTsKKyNp
ZmRlZiBPVkVSUklERV9GRlQKKyAgIGR1bXBfbW9kZXNfYXJjaF9pbml0KG0sIG5iKTsKKyNlbmRp
ZgorICAgZHVtcF9tb2RlcyhmaWxlLCBtLCBuYik7CisgICBmY2xvc2UoZmlsZSk7CisjaWZkZWYg
T1ZFUlJJREVfRkZUCisgICBkdW1wX21vZGVzX2FyY2hfZmluYWxpemUoKTsKKyNlbmRpZgorICAg
Zm9yIChpPTA7aTxuYjtpKyspCisgICAgICBvcHVzX2N1c3RvbV9tb2RlX2Rlc3Ryb3kobVtpXSk7
CisgICBmcmVlKG0pOworICAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rl
cy9kdW1wX21vZGVzX2FyY2guaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9kdW1wX21vZGVzL2R1bXBfbW9kZXNfYXJjaC5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmNjMGQ0YmUxZWM3MzA4ZGFjZDg1M2Y2NTIxOTQ2NTgyMGVjNzFjMTQKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rlcy9kdW1wX21vZGVzX2FyY2guaApAQCAtMCwwICsx
LDQ1IEBACisvKiBDb3B5cmlnaHQgKGMpIDIwMTUgWGlwaC5PcmcgRm91bmRhdGlvbgorICAgV3Jp
dHRlbiBieSBWaXN3YW5hdGggUHV0dGFndW50YSAqLworLyoKKyAgIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICAgbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgICBhcmUgbWV0OgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgIC0gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAgIGBg
QVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QKKyAgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyAgIE9SIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgICBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
CisgICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORworICAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpZm5kZWYgRFVN
UF9NT0RFX0FSQ0hfSAorI2RlZmluZSBEVU1QX01PREVfQVJDSF9ICisKK3ZvaWQgZHVtcF9tb2Rl
c19hcmNoX2luaXQoKTsKK3ZvaWQgZHVtcF9tb2RlX2FyY2goQ0VMVE1vZGUgKm1vZGUpOwordm9p
ZCBkdW1wX21vZGVzX2FyY2hfZmluYWxpemUoKTsKKworI2lmICFkZWZpbmVkKEZJWEVEX1BPSU5U
KQorI2RlZmluZSBBUk1fTkUxMF9BUkNIX0ZJTEVfTkFNRSAic3RhdGljX21vZGVzX2Zsb2F0X2Fy
bV9uZTEwLmgiCisjZWxzZQorI2RlZmluZSBBUk1fTkUxMF9BUkNIX0ZJTEVfTkFNRSAic3RhdGlj
X21vZGVzX2ZpeGVkX2FybV9uZTEwLmgiCisjZW5kaWYKKworI2lmIGRlZmluZWQoSEFWRV9BUk1f
TkUxMCkKKyNkZWZpbmUgT1ZFUlJJREVfRkZUICgxKQorI2VuZGlmCisKKyNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L2R1bXBfbW9kZXMvZHVtcF9tb2Rlc19hcm1fbmUxMC5jIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2R1bXBfbW9k
ZXMvZHVtcF9tb2Rlc19hcm1fbmUxMC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyOGU3YjlmZmYzMWY4MWJkNzYx
Njk1YTI0NzkyNmRmMDU2YTQxYWYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZHVtcF9tb2Rlcy9k
dW1wX21vZGVzX2FybV9uZTEwLmMKQEAgLTAsMCArMSwxNTIgQEAKKy8qIENvcHlyaWdodCAoYykg
MjAxNSBYaXBoLk9yZyBGb3VuZGF0aW9uCisgICBXcml0dGVuIGJ5IFZpc3dhbmF0aCBQdXR0YWd1
bnRhICovCisvKgorICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6CisKKyAg
IC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICAgTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
CisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorKi8KKworI2lmIGRlZmluZWQoSEFWRV9DT05GSUdfSCkKKyMgaW5jbHVk
ZSAiY29uZmlnLmgiCisjZW5kaWYKKworI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3Rk
bGliLmg+CisjaW5jbHVkZSAibW9kZXMuaCIKKyNpbmNsdWRlICJkdW1wX21vZGVzX2FyY2guaCIK
KyNpbmNsdWRlIDxORTEwX2RzcC5oPgorCisjaWYgIWRlZmluZWQoRklYRURfUE9JTlQpCisjIGRl
ZmluZSBORTEwX0ZGVF9DRkdfVFlQRV9UIG5lMTBfZmZ0X2NmZ19mbG9hdDMyX3QKKyMgZGVmaW5l
IE5FMTBfRkZUX0NQWF9UWVBFX1RfU1RSICJuZTEwX2ZmdF9jcHhfZmxvYXQzMl90IgorIyBkZWZp
bmUgTkUxMF9GRlRfU1RBVEVfVFlQRV9UX1NUUiAibmUxMF9mZnRfc3RhdGVfZmxvYXQzMl90Igor
I2Vsc2UKKyMgZGVmaW5lIE5FMTBfRkZUX0NGR19UWVBFX1QgbmUxMF9mZnRfY2ZnX2ludDMyX3QK
KyMgZGVmaW5lIE5FMTBfRkZUX0NQWF9UWVBFX1RfU1RSICJuZTEwX2ZmdF9jcHhfaW50MzJfdCIK
KyMgZGVmaW5lIE5FMTBfRkZUX1NUQVRFX1RZUEVfVF9TVFIgIm5lMTBfZmZ0X3N0YXRlX2ludDMy
X3QiCisjZW5kaWYKKworc3RhdGljIEZJTEUgKmZpbGU7CisKK3ZvaWQgZHVtcF9tb2Rlc19hcmNo
X2luaXQoQ0VMVE1vZGUgKiptb2RlcywgaW50IG5iX21vZGVzKQoreworICAgaW50IGk7CisKKyAg
IGZpbGUgPSBmb3BlbihBUk1fTkUxMF9BUkNIX0ZJTEVfTkFNRSwgInciKTsKKyAgIGZwcmludGYo
ZmlsZSwgIi8qIFRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2Vu
ZXJhdGVkIGJ5XG4iKTsKKyAgIGZwcmludGYoZmlsZSwgIiAqIGR1bXBfbW9kZV9hcm1fbmUxMC5j
IHdpdGggYXJndW1lbnRzOiIpOworICAgZm9yIChpPTA7aTxuYl9tb2RlcztpKyspCisgICB7Cisg
ICAgICBDRUxUTW9kZSAqbW9kZSA9IG1vZGVzW2ldOworICAgICAgZnByaW50ZihmaWxlLCAiICVk
ICVkIixtb2RlLT5Gcyxtb2RlLT5zaG9ydE1kY3RTaXplKm1vZGUtPm5iU2hvcnRNZGN0cyk7Cisg
ICB9CisgICBmcHJpbnRmKGZpbGUsICJcbiAqIEl0IGNvbnRhaW5zIHN0YXRpYyBkZWZpbml0aW9u
cyBmb3Igc29tZSBwcmUtZGVmaW5lZCBtb2Rlcy4gKi9cbiIpOworICAgZnByaW50ZihmaWxlLCAi
I2luY2x1ZGUgPE5FMTBfdHlwZXMuaD5cblxuIik7Cit9CisKK3ZvaWQgZHVtcF9tb2Rlc19hcmNo
X2ZpbmFsaXplKCkKK3sKKyAgIGZjbG9zZShmaWxlKTsKK30KKwordm9pZCBkdW1wX21vZGVfYXJj
aChDRUxUTW9kZSAqbW9kZSkKK3sKKyAgIGludCBrLCBqOworICAgaW50IG1kY3RTaXplOworCisg
ICBtZGN0U2l6ZSA9IG1vZGUtPnNob3J0TWRjdFNpemUqbW9kZS0+bmJTaG9ydE1kY3RzOworCisg
ICBmcHJpbnRmKGZpbGUsICIjaWZuZGVmIE5FMTBfRkZUX1BBUkFNUyVkXyVkXG4iLCBtb2RlLT5G
cywgbWRjdFNpemUpOworICAgZnByaW50ZihmaWxlLCAiI2RlZmluZSBORTEwX0ZGVF9QQVJBTVMl
ZF8lZFxuIiwgbW9kZS0+RnMsIG1kY3RTaXplKTsKKyAgIC8qIGNmZy0+ZmFjdG9ycyAqLworICAg
Zm9yKGs9MDtrPD1tb2RlLT5tZGN0Lm1heHNoaWZ0O2srKykgeworICAgICAgTkUxMF9GRlRfQ0ZH
X1RZUEVfVCBjZmc7CisgICAgICBjZmcgPSAoTkUxMF9GRlRfQ0ZHX1RZUEVfVCltb2RlLT5tZGN0
LmtmZnRba10tPmFyY2hfZmZ0LT5wcml2OworICAgICAgaWYgKCFjZmcpCisgICAgICAgICBjb250
aW51ZTsKKyAgICAgIGZwcmludGYoZmlsZSwgInN0YXRpYyBjb25zdCBuZTEwX2ludDMyX3QgbmUx
MF9mYWN0b3JzXyVkWyVkXSA9IHtcbiIsCisgICAgICAgICAgICAgIG1vZGUtPm1kY3Qua2ZmdFtr
XS0+bmZmdCwgKE5FMTBfTUFYRkFDVE9SUyAqIDIpKTsKKyAgICAgIGZvcihqPTA7ajwoTkUxMF9N
QVhGQUNUT1JTICogMik7aisrKSB7CisgICAgICAgICBmcHJpbnRmKGZpbGUsICIlZCwlYyIsIGNm
Zy0+ZmFjdG9yc1tqXSwoaisxNiklMTU9PTA/J1xuJzonICcpOworICAgICAgfQorICAgICAgZnBy
aW50ZiAoZmlsZSwgIn07XG4iKTsKKyAgIH0KKworICAgLyogY2ZnLT50d2lkZGxlcyAqLworICAg
Zm9yKGs9MDtrPD1tb2RlLT5tZGN0Lm1heHNoaWZ0O2srKykgeworICAgICAgTkUxMF9GRlRfQ0ZH
X1RZUEVfVCBjZmc7CisgICAgICBjZmcgPSAoTkUxMF9GRlRfQ0ZHX1RZUEVfVCltb2RlLT5tZGN0
LmtmZnRba10tPmFyY2hfZmZ0LT5wcml2OworICAgICAgaWYgKCFjZmcpCisgICAgICAgICBjb250
aW51ZTsKKyAgICAgIGZwcmludGYoZmlsZSwgInN0YXRpYyBjb25zdCAlcyBuZTEwX3R3aWRkbGVz
XyVkWyVkXSA9IHtcbiIsCisgICAgICAgICAgICAgIE5FMTBfRkZUX0NQWF9UWVBFX1RfU1RSLCBt
b2RlLT5tZGN0LmtmZnRba10tPm5mZnQsCisgICAgICAgICAgICAgIG1vZGUtPm1kY3Qua2ZmdFtr
XS0+bmZmdCk7CisgICAgICBmb3Ioaj0wO2o8bW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0O2orKykg
eworI2lmICFkZWZpbmVkKEZJWEVEX1BPSU5UKQorICAgICAgICAgZnByaW50ZihmaWxlLCAieyUj
MC44Z2YsJSMwLjhnZn0sJWMiLAorICAgICAgICAgICAgICAgICBjZmctPnR3aWRkbGVzW2pdLnIs
IGNmZy0+dHdpZGRsZXNbal0uaSwoais0KSUzPT0wPydcbic6JyAnKTsKKyNlbHNlCisgICAgICAg
ICBmcHJpbnRmKGZpbGUsICJ7JWQsJWR9LCVjIiwKKyAgICAgICAgICAgICAgICAgY2ZnLT50d2lk
ZGxlc1tqXS5yLCBjZmctPnR3aWRkbGVzW2pdLmksKGorNCklMz09MD8nXG4nOicgJyk7CisjZW5k
aWYKKyAgICAgIH0KKyAgICAgIGZwcmludGYgKGZpbGUsICJ9O1xuIik7CisgICB9CisKKyAgIGZv
cihrPTA7azw9bW9kZS0+bWRjdC5tYXhzaGlmdDtrKyspIHsKKyAgICAgIE5FMTBfRkZUX0NGR19U
WVBFX1QgY2ZnOworICAgICAgY2ZnID0gKE5FMTBfRkZUX0NGR19UWVBFX1QpbW9kZS0+bWRjdC5r
ZmZ0W2tdLT5hcmNoX2ZmdC0+cHJpdjsKKyAgICAgIGlmICghY2ZnKSB7CisgICAgICAgICBmcHJp
bnRmKGZpbGUsICIvKiBOZTEwIGRvZXMgbm90IHN1cHBvcnQgc2NhbGVkIEZGVCBmb3IgbGVuZ3Ro
ID0gJWQgKi9cbiIsCisgICAgICAgICAgICAgICAgIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7
CisgICAgICAgICBmcHJpbnRmKGZpbGUsICJzdGF0aWMgY29uc3QgYXJjaF9mZnRfc3RhdGUgY2Zn
X2FyY2hfJWQgPSB7XG4iLCBtb2RlLT5tZGN0LmtmZnRba10tPm5mZnQpOworICAgICAgICAgZnBy
aW50ZihmaWxlLCAiMCxcbiIpOworICAgICAgICAgZnByaW50ZihmaWxlLCAiTlVMTFxuIik7Cisg
ICAgICAgICBmcHJpbnRmKGZpbGUsICJ9O1xuIik7CisgICAgICAgICBjb250aW51ZTsKKyAgICAg
IH0KKyAgICAgIGZwcmludGYoZmlsZSwgInN0YXRpYyBjb25zdCAlcyAlc18lZCA9IHtcbiIsIE5F
MTBfRkZUX1NUQVRFX1RZUEVfVF9TVFIsCisgICAgICAgICAgICAgIE5FMTBfRkZUX1NUQVRFX1RZ
UEVfVF9TVFIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCk7CisgICAgICBmcHJpbnRmKGZpbGUs
ICIlZCxcbiIsIGNmZy0+bmZmdCk7CisgICAgICBmcHJpbnRmKGZpbGUsICIobmUxMF9pbnQzMl90
ICopbmUxMF9mYWN0b3JzXyVkLFxuIiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAg
IGZwcmludGYoZmlsZSwgIiglcyAqKW5lMTBfdHdpZGRsZXNfJWQsXG4iLAorICAgICAgICAgICAg
ICBORTEwX0ZGVF9DUFhfVFlQRV9UX1NUUiwgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAg
ICAgIGZwcmludGYoZmlsZSwgIk5VTEwsXG4iKTsgIC8qIGJ1ZmZlciAqLworICAgICAgZnByaW50
ZihmaWxlLCAiKCVzICopJm5lMTBfdHdpZGRsZXNfJWRbJWRdLFxuIiwKKyAgICAgICAgICAgICAg
TkUxMF9GRlRfQ1BYX1RZUEVfVF9TVFIsIG1vZGUtPm1kY3Qua2ZmdFtrXS0+bmZmdCwgY2ZnLT5u
ZmZ0KTsKKyNpZiAhZGVmaW5lZChGSVhFRF9QT0lOVCkKKyAgICAgIGZwcmludGYoZmlsZSwgIi8q
IGlzX2ZvcndhcmRfc2NhbGVkID0gdHJ1ZSAqL1xuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICIo
bmUxMF9pbnQzMl90KSAxLFxuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICIvKiBpc19iYWNrd2Fy
ZF9zY2FsZWQgPSBmYWxzZSAqL1xuIik7CisgICAgICBmcHJpbnRmKGZpbGUsICIobmUxMF9pbnQz
Ml90KSAwLFxuIik7CisjZW5kaWYKKyAgICAgIGZwcmludGYoZmlsZSwgIn07XG4iKTsKKworICAg
ICAgZnByaW50ZihmaWxlLCAic3RhdGljIGNvbnN0IGFyY2hfZmZ0X3N0YXRlIGNmZ19hcmNoXyVk
ID0ge1xuIiwKKyAgICAgICAgICAgICAgbW9kZS0+bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAg
IGZwcmludGYoZmlsZSwgIjEsXG4iKTsKKyAgICAgIGZwcmludGYoZmlsZSwgIih2b2lkICopJiVz
XyVkLFxuIiwKKyAgICAgICAgICAgICAgTkUxMF9GRlRfU1RBVEVfVFlQRV9UX1NUUiwgbW9kZS0+
bWRjdC5rZmZ0W2tdLT5uZmZ0KTsKKyAgICAgIGZwcmludGYoZmlsZSwgIn07XG5cbiIpOworICAg
fQorICAgZnByaW50ZihmaWxlLCAiI2VuZGlmICAvKiBlbmQgTkUxMF9GRlRfUEFSQU1TJWRfJWQg
Ki9cbiIsIG1vZGUtPkZzLCBtZGN0U2l6ZSk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfYzV4
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvZml4ZWRfYzV4LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWE5NWE5OThjM2MzZjg3OWUxMGNjZDcy
ZWZmMjAwZDFjZWNlOTcyMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9jNXguaApAQCAt
MCwwICsxLDc5IEBACisvKiBDb3B5cmlnaHQgKEMpIDIwMDMgSmVhbi1NYXJjIFZhbGluICovCisv
KioKKyAgIEBmaWxlIGZpeGVkX2M1eC5oCisgICBAYnJpZWYgRml4ZWQtcG9pbnQgb3BlcmF0aW9u
cyBmb3IgdGhlIFRJIEM1eCBEU1AgZmFtaWx5CisqLworLyoKKyAgIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICAgbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgICBhcmUgbWV0OgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgIC0gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAgIGBg
QVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QKKyAgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyAgIE9SIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgICBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
CisgICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORworICAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpZm5kZWYgRklY
RURfQzVYX0gKKyNkZWZpbmUgRklYRURfQzVYX0gKKworI2luY2x1ZGUgImRzcGxpYi5oIgorCisj
dW5kZWYgSU1VTDMyCitzdGF0aWMgT1BVU19JTkxJTkUgbG9uZyBJTVVMMzIobG9uZyBpLCBsb25n
IGopCit7CisgICBsb25nIGFjMCwgYWMxOworICAgYWMwID0gX2xtcHkoaT4+MTYsaik7CisgICBh
YzEgPSBhYzAgKyBfbG1weShpLGo+PjE2KTsKKyAgIHJldHVybiBfbG1weXUoaSxqKSArIChhYzE8
PDE2KTsKK30KKworI3VuZGVmIE1BWDE2CisjZGVmaW5lIE1BWDE2KGEsYikgX21heChhLGIpCisK
KyN1bmRlZiBNSU4xNgorI2RlZmluZSBNSU4xNihhLGIpIF9taW4oYSxiKQorCisjdW5kZWYgTUFY
MzIKKyNkZWZpbmUgTUFYMzIoYSxiKSBfbG1heChhLGIpCisKKyN1bmRlZiBNSU4zMgorI2RlZmlu
ZSBNSU4zMihhLGIpIF9sbWluKGEsYikKKworI3VuZGVmIFZTSFIzMgorI2RlZmluZSBWU0hSMzIo
YSwgc2hpZnQpIF9sc2hsKGEsLShzaGlmdCkpCisKKyN1bmRlZiBNVUxUMTZfMTZfUTE1CisjZGVm
aW5lIE1VTFQxNl8xNl9RMTUoYSxiKSAoX3NtcHkoYSxiKSkKKworI3VuZGVmIE1VTFQxNl8xNlNV
CisjZGVmaW5lIE1VTFQxNl8xNlNVKGEsYikgX2xtcHlzdShhLGIpCisKKyN1bmRlZiBNVUxUXzE2
XzE2CisjZGVmaW5lIE1VTFRfMTZfMTYoYSxiKSBfbG1weShhLGIpCisKKy8qIEZJWE1FOiBUaGlz
IGlzIHRlY2huaWNhbGx5IGluY29ycmVjdCBhbmQgaXMgYm91bmQgdG8gY2F1c2UgcHJvYmxlbXMu
IElzIHRoZXJlIGFueSBjbGVhbmVyIHNvbHV0aW9uPyAqLworI3VuZGVmIE1VTFQxNl8zMl9RMTUK
KyNkZWZpbmUgTVVMVDE2XzMyX1ExNShhLGIpIEFERDMyKFNITChNVUxUMTZfMTYoKGEpLFNIUigo
YiksMTYpKSwxKSwgU0hSKE1VTFQxNl8xNlNVKChhKSwoYikpLDE1KSkKKworI2RlZmluZSBjZWx0
X2lsb2cyKHgpICgzMCAtIF9sbm9ybSh4KSkKKyNkZWZpbmUgT1ZFUlJJREVfQ0VMVF9JTE9HMgor
CisjZGVmaW5lIGNlbHRfbWF4YWJzMTYoeCwgbGVuKSBNQVgzMihFWFRFTkQzMihtYXh2YWwoKERB
VEEgKil4LCBsZW4pKSwtRVhURU5EMzIobWludmFsKChEQVRBICopeCwgbGVuKSkpCisjZGVmaW5l
IE9WRVJSSURFX0NFTFRfTUFYQUJTMTYKKworI2VuZGlmIC8qIEZJWEVEX0M1WF9IICovCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQvZml4ZWRfYzZ4LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfYzZ4LmgKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmI2
YWQ5Mjc4MDNmOWZhYmMxNTVlMTBiZDdkYTg0NWZjZTJlOGNlOAotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9maXhlZF9jNnguaApAQCAtMCwwICsxLDcwIEBACisvKiBDb3B5cmlnaHQgKEMpIDIwMDgg
Q1NJUk8gKi8KKy8qKgorICAgQGZpbGUgZml4ZWRfYzZ4LmgKKyAgIEBicmllZiBGaXhlZC1wb2lu
dCBvcGVyYXRpb25zIGZvciB0aGUgVEkgQzZ4IERTUCBmYW1pbHkKKyovCisvKgorICAgUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKwor
ICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVAorICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05F
UgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKwor
I2lmbmRlZiBGSVhFRF9DNlhfSAorI2RlZmluZSBGSVhFRF9DNlhfSAorCisjdW5kZWYgTVVMVDE2
XzE2U1UKKyNkZWZpbmUgTVVMVDE2XzE2U1UoYSxiKSBfbXB5c3UoYSxiKQorCisjdW5kZWYgTVVM
VF8xNl8xNgorI2RlZmluZSBNVUxUXzE2XzE2KGEsYikgX21weShhLGIpCisKKyNkZWZpbmUgY2Vs
dF9pbG9nMih4KSAoMzAgLSBfbm9ybSh4KSkKKyNkZWZpbmUgT1ZFUlJJREVfQ0VMVF9JTE9HMgor
CisjdW5kZWYgTVVMVDE2XzMyX1ExNQorI2RlZmluZSBNVUxUMTZfMzJfUTE1KGEsYikgKF9tcHls
aWxsKGEsIGIpID4+IDE1KQorCisjaWYgMAorI2luY2x1ZGUgImRzcGxpYi5oIgorCisjdW5kZWYg
TUFYMTYKKyNkZWZpbmUgTUFYMTYoYSxiKSBfbWF4KGEsYikKKworI3VuZGVmIE1JTjE2CisjZGVm
aW5lIE1JTjE2KGEsYikgX21pbihhLGIpCisKKyN1bmRlZiBNQVgzMgorI2RlZmluZSBNQVgzMihh
LGIpIF9sbWF4KGEsYikKKworI3VuZGVmIE1JTjMyCisjZGVmaW5lIE1JTjMyKGEsYikgX2xtaW4o
YSxiKQorCisjdW5kZWYgVlNIUjMyCisjZGVmaW5lIFZTSFIzMihhLCBzaGlmdCkgX2xzaGwoYSwt
KHNoaWZ0KSkKKworI3VuZGVmIE1VTFQxNl8xNl9RMTUKKyNkZWZpbmUgTVVMVDE2XzE2X1ExNShh
LGIpIChfc21weShhLGIpKQorCisjZGVmaW5lIGNlbHRfbWF4YWJzMTYoeCwgbGVuKSBNQVgzMihF
WFRFTkQzMihtYXh2YWwoKERBVEEgKil4LCBsZW4pKSwtRVhURU5EMzIobWludmFsKChEQVRBICop
eCwgbGVuKSkpCisjZGVmaW5lIE9WRVJSSURFX0NFTFRfTUFYQUJTMTYKKworI2VuZGlmIC8qIEZJ
WEVEX0M2WF9IICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfZGVidWcuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9k
ZWJ1Zy5oCmluZGV4IGQyODIyN2Y1ZGM3Mjg3OWNlZDk0NGQ4YjVkYjg4ODBiYTM0NjVmMDMuLmY0
MzUyOTUyMzRjZmZiNTNjYjA1NGZjZGQwY2EwODg1Zjc4NmQwZmEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9m
aXhlZF9kZWJ1Zy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9kZWJ1Zy5oCkBAIC01OSw2ICs1OSwxNCBAQCBl
eHRlcm4gb3B1c19pbnQ2NCBjZWx0X21pcHM7CiAjZGVmaW5lIFNIUihhLGIpIFNIUjMyKGEsYikK
ICNkZWZpbmUgUFNIUihhLGIpIFBTSFIzMihhLGIpCiAKKy8qKiBBZGQgdHdvIDMyLWJpdCB2YWx1
ZXMsIGlnbm9yZSBhbnkgb3ZlcmZsb3dzICovCisjZGVmaW5lIEFERDMyX292Zmx3KGEsYikgKGNl
bHRfbWlwcys9Miwob3B1c192YWwzMikoKG9wdXNfdWludDMyKShhKSsob3B1c191aW50MzIpKGIp
KSkKKy8qKiBTdWJ0cmFjdCB0d28gMzItYml0IHZhbHVlcywgaWdub3JlIGFueSBvdmVyZmxvd3Mg
Ki8KKyNkZWZpbmUgU1VCMzJfb3ZmbHcoYSxiKSAoY2VsdF9taXBzKz0yLChvcHVzX3ZhbDMyKSgo
b3B1c191aW50MzIpKGEpLShvcHVzX3VpbnQzMikoYikpKQorLyogQXZvaWQgTVNWQyB3YXJuaW5n
IEM0MTQ2OiB1bmFyeSBtaW51cyBvcGVyYXRvciBhcHBsaWVkIHRvIHVuc2lnbmVkIHR5cGUgKi8K
Ky8qKiBOZWdhdGUgMzItYml0IHZhbHVlLCBpZ25vcmUgYW55IG92ZXJmbG93cyAqLworI2RlZmlu
ZSBORUczMl9vdmZsdyhhKSAoY2VsdF9taXBzKz0yLChvcHVzX3ZhbDMyKSgwLShvcHVzX3VpbnQz
MikoYSkpKQorCiBzdGF0aWMgT1BVU19JTkxJTkUgc2hvcnQgTkVHMTYoaW50IHgpCiB7CiAgICBp
bnQgcmVzOwpAQCAtMjI3LDEyICsyMzUsMTEgQEAgc3RhdGljIE9QVVNfSU5MSU5FIGludCBTSEwz
Ml8ob3B1c19pbnQ2NCBhLCBpbnQgc2hpZnQsIGNoYXIgKmZpbGUsIGludCBsaW5lKQogI2RlZmlu
ZSBWU0hSMzIoYSwgc2hpZnQpICgoKHNoaWZ0KT4wKSA/IFNIUjMyKGEsIHNoaWZ0KSA6IFNITDMy
KGEsIC0oc2hpZnQpKSkKIAogI2RlZmluZSBST1VORDE2KHgsYSkgKGNlbHRfbWlwcy0tLEVYVFJB
Q1QxNihQU0hSMzIoKHgpLChhKSkpKQorI2RlZmluZSBTUk9VTkQxNih4LGEpIChjZWx0X21pcHMt
LSxFWFRSQUNUMTYoU0FUVVJBVEUoUFNIUjMyKHgsYSksIDMyNzY3KSkpOworCiAjZGVmaW5lIEhB
TEYxNih4KSAgKFNIUjE2KHgsMSkpCiAjZGVmaW5lIEhBTEYzMih4KSAgKFNIUjMyKHgsMSkpCiAK
LS8vI2RlZmluZSBTSFIoYSxzaGlmdCkgKChhKSA+PiAoc2hpZnQpKQotLy8jZGVmaW5lIFNITChh
LHNoaWZ0KSAoKGEpIDw8IChzaGlmdCkpCi0KICNkZWZpbmUgQUREMTYoYSwgYikgQUREMTZfKGEs
IGIsIF9fRklMRV9fLCBfX0xJTkVfXykKIHN0YXRpYyBPUFVTX0lOTElORSBzaG9ydCBBREQxNl8o
aW50IGEsIGludCBiLCBjaGFyICpmaWxlLCBpbnQgbGluZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9m
aXhlZF9nZW5lcmljLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NlbHQvZml4ZWRfZ2VuZXJpYy5oCmluZGV4IDFjZmQ2ZDY5ODkwNmJk
NGZkZTg3YTBiYTBlODc0NjliZGMzZmZkZTUuLjVmNGFiZGE3NmVkOGMwOTZmZDMwZjk1N2RmMjAw
ZWY3MDkxNWU3ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9maXhlZF9nZW5lcmljLmgKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Zp
eGVkX2dlbmVyaWMuaApAQCAtMTA0LDYgKzEwNCw5IEBACiAKIC8qKiBTaGlmdCBieSBhIGFuZCBy
b3VuZC10by1uZWFyZWFzdCAzMi1iaXQgdmFsdWUuIFJlc3VsdCBpcyBhIDE2LWJpdCB2YWx1ZSAq
LwogI2RlZmluZSBST1VORDE2KHgsYSkgKEVYVFJBQ1QxNihQU0hSMzIoKHgpLChhKSkpKQorLyoq
IFNoaWZ0IGJ5IGEgYW5kIHJvdW5kLXRvLW5lYXJlYXN0IDMyLWJpdCB2YWx1ZS4gUmVzdWx0IGlz
IGEgc2F0dXJhdGVkIDE2LWJpdCB2YWx1ZSAqLworI2RlZmluZSBTUk9VTkQxNih4LGEpIEVYVFJB
Q1QxNihTQVRVUkFURShQU0hSMzIoeCxhKSwgMzI3NjcpKTsKKwogLyoqIERpdmlkZSBieSB0d28g
Ki8KICNkZWZpbmUgSEFMRjE2KHgpICAoU0hSMTYoeCwxKSkKICNkZWZpbmUgSEFMRjMyKHgpICAo
U0hSMzIoeCwxKSkKQEAgLTExNyw2ICsxMjAsMTQgQEAKIC8qKiBTdWJ0cmFjdCB0d28gMzItYml0
IHZhbHVlcyAqLwogI2RlZmluZSBTVUIzMihhLGIpICgob3B1c192YWwzMikoYSktKG9wdXNfdmFs
MzIpKGIpKQogCisvKiogQWRkIHR3byAzMi1iaXQgdmFsdWVzLCBpZ25vcmUgYW55IG92ZXJmbG93
cyAqLworI2RlZmluZSBBREQzMl9vdmZsdyhhLGIpICgob3B1c192YWwzMikoKG9wdXNfdWludDMy
KShhKSsob3B1c191aW50MzIpKGIpKSkKKy8qKiBTdWJ0cmFjdCB0d28gMzItYml0IHZhbHVlcywg
aWdub3JlIGFueSBvdmVyZmxvd3MgKi8KKyNkZWZpbmUgU1VCMzJfb3ZmbHcoYSxiKSAoKG9wdXNf
dmFsMzIpKChvcHVzX3VpbnQzMikoYSktKG9wdXNfdWludDMyKShiKSkpCisvKiBBdm9pZCBNU1ZD
IHdhcm5pbmcgQzQxNDY6IHVuYXJ5IG1pbnVzIG9wZXJhdG9yIGFwcGxpZWQgdG8gdW5zaWduZWQg
dHlwZSAqLworLyoqIE5lZ2F0ZSAzMi1iaXQgdmFsdWUsIGlnbm9yZSBhbnkgb3ZlcmZsb3dzICov
CisjZGVmaW5lIE5FRzMyX292Zmx3KGEpICgob3B1c192YWwzMikoMC0ob3B1c191aW50MzIpKGEp
KSkKKwogLyoqIDE2eDE2IG11bHRpcGxpY2F0aW9uIHdoZXJlIHRoZSByZXN1bHQgZml0cyBpbiAx
NiBiaXRzICovCiAjZGVmaW5lIE1VTFQxNl8xNl8xNihhLGIpICAgICAoKCgob3B1c192YWwxNiko
YSkpKigob3B1c192YWwxNikoYikpKSkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2Zsb2F0X2Nhc3QuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
Y2VsdC9mbG9hdF9jYXN0LmgKaW5kZXggZWQ1YTM5YjU0MzNiNThmMmZhMDg0MzJkMmViNjE4OWQ2
Y2JlOGY2Yy4uOThiNDBhYmNmNjVmNWRmN2E1MWQzZDlkNjdkNjE4NjlhNTUzNWZlOSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L2Zsb2F0X2Nhc3QuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvZmxvYXRfY2FzdC5oCkBAIC02MSw3ICs2
MSwxMyBAQAogKiogICAgICB0aGUgY29uZmlnLmggZmlsZS4KICovCiAKLSNpZiAoSEFWRV9MUklO
VEYpCisvKiBXaXRoIEdDQywgd2hlbiBTU0UgaXMgYXZhaWxhYmxlLCB0aGUgZmFzdGVzdCBjb252
ZXJzaW9uIGlzIGN2dHNzMnNpLiAqLworI2lmIGRlZmluZWQoX19HTlVDX18pICYmIGRlZmluZWQo
X19TU0VfXykKKworI2luY2x1ZGUgPHhtbWludHJpbi5oPgorc3RhdGljIE9QVVNfSU5MSU5FIG9w
dXNfaW50MzIgZmxvYXQyaW50KGZsb2F0IHgpIHtyZXR1cm4gX21tX2N2dF9zczJzaShfbW1fc2V0
X3NzKHgpKTt9CisKKyNlbGlmIGRlZmluZWQoSEFWRV9MUklOVEYpCiAKIC8qICAgICAgVGhlc2Ug
ZGVmaW5lcyBlbmFibGUgZnVuY3Rpb25hbGl0eSBpbnRyb2R1Y2VkIHdpdGggdGhlIDE5OTkgSVNP
IEMKICoqICAgICAgc3RhbmRhcmQuIFRoZXkgbXVzdCBiZSBkZWZpbmVkIGJlZm9yZSB0aGUgaW5j
bHVzaW9uIG9mIG1hdGguaCB0bwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L2tpc3NfZmZ0LmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQva2lz
c19mZnQuYwppbmRleCAxZjhmZDA1MzIxYTQwMjA0YTNhNjZhZDU1ODE4ZTQ2NGFhYzlhOTljLi44
Mzc3NTE2NWQ4NjZmYjAxZDU4YmNhNzFmY2Y1NjNjZjlkYjhjOGViIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
a2lzc19mZnQuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL2NlbHQva2lzc19mZnQuYwpAQCAtODIsOCArODIsOCBAQCBzdGF0aWMg
dm9pZCBrZl9iZmx5MigKICAgICAgICAgIENfU1VCKCBGb3V0MlswXSAsICBGb3V0WzBdICwgdCAp
OwogICAgICAgICAgQ19BRERUTyggRm91dFswXSAsICB0ICk7CiAKLSAgICAgICAgIHQuciA9IFNf
TVVMKEZvdXQyWzFdLnIrRm91dDJbMV0uaSwgdHcpOwotICAgICAgICAgdC5pID0gU19NVUwoRm91
dDJbMV0uaS1Gb3V0MlsxXS5yLCB0dyk7CisgICAgICAgICB0LnIgPSBTX01VTChBREQzMl9vdmZs
dyhGb3V0MlsxXS5yLCBGb3V0MlsxXS5pKSwgdHcpOworICAgICAgICAgdC5pID0gU19NVUwoU1VC
MzJfb3ZmbHcoRm91dDJbMV0uaSwgRm91dDJbMV0uciksIHR3KTsKICAgICAgICAgIENfU1VCKCBG
b3V0MlsxXSAsICBGb3V0WzFdICwgdCApOwogICAgICAgICAgQ19BRERUTyggRm91dFsxXSAsICB0
ICk7CiAKQEAgLTkyLDggKzkyLDggQEAgc3RhdGljIHZvaWQga2ZfYmZseTIoCiAgICAgICAgICBD
X1NVQiggRm91dDJbMl0gLCAgRm91dFsyXSAsIHQgKTsKICAgICAgICAgIENfQUREVE8oIEZvdXRb
Ml0gLCAgdCApOwogCi0gICAgICAgICB0LnIgPSBTX01VTChGb3V0MlszXS5pLUZvdXQyWzNdLnIs
IHR3KTsKLSAgICAgICAgIHQuaSA9IFNfTVVMKC1Gb3V0MlszXS5pLUZvdXQyWzNdLnIsIHR3KTsK
KyAgICAgICAgIHQuciA9IFNfTVVMKFNVQjMyX292Zmx3KEZvdXQyWzNdLmksIEZvdXQyWzNdLnIp
LCB0dyk7CisgICAgICAgICB0LmkgPSBTX01VTChORUczMl9vdmZsdyhBREQzMl9vdmZsdyhGb3V0
MlszXS5pLCBGb3V0MlszXS5yKSksIHR3KTsKICAgICAgICAgIENfU1VCKCBGb3V0MlszXSAsICBG
b3V0WzNdICwgdCApOwogICAgICAgICAgQ19BRERUTyggRm91dFszXSAsICB0ICk7CiAgICAgICAg
ICBGb3V0ICs9IDg7CkBAIC0xMjYsMTAgKzEyNiwxMCBAQCBzdGF0aWMgdm9pZCBrZl9iZmx5NCgK
ICAgICAgICAgIENfQUREVE8oICpGb3V0ICwgc2NyYXRjaDEgKTsKICAgICAgICAgIENfU1VCKCBz
Y3JhdGNoMSAsIEZvdXRbMV0gLCBGb3V0WzNdICk7CiAKLSAgICAgICAgIEZvdXRbMV0uciA9IHNj
cmF0Y2gwLnIgKyBzY3JhdGNoMS5pOwotICAgICAgICAgRm91dFsxXS5pID0gc2NyYXRjaDAuaSAt
IHNjcmF0Y2gxLnI7Ci0gICAgICAgICBGb3V0WzNdLnIgPSBzY3JhdGNoMC5yIC0gc2NyYXRjaDEu
aTsKLSAgICAgICAgIEZvdXRbM10uaSA9IHNjcmF0Y2gwLmkgKyBzY3JhdGNoMS5yOworICAgICAg
ICAgRm91dFsxXS5yID0gQUREMzJfb3ZmbHcoc2NyYXRjaDAuciwgc2NyYXRjaDEuaSk7CisgICAg
ICAgICBGb3V0WzFdLmkgPSBTVUIzMl9vdmZsdyhzY3JhdGNoMC5pLCBzY3JhdGNoMS5yKTsKKyAg
ICAgICAgIEZvdXRbM10uciA9IFNVQjMyX292Zmx3KHNjcmF0Y2gwLnIsIHNjcmF0Y2gxLmkpOwor
ICAgICAgICAgRm91dFszXS5pID0gQUREMzJfb3ZmbHcoc2NyYXRjaDAuaSwgc2NyYXRjaDEucik7
CiAgICAgICAgICBGb3V0Kz00OwogICAgICAgfQogICAgfSBlbHNlIHsKQEAgLTE2MCwxMCArMTYw
LDEwIEBAIHN0YXRpYyB2b2lkIGtmX2JmbHk0KAogICAgICAgICAgICAgdHczICs9IGZzdHJpZGUq
MzsKICAgICAgICAgICAgIENfQUREVE8oICpGb3V0ICwgc2NyYXRjaFszXSApOwogCi0gICAgICAg
ICAgICBGb3V0W21dLnIgPSBzY3JhdGNoWzVdLnIgKyBzY3JhdGNoWzRdLmk7Ci0gICAgICAgICAg
ICBGb3V0W21dLmkgPSBzY3JhdGNoWzVdLmkgLSBzY3JhdGNoWzRdLnI7Ci0gICAgICAgICAgICBG
b3V0W20zXS5yID0gc2NyYXRjaFs1XS5yIC0gc2NyYXRjaFs0XS5pOwotICAgICAgICAgICAgRm91
dFttM10uaSA9IHNjcmF0Y2hbNV0uaSArIHNjcmF0Y2hbNF0ucjsKKyAgICAgICAgICAgIEZvdXRb
bV0uciA9IEFERDMyX292Zmx3KHNjcmF0Y2hbNV0uciwgc2NyYXRjaFs0XS5pKTsKKyAgICAgICAg
ICAgIEZvdXRbbV0uaSA9IFNVQjMyX292Zmx3KHNjcmF0Y2hbNV0uaSwgc2NyYXRjaFs0XS5yKTsK
KyAgICAgICAgICAgIEZvdXRbbTNdLnIgPSBTVUIzMl9vdmZsdyhzY3JhdGNoWzVdLnIsIHNjcmF0
Y2hbNF0uaSk7CisgICAgICAgICAgICBGb3V0W20zXS5pID0gQUREMzJfb3ZmbHcoc2NyYXRjaFs1
XS5pLCBzY3JhdGNoWzRdLnIpOwogICAgICAgICAgICAgKytGb3V0OwogICAgICAgICAgfQogICAg
ICAgfQpAQCAtMjEyLDE4ICsyMTIsMTggQEAgc3RhdGljIHZvaWQga2ZfYmZseTMoCiAgICAgICAg
ICB0dzEgKz0gZnN0cmlkZTsKICAgICAgICAgIHR3MiArPSBmc3RyaWRlKjI7CiAKLSAgICAgICAg
IEZvdXRbbV0uciA9IEZvdXQtPnIgLSBIQUxGX09GKHNjcmF0Y2hbM10ucik7Ci0gICAgICAgICBG
b3V0W21dLmkgPSBGb3V0LT5pIC0gSEFMRl9PRihzY3JhdGNoWzNdLmkpOworICAgICAgICAgRm91
dFttXS5yID0gU1VCMzJfb3ZmbHcoRm91dC0+ciwgSEFMRl9PRihzY3JhdGNoWzNdLnIpKTsKKyAg
ICAgICAgIEZvdXRbbV0uaSA9IFNVQjMyX292Zmx3KEZvdXQtPmksIEhBTEZfT0Yoc2NyYXRjaFsz
XS5pKSk7CiAKICAgICAgICAgIENfTVVMQllTQ0FMQVIoIHNjcmF0Y2hbMF0gLCBlcGkzLmkgKTsK
IAogICAgICAgICAgQ19BRERUTygqRm91dCxzY3JhdGNoWzNdKTsKIAotICAgICAgICAgRm91dFtt
Ml0uciA9IEZvdXRbbV0uciArIHNjcmF0Y2hbMF0uaTsKLSAgICAgICAgIEZvdXRbbTJdLmkgPSBG
b3V0W21dLmkgLSBzY3JhdGNoWzBdLnI7CisgICAgICAgICBGb3V0W20yXS5yID0gQUREMzJfb3Zm
bHcoRm91dFttXS5yLCBzY3JhdGNoWzBdLmkpOworICAgICAgICAgRm91dFttMl0uaSA9IFNVQjMy
X292Zmx3KEZvdXRbbV0uaSwgc2NyYXRjaFswXS5yKTsKIAotICAgICAgICAgRm91dFttXS5yIC09
IHNjcmF0Y2hbMF0uaTsKLSAgICAgICAgIEZvdXRbbV0uaSArPSBzY3JhdGNoWzBdLnI7CisgICAg
ICAgICBGb3V0W21dLnIgPSBTVUIzMl9vdmZsdyhGb3V0W21dLnIsIHNjcmF0Y2hbMF0uaSk7Cisg
ICAgICAgICBGb3V0W21dLmkgPSBBREQzMl9vdmZsdyhGb3V0W21dLmksIHNjcmF0Y2hbMF0ucik7
CiAKICAgICAgICAgICsrRm91dDsKICAgICAgIH0gd2hpbGUoLS1rKTsKQEAgLTI4MiwyMiArMjgy
LDIyIEBAIHN0YXRpYyB2b2lkIGtmX2JmbHk1KAogICAgICAgICAgQ19BREQoIHNjcmF0Y2hbOF0s
c2NyYXRjaFsyXSxzY3JhdGNoWzNdKTsKICAgICAgICAgIENfU1VCKCBzY3JhdGNoWzldLHNjcmF0
Y2hbMl0sc2NyYXRjaFszXSk7CiAKLSAgICAgICAgIEZvdXQwLT5yICs9IHNjcmF0Y2hbN10uciAr
IHNjcmF0Y2hbOF0ucjsKLSAgICAgICAgIEZvdXQwLT5pICs9IHNjcmF0Y2hbN10uaSArIHNjcmF0
Y2hbOF0uaTsKKyAgICAgICAgIEZvdXQwLT5yID0gQUREMzJfb3ZmbHcoRm91dDAtPnIsIEFERDMy
X292Zmx3KHNjcmF0Y2hbN10uciwgc2NyYXRjaFs4XS5yKSk7CisgICAgICAgICBGb3V0MC0+aSA9
IEFERDMyX292Zmx3KEZvdXQwLT5pLCBBREQzMl9vdmZsdyhzY3JhdGNoWzddLmksIHNjcmF0Y2hb
OF0uaSkpOwogCi0gICAgICAgICBzY3JhdGNoWzVdLnIgPSBzY3JhdGNoWzBdLnIgKyBTX01VTChz
Y3JhdGNoWzddLnIseWEucikgKyBTX01VTChzY3JhdGNoWzhdLnIseWIucik7Ci0gICAgICAgICBz
Y3JhdGNoWzVdLmkgPSBzY3JhdGNoWzBdLmkgKyBTX01VTChzY3JhdGNoWzddLmkseWEucikgKyBT
X01VTChzY3JhdGNoWzhdLmkseWIucik7CisgICAgICAgICBzY3JhdGNoWzVdLnIgPSBBREQzMl9v
dmZsdyhzY3JhdGNoWzBdLnIsIEFERDMyX292Zmx3KFNfTVVMKHNjcmF0Y2hbN10ucix5YS5yKSwg
U19NVUwoc2NyYXRjaFs4XS5yLHliLnIpKSk7CisgICAgICAgICBzY3JhdGNoWzVdLmkgPSBBREQz
Ml9vdmZsdyhzY3JhdGNoWzBdLmksIEFERDMyX292Zmx3KFNfTVVMKHNjcmF0Y2hbN10uaSx5YS5y
KSwgU19NVUwoc2NyYXRjaFs4XS5pLHliLnIpKSk7CiAKLSAgICAgICAgIHNjcmF0Y2hbNl0uciA9
ICBTX01VTChzY3JhdGNoWzEwXS5pLHlhLmkpICsgU19NVUwoc2NyYXRjaFs5XS5pLHliLmkpOwot
ICAgICAgICAgc2NyYXRjaFs2XS5pID0gLVNfTVVMKHNjcmF0Y2hbMTBdLnIseWEuaSkgLSBTX01V
TChzY3JhdGNoWzldLnIseWIuaSk7CisgICAgICAgICBzY3JhdGNoWzZdLnIgPSAgQUREMzJfb3Zm
bHcoU19NVUwoc2NyYXRjaFsxMF0uaSx5YS5pKSwgU19NVUwoc2NyYXRjaFs5XS5pLHliLmkpKTsK
KyAgICAgICAgIHNjcmF0Y2hbNl0uaSA9IE5FRzMyX292Zmx3KEFERDMyX292Zmx3KFNfTVVMKHNj
cmF0Y2hbMTBdLnIseWEuaSksIFNfTVVMKHNjcmF0Y2hbOV0ucix5Yi5pKSkpOwogCiAgICAgICAg
ICBDX1NVQigqRm91dDEsc2NyYXRjaFs1XSxzY3JhdGNoWzZdKTsKICAgICAgICAgIENfQUREKCpG
b3V0NCxzY3JhdGNoWzVdLHNjcmF0Y2hbNl0pOwogCi0gICAgICAgICBzY3JhdGNoWzExXS5yID0g
c2NyYXRjaFswXS5yICsgU19NVUwoc2NyYXRjaFs3XS5yLHliLnIpICsgU19NVUwoc2NyYXRjaFs4
XS5yLHlhLnIpOwotICAgICAgICAgc2NyYXRjaFsxMV0uaSA9IHNjcmF0Y2hbMF0uaSArIFNfTVVM
KHNjcmF0Y2hbN10uaSx5Yi5yKSArIFNfTVVMKHNjcmF0Y2hbOF0uaSx5YS5yKTsKLSAgICAgICAg
IHNjcmF0Y2hbMTJdLnIgPSAtIFNfTVVMKHNjcmF0Y2hbMTBdLmkseWIuaSkgKyBTX01VTChzY3Jh
dGNoWzldLmkseWEuaSk7Ci0gICAgICAgICBzY3JhdGNoWzEyXS5pID0gU19NVUwoc2NyYXRjaFsx
MF0ucix5Yi5pKSAtIFNfTVVMKHNjcmF0Y2hbOV0ucix5YS5pKTsKKyAgICAgICAgIHNjcmF0Y2hb
MTFdLnIgPSBBREQzMl9vdmZsdyhzY3JhdGNoWzBdLnIsIEFERDMyX292Zmx3KFNfTVVMKHNjcmF0
Y2hbN10ucix5Yi5yKSwgU19NVUwoc2NyYXRjaFs4XS5yLHlhLnIpKSk7CisgICAgICAgICBzY3Jh
dGNoWzExXS5pID0gQUREMzJfb3ZmbHcoc2NyYXRjaFswXS5pLCBBREQzMl9vdmZsdyhTX01VTChz
Y3JhdGNoWzddLmkseWIuciksIFNfTVVMKHNjcmF0Y2hbOF0uaSx5YS5yKSkpOworICAgICAgICAg
c2NyYXRjaFsxMl0uciA9IFNVQjMyX292Zmx3KFNfTVVMKHNjcmF0Y2hbOV0uaSx5YS5pKSwgU19N
VUwoc2NyYXRjaFsxMF0uaSx5Yi5pKSk7CisgICAgICAgICBzY3JhdGNoWzEyXS5pID0gU1VCMzJf
b3ZmbHcoU19NVUwoc2NyYXRjaFsxMF0ucix5Yi5pKSwgU19NVUwoc2NyYXRjaFs5XS5yLHlhLmkp
KTsKIAogICAgICAgICAgQ19BREQoKkZvdXQyLHNjcmF0Y2hbMTFdLHNjcmF0Y2hbMTJdKTsKICAg
ICAgICAgIENfU1VCKCpGb3V0MyxzY3JhdGNoWzExXSxzY3JhdGNoWzEyXSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvbWF0aG9wcy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21hdGhvcHMuaAppbmRleCBhMDUyNWE5NjEwMzBhZTVkZjE2
NzRmZjU5NjEyZjIwNTQ0NTNhOTIxLi4xZjhhMjBjYjQ1NDAyNTVmZmM0ZWEwYTVmNjcxNmEzMTc5
OGM2YTZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbWF0aG9wcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9tYXRob3BzLmgKQEAg
LTM4LDExICszOCw0NCBAQAogI2luY2x1ZGUgImVudGNvZGUuaCIKICNpbmNsdWRlICJvc19zdXBw
b3J0LmgiCiAKKyNkZWZpbmUgUEkgMy4xNDE1OTI2NTNmCisKIC8qIE11bHRpcGxpZXMgdHdvIDE2
LWJpdCBmcmFjdGlvbmFsIHZhbHVlcy4gQml0LWV4YWN0bmVzcyBvZiB0aGlzIG1hY3JvIGlzIGlt
cG9ydGFudCAqLwogI2RlZmluZSBGUkFDX01VTDE2KGEsYikgKCgxNjM4NCsoKG9wdXNfaW50MzIp
KG9wdXNfaW50MTYpKGEpKihvcHVzX2ludDE2KShiKSkpPj4xNSkKIAogdW5zaWduZWQgaXNxcnQz
MihvcHVzX3VpbnQzMiBfdmFsKTsKIAorLyogQ0VMVCBkb2Vzbid0IG5lZWQgaXQgZm9yIGZpeGVk
LXBvaW50LCBieSBhbmFseXNpcy5jIGRvZXMuICovCisjaWYgIWRlZmluZWQoRklYRURfUE9JTlQp
IHx8IGRlZmluZWQoQU5BTFlTSVNfQykKKyNkZWZpbmUgY0EgMC40MzE1Nzk3NGYKKyNkZWZpbmUg
Y0IgMC42Nzg0ODQwM2YKKyNkZWZpbmUgY0MgMC4wODU5NTU0MmYKKyNkZWZpbmUgY0UgKChmbG9h
dClQSS8yKQorc3RhdGljIE9QVVNfSU5MSU5FIGZsb2F0IGZhc3RfYXRhbjJmKGZsb2F0IHksIGZs
b2F0IHgpIHsKKyAgIGZsb2F0IHgyLCB5MjsKKyAgIHgyID0geCp4OworICAgeTIgPSB5Knk7Cisg
ICAvKiBGb3IgdmVyeSBzbWFsbCB2YWx1ZXMsIHdlIGRvbid0IGNhcmUgYWJvdXQgdGhlIGFuc3dl
ciwgc28KKyAgICAgIHdlIGNhbiBqdXN0IHJldHVybiAwLiAqLworICAgaWYgKHgyICsgeTIgPCAx
ZS0xOGYpCisgICB7CisgICAgICByZXR1cm4gMDsKKyAgIH0KKyAgIGlmKHgyPHkyKXsKKyAgICAg
IGZsb2F0IGRlbiA9ICh5MiArIGNCKngyKSAqICh5MiArIGNDKngyKTsKKyAgICAgIHJldHVybiAt
eCp5Kih5MiArIGNBKngyKSAvIGRlbiArICh5PDAgPyAtY0UgOiBjRSk7CisgICB9ZWxzZXsKKyAg
ICAgIGZsb2F0IGRlbiA9ICh4MiArIGNCKnkyKSAqICh4MiArIGNDKnkyKTsKKyAgICAgIHJldHVy
biAgeCp5Kih4MiArIGNBKnkyKSAvIGRlbiArICh5PDAgPyAtY0UgOiBjRSkgLSAoeCp5PDAgPyAt
Y0UgOiBjRSk7CisgICB9Cit9CisjdW5kZWYgY0EKKyN1bmRlZiBjQgorI3VuZGVmIGNDCisjdW5k
ZWYgY0QKKyNlbmRpZgorCisKICNpZm5kZWYgT1ZFUlJJREVfQ0VMVF9NQVhBQlMxNgogc3RhdGlj
IE9QVVNfSU5MSU5FIG9wdXNfdmFsMzIgY2VsdF9tYXhhYnMxNihjb25zdCBvcHVzX3ZhbDE2ICp4
LCBpbnQgbGVuKQogewpAQCAtODAsNyArMTEzLDYgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNf
dmFsMzIgY2VsdF9tYXhhYnMzMihjb25zdCBvcHVzX3ZhbDMyICp4LCBpbnQgbGVuKQogCiAjaWZu
ZGVmIEZJWEVEX1BPSU5UCiAKLSNkZWZpbmUgUEkgMy4xNDE1OTI2NTNmCiAjZGVmaW5lIGNlbHRf
c3FydCh4KSAoKGZsb2F0KXNxcnQoeCkpCiAjZGVmaW5lIGNlbHRfcnNxcnQoeCkgKDEuZi9jZWx0
X3NxcnQoeCkpCiAjZGVmaW5lIGNlbHRfcnNxcnRfbm9ybSh4KSAoY2VsdF9yc3FydCh4KSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9tZGN0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbWRjdC5jCmluZGV4IDUzMTVhZDExYTM3YmJhOTIx
MWQ0OWI1NWRlZjU1ZWU3ZjE1MmMyMmMuLjVjNmRhYjViNzU3YTY0YWY5MTI5MzZmMGNlNmZlMjJi
OGZjMTEyZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9tZGN0LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21kY3QuYwpAQCAtMjcw
LDggKzI3MCw4IEBAIHZvaWQgY2x0X21kY3RfYmFja3dhcmRfYyhjb25zdCBtZGN0X2xvb2t1cCAq
bCwga2lzc19mZnRfc2NhbGFyICppbiwga2lzc19mZnRfc2NhCiAgICAgICAgICBpbnQgcmV2Owog
ICAgICAgICAga2lzc19mZnRfc2NhbGFyIHlyLCB5aTsKICAgICAgICAgIHJldiA9ICpiaXRyZXYr
KzsKLSAgICAgICAgIHlyID0gU19NVUwoKnhwMiwgdFtpXSkgKyBTX01VTCgqeHAxLCB0W040K2ld
KTsKLSAgICAgICAgIHlpID0gU19NVUwoKnhwMSwgdFtpXSkgLSBTX01VTCgqeHAyLCB0W040K2ld
KTsKKyAgICAgICAgIHlyID0gQUREMzJfb3ZmbHcoU19NVUwoKnhwMiwgdFtpXSksIFNfTVVMKCp4
cDEsIHRbTjQraV0pKTsKKyAgICAgICAgIHlpID0gU1VCMzJfb3ZmbHcoU19NVUwoKnhwMSwgdFtp
XSksIFNfTVVMKCp4cDIsIHRbTjQraV0pKTsKICAgICAgICAgIC8qIFdlIHN3YXAgcmVhbCBhbmQg
aW1hZyBiZWNhdXNlIHdlIHVzZSBhbiBGRlQgaW5zdGVhZCBvZiBhbiBJRkZULiAqLwogICAgICAg
ICAgeXBbMipyZXYrMV0gPSB5cjsKICAgICAgICAgIHlwWzIqcmV2XSA9IHlpOwpAQCAtMzAxLDgg
KzMwMSw4IEBAIHZvaWQgY2x0X21kY3RfYmFja3dhcmRfYyhjb25zdCBtZGN0X2xvb2t1cCAqbCwg
a2lzc19mZnRfc2NhbGFyICppbiwga2lzc19mZnRfc2NhCiAgICAgICAgICB0MCA9IHRbaV07CiAg
ICAgICAgICB0MSA9IHRbTjQraV07CiAgICAgICAgICAvKiBXZSdkIHNjYWxlIHVwIGJ5IDIgaGVy
ZSwgYnV0IGluc3RlYWQgaXQncyBkb25lIHdoZW4gbWl4aW5nIHRoZSB3aW5kb3dzICovCi0gICAg
ICAgICB5ciA9IFNfTVVMKHJlLHQwKSArIFNfTVVMKGltLHQxKTsKLSAgICAgICAgIHlpID0gU19N
VUwocmUsdDEpIC0gU19NVUwoaW0sdDApOworICAgICAgICAgeXIgPSBBREQzMl9vdmZsdyhTX01V
TChyZSx0MCksIFNfTVVMKGltLHQxKSk7CisgICAgICAgICB5aSA9IFNVQjMyX292Zmx3KFNfTVVM
KHJlLHQxKSwgU19NVUwoaW0sdDApKTsKICAgICAgICAgIC8qIFdlIHN3YXAgcmVhbCBhbmQgaW1h
ZyBiZWNhdXNlIHdlJ3JlIHVzaW5nIGFuIEZGVCBpbnN0ZWFkIG9mIGFuIElGRlQuICovCiAgICAg
ICAgICByZSA9IHlwMVsxXTsKICAgICAgICAgIGltID0geXAxWzBdOwpAQCAtMzEyLDggKzMxMiw4
IEBAIHZvaWQgY2x0X21kY3RfYmFja3dhcmRfYyhjb25zdCBtZGN0X2xvb2t1cCAqbCwga2lzc19m
ZnRfc2NhbGFyICppbiwga2lzc19mZnRfc2NhCiAgICAgICAgICB0MCA9IHRbKE40LWktMSldOwog
ICAgICAgICAgdDEgPSB0WyhOMi1pLTEpXTsKICAgICAgICAgIC8qIFdlJ2Qgc2NhbGUgdXAgYnkg
MiBoZXJlLCBidXQgaW5zdGVhZCBpdCdzIGRvbmUgd2hlbiBtaXhpbmcgdGhlIHdpbmRvd3MgKi8K
LSAgICAgICAgIHlyID0gU19NVUwocmUsdDApICsgU19NVUwoaW0sdDEpOwotICAgICAgICAgeWkg
PSBTX01VTChyZSx0MSkgLSBTX01VTChpbSx0MCk7CisgICAgICAgICB5ciA9IEFERDMyX292Zmx3
KFNfTVVMKHJlLHQwKSwgU19NVUwoaW0sdDEpKTsKKyAgICAgICAgIHlpID0gU1VCMzJfb3ZmbHco
U19NVUwocmUsdDEpLCBTX01VTChpbSx0MCkpOwogICAgICAgICAgeXAxWzBdID0geXI7CiAgICAg
ICAgICB5cDBbMV0gPSB5aTsKICAgICAgICAgIHlwMCArPSAyOwpAQCAtMzMzLDggKzMzMyw4IEBA
IHZvaWQgY2x0X21kY3RfYmFja3dhcmRfYyhjb25zdCBtZGN0X2xvb2t1cCAqbCwga2lzc19mZnRf
c2NhbGFyICppbiwga2lzc19mZnRfc2NhCiAgICAgICAgICBraXNzX2ZmdF9zY2FsYXIgeDEsIHgy
OwogICAgICAgICAgeDEgPSAqeHAxOwogICAgICAgICAgeDIgPSAqeXAxOwotICAgICAgICAgKnlw
MSsrID0gTVVMVDE2XzMyX1ExNSgqd3AyLCB4MikgLSBNVUxUMTZfMzJfUTE1KCp3cDEsIHgxKTsK
LSAgICAgICAgICp4cDEtLSA9IE1VTFQxNl8zMl9RMTUoKndwMSwgeDIpICsgTVVMVDE2XzMyX1Ex
NSgqd3AyLCB4MSk7CisgICAgICAgICAqeXAxKysgPSBTVUIzMl9vdmZsdyhNVUxUMTZfMzJfUTE1
KCp3cDIsIHgyKSwgTVVMVDE2XzMyX1ExNSgqd3AxLCB4MSkpOworICAgICAgICAgKnhwMS0tID0g
QUREMzJfb3ZmbHcoTVVMVDE2XzMyX1ExNSgqd3AxLCB4MiksIE1VTFQxNl8zMl9RMTUoKndwMiwg
eDEpKTsKICAgICAgICAgIHdwMSsrOwogICAgICAgICAgd3AyLS07CiAgICAgICB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvbWlwcy92cV9taXBzcjEuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9taXBzL3ZxX21pcHNyMS5oCmluZGV4IDU0
Y2VmODYxMzM3NTQwOTcxN2I4NmVlYWFmYjczNDZkMTJlYWE4MDAuLmZkMThlYWI3YTk2NjA0NjUz
OWE2MGI4YTIyZGRlZWQyZjFhMGE1YjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9taXBzL3ZxX21pcHNyMS5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC9taXBzL3ZxX21pcHNyMS5oCkBAIC0zNiw5ICszNiw2IEBACiAjaW5jbHVkZSAi
bWF0aG9wcy5oIgogI2luY2x1ZGUgImFyY2guaCIKIAotc3RhdGljIHVuc2lnbmVkIGV4dHJhY3Rf
Y29sbGFwc2VfbWFzayhpbnQgKml5LCBpbnQgTiwgaW50IEIpOwotc3RhdGljIHZvaWQgbm9ybWFs
aXNlX3Jlc2lkdWFsKGludCAqIE9QVVNfUkVTVFJJQ1QgaXksIGNlbHRfbm9ybSAqIE9QVVNfUkVT
VFJJQ1QgWCwgaW50IE4sIG9wdXNfdmFsMzIgUnl5LCBvcHVzX3ZhbDE2IGdhaW4pOwotc3RhdGlj
IHZvaWQgZXhwX3JvdGF0aW9uKGNlbHRfbm9ybSAqWCwgaW50IGxlbiwgaW50IGRpciwgaW50IHN0
cmlkZSwgaW50IEssIGludCBzcHJlYWQpOwogc3RhdGljIHZvaWQgcmVub3JtYWxpc2VfdmVjdG9y
X21pcHMoY2VsdF9ub3JtICpYLCBpbnQgTiwgb3B1c192YWwxNiBnYWluLCBpbnQgYXJjaCk7CiAK
ICNkZWZpbmUgT1ZFUlJJREVfdnFfZXhwX3JvdGF0aW9uMQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L21vZGVz
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvbW9kZXMuYwppbmRleCA5MTE2ODZlOTA1NTIyOTg2YjM0ZjRkYjU3ZDE2MjNhZTQy
M2FhY2Q4Li4zOTBjNWU4YWViMzZhYTQ4YjE2ZDJmZmEyMDI1NTRkYzE3NGRhNjYxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvbW9kZXMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvbW9kZXMuYwpAQCAtNDI3LDcgKzQyNyw3IEBAIHZv
aWQgb3B1c19jdXN0b21fbW9kZV9kZXN0cm95KENFTFRNb2RlICptb2RlKQogICAgfQogI2VuZGlm
IC8qIENVU1RPTV9NT0RFU19PTkxZICovCiAgICBvcHVzX2ZyZWUoKG9wdXNfaW50MTYqKW1vZGUt
PmVCYW5kcyk7Ci0gICBvcHVzX2ZyZWUoKG9wdXNfaW50MTYqKW1vZGUtPmFsbG9jVmVjdG9ycyk7
CisgICBvcHVzX2ZyZWUoKHVuc2lnbmVkIGNoYXIqKW1vZGUtPmFsbG9jVmVjdG9ycyk7CiAKICAg
IG9wdXNfZnJlZSgob3B1c192YWwxNiopbW9kZS0+d2luZG93KTsKICAgIG9wdXNfZnJlZSgob3B1
c19pbnQxNiopbW9kZS0+bG9nTik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvcGl0Y2guYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9waXRj
aC5jCmluZGV4IGJmNDZlN2Q1NjJiMzlmNjI3NTJjMzAwOTFlOTAwNjRlNDM0NGIzNzIuLjViMDYx
ZDg2MGY0NTJiOGMzNTM5ZjUwYjg2ZGZkMTIzMGI3ZWM1MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9waXRj
aC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9waXRjaC5jCkBAIC0yMjAsMTMgKzIyMCw4IEBAIG9wdXNfdmFsMzIKICNl
bHNlCiB2b2lkCiAjZW5kaWYKLSNpZiBkZWZpbmVkKE9WRVJSSURFX1BJVENIX1hDT1JSKQogY2Vs
dF9waXRjaF94Y29ycl9jKGNvbnN0IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVzX3ZhbDE2ICpf
eSwKLSAgICAgIG9wdXNfdmFsMzIgKnhjb3JyLCBpbnQgbGVuLCBpbnQgbWF4X3BpdGNoKQotI2Vs
c2UKLWNlbHRfcGl0Y2hfeGNvcnIoY29uc3Qgb3B1c192YWwxNiAqX3gsIGNvbnN0IG9wdXNfdmFs
MTYgKl95LAogICAgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gs
IGludCBhcmNoKQotI2VuZGlmCiB7CiAKICNpZiAwIC8qIFRoaXMgaXMgYSBzaW1wbGUgdmVyc2lv
biBvZiB0aGUgcGl0Y2ggY29ycmVsYXRpb24gdGhhdCBzaG91bGQgd29yawpAQCAtMjY1LDExICsy
NjAsNyBAQCBjZWx0X3BpdGNoX3hjb3JyKGNvbnN0IG9wdXNfdmFsMTYgKl94LCBjb25zdCBvcHVz
X3ZhbDE2ICpfeSwKICAgIGZvciAoaT0wO2k8bWF4X3BpdGNoLTM7aSs9NCkKICAgIHsKICAgICAg
IG9wdXNfdmFsMzIgc3VtWzRdPXswLDAsMCwwfTsKLSNpZiBkZWZpbmVkKE9WRVJSSURFX1BJVENI
X1hDT1JSKQotICAgICAgeGNvcnJfa2VybmVsX2MoX3gsIF95K2ksIHN1bSwgbGVuKTsKLSNlbHNl
CiAgICAgICB4Y29ycl9rZXJuZWwoX3gsIF95K2ksIHN1bSwgbGVuLCBhcmNoKTsKLSNlbmRpZgog
ICAgICAgeGNvcnJbaV09c3VtWzBdOwogICAgICAgeGNvcnJbaSsxXT1zdW1bMV07CiAgICAgICB4
Y29ycltpKzJdPXN1bVsyXTsKQEAgLTI4NSwxMSArMjc2LDcgQEAgY2VsdF9waXRjaF94Y29ycihj
b25zdCBvcHVzX3ZhbDE2ICpfeCwgY29uc3Qgb3B1c192YWwxNiAqX3ksCiAgICBmb3IgKDtpPG1h
eF9waXRjaDtpKyspCiAgICB7CiAgICAgICBvcHVzX3ZhbDMyIHN1bTsKLSNpZiBkZWZpbmVkKE9W
RVJSSURFX1BJVENIX1hDT1JSKQotICAgICAgc3VtID0gY2VsdF9pbm5lcl9wcm9kX2MoX3gsIF95
K2ksIGxlbik7Ci0jZWxzZQogICAgICAgc3VtID0gY2VsdF9pbm5lcl9wcm9kKF94LCBfeStpLCBs
ZW4sIGFyY2gpOwotI2VuZGlmCiAgICAgICB4Y29ycltpXSA9IHN1bTsKICNpZmRlZiBGSVhFRF9Q
T0lOVAogICAgICAgbWF4Y29yciA9IE1BWDMyKG1heGNvcnIsIHN1bSk7CkBAIC0zNzgsNyArMzY1
LDcgQEAgdm9pZCBwaXRjaF9zZWFyY2goY29uc3Qgb3B1c192YWwxNiAqIE9QVVNfUkVTVFJJQ1Qg
eF9scCwgb3B1c192YWwxNiAqIE9QVVNfUkVTVFIKICAgICAgIGZvciAoaj0wO2o8bGVuPj4xO2or
KykKICAgICAgICAgIHN1bSArPSBTSFIzMihNVUxUMTZfMTYoeF9scFtqXSx5W2kral0pLCBzaGlm
dCk7CiAjZWxzZQotICAgICAgc3VtID0gY2VsdF9pbm5lcl9wcm9kX2MoeF9scCwgeStpLCBsZW4+
PjEpOworICAgICAgc3VtID0gY2VsdF9pbm5lcl9wcm9kKHhfbHAsIHkraSwgbGVuPj4xLCBhcmNo
KTsKICNlbmRpZgogICAgICAgeGNvcnJbaV0gPSBNQVgzMigtMSwgc3VtKTsKICNpZmRlZiBGSVhF
RF9QT0lOVApAQCAtNDI0LDcgKzQxMSw3IEBAIHN0YXRpYyBvcHVzX3ZhbDE2IGNvbXB1dGVfcGl0
Y2hfZ2FpbihvcHVzX3ZhbDMyIHh5LCBvcHVzX3ZhbDMyIHh4LCBvcHVzX3ZhbDMyIHl5CiAgICBz
eCA9IGNlbHRfaWxvZzIoeHgpLTE0OwogICAgc3kgPSBjZWx0X2lsb2cyKHl5KS0xNDsKICAgIHNo
aWZ0ID0gc3ggKyBzeTsKLSAgIHgyeTIgPSBNVUxUMTZfMTZfUTE0KFZTSFIzMih4eCwgc3gpLCBW
U0hSMzIoeXksIHN5KSk7CisgICB4MnkyID0gU0hSMzIoTVVMVDE2XzE2KFZTSFIzMih4eCwgc3gp
LCBWU0hSMzIoeXksIHN5KSksIDE0KTsKICAgIGlmIChzaGlmdCAmIDEpIHsKICAgICAgIGlmICh4
MnkyIDwgMzI3NjgpCiAgICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvcGl0Y2guaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9waXRj
aC5oCmluZGV4IGQzNTAzNTMyYTA4MGIzNzg3NTVkYzAxYmEyNmMwNTVkZGFiMjI1YzUuLmU0MjVm
NTZhZWFhODkyYTlhY2RjN2E2YmM1OGQ5ZTU3ZGRjZTcyNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9waXRj
aC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvY2VsdC9waXRjaC5oCkBAIC00Niw4ICs0Niw3IEBACiAjaW5jbHVkZSAibWlwcy9w
aXRjaF9taXBzcjEuaCIKICNlbmRpZgogCi0jaWYgKChkZWZpbmVkKE9QVVNfQVJNX0FTTSkgJiYg
ZGVmaW5lZChGSVhFRF9QT0lOVCkpIFwKLSAgfHwgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9O
RU9OX0lOVFIpKQorI2lmIChkZWZpbmVkKE9QVVNfQVJNX0FTTSkgfHwgZGVmaW5lZChPUFVTX0FS
TV9NQVlfSEFWRV9ORU9OX0lOVFIpKQogIyBpbmNsdWRlICJhcm0vcGl0Y2hfYXJtLmgiCiAjZW5k
aWYKIApAQCAtMTg0LDE3ICsxODMsMTAgQEAgb3B1c192YWwzMgogdm9pZAogI2VuZGlmCiBjZWx0
X3BpdGNoX3hjb3JyX2MoY29uc3Qgb3B1c192YWwxNiAqX3gsIGNvbnN0IG9wdXNfdmFsMTYgKl95
LAotICAgICAgb3B1c192YWwzMiAqeGNvcnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gpOwotCi0j
aWYgIWRlZmluZWQoT1ZFUlJJREVfUElUQ0hfWENPUlIpCi0jaWZkZWYgRklYRURfUE9JTlQKLW9w
dXNfdmFsMzIKLSNlbHNlCi12b2lkCi0jZW5kaWYKLWNlbHRfcGl0Y2hfeGNvcnIoY29uc3Qgb3B1
c192YWwxNiAqX3gsIGNvbnN0IG9wdXNfdmFsMTYgKl95LAogICAgICAgb3B1c192YWwzMiAqeGNv
cnIsIGludCBsZW4sIGludCBtYXhfcGl0Y2gsIGludCBhcmNoKTsKIAorI2lmbmRlZiBPVkVSUklE
RV9QSVRDSF9YQ09SUgorIyBkZWZpbmUgY2VsdF9waXRjaF94Y29yciBjZWx0X3BpdGNoX3hjb3Jy
X2MKICNlbmRpZgogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9xdWFudF9iYW5kcy5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0
L3F1YW50X2JhbmRzLmMKaW5kZXggOTUwNzZlMGFmMmQ0ZWUwN2IyNWI1YjMzMzA1NDI3NzNlMjQ0
OTdiMi4uNTYxMDFiMWNmZWNiOGY1ODExYzA3NjE4ODMwZDdlZTM4NDJhZWI0OCAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L3F1YW50X2JhbmRzLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3F1YW50X2JhbmRzLmMKQEAgLTQxOCw2ICs0
MTgsNyBAQCB2b2lkIHF1YW50X2VuZXJneV9maW5hbGlzZShjb25zdCBDRUxUTW9kZSAqbSwgaW50
IHN0YXJ0LCBpbnQgZW5kLCBvcHVzX3ZhbDE2ICpvbAogICAgICAgICAgICAgb2Zmc2V0ID0gKHEy
LS41ZikqKDE8PCgxNC1maW5lX3F1YW50W2ldLTEpKSooMS5mLzE2Mzg0KTsKICNlbmRpZgogICAg
ICAgICAgICAgb2xkRUJhbmRzW2krYyptLT5uYkVCYW5kc10gKz0gb2Zmc2V0OworICAgICAgICAg
ICAgZXJyb3JbaStjKm0tPm5iRUJhbmRzXSAtPSBvZmZzZXQ7CiAgICAgICAgICAgICBiaXRzX2xl
ZnQtLTsKICAgICAgICAgIH0gd2hpbGUgKCsrYyA8IEMpOwogICAgICAgfQpAQCAtNTQ3LDkgKzU0
OCwxNSBAQCB2b2lkIGFtcDJMb2cyKGNvbnN0IENFTFRNb2RlICptLCBpbnQgZWZmRW5kLCBpbnQg
ZW5kLAogICAgYz0wOwogICAgZG8gewogICAgICAgZm9yIChpPTA7aTxlZmZFbmQ7aSsrKQorICAg
ICAgewogICAgICAgICAgYmFuZExvZ0VbaStjKm0tPm5iRUJhbmRzXSA9Ci0gICAgICAgICAgICAg
ICBjZWx0X2xvZzIoU0hMMzIoYmFuZEVbaStjKm0tPm5iRUJhbmRzXSwyKSkKKyAgICAgICAgICAg
ICAgIGNlbHRfbG9nMihiYW5kRVtpK2MqbS0+bmJFQmFuZHNdKQogICAgICAgICAgICAgICAgLSBT
SEwxNigob3B1c192YWwxNillTWVhbnNbaV0sNik7CisjaWZkZWYgRklYRURfUE9JTlQKKyAgICAg
ICAgIC8qIENvbXBlbnNhdGUgZm9yIGJhbmRFW10gYmVpbmcgUTEyIGJ1dCBjZWx0X2xvZzIoKSB0
YWtpbmcgYSBRMTQgaW5wdXQuICovCisgICAgICAgICBiYW5kTG9nRVtpK2MqbS0+bmJFQmFuZHNd
ICs9IFFDT05TVDE2KDIuZiwgREJfU0hJRlQpOworI2VuZGlmCisgICAgICB9CiAgICAgICBmb3Ig
KGk9ZWZmRW5kO2k8ZW5kO2krKykKICAgICAgICAgIGJhbmRMb2dFW2MqbS0+bmJFQmFuZHMraV0g
PSAtUUNPTlNUMTYoMTQuZixEQl9TSElGVCk7CiAgICB9IHdoaWxlICgrK2MgPCBDKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC9yYXRlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvcmF0ZS5jCmluZGV4IDdkZmE1YmU4YTYzOTI2ODQxNWVh
MWNmNDZiNmU0OTczMGUzODk0OTYuLmNhNGNjODcwZWFhNDEyZjUyYTQ1ZjQxYTkzODI4MmI1YTBj
N2Q0ZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC9yYXRlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3JhdGUuYwpAQCAtMzQ4LDEy
ICszNDgsMTcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIGludCBpbnRlcnBfYml0czJwdWxzZXMoY29u
c3QgQ0VMVE1vZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwKICAgICAgICAgICAgIC8qVGhpcyBp
ZigpIGJsb2NrIGlzIHRoZSBvbmx5IHBhcnQgb2YgdGhlIGFsbG9jYXRpb24gZnVuY3Rpb24gdGhh
dAogICAgICAgICAgICAgICAgaXMgbm90IGEgbWFuZGF0b3J5IHBhcnQgb2YgdGhlIGJpdHN0cmVh
bTogYW55IGJhbmRzIHdlIGNob29zZSB0bwogICAgICAgICAgICAgICAgc2tpcCBoZXJlIG11c3Qg
YmUgZXhwbGljaXRseSBzaWduYWxlZC4qLwotICAgICAgICAgICAgLypDaG9vc2UgYSB0aHJlc2hv
bGQgd2l0aCBzb21lIGh5c3RlcmVzaXMgdG8ga2VlcCBiYW5kcyBmcm9tCi0gICAgICAgICAgICAg
ICBmbHVjdHVhdGluZyBpbiBhbmQgb3V0LiovCisgICAgICAgICAgICBpbnQgZGVwdGhfdGhyZXNo
b2xkOworICAgICAgICAgICAgLypXZSBjaG9vc2UgYSB0aHJlc2hvbGQgd2l0aCBzb21lIGh5c3Rl
cmVzaXMgdG8ga2VlcCBiYW5kcyBmcm9tCisgICAgICAgICAgICAgICBmbHVjdHVhdGluZyBpbiBh
bmQgb3V0LCBidXQgd2UgdHJ5IG5vdCB0byBmb2xkIGJlbG93IGEgY2VydGFpbiBwb2ludC4gKi8K
KyAgICAgICAgICAgIGlmIChjb2RlZEJhbmRzID4gMTcpCisgICAgICAgICAgICAgICBkZXB0aF90
aHJlc2hvbGQgPSBqPHByZXYgPyA3IDogOTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICAgIGRlcHRoX3RocmVzaG9sZCA9IDA7CiAjaWZkZWYgRlVaWklORwogICAgICAgICAgICAgaWYg
KChyYW5kKCkmMHgxKSA9PSAwKQogI2Vsc2UKLSAgICAgICAgICAgIGlmIChjb2RlZEJhbmRzPD1z
dGFydCsyIHx8IChiYW5kX2JpdHMgPiAoKGo8cHJldj83OjkpKmJhbmRfd2lkdGg8PExNPDxCSVRS
RVMpPj40ICYmIGo8PXNpZ25hbEJhbmR3aWR0aCkpCisgICAgICAgICAgICBpZiAoY29kZWRCYW5k
czw9c3RhcnQrMiB8fCAoYmFuZF9iaXRzID4gKGRlcHRoX3RocmVzaG9sZCpiYW5kX3dpZHRoPDxM
TTw8QklUUkVTKT4+NCAmJiBqPD1zaWduYWxCYW5kd2lkdGgpKQogI2VuZGlmCiAgICAgICAgICAg
ICB7CiAgICAgICAgICAgICAgICBlY19lbmNfYml0X2xvZ3AoZWMsIDEsIDEpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9jZWx0L3N0YXRpY19tb2Rlc19maXhlZF9hcm1fbmUxMC5oIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3N0YXRpY19tb2Rlc19m
aXhlZF9hcm1fbmUxMC5oCmluZGV4IGI4ZWYwY2VlOTgzOGMzNDVjZmJkZGJhNzg1ZTM4M2YwMGM2
Mzk3MjIuLjc2MjMwOTIxOTI1MDdlZGUzNjgyYjExOGFiYjgwNDY0NjZjNDIxNzggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC9zdGF0aWNfbW9kZXNfZml4ZWRfYXJtX25lMTAuaAorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvc3RhdGljX21v
ZGVzX2ZpeGVkX2FybV9uZTEwLmgKQEAgLTEsNyArMSw3IEBACiAvKiBUaGUgY29udGVudHMgb2Yg
dGhpcyBmaWxlIHdhcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieQogICogZHVtcF9tb2RlX2Fy
bV9uZTEwLmMgd2l0aCBhcmd1bWVudHM6IDQ4MDAwIDk2MAogICogSXQgY29udGFpbnMgc3RhdGlj
IGRlZmluaXRpb25zIGZvciBzb21lIHByZS1kZWZpbmVkIG1vZGVzLiAqLwotI2luY2x1ZGUgPE5F
MTBfaW5pdC5oPgorI2luY2x1ZGUgPE5FMTBfdHlwZXMuaD4KIAogI2lmbmRlZiBORTEwX0ZGVF9Q
QVJBTVM0ODAwMF85NjAKICNkZWZpbmUgTkUxMF9GRlRfUEFSQU1TNDgwMDBfOTYwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL2NlbHQvc3RhdGljX21vZGVzX2Zsb2F0X2FybV9uZTEwLmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvc3RhdGljX21vZGVz
X2Zsb2F0X2FybV9uZTEwLmgKaW5kZXggOTM0YTgyYTQyMGEyOTZjMmZiNWVjMDc5NGY5YzZmZGU1
YmI3NjA0OS4uNjZlMWFiYjEwMTMyNzkzMDJlNDUzZGQxMDc4NWNmMjlmYTFjNmRjZSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9jZWx0L3N0YXRpY19tb2Rlc19mbG9hdF9hcm1fbmUxMC5oCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC9zdGF0aWNf
bW9kZXNfZmxvYXRfYXJtX25lMTAuaApAQCAtMSw3ICsxLDcgQEAKIC8qIFRoZSBjb250ZW50cyBv
ZiB0aGlzIGZpbGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5CiAgKiBkdW1wX21vZGVf
YXJtX25lMTAuYyB3aXRoIGFyZ3VtZW50czogNDgwMDAgOTYwCiAgKiBJdCBjb250YWlucyBzdGF0
aWMgZGVmaW5pdGlvbnMgZm9yIHNvbWUgcHJlLWRlZmluZWQgbW9kZXMuICovCi0jaW5jbHVkZSA8
TkUxMF9pbml0Lmg+CisjaW5jbHVkZSA8TkUxMF90eXBlcy5oPgogCiAjaWZuZGVmIE5FMTBfRkZU
X1BBUkFNUzQ4MDAwXzk2MAogI2RlZmluZSBORTEwX0ZGVF9QQVJBTVM0ODAwMF85NjAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfZGZ0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X2Rm
dC5jCmluZGV4IDYxNjZlYjBlNGZhOTNjM2UwZDBmNTIyMmYxOWU4Y2MzZjcxMTQ2NzQuLjcwZjhm
NDkzN2JhOGQwYmNhNjcwZWE5NWQxZDc1MTI0ZTkxNGQ1YjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0
cy90ZXN0X3VuaXRfZGZ0LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9kZnQuYwpAQCAtMjks
MzggKzI5LDEyIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjZW5kaWYKIAotI2RlZmluZSBTS0lQ
X0NPTkZJR19ICi0KLSNpZm5kZWYgQ1VTVE9NX01PREVTCi0jZGVmaW5lIENVU1RPTV9NT0RFUwot
I2VuZGlmCi0KICNpbmNsdWRlIDxzdGRpby5oPgogCi0jZGVmaW5lIENFTFRfQwotI2RlZmluZSBU
RVNUX1VOSVRfREZUX0MKICNpbmNsdWRlICJzdGFja19hbGxvYy5oIgogI2luY2x1ZGUgImtpc3Nf
ZmZ0LmgiCi0jaW5jbHVkZSAia2lzc19mZnQuYyIKLSNpbmNsdWRlICJtYXRob3BzLmMiCi0jaW5j
bHVkZSAiZW50Y29kZS5jIgotCi0jaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0UyKSB8
fCBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTRfMSkKLSMgaW5jbHVkZSAieDg2L3g4NmNw
dS5jIgotI2VsaWYgZGVmaW5lZChPUFVTX0FSTV9BU00pIHx8IGRlZmluZWQoT1BVU19BUk1fTUFZ
X0hBVkVfTkVPTl9JTlRSKQotIyBpbmNsdWRlICJhcm0vYXJtY3B1LmMiCi0jIGluY2x1ZGUgImNl
bHRfbHBjLmMiCi0jIGluY2x1ZGUgInBpdGNoLmMiCi0jIGlmIGRlZmluZWQoT1BVU19BUk1fTUFZ
X0hBVkVfTkVPTl9JTlRSKQotIyAgaW5jbHVkZSAiYXJtL2NlbHRfbmVvbl9pbnRyLmMiCi0jICBp
ZiBkZWZpbmVkKEhBVkVfQVJNX05FMTApCi0jICAgaW5jbHVkZSAibWRjdC5jIgotIyAgIGluY2x1
ZGUgImFybS9jZWx0X25lMTBfZmZ0LmMiCi0jICAgaW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9tZGN0
LmMiCi0jICBlbmRpZgotIyBlbmRpZgotIyBpbmNsdWRlICJhcm0vYXJtX2NlbHRfbWFwLmMiCi0j
ZW5kaWYKKyNpbmNsdWRlICJtYXRob3BzLmgiCisjaW5jbHVkZSAibW9kZXMuaCIKIAogI2lmbmRl
ZiBNX1BJCiAjZGVmaW5lIE1fUEkgMy4xNDE1OTI2NTMKQEAgLTExMiwxMSArODYsMjUgQEAgdm9p
ZCBjaGVjayhraXNzX2ZmdF9jcHggICogaW4sa2lzc19mZnRfY3B4ICAqIG91dCxpbnQgbmZmdCxp
bnQgaXNpbnZlcnNlKQogdm9pZCB0ZXN0MWQoaW50IG5mZnQsaW50IGlzaW52ZXJzZSxpbnQgYXJj
aCkKIHsKICAgICBzaXplX3QgYnVmbGVuID0gc2l6ZW9mKGtpc3NfZmZ0X2NweCkqbmZmdDsKLQot
ICAgIGtpc3NfZmZ0X2NweCAgKiBpbiA9IChraXNzX2ZmdF9jcHgqKW1hbGxvYyhidWZsZW4pOwot
ICAgIGtpc3NfZmZ0X2NweCAgKiBvdXQ9IChraXNzX2ZmdF9jcHgqKW1hbGxvYyhidWZsZW4pOwot
ICAgIGtpc3NfZmZ0X3N0YXRlICpjZmcgPSBvcHVzX2ZmdF9hbGxvYyhuZmZ0LDAsMCxhcmNoKTsK
KyAgICBraXNzX2ZmdF9jcHggKmluOworICAgIGtpc3NfZmZ0X2NweCAqb3V0OwogICAgIGludCBr
OworI2lmZGVmIENVU1RPTV9NT0RFUworICAgIGtpc3NfZmZ0X3N0YXRlICpjZmcgPSBvcHVzX2Zm
dF9hbGxvYyhuZmZ0LDAsMCxhcmNoKTsKKyNlbHNlCisgICAgaW50IGlkOworICAgIGNvbnN0IGtp
c3NfZmZ0X3N0YXRlICpjZmc7CisgICAgQ0VMVE1vZGUgKm1vZGUgPSBvcHVzX2N1c3RvbV9tb2Rl
X2NyZWF0ZSg0ODAwMCwgOTYwLCBOVUxMKTsKKyAgICBpZiAobmZmdCA9PSA0ODApIGlkID0gMDsK
KyAgICBlbHNlIGlmIChuZmZ0ID09IDI0MCkgaWQgPSAxOworICAgIGVsc2UgaWYgKG5mZnQgPT0g
MTIwKSBpZCA9IDI7CisgICAgZWxzZSBpZiAobmZmdCA9PSA2MCkgaWQgPSAzOworICAgIGVsc2Ug
cmV0dXJuOworICAgIGNmZyA9IG1vZGUtPm1kY3Qua2ZmdFtpZF07CisjZW5kaWYKKworICAgIGlu
ID0gKGtpc3NfZmZ0X2NweCopbWFsbG9jKGJ1Zmxlbik7CisgICAgb3V0ID0gKGtpc3NfZmZ0X2Nw
eCopbWFsbG9jKGJ1Zmxlbik7CiAKICAgICBmb3IgKGs9MDtrPG5mZnQ7KytrKSB7CiAgICAgICAg
IGluW2tdLnIgPSAocmFuZCgpICUgMzI3NjcpIC0gMTYzODQ7CkBAIC0xNDksNyArMTM3LDkgQEAg
dm9pZCB0ZXN0MWQoaW50IG5mZnQsaW50IGlzaW52ZXJzZSxpbnQgYXJjaCkKIAogICAgIGZyZWUo
aW4pOwogICAgIGZyZWUob3V0KTsKKyNpZmRlZiBDVVNUT01fTU9ERVMKICAgICBvcHVzX2ZmdF9m
cmVlKGNmZywgYXJjaCk7CisjZW5kaWYKIH0KIAogaW50IG1haW4oaW50IGFyZ2MsY2hhciAqKiBh
cmd2KQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tYXRob3BzLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVz
dHMvdGVzdF91bml0X21hdGhvcHMuYwppbmRleCBmZDMzMTlkYTkxY2ViM2VjZmE5NGM3MDJkMWVm
ZjNkYWI3MzhjODdhLi44NzRlOWFkZjBmYmYxNjFmNzQxN2YzYWU1MTFiOGE5ZmU3NTE1ZDZlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X21hdGhvcHMuYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMv
dGVzdF91bml0X21hdGhvcHMuYwpAQCAtMzQsNDggKzM0LDEwIEBACiAjZGVmaW5lIENVU1RPTV9N
T0RFUwogI2VuZGlmCiAKLSNkZWZpbmUgQ0VMVF9DCi0KICNpbmNsdWRlIDxzdGRpby5oPgogI2lu
Y2x1ZGUgPG1hdGguaD4KLSNpbmNsdWRlICJtYXRob3BzLmMiCi0jaW5jbHVkZSAiZW50ZW5jLmMi
Ci0jaW5jbHVkZSAiZW50ZGVjLmMiCi0jaW5jbHVkZSAiZW50Y29kZS5jIgotI2luY2x1ZGUgImJh
bmRzLmMiCi0jaW5jbHVkZSAicXVhbnRfYmFuZHMuYyIKLSNpbmNsdWRlICJsYXBsYWNlLmMiCi0j
aW5jbHVkZSAidnEuYyIKLSNpbmNsdWRlICJjd3JzLmMiCi0jaW5jbHVkZSAicGl0Y2guYyIKLSNp
bmNsdWRlICJjZWx0X2xwYy5jIgotI2luY2x1ZGUgImNlbHQuYyIKLQotI2lmIGRlZmluZWQoT1BV
U19YODZfTUFZX0hBVkVfU1NFKSB8fCBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpIHx8
IGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFNF8xKQotIyBpZiBkZWZpbmVkKE9QVVNfWDg2
X01BWV9IQVZFX1NTRSkKLSMgIGluY2x1ZGUgIng4Ni9waXRjaF9zc2UuYyIKLSMgZW5kaWYKLSMg
aWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0UyKQotIyAgaW5jbHVkZSAieDg2L3BpdGNo
X3NzZTIuYyIKLSMgZW5kaWYKLSMgaWYgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0U0XzEp
Ci0jICBpbmNsdWRlICJ4ODYvcGl0Y2hfc3NlNF8xLmMiCi0jICBpbmNsdWRlICJ4ODYvY2VsdF9s
cGNfc3NlLmMiCi0jIGVuZGlmCi0jIGluY2x1ZGUgIng4Ni94ODZfY2VsdF9tYXAuYyIKLSNlbGlm
IGRlZmluZWQoT1BVU19BUk1fQVNNKSB8fCBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05f
SU5UUikKLSMgaW5jbHVkZSAiYXJtL2FybWNwdS5jIgotIyBpZiBkZWZpbmVkKE9QVVNfQVJNX01B
WV9IQVZFX05FT05fSU5UUikKLSMgIGluY2x1ZGUgImFybS9jZWx0X25lb25faW50ci5jIgotIyAg
aWYgZGVmaW5lZChIQVZFX0FSTV9ORTEwKQotIyAgIGluY2x1ZGUgImtpc3NfZmZ0LmMiCi0jICAg
aW5jbHVkZSAibWRjdC5jIgotIyAgIGluY2x1ZGUgImFybS9jZWx0X25lMTBfZmZ0LmMiCi0jICAg
aW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9tZGN0LmMiCi0jICBlbmRpZgotIyBlbmRpZgotIyBpbmNs
dWRlICJhcm0vYXJtX2NlbHRfbWFwLmMiCi0jZW5kaWYKKyNpbmNsdWRlICJtYXRob3BzLmgiCisj
aW5jbHVkZSAiYmFuZHMuaCIKIAogI2lmZGVmIEZJWEVEX1BPSU5UCiAjZGVmaW5lIFdPUkQgIiVk
IgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3RzL3Rlc3RfdW5pdF9tZGN0LmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVz
dF91bml0X21kY3QuYwppbmRleCA4ZGJiOWNhYTJlOGNmZTg1YjhmYzM4ZTQxM2IyOTAzODExYzM3
Yzg0Li40YTU2M2NjZmUzYzkyODc4YmUwMDE4ZmU5M2JiNTJjOGZkNThmOGExIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQvdGVzdHMvdGVzdF91bml0X21kY3QuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X21k
Y3QuYwpAQCAtMjksMzggKzI5LDEzIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjZW5kaWYKIAot
I2RlZmluZSBTS0lQX0NPTkZJR19ICi0KLSNpZm5kZWYgQ1VTVE9NX01PREVTCi0jZGVmaW5lIENV
U1RPTV9NT0RFUwotI2VuZGlmCi0KICNpbmNsdWRlIDxzdGRpby5oPgogCi0jZGVmaW5lIENFTFRf
QwogI2luY2x1ZGUgIm1kY3QuaCIKICNpbmNsdWRlICJzdGFja19hbGxvYy5oIgotCi0jaW5jbHVk
ZSAia2lzc19mZnQuYyIKLSNpbmNsdWRlICJtZGN0LmMiCi0jaW5jbHVkZSAibWF0aG9wcy5jIgot
I2luY2x1ZGUgImVudGNvZGUuYyIKLQotI2lmIGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NF
MikgfHwgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9TU0U0XzEpCi0jIGluY2x1ZGUgIng4Ni94
ODZjcHUuYyIKLSNlbGlmIGRlZmluZWQoT1BVU19BUk1fQVNNKSB8fCBkZWZpbmVkKE9QVVNfQVJN
X01BWV9IQVZFX05FT05fSU5UUikKLSMgaW5jbHVkZSAiYXJtL2FybWNwdS5jIgotIyBpbmNsdWRl
ICJwaXRjaC5jIgotIyBpbmNsdWRlICJjZWx0X2xwYy5jIgotIyBpZiBkZWZpbmVkKE9QVVNfQVJN
X01BWV9IQVZFX05FT05fSU5UUikKLSMgIGluY2x1ZGUgImFybS9jZWx0X25lb25faW50ci5jIgot
IyAgaWYgZGVmaW5lZChIQVZFX0FSTV9ORTEwKQotIyAgIGluY2x1ZGUgImFybS9jZWx0X25lMTBf
ZmZ0LmMiCi0jICAgaW5jbHVkZSAiYXJtL2NlbHRfbmUxMF9tZGN0LmMiCi0jICBlbmRpZgotIyBl
bmRpZgotIyBpbmNsdWRlICJhcm0vYXJtX2NlbHRfbWFwLmMiCi0jZW5kaWYKKyNpbmNsdWRlICJr
aXNzX2ZmdC5oIgorI2luY2x1ZGUgIm1kY3QuaCIKKyNpbmNsdWRlICJtb2Rlcy5oIgogCiAjaWZu
ZGVmIE1fUEkKICNkZWZpbmUgTV9QSSAzLjE0MTU5MjY1MwpAQCAtMTMwLDE2ICsxMDUsMzYgQEAg
dm9pZCBjaGVja19pbnYoa2lzc19mZnRfc2NhbGFyICAqIGluLGtpc3NfZmZ0X3NjYWxhciAgKiBv
dXQsaW50IG5mZnQsaW50IGlzaW52ZXIKIAogdm9pZCB0ZXN0MWQoaW50IG5mZnQsaW50IGlzaW52
ZXJzZSxpbnQgYXJjaCkKIHsKLSAgICBtZGN0X2xvb2t1cCBjZmc7CiAgICAgc2l6ZV90IGJ1Zmxl
biA9IHNpemVvZihraXNzX2ZmdF9zY2FsYXIpKm5mZnQ7Ci0KLSAgICBraXNzX2ZmdF9zY2FsYXIg
ICogaW4gPSAoa2lzc19mZnRfc2NhbGFyKiltYWxsb2MoYnVmbGVuKTsKLSAgICBraXNzX2ZmdF9z
Y2FsYXIgICogaW5fY29weSA9IChraXNzX2ZmdF9zY2FsYXIqKW1hbGxvYyhidWZsZW4pOwotICAg
IGtpc3NfZmZ0X3NjYWxhciAgKiBvdXQ9IChraXNzX2ZmdF9zY2FsYXIqKW1hbGxvYyhidWZsZW4p
OwotICAgIG9wdXNfdmFsMTYgICogd2luZG93PSAob3B1c192YWwxNiopbWFsbG9jKHNpemVvZihv
cHVzX3ZhbDE2KSpuZmZ0LzIpOworICAgIGtpc3NfZmZ0X3NjYWxhciAqaW47CisgICAga2lzc19m
ZnRfc2NhbGFyICppbl9jb3B5OworICAgIGtpc3NfZmZ0X3NjYWxhciAqb3V0OworICAgIG9wdXNf
dmFsMTYgKndpbmRvdzsKICAgICBpbnQgazsKIAotICAgIGNsdF9tZGN0X2luaXQoJmNmZywgbmZm
dCwgMCwgYXJjaCk7CisjaWZkZWYgQ1VTVE9NX01PREVTCisgICAgaW50IHNoaWZ0ID0gMDsKKyAg
ICBjb25zdCBtZGN0X2xvb2t1cCAqY2ZnOworICAgIG1kY3RfbG9va3VwIF9jZmc7CisgICAgY2x0
X21kY3RfaW5pdCgmX2NmZywgbmZmdCwgMCwgYXJjaCk7CisgICAgY2ZnID0gJl9jZmc7CisjZWxz
ZQorICAgIGludCBzaGlmdDsKKyAgICBjb25zdCBtZGN0X2xvb2t1cCAqY2ZnOworICAgIENFTFRN
b2RlICptb2RlID0gb3B1c19jdXN0b21fbW9kZV9jcmVhdGUoNDgwMDAsIDk2MCwgTlVMTCk7Cisg
ICAgaWYgKG5mZnQgPT0gMTkyMCkgc2hpZnQgPSAwOworICAgIGVsc2UgaWYgKG5mZnQgPT0gOTYw
KSBzaGlmdCA9IDE7CisgICAgZWxzZSBpZiAobmZmdCA9PSA0ODApIHNoaWZ0ID0gMjsKKyAgICBl
bHNlIGlmIChuZmZ0ID09IDI0MCkgc2hpZnQgPSAzOworICAgIGVsc2UgcmV0dXJuOworICAgIGNm
ZyA9ICZtb2RlLT5tZGN0OworI2VuZGlmCisKKyAgICBpbiA9IChraXNzX2ZmdF9zY2FsYXIqKW1h
bGxvYyhidWZsZW4pOworICAgIGluX2NvcHkgPSAoa2lzc19mZnRfc2NhbGFyKiltYWxsb2MoYnVm
bGVuKTsKKyAgICBvdXQgPSAoa2lzc19mZnRfc2NhbGFyKiltYWxsb2MoYnVmbGVuKTsKKyAgICB3
aW5kb3cgPSAob3B1c192YWwxNiopbWFsbG9jKHNpemVvZihvcHVzX3ZhbDE2KSpuZmZ0LzIpOwor
CiAgICAgZm9yIChrPTA7azxuZmZ0OysraykgewogICAgICAgICBpbltrXSA9IChyYW5kKCkgJSAz
Mjc2OCkgLSAxNjM4NDsKICAgICB9CkBAIC0xNjYsMTMgKzE2MSwxMyBAQCB2b2lkIHRlc3QxZChp
bnQgbmZmdCxpbnQgaXNpbnZlcnNlLGludCBhcmNoKQogICAgIHsKICAgICAgICBmb3IgKGs9MDtr
PG5mZnQ7KytrKQogICAgICAgICAgIG91dFtrXSA9IDA7Ci0gICAgICAgY2x0X21kY3RfYmFja3dh
cmQoJmNmZyxpbixvdXQsIHdpbmRvdywgbmZmdC8yLCAwLCAxLCBhcmNoKTsKKyAgICAgICBjbHRf
bWRjdF9iYWNrd2FyZChjZmcsaW4sb3V0LCB3aW5kb3csIG5mZnQvMiwgc2hpZnQsIDEsIGFyY2gp
OwogICAgICAgIC8qIGFwcGx5IFREQUMgYmVjYXVzZSBjbHRfbWRjdF9iYWNrd2FyZCgpIG5vIGxv
bmdlciBkb2VzIHRoYXQgKi8KICAgICAgICBmb3IgKGs9MDtrPG5mZnQvNDsrK2spCiAgICAgICAg
ICAgb3V0W25mZnQtay0xXSA9IG91dFtuZmZ0LzIra107CiAgICAgICAgY2hlY2tfaW52KGluLG91
dCxuZmZ0LGlzaW52ZXJzZSk7CiAgICAgfSBlbHNlIHsKLSAgICAgICBjbHRfbWRjdF9mb3J3YXJk
KCZjZmcsaW4sb3V0LHdpbmRvdywgbmZmdC8yLCAwLCAxLCBhcmNoKTsKKyAgICAgICBjbHRfbWRj
dF9mb3J3YXJkKGNmZyxpbixvdXQsd2luZG93LCBuZmZ0LzIsIHNoaWZ0LCAxLCBhcmNoKTsKICAg
ICAgICBjaGVjayhpbl9jb3B5LG91dCxuZmZ0LGlzaW52ZXJzZSk7CiAgICAgfQogICAgIC8qZm9y
IChrPTA7azxuZmZ0OysraykgcHJpbnRmKCIlZCAlZCAiLCBvdXRba10uciwgb3V0W2tdLmkpO3By
aW50ZigiXG4iKTsqLwpAQCAtMTgyLDcgKzE3Nyw5IEBAIHZvaWQgdGVzdDFkKGludCBuZmZ0LGlu
dCBpc2ludmVyc2UsaW50IGFyY2gpCiAgICAgZnJlZShpbl9jb3B5KTsKICAgICBmcmVlKG91dCk7
CiAgICAgZnJlZSh3aW5kb3cpOwotICAgIGNsdF9tZGN0X2NsZWFyKCZjZmcsIGFyY2gpOworI2lm
ZGVmIENVU1RPTV9NT0RFUworICAgIGNsdF9tZGN0X2NsZWFyKCZfY2ZnLCBhcmNoKTsKKyNlbmRp
ZgogfQogCiBpbnQgbWFpbihpbnQgYXJnYyxjaGFyICoqIGFyZ3YpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQv
dGVzdHMvdGVzdF91bml0X3JvdGF0aW9uLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdGVzdHMvdGVzdF91bml0X3JvdGF0aW9u
LmMKaW5kZXggMTA4MGMyMDg1ZDAyYzVjOTc1ZmQwZjVlZjlkZDgzMjMwM2FkOWU0NS4uMjY3Yjk4
MzAxYWM4MzhjY2NjM2Y1ODJiNWIyMjkzM2E2NmQ2YzFlNyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3Rlc3Rz
L3Rlc3RfdW5pdF9yb3RhdGlvbi5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC90ZXN0cy90ZXN0X3VuaXRfcm90YXRpb24u
YwpAQCAtMzcsNDMgKzM3LDExIEBACiAKICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHN0
ZGxpYi5oPgotI2luY2x1ZGUgInZxLmMiCi0jaW5jbHVkZSAiY3dycy5jIgotI2luY2x1ZGUgImVu
dGNvZGUuYyIKLSNpbmNsdWRlICJlbnRlbmMuYyIKLSNpbmNsdWRlICJlbnRkZWMuYyIKLSNpbmNs
dWRlICJtYXRob3BzLmMiCisjaW5jbHVkZSAidnEuaCIKICNpbmNsdWRlICJiYW5kcy5oIgotI2lu
Y2x1ZGUgInBpdGNoLmMiCi0jaW5jbHVkZSAiY2VsdF9scGMuYyIKLSNpbmNsdWRlICJjZWx0LmMi
CisjaW5jbHVkZSAic3RhY2tfYWxsb2MuaCIKICNpbmNsdWRlIDxtYXRoLmg+CiAKLSNpZiBkZWZp
bmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRSkgfHwgZGVmaW5lZChPUFVTX1g4Nl9NQVlfSEFWRV9T
U0UyKSB8fCBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTRfMSkKLSMgaWYgZGVmaW5lZChP
UFVTX1g4Nl9NQVlfSEFWRV9TU0UpCi0jICBpbmNsdWRlICJ4ODYvcGl0Y2hfc3NlLmMiCi0jIGVu
ZGlmCi0jIGlmIGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVfU1NFMikKLSMgIGluY2x1ZGUgIng4
Ni9waXRjaF9zc2UyLmMiCi0jIGVuZGlmCi0jIGlmIGRlZmluZWQoT1BVU19YODZfTUFZX0hBVkVf
U1NFNF8xKQotIyAgaW5jbHVkZSAieDg2L3BpdGNoX3NzZTRfMS5jIgotIyAgaW5jbHVkZSAieDg2
L2NlbHRfbHBjX3NzZS5jIgotIyBlbmRpZgotIyBpbmNsdWRlICJ4ODYveDg2X2NlbHRfbWFwLmMi
Ci0jZWxpZiBkZWZpbmVkKE9QVVNfQVJNX0FTTSkgfHwgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFW
RV9ORU9OX0lOVFIpCi0jIGluY2x1ZGUgImFybS9hcm1jcHUuYyIKLSMgaWYgZGVmaW5lZChPUFVT
X0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpCi0jICBpbmNsdWRlICJhcm0vY2VsdF9uZW9uX2ludHIu
YyIKLSMgIGlmIGRlZmluZWQoSEFWRV9BUk1fTkUxMCkKLSMgICBpbmNsdWRlICJraXNzX2ZmdC5j
IgotIyAgIGluY2x1ZGUgIm1kY3QuYyIKLSMgICBpbmNsdWRlICJhcm0vY2VsdF9uZTEwX2ZmdC5j
IgotIyAgIGluY2x1ZGUgImFybS9jZWx0X25lMTBfbWRjdC5jIgotIyAgZW5kaWYKLSMgZW5kaWYK
LSMgaW5jbHVkZSAiYXJtL2FybV9jZWx0X21hcC5jIgotI2VuZGlmCiAKICNkZWZpbmUgTUFYX1NJ
WkUgMTAwCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC92cS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3ZxLmMKaW5kZXggZDI5ZjM4ZmQ4
ZWY3OTAxNWI2M2Q4ODE5YTQ4ZDQ3OGNhOGJjZTZlNi4uOGVmODBlNTA3ZjI2MmRhZDU1ZTVlYjZk
YmJmNWFlMmIxNDNhZDEwNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3ZxLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3ZxLmMKQEAg
LTY3LDcgKzY3LDcgQEAgc3RhdGljIHZvaWQgZXhwX3JvdGF0aW9uMShjZWx0X25vcm0gKlgsIGlu
dCBsZW4sIGludCBzdHJpZGUsIG9wdXNfdmFsMTYgYywgb3B1c18KIH0KICNlbmRpZiAvKiBPVkVS
UklERV92cV9leHBfcm90YXRpb24xICovCiAKLXN0YXRpYyB2b2lkIGV4cF9yb3RhdGlvbihjZWx0
X25vcm0gKlgsIGludCBsZW4sIGludCBkaXIsIGludCBzdHJpZGUsIGludCBLLCBpbnQgc3ByZWFk
KQordm9pZCBleHBfcm90YXRpb24oY2VsdF9ub3JtICpYLCBpbnQgbGVuLCBpbnQgZGlyLCBpbnQg
c3RyaWRlLCBpbnQgSywgaW50IHNwcmVhZCkKIHsKICAgIHN0YXRpYyBjb25zdCBpbnQgU1BSRUFE
X0ZBQ1RPUlszXT17MTUsMTAsNX07CiAgICBpbnQgaTsKQEAgLTE1OCw0MiArMTU4LDI3IEBAIHN0
YXRpYyB1bnNpZ25lZCBleHRyYWN0X2NvbGxhcHNlX21hc2soaW50ICppeSwgaW50IE4sIGludCBC
KQogICAgcmV0dXJuIGNvbGxhcHNlX21hc2s7CiB9CiAKLXVuc2lnbmVkIGFsZ19xdWFudChjZWx0
X25vcm0gKlgsIGludCBOLCBpbnQgSywgaW50IHNwcmVhZCwgaW50IEIsIGVjX2VuYyAqZW5jCi0j
aWZkZWYgUkVTWU5USAotICAgLCBvcHVzX3ZhbDE2IGdhaW4KLSNlbmRpZgotICAgKQorb3B1c192
YWwxNiBvcF9wdnFfc2VhcmNoX2MoY2VsdF9ub3JtICpYLCBpbnQgKml5LCBpbnQgSywgaW50IE4s
IGludCBhcmNoKQogewogICAgVkFSREVDTChjZWx0X25vcm0sIHkpOwotICAgVkFSREVDTChpbnQs
IGl5KTsKLSAgIFZBUkRFQ0wob3B1c192YWwxNiwgc2lnbngpOworICAgVkFSREVDTChpbnQsIHNp
Z254KTsKICAgIGludCBpLCBqOwotICAgb3B1c192YWwxNiBzOwogICAgaW50IHB1bHNlc0xlZnQ7
CiAgICBvcHVzX3ZhbDMyIHN1bTsKICAgIG9wdXNfdmFsMzIgeHk7CiAgICBvcHVzX3ZhbDE2IHl5
OwotICAgdW5zaWduZWQgY29sbGFwc2VfbWFzazsKICAgIFNBVkVfU1RBQ0s7CiAKLSAgIGNlbHRf
YXNzZXJ0MihLPjAsICJhbGdfcXVhbnQoKSBuZWVkcyBhdCBsZWFzdCBvbmUgcHVsc2UiKTsKLSAg
IGNlbHRfYXNzZXJ0MihOPjEsICJhbGdfcXVhbnQoKSBuZWVkcyBhdCBsZWFzdCB0d28gZGltZW5z
aW9ucyIpOwotCisgICAodm9pZClhcmNoOwogICAgQUxMT0MoeSwgTiwgY2VsdF9ub3JtKTsKLSAg
IEFMTE9DKGl5LCBOLCBpbnQpOwotICAgQUxMT0Moc2lnbngsIE4sIG9wdXNfdmFsMTYpOwotCi0g
ICBleHBfcm90YXRpb24oWCwgTiwgMSwgQiwgSywgc3ByZWFkKTsKKyAgIEFMTE9DKHNpZ254LCBO
LCBpbnQpOwogCiAgICAvKiBHZXQgcmlkIG9mIHRoZSBzaWduICovCiAgICBzdW0gPSAwOwogICAg
aj0wOyBkbyB7Ci0gICAgICBpZiAoWFtqXT4wKQotICAgICAgICAgc2lnbnhbal09MTsKLSAgICAg
IGVsc2UgewotICAgICAgICAgc2lnbnhbal09LTE7Ci0gICAgICAgICBYW2pdPS1YW2pdOwotICAg
ICAgfQorICAgICAgc2lnbnhbal0gPSBYW2pdPDA7CisgICAgICAvKiBPUFQ6IE1ha2Ugc3VyZSB0
aGUgY29tcGlsZXIgZG9lc24ndCB1c2UgYSBicmFuY2ggb24gQUJTMTYoKS4gKi8KKyAgICAgIFhb
al0gPSBBQlMxNihYW2pdKTsKICAgICAgIGl5W2pdID0gMDsKICAgICAgIHlbal0gPSAwOwogICAg
fSB3aGlsZSAoKytqPE4pOwpAQCAtMjI1LDcgKzIxMCwxMiBAQCB1bnNpZ25lZCBhbGdfcXVhbnQo
Y2VsdF9ub3JtICpYLCBpbnQgTiwgaW50IEssIGludCBzcHJlYWQsIGludCBCLCBlY19lbmMgKmVu
YwogICAgICAgICAgd2hpbGUgKCsrajxOKTsKICAgICAgICAgIHN1bSA9IFFDT05TVDE2KDEuZiwx
NCk7CiAgICAgICB9Ci0gICAgICByY3AgPSBFWFRSQUNUMTYoTVVMVDE2XzMyX1ExNihLLTEsIGNl
bHRfcmNwKHN1bSkpKTsKKyNpZmRlZiBGSVhFRF9QT0lOVAorICAgICAgcmNwID0gRVhUUkFDVDE2
KE1VTFQxNl8zMl9RMTYoSywgY2VsdF9yY3Aoc3VtKSkpOworI2Vsc2UKKyAgICAgIC8qIFVzaW5n
IEsrZSB3aXRoIGUgPCAxIGd1YXJhbnRlZXMgd2UgY2Fubm90IGdldCBtb3JlIHRoYW4gSyBwdWxz
ZXMuICovCisgICAgICByY3AgPSBFWFRSQUNUMTYoTVVMVDE2XzMyX1ExNihLKzAuOGYsIGNlbHRf
cmNwKHN1bSkpKTsKKyNlbmRpZgogICAgICAgaj0wOyBkbyB7CiAjaWZkZWYgRklYRURfUE9JTlQK
ICAgICAgICAgIC8qIEl0J3MgcmVhbGx5IGltcG9ydGFudCB0byByb3VuZCAqdG93YXJkcyB6ZXJv
KiBoZXJlICovCkBAIC0yNDAsNyArMjMwLDcgQEAgdW5zaWduZWQgYWxnX3F1YW50KGNlbHRfbm9y
bSAqWCwgaW50IE4sIGludCBLLCBpbnQgc3ByZWFkLCBpbnQgQiwgZWNfZW5jICplbmMKICAgICAg
ICAgIHB1bHNlc0xlZnQgLT0gaXlbal07CiAgICAgICB9ICB3aGlsZSAoKytqPE4pOwogICAgfQot
ICAgY2VsdF9hc3NlcnQyKHB1bHNlc0xlZnQ+PTEsICJBbGxvY2F0ZWQgdG9vIG1hbnkgcHVsc2Vz
IGluIHRoZSBxdWljayBwYXNzIik7CisgICBjZWx0X2Fzc2VydDIocHVsc2VzTGVmdD49MCwgIkFs
bG9jYXRlZCB0b28gbWFueSBwdWxzZXMgaW4gdGhlIHF1aWNrIHBhc3MiKTsKIAogICAgLyogVGhp
cyBzaG91bGQgbmV2ZXIgaGFwcGVuLCBidXQganVzdCBpbiBjYXNlIGl0IGRvZXMgKGUuZy4gb24g
c2lsZW5jZSkKICAgICAgIHdlIGZpbGwgdGhlIGZpcnN0IGJpbiB3aXRoIHB1bHNlcy4gKi8KQEAg
LTI1NiwxMiArMjQ2LDEyIEBAIHVuc2lnbmVkIGFsZ19xdWFudChjZWx0X25vcm0gKlgsIGludCBO
LCBpbnQgSywgaW50IHNwcmVhZCwgaW50IEIsIGVjX2VuYyAqZW5jCiAgICAgICBwdWxzZXNMZWZ0
PTA7CiAgICB9CiAKLSAgIHMgPSAxOwogICAgZm9yIChpPTA7aTxwdWxzZXNMZWZ0O2krKykKICAg
IHsKKyAgICAgIG9wdXNfdmFsMTYgUnh5LCBSeXk7CiAgICAgICBpbnQgYmVzdF9pZDsKLSAgICAg
IG9wdXNfdmFsMzIgYmVzdF9udW0gPSAtVkVSWV9MQVJHRTE2OwotICAgICAgb3B1c192YWwxNiBi
ZXN0X2RlbiA9IDA7CisgICAgICBvcHVzX3ZhbDMyIGJlc3RfbnVtOworICAgICAgb3B1c192YWwx
NiBiZXN0X2RlbjsKICNpZmRlZiBGSVhFRF9QT0lOVAogICAgICAgaW50IHJzaGlmdDsKICNlbmRp
ZgpAQCAtMjcyLDkgKzI2MiwyMiBAQCB1bnNpZ25lZCBhbGdfcXVhbnQoY2VsdF9ub3JtICpYLCBp
bnQgTiwgaW50IEssIGludCBzcHJlYWQsIGludCBCLCBlY19lbmMgKmVuYwogICAgICAgLyogVGhl
IHNxdWFyZWQgbWFnbml0dWRlIHRlcm0gZ2V0cyBhZGRlZCBhbnl3YXksIHNvIHdlIG1pZ2h0IGFz
IHdlbGwKICAgICAgICAgIGFkZCBpdCBvdXRzaWRlIHRoZSBsb29wICovCiAgICAgICB5eSA9IEFE
RDE2KHl5LCAxKTsKLSAgICAgIGo9MDsKKworICAgICAgLyogQ2FsY3VsYXRpb25zIGZvciBwb3Np
dGlvbiAwIGFyZSBvdXQgb2YgdGhlIGxvb3AsIGluIHBhcnQgdG8gcmVkdWNlCisgICAgICAgICBt
aXNwcmVkaWN0ZWQgYnJhbmNoZXMgKHNpbmNlIHRoZSBpZiBjb25kaXRpb24gaXMgdXN1YWxseSBm
YWxzZSkKKyAgICAgICAgIGluIHRoZSBsb29wLiAqLworICAgICAgLyogVGVtcG9yYXJ5IHN1bXMg
b2YgdGhlIG5ldyBwdWxzZShzKSAqLworICAgICAgUnh5ID0gRVhUUkFDVDE2KFNIUjMyKEFERDMy
KHh5LCBFWFRFTkQzMihYWzBdKSkscnNoaWZ0KSk7CisgICAgICAvKiBXZSdyZSBtdWx0aXBseWlu
ZyB5W2pdIGJ5IHR3byBzbyB3ZSBkb24ndCBoYXZlIHRvIGRvIGl0IGhlcmUgKi8KKyAgICAgIFJ5
eSA9IEFERDE2KHl5LCB5WzBdKTsKKworICAgICAgLyogQXBwcm94aW1hdGUgc2NvcmU6IHdlIG1h
eGltaXNlIFJ4eS9zcXJ0KFJ5eSkgKHdlJ3JlIGd1YXJhbnRlZWQgdGhhdAorICAgICAgICAgUnh5
IGlzIHBvc2l0aXZlIGJlY2F1c2UgdGhlIHNpZ24gaXMgcHJlLWNvbXB1dGVkKSAqLworICAgICAg
Unh5ID0gTVVMVDE2XzE2X1ExNShSeHksUnh5KTsKKyAgICAgIGJlc3RfZGVuID0gUnl5OworICAg
ICAgYmVzdF9udW0gPSBSeHk7CisgICAgICBqPTE7CiAgICAgICBkbyB7Ci0gICAgICAgICBvcHVz
X3ZhbDE2IFJ4eSwgUnl5OwogICAgICAgICAgLyogVGVtcG9yYXJ5IHN1bXMgb2YgdGhlIG5ldyBw
dWxzZShzKSAqLwogICAgICAgICAgUnh5ID0gRVhUUkFDVDE2KFNIUjMyKEFERDMyKHh5LCBFWFRF
TkQzMihYW2pdKSkscnNoaWZ0KSk7CiAgICAgICAgICAvKiBXZSdyZSBtdWx0aXBseWluZyB5W2pd
IGJ5IHR3byBzbyB3ZSBkb24ndCBoYXZlIHRvIGRvIGl0IGhlcmUgKi8KQEAgLTI4NSw4ICsyODgs
MTEgQEAgdW5zaWduZWQgYWxnX3F1YW50KGNlbHRfbm9ybSAqWCwgaW50IE4sIGludCBLLCBpbnQg
c3ByZWFkLCBpbnQgQiwgZWNfZW5jICplbmMKICAgICAgICAgIFJ4eSA9IE1VTFQxNl8xNl9RMTUo
Unh5LFJ4eSk7CiAgICAgICAgICAvKiBUaGUgaWRlYSBpcyB0byBjaGVjayBmb3IgbnVtL2RlbiA+
PSBiZXN0X251bS9iZXN0X2RlbiwgYnV0IHRoYXQgd2F5CiAgICAgICAgICAgICB3ZSBjYW4gZG8g
aXQgd2l0aG91dCBhbnkgZGl2aXNpb24gKi8KLSAgICAgICAgIC8qIE9QVDogTWFrZSBzdXJlIHRv
IHVzZSBjb25kaXRpb25hbCBtb3ZlcyBoZXJlICovCi0gICAgICAgICBpZiAoTVVMVDE2XzE2KGJl
c3RfZGVuLCBSeHkpID4gTVVMVDE2XzE2KFJ5eSwgYmVzdF9udW0pKQorICAgICAgICAgLyogT1BU
OiBJdCdzIG5vdCBjbGVhciB3aGV0aGVyIGEgY21vdiBpcyBmYXN0ZXIgdGhhbiBhIGJyYW5jaCBo
ZXJlCisgICAgICAgICAgICBzaW5jZSB0aGUgY29uZGl0aW9uIGlzIG1vcmUgb2Z0ZW4gZmFsc2Ug
dGhhbiB0cnVlIGFuZCB1c2luZworICAgICAgICAgICAgYSBjbW92IGludHJvZHVjZXMgZGF0YSBk
ZXBlbmRlbmNpZXMgYWNyb3NzIGl0ZXJhdGlvbnMuIFRoZSBvcHRpbWFsCisgICAgICAgICAgICBj
aG9pY2UgbWF5IGJlIGFyY2hpdGVjdHVyZS1kZXBlbmRlbnQuICovCisgICAgICAgICBpZiAob3B1
c191bmxpa2VseShNVUxUMTZfMTYoYmVzdF9kZW4sIFJ4eSkgPiBNVUxUMTZfMTYoUnl5LCBiZXN0
X251bSkpKQogICAgICAgICAgewogICAgICAgICAgICAgYmVzdF9kZW4gPSBSeXk7CiAgICAgICAg
ICAgICBiZXN0X251bSA9IFJ4eTsKQEAgLTMwMSwyMyArMzA3LDQ3IEBAIHVuc2lnbmVkIGFsZ19x
dWFudChjZWx0X25vcm0gKlgsIGludCBOLCBpbnQgSywgaW50IHNwcmVhZCwgaW50IEIsIGVjX2Vu
YyAqZW5jCiAKICAgICAgIC8qIE9ubHkgbm93IHRoYXQgd2UndmUgbWFkZSB0aGUgZmluYWwgY2hv
aWNlLCB1cGRhdGUgeS9peSAqLwogICAgICAgLyogTXVsdGlwbHlpbmcgeVtqXSBieSAyIHNvIHdl
IGRvbid0IGhhdmUgdG8gZG8gaXQgZXZlcnl3aGVyZSBlbHNlICovCi0gICAgICB5W2Jlc3RfaWRd
ICs9IDIqczsKKyAgICAgIHlbYmVzdF9pZF0gKz0gMjsKICAgICAgIGl5W2Jlc3RfaWRdKys7CiAg
ICB9CiAKICAgIC8qIFB1dCB0aGUgb3JpZ2luYWwgc2lnbiBiYWNrICovCiAgICBqPTA7CiAgICBk
byB7Ci0gICAgICBYW2pdID0gTVVMVDE2XzE2KHNpZ254W2pdLFhbal0pOwotICAgICAgaWYgKHNp
Z254W2pdIDwgMCkKLSAgICAgICAgIGl5W2pdID0gLWl5W2pdOworICAgICAgLyppeVtqXSA9IHNp
Z254W2pdID8gLWl5W2pdIDogaXlbal07Ki8KKyAgICAgIC8qIE9QVDogVGhlIGlzIG1vcmUgbGlr
ZWx5IHRvIGJlIGNvbXBpbGVkIHdpdGhvdXQgYSBicmFuY2ggdGhhbiB0aGUgY29kZSBhYm92ZQor
ICAgICAgICAgYnV0IGhhcyB0aGUgc2FtZSBwZXJmb3JtYW5jZSBvdGhlcndpc2UuICovCisgICAg
ICBpeVtqXSA9IChpeVtqXV4tc2lnbnhbal0pICsgc2lnbnhbal07CiAgICB9IHdoaWxlICgrK2o8
Tik7CisgICBSRVNUT1JFX1NUQUNLOworICAgcmV0dXJuIHl5OworfQorCit1bnNpZ25lZCBhbGdf
cXVhbnQoY2VsdF9ub3JtICpYLCBpbnQgTiwgaW50IEssIGludCBzcHJlYWQsIGludCBCLCBlY19l
bmMgKmVuYywKKyAgICAgIG9wdXNfdmFsMTYgZ2FpbiwgaW50IHJlc3ludGgsIGludCBhcmNoKQor
eworICAgVkFSREVDTChpbnQsIGl5KTsKKyAgIG9wdXNfdmFsMTYgeXk7CisgICB1bnNpZ25lZCBj
b2xsYXBzZV9tYXNrOworICAgU0FWRV9TVEFDSzsKKworICAgY2VsdF9hc3NlcnQyKEs+MCwgImFs
Z19xdWFudCgpIG5lZWRzIGF0IGxlYXN0IG9uZSBwdWxzZSIpOworICAgY2VsdF9hc3NlcnQyKE4+
MSwgImFsZ19xdWFudCgpIG5lZWRzIGF0IGxlYXN0IHR3byBkaW1lbnNpb25zIik7CisKKyAgIC8q
IENvdmVycyB2ZWN0b3JpemF0aW9uIGJ5IHVwIHRvIDQuICovCisgICBBTExPQyhpeSwgTiszLCBp
bnQpOworCisgICBleHBfcm90YXRpb24oWCwgTiwgMSwgQiwgSywgc3ByZWFkKTsKKworICAgeXkg
PSBvcF9wdnFfc2VhcmNoKFgsIGl5LCBLLCBOLCBhcmNoKTsKKwogICAgZW5jb2RlX3B1bHNlcyhp
eSwgTiwgSywgZW5jKTsKIAotI2lmZGVmIFJFU1lOVEgKLSAgIG5vcm1hbGlzZV9yZXNpZHVhbChp
eSwgWCwgTiwgeXksIGdhaW4pOwotICAgZXhwX3JvdGF0aW9uKFgsIE4sIC0xLCBCLCBLLCBzcHJl
YWQpOwotI2VuZGlmCisgICBpZiAocmVzeW50aCkKKyAgIHsKKyAgICAgIG5vcm1hbGlzZV9yZXNp
ZHVhbChpeSwgWCwgTiwgeXksIGdhaW4pOworICAgICAgZXhwX3JvdGF0aW9uKFgsIE4sIC0xLCBC
LCBLLCBzcHJlYWQpOworICAgfQogCiAgICBjb2xsYXBzZV9tYXNrID0gZXh0cmFjdF9jb2xsYXBz
ZV9tYXNrKGl5LCBOLCBCKTsKICAgIFJFU1RPUkVfU1RBQ0s7CkBAIC00MDEsNyArNDMxLDcgQEAg
aW50IHN0ZXJlb19pdGhldGEoY29uc3QgY2VsdF9ub3JtICpYLCBjb25zdCBjZWx0X25vcm0gKlks
IGludCBzdGVyZW8sIGludCBOLCBpbnQKICAgIC8qIDAuNjM2NjIgPSAyL3BpICovCiAgICBpdGhl
dGEgPSBNVUxUMTZfMTZfUTE1KFFDT05TVDE2KDAuNjM2NjJmLDE1KSxjZWx0X2F0YW4ycChzaWRl
LCBtaWQpKTsKICNlbHNlCi0gICBpdGhldGEgPSAoaW50KWZsb29yKC41ZisxNjM4NCowLjYzNjYy
ZiphdGFuMihzaWRlLG1pZCkpOworICAgaXRoZXRhID0gKGludClmbG9vciguNWYrMTYzODQqMC42
MzY2MmYqZmFzdF9hdGFuMmYoc2lkZSxtaWQpKTsKICNlbmRpZgogCiAgICByZXR1cm4gaXRoZXRh
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9jZWx0L3ZxLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdnEuaAppbmRleCA1Y2ZjYmU1MGVhMDVlMDcy
MWQxMTRhMjgzMzM5YjVkY2E0OTI4NTI3Li4wZGZlNmFmMDU4MjM5ODZjYWQyN2YxMWVhZDYwMTI1
MmEzMDQ4NTYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdnEuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQvdnEuaApAQCAtMzcsMTAg
KzM3LDIyIEBACiAjaW5jbHVkZSAiZW50ZGVjLmgiCiAjaW5jbHVkZSAibW9kZXMuaCIKIAorI2lm
IChkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpICYmICFkZWZpbmVkKEZJWEVEX1BPSU5U
KSkKKyNpbmNsdWRlICJ4ODYvdnFfc3NlLmgiCisjZW5kaWYKKwogI2lmIGRlZmluZWQoTUlQU3Ix
X0FTTSkKICNpbmNsdWRlICJtaXBzL3ZxX21pcHNyMS5oIgogI2VuZGlmCiAKK3ZvaWQgZXhwX3Jv
dGF0aW9uKGNlbHRfbm9ybSAqWCwgaW50IGxlbiwgaW50IGRpciwgaW50IHN0cmlkZSwgaW50IEss
IGludCBzcHJlYWQpOworCitvcHVzX3ZhbDE2IG9wX3B2cV9zZWFyY2hfYyhjZWx0X25vcm0gKlgs
IGludCAqaXksIGludCBLLCBpbnQgTiwgaW50IGFyY2gpOworCisjaWYgIWRlZmluZWQoT1ZFUlJJ
REVfT1BfUFZRX1NFQVJDSCkKKyNkZWZpbmUgb3BfcHZxX3NlYXJjaCh4LCBpeSwgSywgTiwgYXJj
aCkgXAorICAgIChvcF9wdnFfc2VhcmNoX2MoeCwgaXksIEssIE4sIGFyY2gpKQorI2VuZGlmCiAK
IC8qKiBBbGdlYnJhaWMgcHVsc2UtdmVjdG9yIHF1YW50aXNlci4gVGhlIHNpZ25hbCB4IGlzIHJl
cGxhY2VkIGJ5IHRoZSBzdW0gb2YKICAgKiB0aGUgcGl0Y2ggYW5kIGEgY29tYmluYXRpb24gb2Yg
cHVsc2VzIHN1Y2ggdGhhdCBpdHMgbm9ybSBpcyBzdGlsbCBlcXVhbApAQCAtNTEsMTIgKzYzLDgg
QEAKICAqIEBwYXJhbSBlbmMgRW50cm9weSBlbmNvZGVyIHN0YXRlCiAgKiBAcmV0IEEgbWFzayBp
bmRpY2F0aW5nIHdoaWNoIGJsb2NrcyBpbiB0aGUgYmFuZCByZWNlaXZlZCBwdWxzZXMKICovCi11
bnNpZ25lZCBhbGdfcXVhbnQoY2VsdF9ub3JtICpYLCBpbnQgTiwgaW50IEssIGludCBzcHJlYWQs
IGludCBCLAotICAgICAgZWNfZW5jICplbmMKLSNpZmRlZiBSRVNZTlRICi0gICAgICAsIG9wdXNf
dmFsMTYgZ2FpbgotI2VuZGlmCi0gICAgICApOwordW5zaWduZWQgYWxnX3F1YW50KGNlbHRfbm9y
bSAqWCwgaW50IE4sIGludCBLLCBpbnQgc3ByZWFkLCBpbnQgQiwgZWNfZW5jICplbmMsCisgICAg
ICBvcHVzX3ZhbDE2IGdhaW4sIGludCByZXN5bnRoLCBpbnQgYXJjaCk7CiAKIC8qKiBBbGdlYnJh
aWMgcHVsc2UgZGVjb2RlcgogICogQHBhcmFtIFggRGVjb2RlZCBub3JtYWxpc2VkIHNwZWN0cnVt
IChyZXR1cm5lZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvY2VsdF9scGNfc3NlLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2NlbHQveDg2
L2NlbHRfbHBjX3NzZS5jCmluZGV4IDY3ZTU1OTJhY2YzY2E2YjdmODE3ZDZkZDlmMTdkOTlkZTFk
YTI1YjAuLjU0Nzg1Njg4NDlhYTQyZWE3OGRiNmRiMjY4MmFiZjdlZDE1MGZmYTYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC94ODYvY2VsdF9scGNfc3NlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni9jZWx0X2xwY19zc2UuYwpA
QCAtNDAsNjUgKzQwLDIzIEBACiAKICNpZiBkZWZpbmVkKEZJWEVEX1BPSU5UKQogCi12b2lkIGNl
bHRfZmlyX3NzZTRfMShjb25zdCBvcHVzX3ZhbDE2ICpfeCwKK3ZvaWQgY2VsdF9maXJfc3NlNF8x
KGNvbnN0IG9wdXNfdmFsMTYgKngsCiAgICAgICAgICBjb25zdCBvcHVzX3ZhbDE2ICpudW0sCi0g
ICAgICAgICBvcHVzX3ZhbDE2ICpfeSwKKyAgICAgICAgIG9wdXNfdmFsMTYgKnksCiAgICAgICAg
ICBpbnQgTiwKICAgICAgICAgIGludCBvcmQsCi0gICAgICAgICBvcHVzX3ZhbDE2ICptZW0sCiAg
ICAgICAgICBpbnQgYXJjaCkKIHsKICAgICBpbnQgaSxqOwogICAgIFZBUkRFQ0wob3B1c192YWwx
Niwgcm51bSk7Ci0gICAgVkFSREVDTChvcHVzX3ZhbDE2LCB4KTsKIAogICAgIF9fbTEyOGkgdmVj
Tm9BOwogICAgIG9wdXNfaW50MzIgbm9BIDsKICAgICBTQVZFX1NUQUNLOwogCiAgICBBTExPQyhy
bnVtLCBvcmQsIG9wdXNfdmFsMTYpOwotICAgQUxMT0MoeCwgTitvcmQsIG9wdXNfdmFsMTYpOwog
ICAgZm9yKGk9MDtpPG9yZDtpKyspCiAgICAgICBybnVtW2ldID0gbnVtW29yZC1pLTFdOwotICAg
Zm9yKGk9MDtpPG9yZDtpKyspCi0gICAgICB4W2ldID0gbWVtW29yZC1pLTFdOwotCi0gICBmb3Ig
KGk9MDtpPE4tNztpKz04KQotICAgewotICAgICAgIHhbaStvcmQgIF09X3hbaSAgXTsKLSAgICAg
ICB4W2krb3JkKzFdPV94W2krMV07Ci0gICAgICAgeFtpK29yZCsyXT1feFtpKzJdOwotICAgICAg
IHhbaStvcmQrM109X3hbaSszXTsKLSAgICAgICB4W2krb3JkKzRdPV94W2krNF07Ci0gICAgICAg
eFtpK29yZCs1XT1feFtpKzVdOwotICAgICAgIHhbaStvcmQrNl09X3hbaSs2XTsKLSAgICAgICB4
W2krb3JkKzddPV94W2krN107Ci0gICB9Ci0KLSAgIGZvciAoO2k8Ti0zO2krPTQpCi0gICB7Ci0g
ICAgICAgeFtpK29yZCAgXT1feFtpICBdOwotICAgICAgIHhbaStvcmQrMV09X3hbaSsxXTsKLSAg
ICAgICB4W2krb3JkKzJdPV94W2krMl07Ci0gICAgICAgeFtpK29yZCszXT1feFtpKzNdOwotICAg
fQotCi0gICBmb3IgKDtpPE47aSsrKQotICAgICAgICAgeFtpK29yZF09X3hbaV07Ci0KLSAgIGZv
cihpPTA7aTxvcmQ7aSsrKQotICAgICAgbWVtW2ldID0gX3hbTi1pLTFdOwotI2lmZGVmIFNNQUxM
X0ZPT1RQUklOVAotICAgZm9yIChpPTA7aTxOO2krKykKLSAgIHsKLSAgICAgIG9wdXNfdmFsMzIg
c3VtID0gU0hMMzIoRVhURU5EMzIoX3hbaV0pLCBTSUdfU0hJRlQpOwotICAgICAgZm9yIChqPTA7
ajxvcmQ7aisrKQotICAgICAgewotICAgICAgICAgc3VtID0gTUFDMTZfMTYoc3VtLHJudW1bal0s
eFtpK2pdKTsKLSAgICAgIH0KLSAgICAgIF95W2ldID0gU0FUVVJBVEUxNihQU0hSMzIoc3VtLCBT
SUdfU0hJRlQpKTsKLSAgIH0KLSNlbHNlCiAgICBub0EgPSBFWFRFTkQzMigxKSA8PCBTSUdfU0hJ
RlQgPj4gMTsKICAgIHZlY05vQSA9IF9tbV9zZXRfZXBpMzIobm9BLCBub0EsIG5vQSwgbm9BKTsK
IApAQCAtMTA3LDI1ICs2NSwyNCBAQCB2b2lkIGNlbHRfZmlyX3NzZTRfMShjb25zdCBvcHVzX3Zh
bDE2ICpfeCwKICAgICAgIG9wdXNfdmFsMzIgc3Vtc1s0XSA9IHswfTsKICAgICAgIF9fbTEyOGkg
dmVjU3VtLCB2ZWNYOwogCi0gICAgICB4Y29ycl9rZXJuZWwocm51bSwgeCtpLCBzdW1zLCBvcmQs
IGFyY2gpOworICAgICAgeGNvcnJfa2VybmVsKHJudW0sIHgraS1vcmQsIHN1bXMsIG9yZCwgYXJj
aCk7CiAKICAgICAgIHZlY1N1bSA9IF9tbV9sb2FkdV9zaTEyOCgoX19tMTI4aSAqKXN1bXMpOwog
ICAgICAgdmVjU3VtID0gX21tX2FkZF9lcGkzMih2ZWNTdW0sIHZlY05vQSk7CiAgICAgICB2ZWNT
dW0gPSBfbW1fc3JhaV9lcGkzMih2ZWNTdW0sIFNJR19TSElGVCk7Ci0gICAgICB2ZWNYID0gT1Bf
Q1ZURVBJMTZfRVBJMzJfTTY0KF94ICsgaSk7CisgICAgICB2ZWNYID0gT1BfQ1ZURVBJMTZfRVBJ
MzJfTTY0KHggKyBpKTsKICAgICAgIHZlY1N1bSA9IF9tbV9hZGRfZXBpMzIodmVjU3VtLCB2ZWNY
KTsKICAgICAgIHZlY1N1bSA9IF9tbV9wYWNrc19lcGkzMih2ZWNTdW0sIHZlY1N1bSk7Ci0gICAg
ICBfbW1fc3RvcmVsX2VwaTY0KChfX20xMjhpICopKF95ICsgaSksIHZlY1N1bSk7CisgICAgICBf
bW1fc3RvcmVsX2VwaTY0KChfX20xMjhpICopKHkgKyBpKSwgdmVjU3VtKTsKICAgIH0KICAgIGZv
ciAoO2k8TjtpKyspCiAgICB7CiAgICAgICBvcHVzX3ZhbDMyIHN1bSA9IDA7CiAgICAgICBmb3Ig
KGo9MDtqPG9yZDtqKyspCi0gICAgICAgICBzdW0gPSBNQUMxNl8xNihzdW0sIHJudW1bal0sIHhb
aSArIGpdKTsKLSAgICAgIF95W2ldID0gU0FUVVJBVEUxNihBREQzMihFWFRFTkQzMihfeFtpXSks
IFBTSFIzMihzdW0sIFNJR19TSElGVCkpKTsKKyAgICAgICAgIHN1bSA9IE1BQzE2XzE2KHN1bSwg
cm51bVtqXSwgeFtpK2otb3JkXSk7CisgICAgICB5W2ldID0gU0FUVVJBVEUxNihBREQzMihFWFRF
TkQzMih4W2ldKSwgUFNIUjMyKHN1bSwgU0lHX1NISUZUKSkpOwogICAgfQogCi0jZW5kaWYKICAg
IFJFU1RPUkVfU1RBQ0s7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvY2VsdF9scGNfc3NlLmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L2NlbHQveDg2L2NlbHRfbHBjX3NzZS5oCmluZGV4IGM1ZWM3OTZlZDUyNWUwZmY2MTRiNjViMWQz
ZjM5MjhlN2M5NDFmM2UuLjdkMWVjZjc1MzMyODJkYmM3ODJmZTViZTU0NTkzZjRlMjM1YTQwZDUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvY2VsdC94ODYvY2VsdF9scGNfc3NlLmgKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni9jZWx0X2xw
Y19zc2UuaApAQCAtNDEsMTIgKzQxLDExIEBAIHZvaWQgY2VsdF9maXJfc3NlNF8xKAogICAgICAg
ICAgb3B1c192YWwxNiAqeSwKICAgICAgICAgIGludCBOLAogICAgICAgICAgaW50IG9yZCwKLSAg
ICAgICAgIG9wdXNfdmFsMTYgKm1lbSwKICAgICAgICAgIGludCBhcmNoKTsKIAogI2lmIGRlZmlu
ZWQoT1BVU19YODZfUFJFU1VNRV9TU0U0XzEpCi0jZGVmaW5lIGNlbHRfZmlyKHgsIG51bSwgeSwg
Tiwgb3JkLCBtZW0sIGFyY2gpIFwKLSAgICAoKHZvaWQpYXJjaCwgY2VsdF9maXJfc3NlNF8xKHgs
IG51bSwgeSwgTiwgb3JkLCBtZW0sIGFyY2gpKQorI2RlZmluZSBjZWx0X2Zpcih4LCBudW0sIHks
IE4sIG9yZCwgYXJjaCkgXAorICAgICgodm9pZClhcmNoLCBjZWx0X2Zpcl9zc2U0XzEoeCwgbnVt
LCB5LCBOLCBvcmQsIGFyY2gpKQogCiAjZWxzZQogCkBAIC01NiwxMSArNTUsMTAgQEAgZXh0ZXJu
IHZvaWQgKCpjb25zdCBDRUxUX0ZJUl9JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCiAgICAgICAg
ICBvcHVzX3ZhbDE2ICp5LAogICAgICAgICAgaW50IE4sCiAgICAgICAgICBpbnQgb3JkLAotICAg
ICAgICAgb3B1c192YWwxNiAqbWVtLAogICAgICAgICAgaW50IGFyY2gpOwogCi0jICBkZWZpbmUg
Y2VsdF9maXIoeCwgbnVtLCB5LCBOLCBvcmQsIG1lbSwgYXJjaCkgXAotICAgICgoKkNFTFRfRklS
X0lNUExbKGFyY2gpICYgT1BVU19BUkNITUFTS10pKHgsIG51bSwgeSwgTiwgb3JkLCBtZW0sIGFy
Y2gpKQorIyAgZGVmaW5lIGNlbHRfZmlyKHgsIG51bSwgeSwgTiwgb3JkLCBhcmNoKSBcCisgICAg
KCgqQ0VMVF9GSVJfSU1QTFsoYXJjaCkgJiBPUFVTX0FSQ0hNQVNLXSkoeCwgbnVtLCB5LCBOLCBv
cmQsIGFyY2gpKQogCiAjZW5kaWYKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni92cV9zc2Uu
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvY2VsdC94ODYvdnFfc3NlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjRlZmU4ZjI0OWY4OTNlZDE2MDA0MGVj
ODI1YjJhNzY0N2UxOTJiYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvdnFfc3NlLmgKQEAg
LTAsMCArMSw1MCBAQAorLyogQ29weXJpZ2h0IChjKSAyMDE2ICBKZWFuLU1hcmMgVmFsaW4gKi8K
Ky8qCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKworICAgLSBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
UyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAgIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
Q09QWVJJR0hUIE9XTkVSCisgICBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAgIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAgIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgorICAgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgorICAgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcKKyAgIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwor
ICAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisqLworCisjaWZuZGVmIFZRX1NTRV9ICisjZGVmaW5lIFZRX1NTRV9ICisKKyNpZiBk
ZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpICYmICFkZWZpbmVkKEZJWEVEX1BPSU5UKQor
I2RlZmluZSBPVkVSUklERV9PUF9QVlFfU0VBUkNICisKK29wdXNfdmFsMTYgb3BfcHZxX3NlYXJj
aF9zc2UyKGNlbHRfbm9ybSAqX1gsIGludCAqaXksIGludCBLLCBpbnQgTiwgaW50IGFyY2gpOwor
CisjaWYgZGVmaW5lZChPUFVTX1g4Nl9QUkVTVU1FX1NTRTIpCisjZGVmaW5lIG9wX3B2cV9zZWFy
Y2goeCwgaXksIEssIE4sIGFyY2gpIFwKKyAgICAob3BfcHZxX3NlYXJjaF9zc2UyKHgsIGl5LCBL
LCBOLCBhcmNoKSkKKworI2Vsc2UKKworZXh0ZXJuIG9wdXNfdmFsMTYgKCpjb25zdCBPUF9QVlFf
U0VBUkNIX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKKyAgICAgIGNlbHRfbm9ybSAqX1gsIGlu
dCAqaXksIGludCBLLCBpbnQgTiwgaW50IGFyY2gpOworCisjICBkZWZpbmUgb3BfcHZxX3NlYXJj
aChYLCBpeSwgSywgTiwgYXJjaCkgXAorICAgICgoKk9QX1BWUV9TRUFSQ0hfSU1QTFsoYXJjaCkg
JiBPUFVTX0FSQ0hNQVNLXSkoWCwgaXksIEssIE4sIGFyY2gpKQorCisjZW5kaWYKKyNlbmRpZgor
CisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvdnFfc3NlMi5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni92cV9zc2Uy
LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNmEzMTc3MDM1OGI3ZDQxNjQ3MWUxNTc2ZGQ4NTJjOGIyMDg3OGJlNwot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYvdnFfc3NlMi5jCkBAIC0wLDAgKzEsMjE3IEBACisv
KiBDb3B5cmlnaHQgKGMpIDIwMDctMjAwOCBDU0lSTworICAgQ29weXJpZ2h0IChjKSAyMDA3LTIw
MDkgWGlwaC5PcmcgRm91bmRhdGlvbgorICAgQ29weXJpZ2h0IChjKSAyMDA3LTIwMTYgSmVhbi1N
YXJjIFZhbGluICovCisvKgorICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6
CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICAgTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisg
ICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lmZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVkZSA8eG1taW50cmluLmg+CisjaW5jbHVkZSA8
ZW1taW50cmluLmg+CisjaW5jbHVkZSAiY2VsdF9scGMuaCIKKyNpbmNsdWRlICJzdGFja19hbGxv
Yy5oIgorI2luY2x1ZGUgIm1hdGhvcHMuaCIKKyNpbmNsdWRlICJ2cS5oIgorI2luY2x1ZGUgIng4
NmNwdS5oIgorCisKKyNpZm5kZWYgRklYRURfUE9JTlQKKworb3B1c192YWwxNiBvcF9wdnFfc2Vh
cmNoX3NzZTIoY2VsdF9ub3JtICpfWCwgaW50ICppeSwgaW50IEssIGludCBOLCBpbnQgYXJjaCkK
K3sKKyAgIGludCBpLCBqOworICAgaW50IHB1bHNlc0xlZnQ7CisgICBmbG9hdCB4eSwgeXk7Cisg
ICBWQVJERUNMKGNlbHRfbm9ybSwgeSk7CisgICBWQVJERUNMKGNlbHRfbm9ybSwgWCk7CisgICBW
QVJERUNMKGZsb2F0LCBzaWdueSk7CisgICBfX20xMjggc2lnbm1hc2s7CisgICBfX20xMjggc3Vt
czsKKyAgIF9fbTEyOGkgZm91cnM7CisgICBTQVZFX1NUQUNLOworCisgICAodm9pZClhcmNoOwor
ICAgLyogQWxsIGJpdHMgc2V0IHRvIHplcm8sIGV4Y2VwdCBmb3IgdGhlIHNpZ24gYml0LiAqLwor
ICAgc2lnbm1hc2sgPSBfbW1fc2V0X3BzMSgtMC5mKTsKKyAgIGZvdXJzID0gX21tX3NldF9lcGkz
Mig0LCA0LCA0LCA0KTsKKyAgIEFMTE9DKHksIE4rMywgY2VsdF9ub3JtKTsKKyAgIEFMTE9DKFgs
IE4rMywgY2VsdF9ub3JtKTsKKyAgIEFMTE9DKHNpZ255LCBOKzMsIGZsb2F0KTsKKworICAgT1BV
U19DT1BZKFgsIF9YLCBOKTsKKyAgIFhbTl0gPSBYW04rMV0gPSBYW04rMl0gPSAwOworICAgc3Vt
cyA9IF9tbV9zZXR6ZXJvX3BzKCk7CisgICBmb3IgKGo9MDtqPE47ais9NCkKKyAgIHsKKyAgICAg
IF9fbTEyOCB4NCwgczQ7CisgICAgICB4NCA9IF9tbV9sb2FkdV9wcygmWFtqXSk7CisgICAgICBz
NCA9IF9tbV9jbXBsdF9wcyh4NCwgX21tX3NldHplcm9fcHMoKSk7CisgICAgICAvKiBHZXQgcmlk
IG9mIHRoZSBzaWduICovCisgICAgICB4NCA9IF9tbV9hbmRub3RfcHMoc2lnbm1hc2ssIHg0KTsK
KyAgICAgIHN1bXMgPSBfbW1fYWRkX3BzKHN1bXMsIHg0KTsKKyAgICAgIC8qIENsZWFyIHkgYW5k
IGl5IGluIGNhc2Ugd2UgZG9uJ3QgZG8gdGhlIHByb2plY3Rpb24uICovCisgICAgICBfbW1fc3Rv
cmV1X3BzKCZ5W2pdLCBfbW1fc2V0emVyb19wcygpKTsKKyAgICAgIF9tbV9zdG9yZXVfc2kxMjgo
KF9fbTEyOGkqKSZpeVtqXSwgX21tX3NldHplcm9fc2kxMjgoKSk7CisgICAgICBfbW1fc3RvcmV1
X3BzKCZYW2pdLCB4NCk7CisgICAgICBfbW1fc3RvcmV1X3BzKCZzaWdueVtqXSwgczQpOworICAg
fQorICAgc3VtcyA9IF9tbV9hZGRfcHMoc3VtcywgX21tX3NodWZmbGVfcHMoc3Vtcywgc3Vtcywg
X01NX1NIVUZGTEUoMSwgMCwgMywgMikpKTsKKyAgIHN1bXMgPSBfbW1fYWRkX3BzKHN1bXMsIF9t
bV9zaHVmZmxlX3BzKHN1bXMsIHN1bXMsIF9NTV9TSFVGRkxFKDIsIDMsIDAsIDEpKSk7CisKKyAg
IHh5ID0geXkgPSAwOworCisgICBwdWxzZXNMZWZ0ID0gSzsKKworICAgLyogRG8gYSBwcmUtc2Vh
cmNoIGJ5IHByb2plY3Rpbmcgb24gdGhlIHB5cmFtaWQgKi8KKyAgIGlmIChLID4gKE4+PjEpKQor
ICAgeworICAgICAgX19tMTI4aSBwdWxzZXNfc3VtOworICAgICAgX19tMTI4IHl5NCwgeHk0Owor
ICAgICAgX19tMTI4IHJjcDQ7CisgICAgICBvcHVzX3ZhbDMyIHN1bSA9IF9tbV9jdnRzc19mMzIo
c3Vtcyk7CisgICAgICAvKiBJZiBYIGlzIHRvbyBzbWFsbCwganVzdCByZXBsYWNlIGl0IHdpdGgg
YSBwdWxzZSBhdCAwICovCisgICAgICAvKiBQcmV2ZW50cyBpbmZpbml0aWVzIGFuZCBOYU5zIGZy
b20gY2F1c2luZyB0b28gbWFueSBwdWxzZXMKKyAgICAgICAgIHRvIGJlIGFsbG9jYXRlZC4gNjQg
aXMgYW4gYXBwcm94aW1hdGlvbiBvZiBpbmZpbml0eSBoZXJlLiAqLworICAgICAgaWYgKCEoc3Vt
ID4gRVBTSUxPTiAmJiBzdW0gPCA2NCkpCisgICAgICB7CisgICAgICAgICBYWzBdID0gUUNPTlNU
MTYoMS5mLDE0KTsKKyAgICAgICAgIGo9MTsgZG8KKyAgICAgICAgICAgIFhbal09MDsKKyAgICAg
ICAgIHdoaWxlICgrK2o8Tik7CisgICAgICAgICBzdW1zID0gX21tX3NldF9wczEoMS5mKTsKKyAg
ICAgIH0KKyAgICAgIC8qIFVzaW5nIEsrZSB3aXRoIGUgPCAxIGd1YXJhbnRlZXMgd2UgY2Fubm90
IGdldCBtb3JlIHRoYW4gSyBwdWxzZXMuICovCisgICAgICByY3A0ID0gX21tX211bF9wcyhfbW1f
c2V0X3BzMSgoZmxvYXQpKEsrLjgpKSwgX21tX3JjcF9wcyhzdW1zKSk7CisgICAgICB4eTQgPSB5
eTQgPSBfbW1fc2V0emVyb19wcygpOworICAgICAgcHVsc2VzX3N1bSA9IF9tbV9zZXR6ZXJvX3Np
MTI4KCk7CisgICAgICBmb3IgKGo9MDtqPE47ais9NCkKKyAgICAgIHsKKyAgICAgICAgIF9fbTEy
OCByeDQsIHg0LCB5NDsKKyAgICAgICAgIF9fbTEyOGkgaXk0OworICAgICAgICAgeDQgPSBfbW1f
bG9hZHVfcHMoJlhbal0pOworICAgICAgICAgcng0ID0gX21tX211bF9wcyh4NCwgcmNwNCk7Cisg
ICAgICAgICBpeTQgPSBfbW1fY3Z0dHBzX2VwaTMyKHJ4NCk7CisgICAgICAgICBwdWxzZXNfc3Vt
ID0gX21tX2FkZF9lcGkzMihwdWxzZXNfc3VtLCBpeTQpOworICAgICAgICAgX21tX3N0b3JldV9z
aTEyOCgoX19tMTI4aSopJml5W2pdLCBpeTQpOworICAgICAgICAgeTQgPSBfbW1fY3Z0ZXBpMzJf
cHMoaXk0KTsKKyAgICAgICAgIHh5NCA9IF9tbV9hZGRfcHMoeHk0LCBfbW1fbXVsX3BzKHg0LCB5
NCkpOworICAgICAgICAgeXk0ID0gX21tX2FkZF9wcyh5eTQsIF9tbV9tdWxfcHMoeTQsIHk0KSk7
CisgICAgICAgICAvKiBkb3VibGUgdGhlIHlbXSB2ZWN0b3Igc28gd2UgZG9uJ3QgaGF2ZSB0byBk
byBpdCBpbiB0aGUgc2VhcmNoIGxvb3AuICovCisgICAgICAgICBfbW1fc3RvcmV1X3BzKCZ5W2pd
LCBfbW1fYWRkX3BzKHk0LCB5NCkpOworICAgICAgfQorICAgICAgcHVsc2VzX3N1bSA9IF9tbV9h
ZGRfZXBpMzIocHVsc2VzX3N1bSwgX21tX3NodWZmbGVfZXBpMzIocHVsc2VzX3N1bSwgX01NX1NI
VUZGTEUoMSwgMCwgMywgMikpKTsKKyAgICAgIHB1bHNlc19zdW0gPSBfbW1fYWRkX2VwaTMyKHB1
bHNlc19zdW0sIF9tbV9zaHVmZmxlX2VwaTMyKHB1bHNlc19zdW0sIF9NTV9TSFVGRkxFKDIsIDMs
IDAsIDEpKSk7CisgICAgICBwdWxzZXNMZWZ0IC09IF9tbV9jdnRzaTEyOF9zaTMyKHB1bHNlc19z
dW0pOworICAgICAgeHk0ID0gX21tX2FkZF9wcyh4eTQsIF9tbV9zaHVmZmxlX3BzKHh5NCwgeHk0
LCBfTU1fU0hVRkZMRSgxLCAwLCAzLCAyKSkpOworICAgICAgeHk0ID0gX21tX2FkZF9wcyh4eTQs
IF9tbV9zaHVmZmxlX3BzKHh5NCwgeHk0LCBfTU1fU0hVRkZMRSgyLCAzLCAwLCAxKSkpOworICAg
ICAgeHkgPSBfbW1fY3Z0c3NfZjMyKHh5NCk7CisgICAgICB5eTQgPSBfbW1fYWRkX3BzKHl5NCwg
X21tX3NodWZmbGVfcHMoeXk0LCB5eTQsIF9NTV9TSFVGRkxFKDEsIDAsIDMsIDIpKSk7CisgICAg
ICB5eTQgPSBfbW1fYWRkX3BzKHl5NCwgX21tX3NodWZmbGVfcHMoeXk0LCB5eTQsIF9NTV9TSFVG
RkxFKDIsIDMsIDAsIDEpKSk7CisgICAgICB5eSA9IF9tbV9jdnRzc19mMzIoeXk0KTsKKyAgIH0K
KyAgIFhbTl0gPSBYW04rMV0gPSBYW04rMl0gPSAtMTAwOworICAgeVtOXSA9IHlbTisxXSA9IHlb
TisyXSA9IDEwMDsKKyAgIGNlbHRfYXNzZXJ0MihwdWxzZXNMZWZ0Pj0wLCAiQWxsb2NhdGVkIHRv
byBtYW55IHB1bHNlcyBpbiB0aGUgcXVpY2sgcGFzcyIpOworCisgICAvKiBUaGlzIHNob3VsZCBu
ZXZlciBoYXBwZW4sIGJ1dCBqdXN0IGluIGNhc2UgaXQgZG9lcyAoZS5nLiBvbiBzaWxlbmNlKQor
ICAgICAgd2UgZmlsbCB0aGUgZmlyc3QgYmluIHdpdGggcHVsc2VzLiAqLworICAgaWYgKHB1bHNl
c0xlZnQgPiBOKzMpCisgICB7CisgICAgICBvcHVzX3ZhbDE2IHRtcCA9IChvcHVzX3ZhbDE2KXB1
bHNlc0xlZnQ7CisgICAgICB5eSA9IE1BQzE2XzE2KHl5LCB0bXAsIHRtcCk7CisgICAgICB5eSA9
IE1BQzE2XzE2KHl5LCB0bXAsIHlbMF0pOworICAgICAgaXlbMF0gKz0gcHVsc2VzTGVmdDsKKyAg
ICAgIHB1bHNlc0xlZnQ9MDsKKyAgIH0KKworICAgZm9yIChpPTA7aTxwdWxzZXNMZWZ0O2krKykK
KyAgIHsKKyAgICAgIGludCBiZXN0X2lkOworICAgICAgX19tMTI4IHh5NCwgeXk0OworICAgICAg
X19tMTI4IG1heCwgbWF4MjsKKyAgICAgIF9fbTEyOGkgY291bnQ7CisgICAgICBfX20xMjhpIHBv
czsKKyAgICAgIC8qIFRoZSBzcXVhcmVkIG1hZ25pdHVkZSB0ZXJtIGdldHMgYWRkZWQgYW55d2F5
LCBzbyB3ZSBtaWdodCBhcyB3ZWxsCisgICAgICAgICBhZGQgaXQgb3V0c2lkZSB0aGUgbG9vcCAq
LworICAgICAgeXkgPSBBREQxNih5eSwgMSk7CisgICAgICB4eTQgPSBfbW1fbG9hZDFfcHMoJnh5
KTsKKyAgICAgIHl5NCA9IF9tbV9sb2FkMV9wcygmeXkpOworICAgICAgbWF4ID0gX21tX3NldHpl
cm9fcHMoKTsKKyAgICAgIHBvcyA9IF9tbV9zZXR6ZXJvX3NpMTI4KCk7CisgICAgICBjb3VudCA9
IF9tbV9zZXRfZXBpMzIoMywgMiwgMSwgMCk7CisgICAgICBmb3IgKGo9MDtqPE47ais9NCkKKyAg
ICAgIHsKKyAgICAgICAgIF9fbTEyOCB4NCwgeTQsIHI0OworICAgICAgICAgeDQgPSBfbW1fbG9h
ZHVfcHMoJlhbal0pOworICAgICAgICAgeTQgPSBfbW1fbG9hZHVfcHMoJnlbal0pOworICAgICAg
ICAgeDQgPSBfbW1fYWRkX3BzKHg0LCB4eTQpOworICAgICAgICAgeTQgPSBfbW1fYWRkX3BzKHk0
LCB5eTQpOworICAgICAgICAgeTQgPSBfbW1fcnNxcnRfcHMoeTQpOworICAgICAgICAgcjQgPSBf
bW1fbXVsX3BzKHg0LCB5NCk7CisgICAgICAgICAvKiBVcGRhdGUgdGhlIGluZGV4IG9mIHRoZSBt
YXguICovCisgICAgICAgICBwb3MgPSBfbW1fbWF4X2VwaTE2KHBvcywgX21tX2FuZF9zaTEyOChj
b3VudCwgX21tX2Nhc3Rwc19zaTEyOChfbW1fY21wZ3RfcHMocjQsIG1heCkpKSk7CisgICAgICAg
ICAvKiBVcGRhdGUgdGhlIG1heC4gKi8KKyAgICAgICAgIG1heCA9IF9tbV9tYXhfcHMobWF4LCBy
NCk7CisgICAgICAgICAvKiBVcGRhdGUgdGhlIGluZGljZXMgKCs0KSAqLworICAgICAgICAgY291
bnQgPSBfbW1fYWRkX2VwaTMyKGNvdW50LCBmb3Vycyk7CisgICAgICB9CisgICAgICAvKiBIb3Jp
em9udGFsIG1heCAqLworICAgICAgbWF4MiA9IF9tbV9tYXhfcHMobWF4LCBfbW1fc2h1ZmZsZV9w
cyhtYXgsIG1heCwgX01NX1NIVUZGTEUoMSwgMCwgMywgMikpKTsKKyAgICAgIG1heDIgPSBfbW1f
bWF4X3BzKG1heDIsIF9tbV9zaHVmZmxlX3BzKG1heDIsIG1heDIsIF9NTV9TSFVGRkxFKDIsIDMs
IDAsIDEpKSk7CisgICAgICAvKiBOb3cgdGhhdCBtYXgyIGNvbnRhaW5zIHRoZSBtYXggYXQgYWxs
IHBvc2l0aW9ucywgbG9vayBhdCB3aGljaCB2YWx1ZShzKSBvZiB0aGUKKyAgICAgICAgIHBhcnRp
YWwgbWF4IGlzIGVxdWFsIHRvIHRoZSBnbG9iYWwgbWF4LiAqLworICAgICAgcG9zID0gX21tX2Fu
ZF9zaTEyOChwb3MsIF9tbV9jYXN0cHNfc2kxMjgoX21tX2NtcGVxX3BzKG1heCwgbWF4MikpKTsK
KyAgICAgIHBvcyA9IF9tbV9tYXhfZXBpMTYocG9zLCBfbW1fdW5wYWNraGlfZXBpNjQocG9zLCBw
b3MpKTsKKyAgICAgIHBvcyA9IF9tbV9tYXhfZXBpMTYocG9zLCBfbW1fc2h1ZmZsZWxvX2VwaTE2
KHBvcywgX01NX1NIVUZGTEUoMSwgMCwgMywgMikpKTsKKyAgICAgIGJlc3RfaWQgPSBfbW1fY3Z0
c2kxMjhfc2kzMihwb3MpOworCisgICAgICAvKiBVcGRhdGluZyB0aGUgc3VtcyBvZiB0aGUgbmV3
IHB1bHNlKHMpICovCisgICAgICB4eSA9IEFERDMyKHh5LCBFWFRFTkQzMihYW2Jlc3RfaWRdKSk7
CisgICAgICAvKiBXZSdyZSBtdWx0aXBseWluZyB5W2pdIGJ5IHR3byBzbyB3ZSBkb24ndCBoYXZl
IHRvIGRvIGl0IGhlcmUgKi8KKyAgICAgIHl5ID0gQUREMTYoeXksIHlbYmVzdF9pZF0pOworCisg
ICAgICAvKiBPbmx5IG5vdyB0aGF0IHdlJ3ZlIG1hZGUgdGhlIGZpbmFsIGNob2ljZSwgdXBkYXRl
IHkvaXkgKi8KKyAgICAgIC8qIE11bHRpcGx5aW5nIHlbal0gYnkgMiBzbyB3ZSBkb24ndCBoYXZl
IHRvIGRvIGl0IGV2ZXJ5d2hlcmUgZWxzZSAqLworICAgICAgeVtiZXN0X2lkXSArPSAyOworICAg
ICAgaXlbYmVzdF9pZF0rKzsKKyAgIH0KKworICAgLyogUHV0IHRoZSBvcmlnaW5hbCBzaWduIGJh
Y2sgKi8KKyAgIGZvciAoaj0wO2o8TjtqKz00KQorICAgeworICAgICAgX19tMTI4aSB5NDsKKyAg
ICAgIF9fbTEyOGkgczQ7CisgICAgICB5NCA9IF9tbV9sb2FkdV9zaTEyOCgoX19tMTI4aSopJml5
W2pdKTsKKyAgICAgIHM0ID0gX21tX2Nhc3Rwc19zaTEyOChfbW1fbG9hZHVfcHMoJnNpZ255W2pd
KSk7CisgICAgICB5NCA9IF9tbV94b3Jfc2kxMjgoX21tX2FkZF9lcGkzMih5NCwgczQpLCBzNCk7
CisgICAgICBfbW1fc3RvcmV1X3NpMTI4KChfX20xMjhpKikmaXlbal0sIHk0KTsKKyAgIH0KKyAg
IFJFU1RPUkVfU1RBQ0s7CisgICByZXR1cm4geXk7Cit9CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9j
ZWx0L3g4Ni94ODZfY2VsdF9tYXAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvY2VsdC94ODYveDg2X2NlbHRfbWFwLmMKaW5kZXggNDdi
YTQxYjllZWZkNWUzZGNmNGU0ZjhmNTkwOGIxY2IwYzVlYWU1YS4uZDM5ZDg4ZWRlY2Q1NzE5Mzk3
MzE1NzAxYWUzYjkzZGJjZjBhNzY3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jZWx0L3g4Ni94ODZfY2VsdF9tYXAu
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2NlbHQveDg2L3g4Nl9jZWx0X21hcC5jCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVk
ZSAiY2VsdF9scGMuaCIKICNpbmNsdWRlICJwaXRjaC5oIgogI2luY2x1ZGUgInBpdGNoX3NzZS5o
IgorI2luY2x1ZGUgInZxLmgiCiAKICNpZiBkZWZpbmVkKE9QVVNfSEFWRV9SVENEKQogCkBAIC00
Niw3ICs0Nyw2IEBAIHZvaWQgKCpjb25zdCBDRUxUX0ZJUl9JTVBMW09QVVNfQVJDSE1BU0sgKyAx
XSkoCiAgICAgICAgICBvcHVzX3ZhbDE2ICAgICAgICp5LAogICAgICAgICAgaW50ICAgICAgICAg
ICAgICBOLAogICAgICAgICAgaW50ICAgICAgICAgICAgICBvcmQsCi0gICAgICAgICBvcHVzX3Zh
bDE2ICAgICAgICptZW0sCiAgICAgICAgICBpbnQgICAgICAgICAgICAgIGFyY2gKICkgPSB7CiAg
IGNlbHRfZmlyX2MsICAgICAgICAgICAgICAgIC8qIG5vbi1zc2UgKi8KQEAgLTE1MSw1ICsxNTEs
MTcgQEAgdm9pZCAoKmNvbnN0IENPTUJfRklMVEVSX0NPTlNUX0lNUExbT1BVU19BUkNITUFTSyAr
IDFdKSgKIAogI2VuZGlmCiAKKyNpZiBkZWZpbmVkKE9QVVNfWDg2X01BWV9IQVZFX1NTRTIpICYm
ICFkZWZpbmVkKE9QVVNfWDg2X1BSRVNVTUVfU1NFMikKK29wdXNfdmFsMTYgKCpjb25zdCBPUF9Q
VlFfU0VBUkNIX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKKyAgICAgIGNlbHRfbm9ybSAqX1gs
IGludCAqaXksIGludCBLLCBpbnQgTiwgaW50IGFyY2gKKykgPSB7CisgIG9wX3B2cV9zZWFyY2hf
YywgICAgICAgICAgICAgICAgLyogbm9uLXNzZSAqLworICBvcF9wdnFfc2VhcmNoX2MsCisgIE1B
WV9IQVZFX1NTRTIob3BfcHZxX3NlYXJjaCksCisgIE1BWV9IQVZFX1NTRTIob3BfcHZxX3NlYXJj
aCksCisgIE1BWV9IQVZFX1NTRTIob3BfcHZxX3NlYXJjaCkKK307CisjZW5kaWYKKwogI2VuZGlm
CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvY29uZmlndXJlLmFjIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jb25maWd1cmUuYWMKaW5kZXggYzUy
N2UzNjg0ZDZjZjVlYWNmYzI3ODA1YWZlM2UzZDdmODIzYTEwNy4uNWZmYTJkMzhlNzBjZTY1YzM5
MGQ5MDIwYjQxMTM0YjlmNTdkMjA5MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jb25maWd1cmUuYWMKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9jb25m
aWd1cmUuYWMKQEAgLTIyLDkgKzIyLDkgQEAgbTRfaWZkZWYoW0FNX1NJTEVOVF9SVUxFU10sIFtB
TV9TSUxFTlRfUlVMRVMoW3llc10pXSkKIAogIyBGb3IgbGlidG9vbC4KIGRubCBQbGVhc2UgdXBk
YXRlIHRoZXNlIGZvciByZWxlYXNlcy4KLU9QVVNfTFRfQ1VSUkVOVD01Ci1PUFVTX0xUX1JFVklT
SU9OPTMKLU9QVVNfTFRfQUdFPTUKK09QVVNfTFRfQ1VSUkVOVD02CitPUFVTX0xUX1JFVklTSU9O
PTEKK09QVVNfTFRfQUdFPTYKIAogQUNfU1VCU1QoT1BVU19MVF9DVVJSRU5UKQogQUNfU1VCU1Qo
T1BVU19MVF9SRVZJU0lPTikKQEAgLTQyMSwxMiArNDIxLDEyIEBAIEFDX0RFRlVOKFtPUFVTX1BB
VEhfTkUxMF0sCiAgICAgICBmaQogCiAgICAgICBBQ19NU0dfQ0hFQ0tJTkcoZm9yIE5FMTApCi0g
ICAgICBzYXZlX0NGTEFHUz0iJENGTEFHUyI7IENGTEFHUz0iJE5FMTBfQ0ZMQUdTIgotICAgICAg
c2F2ZV9MSUJTPSIkTElCUyI7IExJQlM9IiRORTEwX0xJQlMgJExJQk0iCisgICAgICBzYXZlX0NG
TEFHUz0iJENGTEFHUyI7IENGTEFHUz0iJENGTEFHUyAkTkUxMF9DRkxBR1MiCisgICAgICBzYXZl
X0xJQlM9IiRMSUJTIjsgTElCUz0iJExJQlMgJE5FMTBfTElCUyAkTElCTSIKICAgICAgIEFDX0xJ
TktfSUZFTFNFKAogICAgICAgICAgWwogICAgICAgICAgICAgQUNfTEFOR19QUk9HUkFNKAotICAg
ICAgICAgICAgICAgW1sjaW5jbHVkZSA8TkUxMF9pbml0Lmg+CisgICAgICAgICAgICAgICBbWyNp
bmNsdWRlIDxORTEwX2RzcC5oPgogICAgICAgICAgICAgICAgXV0sCiAgICAgICAgICAgICAgICBb
WwogICAgICAgICAgICAgICAgICAgbmUxMF9mZnRfY2ZnX2Zsb2F0MzJfdCBjZmc7CkBAIC03MTUs
NyArNzE1LDcgQEAgQVNfSUYoW3Rlc3QgeCIkZW5hYmxlX2ludHJpbnNpY3MiID0geCJ5ZXMiXSxb
CiAgICAgICAgICAgICBdXSldLAogICAgICAgICAgICAgW0FDX01TR19SRVNVTFQoW0MgbWV0aG9k
XSkKICAgICAgICAgICAgICAgICAgQUNfREVGSU5FKFtDUFVfSU5GT19CWV9DXSwgWzFdLCBbR2V0
IENQVSBJbmZvIGJ5IGMgbWV0aG9kXSldLAotICAgICAgICAgICAgW0FDX01TR19FUlJPUihbbm8g
c3VwcG9ydGVkIEdldCBDUFUgSW5mbyBtZXRob2QsIHBsZWFzZSBkaXNhYmxlIGludHJpbnNpY3Nd
KV0pXSldKQorICAgICAgICAgICAgW0FDX01TR19FUlJPUihbbm8gc3VwcG9ydGVkIEdldCBDUFUg
SW5mbyBtZXRob2QsIHBsZWFzZSBkaXNhYmxlIHJ1bi10aW1lIENQVSBjYXBhYmlsaXRpZXMgZGV0
ZWN0aW9uIG9yIGludHJpbnNpY3NdKV0pXSldKQogICAgXSwKICAgIFsKICAgICAgIEFDX01TR19X
QVJOKFtObyBpbnRyaW5zaWNzIHN1cHBvcnQgZm9yIHlvdXIgYXJjaGl0ZWN0dXJlXSkKQEAgLTc2
Nyw2ICs3NjcsMTUgQEAgQVNfSUYoW3Rlc3QgIiRlbmFibGVfZnV6emluZyIgPSAieWVzIl0sIFsK
ICAgQUNfREVGSU5FKFtGVVpaSU5HXSwgWzFdLCBbRnV6emluZ10pCiBdKQogCitBQ19BUkdfRU5B
QkxFKFtjaGVjay1hc21dLAorICAgIFtBU19IRUxQX1NUUklORyhbLS1lbmFibGUtY2hlY2stYXNt
XSwKKyAgICAgICAgICAgICAgICAgICAgW2VuYWJsZSBiaXQtZXhhY3RuZXNzIGNoZWNrcyBiZXR3
ZWVuIG9wdGltaXplZCBhbmQgYyBpbXBsZW1lbnRhdGlvbnNdKV0sLAorICAgIFtlbmFibGVfY2hl
Y2tfYXNtPW5vXSkKKworQVNfSUYoW3Rlc3QgIiRlbmFibGVfY2hlY2tfYXNtIiA9ICJ5ZXMiXSwg
WworICBBQ19ERUZJTkUoW09QVVNfQ0hFQ0tfQVNNXSwgWzFdLCBbUnVuIGJpdC1leGFjdG5lc3Mg
Y2hlY2tzIGJldHdlZW4gb3B0aW1pemVkIGFuZCBjIGltcGxlbWVudGF0aW9uc10pCitdKQorCiBB
Q19BUkdfRU5BQkxFKFthbWJpc29uaWNzXSwKICAgICBbQVNfSEVMUF9TVFJJTkcoWy0tZW5hYmxl
LWFtYmlzb25pY3NdLFtlbmFibGUgZXhwZXJpbWVudGFsIGFtYmlzb25pYyBlbmNvZGluZyBhbmQg
ZGVjb2Rpbmcgc3VwcG9ydF0pXSwsCiAgICAgW2VuYWJsZV9hbWJpc29uaWNzPW5vXSkKQEAgLTc4
MSw2ICs3OTAsNyBAQCBBQ19BUkdfRU5BQkxFKFtkb2NdLAogCiBBU19JRihbdGVzdCAiJGVuYWJs
ZV9kb2MiID0gInllcyJdLCBbCiAgIEFDX0NIRUNLX1BST0coSEFWRV9ET1hZR0VOLCBbZG94eWdl
bl0sIFt5ZXNdLCBbbm9dKQorICBBQ19DSEVDS19QUk9HKEhBVkVfRE9ULCBbZG90XSwgW3llc10s
IFtub10pCiBdLFsKICAgSEFWRV9ET1hZR0VOPW5vCiBdKQpAQCAtNzk0LDYgKzgwNCwxNSBAQCBB
Q19BUkdfRU5BQkxFKFtleHRyYS1wcm9ncmFtc10sCiBBTV9DT05ESVRJT05BTChbRVhUUkFfUFJP
R1JBTVNdLCBbdGVzdCAiJGVuYWJsZV9leHRyYV9wcm9ncmFtcyIgPSAieWVzIl0pCiAKIAorQUNf
QVJHX0VOQUJMRShbdXBkYXRlLWRyYWZ0XSwKKyAgQVNfSEVMUF9TVFJJTkcoWy0tZW5hYmxlLXVw
ZGF0ZS1kcmFmdF0sIFtFbmFibGUgYml0c3RyZWFtIGNoYW5nZXMgZnJvbSBkcmFmdC1pZXRmLWNv
ZGVjLW9wdXMtdXBkYXRlXSksLAorICBbZW5hYmxlX3VwZGF0ZV9kcmFmdD1ub10pCisKK0FTX0lG
KFt0ZXN0ICIkZW5hYmxlX3VwZGF0ZV9kcmFmdCIgPSAieWVzIl0sIFsKKyAgQUNfREVGSU5FKFtF
TkFCTEVfVVBEQVRFX0RSQUZUXSwgWzFdLCBbRW5hYmxlIGJpdHN0cmVhbSBjaGFuZ2VzIGZyb20g
ZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLXVwZGF0ZV0pCitdKQorCisKIHNhdmVkX0NGTEFHUz0iJENG
TEFHUyIKIENGTEFHUz0iJENGTEFHUyAtZnZpc2liaWxpdHk9aGlkZGVuIgogQUNfTVNHX0NIRUNL
SU5HKFtpZiAke0NDfSBzdXBwb3J0cyAtZnZpc2liaWxpdHk9aGlkZGVuXSkKQEAgLTg1OSw3ICs4
NzgsOCBAQCBBQ19NU0dfTk9USUNFKFsKICAgICAgIEN1c3RvbSBtb2RlczogLi4uLi4uLi4uLi4u
Li4uLi4uICR7ZW5hYmxlX2N1c3RvbV9tb2Rlc30KICAgICAgIEFzc2VydGlvbiBjaGVja2luZzog
Li4uLi4uLi4uLi4uICR7ZW5hYmxlX2Fzc2VydGlvbnN9CiAgICAgICBGdXp6aW5nOiAuLi4uLi4u
Li4uLi4uLi4uLi4uLi4uLiAke2VuYWJsZV9mdXp6aW5nfQotICAgICAgQW1iaXNvbmljcyBzdXBw
b3J0OiAuLi4uLi4uLi4uLi4uJHtlbmFibGVfYW1iaXNvbmljc30KKyAgICAgIENoZWNrIEFTTTog
Li4uLi4uLi4uLi4uLi4uLi4uLi4uICR7ZW5hYmxlX2NoZWNrX2FzbX0KKyAgICAgIEFtYmlzb25p
Y3Mgc3VwcG9ydDogLi4uLi4uLi4uLi4uICR7ZW5hYmxlX2FtYmlzb25pY3N9CiAKICAgICAgIEFQ
SSBkb2N1bWVudGF0aW9uOiAuLi4uLi4uLi4uLi4uICR7ZW5hYmxlX2RvY30KICAgICAgIEV4dHJh
IHByb2dyYW1zOiAuLi4uLi4uLi4uLi4uLi4uICR7ZW5hYmxlX2V4dHJhX3Byb2dyYW1zfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9kb2MvRG94eWZpbGUuaW4gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9Eb3h5ZmlsZS5pbgppbmRleCBjZDc3Njc1MmQ0
OTY3ZGRlNjE4ZjkwMDcyN2Q2NzA1ZTVkYzg3YTBmLi4zNmVlZTBiNTM4MGI4MDQzMjc5NjMxMDI2
Nzg1MmNiMTYyYTQ2YmQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9Eb3h5ZmlsZS5pbgorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9Eb3h5
ZmlsZS5pbgpAQCAtMzE4LDMgKzMxOCwxOCBAQCBQUkVERUZJTkVEICAgICAgICAgICAgID0gT1BV
U19FWFBPUlQ9IFwKICAgICAgICAgICAgICAgICAgICAgICAgICBPUFVTX0NVU1RPTV9FWFBPUlRf
U1RBVElDPSBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgT1BVU19XQVJOX1VOVVNFRF9SRVNV
TFQ9IFwKICAgICAgICAgICAgICAgICAgICAgICAgICBPUFVTX0FSR19OT05OVUxMKF94KT0KKwor
Iy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQorIyBDb25maWd1cmF0aW9uIG9wdGlvbnMgcmVsYXRlZCB0byB0
aGUgZG90IHRvb2wKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBJZiB5b3Ugc2V0IHRoZSBIQVZF
X0RPVCB0YWcgdG8gWUVTIHRoZW4gZG94eWdlbiB3aWxsIGFzc3VtZSB0aGUgZG90IHRvb2wgaXMK
KyMgYXZhaWxhYmxlIGZyb20gdGhlIHBhdGguIFRoaXMgdG9vbCBpcyBwYXJ0IG9mIEdyYXBodml6
IChzZWU6CisjIGh0dHA6Ly93d3cuZ3JhcGh2aXoub3JnLyksIGEgZ3JhcGggdmlzdWFsaXphdGlv
biB0b29sa2l0IGZyb20gQVQmVCBhbmQgTHVjZW50CisjIEJlbGwgTGFicy4KKworIyBEZWJpYW4g
ZGVmYXVsdHMgdG8gWUVTIGhlcmUsIHdoaWxlIEZlZG9yYSBhbmQgSG9tZWJyZXcgZGVmYXVsdCB0
byBOTy4KKyMgU28gd2Ugc2V0IHRoaXMgYmFzZWQgb24gd2hldGhlciB0aGUgZ3JhcGh2aXogcGFj
a2FnZSBpcyBhdmFpbGFibGUgYXQKKyMgY29uZmlndXJlIHRpbWUuCisjCitIQVZFX0RPVCA9IEBI
QVZFX0RPVEAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL1RPRE8gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9UT0RPCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA5ZTFjMmQ1MTNjNGQ0OWY0YTFkMmViZjEyM2VjYzFiNWY3YzFhNjY3Li4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL1RPRE8KKysr
IC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLWRlZmluZSBhdWRpbyBiYW5kd2lkdGggYXMgZnJl
cXVlbmN5IHJhbmdlCi0KLXJlcGVhdCBwYWRkaW5nIHJlY29tbWVuZGF0aW9uCi0KLXB0aW1lOiBy
ZWZlciB0byBSRkMKLQotT3B1cyBkb2VzIG5vdCBwcm92aWRlIGFueSBjb25maWRlbnRpYWxpdHkg
b3IgaW50ZWdyaXR5IHByb3RlY3Rpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1aWxkX2RyYWZ0LnNoIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9k
b2MvYnVpbGRfZHJhZnQuc2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDE1YjIyYTc5YjM0NmMwZWFmZDA0NGVlMWUw
YjRhMjYyNzU4NGQ5MgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1aWxkX2RyYWZ0LnNoCkBAIC0w
LDAgKzEsMTA0IEBACisjIS9iaW4vc2gKKworIyBDb3B5cmlnaHQgKGMpIDIwMTEtMjAxMiBYaXBo
Lk9yZyBGb3VuZGF0aW9uIGFuZCBNb3ppbGxhIENvcnBvcmF0aW9uCisjCisjICBUaGlzIGZpbGUg
aXMgZXh0cmFjdGVkIGZyb20gUkZDNjcxNi4gUGxlYXNlIHNlZSB0aGF0IFJGQyBmb3IgYWRkaXRp
b25hbAorIyAgaW5mb3JtYXRpb24uCisjCisjICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMgIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworIyAg
YXJlIG1ldDoKKyMKKyMgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMKKyMgIC0gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyMgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisjCisjICAtIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50
ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCisjICBuYW1lcyBvZiBz
cGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQor
IyAgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBw
cmlvciB3cml0dGVuCisjICBwZXJtaXNzaW9uLgorIworIyAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAgYGBBUyBJ
UycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVAorIyAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SCisjICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorIyAgT1IgQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsCisjICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisjICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyMgIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyMg
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HCisjICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyMgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCisjU3RvcCBvbiBlcnJvcnMKK3Nl
dCAtZQorI1NldCB0aGUgQ1dEIHRvIHRoZSBsb2NhdGlvbiBvZiB0aGlzIHNjcmlwdAorWyAtbiAi
JHswJS8qfSIgXSAmJiBjZCAiJHswJS8qfSIKKwordG9wbGV2ZWw9Ii4uIgorZGVzdGRpcj0ib3B1
c19zb3VyY2UiCisKK2VjaG8gcGFja2FnaW5nIHNvdXJjZSBjb2RlCitybSAtcmYgIiR7ZGVzdGRp
cn0iCitta2RpciAiJHtkZXN0ZGlyfSIKK21rZGlyICIke2Rlc3RkaXJ9L3NyYyIKK21rZGlyICIk
e2Rlc3RkaXJ9L3NpbGsiCitta2RpciAiJHtkZXN0ZGlyfS9zaWxrL2Zsb2F0IgorbWtkaXIgIiR7
ZGVzdGRpcn0vc2lsay9maXhlZCIKK21rZGlyICIke2Rlc3RkaXJ9L2NlbHQiCitta2RpciAiJHtk
ZXN0ZGlyfS9pbmNsdWRlIgorZm9yIGYgaW4gYGNhdCAiJHt0b3BsZXZlbH0iL29wdXNfc291cmNl
cy5tayAiJHt0b3BsZXZlbH0iL2NlbHRfc291cmNlcy5tayBcCisgIiR7dG9wbGV2ZWx9Ii9zaWxr
X3NvdXJjZXMubWsgIiR7dG9wbGV2ZWx9Ii9vcHVzX2hlYWRlcnMubWsgXAorICIke3RvcGxldmVs
fSIvY2VsdF9oZWFkZXJzLm1rICIke3RvcGxldmVsfSIvc2lsa19oZWFkZXJzLm1rIFwKKyB8IGdy
ZXAgJ1wuW2NoXScgfCBzZWQgLWUgJ3MvXi4qPS8vJyAtZSAncy9cXFxcLy8nYCA7IGRvCisgIGNw
IC1hICIke3RvcGxldmVsfS8ke2Z9IiAiJHtkZXN0ZGlyfS8ke2Z9IgorZG9uZQorY3AgLWEgIiR7
dG9wbGV2ZWx9Ii9zcmMvb3B1c19kZW1vLmMgIiR7ZGVzdGRpcn0iL3NyYy8KK2NwIC1hICIke3Rv
cGxldmVsfSIvc3JjL29wdXNfY29tcGFyZS5jICIke2Rlc3RkaXJ9Ii9zcmMvCitjcCAtYSAiJHt0
b3BsZXZlbH0iL2NlbHQvb3B1c19jdXN0b21fZGVtby5jICIke2Rlc3RkaXJ9Ii9jZWx0LworY3Ag
LWEgIiR7dG9wbGV2ZWx9Ii9NYWtlZmlsZS51bml4ICIke2Rlc3RkaXJ9Ii9NYWtlZmlsZQorY3Ag
LWEgIiR7dG9wbGV2ZWx9Ii9vcHVzX3NvdXJjZXMubWsgIiR7ZGVzdGRpcn0iLworY3AgLWEgIiR7
dG9wbGV2ZWx9Ii9jZWx0X3NvdXJjZXMubWsgIiR7ZGVzdGRpcn0iLworY3AgLWEgIiR7dG9wbGV2
ZWx9Ii9zaWxrX3NvdXJjZXMubWsgIiR7ZGVzdGRpcn0iLworY3AgLWEgIiR7dG9wbGV2ZWx9Ii9S
RUFETUUuZHJhZnQgIiR7ZGVzdGRpcn0iL1JFQURNRQorY3AgLWEgIiR7dG9wbGV2ZWx9Ii9DT1BZ
SU5HICIke2Rlc3RkaXJ9Ii9DT1BZSU5HCitjcCAtYSAiJHt0b3BsZXZlbH0iL3Rlc3RzL3J1bl92
ZWN0b3JzLnNoICIke2Rlc3RkaXJ9Ii8KKworR1pJUD0tOSB0YXIgLS1vd25lcj1yb290IC0tZ3Jv
dXA9cm9vdCAtLWZvcm1hdD12NyAtY3pmIG9wdXNfc291cmNlLnRhci5neiAiJHtkZXN0ZGlyfSIK
K2VjaG8gYnVpbGRpbmcgYmFzZTY0IHZlcnNpb24KK2NhdCBvcHVzX3NvdXJjZS50YXIuZ3p8IGJh
c2U2NCB8IHRyIC1kICdcbicgfCBmb2xkIC13IDY0IHwgXAorIHNlZCAtZSAncy9eL1w8c3Bhbngg
c3R5bGU9InZiYXJlIlw+IyMjLycgLWUgJ3MvJC9cPFwvc3BhbnhcPlw8dnNwYWNlXC9cPi8nID4g
XAorIG9wdXNfc291cmNlLmJhc2U2NAorCisKKyNlY2hvICc8ZmlndXJlPicgPiBvcHVzX2NvbXBh
cmVfZXNjYXBlZC5jCisjZWNobyAnPGFydHdvcms+JyA+PiBvcHVzX2NvbXBhcmVfZXNjYXBlZC5j
CisjZWNobyAnPCFbQ0RBVEFbJyA+PiBvcHVzX2NvbXBhcmVfZXNjYXBlZC5jCisjY2F0IG9wdXNf
Y29tcGFyZS5jID4+IG9wdXNfY29tcGFyZV9lc2NhcGVkLmMKKyNlY2hvICddXT4nID4+IG9wdXNf
Y29tcGFyZV9lc2NhcGVkLmMKKyNlY2hvICc8L2FydHdvcms+JyA+PiBvcHVzX2NvbXBhcmVfZXNj
YXBlZC5jCisjZWNobyAnPC9maWd1cmU+JyA+PiBvcHVzX2NvbXBhcmVfZXNjYXBlZC5jCisKK2lm
IFtbICEgLWQgLi4vb3B1c190ZXN0dmVjdG9ycyBdXSA7IHRoZW4KKyAgZWNobyAiRG93bmxvYWRp
bmcgdGVzdCB2ZWN0b3JzLi4uIgorICB3Z2V0ICdodHRwOi8vb3B1cy1jb2RlYy5vcmcvdGVzdHZl
Y3RvcnMvb3B1c190ZXN0dmVjdG9ycy50YXIuZ3onCisgIHRhciAtQyAuLiAteHZ6ZiBvcHVzX3Rl
c3R2ZWN0b3JzLnRhci5negorZmkKK2VjaG8gJzxmaWd1cmU+JyA+IHRlc3R2ZWN0b3JzX3NoYTEK
K2VjaG8gJzxhcnR3b3JrPicgPj4gdGVzdHZlY3RvcnNfc2hhMQorZWNobyAnPCFbQ0RBVEFbJyA+
PiB0ZXN0dmVjdG9yc19zaGExCisoY2QgLi4vb3B1c190ZXN0dmVjdG9yczsgc2hhMXN1bSAqLmJp
dCAqLmRlYykgPj4gdGVzdHZlY3RvcnNfc2hhMQorI2NkIG9wdXNfdGVzdHZlY3RvcnMKKyNzaGEx
c3VtICouYml0ICouZGVjID4+IC4uL3Rlc3R2ZWN0b3JzX3NoYTEKKyNjZCAuLgorZWNobyAnXV0+
JyA+PiB0ZXN0dmVjdG9yc19zaGExCitlY2hvICc8L2FydHdvcms+JyA+PiB0ZXN0dmVjdG9yc19z
aGExCitlY2hvICc8L2ZpZ3VyZT4nID4+IHRlc3R2ZWN0b3JzX3NoYTEKKworZWNobyBydW5uaW5n
IHhtbDJyZmMKK3htbDJyZmMgZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLnhtbCBkcmFmdC1pZXRmLWNv
ZGVjLW9wdXMuaHRtbCAmCit4bWwycmZjIGRyYWZ0LWlldGYtY29kZWMtb3B1cy54bWwKK3dhaXQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvZG9jL2J1aWxkX2lzb2JtZmYuc2ggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9idWlsZF9pc29ibWZmLnNoCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjk1ZWEyMDJlNGFmZWVkZjQ5NWNmZTI4YWEzMjhjOGI5ZWJlZjVjZjgKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2RvYy9idWlsZF9pc29ibWZmLnNoCkBAIC0wLDAgKzEsNTAgQEAKKyMhL2Jp
bi9zaAorCisjIENvcHlyaWdodCAoYykgMjAxNCBYaXBoLk9yZyBGb3VuZGF0aW9uIGFuZCBNb3pp
bGxhIEZvdW5kYXRpb24KKyMKKyMgIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorIyAgbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjICBhcmUgbWV0
OgorIworIyAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorIyAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIworIyAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorIyAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyMKKyMgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMgIGBgQVMgSVMnJyBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyMgIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUgorIyAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIKKyMgIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorIyAg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorIyAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisjICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisjICBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RworIyAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTCisjICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworI1N0b3Agb24gZXJyb3JzCitzZXQgLWUKKyNTZXQg
dGhlIENXRCB0byB0aGUgbG9jYXRpb24gb2YgdGhpcyBzY3JpcHQKK1sgLW4gIiR7MCUvKn0iIF0g
JiYgY2QgIiR7MCUvKn0iCisKK0hUTUw9b3B1c19pbl9pc29ibWZmLmh0bWwKKworZWNobyBkb3du
bG9hZGluZyB1cGRhdGVzLi4uCitDU1M9JHtIVE1MJSUuaHRtbH0uY3NzCit3Z2V0IC1xIGh0dHA6
Ly92ZnJtYW5pYWMuZnVzaGl6ZW4uZXUvY29udGVudHMvJHtIVE1MfSAtTyAke0hUTUx9Cit3Z2V0
IC1xIGh0dHA6Ly92ZnJtYW5pYWMuZnVzaGl6ZW4uZXUvc3R5bGUuY3NzIC1PICR7Q1NTfQorCitl
Y2hvIHVwZGF0aW5nIGxpbmtzLi4uCitjYXQgJHtIVE1MfSB8IHNlZCAtZSAicy9cXC5cXC5cXC9z
dHlsZS5jc3MvJHtDU1N9LyIgPiAke0hUTUx9KyAmJiBtdiAke0hUTUx9KyAke0hUTUx9CisKK2Vj
aG8gc3RyaXBwaW5nLi4uCitjYXQgJHtIVE1MfSB8IHNlZCAtZSAncy88IS0tLiotLT4vL2cnID4g
JHtIVE1MfSsgJiYgbXYgJHtIVE1MfSsgJHtIVE1MfQorY2F0ICR7SFRNTH0gfCBzZWQgLWUgJ3Mv
ICokLy9nJyA+ICR7SFRNTH0rICYmIG12ICR7SFRNTH0rICR7SFRNTH0KK2NhdCAke0NTU30gIHwg
c2VkIC1lICdzLyAqJC8vZycgPiAke0NTU30rICYmIG12ICR7Q1NTfSsgJHtDU1N9CisKKworVkVS
U0lPTj0kKGZncmVwIFZlcnNpb24gJHtIVE1MfSB8IHNlZCAncy8uKlZlcnNpb24gXChbMC05XVwu
WzAtOV1cLlswLTldXCkuKi9cMS8nKQorZWNobyBOb3cgYXQgdmVyc2lvbiAke1ZFUlNJT059CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2RvYy9idWlsZF9vZ2dkcmFmdC5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2J1aWxkX29nZ2RyYWZ0LnNoCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjMwZWU1MzRiMGQ2MDY3NTAzZjQ0YTJkZDQ3MjI3NGNiNzAyM2Q1NDgKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL2RvYy9idWlsZF9vZ2dkcmFmdC5zaApAQCAtMCwwICsxLDUyIEBACisjIS9i
aW4vc2gKKworIyBDb3B5cmlnaHQgKGMpIDIwMTIgWGlwaC5PcmcgRm91bmRhdGlvbiBhbmQgTW96
aWxsYSBDb3Jwb3JhdGlvbgorIworIyAgVGhpcyBmaWxlIGlzIGV4dHJhY3RlZCBmcm9tIFJGQzY3
MTYuIFBsZWFzZSBzZWUgdGhhdCBSRkMgZm9yIGFkZGl0aW9uYWwKKyMgIGluZm9ybWF0aW9uLgor
IworIyAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisjICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyMgIGFyZSBtZXQ6CisjCisjICAtIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisjICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisjCisjICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisjICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisjICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorIworIyAgLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3Ig
SUVURiBUcnVzdCwgbm9yIHRoZQorIyAgbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBt
YXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKKyMgIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorIyAgcGVybWlz
c2lvbi4KKyMKKyMgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyMgIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgor
IyAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQgT1dORVIKKyMgIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorIyAgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
IyAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SCisjICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisjICBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworIyAgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTCisjICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKworI1N0b3Agb24gZXJyb3JzCitzZXQgLWUKKyNTZXQgdGhlIENXRCB0byB0
aGUgbG9jYXRpb24gb2YgdGhpcyBzY3JpcHQKK1sgLW4gIiR7MCUvKn0iIF0gJiYgY2QgIiR7MCUv
Kn0iCisKK2lmIHRlc3QgLXogYHdoaWNoIHhtbDJyZmMgMj4gL2Rldi9udWxsYDsgdGhlbgorICBl
Y2hvICJFcnJvcjogY291bGRuJ3QgZmluZCB4bWwycmZjLiIKKyAgZWNobworICBlY2hvICJQbGVh
c2UgaW5zdGFsbCB4bWwycmZjIHZlcnNpb24gMiBvciBsYXRlci4iCisgIGVjaG8gIkUuZy4gJ3Bp
cCBpbnN0YWxsIHhtbDJyZmMnIG9yIGZvbGxvdyB0aGUgaW5zdHJ1Y3Rpb25zIgorICBlY2hvICJv
biBodHRwOi8vcHlwaS5weXRob24ub3JnL3B5cGkveG1sMnJmYy8gb3IgdG9vbHMuaWV0Zi5vcmcu
IgorICBleGl0IDEKK2ZpCisKK2VjaG8gcnVubmluZyB4bWwycmZjCisjIHZlcnNpb24gMiBzeW50
YXgKK3htbDJyZmMgZHJhZnQtaWV0Zi1jb2RlYy1vZ2dvcHVzLnhtbCAtLXRleHQgLS1odG1sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2RvYy9kcmFmdC1pZXRmLWNvZGVjLW9nZ29wdXMueG1sIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0
Zi1jb2RlYy1vZ2dvcHVzLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMjg4MTZlOTM1ZTg1OWM2MzAzNWNkOTVm
ZjA0YTc1ZGQ1ZjVlZTE4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1v
Z2dvcHVzLnhtbApAQCAtMCwwICsxLDE4NzMgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rp
bmc9InV0Zi04Ij8+Cis8IS0tCisgICBDb3B5cmlnaHQgKGMpIDIwMTItMjAxNiBYaXBoLk9yZyBG
b3VuZGF0aW9uIGFuZCBjb250cmlidXRvcnMKKworICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgICBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgLSBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICAgYGBBUyBJUycn
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VAorICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUgorICAgT1IgQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAgIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCisgICBTcGVjaWFsIHBlcm1pc3Npb24g
aXMgZ3JhbnRlZCB0byByZW1vdmUgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIGxpc3Qgb2YK
KyAgIGNvbmRpdGlvbnMsIGFuZCBkaXNjbGFpbWVyIHdoZW4gc3VibWl0dGluZyB0aGlzIGRvY3Vt
ZW50LCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgdG8gdGhlIElFVEYuCistLT4K
KzwhRE9DVFlQRSByZmMgU1lTVEVNICdyZmMyNjI5LmR0ZCcgWworPCFFTlRJVFkgcmZjMjExOSBQ
VUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVy
ZW5jZS5SRkMuMjExOS54bWwnPgorPCFFTlRJVFkgcmZjMzUzMyBQVUJMSUMgJycgJ2h0dHA6Ly94
bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzUzMy54bWwn
PgorPCFFTlRJVFkgcmZjMzYyOSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1
YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuMzYyOS54bWwnPgorPCFFTlRJVFkgcmZjNDcz
MiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3Jl
ZmVyZW5jZS5SRkMuNDczMi54bWwnPgorPCFFTlRJVFkgcmZjNTIyNiBQVUJMSUMgJycgJ2h0dHA6
Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNTIyNi54
bWwnPgorPCFFTlRJVFkgcmZjNTMzNCBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3Jn
L3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNTMzNC54bWwnPgorPCFFTlRJVFkgcmZj
NjM4MSBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1s
L3JlZmVyZW5jZS5SRkMuNjM4MS54bWwnPgorPCFFTlRJVFkgcmZjNjcxNiBQVUJMSUMgJycgJ2h0
dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNjcx
Ni54bWwnPgorPCFFTlRJVFkgcmZjNjk4MiBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uu
b3JnL3B1YmxpYy9yZmMvYmlieG1sL3JlZmVyZW5jZS5SRkMuNjk4Mi54bWwnPgorPCFFTlRJVFkg
cmZjNzU4NyBQVUJMSUMgJycgJ2h0dHA6Ly94bWwucmVzb3VyY2Uub3JnL3B1YmxpYy9yZmMvYmli
eG1sL3JlZmVyZW5jZS5SRkMuNzU4Ny54bWwnPgorXT4KKzw/cmZjIHRvYz0ieWVzIiBzeW1yZWZz
PSJ5ZXMiID8+CisKKzxyZmMgaXByPSJ0cnVzdDIwMDkwMiIgY2F0ZWdvcnk9InN0ZCIgZG9jTmFt
ZT0iZHJhZnQtaWV0Zi1jb2RlYy1vZ2dvcHVzLTE0IgorIHVwZGF0ZXM9IjUzMzQiPgorCis8ZnJv
bnQ+Cis8dGl0bGUgYWJicmV2PSJPZ2cgT3B1cyI+T2dnIEVuY2Fwc3VsYXRpb24gZm9yIHRoZSBP
cHVzIEF1ZGlvIENvZGVjPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IlQuQi4iIHN1cm5hbWU9
IlRlcnJpYmVycnkiIGZ1bGxuYW1lPSJUaW1vdGh5IEIuIFRlcnJpYmVycnkiPgorPG9yZ2FuaXph
dGlvbj5Nb3ppbGxhIENvcnBvcmF0aW9uPC9vcmdhbml6YXRpb24+Cis8YWRkcmVzcz4KKzxwb3N0
YWw+Cis8c3RyZWV0PjY1MCBDYXN0cm8gU3RyZWV0PC9zdHJlZXQ+Cis8Y2l0eT5Nb3VudGFpbiBW
aWV3PC9jaXR5PgorPHJlZ2lvbj5DQTwvcmVnaW9uPgorPGNvZGU+OTQwNDE8L2NvZGU+Cis8Y291
bnRyeT5VU0E8L2NvdW50cnk+Cis8L3Bvc3RhbD4KKzxwaG9uZT4rMSA2NTAgOTAzLTA4MDA8L3Bo
b25lPgorPGVtYWlsPnR0ZXJyaWJlQHhpcGgub3JnPC9lbWFpbD4KKzwvYWRkcmVzcz4KKzwvYXV0
aG9yPgorCis8YXV0aG9yIGluaXRpYWxzPSJSLiIgc3VybmFtZT0iTGVlIiBmdWxsbmFtZT0iUm9u
IExlZSI+Cis8b3JnYW5pemF0aW9uPlZvaWNldHJvbml4PC9vcmdhbml6YXRpb24+Cis8YWRkcmVz
cz4KKzxwb3N0YWw+Cis8c3RyZWV0PjI0NiBQdWx0ZW5leSBTdHJlZXQsIExldmVsIDE8L3N0cmVl
dD4KKzxjaXR5PkFkZWxhaWRlPC9jaXR5PgorPHJlZ2lvbj5TQTwvcmVnaW9uPgorPGNvZGU+NTAw
MDwvY29kZT4KKzxjb3VudHJ5PkF1c3RyYWxpYTwvY291bnRyeT4KKzwvcG9zdGFsPgorPHBob25l
Pis2MSA4IDgyMzIgOTExMjwvcGhvbmU+Cis8ZW1haWw+cm9uQGRlYmlhbi5vcmc8L2VtYWlsPgor
PC9hZGRyZXNzPgorPC9hdXRob3I+CisKKzxhdXRob3IgaW5pdGlhbHM9IlIuIiBzdXJuYW1lPSJH
aWxlcyIgZnVsbG5hbWU9IlJhbHBoIEdpbGVzIj4KKzxvcmdhbml6YXRpb24+TW96aWxsYSBDb3Jw
b3JhdGlvbjwvb3JnYW5pemF0aW9uPgorPGFkZHJlc3M+Cis8cG9zdGFsPgorPHN0cmVldD4xNjMg
V2VzdCBIYXN0aW5ncyBTdHJlZXQ8L3N0cmVldD4KKzxjaXR5PlZhbmNvdXZlcjwvY2l0eT4KKzxy
ZWdpb24+QkM8L3JlZ2lvbj4KKzxjb2RlPlY2QiAxSDU8L2NvZGU+Cis8Y291bnRyeT5DYW5hZGE8
L2NvdW50cnk+Cis8L3Bvc3RhbD4KKzxwaG9uZT4rMSA3NzggNzg1IDE1NDA8L3Bob25lPgorPGVt
YWlsPmdpbGVzQHhpcGgub3JnPC9lbWFpbD4KKzwvYWRkcmVzcz4KKzwvYXV0aG9yPgorCis8ZGF0
ZSBkYXk9IjIyIiBtb250aD0iRmVicnVhcnkiIHllYXI9IjIwMTYiLz4KKzxhcmVhPlJBSTwvYXJl
YT4KKzx3b3JrZ3JvdXA+Y29kZWM8L3dvcmtncm91cD4KKworPGFic3RyYWN0PgorPHQ+CitUaGlz
IGRvY3VtZW50IGRlZmluZXMgdGhlIE9nZyBlbmNhcHN1bGF0aW9uIGZvciB0aGUgT3B1cyBpbnRl
cmFjdGl2ZSBzcGVlY2ggYW5kCisgYXVkaW8gY29kZWMuCitUaGlzIGFsbG93cyBkYXRhIGVuY29k
ZWQgaW4gdGhlIE9wdXMgZm9ybWF0IHRvIGJlIHN0b3JlZCBpbiBhbiBPZ2cgbG9naWNhbAorIGJp
dHN0cmVhbS4KKzwvdD4KKzwvYWJzdHJhY3Q+Cis8L2Zyb250PgorCis8bWlkZGxlPgorPHNlY3Rp
b24gYW5jaG9yPSJpbnRybyIgdGl0bGU9IkludHJvZHVjdGlvbiI+Cis8dD4KK1RoZSBJRVRGIE9w
dXMgY29kZWMgaXMgYSBsb3ctbGF0ZW5jeSBhdWRpbyBjb2RlYyBvcHRpbWl6ZWQgZm9yIGJvdGgg
dm9pY2UgYW5kCisgZ2VuZXJhbC1wdXJwb3NlIGF1ZGlvLgorU2VlIDx4cmVmIHRhcmdldD0iUkZD
NjcxNiIvPiBmb3IgdGVjaG5pY2FsIGRldGFpbHMuCitUaGlzIGRvY3VtZW50IGRlZmluZXMgdGhl
IGVuY2Fwc3VsYXRpb24gb2YgT3B1cyBpbiBhIGNvbnRpbnVvdXMsIGxvZ2ljYWwgT2dnCisgYml0
c3RyZWFtJm5ic3A7PHhyZWYgdGFyZ2V0PSJSRkMzNTMzIi8+LgorT2dnIGVuY2Fwc3VsYXRpb24g
cHJvdmlkZXMgT3B1cyB3aXRoIGEgbG9uZy10ZXJtIHN0b3JhZ2UgZm9ybWF0IHN1cHBvcnRpbmcK
KyBhbGwgb2YgdGhlIGVzc2VudGlhbCBmZWF0dXJlcywgaW5jbHVkaW5nIG1ldGFkYXRhLCBmYXN0
IGFuZCBhY2N1cmF0ZSBzZWVraW5nLAorIGNvcnJ1cHRpb24gZGV0ZWN0aW9uLCByZWNhcHR1cmUg
YWZ0ZXIgZXJyb3JzLCBsb3cgb3ZlcmhlYWQsIGFuZCB0aGUgYWJpbGl0eSB0bworIG11bHRpcGxl
eCBPcHVzIHdpdGggb3RoZXIgY29kZWNzIChpbmNsdWRpbmcgdmlkZW8pIHdpdGggbWluaW1hbCBi
dWZmZXJpbmcuCitJdCBhbHNvIHByb3ZpZGVzIGEgbGl2ZSBzdHJlYW1hYmxlIGZvcm1hdCwgY2Fw
YWJsZSBvZiBkZWxpdmVyeSBvdmVyIGEgcmVsaWFibGUKKyBzdHJlYW0tb3JpZW50ZWQgdHJhbnNw
b3J0LCB3aXRob3V0IHJlcXVpcmluZyBhbGwgdGhlIGRhdGEsIG9yIGV2ZW4gdGhlIHRvdGFsCisg
bGVuZ3RoIG9mIHRoZSBkYXRhLCB1cC1mcm9udCwgaW4gYSBmb3JtIHRoYXQgaXMgaWRlbnRpY2Fs
IHRvIHRoZSBvbi1kaXNrCisgc3RvcmFnZSBmb3JtYXQuCis8L3Q+Cis8dD4KK09nZyBiaXRzdHJl
YW1zIGFyZSBtYWRlIHVwIG9mIGEgc2VyaWVzIG9mICdwYWdlcycsIGVhY2ggb2Ygd2hpY2ggY29u
dGFpbnMgZGF0YQorIGZyb20gb25lIG9yIG1vcmUgJ3BhY2tldHMnLgorUGFnZXMgYXJlIHRoZSBm
dW5kYW1lbnRhbCB1bml0IG9mIG11bHRpcGxleGluZyBpbiBhbiBPZ2cgc3RyZWFtLgorRWFjaCBw
YWdlIGlzIGFzc29jaWF0ZWQgd2l0aCBhIHBhcnRpY3VsYXIgbG9naWNhbCBzdHJlYW0gYW5kIGNv
bnRhaW5zIGEgY2FwdHVyZQorIHBhdHRlcm4gYW5kIGNoZWNrc3VtLCBmbGFncyB0byBtYXJrIHRo
ZSBiZWdpbm5pbmcgYW5kIGVuZCBvZiB0aGUgbG9naWNhbAorIHN0cmVhbSwgYW5kIGEgJ2dyYW51
bGUgcG9zaXRpb24nIHRoYXQgcmVwcmVzZW50cyBhbiBhYnNvbHV0ZSBwb3NpdGlvbiBpbiB0aGUK
KyBzdHJlYW0sIHRvIGFpZCBzZWVraW5nLgorQSBzaW5nbGUgcGFnZSBjYW4gY29udGFpbiB1cCB0
byA2NSwwMjUgb2N0ZXRzIG9mIHBhY2tldCBkYXRhIGZyb20gdXAgdG8gMjU1CisgZGlmZmVyZW50
IHBhY2tldHMuCitQYWNrZXRzIGNhbiBiZSBzcGxpdCBhcmJpdHJhcmlseSBhY3Jvc3MgcGFnZXMs
IGFuZCBjb250aW51ZWQgZnJvbSBvbmUgcGFnZSB0bworIHRoZSBuZXh0IChhbGxvd2luZyBwYWNr
ZXRzIG11Y2ggbGFyZ2VyIHRoYW4gd291bGQgZml0IG9uIGEgc2luZ2xlIHBhZ2UpLgorRWFjaCBw
YWdlIGNvbnRhaW5zICdsYWNpbmcgdmFsdWVzJyB0aGF0IGluZGljYXRlIGhvdyB0aGUgZGF0YSBp
cyBwYXJ0aXRpb25lZAorIGludG8gcGFja2V0cywgYWxsb3dpbmcgYSBkZW11bHRpcGxleGVyIChk
ZW11eGVyKSB0byByZWNvdmVyIHRoZSBwYWNrZXQKKyBib3VuZGFyaWVzIHdpdGhvdXQgZXhhbWlu
aW5nIHRoZSBlbmNvZGVkIGRhdGEuCitBIHBhY2tldCBpcyBzYWlkIHRvICdjb21wbGV0ZScgb24g
YSBwYWdlIHdoZW4gdGhlIHBhZ2UgY29udGFpbnMgdGhlIGZpbmFsCisgbGFjaW5nIHZhbHVlIGNv
cnJlc3BvbmRpbmcgdG8gdGhhdCBwYWNrZXQuCis8L3Q+Cis8dD4KK1RoaXMgZW5jYXBzdWxhdGlv
biBkZWZpbmVzIHRoZSBjb250ZW50cyBvZiB0aGUgcGFja2V0IGRhdGEsIGluY2x1ZGluZworIHRo
ZSBuZWNlc3NhcnkgaGVhZGVycywgdGhlIG9yZ2FuaXphdGlvbiBvZiB0aG9zZSBwYWNrZXRzIGlu
dG8gYSBsb2dpY2FsCisgc3RyZWFtLCBhbmQgdGhlIGludGVycHJldGF0aW9uIG9mIHRoZSBjb2Rl
Yy1zcGVjaWZpYyBncmFudWxlIHBvc2l0aW9uIGZpZWxkLgorSXQgZG9lcyBub3QgYXR0ZW1wdCB0
byBkZXNjcmliZSBvciBzcGVjaWZ5IHRoZSBleGlzdGluZyBPZ2cgY29udGFpbmVyIGZvcm1hdC4K
K1JlYWRlcnMgdW5mYW1pbGlhciB3aXRoIHRoZSBiYXNpYyBjb25jZXB0cyBtZW50aW9uZWQgYWJv
dmUgYXJlIGVuY291cmFnZWQgdG8KKyByZXZpZXcgdGhlIGRldGFpbHMgaW4gPHhyZWYgdGFyZ2V0
PSJSRkMzNTMzIi8+LgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0idGVy
bWlub2xvZ3kiIHRpdGxlPSJUZXJtaW5vbG9neSI+Cis8dD4KK1RoZSBrZXkgd29yZHMgIk1VU1Qi
LCAiTVVTVCBOT1QiLCAiUkVRVUlSRUQiLCAiU0hBTEwiLCAiU0hBTEwgTk9UIiwgIlNIT1VMRCIs
CisgIlNIT1VMRCBOT1QiLCAiUkVDT01NRU5ERUQiLCAiTk9UIFJFQ09NTUVOREVEIiwgIk1BWSIs
IGFuZCAiT1BUSU9OQUwiIGluIHRoaXMKKyBkb2N1bWVudCBhcmUgdG8gYmUgaW50ZXJwcmV0ZWQg
YXMgZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0iUkZDMjExOSIvPi4KKzwvdD4KKworPC9zZWN0
aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InBhY2tldF9vcmdhbml6YXRpb24iIHRpdGxlPSJQYWNr
ZXQgT3JnYW5pemF0aW9uIj4KKzx0PgorQW4gT2dnIE9wdXMgc3RyZWFtIGlzIG9yZ2FuaXplZCBh
cyBmb2xsb3dzIChzZWUKKyA8eHJlZiB0YXJnZXQ9InBhY2tldC1vcmctZXhhbXBsZSIvPiBmb3Ig
YW4gZXhhbXBsZSkuCis8L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSJwYWNrZXQtb3JnLWV4YW1wbGUi
CisgdGl0bGU9IkV4YW1wbGUgcGFja2V0IG9yZ2FuaXphdGlvbiBmb3IgYSBsb2dpY2FsIE9nZyBP
cHVzIHN0cmVhbSIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworICAgIFBhZ2UgMCAgICAgICAgIFBhZ2VzIDEgLi4uIG4gICAgICAgIFBhZ2VzIChu
KzEpIC4uLgorICstLS0tLS0tLS0tLS0rICstLS0rICstLS0rIC4uLiArLS0tKyArLS0tLS0tLS0t
LS0rICstLS0tLS0tLS0rICstLQorIHwgICAgICAgICAgICB8IHwgICB8IHwgICB8ICAgICB8ICAg
fCB8ICAgICAgICAgICB8IHwgICAgICAgICB8IHwKKyB8Ky0tLS0tLS0tLS0rfCB8Ky0tLS0tLS0t
LS0tLS0tLS0tK3wgfCstLS0tLS0tLS0tLS0tLS0tLS0tKyArLS0tLS0KKyB8fHxJRCBIZWFkZXJ8
fCB8fCAgQ29tbWVudCBIZWFkZXIgfHwgfHxBdWRpbyBEYXRhIFBhY2tldCAxfCB8IC4uLgorIHwr
LS0tLS0tLS0tLSt8IHwrLS0tLS0tLS0tLS0tLS0tLS0rfCB8Ky0tLS0tLS0tLS0tLS0tLS0tLS0r
ICstLS0tLQorIHwgICAgICAgICAgICB8IHwgICB8IHwgICB8ICAgICB8ICAgfCB8ICAgICAgICAg
ICB8IHwgICAgICAgICB8IHwKKyArLS0tLS0tLS0tLS0tKyArLS0tKyArLS0tKyAuLi4gKy0tLSsg
Ky0tLS0tLS0tLS0tKyArLS0tLS0tLS0tKyArLS0KKyBeICAgICAgXiAgICAgICAgICAgICAgICAg
ICAgICAgICAgIF4KKyB8ICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyB8ICAg
ICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIE1hbmRhdG9yeSBQYWdlIEJyZWFrCisgfCAg
ICAgIHwKKyB8ICAgICAgSUQgaGVhZGVyIGlzIGNvbnRhaW5lZCBvbiBhIHNpbmdsZSBwYWdlCisg
fAorICdCZWdpbm5pbmcgT2YgU3RyZWFtJworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0
PgorVGhlcmUgYXJlIHR3byBtYW5kYXRvcnkgaGVhZGVyIHBhY2tldHMuCitUaGUgZmlyc3QgcGFj
a2V0IGluIHRoZSBsb2dpY2FsIE9nZyBiaXRzdHJlYW0gTVVTVCBjb250YWluIHRoZSBpZGVudGlm
aWNhdGlvbgorIChJRCkgaGVhZGVyLCB3aGljaCB1bmlxdWVseSBpZGVudGlmaWVzIGEgc3RyZWFt
IGFzIE9wdXMgYXVkaW8uCitUaGUgZm9ybWF0IG9mIHRoaXMgaGVhZGVyIGlzIGRlZmluZWQgaW4g
PHhyZWYgdGFyZ2V0PSJpZF9oZWFkZXIiLz4uCitJdCBpcyBwbGFjZWQgYWxvbmUgKHdpdGhvdXQg
YW55IG90aGVyIHBhY2tldCBkYXRhKSBvbiB0aGUgZmlyc3QgcGFnZSBvZgorIHRoZSBsb2dpY2Fs
IE9nZyBiaXRzdHJlYW0sIGFuZCBjb21wbGV0ZXMgb24gdGhhdCBwYWdlLgorVGhpcyBwYWdlIGhh
cyBpdHMgJ2JlZ2lubmluZyBvZiBzdHJlYW0nIGZsYWcgc2V0LgorPC90PgorPHQ+CitUaGUgc2Vj
b25kIHBhY2tldCBpbiB0aGUgbG9naWNhbCBPZ2cgYml0c3RyZWFtIE1VU1QgY29udGFpbiB0aGUg
Y29tbWVudCBoZWFkZXIsCisgd2hpY2ggY29udGFpbnMgdXNlci1zdXBwbGllZCBtZXRhZGF0YS4K
K1RoZSBmb3JtYXQgb2YgdGhpcyBoZWFkZXIgaXMgZGVmaW5lZCBpbiA8eHJlZiB0YXJnZXQ9ImNv
bW1lbnRfaGVhZGVyIi8+LgorSXQgTUFZIHNwYW4gbXVsdGlwbGUgcGFnZXMsIGJlZ2lubmluZyBv
biB0aGUgc2Vjb25kIHBhZ2Ugb2YgdGhlIGxvZ2ljYWwKKyBzdHJlYW0uCitIb3dldmVyIG1hbnkg
cGFnZXMgaXQgc3BhbnMsIHRoZSBjb21tZW50IGhlYWRlciBwYWNrZXQgTVVTVCBmaW5pc2ggdGhl
IHBhZ2Ugb24KKyB3aGljaCBpdCBjb21wbGV0ZXMuCis8L3Q+Cis8dD4KK0FsbCBzdWJzZXF1ZW50
IHBhZ2VzIGFyZSBhdWRpbyBkYXRhIHBhZ2VzLCBhbmQgdGhlIE9nZyBwYWNrZXRzIHRoZXkgY29u
dGFpbiBhcmUKKyBhdWRpbyBkYXRhIHBhY2tldHMuCitFYWNoIGF1ZGlvIGRhdGEgcGFja2V0IGNv
bnRhaW5zIG9uZSBPcHVzIHBhY2tldCBmb3IgZWFjaCBvZiBOIGRpZmZlcmVudAorIHN0cmVhbXMs
IHdoZXJlIE4gaXMgdHlwaWNhbGx5IG9uZSBmb3IgbW9ubyBvciBzdGVyZW8sIGJ1dCBNQVkgYmUg
Z3JlYXRlciB0aGFuCisgb25lIGZvciBtdWx0aWNoYW5uZWwgYXVkaW8uCitUaGUgdmFsdWUgTiBp
cyBzcGVjaWZpZWQgaW4gdGhlIElEIGhlYWRlciAoc2VlCisgPHhyZWYgdGFyZ2V0PSJjaGFubmVs
X21hcHBpbmciLz4pLCBhbmQgaXMgZml4ZWQgb3ZlciB0aGUgZW50aXJlIGxlbmd0aCBvZiB0aGUK
KyBsb2dpY2FsIE9nZyBiaXRzdHJlYW0uCis8L3Q+Cis8dD4KK1RoZSBmaXJzdCAoTiZuYnNwOy0m
bmJzcDsxKSBPcHVzIHBhY2tldHMsIGlmIGFueSwgYXJlIHBhY2tlZCBvbmUgYWZ0ZXIgYW5vdGhl
cgorIGludG8gdGhlIE9nZyBwYWNrZXQsIHVzaW5nIHRoZSBzZWxmLWRlbGltaXRpbmcgZnJhbWlu
ZyBmcm9tIEFwcGVuZGl4Jm5ic3A7QiBvZgorIDx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPi4KK1Ro
ZSByZW1haW5pbmcgT3B1cyBwYWNrZXQgaXMgcGFja2VkIGF0IHRoZSBlbmQgb2YgdGhlIE9nZyBw
YWNrZXQgdXNpbmcgdGhlCisgcmVndWxhciwgdW5kZWxpbWl0ZWQgZnJhbWluZyBmcm9tIFNlY3Rp
b24mbmJzcDszIG9mIDx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPi4KK0FsbCBvZiB0aGUgT3B1cyBw
YWNrZXRzIGluIGEgc2luZ2xlIE9nZyBwYWNrZXQgTVVTVCBiZSBjb25zdHJhaW5lZCB0byBoYXZl
IHRoZQorIHNhbWUgZHVyYXRpb24uCitBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzIHNwZWNpZmlj
YXRpb24gU0hPVUxEIHRyZWF0IGFueSBPcHVzIHBhY2tldCB3aG9zZQorIGR1cmF0aW9uIGlzIGRp
ZmZlcmVudCBmcm9tIHRoYXQgb2YgdGhlIGZpcnN0IE9wdXMgcGFja2V0IGluIGFuIE9nZyBwYWNr
ZXQgYXMKKyBpZiBpdCB3ZXJlIGEgbWFsZm9ybWVkIE9wdXMgcGFja2V0IHdpdGggYW4gaW52YWxp
ZCBUYWJsZSBPZiBDb250ZW50cyAoVE9DKQorIHNlcXVlbmNlLgorPC90PgorPHQ+CitUaGUgVE9D
IHNlcXVlbmNlIGF0IHRoZSBiZWdpbm5pbmcgb2YgZWFjaCBPcHVzIHBhY2tldCBpbmRpY2F0ZXMg
dGhlIGNvZGluZworIG1vZGUsIGF1ZGlvIGJhbmR3aWR0aCwgY2hhbm5lbCBjb3VudCwgZHVyYXRp
b24gKGZyYW1lIHNpemUpLCBhbmQgbnVtYmVyIG9mCisgZnJhbWVzIHBlciBwYWNrZXQsIGFzIGRl
c2NyaWJlZCBpbiBTZWN0aW9uJm5ic3A7My4xCisgb2YmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzY3
MTYiLz4uCitUaGUgY29kaW5nIG1vZGUgaXMgb25lIG9mIFNJTEssIEh5YnJpZCwgb3IgQ29uc3Ry
YWluZWQgRW5lcmd5IExhcHBlZCBUcmFuc2Zvcm0KKyAoQ0VMVCkuCitUaGUgY29tYmluYXRpb24g
b2YgY29kaW5nIG1vZGUsIGF1ZGlvIGJhbmR3aWR0aCwgYW5kIGZyYW1lIHNpemUgaXMgcmVmZXJy
ZWQgdG8KKyBhcyB0aGUgY29uZmlndXJhdGlvbiBvZiBhbiBPcHVzIHBhY2tldC4KKzwvdD4KKzx0
PgorUGFja2V0cyBhcmUgcGxhY2VkIGludG8gT2dnIHBhZ2VzIGluIG9yZGVyIHVudGlsIHRoZSBl
bmQgb2Ygc3RyZWFtLgorQXVkaW8gZGF0YSBwYWNrZXRzIG1pZ2h0IHNwYW4gcGFnZSBib3VuZGFy
aWVzLgorVGhlIGZpcnN0IGF1ZGlvIGRhdGEgcGFnZSBjb3VsZCBoYXZlIHRoZSAnY29udGludWVk
IHBhY2tldCcgZmxhZyBzZXQKKyAoaW5kaWNhdGluZyB0aGUgZmlyc3QgYXVkaW8gZGF0YSBwYWNr
ZXQgaXMgY29udGludWVkIGZyb20gYSBwcmV2aW91cyBwYWdlKSBpZiwKKyBmb3IgZXhhbXBsZSwg
aXQgd2FzIGEgbGl2ZSBzdHJlYW0gam9pbmVkIG1pZC1icm9hZGNhc3QsIHdpdGggdGhlIGhlYWRl
cnMKKyBwYXN0ZWQgb24gdGhlIGZyb250LgorSWYgYSBwYWdlIGhhcyB0aGUgJ2NvbnRpbnVlZCBw
YWNrZXQnIGZsYWcgc2V0IGFuZCBvbmUgb2YgdGhlIGZvbGxvd2luZworIGNvbmRpdGlvbnMgaXMg
YWxzbyB0cnVlOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+dGhlIHByZXZpb3VzIHBhZ2Ug
d2l0aCBwYWNrZXQgZGF0YSBkb2VzIG5vdCBlbmQgaW4gYSBjb250aW51ZWQgcGFja2V0IChkb2Vz
Cisgbm90IGVuZCB3aXRoIGEgbGFjaW5nIHZhbHVlIG9mIDI1NSkgT1I8L3Q+Cis8dD50aGUgcGFn
ZSBzZXF1ZW5jZSBudW1iZXJzIGFyZSBub3QgY29uc2VjdXRpdmUsPC90PgorPC9saXN0PgorIHRo
ZW4gYSBkZW11eGVyIE1VU1QgTk9UIGF0dGVtcHQgdG8gZGVjb2RlIHRoZSBkYXRhIGZvciB0aGUg
Zmlyc3QgcGFja2V0IG9uIHRoZQorIHBhZ2UgdW5sZXNzIHRoZSBkZW11eGVyIGhhcyBzb21lIHNw
ZWNpYWwga25vd2xlZGdlIHRoYXQgd291bGQgYWxsb3cgaXQgdG8KKyBpbnRlcnByZXQgdGhpcyBk
YXRhIGRlc3BpdGUgdGhlIG1pc3NpbmcgcGllY2VzLgorQW4gaW1wbGVtZW50YXRpb24gTVVTVCB0
cmVhdCBhIHplcm8tb2N0ZXQgYXVkaW8gZGF0YSBwYWNrZXQgYXMgaWYgaXQgd2VyZSBhCisgbWFs
Zm9ybWVkIE9wdXMgcGFja2V0IGFzIGRlc2NyaWJlZCBpbgorIFNlY3Rpb24mbmJzcDszLjQgb2Ym
bmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzY3MTYiLz4uCis8L3Q+Cis8dD4KK0EgbG9naWNhbCBzdHJl
YW0gZW5kcyB3aXRoIGEgcGFnZSB3aXRoIHRoZSAnZW5kIG9mIHN0cmVhbScgZmxhZyBzZXQsIGJ1
dAorIGltcGxlbWVudGF0aW9ucyBuZWVkIHRvIGJlIHByZXBhcmVkIHRvIGRlYWwgd2l0aCB0cnVu
Y2F0ZWQgc3RyZWFtcyB0aGF0IGRvIG5vdAorIGhhdmUgYSBwYWdlIG1hcmtlZCAnZW5kIG9mIHN0
cmVhbScuCitUaGVyZSBpcyBubyByZWFzb24gZm9yIHRoZSBmaW5hbCBwYWNrZXQgb24gdGhlIGxh
c3QgcGFnZSB0byBiZSBhIGNvbnRpbnVlZAorIHBhY2tldCwgaS5lLiwgZm9yIHRoZSBmaW5hbCBs
YWNpbmcgdmFsdWUgdG8gYmUgMjU1LgorSG93ZXZlciwgZGVtdXhlcnMgbWlnaHQgZW5jb3VudGVy
IHN1Y2ggc3RyZWFtcywgcG9zc2libHkgYXMgdGhlIHJlc3VsdCBvZiBhCisgdHJhbnNmZXIgdGhh
dCBkaWQgbm90IGNvbXBsZXRlIG9yIG9mIGNvcnJ1cHRpb24uCitJZiBhIHBhY2tldCBjb250aW51
ZXMgb250byBhIHN1YnNlcXVlbnQgcGFnZSAoaS5lLiwgd2hlbiB0aGUgcGFnZSBlbmRzIHdpdGgg
YQorIGxhY2luZyB2YWx1ZSBvZiAyNTUpIGFuZCBvbmUgb2YgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zIGlzIGFsc28gdHJ1ZToKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PnRoZSBuZXh0IHBh
Z2Ugd2l0aCBwYWNrZXQgZGF0YSBkb2VzIG5vdCBoYXZlIHRoZSAnY29udGludWVkIHBhY2tldCcg
ZmxhZworIHNldCBPUjwvdD4KKzx0PnRoZXJlIGlzIG5vIG5leHQgcGFnZSB3aXRoIHBhY2tldCBk
YXRhIE9SPC90PgorPHQ+dGhlIHBhZ2Ugc2VxdWVuY2UgbnVtYmVycyBhcmUgbm90IGNvbnNlY3V0
aXZlLDwvdD4KKzwvbGlzdD4KKyB0aGVuIGEgZGVtdXhlciBNVVNUIE5PVCBhdHRlbXB0IHRvIGRl
Y29kZSB0aGUgZGF0YSBmcm9tIHRoYXQgcGFja2V0IHVubGVzcyB0aGUKKyBkZW11eGVyIGhhcyBz
b21lIHNwZWNpYWwga25vd2xlZGdlIHRoYXQgd291bGQgYWxsb3cgaXQgdG8gaW50ZXJwcmV0IHRo
aXMgZGF0YQorIGRlc3BpdGUgdGhlIG1pc3NpbmcgcGllY2VzLgorVGhlcmUgTVVTVCBOT1QgYmUg
YW55IG1vcmUgcGFnZXMgaW4gYW4gT3B1cyBsb2dpY2FsIGJpdHN0cmVhbSBhZnRlciBhIHBhZ2UK
KyBtYXJrZWQgJ2VuZCBvZiBzdHJlYW0nLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBh
bmNob3I9ImdyYW5wb3MiIHRpdGxlPSJHcmFudWxlIFBvc2l0aW9uIj4KKzx0PgorVGhlIGdyYW51
bGUgcG9zaXRpb24gTVVTVCBiZSB6ZXJvIGZvciB0aGUgSUQgaGVhZGVyIHBhZ2UgYW5kIHRoZQor
IHBhZ2Ugd2hlcmUgdGhlIGNvbW1lbnQgaGVhZGVyIGNvbXBsZXRlcy4KK1RoYXQgaXMsIHRoZSBm
aXJzdCBwYWdlIGluIHRoZSBsb2dpY2FsIHN0cmVhbSwgYW5kIHRoZSBsYXN0IGhlYWRlcgorIHBh
Z2UgYmVmb3JlIHRoZSBmaXJzdCBhdWRpbyBkYXRhIHBhZ2UgYm90aCBoYXZlIGEgZ3JhbnVsZSBw
b3NpdGlvbiBvZiB6ZXJvLgorPC90PgorPHQ+CitUaGUgZ3JhbnVsZSBwb3NpdGlvbiBvZiBhbiBh
dWRpbyBkYXRhIHBhZ2UgZW5jb2RlcyB0aGUgdG90YWwgbnVtYmVyIG9mIFBDTQorIHNhbXBsZXMg
aW4gdGhlIHN0cmVhbSB1cCB0byBhbmQgaW5jbHVkaW5nIHRoZSBsYXN0IGZ1bGx5LWRlY29kYWJs
ZSBzYW1wbGUgZnJvbQorIHRoZSBsYXN0IHBhY2tldCBjb21wbGV0ZWQgb24gdGhhdCBwYWdlLgor
VGhlIGdyYW51bGUgcG9zaXRpb24gb2YgdGhlIGZpcnN0IGF1ZGlvIGRhdGEgcGFnZSB3aWxsIHVz
dWFsbHkgYmUgbGFyZ2VyIHRoYW4KKyB6ZXJvLCBhcyBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0
PSJzdGFydF9ncmFucG9zX3Jlc3RyaWN0aW9ucyIvPi4KKzwvdD4KKworPHQ+CitBIHBhZ2UgdGhh
dCBpcyBlbnRpcmVseSBzcGFubmVkIGJ5IGEgc2luZ2xlIHBhY2tldCAodGhhdCBjb21wbGV0ZXMg
b24gYQorIHN1YnNlcXVlbnQgcGFnZSkgaGFzIG5vIGdyYW51bGUgcG9zaXRpb24sIGFuZCB0aGUg
Z3JhbnVsZSBwb3NpdGlvbiBmaWVsZCBpcworIHNldCB0byB0aGUgc3BlY2lhbCB2YWx1ZSAnLTEn
IGluIHR3bydzIGNvbXBsZW1lbnQuCis8L3Q+CisKKzx0PgorVGhlIGdyYW51bGUgcG9zaXRpb24g
b2YgYW4gYXVkaW8gZGF0YSBwYWdlIGlzIGluIHVuaXRzIG9mIFBDTSBhdWRpbyBzYW1wbGVzIGF0
CisgYSBmaXhlZCByYXRlIG9mIDQ4Jm5ic3A7a0h6IChwZXIgY2hhbm5lbDsgYSBzdGVyZW8gc3Ry
ZWFtJ3MgZ3JhbnVsZSBwb3NpdGlvbgorIGRvZXMgbm90IGluY3JlbWVudCBhdCB0d2ljZSB0aGUg
c3BlZWQgb2YgYSBtb25vIHN0cmVhbSkuCitJdCBpcyBwb3NzaWJsZSB0byBydW4gYW4gT3B1cyBk
ZWNvZGVyIGF0IG90aGVyIHNhbXBsaW5nIHJhdGVzLAorIGJ1dCBhbGwgT3B1cyBwYWNrZXRzIGVu
Y29kZSBzYW1wbGVzIGF0IGEgc2FtcGxpbmcgcmF0ZSB0aGF0IGV2ZW5seSBkaXZpZGVzCisgNDgm
bmJzcDtrSHouCitUaGVyZWZvcmUsIHRoZSB2YWx1ZSBpbiB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBm
aWVsZCBhbHdheXMgY291bnRzIHNhbXBsZXMKKyBhc3N1bWluZyBhIDQ4Jm5ic3A7a0h6IGRlY29k
aW5nIHJhdGUsIGFuZCB0aGUgcmVzdCBvZiB0aGlzIHNwZWNpZmljYXRpb24gbWFrZXMKKyB0aGUg
c2FtZSBhc3N1bXB0aW9uLgorPC90PgorCis8dD4KK1RoZSBkdXJhdGlvbiBvZiBhbiBPcHVzIHBh
Y2tldCBhcyBkZWZpbmVkIGluIDx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPiBjYW4gYmUKKyBhbnkg
bXVsdGlwbGUgb2YgMi41Jm5ic3A7bXMsIHVwIHRvIGEgbWF4aW11bSBvZiAxMjAmbmJzcDttcy4K
K1RoaXMgZHVyYXRpb24gaXMgZW5jb2RlZCBpbiB0aGUgVE9DIHNlcXVlbmNlIGF0IHRoZSBiZWdp
bm5pbmcgb2YgZWFjaCBwYWNrZXQuCitUaGUgbnVtYmVyIG9mIHNhbXBsZXMgcmV0dXJuZWQgYnkg
YSBkZWNvZGVyIGNvcnJlc3BvbmRzIHRvIHRoaXMgZHVyYXRpb24KKyBleGFjdGx5LCBldmVuIGZv
ciB0aGUgZmlyc3QgZmV3IHBhY2tldHMuCitGb3IgZXhhbXBsZSwgYSAyMCZuYnNwO21zIHBhY2tl
dCBmZWQgdG8gYSBkZWNvZGVyIHJ1bm5pbmcgYXQgNDgmbmJzcDtrSHogd2lsbAorIGFsd2F5cyBy
ZXR1cm4gOTYwJm5ic3A7c2FtcGxlcy4KK0EgZGVtdXhlciBjYW4gcGFyc2UgdGhlIFRPQyBzZXF1
ZW5jZSBhdCB0aGUgYmVnaW5uaW5nIG9mIGVhY2ggT2dnIHBhY2tldCB0bworIHdvcmsgYmFja3dh
cmRzIG9yIGZvcndhcmRzIGZyb20gYSBwYWNrZXQgd2l0aCBhIGtub3duIGdyYW51bGUgcG9zaXRp
b24gKGkuZS4sCisgdGhlIGxhc3QgcGFja2V0IGNvbXBsZXRlZCBvbiBzb21lIHBhZ2UpIGluIG9y
ZGVyIHRvIGFzc2lnbiBncmFudWxlIHBvc2l0aW9ucworIHRvIGV2ZXJ5IHBhY2tldCwgb3IgZXZl
biBldmVyeSBpbmRpdmlkdWFsIHNhbXBsZS4KK1RoZSBvbmUgZXhjZXB0aW9uIGlzIHRoZSBsYXN0
IHBhZ2UgaW4gdGhlIHN0cmVhbSwgYXMgZGVzY3JpYmVkIGJlbG93LgorPC90PgorCis8dD4KK0Fs
bCBvdGhlciBwYWdlcyB3aXRoIGNvbXBsZXRlZCBwYWNrZXRzIGFmdGVyIHRoZSBmaXJzdCBNVVNU
IGhhdmUgYSBncmFudWxlCisgcG9zaXRpb24gZXF1YWwgdG8gdGhlIG51bWJlciBvZiBzYW1wbGVz
IGNvbnRhaW5lZCBpbiBwYWNrZXRzIHRoYXQgY29tcGxldGUgb24KKyB0aGF0IHBhZ2UgcGx1cyB0
aGUgZ3JhbnVsZSBwb3NpdGlvbiBvZiB0aGUgbW9zdCByZWNlbnQgcGFnZSB3aXRoIGNvbXBsZXRl
ZAorIHBhY2tldHMuCitUaGlzIGd1YXJhbnRlZXMgdGhhdCBhIGRlbXV4ZXIgY2FuIGFzc2lnbiBp
bmRpdmlkdWFsIHBhY2tldHMgdGhlIHNhbWUgZ3JhbnVsZQorIHBvc2l0aW9uIHdoZW4gd29ya2lu
ZyBmb3J3YXJkcyBhcyB3aGVuIHdvcmtpbmcgYmFja3dhcmRzLgorRm9yIHRoaXMgdG8gd29yaywg
dGhlcmUgY2Fubm90IGJlIGFueSBnYXBzLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImdhcC1y
ZXBhaXIiIHRpdGxlPSJSZXBhaXJpbmcgR2FwcyBpbiBSZWFsLXRpbWUgU3RyZWFtcyI+Cis8dD4K
K0luIG9yZGVyIHRvIHN1cHBvcnQgY2FwdHVyaW5nIGEgcmVhbC10aW1lIHN0cmVhbSB0aGF0IGhh
cyBsb3N0IG9yIG5vdAorIHRyYW5zbWl0dGVkIHBhY2tldHMsIGEgbXVsdGlwbGV4ZXIgKG11eGVy
KSBTSE9VTEQgZW1pdCBwYWNrZXRzIHRoYXQgZXhwbGljaXRseQorIHJlcXVlc3QgdGhlIHVzZSBv
ZiBQYWNrZXQgTG9zcyBDb25jZWFsbWVudCAoUExDKSBpbiBwbGFjZSBvZiB0aGUgbWlzc2luZwor
IHBhY2tldHMuCitJbXBsZW1lbnRhdGlvbnMgdGhhdCBmYWlsIHRvIGRvIHNvIHN0aWxsIE1VU1Qg
Tk9UIGluY3JlbWVudCB0aGUgZ3JhbnVsZQorIHBvc2l0aW9uIGZvciBhIHBhZ2UgYnkgYW55dGhp
bmcgb3RoZXIgdGhhbiB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgY29udGFpbmVkIGluCisgcGFja2V0
cyB0aGF0IGFjdHVhbGx5IGNvbXBsZXRlIG9uIHRoYXQgcGFnZS4KKzwvdD4KKzx0PgorT25seSBn
YXBzIHRoYXQgYXJlIGEgbXVsdGlwbGUgb2YgMi41Jm5ic3A7bXMgYXJlIHJlcGFpcmFibGUsIGFz
IHRoZXNlIGFyZSB0aGUKKyBvbmx5IGR1cmF0aW9ucyB0aGF0IGNhbiBiZSBjcmVhdGVkIGJ5IHBh
Y2tldCBsb3NzIG9yIGRpc2NvbnRpbnVvdXMKKyB0cmFuc21pc3Npb24uCitNdXhlcnMgbmVlZCBu
b3QgaGFuZGxlIG90aGVyIGdhcCBzaXplcy4KK0NyZWF0aW5nIHRoZSBuZWNlc3NhcnkgcGFja2V0
cyBpbnZvbHZlcyBzeW50aGVzaXppbmcgYSBUT0MgYnl0ZSAoZGVmaW5lZCBpbgorU2VjdGlvbiZu
YnNwOzMuMSBvZiZuYnNwOzx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPikmbWRhc2g7YW5kIHdoYXRl
dmVyCisgYWRkaXRpb25hbCBpbnRlcm5hbCBmcmFtaW5nIGlzIG5lZWRlZCZtZGFzaDt0byBpbmRp
Y2F0ZSB0aGUgcGFja2V0IGR1cmF0aW9uCisgZm9yIGVhY2ggc3RyZWFtLgorVGhlIGFjdHVhbCBs
ZW5ndGggb2YgZWFjaCBtaXNzaW5nIE9wdXMgZnJhbWUgaW5zaWRlIHRoZSBwYWNrZXQgaXMgemVy
byBieXRlcywKKyBhcyBkZWZpbmVkIGluIFNlY3Rpb24mbmJzcDszLjIuMSBvZiZuYnNwOzx4cmVm
IHRhcmdldD0iUkZDNjcxNiIvPi4KKzwvdD4KKworPHQ+CitaZXJvLWJ5dGUgZnJhbWVzIE1BWSBi
ZSBwYWNrZWQgaW50byBwYWNrZXRzIHVzaW5nIGFueSBvZiBjb2RlcyZuYnNwOzAsIDEsCisgMiwg
b3ImbmJzcDszLgorV2hlbiBzdWNjZXNzaXZlIGZyYW1lcyBoYXZlIHRoZSBzYW1lIGNvbmZpZ3Vy
YXRpb24sIHRoZSBoaWdoZXIgY29kZSBwYWNraW5ncworIHJlZHVjZSBvdmVyaGVhZC4KK0xpa2V3
aXNlLCBpZiB0aGUgVE9DIGNvbmZpZ3VyYXRpb24gbWF0Y2hlcywgdGhlIG11eGVyIE1BWSBmdXJ0
aGVyIGNvbWJpbmUgdGhlCisgZW1wdHkgZnJhbWVzIHdpdGggcHJldmlvdXMgb3Igc3Vic2VxdWVu
dCBub24temVyby1sZW5ndGggZnJhbWVzICh1c2luZworIGNvZGUmbmJzcDsyIG9yIFZCUiBjb2Rl
Jm5ic3A7MykuCis8L3Q+CisKKzx0PgorPHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+IGRvZXMgbm90
IGltcG9zZSBhbnkgcmVxdWlyZW1lbnRzIG9uIHRoZSBQTEMsIGJ1dCB0aGlzCisgc2VjdGlvbiBv
dXRsaW5lcyBjaG9pY2VzIHRoYXQgYXJlIGV4cGVjdGVkIHRvIGhhdmUgYSBwb3NpdGl2ZSBpbmZs
dWVuY2Ugb24KKyBtb3N0IFBMQyBpbXBsZW1lbnRhdGlvbnMsIGluY2x1ZGluZyB0aGUgcmVmZXJl
bmNlIGltcGxlbWVudGF0aW9uLgorU3ludGhlc2l6ZWQgVE9DIHNlcXVlbmNlcyBTSE9VTEQgbWFp
bnRhaW4gdGhlIHNhbWUgbW9kZSwgYXVkaW8gYmFuZHdpZHRoLAorIGNoYW5uZWwgY291bnQsIGFu
ZCBmcmFtZSBzaXplIGFzIHRoZSBwcmV2aW91cyBwYWNrZXQgKGlmIGFueSkuCitUaGlzIGlzIHRo
ZSBzaW1wbGVzdCBhbmQgdXN1YWxseSB0aGUgbW9zdCB3ZWxsLXRlc3RlZCBjYXNlIGZvciB0aGUg
UExDIHRvCisgaGFuZGxlIGFuZCBpdCBjb3ZlcnMgYWxsIGxvc3NlcyB0aGF0IGRvIG5vdCBpbmNs
dWRlIGEgY29uZmlndXJhdGlvbiBzd2l0Y2gsCisgYXMgZGVmaW5lZCBpbiBTZWN0aW9uJm5ic3A7
NC41IG9mJm5ic3A7PHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+LgorPC90PgorCis8dD4KK1doZW4g
YSBwcmV2aW91cyBwYWNrZXQgaXMgYXZhaWxhYmxlLCBrZWVwaW5nIHRoZSBhdWRpbyBiYW5kd2lk
dGggYW5kIGNoYW5uZWwKKyBjb3VudCB0aGUgc2FtZSBhbGxvd3MgdGhlIFBMQyB0byBwcm92aWRl
IG1heGltdW0gY29udGludWl0eSBpbiB0aGUgY29uY2VhbG1lbnQKKyBkYXRhIGl0IGdlbmVyYXRl
cy4KK0hvd2V2ZXIsIGlmIHRoZSBzaXplIG9mIHRoZSBnYXAgaXMgbm90IGEgbXVsdGlwbGUgb2Yg
dGhlIG1vc3QgcmVjZW50IGZyYW1lCisgc2l6ZSwgdGhlbiB0aGUgZnJhbWUgc2l6ZSB3aWxsIGhh
dmUgdG8gY2hhbmdlIGZvciBhdCBsZWFzdCBzb21lIGZyYW1lcy4KK1N1Y2ggY2hhbmdlcyBTSE9V
TEQgYmUgZGVsYXllZCBhcyBsb25nIGFzIHBvc3NpYmxlIHRvIHNpbXBsaWZ5CisgdGhpbmdzIGZv
ciBQTEMgaW1wbGVtZW50YXRpb25zLgorPC90PgorCis8dD4KK0FzIGFuIGV4YW1wbGUsIGEgOTUm
bmJzcDttcyBnYXAgY291bGQgYmUgZW5jb2RlZCBhcyBuaW5ldGVlbiA1Jm5ic3A7bXMgZnJhbWVz
CisgaW4gdHdvIGJ5dGVzIHdpdGggYSBzaW5nbGUgQ0JSIGNvZGUmbmJzcDszIHBhY2tldC4KK0lm
IHRoZSBwcmV2aW91cyBmcmFtZSBzaXplIHdhcyAyMCZuYnNwO21zLCB1c2luZyBmb3VyIDIwJm5i
c3A7bXMgZnJhbWVzCisgZm9sbG93ZWQgYnkgdGhyZWUgNSZuYnNwO21zIGZyYW1lcyByZXF1aXJl
cyA0Jm5ic3A7Ynl0ZXMgKHBsdXMgYW4gZXh0cmEgYnl0ZQorIG9mIE9nZyBsYWNpbmcgb3Zlcmhl
YWQpLCBidXQgYWxsb3dzIHRoZSBQTEMgdG8gdXNlIGl0cyB3ZWxsLXRlc3RlZCBzdGVhZHkKKyBz
dGF0ZSBiZWhhdmlvciBmb3IgYXMgbG9uZyBhcyBwb3NzaWJsZS4KK1RoZSB0b3RhbCBiaXRyYXRl
IG9mIHRoZSBsYXR0ZXIgYXBwcm9hY2gsIGluY2x1ZGluZyBPZ2cgb3ZlcmhlYWQsIGlzIGFib3V0
CisgMC40Jm5ic3A7a2Jwcywgc28gdGhlIGltcGFjdCBvbiBmaWxlIHNpemUgaXMgbWluaW1hbC4K
KzwvdD4KKworPHQ+CitDaGFuZ2luZyBtb2RlcyBpcyBkaXNjb3VyYWdlZCwgc2luY2UgdGhpcyBj
YXVzZXMgc29tZSBkZWNvZGVyIGltcGxlbWVudGF0aW9ucworIHRvIHJlc2V0IHRoZWlyIFBMQyBz
dGF0ZS4KK0hvd2V2ZXIsIFNJTEsgYW5kIEh5YnJpZCBtb2RlIGZyYW1lcyBjYW5ub3QgZmlsbCBn
YXBzIHRoYXQgYXJlIG5vdCBhIG11bHRpcGxlCisgb2YgMTAmbmJzcDttcy4KK0lmIHN3aXRjaGlu
ZyB0byBDRUxUIG1vZGUgaXMgbmVlZGVkIHRvIG1hdGNoIHRoZSBnYXAgc2l6ZSwgYSBtdXhlciBT
SE9VTEQgZG8KKyBzbyBhdCB0aGUgZW5kIG9mIHRoZSBnYXAgdG8gYWxsb3cgdGhlIFBMQyB0byBm
dW5jdGlvbiBmb3IgYXMgbG9uZyBhcyBwb3NzaWJsZS4KKzwvdD4KKworPHQ+CitJbiB0aGUgZXhh
bXBsZSBhYm92ZSwgaWYgdGhlIHByZXZpb3VzIGZyYW1lIHdhcyBhIDIwJm5ic3A7bXMgU0lMSyBt
b2RlIGZyYW1lLAorIHRoZSBiZXR0ZXIgc29sdXRpb24gaXMgdG8gc3ludGhlc2l6ZSBhIHBhY2tl
dCBkZXNjcmliaW5nIGZvdXIgMjAmbmJzcDttcyBTSUxLCisgZnJhbWVzLCBmb2xsb3dlZCBieSBh
IHBhY2tldCB3aXRoIGEgc2luZ2xlIDEwJm5ic3A7bXMgU0lMSworIGZyYW1lLCBhbmQgZmluYWxs
eSBhIHBhY2tldCB3aXRoIGEgNSZuYnNwO21zIENFTFQgZnJhbWUsIHRvIGZpbGwgdGhlIDk1Jm5i
c3A7bXMKKyBnYXAuCitUaGlzIGFsc28gcmVxdWlyZXMgZm91ciBieXRlcyB0byBkZXNjcmliZSB0
aGUgc3ludGhlc2l6ZWQgcGFja2V0IGRhdGEgKHR3bworIGJ5dGVzIGZvciBhIENCUiBjb2RlIDMg
YW5kIG9uZSBieXRlIGVhY2ggZm9yIHR3byBjb2RlIDAgcGFja2V0cykgYnV0IHRocmVlCisgYnl0
ZXMgb2YgT2dnIGxhY2luZyBvdmVyaGVhZCBhcmUgbmVlZGVkIHRvIG1hcmsgdGhlIHBhY2tldCBi
b3VuZGFyaWVzLgorQXQgMC42IGticHMsIHRoaXMgaXMgc3RpbGwgYSBtaW5pbWFsIGJpdHJhdGUg
aW1wYWN0IG92ZXIgYSBuYWl2ZSwgbG93IHF1YWxpdHkKKyBzb2x1dGlvbi4KKzwvdD4KKworPHQ+
CitTaW5jZSBtZWRpdW0tYmFuZCBhdWRpbyBpcyBhbiBvcHRpb24gb25seSBpbiB0aGUgU0lMSyBt
b2RlLCB3aWRlYmFuZCBmcmFtZXMKKyBTSE9VTEQgYmUgZ2VuZXJhdGVkIGlmIHN3aXRjaGluZyBm
cm9tIHRoYXQgY29uZmlndXJhdGlvbiB0byBDRUxUIG1vZGUsIHRvCisgZW5zdXJlIHRoYXQgYW55
IFBMQyBpbXBsZW1lbnRhdGlvbiB3aGljaCBkb2VzIHRyeSB0byBtaWdyYXRlIHN0YXRlIGJldHdl
ZW4KKyB0aGUgbW9kZXMgd2lsbCBiZSBhYmxlIHRvIHByZXNlcnZlIGFsbCBvZiB0aGUgYXZhaWxh
YmxlIGF1ZGlvIGJhbmR3aWR0aC4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9InByZXNraXAiIHRpdGxlPSJQcmUtc2tpcCI+Cis8dD4KK1RoZXJlIGlzIHNvbWUgYW1vdW50
IG9mIGxhdGVuY3kgaW50cm9kdWNlZCBkdXJpbmcgdGhlIGRlY29kaW5nIHByb2Nlc3MsIHRvCisg
YWxsb3cgZm9yIG92ZXJsYXAgaW4gdGhlIENFTFQgbW9kZSwgc3RlcmVvIG1peGluZyBpbiB0aGUg
U0lMSyBtb2RlLCBhbmQKKyByZXNhbXBsaW5nLgorVGhlIGVuY29kZXIgbWlnaHQgaGF2ZSBpbnRy
b2R1Y2VkIGFkZGl0aW9uYWwgbGF0ZW5jeSB0aHJvdWdoIGl0cyBvd24gcmVzYW1wbGluZworIGFu
ZCBhbmFseXNpcyAodGhvdWdoIHRoZSBleGFjdCBhbW91bnQgaXMgbm90IHNwZWNpZmllZCkuCitU
aGVyZWZvcmUsIHRoZSBmaXJzdCBmZXcgc2FtcGxlcyBwcm9kdWNlZCBieSB0aGUgZGVjb2RlciBk
byBub3QgY29ycmVzcG9uZCB0bworIHJlYWwgaW5wdXQgYXVkaW8sIGJ1dCBhcmUgaW5zdGVhZCBj
b21wb3NlZCBvZiBwYWRkaW5nIGluc2VydGVkIGJ5IHRoZSBlbmNvZGVyCisgdG8gY29tcGVuc2F0
ZSBmb3IgdGhpcyBsYXRlbmN5LgorVGhlc2Ugc2FtcGxlcyBuZWVkIHRvIGJlIHN0b3JlZCBhbmQg
ZGVjb2RlZCwgYXMgT3B1cyBpcyBhbiBhc3ltcHRvdGljYWxseQorIGNvbnZlcmdlbnQgcHJlZGlj
dGl2ZSBjb2RlYywgbWVhbmluZyB0aGUgZGVjb2RlZCBjb250ZW50cyBvZiBlYWNoIGZyYW1lIGRl
cGVuZAorIG9uIHRoZSByZWNlbnQgaGlzdG9yeSBvZiBkZWNvZGVyIGlucHV0cy4KK0hvd2V2ZXIs
IGEgcGxheWVyIHdpbGwgd2FudCB0byBza2lwIHRoZXNlIHNhbXBsZXMgYWZ0ZXIgZGVjb2Rpbmcg
dGhlbS4KKzwvdD4KKworPHQ+CitBICdwcmUtc2tpcCcgZmllbGQgaW4gdGhlIElEIGhlYWRlciAo
c2VlIDx4cmVmIHRhcmdldD0iaWRfaGVhZGVyIi8+KSBzaWduYWxzCisgdGhlIG51bWJlciBvZiBz
YW1wbGVzIHRoYXQgU0hPVUxEIGJlIHNraXBwZWQgKGRlY29kZWQgYnV0IGRpc2NhcmRlZCkgYXQg
dGhlCisgYmVnaW5uaW5nIG9mIHRoZSBzdHJlYW0sIHRob3VnaCBzb21lIHNwZWNpZmljIGFwcGxp
Y2F0aW9ucyBtaWdodCBoYXZlIGEgcmVhc29uCisgZm9yIGxvb2tpbmcgYXQgdGhhdCBkYXRhLgor
VGhpcyBhbW91bnQgbmVlZCBub3QgYmUgYSBtdWx0aXBsZSBvZiAyLjUmbmJzcDttcywgTUFZIGJl
IHNtYWxsZXIgdGhhbiBhIHNpbmdsZQorIHBhY2tldCwgb3IgTUFZIHNwYW4gdGhlIGNvbnRlbnRz
IG9mIHNldmVyYWwgcGFja2V0cy4KK1RoZXNlIHNhbXBsZXMgYXJlIG5vdCB2YWxpZCBhdWRpby4K
KzwvdD4KKworPHQ+CitGb3IgZXhhbXBsZSwgaWYgdGhlIGZpcnN0IE9wdXMgZnJhbWUgdXNlcyB0
aGUgQ0VMVCBtb2RlLCBpdCB3aWxsIGFsd2F5cworIHByb2R1Y2UgMTIwIHNhbXBsZXMgb2Ygd2lu
ZG93ZWQgb3ZlcmxhcC1hZGQgZGF0YS4KK0hvd2V2ZXIsIHRoZSBvdmVybGFwIGRhdGEgaXMgaW5p
dGlhbGx5IGFsbCB6ZXJvcyAoc2luY2UgdGhlcmUgaXMgbm8gcHJpb3IKKyBmcmFtZSksIG1lYW5p
bmcgdGhpcyBjYW5ub3QsIGluIGdlbmVyYWwsIGFjY3VyYXRlbHkgcmVwcmVzZW50IHRoZSBvcmln
aW5hbAorIGF1ZGlvLgorVGhlIFNJTEsgbW9kZSByZXF1aXJlcyBhZGRpdGlvbmFsIGRlbGF5IHRv
IGFjY291bnQgZm9yIGl0cyBhbmFseXNpcyBhbmQKKyByZXNhbXBsaW5nIGxhdGVuY3kuCitUaGUg
ZW5jb2RlciBkZWxheXMgdGhlIG9yaWdpbmFsIGF1ZGlvIHRvIGF2b2lkIHRoaXMgcHJvYmxlbS4K
KzwvdD4KKworPHQ+CitUaGUgcHJlLXNraXAgZmllbGQgTUFZIGFsc28gYmUgdXNlZCB0byBwZXJm
b3JtIHNhbXBsZS1hY2N1cmF0ZSBjcm9wcGluZyBvZgorIGFscmVhZHkgZW5jb2RlZCBzdHJlYW1z
LgorSW4gdGhpcyBjYXNlLCBhIHZhbHVlIG9mIGF0IGxlYXN0IDM4NDAmbmJzcDtzYW1wbGVzICg4
MCZuYnNwO21zKSBwcm92aWRlcworIHN1ZmZpY2llbnQgaGlzdG9yeSB0byB0aGUgZGVjb2RlciB0
aGF0IGl0IHdpbGwgaGF2ZSBjb252ZXJnZWQKKyBiZWZvcmUgdGhlIHN0cmVhbSdzIG91dHB1dCBi
ZWdpbnMuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJwY21fc2FtcGxl
X3Bvc2l0aW9uIiB0aXRsZT0iUENNIFNhbXBsZSBQb3NpdGlvbiI+Cis8dD4KK1RoZSBQQ00gc2Ft
cGxlIHBvc2l0aW9uIGlzIGRldGVybWluZWQgZnJvbSB0aGUgZ3JhbnVsZSBwb3NpdGlvbiB1c2lu
ZyB0aGUKKyBmb3JtdWxhCis8L3Q+Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsg
YWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisnUENNIHNhbXBsZSBwb3NpdGlvbicgPSAnZ3JhbnVs
ZSBwb3NpdGlvbicgLSAncHJlLXNraXAnIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8
dD4KK0ZvciBleGFtcGxlLCBpZiB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBvZiB0aGUgZmlyc3QgYXVk
aW8gZGF0YSBwYWdlIGlzIDU5LDk3MSwKKyBhbmQgdGhlIHByZS1za2lwIGlzIDExLDk3MSwgdGhl
biB0aGUgUENNIHNhbXBsZSBwb3NpdGlvbiBvZiB0aGUgbGFzdCBkZWNvZGVkCisgc2FtcGxlIGZy
b20gdGhhdCBwYWdlIGlzIDQ4LDAwMC4KKzwvdD4KKzx0PgorVGhpcyBjYW4gYmUgY29udmVydGVk
IGludG8gYSBwbGF5YmFjayB0aW1lIHVzaW5nIHRoZSBmb3JtdWxhCis8L3Q+Cis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAg
ICAgICAgICAgICAnUENNIHNhbXBsZSBwb3NpdGlvbicKKydwbGF5YmFjayB0aW1lJyA9IC0tLS0t
LS0tLS0tLS0tLS0tLS0tLSAuCisgICAgICAgICAgICAgICAgICAgICAgICAgNDgwMDAuMAorXV0+
PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0PgorVGhlIGluaXRpYWwgUENNIHNhbXBsZSBwb3Np
dGlvbiBiZWZvcmUgYW55IHNhbXBsZXMgYXJlIHBsYXllZCBpcyBub3JtYWxseSAnMCcuCitJbiB0
aGlzIGNhc2UsIHRoZSBQQ00gc2FtcGxlIHBvc2l0aW9uIG9mIHRoZSBmaXJzdCBhdWRpbyBzYW1w
bGUgdG8gYmUgcGxheWVkCisgc3RhcnRzIGF0ICcxJywgYmVjYXVzZSBpdCBtYXJrcyB0aGUgdGlt
ZSBvbiB0aGUgY2xvY2sKKyA8c3Bhbnggc3R5bGU9ImVtcGgiPmFmdGVyPC9zcGFueD4gdGhhdCBz
YW1wbGUgaGFzIGJlZW4gcGxheWVkLCBhbmQgYSBzdHJlYW0KKyB0aGF0IGlzIGV4YWN0bHkgb25l
IHNlY29uZCBsb25nIGhhcyBhIGZpbmFsIFBDTSBzYW1wbGUgcG9zaXRpb24gb2YgJzQ4MDAwJywK
KyBhcyBpbiB0aGUgZXhhbXBsZSBoZXJlLgorPC90PgorCis8dD4KK1ZvcmJpcyBzdHJlYW1zIHVz
ZSBhIGdyYW51bGUgcG9zaXRpb24gc21hbGxlciB0aGFuIHRoZSBudW1iZXIgb2YgYXVkaW8gc2Ft
cGxlcworIGNvbnRhaW5lZCBpbiB0aGUgZmlyc3QgYXVkaW8gZGF0YSBwYWdlIHRvIGluZGljYXRl
IHRoYXQgc29tZSBvZiB0aG9zZSBzYW1wbGVzCisgYXJlIHRyaW1tZWQgZnJvbSB0aGUgb3V0cHV0
IChzZWUgPHhyZWYgdGFyZ2V0PSJ2b3JiaXMtdHJpbSIvPikuCitIb3dldmVyLCB0byBkbyBzbywg
Vm9yYmlzIHJlcXVpcmVzIHRoYXQgdGhlIGZpcnN0IGF1ZGlvIGRhdGEgcGFnZSBjb250YWlucwor
IGV4YWN0bHkgdHdvIHBhY2tldHMsIGluIG9yZGVyIHRvIGFsbG93IHRoZSBkZWNvZGVyIHRvIHBl
cmZvcm0gUENNIHBvc2l0aW9uCisgYWRqdXN0bWVudHMgYmVmb3JlIG5lZWRpbmcgdG8gcmV0dXJu
IGFueSBQQ00gZGF0YS4KK09wdXMgdXNlcyB0aGUgcHJlLXNraXAgbWVjaGFuaXNtIGZvciB0aGlz
IHB1cnBvc2UgaW5zdGVhZCwgc2luY2UgdGhlIGVuY29kZXIKKyBtaWdodCBpbnRyb2R1Y2UgbW9y
ZSB0aGFuIGEgc2luZ2xlIHBhY2tldCdzIHdvcnRoIG9mIGxhdGVuY3ksIGFuZCBzaW5jZSB2ZXJ5
CisgbGFyZ2UgcGFja2V0cyBpbiBzdHJlYW1zIHdpdGggYSB2ZXJ5IGxhcmdlIG51bWJlciBvZiBj
aGFubmVscyBtaWdodCBub3QgZml0Cisgb24gYSBzaW5nbGUgcGFnZS4KKzwvdD4KKzwvc2VjdGlv
bj4KKworPHNlY3Rpb24gYW5jaG9yPSJlbmRfdHJpbW1pbmciIHRpdGxlPSJFbmQgVHJpbW1pbmci
PgorPHQ+CitUaGUgcGFnZSB3aXRoIHRoZSAnZW5kIG9mIHN0cmVhbScgZmxhZyBzZXQgTUFZIGhh
dmUgYSBncmFudWxlIHBvc2l0aW9uIHRoYXQKKyBpbmRpY2F0ZXMgdGhlIHBhZ2UgY29udGFpbnMg
bGVzcyBhdWRpbyBkYXRhIHRoYW4gd291bGQgbm9ybWFsbHkgYmUgcmV0dXJuZWQgYnkKKyBkZWNv
ZGluZyB1cCB0aHJvdWdoIHRoZSBmaW5hbCBwYWNrZXQuCitUaGlzIGlzIHVzZWQgdG8gZW5kIHRo
ZSBzdHJlYW0gc29tZXdoZXJlIG90aGVyIHRoYW4gYW4gZXZlbiBmcmFtZSBib3VuZGFyeS4KK1Ro
ZSBncmFudWxlIHBvc2l0aW9uIG9mIHRoZSBtb3N0IHJlY2VudCBhdWRpbyBkYXRhIHBhZ2Ugd2l0
aCBjb21wbGV0ZWQgcGFja2V0cworIGlzIHVzZWQgdG8gbWFrZSB0aGlzIGRldGVybWluYXRpb24s
IG9yICcwJyBpcyB1c2VkIGlmIHRoZXJlIHdlcmUgbm8gcHJldmlvdXMKKyBhdWRpbyBkYXRhIHBh
Z2VzIHdpdGggYSBjb21wbGV0ZWQgcGFja2V0LgorVGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGVz
ZSBncmFudWxlIHBvc2l0aW9ucyBpbmRpY2F0ZXMgaG93IG1hbnkgc2FtcGxlcyB0bworIGtlZXAg
YWZ0ZXIgZGVjb2RpbmcgdGhlIHBhY2tldHMgdGhhdCBjb21wbGV0ZWQgb24gdGhlIGZpbmFsIHBh
Z2UuCitUaGUgcmVtYWluaW5nIHNhbXBsZXMgYXJlIGRpc2NhcmRlZC4KK1RoZSBudW1iZXIgb2Yg
ZGlzY2FyZGVkIHNhbXBsZXMgU0hPVUxEIGJlIG5vIGxhcmdlciB0aGFuIHRoZSBudW1iZXIgZGVj
b2RlZAorIGZyb20gdGhlIGxhc3QgcGFja2V0LgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlv
biBhbmNob3I9InN0YXJ0X2dyYW5wb3NfcmVzdHJpY3Rpb25zIgorIHRpdGxlPSJSZXN0cmljdGlv
bnMgb24gdGhlIEluaXRpYWwgR3JhbnVsZSBQb3NpdGlvbiI+Cis8dD4KK1RoZSBncmFudWxlIHBv
c2l0aW9uIG9mIHRoZSBmaXJzdCBhdWRpbyBkYXRhIHBhZ2Ugd2l0aCBhIGNvbXBsZXRlZCBwYWNr
ZXQgTUFZCisgYmUgbGFyZ2VyIHRoYW4gdGhlIG51bWJlciBvZiBzYW1wbGVzIGNvbnRhaW5lZCBp
biBwYWNrZXRzIHRoYXQgY29tcGxldGUgb24KKyB0aGF0IHBhZ2UsIGhvd2V2ZXIgaXQgTVVTVCBO
T1QgYmUgc21hbGxlciwgdW5sZXNzIHRoYXQgcGFnZSBoYXMgdGhlICdlbmQgb2YKKyBzdHJlYW0n
IGZsYWcgc2V0LgorQWxsb3dpbmcgYSBncmFudWxlIHBvc2l0aW9uIGxhcmdlciB0aGFuIHRoZSBu
dW1iZXIgb2Ygc2FtcGxlcyBhbGxvd3MgdGhlCisgYmVnaW5uaW5nIG9mIGEgc3RyZWFtIHRvIGJl
IGNyb3BwZWQgb3IgYSBsaXZlIHN0cmVhbSB0byBiZSBqb2luZWQgd2l0aG91dAorIHJld3JpdGlu
ZyB0aGUgZ3JhbnVsZSBwb3NpdGlvbiBvZiBhbGwgdGhlIHJlbWFpbmluZyBwYWdlcy4KK1RoaXMg
bWVhbnMgdGhhdCB0aGUgUENNIHNhbXBsZSBwb3NpdGlvbiBqdXN0IGJlZm9yZSB0aGUgZmlyc3Qg
c2FtcGxlIHRvIGJlCisgcGxheWVkIE1BWSBiZSBsYXJnZXIgdGhhbiAnMCcuCitTeW5jaHJvbml6
YXRpb24gd2hlbiBtdWx0aXBsZXhpbmcgd2l0aCBvdGhlciBsb2dpY2FsIHN0cmVhbXMgc3RpbGwg
dXNlcyB0aGUgUENNCisgc2FtcGxlIHBvc2l0aW9uIHJlbGF0aXZlIHRvICcwJyB0byBjb21wdXRl
IHNhbXBsZSB0aW1lcy4KK1RoaXMgZG9lcyBub3QgYWZmZWN0IHRoZSBiZWhhdmlvciBvZiBwcmUt
c2tpcDogZXhhY3RseSAncHJlLXNraXAnIHNhbXBsZXMKKyBTSE9VTEQgYmUgc2tpcHBlZCBmcm9t
IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGRlY29kZWQgb3V0cHV0LCBldmVuIGlmIHRoZQorIGluaXRp
YWwgUENNIHNhbXBsZSBwb3NpdGlvbiBpcyBncmVhdGVyIHRoYW4gemVyby4KKzwvdD4KKworPHQ+
CitPbiB0aGUgb3RoZXIgaGFuZCwgYSBncmFudWxlIHBvc2l0aW9uIHRoYXQgaXMgc21hbGxlciB0
aGFuIHRoZSBudW1iZXIgb2YKKyBkZWNvZGVkIHNhbXBsZXMgcHJldmVudHMgYSBkZW11eGVyIGZy
b20gd29ya2luZyBiYWNrd2FyZHMgdG8gYXNzaWduIGVhY2gKKyBwYWNrZXQgb3IgZWFjaCBpbmRp
dmlkdWFsIHNhbXBsZSBhIHZhbGlkIGdyYW51bGUgcG9zaXRpb24sIHNpbmNlIGdyYW51bGUKKyBw
b3NpdGlvbnMgYXJlIG5vbi1uZWdhdGl2ZS4KK0FuIGltcGxlbWVudGF0aW9uIE1VU1QgdHJlYXQg
YW55IHN0cmVhbSBhcyBpbnZhbGlkIGlmIHRoZSBncmFudWxlIHBvc2l0aW9uCisgaXMgc21hbGxl
ciB0aGFuIHRoZSBudW1iZXIgb2Ygc2FtcGxlcyBjb250YWluZWQgaW4gcGFja2V0cyB0aGF0IGNv
bXBsZXRlIG9uCisgdGhlIGZpcnN0IGF1ZGlvIGRhdGEgcGFnZSB3aXRoIGEgY29tcGxldGVkIHBh
Y2tldCwgdW5sZXNzIHRoYXQgcGFnZSBoYXMgdGhlCisgJ2VuZCBvZiBzdHJlYW0nIGZsYWcgc2V0
LgorSXQgTUFZIGRlZmVyIHRoaXMgYWN0aW9uIHVudGlsIGl0IGRlY29kZXMgdGhlIGxhc3QgcGFj
a2V0IGNvbXBsZXRlZCBvbiB0aGF0CisgcGFnZS4KKzwvdD4KKworPHQ+CitJZiB0aGF0IHBhZ2Ug
aGFzIHRoZSAnZW5kIG9mIHN0cmVhbScgZmxhZyBzZXQsIGEgZGVtdXhlciBNVVNUIHRyZWF0IGFu
eSBzdHJlYW0KKyBhcyBpbnZhbGlkIGlmIGl0cyBncmFudWxlIHBvc2l0aW9uIGlzIHNtYWxsZXIg
dGhhbiB0aGUgJ3ByZS1za2lwJyBhbW91bnQuCitUaGlzIHdvdWxkIGluZGljYXRlIHRoYXQgdGhl
cmUgYXJlIG1vcmUgc2FtcGxlcyB0byBiZSBza2lwcGVkIGZyb20gdGhlIGluaXRpYWwKKyBkZWNv
ZGVkIG91dHB1dCB0aGFuIGV4aXN0IGluIHRoZSBzdHJlYW0uCitJZiB0aGUgZ3JhbnVsZSBwb3Np
dGlvbiBpcyBzbWFsbGVyIHRoYW4gdGhlIG51bWJlciBvZiBkZWNvZGVkIHNhbXBsZXMgcHJvZHVj
ZWQKKyBieSB0aGUgcGFja2V0cyB0aGF0IGNvbXBsZXRlIG9uIHRoYXQgcGFnZSwgdGhlbiBhIGRl
bXV4ZXIgTVVTVCB1c2UgYW4gaW5pdGlhbAorIGdyYW51bGUgcG9zaXRpb24gb2YgJzAnLCBhbmQg
Y2FuIHdvcmsgZm9yd2FyZHMgZnJvbSAnMCcgdG8gdGltZXN0YW1wCisgaW5kaXZpZHVhbCBwYWNr
ZXRzLgorSWYgdGhlIGdyYW51bGUgcG9zaXRpb24gaXMgbGFyZ2VyIHRoYW4gdGhlIG51bWJlciBv
ZiBkZWNvZGVkIHNhbXBsZXMgYXZhaWxhYmxlLAorIHRoZW4gdGhlIGRlbXV4ZXIgTVVTVCBzdGls
bCB3b3JrIGJhY2t3YXJkcyBhcyBkZXNjcmliZWQgYWJvdmUsIGV2ZW4gaWYgdGhlCisgJ2VuZCBv
ZiBzdHJlYW0nIGZsYWcgaXMgc2V0LCB0byBkZXRlcm1pbmUgdGhlIGluaXRpYWwgZ3JhbnVsZSBw
b3NpdGlvbiwgYW5kCisgdGh1cyB0aGUgaW5pdGlhbCBQQ00gc2FtcGxlIHBvc2l0aW9uLgorQm90
aCBvZiB0aGVzZSB3aWxsIGJlIGdyZWF0ZXIgdGhhbiAnMCcgaW4gdGhpcyBjYXNlLgorPC90Pgor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNlZWtpbmdfYW5kX3ByZXJvbGwiIHRpdGxl
PSJTZWVraW5nIGFuZCBQcmUtcm9sbCI+Cis8dD4KK1NlZWtpbmcgaW4gT2dnIGZpbGVzIGlzIGJl
c3QgcGVyZm9ybWVkIHVzaW5nIGEgYmlzZWN0aW9uIHNlYXJjaCBmb3IgYSBwYWdlCisgd2hvc2Ug
Z3JhbnVsZSBwb3NpdGlvbiBjb3JyZXNwb25kcyB0byBhIFBDTSBwb3NpdGlvbiBhdCBvciBiZWZv
cmUgdGhlIHNlZWsKKyB0YXJnZXQuCitXaXRoIGFwcHJvcHJpYXRlbHkgd2VpZ2h0ZWQgYmlzZWN0
aW9uLCBhY2N1cmF0ZSBzZWVraW5nIGNhbiBiZSBwZXJmb3JtZWQgaW4KKyBqdXN0IG9uZSBvciB0
d28gYmlzZWN0aW9ucyBvbiBhdmVyYWdlLCBldmVuIGluIG11bHRpLWdpZ2FieXRlIGZpbGVzLgor
U2VlIDx4cmVmIHRhcmdldD0ic2Vla2luZyIvPiBmb3IgYW4gZXhhbXBsZSBvZiBnZW5lcmFsIGlt
cGxlbWVudGF0aW9uIGd1aWRhbmNlLgorPC90PgorCis8dD4KK1doZW4gc2Vla2luZyB3aXRoaW4g
YW4gT2dnIE9wdXMgc3RyZWFtLCBhbiBpbXBsZW1lbnRhdGlvbiBTSE9VTEQgc3RhcnQgZGVjb2Rp
bmcKKyAoYW5kIGRpc2NhcmRpbmcgdGhlIG91dHB1dCkgYXQgbGVhc3QgMzg0MCZuYnNwO3NhbXBs
ZXMgKDgwJm5ic3A7bXMpIHByaW9yIHRvCisgdGhlIHNlZWsgdGFyZ2V0IGluIG9yZGVyIHRvIGVu
c3VyZSB0aGF0IHRoZSBvdXRwdXQgYXVkaW8gaXMgY29ycmVjdCBieSB0aGUKKyB0aW1lIGl0IHJl
YWNoZXMgdGhlIHNlZWsgdGFyZ2V0LgorVGhpcyAncHJlLXJvbGwnIGlzIHNlcGFyYXRlIGZyb20s
IGFuZCB1bnJlbGF0ZWQgdG8sIHRoZSAncHJlLXNraXAnIHVzZWQgYXQgdGhlCisgYmVnaW5uaW5n
IG9mIHRoZSBzdHJlYW0uCitJZiB0aGUgcG9pbnQgODAmbmJzcDttcyBwcmlvciB0byB0aGUgc2Vl
ayB0YXJnZXQgY29tZXMgYmVmb3JlIHRoZSBpbml0aWFsIFBDTQorIHNhbXBsZSBwb3NpdGlvbiwg
YW4gaW1wbGVtZW50YXRpb24gU0hPVUxEIHN0YXJ0IGRlY29kaW5nIGZyb20gdGhlIGJlZ2lubmlu
ZyBvZgorIHRoZSBzdHJlYW0sIGFwcGx5aW5nIHByZS1za2lwIGFzIG5vcm1hbCwgcmVnYXJkbGVz
cyBvZiB3aGV0aGVyIHRoZSBwcmUtc2tpcCBpcworIGxhcmdlciBvciBzbWFsbGVyIHRoYW4gODAm
bmJzcDttcywgYW5kIHRoZW4gY29udGludWUgdG8gZGlzY2FyZCBzYW1wbGVzCisgdG8gcmVhY2gg
dGhlIHNlZWsgdGFyZ2V0IChpZiBhbnkpLgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0iaGVhZGVycyIgdGl0bGU9IkhlYWRlciBQYWNrZXRzIj4KKzx0
PgorQW4gT2dnIE9wdXMgbG9naWNhbCBzdHJlYW0gY29udGFpbnMgZXhhY3RseSB0d28gbWFuZGF0
b3J5IGhlYWRlciBwYWNrZXRzOgorIGFuIGlkZW50aWZpY2F0aW9uIGhlYWRlciBhbmQgYSBjb21t
ZW50IGhlYWRlci4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJpZF9oZWFkZXIiIHRpdGxlPSJJ
ZGVudGlmaWNhdGlvbiBIZWFkZXIiPgorCis8ZmlndXJlIGFuY2hvcj0iaWRfaGVhZGVyX3BhY2tl
dCIgdGl0bGU9IklEIEhlYWRlciBQYWNrZXQiIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxp
Z249ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAg
ICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIg
MyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAn
TycgICAgICB8ICAgICAgJ3AnICAgICAgfCAgICAgICd1JyAgICAgIHwgICAgICAncycgICAgICB8
CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKworfCAgICAgICdIJyAgICAgIHwgICAgICAnZScgICAgICB8ICAgICAgJ2EnICAg
ICAgfCAgICAgICdkJyAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICBWZXJzaW9uID0gMSAgfCBDaGFubmVs
IENvdW50IHwgICAgICAgICAgIFByZS1za2lwICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAg
ICAgICAgICAgICAgICAgICBJbnB1dCBTYW1wbGUgUmF0ZSAoSHopICAgICAgICAgICAgICAgICAg
ICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKworfCAgIE91dHB1dCBHYWluIChRNy44IGluIGRCKSAgICB8IE1hcHBpbmcg
RmFtaWx5fCAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSsgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAg
ICAgIE9wdGlvbmFsIENoYW5uZWwgTWFwcGluZyBUYWJsZS4uLiAgICAgICAgICAgICAgIDoKK3wg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0PgorVGhlIGZp
ZWxkcyBpbiB0aGUgaWRlbnRpZmljYXRpb24gKElEKSBoZWFkZXIgaGF2ZSB0aGUgZm9sbG93aW5n
IG1lYW5pbmc6Cis8bGlzdCBzdHlsZT0ibnVtYmVycyI+Cis8dD5NYWdpYyBTaWduYXR1cmU6Cis8
dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgYW4gOC1vY3RldCAoNjQtYml0KSBmaWVs
ZCB0aGF0IGFsbG93cyBjb2RlYyBpZGVudGlmaWNhdGlvbiBhbmQgaXMKKyBodW1hbi1yZWFkYWJs
ZS4KK0l0IGNvbnRhaW5zLCBpbiBvcmRlciwgdGhlIG1hZ2ljIG51bWJlcnM6Cis8bGlzdCBzdHls
ZT0iZW1wdHkiPgorPHQ+MHg0RiAnTyc8L3Q+Cis8dD4weDcwICdwJzwvdD4KKzx0PjB4NzUgJ3Un
PC90PgorPHQ+MHg3MyAncyc8L3Q+Cis8dD4weDQ4ICdIJzwvdD4KKzx0PjB4NjUgJ2UnPC90Pgor
PHQ+MHg2MSAnYSc8L3Q+Cis8dD4weDY0ICdkJzwvdD4KKzwvbGlzdD4KK1N0YXJ0aW5nIHdpdGgg
Ik9wIiBoZWxwcyBkaXN0aW5ndWlzaCBpdCBmcm9tIGF1ZGlvIGRhdGEgcGFja2V0cywgYXMgdGhp
cyBpcyBhbgorIGludmFsaWQgVE9DIHNlcXVlbmNlLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+
Cis8L3Q+Cis8dD5WZXJzaW9uICg4IGJpdHMsIHVuc2lnbmVkKToKKzx2c3BhY2UgYmxhbmtMaW5l
cz0iMSIvPgorVGhlIHZlcnNpb24gbnVtYmVyIE1VU1QgYWx3YXlzIGJlICcxJyBmb3IgdGhpcyB2
ZXJzaW9uIG9mIHRoZSBlbmNhcHN1bGF0aW9uCisgc3BlY2lmaWNhdGlvbi4KK0ltcGxlbWVudGF0
aW9ucyBTSE9VTEQgdHJlYXQgc3RyZWFtcyB3aGVyZSB0aGUgdXBwZXIgZm91ciBiaXRzIG9mIHRo
ZSB2ZXJzaW9uCisgbnVtYmVyIG1hdGNoIHRoYXQgb2YgYSByZWNvZ25pemVkIHNwZWNpZmljYXRp
b24gYXMgYmFja3dhcmRzLWNvbXBhdGlibGUgd2l0aAorIHRoYXQgc3BlY2lmaWNhdGlvbi4KK1Ro
YXQgaXMsIHRoZSB2ZXJzaW9uIG51bWJlciBjYW4gYmUgc3BsaXQgaW50byAibWFqb3IiIGFuZCAi
bWlub3IiIHZlcnNpb24KKyBzdWItZmllbGRzLCB3aXRoIGNoYW5nZXMgdG8gdGhlICJtaW5vciIg
c3ViLWZpZWxkIChpbiB0aGUgbG93ZXIgZm91ciBiaXRzKQorIHNpZ25hbGluZyBjb21wYXRpYmxl
IGNoYW5nZXMuCitGb3IgZXhhbXBsZSwgYW4gaW1wbGVtZW50YXRpb24gb2YgdGhpcyBzcGVjaWZp
Y2F0aW9uIFNIT1VMRCBhY2NlcHQgYW55IHN0cmVhbQorIHdpdGggYSB2ZXJzaW9uIG51bWJlciBv
ZiAnMTUnIG9yIGxlc3MsIGFuZCBTSE9VTEQgYXNzdW1lIGFueSBzdHJlYW0gd2l0aCBhCisgdmVy
c2lvbiBudW1iZXIgJzE2JyBvciBncmVhdGVyIGlzIGluY29tcGF0aWJsZS4KK1RoZSBpbml0aWFs
IHZlcnNpb24gJzEnIHdhcyBjaG9zZW4gdG8ga2VlcCBpbXBsZW1lbnRhdGlvbnMgZnJvbSByZWx5
aW5nIG9uIHRoaXMKKyBvY3RldCBhcyBhIG51bGwgdGVybWluYXRvciBmb3IgdGhlICJPcHVzSGVh
ZCIgc3RyaW5nLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5PdXRwdXQgQ2hh
bm5lbCBDb3VudCAnQycgKDggYml0cywgdW5zaWduZWQpOgorPHZzcGFjZSBibGFua0xpbmVzPSIx
Ii8+CitUaGlzIGlzIHRoZSBudW1iZXIgb2Ygb3V0cHV0IGNoYW5uZWxzLgorVGhpcyBtaWdodCBi
ZSBkaWZmZXJlbnQgdGhhbiB0aGUgbnVtYmVyIG9mIGVuY29kZWQgY2hhbm5lbHMsIHdoaWNoIGNh
biBjaGFuZ2UKKyBvbiBhIHBhY2tldC1ieS1wYWNrZXQgYmFzaXMuCitUaGlzIHZhbHVlIE1VU1Qg
Tk9UIGJlIHplcm8uCitUaGUgbWF4aW11bSBhbGxvd2FibGUgdmFsdWUgZGVwZW5kcyBvbiB0aGUg
Y2hhbm5lbCBtYXBwaW5nIGZhbWlseSwgYW5kIG1pZ2h0IGJlCisgYXMgbGFyZ2UgYXMgMjU1Lgor
U2VlIDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nIi8+IGZvciBkZXRhaWxzLgorPHZzcGFj
ZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5QcmUtc2tpcCAoMTYgYml0cywgdW5zaWduZWQs
IGxpdHRsZQorIGVuZGlhbik6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgdGhl
IG51bWJlciBvZiBzYW1wbGVzIChhdCA0OCZuYnNwO2tIeikgdG8gZGlzY2FyZCBmcm9tIHRoZSBk
ZWNvZGVyCisgb3V0cHV0IHdoZW4gc3RhcnRpbmcgcGxheWJhY2ssIGFuZCBhbHNvIHRoZSBudW1i
ZXIgdG8gc3VidHJhY3QgZnJvbSBhIHBhZ2UncworIGdyYW51bGUgcG9zaXRpb24gdG8gY2FsY3Vs
YXRlIGl0cyBQQ00gc2FtcGxlIHBvc2l0aW9uLgorV2hlbiBjcm9wcGluZyB0aGUgYmVnaW5uaW5n
IG9mIGV4aXN0aW5nIE9nZyBPcHVzIHN0cmVhbXMsIGEgcHJlLXNraXAgb2YgYXQKKyBsZWFzdCAz
LDg0MCZuYnNwO3NhbXBsZXMgKDgwJm5ic3A7bXMpIGlzIFJFQ09NTUVOREVEIHRvIGVuc3VyZSBj
b21wbGV0ZQorIGNvbnZlcmdlbmNlIGluIHRoZSBkZWNvZGVyLgorPHZzcGFjZSBibGFua0xpbmVz
PSIxIi8+Cis8L3Q+Cis8dD5JbnB1dCBTYW1wbGUgUmF0ZSAoMzIgYml0cywgdW5zaWduZWQsIGxp
dHRsZQorIGVuZGlhbik6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoaXMgaXMgdGhlIHNh
bXBsZSByYXRlIG9mIHRoZSBvcmlnaW5hbCBpbnB1dCAoYmVmb3JlIGVuY29kaW5nKSwgaW4gSHou
CitUaGlzIGZpZWxkIGlzIDxzcGFueCBzdHlsZT0iZW1waCI+bm90PC9zcGFueD4gdGhlIHNhbXBs
ZSByYXRlIHRvIHVzZSBmb3IKKyBwbGF5YmFjayBvZiB0aGUgZW5jb2RlZCBkYXRhLgorPHZzcGFj
ZSBibGFua0xpbmVzPSIxIi8+CitPcHVzIGNhbiBzd2l0Y2ggYmV0d2VlbiBpbnRlcm5hbCBhdWRp
byBiYW5kd2lkdGhzIG9mIDQsIDYsIDgsIDEyLCBhbmQKKyAyMCZuYnNwO2tIei4KK0VhY2ggcGFj
a2V0IGluIHRoZSBzdHJlYW0gY2FuIGhhdmUgYSBkaWZmZXJlbnQgYXVkaW8gYmFuZHdpZHRoLgor
UmVnYXJkbGVzcyBvZiB0aGUgYXVkaW8gYmFuZHdpZHRoLCB0aGUgcmVmZXJlbmNlIGRlY29kZXIg
c3VwcG9ydHMgZGVjb2RpbmcgYW55Cisgc3RyZWFtIGF0IGEgc2FtcGxlIHJhdGUgb2YgOCwgMTIs
IDE2LCAyNCwgb3IgNDgmbmJzcDtrSHouCitUaGUgb3JpZ2luYWwgc2FtcGxlIHJhdGUgb2YgdGhl
IGF1ZGlvIHBhc3NlZCB0byB0aGUgZW5jb2RlciBpcyBub3QgcHJlc2VydmVkCisgYnkgdGhlIGxv
c3N5IGNvbXByZXNzaW9uLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitBbiBPZ2cgT3B1cyBw
bGF5ZXIgU0hPVUxEIHNlbGVjdCB0aGUgcGxheWJhY2sgc2FtcGxlIHJhdGUgYWNjb3JkaW5nIHRv
IHRoZQorIGZvbGxvd2luZyBwcm9jZWR1cmU6Cis8bGlzdCBzdHlsZT0ibnVtYmVycyI+Cis8dD5J
ZiB0aGUgaGFyZHdhcmUgc3VwcG9ydHMgNDgmbmJzcDtrSHogcGxheWJhY2ssIGRlY29kZSBhdCA0
OCZuYnNwO2tIei48L3Q+Cis8dD5PdGhlcndpc2UsIGlmIHRoZSBoYXJkd2FyZSdzIGhpZ2hlc3Qg
YXZhaWxhYmxlIHNhbXBsZSByYXRlIGlzIGEgc3VwcG9ydGVkCisgcmF0ZSwgZGVjb2RlIGF0IHRo
aXMgc2FtcGxlIHJhdGUuPC90PgorPHQ+T3RoZXJ3aXNlLCBpZiB0aGUgaGFyZHdhcmUncyBoaWdo
ZXN0IGF2YWlsYWJsZSBzYW1wbGUgcmF0ZSBpcyBsZXNzIHRoYW4KKyA0OCZuYnNwO2tIeiwgZGVj
b2RlIGF0IHRoZSBuZXh0IGhpZ2hlciBPcHVzIHN1cHBvcnRlZCByYXRlIGFib3ZlIHRoZSBoaWdo
ZXN0CisgYXZhaWxhYmxlIGhhcmR3YXJlIHJhdGUgYW5kIHJlc2FtcGxlLjwvdD4KKzx0Pk90aGVy
d2lzZSwgZGVjb2RlIGF0IDQ4Jm5ic3A7a0h6IGFuZCByZXNhbXBsZS48L3Q+Cis8L2xpc3Q+CitI
b3dldmVyLCB0aGUgJ0lucHV0IFNhbXBsZSBSYXRlJyBmaWVsZCBhbGxvd3MgdGhlIG11eGVyIHRv
IHBhc3MgdGhlIHNhbXBsZQorIHJhdGUgb2YgdGhlIG9yaWdpbmFsIGlucHV0IHN0cmVhbSBhcyBt
ZXRhZGF0YS4KK1RoaXMgaXMgdXNlZnVsIHdoZW4gdGhlIHVzZXIgcmVxdWlyZXMgdGhlIG91dHB1
dCBzYW1wbGUgcmF0ZSB0byBtYXRjaCB0aGUKKyBpbnB1dCBzYW1wbGUgcmF0ZS4KK0ZvciBleGFt
cGxlLCB3aGVuIG5vdCBwbGF5aW5nIHRoZSBvdXRwdXQsIGFuIGltcGxlbWVudGF0aW9uIHdyaXRp
bmcgUENNIGZvcm1hdAorIHNhbXBsZXMgdG8gZGlzayBtaWdodCBjaG9vc2UgdG8gcmVzYW1wbGUg
dGhlIGF1ZGlvIGJhY2sgdG8gdGhlIG9yaWdpbmFsIGlucHV0Cisgc2FtcGxlIHJhdGUgdG8gcmVk
dWNlIHN1cnByaXNlIHRvIHRoZSB1c2VyLCB3aG8gbWlnaHQgcmVhc29uYWJseSBleHBlY3QgdG8g
Z2V0CisgYmFjayBhIGZpbGUgd2l0aCB0aGUgc2FtZSBzYW1wbGUgcmF0ZS4KKzx2c3BhY2UgYmxh
bmtMaW5lcz0iMSIvPgorQSB2YWx1ZSBvZiB6ZXJvIGluZGljYXRlcyAndW5zcGVjaWZpZWQnLgor
TXV4ZXJzIFNIT1VMRCB3cml0ZSB0aGUgYWN0dWFsIGlucHV0IHNhbXBsZSByYXRlIG9yIHplcm8s
IGJ1dCBpbXBsZW1lbnRhdGlvbnMKKyB3aGljaCBkbyBzb21ldGhpbmcgd2l0aCB0aGlzIGZpZWxk
IFNIT1VMRCB0YWtlIGNhcmUgdG8gYmVoYXZlIHNhbmVseSBpZiBnaXZlbgorIGNyYXp5IHZhbHVl
cyAoZS5nLiwgZG8gbm90IGFjdHVhbGx5IHVwc2FtcGxlIHRoZSBvdXRwdXQgdG8gMTAgTUh6IGlm
CisgcmVxdWVzdGVkKS4KK0ltcGxlbWVudGF0aW9ucyBTSE9VTEQgc3VwcG9ydCBpbnB1dCBzYW1w
bGUgcmF0ZXMgYmV0d2VlbiA4Jm5ic3A7a0h6IGFuZAorIDE5MiZuYnNwO2tIeiAoaW5jbHVzaXZl
KS4KK1JhdGVzIG91dHNpZGUgdGhpcyByYW5nZSBNQVkgYmUgaWdub3JlZCBieSBmYWxsaW5nIGJh
Y2sgdG8gdGhlIGRlZmF1bHQgcmF0ZSBvZgorIDQ4Jm5ic3A7a0h6IGluc3RlYWQuCis8dnNwYWNl
IGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0Pk91dHB1dCBHYWluICgxNiBiaXRzLCBzaWduZWQs
IGxpdHRsZSBlbmRpYW4pOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGlzIGlzIGEgZ2Fp
biB0byBiZSBhcHBsaWVkIHdoZW4gZGVjb2RpbmcuCitJdCBpcyAyMCpsb2cxMCBvZiB0aGUgZmFj
dG9yIGJ5IHdoaWNoIHRvIHNjYWxlIHRoZSBkZWNvZGVyIG91dHB1dCB0byBhY2hpZXZlCisgdGhl
IGRlc2lyZWQgcGxheWJhY2sgdm9sdW1lLCBzdG9yZWQgaW4gYSAxNi1iaXQsIHNpZ25lZCwgdHdv
J3MgY29tcGxlbWVudAorIGZpeGVkLXBvaW50IHZhbHVlIHdpdGggOCBmcmFjdGlvbmFsIGJpdHMg
KGkuZS4sCisgUTcuOCZuYnNwOzx4cmVmIHRhcmdldD0icS1ub3RhdGlvbiIvPikuCis8dnNwYWNl
IGJsYW5rTGluZXM9IjEiLz4KK1RvIGFwcGx5IHRoZSBnYWluLCBhbiBpbXBsZW1lbnRhdGlvbiBj
b3VsZCB1c2UKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij48IVtDREFUQVsKK3NhbXBsZSAqPSBwb3coMTAsIG91dHB1dF9nYWluLygyMC4wKjI1NikpICwK
K11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdoZXJlIG91dHB1dF9nYWluIGlzIHRoZSByYXcg
MTYtYml0IHZhbHVlIGZyb20gdGhlIGhlYWRlci4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgor
UGxheWVycyBhbmQgbWVkaWEgZnJhbWV3b3JrcyBTSE9VTEQgYXBwbHkgaXQgYnkgZGVmYXVsdC4K
K0lmIGEgcGxheWVyIGNob29zZXMgdG8gYXBwbHkgYW55IHZvbHVtZSBhZGp1c3RtZW50IG9yIGdh
aW4gbW9kaWZpY2F0aW9uLCBzdWNoCisgYXMgdGhlIFIxMjhfVFJBQ0tfR0FJTiAoc2VlIDx4cmVm
IHRhcmdldD0iY29tbWVudF9oZWFkZXIiLz4pLCB0aGUgYWRqdXN0bWVudAorIE1VU1QgYmUgYXBw
bGllZCBpbiBhZGRpdGlvbiB0byB0aGlzIG91dHB1dCBnYWluIGluIG9yZGVyIHRvIGFjaGlldmUg
cGxheWJhY2sKKyBhdCB0aGUgbm9ybWFsaXplZCB2b2x1bWUuCis8dnNwYWNlIGJsYW5rTGluZXM9
IjEiLz4KK0EgbXV4ZXIgU0hPVUxEIHNldCB0aGlzIGZpZWxkIHRvIHplcm8sIGFuZCBpbnN0ZWFk
IGFwcGx5IGFueSBnYWluIHByaW9yIHRvCisgZW5jb2RpbmcsIHdoZW4gdGhpcyBpcyBwb3NzaWJs
ZSBhbmQgZG9lcyBub3QgY29uZmxpY3Qgd2l0aCB0aGUgdXNlcidzIHdpc2hlcy4KK0Egbm9uemVy
byBvdXRwdXQgZ2FpbiBpbmRpY2F0ZXMgdGhlIGdhaW4gd2FzIGFkanVzdGVkIGFmdGVyIGVuY29k
aW5nLCBvciB0aGF0CisgYSB1c2VyIHdpc2hlZCB0byBhZGp1c3QgdGhlIGdhaW4gZm9yIHBsYXli
YWNrIHdoaWxlIHByZXNlcnZpbmcgdGhlIGFiaWxpdHkKKyB0byByZWNvdmVyIHRoZSBvcmlnaW5h
bCBzaWduYWwgYW1wbGl0dWRlLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitBbHRob3VnaCB0
aGUgb3V0cHV0IGdhaW4gaGFzIGVub3Jtb3VzIHJhbmdlICgrLy0gMTI4IGRCLCBlbm91Z2ggdG8g
YW1wbGlmeQorIGluYXVkaWJsZSBzb3VuZHMgdG8gdGhlIHRocmVzaG9sZCBvZiBwaHlzaWNhbCBw
YWluKSwgbW9zdCBhcHBsaWNhdGlvbnMgY2FuCisgb25seSByZWFzb25hYmx5IHVzZSBhIHNtYWxs
IHBvcnRpb24gb2YgdGhpcyByYW5nZSBhcm91bmQgemVyby4KK1RoZSBsYXJnZSByYW5nZSBzZXJ2
ZXMgaW4gcGFydCB0byBlbnN1cmUgdGhhdCBnYWluIGNhbiBhbHdheXMgYmUgbG9zc2xlc3NseQor
IHRyYW5zZmVycmVkIGJldHdlZW4gT3B1c0hlYWQgYW5kIFIxMjggZ2FpbiB0YWdzIChzZWUgYmVs
b3cpIHdpdGhvdXQKKyBzYXR1cmF0aW5nLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+
Cis8dD5DaGFubmVsIE1hcHBpbmcgRmFtaWx5ICg4IGJpdHMsIHVuc2lnbmVkKToKKzx2c3BhY2Ug
YmxhbmtMaW5lcz0iMSIvPgorVGhpcyBvY3RldCBpbmRpY2F0ZXMgdGhlIG9yZGVyIGFuZCBzZW1h
bnRpYyBtZWFuaW5nIG9mIHRoZSBvdXRwdXQgY2hhbm5lbHMuCis8dnNwYWNlIGJsYW5rTGluZXM9
IjEiLz4KK0VhY2ggY3VycmVudGx5IHNwZWNpZmllZCB2YWx1ZSBvZiB0aGlzIG9jdGV0IGluZGlj
YXRlcyBhIG1hcHBpbmcgZmFtaWx5LCB3aGljaAorIGRlZmluZXMgYSBzZXQgb2YgYWxsb3dlZCBj
aGFubmVsIGNvdW50cywgYW5kIHRoZSBvcmRlcmVkIHNldCBvZiBjaGFubmVsIG5hbWVzCisgZm9y
IGVhY2ggYWxsb3dlZCBjaGFubmVsIGNvdW50LgorVGhlIGRldGFpbHMgYXJlIGRlc2NyaWJlZCBp
biA8eHJlZiB0YXJnZXQ9ImNoYW5uZWxfbWFwcGluZyIvPi4KKzwvdD4KKzx0PkNoYW5uZWwgTWFw
cGluZyBUYWJsZToKK1RoaXMgdGFibGUgZGVmaW5lcyB0aGUgbWFwcGluZyBmcm9tIGVuY29kZWQg
c3RyZWFtcyB0byBvdXRwdXQgY2hhbm5lbHMuCitJdHMgY29udGVudHMgYXJlIHNwZWNpZmllZCBp
biA8eHJlZiB0YXJnZXQ9ImNoYW5uZWxfbWFwcGluZyIvPi4KKzwvdD4KKzwvbGlzdD4KKzwvdD4K
KworPHQ+CitBbGwgZmllbGRzIGluIHRoZSBJRCBoZWFkZXJzIGFyZSBSRVFVSVJFRCwgZXhjZXB0
IGZvciB0aGUgY2hhbm5lbCBtYXBwaW5nCisgdGFibGUsIHdoaWNoIE1VU1QgYmUgb21pdHRlZCB3
aGVuIHRoZSBjaGFubmVsIG1hcHBpbmcgZmFtaWx5IGlzIDAsIGJ1dAorIGlzIFJFUVVJUkVEIG90
aGVyd2lzZS4KK0ltcGxlbWVudGF0aW9ucyBTSE9VTEQgdHJlYXQgYSBzdHJlYW0gYXMgaW52YWxp
ZCBpZiBpdCBjb250YWlucyBhbiBJRCBoZWFkZXIKKyB0aGF0IGRvZXMgbm90IGhhdmUgZW5vdWdo
IGRhdGEgZm9yIHRoZXNlIGZpZWxkcywgZXZlbiBpZiBpdCBjb250YWluIGEgdmFsaWQKKyBNYWdp
YyBTaWduYXR1cmUuCitGdXR1cmUgdmVyc2lvbnMgb2YgdGhpcyBzcGVjaWZpY2F0aW9uLCBldmVu
IGJhY2t3YXJkcy1jb21wYXRpYmxlIHZlcnNpb25zLAorIG1pZ2h0IGluY2x1ZGUgYWRkaXRpb25h
bCBmaWVsZHMgaW4gdGhlIElEIGhlYWRlci4KK0lmIGFuIElEIGhlYWRlciBoYXMgYSBjb21wYXRp
YmxlIG1ham9yIHZlcnNpb24sIGJ1dCBhIGxhcmdlciBtaW5vciB2ZXJzaW9uLAorIGFuIGltcGxl
bWVudGF0aW9uIE1VU1QgTk9UIHRyZWF0IGl0IGFzIGludmFsaWQgZm9yIGNvbnRhaW5pbmcgYWRk
aXRpb25hbCBkYXRhCisgbm90IHNwZWNpZmllZCBoZXJlLCBwcm92aWRlZCBpdCBzdGlsbCBjb21w
bGV0ZXMgb24gdGhlIGZpcnN0IHBhZ2UuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0iY2hhbm5l
bF9tYXBwaW5nIiB0aXRsZT0iQ2hhbm5lbCBNYXBwaW5nIj4KKzx0PgorQW4gT2dnIE9wdXMgc3Ry
ZWFtIGFsbG93cyBtYXBwaW5nIG9uZSBudW1iZXIgb2YgT3B1cyBzdHJlYW1zIChOKSB0byBhIHBv
c3NpYmx5CisgbGFyZ2VyIG51bWJlciBvZiBkZWNvZGVkIGNoYW5uZWxzIChNJm5ic3A7KyZuYnNw
O04pIHRvIHlldCBhbm90aGVyIG51bWJlciBvZgorIG91dHB1dCBjaGFubmVscyAoQyksIHdoaWNo
IG1pZ2h0IGJlIGxhcmdlciBvciBzbWFsbGVyIHRoYW4gdGhlIG51bWJlciBvZgorIGRlY29kZWQg
Y2hhbm5lbHMuCitUaGUgb3JkZXIgYW5kIG1lYW5pbmcgb2YgdGhlc2UgY2hhbm5lbHMgYXJlIGRl
ZmluZWQgYnkgYSBjaGFubmVsIG1hcHBpbmcsCisgd2hpY2ggY29uc2lzdHMgb2YgdGhlICdjaGFu
bmVsIG1hcHBpbmcgZmFtaWx5JyBvY3RldCBhbmQsIGZvciBjaGFubmVsIG1hcHBpbmcKKyBmYW1p
bGllcyBvdGhlciB0aGFuIGZhbWlseSZuYnNwOzAsIGEgY2hhbm5lbCBtYXBwaW5nIHRhYmxlLCBh
cyBpbGx1c3RyYXRlZCBpbgorIDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nX3RhYmxlIi8+
LgorPC90PgorCis8ZmlndXJlIGFuY2hvcj0iY2hhbm5lbF9tYXBwaW5nX3RhYmxlIiB0aXRsZT0i
Q2hhbm5lbCBNYXBwaW5nIFRhYmxlIgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAg
ICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0
IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0rLSstKy0rLSstKy0rLSsKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgU3RyZWFtIENvdW50ICB8Cisr
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKworfCBDb3VwbGVkIENvdW50IHwgICAgICAgICAgICAgIENoYW5uZWwgTWFwcGluZy4u
LiAgICAgICAgICAgICAgIDoKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKwor
PHQ+CitUaGUgZmllbGRzIGluIHRoZSBjaGFubmVsIG1hcHBpbmcgdGFibGUgaGF2ZSB0aGUgZm9s
bG93aW5nIG1lYW5pbmc6Cis8bGlzdCBzdHlsZT0ibnVtYmVycyIgY291bnRlcj0iOCI+Cis8dD5T
dHJlYW0gQ291bnQgJ04nICg4IGJpdHMsIHVuc2lnbmVkKToKKzx2c3BhY2UgYmxhbmtMaW5lcz0i
MSIvPgorVGhpcyBpcyB0aGUgdG90YWwgbnVtYmVyIG9mIHN0cmVhbXMgZW5jb2RlZCBpbiBlYWNo
IE9nZyBwYWNrZXQuCitUaGlzIHZhbHVlIGlzIG5lY2Vzc2FyeSB0byBjb3JyZWN0bHkgcGFyc2Ug
dGhlIHBhY2tlZCBPcHVzIHBhY2tldHMgaW5zaWRlIGFuCisgT2dnIHBhY2tldCwgYXMgZGVzY3Jp
YmVkIGluIDx4cmVmIHRhcmdldD0icGFja2V0X29yZ2FuaXphdGlvbiIvPi4KK1RoaXMgdmFsdWUg
TVVTVCBOT1QgYmUgemVybywgYXMgd2l0aG91dCBhdCBsZWFzdCBvbmUgT3B1cyBwYWNrZXQgd2l0
aCBhIHZhbGlkCisgVE9DIHNlcXVlbmNlLCBhIGRlbXV4ZXIgY2Fubm90IHJlY292ZXIgdGhlIGR1
cmF0aW9uIG9mIGFuIE9nZyBwYWNrZXQuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0ZvciBj
aGFubmVsIG1hcHBpbmcgZmFtaWx5Jm5ic3A7MCwgdGhpcyB2YWx1ZSBkZWZhdWx0cyB0byAxLCBh
bmQgaXMgbm90IGNvZGVkLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5Db3Vw
bGVkIFN0cmVhbSBDb3VudCAnTScgKDggYml0cywgdW5zaWduZWQpOgorVGhpcyBpcyB0aGUgbnVt
YmVyIG9mIHN0cmVhbXMgd2hvc2UgZGVjb2RlcnMgYXJlIHRvIGJlIGNvbmZpZ3VyZWQgdG8gcHJv
ZHVjZQorIHR3byBjaGFubmVscyAoc3RlcmVvKS4KK1RoaXMgTVVTVCBiZSBubyBsYXJnZXIgdGhh
biB0aGUgdG90YWwgbnVtYmVyIG9mIHN0cmVhbXMsIE4uCis8dnNwYWNlIGJsYW5rTGluZXM9IjEi
Lz4KK0VhY2ggcGFja2V0IGluIGFuIE9wdXMgc3RyZWFtIGhhcyBhbiBpbnRlcm5hbCBjaGFubmVs
IGNvdW50IG9mIDEgb3IgMiwgd2hpY2gKKyBjYW4gY2hhbmdlIGZyb20gcGFja2V0IHRvIHBhY2tl
dC4KK1RoaXMgaXMgc2VsZWN0ZWQgYnkgdGhlIGVuY29kZXIgZGVwZW5kaW5nIG9uIHRoZSBiaXRy
YXRlIGFuZCB0aGUgYXVkaW8gYmVpbmcKKyBlbmNvZGVkLgorVGhlIG9yaWdpbmFsIGNoYW5uZWwg
Y291bnQgb2YgdGhlIGF1ZGlvIHBhc3NlZCB0byB0aGUgZW5jb2RlciBpcyBub3QKKyBuZWNlc3Nh
cmlseSBwcmVzZXJ2ZWQgYnkgdGhlIGxvc3N5IGNvbXByZXNzaW9uLgorPHZzcGFjZSBibGFua0xp
bmVzPSIxIi8+CitSZWdhcmRsZXNzIG9mIHRoZSBpbnRlcm5hbCBjaGFubmVsIGNvdW50LCBhbnkg
T3B1cyBzdHJlYW0gY2FuIGJlIGRlY29kZWQgYXMKKyBtb25vIChhIHNpbmdsZSBjaGFubmVsKSBv
ciBzdGVyZW8gKHR3byBjaGFubmVscykgYnkgYXBwcm9wcmlhdGUgaW5pdGlhbGl6YXRpb24KKyBv
ZiB0aGUgZGVjb2Rlci4KK1RoZSAnY291cGxlZCBzdHJlYW0gY291bnQnIGZpZWxkIGluZGljYXRl
cyB0aGF0IHRoZSBkZWNvZGVycyBmb3IgdGhlIGZpcnN0IE0KKyBPcHVzIHN0cmVhbXMgYXJlIHRv
IGJlIGluaXRpYWxpemVkIGZvciBzdGVyZW8gKHR3by1jaGFubmVsKSBvdXRwdXQsIGFuZCB0aGUK
KyByZW1haW5pbmcgKE4mbmJzcDstJm5ic3A7TSkgZGVjb2RlcnMgYXJlIHRvIGJlIGluaXRpYWxp
emVkIGZvciBtb25vIChhIHNpbmdsZQorIGNoYW5uZWwpIG9ubHkuCitUaGUgdG90YWwgbnVtYmVy
IG9mIGRlY29kZWQgY2hhbm5lbHMsIChNJm5ic3A7KyZuYnNwO04pLCBNVVNUIGJlIG5vIGxhcmdl
ciB0aGFuCisgMjU1LCBhcyB0aGVyZSBpcyBubyB3YXkgdG8gaW5kZXggbW9yZSBjaGFubmVscyB0
aGFuIHRoYXQgaW4gdGhlIGNoYW5uZWwKKyBtYXBwaW5nLgorPHZzcGFjZSBibGFua0xpbmVzPSIx
Ii8+CitGb3IgY2hhbm5lbCBtYXBwaW5nIGZhbWlseSZuYnNwOzAsIHRoaXMgdmFsdWUgZGVmYXVs
dHMgdG8gKEMmbmJzcDstJm5ic3A7MSkKKyAoaS5lLiwgMCBmb3IgbW9ubyBhbmQgMSBmb3Igc3Rl
cmVvKSwgYW5kIGlzIG5vdCBjb2RlZC4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorPC90Pgor
PHQ+Q2hhbm5lbCBNYXBwaW5nICg4KkMgYml0cyk6CitUaGlzIGNvbnRhaW5zIG9uZSBvY3RldCBw
ZXIgb3V0cHV0IGNoYW5uZWwsIGluZGljYXRpbmcgd2hpY2ggZGVjb2RlZCBjaGFubmVsCisgaXMg
dG8gYmUgdXNlZCBmb3IgZWFjaCBvbmUuCitMZXQgJ2luZGV4JyBiZSB0aGUgdmFsdWUgb2YgdGhp
cyBvY3RldCBmb3IgYSBwYXJ0aWN1bGFyIG91dHB1dCBjaGFubmVsLgorVGhpcyB2YWx1ZSBNVVNU
IGVpdGhlciBiZSBzbWFsbGVyIHRoYW4gKE0mbmJzcDsrJm5ic3A7TiksIG9yIGJlIHRoZSBzcGVj
aWFsCisgdmFsdWUgMjU1LgorSWYgJ2luZGV4JyBpcyBsZXNzIHRoYW4gMipNLCB0aGUgb3V0cHV0
IE1VU1QgYmUgdGFrZW4gZnJvbSBkZWNvZGluZyBzdHJlYW0KKyAoJ2luZGV4Jy8yKSBhcyBzdGVy
ZW8gYW5kIHNlbGVjdGluZyB0aGUgbGVmdCBjaGFubmVsIGlmICdpbmRleCcgaXMgZXZlbiwgYW5k
CisgdGhlIHJpZ2h0IGNoYW5uZWwgaWYgJ2luZGV4JyBpcyBvZGQuCitJZiAnaW5kZXgnIGlzIDIq
TSBvciBsYXJnZXIsIGJ1dCBsZXNzIHRoYW4gMjU1LCB0aGUgb3V0cHV0IE1VU1QgYmUgdGFrZW4g
ZnJvbQorIGRlY29kaW5nIHN0cmVhbSAoJ2luZGV4JyZuYnNwOy0mbmJzcDtNKSBhcyBtb25vLgor
SWYgJ2luZGV4JyBpcyAyNTUsIHRoZSBjb3JyZXNwb25kaW5nIG91dHB1dCBjaGFubmVsIE1VU1Qg
Y29udGFpbiBwdXJlIHNpbGVuY2UuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1RoZSBudW1i
ZXIgb2Ygb3V0cHV0IGNoYW5uZWxzLCBDLCBpcyBub3QgY29uc3RyYWluZWQgdG8gbWF0Y2ggdGhl
IG51bWJlciBvZgorIGRlY29kZWQgY2hhbm5lbHMgKE0mbmJzcDsrJm5ic3A7TikuCitBIHNpbmds
ZSBpbmRleCB2YWx1ZSBNQVkgYXBwZWFyIG11bHRpcGxlIHRpbWVzLCBpLmUuLCB0aGUgc2FtZSBk
ZWNvZGVkIGNoYW5uZWwKKyBtaWdodCBiZSBtYXBwZWQgdG8gbXVsdGlwbGUgb3V0cHV0IGNoYW5u
ZWxzLgorU29tZSBkZWNvZGVkIGNoYW5uZWxzIG1pZ2h0IG5vdCBiZSBhc3NpZ25lZCB0byBhbnkg
b3V0cHV0IGNoYW5uZWwsIGFzIHdlbGwuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK0ZvciBj
aGFubmVsIG1hcHBpbmcgZmFtaWx5Jm5ic3A7MCwgdGhlIGZpcnN0IGluZGV4IGRlZmF1bHRzIHRv
IDAsIGFuZCBpZgorIEMmbmJzcDs9PSZuYnNwOzIsIHRoZSBzZWNvbmQgaW5kZXggZGVmYXVsdHMg
dG8gMS4KK05laXRoZXIgaW5kZXggaXMgY29kZWQuCis8L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzx0
PgorQWZ0ZXIgcHJvZHVjaW5nIHRoZSBvdXRwdXQgY2hhbm5lbHMsIHRoZSBjaGFubmVsIG1hcHBp
bmcgZmFtaWx5IGRldGVybWluZXMgdGhlCisgc2VtYW50aWMgbWVhbmluZyBvZiBlYWNoIG9uZS4K
K1RoZXJlIGFyZSB0aHJlZSBkZWZpbmVkIG1hcHBpbmcgZmFtaWxpZXMgaW4gdGhpcyBzcGVjaWZp
Y2F0aW9uLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImNoYW5uZWxfbWFwcGluZ18wIiB0aXRs
ZT0iQ2hhbm5lbCBNYXBwaW5nIEZhbWlseSAwIj4KKzx0PgorQWxsb3dlZCBudW1iZXJzIG9mIGNo
YW5uZWxzOiAxIG9yIDIuCitSVFAgbWFwcGluZy4KK1RoaXMgaXMgdGhlIHNhbWUgY2hhbm5lbCBp
bnRlcnByZXRhdGlvbiBhcyA8eHJlZiB0YXJnZXQ9IlJGQzc1ODciLz4uCis8L3Q+Cis8dD4KKzxs
aXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PjEgY2hhbm5lbDogbW9ub3Bob25pYyAobW9ubykuPC90
PgorPHQ+MiBjaGFubmVsczogc3RlcmVvIChsZWZ0LCByaWdodCkuPC90PgorPC9saXN0PgorU3Bl
Y2lhbCBtYXBwaW5nOiBUaGlzIGNoYW5uZWwgbWFwcGluZyB2YWx1ZSBhbHNvCisgaW5kaWNhdGVz
IHRoYXQgdGhlIGNvbnRlbnRzIGNvbnNpc3RzIG9mIGEgc2luZ2xlIE9wdXMgc3RyZWFtIHRoYXQg
aXMgc3RlcmVvIGlmCisgYW5kIG9ubHkgaWYgQyZuYnNwOz09Jm5ic3A7Miwgd2l0aCBzdHJlYW0g
aW5kZXgmbmJzcDswIG1hcHBlZCB0byBvdXRwdXQKKyBjaGFubmVsJm5ic3A7MCAobW9ubywgb3Ig
bGVmdCBjaGFubmVsKSBhbmQgc3RyZWFtIGluZGV4Jm5ic3A7MSBtYXBwZWQgdG8KKyBvdXRwdXQg
Y2hhbm5lbCZuYnNwOzEgKHJpZ2h0IGNoYW5uZWwpIGlmIHN0ZXJlby4KK1doZW4gdGhlICdjaGFu
bmVsIG1hcHBpbmcgZmFtaWx5JyBvY3RldCBoYXMgdGhpcyB2YWx1ZSwgdGhlIGNoYW5uZWwgbWFw
cGluZworIHRhYmxlIE1VU1QgYmUgb21pdHRlZCBmcm9tIHRoZSBJRCBoZWFkZXIgcGFja2V0Lgor
PC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImNoYW5uZWxfbWFwcGluZ18xIiB0
aXRsZT0iQ2hhbm5lbCBNYXBwaW5nIEZhbWlseSAxIj4KKzx0PgorQWxsb3dlZCBudW1iZXJzIG9m
IGNoYW5uZWxzOiAxLi4uOC4KK1ZvcmJpcyBjaGFubmVsIG9yZGVyIChzZWUgYmVsb3cpLgorPC90
PgorPHQ+CitFYWNoIGNoYW5uZWwgaXMgYXNzaWduZWQgdG8gYSBzcGVha2VyIGxvY2F0aW9uIGlu
IGEgY29udmVudGlvbmFsIHN1cnJvdW5kCisgYXJyYW5nZW1lbnQuCitTcGVjaWZpYyBsb2NhdGlv
bnMgZGVwZW5kIG9uIHRoZSBudW1iZXIgb2YgY2hhbm5lbHMsIGFuZCBhcmUgZ2l2ZW4gYmVsb3cK
KyBpbiBvcmRlciBvZiB0aGUgY29ycmVzcG9uZGluZyBjaGFubmVsIGluZGljZXMuCis8bGlzdCBz
dHlsZT0ic3ltYm9scyI+CisgIDx0PjEgY2hhbm5lbDogbW9ub3Bob25pYyAobW9ubykuPC90Pgor
ICA8dD4yIGNoYW5uZWxzOiBzdGVyZW8gKGxlZnQsIHJpZ2h0KS48L3Q+CisgIDx0PjMgY2hhbm5l
bHM6IGxpbmVhciBzdXJyb3VuZCAobGVmdCwgY2VudGVyLCByaWdodCk8L3Q+CisgIDx0PjQgY2hh
bm5lbHM6IHF1YWRyYXBob25pYyAoZnJvbnQmbmJzcDtsZWZ0LCBmcm9udCZuYnNwO3JpZ2h0LCBy
ZWFyJm5ic3A7bGVmdCwgcmVhciZuYnNwO3JpZ2h0KS48L3Q+CisgIDx0PjUgY2hhbm5lbHM6IDUu
MCBzdXJyb3VuZCAoZnJvbnQmbmJzcDtsZWZ0LCBmcm9udCZuYnNwO2NlbnRlciwgZnJvbnQmbmJz
cDtyaWdodCwgcmVhciZuYnNwO2xlZnQsIHJlYXImbmJzcDtyaWdodCkuPC90PgorICA8dD42IGNo
YW5uZWxzOiA1LjEgc3Vycm91bmQgKGZyb250Jm5ic3A7bGVmdCwgZnJvbnQmbmJzcDtjZW50ZXIs
IGZyb250Jm5ic3A7cmlnaHQsIHJlYXImbmJzcDtsZWZ0LCByZWFyJm5ic3A7cmlnaHQsIExGRSku
PC90PgorICA8dD43IGNoYW5uZWxzOiA2LjEgc3Vycm91bmQgKGZyb250Jm5ic3A7bGVmdCwgZnJv
bnQmbmJzcDtjZW50ZXIsIGZyb250Jm5ic3A7cmlnaHQsIHNpZGUmbmJzcDtsZWZ0LCBzaWRlJm5i
c3A7cmlnaHQsIHJlYXImbmJzcDtjZW50ZXIsIExGRSkuPC90PgorICA8dD44IGNoYW5uZWxzOiA3
LjEgc3Vycm91bmQgKGZyb250Jm5ic3A7bGVmdCwgZnJvbnQmbmJzcDtjZW50ZXIsIGZyb250Jm5i
c3A7cmlnaHQsIHNpZGUmbmJzcDtsZWZ0LCBzaWRlJm5ic3A7cmlnaHQsIHJlYXImbmJzcDtsZWZ0
LCByZWFyJm5ic3A7cmlnaHQsIExGRSk8L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8dD4KK1RoaXMgc2V0
IG9mIHN1cnJvdW5kIG9wdGlvbnMgYW5kIHNwZWFrZXIgbG9jYXRpb24gb3JkZXJpbmdzIGlzIHRo
ZSBzYW1lCisgYXMgdGhvc2UgdXNlZCBieSB0aGUgVm9yYmlzIGNvZGVjIDx4cmVmIHRhcmdldD0i
dm9yYmlzLW1hcHBpbmciLz4uCitUaGUgb3JkZXJpbmcgaXMgZGlmZmVyZW50IGZyb20gdGhlIG9u
ZSB1c2VkIGJ5IHRoZQorIFdBVkUgPHhyZWYgdGFyZ2V0PSJ3YXZlLW11bHRpY2hhbm5lbCIvPiBh
bmQKKyBGcmVlIExvc3NsZXNzIEF1ZGlvIENvZGVjIChGTEFDKSA8eHJlZiB0YXJnZXQ9ImZsYWMi
Lz4gZm9ybWF0cywKKyBzbyBjb3JyZWN0IG9yZGVyaW5nIHJlcXVpcmVzIHBlcm11dGF0aW9uIG9m
IHRoZSBvdXRwdXQgY2hhbm5lbHMgd2hlbiBkZWNvZGluZworIHRvIG9yIGVuY29kaW5nIGZyb20g
dGhvc2UgZm9ybWF0cy4KKydMRkUnIGhlcmUgcmVmZXJzIHRvIGEgTG93IEZyZXF1ZW5jeSBFZmZl
Y3RzIGNoYW5uZWwsIG9mdGVuIG1hcHBlZCB0byBhCisgIHN1Yndvb2ZlciB3aXRoIG5vIHBhcnRp
Y3VsYXIgc3BhdGlhbCBwb3NpdGlvbi4KK0ltcGxlbWVudGF0aW9ucyBTSE9VTEQgaWRlbnRpZnkg
J3NpZGUnIG9yICdyZWFyJyBzcGVha2VyIGxvY2F0aW9ucyB3aXRoCisgJ3N1cnJvdW5kJyBhbmQg
J2JhY2snIGFzIGFwcHJvcHJpYXRlIHdoZW4gaW50ZXJmYWNpbmcgd2l0aCBhdWRpbyBmb3JtYXRz
Cisgb3Igc3lzdGVtcyB3aGljaCBwcmVmZXIgdGhhdCB0ZXJtaW5vbG9neS4KKzwvdD4KKzwvc2Vj
dGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJjaGFubmVsX21hcHBpbmdfMjU1IgorIHRpdGxlPSJD
aGFubmVsIE1hcHBpbmcgRmFtaWx5IDI1NSI+Cis8dD4KK0FsbG93ZWQgbnVtYmVycyBvZiBjaGFu
bmVsczogMS4uLjI1NS4KK05vIGRlZmluZWQgY2hhbm5lbCBtZWFuaW5nLgorPC90PgorPHQ+CitD
aGFubmVscyBhcmUgdW5pZGVudGlmaWVkLgorR2VuZXJhbC1wdXJwb3NlIHBsYXllcnMgU0hPVUxE
IE5PVCBhdHRlbXB0IHRvIHBsYXkgdGhlc2Ugc3RyZWFtcy4KK09mZmxpbmUgaW1wbGVtZW50YXRp
b25zIE1BWSBkZWludGVybGVhdmUgdGhlIG91dHB1dCBpbnRvIHNlcGFyYXRlIFBDTSBmaWxlcywK
KyBvbmUgcGVyIGNoYW5uZWwuCitJbXBsZW1lbnRhdGlvbnMgU0hPVUxEIE5PVCBwcm9kdWNlIG91
dHB1dCBmb3IgY2hhbm5lbHMgbWFwcGVkIHRvIHN0cmVhbSBpbmRleAorIDI1NSAocHVyZSBzaWxl
bmNlKSB1bmxlc3MgdGhleSBoYXZlIG5vIG90aGVyIHdheSB0byBpbmRpY2F0ZSB0aGUgaW5kZXgg
b2YKKyBub24tc2lsZW50IGNoYW5uZWxzLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBh
bmNob3I9ImNoYW5uZWxfbWFwcGluZ191bmRlZmluZWQiCisgdGl0bGU9IlVuZGVmaW5lZCBDaGFu
bmVsIE1hcHBpbmdzIj4KKzx0PgorVGhlIHJlbWFpbmluZyBjaGFubmVsIG1hcHBpbmcgZmFtaWxp
ZXMgKDIuLi4yNTQpIGFyZSByZXNlcnZlZC4KK0EgZGVtdXhlciBpbXBsZW1lbnRhdGlvbiBlbmNv
dW50ZXJpbmcgYSByZXNlcnZlZCBjaGFubmVsIG1hcHBpbmcgZmFtaWx5IHZhbHVlCisgU0hPVUxE
IGFjdCBhcyB0aG91Z2ggdGhlIHZhbHVlIGlzIDI1NS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNl
Y3Rpb24gYW5jaG9yPSJkb3dubWl4IiB0aXRsZT0iRG93bm1peGluZyI+Cis8dD4KK0FuIE9nZyBP
cHVzIHBsYXllciBNVVNUIHN1cHBvcnQgYW55IHZhbGlkIGNoYW5uZWwgbWFwcGluZyB3aXRoIGEg
Y2hhbm5lbAorIG1hcHBpbmcgZmFtaWx5IG9mIDAgb3IgMSwgZXZlbiBpZiB0aGUgbnVtYmVyIG9m
IGNoYW5uZWxzIGRvZXMgbm90IG1hdGNoIHRoZQorIHBoeXNpY2FsbHkgY29ubmVjdGVkIGF1ZGlv
IGhhcmR3YXJlLgorUGxheWVycyBTSE9VTEQgcGVyZm9ybSBjaGFubmVsIG1peGluZyB0byBpbmNy
ZWFzZSBvciByZWR1Y2UgdGhlIG51bWJlciBvZgorIGNoYW5uZWxzIGFzIG5lZWRlZC4KKzwvdD4K
KworPHQ+CitJbXBsZW1lbnRhdGlvbnMgTUFZIHVzZSB0aGUgbWF0cmljZXMgaW4KKyBGaWd1cmVz
Jm5ic3A7PHhyZWYgdGFyZ2V0PSJkb3dubWl4LW1hdHJpeC0zIiBmb3JtYXQ9ImNvdW50ZXIiLz4K
KyB0aHJvdWdoJm5ic3A7PHhyZWYgdGFyZ2V0PSJkb3dubWl4LW1hdHJpeC04IiBmb3JtYXQ9ImNv
dW50ZXIiLz4gdG8gaW1wbGVtZW50CisgZG93bm1peGluZyBmcm9tIG11bHRpY2hhbm5lbCBmaWxl
cyB1c2luZworIDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nXzEiPkNoYW5uZWwgTWFwcGlu
ZyBGYW1pbHkgMTwveHJlZj4sIHdoaWNoIGFyZQorIGtub3duIHRvIGdpdmUgYWNjZXB0YWJsZSBy
ZXN1bHRzIGZvciBzdGVyZW8uCitNYXRyaWNlcyBmb3IgMyBhbmQgNCBjaGFubmVscyBhcmUgbm9y
bWFsaXplZCBzbyBlYWNoIGNvZWZmaWNpZW50IHJvdyBzdW1zCisgdG8gMSB0byBhdm9pZCBjbGlw
cGluZy4KK0ZvciA1IG9yIG1vcmUgY2hhbm5lbHMgdGhleSBhcmUgbm9ybWFsaXplZCB0byAyIGFz
IGEgY29tcHJvbWlzZSBiZXR3ZWVuCisgY2xpcHBpbmcgYW5kIGR5bmFtaWMgcmFuZ2UgcmVkdWN0
aW9uLgorPC90PgorPHQ+CitJbiB0aGVzZSBtYXRyaWNlcyB0aGUgZnJvbnQgbGVmdCBhbmQgZnJv
bnQgcmlnaHQgY2hhbm5lbHMgYXJlIGdlbmVyYWxseQorcGFzc2VkIHRocm91Z2ggZGlyZWN0bHku
CitXaGVuIGEgc3Vycm91bmQgY2hhbm5lbCBpcyBzcGxpdCBiZXR3ZWVuIGJvdGggdGhlIGxlZnQg
YW5kIHJpZ2h0IHN0ZXJlbworIGNoYW5uZWxzLCBjb2VmZmljaWVudHMgYXJlIGNob3NlbiBzbyB0
aGVpciBzcXVhcmVzIHN1bSB0byAxLCB3aGljaAorIGhlbHBzIHByZXNlcnZlIHRoZSBwZXJjZWl2
ZWQgaW50ZW5zaXR5LgorUmVhciBjaGFubmVscyBhcmUgbWl4ZWQgbW9yZSBkaWZmdXNlbHkgb3Ig
YXR0ZW51YXRlZCB0byBtYWludGFpbiBmb2N1cworIG9uIHRoZSBmcm9udCBjaGFubmVscy4KKzwv
dD4KKworPGZpZ3VyZSBhbmNob3I9ImRvd25taXgtbWF0cml4LTMiCisgdGl0bGU9IlN0ZXJlbyBk
b3dubWl4IG1hdHJpeCBmb3IgdGhlIGxpbmVhciBzdXJyb3VuZCBjaGFubmVsIG1hcHBpbmciCisg
YWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK0wgb3V0
cHV0ID0gKCAwLjU4NTc4NiAqIGxlZnQgKyAwLjQxNDIxNCAqIGNlbnRlciAgICAgICAgICAgICAg
ICAgICAgKQorUiBvdXRwdXQgPSAoICAgICAgICAgICAgICAgICAgIDAuNDE0MjE0ICogY2VudGVy
ICsgMC41ODU3ODYgKiByaWdodCApCitdXT48L2FydHdvcms+Cis8cG9zdGFtYmxlPgorRXhhY3Qg
Y29lZmZpY2llbnQgdmFsdWVzIGFyZSAxIGFuZCAxL3NxcnQoMiksIG11bHRpcGxpZWQgYnkKKyAx
LygxJm5ic3A7KyZuYnNwOzEvc3FydCgyKSkgZm9yIG5vcm1hbGl6YXRpb24uCis8L3Bvc3RhbWJs
ZT4KKzwvZmlndXJlPgorCis8ZmlndXJlIGFuY2hvcj0iZG93bm1peC1tYXRyaXgtNCIKKyB0aXRs
ZT0iU3RlcmVvIGRvd25taXggbWF0cml4IGZvciB0aGUgcXVhZHJhcGhvbmljIGNoYW5uZWwgbWFw
cGluZyIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRB
WworLyAgICAgICAgICBcICAgLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
IC8gRkwgXAorfCBMIG91dHB1dCB8ICAgfCAwLjQyMjY1MCAwLjAwMDAwMCAwLjM2NjAyNSAwLjIx
MTMyNSB8IHwgRlIgfAorfCBSIG91dHB1dCB8ID0gfCAwLjAwMDAwMCAwLjQyMjY1MCAwLjIxMTMy
NSAwLjM2NjAyNSB8IHwgUkwgfAorXCAgICAgICAgICAvICAgXCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvIFwgUlIgLworXV0+PC9hcnR3b3JrPgorPHBvc3RhbWJsZT4KK0V4
YWN0IGNvZWZmaWNpZW50IHZhbHVlcyBhcmUgMSwgc3FydCgzKS8yIGFuZCAxLzIsIG11bHRpcGxp
ZWQgYnkKKyAxLygxJm5ic3A7KyZuYnNwO3NxcnQoMykvMiZuYnNwOysmbmJzcDsxLzIpIGZvciBu
b3JtYWxpemF0aW9uLgorPC9wb3N0YW1ibGU+Cis8L2ZpZ3VyZT4KKworPGZpZ3VyZSBhbmNob3I9
ImRvd25taXgtbWF0cml4LTUiCisgdGl0bGU9IlN0ZXJlbyBkb3dubWl4IG1hdHJpeCBmb3IgdGhl
IDUuMCBzdXJyb3VuZCBtYXBwaW5nIgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvIEZMIFwKKy8gICBcICAgLyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcIHwgRkMgfAorfCBMIHwgICB8IDAuNjUwODAyIDAu
NDYwMTg2IDAuMDAwMDAwIDAuNTYzNjExIDAuMzI1NDAxIHwgfCBGUiB8Cit8IFIgfCA9IHwgMC4w
MDAwMDAgMC40NjAxODYgMC42NTA4MDIgMC4zMjU0MDEgMC41NjM2MTEgfCB8IFJMIHwKK1wgICAv
ICAgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvIHwgUlIg
fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXCAgICAvCitdXT48L2FydHdvcms+Cis8cG9zdGFtYmxlPgorRXhhY3QgY29lZmZpY2llbnQg
dmFsdWVzIGFyZSAxLCAxL3NxcnQoMiksIHNxcnQoMykvMiBhbmQgMS8yLCBtdWx0aXBsaWVkIGJ5
CisgMi8oMSZuYnNwOysmbmJzcDsxL3NxcnQoMikmbmJzcDsrJm5ic3A7c3FydCgzKS8yJm5ic3A7
KyZuYnNwOzEvMikKKyBmb3Igbm9ybWFsaXphdGlvbi4KKzwvcG9zdGFtYmxlPgorPC9maWd1cmU+
CisKKzxmaWd1cmUgYW5jaG9yPSJkb3dubWl4LW1hdHJpeC02IgorIHRpdGxlPSJTdGVyZW8gZG93
bm1peCBtYXRyaXggZm9yIHRoZSA1LjEgc3Vycm91bmQgbWFwcGluZyIKKyBhbGlnbj0iY2VudGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9GTCBcCisvIFwg
ICAvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwgfEZDIHwKK3xMfCAgIHwgMC41MjkwNjcgMC4zNzQxMDcgMC4wMDAwMDAgMC40NTgxODYgMC4y
NjQ1MzQgMC4zNzQxMDcgfCB8RlIgfAorfFJ8ID0gfCAwLjAwMDAwMCAwLjM3NDEwNyAwLjUyOTA2
NyAwLjI2NDUzNCAwLjQ1ODE4NiAwLjM3NDEwNyB8IHxSTCB8CitcIC8gICBcICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gfFJSIHwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcTEZFLworXV0+PC9hcnR3b3JrPgorPHBvc3RhbWJsZT4KK0V4YWN0IGNvZWZmaWNpZW50IHZh
bHVlcyBhcmUgMSwgMS9zcXJ0KDIpLCBzcXJ0KDMpLzIgYW5kIDEvMiwgbXVsdGlwbGllZCBieQor
Mi8oMSZuYnNwOysmbmJzcDsxL3NxcnQoMikmbmJzcDsrJm5ic3A7c3FydCgzKS8yJm5ic3A7KyZu
YnNwOzEvMiArIDEvc3FydCgyKSkKKyBmb3Igbm9ybWFsaXphdGlvbi4KKzwvcG9zdGFtYmxlPgor
PC9maWd1cmU+CisKKzxmaWd1cmUgYW5jaG9yPSJkb3dubWl4LW1hdHJpeC03IgorIHRpdGxlPSJT
dGVyZW8gZG93bm1peCBtYXRyaXggZm9yIHRoZSA2LjEgc3Vycm91bmQgbWFwcGluZyIKKyBhbGln
bj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIC8gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorIHwgMC40NTUzMTAgMC4zMjE5NTMgMC4wMDAwMDAgMC4zOTQzMTAgMC4yMjc2NTUgMC4yNzg4
MTkgMC4zMjE5NTMgfAorIHwgMC4wMDAwMDAgMC4zMjE5NTMgMC40NTUzMTAgMC4yMjc2NTUgMC4z
OTQzMTAgMC4yNzg4MTkgMC4zMjE5NTMgfAorIFwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLworXV0+PC9hcnR3b3JrPgorPHBv
c3RhbWJsZT4KK0V4YWN0IGNvZWZmaWNpZW50IHZhbHVlcyBhcmUgMSwgMS9zcXJ0KDIpLCBzcXJ0
KDMpLzIsIDEvMiBhbmQKKyBzcXJ0KDMpLzIvc3FydCgyKSwgbXVsdGlwbGllZCBieQorIDIvKDEm
bmJzcDsrJm5ic3A7MS9zcXJ0KDIpJm5ic3A7KyZuYnNwO3NxcnQoMykvMiZuYnNwOysmbmJzcDsx
LzIgKworIHNxcnQoMykvMi9zcXJ0KDIpICsgMS9zcXJ0KDIpKSBmb3Igbm9ybWFsaXphdGlvbi4K
K1RoZSBjb2VmZmljaWVudHMgYXJlIGluIHRoZSBzYW1lIG9yZGVyIGFzIGluIDx4cmVmIHRhcmdl
dD0iY2hhbm5lbF9tYXBwaW5nXzEiIC8+LAorIGFuZCB0aGUgbWF0cmljZXMgYWJvdmUuCis8L3Bv
c3RhbWJsZT4KKzwvZmlndXJlPgorCis8ZmlndXJlIGFuY2hvcj0iZG93bm1peC1tYXRyaXgtOCIK
KyB0aXRsZT0iU3RlcmVvIGRvd25taXggbWF0cml4IGZvciB0aGUgNy4xIHN1cnJvdW5kIG1hcHBp
bmciCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsK
Ky8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKK3wgLjM4ODYzMSAuMjc0ODA0IC4wMDAwMDAgLjMzNjU2NSAuMTk0MzE2IC4z
MzY1NjUgLjE5NDMxNiAuMjc0ODA0IHwKK3wgLjAwMDAwMCAuMjc0ODA0IC4zODg2MzEgLjE5NDMx
NiAuMzM2NTY1IC4xOTQzMTYgLjMzNjU2NSAuMjc0ODA0IHwKK1wgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8KK11dPjwvYXJ0
d29yaz4KKzxwb3N0YW1ibGU+CitFeGFjdCBjb2VmZmljaWVudCB2YWx1ZXMgYXJlIDEsIDEvc3Fy
dCgyKSwgc3FydCgzKS8yIGFuZCAxLzIsIG11bHRpcGxpZWQgYnkKKyAyLygyJm5ic3A7KyZuYnNw
OzIvc3FydCgyKSZuYnNwOysmbmJzcDtzcXJ0KDMpKSBmb3Igbm9ybWFsaXphdGlvbi4KK1RoZSBj
b2VmZmljaWVudHMgYXJlIGluIHRoZSBzYW1lIG9yZGVyIGFzIGluIDx4cmVmIHRhcmdldD0iY2hh
bm5lbF9tYXBwaW5nXzEiIC8+LAorIGFuZCB0aGUgbWF0cmljZXMgYWJvdmUuCis8L3Bvc3RhbWJs
ZT4KKzwvZmlndXJlPgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4gPCEtLSBlbmQgY2hhbm5l
bF9tYXBwaW5nX3RhYmxlIC0tPgorCis8L3NlY3Rpb24+IDwhLS0gZW5kIGlkX2hlYWRlciAtLT4K
KworPHNlY3Rpb24gYW5jaG9yPSJjb21tZW50X2hlYWRlciIgdGl0bGU9IkNvbW1lbnQgSGVhZGVy
Ij4KKworPGZpZ3VyZSBhbmNob3I9ImNvbW1lbnRfaGVhZGVyX3BhY2tldCIgdGl0bGU9IkNvbW1l
bnQgSGVhZGVyIFBhY2tldCIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50
ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAy
ICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYg
NyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgJ08nICAgICAg
fCAgICAgICdwJyAgICAgIHwgICAgICAndScgICAgICB8ICAgICAgJ3MnICAgICAgfAorKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSsKK3wgICAgICAnVCcgICAgICB8ICAgICAgJ2EnICAgICAgfCAgICAgICdnJyAgICAgIHwgICAg
ICAncycgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgIFZlbmRvciBTdHJp
bmcgTGVuZ3RoICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAg
ICAgICAgICAgICAgICAgICAgICAgIFZlbmRvciBTdHJpbmcuLi4gICAgICAgICAgICAgICAgICAg
ICAgIDoKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICBVc2VyIENvbW1l
bnQgTGlzdCBMZW5ndGggICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAg
ICAgICAgICBVc2VyIENvbW1lbnQgIzAgU3RyaW5nIExlbmd0aCAgICAgICAgICAgICAgICAgfAor
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAgIFVzZXIgQ29tbWVudCAjMCBT
dHJpbmcuLi4gICAgICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAg
ICAgICAgICAgICBVc2VyIENvbW1lbnQgIzEgU3RyaW5nIExlbmd0aCAgICAgICAgICAgICAgICAg
fAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSsKKzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA6CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitU
aGUgY29tbWVudCBoZWFkZXIgY29uc2lzdHMgb2YgYSA2NC1iaXQgbWFnaWMgc2lnbmF0dXJlLCBm
b2xsb3dlZCBieSBkYXRhIGluCisgdGhlIHNhbWUgZm9ybWF0IGFzIHRoZSA8eHJlZiB0YXJnZXQ9
InZvcmJpcy1jb21tZW50Ii8+IGhlYWRlciB1c2VkIGluIE9nZworIFZvcmJpcywgZXhjZXB0IChs
aWtlIE9nZyBUaGVvcmEgYW5kIFNwZWV4KSB0aGUgZmluYWwgImZyYW1pbmcgYml0IiBzcGVjaWZp
ZWQKKyBpbiB0aGUgVm9yYmlzIHNwZWMgaXMgbm90IHByZXNlbnQuCis8bGlzdCBzdHlsZT0ibnVt
YmVycyI+Cis8dD5NYWdpYyBTaWduYXR1cmU6Cis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KK1Ro
aXMgaXMgYW4gOC1vY3RldCAoNjQtYml0KSBmaWVsZCB0aGF0IGFsbG93cyBjb2RlYyBpZGVudGlm
aWNhdGlvbiBhbmQgaXMKKyBodW1hbi1yZWFkYWJsZS4KK0l0IGNvbnRhaW5zLCBpbiBvcmRlciwg
dGhlIG1hZ2ljIG51bWJlcnM6Cis8bGlzdCBzdHlsZT0iZW1wdHkiPgorPHQ+MHg0RiAnTyc8L3Q+
Cis8dD4weDcwICdwJzwvdD4KKzx0PjB4NzUgJ3UnPC90PgorPHQ+MHg3MyAncyc8L3Q+Cis8dD4w
eDU0ICdUJzwvdD4KKzx0PjB4NjEgJ2EnPC90PgorPHQ+MHg2NyAnZyc8L3Q+Cis8dD4weDczICdz
JzwvdD4KKzwvbGlzdD4KK1N0YXJ0aW5nIHdpdGggIk9wIiBoZWxwcyBkaXN0aW5ndWlzaCBpdCBm
cm9tIGF1ZGlvIGRhdGEgcGFja2V0cywgYXMgdGhpcyBpcyBhbgorIGludmFsaWQgVE9DIHNlcXVl
bmNlLgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+Cis8L3Q+Cis8dD5WZW5kb3IgU3RyaW5nIExl
bmd0aCAoMzIgYml0cywgdW5zaWduZWQsIGxpdHRsZSBlbmRpYW4pOgorPHZzcGFjZSBibGFua0xp
bmVzPSIxIi8+CitUaGlzIGZpZWxkIGdpdmVzIHRoZSBsZW5ndGggb2YgdGhlIGZvbGxvd2luZyB2
ZW5kb3Igc3RyaW5nLCBpbiBvY3RldHMuCitJdCBNVVNUIE5PVCBpbmRpY2F0ZSB0aGF0IHRoZSB2
ZW5kb3Igc3RyaW5nIGlzIGxvbmdlciB0aGFuIHRoZSByZXN0IG9mIHRoZQorIHBhY2tldC4KKzx2
c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorPC90PgorPHQ+VmVuZG9yIFN0cmluZyAodmFyaWFibGUg
bGVuZ3RoLCBVVEYtOCB2ZWN0b3IpOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGlzIGlz
IGEgc2ltcGxlIGh1bWFuLXJlYWRhYmxlIHRhZyBmb3IgdmVuZG9yIGluZm9ybWF0aW9uLCBlbmNv
ZGVkIGFzIGEgVVRGLTgKKyBzdHJpbmcmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzM2MjkiLz4uCitO
byB0ZXJtaW5hdGluZyBudWxsIG9jdGV0IGlzIG5lY2Vzc2FyeS4KKzx2c3BhY2UgYmxhbmtMaW5l
cz0iMSIvPgorVGhpcyB0YWcgaXMgaW50ZW5kZWQgdG8gaWRlbnRpZnkgdGhlIGNvZGVjIGVuY29k
ZXIgYW5kIGVuY2Fwc3VsYXRpb24KKyBpbXBsZW1lbnRhdGlvbnMsIGZvciB0cmFjaW5nIGRpZmZl
cmVuY2VzIGluIHRlY2huaWNhbCBiZWhhdmlvci4KK1VzZXItZmFjaW5nIGFwcGxpY2F0aW9ucyBj
YW4gdXNlIHRoZSAnRU5DT0RFUicgdXNlciBjb21tZW50IHRhZyB0byBpZGVudGlmeQorIHRoZW1z
ZWx2ZXMuCis8dnNwYWNlIGJsYW5rTGluZXM9IjEiLz4KKzwvdD4KKzx0PlVzZXIgQ29tbWVudCBM
aXN0IExlbmd0aCAoMzIgYml0cywgdW5zaWduZWQsIGxpdHRsZSBlbmRpYW4pOgorPHZzcGFjZSBi
bGFua0xpbmVzPSIxIi8+CitUaGlzIGZpZWxkIGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIHVzZXIt
c3VwcGxpZWQgY29tbWVudHMuCitJdCBNQVkgaW5kaWNhdGUgdGhlcmUgYXJlIHplcm8gdXNlci1z
dXBwbGllZCBjb21tZW50cywgaW4gd2hpY2ggY2FzZSB0aGVyZSBhcmUKKyBubyBhZGRpdGlvbmFs
IGZpZWxkcyBpbiB0aGUgcGFja2V0LgorSXQgTVVTVCBOT1QgaW5kaWNhdGUgdGhhdCB0aGVyZSBh
cmUgc28gbWFueSBjb21tZW50cyB0aGF0IHRoZSBjb21tZW50IHN0cmluZworIGxlbmd0aHMgd291
bGQgcmVxdWlyZSBtb3JlIGRhdGEgdGhhbiBpcyBhdmFpbGFibGUgaW4gdGhlIHJlc3Qgb2YgdGhl
IHBhY2tldC4KKzx2c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorPC90PgorPHQ+VXNlciBDb21tZW50
ICNpIFN0cmluZyBMZW5ndGggKDMyIGJpdHMsIHVuc2lnbmVkLCBsaXR0bGUgZW5kaWFuKToKKzx2
c3BhY2UgYmxhbmtMaW5lcz0iMSIvPgorVGhpcyBmaWVsZCBnaXZlcyB0aGUgbGVuZ3RoIG9mIHRo
ZSBmb2xsb3dpbmcgdXNlciBjb21tZW50IHN0cmluZywgaW4gb2N0ZXRzLgorVGhlcmUgaXMgb25l
IGZvciBlYWNoIHVzZXIgY29tbWVudCBpbmRpY2F0ZWQgYnkgdGhlICd1c2VyIGNvbW1lbnQgbGlz
dCBsZW5ndGgnCisgZmllbGQuCitJdCBNVVNUIE5PVCBpbmRpY2F0ZSB0aGF0IHRoZSBzdHJpbmcg
aXMgbG9uZ2VyIHRoYW4gdGhlIHJlc3Qgb2YgdGhlIHBhY2tldC4KKzx2c3BhY2UgYmxhbmtMaW5l
cz0iMSIvPgorPC90PgorPHQ+VXNlciBDb21tZW50ICNpIFN0cmluZyAodmFyaWFibGUgbGVuZ3Ro
LCBVVEYtOCB2ZWN0b3IpOgorPHZzcGFjZSBibGFua0xpbmVzPSIxIi8+CitUaGlzIGZpZWxkIGNv
bnRhaW5zIGEgc2luZ2xlIHVzZXIgY29tbWVudCBlbmNvZGVkIGFzIGEgVVRGLTgKKyBzdHJpbmcm
bmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzM2MjkiLz4uCitUaGVyZSBpcyBvbmUgZm9yIGVhY2ggdXNl
ciBjb21tZW50IGluZGljYXRlZCBieSB0aGUgJ3VzZXIgY29tbWVudCBsaXN0IGxlbmd0aCcKKyBm
aWVsZC4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitUaGUgdmVuZG9yIHN0cmluZyBsZW5n
dGggYW5kIHVzZXIgY29tbWVudCBsaXN0IGxlbmd0aCBhcmUgUkVRVUlSRUQsIGFuZAorIGltcGxl
bWVudGF0aW9ucyBTSE9VTEQgdHJlYXQgYSBzdHJlYW0gYXMgaW52YWxpZCBpZiBpdCBjb250YWlu
cyBhIGNvbW1lbnQKKyBoZWFkZXIgdGhhdCBkb2VzIG5vdCBoYXZlIGVub3VnaCBkYXRhIGZvciB0
aGVzZSBmaWVsZHMsIG9yIHRoYXQgZG9lcyBub3QKKyBjb250YWluIGVub3VnaCBkYXRhIGZvciB0
aGUgY29ycmVzcG9uZGluZyB2ZW5kb3Igc3RyaW5nIG9yIHVzZXIgY29tbWVudHMgdGhleQorIGRl
c2NyaWJlLgorTWFraW5nIHRoaXMgY2hlY2sgYmVmb3JlIGFsbG9jYXRpbmcgdGhlIGFzc29jaWF0
ZWQgbWVtb3J5IHRvIGNvbnRhaW4gdGhlIGRhdGEKKyBoZWxwcyBwcmV2ZW50IGEgcG9zc2libGUg
RGVuaWFsLW9mLVNlcnZpY2UgKERvUykgYXR0YWNrIGZyb20gc21hbGwgY29tbWVudAorIGhlYWRl
cnMgdGhhdCBjbGFpbSB0byBjb250YWluIHN0cmluZ3MgbG9uZ2VyIHRoYW4gdGhlIGVudGlyZSBw
YWNrZXQgb3IgbW9yZQorIHVzZXIgY29tbWVudHMgdGhhbiB0aGFuIGNvdWxkIHBvc3NpYmx5IGZp
dCBpbiB0aGUgcGFja2V0LgorPC90PgorCis8dD4KK0ltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUg
dXNlciBjb21tZW50IGxpc3QsIHRoZSBjb21tZW50IGhlYWRlciBNQVkKKyBjb250YWluIHplcm8t
cGFkZGluZyBvciBvdGhlciBiaW5hcnkgZGF0YSB3aGljaCBpcyBub3Qgc3BlY2lmaWVkIGhlcmUu
CitJZiB0aGUgbGVhc3Qtc2lnbmlmaWNhbnQgYml0IG9mIHRoZSBmaXJzdCBieXRlIG9mIHRoaXMg
ZGF0YSBpcyAxLCB0aGVuIGVkaXRvcnMKKyBTSE9VTEQgcHJlc2VydmUgdGhlIGNvbnRlbnRzIG9m
IHRoaXMgZGF0YSB3aGVuIHVwZGF0aW5nIHRoZSB0YWdzLCBidXQgaWYgdGhpcworIGJpdCBpcyAw
LCBhbGwgc3VjaCBkYXRhIE1BWSBiZSB0cmVhdGVkIGFzIHBhZGRpbmcsIGFuZCB0cnVuY2F0ZWQg
b3IgZGlzY2FyZGVkCisgYXMgZGVzaXJlZC4KK1RoaXMgYWxsb3dzIGluZm9ybWFsIGV4cGVyaW1l
bnRhdGlvbiB3aXRoIHRoZSBmb3JtYXQgb2YgdGhpcyBiaW5hcnkgZGF0YSB1bnRpbAorIGl0IGNh
biBiZSBzcGVjaWZpZWQgbGF0ZXIuCis8L3Q+CisKKzx0PgorVGhlIGNvbW1lbnQgaGVhZGVyIGNh
biBiZSBhcmJpdHJhcmlseSBsYXJnZSBhbmQgbWlnaHQgYmUgc3ByZWFkIG92ZXIgYSBsYXJnZQor
IG51bWJlciBvZiBPZ2cgcGFnZXMuCitJbXBsZW1lbnRhdGlvbnMgTVVTVCBhdm9pZCBhdHRlbXB0
aW5nIHRvIGFsbG9jYXRlIGV4Y2Vzc2l2ZSBhbW91bnRzIG9mIG1lbW9yeQorIHdoZW4gcHJlc2Vu
dGVkIHdpdGggYSB2ZXJ5IGxhcmdlIGNvbW1lbnQgaGVhZGVyLgorVG8gYWNjb21wbGlzaCB0aGlz
LCBpbXBsZW1lbnRhdGlvbnMgTUFZIHRyZWF0IGEgc3RyZWFtIGFzIGludmFsaWQgaWYgaXQgaGFz
IGEKKyBjb21tZW50IGhlYWRlciBsYXJnZXIgdGhhbiAxMjUsODI5LDEyMCZuYnNwO29jdGV0cyAo
MTIwJm5ic3A7TUIpLCBhbmQgTUFZCisgaWdub3JlIGluZGl2aWR1YWwgY29tbWVudHMgdGhhdCBh
cmUgbm90IGZ1bGx5IGNvbnRhaW5lZCB3aXRoaW4gdGhlIGZpcnN0CisgNjEsNDQwJm5ic3A7b2N0
ZXRzIG9mIHRoZSBjb21tZW50IGhlYWRlci4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJjb21t
ZW50X2Zvcm1hdCIgdGl0bGU9IlRhZyBEZWZpbml0aW9ucyI+Cis8dD4KK1RoZSB1c2VyIGNvbW1l
bnQgc3RyaW5ncyBmb2xsb3cgdGhlIE5BTUU9dmFsdWUgZm9ybWF0IGRlc2NyaWJlZCBieQorIDx4
cmVmIHRhcmdldD0idm9yYmlzLWNvbW1lbnQiLz4gd2l0aCB0aGUgc2FtZSByZWNvbW1lbmRlZCB0
YWcgbmFtZXM6CisgQVJUSVNULCBUSVRMRSwgREFURSwgQUxCVU0sIGFuZCBzbyBvbi4KKzwvdD4K
Kzx0PgorVHdvIG5ldyBjb21tZW50IHRhZ3MgYXJlIGludHJvZHVjZWQgaGVyZToKKzwvdD4KKwor
PHQ+Rmlyc3QsIGFuIG9wdGlvbmFsIGdhaW4gZm9yIHRyYWNrIG5vcm1hbGl6YXRpb246PC90Pgor
PGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJsZWZ0Ij48IVtDREFUQVsK
K1IxMjhfVFJBQ0tfR0FJTj0tNTczCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx0PgorIHJl
cHJlc2VudGluZyB0aGUgdm9sdW1lIHNoaWZ0IG5lZWRlZCB0byBub3JtYWxpemUgdGhlIHRyYWNr
J3Mgdm9sdW1lCisgZHVyaW5nIGlzb2xhdGVkIHBsYXliYWNrLCBpbiByYW5kb20gc2h1ZmZsZSwg
YW5kIHNvIG9uLgorVGhlIGdhaW4gaXMgYSBRNy44IGZpeGVkIHBvaW50IG51bWJlciBpbiBkQiwg
YXMgaW4gdGhlIElEIGhlYWRlcidzICdvdXRwdXQKKyBnYWluJyBmaWVsZC4KK1RoaXMgdGFnIGlz
IHNpbWlsYXIgdG8gdGhlIFJFUExBWUdBSU5fVFJBQ0tfR0FJTiB0YWcgaW4KKyBWb3JiaXMmbmJz
cDs8eHJlZiB0YXJnZXQ9InJlcGxheS1nYWluIi8+LCBleGNlcHQgdGhhdCB0aGUgbm9ybWFsIHZv
bHVtZQorIHJlZmVyZW5jZSBpcyB0aGUgPHhyZWYgdGFyZ2V0PSJFQlUtUjEyOCIvPiBzdGFuZGFy
ZC4KKzwvdD4KKzx0PlNlY29uZCwgYW4gb3B0aW9uYWwgZ2FpbiBmb3IgYWxidW0gbm9ybWFsaXph
dGlvbjo8L3Q+Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImxlZnQi
PjwhW0NEQVRBWworUjEyOF9BTEJVTV9HQUlOPTExMQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+
Cis8dD4KKyByZXByZXNlbnRpbmcgdGhlIHZvbHVtZSBzaGlmdCBuZWVkZWQgdG8gbm9ybWFsaXpl
IHRoZSBvdmVyYWxsIHZvbHVtZSB3aGVuCisgcGxheWVkIGFzIHBhcnQgb2YgYSBwYXJ0aWN1bGFy
IGNvbGxlY3Rpb24gb2YgdHJhY2tzLgorVGhlIGdhaW4gaXMgYWxzbyBhIFE3LjggZml4ZWQgcG9p
bnQgbnVtYmVyIGluIGRCLCBhcyBpbiB0aGUgSUQgaGVhZGVyJ3MKKyAnb3V0cHV0IGdhaW4nIGZp
ZWxkLgorVGhlIHZhbHVlcyAnLTU3MycgYW5kICcxMTEnIGdpdmVuIGhlcmUgYXJlIGp1c3QgZXhh
bXBsZXMuCis8L3Q+Cis8dD4KK0FuIE9nZyBPcHVzIHN0cmVhbSBNVVNUIE5PVCBoYXZlIG1vcmUg
dGhhbiBvbmUgb2YgZWFjaCBvZiB0aGVzZSB0YWdzLCBhbmQgaWYKKyBwcmVzZW50IHRoZWlyIHZh
bHVlcyBNVVNUIGJlIGFuIGludGVnZXIgZnJvbSAtMzI3NjggdG8gMzI3NjcsIGluY2x1c2l2ZSwK
KyByZXByZXNlbnRlZCBpbiBBU0NJSSBhcyBhIGJhc2UgMTAgbnVtYmVyIHdpdGggbm8gd2hpdGVz
cGFjZS4KK0EgbGVhZGluZyAnKycgb3IgJy0nIGNoYXJhY3RlciBpcyB2YWxpZC4KK0xlYWRpbmcg
emVyb3MgYXJlIGFsc28gcGVybWl0dGVkLCBidXQgdGhlIHZhbHVlIE1VU1QgYmUgcmVwcmVzZW50
ZWQgYnkKKyBubyBtb3JlIHRoYW4gNiBjaGFyYWN0ZXJzLgorT3RoZXIgbm9uLWRpZ2l0IGNoYXJh
Y3RlcnMgTVVTVCBOT1QgYmUgcHJlc2VudC4KKzwvdD4KKzx0PgorSWYgcHJlc2VudCwgUjEyOF9U
UkFDS19HQUlOIGFuZCBSMTI4X0FMQlVNX0dBSU4gTVVTVCBjb3JyZWN0bHkgcmVwcmVzZW50Cisg
dGhlIFIxMjggbm9ybWFsaXphdGlvbiBnYWluIHJlbGF0aXZlIHRvIHRoZSAnb3V0cHV0IGdhaW4n
IGZpZWxkIHNwZWNpZmllZAorIGluIHRoZSBJRCBoZWFkZXIuCitJZiBhIHBsYXllciBjaG9vc2Vz
IHRvIG1ha2UgdXNlIG9mIHRoZSBSMTI4X1RSQUNLX0dBSU4gdGFnIG9yIHRoZQorIFIxMjhfQUxC
VU1fR0FJTiB0YWcsIGl0IE1VU1QgYXBwbHkgdGhvc2UgZ2FpbnMKKyA8c3Bhbnggc3R5bGU9ImVt
cGgiPmluIGFkZGl0aW9uPC9zcGFueD4gdG8gdGhlICdvdXRwdXQgZ2FpbicgdmFsdWUuCitJZiBh
IHRvb2wgbW9kaWZpZXMgdGhlIElEIGhlYWRlcidzICdvdXRwdXQgZ2FpbicgZmllbGQsIGl0IE1V
U1QgYWxzbyB1cGRhdGUgb3IKKyByZW1vdmUgdGhlIFIxMjhfVFJBQ0tfR0FJTiBhbmQgUjEyOF9B
TEJVTV9HQUlOIGNvbW1lbnQgdGFncyBpZiBwcmVzZW50LgorQSBtdXhlciBTSE9VTEQgcGxhY2Ug
dGhlIGdhaW4gaXQgd2FudHMgb3RoZXIgdG9vbHMgdG8gdXNlIGJ5IGRlZmF1bHQgaW50byB0aGUK
KyAnb3V0cHV0IGdhaW4nIGZpZWxkLCBhbmQgbm90IHRoZSBjb21tZW50IHRhZy4KKzwvdD4KKzx0
PgorVG8gYXZvaWQgY29uZnVzaW9uIHdpdGggbXVsdGlwbGUgbm9ybWFsaXphdGlvbiBzY2hlbWVz
LCBhbiBPcHVzIGNvbW1lbnQgaGVhZGVyCisgU0hPVUxEIE5PVCBjb250YWluIGFueSBvZiB0aGUg
UkVQTEFZR0FJTl9UUkFDS19HQUlOLCBSRVBMQVlHQUlOX1RSQUNLX1BFQUssCisgUkVQTEFZR0FJ
Tl9BTEJVTV9HQUlOLCBvciBSRVBMQVlHQUlOX0FMQlVNX1BFQUsgdGFncywgdW5sZXNzIHRoZXkg
YXJlIG9ubHkKKyB0byBiZSB1c2VkIGluIHNvbWUgY29udGV4dCB3aGVyZSB0aGVyZSBpcyBndWFy
YW50ZWVkIHRvIGJlIG5vIHN1Y2ggY29uZnVzaW9uLgorPHhyZWYgdGFyZ2V0PSJFQlUtUjEyOCIv
PiBub3JtYWxpemF0aW9uIGlzIHByZWZlcnJlZCB0byB0aGUgZWFybGllcgorIFJFUExBWUdBSU4g
c2NoZW1lcyBiZWNhdXNlIG9mIGl0cyBjbGVhciBkZWZpbml0aW9uIGFuZCBhZG9wdGlvbiBieSBp
bmR1c3RyeS4KK1BlYWsgbm9ybWFsaXphdGlvbnMgYXJlIGRpZmZpY3VsdCB0byBjYWxjdWxhdGUg
cmVsaWFibHkgZm9yIGxvc3N5IGNvZGVjcworIGJlY2F1c2Ugb2YgdmFyaWF0aW9uIGluIGV4Y3Vy
c2lvbiBoZWlnaHRzIGR1ZSB0byBkZWNvZGVyIGRpZmZlcmVuY2VzLgorSW4gdGhlIGF1dGhvcnMn
IGludmVzdGlnYXRpb25zIHRoZXkgd2VyZSBub3QgYXBwbGllZCBjb25zaXN0ZW50bHkgb3IgYnJv
YWRseQorIGVub3VnaCB0byBtZXJpdCBpbmNsdXNpb24gaGVyZS4KKzwvdD4KKzwvc2VjdGlvbj4g
PCEtLSBlbmQgY29tbWVudF9mb3JtYXQgLS0+Cis8L3NlY3Rpb24+IDwhLS0gZW5kIGNvbW1lbnRf
aGVhZGVyIC0tPgorCis8L3NlY3Rpb24+IDwhLS0gZW5kIGhlYWRlcnMgLS0+CisKKzxzZWN0aW9u
IGFuY2hvcj0icGFja2V0X3NpemVfbGltaXRzIiB0aXRsZT0iUGFja2V0IFNpemUgTGltaXRzIj4K
Kzx0PgorVGVjaG5pY2FsbHksIHZhbGlkIE9wdXMgcGFja2V0cyBjYW4gYmUgYXJiaXRyYXJpbHkg
bGFyZ2UgZHVlIHRvIHRoZSBwYWRkaW5nCisgZm9ybWF0LCBhbHRob3VnaCB0aGUgYW1vdW50IG9m
IG5vbi1wYWRkaW5nIGRhdGEgdGhleSBjYW4gY29udGFpbiBpcyBib3VuZGVkLgorVGhlc2UgcGFj
a2V0cyBtaWdodCBiZSBzcHJlYWQgb3ZlciBhIHNpbWlsYXJseSBlbm9ybW91cyBudW1iZXIgb2Yg
T2dnIHBhZ2VzLgorV2hlbiBlbmNvZGluZywgaW1wbGVtZW50YXRpb25zIFNIT1VMRCBsaW1pdCB0
aGUgdXNlIG9mIHBhZGRpbmcgaW4gYXVkaW8gZGF0YQorIHBhY2tldHMgdG8gbm8gbW9yZSB0aGFu
IGlzIG5lY2Vzc2FyeSB0byBtYWtlIGEgdmFyaWFibGUgYml0cmF0ZSAoVkJSKSBzdHJlYW0KKyBj
b25zdGFudCBiaXRyYXRlIChDQlIpLCB1bmxlc3MgdGhleSBoYXZlIG5vIHJlYXNvbmFibGUgd2F5
IHRvIGRldGVybWluZSB3aGF0CisgaXMgbmVjZXNzYXJ5LgorRGVtdXhlcnMgU0hPVUxEIHRyZWF0
IGF1ZGlvIGRhdGEgcGFja2V0cyBhcyBpbnZhbGlkICh0cmVhdCB0aGVtIGFzIGlmIHRoZXkgd2Vy
ZQorIG1hbGZvcm1lZCBPcHVzIHBhY2tldHMgd2l0aCBhbiBpbnZhbGlkIFRPQyBzZXF1ZW5jZSkg
aWYgdGhleSBhcmUgbGFyZ2VyIHRoYW4KKyA2MSw0NDAmbmJzcDtvY3RldHMgcGVyIE9wdXMgc3Ry
ZWFtLCB1bmxlc3MgdGhleSBoYXZlIGEgc3BlY2lmaWMgcmVhc29uIGZvcgorIGFsbG93aW5nIGV4
dHJhIHBhZGRpbmcuCitTdWNoIHBhY2tldHMgbmVjZXNzYXJpbHkgY29udGFpbiBtb3JlIHBhZGRp
bmcgdGhhbiBuZWVkZWQgdG8gbWFrZSBhIHN0cmVhbSBDQlIuCitEZW11eGVycyBNVVNUIGF2b2lk
IGF0dGVtcHRpbmcgdG8gYWxsb2NhdGUgZXhjZXNzaXZlIGFtb3VudHMgb2YgbWVtb3J5IHdoZW4K
KyBwcmVzZW50ZWQgd2l0aCBhIHZlcnkgbGFyZ2UgcGFja2V0LgorRGVtdXhlcnMgTUFZIHRyZWF0
IGF1ZGlvIGRhdGEgcGFja2V0cyBhcyBpbnZhbGlkIG9yIHBhcnRpYWxseSBwcm9jZXNzIHRoZW0g
aWYKKyB0aGV5IGFyZSBsYXJnZXIgdGhhbiA2MSw0NDAmbmJzcDtvY3RldHMgaW4gYW4gT2dnIE9w
dXMgc3RyZWFtIHdpdGggY2hhbm5lbAorIG1hcHBpbmcgZmFtaWxpZXMmbmJzcDswIG9yJm5ic3A7
MS4KK0RlbXV4ZXJzIE1BWSB0cmVhdCBhdWRpbyBkYXRhIHBhY2tldHMgYXMgaW52YWxpZCBvciBw
YXJ0aWFsbHkgcHJvY2VzcyB0aGVtIGluCisgYW55IE9nZyBPcHVzIHN0cmVhbSBpZiB0aGUgcGFj
a2V0IGlzIGxhcmdlciB0aGFuIDYxLDQ0MCZuYnNwO29jdGV0cyBhbmQgYWxzbworIGxhcmdlciB0
aGFuIDcsNjgwJm5ic3A7b2N0ZXRzIHBlciBPcHVzIHN0cmVhbS4KK1RoZSBwcmVzZW5jZSBvZiBh
biBleHRyZW1lbHkgbGFyZ2UgcGFja2V0IGluIHRoZSBzdHJlYW0gY291bGQgaW5kaWNhdGUgYQor
IG1lbW9yeSBleGhhdXN0aW9uIGF0dGFjayBvciBzdHJlYW0gY29ycnVwdGlvbi4KKzwvdD4KKzx0
PgorSW4gYW4gT2dnIE9wdXMgc3RyZWFtLCB0aGUgbGFyZ2VzdCBwb3NzaWJsZSB2YWxpZCBwYWNr
ZXQgdGhhdCBkb2VzIG5vdCB1c2UKKyBwYWRkaW5nIGhhcyBhIHNpemUgb2YgKDYxLDI5OCpOJm5i
c3A7LSZuYnNwOzIpIG9jdGV0cy4KK1dpdGggMjU1Jm5ic3A7c3RyZWFtcywgdGhpcyBpcyAxNSw2
MzAsOTg4Jm5ic3A7b2N0ZXRzIGFuZCBjYW4KKyBzcGFuIHVwIHRvIDYxLDI5OCZuYnNwO09nZyBw
YWdlcywgYWxsIGJ1dCBvbmUgb2Ygd2hpY2ggd2lsbCBoYXZlIGEgZ3JhbnVsZQorIHBvc2l0aW9u
IG9mIC0xLgorVGhpcyBpcyBvZiBjb3Vyc2UgYSB2ZXJ5IGV4dHJlbWUgcGFja2V0LCBjb25zaXN0
aW5nIG9mIDI1NSZuYnNwO3N0cmVhbXMsIGVhY2gKKyBjb250YWluaW5nIDEyMCZuYnNwO21zIG9m
IGF1ZGlvIGVuY29kZWQgYXMgMi41Jm5ic3A7bXMgZnJhbWVzLCBlYWNoIGZyYW1lCisgdXNpbmcg
dGhlIG1heGltdW0gcG9zc2libGUgbnVtYmVyIG9mIG9jdGV0cyAoMTI3NSkgYW5kIHN0b3JlZCBp
biB0aGUgbGVhc3QKKyBlZmZpY2llbnQgbWFubmVyIGFsbG93ZWQgKGEgVkJSIGNvZGUmbmJzcDsz
IE9wdXMgcGFja2V0KS4KK0V2ZW4gaW4gc3VjaCBhIHBhY2tldCwgbW9zdCBvZiB0aGUgZGF0YSB3
aWxsIGJlIHplcm9zIGFzIDIuNSZuYnNwO21zIGZyYW1lcworIGNhbm5vdCBhY3R1YWxseSB1c2Ug
YWxsIDEyNzUmbmJzcDtvY3RldHMuCis8L3Q+Cis8dD4KK1RoZSBsYXJnZXN0IHBhY2tldCBjb25z
aXN0aW5nIG9mIGVudGlyZWx5IHVzZWZ1bCBkYXRhIGlzCisgKDE1LDMyNipOJm5ic3A7LSZuYnNw
OzIpIG9jdGV0cy4KK1RoaXMgY29ycmVzcG9uZHMgdG8gMTIwJm5ic3A7bXMgb2YgYXVkaW8gZW5j
b2RlZCBhcyAxMCZuYnNwO21zIGZyYW1lcyBpbiBlaXRoZXIKKyBTSUxLIG9yIEh5YnJpZCBtb2Rl
LCBidXQgYXQgYSBkYXRhIHJhdGUgb2Ygb3ZlciAxJm5ic3A7TWJwcywgd2hpY2ggbWFrZXMgbGl0
dGxlCisgc2Vuc2UgZm9yIHRoZSBxdWFsaXR5IGFjaGlldmVkLgorPC90PgorPHQ+CitBIG1vcmUg
cmVhc29uYWJsZSBsaW1pdCBpcyAoNyw2NjQqTiZuYnNwOy0mbmJzcDsyKSBvY3RldHMuCitUaGlz
IGNvcnJlc3BvbmRzIHRvIDEyMCZuYnNwO21zIG9mIGF1ZGlvIGVuY29kZWQgYXMgMjAmbmJzcDtt
cyBzdGVyZW8gQ0VMVCBtb2RlCisgZnJhbWVzLCB3aXRoIGEgdG90YWwgYml0cmF0ZSBqdXN0IHVu
ZGVyIDUxMSZuYnNwO2ticHMgKG5vdCBjb3VudGluZyB0aGUgT2dnCisgZW5jYXBzdWxhdGlvbiBv
dmVyaGVhZCkuCitGb3IgY2hhbm5lbCBtYXBwaW5nIGZhbWlseSAxLCBOPTggcHJvdmlkZXMgYSBy
ZWFzb25hYmxlIHVwcGVyIGJvdW5kLCBhcyBpdAorIGFsbG93cyBmb3IgZWFjaCBvZiB0aGUgOCBw
b3NzaWJsZSBvdXRwdXQgY2hhbm5lbHMgdG8gYmUgZGVjb2RlZCBmcm9tIGEKKyBzZXBhcmF0ZSBz
dGVyZW8gT3B1cyBzdHJlYW0uCitUaGlzIGdpdmVzIGEgc2l6ZSBvZiA2MSwzMTAmbmJzcDtvY3Rl
dHMsIHdoaWNoIGlzIHJvdW5kZWQgdXAgdG8gYSBtdWx0aXBsZSBvZgorIDEsMDI0Jm5ic3A7b2N0
ZXRzIHRvIHlpZWxkIHRoZSBhdWRpbyBkYXRhIHBhY2tldCBzaXplIG9mIDYxLDQ0MCZuYnNwO29j
dGV0cworIHRoYXQgYW55IGltcGxlbWVudGF0aW9uIGlzIGV4cGVjdGVkIHRvIGJlIGFibGUgdG8g
cHJvY2VzcyBzdWNjZXNzZnVsbHkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hv
cj0iZW5jb2RlciIgdGl0bGU9IkVuY29kZXIgR3VpZGVsaW5lcyI+Cis8dD4KK1doZW4gZW5jb2Rp
bmcgT3B1cyBzdHJlYW1zLCBPZ2cgbXV4ZXJzIFNIT1VMRCB0YWtlIGludG8gYWNjb3VudCB0aGUK
KyBhbGdvcml0aG1pYyBkZWxheSBvZiB0aGUgT3B1cyBlbmNvZGVyLgorPC90PgorPHQ+CitJbiBl
bmNvZGVycyBkZXJpdmVkIGZyb20gdGhlIHJlZmVyZW5jZQorIGltcGxlbWVudGF0aW9uJm5ic3A7
PHhyZWYgdGFyZ2V0PSJSRkM2NzE2Ii8+LCB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgY2FuIGJlCisg
cXVlcmllZCB3aXRoOgorPC90PgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFs
aWduPSJjZW50ZXIiPjwhW0NEQVRBWworIG9wdXNfZW5jb2Rlcl9jdGwoZW5jb2Rlcl9zdGF0ZSwg
T1BVU19HRVRfTE9PS0FIRUFEKCZkZWxheV9zYW1wbGVzKSk7CitdXT48L2FydHdvcms+Cis8L2Zp
Z3VyZT4KKzx0PgorVG8gYWNoaWV2ZSBnb29kIHF1YWxpdHkgaW4gdGhlIHZlcnkgZmlyc3Qgc2Ft
cGxlcyBvZiBhIHN0cmVhbSwgaW1wbGVtZW50YXRpb25zCisgTUFZIHVzZSBsaW5lYXIgcHJlZGlj
dGl2ZSBjb2RpbmcgKExQQykgZXh0cmFwb2xhdGlvbiB0byBnZW5lcmF0ZSBhdCBsZWFzdCAxMjAK
KyBleHRyYSBzYW1wbGVzIGF0IHRoZSBiZWdpbm5pbmcgdG8gYXZvaWQgdGhlIE9wdXMgZW5jb2Rl
ciBoYXZpbmcgdG8gZW5jb2RlIGEKKyBkaXNjb250aW51b3VzIHNpZ25hbC4KK0ZvciBtb3JlIGlu
Zm9ybWF0aW9uIG9uIGxpbmVhciBwcmVkaWN0aW9uLCBzZWUKKyA8eHJlZiB0YXJnZXQ9ImxpbmVh
ci1wcmVkaWN0aW9uIi8+LgorRm9yIGFuIGlucHV0IGZpbGUgY29udGFpbmluZyAnbGVuZ3RoJyBz
YW1wbGVzLCB0aGUgaW1wbGVtZW50YXRpb24gU0hPVUxEIHNldAorIHRoZSBwcmUtc2tpcCBoZWFk
ZXIgdmFsdWUgdG8gKGRlbGF5X3NhbXBsZXMmbmJzcDsrJm5ic3A7ZXh0cmFfc2FtcGxlcyksIGVu
Y29kZQorIGF0IGxlYXN0IChsZW5ndGgmbmJzcDsrJm5ic3A7ZGVsYXlfc2FtcGxlcyZuYnNwOysm
bmJzcDtleHRyYV9zYW1wbGVzKQorIHNhbXBsZXMsIGFuZCBzZXQgdGhlIGdyYW51bGUgcG9zaXRp
b24gb2YgdGhlIGxhc3QgcGFnZSB0bworIChsZW5ndGgmbmJzcDsrJm5ic3A7ZGVsYXlfc2FtcGxl
cyZuYnNwOysmbmJzcDtleHRyYV9zYW1wbGVzKS4KK1RoaXMgZW5zdXJlcyB0aGF0IHRoZSBlbmNv
ZGVkIGZpbGUgaGFzIHRoZSBzYW1lIGR1cmF0aW9uIGFzIHRoZSBvcmlnaW5hbCwgd2l0aAorIG5v
IHRpbWUgb2Zmc2V0LiBUaGUgYmVzdCB3YXkgdG8gcGFkIHRoZSBlbmQgb2YgdGhlIHN0cmVhbSBp
cyB0byBhbHNvIHVzZSBMUEMKKyBleHRyYXBvbGF0aW9uLCBidXQgemVyby1wYWRkaW5nIGlzIGFs
c28gYWNjZXB0YWJsZS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJscGMiIHRpdGxlPSJMUEMg
RXh0cmFwb2xhdGlvbiI+Cis8dD4KK1RoZSBmaXJzdCBzdGVwIGluIExQQyBleHRyYXBvbGF0aW9u
IGlzIHRvIGNvbXB1dGUgbGluZWFyIHByZWRpY3Rpb24KKyBjb2VmZmljaWVudHMuIDx4cmVmIHRh
cmdldD0ibHBjLXNhbXBsZSIvPgorV2hlbiBleHRlbmRpbmcgdGhlIGVuZCBvZiB0aGUgc2lnbmFs
LCBvcmRlci1OICh0eXBpY2FsbHkgd2l0aCBOIHJhbmdpbmcgZnJvbSA4CisgdG8gNDApIExQQyBh
bmFseXNpcyBpcyBwZXJmb3JtZWQgb24gYSB3aW5kb3cgbmVhciB0aGUgZW5kIG9mIHRoZSBzaWdu
YWwuCitUaGUgbGFzdCBOIHNhbXBsZXMgYXJlIHVzZWQgYXMgbWVtb3J5IHRvIGFuIGluZmluaXRl
IGltcHVsc2UgcmVzcG9uc2UgKElJUikKKyBmaWx0ZXIuCis8L3Q+Cis8dD4KK1RoZSBmaWx0ZXIg
aXMgdGhlbiBhcHBsaWVkIG9uIGEgemVybyBpbnB1dCB0byBleHRyYXBvbGF0ZSB0aGUgZW5kIG9m
IHRoZSBzaWduYWwuCitMZXQgYShrKSBiZSB0aGUga3RoIExQQyBjb2VmZmljaWVudCBhbmQgeChu
KSBiZSB0aGUgbnRoIHNhbXBsZSBvZiB0aGUgc2lnbmFsLAorIGVhY2ggbmV3IHNhbXBsZSBwYXN0
IHRoZSBlbmQgb2YgdGhlIHNpZ25hbCBpcyBjb21wdXRlZCBhczoKKzwvdD4KKzxmaWd1cmUgYWxp
Z249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAg
TgorICAgICAgIC0tLQoreChuKSA9IFwgICBhKGspKngobi1rKQorICAgICAgIC8KKyAgICAgICAt
LS0KKyAgICAgICBrPTEKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPHQ+CitUaGUgcHJvY2Vz
cyBpcyByZXBlYXRlZCBpbmRlcGVuZGVudGx5IGZvciBlYWNoIGNoYW5uZWwuCitJdCBpcyBwb3Nz
aWJsZSB0byBleHRlbmQgdGhlIGJlZ2lubmluZyBvZiB0aGUgc2lnbmFsIGJ5IGFwcGx5aW5nIHRo
ZSBzYW1lCisgcHJvY2VzcyBiYWNrd2FyZCBpbiB0aW1lLgorV2hlbiBleHRlbmRpbmcgdGhlIGJl
Z2lubmluZyBvZiB0aGUgc2lnbmFsLCBpdCBpcyBiZXN0IHRvIGFwcGx5IGEgImZhZGUgaW4iIHRv
CisgdGhlIGV4dHJhcG9sYXRlZCBzaWduYWwsIGUuZy4gYnkgbXVsdGlwbHlpbmcgaXQgYnkgYSBo
YWxmLUhhbm5pbmcgd2luZG93CisgPHhyZWYgdGFyZ2V0PSJoYW5uaW5nIi8+LgorPC90PgorCis8
L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iY29udGludW91c19jaGFpbmluZyIgdGl0bGU9
IkNvbnRpbnVvdXMgQ2hhaW5pbmciPgorPHQ+CitJbiBzb21lIGFwcGxpY2F0aW9ucywgc3VjaCBh
cyBJbnRlcm5ldCByYWRpbywgaXQgaXMgZGVzaXJhYmxlIHRvIGN1dCBhIGxvbmcKKyBzdHJlYW0g
aW50byBzbWFsbGVyIGNoYWlucywgZS5nLiBzbyB0aGUgY29tbWVudCBoZWFkZXIgY2FuIGJlIHVw
ZGF0ZWQuCitUaGlzIGNhbiBiZSBkb25lIHNpbXBseSBieSBzZXBhcmF0aW5nIHRoZSBpbnB1dCBz
dHJlYW1zIGludG8gc2VnbWVudHMgYW5kCisgZW5jb2RpbmcgZWFjaCBzZWdtZW50IGluZGVwZW5k
ZW50bHkuCitUaGUgZHJhd2JhY2sgb2YgdGhpcyBhcHByb2FjaCBpcyB0aGF0IGl0IGNyZWF0ZXMg
YSBzbWFsbCBkaXNjb250aW51aXR5CisgYXQgdGhlIGJvdW5kYXJ5IGR1ZSB0byB0aGUgbG9zc3kg
bmF0dXJlIG9mIE9wdXMuCitBIG11eGVyIE1BWSBhdm9pZCB0aGlzIGRpc2NvbnRpbnVpdHkgYnkg
dXNpbmcgdGhlIGZvbGxvd2luZyBwcm9jZWR1cmU6Cis8bGlzdCBzdHlsZT0ibnVtYmVycyI+Cis8
dD5FbmNvZGUgdGhlIGxhc3QgZnJhbWUgb2YgdGhlIGZpcnN0IHNlZ21lbnQgYXMgYW4gaW5kZXBl
bmRlbnQgZnJhbWUgYnkKKyB0dXJuaW5nIG9mZiBhbGwgZm9ybXMgb2YgaW50ZXItZnJhbWUgcHJl
ZGljdGlvbi4KK0RlLWVtcGhhc2lzIGlzIGFsbG93ZWQuPC90PgorPHQ+U2V0IHRoZSBncmFudWxl
IHBvc2l0aW9uIG9mIHRoZSBsYXN0IHBhZ2UgdG8gYSBwb2ludCBuZWFyIHRoZSBlbmQgb2YgdGhl
CisgbGFzdCBmcmFtZS48L3Q+Cis8dD5CZWdpbiB0aGUgc2Vjb25kIHNlZ21lbnQgd2l0aCBhIGNv
cHkgb2YgdGhlIGxhc3QgZnJhbWUgb2YgdGhlIGZpcnN0Cisgc2VnbWVudC48L3Q+Cis8dD5TZXQg
dGhlIHByZS1za2lwIHZhbHVlIG9mIHRoZSBzZWNvbmQgc3RyZWFtIGluIHN1Y2ggYSB3YXkgYXMg
dG8gcHJvcGVybHkKKyBqb2luIHRoZSB0d28gc3RyZWFtcy48L3Q+Cis8dD5Db250aW51ZSB0aGUg
ZW5jb2RpbmcgcHJvY2VzcyBub3JtYWxseSBmcm9tIHRoZXJlLCB3aXRob3V0IGFueSByZXNldCB0
bworIHRoZSBlbmNvZGVyLjwvdD4KKzwvbGlzdD4KKzwvdD4KKzx0PgorSW4gZW5jb2RlcnMgZGVy
aXZlZCBmcm9tIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24sIGludGVyLWZyYW1lIHByZWRp
Y3Rpb24KKyBjYW4gYmUgdHVybmVkIG9mZiBieSBjYWxsaW5nOgorPC90PgorPGZpZ3VyZSBhbGln
bj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIG9wdXNfZW5j
b2Rlcl9jdGwoZW5jb2Rlcl9zdGF0ZSwgT1BVU19TRVRfUFJFRElDVElPTl9ESVNBQkxFRCgxKSk7
CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx0PgorRm9yIGJlc3QgcmVzdWx0cywgdGhpcyBp
bXBsZW1lbnRhdGlvbiByZXF1aXJlcyB0aGF0IHByZWRpY3Rpb24gYmUgZXhwbGljaXRseQorIGVu
YWJsZWQgYWdhaW4gYmVmb3JlIHJlc3VtaW5nIG5vcm1hbCBlbmNvZGluZywgZXZlbiBhZnRlciBh
IHJlc2V0LgorPC90PgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5j
aG9yPSJpbXBsZW1lbnRhdGlvbiIgdGl0bGU9IkltcGxlbWVudGF0aW9uIFN0YXR1cyI+Cis8dD4K
K0EgYnJpZWYgc3VtbWFyeSBvZiBtYWpvciBpbXBsZW1lbnRhdGlvbnMgb2YgdGhpcyBkcmFmdCBp
cyBhdmFpbGFibGUKKyBhdCA8ZXJlZiB0YXJnZXQ9Imh0dHBzOi8vd2lraS54aXBoLm9yZy9PZ2dP
cHVzSW1wbGVtZW50YXRpb24iLz4sCisgYWxvbmcgd2l0aCB0aGVpciBzdGF0dXMuCis8L3Q+Cis8
dD4KK1tOb3RlIHRvIFJGQyBFZGl0b3I6IHBsZWFzZSByZW1vdmUgdGhpcyBlbnRpcmUgc2VjdGlv
biBiZWZvcmUKKyBmaW5hbCBwdWJsaWNhdGlvbiBwZXIgPHhyZWYgdGFyZ2V0PSJSRkM2OTgyIi8+
LCBhbG9uZyB3aXRoCisgaXRzIHJlZmVyZW5jZXMuXQorPC90PgorPC9zZWN0aW9uPgorCis8c2Vj
dGlvbiBhbmNob3I9InNlY3VyaXR5IiB0aXRsZT0iU2VjdXJpdHkgQ29uc2lkZXJhdGlvbnMiPgor
PHQ+CitJbXBsZW1lbnRhdGlvbnMgb2YgdGhlIE9wdXMgY29kZWMgbmVlZCB0byB0YWtlIGFwcHJv
cHJpYXRlIHNlY3VyaXR5CisgY29uc2lkZXJhdGlvbnMgaW50byBhY2NvdW50LCBhcyBvdXRsaW5l
ZCBpbiA8eHJlZiB0YXJnZXQ9IlJGQzQ3MzIiLz4uCitUaGlzIGlzIGp1c3QgYXMgbXVjaCBhIHBy
b2JsZW0gZm9yIHRoZSBjb250YWluZXIgYXMgaXQgaXMgZm9yIHRoZSBjb2RlYyBpdHNlbGYuCitN
YWxpY2lvdXMgcGF5bG9hZHMgYW5kL29yIGlucHV0IHN0cmVhbXMgY2FuIGJlIHVzZWQgdG8gYXR0
YWNrIGNvZGVjCisgaW1wbGVtZW50YXRpb25zLgorSW1wbGVtZW50YXRpb25zIE1VU1QgTk9UIG92
ZXJydW4gdGhlaXIgYWxsb2NhdGVkIG1lbW9yeSBub3IgY29uc3VtZSBleGNlc3NpdmUKKyByZXNv
dXJjZXMgd2hlbiBkZWNvZGluZyBwYXlsb2FkcyBvciBwcm9jZXNzaW5nIGlucHV0IHN0cmVhbXMu
CitBbHRob3VnaCBwcm9ibGVtcyBpbiBlbmNvZGluZyBhcHBsaWNhdGlvbnMgYXJlIHR5cGljYWxs
eSByYXJlciwgdGhpcyBzdGlsbAorIGFwcGxpZXMgdG8gYSBtdXhlciwgYXMgdnVsbmVyYWJpbGl0
aWVzIHdvdWxkIGFsbG93IGFuIGF0dGFja2VyIHRvIGF0dGFjaworIHRyYW5zY29kaW5nIGdhdGV3
YXlzLgorPC90PgorCis8dD4KK0hlYWRlciBwYXJzaW5nIGNvZGUgY29udGFpbnMgdGhlIG1vc3Qg
bGlrZWx5IGFyZWEgZm9yIHBvdGVudGlhbCBvdmVycnVucy4KK0l0IGlzIGltcG9ydGFudCBmb3Ig
aW1wbGVtZW50YXRpb25zIHRvIGVuc3VyZSB0aGVpciBidWZmZXJzIGNvbnRhaW4gZW5vdWdoCisg
ZGF0YSBmb3IgYWxsIG9mIHRoZSByZXF1aXJlZCBmaWVsZHMgYmVmb3JlIGF0dGVtcHRpbmcgdG8g
cmVhZCBpdCAoZm9yIGV4YW1wbGUsCisgZm9yIGFsbCBvZiB0aGUgY2hhbm5lbCBtYXAgZGF0YSBp
biB0aGUgSUQgaGVhZGVyKS4KK0ltcGxlbWVudGF0aW9ucyB3b3VsZCBkbyB3ZWxsIHRvIHZhbGlk
YXRlIHRoZSBpbmRpY2VzIG9mIHRoZSBjaGFubmVsIG1hcCwgYWxzbywKKyB0byBlbnN1cmUgdGhl
eSBtZWV0IGFsbCBvZiB0aGUgcmVzdHJpY3Rpb25zIG91dGxpbmVkIGluCisgPHhyZWYgdGFyZ2V0
PSJjaGFubmVsX21hcHBpbmciLz4sIGluIG9yZGVyIHRvIGF2b2lkIGF0dGVtcHRpbmcgdG8gcmVh
ZCBkYXRhCisgZnJvbSBjaGFubmVscyB0aGF0IGRvIG5vdCBleGlzdC4KKzwvdD4KKworPHQ+CitU
byBhdm9pZCBleGNlc3NpdmUgcmVzb3VyY2UgdXNhZ2UsIHdlIGFkdmlzZSBpbXBsZW1lbnRhdGlv
bnMgdG8gYmUgZXNwZWNpYWxseQorIHdhcnkgb2Ygc3RyZWFtcyB0aGF0IG1pZ2h0IGNhdXNlIHRo
ZW0gdG8gcHJvY2VzcyBmYXIgbW9yZSBkYXRhIHRoYW4gd2FzCisgYWN0dWFsbHkgdHJhbnNtaXR0
ZWQuCitGb3IgZXhhbXBsZSwgYSByZWxhdGl2ZWx5IHNtYWxsIGNvbW1lbnQgaGVhZGVyIG1heSBj
b250YWluIHZhbHVlcyBmb3IgdGhlCisgc3RyaW5nIGxlbmd0aHMgb3IgdXNlciBjb21tZW50IGxp
c3QgbGVuZ3RoIHRoYXQgaW1wbHkgdGhhdCBpdCBpcyBtYW55CisgZ2lnYWJ5dGVzIGluIHNpemUu
CitFdmVuIGNvbXB1dGluZyB0aGUgc2l6ZSBvZiB0aGUgcmVxdWlyZWQgYnVmZmVyIGNvdWxkIG92
ZXJmbG93IGEgMzItYml0IGludGVnZXIsCisgYW5kIGFjdHVhbGx5IGF0dGVtcHRpbmcgdG8gYWxs
b2NhdGUgc3VjaCBhIGJ1ZmZlciBiZWZvcmUgdmVyaWZ5aW5nIGl0IHdvdWxkIGJlCisgYSByZWFz
b25hYmxlIHNpemUgaXMgYSBiYWQgaWRlYS4KK0FmdGVyIHJlYWRpbmcgdGhlIHVzZXIgY29tbWVu
dCBsaXN0IGxlbmd0aCwgaW1wbGVtZW50YXRpb25zIG1pZ2h0IHdpc2ggdG8KKyB2ZXJpZnkgdGhh
dCB0aGUgaGVhZGVyIGNvbnRhaW5zIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGFtb3VudCBvZiBkYXRh
IGZvciB0aGF0CisgbWFueSBjb21tZW50cyAoNCZuYnNwO2FkZGl0aW9uYWwgb2N0ZXRzIHBlciBj
b21tZW50LCB0byBpbmRpY2F0ZSBlYWNoIGhhcyBhCisgbGVuZ3RoIG9mIHplcm8pIGJlZm9yZSBw
cm9jZWVkaW5nIGFueSBmdXJ0aGVyLCBhZ2FpbiB0YWtpbmcgY2FyZSB0byBhdm9pZAorIG92ZXJm
bG93IGluIHRoZXNlIGNhbGN1bGF0aW9ucy4KK0lmIGFsbG9jYXRpbmcgYW4gYXJyYXkgb2YgcG9p
bnRlcnMgdG8gcG9pbnQgYXQgdGhlc2Ugc3RyaW5ncywgdGhlIHNpemUgb2YgdGhlCisgcG9pbnRl
cnMgbWF5IGJlIGxhcmdlciB0aGFuIDQmbmJzcDtvY3RldHMsIHBvdGVudGlhbGx5IHJlcXVpcmlu
ZyBhIHNlcGFyYXRlCisgb3ZlcmZsb3cgY2hlY2suCis8L3Q+CisKKzx0PgorQW5vdGhlciBidWcg
aW4gdGhpcyBjbGFzcyB3ZSBoYXZlIG9ic2VydmVkIG1vcmUgdGhhbiBvbmNlIGludm9sdmVzIHRo
ZSBoYW5kbGluZworIG9mIGludmFsaWQgZGF0YSBhdCB0aGUgZW5kIG9mIGEgc3RyZWFtLgorT2Z0
ZW4sIGltcGxlbWVudGF0aW9ucyB3aWxsIHNlZWsgdG8gdGhlIGVuZCBvZiBhIHN0cmVhbSB0byBs
b2NhdGUgdGhlIGxhc3QKKyB0aW1lc3RhbXAgaW4gb3JkZXIgdG8gY29tcHV0ZSBpdHMgdG90YWwg
ZHVyYXRpb24uCitJZiB0aGV5IGRvIG5vdCBmaW5kIGEgdmFsaWQgY2FwdHVyZSBwYXR0ZXJuIGFu
ZCBPZ2cgcGFnZSBmcm9tIHRoZSBkZXNpcmVkCisgbG9naWNhbCBzdHJlYW0sIHRoZXkgd2lsbCBi
YWNrIHVwIGFuZCB0cnkgYWdhaW4uCitJZiBjYXJlIGlzIG5vdCB0YWtlbiB0byBhdm9pZCByZS1z
Y2FubmluZyBkYXRhIHRoYXQgd2FzIGFscmVhZHkgc2Nhbm5lZCwgdGhpcworIHNlYXJjaCBjYW4g
cXVpY2tseSBkZXZvbHZlIGludG8gc29tZXRoaW5nIHdpdGggYSBjb21wbGV4aXR5IHRoYXQgaXMg
cXVhZHJhdGljCisgaW4gdGhlIGFtb3VudCBvZiBpbnZhbGlkIGRhdGEuCis8L3Q+CisKKzx0Pgor
SW4gZ2VuZXJhbCB3aGVuIHNlZWtpbmcsIGltcGxlbWVudGF0aW9ucyB3aWxsIHdpc2ggdG8gYmUg
Y2F1dGlvdXMgYWJvdXQgdGhlCisgZWZmZWN0cyBvZiBpbnZhbGlkIGdyYW51bGUgcG9zaXRpb24g
dmFsdWVzLCBhbmQgZW5zdXJlIGFsbCBhbGdvcml0aG1zIHdpbGwKKyBjb250aW51ZSB0byBtYWtl
IHByb2dyZXNzIGFuZCBldmVudHVhbGx5IHRlcm1pbmF0ZSwgZXZlbiBpZiB0aGVzZSBhcmUgbWlz
c2luZworIG9yIG91dC1vZi1vcmRlci4KKzwvdD4KKworPHQ+CitMaWtlIG1vc3Qgb3RoZXIgY29u
dGFpbmVyIGZvcm1hdHMsIE9nZyBPcHVzIHN0cmVhbXMgU0hPVUxEIE5PVCBiZSB1c2VkIHdpdGgK
KyBpbnNlY3VyZSBjaXBoZXJzIG9yIGNpcGhlciBtb2RlcyB0aGF0IGFyZSB2dWxuZXJhYmxlIHRv
IGtub3duLXBsYWludGV4dAorIGF0dGFja3MuCitFbGVtZW50cyBzdWNoIGFzIHRoZSBPZ2cgcGFn
ZSBjYXB0dXJlIHBhdHRlcm4gYW5kIHRoZSBtYWdpYyBzaWduYXR1cmVzIGluIHRoZQorIElEIGhl
YWRlciBhbmQgdGhlIGNvbW1lbnQgaGVhZGVyIGFsbCBoYXZlIGVhc2lseSBwcmVkaWN0YWJsZSB2
YWx1ZXMsIGluCisgYWRkaXRpb24gdG8gdmFyaW91cyBlbGVtZW50cyBvZiB0aGUgY29kZWMgZGF0
YSBpdHNlbGYuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iY29udGVudF90
eXBlIiB0aXRsZT0iQ29udGVudCBUeXBlIj4KKzx0PgorQW4gIk9nZyBPcHVzIGZpbGUiIGNvbnNp
c3RzIG9mIG9uZSBvciBtb3JlIHNlcXVlbnRpYWxseSBtdWx0aXBsZXhlZCBzZWdtZW50cywKKyBl
YWNoIGNvbnRhaW5pbmcgZXhhY3RseSBvbmUgT2dnIE9wdXMgc3RyZWFtLgorVGhlIFJFQ09NTUVO
REVEIG1pbWUtdHlwZSBmb3IgT2dnIE9wdXMgZmlsZXMgaXMgImF1ZGlvL29nZyIuCis8L3Q+CisK
Kzx0PgorSWYgbW9yZSBzcGVjaWZpY2l0eSBpcyBkZXNpcmVkLCBvbmUgTUFZIGluZGljYXRlIHRo
ZSBwcmVzZW5jZSBvZiBPcHVzIHN0cmVhbXMKKyB1c2luZyB0aGUgY29kZWNzIHBhcmFtZXRlciBk
ZWZpbmVkIGluIDx4cmVmIHRhcmdldD0iUkZDNjM4MSIvPiBhbmQKKyA8eHJlZiB0YXJnZXQ9IlJG
QzUzMzQiLz4sIGUuZy4sCis8L3Q+Cis8ZmlndXJlPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCisgICAgYXVkaW8vb2dnOyBjb2RlY3M9b3B1cworXV0+PC9hcnR3b3JrPgorPC9m
aWd1cmU+Cis8dD4KKyBmb3IgYW4gT2dnIE9wdXMgZmlsZS4KKzwvdD4KKworPHQ+CitUaGUgUkVD
T01NRU5ERUQgZmlsZW5hbWUgZXh0ZW5zaW9uIGZvciBPZ2cgT3B1cyBmaWxlcyBpcyAnLm9wdXMn
LgorPC90PgorCis8dD4KK1doZW4gT3B1cyBpcyBjb25jdXJyZW50bHkgbXVsdGlwbGV4ZWQgd2l0
aCBvdGhlciBzdHJlYW1zIGluIGFuIE9nZyBjb250YWluZXIsCisgb25lIFNIT1VMRCB1c2Ugb25l
IG9mIHRoZSAiYXVkaW8vb2dnIiwgInZpZGVvL29nZyIsIG9yICJhcHBsaWNhdGlvbi9vZ2ciCisg
bWltZS10eXBlcywgYXMgZGVmaW5lZCBpbiA8eHJlZiB0YXJnZXQ9IlJGQzUzMzQiLz4uCitTdWNo
IHN0cmVhbXMgYXJlIG5vdCBzdHJpY3RseSAiT2dnIE9wdXMgZmlsZXMiIGFzIGRlc2NyaWJlZCBh
Ym92ZSwKKyBzaW5jZSB0aGV5IGNvbnRhaW4gbW9yZSB0aGFuIGEgc2luZ2xlIE9wdXMgc3RyZWFt
IHBlciBzZXF1ZW50aWFsbHkKKyBtdWx0aXBsZXhlZCBzZWdtZW50LCBlLmcuIHZpZGVvIG9yIG11
bHRpcGxlIGF1ZGlvIHRyYWNrcy4KK0luIHN1Y2ggY2FzZXMgdGhlIHRoZSAnLm9wdXMnIGZpbGVu
YW1lIGV4dGVuc2lvbiBpcyBOT1QgUkVDT01NRU5ERUQuCis8L3Q+CisKKzx0PgorSW4gZWl0aGVy
IGNhc2UsIHRoaXMgZG9jdW1lbnQgdXBkYXRlcyA8eHJlZiB0YXJnZXQ9IlJGQzUzMzQiLz4KKyB0
byBhZGQgJ29wdXMnIGFzIGEgY29kZWNzIHBhcmFtZXRlciB2YWx1ZSB3aXRoIGNoYXJbOF06ICdP
cHVzSGVhZCcKKyBhcyBDb2RlYyBJZGVudGlmaWVyLgorPC90PgorPC9zZWN0aW9uPgorCis8c2Vj
dGlvbiBhbmNob3I9ImlhbmEiIHRpdGxlPSJJQU5BIENvbnNpZGVyYXRpb25zIj4KKzx0PgorVGhp
cyBkb2N1bWVudCB1cGRhdGVzIHRoZSBJQU5BIE1lZGlhIFR5cGVzIHJlZ2lzdHJ5IHRvIGFkZCAu
b3B1cworIGFzIGEgZmlsZSBleHRlbnNpb24gZm9yICJhdWRpby9vZ2ciLCBhbmQgdG8gYWRkIGl0
c2VsZiBhcyBhIHJlZmVyZW5jZQorIGFsb25nc2lkZSA8eHJlZiB0YXJnZXQ9IlJGQzUzMzQiLz4g
Zm9yICJhdWRpby9vZ2ciLCAidmlkZW8vb2dnIiwgYW5kCisgImFwcGxpY2F0aW9uL29nZyIgTWVk
aWEgVHlwZXMuCis8L3Q+Cis8dD4KK1RoaXMgZG9jdW1lbnQgZGVmaW5lcyBhIG5ldyByZWdpc3Ry
eSAiT3B1cyBDaGFubmVsIE1hcHBpbmcgRmFtaWxpZXMiIHRvCisgaW5kaWNhdGUgaG93IHRoZSBz
ZW1hbnRpYyBtZWFuaW5ncyBvZiB0aGUgY2hhbm5lbHMgaW4gYSBtdWx0aS1jaGFubmVsIE9wdXMK
KyBzdHJlYW0gYXJlIGRlc2NyaWJlZC4KK0lBTkEgaXMgcmVxdWVzdGVkIHRvIGNyZWF0ZSBhIG5l
dyBuYW1lIHNwYWNlIG9mICJPcHVzIENoYW5uZWwgTWFwcGluZworIEZhbWlsaWVzIi4KK1RoaXMg
d2lsbCBiZSBhIG5ldyByZWdpc3RyeSBvbiB0aGUgSUFOQSBNYXRyaXgsIGFuZCBub3QgYSBzdWJy
ZWdpc3RyeSBvZiBhbgorIGV4aXN0aW5nIHJlZ2lzdHJ5LgorTW9kaWZpY2F0aW9ucyB0byB0aGlz
IHJlZ2lzdHJ5IGZvbGxvdyB0aGUgIlNwZWNpZmljYXRpb24gUmVxdWlyZWQiIHJlZ2lzdHJhdGlv
bgorIHBvbGljeSBhcyBkZWZpbmVkIGluIDx4cmVmIHRhcmdldD0iUkZDNTIyNiIvPi4KK0VhY2gg
cmVnaXN0cnkgZW50cnkgY29uc2lzdHMgb2YgYSBDaGFubmVsIE1hcHBpbmcgRmFtaWx5IE51bWJl
ciwgd2hpY2ggaXMKKyBzcGVjaWZpZWQgaW4gZGVjaW1hbCBpbiB0aGUgcmFuZ2UgMCB0byAyNTUs
IGluY2x1c2l2ZSwgYW5kIGEgUmVmZXJlbmNlIChvcgorIGxpc3Qgb2YgcmVmZXJlbmNlcykKK0Vh
Y2ggUmVmZXJlbmNlIG11c3QgcG9pbnQgdG8gc3VmZmljaWVudCBkb2N1bWVudGF0aW9uIHRvIGRl
c2NyaWJlIHdoYXQKKyBpbmZvcm1hdGlvbiBpcyBjb2RlZCBpbiB0aGUgT3B1cyBpZGVudGlmaWNh
dGlvbiBoZWFkZXIgZm9yIHRoaXMgY2hhbm5lbAorIG1hcHBpbmcgZmFtaWx5LCBob3cgYSBkZW11
eGVyIGRldGVybWluZXMgdGhlIFN0cmVhbSBDb3VudCAoJ04nKSBhbmQgQ291cGxlZAorIFN0cmVh
bSBDb3VudCAoJ00nKSBmcm9tIHRoaXMgaW5mb3JtYXRpb24sIGFuZCBob3cgaXQgZGV0ZXJtaW5l
cyB0aGUgcHJvcGVyCisgaW50ZXJwcmV0YXRpb24gb2YgZWFjaCBvZiB0aGUgZGVjb2RlZCBjaGFu
bmVscy4KKzwvdD4KKzx0PgorVGhpcyBkb2N1bWVudCBkZWZpbmVzIHRocmVlIGluaXRpYWwgYXNz
aWdubWVudHMgZm9yIHRoaXMgcmVnaXN0cnkuCis8L3Q+Cis8dGV4dHRhYmxlPgorPHR0Y29sPlZh
bHVlPC90dGNvbD48dHRjb2w+UmVmZXJlbmNlPC90dGNvbD4KKzxjPjA8L2M+PGM+W1JGQ1hYWFhd
IDx4cmVmIHRhcmdldD0iY2hhbm5lbF9tYXBwaW5nXzAiLz48L2M+Cis8Yz4xPC9jPjxjPltSRkNY
WFhYXSA8eHJlZiB0YXJnZXQ9ImNoYW5uZWxfbWFwcGluZ18xIi8+PC9jPgorPGM+MjU1PC9jPjxj
PltSRkNYWFhYXSA8eHJlZiB0YXJnZXQ9ImNoYW5uZWxfbWFwcGluZ18yNTUiLz48L2M+Cis8L3Rl
eHR0YWJsZT4KKzx0PgorVGhlIGRlc2lnbmF0ZWQgZXhwZXJ0IHdpbGwgZGV0ZXJtaW5lIGlmIHRo
ZSBSZWZlcmVuY2UgcG9pbnRzIHRvIGEgc3BlY2lmaWNhdGlvbgorIHRoYXQgbWVldHMgdGhlIHJl
cXVpcmVtZW50cyBmb3IgcGVybWFuZW5jZSBhbmQgcmVhZHkgYXZhaWxhYmlsaXR5IGxhaWQgb3V0
CisgaW4mbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzUyMjYiLz4gYW5kIHRoYXQgaXQgc3BlY2lmaWVz
IHRoZSBpbmZvcm1hdGlvbgorIGRlc2NyaWJlZCBhYm92ZSB3aXRoIHN1ZmZpY2llbnQgY2xhcml0
eSB0byBhbGxvdyBpbnRlcm9wZXJhYmxlCisgaW1wbGVtZW50YXRpb25zLgorPC90PgorPC9zZWN0
aW9uPgorCis8c2VjdGlvbiBhbmNob3I9IkFja25vd2xlZGdtZW50cyIgdGl0bGU9IkFja25vd2xl
ZGdtZW50cyI+Cis8dD4KK1RoYW5rcyB0byBCZW4gQ2FtcGJlbGwsIEpvZWwgTS4gSGFscGVybiwg
TWFyayBIYXJyaXMsIEdyZWcgTWF4d2VsbCwKKyBDaHJpc3RvcGhlciAiTW9udHkiIE1vbnRnb21l
cnksIEplYW4tTWFyYyBWYWxpbiwgU3RlcGhhbiBXZW5nZXIsIGFuZCBNbyBaYW5hdHkKKyBmb3Ig
dGhlaXIgdmFsdWFibGUgY29udHJpYnV0aW9ucyB0byB0aGlzIGRvY3VtZW50LgorQWRkaXRpb25h
bCB0aGFua3MgdG8gQW5kcmV3IEQnQWRkZXNpbywgR3JlZyBNYXh3ZWxsLCBhbmQgVmluY2VudCBQ
ZW5xdWVyYydoIGZvcgorIHRoZWlyIGZlZWRiYWNrIGJhc2VkIG9uIGVhcmx5IGltcGxlbWVudGF0
aW9ucy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IlJGQyBFZGl0b3IgTm90
ZXMiPgorPHQ+CitJbiZuYnNwOzx4cmVmIHRhcmdldD0iaWFuYSIvPiwgIlJGQ1hYWFgiIGlzIHRv
IGJlIHJlcGxhY2VkIHdpdGggdGhlIFJGQyBudW1iZXIKKyBhc3NpZ25lZCB0byB0aGlzIGRyYWZ0
LgorPC90PgorPC9zZWN0aW9uPgorCis8L21pZGRsZT4KKzxiYWNrPgorPHJlZmVyZW5jZXMgdGl0
bGU9Ik5vcm1hdGl2ZSBSZWZlcmVuY2VzIj4KKyAmcmZjMjExOTsKKyAmcmZjMzUzMzsKKyAmcmZj
MzYyOTsKKyAmcmZjNTIyNjsKKyAmcmZjNTMzNDsKKyAmcmZjNjM4MTsKKyAmcmZjNjcxNjsKKwor
PHJlZmVyZW5jZSBhbmNob3I9IkVCVS1SMTI4IiB0YXJnZXQ9Imh0dHBzOi8vdGVjaC5lYnUuY2gv
bG91ZG5lc3MiPgorPGZyb250PgorICA8dGl0bGU+TG91ZG5lc3MgUmVjb21tZW5kYXRpb24gRUJV
IFIxMjg8L3RpdGxlPgorICA8YXV0aG9yPgorICAgIDxvcmdhbml6YXRpb24+RUJVIFRlY2huaWNh
bCBDb21taXR0ZWU8L29yZ2FuaXphdGlvbj4KKyAgPC9hdXRob3I+CisgIDxkYXRlIG1vbnRoPSJB
dWd1c3QiIHllYXI9IjIwMTEiLz4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5j
ZSBhbmNob3I9InZvcmJpcy1jb21tZW50IgorIHRhcmdldD0iaHR0cHM6Ly93d3cueGlwaC5vcmcv
dm9yYmlzL2RvYy92LWNvbW1lbnQuaHRtbCI+Cis8ZnJvbnQ+Cis8dGl0bGU+T2dnIFZvcmJpcyBJ
IEZvcm1hdCBTcGVjaWZpY2F0aW9uOiBDb21tZW50IEZpZWxkIGFuZCBIZWFkZXIKKyBTcGVjaWZp
Y2F0aW9uPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IkMuIiBzdXJuYW1lPSJNb250Z29tZXJ5
IgorIGZ1bGxuYW1lPSJDaHJpc3RvcGhlciAmcXVvdDtNb250eSZxdW90OyBNb250Z29tZXJ5Ii8+
Cis8ZGF0ZSBtb250aD0iSnVseSIgeWVhcj0iMjAwMiIvPgorPC9mcm9udD4KKzwvcmVmZXJlbmNl
PgorCis8L3JlZmVyZW5jZXM+CisKKzxyZWZlcmVuY2VzIHRpdGxlPSJJbmZvcm1hdGl2ZSBSZWZl
cmVuY2VzIj4KKworPCEtLT9yZmMgaW5jbHVkZT0iaHR0cDovL3htbC5yZXNvdXJjZS5vcmcvcHVi
bGljL3JmYy9iaWJ4bWwvcmVmZXJlbmNlLlJGQy4zNTUwLnhtbCI/LS0+CisgJnJmYzQ3MzI7Cisg
JnJmYzY5ODI7CisgJnJmYzc1ODc7CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJmbGFjIgorIHRhcmdl
dD0iaHR0cHM6Ly94aXBoLm9yZy9mbGFjL2Zvcm1hdC5odG1sIj4KKyAgPGZyb250PgorICAgIDx0
aXRsZT5GTEFDIC0gRnJlZSBMb3NzbGVzcyBBdWRpbyBDb2RlYyBGb3JtYXQgRGVzY3JpcHRpb248
L3RpdGxlPgorICAgIDxhdXRob3IgaW5pdGlhbHM9IkouIiBzdXJuYW1lPSJDb2Fsc29uIiBmdWxs
bmFtZT0iSm9zaCBDb2Fsc29uIi8+CisgICAgPGRhdGUgbW9udGg9IkphbnVhcnkiIHllYXI9IjIw
MDgiLz4KKyAgPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iaGFu
bmluZyIKKyB0YXJnZXQ9Imh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93L2luZGV4LnBocD90aXRs
ZT1XaW5kb3dfZnVuY3Rpb24mYW1wO29sZGlkPTcwMzA3NDQ2NyNIYW5uXy4yOEhhbm5pbmcuMjlf
d2luZG93Ij4KKyAgPGZyb250PgorICAgIDx0aXRsZT5IYW5uIHdpbmRvdzwvdGl0bGU+CisgICAg
PGF1dGhvcj4KKyAgICAgIDxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+Cisg
ICAgPC9hdXRob3I+CisgICAgPGRhdGUgbW9udGg9IkZlYnJ1YXJ5IiB5ZWFyPSIyMDE2Ii8+Cisg
IDwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9ImxpbmVhci1wcmVk
aWN0aW9uIgorIHRhcmdldD0iaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3cvaW5kZXgucGhwP3Rp
dGxlPUxpbmVhcl9wcmVkaWN0aXZlX2NvZGluZyZhbXA7b2xkaWQ9Njg3NDk4OTYyIj4KKyAgPGZy
b250PgorICAgIDx0aXRsZT5MaW5lYXIgUHJlZGljdGl2ZSBDb2Rpbmc8L3RpdGxlPgorICAgIDxh
dXRob3I+CisgICAgICA8b3JnYW5pemF0aW9uPldpa2lwZWRpYTwvb3JnYW5pemF0aW9uPgorICAg
IDwvYXV0aG9yPgorICAgIDxkYXRlIG1vbnRoPSJPY3RvYmVyIiB5ZWFyPSIyMDE1Ii8+CisgIDwv
ZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9ImxwYy1zYW1wbGUiCisg
IHRhcmdldD0iaHR0cHM6Ly9zdm4ueGlwaC5vcmcvdHJ1bmsvdm9yYmlzL2xpYi9scGMuYyI+Cis8
ZnJvbnQ+CisgIDx0aXRsZT5BdXRvY29ycmVsYXRpb24gTFBDIGNvZWZmIGdlbmVyYXRpb24gYWxn
b3JpdGhtCisgICAgKFZvcmJpcyBzb3VyY2UgY29kZSk8L3RpdGxlPgorPGF1dGhvciBpbml0aWFs
cz0iSi4iIHN1cm5hbWU9IkRlZ2VuZXIiIGZ1bGxuYW1lPSJKdXR0YSBEZWdlbmVyIi8+Cis8YXV0
aG9yIGluaXRpYWxzPSJDLiIgc3VybmFtZT0iQm9ybWFubiIgZnVsbG5hbWU9IkNhcnN0ZW4gQm9y
bWFubiIvPgorPGRhdGUgbW9udGg9Ik5vdmVtYmVyIiB5ZWFyPSIxOTk0Ii8+Cis8L2Zyb250Pgor
PC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJxLW5vdGF0aW9uIgorIHRhcmdldD0i
aHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3cvaW5kZXgucGhwP3RpdGxlPVFfJTI4bnVtYmVyX2Zv
cm1hdCUyOSZhbXA7b2xkaWQ9Njk3MjUyNjE1Ij4KKzxmcm9udD4KKzx0aXRsZT5RIChudW1iZXIg
Zm9ybWF0KTwvdGl0bGU+Cis8YXV0aG9yPjxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6
YXRpb24+PC9hdXRob3I+Cis8ZGF0ZSBtb250aD0iRGVjZW1iZXIiIHllYXI9IjIwMTUiLz4KKzwv
ZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9InJlcGxheS1nYWluIgor
IHRhcmdldD0iaHR0cHM6Ly93aWtpLnhpcGgub3JnL1ZvcmJpc0NvbW1lbnQjUmVwbGF5X0dhaW4i
PgorPGZyb250PgorPHRpdGxlPlZvcmJpc0NvbW1lbnQ6IFJlcGxheSBHYWluPC90aXRsZT4KKzxh
dXRob3IgaW5pdGlhbHM9IkMuIiBzdXJuYW1lPSJQYXJrZXIiIGZ1bGxuYW1lPSJDb25yYWQgUGFy
a2VyIi8+Cis8YXV0aG9yIGluaXRpYWxzPSJNLiIgc3VybmFtZT0iTGVlc2UiIGZ1bGxuYW1lPSJN
YXJ0aW4gTGVlc2UiLz4KKzxkYXRlIG1vbnRoPSJKdW5lIiB5ZWFyPSIyMDA5Ii8+Cis8L2Zyb250
PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJzZWVraW5nIgorIHRhcmdldD0i
aHR0cHM6Ly93aWtpLnhpcGgub3JnL1NlZWtpbmciPgorPGZyb250PgorPHRpdGxlPkdyYW51bGVw
b3MgRW5jb2RpbmcgYW5kIEhvdyBTZWVraW5nIFJlYWxseSBXb3JrczwvdGl0bGU+Cis8YXV0aG9y
IGluaXRpYWxzPSJTLiIgc3VybmFtZT0iUGZlaWZmZXIiIGZ1bGxuYW1lPSJTaWx2aWEgUGZlaWZm
ZXIiLz4KKzxhdXRob3IgaW5pdGlhbHM9IkMuIiBzdXJuYW1lPSJQYXJrZXIiIGZ1bGxuYW1lPSJD
b25yYWQgUGFya2VyIi8+Cis8YXV0aG9yIGluaXRpYWxzPSJHLiIgc3VybmFtZT0iTWF4d2VsbCIg
ZnVsbG5hbWU9IkdyZWcgTWF4d2VsbCIvPgorPGRhdGUgbW9udGg9Ik1heSIgeWVhcj0iMjAxMiIv
PgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0idm9yYmlzLW1h
cHBpbmciCisgdGFyZ2V0PSJodHRwczovL3d3dy54aXBoLm9yZy92b3JiaXMvZG9jL1ZvcmJpc19J
X3NwZWMuaHRtbCN4MS04MTAwMDQuMy45Ij4KKzxmcm9udD4KKzx0aXRsZT5UaGUgVm9yYmlzIEkg
U3BlY2lmaWNhdGlvbiwgU2VjdGlvbiA0LjMuOSBPdXRwdXQgQ2hhbm5lbCBPcmRlcjwvdGl0bGU+
Cis8YXV0aG9yIGluaXRpYWxzPSJDLiIgc3VybmFtZT0iTW9udGdvbWVyeSIKKyBmdWxsbmFtZT0i
Q2hyaXN0b3BoZXIgJnF1b3Q7TW9udHkmcXVvdDsgTW9udGdvbWVyeSIvPgorPGRhdGUgbW9udGg9
IkphbnVhcnkiIHllYXI9IjIwMTAiLz4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVy
ZW5jZSBhbmNob3I9InZvcmJpcy10cmltIgorIHRhcmdldD0iaHR0cHM6Ly94aXBoLm9yZy92b3Ji
aXMvZG9jL1ZvcmJpc19JX3NwZWMuaHRtbCN4MS0xMzIwMDBBLjIiPgorICA8ZnJvbnQ+CisgICAg
PHRpdGxlPlRoZSBWb3JiaXMgSSBTcGVjaWZpY2F0aW9uLCBBcHBlbmRpeCZuYnNwO0E6IEVtYmVk
ZGluZyBWb3JiaXMKKyAgICAgIGludG8gYW4gT2dnIHN0cmVhbTwvdGl0bGU+CisgICAgPGF1dGhv
ciBpbml0aWFscz0iQy4iIHN1cm5hbWU9Ik1vbnRnb21lcnkiCisgICAgIGZ1bGxuYW1lPSJDaHJp
c3RvcGhlciAmcXVvdDtNb250eSZxdW90OyBNb250Z29tZXJ5Ii8+CisgICAgPGRhdGUgbW9udGg9
Ik5vdmVtYmVyIiB5ZWFyPSIyMDA4Ii8+CisgIDwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJl
ZmVyZW5jZSBhbmNob3I9IndhdmUtbXVsdGljaGFubmVsIgorIHRhcmdldD0iaHR0cDovL21zZG4u
bWljcm9zb2Z0LmNvbS9lbi11cy93aW5kb3dzL2hhcmR3YXJlL2dnNDYzMDA2LmFzcHgiPgorICA8
ZnJvbnQ+CisgICAgPHRpdGxlPk11bHRpcGxlIENoYW5uZWwgQXVkaW8gRGF0YSBhbmQgV0FWRSBG
aWxlczwvdGl0bGU+CisgICAgPGF1dGhvcj4KKyAgICAgIDxvcmdhbml6YXRpb24+TWljcm9zb2Z0
IENvcnBvcmF0aW9uPC9vcmdhbml6YXRpb24+CisgICAgPC9hdXRob3I+CisgICAgPGRhdGUgbW9u
dGg9Ik1hcmNoIiB5ZWFyPSIyMDA3Ii8+CisgIDwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPC9y
ZWZlcmVuY2VzPgorCis8L2JhY2s+Cis8L3JmYz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2RyYWZ0LWlldGYt
Y29kZWMtb3B1cy11cGRhdGUueG1sIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLXVwZGF0ZS54
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNmU1MmExNjY4ZDkwNTk3ODE1ZmNhN2E5ZGJlZjM4Yjg4OTZjNTM2Mgot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvZG9jL2RyYWZ0LWlldGYtY29kZWMtb3B1cy11cGRhdGUueG1sCkBA
IC0wLDAgKzEsNTE5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVUy1BU0NJSSI/
PgorPCFET0NUWVBFIHJmYyBTWVNURU0gInJmYzI2MjkuZHRkIj4KKzw/cmZjIHRvYz0ieWVzIj8+
Cis8P3JmYyB0b2NvbXBhY3Q9InllcyI/PgorPD9yZmMgdG9jZGVwdGg9IjMiPz4KKzw/cmZjIHRv
Y2luZGVudD0ieWVzIj8+Cis8P3JmYyBzeW1yZWZzPSJ5ZXMiPz4KKzw/cmZjIHNvcnRyZWZzPSJ5
ZXMiPz4KKzw/cmZjIGNvbW1lbnRzPSJ5ZXMiPz4KKzw/cmZjIGlubGluZT0ieWVzIj8+Cis8P3Jm
YyBjb21wYWN0PSJ5ZXMiPz4KKzw/cmZjIHN1YmNvbXBhY3Q9Im5vIj8+Cis8cmZjIGNhdGVnb3J5
PSJzdGQiIGRvY05hbWU9ImRyYWZ0LWlldGYtY29kZWMtb3B1cy11cGRhdGUtMDgiCisgICAgIGlw
cj0idHJ1c3QyMDA5MDIiIHVwZGF0ZXM9IjY3MTYiPgorICA8ZnJvbnQ+CisgICAgPHRpdGxlIGFi
YnJldj0iT3B1cyBVcGRhdGUiPlVwZGF0ZXMgdG8gdGhlIE9wdXMgQXVkaW8gQ29kZWM8L3RpdGxl
PgorCis8YXV0aG9yIGluaXRpYWxzPSJKTSIgc3VybmFtZT0iVmFsaW4iIGZ1bGxuYW1lPSJKZWFu
LU1hcmMgVmFsaW4iPgorPG9yZ2FuaXphdGlvbj5Nb3ppbGxhIENvcnBvcmF0aW9uPC9vcmdhbml6
YXRpb24+Cis8YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3RyZWV0PjMzMSBFLiBFdmVseW4gQXZlbnVl
PC9zdHJlZXQ+Cis8Y2l0eT5Nb3VudGFpbiBWaWV3PC9jaXR5PgorPHJlZ2lvbj5DQTwvcmVnaW9u
PgorPGNvZGU+OTQwNDE8L2NvZGU+Cis8Y291bnRyeT5VU0E8L2NvdW50cnk+Cis8L3Bvc3RhbD4K
KzxwaG9uZT4rMSA2NTAgOTAzLTA4MDA8L3Bob25lPgorPGVtYWlsPmptdmFsaW5Aam12YWxpbi5j
YTwvZW1haWw+Cis8L2FkZHJlc3M+Cis8L2F1dGhvcj4KKworPGF1dGhvciBpbml0aWFscz0iSy4i
IHN1cm5hbWU9IlZvcyIgZnVsbG5hbWU9IktvZW4gVm9zIj4KKzxvcmdhbml6YXRpb24+dm9jVG9u
ZTwvb3JnYW5pemF0aW9uPgorPGFkZHJlc3M+Cis8cG9zdGFsPgorPHN0cmVldD48L3N0cmVldD4K
KzxjaXR5PjwvY2l0eT4KKzxyZWdpb24+PC9yZWdpb24+Cis8Y29kZT48L2NvZGU+Cis8Y291bnRy
eT48L2NvdW50cnk+Cis8L3Bvc3RhbD4KKzxwaG9uZT48L3Bob25lPgorPGVtYWlsPmtvZW52b3M3
NEBnbWFpbC5jb208L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisKKworCisgICAgPGRh
dGUgZGF5PSIyNiIgbW9udGg9Ikp1bHkiIHllYXI9IjIwMTciIC8+CisKKyAgICA8YWJzdHJhY3Q+
CisgICAgICA8dD5UaGlzIGRvY3VtZW50IGFkZHJlc3NlcyBtaW5vciBpc3N1ZXMgdGhhdCB3ZXJl
IGZvdW5kIGluIHRoZSBzcGVjaWZpY2F0aW9uCisgICAgICBvZiB0aGUgT3B1cyBhdWRpbyBjb2Rl
YyBpbiBSRkMgNjcxNi48L3Q+CisgICAgPC9hYnN0cmFjdD4KKyAgPC9mcm9udD4KKworICA8bWlk
ZGxlPgorICAgIDxzZWN0aW9uIHRpdGxlPSJJbnRyb2R1Y3Rpb24iPgorICAgICAgPHQ+VGhpcyBk
b2N1bWVudCBhZGRyZXNzZXMgbWlub3IgaXNzdWVzIHRoYXQgd2VyZSBkaXNjb3ZlcmVkIGluIHRo
ZSByZWZlcmVuY2UKKyAgICAgIGltcGxlbWVudGF0aW9uIG9mIHRoZSBPcHVzIGNvZGVjLiBVbmxp
a2UgbW9zdCBJRVRGIHNwZWNpZmljYXRpb25zLCBPcHVzIGlzIGRlZmluZWQKKyAgICAgIGluIDx4
cmVmIHRhcmdldD0iUkZDNjcxNiI+UkZDIDY3MTY8L3hyZWY+IGluIHRlcm1zIG9mIGEgbm9ybWF0
aXZlIHJlZmVyZW5jZQorICAgICAgZGVjb2RlciBpbXBsZW1lbnRhdGlvbiByYXRoZXIgdGhhbiBm
cm9tIHRoZSBhc3NvY2lhdGVkIHRleHQgZGVzY3JpcHRpb24uCisgICAgICBUaGF0IFJGQyBpbmNs
dWRlcyB0aGUgcmVmZXJlbmNlIGRlY29kZXIgaW1wbGVtZW50YXRpb24gYXMgQXBwZW5kaXggQS4K
KyAgICAgIFRoYXQncyB3aHkgb25seSBpc3N1ZXMgYWZmZWN0aW5nIHRoZSBkZWNvZGVyIGFyZQor
ICAgICAgbGlzdGVkIGhlcmUuIEFuIHVwLXRvLWRhdGUgaW1wbGVtZW50YXRpb24gb2YgdGhlIE9w
dXMgZW5jb2RlciBjYW4gYmUgZm91bmQgYXQKKyAgICAgIDxlcmVmIHRhcmdldD0iaHR0cHM6Ly9v
cHVzLWNvZGVjLm9yZy8iLz4uPC90PgorICAgIDx0PgorICAgICAgU29tZSBvZiB0aGUgY2hhbmdl
cyBpbiB0aGlzIGRvY3VtZW50IHVwZGF0ZSBub3JtYXRpdmUgYmVoYXZpb3VyIGluIGEgd2F5IHRo
YXQgcmVxdWlyZXMKKyAgICAgIG5ldyB0ZXN0IHZlY3RvcnMuIFRoZSBFbmdsaXNoIHRleHQgb2Yg
dGhlIHNwZWNpZmljYXRpb24gaXMgdW5hZmZlY3RlZCwgb25seQorICAgICAgdGhlIEMgaW1wbGVt
ZW50YXRpb24gaXMuIFRoZSB1cGRhdGVkIHNwZWNpZmljYXRpb24gcmVtYWlucyBmdWxseSBjb21w
YXRpYmxlIHdpdGgKKyAgICAgIHRoZSBvcmlnaW5hbCBzcGVjaWZpY2F0aW9uLgorICAgIDwvdD4K
KworICAgIDx0PgorICAgIE5vdGU6IGR1ZSB0byBSRkMgZm9ybWF0dGluZyBjb252ZW50aW9ucywg
bGluZXMgZXhjZWVkaW5nIHRoZSBjb2x1bW4gd2lkdGgKKyAgICBpbiB0aGUgcGF0Y2ggYXJlIHNw
bGl0IHVzaW5nIGEgYmFja3NsYXNoIGNoYXJhY3Rlci4gVGhlIGJhY2tzbGFzaGVzCisgICAgYXQg
dGhlIGVuZCBvZiBhIGxpbmUgYW5kIHRoZSB3aGl0ZSBzcGFjZSBhdCB0aGUgYmVnaW5uaW5nCisg
ICAgb2YgdGhlIGZvbGxvd2luZyBsaW5lIGFyZSBub3QgcGFydCBvZiB0aGUgcGF0Y2guIEEgcHJv
cGVybHkgZm9ybWF0dGVkIHBhdGNoCisgICAgaW5jbHVkaW5nIGFsbCBjaGFuZ2VzIGlzIGF2YWls
YWJsZSBhdAorICAgIDxlcmVmIHRhcmdldD0iaHR0cHM6Ly93d3cuaWV0Zi5vcmcvcHJvY2VlZGlu
Z3MvOTgvc2xpZGVzL21hdGVyaWFscy05OC1jb2RlYy1vcHVzLXVwZGF0ZS0wMC5wYXRjaCIvPgor
ICAgIGFuZCBoYXMgYSBTSEExIDAyOWUzYWE4OGZjMzQyYzkxZTY3YTIxZTdiZmJjOTQ1ODY2MWNk
NWYuCisgICAgPC90PgorCisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24gdGl0bGU9IlRl
cm1pbm9sb2d5Ij4KKyAgICAgIDx0PlRoZSBrZXkgd29yZHMgIk1VU1QiLCAiTVVTVCBOT1QiLCAi
UkVRVUlSRUQiLCAiU0hBTEwiLCAiU0hBTEwgTk9UIiwKKyAgICAgICJTSE9VTEQiLCAiU0hPVUxE
IE5PVCIsICJSRUNPTU1FTkRFRCIsICJNQVkiLCBhbmQgIk9QVElPTkFMIiBpbiB0aGlzCisgICAg
ICBkb2N1bWVudCBhcmUgdG8gYmUgaW50ZXJwcmV0ZWQgYXMgZGVzY3JpYmVkIGluIDx4cmVmCisg
ICAgICB0YXJnZXQ9IlJGQzIxMTkiPlJGQyAyMTE5PC94cmVmPi48L3Q+CisgICAgPC9zZWN0aW9u
PgorCisgICAgPHNlY3Rpb24gdGl0bGU9IlN0ZXJlbyBTdGF0ZSBSZXNldCBpbiBTSUxLIj4KKyAg
ICAgIDx0PlRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gZG9lcyBub3QgcmVpbml0aWFsaXpl
IHRoZSBzdGVyZW8gc3RhdGUKKyAgICAgIGR1cmluZyBhIG1vZGUgc3dpdGNoLiBUaGUgb2xkIHN0
ZXJlbyBtZW1vcnkgY2FuIHByb2R1Y2UgYSBicmllZiBpbXB1bHNlCisgICAgICAoaS5lLiBzaW5n
bGUgc2FtcGxlKSBpbiB0aGUgZGVjb2RlZCBhdWRpby4gVGhpcyBjYW4gYmUgZml4ZWQgYnkgY2hh
bmdpbmcKKyAgICAgIHNpbGsvZGVjX0FQSS5jIGF0IGxpbmUgNzI6CisgICAgPC90PgorPGZpZ3Vy
ZT4KKzxhcnR3b3JrPjwhW0NEQVRBWworPENPREUgQkVHSU5TPgorICAgICBmb3IoIG4gPSAwOyBu
IDwgREVDT0RFUl9OVU1fQ0hBTk5FTFM7IG4rKyApIHsKKyAgICAgICAgIHJldCAgPSBzaWxrX2lu
aXRfZGVjb2RlciggJmNoYW5uZWxfc3RhdGVbIG4gXSApOworICAgICB9CisrICAgIHNpbGtfbWVt
c2V0KCYoKHNpbGtfZGVjb2RlciAqKWRlY1N0YXRlKS0+c1N0ZXJlbywgMCwKKysgICAgICAgICAg
ICAgICAgc2l6ZW9mKCgoc2lsa19kZWNvZGVyICopZGVjU3RhdGUpLT5zU3RlcmVvKSk7CisrICAg
IC8qIE5vdCBzdHJpY3RseSBuZWVkZWQsIGJ1dCBpdCdzIGNsZWFuZXIgdGhhdCB3YXkgKi8KKysg
ICAgKChzaWxrX2RlY29kZXIgKilkZWNTdGF0ZSktPnByZXZfZGVjb2RlX29ubHlfbWlkZGxlID0g
MDsKKyAKKyAgICAgcmV0dXJuIHJldDsKKyB9Cis8Q09ERSBFTkRTPgorXV0+PC9hcnR3b3JrPgor
PC9maWd1cmU+CisgICAgIDx0PgorICAgICBUaGlzIGNoYW5nZSBhZmZlY3RzIHRoZSBub3JtYXRp
dmUgb3V0cHV0IG9mIHRoZSBkZWNvZGVyLCBidXQgdGhlCisgICAgIGFtb3VudCBvZiBjaGFuZ2Ug
aXMgd2l0aGluIHRoZSB0b2xlcmFuY2UgYW5kIHRvbyBzbWFsbCB0byBtYWtlIHRoZSB0ZXN0dmVj
dG9yIGNoZWNrIGZhaWwuCisgICAgICA8L3Q+CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rp
b24gYW5jaG9yPSJwYWRkaW5nIiB0aXRsZT0iUGFyc2luZyBvZiB0aGUgT3B1cyBQYWNrZXQgUGFk
ZGluZyI+CisgICAgICA8dD5JdCB3YXMgZGlzY292ZXJlZCB0aGF0IHNvbWUgaW52YWxpZCBwYWNr
ZXRzIG9mIHZlcnkgbGFyZ2Ugc2l6ZSBjb3VsZCB0cmlnZ2VyCisgICAgICBhbiBvdXQtb2YtYm91
bmRzIHJlYWQgaW4gdGhlIE9wdXMgcGFja2V0IHBhcnNpbmcgY29kZSByZXNwb25zaWJsZSBmb3Ig
cGFkZGluZy4KKyAgICAgIFRoaXMgaXMgZHVlIHRvIGFuIGludGVnZXIgb3ZlcmZsb3cgaWYgdGhl
IHNpZ25hbGVkIHBhZGRpbmcgZXhjZWVkcyAyXjMxLTEgYnl0ZXMKKyAgICAgICh0aGUgYWN0dWFs
IHBhY2tldCBtYXkgYmUgc21hbGxlcikuIFRoZSBjb2RlIGNhbiBiZSBmaXhlZCBieSBhcHBseWlu
ZyB0aGUgZm9sbG93aW5nCisgICAgICBjaGFuZ2VzIGF0IGxpbmUgNTk2IG9mIHNyYy9vcHVzX2Rl
Y29kZXIuYzoKKyAgICA8L3Q+Cis8ZmlndXJlPgorPGFydHdvcms+PCFbQ0RBVEFbCis8Q09ERSBC
RUdJTlM+CisgICAgICAgLyogUGFkZGluZyBmbGFnIGlzIGJpdCA2ICovCisgICAgICAgaWYgKGNo
JjB4NDApCisgICAgICAgeworLSAgICAgICAgIGludCBwYWRkaW5nPTA7CisgICAgICAgICAgaW50
IHA7CisgICAgICAgICAgZG8geworICAgICAgICAgICAgIGlmIChsZW48PTApCisgICAgICAgICAg
ICAgICAgcmV0dXJuIE9QVVNfSU5WQUxJRF9QQUNLRVQ7CisgICAgICAgICAgICAgcCA9ICpkYXRh
Kys7CisgICAgICAgICAgICAgbGVuLS07CistICAgICAgICAgICAgcGFkZGluZyArPSBwPT0yNTUg
PyAyNTQ6IHA7CisrICAgICAgICAgICAgbGVuIC09IHA9PTI1NSA/IDI1NDogcDsKKyAgICAgICAg
ICB9IHdoaWxlIChwPT0yNTUpOworLSAgICAgICAgIGxlbiAtPSBwYWRkaW5nOworICAgICAgIH0K
KzxDT0RFIEVORFM+CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyAgICAgIDx0PlRoaXMgcGFj
a2V0IHBhcnNpbmcgaXNzdWUgaXMgbGltaXRlZCB0byByZWFkaW5nIG1lbW9yeSB1cAorICAgICAg
ICAgdG8gYWJvdXQgNjAga0IgYmV5b25kIHRoZSBjb21wcmVzc2VkIGJ1ZmZlci4gVGhpcyBjYW4g
b25seSBiZSB0cmlnZ2VyZWQKKyAgICAgICAgIGJ5IGEgY29tcHJlc3NlZCBwYWNrZXQgbW9yZSB0
aGFuIGFib3V0IDE2IE1CIGxvbmcsIHNvIGl0J3Mgbm90IGEgcHJvYmxlbQorICAgICAgICAgZm9y
IFJUUC4gSW4gdGhlb3J5LCBpdCBjb3VsZCBjcmFzaCBhIGZpbGUKKyAgICAgICAgIGRlY29kZXIg
KGUuZy4gT3B1cyBpbiBPZ2cpIGlmIHRoZSBtZW1vcnkganVzdCBhZnRlciB0aGUgaW5jb21pbmcg
cGFja2V0CisgICAgICAgICBpcyBvdXQtb2YtcmFuZ2UsIGJ1dCBvdXIgYXR0ZW1wdHMgdG8gdHJp
Z2dlciBzdWNoIGEgY3Jhc2ggaW4gYSBwcm9kdWN0aW9uCisgICAgICAgICBhcHBsaWNhdGlvbiBi
dWlsdCB1c2luZyBhbiBhZmZlY3RlZCB2ZXJzaW9uIG9mIHRoZSBPcHVzIGRlY29kZXIgZmFpbGVk
LjwvdD4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiBhbmNob3I9InJlc2FtcGxlciIg
dGl0bGU9IlJlc2FtcGxlciBidWZmZXIiPgorICAgICAgPHQ+VGhlIFNJTEsgcmVzYW1wbGVyIGhh
ZCB0aGUgZm9sbG93aW5nIGlzc3VlczoKKyAgICAgICAgPGxpc3Qgc3R5bGU9Im51bWJlcnMiPgor
ICAgIDx0PlRoZSBjYWxscyB0byBtZW1jcHkoKSB3ZXJlIHVzaW5nIHNpemVvZihvcHVzX2ludDMy
KSwgYnV0IHRoZSB0eXBlIG9mIHRoZQorICAgICAgICBsb2NhbCBidWZmZXIgd2FzIG9wdXNfaW50
MTYuPC90PgorICAgIDx0PkJlY2F1c2UgdGhlIHNpemUgd2FzIHdyb25nLCB0aGlzIHBvdGVudGlh
bGx5IGFsbG93ZWQgdGhlIHNvdXJjZQorICAgICAgICBhbmQgZGVzdGluYXRpb24gcmVnaW9ucyBv
ZiB0aGUgbWVtY3B5KCkgdG8gb3ZlcmxhcC4KKyAgICAgICAgICBXZSBiZWxpZXZlIHRoYXQgblNh
bXBsZXNJbiAobnVtYmVyIG9mIGlucHV0IHNhbXBsZXMpIGlzIGF0IGxlYXN0IGZzX2luX2toWiAo
c2FtcGxpbmcgcmF0ZSBpbiBrSHopLAorICAgICAgICAgIHdoaWNoIGlzIGF0IGxlYXN0IDguCisg
ICAgICAgU2luY2UgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiBpcyBvbmx5IDgsIHRoYXQgc2hvdWxk
IG5vdCBiZSBhIHByb2JsZW0gb25jZQorICAgICAgIHRoZSB0eXBlIHNpemUgaXMgZml4ZWQuPC90
PgorICAgICAgICAgIDx0PlRoZSBzaXplIG9mIHRoZSBidWZmZXIgdXNlZCBSRVNBTVBMRVJfTUFY
X0JBVENIX1NJWkVfSU4sIGJ1dCB0aGUKKyAgICAgICAgZGF0YSBzdG9yZWQgaW4gaXQgd2FzIGFj
dHVhbGx5IHR3aWNlIHRoZSBpbnB1dCBiYXRjaCBzaXplCisgICAgICAgIChuU2FtcGxlc0luJmx0
OyZsdDsxKS48L3Q+CisgICAgICA8L2xpc3Q+PC90PgorICAgICAgPHQ+CisgICAgICBUaGUgZmFj
dCB0aGF0IHRoZSBjb2RlIG5ldmVyIHByb2R1Y2VkIGFueSBlcnJvciBpbiB0ZXN0aW5nIChpbmNs
dWRpbmcgd2hlbiBydW4gdW5kZXIgdGhlCisgICAgICBWYWxncmluZCBtZW1vcnkgZGVidWdnZXIp
LCBzdWdnZXN0cyB0aGF0IGluIHByYWN0aWNlCisgICAgIHRoZSBiYXRjaCBzaXplcyBhcmUgcmVh
c29uYWJsZSBlbm91Z2ggdGhhdCBub25lIG9mIHRoZSBpc3N1ZXMgYWJvdmUKKyAgICAgd2FzIGV2
ZXIgYSBwcm9ibGVtLiBIb3dldmVyLCB0aGUgYXV0aG9ycyBrbm93IG9mIG5vIG9idmlvdXMgYXBw
cm9hY2ggdG8gcHJvdmluZyB0aGF0LgorICAgIDwvdD4KKyAgICA8dD5UaGUgY29kZSBjYW4gYmUg
Zml4ZWQgYnkgYXBwbHlpbmcgdGhlIGZvbGxvd2luZyBjaGFuZ2VzIHRvIGxpbmUgNzggb2Ygc2ls
ay9yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSLmM6CisgICAgPC90PgorPGZpZ3VyZT4KKzxhcnR3
b3JrPjwhW0NEQVRBWworPENPREUgQkVHSU5TPgorICkKKyB7CisgICAgIHNpbGtfcmVzYW1wbGVy
X3N0YXRlX3N0cnVjdCAqUyA9IFwKKyhzaWxrX3Jlc2FtcGxlcl9zdGF0ZV9zdHJ1Y3QgKilTUzsK
KyAgICAgb3B1c19pbnQzMiBuU2FtcGxlc0luOworICAgICBvcHVzX2ludDMyIG1heF9pbmRleF9R
MTYsIGluZGV4X2luY3JlbWVudF9RMTY7CistICAgIG9wdXNfaW50MTYgYnVmWyBSRVNBTVBMRVJf
TUFYX0JBVENIX1NJWkVfSU4gKyBcCitSRVNBTVBMRVJfT1JERVJfRklSXzEyIF07CisrICAgIG9w
dXNfaW50MTYgYnVmWyAyKlJFU0FNUExFUl9NQVhfQkFUQ0hfU0laRV9JTiArIFwKK1JFU0FNUExF
Ul9PUkRFUl9GSVJfMTIgXTsKKyAKKyAgICAgLyogQ29weSBidWZmZXJlZCBzYW1wbGVzIHRvIHN0
YXJ0IG9mIGJ1ZmZlciAqLworLSAgICBzaWxrX21lbWNweSggYnVmLCBTLT5zRklSLCBSRVNBTVBM
RVJfT1JERVJfRklSXzEyIFwKKyogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKKysgICAgc2lsa19t
ZW1jcHkoIGJ1ZiwgUy0+c0ZJUiwgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiBcCisqIHNpemVvZigg
b3B1c19pbnQxNiApICk7CisgCisgICAgIC8qIEl0ZXJhdGUgb3ZlciBibG9ja3Mgb2YgZnJhbWVT
aXplSW4gaW5wdXQgc2FtcGxlcyAqLworICAgICBpbmRleF9pbmNyZW1lbnRfUTE2ID0gUy0+aW52
UmF0aW9fUTE2OworICAgICB3aGlsZSggMSApIHsKKyAgICAgICAgIG5TYW1wbGVzSW4gPSBzaWxr
X21pbiggaW5MZW4sIFMtPmJhdGNoU2l6ZSApOworIAorICAgICAgICAgLyogVXBzYW1wbGUgMngg
Ki8KKyAgICAgICAgIHNpbGtfcmVzYW1wbGVyX3ByaXZhdGVfdXAyX0hRKCBTLT5zSUlSLCAmYnVm
WyBcCitSRVNBTVBMRVJfT1JERVJfRklSXzEyIF0sIGluLCBuU2FtcGxlc0luICk7CisgCisgICAg
ICAgICBtYXhfaW5kZXhfUTE2ID0gc2lsa19MU0hJRlQzMiggblNhbXBsZXNJbiwgMTYgKyAxIFwK
Kyk7ICAgICAgICAgLyogKyAxIGJlY2F1c2UgMnggdXBzYW1wbGluZyAqLworICAgICAgICAgb3V0
ID0gc2lsa19yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSX0lOVEVSUE9MKCBvdXQsIFwKK2J1Ziwg
bWF4X2luZGV4X1ExNiwgaW5kZXhfaW5jcmVtZW50X1ExNiApOworICAgICAgICAgaW4gKz0gblNh
bXBsZXNJbjsKKyAgICAgICAgIGluTGVuIC09IG5TYW1wbGVzSW47CisgCisgICAgICAgICBpZigg
aW5MZW4gPiAwICkgeworICAgICAgICAgICAgIC8qIE1vcmUgaXRlcmF0aW9ucyB0byBkbzsgY29w
eSBsYXN0IHBhcnQgb2YgXAorZmlsdGVyZWQgc2lnbmFsIHRvIGJlZ2lubmluZyBvZiBidWZmZXIg
Ki8KKy0gICAgICAgICAgICBzaWxrX21lbWNweSggYnVmLCAmYnVmWyBuU2FtcGxlc0luIDw8IDEg
XSwgXAorUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQzMiApICk7Cisr
ICAgICAgICAgICAgc2lsa19tZW1tb3ZlKCBidWYsICZidWZbIG5TYW1wbGVzSW4gPDwgMSBdLCBc
CitSRVNBTVBMRVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKKyAgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICB9CisgICAgIH0KKyAK
KyAgICAgLyogQ29weSBsYXN0IHBhcnQgb2YgZmlsdGVyZWQgc2lnbmFsIHRvIHRoZSBzdGF0ZSBm
b3IgXAordGhlIG5leHQgY2FsbCAqLworLSAgICBzaWxrX21lbWNweSggUy0+c0ZJUiwgJmJ1Zlsg
blNhbXBsZXNJbiA8PCAxIF0sIFwKK1JFU0FNUExFUl9PUkRFUl9GSVJfMTIgKiBzaXplb2YoIG9w
dXNfaW50MzIgKSApOworKyAgICBzaWxrX21lbWNweSggUy0+c0ZJUiwgJmJ1ZlsgblNhbXBsZXNJ
biA8PCAxIF0sIFwKK1JFU0FNUExFUl9PUkRFUl9GSVJfMTIgKiBzaXplb2YoIG9wdXNfaW50MTYg
KSApOworIH0KKzxDT0RFIEVORFM+CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyAgICA8L3Nl
Y3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0iSW50ZWdlciB3cmFwLWFyb3VuZCBpbiBpbnZl
cnNlIGdhaW4gY29tcHV0YXRpb24iPgorICAgICAgPHQ+CisgICAgICAgIEl0IHdhcyBkaXNjb3Zl
cmVkIHRocm91Z2ggZGVjb2RlciBmdXp6aW5nIHRoYXQgc29tZSBiaXRzdHJlYW1zIGNvdWxkIHBy
b2R1Y2UKKyAgICAgICAgaW50ZWdlciB2YWx1ZXMgZXhjZWVkaW5nIDMyLWJpdHMgaW4gTFBDX2lu
dmVyc2VfcHJlZF9nYWluX1FBKCksIGNhdXNpbmcKKyAgICAgICAgYSB3cmFwLWFyb3VuZC4gQWx0
aG91Z2ggdGhlIGVycm9yIGlzIGhhcm1sZXNzIGluIHByYWN0aWNlLCB0aGUgQyBzdGFuZGFyZCBj
b25zaWRlcnMKKyAgICAgICAgdGhlIGJlaGF2aW9yIGFzIHVuZGVmaW5lZCwgc28gdGhlIGZvbGxv
d2luZyBwYXRjaCB0byBsaW5lIDg3IG9mIHNpbGsvTFBDX2ludl9wcmVkX2dhaW4uYworICAgICAg
ICBkZXRlY3RzIHZhbHVlcyB0aGF0IGRvIG5vdCBmaXQgaW4gYSAzMi1iaXQgaW50ZWdlciBhbmQg
Y29uc2lkZXJzIHRoZSBjb3JyZXNwb25kaW5nIGZpbHRlcnMgdW5zdGFibGU6CisgICAgICA8L3Q+
Cis8ZmlndXJlPgorPGFydHdvcms+PCFbQ0RBVEFbCis8Q09ERSBCRUdJTlM+CisgICAgICAgICAv
KiBVcGRhdGUgQVIgY29lZmZpY2llbnQgKi8KKyAgICAgICAgIGZvciggbiA9IDA7IG4gPCBrOyBu
KysgKSB7CistICAgICAgICAgICAgdG1wX1FBID0gQW9sZF9RQVsgbiBdIC0gTVVMMzJfRlJBQ19R
KCBcCitBb2xkX1FBWyBrIC0gbiAtIDEgXSwgcmNfUTMxLCAzMSApOworLSAgICAgICAgICAgIEFu
ZXdfUUFbIG4gXSA9IE1VTDMyX0ZSQUNfUSggdG1wX1FBLCByY19tdWx0MiAsIG11bHQyUSApOwor
KyAgICAgICAgICAgIG9wdXNfaW50NjQgdG1wNjQ7CisrICAgICAgICAgICAgdG1wX1FBID0gc2ls
a19TVUJfU0FUMzIoIEFvbGRfUUFbIG4gXSwgTVVMMzJfRlJBQ19RKCBcCitBb2xkX1FBWyBrIC0g
biAtIDEgXSwgcmNfUTMxLCAzMSApICk7CisrICAgICAgICAgICAgdG1wNjQgPSBzaWxrX1JTSElG
VF9ST1VORDY0KCBzaWxrX1NNVUxMKCB0bXBfUUEsIFwKK3JjX211bHQyICksIG11bHQyUSk7Cisr
ICAgICAgICAgICAgaWYoIHRtcDY0ID4gc2lsa19pbnQzMl9NQVggfHwgdG1wNjQgPCBzaWxrX2lu
dDMyX01JTiApIHsKKysgICAgICAgICAgICAgICByZXR1cm4gMDsKKysgICAgICAgICAgICB9Cisr
ICAgICAgICAgICAgQW5ld19RQVsgbiBdID0gKCBvcHVzX2ludDMyICl0bXA2NDsKKyAgICAgICAg
IH0KKzxDT0RFIEVORFM+CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyAgICA8L3NlY3Rpb24+
CisKKyAgICA8c2VjdGlvbiB0aXRsZT0iSW50ZWdlciB3cmFwLWFyb3VuZCBpbiBMU0YgZGVjb2Rp
bmciIGFuY2hvcj0ibHNmX292ZXJmbG93Ij4KKyAgICAgIDx0PgorICAgICAgICBJdCB3YXMgZGlz
Y292ZXJlZCAtLSBhbHNvIGZyb20gZGVjb2RlciBmdXp6aW5nIC0tIHRoYXQgYW4gaW50ZWdlciB3
cmFwLWFyb3VuZCBjb3VsZAorICAgICAgICBvY2N1ciB3aGVuIGRlY29kaW5nIGxpbmUgc3BlY3Ry
YWwgZnJlcXVlbmN5IGNvZWZmaWNpZW50cyBmcm9tIGV4dHJlbWUgYml0c3RyZWFtcy4KKyAgICAg
ICAgVGhlIGVuZCByZXN1bHQgb2YgdGhlIHdyYXAtYXJvdW5kIGlzIGFuIGlsbGVnYWwgcmVhZCBh
Y2Nlc3Mgb24gdGhlIHN0YWNrLCB3aGljaAorICAgICAgICB0aGUgYXV0aG9ycyBkbyBub3QgYmVs
aWV2ZSBpcyBleHBsb2l0YWJsZSBidXQgc2hvdWxkIG5vbmV0aGVsZXNzIGJlIGZpeGVkLiBUaGUg
Zm9sbG93aW5nCisgICAgICAgIHBhdGNoIHRvIGxpbmUgMTM3IG9mIHNpbGsvTkxTRl9zdGFiaWxp
emUuYyBwcmV2ZW50cyB0aGUgcHJvYmxlbToKKyAgICAgIDwvdD4KKzxmaWd1cmU+Cis8YXJ0d29y
az48IVtDREFUQVsKKzxDT0RFIEJFR0lOUz4KKyAgICAgICAgICAgLyogS2VlcCBkZWx0YV9taW4g
ZGlzdGFuY2UgYmV0d2VlbiB0aGUgTkxTRnMgKi8KKyAgICAgICAgIGZvciggaSA9IDE7IGkgPCBM
OyBpKysgKQorLSAgICAgICAgICAgIE5MU0ZfUTE1W2ldID0gc2lsa19tYXhfaW50KCBOTFNGX1Ex
NVtpXSwgXAorTkxTRl9RMTVbaS0xXSArIE5EZWx0YU1pbl9RMTVbaV0gKTsKKysgICAgICAgICAg
ICBOTFNGX1ExNVtpXSA9IHNpbGtfbWF4X2ludCggTkxTRl9RMTVbaV0sIFwKK3NpbGtfQUREX1NB
VDE2KCBOTFNGX1ExNVtpLTFdLCBORGVsdGFNaW5fUTE1W2ldICkgKTsKKyAKKyAgICAgICAgIC8q
IExhc3QgTkxTRiBzaG91bGQgYmUgbm8gaGlnaGVyIHRoYW4gMSAtIE5EZWx0YU1pbltMXSAqLwor
PENPREUgRU5EUz4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCisgICAgPC9zZWN0aW9uPgor
CisgICAgPHNlY3Rpb24gdGl0bGU9IkNhcCBvbiBCYW5kIEVuZXJneSI+CisgICAgICA8dD5PbiBl
eHRyZW1lIGJpdC1zdHJlYW1zLCBpdCBpcyBwb3NzaWJsZSBmb3IgbG9nLWRvbWFpbiBiYW5kIGVu
ZXJneSBsZXZlbHMKKyAgICAgICAgdG8gZXhjZWVkIHRoZSBtYXhpbXVtIHNpbmdsZS1wcmVjaXNp
b24gZmxvYXRpbmcgcG9pbnQgdmFsdWUgb25jZSBjb252ZXJ0ZWQKKyAgICAgICAgdG8gYSBsaW5l
YXIgc2NhbGUuIFRoaXMgd291bGQgbGF0ZXIgY2F1c2UgdGhlIGRlY29kZWQgdmFsdWVzIHRvIGJl
IE5hTiAobm90IGEgbnVtYmVyKSwKKyAgICAgICAgcG9zc2libHkgY2F1c2luZyBwcm9ibGVtcyBp
biB0aGUgc29mdHdhcmUgdXNpbmcgdGhlIFBDTSB2YWx1ZXMuIFRoaXMgY2FuIGJlCisgICAgICAg
IGF2b2lkZWQgd2l0aCB0aGUgZm9sbG93aW5nIHBhdGNoIHRvIGxpbmUgNTUyIG9mIGNlbHQvcXVh
bnRfYmFuZHMuYzoKKyAgICAgIDwvdD4KKzxmaWd1cmU+Cis8YXJ0d29yaz48IVtDREFUQVsKKzxD
T0RFIEJFR0lOUz4KKyAgICAgICB7CisgICAgICAgICAgb3B1c192YWwxNiBsZyA9IEFERDE2KG9s
ZEVCYW5kc1tpK2MqbS0+bmJFQmFuZHNdLAorICAgICAgICAgICAgICAgICAgICAgICAgICBTSEwx
Nigob3B1c192YWwxNillTWVhbnNbaV0sNikpOworKyAgICAgICAgIGxnID0gTUlOMzIoUUNPTlNU
MzIoMzIuZiwgMTYpLCBsZyk7CisgICAgICAgICAgZUJhbmRzW2krYyptLT5uYkVCYW5kc10gPSBQ
U0hSMzIoY2VsdF9leHAyKGxnKSw0KTsKKyAgICAgICB9CisgICAgICAgZm9yICg7aTxtLT5uYkVC
YW5kcztpKyspCis8Q09ERSBFTkRTPgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisgICAgPC9z
ZWN0aW9uPgorCisgICAgPHNlY3Rpb24gdGl0bGU9Ikh5YnJpZCBGb2xkaW5nIiBhbmNob3I9ImZv
bGRpbmciPgorICAgICAgPHQ+V2hlbiBlbmNvZGluZyBpbiBoeWJyaWQgbW9kZSBhdCBsb3cgYml0
cmF0ZSwgd2Ugc29tZXRpbWVzIG9ubHkgaGF2ZQorICAgICAgICBlbm91Z2ggYml0cyB0byBjb2Rl
IGEgc2luZ2xlIENFTFQgYmFuZCAoOCAtIDkuNiBrSHopLiBXaGVuIHRoYXQgaGFwcGVucywKKyAg
ICAgICAgdGhlIHNlY29uZCBiYW5kIChDRUxUIGJhbmQgMTgsIGZyb20gOS42IHRvIDEyIGtIeikg
Y2Fubm90IHVzZSBmb2xkaW5nCisgICAgICAgIGJlY2F1c2UgaXQgaXMgd2lkZXIgdGhhbiB0aGUg
YW1vdW50IGFscmVhZHkgY29kZWQsIGFuZCBmYWxscyBiYWNrIHRvCisgICAgICAgIHdoaXRlIG5v
aXNlLiBCZWNhdXNlIGl0IGNhbiBhbHNvIGhhcHBlbiBvbiB0cmFuc2llbnRzIChlLmcuIHN0b3Bz
KSwgaXQKKyAgICAgICAgY2FuIGNhdXNlIGF1ZGlibGUgcHJlLWVjaG8uCisgICAgICA8L3Q+Cisg
ICAgICA8dD4KKyAgICAgICAgVG8gYWRkcmVzcyB0aGUgaXNzdWUsIHdlIGNoYW5nZSB0aGUgZm9s
ZGluZyBiZWhhdmlvciBzbyB0aGF0IGl0IGlzCisgICAgICAgIG5ldmVyIGZvcmNlZCB0byBmYWxs
IGJhY2sgdG8gTENHIGR1ZSB0byB0aGUgZmlyc3QgYmFuZCBub3QgY29udGFpbmluZworICAgICAg
ICBlbm91Z2ggY29lZmZpY2llbnRzIHRvIGZvbGQgb250byB0aGUgc2Vjb25kIGJhbmQuIFRoaXMK
KyAgICAgICAgaXMgYWNoaWV2ZWQgYnkgc2ltcGx5IHJlcGVhdGluZyBwYXJ0IG9mIHRoZSBmaXJz
dCBiYW5kIGluIHRoZSBmb2xkaW5nCisgICAgICAgIG9mIHRoZSBzZWNvbmQgYmFuZC4gVGhpcyBj
aGFuZ2VzIHRoZSBjb2RlIGluIGNlbHQvYmFuZHMuYyBhcm91bmQgbGluZSAxMjM3OgorICAgICAg
PC90PgorPGZpZ3VyZT4KKzxhcnR3b3JrPjwhW0NEQVRBWworPENPREUgQkVHSU5TPgorICAgICAg
ICAgIGIgPSAwOworICAgICAgIH0KKyAKKy0gICAgICBpZiAocmVzeW50aCAmJiBNKmVCYW5kc1tp
XS1OID49IE0qZUJhbmRzW3N0YXJ0XSAmJiBcCisodXBkYXRlX2xvd2JhbmQgfHwgbG93YmFuZF9v
ZmZzZXQ9PTApKQorKyAgICAgIGlmIChyZXN5bnRoICYmIChNKmVCYW5kc1tpXS1OID49IE0qZUJh
bmRzW3N0YXJ0XSB8fCBcCitpPT1zdGFydCsxKSAmJiAodXBkYXRlX2xvd2JhbmQgfHwgbG93YmFu
ZF9vZmZzZXQ9PTApKQorICAgICAgICAgICAgIGxvd2JhbmRfb2Zmc2V0ID0gaTsKKyAKKysgICAg
ICBpZiAoaSA9PSBzdGFydCsxKQorKyAgICAgIHsKKysgICAgICAgICBpbnQgbjEsIG4yOworKyAg
ICAgICAgIGludCBvZmZzZXQ7CisrICAgICAgICAgbjEgPSBNKihlQmFuZHNbc3RhcnQrMV0tZUJh
bmRzW3N0YXJ0XSk7CisrICAgICAgICAgbjIgPSBNKihlQmFuZHNbc3RhcnQrMl0tZUJhbmRzW3N0
YXJ0KzFdKTsKKysgICAgICAgICBvZmZzZXQgPSBNKmVCYW5kc1tzdGFydF07CisrICAgICAgICAg
LyogRHVwbGljYXRlIGVub3VnaCBvZiB0aGUgZmlyc3QgYmFuZCBmb2xkaW5nIGRhdGEgdG8gXAor
YmUgYWJsZSB0byBmb2xkIHRoZSBzZWNvbmQgYmFuZC4KKysgICAgICAgICAgICBDb3BpZXMgbm8g
ZGF0YSBmb3IgQ0VMVC1vbmx5IG1vZGUuICovCisrICAgICAgICAgT1BVU19DT1BZKCZub3JtW29m
ZnNldCtuMV0sICZub3JtW29mZnNldCsyKm4xIC0gbjJdLCBuMi1uMSk7CisrICAgICAgICAgaWYg
KEM9PTIpCisrICAgICAgICAgICAgT1BVU19DT1BZKCZub3JtMltvZmZzZXQrbjFdLCAmbm9ybTJb
b2Zmc2V0KzIqbjEgLSBuMl0sIFwKK24yLW4xKTsKKysgICAgICB9CisrCisgICAgICAgdGZfY2hh
bmdlID0gdGZfcmVzW2ldOworICAgICAgIGlmIChpPj1tLT5lZmZFQmFuZHMpCisgICAgICAgewor
PENPREUgRU5EUz4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCisgICAgICA8dD4KKyAgICAg
ICBhcyB3ZWxsIGFzIGxpbmUgMTI2MDoKKyAgICAgIDwvdD4KKworPGZpZ3VyZT4KKzxhcnR3b3Jr
PjwhW0NEQVRBWworPENPREUgQkVHSU5TPgorICAgICAgICAgIGZvbGRfc3RhcnQgPSBsb3diYW5k
X29mZnNldDsKKyAgICAgICAgICB3aGlsZShNKmVCYW5kc1stLWZvbGRfc3RhcnRdID4gZWZmZWN0
aXZlX2xvd2JhbmQpOworICAgICAgICAgIGZvbGRfZW5kID0gbG93YmFuZF9vZmZzZXQtMTsKKy0g
ICAgICAgICB3aGlsZShNKmVCYW5kc1srK2ZvbGRfZW5kXSA8IGVmZmVjdGl2ZV9sb3diYW5kK04p
OworKyAgICAgICAgIHdoaWxlKCsrZm9sZF9lbmQgPCBpICYmIE0qZUJhbmRzW2ZvbGRfZW5kXSA8
IFwKK2VmZmVjdGl2ZV9sb3diYW5kK04pOworICAgICAgICAgIHhfY20gPSB5X2NtID0gMDsKKyAg
ICAgICAgICBmb2xkX2kgPSBmb2xkX3N0YXJ0OyBkbyB7CisgICAgICAgICAgICB4X2NtIHw9IGNv
bGxhcHNlX21hc2tzW2ZvbGRfaSpDKzBdOworCis8Q09ERSBFTkRTPgorXV0+PC9hcnR3b3JrPgor
PC9maWd1cmU+CisgICAgICA8dD4KKyAgICAgICAgVGhlIGZpeCBkb2VzIG5vdCBpbXBhY3QgY29t
cGF0aWJpbGl0eSwgYmVjYXVzZSB0aGUgaW1wcm92ZW1lbnQgZG9lcworICAgICAgICBub3QgZGVw
ZW5kIG9uIHRoZSBlbmNvZGVyIGRvaW5nIGFueXRoaW5nIHNwZWNpYWwuIFRoZXJlIGlzIGFsc28g
bm8KKyAgICAgICAgcmVhc29uYWJsZSB3YXkgZm9yIGFuIGVuY29kZXIgdG8gdXNlIHRoZSBvcmln
aW5hbCBiZWhhdmlvciB0bworICAgICAgICBpbXByb3ZlIHF1YWxpdHkgb3ZlciB0aGUgcHJvcG9z
ZWQgY2hhbmdlLgorICAgICAgPC90PgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIHRp
dGxlPSJEb3dubWl4IHRvIE1vbm8iIGFuY2hvcj0ic3RlcmVvIj4KKyAgICAgIDx0PlRoZSBsYXN0
IGlzc3VlIGlzIG5vdCBzdHJpY3RseSBhIGJ1ZywgYnV0IGl0IGlzIGFuIGlzc3VlIHRoYXQgaGFz
IGJlZW4gcmVwb3J0ZWQKKyAgICAgIHdoZW4gZG93bm1peGluZyBhbiBPcHVzIGRlY29kZWQgc3Ry
ZWFtIHRvIG1vbm8sIHdoZXRoZXIgdGhpcyBpcyBkb25lIGluc2lkZSB0aGUgZGVjb2RlcgorICAg
ICAgb3IgYXMgYSBwb3N0LXByb2Nlc3Npbmcgc3RlcCBvbiB0aGUgc3RlcmVvIGRlY29kZXIgb3V0
cHV0LiBPcHVzIGludGVuc2l0eSBzdGVyZW8gYWxsb3dzCisgICAgICBvcHRpb25hbGx5IGNvZGlu
ZyB0aGUgdHdvIGNoYW5uZWxzIDE4MC1kZWdyZWVzIG91dCBvZiBwaGFzZSBvbiBhIHBlci1iYW5k
IGJhc2lzLgorICAgICAgVGhpcyBwcm92aWRlcyBiZXR0ZXIgc3RlcmVvIHF1YWxpdHkgdGhhbiBm
b3JjaW5nIHRoZSB0d28gY2hhbm5lbHMgdG8gYmUgaW4gcGhhc2UsCisgICAgICBidXQgd2hlbiB0
aGUgb3V0cHV0IGlzIGRvd25taXhlZCB0byBtb25vLCB0aGUgZW5lcmd5IGluIHRoZSBhZmZlY3Rl
ZCBiYW5kcyBpcyBjYW5jZWxsZWQKKyAgICAgIHNvbWV0aW1lcyByZXN1bHRpbmcgaW4gYXVkaWJs
ZSBhcnRlZmFjdHMuCisgICAgICA8L3Q+CisgICAgICA8dD5BcyBhIHdvcmstYXJvdW5kIGZvciB0
aGlzIGlzc3VlLCB0aGUgZGVjb2RlciBNQVkgY2hvb3NlIG5vdCB0byBhcHBseSB0aGUgMTgwLWRl
Z3JlZQorICAgICAgcGhhc2Ugc2hpZnQgd2hlbiB0aGUgb3V0cHV0IGlzIG1lYW50IHRvIGJlIGRv
d25taXhlZCAoaW5zaWRlIG9yCisgICAgICBvdXRzaWRlIG9mIHRoZSBkZWNvZGVyKS4KKyAgICAg
IDwvdD4KKyAgICA8L3NlY3Rpb24+CisKKworICAgIDxzZWN0aW9uIHRpdGxlPSJOZXcgVGVzdCBW
ZWN0b3JzIj4KKyAgICAgIDx0PkNoYW5nZXMgaW4gPHhyZWYgdGFyZ2V0PSJmb2xkaW5nIi8+IGFu
ZCA8eHJlZiB0YXJnZXQ9InN0ZXJlbyIvPiBoYXZlCisgICAgICAgIHN1ZmZpY2llbnQgaW1wYWN0
IG9uIHRoZSB0ZXN0dmVjdG9ycyB0byBtYWtlIHRoZW0gZmFpbC4gRm9yIHRoaXMgcmVhc29uLAor
ICAgICAgICB0aGlzIGRvY3VtZW50IGFsc28gdXBkYXRlcyB0aGUgT3B1cyB0ZXN0IHZlY3RvcnMu
IFRoZSBuZXcgdGVzdCB2ZWN0b3JzIG5vdworICAgICAgICBpbmNsdWRlIHR3byBkZWNvZGVkIG91
dHB1dHMgZm9yIHRoZSBzYW1lIGJpdHN0cmVhbS4gVGhlIG91dHB1dHMgd2l0aAorICAgICAgICBz
dWZmaXggJ20nIGRvIG5vdCBhcHBseSB0aGUgQ0VMVCAxODAtZGVncmVlIHBoYXNlIHNoaWZ0IGFz
IGFsbG93ZWQgaW4KKyAgICAgICAgPHhyZWYgdGFyZ2V0PSJzdGVyZW8iLz4sIHdoaWxlIHRoZSBv
dXRwdXRzIHdpdGhvdXQgdGhlIHN1ZmZpeCBkby4gQW4KKyAgICAgICAgaW1wbGVtZW50YXRpb24g
aXMgY29tcGxpYW50IGFzIGxvbmcgYXMgaXQgcGFzc2VzIGVpdGhlciBzZXQgb2YgdmVjdG9ycy4K
KyAgICAgIDwvdD4KKyAgICAgIDx0PgorICAgICAgICBJbiBhZGRpdGlvbiwgYW55IE9wdXMgaW1w
bGVtZW50YXRpb24KKyAgICAgICAgdGhhdCBwYXNzZXMgdGhlIG9yaWdpbmFsIHRlc3QgdmVjdG9y
cyBmcm9tIDx4cmVmIHRhcmdldD0iUkZDNjcxNiI+UkZDIDY3MTY8L3hyZWY+CisgICAgICAgIGlz
IHN0aWxsIGNvbXBsaWFudCB3aXRoIHRoZSBPcHVzIHNwZWNpZmljYXRpb24uIEhvd2V2ZXIsIG5l
d2VyIGltcGxlbWVudGF0aW9ucworICAgICAgICBTSE9VTEQgYmUgYmFzZWQgb24gdGhlIG5ldyB0
ZXN0IHZlY3RvcnMgcmF0aGVyIHRoYW4gdGhlIG9sZCBvbmVzLgorICAgICAgPC90PgorICAgICAg
PHQ+VGhlIG5ldyB0ZXN0IHZlY3RvcnMgYXJlIGxvY2F0ZWQgYXQKKyAgICAgICAgPGVyZWYgdGFy
Z2V0PSJodHRwczovL3d3dy5pZXRmLm9yZy9wcm9jZWVkaW5ncy85OC9zbGlkZXMvbWF0ZXJpYWxz
LTk4LWNvZGVjLW9wdXMtbmV3dmVjdG9ycy0wMC50YXIuZ3oiLz4uCisgICAgICAgIFRoZSBTSEEx
IGhhc2ggb2YgdGhlIHRlc3QgdmVjdG9ycyBhcmU6Cis8ZmlndXJlPgorPGFydHdvcms+Cis8IVtD
REFUQVsKK2U0OWIyODYyY2VlYzczMjQ3OTBlZDgwMTllYjk3NDQ1OTZkNWJlMDEgIHRlc3R2ZWN0
b3IwMS5iaXQKK2I4MDk3OTVhZTFiY2Q2MDYwNDlkNzZkZTRhZDI0MjM2MjU3MTM1ZTAgIHRlc3R2
ZWN0b3IwMi5iaXQKK2UwYzRlY2FlYWI0NGQzNWEyZjViNjU3NWNkOTk2ODQ4ZTVlZTJhY2MgIHRl
c3R2ZWN0b3IwMy5iaXQKK2EwZjg3MGNiZTE0ZWJiNzFmYTkwNjZlZjNlZTk2ZTU5YzlhNzUxODcg
IHRlc3R2ZWN0b3IwNC5iaXQKKzliM2Q5MmI0OGI5NjVkZmU5ZWRmN2I4YTg1ZWRkNDMwOWY4Y2Y3
YzggIHRlc3R2ZWN0b3IwNS5iaXQKKzI4ZTY2NzY5YWIxN2UxN2Y3Mjg3NTI4M2MxNGIxOTY5MGNi
YzRlNTcgIHRlc3R2ZWN0b3IwNi5iaXQKK2JhY2Y0NjdiZTMyMTVmYzdlYzI4OGYyOWUyNDc3ZGUx
MTkyOTQ3YTYgIHRlc3R2ZWN0b3IwNy5iaXQKK2RkYmUwOGI2ODhiYmY5MzQwNzFmMzg5M2NkMDAz
MGNlNDhkYmExMmYgIHRlc3R2ZWN0b3IwOC5iaXQKKzM5MzJkOWQ2MTk0NGRhYjEyMDE2NDViOGVl
YWFkNTk1ZDU3MDVlY2IgIHRlc3R2ZWN0b3IwOS5iaXQKKzUyMWViMmExZTBjYzljMzFiOGI3NDA2
NzMzMDdjMmQzYjEwYzE5MDAgIHRlc3R2ZWN0b3IxMC5iaXQKKzZiYzhmMzE0NmZjYjk2NDUwYzkw
MWIxNmMzZDQ2NGNjZGY0ZDVkOTYgIHRlc3R2ZWN0b3IxMS5iaXQKKzMzOGMzZjFiNGI5NzIyNmJj
NjBiYzQxMDM4YmVjYmM2ZGUwNmIyOGYgIHRlc3R2ZWN0b3IxMi5iaXQKK2Y1ZWY5Mzg4NGRhNmE4
MTRkMzExMDI3OTE4ZTlhZmM2ZjJlNWMyYzggIHRlc3R2ZWN0b3IwMS5kZWMKKzQ4YWMxZmYxOTk1
MjUwYTc1NmUxZTE3YmQzMmFjZWZhOGNkMmI4MjAgIHRlc3R2ZWN0b3IwMi5kZWMKK2QxNTU2N2U5
MTlkYjJkMGU4MTg3MjcwOTJjMGFmOGRkOWRmMjNjOTUgIHRlc3R2ZWN0b3IwMy5kZWMKKzEyNDlk
ZDI4ZjViZDFlMzlhNjZmZDZkOTk0NDlkY2E3YTgzMTYzNDIgIHRlc3R2ZWN0b3IwNC5kZWMKK2I4
NTY3NWQ4MWRlZWY4NGExMTJjNDY2Y2RmZjNiN2FhYTFkMmZjNzYgIHRlc3R2ZWN0b3IwNS5kZWMK
KzU1ZjBiMTkxZTkwYmZhNmY5OGI1MGQwMWE2NGI0NDI1NWNiNDgxM2UgIHRlc3R2ZWN0b3IwNi5k
ZWMKKzYxZThiMzU3YWIwOTBiMTgwMWVlYjU3OGEyOGE2YWU5MzVlMjViN2IgIHRlc3R2ZWN0b3Iw
Ny5kZWMKK2E1ODUzOWVlNTMyMTQ1M2IyZGRmNGMwZjI1MDBlODU2YjM5NjY4NjIgIHRlc3R2ZWN0
b3IwOC5kZWMKK2JiOTZhYWQyY2RlMTg4NTU1ODYyYjdiYmIzYWY2MTMzODUxZWY4ZjQgIHRlc3R2
ZWN0b3IwOS5kZWMKKzFiNmNkZjA0MTNhYzk5NjViMTYxODRiMWJlYTEyOWI1YzBiMmEzN2EgIHRl
c3R2ZWN0b3IxMC5kZWMKK2IxZmZmNzJiNzQ2NjZlMzAyNzgwMWIyOWRiYzQ4YjMxZjgwZGVlMGQg
IHRlc3R2ZWN0b3IxMS5kZWMKKzk4ZTA5YmJhZmVkMzI5ZTM0MWMzYjQwNTJlOWM0YmE1ZmM4M2Y5
YjEgIHRlc3R2ZWN0b3IxMi5kZWMKKzFlN2Q5ODRlYTNmYmIxNmJhOTk4YWVhNzYxZjQ4OTNmYmRi
MzAxNTcgIHRlc3R2ZWN0b3IwMW0uZGVjCis0OGFjMWZmMTk5NTI1MGE3NTZlMWUxN2JkMzJhY2Vm
YThjZDJiODIwICB0ZXN0dmVjdG9yMDJtLmRlYworZDE1NTY3ZTkxOWRiMmQwZTgxODcyNzA5MmMw
YWY4ZGQ5ZGYyM2M5NSAgdGVzdHZlY3RvcjAzbS5kZWMKKzEyNDlkZDI4ZjViZDFlMzlhNjZmZDZk
OTk0NDlkY2E3YTgzMTYzNDIgIHRlc3R2ZWN0b3IwNG0uZGVjCitkNzBiMGJhZDQzMWU3ZDQ2M2Jj
M2RhNDliZDJkNDlmMWM2ZDBhNTMwICB0ZXN0dmVjdG9yMDVtLmRlYworNmFjMTY0OGMzMTc0Yzk1
ZmFkYTU2NTE2MWE2Yzc4YmRiZTU5Yzc3ZCAgdGVzdHZlY3RvcjA2bS5kZWMKK2ZjNWUyZjcwOTY5
MzczODMyNGZiNGM4YmRjMGRhZDZkZGEwNGU3MTMgIHRlc3R2ZWN0b3IwN20uZGVjCithYWQyYmEz
OTdiZjFiNmExOGU4ZTA5YjUwZTRiMTk2MjdkNDc5ZjAwICB0ZXN0dmVjdG9yMDhtLmRlYworNmZl
YjdhN2I5ZDdjZGMxMzgzYmFmOGQ1NzM5ZTJhNTE0YmQwYmEwOCAgdGVzdHZlY3RvcjA5bS5kZWMK
KzFiNmNkZjA0MTNhYzk5NjViMTYxODRiMWJlYTEyOWI1YzBiMmEzN2EgIHRlc3R2ZWN0b3IxMG0u
ZGVjCitmZDNkM2E3YjBkZmJkYWI5OGQzN2VkOWFhMDRiNjU5YjlmZWZiZDE4ICB0ZXN0dmVjdG9y
MTFtLmRlYworOThlMDliYmFmZWQzMjllMzQxYzNiNDA1MmU5YzRiYTVmYzgzZjliMSAgdGVzdHZl
Y3RvcjEybS5kZWMKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+CisgICAgICBOb3RlIHRoYXQg
dGhlIGRlY29kZXIgaW5wdXQgYml0c3RyZWFtIGZpbGVzICguYml0KSBhcmUgdW5jaGFuZ2VkLgor
ICAgICAgPC90PgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0aW9uIGFuY2hvcj0ic2VjdXJp
dHkiIHRpdGxlPSJTZWN1cml0eSBDb25zaWRlcmF0aW9ucyI+CisgICAgICA8dD5UaGlzIGRvY3Vt
ZW50IGZpeGVzIHR3byBzZWN1cml0eSBpc3N1ZXMgcmVwb3J0ZWQgb24gT3B1cyBhbmQgdGhhdCBh
ZmZlY3QgdGhlCisgICAgICAgIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBpbiA8eHJlZiB0YXJn
ZXQ9IlJGQzY3MTYiPlJGQyA2NzE2PC94cmVmPjogQ1ZFLTIwMTMtMDg5OQorICAgICAgICA8ZXJl
ZiB0YXJnZXQ9Imh0dHBzOi8vbnZkLm5pc3QuZ292L3Z1bG4vZGV0YWlsL0NWRS0yMDEzLTA4OTki
Lz4KKyAgICAgICAgYW5kIENWRS0yMDE3LTAzODEgPGVyZWYgdGFyZ2V0PSJodHRwczovL252ZC5u
aXN0Lmdvdi92dWxuL2RldGFpbC9DVkUtMjAxNy0wMzgxIi8+LgorICAgICAgICBDVkUtMjAxMy0w
ODk5IGlzIGZpeGVkIGJ5IDx4cmVmIHRhcmdldD0icGFkZGluZyIvPiBhbmQKKyAgICAgICAgY291
bGQgdGhlb3JldGljYWxseSBjYXVzZSBpbmZvcm1hdGlvbiBsZWFrLCBidXQgdGhlCisgICAgICAg
IGxlYWtlZCBpbmZvcm1hdGlvbiB3b3VsZCBhdCB0aGUgdmVyeSBsZWFzdCBnbyB0aHJvdWdoIHRo
ZSBkZWNvZGVyIHByb2Nlc3MgYmVmb3JlCisgICAgICAgIGJlaW5nIGFjY2Vzc2libGUgdG8gdGhl
IGF0dGFja2VyLiBBbHNvLCB0aGUgYnVnIGNhbiBvbmx5IGJlIHRyaWdnZXJlZCBieSBPcHVzIHBh
Y2tldHMKKyAgICAgICAgYXQgbGVhc3QgMjQgTUIgaW4gc2l6ZS4gQ1ZFLTIwMTctMDM4MSBpcyBm
aXhlZCBieSA8eHJlZiB0YXJnZXQ9ImxzZl9vdmVyZmxvdyIvPiBhbmQsIGFzIGZhcgorICAgICAg
ICBhcyB0aGUgYXV0aG9ycyBhcmUgYXdhcmUsIGNvdWxkIG5vdCBiZSBleHBsb2l0ZWQgaW4gYW55
IHdheSAoZGVzcGl0ZSB0aGUgY2xhaW1zIGluCisgICAgICAgIHRoZSBDVkUpIHVubGVzcyB0aGUg
cmVhZC1vbmx5IHRhYmxlCisgICAgICAgIHdhcyBzb21laG93IHBsYWNlZCB2ZXJ5IGNsb3NlIHRv
IHNlbnNpdGl2ZSBkYXRhLCB3aGljaCBpcyBoaWdobHkgdW5saWtlbHkuCisgICAgICAgIEJleW9u
ZCB0aGUgdHdvIGZpeGVkIENWRXMsIHRoaXMgZG9jdW1lbnQgYWRkcyBubyBuZXcgc2VjdXJpdHkg
Y29uc2lkZXJhdGlvbnMgb24gdG9wIG9mCisgICAgICAgIDx4cmVmIHRhcmdldD0iUkZDNjcxNiI+
UkZDIDY3MTY8L3hyZWY+LgorICAgICAgPC90PgorICAgIDwvc2VjdGlvbj4KKworICAgIDxzZWN0
aW9uIGFuY2hvcj0iSUFOQSIgdGl0bGU9IklBTkEgQ29uc2lkZXJhdGlvbnMiPgorICAgICAgPHQ+
VGhpcyBkb2N1bWVudCBtYWtlcyBubyByZXF1ZXN0IG9mIElBTkEuPC90PgorCisgICAgICA8dD5O
b3RlIHRvIFJGQyBFZGl0b3I6IHRoaXMgc2VjdGlvbiBtYXkgYmUgcmVtb3ZlZCBvbiBwdWJsaWNh
dGlvbiBhcyBhbgorICAgICAgUkZDLjwvdD4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlv
biBhbmNob3I9IkFja25vd2xlZGdlbWVudHMiIHRpdGxlPSJBY2tub3dsZWRnZW1lbnRzIj4KKyAg
ICAgIDx0PldlIHdvdWxkIGxpa2UgdG8gdGhhbmsgSnVyaSBBZWRsYSBmb3IgcmVwb3J0aW5nIHRo
ZSBpc3N1ZSB3aXRoIHRoZSBwYXJzaW5nIG9mCisgICAgICB0aGUgT3B1cyBwYWRkaW5nLiBUaGFu
a3MgdG8gRmVsaWNpYSBMaW0gZm9yIHJlcG9ydGluZyB0aGUgTFNGIGludGVnZXIgb3ZlcmZsb3cg
aXNzdWUuCisgICAgICBBbHNvLCB0aGFua3MgdG8gVGluYSBsZSBHcmFuZCwgSm9uYXRoYW4gTGVu
bm94LCBhbmQgTWFyayBIYXJyaXMgZm9yIHRoZWlyCisgICAgICBmZWVkYmFjayBvbiB0aGlzIGRv
Y3VtZW50LjwvdD4KKyAgICA8L3NlY3Rpb24+CisgIDwvbWlkZGxlPgorCisgIDxiYWNrPgorICAg
IDxyZWZlcmVuY2VzIHRpdGxlPSJOb3JtYXRpdmUgUmVmZXJlbmNlcyI+CisgICAgICA8P3JmYyBp
bmNsdWRlPSJodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVu
Y2UuUkZDLjIxMTkueG1sIj8+CisgICAgICA8P3JmYyBpbmNsdWRlPSJodHRwOi8veG1sLnJlc291
cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjY3MTYueG1sIj8+CisKKwor
ICAgIDwvcmVmZXJlbmNlcz4KKyAgPC9iYWNrPgorPC9yZmM+CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9kcmFm
dC1pZXRmLWNvZGVjLW9wdXMueG1sIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLnhtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4zMzRjYWQ5N2EyN2Q3ZTdiZjFjZGQwOWY0OTE0Y2I2YTk2YWU0NzExCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLnhtbApAQCAtMCwwICsxLDgyNzYg
QEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04Ij8+Cis8IURPQ1RZUEUgcmZj
IFNZU1RFTSAncmZjMjYyOS5kdGQnPgorPD9yZmMgdG9jPSJ5ZXMiIHN5bXJlZnM9InllcyIgPz4K
KworPHJmYyBpcHI9InRydXN0MjAwOTAyIiBjYXRlZ29yeT0ic3RkIiBkb2NOYW1lPSJkcmFmdC1p
ZXRmLWNvZGVjLW9wdXMtMTQiPgorCis8ZnJvbnQ+Cis8dGl0bGUgYWJicmV2PSJJbnRlcmFjdGl2
ZSBBdWRpbyBDb2RlYyI+RGVmaW5pdGlvbiBvZiB0aGUgT3B1cyBBdWRpbyBDb2RlYzwvdGl0bGU+
CisKKworPGF1dGhvciBpbml0aWFscz0iSk0iIHN1cm5hbWU9IlZhbGluIiBmdWxsbmFtZT0iSmVh
bi1NYXJjIFZhbGluIj4KKzxvcmdhbml6YXRpb24+TW96aWxsYSBDb3Jwb3JhdGlvbjwvb3JnYW5p
emF0aW9uPgorPGFkZHJlc3M+Cis8cG9zdGFsPgorPHN0cmVldD42NTAgQ2FzdHJvIFN0cmVldDwv
c3RyZWV0PgorPGNpdHk+TW91bnRhaW4gVmlldzwvY2l0eT4KKzxyZWdpb24+Q0E8L3JlZ2lvbj4K
Kzxjb2RlPjk0MDQxPC9jb2RlPgorPGNvdW50cnk+VVNBPC9jb3VudHJ5PgorPC9wb3N0YWw+Cis8
cGhvbmU+KzEgNjUwIDkwMy0wODAwPC9waG9uZT4KKzxlbWFpbD5qbXZhbGluQGptdmFsaW4uY2E8
L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisKKzxhdXRob3IgaW5pdGlhbHM9IksuIiBz
dXJuYW1lPSJWb3MiIGZ1bGxuYW1lPSJLb2VuIFZvcyI+Cis8b3JnYW5pemF0aW9uPlNreXBlIFRl
Y2hub2xvZ2llcyBTLkEuPC9vcmdhbml6YXRpb24+Cis8YWRkcmVzcz4KKzxwb3N0YWw+Cis8c3Ry
ZWV0PlNvZGVyIE1hbGFyc3RyYW5kIDQzPC9zdHJlZXQ+Cis8Y2l0eT5TdG9ja2hvbG08L2NpdHk+
Cis8cmVnaW9uPjwvcmVnaW9uPgorPGNvZGU+MTE4MjU8L2NvZGU+Cis8Y291bnRyeT5TRTwvY291
bnRyeT4KKzwvcG9zdGFsPgorPHBob25lPis0NiA3MyAwODUgNzYxOTwvcGhvbmU+Cis8ZW1haWw+
a29lbi52b3NAc2t5cGUubmV0PC9lbWFpbD4KKzwvYWRkcmVzcz4KKzwvYXV0aG9yPgorCis8YXV0
aG9yIGluaXRpYWxzPSJULiIgc3VybmFtZT0iVGVycmliZXJyeSIgZnVsbG5hbWU9IlRpbW90aHkg
Qi4gVGVycmliZXJyeSI+Cis8b3JnYW5pemF0aW9uPk1vemlsbGEgQ29ycG9yYXRpb248L29yZ2Fu
aXphdGlvbj4KKzxhZGRyZXNzPgorPHBvc3RhbD4KKzxzdHJlZXQ+NjUwIENhc3RybyBTdHJlZXQ8
L3N0cmVldD4KKzxjaXR5Pk1vdW50YWluIFZpZXc8L2NpdHk+Cis8cmVnaW9uPkNBPC9yZWdpb24+
Cis8Y29kZT45NDA0MTwvY29kZT4KKzxjb3VudHJ5PlVTQTwvY291bnRyeT4KKzwvcG9zdGFsPgor
PHBob25lPisxIDY1MCA5MDMtMDgwMDwvcGhvbmU+Cis8ZW1haWw+dHRlcnJpYmVycnlAbW96aWxs
YS5jb208L2VtYWlsPgorPC9hZGRyZXNzPgorPC9hdXRob3I+CisKKzxkYXRlIGRheT0iMTciIG1v
bnRoPSJNYXkiIHllYXI9IjIwMTIiIC8+CisKKzxhcmVhPkdlbmVyYWw8L2FyZWE+CisKKzx3b3Jr
Z3JvdXA+PC93b3JrZ3JvdXA+CisKKzxhYnN0cmFjdD4KKzx0PgorVGhpcyBkb2N1bWVudCBkZWZp
bmVzIHRoZSBPcHVzIGludGVyYWN0aXZlIHNwZWVjaCBhbmQgYXVkaW8gY29kZWMuCitPcHVzIGlz
IGRlc2lnbmVkIHRvIGhhbmRsZSBhIHdpZGUgcmFuZ2Ugb2YgaW50ZXJhY3RpdmUgYXVkaW8gYXBw
bGljYXRpb25zLAorIGluY2x1ZGluZyBWb2ljZSBvdmVyIElQLCB2aWRlb2NvbmZlcmVuY2luZywg
aW4tZ2FtZSBjaGF0LCBhbmQgZXZlbiBsaXZlLAorIGRpc3RyaWJ1dGVkIG11c2ljIHBlcmZvcm1h
bmNlcy4KK0l0IHNjYWxlcyBmcm9tIGxvdyBiaXRyYXRlIG5hcnJvd2JhbmQgc3BlZWNoIGF0IDYg
a2IvcyB0byB2ZXJ5IGhpZ2ggcXVhbGl0eQorIHN0ZXJlbyBtdXNpYyBhdCA1MTAga2Ivcy4KK09w
dXMgdXNlcyBib3RoIGxpbmVhciBwcmVkaWN0aW9uIChMUCkgYW5kIHRoZSBNb2RpZmllZCBEaXNj
cmV0ZSBDb3NpbmUKKyBUcmFuc2Zvcm0gKE1EQ1QpIHRvIGFjaGlldmUgZ29vZCBjb21wcmVzc2lv
biBvZiBib3RoIHNwZWVjaCBhbmQgbXVzaWMuCis8L3Q+Cis8L2Fic3RyYWN0PgorPC9mcm9udD4K
KworPG1pZGRsZT4KKworPHNlY3Rpb24gYW5jaG9yPSJpbnRyb2R1Y3Rpb24iIHRpdGxlPSJJbnRy
b2R1Y3Rpb24iPgorPHQ+CitUaGUgT3B1cyBjb2RlYyBpcyBhIHJlYWwtdGltZSBpbnRlcmFjdGl2
ZSBhdWRpbyBjb2RlYyBkZXNpZ25lZCB0byBtZWV0IHRoZSByZXF1aXJlbWVudHMKK2Rlc2NyaWJl
ZCBpbiA8eHJlZiB0YXJnZXQ9InJlcXVpcmVtZW50cyI+PC94cmVmPi4KK0l0IGlzIGNvbXBvc2Vk
IG9mIGEgbGluZWFyCisgcHJlZGljdGlvbiAoTFApLWJhc2VkIDx4cmVmIHRhcmdldD0iTFBDIi8+
IGxheWVyIGFuZCBhIE1vZGlmaWVkIERpc2NyZXRlIENvc2luZSBUcmFuc2Zvcm0KKyAoTURDVCkt
YmFzZWQgPHhyZWYgdGFyZ2V0PSJNRENUIi8+IGxheWVyLgorVGhlIG1haW4gaWRlYSBiZWhpbmQg
dXNpbmcgdHdvIGxheWVycyBpcyB0aGF0IGluIHNwZWVjaCwgbGluZWFyIHByZWRpY3Rpb24KKyB0
ZWNobmlxdWVzIChzdWNoIGFzIENvZGUtRXhjaXRlZCBMaW5lYXIgUHJlZGljdGlvbiwgb3IgQ0VM
UCkgY29kZSBsb3cgZnJlcXVlbmNpZXMgbW9yZSBlZmZpY2llbnRseSB0aGFuIHRyYW5zZm9ybQor
IChlLmcuLCBNRENUKSBkb21haW4gdGVjaG5pcXVlcywgd2hpbGUgdGhlIHNpdHVhdGlvbiBpcyBy
ZXZlcnNlZCBmb3IgbXVzaWMgYW5kCisgaGlnaGVyIHNwZWVjaCBmcmVxdWVuY2llcy4KK1RodXMg
YSBjb2RlYyB3aXRoIGJvdGggbGF5ZXJzIGF2YWlsYWJsZSBjYW4gb3BlcmF0ZSBvdmVyIGEgd2lk
ZXIgcmFuZ2UgdGhhbgorIGVpdGhlciBvbmUgYWxvbmUgYW5kLCBieSBjb21iaW5pbmcgdGhlbSwg
YWNoaWV2ZSBiZXR0ZXIgcXVhbGl0eSB0aGFuIGVpdGhlcgorIG9uZSBpbmRpdmlkdWFsbHkuCis8
L3Q+CisKKzx0PgorVGhlIHByaW1hcnkgbm9ybWF0aXZlIHBhcnQgb2YgdGhpcyBzcGVjaWZpY2F0
aW9uIGlzIHByb3ZpZGVkIGJ5IHRoZSBzb3VyY2UgY29kZQorIGluIDx4cmVmIHRhcmdldD0icmVm
LWltcGxlbWVudGF0aW9uIj48L3hyZWY+LgorT25seSB0aGUgZGVjb2RlciBwb3J0aW9uIG9mIHRo
aXMgc29mdHdhcmUgaXMgbm9ybWF0aXZlLCB0aG91Z2ggYQorIHNpZ25pZmljYW50IGFtb3VudCBv
ZiBjb2RlIGlzIHNoYXJlZCBieSBib3RoIHRoZSBlbmNvZGVyIGFuZCBkZWNvZGVyLgorPHhyZWYg
dGFyZ2V0PSJjb25mb3JtYW5jZSIvPiBwcm92aWRlcyBhIGRlY29kZXIgY29uZm9ybWFuY2UgdGVz
dC4KK1RoZSBkZWNvZGVyIGNvbnRhaW5zIGEgZ3JlYXQgZGVhbCBvZiBpbnRlZ2VyIGFuZCBmaXhl
ZC1wb2ludCBhcml0aG1ldGljIHdoaWNoCisgbmVlZHMgdG8gYmUgcGVyZm9ybWVkIGV4YWN0bHks
IGluY2x1ZGluZyBhbGwgcm91bmRpbmcgY29uc2lkZXJhdGlvbnMsIHNvIGFueQorIHVzZWZ1bCBz
cGVjaWZpY2F0aW9uIHJlcXVpcmVzIGRvbWFpbi1zcGVjaWZpYyBzeW1ib2xpYyBsYW5ndWFnZSB0
byBhZGVxdWF0ZWx5CisgZGVmaW5lIHRoZXNlIG9wZXJhdGlvbnMuCitBZGRpdGlvbmFsbHksIGFu
eQorY29uZmxpY3QgYmV0d2VlbiB0aGUgc3ltYm9saWMgcmVwcmVzZW50YXRpb24gYW5kIHRoZSBp
bmNsdWRlZCByZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uIG11c3QgYmUgcmVzb2x2ZWQuIEZvciB0
aGUgcHJhY3RpY2FsIHJlYXNvbnMgb2YgY29tcGF0aWJpbGl0eSBhbmQKK3Rlc3RhYmlsaXR5IGl0
IHdvdWxkIGJlIGFkdmFudGFnZW91cyB0byBnaXZlIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRp
b24KK3ByaW9yaXR5IGluIGFueSBkaXNhZ3JlZW1lbnQuIFRoZSBDIGxhbmd1YWdlIGlzIGFsc28g
b25lIG9mIHRoZSBtb3N0Cit3aWRlbHkgdW5kZXJzdG9vZCBodW1hbi1yZWFkYWJsZSBzeW1ib2xp
YyByZXByZXNlbnRhdGlvbnMgZm9yIG1hY2hpbmUKK2JlaGF2aW9yLgorRm9yIHRoZXNlIHJlYXNv
bnMgdGhpcyBSRkMgdXNlcyB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGFzIHRoZSBzb2xl
Cisgc3ltYm9saWMgcmVwcmVzZW50YXRpb24gb2YgdGhlIGNvZGVjLgorPC90PgorCis8dD5XaGls
ZSB0aGUgc3ltYm9saWMgcmVwcmVzZW50YXRpb24gaXMgdW5hbWJpZ3VvdXMgYW5kIGNvbXBsZXRl
IGl0IGlzIG5vdAorYWx3YXlzIHRoZSBlYXNpZXN0IHdheSB0byB1bmRlcnN0YW5kIHRoZSBjb2Rl
YydzIG9wZXJhdGlvbi4gRm9yIHRoaXMgcmVhc29uCit0aGlzIGRvY3VtZW50IGFsc28gZGVzY3Jp
YmVzIHNpZ25pZmljYW50IHBhcnRzIG9mIHRoZSBjb2RlYyBpbiBFbmdsaXNoIGFuZAordGFrZXMg
dGhlIG9wcG9ydHVuaXR5IHRvIGV4cGxhaW4gdGhlIHJhdGlvbmFsZSBiZWhpbmQgbWFueSBvZiB0
aGUgbW9yZQorc3VycHJpc2luZyBlbGVtZW50cyBvZiB0aGUgZGVzaWduLiBUaGVzZSBkZXNjcmlw
dGlvbnMgYXJlIGludGVuZGVkIHRvIGJlCithY2N1cmF0ZSBhbmQgaW5mb3JtYXRpdmUsIGJ1dCB0
aGUgbGltaXRhdGlvbnMgb2YgY29tbW9uIEVuZ2xpc2ggc29tZXRpbWVzCityZXN1bHQgaW4gYW1i
aWd1aXR5LCBzbyBpdCBpcyBleHBlY3RlZCB0aGF0IHRoZSByZWFkZXIgd2lsbCBhbHdheXMgcmVh
ZAordGhlbSBhbG9uZ3NpZGUgdGhlIHN5bWJvbGljIHJlcHJlc2VudGF0aW9uLiBOdW1lcm91cyBy
ZWZlcmVuY2VzIHRvIHRoZQoraW1wbGVtZW50YXRpb24gYXJlIHByb3ZpZGVkIGZvciB0aGlzIHB1
cnBvc2UuIFRoZSBkZXNjcmlwdGlvbnMgc29tZXRpbWVzCitkaWZmZXIgZnJvbSB0aGUgcmVmZXJl
bmNlIGluIG9yZGVyaW5nIG9yIHRocm91Z2ggbWF0aGVtYXRpY2FsIHNpbXBsaWZpY2F0aW9uCit3
aGVyZXZlciBzdWNoIGRldmlhdGlvbiBtYWtlcyBhbiBleHBsYW5hdGlvbiBlYXNpZXIgdG8gdW5k
ZXJzdGFuZC4KK0ZvciBleGFtcGxlLCB0aGUgcmlnaHQgc2hpZnQgYW5kIGxlZnQgc2hpZnQgb3Bl
cmF0aW9ucyBpbiB0aGUgcmVmZXJlbmNlCitpbXBsZW1lbnRhdGlvbiBhcmUgb2Z0ZW4gZGVzY3Jp
YmVkIHVzaW5nIGRpdmlzaW9uIGFuZCBtdWx0aXBsaWNhdGlvbiBpbiB0aGUgdGV4dC4KK0luIGdl
bmVyYWwsIHRoZSB0ZXh0IGlzIGZvY3VzZWQgb24gdGhlICJ3aGF0IiBhbmQgIndoeSIgd2hpbGUg
dGhlIHN5bWJvbGljCityZXByZXNlbnRhdGlvbiBtb3N0IGNsZWFybHkgcHJvdmlkZXMgdGhlICJo
b3ciLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9Im5vdGF0aW9uIiB0aXRsZT0iTm90YXRpb24g
YW5kIENvbnZlbnRpb25zIj4KKzx0PgorVGhlIGtleSB3b3JkcyAiTVVTVCIsICJNVVNUIE5PVCIs
ICJSRVFVSVJFRCIsICJTSEFMTCIsICJTSEFMTCBOT1QiLCAiU0hPVUxEIiwKKyAiU0hPVUxEIE5P
VCIsICJSRUNPTU1FTkRFRCIsICJNQVkiLCBhbmQgIk9QVElPTkFMIiBpbiB0aGlzIGRvY3VtZW50
IGFyZSB0byBiZQorIGludGVycHJldGVkIGFzIGRlc2NyaWJlZCBpbiBSRkMgMjExOSA8eHJlZiB0
YXJnZXQ9InJmYzIxMTkiPjwveHJlZj4uCis8L3Q+Cis8dD4KK1ZhcmlvdXMgb3BlcmF0aW9ucyBp
biB0aGUgY29kZWMgcmVxdWlyZSBiaXQtZXhhY3QgZml4ZWQtcG9pbnQgYmVoYXZpb3IsIGV2ZW4K
KyB3aGVuIHdyaXRpbmcgYSBmbG9hdGluZyBwb2ludCBpbXBsZW1lbnRhdGlvbi4KK1RoZSBub3Rh
dGlvbiAiUSZsdDtuJmd0OyIsIHdoZXJlIG4gaXMgYW4gaW50ZWdlciwgZGVub3RlcyB0aGUgbnVt
YmVyIG9mIGJpbmFyeQorIGRpZ2l0cyB0byB0aGUgcmlnaHQgb2YgdGhlIGRlY2ltYWwgcG9pbnQg
aW4gYSBmaXhlZC1wb2ludCBudW1iZXIuCitGb3IgZXhhbXBsZSwgYSBzaWduZWQgUTE0IHZhbHVl
IGluIGEgMTYtYml0IHdvcmQgY2FuIHJlcHJlc2VudCB2YWx1ZXMgZnJvbQorIC0yLjAgdG8gMS45
OTk5Mzg5NjQ4NDM3NSwgaW5jbHVzaXZlLgorVGhpcyBub3RhdGlvbiBpcyBmb3IgaW5mb3JtYXRp
b25hbCBwdXJwb3NlcyBvbmx5LgorQXJpdGhtZXRpYywgd2hlbiBkZXNjcmliZWQsIGFsd2F5cyBv
cGVyYXRlcyBvbiB0aGUgdW5kZXJseWluZyBpbnRlZ2VyLgorRS5nLiwgdGhlIHRleHQgd2lsbCBl
eHBsaWNpdGx5IGluZGljYXRlIGFueSBzaGlmdHMgcmVxdWlyZWQgYWZ0ZXIgYQorIG11bHRpcGxp
Y2F0aW9uLgorPC90PgorPHQ+CitFeHByZXNzaW9ucywgd2hlcmUgaW5jbHVkZWQgaW4gdGhlIHRl
eHQsIGZvbGxvdyBDIG9wZXJhdG9yIHJ1bGVzIGFuZAorIHByZWNlZGVuY2UsIHdpdGggdGhlIGV4
Y2VwdGlvbiB0aGF0IHRoZSBzeW50YXggIngqKnkiIGluZGljYXRlcyB4IHJhaXNlZCB0bworIHRo
ZSBwb3dlciB5LgorVGhlIHRleHQgYWxzbyBtYWtlcyB1c2Ugb2YgdGhlIGZvbGxvd2luZyBmdW5j
dGlvbnM6Cis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0ibWluIiB0b2M9ImV4Y2x1ZGUiIHRpdGxl
PSJtaW4oeCx5KSI+Cis8dD4KK1RoZSBzbWFsbGVzdCBvZiB0d28gdmFsdWVzIHggYW5kIHkuCis8
L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ibWF4IiB0b2M9ImV4Y2x1ZGUiIHRp
dGxlPSJtYXgoeCx5KSI+Cis8dD4KK1RoZSBsYXJnZXN0IG9mIHR3byB2YWx1ZXMgeCBhbmQgeS4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJjbGFtcCIgdG9jPSJleGNsdWRl
IiB0aXRsZT0iY2xhbXAobG8seCxoaSkiPgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworY2xhbXAobG8seCxoaSkgPSBtYXgobG8sbWlu
KHgsaGkpKQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8dD4KK1dpdGggdGhpcyBkZWZpbml0
aW9uLCBpZiBsbyZuYnNwOyZndDsmbmJzcDtoaSwgdGhlIGxvd2VyIGJvdW5kIGlzIHRoZSBvbmUg
dGhhdAorIGlzIGVuZm9yY2VkLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9
InNpZ24iIHRvYz0iZXhjbHVkZSIgdGl0bGU9InNpZ24oeCkiPgorPHQ+CitUaGUgc2lnbiBvZiB4
LCBpLmUuLAorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIi
PjwhW0NEQVRBWworICAgICAgICAgICggLTEsICB4IDwgMCAsCitzaWduKHgpID0gPCAgMCwgIHgg
PT0gMCAsCisgICAgICAgICAgKCAgMSwgIHggPiAwIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImFicyIgdG9jPSJleGNsdWRl
IiB0aXRsZT0iYWJzKHgpIj4KKzx0PgorVGhlIGFic29sdXRlIHZhbHVlIG9mIHgsIGkuZS4sCis8
ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFb
CithYnMoeCkgPSBzaWduKHgpKnggLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8
L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZmxvb3IiIHRvYz0iZXhjbHVkZSIgdGl0bGU9
ImZsb29yKGYpIj4KKzx0PgorVGhlIGxhcmdlc3QgaW50ZWdlciB6IHN1Y2ggdGhhdCB6ICZsdDs9
IGYuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iY2VpbCIgdG9jPSJleGNs
dWRlIiB0aXRsZT0iY2VpbChmKSI+Cis8dD4KK1RoZSBzbWFsbGVzdCBpbnRlZ2VyIHogc3VjaCB0
aGF0IHogJmd0Oz0gZi4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJyb3Vu
ZCIgdG9jPSJleGNsdWRlIiB0aXRsZT0icm91bmQoZikiPgorPHQ+CitUaGUgaW50ZWdlciB6IG5l
YXJlc3QgdG8gZiwgd2l0aCB0aWVzIHJvdW5kZWQgdG93YXJkcyBuZWdhdGl2ZSBpbmZpbml0eSwK
KyBpLmUuLAorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIi
PjwhW0NEQVRBWworIHJvdW5kKGYpID0gY2VpbChmIC0gMC41KSAuCitdXT48L2FydHdvcms+Cis8
L2ZpZ3VyZT4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJsb2cyIiB0b2M9
ImV4Y2x1ZGUiIHRpdGxlPSJsb2cyKGYpIj4KKzx0PgorVGhlIGJhc2UtdHdvIGxvZ2FyaXRobSBv
ZiBmLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Imlsb2ciIHRvYz0iZXhj
bHVkZSIgdGl0bGU9Imlsb2cobikiPgorPHQ+CitUaGUgbWluaW11bSBudW1iZXIgb2YgYml0cyBy
ZXF1aXJlZCB0byBzdG9yZSBhIHBvc2l0aXZlIGludGVnZXIgbiBpbiB0d28ncworIGNvbXBsZW1l
bnQgbm90YXRpb24sIG9yIDAgZm9yIGEgbm9uLXBvc2l0aXZlIGludGVnZXIgbi4KKzxmaWd1cmUg
YWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAg
ICAgICAoIDAsICAgICAgICAgICAgICAgICBuIDw9IDAsCitpbG9nKG4pID0gPAorICAgICAgICAg
ICggZmxvb3IobG9nMihuKSkrMSwgIG4gPiAwCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0V4
YW1wbGVzOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+aWxvZygtMSkgPSAwPC90PgorPHQ+
aWxvZygwKSA9IDA8L3Q+Cis8dD5pbG9nKDEpID0gMTwvdD4KKzx0Pmlsb2coMikgPSAyPC90Pgor
PHQ+aWxvZygzKSA9IDI8L3Q+Cis8dD5pbG9nKDQpID0gMzwvdD4KKzx0Pmlsb2coNykgPSAzPC90
PgorPC9saXN0PgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4K
KworPHNlY3Rpb24gYW5jaG9yPSJvdmVydmlldyIgdGl0bGU9Ik9wdXMgQ29kZWMgT3ZlcnZpZXci
PgorCis8dD4KK1RoZSBPcHVzIGNvZGVjIHNjYWxlcyBmcm9tIDYmbmJzcDtrYi9zIG5hcnJvd2Jh
bmQgbW9ubyBzcGVlY2ggdG8gNTEwJm5ic3A7a2IvcworIGZ1bGxiYW5kIHN0ZXJlbyBtdXNpYywg
d2l0aCBhbGdvcml0aG1pYyBkZWxheXMgcmFuZ2luZyBmcm9tIDUmbmJzcDttcyB0bworIDY1LjIm
bmJzcDttcy4KK0F0IGFueSBnaXZlbiB0aW1lLCBlaXRoZXIgdGhlIExQIGxheWVyLCB0aGUgTURD
VCBsYXllciwgb3IgYm90aCwgbWF5IGJlIGFjdGl2ZS4KK0l0IGNhbiBzZWFtbGVzc2x5IHN3aXRj
aCBiZXR3ZWVuIGFsbCBvZiBpdHMgdmFyaW91cyBvcGVyYXRpbmcgbW9kZXMsIGdpdmluZyBpdAor
IGEgZ3JlYXQgZGVhbCBvZiBmbGV4aWJpbGl0eSB0byBhZGFwdCB0byB2YXJ5aW5nIGNvbnRlbnQg
YW5kIG5ldHdvcmsKKyBjb25kaXRpb25zIHdpdGhvdXQgcmVuZWdvdGlhdGluZyB0aGUgY3VycmVu
dCBzZXNzaW9uLgorVGhlIGNvZGVjIGFsbG93cyBpbnB1dCBhbmQgb3V0cHV0IG9mIHZhcmlvdXMg
YXVkaW8gYmFuZHdpZHRocywgZGVmaW5lZCBhcworIGZvbGxvd3M6Cis8L3Q+Cis8dGV4dHRhYmxl
IGFuY2hvcj0iYXVkaW8tYmFuZHdpZHRoIj4KKzx0dGNvbD5BYmJyZXZpYXRpb248L3R0Y29sPgor
PHR0Y29sIGFsaWduPSJyaWdodCI+QXVkaW8gQmFuZHdpZHRoPC90dGNvbD4KKzx0dGNvbCBhbGln
bj0icmlnaHQiPlNhbXBsZSBSYXRlIChFZmZlY3RpdmUpPC90dGNvbD4KKzxjPk5CIChuYXJyb3di
YW5kKTwvYz4gICAgICAgPGM+NCZuYnNwO2tIejwvYz4gIDxjPjgmbmJzcDtrSHo8L2M+Cis8Yz5N
QiAobWVkaXVtLWJhbmQpPC9jPiAgICAgIDxjPjYmbmJzcDtrSHo8L2M+IDxjPjEyJm5ic3A7a0h6
PC9jPgorPGM+V0IgKHdpZGViYW5kKTwvYz4gICAgICAgICA8Yz44Jm5ic3A7a0h6PC9jPiA8Yz4x
NiZuYnNwO2tIejwvYz4KKzxjPlNXQiAoc3VwZXItd2lkZWJhbmQpPC9jPiA8Yz4xMiZuYnNwO2tI
ejwvYz4gPGM+MjQmbmJzcDtrSHo8L2M+Cis8Yz5GQiAoZnVsbGJhbmQpPC9jPiAgICAgICAgPGM+
MjAmbmJzcDtrSHogKCopPC9jPiA8Yz40OCZuYnNwO2tIejwvYz4KKzwvdGV4dHRhYmxlPgorPHQ+
CisoKikgQWx0aG91Z2ggdGhlIHNhbXBsaW5nIHRoZW9yZW0gYWxsb3dzIGEgYmFuZHdpZHRoIGFz
IGxhcmdlIGFzIGhhbGYgdGhlCisgc2FtcGxpbmcgcmF0ZSwgT3B1cyBuZXZlciBjb2RlcyBhdWRp
byBhYm92ZSAyMCZuYnNwO2tIeiwgYXMgdGhhdCBpcyB0aGUKKyBnZW5lcmFsbHkgYWNjZXB0ZWQg
dXBwZXIgbGltaXQgb2YgaHVtYW4gaGVhcmluZy4KKzwvdD4KKworPHQ+CitPcHVzIGRlZmluZXMg
c3VwZXItd2lkZWJhbmQgKFNXQikgd2l0aCBhbiBlZmZlY3RpdmUgc2FtcGxlIHJhdGUgb2YgMjQm
bmJzcDtrSHosCisgdW5saWtlIHNvbWUgb3RoZXIgYXVkaW8gY29kaW5nIHN0YW5kYXJkcyB0aGF0
IHVzZSAzMiZuYnNwO2tIei4KK1RoaXMgd2FzIGNob3NlbiBmb3IgYSBudW1iZXIgb2YgcmVhc29u
cy4KK1RoZSBiYW5kIGxheW91dCBpbiB0aGUgTURDVCBsYXllciBuYXR1cmFsbHkgYWxsb3dzIHNr
aXBwaW5nIGNvZWZmaWNpZW50cyBmb3IKKyBmcmVxdWVuY2llcyBvdmVyIDEyJm5ic3A7a0h6LCBi
dXQgZG9lcyBub3QgYWxsb3cgY2xlYW5seSBkcm9wcGluZyBqdXN0IHRob3NlCisgZnJlcXVlbmNp
ZXMgb3ZlciAxNiZuYnNwO2tIei4KK0Egc2FtcGxlIHJhdGUgb2YgMjQmbmJzcDtrSHogYWxzbyBt
YWtlcyByZXNhbXBsaW5nIGluIHRoZSBNRENUIGxheWVyIGVhc2llciwKKyBhcyAyNCBldmVubHkg
ZGl2aWRlcyA0OCwgYW5kIHdoZW4gMjQmbmJzcDtrSHogaXMgc3VmZmljaWVudCwgaXQgY2FuIHNh
dmUKKyBjb21wdXRhdGlvbiBpbiBvdGhlciBwcm9jZXNzaW5nLCBzdWNoIGFzIEFjb3VzdGljIEVj
aG8gQ2FuY2VsbGF0aW9uIChBRUMpLgorRXhwZXJpbWVudGFsIGNoYW5nZXMgdG8gdGhlIGJhbmQg
bGF5b3V0IHRvIGFsbG93IGEgMTYmbmJzcDtrSHogY3V0b2ZmCisgKDMyJm5ic3A7a0h6IGVmZmVj
dGl2ZSBzYW1wbGUgcmF0ZSkgc2hvd2VkIHBvdGVudGlhbCBxdWFsaXR5IGRlZ3JhZGF0aW9ucyBh
dAorIG90aGVyIHNhbXBsZSByYXRlcywgYW5kIGF0IHR5cGljYWwgYml0cmF0ZXMgdGhlIG51bWJl
ciBvZiBiaXRzIHNhdmVkIGJ5IHVzaW5nCisgc3VjaCBhIGN1dG9mZiBpbnN0ZWFkIG9mIGNvZGlu
ZyBpbiBmdWxsYmFuZCAoRkIpIG1vZGUgaXMgdmVyeSBzbWFsbC4KK1RoZXJlZm9yZSwgaWYgYW4g
YXBwbGljYXRpb24gd2lzaGVzIHRvIHByb2Nlc3MgYSBzaWduYWwgc2FtcGxlZCBhdCAzMiZuYnNw
O2tIeiwKKyBpdCBzaG91bGQganVzdCB1c2UgRkIuCis8L3Q+CisKKzx0PgorVGhlIExQIGxheWVy
IGlzIGJhc2VkIG9uIHRoZSBTSUxLIGNvZGVjCisgPHhyZWYgdGFyZ2V0PSJTSUxLIj48L3hyZWY+
LgorSXQgc3VwcG9ydHMgTkIsIE1CLCBvciBXQiBhdWRpbyBhbmQgZnJhbWUgc2l6ZXMgZnJvbSAx
MCZuYnNwO21zIHRvIDYwJm5ic3A7bXMsCisgYW5kIHJlcXVpcmVzIGFuIGFkZGl0aW9uYWwgNSZu
YnNwO21zIGxvb2stYWhlYWQgZm9yIG5vaXNlIHNoYXBpbmcgZXN0aW1hdGlvbi4KK0Egc21hbGwg
YWRkaXRpb25hbCBkZWxheSAodXAgdG8gMS41IG1zKSBtYXkgYmUgcmVxdWlyZWQgZm9yIHNhbXBs
aW5nIHJhdGUKKyBjb252ZXJzaW9uLgorTGlrZSBWb3JiaXMgPHhyZWYgdGFyZ2V0PSdWb3JiaXMt
d2Vic2l0ZScvPiBhbmQgbWFueSBvdGhlciBtb2Rlcm4gY29kZWNzLCBTSUxLIGlzIGluaGVyZW50
bHkgZGVzaWduZWQgZm9yCisgdmFyaWFibGUtYml0cmF0ZSAoVkJSKSBjb2RpbmcsIHRob3VnaCB0
aGUgZW5jb2RlciBjYW4gYWxzbyBwcm9kdWNlCisgY29uc3RhbnQtYml0cmF0ZSAoQ0JSKSBzdHJl
YW1zLgorVGhlIHZlcnNpb24gb2YgU0lMSyB1c2VkIGluIE9wdXMgaXMgc3Vic3RhbnRpYWxseSBt
b2RpZmllZCBmcm9tLCBhbmQgbm90CisgY29tcGF0aWJsZSB3aXRoLCB0aGUgc3RhbmQtYWxvbmUg
U0lMSyBjb2RlYyBwcmV2aW91c2x5IGRlcGxveWVkIGJ5IFNreXBlLgorVGhpcyBkb2N1bWVudCBk
b2VzIG5vdCBzZXJ2ZSB0byBkZWZpbmUgdGhhdCBmb3JtYXQsIGJ1dCB0aG9zZSBpbnRlcmVzdGVk
IGluIHRoZQorIG9yaWdpbmFsIFNJTEsgY29kZWMgc2hvdWxkIHNlZSA8eHJlZiB0YXJnZXQ9IlNJ
TEsiLz4gaW5zdGVhZC4KKzwvdD4KKworPHQ+CitUaGUgTURDVCBsYXllciBpcyBiYXNlZCBvbiB0
aGUgQ0VMVCAgY29kZWMgPHhyZWYgdGFyZ2V0PSJDRUxUIj48L3hyZWY+LgorSXQgc3VwcG9ydHMg
TkIsIFdCLCBTV0IsIG9yIEZCIGF1ZGlvIGFuZCBmcmFtZSBzaXplcyBmcm9tIDIuNSZuYnNwO21z
IHRvCisgMjAmbmJzcDttcywgYW5kIHJlcXVpcmVzIGFuIGFkZGl0aW9uYWwgMi41Jm5ic3A7bXMg
bG9vay1haGVhZCBkdWUgdG8gdGhlCisgb3ZlcmxhcHBpbmcgTURDVCB3aW5kb3dzLgorVGhlIENF
TFQgY29kZWMgaXMgaW5oZXJlbnRseSBkZXNpZ25lZCBmb3IgQ0JSIGNvZGluZywgYnV0IHVubGlr
ZSBtYW55IENCUgorIGNvZGVjcyBpdCBpcyBub3QgbGltaXRlZCB0byBhIHNldCBvZiBwcmVkZXRl
cm1pbmVkIHJhdGVzLgorSXQgaW50ZXJuYWxseSBhbGxvY2F0ZXMgYml0cyB0byBleGFjdGx5IGZp
bGwgYW55IGdpdmVuIHRhcmdldCBidWRnZXQsIGFuZCBhbgorIGVuY29kZXIgY2FuIHByb2R1Y2Ug
YSBWQlIgc3RyZWFtIGJ5IHZhcnlpbmcgdGhlIHRhcmdldCBvbiBhIHBlci1mcmFtZSBiYXNpcy4K
K1RoZSBNRENUIGxheWVyIGlzIG5vdCB1c2VkIGZvciBzcGVlY2ggd2hlbiB0aGUgYXVkaW8gYmFu
ZHdpZHRoIGlzIFdCIG9yIGxlc3MsCisgYXMgaXQgaXMgbm90IHVzZWZ1bCB0aGVyZS4KK09uIHRo
ZSBvdGhlciBoYW5kLCBub24tc3BlZWNoIHNpZ25hbHMgYXJlIG5vdCBhbHdheXMgYWRlcXVhdGVs
eSBjb2RlZCB1c2luZworIGxpbmVhciBwcmVkaWN0aW9uLCBzbyBmb3IgbXVzaWMgb25seSB0aGUg
TURDVCBsYXllciBzaG91bGQgYmUgdXNlZC4KKzwvdD4KKworPHQ+CitBICJIeWJyaWQiIG1vZGUg
YWxsb3dzIHRoZSB1c2Ugb2YgYm90aCBsYXllcnMgc2ltdWx0YW5lb3VzbHkgd2l0aCBhIGZyYW1l
IHNpemUKKyBvZiAxMCZuYnNwO29yIDIwJm5ic3A7bXMgYW5kIGEgU1dCIG9yIEZCIGF1ZGlvIGJh
bmR3aWR0aC4KK1RoZSBMUCBsYXllciBjb2RlcyB0aGUgbG93IGZyZXF1ZW5jaWVzIGJ5IHJlc2Ft
cGxpbmcgdGhlIHNpZ25hbCBkb3duIHRvIFdCLgorVGhlIE1EQ1QgbGF5ZXIgZm9sbG93cywgY29k
aW5nIHRoZSBoaWdoIGZyZXF1ZW5jeSBwb3J0aW9uIG9mIHRoZSBzaWduYWwuCitUaGUgY3V0b2Zm
IGJldHdlZW4gdGhlIHR3byBsaWVzIGF0IDgmbmJzcDtrSHosIHRoZSBtYXhpbXVtIFdCIGF1ZGlv
IGJhbmR3aWR0aC4KK0luIHRoZSBNRENUIGxheWVyLCBhbGwgYmFuZHMgYmVsb3cgOCZuYnNwO2tI
eiBhcmUgZGlzY2FyZGVkLCBzbyB0aGVyZSBpcyBubworIGNvZGluZyByZWR1bmRhbmN5IGJldHdl
ZW4gdGhlIHR3byBsYXllcnMuCis8L3Q+CisKKzx0PgorVGhlIHNhbXBsZSByYXRlIChpbiBjb250
cmFzdCB0byB0aGUgYWN0dWFsIGF1ZGlvIGJhbmR3aWR0aCkgY2FuIGJlIGNob3NlbgorIGluZGVw
ZW5kZW50bHkgb24gdGhlIGVuY29kZXIgYW5kIGRlY29kZXIgc2lkZSwgZS5nLiwgYSBmdWxsYmFu
ZCBzaWduYWwgY2FuIGJlCisgZGVjb2RlZCBhcyB3aWRlYmFuZCwgb3IgdmljZSB2ZXJzYS4KK1Ro
aXMgYXBwcm9hY2ggZW5zdXJlcyBhIHNlbmRlciBhbmQgcmVjZWl2ZXIgY2FuIGFsd2F5cyBpbnRl
cm9wZXJhdGUsIHJlZ2FyZGxlc3MKKyBvZiB0aGUgY2FwYWJpbGl0aWVzIG9mIHRoZWlyIGFjdHVh
bCBhdWRpbyBoYXJkd2FyZS4KK0ludGVybmFsbHksIHRoZSBMUCBsYXllciBhbHdheXMgb3BlcmF0
ZXMgYXQgYSBzYW1wbGUgcmF0ZSBvZiB0d2ljZSB0aGUgYXVkaW8KKyBiYW5kd2lkdGgsIHVwIHRv
IGEgbWF4aW11bSBvZiAxNiZuYnNwO2tIeiwgd2hpY2ggaXQgY29udGludWVzIHRvIHVzZSBmb3Ig
U1dCCisgYW5kIEZCLgorVGhlIGRlY29kZXIgc2ltcGx5IHJlc2FtcGxlcyBpdHMgb3V0cHV0IHRv
IHN1cHBvcnQgZGlmZmVyZW50IHNhbXBsZSByYXRlcy4KK1RoZSBNRENUIGxheWVyIGFsd2F5cyBv
cGVyYXRlcyBpbnRlcm5hbGx5IGF0IGEgc2FtcGxlIHJhdGUgb2YgNDgmbmJzcDtrSHouCitTaW5j
ZSBhbGwgdGhlIHN1cHBvcnRlZCBzYW1wbGUgcmF0ZXMgZXZlbmx5IGRpdmlkZSB0aGlzIHJhdGUs
IGFuZCBzaW5jZSB0aGUKKyB0aGUgZGVjb2RlciBtYXkgZWFzaWx5IHplcm8gb3V0IHRoZSBoaWdo
IGZyZXF1ZW5jeSBwb3J0aW9uIG9mIHRoZSBzcGVjdHJ1bSBpbgorIHRoZSBmcmVxdWVuY3kgZG9t
YWluLCBpdCBjYW4gc2ltcGx5IGRlY2ltYXRlIHRoZSBNRENUIGxheWVyIG91dHB1dCB0byBhY2hp
ZXZlCisgdGhlIG90aGVyIHN1cHBvcnRlZCBzYW1wbGUgcmF0ZXMgdmVyeSBjaGVhcGx5LgorPC90
PgorCis8dD4KK0FmdGVyIGNvbnZlcnNpb24gdG8gdGhlIGNvbW1vbiwgZGVzaXJlZCBvdXRwdXQg
c2FtcGxlIHJhdGUsIHRoZSBkZWNvZGVyIHNpbXBseQorIGFkZHMgdGhlIG91dHB1dCBmcm9tIHRo
ZSB0d28gbGF5ZXJzIHRvZ2V0aGVyLgorVG8gY29tcGVuc2F0ZSBmb3IgdGhlIGRpZmZlcmVudCBs
b29rLWFoZWFkIHJlcXVpcmVkIGJ5IGVhY2ggbGF5ZXIsIHRoZSBDRUxUCisgZW5jb2RlciBpbnB1
dCBpcyBkZWxheWVkIGJ5IGFuIGFkZGl0aW9uYWwgMi43Jm5ic3A7bXMuCitUaGlzIGVuc3VyZXMg
dGhhdCBsb3cgZnJlcXVlbmNpZXMgYW5kIGhpZ2ggZnJlcXVlbmNpZXMgYXJyaXZlIGF0IHRoZSBz
YW1lIHRpbWUuCitUaGlzIGV4dHJhIGRlbGF5IG1heSBiZSByZWR1Y2VkIGJ5IGFuIGVuY29kZXIg
YnkgdXNpbmcgbGVzcyBsb29rLWFoZWFkIGZvciBub2lzZQorIHNoYXBpbmcgb3IgdXNpbmcgYSBz
aW1wbGVyIHJlc2FtcGxlciBpbiB0aGUgTFAgbGF5ZXIsIGJ1dCB0aGlzIHdpbGwgcmVkdWNlCisg
cXVhbGl0eS4KK0hvd2V2ZXIsIHRoZSBiYXNlIDIuNSZuYnNwO21zIGxvb2stYWhlYWQgaW4gdGhl
IENFTFQgbGF5ZXIgY2Fubm90IGJlIHJlZHVjZWQgaW4KKyB0aGUgZW5jb2RlciBiZWNhdXNlIGl0
IGlzIG5lZWRlZCBmb3IgdGhlIE1EQ1Qgb3ZlcmxhcCwgd2hvc2Ugc2l6ZSBpcyBmaXhlZCBieQor
IHRoZSBkZWNvZGVyLgorPC90PgorCis8dD4KK0JvdGggbGF5ZXJzIHVzZSB0aGUgc2FtZSBlbnRy
b3B5IGNvZGVyLCBhdm9pZGluZyBhbnkgd2FzdGUgZnJvbSAicGFkZGluZyBiaXRzIgorIGJldHdl
ZW4gdGhlbS4KK1RoZSBoeWJyaWQgYXBwcm9hY2ggbWFrZXMgaXQgZWFzeSB0byBzdXBwb3J0IGJv
dGggQ0JSIGFuZCBWQlIgY29kaW5nLgorQWx0aG91Z2ggdGhlIExQIGxheWVyIGlzIFZCUiwgdGhl
IGJpdCBhbGxvY2F0aW9uIG9mIHRoZSBNRENUIGxheWVyIGNhbiBwcm9kdWNlCisgYSBmaW5hbCBz
dHJlYW0gdGhhdCBpcyBDQlIgYnkgdXNpbmcgYWxsIHRoZSBiaXRzIGxlZnQgdW51c2VkIGJ5IHRo
ZSBMUCBsYXllci4KKzwvdD4KKworPHNlY3Rpb24gdGl0bGU9IkNvbnRyb2wgUGFyYW1ldGVycyI+
Cis8dD4KK1RoZSBPcHVzIGNvZGVjIGluY2x1ZGVzIGEgbnVtYmVyIG9mIGNvbnRyb2wgcGFyYW1l
dGVycyB3aGljaCBjYW4gYmUgY2hhbmdlZCBkeW5hbWljYWxseSBkdXJpbmcKK3JlZ3VsYXIgb3Bl
cmF0aW9uIG9mIHRoZSBjb2RlYywgd2l0aG91dCBpbnRlcnJ1cHRpbmcgdGhlIGF1ZGlvIHN0cmVh
bSBmcm9tIHRoZSBlbmNvZGVyIHRvIHRoZSBkZWNvZGVyLgorVGhlc2UgcGFyYW1ldGVycyBvbmx5
IGFmZmVjdCB0aGUgZW5jb2RlciBzaW5jZSBhbnkgaW1wYWN0IHRoZXkgaGF2ZSBvbiB0aGUgYml0
LXN0cmVhbSBpcyBzaWduYWxlZAoraW4tYmFuZCBzdWNoIHRoYXQgYSBkZWNvZGVyIGNhbiBkZWNv
ZGUgYW55IE9wdXMgc3RyZWFtIHdpdGhvdXQgYW55IG91dC1vZi1iYW5kIHNpZ25hbGluZy4gQW55
IE9wdXMKK2ltcGxlbWVudGF0aW9uIGNhbiBhZGQgb3IgbW9kaWZ5IHRoZXNlIGNvbnRyb2wgcGFy
YW1ldGVycyB3aXRob3V0IGFmZmVjdGluZyBpbnRlcm9wZXJhYmlsaXR5LiBUaGUgbW9zdAoraW1w
b3J0YW50IGVuY29kZXIgY29udHJvbCBwYXJhbWV0ZXJzIGluIHRoZSByZWZlcmVuY2UgZW5jb2Rl
ciBhcmUgbGlzdGVkIGJlbG93LgorPC90PgorCis8c2VjdGlvbiB0aXRsZT0iQml0cmF0ZSIgdG9j
PSJleGxjdWRlIj4KKzx0PgorT3B1cyBzdXBwb3J0cyBhbGwgYml0cmF0ZXMgZnJvbSA2Jm5ic3A7
a2IvcyB0byA1MTAmbmJzcDtrYi9zLiBBbGwgb3RoZXIgcGFyYW1ldGVycyBiZWluZworZXF1YWws
IGhpZ2hlciBiaXRyYXRlIHJlc3VsdHMgaW4gaGlnaGVyIHF1YWxpdHkuIEZvciBhIGZyYW1lIHNp
emUgb2YgMjAmbmJzcDttcywgdGhlc2UKK2FyZSB0aGUgYml0cmF0ZSAic3dlZXQgc3BvdHMiIGZv
ciBPcHVzIGluIHZhcmlvdXMgY29uZmlndXJhdGlvbnM6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+
Cis8dD44LTEyIGtiL3MgZm9yIE5CIHNwZWVjaCw8L3Q+Cis8dD4xNi0yMCBrYi9zIGZvciBXQiBz
cGVlY2gsPC90PgorPHQ+MjgtNDAga2IvcyBmb3IgRkIgc3BlZWNoLDwvdD4KKzx0PjQ4LTY0IGti
L3MgZm9yIEZCIG1vbm8gbXVzaWMsIGFuZDwvdD4KKzx0PjY0LTEyOCBrYi9zIGZvciBGQiBzdGVy
ZW8gbXVzaWMuPC90PgorPC9saXN0PgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRs
ZT0iTnVtYmVyIG9mIENoYW5uZWxzIChNb25vL1N0ZXJlbykiIHRvYz0iZXhsY3VkZSI+Cis8dD4K
K09wdXMgY2FuIHRyYW5zbWl0IGVpdGhlciBtb25vIG9yIHN0ZXJlbyBmcmFtZXMgd2l0aGluIGEg
c2luZ2xlIHN0cmVhbS4KK1doZW4gZGVjb2RpbmcgYSBtb25vIGZyYW1lIGluIGEgc3RlcmVvIGRl
Y29kZXIsIHRoZSBsZWZ0IGFuZCByaWdodCBjaGFubmVscyBhcmUKKyBpZGVudGljYWwsIGFuZCB3
aGVuIGRlY29kaW5nIGEgc3RlcmVvIGZyYW1lIGluIGEgbW9ubyBkZWNvZGVyLCB0aGUgbW9ubyBv
dXRwdXQKKyBpcyB0aGUgYXZlcmFnZSBvZiB0aGUgbGVmdCBhbmQgcmlnaHQgY2hhbm5lbHMuCitJ
biBzb21lIGNhc2VzLCBpdCBpcyBkZXNpcmFibGUgdG8gZW5jb2RlIGEgc3RlcmVvIGlucHV0IHN0
cmVhbSBpbiBtb25vIChlLmcuLAorIGJlY2F1c2UgdGhlIGJpdHJhdGUgaXMgdG9vIGxvdyB0byBl
bmNvZGUgc3RlcmVvIHdpdGggc3VmZmljaWVudCBxdWFsaXR5KS4KK1RoZSBudW1iZXIgb2YgY2hh
bm5lbHMgZW5jb2RlZCBjYW4gYmUgc2VsZWN0ZWQgaW4gcmVhbC10aW1lLCBidXQgYnkgZGVmYXVs
dCB0aGUKKyByZWZlcmVuY2UgZW5jb2RlciBhdHRlbXB0cyB0byBtYWtlIHRoZSBiZXN0IGRlY2lz
aW9uIHBvc3NpYmxlIGdpdmVuIHRoZQorIGN1cnJlbnQgYml0cmF0ZS4KKzwvdD4KKzwvc2VjdGlv
bj4KKworPHNlY3Rpb24gdGl0bGU9IkF1ZGlvIEJhbmR3aWR0aCIgdG9jPSJleGxjdWRlIj4KKzx0
PgorVGhlIGF1ZGlvIGJhbmR3aWR0aHMgc3VwcG9ydGVkIGJ5IE9wdXMgYXJlIGxpc3RlZCBpbgor
IDx4cmVmIHRhcmdldD0iYXVkaW8tYmFuZHdpZHRoIi8+LgorSnVzdCBsaWtlIGZvciB0aGUgbnVt
YmVyIG9mIGNoYW5uZWxzLCBhbnkgZGVjb2RlciBjYW4gZGVjb2RlIGF1ZGlvIGVuY29kZWQgYXQK
KyBhbnkgYmFuZHdpZHRoLgorRm9yIGV4YW1wbGUsIGFueSBPcHVzIGRlY29kZXIgb3BlcmF0aW5n
IGF0IDgmbmJzcDtrSHogY2FuIGRlY29kZSBhIEZCIE9wdXMKKyBmcmFtZSwgYW5kIGFueSBPcHVz
IGRlY29kZXIgb3BlcmF0aW5nIGF0IDQ4Jm5ic3A7a0h6IGNhbiBkZWNvZGUgYSBOQiBmcmFtZS4K
K1NpbWlsYXJseSwgdGhlIHJlZmVyZW5jZSBlbmNvZGVyIGNhbiB0YWtlIGEgNDgmbmJzcDtrSHog
aW5wdXQgc2lnbmFsIGFuZAorIGVuY29kZSBpdCBhcyBOQi4KK1RoZSBoaWdoZXIgdGhlIGF1ZGlv
IGJhbmR3aWR0aCwgdGhlIGhpZ2hlciB0aGUgcmVxdWlyZWQgYml0cmF0ZSB0byBhY2hpZXZlCisg
YWNjZXB0YWJsZSBxdWFsaXR5LgorVGhlIGF1ZGlvIGJhbmR3aWR0aCBjYW4gYmUgZXhwbGljaXRs
eSBzcGVjaWZpZWQgaW4gcmVhbC10aW1lLCBidXQgYnkgZGVmYXVsdAorIHRoZSByZWZlcmVuY2Ug
ZW5jb2RlciBhdHRlbXB0cyB0byBtYWtlIHRoZSBiZXN0IGJhbmR3aWR0aCBkZWNpc2lvbiBwb3Nz
aWJsZQorIGdpdmVuIHRoZSBjdXJyZW50IGJpdHJhdGUuCis8L3Q+Cis8L3NlY3Rpb24+CisKKwor
PHNlY3Rpb24gdGl0bGU9IkZyYW1lIER1cmF0aW9uIiB0b2M9ImV4bGN1ZGUiPgorPHQ+CitPcHVz
IGNhbiBlbmNvZGUgZnJhbWVzIG9mIDIuNSwgNSwgMTAsIDIwLCA0MCBvciA2MCZuYnNwO21zLgor
SXQgY2FuIGFsc28gY29tYmluZSBtdWx0aXBsZSBmcmFtZXMgaW50byBwYWNrZXRzIG9mIHVwIHRv
IDEyMCZuYnNwO21zLgorRm9yIHJlYWwtdGltZSBhcHBsaWNhdGlvbnMsIHNlbmRpbmcgZmV3ZXIg
cGFja2V0cyBwZXIgc2Vjb25kIHJlZHVjZXMgdGhlCisgYml0cmF0ZSwgc2luY2UgaXQgcmVkdWNl
cyB0aGUgb3ZlcmhlYWQgZnJvbSBJUCwgVURQLCBhbmQgUlRQIGhlYWRlcnMuCitIb3dldmVyLCBp
dCBpbmNyZWFzZXMgbGF0ZW5jeSBhbmQgc2Vuc2l0aXZpdHkgdG8gcGFja2V0IGxvc3NlcywgYXMg
bG9zaW5nIG9uZQorIHBhY2tldCBjb25zdGl0dXRlcyBhIGxvc3Mgb2YgYSBiaWdnZXIgY2h1bmsg
b2YgYXVkaW8uCitJbmNyZWFzaW5nIHRoZSBmcmFtZSBkdXJhdGlvbiBhbHNvIHNsaWdodGx5IGlt
cHJvdmVzIGNvZGluZyBlZmZpY2llbmN5LCBidXQgdGhlCisgZ2FpbiBiZWNvbWVzIHNtYWxsIGZv
ciBmcmFtZSBzaXplcyBhYm92ZSAyMCZuYnNwO21zLgorRm9yIHRoaXMgcmVhc29uLCAyMCZuYnNw
O21zIGZyYW1lcyBhcmUgYSBnb29kIGNob2ljZSBmb3IgbW9zdCBhcHBsaWNhdGlvbnMuCis8L3Q+
Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJDb21wbGV4aXR5IiB0b2M9ImV4bGN1ZGUi
PgorPHQ+CitUaGVyZSBhcmUgdmFyaW91cyBhc3BlY3RzIG9mIHRoZSBPcHVzIGVuY29kaW5nIHBy
b2Nlc3Mgd2hlcmUgdHJhZGUtb2ZmcworY2FuIGJlIG1hZGUgYmV0d2VlbiBDUFUgY29tcGxleGl0
eSBhbmQgcXVhbGl0eS9iaXRyYXRlLiBJbiB0aGUgcmVmZXJlbmNlCitlbmNvZGVyLCB0aGUgY29t
cGxleGl0eSBpcyBzZWxlY3RlZCB1c2luZyBhbiBpbnRlZ2VyIGZyb20gMCB0byAxMCwgd2hlcmUK
KzAgaXMgdGhlIGxvd2VzdCBjb21wbGV4aXR5IGFuZCAxMCBpcyB0aGUgaGlnaGVzdC4gRXhhbXBs
ZXMgb2YKK2NvbXB1dGF0aW9ucyBmb3Igd2hpY2ggc3VjaCB0cmFkZS1vZmZzIG1heSBvY2N1ciBh
cmU6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5UaGUgb3JkZXIgb2YgdGhlIHBpdGNoIGFu
YWx5c2lzIHdoaXRlbmluZyBmaWx0ZXIgPHhyZWYgdGFyZ2V0PSJXaGl0ZW5pbmciLz4sPC90Pgor
PHQ+VGhlIG9yZGVyIG9mIHRoZSBzaG9ydC10ZXJtIG5vaXNlIHNoYXBpbmcgZmlsdGVyLDwvdD4K
Kzx0PlRoZSBudW1iZXIgb2Ygc3RhdGVzIGluIGRlbGF5ZWQgZGVjaXNpb24gcXVhbnRpemF0aW9u
IG9mIHRoZQorcmVzaWR1YWwgc2lnbmFsLCBhbmQ8L3Q+Cis8dD5UaGUgdXNlIG9mIGNlcnRhaW4g
Yml0LXN0cmVhbSBmZWF0dXJlcyBzdWNoIGFzIHZhcmlhYmxlIHRpbWUtZnJlcXVlbmN5CityZXNv
bHV0aW9uIGFuZCB0aGUgcGl0Y2ggcG9zdC1maWx0ZXIuPC90PgorPC9saXN0PgorPC90PgorPC9z
ZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iUGFja2V0IExvc3MgUmVzaWxpZW5jZSIgdG9jPSJl
eGxjdWRlIj4KKzx0PgorQXVkaW8gY29kZWNzIG9mdGVuIGV4cGxvaXQgaW50ZXItZnJhbWUgY29y
cmVsYXRpb25zIHRvIHJlZHVjZSB0aGUKK2JpdHJhdGUgYXQgYSBjb3N0IGluIGVycm9yIHByb3Bh
Z2F0aW9uOiBhZnRlciBsb3Npbmcgb25lIHBhY2tldAorc2V2ZXJhbCBwYWNrZXRzIG5lZWQgdG8g
YmUgcmVjZWl2ZWQgYmVmb3JlIHRoZSBkZWNvZGVyIGlzIGFibGUgdG8KK2FjY3VyYXRlbHkgcmVj
b25zdHJ1Y3QgdGhlIHNwZWVjaCBzaWduYWwuICBUaGUgZXh0ZW50IHRvIHdoaWNoIE9wdXMKK2V4
cGxvaXRzIGludGVyLWZyYW1lIGRlcGVuZGVuY2llcyBjYW4gYmUgYWRqdXN0ZWQgb24gdGhlIGZs
eSB0bworY2hvb3NlIGEgdHJhZGUtb2ZmIGJldHdlZW4gYml0cmF0ZSBhbmQgYW1vdW50IG9mIGVy
cm9yIHByb3BhZ2F0aW9uLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iRm9y
d2FyZCBFcnJvciBDb3JyZWN0aW9uIChGRUMpIiB0b2M9ImV4bGN1ZGUiPgorPHQ+CisgICBBbm90
aGVyIG1lY2hhbmlzbSBwcm92aWRpbmcgcm9idXN0bmVzcyBhZ2FpbnN0IHBhY2tldCBsb3NzIGlz
IHRoZSBpbi1iYW5kCisgICBGb3J3YXJkIEVycm9yIENvcnJlY3Rpb24gKEZFQykuICBQYWNrZXRz
IHRoYXQgYXJlIGRldGVybWluZWQgdG8KKyAgIGNvbnRhaW4gcGVyY2VwdHVhbGx5IGltcG9ydGFu
dCBzcGVlY2ggaW5mb3JtYXRpb24sIHN1Y2ggYXMgb25zZXRzIG9yCisgICB0cmFuc2llbnRzLCBh
cmUgZW5jb2RlZCBhZ2FpbiBhdCBhIGxvd2VyIGJpdHJhdGUgYW5kIHRoaXMgcmUtZW5jb2RlZAor
ICAgaW5mb3JtYXRpb24gaXMgYWRkZWQgdG8gYSBzdWJzZXF1ZW50IHBhY2tldC4KKzwvdD4KKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IkNvbnN0YW50L1ZhcmlhYmxlIEJpdHJhdGUiIHRv
Yz0iZXhsY3VkZSI+Cis8dD4KK09wdXMgaXMgbW9yZSBlZmZpY2llbnQgd2hlbiBvcGVyYXRpbmcg
d2l0aCB2YXJpYWJsZSBiaXRyYXRlIChWQlIpLCB3aGljaCBpcwordGhlIGRlZmF1bHQuIEhvd2V2
ZXIsIGluIHNvbWUgKHJhcmUpIGFwcGxpY2F0aW9ucywgY29uc3RhbnQgYml0cmF0ZSAoQ0JSKQor
aXMgcmVxdWlyZWQuIFRoZXJlIGFyZSB0d28gbWFpbiByZWFzb25zIHRvIG9wZXJhdGUgaW4gQ0JS
IG1vZGU6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5XaGVuIHRoZSB0cmFuc3BvcnQgb25s
eSBzdXBwb3J0cyBhIGZpeGVkIHNpemUgZm9yIGVhY2ggY29tcHJlc3NlZCBmcmFtZTwvdD4KKzx0
PldoZW4gZW5jcnlwdGlvbiBpcyB1c2VkIGZvciBhbiBhdWRpbyBzdHJlYW0gdGhhdCBpcyBlaXRo
ZXIgaGlnaGx5IGNvbnN0cmFpbmVkCisgICAoZS5nLiB5ZXMvbm8sIHJlY29yZGVkIHByb21wdHMp
IG9yIGhpZ2hseSBzZW5zaXRpdmUgPHhyZWYgdGFyZ2V0PSJTUlRQLVZCUiI+PC94cmVmPiA8L3Q+
Cis8L2xpc3Q+CisKK1doZW4gbG93LWxhdGVuY3kgdHJhbnNtaXNzaW9uIGlzIHJlcXVpcmVkIG92
ZXIgYSByZWxhdGl2ZWx5IHNsb3cgY29ubmVjdGlvbiwgdGhlbgorY29uc3RyYWluZWQgVkJSIGNh
biBhbHNvIGJlIHVzZWQuIFRoaXMgdXNlcyBWQlIgaW4gYSB3YXkgdGhhdCBzaW11bGF0ZXMgYQor
ImJpdCByZXNlcnZvaXIiIGFuZCBpcyBlcXVpdmFsZW50IHRvIHdoYXQgTVAzIChNUEVHIDEsIExh
eWVyIDMpIGFuZAorQUFDIChBZHZhbmNlZCBBdWRpbyBDb2RpbmcpIGNhbGwgQ0JSIChpLmUuLCBu
b3QgdHJ1ZQorQ0JSIGR1ZSB0byB0aGUgYml0IHJlc2Vydm9pcikuCis8L3Q+Cis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIHRpdGxlPSJEaXNjb250aW51b3VzIFRyYW5zbWlzc2lvbiAoRFRYKSIgdG9j
PSJleGxjdWRlIj4KKzx0PgorICAgRGlzY29udGludW91cyBUcmFuc21pc3Npb24gKERUWCkgcmVk
dWNlcyB0aGUgYml0cmF0ZSBkdXJpbmcgc2lsZW5jZQorICAgb3IgYmFja2dyb3VuZCBub2lzZS4g
IFdoZW4gRFRYIGlzIGVuYWJsZWQsIG9ubHkgb25lIGZyYW1lIGlzIGVuY29kZWQKKyAgIGV2ZXJ5
IDQwMCBtaWxsaXNlY29uZHMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPC9z
ZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Im1vZGVzIiB0aXRsZT0iSW50ZXJuYWwgRnJhbWlu
ZyI+CisKKzx0PgorVGhlIE9wdXMgZW5jb2RlciBwcm9kdWNlcyAicGFja2V0cyIsIHdoaWNoIGFy
ZSBlYWNoIGEgY29udGlndW91cyBzZXQgb2YgYnl0ZXMKKyBtZWFudCB0byBiZSB0cmFuc21pdHRl
ZCBhcyBhIHNpbmdsZSB1bml0LgorVGhlIHBhY2tldHMgZGVzY3JpYmVkIGhlcmUgZG8gbm90IGlu
Y2x1ZGUgc3VjaCB0aGluZ3MgYXMgSVAsIFVEUCwgb3IgUlRQCisgaGVhZGVycyB3aGljaCBhcmUg
bm9ybWFsbHkgZm91bmQgaW4gYSB0cmFuc3BvcnQtbGF5ZXIgcGFja2V0LgorQSBzaW5nbGUgcGFj
a2V0IG1heSBjb250YWluIG11bHRpcGxlIGF1ZGlvIGZyYW1lcywgc28gbG9uZyBhcyB0aGV5IHNo
YXJlIGEKKyBjb21tb24gc2V0IG9mIHBhcmFtZXRlcnMsIGluY2x1ZGluZyB0aGUgb3BlcmF0aW5n
IG1vZGUsIGF1ZGlvIGJhbmR3aWR0aCwgZnJhbWUKKyBzaXplLCBhbmQgY2hhbm5lbCBjb3VudCAo
bW9ubyB2cy4gc3RlcmVvKS4KK1RoaXMgc2VjdGlvbiBkZXNjcmliZXMgdGhlIHBvc3NpYmxlIGNv
bWJpbmF0aW9ucyBvZiB0aGVzZSBwYXJhbWV0ZXJzIGFuZCB0aGUKKyBpbnRlcm5hbCBmcmFtaW5n
IHVzZWQgdG8gcGFjayBtdWx0aXBsZSBmcmFtZXMgaW50byBhIHNpbmdsZSBwYWNrZXQuCitUaGlz
IGZyYW1pbmcgaXMgbm90IHNlbGYtZGVsaW1pdGluZy4KK0luc3RlYWQsIGl0IGFzc3VtZXMgdGhh
dCBhIGhpZ2hlciBsYXllciAoc3VjaCBhcyBVRFAgb3IgUlRQIDx4cmVmIHRhcmdldD0nUkZDMzU1
MCcvPgorb3IgT2dnIDx4cmVmIHRhcmdldD0nUkZDMzUzMycvPiBvciBNYXRyb3NrYSA8eHJlZiB0
YXJnZXQ9J01hdHJvc2thLXdlYnNpdGUnLz4pCisgd2lsbCBjb21tdW5pY2F0ZSB0aGUgbGVuZ3Ro
LCBpbiBieXRlcywgb2YgdGhlIHBhY2tldCwgYW5kIGl0IHVzZXMgdGhpcworIGluZm9ybWF0aW9u
IHRvIHJlZHVjZSB0aGUgZnJhbWluZyBvdmVyaGVhZCBpbiB0aGUgcGFja2V0IGl0c2VsZi4KK0Eg
ZGVjb2RlciBpbXBsZW1lbnRhdGlvbiBNVVNUIHN1cHBvcnQgdGhlIGZyYW1pbmcgZGVzY3JpYmVk
IGluIHRoaXMgc2VjdGlvbi4KK0FuIGFsdGVybmF0aXZlLCBzZWxmLWRlbGltaXRpbmcgdmFyaWFu
dCBvZiB0aGUgZnJhbWluZyBpcyBkZXNjcmliZWQgaW4KKyA8eHJlZiB0YXJnZXQ9InNlbGYtZGVs
aW1pdGluZy1mcmFtaW5nIi8+LgorU3VwcG9ydCBmb3IgdGhhdCB2YXJpYW50IGlzIE9QVElPTkFM
LgorPC90PgorCis8dD4KK0FsbCBiaXQgZGlhZ3JhbXMgaW4gdGhpcyBkb2N1bWVudCBudW1iZXIg
dGhlIGJpdHMgc28gdGhhdCBiaXQgMCBpcyB0aGUgbW9zdAorIHNpZ25pZmljYW50IGJpdCBvZiB0
aGUgZmlyc3QgYnl0ZSwgYW5kIGJpdCA3IGlzIHRoZSBsZWFzdCBzaWduaWZpY2FudC4KK0JpdCA4
IGlzIHRodXMgdGhlIG1vc3Qgc2lnbmlmaWNhbnQgYml0IG9mIHRoZSBzZWNvbmQgYnl0ZSwgZXRj
LgorV2VsbC1mb3JtZWQgT3B1cyBwYWNrZXRzIG9iZXkgY2VydGFpbiByZXF1aXJlbWVudHMsIG1h
cmtlZCBbUjFdIHRocm91Z2ggW1I3XQorIGJlbG93LgorVGhlc2UgYXJlIHN1bW1hcml6ZWQgaW4g
PHhyZWYgdGFyZ2V0PSJtYWxmb3JtZWQtcGFja2V0cyIvPiBhbG9uZyB3aXRoCisgYXBwcm9wcmlh
dGUgbWVhbnMgb2YgaGFuZGxpbmcgbWFsZm9ybWVkIHBhY2tldHMuCis8L3Q+CisKKzxzZWN0aW9u
IGFuY2hvcj0idG9jX2J5dGUiIHRpdGxlPSJUaGUgVE9DIEJ5dGUiPgorPHQgYW5jaG9yPSJSMSI+
CitBIHdlbGwtZm9ybWVkIE9wdXMgcGFja2V0IE1VU1QgY29udGFpbiBhdCBsZWFzdCBvbmUgYnl0
ZSZuYnNwO1tSMV0uCitUaGlzIGJ5dGUgZm9ybXMgYSB0YWJsZS1vZi1jb250ZW50cyAoVE9DKSBo
ZWFkZXIgdGhhdCBzaWduYWxzIHdoaWNoIG9mIHRoZQorIHZhcmlvdXMgbW9kZXMgYW5kIGNvbmZp
Z3VyYXRpb25zIGEgZ2l2ZW4gcGFja2V0IHVzZXMuCitJdCBpcyBjb21wb3NlZCBvZiBhIGNvbmZp
Z3VyYXRpb24gbnVtYmVyLCAiY29uZmlnIiwgYSBzdGVyZW8gZmxhZywgInMiLCBhbmQgYQorIGZy
YW1lIGNvdW50IGNvZGUsICJjIiwgYXJyYW5nZWQgYXMgaWxsdXN0cmF0ZWQgaW4KKyA8eHJlZiB0
YXJnZXQ9InRvY19ieXRlX2ZpZyIvPi4KK0EgZGVzY3JpcHRpb24gb2YgZWFjaCBvZiB0aGVzZSBm
aWVsZHMgZm9sbG93cy4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9InRvY19ieXRlX2ZpZyIgdGl0
bGU9IlRoZSBUT0MgQnl0ZSI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAw
CisgMCAxIDIgMyA0IDUgNiA3CisrLSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxzfCBjIHwK
KystKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitUaGUg
dG9wIGZpdmUgYml0cyBvZiB0aGUgVE9DIGJ5dGUsIGxhYmVsZWQgImNvbmZpZyIsIGVuY29kZSBv
bmUgb2YgMzIgcG9zc2libGUKKyBjb25maWd1cmF0aW9ucyBvZiBvcGVyYXRpbmcgbW9kZSwgYXVk
aW8gYmFuZHdpZHRoLCBhbmQgZnJhbWUgc2l6ZS4KK0FzIGRlc2NyaWJlZCwgdGhlIExQIChTSUxL
KSBsYXllciBhbmQgTURDVCAoQ0VMVCkgbGF5ZXIgY2FuIGJlIGNvbWJpbmVkIGluIHRocmVlIHBv
c3NpYmxlCisgb3BlcmF0aW5nIG1vZGVzOgorPGxpc3Qgc3R5bGU9Im51bWJlcnMiPgorPHQ+QSBT
SUxLLW9ubHkgbW9kZSBmb3IgdXNlIGluIGxvdyBiaXRyYXRlIGNvbm5lY3Rpb25zIHdpdGggYW4g
YXVkaW8gYmFuZHdpZHRoCisgb2YgV0Igb3IgbGVzcyw8L3Q+Cis8dD5BIEh5YnJpZCAoU0lMSytD
RUxUKSBtb2RlIGZvciBTV0Igb3IgRkIgc3BlZWNoIGF0IG1lZGl1bSBiaXRyYXRlcywgYW5kPC90
PgorPHQ+QSBDRUxULW9ubHkgbW9kZSBmb3IgdmVyeSBsb3cgZGVsYXkgc3BlZWNoIHRyYW5zbWlz
c2lvbiBhcyB3ZWxsIGFzIG11c2ljCisgdHJhbnNtaXNzaW9uIChOQiB0byBGQikuPC90PgorPC9s
aXN0PgorVGhlIDMyIHBvc3NpYmxlIGNvbmZpZ3VyYXRpb25zIGVhY2ggaWRlbnRpZnkgd2hpY2gg
b25lIG9mIHRoZXNlIG9wZXJhdGluZyBtb2RlcworIHRoZSBwYWNrZXQgdXNlcywgYXMgd2VsbCBh
cyB0aGUgYXVkaW8gYmFuZHdpZHRoIGFuZCB0aGUgZnJhbWUgc2l6ZS4KKzx4cmVmIHRhcmdldD0i
Y29uZmlnX2JpdHMiLz4gbGlzdHMgdGhlIHBhcmFtZXRlcnMgZm9yIGVhY2ggY29uZmlndXJhdGlv
bi4KKzwvdD4KKzx0ZXh0dGFibGUgYW5jaG9yPSJjb25maWdfYml0cyIgdGl0bGU9IlRPQyBCeXRl
IENvbmZpZ3VyYXRpb24gUGFyYW1ldGVycyI+Cis8dHRjb2w+Q29uZmlndXJhdGlvbiBOdW1iZXIo
cyk8L3R0Y29sPgorPHR0Y29sPk1vZGU8L3R0Y29sPgorPHR0Y29sPkJhbmR3aWR0aDwvdHRjb2w+
Cis8dHRjb2w+RnJhbWUgU2l6ZXM8L3R0Y29sPgorPGM+MC4uLjM8L2M+ICAgPGM+U0lMSy1vbmx5
PC9jPiA8Yz5OQjwvYz4gIDxjPjEwLCAyMCwgNDAsIDYwJm5ic3A7bXM8L2M+Cis8Yz40Li4uNzwv
Yz4gICA8Yz5TSUxLLW9ubHk8L2M+IDxjPk1CPC9jPiAgPGM+MTAsIDIwLCA0MCwgNjAmbmJzcDtt
czwvYz4KKzxjPjguLi4xMTwvYz4gIDxjPlNJTEstb25seTwvYz4gPGM+V0I8L2M+ICA8Yz4xMCwg
MjAsIDQwLCA2MCZuYnNwO21zPC9jPgorPGM+MTIuLi4xMzwvYz4gPGM+SHlicmlkPC9jPiAgICA8
Yz5TV0I8L2M+IDxjPjEwLCAyMCZuYnNwO21zPC9jPgorPGM+MTQuLi4xNTwvYz4gPGM+SHlicmlk
PC9jPiAgICA8Yz5GQjwvYz4gIDxjPjEwLCAyMCZuYnNwO21zPC9jPgorPGM+MTYuLi4xOTwvYz4g
PGM+Q0VMVC1vbmx5PC9jPiA8Yz5OQjwvYz4gIDxjPjIuNSwgNSwgMTAsIDIwJm5ic3A7bXM8L2M+
Cis8Yz4yMC4uLjIzPC9jPiA8Yz5DRUxULW9ubHk8L2M+IDxjPldCPC9jPiAgPGM+Mi41LCA1LCAx
MCwgMjAmbmJzcDttczwvYz4KKzxjPjI0Li4uMjc8L2M+IDxjPkNFTFQtb25seTwvYz4gPGM+U1dC
PC9jPiA8Yz4yLjUsIDUsIDEwLCAyMCZuYnNwO21zPC9jPgorPGM+MjguLi4zMTwvYz4gPGM+Q0VM
VC1vbmx5PC9jPiA8Yz5GQjwvYz4gIDxjPjIuNSwgNSwgMTAsIDIwJm5ic3A7bXM8L2M+Cis8L3Rl
eHR0YWJsZT4KKzx0PgorVGhlIGNvbmZpZ3VyYXRpb24gbnVtYmVycyBpbiBlYWNoIHJhbmdlIChl
LmcuLCAwLi4uMyBmb3IgTkIgU0lMSy1vbmx5KQorIGNvcnJlc3BvbmQgdG8gdGhlIHZhcmlvdXMg
Y2hvaWNlcyBvZiBmcmFtZSBzaXplLCBpbiB0aGUgc2FtZSBvcmRlci4KK0ZvciBleGFtcGxlLCBj
b25maWd1cmF0aW9uIDAgaGFzIGEgMTAmbmJzcDttcyBmcmFtZSBzaXplIGFuZCBjb25maWd1cmF0
aW9uIDMKKyBoYXMgYSA2MCZuYnNwO21zIGZyYW1lIHNpemUuCis8L3Q+CisKKzx0PgorT25lIGFk
ZGl0aW9uYWwgYml0LCBsYWJlbGVkICJzIiwgc2lnbmFscyBtb25vIHZzLiBzdGVyZW8sIHdpdGgg
MCBpbmRpY2F0aW5nCisgbW9ubyBhbmQgMSBpbmRpY2F0aW5nIHN0ZXJlby4KKzwvdD4KKworPHQ+
CitUaGUgcmVtYWluaW5nIHR3byBiaXRzIG9mIHRoZSBUT0MgYnl0ZSwgbGFiZWxlZCAiYyIsIGNv
ZGUgdGhlIG51bWJlciBvZiBmcmFtZXMKKyBwZXIgcGFja2V0IChjb2RlcyAwIHRvIDMpIGFzIGZv
bGxvd3M6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD4wOiAgICAxIGZyYW1lIGluIHRoZSBw
YWNrZXQ8L3Q+Cis8dD4xOiAgICAyIGZyYW1lcyBpbiB0aGUgcGFja2V0LCBlYWNoIHdpdGggZXF1
YWwgY29tcHJlc3NlZCBzaXplPC90PgorPHQ+MjogICAgMiBmcmFtZXMgaW4gdGhlIHBhY2tldCwg
d2l0aCBkaWZmZXJlbnQgY29tcHJlc3NlZCBzaXplczwvdD4KKzx0PjM6ICAgIGFuIGFyYml0cmFy
eSBudW1iZXIgb2YgZnJhbWVzIGluIHRoZSBwYWNrZXQ8L3Q+Cis8L2xpc3Q+CitUaGlzIGRyYWZ0
IHJlZmVycyB0byBhIHBhY2tldCBhcyBhIGNvZGUgMCBwYWNrZXQsIGNvZGUgMSBwYWNrZXQsIGV0
Yy4sIGJhc2VkIG9uCisgdGhlIHZhbHVlIG9mICJjIi4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8
c2VjdGlvbiB0aXRsZT0iRnJhbWUgUGFja2luZyI+CisKKzx0PgorVGhpcyBzZWN0aW9uIGRlc2Ny
aWJlcyBob3cgZnJhbWVzIGFyZSBwYWNrZWQgYWNjb3JkaW5nIHRvIGVhY2ggcG9zc2libGUgdmFs
dWUKKyBvZiAiYyIgaW4gdGhlIFRPQyBieXRlLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9ImZy
YW1lLWxlbmd0aC1jb2RpbmciIHRpdGxlPSJGcmFtZSBMZW5ndGggQ29kaW5nIj4KKzx0PgorV2hl
biBhIHBhY2tldCBjb250YWlucyBtdWx0aXBsZSBWQlIgZnJhbWVzIChpLmUuLCBjb2RlIDIgb3Ig
MyksIHRoZSBjb21wcmVzc2VkCisgbGVuZ3RoIG9mIG9uZSBvciBtb3JlIG9mIHRoZXNlIGZyYW1l
cyBpcyBpbmRpY2F0ZWQgd2l0aCBhIG9uZS0gb3IgdHdvLWJ5dGUKKyBzZXF1ZW5jZSwgd2l0aCB0
aGUgbWVhbmluZyBvZiB0aGUgZmlyc3QgYnl0ZSBhcyBmb2xsb3dzOgorPGxpc3Qgc3R5bGU9InN5
bWJvbHMiPgorPHQ+MDogICAgICAgICAgTm8gZnJhbWUgKGRpc2NvbnRpbnVvdXMgdHJhbnNtaXNz
aW9uIChEVFgpIG9yIGxvc3QgcGFja2V0KTwvdD4KKzx0PjEuLi4yNTE6ICAgIExlbmd0aCBvZiB0
aGUgZnJhbWUgaW4gYnl0ZXM8L3Q+Cis8dD4yNTIuLi4yNTU6ICBBIHNlY29uZCBieXRlIGlzIG5l
ZWRlZC4gVGhlIHRvdGFsIGxlbmd0aCBpcyAoc2Vjb25kX2J5dGUqNCkrZmlyc3RfYnl0ZTwvdD4K
KzwvbGlzdD4KKzwvdD4KKworPHQ+CitUaGUgc3BlY2lhbCBsZW5ndGggMCBpbmRpY2F0ZXMgdGhh
dCBubyBmcmFtZSBpcyBhdmFpbGFibGUsIGVpdGhlciBiZWNhdXNlIGl0Cisgd2FzIGRyb3BwZWQg
ZHVyaW5nIHRyYW5zbWlzc2lvbiBieSBzb21lIGludGVybWVkaWFyeSBvciBiZWNhdXNlIHRoZSBl
bmNvZGVyCisgY2hvc2Ugbm90IHRvIHRyYW5zbWl0IGl0LgorQW55IE9wdXMgZnJhbWUgaW4gYW55
IG1vZGUgTUFZIGhhdmUgYSBsZW5ndGggb2YgMC4KKzwvdD4KKworPHQ+CitUaGUgbWF4aW11bSBy
ZXByZXNlbnRhYmxlIGxlbmd0aCBpcyAyNTUqNCsyNTU9MTI3NSZuYnNwO2J5dGVzLgorRm9yIDIw
Jm5ic3A7bXMgZnJhbWVzLCB0aGlzIHJlcHJlc2VudHMgYSBiaXRyYXRlIG9mIDUxMCZuYnNwO2ti
L3MsIHdoaWNoIGlzCisgYXBwcm94aW1hdGVseSB0aGUgaGlnaGVzdCB1c2VmdWwgcmF0ZSBmb3Ig
bG9zc2lseSBjb21wcmVzc2VkIGZ1bGxiYW5kIHN0ZXJlbworIG11c2ljLgorQmV5b25kIHRoaXMg
cG9pbnQsIGxvc3NsZXNzIGNvZGVjcyBhcmUgbW9yZSBhcHByb3ByaWF0ZS4KK0l0IGlzIGFsc28g
cm91Z2hseSB0aGUgbWF4aW11bSB1c2VmdWwgcmF0ZSBvZiB0aGUgTURDVCBsYXllciwgYXMgc2hv
cnRseQorIHRoZXJlYWZ0ZXIgcXVhbGl0eSBubyBsb25nZXIgaW1wcm92ZXMgd2l0aCBhZGRpdGlv
bmFsIGJpdHMgZHVlIHRvIGxpbWl0YXRpb25zCisgb24gdGhlIGNvZGVib29rIHNpemVzLgorPC90
PgorCis8dCBhbmNob3I9IlIyIj4KK05vIGxlbmd0aCBpcyB0cmFuc21pdHRlZCBmb3IgdGhlIGxh
c3QgZnJhbWUgaW4gYSBWQlIgcGFja2V0LCBvciBmb3IgYW55IG9mIHRoZQorIGZyYW1lcyBpbiBh
IENCUiBwYWNrZXQsIGFzIGl0IGNhbiBiZSBpbmZlcnJlZCBmcm9tIHRoZSB0b3RhbCBzaXplIG9m
IHRoZQorIHBhY2tldCBhbmQgdGhlIHNpemUgb2YgYWxsIG90aGVyIGRhdGEgaW4gdGhlIHBhY2tl
dC4KK0hvd2V2ZXIsIHRoZSBsZW5ndGggb2YgYW55IGluZGl2aWR1YWwgZnJhbWUgTVVTVCBOT1Qg
ZXhjZWVkCisgMTI3NSZuYnNwO2J5dGVzJm5ic3A7W1IyXSwgdG8gYWxsb3cgZm9yIHJlcGFja2V0
aXphdGlvbiBieSBnYXRld2F5cywKKyBjb25mZXJlbmNlIGJyaWRnZXMsIG9yIG90aGVyIHNvZnR3
YXJlLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQ29kZSAwOiBPbmUgRnJh
bWUgaW4gdGhlIFBhY2tldCI+CisKKzx0PgorRm9yIGNvZGUmbmJzcDswIHBhY2tldHMsIHRoZSBU
T0MgYnl0ZSBpcyBpbW1lZGlhdGVseSBmb2xsb3dlZCBieSBOLTEmbmJzcDtieXRlcworIG9mIGNv
bXByZXNzZWQgZGF0YSBmb3IgYSBzaW5nbGUgZnJhbWUgKHdoZXJlIE4gaXMgdGhlIHNpemUgb2Yg
dGhlIHBhY2tldCksCisgYXMgaWxsdXN0cmF0ZWQgaW4gPHhyZWYgdGFyZ2V0PSJjb2RlMF9wYWNr
ZXQiLz4uCis8L3Q+Cis8ZmlndXJlIGFuY2hvcj0iY29kZTBfcGFja2V0IiB0aXRsZT0iQSBDb2Rl
IDAgUGFja2V0IiBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NE
QVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAg
ICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAx
IDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8IGNvbmZpZyAgfHN8MHwwfCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0r
LSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAg
ICAgICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMSAoTi0xIGJ5dGVzKS4uLiAgICAgICAg
ICA6Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IkNvZGUgMTogVHdvIEZyYW1lcyBpbiB0
aGUgUGFja2V0LCBFYWNoIHdpdGggRXF1YWwgQ29tcHJlc3NlZCBTaXplIj4KKzx0IGFuY2hvcj0i
UjMiPgorRm9yIGNvZGUgMSBwYWNrZXRzLCB0aGUgVE9DIGJ5dGUgaXMgaW1tZWRpYXRlbHkgZm9s
bG93ZWQgYnkgdGhlCisgKE4tMSkvMiZuYnNwO2J5dGVzIG9mIGNvbXByZXNzZWQgZGF0YSBmb3Ig
dGhlIGZpcnN0IGZyYW1lLCBmb2xsb3dlZCBieQorIChOLTEpLzImbmJzcDtieXRlcyBvZiBjb21w
cmVzc2VkIGRhdGEgZm9yIHRoZSBzZWNvbmQgZnJhbWUsIGFzIGlsbHVzdHJhdGVkIGluCisgPHhy
ZWYgdGFyZ2V0PSJjb2RlMV9wYWNrZXQiLz4uCitUaGUgbnVtYmVyIG9mIHBheWxvYWQgYnl0ZXMg
YXZhaWxhYmxlIGZvciBjb21wcmVzc2VkIGRhdGEsIE4tMSwgTVVTVCBiZSBldmVuCisgZm9yIGFs
bCBjb2RlIDEgcGFja2V0cyZuYnNwO1tSM10uCis8L3Q+Cis8ZmlndXJlIGFuY2hvcj0iY29kZTFf
cGFja2V0IiB0aXRsZT0iQSBDb2RlIDEgUGFja2V0IiBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3Jr
IGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAg
ICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAg
MSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8IGNv
bmZpZyAgfHN8MHwxfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorKy0rLSstKy0rLSstKy0rLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxICgoTi0xKS8y
IGJ5dGVzKS4uLiAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Cit8
ICAgICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgMiAoKE4tMSkvMiBieXRlcykuLi4gICAgICAg
ICAgICAgfAorOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ky0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0
aXRsZT0iQ29kZSAyOiBUd28gRnJhbWVzIGluIHRoZSBQYWNrZXQsIHdpdGggRGlmZmVyZW50IENv
bXByZXNzZWQgU2l6ZXMiPgorPHQgYW5jaG9yPSJSNCI+CitGb3IgY29kZSAyIHBhY2tldHMsIHRo
ZSBUT0MgYnl0ZSBpcyBmb2xsb3dlZCBieSBhIG9uZS0gb3IgdHdvLWJ5dGUgc2VxdWVuY2UKKyBp
bmRpY2F0aW5nIHRoZSBsZW5ndGggb2YgdGhlIGZpcnN0IGZyYW1lIChtYXJrZWQgTjEgaW4gPHhy
ZWYgdGFyZ2V0PSdjb2RlMl9wYWNrZXQnLz4pLAorIGZvbGxvd2VkIGJ5IE4xIGJ5dGVzIG9mIGNv
bXByZXNzZWQgZGF0YSBmb3IgdGhlIGZpcnN0IGZyYW1lLgorVGhlIHJlbWFpbmluZyBOLU4xLTIg
b3IgTi1OMS0zJm5ic3A7Ynl0ZXMgYXJlIHRoZSBjb21wcmVzc2VkIGRhdGEgZm9yIHRoZQorIHNl
Y29uZCBmcmFtZS4KK1RoaXMgaXMgaWxsdXN0cmF0ZWQgaW4gPHhyZWYgdGFyZ2V0PSJjb2RlMl9w
YWNrZXQiLz4uCitBIGNvZGUgMiBwYWNrZXQgTVVTVCBjb250YWluIGVub3VnaCBieXRlcyB0byBy
ZXByZXNlbnQgYSB2YWxpZCBsZW5ndGguCitGb3IgZXhhbXBsZSwgYSAxLWJ5dGUgY29kZSAyIHBh
Y2tldCBpcyBhbHdheXMgaW52YWxpZCwgYW5kIGEgMi1ieXRlIGNvZGUgMgorIHBhY2tldCB3aG9z
ZSBzZWNvbmQgYnl0ZSBpcyBpbiB0aGUgcmFuZ2UgMjUyLi4uMjU1IGlzIGFsc28gaW52YWxpZC4K
K1RoZSBsZW5ndGggb2YgdGhlIGZpcnN0IGZyYW1lLCBOMSwgTVVTVCBhbHNvIGJlIG5vIGxhcmdl
ciB0aGFuIHRoZSBzaXplIG9mIHRoZQorIHBheWxvYWQgcmVtYWluaW5nIGFmdGVyIGRlY29kaW5n
IHRoYXQgbGVuZ3RoIGZvciBhbGwgY29kZSAyIHBhY2tldHMmbmJzcDtbUjRdLgorVGhpcyBtYWtl
cywgZm9yIGV4YW1wbGUsIGEgMi1ieXRlIGNvZGUgMiBwYWNrZXQgd2l0aCBhIHNlY29uZCBieXRl
IGluIHRoZSByYW5nZQorIDEuLi4yNTEgaW52YWxpZCBhcyB3ZWxsICh0aGUgb25seSB2YWxpZCAy
LWJ5dGUgY29kZSAyIHBhY2tldCBpcyBvbmUgd2hlcmUgdGhlCisgbGVuZ3RoIG9mIGJvdGggZnJh
bWVzIGlzIHplcm8pLgorPC90PgorPGZpZ3VyZSBhbmNob3I9ImNvZGUyX3BhY2tldCIgdGl0bGU9
IkEgQ29kZSAyIFBhY2tldCIgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij48IVtDREFUQVsKKyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAg
ICAgICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcg
OCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxzfDF8MHwg
TjEgKDEtMiBieXRlcyk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6
Cit8ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxIChOMSBieXRlcykuLi4gICAgICAg
ICAgICAgICAgfAorOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgICAg
ICAgICAgIENvbXByZXNzZWQgZnJhbWUgMi4uLiAgICAgICAgICAgICAgICAgICAgIDoKKzogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC9zZWN0
aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQ29kZSAzOiBBIFNpZ25hbGVkIE51bWJlciBvZiBGcmFt
ZXMgaW4gdGhlIFBhY2tldCI+Cis8dCBhbmNob3I9IlI1Ij4KK0NvZGUgMyBwYWNrZXRzIHNpZ25h
bCB0aGUgbnVtYmVyIG9mIGZyYW1lcywgYXMgd2VsbCBhcyBhZGRpdGlvbmFsCisgcGFkZGluZywg
Y2FsbGVkICJPcHVzIHBhZGRpbmciIHRvIGluZGljYXRlIHRoYXQgdGhpcyBwYWRkaW5nIGlzIGFk
ZGVkIGF0IHRoZQorIE9wdXMgbGF5ZXIsIHJhdGhlciB0aGFuIGF0IHRoZSB0cmFuc3BvcnQgbGF5
ZXIuCitDb2RlIDMgcGFja2V0cyBNVVNUIGhhdmUgYXQgbGVhc3QgMiBieXRlcyZuYnNwO1tSNixS
N10uCitUaGUgVE9DIGJ5dGUgaXMgZm9sbG93ZWQgYnkgYSBieXRlIGVuY29kaW5nIHRoZSBudW1i
ZXIgb2YgZnJhbWVzIGluIHRoZSBwYWNrZXQKKyBpbiBiaXRzIDIgdG8gNyAobWFya2VkICJNIiBp
biA8eHJlZiB0YXJnZXQ9J2ZyYW1lX2NvdW50X2J5dGUnLz4pLCB3aXRoIGJpdCAxIGluZGljYXRp
bmcgd2hldGhlcgorIG9yIG5vdCBPcHVzIHBhZGRpbmcgaXMgaW5zZXJ0ZWQgKG1hcmtlZCAicCIg
aW4gPHhyZWYgdGFyZ2V0PSdmcmFtZV9jb3VudF9ieXRlJy8+KSwgYW5kIGJpdCAwCisgaW5kaWNh
dGluZyBWQlIgKG1hcmtlZCAidiIgaW4gPHhyZWYgdGFyZ2V0PSdmcmFtZV9jb3VudF9ieXRlJy8+
KS4KK00gTVVTVCBOT1QgYmUgemVybywgYW5kIHRoZSBhdWRpbyBkdXJhdGlvbiBjb250YWluZWQg
d2l0aGluIGEgcGFja2V0IE1VU1QgTk9UCisgZXhjZWVkIDEyMCZuYnNwO21zJm5ic3A7W1I1XS4K
K1RoaXMgbGltaXRzIHRoZSBtYXhpbXVtIGZyYW1lIGNvdW50IGZvciBhbnkgZnJhbWUgc2l6ZSB0
byA0OCAoZm9yIDIuNSZuYnNwO21zCisgZnJhbWVzKSwgd2l0aCBsb3dlciBsaW1pdHMgZm9yIGxv
bmdlciBmcmFtZSBzaXplcy4KKzx4cmVmIHRhcmdldD0iZnJhbWVfY291bnRfYnl0ZSIvPiBpbGx1
c3RyYXRlcyB0aGUgbGF5b3V0IG9mIHRoZSBmcmFtZSBjb3VudAorIGJ5dGUuCis8L3Q+Cis8Zmln
dXJlIGFuY2hvcj0iZnJhbWVfY291bnRfYnl0ZSIgdGl0bGU9IlRoZSBmcmFtZSBjb3VudCBieXRl
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAKKyAwIDEgMiAzIDQgNSA2
IDcKKystKy0rLSstKy0rLSstKy0rCit8dnxwfCAgICAgTSAgICAgfAorKy0rLSstKy0rLSstKy0r
LSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPHQ+CitXaGVuIE9wdXMgcGFkZGluZyBpcyB1
c2VkLCB0aGUgbnVtYmVyIG9mIGJ5dGVzIG9mIHBhZGRpbmcgaXMgZW5jb2RlZCBpbiB0aGUKKyBi
eXRlcyBmb2xsb3dpbmcgdGhlIGZyYW1lIGNvdW50IGJ5dGUuCitWYWx1ZXMgZnJvbSAwLi4uMjU0
IGluZGljYXRlIHRoYXQgMC4uLjI1NCZuYnNwO2J5dGVzIG9mIHBhZGRpbmcgYXJlIGluY2x1ZGVk
LAorIGluIGFkZGl0aW9uIHRvIHRoZSBieXRlKHMpIHVzZWQgdG8gaW5kaWNhdGUgdGhlIHNpemUg
b2YgdGhlIHBhZGRpbmcuCitJZiB0aGUgdmFsdWUgaXMgMjU1LCB0aGVuIHRoZSBzaXplIG9mIHRo
ZSBhZGRpdGlvbmFsIHBhZGRpbmcgaXMgMjU0Jm5ic3A7Ynl0ZXMsCisgcGx1cyB0aGUgcGFkZGlu
ZyB2YWx1ZSBlbmNvZGVkIGluIHRoZSBuZXh0IGJ5dGUuCitUaGVyZSBNVVNUIGJlIGF0IGxlYXN0
IG9uZSBtb3JlIGJ5dGUgaW4gdGhlIHBhY2tldCBpbiB0aGlzIGNhc2UmbmJzcDtbUjYsUjddLgor
VGhlIGFkZGl0aW9uYWwgcGFkZGluZyBieXRlcyBhcHBlYXIgYXQgdGhlIGVuZCBvZiB0aGUgcGFj
a2V0LCBhbmQgTVVTVCBiZSBzZXQKKyB0byB6ZXJvIGJ5IHRoZSBlbmNvZGVyIHRvIGF2b2lkIGNy
ZWF0aW5nIGEgY292ZXJ0IGNoYW5uZWwuCitUaGUgZGVjb2RlciBNVVNUIGFjY2VwdCBhbnkgdmFs
dWUgZm9yIHRoZSBwYWRkaW5nIGJ5dGVzLCBob3dldmVyLgorPC90PgorPHQ+CitBbHRob3VnaCB0
aGlzIGVuY29kaW5nIHByb3ZpZGVzIG11bHRpcGxlIHdheXMgdG8gaW5kaWNhdGUgYSBnaXZlbiBu
dW1iZXIgb2YKKyBwYWRkaW5nIGJ5dGVzLCBlYWNoIHVzZXMgYSBkaWZmZXJlbnQgbnVtYmVyIG9m
IGJ5dGVzIHRvIGluZGljYXRlIHRoZSBwYWRkaW5nCisgc2l6ZSwgYW5kIHRodXMgd2lsbCBpbmNy
ZWFzZSB0aGUgdG90YWwgcGFja2V0IHNpemUgYnkgYSBkaWZmZXJlbnQgYW1vdW50LgorRm9yIGV4
YW1wbGUsIHRvIGFkZCAyNTUgYnl0ZXMgdG8gYSBwYWNrZXQsIHNldCB0aGUgcGFkZGluZyBiaXQs
IHAsIHRvIDEsIGluc2VydAorIGEgc2luZ2xlIGJ5dGUgYWZ0ZXIgdGhlIGZyYW1lIGNvdW50IGJ5
dGUgd2l0aCBhIHZhbHVlIG9mIDI1NCwgYW5kIGFwcGVuZCAyNTQKKyBwYWRkaW5nIGJ5dGVzIHdp
dGggdGhlIHZhbHVlIHplcm8gdG8gdGhlIGVuZCBvZiB0aGUgcGFja2V0LgorVG8gYWRkIDI1NiBi
eXRlcyB0byBhIHBhY2tldCwgc2V0IHRoZSBwYWRkaW5nIGJpdCB0byAxLCBpbnNlcnQgdHdvIGJ5
dGVzIGFmdGVyCisgdGhlIGZyYW1lIGNvdW50IGJ5dGUgd2l0aCB0aGUgdmFsdWVzIDI1NSBhbmQg
MCwgcmVzcGVjdGl2ZWx5LCBhbmQgYXBwZW5kIDI1NAorIHBhZGRpbmcgYnl0ZXMgd2l0aCB0aGUg
dmFsdWUgemVybyB0byB0aGUgZW5kIG9mIHRoZSBwYWNrZXQuCitCeSB1c2luZyB0aGUgdmFsdWUg
MjU1IG11bHRpcGxlIHRpbWVzLCBpdCBpcyBwb3NzaWJsZSB0byBjcmVhdGUgYSBwYWNrZXQgb2Yg
YW55Cisgc3BlY2lmaWMsIGRlc2lyZWQgc2l6ZS4KK0xldCBQIGJlIHRoZSBudW1iZXIgb2YgaGVh
ZGVyIGJ5dGVzIHVzZWQgdG8gaW5kaWNhdGUgdGhlIHBhZGRpbmcgc2l6ZSBwbHVzIHRoZQorIG51
bWJlciBvZiBwYWRkaW5nIGJ5dGVzIHRoZW1zZWx2ZXMgKGkuZS4sIFAgaXMgdGhlIHRvdGFsIG51
bWJlciBvZiBieXRlcyBhZGRlZAorIHRvIHRoZSBwYWNrZXQpLgorVGhlbiBQIE1VU1QgYmUgbm8g
bW9yZSB0aGFuIE4tMiZuYnNwO1tSNixSN10uCis8L3Q+Cis8dCBhbmNob3I9IlI2Ij4KK0luIHRo
ZSBDQlIgY2FzZSwgbGV0IFI9Ti0yLVAgYmUgdGhlIG51bWJlciBvZiBieXRlcyByZW1haW5pbmcg
aW4gdGhlIHBhY2tldAorIGFmdGVyIHN1YnRyYWN0aW5nIHRoZSAob3B0aW9uYWwpIHBhZGRpbmcu
CitUaGVuIHRoZSBjb21wcmVzc2VkIGxlbmd0aCBvZiBlYWNoIGZyYW1lIGluIGJ5dGVzIGlzIGVx
dWFsIHRvIFIvTS4KK1RoZSB2YWx1ZSBSIE1VU1QgYmUgYSBub24tbmVnYXRpdmUgaW50ZWdlciBt
dWx0aXBsZSBvZiBNJm5ic3A7W1I2XS4KK1RoZSBjb21wcmVzc2VkIGRhdGEgZm9yIGFsbCBNIGZy
YW1lcyBmb2xsb3dzLCBlYWNoIG9mIHNpemUKKyBSL00mbmJzcDtieXRlcywgYXMgaWxsdXN0cmF0
ZWQgaW4gPHhyZWYgdGFyZ2V0PSJjb2RlM2Nicl9wYWNrZXQiLz4uCis8L3Q+CisKKzxmaWd1cmUg
YW5jaG9yPSJjb2RlM2Nicl9wYWNrZXQiIHRpdGxlPSJBIENCUiBDb2RlIDMgUGFja2V0IiBhbGln
bj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAg
ICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAw
IDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDgg
OSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rCit8IGNvbmZpZyAgfHN8MXwxfDB8cHwgICAgIE0gICAgIHwgIFBhZGRp
bmcgbGVuZ3RoIChPcHRpb25hbCkgICAgOgorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAg
ICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxIChSL00gYnl0ZXMpLi4uICAgICAgICAgICAgICAgOgor
fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgIENvbXByZXNzZWQg
ZnJhbWUgMiAoUi9NIGJ5dGVzKS4uLiAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
KworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwKKzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAg
ICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSBNIChSL00gYnl0ZXMpLi4uICAgICAgICAgICAg
ICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rCis6ICAgICAgICAgICAgICAgICAgT3B1cyBQYWRkaW5n
IChPcHRpb25hbCkuLi4gICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29y
az4KKzwvZmlndXJlPgorCis8dCBhbmNob3I9IlI3Ij4KK0luIHRoZSBWQlIgY2FzZSwgdGhlIChv
cHRpb25hbCkgcGFkZGluZyBsZW5ndGggaXMgZm9sbG93ZWQgYnkgTS0xIGZyYW1lCisgbGVuZ3Ro
cyAoaW5kaWNhdGVkIGJ5ICJOMSIgdG8gIk5bTS0xXSIgaW4gPHhyZWYgdGFyZ2V0PSdjb2RlM3Zi
cl9wYWNrZXQnLz4pLCBlYWNoIGVuY29kZWQgaW4gYQorIG9uZS0gb3IgdHdvLWJ5dGUgc2VxdWVu
Y2UgYXMgZGVzY3JpYmVkIGFib3ZlLgorVGhlIHBhY2tldCBNVVNUIGNvbnRhaW4gZW5vdWdoIGRh
dGEgZm9yIHRoZSBNLTEgbGVuZ3RocyBhZnRlciByZW1vdmluZyB0aGUKKyAob3B0aW9uYWwpIHBh
ZGRpbmcsIGFuZCB0aGUgc3VtIG9mIHRoZXNlIGxlbmd0aHMgTVVTVCBiZSBubyBsYXJnZXIgdGhh
biB0aGUKKyBudW1iZXIgb2YgYnl0ZXMgcmVtYWluaW5nIGluIHRoZSBwYWNrZXQgYWZ0ZXIgZGVj
b2RpbmcgdGhlbSZuYnNwO1tSN10uCitUaGUgY29tcHJlc3NlZCBkYXRhIGZvciBhbGwgTSBmcmFt
ZXMgZm9sbG93cywgZWFjaCBmcmFtZSBjb25zaXN0aW5nIG9mIHRoZQorIGluZGljYXRlZCBudW1i
ZXIgb2YgYnl0ZXMsIHdpdGggdGhlIGZpbmFsIGZyYW1lIGNvbnN1bWluZyBhbnkgcmVtYWluaW5n
IGJ5dGVzCisgYmVmb3JlIHRoZSBmaW5hbCBwYWRkaW5nLCBhcyBpbGx1c3RyYXRlZCBpbiA8eHJl
ZiB0YXJnZXQ9ImNvZGUzY2JyX3BhY2tldCIvPi4KK1RoZSBudW1iZXIgb2YgaGVhZGVyIGJ5dGVz
IChUT0MgYnl0ZSwgZnJhbWUgY291bnQgYnl0ZSwgcGFkZGluZyBsZW5ndGggYnl0ZXMsCisgYW5k
IGZyYW1lIGxlbmd0aCBieXRlcyksIHBsdXMgdGhlIHNpZ25hbGVkIGxlbmd0aCBvZiB0aGUgZmly
c3QgTS0xIGZyYW1lcyB0aGVtc2VsdmVzLAorIHBsdXMgdGhlIHNpZ25hbGVkIGxlbmd0aCBvZiB0
aGUgcGFkZGluZyBNVVNUIGJlIG5vIGxhcmdlciB0aGFuIE4sIHRoZSB0b3RhbCBzaXplIG9mIHRo
ZQorIHBhY2tldC4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9ImNvZGUzdmJyX3BhY2tldCIgdGl0
bGU9IkEgVkJSIENvZGUgMyBQYWNrZXQiIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAg
ICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0
IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgY29uZmlnICB8
c3wxfDF8MXxwfCAgICAgTSAgICAgfCBQYWRkaW5nIGxlbmd0aCAoT3B0aW9uYWwpICAgICA6Cisr
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKworOiBOMSAoMS0yIGJ5dGVzKTogTjIgKDEtMiBieXRlcyk6ICAgICAuLi4gICAgICAg
OiAgICAgTltNLTFdICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgIENv
bXByZXNzZWQgZnJhbWUgMSAoTjEgYnl0ZXMpLi4uICAgICAgICAgICAgICAgIDoKK3wgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDIg
KE4yIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAg
ICAgICAgICAgIENvbXByZXNzZWQgZnJhbWUgTS4uLiAgICAgICAgICAgICAgICAgICAgIDoKK3wg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKworOiAgICAgICAgICAgICAgICAgIE9wdXMgUGFkZGluZyAoT3B0aW9u
YWwpLi4uICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2Zp
Z3VyZT4KKzwvc2VjdGlvbj4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJleGFtcGxl
cyIgdGl0bGU9IkV4YW1wbGVzIj4KKzx0PgorU2ltcGxlc3QgY2FzZSwgb25lIE5CIG1vbm8gMjAm
bmJzcDttcyBTSUxLIGZyYW1lOgorPC90PgorCis8ZmlndXJlIGFuY2hvcj0nZnJhbWluZ19leGFt
cGxlXzEnPgorPGFydHdvcms+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAg
ICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkg
MCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wg
ICAgMSAgICB8MHwwfDB8ICAgICAgICAgICAgICAgY29tcHJlc3NlZCBkYXRhLi4uICAgICAgICAg
ICAgICA6CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzx0PgorVHdvIEZC
IG1vbm8gNSZuYnNwO21zIENFTFQgZnJhbWVzIG9mIHRoZSBzYW1lIGNvbXByZXNzZWQgc2l6ZToK
KzwvdD4KKworPGZpZ3VyZSBhbmNob3I9J2ZyYW1pbmdfZXhhbXBsZV8yJz4KKzxhcnR3b3JrPjwh
W0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAg
ICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkg
MCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgMjkgICAgfDB8MHwxfCAgICAg
ICAgICAgICAgIGNvbXByZXNzZWQgZGF0YS4uLiAgICAgICAgICAgICAgOgorKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11d
PjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8dD4KK1R3byBGQiBtb25vIDIwJm5ic3A7bXMgSHli
cmlkIGZyYW1lcyBvZiBkaWZmZXJlbnQgY29tcHJlc3NlZCBzaXplOgorPC90PgorCis8ZmlndXJl
IGFuY2hvcj0nZnJhbWluZ19leGFtcGxlXzMnPgorPGFydHdvcms+PCFbQ0RBVEFbCisgMCAgICAg
ICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgMwor
IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcg
OCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSsKK3wgICAxNSAgICB8MHwxfDF8MXwwfCAgICAgMiAgICAgfCAgICAg
IE4xICAgICAgIHwgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgICAgICAg
ICAgICAgY29tcHJlc3NlZCBkYXRhLi4uICAgICAgICAgICAgICAgICAgICAgIDoKKystKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHQ+CitGb3VyIEZCIHN0ZXJlbyAyMCZuYnNw
O21zIENFTFQgZnJhbWVzIG9mIHRoZSBzYW1lIGNvbXByZXNzZWQgc2l6ZToKKzwvdD4KKworPGZp
Z3VyZSBhbmNob3I9J2ZyYW1pbmdfZXhhbXBsZV80Jz4KKzxhcnR3b3JrPjwhW0NEQVRBWworIDAg
ICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgICAg
IDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUg
NiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgMzEgICAgfDF8MXwxfDB8MHwgICAgIDQgICAgIHwg
ICAgICBjb21wcmVzc2VkIGRhdGEuLi4gICAgICAgOgorKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK11dPjwvYXJ0d29yaz4K
KzwvZmlndXJlPgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Im1hbGZvcm1lZC1wYWNr
ZXRzIiB0aXRsZT0iUmVjZWl2aW5nIE1hbGZvcm1lZCBQYWNrZXRzIj4KKzx0PgorQSByZWNlaXZl
ciBNVVNUIE5PVCBwcm9jZXNzIHBhY2tldHMgd2hpY2ggdmlvbGF0ZSBhbnkgb2YgdGhlIHJ1bGVz
IGFib3ZlIGFzCisgbm9ybWFsIE9wdXMgcGFja2V0cy4KK1RoZXkgYXJlIHJlc2VydmVkIGZvciBm
dXR1cmUgYXBwbGljYXRpb25zLCBzdWNoIGFzIGluLWJhbmQgaGVhZGVycyAoY29udGFpbmluZwor
IG1ldGFkYXRhLCBldGMuKS4KK1BhY2tldHMgd2hpY2ggdmlvbGF0ZSB0aGVzZSBjb25zdHJhaW50
cyBtYXkgY2F1c2UgaW1wbGVtZW50YXRpb25zIG9mCisgPHNwYW54IHN0eWxlPSJlbXBoIj50aGlz
PC9zcGFueD4gc3BlY2lmaWNhdGlvbiB0byB0cmVhdCB0aGVtIGFzIG1hbGZvcm1lZCwgYW5kCisg
ZGlzY2FyZCB0aGVtLgorPC90PgorPHQ+CitUaGVzZSBjb25zdHJhaW50cyBhcmUgc3VtbWFyaXpl
ZCBoZXJlIGZvciByZWZlcmVuY2U6Cis8bGlzdCBzdHlsZT0iZm9ybWF0IFtSJWRdIj4KKzx0PlBh
Y2tldHMgYXJlIGF0IGxlYXN0IG9uZSBieXRlLjwvdD4KKzx0Pk5vIGltcGxpY2l0IGZyYW1lIGxl
bmd0aCBpcyBsYXJnZXIgdGhhbiAxMjc1IGJ5dGVzLjwvdD4KKzx0PkNvZGUgMSBwYWNrZXRzIGhh
dmUgYW4gb2RkIHRvdGFsIGxlbmd0aCwgTiwgc28gdGhhdCAoTi0xKS8yIGlzIGFuCisgaW50ZWdl
ci48L3Q+Cis8dD5Db2RlIDIgcGFja2V0cyBoYXZlIGVub3VnaCBieXRlcyBhZnRlciB0aGUgVE9D
IGZvciBhIHZhbGlkIGZyYW1lCisgbGVuZ3RoLCBhbmQgdGhhdCBsZW5ndGggaXMgbm8gbGFyZ2Vy
IHRoYW4gdGhlIG51bWJlciBvZiBieXRlcyByZW1haW5pbmcgaW4gdGhlCisgcGFja2V0LjwvdD4K
Kzx0PkNvZGUgMyBwYWNrZXRzIGNvbnRhaW4gYXQgbGVhc3Qgb25lIGZyYW1lLCBidXQgbm8gbW9y
ZSB0aGFuIDEyMCZuYnNwO21zCisgb2YgYXVkaW8gdG90YWwuPC90PgorPHQ+VGhlIGxlbmd0aCBv
ZiBhIENCUiBjb2RlIDMgcGFja2V0LCBOLCBpcyBhdCBsZWFzdCB0d28gYnl0ZXMsIHRoZSBudW1i
ZXIgb2YKKyBieXRlcyBhZGRlZCB0byBpbmRpY2F0ZSB0aGUgcGFkZGluZyBzaXplIHBsdXMgdGhl
IHRyYWlsaW5nIHBhZGRpbmcgYnl0ZXMKKyB0aGVtc2VsdmVzLCBQLCBpcyBubyBtb3JlIHRoYW4g
Ti0yLCBhbmQgdGhlIGZyYW1lIGNvdW50LCBNLCBzYXRpc2ZpZXMKKyB0aGUgY29uc3RyYWludCB0
aGF0IChOLTItUCkgaXMgYSBub24tbmVnYXRpdmUgaW50ZWdlciBtdWx0aXBsZSBvZiBNLjwvdD4K
Kzx0PlZCUiBjb2RlIDMgcGFja2V0cyBhcmUgbGFyZ2UgZW5vdWdoIHRvIGNvbnRhaW4gYWxsIHRo
ZSBoZWFkZXIgYnl0ZXMgKFRPQworIGJ5dGUsIGZyYW1lIGNvdW50IGJ5dGUsIGFueSBwYWRkaW5n
IGxlbmd0aCBieXRlcywgYW5kIGFueSBmcmFtZSBsZW5ndGggYnl0ZXMpLAorIHBsdXMgdGhlIGxl
bmd0aCBvZiB0aGUgZmlyc3QgTS0xIGZyYW1lcywgcGx1cyBhbnkgdHJhaWxpbmcgcGFkZGluZyBi
eXRlcy48L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNl
Y3Rpb24gdGl0bGU9Ik9wdXMgRGVjb2RlciI+Cis8dD4KK1RoZSBPcHVzIGRlY29kZXIgY29uc2lz
dHMgb2YgdHdvIG1haW4gYmxvY2tzOiB0aGUgU0lMSyBkZWNvZGVyIGFuZCB0aGUgQ0VMVAorIGRl
Y29kZXIuCitBdCBhbnkgZ2l2ZW4gdGltZSwgb25lIG9yIGJvdGggb2YgdGhlIFNJTEsgYW5kIENF
TFQgZGVjb2RlcnMgbWF5IGJlIGFjdGl2ZS4KK1RoZSBvdXRwdXQgb2YgdGhlIE9wdXMgZGVjb2Rl
IGlzIHRoZSBzdW0gb2YgdGhlIG91dHB1dHMgZnJvbSB0aGUgU0lMSyBhbmQgQ0VMVAorIGRlY29k
ZXJzIHdpdGggcHJvcGVyIHNhbXBsZSByYXRlIGNvbnZlcnNpb24gYW5kIGRlbGF5IGNvbXBlbnNh
dGlvbiBvbiB0aGUgU0lMSworIHNpZGUsIGFuZCBvcHRpb25hbCBkZWNpbWF0aW9uICh3aGVuIGRl
Y29kaW5nIHRvIHNhbXBsZSByYXRlcyBsZXNzIHRoYW4KKyA0OCZuYnNwO2tIeikgb24gdGhlIENF
TFQgc2lkZSwgYXMgaWxsdXN0cmF0ZWQgaW4gdGhlIGJsb2NrIGRpYWdyYW0gYmVsb3cuCis8L3Q+
Cis8ZmlndXJlPgorPGFydHdvcms+Cis8IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAgICAg
ICArLS0tLS0tLS0tKyAgICArLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgICAgICAgICAgICAg
IHwgIFNJTEsgICB8ICAgIHwgICBTYW1wbGUgICB8CisgICAgICAgICAgICAgICAgICAgICAgKy0+
fCBEZWNvZGVyIHwtLS0+fCAgICBSYXRlICAgIHwtLS0tKworQml0LSAgICArLS0tLS0tLS0tKyAg
IHwgIHwgICAgICAgICB8ICAgIHwgQ29udmVyc2lvbiB8ICAgIHYKK3N0cmVhbSAgfCAgUmFuZ2Ug
IHwtLS0rICArLS0tLS0tLS0tKyAgICArLS0tLS0tLS0tLS0tKyAgLy0tLVwgIEF1ZGlvCistLS0t
LS0tPnwgRGVjb2RlciB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgKyB8
LS0tLS0tPgorICAgICAgICB8ICAgICAgICAgfC0tLSsgICstLS0tLS0tLS0rICAgICstLS0tLS0t
LS0tLS0rICBcLS0tLworICAgICAgICArLS0tLS0tLS0tKyAgIHwgIHwgIENFTFQgICB8ICAgIHwg
RGVjaW1hdGlvbiB8ICAgIF4KKyAgICAgICAgICAgICAgICAgICAgICArLT58IERlY29kZXIgfC0t
LT58IChPcHRpb25hbCkgfC0tLS0rCisgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAg
IHwgICAgfCAgICAgICAgICAgIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0t
KyAgICArLS0tLS0tLS0tLS0tKworXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPHNlY3Rp
b24gYW5jaG9yPSJyYW5nZS1kZWNvZGVyIiB0aXRsZT0iUmFuZ2UgRGVjb2RlciI+Cis8dD4KK09w
dXMgdXNlcyBhbiBlbnRyb3B5IGNvZGVyIGJhc2VkIG9uIHJhbmdlIGNvZGluZyA8eHJlZiB0YXJn
ZXQ9InJhbmdlLWNvZGluZyI+PC94cmVmPgorPHhyZWYgdGFyZ2V0PSJNYXJ0aW43OSI+PC94cmVm
PiwKK3doaWNoIGlzIGl0c2VsZiBhIHJlZGlzY292ZXJ5IG9mIHRoZSBGSUZPIGFyaXRobWV0aWMg
Y29kZSBpbnRyb2R1Y2VkIGJ5IDx4cmVmIHRhcmdldD0iY29kaW5nLXRoZXNpcyI+PC94cmVmPi4K
K0l0IGlzIHZlcnkgc2ltaWxhciB0byBhcml0aG1ldGljIGVuY29kaW5nLCBleGNlcHQgdGhhdCBl
bmNvZGluZyBpcyBkb25lIHdpdGgKK2RpZ2l0cyBpbiBhbnkgYmFzZSBpbnN0ZWFkIG9mIHdpdGgg
Yml0cywKK3NvIGl0IGlzIGZhc3RlciB3aGVuIHVzaW5nIGxhcmdlciBiYXNlcyAoaS5lLiwgYSBi
eXRlKS4gQWxsIG9mIHRoZQorY2FsY3VsYXRpb25zIGluIHRoZSByYW5nZSBjb2RlciBtdXN0IHVz
ZSBiaXQtZXhhY3QgaW50ZWdlciBhcml0aG1ldGljLgorPC90PgorPHQ+CitTeW1ib2xzIG1heSBh
bHNvIGJlIGNvZGVkIGFzICJyYXcgYml0cyIgcGFja2VkIGRpcmVjdGx5IGludG8gdGhlIGJpdHN0
cmVhbSwKKyBieXBhc3NpbmcgdGhlIHJhbmdlIGNvZGVyLgorVGhlc2UgYXJlIHBhY2tlZCBiYWNr
d2FyZHMgc3RhcnRpbmcgYXQgdGhlIGVuZCBvZiB0aGUgZnJhbWUsIGFzIGlsbHVzdHJhdGVkIGlu
CisgPHhyZWYgdGFyZ2V0PSJyYXdiaXRzLWV4YW1wbGUiLz4uCitUaGlzIHJlZHVjZXMgY29tcGxl
eGl0eSBhbmQgbWFrZXMgdGhlIHN0cmVhbSBtb3JlIHJlc2lsaWVudCB0byBiaXQgZXJyb3JzLCBh
cworIGNvcnJ1cHRpb24gaW4gdGhlIHJhdyBiaXRzIHdpbGwgbm90IGRlc3luY2hyb25pemUgdGhl
IGRlY29kaW5nIHByb2Nlc3MsIHVubGlrZQorIGNvcnJ1cHRpb24gaW4gdGhlIGlucHV0IHRvIHRo
ZSByYW5nZSBkZWNvZGVyLgorUmF3IGJpdHMgYXJlIG9ubHkgdXNlZCBpbiB0aGUgQ0VMVCBsYXll
ci4KKzwvdD4KKworPGZpZ3VyZSBhbmNob3I9InJhd2JpdHMtZXhhbXBsZSIgdGl0bGU9IklsbHVz
dHJhdGl2ZSBleGFtcGxlIG9mIHBhY2tpbmcgcmFuZ2UKKyBjb2RlciBhbmQgcmF3IGJpdHMgZGF0
YSI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAwICAgICAgICAgICAgICAg
ICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAgICAzCisgMCAxIDIgMyA0
IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxCisr
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKworfCBSYW5nZSBjb2RlciBkYXRhIChwYWNrZWQgTVNCIHRvIExTQikgLT4gICAgICAg
ICAgICAgICAgICAgICAgIDoKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICArCis6ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOgorKyAgICAgKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKKzogICAgIHwg
PC0gQm91bmRhcnkgb2NjdXJzIGF0IGFuIGFyYml0cmFyeSBiaXQgcG9zaXRpb24gICAgICAgICA6
CisrLSstKy0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKworOiAgICAgICAgICAgICAgICAgICAgICAgICAgPC0gUmF3IGJpdHMgZGF0YSAo
cGFja2VkIExTQiB0byBNU0IpIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4K
KworPHQ+CitFYWNoIHN5bWJvbCBjb2RlZCBieSB0aGUgcmFuZ2UgY29kZXIgaXMgZHJhd24gZnJv
bSBhIGZpbml0ZSBhbHBoYWJldCBhbmQgY29kZWQKKyBpbiBhIHNlcGFyYXRlICJjb250ZXh0Iiwg
d2hpY2ggZGVzY3JpYmVzIHRoZSBzaXplIG9mIHRoZSBhbHBoYWJldCBhbmQgdGhlCisgcmVsYXRp
dmUgZnJlcXVlbmN5IG9mIGVhY2ggc3ltYm9sIGluIHRoYXQgYWxwaGFiZXQuCis8L3Q+Cis8dD4K
K1N1cHBvc2UgdGhlcmUgaXMgYSBjb250ZXh0IHdpdGggbiBzeW1ib2xzLCBpZGVudGlmaWVkIHdp
dGggYW4gaW5kZXggdGhhdCByYW5nZXMKKyBmcm9tIDAgdG8gbi0xLgorVGhlIHBhcmFtZXRlcnMg
bmVlZGVkIHRvIGVuY29kZSBvciBkZWNvZGUgc3ltYm9sIGsgaW4gdGhpcyBjb250ZXh0IGFyZQor
IHJlcHJlc2VudGVkIGJ5IGEgdGhyZWUtdHVwbGUgKGZsW2tdLCZuYnNwO2ZoW2tdLCZuYnNwO2Z0
KSwgd2l0aAorIDAmbmJzcDsmbHQ7PSZuYnNwO2ZsW2tdJm5ic3A7Jmx0OyZuYnNwO2ZoW2tdJm5i
c3A7Jmx0Oz0mbmJzcDtmdCZuYnNwOyZsdDs9Jm5ic3A7NjU1MzUuCitUaGUgdmFsdWVzIG9mIHRo
aXMgdHVwbGUgYXJlIGRlcml2ZWQgZnJvbSB0aGUgcHJvYmFiaWxpdHkgbW9kZWwgZm9yIHRoZQor
IHN5bWJvbCwgcmVwcmVzZW50ZWQgYnkgdHJhZGl0aW9uYWwgImZyZXF1ZW5jeSBjb3VudHMiLgor
QmVjYXVzZSBPcHVzIHVzZXMgc3RhdGljIGNvbnRleHRzIHRoZXNlIGFyZSBub3QgdXBkYXRlZCBh
cyBzeW1ib2xzIGFyZSBkZWNvZGVkLgorTGV0IGZbaV0gYmUgdGhlIGZyZXF1ZW5jeSBvZiBzeW1i
b2wgaS4KK1RoZW4gdGhlIHRocmVlLXR1cGxlIGNvcnJlc3BvbmRpbmcgdG8gc3ltYm9sIGsgaXMg
Z2l2ZW4gYnkKKzwvdD4KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0i
Y2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgay0xICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBuLTEKKyAgICAgICAgX18gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBfXworZmxba10gPSBcICBmW2ldLCAgZmhba10gPSBmbFtrXSArIGZba10sICBmdCA9IFwgIGZb
aV0KKyAgICAgICAgL18gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvXworICAg
ICAgICBpPTAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGk9MAorXV0+PC9hcnR3
b3JrPgorPC9maWd1cmU+Cis8dD4KK1RoZSByYW5nZSBkZWNvZGVyIGV4dHJhY3RzIHRoZSBzeW1i
b2xzIGFuZCBpbnRlZ2VycyBlbmNvZGVkIHVzaW5nIHRoZSByYW5nZQorIGVuY29kZXIgaW4gPHhy
ZWYgdGFyZ2V0PSJyYW5nZS1lbmNvZGVyIi8+LgorVGhlIHJhbmdlIGRlY29kZXIgbWFpbnRhaW5z
IGFuIGludGVybmFsIHN0YXRlIHZlY3RvciBjb21wb3NlZCBvZiB0aGUgdHdvLXR1cGxlCisgKHZh
bCwmbmJzcDtybmcpLCByZXByZXNlbnRpbmcgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgaGln
aCBlbmQgb2YgdGhlCisgY3VycmVudCByYW5nZSBhbmQgdGhlIGFjdHVhbCBjb2RlZCB2YWx1ZSwg
bWludXMgb25lLCBhbmQgdGhlIHNpemUgb2YgdGhlCisgY3VycmVudCByYW5nZSwgcmVzcGVjdGl2
ZWx5LgorQm90aCB2YWwgYW5kIHJuZyBhcmUgMzItYml0IHVuc2lnbmVkIGludGVnZXIgdmFsdWVz
LgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9InJhbmdlLWRlY29kZXItaW5pdCIgdGl0bGU9IlJh
bmdlIERlY29kZXIgSW5pdGlhbGl6YXRpb24iPgorPHQ+CitMZXQgYjAgYmUgdGhlIGZpcnN0IGlu
cHV0IGJ5dGUgKG9yIHplcm8gaWYgdGhlcmUgYXJlIG5vIGJ5dGVzIGluIHRoaXMgT3B1cworIGZy
YW1lKS4KK1RoZSBkZWNvZGVyIGluaXRpYWxpemVzIHJuZyB0byAxMjggYW5kIGluaXRpYWxpemVz
IHZhbCB0bworICgxMjcmbmJzcDstJm5ic3A7KGIwJmd0OyZndDsxKSksIHdoZXJlIChiMCZndDsm
Z3Q7MSkgaXMgdGhlIHRvcCA3IGJpdHMgb2YgdGhlCisgZmlyc3QgaW5wdXQgYnl0ZS4KK0l0IHNh
dmVzIHRoZSByZW1haW5pbmcgYml0LCAoYjAmYW1wOzEpLCBmb3IgdXNlIGluIHRoZSByZW5vcm1h
bGl6YXRpb24KKyBwcm9jZWR1cmUgZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0icmFuZ2UtZGVj
b2Rlci1yZW5vcm0iLz4sIHdoaWNoIHRoZQorIGRlY29kZXIgaW52b2tlcyBpbW1lZGlhdGVseSBh
ZnRlciBpbml0aWFsaXphdGlvbiB0byByZWFkIGFkZGl0aW9uYWwgYml0cyBhbmQKKyBlc3RhYmxp
c2ggdGhlIGludmFyaWFudCB0aGF0IHJuZyZuYnNwOyZndDsmbmJzcDsyKioyMy4KKzwvdD4KKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJkZWNvZGluZy1zeW1ib2xzIiB0aXRsZT0iRGVj
b2RpbmcgU3ltYm9scyI+Cis8dD4KK0RlY29kaW5nIGEgc3ltYm9sIGlzIGEgdHdvLXN0ZXAgcHJv
Y2Vzcy4KK1RoZSBmaXJzdCBzdGVwIGRldGVybWluZXMgYSAxNi1iaXQgdW5zaWduZWQgdmFsdWUg
ZnMsIHdoaWNoIGxpZXMgd2l0aGluIHRoZQorIHJhbmdlIG9mIHNvbWUgc3ltYm9sIGluIHRoZSBj
dXJyZW50IGNvbnRleHQuCitUaGUgc2Vjb25kIHN0ZXAgdXBkYXRlcyB0aGUgcmFuZ2UgZGVjb2Rl
ciBzdGF0ZSB3aXRoIHRoZSB0aHJlZS10dXBsZQorIChmbFtrXSwmbmJzcDtmaFtrXSwmbmJzcDtm
dCkgY29ycmVzcG9uZGluZyB0byB0aGF0IHN5bWJvbC4KKzwvdD4KKzx0PgorVGhlIGZpcnN0IHN0
ZXAgaXMgaW1wbGVtZW50ZWQgYnkgZWNfZGVjb2RlKCkgKGVudGRlYy5jKSwgd2hpY2ggY29tcHV0
ZXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKKyAgICAgICAgICAgICAgIHZhbAorZnMgPSBmdCAtIG1pbigtLS0tLS0gKyAxLCBmdCkg
LgorICAgICAgICAgICAgICBybmcvZnQKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlIGRp
dmlzaW9ucyBoZXJlIGFyZSBpbnRlZ2VyIGRpdmlzaW9uLgorPC90PgorPHQ+CitUaGUgZGVjb2Rl
ciB0aGVuIGlkZW50aWZpZXMgdGhlIHN5bWJvbCBpbiB0aGUgY3VycmVudCBjb250ZXh0IGNvcnJl
c3BvbmRpbmcgdG8KKyBmczsgaS5lLiwgdGhlIHZhbHVlIG9mIGsgd2hvc2UgdGhyZWUtdHVwbGUg
KGZsW2tdLCZuYnNwO2ZoW2tdLCZuYnNwO2Z0KQorIHNhdGlzZmllcyBmbFtrXSZuYnNwOyZsdDs9
Jm5ic3A7ZnMmbmJzcDsmbHQ7Jm5ic3A7Zmhba10uCitJdCB1c2VzIHRoaXMgdHVwbGUgdG8gdXBk
YXRlIHZhbCBhY2NvcmRpbmcgdG8KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBh
bGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgIHJuZwordmFsID0gdmFsIC0gLS0t
ICogKGZ0IC0gZmhba10pIC4KKyAgICAgICAgICAgIGZ0CitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KK0lmIGZsW2tdIGlzIGdyZWF0ZXIgdGhhbiB6ZXJvLCB0aGVuIHRoZSBkZWNvZGVyIHVwZGF0
ZXMgcm5nIHVzaW5nCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNl
bnRlciI+PCFbQ0RBVEFbCisgICAgICBybmcKK3JuZyA9IC0tLSAqIChmaFtrXSAtIGZsW2tdKSAu
CisgICAgICBmdAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitPdGhlcndpc2UsIGl0IHVwZGF0
ZXMgcm5nIHVzaW5nCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNl
bnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICBybmcKK3JuZyA9IHJuZyAtIC0tLSAqIChmdCAt
IGZoW2tdKSAuCisgICAgICAgICAgICBmdAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+
Cis8dD4KK1VzaW5nIGEgc3BlY2lhbCBjYXNlIGZvciB0aGUgZmlyc3Qgc3ltYm9sIChyYXRoZXIg
dGhhbiB0aGUgbGFzdCBzeW1ib2wsIGFzIGlzCisgY29tbW9ubHkgZG9uZSBpbiBvdGhlciBhcml0
aG1ldGljIGNvZGVycykgZW5zdXJlcyB0aGF0IGFsbCB0aGUgdHJ1bmNhdGlvbgorIGVycm9yIGZy
b20gdGhlIGZpbml0ZSBwcmVjaXNpb24gYXJpdGhtZXRpYyBhY2N1bXVsYXRlcyBpbiBzeW1ib2wg
MC4KK1RoaXMgbWFrZXMgdGhlIGNvc3Qgb2YgY29kaW5nIGEgMCBzbGlnaHRseSBzbWFsbGVyLCBv
biBhdmVyYWdlLCB0aGFuIGl0cworIGVzdGltYXRlZCBwcm9iYWJpbGl0eSBpbmRpY2F0ZXMgYW5k
IG1ha2VzIHRoZSBjb3N0IG9mIGNvZGluZyBhbnkgb3RoZXIgc3ltYm9sCisgc2xpZ2h0bHkgbGFy
Z2VyLgorV2hlbiBjb250ZXh0cyBhcmUgZGVzaWduZWQgc28gdGhhdCAwIGlzIHRoZSBtb3N0IHBy
b2JhYmxlIHN5bWJvbCwgd2hpY2ggaXMKKyBvZnRlbiB0aGUgY2FzZSwgdGhpcyBzdHJhdGVneSBt
aW5pbWl6ZXMgdGhlIGluZWZmaWNpZW5jeSBpbnRyb2R1Y2VkIGJ5IHRoZQorIGZpbml0ZSBwcmVj
aXNpb24uCitJdCBhbHNvIG1ha2VzIHNvbWUgb2YgdGhlIHNwZWNpYWwtY2FzZSBkZWNvZGluZyBy
b3V0aW5lcyBpbgorIDx4cmVmIHRhcmdldD0iZGVjb2RpbmctYWx0ZXJuYXRlIi8+IHBhcnRpY3Vs
YXJseSBzaW1wbGUuCis8L3Q+Cis8dD4KK0FmdGVyIHRoZSB1cGRhdGVzLCBpbXBsZW1lbnRlZCBi
eSBlY19kZWNfdXBkYXRlKCkgKGVudGRlYy5jKSwgdGhlIGRlY29kZXIKKyBub3JtYWxpemVzIHRo
ZSByYW5nZSB1c2luZyB0aGUgcHJvY2VkdXJlIGluIHRoZSBuZXh0IHNlY3Rpb24sIGFuZCByZXR1
cm5zIHRoZQorIGluZGV4IGsuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0icmFuZ2UtZGVjb2Rl
ci1yZW5vcm0iIHRpdGxlPSJSZW5vcm1hbGl6YXRpb24iPgorPHQ+CitUbyBub3JtYWxpemUgdGhl
IHJhbmdlLCB0aGUgZGVjb2RlciByZXBlYXRzIHRoZSBmb2xsb3dpbmcgcHJvY2VzcywgaW1wbGVt
ZW50ZWQKKyBieSBlY19kZWNfbm9ybWFsaXplKCkgKGVudGRlYy5jKSwgdW50aWwgcm5nJm5ic3A7
Jmd0OyZuYnNwOzIqKjIzLgorSWYgcm5nIGlzIGFscmVhZHkgZ3JlYXRlciB0aGFuIDIqKjIzLCB0
aGUgZW50aXJlIHByb2Nlc3MgaXMgc2tpcHBlZC4KK0ZpcnN0LCBpdCBzZXRzIHJuZyB0byAocm5n
Jmx0OyZsdDs4KS4KK1RoZW4gaXQgcmVhZHMgdGhlIG5leHQgYnl0ZSBvZiB0aGUgT3B1cyBmcmFt
ZSBhbmQgZm9ybXMgYW4gOC1iaXQgdmFsdWUgc3ltLAorIHVzaW5nIHRoZSBsZWZ0LW92ZXIgYml0
IGJ1ZmZlcmVkIGZyb20gdGhlIHByZXZpb3VzIGJ5dGUgYXMgdGhlIGhpZ2ggYml0CisgYW5kIHRo
ZSB0b3AgNyBiaXRzIG9mIHRoZSBieXRlIGp1c3QgcmVhZCBhcyB0aGUgb3RoZXIgNyBiaXRzIG9m
IHN5bS4KK1RoZSByZW1haW5pbmcgYml0IGluIHRoZSBieXRlIGp1c3QgcmVhZCBpcyBidWZmZXJl
ZCBmb3IgdXNlIGluIHRoZSBuZXh0CisgaXRlcmF0aW9uLgorSWYgbm8gbW9yZSBpbnB1dCBieXRl
cyByZW1haW4sIGl0IHVzZXMgemVybyBiaXRzIGluc3RlYWQuCitTZWUgPHhyZWYgdGFyZ2V0PSJy
YW5nZS1kZWNvZGVyLWluaXQiLz4gZm9yIHRoZSBpbml0aWFsaXphdGlvbiB1c2VkIHRvIHByb2Nl
c3MKKyB0aGUgZmlyc3QgYnl0ZS4KK1RoZW4sIGl0IHNldHMKKzxmaWd1cmUgYWxpZ249ImNlbnRl
ciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3ZhbCA9ICgodmFsPDw4KSAr
ICgyNTUtc3ltKSkgJiAweDdGRkZGRkZGIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90
PgorPHQ+CitJdCBpcyBub3JtYWwgYW5kIGV4cGVjdGVkIHRoYXQgdGhlIHJhbmdlIGRlY29kZXIg
d2lsbCByZWFkIHNldmVyYWwgYnl0ZXMKKyBpbnRvIHRoZSByYXcgYml0cyBkYXRhIChpZiBhbnkp
IGF0IHRoZSBlbmQgb2YgdGhlIHBhY2tldCBieSB0aGUgdGltZSB0aGUgZnJhbWUKKyBpcyBjb21w
bGV0ZWx5IGRlY29kZWQsIGFzIGlsbHVzdHJhdGVkIGluIDx4cmVmIHRhcmdldD0iZmluYWxpemUt
ZXhhbXBsZSIvPi4KK1RoaXMgc2FtZSBkYXRhIE1VU1QgYWxzbyBiZSByZXR1cm5lZCBhcyByYXcg
Yml0cyB3aGVuIHJlcXVlc3RlZC4KK1RoZSBlbmNvZGVyIGlzIGV4cGVjdGVkIHRvIHRlcm1pbmF0
ZSB0aGUgc3RyZWFtIGluIHN1Y2ggYSB3YXkgdGhhdCB0aGUgZGVjb2RlcgorIHdpbGwgZGVjb2Rl
IHRoZSBpbnRlbmRlZCB2YWx1ZXMgcmVnYXJkbGVzcyBvZiB0aGUgZGF0YSBjb250YWluZWQgaW4g
dGhlIHJhdworIGJpdHMuCis8eHJlZiB0YXJnZXQ9ImVuY29kZXItZmluYWxpemluZyIvPiBkZXNj
cmliZXMgYSBwcm9jZWR1cmUgZm9yIGRvaW5nIHRoaXMuCitJZiB0aGUgcmFuZ2UgZGVjb2RlciBj
b25zdW1lcyBhbGwgb2YgdGhlIGJ5dGVzIGJlbG9uZ2luZyB0byB0aGUgY3VycmVudCBmcmFtZSwK
KyBpdCBNVVNUIGNvbnRpbnVlIHRvIHVzZSB6ZXJvIHdoZW4gYW55IGZ1cnRoZXIgaW5wdXQgYnl0
ZXMgYXJlIHJlcXVpcmVkLCBldmVuCisgaWYgdGhlcmUgaXMgYWRkaXRpb25hbCBkYXRhIGluIHRo
ZSBjdXJyZW50IHBhY2tldCBmcm9tIHBhZGRpbmcgb3Igb3RoZXIKKyBmcmFtZXMuCis8L3Q+CisK
KzxmaWd1cmUgYW5jaG9yPSJmaW5hbGl6ZS1leGFtcGxlIiB0aXRsZT0iSWxsdXN0cmF0aXZlIGV4
YW1wbGUgb2YgcmF3IGJpdHMKKyBvdmVybGFwcGluZyByYW5nZSBjb2RlciBkYXRhIj4KKzxhcnR3
b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIG4gICAgICAgICAgICAgIG4rMSAgICAgICAg
ICAgICBuKzIgICAgICAgICAgICAgbiszCisgMCAxIDIgMyA0IDUgNiA3IDAgMSAyIDMgNCA1IDYg
NyAwIDEgMiAzIDQgNSA2IDcgMCAxIDIgMyA0IDUgNiA3CisrLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworOiAgICAgfCA8LS0t
LS0tLS0tLS0gT3ZlcmxhcCByZWdpb24gLS0tLS0tLS0tLS0tPiB8ICAgICAgICAgICAgIDoKKyst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rCisgICAgICBeICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IF4KKyAgICAgIHwgICBFbmQgb2YgZGF0YSBidWZmZXJlZCBieSB0aGUgcmFuZ2UgY29kZXIgfAor
Li4uLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAg
ICB8CisgICAgICB8IEVuZCBvZiBkYXRhIGNvbnN1bWVkIGJ5IHJhdyBiaXRzCisgICAgICArLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS4uLgor
XV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3NlY3Rpb24+Cis8L3NlY3Rpb24+CisKKzxzZWN0
aW9uIGFuY2hvcj0iZGVjb2RpbmctYWx0ZXJuYXRlIiB0aXRsZT0iQWx0ZXJuYXRlIERlY29kaW5n
IE1ldGhvZHMiPgorPHQ+CitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIHVzZXMgdGhyZWUg
YWRkaXRpb25hbCBkZWNvZGluZyBtZXRob2RzIHRoYXQgYXJlCisgZXhhY3RseSBlcXVpdmFsZW50
IHRvIHRoZSBhYm92ZSwgYnV0IG1ha2UgYXNzdW1wdGlvbnMgYW5kIHNpbXBsaWZpY2F0aW9ucyB0
aGF0CisgYWxsb3cgZm9yIGEgbW9yZSBlZmZpY2llbnQgaW1wbGVtZW50YXRpb24uCis8L3Q+Cis8
c2VjdGlvbiBhbmNob3I9ImVjX2RlY29kZV9iaW4iIHRpdGxlPSJlY19kZWNvZGVfYmluKCkiPgor
PHQ+CitUaGUgZmlyc3QgaXMgZWNfZGVjb2RlX2JpbigpIChlbnRkZWMuYyksIGRlZmluZWQgdXNp
bmcgdGhlIHBhcmFtZXRlciBmdGIKKyBpbnN0ZWFkIG9mIGZ0LgorSXQgaXMgbWF0aGVtYXRpY2Fs
bHkgZXF1aXZhbGVudCB0byBjYWxsaW5nIGVjX2RlY29kZSgpIHdpdGgKKyBmdCZuYnNwOz0mbmJz
cDsoMSZsdDsmbHQ7ZnRiKSwgYnV0IGF2b2lkcyBvbmUgb2YgdGhlIGRpdmlzaW9ucy4KKzwvdD4K
Kzwvc2VjdGlvbj4KKzxzZWN0aW9uIGFuY2hvcj0iZWNfZGVjX2JpdF9sb2dwIiB0aXRsZT0iZWNf
ZGVjX2JpdF9sb2dwKCkiPgorPHQ+CitUaGUgbmV4dCBpcyBlY19kZWNfYml0X2xvZ3AoKSAoZW50
ZGVjLmMpLCB3aGljaCBkZWNvZGVzIGEgc2luZ2xlIGJpbmFyeSBzeW1ib2wsCisgcmVwbGFjaW5n
IGJvdGggdGhlIGVjX2RlY29kZSgpIGFuZCBlY19kZWNfdXBkYXRlKCkgc3RlcHMuCitUaGUgY29u
dGV4dCBpcyBkZXNjcmliZWQgYnkgYSBzaW5nbGUgcGFyYW1ldGVyLCBsb2dwLCB3aGljaCBpcyB0
aGUgYWJzb2x1dGUKKyB2YWx1ZSBvZiB0aGUgYmFzZS0yIGxvZ2FyaXRobSBvZiB0aGUgcHJvYmFi
aWxpdHkgb2YgYSAiMSIuCitJdCBpcyBtYXRoZW1hdGljYWxseSBlcXVpdmFsZW50IHRvIGNhbGxp
bmcgZWNfZGVjb2RlKCkgd2l0aAorIGZ0Jm5ic3A7PSZuYnNwOygxJmx0OyZsdDtsb2dwKSwgZm9s
bG93ZWQgYnkgZWNfZGVjX3VwZGF0ZSgpIHdpdGgKKyB0aGUgMy10dXBsZSAoZmxba10mbmJzcDs9
Jm5ic3A7MCwKKyBmaFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7bG9ncCkmbmJzcDstJm5ic3A7
MSwKKyBmdCZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7bG9ncCkpIGlmIHRoZSByZXR1cm5lZCB2YWx1
ZQorIG9mIGZzIGlzIGxlc3MgdGhhbiAoMSZsdDsmbHQ7bG9ncCkmbmJzcDstJm5ic3A7MSAoYSAi
MCIgd2FzIGRlY29kZWQpLCBhbmQgd2l0aAorIChmbFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7
bG9ncCkmbmJzcDstJm5ic3A7MSwKKyBmaFtrXSZuYnNwOz0mbmJzcDtmdCZuYnNwOz0mbmJzcDso
MSZsdDsmbHQ7bG9ncCkpIG90aGVyd2lzZSAoYSAiMSIgd2FzCisgZGVjb2RlZCkuCitUaGUgaW1w
bGVtZW50YXRpb24gcmVxdWlyZXMgbm8gbXVsdGlwbGljYXRpb25zIG9yIGRpdmlzaW9ucy4KKzwv
dD4KKzwvc2VjdGlvbj4KKzxzZWN0aW9uIGFuY2hvcj0iZWNfZGVjX2ljZGYiIHRpdGxlPSJlY19k
ZWNfaWNkZigpIj4KKzx0PgorVGhlIGxhc3QgaXMgZWNfZGVjX2ljZGYoKSAoZW50ZGVjLmMpLCB3
aGljaCBkZWNvZGVzIGEgc2luZ2xlIHN5bWJvbCB3aXRoIGEKKyB0YWJsZS1iYXNlZCBjb250ZXh0
IG9mIHVwIHRvIDggYml0cywgYWxzbyByZXBsYWNpbmcgYm90aCB0aGUgZWNfZGVjb2RlKCkgYW5k
CisgZWNfZGVjX3VwZGF0ZSgpIHN0ZXBzLCBhcyB3ZWxsIGFzIHRoZSBzZWFyY2ggZm9yIHRoZSBk
ZWNvZGVkIHN5bWJvbCBpbiBiZXR3ZWVuLgorVGhlIGNvbnRleHQgaXMgZGVzY3JpYmVkIGJ5IHR3
byBwYXJhbWV0ZXJzLCBhbiBpY2RmCisgKCJpbnZlcnNlIiBjdW11bGF0aXZlIGRpc3RyaWJ1dGlv
biBmdW5jdGlvbikgdGFibGUgYW5kIGZ0Yi4KK0FzIHdpdGggZWNfZGVjb2RlX2JpbigpLCAoMSZs
dDsmbHQ7ZnRiKSBpcyBlcXVpdmFsZW50IHRvIGZ0LgoraWRjZltrXSwgb24gdGhlIG90aGVyIGhh
bmQsIHN0b3JlcyAoMSZsdDsmbHQ7ZnRiKS1maFtrXSwgd2hpY2ggaXMgZXF1YWwgdG8KKyAoMSZs
dDsmbHQ7ZnRiKSZuYnNwOy0mbmJzcDtmbFtrKzFdLgorZmxbMF0gaXMgYXNzdW1lZCB0byBiZSAw
LCBhbmQgdGhlIHRhYmxlIGlzIHRlcm1pbmF0ZWQgYnkgYSB2YWx1ZSBvZiAwICh3aGVyZQorIGZo
W2tdJm5ic3A7PT0mbmJzcDtmdCkuCis8L3Q+Cis8dD4KK1RoZSBmdW5jdGlvbiBpcyBtYXRoZW1h
dGljYWxseSBlcXVpdmFsZW50IHRvIGNhbGxpbmcgZWNfZGVjb2RlKCkgd2l0aAorIGZ0Jm5ic3A7
PSZuYnNwOygxJmx0OyZsdDtmdGIpLCB1c2luZyB0aGUgcmV0dXJuZWQgdmFsdWUgZnMgdG8gc2Vh
cmNoIHRoZSB0YWJsZQorIGZvciB0aGUgZmlyc3QgZW50cnkgd2hlcmUgZnMmbmJzcDsmbHQ7Jm5i
c3A7KDEmbHQ7Jmx0O2Z0YiktaWNkZltrXSwgYW5kCisgY2FsbGluZyBlY19kZWNfdXBkYXRlKCkg
d2l0aAorIGZsW2tdJm5ic3A7PSZuYnNwOygxJmx0OyZsdDtmdGIpJm5ic3A7LSZuYnNwO2ljZGZb
ay0xXSAob3IgMAorIGlmIGsmbmJzcDs9PSZuYnNwOzApLCBmaFtrXSZuYnNwOz0mbmJzcDsoMSZs
dDsmbHQ7ZnRiKSZuYnNwOy0mbmJzcDtpZGNmW2tdLAorIGFuZCBmdCZuYnNwOz0mbmJzcDsoMSZs
dDsmbHQ7ZnRiKS4KK0NvbWJpbmluZyB0aGUgc2VhcmNoIHdpdGggdGhlIHVwZGF0ZSBhbGxvd3Mg
dGhlIGRpdmlzaW9uIHRvIGJlIHJlcGxhY2VkIGJ5IGEKKyBzZXJpZXMgb2YgbXVsdGlwbGljYXRp
b25zICh3aGljaCBhcmUgdXN1YWxseSBtdWNoIGNoZWFwZXIpLCBhbmQgdXNpbmcgYW4KKyBpbnZl
cnNlIENERiBhbGxvd3MgdGhlIHVzZSBvZiBhbiBmdGIgYXMgbGFyZ2UgYXMgOCBpbiBhbiA4LWJp
dCB0YWJsZSB3aXRob3V0CisgYW55IHNwZWNpYWwgY2FzZXMuCitUaGlzIGlzIHRoZSBwcmltYXJ5
IGludGVyZmFjZSB3aXRoIHRoZSByYW5nZSBkZWNvZGVyIGluIHRoZSBTSUxLIGxheWVyLCB0aG91
Z2gKKyBpdCBpcyB1c2VkIGluIGEgZmV3IHBsYWNlcyBpbiB0aGUgQ0VMVCBsYXllciBhcyB3ZWxs
LgorPC90PgorPHQ+CitBbHRob3VnaCBpY2RmW2tdIGlzIG1vcmUgY29udmVuaWVudCBmb3IgdGhl
IGNvZGUsIHRoZSBmcmVxdWVuY3kgY291bnRzLCBmW2tdLAorIGFyZSBhIG1vcmUgbmF0dXJhbCBy
ZXByZXNlbnRhdGlvbiBvZiB0aGUgcHJvYmFiaWxpdHkgZGlzdHJpYnV0aW9uIGZ1bmN0aW9uCisg
KFBERikgZm9yIGEgZ2l2ZW4gc3ltYm9sLgorVGhlcmVmb3JlIHRoaXMgZHJhZnQgbGlzdHMgdGhl
IGxhdHRlciwgbm90IHRoZSBmb3JtZXIsIHdoZW4gZGVzY3JpYmluZyB0aGUKKyBjb250ZXh0IGlu
IHdoaWNoIGEgc3ltYm9sIGlzIGNvZGVkIGFzIGEgbGlzdCwgZS5nLiwgezQsIDQsIDQsIDR9LzE2
IGZvciBhCisgdW5pZm9ybSBjb250ZXh0IHdpdGggZm91ciBwb3NzaWJsZSB2YWx1ZXMgYW5kIGZ0
Jm5ic3A7PSZuYnNwOzE2LgorVGhlIHZhbHVlIG9mIGZ0IGFmdGVyIHRoZSBzbGFzaCBpcyBhbHdh
eXMgdGhlIHN1bSBvZiB0aGUgZW50cmllcyBpbiB0aGUgUERGLAorIGJ1dCBpcyBpbmNsdWRlZCBm
b3IgY29udmVuaWVuY2UuCitDb250ZXh0cyB3aXRoIGlkZW50aWNhbCBwcm9iYWJpbGl0aWVzLCBm
W2tdL2Z0LCBidXQgZGlmZmVyZW50IHZhbHVlcyBvZiBmdAorIChvciBlcXVpdmFsZW50bHksIGZ0
YikgYXJlIG5vdCB0aGUgc2FtZSwgYW5kIGNhbm5vdCwgaW4gZ2VuZXJhbCwgYmUgdXNlZCBpbgor
IHBsYWNlIG9mIG9uZSBhbm90aGVyLgorQW4gaWNkZiB0YWJsZSBpcyBhbHNvIG5vdCBjYXBhYmxl
IG9mIHJlcHJlc2VudGluZyBhIFBERiB3aGVyZSB0aGUgZmlyc3Qgc3ltYm9sCisgaGFzIDAgcHJv
YmFiaWxpdHkuCitJbiBzdWNoIGNvbnRleHRzLCBlY19kZWNfaWNkZigpIGNhbiBkZWNvZGUgdGhl
IHN5bWJvbCBieSB1c2luZyBhIHRhYmxlIHRoYXQKKyBkcm9wcyB0aGUgZW50cmllcyBmb3IgYW55
IGluaXRpYWwgemVyby1wcm9iYWJpbGl0eSB2YWx1ZXMgYW5kIGFkZGluZyB0aGUKKyBjb25zdGFu
dCBvZmZzZXQgb2YgdGhlIGZpcnN0IHZhbHVlIHdpdGggYSBub24temVybyBwcm9iYWJpbGl0eSB0
byBpdHMgcmV0dXJuCisgdmFsdWUuCis8L3Q+Cis8L3NlY3Rpb24+Cis8L3NlY3Rpb24+CisKKzxz
ZWN0aW9uIGFuY2hvcj0iZGVjb2RpbmctYml0cyIgdGl0bGU9IkRlY29kaW5nIFJhdyBCaXRzIj4K
Kzx0PgorVGhlIHJhdyBiaXRzIHVzZWQgYnkgdGhlIENFTFQgbGF5ZXIgYXJlIHBhY2tlZCBhdCB0
aGUgZW5kIG9mIHRoZSBwYWNrZXQsIHdpdGgKKyB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQgYml0IG9m
IHRoZSBmaXJzdCB2YWx1ZSBwYWNrZWQgaW4gdGhlIGxlYXN0IHNpZ25pZmljYW50CisgYml0IG9m
IHRoZSBsYXN0IGJ5dGUsIGZpbGxpbmcgdXAgdG8gdGhlIG1vc3Qgc2lnbmlmaWNhbnQgYml0IGlu
IHRoZSBsYXN0IGJ5dGUsCisgY29udGludWluZyBvbiB0byB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQg
Yml0IG9mIHRoZSBwZW51bHRpbWF0ZSBieXRlLCBhbmQgc28gb24uCitUaGUgcmVmZXJlbmNlIGlt
cGxlbWVudGF0aW9uIHJlYWRzIHRoZW0gdXNpbmcgZWNfZGVjX2JpdHMoKSAoZW50ZGVjLmMpLgor
QmVjYXVzZSB0aGUgcmFuZ2UgZGVjb2RlciBtdXN0IHJlYWQgc2V2ZXJhbCBieXRlcyBhaGVhZCBp
biB0aGUgc3RyZWFtLCBhcworIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9InJhbmdlLWRlY29k
ZXItcmVub3JtIi8+LCB0aGUgaW5wdXQgY29uc3VtZWQgYnkgdGhlCisgcmF3IGJpdHMgbWF5IG92
ZXJsYXAgd2l0aCB0aGUgaW5wdXQgY29uc3VtZWQgYnkgdGhlIHJhbmdlIGNvZGVyLCBhbmQgYSBk
ZWNvZGVyCisgTVVTVCBhbGxvdyB0aGlzLgorVGhlIGZvcm1hdCBzaG91bGQgcmVuZGVyIGl0IGlt
cG9zc2libGUgdG8gYXR0ZW1wdCB0byByZWFkIG1vcmUgcmF3IGJpdHMgdGhhbgorIHRoZXJlIGFy
ZSBhY3R1YWwgYml0cyBpbiB0aGUgZnJhbWUsIHRob3VnaCBhIGRlY29kZXIgbWF5IHdpc2ggdG8g
Y2hlY2sgZm9yCisgdGhpcyBhbmQgcmVwb3J0IGFuIGVycm9yLgorPC90PgorPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiBhbmNob3I9ImVjX2RlY191aW50IiB0aXRsZT0iRGVjb2RpbmcgVW5pZm9ybWx5
IERpc3RyaWJ1dGVkIEludGVnZXJzIj4KKzx0PgorVGhlIGZ1bmN0aW9uIGVjX2RlY191aW50KCkg
KGVudGRlYy5jKSBkZWNvZGVzIG9uZSBvZiBmdCBlcXVpcHJvYmFibGUgdmFsdWVzIGluCisgdGhl
IHJhbmdlIDAgdG8gKGZ0Jm5ic3A7LSZuYnNwOzEpLCBpbmNsdXNpdmUsIGVhY2ggd2l0aCBhIGZy
ZXF1ZW5jeSBvZiAxLAorIHdoZXJlIGZ0IG1heSBiZSBhcyBsYXJnZSBhcyAoMioqMzImbmJzcDst
Jm5ic3A7MSkuCitCZWNhdXNlIGVjX2RlY29kZSgpIGlzIGxpbWl0ZWQgdG8gYSB0b3RhbCBmcmVx
dWVuY3kgb2YgKDIqKjE2Jm5ic3A7LSZuYnNwOzEpLAorIGl0IHNwbGl0cyB1cCB0aGUgdmFsdWUg
aW50byBhIHJhbmdlIGNvZGVkIHN5bWJvbCByZXByZXNlbnRpbmcgdXAgdG8gOCBvZiB0aGUKKyBo
aWdoIGJpdHMsIGFuZCwgaWYgbmVjZXNzYXJ5LCByYXcgYml0cyByZXByZXNlbnRpbmcgdGhlIHJl
bWFpbmRlciBvZiB0aGUKKyB2YWx1ZS4KK1RoZSBsaW1pdCBvZiA4IGJpdHMgaW4gdGhlIHJhbmdl
IGNvZGVkIHN5bWJvbCBpcyBhIHRyYWRlLW9mZiBiZXR3ZWVuCisgaW1wbGVtZW50YXRpb24gY29t
cGxleGl0eSwgbW9kZWxpbmcgZXJyb3IgKHNpbmNlIHRoZSBzeW1ib2xzIG5vIGxvbmdlciB0cnVs
eQorIGhhdmUgZXF1YWwgY29kaW5nIGNvc3QpLCBhbmQgcm91bmRpbmcgZXJyb3IgaW50cm9kdWNl
ZCBieSB0aGUgcmFuZ2UgY29kZXIKKyBpdHNlbGYgKHdoaWNoIGdldHMgbGFyZ2VyIGFzIG1vcmUg
Yml0cyBhcmUgaW5jbHVkZWQpLgorVXNpbmcgcmF3IGJpdHMgcmVkdWNlcyB0aGUgbWF4aW11bSBu
dW1iZXIgb2YgZGl2aXNpb25zIHJlcXVpcmVkIGluIHRoZSB3b3JzdAorIGNhc2UsIGJ1dCBtZWFu
cyB0aGF0IGl0IG1heSBiZSBwb3NzaWJsZSB0byBkZWNvZGUgYSB2YWx1ZSBvdXRzaWRlIHRoZSBy
YW5nZQorIDAgdG8gKGZ0Jm5ic3A7LSZuYnNwOzEpLCBpbmNsdXNpdmUuCis8L3Q+CisKKzx0Pgor
ZWNfZGVjX3VpbnQoKSB0YWtlcyBhIHNpbmdsZSwgcG9zaXRpdmUgcGFyYW1ldGVyLCBmdCwgd2hp
Y2ggaXMgbm90IG5lY2Vzc2FyaWx5CisgYSBwb3dlciBvZiB0d28sIGFuZCByZXR1cm5zIGFuIGlu
dGVnZXIsIHQsIHdob3NlIHZhbHVlIGxpZXMgYmV0d2VlbiAwIGFuZAorIChmdCZuYnNwOy0mbmJz
cDsxKSwgaW5jbHVzaXZlLgorTGV0IGZ0YiZuYnNwOz0mbmJzcDtpbG9nKGZ0Jm5ic3A7LSZuYnNw
OzEpLCBpLmUuLCB0aGUgbnVtYmVyIG9mIGJpdHMgcmVxdWlyZWQKKyB0byBzdG9yZSAoZnQmbmJz
cDstJm5ic3A7MSkgaW4gdHdvJ3MgY29tcGxlbWVudCBub3RhdGlvbi4KK0lmIGZ0YiBpcyA4IG9y
IGxlc3MsIHRoZW4gdCBpcyBkZWNvZGVkIHdpdGggdCZuYnNwOz0mbmJzcDtlY19kZWNvZGUoZnQp
LCBhbmQKKyB0aGUgcmFuZ2UgY29kZXIgc3RhdGUgaXMgdXBkYXRlZCB1c2luZyB0aGUgdGhyZWUt
dHVwbGUgKHQsIHQmbmJzcDsrJm5ic3A7MSwKKyBmdCkuCis8L3Q+Cis8dD4KK0lmIGZ0YiBpcyBn
cmVhdGVyIHRoYW4gOCwgdGhlbiB0aGUgdG9wIDggYml0cyBvZiB0IGFyZSBkZWNvZGVkIHVzaW5n
Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RB
VEFbCit0ID0gZWNfZGVjb2RlKCgoZnQgLSAxKSA+PiAoZnRiIC0gOCkpICsgMSkgLAorXV0+PC9h
cnR3b3JrPgorPC9maWd1cmU+CisgdGhlIGRlY29kZXIgc3RhdGUgaXMgdXBkYXRlZCB1c2luZyB0
aGUgdGhyZWUtdHVwbGUKKyAodCwgdCZuYnNwOysmbmJzcDsxLAorICgoZnQmbmJzcDstJm5ic3A7
MSkmbmJzcDsmZ3Q7Jmd0OyZuYnNwOyhmdGImbmJzcDstJm5ic3A7OCkpJm5ic3A7KyZuYnNwOzEp
LAorIGFuZCB0aGUgcmVtYWluaW5nIGJpdHMgYXJlIGRlY29kZWQgYXMgcmF3IGJpdHMsIHNldHRp
bmcKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtD
REFUQVsKK3QgPSAodCA8PCAoZnRiIC0gOCkpIHwgZWNfZGVjX2JpdHMoZnRiIC0gOCkgLgorXV0+
PC9hcnR3b3JrPgorPC9maWd1cmU+CitJZiwgYXQgdGhpcyBwb2ludCwgdCA+PSBmdCwgdGhlbiB0
aGUgY3VycmVudCBmcmFtZSBpcyBjb3JydXB0LgorSW4gdGhhdCBjYXNlLCB0aGUgZGVjb2RlciBz
aG91bGQgYXNzdW1lIHRoZXJlIGhhcyBiZWVuIGFuIGVycm9yIGluIHRoZSBjb2RpbmcsCisgZGVj
b2RpbmcsIG9yIHRyYW5zbWlzc2lvbiBhbmQgU0hPVUxEIHRha2UgbWVhc3VyZXMgdG8gY29uY2Vh
bCB0aGUKKyBlcnJvciBhbmQvb3IgcmVwb3J0IHRvIHRoZSBhcHBsaWNhdGlvbiB0aGF0IHRoZSBl
cnJvciBoYXMgb2NjdXJyZWQuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9y
PSJkZWNvZGVyLXRlbGwiIHRpdGxlPSJDdXJyZW50IEJpdCBVc2FnZSI+Cis8dD4KK1RoZSBiaXQg
YWxsb2NhdGlvbiByb3V0aW5lcyBpbiB0aGUgQ0VMVCBkZWNvZGVyIG5lZWQgYSBjb25zZXJ2YXRp
dmUgdXBwZXIgYm91bmQKKyBvbiB0aGUgbnVtYmVyIG9mIGJpdHMgdGhhdCBoYXZlIGJlZW4gdXNl
ZCBmcm9tIHRoZSBjdXJyZW50IGZyYW1lIHRodXMgZmFyLAorIGluY2x1ZGluZyBib3RoIHJhbmdl
IGNvZGVyIGJpdHMgYW5kIHJhdyBiaXRzLgorVGhpcyBkcml2ZXMgYWxsb2NhdGlvbiBkZWNpc2lv
bnMgdGhhdCBtdXN0IG1hdGNoIHRob3NlIG1hZGUgaW4gdGhlIGVuY29kZXIuCitUaGUgdXBwZXIg
Ym91bmQgaXMgY29tcHV0ZWQgaW4gdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiB0byB3aG9s
ZS1iaXQKKyBwcmVjaXNpb24gYnkgdGhlIGZ1bmN0aW9uIGVjX3RlbGwoKSAoZW50Y29kZS5oKSBh
bmQgdG8gZnJhY3Rpb25hbCAxLzh0aCBiaXQKKyBwcmVjaXNpb24gYnkgdGhlIGZ1bmN0aW9uIGVj
X3RlbGxfZnJhYygpIChlbnRjb2RlLmMpLgorTGlrZSBhbGwgb3BlcmF0aW9ucyBpbiB0aGUgcmFu
Z2UgY29kZXIsIGl0IG11c3QgYmUgaW1wbGVtZW50ZWQgaW4gYSBiaXQtZXhhY3QKKyBtYW5uZXIs
IGFuZCBtdXN0IHByb2R1Y2UgZXhhY3RseSB0aGUgc2FtZSB2YWx1ZSByZXR1cm5lZCBieSB0aGUg
c2FtZSBmdW5jdGlvbnMKKyBpbiB0aGUgZW5jb2RlciBhZnRlciBlbmNvZGluZyB0aGUgc2FtZSBz
eW1ib2xzLgorPC90PgorPHQ+CitlY190ZWxsKCkgaXMgZ3VhcmFudGVlZCB0byByZXR1cm4gY2Vp
bChlY190ZWxsX2ZyYWMoKS84LjApLgorSW4gdmFyaW91cyBwbGFjZXMgdGhlIGNvZGVjIHdpbGwg
Y2hlY2sgdG8gZW5zdXJlIHRoZXJlIGlzIGVub3VnaCByb29tIHRvCisgY29udGFpbiBhIHN5bWJv
bCBiZWZvcmUgYXR0ZW1wdGluZyB0byBkZWNvZGUgaXQuCitJbiBwcmFjdGljZSwgYWx0aG91Z2gg
dGhlIG51bWJlciBvZiBiaXRzIHVzZWQgc28gZmFyIGlzIGFuIHVwcGVyIGJvdW5kLAorIGRlY29k
aW5nIGEgc3ltYm9sIHdob3NlIHByb2JhYmlsaXR5IG1vZGVsIHN1Z2dlc3RzIGl0IGhhcyBhIHdv
cnN0LWNhc2UgY29zdCBvZgorIHAgMS84dGggYml0cyBtYXkgYWN0dWFsbHkgYWR2YW5jZSB0aGUg
cmV0dXJuIHZhbHVlIG9mIGVjX3RlbGxfZnJhYygpIGJ5CisgcC0xLCBwLCBvciBwKzEgMS84dGgg
Yml0cywgZHVlIHRvIGFwcHJveGltYXRpb24gZXJyb3IgaW4gdGhhdCB1cHBlciBib3VuZCwKKyB0
cnVuY2F0aW9uIGVycm9yIGluIHRoZSByYW5nZSBjb2RlciwgYW5kIGZvciBsYXJnZSB2YWx1ZXMg
b2YgZnQsIG1vZGVsaW5nCisgZXJyb3IgaW4gZWNfZGVjX3VpbnQoKS4KKzwvdD4KKzx0PgorSG93
ZXZlciwgdGhpcyBlcnJvciBpcyBib3VuZGVkLCBhbmQgcGVyaW9kaWMgY2FsbHMgdG8gZWNfdGVs
bCgpIG9yCisgZWNfdGVsbF9mcmFjKCkgYXQgcHJlY2lzZWx5IGRlZmluZWQgcG9pbnRzIGluIHRo
ZSBkZWNvZGluZyBwcm9jZXNzIHByZXZlbnQgaXQKKyBmcm9tIGFjY3VtdWxhdGluZy4KK0ZvciBh
IHJhbmdlIGNvZGVyIHN5bWJvbCB0aGF0IHJlcXVpcmVzIGEgd2hvbGUgbnVtYmVyIG9mIGJpdHMg
KGkuZS4sCisgZm9yIHdoaWNoIGZ0LyhmaFtrXSZuYnNwOy0mbmJzcDtmbFtrXSkgaXMgYSBwb3dl
ciBvZiB0d28pLCB3aGVyZSB0aGVyZSBhcmUgYXQKKyBsZWFzdCBwIDEvOHRoIGJpdHMgYXZhaWxh
YmxlLCBkZWNvZGluZyB0aGUgc3ltYm9sIHdpbGwgbmV2ZXIgY2F1c2UgZWNfdGVsbCgpIG9yCisg
ZWNfdGVsbF9mcmFjKCkgdG8gZXhjZWVkIHRoZSBzaXplIG9mIHRoZSBmcmFtZSAoImJ1c3QgdGhl
IGJ1ZGdldCIpLgorSW4gdGhpcyBjYXNlIHRoZSByZXR1cm4gdmFsdWUgb2YgZWNfdGVsbF9mcmFj
KCkgd2lsbCBvbmx5IGFkdmFuY2UgYnkgbW9yZSB0aGFuCisgcCAxLzh0aCBiaXRzIGlmIHRoZXJl
IHdhcyBhbiBhZGRpdGlvbmFsLCBmcmFjdGlvbmFsIG51bWJlciBvZiBiaXRzIHJlbWFpbmluZywK
KyBhbmQgaXQgd2lsbCBuZXZlciBhZHZhbmNlIGJleW9uZCB0aGUgbmV4dCB3aG9sZS1iaXQgYm91
bmRhcnksIHdoaWNoIGlzIHNhZmUsCisgc2luY2UgZnJhbWVzIGFsd2F5cyBjb250YWluIGEgd2hv
bGUgbnVtYmVyIG9mIGJpdHMuCitIb3dldmVyLCB3aGVuIHAgaXMgbm90IGEgd2hvbGUgbnVtYmVy
IG9mIGJpdHMsIGFuIGV4dHJhIDEvOHRoIGJpdCBpcyByZXF1aXJlZAorIHRvIGVuc3VyZSB0aGF0
IGRlY29kaW5nIHRoZSBzeW1ib2wgd2lsbCBub3QgYnVzdCB0aGUgYnVkZ2V0LgorPC90PgorPHQ+
CitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGtlZXBzIHRyYWNrIG9mIHRoZSB0b3RhbCBu
dW1iZXIgb2Ygd2hvbGUgYml0cyB0aGF0CisgaGF2ZSBiZWVuIHByb2Nlc3NlZCBieSB0aGUgZGVj
b2RlciBzbyBmYXIgaW4gdGhlIHZhcmlhYmxlIG5iaXRzX3RvdGFsLAorIGluY2x1ZGluZyB0aGUg
KHBvc3NpYmx5IGZyYWN0aW9uYWwpIG51bWJlciBvZiBiaXRzIHRoYXQgYXJlIGN1cnJlbnRseQor
IGJ1ZmZlcmVkLCBidXQgbm90IGNvbnN1bWVkLCBpbnNpZGUgdGhlIHJhbmdlIGNvZGVyLgorbmJp
dHNfdG90YWwgaXMgaW5pdGlhbGl6ZWQgdG8gOSBqdXN0IGJlZm9yZSB0aGUgaW5pdGlhbCByYW5n
ZSByZW5vcm1hbGl6YXRpb24KKyBwcm9jZXNzIGNvbXBsZXRlcyAob3IgZXF1aXZhbGVudGx5LCBp
dCBjYW4gYmUgaW5pdGlhbGl6ZWQgdG8gMzMgYWZ0ZXIgdGhlCisgZmlyc3QgcmVub3JtYWxpemF0
aW9uKS4KK1RoZSBleHRyYSB0d28gYml0cyBvdmVyIHRoZSBhY3R1YWwgYW1vdW50IGJ1ZmZlcmVk
IGJ5IHRoZSByYW5nZSBjb2RlcgorIGd1YXJhbnRlZXMgdGhhdCBpdCBpcyBhbiB1cHBlciBib3Vu
ZCBhbmQgdGhhdCB0aGVyZSBpcyBlbm91Z2ggcm9vbSBmb3IgdGhlCisgZW5jb2RlciB0byB0ZXJt
aW5hdGUgdGhlIHN0cmVhbS4KK0VhY2ggaXRlcmF0aW9uIHRocm91Z2ggdGhlIHJhbmdlIGNvZGVy
J3MgcmVub3JtYWxpemF0aW9uIGxvb3AgaW5jcmVhc2VzCisgbmJpdHNfdG90YWwgYnkgOC4KK1Jl
YWRpbmcgcmF3IGJpdHMgaW5jcmVhc2VzIG5iaXRzX3RvdGFsIGJ5IHRoZSBudW1iZXIgb2YgcmF3
IGJpdHMgcmVhZC4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJlY190ZWxsIiB0aXRsZT0iZWNf
dGVsbCgpIj4KKzx0PgorVGhlIHdob2xlIG51bWJlciBvZiBiaXRzIGJ1ZmZlcmVkIGluIHJuZyBt
YXkgYmUgZXN0aW1hdGVkIHZpYSBsZyA9IGlsb2cocm5nKS4KK2VjX3RlbGwoKSB0aGVuIGJlY29t
ZXMgYSBzaW1wbGUgbWF0dGVyIG9mIHJlbW92aW5nIHRoZXNlIGJpdHMgZnJvbSB0aGUgdG90YWwu
CitJdCByZXR1cm5zIChuYml0c190b3RhbCAtIGxnKS4KKzwvdD4KKzx0PgorSW4gYSBuZXdseSBp
bml0aWFsaXplZCBkZWNvZGVyLCBiZWZvcmUgYW55IHN5bWJvbHMgaGF2ZSBiZWVuIHJlYWQsIHRo
aXMgcmVwb3J0cworIHRoYXQgMSBiaXQgaGFzIGJlZW4gdXNlZC4KK1RoaXMgaXMgdGhlIGJpdCBy
ZXNlcnZlZCBmb3IgdGVybWluYXRpb24gb2YgdGhlIGVuY29kZXIuCis8L3Q+Cis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0iZWNfdGVsbF9mcmFjIiB0aXRsZT0iZWNfdGVsbF9mcmFjKCki
PgorPHQ+CitlY190ZWxsX2ZyYWMoKSBlc3RpbWF0ZXMgdGhlIG51bWJlciBvZiBiaXRzIGJ1ZmZl
cmVkIGluIHJuZyB0byBmcmFjdGlvbmFsCisgcHJlY2lzaW9uLgorU2luY2Ugcm5nIG11c3QgYmUg
Z3JlYXRlciB0aGFuIDIqKjIzIGFmdGVyIHJlbm9ybWFsaXphdGlvbiwgbGcgbXVzdCBiZSBhdCBs
ZWFzdAorIDI0LgorTGV0Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+Cis8IVtDREFUQVsKK3JfUTE1ID0gcm5nID4+IChsZy0xNikgLAorXV0+PC9hcnR3
b3JrPgorPC9maWd1cmU+Cisgc28gdGhhdCAzMjc2OCAmbHQ7PSByX1ExNSAmbHQ7IDY1NTM2LCBh
biB1bnNpZ25lZCBRMTUgdmFsdWUgcmVwcmVzZW50aW5nIHRoZQorIGZyYWN0aW9uYWwgcGFydCBv
ZiBybmcuCitUaGVuIHRoZSBmb2xsb3dpbmcgcHJvY2VkdXJlIGNhbiBiZSB1c2VkIHRvIGFkZCBv
bmUgYml0IG9mIHByZWNpc2lvbiB0byBsZy4KK0ZpcnN0LCB1cGRhdGUKKzxmaWd1cmUgYWxpZ249
ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworcl9RMTUgPSAo
cl9RMTUqcl9RMTUpID4+IDE1IC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlbiBhZGQg
dGhlIDE2dGggYml0IG9mIHJfUTE1IHRvIGxnIHZpYQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4K
KzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCitsZyA9IDIqbGcgKyAocl9RMTUg
Pj4gMTYpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorRmluYWxseSwgaWYgdGhpcyBiaXQg
d2FzIGEgMSwgcmVkdWNlIHJfUTE1IGJ5IGEgZmFjdG9yIG9mIHR3byB2aWEKKzxmaWd1cmUgYWxp
Z249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworcl9RMTUg
PSByX1ExNSA+PiAxICwKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHNvIHRoYXQgaXQgb25j
ZSBhZ2FpbiBsaWVzIGluIHRoZSByYW5nZSAzMjc2OCAmbHQ7PSByX1ExNSAmbHQ7IDY1NTM2Lgor
PC90PgorPHQ+CitUaGlzIHByb2NlZHVyZSBpcyByZXBlYXRlZCB0aHJlZSB0aW1lcyB0byBleHRl
bmQgbGcgdG8gMS84dGggYml0IHByZWNpc2lvbi4KK2VjX3RlbGxfZnJhYygpIHRoZW4gcmV0dXJu
cyAobmJpdHNfdG90YWwqOCAtIGxnKS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgor
Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19kZWNvZGVyX291dGxpbmUiIHRp
dGxlPSJTSUxLIERlY29kZXIiPgorPHQ+CitUaGUgZGVjb2RlcidzIExQIGxheWVyIHVzZXMgYSBt
b2RpZmllZCB2ZXJzaW9uIG9mIHRoZSBTSUxLIGNvZGVjIChoZXJlaW4gc2ltcGx5CisgY2FsbGVk
ICJTSUxLIiksIHdoaWNoIHJ1bnMgYSBkZWNvZGVkIGV4Y2l0YXRpb24gc2lnbmFsIHRocm91Z2gg
YWRhcHRpdmUKKyBsb25nLXRlcm0gYW5kIHNob3J0LXRlcm0gcHJlZGljdGlvbiBzeW50aGVzaXMg
ZmlsdGVycy4KK0l0IHJ1bnMgYXQgTkIsIE1CLCBhbmQgV0Igc2FtcGxlIHJhdGVzIGludGVybmFs
bHkuCitXaGVuIHVzZWQgaW4gYSBTV0Igb3IgRkIgSHlicmlkIGZyYW1lLCB0aGUgTFAgbGF5ZXIg
aXRzZWxmIHN0aWxsIG9ubHkgcnVucyBpbgorIFdCLgorPC90PgorCis8c2VjdGlvbiB0aXRsZT0i
U0lMSyBEZWNvZGVyIE1vZHVsZXMiPgorPHQ+CitBbiBvdmVydmlldyBvZiB0aGUgZGVjb2RlciBp
cyBnaXZlbiBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfZGVjb2Rlcl9maWd1cmUiLz4uCis8L3Q+Cis8
ZmlndXJlIGFsaWduPSJjZW50ZXIiIGFuY2hvcj0ic2lsa19kZWNvZGVyX2ZpZ3VyZSIgdGl0bGU9
IlNJTEsgRGVjb2RlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworICAg
Ky0tLS0tLS0tLSsgICAgKy0tLS0tLS0tLS0tLSsKKy0tPnwgUmFuZ2UgICB8LS0tPnwgRGVjb2Rl
ICAgICB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworIDEgfCBEZWNvZGVyIHwgMiAgfCBQ
YXJhbWV0ZXJzIHwtLS0tLS0tLS0tKyAgICAgICA1ICAgICAgICB8CisgICArLS0tLS0tLS0tKyAg
ICArLS0tLS0tLS0tLS0tKyAgICAgNCAgICB8ICAgICAgICAgICAgICAgIHwKKyAgICAgICAgICAg
ICAgICAgICAgICAgMyB8ICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgfAorICAgICAg
ICAgICAgICAgICAgICAgICAgXC8gICAgICAgICAgICAgICBcLyAgICAgICAgICAgICAgIFwvCisg
ICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tKyAgICstLS0tLS0tLS0tLS0rICAgKy0tLS0t
LS0tLS0tLSsKKyAgICAgICAgICAgICAgICAgIHwgR2VuZXJhdGUgICB8LS0+fCBMVFAgICAgICAg
IHwtLT58IExQQyAgICAgICAgfAorICAgICAgICAgICAgICAgICAgfCBFeGNpdGF0aW9uIHwgICB8
IFN5bnRoZXNpcyAgfCAgIHwgU3ludGhlc2lzICB8CisgICAgICAgICAgICAgICAgICArLS0tLS0t
LS0tLS0tKyAgICstLS0tLS0tLS0tLS0rICAgKy0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4gICAgICAgICAgICAgICAgfAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICB8CisgICAg
ICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsK
KyAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA2CisgICAgICAgICAgICAgICAgICAgICAgfCAgICstLS0tLS0tLS0tLS0rICAgKy0tLS0t
LS0tLS0tLS0rCisgICAgICAgICAgICAgICAgICAgICAgKy0tPnwgU3RlcmVvICAgICB8LS0+fCBT
YW1wbGUgUmF0ZSB8LS0+CisgICAgICAgICAgICAgICAgICAgICAgICAgIHwgVW5taXhpbmcgICB8
IDcgfCBDb252ZXJzaW9uICB8IDgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0t
LS0tLSsgICArLS0tLS0tLS0tLS0tLSsKKworMTogUmFuZ2UgZW5jb2RlZCBiaXRzdHJlYW0KKzI6
IENvZGVkIHBhcmFtZXRlcnMKKzM6IFB1bHNlcywgTFNCcywgYW5kIHNpZ25zCis0OiBQaXRjaCBs
YWdzLCBMb25nLVRlcm0gUHJlZGljdGlvbiAoTFRQKSBjb2VmZmljaWVudHMKKzU6IExpbmVhciBQ
cmVkaWN0aXZlIENvZGluZyAoTFBDKSBjb2VmZmljaWVudHMgYW5kIGdhaW5zCis2OiBEZWNvZGVk
IHNpZ25hbCAobW9ubyBvciBtaWQtc2lkZSBzdGVyZW8pCis3OiBVbm1peGVkIHNpZ25hbCAobW9u
byBvciBsZWZ0LXJpZ2h0IHN0ZXJlbykKKzg6IFJlc2FtcGxlZCBzaWduYWwKK11dPgorPC9hcnR3
b3JrPgorPC9maWd1cmU+CisKKzx0PgorVGhlIGRlY29kZXIgZmVlZHMgdGhlIGJpdHN0cmVhbSAo
MSkgdG8gdGhlIHJhbmdlIGRlY29kZXIgZnJvbQorIDx4cmVmIHRhcmdldD0icmFuZ2UtZGVjb2Rl
ciIvPiwgYW5kIHRoZW4gZGVjb2RlcyB0aGUgcGFyYW1ldGVycyBpbiBpdCAoMikKKyB1c2luZyB0
aGUgcHJvY2VkdXJlcyBkZXRhaWxlZCBpbgorIFNlY3Rpb25zJm5ic3A7PHhyZWYgZm9ybWF0PSJj
b3VudGVyIiB0YXJnZXQ9InNpbGtfaGVhZGVyX2JpdHMiLz4KKyB0aHJvdWdoJm5ic3A7PHhyZWYg
Zm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfc2lnbnMiLz4uCitUaGVzZSBwYXJhbWV0ZXJz
ICgzLCA0LCA1KSBhcmUgdXNlZCB0byBnZW5lcmF0ZSBhbiBleGNpdGF0aW9uIHNpZ25hbCAoc2Vl
CisgPHhyZWYgdGFyZ2V0PSJzaWxrX2V4Y2l0YXRpb25fcmVjb25zdHJ1Y3Rpb24iLz4pLCB3aGlj
aCBpcyBmZWQgdG8gYW4gb3B0aW9uYWwKKyBsb25nLXRlcm0gcHJlZGljdGlvbiAoTFRQKSBmaWx0
ZXIgKHZvaWNlZCBmcmFtZXMgb25seSwgc2VlCisgPHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9zeW50
aGVzaXMiLz4pIGFuZCB0aGVuIGEgc2hvcnQtdGVybSBwcmVkaWN0aW9uIGZpbHRlcgorIChzZWUg
PHhyZWYgdGFyZ2V0PSJzaWxrX2xwY19zeW50aGVzaXMiLz4pLCBwcm9kdWNpbmcgdGhlIGRlY29k
ZWQgc2lnbmFsICg2KS4KK0ZvciBzdGVyZW8gc3RyZWFtcywgdGhlIG1pZC1zaWRlIHJlcHJlc2Vu
dGF0aW9uIGlzIGNvbnZlcnRlZCB0byBzZXBhcmF0ZSBsZWZ0CisgYW5kIHJpZ2h0IGNoYW5uZWxz
ICg3KS4KK1RoZSByZXN1bHQgaXMgZmluYWxseSByZXNhbXBsZWQgdG8gdGhlIGRlc2lyZWQgb3V0
cHV0IHNhbXBsZSByYXRlIChlLmcuLAorIDQ4Jm5ic3A7a0h6KSBzbyB0aGF0IHRoZSByZXNhbXBs
ZWQgc2lnbmFsICg4KSBjYW4gYmUgbWl4ZWQgd2l0aCB0aGUgQ0VMVAorIGxheWVyLgorPC90Pgor
Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19sYXllcl9vcmdhbml6YXRpb24i
IHRpdGxlPSJMUCBMYXllciBPcmdhbml6YXRpb24iPgorCis8dD4KK0ludGVybmFsbHksIHRoZSBM
UCBsYXllciBvZiBhIHNpbmdsZSBPcHVzIGZyYW1lIGlzIGNvbXBvc2VkIG9mIGVpdGhlciBhIHNp
bmdsZQorIDEwJm5ic3A7bXMgcmVndWxhciBTSUxLIGZyYW1lIG9yIGJldHdlZW4gb25lIGFuZCB0
aHJlZSAyMCZuYnNwO21zIHJlZ3VsYXIgU0lMSworIGZyYW1lcy4KK0Egc3RlcmVvIE9wdXMgZnJh
bWUgbWF5IGRvdWJsZSB0aGUgbnVtYmVyIG9mIHJlZ3VsYXIgU0lMSyBmcmFtZXMgKHVwIHRvIGEg
dG90YWwKKyBvZiBzaXgpLCBzaW5jZSBpdCBpbmNsdWRlcyBzZXBhcmF0ZSBmcmFtZXMgZm9yIGEg
bWlkIGNoYW5uZWwgYW5kLCBvcHRpb25hbGx5LAorIGEgc2lkZSBjaGFubmVsLgorT3B0aW9uYWwg
TG93IEJpdC1SYXRlIFJlZHVuZGFuY3kgKExCUlIpIGZyYW1lcywgd2hpY2ggYXJlIHJlZHVjZWQt
Yml0cmF0ZQorIGVuY29kaW5ncyBvZiBwcmV2aW91cyBTSUxLIGZyYW1lcywgbWF5IGJlIGluY2x1
ZGVkIHRvIGFpZCBpbiByZWNvdmVyeSBmcm9tCisgcGFja2V0IGxvc3MuCitJZiBwcmVzZW50LCB0
aGVzZSBhcHBlYXIgYmVmb3JlIHRoZSByZWd1bGFyIFNJTEsgZnJhbWVzLgorVGhleSBhcmUgaW4g
bW9zdCByZXNwZWN0cyBpZGVudGljYWwgdG8gcmVndWxhciwgYWN0aXZlIFNJTEsgZnJhbWVzLCBl
eGNlcHQgdGhhdAorIHRoZXkgYXJlIHVzdWFsbHkgZW5jb2RlZCB3aXRoIGEgbG93ZXIgYml0cmF0
ZS4KK1RoaXMgZHJhZnQgdXNlcyAiU0lMSyBmcmFtZSIgdG8gcmVmZXIgdG8gZWl0aGVyIG9uZSBh
bmQgInJlZ3VsYXIgU0lMSyBmcmFtZSIgaWYKKyBpdCBuZWVkcyB0byBkcmF3IGEgZGlzdGluY3Rp
b24gYmV0d2VlbiB0aGUgdHdvLgorPC90PgorPHQ+CitMb2dpY2FsbHksIGVhY2ggU0lMSyBmcmFt
ZSBpcyBpbiB0dXJuIGNvbXBvc2VkIG9mIGVpdGhlciB0d28gb3IgZm91ciA1Jm5ic3A7bXMKKyBz
dWJmcmFtZXMuCitWYXJpb3VzIHBhcmFtZXRlcnMsIHN1Y2ggYXMgdGhlIHF1YW50aXphdGlvbiBn
YWluIG9mIHRoZSBleGNpdGF0aW9uIGFuZCB0aGUKKyBwaXRjaCBsYWcgYW5kIGZpbHRlciBjb2Vm
ZmljaWVudHMgY2FuIHZhcnkgb24gYSBzdWJmcmFtZS1ieS1zdWJmcmFtZSBiYXNpcy4KK1BoeXNp
Y2FsbHksIHRoZSBwYXJhbWV0ZXJzIGZvciBlYWNoIHN1YmZyYW1lIGFyZSBpbnRlcmxlYXZlZCBp
biB0aGUgYml0c3RyZWFtLAorIGFzIGRlc2NyaWJlZCBpbiB0aGUgcmVsZXZhbnQgc2VjdGlvbnMg
Zm9yIGVhY2ggcGFyYW1ldGVyLgorPC90PgorPHQ+CitBbGwgb2YgdGhlc2UgZnJhbWVzIGFuZCBz
dWJmcmFtZXMgYXJlIGRlY29kZWQgZnJvbSB0aGUgc2FtZSByYW5nZSBjb2Rlciwgd2l0aAorIG5v
IHBhZGRpbmcgYmV0d2VlbiB0aGVtLgorVGh1cyBwYWNraW5nIG11bHRpcGxlIFNJTEsgZnJhbWVz
IGluIGEgc2luZ2xlIE9wdXMgZnJhbWUgc2F2ZXMsIG9uIGF2ZXJhZ2UsCisgaGFsZiBhIGJ5dGUg
cGVyIFNJTEsgZnJhbWUuCitJdCBhbHNvIGFsbG93cyBzb21lIHBhcmFtZXRlcnMgdG8gYmUgcHJl
ZGljdGVkIGZyb20gcHJpb3IgU0lMSyBmcmFtZXMgaW4gdGhlCisgc2FtZSBPcHVzIGZyYW1lLCBz
aW5jZSB0aGlzIGRvZXMgbm90IGRlZ3JhZGUgcGFja2V0IGxvc3Mgcm9idXN0bmVzcyAoYmV5b25k
CisgYW55IHBlbmFsdHkgZm9yIG1lcmVseSB1c2luZyBmZXdlciwgbGFyZ2VyIHBhY2tldHMgdG8g
c3RvcmUgbXVsdGlwbGUgZnJhbWVzKS4KKzwvdD4KKworPHQ+CitTdGVyZW8gc3VwcG9ydCBpbiBT
SUxLIHVzZXMgYSB2YXJpYW50IG9mIG1pZC1zaWRlIGNvZGluZywgYWxsb3dpbmcgYSBtb25vCisg
ZGVjb2RlciB0byBzaW1wbHkgZGVjb2RlIHRoZSBtaWQgY2hhbm5lbC4KK0hvd2V2ZXIsIHRoZSBk
YXRhIGZvciB0aGUgdHdvIGNoYW5uZWxzIGlzIGludGVybGVhdmVkLCBzbyBhIG1vbm8gZGVjb2Rl
ciBtdXN0Cisgc3RpbGwgdW5wYWNrIHRoZSBkYXRhIGZvciB0aGUgc2lkZSBjaGFubmVsLgorSXQg
d291bGQgYmUgcmVxdWlyZWQgdG8gZG8gc28gYW55d2F5IGZvciBIeWJyaWQgT3B1cyBmcmFtZXMs
IG9yIHRvIHN1cHBvcnQKKyBkZWNvZGluZyBpbmRpdmlkdWFsIDIwJm5ic3A7bXMgZnJhbWVzLgor
PC90PgorCis8dD4KKzx4cmVmIHRhcmdldD0ic2lsa19zeW1ib2xzIi8+IHN1bW1hcml6ZXMgdGhl
IG92ZXJhbGwgZ3JvdXBpbmcgb2YgdGhlIGNvbnRlbnRzIG9mCisgdGhlIExQIGxheWVyLgorRmln
dXJlcyZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX21vbm9fNjBtc19m
cmFtZSIvPgorIGFuZCZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX3N0
ZXJlb182MG1zX2ZyYW1lIi8+IGlsbHVzdHJhdGUKKyB0aGUgb3JkZXJpbmcgb2YgdGhlIHZhcmlv
dXMgU0lMSyBmcmFtZXMgZm9yIGEgNjAmbmJzcDttcyBPcHVzIGZyYW1lLCBmb3IgYm90aAorIG1v
bm8gYW5kIHN0ZXJlbywgcmVzcGVjdGl2ZWx5LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0i
c2lsa19zeW1ib2xzIgorIHRpdGxlPSJPcmdhbml6YXRpb24gb2YgdGhlIFNJTEsgbGF5ZXIgb2Yg
YW4gT3B1cyBmcmFtZSI+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+U3ltYm9sKHMpPC90dGNvbD4K
Kzx0dGNvbCBhbGlnbj0iY2VudGVyIj5QREYocyk8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJjZW50
ZXIiPkNvbmRpdGlvbjwvdHRjb2w+CisKKzxjPlZvaWNlIEFjdGl2aXR5IERldGVjdGlvbiAoVkFE
KSBmbGFnczwvYz4KKzxjPnsxLCAxfS8yPC9jPgorPGMvPgorCis8Yz5MQlJSIGZsYWc8L2M+Cis8
Yz57MSwgMX0vMjwvYz4KKzxjLz4KKworPGM+UGVyLWZyYW1lIExCUlIgZmxhZ3M8L2M+Cis8Yz48
eHJlZiB0YXJnZXQ9InNpbGtfbGJycl9mbGFnX3BkZnMiLz48L2M+Cis8Yz48eHJlZiB0YXJnZXQ9
InNpbGtfbGJycl9mbGFncyIvPjwvYz4KKworPGM+TEJSUiBGcmFtZShzKTwvYz4KKzxjPjx4cmVm
IHRhcmdldD0ic2lsa19mcmFtZSIvPjwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19sYnJyX2Zs
YWdzIi8+PC9jPgorCis8Yz5SZWd1bGFyIFNJTEsgRnJhbWUocyk8L2M+Cis8Yz48eHJlZiB0YXJn
ZXQ9InNpbGtfZnJhbWUiLz48L2M+Cis8Yy8+CisKKzwvdGV4dHRhYmxlPgorCis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiIGFuY2hvcj0ic2lsa19tb25vXzYwbXNfZnJhbWUiCisgdGl0bGU9IkEgNjAm
bmJzcDttcyBNb25vIEZyYW1lIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwor
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgICAgICAgICBWQUQgRmxh
Z3MgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAg
ICAgICAgICAgIExCUlIgRmxhZyAgICAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0rCit8IFBlci1GcmFtZSBMQlJSIEZsYWdzIChPcHRpb25hbCkgfAorKy0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgIExCUlIgRnJhbWUgMSAoT3B0aW9u
YWwpICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgTEJS
UiBGcmFtZSAyIChPcHRpb25hbCkgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0rCit8ICAgICBMQlJSIEZyYW1lIDMgKE9wdGlvbmFsKSAgICAgfAorKy0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgICBSZWd1bGFyIFNJTEsgRnJhbWUgMSAgICAg
ICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgIFJlZ3VsYXIg
U0lMSyBGcmFtZSAyICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r
Cit8ICAgICAgUmVndWxhciBTSUxLIEZyYW1lIDMgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLSsKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiIGFuY2hvcj0ic2lsa19zdGVyZW9fNjBtc19mcmFtZSIKKyB0aXRsZT0iQSA2
MCZuYnNwO21zIFN0ZXJlbyBGcmFtZSI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAgICAg
ICAgIE1pZCBWQUQgRmxhZ3MgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgICAgICAgICAgTWlkIExCUlIgRmxhZyAgICAgICAgICAg
ICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgICAg
ICAgICBTaWRlIFZBRCBGbGFncyAgICAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICAgICAgICAgIFNpZGUgTEJSUiBGbGFnICAgICAgICAg
ICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgIE1pZCBQ
ZXItRnJhbWUgTEJSUiBGbGFncyAoT3B0aW9uYWwpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tKworfCBTaWRlIFBlci1GcmFtZSBMQlJSIEZsYWdzIChPcHRpb25h
bCkgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICBN
aWQgTEJSUiBGcmFtZSAxIChPcHRpb25hbCkgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAgIFNpZGUgTEJSUiBGcmFtZSAxIChPcHRpb25hbCkg
ICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAg
TWlkIExCUlIgRnJhbWUgMiAoT3B0aW9uYWwpICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAgICBTaWRlIExCUlIgRnJhbWUgMiAoT3B0aW9uYWwp
ICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgICAg
IE1pZCBMQlJSIEZyYW1lIDMgKE9wdGlvbmFsKSAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAgICAgU2lkZSBMQlJSIEZyYW1lIDMgKE9wdGlvbmFs
KSAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8ICAg
ICAgTWlkIFJlZ3VsYXIgU0lMSyBGcmFtZSAxICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgU2lkZSBSZWd1bGFyIFNJTEsgRnJhbWUgMSAoT3B0
aW9uYWwpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCAg
ICAgIE1pZCBSZWd1bGFyIFNJTEsgRnJhbWUgMiAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IFNpZGUgUmVndWxhciBTSUxLIEZyYW1lIDIgKE9w
dGlvbmFsKSAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wg
ICAgICBNaWQgUmVndWxhciBTSUxLIEZyYW1lIDMgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBTaWRlIFJlZ3VsYXIgU0lMSyBGcmFtZSAzIChP
cHRpb25hbCkgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9
InNpbGtfaGVhZGVyX2JpdHMiIHRpdGxlPSJIZWFkZXIgQml0cyI+Cis8dD4KK1RoZSBMUCBsYXll
ciBiZWdpbnMgd2l0aCB0d28gdG8gZWlnaHQgaGVhZGVyIGJpdHMsIGRlY29kZWQgaW4gc2lsa19E
ZWNvZGUoKQorIChkZWNfQVBJLmMpLgorVGhlc2UgY29uc2lzdCBvZiBvbmUgVm9pY2UgQWN0aXZp
dHkgRGV0ZWN0aW9uIChWQUQpIGJpdCBwZXIgZnJhbWUgKHVwIHRvIDMpLAorIGZvbGxvd2VkIGJ5
IGEgc2luZ2xlIGZsYWcgaW5kaWNhdGluZyB0aGUgcHJlc2VuY2Ugb2YgTEJSUiBmcmFtZXMuCitG
b3IgYSBzdGVyZW8gcGFja2V0LCB0aGVzZSBmaXJzdCBmbGFncyBjb3JyZXNwb25kIHRvIHRoZSBt
aWQgY2hhbm5lbCwgYW5kIGEKKyBzZWNvbmQgc2V0IG9mIGZsYWdzIGlzIGluY2x1ZGVkIGZvciB0
aGUgc2lkZSBjaGFubmVsLgorPC90PgorPHQ+CitCZWNhdXNlIHRoZXNlIGFyZSB0aGUgZmlyc3Qg
c3ltYm9scyBkZWNvZGVkIGJ5IHRoZSByYW5nZSBjb2RlciBhbmQgYmVjYXVzZSB0aGV5CisgYXJl
IGNvZGVkIGFzIGJpbmFyeSB2YWx1ZXMgd2l0aCB1bmlmb3JtIHByb2JhYmlsaXR5LCB0aGV5IGNh
biBiZSBleHRyYWN0ZWQKKyBkaXJlY3RseSBmcm9tIHRoZSBtb3N0IHNpZ25pZmljYW50IGJpdHMg
b2YgdGhlIGZpcnN0IGJ5dGUgb2YgY29tcHJlc3NlZCBkYXRhLgorVGh1cywgYSByZWNlaXZlciBj
YW4gZGV0ZXJtaW5lIGlmIGFuIE9wdXMgZnJhbWUgY29udGFpbnMgYW55IGFjdGl2ZSBTSUxLIGZy
YW1lcworIHdpdGhvdXQgdGhlIG92ZXJoZWFkIG9mIHVzaW5nIHRoZSByYW5nZSBkZWNvZGVyLgor
PC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbGJycl9mbGFncyIgdGl0
bGU9IlBlci1GcmFtZSBMQlJSIEZsYWdzIj4KKzx0PgorRm9yIE9wdXMgZnJhbWVzIGxvbmdlciB0
aGFuIDIwJm5ic3A7bXMsIGEgc2V0IG9mIExCUlIgZmxhZ3MgaXMKKyBkZWNvZGVkIGZvciBlYWNo
IGNoYW5uZWwgdGhhdCBoYXMgaXRzIExCUlIgZmxhZyBzZXQuCitFYWNoIHNldCBjb250YWlucyBv
bmUgZmxhZyBwZXIgMjAmbmJzcDttcyBTSUxLIGZyYW1lLgorNDAmbmJzcDttcyBPcHVzIGZyYW1l
cyB1c2UgdGhlIDItZnJhbWUgTEJSUiBmbGFnIFBERiBmcm9tCisgPHhyZWYgdGFyZ2V0PSJzaWxr
X2xicnJfZmxhZ19wZGZzIi8+LCBhbmQgNjAmbmJzcDttcyBPcHVzIGZyYW1lcyB1c2UgdGhlCisg
My1mcmFtZSBMQlJSIGZsYWcgUERGLgorRm9yIGVhY2ggY2hhbm5lbCwgdGhlIHJlc3VsdGluZyAy
LSBvciAzLWJpdCBpbnRlZ2VyIGNvbnRhaW5zIHRoZSBjb3JyZXNwb25kaW5nCisgTEJSUiBmbGFn
IGZvciBlYWNoIGZyYW1lLCBwYWNrZWQgaW4gb3JkZXIgZnJvbSB0aGUgTFNCIHRvIHRoZSBNU0Iu
Cis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX2xicnJfZmxhZ19wZGZzIiB0aXRsZT0i
TEJSUiBGbGFnIFBERnMiPgorPHR0Y29sPkZyYW1lIFNpemU8L3R0Y29sPgorPHR0Y29sPlBERjwv
dHRjb2w+Cis8Yz40MCZuYnNwO21zPC9jPiA8Yz57MCwgNTMsIDUzLCAxNTB9LzI1NjwvYz4KKzxj
PjYwJm5ic3A7bXM8L2M+IDxjPnswLCA0MSwgMjAsIDI5LCA0MSwgMTUsIDI4LCA4Mn0vMjU2PC9j
PgorPC90ZXh0dGFibGU+CisKKzx0PgorQSAxMCZuYnNwO29yIDIwJm5ic3A7bXMgT3B1cyBmcmFt
ZSBkb2VzIG5vdCBjb250YWluIGFueSBwZXItZnJhbWUgTEJSUiBmbGFncywKKyBhcyB0aGVyZSBt
YXkgYmUgYXQgbW9zdCBvbmUgTEJSUiBmcmFtZSBwZXIgY2hhbm5lbC4KK1RoZSBnbG9iYWwgTEJS
UiBmbGFnIGluIHRoZSBoZWFkZXIgYml0cyAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19oZWFkZXJf
Yml0cyIvPikKKyBpcyBhbHJlYWR5IHN1ZmZpY2llbnQgdG8gaW5kaWNhdGUgdGhlIHByZXNlbmNl
IG9mIHRoYXQgc2luZ2xlIExCUlIgZnJhbWUuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rp
b24gYW5jaG9yPSJzaWxrX2xicnJfZnJhbWVzIiB0aXRsZT0iTEJSUiBGcmFtZXMiPgorPHQ+CitU
aGUgTEJSUiBmcmFtZXMsIGlmIHByZXNlbnQsIGNvbnRhaW4gYW4gZW5jb2RlZCByZXByZXNlbnRh
dGlvbiBvZiB0aGUgc2lnbmFsCisgaW1tZWRpYXRlbHkgcHJpb3IgdG8gdGhlIGN1cnJlbnQgT3B1
cyBmcmFtZSBhcyBpZiBpdCB3ZXJlIGVuY29kZWQgd2l0aCB0aGUKKyBjdXJyZW50IG1vZGUsIGZy
YW1lIHNpemUsIGF1ZGlvIGJhbmR3aWR0aCwgYW5kIGNoYW5uZWwgY291bnQsIGV2ZW4gaWYgdGhv
c2UKKyBkaWZmZXIgZnJvbSB0aGUgcHJpb3IgT3B1cyBmcmFtZS4KK1doZW4gb25lIG9mIHRoZXNl
IHBhcmFtZXRlcnMgY2hhbmdlcyBmcm9tIG9uZSBPcHVzIGZyYW1lIHRvIHRoZSBuZXh0LCB0aGlz
CisgaW1wbGllcyB0aGF0IHRoZSBMQlJSIGZyYW1lcyBvZiB0aGUgY3VycmVudCBPcHVzIGZyYW1l
IG1heSBub3QgYmUgc2ltcGxlCisgZHJvcC1pbiByZXBsYWNlbWVudHMgZm9yIHRoZSBjb250ZW50
cyBvZiB0aGUgcHJldmlvdXMgT3B1cyBmcmFtZS4KKzwvdD4KKworPHQ+CitGb3IgZXhhbXBsZSwg
d2hlbiBzd2l0Y2hpbmcgZnJvbSAyMCZuYnNwO21zIHRvIDYwJm5ic3A7bXMsIHRoZSA2MCZuYnNw
O21zIE9wdXMKKyBmcmFtZSBtYXkgY29udGFpbiBMQlJSIGZyYW1lcyBjb3ZlcmluZyB1cCB0byB0
aHJlZSBwcmlvciAyMCZuYnNwO21zIE9wdXMKKyBmcmFtZXMsIGV2ZW4gaWYgdGhvc2UgZnJhbWVz
IGFscmVhZHkgY29udGFpbmVkIExCUlIgZnJhbWVzIGNvdmVyaW5nIHNvbWUgb2YKKyB0aGUgc2Ft
ZSB0aW1lIHBlcmlvZHMuCitXaGVuIHN3aXRjaGluZyBmcm9tIDIwJm5ic3A7bXMgdG8gMTAmbmJz
cDttcywgdGhlIDEwJm5ic3A7bXMgT3B1cyBmcmFtZSBjYW4KKyBjb250YWluIGFuIExCUlIgZnJh
bWUgY292ZXJpbmcgYXQgbW9zdCBoYWxmIHRoZSBwcmlvciAyMCZuYnNwO21zIE9wdXMgZnJhbWUs
CisgcG90ZW50aWFsbHkgbGVhdmluZyBhIGhvbGUgdGhhdCBuZWVkcyB0byBiZSBjb25jZWFsZWQg
ZnJvbSBldmVuIGEgc2luZ2xlCisgcGFja2V0IGxvc3MgKHNlZSA8eHJlZiB0YXJnZXQ9IlBhY2tl
dCBMb3NzIENvbmNlYWxtZW50Ii8+KS4KK1doZW4gc3dpdGNoaW5nIGZyb20gbW9ubyB0byBzdGVy
ZW8sIHRoZSBMQlJSIGZyYW1lcyBpbiB0aGUgZmlyc3Qgc3RlcmVvIE9wdXMKKyBmcmFtZSBNQVkg
Y29udGFpbiBhIG5vbi10cml2aWFsIHNpZGUgY2hhbm5lbC4KKzwvdD4KKworPHQ+CitJbiBvcmRl
ciB0byBwcm9wZXJseSBwcm9kdWNlIExCUlIgZnJhbWVzIHVuZGVyIGFsbCBjb25kaXRpb25zLCBh
biBlbmNvZGVyIG1pZ2h0CisgbmVlZCB0byBidWZmZXIgdXAgdG8gNjAmbmJzcDttcyBvZiBhdWRp
byBhbmQgcmUtZW5jb2RlIGl0IGR1cmluZyB0aGVzZQorIHRyYW5zaXRpb25zLgorSG93ZXZlciwg
dGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBvcHRzIHRvIGRpc2FibGUgTEJSUiBmcmFtZXMg
YXQgdGhlCisgdHJhbnNpdGlvbiBwb2ludCBmb3Igc2ltcGxpY2l0eS4KK1NpbmNlIHRyYW5zaXRp
b25zIGFyZSByZWxhdGl2ZWx5IGluZnJlcXVlbnQgaW4gbm9ybWFsIHVzYWdlLCB0aGlzIGRvZXMg
bm90IGhhdmUKKyBhIHNpZ25pZmljYW50IGltcGFjdCBvbiBwYWNrZXQgbG9zcyByb2J1c3RuZXNz
LgorPC90PgorCis8dD4KK1RoZSBMQlJSIGZyYW1lcyBpbW1lZGlhdGVseSBmb2xsb3cgdGhlIExC
UlIgZmxhZ3MsIHByaW9yIHRvIGFueSByZWd1bGFyIFNJTEsKKyBmcmFtZXMuCis8eHJlZiB0YXJn
ZXQ9InNpbGtfZnJhbWUiLz4gZGVzY3JpYmVzIHRoZWlyIGV4YWN0IGNvbnRlbnRzLgorTEJSUiBm
cmFtZXMgZG8gbm90IGluY2x1ZGUgdGhlaXIgb3duIHNlcGFyYXRlIFZBRCBmbGFncy4KK0xCUlIg
ZnJhbWVzIGFyZSBvbmx5IG1lYW50IHRvIGJlIHRyYW5zbWl0dGVkIGZvciBhY3RpdmUgc3BlZWNo
LCB0aHVzIGFsbCBMQlJSCisgZnJhbWVzIGFyZSB0cmVhdGVkIGFzIGFjdGl2ZS4KKzwvdD4KKwor
PHQ+CitJbiBhIHN0ZXJlbyBPcHVzIGZyYW1lIGxvbmdlciB0aGFuIDIwJm5ic3A7bXMsIGFsdGhv
dWdoIHRoZSBwZXItZnJhbWUgTEJSUgorIGZsYWdzIGZvciB0aGUgbWlkIGNoYW5uZWwgYXJlIGNv
ZGVkIGFzIGEgdW5pdCBiZWZvcmUgdGhlIHBlci1mcmFtZSBMQlJSIGZsYWdzCisgZm9yIHRoZSBz
aWRlIGNoYW5uZWwsIHRoZSBMQlJSIGZyYW1lcyB0aGVtc2VsdmVzIGFyZSBpbnRlcmxlYXZlZC4K
K1RoZSBkZWNvZGVyIHBhcnNlcyBhbiBMQlJSIGZyYW1lIGZvciB0aGUgbWlkIGNoYW5uZWwgb2Yg
YSBnaXZlbiAyMCZuYnNwO21zCisgaW50ZXJ2YWwgKGlmIHByZXNlbnQpIGFuZCB0aGVuIGltbWVk
aWF0ZWx5IHBhcnNlcyB0aGUgY29ycmVzcG9uZGluZyBMQlJSCisgZnJhbWUgZm9yIHRoZSBzaWRl
IGNoYW5uZWwgKGlmIHByZXNlbnQpLCBiZWZvcmUgcHJvY2VlZGluZyB0byB0aGUgbmV4dAorIDIw
Jm5ic3A7bXMgaW50ZXJ2YWwuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0i
c2lsa19yZWd1bGFyX2ZyYW1lcyIgdGl0bGU9IlJlZ3VsYXIgU0lMSyBGcmFtZXMiPgorPHQ+CitU
aGUgcmVndWxhciBTSUxLIGZyYW1lKHMpIGZvbGxvdyB0aGUgTEJSUiBmcmFtZXMgKGlmIGFueSku
Cis8eHJlZiB0YXJnZXQ9InNpbGtfZnJhbWUiLz4gZGVzY3JpYmVzIHRoZWlyIGNvbnRlbnRzLCBh
cyB3ZWxsLgorVW5saWtlIHRoZSBMQlJSIGZyYW1lcywgYSByZWd1bGFyIFNJTEsgZnJhbWUgaXMg
Y29kZWQgZm9yIGVhY2ggdGltZSBpbnRlcnZhbCBpbgorIGFuIE9wdXMgZnJhbWUsIGV2ZW4gaWYg
dGhlIGNvcnJlc3BvbmRpbmcgVkFEIGZsYWdzIGFyZSB1bnNldC4KK0ZvciBzdGVyZW8gT3B1cyBm
cmFtZXMgbG9uZ2VyIHRoYW4gMjAmbmJzcDttcywgdGhlIHJlZ3VsYXIgbWlkIGFuZCBzaWRlIFNJ
TEsKKyBmcmFtZXMgZm9yIGVhY2ggMjAmbmJzcDttcyBpbnRlcnZhbCBhcmUgaW50ZXJsZWF2ZWQs
IGp1c3QgYXMgd2l0aCB0aGUgTEJSUgorIGZyYW1lcy4KK1RoZSBzaWRlIGZyYW1lIG1heSBiZSBz
a2lwcGVkIGJ5IGNvZGluZyBhbiBhcHByb3ByaWF0ZSBmbGFnLCBhcyBkZXRhaWxlZCBpbgorIDx4
cmVmIHRhcmdldD0ic2lsa19taWRfb25seV9mbGFnIi8+LgorPC90PgorPC9zZWN0aW9uPgorCis8
c2VjdGlvbiBhbmNob3I9InNpbGtfZnJhbWUiIHRpdGxlPSJTSUxLIEZyYW1lIENvbnRlbnRzIj4K
Kzx0PgorRWFjaCBTSUxLIGZyYW1lIGluY2x1ZGVzIGEgc2V0IG9mIHNpZGUgaW5mb3JtYXRpb24g
dGhhdCBlbmNvZGVzCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5UaGUgZnJhbWUgdHlwZSBh
bmQgcXVhbnRpemF0aW9uIHR5cGUgKDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV90eXBlIi8+KSw8
L3Q+Cis8dD5RdWFudGl6YXRpb24gZ2FpbnMgKDx4cmVmIHRhcmdldD0ic2lsa19nYWlucyIvPiks
PC90PgorPHQ+U2hvcnQtdGVybSBwcmVkaWN0aW9uIGZpbHRlciBjb2VmZmljaWVudHMgKDx4cmVm
IHRhcmdldD0ic2lsa19ubHNmcyIvPiksPC90PgorPHQ+QSBMaW5lIFNwZWN0cmFsIEZyZXF1ZW5j
aWVzIChMU0YpIGludGVycG9sYXRpb24gd2VpZ2h0ICg8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9p
bnRlcnBvbGF0aW9uIi8+KSw8L3Q+Cis8dD4KK0xvbmctdGVybSBwcmVkaWN0aW9uIGZpbHRlciBs
YWdzIGFuZCBnYWlucyAoPHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9wYXJhbXMiLz4pLAorIGFuZAor
PC90PgorPHQ+QSBsaW5lYXIgY29uZ3J1ZW50aWFsIGdlbmVyYXRvciAoTENHKSBzZWVkICg8eHJl
ZiB0YXJnZXQ9InNpbGtfc2VlZCIvPikuPC90PgorPC9saXN0PgorVGhlIHF1YW50aXplZCBleGNp
dGF0aW9uIHNpZ25hbCAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19leGNpdGF0aW9uIi8+KSBmb2xs
b3dzCisgdGhlc2UgYXQgdGhlIGVuZCBvZiB0aGUgZnJhbWUuCis8eHJlZiB0YXJnZXQ9InNpbGtf
ZnJhbWVfc3ltYm9scyIvPiBkZXRhaWxzIHRoZSBvdmVyYWxsIG9yZ2FuaXphdGlvbiBvZiBhCisg
U0lMSyBmcmFtZS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfZnJhbWVfc3ltYm9s
cyIKKyB0aXRsZT0iT3JkZXIgb2YgdGhlIHN5bWJvbHMgaW4gYW4gaW5kaXZpZHVhbCBTSUxLIGZy
YW1lIj4KKzx0dGNvbCBhbGlnbj0iY2VudGVyIj5TeW1ib2wocyk8L3R0Y29sPgorPHR0Y29sIGFs
aWduPSJjZW50ZXIiPlBERihzKTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+Q29uZGl0
aW9uPC90dGNvbD4KKworPGM+U3RlcmVvIFByZWRpY3Rpb24gV2VpZ2h0czwvYz4KKzxjPjx4cmVm
IHRhcmdldD0ic2lsa19zdGVyZW9fcHJlZF9wZGZzIi8+PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJz
aWxrX3N0ZXJlb19wcmVkIi8+PC9jPgorCis8Yz5NaWQtb25seSBGbGFnPC9jPgorPGM+PHhyZWYg
dGFyZ2V0PSJzaWxrX21pZF9vbmx5X3BkZiIvPjwvYz4KKzxjPjx4cmVmIHRhcmdldD0ic2lsa19t
aWRfb25seV9mbGFnIi8+PC9jPgorCis8Yz5GcmFtZSBUeXBlPC9jPgorPGM+PHhyZWYgdGFyZ2V0
PSJzaWxrX2ZyYW1lX3R5cGUiLz48L2M+Cis8Yy8+CisKKzxjPlN1YmZyYW1lIEdhaW5zPC9jPgor
PGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2dhaW5zIi8+PC9jPgorPGMvPgorCis8Yz5Ob3JtYWxpemVk
IExTRiBTdGFnZS0xIEluZGV4PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zfc3RhZ2Ux
X3BkZnMiLz48L2M+Cis8Yy8+CisKKzxjPk5vcm1hbGl6ZWQgTFNGIFN0YWdlLTIgUmVzaWR1YWw8
L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFnZTIiLz48L2M+Cis8Yy8+CisKKzxj
Pk5vcm1hbGl6ZWQgTFNGIEludGVycG9sYXRpb24gV2VpZ2h0PC9jPgorPGM+PHhyZWYgdGFyZ2V0
PSJzaWxrX25sc2ZfaW50ZXJwX3BkZiIvPjwvYz4KKzxjPjIwJm5ic3A7bXMgZnJhbWU8L2M+CisK
KzxjPlByaW1hcnkgUGl0Y2ggTGFnPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9sYWdz
Ii8+PC9jPgorPGM+Vm9pY2VkIGZyYW1lPC9jPgorCis8Yz5TdWJmcmFtZSBQaXRjaCBDb250b3Vy
PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX3BpdGNoX2NvbnRvdXJfcGRmcyIvPjwvYz4KKzxj
PlZvaWNlZCBmcmFtZTwvYz4KKworPGM+UGVyaW9kaWNpdHkgSW5kZXg8L2M+Cis8Yz48eHJlZiB0
YXJnZXQ9InNpbGtfcGVyaW5kZXhfcGRmIi8+PC9jPgorPGM+Vm9pY2VkIGZyYW1lPC9jPgorCis8
Yz5MVFAgRmlsdGVyPC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9maWx0ZXJfcGRmcyIv
PjwvYz4KKzxjPlZvaWNlZCBmcmFtZTwvYz4KKworPGM+TFRQIFNjYWxpbmc8L2M+Cis8Yz48eHJl
ZiB0YXJnZXQ9InNpbGtfbHRwX3NjYWxpbmdfcGRmIi8+PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJz
aWxrX2x0cF9zY2FsaW5nIi8+PC9jPgorCis8Yz5MQ0cgU2VlZDwvYz4KKzxjPjx4cmVmIHRhcmdl
dD0ic2lsa19zZWVkX3BkZiIvPjwvYz4KKzxjLz4KKworPGM+RXhjaXRhdGlvbiBSYXRlIExldmVs
PC9jPgorPGM+PHhyZWYgdGFyZ2V0PSJzaWxrX3JhdGVfbGV2ZWxfcGRmcyIvPjwvYz4KKzxjLz4K
KworPGM+RXhjaXRhdGlvbiBQdWxzZSBDb3VudHM8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtf
cHVsc2VfY291bnRfcGRmcyIvPjwvYz4KKzxjLz4KKworPGM+RXhjaXRhdGlvbiBQdWxzZSBMb2Nh
dGlvbnM8L2M+Cis8Yz48eHJlZiB0YXJnZXQ9InNpbGtfcHVsc2VfbG9jYXRpb25zIi8+PC9jPgor
PGM+Tm9uLXplcm8gcHVsc2UgY291bnQ8L2M+CisKKzxjPkV4Y2l0YXRpb24gTFNCczwvYz4KKzxj
Pjx4cmVmIHRhcmdldD0ic2lsa19zaGVsbF9sc2JfcGRmIi8+PC9jPgorPGM+PHhyZWYgdGFyZ2V0
PSJzaWxrX3B1bHNlX2NvdW50cyIvPjwvYz4KKworPGM+RXhjaXRhdGlvbiBTaWduczwvYz4KKzxj
Pjx4cmVmIHRhcmdldD0ic2lsa19zaWduX3BkZnMiLz48L2M+Cis8Yy8+CisKKzwvdGV4dHRhYmxl
PgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfc3RlcmVvX3ByZWQiIHRvYz0iaW5jbHVkZSIKKyB0
aXRsZT0iU3RlcmVvIFByZWRpY3Rpb24gV2VpZ2h0cyI+Cis8dD4KK0EgU0lMSyBmcmFtZSBjb3Jy
ZXNwb25kaW5nIHRvIHRoZSBtaWQgY2hhbm5lbCBvZiBhIHN0ZXJlbyBPcHVzIGZyYW1lIGJlZ2lu
cworIHdpdGggYSBwYWlyIG9mIHNpZGUgY2hhbm5lbCBwcmVkaWN0aW9uIHdlaWdodHMsIGRlc2ln
bmVkIHN1Y2ggdGhhdCB6ZXJvcworIGluZGljYXRlIG5vcm1hbCBtaWQtc2lkZSBjb3VwbGluZy4K
K1NpbmNlIHRoZXNlIHdlaWdodHMgY2FuIGNoYW5nZSBvbiBldmVyeSBmcmFtZSwgdGhlIGZpcnN0
IHBvcnRpb24gb2YgZWFjaCBmcmFtZQorIGxpbmVhcmx5IGludGVycG9sYXRlcyBiZXR3ZWVuIHRo
ZSBwcmV2aW91cyB3ZWlnaHRzIGFuZCB0aGUgY3VycmVudCBvbmVzLCB1c2luZworIHplcm9zIGZv
ciB0aGUgcHJldmlvdXMgd2VpZ2h0cyBpZiBub25lIGFyZSBhdmFpbGFibGUuCitUaGVzZSBwcmVk
aWN0aW9uIHdlaWdodHMgYXJlIG5ldmVyIGluY2x1ZGVkIGluIGEgbW9ubyBPcHVzIGZyYW1lLCBh
bmQgdGhlCisgcHJldmlvdXMgd2VpZ2h0cyBhcmUgcmVzZXQgdG8gemVyb3Mgb24gYW55IHRyYW5z
aXRpb24gZnJvbSBtb25vIHRvIHN0ZXJlby4KK1RoZXkgYXJlIGFsc28gbm90IGluY2x1ZGVkIGlu
IGFuIExCUlIgZnJhbWUgZm9yIHRoZSBzaWRlIGNoYW5uZWwsIGV2ZW4gaWYgdGhlCisgTEJSUiBm
bGFncyBpbmRpY2F0ZSB0aGUgY29ycmVzcG9uZGluZyBtaWQgY2hhbm5lbCB3YXMgbm90IGNvZGVk
LgorSW4gdGhhdCBjYXNlLCB0aGUgcHJldmlvdXMgd2VpZ2h0cyBhcmUgdXNlZCwgYWdhaW4gc3Vi
c3RpdHV0aW5nIGluIHplcm9zIGlmIG5vCisgcHJldmlvdXMgd2VpZ2h0cyBhcmUgYXZhaWxhYmxl
IHNpbmNlIHRoZSBsYXN0IGRlY29kZXIgcmVzZXQKKyAoc2VlIDx4cmVmIHRhcmdldD0iZGVjb2Rl
ci1yZXNldCIvPikuCis8L3Q+CisKKzx0PgorVG8gc3VtbWFyaXplLCB0aGVzZSB3ZWlnaHRzIGFy
ZSBjb2RlZCBpZiBhbmQgb25seSBpZgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+VGhpcyBp
cyBhIHN0ZXJlbyBPcHVzIGZyYW1lICg8eHJlZiB0YXJnZXQ9InRvY19ieXRlIi8+KSwgYW5kPC90
PgorPHQ+VGhlIGN1cnJlbnQgU0lMSyBmcmFtZSBjb3JyZXNwb25kcyB0byB0aGUgbWlkIGNoYW5u
ZWwuPC90PgorPC9saXN0PgorPC90PgorCis8dD4KK1RoZSBwcmVkaWN0aW9uIHdlaWdodHMgYXJl
IGNvZGVkIGluIHRocmVlIHNlcGFyYXRlIHBpZWNlcywgd2hpY2ggYXJlIGRlY29kZWQKKyBieSBz
aWxrX3N0ZXJlb19kZWNvZGVfcHJlZCgpIChkZWNvZGVfc3RlcmVvX3ByZWQuYykuCitUaGUgZmly
c3QgcGllY2Ugam9pbnRseSBjb2RlcyB0aGUgaGlnaC1vcmRlciBwYXJ0IG9mIGEgdGFibGUgaW5k
ZXggZm9yIGJvdGgKKyB3ZWlnaHRzLgorVGhlIHNlY29uZCBwaWVjZSBjb2RlcyB0aGUgbG93LW9y
ZGVyIHBhcnQgb2YgZWFjaCB0YWJsZSBpbmRleC4KK1RoZSB0aGlyZCBwaWVjZSBjb2RlcyBhbiBv
ZmZzZXQgdXNlZCB0byBsaW5lYXJseSBpbnRlcnBvbGF0ZSBiZXR3ZWVuIHRhYmxlCisgaW5kaWNl
cy4KK1RoZSBkZXRhaWxzIGFyZSBhcyBmb2xsb3dzLgorPC90PgorCis8dD4KK0xldCBuIGJlIGFu
IGluZGV4IGRlY29kZWQgd2l0aCB0aGUgMjUtZWxlbWVudCBzdGFnZS0xIFBERiBpbgorIDx4cmVm
IHRhcmdldD0ic2lsa19zdGVyZW9fcHJlZF9wZGZzIi8+LgorVGhlbiBsZXQgaTAgYW5kIGkxIGJl
IGluZGljZXMgZGVjb2RlZCB3aXRoIHRoZSBzdGFnZS0yIGFuZCBzdGFnZS0zIFBERnMgaW4KKyA8
eHJlZiB0YXJnZXQ9InNpbGtfc3RlcmVvX3ByZWRfcGRmcyIvPiwgcmVzcGVjdGl2ZWx5LCBhbmQg
bGV0IGkyIGFuZCBpMworIGJlIHR3byBtb3JlIGluZGljZXMgZGVjb2RlZCB3aXRoIHRoZSBzdGFn
ZS0yIGFuZCBzdGFnZS0zIFBERnMsIGFsbCBpbiB0aGF0Cisgb3JkZXIuCis8L3Q+CisKKzx0ZXh0
dGFibGUgYW5jaG9yPSJzaWxrX3N0ZXJlb19wcmVkX3BkZnMiIHRpdGxlPSJTdGVyZW8gV2VpZ2h0
IFBERnMiPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5TdGFnZTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249
ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz5TdGFnZSAxPC9jPgorPGM+ezcsICAyLCAgMSwgIDEsICAx
LAorICAgMTAsIDI0LCAgOCwgIDEsICAxLAorICAgIDMsIDIzLCA5MiwgMjMsICAzLAorICAgIDEs
ICAxLCAgOCwgMjQsIDEwLAorICAgIDEsICAxLCAgMSwgIDIsICA3fS8yNTY8L2M+CisKKzxjPlN0
YWdlIDI8L2M+Cis8Yz57ODUsIDg2LCA4NX0vMjU2PC9jPgorCis8Yz5TdGFnZSAzPC9jPgorPGM+
ezUxLCA1MSwgNTIsIDUxLCA1MX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlbiB1
c2UgbiwgaTAsIGFuZCBpMiB0byBmb3JtIHR3byB0YWJsZSBpbmRpY2VzLCB3aTAgYW5kIHdpMSwg
YWNjb3JkaW5nIHRvCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNl
bnRlciI+PCFbQ0RBVEFbCit3aTAgPSBpMCArIDMqKG4vNSkKK3dpMSA9IGkyICsgMyoobiU1KQor
XV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cisgd2hlcmUgdGhlIGRpdmlzaW9uIGlzIGludGVnZXIg
ZGl2aXNpb24uCitUaGUgcmFuZ2Ugb2YgdGhlc2UgaW5kaWNlcyBpcyAwIHRvIDE0LCBpbmNsdXNp
dmUuCitMZXQgd1tpXSBiZSB0aGUgaSd0aCB3ZWlnaHQgZnJvbSA8eHJlZiB0YXJnZXQ9InNpbGtf
c3RlcmVvX3dlaWdodHNfdGFibGUiLz4uCitUaGVuIHRoZSB0d28gcHJlZGljdGlvbiB3ZWlnaHRz
LCB3MF9RMTMgYW5kIHcxX1ExMywgYXJlCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCit3MV9RMTMgPSB3X1ExM1t3aTFdCisgICAgICAg
ICArICgod19RMTNbd2kxKzFdIC0gd19RMTNbd2kxXSkqNjU1NCkgPj4gMTYpKigyKmkzICsgMSkK
KwordzBfUTEzID0gd19RMTNbd2kwXQorICAgICAgICAgKyAoKHdfUTEzW3dpMCsxXSAtIHdfUTEz
W3dpMF0pKjY1NTQpID4+IDE2KSooMippMSArIDEpCisgICAgICAgICAtIHcxX1ExMworXV0+PC9h
cnR3b3JrPgorPC9maWd1cmU+CitOLmIuLCB3MV9RMTMgaXMgY29tcHV0ZWQgZmlyc3QgaGVyZSwg
YmVjYXVzZSB3MF9RMTMgZGVwZW5kcyBvbiBpdC4KK1RoZSBjb25zdGFudCA2NTU0IGlzIGFwcHJv
eGltYXRlbHkgMC4xIGluIFExNi4KK0FsdGhvdWdoIHdpMCBhbmQgd2kxIG9ubHkgaGF2ZSAxNSBw
b3NzaWJsZSB2YWx1ZXMsCisgPHhyZWYgdGFyZ2V0PSJzaWxrX3N0ZXJlb193ZWlnaHRzX3RhYmxl
Ii8+IGNvbnRhaW5zIDE2IGVudHJpZXMgdG8gYWxsb3cKKyBpbnRlcnBvbGF0aW9uIGJldHdlZW4g
ZW50cnkgd2kwIGFuZCAod2kwJm5ic3A7KyZuYnNwOzEpIChhbmQgbGlrZXdpc2UgZm9yIHdpMSku
Cis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3N0ZXJlb193ZWlnaHRzX3RhYmxlIgor
IHRpdGxlPSJTdGVyZW8gV2VpZ2h0IFRhYmxlIj4KKzx0dGNvbCBhbGlnbj0ibGVmdCI+SW5kZXg8
L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+V2VpZ2h0IChRMTMpPC90dGNvbD4KKyA8Yz4w
PC9jPiA8Yz4tMTM3MzI8L2M+CisgPGM+MTwvYz4gPGM+LTEwMDUwPC9jPgorIDxjPjI8L2M+ICA8
Yz4tODI2NjwvYz4KKyA8Yz4zPC9jPiAgPGM+LTc1MjY8L2M+CisgPGM+NDwvYz4gIDxjPi02NTAw
PC9jPgorIDxjPjU8L2M+ICA8Yz4tNTAwMDwvYz4KKyA8Yz42PC9jPiAgPGM+LTI5NTA8L2M+Cisg
PGM+NzwvYz4gICA8Yz4tODIwPC9jPgorIDxjPjg8L2M+ICAgIDxjPjgyMDwvYz4KKyA8Yz45PC9j
PiAgIDxjPjI5NTA8L2M+Cis8Yz4xMDwvYz4gICA8Yz41MDAwPC9jPgorPGM+MTE8L2M+ICAgPGM+
NjUwMDwvYz4KKzxjPjEyPC9jPiAgIDxjPjc1MjY8L2M+Cis8Yz4xMzwvYz4gICA8Yz44MjY2PC9j
PgorPGM+MTQ8L2M+ICA8Yz4xMDA1MDwvYz4KKzxjPjE1PC9jPiAgPGM+MTM3MzI8L2M+Cis8L3Rl
eHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbWlkX29ubHlf
ZmxhZyIgdG9jPSJpbmNsdWRlIiB0aXRsZT0iTWlkLW9ubHkgRmxhZyI+Cis8dD4KK0EgZmxhZyBh
cHBlYXJzIGFmdGVyIHRoZSBzdGVyZW8gcHJlZGljdGlvbiB3ZWlnaHRzIHRoYXQgaW5kaWNhdGVz
IGlmIG9ubHkgdGhlCisgbWlkIGNoYW5uZWwgaXMgY29kZWQgZm9yIHRoaXMgdGltZSBpbnRlcnZh
bC4KK0l0IGFwcGVhcnMgb25seSB3aGVuCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5UaGlz
IGlzIGEgc3RlcmVvIE9wdXMgZnJhbWUgKHNlZSA8eHJlZiB0YXJnZXQ9InRvY19ieXRlIi8+KSw8
L3Q+Cis8dD5UaGUgY3VycmVudCBTSUxLIGZyYW1lIGNvcnJlc3BvbmRzIHRvIHRoZSBtaWQgY2hh
bm5lbCwgYW5kPC90PgorPHQ+RWl0aGVyCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5UaGlz
IGlzIGEgcmVndWxhciBTSUxLIGZyYW1lIHdoZXJlIHRoZSBWQUQgZmxhZ3MKKyAoc2VlIDx4cmVm
IHRhcmdldD0ic2lsa19oZWFkZXJfYml0cyIvPikgaW5kaWNhdGUgdGhhdCB0aGUgY29ycmVzcG9u
ZGluZyBzaWRlCisgY2hhbm5lbCBpcyBub3QgYWN0aXZlLjwvdD4KKzx0PgorVGhpcyBpcyBhbiBM
QlJSIGZyYW1lIHdoZXJlIHRoZSBMQlJSIGZsYWdzCisgKHNlZSA8eHJlZiB0YXJnZXQ9InNpbGtf
aGVhZGVyX2JpdHMiLz4gYW5kIDx4cmVmIHRhcmdldD0ic2lsa19sYnJyX2ZsYWdzIi8+KQorIGlu
ZGljYXRlIHRoYXQgdGhlIGNvcnJlc3BvbmRpbmcgc2lkZSBjaGFubmVsIGlzIG5vdCBjb2RlZC4K
KzwvdD4KKzwvbGlzdD4KKzwvdD4KKzwvbGlzdD4KK0l0IGlzIG9taXR0ZWQgd2hlbiB0aGVyZSBh
cmUgbm8gc3RlcmVvIHdlaWdodHMsIGZvciBhbGwgb2YgdGhlIHNhbWUgcmVhc29ucy4KK0l0IGlz
IGFsc28gb21pdHRlZCBmb3IgYSByZWd1bGFyIFNJTEsgZnJhbWUgd2hlbiB0aGUgVkFEIGZsYWcg
b2YgdGhlCisgY29ycmVzcG9uZGluZyBzaWRlIGNoYW5uZWwgZnJhbWUgaXMgc2V0IChpbmRpY2F0
aW5nIGl0IGlzIGFjdGl2ZSkuCitUaGUgc2lkZSBjaGFubmVsIG11c3QgYmUgY29kZWQgaW4gdGhp
cyBjYXNlLCBtYWtpbmcgdGhlIG1pZC1vbmx5IGZsYWcKKyByZWR1bmRhbnQuCitJdCBpcyBhbHNv
IG9taXR0ZWQgZm9yIGFuIExCUlIgZnJhbWUgd2hlbiB0aGUgY29ycmVzcG9uZGluZyBMQlJSIGZs
YWdzCisgaW5kaWNhdGUgdGhlIHNpZGUgY2hhbm5lbCBpcyBjb2RlZC4KKzwvdD4KKworPHQ+CitX
aGVuIHRoZSBmbGFnIGlzIHByZXNlbnQsIHRoZSBkZWNvZGVyIHJlYWRzIGEgc2luZ2xlIHZhbHVl
IHVzaW5nIHRoZSBQREYgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtfbWlkX29ubHlfcGRmIi8+LCBh
cyBpbXBsZW1lbnRlZCBpbgorIHNpbGtfc3RlcmVvX2RlY29kZV9taWRfb25seSgpIChkZWNvZGVf
c3RlcmVvX3ByZWQuYykuCitJZiB0aGUgZmxhZyBpcyBzZXQsIHRoZW4gdGhlcmUgaXMgbm8gY29y
cmVzcG9uZGluZyBTSUxLIGZyYW1lIGZvciB0aGUgc2lkZQorIGNoYW5uZWwsIHRoZSBlbnRpcmUg
ZGVjb2RpbmcgcHJvY2VzcyBmb3IgdGhlIHNpZGUgY2hhbm5lbCBpcyBza2lwcGVkLCBhbmQKKyB6
ZXJvcyBhcmUgZmVkIHRvIHRoZSBzdGVyZW8gdW5taXhpbmcgcHJvY2VzcyAoc2VlCisgPHhyZWYg
dGFyZ2V0PSJzaWxrX3N0ZXJlb191bm1peGluZyIvPikgaW5zdGVhZC4KK0FzIHN0YXRlZCBhYm92
ZSwgTEJSUiBmcmFtZXMgc3RpbGwgaW5jbHVkZSB0aGlzIGZsYWcgd2hlbiB0aGUgTEJSUiBmbGFn
CisgaW5kaWNhdGVzIHRoYXQgdGhlIHNpZGUgY2hhbm5lbCBpcyBub3QgY29kZWQuCitJbiB0aGF0
IGNhc2UsIGlmIHRoaXMgZmxhZyBpcyB6ZXJvIChpbmRpY2F0aW5nIHRoYXQgdGhlcmUgc2hvdWxk
IGJlIGEgc2lkZQorIGNoYW5uZWwpLCB0aGVuIFBhY2tldCBMb3NzIENvbmNlYWxtZW50IChQTEMs
IHNlZQorIDx4cmVmIHRhcmdldD0iUGFja2V0IExvc3MgQ29uY2VhbG1lbnQiLz4pIFNIT1VMRCBi
ZSBpbnZva2VkIHRvIHJlY292ZXIgYQorIHNpZGUgY2hhbm5lbCBzaWduYWwuCitPdGhlcndpc2Us
IHRoZSBzdGVyZW8gaW1hZ2Ugd2lsbCBjb2xsYXBzZS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNo
b3I9InNpbGtfbWlkX29ubHlfcGRmIiB0aXRsZT0iTWlkLW9ubHkgRmxhZyBQREYiPgorPHR0Y29s
IGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29sPgorPGM+ezE5MiwgNjR9LzI1NjwvYz4KKzwvdGV4dHRh
YmxlPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19mcmFtZV90eXBlIiB0
b2M9ImluY2x1ZGUiIHRpdGxlPSJGcmFtZSBUeXBlIj4KKzx0PgorRWFjaCBTSUxLIGZyYW1lIGNv
bnRhaW5zIGEgc2luZ2xlICJmcmFtZSB0eXBlIiBzeW1ib2wgdGhhdCBqb2ludGx5IGNvZGVzIHRo
ZQorIHNpZ25hbCB0eXBlIGFuZCBxdWFudGl6YXRpb24gb2Zmc2V0IHR5cGUgb2YgdGhlIGNvcnJl
c3BvbmRpbmcgZnJhbWUuCitJZiB0aGUgY3VycmVudCBmcmFtZSBpcyBhIHJlZ3VsYXIgU0lMSyBm
cmFtZSB3aG9zZSBWQUQgYml0IHdhcyBub3Qgc2V0IChhbgorICJpbmFjdGl2ZSIgZnJhbWUpLCB0
aGVuIHRoZSBmcmFtZSB0eXBlIHN5bWJvbCB0YWtlcyBvbiBhIHZhbHVlIG9mIGVpdGhlciAwIG9y
CisgMSBhbmQgaXMgZGVjb2RlZCB1c2luZyB0aGUgZmlyc3QgUERGIGluIDx4cmVmIHRhcmdldD0i
c2lsa19mcmFtZV90eXBlX3BkZnMiLz4uCitJZiB0aGUgZnJhbWUgaXMgYW4gTEJSUiBmcmFtZSBv
ciBhIHJlZ3VsYXIgU0lMSyBmcmFtZSB3aG9zZSBWQUQgZmxhZyB3YXMgc2V0CisgKGFuICJhY3Rp
dmUiIGZyYW1lKSwgdGhlbiB0aGUgdmFsdWUgb2YgdGhlIHN5bWJvbCBtYXkgcmFuZ2UgZnJvbSAy
IHRvIDUsCisgaW5jbHVzaXZlLCBhbmQgaXMgZGVjb2RlZCB1c2luZyB0aGUgc2Vjb25kIFBERiBp
bgorIDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV90eXBlX3BkZnMiLz4uCis8eHJlZiB0YXJnZXQ9
InNpbGtfZnJhbWVfdHlwZV90YWJsZSIvPiB0cmFuc2xhdGVzIGJldHdlZW4gdGhlIHZhbHVlIG9m
IHRoZQorIGZyYW1lIHR5cGUgc3ltYm9sIGFuZCB0aGUgY29ycmVzcG9uZGluZyBzaWduYWwgdHlw
ZSBhbmQgcXVhbnRpemF0aW9uIG9mZnNldAorIHR5cGUuCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5j
aG9yPSJzaWxrX2ZyYW1lX3R5cGVfcGRmcyIgdGl0bGU9IkZyYW1lIFR5cGUgUERGcyI+Cis8dHRj
b2w+VkFEIEZsYWc8L3R0Y29sPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz5JbmFjdGl2ZTwvYz4g
PGM+ezI2LCAyMzAsIDAsIDAsIDAsIDB9LzI1NjwvYz4KKzxjPkFjdGl2ZTwvYz4gICA8Yz57MCwg
MCwgMjQsIDc0LCAxNDgsIDEwfS8yNTY8L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBh
bmNob3I9InNpbGtfZnJhbWVfdHlwZV90YWJsZSIKKyB0aXRsZT0iU2lnbmFsIFR5cGUgYW5kIFF1
YW50aXphdGlvbiBPZmZzZXQgVHlwZSBmcm9tIEZyYW1lIFR5cGUiPgorPHR0Y29sPkZyYW1lIFR5
cGU8L3R0Y29sPgorPHR0Y29sPlNpZ25hbCBUeXBlPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmln
aHQiPlF1YW50aXphdGlvbiBPZmZzZXQgVHlwZTwvdHRjb2w+Cis8Yz4wPC9jPiA8Yz5JbmFjdGl2
ZTwvYz4gPGM+TG93PC9jPgorPGM+MTwvYz4gPGM+SW5hY3RpdmU8L2M+IDxjPkhpZ2g8L2M+Cis8
Yz4yPC9jPiA8Yz5VbnZvaWNlZDwvYz4gPGM+TG93PC9jPgorPGM+MzwvYz4gPGM+VW52b2ljZWQ8
L2M+IDxjPkhpZ2g8L2M+Cis8Yz40PC9jPiA8Yz5Wb2ljZWQ8L2M+ICAgPGM+TG93PC9jPgorPGM+
NTwvYz4gPGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+Cis8L3RleHR0YWJsZT4KKworPC9zZWN0
aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfZ2FpbnMiIHRvYz0iaW5jbHVkZSIgdGl0bGU9
IlN1YmZyYW1lIEdhaW5zIj4KKzx0PgorQSBzZXBhcmF0ZSBxdWFudGl6YXRpb24gZ2FpbiBpcyBj
b2RlZCBmb3IgZWFjaCA1Jm5ic3A7bXMgc3ViZnJhbWUuCitUaGVzZSBnYWlucyBjb250cm9sIHRo
ZSBzdGVwIHNpemUgYmV0d2VlbiBxdWFudGl6YXRpb24gbGV2ZWxzIG9mIHRoZSBleGNpdGF0aW9u
Cisgc2lnbmFsIGFuZCwgdGhlcmVmb3JlLCB0aGUgcXVhbGl0eSBvZiB0aGUgcmVjb25zdHJ1Y3Rp
b24uCitUaGV5IGFyZSBpbmRlcGVuZGVudCBvZiBhbmQgdW5yZWxhdGVkIHRvIHRoZSBwaXRjaCBj
b250b3VycyBjb2RlZCBmb3Igdm9pY2VkCisgZnJhbWVzLgorVGhlIHF1YW50aXphdGlvbiBnYWlu
cyBhcmUgdGhlbXNlbHZlcyB1bmlmb3JtbHkgcXVhbnRpemVkIHRvIDYmbmJzcDtiaXRzIG9uIGEK
KyBsb2cgc2NhbGUsIGdpdmluZyB0aGVtIGEgcmVzb2x1dGlvbiBvZiBhcHByb3hpbWF0ZWx5IDEu
MzY5Jm5ic3A7ZEIgYW5kIGEgcmFuZ2UKKyBvZiBhcHByb3hpbWF0ZWx5IDEuOTQmbmJzcDtkQiB0
byA4OC4yMSZuYnNwO2RCLgorPC90PgorPHQ+CitUaGUgc3ViZnJhbWUgZ2FpbnMgYXJlIGVpdGhl
ciBjb2RlZCBpbmRlcGVuZGVudGx5LCBvciByZWxhdGl2ZSB0byB0aGUgZ2FpbiBmcm9tCisgdGhl
IG1vc3QgcmVjZW50IGNvZGVkIHN1YmZyYW1lIGluIHRoZSBzYW1lIGNoYW5uZWwuCitJbmRlcGVu
ZGVudCBjb2RpbmcgaXMgdXNlZCBpZiBhbmQgb25seSBpZgorPGxpc3Qgc3R5bGU9InN5bWJvbHMi
PgorPHQ+CitUaGlzIGlzIHRoZSBmaXJzdCBzdWJmcmFtZSBpbiB0aGUgY3VycmVudCBTSUxLIGZy
YW1lLCBhbmQKKzwvdD4KKzx0PkVpdGhlcgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitU
aGlzIGlzIHRoZSBmaXJzdCBTSUxLIGZyYW1lIG9mIGl0cyB0eXBlIChMQlJSIG9yIHJlZ3VsYXIp
IGZvciB0aGlzIGNoYW5uZWwgaW4KKyB0aGUgY3VycmVudCBPcHVzIGZyYW1lLCBvcgorIDwvdD4K
Kzx0PgorVGhlIHByZXZpb3VzIFNJTEsgZnJhbWUgb2YgdGhlIHNhbWUgdHlwZSAoTEJSUiBvciBy
ZWd1bGFyKSBmb3IgdGhpcyBjaGFubmVsIGluCisgdGhlIHNhbWUgT3B1cyBmcmFtZSB3YXMgbm90
IGNvZGVkLgorPC90PgorPC9saXN0PgorPC90PgorPC9saXN0PgorPC90PgorCis8dD4KK0luIGFu
IGluZGVwZW5kZW50bHkgY29kZWQgc3ViZnJhbWUgZ2FpbiwgdGhlIDMgbW9zdCBzaWduaWZpY2Fu
dCBiaXRzIG9mIHRoZQorIHF1YW50aXphdGlvbiBnYWluIGFyZSBkZWNvZGVkIHVzaW5nIGEgUERG
IHNlbGVjdGVkIGZyb20KKyA8eHJlZiB0YXJnZXQ9InNpbGtfaW5kZXBlbmRlbnRfZ2Fpbl9tc2Jf
cGRmcyIvPiBiYXNlZCBvbiB0aGUgZGVjb2RlZCBzaWduYWwKKyB0eXBlIChzZWUgPHhyZWYgdGFy
Z2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2ls
a19pbmRlcGVuZGVudF9nYWluX21zYl9wZGZzIgorIHRpdGxlPSJQREZzIGZvciBJbmRlcGVuZGVu
dCBRdWFudGl6YXRpb24gR2FpbiBNU0IgQ29kaW5nIj4KKzx0dGNvbCBhbGlnbj0ibGVmdCI+U2ln
bmFsIFR5cGU8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29sPgorPGM+SW5h
Y3RpdmU8L2M+IDxjPnszMiwgMTEyLCA2OCwgMjksIDEyLCAgMSwgIDEsIDF9LzI1NjwvYz4KKzxj
PlVudm9pY2VkPC9jPiAgPGM+ezIsICAxNywgNDUsIDYwLCA2MiwgNDcsIDE5LCA0fS8yNTY8L2M+
Cis8Yz5Wb2ljZWQ8L2M+ICAgIDxjPnsxLCAgIDMsIDI2LCA3MSwgOTQsIDUwLCAgOSwgMn0vMjU2
PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlIDMgbGVhc3Qgc2lnbmlmaWNhbnQgYml0cyBh
cmUgZGVjb2RlZCB1c2luZyBhIHVuaWZvcm0gUERGOgorPC90PgorPHRleHR0YWJsZSBhbmNob3I9
InNpbGtfaW5kZXBlbmRlbnRfZ2Fpbl9sc2JfcGRmIgorIHRpdGxlPSJQREYgZm9yIEluZGVwZW5k
ZW50IFF1YW50aXphdGlvbiBHYWluIExTQiBDb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5Q
REY8L3R0Y29sPgorPGM+ezMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMn0vMjU2PC9jPgor
PC90ZXh0dGFibGU+CisKKzx0PgorVGhlc2UgNiBiaXRzIGFyZSBjb21iaW5lZCB0byBmb3JtIGEg
dmFsdWUsIGdhaW5faW5kZXgsIGJldHdlZW4gMCBhbmQgNjMuCitXaGVuIHRoZSBnYWluIGZvciB0
aGUgcHJldmlvdXMgc3ViZnJhbWUgaXMgYXZhaWxhYmxlLCB0aGVuIHRoZSBjdXJyZW50IGdhaW4g
aXMKKyBsaW1pdGVkIGFzIGZvbGxvd3M6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitsb2dfZ2FpbiA9IG1heChnYWluX2luZGV4LCBw
cmV2aW91c19sb2dfZ2FpbiAtIDE2KSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoaXMg
bWF5IGhlbHAgc29tZSBpbXBsZW1lbnRhdGlvbnMgbGltaXQgdGhlIGNoYW5nZSBpbiBwcmVjaXNp
b24gb2YgdGhlaXIKKyBpbnRlcm5hbCBMVFAgaGlzdG9yeS4KK1RoZSBpbmRpY2VzIHdoaWNoIHRo
aXMgY2xhbXAgYXBwbGllcyB0byBjYW5ub3Qgc2ltcGx5IGJlIHJlbW92ZWQgZnJvbSB0aGUKKyBj
b2RlYm9vaywgYmVjYXVzZSBwcmV2aW91c19sb2dfZ2FpbiB3aWxsIG5vdCBiZSBhdmFpbGFibGUg
YWZ0ZXIgcGFja2V0IGxvc3MuCitUaGUgY2xhbXBpbmcgaXMgc2tpcHBlZCBhZnRlciBhIGRlY29k
ZXIgcmVzZXQsIGFuZCBpbiB0aGUgc2lkZSBjaGFubmVsIGlmIHRoZQorIHByZXZpb3VzIGZyYW1l
IGluIHRoZSBzaWRlIGNoYW5uZWwgd2FzIG5vdCBjb2RlZCwgc2luY2UgdGhlcmUgaXMgbm8gdmFs
dWUgZm9yCisgcHJldmlvdXNfbG9nX2dhaW4gYXZhaWxhYmxlLgorSXQgTUFZIGFsc28gYmUgc2tp
cHBlZCBhZnRlciBwYWNrZXQgbG9zcy4KKzwvdD4KKworPHQ+CitGb3Igc3ViZnJhbWVzIHdoaWNo
IGRvIG5vdCBoYXZlIGFuIGluZGVwZW5kZW50IGdhaW4gKGluY2x1ZGluZyB0aGUgZmlyc3QKKyBz
dWJmcmFtZSBvZiBmcmFtZXMgbm90IGxpc3RlZCBhcyB1c2luZyBpbmRlcGVuZGVudCBjb2Rpbmcg
YWJvdmUpLCB0aGUKKyBxdWFudGl6YXRpb24gZ2FpbiBpcyBjb2RlZCByZWxhdGl2ZSB0byB0aGUg
Z2FpbiBmcm9tIHRoZSBwcmV2aW91cyBzdWJmcmFtZSAoaW4KKyB0aGUgc2FtZSBjaGFubmVsKS4K
K1RoZSBQREYgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX2RlbHRhX2dhaW5fcGRmIi8+IHlpZWxkcyBh
IGRlbHRhX2dhaW5faW5kZXggdmFsdWUKKyBiZXR3ZWVuIDAgYW5kIDQwLCBpbmNsdXNpdmUuCis8
L3Q+Cis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19kZWx0YV9nYWluX3BkZiIKKyB0aXRsZT0iUERG
IGZvciBEZWx0YSBRdWFudGl6YXRpb24gR2FpbiBDb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0
Ij5QREY8L3R0Y29sPgorPGM+ezYsICAgNSwgIDExLCAgMzEsIDEzMiwgIDIxLCAgIDgsICAgNCwK
KyAgICAzLCAgIDIsICAgMiwgICAyLCAgIDEsICAgMSwgICAxLCAgIDEsCisgICAgMSwgICAxLCAg
IDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAxLAorICAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwg
ICAxLCAgIDEsICAgMSwKKyAgICAxLCAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAxLCAgIDEs
ICAgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+Cis8dD4KK1RoZSBmb2xsb3dpbmcgZm9ybXVsYSB0
cmFuc2xhdGVzIHRoaXMgaW5kZXggaW50byBhIHF1YW50aXphdGlvbiBnYWluIGZvciB0aGUKKyBj
dXJyZW50IHN1YmZyYW1lIHVzaW5nIHRoZSBnYWluIGZyb20gdGhlIHByZXZpb3VzIHN1YmZyYW1l
OgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NE
QVRBWworbG9nX2dhaW4gPSBjbGFtcCgwLCBtYXgoMipkZWx0YV9nYWluX2luZGV4IC0gMTYsCisg
ICAgICAgICAgICAgICAgICAgcHJldmlvdXNfbG9nX2dhaW4gKyBkZWx0YV9nYWluX2luZGV4IC0g
NCksIDYzKSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKzx0Pgorc2lsa19nYWlu
c19kZXF1YW50KCkgKGdhaW5fcXVhbnQuYykgZGVxdWFudGl6ZXMgbG9nX2dhaW4gZm9yIHRoZSBr
J3RoIHN1YmZyYW1lCisgYW5kIGNvbnZlcnRzIGl0IGludG8gYSBsaW5lYXIgUTE2IHNjYWxlIGZh
Y3RvciB2aWEKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij48IVtDREFUQVsKK2dhaW5fUTE2W2tdID0gc2lsa19sb2cybGluKCgweDFEMUM3MSpsb2dfZ2Fp
bj4+MTYpICsgMjA5MCkKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorPHQ+CitUaGUg
ZnVuY3Rpb24gc2lsa19sb2cybGluKCkgKGxvZzJsaW4uYykgY29tcHV0ZXMgYW4gYXBwcm94aW1h
dGlvbiBvZgorIDIqKihpbkxvZ19RNy8xMjguMCksIHdoZXJlIGluTG9nX1E3IGlzIGl0cyBRNyBp
bnB1dC4KK0xldCBpID0gaW5Mb2dfUTcmZ3Q7Jmd0OzcgYmUgdGhlIGludGVnZXIgcGFydCBvZiBp
bkxvZ1E3IGFuZAorIGYgPSBpbkxvZ19RNyZhbXA7MTI3IGJlIHRoZSBmcmFjdGlvbmFsIHBhcnQu
CitUaGVuCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCisoMTw8aSkgKyAoKC0xNzQqZiooMTI4LWYpPj4xNikrZikqKCgxPDxpKT4+NykK
K11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHlpZWxkcyB0aGUgYXBwcm94aW1hdGUgZXhwb25l
bnRpYWwuCitUaGUgZmluYWwgUTE2IGdhaW4gdmFsdWVzIGxpZXMgYmV0d2VlbiA4MTkyMCBhbmQg
MTY4NjExMDIwOCwgaW5jbHVzaXZlCisgKHJlcHJlc2VudGluZyBzY2FsZSBmYWN0b3JzIG9mIDEu
MjUgdG8gMjU3MjgsIHJlc3BlY3RpdmVseSkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9u
IGFuY2hvcj0ic2lsa19ubHNmcyIgdG9jPSJpbmNsdWRlIiB0aXRsZT0iTm9ybWFsaXplZCBMaW5l
IFNwZWN0cmFsCisgRnJlcXVlbmN5IChMU0YpIGFuZCBMaW5lYXIgUHJlZGljdGl2ZSBDb2Rpbmcg
KExQQykgQ29lZmZpY2llbnRzIj4KKzx0PgorQSBzZXQgb2Ygbm9ybWFsaXplZCBMaW5lIFNwZWN0
cmFsIEZyZXF1ZW5jeSAoTFNGKSBjb2VmZmljaWVudHMgZm9sbG93IHRoZQorIHF1YW50aXphdGlv
biBnYWlucyBpbiB0aGUgYml0c3RyZWFtLCBhbmQgcmVwcmVzZW50IHRoZSBMaW5lYXIgUHJlZGlj
dGl2ZQorIENvZGluZyAoTFBDKSBjb2VmZmljaWVudHMgZm9yIHRoZSBjdXJyZW50IFNJTEsgZnJh
bWUuCitPbmNlIGRlY29kZWQsIHRoZSBub3JtYWxpemVkIExTRnMgZm9ybSBhbiBpbmNyZWFzaW5n
IGxpc3Qgb2YgUTE1IHZhbHVlcyBiZXR3ZWVuCisgMCBhbmQgMS4KK1RoZXNlIHJlcHJlc2VudCB0
aGUgaW50ZXJsZWF2ZWQgemVyb3Mgb24gdGhlIHVwcGVyIGhhbGYgb2YgdGhlIHVuaXQgY2lyY2xl
CisgKGJldHdlZW4gMCBhbmQgcGksIGhlbmNlICJub3JtYWxpemVkIikgaW4gdGhlIHN0YW5kYXJk
IGRlY29tcG9zaXRpb24KKyA8eHJlZiB0YXJnZXQ9ImxpbmUtc3BlY3RyYWwtcGFpcnMiLz4gb2Yg
dGhlIExQQyBmaWx0ZXIgaW50byBhIHN5bW1ldHJpYyBwYXJ0CisgYW5kIGFuIGFudGktc3ltbWV0
cmljIHBhcnQgKFAgYW5kIFEgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2YybHBjIi8+KS4KK0Jl
Y2F1c2Ugb2Ygbm9uLWxpbmVhciBlZmZlY3RzIGluIHRoZSBkZWNvZGluZyBwcm9jZXNzLCBhbiBp
bXBsZW1lbnRhdGlvbiBTSE9VTEQKKyBtYXRjaCB0aGUgZml4ZWQtcG9pbnQgYXJpdGhtZXRpYyBk
ZXNjcmliZWQgaW4gdGhpcyBzZWN0aW9uIGV4YWN0bHkuCitBbiBlbmNvZGVyIFNIT1VMRCBhbHNv
IHVzZSB0aGUgc2FtZSBwcm9jZXNzLgorPC90PgorPHQ+CitUaGUgbm9ybWFsaXplZCBMU0ZzIGFy
ZSBjb2RlZCB1c2luZyBhIHR3by1zdGFnZSB2ZWN0b3IgcXVhbnRpemVyIChWUSkKKyAoPHhyZWYg
dGFyZ2V0PSJzaWxrX25sc2Zfc3RhZ2UxIi8+IGFuZCA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9z
dGFnZTIiLz4pLgorTkIgYW5kIE1CIGZyYW1lcyB1c2UgYW4gb3JkZXItMTAgcHJlZGljdG9yLCB3
aGlsZSBXQiBmcmFtZXMgdXNlIGFuIG9yZGVyLTE2CisgcHJlZGljdG9yLCBhbmQgdGh1cyBoYXZl
IGRpZmZlcmVudCBzZXRzIG9mIHRhYmxlcy4KK0FmdGVyIHJlY29uc3RydWN0aW5nIHRoZSBub3Jt
YWxpemVkIExTRnMKKyAoPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfcmVjb25zdHJ1Y3Rpb24iLz4p
LCB0aGUgZGVjb2RlciBydW5zIHRoZW0gdGhyb3VnaCBhCisgc3RhYmlsaXphdGlvbiBwcm9jZXNz
ICg8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFiaWxpemF0aW9uIi8+KSwgaW50ZXJwb2xhdGVz
CisgdGhlbSBiZXR3ZWVuIGZyYW1lcyAoPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfaW50ZXJwb2xh
dGlvbiIvPiksIGNvbnZlcnRzIHRoZW0KKyBiYWNrIGludG8gTFBDIGNvZWZmaWNpZW50cyAoPHhy
ZWYgdGFyZ2V0PSJzaWxrX25sc2YybHBjIi8+KSwgYW5kIHRoZW4gcnVucworIHRoZW0gdGhyb3Vn
aCBmdXJ0aGVyIHByb2Nlc3NlcyB0byBsaW1pdCB0aGUgcmFuZ2Ugb2YgdGhlIGNvZWZmaWNpZW50
cworICg8eHJlZiB0YXJnZXQ9InNpbGtfbHBjX3JhbmdlX2xpbWl0Ii8+KSBhbmQgdGhlIGdhaW4g
b2YgdGhlIGZpbHRlcgorICg8eHJlZiB0YXJnZXQ9InNpbGtfbHBjX2dhaW5fbGltaXQiLz4pLgor
QWxsIG9mIHRoaXMgaXMgbmVjZXNzYXJ5IHRvIGVuc3VyZSB0aGUgcmVjb25zdHJ1Y3Rpb24gcHJv
Y2VzcyBpcyBzdGFibGUuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19ubHNmX3N0YWdl
MSIgdGl0bGU9Ik5vcm1hbGl6ZWQgTFNGIFN0YWdlIDEgRGVjb2RpbmciPgorPHQ+CitUaGUgZmly
c3QgVlEgc3RhZ2UgdXNlcyBhIDMyLWVsZW1lbnQgY29kZWJvb2ssIGNvZGVkIHdpdGggb25lIG9m
IHRoZSBQREZzIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zfc3RhZ2UxX3BkZnMiLz4sIGRl
cGVuZGluZyBvbiB0aGUgYXVkaW8gYmFuZHdpZHRoIGFuZAorIHRoZSBzaWduYWwgdHlwZSBvZiB0
aGUgY3VycmVudCBTSUxLIGZyYW1lLgorVGhpcyB5aWVsZHMgYSBzaW5nbGUgaW5kZXgsIEkxLCBm
b3IgdGhlIGVudGlyZSBmcmFtZSwgd2hpY2gKKzxsaXN0IHN0eWxlPSJudW1iZXJzIj4KKzx0Pklu
ZGV4ZXMgYW4gZWxlbWVudCBpbiBhIGNvYXJzZSBjb2RlYm9vayw8L3Q+Cis8dD5TZWxlY3RzIHRo
ZSBQREZzIGZvciB0aGUgc2Vjb25kIHN0YWdlIG9mIHRoZSBWUSwgYW5kPC90PgorPHQ+U2VsZWN0
cyB0aGUgcHJlZGljdGlvbiB3ZWlnaHRzIHVzZWQgdG8gcmVtb3ZlIGludHJhLWZyYW1lIHJlZHVu
ZGFuY3kgZnJvbQorIHRoZSBzZWNvbmQgc3RhZ2UuPC90PgorPC9saXN0PgorVGhlIGFjdHVhbCBj
b2RlYm9vayBlbGVtZW50cyBhcmUgbGlzdGVkIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zf
bmJtYl9jb2RlYm9vayIvPiBhbmQKKyA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl93Yl9jb2RlYm9v
ayIvPiwgYnV0IHRoZXkgYXJlIG5vdCBuZWVkZWQgdW50aWwgdGhlIGxhc3QKKyBzdGFnZXMgb2Yg
cmVjb25zdHJ1Y3RpbmcgdGhlIExTRiBjb2VmZmljaWVudHMuCis8L3Q+CisKKzx0ZXh0dGFibGUg
YW5jaG9yPSJzaWxrX25sc2Zfc3RhZ2UxX3BkZnMiCisgdGl0bGU9IlBERnMgZm9yIE5vcm1hbGl6
ZWQgTFNGIFN0YWdlLTEgSW5kZXggRGVjb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5BdWRp
byBCYW5kd2lkdGg8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5TaWduYWwgVHlwZTwvdHRj
b2w+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz5OQiBvciBNQjwvYz4gPGM+
SW5hY3RpdmUgb3IgdW52b2ljZWQ8L2M+Cis8Yz4KK3s0NCwgMzQsIDMwLCAxOSwgMjEsIDEyLCAx
MSwgIDMsCisgIDMsICAyLCAxNiwgIDIsICAyLCAgMSwgIDUsICAyLAorICAxLCAgMywgIDMsICAx
LCAgMSwgIDIsICAyLCAgMiwKKyAgMywgIDEsICA5LCAgOSwgIDIsICA3LCAgMiwgIDF9LzI1Ngor
PC9jPgorPGM+TkIgb3IgTUI8L2M+IDxjPlZvaWNlZDwvYz4KKzxjPgorezEsIDEwLCAgMSwgIDgs
ICAzLCAgOCwgIDgsIDE0LAorMTMsIDE0LCAgMSwgMTQsIDEyLCAxMywgMTEsIDExLAorMTIsIDEx
LCAxMCwgMTAsIDExLCAgOCwgIDksICA4LAorIDcsICA4LCAgMSwgIDEsICA2LCAgMSwgIDYsICA1
fS8yNTYKKzwvYz4KKzxjPldCPC9jPiA8Yz5JbmFjdGl2ZSBvciB1bnZvaWNlZDwvYz4KKzxjPgor
ezMxLCAyMSwgIDMsIDE3LCAgMSwgIDgsIDE3LCAgNCwKKyAgMSwgMTgsIDE2LCAgNCwgIDIsICAz
LCAgMSwgMTAsCisgIDEsICAzLCAxNiwgMTEsIDE2LCAgMiwgIDIsICAzLAorICAyLCAxMSwgIDEs
ICA0LCAgOSwgIDgsICA3LCAgM30vMjU2Cis8L2M+Cis8Yz5XQjwvYz4gPGM+Vm9pY2VkPC9jPgor
PGM+Cit7MSwgIDQsIDE2LCAgNSwgMTgsIDExLCAgNSwgMTQsCisxNSwgIDEsICAzLCAxMiwgMTMs
IDE0LCAxNCwgIDYsCisxNCwgMTIsICAyLCAgNiwgIDEsIDEyLCAxMiwgMTEsCisxMCwgIDMsIDEw
LCAgNSwgIDEsICAxLCAgMSwgIDN9LzI1NgorPC9jPgorPC90ZXh0dGFibGU+CisKKzwvc2VjdGlv
bj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX25sc2Zfc3RhZ2UyIiB0aXRsZT0iTm9ybWFsaXpl
ZCBMU0YgU3RhZ2UgMiBEZWNvZGluZyI+Cis8dD4KK0EgdG90YWwgb2YgMTYgUERGcyBhcmUgYXZh
aWxhYmxlIGZvciB0aGUgTFNGIHJlc2lkdWFsIGluIHRoZSBzZWNvbmQgc3RhZ2U6IHRoZQorIDgg
KGEuLi5oKSBmb3IgTkIgYW5kIE1CIGZyYW1lcyBnaXZlbiBpbgorIDx4cmVmIHRhcmdldD0ic2ls
a19ubHNmX3N0YWdlMl9uYm1iX3BkZnMiLz4sIGFuZCB0aGUgOCAoaS4uLnApIGZvciBXQiBmcmFt
ZXMKKyBnaXZlbiBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFnZTJfd2JfcGRmcyIvPi4K
K1doaWNoIFBERiBpcyB1c2VkIGZvciB3aGljaCBjb2VmZmljaWVudCBpcyBkcml2ZW4gYnkgdGhl
IGluZGV4LCBJMSwKKyBkZWNvZGVkIGluIHRoZSBmaXJzdCBzdGFnZS4KKzx4cmVmIHRhcmdldD0i
c2lsa19ubHNmX25ibWJfc3RhZ2UyX2NiX3NlbCIvPiBsaXN0cyB0aGUgbGV0dGVyIG9mIHRoZQor
IGNvcnJlc3BvbmRpbmcgUERGIGZvciBlYWNoIG5vcm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50IGZv
ciBOQiBhbmQgTUIsIGFuZAorIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX3diX3N0YWdlMl9jYl9z
ZWwiLz4gbGlzdHMgdGhlIHNhbWUgaW5mb3JtYXRpb24gZm9yIFdCLgorPC90PgorCis8dGV4dHRh
YmxlIGFuY2hvcj0ic2lsa19ubHNmX3N0YWdlMl9uYm1iX3BkZnMiCisgdGl0bGU9IlBERnMgZm9y
IE5CL01CIE5vcm1hbGl6ZWQgTFNGIFN0YWdlLTIgSW5kZXggRGVjb2RpbmciPgorPHR0Y29sIGFs
aWduPSJsZWZ0Ij5Db2RlYm9vazwvdHRjb2w+Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRj
b2w+Cis8Yz5hPC9jPiA8Yz57MSwgICAxLCAgIDEsICAxNSwgMjI0LCAgMTEsICAgMSwgICAxLCAg
IDF9LzI1NjwvYz4KKzxjPmI8L2M+IDxjPnsxLCAgIDEsICAgMiwgIDM0LCAxODMsICAzMiwgICAx
LCAgIDEsICAgMX0vMjU2PC9jPgorPGM+YzwvYz4gPGM+ezEsICAgMSwgICA0LCAgNDIsIDE0OSwg
IDU1LCAgIDIsICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5kPC9jPiA8Yz57MSwgICAxLCAgIDgsICA1
MiwgMTIzLCAgNjEsICAgOCwgICAxLCAgIDF9LzI1NjwvYz4KKzxjPmU8L2M+IDxjPnsxLCAgIDMs
ICAxNiwgIDUzLCAxMDEsICA3NCwgICA2LCAgIDEsICAgMX0vMjU2PC9jPgorPGM+ZjwvYz4gPGM+
ezEsICAgMywgIDE3LCAgNTUsICA5MCwgIDczLCAgMTUsICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5n
PC9jPiA8Yz57MSwgICA3LCAgMjQsICA1MywgIDc0LCAgNjcsICAyNiwgICAzLCAgIDF9LzI1Njwv
Yz4KKzxjPmg8L2M+IDxjPnsxLCAgIDEsICAxOCwgIDYzLCAgNzgsICA1OCwgIDMwLCAgIDYsICAg
MX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25sc2Zf
c3RhZ2UyX3diX3BkZnMiCisgdGl0bGU9IlBERnMgZm9yIFdCIE5vcm1hbGl6ZWQgTFNGIFN0YWdl
LTIgSW5kZXggRGVjb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5Db2RlYm9vazwvdHRjb2w+
Cis8dHRjb2wgYWxpZ249ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz5pPC9jPiA8Yz57MSwgICAxLCAg
IDEsICAgOSwgMjMyLCAgIDksICAgMSwgICAxLCAgIDF9LzI1NjwvYz4KKzxjPmo8L2M+IDxjPnsx
LCAgIDEsICAgMiwgIDI4LCAxODYsICAzNSwgICAxLCAgIDEsICAgMX0vMjU2PC9jPgorPGM+azwv
Yz4gPGM+ezEsICAgMSwgICAzLCAgNDIsIDE1MiwgIDUzLCAgIDIsICAgMSwgICAxfS8yNTY8L2M+
Cis8Yz5sPC9jPiA8Yz57MSwgICAxLCAgMTAsICA0OSwgMTI2LCAgNjUsICAgMiwgICAxLCAgIDF9
LzI1NjwvYz4KKzxjPm08L2M+IDxjPnsxLCAgIDQsICAxOSwgIDQ4LCAxMDAsICA3NywgICA1LCAg
IDEsICAgMX0vMjU2PC9jPgorPGM+bjwvYz4gPGM+ezEsICAgMSwgIDE0LCAgNTQsIDEwMCwgIDcy
LCAgMTIsICAgMSwgICAxfS8yNTY8L2M+Cis8Yz5vPC9jPiA8Yz57MSwgICAxLCAgMTUsICA2MSwg
IDg3LCAgNjEsICAyNSwgICA0LCAgIDF9LzI1NjwvYz4KKzxjPnA8L2M+IDxjPnsxLCAgIDcsICAy
MSwgIDUwLCAgNzcsICA4MSwgIDE3LCAgIDEsICAgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisK
Kzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25sc2ZfbmJtYl9zdGFnZTJfY2Jfc2VsIgorIHRpdGxl
PSJDb2RlYm9vayBTZWxlY3Rpb24gZm9yIE5CL01CIE5vcm1hbGl6ZWQgTFNGIFN0YWdlLTIgSW5k
ZXggRGVjb2RpbmciPgorPHR0Y29sPkkxPC90dGNvbD4KKzx0dGNvbD5Db2VmZmljaWVudDwvdHRj
b2w+Cis8Yy8+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4wJm5ic3A7MSZuYnNwOzImbmJzcDsz
Jm5ic3A7NCZuYnNwOzUmbmJzcDs2Jm5ic3A7NyZuYnNwOzgmbmJzcDs5PC9zcGFueD48L2M+Cis8
Yz4gMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmEmbmJzcDthJm5ic3A7YSZuYnNwO2Em
bmJzcDthJm5ic3A7YSZuYnNwO2EmbmJzcDthJm5ic3A7YSZuYnNwO2E8L3NwYW54PjwvYz4KKzxj
PiAxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YiZuYnNwO2QmbmJzcDtiJm5ic3A7YyZu
YnNwO2MmbmJzcDtiJm5ic3A7YyZuYnNwO2ImbmJzcDtiJm5ic3A7Yjwvc3Bhbng+PC9jPgorPGM+
IDI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5jJm5ic3A7YiZuYnNwO2ImbmJzcDtiJm5i
c3A7YiZuYnNwO2ImbmJzcDtiJm5ic3A7YiZuYnNwO2ImbmJzcDtiPC9zcGFueD48L2M+Cis8Yz4g
MzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmImbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJz
cDtjJm5ic3A7YiZuYnNwO2MmbmJzcDtiJm5ic3A7YiZuYnNwO2I8L3NwYW54PjwvYz4KKzxjPiA0
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2QmbmJzcDtkJm5ic3A7ZCZuYnNw
O2QmbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7Yzwvc3Bhbng+PC9jPgorPGM+IDU8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5hJm5ic3A7ZiZuYnNwO2QmbmJzcDtkJm5ic3A7
YyZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2ImbmJzcDtiPC9zcGFueD48L2M+Cis8Yz4gZzwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmEmbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtj
Jm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2I8L3NwYW54PjwvYz4KKzxjPiA3PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2QmbmJzcDtnJm5ic3A7ZSZuYnNwO2Um
bmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtmJm5ic3A7Zjwvc3Bhbng+PC9jPgorPGM+IDg8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5jJm5ic3A7ZSZuYnNwO2YmbmJzcDtmJm5ic3A7ZSZu
YnNwO2YmbmJzcDtlJm5ic3A7ZyZuYnNwO2UmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4gOTwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtlJm5ic3A7ZSZuYnNwO2gmbmJzcDtlJm5i
c3A7ZiZuYnNwO2UmbmJzcDtmJm5ic3A7ZiZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjEwPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ZSZuYnNwO2QmbmJzcDtkJm5ic3A7ZCZuYnNwO2MmbmJz
cDtkJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7Yzwvc3Bhbng+PC9jPgorPGM+MTE8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5iJm5ic3A7ZiZuYnNwO2YmbmJzcDtnJm5ic3A7ZSZuYnNw
O2YmbmJzcDtlJm5ic3A7ZiZuYnNwO2YmbmJzcDtmPC9zcGFueD48L2M+Cis8Yz4xMjwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtoJm5ic3A7ZSZuYnNwO2cmbmJzcDtmJm5ic3A7
ZiZuYnNwO2YmbmJzcDtmJm5ic3A7ZiZuYnNwO2Y8L3NwYW54PjwvYz4KKzxjPjEzPC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2gmbmJzcDtmJm5ic3A7ZiZuYnNwO2YmbmJzcDtm
Jm5ic3A7ZiZuYnNwO2cmbmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MTQ8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj5kJm5ic3A7ZCZuYnNwO2YmbmJzcDtlJm5ic3A7ZSZuYnNwO2Ym
bmJzcDtlJm5ic3A7ZiZuYnNwO2UmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4xNTwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPmMmbmJzcDtkJm5ic3A7ZCZuYnNwO2YmbmJzcDtmJm5ic3A7ZSZu
YnNwO2UmbmJzcDtlJm5ic3A7ZSZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjE2PC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2UmbmJzcDtlJm5ic3A7ZyZuYnNwO2UmbmJzcDtmJm5i
c3A7ZSZuYnNwO2YmbmJzcDtmJm5ic3A7Zjwvc3Bhbng+PC9jPgorPGM+MTc8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj5jJm5ic3A7ZiZuYnNwO2UmbmJzcDtnJm5ic3A7ZiZuYnNwO2YmbmJz
cDtmJm5ic3A7ZSZuYnNwO2YmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4xODwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPmMmbmJzcDtoJm5ic3A7ZSZuYnNwO2YmbmJzcDtlJm5ic3A7ZiZuYnNw
O2UmbmJzcDtmJm5ic3A7ZiZuYnNwO2Y8L3NwYW54PjwvYz4KKzxjPjE5PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+YyZuYnNwO2YmbmJzcDtlJm5ic3A7ZyZuYnNwO2gmbmJzcDtnJm5ic3A7
ZiZuYnNwO2cmbmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MjA8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5kJm5ic3A7ZyZuYnNwO2gmbmJzcDtlJm5ic3A7ZyZuYnNwO2YmbmJzcDtm
Jm5ic3A7ZyZuYnNwO2UmbmJzcDtmPC9zcGFueD48L2M+Cis8Yz4yMTwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPmMmbmJzcDtoJm5ic3A7ZyZuYnNwO2UmbmJzcDtlJm5ic3A7ZSZuYnNwO2Ym
bmJzcDtlJm5ic3A7ZiZuYnNwO2Y8L3NwYW54PjwvYz4KKzxjPjIyPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+ZSZuYnNwO2YmbmJzcDtmJm5ic3A7ZSZuYnNwO2cmbmJzcDtnJm5ic3A7ZiZu
YnNwO2cmbmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MjM8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5jJm5ic3A7ZiZuYnNwO2YmbmJzcDtnJm5ic3A7ZiZuYnNwO2cmbmJzcDtlJm5i
c3A7ZyZuYnNwO2UmbmJzcDtlPC9zcGFueD48L2M+Cis8Yz4yNDwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPmUmbmJzcDtmJm5ic3A7ZiZuYnNwO2YmbmJzcDtkJm5ic3A7aCZuYnNwO2UmbmJz
cDtmJm5ic3A7ZiZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjI1PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+YyZuYnNwO2QmbmJzcDtlJm5ic3A7ZiZuYnNwO2YmbmJzcDtnJm5ic3A7ZSZuYnNw
O2YmbmJzcDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPGM+MjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj5jJm5ic3A7ZCZuYnNwO2MmbmJzcDtkJm5ic3A7ZCZuYnNwO2UmbmJzcDtjJm5ic3A7
ZCZuYnNwO2QmbmJzcDtkPC9zcGFueD48L2M+Cis8Yz4yNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPmImbmJzcDtiJm5ic3A7YyZuYnNwO2MmbmJzcDtjJm5ic3A7YyZuYnNwO2MmbmJzcDtk
Jm5ic3A7YyZuYnNwO2M8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+ZSZuYnNwO2YmbmJzcDtmJm5ic3A7ZyZuYnNwO2cmbmJzcDtnJm5ic3A7ZiZuYnNwO2cm
bmJzcDtlJm5ic3A7Zjwvc3Bhbng+PC9jPgorPGM+Mjk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj5kJm5ic3A7ZiZuYnNwO2YmbmJzcDtlJm5ic3A7ZSZuYnNwO2UmbmJzcDtlJm5ic3A7ZCZu
YnNwO2QmbmJzcDtjPC9zcGFueD48L2M+Cis8Yz4zMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPmMmbmJzcDtmJm5ic3A7ZCZuYnNwO2gmbmJzcDtmJm5ic3A7ZiZuYnNwO2UmbmJzcDtlJm5i
c3A7ZiZuYnNwO2U8L3NwYW54PjwvYz4KKzxjPjMxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+ZSZuYnNwO2UmbmJzcDtmJm5ic3A7ZSZuYnNwO2YmbmJzcDtnJm5ic3A7ZiZuYnNwO2cmbmJz
cDtmJm5ic3A7ZTwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9y
PSJzaWxrX25sc2Zfd2Jfc3RhZ2UyX2NiX3NlbCIKKyB0aXRsZT0iQ29kZWJvb2sgU2VsZWN0aW9u
IGZvciBXQiBOb3JtYWxpemVkIExTRiBTdGFnZS0yIEluZGV4IERlY29kaW5nIj4KKzx0dGNvbD5J
MTwvdHRjb2w+Cis8dHRjb2w+Q29lZmZpY2llbnQ8L3R0Y29sPgorPGMvPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7MyZuYnNw
OyZuYnNwOzQmbmJzcDsmbmJzcDs1Jm5ic3A7Jm5ic3A7NiZuYnNwOyZuYnNwOzcmbmJzcDsmbmJz
cDs4Jm5ic3A7Jm5ic3A7OSZuYnNwOzEwJm5ic3A7MTEmbmJzcDsxMiZuYnNwOzEzJm5ic3A7MTQm
bmJzcDsxNTwvc3Bhbng+PC9jPgorPGM+IDA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5p
Jm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNw
OyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJz
cDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZu
YnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpPC9zcGFueD48L2M+Cis8Yz4gMTwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPmsmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wm
bmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7
Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNw
O2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2w8L3NwYW54PjwvYz4KKzxj
PiAyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+ayZuYnNwOyZuYnNwO24mbmJzcDsmbmJz
cDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZu
YnNwOyZuYnNwO24mbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsm
bmJzcDtuJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7
bDwvc3Bhbng+PC9jPgorPGM+IDM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5pJm5ic3A7
Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNw
O2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5i
c3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZu
YnNwO2kmbmJzcDsmbmJzcDtqPC9zcGFueD48L2M+Cis8Yz4gNDwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsm
bmJzcDtvJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7
bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO24mbmJz
cDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2w8L3NwYW54PjwvYz4KKzxjPiA1PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5i
c3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZu
YnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDts
Jm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7bTwvc3Bh
bng+PC9jPgorPGM+IDY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7
aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJz
cDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5i
c3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2km
bmJzcDsmbmJzcDtpPC9zcGFueD48L2M+Cis8Yz4gNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPmkmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtw
Jm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNw
OyZuYnNwO24mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJz
cDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2w8L3NwYW54PjwvYz4KKzxjPiA4PC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtrJm5ic3A7Jm5i
c3A7byZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20m
bmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7
Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bDwvc3Bhbng+PC9j
PgorPGM+IDk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7aiZuYnNw
OyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJz
cDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZu
YnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsm
bmJzcDtpPC9zcGFueD48L2M+Cis8Yz4xMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkm
bmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7
Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNw
O2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5i
c3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2o8L3NwYW54PjwvYz4KKzxjPjExPC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZu
YnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7
ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+
MTI8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNw
O2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5i
c3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZu
YnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDts
PC9zcGFueD48L2M+Cis8Yz4xMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmwmbmJzcDsm
bmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7
bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJz
cDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5i
c3A7bCZuYnNwOyZuYnNwO208L3NwYW54PjwvYz4KKzxjPjE0PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+aSZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7biZuYnNwOyZu
YnNwO20mbmJzcDsmbmJzcDtwJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtv
Jm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7bSZuYnNw
OyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bDwvc3Bhbng+PC9jPgorPGM+MTU8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5pJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2kmbmJz
cDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5i
c3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2km
bmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtpPC9zcGFu
eD48L2M+Cis8Yz4xNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmombmJzcDsmbmJzcDtv
Jm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNw
OyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO24mbmJzcDsmbmJz
cDttJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZu
YnNwOyZuYnNwO208L3NwYW54PjwvYz4KKzxjPjE3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+aiZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20m
bmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtrJm5ic3A7
Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNw
O24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bTwvc3Bhbng+PC9jPgorPGM+MTg8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJz
cDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZu
YnNwOyZuYnNwO2ombmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2smbmJzcDsm
bmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDttPC9zcGFueD48L2M+
Cis8Yz4xOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtrJm5ic3A7
Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNw
O2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5i
c3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZu
YnNwO2k8L3NwYW54PjwvYz4KKzxjPjIwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+bCZu
YnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsm
bmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7
aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2smbmJz
cDsmbmJzcDtrJm5ic3A7Jm5ic3A7bTwvc3Bhbng+PC9jPgorPGM+MjE8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5rJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtwJm5i
c3A7Jm5ic3A7cCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bSZuYnNwOyZu
YnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDts
Jm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4y
MjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmsmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7
biZuYnNwOyZuYnNwO28mbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJz
cDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5i
c3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO208
L3NwYW54PjwvYz4KKzxjPjIzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aiZuYnNwOyZu
YnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtt
Jm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7biZuYnNw
OyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2ombmJzcDsmbmJz
cDtqJm5ic3A7Jm5ic3A7ajwvc3Bhbng+PC9jPgorPGM+MjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj5rJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtvJm5ic3A7Jm5i
c3A7byZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDtwJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNwO20m
bmJzcDsmbmJzcDtuJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5ic3A7
Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4yNTwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7aiZuYnNw
OyZuYnNwO2ombmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJz
cDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZu
YnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2k8L3NwYW54
PjwvYz4KKzxjPjI2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO28m
bmJzcDsmbmJzcDtvJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtrJm5ic3A7
Jm5ic3A7biZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bSZuYnNwOyZuYnNw
O20mbmJzcDsmbmJzcDtwJm5ic3A7Jm5ic3A7cCZuYnNwOyZuYnNwO20mbmJzcDsmbmJzcDttJm5i
c3A7Jm5ic3A7bTwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij5sJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO3AmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZu
YnNwOyZuYnNwO20mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsm
bmJzcDtrJm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7
bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtsPC9zcGFueD48L2M+Cis8Yz4yODwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPmkmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNw
O2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5i
c3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7ayZuYnNwOyZu
YnNwO2smbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2o8L3NwYW54PjwvYz4K
KzxjPjI5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+aSZuYnNwOyZuYnNwO2wmbmJzcDsm
bmJzcDtrJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7
ayZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2kmbmJz
cDsmbmJzcDtpJm5ic3A7Jm5ic3A7aiZuYnNwOyZuYnNwO2kmbmJzcDsmbmJzcDtpJm5ic3A7Jm5i
c3A7ajwvc3Bhbng+PC9jPgorPGM+MzA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5sJm5i
c3A7Jm5ic3A7biZuYnNwOyZuYnNwO24mbmJzcDsmbmJzcDttJm5ic3A7Jm5ic3A7cCZuYnNwOyZu
YnNwO24mbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDts
Jm5ic3A7Jm5ic3A7ayZuYnNwOyZuYnNwO2smbmJzcDsmbmJzcDtqJm5ic3A7Jm5ic3A7aSZuYnNw
OyZuYnNwO2ombmJzcDsmbmJzcDtpPC9zcGFueD48L2M+Cis8Yz4zMTwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPmsmbmJzcDsmbmJzcDtsJm5ic3A7Jm5ic3A7biZuYnNwOyZuYnNwO2wmbmJz
cDsmbmJzcDttJm5ic3A7Jm5ic3A7bCZuYnNwOyZuYnNwO2wmbmJzcDsmbmJzcDtsJm5ic3A7Jm5i
c3A7ayZuYnNwOyZuYnNwO2ombmJzcDsmbmJzcDtrJm5ic3A7Jm5ic3A7byZuYnNwOyZuYnNwO20m
bmJzcDsmbmJzcDtpJm5ic3A7Jm5ic3A7aSZuYnNwOyZuYnNwO2k8L3NwYW54PjwvYz4KKzwvdGV4
dHRhYmxlPgorCis8dD4KK0RlY29kaW5nIHRoZSBzZWNvbmQgc3RhZ2UgcmVzaWR1YWwgcHJvY2Vl
ZHMgYXMgZm9sbG93cy4KK0ZvciBlYWNoIGNvZWZmaWNpZW50LCB0aGUgZGVjb2RlciByZWFkcyBh
IHN5bWJvbCB1c2luZyB0aGUgUERGIGNvcnJlc3BvbmRpbmcgdG8KKyBJMSBmcm9tIGVpdGhlciA8
eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9uYm1iX3N0YWdlMl9jYl9zZWwiLz4gb3IKKyA8eHJlZiB0
YXJnZXQ9InNpbGtfbmxzZl93Yl9zdGFnZTJfY2Jfc2VsIi8+LCBhbmQgc3VidHJhY3RzIDQgZnJv
bSB0aGUgcmVzdWx0CisgdG8gZ2l2ZSBhbiBpbmRleCBpbiB0aGUgcmFuZ2UgLTQgdG8gNCwgaW5j
bHVzaXZlLgorSWYgdGhlIGluZGV4IGlzIGVpdGhlciAtNCBvciA0LCBpdCByZWFkcyBhIHNlY29u
ZCBzeW1ib2wgdXNpbmcgdGhlIFBERiBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX2V4dF9w
ZGYiLz4sIGFuZCBhZGRzIHRoZSB2YWx1ZSBvZiB0aGlzIHNlY29uZCBzeW1ib2wKKyB0byB0aGUg
aW5kZXgsIHVzaW5nIHRoZSBzYW1lIHNpZ24uCitUaGlzIGdpdmVzIHRoZSBpbmRleCwgSTJba10s
IGEgdG90YWwgcmFuZ2Ugb2YgLTEwIHRvIDEwLCBpbmNsdXNpdmUuCis8L3Q+CisKKzx0ZXh0dGFi
bGUgYW5jaG9yPSJzaWxrX25sc2ZfZXh0X3BkZiIKKyB0aXRsZT0iUERGIGZvciBOb3JtYWxpemVk
IExTRiBJbmRleCBFeHRlbnNpb24gRGVjb2RpbmciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5QREY8
L3R0Y29sPgorPGM+ezE1NiwgNjAsIDI0LCAgOSwgIDQsICAyLCAgMX0vMjU2PC9jPgorPC90ZXh0
dGFibGU+CisKKzx0PgorVGhlIGRlY29kZWQgaW5kaWNlcyBmcm9tIGJvdGggc3RhZ2VzIGFyZSB0
cmFuc2xhdGVkIGJhY2sgaW50byBub3JtYWxpemVkIExTRgorIGNvZWZmaWNpZW50cyBpbiBzaWxr
X05MU0ZfZGVjb2RlKCkgKE5MU0ZfZGVjb2RlLmMpLgorVGhlIHN0YWdlLTIgaW5kaWNlcyByZXBy
ZXNlbnQgcmVzaWR1YWxzIGFmdGVyIGJvdGggdGhlIGZpcnN0IHN0YWdlIG9mIHRoZSBWUQorIGFu
ZCBhIHNlcGFyYXRlIGJhY2t3YXJkcy1wcmVkaWN0aW9uIHN0ZXAuCitUaGUgYmFja3dhcmRzIHBy
ZWRpY3Rpb24gcHJvY2VzcyBpbiB0aGUgZW5jb2RlciBzdWJ0cmFjdHMgYSBwcmVkaWN0aW9uIGZy
b20KKyBlYWNoIHJlc2lkdWFsIGZvcm1lZCBieSBhIG11bHRpcGxlIG9mIHRoZSBjb2VmZmljaWVu
dCB0aGF0IGZvbGxvd3MgaXQuCitUaGUgZGVjb2RlciBtdXN0IHVuZG8gdGhpcyBwcm9jZXNzLgor
PHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZfcHJlZF93ZWlnaHRzIi8+IGNvbnRhaW5zIGxpc3RzIG9m
IHByZWRpY3Rpb24gd2VpZ2h0cworIGZvciBlYWNoIGNvZWZmaWNpZW50LgorVGhlcmUgYXJlIHR3
byBsaXN0cyBmb3IgTkIgYW5kIE1CLCBhbmQgYW5vdGhlciB0d28gbGlzdHMgZm9yIFdCLCBnaXZp
bmcgdHdvCisgcG9zc2libGUgcHJlZGljdGlvbiB3ZWlnaHRzIGZvciBlYWNoIGNvZWZmaWNpZW50
LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNmX3ByZWRfd2VpZ2h0cyIKKyB0
aXRsZT0iUHJlZGljdGlvbiBXZWlnaHRzIGZvciBOb3JtYWxpemVkIExTRiBEZWNvZGluZyI+Cis8
dHRjb2wgYWxpZ249ImxlZnQiPkNvZWZmaWNpZW50PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmln
aHQiPkE8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+QjwvdHRjb2w+Cis8dHRjb2wgYWxp
Z249InJpZ2h0Ij5DPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPkQ8L3R0Y29sPgorIDxj
PjA8L2M+IDxjPjE3OTwvYz4gPGM+MTE2PC9jPiA8Yz4xNzU8L2M+ICA8Yz42ODwvYz4KKyA8Yz4x
PC9jPiA8Yz4xMzg8L2M+ICA8Yz42NzwvYz4gPGM+MTQ4PC9jPiAgPGM+NjI8L2M+CisgPGM+Mjwv
Yz4gPGM+MTQwPC9jPiAgPGM+ODI8L2M+IDxjPjE2MDwvYz4gIDxjPjY2PC9jPgorIDxjPjM8L2M+
IDxjPjE0ODwvYz4gIDxjPjU5PC9jPiA8Yz4xNzY8L2M+ICA8Yz42MDwvYz4KKyA8Yz40PC9jPiA8
Yz4xNTE8L2M+ICA8Yz45MjwvYz4gPGM+MTc4PC9jPiAgPGM+NzI8L2M+CisgPGM+NTwvYz4gPGM+
MTQ5PC9jPiAgPGM+NzI8L2M+IDxjPjE3MzwvYz4gPGM+MTE3PC9jPgorIDxjPjY8L2M+IDxjPjE1
MzwvYz4gPGM+MTAwPC9jPiA8Yz4xNzQ8L2M+ICA8Yz44NTwvYz4KKyA8Yz43PC9jPiA8Yz4xNTE8
L2M+ICA8Yz44OTwvYz4gPGM+MTY0PC9jPiAgPGM+OTA8L2M+CisgPGM+ODwvYz4gPGM+MTYzPC9j
PiAgPGM+OTI8L2M+IDxjPjE3NzwvYz4gPGM+MTE4PC9jPgorIDxjPjk8L2M+IDxjLz4gICAgICAg
IDxjLz4gICAgICA8Yz4xNzQ8L2M+IDxjPjEzNjwvYz4KKzxjPjEwPC9jPiA8Yy8+ICAgICAgICA8
Yy8+ICAgICAgPGM+MTk2PC9jPiA8Yz4xNTE8L2M+Cis8Yz4xMTwvYz4gPGMvPiAgICAgICAgPGMv
PiAgICAgIDxjPjE4MjwvYz4gPGM+MTQyPC9jPgorPGM+MTI8L2M+IDxjLz4gICAgICAgIDxjLz4g
ICAgICA8Yz4xOTg8L2M+IDxjPjE2MDwvYz4KKzxjPjEzPC9jPiA8Yy8+ICAgICAgICA8Yy8+ICAg
ICAgPGM+MTkyPC9jPiA8Yz4xNDI8L2M+Cis8Yz4xNDwvYz4gPGMvPiAgICAgICAgPGMvPiAgICAg
IDxjPjE4MjwvYz4gPGM+MTU1PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlIHByZWRpY3Rp
b24gaXMgdW5kb25lIHVzaW5nIHRoZSBwcm9jZWR1cmUgaW1wbGVtZW50ZWQgaW4KKyBzaWxrX05M
U0ZfcmVzaWR1YWxfZGVxdWFudCgpIChOTFNGX2RlY29kZS5jKSwgd2hpY2ggaXMgYXMgZm9sbG93
cy4KK0VhY2ggY29lZmZpY2llbnQgc2VsZWN0cyBpdHMgcHJlZGljdGlvbiB3ZWlnaHQgZnJvbSBv
bmUgb2YgdGhlIHR3byBsaXN0cyBiYXNlZAorIG9uIHRoZSBzdGFnZS0xIGluZGV4LCBJMS4KKzx4
cmVmIHRhcmdldD0ic2lsa19ubHNmX25ibWJfd2VpZ2h0X3NlbCIvPiBnaXZlcyB0aGUgc2VsZWN0
aW9ucyBmb3IgZWFjaAorIGNvZWZmaWNpZW50IGZvciBOQiBhbmQgTUIsIGFuZCA8eHJlZiB0YXJn
ZXQ9InNpbGtfbmxzZl93Yl93ZWlnaHRfc2VsIi8+IGdpdmVzCisgdGhlIHNlbGVjdGlvbnMgZm9y
IFdCLgorTGV0IGRfTFBDIGJlIHRoZSBvcmRlciBvZiB0aGUgY29kZWJvb2ssIGkuZS4sIDEwIGZv
ciBOQiBhbmQgTUIsIGFuZCAxNiBmb3IgV0IsCisgYW5kIGxldCBwcmVkX1E4W2tdIGJlIHRoZSB3
ZWlnaHQgZm9yIHRoZSBrJ3RoIGNvZWZmaWNpZW50IHNlbGVjdGVkIGJ5IHRoaXMKKyBwcm9jZXNz
IGZvciAwJm5ic3A7Jmx0Oz0mbmJzcDtrJm5ic3A7Jmx0OyZuYnNwO2RfTFBDLTEuCitUaGVuLCB0
aGUgc3RhZ2UtMiByZXNpZHVhbCBmb3IgZWFjaCBjb2VmZmljaWVudCBpcyBjb21wdXRlZCB2aWEK
KzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKK3Jlc19RMTBba10gPSAoaysxIDwgZF9MUEMgPyAocmVzX1ExMFtrKzFdKnByZWRfUThba10p
Pj44IDogMCkKKyAgICAgICAgICAgICArICgoKChJMltrXTw8MTApIC0gc2lnbihJMltrXSkqMTAy
KSpxc3RlcCk+PjE2KSAsCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKyB3aGVyZSBxc3RlcCBp
cyB0aGUgUTE2IHF1YW50aXphdGlvbiBzdGVwIHNpemUsIHdoaWNoIGlzIDExNzk2IGZvciBOQiBh
bmQgTUIKKyBhbmQgOTgzMCBmb3IgV0IgKHJlcHJlc2VudGluZyBzdGVwIHNpemVzIG9mIGFwcHJv
eGltYXRlbHkgMC4xOCBhbmQgMC4xNSwKKyByZXNwZWN0aXZlbHkpLgorPC90PgorCis8dGV4dHRh
YmxlIGFuY2hvcj0ic2lsa19ubHNmX25ibWJfd2VpZ2h0X3NlbCIKKyB0aXRsZT0iUHJlZGljdGlv
biBXZWlnaHQgU2VsZWN0aW9uIGZvciBOQi9NQiBOb3JtYWxpemVkIExTRiBEZWNvZGluZyI+Cis8
dHRjb2w+STE8L3R0Y29sPgorPHR0Y29sPkNvZWZmaWNpZW50PC90dGNvbD4KKzxjLz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPjAmbmJzcDsxJm5ic3A7MiZuYnNwOzMmbmJzcDs0Jm5ic3A7NSZu
YnNwOzYmbmJzcDs3Jm5ic3A7ODwvc3Bhbng+PC9jPgorPGM+IDA8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5i
c3A7QSZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPiAxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+QiZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJz
cDtBPC9zcGFueD48L2M+Cis8Yz4gMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJz
cDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QTwvc3Bh
bng+PC9jPgorPGM+IDM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5CJm5ic3A7QiZuYnNw
O0ImbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4K
KzxjPiA0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtBJm5ic3A7
QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4gNTwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7QSZuYnNwO0EmbmJzcDtB
Jm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+IDY8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj5CJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0Em
bmJzcDtBJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPiA3PC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZu
YnNwO0EmbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4gODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPkEmbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5i
c3A7Qjwvc3Bhbng+PC9jPgorPGM+IDk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5i
c3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0I8L3Nw
YW54PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJz
cDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBPC9zcGFueD48L2M+
Cis8Yz4xMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7QSZuYnNw
O0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+MTI8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7
QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjEzPC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtC
Jm5ic3A7QiZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4xNDwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPkImbmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QiZuYnNwO0Im
bmJzcDtCJm5ic3A7Qjwvc3Bhbng+PC9jPgorPGM+MTU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj5BJm5ic3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QiZu
YnNwO0E8L3NwYW54PjwvYz4KKzxjPjE2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZu
YnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtBPC9z
cGFueD48L2M+Cis8Yz4xNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5i
c3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7Qjwvc3Bhbng+PC9j
PgorPGM+MTg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0ImbmJz
cDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjE5
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtBJm5ic3A7QiZuYnNw
O0ImbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4yMDwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtBJm5ic3A7
QiZuYnNwO0EmbmJzcDtCJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+MjE8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj5BJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtC
Jm5ic3A7QiZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjIyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0Im
bmJzcDtCPC9zcGFueD48L2M+Cis8Yz4yMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEm
bmJzcDtBJm5ic3A7QiZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7Qjwv
c3Bhbng+PC9jPgorPGM+MjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QSZu
YnNwO0EmbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0I8L3NwYW54Pjwv
Yz4KKzxjPjI1PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0ImbmJzcDtCJm5i
c3A7QiZuYnNwO0ImbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4y
NjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkEmbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJz
cDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5BJm5ic3A7QSZuYnNwO0EmbmJzcDtBJm5ic3A7QSZuYnNw
O0EmbmJzcDtBJm5ic3A7QSZuYnNwO0E8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+QSZuYnNwO0EmbmJzcDtCJm5ic3A7QSZuYnNwO0ImbmJzcDtCJm5ic3A7
QSZuYnNwO0ImbmJzcDtBPC9zcGFueD48L2M+Cis8Yz4yOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPkImbmJzcDtBJm5ic3A7QSZuYnNwO0ImbmJzcDtBJm5ic3A7QSZuYnNwO0EmbmJzcDtB
Jm5ic3A7QTwvc3Bhbng+PC9jPgorPGM+MzA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5B
Jm5ic3A7QSZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QSZuYnNwO0I8
L3NwYW54PjwvYz4KKzxjPjMxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QiZuYnNwO0Em
bmJzcDtCJm5ic3A7QiZuYnNwO0EmbmJzcDtCJm5ic3A7QiZuYnNwO0ImbmJzcDtCPC9zcGFueD48
L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl93Yl93ZWln
aHRfc2VsIgorIHRpdGxlPSJQcmVkaWN0aW9uIFdlaWdodCBTZWxlY3Rpb24gZm9yIFdCIE5vcm1h
bGl6ZWQgTFNGIERlY29kaW5nIj4KKzx0dGNvbD5JMTwvdHRjb2w+Cis8dHRjb2w+Q29lZmZpY2ll
bnQ8L3R0Y29sPgorPGMvPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MCZuYnNwOyZuYnNwOzEm
bmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzQmbmJzcDsmbmJzcDs1Jm5ic3A7
Jm5ic3A7NiZuYnNwOyZuYnNwOzcmbmJzcDsmbmJzcDs4Jm5ic3A7Jm5ic3A7OSZuYnNwOzEwJm5i
c3A7MTEmbmJzcDsxMiZuYnNwOzEzJm5ic3A7MTQ8L3NwYW54PjwvYz4KKzxjPiAwPC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4gMTwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+IDI8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Qm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxj
PiAzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+
Cis8Yz4gNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+
PC9jPgorPGM+IDU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3Nw
YW54PjwvYz4KKzxjPiA2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+RCZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtD
PC9zcGFueD48L2M+Cis8Yz4gNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJz
cDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7RDwvc3Bhbng+PC9jPgorPGM+IDg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNw
OyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPiA5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4xMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPkMmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MTE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Qm
bmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPjEyPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4xMzwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MTQ8L2M+Cis8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPjE1PC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4xNjwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+
MTc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZu
YnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0M8L3NwYW54PjwvYz4K
KzxjPjE4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEPC9zcGFueD48
L2M+Cis8Yz4xOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtD
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7Qzwvc3Bh
bng+PC9jPgorPGM+MjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0M8
L3NwYW54PjwvYz4KKzxjPjIxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZu
YnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNw
OyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtDPC9zcGFueD48L2M+Cis8Yz4yMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Mm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7Qzwvc3Bhbng+PC9jPgorPGM+MjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5D
Jm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNw
OyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZu
YnNwOyZuYnNwO0M8L3NwYW54PjwvYz4KKzxjPjI0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Qm
bmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7
Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNw
O0QmbmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4yNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJz
cDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7RDwvc3Bhbng+PC9jPgorPGM+MjY8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7
Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEJm5i
c3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPjI3PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZu
YnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0QmbmJzcDsm
bmJzcDtEJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0QmbmJzcDsmbmJzcDtEPC9zcGFueD48L2M+Cis8Yz4yODwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNw
O0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RDwvc3Bhbng+PC9jPgorPGM+Mjk8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj5DJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsm
bmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJz
cDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0Q8L3NwYW54PjwvYz4KKzxjPjMwPC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5i
c3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZu
YnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtE
Jm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDPC9zcGFueD48L2M+Cis8Yz4z
MTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPkMmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7
RCZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtDJm5ic3A7Jm5ic3A7RCZuYnNwOyZuYnNwO0QmbmJz
cDsmbmJzcDtEJm5ic3A7Jm5ic3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5i
c3A7QyZuYnNwOyZuYnNwO0MmbmJzcDsmbmJzcDtEJm5ic3A7Jm5ic3A7Qzwvc3Bhbng+PC9jPgor
PC90ZXh0dGFibGU+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX25sc2Zf
cmVjb25zdHJ1Y3Rpb24iCisgdGl0bGU9IlJlY29uc3RydWN0aW5nIHRoZSBOb3JtYWxpemVkIExT
RiBDb2VmZmljaWVudHMiPgorPHQ+CitPbmNlIHRoZSBzdGFnZS0xIGluZGV4IEkxIGFuZCB0aGUg
c3RhZ2UtMiByZXNpZHVhbCByZXNfUTEwW10gaGF2ZSBiZWVuIGRlY29kZWQsCisgdGhlIGZpbmFs
IG5vcm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50cyBjYW4gYmUgcmVjb25zdHJ1Y3RlZC4KKzwvdD4K
Kzx0PgorVGhlIHNwZWN0cmFsIGRpc3RvcnRpb24gaW50cm9kdWNlZCBieSB0aGUgcXVhbnRpemF0
aW9uIG9mIGVhY2ggTFNGIGNvZWZmaWNpZW50CisgdmFyaWVzLCBzbyB0aGUgc3RhZ2UtMiByZXNp
ZHVhbCBpcyB3ZWlnaHRlZCBhY2NvcmRpbmdseSwgdXNpbmcgdGhlCisgbG93LWNvbXBsZXhpdHkg
SW52ZXJzZSBIYXJtb25pYyBNZWFuIFdlaWdodGluZyAoSUhNVykgZnVuY3Rpb24gcHJvcG9zZWQg
aW4KKyA8eHJlZiB0YXJnZXQ9Imxhcm9pYS1pY2Fzc3AiLz4uCitUaGUgd2VpZ2h0cyBhcmUgZGVy
aXZlZCBkaXJlY3RseSBmcm9tIHRoZSBzdGFnZS0xIGNvZGVib29rIHZlY3Rvci4KK0xldCBjYjFf
UThba10gYmUgdGhlIGsndGggZW50cnkgb2YgdGhlIHN0YWdlLTEgY29kZWJvb2sgdmVjdG9yIGZy
b20KKyA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9uYm1iX2NvZGVib29rIi8+IG9yCisgPHhyZWYg
dGFyZ2V0PSJzaWxrX25sc2Zfd2JfY29kZWJvb2siLz4uCitUaGVuIGZvciAwJm5ic3A7Jmx0Oz0m
bmJzcDtrJm5ic3A7Jmx0OyZuYnNwO2RfTFBDIHRoZSBmb2xsb3dpbmcgZXhwcmVzc2lvbgorIGNv
bXB1dGVzIHRoZSBzcXVhcmUgb2YgdGhlIHdlaWdodCBhcyBhIFExOCB2YWx1ZToKKzxmaWd1cmUg
YWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWwordzJf
UTE4W2tdID0gKDEwMjQvKGNiMV9ROFtrXSAtIGNiMV9ROFtrLTFdKQorICAgICAgICAgICAgICsg
MTAyNC8oY2IxX1E4W2srMV0gLSBjYjFfUThba10pKSA8PCAxNiAsCitdXT4KKzwvYXJ0d29yaz4K
KzwvZmlndXJlPgorIHdoZXJlIGNiMV9ROFstMV0mbmJzcDs9Jm5ic3A7MCBhbmQgY2IxX1E4W2Rf
TFBDXSZuYnNwOz0mbmJzcDsyNTYsIGFuZCB0aGUKKyBkaXZpc2lvbiBpcyBpbnRlZ2VyIGRpdmlz
aW9uLgorVGhpcyBpcyByZWR1Y2VkIHRvIGFuIHVuc3F1YXJlZCwgUTkgdmFsdWUgdXNpbmcgdGhl
IGZvbGxvd2luZyBzcXVhcmUtcm9vdAorIGFwcHJveGltYXRpb246Cis8ZmlndXJlIGFsaWduPSJj
ZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitpID0gaWxvZyh3Ml9R
MThba10pCitmID0gKHcyX1ExOFtrXT4+KGktOCkpICYgMTI3Cit5ID0gKChpJjEpID8gMzI3Njgg
OiA0NjIxNCkgPj4gKCgzMi1pKT4+MSkKK3dfUTlba10gPSB5ICsgKCgyMTMqZip5KT4+MTYpCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBjb25zdGFudCA0NjIxNCBoZXJlIGlzIGFwcHJv
eGltYXRlbHkgdGhlIHNxdWFyZSByb290IG9mIDIgaW4gUTE1LgorVGhlIGNiMV9ROFtdIHZlY3Rv
ciBjb21wbGV0ZWx5IGRldGVybWluZXMgdGhlc2Ugd2VpZ2h0cywgYW5kIHRoZXkgbWF5IGJlCisg
dGFidWxhdGVkIGFuZCBzdG9yZWQgYXMgMTMtYml0IHVuc2lnbmVkIHZhbHVlcyAod2l0aCBhIHJh
bmdlIG9mIDE4MTkgdG8gNTIyNywKKyBpbmNsdXNpdmUpIHRvIGF2b2lkIGNvbXB1dGluZyB0aGVt
IHdoZW4gZGVjb2RpbmcuCitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGFscmVhZHkgcmVx
dWlyZXMgY29kZSB0byBjb21wdXRlIHRoZXNlIHdlaWdodHMgb24KKyB1bnF1YW50aXplZCBjb2Vm
ZmljaWVudHMgaW4gdGhlIGVuY29kZXIsIGluIHNpbGtfTkxTRl9WUV93ZWlnaHRzX2xhcm9pYSgp
CisgKE5MU0ZfVlFfd2VpZ2h0c19sYXJvaWEuYykgYW5kIGl0cyBjYWxsZXJzLCBzbyBpdCByZXVz
ZXMgdGhhdCBjb2RlIGluIHRoZQorIGRlY29kZXIgaW5zdGVhZCBvZiB1c2luZyBhIHByZS1jb21w
dXRlZCB0YWJsZSB0byByZWR1Y2UgdGhlIGFtb3VudCBvZiBST00KKyByZXF1aXJlZC4KKzwvdD4K
KworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbmxzZl9uYm1iX2NvZGVib29rIgorICAgICAgICAg
ICB0aXRsZT0iTkIvTUIgTm9ybWFsaXplZCBMU0YgU3RhZ2UtMSBDb2RlYm9vayBWZWN0b3JzIj4K
Kzx0dGNvbD5JMTwvdHRjb2w+Cis8dHRjb2w+Q29kZWJvb2sgKFE4KTwvdHRjb2w+Cis8Yy8+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7Jm5ic3A7MSZuYnNwOyZu
YnNwOyZuYnNwOzImbmJzcDsmbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7Jm5ic3A7NCZuYnNwOyZu
YnNwOyZuYnNwOzUmbmJzcDsmbmJzcDsmbmJzcDs2Jm5ic3A7Jm5ic3A7Jm5ic3A7NyZuYnNwOyZu
YnNwOyZuYnNwOzgmbmJzcDsmbmJzcDsmbmJzcDs5PC9zcGFueD48L2M+Cis8Yz4wPC9jPgorPGM+
PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTImbmJzcDsmbmJzcDszNSZuYnNwOyZuYnNwOzYwJm5ic3A7
Jm5ic3A7ODMmbmJzcDsxMDgmbmJzcDsxMzImbmJzcDsxNTcmbmJzcDsxODAmbmJzcDsyMDYmbmJz
cDsyMjg8L3NwYW54PjwvYz4KKzxjPjE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNSZu
YnNwOyZuYnNwOzMyJm5ic3A7Jm5ic3A7NTUmbmJzcDsmbmJzcDs3NyZuYnNwOzEwMSZuYnNwOzEy
NSZuYnNwOzE1MSZuYnNwOzE3NSZuYnNwOzIwMSZuYnNwOzIyNTwvc3Bhbng+PC9jPgorPGM+Mjwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE5Jm5ic3A7Jm5ic3A7NDImbmJzcDsmbmJzcDs2
NiZuYnNwOyZuYnNwOzg5Jm5ic3A7MTE0Jm5ic3A7MTM3Jm5ic3A7MTYyJm5ic3A7MTg0Jm5ic3A7
MjA5Jm5ic3A7MjMwPC9zcGFueD48L2M+Cis8Yz4zPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+MTImbmJzcDsmbmJzcDsyNSZuYnNwOyZuYnNwOzUwJm5ic3A7Jm5ic3A7NzImbmJzcDsmbmJz
cDs5NyZuYnNwOzEyMCZuYnNwOzE0NyZuYnNwOzE3MiZuYnNwOzIwMCZuYnNwOzIyMzwvc3Bhbng+
PC9jPgorPGM+NDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjI2Jm5ic3A7Jm5ic3A7NDQm
bmJzcDsmbmJzcDs2OSZuYnNwOyZuYnNwOzkwJm5ic3A7MTE0Jm5ic3A7MTM1Jm5ic3A7MTU5Jm5i
c3A7MTgwJm5ic3A7MjA1Jm5ic3A7MjI1PC9zcGFueD48L2M+Cis8Yz41PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+MTMmbmJzcDsmbmJzcDsyMiZuYnNwOyZuYnNwOzUzJm5ic3A7Jm5ic3A7
ODAmbmJzcDsxMDYmbmJzcDsxMzAmbmJzcDsxNTYmbmJzcDsxODAmbmJzcDsyMDUmbmJzcDsyMjg8
L3NwYW54PjwvYz4KKzxjPjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNSZuYnNwOyZu
YnNwOzI1Jm5ic3A7Jm5ic3A7NDQmbmJzcDsmbmJzcDs2NCZuYnNwOyZuYnNwOzkwJm5ic3A7MTE1
Jm5ic3A7MTQyJm5ic3A7MTY4Jm5ic3A7MTk2Jm5ic3A7MjIyPC9zcGFueD48L2M+Cis8Yz43PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTkmbmJzcDsmbmJzcDsyNCZuYnNwOyZuYnNwOzYy
Jm5ic3A7Jm5ic3A7ODImbmJzcDsxMDAmbmJzcDsxMjAmbmJzcDsxNDUmbmJzcDsxNjgmbmJzcDsx
OTAmbmJzcDsyMTQ8L3NwYW54PjwvYz4KKzxjPjg8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4yMiZuYnNwOyZuYnNwOzMxJm5ic3A7Jm5ic3A7NTAmbmJzcDsmbmJzcDs3OSZuYnNwOzEwMyZu
YnNwOzEyMCZuYnNwOzE1MSZuYnNwOzE3MCZuYnNwOzIwMyZuYnNwOzIyNzwvc3Bhbng+PC9jPgor
PGM+OTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjIxJm5ic3A7Jm5ic3A7MjkmbmJzcDsm
bmJzcDs0NSZuYnNwOyZuYnNwOzY1Jm5ic3A7MTA2Jm5ic3A7MTI0Jm5ic3A7MTUwJm5ic3A7MTcx
Jm5ic3A7MTk2Jm5ic3A7MjI0PC9zcGFueD48L2M+Cis8Yz4xMDwvYz4KKzxjPjxzcGFueCBzdHls
ZT0idmJhcmUiPjMwJm5ic3A7Jm5ic3A7NDkmbmJzcDsmbmJzcDs3NSZuYnNwOyZuYnNwOzk3Jm5i
c3A7MTIxJm5ic3A7MTQyJm5ic3A7MTY1Jm5ic3A7MTg2Jm5ic3A7MjA5Jm5ic3A7MjI5PC9zcGFu
eD48L2M+Cis8Yz4xMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE5Jm5ic3A7Jm5ic3A7
MjUmbmJzcDsmbmJzcDs1MiZuYnNwOyZuYnNwOzcwJm5ic3A7Jm5ic3A7OTMmbmJzcDsxMTYmbmJz
cDsxNDMmbmJzcDsxNjYmbmJzcDsxOTImbmJzcDsyMTk8L3NwYW54PjwvYz4KKzxjPjEyPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjYmbmJzcDsmbmJzcDszNCZuYnNwOyZuYnNwOzYyJm5i
c3A7Jm5ic3A7NzUmbmJzcDsmbmJzcDs5NyZuYnNwOzExOCZuYnNwOzE0NSZuYnNwOzE2NyZuYnNw
OzE5NCZuYnNwOzIxNzwvc3Bhbng+PC9jPgorPGM+MTM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4yNSZuYnNwOyZuYnNwOzMzJm5ic3A7Jm5ic3A7NTYmbmJzcDsmbmJzcDs3MCZuYnNwOyZu
YnNwOzkxJm5ic3A7MTEzJm5ic3A7MTQzJm5ic3A7MTY1Jm5ic3A7MTk2Jm5ic3A7MjIzPC9zcGFu
eD48L2M+Cis8Yz4xNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjIxJm5ic3A7Jm5ic3A7
MzQmbmJzcDsmbmJzcDs1MSZuYnNwOyZuYnNwOzcyJm5ic3A7Jm5ic3A7OTcmbmJzcDsxMTcmbmJz
cDsxNDUmbmJzcDsxNzEmbmJzcDsxOTYmbmJzcDsyMjI8L3NwYW54PjwvYz4KKzxjPjE1PC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjAmbmJzcDsmbmJzcDsyOSZuYnNwOyZuYnNwOzUwJm5i
c3A7Jm5ic3A7NjcmbmJzcDsmbmJzcDs5MCZuYnNwOzExNyZuYnNwOzE0NCZuYnNwOzE2OCZuYnNw
OzE5NyZuYnNwOzIyMTwvc3Bhbng+PC9jPgorPGM+MTY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4yMiZuYnNwOyZuYnNwOzMxJm5ic3A7Jm5ic3A7NDgmbmJzcDsmbmJzcDs2NiZuYnNwOyZu
YnNwOzk1Jm5ic3A7MTE3Jm5ic3A7MTQ2Jm5ic3A7MTY4Jm5ic3A7MTk2Jm5ic3A7MjIyPC9zcGFu
eD48L2M+Cis8Yz4xNzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjI0Jm5ic3A7Jm5ic3A7
MzMmbmJzcDsmbmJzcDs1MSZuYnNwOyZuYnNwOzc3Jm5ic3A7MTE2Jm5ic3A7MTM0Jm5ic3A7MTU4
Jm5ic3A7MTgwJm5ic3A7MjAwJm5ic3A7MjI0PC9zcGFueD48L2M+Cis8Yz4xODwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPjIxJm5ic3A7Jm5ic3A7MjgmbmJzcDsmbmJzcDs3MCZuYnNwOyZu
YnNwOzg3Jm5ic3A7MTA2Jm5ic3A7MTI0Jm5ic3A7MTQ5Jm5ic3A7MTcwJm5ic3A7MTk0Jm5ic3A7
MjE3PC9zcGFueD48L2M+Cis8Yz4xOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjI2Jm5i
c3A7Jm5ic3A7MzMmbmJzcDsmbmJzcDs1MyZuYnNwOyZuYnNwOzY0Jm5ic3A7Jm5ic3A7ODMmbmJz
cDsxMTcmbmJzcDsxNTImbmJzcDsxNzMmbmJzcDsyMDQmbmJzcDsyMjU8L3NwYW54PjwvYz4KKzxj
PjIwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MjcmbmJzcDsmbmJzcDszNCZuYnNwOyZu
YnNwOzY1Jm5ic3A7Jm5ic3A7OTUmbmJzcDsxMDgmbmJzcDsxMjkmbmJzcDsxNTUmbmJzcDsxNzQm
bmJzcDsyMTAmbmJzcDsyMjU8L3NwYW54PjwvYz4KKzxjPjIxPC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+MjAmbmJzcDsmbmJzcDsyNiZuYnNwOyZuYnNwOzcyJm5ic3A7Jm5ic3A7OTkmbmJz
cDsxMTMmbmJzcDsxMzEmbmJzcDsxNTQmbmJzcDsxNzYmbmJzcDsyMDAmbmJzcDsyMTk8L3NwYW54
PjwvYz4KKzxjPjIyPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MzQmbmJzcDsmbmJzcDs0
MyZuYnNwOyZuYnNwOzYxJm5ic3A7Jm5ic3A7NzgmbmJzcDsmbmJzcDs5MyZuYnNwOzExNCZuYnNw
OzE1NSZuYnNwOzE3NyZuYnNwOzIwNSZuYnNwOzIyOTwvc3Bhbng+PC9jPgorPGM+MjM8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yMyZuYnNwOyZuYnNwOzI5Jm5ic3A7Jm5ic3A7NTQmbmJz
cDsmbmJzcDs5NyZuYnNwOzEyNCZuYnNwOzEzOCZuYnNwOzE2MyZuYnNwOzE3OSZuYnNwOzIwOSZu
YnNwOzIyOTwvc3Bhbng+PC9jPgorPGM+MjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4z
MCZuYnNwOyZuYnNwOzM4Jm5ic3A7Jm5ic3A7NTYmbmJzcDsmbmJzcDs4OSZuYnNwOzExOCZuYnNw
OzEyOSZuYnNwOzE1OCZuYnNwOzE3OCZuYnNwOzIwMCZuYnNwOzIzMTwvc3Bhbng+PC9jPgorPGM+
MjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yMSZuYnNwOyZuYnNwOzI5Jm5ic3A7Jm5i
c3A7NDkmbmJzcDsmbmJzcDs2MyZuYnNwOyZuYnNwOzg1Jm5ic3A7MTExJm5ic3A7MTQyJm5ic3A7
MTYzJm5ic3A7MTkzJm5ic3A7MjIyPC9zcGFueD48L2M+Cis8Yz4yNjwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPjI3Jm5ic3A7Jm5ic3A7NDgmbmJzcDsmbmJzcDs3NyZuYnNwOzEwMyZuYnNw
OzEzMyZuYnNwOzE1OCZuYnNwOzE3OSZuYnNwOzE5NiZuYnNwOzIxNSZuYnNwOzIzMjwvc3Bhbng+
PC9jPgorPGM+Mjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yOSZuYnNwOyZuYnNwOzQ3
Jm5ic3A7Jm5ic3A7NzQmbmJzcDsmbmJzcDs5OSZuYnNwOzEyNCZuYnNwOzE1MSZuYnNwOzE3NiZu
YnNwOzE5OCZuYnNwOzIyMCZuYnNwOzIzNzwvc3Bhbng+PC9jPgorPGM+Mjg8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4zMyZuYnNwOyZuYnNwOzQyJm5ic3A7Jm5ic3A7NjEmbmJzcDsmbmJz
cDs3NiZuYnNwOyZuYnNwOzkzJm5ic3A7MTIxJm5ic3A7MTU1Jm5ic3A7MTc0Jm5ic3A7MjA3Jm5i
c3A7MjI1PC9zcGFueD48L2M+Cis8Yz4yOTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjI5
Jm5ic3A7Jm5ic3A7NTMmbmJzcDsmbmJzcDs4NyZuYnNwOzExMiZuYnNwOzEzNiZuYnNwOzE1NCZu
YnNwOzE3MCZuYnNwOzE4OCZuYnNwOzIwOCZuYnNwOzIyNzwvc3Bhbng+PC9jPgorPGM+MzA8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4yNCZuYnNwOyZuYnNwOzMwJm5ic3A7Jm5ic3A7NTIm
bmJzcDsmbmJzcDs4NCZuYnNwOzEzMSZuYnNwOzE1MCZuYnNwOzE2NiZuYnNwOzE4NiZuYnNwOzIw
MyZuYnNwOzIyOTwvc3Bhbng+PC9jPgorPGM+MzE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4zNyZuYnNwOyZuYnNwOzQ4Jm5ic3A7Jm5ic3A7NjQmbmJzcDsmbmJzcDs4NCZuYnNwOzEwNCZu
YnNwOzExOCZuYnNwOzE1NiZuYnNwOzE3NyZuYnNwOzIwMSZuYnNwOzIzMDwvc3Bhbng+PC9jPgor
PC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX25sc2Zfd2JfY29kZWJvb2si
CisgICAgICAgICAgIHRpdGxlPSJXQiBOb3JtYWxpemVkIExTRiBTdGFnZS0xIENvZGVib29rIFZl
Y3RvcnMiPgorPHR0Y29sPkkxPC90dGNvbD4KKzx0dGNvbD5Db2RlYm9vayAoUTgpPC90dGNvbD4K
KzxjLz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDsxJm5ic3A7
Jm5ic3A7MiZuYnNwOyZuYnNwOzMmbmJzcDsmbmJzcDs0Jm5ic3A7Jm5ic3A7Jm5ic3A7NSZuYnNw
OyZuYnNwOyZuYnNwOzYmbmJzcDsmbmJzcDsmbmJzcDs3Jm5ic3A7Jm5ic3A7Jm5ic3A7OCZuYnNw
OyZuYnNwOyZuYnNwOzkmbmJzcDsmbmJzcDsxMCZuYnNwOyZuYnNwOzExJm5ic3A7Jm5ic3A7MTIm
bmJzcDsmbmJzcDsxMyZuYnNwOyZuYnNwOzE0Jm5ic3A7Jm5ic3A7MTU8L3NwYW54PjwvYz4KKzxj
PjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs3Jm5ic3A7MjMmbmJzcDszOCZu
YnNwOzU0Jm5ic3A7NjkmbmJzcDsmbmJzcDs4NSZuYnNwOzEwMCZuYnNwOzExNiZuYnNwOzEzMSZu
YnNwOzE0NyZuYnNwOzE2MiZuYnNwOzE3OCZuYnNwOzE5MyZuYnNwOzIwOCZuYnNwOzIyMyZuYnNw
OzIzOTwvc3Bhbng+PC9jPgorPGM+MTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjEzJm5i
c3A7MjUmbmJzcDs0MSZuYnNwOzU1Jm5ic3A7NjkmbmJzcDsmbmJzcDs4MyZuYnNwOyZuYnNwOzk4
Jm5ic3A7MTEyJm5ic3A7MTI3Jm5ic3A7MTQyJm5ic3A7MTU3Jm5ic3A7MTcxJm5ic3A7MTg3Jm5i
c3A7MjAzJm5ic3A7MjIwJm5ic3A7MjM2PC9zcGFueD48L2M+Cis8Yz4yPC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+MTUmbmJzcDsyMSZuYnNwOzM0Jm5ic3A7NTEmbmJzcDs2MSZuYnNwOyZu
YnNwOzc4Jm5ic3A7Jm5ic3A7OTImbmJzcDsxMDYmbmJzcDsxMjYmbmJzcDsxMzYmbmJzcDsxNTIm
bmJzcDsxNjcmbmJzcDsxODUmbmJzcDsyMDUmbmJzcDsyMjUmbmJzcDsyNDA8L3NwYW54PjwvYz4K
KzxjPjM8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xMCZuYnNwOzIxJm5ic3A7MzYmbmJz
cDs1MCZuYnNwOzYzJm5ic3A7Jm5ic3A7NzkmbmJzcDsmbmJzcDs5NSZuYnNwOzExMCZuYnNwOzEy
NiZuYnNwOzE0MSZuYnNwOzE1NyZuYnNwOzE3MyZuYnNwOzE4OSZuYnNwOzIwNSZuYnNwOzIyMSZu
YnNwOzIzNzwvc3Bhbng+PC9jPgorPGM+NDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE3
Jm5ic3A7MjAmbmJzcDszNyZuYnNwOzUxJm5ic3A7NTkmbmJzcDsmbmJzcDs3OCZuYnNwOyZuYnNw
Ozg5Jm5ic3A7MTA3Jm5ic3A7MTIzJm5ic3A7MTM0Jm5ic3A7MTUwJm5ic3A7MTY0Jm5ic3A7MTg0
Jm5ic3A7MjA1Jm5ic3A7MjI0Jm5ic3A7MjQwPC9zcGFueD48L2M+Cis8Yz41PC9jPgorPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+MTAmbmJzcDsxNSZuYnNwOzMyJm5ic3A7NTEmbmJzcDs2NyZuYnNw
OyZuYnNwOzgxJm5ic3A7Jm5ic3A7OTYmbmJzcDsxMTImbmJzcDsxMjkmbmJzcDsxNDImbmJzcDsx
NTgmbmJzcDsxNzMmbmJzcDsxODkmbmJzcDsyMDQmbmJzcDsyMjAmbmJzcDsyMzY8L3NwYW54Pjwv
Yz4KKzxjPjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs4Jm5ic3A7MjEmbmJz
cDszNyZuYnNwOzUxJm5ic3A7NjUmbmJzcDsmbmJzcDs3OSZuYnNwOyZuYnNwOzk4Jm5ic3A7MTEz
Jm5ic3A7MTI2Jm5ic3A7MTM4Jm5ic3A7MTU1Jm5ic3A7MTY4Jm5ic3A7MTc5Jm5ic3A7MTkyJm5i
c3A7MjA5Jm5ic3A7MjE4PC9zcGFueD48L2M+Cis8Yz43PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+MTImbmJzcDsxNSZuYnNwOzM0Jm5ic3A7NTUmbmJzcDs2MyZuYnNwOyZuYnNwOzc4Jm5i
c3A7Jm5ic3A7ODcmbmJzcDsxMDgmbmJzcDsxMTgmbmJzcDsxMzEmbmJzcDsxNDgmbmJzcDsxNjcm
bmJzcDsxODUmbmJzcDsyMDMmbmJzcDsyMTkmbmJzcDsyMzY8L3NwYW54PjwvYz4KKzxjPjg8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNiZuYnNwOzE5Jm5ic3A7MzImbmJzcDszNiZuYnNw
OzU2Jm5ic3A7Jm5ic3A7NzkmbmJzcDsmbmJzcDs5MSZuYnNwOzEwOCZuYnNwOzExOCZuYnNwOzEz
NiZuYnNwOzE1NCZuYnNwOzE3MSZuYnNwOzE4NiZuYnNwOzIwNCZuYnNwOzIyMCZuYnNwOzIzNzwv
c3Bhbng+PC9jPgorPGM+OTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjExJm5ic3A7Mjgm
bmJzcDs0MyZuYnNwOzU4Jm5ic3A7NzQmbmJzcDsmbmJzcDs4OSZuYnNwOzEwNSZuYnNwOzEyMCZu
YnNwOzEzNSZuYnNwOzE1MCZuYnNwOzE2NSZuYnNwOzE4MCZuYnNwOzE5NiZuYnNwOzIxMSZuYnNw
OzIyNiZuYnNwOzI0MTwvc3Bhbng+PC9jPgorPGM+MTA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDs2Jm5ic3A7MTYmbmJzcDszMyZuYnNwOzQ2Jm5ic3A7NjAmbmJzcDsmbmJzcDs3
NSZuYnNwOyZuYnNwOzkyJm5ic3A7MTA3Jm5ic3A7MTIzJm5ic3A7MTM3Jm5ic3A7MTU2Jm5ic3A7
MTY5Jm5ic3A7MTg1Jm5ic3A7MTk5Jm5ic3A7MjE0Jm5ic3A7MjI1PC9zcGFueD48L2M+Cis8Yz4x
MTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjExJm5ic3A7MTkmbmJzcDszMCZuYnNwOzQ0
Jm5ic3A7NTcmbmJzcDsmbmJzcDs3NCZuYnNwOyZuYnNwOzg5Jm5ic3A7MTA1Jm5ic3A7MTIxJm5i
c3A7MTM1Jm5ic3A7MTUyJm5ic3A7MTY5Jm5ic3A7MTg2Jm5ic3A7MjAyJm5ic3A7MjE4Jm5ic3A7
MjM0PC9zcGFueD48L2M+Cis8Yz4xMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjEyJm5i
c3A7MTkmbmJzcDsyOSZuYnNwOzQ2Jm5ic3A7NTcmbmJzcDsmbmJzcDs3MSZuYnNwOyZuYnNwOzg4
Jm5ic3A7MTAwJm5ic3A7MTIwJm5ic3A7MTMyJm5ic3A7MTQ4Jm5ic3A7MTY1Jm5ic3A7MTgyJm5i
c3A7MTk5Jm5ic3A7MjE2Jm5ic3A7MjMzPC9zcGFueD48L2M+Cis8Yz4xMzwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPjE3Jm5ic3A7MjMmbmJzcDszNSZuYnNwOzQ2Jm5ic3A7NTYmbmJzcDsm
bmJzcDs3NyZuYnNwOyZuYnNwOzkyJm5ic3A7MTA2Jm5ic3A7MTIzJm5ic3A7MTM0Jm5ic3A7MTUy
Jm5ic3A7MTY3Jm5ic3A7MTg1Jm5ic3A7MjA0Jm5ic3A7MjIyJm5ic3A7MjM3PC9zcGFueD48L2M+
Cis8Yz4xNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjE0Jm5ic3A7MTcmbmJzcDs0NSZu
YnNwOzUzJm5ic3A7NjMmbmJzcDsmbmJzcDs3NSZuYnNwOyZuYnNwOzg5Jm5ic3A7MTA3Jm5ic3A7
MTE1Jm5ic3A7MTMyJm5ic3A7MTUxJm5ic3A7MTcxJm5ic3A7MTg4Jm5ic3A7MjA2Jm5ic3A7MjIx
Jm5ic3A7MjQwPC9zcGFueD48L2M+Cis8Yz4xNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PiZuYnNwOzkmbmJzcDsxNiZuYnNwOzI5Jm5ic3A7NDAmbmJzcDs1NiZuYnNwOyZuYnNwOzcxJm5i
c3A7Jm5ic3A7ODgmbmJzcDsxMDMmbmJzcDsxMTkmbmJzcDsxMzcmbmJzcDsxNTQmbmJzcDsxNzEm
bmJzcDsxODkmbmJzcDsyMDUmbmJzcDsyMjImbmJzcDsyMzc8L3NwYW54PjwvYz4KKzxjPjE2PC9j
PgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTYmbmJzcDsxOSZuYnNwOzM2Jm5ic3A7NDgmbmJz
cDs1NyZuYnNwOyZuYnNwOzc2Jm5ic3A7Jm5ic3A7ODcmbmJzcDsxMDUmbmJzcDsxMTgmbmJzcDsx
MzImbmJzcDsxNTAmbmJzcDsxNjcmbmJzcDsxODUmbmJzcDsyMDImbmJzcDsyMTgmbmJzcDsyMzY8
L3NwYW54PjwvYz4KKzxjPjE3PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTImbmJzcDsx
NyZuYnNwOzI5Jm5ic3A7NTQmbmJzcDs3MSZuYnNwOyZuYnNwOzgxJm5ic3A7Jm5ic3A7OTQmbmJz
cDsxMDQmbmJzcDsxMjYmbmJzcDsxMzYmbmJzcDsxNDkmbmJzcDsxNjQmbmJzcDsxODImbmJzcDsy
MDEmbmJzcDsyMjEmbmJzcDsyMzc8L3NwYW54PjwvYz4KKzxjPjE4PC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+MTUmbmJzcDsyOCZuYnNwOzQ3Jm5ic3A7NjImbmJzcDs3OSZuYnNwOyZuYnNw
Ozk3Jm5ic3A7MTE1Jm5ic3A7MTI5Jm5ic3A7MTQyJm5ic3A7MTU1Jm5ic3A7MTY4Jm5ic3A7MTgw
Jm5ic3A7MTk0Jm5ic3A7MjA4Jm5ic3A7MjIzJm5ic3A7MjM4PC9zcGFueD48L2M+Cis8Yz4xOTwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzgmbmJzcDsxNCZuYnNwOzMwJm5ic3A7
NDUmbmJzcDs2MiZuYnNwOyZuYnNwOzc4Jm5ic3A7Jm5ic3A7OTQmbmJzcDsxMTEmbmJzcDsxMjcm
bmJzcDsxNDMmbmJzcDsxNTkmbmJzcDsxNzUmbmJzcDsxOTImbmJzcDsyMDcmbmJzcDsyMjMmbmJz
cDsyMzk8L3NwYW54PjwvYz4KKzxjPjIwPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTcm
bmJzcDszMCZuYnNwOzQ5Jm5ic3A7NjImbmJzcDs3OSZuYnNwOyZuYnNwOzkyJm5ic3A7MTA3Jm5i
c3A7MTE5Jm5ic3A7MTMyJm5ic3A7MTQ1Jm5ic3A7MTYwJm5ic3A7MTc0Jm5ic3A7MTkwJm5ic3A7
MjA0Jm5ic3A7MjIwJm5ic3A7MjM1PC9zcGFueD48L2M+Cis8Yz4yMTwvYz4KKzxjPjxzcGFueCBz
dHlsZT0idmJhcmUiPjE0Jm5ic3A7MTkmbmJzcDszNiZuYnNwOzQ1Jm5ic3A7NjEmbmJzcDsmbmJz
cDs3NiZuYnNwOyZuYnNwOzkxJm5ic3A7MTA4Jm5ic3A7MTIxJm5ic3A7MTM4Jm5ic3A7MTU0Jm5i
c3A7MTcyJm5ic3A7MTg5Jm5ic3A7MjA1Jm5ic3A7MjIyJm5ic3A7MjM4PC9zcGFueD48L2M+Cis8
Yz4yMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjEyJm5ic3A7MTgmbmJzcDszMSZuYnNw
OzQ1Jm5ic3A7NjAmbmJzcDsmbmJzcDs3NiZuYnNwOyZuYnNwOzkxJm5ic3A7MTA3Jm5ic3A7MTIz
Jm5ic3A7MTM4Jm5ic3A7MTU0Jm5ic3A7MTcxJm5ic3A7MTg3Jm5ic3A7MjA0Jm5ic3A7MjIxJm5i
c3A7MjM2PC9zcGFueD48L2M+Cis8Yz4yMzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPjEz
Jm5ic3A7MTcmbmJzcDszMSZuYnNwOzQzJm5ic3A7NTMmbmJzcDsmbmJzcDs3MCZuYnNwOyZuYnNw
OzgzJm5ic3A7MTAzJm5ic3A7MTE0Jm5ic3A7MTMxJm5ic3A7MTQ5Jm5ic3A7MTY3Jm5ic3A7MTg1
Jm5ic3A7MjAzJm5ic3A7MjIwJm5ic3A7MjM3PC9zcGFueD48L2M+Cis8Yz4yNDwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPjE3Jm5ic3A7MjImbmJzcDszNSZuYnNwOzQyJm5ic3A7NTgmbmJz
cDsmbmJzcDs3OCZuYnNwOyZuYnNwOzkzJm5ic3A7MTEwJm5ic3A7MTI1Jm5ic3A7MTM5Jm5ic3A7
MTU1Jm5ic3A7MTcwJm5ic3A7MTg4Jm5ic3A7MjA2Jm5ic3A7MjI0Jm5ic3A7MjQwPC9zcGFueD48
L2M+Cis8Yz4yNTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzgmbmJzcDsxNSZu
YnNwOzM0Jm5ic3A7NTAmbmJzcDs2NyZuYnNwOyZuYnNwOzgzJm5ic3A7Jm5ic3A7OTkmbmJzcDsx
MTUmbmJzcDsxMzEmbmJzcDsxNDYmbmJzcDsxNjImbmJzcDsxNzgmbmJzcDsxOTMmbmJzcDsyMDkm
bmJzcDsyMjQmbmJzcDsyMzk8L3NwYW54PjwvYz4KKzxjPjI2PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+MTMmbmJzcDsxNiZuYnNwOzQxJm5ic3A7NjYmbmJzcDs3MyZuYnNwOyZuYnNwOzg2
Jm5ic3A7Jm5ic3A7OTUmbmJzcDsxMTEmbmJzcDsxMjgmbmJzcDsxMzcmbmJzcDsxNTAmbmJzcDsx
NjMmbmJzcDsxODMmbmJzcDsyMDYmbmJzcDsyMjUmbmJzcDsyNDE8L3NwYW54PjwvYz4KKzxjPjI3
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTcmbmJzcDsyNSZuYnNwOzM3Jm5ic3A7NTIm
bmJzcDs2MyZuYnNwOyZuYnNwOzc1Jm5ic3A7Jm5ic3A7OTImbmJzcDsxMDImbmJzcDsxMTkmbmJz
cDsxMzImbmJzcDsxNDQmbmJzcDsxNjAmbmJzcDsxNzUmbmJzcDsxOTEmbmJzcDsyMTImbmJzcDsy
MzE8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+MTkmbmJz
cDszMSZuYnNwOzQ5Jm5ic3A7NjUmbmJzcDs4MyZuYnNwOzEwMCZuYnNwOzExNyZuYnNwOzEzMyZu
YnNwOzE0NyZuYnNwOzE2MSZuYnNwOzE3NCZuYnNwOzE4NyZuYnNwOzIwMCZuYnNwOzIxMyZuYnNw
OzIyNyZuYnNwOzI0Mjwvc3Bhbng+PC9jPgorPGM+Mjk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4xOCZuYnNwOzMxJm5ic3A7NTImbmJzcDs2OCZuYnNwOzg4Jm5ic3A7MTAzJm5ic3A7MTE3
Jm5ic3A7MTI2Jm5ic3A7MTM4Jm5ic3A7MTQ5Jm5ic3A7MTYzJm5ic3A7MTc3Jm5ic3A7MTkyJm5i
c3A7MjA3Jm5ic3A7MjIzJm5ic3A7MjM5PC9zcGFueD48L2M+Cis8Yz4zMDwvYz4KKzxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPjE2Jm5ic3A7MjkmbmJzcDs0NyZuYnNwOzYxJm5ic3A7NzYmbmJzcDsm
bmJzcDs5MCZuYnNwOzEwNiZuYnNwOzExOSZuYnNwOzEzMyZuYnNwOzE0NyZuYnNwOzE2MSZuYnNw
OzE3NiZuYnNwOzE5MyZuYnNwOzIwOSZuYnNwOzIyNCZuYnNwOzI0MDwvc3Bhbng+PC9jPgorPGM+
MzE8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4xNSZuYnNwOzIxJm5ic3A7MzUmbmJzcDs1
MCZuYnNwOzYxJm5ic3A7Jm5ic3A7NzMmbmJzcDsmbmJzcDs4NiZuYnNwOyZuYnNwOzk3Jm5ic3A7
MTEwJm5ic3A7MTE5Jm5ic3A7MTI5Jm5ic3A7MTQxJm5ic3A7MTc1Jm5ic3A7MTk4Jm5ic3A7MjE4
Jm5ic3A7MjM3PC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKworPHQ+CitHaXZlbiB0aGUgc3Rh
Z2UtMSBjb2RlYm9vayBlbnRyeSBjYjFfUThbXSwgdGhlIHN0YWdlLTIgcmVzaWR1YWwgcmVzX1Ex
MFtdLCBhbmQKKyB0aGVpciBjb3JyZXNwb25kaW5nIHdlaWdodHMsIHdfUTlbXSwgdGhlIHJlY29u
c3RydWN0ZWQgbm9ybWFsaXplZCBMU0YKKyBjb2VmZmljaWVudHMgYXJlCis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitOTFNGX1ExNVtr
XSA9IGNsYW1wKDAsCisgICAgICAgICAgICAgICAoY2IxX1E4W2tdPDw3KSArIChyZXNfUTEwW2td
PDwxNCkvd19ROVtrXSwgMzI3NjcpICwKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIHdoZXJl
IHRoZSBkaXZpc2lvbiBpcyBpbnRlZ2VyIGRpdmlzaW9uLgorSG93ZXZlciwgbm90aGluZyBpbiBl
aXRoZXIgdGhlIHJlY29uc3RydWN0aW9uIHByb2Nlc3Mgb3IgdGhlCisgcXVhbnRpemF0aW9uIHBy
b2Nlc3MgaW4gdGhlIGVuY29kZXIgdGh1cyBmYXIgZ3VhcmFudGVlcyB0aGF0IHRoZSBjb2VmZmlj
aWVudHMKKyBhcmUgbW9ub3RvbmljYWxseSBpbmNyZWFzaW5nIGFuZCBzZXBhcmF0ZWQgd2VsbCBl
bm91Z2ggdG8gZW5zdXJlIGEgc3RhYmxlCisgZmlsdGVyIDx4cmVmIHRhcmdldD0iS2FiYWw4NiIv
Pi4KK1doZW4gdXNpbmcgdGhlIHJlZmVyZW5jZSBlbmNvZGVyLCByb3VnaGx5IDIlIG9mIGZyYW1l
cyB2aW9sYXRlIHRoaXMgY29uc3RyYWludC4KK1RoZSBuZXh0IHNlY3Rpb24gZGVzY3JpYmVzIGEg
c3RhYmlsaXphdGlvbiBwcm9jZWR1cmUgdXNlZCB0byBtYWtlIHRoZXNlCisgZ3VhcmFudGVlcy4K
KzwvdD4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbmxzZl9zdGFiaWxp
emF0aW9uIiB0aXRsZT0iTm9ybWFsaXplZCBMU0YgU3RhYmlsaXphdGlvbiI+Cis8dD4KK1RoZSBu
b3JtYWxpemVkIExTRiBzdGFiaWxpemF0aW9uIHByb2NlZHVyZSBpcyBpbXBsZW1lbnRlZCBpbgor
IHNpbGtfTkxTRl9zdGFiaWxpemUoKSAoTkxTRl9zdGFiaWxpemUuYykuCitUaGlzIHByb2Nlc3Mg
ZW5zdXJlcyB0aGF0IGNvbnNlY3V0aXZlIHZhbHVlcyBvZiB0aGUgbm9ybWFsaXplZCBMU0YKKyBj
b2VmZmljaWVudHMsIE5MU0ZfUTE1W10sIGFyZSBzcGFjZWQgc29tZSBtaW5pbXVtIGRpc3RhbmNl
IGFwYXJ0CisgKHByZWRldGVybWluZWQgdG8gYmUgdGhlIDAuMDEgcGVyY2VudGlsZSBvZiBhIGxh
cmdlIHRyYWluaW5nIHNldCkuCis8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9taW5fc3BhY2luZyIv
PiBnaXZlcyB0aGUgbWluaW11bSBzcGFjaW5ncyBmb3IgTkIgYW5kIE1CCisgYW5kIHRob3NlIGZv
ciBXQiwgd2hlcmUgcm93IGsgaXMgdGhlIG1pbmltdW0gYWxsb3dlZCB2YWx1ZSBvZgorIE5MU0Zf
UVtrXS1OTFNGX1Fbay0xXS4KK0ZvciB0aGUgcHVycG9zZXMgb2YgY29tcHV0aW5nIHRoaXMgc3Bh
Y2luZyBmb3IgdGhlIGZpcnN0IGFuZCBsYXN0IGNvZWZmaWNpZW50LAorIE5MU0ZfUTE1Wy0xXSBp
cyB0YWtlbiB0byBiZSAwLCBhbmQgTkxTRl9RMTVbZF9MUENdIGlzIHRha2VuIHRvIGJlIDMyNzY4
LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19ubHNmX21pbl9zcGFjaW5nIgorICAg
ICAgICAgICB0aXRsZT0iTWluaW11bSBTcGFjaW5nIGZvciBOb3JtYWxpemVkIExTRiBDb2VmZmlj
aWVudHMiPgorPHR0Y29sPkNvZWZmaWNpZW50PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQi
Pk5CIGFuZCBNQjwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij5XQjwvdHRjb2w+CisgPGM+
MDwvYz4gPGM+MjUwPC9jPiA8Yz4xMDA8L2M+CisgPGM+MTwvYz4gICA8Yz4zPC9jPiAgIDxjPjM8
L2M+CisgPGM+MjwvYz4gICA8Yz42PC9jPiAgPGM+NDA8L2M+CisgPGM+MzwvYz4gICA8Yz4zPC9j
PiAgIDxjPjM8L2M+CisgPGM+NDwvYz4gICA8Yz4zPC9jPiAgIDxjPjM8L2M+CisgPGM+NTwvYz4g
ICA8Yz4zPC9jPiAgIDxjPjM8L2M+CisgPGM+NjwvYz4gICA8Yz40PC9jPiAgIDxjPjU8L2M+Cisg
PGM+NzwvYz4gICA8Yz4zPC9jPiAgPGM+MTQ8L2M+CisgPGM+ODwvYz4gICA8Yz4zPC9jPiAgPGM+
MTQ8L2M+CisgPGM+OTwvYz4gICA8Yz4zPC9jPiAgPGM+MTA8L2M+Cis8Yz4xMDwvYz4gPGM+NDYx
PC9jPiAgPGM+MTE8L2M+Cis8Yz4xMTwvYz4gICAgICAgPGMvPiAgIDxjPjM8L2M+Cis8Yz4xMjwv
Yz4gICAgICAgPGMvPiAgIDxjPjg8L2M+Cis8Yz4xMzwvYz4gICAgICAgPGMvPiAgIDxjPjk8L2M+
Cis8Yz4xNDwvYz4gICAgICAgPGMvPiAgIDxjPjc8L2M+Cis8Yz4xNTwvYz4gICAgICAgPGMvPiAg
IDxjPjM8L2M+Cis8Yz4xNjwvYz4gICAgICAgPGMvPiA8Yz4zNDc8L2M+Cis8L3RleHR0YWJsZT4K
KworPHQ+CitUaGUgcHJvY2VkdXJlIHN0YXJ0cyBvZmYgYnkgdHJ5aW5nIHRvIG1ha2Ugc21hbGwg
YWRqdXN0bWVudHMgd2hpY2ggYXR0ZW1wdCB0bworIG1pbmltaXplIHRoZSBhbW91bnQgb2YgZGlz
dG9ydGlvbiBpbnRyb2R1Y2VkLgorQWZ0ZXIgMjAgc3VjaCBhZGp1c3RtZW50cywgaXQgZmFsbHMg
YmFjayB0byBhIG1vcmUgZGlyZWN0IG1ldGhvZCB3aGljaAorIGd1YXJhbnRlZXMgdGhlIGNvbnN0
cmFpbnRzIGFyZSBlbmZvcmNlZCBidXQgbWF5IHJlcXVpcmUgbGFyZ2UgYWRqdXN0bWVudHMuCis8
L3Q+Cis8dD4KK0xldCBORGVsdGFNaW5fUTE1W2tdIGJlIHRoZSBtaW5pbXVtIHJlcXVpcmVkIHNw
YWNpbmcgZm9yIHRoZSBjdXJyZW50IGF1ZGlvCisgYmFuZHdpZHRoIGZyb20gPHhyZWYgdGFyZ2V0
PSJzaWxrX25sc2ZfbWluX3NwYWNpbmciLz4uCitGaXJzdCwgdGhlIHByb2NlZHVyZSBmaW5kcyB0
aGUgaW5kZXggaSB3aGVyZQorIE5MU0ZfUTE1W2ldJm5ic3A7LSZuYnNwO05MU0ZfUTE1W2ktMV0m
bmJzcDstJm5ic3A7TkRlbHRhTWluX1ExNVtpXSBpcyB0aGUKKyBzbWFsbGVzdCwgYnJlYWtpbmcg
dGllcyBieSB1c2luZyB0aGUgbG93ZXIgdmFsdWUgb2YgaS4KK0lmIHRoaXMgdmFsdWUgaXMgbm9u
LW5lZ2F0aXZlLCB0aGVuIHRoZSBzdGFiaWxpemF0aW9uIHN0b3BzOyB0aGUgY29lZmZpY2llbnRz
Cisgc2F0aXNmeSBhbGwgdGhlIGNvbnN0cmFpbnRzLgorT3RoZXJ3aXNlLCBpZiBpJm5ic3A7PT0m
bmJzcDswLCBpdCBzZXRzIE5MU0ZfUTE1WzBdIHRvIE5EZWx0YU1pbl9RMTVbMF0sIGFuZCBpZgor
IGkmbmJzcDs9PSZuYnNwO2RfTFBDLCBpdCBzZXRzIE5MU0ZfUTE1W2RfTFBDLTFdIHRvCisgKDMy
NzY4Jm5ic3A7LSZuYnNwO05EZWx0YU1pbl9RMTVbZF9MUENdKS4KK0ZvciBhbGwgb3RoZXIgdmFs
dWVzIG9mIGksIGJvdGggTkxTRl9RMTVbaS0xXSBhbmQgTkxTRl9RMTVbaV0gYXJlIHVwZGF0ZWQg
YXMKKyBmb2xsb3dzOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJj
ZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaS0xCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfXworIG1p
bl9jZW50ZXJfUTE1ID0gKE5EZWx0YU1pbl9RMTVbaV0+PjEpICsgXCAgTkRlbHRhTWluX1ExNVtr
XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL18KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGs9MAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRfTFBDCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fCisgbWF4X2NlbnRlcl9RMTUgPSAzMjc2
OCAtIChORGVsdGFNaW5fUTE1W2ldPj4xKSAtIFwgIE5EZWx0YU1pbl9RMTVba10KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL18KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrPWkrMQorY2VudGVyX2ZyZXFf
UTE1ID0gY2xhbXAobWluX2NlbnRlcl9RMTVbaV0sCisgICAgICAgICAgICAgICAgICAgICAgICAo
TkxTRl9RMTVbaS0xXSArIE5MU0ZfUTE1W2ldICsgMSk+PjEsCisgICAgICAgICAgICAgICAgICAg
ICAgICBtYXhfY2VudGVyX1ExNVtpXSkKKworIE5MU0ZfUTE1W2ktMV0gPSBjZW50ZXJfZnJlcV9R
MTUgLSAoTkRlbHRhTWluX1ExNVtpXT4+MSkKKworICAgTkxTRl9RMTVbaV0gPSBOTFNGX1ExNVtp
LTFdICsgTkRlbHRhTWluX1ExNVtpXSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZW4g
dGhlIHByb2NlZHVyZSByZXBlYXRzIGFnYWluLCB1bnRpbCBpdCBoYXMgZWl0aGVyIGV4ZWN1dGVk
IDIwIHRpbWVzIG9yCisgaGFzIHN0b3BwZWQgYmVjYXVzZSB0aGUgY29lZmZpY2llbnRzIHNhdGlz
ZnkgYWxsIHRoZSBjb25zdHJhaW50cy4KKzwvdD4KKzx0PgorQWZ0ZXIgdGhlIDIwdGggcmVwZXRp
dGlvbiBvZiB0aGUgYWJvdmUgcHJvY2VkdXJlLCB0aGUgZm9sbG93aW5nIGZhbGxiYWNrCisgcHJv
Y2VkdXJlIGV4ZWN1dGVzIG9uY2UuCitGaXJzdCwgdGhlIHZhbHVlcyBvZiBOTFNGX1ExNVtrXSBm
b3IgMCZuYnNwOyZsdDs9Jm5ic3A7ayZuYnNwOyZsdDsmbmJzcDtkX0xQQworIGFyZSBzb3J0ZWQg
aW4gYXNjZW5kaW5nIG9yZGVyLgorVGhlbiBmb3IgZWFjaCB2YWx1ZSBvZiBrIGZyb20gMCB0byBk
X0xQQy0xLCBOTFNGX1ExNVtrXSBpcyBzZXQgdG8KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8
YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK21heChOTFNGX1ExNVtrXSwgTkxTRl9R
MTVbay0xXSArIE5EZWx0YU1pbl9RMTVba10pIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgor
TmV4dCwgZm9yIGVhY2ggdmFsdWUgb2YgayBmcm9tIGRfTFBDLTEgZG93biB0byAwLCBOTFNGX1Ex
NVtrXSBpcyBzZXQgdG8KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0i
Y2VudGVyIj48IVtDREFUQVsKK21pbihOTFNGX1ExNVtrXSwgTkxTRl9RMTVbaysxXSAtIE5EZWx0
YU1pbl9RMTVbaysxXSkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+CisKKzwvc2Vj
dGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX25sc2ZfaW50ZXJwb2xhdGlvbiIgdGl0bGU9
Ik5vcm1hbGl6ZWQgTFNGIEludGVycG9sYXRpb24iPgorPHQ+CitGb3IgMjAmbmJzcDttcyBTSUxL
IGZyYW1lcywgdGhlIGZpcnN0IGhhbGYgb2YgdGhlIGZyYW1lIChpLmUuLCB0aGUgZmlyc3QgdHdv
Cisgc3ViZnJhbWVzKSBtYXkgdXNlIG5vcm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50cyB0aGF0IGFy
ZSBpbnRlcnBvbGF0ZWQgYmV0d2VlbgorIHRoZSBkZWNvZGVkIExTRnMgZm9yIHRoZSBtb3N0IHJl
Y2VudCBjb2RlZCBmcmFtZSAoaW4gdGhlIHNhbWUgY2hhbm5lbCkgYW5kIHRoZQorIGN1cnJlbnQg
ZnJhbWUuCitBIFEyIGludGVycG9sYXRpb24gZmFjdG9yIGZvbGxvd3MgdGhlIExTRiBjb2VmZmlj
aWVudCBpbmRpY2VzIGluIHRoZSBiaXRzdHJlYW0sCisgd2hpY2ggaXMgZGVjb2RlZCB1c2luZyB0
aGUgUERGIGluIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX2ludGVycF9wZGYiLz4uCitUaGlzIGhh
cHBlbnMgaW4gc2lsa19kZWNvZGVfaW5kaWNlcygpIChkZWNvZGVfaW5kaWNlcy5jKS4KK0FmdGVy
IGVpdGhlcgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+QW4gdW5jb2RlZCByZWd1bGFyIFNJ
TEsgZnJhbWUgaW4gdGhlIHNpZGUgY2hhbm5lbCwgb3I8L3Q+Cis8dD5BIGRlY29kZXIgcmVzZXQg
KHNlZSA8eHJlZiB0YXJnZXQ9ImRlY29kZXItcmVzZXQiLz4pLDwvdD4KKzwvbGlzdD4KKyB0aGUg
ZGVjb2RlciBzdGlsbCBkZWNvZGVzIHRoaXMgZmFjdG9yLCBidXQgaWdub3JlcyBpdHMgdmFsdWUg
YW5kIGFsd2F5cyB1c2VzCisgNCBpbnN0ZWFkLgorRm9yIDEwJm5ic3A7bXMgU0lMSyBmcmFtZXMs
IHRoaXMgZmFjdG9yIGlzIG5vdCBzdG9yZWQgYXQgYWxsLgorPC90PgorCis8dGV4dHRhYmxlIGFu
Y2hvcj0ic2lsa19ubHNmX2ludGVycF9wZGYiCisgICAgICAgICAgIHRpdGxlPSJQREYgZm9yIE5v
cm1hbGl6ZWQgTFNGIEludGVycG9sYXRpb24gSW5kZXgiPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8
Yz57MTMsIDIyLCAyOSwgMTEsIDE4MX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0PgorTGV0
IG4yX1ExNVtrXSBiZSB0aGUgbm9ybWFsaXplZCBMU0YgY29lZmZpY2llbnRzIGRlY29kZWQgYnkg
dGhlIHByb2NlZHVyZSBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmcyIvPiwgbjBfUTE1W2td
IGJlIHRoZSBMU0YgY29lZmZpY2llbnRzCisgZGVjb2RlZCBmb3IgdGhlIHByaW9yIGZyYW1lLCBh
bmQgd19RMiBiZSB0aGUgaW50ZXJwb2xhdGlvbiBmYWN0b3IuCitUaGVuIHRoZSBub3JtYWxpemVk
IExTRiBjb2VmZmljaWVudHMgdXNlZCBmb3IgdGhlIGZpcnN0IGhhbGYgb2YgYSAyMCZuYnNwO21z
CisgZnJhbWUsIG4xX1ExNVtrXSwgYXJlCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCituMV9RMTVba10gPSBuMF9RMTVba10gKyAod19R
MioobjJfUTE1W2tdIC0gbjBfUTE1W2tdKSA+PiAyKSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KK1RoaXMgaW50ZXJwb2xhdGlvbiBpcyBwZXJmb3JtZWQgaW4gc2lsa19kZWNvZGVfcGFyYW1l
dGVycygpCisgKGRlY29kZV9wYXJhbWV0ZXJzLmMpLgorPC90PgorPC9zZWN0aW9uPgorCis8c2Vj
dGlvbiBhbmNob3I9InNpbGtfbmxzZjJscGMiCisgdGl0bGU9IkNvbnZlcnRpbmcgTm9ybWFsaXpl
ZCBMU0ZzIHRvIExQQyBDb2VmZmljaWVudHMiPgorPHQ+CitBbnkgTFBDIGZpbHRlciBBKHopIGNh
biBiZSBzcGxpdCBpbnRvIGEgc3ltbWV0cmljIHBhcnQgUCh6KSBhbmQgYW4KKyBhbnRpLXN5bW1l
dHJpYyBwYXJ0IFEoeikgc3VjaCB0aGF0Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgZF9MUEMKKyAgICAgICAgICAg
X18gICAgICAgICAtayAgIDEKK0EoeikgPSAxIC0gXCAgYVtrXSAqIHogICA9IC0gKiAoUCh6KSAr
IFEoeikpCisgICAgICAgICAgIC9fICAgICAgICAgICAgICAyCisgICAgICAgICAgIGs9MQorXV0+
PC9hcnR3b3JrPgorPC9maWd1cmU+Cit3aXRoCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFy
dHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAtZF9MUEMtMSAg
ICAgIC0xCitQKHopID0gQSh6KSArIHogICAgICAgICAqIEEoeiAgKQorCisgICAgICAgICAgICAg
ICAtZF9MUEMtMSAgICAgIC0xCitRKHopID0gQSh6KSAtIHogICAgICAgICAqIEEoeiAgKSAuCitd
XT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBldmVuIG5vcm1hbGl6ZWQgTFNGIGNvZWZmaWNp
ZW50cyBjb3JyZXNwb25kIHRvIGEgcGFpciBvZiBjb25qdWdhdGUgcm9vdHMgb2YKKyBQKHopLCB3
aGlsZSB0aGUgb2RkIGNvZWZmaWNpZW50cyBjb3JyZXNwb25kIHRvIGEgcGFpciBvZiBjb25qdWdh
dGUgcm9vdHMgb2YKKyBRKHopLCBhbGwgb2Ygd2hpY2ggbGllIG9uIHRoZSB1bml0IGNpcmNsZS4K
K0luIGFkZGl0aW9uLCBQKHopIGhhcyBhIHJvb3QgYXQgcGkgYW5kIFEoeikgaGFzIGEgcm9vdCBh
dCAwLgorVGh1cywgdGhleSBtYXkgYmUgcmVjb25zdHJ1Y3RlZCBtYXRoZW1hdGljYWxseSBmcm9t
IGEgc2V0IG9mIG5vcm1hbGl6ZWQgTFNGCisgY29lZmZpY2llbnRzLCBuW2tdLCBhcworPGZpZ3Vy
ZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAg
ICAgICAgICAgICAgICBkX0xQQy8yLTEKKyAgICAgICAgICAgICAtMSAgICAgX19fICAgICAgICAg
ICAgICAgICAgICAgICAgLTEgICAgLTIKK1AoeikgPSAoMSArIHogICkgKiAgfCB8ICAoMSAtIDIq
Y29zKHBpKm5bMiprXSkqeiAgKyB6ICApCisgICAgICAgICAgICAgICAgICAgIGs9MAorCisgICAg
ICAgICAgICAgICAgIGRfTFBDLzItMQorICAgICAgICAgICAgIC0xICAgICBfX18gICAgICAgICAg
ICAgICAgICAgICAgICAgIC0xICAgIC0yCitRKHopID0gKDEgLSB6ICApICogIHwgfCAgKDEgLSAy
KmNvcyhwaSpuWzIqaysxXSkqeiAgKyB6ICApCisgICAgICAgICAgICAgICAgICAgIGs9MAorXV0+
PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8dD4KK0hvd2V2ZXIsIFNJTEsgcGVyZm9ybXMg
dGhpcyByZWNvbnN0cnVjdGlvbiB1c2luZyBhIGZpeGVkLXBvaW50IGFwcHJveGltYXRpb24gc28K
KyB0aGF0IGFsbCBkZWNvZGVycyBjYW4gcmVwcm9kdWNlIGl0IGluIGEgYml0LWV4YWN0IG1hbm5l
ciB0byBhdm9pZCBwcmVkaWN0aW9uCisgZHJpZnQuCitUaGUgZnVuY3Rpb24gc2lsa19OTFNGMkEo
KSAoTkxTRjJBLmMpIGltcGxlbWVudHMgdGhpcyBwcm9jZWR1cmUuCis8L3Q+Cis8dD4KK1RvIHN0
YXJ0LCBpdCBhcHByb3hpbWF0ZXMgY29zKHBpKm5ba10pIHVzaW5nIGEgdGFibGUgbG9va3VwIHdp
dGggbGluZWFyCisgaW50ZXJwb2xhdGlvbi4KK1RoZSBlbmNvZGVyIFNIT1VMRCB1c2UgdGhlIGlu
dmVyc2Ugb2YgdGhpcyBwaWVjZXdpc2UgbGluZWFyIGFwcHJveGltYXRpb24sCisgcmF0aGVyIHRo
YW4gdGhlIHRydWUgaW52ZXJzZSBvZiB0aGUgY29zaW5lIGZ1bmN0aW9uLCB3aGVuIGRlcml2aW5n
IHRoZQorIG5vcm1hbGl6ZWQgTFNGIGNvZWZmaWNpZW50cy4KK1RoZXNlIHZhbHVlcyBhcmUgYWxz
byByZS1vcmRlcmVkIHRvIGltcHJvdmUgbnVtZXJpY2FsIGFjY3VyYWN5IHdoZW4KKyBjb25zdHJ1
Y3RpbmcgdGhlIExQQyBwb2x5bm9taWFscy4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNp
bGtfbmxzZl9vcmRlcmluZ3MiCisgICAgICAgICAgIHRpdGxlPSJMU0YgT3JkZXJpbmcgZm9yIFBv
bHlub21pYWwgRXZhbHVhdGlvbiI+Cis8dHRjb2w+Q29lZmZpY2llbnQ8L3R0Y29sPgorPHR0Y29s
IGFsaWduPSJyaWdodCI+TkIgYW5kIE1CPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPldC
PC90dGNvbD4KKyA8Yz4wPC9jPiAgPGM+MDwvYz4gIDxjPjA8L2M+CisgPGM+MTwvYz4gIDxjPjk8
L2M+IDxjPjE1PC9jPgorIDxjPjI8L2M+ICA8Yz42PC9jPiAgPGM+ODwvYz4KKyA8Yz4zPC9jPiAg
PGM+MzwvYz4gIDxjPjc8L2M+CisgPGM+NDwvYz4gIDxjPjQ8L2M+ICA8Yz40PC9jPgorIDxjPjU8
L2M+ICA8Yz41PC9jPiA8Yz4xMTwvYz4KKyA8Yz42PC9jPiAgPGM+ODwvYz4gPGM+MTI8L2M+Cisg
PGM+NzwvYz4gIDxjPjE8L2M+ICA8Yz4zPC9jPgorIDxjPjg8L2M+ICA8Yz4yPC9jPiAgPGM+Mjwv
Yz4KKyA8Yz45PC9jPiAgPGM+NzwvYz4gPGM+MTM8L2M+Cis8Yz4xMDwvYz4gICAgICA8Yy8+IDxj
PjEwPC9jPgorPGM+MTE8L2M+ICAgICAgPGMvPiAgPGM+NTwvYz4KKzxjPjEyPC9jPiAgICAgIDxj
Lz4gIDxjPjY8L2M+Cis8Yz4xMzwvYz4gICAgICA8Yy8+ICA8Yz45PC9jPgorPGM+MTQ8L2M+ICAg
ICAgPGMvPiA8Yz4xNDwvYz4KKzxjPjE1PC9jPiAgICAgIDxjLz4gIDxjPjE8L2M+Cis8L3RleHR0
YWJsZT4KKworPHQ+CitUaGUgdG9wIDcgYml0cyBvZiBlYWNoIG5vcm1hbGl6ZWQgTFNGIGNvZWZm
aWNpZW50IGluZGV4IGEgdmFsdWUgaW4gdGhlIHRhYmxlLAorIGFuZCB0aGUgbmV4dCA4IGJpdHMg
aW50ZXJwb2xhdGUgYmV0d2VlbiBpdCBhbmQgdGhlIG5leHQgdmFsdWUuCitMZXQgaSZuYnNwOz0m
bmJzcDsobltrXSZuYnNwOyZndDsmZ3Q7Jm5ic3A7OCkgYmUgdGhlIGludGVnZXIgaW5kZXggYW5k
CisgZiZuYnNwOz0mbmJzcDsobltrXSZuYnNwOyZhbXA7Jm5ic3A7MjU1KSBiZSB0aGUgZnJhY3Rp
b25hbCBwYXJ0IG9mIGEgZ2l2ZW4KKyBjb2VmZmljaWVudC4KK1RoZW4gdGhlIHJlLW9yZGVyZWQs
IGFwcHJveGltYXRlZCBjb3NpbmUsIGNfUTE3W29yZGVyaW5nW2tdXSwgaXMKKzxmaWd1cmUgYWxp
Z249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2NfUTE3W29y
ZGVyaW5nW2tdXSA9IChjb3NfUTEyW2ldKjI1NgorICAgICAgICAgICAgICAgICAgICAgICsgKGNv
c19RMTJbaSsxXS1jb3NfUTEyW2ldKSpmICsgNCkgPj4gMyAsCitdXT48L2FydHdvcms+Cis8L2Zp
Z3VyZT4KKyB3aGVyZSBvcmRlcmluZ1trXSBpcyB0aGUgayd0aCBlbnRyeSBvZiB0aGUgY29sdW1u
IG9mCisgPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2Zfb3JkZXJpbmdzIi8+IGNvcnJlc3BvbmRpbmcg
dG8gdGhlIGN1cnJlbnQgYXVkaW8KKyBiYW5kd2lkdGggYW5kIGNvc19RMTJbaV0gaXMgdGhlIGkn
dGggZW50cnkgb2YgPHhyZWYgdGFyZ2V0PSJzaWxrX2Nvc190YWJsZSIvPi4KKzwvdD4KKworPHRl
eHR0YWJsZSBhbmNob3I9InNpbGtfY29zX3RhYmxlIgorICAgICAgICAgICB0aXRsZT0iUTEyIENv
c2luZSBUYWJsZSBmb3IgTFNGIENvbnZlcnNpb24iPgorPHR0Y29sIGFsaWduPSJyaWdodCI+aTwv
dHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4rMDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJp
Z2h0Ij4rMTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4rMjwvdHRjb2w+Cis8dHRjb2wg
YWxpZ249InJpZ2h0Ij4rMzwvdHRjb2w+Cis8Yz4wPC9jPgorIDxjPjQwOTY8L2M+IDxjPjQwOTU8
L2M+IDxjPjQwOTE8L2M+IDxjPjQwODU8L2M+Cis8Yz40PC9jPgorIDxjPjQwNzY8L2M+IDxjPjQw
NjU8L2M+IDxjPjQwNTI8L2M+IDxjPjQwMzY8L2M+Cis8Yz44PC9jPgorIDxjPjQwMTc8L2M+IDxj
PjM5OTc8L2M+IDxjPjM5NzM8L2M+IDxjPjM5NDg8L2M+Cis8Yz4xMjwvYz4KKyA8Yz4zOTIwPC9j
PiA8Yz4zODg5PC9jPiA8Yz4zODU3PC9jPiA8Yz4zODIyPC9jPgorPGM+MTY8L2M+CisgPGM+Mzc4
NDwvYz4gPGM+Mzc0NTwvYz4gPGM+MzcwMzwvYz4gPGM+MzY1OTwvYz4KKzxjPjIwPC9jPgorIDxj
PjM2MTM8L2M+IDxjPjM1NjQ8L2M+IDxjPjM1MTM8L2M+IDxjPjM0NjE8L2M+Cis8Yz4yNDwvYz4K
KyA8Yz4zNDA2PC9jPiA8Yz4zMzQ5PC9jPiA8Yz4zMjkwPC9jPiA8Yz4zMjI5PC9jPgorPGM+Mjg8
L2M+CisgPGM+MzE2NjwvYz4gPGM+MzEwMjwvYz4gPGM+MzAzNTwvYz4gPGM+Mjk2NzwvYz4KKzxj
PjMyPC9jPgorIDxjPjI4OTY8L2M+IDxjPjI4MjQ8L2M+IDxjPjI3NTE8L2M+IDxjPjI2NzY8L2M+
Cis8Yz4zNjwvYz4KKyA8Yz4yNTk5PC9jPiA8Yz4yNTIwPC9jPiA8Yz4yNDQwPC9jPiA8Yz4yMzU5
PC9jPgorPGM+NDA8L2M+CisgPGM+MjI3NjwvYz4gPGM+MjE5MTwvYz4gPGM+MjEwNjwvYz4gPGM+
MjAxOTwvYz4KKzxjPjQ0PC9jPgorIDxjPjE5MzE8L2M+IDxjPjE4NDI8L2M+IDxjPjE3NTE8L2M+
IDxjPjE2NjA8L2M+Cis8Yz40ODwvYz4KKyA8Yz4xNTY4PC9jPiA8Yz4xNDc0PC9jPiA8Yz4xMzgw
PC9jPiA8Yz4xMjg1PC9jPgorPGM+NTI8L2M+CisgPGM+MTE4OTwvYz4gPGM+MTA5MzwvYz4gIDxj
Pjk5NTwvYz4gIDxjPjg5NzwvYz4KKzxjPjU2PC9jPgorICA8Yz43OTk8L2M+ICA8Yz43MDA8L2M+
ICA8Yz42MDE8L2M+ICA8Yz41MDE8L2M+Cis8Yz42MDwvYz4KKyAgPGM+NDAxPC9jPiAgPGM+MzAx
PC9jPiAgPGM+MjAxPC9jPiAgPGM+MTAxPC9jPgorPGM+NjQ8L2M+CisgICAgPGM+MDwvYz4gPGM+
LTEwMTwvYz4gPGM+LTIwMTwvYz4gPGM+LTMwMTwvYz4KKzxjPjY4PC9jPgorIDxjPi00MDE8L2M+
IDxjPi01MDE8L2M+IDxjPi02MDE8L2M+IDxjPi03MDA8L2M+Cis8Yz43MjwvYz4KKyA8Yz4tNzk5
PC9jPiA8Yz4tODk3PC9jPiA8Yz4tOTk1PC9jPiA8Yz4tMTA5MzwvYz4KKzxjPjc2PC9jPgorPGM+
LTExODk8L2M+PGM+LTEyODU8L2M+PGM+LTEzODA8L2M+PGM+LTE0NzQ8L2M+Cis8Yz44MDwvYz4K
KzxjPi0xNTY4PC9jPjxjPi0xNjYwPC9jPjxjPi0xNzUxPC9jPjxjPi0xODQyPC9jPgorPGM+ODQ8
L2M+Cis8Yz4tMTkzMTwvYz48Yz4tMjAxOTwvYz48Yz4tMjEwNjwvYz48Yz4tMjE5MTwvYz4KKzxj
Pjg4PC9jPgorPGM+LTIyNzY8L2M+PGM+LTIzNTk8L2M+PGM+LTI0NDA8L2M+PGM+LTI1MjA8L2M+
Cis8Yz45MjwvYz4KKzxjPi0yNTk5PC9jPjxjPi0yNjc2PC9jPjxjPi0yNzUxPC9jPjxjPi0yODI0
PC9jPgorPGM+OTY8L2M+Cis8Yz4tMjg5NjwvYz48Yz4tMjk2NzwvYz48Yz4tMzAzNTwvYz48Yz4t
MzEwMjwvYz4KKzxjPjEwMDwvYz4KKzxjPi0zMTY2PC9jPjxjPi0zMjI5PC9jPjxjPi0zMjkwPC9j
PjxjPi0zMzQ5PC9jPgorPGM+MTA0PC9jPgorPGM+LTM0MDY8L2M+PGM+LTM0NjE8L2M+PGM+LTM1
MTM8L2M+PGM+LTM1NjQ8L2M+Cis8Yz4xMDg8L2M+Cis8Yz4tMzYxMzwvYz48Yz4tMzY1OTwvYz48
Yz4tMzcwMzwvYz48Yz4tMzc0NTwvYz4KKzxjPjExMjwvYz4KKzxjPi0zNzg0PC9jPjxjPi0zODIy
PC9jPjxjPi0zODU3PC9jPjxjPi0zODg5PC9jPgorPGM+MTE2PC9jPgorPGM+LTM5MjA8L2M+PGM+
LTM5NDg8L2M+PGM+LTM5NzM8L2M+PGM+LTM5OTc8L2M+Cis8Yz4xMjA8L2M+Cis8Yz4tNDAxNzwv
Yz48Yz4tNDAzNjwvYz48Yz4tNDA1MjwvYz48Yz4tNDA2NTwvYz4KKzxjPjEyNDwvYz4KKzxjPi00
MDc2PC9jPjxjPi00MDg1PC9jPjxjPi00MDkxPC9jPjxjPi00MDk1PC9jPgorPGM+MTI4PC9jPgor
PGM+LTQwOTY8L2M+ICAgICAgICA8Yy8+ICAgICAgICA8Yy8+ICAgICAgICA8Yy8+Cis8L3RleHR0
YWJsZT4KKworPHQ+CitHaXZlbiB0aGUgbGlzdCBvZiBjb3NpbmUgdmFsdWVzLCBzaWxrX05MU0Yy
QV9maW5kX3BvbHkoKSAoTkxTRjJBLmMpCisgY29tcHV0ZXMgdGhlIGNvZWZmaWNpZW50cyBvZiBQ
IGFuZCBRLCBkZXNjcmliZWQgaGVyZSB2aWEgYSBzaW1wbGUgcmVjdXJyZW5jZS4KK0xldCBwX1Ex
NltrXVtqXSBhbmQgcV9RMTZba11bal0gYmUgdGhlIGNvZWZmaWNpZW50cyBvZiB0aGUgcHJvZHVj
dHMgb2YgdGhlCisgZmlyc3QgKGsrMSkgcm9vdCBwYWlycyBmb3IgUCBhbmQgUSwgd2l0aCBqIGlu
ZGV4aW5nIHRoZSBjb2VmZmljaWVudCBudW1iZXIuCitPbmx5IHRoZSBmaXJzdCAoaysyKSBjb2Vm
ZmljaWVudHMgYXJlIG5lZWRlZCwgYXMgdGhlIHByb2R1Y3RzIGFyZSBzeW1tZXRyaWMuCitMZXQg
cF9RMTZbMF1bMF0mbmJzcDs9Jm5ic3A7cV9RMTZbMF1bMF0mbmJzcDs9Jm5ic3A7MSZsdDsmbHQ7
MTYsCisgcF9RMTZbMF1bMV0mbmJzcDs9Jm5ic3A7LWNfUTE3WzBdLCBxX1ExNlswXVsxXSZuYnNw
Oz0mbmJzcDstY19RMTdbMV0sIGFuZAorIGQyJm5ic3A7PSZuYnNwO2RfTFBDLzIuCitBcyBib3Vu
ZGFyeSBjb25kaXRpb25zLCBhc3N1bWUKKyBwX1ExNltrXVtqXSZuYnNwOz0mbmJzcDtxX1ExNltr
XVtqXSZuYnNwOz0mbmJzcDswIGZvciBhbGwKKyBqJm5ic3A7Jmx0OyZuYnNwOzAuCitBbHNvLCBh
c3N1bWUgcF9RMTZba11baysyXSZuYnNwOz0mbmJzcDtwX1ExNltrXVtrXSBhbmQKKyBxX1ExNltr
XVtrKzJdJm5ic3A7PSZuYnNwO3FfUTE2W2tdW2tdIChiZWNhdXNlIG9mIHRoZSBzeW1tZXRyeSku
CitUaGVuLCBmb3IgMCZuYnNwOyZsdDsmbmJzcDtrJm5ic3A7Jmx0OyZuYnNwO2QyIGFuZCAwJm5i
c3A7Jmx0Oz0mbmJzcDtqJm5ic3A7Jmx0Oz0mbmJzcDtrKzEsCis8ZmlndXJlIGFsaWduPSJjZW50
ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitwX1ExNltrXVtqXSA9IHBf
UTE2W2stMV1bal0gKyBwX1ExNltrLTFdW2otMl0KKyAgICAgICAgICAgICAgLSAoKGNfUTE3WzIq
a10qcF9RMTZbay0xXVtqLTFdICsgMzI3NjgpPj4xNikgLAorCitxX1ExNltrXVtqXSA9IHFfUTE2
W2stMV1bal0gKyBxX1ExNltrLTFdW2otMl0KKyAgICAgICAgICAgICAgLSAoKGNfUTE3WzIqaysx
XSpxX1ExNltrLTFdW2otMV0gKyAzMjc2OCk+PjE2KSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KK1RoZSB1c2Ugb2YgUTE3IHZhbHVlcyBmb3IgdGhlIGNvc2luZSB0ZXJtcyBpbiBhbiBvdGhl
cndpc2UgUTE2IGV4cHJlc3Npb24KKyBpbXBsaWNpdGx5IHNjYWxlcyB0aGVtIGJ5IGEgZmFjdG9y
IG9mIDIuCitUaGUgbXVsdGlwbGljYXRpb25zIGluIHRoaXMgcmVjdXJyZW5jZSBtYXkgcmVxdWly
ZSB1cCB0byA0OCBiaXRzIG9mIHByZWNpc2lvbgorIGluIHRoZSByZXN1bHQgdG8gYXZvaWQgb3Zl
cmZsb3cuCitJbiBwcmFjdGljZSwgZWFjaCByb3cgb2YgdGhlIHJlY3VycmVuY2Ugb25seSBkZXBl
bmRzIG9uIHRoZSBwcmV2aW91cyByb3csIHNvIGFuCisgaW1wbGVtZW50YXRpb24gZG9lcyBub3Qg
bmVlZCB0byBzdG9yZSBhbGwgb2YgdGhlbS4KKzwvdD4KKzx0Pgorc2lsa19OTFNGMkEoKSB1c2Vz
IHRoZSB2YWx1ZXMgZnJvbSB0aGUgbGFzdCByb3cgb2YgdGhpcyByZWN1cnJlbmNlIHRvCisgcmVj
b25zdHJ1Y3QgYSAzMi1iaXQgdmVyc2lvbiBvZiB0aGUgTFBDIGZpbHRlciAod2l0aG91dCB0aGUg
bGVhZGluZyAxLjAKKyBjb2VmZmljaWVudCksIGEzMl9RMTdba10sIDAmbmJzcDsmbHQ7PSZuYnNw
O2smbmJzcDsmbHQ7Jm5ic3A7ZDI6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsg
YWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCithMzJfUTE3W2tdICAgICAgICAgPSAtKHFfUTE2W2Qy
LTFdW2srMV0gLSBxX1ExNltkMi0xXVtrXSkKKyAgICAgICAgICAgICAgICAgICAgIC0gKHBfUTE2
W2QyLTFdW2srMV0gKyBwX1ExNltkMi0xXVtrXSkpICwKKworYTMyX1ExN1tkX0xQQy1rLTFdID0g
IChxX1ExNltkMi0xXVtrKzFdIC0gcV9RMTZbZDItMV1ba10pCisgICAgICAgICAgICAgICAgICAg
ICAtIChwX1ExNltkMi0xXVtrKzFdICsgcF9RMTZbZDItMV1ba10pKSAuCitdXT48L2FydHdvcms+
Cis8L2ZpZ3VyZT4KK1RoZSBzdW0gYW5kIGRpZmZlcmVuY2Ugb2YgdHdvIHRlcm1zIGZyb20gZWFj
aCBvZiB0aGUgcF9RMTYgYW5kIHFfUTE2CisgY29lZmZpY2llbnQgbGlzdHMgcmVmbGVjdCB0aGUg
KDEmbmJzcDsrJm5ic3A7eioqLTEpIGFuZAorICgxJm5ic3A7LSZuYnNwO3oqKi0xKSBmYWN0b3Jz
IG9mIFAgYW5kIFEsIHJlc3BlY3RpdmVseS4KK1RoZSBwcm9tb3Rpb24gb2YgdGhlIGV4cHJlc3Np
b24gZnJvbSBRMTYgdG8gUTE3IGltcGxpY2l0bHkgc2NhbGVzIHRoZSByZXN1bHQKKyBieSAxLzIu
Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19scGNfcmFuZ2VfbGlt
aXQiCisgdGl0bGU9IkxpbWl0aW5nIHRoZSBSYW5nZSBvZiB0aGUgTFBDIENvZWZmaWNpZW50cyI+
Cis8dD4KK1RoZSBhMzJfUTE3W10gY29lZmZpY2llbnRzIGFyZSB0b28gbGFyZ2UgdG8gZml0IGlu
IGEgMTYtYml0IHZhbHVlLCB3aGljaAorIHNpZ25pZmljYW50bHkgaW5jcmVhc2VzIHRoZSBjb3N0
IG9mIGFwcGx5aW5nIHRoaXMgZmlsdGVyIGluIGZpeGVkLXBvaW50CisgZGVjb2RlcnMuCitSZWR1
Y2luZyB0aGVtIHRvIFExMiBwcmVjaXNpb24gZG9lc24ndCBpbmN1ciBhbnkgc2lnbmlmaWNhbnQg
cXVhbGl0eSBsb3NzLAorIGJ1dCBzdGlsbCBkb2VzIG5vdCBndWFyYW50ZWUgdGhleSB3aWxsIGZp
dC4KK3NpbGtfTkxTRjJBKCkgYXBwbGllcyB1cCB0byAxMCByb3VuZHMgb2YgYmFuZHdpZHRoIGV4
cGFuc2lvbiB0byBsaW1pdAorIHRoZSBkeW5hbWljIHJhbmdlIG9mIHRoZXNlIGNvZWZmaWNpZW50
cy4KK0V2ZW4gZmxvYXRpbmctcG9pbnQgZGVjb2RlcnMgU0hPVUxEIHBlcmZvcm0gdGhlc2Ugc3Rl
cHMsIHRvIGF2b2lkIG1pc21hdGNoLgorPC90PgorPHQ+CitGb3IgZWFjaCByb3VuZCwgdGhlIHBy
b2Nlc3MgZmlyc3QgZmluZHMgdGhlIGluZGV4IGsgc3VjaCB0aGF0IGFicyhhMzJfUTE3W2tdKQor
IGlzIGxhcmdlc3QsIGJyZWFraW5nIHRpZXMgYnkgY2hvb3NpbmcgdGhlIGxvd2VzdCB2YWx1ZSBv
ZiBrLgorVGhlbiwgaXQgY29tcHV0ZXMgdGhlIGNvcnJlc3BvbmRpbmcgUTEyIHByZWNpc2lvbiB2
YWx1ZSwgbWF4YWJzX1ExMiwgc3ViamVjdCB0bworIGFuIHVwcGVyIGJvdW5kIHRvIGF2b2lkIG92
ZXJmbG93IGluIHN1YnNlcXVlbnQgY29tcHV0YXRpb25zOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworbWF4YWJzX1ExMiA9IG1pbigo
bWF4YWJzX1ExNyArIDE2KSA+PiA1LCAxNjM4MzgpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorSWYgdGhpcyBpcyBsYXJnZXIgdGhhbiAzMjc2NywgdGhlIHByb2NlZHVyZSBkZXJpdmVzIHRo
ZSBjaGlycCBmYWN0b3IsCisgc2NfUTE2WzBdLCB0byB1c2UgaW4gdGhlIGJhbmR3aWR0aCBleHBh
bnNpb24gYXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij48IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAgKG1heGFic19RMTIgLSAzMjc2NykgPDwg
MTQKK3NjX1ExNlswXSA9IDY1NDcwIC0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLAorICAg
ICAgICAgICAgICAgICAgICAobWF4YWJzX1ExMiAqIChrKzEpKSA+PiAyCitdXT48L2FydHdvcms+
Cis8L2ZpZ3VyZT4KKyB3aGVyZSB0aGUgZGl2aXNpb24gaGVyZSBpcyBpbnRlZ2VyIGRpdmlzaW9u
LgorVGhpcyBpcyBhbiBhcHByb3hpbWF0aW9uIG9mIHRoZSBjaGlycCBmYWN0b3IgbmVlZGVkIHRv
IHJlZHVjZSB0aGUgdGFyZ2V0CisgY29lZmZpY2llbnQgdG8gMzI3NjcsIHRob3VnaCBpdCBpcyBi
b3RoIGxlc3MgdGhhbiAwLjk5OSBhbmQsIGZvcgorIGsmbmJzcDsmZ3Q7Jm5ic3A7MCB3aGVuIG1h
eGFic19RMTIgaXMgbXVjaCBncmVhdGVyIHRoYW4gMzI3NjcsIHN0aWxsIHNsaWdodGx5CisgdG9v
IGxhcmdlLgorVGhlIHVwcGVyIGJvdW5kIG9uIG1heGFic19RMTIsIDE2MzgzOCwgd2FzIGNob3Nl
biBiZWNhdXNlIGl0IGlzIGVxdWFsIHRvCisgKCgyKiozMSZuYnNwOy0mbmJzcDsxKSZuYnNwOyZn
dDsmZ3Q7Jm5ic3A7MTQpJm5ic3A7KyZuYnNwOzMyNzY3LCBpLmUuLCB0aGUKKyBsYXJnZXN0IHZh
bHVlIG9mIG1heGFic19RMTIgdGhhdCB3b3VsZCBub3Qgb3ZlcmZsb3cgdGhlIG51bWVyYXRvciBp
biB0aGUKKyBlcXVhdGlvbiBhYm92ZSB3aGVuIHN0b3JlZCBpbiBhIHNpZ25lZCAzMi1iaXQgaW50
ZWdlci4KKzwvdD4KKzx0Pgorc2lsa19id2V4cGFuZGVyXzMyKCkgKGJ3ZXhwYW5kZXJfMzIuYykg
cGVyZm9ybXMgdGhlIGJhbmR3aWR0aCBleHBhbnNpb24gKGFnYWluLAorIG9ubHkgd2hlbiBtYXhh
YnNfUTEyIGlzIGdyZWF0ZXIgdGhhbiAzMjc2NykgdXNpbmcgdGhlIGZvbGxvd2luZyByZWN1cnJl
bmNlOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworIGEzMl9RMTdba10gPSAoYTMyX1ExN1trXSpzY19RMTZba10pID4+IDE2CisKK3Nj
X1ExNltrKzFdID0gKHNjX1ExNlswXSpzY19RMTZba10gKyAzMjc2OCkgPj4gMTYKK11dPjwvYXJ0
d29yaz4KKzwvZmlndXJlPgorVGhlIGZpcnN0IG11bHRpcGx5IG1heSByZXF1aXJlIHVwIHRvIDQ4
IGJpdHMgb2YgcHJlY2lzaW9uIGluIHRoZSByZXN1bHQgdG8KKyBhdm9pZCBvdmVyZmxvdy4KK1Ro
ZSBzZWNvbmQgbXVsdGlwbHkgbXVzdCBiZSB1bnNpZ25lZCB0byBhdm9pZCBvdmVyZmxvdyB3aXRo
IG9ubHkgMzIgYml0cyBvZgorIHByZWNpc2lvbi4KK1RoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRp
b24gdXNlcyBhIHNsaWdodGx5IG1vcmUgY29tcGxleCBmb3JtdWxhdGlvbiB0aGF0CisgYXZvaWRz
IHRoZSAzMi1iaXQgb3ZlcmZsb3cgdXNpbmcgc2lnbmVkIG11bHRpcGxpY2F0aW9uLCBidXQgaXMg
b3RoZXJ3aXNlCisgZXF1aXZhbGVudC4KKzwvdD4KKzx0PgorQWZ0ZXIgMTAgcm91bmRzIG9mIGJh
bmR3aWR0aCBleHBhbnNpb24gYXJlIHBlcmZvcm1lZCwgdGhleSBhcmUgc2ltcGx5IHNhdHVyYXRl
ZAorIHRvIDE2IGJpdHM6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249
ImNlbnRlciI+PCFbQ0RBVEFbCithMzJfUTE3W2tdID0gY2xhbXAoLTMyNzY4LCAoYTMyX1ExN1tr
XSArIDE2KSA+PiA1LCAzMjc2NykgPDwgNSAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0Jl
Y2F1c2UgdGhpcyBwZXJmb3JtcyB0aGUgYWN0dWFsIHNhdHVyYXRpb24gaW4gdGhlIFExMiBkb21h
aW4sIGJ1dCBjb252ZXJ0cyB0aGUKKyBjb2VmZmljaWVudHMgYmFjayB0byB0aGUgUTE3IGRvbWFp
biBmb3IgdGhlIHB1cnBvc2VzIG9mIHByZWRpY3Rpb24gZ2FpbgorIGxpbWl0aW5nLCB0aGlzIHN0
ZXAgbXVzdCBiZSBwZXJmb3JtZWQgYWZ0ZXIgdGhlIDEwdGggcm91bmQgb2YgYmFuZHdpZHRoCisg
ZXhwYW5zaW9uLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgb3Igbm90IHRoZSBRMTIgdmVyc2lvbiBv
ZiBhbnkgY29lZmZpY2llbnQKKyBzdGlsbCBvdmVyZmxvd3MgYSAxNi1iaXQgaW50ZWdlci4KK1Ro
aXMgc2F0dXJhdGlvbiBpcyBub3QgcGVyZm9ybWVkIGlmIG1heGFic19RMTIgZHJvcHMgdG8gMzI3
Njcgb3IgbGVzcyBwcmlvciB0bworIHRoZSAxMHRoIHJvdW5kLgorPC90PgorPC9zZWN0aW9uPgor
Cis8c2VjdGlvbiBhbmNob3I9InNpbGtfbHBjX2dhaW5fbGltaXQiCisgdGl0bGU9IkxpbWl0aW5n
IHRoZSBQcmVkaWN0aW9uIEdhaW4gb2YgdGhlIExQQyBGaWx0ZXIiPgorPHQ+CitUaGUgcHJlZGlj
dGlvbiBnYWluIG9mIGFuIExQQyBzeW50aGVzaXMgZmlsdGVyIGlzIHRoZSBzcXVhcmUtcm9vdCBv
ZiB0aGUgb3V0cHV0CisgZW5lcmd5IHdoZW4gdGhlIGZpbHRlciBpcyBleGNpdGVkIGJ5IGEgdW5p
dC1lbmVyZ3kgaW1wdWxzZS4KK0V2ZW4gaWYgdGhlIFExMiBjb2VmZmljaWVudHMgd291bGQgZml0
LCB0aGUgcmVzdWx0aW5nIGZpbHRlciBtYXkgc3RpbGwgaGF2ZSBhCisgc2lnbmlmaWNhbnQgZ2Fp
biAoZXNwZWNpYWxseSBmb3Igdm9pY2VkIHNvdW5kcyksIG1ha2luZyB0aGUgZmlsdGVyIHVuc3Rh
YmxlLgorc2lsa19OTFNGMkEoKSBhcHBsaWVzIHVwIHRvIDE4IGFkZGl0aW9uYWwgcm91bmRzIG9m
IGJhbmR3aWR0aCBleHBhbnNpb24gdG8KKyBsaW1pdCB0aGUgcHJlZGljdGlvbiBnYWluLgorSW5z
dGVhZCBvZiBjb250cm9sbGluZyB0aGUgYW1vdW50IG9mIGJhbmR3aWR0aCBleHBhbnNpb24gdXNp
bmcgdGhlIHByZWRpY3Rpb24KKyBnYWluIGl0c2VsZiAod2hpY2ggbWF5IGRpdmVyZ2UgdG8gaW5m
aW5pdHkgZm9yIGFuIHVuc3RhYmxlIGZpbHRlciksCisgc2lsa19OTFNGMkEoKSB1c2VzIHNpbGtf
TFBDX2ludmVyc2VfcHJlZF9nYWluX1FBKCkgKExQQ19pbnZfcHJlZF9nYWluLmMpIHRvCisgY29t
cHV0ZSB0aGUgcmVmbGVjdGlvbiBjb2VmZmljaWVudHMgYXNzb2NpYXRlZCB3aXRoIHRoZSBmaWx0
ZXIuCitUaGUgZmlsdGVyIGlzIHN0YWJsZSBpZiBhbmQgb25seSBpZiB0aGUgbWFnbml0dWRlIG9m
IHRoZXNlIGNvZWZmaWNpZW50cyBpcworIHN1ZmZpY2llbnRseSBsZXNzIHRoYW4gb25lLgorVGhl
IHJlZmxlY3Rpb24gY29lZmZpY2llbnRzLCByY1trXSwgY2FuIGJlIGNvbXB1dGVkIHVzaW5nIGEg
c2ltcGxlIExldmluc29uCisgcmVjdXJyZW5jZSwgaW5pdGlhbGl6ZWQgd2l0aCB0aGUgTFBDIGNv
ZWZmaWNpZW50cworIGFbZF9MUEMtMV1bbl0mbmJzcDs9Jm5ic3A7YVtuXSwgYW5kIHRoZW4gdXBk
YXRlZCB2aWEKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVy
Ij48IVtDREFUQVsKKyAgICByY1trXSA9IC1hW2tdW2tdICwKKworICAgICAgICAgICAgYVtrXVtu
XSAtIGFba11bay1uLTFdKnJjW2tdCithW2stMV1bbl0gPSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0gLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyCisgICAgICAgICAgICAgICAg
ICAgIDEgLSByY1trXQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+Cis8L3Q+Cis8dD4KK0hvd2V2
ZXIsIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX1FBKCkgYXBwcm94aW1hdGVzIHRoaXMgdXNp
bmcgZml4ZWQtcG9pbnQKKyBhcml0aG1ldGljIHRvIGd1YXJhbnRlZSByZXByb2R1Y2libGUgcmVz
dWx0cyBhY3Jvc3MgcGxhdGZvcm1zIGFuZAorIGltcGxlbWVudGF0aW9ucy4KK1NpbmNlIHNtYWxs
IGNoYW5nZXMgaW4gdGhlIGNvZWZmaWNpZW50cyBjYW4gbWFrZSBhIHN0YWJsZSBmaWx0ZXIgdW5z
dGFibGUsIGl0CisgdGFrZXMgdGhlIHJlYWwgUTEyIGNvZWZmaWNpZW50cyB0aGF0IHdpbGwgYmUg
dXNlZCBkdXJpbmcgcmVjb25zdHJ1Y3Rpb24gYXMKKyBpbnB1dC4KK1RodXMsIGxldAorPGZpZ3Vy
ZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworYTMy
X1ExMltuXSA9IChhMzJfUTE3W25dICsgMTYpID4+IDUKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJl
PgorIGJlIHRoZSBRMTIgdmVyc2lvbiBvZiB0aGUgTFBDIGNvZWZmaWNpZW50cyB0aGF0IHdpbGwg
ZXZlbnR1YWxseSBiZSB1c2VkLgorQXMgYSBzaW1wbGUgaW5pdGlhbCBjaGVjaywgdGhlIGRlY29k
ZXIgY29tcHV0ZXMgdGhlIERDIHJlc3BvbnNlIGFzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgor
PGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgIGRfUExDLTEKKyAgICAg
ICAgICBfXworRENfcmVzcCA9IFwgICBhMzJfUTEyW25dCisgICAgICAgICAgL18KKyAgICAgICAg
ICBuPTAKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorIGFuZCBpZiBEQ19yZXNwJm5ic3A7Jmd0
OyZuYnNwOzQwOTYsIHRoZSBmaWx0ZXIgaXMgdW5zdGFibGUuCis8L3Q+Cis8dD4KK0luY3JlYXNp
bmcgdGhlIHByZWNpc2lvbiBvZiB0aGVzZSBRMTIgY29lZmZpY2llbnRzIHRvIFEyNCBmb3IgaW50
ZXJtZWRpYXRlCisgY29tcHV0YXRpb25zIGFsbG93cyBtb3JlIGFjY3VyYXRlIGNvbXB1dGF0aW9u
IG9mIHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50cywKKyBzbyB0aGUgZGVjb2RlciBpbml0aWFs
aXplcyB0aGUgcmVjdXJyZW5jZSB2aWEKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29y
ayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2EzMl9RMjRbZF9MUEMtMV1bbl0gPSBhMzJfUTEy
W25dIDw8IDEyIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhlbiBmb3IgZWFjaCBrIGZy
b20gZF9MUEMtMSBkb3duIHRvIDAsIGlmCisgYWJzKGEzMl9RMjRba11ba10pJm5ic3A7Jmd0OyZu
YnNwOzE2NzczMDIyLCB0aGUgZmlsdGVyIGlzIHVuc3RhYmxlIGFuZCB0aGUKKyByZWN1cnJlbmNl
IHN0b3BzLgorVGhlIGNvbnN0YW50IDE2NzczMDIyIGhlcmUgaXMgYXBwcm94aW1hdGVseSAwLjk5
OTc1IGluIFEyNC4KK090aGVyd2lzZSwgcm93IGstMSBvZiBhMzJfUTI0IGlzIGNvbXB1dGVkIGZy
b20gcm93IGsgYXMKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2Vu
dGVyIj48IVtDREFUQVsKKyAgICAgIHJjX1EzMVtrXSA9IC1hMzJfUTI0W2tdW2tdIDw8IDcgLAor
CisgICAgIGRpdl9RMzBba10gPSAoMTw8MzApIC0gKHJjX1EzMVtrXSpyY19RMzFba10gPj4gMzIp
ICwKKworICAgICAgICAgIGIxW2tdID0gaWxvZyhkaXZfUTMwW2tdKSAsCisKKyAgICAgICAgICBi
MltrXSA9IGIxW2tdIC0gMTYgLAorCisgICAgICAgICAgICAgICAgICAgICAgICAoMTw8MjkpIC0g
MQorICAgICBpbnZfUWIyW2tdID0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLAorICAgICAgICAg
ICAgICAgICAgZGl2X1EzMFtrXSA+PiAoYjJba10rMSkKKworICAgICBlcnJfUTI5W2tdID0gKDE8
PDI5KQorICAgICAgICAgICAgICAgICAgLSAoKGRpdl9RMzBba108PCgxNS1iMltrXSkpKmludl9R
YjJba10gPj4gMTYpICwKKworICAgIGdhaW5fUWIxW2tdID0gKChpbnZfUWIyW2tdIDw8IDE2KQor
ICAgICAgICAgICAgICAgICAgICsgKGVycl9RMjlba10qaW52X1FiMltrXSA+PiAxMykpICwKKwor
bnVtX1EyNFtrLTFdW25dID0gYTMyX1EyNFtrXVtuXQorICAgICAgICAgICAgICAgICAgLSAoKGEz
Ml9RMjRba11bay1uLTFdKnJjX1EzMVtrXSArICgxPDwzMCkpID4+IDMxKSAsCisKK2EzMl9RMjRb
ay0xXVtuXSA9IChudW1fUTI0W2stMV1bbl0qZ2Fpbl9RYjFba10KKyAgICAgICAgICAgICAgICAg
ICArICgxPDwoYjFba10tMSkpKSA+PiBiMVtrXSAsCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4K
KyB3aGVyZSAwJm5ic3A7Jmx0Oz0mbmJzcDtuJm5ic3A7Jmx0OyZuYnNwO2suCitIZXJlLCByY19R
MzBba10gYXJlIHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50cy4KK2Rpdl9RMzBba10gaXMgdGhl
IGRlbm9taW5hdG9yIGZvciBlYWNoIGl0ZXJhdGlvbiwgYW5kIGdhaW5fUWIxW2tdIGlzIGl0cwor
IG11bHRpcGxpY2F0aXZlIGludmVyc2UgKHdpdGggYjFba10gZnJhY3Rpb25hbCBiaXRzLCB3aGVy
ZSBiMVtrXSByYW5nZXMgZnJvbQorIDIwIHRvIDMxKS4KK2ludl9RYjJba10sIHdoaWNoIHJhbmdl
cyBmcm9tIDE2Mzg0IHRvIDMyNzY3LCBpcyBhIGxvdy1wcmVjaXNpb24gdmVyc2lvbiBvZgorIHRo
YXQgaW52ZXJzZSAod2l0aCBiMltrXSBmcmFjdGlvbmFsIGJpdHMpLgorZXJyX1EyOVtrXSBpcyB0
aGUgcmVzaWR1YWwgZXJyb3IsIHJhbmdpbmcgZnJvbSAtMzI3NjMgdG8gMzIzOTIsIHdoaWNoIGlz
IHVzZWQKKyB0byBpbXByb3ZlIHRoZSBhY2N1cmFjeS4KK1RoZSB2YWx1ZXMgdF9RMjRbay0xXVtu
XSBmb3IgZWFjaCBuIGFyZSB0aGUgbnVtZXJhdG9ycyBmb3IgdGhlIG5leHQgcm93IG9mCisgY29l
ZmZpY2llbnRzIGluIHRoZSByZWN1cnNpb24sIGFuZCBhMzJfUTI0W2stMV1bbl0gaXMgdGhlIGZp
bmFsIHZlcnNpb24gb2YKKyB0aGF0IHJvdy4KK0V2ZXJ5IG11bHRpcGx5IGluIHRoaXMgcHJvY2Vk
dXJlIGV4Y2VwdCB0aGUgb25lIHVzZWQgdG8gY29tcHV0ZSBnYWluX1FiMVtrXQorIHJlcXVpcmVz
IG1vcmUgdGhhbiAzMiBiaXRzIG9mIHByZWNpc2lvbiwgYnV0IG90aGVyd2lzZSBhbGwgaW50ZXJt
ZWRpYXRlCisgcmVzdWx0cyBmaXQgaW4gMzIgYml0cyBvciBsZXNzLgorSW4gcHJhY3RpY2UsIGJl
Y2F1c2UgZWFjaCByb3cgb25seSBkZXBlbmRzIG9uIHRoZSBuZXh0IG9uZSwgYW4gaW1wbGVtZW50
YXRpb24KKyBkb2VzIG5vdCBuZWVkIHRvIHN0b3JlIHRoZW0gYWxsLgorPC90PgorPHQ+CitJZiBh
YnMoYTMyX1EyNFtrXVtrXSkmbmJzcDsmbHQ7PSZuYnNwOzE2NzczMDIyIGZvcgorIDAmbmJzcDsm
bHQ7PSZuYnNwO2smbmJzcDsmbHQ7Jm5ic3A7ZF9MUEMsIHRoZW4gdGhlIGZpbHRlciBpcyBjb25z
aWRlcmVkIHN0YWJsZS4KK0hvd2V2ZXIsIHRoZSBwcm9ibGVtIG9mIGRldGVybWluaW5nIHN0YWJp
bGl0eSBpcyBpbGwtY29uZGl0aW9uZWQgd2hlbiB0aGUKKyBmaWx0ZXIgY29udGFpbnMgc2V2ZXJh
bCByZWZsZWN0aW9uIGNvZWZmaWNpZW50cyB3aG9zZSBtYWduaXR1ZGUgaXMgdmVyeSBjbG9zZQor
IHRvIG9uZS4KK1RoaXMgZml4ZWQtcG9pbnQgYWxnb3JpdGhtIGlzIG5vdCBtYXRoZW1hdGljYWxs
eSBndWFyYW50ZWVkIHRvIGNvcnJlY3RseQorIGNsYXNzaWZ5IGZpbHRlcnMgYXMgc3RhYmxlIG9y
IHVuc3RhYmxlIGluIHRoaXMgY2FzZSwgdGhvdWdoIGl0IGRvZXMgdmVyeSB3ZWxsCisgaW4gcHJh
Y3RpY2UuCis8L3Q+Cis8dD4KK09uIHJvdW5kIGksIDEmbmJzcDsmbHQ7PSZuYnNwO2kmbmJzcDsm
bHQ7PSZuYnNwOzE4LCBpZiB0aGUgZmlsdGVyIHBhc3NlcyB0aGVzZQorIHN0YWJpbGl0eSBjaGVj
a3MsIHRoZW4gdGhpcyBwcm9jZWR1cmUgc3RvcHMsIGFuZCB0aGUgZmluYWwgTFBDIGNvZWZmaWNp
ZW50cyB0bworIHVzZSBmb3IgcmVjb25zdHJ1Y3Rpb24gaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX2xw
Y19zeW50aGVzaXMiLz4gYXJlCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxp
Z249ImNlbnRlciI+PCFbQ0RBVEFbCithX1ExMltrXSA9IChhMzJfUTE3W2tdICsgMTYpID4+IDUg
LgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitPdGhlcndpc2UsIGEgcm91bmQgb2YgYmFuZHdp
ZHRoIGV4cGFuc2lvbiBpcyBhcHBsaWVkIHVzaW5nIHRoZSBzYW1lIHByb2NlZHVyZQorIGFzIGlu
IDx4cmVmIHRhcmdldD0ic2lsa19scGNfcmFuZ2VfbGltaXQiLz4sIHdpdGgKKzxmaWd1cmUgYWxp
Z249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK3NjX1ExNlsw
XSA9IDY1NTM2IC0gKDI8PGkpIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorRHVyaW5nIHRo
ZSAxNXRoIHJvdW5kLCBzY19RMTZbMF0gYmVjb21lcyAwIGluIHRoZSBhYm92ZSBlcXVhdGlvbiwg
c28gYV9RMTJba10KKyBpcyBzZXQgdG8gMCBmb3IgYWxsIGssIGd1YXJhbnRlZWluZyBhIHN0YWJs
ZSBmaWx0ZXIuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5j
aG9yPSJzaWxrX2x0cF9wYXJhbXMiIHRvYz0iaW5jbHVkZSIKKyB0aXRsZT0iTG9uZy1UZXJtIFBy
ZWRpY3Rpb24gKExUUCkgUGFyYW1ldGVycyI+Cis8dD4KK0FmdGVyIHRoZSBub3JtYWxpemVkIExT
RiBpbmRpY2VzIGFuZCwgZm9yIDIwJm5ic3A7bXMgZnJhbWVzLCB0aGUgTFNGCisgaW50ZXJwb2xh
dGlvbiBpbmRleCwgdm9pY2VkIGZyYW1lcyAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV90
eXBlIi8+KQorIGluY2x1ZGUgYWRkaXRpb25hbCBMVFAgcGFyYW1ldGVycy4KK1RoZXJlIGlzIG9u
ZSBwcmltYXJ5IGxhZyBpbmRleCBmb3IgZWFjaCBTSUxLIGZyYW1lLCBidXQgdGhpcyBpcyByZWZp
bmVkIHRvCisgcHJvZHVjZSBhIHNlcGFyYXRlIGxhZyBpbmRleCBwZXIgc3ViZnJhbWUgdXNpbmcg
YSB2ZWN0b3IgcXVhbnRpemVyLgorRWFjaCBzdWJmcmFtZSBhbHNvIGdldHMgaXRzIG93biBwcmVk
aWN0aW9uIGdhaW4gY29lZmZpY2llbnQuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19s
dHBfbGFncyIgdGl0bGU9IlBpdGNoIExhZ3MiPgorPHQ+CitUaGUgcHJpbWFyeSBsYWcgaW5kZXgg
aXMgY29kZWQgZWl0aGVyIHJlbGF0aXZlIHRvIHRoZSBwcmltYXJ5IGxhZyBvZiB0aGUgcHJpb3IK
KyBmcmFtZSBpbiB0aGUgc2FtZSBjaGFubmVsLCBvciBhcyBhbiBhYnNvbHV0ZSBpbmRleC4KK0Fi
c29sdXRlIGNvZGluZyBpcyB1c2VkIGlmIGFuZCBvbmx5IGlmCis8bGlzdCBzdHlsZT0ic3ltYm9s
cyI+Cis8dD4KK1RoaXMgaXMgdGhlIGZpcnN0IFNJTEsgZnJhbWUgb2YgaXRzIHR5cGUgKExCUlIg
b3IgcmVndWxhcikgZm9yIHRoaXMgY2hhbm5lbCBpbgorIHRoZSBjdXJyZW50IE9wdXMgZnJhbWUs
Cis8L3Q+Cis8dD4KK1RoZSBwcmV2aW91cyBTSUxLIGZyYW1lIG9mIHRoZSBzYW1lIHR5cGUgKExC
UlIgb3IgcmVndWxhcikgZm9yIHRoaXMgY2hhbm5lbCBpbgorIHRoZSBzYW1lIE9wdXMgZnJhbWUg
d2FzIG5vdCBjb2RlZCwgb3IKKzwvdD4KKzx0PgorVGhhdCBwcmV2aW91cyBTSUxLIGZyYW1lIHdh
cyBjb2RlZCwgYnV0IHdhcyBub3Qgdm9pY2VkIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNpbGtfZnJh
bWVfdHlwZSIvPikuCis8L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzx0PgorV2l0aCBhYnNvbHV0ZSBj
b2RpbmcsIHRoZSBwcmltYXJ5IHBpdGNoIGxhZyBtYXkgcmFuZ2UgZnJvbSAyJm5ic3A7bXMKKyAo
aW5jbHVzaXZlKSB1cCB0byAxOCZuYnNwO21zIChleGNsdXNpdmUpLCBjb3JyZXNwb25kaW5nIHRv
IHBpdGNoZXMgZnJvbQorIDUwMCZuYnNwO0h6IGRvd24gdG8gNTUuNiZuYnNwO0h6LCByZXNwZWN0
aXZlbHkuCitJdCBpcyBjb21wcmlzZWQgb2YgYSBoaWdoIHBhcnQgYW5kIGEgbG93IHBhcnQsIHdo
ZXJlIHRoZSBkZWNvZGVyIHJlYWRzIHRoZSBoaWdoCisgcGFydCB1c2luZyB0aGUgMzItZW50cnkg
Y29kZWJvb2sgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX2Fic19waXRjaF9oaWdoX3BkZiIvPgorIGFu
ZCB0aGUgbG93IHBhcnQgdXNpbmcgdGhlIGNvZGVib29rIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGN1
cnJlbnQgYXVkaW8KKyBiYW5kd2lkdGggZnJvbSA8eHJlZiB0YXJnZXQ9InNpbGtfYWJzX3BpdGNo
X2xvd19wZGYiLz4uCitUaGUgZmluYWwgcHJpbWFyeSBwaXRjaCBsYWcgaXMgdGhlbgorPGZpZ3Vy
ZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworbGFn
ID0gbGFnX2hpZ2gqbGFnX3NjYWxlICsgbGFnX2xvdyArIGxhZ19taW4KK11dPjwvYXJ0d29yaz4K
KzwvZmlndXJlPgorIHdoZXJlIGxhZ19oaWdoIGlzIHRoZSBoaWdoIHBhcnQsIGxhZ19sb3cgaXMg
dGhlIGxvdyBwYXJ0LCBhbmQgbGFnX3NjYWxlCisgYW5kIGxhZ19taW4gYXJlIHRoZSB2YWx1ZXMg
ZnJvbSB0aGUgIlNjYWxlIiBhbmQgIk1pbmltdW0gTGFnIiBjb2x1bW5zIG9mCisgPHhyZWYgdGFy
Z2V0PSJzaWxrX2Fic19waXRjaF9sb3dfcGRmIi8+LCByZXNwZWN0aXZlbHkuCis8L3Q+CisKKzx0
ZXh0dGFibGUgYW5jaG9yPSJzaWxrX2Fic19waXRjaF9oaWdoX3BkZiIKKyB0aXRsZT0iUERGIGZv
ciBIaWdoIFBhcnQgb2YgUHJpbWFyeSBQaXRjaCBMYWciPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5Q
REY8L3R0Y29sPgorPGM+ezMsICAgMywgICA2LCAgMTEsICAyMSwgIDMwLCAgMzIsICAxOSwKKyAg
IDExLCAgMTAsICAxMiwgIDEzLCAgMTMsICAxMiwgIDExLCAgIDksCisgICAgOCwgICA3LCAgIDYs
ICAgNCwgICAyLCAgIDIsICAgMiwgICAxLAorICAgIDEsICAgMSwgICAxLCAgIDEsICAgMSwgICAx
LCAgIDEsICAgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJz
aWxrX2Fic19waXRjaF9sb3dfcGRmIgorIHRpdGxlPSJQREYgZm9yIExvdyBQYXJ0IG9mIFByaW1h
cnkgUGl0Y2ggTGFnIj4KKzx0dGNvbD5BdWRpbyBCYW5kd2lkdGg8L3R0Y29sPgorPHR0Y29sPlBE
RjwvdHRjb2w+Cis8dHRjb2w+U2NhbGU8L3R0Y29sPgorPHR0Y29sPk1pbmltdW0gTGFnPC90dGNv
bD4KKzx0dGNvbD5NYXhpbXVtIExhZzwvdHRjb2w+Cis8Yz5OQjwvYz4gPGM+ezY0LCA2NCwgNjQs
IDY0fS8yNTY8L2M+ICAgICAgICAgICAgICAgICA8Yz40PC9jPiA8Yz4xNjwvYz4gPGM+MTQ0PC9j
PgorPGM+TUI8L2M+IDxjPns0MywgNDIsIDQzLCA0MywgNDIsIDQzfS8yNTY8L2M+ICAgICAgICAg
PGM+NjwvYz4gPGM+MjQ8L2M+IDxjPjIxNjwvYz4KKzxjPldCPC9jPiA8Yz57MzIsIDMyLCAzMiwg
MzIsIDMyLCAzMiwgMzIsIDMyfS8yNTY8L2M+IDxjPjg8L2M+IDxjPjMyPC9jPiA8Yz4yODg8L2M+
Cis8L3RleHR0YWJsZT4KKworPHQ+CitBbGwgZnJhbWVzIHRoYXQgZG8gbm90IHVzZSBhYnNvbHV0
ZSBjb2RpbmcgZm9yIHRoZSBwcmltYXJ5IGxhZyBpbmRleCB1c2UKKyByZWxhdGl2ZSBjb2Rpbmcg
aW5zdGVhZC4KK1RoZSBkZWNvZGVyIHJlYWRzIGEgc2luZ2xlIGRlbHRhIHZhbHVlIHVzaW5nIHRo
ZSAyMS1lbnRyeSBQREYgaW4KKyA8eHJlZiB0YXJnZXQ9InNpbGtfcmVsX3BpdGNoX3BkZiIvPi4K
K0lmIHRoZSByZXN1bHRpbmcgdmFsdWUgaXMgemVybywgaXQgZmFsbHMgYmFjayB0byB0aGUgYWJz
b2x1dGUgY29kaW5nIHByb2NlZHVyZQorIGZyb20gdGhlIHByaW9yIHBhcmFncmFwaC4KK090aGVy
d2lzZSwgdGhlIGZpbmFsIHByaW1hcnkgcGl0Y2ggbGFnIGlzIHRoZW4KKzxmaWd1cmUgYWxpZ249
ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2xhZyA9IHByZXZp
b3VzX2xhZyArIChkZWx0YV9sYWdfaW5kZXggLSA5KQorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+
Cisgd2hlcmUgcHJldmlvdXNfbGFnIGlzIHRoZSBwcmltYXJ5IHBpdGNoIGxhZyBmcm9tIHRoZSBt
b3N0IHJlY2VudCBmcmFtZSBpbiB0aGUKKyBzYW1lIGNoYW5uZWwgYW5kIGRlbHRhX2xhZ19pbmRl
eCBpcyB0aGUgdmFsdWUganVzdCBkZWNvZGVkLgorVGhpcyBhbGxvd3MgYSBwZXItZnJhbWUgY2hh
bmdlIGluIHRoZSBwaXRjaCBsYWcgb2YgLTggdG8gKzExIHNhbXBsZXMuCitUaGUgZGVjb2RlciBk
b2VzIG5vIGNsYW1waW5nIGF0IHRoaXMgcG9pbnQsIHNvIHRoaXMgdmFsdWUgY2FuIGZhbGwgb3V0
c2lkZSB0aGUKKyByYW5nZSBvZiAyJm5ic3A7bXMgdG8gMTgmbmJzcDttcywgYW5kIHRoZSBkZWNv
ZGVyIG11c3QgdXNlIHRoaXMgdW5jbGFtcGVkCisgdmFsdWUgd2hlbiB1c2luZyByZWxhdGl2ZSBj
b2RpbmcgaW4gdGhlIG5leHQgU0lMSyBmcmFtZSAoaWYgYW55KS4KK0hvd2V2ZXIsIGJlY2F1c2Ug
YW4gT3B1cyBmcmFtZSBjYW4gdXNlIHJlbGF0aXZlIGNvZGluZyBmb3IgYXQgbW9zdCB0d28KKyBj
b25zZWN1dGl2ZSBTSUxLIGZyYW1lcywgaW50ZWdlciBvdmVyZmxvdyBzaG91bGQgbm90IGJlIGFu
IGlzc3VlLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19yZWxfcGl0Y2hfcGRmIgor
IHRpdGxlPSJQREYgZm9yIFByaW1hcnkgUGl0Y2ggTGFnIENoYW5nZSI+Cis8dHRjb2wgYWxpZ249
ImxlZnQiPlBERjwvdHRjb2w+Cis8Yz57NDYsICAyLCAgMiwgIDMsICA0LCAgNiwgMTAsIDE1LAor
ICAgIDI2LCAzOCwgMzAsIDIyLCAxNSwgMTAsICA3LCAgNiwKKyAgICAgNCwgIDQsICAyLCAgMiwg
IDJ9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK0FmdGVyIHRoZSBwcmltYXJ5IHBpdGNo
IGxhZywgYSAicGl0Y2ggY29udG91ciIsIHN0b3JlZCBhcyBhIHNpbmdsZSBlbnRyeSBmcm9tCisg
b25lIG9mIGZvdXIgc21hbGwgVlEgY29kZWJvb2tzLCBnaXZlcyBsYWcgb2Zmc2V0cyBmb3IgZWFj
aCBzdWJmcmFtZSBpbiB0aGUKKyBjdXJyZW50IFNJTEsgZnJhbWUuCitUaGUgY29kZWJvb2sgaW5k
ZXggaXMgZGVjb2RlZCB1c2luZyBvbmUgb2YgdGhlIFBERnMgaW4KKyA8eHJlZiB0YXJnZXQ9InNp
bGtfcGl0Y2hfY29udG91cl9wZGZzIi8+IGRlcGVuZGluZyBvbiB0aGUgY3VycmVudCBmcmFtZSBz
aXplCisgYW5kIGF1ZGlvIGJhbmR3aWR0aC4KK1RhYmxlcyZuYnNwOzx4cmVmIGZvcm1hdD0iY291
bnRlciIgdGFyZ2V0PSJzaWxrX3BpdGNoX2NvbnRvdXJfY2JfbmIxMG1zIi8+CisgdGhyb3VnaCZu
YnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX3BpdGNoX2NvbnRvdXJfY2Jf
bWJ3YjIwbXMiLz4KKyBnaXZlIHRoZSBjb3JyZXNwb25kaW5nIG9mZnNldHMgdG8gYXBwbHkgdG8g
dGhlIHByaW1hcnkgcGl0Y2ggbGFnIGZvciBlYWNoCisgc3ViZnJhbWUgZ2l2ZW4gdGhlIGRlY29k
ZWQgY29kZWJvb2sgaW5kZXguCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3BpdGNo
X2NvbnRvdXJfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgU3ViZnJhbWUgUGl0Y2ggQ29udG91ciI+
Cis8dHRjb2w+QXVkaW8gQmFuZHdpZHRoPC90dGNvbD4KKzx0dGNvbD5TSUxLIEZyYW1lIFNpemU8
L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+Q29kZWJvb2sgU2l6ZTwvdHRjb2w+Cis8dHRj
b2w+UERGPC90dGNvbD4KKzxjPk5CPC9jPiAgICAgICA8Yz4xMCZuYnNwO21zPC9jPiAgPGM+Mzwv
Yz4KKzxjPnsxNDMsIDUwLCA2M30vMjU2PC9jPgorPGM+TkI8L2M+ICAgICAgIDxjPjIwJm5ic3A7
bXM8L2M+IDxjPjExPC9jPgorPGM+ezY4LCAxMiwgMjEsIDE3LCAxOSwgMjIsIDMwLCAyNCwKKyAg
ICAxNywgMTYsIDEwfS8yNTY8L2M+Cis8Yz5NQiBvciBXQjwvYz4gPGM+MTAmbmJzcDttczwvYz4g
PGM+MTI8L2M+Cis8Yz57OTEsIDQ2LCAzOSwgMTksIDE0LCAxMiwgIDgsICA3LAorICAgICA2LCAg
NSwgIDUsICA0fS8yNTY8L2M+Cis8Yz5NQiBvciBXQjwvYz4gPGM+MjAmbmJzcDttczwvYz4gPGM+
MzQ8L2M+Cis8Yz57MzMsIDIyLCAxOCwgMTYsIDE1LCAxNCwgMTQsIDEzLAorICAgIDEzLCAxMCwg
IDksICA5LCAgOCwgIDYsICA2LCAgNiwKKyAgICAgNSwgIDQsICA0LCAgNCwgIDMsICAzLCAgMywg
IDIsCisgICAgIDIsICAyLCAgMiwgIDIsICAyLCAgMiwgIDEsICAxLAorICAgICAxLCAgMX0vMjU2
PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3BpdGNoX2NvbnRv
dXJfY2JfbmIxMG1zIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0b3JzIGZvciBTdWJmcmFtZSBQaXRj
aCBDb250b3VyOiBOQiwgMTAmbmJzcDttcyBGcmFtZXMiPgorPHR0Y29sPkluZGV4PC90dGNvbD4K
Kzx0dGNvbCBhbGlnbj0icmlnaHQiPlN1YmZyYW1lIE9mZnNldHM8L3R0Y29sPgorPGM+MDwvYz4g
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4K
KzxjPjE8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEmbmJzcDsmbmJzcDswPC9z
cGFueD48L2M+Cis8Yz4yPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7
Jm5ic3A7MTwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJz
aWxrX3BpdGNoX2NvbnRvdXJfY2JfbmIyMG1zIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0b3JzIGZv
ciBTdWJmcmFtZSBQaXRjaCBDb250b3VyOiBOQiwgMjAmbmJzcDttcyBGcmFtZXMiPgorPHR0Y29s
PkluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPlN1YmZyYW1lIE9mZnNldHM8L3R0
Y29sPgorIDxjPjA8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJz
cDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8Yz4xPC9jPiA8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsyJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzAmbmJz
cDstMTwvc3Bhbng+PC9jPgorIDxjPjI8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xJm5i
c3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDsyPC9zcGFueD48L2M+CisgPGM+Mzwv
Yz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZu
YnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8Yz40PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4tMSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgor
IDxjPjU8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDswJm5i
c3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8Yz42PC9jPiA8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJz
cDsxPC9zcGFueD48L2M+CisgPGM+NzwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7
MSZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxj
Pjg8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7
Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8Yz45PC9jPiA8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDstMTwvc3Bh
bng+PC9jPgorPGM+MTA8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEmbmJzcDsm
bmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOy0xPC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKwor
PHRleHR0YWJsZSBhbmNob3I9InNpbGtfcGl0Y2hfY29udG91cl9jYl9tYndiMTBtcyIKKyB0aXRs
ZT0iQ29kZWJvb2sgVmVjdG9ycyBmb3IgU3ViZnJhbWUgUGl0Y2ggQ29udG91cjogTUIgb3IgV0Is
IDEwJm5ic3A7bXMgRnJhbWVzIj4KKzx0dGNvbD5JbmRleDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249
InJpZ2h0Ij5TdWJmcmFtZSBPZmZzZXRzPC90dGNvbD4KKyA8Yz4wPC9jPiA8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxjPjE8L2M+IDxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDsxPC9zcGFueD48L2M+Cisg
PGM+MjwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MSZuYnNwOyZuYnNwOzA8L3Nw
YW54PjwvYz4KKyA8Yz4zPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMSZuYnNwOyZuYnNw
OzE8L3NwYW54PjwvYz4KKyA8Yz40PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsx
Jm5ic3A7LTE8L3NwYW54PjwvYz4KKyA8Yz41PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4t
MSZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4KKyA8Yz42PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDsyJm5ic3A7LTE8L3NwYW54PjwvYz4KKyA8Yz43PC9jPiA8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4tMiZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4KKyA8Yz44PC9jPiA8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4mbmJzcDsyJm5ic3A7LTI8L3NwYW54PjwvYz4KKyA8Yz45PC9jPiA8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMiZuYnNwOyZuYnNwOzM8L3NwYW54PjwvYz4KKzxjPjEw
PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDszJm5ic3A7LTI8L3NwYW54PjwvYz4K
KzxjPjExPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMyZuYnNwOyZuYnNwOzM8L3NwYW54
PjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19waXRjaF9jb250
b3VyX2NiX21id2IyMG1zIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0b3JzIGZvciBTdWJmcmFtZSBQ
aXRjaCBDb250b3VyOiBNQiBvciBXQiwgMjAmbmJzcDttcyBGcmFtZXMiPgorPHR0Y29sPkluZGV4
PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPlN1YmZyYW1lIE9mZnNldHM8L3R0Y29sPgor
IDxjPjA8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzAmbmJzcDsmbmJzcDswJm5i
c3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8Yz4xPC9jPiA8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4mbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzEmbmJzcDsmbmJz
cDsxPC9zcGFueD48L2M+CisgPGM+MjwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7
MSZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorIDxj
PjM8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNw
OzAmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+CisgPGM+NDwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MTwvc3Bh
bng+PC9jPgorIDxjPjU8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEmbmJzcDsm
bmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzA8L3NwYW54PjwvYz4KKyA8Yz42PC9jPiA8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMSZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7
Jm5ic3A7MTwvc3Bhbng+PC9jPgorIDxjPjc8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZu
YnNwOzAmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOy0xPC9zcGFueD48L2M+CisgPGM+
ODwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7
MSZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4KKyA8Yz45PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDsxJm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzAmbmJzcDstMTwvc3Bhbng+PC9j
PgorPGM+MTA8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0yJm5ic3A7LTEmbmJzcDsmbmJz
cDsxJm5ic3A7Jm5ic3A7Mjwvc3Bhbng+PC9jPgorPGM+MTE8L2M+IDxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPiZuYnNwOzImbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7MCZuYnNwOy0xPC9zcGFueD48
L2M+Cis8Yz4xMjwvYz4gPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTImbmJzcDsmbmJzcDswJm5i
c3A7Jm5ic3A7MCZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4KKzxjPjEzPC9jPiA8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4tMiZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7Mzwv
c3Bhbng+PC9jPgorPGM+MTQ8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzImbmJz
cDsmbmJzcDsxJm5ic3A7LTEmbmJzcDstMjwvc3Bhbng+PC9jPgorPGM+MTU8L2M+IDxjPjxzcGFu
eCBzdHlsZT0idmJhcmUiPi0zJm5ic3A7LTEmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7Mzwvc3Bh
bng+PC9jPgorPGM+MTY8L2M+IDxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzImbmJzcDsm
bmJzcDswJm5ic3A7Jm5ic3A7MCZuYnNwOy0yPC9zcGFueD48L2M+Cis8Yz4xNzwvYz4gPGM+PHNw
YW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MyZuYnNwOyZuYnNwOzEmbmJzcDsmbmJzcDswJm5ic3A7
LTI8L3NwYW54PjwvYz4KKzxjPjE4PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMyZuYnNw
Oy0xJm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOzQ8L3NwYW54PjwvYz4KKzxjPjE5PC9jPiA8Yz48
c3Bhbnggc3R5bGU9InZiYXJlIj4tNCZuYnNwOy0xJm5ic3A7Jm5ic3A7MSZuYnNwOyZuYnNwOzQ8
L3NwYW54PjwvYz4KKzxjPjIwPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDszJm5i
c3A7Jm5ic3A7MSZuYnNwOy0xJm5ic3A7LTM8L3NwYW54PjwvYz4KKzxjPjIxPC9jPiA8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4tNCZuYnNwOy0xJm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOzU8L3Nw
YW54PjwvYz4KKzxjPjIyPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs0Jm5ic3A7
Jm5ic3A7MiZuYnNwOy0xJm5ic3A7LTM8L3NwYW54PjwvYz4KKzxjPjIzPC9jPiA8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4mbmJzcDs0Jm5ic3A7Jm5ic3A7MSZuYnNwOy0xJm5ic3A7LTQ8L3NwYW54
PjwvYz4KKzxjPjI0PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tNSZuYnNwOy0xJm5ic3A7
Jm5ic3A7MiZuYnNwOyZuYnNwOzY8L3NwYW54PjwvYz4KKzxjPjI1PC9jPiA8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4mbmJzcDs1Jm5ic3A7Jm5ic3A7MiZuYnNwOy0xJm5ic3A7LTQ8L3NwYW54Pjwv
Yz4KKzxjPjI2PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tNiZuYnNwOy0yJm5ic3A7Jm5i
c3A7MiZuYnNwOyZuYnNwOzY8L3NwYW54PjwvYz4KKzxjPjI3PC9jPiA8Yz48c3Bhbnggc3R5bGU9
InZiYXJlIj4tNSZuYnNwOy0yJm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOzU8L3NwYW54PjwvYz4K
KzxjPjI4PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs2Jm5ic3A7Jm5ic3A7MiZu
YnNwOy0xJm5ic3A7LTU8L3NwYW54PjwvYz4KKzxjPjI5PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4tNyZuYnNwOy0yJm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzg8L3NwYW54PjwvYz4KKzxj
PjMwPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs2Jm5ic3A7Jm5ic3A7MiZuYnNw
Oy0yJm5ic3A7LTY8L3NwYW54PjwvYz4KKzxjPjMxPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4mbmJzcDs1Jm5ic3A7Jm5ic3A7MiZuYnNwOy0yJm5ic3A7LTU8L3NwYW54PjwvYz4KKzxjPjMy
PC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDs4Jm5ic3A7Jm5ic3A7MyZuYnNwOy0y
Jm5ic3A7LTc8L3NwYW54PjwvYz4KKzxjPjMzPC9jPiA8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4t
OSZuYnNwOy0zJm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzk8L3NwYW54PjwvYz4KKzwvdGV4dHRh
YmxlPgorCis8dD4KK1RoZSBmaW5hbCBwaXRjaCBsYWcgZm9yIGVhY2ggc3ViZnJhbWUgaXMgYXNz
ZW1ibGVkIGluIHNpbGtfZGVjb2RlX3BpdGNoKCkKKyAoZGVjb2RlX3BpdGNoLmMpLgorTGV0IGxh
ZyBiZSB0aGUgcHJpbWFyeSBwaXRjaCBsYWcgZm9yIHRoZSBjdXJyZW50IFNJTEsgZnJhbWUsIGNv
bnRvdXJfaW5kZXggYmUKKyBpbmRleCBvZiB0aGUgVlEgY29kZWJvb2ssIGFuZCBsYWdfY2JbY29u
dG91cl9pbmRleF1ba10gYmUgdGhlIGNvcnJlc3BvbmRpbmcKKyBlbnRyeSBvZiB0aGUgY29kZWJv
b2sgZnJvbSB0aGUgYXBwcm9wcmlhdGUgdGFibGUgZ2l2ZW4gYWJvdmUgZm9yIHRoZSBrJ3RoCisg
c3ViZnJhbWUuCitUaGVuIHRoZSBmaW5hbCBwaXRjaCBsYWcgZm9yIHRoYXQgc3ViZnJhbWUgaXMK
KzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKK3BpdGNoX2xhZ3Nba10gPSBjbGFtcChsYWdfbWluLCBsYWcgKyBsYWdfY2JbY29udG91cl9p
bmRleF1ba10sCisgICAgICAgICAgICAgICAgICAgICAgbGFnX21heCkKK11dPjwvYXJ0d29yaz4K
KzwvZmlndXJlPgorIHdoZXJlIGxhZ19taW4gYW5kIGxhZ19tYXggYXJlIHRoZSB2YWx1ZXMgZnJv
bSB0aGUgIk1pbmltdW0gTGFnIiBhbmQKKyAiTWF4aW11bSBMYWciIGNvbHVtbnMgb2YgPHhyZWYg
dGFyZ2V0PSJzaWxrX2Fic19waXRjaF9sb3dfcGRmIi8+LAorIHJlc3BlY3RpdmVseS4KKzwvdD4K
KworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfbHRwX2ZpbHRlciIgdGl0bGU9
IkxUUCBGaWx0ZXIgQ29lZmZpY2llbnRzIj4KKzx0PgorU0lMSyB1c2VzIGEgc2VwYXJhdGUgNS10
YXAgcGl0Y2ggZmlsdGVyIGZvciBlYWNoIHN1YmZyYW1lLCBzZWxlY3RlZCBmcm9tIG9uZQorIG9m
IHRocmVlIGNvZGVib29rcy4KK1RoZSB0aHJlZSBjb2RlYm9va3MgZWFjaCByZXByZXNlbnQgZGlm
ZmVyZW50IHJhdGUtZGlzdG9ydGlvbiB0cmFkZS1vZmZzLCB3aXRoCisgYXZlcmFnZSByYXRlcyBv
ZiAxLjYxJm5ic3A7Yml0cy9zdWJmcmFtZSwgMy42OCZuYnNwO2JpdHMvc3ViZnJhbWUsIGFuZAor
IDQuODUmbmJzcDtiaXRzL3N1YmZyYW1lLCByZXNwZWN0aXZlbHkuCis8L3Q+CisKKzx0PgorVGhl
IGltcG9ydGFuY2Ugb2YgdGhlIGZpbHRlciBjb2VmZmljaWVudHMgZ2VuZXJhbGx5IGRlcGVuZHMg
b24gdHdvIGZhY3RvcnM6IHRoZQorIHBlcmlvZGljaXR5IG9mIHRoZSBzaWduYWwgYW5kIHJlbGF0
aXZlIGVuZXJneSBiZXR3ZWVuIHRoZSBjdXJyZW50IHN1YmZyYW1lIGFuZAorIHRoZSBzaWduYWwg
ZnJvbSBvbmUgcGVyaW9kIGVhcmxpZXIuCitHcmVhdGVyIHBlcmlvZGljaXR5IGFuZCBkZWNheWlu
ZyBlbmVyZ3kgYm90aCBsZWFkIHRvIG1vcmUgaW1wb3J0YW50IGZpbHRlcgorIGNvZWZmaWNpZW50
cywgYW5kIHRodXMgc2hvdWxkIGJlIGNvZGVkIHdpdGggbG93ZXIgZGlzdG9ydGlvbiBhbmQgaGln
aGVyIHJhdGUuCitUaGVzZSBwcm9wZXJ0aWVzIGFyZSByZWxhdGl2ZWx5IHN0YWJsZSBvdmVyIHRo
ZSBkdXJhdGlvbiBvZiBhIHNpbmdsZSBTSUxLCisgZnJhbWUsIGhlbmNlIGFsbCBvZiB0aGUgc3Vi
ZnJhbWVzIGluIGEgU0lMSyBmcmFtZSBjaG9vc2UgdGhlaXIgZmlsdGVyIGZyb20gdGhlCisgc2Ft
ZSBjb2RlYm9vay4KK1RoaXMgaXMgc2lnbmFsZWQgd2l0aCBhbiBleHBsaWNpdGx5LWNvZGVkICJw
ZXJpb2RpY2l0eSBpbmRleCIuCitUaGlzIGltbWVkaWF0ZWx5IGZvbGxvd3MgdGhlIHN1YmZyYW1l
IHBpdGNoIGxhZ3MsIGFuZCBpcyBjb2RlZCB1c2luZyB0aGUKKyAzLWVudHJ5IFBERiBmcm9tIDx4
cmVmIHRhcmdldD0ic2lsa19wZXJpbmRleF9wZGYiLz4uCis8L3Q+CisKKzx0ZXh0dGFibGUgYW5j
aG9yPSJzaWxrX3BlcmluZGV4X3BkZiIgdGl0bGU9IlBlcmlvZGljaXR5IEluZGV4IFBERiI+Cis8
dHRjb2w+UERGPC90dGNvbD4KKzxjPns3NywgODAsIDk5fS8yNTY8L2M+Cis8L3RleHR0YWJsZT4K
KworPHQ+CitUaGUgaW5kaWNlcyBvZiB0aGUgZmlsdGVycyBmb3IgZWFjaCBzdWJmcmFtZSBmb2xs
b3cuCitUaGV5IGFyZSBhbGwgY29kZWQgdXNpbmcgdGhlIFBERiBmcm9tIDx4cmVmIHRhcmdldD0i
c2lsa19sdHBfZmlsdGVyX3BkZnMiLz4KKyBjb3JyZXNwb25kaW5nIHRvIHRoZSBwZXJpb2RpY2l0
eSBpbmRleC4KK1RhYmxlcyZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxr
X2x0cF9maWx0ZXJfY29lZmZzMCIvPgorIHRocm91Z2gmbmJzcDs8eHJlZiBmb3JtYXQ9ImNvdW50
ZXIiIHRhcmdldD0ic2lsa19sdHBfZmlsdGVyX2NvZWZmczIiLz4KKyBjb250YWluIHRoZSBjb3Jy
ZXNwb25kaW5nIGZpbHRlciB0YXBzIGFzIHNpZ25lZCBRNyBpbnRlZ2Vycy4KKzwvdD4KKworPHRl
eHR0YWJsZSBhbmNob3I9InNpbGtfbHRwX2ZpbHRlcl9wZGZzIiB0aXRsZT0iTFRQIEZpbHRlciBQ
REZzIj4KKzx0dGNvbD5QZXJpb2RpY2l0eSBJbmRleDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJp
Z2h0Ij5Db2RlYm9vayBTaXplPC90dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29sPgorPGM+MDwvYz4g
IDxjPjg8L2M+IDxjPnsxODUsIDE1LCAxMywgMTMsIDksIDksIDYsIDZ9LzI1NjwvYz4KKzxjPjE8
L2M+IDxjPjE2PC9jPiA8Yz57NTcsIDM0LCAyMSwgMjAsIDE1LCAxMywgMTIsIDEzLAorICAgICAg
ICAgICAgICAgICAgICAgICAxMCwgMTAsICA5LCAxMCwgIDksICA4LCAgNywgIDh9LzI1NjwvYz4K
KzxjPjI8L2M+IDxjPjMyPC9jPiA8Yz57MTUsIDE2LCAxNCwgMTIsIDEyLCAxMiwgMTEsIDExLAor
ICAgICAgICAgICAgICAgICAgICAgICAxMSwgMTAsICA5LCAgOSwgIDksICA5LCAgOCwgIDgsCisg
ICAgICAgICAgICAgICAgICAgICAgICA4LCAgOCwgIDcsICA3LCAgNiwgIDYsICA1LCAgNCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgIDUsICA0LCAgNCwgIDQsICAzLCAgNCwgIDMsICAyfS8yNTY8
L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbHRwX2ZpbHRlcl9j
b2VmZnMwIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0b3JzIGZvciBMVFAgRmlsdGVyLCBQZXJpb2Rp
Y2l0eSBJbmRleCAwIj4KKzx0dGNvbD5JbmRleDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0
Ij5GaWx0ZXIgVGFwcyAoUTcpPC90dGNvbD4KKyA8Yz4wPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+Jm5ic3A7Jm5ic3A7NCZuYnNwOyZuYnNwOyZuYnNwOzYmbmJzcDsmbmJzcDsyNCZuYnNw
OyZuYnNwOyZuYnNwOzcmbmJzcDsmbmJzcDsmbmJzcDs1PC9zcGFueD48L2M+CisgPGM+MTwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsmbmJzcDsw
Jm5ic3A7Jm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsmbmJzcDsw
PC9zcGFueD48L2M+CisgPGM+MjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzEy
Jm5ic3A7Jm5ic3A7MjgmbmJzcDsmbmJzcDs0MSZuYnNwOyZuYnNwOzEzJm5ic3A7Jm5ic3A7LTQ8
L3NwYW54PjwvYz4KKyA8Yz4zPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTkm
bmJzcDsmbmJzcDsxNSZuYnNwOyZuYnNwOzQyJm5ic3A7Jm5ic3A7MjUmbmJzcDsmbmJzcDsxNDwv
c3Bhbng+PC9jPgorIDxjPjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJz
cDsxJm5ic3A7Jm5ic3A7LTImbmJzcDsmbmJzcDs2MiZuYnNwOyZuYnNwOzQxJm5ic3A7Jm5ic3A7
LTk8L3NwYW54PjwvYz4KKyA8Yz41PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTEwJm5i
c3A7Jm5ic3A7MzcmbmJzcDsmbmJzcDs2NSZuYnNwOyZuYnNwOy00Jm5ic3A7Jm5ic3A7Jm5ic3A7
Mzwvc3Bhbng+PC9jPgorIDxjPjY8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDst
NiZuYnNwOyZuYnNwOyZuYnNwOzQmbmJzcDsmbmJzcDs2NiZuYnNwOyZuYnNwOyZuYnNwOzcmbmJz
cDsmbmJzcDstODwvc3Bhbng+PC9jPgorIDxjPjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4mbmJzcDsxNiZuYnNwOyZuYnNwOzE0Jm5ic3A7Jm5ic3A7MzgmbmJzcDsmbmJzcDstMyZuYnNw
OyZuYnNwOzMzPC9zcGFueD48L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9
InNpbGtfbHRwX2ZpbHRlcl9jb2VmZnMxIgorIHRpdGxlPSJDb2RlYm9vayBWZWN0b3JzIGZvciBM
VFAgRmlsdGVyLCBQZXJpb2RpY2l0eSBJbmRleCAxIj4KKzx0dGNvbD5JbmRleDwvdHRjb2w+Cis8
dHRjb2wgYWxpZ249InJpZ2h0Ij5GaWx0ZXIgVGFwcyAoUTcpPC90dGNvbD4KKworIDxjPjA8L2M+
Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsxMyZuYnNwOyZuYnNwOzIyJm5ic3A7Jm5i
c3A7MzkmbmJzcDsmbmJzcDsyMyZuYnNwOyZuYnNwOzEyPC9zcGFueD48L2M+CisgPGM+MTwvYz4K
KzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy0xJm5ic3A7Jm5ic3A7MzYmbmJzcDsmbmJz
cDs2NCZuYnNwOyZuYnNwOzI3Jm5ic3A7Jm5ic3A7LTY8L3NwYW54PjwvYz4KKyA8Yz4yPC9jPgor
PGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTcmbmJzcDsmbmJzcDsxMCZuYnNwOyZuYnNw
OzU1Jm5ic3A7Jm5ic3A7NDMmbmJzcDsmbmJzcDsxNzwvc3Bhbng+PC9jPgorIDxjPjM8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7Jm5ic3A7MSZu
YnNwOyZuYnNwOyZuYnNwOzgmbmJzcDsmbmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7Jm5ic3A7MTwv
c3Bhbng+PC9jPgorIDxjPjQ8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJz
cDs2Jm5ic3A7LTExJm5ic3A7Jm5ic3A7NzQmbmJzcDsmbmJzcDs1MyZuYnNwOyZuYnNwOy05PC9z
cGFueD48L2M+CisgPGM+NTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xMiZuYnNwOyZu
YnNwOzU1Jm5ic3A7Jm5ic3A7NzYmbmJzcDstMTImbmJzcDsmbmJzcDsmbmJzcDs4PC9zcGFueD48
L2M+CisgPGM+NjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOy0zJm5ic3A7Jm5i
c3A7Jm5ic3A7MyZuYnNwOyZuYnNwOzkzJm5ic3A7Jm5ic3A7MjcmbmJzcDsmbmJzcDstNDwvc3Bh
bng+PC9jPgorIDxjPjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsyNiZuYnNw
OyZuYnNwOzM5Jm5ic3A7Jm5ic3A7NTkmbmJzcDsmbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7LTg8
L3NwYW54PjwvYz4KKyA8Yz44PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5i
c3A7MiZuYnNwOyZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDs3NyZuYnNwOyZuYnNwOzExJm5ic3A7
Jm5ic3A7Jm5ic3A7OTwvc3Bhbng+PC9jPgorIDxjPjk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDstOCZuYnNwOyZuYnNwOzIyJm5ic3A7Jm5ic3A7NDQmbmJzcDsmbmJzcDstNiZu
YnNwOyZuYnNwOyZuYnNwOzc8L3NwYW54PjwvYz4KKzxjPjEwPC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+Jm5ic3A7NDAmbmJzcDsmbmJzcDsmbmJzcDs5Jm5ic3A7Jm5ic3A7MjYmbmJzcDsm
bmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7Jm5ic3A7OTwvc3Bhbng+PC9jPgorPGM+MTE8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDstNyZuYnNwOyZuYnNwOzIwJm5ic3A7MTAxJm5i
c3A7Jm5ic3A7LTcmbmJzcDsmbmJzcDsmbmJzcDs0PC9zcGFueD48L2M+Cis8Yz4xMjwvYz4KKzxj
PjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzMmbmJzcDsmbmJzcDstOCZuYnNwOyZu
YnNwOzQyJm5ic3A7Jm5ic3A7MjYmbmJzcDsmbmJzcDsmbmJzcDswPC9zcGFueD48L2M+Cis8Yz4x
MzwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPi0xNSZuYnNwOyZuYnNwOzMzJm5ic3A7Jm5i
c3A7NjgmbmJzcDsmbmJzcDsmbmJzcDsyJm5ic3A7Jm5ic3A7MjM8L3NwYW54PjwvYz4KKzxjPjE0
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTImbmJzcDsmbmJzcDs1NSZuYnNw
OyZuYnNwOzQ2Jm5ic3A7Jm5ic3A7LTImbmJzcDsmbmJzcDsxNTwvc3Bhbng+PC9jPgorPGM+MTU8
L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7LTEm
bmJzcDsmbmJzcDsyMSZuYnNwOyZuYnNwOzE2Jm5ic3A7Jm5ic3A7NDE8L3NwYW54PjwvYz4KKzwv
dGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19sdHBfZmlsdGVyX2NvZWZmczIi
CisgdGl0bGU9IkNvZGVib29rIFZlY3RvcnMgZm9yIExUUCBGaWx0ZXIsIFBlcmlvZGljaXR5IElu
ZGV4IDIiPgorPHR0Y29sPkluZGV4PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPkZpbHRl
ciBUYXBzIChRNyk8L3R0Y29sPgorIDxjPjA8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4m
bmJzcDstNiZuYnNwOyZuYnNwOzI3Jm5ic3A7Jm5ic3A7NjEmbmJzcDsmbmJzcDszOSZuYnNwOyZu
YnNwOyZuYnNwOzU8L3NwYW54PjwvYz4KKyA8Yz4xPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+LTExJm5ic3A7Jm5ic3A7NDImbmJzcDsmbmJzcDs4OCZuYnNwOyZuYnNwOyZuYnNwOzQmbmJz
cDsmbmJzcDsmbmJzcDsxPC9zcGFueD48L2M+CisgPGM+MjwvYz4KKzxjPjxzcGFueCBzdHlsZT0i
dmJhcmUiPiZuYnNwOy0yJm5ic3A7Jm5ic3A7NjAmbmJzcDsmbmJzcDs2NSZuYnNwOyZuYnNwOyZu
YnNwOzYmbmJzcDsmbmJzcDstNDwvc3Bhbng+PC9jPgorIDxjPjM8L2M+Cis8Yz48c3Bhbnggc3R5
bGU9InZiYXJlIj4mbmJzcDstMSZuYnNwOyZuYnNwOy01Jm5ic3A7Jm5ic3A7NzMmbmJzcDsmbmJz
cDs1NiZuYnNwOyZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKyA8Yz40PC9jPgorPGM+PHNwYW54
IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7LTkmbmJzcDsmbmJzcDsxOSZuYnNwOyZuYnNwOzk0Jm5ic3A7
Jm5ic3A7MjkmbmJzcDsmbmJzcDstOTwvc3Bhbng+PC9jPgorIDxjPjU8L2M+Cis8Yz48c3Bhbngg
c3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7MTImbmJzcDsmbmJzcDs5OSZu
YnNwOyZuYnNwOyZuYnNwOzYmbmJzcDsmbmJzcDsmbmJzcDs0PC9zcGFueD48L2M+CisgPGM+Njwv
Yz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOyZuYnNwOzgmbmJzcDstMTkmbmJzcDsx
MDImbmJzcDsmbmJzcDs0NiZuYnNwOy0xMzwvc3Bhbng+PC9jPgorIDxjPjc8L2M+Cis8Yz48c3Bh
bnggc3R5bGU9InZiYXJlIj4mbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7Jm5ic3A7MiZuYnNwOyZu
YnNwOzEzJm5ic3A7Jm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOyZuYnNwOzI8L3NwYW54PjwvYz4K
KyA8Yz44PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7OSZuYnNwOy0y
MSZuYnNwOyZuYnNwOzg0Jm5ic3A7Jm5ic3A7NzImbmJzcDstMTg8L3NwYW54PjwvYz4KKyA8Yz45
PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+LTExJm5ic3A7Jm5ic3A7NDYmbmJzcDsxMDQm
bmJzcDstMjImbmJzcDsmbmJzcDsmbmJzcDs4PC9zcGFueD48L2M+Cis8Yz4xMDwvYz4KKzxjPjxz
cGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzE4Jm5ic3A7Jm5ic3A7MzgmbmJzcDsmbmJzcDs0OCZu
YnNwOyZuYnNwOzIzJm5ic3A7Jm5ic3A7Jm5ic3A7MDwvc3Bhbng+PC9jPgorPGM+MTE8L2M+Cis8
Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4tMTYmbmJzcDsmbmJzcDs3MCZuYnNwOyZuYnNwOzgzJm5i
c3A7LTIxJm5ic3A7Jm5ic3A7MTE8L3NwYW54PjwvYz4KKzxjPjEyPC9jPgorPGM+PHNwYW54IHN0
eWxlPSJ2YmFyZSI+Jm5ic3A7Jm5ic3A7NSZuYnNwOy0xMSZuYnNwOzExNyZuYnNwOyZuYnNwOzIy
Jm5ic3A7Jm5ic3A7LTg8L3NwYW54PjwvYz4KKzxjPjEzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+Jm5ic3A7LTYmbmJzcDsmbmJzcDsyMyZuYnNwOzExNyZuYnNwOy0xMiZuYnNwOyZuYnNw
OyZuYnNwOzM8L3NwYW54PjwvYz4KKzxjPjE0PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
Jm5ic3A7Jm5ic3A7MyZuYnNwOyZuYnNwOy04Jm5ic3A7Jm5ic3A7OTUmbmJzcDsmbmJzcDsyOCZu
YnNwOyZuYnNwOyZuYnNwOzQ8L3NwYW54PjwvYz4KKzxjPjE1PC9jPgorPGM+PHNwYW54IHN0eWxl
PSJ2YmFyZSI+LTEwJm5ic3A7Jm5ic3A7MTUmbmJzcDsmbmJzcDs3NyZuYnNwOyZuYnNwOzYwJm5i
c3A7LTE1PC9zcGFueD48L2M+Cis8Yz4xNjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZu
YnNwOy0xJm5ic3A7Jm5ic3A7Jm5ic3A7NCZuYnNwOzEyNCZuYnNwOyZuYnNwOyZuYnNwOzImbmJz
cDsmbmJzcDstNDwvc3Bhbng+PC9jPgorPGM+MTc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4mbmJzcDsmbmJzcDszJm5ic3A7Jm5ic3A7MzgmbmJzcDsmbmJzcDs4NCZuYnNwOyZuYnNwOzI0
Jm5ic3A7LTI1PC9zcGFueD48L2M+Cis8Yz4xODwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUi
PiZuYnNwOyZuYnNwOzImbmJzcDsmbmJzcDsxMyZuYnNwOyZuYnNwOzQyJm5ic3A7Jm5ic3A7MTMm
bmJzcDsmbmJzcDszMTwvc3Bhbng+PC9jPgorPGM+MTk8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZi
YXJlIj4mbmJzcDsyMSZuYnNwOyZuYnNwOy00Jm5ic3A7Jm5ic3A7NTYmbmJzcDsmbmJzcDs0NiZu
YnNwOyZuYnNwOy0xPC9zcGFueD48L2M+Cis8Yz4yMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJh
cmUiPiZuYnNwOy0xJm5ic3A7Jm5ic3A7MzUmbmJzcDsmbmJzcDs3OSZuYnNwOy0xMyZuYnNwOyZu
YnNwOzE5PC9zcGFueD48L2M+Cis8Yz4yMTwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZu
YnNwOy03Jm5ic3A7Jm5ic3A7NjUmbmJzcDsmbmJzcDs4OCZuYnNwOyZuYnNwOy05Jm5ic3A7LTE0
PC9zcGFueD48L2M+Cis8Yz4yMjwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzIw
Jm5ic3A7Jm5ic3A7Jm5ic3A7NCZuYnNwOyZuYnNwOzgxJm5ic3A7Jm5ic3A7NDkmbmJzcDstMjk8
L3NwYW54PjwvYz4KKzxjPjIzPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+Jm5ic3A7MjAm
bmJzcDsmbmJzcDsmbmJzcDswJm5ic3A7Jm5ic3A7NzUmbmJzcDsmbmJzcDsmbmJzcDszJm5ic3A7
LTE3PC9zcGFueD48L2M+Cis8Yz4yNDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNw
OyZuYnNwOzUmbmJzcDsmbmJzcDstOSZuYnNwOyZuYnNwOzQ0Jm5ic3A7Jm5ic3A7OTImbmJzcDsm
bmJzcDstODwvc3Bhbng+PC9jPgorPGM+MjU8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJlIj4m
bmJzcDsmbmJzcDsxJm5ic3A7Jm5ic3A7LTMmbmJzcDsmbmJzcDsyMiZuYnNwOyZuYnNwOzY5Jm5i
c3A7Jm5ic3A7MzE8L3NwYW54PjwvYz4KKzxjPjI2PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+Jm5ic3A7LTYmbmJzcDsmbmJzcDs5NSZuYnNwOyZuYnNwOzQxJm5ic3A7LTEyJm5ic3A7Jm5i
c3A7Jm5ic3A7NTwvc3Bhbng+PC9jPgorPGM+Mjc8L2M+Cis8Yz48c3Bhbnggc3R5bGU9InZiYXJl
Ij4mbmJzcDszOSZuYnNwOyZuYnNwOzY3Jm5ic3A7Jm5ic3A7MTYmbmJzcDsmbmJzcDstNCZuYnNw
OyZuYnNwOyZuYnNwOzE8L3NwYW54PjwvYz4KKzxjPjI4PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2
YmFyZSI+Jm5ic3A7Jm5ic3A7MCZuYnNwOyZuYnNwOy02Jm5ic3A7MTIwJm5ic3A7Jm5ic3A7NTUm
bmJzcDstMzY8L3NwYW54PjwvYz4KKzxjPjI5PC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFyZSI+
LTEzJm5ic3A7Jm5ic3A7NDQmbmJzcDsxMjImbmJzcDsmbmJzcDsmbmJzcDs0Jm5ic3A7LTI0PC9z
cGFueD48L2M+Cis8Yz4zMDwvYz4KKzxjPjxzcGFueCBzdHlsZT0idmJhcmUiPiZuYnNwOzgxJm5i
c3A7Jm5ic3A7Jm5ic3A7NSZuYnNwOyZuYnNwOzExJm5ic3A7Jm5ic3A7Jm5ic3A7MyZuYnNwOyZu
YnNwOyZuYnNwOzc8L3NwYW54PjwvYz4KKzxjPjMxPC9jPgorPGM+PHNwYW54IHN0eWxlPSJ2YmFy
ZSI+Jm5ic3A7Jm5ic3A7MiZuYnNwOyZuYnNwOyZuYnNwOzAmbmJzcDsmbmJzcDsmbmJzcDs5Jm5i
c3A7Jm5ic3A7MTAmbmJzcDsmbmJzcDs4ODwvc3Bhbng+PC9jPgorPC90ZXh0dGFibGU+CisKKzwv
c2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2x0cF9zY2FsaW5nIiB0aXRsZT0iTFRQ
IFNjYWxpbmcgUGFyYW1ldGVyIj4KKzx0PgorQW4gTFRQIHNjYWxpbmcgcGFyYW1ldGVyIGFwcGVh
cnMgYWZ0ZXIgdGhlIExUUCBmaWx0ZXIgY29lZmZpY2llbnRzIGlmIGFuZCBvbmx5CisgaWYKKzxs
aXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PlRoaXMgaXMgYSB2b2ljZWQgZnJhbWUgKHNlZSA8eHJl
ZiB0YXJnZXQ9InNpbGtfZnJhbWVfdHlwZSIvPiksIGFuZDwvdD4KKzx0PkVpdGhlcgorPGxpc3Qg
c3R5bGU9InN5bWJvbHMiPgorPHQ+CitUaGlzIFNJTEsgZnJhbWUgY29ycmVzcG9uZHMgdG8gdGhl
IGZpcnN0IHRpbWUgaW50ZXJ2YWwgb2YgdGhlCisgY3VycmVudCBPcHVzIGZyYW1lIGZvciBpdHMg
dHlwZSAoTEJSUiBvciByZWd1bGFyKSwgb3IKKzwvdD4KKzx0PgorVGhpcyBpcyBhbiBMQlJSIGZy
YW1lIHdoZXJlIHRoZSBMQlJSIGZsYWdzIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNpbGtfbGJycl9m
bGFncyIvPikgaW5kaWNhdGUgdGhlIHByZXZpb3VzIExCUlIgZnJhbWUgaW4gdGhlIHNhbWUKKyBj
aGFubmVsIGlzIG5vdCBjb2RlZC4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKzwvbGlzdD4KK1RoaXMg
YWxsb3dzIHRoZSBlbmNvZGVyIHRvIHRyYWRlIG9mZiB0aGUgcHJlZGljdGlvbiBnYWluIGJldHdl
ZW4KKyBwYWNrZXRzIGFnYWluc3QgdGhlIHJlY292ZXJ5IHRpbWUgYWZ0ZXIgcGFja2V0IGxvc3Mu
CitVbmxpa2UgYWJzb2x1dGUtY29kaW5nIGZvciBwaXRjaCBsYWdzLCByZWd1bGFyIFNJTEsgZnJh
bWVzIHRoYXQgYXJlIG5vdCBhdCB0aGUKKyBzdGFydCBvZiBhbiBPcHVzIGZyYW1lIChpLmUuLCB0
aGF0IGRvIG5vdCBjb3JyZXNwb25kIHRvIHRoZSBmaXJzdCAyMCZuYnNwO21zCisgdGltZSBpbnRl
cnZhbCBpbiBPcHVzIGZyYW1lcyBvZiA0MCZuYnNwO29yIDYwJm5ic3A7bXMpIGRvIG5vdCBpbmNs
dWRlIHRoaXMKKyBmaWVsZCwgZXZlbiBpZiB0aGUgcHJpb3IgZnJhbWUgd2FzIG5vdCB2b2ljZWQs
IG9yIChpbiB0aGUgY2FzZSBvZiB0aGUgc2lkZQorIGNoYW5uZWwpIG5vdCBldmVuIGNvZGVkLgor
QWZ0ZXIgYW4gdW5jb2RlZCBmcmFtZSBpbiB0aGUgc2lkZSBjaGFubmVsLCB0aGUgTFRQIGJ1ZmZl
ciAoc2VlCisgPHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9zeW50aGVzaXMiLz4pIGlzIGNsZWFyZWQg
dG8gemVybywgYW5kIGlzIHRodXMgaW4gYQorIGtub3duIHN0YXRlLgorSW4gY29udHJhc3QsIExC
UlIgZnJhbWVzIGRvIGluY2x1ZGUgdGhpcyBmaWVsZCB3aGVuIHRoZSBwcmlvciBmcmFtZSB3YXMg
bm90CisgY29kZWQsIHNpbmNlIHRoZSBMVFAgYnVmZmVyIGNvbnRhaW5zIHRoZSBvdXRwdXQgb2Yg
dGhlIFBMQywgd2hpY2ggaXMKKyBub24tbm9ybWF0aXZlLgorPC90PgorPHQ+CitJZiBwcmVzZW50
LCB0aGUgZGVjb2RlciByZWFkcyBhIHZhbHVlIHVzaW5nIHRoZSAzLWVudHJ5IFBERiBpbgorIDx4
cmVmIHRhcmdldD0ic2lsa19sdHBfc2NhbGluZ19wZGYiLz4uCitUaGUgdGhyZWUgcG9zc2libGUg
dmFsdWVzIHJlcHJlc2VudCBRMTQgc2NhbGUgZmFjdG9ycyBvZiAxNTU2NSwgMTIyODgsIGFuZAor
IDgxOTIsIHJlc3BlY3RpdmVseSAoY29ycmVzcG9uZGluZyB0byBhcHByb3hpbWF0ZWx5IDAuOTUs
IDAuNzUsIGFuZCAwLjUpLgorRnJhbWVzIHRoYXQgZG8gbm90IGNvZGUgdGhlIHNjYWxpbmcgcGFy
YW1ldGVyIHVzZSB0aGUgZGVmYXVsdCBmYWN0b3Igb2YgMTU1NjUKKyAoYXBwcm94aW1hdGVseSAw
Ljk1KS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfbHRwX3NjYWxpbmdfcGRmIgor
IHRpdGxlPSJQREYgZm9yIExUUCBTY2FsaW5nIFBhcmFtZXRlciI+Cis8dHRjb2wgYWxpZ249Imxl
ZnQiPlBERjwvdHRjb2w+Cis8Yz57MTI4LCA2NCwgNjR9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgor
Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX3NlZWQi
IHRvYz0iaW5jbHVkZSIKKyB0aXRsZT0iTGluZWFyIENvbmdydWVudGlhbCBHZW5lcmF0b3IgKExD
RykgU2VlZCI+Cis8dD4KK0FzIGRlc2NyaWJlZCBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfZXhjaXRh
dGlvbl9yZWNvbnN0cnVjdGlvbiIvPiwgU0lMSyB1c2VzIGEKKyBsaW5lYXIgY29uZ3J1ZW50aWFs
IGdlbmVyYXRvciAoTENHKSB0byBpbmplY3QgcHNldWRvcmFuZG9tIG5vaXNlIGludG8gdGhlCisg
cXVhbnRpemVkIGV4Y2l0YXRpb24uCitUbyBlbnN1cmUgc3luY2hyb25pemF0aW9uIG9mIHRoaXMg
cHJvY2VzcyBiZXR3ZWVuIHRoZSBlbmNvZGVyIGFuZCBkZWNvZGVyLCBlYWNoCisgU0lMSyBmcmFt
ZSBzdG9yZXMgYSAyLWJpdCBzZWVkIGFmdGVyIHRoZSBMVFAgcGFyYW1ldGVycyAoaWYgYW55KS4K
K1RoZSBlbmNvZGVyIG1heSBjb25zaWRlciB0aGUgY2hvaWNlIG9mIHNlZWQgZHVyaW5nIHF1YW50
aXphdGlvbiwgYW5kIHRoZQorIGZsZXhpYmlsaXR5IG9mIHRoaXMgY2hvaWNlIGxldHMgaXQgcmVk
dWNlIGRpc3RvcnRpb24sIGhlbHBpbmcgdG8gcGF5IGZvciB0aGUKKyBiaXQgY29zdCByZXF1aXJl
ZCB0byBzaWduYWwgaXQuCitUaGUgZGVjb2RlciByZWFkcyB0aGUgc2VlZCB1c2luZyB0aGUgdW5p
Zm9ybSA0LWVudHJ5IFBERiBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19zZWVkX3BkZiIvPiwgeWll
bGRpbmcgYSB2YWx1ZSBiZXR3ZWVuIDAgYW5kIDMsIGluY2x1c2l2ZS4KKzwvdD4KKworPHRleHR0
YWJsZSBhbmNob3I9InNpbGtfc2VlZF9wZGYiCisgdGl0bGU9IlBERiBmb3IgTENHIFNlZWQiPgor
PHR0Y29sIGFsaWduPSJsZWZ0Ij5QREY8L3R0Y29sPgorPGM+ezY0LCA2NCwgNjQsIDY0fS8yNTY8
L2M+Cis8L3RleHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtf
ZXhjaXRhdGlvbiIgdG9jPSJpbmNsdWRlIiB0aXRsZT0iRXhjaXRhdGlvbiI+Cis8dD4KK1NJTEsg
Y29kZXMgdGhlIGV4Y2l0YXRpb24gdXNpbmcgYSBtb2RpZmllZCB2ZXJzaW9uIG9mIHRoZSBQeXJh
bWlkIFZlY3RvcgorIFF1YW50aXphdGlvbiAoUFZRKSBjb2RlYm9vayA8eHJlZiB0YXJnZXQ9IlBW
USIvPi4KK1RoZSBQVlEgY29kZWJvb2sgaXMgZGVzaWduZWQgZm9yIExhcGxhY2UtZGlzdHJpYnV0
ZWQgdmFsdWVzIGFuZCBjb25zaXN0cyBvZiBhbGwKKyBzdW1zIG9mIEsgc2lnbmVkLCB1bml0IHB1
bHNlcyBpbiBhIHZlY3RvciBvZiBkaW1lbnNpb24gTiwgd2hlcmUgdHdvIHB1bHNlcyBhdAorIHRo
ZSBzYW1lIHBvc2l0aW9uIGFyZSByZXF1aXJlZCB0byBoYXZlIHRoZSBzYW1lIHNpZ24uCitUaHVz
IHRoZSBjb2RlYm9vayBpbmNsdWRlcyBhbGwgaW50ZWdlciBjb2RldmVjdG9ycyB5IG9mIGRpbWVu
c2lvbiBOIHRoYXQKKyBzYXRpc2Z5Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsg
YWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitOLTEKK19fCitcICBhYnMoeVtqXSkgPSBLIC4KKy9f
CitqPTAKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVW5saWtlIHJlZ3VsYXIgUFZRLCBTSUxL
IHVzZXMgYSB2YXJpYWJsZS1sZW5ndGgsIHJhdGhlciB0aGFuIGZpeGVkLWxlbmd0aCwKKyBlbmNv
ZGluZy4KK1RoaXMgZW5jb2RpbmcgaXMgYmV0dGVyIHN1aXRlZCB0byB0aGUgbW9yZSBHYXVzc2lh
bi1saWtlIGRpc3RyaWJ1dGlvbiBvZiB0aGUKKyBjb2VmZmljaWVudCBtYWduaXR1ZGVzIGFuZCB0
aGUgbm9uLXVuaWZvcm0gZGlzdHJpYnV0aW9uIG9mIHRoZWlyIHNpZ25zIChjYXVzZWQKKyBieSB0
aGUgcXVhbnRpemF0aW9uIG9mZnNldCBkZXNjcmliZWQgYmVsb3cpLgorU0lMSyBhbHNvIGhhbmRs
ZXMgbGFyZ2UgY29kZWJvb2tzIGJ5IGNvZGluZyB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQgYml0cyAo
TFNCcykKKyBvZiBlYWNoIGNvZWZmaWNpZW50IGRpcmVjdGx5LgorVGhpcyBhZGRzIGEgc21hbGwg
Y29kaW5nIGVmZmljaWVuY3kgbG9zcywgYnV0IGdyZWF0bHkgcmVkdWNlcyB0aGUgY29tcHV0YXRp
b24KKyB0aW1lIGFuZCBST00gc2l6ZSByZXF1aXJlZCBmb3IgZGVjb2RpbmcsIGFzIGltcGxlbWVu
dGVkIGluCisgc2lsa19kZWNvZGVfcHVsc2VzKCkgKGRlY29kZV9wdWxzZXMuYykuCis8L3Q+CisK
Kzx0PgorU0lMSyBmaXhlcyB0aGUgZGltZW5zaW9uIG9mIHRoZSBjb2RlYm9vayB0byBOJm5ic3A7
PSZuYnNwOzE2LgorVGhlIGV4Y2l0YXRpb24gaXMgbWFkZSB1cCBvZiBhIG51bWJlciBvZiAic2hl
bGwgYmxvY2tzIiwgZWFjaCAxNiBzYW1wbGVzIGluCisgc2l6ZS4KKzx4cmVmIHRhcmdldD0ic2ls
a19zaGVsbF9ibG9ja190YWJsZSIvPiBsaXN0cyB0aGUgbnVtYmVyIG9mIHNoZWxsIGJsb2Nrcwor
IHJlcXVpcmVkIGZvciBhIFNJTEsgZnJhbWUgZm9yIGVhY2ggcG9zc2libGUgYXVkaW8gYmFuZHdp
ZHRoIGFuZCBmcmFtZSBzaXplLgorMTAmbmJzcDttcyBNQiBmcmFtZXMgbm9taW5hbGx5IGNvbnRh
aW4gMTIwJm5ic3A7c2FtcGxlcyAoMTAmbmJzcDttcyBhdAorIDEyJm5ic3A7a0h6KSwgd2hpY2gg
aXMgbm90IGEgbXVsdGlwbGUgb2YgMTYuCitUaGlzIGlzIGhhbmRsZWQgYnkgY29kaW5nIDggc2hl
bGwgYmxvY2tzICgxMjggc2FtcGxlcykgYW5kIGRpc2NhcmRpbmcgdGhlIGZpbmFsCisgOCBzYW1w
bGVzIG9mIHRoZSBsYXN0IGJsb2NrLgorVGhlIGRlY29kZXIgY29udGFpbnMgbm8gc3BlY2lhbCBj
YXNlIHRoYXQgcHJldmVudHMgYW4gZW5jb2RlciBmcm9tIHBsYWNpbmcKKyBwdWxzZXMgaW4gdGhl
c2Ugc2FtcGxlcywgYW5kIHRoZXkgbXVzdCBiZSBjb3JyZWN0bHkgcGFyc2VkIGZyb20gdGhlIGJp
dHN0cmVhbQorIGlmIHByZXNlbnQsIGJ1dCB0aGV5IGFyZSBvdGhlcndpc2UgaWdub3JlZC4KKzwv
dD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfc2hlbGxfYmxvY2tfdGFibGUiCisgdGl0bGU9
Ik51bWJlciBvZiBTaGVsbCBCbG9ja3MgUGVyIFNJTEsgRnJhbWUiPgorPHR0Y29sPkF1ZGlvIEJh
bmR3aWR0aDwvdHRjb2w+Cis8dHRjb2w+RnJhbWUgU2l6ZTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249
InJpZ2h0Ij5OdW1iZXIgb2YgU2hlbGwgQmxvY2tzPC90dGNvbD4KKzxjPk5CPC9jPiA8Yz4xMCZu
YnNwO21zPC9jPiAgPGM+NTwvYz4KKzxjPk1CPC9jPiA8Yz4xMCZuYnNwO21zPC9jPiAgPGM+ODwv
Yz4KKzxjPldCPC9jPiA8Yz4xMCZuYnNwO21zPC9jPiA8Yz4xMDwvYz4KKzxjPk5CPC9jPiA8Yz4y
MCZuYnNwO21zPC9jPiA8Yz4xMDwvYz4KKzxjPk1CPC9jPiA8Yz4yMCZuYnNwO21zPC9jPiA8Yz4x
NTwvYz4KKzxjPldCPC9jPiA8Yz4yMCZuYnNwO21zPC9jPiA8Yz4yMDwvYz4KKzwvdGV4dHRhYmxl
PgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfcmF0ZV9sZXZlbCIgdGl0bGU9IlJhdGUgTGV2ZWwi
PgorPHQ+CitUaGUgZmlyc3Qgc3ltYm9sIGluIHRoZSBleGNpdGF0aW9uIGlzIGEgInJhdGUgbGV2
ZWwiLCB3aGljaCBpcyBhbiBpbmRleCBmcm9tIDAKKyB0byA4LCBpbmNsdXNpdmUsIGNvZGVkIHVz
aW5nIHRoZSBQREYgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX3JhdGVfbGV2ZWxfcGRmcyIvPgorIGNv
cnJlc3BvbmRpbmcgdG8gdGhlIHNpZ25hbCB0eXBlIG9mIHRoZSBjdXJyZW50IGZyYW1lIChmcm9t
CisgPHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pLgorVGhlIHJhdGUgbGV2ZWwgc2Vs
ZWN0cyB0aGUgUERGIHVzZWQgdG8gZGVjb2RlIHRoZSBudW1iZXIgb2YgcHVsc2VzIGluCisgdGhl
IGluZGl2aWR1YWwgc2hlbGwgYmxvY2tzLgorSXQgZG9lcyBub3QgZGlyZWN0bHkgY29udmV5IGFu
eSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYml0cmF0ZSBvciB0aGUgbnVtYmVyIG9mCisgcHVsc2Vz
IGl0c2VsZiwgYnV0IG1lcmVseSBjaGFuZ2VzIHRoZSBwcm9iYWJpbGl0eSBvZiB0aGUgc3ltYm9s
cyBpbgorIDx4cmVmIHRhcmdldD0ic2lsa19wdWxzZV9jb3VudHMiLz4uCitMZXZlbCZuYnNwOzAg
cHJvdmlkZXMgYSBtb3JlIGVmZmljaWVudCBlbmNvZGluZyBhdCBsb3cgcmF0ZXMgZ2VuZXJhbGx5
LCBhbmQKKyBsZXZlbCZuYnNwOzggcHJvdmlkZXMgYSBtb3JlIGVmZmljaWVudCBlbmNvZGluZyBh
dCBoaWdoIHJhdGVzIGdlbmVyYWxseSwKKyB0aG91Z2ggdGhlIG1vc3QgZWZmaWNpZW50IGxldmVs
IGZvciBhIHBhcnRpY3VsYXIgU0lMSyBmcmFtZSBtYXkgZGVwZW5kIG9uIHRoZQorIGV4YWN0IGRp
c3RyaWJ1dGlvbiBvZiB0aGUgY29kZWQgc3ltYm9scy4KK0FuIGVuY29kZXIgc2hvdWxkLCBidXQg
aXMgbm90IHJlcXVpcmVkIHRvLCB1c2UgdGhlIG1vc3QgZWZmaWNpZW50IHJhdGUgbGV2ZWwuCis8
L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3JhdGVfbGV2ZWxfcGRmcyIKKyB0aXRsZT0i
UERGcyBmb3IgdGhlIFJhdGUgTGV2ZWwiPgorPHR0Y29sPlNpZ25hbCBUeXBlPC90dGNvbD4KKzx0
dGNvbD5QREY8L3R0Y29sPgorPGM+SW5hY3RpdmUgb3IgVW52b2ljZWQ8L2M+Cis8Yz57MTUsIDUx
LCAxMiwgNDYsIDQ1LCAxMywgMzMsIDI3LCAxNH0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPgorPGM+
ezMzLCAzMCwgMzYsIDE3LCAzNCwgNDksIDE4LCAyMSwgMTh9LzI1NjwvYz4KKzwvdGV4dHRhYmxl
PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19wdWxzZV9jb3VudHMiIHRp
dGxlPSJQdWxzZXMgUGVyIFNoZWxsIEJsb2NrIj4KKzx0PgorVGhlIHRvdGFsIG51bWJlciBvZiBw
dWxzZXMgaW4gZWFjaCBvZiB0aGUgc2hlbGwgYmxvY2tzIGZvbGxvd3MgdGhlIHJhdGUgbGV2ZWwu
CitUaGUgcHVsc2UgY291bnRzIGZvciBhbGwgb2YgdGhlIHNoZWxsIGJsb2NrcyBhcmUgY29kZWQg
Y29uc2VjdXRpdmVseSwgYmVmb3JlCisgdGhlIGNvbnRlbnQgb2YgYW55IG9mIHRoZSBibG9ja3Mu
CitFYWNoIGJsb2NrIG1heSBoYXZlIGFueXdoZXJlIGZyb20gMCB0byAxNiBwdWxzZXMsIGluY2x1
c2l2ZSwgY29kZWQgdXNpbmcgdGhlCisgMTgtZW50cnkgUERGIGluIDx4cmVmIHRhcmdldD0ic2ls
a19wdWxzZV9jb3VudF9wZGZzIi8+IGNvcnJlc3BvbmRpbmcgdG8gdGhlCisgcmF0ZSBsZXZlbCBm
cm9tIDx4cmVmIHRhcmdldD0ic2lsa19yYXRlX2xldmVsIi8+LgorVGhlIHNwZWNpYWwgdmFsdWUg
MTcgaW5kaWNhdGVzIHRoYXQgdGhpcyBibG9jayBoYXMgb25lIG9yIG1vcmUgYWRkaXRpb25hbAor
IExTQnMgdG8gZGVjb2RlIGZvciBlYWNoIGNvZWZmaWNpZW50LgorSWYgdGhlIGRlY29kZXIgZW5j
b3VudGVycyB0aGlzIHZhbHVlLCBpdCBkZWNvZGVzIGFub3RoZXIgdmFsdWUgZm9yIHRoZSBhY3R1
YWwKKyBwdWxzZSBjb3VudCBvZiB0aGUgYmxvY2ssIGJ1dCB1c2VzIHRoZSBQREYgY29ycmVzcG9u
ZGluZyB0byB0aGUgc3BlY2lhbCByYXRlCisgbGV2ZWwmbmJzcDs5IGluc3RlYWQgb2YgdGhlIG5v
cm1hbCByYXRlIGxldmVsLgorVGhpcyBwcm9jZXNzIHJlcGVhdHMgdW50aWwgdGhlIGRlY29kZXIg
cmVhZHMgYSB2YWx1ZSBsZXNzIHRoYW4gMTcsIGFuZCBpdCB0aGVuCisgc2V0cyB0aGUgbnVtYmVy
IG9mIGV4dHJhIExTQnMgdXNlZCB0byB0aGUgbnVtYmVyIG9mIDE3J3MgZGVjb2RlZCBmb3IgdGhh
dAorIGJsb2NrLgorSWYgaXQgcmVhZHMgdGhlIHZhbHVlIDE3IHRlbiB0aW1lcywgdGhlbiB0aGUg
bmV4dCBpdGVyYXRpb24gdXNlcyB0aGUgc3BlY2lhbAorIHJhdGUgbGV2ZWwmbmJzcDsxMCBpbnN0
ZWFkIG9mIDkuCitUaGUgcHJvYmFiaWxpdHkgb2YgZGVjb2RpbmcgYSAxNyB3aGVuIHVzaW5nIHRo
ZSBQREYgZm9yIHJhdGUgbGV2ZWwmbmJzcDsxMCBpcworIHplcm8sIGVuc3VyaW5nIHRoYXQgdGhl
IG51bWJlciBvZiBMU0JzIGZvciBhIGJsb2NrIHdpbGwgbm90IGV4Y2VlZCAxMC4KK1RoZSBjdW11
bGF0aXZlIGRpc3RyaWJ1dGlvbiBmb3IgcmF0ZSBsZXZlbCZuYnNwOzEwIGlzIGp1c3QgYSBzaGlm
dGVkIHZlcnNpb24gb2YKKyB0aGF0IGZvciA5IGFuZCB0aHVzIGRvZXMgbm90IHJlcXVpcmUgYW55
IGFkZGl0aW9uYWwgc3RvcmFnZS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfcHVs
c2VfY291bnRfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgdGhlIFB1bHNlIENvdW50Ij4KKzx0dGNv
bD5SYXRlIExldmVsPC90dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29sPgorPGM+MDwvYz4KKzxjPnsx
MzEsIDc0LCAyNSwgOCwgMywgMywgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMX0v
MjU2PC9jPgorPGM+MTwvYz4KKzxjPns1OCwgOTMsIDYwLCAyMywgNywgMywgMSwgMSwgMSwgMSwg
MSwgMSwgMSwgMSwgMSwgMSwgMSwgMX0vMjU2PC9jPgorPGM+MjwvYz4KKzxjPns0MywgNTEsIDQ2
LCAzMywgMjQsIDE2LCAxMSwgOCwgNiwgMywgMywgMywgMiwgMSwgMSwgMiwgMSwgMn0vMjU2PC9j
PgorPGM+MzwvYz4KKzxjPnsxNywgNTIsIDcxLCA1NywgMzEsIDEyLCA1LCAxLCAxLCAxLCAxLCAx
LCAxLCAxLCAxLCAxLCAxLCAxfS8yNTY8L2M+Cis8Yz40PC9jPgorPGM+ezYsIDIxLCA0MSwgNTMs
IDQ5LCAzNSwgMjEsIDExLCA2LCAzLCAyLCAyLCAxLCAxLCAxLCAxLCAxLCAxfS8yNTY8L2M+Cis8
Yz41PC9jPgorPGM+ezcsIDE0LCAyMiwgMjgsIDI5LCAyOCwgMjUsIDIwLCAxNywgMTMsIDExLCA5
LCA3LCA1LCA0LCA0LCAzLCAxMH0vMjU2PC9jPgorPGM+NjwvYz4KKzxjPnsyLCA1LCAxNCwgMjks
IDQyLCA0NiwgNDEsIDMxLCAxOSwgMTEsIDYsIDMsIDIsIDEsIDEsIDEsIDEsIDF9LzI1NjwvYz4K
KzxjPjc8L2M+Cis8Yz57MSwgMiwgNCwgMTAsIDE5LCAyOSwgMzUsIDM3LCAzNCwgMjgsIDIwLCAx
NCwgOCwgNSwgNCwgMiwgMiwgMn0vMjU2PC9jPgorPGM+ODwvYz4KKzxjPnsxLCAyLCAyLCA1LCA5
LCAxNCwgMjAsIDI0LCAyNywgMjgsIDI2LCAyMywgMjAsIDE1LCAxMSwgOCwgNiwgMTV9LzI1Njwv
Yz4KKzxjPjk8L2M+Cis8Yz57MSwgMSwgMSwgNiwgMjcsIDU4LCA1NiwgMzksIDI1LCAxNCwgMTAs
IDYsIDMsIDMsIDIsIDEsIDEsIDJ9LzI1NjwvYz4KKzxjPjEwPC9jPgorPGM+ezIsIDEsIDYsIDI3
LCA1OCwgNTYsIDM5LCAyNSwgMTQsIDEwLCA2LCAzLCAzLCAyLCAxLCAxLCAyLCAwfS8yNTY8L2M+
Cis8L3RleHR0YWJsZT4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfcHVs
c2VfbG9jYXRpb25zIiB0aXRsZT0iUHVsc2UgTG9jYXRpb24gRGVjb2RpbmciPgorPHQ+CitUaGUg
bG9jYXRpb25zIG9mIHRoZSBwdWxzZXMgaW4gZWFjaCBzaGVsbCBibG9jayBmb2xsb3cgdGhlIHB1
bHNlIGNvdW50cywKKyBhcyBkZWNvZGVkIGJ5IHNpbGtfc2hlbGxfZGVjb2RlcigpIChzaGVsbF9j
b2Rlci5jKS4KK0FzIHdpdGggdGhlIHB1bHNlIGNvdW50cywgdGhlc2UgbG9jYXRpb25zIGFyZSBj
b2RlZCBmb3IgYWxsIHRoZSBzaGVsbCBibG9ja3MKKyBiZWZvcmUgYW55IG9mIHRoZSByZW1haW5p
bmcgaW5mb3JtYXRpb24gZm9yIGVhY2ggYmxvY2suCitVbmxpa2UgbWFueSBvdGhlciBjb2RlY3Ms
IFNJTEsgcGxhY2VzIG5vIHJlc3RyaWN0aW9uIG9uIHRoZSBkaXN0cmlidXRpb24gb2YKKyBwdWxz
ZXMgd2l0aGluIGEgc2hlbGwgYmxvY2suCitBbGwgb2YgdGhlIHB1bHNlcyBtYXkgYmUgcGxhY2Vk
IGluIGEgc2luZ2xlIGxvY2F0aW9uLCBvciBlYWNoIG9uZSBpbiBhIHVuaXF1ZQorIGxvY2F0aW9u
LCBvciBhbnl0aGluZyBpbiBiZXR3ZWVuLgorPC90PgorCis8dD4KK1RoZSBsb2NhdGlvbiBvZiBw
dWxzZXMgaXMgY29kZWQgYnkgcmVjdXJzaXZlbHkgcGFydGl0aW9uaW5nIGVhY2ggYmxvY2sgaW50
bworIGhhbHZlcywgYW5kIGNvZGluZyBob3cgbWFueSBwdWxzZXMgZmFsbCBvbiB0aGUgbGVmdCBz
aWRlIG9mIHRoZSBzcGxpdC4KK0FsbCByZW1haW5pbmcgcHVsc2VzIG11c3QgZmFsbCBvbiB0aGUg
cmlnaHQgc2lkZSBvZiB0aGUgc3BsaXQuCitUaGUgcHJvY2VzcyB0aGVuIHJlY3Vyc2VzIGludG8g
dGhlIGxlZnQgaGFsZiwgYW5kIGFmdGVyIHRoYXQgcmV0dXJucywgdGhlCisgcmlnaHQgaGFsZiAo
cHJlb3JkZXIgdHJhdmVyc2FsKS4KK1RoZSBQREYgdG8gdXNlIGlzIGNob3NlbiBieSB0aGUgc2l6
ZSBvZiB0aGUgY3VycmVudCBwYXJ0aXRpb24gKDE2LCA4LCA0LCBvciAyKQorIGFuZCB0aGUgbnVt
YmVyIG9mIHB1bHNlcyBpbiB0aGUgcGFydGl0aW9uICgxIHRvIDE2LCBpbmNsdXNpdmUpLgorVGFi
bGVzJm5ic3A7PHhyZWYgZm9ybWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfc2hlbGxfY29kZTNf
cGRmcyIvPgorIHRocm91Z2gmbmJzcDs8eHJlZiBmb3JtYXQ9ImNvdW50ZXIiIHRhcmdldD0ic2ls
a19zaGVsbF9jb2RlMF9wZGZzIi8+IGxpc3QgdGhlCisgUERGcyB1c2VkIGZvciBlYWNoIHBhcnRp
dGlvbiBzaXplIGFuZCBwdWxzZSBjb3VudC4KK1RoaXMgcHJvY2VzcyBza2lwcyBwYXJ0aXRpb25z
IHdpdGhvdXQgYW55IHB1bHNlcywgaS5lLiwgd2hlcmUgdGhlIGluaXRpYWwgcHVsc2UKKyBjb3Vu
dCBmcm9tIDx4cmVmIHRhcmdldD0ic2lsa19wdWxzZV9jb3VudHMiLz4gd2FzIHplcm8sIG9yIHdo
ZXJlIHRoZSBzcGxpdCBpbgorIHRoZSBwcmlvciBsZXZlbCBpbmRpY2F0ZWQgdGhhdCBhbGwgb2Yg
dGhlIHB1bHNlcyBmZWxsIG9uIHRoZSBvdGhlciBzaWRlLgorVGhlc2UgcGFydGl0aW9ucyBoYXZl
IG5vdGhpbmcgdG8gY29kZSwgc28gdGhleSByZXF1aXJlIG5vIFBERi4KKzwvdD4KKworPHRleHR0
YWJsZSBhbmNob3I9InNpbGtfc2hlbGxfY29kZTNfcGRmcyIKKyB0aXRsZT0iUERGcyBmb3IgUHVs
c2UgQ291bnQgU3BsaXQsIDE2IFNhbXBsZSBQYXJ0aXRpb25zIj4KKzx0dGNvbD5QdWxzZSBDb3Vu
dDwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNvbD4KKyA8Yz4xPC9jPiA8Yz57MTI2LCAxMzB9LzI1
NjwvYz4KKyA8Yz4yPC9jPiA8Yz57NTYsIDE0MiwgNTh9LzI1NjwvYz4KKyA8Yz4zPC9jPiA8Yz57
MjUsIDEwMSwgMTA0LCAyNn0vMjU2PC9jPgorIDxjPjQ8L2M+IDxjPnsxMiwgNjAsIDEwOCwgNjQs
IDEyfS8yNTY8L2M+CisgPGM+NTwvYz4gPGM+ezcsIDM1LCA4NCwgODcsIDM3LCA2fS8yNTY8L2M+
CisgPGM+NjwvYz4gPGM+ezQsIDIwLCA1OSwgODYsIDYzLCAyMSwgM30vMjU2PC9jPgorIDxjPjc8
L2M+IDxjPnszLCAxMiwgMzgsIDcyLCA3NSwgNDIsIDEyLCAyfS8yNTY8L2M+CisgPGM+ODwvYz4g
PGM+ezIsIDgsIDI1LCA1NCwgNzMsIDU5LCAyNywgNywgMX0vMjU2PC9jPgorIDxjPjk8L2M+IDxj
PnsyLCA1LCAxNywgMzksIDYzLCA2NSwgNDIsIDE4LCA0LCAxfS8yNTY8L2M+Cis8Yz4xMDwvYz4g
PGM+ezEsIDQsIDEyLCAyOCwgNDksIDYzLCA1NCwgMzAsIDExLCAzLCAxfS8yNTY8L2M+Cis8Yz4x
MTwvYz4gPGM+ezEsIDQsIDgsIDIwLCAzNywgNTUsIDU3LCA0MSwgMjIsIDgsIDIsIDF9LzI1Njwv
Yz4KKzxjPjEyPC9jPiA8Yz57MSwgMywgNywgMTUsIDI4LCA0NCwgNTMsIDQ4LCAzMywgMTYsIDYs
IDEsIDF9LzI1NjwvYz4KKzxjPjEzPC9jPiA8Yz57MSwgMiwgNiwgMTIsIDIxLCAzNSwgNDcsIDQ4
LCA0MCwgMjUsIDEyLCA1LCAxLCAxfS8yNTY8L2M+Cis8Yz4xNDwvYz4gPGM+ezEsIDEsIDQsIDEw
LCAxNywgMjcsIDM3LCA0NywgNDMsIDMzLCAyMSwgOSwgNCwgMSwgMX0vMjU2PC9jPgorPGM+MTU8
L2M+IDxjPnsxLCAxLCAxLCA4LCAxNCwgMjIsIDMzLCA0MCwgNDMsIDM4LCAyOCwgMTYsIDgsIDEs
IDEsIDF9LzI1NjwvYz4KKzxjPjE2PC9jPiA8Yz57MSwgMSwgMSwgMSwgMTMsIDE4LCAyNywgMzYs
IDQxLCA0MSwgMzQsIDI0LCAxNCwgMSwgMSwgMSwgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisK
Kzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3NoZWxsX2NvZGUyX3BkZnMiCisgdGl0bGU9IlBERnMg
Zm9yIFB1bHNlIENvdW50IFNwbGl0LCA4IFNhbXBsZSBQYXJ0aXRpb25zIj4KKzx0dGNvbD5QdWxz
ZSBDb3VudDwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNvbD4KKyA8Yz4xPC9jPiA8Yz57MTI3LCAx
Mjl9LzI1NjwvYz4KKyA8Yz4yPC9jPiA8Yz57NTMsIDE0OSwgNTR9LzI1NjwvYz4KKyA8Yz4zPC9j
PiA8Yz57MjIsIDEwNSwgMTA2LCAyM30vMjU2PC9jPgorIDxjPjQ8L2M+IDxjPnsxMSwgNjEsIDEx
MSwgNjMsIDEwfS8yNTY8L2M+CisgPGM+NTwvYz4gPGM+ezYsIDM1LCA4NiwgODgsIDM2LCA1fS8y
NTY8L2M+CisgPGM+NjwvYz4gPGM+ezQsIDIwLCA1OSwgODcsIDYyLCAyMSwgM30vMjU2PC9jPgor
IDxjPjc8L2M+IDxjPnszLCAxMywgNDAsIDcxLCA3MywgNDEsIDEzLCAyfS8yNTY8L2M+CisgPGM+
ODwvYz4gPGM+ezMsIDksIDI3LCA1MywgNzAsIDU2LCAyOCwgOSwgMX0vMjU2PC9jPgorIDxjPjk8
L2M+IDxjPnszLCA4LCAxOSwgMzcsIDU3LCA2MSwgNDQsIDIwLCA2LCAxfS8yNTY8L2M+Cis8Yz4x
MDwvYz4gPGM+ezMsIDcsIDE1LCAyOCwgNDQsIDU0LCA0OSwgMzMsIDE3LCA1LCAxfS8yNTY8L2M+
Cis8Yz4xMTwvYz4gPGM+ezEsIDcsIDEzLCAyMiwgMzQsIDQ2LCA0OCwgMzgsIDI4LCAxNCwgNCwg
MX0vMjU2PC9jPgorPGM+MTI8L2M+IDxjPnsxLCAxLCAxMSwgMjIsIDI3LCAzNSwgNDIsIDQ3LCAz
MywgMjUsIDEwLCAxLCAxfS8yNTY8L2M+Cis8Yz4xMzwvYz4gPGM+ezEsIDEsIDYsIDE0LCAyNiwg
MzcsIDQzLCA0MywgMzcsIDI2LCAxNCwgNiwgMSwgMX0vMjU2PC9jPgorPGM+MTQ8L2M+IDxjPnsx
LCAxLCA0LCAxMCwgMjAsIDMxLCA0MCwgNDIsIDQwLCAzMSwgMjAsIDEwLCA0LCAxLCAxfS8yNTY8
L2M+Cis8Yz4xNTwvYz4gPGM+ezEsIDEsIDMsIDgsIDE2LCAyNiwgMzUsIDM4LCAzOCwgMzUsIDI2
LCAxNiwgOCwgMywgMSwgMX0vMjU2PC9jPgorPGM+MTY8L2M+IDxjPnsxLCAxLCAyLCA2LCAxMiwg
MjEsIDMwLCAzNiwgMzgsIDM2LCAzMCwgMjEsIDEyLCA2LCAyLCAxLCAxfS8yNTY8L2M+Cis8L3Rl
eHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9InNpbGtfc2hlbGxfY29kZTFfcGRmcyIKKyB0
aXRsZT0iUERGcyBmb3IgUHVsc2UgQ291bnQgU3BsaXQsIDQgU2FtcGxlIFBhcnRpdGlvbnMiPgor
PHR0Y29sPlB1bHNlIENvdW50PC90dGNvbD4KKzx0dGNvbD5QREY8L3R0Y29sPgorIDxjPjE8L2M+
IDxjPnsxMjcsIDEyOX0vMjU2PC9jPgorIDxjPjI8L2M+IDxjPns0OSwgMTU3LCA1MH0vMjU2PC9j
PgorIDxjPjM8L2M+IDxjPnsyMCwgMTA3LCAxMDksIDIwfS8yNTY8L2M+CisgPGM+NDwvYz4gPGM+
ezExLCA2MCwgMTEzLCA2MiwgMTB9LzI1NjwvYz4KKyA8Yz41PC9jPiA8Yz57NywgMzYsIDg0LCA4
NywgMzYsIDZ9LzI1NjwvYz4KKyA8Yz42PC9jPiA8Yz57NiwgMjQsIDU3LCA4MiwgNjAsIDIzLCA0
fS8yNTY8L2M+CisgPGM+NzwvYz4gPGM+ezUsIDE4LCAzOSwgNjQsIDY4LCA0MiwgMTYsIDR9LzI1
NjwvYz4KKyA8Yz44PC9jPiA8Yz57NiwgMTQsIDI5LCA0NywgNjEsIDUyLCAzMCwgMTQsIDN9LzI1
NjwvYz4KKyA8Yz45PC9jPiA8Yz57MSwgMTUsIDIzLCAzNSwgNTEsIDUwLCA0MCwgMzAsIDEwLCAx
fS8yNTY8L2M+Cis8Yz4xMDwvYz4gPGM+ezEsIDEsIDIxLCAzMiwgNDIsIDUyLCA0NiwgNDEsIDE4
LCAxLCAxfS8yNTY8L2M+Cis8Yz4xMTwvYz4gPGM+ezEsIDYsIDE2LCAyNywgMzYsIDQyLCA0Miwg
MzYsIDI3LCAxNiwgNiwgMX0vMjU2PC9jPgorPGM+MTI8L2M+IDxjPnsxLCA1LCAxMiwgMjEsIDMx
LCAzOCwgNDAsIDM4LCAzMSwgMjEsIDEyLCA1LCAxfS8yNTY8L2M+Cis8Yz4xMzwvYz4gPGM+ezEs
IDMsIDksIDE3LCAyNiwgMzQsIDM4LCAzOCwgMzQsIDI2LCAxNywgOSwgMywgMX0vMjU2PC9jPgor
PGM+MTQ8L2M+IDxjPnsxLCAzLCA3LCAxNCwgMjIsIDI5LCAzNCwgMzYsIDM0LCAyOSwgMjIsIDE0
LCA3LCAzLCAxfS8yNTY8L2M+Cis8Yz4xNTwvYz4gPGM+ezEsIDIsIDUsIDExLCAxOCwgMjUsIDMx
LCAzNSwgMzUsIDMxLCAyNSwgMTgsIDExLCA1LCAyLCAxfS8yNTY8L2M+Cis8Yz4xNjwvYz4gPGM+
ezEsIDEsIDQsIDksIDE1LCAyMSwgMjgsIDMyLCAzNCwgMzIsIDI4LCAyMSwgMTUsIDksIDQsIDEs
IDF9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2lsa19zaGVs
bF9jb2RlMF9wZGZzIgorIHRpdGxlPSJQREZzIGZvciBQdWxzZSBDb3VudCBTcGxpdCwgMiBTYW1w
bGUgUGFydGl0aW9ucyI+Cis8dHRjb2w+UHVsc2UgQ291bnQ8L3R0Y29sPgorPHR0Y29sPlBERjwv
dHRjb2w+CisgPGM+MTwvYz4gPGM+ezEyOCwgMTI4fS8yNTY8L2M+CisgPGM+MjwvYz4gPGM+ezQy
LCAxNzIsIDQyfS8yNTY8L2M+CisgPGM+MzwvYz4gPGM+ezIxLCAxMDcsIDEwNywgMjF9LzI1Njwv
Yz4KKyA8Yz40PC9jPiA8Yz57MTIsIDYwLCAxMTIsIDYxLCAxMX0vMjU2PC9jPgorIDxjPjU8L2M+
IDxjPns4LCAzNCwgODYsIDg2LCAzNSwgN30vMjU2PC9jPgorIDxjPjY8L2M+IDxjPns4LCAyMywg
NTUsIDkwLCA1NSwgMjAsIDV9LzI1NjwvYz4KKyA8Yz43PC9jPiA8Yz57NSwgMTUsIDM4LCA3Miwg
NzIsIDM2LCAxNSwgM30vMjU2PC9jPgorIDxjPjg8L2M+IDxjPns2LCAxMiwgMjcsIDUyLCA3Nywg
NDcsIDIwLCAxMCwgNX0vMjU2PC9jPgorIDxjPjk8L2M+IDxjPns2LCAxOSwgMjgsIDM1LCA0MCwg
NDAsIDM1LCAyOCwgMTksIDZ9LzI1NjwvYz4KKzxjPjEwPC9jPiA8Yz57NCwgMTQsIDIyLCAzMSwg
MzcsIDQwLCAzNywgMzEsIDIyLCAxNCwgNH0vMjU2PC9jPgorPGM+MTE8L2M+IDxjPnszLCAxMCwg
MTgsIDI2LCAzMywgMzgsIDM4LCAzMywgMjYsIDE4LCAxMCwgM30vMjU2PC9jPgorPGM+MTI8L2M+
IDxjPnsyLCA4LCAxMywgMjEsIDI5LCAzNiwgMzgsIDM2LCAyOSwgMjEsIDEzLCA4LCAyfS8yNTY8
L2M+Cis8Yz4xMzwvYz4gPGM+ezEsIDUsIDEwLCAxNywgMjUsIDMyLCAzOCwgMzgsIDMyLCAyNSwg
MTcsIDEwLCA1LCAxfS8yNTY8L2M+Cis8Yz4xNDwvYz4gPGM+ezEsIDQsIDcsIDEzLCAyMSwgMjks
IDM1LCAzNiwgMzUsIDI5LCAyMSwgMTMsIDcsIDQsIDF9LzI1NjwvYz4KKzxjPjE1PC9jPiA8Yz57
MSwgMiwgNSwgMTAsIDE3LCAyNSwgMzIsIDM2LCAzNiwgMzIsIDI1LCAxNywgMTAsIDUsIDIsIDF9
LzI1NjwvYz4KKzxjPjE2PC9jPiA8Yz57MSwgMiwgNCwgNywgMTMsIDIxLCAyOCwgMzQsIDM2LCAz
NCwgMjgsIDIxLCAxMywgNywgNCwgMiwgMX0vMjU2PC9jPgorPC90ZXh0dGFibGU+CisKKzwvc2Vj
dGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX3NoZWxsX2xzYiIgdGl0bGU9IkxTQiBEZWNv
ZGluZyI+Cis8dD4KK0FmdGVyIHRoZSBkZWNvZGVyIHJlYWRzIHRoZSBwdWxzZSBsb2NhdGlvbnMg
Zm9yIGFsbCBibG9ja3MsIGl0IHJlYWRzIHRoZSBMU0JzCisgKGlmIGFueSkgZm9yIGVhY2ggYmxv
Y2sgaW4gdHVybi4KK0luc2lkZSBlYWNoIGJsb2NrLCBpdCByZWFkcyBhbGwgdGhlIExTQnMgZm9y
IGVhY2ggY29lZmZpY2llbnQgaW4gdHVybiwgZXZlbgorIHRob3NlIHdoZXJlIG5vIHB1bHNlcyB3
ZXJlIGFsbG9jYXRlZCwgYmVmb3JlIHByb2NlZWRpbmcgdG8gdGhlIG5leHQgb25lLgorRm9yIDEw
Jm5ic3A7bXMgTUIgZnJhbWVzLCBpdCByZWFkcyBMU0JzIGV2ZW4gZm9yIHRoZSBleHRyYSA4Jm5i
c3A7c2FtcGxlcyBpbgorIHRoZSBsYXN0IGJsb2NrLgorVGhlIExTQnMgYXJlIGNvZGVkIGZyb20g
bW9zdCBzaWduaWZpY2FudCB0byBsZWFzdCBzaWduaWZpY2FudCwgYW5kIHRoZXkgYWxsIHVzZQor
IHRoZSBQREYgaW4gPHhyZWYgdGFyZ2V0PSJzaWxrX3NoZWxsX2xzYl9wZGYiLz4uCis8L3Q+CisK
Kzx0ZXh0dGFibGUgYW5jaG9yPSJzaWxrX3NoZWxsX2xzYl9wZGYiIHRpdGxlPSJQREYgZm9yIEV4
Y2l0YXRpb24gTFNCcyI+Cis8dHRjb2w+UERGPC90dGNvbD4KKzxjPnsxMzYsIDEyMH0vMjU2PC9j
PgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlIG51bWJlciBvZiBMU0JzIHJlYWQgZm9yIGVhY2gg
Y29lZmZpY2llbnQgaW4gYSBibG9jayBpcyBkZXRlcm1pbmVkIGluCisgPHhyZWYgdGFyZ2V0PSJz
aWxrX3B1bHNlX2NvdW50cyIvPi4KK1RoZSBtYWduaXR1ZGUgb2YgdGhlIGNvZWZmaWNpZW50IGlz
IGluaXRpYWxseSBlcXVhbCB0byB0aGUgbnVtYmVyIG9mIHB1bHNlcworIHBsYWNlZCBhdCB0aGF0
IGxvY2F0aW9uIGluIDx4cmVmIHRhcmdldD0ic2lsa19wdWxzZV9sb2NhdGlvbnMiLz4uCitBcyBl
YWNoIExTQiBpcyBkZWNvZGVkLCB0aGUgbWFnbml0dWRlIGlzIGRvdWJsZWQsIGFuZCB0aGVuIHRo
ZSB2YWx1ZSBvZiB0aGUgTFNCCisgYWRkZWQgdG8gaXQsIHRvIG9idGFpbiBhbiB1cGRhdGVkIG1h
Z25pdHVkZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX3NpZ25z
IiB0aXRsZT0iU2lnbiBEZWNvZGluZyI+Cis8dD4KK0FmdGVyIGRlY29kaW5nIHRoZSBwdWxzZSBs
b2NhdGlvbnMgYW5kIHRoZSBMU0JzLCB0aGUgZGVjb2RlciBrbm93cyB0aGUKKyBtYWduaXR1ZGUg
b2YgZWFjaCBjb2VmZmljaWVudCBpbiB0aGUgZXhjaXRhdGlvbi4KK0l0IHRoZW4gZGVjb2RlcyBh
IHNpZ24gZm9yIGFsbCBjb2VmZmljaWVudHMgd2l0aCBhIG5vbi16ZXJvIG1hZ25pdHVkZSwgdXNp
bmcKKyBvbmUgb2YgdGhlIFBERnMgZnJvbSA8eHJlZiB0YXJnZXQ9InNpbGtfc2lnbl9wZGZzIi8+
LgorSWYgdGhlIHZhbHVlIGRlY29kZWQgaXMgMCwgdGhlbiB0aGUgY29lZmZpY2llbnQgbWFnbml0
dWRlIGlzIG5lZ2F0ZWQuCitPdGhlcndpc2UsIGl0IHJlbWFpbnMgcG9zaXRpdmUuCis8L3Q+CisK
Kzx0PgorVGhlIGRlY29kZXIgY2hvb3NlcyB0aGUgUERGIGZvciB0aGUgc2lnbiBiYXNlZCBvbiB0
aGUgc2lnbmFsIHR5cGUgYW5kCisgcXVhbnRpemF0aW9uIG9mZnNldCB0eXBlIChmcm9tIDx4cmVm
IHRhcmdldD0ic2lsa19mcmFtZV90eXBlIi8+KSBhbmQgdGhlCisgbnVtYmVyIG9mIHB1bHNlcyBp
biB0aGUgYmxvY2sgKGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxrX3B1bHNlX2NvdW50cyIvPikuCitU
aGUgbnVtYmVyIG9mIHB1bHNlcyBpbiB0aGUgYmxvY2sgZG9lcyBub3QgdGFrZSBpbnRvIGFjY291
bnQgYW55IExTQnMuCitNb3N0IFBERnMgYXJlIHNrZXdlZCB0b3dhcmRzIG5lZ2F0aXZlIHNpZ25z
IGJlY2F1c2Ugb2YgdGhlIHF1YW50aXphdGlvbiBvZmZzZXQsCisgYnV0IHRoZSBQREZzIGZvciB6
ZXJvIHB1bHNlcyBhcmUgaGlnaGx5IHNrZXdlZCB0b3dhcmRzIHBvc2l0aXZlIHNpZ25zLgorSWYg
YSBibG9jayBjb250YWlucyBtYW55IHBvc2l0aXZlIGNvZWZmaWNpZW50cywgaXQgaXMgc29tZXRp
bWVzIGJlbmVmaWNpYWwgdG8KKyBjb2RlIGl0IHNvbGVseSB1c2luZyBMU0JzIChpLmUuLCB3aXRo
IHplcm8gcHVsc2VzKSwgc2luY2UgdGhlIGVuY29kZXIgbWF5IGJlCisgYWJsZSB0byBzYXZlIGVu
b3VnaCBiaXRzIG9uIHRoZSBzaWducyB0byBqdXN0aWZ5IHRoZSBsZXNzIGVmZmljaWVudAorIGNv
ZWZmaWNpZW50IG1hZ25pdHVkZSBlbmNvZGluZy4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9
InNpbGtfc2lnbl9wZGZzIgorIHRpdGxlPSJQREZzIGZvciBFeGNpdGF0aW9uIFNpZ25zIj4KKzx0
dGNvbD5TaWduYWwgVHlwZTwvdHRjb2w+Cis8dHRjb2w+UXVhbnRpemF0aW9uIE9mZnNldCBUeXBl
PC90dGNvbD4KKzx0dGNvbD5QdWxzZSBDb3VudDwvdHRjb2w+Cis8dHRjb2w+UERGPC90dGNvbD4K
KzxjPkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4wPC9jPiAgICAgICAgIDxjPnsyLCAyNTR9
LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4xPC9jPiAgICAgICAgIDxj
PnsyMDcsIDQ5fS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+TG93PC9jPiAgPGM+MjwvYz4g
ICAgICAgICA8Yz57MTg5LCA2N30vMjU2PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkxvdzwvYz4g
IDxjPjM8L2M+ICAgICAgICAgPGM+ezE3OSwgNzd9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8
Yz5Mb3c8L2M+ICA8Yz40PC9jPiAgICAgICAgIDxjPnsxNzQsIDgyfS8yNTY8L2M+Cis8Yz5JbmFj
dGl2ZTwvYz4gPGM+TG93PC9jPiAgPGM+NTwvYz4gICAgICAgICA8Yz57MTYzLCA5M30vMjU2PC9j
PgorPGM+SW5hY3RpdmU8L2M+IDxjPkxvdzwvYz4gIDxjPjYgb3IgbW9yZTwvYz4gPGM+ezE1Nywg
OTl9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5IaWdoPC9jPiA8Yz4wPC9jPiAgICAgICAg
IDxjPns1OCwgMTk4fS8yNTY8L2M+Cis8Yz5JbmFjdGl2ZTwvYz4gPGM+SGlnaDwvYz4gPGM+MTwv
Yz4gICAgICAgICA8Yz57MjQ1LCAxMX0vMjU2PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkhpZ2g8
L2M+IDxjPjI8L2M+ICAgICAgICAgPGM+ezIzOCwgMTh9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9j
PiA8Yz5IaWdoPC9jPiA8Yz4zPC9jPiAgICAgICAgIDxjPnsyMzIsIDI0fS8yNTY8L2M+Cis8Yz5J
bmFjdGl2ZTwvYz4gPGM+SGlnaDwvYz4gPGM+NDwvYz4gICAgICAgICA8Yz57MjI1LCAzMX0vMjU2
PC9jPgorPGM+SW5hY3RpdmU8L2M+IDxjPkhpZ2g8L2M+IDxjPjU8L2M+ICAgICAgICAgPGM+ezIy
MCwgMzZ9LzI1NjwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5IaWdoPC9jPiA8Yz42IG9yIG1vcmU8
L2M+IDxjPnsyMTEsIDQ1fS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+TG93PC9jPiAgPGM+
MDwvYz4gICAgICAgICA8Yz57MSwgMjU1fS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+TG93
PC9jPiAgPGM+MTwvYz4gICAgICAgICA8Yz57MjEwLCA0Nn0vMjU2PC9jPgorPGM+VW52b2ljZWQ8
L2M+IDxjPkxvdzwvYz4gIDxjPjI8L2M+ICAgICAgICAgPGM+ezE5MCwgNjZ9LzI1NjwvYz4KKzxj
PlVudm9pY2VkPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4zPC9jPiAgICAgICAgIDxjPnsxNzgsIDc4fS8y
NTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+TG93PC9jPiAgPGM+NDwvYz4gICAgICAgICA8Yz57
MTY5LCA4N30vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkxvdzwvYz4gIDxjPjU8L2M+ICAg
ICAgICAgPGM+ezE2MiwgOTR9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5Mb3c8L2M+ICA8
Yz42IG9yIG1vcmU8L2M+IDxjPnsxNTIsIDEwNH0vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxj
PkhpZ2g8L2M+IDxjPjA8L2M+ICAgICAgICAgPGM+ezQ4LCAyMDh9LzI1NjwvYz4KKzxjPlVudm9p
Y2VkPC9jPiA8Yz5IaWdoPC9jPiA8Yz4xPC9jPiAgICAgICAgIDxjPnsyNDIsIDE0fS8yNTY8L2M+
Cis8Yz5VbnZvaWNlZDwvYz4gPGM+SGlnaDwvYz4gPGM+MjwvYz4gICAgICAgICA8Yz57MjM1LCAy
MX0vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+IDxjPkhpZ2g8L2M+IDxjPjM8L2M+ICAgICAgICAg
PGM+ezIyNCwgMzJ9LzI1NjwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5IaWdoPC9jPiA8Yz40PC9j
PiAgICAgICAgIDxjPnsyMTQsIDQyfS8yNTY8L2M+Cis8Yz5VbnZvaWNlZDwvYz4gPGM+SGlnaDwv
Yz4gPGM+NTwvYz4gICAgICAgICA8Yz57MjA1LCA1MX0vMjU2PC9jPgorPGM+VW52b2ljZWQ8L2M+
IDxjPkhpZ2g8L2M+IDxjPjYgb3IgbW9yZTwvYz4gPGM+ezE5MCwgNjZ9LzI1NjwvYz4KKzxjPlZv
aWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICA8Yz4wPC9jPiAgICAgICAgIDxjPnsxLCAyNTV9LzI1Njwv
Yz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICA8Yz4xPC9jPiAgICAgICAgIDxjPnsxNjIs
IDk0fS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+TG93PC9jPiAgPGM+MjwvYz4gICAgICAg
ICA8Yz57MTUyLCAxMDR9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICA8Yz4z
PC9jPiAgICAgICAgIDxjPnsxNDcsIDEwOX0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkxv
dzwvYz4gIDxjPjQ8L2M+ICAgICAgICAgPGM+ezE0NCwgMTEyfS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8
L2M+ICAgPGM+TG93PC9jPiAgPGM+NTwvYz4gICAgICAgICA8Yz57MTQxLCAxMTV9LzI1NjwvYz4K
KzxjPlZvaWNlZDwvYz4gICA8Yz5Mb3c8L2M+ICA8Yz42IG9yIG1vcmU8L2M+IDxjPnsxMzgsIDEx
OH0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+IDxjPjA8L2M+ICAgICAgICAg
PGM+ezgsIDI0OH0vMjU2PC9jPgorPGM+Vm9pY2VkPC9jPiAgIDxjPkhpZ2g8L2M+IDxjPjE8L2M+
ICAgICAgICAgPGM+ezIwMywgNTN9LzI1NjwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5IaWdoPC9j
PiA8Yz4yPC9jPiAgICAgICAgIDxjPnsxODcsIDY5fS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAg
PGM+SGlnaDwvYz4gPGM+MzwvYz4gICAgICAgICA8Yz57MTc2LCA4MH0vMjU2PC9jPgorPGM+Vm9p
Y2VkPC9jPiAgIDxjPkhpZ2g8L2M+IDxjPjQ8L2M+ICAgICAgICAgPGM+ezE2OCwgODh9LzI1Njwv
Yz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5IaWdoPC9jPiA8Yz41PC9jPiAgICAgICAgIDxjPnsxNjEs
IDk1fS8yNTY8L2M+Cis8Yz5Wb2ljZWQ8L2M+ICAgPGM+SGlnaDwvYz4gPGM+NiBvciBtb3JlPC9j
PiA8Yz57MTU0LCAxMDJ9LzI1NjwvYz4KKzwvdGV4dHRhYmxlPgorCis8L3NlY3Rpb24+CisKKzxz
ZWN0aW9uIGFuY2hvcj0ic2lsa19leGNpdGF0aW9uX3JlY29uc3RydWN0aW9uIgorIHRpdGxlPSJS
ZWNvbnN0cnVjdGluZyB0aGUgRXhjaXRhdGlvbiI+CisKKzx0PgorQWZ0ZXIgdGhlIHNpZ25zIGhh
dmUgYmVlbiByZWFkLCB0aGVyZSBpcyBlbm91Z2ggaW5mb3JtYXRpb24gdG8gcmVjb25zdHJ1Y3Qg
dGhlCisgY29tcGxldGUgZXhjaXRhdGlvbiBzaWduYWwuCitUaGlzIHJlcXVpcmVzIGFkZGluZyBh
IGNvbnN0YW50IHF1YW50aXphdGlvbiBvZmZzZXQgdG8gZWFjaCBub24temVybyBzYW1wbGUsCisg
YW5kIHRoZW4gcHNldWRvcmFuZG9tbHkgaW52ZXJ0aW5nIGFuZCBvZmZzZXR0aW5nIGV2ZXJ5IHNh
bXBsZS4KK1RoZSBjb25zdGFudCBxdWFudGl6YXRpb24gb2Zmc2V0IHZhcmllcyBkZXBlbmRpbmcg
b24gdGhlIHNpZ25hbCB0eXBlIGFuZAorIHF1YW50aXphdGlvbiBvZmZzZXQgdHlwZSAoc2VlIDx4
cmVmIHRhcmdldD0ic2lsa19mcmFtZV90eXBlIi8+KS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNo
b3I9InNpbGtfcXVhbnRpemF0aW9uX29mZnNldHMiCisgdGl0bGU9IkV4Y2l0YXRpb24gUXVhbnRp
emF0aW9uIE9mZnNldHMiPgorPHR0Y29sIGFsaWduPSJsZWZ0Ij5TaWduYWwgVHlwZTwvdHRjb2w+
Cis8dHRjb2wgYWxpZ249ImxlZnQiPlF1YW50aXphdGlvbiBPZmZzZXQgVHlwZTwvdHRjb2w+Cis8
dHRjb2wgYWxpZ249InJpZ2h0Ij5RdWFudGl6YXRpb24gT2Zmc2V0IChRMjMpPC90dGNvbD4KKzxj
PkluYWN0aXZlPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4yNTwvYz4KKzxjPkluYWN0aXZlPC9jPiA8Yz5I
aWdoPC9jPiA8Yz42MDwvYz4KKzxjPlVudm9pY2VkPC9jPiA8Yz5Mb3c8L2M+ICA8Yz4yNTwvYz4K
KzxjPlVudm9pY2VkPC9jPiA8Yz5IaWdoPC9jPiA8Yz42MDwvYz4KKzxjPlZvaWNlZDwvYz4gICA8
Yz5Mb3c8L2M+ICAgPGM+ODwvYz4KKzxjPlZvaWNlZDwvYz4gICA8Yz5IaWdoPC9jPiA8Yz4yNTwv
Yz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK0xldCBlX3Jhd1tpXSBiZSB0aGUgcmF3IGV4Y2l0YXRp
b24gdmFsdWUgYXQgcG9zaXRpb24gaSwgd2l0aCBhIG1hZ25pdHVkZQorIGNvbXBvc2VkIG9mIHRo
ZSBwdWxzZXMgYXQgdGhhdCBsb2NhdGlvbiAoc2VlCisgPHhyZWYgdGFyZ2V0PSJzaWxrX3B1bHNl
X2xvY2F0aW9ucyIvPikgY29tYmluZWQgd2l0aCBhbnkgYWRkaXRpb25hbCBMU0JzIChzZWUKKyA8
eHJlZiB0YXJnZXQ9InNpbGtfc2hlbGxfbHNiIi8+KSwgYW5kIHdpdGggdGhlIGNvcnJlc3BvbmRp
bmcgc2lnbiBkZWNvZGVkIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX3NpZ25zIi8+LgorQWRkaXRp
b25hbGx5LCBsZXQgc2VlZCBiZSB0aGUgY3VycmVudCBwc2V1ZG9yYW5kb20gc2VlZCwgd2hpY2gg
aXMgaW5pdGlhbGl6ZWQKKyB0byB0aGUgdmFsdWUgZGVjb2RlZCBmcm9tIDx4cmVmIHRhcmdldD0i
c2lsa19zZWVkIi8+IGZvciB0aGUgZmlyc3Qgc2FtcGxlIGluCisgdGhlIGN1cnJlbnQgU0lMSyBm
cmFtZSwgYW5kIHVwZGF0ZWQgZm9yIGVhY2ggc3Vic2VxdWVudCBzYW1wbGUgYWNjb3JkaW5nIHRv
CisgdGhlIHByb2NlZHVyZSBiZWxvdy4KK0ZpbmFsbHksIGxldCBvZmZzZXRfUTIzIGJlIHRoZSBx
dWFudGl6YXRpb24gb2Zmc2V0IGZyb20KKyA8eHJlZiB0YXJnZXQ9InNpbGtfcXVhbnRpemF0aW9u
X29mZnNldHMiLz4uCitUaGVuIHRoZSBmb2xsb3dpbmcgcHJvY2VkdXJlIHByb2R1Y2VzIHRoZSBm
aW5hbCByZWNvbnN0cnVjdGVkIGV4Y2l0YXRpb24gdmFsdWUsCisgZV9RMjNbaV06Cis8ZmlndXJl
IGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCitlX1Ey
M1tpXSA9IChlX3Jhd1tpXSA8PCA4KSAtIHNpZ24oZV9yYXdbaV0pKjIwICsgb2Zmc2V0X1EyMzsK
KyAgICBzZWVkID0gKDE5NjMxNDE2NSpzZWVkICsgOTA3NjMzNTE1KSAmIDB4RkZGRkZGRkY7Citl
X1EyM1tpXSA9IChzZWVkICYgMHg4MDAwMDAwMCkgPyAtZV9RMjNbaV0gOiBlX1EyM1tpXTsKKyAg
ICBzZWVkID0gKHNlZWQgKyBlX3Jhd1tpXSkgJiAweEZGRkZGRkZGOworXV0+PC9hcnR3b3JrPgor
PC9maWd1cmU+CitXaGVuIGVfcmF3W2ldIGlzIHplcm8sIHNpZ24oKSByZXR1cm5zIDAgYnkgdGhl
IGRlZmluaXRpb24gaW4KKyA8eHJlZiB0YXJnZXQ9InNpZ24iLz4sIHNvIHRoZSBmYWN0b3Igb2Yg
MjAgZG9lcyBub3QgZ2V0IGFkZGVkLgorVGhlIGZpbmFsIGVfUTIzW2ldIHZhbHVlIG1heSByZXF1
aXJlIG1vcmUgdGhhbiAxNiBiaXRzIHBlciBzYW1wbGUsIGJ1dCB3aWxsIG5vdAorIHJlcXVpcmUg
bW9yZSB0aGFuIDIzLCBpbmNsdWRpbmcgdGhlIHNpZ24uCis8L3Q+CisKKzwvc2VjdGlvbj4KKwor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNpbGtfZnJhbWVfcmVjb25zdHJ1Y3Rpb24i
IHRvYz0iaW5jbHVkZSIKKyB0aXRsZT0iU0lMSyBGcmFtZSBSZWNvbnN0cnVjdGlvbiI+CisKKzx0
PgorVGhlIHJlbWFpbmRlciBvZiB0aGUgcmVjb25zdHJ1Y3Rpb24gcHJvY2VzcyBmb3IgdGhlIGZy
YW1lIGRvZXMgbm90IG5lZWQgdG8gYmUKKyBiaXQtZXhhY3QsIGFzIHNtYWxsIGVycm9ycyBzaG91
bGQgb25seSBpbnRyb2R1Y2UgcHJvcG9ydGlvbmFsbHkgc21hbGwKKyBkaXN0b3J0aW9ucy4KK0Fs
dGhvdWdoIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gb25seSBpbmNsdWRlcyBhIGZpeGVk
LXBvaW50IHZlcnNpb24gb2YKKyB0aGUgcmVtYWluaW5nIHN0ZXBzLCB0aGlzIHNlY3Rpb24gZGVz
Y3JpYmVzIHRoZW0gaW4gdGVybXMgb2YgYSBmbG9hdGluZy1wb2ludAorIHZlcnNpb24gZm9yIHNp
bXBsaWNpdHkuCitUaGlzIHByb2R1Y2VzIGEgc2lnbmFsIHdpdGggYSBub21pbmFsIHJhbmdlIG9m
IC0xLjAgdG8gMS4wLgorPC90PgorCis8dD4KK3NpbGtfZGVjb2RlX2NvcmUoKSAoZGVjb2RlX2Nv
cmUuYykgY29udGFpbnMgdGhlIGNvZGUgZm9yIHRoZSBtYWluCisgcmVjb25zdHJ1Y3Rpb24gcHJv
Y2Vzcy4KK0l0IHByb2NlZWRzIHN1YmZyYW1lLWJ5LXN1YmZyYW1lLCBzaW5jZSBxdWFudGl6YXRp
b24gZ2FpbnMsIExUUCBwYXJhbWV0ZXJzLCBhbmQKKyAoaW4gMjAmbmJzcDttcyBTSUxLIGZyYW1l
cykgTFBDIGNvZWZmaWNpZW50cyBjYW4gdmFyeSBmcm9tIG9uZSB0byB0aGUKKyBuZXh0LgorPC90
PgorCis8dD4KK0xldCBhX1ExMltrXSBiZSB0aGUgTFBDIGNvZWZmaWNpZW50cyBmb3IgdGhlIGN1
cnJlbnQgc3ViZnJhbWUuCitJZiB0aGlzIGlzIHRoZSBmaXJzdCBvciBzZWNvbmQgc3ViZnJhbWUg
b2YgYSAyMCZuYnNwO21zIFNJTEsgZnJhbWUgYW5kIHRoZSBMU0YKKyBpbnRlcnBvbGF0aW9uIGZh
Y3Rvciwgd19RMiAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19ubHNmX2ludGVycG9sYXRpb24iLz4p
LCBpcworIGxlc3MgdGhhbiA0LCB0aGVuIHRoZXNlIGNvcnJlc3BvbmQgdG8gdGhlIGZpbmFsIExQ
QyBjb2VmZmljaWVudHMgcHJvZHVjZWQgYnkKKyA8eHJlZiB0YXJnZXQ9InNpbGtfbHBjX2dhaW5f
bGltaXQiLz4gZnJvbSB0aGUgaW50ZXJwb2xhdGVkIExTRiBjb2VmZmljaWVudHMsCisgbjFfUTE1
W2tdIChjb21wdXRlZCBpbiA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9pbnRlcnBvbGF0aW9uIi8+
KS4KK090aGVyd2lzZSwgdGhleSBjb3JyZXNwb25kIHRvIHRoZSBmaW5hbCBMUEMgY29lZmZpY2ll
bnRzIHByb2R1Y2VkIGZyb20gdGhlCisgdW5pbnRlcnBvbGF0ZWQgTFNGIGNvZWZmaWNpZW50cyBm
b3IgdGhlIGN1cnJlbnQgZnJhbWUsIG4yX1ExNVtrXS4KKzwvdD4KKworPHQ+CitBbHNvLCBsZXQg
biBiZSB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgaW4gYSBzdWJmcmFtZSAoNDAgZm9yIE5CLCA2MCBm
b3IgTUIsIGFuZAorIDgwIGZvciBXQiksIHMgYmUgdGhlIGluZGV4IG9mIHRoZSBjdXJyZW50IHN1
YmZyYW1lIGluIHRoaXMgU0lMSyBmcmFtZSAoMCBvciAxCisgZm9yIDEwJm5ic3A7bXMgZnJhbWVz
LCBvciAwIHRvIDMgZm9yIDIwJm5ic3A7bXMgZnJhbWVzKSwgYW5kIGogYmUgdGhlIGluZGV4IG9m
CisgdGhlIGZpcnN0IHNhbXBsZSBpbiB0aGUgcmVzaWR1YWwgY29ycmVzcG9uZGluZyB0byB0aGUg
Y3VycmVudCBzdWJmcmFtZS4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2x0cF9zeW50
aGVzaXMiIHRpdGxlPSJMVFAgU3ludGhlc2lzIj4KKzx0PgorVm9pY2VkIFNJTEsgZnJhbWVzIChz
ZWUgPHhyZWYgdGFyZ2V0PSJzaWxrX2ZyYW1lX3R5cGUiLz4pIHBhc3MgdGhlIGV4Y2l0YXRpb24K
KyB0aHJvdWdoIGFuIExUUCBmaWx0ZXIgdXNpbmcgdGhlIHBhcmFtZXRlcnMgZGVjb2RlZCBpbgor
IDx4cmVmIHRhcmdldD0ic2lsa19sdHBfcGFyYW1zIi8+IHRvIHByb2R1Y2UgYW4gTFBDIHJlc2lk
dWFsLgorVGhlIExUUCBmaWx0ZXIgcmVxdWlyZXMgTFBDIHJlc2lkdWFsIHZhbHVlcyBmcm9tIGJl
Zm9yZSB0aGUgY3VycmVudCBzdWJmcmFtZSBhcworIGlucHV0LgorSG93ZXZlciwgc2luY2UgdGhl
IExQQyBjb2VmZmljaWVudHMgbWF5IGhhdmUgY2hhbmdlZCwgaXQgb2J0YWlucyB0aGlzIHJlc2lk
dWFsCisgYnkgInJld2hpdGVuaW5nIiB0aGUgY29ycmVzcG9uZGluZyBvdXRwdXQgc2lnbmFsIHVz
aW5nIHRoZSBMUEMgY29lZmZpY2llbnRzCisgZnJvbSB0aGUgY3VycmVudCBzdWJmcmFtZS4KK0xl
dCBvdXRbaV0gZm9yCisgKGombmJzcDstJm5ic3A7cGl0Y2hfbGFnc1tzXSZuYnNwOy0mbmJzcDtk
X0xQQyZuYnNwOy0mbmJzcDsyKSZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsmbmJzcDtqCisg
YmUgdGhlIGZ1bGx5IHJlY29uc3RydWN0ZWQgb3V0cHV0IHNpZ25hbCBmcm9tIHRoZSBsYXN0Cisg
KHBpdGNoX2xhZ3Nbc10mbmJzcDsrJm5ic3A7ZF9MUEMmbmJzcDsrJm5ic3A7Mikgc2FtcGxlcyBv
ZiBwcmV2aW91cyBzdWJmcmFtZXMKKyAoc2VlIDx4cmVmIHRhcmdldD0ic2lsa19scGNfc3ludGhl
c2lzIi8+KSwgd2hlcmUgcGl0Y2hfbGFnc1tzXSBpcyB0aGUgcGl0Y2gKKyBsYWcgZm9yIHRoZSBj
dXJyZW50IHN1YmZyYW1lIGZyb20gPHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9sYWdzIi8+LgorRHVy
aW5nIHJlY29uc3RydWN0aW9uIG9mIHRoZSBmaXJzdCBzdWJmcmFtZSBmb3IgdGhpcyBjaGFubmVs
IGFmdGVyIGVpdGhlcgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+QW4gdW5jb2RlZCByZWd1
bGFyIFNJTEsgZnJhbWUgKGlmIHRoaXMgaXMgdGhlIHNpZGUgY2hhbm5lbCksIG9yPC90PgorPHQ+
QSBkZWNvZGVyIHJlc2V0IChzZWUgPHhyZWYgdGFyZ2V0PSJkZWNvZGVyLXJlc2V0Ii8+KSw8L3Q+
Cis8L2xpc3Q+Cisgb3V0W10gaXMgcmV3aGl0ZW5lZCBpbnRvIGFuIExQQyByZXNpZHVhbCwKKyBy
ZXNbaV0sIHZpYQorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50
ZXIiPjwhW0NEQVRBWworICAgICAgICAgNC4wKkxUUF9zY2FsZV9RMTQKK3Jlc1tpXSA9IC0tLS0t
LS0tLS0tLS0tLS0tICogY2xhbXAoLTEuMCwKKyAgICAgICAgICAgIGdhaW5fUTE2W3NdCisKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZF9MUEMtMQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIF9fICAgICAgICAgICAgICBhX1ExMltrXQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG91dFtpXSAtIFwgIG91dFtpLWstMV0gKiAtLS0tLS0tLSwgMS4w
KSAuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL18gICAgICAgICAgICAg
ICA0MDk2LjAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrPTAKK11dPjwv
YXJ0d29yaz4KKzwvZmlndXJlPgorVGhpcyByZXF1aXJlcyBzdG9yYWdlIHRvIGJ1ZmZlciB1cCB0
byAzMDYgdmFsdWVzIG9mIG91dFtpXSBmcm9tIHByZXZpb3VzCisgc3ViZnJhbWVzLgorVGhpcyBj
b3JyZXNwb25kcyB0byBXQiB3aXRoIGEgbWF4aW11bSBwaXRjaCBsYWcgb2YKKyAxOCZuYnNwO21z
Jm5ic3A7KiZuYnNwOzE2Jm5ic3A7a0h6IHNhbXBsZXMsIHBsdXMgMTYgc2FtcGxlcyBmb3IgZF9M
UEMsIHBsdXMgMgorIHNhbXBsZXMgZm9yIHRoZSB3aWR0aCBvZiB0aGUgTFRQIGZpbHRlci4KKzwv
dD4KKworPHQ+CitMZXQgZV9RMjNbaV0gZm9yIGombmJzcDsmbHQ7PSZuYnNwO2kmbmJzcDsmbHQ7
Jm5ic3A7KGombmJzcDsrJm5ic3A7bikgYmUgdGhlCisgZXhjaXRhdGlvbiBmb3IgdGhlIGN1cnJl
bnQgc3ViZnJhbWUsIGFuZCBiX1E3W2tdIGZvcgorIDAmbmJzcDsmbHQ7PSZuYnNwO2smbmJzcDsm
bHQ7Jm5ic3A7NSBiZSB0aGUgY29lZmZpY2llbnRzIG9mIHRoZSBMVFAgZmlsdGVyCisgdGFrZW4g
ZnJvbSB0aGUgY29kZWJvb2sgZW50cnkgaW4gb25lIG9mCisgVGFibGVzJm5ic3A7PHhyZWYgZm9y
bWF0PSJjb3VudGVyIiB0YXJnZXQ9InNpbGtfbHRwX2ZpbHRlcl9jb2VmZnMwIi8+CisgdGhyb3Vn
aCZuYnNwOzx4cmVmIGZvcm1hdD0iY291bnRlciIgdGFyZ2V0PSJzaWxrX2x0cF9maWx0ZXJfY29l
ZmZzMiIvPgorIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGluZGV4IGRlY29kZWQgZm9yIHRoZSBjdXJy
ZW50IHN1YmZyYW1lIGluCisgPHhyZWYgdGFyZ2V0PSJzaWxrX2x0cF9maWx0ZXIiLz4uCitUaGVu
IGZvciBpIHN1Y2ggdGhhdCBqJm5ic3A7Jmx0Oz0mbmJzcDtpJm5ic3A7Jmx0OyZuYnNwOyhqJm5i
c3A7KyZuYnNwO24pLAorIHRoZSBMUEMgcmVzaWR1YWwgaXMKKzxmaWd1cmUgYWxpZ249ImNlbnRl
ciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAgICAg
ICAgICA0CisgICAgICAgICAgZV9RMjNbaV0gICBfXyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBiX1E3W2tdCityZXNbaV0gPSAtLS0tLS0tLS0gKyBcICByZXNbaSAtIHBpdGNoX2xh
Z3Nbc10gKyAyIC0ga10gKiAtLS0tLS0tIC4KKyAgICAgICAgICAyLjAqKjIzICAgIC9fICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMjguMAorICAgICAgICAgICAgICAgICAgICAg
az0wCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKworPHQ+CitGb3IgdW52b2ljZWQg
ZnJhbWVzLCB0aGUgTFBDIHJlc2lkdWFsIGZvcgorIGombmJzcDsmbHQ7PSZuYnNwO2kmbmJzcDsm
bHQ7Jm5ic3A7KGombmJzcDsrJm5ic3A7bikgaXMgc2ltcGx5IGEgbm9ybWFsaXplZAorIGNvcHkg
b2YgdGhlIGV4Y2l0YXRpb24gc2lnbmFsLCBpLmUuLAorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4K
KzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgIGVfUTIzW2ldCity
ZXNbaV0gPSAtLS0tLS0tLS0KKyAgICAgICAgICAyLjAqKjIzCitdXT48L2FydHdvcms+Cis8L2Zp
Z3VyZT4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzaWxrX2xwY19zeW50
aGVzaXMiIHRpdGxlPSJMUEMgU3ludGhlc2lzIj4KKzx0PgorTFBDIHN5bnRoZXNpcyB1c2VzIHRo
ZSBzaG9ydC10ZXJtIExQQyBmaWx0ZXIgdG8gcHJlZGljdCB0aGUgbmV4dCBvdXRwdXQKKyBjb2Vm
ZmljaWVudC4KK0ZvciBpIHN1Y2ggdGhhdCAoaiZuYnNwOy0mbmJzcDtkX0xQQykmbmJzcDsmbHQ7
PSZuYnNwO2kmbmJzcDsmbHQ7Jm5ic3A7aiwgbGV0CisgbHBjW2ldIGJlIHRoZSByZXN1bHQgb2Yg
TFBDIHN5bnRoZXNpcyBmcm9tIHRoZSBsYXN0IGRfTFBDIHNhbXBsZXMgb2YgdGhlCisgcHJldmlv
dXMgc3ViZnJhbWUsIG9yIHplcm9zIGluIHRoZSBmaXJzdCBzdWJmcmFtZSBmb3IgdGhpcyBjaGFu
bmVsIGFmdGVyCisgZWl0aGVyCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5BbiB1bmNvZGVk
IHJlZ3VsYXIgU0lMSyBmcmFtZSAoaWYgdGhpcyBpcyB0aGUgc2lkZSBjaGFubmVsKSwgb3I8L3Q+
Cis8dD5BIGRlY29kZXIgcmVzZXQgKHNlZSA8eHJlZiB0YXJnZXQ9ImRlY29kZXItcmVzZXQiLz4p
LjwvdD4KKzwvbGlzdD4KK1RoZW4gZm9yIGkgc3VjaCB0aGF0IGombmJzcDsmbHQ7PSZuYnNwO2km
bmJzcDsmbHQ7Jm5ic3A7KGombmJzcDsrJm5ic3A7biksIHRoZQorIHJlc3VsdCBvZiBMUEMgc3lu
dGhlc2lzIGZvciB0aGUgY3VycmVudCBzdWJmcmFtZSBpcworPGZpZ3VyZSBhbGlnbj0iY2VudGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZF9MUEMtMQorICAgICAgICAgZ2Fpbl9RMTZbaV0gICAgICAgICAgICBfXyAg
ICAgICAgICAgICAgYV9RMTJba10KK2xwY1tpXSA9IC0tLS0tLS0tLS0tICogcmVzW2ldICsgXCAg
bHBjW2ktay0xXSAqIC0tLS0tLS0tIC4KKyAgICAgICAgICAgNjU1MzYuMCAgICAgICAgICAgICAg
L18gICAgICAgICAgICAgICA0MDk2LjAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
az0wCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK1RoZSBkZWNvZGVyIHNhdmVzIHRoZSBmaW5h
bCBkX0xQQyB2YWx1ZXMsIGkuZS4sIGxwY1tpXSBzdWNoIHRoYXQKKyAoaiZuYnNwOysmbmJzcDtu
Jm5ic3A7LSZuYnNwO2RfTFBDKSZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsmbmJzcDsoaiZu
YnNwOysmbmJzcDtuKSwKKyB0byBmZWVkIGludG8gdGhlIExQQyBzeW50aGVzaXMgb2YgdGhlIG5l
eHQgc3ViZnJhbWUuCitUaGlzIHJlcXVpcmVzIHN0b3JhZ2UgZm9yIHVwIHRvIDE2IHZhbHVlcyBv
ZiBscGNbaV0gKGZvciBXQiBmcmFtZXMpLgorPC90PgorCis8dD4KK1RoZW4sIHRoZSBzaWduYWwg
aXMgY2xhbXBlZCBpbnRvIHRoZSBmaW5hbCBub21pbmFsIHJhbmdlOgorPGZpZ3VyZSBhbGlnbj0i
Y2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworb3V0W2ldID0gY2xh
bXAoLTEuMCwgbHBjW2ldLCAxLjApIC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorVGhpcyBj
bGFtcGluZyBvY2N1cnMgZW50aXJlbHkgYWZ0ZXIgdGhlIExQQyBzeW50aGVzaXMgZmlsdGVyIGhh
cyBydW4uCitUaGUgZGVjb2RlciBzYXZlcyB0aGUgdW5jbGFtcGVkIHZhbHVlcywgbHBjW2ldLCB0
byBmZWVkIGludG8gdGhlIExQQyBmaWx0ZXIgZm9yCisgdGhlIG5leHQgc3ViZnJhbWUsIGJ1dCBz
YXZlcyB0aGUgY2xhbXBlZCB2YWx1ZXMsIG91dFtpXSwgZm9yIHJld2hpdGVuaW5nIGluCisgdm9p
Y2VkIGZyYW1lcy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0ic2lsa19zdGVyZW9fdW5taXhpbmciIHRpdGxlPSJTdGVyZW8g
VW5taXhpbmciPgorPHQ+CitGb3Igc3RlcmVvIHN0cmVhbXMsIGFmdGVyIGRlY29kaW5nIGEgZnJh
bWUgZnJvbSBlYWNoIGNoYW5uZWwsIHRoZSBkZWNvZGVyIG11c3QKKyBjb252ZXJ0IHRoZSBtaWQt
c2lkZSAoTVMpIHJlcHJlc2VudGF0aW9uIGludG8gYSBsZWZ0LXJpZ2h0IChMUikKKyByZXByZXNl
bnRhdGlvbi4KK1RoZSBmdW5jdGlvbiBzaWxrX3N0ZXJlb19NU190b19MUiAoc3RlcmVvX01TX3Rv
X0xSLmMpIGltcGxlbWVudHMgdGhpcyBwcm9jZXNzLgorSW4gaXQsIHRoZSBkZWNvZGVyIHByZWRp
Y3RzIHRoZSBzaWRlIGNoYW5uZWwgdXNpbmcgYSkgYSBzaW1wbGUgbG93LXBhc3NlZAorIHZlcnNp
b24gb2YgdGhlIG1pZCBjaGFubmVsLCBhbmQgYikgdGhlIHVuZmlsdGVyZWQgbWlkIGNoYW5uZWws
IHVzaW5nIHRoZQorIHByZWRpY3Rpb24gd2VpZ2h0cyBkZWNvZGVkIGluIDx4cmVmIHRhcmdldD0i
c2lsa19zdGVyZW9fcHJlZCIvPi4KK1RoaXMgc2ltcGxlIGxvdy1wYXNzIGZpbHRlciBpbXBvc2Vz
IGEgb25lLXNhbXBsZSBkZWxheSwgYW5kIHRoZSB1bmZpbHRlcmVkCittaWQgY2hhbm5lbCBpcyBh
bHNvIGRlbGF5ZWQgYnkgb25lIHNhbXBsZS4KK0luIG9yZGVyIHRvIGFsbG93IHNlYW1sZXNzIHN3
aXRjaGluZyBiZXR3ZWVuIHN0ZXJlbyBhbmQgbW9ubywgbW9ubyBzdHJlYW1zIG11c3QKKyBhbHNv
IGltcG9zZSB0aGUgc2FtZSBvbmUtc2FtcGxlIGRlbGF5LgorVGhlIGVuY29kZXIgcmVxdWlyZXMg
YW4gYWRkaXRpb25hbCBvbmUtc2FtcGxlIGRlbGF5IGZvciBib3RoIG1vbm8gYW5kIHN0ZXJlbwor
IHN0cmVhbXMsIHRob3VnaCBhbiBlbmNvZGVyIG1heSBvbWl0IHRoZSBkZWxheSBmb3IgbW9ubyBp
ZiBpdCBrbm93cyBpdCB3aWxsCisgbmV2ZXIgc3dpdGNoIHRvIHN0ZXJlby4KKzwvdD4KKworPHQ+
CitUaGUgdW5taXhpbmcgcHJvY2VzcyBvcGVyYXRlcyBpbiB0d28gcGhhc2VzLgorVGhlIGZpcnN0
IHBoYXNlIGxhc3RzIGZvciA4Jm5ic3A7bXMsIGR1cmluZyB3aGljaCBpdCBpbnRlcnBvbGF0ZXMg
dGhlCisgcHJlZGljdGlvbiB3ZWlnaHRzIGZyb20gdGhlIHByZXZpb3VzIGZyYW1lLCBwcmV2X3cw
X1ExMyBhbmQgcHJldl93MV9RMTMsIHRvCisgdGhlIHZhbHVlcyBmb3IgdGhlIGN1cnJlbnQgZnJh
bWUsIHcwX1ExMyBhbmQgdzFfUTEzLgorVGhlIHNlY29uZCBwaGFzZSBzaW1wbHkgdXNlcyB0aGVz
ZSB3ZWlnaHRzIGZvciB0aGUgcmVtYWluZGVyIG9mIHRoZSBmcmFtZS4KKzwvdD4KKworPHQ+CitM
ZXQgbWlkW2ldIGFuZCBzaWRlW2ldIGJlIHRoZSBjb250ZW50cyBvZiBvdXRbaV0gKGZyb20KKyA8
eHJlZiB0YXJnZXQ9InNpbGtfbHBjX3N5bnRoZXNpcyIvPikgZm9yIHRoZSBjdXJyZW50IG1pZCBh
bmQgc2lkZSBjaGFubmVscywKKyByZXNwZWN0aXZlbHksIGFuZCBsZXQgbGVmdFtpXSBhbmQgcmln
aHRbaV0gYmUgdGhlIGNvcnJlc3BvbmRpbmcgc3RlcmVvIG91dHB1dAorIGNoYW5uZWxzLgorSWYg
dGhlIHNpZGUgY2hhbm5lbCBpcyBub3QgY29kZWQgKHNlZSA8eHJlZiB0YXJnZXQ9InNpbGtfbWlk
X29ubHlfZmxhZyIvPiksCisgdGhlbiBzaWRlW2ldIGlzIHNldCB0byB6ZXJvLgorQWxzbyBsZXQg
aiBiZSBkZWZpbmVkIGFzIGluIDx4cmVmIHRhcmdldD0ic2lsa19mcmFtZV9yZWNvbnN0cnVjdGlv
biIvPiwgbjEgYmUKKyB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgaW4gcGhhc2UmbmJzcDsxICg2NCBm
b3IgTkIsIDk2IGZvciBNQiwgYW5kIDEyOCBmb3IgV0IpLAorIGFuZCBuMiBiZSB0aGUgdG90YWwg
bnVtYmVyIG9mIHNhbXBsZXMgaW4gdGhlIGZyYW1lLgorVGhlbiBmb3IgaSBzdWNoIHRoYXQgaiZu
YnNwOyZsdDs9Jm5ic3A7aSZuYnNwOyZsdDsmbmJzcDsoaiZuYnNwOysmbmJzcDtuMiksCisgdGhl
IGxlZnQgYW5kIHJpZ2h0IGNoYW5uZWwgb3V0cHV0IGlzCis8ZmlndXJlIGFsaWduPSJjZW50ZXIi
PgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgIHByZXZf
dzBfUTEzICAgICAgICAgICAgICAgICAgKHcwX1ExMyAtIHByZXZfdzBfUTEzKQorICAgICAgICB3
MCA9ICAtLS0tLS0tLS0tLSArIG1pbihpIC0gaiwgbjEpKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g
LAorICAgICAgICAgICAgICAgIDgxOTIuMCAgICAgICAgICAgICAgICAgICAgICAgICAgIDgxOTIu
MCpuMQorCisgICAgICAgICAgICAgIHByZXZfdzFfUTEzICAgICAgICAgICAgICAgICAgKHcxX1Ex
MyAtIHByZXZfdzFfUTEzKQorICAgICAgICB3MSA9ICAtLS0tLS0tLS0tLSArIG1pbihpIC0gaiwg
bjEpKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLAorICAgICAgICAgICAgICAgIDgxOTIuMCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA4MTkyLjAqbjEKKworICAgICAgICAgICAgIG1pZFtpLTJd
ICsgMiptaWRbaS0xXSArIG1pZFtpXQorICAgICAgICBwMCA9IC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLSAsCisgICAgICAgICAgICAgICAgICAgICAgICAgIDQuMAorCisgbGVmdFtpXSA9
IGNsYW1wKC0xLjAsICgxICsgdzEpKm1pZFtpLTFdICsgc2lkZVtpLTFdICsgdzAqcDAsIDEuMCkg
LAorCityaWdodFtpXSA9IGNsYW1wKC0xLjAsICgxIC0gdzEpKm1pZFtpLTFdIC0gc2lkZVtpLTFd
IC0gdzAqcDAsIDEuMCkgLgorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGVzZSBmb3JtdWxh
cyByZXF1aXJlIHR3byBzYW1wbGVzIHByaW9yIHRvIGluZGV4Jm5ic3A7aiwgdGhlIHN0YXJ0IG9m
IHRoZQorIGZyYW1lLCBmb3IgdGhlIG1pZCBjaGFubmVsLCBhbmQgb25lIHByaW9yIHNhbXBsZSBm
b3IgdGhlIHNpZGUgY2hhbm5lbC4KK0ZvciB0aGUgZmlyc3QgZnJhbWUgYWZ0ZXIgYSBkZWNvZGVy
IHJlc2V0LCB6ZXJvcyBhcmUgdXNlZCBpbnN0ZWFkLgorPC90PgorCis8L3NlY3Rpb24+CisKKzxz
ZWN0aW9uIHRpdGxlPSJSZXNhbXBsaW5nIj4KKzx0PgorQWZ0ZXIgc3RlcmVvIHVubWl4aW5nIChp
ZiBhbnkpLCB0aGUgZGVjb2RlciBhcHBsaWVzIHJlc2FtcGxpbmcgdG8gY29udmVydCB0aGUKKyBk
ZWNvZGVkIFNJTEsgb3V0cHV0IHRvIHRoZSBzYW1wbGUgcmF0ZSBkZXNpcmVkIGJ5IHRoZSBhcHBs
aWNhdGlvbi4KK1RoaXMgaXMgbmVjZXNzYXJ5IHdoZW4gZGVjb2RpbmcgYSBIeWJyaWQgZnJhbWUg
YXQgU1dCIG9yIEZCIHNhbXBsZSByYXRlcywgb3IKKyB3aGVuZXZlciB0aGUgZGVjb2RlciB3YW50
cyB0aGUgb3V0cHV0IGF0IGEgZGlmZmVyZW50IHNhbXBsZSByYXRlIHRoYW4gdGhlCisgaW50ZXJu
YWwgU0lMSyBzYW1wbGluZyByYXRlIChlLmcuLCB0byBhbGxvdyBhIGNvbnN0YW50IHNhbXBsZSBy
YXRlIHdoZW4gdGhlCisgYXVkaW8gYmFuZHdpZHRoIGNoYW5nZXMsIG9yIHRvIGFsbG93IG1peGlu
ZyB3aXRoIGF1ZGlvIGZyb20gb3RoZXIKKyBhcHBsaWNhdGlvbnMpLgorVGhlIHJlc2FtcGxlciBp
dHNlbGYgaXMgbm9uLW5vcm1hdGl2ZSwgYW5kIGEgZGVjb2RlciBjYW4gdXNlIGFueSBtZXRob2Qg
aXQKKyB3YW50cyB0byBwZXJmb3JtIHRoZSByZXNhbXBsaW5nLgorPC90PgorCis8dD4KK0hvd2V2
ZXIsIGEgbWluaW11bSBhbW91bnQgb2YgZGVsYXkgaXMgaW1wb3NlZCB0byBhbGxvdyB0aGUgcmVz
YW1wbGVyIHRvCisgb3BlcmF0ZSwgYW5kIHRoaXMgZGVsYXkgaXMgbm9ybWF0aXZlLCBzbyB0aGF0
IHRoZSBjb3JyZXNwb25kaW5nIGRlbGF5IGNhbiBiZQorIGFwcGxpZWQgdG8gdGhlIE1EQ1QgbGF5
ZXIgaW4gdGhlIGVuY29kZXIuCitBIGRlY29kZXIgaXMgYWx3YXlzIGZyZWUgdG8gdXNlIGEgcmVz
YW1wbGVyIHdoaWNoIHJlcXVpcmVzIG1vcmUgZGVsYXkgdGhhbgorIGFsbG93ZWQgZm9yIGhlcmUg
KGUuZy4sIHRvIGltcHJvdmUgcXVhbGl0eSksIGJ1dCBpdCBtdXN0IHRoZW4gZGVsYXkgdGhlIG91
dHB1dAorIG9mIHRoZSBNRENUIGxheWVyIGJ5IHRoaXMgZXh0cmEgYW1vdW50LgorS2VlcGluZyBh
cyBtdWNoIGRlbGF5IGFzIHBvc3NpYmxlIG9uIHRoZSBlbmNvZGVyIHNpZGUgYWxsb3dzIGFuIGVu
Y29kZXIgd2hpY2gKKyBrbm93cyBpdCB3aWxsIG5ldmVyIHVzZSBhbnkgb2YgdGhlIFNJTEsgb3Ig
SHlicmlkIG1vZGVzIHRvIHNraXAgdGhpcyBkZWxheS4KK0J5IGNvbnRyYXN0LCBpZiBpdCB3ZXJl
IGFsbCBhcHBsaWVkIGJ5IHRoZSBkZWNvZGVyLCB0aGVuIGEgZGVjb2RlciB3aGljaAorIHByb2Nl
c3NlcyBhdWRpbyBpbiBmaXhlZC1zaXplIGJsb2NrcyB3b3VsZCBiZSBmb3JjZWQgdG8gZGVsYXkg
dGhlIG91dHB1dCBvZgorIENFTFQgZnJhbWVzIGp1c3QgaW4gY2FzZSBvZiBhIGxhdGVyIHN3aXRj
aCB0byBhIFNJTEsgb3IgSHlicmlkIG1vZGUuCis8L3Q+CisKKzx0PgorPHhyZWYgdGFyZ2V0PSJz
aWxrX3Jlc2FtcGxlcl9kZWxheV9hbGxvYyIvPiBnaXZlcyB0aGUgbWF4aW11bSByZXNhbXBsZXIg
ZGVsYXkKKyBpbiBzYW1wbGVzIGF0IDQ4Jm5ic3A7a0h6IGZvciBlYWNoIFNJTEsgYXVkaW8gYmFu
ZHdpZHRoLgorQmVjYXVzZSB0aGUgYWN0dWFsIG91dHB1dCByYXRlIG1heSBub3QgYmUgNDgmbmJz
cDtrSHosIGl0IG1heSBub3QgYmUgcG9zc2libGUKKyB0byBhY2hpZXZlIGV4YWN0bHkgdGhlc2Ug
ZGVsYXlzIHdoaWxlIHVzaW5nIGEgd2hvbGUgbnVtYmVyIG9mIGlucHV0IG9yIG91dHB1dAorIHNh
bXBsZXMuCitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGlzIGFibGUgdG8gcmVzYW1wbGUg
dG8gYW55IG9mIHRoZSBzdXBwb3J0ZWQKKyBvdXRwdXQgc2FtcGxpbmcgcmF0ZXMgKDgsIDEyLCAx
NiwgMjQsIG9yIDQ4Jm5ic3A7a0h6KSB3aXRoaW4gb3IgbmVhciB0aGlzCisgZGVsYXkgY29uc3Ry
YWludC4KK1NvbWUgcmVzYW1wbGluZyBmaWx0ZXJzIChpbmNsdWRpbmcgdGhvc2UgdXNlZCBieSB0
aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uKQorIG1heSBhZGQgYSBkZWxheSB0aGF0IGlzIG5v
dCBhbiBleGFjdCBpbnRlZ2VyLCBvciBpcyBub3QgbGluZWFyLXBoYXNlLCBhbmQgc28KKyBjYW5u
b3QgYmUgcmVwcmVzZW50ZWQgYnkgYSBzaW5nbGUgZGVsYXkgYXQgYWxsIGZyZXF1ZW5jaWVzLgor
SG93ZXZlciwgc3VjaCBkZXZpYXRpb25zIGFyZSB1bmxpa2VseSB0byBiZSBwZXJjZXB0aWJsZSwg
YW5kIHRoZSBjb21wYXJpc29uCisgdG9vbCBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJjb25m
b3JtYW5jZSIvPiBpcyBkZXNpZ25lZCB0byBiZSByZWxhdGl2ZWx5CisgaW5zZW5zaXRpdmUgdG8g
dGhlbS4KK1RoZSBkZWxheXMgbGlzdGVkIGhlcmUgYXJlIHRoZSBvbmVzIHRoYXQgc2hvdWxkIGJl
IHRhcmdldGVkIGJ5IHRoZSBlbmNvZGVyLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic2ls
a19yZXNhbXBsZXJfZGVsYXlfYWxsb2MiCisgdGl0bGU9IlNJTEsgUmVzYW1wbGVyIERlbGF5IEFs
bG9jYXRpb25zIj4KKzx0dGNvbD5BdWRpbyBCYW5kd2lkdGg8L3R0Y29sPgorPHR0Y29sPkRlbGF5
IGluIG1pbGxpc2Vjb25kPC90dGNvbD4KKzxjPk5CPC9jPiA8Yz4wLjUzODwvYz4KKzxjPk1CPC9j
PiA8Yz4wLjY5MjwvYz4KKzxjPldCPC9jPiA8Yz4wLjcwNjwvYz4KKzwvdGV4dHRhYmxlPgorCis8
dD4KK05CIGlzIGdpdmVuIGEgc21hbGxlciBkZWNvZGVyIGRlbGF5IGFsbG9jYXRpb24gdGhhbiBN
QiBhbmQgV0IgdG8gYWxsb3cgYQorIGhpZ2hlci1vcmRlciBmaWx0ZXIgd2hlbiByZXNhbXBsaW5n
IHRvIDgmbmJzcDtrSHogaW4gYm90aCB0aGUgZW5jb2RlciBhbmQKKyBkZWNvZGVyLgorVGhpcyBp
bXBsaWVzIHRoYXQgdGhlIGF1ZGlvIGNvbnRlbnQgb2YgdHdvIFNJTEsgZnJhbWVzIG9wZXJhdGlu
ZyBhdCBkaWZmZXJlbnQKKyBiYW5kd2lkdGhzIGFyZSBub3QgcGVyZmVjdGx5IGFsaWduZWQgaW4g
dGltZS4KK1RoaXMgaXMgbm90IGFuIGlzc3VlIGZvciBhbnkgdHJhbnNpdGlvbnMgZGVzY3JpYmVk
IGluCisgPHhyZWYgdGFyZ2V0PSJzd2l0Y2hpbmciLz4sIGJlY2F1c2UgdGhleSBhbGwgaW52b2x2
ZSBhIFNJTEsgZGVjb2RlciByZXNldC4KK1doZW4gdGhlIGRlY29kZXIgaXMgcmVzZXQsIGFueSBz
YW1wbGVzIHJlbWFpbmluZyBpbiB0aGUgcmVzYW1wbGluZyBidWZmZXIKKyBhcmUgZGlzY2FyZGVk
LCBhbmQgdGhlIHJlc2FtcGxlciBpcyByZS1pbml0aWFsaXplZCB3aXRoIHNpbGVuY2UuCis8L3Q+
CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCisKKzxzZWN0aW9uIHRpdGxlPSJDRUxUIERl
Y29kZXIiPgorCis8dD4KK1RoZSBDRUxUIGxheWVyIG9mIE9wdXMgaXMgYmFzZWQgb24gdGhlIE1v
ZGlmaWVkIERpc2NyZXRlIENvc2luZSBUcmFuc2Zvcm0KKzx4cmVmIHRhcmdldD0nTURDVCcvPiB3
aXRoIHBhcnRpYWxseSBvdmVybGFwcGluZyB3aW5kb3dzIG9mIDUgdG8gMjIuNSBtcy4KK1RoZSBt
YWluIHByaW5jaXBsZSBiZWhpbmQgQ0VMVCBpcyB0aGF0IHRoZSBNRENUIHNwZWN0cnVtIGlzIGRp
dmlkZWQgaW50bworYmFuZHMgdGhhdCAocm91Z2hseSkgZm9sbG93IHRoZSBCYXJrIHNjYWxlLCBp
LmUuLCB0aGUgc2NhbGUgb2YgdGhlIGVhcidzCitjcml0aWNhbCBiYW5kcyZuYnNwOzx4cmVmIHRh
cmdldD0iWndpY2tlcjYxIi8+LiBUaGUgbm9ybWFsIENFTFQgbGF5ZXIgdXNlcyAyMSBvZiB0aG9z
ZSBiYW5kcywgdGhvdWdoIE9wdXMKKyBDdXN0b20gKHNlZSA8eHJlZiB0YXJnZXQ9Im9wdXMtY3Vz
dG9tIi8+KSBtYXkgdXNlIGEgZGlmZmVyZW50IG51bWJlciBvZiBiYW5kcy4KK0luIEh5YnJpZCBt
b2RlLCB0aGUgZmlyc3QgMTcgYmFuZHMgKHVwIHRvIDgmbmJzcDtrSHopIGFyZSBub3QgY29kZWQu
CitBIGJhbmQgY2FuIGNvbnRhaW4gYXMgbGl0dGxlIGFzIG9uZSBNRENUIGJpbiBwZXIgY2hhbm5l
bCwgYW5kIGFzIG1hbnkgYXMgMTc2CitiaW5zIHBlciBjaGFubmVsLCBhcyBkZXRhaWxlZCBpbiA8
eHJlZiB0YXJnZXQ9ImNlbHRfYmFuZF9zaXplcyIvPi4KK0luIGVhY2ggYmFuZCwgdGhlIGdhaW4g
KGVuZXJneSkgaXMgY29kZWQgc2VwYXJhdGVseSBmcm9tCit0aGUgc2hhcGUgb2YgdGhlIHNwZWN0
cnVtLiBDb2RpbmcgdGhlIGdhaW4gZXhwbGljaXRseSBtYWtlcyBpdCBlYXN5IHRvCitwcmVzZXJ2
ZSB0aGUgc3BlY3RyYWwgZW52ZWxvcGUgb2YgdGhlIHNpZ25hbC4gVGhlIHJlbWFpbmluZyB1bml0
LW5vcm0gc2hhcGUKK3ZlY3RvciBpcyBlbmNvZGVkIHVzaW5nIGEgUHlyYW1pZCBWZWN0b3IgUXVh
bnRpemVyIChQVlEpJm5ic3A7PHhyZWYgdGFyZ2V0PSdQVlEtZGVjb2RlcicvPi4KKzwvdD4KKwor
PHRleHR0YWJsZSBhbmNob3I9ImNlbHRfYmFuZF9zaXplcyIKKyB0aXRsZT0iTURDVCBCaW5zIFBl
ciBDaGFubmVsIFBlciBCYW5kIGZvciBFYWNoIEZyYW1lIFNpemUiPgorPHR0Y29sPkZyYW1lIFNp
emU6PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjIuNSZuYnNwO21zPC90dGNvbD4KKzx0
dGNvbCBhbGlnbj0icmlnaHQiPjUmbmJzcDttczwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0
Ij4xMCZuYnNwO21zPC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjIwJm5ic3A7bXM8L3R0
Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+U3RhcnQgRnJlcXVlbmN5PC90dGNvbD4KKzx0dGNv
bCBhbGlnbj0icmlnaHQiPlN0b3AgRnJlcXVlbmN5PC90dGNvbD4KKzxjPkJhbmQ8L2M+IDxjPkJp
bnM6PC9jPiA8Yy8+IDxjLz4gPGMvPiA8Yy8+IDxjLz4KKyA8Yz4wPC9jPiAgPGM+MTwvYz4gIDxj
PjI8L2M+ICA8Yz40PC9jPiAgIDxjPjg8L2M+ICAgICA8Yz4wJm5ic3A7SHo8L2M+ICAgPGM+MjAw
Jm5ic3A7SHo8L2M+CisgPGM+MTwvYz4gIDxjPjE8L2M+ICA8Yz4yPC9jPiAgPGM+NDwvYz4gICA8
Yz44PC9jPiAgIDxjPjIwMCZuYnNwO0h6PC9jPiAgIDxjPjQwMCZuYnNwO0h6PC9jPgorIDxjPjI8
L2M+ICA8Yz4xPC9jPiAgPGM+MjwvYz4gIDxjPjQ8L2M+ICAgPGM+ODwvYz4gICA8Yz40MDAmbmJz
cDtIejwvYz4gICA8Yz42MDAmbmJzcDtIejwvYz4KKyA8Yz4zPC9jPiAgPGM+MTwvYz4gIDxjPjI8
L2M+ICA8Yz40PC9jPiAgIDxjPjg8L2M+ICAgPGM+NjAwJm5ic3A7SHo8L2M+ICAgPGM+ODAwJm5i
c3A7SHo8L2M+CisgPGM+NDwvYz4gIDxjPjE8L2M+ICA8Yz4yPC9jPiAgPGM+NDwvYz4gICA8Yz44
PC9jPiAgIDxjPjgwMCZuYnNwO0h6PC9jPiAgPGM+MTAwMCZuYnNwO0h6PC9jPgorIDxjPjU8L2M+
ICA8Yz4xPC9jPiAgPGM+MjwvYz4gIDxjPjQ8L2M+ICAgPGM+ODwvYz4gIDxjPjEwMDAmbmJzcDtI
ejwvYz4gIDxjPjEyMDAmbmJzcDtIejwvYz4KKyA8Yz42PC9jPiAgPGM+MTwvYz4gIDxjPjI8L2M+
ICA8Yz40PC9jPiAgIDxjPjg8L2M+ICA8Yz4xMjAwJm5ic3A7SHo8L2M+ICA8Yz4xNDAwJm5ic3A7
SHo8L2M+CisgPGM+NzwvYz4gIDxjPjE8L2M+ICA8Yz4yPC9jPiAgPGM+NDwvYz4gICA8Yz44PC9j
PiAgPGM+MTQwMCZuYnNwO0h6PC9jPiAgPGM+MTYwMCZuYnNwO0h6PC9jPgorIDxjPjg8L2M+ICA8
Yz4yPC9jPiAgPGM+NDwvYz4gIDxjPjg8L2M+ICA8Yz4xNjwvYz4gIDxjPjE2MDAmbmJzcDtIejwv
Yz4gIDxjPjIwMDAmbmJzcDtIejwvYz4KKyA8Yz45PC9jPiAgPGM+MjwvYz4gIDxjPjQ8L2M+ICA8
Yz44PC9jPiAgPGM+MTY8L2M+ICA8Yz4yMDAwJm5ic3A7SHo8L2M+ICA8Yz4yNDAwJm5ic3A7SHo8
L2M+Cis8Yz4xMDwvYz4gIDxjPjI8L2M+ICA8Yz40PC9jPiAgPGM+ODwvYz4gIDxjPjE2PC9jPiAg
PGM+MjQwMCZuYnNwO0h6PC9jPiAgPGM+MjgwMCZuYnNwO0h6PC9jPgorPGM+MTE8L2M+ICA8Yz4y
PC9jPiAgPGM+NDwvYz4gIDxjPjg8L2M+ICA8Yz4xNjwvYz4gIDxjPjI4MDAmbmJzcDtIejwvYz4g
IDxjPjMyMDAmbmJzcDtIejwvYz4KKzxjPjEyPC9jPiAgPGM+NDwvYz4gIDxjPjg8L2M+IDxjPjE2
PC9jPiAgPGM+MzI8L2M+ICA8Yz4zMjAwJm5ic3A7SHo8L2M+ICA8Yz40MDAwJm5ic3A7SHo8L2M+
Cis8Yz4xMzwvYz4gIDxjPjQ8L2M+ICA8Yz44PC9jPiA8Yz4xNjwvYz4gIDxjPjMyPC9jPiAgPGM+
NDAwMCZuYnNwO0h6PC9jPiAgPGM+NDgwMCZuYnNwO0h6PC9jPgorPGM+MTQ8L2M+ICA8Yz40PC9j
PiAgPGM+ODwvYz4gPGM+MTY8L2M+ICA8Yz4zMjwvYz4gIDxjPjQ4MDAmbmJzcDtIejwvYz4gIDxj
PjU2MDAmbmJzcDtIejwvYz4KKzxjPjE1PC9jPiAgPGM+NjwvYz4gPGM+MTI8L2M+IDxjPjI0PC9j
PiAgPGM+NDg8L2M+ICA8Yz41NjAwJm5ic3A7SHo8L2M+ICA8Yz42ODAwJm5ic3A7SHo8L2M+Cis8
Yz4xNjwvYz4gIDxjPjY8L2M+IDxjPjEyPC9jPiA8Yz4yNDwvYz4gIDxjPjQ4PC9jPiAgPGM+Njgw
MCZuYnNwO0h6PC9jPiAgPGM+ODAwMCZuYnNwO0h6PC9jPgorPGM+MTc8L2M+ICA8Yz44PC9jPiA8
Yz4xNjwvYz4gPGM+MzI8L2M+ICA8Yz42NDwvYz4gIDxjPjgwMDAmbmJzcDtIejwvYz4gIDxjPjk2
MDAmbmJzcDtIejwvYz4KKzxjPjE4PC9jPiA8Yz4xMjwvYz4gPGM+MjQ8L2M+IDxjPjQ4PC9jPiAg
PGM+OTY8L2M+ICA8Yz45NjAwJm5ic3A7SHo8L2M+IDxjPjEyMDAwJm5ic3A7SHo8L2M+Cis8Yz4x
OTwvYz4gPGM+MTg8L2M+IDxjPjM2PC9jPiA8Yz43MjwvYz4gPGM+MTQ0PC9jPiA8Yz4xMjAwMCZu
YnNwO0h6PC9jPiA8Yz4xNTYwMCZuYnNwO0h6PC9jPgorPGM+MjA8L2M+IDxjPjIyPC9jPiA8Yz40
NDwvYz4gPGM+ODg8L2M+IDxjPjE3NjwvYz4gPGM+MTU2MDAmbmJzcDtIejwvYz4gPGM+MjAwMDAm
bmJzcDtIejwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK1RyYW5zaWVudHMgYXJlIG5vdG9yaW91
c2x5IGRpZmZpY3VsdCBmb3IgdHJhbnNmb3JtIGNvZGVjcyB0byBjb2RlLgorQ0VMVCB1c2VzIHR3
byBkaWZmZXJlbnQgc3RyYXRlZ2llcyBmb3IgdGhlbToKKzxsaXN0IHN0eWxlPSJudW1iZXJzIj4K
Kzx0PlVzaW5nIG11bHRpcGxlIHNtYWxsZXIgTURDVHMgaW5zdGVhZCBvZiBhIHNpbmdsZSBsYXJn
ZSBNRENULCBhbmQ8L3Q+Cis8dD5EeW5hbWljIHRpbWUtZnJlcXVlbmN5IHJlc29sdXRpb24gY2hh
bmdlcyAoU2VlIDx4cmVmIHRhcmdldD0ndGYtY2hhbmdlJy8+KS48L3Q+Cis8L2xpc3Q+CitUbyBp
bXByb3ZlIHF1YWxpdHkgb24gaGlnaGx5IHRvbmFsIGFuZCBwZXJpb2RpYyBzaWduYWxzLCBDRUxU
IGluY2x1ZGVzCithIHByZWZpbHRlci9wb3N0ZmlsdGVyIGNvbWJpbmF0aW9uLiBUaGUgcHJlZmls
dGVyIG9uIHRoZSBlbmNvZGVyIHNpZGUKK2F0dGVudWF0ZXMgdGhlIHNpZ25hbCdzIGhhcm1vbmlj
cy4gVGhlIHBvc3RmaWx0ZXIgb24gdGhlIGRlY29kZXIgc2lkZQorcmVzdG9yZXMgdGhlIG9yaWdp
bmFsIGdhaW4gb2YgdGhlIGhhcm1vbmljcywgd2hpbGUgc2hhcGluZyB0aGUgY29kaW5nIG5vaXNl
Cit0byByb3VnaGx5IGZvbGxvdyB0aGUgaGFybW9uaWNzLiBTdWNoIG5vaXNlIHNoYXBpbmcgcmVk
dWNlcyB0aGUgcGVyY2VwdGlvbgorb2YgdGhlIG5vaXNlLgorPC90PgorCis8dD4KK1doZW4gY29k
aW5nIGEgc3RlcmVvIHNpZ25hbCwgdGhyZWUgY29kaW5nIG1ldGhvZHMgYXJlIGF2YWlsYWJsZToK
KzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0Pm1pZC1zaWRlIHN0ZXJlbzogZW5jb2RlcyB0aGUg
bWVhbiBhbmQgdGhlIGRpZmZlcmVuY2Ugb2YgdGhlIGxlZnQgYW5kIHJpZ2h0IGNoYW5uZWxzLDwv
dD4KKzx0PmludGVuc2l0eSBzdGVyZW86IG9ubHkgZW5jb2RlcyB0aGUgbWVhbiBvZiB0aGUgbGVm
dCBhbmQgcmlnaHQgY2hhbm5lbHMgKGRpc2NhcmRzIHRoZSBkaWZmZXJlbmNlKSw8L3Q+Cis8dD5k
dWFsIHN0ZXJlbzogZW5jb2RlcyB0aGUgbGVmdCBhbmQgcmlnaHQgY2hhbm5lbHMgc2VwYXJhdGVs
eS48L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzx0PgorQW4gb3ZlcnZpZXcgb2YgdGhlIGRlY29kZXIg
aXMgZ2l2ZW4gaW4gPHhyZWYgdGFyZ2V0PSJjZWx0LWRlY29kZXItb3ZlcnZpZXciLz4uCis8L3Q+
CisKKzxmaWd1cmUgYW5jaG9yPSJjZWx0LWRlY29kZXItb3ZlcnZpZXciIHRpdGxlPSJTdHJ1Y3R1
cmUgb2YgdGhlIENFTFQgZGVjb2RlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFU
QVsKKyAgICAgICAgICAgICAgICstLS0tLS0tLS0rCisgICAgICAgICAgICAgICB8IENvYXJzZSAg
fAorICAgICAgICAgICAgKy0+fCBkZWNvZGVyIHwtLS0tKworICAgICAgICAgICAgfCAgKy0tLS0t
LS0tLSsgICAgfAorICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAg
fCAgKy0tLS0tLS0tLSsgICAgdgorICAgICAgICAgICAgfCAgfCAgRmluZSAgIHwgICstLS0rCisg
ICAgICAgICAgICArLT58IGRlY29kZXIgfC0+fCArIHwKKyAgICAgICAgICAgIHwgICstLS0tLS0t
LS0rICArLS0tKworICAgICAgICAgICAgfCAgICAgICBeICAgICAgICAgfAorKy0tLS0tLS0tLSsg
fCAgICAgICB8ICAgICAgICAgfAorfCAgUmFuZ2UgIHwgfCArLS0tLS0tLS0tLSsgICAgdgorfCBE
ZWNvZGVyIHwtKyB8ICAgQml0ICAgIHwgKy0tLS0tLSsKKystLS0tLS0tLS0rIHwgfEFsbG9jYXRp
b258IHwgMioqeCB8CisgICAgICAgICAgICB8ICstLS0tLS0tLS0tKyArLS0tLS0tKworICAgICAg
ICAgICAgfCAgICAgICB8ICAgICAgICAgfAorICAgICAgICAgICAgfCAgICAgICB2ICAgICAgICAg
diAgICAgICAgICAgICAgICstLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICstLS0tLS0tLS0rICAr
LS0tKyAgKy0tLS0tLS0rICB8IHBpdGNoICB8CisgICAgICAgICAgICArLT58ICAgUFZRICAgfC0+
fCAqIHwtPnwgSU1EQ1QgfC0+fCBwb3N0LSAgfC0tLT4KKyAgICAgICAgICAgIHwgIHwgZGVjb2Rl
ciB8ICArLS0tKyAgKy0tLS0tLS0rICB8IGZpbHRlciB8CisgICAgICAgICAgICB8ICArLS0tLS0t
LS0tKyAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tKworICAgICAgICAgICAgfCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgorICAgICAgICAgICAgKy0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisK
Kzx0PgorVGhlIGRlY29kZXIgaXMgYmFzZWQgb24gdGhlIGZvbGxvd2luZyBzeW1ib2xzIGFuZCBz
ZXRzIG9mIHN5bWJvbHM6Cis8L3Q+CisKKzx0ZXh0dGFibGUgYW5jaG9yPSJjZWx0X3N5bWJvbHMi
CisgdGl0bGU9Ik9yZGVyIG9mIHRoZSBTeW1ib2xzIGluIHRoZSBDRUxUIFNlY3Rpb24gb2YgdGhl
IEJpdHN0cmVhbSI+Cis8dHRjb2wgYWxpZ249ImNlbnRlciI+U3ltYm9sKHMpPC90dGNvbD4KKzx0
dGNvbCBhbGlnbj0iY2VudGVyIj5QREY8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJjZW50ZXIiPkNv
bmRpdGlvbjwvdHRjb2w+Cis8Yz5zaWxlbmNlPC9jPiAgICAgIDxjPnszMjc2NywgMX0vMzI3Njg8
L2M+IDxjPjwvYz4KKzxjPnBvc3QtZmlsdGVyPC9jPiAgPGM+ezEsIDF9LzI8L2M+IDxjPjwvYz4K
KzxjPm9jdGF2ZTwvYz4gICAgICAgPGM+dW5pZm9ybSAoNik8L2M+PGM+cG9zdC1maWx0ZXI8L2M+
Cis8Yz5wZXJpb2Q8L2M+ICAgICAgIDxjPnJhdyBiaXRzICg0K29jdGF2ZSk8L2M+PGM+cG9zdC1m
aWx0ZXI8L2M+Cis8Yz5nYWluPC9jPiAgICAgICAgIDxjPnJhdyBiaXRzICgzKTwvYz48Yz5wb3N0
LWZpbHRlcjwvYz4KKzxjPnRhcHNldDwvYz4gICAgICAgPGM+ezIsIDEsIDF9LzQ8L2M+PGM+cG9z
dC1maWx0ZXI8L2M+Cis8Yz50cmFuc2llbnQ8L2M+ICAgIDxjPns3LCAxfS84PC9jPjxjPjwvYz4K
KzxjPmludHJhPC9jPiAgICAgICAgPGM+ezcsIDF9Lzg8L2M+PGM+PC9jPgorPGM+Y29hcnNlIGVu
ZXJneTwvYz48Yz48eHJlZiB0YXJnZXQ9ImVuZXJneS1kZWNvZGluZyIvPjwvYz48Yz48L2M+Cis8
Yz50Zl9jaGFuZ2U8L2M+ICAgIDxjPjx4cmVmIHRhcmdldD0idHJhbnNpZW50LWRlY29kaW5nIi8+
PC9jPjxjPjwvYz4KKzxjPnRmX3NlbGVjdDwvYz4gICAgPGM+ezEsIDF9LzI8L2M+PGM+PHhyZWYg
dGFyZ2V0PSJ0cmFuc2llbnQtZGVjb2RpbmciLz48L2M+Cis8Yz5zcHJlYWQ8L2M+ICAgICAgIDxj
Pns3LCAyLCAyMSwgMn0vMzI8L2M+PGM+PC9jPgorPGM+ZHluLiBhbGxvYy48L2M+ICA8Yz48eHJl
ZiB0YXJnZXQ9ImFsbG9jYXRpb24iLz48L2M+PGM+PC9jPgorPGM+YWxsb2MuIHRyaW08L2M+ICA8
Yz57MiwgMiwgNSwgMTAsIDIyLCA0NiwgMjIsIDEwLCA1LCAyLCAyfS8xMjg8L2M+PGM+PC9jPgor
PGM+c2tpcDwvYz4gICAgICAgICA8Yz57MSwgMX0vMjwvYz48Yz48eHJlZiB0YXJnZXQ9ImFsbG9j
YXRpb24iLz48L2M+Cis8Yz5pbnRlbnNpdHk8L2M+ICAgIDxjPnVuaWZvcm08L2M+PGM+PHhyZWYg
dGFyZ2V0PSJhbGxvY2F0aW9uIi8+PC9jPgorPGM+ZHVhbDwvYz4gICAgICAgICA8Yz57MSwgMX0v
MjwvYz48Yz48L2M+Cis8Yz5maW5lIGVuZXJneTwvYz4gIDxjPjx4cmVmIHRhcmdldD0iZW5lcmd5
LWRlY29kaW5nIi8+PC9jPjxjPjwvYz4KKzxjPnJlc2lkdWFsPC9jPiAgICAgPGM+PHhyZWYgdGFy
Z2V0PSJQVlEtZGVjb2RlciIvPjwvYz48Yz48L2M+Cis8Yz5hbnRpLWNvbGxhcHNlPC9jPjxjPnsx
LCAxfS8yPC9jPjxjPjx4cmVmIHRhcmdldD0iYW50aS1jb2xsYXBzZSIvPjwvYz4KKzxjPmZpbmFs
aXplPC9jPiAgICAgPGM+PHhyZWYgdGFyZ2V0PSJlbmVyZ3ktZGVjb2RpbmciLz48L2M+PGM+PC9j
PgorPC90ZXh0dGFibGU+CisKKzx0PgorVGhlIGRlY29kZXIgZXh0cmFjdHMgaW5mb3JtYXRpb24g
ZnJvbSB0aGUgcmFuZ2UtY29kZWQgYml0c3RyZWFtIGluIHRoZSBvcmRlcgorZGVzY3JpYmVkIGlu
IDx4cmVmIHRhcmdldD0nY2VsdF9zeW1ib2xzJy8+LiBJbiBzb21lIGNpcmN1bXN0YW5jZXMsIGl0
IGlzCitwb3NzaWJsZSBmb3IgYSBkZWNvZGVkIHZhbHVlIHRvIGJlIG91dCBvZiByYW5nZSBkdWUg
dG8gYSB2ZXJ5IHNtYWxsIGFtb3VudCBvZiByZWR1bmRhbmN5CitpbiB0aGUgZW5jb2Rpbmcgb2Yg
bGFyZ2UgaW50ZWdlcnMgYnkgdGhlIHJhbmdlIGNvZGVyLgorSW4gdGhhdCBjYXNlLCB0aGUgZGVj
b2RlciBzaG91bGQgYXNzdW1lIHRoZXJlIGhhcyBiZWVuIGFuIGVycm9yIGluIHRoZSBjb2Rpbmcs
CitkZWNvZGluZywgb3IgdHJhbnNtaXNzaW9uIGFuZCBTSE9VTEQgdGFrZSBtZWFzdXJlcyB0byBj
b25jZWFsIHRoZSBlcnJvciBhbmQvb3IgcmVwb3J0Cit0byB0aGUgYXBwbGljYXRpb24gdGhhdCBh
IHByb2JsZW0gaGFzIG9jY3VycmVkLiBTdWNoIG91dCBvZiByYW5nZSBlcnJvcnMgY2Fubm90IG9j
Y3VyCitpbiB0aGUgU0lMSyBsYXllci4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJ0cmFuc2ll
bnQtZGVjb2RpbmciIHRpdGxlPSJUcmFuc2llbnQgRGVjb2RpbmciPgorPHQ+CitUaGUgInRyYW5z
aWVudCIgZmxhZyBpbmRpY2F0ZXMgd2hldGhlciB0aGUgZnJhbWUgdXNlcyBhIHNpbmdsZSBsb25n
IE1EQ1Qgb3Igc2V2ZXJhbCBzaG9ydCBNRENUcy4KK1doZW4gaXQgaXMgc2V0LCB0aGVuIHRoZSBN
RENUIGNvZWZmaWNpZW50cyByZXByZXNlbnQgbXVsdGlwbGUKK3Nob3J0IE1EQ1RzIGluIHRoZSBm
cmFtZS4gV2hlbiBub3Qgc2V0LCB0aGUgY29lZmZpY2llbnRzIHJlcHJlc2VudCBhIHNpbmdsZQor
bG9uZyBNRENUIGZvciB0aGUgZnJhbWUuIFRoZSBmbGFnIGlzIGVuY29kZWQgaW4gdGhlIGJpdHN0
cmVhbSB3aXRoIGEgcHJvYmFiaWxpdHkgb2YgMS84LgorSW4gYWRkaXRpb24gdG8gdGhlIGdsb2Jh
bCB0cmFuc2llbnQgZmxhZyBpcyBhIHBlci1iYW5kCitiaW5hcnkgZmxhZyB0byBjaGFuZ2UgdGhl
IHRpbWUtZnJlcXVlbmN5ICh0ZikgcmVzb2x1dGlvbiBpbmRlcGVuZGVudGx5IGluIGVhY2ggYmFu
ZC4gVGhlCitjaGFuZ2UgaW4gdGYgcmVzb2x1dGlvbiBpcyBkZWZpbmVkIGluIHRmX3NlbGVjdF90
YWJsZVtdW10gaW4gY2VsdC5jIGFuZCBkZXBlbmRzCitvbiB0aGUgZnJhbWUgc2l6ZSwgd2hldGhl
ciB0aGUgdHJhbnNpZW50IGZsYWcgaXMgc2V0LCBhbmQgdGhlIHZhbHVlIG9mIHRmX3NlbGVjdC4K
K1RoZSB0Zl9zZWxlY3QgZmxhZyB1c2VzIGEgMS8yIHByb2JhYmlsaXR5LCBidXQgaXMgb25seSBk
ZWNvZGVkCitpZiBpdCBjYW4gaGF2ZSBhbiBpbXBhY3Qgb24gdGhlIHJlc3VsdCBrbm93aW5nIHRo
ZSB2YWx1ZSBvZiBhbGwgcGVyLWJhbmQKK3RmX2NoYW5nZSBmbGFncy4KKzwvdD4KKzwvc2VjdGlv
bj4KKworPHNlY3Rpb24gYW5jaG9yPSJlbmVyZ3ktZGVjb2RpbmciIHRpdGxlPSJFbmVyZ3kgRW52
ZWxvcGUgRGVjb2RpbmciPgorCis8dD4KK0l0IGlzIGltcG9ydGFudCB0byBxdWFudGl6ZSB0aGUg
ZW5lcmd5IHdpdGggc3VmZmljaWVudCByZXNvbHV0aW9uIGJlY2F1c2UKK2FueSBlbmVyZ3kgcXVh
bnRpemF0aW9uIGVycm9yIGNhbm5vdCBiZSBjb21wZW5zYXRlZCBmb3IgYXQgYSBsYXRlcgorc3Rh
Z2UuIFJlZ2FyZGxlc3Mgb2YgdGhlIHJlc29sdXRpb24gdXNlZCBmb3IgZW5jb2RpbmcgdGhlIHNw
ZWN0cmFsIHNoYXBlIG9mIGEgYmFuZCwKK2l0IGlzIHBlcmNlcHR1YWxseSBpbXBvcnRhbnQgdG8g
cHJlc2VydmUgdGhlIGVuZXJneSBpbiBlYWNoIGJhbmQuIENFTFQgdXNlcyBhCit0aHJlZS1zdGVw
IGNvYXJzZS1maW5lLWZpbmUgc3RyYXRlZ3kgZm9yIGVuY29kaW5nIHRoZSBlbmVyZ3kgaW4gdGhl
IGJhc2UtMiBsb2cKK2RvbWFpbiwgYXMgaW1wbGVtZW50ZWQgaW4gcXVhbnRfYmFuZHMuYzwvdD4K
KworPHNlY3Rpb24gYW5jaG9yPSJjb2Fyc2UtZW5lcmd5LWRlY29kaW5nIiB0aXRsZT0iQ29hcnNl
IGVuZXJneSBkZWNvZGluZyI+Cis8dD4KK0NvYXJzZSBxdWFudGl6YXRpb24gb2YgdGhlIGVuZXJn
eSB1c2VzIGEgZml4ZWQgcmVzb2x1dGlvbiBvZiA2IGRCCisoaW50ZWdlciBwYXJ0IG9mIGJhc2Ut
MiBsb2cpLiBUbyBtaW5pbWl6ZSB0aGUgYml0cmF0ZSwgcHJlZGljdGlvbiBpcyBhcHBsaWVkCiti
b3RoIGluIHRpbWUgKHVzaW5nIHRoZSBwcmV2aW91cyBmcmFtZSkgYW5kIGluIGZyZXF1ZW5jeSAo
dXNpbmcgdGhlIHByZXZpb3VzCitiYW5kcykuIFRoZSBwYXJ0IG9mIHRoZSBwcmVkaWN0aW9uIHRo
YXQgaXMgYmFzZWQgb24gdGhlCitwcmV2aW91cyBmcmFtZSBjYW4gYmUgZGlzYWJsZWQsIGNyZWF0
aW5nIGFuICJpbnRyYSIgZnJhbWUgd2hlcmUgdGhlIGVuZXJneQoraXMgY29kZWQgd2l0aG91dCBy
ZWZlcmVuY2UgdG8gcHJpb3IgZnJhbWVzLiBUaGUgZGVjb2RlciBmaXJzdCByZWFkcyB0aGUgaW50
cmEgZmxhZwordG8gZGV0ZXJtaW5lIHdoYXQgcHJlZGljdGlvbiBpcyB1c2VkLgorVGhlIDItRCB6
LXRyYW5zZm9ybSA8eHJlZiB0YXJnZXQ9J3otdHJhbnNmb3JtJy8+IG9mCit0aGUgcHJlZGljdGlv
biBmaWx0ZXIgaXM6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNl
bnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTEgICAgICAgICAg
LTEKKyAgICAgICAgICAgICAgKDEgLSBhbHBoYSp6X2wgICkqKDEgLSB6X2IgICkKK0Eoel9sLCB6
X2IpID0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC0xCisgICAgICAgICAgICAgICAgICAgICAxIC0gYmV0YSp6X2IKK11dPjwv
YXJ0d29yaz4KKzwvZmlndXJlPgord2hlcmUgYiBpcyB0aGUgYmFuZCBpbmRleCBhbmQgbCBpcyB0
aGUgZnJhbWUgaW5kZXguIFRoZSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cworYXBwbGllZCBkZXBl
bmQgb24gdGhlIGZyYW1lIHNpemUgaW4gdXNlIHdoZW4gbm90IHVzaW5nIGludHJhIGVuZXJneSBh
bmQgYXJlIGFscGhhPTAsIGJldGE9NDkxNS8zMjc2OAord2hlbiB1c2luZyBpbnRyYSBlbmVyZ3ku
CitUaGUgdGltZS1kb21haW4gcHJlZGljdGlvbiBpcyBiYXNlZCBvbiB0aGUgZmluYWwgZmluZSBx
dWFudGl6YXRpb24gb2YgdGhlIHByZXZpb3VzCitmcmFtZSwgd2hpbGUgdGhlIGZyZXF1ZW5jeSBk
b21haW4gKHdpdGhpbiB0aGUgY3VycmVudCBmcmFtZSkgcHJlZGljdGlvbiBpcyBiYXNlZAorb24g
Y29hcnNlIHF1YW50aXphdGlvbiBvbmx5IChiZWNhdXNlIHRoZSBmaW5lIHF1YW50aXphdGlvbiBo
YXMgbm90IGJlZW4gY29tcHV0ZWQKK3lldCkuIFRoZSBwcmVkaWN0aW9uIGlzIGNsYW1wZWQgaW50
ZXJuYWxseSBzbyB0aGF0IGZpeGVkIHBvaW50IGltcGxlbWVudGF0aW9ucyB3aXRoCitsaW1pdGVk
IGR5bmFtaWMgcmFuZ2UgYWx3YXlzIHJlbWFpbiBpbiB0aGUgc2FtZSBzdGF0ZSBhcyBmbG9hdGlu
ZyBwb2ludCBpbXBsZW1lbnRhdGlvbnMuCitXZSBhcHByb3hpbWF0ZSB0aGUgaWRlYWwKK3Byb2Jh
YmlsaXR5IGRpc3RyaWJ1dGlvbiBvZiB0aGUgcHJlZGljdGlvbiBlcnJvciB1c2luZyBhIExhcGxh
Y2UgZGlzdHJpYnV0aW9uCit3aXRoIHNlcGFyYXRlIHBhcmFtZXRlcnMgZm9yIGVhY2ggZnJhbWUg
c2l6ZSBpbiBpbnRyYS0gYW5kIGludGVyLWZyYW1lIG1vZGVzLiBUaGVzZQorcGFyYW1ldGVycyBh
cmUgaGVsZCBpbiB0aGUgZV9wcm9iX21vZGVsIHRhYmxlIGluIHF1YW50X2JhbmRzLmMuCitUaGUK
K2NvYXJzZSBlbmVyZ3kgcXVhbnRpemF0aW9uIGlzIHBlcmZvcm1lZCBieSB1bnF1YW50X2NvYXJz
ZV9lbmVyZ3koKSBhbmQKK3VucXVhbnRfY29hcnNlX2VuZXJneV9pbXBsKCkgKHF1YW50X2JhbmRz
LmMpLiBUaGUgZW5jb2Rpbmcgb2YgdGhlIExhcGxhY2UtZGlzdHJpYnV0ZWQgdmFsdWVzIGlzCitp
bXBsZW1lbnRlZCBpbiBlY19sYXBsYWNlX2RlY29kZSgpIChsYXBsYWNlLmMpLgorPC90PgorCis8
L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZmluZS1lbmVyZ3ktZGVjb2RpbmciIHRpdGxl
PSJGaW5lIGVuZXJneSBxdWFudGl6YXRpb24iPgorPHQ+CitUaGUgbnVtYmVyIG9mIGJpdHMgYXNz
aWduZWQgdG8gZmluZSBlbmVyZ3kgcXVhbnRpemF0aW9uIGluIGVhY2ggYmFuZCBpcyBkZXRlcm1p
bmVkCitieSB0aGUgYml0IGFsbG9jYXRpb24gY29tcHV0YXRpb24gZGVzY3JpYmVkIGluIDx4cmVm
IHRhcmdldD0iYWxsb2NhdGlvbiI+PC94cmVmPi4KK0xldCBCX2kgYmUgdGhlIG51bWJlciBvZiBm
aW5lIGVuZXJneSBiaXRzCitmb3IgYmFuZCBpOyB0aGUgcmVmaW5lbWVudCBpcyBhbiBpbnRlZ2Vy
IGYgaW4gdGhlIHJhbmdlIFswLDIqKkJfaS0xXS4gVGhlIG1hcHBpbmcgYmV0d2VlbiBmCithbmQg
dGhlIGNvcnJlY3Rpb24gYXBwbGllZCB0byB0aGUgY29hcnNlIGVuZXJneSBpcyBlcXVhbCB0byAo
ZisxLzIpLzIqKkJfaSAtIDEvMi4gRmluZQorZW5lcmd5IHF1YW50aXphdGlvbiBpcyBpbXBsZW1l
bnRlZCBpbiBxdWFudF9maW5lX2VuZXJneSgpIChxdWFudF9iYW5kcy5jKS4KKzwvdD4KKzx0Pgor
V2hlbiBzb21lIGJpdHMgYXJlIGxlZnQgInVudXNlZCIgYWZ0ZXIgYWxsIG90aGVyIGZsYWdzIGhh
dmUgYmVlbiBkZWNvZGVkLCB0aGVzZSBiaXRzCithcmUgYXNzaWduZWQgdG8gYSAiZmluYWwiIHN0
ZXAgb2YgZmluZSBhbGxvY2F0aW9uLiBJbiBlZmZlY3QsIHRoZXNlIGJpdHMgYXJlIHVzZWQKK3Rv
IGFkZCBvbmUgZXh0cmEgZmluZSBlbmVyZ3kgYml0IHBlciBiYW5kIHBlciBjaGFubmVsLiBUaGUg
YWxsb2NhdGlvbiBwcm9jZXNzCitkZXRlcm1pbmVzIHR3byAicHJpb3JpdGllcyIgZm9yIHRoZSBm
aW5hbCBmaW5lIGJpdHMuCitBbnkgcmVtYWluaW5nIGJpdHMgYXJlIGZpcnN0IGFzc2lnbmVkIG9u
bHkgdG8gYmFuZHMgb2YgcHJpb3JpdHkgMCwgc3RhcnRpbmcKK2Zyb20gYmFuZCAwIGFuZCBnb2lu
ZyB1cC4gSWYgYWxsIGJhbmRzIG9mIHByaW9yaXR5IDAgaGF2ZSByZWNlaXZlZCBvbmUgYml0IHBl
cgorY2hhbm5lbCwgdGhlbiBiYW5kcyBvZiBwcmlvcml0eSAxIGFyZSBhc3NpZ25lZCBhbiBleHRy
YSBiaXQgcGVyIGNoYW5uZWwsCitzdGFydGluZyBmcm9tIGJhbmQgMC4gSWYgYW55IGJpdHMgYXJl
IGxlZnQgYWZ0ZXIgdGhpcywgdGhleSBhcmUgbGVmdCB1bnVzZWQuCitUaGlzIGlzIGltcGxlbWVu
dGVkIGluIHVucXVhbnRfZW5lcmd5X2ZpbmFsaXNlKCkgKHF1YW50X2JhbmRzLmMpLgorPC90Pgor
Cis8L3NlY3Rpb24+IDwhLS0gZmluZSBlbmVyZ3kgLS0+CisKKzwvc2VjdGlvbj4gPCEtLSBFbmVy
Z3kgZGVjb2RlIC0tPgorCis8c2VjdGlvbiBhbmNob3I9ImFsbG9jYXRpb24iIHRpdGxlPSJCaXQg
QWxsb2NhdGlvbiI+CisKKzx0PkJlY2F1c2UgdGhlIGJpdCBhbGxvY2F0aW9uIGRyaXZlcyB0aGUg
ZGVjb2Rpbmcgb2YgdGhlIHJhbmdlLWNvZGVyCitzdHJlYW0sIGl0IE1VU1QgYmUgcmVjb3ZlcmVk
IGV4YWN0bHkgc28gdGhhdCBpZGVudGljYWwgY29kaW5nIGRlY2lzaW9ucyBhcmUKK21hZGUgaW4g
dGhlIGVuY29kZXIgYW5kIGRlY29kZXIuIEFueSBkZXZpYXRpb24gZnJvbSB0aGUgcmVmZXJlbmNl
J3MgcmVzdWx0aW5nCitiaXQgYWxsb2NhdGlvbiB3aWxsIHJlc3VsdCBpbiBjb3JydXB0ZWQgb3V0
cHV0LCB0aG91Z2ggaW1wbGVtZW50ZXJzIGFyZQorZnJlZSB0byBpbXBsZW1lbnQgdGhlIHByb2Nl
ZHVyZSBpbiBhbnkgd2F5IHdoaWNoIHByb2R1Y2VzIGlkZW50aWNhbCByZXN1bHRzLjwvdD4KKwor
PHQ+VGhlIHBlci1iYW5kIGdhaW4tc2hhcGUgc3RydWN0dXJlIG9mIHRoZSBDRUxUIGxheWVyIGVu
c3VyZXMgdGhhdCB1c2luZworIHRoZSBzYW1lIG51bWJlciBvZiBiaXRzIGZvciB0aGUgc3BlY3Ry
YWwgc2hhcGUgb2YgYSBiYW5kIGluIGV2ZXJ5IGZyYW1lIHdpbGwKKyByZXN1bHQgaW4gYSByb3Vn
aGx5IGNvbnN0YW50IHNpZ25hbC10by1ub2lzZSByYXRpbyBpbiB0aGF0IGJhbmQuCitUaGlzIHJl
c3VsdHMgaW4gY29kaW5nIG5vaXNlIHRoYXQgaGFzIHRoZSBzYW1lIHNwZWN0cmFsIGVudmVsb3Bl
IGFzIHRoZSBzaWduYWwuCitUaGUgbWFza2luZyBjdXJ2ZSBwcm9kdWNlZCBieSBhIHN0YW5kYXJk
IHBzeWNob2Fjb3VzdGljIG1vZGVsIGFsc28gY2xvc2VseQorIGZvbGxvd3MgdGhlIHNwZWN0cmFs
IGVudmVsb3BlIG9mIHRoZSBzaWduYWwuCitUaGlzIHN0cnVjdHVyZSBtZWFucyB0aGF0IHRoZSBp
ZGVhbCBhbGxvY2F0aW9uIGlzIG1vcmUgY29uc2lzdGVudCBmcm9tIGZyYW1lIHRvCisgZnJhbWUg
dGhhbiBpdCBpcyBmb3Igb3RoZXIgY29kZWNzIHdpdGhvdXQgYW4gZXF1aXZhbGVudCBzdHJ1Y3R1
cmUsIGFuZCB0aGF0IGEKKyBmaXhlZCBhbGxvY2F0aW9uIHByb3ZpZGVzIGZhaXJseSBjb25zaXN0
ZW50IHBlcmNlcHR1YWwKKyBwZXJmb3JtYW5jZSZuYnNwOzx4cmVmIHRhcmdldD0nVmFsaW4yMDEw
Jy8+LjwvdD4KKworPHQ+TWFueSBjb2RlY3MgdHJhbnNtaXQgc2lnbmlmaWNhbnQgYW1vdW50cyBv
ZiBzaWRlIGluZm9ybWF0aW9uIHRvIGNvbnRyb2wgdGhlCisgYml0IGFsbG9jYXRpb24gd2l0aGlu
IGEgZnJhbWUuCitPZnRlbiB0aGlzIGNvbnRyb2wgaXMgb25seSBpbmRpcmVjdCwgYW5kIG11c3Qg
YmUgZXhlcmNpc2VkIGNhcmVmdWxseSB0bworIGFjaGlldmUgdGhlIGRlc2lyZWQgcmF0ZSBjb25z
dHJhaW50cy4KK1RoZSBDRUxUIGxheWVyLCBob3dldmVyLCBjYW4gYWRhcHQgb3ZlciBhIHZlcnkg
d2lkZSByYW5nZSBvZiByYXRlcywgYW5kIHRodXMKKyBoYXMgYSBsYXJnZSBudW1iZXIgb2YgY29k
ZWJvb2sgc2l6ZXMgdG8gY2hvb3NlIGZyb20gZm9yIGVhY2ggYmFuZC4KK0V4cGxpY2l0bHkgc2ln
bmFsaW5nIHRoZSBzaXplIG9mIGVhY2ggb2YgdGhlc2UgY29kZWJvb2tzIHdvdWxkIGltcG9zZQor
IGNvbnNpZGVyYWJsZSBvdmVyaGVhZCwgZXZlbiB0aG91Z2ggdGhlIGFsbG9jYXRpb24gaXMgcmVs
YXRpdmVseSBzdGF0aWMgZnJvbQorIGZyYW1lIHRvIGZyYW1lLgorVGhpcyBpcyBiZWNhdXNlIGFs
bCBvZiB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gY29tcHV0ZSB0aGVzZSBjb2RlYm9vayBz
aXplcworIG11c3QgYmUgZGVyaXZlZCBmcm9tIGEgc2luZ2xlIGZyYW1lIGJ5IGl0c2VsZiwgaW4g
b3JkZXIgdG8gcmV0YWluIHJvYnVzdG5lc3MKKyB0byBwYWNrZXQgbG9zcywgc28gdGhlIHNpZ25h
bGluZyBjYW5ub3QgdGFrZSBhZHZhbnRhZ2Ugb2Yga25vd2xlZGdlIG9mIHRoZQorIGFsbG9jYXRp
b24gaW4gbmVpZ2hib3JpbmcgZnJhbWVzLgorVGhpcyBwcm9ibGVtIGlzIGV4YWNlcmJhdGVkIGlu
IGxvdy1sYXRlbmN5IChzbWFsbCBmcmFtZSBzaXplKSBhcHBsaWNhdGlvbnMsCisgd2hpY2ggd291
bGQgaW5jbHVkZSB0aGlzIG92ZXJoZWFkIGluIGV2ZXJ5IGZyYW1lLjwvdD4KKworPHQ+Rm9yIHRo
aXMgcmVhc29uLCBpbiB0aGUgTURDVCBtb2RlIE9wdXMgdXNlcyBhIHByaW1hcmlseSBpbXBsaWNp
dCBiaXQKK2FsbG9jYXRpb24uIFRoZSBhdmFpbGFibGUgYml0c3RyZWFtIGNhcGFjaXR5IGlzIGtu
b3duIGluIGFkdmFuY2UgdG8gYm90aAordGhlIGVuY29kZXIgYW5kIGRlY29kZXIgd2l0aG91dCBh
ZGRpdGlvbmFsIHNpZ25hbGluZywgdWx0aW1hdGVseSBmcm9tIHRoZQorcGFja2V0IHNpemVzIGV4
cHJlc3NlZCBieSBhIGhpZ2hlci1sZXZlbCBwcm90b2NvbC4gVXNpbmcgdGhpcyBpbmZvcm1hdGlv
biwKK3RoZSBjb2RlYyBpbnRlcnBvbGF0ZXMgYW4gYWxsb2NhdGlvbiBmcm9tIGEgaGFyZC1jb2Rl
ZCB0YWJsZS48L3Q+CisKKzx0PldoaWxlIHRoZSBiYW5kLWVuZXJneSBzdHJ1Y3R1cmUgZWZmZWN0
aXZlbHkgbW9kZWxzIGludHJhLWJhbmQgbWFza2luZywKK2l0IGlnbm9yZXMgdGhlIHdlYWtlciBp
bnRlci1iYW5kIG1hc2tpbmcsIGJhbmQtdGVtcG9yYWwgbWFza2luZywgYW5kCitvdGhlciBsZXNz
IHNpZ25pZmljYW50IHBlcmNlcHR1YWwgZWZmZWN0cy4gV2hpbGUgdGhlc2UgZWZmZWN0cyBjYW4K
K29mdGVuIGJlIGlnbm9yZWQsIHRoZXkgY2FuIGJlY29tZSBzaWduaWZpY2FudCBmb3IgcGFydGlj
dWxhciBzYW1wbGVzLiBPbmUKK21lY2hhbmlzbSBhdmFpbGFibGUgdG8gZW5jb2RlcnMgd291bGQg
YmUgdG8gc2ltcGx5IGluY3JlYXNlIHRoZSBvdmVyYWxsCityYXRlIGZvciB0aGVzZSBmcmFtZXMs
IGJ1dCB0aGlzIGlzIG5vdCBwb3NzaWJsZSBpbiBhIGNvbnN0YW50IHJhdGUgbW9kZQorYW5kIGNh
biBiZSBmYWlybHkgaW5lZmZpY2llbnQuIEFzIGEgcmVzdWx0IHRocmVlIGV4cGxpY2l0bHkgc2ln
bmFsZWQKK21lY2hhbmlzbXMgYXJlIHByb3ZpZGVkIHRvIGFsdGVyIHRoZSBpbXBsaWNpdCBhbGxv
Y2F0aW9uOjwvdD4KKworPHQ+Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5CYW5kIGJvb3N0
PC90PgorPHQ+QWxsb2NhdGlvbiB0cmltPC90PgorPHQ+QmFuZCBza2lwcGluZzwvdD4KKzwvbGlz
dD4KKzwvdD4KKworPHQ+VGhlIGZpcnN0IG9mIHRoZXNlIG1lY2hhbmlzbXMsIGJhbmQgYm9vc3Qs
IGFsbG93cyBhbiBlbmNvZGVyIHRvIGJvb3N0Cit0aGUgYWxsb2NhdGlvbiBpbiBzcGVjaWZpYyBi
YW5kcy4gVGhlIHNlY29uZCwgYWxsb2NhdGlvbiB0cmltLCB3b3JrcyBieQorYmlhc2luZyB0aGUg
b3ZlcmFsbCBhbGxvY2F0aW9uIHRvd2FyZHMgaGlnaGVyIG9yIGxvd2VyIGZyZXF1ZW5jeSBiYW5k
cy4gVGhlIHRoaXJkLCBiYW5kCitza2lwcGluZywgc2VsZWN0cyB3aGljaCBsb3ctcHJlY2lzaW9u
IGhpZ2ggZnJlcXVlbmN5IGJhbmRzCit3aWxsIGJlIGFsbG9jYXRlZCBubyBzaGFwZSBiaXRzIGF0
IGFsbC48L3Q+CisKKzx0PkluIHN0ZXJlbyBtb2RlIHRoZXJlIGFyZSB0d28gYWRkaXRpb25hbCBw
YXJhbWV0ZXJzCitwb3RlbnRpYWxseSBjb2RlZCBhcyBwYXJ0IG9mIHRoZSBhbGxvY2F0aW9uIHBy
b2NlZHVyZTogYSBwYXJhbWV0ZXIgdG8gYWxsb3cgdGhlCitzZWxlY3RpdmUgZWxpbWluYXRpb24g
b2YgYWxsb2NhdGlvbiBmb3IgdGhlICdzaWRlJyAoaS5lLiwgaW50ZW5zaXR5IHN0ZXJlbykgaW4g
am9pbnRseSBjb2RlZCBiYW5kcywKK2FuZCBhIGZsYWcgdG8gZGVhY3RpdmF0ZSBqb2ludCBjb2Rp
bmcgKGkuZS4sIGR1YWwgc3RlcmVvKS4gVGhlc2UgdmFsdWVzIGFyZSBub3Qgc2lnbmFsZWQgaWYK
K3RoZXkgd291bGQgYmUgbWVhbmluZ2xlc3MgaW4gdGhlIG92ZXJhbGwgY29udGV4dCBvZiB0aGUg
YWxsb2NhdGlvbi48L3Q+CisKKzx0PkJlY2F1c2UgZXZlcnkgc2lnbmFsZWQgYWRqdXN0bWVudCBp
bmNyZWFzZXMgb3ZlcmhlYWQgYW5kIGltcGxlbWVudGF0aW9uCitjb21wbGV4aXR5LCBub25lIHdl
cmUgaW5jbHVkZWQgc3BlY3VsYXRpdmVseTogdGhlIHJlZmVyZW5jZSBlbmNvZGVyIG1ha2VzIHVz
ZQorb2YgYWxsIG9mIHRoZXNlIG1lY2hhbmlzbXMuIFdoaWxlIHRoZSBkZWNpc2lvbiBsb2dpYyBp
biB0aGUgcmVmZXJlbmNlIHdhcworZm91bmQgdG8gYmUgZWZmZWN0aXZlIGVub3VnaCB0byBqdXN0
aWZ5IHRoZSBvdmVyaGVhZCBhbmQgY29tcGxleGl0eSwgZnVydGhlcgorYW5hbHlzaXMgdGVjaG5p
cXVlcyBtYXkgYmUgZGlzY292ZXJlZCB3aGljaCBpbmNyZWFzZSB0aGUgZWZmZWN0aXZlbmVzcyBv
ZiB0aGVzZQorcGFyYW1ldGVycy4gQXMgd2l0aCBvdGhlciBzaWduYWxlZCBwYXJhbWV0ZXJzLCBh
biBlbmNvZGVyIGlzIGZyZWUgdG8gY2hvb3NlIHRoZQordmFsdWVzIGluIGFueSBtYW5uZXIsIGJ1
dCB1bmxlc3MgYSB0ZWNobmlxdWUgaXMga25vd24gdG8gZGVsaXZlciBzdXBlcmlvcgorcGVyY2Vw
dHVhbCByZXN1bHRzIHRoZSBtZXRob2RzIHVzZWQgYnkgdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRh
dGlvbiBzaG91bGQgYmUKK3VzZWQuPC90PgorCis8dD5UaGUgYWxsb2NhdGlvbiBwcm9jZXNzIGNv
bnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IGRldGVybWluaW5nIHRoZSBwZXItYmFuZAor
bWF4aW11bSBhbGxvY2F0aW9uIHZlY3RvciwgZGVjb2RpbmcgdGhlIGJvb3N0cywgZGVjb2Rpbmcg
dGhlIHRpbHQsIGRldGVybWluaW5nCit0aGUgcmVtYWluaW5nIGNhcGFjaXR5IG9mIHRoZSBmcmFt
ZSwgc2VhcmNoaW5nIHRoZSBtb2RlIHRhYmxlIGZvciB0aGUKK2VudHJ5IG5lYXJlc3QgYnV0IG5v
dCBleGNlZWRpbmcgdGhlIGF2YWlsYWJsZSBzcGFjZSAoc3ViamVjdCB0byB0aGUgdGlsdCwgYm9v
c3RzLCBiYW5kCittYXhpbXVtcywgYW5kIGJhbmQgbWluaW11bXMpLCBsaW5lYXIgaW50ZXJwb2xh
dGlvbiwgcmVhbGxvY2F0aW9uIG9mCit1bnVzZWQgYml0cyB3aXRoIGNvbmN1cnJlbnQgc2tpcCBk
ZWNvZGluZywgZGV0ZXJtaW5hdGlvbiBvZiB0aGUKK2ZpbmUtZW5lcmd5IHZzLiBzaGFwZSBzcGxp
dCwgYW5kIGZpbmFsIHJlYWxsb2NhdGlvbi4gVGhpcyBwcm9jZXNzIHJlc3VsdHMKK2luIGEgcGVy
LWJhbmQgc2hhcGUgYWxsb2NhdGlvbiAoaW4gMS84dGggYml0IHVuaXRzKSwgYSBwZXItYmFuZCBm
aW5lLWVuZXJneQorYWxsb2NhdGlvbiAoaW4gMSBiaXQgcGVyIGNoYW5uZWwgdW5pdHMpLCBhIHNl
dCBvZiBiYW5kIHByaW9yaXRpZXMgZm9yCitjb250cm9sbGluZyB0aGUgdXNlIG9mIHJlbWFpbmlu
ZyBiaXRzIGF0IHRoZSBlbmQgb2YgdGhlIGZyYW1lLCBhbmQgYQorcmVtYWluaW5nIGJhbGFuY2Ug
b2YgdW5hbGxvY2F0ZWQgc3BhY2UsIHdoaWNoIGlzIHVzdWFsbHkgemVybyBleGNlcHQKK2F0IHZl
cnkgaGlnaCByYXRlcy48L3Q+CisKKzx0PgorVGhlICJzdGF0aWMiIGJpdCBhbGxvY2F0aW9uIChp
biAxLzggYml0cykgZm9yIGEgcXVhbGl0eSBxLCBleGNsdWRpbmcgdGhlIG1pbmltdW1zLCBtYXhp
bXVtcywKK3RpbHQgYW5kIGJvb3N0cywgaXMgZXF1YWwgdG8gY2hhbm5lbHMqTiphbGxvY1tiYW5k
XVtxXSZsdDsmbHQ7TE0mZ3Q7Jmd0OzIsIHdoZXJlCithbGxvY1tdW10gaXMgZ2l2ZW4gaW4gPHhy
ZWYgdGFyZ2V0PSJzdGF0aWNfYWxsb2MiLz4gYW5kIExNPWxvZzIoZnJhbWVfc2l6ZS8xMjApLiBU
aGUgYWxsb2NhdGlvbgoraXMgb2J0YWluZWQgYnkgbGluZWFybHkgaW50ZXJwb2xhdGluZyBiZXR3
ZWVuIHR3byB2YWx1ZXMgb2YgcSAoaW4gc3RlcHMgb2YgMS82NCkgdG8gZmluZCB0aGUKK2hpZ2hl
c3QgYWxsb2NhdGlvbiB0aGF0IGRvZXMgbm90IGV4Y2VlZCB0aGUgbnVtYmVyIG9mIGJpdHMgcmVt
YWluaW5nLgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0ic3RhdGljX2FsbG9jIgorIHRpdGxl
PSJDRUxUIFN0YXRpYyBBbGxvY2F0aW9uIFRhYmxlIj4KKyA8cHJlYW1ibGU+Um93cyBpbmRpY2F0
ZSB0aGUgTURDVCBiYW5kcywgY29sdW1ucyBhcmUgdGhlIGRpZmZlcmVudCBxdWFsaXR5IChxKSBw
YXJhbWV0ZXJzLiBUaGUgdW5pdHMgYXJlIDEvMzIgYml0IHBlciBNRENUIGJpbi48L3ByZWFtYmxl
PgorPHR0Y29sIGFsaWduPSJyaWdodCI+MDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij4x
PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjI8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJy
aWdodCI+MzwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0Ij40PC90dGNvbD4KKzx0dGNvbCBh
bGlnbj0icmlnaHQiPjU8L3R0Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+NjwvdHRjb2w+Cis8
dHRjb2wgYWxpZ249InJpZ2h0Ij43PC90dGNvbD4KKzx0dGNvbCBhbGlnbj0icmlnaHQiPjg8L3R0
Y29sPgorPHR0Y29sIGFsaWduPSJyaWdodCI+OTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249InJpZ2h0
Ij4xMDwvdHRjb2w+Cis8Yz4wPC9jPjxjPjkwPC9jPjxjPjExMDwvYz48Yz4xMTg8L2M+PGM+MTI2
PC9jPjxjPjEzNDwvYz48Yz4xNDQ8L2M+PGM+MTUyPC9jPjxjPjE2MjwvYz48Yz4xNzI8L2M+PGM+
MjAwPC9jPgorPGM+MDwvYz48Yz44MDwvYz48Yz4xMDA8L2M+PGM+MTEwPC9jPjxjPjExOTwvYz48
Yz4xMjc8L2M+PGM+MTM3PC9jPjxjPjE0NTwvYz48Yz4xNTU8L2M+PGM+MTY1PC9jPjxjPjIwMDwv
Yz4KKzxjPjA8L2M+PGM+NzU8L2M+PGM+OTA8L2M+PGM+MTAzPC9jPjxjPjExMjwvYz48Yz4xMjA8
L2M+PGM+MTMwPC9jPjxjPjEzODwvYz48Yz4xNDg8L2M+PGM+MTU4PC9jPjxjPjIwMDwvYz4KKzxj
PjA8L2M+PGM+Njk8L2M+PGM+ODQ8L2M+PGM+OTM8L2M+PGM+MTA0PC9jPjxjPjExNDwvYz48Yz4x
MjQ8L2M+PGM+MTMyPC9jPjxjPjE0MjwvYz48Yz4xNTI8L2M+PGM+MjAwPC9jPgorPGM+MDwvYz48
Yz42MzwvYz48Yz43ODwvYz48Yz44NjwvYz48Yz45NTwvYz48Yz4xMDM8L2M+PGM+MTEzPC9jPjxj
PjEyMzwvYz48Yz4xMzM8L2M+PGM+MTQzPC9jPjxjPjIwMDwvYz4KKzxjPjA8L2M+PGM+NTY8L2M+
PGM+NzE8L2M+PGM+ODA8L2M+PGM+ODk8L2M+PGM+OTc8L2M+PGM+MTA3PC9jPjxjPjExNzwvYz48
Yz4xMjc8L2M+PGM+MTM3PC9jPjxjPjIwMDwvYz4KKzxjPjA8L2M+PGM+NDk8L2M+PGM+NjU8L2M+
PGM+NzU8L2M+PGM+ODM8L2M+PGM+OTE8L2M+PGM+MTAxPC9jPjxjPjExMTwvYz48Yz4xMjE8L2M+
PGM+MTMxPC9jPjxjPjIwMDwvYz4KKzxjPjA8L2M+PGM+NDA8L2M+PGM+NTg8L2M+PGM+NzA8L2M+
PGM+Nzg8L2M+PGM+ODU8L2M+PGM+OTU8L2M+PGM+MTA1PC9jPjxjPjExNTwvYz48Yz4xMjU8L2M+
PGM+MjAwPC9jPgorPGM+MDwvYz48Yz4zNDwvYz48Yz41MTwvYz48Yz42NTwvYz48Yz43MjwvYz48
Yz43ODwvYz48Yz44ODwvYz48Yz45ODwvYz48Yz4xMDg8L2M+PGM+MTE4PC9jPjxjPjE5ODwvYz4K
KzxjPjA8L2M+PGM+Mjk8L2M+PGM+NDU8L2M+PGM+NTk8L2M+PGM+NjY8L2M+PGM+NzI8L2M+PGM+
ODI8L2M+PGM+OTI8L2M+PGM+MTAyPC9jPjxjPjExMjwvYz48Yz4xOTM8L2M+Cis8Yz4wPC9jPjxj
PjIwPC9jPjxjPjM5PC9jPjxjPjUzPC9jPjxjPjYwPC9jPjxjPjY2PC9jPjxjPjc2PC9jPjxjPjg2
PC9jPjxjPjk2PC9jPjxjPjEwNjwvYz48Yz4xODg8L2M+Cis8Yz4wPC9jPjxjPjE4PC9jPjxjPjMy
PC9jPjxjPjQ3PC9jPjxjPjU0PC9jPjxjPjYwPC9jPjxjPjcwPC9jPjxjPjgwPC9jPjxjPjkwPC9j
PjxjPjEwMDwvYz48Yz4xODM8L2M+Cis8Yz4wPC9jPjxjPjEwPC9jPjxjPjI2PC9jPjxjPjQwPC9j
PjxjPjQ3PC9jPjxjPjU0PC9jPjxjPjY0PC9jPjxjPjc0PC9jPjxjPjg0PC9jPjxjPjk0PC9jPjxj
PjE3ODwvYz4KKzxjPjA8L2M+PGM+MDwvYz48Yz4yMDwvYz48Yz4zMTwvYz48Yz4zOTwvYz48Yz40
NzwvYz48Yz41NzwvYz48Yz42NzwvYz48Yz43NzwvYz48Yz44NzwvYz48Yz4xNzM8L2M+Cis8Yz4w
PC9jPjxjPjA8L2M+PGM+MTI8L2M+PGM+MjM8L2M+PGM+MzI8L2M+PGM+NDE8L2M+PGM+NTE8L2M+
PGM+NjE8L2M+PGM+NzE8L2M+PGM+ODE8L2M+PGM+MTY4PC9jPgorPGM+MDwvYz48Yz4wPC9jPjxj
PjA8L2M+PGM+MTU8L2M+PGM+MjU8L2M+PGM+MzU8L2M+PGM+NDU8L2M+PGM+NTU8L2M+PGM+NjU8
L2M+PGM+NzU8L2M+PGM+MTYzPC9jPgorPGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+NDwvYz48
Yz4xNzwvYz48Yz4yOTwvYz48Yz4zOTwvYz48Yz40OTwvYz48Yz41OTwvYz48Yz42OTwvYz48Yz4x
NTg8L2M+Cis8Yz4wPC9jPjxjPjA8L2M+PGM+MDwvYz48Yz4wPC9jPjxjPjEyPC9jPjxjPjIzPC9j
PjxjPjMzPC9jPjxjPjQzPC9jPjxjPjUzPC9jPjxjPjYzPC9jPjxjPjE1MzwvYz4KKzxjPjA8L2M+
PGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+MTwvYz48Yz4xNjwvYz48Yz4yNjwvYz48Yz4zNjwv
Yz48Yz40NjwvYz48Yz41NjwvYz48Yz4xNDg8L2M+Cis8Yz4wPC9jPjxjPjA8L2M+PGM+MDwvYz48
Yz4wPC9jPjxjPjA8L2M+PGM+MTA8L2M+PGM+MTU8L2M+PGM+MjA8L2M+PGM+MzA8L2M+PGM+NDU8
L2M+PGM+MTI5PC9jPgorPGM+MDwvYz48Yz4wPC9jPjxjPjA8L2M+PGM+MDwvYz48Yz4wPC9jPjxj
PjE8L2M+PGM+MTwvYz48Yz4xPC9jPjxjPjE8L2M+PGM+MjA8L2M+PGM+MTA0PC9jPgorPC90ZXh0
dGFibGU+CisKKzx0PlRoZSBtYXhpbXVtIGFsbG9jYXRpb24gdmVjdG9yIGlzIGFuIGFwcHJveGlt
YXRpb24gb2YgdGhlIG1heGltdW0gc3BhY2UKK3RoYXQgY2FuIGJlIHVzZWQgYnkgZWFjaCBiYW5k
IGZvciBhIGdpdmVuIG1vZGUuIFRoZSB2YWx1ZSBpcworYXBwcm94aW1hdGUgYmVjYXVzZSB0aGUg
c2hhcGUgZW5jb2RpbmcgaXMgdmFyaWFibGUgcmF0ZSAoZHVlCit0byBlbnRyb3B5IGNvZGluZyBv
ZiBzcGxpdHRpbmcgcGFyYW1ldGVycykuIFNldHRpbmcgdGhlIG1heGltdW0gdG9vIGxvdyByZWR1
Y2VzIHRoZQorbWF4aW11bSBhY2hpZXZhYmxlIHF1YWxpdHkgaW4gYSBiYW5kIHdoaWxlIHNldHRp
bmcgaXQgdG9vIGhpZ2gKK21heSByZXN1bHQgaW4gd2FzdGU6IGJpdHN0cmVhbSBjYXBhY2l0eSBh
dmFpbGFibGUgYXQgdGhlIGVuZAorb2YgdGhlIGZyYW1lIHdoaWNoIGNhbiBub3QgYmUgcHV0IHRv
IGFueSB1c2UuIFRoZSBtYXhpbXVtcworc3BlY2lmaWVkIGJ5IHRoZSBjb2RlYyByZWZsZWN0IHRo
ZSBhdmVyYWdlIG1heGltdW0uIEluIHRoZSByZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uLCB0aGUg
bWF4aW11bXMgaW4gYml0cy9zYW1wbGUgYXJlIHByZWNvbXB1dGVkIGluIGEgc3RhdGljIHRhYmxl
Cisoc2VlIGNhY2hlX2NhcHM1MFtdIGluIHN0YXRpY19tb2Rlc19mbG9hdC5oKSBmb3IgZWFjaCBi
YW5kLAorZm9yIGVhY2ggdmFsdWUgb2YgTE0sIGFuZCBmb3IgYm90aCBtb25vIGFuZCBzdGVyZW8u
CisKK0ltcGxlbWVudGF0aW9ucyBhcmUgZXhwZWN0ZWQKK3RvIHNpbXBseSB1c2UgdGhlIHNhbWUg
dGFibGUgZGF0YSwgYnV0IHRoZSBwcm9jZWR1cmUgZm9yIGdlbmVyYXRpbmcKK3RoaXMgdGFibGUg
aXMgaW5jbHVkZWQgaW4gcmF0ZS5jIGFzIHBhcnQgb2YgY29tcHV0ZV9wdWxzZV9jYWNoZSgpLjwv
dD4KKworPHQ+VG8gY29udmVydCB0aGUgdmFsdWVzIGluIGNhY2hlLmNhcHMgaW50byB0aGUgYWN0
dWFsIG1heGltdW1zOiBmaXJzdAorc2V0IG5iQmFuZHMgdG8gdGhlIG1heGltdW0gbnVtYmVyIG9m
IGJhbmRzIGZvciB0aGlzIG1vZGUsIGFuZCBzdGVyZW8gdG8KK3plcm8gaWYgc3RlcmVvIGlzIG5v
dCBpbiB1c2UgYW5kIG9uZSBvdGhlcndpc2UuIEZvciBlYWNoIGJhbmQgc2V0IE4KK3RvIHRoZSBu
dW1iZXIgb2YgTURDVCBiaW5zIGNvdmVyZWQgYnkgdGhlIGJhbmQgKGZvciBvbmUgY2hhbm5lbCks
IHNldCBMTQordG8gdGhlIHNoaWZ0IHZhbHVlIGZvciB0aGUgZnJhbWUgc2l6ZSwKK3RoZW4gc2V0
IGkgdG8gbmJCYW5kcyooMipMTStzdGVyZW8pLiBUaGVuIHNldCB0aGUgbWF4aW11bSBmb3IgdGhl
IGJhbmQgdG8KK3RoZSBpLXRoIGluZGV4IG9mIGNhY2hlLmNhcHMgKyA2NCBhbmQgbXVsdGlwbHkg
YnkgdGhlIG51bWJlciBvZiBjaGFubmVscworaW4gdGhlIGN1cnJlbnQgZnJhbWUgKG9uZSBvciB0
d28pIGFuZCBieSBOLCB0aGVuIGRpdmlkZSB0aGUgcmVzdWx0IGJ5IDQKK3VzaW5nIGludGVnZXIg
ZGl2aXNpb24uIFRoZSByZXN1bHRpbmcgdmVjdG9yIHdpbGwgYmUgY2FsbGVkCitjYXBbXS4gVGhl
IGVsZW1lbnRzIGZpdCBpbiBzaWduZWQgMTYtYml0IGludGVnZXJzIGJ1dCBkbyBub3QgZml0IGlu
IDggYml0cy4KK1RoaXMgcHJvY2VkdXJlIGlzIGltcGxlbWVudGVkIGluIHRoZSByZWZlcmVuY2Ug
aW4gdGhlIGZ1bmN0aW9uIGluaXRfY2FwcygpIGluIGNlbHQuYy4KKzwvdD4KKworPHQ+VGhlIGJh
bmQgYm9vc3RzIGFyZSByZXByZXNlbnRlZCBieSBhIHNlcmllcyBvZiBiaW5hcnkgc3ltYm9scyB3
aGljaAorYXJlIGVudHJvcHkgY29kZWQgd2l0aCB2ZXJ5IGxvdyBwcm9iYWJpbGl0eS4gRWFjaCBi
YW5kIGNhbiBwb3RlbnRpYWxseSBiZSBib29zdGVkCittdWx0aXBsZSB0aW1lcywgc3ViamVjdCB0
byB0aGUgZnJhbWUgYWN0dWFsbHkgaGF2aW5nIGVub3VnaCByb29tIHRvIG9iZXkKK3RoZSBib29z
dCBhbmQgaGF2aW5nIGVub3VnaCByb29tIHRvIGNvZGUgdGhlIGJvb3N0IHN5bWJvbC4gVGhlIGRl
ZmF1bHQKK2NvZGluZyBjb3N0IGZvciBhIGJvb3N0IHN0YXJ0cyBvdXQgYXQgc2l4IGJpdHMgKHBy
b2JhYmlsaXR5IHA9MS82NCksIGJ1dCBzdWJzZXF1ZW50IGJvb3N0cworaW4gYSBiYW5kIGNvc3Qg
b25seSBhIHNpbmdsZSBiaXQgYW5kIGV2ZXJ5IHRpbWUgYSBiYW5kIGlzIGJvb3N0ZWQgdGhlCitp
bml0aWFsIGNvc3QgaXMgcmVkdWNlZCAoZG93biB0byBhIG1pbmltdW0gb2YgdHdvIGJpdHMsIG9y
IHA9MS80KS4gU2luY2UgdGhlIGluaXRpYWwKK2Nvc3Qgb2YgY29kaW5nIGEgYm9vc3QgaXMgNiBi
aXRzLCB0aGUgY29kaW5nIGNvc3Qgb2YgdGhlIGJvb3N0IHN5bWJvbHMgd2hlbgorY29tcGxldGVs
eSB1bnVzZWQgaXMgMC40OCBiaXRzL2ZyYW1lIGZvciBhIDIxIGJhbmQgbW9kZSAoMjEqLWxvZzIo
MS0xLzIqKjYpKS48L3Q+CisKKzx0PlRvIGRlY29kZSB0aGUgYmFuZCBib29zdHM6IEZpcnN0IHNl
dCAnZHluYWxsb2NfbG9ncCcgdG8gNiwgdGhlIGluaXRpYWwKK2Ftb3VudCBvZiBzdG9yYWdlIHJl
cXVpcmVkIHRvIHNpZ25hbCBhIGJvb3N0IGluIGJpdHMsICd0b3RhbF9iaXRzJyB0byB0aGUKK3Np
emUgb2YgdGhlIGZyYW1lIGluIDh0aCBiaXRzLCAndG90YWxfYm9vc3QnIHRvIHplcm8sIGFuZCAn
dGVsbCcgdG8gdGhlIHRvdGFsIG51bWJlcgorb2YgOHRoIGJpdHMgZGVjb2RlZAorc28gZmFyLiBG
b3IgZWFjaCBiYW5kIGZyb20gdGhlIGNvZGluZyBzdGFydCAoMCBub3JtYWxseSwgYnV0IDE3IGlu
IEh5YnJpZCBtb2RlKQordG8gdGhlIGNvZGluZyBlbmQgKHdoaWNoIGNoYW5nZXMgZGVwZW5kaW5n
IG9uIHRoZSBzaWduYWxlZCBiYW5kd2lkdGgpLCB0aGUgYm9vc3QgcXVhbnRhCitpbiB1bml0cyBv
ZiAxLzggYml0IGlzIGNhbGN1bGF0ZWQgYXMgcXVhbnRhID0gbWluKDgqTiwgbWF4KDQ4LCBOKSku
CitUaGlzIHJlcHJlc2VudHMgYSBib29zdCBzdGVwIHNpemUgb2Ygc2l4IGJpdHMsIHN1YmplY3Qg
dG8gYSBsb3dlciBsaW1pdCBvZgorMS84dGgmbmJzcDtiaXQvc2FtcGxlIGFuZCBhbiB1cHBlciBs
aW1pdCBvZiAxJm5ic3A7Yml0L3NhbXBsZS4KK1NldCAnYm9vc3QnIHRvIHplcm8gYW5kICdkeW5h
bGxvY19sb29wX2xvZ3AnCit0byBkeW5hbGxvY19sb2dwLiBXaGlsZSBkeW5hbGxvY19sb29wX2xv
ZyAodGhlIGN1cnJlbnQgd29yc3QgY2FzZSBzeW1ib2wgY29zdCkgaW4KKzh0aCBiaXRzIHBsdXMg
dGVsbCBpcyBsZXNzIHRoYW4gdG90YWxfYml0cyBwbHVzIHRvdGFsX2Jvb3N0IGFuZCBib29zdCBp
cyBsZXNzIHRoYW4gY2FwW10gZm9yIHRoaXMKK2JhbmQ6IERlY29kZSBhIGJpdCBmcm9tIHRoZSBi
aXRzdHJlYW0gd2l0aCBhIHdpdGggZHluYWxsb2NfbG9vcF9sb2dwIGFzIHRoZSBjb3N0CitvZiBh
IG9uZSwgdXBkYXRlIHRlbGwgdG8gcmVmbGVjdCB0aGUgY3VycmVudCB1c2VkIGNhcGFjaXR5LCBp
ZiB0aGUgZGVjb2RlZCB2YWx1ZQoraXMgemVybyBicmVhayB0aGUgIGxvb3Agb3RoZXJ3aXNlIGFk
ZCBxdWFudGEgdG8gYm9vc3QgYW5kIHRvdGFsX2Jvb3N0LCBzdWJ0cmFjdCBxdWFudGEgZnJvbQor
dG90YWxfYml0cywgYW5kIHNldCBkeW5hbGxvY19sb29wX2xvZyB0byAxLiBXaGVuIHRoZSB3aGls
ZSBsb29wIGZpbmlzaGVzCitib29zdCBjb250YWlucyB0aGUgYm9vc3QgZm9yIHRoaXMgYmFuZC4g
SWYgYm9vc3QgaXMgbm9uLXplcm8gYW5kIGR5bmFsbG9jX2xvZ3AKK2lzIGdyZWF0ZXIgdGhhbiAy
LCBkZWNyZWFzZSBkeW5hbGxvY19sb2dwLiAgT25jZSB0aGlzIHByb2Nlc3MgaGFzIGJlZW4KK2V4
ZWN1dGVkIG9uIGFsbCBiYW5kcywgdGhlIGJhbmQgYm9vc3RzIGhhdmUgYmVlbiBkZWNvZGVkLiBU
aGlzIHByb2NlZHVyZQoraXMgaW1wbGVtZW50ZWQgYXJvdW5kIGxpbmUgMjQ3NCBvZiBjZWx0LmMu
PC90PgorCis8dD5BdCB2ZXJ5IGxvdyByYXRlcyBpdCBpcyBwb3NzaWJsZSB0aGF0IHRoZXJlIHdv
bid0IGJlIGVub3VnaCBhdmFpbGFibGUKK3NwYWNlIHRvIGV4ZWN1dGUgdGhlIGlubmVyIGxvb3Ag
ZXZlbiBvbmNlLiBJbiB0aGVzZSBjYXNlcyBiYW5kIGJvb3N0CitpcyBub3QgcG9zc2libGUgYnV0
IGl0cyBvdmVyaGVhZCBpcyBjb21wbGV0ZWx5IGVsaW1pbmF0ZWQuIEJlY2F1c2Ugb2YgdGhlCito
aWdoIGNvc3Qgb2YgYmFuZCBib29zdCB3aGVuIGFjdGl2YXRlZCwgYSByZWFzb25hYmxlIGVuY29k
ZXIgc2hvdWxkIG5vdCBiZQordXNpbmcgaXQgYXQgdmVyeSBsb3cgcmF0ZXMuIFRoZSByZWZlcmVu
Y2UgaW1wbGVtZW50cyBpdHMgZHluYWxsb2MgZGVjaXNpb24KK2xvZ2ljIGFyb3VuZCBsaW5lIDEz
MDQgb2YgY2VsdC5jLjwvdD4KKworPHQ+VGhlIGFsbG9jYXRpb24gdHJpbSBpcyBhIGludGVnZXIg
dmFsdWUgZnJvbSAwLTEwLiBUaGUgZGVmYXVsdCB2YWx1ZSBvZgorNSBpbmRpY2F0ZXMgbm8gdHJp
bS4gVGhlIHRyaW0gcGFyYW1ldGVyIGlzIGVudHJvcHkgY29kZWQgaW4gb3JkZXIgdG8KK2xvd2Vy
IHRoZSBjb2RpbmcgY29zdCBvZiBsZXNzIGV4dHJlbWUgYWRqdXN0bWVudHMuIFZhbHVlcyBsb3dl
ciB0aGFuCis1IGJpYXMgdGhlIGFsbG9jYXRpb24gdG93YXJkcyBsb3dlciBmcmVxdWVuY2llcyBh
bmQgdmFsdWVzIGFib3ZlIDUKK2JpYXMgaXQgdG93YXJkcyBoaWdoZXIgZnJlcXVlbmNpZXMuIExp
a2Ugb3RoZXIgc2lnbmFsZWQgcGFyYW1ldGVycywgc2lnbmFsaW5nCitvZiB0aGUgdHJpbSBpcyBn
YXRlZCBzbyB0aGF0IGl0IGlzIG5vdCBpbmNsdWRlZCBpZiB0aGVyZSBpcyBpbnN1ZmZpY2llbnQg
c3BhY2UKK2F2YWlsYWJsZSBpbiB0aGUgYml0c3RyZWFtLiBUbyBkZWNvZGUgdGhlIHRyaW0sIGZp
cnN0IHNldAordGhlIHRyaW0gdmFsdWUgdG8gNSwgdGhlbiBpZiBhbmQgb25seSBpZiB0aGUgY291
bnQgb2YgZGVjb2RlZCA4dGggYml0cyBzbyBmYXIgKGVjX3RlbGxfZnJhYykKK3BsdXMgNDggKDYg
Yml0cykgaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHRoZSB0b3RhbCBmcmFtZSBzaXplIGluIDh0
aAorYml0cyBtaW51cyB0b3RhbF9ib29zdCAoYSBwcm9kdWN0IG9mIHRoZSBhYm92ZSBiYW5kIGJv
b3N0IHByb2NlZHVyZSksCitkZWNvZGUgdGhlIHRyaW0gdmFsdWUgdXNpbmcgdGhlIFBERiBpbiA8
eHJlZiB0YXJnZXQ9ImNlbHRfdHJpbV9wZGYiLz4uPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0i
Y2VsdF90cmltX3BkZiIgdGl0bGU9IlBERiBmb3IgdGhlIFRyaW0iPgorPHR0Y29sPlBERjwvdHRj
b2w+Cis8Yz57MSwgMSwgMiwgNSwgMTAsIDIyLCA0NiwgMjIsIDEwLCA1LCAyLCAyfS8xMjg8L2M+
Cis8L3RleHR0YWJsZT4KKworPHQ+Rm9yIDEwIG1zIGFuZCAyMCBtcyBmcmFtZXMgdXNpbmcgc2hv
cnQgYmxvY2tzIGFuZCB0aGF0IGhhdmUgYXQgbGVhc3QgTE0rMiBiaXRzIGxlZnQgcHJpb3IgdG8K
K3RoZSBhbGxvY2F0aW9uIHByb2Nlc3MsIHRoZW4gb25lIGFudGktY29sbGFwc2UgYml0IGlzIHJl
c2VydmVkIGluIHRoZSBhbGxvY2F0aW9uIHByb2Nlc3Mgc28gaXQgY2FuCitiZSBkZWNvZGVkIGxh
dGVyLiBGb2xsb3dpbmcgdGhlIHRoZSBhbnRpLWNvbGxhcHNlIHJlc2VydmF0aW9uLCBvbmUgYml0
IGlzIHJlc2VydmVkIGZvciBza2lwIGlmIGF2YWlsYWJsZS48L3Q+CisKKzx0PkZvciBzdGVyZW8g
ZnJhbWVzLCBiaXRzIGFyZSByZXNlcnZlZCBmb3IgaW50ZW5zaXR5IHN0ZXJlbyBhbmQgZm9yIGR1
YWwgc3RlcmVvLiBJbnRlbnNpdHkgc3RlcmVvCityZXF1aXJlcyBpbG9nMihlbmQtc3RhcnQpIGJp
dHMuIFRob3NlIGJpdHMgYXJlIHJlc2VydmVkIGlmIHRoZXJlIGlzIGVub3VnaCBiaXRzIGxlZnQu
IEZvbGxvd2luZyB0aGlzLCBvbmUKK2JpdCBpcyByZXNlcnZlZCBmb3IgZHVhbCBzdGVyZW8gaWYg
YXZhaWxhYmxlLjwvdD4KKworCis8dD5UaGUgYWxsb2NhdGlvbiBjb21wdXRhdGlvbiBiZWdpbnMg
Ynkgc2V0dGluZyB1cCBzb21lIGluaXRpYWwgY29uZGl0aW9ucy4KKyd0b3RhbCcgaXMgc2V0IHRv
IHRoZSByZW1haW5pbmcgYXZhaWxhYmxlIDh0aCBiaXRzLCBjb21wdXRlZCBieSB0YWtpbmcgdGhl
CitzaXplIG9mIHRoZSBjb2RlZCBmcmFtZSB0aW1lcyA4IGFuZCBzdWJ0cmFjdGluZyBlY190ZWxs
X2ZyYWMoKS4gRnJvbSB0aGlzIHZhbHVlLCBvbmUgKDh0aCBiaXQpCitpcyBzdWJ0cmFjdGVkIHRv
IGVuc3VyZSB0aGF0IHRoZSByZXN1bHRpbmcgYWxsb2NhdGlvbiB3aWxsIGJlIGNvbnNlcnZhdGl2
ZS4gJ2FudGlfY29sbGFwc2VfcnN2JworaXMgc2V0IHRvIDggKDh0aCBiaXRzKSBpZiBhbmQgb25s
eSBpZiB0aGUgZnJhbWUgaXMgYSB0cmFuc2llbnQsIExNIGlzIGdyZWF0ZXIgdGhhbiAxLCBhbmQg
dG90YWwgaXMKK2dyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAoTE0rMikgKiA4LiBUb3RhbCBpcyB0
aGVuIGRlY3JlbWVudGVkIGJ5IGFudGlfY29sbGFwc2VfcnN2IGFuZCBjbGFtcGVkCit0byBiZSBl
cXVhbCB0byBvciBncmVhdGVyIHRoYW4gemVyby4gJ3NraXBfcnN2JyBpcyBzZXQgdG8gOCAoOHRo
IGJpdHMpIGlmIHRvdGFsIGlzIGdyZWF0ZXIgdGhhbgorOCwgb3RoZXJ3aXNlIGl0IGlzIHplcm8u
IFRvdGFsIGlzIHRoZW4gZGVjcmVtZW50ZWQgYnkgc2tpcF9yc3YuIFRoaXMgcmVzZXJ2ZXMgc3Bh
Y2UgZm9yIHRoZQorZmluYWwgc2tpcHBpbmcgZmxhZy48L3Q+CisKKzx0PklmIHRoZSBjdXJyZW50
IGZyYW1lIGlzIHN0ZXJlbywgaW50ZW5zaXR5X3JzdiBpcyBzZXQgdG8gdGhlIGNvbnNlcnZhdGl2
ZSBsb2cyIGluIDh0aCBiaXRzCitvZiB0aGUgbnVtYmVyIG9mIGNvZGVkIGJhbmRzIGZvciB0aGlz
IGZyYW1lIChnaXZlbiBieSB0aGUgdGFibGUgTE9HMl9GUkFDX1RBQkxFIGluIHJhdGUuYykuIElm
CitpbnRlbnNpdHlfcnN2IGlzIGdyZWF0ZXIgdGhhbiB0b3RhbCB0aGVuIGludGVuc2l0eV9yc3Yg
aXMgc2V0IHRvIHplcm8uIE90aGVyd2lzZSB0b3RhbCBpcworZGVjcmVtZW50ZWQgYnkgaW50ZW5z
aXR5X3JzdiwgYW5kIGlmIHRvdGFsIGlzIHN0aWxsIGdyZWF0ZXIgdGhhbiA4LCBkdWFsX3N0ZXJl
b19yc3YgaXMKK3NldCB0byA4IGFuZCB0b3RhbCBpcyBkZWNyZW1lbnRlZCBieSBkdWFsX3N0ZXJl
b19yc3YuPC90PgorCis8dD5UaGUgYWxsb2NhdGlvbiBwcm9jZXNzIHRoZW4gY29tcHV0ZXMgYSB2
ZWN0b3IgcmVwcmVzZW50aW5nIHRoZSBoYXJkIG1pbmltdW0gYW1vdW50cyBhbGxvY2F0aW9uCith
bnkgYmFuZCB3aWxsIHJlY2VpdmUgZm9yIHNoYXBlLiBUaGlzIG1pbmltdW0gaXMgaGlnaGVyIHRo
YW4gdGhlIHRlY2huaWNhbCBsaW1pdCBvZiB0aGUgUFZRCitwcm9jZXNzLCBidXQgdmVyeSBsb3cg
cmF0ZSBhbGxvY2F0aW9ucyBwcm9kdWNlIGFuIGV4Y2Vzc2l2ZWx5IHNwYXJzZSBzcGVjdHJ1bSBh
bmQgdGhlc2UgYmFuZHMKK2FyZSBiZXR0ZXIgc2VydmVkIGJ5IGhhdmluZyBubyBhbGxvY2F0aW9u
IGF0IGFsbC4gRm9yIGVhY2ggY29kZWQgYmFuZCwgc2V0IHRocmVzaFtiYW5kXSB0bwordHdlbnR5
LWZvdXIgdGltZXMgdGhlIG51bWJlciBvZiBNRENUIGJpbnMgaW4gdGhlIGJhbmQgYW5kIGRpdmlk
ZSBieSAxNi4gSWYgOCB0aW1lcyB0aGUgbnVtYmVyCitvZiBjaGFubmVscyBpcyBncmVhdGVyLCB1
c2UgdGhhdCBpbnN0ZWFkLiBUaGlzIHNldHMgdGhlIG1pbmltdW0gYWxsb2NhdGlvbiB0byBvbmUg
Yml0IHBlciBjaGFubmVsCitvciA0OCAxMjh0aCBiaXRzIHBlciBNRENUIGJpbiwgd2hpY2hldmVy
IGlzIGdyZWF0ZXIuIFRoZSBiYW5kLXNpemUgZGVwZW5kZW50IHBhcnQgb2YgdGhpcwordmFsdWUg
aXMgbm90IHNjYWxlZCBieSB0aGUgY2hhbm5lbCBjb3VudCwgYmVjYXVzZSBhdCB0aGUgdmVyeSBs
b3cgcmF0ZXMgd2hlcmUgdGhpcyBsaW1pdCBpcworYXBwbGljYWJsZSB0aGVyZSB3aWxsIHVzdWFs
bHkgYmUgbm8gYml0cyBhbGxvY2F0ZWQgdG8gdGhlIHNpZGUuPC90PgorCis8dD5UaGUgcHJldmlv
dXNseSBkZWNvZGVkIGFsbG9jYXRpb24gdHJpbSBpcyB1c2VkIHRvIGRlcml2ZSBhIHZlY3RvciBv
ZiBwZXItYmFuZCBhZGp1c3RtZW50cywKKyd0cmltX29mZnNldHNbXScuIEZvciBlYWNoIGNvZGVk
IGJhbmQgdGFrZSB0aGUgYWxsb2NfdHJpbSBhbmQgc3VidHJhY3QgNSBhbmQgTE0uIFRoZW4gbXVs
dGlwbHkKK3RoZSByZXN1bHQgYnkgdGhlIG51bWJlciBvZiBjaGFubmVscywgdGhlIG51bWJlciBv
ZiBNRENUIGJpbnMgaW4gdGhlIHNob3J0ZXN0IGZyYW1lIHNpemUgZm9yIHRoaXMgbW9kZSwKK3Ro
ZSBudW1iZXIgb2YgcmVtYWluaW5nIGJhbmRzLCAyKipMTSwgYW5kIDguIFRoZW4gZGl2aWRlIHRo
aXMgdmFsdWUgYnkgNjQuIEZpbmFsbHksIGlmIHRoZQorbnVtYmVyIG9mIE1EQ1QgYmlucyBpbiB0
aGUgYmFuZCBwZXIgY2hhbm5lbCBpcyBvbmx5IG9uZSwgOCB0aW1lcyB0aGUgbnVtYmVyIG9mIGNo
YW5uZWxzIGlzIHN1YnRyYWN0ZWQKK2luIG9yZGVyIHRvIGRpbWluaXNoIHRoZSBhbGxvY2F0aW9u
IGJ5IG9uZSBiaXQsIGJlY2F1c2Ugd2lkdGggMSBiYW5kcyByZWNlaXZlIGdyZWF0ZXIgYmVuZWZp
dAorZnJvbSB0aGUgY29hcnNlIGVuZXJneSBjb2RpbmcuPC90PgorCisKKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gYW5jaG9yPSJQVlEtZGVjb2RlciIgdGl0bGU9IlNoYXBlIERlY29kaW5nIj4KKzx0
PgorSW4gZWFjaCBiYW5kLCB0aGUgbm9ybWFsaXplZCAic2hhcGUiIGlzIGVuY29kZWQKK3VzaW5n
IGEgdmVjdG9yIHF1YW50aXphdGlvbiBzY2hlbWUgY2FsbGVkIGEgInB5cmFtaWQgdmVjdG9yIHF1
YW50aXplciIuCis8L3Q+CisKKzx0PkluCit0aGUgc2ltcGxlc3QgY2FzZSwgdGhlIG51bWJlciBv
ZiBiaXRzIGFsbG9jYXRlZCBpbgorPHhyZWYgdGFyZ2V0PSJhbGxvY2F0aW9uIj48L3hyZWY+IGlz
IGNvbnZlcnRlZCB0byBhIG51bWJlciBvZiBwdWxzZXMgYXMgZGVzY3JpYmVkCitieSA8eHJlZiB0
YXJnZXQ9ImJpdHMtcHVsc2VzIj48L3hyZWY+LiBLbm93aW5nIHRoZSBudW1iZXIgb2YgcHVsc2Vz
IGFuZCB0aGUKK251bWJlciBvZiBzYW1wbGVzIGluIHRoZSBiYW5kLCB0aGUgZGVjb2RlciBjYWxj
dWxhdGVzIHRoZSBzaXplIG9mIHRoZSBjb2RlYm9vaworYXMgZGV0YWlsZWQgaW4gPHhyZWYgdGFy
Z2V0PSJjd3JzLWRlY29kZXIiPjwveHJlZj4uIFRoZSBzaXplIGlzIHVzZWQgdG8gZGVjb2RlCith
biB1bnNpZ25lZCBpbnRlZ2VyICh1bmlmb3JtIHByb2JhYmlsaXR5IG1vZGVsKSwgd2hpY2ggaXMg
dGhlIGNvZGV3b3JkIGluZGV4LgorVGhpcyBpbmRleCBpcyBjb252ZXJ0ZWQgaW50byB0aGUgY29y
cmVzcG9uZGluZyB2ZWN0b3IgYXMgZXhwbGFpbmVkIGluCis8eHJlZiB0YXJnZXQ9ImN3cnMtZGVj
b2RlciI+PC94cmVmPi4gVGhpcyB2ZWN0b3IgaXMgdGhlbiBzY2FsZWQgdG8gdW5pdCBub3JtLgor
PC90PgorCis8c2VjdGlvbiBhbmNob3I9ImJpdHMtcHVsc2VzIiB0aXRsZT0iQml0cyB0byBQdWxz
ZXMiPgorPHQ+CitBbHRob3VnaCB0aGUgYWxsb2NhdGlvbiBpcyBwZXJmb3JtZWQgaW4gMS84dGgg
Yml0IHVuaXRzLCB0aGUgcXVhbnRpemF0aW9uIHJlcXVpcmVzCithbiBpbnRlZ2VyIG51bWJlciBv
ZiBwdWxzZXMgSy4gVG8gZG8gdGhpcywgdGhlIGVuY29kZXIgc2VhcmNoZXMgZm9yIHRoZSB2YWx1
ZQorb2YgSyB0aGF0IHByb2R1Y2VzIHRoZSBudW1iZXIgb2YgYml0cyBuZWFyZXN0IHRvIHRoZSBh
bGxvY2F0ZWQgdmFsdWUKKyhyb3VuZGluZyBkb3duIGlmIGV4YWN0bHkgaGFsZndheSBiZXR3ZWVu
IHR3byB2YWx1ZXMpLCBub3QgdG8gZXhjZWVkCit0aGUgdG90YWwgbnVtYmVyIG9mIGJpdHMgYXZh
aWxhYmxlLiBGb3IgZWZmaWNpZW5jeSByZWFzb25zLCB0aGUgc2VhcmNoIGlzIHBlcmZvcm1lZCBh
Z2FpbnN0IGEKK3ByZWNvbXB1dGVkIGFsbG9jYXRpb24gdGFibGUgd2hpY2ggb25seSBwZXJtaXRz
IHNvbWUgSyB2YWx1ZXMgZm9yIGVhY2ggTi4gVGhlIG51bWJlciBvZgorY29kZWJvb2sgZW50cmll
cyBjYW4gYmUgY29tcHV0ZWQgYXMgZXhwbGFpbmVkIGluIDx4cmVmIHRhcmdldD0iY3dycy1kZWNv
ZGVyIj48L3hyZWY+LiBUaGUgZGlmZmVyZW5jZQorYmV0d2VlbiB0aGUgbnVtYmVyIG9mIGJpdHMg
YWxsb2NhdGVkIGFuZCB0aGUgbnVtYmVyIG9mIGJpdHMgdXNlZCBpcyBhY2N1bXVsYXRlZCB0byBh
CisiYmFsYW5jZSIgKGluaXRpYWxpemVkIHRvIHplcm8pIHRoYXQgaGVscHMgYWRqdXN0IHRoZQor
YWxsb2NhdGlvbiBmb3IgdGhlIG5leHQgYmFuZHMuIE9uZSB0aGlyZCBvZiB0aGUgYmFsYW5jZSBp
cyBhcHBsaWVkIHRvIHRoZQorYml0IGFsbG9jYXRpb24gb2YgZWFjaCBiYW5kIHRvIGhlbHAgYWNo
aWV2ZSB0aGUgdGFyZ2V0IGFsbG9jYXRpb24uIFRoZSBvbmx5CitleGNlcHRpb25zIGFyZSB0aGUg
YmFuZCBiZWZvcmUgdGhlIGxhc3QgYW5kIHRoZSBsYXN0IGJhbmQsIGZvciB3aGljaCBoYWxmIHRo
ZSBiYWxhbmNlCithbmQgdGhlIHdob2xlIGJhbGFuY2UgYXJlIGFwcGxpZWQsIHJlc3BlY3RpdmVs
eS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJjd3JzLWRlY29kZXIiIHRp
dGxlPSJQVlEgRGVjb2RpbmciPgorCis8dD4KK0RlY29kaW5nIG9mIFBWUSB2ZWN0b3JzIGlzIGlt
cGxlbWVudGVkIGluIGRlY29kZV9wdWxzZXMoKSAoY3dycy5jKS4KK1RoZSB1bmlxdWUgY29kZXdv
cmQgaW5kZXggaXMgZGVjb2RlZCBhcyBhIHVuaWZvcm1seS1kaXN0cmlidXRlZCBpbnRlZ2VyIHZh
bHVlIGJldHdlZW4gMCBhbmQKK1YoTixLKS0xLCB3aGVyZSBWKE4sSykgaXMgdGhlIG51bWJlciBv
ZiBwb3NzaWJsZSBjb21iaW5hdGlvbnMgb2YgSyBwdWxzZXMgaW4KK04gc2FtcGxlcy4gVGhlIGlu
ZGV4IGlzIHRoZW4gY29udmVydGVkIHRvIGEgdmVjdG9yIGluIHRoZSBzYW1lIHdheSBzcGVjaWZp
ZWQgaW4KKzx4cmVmIHRhcmdldD0iUFZRIj48L3hyZWY+LiBUaGUgaW5kZXhpbmcgaXMgYmFzZWQg
b24gdGhlIGNhbGN1bGF0aW9uIG9mIFYoTixLKQorKGRlbm90ZWQgTihMLEspIGluIDx4cmVmIHRh
cmdldD0iUFZRIj48L3hyZWY+KS4KKzwvdD4KKworPHQ+CisgVGhlIG51bWJlciBvZiBjb21iaW5h
dGlvbnMgY2FuIGJlIGNvbXB1dGVkIHJlY3Vyc2l2ZWx5IGFzCitWKE4sSykgPSBWKE4tMSxLKSAr
IFYoTixLLTEpICsgVihOLTEsSy0xKSwgd2l0aCBWKE4sMCkgPSAxIGFuZCBWKDAsSykgPSAwLCBL
ICE9IDAuCitUaGVyZSBhcmUgbWFueSBkaWZmZXJlbnQgd2F5cyB0byBjb21wdXRlIFYoTixLKSwg
aW5jbHVkaW5nIHByZWNvbXB1dGVkIHRhYmxlcyBhbmQgZGlyZWN0Cit1c2Ugb2YgdGhlIHJlY3Vy
c2l2ZSBmb3JtdWxhdGlvbi4gVGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBhcHBsaWVzIHRo
ZSByZWN1cnNpdmUKK2Zvcm11bGF0aW9uIG9uZSBsaW5lIChvciBjb2x1bW4pIGF0IGEgdGltZSB0
byBzYXZlIG9uIG1lbW9yeSB1c2UsCithbG9uZyB3aXRoIGFuIGFsdGVybmF0ZSwKK3VuaXZhcmlh
dGUgcmVjdXJyZW5jZSB0byBpbml0aWFsaXplIGFuIGFyYml0cmFyeSBsaW5lLCBhbmQgZGlyZWN0
Citwb2x5bm9taWFsIHNvbHV0aW9ucyBmb3Igc21hbGwgTi4gQWxsIG9mIHRoZXNlIG1ldGhvZHMg
YXJlCitlcXVpdmFsZW50LCBhbmQgaGF2ZSBkaWZmZXJlbnQgdHJhZGUtb2ZmcyBpbiBzcGVlZCwg
bWVtb3J5IHVzYWdlLCBhbmQKK2NvZGUgc2l6ZS4gSW1wbGVtZW50YXRpb25zIE1BWSB1c2UgYW55
IG1ldGhvZHMgdGhleSBsaWtlLCBhcyBsb25nIGFzCit0aGV5IGFyZSBlcXVpdmFsZW50IHRvIHRo
ZSBtYXRoZW1hdGljYWwgZGVmaW5pdGlvbi4KKzwvdD4KKworPHQ+CitUaGUgZGVjb2RlZCB2ZWN0
b3IgWCBpcyByZWNvdmVyZWQgYXMgZm9sbG93cy4KK0xldCBpIGJlIHRoZSBpbmRleCBkZWNvZGVk
IHdpdGggdGhlIHByb2NlZHVyZSBpbiA8eHJlZiB0YXJnZXQ9ImVjX2RlY191aW50Ii8+Cisgd2l0
aCBmdCZuYnNwOz0mbmJzcDtWKE4sSyksIHNvIHRoYXQgMCZuYnNwOyZsdDs9Jm5ic3A7aSZuYnNw
OyZsdDsmbmJzcDtWKE4sSykuCitMZXQgayZuYnNwOz0mbmJzcDtLLgorVGhlbiBmb3IgaiZuYnNw
Oz0mbmJzcDswIHRvIChOJm5ic3A7LSZuYnNwOzEpLCBpbmNsdXNpdmUsIGRvOgorPGxpc3Qgc3R5
bGU9Im51bWJlcnMiPgorPHQ+TGV0IHAmbmJzcDs9Jm5ic3A7KFYoTi1qLTEsaykmbmJzcDsrJm5i
c3A7VihOLWosaykpLzIuPC90PgorPHQ+CitJZiBpJm5ic3A7Jmx0OyZuYnNwO3AsIHRoZW4gbGV0
IHNnbiZuYnNwOz0mbmJzcDsxLCBlbHNlIGxldCBzZ24mbmJzcDs9Jm5ic3A7LTEKKyBhbmQgc2V0
IGkmbmJzcDs9Jm5ic3A7aSZuYnNwOy0mbmJzcDtwLgorPC90PgorPHQ+TGV0IGswJm5ic3A7PSZu
YnNwO2sgYW5kIHNldCBwJm5ic3A7PSZuYnNwO3AmbmJzcDstJm5ic3A7VihOLWotMSxrKS48L3Q+
Cis8dD4KK1doaWxlIHAmbmJzcDsmZ3Q7Jm5ic3A7aSwgc2V0IGsmbmJzcDs9Jm5ic3A7ayZuYnNw
Oy0mbmJzcDsxIGFuZAorIHAmbmJzcDs9Jm5ic3A7cCZuYnNwOy0mbmJzcDtWKE4tai0xLGspLgor
PC90PgorPHQ+CitTZXQgWFtqXSZuYnNwOz0mbmJzcDtzZ24qKGswJm5ic3A7LSZuYnNwO2spIGFu
ZCBpJm5ic3A7PSZuYnNwO2kmbmJzcDstJm5ic3A7cC4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKwor
PHQ+CitUaGUgZGVjb2RlZCB2ZWN0b3IgWCBpcyB0aGVuIG5vcm1hbGl6ZWQgc3VjaCB0aGF0IGl0
cworTDItbm9ybSBlcXVhbHMgb25lLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9InNwcmVhZGluZyIgdGl0bGU9IlNwcmVhZGluZyI+Cis8dD4KK1RoZSBub3JtYWxpemVkIHZl
Y3RvciBkZWNvZGVkIGluIDx4cmVmIHRhcmdldD0iY3dycy1kZWNvZGVyIi8+IGlzIHRoZW4gcm90
YXRlZAorZm9yIHRoZSBwdXJwb3NlIG9mIGF2b2lkaW5nIHRvbmFsIGFydGlmYWN0cy4gVGhlIHJv
dGF0aW9uIGdhaW4gaXMgZXF1YWwgdG8KKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29y
ayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2dfciA9IE4gLyAoTiArIGZfcipLKQorXV0+PC9h
cnR3b3JrPgorPC9maWd1cmU+CisKK3doZXJlIE4gaXMgdGhlIG51bWJlciBvZiBkaW1lbnNpb25z
LCBLIGlzIHRoZSBudW1iZXIgb2YgcHVsc2VzLCBhbmQgZl9yIGRlcGVuZHMgb24KK3RoZSB2YWx1
ZSBvZiB0aGUgInNwcmVhZCIgcGFyYW1ldGVyIGluIHRoZSBiaXQtc3RyZWFtLgorPC90PgorCis8
dGV4dHRhYmxlIGFuY2hvcj0ic3ByZWFkIHZhbHVlcyIgdGl0bGU9IlNwcmVhZGluZyBWYWx1ZXMi
PgorPHR0Y29sPlNwcmVhZCB2YWx1ZTwvdHRjb2w+Cis8dHRjb2w+Zl9yPC90dGNvbD4KKyA8Yz4w
PC9jPiA8Yz5pbmZpbml0ZSAobm8gcm90YXRpb24pPC9jPgorIDxjPjE8L2M+IDxjPjE1PC9jPgor
IDxjPjI8L2M+IDxjPjEwPC9jPgorIDxjPjM8L2M+IDxjPjU8L2M+Cis8L3RleHR0YWJsZT4KKwor
PHQ+CitUaGUgcm90YXRpb24gYW5nbGUgaXMgdGhlbiBjYWxjdWxhdGVkIGFzCis8ZmlndXJlIGFs
aWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAg
ICAgICAgICAgIDIKKyAgICAgICAgcGkgKiAgZ19yCit0aGV0YSA9IC0tLS0tLS0tLS0KKyAgICAg
ICAgICAgIDQKK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorQSAyLUQgcm90YXRpb24gUihpLGop
IGJldHdlZW4gcG9pbnRzIHhfaSBhbmQgeF9qIGlzIGRlZmluZWQgYXM6Cis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCit4X2knID0gIGNv
cyh0aGV0YSkqeF9pICsgc2luKHRoZXRhKSp4X2oKK3hfaicgPSAtc2luKHRoZXRhKSp4X2kgKyBj
b3ModGhldGEpKnhfagorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKK0FuIE4tRCByb3RhdGlv
biBpcyB0aGVuIGFjaGlldmVkIGJ5IGFwcGx5aW5nIGEgc2VyaWVzIG9mIDItRCByb3RhdGlvbnMg
YmFjayBhbmQgZm9ydGgsIGluIHRoZQorZm9sbG93aW5nIG9yZGVyOiBSKHhfMSwgeF8yKSwgUih4
XzIsIHhfMyksIC4uLiwgUih4X04tMiwgWF9OLTEpLCBSKHhfTi0xLCBYX04pLAorUih4X04tMiwg
WF9OLTEpLCAuLi4sIFIoeF8xLCB4XzIpLgorPC90PgorCis8dD4KK0lmIHRoZSBkZWNvZGVkIHZl
Y3RvciByZXByZXNlbnRzIG1vcmUKK3RoYW4gb25lIHRpbWUgYmxvY2ssIHRoZW4gdGhpcyBzcHJl
YWRpbmcgcHJvY2VzcyBpcyBhcHBsaWVkIHNlcGFyYXRlbHkgb24gZWFjaCB0aW1lIGJsb2NrLgor
QWxzbywgaWYgZWFjaCBibG9jayByZXByZXNlbnRzIDggc2FtcGxlcyBvciBtb3JlLCB0aGVuIGFu
b3RoZXIgTi1EIHJvdGF0aW9uLCBieQorKHBpLzItdGhldGEpLCBpcyBhcHBsaWVkIDxzcGFueCBz
dHlsZT0iZW1waCI+YmVmb3JlPC9zcGFueD4gdGhlIHJvdGF0aW9uIGRlc2NyaWJlZCBhYm92ZS4g
VGhpcworZXh0cmEgcm90YXRpb24gaXMgYXBwbGllZCBpbiBhbiBpbnRlcmxlYXZlZCBtYW5uZXIg
d2l0aCBhIHN0cmlkZSBlcXVhbCB0byByb3VuZChzcXJ0KE4vbmJfYmxvY2tzKSksCitpLmUuLCBp
dCBpcyBhcHBsaWVkIGluZGVwZW5kZW50bHkgZm9yIGVhY2ggc2V0IG9mIHNhbXBsZSBTX2sgPSB7
c3RyaWRlKm4gKyBrfSwgbj0wLi5OL3N0cmlkZS0xLgorPC90PgorPC9zZWN0aW9uPgorCis8c2Vj
dGlvbiBhbmNob3I9InNwbGl0IiB0aXRsZT0iU3BsaXQgZGVjb2RpbmciPgorPHQ+CitUbyBhdm9p
ZCB0aGUgbmVlZCBmb3IgbXVsdGktcHJlY2lzaW9uIGNhbGN1bGF0aW9ucyB3aGVuIGRlY29kaW5n
IFBWUSBjb2RldmVjdG9ycywKK3RoZSBtYXhpbXVtIHNpemUgYWxsb3dlZCBmb3IgY29kZWJvb2tz
IGlzIDMyIGJpdHMuIFdoZW4gbGFyZ2VyIGNvZGVib29rcyBhcmUKK25lZWRlZCwgdGhlIHZlY3Rv
ciBpcyBpbnN0ZWFkIHNwbGl0IGluIHR3byBzdWItdmVjdG9ycyBvZiBzaXplIE4vMi4KK0EgcXVh
bnRpemVkIGdhaW4gcGFyYW1ldGVyIHdpdGggcHJlY2lzaW9uCitkZXJpdmVkIGZyb20gdGhlIGN1
cnJlbnQgYWxsb2NhdGlvbiBpcyBlbnRyb3B5IGNvZGVkIHRvIHJlcHJlc2VudCB0aGUgcmVsYXRp
dmUKK2dhaW5zIG9mIGVhY2ggc2lkZSBvZiB0aGUgc3BsaXQsIGFuZCB0aGUgZW50aXJlIGRlY29k
aW5nIHByb2Nlc3MgaXMgcmVjdXJzaXZlbHkKK2FwcGxpZWQuIE11bHRpcGxlIGxldmVscyBvZiBz
cGxpdHRpbmcgbWF5IGJlIGFwcGxpZWQgdXAgdG8gYSBsaW1pdCBvZiBMTSsxIHNwbGl0cy4KK1Ro
ZSBzYW1lIHJlY3Vyc2l2ZSBtZWNoYW5pc20gaXMgYXBwbGllZCBmb3IgdGhlIGpvaW50IGNvZGlu
Zworb2Ygc3RlcmVvIGF1ZGlvLgorPC90PgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hv
cj0idGYtY2hhbmdlIiB0aXRsZT0iVGltZS1GcmVxdWVuY3kgY2hhbmdlIj4KKzx0PgorVGhlIHRp
bWUtZnJlcXVlbmN5IChURikgcGFyYW1ldGVycyBhcmUgdXNlZCB0byBjb250cm9sIHRoZSB0aW1l
LWZyZXF1ZW5jeSByZXNvbHV0aW9uIHRyYWRlb2ZmCitpbiBlYWNoIGNvZGVkIGJhbmQuIEZvciBl
YWNoIGJhbmQsIHRoZXJlIGFyZSB0d28gcG9zc2libGUgVEYgY2hvaWNlcy4gRm9yIHRoZSBmaXJz
dAorYmFuZCBjb2RlZCwgdGhlIFBERiBpcyB7MywgMX0vNCBmb3IgZnJhbWVzIG1hcmtlZCBhcyB0
cmFuc2llbnQgYW5kIHsxNSwgMX0vMTYgZm9yCit0aGUgb3RoZXIgZnJhbWVzLiBGb3Igc3Vic2Vx
dWVudCBiYW5kcywgdGhlIFRGIGNob2ljZSBpcyBjb2RlZCByZWxhdGl2ZSB0byB0aGUKK3ByZXZp
b3VzIFRGIGNob2ljZSB3aXRoIHByb2JhYmlsaXR5IHsxNSwgMX0vMTUgZm9yIHRyYW5zaWVudCBm
cmFtZXMgYW5kIHszMSwgMX0vMzIKK290aGVyd2lzZS4gVGhlIG1hcHBpbmcgYmV0d2VlbiB0aGUg
ZGVjb2RlZCBURiBjaG9pY2VzIGFuZCB0aGUgYWRqdXN0bWVudCBpbiBURgorcmVzb2x1dGlvbiBp
cyBzaG93biBpbiB0aGUgdGFibGVzIGJlbG93LgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0n
dGZfMDAnCisgdGl0bGU9IlRGIEFkanVzdG1lbnRzIGZvciBOb24tdHJhbnNpZW50IEZyYW1lcyBh
bmQgdGZfc2VsZWN0PTAiPgorPHR0Y29sIGFsaWduPSdjZW50ZXInPkZyYW1lIHNpemUgKG1zKTwv
dHRjb2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249J2Nl
bnRlcic+MTwvdHRjb2w+Cis8Yz4yLjU8L2M+ICAgICAgPGM+MDwvYz4gPGM+LTE8L2M+Cis8Yz41
PC9jPiAgICAgIDxjPjA8L2M+IDxjPi0xPC9jPgorPGM+MTA8L2M+ICAgICAgPGM+MDwvYz4gPGM+
LTI8L2M+Cis8Yz4yMDwvYz4gICAgICA8Yz4wPC9jPiA8Yz4tMjwvYz4KKzwvdGV4dHRhYmxlPgor
Cis8dGV4dHRhYmxlIGFuY2hvcj0ndGZfMDEnCisgdGl0bGU9IlRGIEFkanVzdG1lbnRzIGZvciBO
b24tdHJhbnNpZW50IEZyYW1lcyBhbmQgdGZfc2VsZWN0PTEiPgorPHR0Y29sIGFsaWduPSdjZW50
ZXInPkZyYW1lIHNpemUgKG1zKTwvdHRjb2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MDwvdHRj
b2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MTwvdHRjb2w+Cis8Yz4yLjU8L2M+ICAgICAgPGM+
MDwvYz4gPGM+LTE8L2M+Cis8Yz41PC9jPiAgICAgIDxjPjA8L2M+IDxjPi0yPC9jPgorPGM+MTA8
L2M+ICAgICAgPGM+MDwvYz4gPGM+LTM8L2M+Cis8Yz4yMDwvYz4gICAgICA8Yz4wPC9jPiA8Yz4t
MzwvYz4KKzwvdGV4dHRhYmxlPgorCisKKzx0ZXh0dGFibGUgYW5jaG9yPSd0Zl8xMCcKKyB0aXRs
ZT0iVEYgQWRqdXN0bWVudHMgZm9yIFRyYW5zaWVudCBGcmFtZXMgYW5kIHRmX3NlbGVjdD0wIj4K
Kzx0dGNvbCBhbGlnbj0nY2VudGVyJz5GcmFtZSBzaXplIChtcyk8L3R0Y29sPgorPHR0Y29sIGFs
aWduPSdjZW50ZXInPjA8L3R0Y29sPgorPHR0Y29sIGFsaWduPSdjZW50ZXInPjE8L3R0Y29sPgor
PGM+Mi41PC9jPiAgICAgIDxjPjA8L2M+IDxjPi0xPC9jPgorPGM+NTwvYz4gICAgICA8Yz4xPC9j
PiA8Yz4wPC9jPgorPGM+MTA8L2M+ICAgICAgPGM+MjwvYz4gPGM+MDwvYz4KKzxjPjIwPC9jPiAg
ICAgIDxjPjM8L2M+IDxjPjA8L2M+Cis8L3RleHR0YWJsZT4KKworPHRleHR0YWJsZSBhbmNob3I9
J3RmXzExJworIHRpdGxlPSJURiBBZGp1c3RtZW50cyBmb3IgVHJhbnNpZW50IEZyYW1lcyBhbmQg
dGZfc2VsZWN0PTEiPgorPHR0Y29sIGFsaWduPSdjZW50ZXInPkZyYW1lIHNpemUgKG1zKTwvdHRj
b2w+Cis8dHRjb2wgYWxpZ249J2NlbnRlcic+MDwvdHRjb2w+Cis8dHRjb2wgYWxpZ249J2NlbnRl
cic+MTwvdHRjb2w+Cis8Yz4yLjU8L2M+ICAgICAgPGM+MDwvYz4gPGM+LTE8L2M+Cis8Yz41PC9j
PiAgICAgIDxjPjE8L2M+IDxjPi0xPC9jPgorPGM+MTA8L2M+ICAgICAgPGM+MTwvYz4gPGM+LTE8
L2M+Cis8Yz4yMDwvYz4gICAgICA8Yz4xPC9jPiA8Yz4tMTwvYz4KKzwvdGV4dHRhYmxlPgorCis8
dD4KK0EgbmVnYXRpdmUgVEYgYWRqdXN0bWVudCBtZWFucyB0aGF0IHRoZSB0ZW1wb3JhbCByZXNv
bHV0aW9uIGlzIGluY3JlYXNlZCwKK3doaWxlIGEgcG9zaXRpdmUgVEYgYWRqdXN0bWVudCBtZWFu
cyB0aGF0IHRoZSBmcmVxdWVuY3kgcmVzb2x1dGlvbiBpcyBpbmNyZWFzZWQuCitDaGFuZ2VzIGlu
IFRGIHJlc29sdXRpb24gYXJlIGltcGxlbWVudGVkIHVzaW5nIHRoZSBIYWRhbWFyZCB0cmFuc2Zv
cm0gPHhyZWYgdGFyZ2V0PSJIYWRhbWFyZCIvPi4gVG8gaW5jcmVhc2UKK3RoZSB0aW1lIHJlc29s
dXRpb24gYnkgTiwgTiAibGV2ZWxzIiBvZiB0aGUgSGFkYW1hcmQgdHJhbnNmb3JtIGFyZSBhcHBs
aWVkIHRvIHRoZQorZGVjb2RlZCB2ZWN0b3IgZm9yIGVhY2ggaW50ZXJsZWF2ZWQgTURDVCB2ZWN0
b3IuIFRvIGluY3JlYXNlIHRoZSBmcmVxdWVuY3kgcmVzb2x1dGlvbgorKGFzc3VtZXMgYSB0cmFu
c2llbnQgZnJhbWUpLCB0aGVuIE4gbGV2ZWxzIG9mIHRoZSBIYWRhbWFyZCB0cmFuc2Zvcm0gYXJl
IGFwcGxpZWQKKzxzcGFueCBzdHlsZT0iZW1waCI+YWNyb3NzPC9zcGFueD4gdGhlIGludGVybGVh
dmVkIE1EQ1QgdmVjdG9yLiBJbiB0aGUgY2FzZSBvZiBpbmNyZWFzZWQKK3RpbWUgcmVzb2x1dGlv
biB0aGUgZGVjb2RlciB1c2VzIHRoZSAic2VxdWVuY3kgb3JkZXIiIGJlY2F1c2UgdGhlIGlucHV0
IHZlY3RvcgoraXMgc29ydGVkIGluIHRpbWUuCis8L3Q+Cis8L3NlY3Rpb24+CisKKworPC9zZWN0
aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImFudGktY29sbGFwc2UiIHRpdGxlPSJBbnRpLUNvbGxh
cHNlIFByb2Nlc3NpbmciPgorPHQ+CitUaGUgYW50aS1jb2xsYXBzZSBmZWF0dXJlIGlzIGRlc2ln
bmVkIHRvIGF2b2lkIHRoZSBzaXR1YXRpb24gd2hlcmUgdGhlIHVzZSBvZiBtdWx0aXBsZQorc2hv
cnQgTURDVHMgY2F1c2VzIHRoZSBlbmVyZ3kgaW4gb25lIG9yIG1vcmUgb2YgdGhlIE1EQ1RzIHRv
IGJlIHplcm8gZm9yCitzb21lIGJhbmRzLCBjYXVzaW5nIHVucGxlYXNhbnQgYXJ0aWZhY3RzLgor
V2hlbiB0aGUgZnJhbWUgaGFzIHRoZSB0cmFuc2llbnQgYml0IHNldCwgYW4gYW50aS1jb2xsYXBz
ZSBiaXQgaXMgZGVjb2RlZC4KK1doZW4gYW50aS1jb2xsYXBzZSBpcyBzZXQsIHRoZSBlbmVyZ3kg
aW4gZWFjaCBzbWFsbCBNRENUIGlzIHByZXZlbnRlZAorZnJvbSBjb2xsYXBzaW5nIHRvIHplcm8u
IEZvciBlYWNoIGJhbmQgb2YgZWFjaCBNRENUIHdoZXJlIGEgY29sbGFwc2UgaXMKK2RldGVjdGVk
LCBhIHBzZXVkby1yYW5kb20gc2lnbmFsIGlzIGluc2VydGVkIHdpdGggYW4gZW5lcmd5IGNvcnJl
c3BvbmRpbmcKK3RvIHRoZSBtaW5pbXVtIGVuZXJneSBvdmVyIHRoZSB0d28gcHJldmlvdXMgZnJh
bWVzLiBBIHJlbm9ybWFsaXphdGlvbiBzdGVwIGlzCit0aGVuIHJlcXVpcmVkIHRvIGVuc3VyZSB0
aGF0IHRoZSBhbnRpLWNvbGxhcHNlIHN0ZXAgZGlkIG5vdCBhbHRlciB0aGUKK2VuZXJneSBwcmVz
ZXJ2YXRpb24gcHJvcGVydHkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0i
ZGVub3JtYWxpemF0aW9uIiB0aXRsZT0iRGVub3JtYWxpemF0aW9uIj4KKzx0PgorSnVzdCBhcyBl
YWNoIGJhbmQgd2FzIG5vcm1hbGl6ZWQgaW4gdGhlIGVuY29kZXIsIHRoZSBsYXN0IHN0ZXAgb2Yg
dGhlIGRlY29kZXIgYmVmb3JlCit0aGUgaW52ZXJzZSBNRENUIGlzIHRvIGRlbm9ybWFsaXplIHRo
ZSBiYW5kcy4gRWFjaCBkZWNvZGVkIG5vcm1hbGl6ZWQgYmFuZCBpcworbXVsdGlwbGllZCBieSB0
aGUgc3F1YXJlIHJvb3Qgb2YgdGhlIGRlY29kZWQgZW5lcmd5LiBUaGlzIGlzIGRvbmUgYnkgZGVu
b3JtYWxpc2VfYmFuZHMoKQorKGJhbmRzLmMpLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlv
biBhbmNob3I9ImludmVyc2UtbWRjdCIgdGl0bGU9IkludmVyc2UgTURDVCI+CisKKworPHQ+VGhl
IGludmVyc2UgTURDVCBpbXBsZW1lbnRhdGlvbiBoYXMgbm8gc3BlY2lhbCBjaGFyYWN0ZXJpc3Rp
Y3MuIFRoZQoraW5wdXQgaXMgTiBmcmVxdWVuY3ktZG9tYWluIHNhbXBsZXMgYW5kIHRoZSBvdXRw
dXQgaXMgMipOIHRpbWUtZG9tYWluCitzYW1wbGVzLCB3aGlsZSBzY2FsaW5nIGJ5IDEvMi4gQSAi
bG93LW92ZXJsYXAiIHdpbmRvdyByZWR1Y2VzIHRoZSBhbGdvcml0aG1pYyBkZWxheS4KK0l0IGlz
IGRlcml2ZWQgZnJvbSBhIGJhc2ljIChmdWxsIG92ZXJsYXApIDI0MC1zYW1wbGUgdmVyc2lvbiBv
ZiB0aGUgd2luZG93IHVzZWQgYnkgdGhlIFZvcmJpcyBjb2RlYzoKKzxmaWd1cmUgYWxpZ249ImNl
bnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgMgorICAgICAgIC8gICAvcGkgICAgICAvcGkgICBuICsg
MS8yXCBcIFwKK1cobikgPSB8c2lufC0tICogc2lufC0tICogLS0tLS0tLXwgfCB8IC4KKyAgICAg
ICBcICAgXDIgICAgICAgXDIgICAgICAgTCAgIC8gLyAvCitdXT48L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KK1RoZSBsb3ctb3ZlcmxhcCB3aW5kb3cgaXMgY3JlYXRlZCBieSB6ZXJvLXBhZGRpbmcgdGhl
IGJhc2ljIHdpbmRvdyBhbmQgaW5zZXJ0aW5nIG9uZXMgaW4gdGhlCittaWRkbGUsIHN1Y2ggdGhh
dCB0aGUgcmVzdWx0aW5nIHdpbmRvdyBzdGlsbCBzYXRpc2ZpZXMgcG93ZXIgY29tcGxlbWVudGFy
aXR5IDx4cmVmIHRhcmdldD0nUHJpbmNlbjg2Jy8+LgorVGhlIElNRENUIGFuZAord2luZG93aW5n
IGFyZSBwZXJmb3JtZWQgYnkgbWRjdF9iYWNrd2FyZCAobWRjdC5jKS4KKzwvdD4KKworPHNlY3Rp
b24gYW5jaG9yPSJwb3N0LWZpbHRlciIgdGl0bGU9IlBvc3QtZmlsdGVyIj4KKzx0PgorVGhlIG91
dHB1dCBvZiB0aGUgaW52ZXJzZSBNRENUIChhZnRlciB3ZWlnaHRlZCBvdmVybGFwLWFkZCkgaXMg
c2VudCB0byB0aGUKK3Bvc3QtZmlsdGVyLiBBbHRob3VnaCB0aGUgcG9zdC1maWx0ZXIgaXMgYXBw
bGllZCBhdCB0aGUgZW5kLCB0aGUgcG9zdC1maWx0ZXIKK3BhcmFtZXRlcnMgYXJlIGVuY29kZWQg
YXQgdGhlIGJlZ2lubmluZywganVzdCBhZnRlciB0aGUgc2lsZW5jZSBmbGFnLgorVGhlIHBvc3Qt
ZmlsdGVyIGNhbiBiZSBzd2l0Y2hlZCBvbiBvciBvZmYgdXNpbmcgb25lIGJpdCAobG9ncD0xKS4K
K0lmIHRoZSBwb3N0LWZpbHRlciBpcyBlbmFibGVkLCB0aGVuIHRoZSBvY3RhdmUgaXMgZGVjb2Rl
ZCBhcyBhbiBpbnRlZ2VyIHZhbHVlCitiZXR3ZWVuIDAgYW5kIDYgb2YgdW5pZm9ybSBwcm9iYWJp
bGl0eS4gT25jZSB0aGUgb2N0YXZlIGlzIGtub3duLCB0aGUgZmluZSBwaXRjaAord2l0aGluIHRo
ZSBvY3RhdmUgaXMgZGVjb2RlZCB1c2luZyA0K29jdGF2ZSByYXcgYml0cy4gVGhlIGZpbmFsIHBp
dGNoIHBlcmlvZAoraXMgZXF1YWwgdG8gKDE2Jmx0OyZsdDtvY3RhdmUpK2ZpbmVfcGl0Y2gtMSBz
byBpdCBpcyBib3VuZGVkIGJldHdlZW4gMTUgYW5kIDEwMjIsCitpbmNsdXNpdmVseS4gTmV4dCwg
dGhlIGdhaW4gaXMgZGVjb2RlZCBhcyB0aHJlZSByYXcgYml0cyBhbmQgaXMgZXF1YWwgdG8KK0c9
MyooaW50X2dhaW4rMSkvMzIuIFRoZSBzZXQgb2YgcG9zdC1maWx0ZXIgdGFwcyBpcyBkZWNvZGVk
IGxhc3QsIHVzaW5nCithIHBkZiBlcXVhbCB0byB7MiwgMSwgMX0vNC4gVGFwc2V0IHplcm8gY29y
cmVzcG9uZHMgdG8gdGhlIGZpbHRlciBjb2VmZmljaWVudHMKK2cwID0gMC4zMDY2NDA2MjUwLCBn
MSA9IDAuMjE3MDQxMDE1NiwgZzIgPSAwLjEyOTYzODY3MTkuIFRhcHNldCBvbmUKK2NvcnJlc3Bv
bmRzIHRvIHRoZSBmaWx0ZXIgY29lZmZpY2llbnRzIGcwID0gMC40NjM4NjcxODc1LCBnMSA9IDAu
MjY4MDY2NDA2MiwKK2cyID0gMCwgYW5kIHRhcHNldCB0d28gdXNlcyBmaWx0ZXIgY29lZmZpY2ll
bnRzIGcwID0gMC43OTk4MDQ2ODc1LAorZzEgPSAwLjEwMDA5NzY1NjIsIGcyID0gMC4KKzwvdD4K
KworPHQ+CitUaGUgcG9zdC1maWx0ZXIgcmVzcG9uc2UgaXMgdGh1cyBjb21wdXRlZCBhczoKKyAg
ICAgICAgICAgICAgPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKyAgICAgICAgICAgICAgICA8YXJ0
d29yayBhbGlnbj0iY2VudGVyIj4KKyAgICAgICAgICAgICAgICAgIDwhW0NEQVRBWworICAgeShu
KSA9IHgobikgKyBHKihnMCp5KG4tVCkgKyBnMSooeShuLVQrMSkreShuLVQrMSkpCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICArIGcyKih5KG4tVCsyKSt5KG4tVCsyKSkpCitdXT4KKyAg
ICAgICAgICAgICAgICA8L2FydHdvcms+CisgICAgICAgICAgICAgIDwvZmlndXJlPgorCitEdXJp
bmcgYSB0cmFuc2l0aW9uIGJldHdlZW4gZGlmZmVyZW50IGdhaW5zLCBhIHNtb290aCB0cmFuc2l0
aW9uIGlzIGNhbGN1bGF0ZWQKK3VzaW5nIHRoZSBzcXVhcmUgb2YgdGhlIE1EQ1Qgd2luZG93LiBJ
dCBpcyBpbXBvcnRhbnQgdGhhdCB2YWx1ZXMgb2YgeShuKSBiZQoraW50ZXJwb2xhdGVkIG9uZSBh
dCBhIHRpbWUgc3VjaCB0aGF0IHRoZSBwYXN0IHZhbHVlIG9mIHkobikgdXNlZCBpcyBpbnRlcnBv
bGF0ZWQuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0iZGVlbXBoYXNpcyIg
dGl0bGU9IkRlLWVtcGhhc2lzIj4KKzx0PgorQWZ0ZXIgdGhlIHBvc3QtZmlsdGVyLAordGhlIHNp
Z25hbCBpcyBkZS1lbXBoYXNpemVkIHVzaW5nIHRoZSBpbnZlcnNlIG9mIHRoZSBwcmUtZW1waGFz
aXMgZmlsdGVyCit1c2VkIGluIHRoZSBlbmNvZGVyOgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4K
KzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworIDEgICAgICAgICAgICAxCistLS0t
ID0gLS0tLS0tLS0tLS0tLS0tICwKK0EoeikgICAgICAgICAgICAgICAgLTEKKyAgICAgICAxIC0g
YWxwaGFfcCp6CitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK3doZXJlIGFscGhhX3A9MC44NTAw
MDYxMDM1LgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gYW5jaG9yPSJQYWNrZXQgTG9zcyBDb25jZWFsbWVudCIgdGl0bGU9IlBhY2tldCBM
b3NzIENvbmNlYWxtZW50IChQTEMpIj4KKzx0PgorUGFja2V0IGxvc3MgY29uY2VhbG1lbnQgKFBM
QykgaXMgYW4gb3B0aW9uYWwgZGVjb2Rlci1zaWRlIGZlYXR1cmUgdGhhdAorU0hPVUxEIGJlIGlu
Y2x1ZGVkIHdoZW4gcmVjZWl2aW5nIGZyb20gYW4gdW5yZWxpYWJsZSBjaGFubmVsLiBCZWNhdXNl
CitQTEMgaXMgbm90IHBhcnQgb2YgdGhlIGJpdHN0cmVhbSwgdGhlcmUgYXJlIG1hbnkgYWNjZXB0
YWJsZSB3YXlzIHRvCitpbXBsZW1lbnQgUExDIHdpdGggZGlmZmVyZW50IGNvbXBsZXhpdHkvcXVh
bGl0eSB0cmFkZS1vZmZzLgorPC90PgorCis8dD4KK1RoZSBQTEMgaW4KK3RoZSByZWZlcmVuY2Ug
aW1wbGVtZW50YXRpb24gZGVwZW5kcyBvbiB0aGUgbW9kZSBvZiBsYXN0IHBhY2tldCByZWNlaXZl
ZC4KK0luIENFTFQgbW9kZSwgdGhlIFBMQyBmaW5kcyBhIHBlcmlvZGljaXR5IGluIHRoZSBkZWNv
ZGVkCitzaWduYWwgYW5kIHJlcGVhdHMgdGhlIHdpbmRvd2VkIHdhdmVmb3JtIHVzaW5nIHRoZSBw
aXRjaCBvZmZzZXQuIFRoZSB3aW5kb3dlZAord2F2ZWZvcm0gaXMgb3ZlcmxhcHBlZCBpbiBzdWNo
IGEgd2F5IGFzIHRvIHByZXNlcnZlIHRoZSB0aW1lLWRvbWFpbiBhbGlhc2luZworY2FuY2VsbGF0
aW9uIHdpdGggdGhlIHByZXZpb3VzIGZyYW1lIGFuZCB0aGUgbmV4dCBmcmFtZS4gVGhpcyBpcyBp
bXBsZW1lbnRlZAoraW4gY2VsdF9kZWNvZGVfbG9zdCgpIChtZGN0LmMpLiAgSW4gU0lMSyBtb2Rl
LCB0aGUgUExDIHVzZXMgTFBDIGV4dHJhcG9sYXRpb24KK2Zyb20gdGhlIHByZXZpb3VzIGZyYW1l
LCBpbXBsZW1lbnRlZCBpbiBzaWxrX1BMQygpIChQTEMuYykuCis8L3Q+CisKKzxzZWN0aW9uIGFu
Y2hvcj0iY2xvY2stZHJpZnQiIHRpdGxlPSJDbG9jayBEcmlmdCBDb21wZW5zYXRpb24iPgorPHQ+
CitDbG9jayBkcmlmdCByZWZlcnMgdG8gdGhlIGdyYWR1YWwgZGVzeW5jaHJvbml6YXRpb24gb2Yg
dHdvIGVuZHBvaW50cword2hvc2Ugc2FtcGxlIGNsb2NrcyBydW4gYXQgZGlmZmVyZW50IGZyZXF1
ZW5jaWVzIHdoaWxlIHRoZXkgYXJlIHN0cmVhbWluZworbGl2ZSBhdWRpby4gIERpZmZlcmVuY2Vz
IGluIGNsb2NrIGZyZXF1ZW5jaWVzIGFyZSBnZW5lcmFsbHkgYXR0cmlidXRhYmxlIHRvCittYW51
ZmFjdHVyaW5nIHZhcmlhdGlvbiBpbiB0aGUgZW5kcG9pbnRzJyBjbG9jayBoYXJkd2FyZS4gIEZv
ciBsb25nLWxpdmVkCitzdHJlYW1zLCB0aGUgdGltZSBkaWZmZXJlbmNlIGJldHdlZW4gc2VuZGVy
IGFuZCByZWNlaXZlciBjYW4gZ3JvdyB3aXRob3V0Citib3VuZC4KKzwvdD4KKworPHQ+CitXaGVu
IHRoZSBzZW5kZXIncyBjbG9jayBydW5zIHNsb3dlciB0aGFuIHRoZSByZWNlaXZlcidzLCB0aGUg
ZWZmZWN0IGlzIHNpbWlsYXIKK3RvIHBhY2tldCBsb3NzOiB0b28gZmV3IHBhY2tldHMgYXJlIHJl
Y2VpdmVkLiAgVGhlIHJlY2VpdmVyIGNhbiBkaXN0aW5ndWlzaAorYmV0d2VlbiBkcmlmdCBhbmQg
bG9zcyBpZiB0aGUgdHJhbnNwb3J0IHByb3ZpZGVzIHBhY2tldCB0aW1lc3RhbXBzLiAgQSByZWNl
aXZlcgorZm9yIGxpdmUgc3RyZWFtcyBTSE9VTEQgY29uY2VhbCB0aGUgZWZmZWN0cyBvZiBkcmlm
dCwgYW5kIE1BWSBkbyBzbyBieSBpbnZva2luZwordGhlIFBMQy4KKzwvdD4KKworPHQ+CitXaGVu
IHRoZSBzZW5kZXIncyBjbG9jayBydW5zIGZhc3RlciB0aGFuIHRoZSByZWNlaXZlcidzLCB0b28g
bWFueSBwYWNrZXRzIHdpbGwKK2JlIHJlY2VpdmVkLiAgVGhlIHJlY2VpdmVyIE1BWSByZXNwb25k
IGJ5IHNraXBwaW5nIGFueSBwYWNrZXQgKGkuZS4sIG5vdAorc3VibWl0dGluZyB0aGUgcGFja2V0
IGZvciBkZWNvZGluZykuICBUaGlzIGlzIGxpa2VseSB0byBwcm9kdWNlIGEgbGVzcyBzZXZlcmUK
K2FydGlmYWN0IHRoYW4gaWYgdGhlIGZyYW1lIHdlcmUgZHJvcHBlZCBhZnRlciBkZWNvZGluZy4K
KzwvdD4KKworPHQ+CitBIGRlY29kZXIgTUFZIGVtcGxveSBhIG1vcmUgc29waGlzdGljYXRlZCBk
cmlmdCBjb21wZW5zYXRpb24gbWV0aG9kLiBGb3IKK2V4YW1wbGUsIHRoZQorPHhyZWYgdGFyZ2V0
PSdHb29nbGUtTmV0RVEnPk5ldEVRIGNvbXBvbmVudDwveHJlZj4KK29mIHRoZQorPHhyZWYgdGFy
Z2V0PSdHb29nbGUtV2ViUlRDJz5Hb29nbGUgV2ViUlRDIGNvZGViYXNlPC94cmVmPgorY29tcGVu
c2F0ZXMgZm9yIGRyaWZ0IGJ5IGFkZGluZyBvciByZW1vdmluZworb25lIHBlcmlvZCB3aGVuIHRo
ZSBzaWduYWwgaXMgaGlnaGx5IHBlcmlvZGljLiBUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9u
IG9mCitPcHVzIGFsbG93cyBhIGNhbGxlciB0byBsZWFybiB3aGV0aGVyIHRoZSBjdXJyZW50IGZy
YW1lJ3Mgc2lnbmFsIGlzIGhpZ2hseQorcGVyaW9kaWMsIGFuZCBpZiBzbyB3aGF0IHRoZSBwZXJp
b2QgaXMsIHVzaW5nIHRoZSBPUFVTX0dFVF9QSVRDSCgpIHJlcXVlc3QuCis8L3Q+Cis8L3NlY3Rp
b24+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJzd2l0Y2hpbmciIHRpdGxlPSJD
b25maWd1cmF0aW9uIFN3aXRjaGluZyI+CisKKzx0PgorU3dpdGNoaW5nIGJldHdlZW4gdGhlIE9w
dXMgY29kaW5nIG1vZGVzLCBhdWRpbyBiYW5kd2lkdGhzLCBhbmQgY2hhbm5lbCBjb3VudHMKKyBy
ZXF1aXJlcyBjYXJlZnVsIGNvbnNpZGVyYXRpb24gdG8gYXZvaWQgYXVkaWJsZSBnbGl0Y2hlcy4K
K1N3aXRjaGluZyBiZXR3ZWVuIGFueSB0d28gY29uZmlndXJhdGlvbnMgb2YgdGhlIENFTFQtb25s
eSBtb2RlLCBhbnkgdHdvCisgY29uZmlndXJhdGlvbnMgb2YgdGhlIEh5YnJpZCBtb2RlLCBvciBm
cm9tIFdCIFNJTEsgdG8gSHlicmlkIG1vZGUgZG9lcyBub3QKKyByZXF1aXJlIGFueSBzcGVjaWFs
IHRyZWF0bWVudCBpbiB0aGUgZGVjb2RlciwgYXMgdGhlIE1EQ1Qgb3ZlcmxhcCB3aWxsIHNtb290
aAorIHRoZSB0cmFuc2l0aW9uLgorU3dpdGNoaW5nIGZyb20gSHlicmlkIG1vZGUgdG8gV0IgU0lM
SyByZXF1aXJlcyBhZGRpbmcgaW4gdGhlIGZpbmFsIGNvbnRlbnRzCisgb2YgdGhlIENFTFQgb3Zl
cmxhcCBidWZmZXIgdG8gdGhlIGZpcnN0IFNJTEstb25seSBwYWNrZXQuCitUaGlzIGNhbiBiZSBk
b25lIGJ5IGRlY29kaW5nIGEgMi41Jm5ic3A7bXMgc2lsZW5jZSBmcmFtZSB3aXRoIHRoZSBDRUxU
IGRlY29kZXIKKyB1c2luZyB0aGUgY2hhbm5lbCBjb3VudCBvZiB0aGUgU0lMSy1vbmx5IHBhY2tl
dCAoYW5kIGFueSBjaG9pY2Ugb2YgYXVkaW8KKyBiYW5kd2lkdGgpLCB3aGljaCB3aWxsIGNvcnJl
Y3RseSBoYW5kbGUgdGhlIGNhc2VzIHdoZW4gdGhlIGNoYW5uZWwgY291bnQKKyBjaGFuZ2VzIGFz
IHdlbGwuCis8L3Q+CisKKzx0PgorV2hlbiBjaGFuZ2luZyB0aGUgY2hhbm5lbCBjb3VudCBmb3Ig
U0lMSy1vbmx5IG9yIEh5YnJpZCBwYWNrZXRzLCB0aGUgZW5jb2RlcgorIGNhbiBhdm9pZCBnbGl0
Y2hlcyBieSBzbW9vdGhseSB2YXJ5aW5nIHRoZSBzdGVyZW8gd2lkdGggb2YgdGhlIGlucHV0IHNp
Z25hbAorIGJlZm9yZSBvciBhZnRlciB0aGUgdHJhbnNpdGlvbiwgYW5kIFNIT1VMRCBkbyBzby4K
K0hvd2V2ZXIsIG90aGVyIHRyYW5zaXRpb25zIGJldHdlZW4gU0lMSy1vbmx5IHBhY2tldHMgb3Ig
YmV0d2VlbiBOQiBvciBNQiBTSUxLCisgYW5kIEh5YnJpZCBwYWNrZXRzIG1heSBjYXVzZSBnbGl0
Y2hlcywgYmVjYXVzZSBuZWl0aGVyIHRoZSBMU0YgY29lZmZpY2llbnRzCisgbm9yIHRoZSBMVFAs
IExQQywgc3RlcmVvIHVubWl4aW5nLCBhbmQgcmVzYW1wbGVyIGJ1ZmZlcnMgYXJlIGF2YWlsYWJs
ZSBhdCB0aGUKKyBuZXcgc2FtcGxlIHJhdGUuCitUaGVzZSBzd2l0Y2hlcyBTSE9VTEQgYmUgZGVs
YXllZCBieSB0aGUgZW5jb2RlciB1bnRpbCBxdWlldCBwZXJpb2RzIG9yCisgdHJhbnNpZW50cywg
d2hlcmUgdGhlIGluZXZpdGFibGUgZ2xpdGNoZXMgd2lsbCBiZSBsZXNzIGF1ZGlibGUuIEFkZGl0
aW9uYWxseSwKKyB0aGUgYml0LXN0cmVhbSBNQVkgaW5jbHVkZSByZWR1bmRhbnQgc2lkZSBpbmZv
cm1hdGlvbiAoInJlZHVuZGFuY3kiKSwgaW4gdGhlCisgZm9ybSBvZiBhZGRpdGlvbmFsIENFTFQg
ZnJhbWVzIGVtYmVkZGVkIGluIGVhY2ggb2YgdGhlIE9wdXMgZnJhbWVzIGFyb3VuZCB0aGUKKyB0
cmFuc2l0aW9uLgorPC90PgorCis8dD4KK1RoZSBvdGhlciB0cmFuc2l0aW9ucyB0aGF0IGNhbm5v
dCBiZSBlYXNpbHkgaGFuZGxlZCBhcmUgdGhvc2Ugd2hlcmUgdGhlIGxvd2VyCisgZnJlcXVlbmNp
ZXMgc3dpdGNoIGJldHdlZW4gdGhlIFNJTEsgTFAtYmFzZWQgbW9kZWwgYW5kIHRoZSBDRUxUIE1E
Q1QgbW9kZWwuCitIb3dldmVyLCBhbiBlbmNvZGVyIG1heSBub3QgaGF2ZSBhbiBvcHBvcnR1bml0
eSB0byBkZWxheSBzdWNoIGEgc3dpdGNoIHRvIGEKKyBjb252ZW5pZW50IHBvaW50LgorRm9yIGV4
YW1wbGUsIGlmIHRoZSBjb250ZW50IHN3aXRjaGVzIGZyb20gc3BlZWNoIHRvIG11c2ljLCBhbmQg
dGhlIGVuY29kZXIgZG9lcworIG5vdCBoYXZlIGVub3VnaCBsYXRlbmN5IGluIGl0cyBhbmFseXNp
cyB0byBkZXRlY3QgdGhpcyBpbiBhZHZhbmNlLCB0aGVyZSBtYXkKKyBiZSBubyBjb252ZW5pZW50
IHNpbGVuY2UgcGVyaW9kIGR1cmluZyB3aGljaCB0byBtYWtlIHRoZSB0cmFuc2l0aW9uIGZvciBx
dWl0ZQorIHNvbWUgdGltZS4KK1RvIGF2b2lkIG9yIHJlZHVjZSBnbGl0Y2hlcyBkdXJpbmcgdGhl
c2UgcHJvYmxlbWF0aWMgbW9kZSB0cmFuc2l0aW9ucywgYW5kCisgYWxzbyBiZXR3ZWVuIGF1ZGlv
IGJhbmR3aWR0aCBjaGFuZ2VzIGluIHRoZSBTSUxLLW9ubHkgbW9kZXMsIHRyYW5zaXRpb25zIE1B
WQorIGluY2x1ZGUgcmVkdW5kYW50IHNpZGUgaW5mb3JtYXRpb24gKCJyZWR1bmRhbmN5IiksIGlu
IHRoZSBmb3JtIG9mIGFuCisgYWRkaXRpb25hbCBDRUxUIGZyYW1lIGVtYmVkZGVkIGluIHRoZSBP
cHVzIGZyYW1lLgorPC90PgorCis8dD4KK0EgdHJhbnNpdGlvbiBiZXR3ZWVuIGNvZGluZyB0aGUg
bG93ZXIgZnJlcXVlbmNpZXMgd2l0aCB0aGUgTFAgbW9kZWwgYW5kIHRoZQorIE1EQ1QgbW9kZWwg
b3IgYSB0cmFuc2l0aW9uIHRoYXQgaW52b2x2ZXMgY2hhbmdpbmcgdGhlIFNJTEsgYmFuZHdpZHRo
CisgaXMgb25seSBub3JtYXRpdmVseSBzcGVjaWZpZWQgd2hlbiBpdCBpbmNsdWRlcyByZWR1bmRh
bmN5LgorRm9yIHRob3NlIHdpdGhvdXQgcmVkdW5kYW5jeSwgaXQgaXMgUkVDT01NRU5ERUQgdGhh
dCB0aGUgZGVjb2RlciB1c2UgYQorIGNvbmNlYWxtZW50IHRlY2huaXF1ZSAoZS5nLiwgbWFrZSB1
c2Ugb2YgYSBQTEMgYWxnb3JpdGhtKSB0byAiZmlsbCBpbiIgdGhlCisgZ2FwIG9yIGRpc2NvbnRp
bnVpdHkgY2F1c2VkIGJ5IHRoZSBtb2RlIHRyYW5zaXRpb24uCitUaGVyZWZvcmUsIFBMQyBNVVNU
IE5PVCBiZSBhcHBsaWVkIGR1cmluZyBhbnkgbm9ybWF0aXZlIHRyYW5zaXRpb24sIGkuZS4sIHdo
ZW4KKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PkEgcGFja2V0IGluY2x1ZGVzIHJlZHVuZGFu
Y3kgZm9yIHRoaXMgdHJhbnNpdGlvbiAoYXMgZGVzY3JpYmVkIGJlbG93KSw8L3Q+Cis8dD5UaGUg
dHJhbnNpdGlvbiBpcyBiZXR3ZWVuIGFueSBXQiBTSUxLIHBhY2tldCBhbmQgYW55IEh5YnJpZCBw
YWNrZXQsIG9yIHZpY2UKKyB2ZXJzYSw8L3Q+Cis8dD5UaGUgdHJhbnNpdGlvbiBpcyBiZXR3ZWVu
IGFueSB0d28gSHlicmlkIG1vZGUgcGFja2V0cywgb3I8L3Q+Cis8dD5UaGUgdHJhbnNpdGlvbiBp
cyBiZXR3ZWVuIGFueSB0d28gQ0VMVCBtb2RlIHBhY2tldHMsPC90PgorPC9saXN0PgorIHVubGVz
cyB0aGVyZSBpcyBhY3R1YWwgcGFja2V0IGxvc3MuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0i
c2lkZS1pbmZvIiB0aXRsZT0iVHJhbnNpdGlvbiBTaWRlIEluZm9ybWF0aW9uIChSZWR1bmRhbmN5
KSI+Cis8dD4KK1RyYW5zaXRpb25zIHdpdGggc2lkZSBpbmZvcm1hdGlvbiBpbmNsdWRlIGFuIGV4
dHJhIDUmbmJzcDttcyAicmVkdW5kYW50IiBDRUxUCisgZnJhbWUgd2l0aGluIHRoZSBPcHVzIGZy
YW1lLgorVGhpcyBmcmFtZSBpcyBkZXNpZ25lZCB0byBmaWxsIGluIHRoZSBnYXAgb3IgZGlzY29u
dGludWl0eSBpbiB0aGUgZGlmZmVyZW50CisgbGF5ZXJzIHdpdGhvdXQgcmVxdWlyaW5nIHRoZSBk
ZWNvZGVyIHRvIGNvbmNlYWwgaXQuCitGb3IgdHJhbnNpdGlvbnMgZnJvbSBDRUxULW9ubHkgdG8g
U0lMSy1vbmx5IG9yIEh5YnJpZCwgdGhlIHJlZHVuZGFudCBmcmFtZSBpcworIGluc2VydGVkIGlu
IHRoZSBmaXJzdCBPcHVzIGZyYW1lIGFmdGVyIHRoZSB0cmFuc2l0aW9uIChpLmUuLCB0aGUgZmly
c3QKKyBTSUxLLW9ubHkgb3IgSHlicmlkIGZyYW1lKS4KK0ZvciB0cmFuc2l0aW9ucyBmcm9tIFNJ
TEstb25seSBvciBIeWJyaWQgdG8gQ0VMVC1vbmx5LCB0aGUgcmVkdW5kYW50IGZyYW1lIGlzCisg
aW5zZXJ0ZWQgaW4gdGhlIGxhc3QgT3B1cyBmcmFtZSBiZWZvcmUgdGhlIHRyYW5zaXRpb24gKGku
ZS4sIHRoZSBsYXN0CisgU0lMSy1vbmx5IG9yIEh5YnJpZCBmcmFtZSkuCis8L3Q+CisKKzxzZWN0
aW9uIGFuY2hvcj0ib3B1c19yZWR1bmRhbmN5X2ZsYWciIHRpdGxlPSJSZWR1bmRhbmN5IEZsYWci
PgorPHQ+CitUaGUgcHJlc2VuY2Ugb2YgcmVkdW5kYW5jeSBpcyBzaWduYWxlZCBpbiBhbGwgU0lM
Sy1vbmx5IGFuZCBIeWJyaWQgZnJhbWVzLCBub3QKKyBqdXN0IHRob3NlIGludm9sdmVkIGluIGEg
bW9kZSB0cmFuc2l0aW9uLgorVGhpcyBhbGxvd3MgdGhlIGZyYW1lcyB0byBiZSBkZWNvZGVkIGNv
cnJlY3RseSBldmVuIGlmIGFuIGFkamFjZW50IGZyYW1lIGlzCisgbG9zdC4KK0ZvciBTSUxLLW9u
bHkgZnJhbWVzLCB0aGlzIHNpZ25hbGluZyBpcyBpbXBsaWNpdCwgYmFzZWQgb24gdGhlIHNpemUg
b2YgdGhlCisgb2YgdGhlIE9wdXMgZnJhbWUgYW5kIHRoZSBudW1iZXIgb2YgYml0cyBjb25zdW1l
ZCBkZWNvZGluZyB0aGUgU0lMSyBwb3J0aW9uIG9mCisgaXQuCitBZnRlciBkZWNvZGluZyB0aGUg
U0lMSyBwb3J0aW9uIG9mIHRoZSBPcHVzIGZyYW1lLCB0aGUgZGVjb2RlciB1c2VzIGVjX3RlbGwo
KQorIChzZWUgPHhyZWYgdGFyZ2V0PSJlY190ZWxsIi8+KSB0byBjaGVjayBpZiB0aGVyZSBhcmUg
YXQgbGVhc3QgMTcgYml0cworIHJlbWFpbmluZy4KK0lmIHNvLCB0aGVuIHRoZSBmcmFtZSBjb250
YWlucyByZWR1bmRhbmN5LgorPC90PgorCis8dD4KK0ZvciBIeWJyaWQgZnJhbWVzLCB0aGlzIHNp
Z25hbGluZyBpcyBleHBsaWNpdC4KK0FmdGVyIGRlY29kaW5nIHRoZSBTSUxLIHBvcnRpb24gb2Yg
dGhlIE9wdXMgZnJhbWUsIHRoZSBkZWNvZGVyIHVzZXMgZWNfdGVsbCgpCisgKHNlZSA8eHJlZiB0
YXJnZXQ9ImVjX3RlbGwiLz4pIHRvIGVuc3VyZSB0aGVyZSBhcmUgYXQgbGVhc3QgMzcgYml0cyBy
ZW1haW5pbmcuCitJZiBzbywgaXQgcmVhZHMgYSBzeW1ib2wgd2l0aCB0aGUgUERGIGluCisgPHhy
ZWYgdGFyZ2V0PSJvcHVzX3JlZHVuZGFuY3lfZmxhZ19wZGYiLz4sIGFuZCBpZiB0aGUgdmFsdWUg
aXMgMSwgdGhlbiB0aGUKKyBmcmFtZSBjb250YWlucyByZWR1bmRhbmN5LgorT3RoZXJ3aXNlIChp
ZiB0aGVyZSB3ZXJlIGZld2VyIHRoYW4gMzcgYml0cyBsZWZ0IG9yIHRoZSB2YWx1ZSB3YXMgMCks
IHRoZSBmcmFtZQorIGRvZXMgbm90IGNvbnRhaW4gcmVkdW5kYW5jeS4KKzwvdD4KKworPHRleHR0
YWJsZSBhbmNob3I9Im9wdXNfcmVkdW5kYW5jeV9mbGFnX3BkZiIgdGl0bGU9IlJlZHVuZGFuY3kg
RmxhZyBQREYiPgorPHR0Y29sPlBERjwvdHRjb2w+Cis8Yz57NDA5NSwgMX0vNDA5NjwvYz4KKzwv
dGV4dHRhYmxlPgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Im9wdXNfcmVkdW5kYW5j
eV9wb3MiIHRpdGxlPSJSZWR1bmRhbmN5IFBvc2l0aW9uIEZsYWciPgorPHQ+CitTaW5jZSB0aGUg
Y3VycmVudCBmcmFtZSBpcyBhIFNJTEstb25seSBvciBhIEh5YnJpZCBmcmFtZSwgaXQgbXVzdCBi
ZSBhdCBsZWFzdAorIDEwJm5ic3A7bXMuCitUaGVyZWZvcmUsIGl0IG5lZWRzIGFuIGFkZGl0aW9u
YWwgZmxhZyB0byBpbmRpY2F0ZSB3aGV0aGVyIHRoZSByZWR1bmRhbnQKKyA1Jm5ic3A7bXMgQ0VM
VCBmcmFtZSBzaG91bGQgYmUgbWl4ZWQgaW50byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBjdXJyZW50
IGZyYW1lLAorIG9yIHRoZSBlbmQuCitBZnRlciBkZXRlcm1pbmluZyB0aGF0IGEgZnJhbWUgY29u
dGFpbnMgcmVkdW5kYW5jeSwgdGhlIGRlY29kZXIgcmVhZHMgYQorIDEmbmJzcDtiaXQgc3ltYm9s
IHdpdGggYSB1bmlmb3JtIFBERgorICg8eHJlZiB0YXJnZXQ9Im9wdXNfcmVkdW5kYW5jeV9wb3Nf
cGRmIi8+KS4KKzwvdD4KKworPHRleHR0YWJsZSBhbmNob3I9Im9wdXNfcmVkdW5kYW5jeV9wb3Nf
cGRmIiB0aXRsZT0iUmVkdW5kYW5jeSBQb3NpdGlvbiBQREYiPgorPHR0Y29sPlBERjwvdHRjb2w+
Cis8Yz57MSwgMX0vMjwvYz4KKzwvdGV4dHRhYmxlPgorCis8dD4KK0lmIHRoZSB2YWx1ZSBpcyB6
ZXJvLCB0aGlzIGlzIHRoZSBmaXJzdCBmcmFtZSBpbiB0aGUgdHJhbnNpdGlvbiwgYW5kIHRoZQor
IHJlZHVuZGFuY3kgYmVsb25ncyBhdCB0aGUgZW5kLgorSWYgdGhlIHZhbHVlIGlzIG9uZSwgdGhp
cyBpcyB0aGUgc2Vjb25kIGZyYW1lIGluIHRoZSB0cmFuc2l0aW9uLCBhbmQgdGhlCisgcmVkdW5k
YW5jeSBiZWxvbmdzIGF0IHRoZSBiZWdpbm5pbmcuCitUaGVyZSBpcyBubyB3YXkgdG8gc3BlY2lm
eSB0aGF0IGFuIE9wdXMgZnJhbWUgY29udGFpbnMgc2VwYXJhdGUgcmVkdW5kYW50IENFTFQKKyBm
cmFtZXMgYXQgYm90aCB0aGUgYmVnaW5uaW5nIGFuZCB0aGUgZW5kLgorPC90PgorPC9zZWN0aW9u
PgorCis8c2VjdGlvbiBhbmNob3I9Im9wdXNfcmVkdW5kYW5jeV9zaXplIiB0aXRsZT0iUmVkdW5k
YW5jeSBTaXplIj4KKzx0PgorVW5saWtlIHRoZSBDRUxUIHBvcnRpb24gb2YgYSBIeWJyaWQgZnJh
bWUsIHRoZSByZWR1bmRhbnQgQ0VMVCBmcmFtZSBkb2VzIG5vdAorIHVzZSB0aGUgc2FtZSBlbnRy
b3B5IGNvZGVyIHN0YXRlIGFzIHRoZSByZXN0IG9mIHRoZSBPcHVzIGZyYW1lLCBiZWNhdXNlIHRo
aXMKKyB3b3VsZCBicmVhayB0aGUgQ0VMVCBiaXQgYWxsb2NhdGlvbiBtZWNoYW5pc20gaW4gSHli
cmlkIGZyYW1lcy4KK1RodXMsIGEgcmVkdW5kYW50IENFTFQgZnJhbWUgYWx3YXlzIHN0YXJ0cyBh
bmQgZW5kcyBvbiBhIGJ5dGUgYm91bmRhcnksIGV2ZW4gaW4KKyBTSUxLLW9ubHkgZnJhbWVzLCB3
aGVyZSB0aGlzIGlzIG5vdCBzdHJpY3RseSBuZWNlc3NhcnkuCis8L3Q+CisKKzx0PgorRm9yIFNJ
TEstb25seSBmcmFtZXMsIHRoZSBudW1iZXIgb2YgYnl0ZXMgaW4gdGhlIHJlZHVuZGFudCBDRUxU
IGZyYW1lIGlzIHNpbXBseQorIHRoZSBudW1iZXIgb2Ygd2hvbGUgYnl0ZXMgcmVtYWluaW5nLCB3
aGljaCBtdXN0IGJlIGF0IGxlYXN0IDIsIGR1ZSB0byB0aGUKKyBzcGFjZSBjaGVjayBpbiA8eHJl
ZiB0YXJnZXQ9Im9wdXNfcmVkdW5kYW5jeV9mbGFnIi8+LgorRm9yIEh5YnJpZCBmcmFtZXMsIHRo
ZSBudW1iZXIgb2YgYnl0ZXMgaXMgZXF1YWwgdG8gMiwgcGx1cyBhIGRlY29kZWQgdW5zaWduZWQK
KyBpbnRlZ2VyIGxlc3MgdGhhbiAyNTYgKHNlZSA8eHJlZiB0YXJnZXQ9ImVjX2RlY191aW50Ii8+
KS4KK1RoaXMgbWF5IGJlIG1vcmUgdGhhbiB0aGUgbnVtYmVyIG9mIHdob2xlIGJ5dGVzIHJlbWFp
bmluZyBpbiB0aGUgT3B1cyBmcmFtZSwKKyBpbiB3aGljaCBjYXNlIHRoZSBmcmFtZSBpcyBpbnZh
bGlkLgorSG93ZXZlciwgYSBkZWNvZGVyIGlzIG5vdCByZXF1aXJlZCB0byBpZ25vcmUgdGhlIGVu
dGlyZSBmcmFtZSwgYXMgdGhpcyBtYXkgYmUKKyB0aGUgcmVzdWx0IG9mIGEgYml0IGVycm9yIHRo
YXQgZGVzeW5jaHJvbml6ZWQgdGhlIHJhbmdlIGNvZGVyLgorVGhlcmUgbWF5IHN0aWxsIGJlIHVz
ZWZ1bCBkYXRhIGJlZm9yZSB0aGUgZXJyb3IsIGFuZCBhIGRlY29kZXIgTUFZIGtlZXAgYW55Cisg
YXVkaW8gZGVjb2RlZCBzbyBmYXIgaW5zdGVhZCBvZiBpbnZva2luZyB0aGUgUExDLCBidXQgaXQg
aXMgUkVDT01NRU5ERUQgdGhhdAorIHRoZSBkZWNvZGVyIHN0b3AgZGVjb2RpbmcgYW5kIGRpc2Nh
cmQgdGhlIHJlc3Qgb2YgdGhlIGN1cnJlbnQgT3B1cyBmcmFtZS4KKzwvdD4KKworPHQ+CitJdCB3
b3VsZCBoYXZlIGJlZW4gcG9zc2libGUgdG8gYXZvaWQgdGhlc2UgaW52YWxpZCBzdGF0ZXMgaW4g
dGhlIGRlc2lnbiBvZiBPcHVzCisgYnkgbGltaXRpbmcgdGhlIHJhbmdlIG9mIHRoZSBleHBsaWNp
dCBsZW5ndGggZGVjb2RlZCBmcm9tIEh5YnJpZCBmcmFtZXMgYnkgdGhlCisgYWN0dWFsIG51bWJl
ciBvZiB3aG9sZSBieXRlcyByZW1haW5pbmcuCitIb3dldmVyLCB0aGlzIHdvdWxkIHJlcXVpcmUg
YW4gZW5jb2RlciB0byBkZXRlcm1pbmUgdGhlIHJhdGUgYWxsb2NhdGlvbiBmb3IgdGhlCisgTURD
VCBsYXllciB1cCBmcm9udCwgYmVmb3JlIGl0IGJlZ2FuIGVuY29kaW5nIHRoYXQgbGF5ZXIuCitC
eSBhbGxvd2luZyBzb21lIGludmFsaWQgc2l6ZXMsIHRoZSBlbmNvZGVyIGlzIGFibGUgdG8gZGVm
ZXIgdGhhdCBkZWNpc2lvbgorIHVudGlsIG11Y2ggbGF0ZXIuCitXaGVuIGVuY29kaW5nIEh5YnJp
ZCBmcmFtZXMgd2hpY2ggZG8gbm90IGluY2x1ZGUgcmVkdW5kYW5jeSwgdGhlIGVuY29kZXIgbXVz
dAorIHN0aWxsIGRlY2lkZSB1cC1mcm9udCBpZiBpdCB3aXNoZXMgdG8gdXNlIHRoZSBtaW5pbXVt
IDM3IGJpdHMgcmVxdWlyZWQgdG8KKyB0cmlnZ2VyIGVuY29kaW5nIG9mIHRoZSByZWR1bmRhbmN5
IGZsYWcsIGJ1dCB0aGlzIGlzIGEgbXVjaCBsb29zZXIKKyByZXN0cmljdGlvbi4KKzwvdD4KKwor
PHQ+CitBZnRlciBkZXRlcm1pbmluZyB0aGUgc2l6ZSBvZiB0aGUgcmVkdW5kYW50IENFTFQgZnJh
bWUsIHRoZSBkZWNvZGVyIHJlZHVjZXMKKyB0aGUgc2l6ZSBvZiB0aGUgYnVmZmVyIGN1cnJlbnRs
eSBpbiB1c2UgYnkgdGhlIHJhbmdlIGNvZGVyIGJ5IHRoYXQgYW1vdW50LgorVGhlIENFTFQgbGF5
ZXIgcmVhZCBhbnkgcmF3IGJpdHMgZnJvbSB0aGUgZW5kIG9mIHRoaXMgcmVkdWNlZCBidWZmZXIs
IGFuZCBhbGwKKyBjYWxjdWxhdGlvbnMgb2YgdGhlIG51bWJlciBvZiBiaXRzIHJlbWFpbmluZyBp
biB0aGUgYnVmZmVyIG11c3QgYmUgZG9uZSB1c2luZworIHRoaXMgbmV3LCByZWR1Y2VkIHNpemUs
IHJhdGhlciB0aGFuIHRoZSBvcmlnaW5hbCBzaXplIG9mIHRoZSBPcHVzIGZyYW1lLgorPC90Pgor
PC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Im9wdXNfcmVkdW5kYW5jeV9kZWNvZGluZyIg
dGl0bGU9IkRlY29kaW5nIHRoZSBSZWR1bmRhbmN5Ij4KKzx0PgorVGhlIHJlZHVuZGFudCBmcmFt
ZSBpcyBkZWNvZGVkIGxpa2UgYW55IG90aGVyIENFTFQtb25seSBmcmFtZSwgd2l0aCB0aGUKKyBl
eGNlcHRpb24gdGhhdCBpdCBkb2VzIG5vdCBjb250YWluIGEgVE9DIGJ5dGUuCitUaGUgZnJhbWUg
c2l6ZSBpcyBmaXhlZCBhdCA1Jm5ic3A7bXMsIHRoZSBjaGFubmVsIGNvdW50IGlzIHNldCB0byB0
aGF0IG9mIHRoZQorIGN1cnJlbnQgZnJhbWUsIGFuZCB0aGUgYXVkaW8gYmFuZHdpZHRoIGlzIGFs
c28gc2V0IHRvIHRoYXQgb2YgdGhlIGN1cnJlbnQKKyBmcmFtZSwgd2l0aCB0aGUgZXhjZXB0aW9u
IHRoYXQgZm9yIE1CIFNJTEsgZnJhbWVzLCBpdCBpcyBzZXQgdG8gV0IuCis8L3Q+CisKKzx0Pgor
SWYgdGhlIHJlZHVuZGFuY3kgYmVsb25ncyBhdCB0aGUgYmVnaW5uaW5nIChpbiBhIENFTFQtb25s
eSB0byBTSUxLLW9ubHkgb3IKKyBIeWJyaWQgdHJhbnNpdGlvbiksIHRoZSBmaW5hbCByZWNvbnN0
cnVjdGVkIG91dHB1dCB1c2VzIHRoZSBmaXJzdCAyLjUmbmJzcDttcworIG9mIGF1ZGlvIG91dHB1
dCBieSB0aGUgZGVjb2RlciBmb3IgdGhlIHJlZHVuZGFudCBmcmFtZSBhcy1pcywgZGlzY2FyZGlu
ZworIHRoZSBjb3JyZXNwb25kaW5nIG91dHB1dCBmcm9tIHRoZSBTSUxLLW9ubHkgb3IgSHlicmlk
IHBvcnRpb24gb2YgdGhlIGZyYW1lLgorVGhlIHJlbWFpbmluZyAyLjUmbmJzcDttcyBpcyBjcm9z
cy1sYXBwZWQgd2l0aCB0aGUgZGVjb2RlZCBTSUxLL0h5YnJpZCBzaWduYWwKKyB1c2luZyB0aGUg
Q0VMVCdzIHBvd2VyLWNvbXBsZW1lbnRhcnkgTURDVCB3aW5kb3cgdG8gZW5zdXJlIGEgc21vb3Ro
CisgdHJhbnNpdGlvbi4KKzwvdD4KKworPHQ+CitJZiB0aGUgcmVkdW5kYW5jeSBiZWxvbmdzIGF0
IHRoZSBlbmQgKGluIGEgU0lMSy1vbmx5IG9yIEh5YnJpZCB0byBDRUxULW9ubHkKKyB0cmFuc2l0
aW9uKSwgb25seSB0aGUgc2Vjb25kIGhhbGYgKDIuNSZuYnNwO21zKSBvZiB0aGUgYXVkaW8gb3V0
cHV0IGJ5IHRoZQorIGRlY29kZXIgZm9yIHRoZSByZWR1bmRhbnQgZnJhbWUgaXMgdXNlZC4KK0lu
IHRoYXQgY2FzZSwgdGhlIHNlY29uZCBoYWxmIG9mIHRoZSByZWR1bmRhbnQgZnJhbWUgaXMgY3Jv
c3MtbGFwcGVkIHdpdGggdGhlCisgZW5kIG9mIHRoZSBTSUxLL0h5YnJpZCBzaWduYWwsIGFnYWlu
IHVzaW5nIENFTFQncyBwb3dlci1jb21wbGVtZW50YXJ5IE1EQ1QKKyB3aW5kb3cgdG8gZW5zdXJl
IGEgc21vb3RoIHRyYW5zaXRpb24uCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKwor
PHNlY3Rpb24gYW5jaG9yPSJkZWNvZGVyLXJlc2V0IiB0aXRsZT0iU3RhdGUgUmVzZXQiPgorPHQ+
CitXaGVuIGEgdHJhbnNpdGlvbiBvY2N1cnMsIHRoZSBzdGF0ZSBvZiB0aGUgU0lMSyBvciB0aGUg
Q0VMVCBkZWNvZGVyIChvciBib3RoKQorIG1heSBuZWVkIHRvIGJlIHJlc2V0IGJlZm9yZSBkZWNv
ZGluZyBhIGZyYW1lIGluIHRoZSBuZXcgbW9kZS4KK1RoaXMgYXZvaWRzIHJldXNpbmcgIm91dCBv
ZiBkYXRlIiBtZW1vcnksIHdoaWNoIG1heSBub3QgaGF2ZSBiZWVuIHVwZGF0ZWQgaW4KKyBzb21l
IHRpbWUgb3IgbWF5IG5vdCBiZSBpbiBhIHdlbGwtZGVmaW5lZCBzdGF0ZSBkdWUgdG8sIGUuZy4s
IFBMQy4KK1RoZSBTSUxLIHN0YXRlIGlzIHJlc2V0IGJlZm9yZSBldmVyeSBTSUxLLW9ubHkgb3Ig
SHlicmlkIGZyYW1lIHdoZXJlIHRoZQorIHByZXZpb3VzIGZyYW1lIHdhcyBDRUxULW9ubHkuCitU
aGUgQ0VMVCBzdGF0ZSBpcyByZXNldCBldmVyeSB0aW1lIHRoZSBvcGVyYXRpbmcgbW9kZSBjaGFu
Z2VzIGFuZCB0aGUgbmV3IG1vZGUKKyBpcyBlaXRoZXIgSHlicmlkIG9yIENFTFQtb25seSwgZXhj
ZXB0IHdoZW4gdGhlIHRyYW5zaXRpb24gdXNlcyByZWR1bmRhbmN5IGFzCisgZGVzY3JpYmVkIGFi
b3ZlLgorV2hlbiBzd2l0Y2hpbmcgZnJvbSBTSUxLLW9ubHkgb3IgSHlicmlkIHRvIENFTFQtb25s
eSB3aXRoIHJlZHVuZGFuY3ksIHRoZSBDRUxUCisgc3RhdGUgaXMgcmVzZXQgYmVmb3JlIGRlY29k
aW5nIHRoZSByZWR1bmRhbnQgQ0VMVCBmcmFtZSBlbWJlZGRlZCBpbiB0aGUKKyBTSUxLLW9ubHkg
b3IgSHlicmlkIGZyYW1lLCBidXQgaXQgaXMgbm90IHJlc2V0IGJlZm9yZSBkZWNvZGluZyB0aGUg
Zm9sbG93aW5nCisgQ0VMVC1vbmx5IGZyYW1lLgorV2hlbiBzd2l0Y2hpbmcgZnJvbSBDRUxULW9u
bHkgbW9kZSB0byBTSUxLLW9ubHkgb3IgSHlicmlkIG1vZGUgd2l0aCByZWR1bmRhbmN5LAorIHRo
ZSBDRUxUIGRlY29kZXIgaXMgbm90IHJlc2V0IGZvciBkZWNvZGluZyB0aGUgcmVkdW5kYW50IENF
TFQgZnJhbWUuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSJTdW1tYXJ5IG9m
IFRyYW5zaXRpb25zIj4KKworPHQ+Cis8eHJlZiB0YXJnZXQ9Im5vcm1hdGl2ZV90cmFuc2l0aW9u
cyIvPiBpbGx1c3RyYXRlcyBhbGwgb2YgdGhlIG5vcm1hdGl2ZQorIHRyYW5zaXRpb25zIGludm9s
dmluZyBhIG1vZGUgY2hhbmdlLCBhbiBhdWRpbyBiYW5kd2lkdGggY2hhbmdlLCBvciBib3RoLgor
RWFjaCBvbmUgdXNlcyBhbiBTLCBILCBvciBDIHRvIHJlcHJlc2VudCBhbiBPcHVzIGZyYW1lIGlu
IHRoZSBjb3JyZXNwb25kaW5nCisgbW9kZS4KK0luIGFkZGl0aW9uLCBhbiBSIGluZGljYXRlcyB0
aGUgcHJlc2VuY2Ugb2YgcmVkdW5kYW5jeSBpbiB0aGUgT3B1cyBmcmFtZSBpdCBpcworIGNyb3Nz
LWxhcHBlZCB3aXRoLgorSXRzIGxvY2F0aW9uIGluIHRoZSBmaXJzdCBvciBsYXN0IDUmbmJzcDtt
cyBpcyBhc3N1bWVkIHRvIGNvcnJlc3BvbmQgdG8gd2hldGhlcgorIGl0IGlzIHRoZSBmcmFtZSBi
ZWZvcmUgb3IgYWZ0ZXIgdGhlIHRyYW5zaXRpb24uCitPdGhlciB1c2VzIG9mIHJlZHVuZGFuY3kg
YXJlIG5vbi1ub3JtYXRpdmUuCitGaW5hbGx5LCBhIGMgaW5kaWNhdGVzIHRoZSBjb250ZW50cyBv
ZiB0aGUgQ0VMVCBvdmVybGFwIGJ1ZmZlciBhZnRlciB0aGUKKyBwcmV2aW91c2x5IGRlY29kZWQg
ZnJhbWUgKGkuZS4sIGFzIGV4dHJhY3RlZCBieSBkZWNvZGluZyBhIHNpbGVuY2UgZnJhbWUpLgor
PGZpZ3VyZSBhbGlnbj0iY2VudGVyIiBhbmNob3I9Im5vcm1hdGl2ZV90cmFuc2l0aW9ucyIKKyB0
aXRsZT0iTm9ybWF0aXZlIFRyYW5zaXRpb25zIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwh
W0NEQVRBWworU0lMSyB0byBTSUxLIHdpdGggUmVkdW5kYW5jeTogICAgICAgICAgICAgUyAtPiBT
IC0+IFMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAh
UiAtPiBSCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDtTIC0+IFMgLT4gUworCitOQiBvciBNQiBTSUxLIHRvIEh5YnJpZCB3aXRoIFJl
ZHVuZGFuY3k6ICBTIC0+IFMgLT4gUworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICFSIC0+O0ggLT4gSCAtPiBICisKK1dCIFNJTEsgdG8gSHlicmlkOiAg
ICAgICAgICAgICAgICAgICAgICAgIFMgLT4gUyAtPiBTIC0+IUggLT4gSCAtPiBICisKK1NJTEsg
dG8gQ0VMVCB3aXRoIFJlZHVuZGFuY3k6ICAgICAgICAgICAgIFMgLT4gUyAtPiBTCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIVIgLT4gQyAtPiBDIC0+
IEMKKworSHlicmlkIHRvIE5CIG9yIE1CIFNJTEsgd2l0aCBSZWR1bmRhbmN5OiAgSCAtPiBIIC0+
IEgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAm
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhUiAt
PiBSCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDtTIC0+IFMgLT4gUworCitIeWJyaWQgdG8gV0IgU0lMSzogICAgICAgICAgICAgICAg
ICAgICAgICBIIC0+IEggLT4gSCAtPiBjCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcICArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBTIC0+IFMgLT4gUworCitIeWJyaWQgdG8gQ0VM
VCB3aXRoIFJlZHVuZGFuY3k6ICAgICAgICAgICBIIC0+IEggLT4gSAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFSIC0+IEMgLT4gQyAtPiBDCisKK0NF
TFQgdG8gU0lMSyB3aXRoIFJlZHVuZGFuY3k6ICAgICAgICAgICAgIEMgLT4gQyAtPiBDIC0+IFIK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgO1MgLT4gUyAtPiBTCisKK0NFTFQgdG8gSHlicmlkIHdpdGggUmVkdW5kYW5jeTogICAgICAg
ICAgIEMgLT4gQyAtPiBDIC0+IFIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfEggLT4gSCAtPiBICisKK0tleToKK1MgICBTSUxLLW9u
bHkgZnJhbWUgICAgICAgICAgICAgICAgIDsgICBTSUxLIGRlY29kZXIgcmVzZXQKK0ggICBIeWJy
aWQgZnJhbWUgICAgICAgICAgICAgICAgICAgIHwgICBDRUxUIGFuZCBTSUxLIGRlY29kZXIgcmVz
ZXRzCitDICAgQ0VMVC1vbmx5IGZyYW1lICAgICAgICAgICAgICAgICAhICAgQ0VMVCBkZWNvZGVy
IHJlc2V0CitjICAgQ0VMVCBvdmVybGFwICAgICAgICAgICAgICAgICAgICArICAgRGlyZWN0IG1p
eGluZworUiAgIFJlZHVuZGFudCBDRUxUIGZyYW1lICAgICAgICAgICAgJiAgIFdpbmRvd2VkIGNy
b3NzLWxhcAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGUgZmlyc3QgdHdvIGFuZCB0aGUg
bGFzdCB0d28gT3B1cyBmcmFtZXMgaW4gZWFjaCBleGFtcGxlIGFyZSBpbGx1c3RyYXRpdmUsCisg
aS5lLiwgdGhlcmUgaXMgbm8gcmVxdWlyZW1lbnQgdGhhdCBhIHN0cmVhbSByZW1haW4gaW4gdGhl
IHNhbWUgY29uZmlndXJhdGlvbgorIGZvciB0aHJlZSBjb25zZWN1dGl2ZSBmcmFtZXMgYmVmb3Jl
IG9yIGFmdGVyIGEgc3dpdGNoLgorPC90PgorCis8dD4KK1RoZSBiZWhhdmlvciBvZiB0cmFuc2l0
aW9ucyB3aXRob3V0IHJlZHVuZGFuY3kgd2hlcmUgUExDIGlzIGFsbG93ZWQgaXMgbm9uLW5vcm1h
dGl2ZS4KK0FuIGVuY29kZXIgbWlnaHQgc3RpbGwgd2lzaCB0byB1c2UgdGhlc2UgdHJhbnNpdGlv
bnMgaWYsIGZvciBleGFtcGxlLCBpdAorIGRvZXNuJ3Qgd2FudCB0byBhZGQgdGhlIGV4dHJhIGJp
dHJhdGUgcmVxdWlyZWQgZm9yIHJlZHVuZGFuY3kgb3IgaWYgaXQgbWFrZXMKKyBhIGRlY2lzaW9u
IHRvIHN3aXRjaCBhZnRlciBpdCBoYXMgYWxyZWFkeSB0cmFuc21pdHRlZCB0aGUgZnJhbWUgdGhh
dCB3b3VsZAorIGhhdmUgaGFkIHRvIGNvbnRhaW4gdGhlIHJlZHVuZGFuY3kuCis8eHJlZiB0YXJn
ZXQ9Im5vbm5vcm1hdGl2ZV90cmFuc2l0aW9ucyIvPiBpbGx1c3RyYXRlcyB0aGUgcmVjb21tZW5k
ZWQKKyBjcm9zcy1sYXBwaW5nIGFuZCBkZWNvZGVyIHJlc2V0cyBmb3IgdGhlc2UgdHJhbnNpdGlv
bnMuCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiIGFuY2hvcj0ibm9ubm9ybWF0aXZlX3RyYW5zaXRp
b25zIgorIHRpdGxlPSJSZWNvbW1lbmRlZCBOb24tTm9ybWF0aXZlIFRyYW5zaXRpb25zIj4KKzxh
cnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWworU0lMSyB0byBTSUxLIChhdWRpbyBiYW5k
d2lkdGggY2hhbmdlKTogICAgUyAtPiBTIC0+IFMgICA7UyAtPiBTIC0+IFMKKworTkIgb3IgTUIg
U0lMSyB0byBIeWJyaWQ6ICAgICAgICAgICAgICAgICAgUyAtPiBTIC0+IFMgICB8SCAtPiBIIC0+
IEgKKworU0lMSyB0byBDRUxUIHdpdGhvdXQgUmVkdW5kYW5jeTogICAgICAgICAgUyAtPiBTIC0+
IFMgLT4gUAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAhQyAtPiBDIC0+IEMKKworSHlicmlkIHRvIE5CIG9yIE1CIFNJTEs6ICAgICAg
ICAgICAgICAgICAgSCAtPiBIIC0+IEggLT4gYworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7UyAtPiBTIC0+IFMKKworSHlicmlkIHRv
IENFTFQgd2l0aG91dCBSZWR1bmRhbmN5OiAgICAgICAgSCAtPiBIIC0+IEggLT4gUAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhQyAt
PiBDIC0+IEMKKworQ0VMVCB0byBTSUxLIHdpdGhvdXQgUmVkdW5kYW5jeTogICAgICAgICAgQyAt
PiBDIC0+IEMgLT4gUAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgJgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA7UyAtPiBTIC0+IFMKKworQ0VMVCB0byBIeWJyaWQgd2l0aG91dCBS
ZWR1bmRhbmN5OiAgICAgICAgQyAtPiBDIC0+IEMgLT4gUAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8SCAtPiBIIC0+IEgKKworS2V5
OgorUyAgIFNJTEstb25seSBmcmFtZSAgICAgICAgICAgICAgICAgOyAgIFNJTEsgZGVjb2RlciBy
ZXNldAorSCAgIEh5YnJpZCBmcmFtZSAgICAgICAgICAgICAgICAgICAgfCAgIENFTFQgYW5kIFNJ
TEsgZGVjb2RlciByZXNldHMKK0MgICBDRUxULW9ubHkgZnJhbWUgICAgICAgICAgICAgICAgICEg
ICBDRUxUIGRlY29kZXIgcmVzZXQKK2MgICBDRUxUIG92ZXJsYXAgICAgICAgICAgICAgICAgICAg
ICsgICBEaXJlY3QgbWl4aW5nCitQICAgUGFja2V0IExvc3MgQ29uY2VhbG1lbnQgICAgICAgICAm
ICAgV2luZG93ZWQgY3Jvc3MtbGFwCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0VuY29kZXJz
IFNIT1VMRCBOT1QgdXNlIG90aGVyIHRyYW5zaXRpb25zLCBlLmcuLCB0aG9zZSB0aGF0IGludm9s
dmUgcmVkdW5kYW5jeQorIGluIHdheXMgbm90IGlsbHVzdHJhdGVkIGluIDx4cmVmIHRhcmdldD0i
bm9ybWF0aXZlX3RyYW5zaXRpb25zIi8+LgorPC90PgorCis8L3NlY3Rpb24+CisKKzwvc2VjdGlv
bj4KKworPC9zZWN0aW9uPgorCisKKzwhLS0gICoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogLS0+Cis8IS0tICAqKioqKioq
KioqKioqKioqKioqKioqKioqKiAgIE9QVVMgRU5DT0RFUiAgICoqKioqKioqKioqKioqKioqKioq
KioqIC0tPgorPCEtLSAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiAtLT4KKworPHNlY3Rpb24gdGl0bGU9Ik9wdXMgRW5j
b2RlciI+Cis8dD4KK0p1c3QgbGlrZSB0aGUgZGVjb2RlciwgdGhlIE9wdXMgZW5jb2RlciBhbHNv
IG5vcm1hbGx5IGNvbnNpc3RzIG9mIHR3byBtYWluIGJsb2NrczogdGhlCitTSUxLIGVuY29kZXIg
YW5kIHRoZSBDRUxUIGVuY29kZXIuIEhvd2V2ZXIsIHVubGlrZSB0aGUgY2FzZSBvZiB0aGUgZGVj
b2RlciwgYSB2YWxpZAorKHRob3VnaCBwb3RlbnRpYWxseSBzdWJvcHRpbWFsKSBPcHVzIGVuY29k
ZXIgaXMgbm90IHJlcXVpcmVkIHRvIHN1cHBvcnQgYWxsIG1vZGVzIGFuZAorbWF5IHRodXMgb25s
eSBpbmNsdWRlIGEgU0lMSyBlbmNvZGVyIG1vZHVsZSBvciBhIENFTFQgZW5jb2RlciBtb2R1bGUu
CitUaGUgb3V0cHV0IGJpdC1zdHJlYW0gb2YgdGhlIE9wdXMgZW5jb2RpbmcgY29udGFpbnMgYml0
cyBmcm9tIHRoZSBTSUxLIGFuZCBDRUxUCisgZW5jb2RlcnMsIHRob3VnaCB0aGVzZSBhcmUgbm90
IHNlcGFyYWJsZSBkdWUgdG8gdGhlIHVzZSBvZiBhIHJhbmdlIGNvZGVyLgorQSBibG9jayBkaWFn
cmFtIG9mIHRoZSBlbmNvZGVyIGlzIGlsbHVzdHJhdGVkIGJlbG93LgorCis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiIGFuY2hvcj0ib3B1cy1lbmNvZGVyLWZpZ3VyZSIgdGl0bGU9Ik9wdXMgRW5jb2Rl
ciI+Cis8YXJ0d29yaz4KKzwhW0NEQVRBWworICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0t
LS0tKyAgICArLS0tLS0tLS0tKworICAgICAgICAgICAgICAgICAgICB8ICAgU2FtcGxlICAgfCAg
ICB8ICBTSUxLICAgfC0tLS0tLSsKKyAgICAgICAgICAgICAgICAgKy0+fCAgICBSYXRlICAgIHwt
LS0+fCBFbmNvZGVyIHwgICAgICBWCisgICstLS0tLS0tLS0tLSsgIHwgIHwgQ29udmVyc2lvbiB8
ICAgIHwgICAgICAgICB8ICstLS0tLS0tLS0rCisgIHwgT3B0aW9uYWwgIHwgIHwgICstLS0tLS0t
LS0tLS0rICAgICstLS0tLS0tLS0rIHwgIFJhbmdlICB8CistPnwgSGlnaC1wYXNzIHwtLSsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgRW5jb2RlciB8LS0tLT4KKyAgfCAgRmlsdGVy
ICAgfCAgfCAgKy0tLS0tLS0tLS0tLS0tKyAgKy0tLS0tLS0tLSsgfCAgICAgICAgIHwgQml0LQor
ICArLS0tLS0tLS0tLS0rICB8ICB8ICAgIERlbGF5ICAgICB8ICB8ICBDRUxUICAgfCArLS0tLS0t
LS0tKyBzdHJlYW0KKyAgICAgICAgICAgICAgICAgKy0+fCBDb21wZW5zYXRpb24gfC0+fCBFbmNv
ZGVyIHwgICAgICBeCisgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgIHwgIHwgICAg
ICAgICB8LS0tLS0tKworICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0rICArLS0t
LS0tLS0tKworXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzwvdD4KKworPHQ+CitGb3IgYSBu
b3JtYWwgZW5jb2RlciB3aGVyZSBib3RoIHRoZSBTSUxLIGFuZCB0aGUgQ0VMVCBtb2R1bGVzIGFy
ZSBpbmNsdWRlZCwgYW4gb3B0aW1hbAorZW5jb2RlciBzaG91bGQgc2VsZWN0IHdoaWNoIGNvZGlu
ZyBtb2RlIHRvIHVzZSBhdCBydW4tdGltZSBkZXBlbmRpbmcgb24gdGhlIGNvbmRpdGlvbnMuCitJ
biB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uLCB0aGUgZnJhbWUgc2l6ZSBpcyBzZWxlY3Rl
ZCBieSB0aGUgYXBwbGljYXRpb24sIGJ1dCB0aGUKK290aGVyIGNvbmZpZ3VyYXRpb24gcGFyYW1l
dGVycyAobnVtYmVyIG9mIGNoYW5uZWxzLCBiYW5kd2lkdGgsIG1vZGUpIGFyZSBhdXRvbWF0aWNh
bGx5CitzZWxlY3RlZCAodW5sZXNzIGV4cGxpY2l0bHkgb3ZlcnJpZGRlbiBieSB0aGUgYXBwbGlj
YXRpb24pIGRlcGVuZCBvbiB0aGUgZm9sbG93aW5nOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgor
PHQ+UmVxdWVzdGVkIGJpdHJhdGU8L3Q+Cis8dD5JbnB1dCBzYW1wbGluZyByYXRlPC90PgorPHQ+
VHlwZSBvZiBzaWduYWwgKHNwZWVjaCB2cyBtdXNpYyk8L3Q+Cis8dD5GcmFtZSBzaXplIGluIHVz
ZTwvdD4KKzwvbGlzdD4KKworVGhlIHR5cGUgb2Ygc2lnbmFsIGN1cnJlbnRseSBuZWVkcyB0byBi
ZSBwcm92aWRlZCBieSB0aGUgYXBwbGljYXRpb24gKHRob3VnaCBpdCBjYW4gYmUKK2NoYW5nZWQg
aW4gcmVhbC10aW1lKS4gQW4gT3B1cyBlbmNvZGVyIGltcGxlbWVudGF0aW9uIGNvdWxkIGFsc28g
ZG8gYXV0b21hdGljIGRldGVjdGlvbiwKK2J1dCBzaW5jZSBPcHVzIGlzIGFuIGludGVyYWN0aXZl
IGNvZGVjLCBzdWNoIGFuIGltcGxlbWVudGF0aW9uIHdvdWxkIGxpa2VseSBoYXZlIHRvIGVpdGhl
cgorZGVsYXkgdGhlIHNpZ25hbCAoZm9yIG5vbi1pbnRlcmFjdGl2ZSBhcHBsaWNhdGlvbnMpIG9y
IGRlbGF5IHRoZSBtb2RlIHN3aXRjaGluZyBkZWNpc2lvbnMgKGZvcgoraW50ZXJhY3RpdmUgYXBw
bGljYXRpb25zKS4KKzwvdD4KKworPHQ+CitXaGVuIHRoZSBlbmNvZGVyIGlzIGNvbmZpZ3VyZWQg
Zm9yIHZvaWNlIG92ZXIgSVAgYXBwbGljYXRpb25zLCB0aGUgaW5wdXQgc2lnbmFsIGlzCitmaWx0
ZXJlZCBieSBhIGhpZ2gtcGFzcyBmaWx0ZXIgdG8gcmVtb3ZlIHRoZSBsb3dlc3QgcGFydCBvZiB0
aGUgc3BlY3RydW0KK3RoYXQgY29udGFpbnMgbGl0dGxlIHNwZWVjaCBlbmVyZ3kgYW5kIG1heSBj
b250YWluIGJhY2tncm91bmQgbm9pc2UuIFRoaXMgaXMgYSBzZWNvbmQgb3JkZXIKK0F1dG8gUmVn
cmVzc2l2ZSBNb3ZpbmcgQXZlcmFnZSAoaS5lLiwgd2l0aCBwb2xlcyBhbmQgemVyb3MpIGZpbHRl
ciB3aXRoIGEgY3V0LW9mZiBmcmVxdWVuY3kgYXJvdW5kIDUwJm5ic3A7SHouCitJbiB0aGUgZnV0
dXJlLCBhIG11c2ljIGRldGVjdG9yIG1heSBhbHNvIGJlIHVzZWQgdG8gbG93ZXIgdGhlIGN1dC1v
ZmYgZnJlcXVlbmN5IHdoZW4gdGhlCitpbnB1dCBzaWduYWwgaXMgZGV0ZWN0ZWQgdG8gYmUgbXVz
aWMgcmF0aGVyIHRoYW4gc3BlZWNoLgorPC90PgorCis8c2VjdGlvbiBhbmNob3I9InJhbmdlLWVu
Y29kZXIiIHRpdGxlPSJSYW5nZSBFbmNvZGVyIj4KKzx0PgorVGhlIHJhbmdlIGNvZGVyIGFjdHMg
YXMgdGhlIGJpdC1wYWNrZXIgZm9yIE9wdXMuCitJdCBpcyB1c2VkIGluIHRocmVlIGRpZmZlcmVu
dCB3YXlzOiB0byBlbmNvZGUKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PgorRW50cm9weS1j
b2RlZCBzeW1ib2xzIHdpdGggYSBmaXhlZCBwcm9iYWJpbGl0eSBtb2RlbCB1c2luZyBlY19lbmNv
ZGUoKQorIChlbnRlbmMuYyksCis8L3Q+Cis8dD4KK0ludGVnZXJzIGZyb20gMCB0byAoMioqTSZu
YnNwOy0mbmJzcDsxKSB1c2luZyBlY19lbmNfdWludCgpIG9yIGVjX2VuY19iaXRzKCkKKyAoZW50
ZW5jLmMpLDwvdD4KKzx0PgorSW50ZWdlcnMgZnJvbSAwIHRvIChmdCZuYnNwOy0mbmJzcDsxKSAo
d2hlcmUgZnQgaXMgbm90IGEgcG93ZXIgb2YgdHdvKSB1c2luZworIGVjX2VuY191aW50KCkgKGVu
dGVuYy5jKS4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitUaGUgcmFuZ2UgZW5jb2RlciBt
YWludGFpbnMgYW4gaW50ZXJuYWwgc3RhdGUgdmVjdG9yIGNvbXBvc2VkIG9mIHRoZSBmb3VyLXR1
cGxlCisgKHZhbCwmbmJzcDtybmcsJm5ic3A7cmVtLCZuYnNwO2V4dCkgcmVwcmVzZW50aW5nIHRo
ZSBsb3cgZW5kIG9mIHRoZSBjdXJyZW50CisgcmFuZ2UsIHRoZSBzaXplIG9mIHRoZSBjdXJyZW50
IHJhbmdlLCBhIHNpbmdsZSBidWZmZXJlZCBvdXRwdXQgYnl0ZSwgYW5kIGEKKyBjb3VudCBvZiBh
ZGRpdGlvbmFsIGNhcnJ5LXByb3BhZ2F0aW5nIG91dHB1dCBieXRlcy4KK0JvdGggdmFsIGFuZCBy
bmcgYXJlIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2VyIHZhbHVlcywgcmVtIGlzIGEgYnl0ZSB2YWx1
ZSBvcgorIGxlc3MgdGhhbiAyNTUgb3IgdGhlIHNwZWNpYWwgdmFsdWUgLTEsIGFuZCBleHQgaXMg
YW4gdW5zaWduZWQgaW50ZWdlciB3aXRoIGF0CisgbGVhc3QgMTEgYml0cy4KK1RoaXMgc3RhdGUg
dmVjdG9yIGlzIGluaXRpYWxpemVkIGF0IHRoZSBzdGFydCBvZiBlYWNoIGVhY2ggZnJhbWUgdG8g
dGhlIHZhbHVlCisgKDAsJm5ic3A7MioqMzEsJm5ic3A7LTEsJm5ic3A7MCkuCitBZnRlciBlbmNv
ZGluZyBhIHNlcXVlbmNlIG9mIHN5bWJvbHMsIHRoZSB2YWx1ZSBvZiBybmcgaW4gdGhlIGVuY29k
ZXIgc2hvdWxkCisgZXhhY3RseSBtYXRjaCB0aGUgdmFsdWUgb2Ygcm5nIGluIHRoZSBkZWNvZGVy
IGFmdGVyIGRlY29kaW5nIHRoZSBzYW1lIHNlcXVlbmNlCisgb2Ygc3ltYm9scy4KK1RoaXMgaXMg
YSBwb3dlcmZ1bCB0b29sIGZvciBkZXRlY3RpbmcgZXJyb3JzIGluIGVpdGhlciBhbiBlbmNvZGVy
IG9yIGRlY29kZXIKKyBpbXBsZW1lbnRhdGlvbi4KK1RoZSB2YWx1ZSBvZiB2YWwsIG9uIHRoZSBv
dGhlciBoYW5kLCByZXByZXNlbnRzIGRpZmZlcmVudCB0aGluZ3MgaW4gdGhlIGVuY29kZXIKKyBh
bmQgZGVjb2RlciwgYW5kIGlzIG5vdCBleHBlY3RlZCB0byBtYXRjaC4KKzwvdD4KKworPHQ+CitU
aGUgZGVjb2RlciBoYXMgbm8gYW5hbG9nIGZvciByZW0gYW5kIGV4dC4KK1RoZXNlIGFyZSB1c2Vk
IHRvIHBlcmZvcm0gY2FycnkgcHJvcGFnYXRpb24gaW4gdGhlIHJlbm9ybWFsaXphdGlvbiBsb29w
IGJlbG93LgorRWFjaCBpdGVyYXRpb24gb2YgdGhpcyBsb29wIHByb2R1Y2VzIDkgYml0cyBvZiBv
dXRwdXQsIGNvbnNpc3Rpbmcgb2YgOCBkYXRhCisgYml0cyBhbmQgYSBjYXJyeSBmbGFnLgorVGhl
IGVuY29kZXIgY2Fubm90IGRldGVybWluZSB0aGUgZmluYWwgdmFsdWUgb2YgdGhlIG91dHB1dCBi
eXRlcyB1bnRpbCBpdAorIHByb3BhZ2F0ZXMgdGhlc2UgY2FycnkgZmxhZ3MuCitUaGVyZWZvcmUg
dGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBidWZmZXJzIGEgc2luZ2xlIG5vbi1wcm9wYWdh
dGluZyBvdXRwdXQKKyBieXRlIChpLmUuLCBvbmUgbGVzcyB0aGFuIDI1NSkgaW4gcmVtIGFuZCBr
ZWVwcyBhIGNvdW50IG9mIGFkZGl0aW9uYWwKKyBwcm9wYWdhdGluZyAoaS5lLiwgMjU1KSBvdXRw
dXQgYnl0ZXMgaW4gZXh0LgorQW4gaW1wbGVtZW50YXRpb24gbWF5IGNob29zZSB0byB1c2UgYW55
IG1hdGhlbWF0aWNhbGx5IGVxdWl2YWxlbnQgc2NoZW1lIHRvCisgcGVyZm9ybSBjYXJyeSBwcm9w
YWdhdGlvbi4KKzwvdD4KKworPHNlY3Rpb24gYW5jaG9yPSJlbmNvZGluZy1zeW1ib2xzIiB0aXRs
ZT0iRW5jb2RpbmcgU3ltYm9scyI+Cis8dD4KK1RoZSBtYWluIGVuY29kaW5nIGZ1bmN0aW9uIGlz
IGVjX2VuY29kZSgpIChlbnRlbmMuYyksIHdoaWNoIGVuY29kZXMgc3ltYm9sIGsgaW4KKyB0aGUg
Y3VycmVudCBjb250ZXh0IHVzaW5nIHRoZSBzYW1lIHRocmVlLXR1cGxlIChmbFtrXSwmbmJzcDtm
aFtrXSwmbmJzcDtmdCkKKyBhcyB0aGUgZGVjb2RlciB0byBkZXNjcmliZSB0aGUgcmFuZ2Ugb2Yg
dGhlIHN5bWJvbCAoc2VlCisgPHhyZWYgdGFyZ2V0PSJyYW5nZS1kZWNvZGVyIi8+KS4KKzwvdD4K
Kzx0PgorZWNfZW5jb2RlKCkgdXBkYXRlcyB0aGUgc3RhdGUgb2YgdGhlIGVuY29kZXIgYXMgZm9s
bG93cy4KK0lmIGZsW2tdIGlzIGdyZWF0ZXIgdGhhbiB6ZXJvLCB0aGVuCis8ZmlndXJlIGFsaWdu
PSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICAgICAg
ICAgICAgICBybmcKK3ZhbCA9IHZhbCArIHJuZyAtIC0tLSAqIChmdCAtIGZsKSAsCisgICAgICAg
ICAgICAgICAgICBmdAorCisgICAgICBybmcKK3JuZyA9IC0tLSAqIChmaCAtIGZsKSAuCisgICAg
ICBmdAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitPdGhlcndpc2UsIHZhbCBpcyB1bmNoYW5n
ZWQgYW5kCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCisgICAgICAgICAgICBybmcKK3JuZyA9IHJuZyAtIC0tLSAqIChmaCAtIGZsKSAu
CisgICAgICAgICAgICBmdAorXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CitUaGUgZGl2aXNpb25z
IGhlcmUgYXJlIGludGVnZXIgZGl2aXNpb24uCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0icmFu
Z2UtZW5jb2Rlci1yZW5vcm0iIHRpdGxlPSJSZW5vcm1hbGl6YXRpb24iPgorPHQ+CitBZnRlciB0
aGlzIHVwZGF0ZSwgdGhlIHJhbmdlIGlzIG5vcm1hbGl6ZWQgdXNpbmcgYSBwcm9jZWR1cmUgdmVy
eSBzaW1pbGFyIHRvCisgdGhhdCBvZiA8eHJlZiB0YXJnZXQ9InJhbmdlLWRlY29kZXItcmVub3Jt
Ii8+LCBpbXBsZW1lbnRlZCBieQorIGVjX2VuY19ub3JtYWxpemUoKSAoZW50ZW5jLmMpLgorVGhl
IGZvbGxvd2luZyBwcm9jZXNzIGlzIHJlcGVhdGVkIHVudGlsIHJuZyZuYnNwOyZndDsmbmJzcDsy
KioyMy4KK0ZpcnN0LCB0aGUgdG9wIDkgYml0cyBvZiB2YWwsICh2YWwmZ3Q7Jmd0OzIzKSwgYXJl
IHNlbnQgdG8gdGhlIGNhcnJ5IGJ1ZmZlciwKKyBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJl
Y19lbmNfY2Fycnlfb3V0Ii8+LgorVGhlbiwgdGhlIGVuY29kZXIgc2V0cworPGZpZ3VyZSBhbGln
bj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPjwhW0NEQVRBWwordmFsID0gKHZh
bDw8OCkgJiAweDdGRkZGRkZGICwKKworcm5nID0gcm5nPDw4IC4KK11dPjwvYXJ0d29yaz4KKzwv
ZmlndXJlPgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImVjX2VuY19jYXJy
eV9vdXQiCisgdGl0bGU9IkNhcnJ5IFByb3BhZ2F0aW9uIGFuZCBPdXRwdXQgQnVmZmVyaW5nIj4K
Kzx0PgorVGhlIGZ1bmN0aW9uIGVjX2VuY19jYXJyeV9vdXQoKSAoZW50ZW5jLmMpIGltcGxlbWVu
dHMgY2FycnkgcHJvcGFnYXRpb24gYW5kCisgb3V0cHV0IGJ1ZmZlcmluZy4KK0l0IHRha2VzIGFz
IGlucHV0IGEgOS1iaXQgdmFsdWUsIGMsIGNvbnNpc3Rpbmcgb2YgOCBkYXRhIGJpdHMgYW5kIGFu
IGFkZGl0aW9uYWwKKyBjYXJyeSBiaXQuCitJZiBjIGlzIGVxdWFsIHRvIHRoZSB2YWx1ZSAyNTUs
IHRoZW4gZXh0IGlzIHNpbXBseSBpbmNyZW1lbnRlZCwgYW5kIG5vIG90aGVyCisgc3RhdGUgdXBk
YXRlcyBhcmUgcGVyZm9ybWVkLgorT3RoZXJ3aXNlLCBsZXQgYiZuYnNwOz0mbmJzcDsoYyZndDsm
Z3Q7OCkgYmUgdGhlIGNhcnJ5IGJpdC4KK1RoZW4sCis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8
dD4KK0lmIHRoZSBidWZmZXJlZCBieXRlIHJlbSBjb250YWlucyBhIHZhbHVlIG90aGVyIHRoYW4g
LTEsIHRoZSBlbmNvZGVyIG91dHB1dHMKKyB0aGUgYnl0ZSAocmVtJm5ic3A7KyZuYnNwO2IpLgor
T3RoZXJ3aXNlLCBpZiByZW0gaXMgLTEsIG5vIGJ5dGUgaXMgb3V0cHV0LgorPC90PgorPHQ+CitJ
ZiBleHQgaXMgbm9uLXplcm8sIHRoZW4gdGhlIGVuY29kZXIgb3V0cHV0cyBleHQgYnl0ZXMtLS1h
bGwgd2l0aCBhIHZhbHVlIG9mIDAKKyBpZiBiIGlzIHNldCwgb3IgMjU1IGlmIGIgaXMgdW5zZXQt
LS1hbmQgc2V0cyBleHQgdG8gMC4KKzwvdD4KKzx0PgorcmVtIGlzIHNldCB0byB0aGUgOCBkYXRh
IGJpdHM6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCityZW0gPSBjICYgMjU1IC4KK11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90
PgorPC9saXN0PgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFu
Y2hvcj0iZW5jb2RpbmctYWx0ZXJuYXRlIiB0aXRsZT0iQWx0ZXJuYXRlIEVuY29kaW5nIE1ldGhv
ZHMiPgorPHQ+CitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIHVzZXMgdGhyZWUgYWRkaXRp
b25hbCBlbmNvZGluZyBtZXRob2RzIHRoYXQgYXJlCisgZXhhY3RseSBlcXVpdmFsZW50IHRvIHRo
ZSBhYm92ZSwgYnV0IG1ha2UgYXNzdW1wdGlvbnMgYW5kIHNpbXBsaWZpY2F0aW9ucyB0aGF0Cisg
YWxsb3cgZm9yIGEgbW9yZSBlZmZpY2llbnQgaW1wbGVtZW50YXRpb24uCis8L3Q+CisKKzxzZWN0
aW9uIGFuY2hvcj0iZWNfZW5jb2RlX2JpbiIgdGl0bGU9ImVjX2VuY29kZV9iaW4oKSI+Cis8dD4K
K1RoZSBmaXJzdCBpcyBlY19lbmNvZGVfYmluKCkgKGVudGVuYy5jKSwgZGVmaW5lZCB1c2luZyB0
aGUgcGFyYW1ldGVyIGZ0YgorIGluc3RlYWQgb2YgZnQuCitJdCBpcyBtYXRoZW1hdGljYWxseSBl
cXVpdmFsZW50IHRvIGNhbGxpbmcgZWNfZW5jb2RlKCkgd2l0aAorIGZ0Jm5ic3A7PSZuYnNwOygx
Jmx0OyZsdDtmdGIpLCBidXQgYXZvaWRzIHVzaW5nIGRpdmlzaW9uLgorPC90PgorPC9zZWN0aW9u
PgorCis8c2VjdGlvbiBhbmNob3I9ImVjX2VuY19iaXRfbG9ncCIgdGl0bGU9ImVjX2VuY19iaXRf
bG9ncCgpIj4KKzx0PgorVGhlIG5leHQgaXMgZWNfZW5jX2JpdF9sb2dwKCkgKGVudGVuYy5jKSwg
d2hpY2ggZW5jb2RlcyBhIHNpbmdsZSBiaW5hcnkgc3ltYm9sLgorVGhlIGNvbnRleHQgaXMgZGVz
Y3JpYmVkIGJ5IGEgc2luZ2xlIHBhcmFtZXRlciwgbG9ncCwgd2hpY2ggaXMgdGhlIGFic29sdXRl
CisgdmFsdWUgb2YgdGhlIGJhc2UtMiBsb2dhcml0aG0gb2YgdGhlIHByb2JhYmlsaXR5IG9mIGEg
IjEiLgorSXQgaXMgbWF0aGVtYXRpY2FsbHkgZXF1aXZhbGVudCB0byBjYWxsaW5nIGVjX2VuY29k
ZSgpIHdpdGggdGhlIDMtdHVwbGUKKyAoZmxba10mbmJzcDs9Jm5ic3A7MCwgZmhba10mbmJzcDs9
Jm5ic3A7KDEmbHQ7Jmx0O2xvZ3ApJm5ic3A7LSZuYnNwOzEsCisgZnQmbmJzcDs9Jm5ic3A7KDEm
bHQ7Jmx0O2xvZ3ApKSBpZiBrIGlzIDAgYW5kIHdpdGgKKyAoZmxba10mbmJzcDs9Jm5ic3A7KDEm
bHQ7Jmx0O2xvZ3ApJm5ic3A7LSZuYnNwOzEsCisgZmhba10mbmJzcDs9Jm5ic3A7ZnQmbmJzcDs9
Jm5ic3A7KDEmbHQ7Jmx0O2xvZ3ApKSBpZiBrIGlzIDEuCitUaGUgaW1wbGVtZW50YXRpb24gcmVx
dWlyZXMgbm8gbXVsdGlwbGljYXRpb25zIG9yIGRpdmlzaW9ucy4KKzwvdD4KKzwvc2VjdGlvbj4K
KworPHNlY3Rpb24gYW5jaG9yPSJlY19lbmNfaWNkZiIgdGl0bGU9ImVjX2VuY19pY2RmKCkiPgor
PHQ+CitUaGUgbGFzdCBpcyBlY19lbmNfaWNkZigpIChlbnRlbmMuYyksIHdoaWNoIGVuY29kZXMg
YSBzaW5nbGUgYmluYXJ5IHN5bWJvbCB3aXRoCisgYSB0YWJsZS1iYXNlZCBjb250ZXh0IG9mIHVw
IHRvIDggYml0cy4KK1RoaXMgdXNlcyB0aGUgc2FtZSBpY2RmIHRhYmxlIGFzIGVjX2RlY19pY2Rm
KCkgZnJvbQorIDx4cmVmIHRhcmdldD0iZWNfZGVjX2ljZGYiLz4uCitUaGUgZnVuY3Rpb24gaXMg
bWF0aGVtYXRpY2FsbHkgZXF1aXZhbGVudCB0byBjYWxsaW5nIGVjX2VuY29kZSgpIHdpdGgKKyBm
bFtrXSZuYnNwOz0mbmJzcDsoMSZsdDsmbHQ7ZnRiKSZuYnNwOy0mbmJzcDtpY2RmW2stMV0gKG9y
IDAgaWYKKyBrJm5ic3A7PT0mbmJzcDswKSwgZmhba10mbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2Z0
YikmbmJzcDstJm5ic3A7aWNkZltrXSwgYW5kCisgZnQmbmJzcDs9Jm5ic3A7KDEmbHQ7Jmx0O2Z0
YikuCitUaGlzIG9ubHkgc2F2ZXMgYSBmZXcgYXJpdGhtZXRpYyBvcGVyYXRpb25zIG92ZXIgZWNf
ZW5jb2RlX2JpbigpLCBidXQgYWxsb3dzCisgdGhlIGVuY29kZXIgdG8gdXNlIHRoZSBzYW1lIGlj
ZGYgdGFibGVzIGFzIHRoZSBkZWNvZGVyLgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+
CisKKzxzZWN0aW9uIGFuY2hvcj0iZW5jb2RpbmctYml0cyIgdGl0bGU9IkVuY29kaW5nIFJhdyBC
aXRzIj4KKzx0PgorVGhlIHJhdyBiaXRzIHVzZWQgYnkgdGhlIENFTFQgbGF5ZXIgYXJlIHBhY2tl
ZCBhdCB0aGUgZW5kIG9mIHRoZSBidWZmZXIgdXNpbmcKKyBlY19lbmNfYml0cygpIChlbnRlbmMu
YykuCitCZWNhdXNlIHRoZSByYXcgYml0cyBtYXkgY29udGludWUgaW50byB0aGUgbGFzdCBieXRl
IG91dHB1dCBieSB0aGUgcmFuZ2UgY29kZXIKKyBpZiB0aGVyZSBpcyByb29tIGluIHRoZSBsb3ct
b3JkZXIgYml0cywgdGhlIGVuY29kZXIgbXVzdCBiZSBwcmVwYXJlZCB0byBtZXJnZQorIHRoZXNl
IHZhbHVlcyBpbnRvIGEgc2luZ2xlIGJ5dGUuCitUaGUgcHJvY2VkdXJlIGluIDx4cmVmIHRhcmdl
dD0iZW5jb2Rlci1maW5hbGl6aW5nIi8+IGRvZXMgdGhpcyBpbiBhIHdheSB0aGF0CisgZW5zdXJl
cyBib3RoIHRoZSByYW5nZSBjb2RlZCBkYXRhIGFuZCB0aGUgcmF3IGJpdHMgY2FuIGJlIGRlY29k
ZWQKKyBzdWNjZXNzZnVsbHkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0i
ZW5jb2RpbmctaW50cyIgdGl0bGU9IkVuY29kaW5nIFVuaWZvcm1seSBEaXN0cmlidXRlZCBJbnRl
Z2VycyI+Cis8dD4KK1RoZSBmdW5jdGlvbiBlY19lbmNfdWludCgpIChlbnRlbmMuYykgZW5jb2Rl
cyBvbmUgb2YgZnQgZXF1aXByb2JhYmxlIHN5bWJvbHMgaW4KKyB0aGUgcmFuZ2UgMCB0byAoZnQm
bmJzcDstJm5ic3A7MSksIGluY2x1c2l2ZSwgZWFjaCB3aXRoIGEgZnJlcXVlbmN5IG9mIDEsCisg
d2hlcmUgZnQgbWF5IGJlIGFzIGxhcmdlIGFzICgyKiozMiZuYnNwOy0mbmJzcDsxKS4KK0xpa2Ug
dGhlIGRlY29kZXIgKHNlZSA8eHJlZiB0YXJnZXQ9ImVjX2RlY191aW50Ii8+KSwgaXQgc3BsaXRz
IHVwIHRoZQorIHZhbHVlIGludG8gYSByYW5nZSBjb2RlZCBzeW1ib2wgcmVwcmVzZW50aW5nIHVw
IHRvIDggb2YgdGhlIGhpZ2ggYml0cywgYW5kLCBpZgorIG5lY2Vzc2FyeSwgcmF3IGJpdHMgcmVw
cmVzZW50aW5nIHRoZSByZW1haW5kZXIgb2YgdGhlIHZhbHVlLgorPC90PgorPHQ+CitlY19lbmNf
dWludCgpIHRha2VzIGEgdHdvLXR1cGxlICh0LCZuYnNwO2Z0KSwgd2hlcmUgdCBpcyB0aGUgdmFs
dWUgdG8gYmUKKyBlbmNvZGVkLCAwJm5ic3A7Jmx0Oz0mbmJzcDt0Jm5ic3A7Jmx0OyZuYnNwO2Z0
LCBhbmQgZnQgaXMgbm90IG5lY2Vzc2FyaWx5IGEKKyBwb3dlciBvZiB0d28uCitMZXQgZnRiJm5i
c3A7PSZuYnNwO2lsb2coZnQmbmJzcDstJm5ic3A7MSksIGkuZS4sIHRoZSBudW1iZXIgb2YgYml0
cyByZXF1aXJlZAorIHRvIHN0b3JlIChmdCZuYnNwOy0mbmJzcDsxKSBpbiB0d28ncyBjb21wbGVt
ZW50IG5vdGF0aW9uLgorSWYgZnRiIGlzIDggb3IgbGVzcywgdGhlbiB0IGlzIGVuY29kZWQgZGly
ZWN0bHkgdXNpbmcgZWNfZW5jb2RlKCkgd2l0aCB0aGUKKyB0aHJlZS10dXBsZSAodCwgdCZuYnNw
OysmbmJzcDsxLCBmdCkuCis8L3Q+Cis8dD4KK0lmIGZ0YiBpcyBncmVhdGVyIHRoYW4gOCwgdGhl
biB0aGUgdG9wIDggYml0cyBvZiB0IGFyZSBlbmNvZGVkIHVzaW5nIHRoZQorIHRocmVlLXR1cGxl
ICh0Jmd0OyZndDsoZnRiJm5ic3A7LSZuYnNwOzgpLAorICh0Jmd0OyZndDsoZnRiJm5ic3A7LSZu
YnNwOzgpKSZuYnNwOysmbmJzcDsxLAorICgoZnQmbmJzcDstJm5ic3A7MSkmZ3Q7Jmd0OyhmdGIm
bmJzcDstJm5ic3A7OCkpJm5ic3A7KyZuYnNwOzEpLCBhbmQgdGhlCisgcmVtYWluaW5nIGJpdHMs
CisgKHQmbmJzcDsmYW1wOyZuYnNwOygoMSZsdDsmbHQ7KGZ0YiZuYnNwOy0mbmJzcDs4KSkmbmJz
cDstJm5ic3A7MSksCisgYXJlIGVuY29kZWQgYXMgcmF3IGJpdHMgd2l0aCBlY19lbmNfYml0cygp
LgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImVuY29kZXItZmluYWxpemlu
ZyIgdGl0bGU9IkZpbmFsaXppbmcgdGhlIFN0cmVhbSI+Cis8dD4KK0FmdGVyIGFsbCBzeW1ib2xz
IGFyZSBlbmNvZGVkLCB0aGUgc3RyZWFtIG11c3QgYmUgZmluYWxpemVkIGJ5IG91dHB1dHRpbmcg
YQorIHZhbHVlIGluc2lkZSB0aGUgY3VycmVudCByYW5nZS4KK0xldCBlbmQgYmUgdGhlIGludGVn
ZXIgaW4gdGhlIGludGVydmFsIFt2YWwsJm5ic3A7dmFsJm5ic3A7KyZuYnNwO3JuZykgd2l0aCB0
aGUKKyBsYXJnZXN0IG51bWJlciBvZiB0cmFpbGluZyB6ZXJvIGJpdHMsIGIsIHN1Y2ggdGhhdAor
IChlbmQmbmJzcDsrJm5ic3A7KDEmbHQ7Jmx0O2IpJm5ic3A7LSZuYnNwOzEpIGlzIGFsc28gaW4g
dGhlIGludGVydmFsCisgW3ZhbCwmbmJzcDt2YWwmbmJzcDsrJm5ic3A7cm5nKS4KK1RoaXMgY2hv
aWNlIG9mIGVuZCBhbGxvd3MgdGhlIG1heGltdW0gbnVtYmVyIG9mIHRyYWlsaW5nIGJpdHMgdG8g
YmUgc2V0IHRvCisgYXJiaXRyYXJ5IHZhbHVlcyB3aGlsZSBzdGlsbCBlbnN1cmluZyB0aGUgcmFu
Z2UgY29kZWQgcGFydCBvZiB0aGUgYnVmZmVyIGNhbgorIGJlIGRlY29kZWQgY29ycmVjdGx5Lgor
VGhlbiwgd2hpbGUgZW5kIGlzIG5vdCB6ZXJvLCB0aGUgdG9wIDkgYml0cyBvZiBlbmQsIGkuZS4s
IChlbmQmZ3Q7Jmd0OzIzKSwgYXJlCisgcGFzc2VkIHRvIHRoZSBjYXJyeSBidWZmZXIgaW4gYWNj
b3JkYW5jZSB3aXRoIHRoZSBwcm9jZWR1cmUgaW4KKyA8eHJlZiB0YXJnZXQ9ImVjX2VuY19jYXJy
eV9vdXQiLz4sIGFuZCBlbmQgaXMgdXBkYXRlZCB2aWEKKzxmaWd1cmUgYWxpZ249ImNlbnRlciI+
Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKK2VuZCA9IChlbmQ8PDgpICYgMHg3
RkZGRkZGRiAuCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KK0ZpbmFsbHksIGlmIHRoZSBidWZm
ZXJlZCBvdXRwdXQgYnl0ZSwgcmVtLCBpcyBuZWl0aGVyIHplcm8gbm9yIHRoZSBzcGVjaWFsCisg
dmFsdWUgLTEsIG9yIHRoZSBjYXJyeSBjb3VudCwgZXh0LCBpcyBncmVhdGVyIHRoYW4gemVybywg
dGhlbiA5IHplcm8gYml0cyBhcmUKKyBzZW50IHRvIHRoZSBjYXJyeSBidWZmZXIgdG8gZmx1c2gg
aXQgdG8gdGhlIG91dHB1dCBidWZmZXIuCitXaGVuIG91dHB1dHRpbmcgdGhlIGZpbmFsIGJ5dGUg
ZnJvbSB0aGUgcmFuZ2UgY29kZXIsIGlmIGl0IHdvdWxkIG92ZXJsYXAgYW55CisgcmF3IGJpdHMg
YWxyZWFkeSBwYWNrZWQgaW50byB0aGUgZW5kIG9mIHRoZSBvdXRwdXQgYnVmZmVyLCB0aGV5IHNo
b3VsZCBiZSBPUmVkCisgaW50byB0aGUgc2FtZSBieXRlLgorVGhlIGJpdCBhbGxvY2F0aW9uIHJv
dXRpbmVzIGluIHRoZSBDRUxUIGxheWVyIHNob3VsZCBlbnN1cmUgdGhhdCB0aGlzIGNhbiBiZQor
IGRvbmUgd2l0aG91dCBjb3JydXB0aW5nIHRoZSByYW5nZSBjb2RlciBkYXRhIHNvIGxvbmcgYXMg
ZW5kIGlzIGNob3NlbiBhcworIGRlc2NyaWJlZCBhYm92ZS4KK0lmIHRoZXJlIGlzIGFueSBzcGFj
ZSBiZXR3ZWVuIHRoZSBlbmQgb2YgdGhlIHJhbmdlIGNvZGVyIGRhdGEgYW5kIHRoZSBlbmQgb2YK
KyB0aGUgcmF3IGJpdHMsIGl0IGlzIHBhZGRlZCB3aXRoIHplcm8gYml0cy4KK1RoaXMgZW50aXJl
IHByb2Nlc3MgaXMgaW1wbGVtZW50ZWQgYnkgZWNfZW5jX2RvbmUoKSAoZW50ZW5jLmMpLgorPC90
PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9ImVuY29kZXItdGVsbCIgdGl0bGU9IkN1
cnJlbnQgQml0IFVzYWdlIj4KKzx0PgorICAgVGhlIGJpdCBhbGxvY2F0aW9uIHJvdXRpbmVzIGlu
IE9wdXMgbmVlZCB0byBiZSBhYmxlIHRvIGRldGVybWluZSBhCisgICBjb25zZXJ2YXRpdmUgdXBw
ZXIgYm91bmQgb24gdGhlIG51bWJlciBvZiBiaXRzIHRoYXQgaGF2ZSBiZWVuIHVzZWQKKyAgIHRv
IGVuY29kZSB0aGUgY3VycmVudCBmcmFtZSB0aHVzIGZhci4gVGhpcyBkcml2ZXMgYWxsb2NhdGlv
bgorICAgZGVjaXNpb25zIGFuZCBlbnN1cmVzIHRoYXQgdGhlIHJhbmdlIGNvZGVyIGFuZCByYXcg
Yml0cyB3aWxsIG5vdAorICAgb3ZlcmZsb3cgdGhlIG91dHB1dCBidWZmZXIuIFRoaXMgaXMgY29t
cHV0ZWQgaW4gdGhlCisgICByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gdG8gd2hvbGUtYml0IHBy
ZWNpc2lvbiBieQorICAgdGhlIGZ1bmN0aW9uIGVjX3RlbGwoKSAoZW50Y29kZS5oKSBhbmQgdG8g
ZnJhY3Rpb25hbCAxLzh0aCBiaXQKKyAgIHByZWNpc2lvbiBieSB0aGUgZnVuY3Rpb24gZWNfdGVs
bF9mcmFjKCkgKGVudGNvZGUuYykuCisgICBMaWtlIGFsbCBvcGVyYXRpb25zIGluIHRoZSByYW5n
ZSBjb2RlciwgaXQgbXVzdCBiZSBpbXBsZW1lbnRlZCBpbiBhCisgICBiaXQtZXhhY3QgbWFubmVy
LCBhbmQgbXVzdCBwcm9kdWNlIGV4YWN0bHkgdGhlIHNhbWUgdmFsdWUgcmV0dXJuZWQgYnkKKyAg
IHRoZSBzYW1lIGZ1bmN0aW9ucyBpbiB0aGUgZGVjb2RlciBhZnRlciBkZWNvZGluZyB0aGUgc2Ft
ZSBzeW1ib2xzLgorPC90PgorPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRp
dGxlPSdTSUxLIEVuY29kZXInPgorICA8dD4KKyAgICBJbiBtYW55IHJlc3BlY3RzIHRoZSBTSUxL
IGVuY29kZXIgbWlycm9ycyB0aGUgU0lMSyBkZWNvZGVyIGRlc2NyaWJlZAorICAgIGluIDx4cmVm
IHRhcmdldD0nc2lsa19kZWNvZGVyX291dGxpbmUnLz4uCisgICAgRGV0YWlscyBzdWNoIGFzIHRo
ZSBxdWFudGl6YXRpb24gYW5kIHJhbmdlIGNvZGVyIHRhYmxlcyBjYW4gYmUgZm91bmQKKyAgICB0
aGVyZSwgd2hpbGUgdGhpcyBzZWN0aW9uIGRlc2NyaWJlcyB0aGUgaGlnaC1sZXZlbCBkZXNpZ24g
Y2hvaWNlcyB0aGF0CisgICAgd2VyZSBtYWRlLgorICAgIFRoZSBkaWFncmFtIGJlbG93IHNob3dz
IHRoZSBiYXNpYyBtb2R1bGVzIG9mIHRoZSBTSUxLIGVuY29kZXIuCis8ZmlndXJlIGFsaWduPSJj
ZW50ZXIiIGFuY2hvcj0ic2lsa19lbmNvZGVyX2ZpZ3VyZSIgdGl0bGU9IlNJTEsgRW5jb2RlciI+
Cis8YXJ0d29yaz4KKzwhW0NEQVRBWworICAgICAgICstLS0tLS0tLS0tKyAgICArLS0tLS0tLS0r
ICAgICstLS0tLS0tLS0rCisgICAgICAgfCAgU2FtcGxlICB8ICAgIHwgU3RlcmVvIHwgICAgfCAg
U0lMSyAgIHwKKy0tLS0tLT58ICAgUmF0ZSAgIHwtLS0+fCBNaXhpbmcgfC0tLT58ICBDb3JlICAg
fC0tLS0tLS0tLS0+CitJbnB1dCAgfENvbnZlcnNpb258ICAgIHwgICAgICAgIHwgICAgfCBFbmNv
ZGVyIHwgIEJpdHN0cmVhbQorICAgICAgICstLS0tLS0tLS0tKyAgICArLS0tLS0tLS0rICAgICst
LS0tLS0tLS0rCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorCis8c2VjdGlvbiB0
aXRsZT0nU2FtcGxlIFJhdGUgQ29udmVyc2lvbic+Cis8dD4KK1RoZSBpbnB1dCBzaWduYWwncyBz
YW1wbGluZyByYXRlIGlzIGFkanVzdGVkIGJ5IGEgc2FtcGxlIHJhdGUgY29udmVyc2lvbgorbW9k
dWxlIHNvIHRoYXQgaXQgbWF0Y2hlcyB0aGUgU0lMSyBpbnRlcm5hbCBzYW1wbGluZyByYXRlLgor
VGhlIGlucHV0IHRvIHRoZSBzYW1wbGUgcmF0ZSBjb252ZXJ0ZXIgaXMgZGVsYXllZCBieSBhIG51
bWJlciBvZiBzYW1wbGVzCitkZXBlbmRpbmcgb24gdGhlIHNhbXBsZSByYXRlIHJhdGlvLCBzdWNo
IHRoYXQgdGhlIG92ZXJhbGwgZGVsYXkgaXMgY29uc3RhbnQKK2ZvciBhbGwgaW5wdXQgYW5kIG91
dHB1dCBzYW1wbGUgcmF0ZXMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSdT
dGVyZW8gTWl4aW5nJz4KKzx0PgorVGhlIHN0ZXJlbyBtaXhlciBpcyBvbmx5IHVzZWQgZm9yIHN0
ZXJlbyBpbnB1dCBzaWduYWxzLgorSXQgY29udmVydHMgYSBzdGVyZW8gbGVmdC9yaWdodCBzaWdu
YWwgaW50byBhbiBhZGFwdGl2ZQorbWlkL3NpZGUgcmVwcmVzZW50YXRpb24uCitUaGUgZmlyc3Qg
c3RlcCBpcyB0byBjb21wdXRlIG5vbi1hZGFwdGl2ZSBtaWQvc2lkZSBzaWduYWxzCithcyBoYWxm
IHRoZSBzdW0gYW5kIGRpZmZlcmVuY2UgYmV0d2VlbiBsZWZ0IGFuZCByaWdodCBzaWduYWxzLgor
VGhlIHNpZGUgc2lnbmFsIGlzIHRoZW4gbWluaW1pemVkIGluIGVuZXJneSBieSBzdWJ0cmFjdGlu
ZyBhCitwcmVkaWN0aW9uIG9mIGl0IGJhc2VkIG9uIHRoZSBtaWQgc2lnbmFsLgorVGhpcyBwcmVk
aWN0aW9uIHdvcmtzIHdlbGwgd2hlbiB0aGUgbGVmdCBhbmQgcmlnaHQgc2lnbmFscworZXhoaWJp
dCBsaW5lYXIgZGVwZW5kZW5jeSwgZm9yIGluc3RhbmNlIGZvciBhbiBhbXBsaXR1ZGUtcGFubmVk
CitpbnB1dCBzaWduYWwuCitMaWtlIGluIHRoZSBkZWNvZGVyLCB0aGUgcHJlZGljdGlvbiBjb2Vm
ZmljaWVudHMgYXJlIGxpbmVhcmx5CitpbnRlcnBvbGF0ZWQgZHVyaW5nIHRoZSBmaXJzdCA4Jm5i
c3A7bXMgb2YgdGhlIGZyYW1lLgorICBUaGUgbWlkIHNpZ25hbCBpcyBhbHdheXMgZW5jb2RlZCwg
d2hlcmVhcyB0aGUgcmVzaWR1YWwKKyAgc2lkZSBzaWduYWwgaXMgb25seSBlbmNvZGVkIGlmIGl0
IGhhcyBzdWZmaWNpZW50CisgIGVuZXJneSBjb21wYXJlZCB0byB0aGUgbWlkIHNpZ25hbCdzIGVu
ZXJneS4KKyAgSWYgaXQgaGFzIG5vdCwKKyAgdGhlICJtaWRfb25seV9mbGFnIiBpcyBzZXQgd2l0
aG91dCBlbmNvZGluZyB0aGUgc2lkZSBzaWduYWwuCis8L3Q+Cis8dD4KK1RoZSBwcmVkaWN0b3Ig
Y29lZmZpY2llbnRzIGFyZSBjb2RlZCByZWdhcmRsZXNzIG9mIHdoZXRoZXIKK3RoZSBzaWRlIHNp
Z25hbCBpcyBlbmNvZGVkLgorRm9yIGVhY2ggZnJhbWUsIHR3byBwcmVkaWN0b3IgY29lZmZpY2ll
bnRzIGFyZSBjb21wdXRlZCwgb25lCit0aGF0IHByZWRpY3RzIGJldHdlZW4gbG93LXBhc3NlZCBt
aWQgYW5kIHNpZGUgY2hhbm5lbHMsIGFuZAorb25lIHRoYXQgcHJlZGljdHMgYmV0d2VlbiBoaWdo
LXBhc3NlZCBtaWQgYW5kIHNpZGUgY2hhbm5lbHMuCitUaGUgbG93LXBhc3MgZmlsdGVyIGlzIGEg
c2ltcGxlIHRocmVlLXRhcCBmaWx0ZXIKK2FuZCBjcmVhdGVzIGEgZGVsYXkgb2Ygb25lIHNhbXBs
ZS4KK1RoZSBoaWdoLXBhc3MgZmlsdGVyZWQgc2lnbmFsIGlzIHRoZSBkaWZmZXJlbmNlIGJldHdl
ZW4KK3RoZSBtaWQgc2lnbmFsIGRlbGF5ZWQgYnkgb25lIHNhbXBsZSBhbmQgdGhlIGxvdy1wYXNz
ZWQKK3NpZ25hbC4gIEluc3RlYWQgb2YgZXhwbGljaXRseSBjb21wdXRpbmcgdGhlIGhpZ2gtcGFz
c2VkCitzaWduYWwsIGl0IGlzIGNvbXB1dGF0aW9uYWxseSBtb3JlIGVmZmljaWVudCB0byB0cmFu
c2Zvcm0KK3RoZSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cyBiZWZvcmUgYXBwbHlpbmcgdGhlbSB0
byB0aGUKK2ZpbHRlcmVkIG1pZCBzaWduYWwsIGFzIGZvbGxvd3MKKzxmaWd1cmUgYWxpZ249ImNl
bnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworcHJlZChuKSA9IExQ
KG4pICogdzAgKyBIUChuKSAqIHcxCisgICAgICAgID0gTFAobikgKiB3MCArIChtaWQobi0xKSAt
IExQKG4pKSAqIHcxCisgICAgICAgID0gTFAobikgKiAodzAgLSB3MSkgKyBtaWQobi0xKSAqIHcx
CitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgord2hlcmUgdzAgYW5kIHcxIGFyZSB0aGUgbG93
LXBhc3MgYW5kIGhpZ2gtcGFzcyBwcmVkaWN0aW9uCitjb2VmZmljaWVudHMsIG1pZChuLTEpIGlz
IHRoZSBtaWQgc2lnbmFsIGRlbGF5ZWQgYnkgb25lIHNhbXBsZSwKK0xQKG4pIGFuZCBIUChuKSBh
cmUgdGhlIGxvdy1wYXNzZWQgYW5kIGhpZ2gtcGFzc2VkCitzaWduYWxzIGFuZCBwcmVkKG4pIGlz
IHRoZSBwcmVkaWN0aW9uIHNpZ25hbCB0aGF0IGlzIHN1YnRyYWN0ZWQKK2Zyb20gdGhlIHNpZGUg
c2lnbmFsLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0nU0lMSyBDb3JlIEVu
Y29kZXInPgorPHQ+CitXaGF0IGZvbGxvd3MgaXMgYSBkZXNjcmlwdGlvbiBvZiB0aGUgY29yZSBl
bmNvZGVyIGFuZCBpdHMgY29tcG9uZW50cy4KK0ZvciBzaW1wbGljaXR5LCB0aGUgY29yZSBlbmNv
ZGVyIGlzIHJlZmVycmVkIHRvIHNpbXBseSBhcyB0aGUgZW5jb2RlciBpbgordGhlIHJlbWFpbmRl
ciBvZiB0aGlzIHNlY3Rpb24uIEFuIG92ZXJ2aWV3IG9mIHRoZSBlbmNvZGVyIGlzIGdpdmVuIGlu
Cis8eHJlZiB0YXJnZXQ9ImVuY29kZXJfZmlndXJlIiAvPi4KKzwvdD4KKzxmaWd1cmUgYWxpZ249
ImNlbnRlciIgYW5jaG9yPSJlbmNvZGVyX2ZpZ3VyZSIgdGl0bGU9IlNJTEsgQ29yZSBFbmNvZGVy
Ij4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLSsKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT58
ICAgfAorICAgICArLS0tLS0tLS0tKyAgICAgICAgICB8ICAgICAgKy0tLS0tLS0tLSsgICAgICAg
ICAgICAgICAgIHwgICB8CisgICAgIHxWb2ljZSAgICB8ICAgICAgICAgIHwgICAgICB8TFRQICAg
ICAgfDEyICAgICAgICAgICAgICAgfCAgIHwKKyArLS0+fEFjdGl2aXR5IHwtLSsgICAgICAgKy0t
LS0tPnxTY2FsaW5nICB8LS0tLS0tLS0tLS0rLS0tLT58ICAgfAorIHwgICB8RGV0ZWN0b3IgfDMg
fCAgICAgICB8ICAgICAgfENvbnRyb2wgIHw8LS0rICAgICAgIHwgICAgIHwgICB8CisgfCAgICst
LS0tLS0tLS0rICB8ICAgICAgIHwgICAgICArLS0tLS0tLS0tKyAgIHwgICAgICAgfCAgICAgfCAg
IHwKKyB8ICAgICAgICAgICAgICAgIHwgICAgICAgfCAgICAgICstLS0tLS0tLS0rICAgfCAgICAg
ICB8ICAgICB8ICAgfAorIHwgICAgICAgICAgICAgICAgfCAgICAgICB8ICAgICAgfEdhaW5zICAg
IHwgICB8ICAgICAgIHwgICAgIHwgICB8CisgfCAgICAgICAgICAgICAgICB8ICAgICAgIHwgICst
LT58UHJvY2Vzc29yfC0tLXwtLS0rLS0tfC0tLS0+fCBSIHwKKyB8ICAgICAgICAgICAgICAgIHwg
ICAgICAgfCAgfCAgIHwgICAgICAgICB8MTEgfCAgIHwgICB8ICAgICB8IGEgfAorIHwgICAgICAg
ICAgICAgICBcLyAgICAgICB8ICB8ICAgKy0tLS0tLS0tLSsgICB8ICAgfCAgIHwgICAgIHwgbiB8
CisgfCAgICAgICAgICArLS0tLS0tLS0tKyAgIHwgIHwgICArLS0tLS0tLS0tKyAgIHwgICB8ICAg
fCAgICAgfCBnIHwKKyB8ICAgICAgICAgIHxQaXRjaCAgICB8ICAgfCAgfCAgIHxMU0YgICAgICB8
ICAgfCAgIHwgICB8ICAgICB8IGUgfAorIHwgICAgICAgKy0+fEFuYWx5c2lzIHwtLS0rICB8ICAg
fFF1YW50aXplcnwtLS18LS0tfC0tLXwtLS0tPnwgICB8CisgfCAgICAgICB8ICB8ICAgICAgICAg
fDQgIHwgIHwgICB8ICAgICAgICAgfDggIHwgICB8ICAgfCAgICAgfCBFIHwtLT4KKyB8ICAgICAg
IHwgICstLS0tLS0tLS0rICAgfCAgfCAgICstLS0tLS0tLS0rICAgfCAgIHwgICB8ICAgICB8IG4g
fCAyCisgfCAgICAgICB8ICAgICAgICAgICAgICAgIHwgIHwgICAgOS9cICAxMHwgICAgIHwgICB8
ICAgfCAgICAgfCBjIHwKKyB8ICAgICAgIHwgICAgICAgICAgICAgICAgfCAgfCAgICAgfCAgICBc
LyAgICAgfCAgIHwgICB8ICAgICB8IG8gfAorIHwgICAgICAgfCAgKy0tLS0tLS0tLSsgICB8ICB8
ICAgKy0tLS0tLS0tLS0rICB8ICAgfCAgIHwgICAgIHwgZCB8CisgfCAgICAgICB8ICB8Tm9pc2Ug
ICAgfCAgICstLXwtLT58UHJlZGljdGlvbnwtLSstLS18LS0tfC0tLS0+fCBlIHwKKyB8ICAgICAg
ICstPnxTaGFwaW5nICB8LS0tfC0tKyAgIHxBbmFseXNpcyAgfDcgfCAgIHwgICB8ICAgICB8IHIg
fAorIHwgICAgICAgfCAgfEFuYWx5c2lzIHw1ICB8ICB8ICAgfCAgICAgICAgICB8ICB8ICAgfCAg
IHwgICAgIHwgICB8CisgfCAgICAgICB8ICArLS0tLS0tLS0tKyAgIHwgIHwgICArLS0tLS0tLS0t
LSsgIHwgICB8ICAgfCAgICAgfCAgIHwKKyB8ICAgICAgIHwgICAgICAgICAgICAgICAgfCAgfCAg
ICAgICAgL1wgICAgICAgfCAgIHwgICB8ICAgICB8ICAgfAorIHwgICAgICAgfCAgICAgKy0tLS0t
LS0tLS18LS18LS0tLS0tLS0rICAgICAgICB8ICAgfCAgIHwgICAgIHwgICB8CisgfCAgICAgICB8
ICAgICB8ICAgICAgICAgXC8gIFwvICAgICAgICAgICAgICAgXC8gIFwvICBcLyAgICAgfCAgIHwK
KyB8ICAgICAgIHwgICAgIHwgICAgICAgKy0tLS0tLS0tLSsgICAgICAgICAgKy0tLS0tLS0tLS0t
LSsgICB8ICAgfAorIHwgICAgICAgfCAgICAgfCAgICAgICB8ICAgICAgICAgfCAgICAgICAgICB8
Tm9pc2UgICAgICAgfCAgIHwgICB8CistKy0tLS0tLS0rLS0tLS0rLS0tLS0tPnxQcmVmaWx0ZXJ8
LS0tLS0tLS0tPnxTaGFwaW5nICAgICB8LS0+fCAgIHwKKzEgICAgICAgICAgICAgICAgICAgICAg
fCAgICAgICAgIHwgNiAgICAgICAgfFF1YW50aXphdGlvbnwxMyB8ICAgfAorICAgICAgICAgICAg
ICAgICAgICAgICArLS0tLS0tLS0tKyAgICAgICAgICArLS0tLS0tLS0tLS0tKyAgICstLS0rCisK
KzE6ICBJbnB1dCBzcGVlY2ggc2lnbmFsCisyOiAgUmFuZ2UgZW5jb2RlZCBiaXRzdHJlYW0KKzM6
ICBWb2ljZSBhY3Rpdml0eSBlc3RpbWF0ZQorNDogIFBpdGNoIGxhZ3MgKHBlciA1IG1zKSBhbmQg
dm9pY2luZyBkZWNpc2lvbiAocGVyIDIwIG1zKQorNTogIE5vaXNlIHNoYXBpbmcgcXVhbnRpemF0
aW9uIGNvZWZmaWNpZW50cworICAtIFNob3J0IHRlcm0gc3ludGhlc2lzIGFuZCBhbmFseXNpcwor
ICAgIG5vaXNlIHNoYXBpbmcgY29lZmZpY2llbnRzIChwZXIgNSBtcykKKyAgLSBMb25nIHRlcm0g
c3ludGhlc2lzIGFuZCBhbmFseXNpcyBub2lzZQorICAgIHNoYXBpbmcgY29lZmZpY2llbnRzIChw
ZXIgNSBtcyBhbmQgZm9yIHZvaWNlZCBzcGVlY2ggb25seSkKKyAgLSBOb2lzZSBzaGFwaW5nIHRp
bHQgKHBlciA1IG1zKQorICAtIFF1YW50aXplciBnYWluL3N0ZXAgc2l6ZSAocGVyIDUgbXMpCis2
OiAgSW5wdXQgc2lnbmFsIGZpbHRlcmVkIHdpdGggYW5hbHlzaXMgbm9pc2Ugc2hhcGluZyBmaWx0
ZXJzCis3OiAgU2hvcnQgYW5kIGxvbmcgdGVybSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50cworICAg
IExUUCAocGVyIDUgbXMpIGFuZCBMUEMgKHBlciAyMCBtcykKKzg6ICBMU0YgcXVhbnRpemF0aW9u
IGluZGljZXMKKzk6ICBMU0YgY29lZmZpY2llbnRzCisxMDogUXVhbnRpemVkIExTRiBjb2VmZmlj
aWVudHMKKzExOiBQcm9jZXNzZWQgZ2FpbnMsIGFuZCBzeW50aGVzaXMgbm9pc2Ugc2hhcGUgY29l
ZmZpY2llbnRzCisxMjogTFRQIHN0YXRlIHNjYWxpbmcgY29lZmZpY2llbnQuIENvbnRyb2xsaW5n
IGVycm9yIHByb3BhZ2F0aW9uCisgICAvIHByZWRpY3Rpb24gZ2FpbiB0cmFkZS1vZmYKKzEzOiBR
dWFudGl6ZWQgc2lnbmFsCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgorCis8c2VjdGlvbiB0
aXRsZT0nVm9pY2UgQWN0aXZpdHkgRGV0ZWN0aW9uJz4KKzx0PgorVGhlIGlucHV0IHNpZ25hbCBp
cyBwcm9jZXNzZWQgYnkgYSBWb2ljZSBBY3Rpdml0eSBEZXRlY3RvciAoVkFEKSB0byBwcm9kdWNl
CithIG1lYXN1cmUgb2Ygdm9pY2UgYWN0aXZpdHksIHNwZWN0cmFsIHRpbHQsIGFuZCBzaWduYWwt
dG8tbm9pc2UgZXN0aW1hdGVzIGZvcgorZWFjaCBmcmFtZS4gVGhlIFZBRCB1c2VzIGEgc2VxdWVu
Y2Ugb2YgaGFsZi1iYW5kIGZpbHRlcmJhbmtzIHRvIHNwbGl0IHRoZQorc2lnbmFsIGludG8gZm91
ciBzdWJiYW5kczogMC4uLkZzLzE2LCBGcy8xNi4uLkZzLzgsIEZzLzguLi5Gcy80LCBhbmQKK0Zz
LzQuLi5Gcy8yLCB3aGVyZSBGcyBpcyB0aGUgc2FtcGxpbmcgZnJlcXVlbmN5ICg4LCAxMiwgMTYs
IG9yIDI0Jm5ic3A7a0h6KS4KK1RoZSBsb3dlc3Qgc3ViYmFuZCwgZnJvbSAwIC0gRnMvMTYsIGlz
IGhpZ2gtcGFzcyBmaWx0ZXJlZCB3aXRoIGEgZmlyc3Qtb3JkZXIKK21vdmluZyBhdmVyYWdlIChN
QSkgZmlsdGVyICh3aXRoIHRyYW5zZmVyIGZ1bmN0aW9uIEgoeikgPSAxLXoqKigtMSkpIHRvCity
ZWR1Y2UgdGhlIGVuZXJneSBhdCB0aGUgbG93ZXN0IGZyZXF1ZW5jaWVzLiBGb3IgZWFjaCBmcmFt
ZSwgdGhlIHNpZ25hbAorZW5lcmd5IHBlciBzdWJiYW5kIGlzIGNvbXB1dGVkLgorSW4gZWFjaCBz
dWJiYW5kLCBhIG5vaXNlIGxldmVsIGVzdGltYXRvciB0cmFja3MgdGhlIGJhY2tncm91bmQgbm9p
c2UgbGV2ZWwKK2FuZCBhIFNpZ25hbC10by1Ob2lzZSBSYXRpbyAoU05SKSB2YWx1ZSBpcyBjb21w
dXRlZCBhcyB0aGUgbG9nYXJpdGhtIG9mIHRoZQorcmF0aW8gb2YgZW5lcmd5IHRvIG5vaXNlIGxl
dmVsLgorVXNpbmcgdGhlc2UgaW50ZXJtZWRpYXRlIHZhcmlhYmxlcywgdGhlIGZvbGxvd2luZyBw
YXJhbWV0ZXJzIGFyZSBjYWxjdWxhdGVkCitmb3IgdXNlIGluIG90aGVyIFNJTEsgbW9kdWxlczoK
KzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0PgorQXZlcmFnZSBTTlIuIFRoZSBhdmVyYWdlIG9m
IHRoZSBzdWJiYW5kIFNOUiB2YWx1ZXMuCis8L3Q+CisKKzx0PgorU21vb3RoZWQgc3ViYmFuZCBT
TlJzLiBUZW1wb3JhbGx5IHNtb290aGVkIHN1YmJhbmQgU05SIHZhbHVlcy4KKzwvdD4KKworPHQ+
CitTcGVlY2ggYWN0aXZpdHkgbGV2ZWwuIEJhc2VkIG9uIHRoZSBhdmVyYWdlIFNOUiBhbmQgYSB3
ZWlnaHRlZCBhdmVyYWdlIG9mIHRoZQorc3ViYmFuZCBlbmVyZ2llcy4KKzwvdD4KKworPHQ+CitT
cGVjdHJhbCB0aWx0LiBBIHdlaWdodGVkIGF2ZXJhZ2Ugb2YgdGhlIHN1YmJhbmQgU05Scywgd2l0
aCBwb3NpdGl2ZSB3ZWlnaHRzCitmb3IgdGhlIGxvdyBzdWJiYW5kcyBhbmQgbmVnYXRpdmUgd2Vp
Z2h0cyBmb3IgdGhlIGhpZ2ggc3ViYmFuZHMuCis8L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIHRpdGxlPSdQaXRjaCBBbmFseXNpcycgYW5jaG9yPSdwaXRjaF9lc3Rp
bWF0b3Jfb3ZlcnZpZXdfc2VjdGlvbic+Cis8dD4KK1RoZSBpbnB1dCBzaWduYWwgaXMgcHJvY2Vz
c2VkIGJ5IHRoZSBvcGVuIGxvb3AgcGl0Y2ggZXN0aW1hdG9yIHNob3duIGluCis8eHJlZiB0YXJn
ZXQ9J3BpdGNoX2VzdGltYXRvcl9maWd1cmUnIC8+LgorPGZpZ3VyZSBhbGlnbj0iY2VudGVyIiBh
bmNob3I9InBpdGNoX2VzdGltYXRvcl9maWd1cmUiCisgdGl0bGU9IkJsb2NrIGRpYWdyYW0gb2Yg
dGhlIHBpdGNoIGVzdGltYXRvciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRB
WworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tKyAgKy0tLS0tLS0t
LS0rCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8MiB4IERvd258ICB8VGltZS0g
ICAgIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICstPnxzYW1wbGluZ3wtPnxDb3Jy
ZWxhdG9yfCAgICAgfAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgfCAgICAgICAg
fCAgfCAgICAgICAgICB8ICAgICB8NAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
Ky0tLS0tLS0tKyAgKy0tLS0tLS0tLS0rICAgIFwvCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgICAgICAgICAgICAgICAgICB8IDIgICAgKy0tLS0tLS0rCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICB8ICArLS0+fFNwZWVjaCB8NQor
ICAgICstLS0tLS0tLS0rICAgICstLS0tLS0tLSsgfCAgICAgICAgICAgICAgICAgICBcLyAgfCAg
IHxUeXBlICAgfC0+CisgICAgfExQQyAgICAgIHwgICAgfERvd24gICAgfCB8ICAgICAgICAgICAg
ICArLS0tLS0tLS0tLSsgfCAgICAgICB8CisgKy0+fEFuYWx5c2lzIHwgKy0+fHNhbXBsZSAgfC0r
LS0tLS0tLS0tLS0tLT58VGltZS0gICAgIHwgKy0tLS0tLS0rCisgfCAgfCAgICAgICAgIHwgfCAg
fHRvIDgga0h6fCAgICAgICAgICAgICAgICB8Q29ycmVsYXRvcnwtLS0tLS0tLS0tLT4KKyB8ICAr
LS0tLS0tLS0tKyB8ICArLS0tLS0tLS0rICAgICAgICAgICAgICAgIHxfX19fX19fX19ffCAgICAg
ICAgICA2CisgfCAgICAgICB8ICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8MworIHwgICAgICBcLyAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
LworIHwgICstLS0tLS0tLS0rIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0t
LS0rCisgfCAgfFdoaXRlbmluZ3wgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8VGltZS0g
ICAgIHwKKy0rLT58RmlsdGVyICAgfC0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPnxDb3Jy
ZWxhdG9yfC0tLS0tLS0tLS0tPgorMSAgIHwgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgICAgICAgICB8ICAgICAgICAgIDcKKyAgICArLS0tLS0tLS0tKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tKworCisxOiBJbnB1dCBzaWduYWwKKzI6
IExhZyBjYW5kaWRhdGVzIGZyb20gc3RhZ2UgMQorMzogTGFnIGNhbmRpZGF0ZXMgZnJvbSBzdGFn
ZSAyCis0OiBDb3JyZWxhdGlvbiB0aHJlc2hvbGQKKzU6IFZvaWNlZC91bnZvaWNlZCBmbGFnCis2
OiBQaXRjaCBjb3JyZWxhdGlvbgorNzogUGl0Y2ggbGFncworXV0+Cis8L2FydHdvcms+Cis8L2Zp
Z3VyZT4KK1RoZSBwaXRjaCBhbmFseXNpcyBmaW5kcyBhIGJpbmFyeSB2b2ljZWQvdW52b2ljZWQg
Y2xhc3NpZmljYXRpb24sIGFuZCwgZm9yCitmcmFtZXMgY2xhc3NpZmllZCBhcyB2b2ljZWQsIGZv
dXIgcGl0Y2ggbGFncyBwZXIgZnJhbWUgLSBvbmUgZm9yIGVhY2gKKzUmbmJzcDttcyBzdWJmcmFt
ZSAtIGFuZCBhIHBpdGNoIGNvcnJlbGF0aW9uIGluZGljYXRpbmcgdGhlIHBlcmlvZGljaXR5IG9m
Cit0aGUgc2lnbmFsLgorVGhlIGlucHV0IGlzIGZpcnN0IHdoaXRlbmVkIHVzaW5nIGEgTGluZWFy
IFByZWRpY3Rpb24gKExQKSB3aGl0ZW5pbmcgZmlsdGVyLAord2hlcmUgdGhlIGNvZWZmaWNpZW50
cyBhcmUgY29tcHV0ZWQgdGhyb3VnaCBzdGFuZGFyZCBMaW5lYXIgUHJlZGljdGlvbiBDb2RpbmcK
KyhMUEMpIGFuYWx5c2lzLiBUaGUgb3JkZXIgb2YgdGhlIHdoaXRlbmluZyBmaWx0ZXIgaXMgMTYg
Zm9yIGJlc3QgcmVzdWx0cywgYnV0CitpcyByZWR1Y2VkIHRvIDEyIGZvciBtZWRpdW0gY29tcGxl
eGl0eSBhbmQgOCBmb3IgbG93IGNvbXBsZXhpdHkgbW9kZXMuCitUaGUgd2hpdGVuZWQgc2lnbmFs
IGlzIGFuYWx5emVkIHRvIGZpbmQgcGl0Y2ggbGFncyBmb3Igd2hpY2ggdGhlIHRpbWUKK2NvcnJl
bGF0aW9uIGlzIGhpZ2guCitUaGUgYW5hbHlzaXMgY29uc2lzdHMgb2YgdGhyZWUgc3RhZ2VzIGZv
ciByZWR1Y2luZyB0aGUgY29tcGxleGl0eToKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKzx0Pklu
IHRoZSBmaXJzdCBzdGFnZSwgdGhlIHdoaXRlbmVkIHNpZ25hbCBpcyBkb3duc2FtcGxlZCB0byA0
Jm5ic3A7a0h6CisoZnJvbSA4Jm5ic3A7a0h6KSBhbmQgdGhlIGN1cnJlbnQgZnJhbWUgaXMgY29y
cmVsYXRlZCB0byBhIHNpZ25hbCBkZWxheWVkCitieSBhIHJhbmdlIG9mIGxhZ3MsIHN0YXJ0aW5n
IGZyb20gYSBzaG9ydGVzdCBsYWcgY29ycmVzcG9uZGluZyB0bworNTAwJm5ic3A7SHosIHRvIGEg
bG9uZ2VzdCBsYWcgY29ycmVzcG9uZGluZyB0byA1NiZuYnNwO0h6LjwvdD4KKworPHQ+CitUaGUg
c2Vjb25kIHN0YWdlIG9wZXJhdGVzIG9uIGFuIDgmbmJzcDtrSHogc2lnbmFsIChkb3duc2FtcGxl
ZCBmcm9tIDEyLCAxNiwKK29yIDI0Jm5ic3A7a0h6KSBhbmQgbWVhc3VyZXMgdGltZSBjb3JyZWxh
dGlvbnMgb25seSBuZWFyIHRoZSBsYWdzCitjb3JyZXNwb25kaW5nIHRvIHRob3NlIHRoYXQgaGFk
IHN1ZmZpY2llbnRseSBoaWdoIGNvcnJlbGF0aW9ucyBpbiB0aGUgZmlyc3QKK3N0YWdlLiBUaGUg
cmVzdWx0aW5nIGNvcnJlbGF0aW9ucyBhcmUgYWRqdXN0ZWQgZm9yIGEgc21hbGwgYmlhcyB0b3dh
cmRzCitzaG9ydCBsYWdzIHRvIGF2b2lkIGVuZGluZyB1cCB3aXRoIGEgbXVsdGlwbGUgb2YgdGhl
IHRydWUgcGl0Y2ggbGFnLgorVGhlIGhpZ2hlc3QgYWRqdXN0ZWQgY29ycmVsYXRpb24gaXMgY29t
cGFyZWQgdG8gYSB0aHJlc2hvbGQgZGVwZW5kaW5nIG9uOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMi
PgorPHQ+CitXaGV0aGVyIHRoZSBwcmV2aW91cyBmcmFtZSB3YXMgY2xhc3NpZmllZCBhcyB2b2lj
ZWQKKzwvdD4KKzx0PgorVGhlIHNwZWVjaCBhY3Rpdml0eSBsZXZlbAorPC90PgorPHQ+CitUaGUg
c3BlY3RyYWwgdGlsdC4KKzwvdD4KKzwvbGlzdD4KK0lmIHRoZSB0aHJlc2hvbGQgaXMgZXhjZWVk
ZWQsIHRoZSBjdXJyZW50IGZyYW1lIGlzIGNsYXNzaWZpZWQgYXMgdm9pY2VkIGFuZAordGhlIGxh
ZyB3aXRoIHRoZSBoaWdoZXN0IGFkanVzdGVkIGNvcnJlbGF0aW9uIGlzIHN0b3JlZCBmb3IgYSBm
aW5hbCBwaXRjaAorYW5hbHlzaXMgb2YgdGhlIGhpZ2hlc3QgcHJlY2lzaW9uIGluIHRoZSB0aGly
ZCBzdGFnZS4KKzwvdD4KKzx0PgorVGhlIGxhc3Qgc3RhZ2Ugb3BlcmF0ZXMgZGlyZWN0bHkgb24g
dGhlIHdoaXRlbmVkIGlucHV0IHNpZ25hbCB0byBjb21wdXRlIHRpbWUKK2NvcnJlbGF0aW9ucyBm
b3IgZWFjaCBvZiB0aGUgZm91ciBzdWJmcmFtZXMgaW5kZXBlbmRlbnRseSBpbiBhIG5hcnJvdyBy
YW5nZQorYXJvdW5kIHRoZSBsYWcgd2l0aCBoaWdoZXN0IGNvcnJlbGF0aW9uIGZyb20gdGhlIHNl
Y29uZCBzdGFnZS4KKzwvdD4KKzwvbGlzdD4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
dGl0bGU9J05vaXNlIFNoYXBpbmcgQW5hbHlzaXMnIGFuY2hvcj0nbm9pc2Vfc2hhcGluZ19hbmFs
eXNpc19vdmVydmlld19zZWN0aW9uJz4KKzx0PgorVGhlIG5vaXNlIHNoYXBpbmcgYW5hbHlzaXMg
ZmluZHMgZ2FpbnMgYW5kIGZpbHRlciBjb2VmZmljaWVudHMgdXNlZCBpbiB0aGUKK3ByZWZpbHRl
ciBhbmQgbm9pc2Ugc2hhcGluZyBxdWFudGl6ZXIuIFRoZXNlIHBhcmFtZXRlcnMgYXJlIGNob3Nl
biBzdWNoIHRoYXQKK3RoZXkgd2lsbCBmdWxmaWxsIHNldmVyYWwgcmVxdWlyZW1lbnRzOgorPGxp
c3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitCYWxhbmNpbmcgcXVhbnRpemF0aW9uIG5vaXNlIGFu
ZCBiaXRyYXRlLgorVGhlIHF1YW50aXphdGlvbiBnYWlucyBkZXRlcm1pbmUgdGhlIHN0ZXAgc2l6
ZSBiZXR3ZWVuIHJlY29uc3RydWN0aW9uIGxldmVscworb2YgdGhlIGV4Y2l0YXRpb24gc2lnbmFs
LiBUaGVyZWZvcmUsIGluY3JlYXNpbmcgdGhlIHF1YW50aXphdGlvbiBnYWluCithbXBsaWZpZXMg
cXVhbnRpemF0aW9uIG5vaXNlLCBidXQgYWxzbyByZWR1Y2VzIHRoZSBiaXRyYXRlIGJ5IGxvd2Vy
aW5nCit0aGUgZW50cm9weSBvZiB0aGUgcXVhbnRpemF0aW9uIGluZGljZXMuCis8L3Q+Cis8dD4K
K1NwZWN0cmFsIHNoYXBpbmcgb2YgdGhlIHF1YW50aXphdGlvbiBub2lzZTsgdGhlIG5vaXNlIHNo
YXBpbmcgcXVhbnRpemVyIGlzCitjYXBhYmxlIG9mIHJlZHVjaW5nIHF1YW50aXphdGlvbiBub2lz
ZSBpbiBzb21lIHBhcnRzIG9mIHRoZSBzcGVjdHJ1bSBhdCB0aGUKK2Nvc3Qgb2YgaW5jcmVhc2Vk
IG5vaXNlIGluIG90aGVyIHBhcnRzIHdpdGhvdXQgc3Vic3RhbnRpYWxseSBjaGFuZ2luZyB0aGUK
K2JpdHJhdGUuCitCeSBzaGFwaW5nIHRoZSBub2lzZSBzdWNoIHRoYXQgaXQgZm9sbG93cyB0aGUg
c2lnbmFsIHNwZWN0cnVtLCBpdCBiZWNvbWVzCitsZXNzIGF1ZGlibGUuIEluIHByYWN0aWNlLCBi
ZXN0IHJlc3VsdHMgYXJlIG9idGFpbmVkIGJ5IG1ha2luZyB0aGUgc2hhcGUKK29mIHRoZSBub2lz
ZSBzcGVjdHJ1bSBzbGlnaHRseSBmbGF0dGVyIHRoYW4gdGhlIHNpZ25hbCBzcGVjdHJ1bS4KKzwv
dD4KKzx0PgorRGUtZW1waGFzaXppbmcgc3BlY3RyYWwgdmFsbGV5czsgYnkgdXNpbmcgZGlmZmVy
ZW50IGNvZWZmaWNpZW50cyBpbiB0aGUKK2FuYWx5c2lzIGFuZCBzeW50aGVzaXMgcGFydCBvZiB0
aGUgcHJlZmlsdGVyIGFuZCBub2lzZSBzaGFwaW5nIHF1YW50aXplciwKK3RoZSBsZXZlbHMgb2Yg
dGhlIHNwZWN0cmFsIHZhbGxleXMgY2FuIGJlIGRlY3JlYXNlZCByZWxhdGl2ZSB0byB0aGUgbGV2
ZWxzCitvZiB0aGUgc3BlY3RyYWwgcGVha3Mgc3VjaCBhcyBzcGVlY2ggZm9ybWFudHMgYW5kIGhh
cm1vbmljcy4KK1RoaXMgcmVkdWNlcyB0aGUgZW50cm9weSBvZiB0aGUgc2lnbmFsLCB3aGljaCBp
cyB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZQorY29kZWQgc2lnbmFsIGFuZCB0aGUgcXVhbnRp
emF0aW9uIG5vaXNlLCB0aHVzIGxvd2VyaW5nIHRoZSBiaXRyYXRlLgorPC90PgorPHQ+CitNYXRj
aGluZyB0aGUgbGV2ZWxzIG9mIHRoZSBkZWNvZGVkIHNwZWVjaCBmb3JtYW50cyB0byB0aGUgbGV2
ZWxzIG9mIHRoZQorb3JpZ2luYWwgc3BlZWNoIGZvcm1hbnRzOyBhbiBhZGp1c3RtZW50IGdhaW4g
YW5kIGEgZmlyc3Qgb3JkZXIgdGlsdAorY29lZmZpY2llbnQgYXJlIGNvbXB1dGVkIHRvIGNvbXBl
bnNhdGUgZm9yIHRoZSBlZmZlY3Qgb2YgdGhlIG5vaXNlCitzaGFwaW5nIHF1YW50aXphdGlvbiBv
biB0aGUgbGV2ZWwgYW5kIHNwZWN0cmFsIHRpbHQuCis8L3Q+Cis8L2xpc3Q+Cis8L3Q+Cis8dD4K
KzxmaWd1cmUgYWxpZ249ImNlbnRlciIgYW5jaG9yPSJub2lzZV9zaGFwZV9hbmFseXNpc19zcGVj
dHJhX2ZpZ3VyZSIKKyB0aXRsZT0iTm9pc2Ugc2hhcGluZyBhbmQgc3BlY3RyYWwgZGUtZW1waGFz
aXMgaWxsdXN0cmF0aW9uIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisg
IC8gXCAgIF9fXworICAgfCAgIC8vIFxcCisgICB8ICAvLyAgIFxcICAgICBfX19fCisgICB8Xy8v
ICAgICBcXF9fXy8vICBcXCAgICAgICAgIF9fX18KKyAgIHwgLyAgX19fICBcICAgLyAgICBcXCAg
ICAgICAvLyAgXFwKKyBQIHwvICAvICAgXCAgXF8vICAgICAgXFxfX19fXy8vICAgIFxcCisgbyB8
ICAvICAgICBcICAgICBfX19fICBcICAgICAvICAgICAgXFwKKyB3IHwgLyAgICAgICBcX19fLyAg
ICBcICBcX19fLyAgX19fXyAgXFxfX18gMQorIGUgfC8gICAgICAgICAgICAgICAgICBcICAgICAg
IC8gICAgXCAgXAorIHIgfCAgICAgICAgICAgICAgICAgICAgXF9fX19fLyAgICAgIFwgIFxfXyAy
CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgIHwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxfX18gMworICAgfAorICAgKy0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0+CisgICAgICAgICAgICAgICAgICAgIEZyZXF1ZW5j
eQorCisxOiBJbnB1dCBzaWduYWwgc3BlY3RydW0KKzI6IERlLWVtcGhhc2l6ZWQgYW5kIGxldmVs
IG1hdGNoZWQgc3BlY3RydW0KKzM6IFF1YW50aXphdGlvbiBub2lzZSBzcGVjdHJ1bQorXV0+Cis8
L2FydHdvcms+Cis8L2ZpZ3VyZT4KKzx4cmVmIHRhcmdldD0nbm9pc2Vfc2hhcGVfYW5hbHlzaXNf
c3BlY3RyYV9maWd1cmUnIC8+IHNob3dzIGFuIGV4YW1wbGUgb2YgYW4KK2lucHV0IHNpZ25hbCBz
cGVjdHJ1bSAoMSkuCitBZnRlciBkZS1lbXBoYXNpcyBhbmQgbGV2ZWwgbWF0Y2hpbmcsIHRoZSBz
cGVjdHJ1bSBoYXMgZGVlcGVyIHZhbGxleXMgKDIpLgorVGhlIHF1YW50aXphdGlvbiBub2lzZSBz
cGVjdHJ1bSAoMykgbW9yZSBvciBsZXNzIGZvbGxvd3MgdGhlIGlucHV0IHNpZ25hbAorc3BlY3Ry
dW0sIHdoaWxlIGhhdmluZyBzbGlnaHRseSBsZXNzIHByb25vdW5jZWQgcGVha3MuCitUaGUgZW50
cm9weSwgd2hpY2ggcHJvdmlkZXMgYSBsb3dlciBib3VuZCBvbiB0aGUgYml0cmF0ZSBmb3IgZW5j
b2RpbmcgdGhlCitleGNpdGF0aW9uIHNpZ25hbCwgaXMgcHJvcG9ydGlvbmFsIHRvIHRoZSBhcmVh
IGJldHdlZW4gdGhlIGRlLWVtcGhhc2l6ZWQKK3NwZWN0cnVtICgyKSBhbmQgdGhlIHF1YW50aXph
dGlvbiBub2lzZSBzcGVjdHJ1bSAoMykuIFdpdGhvdXQgZGUtZW1waGFzaXMsCit0aGUgZW50cm9w
eSBpcyBwcm9wb3J0aW9uYWwgdG8gdGhlIGFyZWEgYmV0d2VlbiBpbnB1dCBzcGVjdHJ1bSAoMSkg
YW5kCitxdWFudGl6YXRpb24gbm9pc2UgKDMpIC0gY2xlYXJseSBoaWdoZXIuCis8L3Q+CisKKzx0
PgorVGhlIHRyYW5zZm9ybWF0aW9uIGZyb20gaW5wdXQgc2lnbmFsIHRvIGRlLWVtcGhhc2l6ZWQg
c2lnbmFsIGNhbiBiZQorZGVzY3JpYmVkIGFzIGEgZmlsdGVyaW5nIG9wZXJhdGlvbiB3aXRoIGEg
ZmlsdGVyCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
Cis8IVtDREFUQVsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xICAgIFdhbmEoeikKK0go
eikgPSBHICogKCAxIC0gY190aWx0ICogeiAgKSAqIC0tLS0tLS0KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFdzeW4oeiksCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgoraGF2
aW5nIGFuIGFkanVzdG1lbnQgZ2FpbiBHLCBhIGZpcnN0IG9yZGVyIHRpbHQgYWRqdXN0bWVudCBm
aWx0ZXIgd2l0aAordGlsdCBjb2VmZmljaWVudCBjX3RpbHQsIGFuZCB3aGVyZQorPGZpZ3VyZSBh
bGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCisgICAg
ICAgICAgICAgICAxNiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkCisgICAgICAgICAgICAg
ICBfXyAgICAgICAgICAgICAtayAgICAgICAgLUwgIF9fICAgICAgICAgICAgLWsKK1dhbmEoeikg
PSAoMSAtIFwgKGFfYW5hKGspICogeiAgKSooMSAtIHogICogXCBiX2FuYShrKSAqIHogICksCisg
ICAgICAgICAgICAgICAvXyAgICAgICAgICAgICAgICAgICAgICAgICAgIC9fCisgICAgICAgICAg
ICAgICBrPTEgICAgICAgICAgICAgICAgICAgICAgICAgIGs9LWQKK11dPgorPC9hcnR3b3JrPgor
PC9maWd1cmU+CitpcyB0aGUgYW5hbHlzaXMgcGFydCBvZiB0aGUgZGUtZW1waGFzaXMgZmlsdGVy
LCBjb25zaXN0aW5nIG9mIHRoZSBzaG9ydC10ZXJtCitzaGFwaW5nIGZpbHRlciB3aXRoIGNvZWZm
aWNpZW50cyBhX2FuYShrKSwgYW5kIHRoZSBsb25nLXRlcm0gc2hhcGluZyBmaWx0ZXIKK3dpdGgg
Y29lZmZpY2llbnRzIGJfYW5hKGspIGFuZCBwaXRjaCBsYWcgTC4KK1RoZSBwYXJhbWV0ZXIgZCBk
ZXRlcm1pbmVzIHRoZSBudW1iZXIgb2YgbG9uZy10ZXJtIHNoYXBpbmcgZmlsdGVyIHRhcHMuCis8
L3Q+CisKKzx0PgorU2ltaWxhcmx5LCBidXQgd2l0aG91dCB0aGUgdGlsdCBhZGp1c3RtZW50LCB0
aGUgc3ludGhlc2lzIHBhcnQgY2FuIGJlIHdyaXR0ZW4gYXMKKzxmaWd1cmUgYWxpZ249ImNlbnRl
ciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKzwhW0NEQVRBWworICAgICAgICAgICAgICAg
MTYgICAgICAgICAgICAgICAgICAgICAgICAgICAgZAorICAgICAgICAgICAgICAgX18gICAgICAg
ICAgICAgLWsgICAgICAgIC1MICBfXyAgICAgICAgICAgIC1rCitXc3luKHopID0gKDEgLSBcIChh
X3N5bihrKSAqIHogICkqKDEgLSB6ICAqIFwgYl9zeW4oaykgKiB6ICApLgorICAgICAgICAgICAg
ICAgL18gICAgICAgICAgICAgICAgICAgICAgICAgICAvXworICAgICAgICAgICAgICAgaz0xICAg
ICAgICAgICAgICAgICAgICAgICAgICBrPS1kCisgICAgICAgICAgICBdXT4KKzwvYXJ0d29yaz4K
KzwvZmlndXJlPgorPC90PgorPHQ+CitBbGwgbm9pc2Ugc2hhcGluZyBwYXJhbWV0ZXJzIGFyZSBj
b21wdXRlZCBhbmQgYXBwbGllZCBwZXIgc3ViZnJhbWUgb2YgNSZuYnNwO21zLgorRmlyc3QsIGFu
IExQQyBhbmFseXNpcyBpcyBwZXJmb3JtZWQgb24gYSB3aW5kb3dlZCBzaWduYWwgYmxvY2sgb2Yg
MTUmbmJzcDttcy4KK1RoZSBzaWduYWwgYmxvY2sgaGFzIGEgbG9vay1haGVhZCBvZiA1Jm5ic3A7
bXMgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgc3ViZnJhbWUsCithbmQgdGhlIHdpbmRvdyBpcyBh
biBhc3ltbWV0cmljIHNpbmUgd2luZG93LiBUaGUgTFBDIGFuYWx5c2lzIGlzIGRvbmUgd2l0aCB0
aGUKK2F1dG9jb3JyZWxhdGlvbiBtZXRob2QsIHdpdGggYW4gb3JkZXIgb2YgYmV0d2VlbiA4LCBp
biBsb3dlc3QtY29tcGxleGl0eSBtb2RlLAorYW5kIDE2LCBmb3IgYmVzdCBxdWFsaXR5LgorPC90
PgorPHQ+CitPcHRpb25hbGx5IHRoZSBMUEMgYW5hbHlzaXMgYW5kIG5vaXNlIHNoYXBpbmcgZmls
dGVycyBhcmUgd2FycGVkIGJ5IHJlcGxhY2luZwordGhlIGRlbGF5IGVsZW1lbnRzIGJ5IGZpcnN0
LW9yZGVyIGFsbHBhc3MgZmlsdGVycy4KK1RoaXMgaW5jcmVhc2VzIHRoZSBmcmVxdWVuY3kgcmVz
b2x1dGlvbiBhdCBsb3cgZnJlcXVlbmNpZXMgYW5kIHJlZHVjZXMgaXQgYXQKK2hpZ2ggb25lcywg
d2hpY2ggYmV0dGVyIG1hdGNoZXMgdGhlIGh1bWFuIGF1ZGl0b3J5IHN5c3RlbSBhbmQgaW1wcm92
ZXMKK3F1YWxpdHkuCitUaGUgd2FycGVkIGFuYWx5c2lzIGFuZCBmaWx0ZXJpbmcgY29tZXMgYXQg
YSBjb3N0IGluIGNvbXBsZXhpdHkKK2FuZCBpcyB0aGVyZWZvcmUgb25seSBkb25lIGluIGhpZ2hl
ciBjb21wbGV4aXR5IG1vZGVzLgorPC90PgorPHQ+CitUaGUgcXVhbnRpemF0aW9uIGdhaW4gaXMg
Zm91bmQgYnkgdGFraW5nIHRoZSBzcXVhcmUgcm9vdCBvZiB0aGUgcmVzaWR1YWwgZW5lcmd5Citm
cm9tIHRoZSBMUEMgYW5hbHlzaXMgYW5kIG11bHRpcGx5aW5nIGl0IGJ5IGEgdmFsdWUgaW52ZXJz
ZWx5IHByb3BvcnRpb25hbAordG8gdGhlIGNvZGluZyBxdWFsaXR5IGNvbnRyb2wgcGFyYW1ldGVy
IGFuZCB0aGUgcGl0Y2ggY29ycmVsYXRpb24uCis8L3Q+Cis8dD4KK05leHQgdGhlIHR3byBzZXRz
IG9mIHNob3J0LXRlcm0gbm9pc2Ugc2hhcGluZyBjb2VmZmljaWVudHMgYV9hbmEoaykgYW5kCith
X3N5bihrKSBhcmUgb2J0YWluZWQgYnkgYXBwbHlpbmcgZGlmZmVyZW50IGFtb3VudHMgb2YgYmFu
ZHdpZHRoIGV4cGFuc2lvbiB0byB0aGUKK2NvZWZmaWNpZW50cyBmb3VuZCBpbiB0aGUgTFBDIGFu
YWx5c2lzLgorVGhpcyBiYW5kd2lkdGggZXhwYW5zaW9uIG1vdmVzIHRoZSByb290cyBvZiB0aGUg
TFBDIHBvbHlub21pYWwgdG93YXJkcyB0aGUKK29yaWdpbiwgdXNpbmcgdGhlIGZvcm11bGFzCis8
ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+Cis8IVtDREFU
QVsKKyAgICAgICAgICAgICAgICAgICAgICBrCisgYV9hbmEoaykgPSBhKGspKmdfYW5hICwgYW5k
CisKKyAgICAgICAgICAgICAgICAgICAgICBrCisgYV9zeW4oaykgPSBhKGspKmdfc3luICwKK11d
PgorPC9hcnR3b3JrPgorPC9maWd1cmU+Cit3aGVyZSBhKGspIGlzIHRoZSBrJ3RoIExQQyBjb2Vm
ZmljaWVudCwgYW5kIHRoZSBiYW5kd2lkdGggZXhwYW5zaW9uIGZhY3RvcnMKK2dfYW5hIGFuZCBn
X3N5biBhcmUgY2FsY3VsYXRlZCBhcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3Jr
IGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFbCitnX2FuYSA9IDAuOTUgLSAwLjAxKkMsIGFuZAor
CitnX3N5biA9IDAuOTUgKyAwLjAxKkMsCitdXT4KKzwvYXJ0d29yaz4KKzwvZmlndXJlPgord2hl
cmUgQyBpcyB0aGUgY29kaW5nIHF1YWxpdHkgY29udHJvbCBwYXJhbWV0ZXIgYmV0d2VlbiAwIGFu
ZCAxLgorQXBwbHlpbmcgbW9yZSBiYW5kd2lkdGggZXhwYW5zaW9uIHRvIHRoZSBhbmFseXNpcyBw
YXJ0IHRoYW4gdG8gdGhlIHN5bnRoZXNpcworcGFydCBnaXZlcyB0aGUgZGVzaXJlZCBkZS1lbXBo
YXNpcyBvZiBzcGVjdHJhbCB2YWxsZXlzIGluIGJldHdlZW4gZm9ybWFudHMuCis8L3Q+CisKKzx0
PgorVGhlIGxvbmctdGVybSBzaGFwaW5nIGlzIGFwcGxpZWQgb25seSBkdXJpbmcgdm9pY2VkIGZy
YW1lcy4KK0l0IHVzZXMgdGhyZWUgZmlsdGVyIHRhcHMsIGRlc2NyaWJlZCBieQorPGZpZ3VyZSBh
bGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorICA8IVtDREFUQVsKK2Jf
YW5hID0gRl9hbmEgKiBbMC4yNSwgMC41LCAwLjI1XSwgYW5kCisKK2Jfc3luID0gRl9zeW4gKiBb
MC4yNSwgMC41LCAwLjI1XS4KK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+CitGb3IgdW52b2lj
ZWQgZnJhbWVzIHRoZXNlIGNvZWZmaWNpZW50cyBhcmUgc2V0IHRvIDAuIFRoZSBtdWx0aXBsaWNh
dGlvbiBmYWN0b3JzCitGX2FuYSBhbmQgRl9zeW4gYXJlIGNob3NlbiBiZXR3ZWVuIDAgYW5kIDEs
IGRlcGVuZGluZyBvbiB0aGUgY29kaW5nIHF1YWxpdHkKK2NvbnRyb2wgcGFyYW1ldGVyLCBhcyB3
ZWxsIGFzIHRoZSBjYWxjdWxhdGVkIHBpdGNoIGNvcnJlbGF0aW9uIGFuZCBzbW9vdGhlZAorc3Vi
YmFuZCBTTlIgb2YgdGhlIGxvd2VzdCBzdWJiYW5kLiBCeSBoYXZpbmcgRl9hbmEgbGVzcyB0aGFu
IEZfc3luLAordGhlIHBpdGNoIGhhcm1vbmljcyBhcmUgZW1waGFzaXplZCByZWxhdGl2ZSB0byB0
aGUgdmFsbGV5cyBpbiBiZXR3ZWVuIHRoZQoraGFybW9uaWNzLgorPC90PgorCis8dD4KK1RoZSB0
aWx0IGNvZWZmaWNpZW50IGNfdGlsdCBpcyBmb3IgdW52b2ljZWQgZnJhbWVzIGNob3NlbiBhcwor
PGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RB
VEFbCitjX3RpbHQgPSAwLjI1LAorXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3VyZT4KK2FuZCBhcwor
PGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RB
VEFbCitjX3RpbHQgPSAwLjI1ICsgMC4yNjI1ICogVgorXV0+Cis8L2FydHdvcms+Cis8L2ZpZ3Vy
ZT4KK2ZvciB2b2ljZWQgZnJhbWVzLCB3aGVyZSBWIGlzIHRoZSB2b2ljZSBhY3Rpdml0eSBsZXZl
bCBiZXR3ZWVuIDAgYW5kIDEuCis8L3Q+Cis8dD4KK1RoZSBhZGp1c3RtZW50IGdhaW4gRyBzZXJ2
ZXMgdG8gY29ycmVjdCBhbnkgbGV2ZWwgbWlzbWF0Y2ggYmV0d2VlbiB0aGUgb3JpZ2luYWwKK2Fu
ZCBkZWNvZGVkIHNpZ25hbHMgdGhhdCBtaWdodCBhcmlzZSBmcm9tIHRoZSBub2lzZSBzaGFwaW5n
IGFuZCBkZS1lbXBoYXNpcy4KK1RoaXMgZ2FpbiBpcyBjb21wdXRlZCBhcyB0aGUgcmF0aW8gb2Yg
dGhlIHByZWRpY3Rpb24gZ2FpbiBvZiB0aGUgc2hvcnQtdGVybQorYW5hbHlzaXMgYW5kIHN5bnRo
ZXNpcyBmaWx0ZXIgY29lZmZpY2llbnRzLiBUaGUgcHJlZGljdGlvbiBnYWluIG9mIGFuIExQQwor
c3ludGhlc2lzIGZpbHRlciBpcyB0aGUgc3F1YXJlIHJvb3Qgb2YgdGhlIG91dHB1dCBlbmVyZ3kg
d2hlbiB0aGUgZmlsdGVyIGlzCitleGNpdGVkIGJ5IGEgdW5pdC1lbmVyZ3kgaW1wdWxzZSBvbiB0
aGUgaW5wdXQuCitBbiBlZmZpY2llbnQgd2F5IHRvIGNvbXB1dGUgdGhlIHByZWRpY3Rpb24gZ2Fp
biBpcyBieSBmaXJzdCBjb21wdXRpbmcgdGhlCityZWZsZWN0aW9uIGNvZWZmaWNpZW50cyBmcm9t
IHRoZSBMUEMgY29lZmZpY2llbnRzIHRocm91Z2ggdGhlIHN0ZXAtZG93bgorYWxnb3JpdGhtLCBh
bmQgZXh0cmFjdGluZyB0aGUgcHJlZGljdGlvbiBnYWluIGZyb20gdGhlIHJlZmxlY3Rpb24gY29l
ZmZpY2llbnRzCithcworPGZpZ3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJj
ZW50ZXIiPgorPCFbQ0RBVEFbCisgICAgICAgICAgICAgICBLCisgICAgICAgICAgICAgIF9fXyAg
ICAgICAgICAyICAtMC41CisgcHJlZEdhaW4gPSAoIHwgfCAxIC0gKHJfaykgICkgICAgLAorICAg
ICAgICAgICAgICBrPTEKK11dPgorPC9hcnR3b3JrPgorPC9maWd1cmU+Cit3aGVyZSByX2sgaXMg
dGhlIGsndGggcmVmbGVjdGlvbiBjb2VmZmljaWVudC4KKzwvdD4KKworPHQ+CitJbml0aWFsIHZh
bHVlcyBmb3IgdGhlIHF1YW50aXphdGlvbiBnYWlucyBhcmUgY29tcHV0ZWQgYXMgdGhlIHNxdWFy
ZS1yb290IG9mCit0aGUgcmVzaWR1YWwgZW5lcmd5IG9mIHRoZSBMUEMgYW5hbHlzaXMsIGFkanVz
dGVkIGJ5IHRoZSBjb2RpbmcgcXVhbGl0eSBjb250cm9sCitwYXJhbWV0ZXIuCitUaGVzZSBxdWFu
dGl6YXRpb24gZ2FpbnMgYXJlIGxhdGVyIGFkanVzdGVkIGJhc2VkIG9uIHRoZSByZXN1bHRzIG9m
IHRoZQorcHJlZGljdGlvbiBhbmFseXNpcy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
dGl0bGU9J1ByZWRpY3Rpb24gQW5hbHlzaXMnIGFuY2hvcj0ncHJlZF9hbmFfb3ZlcnZpZXdfc2Vj
dGlvbic+Cis8dD4KK1RoZSBwcmVkaWN0aW9uIGFuYWx5c2lzIGlzIHBlcmZvcm1lZCBpbiBvbmUg
b2YgdHdvIHdheXMgZGVwZW5kaW5nIG9uIGhvdwordGhlIHBpdGNoIGVzdGltYXRvciBjbGFzc2lm
aWVkIHRoZSBmcmFtZS4KK1RoZSBwcm9jZXNzaW5nIGZvciB2b2ljZWQgYW5kIHVudm9pY2VkIHNw
ZWVjaCBpcyBkZXNjcmliZWQgaW4KKzx4cmVmIHRhcmdldD0ncHJlZF9hbmFfdm9pY2VkX292ZXJ2
aWV3X3NlY3Rpb24nIC8+IGFuZAorICA8eHJlZiB0YXJnZXQ9J3ByZWRfYW5hX3Vudm9pY2VkX292
ZXJ2aWV3X3NlY3Rpb24nIC8+LCByZXNwZWN0aXZlbHkuCisgIElucHV0cyB0byB0aGlzIGZ1bmN0
aW9uIGluY2x1ZGUgdGhlIHByZS13aGl0ZW5lZCBzaWduYWwgZnJvbSB0aGUKKyAgcGl0Y2ggZXN0
aW1hdG9yIChzZWUgPHhyZWYgdGFyZ2V0PSdwaXRjaF9lc3RpbWF0b3Jfb3ZlcnZpZXdfc2VjdGlv
bicvPikuCis8L3Q+CisKKzxzZWN0aW9uIHRpdGxlPSdWb2ljZWQgU3BlZWNoJyBhbmNob3I9J3By
ZWRfYW5hX3ZvaWNlZF9vdmVydmlld19zZWN0aW9uJz4KKzx0PgorICBGb3IgYSBmcmFtZSBvZiB2
b2ljZWQgc3BlZWNoIHRoZSBwaXRjaCBwdWxzZXMgd2lsbCByZW1haW4gZG9taW5hbnQgaW4gdGhl
CisgIHByZS13aGl0ZW5lZCBpbnB1dCBzaWduYWwuCisgIEZ1cnRoZXIgd2hpdGVuaW5nIGlzIGRl
c2lyYWJsZSBhcyBpdCBsZWFkcyB0byBoaWdoZXIgcXVhbGl0eSBhdCB0aGUgc2FtZQorICBhdmFp
bGFibGUgYml0cmF0ZS4KKyAgVG8gYWNoaWV2ZSB0aGlzLCBhIExvbmctVGVybSBQcmVkaWN0aW9u
IChMVFApIGFuYWx5c2lzIGlzIGNhcnJpZWQgb3V0IHRvCisgIGVzdGltYXRlIHRoZSBjb2VmZmlj
aWVudHMgb2YgYSBmaWZ0aC1vcmRlciBMVFAgZmlsdGVyIGZvciBlYWNoIG9mIGZvdXIKKyAgc3Vi
ZnJhbWVzLgorICBUaGUgTFRQIGNvZWZmaWNpZW50cyBhcmUgcXVhbnRpemVkIHVzaW5nIHRoZSBt
ZXRob2QgZGVzY3JpYmVkIGluCisgIDx4cmVmIHRhcmdldD0nbHRwX3F1YW50aXplcl9vdmVydmll
d19zZWN0aW9uJy8+LCBhbmQgdGhlIHF1YW50aXplZCBMVFAKKyAgY29lZmZpY2llbnRzIGFyZSB1
c2VkIHRvIGNvbXB1dGUgdGhlIExUUCByZXNpZHVhbCBzaWduYWwuCisgIFRoaXMgTFRQIHJlc2lk
dWFsIHNpZ25hbCBpcyB0aGUgaW5wdXQgdG8gYW4gTFBDIGFuYWx5c2lzIHdoZXJlIHRoZSBMUEMg
Y29lZmZpY2llbnRzIGFyZQorICBlc3RpbWF0ZWQgdXNpbmcgQnVyZydzIG1ldGhvZCA8eHJlZiB0
YXJnZXQ9IkJ1cmciLz4sIHN1Y2ggdGhhdCB0aGUgcmVzaWR1YWwgZW5lcmd5IGlzIG1pbmltaXpl
ZC4KKyAgVGhlIGVzdGltYXRlZCBMUEMgY29lZmZpY2llbnRzIGFyZSBjb252ZXJ0ZWQgdG8gYSBM
aW5lIFNwZWN0cmFsIEZyZXF1ZW5jeSAoTFNGKSB2ZWN0b3IKKyAgYW5kIHF1YW50aXplZCBhcyBk
ZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSdsc2ZfcXVhbnRpemVyX292ZXJ2aWV3X3NlY3Rpb24n
Lz4uCitBZnRlciBxdWFudGl6YXRpb24sIHRoZSBxdWFudGl6ZWQgTFNGIHZlY3RvciBpcyBjb252
ZXJ0ZWQgYmFjayB0byBMUEMKK2NvZWZmaWNpZW50cyB1c2luZyB0aGUgZnVsbCBwcm9jZWR1cmUg
aW4gPHhyZWYgdGFyZ2V0PSJzaWxrX25sc2ZzIi8+LgorQnkgdXNpbmcgcXVhbnRpemVkIExUUCBj
b2VmZmljaWVudHMgYW5kIExQQyBjb2VmZmljaWVudHMgZGVyaXZlZCBmcm9tIHRoZQorcXVhbnRp
emVkIExTRiBjb2VmZmljaWVudHMsIHRoZSBlbmNvZGVyIHJlbWFpbnMgZnVsbHkgc3luY2hyb25p
emVkIHdpdGggdGhlCitkZWNvZGVyLgorVGhlIHF1YW50aXplZCBMUEMgYW5kIExUUCBjb2VmZmlj
aWVudHMgYXJlIGFsc28gdXNlZCB0byBmaWx0ZXIgdGhlIGlucHV0CitzaWduYWwgYW5kIG1lYXN1
cmUgcmVzaWR1YWwgZW5lcmd5IGZvciBlYWNoIG9mIHRoZSBmb3VyIHN1YmZyYW1lcy4KKzwvdD4K
Kzwvc2VjdGlvbj4KKzxzZWN0aW9uIHRpdGxlPSdVbnZvaWNlZCBTcGVlY2gnIGFuY2hvcj0ncHJl
ZF9hbmFfdW52b2ljZWRfb3ZlcnZpZXdfc2VjdGlvbic+Cis8dD4KK0ZvciBhIHNwZWVjaCBzaWdu
YWwgdGhhdCBoYXMgYmVlbiBjbGFzc2lmaWVkIGFzIHVudm9pY2VkLCB0aGVyZSBpcyBubyBuZWVk
Citmb3IgTFRQIGZpbHRlcmluZywgYXMgaXQgaGFzIGFscmVhZHkgYmVlbiBkZXRlcm1pbmVkIHRo
YXQgdGhlIHByZS13aGl0ZW5lZAoraW5wdXQgc2lnbmFsIGlzIG5vdCBwZXJpb2RpYyBlbm91Z2gg
d2l0aGluIHRoZSBhbGxvd2VkIHBpdGNoIHBlcmlvZCByYW5nZQorZm9yIExUUCBhbmFseXNpcyB0
byBiZSB3b3J0aCB0aGUgY29zdCBpbiB0ZXJtcyBvZiBjb21wbGV4aXR5IGFuZCBiaXRyYXRlLgor
VGhlIHByZS13aGl0ZW5lZCBpbnB1dCBzaWduYWwgaXMgdGhlcmVmb3JlIGRpc2NhcmRlZCwgYW5k
IGluc3RlYWQgdGhlIGlucHV0CitzaWduYWwgaXMgdXNlZCBmb3IgTFBDIGFuYWx5c2lzIHVzaW5n
IEJ1cmcncyBtZXRob2QuCitUaGUgcmVzdWx0aW5nIExQQyBjb2VmZmljaWVudHMgYXJlIGNvbnZl
cnRlZCB0byBhbiBMU0YgdmVjdG9yIGFuZCBxdWFudGl6ZWQKK2FzIGRlc2NyaWJlZCBpbiB0aGUg
Zm9sbG93aW5nIHNlY3Rpb24uCitUaGV5IGFyZSB0aGVuIHRyYW5zZm9ybWVkIGJhY2sgdG8gb2J0
YWluIHF1YW50aXplZCBMUEMgY29lZmZpY2llbnRzLCB3aGljaAorYXJlIHRoZW4gdXNlZCB0byBm
aWx0ZXIgdGhlIGlucHV0IHNpZ25hbCBhbmQgbWVhc3VyZSByZXNpZHVhbCBlbmVyZ3kgZm9yCitl
YWNoIG9mIHRoZSBmb3VyIHN1YmZyYW1lcy4KKzwvdD4KKzxzZWN0aW9uIHRpdGxlPSJCdXJnJ3Mg
TWV0aG9kIj4KKzx0PgorVGhlIG1haW4gcHVycG9zZSBvZiBsaW5lYXIgcHJlZGljdGlvbiBpbiBT
SUxLIGlzIHRvIHJlZHVjZSB0aGUgYml0cmF0ZSBieQorbWluaW1pemluZyB0aGUgcmVzaWR1YWwg
ZW5lcmd5LgorQXQgbGVhc3QgYXQgaGlnaCBiaXRyYXRlcywgcGVyY2VwdHVhbCBhc3BlY3RzIGFy
ZSBoYW5kbGVkCitpbmRlcGVuZGVudGx5IGJ5IHRoZSBub2lzZSBzaGFwaW5nIGZpbHRlci4KK0J1
cmcncyBtZXRob2QgaXMgdXNlZCBiZWNhdXNlIGl0IHByb3ZpZGVzIGhpZ2hlciBwcmVkaWN0aW9u
IGdhaW4KK3RoYW4gdGhlIGF1dG9jb3JyZWxhdGlvbiBtZXRob2QgYW5kLCB1bmxpa2UgdGhlIGNv
dmFyaWFuY2UgbWV0aG9kLAorcHJvZHVjZXMgc3RhYmxlIGZpbHRlcnMgKGFzc3VtaW5nIG51bWVy
aWNhbCBlcnJvcnMgZG9uJ3Qgc3BvaWwKK3RoYXQpLiBTSUxLJ3MgaW1wbGVtZW50YXRpb24gb2Yg
QnVyZydzIG1ldGhvZCBpcyBhbHNvIGNvbXB1dGF0aW9uYWxseQorZmFzdGVyIHRoYW4gdGhlIGF1
dG9jb3ZhcmlhbmNlIG1ldGhvZC4KK1RoZSBpbXBsZW1lbnRhdGlvbiBvZiBCdXJnJ3MgbWV0aG9k
IGRpZmZlcnMgZnJvbSB0cmFkaXRpb25hbAoraW1wbGVtZW50YXRpb25zIGluIHR3byBhc3BlY3Rz
LgorVGhlIGZpcnN0IGRpZmZlcmVuY2UgaXMgdGhhdCBpdAorb3BlcmF0ZXMgb24gYXV0b2NvcnJl
bGF0aW9ucywgc2ltaWxhciB0byB0aGUgU2NodXIgYWxnb3JpdGhtIDx4cmVmIHRhcmdldD0iU2No
dXIiLz4sIGJ1dAord2l0aCBhIHNpbXBsZSB1cGRhdGUgdG8gdGhlIGF1dG9jb3JyZWxhdGlvbnMg
YWZ0ZXIgZmluZGluZyBlYWNoCityZWZsZWN0aW9uIGNvZWZmaWNpZW50IHRvIG1ha2UgdGhlIHJl
c3VsdCBpZGVudGljYWwgdG8gQnVyZydzIG1ldGhvZC4KK1RoaXMgYnJpbmdzIGRvd24gdGhlIGNv
bXBsZXhpdHkgb2YgQnVyZydzIG1ldGhvZCB0byBuZWFyIHRoYXQgb2YKK3RoZSBhdXRvY29ycmVs
YXRpb24gbWV0aG9kLgorVGhlIHNlY29uZCBkaWZmZXJlbmNlIGlzIHRoYXQgdGhlIHNpZ25hbCBp
biBlYWNoIHN1YmZyYW1lIGlzIHNjYWxlZAorYnkgdGhlIGludmVyc2Ugb2YgdGhlIHJlc2lkdWFs
IHF1YW50aXphdGlvbiBzdGVwIHNpemUuICBTdWJmcmFtZXMgd2l0aAorYSBzbWFsbCBxdWFudGl6
YXRpb24gc3RlcCBzaXplIHdpbGwgb24gYXZlcmFnZSBzcGVuZCBtb3JlIGJpdHMgZm9yIGEKK2dp
dmVuIGFtb3VudCBvZiByZXNpZHVhbCBlbmVyZ3kgdGhhbiBzdWJmcmFtZXMgd2l0aCBhIGxhcmdl
IHN0ZXAgc2l6ZS4KK1dpdGhvdXQgc2NhbGluZywgQnVyZydzIG1ldGhvZCBtaW5pbWl6ZXMgdGhl
IHRvdGFsIHJlc2lkdWFsIGVuZXJneSBpbgorYWxsIHN1YmZyYW1lcywgd2hpY2ggZG9lc24ndCBu
ZWNlc3NhcmlseSBtaW5pbWl6ZSB0aGUgdG90YWwgbnVtYmVyIG9mCitiaXRzIG5lZWRlZCBmb3Ig
Y29kaW5nIHRoZSBxdWFudGl6ZWQgcmVzaWR1YWwuICBUaGUgcmVzaWR1YWwgZW5lcmd5CitvZiB0
aGUgc2NhbGVkIHN1YmZyYW1lcyBpcyBhIGJldHRlciBtZWFzdXJlIGZvciB0aGF0IG51bWJlciBv
ZgorYml0cy4KKzwvdD4KKzwvc2VjdGlvbj4KKzwvc2VjdGlvbj4KKzwvc2VjdGlvbj4KKworPHNl
Y3Rpb24gdGl0bGU9J0xTRiBRdWFudGl6YXRpb24nIGFuY2hvcj0nbHNmX3F1YW50aXplcl9vdmVy
dmlld19zZWN0aW9uJz4KKzx0PgorVW5saWtlIG1hbnkgb3RoZXIgc3BlZWNoIGNvZGVjcywgU0lM
SyB1c2VzIHZhcmlhYmxlIGJpdHJhdGUgY29kaW5nCitmb3IgdGhlIExTRnMuCitUaGlzIGltcHJv
dmVzIHRoZSBhdmVyYWdlIHJhdGUtZGlzdG9ydGlvbiAoUi1EKSB0cmFkZW9mZiBhbmQgcmVkdWNl
cyBvdXRsaWVycy4KK1RoZSB2YXJpYWJsZSBiaXRyYXRlIGNvZGluZyBtaW5pbWl6ZXMgYSBsaW5l
YXIgY29tYmluYXRpb24gb2YgdGhlIHdlaWdodGVkCitxdWFudGl6YXRpb24gZXJyb3JzIGFuZCB0
aGUgYml0cmF0ZS4KK1RoZSB3ZWlnaHRzIGZvciB0aGUgcXVhbnRpemF0aW9uIGVycm9ycyBhcmUg
dGhlIEludmVyc2UKK0hhcm1vbmljIE1lYW4gV2VpZ2h0aW5nIChJSE1XKSBmdW5jdGlvbiBwcm9w
b3NlZCBieSBMYXJvaWEgZXQgYWwuCisoc2VlIDx4cmVmIHRhcmdldD0ibGFyb2lhLWljYXNzcCIg
Lz4pLgorVGhlc2Ugd2VpZ2h0cyBhcmUgcmVmZXJyZWQgdG8gaGVyZSBhcyBMYXJvaWEgd2VpZ2h0
cy4KKzwvdD4KKzx0PgorVGhlIExTRiBxdWFudGl6ZXIgY29uc2lzdHMgb2YgdHdvIHN0YWdlcy4K
K1RoZSBmaXJzdCBzdGFnZSBpcyBhbiAodW53ZWlnaHRlZCkgdmVjdG9yIHF1YW50aXplciAoVlEp
LCB3aXRoIGEKK2NvZGVib29rIHNpemUgb2YgMzIgdmVjdG9ycy4KK1RoZSBxdWFudGl6YXRpb24g
ZXJyb3JzIGZvciB0aGUgY29kZWJvb2sgdmVjdG9yIGFyZSBzb3J0ZWQsIGFuZAorZm9yIHRoZSBO
IGJlc3QgdmVjdG9ycyBhIHNlY29uZCBzdGFnZSBxdWFudGl6ZXIgaXMgcnVuLgorQnkgdmFyeWlu
ZyB0aGUgbnVtYmVyIE4gYSB0cmFkZW9mZiBpcyBtYWRlIGJldHdlZW4gUi1EIHBlcmZvcm1hbmNl
CithbmQgY29tcHV0YXRpb25hbCBlZmZpY2llbmN5LgorRm9yIGVhY2ggb2YgdGhlIE4gY29kZWJv
b2sgdmVjdG9ycyB0aGUgTGFyb2lhIHdlaWdodHMgY29ycmVzcG9uZGluZwordG8gdGhhdCB2ZWN0
b3IgKGFuZCBub3QgdG8gdGhlIGlucHV0IHZlY3RvcikgYXJlIGNhbGN1bGF0ZWQuCitUaGVuIHRo
ZSByZXNpZHVhbCBiZXR3ZWVuIHRoZSBpbnB1dCBMU0YgdmVjdG9yIGFuZCB0aGUgY29kZWJvb2sK
K3ZlY3RvciBpcyBzY2FsZWQgYnkgdGhlIHNxdWFyZSByb290cyBvZiB0aGVzZSBMYXJvaWEgd2Vp
Z2h0cy4KK1RoaXMgc2NhbGluZyBwYXJ0aWFsbHkgbm9ybWFsaXplcyBlcnJvciBzZW5zaXRpdml0
eSBmb3IgdGhlCityZXNpZHVhbCB2ZWN0b3IsIHNvIHRoYXQgYSB1bmlmb3JtIHF1YW50aXplciB3
aXRoIGZpeGVkCitzdGVwIHNpemVzIGNhbiBiZSB1c2VkIGluIHRoZSBzZWNvbmQgc3RhZ2Ugd2l0
aG91dCB0b28gbXVjaAorcGVyZm9ybWFuY2UgbG9zcy4KK0FuZCBieSBzY2FsaW5nIHdpdGggTGFy
b2lhIHdlaWdodHMgZGV0ZXJtaW5lZCBmcm9tIHRoZSBmaXJzdC1zdGFnZQorY29kZWJvb2sgdmVj
dG9yLCB0aGUgcHJvY2VzcyBjYW4gYmUgcmV2ZXJzZWQgaW4gdGhlIGRlY29kZXIuCis8L3Q+Cis8
dD4KK1RoZSBzZWNvbmQgc3RhZ2UgdXNlcyBwcmVkaWN0aXZlIGRlbGF5ZWQgZGVjaXNpb24gc2Nh
bGFyCitxdWFudGl6YXRpb24uCitUaGUgcXVhbnRpemF0aW9uIGVycm9yIGlzIHdlaWdodGVkIGJ5
IExhcm9pYSB3ZWlnaHRzIGRldGVybWluZWQKK2Zyb20gdGhlIExTRiBpbnB1dCB2ZWN0b3IuCitU
aGUgcHJlZGljdG9yIG11bHRpcGxpZXMgdGhlIHByZXZpb3VzIHF1YW50aXplZCByZXNpZHVhbCB2
YWx1ZQorYnkgYSBwcmVkaWN0aW9uIGNvZWZmaWNpZW50IHRoYXQgZGVwZW5kcyBvbiB0aGUgdmVj
dG9yIGluZGV4IGZyb20gdGhlCitmaXJzdCBzdGFnZSBWUSBhbmQgb24gdGhlIGxvY2F0aW9uIGlu
IHRoZSBMU0YgdmVjdG9yLgorVGhlIHByZWRpY3Rpb24gaXMgc3VidHJhY3RlZCBmcm9tIHRoZSBM
U0YgcmVzaWR1YWwgdmFsdWUgYmVmb3JlCitxdWFudGl6aW5nIHRoZSByZXN1bHQsIGFuZCBhZGRl
ZCBiYWNrIGFmdGVyd2FyZHMuCitUaGlzIHN1YnRyYWN0aW9uIGNhbiBiZSBpbnRlcnByZXRlZCBh
cyBzaGlmdGluZyB0aGUgcXVhbnRpemF0aW9uIGxldmVscworb2YgdGhlIHNjYWxhciBxdWFudGl6
ZXIsIGFuZCBhcyBhIHJlc3VsdCB0aGUgcXVhbnRpemF0aW9uIGVycm9yIG9mCitlYWNoIHZhbHVl
IGRlcGVuZHMgb24gdGhlIHF1YW50aXphdGlvbiBkZWNpc2lvbiBvZiB0aGUgcHJldmlvdXMgdmFs
dWUuCitUaGlzIGRlcGVuZGVuY3kgaXMgZXhwbG9pdGVkIGJ5IHRoZSBkZWxheWVkIGRlY2lzaW9u
IG1lY2hhbmlzbSB0bworc2VhcmNoIGZvciBhIHF1YW50aXphdGlvbiBzZXF1ZW5jeSB3aXRoIGJl
c3QgUi1EIHBlcmZvcm1hbmNlCit3aXRoIGEgVml0ZXJiaS1saWtlIGFsZ29yaXRobSA8eHJlZiB0
YXJnZXQ9IlZpdGVyYmkiLz4uCitUaGUgcXVhbnRpemVyIHByb2Nlc3NlcyB0aGUgcmVzaWR1YWwg
TFNGIHZlY3RvciBpbiByZXZlcnNlIG9yZGVyCisoaS5lLiwgaXQgc3RhcnRzIHdpdGggdGhlIGhp
Z2hlc3QgcmVzaWR1YWwgTFNGIHZhbHVlKS4KK1RoaXMgaXMgZG9uZSBiZWNhdXNlIHRoZSBwcmVk
aWN0aW9uIHdvcmtzIHNsaWdodGx5CitiZXR0ZXIgaW4gdGhlIHJldmVyc2UgZGlyZWN0aW9uLgor
PC90PgorPHQ+CitUaGUgcXVhbnRpemF0aW9uIGluZGV4IG9mIHRoZSBmaXJzdCBzdGFnZSBpcyBl
bnRyb3B5IGNvZGVkLgorVGhlIHF1YW50aXphdGlvbiBzZXF1ZW5jZSBmcm9tIHRoZSBzZWNvbmQg
c3RhZ2UgaXMgYWxzbyBlbnRyb3B5Citjb2RlZCwgd2hlcmUgZm9yIGVhY2ggZWxlbWVudCB0aGUg
cHJvYmFiaWxpdHkgdGFibGUgaXMgY2hvc2VuCitkZXBlbmRpbmcgb24gdGhlIHZlY3RvciBpbmRl
eCBmcm9tIHRoZSBmaXJzdCBzdGFnZSBhbmQgdGhlIGxvY2F0aW9uCitvZiB0aGF0IGVsZW1lbnQg
aW4gdGhlIExTRiB2ZWN0b3IuCis8L3Q+CisKKzxzZWN0aW9uIHRpdGxlPSdMU0YgU3RhYmlsaXph
dGlvbicgYW5jaG9yPSdsc2Zfc3RhYmlsaXplcl9vdmVydmlld19zZWN0aW9uJz4KKzx0PgorSWYg
dGhlIGlucHV0IGlzIHN0YWJsZSwgZmluZGluZyB0aGUgYmVzdCBjYW5kaWRhdGUgdXN1YWxseSBy
ZXN1bHRzIGluIGEKK3F1YW50aXplZCB2ZWN0b3IgdGhhdCBpcyBhbHNvIHN0YWJsZS4gQmVjYXVz
ZSBvZiB0aGUgdHdvLXN0YWdlIGFwcHJvYWNoLAoraG93ZXZlciwgaXQgaXMgcG9zc2libGUgdGhh
dCB0aGUgYmVzdCBxdWFudGl6YXRpb24gY2FuZGlkYXRlIGlzIHVuc3RhYmxlLgorVGhlIGVuY29k
ZXIgYXBwbGllcyB0aGUgc2FtZSBzdGFiaWxpemF0aW9uIHByb2NlZHVyZSBhcHBsaWVkIGJ5IHRo
ZSBkZWNvZGVyCisgKHNlZSA8eHJlZiB0YXJnZXQ9InNpbGtfbmxzZl9zdGFiaWxpemF0aW9uIi8+
IHRvIGVuc3VyZSB0aGUgTFNGIHBhcmFtZXRlcnMKKyBhcmUgd2l0aGluIHRoZWlyIHZhbGlkIHJh
bmdlLCBpbmNyZWFzaW5nbHkgc29ydGVkLCBhbmQgaGF2ZSBtaW5pbXVtCisgZGlzdGFuY2VzIGJl
dHdlZW4gZWFjaCBvdGhlciBhbmQgdGhlIGJvcmRlciB2YWx1ZXMuCis8L3Q+Cis8L3NlY3Rpb24+
Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIHRpdGxlPSdMVFAgUXVhbnRpemF0aW9uJyBhbmNob3I9
J2x0cF9xdWFudGl6ZXJfb3ZlcnZpZXdfc2VjdGlvbic+Cis8dD4KK0ZvciB2b2ljZWQgZnJhbWVz
LCB0aGUgcHJlZGljdGlvbiBhbmFseXNpcyBkZXNjcmliZWQgaW4KKzx4cmVmIHRhcmdldD0ncHJl
ZF9hbmFfdm9pY2VkX292ZXJ2aWV3X3NlY3Rpb24nIC8+IHJlc3VsdGVkIGluIGZvdXIgc2V0cwor
KG9uZSBzZXQgcGVyIHN1YmZyYW1lKSBvZiBmaXZlIExUUCBjb2VmZmljaWVudHMsIHBsdXMgZm91
ciB3ZWlnaHRpbmcgbWF0cmljZXMuCitUaGUgTFRQIGNvZWZmaWNpZW50cyBmb3IgZWFjaCBzdWJm
cmFtZSBhcmUgcXVhbnRpemVkIHVzaW5nIGVudHJvcHkgY29uc3RyYWluZWQKK3ZlY3RvciBxdWFu
dGl6YXRpb24uCitBIHRvdGFsIG9mIHRocmVlIHZlY3RvciBjb2RlYm9va3MgYXJlIGF2YWlsYWJs
ZSBmb3IgcXVhbnRpemF0aW9uLCB3aXRoCitkaWZmZXJlbnQgcmF0ZS1kaXN0b3J0aW9uIHRyYWRl
LW9mZnMuIFRoZSB0aHJlZSBjb2RlYm9va3MgaGF2ZSAxMCwgMjAsIGFuZAorNDAgdmVjdG9ycyBh
bmQgYXZlcmFnZSByYXRlcyBvZiBhYm91dCAzLCA0LCBhbmQgNSBiaXRzIHBlciB2ZWN0b3IsIHJl
c3BlY3RpdmVseS4KK0NvbnNlcXVlbnRseSwgdGhlIGZpcnN0IGNvZGVib29rIGhhcyBsYXJnZXIg
YXZlcmFnZSBxdWFudGl6YXRpb24gZGlzdG9ydGlvbiBhdAorYSBsb3dlciByYXRlLCB3aGVyZWFz
IHRoZSBsYXN0IGNvZGVib29rIGhhcyBzbWFsbGVyIGF2ZXJhZ2UgcXVhbnRpemF0aW9uCitkaXN0
b3J0aW9uIGF0IGEgaGlnaGVyIHJhdGUuCitHaXZlbiB0aGUgd2VpZ2h0aW5nIG1hdHJpeCBXX2x0
cCBhbmQgTFRQIHZlY3RvciBiLCB0aGUgd2VpZ2h0ZWQgcmF0ZS1kaXN0b3J0aW9uCittZWFzdXJl
IGZvciBhIGNvZGVib29rIHZlY3RvciBjYl9pIHdpdGggcmF0ZSByX2kgaXMgZ2l2ZSBieQorPGZp
Z3VyZSBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWduPSJjZW50ZXIiPgorPCFbQ0RBVEFb
CisgUkQgPSB1ICogKGIgLSBjYl9pKScgKiBXX2x0cCAqIChiIC0gY2JfaSkgKyByX2ksCitdXT4K
KzwvYXJ0d29yaz4KKzwvZmlndXJlPgord2hlcmUgdSBpcyBhIGZpeGVkLCBoZXVyaXN0aWNhbGx5
LWRldGVybWluZWQgcGFyYW1ldGVyIGJhbGFuY2luZyB0aGUgZGlzdG9ydGlvbgorYW5kIHJhdGUu
CitXaGljaCBjb2RlYm9vayBnaXZlcyB0aGUgYmVzdCBwZXJmb3JtYW5jZSBmb3IgYSBnaXZlbiBM
VFAgdmVjdG9yIGRlcGVuZHMgb24gdGhlCit3ZWlnaHRpbmcgbWF0cml4IGZvciB0aGF0IExUUCB2
ZWN0b3IuCitGb3IgZXhhbXBsZSwgZm9yIGEgbG93IHZhbHVlZCBXX2x0cCwgaXQgaXMgYWR2YW50
YWdlb3VzIHRvIHVzZSB0aGUgY29kZWJvb2sKK3dpdGggMTAgdmVjdG9ycyBhcyBpdCBoYXMgYSBs
b3dlciBhdmVyYWdlIHJhdGUuCitGb3IgYSBsYXJnZSBXX2x0cCwgb24gdGhlIG90aGVyIGhhbmQs
IGl0IGlzIG9mdGVuIGJldHRlciB0byB1c2UgdGhlIGNvZGVib29rCit3aXRoIDQwIHZlY3RvcnMs
IGFzIGl0IGlzIG1vcmUgbGlrZWx5IHRvIGNvbnRhaW4gdGhlIGJlc3QgY29kZWJvb2sgdmVjdG9y
LgorVGhlIHdlaWdodGluZyBtYXRyaXggV19sdHAgZGVwZW5kcyBtb3N0bHkgb24gdHdvIGFzcGVj
dHMgb2YgdGhlIGlucHV0IHNpZ25hbC4KK1RoZSBmaXJzdCBpcyB0aGUgcGVyaW9kaWNpdHkgb2Yg
dGhlIHNpZ25hbDsgdGhlIG1vcmUgcGVyaW9kaWMsIHRoZSBsYXJnZXIgV19sdHAuCitUaGUgc2Vj
b25kIGlzIHRoZSBjaGFuZ2UgaW4gc2lnbmFsIGVuZXJneSBpbiB0aGUgY3VycmVudCBzdWJmcmFt
ZSwgcmVsYXRpdmUgdG8KK3RoZSBzaWduYWwgb25lIHBpdGNoIGxhZyBlYXJsaWVyLgorQSBkZWNh
eWluZyBlbmVyZ3kgbGVhZHMgdG8gYSBsYXJnZXIgV19sdHAgdGhhbiBhbiBpbmNyZWFzaW5nIGVu
ZXJneS4KK0JvdGggYXNwZWN0cyBmbHVjdHVhdGUgcmVsYXRpdmVseSBzbG93bHksIHdoaWNoIGNh
dXNlcyB0aGUgV19sdHAgbWF0cmljZXMgZm9yCitkaWZmZXJlbnQgc3ViZnJhbWVzIG9mIG9uZSBm
cmFtZSBvZnRlbiB0byBiZSBzaW1pbGFyLgorQmVjYXVzZSBvZiB0aGlzLCBvbmUgb2YgdGhlIHRo
cmVlIGNvZGVib29rcyB0eXBpY2FsbHkgZ2l2ZXMgZ29vZCBwZXJmb3JtYW5jZQorZm9yIGFsbCBz
dWJmcmFtZXMsIGFuZCB0aGVyZWZvcmUgdGhlIGNvZGVib29rIHNlYXJjaCBmb3IgdGhlIHN1YmZy
YW1lIExUUAordmVjdG9ycyBpcyBjb25zdHJhaW5lZCB0byBvbmx5IGFsbG93IGNvZGVib29rIHZl
Y3RvcnMgdG8gYmUgY2hvc2VuIGZyb20gdGhlCitzYW1lIGNvZGVib29rLCByZXN1bHRpbmcgaW4g
YSByYXRlIHJlZHVjdGlvbi4KKzwvdD4KKworPHQ+CitUbyBmaW5kIHRoZSBiZXN0IGNvZGVib29r
LCBlYWNoIG9mIHRoZSB0aHJlZSB2ZWN0b3IgY29kZWJvb2tzIGlzCit1c2VkIHRvIHF1YW50aXpl
IGFsbCBzdWJmcmFtZSBMVFAgdmVjdG9ycyBhbmQgcHJvZHVjZSBhIGNvbWJpbmVkCit3ZWlnaHRl
ZCByYXRlLWRpc3RvcnRpb24gbWVhc3VyZSBmb3IgZWFjaCB2ZWN0b3IgY29kZWJvb2suCitUaGUg
dmVjdG9yIGNvZGVib29rIHdpdGggdGhlIGxvd2VzdCBjb21iaW5lZCByYXRlLWRpc3RvcnRpb24K
K292ZXIgYWxsIHN1YmZyYW1lcyBpcyBjaG9zZW4uIFRoZSBxdWFudGl6ZWQgTFRQIHZlY3RvcnMg
YXJlIHVzZWQKK2luIHRoZSBub2lzZSBzaGFwaW5nIHF1YW50aXplciwgYW5kIHRoZSBpbmRleCBv
ZiB0aGUgY29kZWJvb2sKK3BsdXMgdGhlIGZvdXIgaW5kaWNlcyBmb3IgdGhlIGZvdXIgc3ViZnJh
bWUgY29kZWJvb2sgdmVjdG9ycworYXJlIHBhc3NlZCBvbiB0byB0aGUgcmFuZ2UgZW5jb2Rlci4K
KzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9J1ByZWZpbHRlcic+Cis8dD4KK0lu
IHRoZSBwcmVmaWx0ZXIgdGhlIGlucHV0IHNpZ25hbCBpcyBmaWx0ZXJlZCB1c2luZyB0aGUgc3Bl
Y3RyYWwgdmFsbGV5CitkZS1lbXBoYXNpcyBmaWx0ZXIgY29lZmZpY2llbnRzIGZyb20gdGhlIG5v
aXNlIHNoYXBpbmcgYW5hbHlzaXMKKyhzZWUgPHhyZWYgdGFyZ2V0PSdub2lzZV9zaGFwaW5nX2Fu
YWx5c2lzX292ZXJ2aWV3X3NlY3Rpb24nLz4pLgorQnkgYXBwbHlpbmcgb25seSB0aGUgbm9pc2Ug
c2hhcGluZyBhbmFseXNpcyBmaWx0ZXIgdG8gdGhlIGlucHV0IHNpZ25hbCwKK2l0IHByb3ZpZGVz
IHRoZSBpbnB1dCB0byB0aGUgbm9pc2Ugc2hhcGluZyBxdWFudGl6ZXIuCis8L3Q+Cis8L3NlY3Rp
b24+CisKKzxzZWN0aW9uIHRpdGxlPSdOb2lzZSBTaGFwaW5nIFF1YW50aXplcic+Cis8dD4KK1Ro
ZSBub2lzZSBzaGFwaW5nIHF1YW50aXplciBpbmRlcGVuZGVudGx5IHNoYXBlcyB0aGUgc2lnbmFs
IGFuZCBjb2Rpbmcgbm9pc2UKK3NwZWN0cmEgdG8gb2J0YWluIGEgcGVyY2VwdHVhbGx5IGhpZ2hl
ciBxdWFsaXR5IGF0IHRoZSBzYW1lIGJpdHJhdGUuCis8L3Q+Cis8dD4KK1RoZSBwcmVmaWx0ZXIg
b3V0cHV0IHNpZ25hbCBpcyBtdWx0aXBsaWVkIHdpdGggYSBjb21wZW5zYXRpb24gZ2FpbiBHIGNv
bXB1dGVkCitpbiB0aGUgbm9pc2Ugc2hhcGluZyBhbmFseXNpcy4gVGhlbiB0aGUgb3V0cHV0IG9m
IGEgc3ludGhlc2lzIHNoYXBpbmcgZmlsdGVyCitpcyBhZGRlZCwgYW5kIHRoZSBvdXRwdXQgb2Yg
YSBwcmVkaWN0aW9uIGZpbHRlciBpcyBzdWJ0cmFjdGVkIHRvIGNyZWF0ZSBhCityZXNpZHVhbCBz
aWduYWwuCitUaGUgcmVzaWR1YWwgc2lnbmFsIGlzIG11bHRpcGxpZWQgYnkgdGhlIGludmVyc2Ug
cXVhbnRpemVkIHF1YW50aXphdGlvbiBnYWluCitmcm9tIHRoZSBub2lzZSBzaGFwaW5nIGFuYWx5
c2lzLCBhbmQgaW5wdXQgdG8gYSBzY2FsYXIgcXVhbnRpemVyLgorVGhlIHF1YW50aXphdGlvbiBp
bmRpY2VzIG9mIHRoZSBzY2FsYXIgcXVhbnRpemVyIHJlcHJlc2VudCBhIHNpZ25hbCBvZiBwdWxz
ZXMKK3RoYXQgaXMgaW5wdXQgdG8gdGhlIHB5cmFtaWQgcmFuZ2UgZW5jb2Rlci4KK1RoZSBzY2Fs
YXIgcXVhbnRpemVyIGFsc28gb3V0cHV0cyBhIHF1YW50aXphdGlvbiBzaWduYWwsIHdoaWNoIGlz
IG11bHRpcGxpZWQKK2J5IHRoZSBxdWFudGl6ZWQgcXVhbnRpemF0aW9uIGdhaW4gZnJvbSB0aGUg
bm9pc2Ugc2hhcGluZyBhbmFseXNpcyB0byBjcmVhdGUKK2FuIGV4Y2l0YXRpb24gc2lnbmFsLgor
VGhlIG91dHB1dCBvZiB0aGUgcHJlZGljdGlvbiBmaWx0ZXIgaXMgYWRkZWQgdG8gdGhlIGV4Y2l0
YXRpb24gc2lnbmFsIHRvIGZvcm0KK3RoZSBxdWFudGl6ZWQgb3V0cHV0IHNpZ25hbCB5KG4pLgor
VGhlIHF1YW50aXplZCBvdXRwdXQgc2lnbmFsIHkobikgaXMgaW5wdXQgdG8gdGhlIHN5bnRoZXNp
cyBzaGFwaW5nIGFuZAorcHJlZGljdGlvbiBmaWx0ZXJzLgorPC90PgorPHQ+CitPcHRpb25hbGx5
IHRoZSBub2lzZSBzaGFwaW5nIHF1YW50aXplciBvcGVyYXRlcyBpbiBhIGRlbGF5ZWQgZGVjaXNp
b24KK21vZGUuCitJbiB0aGlzIG1vZGUgaXQgdXNlcyBhIFZpdGVyYmkgYWxnb3JpdGhtIHRvIGtl
ZXAgdHJhY2sgb2YKK211bHRpcGxlIHJvdW5kaW5nIGNob2ljZXMgaW4gdGhlIHF1YW50aXplciBh
bmQgc2VsZWN0IHRoZSBiZXN0CitvbmUgYWZ0ZXIgYSBkZWxheSBvZiAzMiBzYW1wbGVzLiAgVGhp
cyBpbXByb3ZlcyB0aGUgcmF0ZS9kaXN0b3J0aW9uCitwZXJmb3JtYW5jZSBvZiB0aGUgcXVhbnRp
emVyLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0nQ29uc3RhbnQgQml0cmF0
ZSBNb2RlJz4KKzx0PgorICBTSUxLIHdhcyBkZXNpZ25lZCB0byBydW4gaW4gVmFyaWFibGUgQml0
cmF0ZSAoVkJSKSBtb2RlLiAgSG93ZXZlcgorICB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9u
IGFsc28gaGFzIGEgQ29uc3RhbnQgQml0cmF0ZSAoQ0JSKSBtb2RlCisgIGZvciBTSUxLLiAgSW4g
Q0JSIG1vZGUgU0lMSyB3aWxsIGF0dGVtcHQgdG8gZW5jb2RlIGVhY2ggcGFja2V0IHdpdGgKKyAg
bm8gbW9yZSB0aGFuIHRoZSBhbGxvd2VkIG51bWJlciBvZiBiaXRzLiAgVGhlIE9wdXMgd3JhcHBl
ciBjb2RlCisgIHRoZW4gcGFkcyB0aGUgYml0c3RyZWFtIGlmIGFueSB1bnVzZWQgYml0cyBhcmUg
bGVmdCBpbiBTSUxLIG1vZGUsIG9yCisgIGVuY29kZXMgdGhlIGhpZ2ggYmFuZCB3aXRoIHRoZSBy
ZW1haW5pbmcgbnVtYmVyIG9mIGJpdHMgaW4gSHlicmlkIG1vZGUuCisgIFRoZSBudW1iZXIgb2Yg
cGF5bG9hZCBiaXRzIGlzIGFkanVzdGVkIGJ5IGNoYW5naW5nCisgIHRoZSBxdWFudGl6YXRpb24g
Z2FpbnMgYW5kIHRoZSByYXRlL2Rpc3RvcnRpb24gdHJhZGVvZmYgaW4gdGhlIG5vaXNlCisgIHNo
YXBpbmcgcXVhbnRpemVyLCBpbiBhbiBpdGVyYXRpdmUgbG9vcAorICBhcm91bmQgdGhlIG5vaXNl
IHNoYXBpbmcgcXVhbnRpemVyIGFuZCBlbnRyb3B5IGNvZGluZy4KKyAgQ29tcGFyZWQgdG8gdGhl
IFNJTEsgVkJSIG1vZGUsIHRoZSBDQlIgbW9kZSBoYXMgbG93ZXIKKyAgYXVkaW8gcXVhbGl0eSBh
dCBhIGdpdmVuIGF2ZXJhZ2UgYml0cmF0ZSwgYW5kIGFsc28gaGFzIGhpZ2hlcgorICBjb21wdXRh
dGlvbmFsIGNvbXBsZXhpdHkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2VjdGlvbj4KKworPC9z
ZWN0aW9uPgorCisKKzxzZWN0aW9uIHRpdGxlPSJDRUxUIEVuY29kZXIiPgorPHQ+CitNb3N0IG9m
IHRoZSBhc3BlY3RzIG9mIHRoZSBDRUxUIGVuY29kZXIgY2FuIGJlIGRpcmVjdGx5IGRlcml2ZWQg
ZnJvbSB0aGUgZGVzY3JpcHRpb24KK29mIHRoZSBkZWNvZGVyLiBGb3IgZXhhbXBsZSwgdGhlIGZp
bHRlcnMgYW5kIHJvdGF0aW9ucyBpbiB0aGUgZW5jb2RlciBhcmUgc2ltcGx5IHRoZQoraW52ZXJz
ZSBvZiB0aGUgb3BlcmF0aW9uIHBlcmZvcm1lZCBieSB0aGUgZGVjb2Rlci4gU2ltaWxhcmx5LCB0
aGUgcXVhbnRpemVycyBnZW5lcmFsbHkKK29wdGltaXplIGZvciB0aGUgbWVhbiBzcXVhcmUgZXJy
b3IgKGJlY2F1c2Ugbm9pc2Ugc2hhcGluZyBpcyBwYXJ0IG9mIHRoZSBiaXQtc3RyZWFtIGl0c2Vs
ZiksCitzbyBubyBzcGVjaWFsIHNlYXJjaCBpcyByZXF1aXJlZC4gRm9yIHRoaXMgcmVhc29uLCBv
bmx5IHRoZSBsZXNzIHN0cmFpZ2h0Zm9yd2FyZCBhc3BlY3RzIG9mIHRoZQorZW5jb2RlciBhcmUg
ZGVzY3JpYmVkIGhlcmUuCis8L3Q+CisKKzxzZWN0aW9uIGFuY2hvcj0icGl0Y2gtcHJlZmlsdGVy
IiB0aXRsZT0iUGl0Y2ggUHJlZmlsdGVyIj4KKzx0PlRoZSBwaXRjaCBwcmVmaWx0ZXIgaXMgYXBw
bGllZCBhZnRlciB0aGUgcHJlLWVtcGhhc2lzLiBJdCBpcyBhcHBsaWVkCitpbiBzdWNoIGEgd2F5
IGFzIHRvIGJlIHRoZSBpbnZlcnNlIG9mIHRoZSBkZWNvZGVyJ3MgcG9zdC1maWx0ZXIuIFRoZSBt
YWluIG5vbi1vYnZpb3VzIGFzcGVjdCBvZiB0aGUKK3ByZWZpbHRlciBpcyB0aGUgc2VsZWN0aW9u
IG9mIHRoZSBwaXRjaCBwZXJpb2QuIFRoZSBwaXRjaCBzZWFyY2ggc2hvdWxkIGJlIG9wdGltaXpl
ZCBmb3IgdGhlCitmb2xsb3dpbmcgY3JpdGVyaWE6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8
dD5jb250aW51aXR5OiBpdCBpcyBpbXBvcnRhbnQgdGhhdCB0aGUgcGl0Y2ggcGVyaW9kCitkb2Vz
IG5vdCBjaGFuZ2UgYWJydXB0bHkgYmV0d2VlbiBmcmFtZXM7IGFuZDwvdD4KKzx0PmF2b2lkYW5j
ZSBvZiBwaXRjaCBtdWx0aXBsZXM6IHdoZW4gdGhlIHBlcmlvZCB1c2VkIGlzIGEgbXVsdGlwbGUg
b2YgdGhlIHJlYWwgcGVyaW9kCisobG93ZXIgZnJlcXVlbmN5IGZ1bmRhbWVudGFsKSwgdGhlIHBv
c3QtZmlsdGVyIGxvc2VzIG1vc3Qgb2YgaXRzIGFiaWxpdHkgdG8gcmVkdWNlIG5vaXNlPC90Pgor
PC9saXN0PgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9Im5vcm1hbGl6YXRp
b24iIHRpdGxlPSJCYW5kcyBhbmQgTm9ybWFsaXphdGlvbiI+Cis8dD4KK1RoZSBNRENUIG91dHB1
dCBpcyBkaXZpZGVkIGludG8gYmFuZHMgdGhhdCBhcmUgZGVzaWduZWQgdG8gbWF0Y2ggdGhlIGVh
cidzIGNyaXRpY2FsCitiYW5kcyBmb3IgdGhlIHNtYWxsZXN0ICgyLjUmbmJzcDttcykgZnJhbWUg
c2l6ZS4gVGhlIGxhcmdlciBmcmFtZSBzaXplcyB1c2UgaW50ZWdlcgorbXVsdGlwbGVzIG9mIHRo
ZSAyLjUmbmJzcDttcyBsYXlvdXQuIEZvciBlYWNoIGJhbmQsIHRoZSBlbmNvZGVyCitjb21wdXRl
cyB0aGUgZW5lcmd5IHRoYXQgd2lsbCBsYXRlciBiZSBlbmNvZGVkLiBFYWNoIGJhbmQgaXMgdGhl
biBub3JtYWxpemVkIGJ5IHRoZQorc3F1YXJlIHJvb3Qgb2YgdGhlIDxzcGFueCBzdHlsZT0ic3Ry
b25nIj51bnF1YW50aXplZDwvc3Bhbng+IGVuZXJneSwgc3VjaCB0aGF0IGVhY2ggYmFuZCBub3cg
Zm9ybXMgYSB1bml0IHZlY3RvciBYLgorVGhlIGVuZXJneSBhbmQgdGhlIG5vcm1hbGl6YXRpb24g
YXJlIGNvbXB1dGVkIGJ5IGNvbXB1dGVfYmFuZF9lbmVyZ2llcygpCithbmQgbm9ybWFsaXNlX2Jh
bmRzKCkgKGJhbmRzLmMpLCByZXNwZWN0aXZlbHkuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0
aW9uIGFuY2hvcj0iZW5lcmd5LXF1YW50aXphdGlvbiIgdGl0bGU9IkVuZXJneSBFbnZlbG9wZSBR
dWFudGl6YXRpb24iPgorCis8dD4KK0VuZXJneSBxdWFudGl6YXRpb24gKGJvdGggY29hcnNlIGFu
ZCBmaW5lKSBjYW4gYmUgZWFzaWx5IHVuZGVyc3Rvb2QgZnJvbSB0aGUgZGVjb2RpbmcgcHJvY2Vz
cy4KK0ZvciBhbGwgdXNlZnVsIGJpdHJhdGVzLCB0aGUgY29hcnNlIHF1YW50aXplciBhbHdheXMg
Y2hvb3NlcyB0aGUgcXVhbnRpemVkIGxvZyBlbmVyZ3kgdmFsdWUgdGhhdAorbWluaW1pemVzIHRo
ZSBlcnJvciBmb3IgZWFjaCBiYW5kLiBPbmx5IGF0IHZlcnkgbG93IHJhdGUgZG9lcyB0aGUgZW5j
b2RlciBhbGxvdyBsYXJnZXIgZXJyb3JzIHRvCittaW5pbWl6ZSB0aGUgcmF0ZSBhbmQgYXZvaWQg
dXNpbmcgbW9yZSBiaXRzIHRoYW4gYXJlIGF2YWlsYWJsZS4gV2hlbiB0aGUKK2F2YWlsYWJsZSBD
UFUgcmVxdWlyZW1lbnRzIGFsbG93IGl0LCBpdCBpcyBiZXN0IHRvIHRyeSBlbmNvZGluZyB0aGUg
Y29hcnNlIGVuZXJneSBib3RoIHdpdGggYW5kIHdpdGhvdXQKK2ludGVyLWZyYW1lIHByZWRpY3Rp
b24gc3VjaCB0aGF0IHRoZSBiZXN0IHByZWRpY3Rpb24gbW9kZSBjYW4gYmUgc2VsZWN0ZWQuIFRo
ZSBvcHRpbWFsIG1vZGUgZGVwZW5kcyBvbgordGhlIGNvZGluZyByYXRlLCB0aGUgYXZhaWxhYmxl
IGJpdHJhdGUsIGFuZCB0aGUgY3VycmVudCByYXRlIG9mIHBhY2tldCBsb3NzLgorPC90PgorCis8
dD5UaGUgZmluZSBlbmVyZ3kgcXVhbnRpemVyIGFsd2F5cyBjaG9vc2VzIHRoZSBxdWFudGl6ZWQg
bG9nIGVuZXJneSB2YWx1ZSB0aGF0CittaW5pbWl6ZXMgdGhlIGVycm9yIGZvciBlYWNoIGJhbmQg
YmVjYXVzZSB0aGUgcmF0ZSBvZiB0aGUgZmluZSBxdWFudGl6YXRpb24gZGVwZW5kcyBvbmx5Citv
biB0aGUgYml0IGFsbG9jYXRpb24gYW5kIG5vdCBvbiB0aGUgdmFsdWVzIHRoYXQgYXJlIGNvZGVk
LgorPC90PgorPC9zZWN0aW9uPiA8IS0tIEVuZXJneSBxdWFudCAtLT4KKworPHNlY3Rpb24gdGl0
bGU9IkJpdCBBbGxvY2F0aW9uIj4KKzx0PlRoZSBlbmNvZGVyIG11c3QgdXNlIGV4YWN0bHkgdGhl
IHNhbWUgYml0IGFsbG9jYXRpb24gcHJvY2VzcyBhcyB1c2VkIGJ5IHRoZSBkZWNvZGVyCithbmQg
ZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0iYWxsb2NhdGlvbiIvPi4gVGhlIHRocmVlIG1lY2hh
bmlzbXMgdGhhdCBjYW4gYmUgdXNlZCBieSB0aGUKK2VuY29kZXIgdG8gYWRqdXN0IHRoZSBiaXRy
YXRlIG9uIGEgZnJhbWUtYnktZnJhbWUgYmFzaXMgYXJlIGJhbmQgYm9vc3QsIGFsbG9jYXRpb24g
dHJpbSwKK2FuZCBiYW5kIHNraXBwaW5nLgorPC90PgorCis8c2VjdGlvbiB0aXRsZT0iQmFuZCBC
b29zdCI+Cis8dD5UaGUgcmVmZXJlbmNlIGVuY29kZXIgbWFrZXMgYSBkZWNpc2lvbiB0byBib29z
dCBhIGJhbmQgd2hlbiB0aGUgZW5lcmd5IG9mIHRoYXQgYmFuZCBpcyBzaWduaWZpY2FudGx5Cito
aWdoZXIgdGhhbiB0aGF0IG9mIHRoZSBuZWlnaGJvcmluZyBiYW5kcy4gTGV0IEVfaiBiZSB0aGUg
bG9nLWVuZXJneSBvZiBiYW5kIGosIHdlIGRlZmluZQorPGxpc3Q+Cis8dD5EX2ogPSAyKkVfaiAt
IEVfai0xIC0gRV9qKzEgPC90PgorPC9saXN0PgorCitUaGUgYWxsb2NhdGlvbiBvZiBiYW5kIGog
aXMgYm9vc3RlZCBvbmNlIGlmIERfaiAmZ3Q7IHQxIGFuZCB0d2ljZSBpZiBEX2ogJmd0OyB0Mi4g
Rm9yIExNJmd0Oz0xLCB0MT0yIGFuZCB0Mj00LAord2hpbGUgZm9yIExNJmx0OzEsIHQxPTMgYW5k
IHQyPTUuCis8L3Q+CisKKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IkFsbG9jYXRpb24g
VHJpbSI+Cis8dD5UaGUgYWxsb2NhdGlvbiB0cmltIGlzIGEgdmFsdWUgYmV0d2VlbiAwIGFuZCAx
MCAoaW5jbHVzaXZlbHkpIHRoYXQgY29udHJvbHMgdGhlIGFsbG9jYXRpb24KK2JhbGFuY2UgYmV0
d2VlbiB0aGUgbG93IGFuZCBoaWdoIGZyZXF1ZW5jaWVzLiBUaGUgZW5jb2RlciBzdGFydHMgd2l0
aCBhIHNhZmUgImRlZmF1bHQiIG9mIDUKK2FuZCBkZXZpYXRlcyBmcm9tIHRoYXQgZGVmYXVsdCBp
biB0d28gZGlmZmVyZW50IHdheXMuIEZpcnN0IHRoZSB0cmltIGNhbiBkZXZpYXRlIGJ5ICsvLSAy
CitkZXBlbmRpbmcgb24gdGhlIHNwZWN0cmFsIHRpbHQgb2YgdGhlIGlucHV0IHNpZ25hbC4gRm9y
IHNpZ25hbHMgd2l0aCBtb3JlIGxvdyBmcmVxdWVuY2llcywgdGhlCit0cmltIGlzIGluY3JlYXNl
ZCBieSB1cCB0byAyLCB3aGlsZSBmb3Igc2lnbmFscyB3aXRoIG1vcmUgaGlnaCBmcmVxdWVuY2ll
cywgdGhlIHRyaW0gaXMKK2RlY3JlYXNlZCBieSB1cCB0byAyLgorRm9yIHN0ZXJlbyBpbnB1dHMs
IHRoZSB0cmltIHZhbHVlIGNhbgorYmUgZGVjcmVhc2VkIGJ5IHVwIHRvIDQgd2hlbiB0aGUgaW50
ZXItY2hhbm5lbCBjb3JyZWxhdGlvbiBhdCBsb3cgZnJlcXVlbmN5IChmaXJzdCA4IGJhbmRzKQor
aXMgaGlnaC4gPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQmFuZCBTa2lwcGlu
ZyI+Cis8dD5UaGUgZW5jb2RlciB1c2VzIGJhbmQgc2tpcHBpbmcgdG8gZW5zdXJlIHRoYXQgdGhl
IHNoYXBlIG9mIHRoZSBiYW5kcyBpcyBvbmx5IGNvZGVkCitpZiB0aGVyZSBpcyBhdCBsZWFzdCAx
LzIgYml0IHBlciBzYW1wbGUgYXZhaWxhYmxlIGZvciB0aGUgUFZRLiBJZiBub3QsIHRoZW4gbm8g
Yml0IGlzIGFsbG9jYXRlZAorYW5kIGZvbGRpbmcgaXMgdXNlZCBpbnN0ZWFkLiBUbyBlbnN1cmUg
Y29udGludWl0eSBpbiB0aGUgYWxsb2NhdGlvbiwgc29tZSBhbW91bnQgb2YgaHlzdGVyZXNpcyBp
cworYWRkZWQgdG8gdGhlIHByb2Nlc3MsIHN1Y2ggdGhhdCBhIGJhbmQgdGhhdCByZWNlaXZlZCBQ
VlEgYml0cyBpbiB0aGUgcHJldmlvdXMgZnJhbWUgb25seSBuZWVkcyA3LzE2CitiaXQvc2FtcGxl
IHRvIGJlIGNvZGVkIGZvciB0aGUgY3VycmVudCBmcmFtZSwgd2hpbGUgYSBiYW5kIHRoYXQgZGlk
IG5vdCByZWNlaXZlIFBWUSBiaXRzIGluIHRoZQorcHJldmlvdXMgZnJhbWVzIG5lZWRzIGF0IGxl
YXN0IDkvMTYgYml0L3NhbXBsZSB0byBiZSBjb2RlZC48L3Q+Cis8L3NlY3Rpb24+CisKKzwvc2Vj
dGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IlN0ZXJlbyBEZWNpc2lvbnMiPgorPHQ+QmVjYXVzZSBD
RUxUIGFwcGxpZXMgbWlkLXNpZGUgc3RlcmVvIGNvdXBsaW5nIGluIHRoZSBub3JtYWxpemVkIGRv
bWFpbiwgaXQgZG9lcyBub3Qgc3VmZmVyIGZyb20KK2ltcG9ydGFudCBzdGVyZW8gaW1hZ2UgcHJv
YmxlbXMgZXZlbiB3aGVuIHRoZSB0d28gY2hhbm5lbHMgYXJlIGNvbXBsZXRlbHkgdW5jb3JyZWxh
dGVkLiBGb3IgdGhpcyByZWFzb24KK2l0IGlzIGFsd2F5cyBzYWZlIHRvIHVzZSBzdGVyZW8gY291
cGxpbmcgb24gYW55IGF1ZGlvIGZyYW1lLiBUaGF0IGJlaW5nIHNhaWQsIHRoZXJlIGFyZSBzb21l
IGZyYW1lcworZm9yIHdoaWNoIGR1YWwgKGluZGVwZW5kZW50KSBzdGVyZW8gaXMgc3RpbGwgbW9y
ZSBlZmZpY2llbnQuIFRoaXMgZGVjaXNpb24gaXMgbWFkZSBieSBjb21wYXJpbmcgdGhlIGVzdGlt
YXRlZAorZW50cm9weSB3aXRoIGFuZCB3aXRob3V0IGNvdXBsaW5nIG92ZXIgdGhlIGZpcnN0IDEz
IGJhbmRzLCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBmYWN0IHRoYXQgYWxsIGJhbmRzIHdpdGgK
K21vcmUgdGhhbiB0d28gTURDVCBiaW5zIHJlcXVpcmUgb25lIGV4dHJhIGRlZ3JlZSBvZiBmcmVl
ZG9tIHdoZW4gY29kZWQgaW4gbWlkLXNpZGUuIExldCBMMV9tcyBhbmQgTDFfbHIKK2JlIHRoZSBM
MS1ub3JtIG9mIHRoZSBtaWQtc2lkZSB2ZWN0b3IgYW5kIHRoZSBMMS1ub3JtIG9mIHRoZSBsZWZ0
LXJpZ2h0IHZlY3RvciwgcmVzcGVjdGl2ZWx5LiBUaGUgZGVjaXNpb24KK3RvIHVzZSBtaWQtc2lk
ZSBpcyBtYWRlIGlmIGFuZCBvbmx5IGlmCis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgTDFfbXMgICAgICAgICAgTDFfbHIKKy0tLS0t
LS0tICAgIDwgICAtLS0tLQorYmlucyArIEUgICAgICAgIGJpbnMKK11dPjwvYXJ0d29yaz4KKzwv
ZmlndXJlPgord2hlcmUgYmlucyBpcyB0aGUgbnVtYmVyIG9mIE1EQ1QgYmlucyBpbiB0aGUgZmly
c3QgMTMgYmFuZHMgYW5kIEUgaXMgdGhlIG51bWJlciBvZiBleHRyYSBkZWdyZWVzIG9mCitmcmVl
ZG9tIGZvciBtaWQtc2lkZSBjb2RpbmcuIEZvciBMTT4xLCBFPTEzLCBvdGhlcndpc2UgRT01Lgor
PC90PgorCis8dD5UaGUgcmVmZXJlbmNlIGVuY29kZXIgZGVjaWRlcyBvbiB0aGUgaW50ZW5zaXR5
IHN0ZXJlbyB0aHJlc2hvbGQgYmFzZWQgb24gdGhlIGJpdHJhdGUgYWxvbmUuIEFmdGVyCit0YWtp
bmcgaW50byBhY2NvdW50IHRoZSBmcmFtZSBzaXplIGJ5IHN1YnRyYWN0aW5nIDgwIGJpdHMgcGVy
IGZyYW1lIGZvciBjb2Fyc2UgZW5lcmd5LCB0aGUgZmlyc3QKK2JhbmQgdXNpbmcgaW50ZW5zaXR5
IGNvZGluZyBpcyBhcyBmb2xsb3dzOgorPC90PgorCis8dGV4dHRhYmxlIGFuY2hvcj0iaW50ZW5z
aXR5LXRocmVzaG9sZHMiCisgdGl0bGU9IlRocmVzaG9sZHMgZm9yIEludGVuc2l0eSBTdGVyZW8i
PgorPHR0Y29sIGFsaWduPSdjZW50ZXInPmJpdHJhdGUgKGtiL3MpPC90dGNvbD4KKzx0dGNvbCBh
bGlnbj0nY2VudGVyJz5zdGFydCBiYW5kPC90dGNvbD4KKzxjPiZsdDszNTwvYz4gICAgICA8Yz44
PC9jPgorPGM+MzUtNTA8L2M+ICAgICAgPGM+MTI8L2M+Cis8Yz41MC02ODwvYz4gICAgICA8Yz4x
NjwvYz4KKzxjPjg0LTg0PC9jPiAgICAgIDxjPjE4PC9jPgorPGM+ODQtMTAyPC9jPiAgICAgPGM+
MTk8L2M+Cis8Yz4xMDItMTMwPC9jPiAgICAgPGM+MjA8L2M+Cis8Yz4mZ3Q7MTMwPC9jPiAgICAg
PGM+ZGlzYWJsZWQ8L2M+Cis8L3RleHR0YWJsZT4KKworCis8L3NlY3Rpb24+CisKKzxzZWN0aW9u
IHRpdGxlPSJUaW1lLUZyZXF1ZW5jeSBEZWNpc2lvbiI+Cis8dD4KK1RoZSBjaG9pY2Ugb2YgdGlt
ZS1mcmVxdWVuY3kgcmVzb2x1dGlvbiB1c2VkIGluIDx4cmVmIHRhcmdldD0idGYtY2hhbmdlIj48
L3hyZWY+IGlzIGJhc2VkIG9uCitSLUQgb3B0aW1pemF0aW9uLiBUaGUgZGlzdG9ydGlvbiBpcyB0
aGUgTDEtbm9ybSAoc3VtIG9mIGFic29sdXRlIHZhbHVlcykgb2YgZWFjaCBiYW5kCithZnRlciBl
YWNoIFRGIHJlc29sdXRpb24gdW5kZXIgY29uc2lkZXJhdGlvbi4gVGhlIEwxIG5vcm0gaXMgdXNl
ZCBiZWNhdXNlIGl0IHJlcHJlc2VudHMgdGhlIGVudHJvcHkKK2ZvciBhIExhcGxhY2lhbiBzb3Vy
Y2UuIFRoZSBudW1iZXIgb2YgYml0cyByZXF1aXJlZCB0byBjb2RlIGEgY2hhbmdlIGluIFRGIHJl
c29sdXRpb24gYmV0d2VlbgordHdvIGJhbmRzIGlzIGhpZ2hlciB0aGFuIHRoZSBjb3N0IG9mIGhh
dmluZyB0aG9zZSB0d28gYmFuZHMgdXNlIHRoZSBzYW1lIHJlc29sdXRpb24sIHdoaWNoIGlzCit3
aGF0IHJlcXVpcmVzIHRoZSBSLUQgb3B0aW1pemF0aW9uLiBUaGUgb3B0aW1hbCBkZWNpc2lvbiBp
cyBjb21wdXRlZCB1c2luZyB0aGUgVml0ZXJiaSBhbGdvcml0aG0uCitTZWUgdGZfYW5hbHlzaXMo
KSBpbiBjZWx0L2NlbHQuYy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gdGl0bGU9IlNw
cmVhZGluZyBWYWx1ZXMgRGVjaXNpb24iPgorPHQ+CitUaGUgY2hvaWNlIG9mIHRoZSBzcHJlYWRp
bmcgdmFsdWUgaW4gPHhyZWYgdGFyZ2V0PSJzcHJlYWQgdmFsdWVzIj48L3hyZWY+IGhhcyBhbgor
aW1wYWN0IG9uIHRoZSBuYXR1cmUgb2YgdGhlIGNvZGluZyBub2lzZSBpbnRyb2R1Y2VkIGJ5IENF
TFQuIFRoZSBsYXJnZXIgdGhlIGZfciB2YWx1ZSwgdGhlCitsb3dlciB0aGUgaW1wYWN0IG9mIHRo
ZSByb3RhdGlvbiwgYW5kIHRoZSBtb3JlIHRvbmFsIHRoZSBjb2Rpbmcgbm9pc2UuIFRoZQorbW9y
ZSB0b25hbCB0aGUgc2lnbmFsLCB0aGUgbW9yZSB0b25hbCB0aGUgbm9pc2Ugc2hvdWxkIGJlLCBz
byB0aGUgQ0VMVCBlbmNvZGVyIGRldGVybWluZXMKK3RoZSBvcHRpbWFsIHZhbHVlIGZvciBmX3Ig
YnkgZXN0aW1hdGluZyBob3cgdG9uYWwgdGhlIHNpZ25hbCBpcy4gVGhlIHRvbmFsaXR5IGVzdGlt
YXRlCitpcyBiYXNlZCBvbiBkaXNjcmV0ZSBwZGYgKDQtYmluIGhpc3RvZ3JhbSkgb2YgZWFjaCBi
YW5kLiBCYW5kcyB0aGF0IGhhdmUgYSBsYXJnZSBudW1iZXIgb2Ygc21hbGwKK3ZhbHVlcyBhcmUg
Y29uc2lkZXJlZCBtb3JlIHRvbmFsIGFuZCBhIGRlY2lzaW9uIGlzIG1hZGUgYnkgY29tYmluaW5n
IGFsbCBiYW5kcyB3aXRoIG1vcmUgdGhhbgorOCBzYW1wbGVzLiBTZWUgc3ByZWFkaW5nX2RlY2lz
aW9uKCkgaW4gY2VsdC9iYW5kcy5jLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNo
b3I9InB2cSIgdGl0bGU9IlNwaGVyaWNhbCBWZWN0b3IgUXVhbnRpemF0aW9uIj4KKzx0PkNFTFQg
dXNlcyBhIFB5cmFtaWQgVmVjdG9yIFF1YW50aXphdGlvbiAoUFZRKSA8eHJlZiB0YXJnZXQ9IlBW
USI+PC94cmVmPgorY29kZWJvb2sgZm9yIHF1YW50aXppbmcgdGhlIGRldGFpbHMgb2YgdGhlIHNw
ZWN0cnVtIGluIGVhY2ggYmFuZCB0aGF0IGhhdmUgbm90CitiZWVuIHByZWRpY3RlZCBieSB0aGUg
cGl0Y2ggcHJlZGljdG9yLiBUaGUgUFZRIGNvZGVib29rIGNvbnNpc3RzIG9mIGFsbCBzdW1zCitv
ZiBLIHNpZ25lZCBwdWxzZXMgaW4gYSB2ZWN0b3Igb2YgTiBzYW1wbGVzLCB3aGVyZSB0d28gcHVs
c2VzIGF0IHRoZSBzYW1lIHBvc2l0aW9uCithcmUgcmVxdWlyZWQgdG8gaGF2ZSB0aGUgc2FtZSBz
aWduLiBUaHVzIHRoZSBjb2RlYm9vayBpbmNsdWRlcworYWxsIGludGVnZXIgY29kZXZlY3RvcnMg
eSBvZiBOIGRpbWVuc2lvbnMgdGhhdCBzYXRpc2Z5IHN1bShhYnMoeShqKSkpID0gSy4KKzwvdD4K
KworPHQ+CitJbiBiYW5kcyB3aGVyZSB0aGVyZSBhcmUgc3VmZmljaWVudCBiaXRzIGFsbG9jYXRl
ZCBQVlEgaXMgdXNlZCB0byBlbmNvZGUKK3RoZSB1bml0IHZlY3RvciB0aGF0IHJlc3VsdHMgZnJv
bSB0aGUgbm9ybWFsaXphdGlvbiBpbgorPHhyZWYgdGFyZ2V0PSJub3JtYWxpemF0aW9uIj48L3hy
ZWY+IGRpcmVjdGx5LiBHaXZlbiBhIFBWUSBjb2RldmVjdG9yIHksCit0aGUgdW5pdCB2ZWN0b3Ig
WCBpcyBvYnRhaW5lZCBhcyBYID0geS98fHl8fCwgd2hlcmUgfHwufHwgZGVub3RlcyB0aGUKK0wy
IG5vcm0uCis8L3Q+CisKKworPHNlY3Rpb24gYW5jaG9yPSJwdnEtc2VhcmNoIiB0aXRsZT0iUFZR
IFNlYXJjaCI+CisKKzx0PgorVGhlIHNlYXJjaCBmb3IgdGhlIGJlc3QgY29kZXZlY3RvciB5IGlz
IHBlcmZvcm1lZCBieSBhbGdfcXVhbnQoKQorKHZxLmMpLiBUaGVyZSBhcmUgc2V2ZXJhbCBwb3Nz
aWJsZSBhcHByb2FjaGVzIHRvIHRoZQorc2VhcmNoLCB3aXRoIGEgdHJhZGUtb2ZmIGJldHdlZW4g
cXVhbGl0eSBhbmQgY29tcGxleGl0eS4gVGhlIG1ldGhvZCB1c2VkIGluIHRoZSByZWZlcmVuY2UK
K2ltcGxlbWVudGF0aW9uIGNvbXB1dGVzIGFuIGluaXRpYWwgY29kZXdvcmQgeTEgYnkgcHJvamVj
dGluZyB0aGUgbm9ybWFsaXplZCBzcGVjdHJ1bQorWCBvbnRvIHRoZSBjb2RlYm9vayBweXJhbWlk
IG9mIEstMSBwdWxzZXM6Cis8L3Q+Cis8dD4KK3kwID0gdHJ1bmNhdGVfdG93YXJkc196ZXJvKCAo
Sy0xKSAqIFggLyBzdW0oYWJzKFgpKSkKKzwvdD4KKworPHQ+CitEZXBlbmRpbmcgb24gTiwgSyBh
bmQgdGhlIGlucHV0IGRhdGEsIHRoZSBpbml0aWFsIGNvZGV3b3JkIHkwIG1heSBjb250YWluIGZy
b20KKzAgdG8gSy0xIG5vbi16ZXJvIHZhbHVlcy4gQWxsIHRoZSByZW1haW5pbmcgcHVsc2VzLCB3
aXRoIHRoZSBleGNlcHRpb24gb2YgdGhlIGxhc3Qgb25lLAorYXJlIGZvdW5kIGl0ZXJhdGl2ZWx5
IHdpdGggYSBncmVlZHkgc2VhcmNoIHRoYXQgbWluaW1pemVzIHRoZSBub3JtYWxpemVkIGNvcnJl
bGF0aW9uCitiZXR3ZWVuIHkgYW5kIFg6Cis8ZmlndXJlIGFsaWduPSJjZW50ZXIiPgorPGFydHdv
cmsgYWxpZ249ImNlbnRlciI+PCFbQ0RBVEFbCisgICAgICBUCitKID0gLVggKiB5IC8gfHx5fHwK
K11dPjwvYXJ0d29yaz4KKzwvZmlndXJlPgorPC90PgorCis8dD4KK1RoZSBzZWFyY2ggZGVzY3Jp
YmVkIGFib3ZlIGlzIGNvbnNpZGVyZWQgdG8gYmUgYSBnb29kIHRyYWRlLW9mZiBiZXR3ZWVuIHF1
YWxpdHkKK2FuZCBjb21wdXRhdGlvbmFsIGNvc3QuIEhvd2V2ZXIsIHRoZXJlIGFyZSBvdGhlciBw
b3NzaWJsZSB3YXlzIHRvIHNlYXJjaCB0aGUgUFZRCitjb2RlYm9vayBhbmQgdGhlIGltcGxlbWVu
dGVycyBNQVkgdXNlIGFueSBvdGhlciBzZWFyY2ggbWV0aG9kcy4gU2VlIGFsZ19xdWFudCgpIGlu
IGNlbHQvdnEuYy4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24gYW5jaG9yPSJjd3JzLWVu
Y29kZXIiIHRpdGxlPSJQVlEgRW5jb2RpbmciPgorCis8dD4KK1RoZSB2ZWN0b3IgdG8gZW5jb2Rl
LCBYLCBpcyBjb252ZXJ0ZWQgaW50byBhbiBpbmRleCBpIHN1Y2ggdGhhdAorIDAmbmJzcDsmbHQ7
PSZuYnNwO2kmbmJzcDsmbHQ7Jm5ic3A7VihOLEspIGFzIGZvbGxvd3MuCitMZXQgaSZuYnNwOz0m
bmJzcDswIGFuZCBrJm5ic3A7PSZuYnNwOzAuCitUaGVuIGZvciBqJm5ic3A7PSZuYnNwOyhOJm5i
c3A7LSZuYnNwOzEpIGRvd24gdG8gMCwgaW5jbHVzaXZlLCBkbzoKKzxsaXN0IHN0eWxlPSJudW1i
ZXJzIj4KKzx0PgorSWYgayZuYnNwOz4mbmJzcDswLCBzZXQKKyBpJm5ic3A7PSZuYnNwO2kmbmJz
cDsrJm5ic3A7KFYoTi1qLTEsay0xKSZuYnNwOysmbmJzcDtWKE4taixrLTEpKS8yLgorPC90Pgor
PHQ+U2V0IGsmbmJzcDs9Jm5ic3A7ayZuYnNwOysmbmJzcDthYnMoWFtqXSkuPC90PgorPHQ+CitJ
ZiBYW2pdJm5ic3A7Jmx0OyZuYnNwOzAsIHNldAorIGkmbmJzcDs9Jm5ic3A7aSZuYnNwOysmbmJz
cDsoVihOLWotMSxrKSZuYnNwOysmbmJzcDtWKE4taixrKSkvMi4KKzwvdD4KKzwvbGlzdD4KKzwv
dD4KKworPHQ+CitUaGUgaW5kZXggaSBpcyB0aGVuIGVuY29kZWQgdXNpbmcgdGhlIHByb2NlZHVy
ZSBpbgorIDx4cmVmIHRhcmdldD0iZW5jb2RpbmctaW50cyIvPiB3aXRoIGZ0Jm5ic3A7PSZuYnNw
O1YoTixLKS4KKzwvdD4KKworPC9zZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKworCisKKworPC9z
ZWN0aW9uPgorCis8L3NlY3Rpb24+CisKKworPHNlY3Rpb24gYW5jaG9yPSJjb25mb3JtYW5jZSIg
dGl0bGU9IkNvbmZvcm1hbmNlIj4KKworPHQ+CitJdCBpcyBvdXIgaW50ZW50aW9uIHRvIGFsbG93
IHRoZSBncmVhdGVzdCBwb3NzaWJsZSBjaG9pY2Ugb2YgZnJlZWRvbSBpbgoraW1wbGVtZW50aW5n
IHRoZSBzcGVjaWZpY2F0aW9uLiBGb3IgdGhpcyByZWFzb24sIG91dHNpZGUgb2YgdGhlIGV4Y2Vw
dGlvbnMKK25vdGVkIGluIHRoaXMgc2VjdGlvbiwgY29uZm9ybWFuY2UgaXMgZGVmaW5lZCB0aHJv
dWdoIHRoZSByZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uIG9mIHRoZSBkZWNvZGVyIHByb3ZpZGVk
IGluIDx4cmVmIHRhcmdldD0icmVmLWltcGxlbWVudGF0aW9uIi8+LgorQWx0aG91Z2ggdGhpcyBk
b2N1bWVudCBpbmNsdWRlcyBhbiBFbmdsaXNoIGRlc2NyaXB0aW9uIG9mIHRoZSBjb2RlYywgc2hv
dWxkCit0aGUgZGVzY3JpcHRpb24gY29udHJhZGljdCB0aGUgc291cmNlIGNvZGUgb2YgdGhlIHJl
ZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiwKK3RoZSBsYXR0ZXIgc2hhbGwgdGFrZSBwcmVjZWRlbmNl
LgorPC90PgorCis8dD4KK0NvbXBsaWFuY2Ugd2l0aCB0aGlzIHNwZWNpZmljYXRpb24gbWVhbnMg
dGhhdCBpbiBhZGRpdGlvbiB0byBmb2xsb3dpbmcgdGhlIG5vcm1hdGl2ZSBrZXl3b3JkcyBpbiB0
aGlzIGRvY3VtZW50LAorIGEgZGVjb2RlcidzIG91dHB1dCBNVVNUIGFsc28gYmUKKyB3aXRoaW4g
dGhlIHRocmVzaG9sZHMgc3BlY2lmaWVkIGJ5IHRoZSBvcHVzX2NvbXBhcmUuYyB0b29sIChpbmNs
dWRlZAorIHdpdGggdGhlIGNvZGUpIHdoZW4gY29tcGFyZWQgdG8gdGhlIHJlZmVyZW5jZSBpbXBs
ZW1lbnRhdGlvbiBmb3IgZWFjaCBvZiB0aGUKKyB0ZXN0IHZlY3RvcnMgcHJvdmlkZWQgKHNlZSA8
eHJlZiB0YXJnZXQ9InRlc3QtdmVjdG9ycyI+PC94cmVmPikgYW5kIGZvciBlYWNoIG91dHB1dAor
IHNhbXBsaW5nIHJhdGUgYW5kIGNoYW5uZWwgY291bnQgc3VwcG9ydGVkLiBJbiBhZGRpdGlvbiwg
YSBjb21wbGlhbnQKKyBkZWNvZGVyIGltcGxlbWVudGF0aW9uIE1VU1QgaGF2ZSB0aGUgc2FtZSBm
aW5hbCByYW5nZSBkZWNvZGVyIHN0YXRlIGFzIHRoYXQgb2YgdGhlCisgcmVmZXJlbmNlIGRlY29k
ZXIuIEl0IGlzIHRoZXJlZm9yZSBSRUNPTU1FTkRFRCB0aGF0IHRoZQorIGRlY29kZXIgaW1wbGVt
ZW50IHRoZSBzYW1lIGZ1bmN0aW9uYWwgYmVoYXZpb3IgYXMgdGhlIHJlZmVyZW5jZS4KKworIEEg
ZGVjb2RlciBpbXBsZW1lbnRhdGlvbiBpcyBub3QgcmVxdWlyZWQgdG8gc3VwcG9ydCBhbGwgb3V0
cHV0IHNhbXBsaW5nCisgcmF0ZXMgb3IgYWxsIG91dHB1dCBjaGFubmVsIGNvdW50cy4KKzwvdD4K
KworPHNlY3Rpb24gdGl0bGU9IlRlc3RpbmciPgorPHQ+CitVc2luZyB0aGUgcmVmZXJlbmNlIGNv
ZGUgcHJvdmlkZWQgaW4gPHhyZWYgdGFyZ2V0PSJyZWYtaW1wbGVtZW50YXRpb24iPjwveHJlZj4s
CithIHRlc3QgdmVjdG9yIGNhbiBiZSBkZWNvZGVkIHdpdGgKKzxsaXN0PgorPHQ+b3B1c19kZW1v
IC1kICZsdDtyYXRlJmd0OyAmbHQ7Y2hhbm5lbHMmZ3Q7IHRlc3R2ZWN0b3JYLmJpdCB0ZXN0WC5v
dXQ8L3Q+Cis8L2xpc3Q+Cit3aGVyZSAmbHQ7cmF0ZSZndDsgaXMgdGhlIHNhbXBsaW5nIHJhdGUg
YW5kIGNhbiBiZSA4MDAwLCAxMjAwMCwgMTYwMDAsIDI0MDAwLCBvciA0ODAwMCwgYW5kCismbHQ7
Y2hhbm5lbHMmZ3Q7IGlzIDEgZm9yIG1vbm8gb3IgMiBmb3Igc3RlcmVvLgorPC90PgorCis8dD4K
K0lmIHRoZSByYW5nZSBkZWNvZGVyIHN0YXRlIGlzIGluY29ycmVjdCBmb3Igb25lIG9mIHRoZSBm
cmFtZXMsIHRoZSBkZWNvZGVyIHdpbGwgZXhpdCB3aXRoCisiRXJyb3I6IFJhbmdlIGNvZGVyIHN0
YXRlIG1pc21hdGNoIGJldHdlZW4gZW5jb2RlciBhbmQgZGVjb2RlciIuIElmIHRoZSBkZWNvZGVy
IHN1Y2NlZWRzLCB0aGVuCit0aGUgb3V0cHV0IGNhbiBiZSBjb21wYXJlZCB3aXRoIHRoZSAicmVm
ZXJlbmNlIiBvdXRwdXQgd2l0aAorPGxpc3Q+Cis8dD5vcHVzX2NvbXBhcmUgLXMgLXIgJmx0O3Jh
dGUmZ3Q7IHRlc3R2ZWN0b3JYLmRlYyB0ZXN0WC5vdXQ8L3Q+Cis8L2xpc3Q+Citmb3Igc3RlcmVv
IG9yCis8bGlzdD4KKzx0Pm9wdXNfY29tcGFyZSAtciAmbHQ7cmF0ZSZndDsgdGVzdHZlY3Rvclgu
ZGVjIHRlc3RYLm91dDwvdD4KKzwvbGlzdD4KK2ZvciBtb25vLgorPC90PgorCis8dD5JbiBhZGRp
dGlvbiB0byBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIHRlc3QgdmVjdG9yIGNvbXBhcmlzb24gcGFz
c2VzLCB0aGUgb3B1c19jb21wYXJlIHRvb2wKK291dHB1dHMgYW4gIk9wdXMgcXVhbGl0eSBtZXRy
aWMiIHRoYXQgaW5kaWNhdGVzIGhvdyB3ZWxsIHRoZSB0ZXN0ZWQgZGVjb2RlciBtYXRjaGVzIHRo
ZQorcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uLiBBIHF1YWxpdHkgb2YgMCBjb3JyZXNwb25kcyB0
byB0aGUgcGFzc2luZyB0aHJlc2hvbGQsIHdoaWxlCithIHF1YWxpdHkgb2YgMTAwIGlzIHRoZSBo
aWdoZXN0IHBvc3NpYmxlIHZhbHVlIGFuZCBtZWFucyB0aGF0IHRoZSBvdXRwdXQgb2YgdGhlIHRl
c3RlZCBkZWNvZGVyIGlzIGlkZW50aWNhbCB0byB0aGUgcmVmZXJlbmNlCitpbXBsZW1lbnRhdGlv
bi4gVGhlIHBhc3NpbmcgdGhyZXNob2xkIChxdWFsaXR5IDApIHdhcyBjYWxpYnJhdGVkIGluIHN1
Y2ggYSB3YXkgdGhhdCBpdCBjb3JyZXNwb25kcyB0bworYWRkaXRpdmUgd2hpdGUgbm9pc2Ugd2l0
aCBhIDQ4IGRCIFNOUiAoc2ltaWxhciB0byB3aGF0IGNhbiBiZSBvYnRhaW5lZCBvbiBhIGNhc3Nl
dHRlIGRlY2spLgorSXQgaXMgc3RpbGwgcG9zc2libGUgZm9yIGFuIGltcGxlbWVudGF0aW9uIHRv
IHNvdW5kIHZlcnkgZ29vZCB3aXRoIHN1Y2ggYSBsb3cgcXVhbGl0eSBtZWFzdXJlCisoZS5nLiBp
ZiB0aGUgZGV2aWF0aW9uIGlzIGR1ZSB0byBpbmF1ZGlibGUgcGhhc2UgZGlzdG9ydGlvbiksIGJ1
dCB1bmxlc3MgdGhpcyBpcyB2ZXJpZmllZCBieQorbGlzdGVuaW5nIHRlc3RzLCBpdCBpcyBSRUNP
TU1FTkRFRCB0aGF0IGltcGxlbWVudGF0aW9ucyBhY2hpZXZlIGEgcXVhbGl0eSBhYm92ZSA5MCBm
b3IgNDgmbmJzcDtrSHoKK2RlY29kaW5nLiBGb3Igb3RoZXIgc2FtcGxpbmcgcmF0ZXMsIGl0IGlz
IG5vcm1hbCBmb3IgdGhlIHF1YWxpdHkgbWV0cmljIHRvIGJlIGxvd2VyCisodHlwaWNhbGx5IGFz
IGxvdyBhcyA1MCBldmVuIGZvciBhIGdvb2QgaW1wbGVtZW50YXRpb24pIGJlY2F1c2Ugb2YgaGFy
bWxlc3MgbWlzbWF0Y2ggd2l0aAordGhlIGRlbGF5IGFuZCBwaGFzZSBvZiB0aGUgaW50ZXJuYWwg
c2FtcGxpbmcgcmF0ZSBjb252ZXJzaW9uLgorPC90PgorCis8dD4KK09uIFBPU0lYIGVudmlyb25t
ZW50cywgdGhlIHJ1bl92ZWN0b3JzLnNoIHNjcmlwdCBjYW4gYmUgdXNlZCB0byB2ZXJpZnkgYWxs
IHRlc3QKK3ZlY3RvcnMuIFRoaXMgY2FuIGJlIGRvbmUgd2l0aAorPGxpc3Q+Cis8dD5ydW5fdmVj
dG9ycy5zaCAmbHQ7ZXhlYyBwYXRoJmd0OyAmbHQ7dmVjdG9yIHBhdGgmZ3Q7ICZsdDtyYXRlJmd0
OzwvdD4KKzwvbGlzdD4KK3doZXJlICZsdDtleGVjIHBhdGgmZ3Q7IGlzIHRoZSBkaXJlY3Rvcnkg
d2hlcmUgdGhlIG9wdXNfZGVtbyBhbmQgb3B1c19jb21wYXJlIGV4ZWN1dGFibGVzCithcmUgYnVp
bHQgYW5kICZsdDt2ZWN0b3IgcGF0aCZndDsgaXMgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRo
ZSB0ZXN0IHZlY3RvcnMuCis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hvcj0ib3B1
cy1jdXN0b20iIHRpdGxlPSJPcHVzIEN1c3RvbSI+Cis8dD4KK09wdXMgQ3VzdG9tIGlzIGFuIE9Q
VElPTkFMIHBhcnQgb2YgdGhlIHNwZWNpZmljYXRpb24gdGhhdCBpcyBkZWZpbmVkIHRvCitoYW5k
bGUgc3BlY2lhbCBzYW1wbGUgcmF0ZXMgYW5kIGZyYW1lIHJhdGVzIHRoYXQgYXJlIG5vdCBzdXBw
b3J0ZWQgYnkgdGhlCittYWluIE9wdXMgc3BlY2lmaWNhdGlvbi4gVXNlIG9mIE9wdXMgQ3VzdG9t
IGlzIGRpc2NvdXJhZ2VkIGZvciBhbGwgYnV0IHZlcnkKK3NwZWNpYWwgYXBwbGljYXRpb25zIGZv
ciB3aGljaCBhIGZyYW1lIHNpemUgZGlmZmVyZW50IGZyb20gMi41LCA1LCAxMCwgb3IgMjAmbmJz
cDttcyBpcworbmVlZGVkIChmb3IgZWl0aGVyIGNvbXBsZXhpdHkgb3IgbGF0ZW5jeSByZWFzb25z
KS4gQmVjYXVzZSBPcHVzIEN1c3RvbSBpcworb3B0aW9uYWwsIHN0cmVhbXMgZW5jb2RlZCB1c2lu
ZyBPcHVzIEN1c3RvbSBjYW5ub3QgYmUgZXhwZWN0ZWQgdG8gYmUgZGVjb2RhYmxlIGJ5IGFsbCBP
cHVzCitpbXBsZW1lbnRhdGlvbnMuIEFsc28sIGJlY2F1c2Ugbm8gaW4tYmFuZCBtZWNoYW5pc20g
ZXhpc3RzIGZvciBzcGVjaWZ5aW5nIHRoZSBzYW1wbGluZworcmF0ZSBhbmQgZnJhbWUgc2l6ZSBv
ZiBPcHVzIEN1c3RvbSBzdHJlYW1zLCBvdXQtb2YtYmFuZCBzaWduYWxpbmcgaXMgcmVxdWlyZWQu
CitJbiBPcHVzIEN1c3RvbSBvcGVyYXRpb24sIG9ubHkgdGhlIENFTFQgbGF5ZXIgaXMgYXZhaWxh
YmxlLCB1c2luZyB0aGUgb3B1c19jdXN0b21fKiBmdW5jdGlvbgorY2FsbHMgaW4gb3B1c19jdXN0
b20uaC4KKzwvdD4KKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9
InNlY3VyaXR5IiB0aXRsZT0iU2VjdXJpdHkgQ29uc2lkZXJhdGlvbnMiPgorCis8dD4KK0ltcGxl
bWVudGF0aW9ucyBvZiB0aGUgT3B1cyBjb2RlYyBuZWVkIHRvIHRha2UgYXBwcm9wcmlhdGUgc2Vj
dXJpdHkgY29uc2lkZXJhdGlvbnMKK2ludG8gYWNjb3VudCwgYXMgb3V0bGluZWQgaW4gPHhyZWYg
dGFyZ2V0PSJET1MiLz4uCitJdCBpcyBleHRyZW1lbHkgaW1wb3J0YW50IGZvciB0aGUgZGVjb2Rl
ciB0byBiZSByb2J1c3QgYWdhaW5zdCBtYWxpY2lvdXMKK3BheWxvYWRzLgorTWFsaWNpb3VzIHBh
eWxvYWRzIG11c3Qgbm90IGNhdXNlIHRoZSBkZWNvZGVyIHRvIG92ZXJydW4gaXRzIGFsbG9jYXRl
ZCBtZW1vcnkKKyBvciB0byB0YWtlIGFuIGV4Y2Vzc2l2ZSBhbW91bnQgb2YgcmVzb3VyY2VzIHRv
IGRlY29kZS4KK0FsdGhvdWdoIHByb2JsZW1zCitpbiBlbmNvZGVycyBhcmUgdHlwaWNhbGx5IHJh
cmVyLCB0aGUgc2FtZSBhcHBsaWVzIHRvIHRoZSBlbmNvZGVyLiBNYWxpY2lvdXMKK2F1ZGlvIHN0
cmVhbXMgbXVzdCBub3QgY2F1c2UgdGhlIGVuY29kZXIgdG8gbWlzYmVoYXZlIGJlY2F1c2UgdGhp
cyB3b3VsZAorYWxsb3cgYW4gYXR0YWNrZXIgdG8gYXR0YWNrIHRyYW5zY29kaW5nIGdhdGV3YXlz
LgorPC90PgorPHQ+CitUaGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGNvbnRhaW5zIG5vIGtu
b3duIGJ1ZmZlciBvdmVyZmxvdyBvciBjYXNlcyB3aGVyZQorIGEgc3BlY2lhbGx5IGNyYWZ0ZWQg
cGFja2V0IG9yIGF1ZGlvIHNlZ21lbnQgY291bGQgY2F1c2UgYSBzaWduaWZpY2FudCBpbmNyZWFz
ZQorIGluIENQVSBsb2FkLgorSG93ZXZlciwgb24gY2VydGFpbiBDUFUgYXJjaGl0ZWN0dXJlcyB3
aGVyZSBkZW5vcm1hbGl6ZWQgZmxvYXRpbmctcG9pbnQKKyBvcGVyYXRpb25zIGFyZSBtdWNoIHNs
b3dlciB0aGFuIG5vcm1hbCBmbG9hdGluZy1wb2ludCBvcGVyYXRpb25zLCBpdCBpcworIHBvc3Np
YmxlIGZvciBzb21lIGF1ZGlvIGNvbnRlbnQgKGUuZy4sIHNpbGVuY2Ugb3IgbmVhci1zaWxlbmNl
KSB0byBjYXVzZSBhbgorIGluY3JlYXNlIGluIENQVSBsb2FkLgorRGVub3JtYWxzIGNhbiBiZSBp
bnRyb2R1Y2VkIGJ5IHJlb3JkZXJpbmcgb3BlcmF0aW9ucyBpbiB0aGUgY29tcGlsZXIgYW5kIGRl
cGVuZAorIG9uIHRoZSB0YXJnZXQgYXJjaGl0ZWN0dXJlLCBzbyBpdCBpcyBkaWZmaWN1bHQgdG8g
Z3VhcmFudGVlIHRoYXQgYW4gaW1wbGVtZW50YXRpb24KKyBhdm9pZHMgdGhlbS4KK0ZvciBhcmNo
aXRlY3R1cmVzIG9uIHdoaWNoIGRlbm9ybWFscyBhcmUgcHJvYmxlbWF0aWMsIGFkZGluZyB2ZXJ5
IHNtYWxsCisgZmxvYXRpbmctcG9pbnQgb2Zmc2V0cyB0byB0aGUgYWZmZWN0ZWQgc2lnbmFscyB0
byBwcmV2ZW50IHNpZ25pZmljYW50IG51bWJlcnMKKyBvZiBkZW5vcm1hbGl6ZWQgb3BlcmF0aW9u
cyBpcyBSRUNPTU1FTkRFRC4KK0FsdGVybmF0aXZlbHksIGl0IGlzIG9mdGVuIHBvc3NpYmxlIHRv
IGNvbmZpZ3VyZSB0aGUgaGFyZHdhcmUgdG8gdHJlYXQKKyBkZW5vcm1hbHMgYXMgemVybyAoREFa
KS4KK05vIHN1Y2ggaXNzdWUgZXhpc3RzIGZvciB0aGUgZml4ZWQtcG9pbnQgcmVmZXJlbmNlIGlt
cGxlbWVudGF0aW9uLgorPC90PgorPHQ+VGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiB3YXMg
dmFsaWRhdGVkIGluIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKKzxsaXN0IHN0eWxlPSJudW1i
ZXJzIj4KKzx0PgorU2VuZGluZyB0aGUgZGVjb2RlciB2YWxpZCBwYWNrZXRzIGdlbmVyYXRlZCBi
eSB0aGUgcmVmZXJlbmNlIGVuY29kZXIgYW5kCisgdmVyaWZ5aW5nIHRoYXQgdGhlIGRlY29kZXIn
cyBmaW5hbCByYW5nZSBjb2RlciBzdGF0ZSBtYXRjaGVzIHRoYXQgb2YgdGhlCisgZW5jb2Rlci4K
KzwvdD4KKzx0PgorU2VuZGluZyB0aGUgZGVjb2RlciBwYWNrZXRzIGdlbmVyYXRlZCBieSB0aGUg
cmVmZXJlbmNlIGVuY29kZXIgYW5kIHRoZW4KKyBzdWJqZWN0ZWQgdG8gcmFuZG9tIGNvcnJ1cHRp
b24uCis8L3Q+Cis8dD5TZW5kaW5nIHRoZSBkZWNvZGVyIHJhbmRvbSBwYWNrZXRzLjwvdD4KKzx0
PgorU2VuZGluZyB0aGUgZGVjb2RlciBwYWNrZXRzIGdlbmVyYXRlZCBieSBhIHZlcnNpb24gb2Yg
dGhlIHJlZmVyZW5jZSBlbmNvZGVyCisgbW9kaWZpZWQgdG8gbWFrZSByYW5kb20gY29kaW5nIGRl
Y2lzaW9ucyAoaW50ZXJuYWwgZnV6emluZyksIGluY2x1ZGluZyBtb2RlCisgc3dpdGNoaW5nLCBh
bmQgdmVyaWZ5aW5nIHRoYXQgdGhlIHJhbmdlIGNvZGVyIGZpbmFsIHN0YXRlcyBtYXRjaC4KKzwv
dD4KKzwvbGlzdD4KK0luIGFsbCBvZiB0aGUgY29uZGl0aW9ucyBhYm92ZSwgYm90aCB0aGUgZW5j
b2RlciBhbmQgdGhlIGRlY29kZXIgd2VyZSBydW4KKyBpbnNpZGUgdGhlIDx4cmVmIHRhcmdldD0i
VmFsZ3JpbmQiPlZhbGdyaW5kPC94cmVmPiBtZW1vcnkKKyBkZWJ1Z2dlciwgd2hpY2ggdHJhY2tz
IHJlYWRzIGFuZCB3cml0ZXMgdG8gaW52YWxpZCBtZW1vcnkgcmVnaW9ucyBhcyB3ZWxsIGFzCisg
dGhlIHVzZSBvZiB1bmluaXRpYWxpemVkIG1lbW9yeS4KK1RoZXJlIHdlcmUgbm8gZXJyb3JzIHJl
cG9ydGVkIG9uIGFueSBvZiB0aGUgdGVzdGVkIGNvbmRpdGlvbnMuCis8L3Q+Cis8L3NlY3Rpb24+
CisKKworPHNlY3Rpb24gdGl0bGU9IklBTkEgQ29uc2lkZXJhdGlvbnMiPgorPHQ+CitUaGlzIGRv
Y3VtZW50IGhhcyBubyBhY3Rpb25zIGZvciBJQU5BLgorPC90PgorPC9zZWN0aW9uPgorCis8c2Vj
dGlvbiBhbmNob3I9IkFja25vd2xlZGdlbWVudHMiIHRpdGxlPSJBY2tub3dsZWRnZW1lbnRzIj4K
Kzx0PgorVGhhbmtzIHRvIGFsbCBvdGhlciBkZXZlbG9wZXJzLCBpbmNsdWRpbmcgUmF5bW9uZCBD
aGVuLCBTb2VyZW4gU2thayBKZW5zZW4sIEdyZWdvcnkgTWF4d2VsbCwKK0NocmlzdG9waGVyIE1v
bnRnb21lcnksIGFuZCBLYXJzdGVuIFZhbmRib3JnIFNvZXJlbnNlbi4gV2Ugd291bGQgYWxzbwor
bGlrZSB0byB0aGFuayBJZ29yIER5YWtvbm92LCBKYW4gU2tvZ2x1bmQsIGFuZCBDaHJpc3RpYW4g
SG9lbmUgZm9yIHRoZWlyIGhlbHAgd2l0aCBzdWJqZWN0aXZlIHRlc3Rpbmcgb2YgdGhlCitPcHVz
IGNvZGVjLiBUaGFua3MgdG8gUmFscGggR2lsZXMsIEpvaG4gUmlkZ2VzLCBCZW4gU2Nod2FydHos
IEtlaXRoIFlhbiwgQ2hyaXN0aWFuIEhvZW5lLCBLYXQgV2Fsc2gsIGFuZCBtYW55IG90aGVycyBv
biB0aGUgT3B1cyBhbmQgQ0VMVCBtYWlsaW5nIGxpc3RzCitmb3IgdGhlaXIgYnVnIHJlcG9ydHMg
YW5kIGZlZWRiYWNrLgorPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iQ29weWlu
ZyBDb25kaXRpb25zIj4KKzx0PlRoZSBhdXRob3JzIGFncmVlIHRvIGdyYW50IHRoaXJkIHBhcnRp
ZXMgdGhlIGlycmV2b2NhYmxlIHJpZ2h0IHRvIGNvcHksIHVzZSBhbmQgZGlzdHJpYnV0ZQordGhl
IHdvcmsgKGV4Y2x1ZGluZyBDb2RlIENvbXBvbmVudHMgYXZhaWxhYmxlIHVuZGVyIHRoZSBzaW1w
bGlmaWVkIEJTRCBsaWNlbnNlKSwgd2l0aCBvcgord2l0aG91dCBtb2RpZmljYXRpb24sIGluIGFu
eSBtZWRpdW0sIHdpdGhvdXQgcm95YWx0eSwgcHJvdmlkZWQgdGhhdCwgdW5sZXNzIHNlcGFyYXRl
CitwZXJtaXNzaW9uIGlzIGdyYW50ZWQsIHJlZGlzdHJpYnV0ZWQgbW9kaWZpZWQgd29ya3MgZG8g
bm90IGNvbnRhaW4gbWlzbGVhZGluZyBhdXRob3IsIHZlcnNpb24sCituYW1lIG9mIHdvcmssIG9y
IGVuZG9yc2VtZW50IGluZm9ybWF0aW9uLjwvdD4KKzwvc2VjdGlvbj4KKworPC9taWRkbGU+CisK
KzxiYWNrPgorCis8cmVmZXJlbmNlcyB0aXRsZT0iTm9ybWF0aXZlIFJlZmVyZW5jZXMiPgorCis8
cmVmZXJlbmNlIGFuY2hvcj0icmZjMjExOSI+Cis8ZnJvbnQ+Cis8dGl0bGU+S2V5IHdvcmRzIGZv
ciB1c2UgaW4gUkZDcyB0byBJbmRpY2F0ZSBSZXF1aXJlbWVudCBMZXZlbHMgPC90aXRsZT4KKzxh
dXRob3IgaW5pdGlhbHM9IlMuIiBzdXJuYW1lPSJCcmFkbmVyIiBmdWxsbmFtZT0iU2NvdHQgQnJh
ZG5lciI+PC9hdXRob3I+Cis8L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0iUkZDIiB2YWx1ZT0i
MjExOSIgLz4KKzwvcmVmZXJlbmNlPgorCis8L3JlZmVyZW5jZXM+CisKKzxyZWZlcmVuY2VzIHRp
dGxlPSJJbmZvcm1hdGl2ZSBSZWZlcmVuY2VzIj4KKworPHJlZmVyZW5jZSBhbmNob3I9J3JlcXVp
cmVtZW50cyc+Cis8ZnJvbnQ+Cis8dGl0bGU+UmVxdWlyZW1lbnRzIGZvciBhbiBJbnRlcm5ldCBB
dWRpbyBDb2RlYzwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxzPSdKLi1NLicgc3VybmFtZT0nVmFs
aW4nIGZ1bGxuYW1lPSdKLi1NLiBWYWxpbic+Cis8b3JnYW5pemF0aW9uIC8+PC9hdXRob3I+Cis8
YXV0aG9yIGluaXRpYWxzPSdLLicgc3VybmFtZT0nVm9zJyBmdWxsbmFtZT0nSy4gVm9zJz4KKzxv
cmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxhdXRob3I+Cis8b3JnYW5pemF0aW9uPklFVEY8L29y
Z2FuaXphdGlvbj48L2F1dGhvcj4KKzxkYXRlIHllYXI9JzIwMTEnIG1vbnRoPSdBdWd1c3QnIC8+
Cis8YWJzdHJhY3Q+Cis8dD5UaGlzIGRvY3VtZW50IHByb3ZpZGVzIHNwZWNpZmljIHJlcXVpcmVt
ZW50cyBmb3IgYW4gSW50ZXJuZXQgYXVkaW8KKyAgIGNvZGVjLiAgVGhlc2UgcmVxdWlyZW1lbnRz
IGFkZHJlc3MgcXVhbGl0eSwgc2FtcGxlIHJhdGUsIGJpdHJhdGUsCisgICBhbmQgcGFja2V0LWxv
c3Mgcm9idXN0bmVzcywgYXMgd2VsbCBhcyBvdGhlciBkZXNpcmFibGUgcHJvcGVydGllcy4KKzwv
dD48L2Fic3RyYWN0PjwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSdSRkMnIHZhbHVlPSc2MzY2
JyAvPgorPGZvcm1hdCB0eXBlPSdUWFQnIHRhcmdldD0naHR0cDovL3Rvb2xzLmlldGYub3JnL3Jm
Yy9yZmM2MzY2LnR4dCcgLz4KKzwvcmVmZXJlbmNlPgorCis8P3JmYyBpbmNsdWRlPSJodHRwOi8v
eG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjM1NTAueG1s
Ij8+Cis8P3JmYyBpbmNsdWRlPSJodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2Jp
YnhtbC9yZWZlcmVuY2UuUkZDLjM1MzMueG1sIj8+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSdTSUxL
JyB0YXJnZXQ9J2h0dHA6Ly9kZXZlbG9wZXIuc2t5cGUuY29tL3NpbGsnPgorPGZyb250PgorPHRp
dGxlPlNJTEsgU3BlZWNoIENvZGVjPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9J0suJyBzdXJu
YW1lPSdWb3MnIGZ1bGxuYW1lPSdLLiBWb3MnPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgor
PGF1dGhvciBpbml0aWFscz0nUy4nIHN1cm5hbWU9J0plbnNlbicgZnVsbG5hbWU9J1MuIEplbnNl
bic+Cis8b3JnYW5pemF0aW9uIC8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSdLLicgc3Vy
bmFtZT0nU29lcmVuc2VuJyBmdWxsbmFtZT0nSy4gU29lcmVuc2VuJz4KKzxvcmdhbml6YXRpb24g
Lz48L2F1dGhvcj4KKzxkYXRlIHllYXI9JzIwMTAnIG1vbnRoPSdNYXJjaCcgLz4KKzxhYnN0cmFj
dD4KKzx0PjwvdD4KKzwvYWJzdHJhY3Q+PC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9J0ludGVy
bmV0LURyYWZ0JyB2YWx1ZT0nZHJhZnQtdm9zLXNpbGstMDEnIC8+Cis8Zm9ybWF0IHR5cGU9J1RY
VCcgdGFyZ2V0PSdodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9kcmFmdC12b3Mtc2lsay0wMScg
Lz4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0ibGFyb2lhLWljYXNzcCI+Cis8
ZnJvbnQ+Cis8dGl0bGUgYWJicmV2PSJSb2J1c3QgYW5kIEVmZmljaWVudCBRdWFudGl6YXRpb24g
b2YgU3BlZWNoIExTUCI+CitSb2J1c3QgYW5kIEVmZmljaWVudCBRdWFudGl6YXRpb24gb2YgU3Bl
ZWNoIExTUCBQYXJhbWV0ZXJzIFVzaW5nIFN0cnVjdHVyZWQgVmVjdG9yIFF1YW50aXphdGlvbgor
PC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IlIuTC4iIHN1cm5hbWU9Ikxhcm9pYSIgZnVsbG5h
bWU9IlIuIj4KKzxvcmdhbml6YXRpb24vPgorPC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJO
LlAuIiBzdXJuYW1lPSJQaGFtZG8iIGZ1bGxuYW1lPSJOLiI+Cis8b3JnYW5pemF0aW9uLz4KKzwv
YXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0iTi5GLiIgc3VybmFtZT0iRmFydmFyZGluIiBmdWxs
bmFtZT0iTi4iPgorPG9yZ2FuaXphdGlvbi8+Cis8L2F1dGhvcj4KKzwvZnJvbnQ+Cis8c2VyaWVz
SW5mbyBuYW1lPSJJQ0FTU1AtMTk5MSwgUHJvYy4gSUVFRSBJbnQuIENvbmYuIEFjb3VzdC4sIFNw
ZWVjaCwgU2lnbmFsIFByb2Nlc3NpbmcsIHBwLiA2NDEtNjQ0LCBPY3RvYmVyIiB2YWx1ZT0iMTk5
MSIvPgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSdDRUxUJyB0YXJnZXQ9J2h0
dHA6Ly9jZWx0LWNvZGVjLm9yZy8nPgorPGZyb250PgorPHRpdGxlPkNvbnN0cmFpbmVkLUVuZXJn
eSBMYXBwZWQgVHJhbnNmb3JtIChDRUxUKSBDb2RlYzwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxz
PSdKLU0uJyBzdXJuYW1lPSdWYWxpbicgZnVsbG5hbWU9J0otTS4gVmFsaW4nPgorPG9yZ2FuaXph
dGlvbiAvPjwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0nVCYjeDJFO0IuJyBzdXJuYW1lPSdU
ZXJyaWJlcnJ5JyBmdWxsbmFtZT0nVGltb3RoeSBCLiBUZXJyaWJlcnJ5Jz4KKzxvcmdhbml6YXRp
b24gLz48L2F1dGhvcj4KKzxhdXRob3IgaW5pdGlhbHM9J0cuJyBzdXJuYW1lPSdNYXh3ZWxsJyBm
dWxsbmFtZT0nRy4gTWF4d2VsbCc+Cis8b3JnYW5pemF0aW9uIC8+PC9hdXRob3I+Cis8YXV0aG9y
IGluaXRpYWxzPSdDLicgc3VybmFtZT0nTW9udGdvbWVyeScgZnVsbG5hbWU9J0MuIE1vbnRnb21l
cnknPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGRhdGUgeWVhcj0nMjAxMCcgbW9udGg9
J0p1bHknIC8+Cis8YWJzdHJhY3Q+Cis8dD48L3Q+Cis8L2Fic3RyYWN0PjwvZnJvbnQ+Cis8c2Vy
aWVzSW5mbyBuYW1lPSdJbnRlcm5ldC1EcmFmdCcgdmFsdWU9J2RyYWZ0LXZhbGluLWNlbHQtY29k
ZWMtMDInIC8+Cis8Zm9ybWF0IHR5cGU9J1RYVCcgdGFyZ2V0PSdodHRwOi8vdG9vbHMuaWV0Zi5v
cmcvaHRtbC9kcmFmdC12YWxpbi1jZWx0LWNvZGVjLTAyJyAvPgorPC9yZWZlcmVuY2U+CisKKzxy
ZWZlcmVuY2UgYW5jaG9yPSdTUlRQLVZCUic+Cis8ZnJvbnQ+Cis8dGl0bGU+R3VpZGVsaW5lcyBm
b3IgdGhlIHVzZSBvZiBWYXJpYWJsZSBCaXQgUmF0ZSBBdWRpbyB3aXRoIFNlY3VyZSBSVFA8L3Rp
dGxlPgorPGF1dGhvciBpbml0aWFscz0nQy4nIHN1cm5hbWU9J1BlcmtpbnMnIGZ1bGxuYW1lPSdL
LiBWb3MnPgorPG9yZ2FuaXphdGlvbiAvPjwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0nSi5N
Licgc3VybmFtZT0nVmFsaW4nIGZ1bGxuYW1lPSdKLk0uIFZhbGluJz4KKzxvcmdhbml6YXRpb24g
Lz48L2F1dGhvcj4KKzxkYXRlIHllYXI9JzIwMTEnIG1vbnRoPSdKdWx5JyAvPgorPGFic3RyYWN0
PgorPHQ+PC90PgorPC9hYnN0cmFjdD48L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0nUkZDJyB2
YWx1ZT0nNjU2MicgLz4KKzxmb3JtYXQgdHlwZT0nVFhUJyB0YXJnZXQ9J2h0dHA6Ly90b29scy5p
ZXRmLm9yZy9odG1sL3JmYzY1NjInIC8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNo
b3I9J0RPUyc+Cis8ZnJvbnQ+Cis8dGl0bGU+SW50ZXJuZXQgRGVuaWFsLW9mLVNlcnZpY2UgQ29u
c2lkZXJhdGlvbnM8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0nTS4nIHN1cm5hbWU9J0hhbmRs
ZXknIGZ1bGxuYW1lPSdNLiBIYW5kbGV5Jz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxh
dXRob3IgaW5pdGlhbHM9J0UuJyBzdXJuYW1lPSdSZXNjb3JsYScgZnVsbG5hbWU9J0UuIFJlc2Nv
cmxhJz4KKzxvcmdhbml6YXRpb24gLz48L2F1dGhvcj4KKzxhdXRob3I+Cis8b3JnYW5pemF0aW9u
PklBQjwvb3JnYW5pemF0aW9uPjwvYXV0aG9yPgorPGRhdGUgeWVhcj0nMjAwNicgbW9udGg9J0Rl
Y2VtYmVyJyAvPgorPGFic3RyYWN0PgorPHQ+VGhpcyBkb2N1bWVudCBwcm92aWRlcyBhbiBvdmVy
dmlldyBvZiBwb3NzaWJsZSBhdmVudWVzIGZvciBkZW5pYWwtb2Ytc2VydmljZSAoRG9TKSBhdHRh
Y2sgb24gSW50ZXJuZXQgc3lzdGVtcy4gIFRoZSBhaW0gaXMgdG8gZW5jb3VyYWdlIHByb3RvY29s
IGRlc2lnbmVycyBhbmQgbmV0d29yayBlbmdpbmVlcnMgdG93YXJkcyBkZXNpZ25zIHRoYXQgYXJl
IG1vcmUgcm9idXN0LiAgV2UgZGlzY3VzcyBwYXJ0aWFsIHNvbHV0aW9ucyB0aGF0IHJlZHVjZSB0
aGUgZWZmZWN0aXZlbmVzcyBvZiBhdHRhY2tzLCBhbmQgaG93IHNvbWUgc29sdXRpb25zIG1pZ2h0
IGluYWR2ZXJ0ZW50bHkgb3BlbiB1cCBhbHRlcm5hdGl2ZSB2dWxuZXJhYmlsaXRpZXMuICBUaGlz
IG1lbW8gcHJvdmlkZXMgaW5mb3JtYXRpb24gZm9yIHRoZSBJbnRlcm5ldCBjb21tdW5pdHkuPC90
PjwvYWJzdHJhY3Q+PC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9J1JGQycgdmFsdWU9JzQ3MzIn
IC8+Cis8Zm9ybWF0IHR5cGU9J1RYVCcgb2N0ZXRzPSc5MTg0NCcgdGFyZ2V0PSdmdHA6Ly9mdHAu
aXNpLmVkdS9pbi1ub3Rlcy9yZmM0NzMyLnR4dCcgLz4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJl
bmNlIGFuY2hvcj0iTWFydGluNzkiPgorPGZyb250PgorPHRpdGxlPlJhbmdlIGVuY29kaW5nOiBB
biBhbGdvcml0aG0gZm9yIHJlbW92aW5nIHJlZHVuZGFuY3kgZnJvbSBhIGRpZ2l0aXNlZCBtZXNz
YWdlPC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IkcuTi5OLiIgc3VybmFtZT0iTWFydGluIiBm
dWxsbmFtZT0iRy4gTmlnZWwgTi4gTWFydGluIj48b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzxk
YXRlIHllYXI9IjE5NzkiIC8+Cis8L2Zyb250PgorPHNlcmllc0luZm8gbmFtZT0iUHJvYy4gSW5z
dGl0dXRpb24gb2YgRWxlY3Ryb25pYyBhbmQgUmFkaW8gRW5naW5lZXJzIEludGVybmF0aW9uYWwg
Q29uZmVyZW5jZSBvbiBWaWRlbyBhbmQgRGF0YSBSZWNvcmRpbmciIHZhbHVlPSIiIC8+Cis8L3Jl
ZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9ImNvZGluZy10aGVzaXMiPgorPGZyb250Pgor
PHRpdGxlPlNvdXJjZSBjb2RpbmcgYWxnb3JpdGhtcyBmb3IgZmFzdCBkYXRhIGNvbXByZXNzaW9u
PC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IlIuIiBzdXJuYW1lPSJQYXNjbyIgZnVsbG5hbWU9
IiI+PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8ZGF0ZSBtb250aD0iTWF5IiB5ZWFyPSIxOTc2
IiAvPgorPC9mcm9udD4KKzxzZXJpZXNJbmZvIG5hbWU9IlBoLkQuIHRoZXNpcyIgdmFsdWU9IkRl
cHQuIG9mIEVsZWN0cmljYWwgRW5naW5lZXJpbmcsIFN0YW5mb3JkIFVuaXZlcnNpdHkiIC8+Cis8
L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IlBWUSI+Cis8ZnJvbnQ+Cis8dGl0bGU+
QSBQeXJhbWlkIFZlY3RvciBRdWFudGl6ZXI8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0iVC4i
IHN1cm5hbWU9IkZpc2NoZXIiIGZ1bGxuYW1lPSIiPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgor
PGRhdGUgbW9udGg9Ikp1bHkiIHllYXI9IjE5ODYiIC8+Cis8L2Zyb250PgorPHNlcmllc0luZm8g
bmFtZT0iSUVFRSBUcmFucy4gb24gSW5mb3JtYXRpb24gVGhlb3J5LCBWb2wuIDMyIiB2YWx1ZT0i
cHAuIDU2OC01ODMiIC8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IkthYmFs
ODYiPgorPGZyb250PgorPHRpdGxlPlRoZSBDb21wdXRhdGlvbiBvZiBMaW5lIFNwZWN0cmFsIEZy
ZXF1ZW5jaWVzIFVzaW5nIENoZWJ5c2hldiBQb2x5bm9taWFsczwvdGl0bGU+Cis8YXV0aG9yIGlu
aXRpYWxzPSJQLiIgc3VybmFtZT0iS2FiYWwiIGZ1bGxuYW1lPSJQLiBLYWJhbCI+PG9yZ2FuaXph
dGlvbi8+PC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJSLiIgc3VybmFtZT0iUmFtYWNoYW5k
cmFuIiBmdWxsbmFtZT0iUi4gUC4gUmFtYWNoYW5kcmFuIj48b3JnYW5pemF0aW9uLz48L2F1dGhv
cj4KKzxkYXRlIG1vbnRoPSJEZWNlbWJlciIgeWVhcj0iMTk4NiIgLz4KKzwvZnJvbnQ+Cis8c2Vy
aWVzSW5mbyBuYW1lPSJJRUVFIFRyYW5zLiBBY291c3RpY3MsIFNwZWVjaCwgU2lnbmFsIFByb2Nl
c3NpbmcsIHZvbC4gMzQsIG5vLiA2IiB2YWx1ZT0icHAuIDE0MTktMTQyNiIgLz4KKzwvcmVmZXJl
bmNlPgorCisKKzxyZWZlcmVuY2UgYW5jaG9yPSJWYWxncmluZCIgdGFyZ2V0PSJodHRwOi8vdmFs
Z3JpbmQub3JnLyI+Cis8ZnJvbnQ+Cis8dGl0bGU+VmFsZ3JpbmQgd2Vic2l0ZTwvdGl0bGU+Cis8
YXV0aG9yPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFu
Y2hvcj0iR29vZ2xlLU5ldEVRIiB0YXJnZXQ9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC93ZWJy
dGMvc291cmNlL2Jyb3dzZS90cnVuay9zcmMvbW9kdWxlcy9hdWRpb19jb2RpbmcvTmV0RVEvbWFp
bi9zb3VyY2UvP3I9NTgzIj4KKzxmcm9udD4KKzx0aXRsZT5Hb29nbGUgTmV0RVEgY29kZTwvdGl0
bGU+Cis8YXV0aG9yPjwvYXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJl
bmNlIGFuY2hvcj0iR29vZ2xlLVdlYlJUQyIgdGFyZ2V0PSJodHRwOi8vY29kZS5nb29nbGUuY29t
L3Avd2VicnRjLyI+Cis8ZnJvbnQ+Cis8dGl0bGU+R29vZ2xlIFdlYlJUQyBjb2RlPC90aXRsZT4K
KzxhdXRob3I+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKworPHJlZmVyZW5j
ZSBhbmNob3I9Ik9wdXMtZ2l0IiB0YXJnZXQ9ImdpdDovL2dpdC54aXBoLm9yZy9vcHVzLmdpdCI+
Cis8ZnJvbnQ+Cis8dGl0bGU+T3B1cyBHaXQgUmVwb3NpdG9yeTwvdGl0bGU+Cis8YXV0aG9yPjwv
YXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iT3B1
cy13ZWJzaXRlIiB0YXJnZXQ9Imh0dHA6Ly9vcHVzLWNvZGVjLm9yZy8iPgorPGZyb250PgorPHRp
dGxlPk9wdXMgd2Vic2l0ZTwvdGl0bGU+Cis8YXV0aG9yPjwvYXV0aG9yPgorPC9mcm9udD4KKzwv
cmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iVm9yYmlzLXdlYnNpdGUiIHRhcmdldD0i
aHR0cDovL3hpcGgub3JnL3ZvcmJpcy8iPgorPGZyb250PgorPHRpdGxlPlZvcmJpcyB3ZWJzaXRl
PC90aXRsZT4KKzxhdXRob3I+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxy
ZWZlcmVuY2UgYW5jaG9yPSJNYXRyb3NrYS13ZWJzaXRlIiB0YXJnZXQ9Imh0dHA6Ly9tYXRyb3Nr
YS5vcmcvIj4KKzxmcm9udD4KKzx0aXRsZT5NYXRyb3NrYSB3ZWJzaXRlPC90aXRsZT4KKzxhdXRo
b3I+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9y
PSJWZWN0b3JzLXdlYnNpdGUiIHRhcmdldD0iaHR0cDovL29wdXMtY29kZWMub3JnL3Rlc3R2ZWN0
b3JzLyI+Cis8ZnJvbnQ+Cis8dGl0bGU+T3B1cyBUZXN0dmVjdG9ycyAod2Vic2lkZSk8L3RpdGxl
PgorPGF1dGhvcj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5j
ZSBhbmNob3I9IlZlY3RvcnMtcHJvYyIgdGFyZ2V0PSJodHRwOi8vd3d3LmlldGYub3JnL3Byb2Nl
ZWRpbmdzLzgzL3NsaWRlcy9zbGlkZXMtODMtY29kZWMtMC5neiI+Cis8ZnJvbnQ+Cis8dGl0bGU+
T3B1cyBUZXN0dmVjdG9ycyAocHJvY2VlZGluZ3MpPC90aXRsZT4KKzxhdXRob3I+PC9hdXRob3I+
Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJsaW5lLXNwZWN0
cmFsLXBhaXJzIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvTGluZV9zcGVj
dHJhbF9wYWlycyI+Cis8ZnJvbnQ+Cis8dGl0bGU+TGluZSBTcGVjdHJhbCBQYWlyczwvdGl0bGU+
Cis8YXV0aG9yPjxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+PC9hdXRob3I+
Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJyYW5nZS1jb2Rp
bmciIHRhcmdldD0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9SYW5nZV9jb2RpbmciPgor
PGZyb250PgorPHRpdGxlPlJhbmdlIENvZGluZzwvdGl0bGU+Cis8YXV0aG9yPjxvcmdhbml6YXRp
b24+V2lraXBlZGlhPC9vcmdhbml6YXRpb24+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVu
Y2U+CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJIYWRhbWFyZCIgdGFyZ2V0PSJodHRwOi8vZW4ud2lr
aXBlZGlhLm9yZy93aWtpL0hhZGFtYXJkX3RyYW5zZm9ybSI+Cis8ZnJvbnQ+Cis8dGl0bGU+SGFk
YW1hcmQgVHJhbnNmb3JtPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8
L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVy
ZW5jZSBhbmNob3I9IlZpdGVyYmkiIHRhcmdldD0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lr
aS9WaXRlcmJpX2FsZ29yaXRobSI+Cis8ZnJvbnQ+Cis8dGl0bGU+Vml0ZXJiaSBBbGdvcml0aG08
L3RpdGxlPgorPGF1dGhvcj48b3JnYW5pemF0aW9uPldpa2lwZWRpYTwvb3JnYW5pemF0aW9uPjwv
YXV0aG9yPgorPC9mcm9udD4KKzwvcmVmZXJlbmNlPgorCis8cmVmZXJlbmNlIGFuY2hvcj0iV2hp
dGVuaW5nIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvV2hpdGVfbm9pc2Ui
PgorPGZyb250PgorPHRpdGxlPldoaXRlIE5vaXNlPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXph
dGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVy
ZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IkxQQyIgdGFyZ2V0PSJodHRwOi8vZW4ud2lraXBl
ZGlhLm9yZy93aWtpL0xpbmVhcl9wcmVkaWN0aW9uIj4KKzxmcm9udD4KKzx0aXRsZT5MaW5lYXIg
UHJlZGljdGlvbjwvdGl0bGU+Cis8YXV0aG9yPjxvcmdhbml6YXRpb24+V2lraXBlZGlhPC9vcmdh
bml6YXRpb24+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2Ug
YW5jaG9yPSJNRENUIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvTW9kaWZp
ZWRfZGlzY3JldGVfY29zaW5lX3RyYW5zZm9ybSI+Cis8ZnJvbnQ+Cis8dGl0bGU+TW9kaWZpZWQg
RGlzY3JldGUgQ29zaW5lIFRyYW5zZm9ybTwvdGl0bGU+Cis8YXV0aG9yPjxvcmdhbml6YXRpb24+
V2lraXBlZGlhPC9vcmdhbml6YXRpb24+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+
CisKKzxyZWZlcmVuY2UgYW5jaG9yPSJGRlQiIHRhcmdldD0iaHR0cDovL2VuLndpa2lwZWRpYS5v
cmcvd2lraS9GYXN0X0ZvdXJpZXJfdHJhbnNmb3JtIj4KKzxmcm9udD4KKzx0aXRsZT5GYXN0IEZv
dXJpZXIgVHJhbnNmb3JtPC90aXRsZT4KKzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8
L29yZ2FuaXphdGlvbj48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVy
ZW5jZSBhbmNob3I9InotdHJhbnNmb3JtIiB0YXJnZXQ9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3Jn
L3dpa2kvWi10cmFuc2Zvcm0iPgorPGZyb250PgorPHRpdGxlPlotdHJhbnNmb3JtPC90aXRsZT4K
KzxhdXRob3I+PG9yZ2FuaXphdGlvbj5XaWtpcGVkaWE8L29yZ2FuaXphdGlvbj48L2F1dGhvcj4K
KzwvZnJvbnQ+Cis8L3JlZmVyZW5jZT4KKworCis8cmVmZXJlbmNlIGFuY2hvcj0iQnVyZyI+Cis8
ZnJvbnQ+Cis8dGl0bGU+TWF4aW11bSBFbnRyb3B5IFNwZWN0cmFsIEFuYWx5c2lzPC90aXRsZT4K
KzxhdXRob3IgaW5pdGlhbHM9IkpQLiIgc3VybmFtZT0iQnVyZyIgZnVsbG5hbWU9IkouUC4gQnVy
ZyI+PG9yZ2FuaXphdGlvbi8+PC9hdXRob3I+Cis8L2Zyb250PgorPC9yZWZlcmVuY2U+CisKKzxy
ZWZlcmVuY2UgYW5jaG9yPSJTY2h1ciI+Cis8ZnJvbnQ+Cis8dGl0bGU+QSBmaXhlZCBwb2ludCBj
b21wdXRhdGlvbiBvZiBwYXJ0aWFsIGNvcnJlbGF0aW9uIGNvZWZmaWNpZW50czwvdGl0bGU+Cis8
YXV0aG9yIGluaXRpYWxzPSJKLiIgc3VybmFtZT0iTGUgUm91eCIgZnVsbG5hbWU9IkouIExlIFJv
dXgiPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPGF1dGhvciBpbml0aWFscz0iQy4iIHN1cm5h
bWU9Ikd1ZWd1ZW4iIGZ1bGxuYW1lPSJDLiBHdWVndWVuIj48b3JnYW5pemF0aW9uLz48L2F1dGhv
cj4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJJQ0FTU1AtMTk3NywgUHJvYy4gSUVFRSBJ
bnQuIENvbmYuIEFjb3VzdC4sIFNwZWVjaCwgU2lnbmFsIFByb2Nlc3NpbmcsIHBwLiAyNTctMjU5
LCBPY3RvYmVyIiB2YWx1ZT0iMTk3NyIvPgorPC9yZWZlcmVuY2U+CisKKzxyZWZlcmVuY2UgYW5j
aG9yPSJQcmluY2VuODYiPgorPGZyb250PgorPHRpdGxlPkFuYWx5c2lzL3N5bnRoZXNpcyBmaWx0
ZXIgYmFuayBkZXNpZ24gYmFzZWQgb24gdGltZSBkb21haW4gYWxpYXNpbmcgY2FuY2VsbGF0aW9u
PC90aXRsZT4KKzxhdXRob3IgaW5pdGlhbHM9IkouIiBzdXJuYW1lPSJQcmluY2VuIiBmdWxsbmFt
ZT0iSm9obiBQLiBQcmluY2VuIj48b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzxhdXRob3IgaW5p
dGlhbHM9IkEuIiBzdXJuYW1lPSJCcmFkbGV5IiBmdWxsbmFtZT0iQWxhbiBCLiBCcmFkbGV5Ij48
b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJJRUVF
IFRyYW5zLiBBY291c3QuIFNwZWVjaCBTaWcuIFByb2MuIEFTU1AtMzQgKDUpLCAxMTUzLTExNjEi
IHZhbHVlPSIxOTg2Ii8+Cis8L3JlZmVyZW5jZT4KKworPHJlZmVyZW5jZSBhbmNob3I9IlZhbGlu
MjAxMCI+Cis8ZnJvbnQ+Cis8dGl0bGU+QSBIaWdoLVF1YWxpdHkgU3BlZWNoIGFuZCBBdWRpbyBD
b2RlYyBXaXRoIExlc3MgVGhhbiAxMCBtcyBkZWxheTwvdGl0bGU+Cis8YXV0aG9yIGluaXRpYWxz
PSJKTSIgc3VybmFtZT0iVmFsaW4iIGZ1bGxuYW1lPSJKZWFuLU1hcmMgVmFsaW4iPjxvcmdhbml6
YXRpb24vPgorPC9hdXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJULiBCLiIgc3VybmFtZT0iVGVy
cmliZXJyeSIgZnVsbG5hbWU9IlRpbW90aHkgVGVycmliZXJyeSI+PG9yZ2FuaXphdGlvbi8+PC9h
dXRob3I+Cis8YXV0aG9yIGluaXRpYWxzPSJDLiIgc3VybmFtZT0iTW9udGdvbWVyeSIgZnVsbG5h
bWU9IkNocmlzdG9waGVyIE1vbnRnb21lcnkiPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPGF1
dGhvciBpbml0aWFscz0iRy4iIHN1cm5hbWU9Ik1heHdlbGwiIGZ1bGxuYW1lPSJHcmVnb3J5IE1h
eHdlbGwiPjxvcmdhbml6YXRpb24vPjwvYXV0aG9yPgorPC9mcm9udD4KKzxzZXJpZXNJbmZvIG5h
bWU9IklFRUUgVHJhbnMuIG9uIEF1ZGlvLCBTcGVlY2ggYW5kIExhbmd1YWdlIFByb2Nlc3Npbmcs
IFZvbC4gMTgsIE5vLiAxLCBwcC4gNTgtNjciIHZhbHVlPSIyMDEwIiAvPgorPC9yZWZlcmVuY2U+
CisKKworPHJlZmVyZW5jZSBhbmNob3I9Ilp3aWNrZXI2MSI+Cis8ZnJvbnQ+Cis8dGl0bGU+U3Vi
ZGl2aXNpb24gb2YgdGhlIGF1ZGlibGUgZnJlcXVlbmN5IHJhbmdlIGludG8gY3JpdGljYWwgYmFu
ZHM8L3RpdGxlPgorPGF1dGhvciBpbml0aWFscz0iRS4iIHN1cm5hbWU9Ilp3aWNrZXIiIGZ1bGxu
YW1lPSJFLiBad2lja2VyIj48b3JnYW5pemF0aW9uLz48L2F1dGhvcj4KKzxkYXRlIG1vbnRoPSJG
ZWJydWFyeSIgeWVhcj0iMTk2MSIgLz4KKzwvZnJvbnQ+Cis8c2VyaWVzSW5mbyBuYW1lPSJUaGUg
Sm91cm5hbCBvZiB0aGUgQWNvdXN0aWNhbCBTb2NpZXR5IG9mIEFtZXJpY2EsIFZvbC4gMzMsIE5v
IDIiIHZhbHVlPSJwLiAyNDgiIC8+Cis8L3JlZmVyZW5jZT4KKworCis8L3JlZmVyZW5jZXM+CisK
KzxzZWN0aW9uIGFuY2hvcj0icmVmLWltcGxlbWVudGF0aW9uIiB0aXRsZT0iUmVmZXJlbmNlIElt
cGxlbWVudGF0aW9uIj4KKworPHQ+VGhpcyBhcHBlbmRpeCBjb250YWlucyB0aGUgY29tcGxldGUg
c291cmNlIGNvZGUgZm9yIHRoZQorcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIG9mIHRoZSBPcHVz
IGNvZGVjIHdyaXR0ZW4gaW4gQy4gQnkgZGVmYXVsdCwKK3RoaXMgaW1wbGVtZW50YXRpb24gcmVs
aWVzIG9uIGZsb2F0aW5nLXBvaW50IGFyaXRobWV0aWMsIGJ1dCBpdCBjYW4gYmUKK2NvbXBpbGVk
IHRvIHVzZSBvbmx5IGZpeGVkLXBvaW50IGFyaXRobWV0aWMgYnkgZGVmaW5pbmcgdGhlIEZJWEVE
X1BPSU5UCittYWNyby4gSW5mb3JtYXRpb24gb24gYnVpbGRpbmcgYW5kIHVzaW5nIHRoZSByZWZl
cmVuY2UgaW1wbGVtZW50YXRpb24gaXMKK2F2YWlsYWJsZSBpbiB0aGUgUkVBRE1FIGZpbGUuCis8
L3Q+CisKKzx0PlRoZSBpbXBsZW1lbnRhdGlvbiBjYW4gYmUgY29tcGlsZWQgd2l0aCBlaXRoZXIg
YSBDODkgb3IgYSBDOTkKK2NvbXBpbGVyLiBJdCBpcyByZWFzb25hYmx5IG9wdGltaXplZCBmb3Ig
bW9zdCBwbGF0Zm9ybXMgc3VjaCB0aGF0Citvbmx5IGFyY2hpdGVjdHVyZS1zcGVjaWZpYyBvcHRp
bWl6YXRpb25zIGFyZSBsaWtlbHkgdG8gYmUgdXNlZnVsLgorVGhlIEZGVCA8eHJlZiB0YXJnZXQ9
IkZGVCIvPiB1c2VkIGlzIGEgc2xpZ2h0bHkgbW9kaWZpZWQgdmVyc2lvbiBvZiB0aGUgS0lTUy1G
RlQgbGlicmFyeSwKK2J1dCBpdCBpcyBlYXN5IHRvIHN1YnN0aXR1dGUgYW55IG90aGVyIEZGVCBs
aWJyYXJ5LgorPC90PgorCis8dD4KK1doaWxlIHRoZSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24g
ZG9lcyBub3QgcmVseSBvbiBhbnkKKzxzcGFueCBzdHlsZT0iZW1waCI+dW5kZWZpbmVkIGJlaGF2
aW9yPC9zcGFueD4gYXMgZGVmaW5lZCBieSBDODkgb3IgQzk5LAoraXQgcmVsaWVzIG9uIGNvbW1v
biA8c3Bhbnggc3R5bGU9ImVtcGgiPmltcGxlbWVudGF0aW9uLWRlZmluZWQgYmVoYXZpb3I8L3Nw
YW54PgorZm9yIHR3bydzIGNvbXBsZW1lbnQgYXJjaGl0ZWN0dXJlczoKKzxsaXN0IHN0eWxlPSJz
eW1ib2xzIj4KKzx0PlJpZ2h0IHNoaWZ0cyBvZiBuZWdhdGl2ZSB2YWx1ZXMgYXJlIGNvbnNpc3Rl
bnQgd2l0aCB0d28ncyBjb21wbGVtZW50IGFyaXRobWV0aWMsIHNvIHRoYXQgYT4+YiBpcyBlcXVp
dmFsZW50IHRvIGZsb29yKGEvKDIqKmIpKSw8L3Q+Cis8dD5Gb3IgY29udmVyc2lvbiB0byBhIHNp
Z25lZCBpbnRlZ2VyIG9mIE4gYml0cywgdGhlIHZhbHVlIGlzIHJlZHVjZWQgbW9kdWxvIDIqKk4g
dG8gYmUgd2l0aGluIHJhbmdlIG9mIHRoZSB0eXBlLDwvdD4KKzx0PlRoZSByZXN1bHQgb2YgaW50
ZWdlciBkaXZpc2lvbiBvZiBhIG5lZ2F0aXZlIHZhbHVlIGlzIHRydW5jYXRlZCB0b3dhcmRzIHpl
cm8sIGFuZDwvdD4KKzx0PlRoZSBjb21waWxlciBwcm92aWRlcyBhIDY0LWJpdCBpbnRlZ2VyIHR5
cGUgKGEgQzk5IHJlcXVpcmVtZW50IHdoaWNoIGlzIHN1cHBvcnRlZCBieSBtb3N0IEM4OSBjb21w
aWxlcnMpLjwvdD4KKzwvbGlzdD4KKzwvdD4KKworPHQ+CitJbiBpdHMgY3VycmVudCBmb3JtLCB0
aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGFsc28gcmVxdWlyZXMgdGhlIGZvbGxvd2luZwor
YXJjaGl0ZWN0dXJhbCBjaGFyYWN0ZXJpc3RpY3MgdG8gb2J0YWluIGFjY2VwdGFibGUgcGVyZm9y
bWFuY2U6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+Cis8dD5Ud28ncyBjb21wbGVtZW50IGFyaXRo
bWV0aWMsPC90PgorPHQ+QXQgbGVhc3QgYSAxNiBiaXQgYnkgMTYgYml0IGludGVnZXIgbXVsdGlw
bGllciAoMzItYml0IHJlc3VsdCksIGFuZDwvdD4KKzx0PkF0IGxlYXN0IGEgMzItYml0IGFkZGVy
L2FjY3VtdWxhdG9yLjwvdD4KKzwvbGlzdD4KKzwvdD4KKworCis8c2VjdGlvbiB0aXRsZT0iRXh0
cmFjdGluZyB0aGUgc291cmNlIj4KKzx0PgorVGhlIGNvbXBsZXRlIHNvdXJjZSBjb2RlIGNhbiBi
ZSBleHRyYWN0ZWQgZnJvbSB0aGlzIGRyYWZ0LCBieSBydW5uaW5nIHRoZQorZm9sbG93aW5nIGNv
bW1hbmQgbGluZToKKworPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+PCFbQ0RBVEFbCitjYXQg
ZHJhZnQtaWV0Zi1jb2RlYy1vcHVzLnR4dCB8IGdyZXAgJ15cIFwgXCAjIyMnIHwgc2VkIC1lICdz
Ly4uLiMjIy8vJyB8IGJhc2U2NCAtZCA+IG9wdXNfc291cmNlLnRhci5negorXV0+PC90PgorPHQ+
Cit0YXIgeHp2ZiBvcHVzX3NvdXJjZS50YXIuZ3oKKzwvdD4KKzx0PmNkIG9wdXNfc291cmNlPC90
PgorPHQ+bWFrZTwvdD4KKzwvbGlzdD4KK09uIHN5c3RlbXMgd2hlcmUgdGhlIHByb3ZpZGVkIE1h
a2VmaWxlIGRvZXMgbm90IHdvcmssIHRoZSBmb2xsb3dpbmcgY29tbWFuZCBsaW5lIG1heSBiZSB1
c2VkIHRvIGNvbXBpbGUKK3RoZSBzb3VyY2UgY29kZToKKzxsaXN0IHN0eWxlPSJzeW1ib2xzIj4K
Kzx0PjwhW0NEQVRBWworY2MgLU8yIC1nIC1vIG9wdXNfZGVtbyBzcmMvb3B1c19kZW1vLmMgYGNh
dCAqLm1rIHwgZ3JlcCAtdiBmaXhlZCB8IHNlZCAtZSAncy8uKj0vLycgLWUgJ3MvXFxcXC8vJ2Ag
LURPUFVTX0JVSUxEIC1JaW5jbHVkZSAtSWNlbHQgLUlzaWxrIC1Jc2lsay9mbG9hdCAtRFVTRV9B
TExPQ0EgLURyZXN0cmljdD0gLWxtCitdXT48L3Q+PC9saXN0PgorPC90PgorCis8dD4KK09uIHN5
c3RlbXMgd2hlcmUgdGhlIGJhc2U2NCB1dGlsaXR5IGlzIG5vdCBwcmVzZW50LCB0aGUgZm9sbG93
aW5nIGNvbW1hbmRzIGNhbiBiZSB1c2VkIGluc3RlYWQ6Cis8bGlzdCBzdHlsZT0ic3ltYm9scyI+
Cis8dD48IVtDREFUQVsKK2NhdCBkcmFmdC1pZXRmLWNvZGVjLW9wdXMudHh0IHwgZ3JlcCAnXlwg
XCBcICMjIycgfCBzZWQgLWUgJ3MvLi4uIyMjLy8nID4gb3B1cy5iNjQKK11dPjwvdD4KKzx0Pm9w
ZW5zc2wgYmFzZTY0IC1kIC1pbiBvcHVzLmI2NCA+IG9wdXNfc291cmNlLnRhci5nejwvdD4KKzwv
bGlzdD4KKworPC90PgorPC9zZWN0aW9uPgorCis8c2VjdGlvbiB0aXRsZT0iVXAtdG8tZGF0ZSBJ
bXBsZW1lbnRhdGlvbiI+Cis8dD4KK0FzIG9mIHRoZSB0aW1lIG9mIHB1YmxpY2F0aW9uIG9mIHRo
aXMgbWVtbywgYW4gdXAtdG8tZGF0ZSBpbXBsZW1lbnRhdGlvbiBjb25mb3JtaW5nIHRvCit0aGlz
IHN0YW5kYXJkIGlzIGF2YWlsYWJsZSBpbiBhCisgPHhyZWYgdGFyZ2V0PSdPcHVzLWdpdCc+R2l0
IHJlcG9zaXRvcnk8L3hyZWY+LgorUmVsZWFzZXMgYW5kIG90aGVyIHJlc291cmNlcyBhcmUgYXZh
aWxhYmxlIGF0CisgPHhyZWYgdGFyZ2V0PSdPcHVzLXdlYnNpdGUnLz4uIEhvd2V2ZXIsIGFsdGhv
dWdoIHRoYXQgaW1wbGVtZW50YXRpb24gaXMgZXhwZWN0ZWQgdG8KKyByZW1haW4gY29uZm9ybWFu
dCB3aXRoIHRoZSBzdGFuZGFyZCwgaXQgaXMgdGhlIGNvZGUgaW4gdGhpcyBkb2N1bWVudCB0aGF0
IHNoYWxsCisgcmVtYWluIG5vcm1hdGl2ZS4KKzwvdD4KKzwvc2VjdGlvbj4KKworPHNlY3Rpb24g
dGl0bGU9IkJhc2U2NC1lbmNvZGVkIFNvdXJjZSBDb2RlIj4KKzx0PgorPD9yZmMgaW5jbHVkZT0i
b3B1c19zb3VyY2UuYmFzZTY0Ij8+Cis8L3Q+Cis8L3NlY3Rpb24+CisKKzxzZWN0aW9uIGFuY2hv
cj0idGVzdC12ZWN0b3JzIiB0aXRsZT0iVGVzdCBWZWN0b3JzIj4KKzx0PgorQmVjYXVzZSBvZiBz
aXplIGNvbnN0cmFpbnRzLCB0aGUgT3B1cyB0ZXN0IHZlY3RvcnMgYXJlIG5vdCBkaXN0cmlidXRl
ZCBpbiB0aGlzCitkcmFmdC4gVGhleSBhcmUgYXZhaWxhYmxlIGluIHRoZSBwcm9jZWVkaW5ncyBv
ZiB0aGUgODN0aCBJRVRGIG1lZXRpbmcgKFBhcmlzKSA8eHJlZiB0YXJnZXQ9IlZlY3RvcnMtcHJv
YyIvPiBhbmQgZnJvbSB0aGUgT3B1cyBjb2RlYyB3ZWJzaXRlIGF0Cis8eHJlZiB0YXJnZXQ9IlZl
Y3RvcnMtd2Vic2l0ZSIvPi4gVGhlc2UgdGVzdCB2ZWN0b3JzIHdlcmUgY3JlYXRlZCBzcGVjaWZp
Y2FsbHkgdG8gZXhlcmNpc2UKK2FsbCBhc3BlY3RzIG9mIHRoZSBkZWNvZGVyIGFuZCB0aGVyZWZv
cmUgdGhlIGF1ZGlvIHF1YWxpdHkgb2YgdGhlIGRlY29kZWQgb3V0cHV0IGlzCitzaWduaWZpY2Fu
dGx5IGxvd2VyIHRoYW4gd2hhdCBPcHVzIGNhbiBhY2hpZXZlIGluIG5vcm1hbCBvcGVyYXRpb24u
Cis8L3Q+CisKKzx0PgorVGhlIFNIQTEgaGFzaCBvZiB0aGUgZmlsZXMgaW4gdGhlIHRlc3QgdmVj
dG9yIHBhY2thZ2UgYXJlCis8P3JmYyBpbmNsdWRlPSJ0ZXN0dmVjdG9yc19zaGExIj8+Cis8L3Q+
CisKKzwvc2VjdGlvbj4KKworPC9zZWN0aW9uPgorCis8c2VjdGlvbiBhbmNob3I9InNlbGYtZGVs
aW1pdGluZy1mcmFtaW5nIiB0aXRsZT0iU2VsZi1EZWxpbWl0aW5nIEZyYW1pbmciPgorPHQ+CitU
byB1c2UgdGhlIGludGVybmFsIGZyYW1pbmcgZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0ibW9k
ZXMiLz4sIHRoZSBkZWNvZGVyCisgbXVzdCBrbm93IHRoZSB0b3RhbCBsZW5ndGggb2YgdGhlIE9w
dXMgcGFja2V0LCBpbiBieXRlcy4KK1RoaXMgc2VjdGlvbiBkZXNjcmliZXMgYSBzaW1wbGUgdmFy
aWF0aW9uIG9mIHRoYXQgZnJhbWluZyB3aGljaCBjYW4gYmUgdXNlZAorIHdoZW4gdGhlIHRvdGFs
IGxlbmd0aCBvZiB0aGUgcGFja2V0IGlzIG5vdCBrbm93bi4KK05vdGhpbmcgaW4gdGhlIGVuY29k
aW5nIG9mIHRoZSBwYWNrZXQgaXRzZWxmIGFsbG93cyBhIGRlY29kZXIgdG8gZGlzdGluZ3Vpc2gK
KyBiZXR3ZWVuIHRoZSByZWd1bGFyLCB1bmRlbGltaXRlZCBmcmFtaW5nIGFuZCB0aGUgc2VsZi1k
ZWxpbWl0aW5nIGZyYW1pbmcKKyBkZXNjcmliZWQgaW4gdGhpcyBhcHBlbmRpeC4KK1doaWNoIG9u
ZSBpcyB1c2VkIGFuZCB3aGVyZSBtdXN0IGJlIGVzdGFibGlzaGVkIGJ5IGNvbnRleHQgYXQgdGhl
IHRyYW5zcG9ydAorIGxheWVyLgorSXQgaXMgUkVDT01NRU5ERUQgdGhhdCBhIHRyYW5zcG9ydCBs
YXllciBjaG9vc2UgZXhhY3RseSBvbmUgZnJhbWluZyBzY2hlbWUsCisgcmF0aGVyIHRoYW4gYWxs
b3dpbmcgYW4gZW5jb2RlciB0byBzaWduYWwgd2hpY2ggb25lIGl0IHdhbnRzIHRvIHVzZS4KKzwv
dD4KKworPHQ+CitGb3IgZXhhbXBsZSwgYWx0aG91Z2ggYSByZWd1bGFyIE9wdXMgc3RyZWFtIGRv
ZXMgbm90IHN1cHBvcnQgbW9yZSB0aGFuIHR3bworIGNoYW5uZWxzLCBhIG11bHRpLWNoYW5uZWwg
T3B1cyBzdHJlYW0gbWF5IGJlIGZvcm1lZCBmcm9tIHNldmVyYWwgb25lLSBhbmQKKyB0d28tY2hh
bm5lbCBzdHJlYW1zLgorVG8gcGFjayBhbiBPcHVzIHBhY2tldCBmcm9tIGVhY2ggb2YgdGhlc2Ug
c3RyZWFtcyB0b2dldGhlciBpbiBhIHNpbmdsZSBwYWNrZXQKKyBhdCB0aGUgdHJhbnNwb3J0IGxh
eWVyLCBvbmUgY291bGQgdXNlIHRoZSBzZWxmLWRlbGltaXRpbmcgZnJhbWluZyBmb3IgYWxsIGJ1
dAorIHRoZSBsYXN0IHN0cmVhbSwgYW5kIHRoZW4gdGhlIHJlZ3VsYXIsIHVuZGVsaW1pdGVkIGZy
YW1pbmcgZm9yIHRoZSBsYXN0IG9uZS4KK1JldmVydGluZyB0byB0aGUgdW5kZWxpbWl0ZWQgZnJh
bWluZyBmb3IgdGhlIGxhc3Qgc3RyZWFtIHNhdmVzIG92ZXJoZWFkCisgKGJlY2F1c2UgdGhlIHRv
dGFsIHNpemUgb2YgdGhlIHRyYW5zcG9ydC1sYXllciBwYWNrZXQgd2lsbCBzdGlsbCBiZSBrbm93
biksCisgYW5kIGVuc3VyZXMgdGhhdCBhICJtdWx0aS1jaGFubmVsIiBzdHJlYW0gd2hpY2ggb25s
eSBoYXMgYSBzaW5nbGUgT3B1cyBzdHJlYW0KKyB1c2VzIHRoZSBzYW1lIGZyYW1pbmcgYXMgYSBy
ZWd1bGFyIE9wdXMgc3RyZWFtIGRvZXMuCitUaGlzIGF2b2lkcyB0aGUgbmVlZCBmb3Igc2lnbmFs
aW5nIHRvIGRpc3Rpbmd1aXNoIHRoZXNlIHR3byBjYXNlcy4KKzwvdD4KKworPHQ+CitUaGUgc2Vs
Zi1kZWxpbWl0aW5nIGZyYW1pbmcgaXMgaWRlbnRpY2FsIHRvIHRoZSByZWd1bGFyLCB1bmRlbGlt
aXRlZCBmcmFtaW5nCisgZnJvbSA8eHJlZiB0YXJnZXQ9Im1vZGVzIi8+LCBleGNlcHQgdGhhdCBl
YWNoIE9wdXMgcGFja2V0IGNvbnRhaW5zIG9uZSBleHRyYQorIGxlbmd0aCBmaWVsZCwgZW5jb2Rl
ZCB1c2luZyB0aGUgc2FtZSBvbmUtIG9yIHR3by1ieXRlIHNjaGVtZSBmcm9tCisgPHhyZWYgdGFy
Z2V0PSJmcmFtZS1sZW5ndGgtY29kaW5nIi8+LgorVGhpcyBleHRyYSBsZW5ndGggaW1tZWRpYXRl
bHkgcHJlY2VkZXMgdGhlIGNvbXByZXNzZWQgZGF0YSBvZiB0aGUgZmlyc3QgT3B1cworIGZyYW1l
IGluIHRoZSBwYWNrZXQsIGFuZCBpcyBpbnRlcnByZXRlZCBpbiB0aGUgdmFyaW91cyBtb2RlcyBh
cyBmb2xsb3dzOgorPGxpc3Qgc3R5bGU9InN5bWJvbHMiPgorPHQ+CitDb2RlJm5ic3A7MCBwYWNr
ZXRzOiBJdCBpcyB0aGUgbGVuZ3RoIG9mIHRoZSBzaW5nbGUgT3B1cyBmcmFtZSAoc2VlCisgPHhy
ZWYgdGFyZ2V0PSJzZF9jb2RlMF9wYWNrZXQiLz4pLgorPC90PgorPHQ+CitDb2RlJm5ic3A7MSBw
YWNrZXRzOiBJdCBpcyB0aGUgbGVuZ3RoIHVzZWQgZm9yIGJvdGggb2YgdGhlIE9wdXMgZnJhbWVz
IChzZWUKKyA8eHJlZiB0YXJnZXQ9InNkX2NvZGUxX3BhY2tldCIvPikuCis8L3Q+Cis8dD4KK0Nv
ZGUmbmJzcDsyIHBhY2tldHM6IEl0IGlzIHRoZSBsZW5ndGggb2YgdGhlIHNlY29uZCBPcHVzIGZy
YW1lIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNkX2NvZGUyX3BhY2tldCIvPikuPC90PgorPHQ+CitD
QlIgQ29kZSZuYnNwOzMgcGFja2V0czogSXQgaXMgdGhlIGxlbmd0aCB1c2VkIGZvciBhbGwgb2Yg
dGhlIE9wdXMgZnJhbWVzIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNkX2NvZGUzY2JyX3BhY2tldCIv
PikuCis8L3Q+Cis8dD5WQlIgQ29kZSZuYnNwOzMgcGFja2V0czogSXQgaXMgdGhlIGxlbmd0aCBv
ZiB0aGUgbGFzdCBPcHVzIGZyYW1lIChzZWUKKyA8eHJlZiB0YXJnZXQ9InNkX2NvZGUzdmJyX3Bh
Y2tldCIvPikuCis8L3Q+Cis8L2xpc3Q+Cis8L3Q+CisKKzxmaWd1cmUgYW5jaG9yPSJzZF9jb2Rl
MF9wYWNrZXQiIHRpdGxlPSJBIFNlbGYtRGVsaW1pdGVkIENvZGUgMCBQYWNrZXQiCisgYWxpZ249
ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsKKyAwICAgICAgICAg
ICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAgICAzCisgMCAx
IDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMgNCA1IDYgNyA4IDkg
MCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKworfCBjb25maWcgIHxzfDB8MHwgTjEgKDEtMiBieXRlcyk6ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAgQ29tcHJl
c3NlZCBmcmFtZSAxIChOMSBieXRlcykuLi4gICAgICAgICAgICAgICAgOgorOiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzxmaWd1cmUgYW5j
aG9yPSJzZF9jb2RlMV9wYWNrZXQiIHRpdGxlPSJBIFNlbGYtRGVsaW1pdGVkIENvZGUgMSBQYWNr
ZXQiCisgYWxpZ249ImNlbnRlciI+Cis8YXJ0d29yayBhbGlnbj0iY2VudGVyIj48IVtDREFUQVsK
KyAwICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAg
ICAgICAzCisgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMg
NCA1IDYgNyA4IDkgMCAxCisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCBjb25maWcgIHxzfDB8MXwgTjEgKDEtMiBieXRl
cyk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAg
ICAgICAgQ29tcHJlc3NlZCBmcmFtZSAxIChOMSBieXRlcykuLi4gICAgICAgICAgICAgICAgfAor
OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSsKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgIENvbXByZXNzZWQg
ZnJhbWUgMiAoTjEgYnl0ZXMpLi4uICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICstKy0rLSstKy0rLSstKy0rCit8ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2Zp
Z3VyZT4KKworPGZpZ3VyZSBhbmNob3I9InNkX2NvZGUyX3BhY2tldCIgdGl0bGU9IkEgU2VsZi1E
ZWxpbWl0ZWQgQ29kZSAyIFBhY2tldCIKKyBhbGlnbj0iY2VudGVyIj4KKzxhcnR3b3JrIGFsaWdu
PSJjZW50ZXIiPjwhW0NEQVRBWworIDAgICAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAg
ICAgICAyICAgICAgICAgICAgICAgICAgIDMKKyAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMSAyIDMg
NCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEKKystKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8IGNvbmZpZyAg
fHN8MXwwfCBOMSAoMS0yIGJ5dGVzKTogTjIgKDEtMiBieXRlcyA6ICAgICAgICAgICAgICAgfAor
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKyAgICAgICAg
ICAgICAgIDoKK3wgICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDEgKE4xIGJ5dGVzKS4u
LiAgICAgICAgICAgICAgICB8Cis6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8ICAgICAg
ICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAyIChOMiBieXRlcykuLi4gICAgICAgICAgICAgICAg
OgorOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+
CisKKzxmaWd1cmUgYW5jaG9yPSJzZF9jb2RlM2Nicl9wYWNrZXQiIHRpdGxlPSJBIFNlbGYtRGVs
aW1pdGVkIENCUiBDb2RlIDMgUGFja2V0IgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxp
Z249ImNlbnRlciI+PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAg
ICAgICAgIDIgICAgICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIg
MyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgY29uZmln
ICB8c3wxfDF8MHxwfCAgICAgTSAgICAgfCBQYWQgbGVuIChPcHQpIDogTjEgKDEtMiBieXRlcyk6
CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDEg
KE4xIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8Cis6ICAgICAgICAgICAgICAgQ29tcHJlc3NlZCBmcmFtZSAyIChOMSBieXRlcykuLi4gICAg
ICAgICAgICAgICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC4uLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDoKK3wg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwKKzogICAgICAgICAgICAgICBDb21wcmVzc2VkIGZy
YW1lIE0gKE4xIGJ5dGVzKS4uLiAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsK
KzogICAgICAgICAgICAgICAgICBPcHVzIFBhZGRpbmcgKE9wdGlvbmFsKS4uLiAgICAgICAgICAg
ICAgICAgICB8CisrLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKworXV0+PC9hcnR3b3JrPgorPC9maWd1cmU+CisKKzxmaWd1cmUg
YW5jaG9yPSJzZF9jb2RlM3Zicl9wYWNrZXQiIHRpdGxlPSJBIFNlbGYtRGVsaW1pdGVkIFZCUiBD
b2RlIDMgUGFja2V0IgorIGFsaWduPSJjZW50ZXIiPgorPGFydHdvcmsgYWxpZ249ImNlbnRlciI+
PCFbQ0RBVEFbCisgMCAgICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgIDIgICAg
ICAgICAgICAgICAgICAgMworIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDgg
OSAwIDEgMiAzIDQgNSA2IDcgOCA5IDAgMQorKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgY29uZmlnICB8c3wxfDF8MXxw
fCAgICAgTSAgICAgfCBQYWRkaW5nIGxlbmd0aCAoT3B0aW9uYWwpICAgICA6CisrLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwor
OiBOMSAoMS0yIGJ5dGVzKTogICAgIC4uLiAgICAgICA6ICAgICBOW00tMV0gICAgfCAgICAgTltN
XSAgICAgIDoKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgIENvbXByZXNzZWQg
ZnJhbWUgMSAoTjEgYnl0ZXMpLi4uICAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
KworfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwKKzogICAgICAgICAgICAgICBDb21wcmVzc2VkIGZyYW1lIDIgKE4yIGJ5dGVz
KS4uLiAgICAgICAgICAgICAgICA6Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSsKK3wgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cis6ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgOgorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rCit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorOiAgICAgICAgICAgICAgQ29tcHJl
c3NlZCBmcmFtZSBNIChOW01dIGJ5dGVzKS4uLiAgICAgICAgICAgICAgIDoKK3wgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cisr
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKworOiAgICAgICAgICAgICAgICAgIE9wdXMgUGFkZGluZyAoT3B0aW9uYWwpLi4uICAg
ICAgICAgICAgICAgICAgIHwKKystKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCitdXT48L2FydHdvcms+Cis8L2ZpZ3VyZT4KKwor
PC9zZWN0aW9uPgorCis8L2JhY2s+CisKKzwvcmZjPgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvZHJhZnQtaWV0
Zi1wYXlsb2FkLXJ0cC1vcHVzLnhtbCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvZG9jL2RyYWZ0LWlldGYtcGF5bG9hZC1ydHAtb3B1cy54
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYzRlYjIxMDc3YjcyMjRlZjE0NDNmNmQ0NTY1ODMyNjA0ZjQ3ZGQzOAot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvZG9jL2RyYWZ0LWlldGYtcGF5bG9hZC1ydHAtb3B1cy54bWwKQEAg
LTAsMCArMSw5NjAgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8
IURPQ1RZUEUgcmZjIFNZU1RFTSAicmZjMjYyOS5kdGQiIFsKKzwhRU5USVRZIHJmYzIxMTkgUFVC
TElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVu
Y2UuUkZDLjIxMTkueG1sJz4KKzwhRU5USVRZIHJmYzMzODkgUFVCTElDICcnICdodHRwOi8veG1s
LnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjMzODkueG1sJz4K
KzwhRU5USVRZIHJmYzM1NTAgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJs
aWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjM1NTAueG1sJz4KKzwhRU5USVRZIHJmYzM3MTEg
UFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZl
cmVuY2UuUkZDLjM3MTEueG1sJz4KKzwhRU5USVRZIHJmYzM1NTEgUFVCTElDICcnICdodHRwOi8v
eG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjM1NTEueG1s
Jz4KKzwhRU5USVRZIHJmYzY4MzggUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9w
dWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjY4MzgueG1sJz4KKzwhRU5USVRZIHJmYzQ4
NTUgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9y
ZWZlcmVuY2UuUkZDLjQ4NTUueG1sJz4KKzwhRU5USVRZIHJmYzQ1NjYgUFVCTElDICcnICdodHRw
Oi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjQ1NjYu
eG1sJz4KKzwhRU5USVRZIHJmYzQ1ODUgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9y
Zy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjQ1ODUueG1sJz4KKzwhRU5USVRZIHJm
YzMyNjQgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnht
bC9yZWZlcmVuY2UuUkZDLjMyNjQueG1sJz4KKzwhRU5USVRZIHJmYzI5NzQgUFVCTElDICcnICdo
dHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjI5
NzQueG1sJz4KKzwhRU5USVRZIHJmYzIzMjYgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNl
Lm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjIzMjYueG1sJz4KKzwhRU5USVRZ
IHJmYzM1NTUgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2Jp
YnhtbC9yZWZlcmVuY2UuUkZDLjM1NTUueG1sJz4KKzwhRU5USVRZIHJmYzUxMjQgUFVCTElDICcn
ICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZD
LjUxMjQueG1sJz4KKzwhRU5USVRZIHJmYzU0MDUgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291
cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjU0MDUueG1sJz4KKzwhRU5U
SVRZIHJmYzU1NzYgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZj
L2JpYnhtbC9yZWZlcmVuY2UuUkZDLjU1NzYueG1sJz4KKzwhRU5USVRZIHJmYzY1NjIgUFVCTElD
ICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2Uu
UkZDLjY1NjIueG1sJz4KKzwhRU5USVRZIHJmYzY3MTYgUFVCTElDICcnICdodHRwOi8veG1sLnJl
c291cmNlLm9yZy9wdWJsaWMvcmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjY3MTYueG1sJz4KKzwh
RU5USVRZIHJmYzcyMDIgUFVCTElDICcnICdodHRwOi8veG1sLnJlc291cmNlLm9yZy9wdWJsaWMv
cmZjL2JpYnhtbC9yZWZlcmVuY2UuUkZDLjcyMDIueG1sJz4KKzwhRU5USVRZIG5ic3AgIiYjMTYw
OyI+CisgIF0+CisKKyAgPHJmYyBjYXRlZ29yeT0ic3RkIiBpcHI9InRydXN0MjAwOTAyIiBkb2NO
YW1lPSJkcmFmdC1pZXRmLXBheWxvYWQtcnRwLW9wdXMtMTEiPgorPD94bWwtc3R5bGVzaGVldCB0
eXBlPSd0ZXh0L3hzbCcgaHJlZj0ncmZjMjYyOS54c2x0JyA/PgorCis8P3JmYyBzdHJpY3Q9Inll
cyIgPz4KKzw/cmZjIHRvYz0ieWVzIiA/PgorPD9yZmMgdG9jZGVwdGg9IjMiID8+Cis8P3JmYyB0
b2NhcHBlbmRpeD0nbm8nID8+Cis8P3JmYyB0b2NpbmRlbnQ9J3llcycgPz4KKzw/cmZjIHN5bXJl
ZnM9InllcyIgPz4KKzw/cmZjIHNvcnRyZWZzPSJ5ZXMiID8+Cis8P3JmYyBjb21wYWN0PSJubyIg
Pz4KKzw/cmZjIHN1YmNvbXBhY3Q9InllcyIgPz4KKzw/cmZjIGlwcm5vdGlmaWVkPSJ5ZXMiID8+
CisKKyAgPGZyb250PgorICAgIDx0aXRsZSBhYmJyZXY9IlJUUCBQYXlsb2FkIEZvcm1hdCBmb3Ig
T3B1cyI+CisgICAgICBSVFAgUGF5bG9hZCBGb3JtYXQgZm9yIHRoZSBPcHVzIFNwZWVjaCBhbmQg
QXVkaW8gQ29kZWMKKyAgICA8L3RpdGxlPgorCisgICAgPGF1dGhvciBmdWxsbmFtZT0iSnVsaWFu
IFNwaXR0a2EiIGluaXRpYWxzPSJKLiIgc3VybmFtZT0iU3BpdHRrYSI+CisgICAgICA8YWRkcmVz
cz4KKyAgICAgICAgPGVtYWlsPmpzcGl0dGthQGdtYWlsLmNvbTwvZW1haWw+CisgICAgICA8L2Fk
ZHJlc3M+CisgICAgPC9hdXRob3I+CisKKyAgICA8YXV0aG9yIGluaXRpYWxzPSdLLicgc3VybmFt
ZT0nVm9zJyBmdWxsbmFtZT0nS29lbiBWb3MnPgorICAgICAgPG9yZ2FuaXphdGlvbj52b2NUb25l
PC9vcmdhbml6YXRpb24+CisgICAgICA8YWRkcmVzcz4KKyAgICAgICAgPHBvc3RhbD4KKyAgICAg
ICAgICA8c3RyZWV0Pjwvc3RyZWV0PgorICAgICAgICAgIDxjb2RlPjwvY29kZT4KKyAgICAgICAg
ICA8Y2l0eT48L2NpdHk+CisgICAgICAgICAgPHJlZ2lvbj48L3JlZ2lvbj4KKyAgICAgICAgICA8
Y291bnRyeT48L2NvdW50cnk+CisgICAgICAgIDwvcG9zdGFsPgorICAgICAgICA8ZW1haWw+a29l
bnZvczc0QGdtYWlsLmNvbTwvZW1haWw+CisgICAgICA8L2FkZHJlc3M+CisgICAgPC9hdXRob3I+
CisKKyAgICA8YXV0aG9yIGluaXRpYWxzPSJKTSIgc3VybmFtZT0iVmFsaW4iIGZ1bGxuYW1lPSJK
ZWFuLU1hcmMgVmFsaW4iPgorICAgICAgPG9yZ2FuaXphdGlvbj5Nb3ppbGxhPC9vcmdhbml6YXRp
b24+CisgICAgICA8YWRkcmVzcz4KKyAgICAgICAgPHBvc3RhbD4KKyAgICAgICAgICA8c3RyZWV0
PjMzMSBFLiBFdmVseW4gQXZlbnVlPC9zdHJlZXQ+CisgICAgICAgICAgPGNpdHk+TW91bnRhaW4g
VmlldzwvY2l0eT4KKyAgICAgICAgICA8cmVnaW9uPkNBPC9yZWdpb24+CisgICAgICAgICAgPGNv
ZGU+OTQwNDE8L2NvZGU+CisgICAgICAgICAgPGNvdW50cnk+VVNBPC9jb3VudHJ5PgorICAgICAg
ICA8L3Bvc3RhbD4KKyAgICAgICAgPGVtYWlsPmptdmFsaW5Aam12YWxpbi5jYTwvZW1haWw+Cisg
ICAgICA8L2FkZHJlc3M+CisgICAgPC9hdXRob3I+CisKKyAgICA8ZGF0ZSBkYXk9JzE0JyBtb250
aD0nQXByaWwnIHllYXI9JzIwMTUnIC8+CisKKyAgICA8YWJzdHJhY3Q+CisgICAgICA8dD4KKyAg
ICAgICAgVGhpcyBkb2N1bWVudCBkZWZpbmVzIHRoZSBSZWFsLXRpbWUgVHJhbnNwb3J0IFByb3Rv
Y29sIChSVFApIHBheWxvYWQKKyAgICAgICAgZm9ybWF0IGZvciBwYWNrZXRpemF0aW9uIG9mIE9w
dXMgZW5jb2RlZAorICAgICAgICBzcGVlY2ggYW5kIGF1ZGlvIGRhdGEgbmVjZXNzYXJ5IHRvIGlu
dGVncmF0ZSB0aGUgY29kZWMgaW4gdGhlCisgICAgICAgIG1vc3QgY29tcGF0aWJsZSB3YXkuIEl0
IGFsc28gcHJvdmlkZXMgYW4gYXBwbGljYWJpbGl0eSBzdGF0ZW1lbnQKKyAgICAgICAgZm9yIHRo
ZSB1c2Ugb2YgT3B1cyBvdmVyIFJUUC4gRnVydGhlciwgaXQgZGVzY3JpYmVzIG1lZGlhIHR5cGUg
cmVnaXN0cmF0aW9ucworICAgICAgICBmb3IgdGhlIFJUUCBwYXlsb2FkIGZvcm1hdC4KKyAgICAg
IDwvdD4KKyAgICA8L2Fic3RyYWN0PgorICA8L2Zyb250PgorCisgIDxtaWRkbGU+CisgICAgPHNl
Y3Rpb24gdGl0bGU9J0ludHJvZHVjdGlvbic+CisgICAgICA8dD4KKyAgICAgICAgT3B1cyA8eHJl
ZiB0YXJnZXQ9IlJGQzY3MTYiLz4gaXMgYSBzcGVlY2ggYW5kIGF1ZGlvIGNvZGVjIGRldmVsb3Bl
ZCB3aXRoaW4gdGhlCisgICAgICAgIElFVEYgSW50ZXJuZXQgV2lkZWJhbmQgQXVkaW8gQ29kZWMg
d29ya2luZyBncm91cC4gVGhlIGNvZGVjCisgICAgICAgIGhhcyBhIHZlcnkgbG93IGFsZ29yaXRo
bWljIGRlbGF5IGFuZCBpdAorICAgICAgICBpcyBoaWdobHkgc2NhbGFibGUgaW4gdGVybXMgb2Yg
YXVkaW8gYmFuZHdpZHRoLCBiaXRyYXRlLCBhbmQKKyAgICAgICAgY29tcGxleGl0eS4gRnVydGhl
ciwgaXQgcHJvdmlkZXMgZGlmZmVyZW50IG1vZGVzIHRvIGVmZmljaWVudGx5IGVuY29kZSBzcGVl
Y2ggc2lnbmFscworICAgICAgICBhcyB3ZWxsIGFzIG11c2ljIHNpZ25hbHMsIHRodXMgbWFraW5n
IGl0IHRoZSBjb2RlYyBvZiBjaG9pY2UgZm9yCisgICAgICAgIHZhcmlvdXMgYXBwbGljYXRpb25z
IHVzaW5nIHRoZSBJbnRlcm5ldCBvciBzaW1pbGFyIG5ldHdvcmtzLgorICAgICAgPC90PgorICAg
ICAgPHQ+CisgICAgICAgIFRoaXMgZG9jdW1lbnQgZGVmaW5lcyB0aGUgUmVhbC10aW1lIFRyYW5z
cG9ydCBQcm90b2NvbCAoUlRQKQorICAgICAgICA8eHJlZiB0YXJnZXQ9IlJGQzM1NTAiLz4gcGF5
bG9hZCBmb3JtYXQgZm9yIHBhY2tldGl6YXRpb24KKyAgICAgICAgb2YgT3B1cyBlbmNvZGVkIHNw
ZWVjaCBhbmQgYXVkaW8gZGF0YSBuZWNlc3NhcnkgdG8KKyAgICAgICAgaW50ZWdyYXRlIE9wdXMg
aW4gdGhlCisgICAgICAgIG1vc3QgY29tcGF0aWJsZSB3YXkuIEl0IGFsc28gcHJvdmlkZXMgYW4g
YXBwbGljYWJpbGl0eSBzdGF0ZW1lbnQKKyAgICAgICAgZm9yIHRoZSB1c2Ugb2YgT3B1cyBvdmVy
IFJUUC4KKyAgICAgICAgRnVydGhlciwgaXQgZGVzY3JpYmVzIG1lZGlhIHR5cGUgcmVnaXN0cmF0
aW9ucyBmb3IKKyAgICAgICAgdGhlIFJUUCBwYXlsb2FkIGZvcm1hdC4KKyAgICAgIDwvdD4KKyAg
ICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0nQ29udmVudGlvbnMsIERlZmluaXRp
b25zIGFuZCBBY3JvbnltcyB1c2VkIGluIHRoaXMgZG9jdW1lbnQnPgorICAgICAgPHQ+VGhlIGtl
eSB3b3JkcyAiTVVTVCIsICJNVVNUIE5PVCIsICJSRVFVSVJFRCIsICJTSEFMTCIsICJTSEFMTCBO
T1QiLAorICAgICAgIlNIT1VMRCIsICJTSE9VTEQgTk9UIiwgIlJFQ09NTUVOREVEIiwgIk1BWSIs
IGFuZCAiT1BUSU9OQUwiIGluIHRoaXMKKyAgICAgIGRvY3VtZW50IGFyZSB0byBiZSBpbnRlcnBy
ZXRlZCBhcyBkZXNjcmliZWQgaW4gPHhyZWYgdGFyZ2V0PSJSRkMyMTE5Ii8+LjwvdD4KKyAgICAg
IDx0PgorICAgICAgPGxpc3Qgc3R5bGU9J2hhbmdpbmcnPgorICAgICAgICAgIDx0IGhhbmdUZXh0
PSJhdWRpbyBiYW5kd2lkdGg6Ij4gVGhlIHJhbmdlIG9mIGF1ZGlvIGZyZXF1ZWNpZXMgYmVpbmcg
Y29kZWQ8L3Q+CisgICAgICAgICAgPHQgaGFuZ1RleHQ9IkNCUjoiPiBDb25zdGFudCBiaXRyYXRl
PC90PgorICAgICAgICAgIDx0IGhhbmdUZXh0PSJDUFU6Ij4gQ2VudHJhbCBQcm9jZXNzaW5nIFVu
aXQ8L3Q+CisgICAgICAgICAgPHQgaGFuZ1RleHQ9IkRUWDoiPiBEaXNjb250aW51b3VzIHRyYW5z
bWlzc2lvbjwvdD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0iRkVDOiI+IEZvcndhcmQgZXJyb3Ig
Y29ycmVjdGlvbjwvdD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0iSVA6Ij4gSW50ZXJuZXQgUHJv
dG9jb2w8L3Q+CisgICAgICAgICAgPHQgaGFuZ1RleHQ9InNhbXBsZXM6Ij4gU3BlZWNoIG9yIGF1
ZGlvIHNhbXBsZXMgKHBlciBjaGFubmVsKTwvdD4KKyAgICAgICAgICA8dCBoYW5nVGV4dD0iU0RQ
OiI+IFNlc3Npb24gRGVzY3JpcHRpb24gUHJvdG9jb2w8L3Q+CisgICAgICAgICAgPHQgaGFuZ1Rl
eHQ9IlZCUjoiPiBWYXJpYWJsZSBiaXRyYXRlPC90PgorICAgICAgPC9saXN0PgorICAgICAgPC90
PgorICAgICAgICA8dD4KKyAgICAgICAgICBUaHJvdWdob3V0IHRoaXMgZG9jdW1lbnQsIHdlIHJl
ZmVyIHRvIHRoZSBmb2xsb3dpbmcgZGVmaW5pdGlvbnM6CisgICAgICAgIDwvdD4KKyAgICAgICAg
ICA8dGV4dHRhYmxlIGFuY2hvcj0nYmFuZHdpZHRoX2RlZmluaXRpb25zJz4KKyAgICAgICAgICAg
IDx0dGNvbCBhbGlnbj0nY2VudGVyJz5BYmJyZXZpYXRpb248L3R0Y29sPgorICAgICAgICAgICAg
PHR0Y29sIGFsaWduPSdjZW50ZXInPk5hbWU8L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFs
aWduPSdjZW50ZXInPkF1ZGlvIEJhbmR3aWR0aCAoSHopPC90dGNvbD4KKyAgICAgICAgICAgIDx0
dGNvbCBhbGlnbj0nY2VudGVyJz5TYW1wbGluZyBSYXRlIChIeik8L3R0Y29sPgorICAgICAgICAg
ICAgPGM+TkI8L2M+CisgICAgICAgICAgICA8Yz5OYXJyb3diYW5kPC9jPgorICAgICAgICAgICAg
PGM+MCAtIDQwMDA8L2M+CisgICAgICAgICAgICA8Yz44MDAwPC9jPgorCisgICAgICAgICAgICA8
Yz5NQjwvYz4KKyAgICAgICAgICAgIDxjPk1lZGl1bWJhbmQ8L2M+CisgICAgICAgICAgICA8Yz4w
IC0gNjAwMDwvYz4KKyAgICAgICAgICAgIDxjPjEyMDAwPC9jPgorCisgICAgICAgICAgICA8Yz5X
QjwvYz4KKyAgICAgICAgICAgIDxjPldpZGViYW5kPC9jPgorICAgICAgICAgICAgPGM+MCAtIDgw
MDA8L2M+CisgICAgICAgICAgICA8Yz4xNjAwMDwvYz4KKworICAgICAgICAgICAgPGM+U1dCPC9j
PgorICAgICAgICAgICAgPGM+U3VwZXItd2lkZWJhbmQ8L2M+CisgICAgICAgICAgICA8Yz4wIC0g
MTIwMDA8L2M+CisgICAgICAgICAgICA8Yz4yNDAwMDwvYz4KKworICAgICAgICAgICAgPGM+RkI8
L2M+CisgICAgICAgICAgICA8Yz5GdWxsYmFuZDwvYz4KKyAgICAgICAgICAgIDxjPjAgLSAyMDAw
MDwvYz4KKyAgICAgICAgICAgIDxjPjQ4MDAwPC9jPgorCisgICAgICAgICAgICA8cG9zdGFtYmxl
PgorICAgICAgICAgICAgICBBdWRpbyBiYW5kd2lkdGggbmFtaW5nCisgICAgICAgICAgICA8L3Bv
c3RhbWJsZT4KKyAgICAgICAgICA8L3RleHR0YWJsZT4KKyAgICA8L3NlY3Rpb24+CisKKyAgICA8
c2VjdGlvbiB0aXRsZT0nT3B1cyBDb2RlYyc+CisgICAgICA8dD4KKyAgICAgICAgT3B1cyBlbmNv
ZGVzIHNwZWVjaAorICAgICAgICBzaWduYWxzIGFzIHdlbGwgYXMgZ2VuZXJhbCBhdWRpbyBzaWdu
YWxzLiBUd28gZGlmZmVyZW50IG1vZGVzIGNhbiBiZQorICAgICAgICBjaG9zZW4sIGEgdm9pY2Ug
bW9kZSBvciBhbiBhdWRpbyBtb2RlLCB0byBhbGxvdyB0aGUgbW9zdCBlZmZpY2llbnQgY29kaW5n
CisgICAgICAgIGRlcGVuZGluZyBvbiB0aGUgdHlwZSBvZiB0aGUgaW5wdXQgc2lnbmFsLCB0aGUg
c2FtcGxpbmcgZnJlcXVlbmN5IG9mIHRoZQorICAgICAgICBpbnB1dCBzaWduYWwsIGFuZCB0aGUg
aW50ZW5kZWQgYXBwbGljYXRpb24uCisgICAgICA8L3Q+CisKKyAgICAgIDx0PgorICAgICAgICBU
aGUgdm9pY2UgbW9kZSBhbGxvd3MgZWZmaWNpZW50IGVuY29kaW5nIG9mIHZvaWNlIHNpZ25hbHMg
YXQgbG93ZXIgYml0CisgICAgICAgIHJhdGVzIHdoaWxlIHRoZSBhdWRpbyBtb2RlIGlzIG9wdGlt
aXplZCBmb3IgZ2VuZXJhbCBhdWRpbyBzaWduYWxzIGF0IG1lZGl1bSBhbmQKKyAgICAgICAgaGln
aGVyIGJpdHJhdGVzLgorICAgICAgPC90PgorCisgICAgICA8dD4KKyAgICAgICAgT3B1cyBpcyBo
aWdobHkgc2NhbGFibGUgaW4gdGVybXMgb2YgYXVkaW8KKyAgICAgICAgYmFuZHdpZHRoLCBiaXRy
YXRlLCBhbmQgY29tcGxleGl0eS4gRnVydGhlciwgT3B1cyBhbGxvd3MKKyAgICAgICAgdHJhbnNt
aXR0aW5nIHN0ZXJlbyBzaWduYWxzIHdpdGggaW4tYmFuZCBzaWduYWxpbmcgaW4gdGhlIGJpdC1z
dHJlYW0uCisgICAgICA8L3Q+CisKKyAgICAgIDxzZWN0aW9uIHRpdGxlPSdOZXR3b3JrIEJhbmR3
aWR0aCc+CisgICAgICAgICAgPHQ+CisgICAgICAgICAgICBPcHVzIHN1cHBvcnRzIGJpdHJhdGVz
IGZyb20gNiZuYnNwO2tiL3MgdG8gNTEwJm5ic3A7a2Ivcy4KKyAgICAgICAgICAgIFRoZSBiaXRy
YXRlIGNhbiBiZSBjaGFuZ2VkIGR5bmFtaWNhbGx5IHdpdGhpbiB0aGF0IHJhbmdlLgorICAgICAg
ICAgICAgQWxsCisgICAgICAgICAgICBvdGhlciBwYXJhbWV0ZXJzIGJlaW5nCisgICAgICAgICAg
ICBlcXVhbCwgaGlnaGVyIGJpdHJhdGVzIHJlc3VsdCBpbiBoaWdoZXIgYXVkaW8gcXVhbGl0eS4K
KyAgICAgICAgICA8L3Q+CisgICAgICAgICAgPHNlY3Rpb24gdGl0bGU9J1JlY29tbWVuZGVkIEJp
dHJhdGUnIGFuY2hvcj0nYml0cmF0ZV9ieV9iYW5kd2lkdGgnPgorICAgICAgICAgIDx0PgorICAg
ICAgICAgICAgRm9yIGEgZnJhbWUgc2l6ZSBvZgorICAgICAgICAgICAgMjAmbmJzcDttcywgdGhl
c2UKKyAgICAgICAgICAgIGFyZSB0aGUgYml0cmF0ZSAic3dlZXQgc3BvdHMiIGZvciBPcHVzIGlu
IHZhcmlvdXMgY29uZmlndXJhdGlvbnM6CisKKyAgICAgICAgICA8bGlzdCBzdHlsZT0ic3ltYm9s
cyI+CisgICAgICAgICAgICA8dD44LTEyIGtiL3MgZm9yIE5CIHNwZWVjaCw8L3Q+CisgICAgICAg
ICAgICA8dD4xNi0yMCBrYi9zIGZvciBXQiBzcGVlY2gsPC90PgorICAgICAgICAgICAgPHQ+Mjgt
NDAga2IvcyBmb3IgRkIgc3BlZWNoLDwvdD4KKyAgICAgICAgICAgIDx0PjQ4LTY0IGtiL3MgZm9y
IEZCIG1vbm8gbXVzaWMsIGFuZDwvdD4KKyAgICAgICAgICAgIDx0PjY0LTEyOCBrYi9zIGZvciBG
QiBzdGVyZW8gbXVzaWMuPC90PgorICAgICAgICAgIDwvbGlzdD4KKyAgICAgICAgPC90PgorICAg
ICAgPC9zZWN0aW9uPgorICAgICAgICA8c2VjdGlvbiB0aXRsZT0nVmFyaWFibGUgdmVyc3VzIENv
bnN0YW50IEJpdHJhdGUnICBhbmNob3I9J3ZhcmlhYmxlLXZzLWNvbnN0YW50LWJpdHJhdGUnPgor
ICAgICAgICAgIDx0PgorICAgICAgICAgICAgRm9yIHRoZSBzYW1lIGF2ZXJhZ2UgYml0cmF0ZSwg
dmFyaWFibGUgYml0cmF0ZSAoVkJSKSBjYW4gYWNoaWV2ZSBoaWdoZXIgYXVkaW8gcXVhbGl0eQor
ICAgICAgICAgICAgdGhhbiBjb25zdGFudCBiaXRyYXRlIChDQlIpLiBGb3IgdGhlIG1ham9yaXR5
IG9mIHZvaWNlIHRyYW5zbWlzc2lvbiBhcHBsaWNhdGlvbnMsIFZCUgorICAgICAgICAgICAgaXMg
dGhlIGJlc3QgY2hvaWNlLiBPbmUgcmVhc29uIGZvciBjaG9vc2luZyBDQlIgaXMgdGhlIHBvdGVu
dGlhbAorICAgICAgICAgICAgaW5mb3JtYXRpb24gbGVhayB0aGF0IDxzcGFueCBzdHlsZT0nZW1w
aCc+bWlnaHQ8L3NwYW54PiBvY2N1ciB3aGVuIGVuY3J5cHRpbmcgdGhlCisgICAgICAgICAgICBj
b21wcmVzc2VkIHN0cmVhbS4gU2VlIDx4cmVmIHRhcmdldD0iUkZDNjU2MiIvPiBmb3IgZ3VpZGVs
aW5lcyBvbiB3aGVuIFZCUiBpcworICAgICAgICAgICAgYXBwcm9wcmlhdGUgZm9yIGVuY3J5cHRl
ZCBhdWRpbyBjb21tdW5pY2F0aW9ucy4gSW4gdGhlIGNhc2Ugd2hlcmUgYW4gZXhpc3RpbmcKKyAg
ICAgICAgICAgIFZCUiBzdHJlYW0gbmVlZHMgdG8gYmUgY29udmVydGVkIHRvIENCUiBmb3Igc2Vj
dXJpdHkgcmVhc29ucywgdGhlbiB0aGUgT3B1cyBwYWRkaW5nCisgICAgICAgICAgICBtZWNoYW5p
c20gZGVzY3JpYmVkIGluIDx4cmVmIHRhcmdldD0iUkZDNjcxNiIvPiBpcyB0aGUgUkVDT01NRU5E
RUQgd2F5IHRvIGFjaGlldmUgcGFkZGluZworICAgICAgICAgICAgYmVjYXVzZSB0aGUgUlRQIHBh
ZGRpbmcgYml0IGlzIHVuZW5jcnlwdGVkLjwvdD4KKworICAgICAgICAgIDx0PgorICAgICAgICAg
ICAgVGhlIGJpdHJhdGUgY2FuIGJlIGFkanVzdGVkIGF0IGFueSBwb2ludCBpbiB0aW1lLiBUbyBh
dm9pZCBjb25nZXN0aW9uLAorICAgICAgICAgICAgdGhlIGF2ZXJhZ2UgYml0cmF0ZSBTSE9VTEQg
Tk9UIGV4Y2VlZCB0aGUgYXZhaWxhYmxlCisgICAgICAgICAgICBuZXR3b3JrIGJhbmR3aWR0aC4g
SWYgbm8gdGFyZ2V0IGJpdHJhdGUgaXMgc3BlY2lmaWVkLCB0aGUgYml0cmF0ZXMgc3BlY2lmaWVk
IGluCisgICAgICAgICAgICA8eHJlZiB0YXJnZXQ9J2JpdHJhdGVfYnlfYmFuZHdpZHRoJy8+IGFy
ZSBSRUNPTU1FTkRFRC4KKyAgICAgICAgICA8L3Q+CisKKyAgICAgICAgPC9zZWN0aW9uPgorCisg
ICAgICAgIDxzZWN0aW9uIHRpdGxlPSdEaXNjb250aW51b3VzIFRyYW5zbWlzc2lvbiAoRFRYKSc+
CisKKyAgICAgICAgICA8dD4KKyAgICAgICAgICAgIE9wdXMgY2FuLCBhcyBkZXNjcmliZWQgaW4g
PHhyZWYgdGFyZ2V0PSd2YXJpYWJsZS12cy1jb25zdGFudC1iaXRyYXRlJy8+LAorICAgICAgICAg
ICAgYmUgb3BlcmF0ZWQgd2l0aCBhIHZhcmlhYmxlIGJpdHJhdGUuIEluIHRoYXQgY2FzZSwgdGhl
IGVuY29kZXIgd2lsbAorICAgICAgICAgICAgYXV0b21hdGljYWxseSByZWR1Y2UgdGhlIGJpdHJh
dGUgZm9yIGNlcnRhaW4gaW5wdXQgc2lnbmFscywgbGlrZSBwZXJpb2RzCisgICAgICAgICAgICBv
ZiBzaWxlbmNlLiBXaGVuIHVzaW5nIGNvbnRpbnVvdXMgdHJhbnNtaXNzaW9uLCBpdCB3aWxsIHJl
ZHVjZSB0aGUKKyAgICAgICAgICAgIGJpdHJhdGUgd2hlbiB0aGUgY2hhcmFjdGVyaXN0aWNzIG9m
IHRoZSBpbnB1dCBzaWduYWwgcGVybWl0LCBidXQKKyAgICAgICAgICAgIHdpbGwgbmV2ZXIgaW50
ZXJydXB0IHRoZSB0cmFuc21pc3Npb24gdG8gdGhlIHJlY2VpdmVyLiBUaGVyZWZvcmUsIHRoZQor
ICAgICAgICAgICAgcmVjZWl2ZWQgc2lnbmFsIHdpbGwgbWFpbnRhaW4gdGhlIHNhbWUgaGlnaCBs
ZXZlbCBvZiBhdWRpbyBxdWFsaXR5IG92ZXIgdGhlCisgICAgICAgICAgICBmdWxsIGR1cmF0aW9u
IG9mIGEgdHJhbnNtaXNzaW9uIHdoaWxlIG1pbmltaXppbmcgdGhlIGF2ZXJhZ2UgYml0CisgICAg
ICAgICAgICByYXRlIG92ZXIgdGltZS4KKyAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICA8dD4K
KyAgICAgICAgICAgIEluIGNhc2VzIHdoZXJlIHRoZSBiaXRyYXRlIG9mIE9wdXMgbmVlZHMgdG8g
YmUgcmVkdWNlZCBldmVuCisgICAgICAgICAgICBmdXJ0aGVyIG9yIGluIGNhc2VzIHdoZXJlIG9u
bHkgY29uc3RhbnQgYml0cmF0ZSBpcyBhdmFpbGFibGUsCisgICAgICAgICAgICB0aGUgT3B1cyBl
bmNvZGVyIGNhbiB1c2UgZGlzY29udGludW91cworICAgICAgICAgICAgdHJhbnNtaXNzaW9uIChE
VFgpLCB3aGVyZSBwYXJ0cyBvZiB0aGUgZW5jb2RlZCBzaWduYWwgdGhhdAorICAgICAgICAgICAg
Y29ycmVzcG9uZCB0byBwZXJpb2RzIG9mIHNpbGVuY2UgaW4gdGhlIGlucHV0IHNwZWVjaCBvciBh
dWRpbyBzaWduYWwKKyAgICAgICAgICAgIGFyZSBub3QgdHJhbnNtaXR0ZWQgdG8gdGhlIHJlY2Vp
dmVyLiBBIHJlY2VpdmVyIGNhbiBkaXN0aW5ndWlzaAorICAgICAgICAgICAgYmV0d2VlbiBEVFgg
YW5kIHBhY2tldCBsb3NzIGJ5IGxvb2tpbmcgZm9yIGdhcHMgaW4gdGhlIHNlcXVlbmNlCisgICAg
ICAgICAgICBudW1iZXIsIGFzIGRlc2NyaWJlZCBieSBTZWN0aW9uIDQuMQorICAgICAgICAgICAg
b2YmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzM1NTEiLz4uCisgICAgICAgICAgPC90PgorCisgICAg
ICAgICAgPHQ+CisgICAgICAgICAgICBPbiB0aGUgcmVjZWl2aW5nIHNpZGUsIHRoZSBub24tdHJh
bnNtaXR0ZWQgcGFydHMgd2lsbCBiZSBoYW5kbGVkIGJ5IGEKKyAgICAgICAgICAgIGZyYW1lIGxv
c3MgY29uY2VhbG1lbnQgdW5pdCBpbiB0aGUgT3B1cyBkZWNvZGVyIHdoaWNoIGdlbmVyYXRlcyBh
CisgICAgICAgICAgICBjb21mb3J0IG5vaXNlIHNpZ25hbCB0byByZXBsYWNlIHRoZSBub24gdHJh
bnNtaXR0ZWQgcGFydHMgb2YgdGhlCisgICAgICAgICAgICBzcGVlY2ggb3IgYXVkaW8gc2lnbmFs
LiBVc2Ugb2YgPHhyZWYgdGFyZ2V0PSJSRkMzMzg5Ii8+IENvbWZvcnQKKyAgICAgICAgICAgIE5v
aXNlIChDTikgd2l0aCBPcHVzIGlzIGRpc2NvdXJhZ2VkLgorICAgICAgICAgICAgVGhlIHRyYW5z
bWl0dGVyIE1VU1QgZHJvcCB3aG9sZSBmcmFtZXMgb25seSwKKyAgICAgICAgICAgIGJhc2VkIG9u
IHRoZSBzaXplIG9mIHRoZSBsYXN0IHRyYW5zbWl0dGVkIGZyYW1lLAorICAgICAgICAgICAgdG8g
ZW5zdXJlIHN1Y2Nlc3NpdmUgUlRQIHRpbWVzdGFtcHMgZGlmZmVyIGJ5IGEgbXVsdGlwbGUgb2Yg
MTIwIGFuZAorICAgICAgICAgICAgdG8gYWxsb3cgdGhlIHJlY2VpdmVyIHRvIHVzZSB3aG9sZSBm
cmFtZXMgZm9yIGNvbmNlYWxtZW50LgorICAgICAgICAgIDwvdD4KKworICAgICAgICAgIDx0Pgor
ICAgICAgICAgICAgRFRYIGNhbiBiZSB1c2VkIHdpdGggYm90aCB2YXJpYWJsZSBhbmQgY29uc3Rh
bnQgYml0cmF0ZS4KKyAgICAgICAgICAgIEl0IHdpbGwgaGF2ZSBhIHNsaWdodGx5IGxvd2VyIHNw
ZWVjaCBvciBhdWRpbworICAgICAgICAgICAgcXVhbGl0eSB0aGFuIGNvbnRpbnVvdXMgdHJhbnNt
aXNzaW9uLiBUaGVyZWZvcmUsIHVzaW5nIGNvbnRpbnVvdXMKKyAgICAgICAgICAgIHRyYW5zbWlz
c2lvbiBpcyBSRUNPTU1FTkRFRCB1bmxlc3MgY29uc3RyYWludHMgb24gYXZhaWxhYmxlIG5ldHdv
cmsgYmFuZHdpZHRoCisgICAgICAgICAgICBhcmUgc2V2ZXJlLgorICAgICAgICAgIDwvdD4KKwor
ICAgICAgICA8L3NlY3Rpb24+CisKKyAgICAgICAgPC9zZWN0aW9uPgorCisgICAgICA8c2VjdGlv
biB0aXRsZT0nQ29tcGxleGl0eSc+CisKKyAgICAgICAgPHQ+CisgICAgICAgICAgQ29tcGxleGl0
eSBvZiB0aGUgZW5jb2RlciBjYW4gYmUgc2NhbGVkIHRvIG9wdGltaXplIGZvciBDUFUgcmVzb3Vy
Y2VzIGluIHJlYWwtdGltZSwgbW9zdGx5IGFzCisgICAgICAgICAgYSB0cmFkZS1vZmYgYmV0d2Vl
biBhdWRpbyBxdWFsaXR5IGFuZCBiaXRyYXRlLiBBbHNvLCBkaWZmZXJlbnQgbW9kZXMgb2YgT3B1
cyBoYXZlIGRpZmZlcmVudCBjb21wbGV4aXR5LgorICAgICAgICA8L3Q+CisKKyAgICAgIDwvc2Vj
dGlvbj4KKworICAgICAgPHNlY3Rpb24gdGl0bGU9IkZvcndhcmQgRXJyb3IgQ29ycmVjdGlvbiAo
RkVDKSI+CisKKyAgICAgICAgPHQ+CisgICAgICAgICAgVGhlIHZvaWNlIG1vZGUgb2YgT3B1cyBh
bGxvd3MgZm9yIGVtYmVkZGluZyAiaW4tYmFuZCIgZm9yd2FyZCBlcnJvciBjb3JyZWN0aW9uIChG
RUMpCisgICAgICAgICAgZGF0YSBpbnRvIHRoZSBPcHVzIGJpdCBzdHJlYW0uIFRoaXMgRkVDIHNj
aGVtZSBhZGRzCisgICAgICAgICAgcmVkdW5kYW50IGluZm9ybWF0aW9uIGFib3V0IHRoZSBwcmV2
aW91cyBwYWNrZXQgKE4tMSkgdG8gdGhlIGN1cnJlbnQKKyAgICAgICAgICBvdXRwdXQgcGFja2V0
IE4uIEZvcgorICAgICAgICAgIGVhY2ggZnJhbWUsIHRoZSBlbmNvZGVyIGRlY2lkZXMgd2hldGhl
ciB0byB1c2UgRkVDIGJhc2VkIG9uICgxKSBhbgorICAgICAgICAgIGV4dGVybmFsbHktcHJvdmlk
ZWQgZXN0aW1hdGUgb2YgdGhlIGNoYW5uZWwncyBwYWNrZXQgbG9zcyByYXRlOyAoMikgYW4KKyAg
ICAgICAgICBleHRlcm5hbGx5LXByb3ZpZGVkIGVzdGltYXRlIG9mIHRoZSBjaGFubmVsJ3MgY2Fw
YWNpdHk7ICgzKSB0aGUKKyAgICAgICAgICBzZW5zaXRpdml0eSBvZiB0aGUgYXVkaW8gb3Igc3Bl
ZWNoIHNpZ25hbCB0byBwYWNrZXQgbG9zczsgKDQpIHdoZXRoZXIKKyAgICAgICAgICB0aGUgcmVj
ZWl2aW5nIGRlY29kZXIgaGFzIGluZGljYXRlZCBpdCBjYW4gdGFrZSBhZHZhbnRhZ2Ugb2YgImlu
LWJhbmQiCisgICAgICAgICAgRkVDIGluZm9ybWF0aW9uLiBUaGUgZGVjaXNpb24gdG8gc2VuZCAi
aW4tYmFuZCIgRkVDIGluZm9ybWF0aW9uIGlzCisgICAgICAgICAgZW50aXJlbHkgY29udHJvbGxl
ZCBieSB0aGUgZW5jb2RlciBhbmQgdGhlcmVmb3JlIG5vIHNwZWNpYWwgcHJlY2F1dGlvbnMKKyAg
ICAgICAgICBmb3IgdGhlIHBheWxvYWQgaGF2ZSB0byBiZSB0YWtlbi4KKyAgICAgICAgPC90Pgor
CisgICAgICAgIDx0PgorICAgICAgICAgIE9uIHRoZSByZWNlaXZpbmcgc2lkZSwgdGhlIGRlY29k
ZXIgY2FuIHRha2UgYWR2YW50YWdlIG9mIHRoaXMKKyAgICAgICAgICBhZGRpdGlvbmFsIGluZm9y
bWF0aW9uIHdoZW4gaXQgbG9zZXMgYSBwYWNrZXQgYW5kIHRoZSBuZXh0IHBhY2tldAorICAgICAg
ICAgIGlzIGF2YWlsYWJsZS4gIEluIG9yZGVyIHRvIHVzZSB0aGUgRkVDIGRhdGEsIHRoZSBqaXR0
ZXIgYnVmZmVyIG5lZWRzCisgICAgICAgICAgdG8gcHJvdmlkZSBhY2Nlc3MgdG8gcGF5bG9hZHMg
d2l0aCB0aGUgRkVDIGRhdGEuICAKKyAgICAgICAgICBJbnN0ZWFkIG9mIHBlcmZvcm1pbmcgbG9z
cyBjb25jZWFsbWVudCBmb3IgYSBtaXNzaW5nIHBhY2tldCwgdGhlCisgICAgICAgICAgcmVjZWl2
ZXIgY2FuIHRoZW4gY29uZmlndXJlIGl0cyBkZWNvZGVyIHRvIGRlY29kZSB0aGUgRkVDIGRhdGEg
ZnJvbSB0aGUgbmV4dCBwYWNrZXQuCisgICAgICAgIDwvdD4KKworICAgICAgICA8dD4KKyAgICAg
ICAgICBBbnkgY29tcGxpYW50IE9wdXMgZGVjb2RlciBpcyBjYXBhYmxlIG9mIGlnbm9yaW5nCisg
ICAgICAgICAgRkVDIGluZm9ybWF0aW9uIHdoZW4gaXQgaXMgbm90IG5lZWRlZCwgc28gZW5jb2Rp
bmcgd2l0aCBGRUMgY2Fubm90IGNhdXNlCisgICAgICAgICAgaW50ZXJvcGVyYWJpbGl0eSBwcm9i
bGVtcy4KKyAgICAgICAgICBIb3dldmVyLCBpZiBGRUMgY2Fubm90IGJlIHVzZWQgb24gdGhlIHJl
Y2VpdmluZyBzaWRlLCB0aGVuIEZFQworICAgICAgICAgIFNIT1VMRCBOT1QgYmUgdXNlZCwgYXMg
aXQgbGVhZHMgdG8gYW4gaW5lZmZpY2llbnQgdXNhZ2Ugb2YgbmV0d29yaworICAgICAgICAgIHJl
c291cmNlcy4gRGVjb2RlciBzdXBwb3J0IGZvciBGRUMgU0hPVUxEIGJlIGluZGljYXRlZCBhdCB0
aGUgdGltZSBhCisgICAgICAgICAgc2Vzc2lvbiBpcyBzZXQgdXAuCisgICAgICAgIDwvdD4KKwor
ICAgICAgPC9zZWN0aW9uPgorCisgICAgICA8c2VjdGlvbiB0aXRsZT0nU3RlcmVvIE9wZXJhdGlv
bic+CisKKyAgICAgICAgPHQ+CisgICAgICAgICAgT3B1cyBhbGxvd3MgZm9yIHRyYW5zbWlzc2lv
biBvZiBzdGVyZW8gYXVkaW8gc2lnbmFscy4gVGhpcyBvcGVyYXRpb24KKyAgICAgICAgICBpcyBz
aWduYWxlZCBpbi1iYW5kIGluIHRoZSBPcHVzIGJpdC1zdHJlYW0gYW5kIG5vIHNwZWNpYWwgYXJy
YW5nZW1lbnQKKyAgICAgICAgICBpcyBuZWVkZWQgaW4gdGhlIHBheWxvYWQgZm9ybWF0LiBBbgor
ICAgICAgICAgIE9wdXMgZGVjb2RlciBpcyBjYXBhYmxlIG9mIGhhbmRsaW5nIGEgc3RlcmVvIGVu
Y29kaW5nLCBidXQgYW4KKyAgICAgICAgICBhcHBsaWNhdGlvbiBtaWdodCBvbmx5IGJlIGNhcGFi
bGUgb2YgY29uc3VtaW5nIGEgc2luZ2xlIGF1ZGlvCisgICAgICAgICAgY2hhbm5lbC4KKyAgICAg
ICAgPC90PgorICAgICAgICA8dD4KKyAgICAgICAgICBJZiBhIGRlY29kZXIgY2Fubm90IHRha2Ug
YWR2YW50YWdlIG9mIHRoZSBiZW5lZml0cyBvZiBhIHN0ZXJlbyBzaWduYWwKKyAgICAgICAgICB0
aGlzIFNIT1VMRCBiZSBpbmRpY2F0ZWQgYXQgdGhlIHRpbWUgYSBzZXNzaW9uIGlzIHNldCB1cC4g
SW4gdGhhdCBjYXNlCisgICAgICAgICAgdGhlIHNlbmRpbmcgc2lkZSBTSE9VTEQgTk9UIHNlbmQg
c3RlcmVvIHNpZ25hbHMgYXMgaXQgbGVhZHMgdG8gYW4KKyAgICAgICAgICBpbmVmZmljaWVudCB1
c2FnZSBvZiBuZXR3b3JrIHJlc291cmNlcy4KKyAgICAgICAgPC90PgorCisgICAgICA8L3NlY3Rp
b24+CisKKyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0nT3B1cyBSVFAgUGF5
bG9hZCBGb3JtYXQnIGFuY2hvcj0nb3B1cy1ydHAtcGF5bG9hZC1mb3JtYXQnPgorICAgICAgPHQ+
VGhlIHBheWxvYWQgZm9ybWF0IGZvciBPcHVzIGNvbnNpc3RzIG9mIHRoZSBSVFAgaGVhZGVyIGFu
ZCBPcHVzIHBheWxvYWQKKyAgICAgIGRhdGEuPC90PgorICAgICAgPHNlY3Rpb24gdGl0bGU9J1JU
UCBIZWFkZXIgVXNhZ2UnPgorICAgICAgICA8dD5UaGUgZm9ybWF0IG9mIHRoZSBSVFAgaGVhZGVy
IGlzIHNwZWNpZmllZCBpbiA8eHJlZiB0YXJnZXQ9IlJGQzM1NTAiLz4uCisgICAgICAgIFRoZSB1
c2Ugb2YgdGhlIGZpZWxkcyBvZiB0aGUgUlRQIGhlYWRlciBieSB0aGUgT3B1cyBwYXlsb2FkIGZv
cm1hdCBpcworICAgICAgICBjb25zaXN0ZW50IHdpdGggdGhhdCBzcGVjaWZpY2F0aW9uLjwvdD4K
KworICAgICAgICA8dD5UaGUgcGF5bG9hZCBsZW5ndGggb2YgT3B1cyBpcyBhbiBpbnRlZ2VyIG51
bWJlciBvZiBvY3RldHMgYW5kCisgICAgICAgIHRoZXJlZm9yZSBubyBwYWRkaW5nIGlzIG5lY2Vz
c2FyeS4gVGhlIHBheWxvYWQgTUFZIGJlIHBhZGRlZCBieSBhbgorICAgICAgICBpbnRlZ2VyIG51
bWJlciBvZiBvY3RldHMgYWNjb3JkaW5nIHRvIDx4cmVmIHRhcmdldD0iUkZDMzU1MCIvPiwKKyAg
ICAgICAgYWx0aG91Z2ggdGhlIE9wdXMgaW50ZXJuYWwgcGFkZGluZyBpcyBwcmVmZXJyZWQuPC90
PgorCisgICAgICAgIDx0PlRoZSB0aW1lc3RhbXAsIHNlcXVlbmNlIG51bWJlciwgYW5kIG1hcmtl
ciBiaXQgKE0pIG9mIHRoZSBSVFAgaGVhZGVyCisgICAgICAgIGFyZSB1c2VkIGluIGFjY29yZGFu
Y2Ugd2l0aCBTZWN0aW9uIDQuMQorICAgICAgICBvZiZuYnNwOzx4cmVmIHRhcmdldD0iUkZDMzU1
MSIvPi48L3Q+CisKKyAgICAgICAgPHQ+VGhlIFJUUCBwYXlsb2FkIHR5cGUgZm9yIE9wdXMgaXMg
dG8gYmUgYXNzaWduZWQgZHluYW1pY2FsbHkuPC90PgorCisgICAgICAgIDx0PlRoZSByZWNlaXZp
bmcgc2lkZSBNVVNUIGJlIHByZXBhcmVkIHRvIHJlY2VpdmUgZHVwbGljYXRlIFJUUAorICAgICAg
ICBwYWNrZXRzLiBUaGUgcmVjZWl2ZXIgTVVTVCBwcm92aWRlIGF0IG1vc3Qgb25lIG9mIHRob3Nl
IHBheWxvYWRzIHRvIHRoZQorICAgICAgICBPcHVzIGRlY29kZXIgZm9yIGRlY29kaW5nLCBhbmQg
TVVTVCBkaXNjYXJkIHRoZSBvdGhlcnMuPC90PgorCisgICAgICAgIDx0Pk9wdXMgc3VwcG9ydHMg
NSBkaWZmZXJlbnQgYXVkaW8gYmFuZHdpZHRocywgd2hpY2ggY2FuIGJlIGFkanVzdGVkIGR1cmlu
ZworICAgICAgICBhIHN0cmVhbS4KKyAgICAgICAgVGhlIFJUUCB0aW1lc3RhbXAgaXMgaW5jcmVt
ZW50ZWQgd2l0aCBhIDQ4MDAwIEh6IGNsb2NrIHJhdGUKKyAgICAgICAgZm9yIGFsbCBtb2RlcyBv
ZiBPcHVzIGFuZCBhbGwgc2FtcGxpbmcgcmF0ZXMuCisgICAgICAgIFRoZSB1bml0CisgICAgICAg
IGZvciB0aGUgdGltZXN0YW1wIGlzIHNhbXBsZXMgcGVyIHNpbmdsZSAobW9ubykgY2hhbm5lbC4g
VGhlIFJUUCB0aW1lc3RhbXAgY29ycmVzcG9uZHMgdG8gdGhlCisgICAgICAgIHNhbXBsZSB0aW1l
IG9mIHRoZSBmaXJzdCBlbmNvZGVkIHNhbXBsZSBpbiB0aGUgZW5jb2RlZCBmcmFtZS4KKyAgICAg
ICAgRm9yIGRhdGEgZW5jb2RlZCB3aXRoIHNhbXBsaW5nIHJhdGVzIG90aGVyIHRoYW4gNDgwMDAg
SHosCisJdGhlIHNhbXBsaW5nIHJhdGUgaGFzIHRvIGJlIGFkanVzdGVkIHRvIDQ4MDAwIEh6Ljwv
dD4KKworICAgICAgPC9zZWN0aW9uPgorCisgICAgICA8c2VjdGlvbiB0aXRsZT0nUGF5bG9hZCBT
dHJ1Y3R1cmUnPgorICAgICAgICA8dD4KKyAgICAgICAgICBUaGUgT3B1cyBlbmNvZGVyIGNhbiBv
dXRwdXQgZW5jb2RlZCBmcmFtZXMgcmVwcmVzZW50aW5nIDIuNSwgNSwgMTAsIDIwLAorICAgICAg
ICAgIDQwLCBvciA2MCZuYnNwO21zIG9mIHNwZWVjaCBvciBhdWRpbyBkYXRhLiBGdXJ0aGVyLCBh
biBhcmJpdHJhcnkgbnVtYmVyIG9mIGZyYW1lcyBjYW4gYmUKKyAgICAgICAgICBjb21iaW5lZCBp
bnRvIGEgcGFja2V0LCB1cCB0byBhIG1heGltdW0gcGFja2V0IGR1cmF0aW9uIHJlcHJlc2VudGlu
ZworICAgICAgICAgIDEyMCZuYnNwO21zIG9mIHNwZWVjaCBvciBhdWRpbyBkYXRhLiBUaGUgZ3Jv
dXBpbmcgb2Ygb25lIG9yIG1vcmUgT3B1cworICAgICAgICAgIGZyYW1lcyBpbnRvIGEgc2luZ2xl
IE9wdXMgcGFja2V0IGlzIGRlZmluZWQgaW4gU2VjdGlvbiZuYnNwOzMgb2YKKyAgICAgICAgICA8
eHJlZiB0YXJnZXQ9IlJGQzY3MTYiLz4uIEFuIFJUUCBwYXlsb2FkIE1VU1QgY29udGFpbiBleGFj
dGx5IG9uZQorICAgICAgICAgIE9wdXMgcGFja2V0IGFzIGRlZmluZWQgYnkgdGhhdCBkb2N1bWVu
dC4KKyAgICAgICAgPC90PgorCisgICAgICAgIDx0Pjx4cmVmIHRhcmdldD0ncGF5bG9hZC1zdHJ1
Y3R1cmUnLz4gc2hvd3MgdGhlIHN0cnVjdHVyZSBjb21iaW5lZCB3aXRoIHRoZSBSVFAgaGVhZGVy
LjwvdD4KKworICAgICAgICA8ZmlndXJlIGFuY2hvcj0icGF5bG9hZC1zdHJ1Y3R1cmUiCisgICAg
ICAgICAgICAgICAgdGl0bGU9IlBhY2tldCBzdHJ1Y3R1cmUgd2l0aCBSVFAgaGVhZGVyIj4KKyAg
ICAgICAgICA8YXJ0d29yayBhbGlnbj0iY2VudGVyIj4KKyAgICAgICAgICAgIDwhW0NEQVRBWwor
Ky0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rCit8UlRQIEhlYWRlcnwgT3B1cyBQYXlsb2FkIHwK
KystLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICBdXT4KKyAgICAgICAgICA8
L2FydHdvcms+CisgICAgICAgIDwvZmlndXJlPgorCisgICAgICAgIDx0PgorICAgICAgICAgIDx4
cmVmIHRhcmdldD0nb3B1cy1wYWNrZXRpemF0aW9uJy8+IHNob3dzIHN1cHBvcnRlZCBmcmFtZSBz
aXplcyBpbgorICAgICAgICAgIG1pbGxpc2Vjb25kcyBvZiBlbmNvZGVkIHNwZWVjaCBvciBhdWRp
byBkYXRhIGZvciB0aGUgc3BlZWNoIGFuZCBhdWRpbyBtb2RlcworICAgICAgICAgIChNb2RlKSBh
bmQgc2FtcGxpbmcgcmF0ZXMgKGZzKSBvZiBPcHVzIGFuZCBzaG93cyBob3cgdGhlIHRpbWVzdGFt
cCBpcworICAgICAgICAgIGluY3JlbWVudGVkIGZvciBwYWNrZXRpemF0aW9uICh0cyBpbmNyKS4g
SWYgdGhlIE9wdXMgZW5jb2RlcgorICAgICAgICAgIG91dHB1dHMgbXVsdGlwbGUgZW5jb2RlZCBm
cmFtZXMgaW50byBhIHNpbmdsZSBwYWNrZXQsIHRoZSB0aW1lc3RhbXAKKyAgICAgICAgICBpbmNy
ZW1lbnQgaXMgdGhlIHN1bSBvZiB0aGUgaW5jcmVtZW50cyBmb3IgdGhlIGluZGl2aWR1YWwgZnJh
bWVzLgorICAgICAgICA8L3Q+CisKKyAgICAgICAgPHRleHR0YWJsZSBhbmNob3I9J29wdXMtcGFj
a2V0aXphdGlvbicgdGl0bGU9IlN1cHBvcnRlZCBPcHVzIGZyYW1lCisgICAgICAgICBzaXplcyBh
bmQgdGltZXN0YW1wIGluY3JlbWVudHMgbWFya2VkIHdpdGggYW4gby4gVW5zdXBwb3J0ZWQgbWFy
a2VkIHdpdGggYW4geC4iPgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPk1vZGU8
L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPmZzPC90dGNvbD4KKyAg
ICAgICAgICAgIDx0dGNvbCBhbGlnbj0nY2VudGVyJz4yLjU8L3R0Y29sPgorICAgICAgICAgICAg
PHR0Y29sIGFsaWduPSdjZW50ZXInPjU8L3R0Y29sPgorICAgICAgICAgICAgPHR0Y29sIGFsaWdu
PSdjZW50ZXInPjEwPC90dGNvbD4KKyAgICAgICAgICAgIDx0dGNvbCBhbGlnbj0nY2VudGVyJz4y
MDwvdHRjb2w+CisgICAgICAgICAgICA8dHRjb2wgYWxpZ249J2NlbnRlcic+NDA8L3R0Y29sPgor
ICAgICAgICAgICAgPHR0Y29sIGFsaWduPSdjZW50ZXInPjYwPC90dGNvbD4KKyAgICAgICAgICAg
IDxjPnRzIGluY3I8L2M+CisgICAgICAgICAgICA8Yz5hbGw8L2M+CisgICAgICAgICAgICA8Yz4x
MjA8L2M+CisgICAgICAgICAgICA8Yz4yNDA8L2M+CisgICAgICAgICAgICA8Yz40ODA8L2M+Cisg
ICAgICAgICAgICA8Yz45NjA8L2M+CisgICAgICAgICAgICA8Yz4xOTIwPC9jPgorICAgICAgICAg
ICAgPGM+Mjg4MDwvYz4KKyAgICAgICAgICAgIDxjPnZvaWNlPC9jPgorICAgICAgICAgICAgPGM+
TkIvTUIvV0IvU1dCL0ZCPC9jPgorICAgICAgICAgICAgPGM+eDwvYz4KKyAgICAgICAgICAgIDxj
Png8L2M+CisgICAgICAgICAgICA8Yz5vPC9jPgorICAgICAgICAgICAgPGM+bzwvYz4KKyAgICAg
ICAgICAgIDxjPm88L2M+CisgICAgICAgICAgICA8Yz5vPC9jPgorICAgICAgICAgICAgPGM+YXVk
aW88L2M+CisgICAgICAgICAgICA8Yz5OQi9XQi9TV0IvRkI8L2M+CisgICAgICAgICAgICA8Yz5v
PC9jPgorICAgICAgICAgICAgPGM+bzwvYz4KKyAgICAgICAgICAgIDxjPm88L2M+CisgICAgICAg
ICAgICA8Yz5vPC9jPgorICAgICAgICAgICAgPGM+eDwvYz4KKyAgICAgICAgICAgIDxjPng8L2M+
CisgICAgICAgICAgPC90ZXh0dGFibGU+CisKKyAgICAgIDwvc2VjdGlvbj4KKworICAgIDwvc2Vj
dGlvbj4KKworICAgIDxzZWN0aW9uIHRpdGxlPSdDb25nZXN0aW9uIENvbnRyb2wnPgorCisgICAg
ICA8dD5UaGUgdGFyZ2V0IGJpdHJhdGUgb2YgT3B1cyBjYW4gYmUgYWRqdXN0ZWQgYXQgYW55IHBv
aW50IGluIHRpbWUsIHRodXMKKyAgICAgIGFsbG93aW5nIGVmZmljaWVudCBjb25nZXN0aW9uIGNv
bnRyb2wuIEZ1cnRoZXJtb3JlLCB0aGUgYW1vdW50CisgICAgICBvZiBlbmNvZGVkIHNwZWVjaCBv
ciBhdWRpbyBkYXRhIGVuY29kZWQgaW4gYQorICAgICAgc2luZ2xlIHBhY2tldCBjYW4gYmUgdXNl
ZCBmb3IgY29uZ2VzdGlvbiBjb250cm9sLCBzaW5jZSB0aGUgdHJhbnNtaXNzaW9uCisgICAgICBy
YXRlIGlzIGludmVyc2VseSBwcm9wb3J0aW9uYWwgdG8gdGhlIHBhY2tldCBkdXJhdGlvbi4gQSBs
b3dlciBwYWNrZXQKKyAgICAgIHRyYW5zbWlzc2lvbiByYXRlIHJlZHVjZXMgdGhlIGFtb3VudCBv
ZiBoZWFkZXIgb3ZlcmhlYWQsIGJ1dCBhdCB0aGUgc2FtZQorICAgICAgdGltZSBpbmNyZWFzZXMg
bGF0ZW5jeSBhbmQgbG9zcyBzZW5zaXRpdml0eSwgc28gaXQgb3VnaHQgdG8gYmUgdXNlZCB3aXRo
CisgICAgICBjYXJlLjwvdD4KKworICAgICAgPHQ+U2luY2UgVURQIGRvZXMgbm90IHByb3ZpZGUg
Y29uZ2VzdGlvbiBjb250cm9sLCBhcHBsaWNhdGlvbnMgdGhhdCB1c2UKKyAgICAgIFJUUCBvdmVy
IFVEUCBTSE9VTEQgaW1wbGVtZW50IHRoZWlyIG93biBjb25nZXN0aW9uIGNvbnRyb2wgYWJvdmUg
dGhlCisgICAgICBVRFAgbGF5ZXIgPHhyZWYgdGFyZ2V0PSJSRkM1NDA1Ii8+LiBXb3JrIGluIHRo
ZSBybWNhdCB3b3JraW5nIGdyb3VwCisgICAgICA8eHJlZiB0YXJnZXQ9InJtY2F0Ii8+IGRlc2Ny
aWJlcyB0aGUKKyAgICAgIGludGVyYWN0aW9ucyBhbmQgY29uY2VwdHVhbCBpbnRlcmZhY2VzIG5l
Y2Vzc2FyeSBiZXR3ZWVuIHRoZSBhcHBsaWNhdGlvbgorICAgICAgY29tcG9uZW50cyB0aGF0IHJl
bGF0ZSB0byBjb25nZXN0aW9uIGNvbnRyb2wsIGluY2x1ZGluZyB0aGUgUlRQIGxheWVyLAorICAg
ICAgdGhlIGhpZ2hlci1sZXZlbCBtZWRpYSBjb2RlYyBjb250cm9sIGxheWVyLCBhbmQgdGhlIGxv
d2VyLWxldmVsCisgICAgICB0cmFuc3BvcnQgaW50ZXJmYWNlLCBhcyB3ZWxsIGFzIGNvbXBvbmVu
dHMgZGVkaWNhdGVkIHRvIGNvbmdlc3Rpb24KKyAgICAgIGNvbnRyb2wgZnVuY3Rpb25zLjwvdD4K
KyAgICA8L3NlY3Rpb24+CisKKyAgICA8c2VjdGlvbiB0aXRsZT0nSUFOQSBDb25zaWRlcmF0aW9u
cyc+CisgICAgICA8dD5PbmUgbWVkaWEgc3VidHlwZSAoYXVkaW8vb3B1cykgaGFzIGJlZW4gZGVm
aW5lZCBhbmQgcmVnaXN0ZXJlZCBhcworICAgICAgZGVzY3JpYmVkIGluIHRoZSBmb2xsb3dpbmcg
c2VjdGlvbi48L3Q+CisKKyAgICAgIDxzZWN0aW9uIHRpdGxlPSdPcHVzIE1lZGlhIFR5cGUgUmVn
aXN0cmF0aW9uJz4KKyAgICAgICAgPHQ+TWVkaWEgdHlwZSByZWdpc3RyYXRpb24gaXMgZG9uZSBh
Y2NvcmRpbmcgdG8gPHhyZWYKKyAgICAgICAgdGFyZ2V0PSJSRkM2ODM4Ii8+IGFuZCA8eHJlZiB0
YXJnZXQ9IlJGQzQ4NTUiLz4uPHZzcGFjZQorICAgICAgICBibGFua0xpbmVzPScxJy8+PC90Pgor
CisgICAgICAgICAgPHQ+VHlwZSBuYW1lOiBhdWRpbzx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwv
dD4KKyAgICAgICAgICA8dD5TdWJ0eXBlIG5hbWU6IG9wdXM8dnNwYWNlIGJsYW5rTGluZXM9JzEn
Lz48L3Q+CisKKyAgICAgICAgICA8dD5SZXF1aXJlZCBwYXJhbWV0ZXJzOjwvdD4KKyAgICAgICAg
ICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dCBoYW5nVGV4dD0icmF0
ZToiPiB0aGUgUlRQIHRpbWVzdGFtcCBpcyBpbmNyZW1lbnRlZCB3aXRoIGEKKyAgICAgICAgICAg
IDQ4MDAwIEh6IGNsb2NrIHJhdGUgZm9yIGFsbCBtb2RlcyBvZiBPcHVzIGFuZCBhbGwgc2FtcGxp
bmcKKyAgICAgICAgICAgIHJhdGVzLiBGb3IgZGF0YSBlbmNvZGVkIHdpdGggc2FtcGxpbmcgcmF0
ZXMgb3RoZXIgdGhhbiA0ODAwMCBIeiwKKyAgICAgICAgICAgIHRoZSBzYW1wbGluZyByYXRlIGhh
cyB0byBiZSBhZGp1c3RlZCB0byA0ODAwMCBIei4KKyAgICAgICAgICA8L3Q+CisgICAgICAgICAg
PC9saXN0PjwvdD4KKworICAgICAgICAgIDx0Pk9wdGlvbmFsIHBhcmFtZXRlcnM6PC90PgorCisg
ICAgICAgICAgPHQ+PGxpc3Qgc3R5bGU9ImhhbmdpbmciPgorICAgICAgICAgICAgPHQgaGFuZ1Rl
eHQ9Im1heHBsYXliYWNrcmF0ZToiPgorICAgICAgICAgICAgICBhIGhpbnQgYWJvdXQgdGhlIG1h
eGltdW0gb3V0cHV0IHNhbXBsaW5nIHJhdGUgdGhhdCB0aGUgcmVjZWl2ZXIgaXMKKyAgICAgICAg
ICAgICAgY2FwYWJsZSBvZiByZW5kZXJpbmcgaW4gSHouCisgICAgICAgICAgICAgIFRoZSBkZWNv
ZGVyIE1VU1QgYmUgY2FwYWJsZSBvZiBkZWNvZGluZworICAgICAgICAgICAgICBhbnkgYXVkaW8g
YmFuZHdpZHRoIGJ1dCBkdWUgdG8gaGFyZHdhcmUgbGltaXRhdGlvbnMgb25seSBzaWduYWxzCisg
ICAgICAgICAgICAgIHVwIHRvIHRoZSBzcGVjaWZpZWQgc2FtcGxpbmcgcmF0ZSBjYW4gYmUgcGxh
eWVkIGJhY2suIFNlbmRpbmcgc2lnbmFscworICAgICAgICAgICAgICB3aXRoIGhpZ2hlciBhdWRp
byBiYW5kd2lkdGggcmVzdWx0cyBpbiBoaWdoZXIgdGhhbiBuZWNlc3NhcnkgbmV0d29yaworICAg
ICAgICAgICAgICB1c2FnZSBhbmQgZW5jb2RpbmcgY29tcGxleGl0eSwgc28gYW4gZW5jb2RlciBT
SE9VTEQgTk9UIGVuY29kZQorICAgICAgICAgICAgICBmcmVxdWVuY2llcyBhYm92ZSB0aGUgYXVk
aW8gYmFuZHdpZHRoIHNwZWNpZmllZCBieSBtYXhwbGF5YmFja3JhdGUuCisgICAgICAgICAgICAg
IFRoaXMgcGFyYW1ldGVyIGNhbiB0YWtlIGFueSB2YWx1ZSBiZXR3ZWVuIDgwMDAgYW5kIDQ4MDAw
LCBhbHRob3VnaAorICAgICAgICAgICAgICBjb21tb25seSB0aGUgdmFsdWUgd2lsbCBtYXRjaCBv
bmUgb2YgdGhlIE9wdXMgYmFuZHdpZHRocworICAgICAgICAgICAgICAoPHhyZWYgdGFyZ2V0PSJi
YW5kd2lkdGhfZGVmaW5pdGlvbnMiLz4pLgorICAgICAgICAgICAgICBCeSBkZWZhdWx0LCB0aGUg
cmVjZWl2ZXIgaXMgYXNzdW1lZCB0byBoYXZlIG5vIGxpbWl0YXRpb25zLCBpLmUuIDQ4MDAwLgor
ICAgICAgICAgICAgICA8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz4KKyAgICAgICAgICAgIDwvdD4K
KworICAgICAgICAgICAgPHQgaGFuZ1RleHQ9InNwcm9wLW1heGNhcHR1cmVyYXRlOiI+CisgICAg
ICAgICAgICAgIGEgaGludCBhYm91dCB0aGUgbWF4aW11bSBpbnB1dCBzYW1wbGluZyByYXRlIHRo
YXQgdGhlIHNlbmRlciBpcyBsaWtlbHkgdG8gcHJvZHVjZS4KKyAgICAgICAgICAgICAgVGhpcyBp
cyBub3QgYSBndWFyYW50ZWUgdGhhdCB0aGUgc2VuZGVyIHdpbGwgbmV2ZXIgc2VuZCBhbnkgaGln
aGVyIGJhbmR3aWR0aAorICAgICAgICAgICAgICAoZS5nLiBpdCBjb3VsZCBzZW5kIGEgcHJlLXJl
Y29yZGVkIHByb21wdCB0aGF0IHVzZXMgYSBoaWdoZXIgYmFuZHdpZHRoKSwgYnV0IGl0CisgICAg
ICAgICAgICAgIGluZGljYXRlcyB0byB0aGUgcmVjZWl2ZXIgdGhhdCBmcmVxdWVuY2llcyBhYm92
ZSB0aGlzIG1heGltdW0gY2FuIHNhZmVseSBiZSBkaXNjYXJkZWQuCisgICAgICAgICAgICAgIFRo
aXMgcGFyYW1ldGVyIGlzIHVzZWZ1bCB0byBhdm9pZCB3YXN0aW5nIHJlY2VpdmVyIHJlc291cmNl
cyBieSBvcGVyYXRpbmcgdGhlIGF1ZGlvCisgICAgICAgICAgICAgIHByb2Nlc3NpbmcgcGlwZWxp
bmUgKGUuZy4gZWNobyBjYW5jZWxsYXRpb24pIGF0IGEgaGlnaGVyIHJhdGUgdGhhbiBuZWNlc3Nh
cnkuCisgICAgICAgICAgICAgIFRoaXMgcGFyYW1ldGVyIGNhbiB0YWtlIGFueSB2YWx1ZSBiZXR3
ZWVuIDgwMDAgYW5kIDQ4MDAwLCBhbHRob3VnaAorICAgICAgICAgICAgICBjb21tb25seSB0aGUg
dmFsdWUgd2lsbCBtYXRjaCBvbmUgb2YgdGhlIE9wdXMgYmFuZHdpZHRocworICAgICAgICAgICAg
ICAoPHhyZWYgdGFyZ2V0PSJiYW5kd2lkdGhfZGVmaW5pdGlvbnMiLz4pLgorICAgICAgICAgICAg
ICBCeSBkZWZhdWx0LCB0aGUgc2VuZGVyIGlzIGFzc3VtZWQgdG8gaGF2ZSBubyBsaW1pdGF0aW9u
cywgaS5lLiA0ODAwMC4KKyAgICAgICAgICAgICAgPHZzcGFjZSBibGFua0xpbmVzPScxJy8+Cisg
ICAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICAgIDx0IGhhbmdUZXh0PSJtYXhwdGltZToiPiB0
aGUgbWF4aW11bSBkdXJhdGlvbiBvZiBtZWRpYSByZXByZXNlbnRlZAorICAgICAgICAgICAgYnkg
YSBwYWNrZXQgKGFjY29yZGluZyB0byBTZWN0aW9uJm5ic3A7NiBvZgorICAgICAgICAgICAgPHhy
ZWYgdGFyZ2V0PSJSRkM0NTY2Ii8+KSB0aGF0IGEgZGVjb2RlciB3YW50cyB0byByZWNlaXZlLCBp
bgorICAgICAgICAgICAgbWlsbGlzZWNvbmRzIHJvdW5kZWQgdXAgdG8gdGhlIG5leHQgZnVsbCBp
bnRlZ2VyIHZhbHVlLgorICAgICAgICAgICAgUG9zc2libGUgdmFsdWVzIGFyZSAzLCA1LCAxMCwg
MjAsIDQwLCA2MCwgb3IgYW4gYXJiaXRyYXJ5CisgICAgICAgICAgICBtdWx0aXBsZSBvZiBhbiBP
cHVzIGZyYW1lIHNpemUgcm91bmRlZCB1cCB0byB0aGUgbmV4dCBmdWxsIGludGVnZXIKKyAgICAg
ICAgICAgIHZhbHVlLCB1cCB0byBhIG1heGltdW0gdmFsdWUgb2YgMTIwLCBhcworICAgICAgICAg
ICAgZGVmaW5lZCBpbiA8eHJlZiB0YXJnZXQ9J29wdXMtcnRwLXBheWxvYWQtZm9ybWF0Jy8+LiBJ
ZiBubyB2YWx1ZSBpcworICAgICAgICAgICAgICBzcGVjaWZpZWQsIHRoZSBkZWZhdWx0IGlzIDEy
MC4KKyAgICAgICAgICAgICAgPHZzcGFjZSBibGFua0xpbmVzPScxJy8+PC90PgorCisgICAgICAg
ICAgICA8dCBoYW5nVGV4dD0icHRpbWU6Ij4gdGhlIHByZWZlcnJlZCBkdXJhdGlvbiBvZiBtZWRp
YSByZXByZXNlbnRlZAorICAgICAgICAgICAgYnkgYSBwYWNrZXQgKGFjY29yZGluZyB0byBTZWN0
aW9uJm5ic3A7NiBvZgorICAgICAgICAgICAgPHhyZWYgdGFyZ2V0PSJSRkM0NTY2Ii8+KSB0aGF0
IGEgZGVjb2RlciB3YW50cyB0byByZWNlaXZlLCBpbgorICAgICAgICAgICAgbWlsbGlzZWNvbmRz
IHJvdW5kZWQgdXAgdG8gdGhlIG5leHQgZnVsbCBpbnRlZ2VyIHZhbHVlLgorICAgICAgICAgICAg
UG9zc2libGUgdmFsdWVzIGFyZSAzLCA1LCAxMCwgMjAsIDQwLCA2MCwgb3IgYW4gYXJiaXRyYXJ5
CisgICAgICAgICAgICBtdWx0aXBsZSBvZiBhbiBPcHVzIGZyYW1lIHNpemUgcm91bmRlZCB1cCB0
byB0aGUgbmV4dCBmdWxsIGludGVnZXIKKyAgICAgICAgICAgIHZhbHVlLCB1cCB0byBhIG1heGlt
dW0gdmFsdWUgb2YgMTIwLCBhcyBkZWZpbmVkIGluIDx4cmVmCisgICAgICAgICAgICB0YXJnZXQ9
J29wdXMtcnRwLXBheWxvYWQtZm9ybWF0Jy8+LiBJZiBubyB2YWx1ZSBpcworICAgICAgICAgICAg
ICBzcGVjaWZpZWQsIHRoZSBkZWZhdWx0IGlzIDIwLiAKKyAgICAgICAgICAgICAgPHZzcGFjZSBi
bGFua0xpbmVzPScxJy8+PC90PgorCisgICAgICAgICAgICA8dCBoYW5nVGV4dD0ibWF4YXZlcmFn
ZWJpdHJhdGU6Ij4gc3BlY2lmaWVzIHRoZSBtYXhpbXVtIGF2ZXJhZ2UKKyAgICAgICAgICAgIHJl
Y2VpdmUgYml0cmF0ZSBvZiBhIHNlc3Npb24gaW4gYml0cyBwZXIgc2Vjb25kIChiL3MpLiBUaGUg
YWN0dWFsCisgICAgICAgICAgICB2YWx1ZSBvZiB0aGUgYml0cmF0ZSBjYW4gdmFyeSwgYXMgaXQg
aXMgZGVwZW5kZW50IG9uIHRoZQorICAgICAgICAgICAgY2hhcmFjdGVyaXN0aWNzIG9mIHRoZSBt
ZWRpYSBpbiBhIHBhY2tldC4gTm90ZSB0aGF0IHRoZSBtYXhpbXVtCisgICAgICAgICAgICBhdmVy
YWdlIGJpdHJhdGUgTUFZIGJlIG1vZGlmaWVkIGR5bmFtaWNhbGx5IGR1cmluZyBhIHNlc3Npb24u
IEFueQorICAgICAgICAgICAgcG9zaXRpdmUgaW50ZWdlciBpcyBhbGxvd2VkLCBidXQgdmFsdWVz
IG91dHNpZGUgdGhlIHJhbmdlCisgICAgICAgICAgICA2MDAwIHRvIDUxMDAwMCBTSE9VTEQgYmUg
aWdub3JlZC4gSWYgbm8gdmFsdWUgaXMgc3BlY2lmaWVkLCB0aGUKKyAgICAgICAgICAgIG1heGlt
dW0gdmFsdWUgc3BlY2lmaWVkIGluIDx4cmVmIHRhcmdldD0nYml0cmF0ZV9ieV9iYW5kd2lkdGgn
Lz4KKyAgICAgICAgICAgIGZvciB0aGUgY29ycmVzcG9uZGluZyBtb2RlIG9mIE9wdXMgYW5kIGNv
cnJlc3BvbmRpbmcgbWF4cGxheWJhY2tyYXRlCisgICAgICAgICAgICBpcyB0aGUgZGVmYXVsdC48
dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisKKyAgICAgICAgICAgIDx0IGhhbmdUZXh0PSJz
dGVyZW86Ij4KKyAgICAgICAgICAgICAgc3BlY2lmaWVzIHdoZXRoZXIgdGhlIGRlY29kZXIgcHJl
ZmVycyByZWNlaXZpbmcgc3RlcmVvIG9yIG1vbm8gc2lnbmFscy4KKyAgICAgICAgICAgICAgUG9z
c2libGUgdmFsdWVzIGFyZSAxIGFuZCAwIHdoZXJlIDEgc3BlY2lmaWVzIHRoYXQgc3RlcmVvIHNp
Z25hbHMgYXJlIHByZWZlcnJlZCwKKyAgICAgICAgICAgICAgYW5kIDAgc3BlY2lmaWVzIHRoYXQg
b25seSBtb25vIHNpZ25hbHMgYXJlIHByZWZlcnJlZC4KKyAgICAgICAgICAgICAgSW5kZXBlbmRl
bnQgb2YgdGhlIHN0ZXJlbyBwYXJhbWV0ZXIgZXZlcnkgcmVjZWl2ZXIgTVVTVCBiZSBhYmxlIHRv
IHJlY2VpdmUgYW5kCisgICAgICAgICAgICAgIGRlY29kZSBzdGVyZW8gc2lnbmFscyBidXQgc2Vu
ZGluZyBzdGVyZW8gc2lnbmFscyB0byBhIHJlY2VpdmVyIHRoYXQgc2lnbmFsZWQgYQorICAgICAg
ICAgICAgICBwcmVmZXJlbmNlIGZvciBtb25vIHNpZ25hbHMgbWF5IHJlc3VsdCBpbiBoaWdoZXIg
dGhhbiBuZWNlc3NhcnkgbmV0d29yaworICAgICAgICAgICAgICB1dGlsaXphdGlvbiBhbmQgZW5j
b2RpbmcgY29tcGxleGl0eS4gSWYgbm8gdmFsdWUgaXMgc3BlY2lmaWVkLAorICAgICAgICAgICAg
ICB0aGUgZGVmYXVsdCBpcyAwIChtb25vKS48dnNwYWNlIGJsYW5rTGluZXM9JzEnLz4KKyAgICAg
ICAgICAgIDwvdD4KKworICAgICAgICAgICAgPHQgaGFuZ1RleHQ9InNwcm9wLXN0ZXJlbzoiPgor
ICAgICAgICAgICAgICBzcGVjaWZpZXMgd2hldGhlciB0aGUgc2VuZGVyIGlzIGxpa2VseSB0byBw
cm9kdWNlIHN0ZXJlbyBhdWRpby4KKyAgICAgICAgICAgICAgUG9zc2libGUgdmFsdWVzIGFyZSAx
IGFuZCAwLCB3aGVyZSAxIHNwZWNpZmllcyB0aGF0IHN0ZXJlbyBzaWduYWxzIGFyZSBsaWtlbHkg
dG8KKyAgICAgICAgICAgICAgYmUgc2VudCwgYW5kIDAgc3BlY2lmaWVzIHRoYXQgdGhlIHNlbmRl
ciB3aWxsIGxpa2VseSBvbmx5IHNlbmQgbW9uby4KKyAgICAgICAgICAgICAgVGhpcyBpcyBub3Qg
YSBndWFyYW50ZWUgdGhhdCB0aGUgc2VuZGVyIHdpbGwgbmV2ZXIgc2VuZCBzdGVyZW8gYXVkaW8K
KyAgICAgICAgICAgICAgKGUuZy4gaXQgY291bGQgc2VuZCBhIHByZS1yZWNvcmRlZCBwcm9tcHQg
dGhhdCB1c2VzIHN0ZXJlbyksIGJ1dCBpdAorICAgICAgICAgICAgICBpbmRpY2F0ZXMgdG8gdGhl
IHJlY2VpdmVyIHRoYXQgdGhlIHJlY2VpdmVkIHNpZ25hbCBjYW4gYmUgc2FmZWx5IGRvd25taXhl
ZCB0byBtb25vLgorICAgICAgICAgICAgICBUaGlzIHBhcmFtZXRlciBpcyB1c2VmdWwgdG8gYXZv
aWQgd2FzdGluZyByZWNlaXZlciByZXNvdXJjZXMgYnkgb3BlcmF0aW5nIHRoZSBhdWRpbworICAg
ICAgICAgICAgICBwcm9jZXNzaW5nIHBpcGVsaW5lIChlLmcuIGVjaG8gY2FuY2VsbGF0aW9uKSBp
biBzdGVyZW8gd2hlbiBub3QgbmVjZXNzYXJ5LgorICAgICAgICAgICAgICBJZiBubyB2YWx1ZSBp
cyBzcGVjaWZpZWQsIHRoZSBkZWZhdWx0IGlzIDAKKyAgICAgICAgICAgICAgKG1vbm8pLjx2c3Bh
Y2UgYmxhbmtMaW5lcz0nMScvPgorICAgICAgICAgICAgPC90PgorCisgICAgICAgICAgICA8dCBo
YW5nVGV4dD0iY2JyOiI+CisgICAgICAgICAgICAgIHNwZWNpZmllcyBpZiB0aGUgZGVjb2RlciBw
cmVmZXJzIHRoZSB1c2Ugb2YgYSBjb25zdGFudCBiaXRyYXRlIHZlcnN1cworICAgICAgICAgICAg
ICB2YXJpYWJsZSBiaXRyYXRlLiBQb3NzaWJsZSB2YWx1ZXMgYXJlIDEgYW5kIDAsIHdoZXJlIDEg
c3BlY2lmaWVzIGNvbnN0YW50CisgICAgICAgICAgICAgIGJpdHJhdGUgYW5kIDAgc3BlY2lmaWVz
IHZhcmlhYmxlIGJpdHJhdGUuIElmIG5vIHZhbHVlIGlzIHNwZWNpZmllZCwKKyAgICAgICAgICAg
ICAgdGhlIGRlZmF1bHQgaXMgMCAodmJyKS4gV2hlbiBjYnIgaXMgMSwgdGhlIG1heGltdW0gYXZl
cmFnZSBiaXRyYXRlIGNhbiBzdGlsbAorICAgICAgICAgICAgICBjaGFuZ2UsIGUuZy4gdG8gYWRh
cHQgdG8gY2hhbmdpbmcgbmV0d29yayBjb25kaXRpb25zLjx2c3BhY2UgYmxhbmtMaW5lcz0nMScv
PgorICAgICAgICAgICAgPC90PgorCisgICAgICAgICAgICA8dCBoYW5nVGV4dD0idXNlaW5iYW5k
ZmVjOiI+IHNwZWNpZmllcyB0aGF0IHRoZSBkZWNvZGVyIGhhcyB0aGUgY2FwYWJpbGl0eSB0bwor
ICAgICAgICAgICAgdGFrZSBhZHZhbnRhZ2Ugb2YgdGhlIE9wdXMgaW4tYmFuZCBGRUMuIFBvc3Np
YmxlIHZhbHVlcyBhcmUgMSBhbmQgMC4KKyAgICAgICAgICAgIFByb3ZpZGluZyAwIHdoZW4gRkVD
IGNhbm5vdCBiZSB1c2VkIG9uIHRoZSByZWNlaXZpbmcgc2lkZSBpcworICAgICAgICAgICAgUkVD
T01NRU5ERUQuIElmIG5vCisgICAgICAgICAgICB2YWx1ZSBpcyBzcGVjaWZpZWQsIHVzZWluYmFu
ZGZlYyBpcyBhc3N1bWVkIHRvIGJlIDAuCisgICAgICAgICAgICBUaGlzIHBhcmFtZXRlciBpcyBv
bmx5IGEgcHJlZmVyZW5jZSBhbmQgdGhlIHJlY2VpdmVyIE1VU1QgYmUgYWJsZSB0byBwcm9jZXNz
CisgICAgICAgICAgICBwYWNrZXRzIHRoYXQgaW5jbHVkZSBGRUMgaW5mb3JtYXRpb24sIGV2ZW4g
aWYgaXQgbWVhbnMgdGhlIEZFQyBwYXJ0IGlzIGRpc2NhcmRlZC4KKyAgICAgICAgICAgIDx2c3Bh
Y2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKworICAgICAgICAgICAgPHQgaGFuZ1RleHQ9InVzZWR0
eDoiPiBzcGVjaWZpZXMgaWYgdGhlIGRlY29kZXIgcHJlZmVycyB0aGUgdXNlIG9mCisgICAgICAg
ICAgICBEVFguIFBvc3NpYmxlIHZhbHVlcyBhcmUgMSBhbmQgMC4gSWYgbm8gdmFsdWUgaXMgc3Bl
Y2lmaWVkLCB0aGUKKyAgICAgICAgICAgIGRlZmF1bHQgaXMgMC48dnNwYWNlIGJsYW5rTGluZXM9
JzEnLz48L3Q+CisgICAgICAgICAgPC9saXN0PjwvdD4KKworICAgICAgICAgIDx0PkVuY29kaW5n
IGNvbnNpZGVyYXRpb25zOjx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKyAgICAgICAgICA8
dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dD5UaGUgT3B1cyBtZWRpYSB0
eXBlIGlzIGZyYW1lZCBhbmQgY29uc2lzdHMgb2YgYmluYXJ5IGRhdGEgYWNjb3JkaW5nCisgICAg
ICAgICAgICB0byBTZWN0aW9uJm5ic3A7NC44IGluIDx4cmVmIHRhcmdldD0iUkZDNjgzOCIvPi48
L3Q+CisgICAgICAgICAgPC9saXN0PjwvdD4KKworICAgICAgICAgIDx0PlNlY3VyaXR5IGNvbnNp
ZGVyYXRpb25zOiA8L3Q+CisgICAgICAgICAgPHQ+PGxpc3Qgc3R5bGU9ImhhbmdpbmciPgorICAg
ICAgICAgICAgPHQ+U2VlIDx4cmVmIHRhcmdldD0nc2VjdXJpdHktY29uc2lkZXJhdGlvbnMnLz4g
b2YgdGhpcyBkb2N1bWVudC48L3Q+CisgICAgICAgICAgPC9saXN0PjwvdD4KKworICAgICAgICAg
IDx0PkludGVyb3BlcmFiaWxpdHkgY29uc2lkZXJhdGlvbnM6IG5vbmU8dnNwYWNlIGJsYW5rTGlu
ZXM9JzEnLz48L3Q+CisJICA8dD5QdWJsaXNoZWQgc3BlY2lmaWNhdGlvbjogUkZDIFtYWFhYXTwv
dD4KKwkgIDx0Pk5vdGUgdG8gdGhlIFJGQyBFZGl0b3I6IFJlcGxhY2UgW1hYWFhdIHdpdGggdGhl
IG51bWJlciBvZiB0aGUgcHVibGlzaGVkCisgICAgICAgICAgUkZDLjx2c3BhY2UgYmxhbmtMaW5l
cz0nMScvPjwvdD4KKworICAgICAgICAgIDx0PkFwcGxpY2F0aW9ucyB0aGF0IHVzZSB0aGlzIG1l
ZGlhIHR5cGU6IDwvdD4KKyAgICAgICAgICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAg
ICAgICAgICA8dD5BbnkgYXBwbGljYXRpb24gdGhhdCByZXF1aXJlcyB0aGUgdHJhbnNwb3J0IG9m
CisgICAgICAgICAgICBzcGVlY2ggb3IgYXVkaW8gZGF0YSBjYW4gdXNlIHRoaXMgbWVkaWEgdHlw
ZS4gU29tZSBleGFtcGxlcyBhcmUsCisgICAgICAgICAgICBidXQgbm90IGxpbWl0ZWQgdG8sIGF1
ZGlvIGFuZCB2aWRlbyBjb25mZXJlbmNpbmcsIFZvaWNlIG92ZXIgSVAsCisgICAgICAgICAgICBt
ZWRpYSBzdHJlYW1pbmcuPC90PgorICAgICAgICAgIDwvbGlzdD48L3Q+CisKKyAgICAgICAgICA8
dD5GcmFnbWVudCBpZGVudGlmaWVyIGNvbnNpZGVyYXRpb25zOiBOL0E8dnNwYWNlIGJsYW5rTGlu
ZXM9JzEnLz48L3Q+CisKKyAgICAgICAgICA8dD5QZXJzb24gJmFtcDsgZW1haWwgYWRkcmVzcyB0
byBjb250YWN0IGZvciBmdXJ0aGVyIGluZm9ybWF0aW9uOjwvdD4KKyAgICAgICAgICA8dD48bGlz
dCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dD5TSUxLIFN1cHBvcnQgc2lsa3N1cHBv
cnRAc2t5cGUubmV0PC90PgorICAgICAgICAgICAgPHQ+SmVhbi1NYXJjIFZhbGluIGptdmFsaW5A
am12YWxpbi5jYTwvdD4KKyAgICAgICAgICA8L2xpc3Q+PC90PgorCisgICAgICAgICAgPHQ+SW50
ZW5kZWQgdXNhZ2U6IENPTU1PTjx2c3BhY2UgYmxhbmtMaW5lcz0nMScvPjwvdD4KKworICAgICAg
ICAgIDx0PlJlc3RyaWN0aW9ucyBvbiB1c2FnZTo8dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+
CisKKyAgICAgICAgICA8dD48bGlzdCBzdHlsZT0iaGFuZ2luZyI+CisgICAgICAgICAgICA8dD5G
b3IgdHJhbnNmZXIgb3ZlciBSVFAsIHRoZSBSVFAgcGF5bG9hZCBmb3JtYXQgKDx4cmVmCisgICAg
ICAgICAgICB0YXJnZXQ9J29wdXMtcnRwLXBheWxvYWQtZm9ybWF0Jy8+IG9mIHRoaXMgZG9jdW1l
bnQpIFNIQUxMIGJlCisgICAgICAgICAgICB1c2VkLjwvdD4KKyAgICAgICAgICA8L2xpc3Q+PC90
PgorCisgICAgICAgICAgPHQ+QXV0aG9yOjwvdD4KKyAgICAgICAgICA8dD48bGlzdCBzdHlsZT0i
aGFuZ2luZyI+CisgICAgICAgICAgICA8dD5KdWxpYW4gU3BpdHRrYSBqc3BpdHRrYUBnbWFpbC5j
b208dnNwYWNlIGJsYW5rTGluZXM9JzEnLz48L3Q+CisgICAgICAgICAgICA8dD5Lb2VuIFZvcyBr
b2Vudm9zNzRAZ21haWwuY29tPHZzcGFjZSBibGFua0xpbmVzPScxJy8+PC90PgorICAgICAgICAg
ICAgPHQ+SmVhbi1NYXJjIFZhbGluIGptdmFsaW5Aam12YWxpbi5jYTx2c3BhY2UgYmxhbmtMaW5l
cz0nMScvPjwvdD4KKyAgICAgICAgICA8L2xpc3Q+PC90PgorCisgICAgICAgICAgPHQ+IENoYW5n
ZSBjb250cm9sbGVyOiBJRVRGIFBheWxvYWQgV29ya2luZyBHcm91cCBkZWxlZ2F0ZWQgZnJvbSB0
aGUgSUVTRzwvdD4KKyAgICAgIDwvc2VjdGlvbj4KKyAgICA8L3NlY3Rpb24+CisgICAgCisgICAg
PHNlY3Rpb24gdGl0bGU9J1NEUCBDb25zaWRlcmF0aW9ucyc+CisgICAgICAgIDx0PlRoZSBpbmZv
cm1hdGlvbiBkZXNjcmliZWQgaW4gdGhlIG1lZGlhIHR5cGUgc3BlY2lmaWNhdGlvbiBoYXMgYQor
ICAgICAgICBzcGVjaWZpYyBtYXBwaW5nIHRvIGZpZWxkcyBpbiB0aGUgU2Vzc2lvbiBEZXNjcmlw
dGlvbiBQcm90b2NvbCAoU0RQKQorICAgICAgICA8eHJlZiB0YXJnZXQ9IlJGQzQ1NjYiLz4sIHdo
aWNoIGlzIGNvbW1vbmx5IHVzZWQgdG8gZGVzY3JpYmUgUlRQCisgICAgICAgIHNlc3Npb25zLiBX
aGVuIFNEUCBpcyB1c2VkIHRvIHNwZWNpZnkgc2Vzc2lvbnMgZW1wbG95aW5nIE9wdXMsCisgICAg
ICAgIHRoZSBtYXBwaW5nIGlzIGFzIGZvbGxvd3M6PC90PgorCisgICAgICAgIDx0PgorICAgICAg
ICAgIDxsaXN0IHN0eWxlPSJzeW1ib2xzIj4KKyAgICAgICAgICAgIDx0PlRoZSBtZWRpYSB0eXBl
ICgiYXVkaW8iKSBnb2VzIGluIFNEUCAibT0iIGFzIHRoZSBtZWRpYSBuYW1lLjwvdD4KKworICAg
ICAgICAgICAgPHQ+VGhlIG1lZGlhIHN1YnR5cGUgKCJvcHVzIikgZ29lcyBpbiBTRFAgImE9cnRw
bWFwIiBhcyB0aGUgZW5jb2RpbmcKKyAgICAgICAgICAgIG5hbWUuIFRoZSBSVFAgY2xvY2sgcmF0
ZSBpbiAiYT1ydHBtYXAiIE1VU1QgYmUgNDgwMDAgYW5kIHRoZSBudW1iZXIgb2YKKyAgICAgICAg
ICAgIGNoYW5uZWxzIE1VU1QgYmUgMi48L3Q+CisKKyAgICAgICAgICAgIDx0PlRoZSBPUFRJT05B
TCBtZWRpYSB0eXBlIHBhcmFtZXRlcnMgInB0aW1lIiBhbmQgIm1heHB0aW1lIiBhcmUKKyAgICAg
ICAgICAgIG1hcHBlZCB0byAiYT1wdGltZSIgYW5kICJhPW1heHB0aW1lIiBhdHRyaWJ1dGVzLCBy
ZXNwZWN0aXZlbHksIGluIHRoZQorICAgICAgICAgICAgU0RQLjwvdD4KKworICAgICAgICAgICAg
PHQ+VGhlIE9QVElPTkFMIG1lZGlhIHR5cGUgcGFyYW1ldGVycyAibWF4YXZlcmFnZWJpdHJhdGUi
LAorICAgICAgICAgICAgIm1heHBsYXliYWNrcmF0ZSIsICJzdGVyZW8iLCAiY2JyIiwgInVzZWlu
YmFuZGZlYyIsIGFuZAorICAgICAgICAgICAgInVzZWR0eCIsIHdoZW4gcHJlc2VudCwgTVVTVCBi
ZSBpbmNsdWRlZCBpbiB0aGUgImE9Zm10cCIgYXR0cmlidXRlCisgICAgICAgICAgICBpbiB0aGUg
U0RQLCBleHByZXNzZWQgYXMgYSBtZWRpYSB0eXBlIHN0cmluZyBpbiB0aGUgZm9ybSBvZiBhCisg
ICAgICAgICAgICBzZW1pY29sb24tc2VwYXJhdGVkIGxpc3Qgb2YgcGFyYW1ldGVyPXZhbHVlIHBh
aXJzIChlLmcuLAorICAgICAgICAgICAgbWF4cGxheWJhY2tyYXRlPTQ4MDAwKS4gVGhleSBNVVNU
IE5PVCBiZSBzcGVjaWZpZWQgaW4gYW4KKyAgICAgICAgICAgIFNTUkMtc3BlY2lmaWMgImZtdHAi
IHNvdXJjZS1sZXZlbCBhdHRyaWJ1dGUgKGFzIGRlZmluZWQgaW4KKyAgICAgICAgICAgIFNlY3Rp
b24mbmJzcDs2LjMgb2YmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzU1NzYiLz4pLjwvdD4KKworICAg
ICAgICAgICAgPHQ+VGhlIE9QVElPTkFMIG1lZGlhIHR5cGUgcGFyYW1ldGVycyAic3Byb3AtbWF4
Y2FwdHVyZXJhdGUiLAorICAgICAgICAgICAgYW5kICJzcHJvcC1zdGVyZW8iIE1BWSBiZSBtYXBw
ZWQgdG8gdGhlICJhPWZtdHAiIFNEUCBhdHRyaWJ1dGUgYnkKKyAgICAgICAgICAgIGNvcHlpbmcg
dGhlbSBkaXJlY3RseSBmcm9tIHRoZSBtZWRpYSB0eXBlIHBhcmFtZXRlciBzdHJpbmcgYXMgcGFy
dAorICAgICAgICAgICAgb2YgdGhlIHNlbWljb2xvbi1zZXBhcmF0ZWQgbGlzdCBvZiBwYXJhbWV0
ZXI9dmFsdWUgcGFpcnMgKGUuZy4sCisgICAgICAgICAgICBzcHJvcC1zdGVyZW89MSkuIFRoZXNl
IHNhbWUgT1BUSU9OQUwgbWVkaWEgdHlwZSBwYXJhbWV0ZXJzIE1BWSBhbHNvCisgICAgICAgICAg
ICBiZSBzcGVjaWZpZWQgdXNpbmcgYW4gU1NSQy1zcGVjaWZpYyAiZm10cCIgc291cmNlLWxldmVs
IGF0dHJpYnV0ZQorICAgICAgICAgICAgYXMgZGVzY3JpYmVkIGluIFNlY3Rpb24mbmJzcDs2LjMg
b2YmbmJzcDs8eHJlZiB0YXJnZXQ9IlJGQzU1NzYiLz4uCisgICAgICAgICAgICBUaGV5IE1BWSBi
ZSBzcGVjaWZpZWQgaW4gYm90aCBwbGFjZXMsIGluIHdoaWNoIGNhc2UgdGhlIHBhcmFtZXRlcgor
ICAgICAgICAgICAgaW4gdGhlIHNvdXJjZS1sZXZlbCBhdHRyaWJ1dGUgb3ZlcnJpZGVzIHRoZSBv
bmUgZm91bmQgb24gdGhlCisgICAgICAgICAgICAiYT1mbXRwIiBsaW5lLiBUaGUgdmFsdWUgb2Yg
YW55IHBhcmFtZXRlciB3aGljaCBpcyBub3Qgc3BlY2lmaWVkIGluCisgICAgICAgICAgICBhIHNv
dXJjZS1sZXZlbCBzb3VyY2UgYXR0cmlidXRlIE1VU1QgYmUgdGFrZW4gZnJvbSB0aGUgImE9Zm10
cCIKKyAgICAgICAgICAgIGxpbmUsIGlmIGl0IGlzIHByZXNlbnQgdGhlcmUuPC90PgorCisgICAg
ICAgICAgPC9saXN0PgorICAgICAgICA8L3Q+CisKKyAgICAgICAgPHQ+QmVsb3cgYXJlIHNvbWUg
ZXhhbXBsZXMgb2YgU0RQIHNlc3Npb24gZGVzY3JpcHRpb25zIGZvciBPcHVzOjwvdD4KKworICAg
ICAgICA8dD5FeGFtcGxlIDE6IFN0YW5kYXJkIG1vbm8gc2Vzc2lvbiB3aXRoIDQ4MDAwIEh6IGNs
b2NrIHJhdGU8L3Q+CisgICAgICAgICAgPGZpZ3VyZT4KKyAgICAgICAgICAgIDxhcnR3b3JrPgor
ICAgICAgICAgICAgICA8IVtDREFUQVsKKyAgICBtPWF1ZGlvIDU0MzEyIFJUUC9BVlAgMTAxCisg
ICAgYT1ydHBtYXA6MTAxIG9wdXMvNDgwMDAvMgorICAgICAgICAgICAgICBdXT4KKyAgICAgICAg
ICAgIDwvYXJ0d29yaz4KKyAgICAgICAgICA8L2ZpZ3VyZT4KKworCisgICAgICAgIDx0PkV4YW1w
bGUgMjogMTYwMDAgSHogY2xvY2sgcmF0ZSwgbWF4aW11bSBwYWNrZXQgc2l6ZSBvZiA0MCBtcywK
KyAgICAgICAgcmVjb21tZW5kZWQgcGFja2V0IHNpemUgb2YgNDAgbXMsIG1heGltdW0gYXZlcmFn
ZSBiaXRyYXRlIG9mIDIwMDAwIGJwcywKKyAgICAgICAgcHJlZmVycyB0byByZWNlaXZlIHN0ZXJl
byBidXQgb25seSBwbGFucyB0byBzZW5kIG1vbm8sIEZFQyBpcyBkZXNpcmVkLAorICAgICAgICBE
VFggaXMgbm90IGRlc2lyZWQ8L3Q+CisKKyAgICAgICAgPGZpZ3VyZT4KKyAgICAgICAgICA8YXJ0
d29yaz4KKyAgICAgICAgICAgIDwhW0NEQVRBWworICAgIG09YXVkaW8gNTQzMTIgUlRQL0FWUCAx
MDEKKyAgICBhPXJ0cG1hcDoxMDEgb3B1cy80ODAwMC8yCisgICAgYT1mbXRwOjEwMSBtYXhwbGF5
YmFja3JhdGU9MTYwMDA7IHNwcm9wLW1heGNhcHR1cmVyYXRlPTE2MDAwOworICAgIG1heGF2ZXJh
Z2ViaXRyYXRlPTIwMDAwOyBzdGVyZW89MTsgdXNlaW5iYW5kZmVjPTE7IHVzZWR0eD0wCisgICAg
YT1wdGltZTo0MAorICAgIGE9bWF4cHRpbWU6NDAKKyAgICAgICAgICAgIF1dPgorICAgICAgICAg
IDwvYXJ0d29yaz4KKyAgICAgICAgPC9maWd1cmU+CisKKyAgICAgICAgPHQ+RXhhbXBsZSAzOiBU
d28td2F5IGZ1bGwtYmFuZCBzdGVyZW8gcHJlZmVycmVkPC90PgorCisgICAgICAgIDxmaWd1cmU+
CisgICAgICAgICAgPGFydHdvcms+CisgICAgICAgICAgICA8IVtDREFUQVsKKyAgICBtPWF1ZGlv
IDU0MzEyIFJUUC9BVlAgMTAxCisgICAgYT1ydHBtYXA6MTAxIG9wdXMvNDgwMDAvMgorICAgIGE9
Zm10cDoxMDEgc3RlcmVvPTE7IHNwcm9wLXN0ZXJlbz0xCisgICAgICAgICAgICBdXT4KKyAgICAg
ICAgICA8L2FydHdvcms+CisgICAgICAgIDwvZmlndXJlPgorCisKKyAgICAgIDxzZWN0aW9uIHRp
dGxlPSdTRFAgT2ZmZXIvQW5zd2VyIENvbnNpZGVyYXRpb25zJz4KKworICAgICAgICAgIDx0Pldo
ZW4gdXNpbmcgdGhlIG9mZmVyLWFuc3dlciBwcm9jZWR1cmUgZGVzY3JpYmVkIGluIDx4cmVmCisg
ICAgICAgICAgdGFyZ2V0PSJSRkMzMjY0Ii8+IHRvIG5lZ290aWF0ZSB0aGUgdXNlIG9mIE9wdXMs
IHRoZSBmb2xsb3dpbmcKKyAgICAgICAgICBjb25zaWRlcmF0aW9ucyBhcHBseTo8L3Q+CisKKyAg
ICAgICAgICA8dD48bGlzdCBzdHlsZT0ic3ltYm9scyI+CisKKyAgICAgICAgICAgIDx0Pk9wdXMg
c3VwcG9ydHMgc2V2ZXJhbCBjbG9jayByYXRlcy4gRm9yIHNpZ25hbGluZyBwdXJwb3NlcyBvbmx5
CisgICAgICAgICAgICB0aGUgaGlnaGVzdCwgaS5lLiA0ODAwMCwgaXMgdXNlZC4gVGhlIGFjdHVh
bCBjbG9jayByYXRlIG9mIHRoZQorICAgICAgICAgICAgY29ycmVzcG9uZGluZyBtZWRpYSBpcyBz
aWduYWxlZCBpbnNpZGUgdGhlIHBheWxvYWQgYW5kIGlzIG5vdAorICAgICAgICAgICAgcmVzdHJp
Y3RlZCBieSB0aGlzIHBheWxvYWQgZm9ybWF0IGRlc2NyaXB0aW9uLiBUaGUgZGVjb2RlciBNVVNU
IGJlCisgICAgICAgICAgICBjYXBhYmxlIG9mIGRlY29kaW5nIGV2ZXJ5IHJlY2VpdmVkIGNsb2Nr
IHJhdGUuIEFuIGV4YW1wbGUKKyAgICAgICAgICAgIGlzIHNob3duIGJlbG93OgorCisgICAgICAg
ICAgICA8ZmlndXJlPgorICAgICAgICAgICAgICA8YXJ0d29yaz4KKyAgICAgICAgICAgICAgICA8
IVtDREFUQVsKKyAgICBtPWF1ZGlvIDU0MzEyIFJUUC9BVlAgMTAwCisgICAgYT1ydHBtYXA6MTAw
IG9wdXMvNDgwMDAvMgorICAgICAgICAgICAgICAgIF1dPgorICAgICAgICAgICAgICA8L2FydHdv
cms+CisgICAgICAgICAgICA8L2ZpZ3VyZT4KKyAgICAgICAgICAgIDwvdD4KKworICAgICAgICAg
ICAgPHQ+VGhlICJwdGltZSIgYW5kICJtYXhwdGltZSIgcGFyYW1ldGVycyBhcmUgdW5pZGlyZWN0
aW9uYWwKKyAgICAgICAgICAgIHJlY2VpdmUtb25seSBwYXJhbWV0ZXJzIGFuZCB0eXBpY2FsbHkg
d2lsbCBub3QgY29tcHJvbWlzZQorICAgICAgICAgICAgaW50ZXJvcGVyYWJpbGl0eTsgaG93ZXZl
ciwgc29tZSB2YWx1ZXMgbWlnaHQgY2F1c2UgYXBwbGljYXRpb24KKyAgICAgICAgICAgIHBlcmZv
cm1hbmNlIHRvIHN1ZmZlci4gPHhyZWYKKyAgICAgICAgICAgIHRhcmdldD0iUkZDMzI2NCIvPiBk
ZWZpbmVzIHRoZSBTRFAgb2ZmZXItYW5zd2VyIGhhbmRsaW5nIG9mIHRoZQorICAgICAgICAgICAg
InB0aW1lIiBwYXJhbWV0ZXIuIFRoZSAibWF4cHRpbWUiIHBhcmFtZXRlciBNVVNUIGJlIGhhbmRs
ZWQgaW4gdGhlCisgICAgICAgICAgICBzYW1lIHdheS48L3Q+CisKKyAgICAgICAgICAgIDx0Pgor
ICAgICAgICAgICAgICBUaGUgIm1heHBsYXliYWNrcmF0ZSIgcGFyYW1ldGVyIGlzIGEgdW5pZGly
ZWN0aW9uYWwgcmVjZWl2ZS1vbmx5CisgICAgICAgICAgICAgIHBhcmFtZXRlciB0aGF0IHJlZmxl
Y3RzIGxpbWl0YXRpb25zIG9mIHRoZSBsb2NhbCByZWNlaXZlci4gV2hlbgorICAgICAgICAgICAg
ICBzZW5kaW5nIHRvIGEgc2luZ2xlIGRlc3RpbmF0aW9uLCBhIHNlbmRlciBNVVNUIE5PVCB1c2Ug
YW4gYXVkaW8KKyAgICAgICAgICAgICAgYmFuZHdpZHRoIGhpZ2hlciB0aGFuIG5lY2Vzc2FyeSB0
byBtYWtlIGZ1bGwgdXNlIG9mIGF1ZGlvIHNhbXBsZWQgYXQKKyAgICAgICAgICAgICAgYSBzYW1w
bGluZyByYXRlIG9mICJtYXhwbGF5YmFja3JhdGUiLiBHYXRld2F5cyBvciBzZW5kZXJzIHRoYXQK
KyAgICAgICAgICAgICAgYXJlIHNlbmRpbmcgdGhlIHNhbWUgZW5jb2RlZCBhdWRpbyB0byBtdWx0
aXBsZSBkZXN0aW5hdGlvbnMKKyAgICAgICAgICAgICAgU0hPVUxEIE5PVCB1c2UgYW4gYXVkaW8g
YmFuZHdpZHRoIGhpZ2hlciB0aGFuIG5lY2Vzc2FyeSB0bworICAgICAgICAgICAgICByZXByZXNl
bnQgYXVkaW8gc2FtcGxlZCBhdCAibWF4cGxheWJhY2tyYXRlIiwgYXMgdGhpcyB3b3VsZCBsZWFk
CisgICAgICAgICAgICAgIHRvIGluZWZmaWNpZW50IHVzZSBvZiBuZXR3b3JrIHJlc291cmNlcy4K
KyAgICAgICAgICAgICAgVGhlICJtYXhwbGF5YmFja3JhdGUiIHBhcmFtZXRlciBkb2VzIG5vdAor
ICAgICAgICAgICAgICBhZmZlY3QgaW50ZXJvcGVyYWJpbGl0eS4gQWxzbywgdGhpcyBwYXJhbWV0
ZXIgU0hPVUxEIE5PVCBiZSB1c2VkCisgICAgICAgICAgICAgIHRvIGFkanVzdCB0aGUgYXVkaW8g
YmFuZHdpZHRoIGFzIGEgZnVuY3Rpb24gb2YgdGhlIGJpdHJhdGUsIGFzIHRoaXMKKyAgICAgICAg
ICAgICAgaXMgdGhlIHJlc3BvbnNpYmlsaXR5IG9mIHRoZSBPcHVzIGVuY29kZXIgaW1wbGVtZW50
YXRpb24uCisgICAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICAgIDx0PlRoZSAibWF4YXZlcmFn
ZWJpdHJhdGUiIHBhcmFtZXRlciBpcyBhIHVuaWRpcmVjdGlvbmFsIHJlY2VpdmUtb25seQorICAg
ICAgICAgICAgcGFyYW1ldGVyIHRoYXQgcmVmbGVjdHMgbGltaXRhdGlvbnMgb2YgdGhlIGxvY2Fs
IHJlY2VpdmVyLiBUaGUgc2VuZGVyCisgICAgICAgICAgICBvZiB0aGUgb3RoZXIgc2lkZSBNVVNU
IE5PVCBzZW5kIHdpdGggYW4gYXZlcmFnZSBiaXRyYXRlIGhpZ2hlciB0aGFuCisgICAgICAgICAg
ICAibWF4YXZlcmFnZWJpdHJhdGUiIGFzIGl0IG1pZ2h0IG92ZXJsb2FkIHRoZSBuZXR3b3JrIGFu
ZC9vcgorICAgICAgICAgICAgcmVjZWl2ZXIuIFRoZSAibWF4YXZlcmFnZWJpdHJhdGUiIHBhcmFt
ZXRlciB0eXBpY2FsbHkgd2lsbCBub3QKKyAgICAgICAgICAgIGNvbXByb21pc2UgaW50ZXJvcGVy
YWJpbGl0eTsgaG93ZXZlciwgc29tZSB2YWx1ZXMgbWlnaHQgY2F1c2UKKyAgICAgICAgICAgIGFw
cGxpY2F0aW9uIHBlcmZvcm1hbmNlIHRvIHN1ZmZlciwgYW5kIG91Z2h0IHRvIGJlIHNldCB3aXRo
CisgICAgICAgICAgICBjYXJlLjwvdD4KKworICAgICAgICAgICAgPHQ+VGhlICJzcHJvcC1tYXhj
YXB0dXJlcmF0ZSIgYW5kICJzcHJvcC1zdGVyZW8iIHBhcmFtZXRlcnMgYXJlCisgICAgICAgICAg
ICB1bmlkaXJlY3Rpb25hbCBzZW5kZXItb25seSBwYXJhbWV0ZXJzIHRoYXQgcmVmbGVjdCBsaW1p
dGF0aW9ucyBvZgorICAgICAgICAgICAgdGhlIHNlbmRlciBzaWRlLgorICAgICAgICAgICAgVGhl
eSBhbGxvdyB0aGUgcmVjZWl2ZXIgdG8gc2V0IHVwIGEgcmVkdWNlZC1jb21wbGV4aXR5IGF1ZGlv
CisgICAgICAgICAgICBwcm9jZXNzaW5nIHBpcGVsaW5lIGlmIHRoZSAgc2VuZGVyIGlzIG5vdCBw
bGFubmluZyB0byB1c2UgdGhlIGZ1bGwKKyAgICAgICAgICAgIHJhbmdlIG9mIE9wdXMncyBjYXBh
YmlsaXRpZXMuCisgICAgICAgICAgICBOZWl0aGVyICJzcHJvcC1tYXhjYXB0dXJlcmF0ZSIgbm9y
ICJzcHJvcC1zdGVyZW8iIGFmZmVjdAorICAgICAgICAgICAgaW50ZXJvcGVyYWJpbGl0eSBhbmQg
dGhlIHJlY2VpdmVyIE1VU1QgYmUgY2FwYWJsZSBvZiByZWNlaXZpbmcgYW55IHNpZ25hbC4KKyAg
ICAgICAgICAgIDwvdD4KKworICAgICAgICAgICAgPHQ+CisgICAgICAgICAgICAgIFRoZSAic3Rl
cmVvIiBwYXJhbWV0ZXIgaXMgYSB1bmlkaXJlY3Rpb25hbCByZWNlaXZlLW9ubHkKKyAgICAgICAg
ICAgICAgcGFyYW1ldGVyLiBXaGVuIHNlbmRpbmcgdG8gYSBzaW5nbGUgZGVzdGluYXRpb24sIGEg
c2VuZGVyIE1VU1QKKyAgICAgICAgICAgICAgTk9UIHVzZSBzdGVyZW8gd2hlbiAic3RlcmVvIiBp
cyAwLiBHYXRld2F5cyBvciBzZW5kZXJzIHRoYXQgYXJlCisgICAgICAgICAgICAgIHNlbmRpbmcg
dGhlIHNhbWUgZW5jb2RlZCBhdWRpbyB0byBtdWx0aXBsZSBkZXN0aW5hdGlvbnMgU0hPVUxECisg
ICAgICAgICAgICAgIE5PVCB1c2Ugc3RlcmVvIHdoZW4gInN0ZXJlbyIgaXMgMCwgYXMgdGhpcyB3
b3VsZCBsZWFkIHRvCisgICAgICAgICAgICAgIGluZWZmaWNpZW50IHVzZSBvZiBuZXR3b3JrIHJl
c291cmNlcy4gVGhlICJzdGVyZW8iIHBhcmFtZXRlciBkb2VzCisgICAgICAgICAgICAgIG5vdCBh
ZmZlY3QgaW50ZXJvcGVyYWJpbGl0eS4KKyAgICAgICAgICAgIDwvdD4KKworICAgICAgICAgICAg
PHQ+CisgICAgICAgICAgICAgIFRoZSAiY2JyIiBwYXJhbWV0ZXIgaXMgYSB1bmlkaXJlY3Rpb25h
bCByZWNlaXZlLW9ubHkKKyAgICAgICAgICAgICAgcGFyYW1ldGVyLgorICAgICAgICAgICAgPC90
PgorCisgICAgICAgICAgICA8dD5UaGUgInVzZWluYmFuZGZlYyIgcGFyYW1ldGVyIGlzIGEgdW5p
ZGlyZWN0aW9uYWwgcmVjZWl2ZS1vbmx5CisgICAgICAgICAgICBwYXJhbWV0ZXIuPC90PgorCisg
ICAgICAgICAgICA8dD5UaGUgInVzZWR0eCIgcGFyYW1ldGVyIGlzIGEgdW5pZGlyZWN0aW9uYWwg
cmVjZWl2ZS1vbmx5CisgICAgICAgICAgICBwYXJhbWV0ZXIuPC90PgorCisgICAgICAgICAgICA8
dD5BbnkgdW5rbm93biBwYXJhbWV0ZXIgaW4gYW4gb2ZmZXIgTVVTVCBiZSBpZ25vcmVkIGJ5IHRo
ZSByZWNlaXZlcgorICAgICAgICAgICAgYW5kIE1VU1QgYmUgcmVtb3ZlZCBmcm9tIHRoZSBhbnN3
ZXIuPC90PgorCisgICAgICAgICAgPC9saXN0PjwvdD4KKyAgICAgIAorICAgICAgICA8dD4KKwkg
IFRoZSBPcHVzIHBhcmFtZXRlcnMgaW4gYW4gU0RQIE9mZmVyL0Fuc3dlciBleGNoYW5nZSBhcmUg
Y29tcGxldGVseQorICAgICAgICAgIG9ydGhvZ29uYWwsIGFuZCB0aGVyZSBpcyBubyByZWxhdGlv
bnNoaXAgYmV0d2VlbiB0aGUgU0RQIE9mZmVyIGFuZAorICAgICAgICAgIHRoZSBBbnN3ZXIuCisg
ICAgICAgIDwvdD4KKyAgICAgIDwvc2VjdGlvbj4KKworICAgICAgPHNlY3Rpb24gdGl0bGU9J0Rl
Y2xhcmF0aXZlIFNEUCBDb25zaWRlcmF0aW9ucyBmb3IgT3B1cyc+CisKKyAgICAgICAgPHQ+Rm9y
IGRlY2xhcmF0aXZlIHVzZSBvZiBTRFAgc3VjaCBhcyBpbiBTZXNzaW9uIEFubm91bmNlbWVudCBQ
cm90b2NvbAorICAgICAgICAoU0FQKSwgPHhyZWYgdGFyZ2V0PSJSRkMyOTc0Ii8+LCBhbmQgUlRT
UCwgPHhyZWYgdGFyZ2V0PSJSRkMyMzI2Ii8+LCBmb3IKKyAgICAgICAgT3B1cywgdGhlIGZvbGxv
d2luZyBuZWVkcyB0byBiZSBjb25zaWRlcmVkOjwvdD4KKworICAgICAgICA8dD48bGlzdCBzdHls
ZT0ic3ltYm9scyI+CisKKyAgICAgICAgICA8dD5UaGUgdmFsdWVzIGZvciAibWF4cHRpbWUiLCAi
cHRpbWUiLCAibWF4cGxheWJhY2tyYXRlIiwgYW5kCisgICAgICAgICAgIm1heGF2ZXJhZ2ViaXRy
YXRlIiBvdWdodCB0byBiZSBzZWxlY3RlZCBjYXJlZnVsbHkgdG8gZW5zdXJlIHRoYXQgYQorICAg
ICAgICAgIHJlYXNvbmFibGUgcGVyZm9ybWFuY2UgY2FuIGJlIGFjaGlldmVkIGZvciB0aGUgcGFy
dGljaXBhbnRzIG9mIGEgc2Vzc2lvbi48L3Q+CisKKyAgICAgICAgICA8dD4KKyAgICAgICAgICAg
IFRoZSB2YWx1ZXMgZm9yICJtYXhwdGltZSIsICJwdGltZSIsIGFuZCBvZiB0aGUgcGF5bG9hZAor
ICAgICAgICAgICAgZm9ybWF0IGNvbmZpZ3VyYXRpb24gYXJlIHJlY29tbWVuZGF0aW9ucyBieSB0
aGUgZGVjb2Rpbmcgc2lkZSB0byBlbnN1cmUKKyAgICAgICAgICAgIHRoZSBiZXN0IHBlcmZvcm1h
bmNlIGZvciB0aGUgZGVjb2Rlci4KKyAgICAgICAgICA8L3Q+CisKKyAgICAgICAgICA8dD5BbGwg
b3RoZXIgcGFyYW1ldGVycyBvZiB0aGUgcGF5bG9hZCBmb3JtYXQgY29uZmlndXJhdGlvbiBhcmUg
ZGVjbGFyYXRpdmUKKyAgICAgICAgICBhbmQgYSBwYXJ0aWNpcGFudCBNVVNUIHVzZSB0aGUgY29u
ZmlndXJhdGlvbnMgdGhhdCBhcmUgcHJvdmlkZWQgZm9yCisgICAgICAgICAgdGhlIHNlc3Npb24u
IE1vcmUgdGhhbiBvbmUgY29uZmlndXJhdGlvbiBjYW4gYmUgcHJvdmlkZWQgaWYgbmVjZXNzYXJ5
CisgICAgICAgICAgYnkgZGVjbGFyaW5nIG11bHRpcGxlIFJUUCBwYXlsb2FkIHR5cGVzOyBob3dl
dmVyLCB0aGUgbnVtYmVyIG9mIHR5cGVzCisgICAgICAgICAgb3VnaHQgdG8gYmUga2VwdCBzbWFs
bC48L3Q+CisgICAgICAgIDwvbGlzdD48L3Q+CisgICAgICA8L3NlY3Rpb24+CisgIDwvc2VjdGlv
bj4KKworICAgIDxzZWN0aW9uIHRpdGxlPSdTZWN1cml0eSBDb25zaWRlcmF0aW9ucycgYW5jaG9y
PSdzZWN1cml0eS1jb25zaWRlcmF0aW9ucyc+CisKKyAgICAgIDx0PlVzZSBvZiB2YXJpYWJsZSBi
aXRyYXRlIChWQlIpIGlzIHN1YmplY3QgdG8gdGhlIHNlY3VyaXR5IGNvbnNpZGVyYXRpb25zIGlu
CisgICAgICA8eHJlZiB0YXJnZXQ9IlJGQzY1NjIiLz4uPC90PgorCisgICAgICA8dD5SVFAgcGFj
a2V0cyB1c2luZyB0aGUgcGF5bG9hZCBmb3JtYXQgZGVmaW5lZCBpbiB0aGlzIHNwZWNpZmljYXRp
b24KKyAgICAgIGFyZSBzdWJqZWN0IHRvIHRoZSBzZWN1cml0eSBjb25zaWRlcmF0aW9ucyBkaXNj
dXNzZWQgaW4gdGhlIFJUUAorICAgICAgc3BlY2lmaWNhdGlvbiA8eHJlZiB0YXJnZXQ9IlJGQzM1
NTAiLz4sIGFuZCBpbiBhbnkgYXBwbGljYWJsZSBSVFAgcHJvZmlsZSBzdWNoIGFzCisgICAgICBS
VFAvQVZQIDx4cmVmIHRhcmdldD0iUkZDMzU1MSIvPiwgUlRQL0FWUEYgPHhyZWYgdGFyZ2V0PSJS
RkM0NTg1Ii8+LAorICAgICAgUlRQL1NBVlAgPHhyZWYgdGFyZ2V0PSJSRkMzNzExIi8+IG9yIFJU
UC9TQVZQRiA8eHJlZiB0YXJnZXQ9IlJGQzUxMjQiLz4uCisgICAgICBIb3dldmVyLCBhcyAiU2Vj
dXJpbmcgdGhlIFJUUCBQcm90b2NvbCBGcmFtZXdvcms6CisgICAgICBXaHkgUlRQIERvZXMgTm90
IE1hbmRhdGUgYSBTaW5nbGUgTWVkaWEgU2VjdXJpdHkgU29sdXRpb24iCisgICAgICA8eHJlZiB0
YXJnZXQ9IlJGQzcyMDIiLz4gZGlzY3Vzc2VzLCBpdCBpcyBub3QgYW4gUlRQIHBheWxvYWQKKyAg
ICAgIGZvcm1hdCdzIHJlc3BvbnNpYmlsaXR5IHRvIGRpc2N1c3Mgb3IgbWFuZGF0ZSB3aGF0IHNv
bHV0aW9ucyBhcmUgdXNlZAorICAgICAgdG8gbWVldCB0aGUgYmFzaWMgc2VjdXJpdHkgZ29hbHMg
bGlrZSBjb25maWRlbnRpYWxpdHksIGludGVncml0eSBhbmQKKyAgICAgIHNvdXJjZSBhdXRoZW50
aWNpdHkgZm9yIFJUUCBpbiBnZW5lcmFsLiAgVGhpcyByZXNwb25zaWJpbGl0eSBsYXlzIG9uCisg
ICAgICBhbnlvbmUgdXNpbmcgUlRQIGluIGFuIGFwcGxpY2F0aW9uLiAgVGhleSBjYW4gZmluZCBn
dWlkYW5jZSBvbgorICAgICAgYXZhaWxhYmxlIHNlY3VyaXR5IG1lY2hhbmlzbXMgYW5kIGltcG9y
dGFudCBjb25zaWRlcmF0aW9ucyBpbiBPcHRpb25zCisgICAgICBmb3IgU2VjdXJpbmcgUlRQIFNl
c3Npb25zIFtJLUQuaWV0Zi1hdnRjb3JlLXJ0cC1zZWN1cml0eS1vcHRpb25zXS4KKyAgICAgIEFw
cGxpY2F0aW9ucyBTSE9VTEQgdXNlIG9uZSBvciBtb3JlIGFwcHJvcHJpYXRlIHN0cm9uZyBzZWN1
cml0eQorICAgICAgbWVjaGFuaXNtcy48L3Q+CisKKyAgICAgIDx0PlRoaXMgcGF5bG9hZCBmb3Jt
YXQgYW5kIHRoZSBPcHVzIGVuY29kaW5nIGRvIG5vdCBleGhpYml0IGFueQorICAgICAgc2lnbmlm
aWNhbnQgbm9uLXVuaWZvcm1pdHkgaW4gdGhlIHJlY2VpdmVyLWVuZCBjb21wdXRhdGlvbmFsIGxv
YWQgYW5kIHRodXMKKyAgICAgIGFyZSB1bmxpa2VseSB0byBwb3NlIGEgZGVuaWFsLW9mLXNlcnZp
Y2UgdGhyZWF0IGR1ZSB0byB0aGUgcmVjZWlwdCBvZgorICAgICAgcGF0aG9sb2dpY2FsIGRhdGFn
cmFtcy48L3Q+CisgICAgPC9zZWN0aW9uPgorCisgICAgPHNlY3Rpb24gdGl0bGU9J0Fja25vd2xl
ZGdlbWVudHMnPgorICAgIDx0Pk1hbnkgcGVvcGxlIGhhdmUgbWFkZSB1c2VmdWwgY29tbWVudHMg
YW5kIHN1Z2dlc3Rpb25zIGNvbnRyaWJ1dGluZyB0byB0aGlzIGRvY3VtZW50LiAKKyAgICAgIElu
IHBhcnRpY3VsYXIsIHdlIHdvdWxkIGxpa2UgdG8gdGhhbmsKKyAgICAgIFRpbmEgbGUgR3JhbmQs
IEN1bGxlbiBKZW5uaW5ncywgSm9uYXRoYW4gTGVubm94LCBHcmVnb3J5IE1heHdlbGwsIENvbGlu
IFBlcmtpbnMsIEphbiBTa29nbHVuZCwKKyAgICAgIFRpbW90aHkgQi4gVGVycmliZXJyeSwgTWFy
dGluIFRob21wc29uLCBKdXN0aW4gVWJlcnRpLCBNYWdudXMgV2VzdGVybHVuZCwgYW5kIE1vIFph
bmF0eS48L3Q+CisgICAgPC9zZWN0aW9uPgorICA8L21pZGRsZT4KKworICA8YmFjaz4KKyAgICA8
cmVmZXJlbmNlcyB0aXRsZT0iTm9ybWF0aXZlIFJlZmVyZW5jZXMiPgorICAgICAgJnJmYzIxMTk7
CisgICAgICAmcmZjMzM4OTsKKyAgICAgICZyZmMzNTUwOworICAgICAgJnJmYzM3MTE7CisgICAg
ICAmcmZjMzU1MTsKKyAgICAgICZyZmM2ODM4OworICAgICAgJnJmYzQ4NTU7CisgICAgICAmcmZj
NDU2NjsKKyAgICAgICZyZmMzMjY0OworICAgICAgJnJmYzIzMjY7CisgICAgICAmcmZjNTU3NjsK
KyAgICAgICZyZmM2NTYyOworICAgICAgJnJmYzY3MTY7CisgICAgPC9yZWZlcmVuY2VzPgorCisg
ICAgPHJlZmVyZW5jZXMgdGl0bGU9IkluZm9ybWF0aXZlIFJlZmVyZW5jZXMiPgorICAgICAgJnJm
YzI5NzQ7CisgICAgICAmcmZjNDU4NTsKKyAgICAgICZyZmM1MTI0OworICAgICAgJnJmYzU0MDU7
CisgICAgICAmcmZjNzIwMjsKKyAgICAgIAorICAgICAgPHJlZmVyZW5jZSBhbmNob3I9J3JtY2F0
JyB0YXJnZXQ9J2h0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvd2cvcm1jYXQvZG9jdW1lbnRz
Lyc+CisgICAgICAgIDxmcm9udD4KKyAgICAgICAgICA8dGl0bGU+cm1jYXQgZG9jdW1lbnRzPC90
aXRsZT4KKyAgICAgICAgICA8YXV0aG9yLz4KKyAgICAgICAgICA8ZGF0ZS8+CisgICAgICAgICAg
PGFic3RyYWN0PgorICAgICAgICAgICAgPHQ+PC90PgorICAgICAgICAgIDwvYWJzdHJhY3Q+PC9m
cm9udD4KKyAgICAgIDwvcmVmZXJlbmNlPgorCisKKyAgICA8L3JlZmVyZW5jZXM+CisKKyAgPC9i
YWNrPgorPC9yZmM+CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9vcHVzX2luX2lzb2JtZmYuY3NzIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1
c19pbl9pc29ibWZmLmNzcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZmZlOGY0NWFlOTk1OWJiZDljODRmOTZlYzgz
MmE5YTBhZTVlMGRjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1c19pbl9pc29ibWZmLmNzcwpA
QCAtMCwwICsxLDYwIEBACisvKiBOb3JtYWwgbGlua3MgKi8KKy5ub3JtYWxfbGluayBhOmxpbmsK
K3sKKyAgICBjb2xvciA6IHllbGxvdzsKK30KKy5ub3JtYWxfbGluayBhOnZpc2l0ZWQKK3sKKyAg
ICBjb2xvciA6IGdyZWVuOworfQorCisvKiBCb3hlcyAqLworLnByZQoreworCXdoaXRlLXNwYWNl
OiBwcmU7ICAgICAgICAgICAvKiBDU1MgMi4wICovCisJd2hpdGUtc3BhY2U6IHByZS13cmFwOyAg
ICAgIC8qIENTUyAyLjEgKi8KKwl3aGl0ZS1zcGFjZTogLXByZS13cmFwOyAgICAgLyogT3BlcmEg
NC02ICovCisJd2hpdGUtc3BhY2U6IC1vLXByZS13cmFwOyAgIC8qIE9wZXJhIDcgKi8KKwl3aGl0
ZS1zcGFjZTogLW1vei1wcmUtd3JhcDsgLyogTW96aWxsYSAqLworCXdoaXRlLXNwYWNlOiAtaHAt
cHJlLXdyYXA7ICAvKiBIUCBQcmludGVycyAqLworCXdvcmQtd3JhcCAgOiBicmVhay13b3JkOyAg
ICAvKiBJRSA1KyAqLworfQorCisudGl0bGVfYm94Cit7CisgICAgd2lkdGggICAgICAgICAgICA6
IDQ3MHB4OworICAgIGhlaWdodCAgICAgICAgICAgOiA3MHB4OworICAgIG1hcmdpbiAgICAgICAg
ICAgOiAycHggNTBweCAycHggMnB4OworICAgIHBhZGRpbmcgICAgICAgICAgOiAxMHB4OworICAg
IGJvcmRlciAgICAgICAgICAgOiAxcHggc29saWQgYmxhY2s7CisgICAgYmFja2dyb3VuZC1jb2xv
ciA6ICM2NjY2NjY7CisgICAgd2hpdGUtc3BhY2UgICAgICA6IHByZTsKKyAgICBmbG9hdCAgICAg
ICAgICAgIDogbGVmdDsKKyAgICB0ZXh0LWFsaWduICAgICAgIDogY2VudGVyOworICAgIGNvbG9y
ICAgICAgICAgICAgOiAjQzBDMEMwOworICAgIGZvbnQtc2l6ZSAgICAgICAgOiA1MHB0OworICAg
IGZvbnQtc3R5bGUgICAgICAgOiBpdGFsaWM7Cit9CisKKy5zdWJpbmRleF9ib3gKK3sKKyAgICBt
YXJnaW4gICAgICAgICAgIDogNXB4OworICAgIHBhZGRpbmcgICAgICAgICAgOiAxNHB4IDIycHg7
CisgICAgYm9yZGVyICAgICAgICAgICA6IDFweCBzb2xpZCBibGFjazsKKyAgICBiYWNrZ3JvdW5k
LWNvbG9yIDogIzc3ODg3NzsKKyAgICBmbG9hdCAgICAgICAgICAgIDogbGVmdDsKKyAgICB0ZXh0
LWFsaWduICAgICAgIDogY2VudGVyOworICAgIGNvbG9yICAgICAgICAgICAgOiAjMTE1NTU1Owor
ICAgIGZvbnQtc2l6ZSAgICAgICAgOiAzMnB0OworfQorCisuZnJhbWVfYm94Cit7CisgICAgbWFy
Z2luICAgICAgICAgICA6IDEwcHg7CisgICAgcGFkZGluZyAgICAgICAgICA6IDEwcHg7CisgICAg
Ym9yZGVyICAgICAgICAgICA6IDBweDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yIDogIzA4NDA0MDsK
KyAgICB0ZXh0LWFsaWduICAgICAgIDogbGVmdDsKKyAgICBjb2xvciAgICAgICAgICAgIDogI0Mw
QzBDMDsKKyAgICBmb250LWZhbWlseSAgICAgIDogbW9ub3NwYWNlOworfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9k
b2Mvb3B1c19pbl9pc29ibWZmLmh0bWwgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2RvYy9vcHVzX2luX2lzb2JtZmYuaHRtbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5hMTE3NWRiZmRkZTI1ZTgzNzJlZDZmYzRkMDQwMWZjYTkyMmM1OTllCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9kb2Mvb3B1c19pbl9pc29ibWZmLmh0bWwKQEAgLTAsMCArMSw2ODQgQEAKKzwhRE9D
VFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxLy9FTiIgImh0dHA6Ly93d3cu
dzMub3JnL1RSL2h0bWw0L3N0cmljdC5kdGQiPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAg
IDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Im9wdXNfaW5faXNv
Ym1mZi5jc3MiLz4KKyAgICAgICAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250
ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiIC8+CisgICAgICAgIDx0aXRsZT5FbmNhcHN1
bGF0aW9uIG9mIE9wdXMgaW4gSVNPIEJhc2UgTWVkaWEgRmlsZSBGb3JtYXQ8L3RpdGxlPgorICAg
IDwvaGVhZD4KKyAgICA8Ym9keSBiZ2NvbG9yPSIweDMzMzMzMyIgdGV4dD0iIzYwQjBDMCI+Cisg
ICAgICAgIDxiPjx1PkVuY2Fwc3VsYXRpb24gb2YgT3B1cyBpbiBJU08gQmFzZSBNZWRpYSBGaWxl
IEZvcm1hdDwvdT48L2I+PGJyPgorICAgICAgICA8Zm9udCBzaXplPSIyIj5sYXN0IHVwZGF0ZWQ6
IEFwcmlsIDI4LCAyMDE2PC9mb250Pjxicj4KKyAgICAgICAgPGJyPgorICAgICAgICA8ZGl2IGNs
YXNzPSJub3JtYWxfbGluayBwcmUgZnJhbWVfYm94Ij4KKworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBFbmNhcHN1bGF0aW9uIG9mIE9wdXMgaW4gSVNPIEJhc2UgTWVkaWEgRmlsZSBG
b3JtYXQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWZXJzaW9uIDAu
Ni44IChpbmNvbXBsZXRlKQorCisKK1RhYmxlIG9mIENvbnRlbnRzCis8YSBocmVmPSIjMSI+MTwv
YT4gU2NvcGUKKzxhIGhyZWY9IiMyIj4yPC9hPiBOb3JtYXRpdmUgUmVmZXJlbmNlcworPGEgaHJl
Zj0iIzMiPjM8L2E+IFRlcm1zIGFuZCBEZWZpbml0aW9ucworPGEgaHJlZj0iIzQiPjQ8L2E+IERl
c2lnbiBSdWxlcyBvZiBFbmNhcHN1bGF0aW9uCisgICAgPGEgaHJlZj0iIzQuMSI+NC4xPC9hPiBG
aWxlIFR5cGUgSW5kZW50aWZpY2F0aW9uCisgICAgPGEgaHJlZj0iIzQuMiI+NC4yPC9hPiBPdmVy
dmlldyBvZiBUcmFjayBTdHJ1Y3R1cmUKKyAgICA8YSBocmVmPSIjNC4zIj40LjM8L2E+IERlZmlu
aXRpb25zIG9mIE9wdXMgc2FtcGxlCisgICAgICAgIDxhIGhyZWY9IiM0LjMuMSI+NC4zLjE8L2E+
IFNhbXBsZSBlbnRyeSBmb3JtYXQKKyAgICAgICAgPGEgaHJlZj0iIzQuMy4yIj40LjMuMjwvYT4g
T3B1cyBTcGVjaWZpYyBCb3gKKyAgICAgICAgPGEgaHJlZj0iIzQuMy4zIj40LjMuMzwvYT4gU2Ft
cGxlIGZvcm1hdAorICAgICAgICA8YSBocmVmPSIjNC4zLjQiPjQuMy40PC9hPiBEdXJhdGlvbiBv
ZiBPcHVzIHNhbXBsZQorICAgICAgICA8YSBocmVmPSIjNC4zLjUiPjQuMy41PC9hPiBTdWItc2Ft
cGxlCisgICAgICAgIDxhIGhyZWY9IiM0LjMuNiI+NC4zLjY8L2E+IFJhbmRvbSBBY2Nlc3MKKyAg
ICAgICAgICAgIDxhIGhyZWY9IiM0LjMuNi4xIj40LjMuNi4xPC9hPiBSYW5kb20gQWNjZXNzIFBv
aW50CisgICAgICAgICAgICA8YSBocmVmPSIjNC4zLjYuMiI+NC4zLjYuMjwvYT4gUHJlLXJvbGwK
KyAgICA8YSBocmVmPSIjNC40Ij40LjQ8L2E+IFRyaW1taW5nIG9mIEFjdHVhbCBEdXJhdGlvbgor
ICAgIDxhIGhyZWY9IiM0LjUiPjQuNTwvYT4gQ2hhbm5lbCBMYXlvdXQgKGluZm9ybWF0aXZlKQor
ICAgIDxhIGhyZWY9IiM0LjYiPjQuNjwvYT4gQmFzaWMgU3RydWN0dXJlIChpbmZvcm1hdGl2ZSkK
KyAgICAgICAgPGEgaHJlZj0iIzQuNi4xIj40LjYuMjwvYT4gSW5pdGlhbCBNb3ZpZQorICAgICAg
ICA8YSBocmVmPSIjNC42LjIiPjQuNi4zPC9hPiBNb3ZpZSBGcmFnbWVudHMKKyAgICA8YSBocmVm
PSIjNC43Ij40Ljc8L2E+IEV4YW1wbGUgb2YgRW5jYXBzdWxhdGlvbiAoaW5mb3JtYXRpdmUpCis8
YSBocmVmPSIjNSI+NTwvYT4gQXV0aG9yJ3MgQWRkcmVzcworCis8YSBuYW1lPSIxIj48L2E+Cisx
IFNjb3BlCisgICAgVGhpcyBzcGVjaWZpY2F0aW9uIHNwZWNpZmllcyB0aGUgZnVuZGFtZW50YWwg
d2F5IG9mIHRoZSBlbmNhcHN1bGF0aW9uIG9mIE9wdXMgY29kZWQgYml0c3RyZWFtcyBpbiBJU08g
QmFzZSBNZWRpYQorICAgIGZpbGUgZm9ybWF0IGFuZCBpdHMgZGVyaXZhdGl2ZXMuIFRoZSBlbmNh
cHN1bGF0aW9uIG9mIE9wdXMgY29kZWQgYml0c3RyZWFtcyBpbiBRdWlja1RpbWUgZmlsZSBmb3Jt
YXQgaXMgb3V0c2lkZQorICAgIHRoZSBzY29wZSBvZiB0aGlzIHNwZWNpZmljYXRpb24uCisKKzxh
IG5hbWU9IjIiPjwvYT4KKzIgTm9ybWF0aXZlIFJlZmVyZW5jZXMKKyAgICBbMV0gSVNPL0lFQyAx
NDQ5Ni0xMjoyMDE1IENvcnJlY3RlZCB2ZXJzaW9uCisgICAgICAgIEluZm9ybWF0aW9uIHRlY2hu
b2xvZ3kg4oCUIENvZGluZyBvZiBhdWRpby12aXN1YWwgb2JqZWN0cyDigJQgUGFydCAxMjogSVNP
IGJhc2UgbWVkaWEgZmlsZSBmb3JtYXQKKworICAgIFsyXSBSRkMgNjcxNgorICAgICAgICBEZWZp
bml0aW9uIG9mIHRoZSBPcHVzIEF1ZGlvIENvZGVjCisKKyAgICBbM10gZHJhZnQtaWV0Zi1jb2Rl
Yy1vZ2dvcHVzLTA2CisgICAgICAgIE9nZyBFbmNhcHN1bGF0aW9uIGZvciB0aGUgT3B1cyBBdWRp
byBDb2RlYworCis8YSBuYW1lPSIzIj48L2E+CiszIFRlcm1zIGFuZCBEZWZpbml0aW9ucworICAg
IDMuMSBhY3RpdmUgdHJhY2sKKyAgICAgICAgZW5hYmxlZCB0cmFjayBmcm9tIHRoZSBub24tYWx0
ZXJuYXRlIGdyb3VwIG9yIHNlbGVjdGVkIHRyYWNrIGZyb20gYWx0ZXJuYXRlIGdyb3VwCisKKyAg
ICAzLjIgYWN0dWFsIGR1cmF0aW9uCisgICAgICAgIGR1cmF0aW9uIGNvbnN0cnVjdGVkIGZyb20g
dmFsaWQgc2FtcGxlcworCisgICAgMy4zIGVkaXQKKyAgICAgICAgZW50cnkgaW4gdGhlIEVkaXQg
TGlzdCBCb3gKKworICAgIDMuNCBwYWRkZWQgc2FtcGxlcworICAgICAgICBQQ00gc2FtcGxlcyBh
ZnRlciBkZWNvZGluZyBPcHVzIHNhbXBsZShzKSB3aGljaCBhcmUgbm90IHZhbGlkIHNhbXBsZXMK
KyAgICAgICAgQW4gT3B1cyBiaXRzdHJlYW0gYWx3YXlzIGNvbnRhaW5zIHRoZW0gcGFydGlhbGx5
IGF0IHRoZSBiZWdpbm5pbmcgYW5kIG1heSBjb250YWluIHRoZW0gaW4gcGFydCBhdCB0aGUgZW5k
LCBhcworICAgICAgICBsb25nIGFzIG5vdCBwaHlzaWNhbGx5IHJlbW92ZWQgeWV0IGF0IHRoZSBi
ZWdpbm5pbmcgYW5kL29yIHRoZSBlbmQuCisKKyAgICAzLjUgcHJpbWluZyBzYW1wbGVzCisgICAg
ICAgIHBhZGRlZCBzYW1wbGVzIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIE9wdXMgYml0c3RyZWFt
CisKKyAgICAzLjYgc2FtcGxlLWFjY3VyYXRlCisgICAgICAgIGZvciBhbnkgUENNIHNhbXBsZSwg
YSB0aW1lc3RhbXAgZXhhY3RseSBtYXRjaGluZyBpdHMgc2FtcGxpbmcgdGltZXN0YW1wIGlzIHBy
ZXNlbnQgaW4gdGhlIG1lZGlhIHRpbWVsaW5lLgorCisgICAgMy43IHZhbGlkIHNhbXBsZXMKKyAg
ICAgICAgUENNIHNhbXBsZXMgYWZ0ZXIgZGVjb2RpbmcgT3B1cyBzYW1wbGUocykgY29ycmVzcG9u
ZGluZyB0byBpbnB1dCBQQ00gc2FtcGxlcworCis8YSBuYW1lPSI0Ij48L2E+Cis0IERlc2lnbiBS
dWxlcyBvZiBFbmNhcHN1bGF0aW9uCisgICAgNC4xIEZpbGUgVHlwZSBJbmRlbnRpZmljYXRpb248
YSBuYW1lPSI0LjEiPjwvYT4KKyAgICAgICAgVGhpcyBzcGVjaWZpY2F0aW9uIGRvZXMgbm90IGRl
ZmluZSBhbnkgYnJhbmQgdG8gZGVjbGFyZSBmaWxlcyBhcmUgY29uZm9ybWFudCB0byB0aGlzIHNw
ZWNpZmljYXRpb24uIEhvd2V2ZXIsCisgICAgICAgIGZpbGVzIGNvbmZvcm1hbnQgdG8gdGhpcyBz
cGVjaWZpY2F0aW9uIHNoYWxsIGNvbnRhaW4gYXQgbGVhc3Qgb25lIGJyYW5kLCB3aGljaCBzdXBw
b3J0cyB0aGUgcmVxdWlyZW1lbnRzIGFuZCB0aGUKKyAgICAgICAgcmVxdWlyZW1lbnRzIGRlc2Ny
aWJlZCBpbiB0aGlzIGNsYXVzZSB3aXRob3V0IGNvbnRyYWRpY3Rpb24sIGluIHRoZSBjb21wYXRp
YmxlIGJyYW5kcyBsaXN0IG9mIHRoZSBGaWxlIFR5cGUgQm94LgorICAgICAgICBBcyBhbiBleGFt
cGxlLCB0aGUgbWluaW1hbCBzdXBwb3J0IG9mIHRoZSBlbmNhcHN1bGF0aW9uIG9mIE9wdXMgYml0
c3RyZWFtcyBpbiBJU08gQmFzZSBNZWRpYSBmaWxlIGZvcm1hdCByZXF1aXJlcworICAgICAgICB0
aGUgJ2lzbzInIGJyYW5kIGluIHRoZSBjb21wYXRpYmxlIGJyYW5kcyBsaXN0IHNpbmNlIHN1cHBv
cnQgb2Ygcm9sbCBncm91cHMgaXMgcmVxdWlyZWQuCis8YSBuYW1lPSI0LjIiPjwvYT4KKyAgICA0
LjIgT3ZlcnZpZXcgb2YgVHJhY2sgU3RydWN0dXJlCisgICAgICAgIFRoaXMgY2xhdXNlIHN1bW1h
cml6ZXMgcmVxdWlyZW1lbnRzIG9mIHRoZSBlbmNhcHN1bGF0aW9uIG9mIE9wdXMgY29kZWQgYml0
c3RyZWFtIGFzIG1lZGlhIGRhdGEgaW4gYXVkaW8gdHJhY2tzCisgICAgICAgIGluIGZpbGUgZm9y
bWF0cyBjb21wbGlhbnQgd2l0aCB0aGUgSVNPIEJhc2UgTWVkaWEgRmlsZSBGb3JtYXQuIFRoZSBk
ZXRhaWxzIGFyZSBkZXNjcmliZWQgaW4gY2xhdXNlcyBhZnRlciB0aGlzCisgICAgICAgIGNsYXVz
ZS4KKyAgICAgICAgICAgICsgVGhlIGhhbmRsZXJfdHlwZSBmaWVsZCBpbiB0aGUgSGFuZGxlciBS
ZWZlcmVuY2UgQm94IHNoYWxsIGJlIHNldCB0byAnc291bicuCisgICAgICAgICAgICArIFRoZSBN
ZWRpYSBJbmZvcm1hdGlvbiBCb3ggc2hhbGwgY29udGFpbiB0aGUgU291bmQgTWVkaWEgSGVhZGVy
IEJveC4KKyAgICAgICAgICAgICsgVGhlIGNvZGluZ25hbWUgb2YgdGhlIHNhbXBsZSBlbnRyeSBp
cyAnT3B1cycuCisgICAgICAgICAgICAgICAgVGhpcyBzcGVjaWZpY2F0aW9uIGRvZXMgbm90IGRl
ZmluZSBhbnkgZW5jYXBzdWxhdGlvbiB1c2luZyBNUDRBdWRpb1NhbXBsZUVudHJ5IHdpdGggb2Jq
ZWN0VHlwZUluZGljYXRpb24KKyAgICAgICAgICAgICAgICBzcGVjaWZpZWQgYnkgdGhlIE1QRUct
NCBSZWdpc3RyYXRpb24gQXV0aG9yaXR5IChodHRwOi8vd3d3Lm1wNHJhLm9yZy8pLgorICAgICAg
ICAgICAgICAgIFNlZSA0LjMuMSBTYW1wbGUgZW50cnkgZm9ybWF0IHRvIGdldCB0aGUgZGV0YWls
cyBhYm91dCB0aGUgc2FtcGxlIGVudHJ5LgorICAgICAgICAgICAgKyBUaGUgJ2RPcHMnIGJveCBp
cyBhZGRlZCB0byB0aGUgc2FtcGxlIGVudHJ5IHRvIGNvbnZleSBpbml0aWFsaXppbmcgaW5mb3Jt
YXRpb24gZm9yIHRoZSBkZWNvZGVyLgorICAgICAgICAgICAgICAgIFNlZSA0LjMuMiBPcHVzIFNw
ZWNpZmljIEJveCB0byBnZXQgdGhlIGRldGFpbHMuCisgICAgICAgICAgICArIEFuIE9wdXMgc2Ft
cGxlIGlzIGV4YWN0bHkgb25lIE9wdXMgcGFja2V0IGZvciBlYWNoIG9mIGRpZmZlcmVudCBPcHVz
IGJpdHN0cmVhbXMuCisgICAgICAgICAgICAgICAgU2VlIDQuMy4zIFNhbXBsZSBmb3JtYXQgdG8g
Z2V0IHRoZSBkZXRhaWxzLgorICAgICAgICAgICAgKyBFdmVyeSBPcHVzIHNhbXBsZSBpcyBhIHN5
bmMgc2FtcGxlIGJ1dCByZXF1aXJlcyBwcmUtcm9sbCBmb3IgZXZlcnkgcmFuZG9tIGFjY2VzcyB0
byBnZXQgY29ycmVjdCBvdXRwdXQuCisgICAgICAgICAgICAgICAgU2VlIDQuMy42IFJhbmRvbSBB
Y2Nlc3MgdG8gZ2V0IHRoZSBkZXRhaWxzLgorPGEgbmFtZT0iNC4zIj48L2E+CisgICAgNC4zIERl
ZmluaXRpb25zIG9mIE9wdXMgc2FtcGxlCisgICAgICAgIDQuMy4xIFNhbXBsZSBlbnRyeSBmb3Jt
YXQ8YSBuYW1lPSI0LjMuMSI+PC9hPgorICAgICAgICAgICAgRm9yIGFueSB0cmFjayBjb250YWlu
aW5nIE9wdXMgYml0c3RyZWFtcywgYXQgbGVhc3Qgb25lIHNhbXBsZSBlbnRyeSBkZXNjcmliaW5n
IGNvcnJlc3BvbmRpbmcgT3B1cyBiaXRzdHJlYW0KKyAgICAgICAgICAgIHNoYWxsIGJlIHByZXNl
bnQgaW5zaWRlIHRoZSBTYW1wbGUgVGFibGUgQm94LiBUaGlzIHZlcnNpb24gb2YgdGhlIHNwZWNp
ZmljYXRpb24gZGVmaW5lcyBvbmx5IG9uZSBzYW1wbGUKKyAgICAgICAgICAgIGVudHJ5IGZvcm1h
dCBuYW1lZCBPcHVzU2FtcGxlRW50cnkgd2hvc2UgY29kaW5nbmFtZSBpcyAnT3B1cycuIFRoaXMg
c2FtcGxlIGVudHJ5IGluY2x1ZGVzIGV4YWN0bHkgb25lIE9wdXMKKyAgICAgICAgICAgIFNwZWNp
ZmljIEJveCBkZWZpbmVkIGluIDQuMy4yIGFzIGEgbWFuZGF0b3J5IGJveCBhbmQgaW5kaWNhdGVz
IHRoYXQgT3B1cyBzYW1wbGVzIGRlc2NyaWJlZCBieSB0aGlzIHNhbXBsZQorICAgICAgICAgICAg
ZW50cnkgYXJlIHN0b3JlZCBieSB0aGUgc2FtcGxlIGZvcm1hdCBkZXNjcmliZWQgaW4gNC4zLjMu
CisKKyAgICAgICAgICAgIFRoZSBzeW50YXggYW5kIHNlbWFudGljcyBvZiB0aGUgT3B1c1NhbXBs
ZUVudHJ5IGlzIHNob3duIGFzIGZvbGxvd3MuCisKKyAgICAgICAgICAgIGNsYXNzIE9wdXNTYW1w
bGVFbnRyeSgpIGV4dGVuZHMgQXVkaW9TYW1wbGVFbnRyeSAoJ09wdXMnKXsKKyAgICAgICAgICAg
ICAgICBPcHVzU3BlY2lmaWNCb3goKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgKyBj
aGFubmVsY291bnQ6CisgICAgICAgICAgICAgICAgVGhlIGNoYW5uZWxjb3VudCBmaWVsZCBzaGFs
bCBiZSBzZXQgdG8gdGhlIHN1bSBvZiB0aGUgdG90YWwgbnVtYmVyIG9mIE9wdXMgYml0c3RyZWFt
cyBhbmQgdGhlIG51bWJlcgorICAgICAgICAgICAgICAgIG9mIE9wdXMgYml0c3RyZWFtcyBwcm9k
dWNpbmcgdHdvIGNoYW5uZWxzLiBUaGlzIHZhbHVlIGlzIGluZGVudGljYWwgd2l0aCAoTStOKSwg
d2hlcmUgTSBpcyB0aGUgdmFsdWUgb2YKKyAgICAgICAgICAgICAgICB0aGUgKkNvdXBsZWQgU3Ry
ZWFtIENvdW50KiBmaWVsZCBhbmQgTiBpcyB0aGUgdmFsdWUgb2YgdGhlICpTdHJlYW0gQ291bnQq
IGZpZWxkIGluIHRoZSAqQ2hhbm5lbCBNYXBwaW5nCisgICAgICAgICAgICAgICAgVGFibGUqIGlu
IHRoZSBpZGVudGlmaWNhdGlvbiBoZWFkZXIgZGVmaW5lZCBpbiBPZ2cgT3B1cyBbM10uCisgICAg
ICAgICAgICArIHNhbXBsZXNpemU6CisgICAgICAgICAgICAgICAgVGhlIHNhbXBsZXNpemUgZmll
bGQgc2hhbGwgYmUgc2V0IHRvIDE2LgorICAgICAgICAgICAgKyBzYW1wbGVyYXRlOgorICAgICAg
ICAgICAgICAgIFRoZSBzYW1wbGVyYXRlIGZpZWxkIHNoYWxsIGJlIHNldCB0byA0ODAwMCZsdCZs
dDE2LgorICAgICAgICAgICAgKyBPcHVzU3BlY2lmaWNCb3gKKyAgICAgICAgICAgICAgICBUaGlz
IGJveCBjb250YWlucyBpbml0aWFsaXppbmcgaW5mb3JtYXRpb24gZm9yIHRoZSBkZWNvZGVyIGFz
IGRlZmluZWQgaW4gNC4zLjIuCisKKyAgICAgICAgNC4zLjIgT3B1cyBTcGVjaWZpYyBCb3g8YSBu
YW1lPSI0LjMuMiI+PC9hPgorICAgICAgICAgICAgRXhhY3RseSBvbmUgT3B1cyBTcGVjaWZpYyBC
b3ggc2hhbGwgYmUgcHJlc2VudCBpbiBlYWNoIE9wdXNTYW1wbGVFbnRyeS4KKyAgICAgICAgICAg
IFRoZSBPcHVzIFNwZWNpZmljIEJveCBjb250YWlucyB0aGUgVmVyc2lvbiBmaWVsZCBhbmQgdGhp
cyBzcGVjaWZpY2F0aW9uIGRlZmluZXMgdmVyc2lvbiAwIG9mIHRoaXMgYm94LgorICAgICAgICAg
ICAgSWYgaW5jb21wYXRpYmxlIGNoYW5nZXMgb2NjdXJlZCBpbiB0aGUgZmllbGRzIGFmdGVyIHRo
ZSBWZXJzaW9uIGZpZWxkIHdpdGhpbiB0aGUgT3B1c1NwZWNpZmljQm94IGluIHRoZQorICAgICAg
ICAgICAgZnV0dXJlIHZlcnNpb25zIG9mIHRoaXMgc3BlY2lmaWNhdGlvbiwgYW5vdGhlciB2ZXJz
aW9uIHdpbGwgYmUgZGVmaW5lZC4KKyAgICAgICAgICAgIFRoaXMgYm94IHJlZmVycyB0byBPZ2cg
T3B1cyBbM10gYXQgbWFueSBwYXJ0cyBidXQgYWxsIHRoZSBkYXRhIGFyZSBzdG9yZWQgYXMgYmln
LWVuZGlhbiBmb3JtYXQuCisKKyAgICAgICAgICAgIFRoZSBzeW50YXggYW5kIHNlbWFudGljcyBv
ZiB0aGUgT3B1cyBTcGVjaWZpYyBCb3ggaXMgc2hvd24gYXMgZm9sbG93cy4KKworICAgICAgICAg
ICAgY2xhc3MgQ2hhbm5lbE1hcHBpbmdUYWJsZSAodW5zaWduZWQgaW50KDgpIE91dHB1dENoYW5u
ZWxDb3VudCl7CisgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50KDgpIFN0cmVhbUNvdW50Owor
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCg4KSBDb3VwbGVkQ291bnQ7CisgICAgICAgICAg
ICAgICAgdW5zaWduZWQgaW50KDggKiBPdXRwdXRDaGFubmVsQ291bnQpIENoYW5uZWxNYXBwaW5n
OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBhbGlnbmVkKDgpIGNsYXNzIE9wdXNTcGVj
aWZpY0JveCBleHRlbmRzIEJveCgnZE9wcycpeworICAgICAgICAgICAgICAgIHVuc2lnbmVkIGlu
dCg4KSBWZXJzaW9uOworICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCg4KSBPdXRwdXRDaGFu
bmVsQ291bnQ7CisgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50KDE2KSBQcmVTa2lwOworICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIGludCgzMikgSW5wdXRTYW1wbGVSYXRlOworICAgICAgICAg
ICAgICAgIHNpZ25lZCBpbnQoMTYpIE91dHB1dEdhaW47CisgICAgICAgICAgICAgICAgdW5zaWdu
ZWQgaW50KDgpIENoYW5uZWxNYXBwaW5nRmFtaWx5OworICAgICAgICAgICAgICAgIGlmIChDaGFu
bmVsTWFwcGluZ0ZhbWlseSAhPSAwKSB7CisgICAgICAgICAgICAgICAgICAgIENoYW5uZWxNYXBw
aW5nVGFibGUoT3V0cHV0Q2hhbm5lbENvdW50KTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgICsgVmVyc2lvbjoKKyAgICAgICAgICAgICAgICBUaGUgVmVy
c2lvbiBmaWVsZCBzaGFsbCBiZSBzZXQgdG8gMC4KKyAgICAgICAgICAgICAgICBJbiB0aGUgZnV0
dXJlIHZlcnNpb25zIG9mIHRoaXMgc3BlY2lmaWNhdGlvbiwgdGhpcyBmaWVsZCBtYXkgYmUgc2V0
IHRvIG90aGVyIHZhbHVlcy4gQW5kIHdpdGhvdXQgc3VwcG9ydAorICAgICAgICAgICAgICAgIG9m
IHRob3NlIHZhbHVlcywgdGhlIHJlYWRlciBzaGFsbCBub3QgcmVhZCB0aGUgZmllbGRzIGFmdGVy
IHRoaXMgd2l0aGluIHRoZSBPcHVzU3BlY2lmaWNCb3guCisgICAgICAgICAgICArIE91dHB1dENo
YW5uZWxDb3VudDoKKyAgICAgICAgICAgICAgICBUaGUgT3V0cHV0Q2hhbm5lbENvdW50IGZpZWxk
IHNoYWxsIGJlIHNldCB0byB0aGUgc2FtZSB2YWx1ZSBhcyB0aGUgKk91dHB1dCBDaGFubmVsIENv
dW50KiBmaWVsZCBpbiB0aGUKKyAgICAgICAgICAgICAgICBpZGVudGlmaWNhdGlvbiBoZWFkZXIg
ZGVmaW5lZCBpbiBPZ2cgT3B1cyBbM10uCisgICAgICAgICAgICArIFByZVNraXA6CisgICAgICAg
ICAgICAgICAgVGhlIFByZVNraXAgZmllbGQgaW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgdGhlIHBy
aW1pbmcgc2FtcGxlcywgdGhhdCBpcywgdGhlIG51bWJlciBvZiBzYW1wbGVzIGF0IDQ4MDAwIEh6
CisgICAgICAgICAgICAgICAgdG8gZGlzY2FyZCBmcm9tIHRoZSBkZWNvZGVyIG91dHB1dCB3aGVu
IHN0YXJ0aW5nIHBsYXliYWNrLiBUaGUgdmFsdWUgb2YgdGhlIFByZVNraXAgZmllbGQgc2hhbGwg
YmUgYXQgbGVhc3QKKyAgICAgICAgICAgICAgICA4MCBtaWxsaXNlY29uZHMnIHdvcnRoIG9mIFBD
TSBzYW1wbGVzIGV2ZW4gd2hlbiByZW1vdmluZyBhbnkgbnVtYmVyIG9mIE9wdXMgc2FtcGxlcyB3
aGljaCBtYXkgb3IgbWF5IG5vdAorICAgICAgICAgICAgICAgIGNvbnRhaW4gdGhlIHByaW1pbmcg
c2FtcGxlcy4gVGhlIFByZVNraXAgZmllbGQgaXMgbm90IHVzZWQgZm9yIGRpc2NhcmRpbmcgdGhl
IHByaW1pbmcgc2FtcGxlcyBhdCB0aGUgd2hvbGUKKyAgICAgICAgICAgICAgICBwbGF5YmFjayBh
dCBhbGwgc2luY2UgaXQgaXMgaW5mb3JtYXRpdmUgb25seSwgYW5kIHRoYXQgdGFzayBmYWxscyBv
biB0aGUgRWRpdCBMaXN0IEJveC4KKyAgICAgICAgICAgICsgSW5wdXRTYW1wbGVSYXRlOgorICAg
ICAgICAgICAgICAgIFRoZSBJbnB1dFNhbXBsZVJhdGUgZmllbGQgc2hhbGwgYmUgc2V0IHRvIHRo
ZSBzYW1lIHZhbHVlIGFzIHRoZSAqSW5wdXQgU2FtcGxlIFJhdGUqIGZpZWxkIGluIHRoZQorICAg
ICAgICAgICAgICAgIGlkZW50aWZpY2F0aW9uIGhlYWRlciBkZWZpbmVkIGluIE9nZyBPcHVzIFsz
XS4KKyAgICAgICAgICAgICsgT3V0cHV0R2FpbjoKKyAgICAgICAgICAgICAgICBUaGUgT3V0cHV0
R2FpbiBmaWVsZCBzaGFsbCBiZSBzZXQgdG8gdGhlIHNhbWUgdmFsdWUgYXMgdGhlICpPdXRwdXQg
R2FpbiogZmllbGQgaW4gdGhlIGlkZW50aWZpY2F0aW9uCisgICAgICAgICAgICAgICAgaGVhZGVy
IGRlZmluZSBpbiBPZ2cgT3B1cyBbM10uIE5vdGUgdGhhdCB0aGUgdmFsdWUgaXMgc3RvcmVkIGFz
IDguOCBmaXhlZC1wb2ludC4KKyAgICAgICAgICAgICsgQ2hhbm5lbE1hcHBpbmdGYW1pbHk6Cisg
ICAgICAgICAgICAgICAgVGhlIENoYW5uZWxNYXBwaW5nRmFtaWx5IGZpZWxkIHNoYWxsIGJlIHNl
dCB0byB0aGUgc2FtZSB2YWx1ZSBhcyB0aGUgKkNoYW5uZWwgTWFwcGluZyBGYW1pbHkqIGZpZWxk
IGluCisgICAgICAgICAgICAgICAgdGhlIGlkZW50aWZpY2F0aW9uIGhlYWRlciBkZWZpbmVkIGlu
IE9nZyBPcHVzIFszXS4KKyAgICAgICAgICAgICsgU3RyZWFtQ291bnQ6CisgICAgICAgICAgICAg
ICAgVGhlIFN0cmVhbUNvdW50IGZpZWxkIHNoYWxsIGJlIHNldCB0byB0aGUgc2FtZSB2YWx1ZSBh
cyB0aGUgKlN0cmVhbSBDb3VudCogZmllbGQgaW4gdGhlIGlkZW50aWZpY2F0aW9uCisgICAgICAg
ICAgICAgICAgaGVhZGVyIGRlZmluZWQgaW4gT2dnIE9wdXMgWzNdLgorICAgICAgICAgICAgKyBD
b3VwbGVkQ291bnQ6CisgICAgICAgICAgICAgICAgVGhlIENvdXBsZWRDb3VudCBmaWVsZCBzaGFs
bCBiZSBzZXQgdG8gdGhlIHNhbWUgdmFsdWUgYXMgdGhlICpDb3VwbGVkIENvdW50KiBmaWVsZCBp
biB0aGUgaWRlbnRpZmljYXRpb24KKyAgICAgICAgICAgICAgICBoZWFkZXIgZGVmaW5lZCBpbiBP
Z2cgT3B1cyBbM10uCisgICAgICAgICAgICArIENoYW5uZWxNYXBwaW5nOgorICAgICAgICAgICAg
ICAgIFRoZSBDaGFubmVsTWFwcGluZyBmaWVsZCBzaGFsbCBiZSBzZXQgdG8gdGhlIHNhbWUgb2N0
ZXQgc3RyaW5nIGFzICpDaGFubmVsIE1hcHBpbmcqIGZpZWxkIGluIHRoZSBpZGVudGktCisgICAg
ICAgICAgICAgICAgZmljYXRpb24gaGVhZGVyIGRlZmluZWQgaW4gT2dnIE9wdXMgWzNdLgorCisg
ICAgICAgIDQuMy4zIFNhbXBsZSBmb3JtYXQ8YSBuYW1lPSI0LjMuMyI+PC9hPgorICAgICAgICAg
ICAgQW4gT3B1cyBzYW1wbGUgaXMgZXhhY3RseSBvbmUgT3B1cyBwYWNrZXQgZm9yIGVhY2ggb2Yg
ZGlmZmVyZW50IE9wdXMgYml0c3RyZWFtcy4gRHVlIHRvIHN1cHBvcnQgbW9yZSB0aGFuCisgICAg
ICAgICAgICB0d28gY2hhbm5lbHMsIGFuIE9wdXMgc2FtcGxlIGNhbiBjb250YWluIGZyYW1lcyBm
cm9tIG11bHRpcGxlIE9wdXMgYml0c3RyZWFtcyBidXQgYWxsIE9wdXMgcGFja2V0cyBzaGFsbAor
ICAgICAgICAgICAgc2hhcmUgd2l0aCB0aGUgdG90YWwgb2YgZnJhbWUgc2l6ZXMgaW4gYSBzaW5n
bGUgT3B1cyBzYW1wbGUuIFRoZSB3YXkgb2YgaG93IHRvIHBhY2sgYW4gT3B1cyBwYWNrZXQgZnJv
bQorICAgICAgICAgICAgZWFjaCBvZiBPcHVzIGJpdHN0cmVhbXMgaW50byBhIHNpbmdsZSBPcHVz
IHNhbXBsZSBmb2xsb3dzIEFwcGVuZGl4IEIuIGluIFJGQyA2NzE2IFsyXS4KKyAgICAgICAgICAg
IFRoZSBlbmRpYW5uZXNzIGhhcyBub3RoaW5nIHRvIGRvIHdpdGggYW55IE9wdXMgc2FtcGxlIHNp
bmNlIGV2ZXJ5IE9wdXMgcGFja2V0IGlzIHByb2Nlc3NlZCBieXRlLWJ5LWJ5dGUuCisgICAgICAg
ICAgICBJbiB0aGlzIHNwZWNpZmljYXRpb24sICdzYW1wbGUnIG1lYW5zICdPcHVzIHNhbXBsZScg
ZXhjZXB0IGZvciAncGFkZGVkIHNhbXBsZXMnLCAncHJpbWluZyBzYW1wbGVzJywgJ3ZhbGlkCisg
ICAgICAgICAgICBzYW1wbGUnIGFuZCAnc2FtcGxlLWFjY3VyYXRlJywgaS5lLiAnc2FtcGxlJyBp
cyAnc2FtcGxlJyBpbiB0aGUgdGVybSBkZWZpbmVkIGluIElTTy9JRUMgMTQ0OTYtMTIgWzFdLgor
CisgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICAg
ICAgfCBPcHVzIHBhY2tldCAwIChzZWxmLWRlbGltaXRpbmcgZnJhbWluZykgfCBPcHVzIHBhY2tl
dCAxICh1bmRlbGltaXRlZCBmcmFtaW5nKSB8CisgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0rCisgICAgICAgICAgICAgICAgfDwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tIHRoZSBzaXplIG9mIE9wdXMgc2FtcGxlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT58CisK
KyAgICAgICAgICAgICAgICAgICAgRmlndXJlIDEgLSBFeGFtcGxlIHN0cnVjdHVyZSBvZiBhbiBP
cHVzIHNhbXBsZSBjb250YWluaW5nIHR3byBPcHVzIGJpdHN0cmVhbXMKKworICAgICAgICA0LjMu
NCBEdXJhdGlvbiBvZiBPcHVzIHNhbXBsZTxhIG5hbWU9IjQuMy40Ij48L2E+CisgICAgICAgICAg
ICBUaGUgZHVyYXRpb24gb2YgT3B1cyBzYW1wbGUgaXMgZ2l2ZW4gYnkgbXVsdGlwbHlpbmcgdGhl
IHRvdGFsIG9mIGZyYW1lIHNpemVzIGZvciBhIHNpbmdsZSBPcHVzIGJpdHN0cmVhbQorICAgICAg
ICAgICAgZXhwcmVzc2VkIGluIHNlY29uZHMgYnkgdGhlIHZhbHVlIG9mIHRoZSB0aW1lc2NhbGUg
ZmllbGQgaW4gdGhlIE1lZGlhIEhlYWRlciBCb3guCisgICAgICAgICAgICBMZXQncyBzYXkgYW4g
T3B1cyBzYW1wbGUgY29uc2lzdHMgb2YgdHdvIE9wdXMgYml0c3RyZWFtcywgd2hlcmUgdGhlIGZy
YW1lIHNpemUgb2Ygb25lIGJpdHN0cmVhbSBpcyA0MCBtaWxsaS0KKyAgICAgICAgICAgIHNlY29u
ZHMgYW5kIHRoZSBmcmFtZSBzaXplIG9mIGFub3RoZXIgaXMgNjAgbWlsbGlzZWNvbmRzLCBhbmQg
dGhlIHRpbWVzY2FsZSBmaWVsZCBpbiB0aGUgTWVkaWEgSGVhZGVyIEJveAorICAgICAgICAgICAg
aXMgc2V0IHRvIDQ4MDAwLCB0aGVuIHRoZSBkdXJhdGlvbiBvZiB0aGF0IE9wdXMgc2FtcGxlIHNo
YWxsIGJlIDEyMCBtaWxsaXNlY29uZHMgc2luY2UgdGhyZWUgNDAgbWlsbGlzZWNvbmQKKyAgICAg
ICAgICAgIGZyYW1lIGFuZCB0d28gNjAgbWlsbGlzZWNvbmQgZnJhbWVzIHNoYWxsIGJlIGNvbnRh
aW5lZCBiZWNhdXNlIG9mIHRoZSBtYXhpbXVtIGR1cmF0aW9uIG9mIE9wdXMgcGFja2V0LCAxMjAK
KyAgICAgICAgICAgIG1pbGxpc2Vjb25kcywgYW5kIDU3NjAgaW4gdGhlIHRpbWVzY2FsZSBpbmRp
Y2F0ZWQgaW4gdGhlIE1lZGlhIEhlYWRlciBCb3guCisKKyAgICAgICAgICAgIFRvIGluZGljYXRl
IHRoZSB2YWxpZCBzYW1wbGVzIGV4Y2x1ZGluZyB0aGUgcGFkZGVkIHNhbXBsZXMgYXQgdGhlIGVu
ZCBvZiBPcHVzIGJpdHN0cmVhbSwgdGhlIGR1cmF0aW9uIG9mCisgICAgICAgICAgICB0aGUgbGFz
dCBPcHVzIHNhbXBsZSBvZiBhbiBPcHVzIGJpdHN0cmVhbSBpcyBnaXZlbiBieSBtdWx0aXBseWlu
ZyB0aGUgbnVtYmVyIG9mIHRoZSB2YWxpZCBzYW1wbGVzIGJ5IHRoZQorICAgICAgICAgICAgdmFs
dWUgcHJvZHVjZWQgYnkgZGl2aWRpbmcgdGhlIHZhbHVlIG9mIHRoZSB0aW1lc2NhbGUgZmllbGQg
aW4gdGhlIE1lZGlhIEhlYWRlciBCb3ggYnkgNDgwMDAuCisKKyAgICAgICAgNC4zLjUgU3ViLXNh
bXBsZTxhIG5hbWU9IjQuMy41Ij48L2E+CisgICAgICAgICAgICBUaGUgc3RydWN0dXJlIG9mIHRo
ZSBsYXN0IE9wdXMgcGFja2V0IGluIGFuIE9wdXMgc2FtcGxlIGlzIGRpZmZlcmVudCBmcm9tIHRo
ZSBvdGhlcnMgaW4gdGhlIHNhbWUgT3B1cyBzYW1wbGUsCisgICAgICAgICAgICBhbmQgdGhlIG90
aGVycyBhcmUgaW52YWxpZCBPcHVzIHBhY2tldHMgYXMgYW4gT3B1cyBzYW1wbGUgYmVjYXVzZSBv
ZiBzZWxmLWRlbGltaXRpbmcgZnJhbWluZy4gVG8gYXZvaWQKKyAgICAgICAgICAgIGNvbXBsZXhp
dGllcywgc3ViLXNhbXBsZSBpcyBub3QgZGVmaW5lZCBmb3IgT3B1cyBzYW1wbGUgaW4gdGhpcyBz
cGVjaWZpY2F0aW9uLgorCisgICAgICAgIDQuMy42IFJhbmRvbSBBY2Nlc3M8YSBuYW1lPSI0LjMu
NiI+PC9hPgorICAgICAgICAgICAgVGhpcyBzdWJjbGF1c2UgZGVzY3JpYmVzIHRoZSBuYXR1cmUg
b2YgdGhlIHJhbmRvbSBhY2Nlc3Mgb2YgT3B1cyBzYW1wbGUuCisKKyAgICAgICAgICAgIDQuMy42
LjEgUmFuZG9tIEFjY2VzcyBQb2ludDxhIG5hbWU9IjQuMy42LjEiPjwvYT4KKyAgICAgICAgICAg
ICAgICBBbGwgT3B1cyBzYW1wbGVzIGNhbiBiZSBpbmRlcGVuZGVudGx5IGRlY29kZWQgaS5lLiBl
dmVyeSBPcHVzIHNhbXBsZSBpcyBhIHN5bmMgc2FtcGxlLiBUaGVyZWZvcmUsIHRoZQorICAgICAg
ICAgICAgICAgIFN5bmMgU2FtcGxlIEJveCBzaGFsbCBub3QgYmUgcHJlc2VudCBhcyBsb25nIGFz
IHRoZXJlIGFyZSBubyBzYW1wbGVzIG90aGVyIHRoYW4gT3B1cyBzYW1wbGVzIGluIHRoZSBzYW1l
CisgICAgICAgICAgICAgICAgdHJhY2suIEFuZCB0aGUgc2FtcGxlX2lzX25vbl9zeW5jX3NhbXBs
ZSBmaWVsZCBmb3IgT3B1cyBzYW1wbGVzIHNoYWxsIGJlIHNldCB0byAwLgorCisgICAgICAgICAg
ICA0LjMuNi4yIFByZS1yb2xsPGEgbmFtZT0iNC4zLjYuMiI+PC9hPgorICAgICAgICAgICAgICAg
IE9wdXMgYml0c3RyZWFtIHJlcXVpcmVzIGF0IGxlYXN0IDgwIG1pbGxpc2Vjb25kIHByZS1yb2xs
IGFmdGVyIGVhY2ggcmFuZG9tIGFjY2VzcyB0byBnZXQgY29ycmVjdCBvdXRwdXQuCisgICAgICAg
ICAgICAgICAgUHJlLXJvbGwgaXMgaW5kaWNhdGVkIGJ5IHRoZSByb2xsX2Rpc3RhbmNlIGZpZWxk
IGluIEF1ZGlvUm9sbFJlY292ZXJ5RW50cnkuIEF1ZGlvUHJlUm9sbEVudHJ5IHNoYWxsIG5vdAor
ICAgICAgICAgICAgICAgIGJlIHVzZWQgc2luY2UgZXZlcnkgT3B1cyBzYW1wbGUgaXMgYSBzeW5j
IHNhbXBsZSBpbiBPcHVzIGJpdHN0cmVhbS4gTm90ZSB0aGF0IHJvbGxfZGlzdGFuY2UgaXMgZXhw
cmVzc2VkCisgICAgICAgICAgICAgICAgaW4gc2FtcGxlIHVuaXRzIGluIGEgdGVybSBvZiBJU08g
QmFzZSBNZWRpYSBGaWxlIEZvcm1hdCwgYW5kIGFsd2F5cyB0YWtlcyBuZWdhdGl2ZSB2YWx1ZXMu
CisKKyAgICAgICAgICAgICAgICBGb3IgYW55IHRyYWNrIGNvbnRhaW5pbmcgT3B1cyBiaXRzdHJl
YW1zLCBhdCBsZWFzdCBvbmUgU2FtcGxlIEdyb3VwIERlc2NyaXB0aW9uIEJveCBhbmQgYXQgbGVh
c3Qgb25lCisgICAgICAgICAgICAgICAgU2FtcGxlIHRvIEdyb3VwIEJveCB3aXRoaW4gdGhlIFNh
bXBsZSBUYWJsZSBCb3ggc2hhbGwgYmUgcHJlc2VudCBhbmQgdGhlc2UgaGF2ZSB0aGUgZ3JvdXBp
bmdfdHlwZSBmaWVsZAorICAgICAgICAgICAgICAgIHNldCB0byAncm9sbCcuIElmIGFueSBPcHVz
IHNhbXBsZSBpcyBjb250YWluZWQgaW4gYSB0cmFjayBmcmFnbWVudCwgdGhlIFNhbXBsZSB0byBH
cm91cCBCb3ggd2l0aCB0aGUKKyAgICAgICAgICAgICAgICBncm91cGluZ190eXBlIGZpZWxkIHNl
dCB0byAncm9sbCcgc2hhbGwgYmUgcHJlc2VudCBmb3IgdGhhdCB0cmFjayBmcmFnbWVudC4KKwor
ICAgICAgICAgICAgICAgIEZvciB0aGUgcmVxdWlyZW1lbnQgb2YgQXVkaW9Sb2xsUmVjb3ZlcnlF
bnRyeSwgdGhlIGNvbXBhdGlibGVfYnJhbmRzIGZpZWxkIGluIHRoZSBGaWxlIFR5cGUgQm94IHNo
YWxsCisgICAgICAgICAgICAgICAgY29udGFpbiBhdCBsZWFzdCBvbmUgYnJhbmQgd2hpY2ggcmVx
dWlyZXMgc3VwcG9ydCBmb3Igcm9sbCBncm91cHMuCis8YSBuYW1lPSI0LjQiPjwvYT4KKyAgICA0
LjQgVHJpbW1pbmcgb2YgQWN0dWFsIER1cmF0aW9uCisgICAgICAgIER1ZSB0byB0aGUgcHJpbWlu
ZyBzYW1wbGVzIChvciB0aGUgcGFkZGluZyBhdCB0aGUgYmVnaW5uaW5nKSBkZXJpdmVkIGZyb20g
dGhlIHByZS1yb2xsIGZvciB0aGUgc3RhcnR1cCBhbmQgdGhlCisgICAgICAgIHBhZGRlZCBzYW1w
bGVzIGF0IHRoZSBlbmQsIHdlIG5lZWQgdHJpbSBmcm9tIG1lZGlhIHRvIGdldCB0aGUgYWN0dWFs
IGR1cmF0aW9uLiBBbiBlZGl0IGluIHRoZSBFZGl0IExpc3QgQm94IGNhbgorICAgICAgICBhY2hp
ZXZlIHRoaXMgZGVtYW5kLCBhbmQgdGhlIEVkaXQgQm94IGFuZCB0aGUgRWRpdCBMaXN0IEJveCBz
aGFsbCBiZSBwcmVzZW50LgorCisgICAgICAgIEZvciBzYW1wbGUtYWNjdXJhdGUgdHJpbW1pbmcs
IHByb3BlciB0aW1lc2NhbGUgc2hvdWxkIGJlIHNldCB0byB0aGUgdGltZXNjYWxlIGZpZWxkIGlu
IHRoZSBNb3ZpZSBIZWFkZXIgQm94CisgICAgICAgIGFuZCB0aGUgTWVkaWEgSGVhZGVyIEJveCBp
bnNpZGUgVHJhY2sgQm94KGVzKSBmb3IgT3B1cyBiaXRzdHJlYW0uIFRoZSB0aW1lc2NhbGUgZmll
bGQgaW4gdGhlIE1lZGlhIEhlYWRlciBCb3ggaXMKKyAgICAgICAgdHlwaWNhbGx5IHNldCB0byA0
ODAwMC4gSXQgaXMgcmVjb21tZW5kZWQgdGhhdCB0aGUgdGltZXNjYWxlIGZpZWxkIGluIHRoZSBN
b3ZpZSBIZWFkZXIgQm94IGJlIHNldCB0byB0aGUgc2FtZQorICAgICAgICB2YWx1ZSBvZiB0aGUg
dGltZXNjYWxlIGZpZWxkIGluIHRoZSBNZWRpYSBIZWFkZXIgQm94IGluIG9yZGVyIHRvIGF2b2lk
IHRoZSByb3VuZGluZyBwcm9ibGVtIHdoZW4gc3BlY2lmeWluZworICAgICAgICBkdXJhdGlvbiBv
ZiBlZGl0IGlmIHRoZSB0aW1lc2NhbGVzIGluIGFsbCBvZiB0aGUgTWVkaWEgSGVhZGVyIEJveGVz
IGFyZSBzZXQgdG8gdGhlIHNhbWUgdmFsdWUuCisKKyAgICAgICAgRm9yIGV4YW1wbGUsIHRvIGlu
ZGljYXRlIHRoZSBhY3R1YWwgZHVyYXRpb24gb2YgYW4gT3B1cyBiaXRzdHJlYW0gaW4gYSB0cmFj
ayB3aXRoIHRoZSB0aW1lc2NhbGUgZmllbGRzIG9mIGJvdGgKKyAgICAgICAgdGhlIE1vdmllIEhl
YWRlciBCb3ggYW5kIHRoZSBNZWRpYSBIZWFkZXIgQm94IHNldCB0byA0ODAwMCwgd2Ugd291bGQg
dXNlIHRoZSBmb2xsb3dpbmcgZWRpdDoKKyAgICAgICAgICAgIHNlZ21lbnRfZHVyYXRpb24gPSB0
aGUgbnVtYmVyIG9mIHRoZSB2YWxpZCBzYW1wbGVzCisgICAgICAgICAgICBtZWRpYV90aW1lID0g
dGhlIG51bWJlciBvZiB0aGUgcHJpbWluZyBzYW1wbGVzCisgICAgICAgICAgICBtZWRpYV9yYXRl
ID0gMSAmbHQmbHQgMTYKKworICAgICAgICBUaGUgRWRpdCBMaXN0IEJveCBpcyBhcHBsaWVkIHRv
IHdob2xlIG1vdmllIGluY2x1ZGluZyBhbGwgbW92aWUgZnJhZ21lbnRzLiBUaGVyZWZvcmUsIGl0
IGlzIGltcG9zc2libGUgdG8gdGVsbAorICAgICAgICB0aGUgYWN0dWFsIGR1cmF0aW9uIGluIHRo
ZSBjYXNlIHByb2R1Y2luZyBtb3ZpZSBmcmFnbWVudHMgb24gdGhlIGZseSBzdWNoIGFzIGxpdmUt
c3RyZWFtaW5nLiBJbiBzdWNoIGNhc2VzLAorICAgICAgICB0aGUgZHVyYXRpb24gb2YgdGhlIGxh
c3QgT3B1cyBzYW1wbGUgbWF5IGJlIGhlbHBmdWwgYnkgc2V0dGluZyB6ZXJvIHRvIHRoZSBzZWdt
ZW50X2R1cmF0aW9uIGZpZWxkIHNpbmNlIHRoZQorICAgICAgICB2YWx1ZSAwIHJlcHJlc2VudHMg
aW1wbGljaXQgZHVyYXRpb24gZXF1YWwgdG8gdGhlIHN1bSBvZiB0aGUgZHVyYXRpb24gb2YgYWxs
IHNhbXBsZXMuCis8YSBuYW1lPSI0LjUiPjwvYT4KKyAgICA0LjUgQ2hhbm5lbCBMYXlvdXQgKGlu
Zm9ybWF0aXZlKQorICAgICAgICBCeSB0aGUgYXBwbGljYXRpb24gb2YgYWx0ZXJuYXRlX2dyb3Vw
IGluIHRoZSBUcmFjayBIZWFkZXIgQm94LCB3aG9sZSBhdWRpbyBjaGFubmVscyBpbiBhbGwgYWN0
aXZlIHRyYWNrcyBmcm9tCisgICAgICAgIG5vbi1hbHRlcm5hdGUgZ3JvdXAgYW5kL29yIGRpZmZl
cmVudCBhbHRlcm5hdGUgZ3JvdXAgZnJvbSBlYWNoIG90aGVyIGFyZSBjb21wb3NpdGVkIGludG8g
dGhlIHByZXNlbnRhdGlvbi4gSWYKKyAgICAgICAgYW4gT3B1cyBzYW1wbGUgY29uc2lzdHMgb2Yg
bXVsdGlwbGUgT3B1cyBiaXRzdHJlYW1zLCBpdCBjYW4gYmUgc3BsaXR0ZWQgaW50byBpbmRpdmlk
dWFsIE9wdXMgYml0c3RyZWFtcyBhbmQKKyAgICAgICAgcmVjb25zdHJ1Y3RlZCBpbnRvIG5ldyBP
cHVzIHNhbXBsZXMgYXMgbG9uZyBhcyBldmVyeSBPcHVzIGJpdHN0cmVhbSBoYXMgdGhlIHNhbWUg
dG90YWwgZHVyYXRpb24gaW4gZWFjaCBPcHVzCisgICAgICAgIHNhbXBsZS4gVGhpcyBuYXR1cmUg
Y2FuIGJlIHV0aWxpemVkIHRvIGVuY2Fwc3VsYXRlIGEgc2luZ2xlIE9wdXMgYml0c3RyZWFtIGlu
IGVhY2ggdHJhY2sgd2l0aG91dCBicmVha2luZyB0aGUKKyAgICAgICAgb3JpZ2luYWwgY2hhbm5l
bCBsYXlvdXQuCisKKyAgICAgICAgQXMgYW4gZXhhbXBsZSwgbGV0J3Mgc2F5IHRoZXJlIGlzIGEg
Zm9sbG93aW5nIHRyYWNrOgorICAgICAgICAgICAgT3V0cHV0Q2hhbm5lbENvdW50ID0gNjsKKyAg
ICAgICAgICAgIFN0cmVhbUNvdW50ICAgICAgICA9IDQ7CisgICAgICAgICAgICBDb3VwbGVkQ291
bnQgICAgICAgPSAyOworICAgICAgICAgICAgQ2hhbm5lbE1hcHBpbmcgICAgID0gezAsIDQsIDEs
IDIsIDMsIDV9OyAvLyBmcm9udCBsZWZ0LCBmcm9udCBjZW50ZXIsIGZyb250IHJpZ2h0LCByZWFy
IGxlZnQsIHJlYXIgcmlnaHQsIExGRQorICAgICAgICBIZXJlLCB0byBjb3VwbGUgZnJvbnQgbGVm
dCB0byBmcm9udCByaWdodCBjaGFubmVscyBpbnRvIHRoZSBmaXJzdCBzdHJlYW0sIGFuZCBjb3Vw
bGUgcmVhciBsZWZ0IHRvIHJlYXIgcmlnaHQKKyAgICAgICAgY2hhbm5lbHMgaW50byB0aGUgc2Vj
b25kIHN0cmVhbSwgcmVvcmRlcmluZyBpcyBuZWVkZWQgc2luY2UgY291cGxlZCBzdHJlYW1zIG11
c3QgcHJlY2VkZSBhbnkgbm9uLWNvdXBsZWQgc3RyZWFtLgorICAgICAgICBZb3UgZXh0cmFjdCB0
aGUgZm91ciBPcHVzIGJpdHN0cmVhbXMgZnJvbSB0aGlzIHRyYWNrIGFuZCB5b3UgZW5jYXBzdWxh
dGUgdHdvIG9mIHRoZSBmb3VyIGludG8gYSB0cmFjayBhbmQgdGhlCisgICAgICAgIG90aGVycyBp
bnRvIGFub3RoZXIgdHJhY2suIFRoZSBmb3JtZXIgdHJhY2sgaXMgYXMgZm9sbG93cy4KKyAgICAg
ICAgICAgIE91dHB1dENoYW5uZWxDb3VudCA9IDY7CisgICAgICAgICAgICBTdHJlYW1Db3VudCAg
ICAgICAgPSAyOworICAgICAgICAgICAgQ291cGxlZENvdW50ICAgICAgID0gMjsKKyAgICAgICAg
ICAgIENoYW5uZWxNYXBwaW5nICAgICA9IHswLCAyNTUsIDEsIDIsIDMsIDI1NX07IC8vIGZyb250
IGxlZnQsIGZyb250IGNlbnRlciwgZnJvbnQgcmlnaHQsIHJlYXIgbGVmdCwgcmVhciByaWdodCwg
TEZFCisgICAgICAgIEFuZCB0aGUgbGF0dGVyIHRyYWNrIGlzIGFzIGZvbGxvd3MuCisgICAgICAg
ICAgICBPdXRwdXRDaGFubmVsQ291bnQgPSA2OworICAgICAgICAgICAgU3RyZWFtQ291bnQgICAg
ICAgID0gMjsKKyAgICAgICAgICAgIENvdXBsZWRDb3VudCAgICAgICA9IDA7CisgICAgICAgICAg
ICBDaGFubmVsTWFwcGluZyAgICAgPSB7MjU1LCAwLCAyNTUsIDI1NSwgMjU1LCAxfTsgLy8gZnJv
bnQgbGVmdCwgZnJvbnQgY2VudGVyLCBmcm9udCByaWdodCwgcmVhciBsZWZ0LCByZWFyIHJpZ2h0
LCBMRkUKKyAgICAgICAgSW4gYWRkaXRpb24sIHRoZSB2YWx1ZSBvZiB0aGUgYWx0ZXJuYXRlX2dy
b3VwIGZpZWxkIGluIHRoZSBib3RoIHRyYWNrcyBpcyBzZXQgdG8gMC4gQXMgdGhlIHJlc3VsdCwg
dGhlIHBsYXllcgorICAgICAgICBtYXkgcGxheSBhcyBpZiBjaGFubmVscyB3aXRoIDI1NSBhcmUg
bm90IHByZXNlbnQsIGFuZCBwbGF5IHRoZSBwcmVzZW50YXRpb24gY29uc3RydWN0ZWQgZnJvbSB0
aGUgYm90aCB0cmFja3MKKyAgICAgICAgaW4gdGhlIHNhbWUgY2hhbm5lbCBsYXlvdXQgYXMgdGhl
IG9uZSBvZiB0aGUgb3JpZ2luYWwgdHJhY2suIEtlZXAgaW4gbWluZCB0aGF0IHRoZSB3YXkgb2Yg
dGhlIGNvbXBvc2l0aW9uLCBpLmUuCisgICAgICAgIHRoZSBtaXhpbmcgZm9yIHBsYXliYWNrLCBp
cyBub3QgZGVmaW5lZCBoZXJlLCBhbmQgbWF5YmUgZGlmZmVyZW50IHJlc3VsdHMgY291bGQgb2Nj
dXIgZXhjZXB0IGZvciB0aGUgY2hhbm5lbAorICAgICAgICBsYXlvdXQgb2YgdGhlIG9yaWdpbmFs
LCBkZXBlbmRpbmcgb24gYW4gaW1wbGVtZW50YXRpb24gb3IgdGhlIGRlZmluaXRpb24gb2YgYSBk
ZXJpdmVkIGZpbGUgZm9ybWF0LgorCisgICAgICAgIE5vdGUgdGhhdCBzb21lIGRlcml2ZWQgZmls
ZSBmb3JtYXRzIG1heSBzcGVjaWZ5IHRoZSByZXN0cmljdGlvbiB0byBpZ25vcmUgYWx0ZXJuYXRl
IGdyb3VwaW5nLiBJbiB0aGUgY29udGV4dCBvZgorICAgICAgICBzdWNoIGZpbGUgZm9ybWF0cywg
dGhpcyBhcHBsaWNhdGlvbiBpcyBub3QgYXZhaWxhYmxlLiBUaGlzIHVuYXZhaWxhYmlsaXR5IGRv
ZXMgbm90IG1lYW4gaW5jb21wYXRpYmlsaXRpZXMgYW1vbmcKKyAgICAgICAgZmlsZSBmb3JtYXRz
IHVubGVzcyB0aGUgcmVzdHJpY3Rpb24gdG8gdGhlIHZhbHVlIG9mIHRoZSBhbHRlcm5hdGVfZ3Jv
dXAgZmllbGQgaXMgc3BlY2lmaWVkIGFuZCBicmluZ3MgYWJvdXQKKyAgICAgICAgYW55IGNvbmZs
aWN0IGFtb25nIHRoZWlyIGRlZmluaXRpb25zLgorPGEgbmFtZT0iNC42Ij48L2E+CisgICAgNC42
IEJhc2ljIFN0cnVjdHVyZSAoaW5mb3JtYXRpdmUpCisgICAgICAgIDQuNi4xIEluaXRpYWwgTW92
aWU8YSBuYW1lPSI0LjYuMSI+PC9hPgorICAgICAgICAgICAgVGhpcyBzdWJjbGF1c2Ugc2hvd3Mg
YSBiYXNpYyBzdHJ1Y3R1cmUgb2YgdGhlIE1vdmllIEJveCBhcyBmb2xsb3dzOgorCisgICAgICAg
ICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHxtb292fCAgICB8ICAgIHwgICAgfCAg
ICB8ICAgIHwgICAgfCAgICB8IE1vdmllIEJveCAgICAgICAgICAgICAgICAgICAgfAorICAgICAg
ICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHxtdmhkfCAgICB8ICAgIHwg
ICAgfCAgICB8ICAgIHwgICAgfCBNb3ZpZSBIZWFkZXIgQm94ICAgICAgICAgICAgIHwKKyAgICAg
ICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8dHJha3wgICAgfCAgICB8
ICAgIHwgICAgfCAgICB8ICAgIHwgVHJhY2sgQm94ICAgICAgICAgICAgICAgICAgICB8CisgICAg
ICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8dGtoZHwgICAg
fCAgICB8ICAgIHwgICAgfCAgICB8IFRyYWNrIEhlYWRlciBCb3ggICAgICAgICAgICAgfAorICAg
ICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfGVkdHN8ICAg
IHwgICAgfCAgICB8ICAgIHwgICAgfCBFZGl0IEJveCAgICAgICAgICAgICAgICAgICAgIHwKKyAg
ICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAgfGVs
c3R8ICAgIHwgICAgfCAgICB8ICAgIHwgRWRpdCBMaXN0IEJveCAgICAgICAgICAgICAgICB8Cisg
ICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8bWRpYXwg
ICAgfCAgICB8ICAgIHwgICAgfCAgICB8IE1lZGlhIEJveCAgICAgICAgICAgICAgICAgICAgfAor
ICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAgICB8
bWRoZHwgICAgfCAgICB8ICAgIHwgICAgfCBNZWRpYSBIZWFkZXIgQm94ICAgICAgICAgICAgIHwK
KyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwgICAg
fGhkbHJ8ICAgIHwgICAgfCAgICB8ICAgIHwgSGFuZGxlciBSZWZlcmVuY2UgQm94ICAgICAgICB8
CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8ICAg
IHxtaW5mfCAgICB8ICAgIHwgICAgfCAgICB8IE1lZGlhIEluZm9ybWF0aW9uIEJveCAgICAgICAg
fAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAgfCAg
ICB8ICAgIHxzbWhkfCAgICB8ICAgIHwgICAgfCBTb3VuZCBNZWRpYSBIZWFkZXIgQm94ICAgICAg
IHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAgIHwg
ICAgfCAgICB8ZGluZnwgICAgfCAgICB8ICAgIHwgRGF0YSBJbmZvcm1hdGlvbiBCb3ggICAgICAg
ICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAgICB8
ICAgIHwgICAgfCAgICB8ZHJlZnwgICAgfCAgICB8IERhdGEgUmVmZXJlbmNlIEJveCAgICAgICAg
ICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwgICAg
fCAgICB8ICAgIHwgICAgfCAgICB8dXJsIHwgICAgfCBEYXRhRW50cnlVcmxCb3ggICAgICAgICAg
ICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSsgb3IgKy0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8ICAg
IHwgICAgfCAgICB8ICAgIHwgICAgfHVybiB8ICAgIHwgRGF0YUVudHJ5VXJuQm94ICAgICAgICAg
ICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfCAg
ICB8ICAgIHwgICAgfHN0Ymx8ICAgIHwgICAgfCAgICB8IFNhbXBsZSBUYWJsZSAgICAgICAgICAg
ICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHwg
ICAgfCAgICB8ICAgIHwgICAgfHN0c2R8ICAgIHwgICAgfCBTYW1wbGUgRGVzY3JpcHRpb24gQm94
ICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8
ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfE9wdXN8ICAgIHwgT3B1c1NhbXBsZUVudHJ5ICAgICAg
ICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAg
fCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfGRPcHN8IE9wdXMgU3BlY2lmaWMgQm94ICAg
ICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAg
IHwgICAgfCAgICB8ICAgIHwgICAgfHN0dHN8ICAgIHwgICAgfCBEZWNvZGluZyBUaW1lIHRvIFNh
bXBsZSBCb3ggIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAg
ICB8ICAgIHwgICAgfCAgICB8ICAgIHxzdHNjfCAgICB8ICAgIHwgU2FtcGxlIFRvIENodW5rIEJv
eCAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwg
ICAgfCAgICB8ICAgIHwgICAgfCAgICB8c3RzenwgICAgfCAgICB8IFNhbXBsZSBTaXplIEJveCAg
ICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSsgb3Ig
Ky0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8
ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfHN0ejJ8ICAgIHwgICAgfCBDb21wYWN0IFNhbXBsZSBT
aXplIEJveCAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAg
fCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHxzdGNvfCAgICB8ICAgIHwgQ2h1bmsgT2Zmc2V0IEJv
eCAgICAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKyBv
ciArLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAg
IHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8Y282NHwgICAgfCAgICB8IENodW5rIExhcmdlIE9m
ZnNldCBCb3ggICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAg
ICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfHNncGR8ICAgIHwgICAgfCBTYW1wbGUgR3JvdXAg
RGVzY3JpcHRpb24gQm94IHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAg
ICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHxzYmdwfCAgICB8ICAgIHwgU2FtcGxlIHRvIEdy
b3VwIEJveCAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAg
ICAgIHwgICAgfG12ZXh8KiAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8IE1vdmllIEV4dGVu
ZHMgQm94ICAgICAgICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAg
ICAgICB8ICAgIHwgICAgfHRyZXh8KiAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBUcmFjayBFeHRl
bmRzIEJveCAgICAgICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCisgICAg
ICAgICAgICAgICAgICAgIEZpZ3VyZSAyIC0gQmFzaWMgc3RydWN0dXJlIG9mIE1vdmllIEJveAor
CisgICAgICAgICAgICBJdCBpcyBzdHJvbmdseSByZWNvbW1lbmRlZCB0aGF0IHRoZSBvcmRlciBv
ZiBib3hlcyBzaG91bGQgZm9sbG93IHRoZSBhYm92ZSBzdHJ1Y3R1cmUuCisgICAgICAgICAgICBC
b3hlcyBtYXJrZWQgd2l0aCBhbiBhc3RlcmlzayAoKikgbWF5IGJlIHByZXNlbnQuCisgICAgICAg
ICAgICBGb3IgbW9zdCBib3hlcyBsaXN0ZWQgYWJvdmUsIHRoZSBkZWZpbml0aW9uIGlzIGFzIGlz
IGRlZmluZWQgaW4gSVNPL0lFQyAxNDQ5Ni0xMiBbMV0uIFRoZSBhZGRpdGlvbmFsIGJveGVzCisg
ICAgICAgICAgICBhbmQgdGhlIGFkZGl0aW9uYWwgcmVxdWlyZW1lbnRzLCByZXN0cmljdGlvbnMg
YW5kIHJlY29tbWVuZGF0aW9ucyB0byB0aGUgb3RoZXIgYm94ZXMgYXJlIGRlc2NyaWJlZCBpbiB0
aGlzCisgICAgICAgICAgICBzcGVjaWZpY2F0aW9uLgorCisgICAgICAgIDQuNi4yIE1vdmllIEZy
YWdtZW50czxhIG5hbWU9IjQuNi4yIj48L2E+CisgICAgICAgICAgICBUaGlzIHN1YmNsYXVzZSBz
aG93cyBhIGJhc2ljIHN0cnVjdHVyZSBvZiB0aGUgTW92aWUgRnJhZ21lbnQgQm94IGFzIGZvbGxv
d3M6CisKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfG1vb2Z8ICAg
IHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgTW92aWUgRnJhZ21lbnQgQm94ICAgICAg
ICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAgfG1m
aGR8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8IE1vdmllIEZyYWdtZW50IEhlYWRlciBC
b3ggICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAgIHx0
cmFmfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBUcmFjayBGcmFnbWVudCBCb3ggICAg
ICAgICAgIHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0t
Ky0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAgICB8
ICAgIHx0ZmhkfCAgICB8ICAgIHwgICAgfCAgICB8ICAgIHwgVHJhY2sgRnJhZ21lbnQgSGVhZGVy
IEJveCAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0t
LSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgIHwgICAg
fCAgICB8dHJ1bnwgICAgfCAgICB8ICAgIHwgICAgfCAgICB8IFRyYWNrIEZyYWdtZW50IFJ1biBC
b3ggICAgICAgfAorICAgICAgICAgICAgKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0t
LS0rLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICB8ICAg
IHwgICAgfHNncGR8KiAgIHwgICAgfCAgICB8ICAgIHwgICAgfCBTYW1wbGUgR3JvdXAgRGVzY3Jp
cHRpb24gQm94IHwKKyAgICAgICAgICAgICstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSst
LS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgfCAg
ICB8ICAgIHxzYmdwfCogICB8ICAgIHwgICAgfCAgICB8ICAgIHwgU2FtcGxlIHRvIEdyb3VwIEJv
eCAgICAgICAgICB8CisgICAgICAgICAgICArLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0r
LS0tLSstLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKworICAgICAgICAgICAg
ICAgICAgICBGaWd1cmUgMyAtIEJhc2ljIHN0cnVjdHVyZSBvZiBNb3ZpZSBGcmFnbWVudCBCb3gK
KworICAgICAgICAgICAgSXQgaXMgc3Ryb25nbHkgcmVjb21tZW5kZWQgdGhhdCB0aGUgTW92aWUg
RnJhZ21lbnQgSGVhZGVyIEJveCBhbmQgdGhlIFRyYWNrIEZyYWdtZW50IEhlYWRlciBCb3ggYmUK
KyAgICAgICAgICAgIHBsYWNlZCBmaXJzdCBpbiB0aGVpciBjb250YWluZXIuCisgICAgICAgICAg
ICBCb3hlcyBtYXJrZWQgd2l0aCBhbiBhc3RlcmlzayAoKikgbWF5IGJlIHByZXNlbnQuCisgICAg
ICAgICAgICBGb3IgdGhlIGJveGVzIGxpc3RlZCBhYm92ZSwgdGhlIGRlZmluaXRpb24gaXMgYXMg
aXMgZGVmaW5lZCBpbiBJU08vSUVDIDE0NDk2LTEyIFsxXS4KKzxhIG5hbWU9IjQuNyI+PC9hPgor
ICAgIDQuNyBFeGFtcGxlIG9mIEVuY2Fwc3VsYXRpb24gKGluZm9ybWF0aXZlKQorICAgICAgICBb
RmlsZV0KKyAgICAgICAgICAgIHNpemUgPSAxNzc5MAorICAgICAgICAgICAgW2Z0eXA6IEZpbGUg
VHlwZSBCb3hdCisgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAwCisgICAgICAgICAgICAgICAg
c2l6ZSA9IDI0CisgICAgICAgICAgICAgICAgbWFqb3JfYnJhbmQgPSBtcDQyIDogTVA0IHZlcnNp
b24gMgorICAgICAgICAgICAgICAgIG1pbm9yX3ZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAg
Y29tcGF0aWJsZV9icmFuZHMKKyAgICAgICAgICAgICAgICAgICAgYnJhbmRbMF0gPSBtcDQyIDog
TVA0IHZlcnNpb24gMgorICAgICAgICAgICAgICAgICAgICBicmFuZFsxXSA9IGlzbzIgOiBJU08g
QmFzZSBNZWRpYSBmaWxlIGZvcm1hdCB2ZXJzaW9uIDIKKyAgICAgICAgICAgIFttb292OiBNb3Zp
ZSBCb3hdCisgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAyNAorICAgICAgICAgICAgICAgIHNp
emUgPSA3NTcKKyAgICAgICAgICAgICAgICBbbXZoZDogTW92aWUgSGVhZGVyIEJveF0KKyAgICAg
ICAgICAgICAgICAgICAgcG9zaXRpb24gPSAzMgorICAgICAgICAgICAgICAgICAgICBzaXplID0g
MTA4CisgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAg
IGZsYWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgY3JlYXRpb25fdGltZSA9IFVU
QyAyMDE0LzEyLzEyLCAxODo0MToxOQorICAgICAgICAgICAgICAgICAgICBtb2RpZmljYXRpb25f
dGltZSA9IFVUQyAyMDE0LzEyLzEyLCAxODo0MToxOQorICAgICAgICAgICAgICAgICAgICB0aW1l
c2NhbGUgPSA0ODAwMAorICAgICAgICAgICAgICAgICAgICBkdXJhdGlvbiA9IDMzNjAwICgwMDow
MDowMC43MDApCisgICAgICAgICAgICAgICAgICAgIHJhdGUgPSAxLjAwMDAwMAorICAgICAgICAg
ICAgICAgICAgICB2b2x1bWUgPSAxLjAwMDAwMAorICAgICAgICAgICAgICAgICAgICByZXNlcnZl
ZCA9IDB4MDAwMAorICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMDAwMDAKKyAg
ICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAg
ICAgIHRyYW5zZm9ybWF0aW9uIG1hdHJpeAorICAgICAgICAgICAgICAgICAgICAgICAgfCBhLCBi
LCB1IHwgICB8IDEuMDAwMDAwLCAwLjAwMDAwMCwgMC4wMDAwMDAgfAorICAgICAgICAgICAgICAg
ICAgICAgICAgfCBjLCBkLCB2IHwgPSB8IDAuMDAwMDAwLCAxLjAwMDAwMCwgMC4wMDAwMDAgfAor
ICAgICAgICAgICAgICAgICAgICAgICAgfCB4LCB5LCB3IHwgICB8IDAuMDAwMDAwLCAwLjAwMDAw
MCwgMS4wMDAwMDAgfAorICAgICAgICAgICAgICAgICAgICBwcmVfZGVmaW5lZCA9IDB4MDAwMDAw
MDAKKyAgICAgICAgICAgICAgICAgICAgcHJlX2RlZmluZWQgPSAweDAwMDAwMDAwCisgICAgICAg
ICAgICAgICAgICAgIHByZV9kZWZpbmVkID0gMHgwMDAwMDAwMAorICAgICAgICAgICAgICAgICAg
ICBwcmVfZGVmaW5lZCA9IDB4MDAwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgcHJlX2RlZmlu
ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgIHByZV9kZWZpbmVkID0gMHgwMDAw
MDAwMAorICAgICAgICAgICAgICAgICAgICBuZXh0X3RyYWNrX0lEID0gMgorICAgICAgICAgICAg
ICAgIFtpb2RzOiBPYmplY3QgRGVzY3JpcHRvciBCb3hdCisgICAgICAgICAgICAgICAgICAgIHBv
c2l0aW9uID0gMTQwCisgICAgICAgICAgICAgICAgICAgIHNpemUgPSAzMworICAgICAgICAgICAg
ICAgICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDAw
CisgICAgICAgICAgICAgICAgICAgIFt0YWcgPSAweDEwOiBNUDRfSU9EXQorICAgICAgICAgICAg
ICAgICAgICAgICAgZXhwYW5kYWJsZUNsYXNzU2l6ZSA9IDE2CisgICAgICAgICAgICAgICAgICAg
ICAgICBPYmplY3REZXNjcmlwdG9ySUQgPSAxCisgICAgICAgICAgICAgICAgICAgICAgICBVUkxf
RmxhZyA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGVJbmxpbmVQcm9maWxlTGV2
ZWxGbGFnID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweGYKKyAgICAg
ICAgICAgICAgICAgICAgICAgIE9EUHJvZmlsZUxldmVsSW5kaWNhdGlvbiA9IDB4ZmYKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHNjZW5lUHJvZmlsZUxldmVsSW5kaWNhdGlvbiA9IDB4ZmYKKyAg
ICAgICAgICAgICAgICAgICAgICAgIGF1ZGlvUHJvZmlsZUxldmVsSW5kaWNhdGlvbiA9IDB4ZmUK
KyAgICAgICAgICAgICAgICAgICAgICAgIHZpc3VhbFByb2ZpbGVMZXZlbEluZGljYXRpb24gPSAw
eGZmCisgICAgICAgICAgICAgICAgICAgICAgICBncmFwaGljc1Byb2ZpbGVMZXZlbEluZGljYXRp
b24gPSAweGZmCisgICAgICAgICAgICAgICAgICAgICAgICBbdGFnID0gMHgwZTogRVNfSURfSW5j
XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGFuZGFibGVDbGFzc1NpemUgPSA0Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJhY2tfSUQgPSAxCisgICAgICAgICAgICAgICAg
W3RyYWs6IFRyYWNrIEJveF0KKyAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAxNzMKKyAg
ICAgICAgICAgICAgICAgICAgc2l6ZSA9IDYwOAorICAgICAgICAgICAgICAgICAgICBbdGtoZDog
VHJhY2sgSGVhZGVyIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gMTgx
CisgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gOTIKKyAgICAgICAgICAgICAgICAgICAg
ICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDA3
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJhY2sgZW5hYmxlZAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFRyYWNrIGluIG1vdmllCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgVHJhY2sgaW4gcHJldmlldworICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRpb25fdGlt
ZSA9IFVUQyAyMDE0LzEyLzEyLCAxODo0MToxOQorICAgICAgICAgICAgICAgICAgICAgICAgbW9k
aWZpY2F0aW9uX3RpbWUgPSBVVEMgMjAxNC8xMi8xMiwgMTg6NDE6MTkKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHRyYWNrX0lEID0gMQorICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQg
PSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICBkdXJhdGlvbiA9IDMzNjAwICgw
MDowMDowMC43MDApCisgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMDAw
MDAKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwMDAwMAorICAgICAg
ICAgICAgICAgICAgICAgICAgbGF5ZXIgPSAwCisgICAgICAgICAgICAgICAgICAgICAgICBhbHRl
cm5hdGVfZ3JvdXAgPSAwCisgICAgICAgICAgICAgICAgICAgICAgICB2b2x1bWUgPSAxLjAwMDAw
MAorICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHRyYW5zZm9ybWF0aW9uIG1hdHJpeAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgYSwgYiwgdSB8ICAgfCAxLjAwMDAwMCwgMC4wMDAwMDAsIDAuMDAwMDAwIHwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8IGMsIGQsIHYgfCA9IHwgMC4wMDAwMDAsIDEuMDAw
MDAwLCAwLjAwMDAwMCB8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB4LCB5LCB3IHwg
ICB8IDAuMDAwMDAwLCAwLjAwMDAwMCwgMS4wMDAwMDAgfAorICAgICAgICAgICAgICAgICAgICAg
ICAgd2lkdGggPSAwLjAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0ID0gMC4w
MDAwMDAKKyAgICAgICAgICAgICAgICAgICAgW2VkdHM6IEVkaXQgQm94XQorICAgICAgICAgICAg
ICAgICAgICAgICAgcG9zaXRpb24gPSAyNzMKKyAgICAgICAgICAgICAgICAgICAgICAgIHNpemUg
PSAzNgorICAgICAgICAgICAgICAgICAgICAgICAgW2Vsc3Q6IEVkaXQgTGlzdCBCb3hdCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAyODEKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzaXplID0gMjgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9u
ID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBlbnRyeV9jb3VudCA9IDEKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBlbnRyeVswXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWdt
ZW50X2R1cmF0aW9uID0gMzM2MDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVk
aWFfdGltZSA9IDMxMgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZWRpYV9yYXRl
ID0gMS4wMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgW21kaWE6IE1lZGlhIEJveF0KKyAgICAg
ICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gMzA5CisgICAgICAgICAgICAgICAgICAgICAg
ICBzaXplID0gNDcyCisgICAgICAgICAgICAgICAgICAgICAgICBbbWRoZDogTWVkaWEgSGVhZGVy
IEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDMxNworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSAzMgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAw
MDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyZWF0aW9uX3RpbWUgPSBVVEMgMjAx
NC8xMi8xMiwgMTg6NDE6MTkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RpZmljYXRp
b25fdGltZSA9IFVUQyAyMDE0LzEyLzEyLCAxODo0MToxOQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHRpbWVzY2FsZSA9IDQ4MDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHVy
YXRpb24gPSAzNDU2MCAoMDA6MDA6MDAuNzIwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGxhbmd1YWdlID0gdW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlX2RlZmluZWQg
PSAweDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgIFtoZGxyOiBIYW5kbGVyIFJlZmVyZW5j
ZSBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSAzNDkKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gNTEKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgw
MDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVfZGVmaW5lZCA9IDB4MDAwMDAw
MDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVyX3R5cGUgPSBzb3VuCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgbmFtZSA9IFhpcGggQXVkaW8gSGFuZGxlcgorICAgICAgICAgICAgICAgICAgICAgICAg
W21pbmY6IE1lZGlhIEluZm9ybWF0aW9uIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBwb3NpdGlvbiA9IDQwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSAzODEK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc21oZDogU291bmQgTWVkaWEgSGVhZGVyIEJv
eF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gPSA0MDgKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDE2CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGZsYWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFsYW5j
ZSA9IDAuMDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0g
MHgwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RpbmY6IERhdGEgSW5mb3JtYXRp
b24gQm94XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDQyNAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gMzYKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgW2RyZWY6IERhdGEgUmVmZXJlbmNlIEJveF0KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNDMyCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBzaXplID0gMjgKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBmbGFncyA9IDB4MDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBl
bnRyeV9jb3VudCA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt1cmwg
OiBEYXRhIEVudHJ5IFVybCBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcG9zaXRpb24gPSA0NDgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzaXplID0gMTIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2
ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdz
ID0gMHgwMDAwMDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2Nh
dGlvbiA9IGluIHRoZSBzYW1lIGZpbGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3Ri
bDogU2FtcGxlIFRhYmxlIEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9z
aXRpb24gPSA0NjAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDMyMQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3RzZDogU2FtcGxlIERlc2NyaXB0aW9u
IEJveF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNDY4
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gNzkKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBmbGFncyA9IDB4MDAwMDAwCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBlbnRyeV9jb3VudCA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFtPcHVzOiBBdWRpbyBEZXNjcmlwdGlvbl0KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDQ4NAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSA2MworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwMDAwMDAwMDAKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhX3JlZmVyZW5jZV9pbmRleCA9IDEKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCA9IDB4MDAwMAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0gMHgwMDAwCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgPSAweDAwMDAw
MDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbm5lbGNvdW50
ID0gNgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhbXBsZXNpemUg
PSAxNgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZV9kZWZpbmVk
ID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkID0g
MAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhbXBsZXJhdGUgPSA0
ODAwMC4wMDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZE9w
czogT3B1cyBTcGVjaWZpYyBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHBvc2l0aW9uID0gNTIwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHNpemUgPSAyNworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBWZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBPdXRwdXRDaGFubmVsQ291bnQgPSA2CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFByZVNraXAgPSAzMTIKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgSW5wdXRTYW1wbGVSYXRlID0gNDgwMDAKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3V0cHV0R2FpbiA9IDAKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhbm5lbE1hcHBpbmdGYW1p
bHkgPSAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0cmVh
bUNvdW50ID0gNAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBD
b3VwbGVkQ291bnQgPSAyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIENoYW5uZWxNYXBwaW5nCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAwIC0+IDA6IGZyb250IGxlZnQKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDEgLT4gNDogZnJvbiBjZW50ZXIKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIgLT4gMTogZnJvbnQgcmlnaHQKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMgLT4gMjogc2lk
ZSBsZWZ0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0
IC0+IDM6IHNpZGUgcmlnaHQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDUgLT4gNTogcmVhciBjZW50ZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgW3N0dHM6IERlY29kaW5nIFRpbWUgdG8gU2FtcGxlIEJveF0KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uID0gNTQ3CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzaXplID0gMjQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHZlcnNpb24gPSAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBm
bGFncyA9IDB4MDAwMDAwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRy
eV9jb3VudCA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5WzBd
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FtcGxlX2NvdW50ID0g
MTgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYW1wbGVfZGVsdGEg
PSAxOTIwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHNjOiBTYW1wbGUgVG8g
Q2h1bmsgQm94XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24g
PSA1NzEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSA0MAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IDAKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgwMDAwMDAKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGVudHJ5X2NvdW50ID0gMgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZW50cnlbMF0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBmaXJzdF9jaHVuayA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzYW1wbGVzX3Blcl9jaHVuayA9IDEzCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2FtcGxlX2Rlc2NyaXB0aW9uX2luZGV4ID0gMQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlbMV0KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBmaXJzdF9jaHVuayA9IDIKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBzYW1wbGVzX3Blcl9jaHVuayA9IDUKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzYW1wbGVfZGVzY3JpcHRpb25faW5kZXggPSAxCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHN6OiBTYW1wbGUgU2l6ZSBCb3hdCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDYxMQorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDkyCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc2FtcGxlX3NpemUgPSAwICh2YXJpYWJsZSkKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHNhbXBsZV9jb3VudCA9IDE4CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9zaXplWzBdID0gOTc3CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9zaXplWzFdID0gOTM4CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9zaXplWzJdID0gOTM5CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9zaXplWzNdID0gOTM4CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9zaXplWzRdID0gOTM0CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9zaXplWzVdID0gOTQ1CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9zaXplWzZdID0gOTQ4CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9zaXplWzddID0gOTU2CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9zaXplWzhdID0gOTU1CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9zaXplWzldID0gOTMwCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlbnRyeV9zaXplWzEwXSA9IDkzMworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZW50cnlfc2l6ZVsxMV0gPSA5MzQKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGVudHJ5X3NpemVbMTJdID0gOTcyCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzEzXSA9IDk3NworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZW50cnlfc2l6ZVsxNF0gPSA5NTgKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGVudHJ5X3NpemVbMTVdID0gOTQ5CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBlbnRyeV9zaXplWzE2XSA9IDk2MgorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZW50cnlfc2l6ZVsxN10gPSA4NDgKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgW3N0Y286IENodW5rIE9mZnNldCBCb3hdCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDcwMworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2l6ZSA9IDI0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB2ZXJzaW9uID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZmxhZ3MgPSAweDAwMDAwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50
cnlfY291bnQgPSAyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaHVua19v
ZmZzZXRbMF0gPSA3OTcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNodW5r
X29mZnNldFsxXSA9IDEzMDk2CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzZ3Bk
OiBTYW1wbGUgR3JvdXAgRGVzY3JpcHRpb24gQm94XQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcG9zaXRpb24gPSA3MjcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNpemUgPSAyNgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVy
c2lvbiA9IDEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzID0gMHgw
MDAwMDAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyb3VwaW5nX3R5cGUg
PSByb2xsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0X2xlbmd0
aCA9IDIgKGNvbnN0YW50KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50
cnlfY291bnQgPSAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb2xsX2Rp
c3RhbmNlWzBdID0gLTIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NiZ3A6IFNh
bXBsZSB0byBHcm91cCBCb3hdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw
b3NpdGlvbiA9IDc1MworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZSA9
IDI4CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gMAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MgPSAweDAwMDAwMAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JvdXBpbmdfdHlwZSA9IHJvbGwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5X2NvdW50ID0gMQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlbMF0KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBzYW1wbGVfY291bnQgPSAxOAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGdyb3VwX2Rlc2NyaXB0aW9uX2luZGV4ID0gMQorICAgICAg
ICAgICAgW2ZyZWU6IEZyZWUgU3BhY2UgQm94XQorICAgICAgICAgICAgICAgIHBvc2l0aW9uID0g
NzgxCisgICAgICAgICAgICAgICAgc2l6ZSA9IDgKKyAgICAgICAgICAgIFttZGF0OiBNZWRpYSBE
YXRhIEJveF0KKyAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IDc4OQorICAgICAgICAgICAgICAg
IHNpemUgPSAxNzAwMQorPGEgbmFtZT0iNSI+PC9hPgorNSBBdXRob3JzJyBBZGRyZXNzCisgICAg
WXVzdWtlIE5ha2FtdXJhCisgICAgICAgIEVtYWlsOiBtdWtlbi50aGUudmZybWFuaWFjIHxhdHwg
Z21haWwuY29tCisgICAgICAgIDwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvZG9jL29wdXNfdXBkYXRlLnBhdGNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2Mvb3B1c191cGRhdGUucGF0Y2gKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMTFmMDY2YzcwMjJmZjZmODk2ZTMxYzg2MDBhM2Q2ZjA2ZjBmNDE4MgotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvZG9jL29wdXNfdXBkYXRlLnBhdGNoCkBAIC0wLDAgKzEsMjQ0IEBACitkaWZmIC0tZ2l0
IGEvY2VsdC9iYW5kcy5jIGIvY2VsdC9iYW5kcy5jCitpbmRleCA2OTYyNTg3Li4zMmUxZGU2IDEw
MDY0NAorLS0tIGEvY2VsdC9iYW5kcy5jCisrKysgYi9jZWx0L2JhbmRzLmMKK0BAIC0xMjM0LDkg
KzEyMzQsMjMgQEAgdm9pZCBxdWFudF9hbGxfYmFuZHMoaW50IGVuY29kZSwgY29uc3QgQ0VMVE1v
ZGUgKm0sIGludCBzdGFydCwgaW50IGVuZCwKKyAgICAgICAgICBiID0gMDsKKyAgICAgICB9Cisg
CistICAgICAgaWYgKHJlc3ludGggJiYgTSplQmFuZHNbaV0tTiA+PSBNKmVCYW5kc1tzdGFydF0g
JiYgKHVwZGF0ZV9sb3diYW5kIHx8IGxvd2JhbmRfb2Zmc2V0PT0wKSkKKysgICAgICBpZiAocmVz
eW50aCAmJiAoTSplQmFuZHNbaV0tTiA+PSBNKmVCYW5kc1tzdGFydF0gfHwgaT09c3RhcnQrMSkg
JiYgKHVwZGF0ZV9sb3diYW5kIHx8IGxvd2JhbmRfb2Zmc2V0PT0wKSkKKyAgICAgICAgICAgICBs
b3diYW5kX29mZnNldCA9IGk7CisgCisrICAgICAgaWYgKGkgPT0gc3RhcnQrMSkKKysgICAgICB7
CisrICAgICAgICAgaW50IG4xLCBuMjsKKysgICAgICAgICBpbnQgb2Zmc2V0OworKyAgICAgICAg
IG4xID0gTSooZUJhbmRzW3N0YXJ0KzFdLWVCYW5kc1tzdGFydF0pOworKyAgICAgICAgIG4yID0g
TSooZUJhbmRzW3N0YXJ0KzJdLWVCYW5kc1tzdGFydCsxXSk7CisrICAgICAgICAgb2Zmc2V0ID0g
TSplQmFuZHNbc3RhcnRdOworKyAgICAgICAgIC8qIER1cGxpY2F0ZSBlbm91Z2ggb2YgdGhlIGZp
cnN0IGJhbmQgZm9sZGluZyBkYXRhIHRvIGJlIGFibGUgdG8gZm9sZCB0aGUgc2Vjb25kIGJhbmQu
CisrICAgICAgICAgICAgQ29waWVzIG5vIGRhdGEgZm9yIENFTFQtb25seSBtb2RlLiAqLworKyAg
ICAgICAgIE9QVVNfQ09QWSgmbm9ybVtvZmZzZXQrbjFdLCAmbm9ybVtvZmZzZXQrMipuMSAtIG4y
XSwgbjItbjEpOworKyAgICAgICAgIGlmIChDPT0yKQorKyAgICAgICAgICAgIE9QVVNfQ09QWSgm
bm9ybTJbb2Zmc2V0K24xXSwgJm5vcm0yW29mZnNldCsyKm4xIC0gbjJdLCBuMi1uMSk7CisrICAg
ICAgfQorKworICAgICAgIHRmX2NoYW5nZSA9IHRmX3Jlc1tpXTsKKyAgICAgICBpZiAoaT49bS0+
ZWZmRUJhbmRzKQorICAgICAgIHsKK0BAIC0xMjU3LDcgKzEyNzEsNyBAQCB2b2lkIHF1YW50X2Fs
bF9iYW5kcyhpbnQgZW5jb2RlLCBjb25zdCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5k
LAorICAgICAgICAgIGZvbGRfc3RhcnQgPSBsb3diYW5kX29mZnNldDsKKyAgICAgICAgICB3aGls
ZShNKmVCYW5kc1stLWZvbGRfc3RhcnRdID4gZWZmZWN0aXZlX2xvd2JhbmQpOworICAgICAgICAg
IGZvbGRfZW5kID0gbG93YmFuZF9vZmZzZXQtMTsKKy0gICAgICAgICB3aGlsZShNKmVCYW5kc1sr
K2ZvbGRfZW5kXSA8IGVmZmVjdGl2ZV9sb3diYW5kK04pOworKyAgICAgICAgIHdoaWxlKCsrZm9s
ZF9lbmQgPCBpICYmIE0qZUJhbmRzW2ZvbGRfZW5kXSA8IGVmZmVjdGl2ZV9sb3diYW5kK04pOwor
ICAgICAgICAgIHhfY20gPSB5X2NtID0gMDsKKyAgICAgICAgICBmb2xkX2kgPSBmb2xkX3N0YXJ0
OyBkbyB7CisgICAgICAgICAgICB4X2NtIHw9IGNvbGxhcHNlX21hc2tzW2ZvbGRfaSpDKzBdOwor
ZGlmZiAtLWdpdCBhL2NlbHQvcXVhbnRfYmFuZHMuYyBiL2NlbHQvcXVhbnRfYmFuZHMuYworaW5k
ZXggZTVlZDllZi4uODJmYjgyMyAxMDA2NDQKKy0tLSBhL2NlbHQvcXVhbnRfYmFuZHMuYworKysr
IGIvY2VsdC9xdWFudF9iYW5kcy5jCitAQCAtNTUyLDYgKzU1Miw3IEBAIHZvaWQgbG9nMkFtcChj
b25zdCBDRUxUTW9kZSAqbSwgaW50IHN0YXJ0LCBpbnQgZW5kLAorICAgICAgIHsKKyAgICAgICAg
ICBvcHVzX3ZhbDE2IGxnID0gQUREMTYob2xkRUJhbmRzW2krYyptLT5uYkVCYW5kc10sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgIFNITDE2KChvcHVzX3ZhbDE2KWVNZWFuc1tpXSw2KSk7Cisr
ICAgICAgICAgbGcgPSBNSU4zMihRQ09OU1QzMigzMi5mLCAxNiksIGxnKTsKKyAgICAgICAgICBl
QmFuZHNbaStjKm0tPm5iRUJhbmRzXSA9IFBTSFIzMihjZWx0X2V4cDIobGcpLDQpOworICAgICAg
IH0KKyAgICAgICBmb3IgKDtpPG0tPm5iRUJhbmRzO2krKykKK2RpZmYgLS1naXQgYS9zaWxrL0xQ
Q19pbnZfcHJlZF9nYWluLmMgYi9zaWxrL0xQQ19pbnZfcHJlZF9nYWluLmMKK2luZGV4IDYwYzQz
OWIuLjZjMzAxZGEgMTAwNjQ0CistLS0gYS9zaWxrL0xQQ19pbnZfcHJlZF9nYWluLmMKKysrKyBi
L3NpbGsvTFBDX2ludl9wcmVkX2dhaW4uYworQEAgLTg0LDggKzg0LDEzIEBAIHN0YXRpYyBvcHVz
X2ludDMyIExQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RQSggICAgICAgICAgICAgICAgIC8qIE8gICBS
ZXR1cm5zIGludmVyCisgCisgICAgICAgICAvKiBVcGRhdGUgQVIgY29lZmZpY2llbnQgKi8KKyAg
ICAgICAgIGZvciggbiA9IDA7IG4gPCBrOyBuKysgKSB7CistICAgICAgICAgICAgdG1wX1FBID0g
QW9sZF9RQVsgbiBdIC0gTVVMMzJfRlJBQ19RKCBBb2xkX1FBWyBrIC0gbiAtIDEgXSwgcmNfUTMx
LCAzMSApOworLSAgICAgICAgICAgIEFuZXdfUUFbIG4gXSA9IE1VTDMyX0ZSQUNfUSggdG1wX1FB
LCByY19tdWx0MiAsIG11bHQyUSApOworKyAgICAgICAgICAgIG9wdXNfaW50NjQgdG1wNjQ7Cisr
ICAgICAgICAgICAgdG1wX1FBID0gc2lsa19TVUJfU0FUMzIoIEFvbGRfUUFbIG4gXSwgTVVMMzJf
RlJBQ19RKCBBb2xkX1FBWyBrIC0gbiAtIDEgXSwgcmNfUTMxLCAzMSApICk7CisrICAgICAgICAg
ICAgdG1wNjQgPSBzaWxrX1JTSElGVF9ST1VORDY0KCBzaWxrX1NNVUxMKCB0bXBfUUEsIHJjX211
bHQyICksIG11bHQyUSk7CisrICAgICAgICAgICAgaWYoIHRtcDY0ID4gc2lsa19pbnQzMl9NQVgg
fHwgdG1wNjQgPCBzaWxrX2ludDMyX01JTiApIHsKKysgICAgICAgICAgICAgICByZXR1cm4gMDsK
KysgICAgICAgICAgICB9CisrICAgICAgICAgICAgQW5ld19RQVsgbiBdID0gKCBvcHVzX2ludDMy
ICl0bXA2NDsKKyAgICAgICAgIH0KKyAgICAgfQorIAorZGlmZiAtLWdpdCBhL3NpbGsvTkxTRl9z
dGFiaWxpemUuYyBiL3NpbGsvTkxTRl9zdGFiaWxpemUuYworaW5kZXggOTc5YWFiYS4uMmVmMjM5
OCAxMDA2NDQKKy0tLSBhL3NpbGsvTkxTRl9zdGFiaWxpemUuYworKysrIGIvc2lsay9OTFNGX3N0
YWJpbGl6ZS5jCitAQCAtMTM0LDcgKzEzNCw3IEBAIHZvaWQgc2lsa19OTFNGX3N0YWJpbGl6ZSgK
KyAKKyAgICAgICAgIC8qIEtlZXAgZGVsdGFfbWluIGRpc3RhbmNlIGJldHdlZW4gdGhlIE5MU0Zz
ICovCisgICAgICAgICBmb3IoIGkgPSAxOyBpIDwgTDsgaSsrICkKKy0gICAgICAgICAgICBOTFNG
X1ExNVtpXSA9IHNpbGtfbWF4X2ludCggTkxTRl9RMTVbaV0sIE5MU0ZfUTE1W2ktMV0gKyBORGVs
dGFNaW5fUTE1W2ldICk7CisrICAgICAgICAgICAgTkxTRl9RMTVbaV0gPSBzaWxrX21heF9pbnQo
IE5MU0ZfUTE1W2ldLCBzaWxrX0FERF9TQVQxNiggTkxTRl9RMTVbaS0xXSwgTkRlbHRhTWluX1Ex
NVtpXSApICk7CisgCisgICAgICAgICAvKiBMYXN0IE5MU0Ygc2hvdWxkIGJlIG5vIGhpZ2hlciB0
aGFuIDEgLSBORGVsdGFNaW5bTF0gKi8KKyAgICAgICAgIE5MU0ZfUTE1W0wtMV0gPSBzaWxrX21p
bl9pbnQoIE5MU0ZfUTE1W0wtMV0sICgxPDwxNSkgLSBORGVsdGFNaW5fUTE1W0xdICk7CitkaWZm
IC0tZ2l0IGEvc2lsay9kZWNfQVBJLmMgYi9zaWxrL2RlY19BUEkuYworaW5kZXggZWZkNzkxOC4u
MjFiYjdlMCAxMDA2NDQKKy0tLSBhL3NpbGsvZGVjX0FQSS5jCisrKysgYi9zaWxrL2RlY19BUEku
YworQEAgLTcyLDYgKzcyLDkgQEAgb3B1c19pbnQgc2lsa19Jbml0RGVjb2RlciggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJldHVybnMgZXJyb3IgY28KKyAgICAgZm9yKCBu
ID0gMDsgbiA8IERFQ09ERVJfTlVNX0NIQU5ORUxTOyBuKysgKSB7CisgICAgICAgICByZXQgID0g
c2lsa19pbml0X2RlY29kZXIoICZjaGFubmVsX3N0YXRlWyBuIF0gKTsKKyAgICAgfQorKyAgICBz
aWxrX21lbXNldCgmKChzaWxrX2RlY29kZXIgKilkZWNTdGF0ZSktPnNTdGVyZW8sIDAsIHNpemVv
ZigoKHNpbGtfZGVjb2RlciAqKWRlY1N0YXRlKS0+c1N0ZXJlbykpOworKyAgICAvKiBOb3Qgc3Ry
aWN0bHkgbmVlZGVkLCBidXQgaXQncyBjbGVhbmVyIHRoYXQgd2F5ICovCisrICAgICgoc2lsa19k
ZWNvZGVyICopZGVjU3RhdGUpLT5wcmV2X2RlY29kZV9vbmx5X21pZGRsZSA9IDA7CisgCisgICAg
IHJldHVybiByZXQ7CisgfQorZGlmZiAtLWdpdCBhL3NpbGsvcmVzYW1wbGVyX3ByaXZhdGVfSUlS
X0ZJUi5jIGIvc2lsay9yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSLmMKK2luZGV4IGRiZDZkOWEu
LjkxYTQzYWEgMTAwNjQ0CistLS0gYS9zaWxrL3Jlc2FtcGxlcl9wcml2YXRlX0lJUl9GSVIuYwor
KysrIGIvc2lsay9yZXNhbXBsZXJfcHJpdmF0ZV9JSVJfRklSLmMKK0BAIC03NSwxMCArNzUsMTAg
QEAgdm9pZCBzaWxrX3Jlc2FtcGxlcl9wcml2YXRlX0lJUl9GSVIoCisgICAgIHNpbGtfcmVzYW1w
bGVyX3N0YXRlX3N0cnVjdCAqUyA9IChzaWxrX3Jlc2FtcGxlcl9zdGF0ZV9zdHJ1Y3QgKilTUzsK
KyAgICAgb3B1c19pbnQzMiBuU2FtcGxlc0luOworICAgICBvcHVzX2ludDMyIG1heF9pbmRleF9R
MTYsIGluZGV4X2luY3JlbWVudF9RMTY7CistICAgIG9wdXNfaW50MTYgYnVmWyBSRVNBTVBMRVJf
TUFYX0JBVENIX1NJWkVfSU4gKyBSRVNBTVBMRVJfT1JERVJfRklSXzEyIF07CisrICAgIG9wdXNf
aW50MTYgYnVmWyAyKlJFU0FNUExFUl9NQVhfQkFUQ0hfU0laRV9JTiArIFJFU0FNUExFUl9PUkRF
Ul9GSVJfMTIgXTsKKyAKKyAgICAgLyogQ29weSBidWZmZXJlZCBzYW1wbGVzIHRvIHN0YXJ0IG9m
IGJ1ZmZlciAqLworLSAgICBzaWxrX21lbWNweSggYnVmLCBTLT5zRklSLCBSRVNBTVBMRVJfT1JE
RVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKKysgICAgc2lsa19tZW1jcHkoIGJ1
ZiwgUy0+c0ZJUiwgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQxNiAp
ICk7CisgCisgICAgIC8qIEl0ZXJhdGUgb3ZlciBibG9ja3Mgb2YgZnJhbWVTaXplSW4gaW5wdXQg
c2FtcGxlcyAqLworICAgICBpbmRleF9pbmNyZW1lbnRfUTE2ID0gUy0+aW52UmF0aW9fUTE2Owor
QEAgLTk1LDEzICs5NSwxMyBAQCB2b2lkIHNpbGtfcmVzYW1wbGVyX3ByaXZhdGVfSUlSX0ZJUigK
KyAKKyAgICAgICAgIGlmKCBpbkxlbiA+IDAgKSB7CisgICAgICAgICAgICAgLyogTW9yZSBpdGVy
YXRpb25zIHRvIGRvOyBjb3B5IGxhc3QgcGFydCBvZiBmaWx0ZXJlZCBzaWduYWwgdG8gYmVnaW5u
aW5nIG9mIGJ1ZmZlciAqLworLSAgICAgICAgICAgIHNpbGtfbWVtY3B5KCBidWYsICZidWZbIG5T
YW1wbGVzSW4gPDwgMSBdLCBSRVNBTVBMRVJfT1JERVJfRklSXzEyICogc2l6ZW9mKCBvcHVzX2lu
dDMyICkgKTsKKysgICAgICAgICAgICBzaWxrX21lbW1vdmUoIGJ1ZiwgJmJ1ZlsgblNhbXBsZXNJ
biA8PCAxIF0sIFJFU0FNUExFUl9PUkRFUl9GSVJfMTIgKiBzaXplb2YoIG9wdXNfaW50MTYgKSAp
OworICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgIH0KKyAg
ICAgfQorIAorICAgICAvKiBDb3B5IGxhc3QgcGFydCBvZiBmaWx0ZXJlZCBzaWduYWwgdG8gdGhl
IHN0YXRlIGZvciB0aGUgbmV4dCBjYWxsICovCistICAgIHNpbGtfbWVtY3B5KCBTLT5zRklSLCAm
YnVmWyBuU2FtcGxlc0luIDw8IDEgXSwgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZigg
b3B1c19pbnQzMiApICk7CisrICAgIHNpbGtfbWVtY3B5KCBTLT5zRklSLCAmYnVmWyBuU2FtcGxl
c0luIDw8IDEgXSwgUkVTQU1QTEVSX09SREVSX0ZJUl8xMiAqIHNpemVvZiggb3B1c19pbnQxNiAp
ICk7CisgfQorIAorZGlmZiAtLWdpdCBhL3NyYy9vcHVzX2RlY29kZXIuYyBiL3NyYy9vcHVzX2Rl
Y29kZXIuYworaW5kZXggMGNjNTZmOC4uOGEzMGZiYyAxMDA2NDQKKy0tLSBhL3NyYy9vcHVzX2Rl
Y29kZXIuYworKysrIGIvc3JjL29wdXNfZGVjb2Rlci5jCitAQCAtNTk1LDE2ICs1OTUsMTQgQEAg
c3RhdGljIGludCBvcHVzX3BhY2tldF9wYXJzZV9pbXBsKGNvbnN0IHVuc2lnbmVkIGNoYXIgKmRh
dGEsIGludCBsZW4sCisgICAgICAgLyogUGFkZGluZyBmbGFnIGlzIGJpdCA2ICovCisgICAgICAg
aWYgKGNoJjB4NDApCisgICAgICAgeworLSAgICAgICAgIGludCBwYWRkaW5nPTA7CisgICAgICAg
ICAgaW50IHA7CisgICAgICAgICAgZG8geworICAgICAgICAgICAgIGlmIChsZW48PTApCisgICAg
ICAgICAgICAgICAgcmV0dXJuIE9QVVNfSU5WQUxJRF9QQUNLRVQ7CisgICAgICAgICAgICAgcCA9
ICpkYXRhKys7CisgICAgICAgICAgICAgbGVuLS07CistICAgICAgICAgICAgcGFkZGluZyArPSBw
PT0yNTUgPyAyNTQ6IHA7CisrICAgICAgICAgICAgbGVuIC09IHA9PTI1NSA/IDI1NDogcDsKKyAg
ICAgICAgICB9IHdoaWxlIChwPT0yNTUpOworLSAgICAgICAgIGxlbiAtPSBwYWRkaW5nOworICAg
ICAgIH0KKyAgICAgICBpZiAobGVuPDApCisgICAgICAgICAgcmV0dXJuIE9QVVNfSU5WQUxJRF9Q
QUNLRVQ7CitkaWZmIC0tZ2l0IGEvcnVuX3ZlY3RvcnMuc2ggYi9ydW5fdmVjdG9ycy5zaAoraW5k
ZXggN2NkMjNlZC4uNDg0MWIwYSAxMDA3NTUKKy0tLSBhL3J1bl92ZWN0b3JzLnNoCisrKysgYi9y
dW5fdmVjdG9ycy5zaAorQEAgLTEsMyArMSw1IEBACisrIyEvYmluL3NoCisrIworICMgQ29weXJp
Z2h0IChjKSAyMDExLTIwMTIgSUVURiBUcnVzdCwgSmVhbi1NYXJjIFZhbGluLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICMKKyAjICBUaGlzIGZpbGUgaXMgZXh0cmFjdGVkIGZyb20gUkZDNjcxNi4g
UGxlYXNlIHNlZSB0aGF0IFJGQyBmb3IgYWRkaXRpb25hbAorQEAgLTMxLDEwICszMyw4IEBACisg
IyAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTCisgIyAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgCistIyEvYmluL3NoCistCistcm0gbG9nc19tb25vLnR4
dAorLXJtIGxvZ3Nfc3RlcmVvLnR4dAorK3JtIC1mIGxvZ3NfbW9uby50eHQgbG9nc19tb25vMi50
eHQKKytybSAtZiBsb2dzX3N0ZXJlby50eHQgbG9nc19zdGVyZW8yLnR4dAorIAorIGlmIFsgIiQj
IiAtbmUgIjMiIF07IHRoZW4KKyAgICAgZWNobyAidXNhZ2U6IHJ1bl92ZWN0b3JzLnNoIDxleGVj
IHBhdGg+IDx2ZWN0b3IgcGF0aD4gPHJhdGU+IgorQEAgLTQ1LDE4ICs0NSwyMyBAQCBDTURfUEFU
SD0kMQorIFZFQ1RPUl9QQVRIPSQyCisgUkFURT0kMworIAorLU9QVVNfREVNTz0kQ01EX1BBVEgv
b3B1c19kZW1vCistT1BVU19DT01QQVJFPSRDTURfUEFUSC9vcHVzX2NvbXBhcmUKKys6ICR7T1BV
U19ERU1POj0kQ01EX1BBVEgvb3B1c19kZW1vfQorKzogJHtPUFVTX0NPTVBBUkU6PSRDTURfUEFU
SC9vcHVzX2NvbXBhcmV9CisgCisgaWYgWyAtZCAkVkVDVE9SX1BBVEggXTsgdGhlbgorICAgICBl
Y2hvIFRlc3QgdmVjdG9ycyBmb3VuZCBpbiAkVkVDVE9SX1BBVEgKKyBlbHNlCisgICAgIGVjaG8g
Tm8gdGVzdCB2ZWN0b3JzIGZvdW5kCistICAgICNEb24ndCBtYWtlIHRoZSB0ZXN0IGZhaWwgaGVy
ZSBiZWNhdXNlIHRoZSB0ZXN0IHZlY3RvcnMgd2lsbCBiZQorLSAgICAjZGlzdHJpYnV0ZWQgc2Vw
YXJhdGVseQorKyAgICAjRG9uJ3QgbWFrZSB0aGUgdGVzdCBmYWlsIGhlcmUgYmVjYXVzZSB0aGUg
dGVzdCB2ZWN0b3JzCisrICAgICN3aWxsIGJlIGRpc3RyaWJ1dGVkIHNlcGFyYXRlbHkKKyAgICAg
ZXhpdCAwCisgZmkKKyAKKytpZiBbICEgLXggJE9QVVNfQ09NUEFSRSBdOyB0aGVuCisrICAgIGVj
aG8gRVJST1I6IENvbXBhcmUgcHJvZ3JhbSBub3QgZm91bmQ6ICRPUFVTX0NPTVBBUkUKKysgICAg
ZXhpdCAxCisrZmkKKysKKyBpZiBbIC14ICRPUFVTX0RFTU8gXTsgdGhlbgorICAgICBlY2hvIERl
Y29kaW5nIHdpdGggJE9QVVNfREVNTworIGVsc2UKK0BAIC04Miw5ICs4NywxMSBAQCBkbworICAg
ICAgICAgZWNobyBFUlJPUjogZGVjb2RpbmcgZmFpbGVkCisgICAgICAgICBleGl0IDEKKyAgICAg
ZmkKKy0gICAgJE9QVVNfQ09NUEFSRSAtciAkUkFURSAkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciRm
aWxlLmRlYyB0bXAub3V0ID4+IGxvZ3NfbW9uby50eHQgMj4mMQorKyAgICAkT1BVU19DT01QQVJF
IC1yICRSQVRFICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJHtmaWxlfS5kZWMgdG1wLm91dCA+PiBs
b2dzX21vbm8udHh0IDI+JjEKKyAgICAgZmxvYXRfcmV0PSQ/CistICAgIGlmIFsgIiRmbG9hdF9y
ZXQiIC1lcSAiMCIgXTsgdGhlbgorKyAgICAkT1BVU19DT01QQVJFIC1yICRSQVRFICRWRUNUT1Jf
UEFUSC90ZXN0dmVjdG9yJHtmaWxlfW0uZGVjIHRtcC5vdXQgPj4gbG9nc19tb25vMi50eHQgMj4m
MQorKyAgICBmbG9hdF9yZXQyPSQ/CisrICAgIGlmIFsgIiRmbG9hdF9yZXQiIC1lcSAiMCIgXSB8
fCBbICIkZmxvYXRfcmV0MiIgLWVxICIwIiBdOyB0aGVuCisgICAgICAgICBlY2hvIG91dHB1dCBt
YXRjaGVzIHJlZmVyZW5jZQorICAgICBlbHNlCisgICAgICAgICBlY2hvIEVSUk9SOiBvdXRwdXQg
ZG9lcyBub3QgbWF0Y2ggcmVmZXJlbmNlCitAQCAtMTExLDkgKzExOCwxMSBAQCBkbworICAgICAg
ICAgZWNobyBFUlJPUjogZGVjb2RpbmcgZmFpbGVkCisgICAgICAgICBleGl0IDEKKyAgICAgZmkK
Ky0gICAgJE9QVVNfQ09NUEFSRSAtcyAtciAkUkFURSAkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciRm
aWxlLmRlYyB0bXAub3V0ID4+IGxvZ3Nfc3RlcmVvLnR4dCAyPiYxCisrICAgICRPUFVTX0NPTVBB
UkUgLXMgLXIgJFJBVEUgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3Ike2ZpbGV9LmRlYyB0bXAub3V0
ID4+IGxvZ3Nfc3RlcmVvLnR4dCAyPiYxCisgICAgIGZsb2F0X3JldD0kPworLSAgICBpZiBbICIk
ZmxvYXRfcmV0IiAtZXEgIjAiIF07IHRoZW4KKysgICAgJE9QVVNfQ09NUEFSRSAtcyAtciAkUkFU
RSAkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciR7ZmlsZX1tLmRlYyB0bXAub3V0ID4+IGxvZ3Nfc3Rl
cmVvMi50eHQgMj4mMQorKyAgICBmbG9hdF9yZXQyPSQ/CisrICAgIGlmIFsgIiRmbG9hdF9yZXQi
IC1lcSAiMCIgXSB8fCBbICIkZmxvYXRfcmV0MiIgLWVxICIwIiBdOyB0aGVuCisgICAgICAgICBl
Y2hvIG91dHB1dCBtYXRjaGVzIHJlZmVyZW5jZQorICAgICBlbHNlCisgICAgICAgICBlY2hvIEVS
Uk9SOiBvdXRwdXQgZG9lcyBub3QgbWF0Y2ggcmVmZXJlbmNlCitAQCAtMTI1LDUgKzEzNCwxMCBA
QCBkb25lCisgCisgCisgZWNobyBBbGwgdGVzdHMgaGF2ZSBwYXNzZWQgc3VjY2Vzc2Z1bGx5Cist
Z3JlcCBxdWFsaXR5IGxvZ3NfbW9uby50eHQgfCBhd2sgJ3tzdW0rPSQ0fUVORHtwcmludCAiQXZl
cmFnZSBtb25vIHF1YWxpdHkgaXMiLCBzdW0vTlIsICIlIn0nCistZ3JlcCBxdWFsaXR5IGxvZ3Nf
c3RlcmVvLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee3ByaW50ICJBdmVyYWdlIHN0ZXJlbyBxdWFs
aXR5IGlzIiwgc3VtL05SLCAiJSJ9JworK21vbm8xPWBncmVwIHF1YWxpdHkgbG9nc19tb25vLnR4
dCB8IGF3ayAne3N1bSs9JDR9RU5Ee2lmIChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNlIHN1bSA9
IDA7IHByaW50IHN1bX0nYAorK21vbm8yPWBncmVwIHF1YWxpdHkgbG9nc19tb25vMi50eHQgfCBh
d2sgJ3tzdW0rPSQ0fUVORHtpZiAoTlIgPT0gMTIpIHN1bSAvPSAxMjsgZWxzZSBzdW0gPSAwOyBw
cmludCBzdW19J2AKKytlY2hvICRtb25vMSAkbW9ubzIgfCBhd2sgJ3tpZiAoJDIgPiAkMSkgJDEg
PSAkMjsgcHJpbnQgIkF2ZXJhZ2UgbW9ubyBxdWFsaXR5IGlzIiwgJDEsICIlIn0nCisrCisrc3Rl
cmVvMT1gZ3JlcCBxdWFsaXR5IGxvZ3Nfc3RlcmVvLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee2lm
IChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNlIHN1bSA9IDA7IHByaW50IHN1bX0nYAorK3N0ZXJl
bzI9YGdyZXAgcXVhbGl0eSBsb2dzX3N0ZXJlbzIudHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7aWYg
KE5SID09IDEyKSBzdW0gLz0gMTI7IGVsc2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdgCisrZWNobyAk
c3RlcmVvMSAkc3RlcmVvMiB8IGF3ayAne2lmICgkMiA+ICQxKSAkMSA9ICQyOyBwcmludCAiQXZl
cmFnZSBzdGVyZW8gcXVhbGl0eSBpcyIsICQxLCAiJSJ9JwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvcmVsZWFz
ZS50eHQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL2RvYy9yZWxlYXNlLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZDNmZmEyMzkwMWMwNGQyZmI5ODg2
ZjUyZDRjYjc0Y2E0MjdiNmQxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9kb2MvcmVsZWFzZS50eHQKQEAg
LTAsMCArMSw0MyBAQAorPSBSZWxlYXNlIGNoZWNrbGlzdCA9CisKKz09IFNvdXJjZSByZWxlYXNl
ID09CisKKy0gQ2hlY2sgZm9yIHVuY29tbWl0dGVkIGNoYW5nZXMgdG8gbWFzdGVyLgorLSBVcGRh
dGUgT1BVU19MVF8qIEFQSSB2ZXJzaW9uaW5nIGluIGNvbmZpZ3VyZS5hYy4KKy0gVGFnIHRoZSBy
ZWxlYXNlIGNvbW1pdCB3aXRoICdnaXQgdGFnIC1zIHZOLk0nLgorIC0gSW5jbHVkZSByZWxlYXNl
IG5vdGVzIGluIHRoZSB0YWcgYW5ub3RhdGlvbi4KKy0gVmVyaWZ5ICdtYWtlIGRpc3RjaGVjaycg
cHJvZHVjZXMgYSB0YXJiYWxsIHdpdGgKKyAgdGhlIGRlc2lyZWQgbmFtZS4KKy0gUHVzaCB0YWcg
dG8gcHVibGljIHJlcG8uCistIFVwbG9hZCBzb3VyY2UgcGFja2FnZSAnb3B1cy0ke3ZlcnNpb259
LnRhci5neicKKyAtIEFkZCB0byBodHRwczovL3N2bi54aXBoLm9yZy9yZWxlYXNlcy9vcHVzLwor
IC0gVXBkYXRlIGNoZWNrc3VtIGZpbGVzCisgLSBzdm4gY29tbWl0CisgLSBDb3B5IHRvIGFyY2hp
dmUubW96aWxsYS5vcmcvcHViL29wdXMvCisgLSBVcGRhdGUgY2hlY2tzdW0gZmlsZXMgdGhlcmUg
YXMgd2VsbC4KKy0gQWRkIHJlbGVhc2Ugbm90ZXMgdG8gaHR0cHM6Ly9naXQueGlwaC5vcmcvb3B1
cy13ZWJzaXRlLmdpdAorLSBVcGRhdGUgbGlua3MgYW5kIGNoZWNrc3VtcyBvbiB0aGUgZG93bmxv
YWRzIHBhZ2UuCistIEFkZCBhIGNvcHkgb2YgdGhlIGRvY3VtZW50YXRpb24gdG8gPGh0dHBzOi8v
d3d3Lm9wdXMtY29kZWMub3JnL2RvY3MvPgorICBhbmQgdXBkYXRlIHRoZSBsaW5rcy4KKy0gVXBk
YXRlIC90b3BpYyBpbiAjb3B1cyBJUkMgY2hhbm5lbC4KKworUmVsZWFzZXMgYXJlIGNvbW1pdGVk
IHRvIGh0dHBzOi8vc3ZuLnhpcGgub3JnL3JlbGVhc2VzL29wdXMvCit3aGljaCBwcm9wYWdhdGVz
IHRvIGRvd25sb2Fkcy54aXBoLm9yZywgYW5kIGNvcGllZCBtYW51YWxseQordG8gaHR0cHM6Ly9h
cmNoaXZlLm1vemlsbGEub3JnL3B1Yi9vcHVzLworCitXZWJzaXRlIHVwZGF0ZXMgYXJlIGNvbW1p
dHRlZCB0byBodHRwczovL2dpdC54aXBoLm9yZy9vcHVzLXdlYnNpdGUuZ2l0Cit3aGljaCBwcm9w
YWdhdGVzIHRvIGh0dHBzOi8vb3B1cy1jb2RlYy5vcmcvCisKKz09IEJpbmFyeSByZWxlYXNlID09
CisKK1dlIHVzdWFsbHkgYnVpbGQgb3B1cy10b29scyBiaW5hcmllcyBmb3IgTWFjT1MgYW5kIFdp
bmRvd3MuCisKK0JpbmFyeSByZWxlYXNlcyBhcmUgY29waWVkIG1hbnVhbGx5IHRvCitodHRwczov
L2FyY2hpdmUubW96aWxsYS5vcmcvcHViL29wdXMvd2luMzIvCisKK0ZvciBNYWMsIHN1Ym1pdCBh
IHB1bGwgcmVxdWVzdCB0byBob21lYnJldy4KKworPT0gV2Vic2l0ZSB1cGRhdGVzID09CisKK0Zv
ciBtYWpvciByZWxlYXNlcywgcmVjcmVhdGUgdGhlIGZpbGVzIG9uIGh0dHBzOi8vb3B1cy1jb2Rl
Yy5vcmcvZXhhbXBsZXMvCit3aXRoIHRoZSBuZXh0IGVuY29kZXIuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1
ZGUvb3B1c19kZWZpbmVzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUvb3B1c19kZWZpbmVzLmgKaW5kZXggMzE1NDEyZGQx
ZDIzODNjZjkwMDk2OTBkM2FhMTAyYWFhMzBhYTgxMy4uMzNjNWFjZGIzMzkzNTAxYzlkZDYyODk3
OGM3OGZkMjI2NDU5ZGM1NSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfZGVmaW5lcy5oCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
aW5jbHVkZS9vcHVzX2RlZmluZXMuaApAQCAtMTY1LDggKzE2NSw5IEBAIGV4dGVybiAiQyIgewog
I2RlZmluZSBPUFVTX0dFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT05fUkVRVUVTVCA0MDQxCiAjZGVm
aW5lIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRURfUkVRVUVTVCA0MDQyCiAjZGVmaW5lIE9Q
VVNfR0VUX1BSRURJQ1RJT05fRElTQUJMRURfUkVRVUVTVCA0MDQzCi0KIC8qIERvbid0IHVzZSA0
MDQ1LCBpdCdzIGFscmVhZHkgdGFrZW4gYnkgT1BVU19HRVRfR0FJTl9SRVFVRVNUICovCisjZGVm
aW5lIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFVRVNUIDQwNDYKKyNkZWZp
bmUgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1QgNDA0NwogCiAvKiBN
YWNyb3MgdG8gdHJpZ2dlciBjb21waWxhdGlvbiBlcnJvcnMgd2hlbiB0aGUgd3JvbmcgdHlwZXMg
YXJlIHByb3ZpZGVkIHRvIGEgQ1RMICovCiAjZGVmaW5lIF9fb3B1c19jaGVja19pbnQoeCkgKCgo
dm9pZCkoKHgpID09IChvcHVzX2ludDMyKTApKSwgKG9wdXNfaW50MzIpKHgpKQpAQCAtMjA4LDYg
KzIwOSw5IEBAIGV4dGVybiAiQyIgewogI2RlZmluZSBPUFVTX0ZSQU1FU0laRV8yMF9NUyAgICAg
ICAgICAgICAgICAgNTAwNCAvKio8IFVzZSAyMCBtcyBmcmFtZXMgKi8KICNkZWZpbmUgT1BVU19G
UkFNRVNJWkVfNDBfTVMgICAgICAgICAgICAgICAgIDUwMDUgLyoqPCBVc2UgNDAgbXMgZnJhbWVz
ICovCiAjZGVmaW5lIE9QVVNfRlJBTUVTSVpFXzYwX01TICAgICAgICAgICAgICAgICA1MDA2IC8q
KjwgVXNlIDYwIG1zIGZyYW1lcyAqLworI2RlZmluZSBPUFVTX0ZSQU1FU0laRV84MF9NUyAgICAg
ICAgICAgICAgICAgNTAwNyAvKio8IFVzZSA4MCBtcyBmcmFtZXMgKi8KKyNkZWZpbmUgT1BVU19G
UkFNRVNJWkVfMTAwX01TICAgICAgICAgICAgICAgIDUwMDggLyoqPCBVc2UgMTAwIG1zIGZyYW1l
cyAqLworI2RlZmluZSBPUFVTX0ZSQU1FU0laRV8xMjBfTVMgICAgICAgICAgICAgICAgNTAwOSAv
Kio8IFVzZSAxMjAgbXMgZnJhbWVzICovCiAKIC8qKkB9Ki8KIApAQCAtNTY2LDcgKzU3MCw5IEBA
IGV4dGVybiAiQyIgewogICAqIDxkdD5PUFVTX0ZSQU1FU0laRV8yMF9NUzwvZHQ+PGRkPlVzZSAy
MCBtcyBmcmFtZXMuPC9kZD4KICAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfNDBfTVM8L2R0PjxkZD5V
c2UgNDAgbXMgZnJhbWVzLjwvZGQ+CiAgICogPGR0Pk9QVVNfRlJBTUVTSVpFXzYwX01TPC9kdD48
ZGQ+VXNlIDYwIG1zIGZyYW1lcy48L2RkPgotICAqIDxkdD5PUFVTX0ZSQU1FU0laRV9WQVJJQUJM
RTwvZHQ+PGRkPk9wdGltaXplIHRoZSBmcmFtZSBzaXplIGR5bmFtaWNhbGx5LjwvZGQ+CisgICog
PGR0Pk9QVVNfRlJBTUVTSVpFXzgwX01TPC9kdD48ZGQ+VXNlIDgwIG1zIGZyYW1lcy48L2RkPgor
ICAqIDxkdD5PUFVTX0ZSQU1FU0laRV8xMDBfTVM8L2R0PjxkZD5Vc2UgMTAwIG1zIGZyYW1lcy48
L2RkPgorICAqIDxkdD5PUFVTX0ZSQU1FU0laRV8xMjBfTVM8L2R0PjxkZD5Vc2UgMTIwIG1zIGZy
YW1lcy48L2RkPgogICAqIDwvZGw+CiAgICogQGhpZGVpbml0aWFsaXplciAqLwogI2RlZmluZSBP
UFVTX1NFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT04oeCkgT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RV
UkFUSU9OX1JFUVVFU1QsIF9fb3B1c19jaGVja19pbnQoeCkKQEAgLTU4MSw3ICs1ODcsOSBAQCBl
eHRlcm4gIkMiIHsKICAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfMjBfTVM8L2R0PjxkZD5Vc2UgMjAg
bXMgZnJhbWVzLjwvZGQ+CiAgICogPGR0Pk9QVVNfRlJBTUVTSVpFXzQwX01TPC9kdD48ZGQ+VXNl
IDQwIG1zIGZyYW1lcy48L2RkPgogICAqIDxkdD5PUFVTX0ZSQU1FU0laRV82MF9NUzwvZHQ+PGRk
PlVzZSA2MCBtcyBmcmFtZXMuPC9kZD4KLSAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfVkFSSUFCTEU8
L2R0PjxkZD5PcHRpbWl6ZSB0aGUgZnJhbWUgc2l6ZSBkeW5hbWljYWxseS48L2RkPgorICAqIDxk
dD5PUFVTX0ZSQU1FU0laRV84MF9NUzwvZHQ+PGRkPlVzZSA4MCBtcyBmcmFtZXMuPC9kZD4KKyAg
KiA8ZHQ+T1BVU19GUkFNRVNJWkVfMTAwX01TPC9kdD48ZGQ+VXNlIDEwMCBtcyBmcmFtZXMuPC9k
ZD4KKyAgKiA8ZHQ+T1BVU19GUkFNRVNJWkVfMTIwX01TPC9kdD48ZGQ+VXNlIDEyMCBtcyBmcmFt
ZXMuPC9kZD4KICAgKiA8L2RsPgogICAqIEBoaWRlaW5pdGlhbGl6ZXIgKi8KICNkZWZpbmUgT1BV
U19HRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKHgpIE9QVVNfR0VUX0VYUEVSVF9GUkFNRV9EVVJB
VElPTl9SRVFVRVNULCBfX29wdXNfY2hlY2tfaW50X3B0cih4KQpAQCAtNjgxLDYgKzY4OSwzMCBA
QCBleHRlcm4gIkMiIHsKICAgKi8KICNkZWZpbmUgT1BVU19HRVRfU0FNUExFX1JBVEUoeCkgT1BV
U19HRVRfU0FNUExFX1JBVEVfUkVRVUVTVCwgX19vcHVzX2NoZWNrX2ludF9wdHIoeCkKIAorLyoq
IElmIHNldCB0byAxLCBkaXNhYmxlcyB0aGUgdXNlIG9mIHBoYXNlIGludmVyc2lvbiBmb3IgaW50
ZW5zaXR5IHN0ZXJlbywKKyAgKiBpbXByb3ZpbmcgdGhlIHF1YWxpdHkgb2YgbW9ubyBkb3dubWl4
ZXMsIGJ1dCBzbGlnaHRseSByZWR1Y2luZyBub3JtYWwKKyAgKiBzdGVyZW8gcXVhbGl0eS4gRGlz
YWJsaW5nIHBoYXNlIGludmVyc2lvbiBpbiB0aGUgZGVjb2RlciBkb2VzIG5vdCBjb21wbHkKKyAg
KiB3aXRoIFJGQyA2NzE2LCBhbHRob3VnaCBpdCBkb2VzIG5vdCBjYXVzZSBhbnkgaW50ZXJvcGVy
YWJpbGl0eSBpc3N1ZSBhbmQKKyAgKiBpcyBleHBlY3RlZCB0byBiZWNvbWUgcGFydCBvZiB0aGUg
T3B1cyBzdGFuZGFyZCBvbmNlIFJGQyA2NzE2IGlzIHVwZGF0ZWQKKyAgKiBieSBkcmFmdC1pZXRm
LWNvZGVjLW9wdXMtdXBkYXRlLgorICAqIEBzZWUgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJ
U0FCTEVECisgICogQHBhcmFtW2luXSB4IDx0dD5vcHVzX2ludDMyPC90dD46IEFsbG93ZWQgdmFs
dWVzOgorICAqIDxkbD4KKyAgKiA8ZHQ+MDwvZHQ+PGRkPkVuYWJsZSBwaGFzZSBpbnZlcnNpb24g
KGRlZmF1bHQpLjwvZGQ+CisgICogPGR0PjE8L2R0PjxkZD5EaXNhYmxlIHBoYXNlIGludmVyc2lv
bi48L2RkPgorICAqIDwvZGw+CisgICogQGhpZGVpbml0aWFsaXplciAqLworI2RlZmluZSBPUFVT
X1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoeCkgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9O
X0RJU0FCTEVEX1JFUVVFU1QsIF9fb3B1c19jaGVja19pbnQoeCkKKy8qKiBHZXRzIHRoZSBlbmNv
ZGVyJ3MgY29uZmlndXJlZCBwaGFzZSBpbnZlcnNpb24gc3RhdHVzLgorICAqIEBzZWUgT1BVU19T
RVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVECisgICogQHBhcmFtW291dF0geCA8dHQ+b3B1c19p
bnQzMiAqPC90dD46IFJldHVybnMgb25lIG9mIHRoZSBmb2xsb3dpbmcgdmFsdWVzOgorICAqIDxk
bD4KKyAgKiA8ZHQ+MDwvZHQ+PGRkPlN0ZXJlbyBwaGFzZSBpbnZlcnNpb24gZW5hYmxlZCAoZGVm
YXVsdCkuPC9kZD4KKyAgKiA8ZHQ+MTwvZHQ+PGRkPlN0ZXJlbyBwaGFzZSBpbnZlcnNpb24gZGlz
YWJsZWQuPC9kZD4KKyAgKiA8L2RsPgorICAqIEBoaWRlaW5pdGlhbGl6ZXIgKi8KKyNkZWZpbmUg
T1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKHgpIE9QVVNfR0VUX1BIQVNFX0lOVkVS
U0lPTl9ESVNBQkxFRF9SRVFVRVNULCBfX29wdXNfY2hlY2tfaW50X3B0cih4KQorCiAvKipAfSov
CiAKIC8qKiBAZGVmZ3JvdXAgb3B1c19kZWNvZGVyY3RscyBEZWNvZGVyIHJlbGF0ZWQgQ1RMcwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfbXVsdGlzdHJlYW0uaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvaW5jbHVkZS9vcHVzX211bHRp
c3RyZWFtLmgKaW5kZXggMzYyMmUwMDlmYjUzMDUyZGRiMTM3NWNmMzcwZWI4NWViMDI5NzBlNy4u
YmFiY2VlNjkwNWJmOWY3MGQ5MjJlYjkwM2QyOGE5MTUxZjA1MzUwNSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNs
dWRlL29wdXNfbXVsdGlzdHJlYW0uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL2luY2x1ZGUvb3B1c19tdWx0aXN0cmVhbS5oCkBA
IC0yNzMsNyArMjczLDcgQEAgT1BVU19FWFBPUlQgT1BVU19XQVJOX1VOVVNFRF9SRVNVTFQgT3B1
c01TRW5jb2RlciAqb3B1c19tdWx0aXN0cmVhbV9zdXJyb3VuZF9lbmMKICAgICAgIHVuc2lnbmVk
IGNoYXIgKm1hcHBpbmcsCiAgICAgICBpbnQgYXBwbGljYXRpb24sCiAgICAgICBpbnQgKmVycm9y
Ci0pIE9QVVNfQVJHX05PTk5VTEwoNSk7CispIE9QVVNfQVJHX05PTk5VTEwoNCkgT1BVU19BUkdf
Tk9OTlVMTCg1KSBPUFVTX0FSR19OT05OVUxMKDYpOwogCiAvKiogSW5pdGlhbGl6ZSBhIHByZXZp
b3VzbHkgYWxsb2NhdGVkIG11bHRpc3RyZWFtIGVuY29kZXIgc3RhdGUuCiAgICogVGhlIG1lbW9y
eSBwb2ludGVkIHRvIGJ5IFxhIHN0IG11c3QgYmUgYXQgbGVhc3QgdGhlIHNpemUgcmV0dXJuZWQg
YnkKQEAgLTM0Miw3ICszNDIsNyBAQCBPUFVTX0VYUE9SVCBpbnQgb3B1c19tdWx0aXN0cmVhbV9z
dXJyb3VuZF9lbmNvZGVyX2luaXQoCiAgICAgICBpbnQgKmNvdXBsZWRfc3RyZWFtcywKICAgICAg
IHVuc2lnbmVkIGNoYXIgKm1hcHBpbmcsCiAgICAgICBpbnQgYXBwbGljYXRpb24KLSkgT1BVU19B
UkdfTk9OTlVMTCgxKSBPUFVTX0FSR19OT05OVUxMKDYpOworKSBPUFVTX0FSR19OT05OVUxMKDEp
IE9QVVNfQVJHX05PTk5VTEwoNSkgT1BVU19BUkdfTk9OTlVMTCg2KSBPUFVTX0FSR19OT05OVUxM
KDcpOwogCiAvKiogRW5jb2RlcyBhIG11bHRpc3RyZWFtIE9wdXMgZnJhbWUuCiAgICogQHBhcmFt
IHN0IDx0dD5PcHVzTVNFbmNvZGVyKjwvdHQ+OiBNdWx0aXN0cmVhbSBlbmNvZGVyIHN0YXRlLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfdHlwZXMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvaW5jbHVkZS9vcHVzX3R5cGVzLmgKaW5k
ZXggYjI4ZTAzYWVhMjAyZDk3ZmU3MWNmNThhZmM5MGRhYzIwODQxNDRhOS4uN2NmNjc1NTgwZmZi
MGFkOWJhN2IwNDBhNWMwM2ViMjgyODkxMDQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9pbmNsdWRlL29wdXNfdHlw
ZXMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL2luY2x1ZGUvb3B1c190eXBlcy5oCkBAIC0zMywxNCArMzMsMjkgQEAKICNpZm5k
ZWYgT1BVU19UWVBFU19ICiAjZGVmaW5lIE9QVVNfVFlQRVNfSAogCisjZGVmaW5lIG9wdXNfaW50
ICAgICAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgLyogdXNlZCBmb3IgY291bnRlcnMgZXRj
OyBhdCBsZWFzdCAxNiBiaXRzICovCisjZGVmaW5lIG9wdXNfaW50NjQgICAgICAgbG9uZyBsb25n
CisjZGVmaW5lIG9wdXNfaW50OCAgICAgICAgc2lnbmVkIGNoYXIKKworI2RlZmluZSBvcHVzX3Vp
bnQgICAgICAgIHVuc2lnbmVkIGludCAgICAgICAgICAgIC8qIHVzZWQgZm9yIGNvdW50ZXJzIGV0
YzsgYXQgbGVhc3QgMTYgYml0cyAqLworI2RlZmluZSBvcHVzX3VpbnQ2NCAgICAgIHVuc2lnbmVk
IGxvbmcgbG9uZworI2RlZmluZSBvcHVzX3VpbnQ4ICAgICAgIHVuc2lnbmVkIGNoYXIKKwogLyog
VXNlIHRoZSByZWFsIHN0ZGludC5oIGlmIGl0J3MgdGhlcmUgKHRha2VuIGZyb20gUGF1bCBIc2ll
aCdzIHBzdGRpbnQuaCkgKi8KLSNpZiAoZGVmaW5lZChfX1NURENfXykgJiYgX19TVERDX18gJiYg
X19TVERDX1ZFUlNJT05fXyA+PSAxOTk5MDFMKSB8fCAoZGVmaW5lZChfX0dOVUNfXykgJiYgKGRl
ZmluZWQoX1NURElOVF9IKSB8fCBkZWZpbmVkKF9TVERJTlRfSF8pKSB8fCBkZWZpbmVkIChIQVZF
X1NURElOVF9IKSkKKyNpZiAoZGVmaW5lZChfX1NURENfXykgJiYgX19TVERDX18gJiYgZGVmaW5l
ZChfX1NURENfVkVSU0lPTl9fKSAmJiBfX1NURENfVkVSU0lPTl9fID49IDE5OTkwMUwpIHx8IChk
ZWZpbmVkKF9fR05VQ19fKSAmJiAoZGVmaW5lZChfU1RESU5UX0gpIHx8IGRlZmluZWQoX1NURElO
VF9IXykpIHx8IGRlZmluZWQgKEhBVkVfU1RESU5UX0gpKQogI2luY2x1ZGUgPHN0ZGludC5oPgot
CisjICB1bmRlZiBvcHVzX2ludDY0CisjICB1bmRlZiBvcHVzX2ludDgKKyMgIHVuZGVmIG9wdXNf
dWludDY0CisjICB1bmRlZiBvcHVzX3VpbnQ4CisgICB0eXBlZGVmIGludDhfdCBvcHVzX2ludDg7
CisgICB0eXBlZGVmIHVpbnQ4X3Qgb3B1c191aW50ODsKICAgIHR5cGVkZWYgaW50MTZfdCBvcHVz
X2ludDE2OwogICAgdHlwZWRlZiB1aW50MTZfdCBvcHVzX3VpbnQxNjsKICAgIHR5cGVkZWYgaW50
MzJfdCBvcHVzX2ludDMyOwogICAgdHlwZWRlZiB1aW50MzJfdCBvcHVzX3VpbnQzMjsKKyAgIHR5
cGVkZWYgaW50NjRfdCBvcHVzX2ludDY0OworICAgdHlwZWRlZiB1aW50NjRfdCBvcHVzX3VpbnQ2
NDsKICNlbGlmIGRlZmluZWQoX1dJTjMyKQogCiAjICBpZiBkZWZpbmVkKF9fQ1lHV0lOX18pCkBA
IC0xNDgsMTIgKzE2Myw0IEBACiAKICNlbmRpZgogCi0jZGVmaW5lIG9wdXNfaW50ICAgICAgICAg
aW50ICAgICAgICAgICAgICAgICAgICAgLyogdXNlZCBmb3IgY291bnRlcnMgZXRjOyBhdCBsZWFz
dCAxNiBiaXRzICovCi0jZGVmaW5lIG9wdXNfaW50NjQgICAgICAgbG9uZyBsb25nCi0jZGVmaW5l
IG9wdXNfaW50OCAgICAgICAgc2lnbmVkIGNoYXIKLQotI2RlZmluZSBvcHVzX3VpbnQgICAgICAg
IHVuc2lnbmVkIGludCAgICAgICAgICAgIC8qIHVzZWQgZm9yIGNvdW50ZXJzIGV0YzsgYXQgbGVh
c3QgMTYgYml0cyAqLwotI2RlZmluZSBvcHVzX3VpbnQ2NCAgICAgIHVuc2lnbmVkIGxvbmcgbG9u
ZwotI2RlZmluZSBvcHVzX3VpbnQ4ICAgICAgIHVuc2lnbmVkIGNoYXIKLQogI2VuZGlmICAvKiBP
UFVTX1RZUEVTX0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvcmVsZWFzZXMuc2hhMiBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvcmVsZWFzZXMuc2hhMgpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5iMWIzMmMwMDU1MThmZmQ0NGFkNTA1OTcyMjVmNzhkMzliNTU2ZWI5Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9yZWxlYXNlcy5zaGEyCkBAIC0wLDAgKzEsNjMgQEAKK2IyZjc1YzRhYzVh
YjgzNzg0NWViMDI4NDEzZmFlMmEyODc1NGJmYjBhNmQ3NjQxNmUyYWYxNDQxZWY0NDc2NDkgIG9w
dXMtMC45LjAudGFyLmd6Cis0ZTM3OWE5OGJhOTViYmJmZTkwODdlZjEwZmRkMDVjOGFjOTA2MGI2
ZDY5NWY1ODdlYTgyYTdiNDNhMGRmNGZlICBvcHVzLTAuOS4xMC50YXIuZ3oKK2IxY2FkNjg0NmE4
ZjgxOWExNDEwMDlmZTNmOGYxMGM5NDZlOGVmZjdlOWMyMzM5Y2Q1MTdiYjEzNmNjNTllYWUgIG9w
dXMtMC45LjE0LnRhci5negorMjA2MjIxYWZjNDdiODc0OTY1ODgwMTNiZDQ1MjNlMWU5ZjU1NjMz
NmMwODEzZjQzNzI3NzNmYzUzNmRkNDI5MyAgb3B1cy0wLjkuMS50YXIuZ3oKKzZlODVjMWI1N2Ux
ZDdiN2RmZTI5MjhiZjkyNTg2Yjk2YjczYTkwNjdlMDU0ZWRlNDViZDhlNmQyNGJkMzA1ODIgIG9w
dXMtMC45LjIudGFyLmd6CitkOTE2ZTM0YzE4YTM5NmViN2RmZmM0N2FmNzU0ZjQ0MWFmNTJhMjkw
Yjc2MWUyMGRiOWFlZGI2NTkyOGM2OTllICBvcHVzLTAuOS4zLnRhci5negorNTM4MDEwNjZmYTk3
MzI5NzY4ZTdiODcxZmQxNDk1NzQwMjY5ZWM0NjgwMmUxYzkwNTFhYTdlNzhjNmVkZWU1YiAgb3B1
cy0wLjkuNS50YXIuZ3oKKzNiZmFlYjI1ZjRiNGE2MjVhMGJjOTk0ZDZmYzZmNjc3NmEwNTE5M2Y2
MDA5OWUwYTk5Zjc1MzBjNmIyNTYzMDkgIG9wdXMtMC45LjYudGFyLmd6CisxYjY5NzcyYzMxYzVj
YmFhNDNkMWRmYTViMWM0OTVmYzI5NzEyZThlMGZmNjlkNmY4YWQ0NjQ1OWU1YzY3MTVmICBvcHVz
LTAuOS43LnRhci5negorNGFhMzBkMmUwNjUyZmZiNGE3YTIyY2M4YTI5YzRjZTc4MjY3NjI2ZjU2
MGEyZDkyMTNiMWQyZDRlNjE4Y2YzNiAgb3B1cy0wLjkuOC50YXIuZ3oKKzJmNjIzNTlmMDkxNTFm
YTNiMjQyMDQwZGM5YjRjNWI2YmRhMTU1NTdjNWRhZWE1OWM4NDIwZjFhMmZmMzI4YjcgIG9wdXMt
MC45LjkudGFyLmd6Cis0M2JjZWE1MWFmYTUzMWYzMmE2YTVmZGQ5Y2JhNGJkNDk2OTkzZTI2YTE0
MTIxN2RiM2NjY2NlNmNhYTdjZDc0ICBvcHVzLTEuMC4wLXJjLnRhci5negorOTI1MGZjYzc0NDcy
ZDQ1YzFlMTQ3NDU1NDJlYzljOGQwOTk4MjUzOGFlZmVkNTY5NjI0OTU2MTRiZTNlMGQyZCAgb3B1
cy0xLjAuMC50YXIuZ3oKKzc2YmMwYTMxNTAyYTUxZGFlOWFiNzM3YjRkYjA0M2I5ZWNmY2QwYjU4
NjFmMGJmZGE0MWI2NjJiZDViOTIyMjcgIG9wdXMtMS4wLjEtcmMyLnRhci5negorM2RlOGQ2ODA5
ZGFjMzg5NzFlYmIzMDU1MzJkNGVhNTMyNTE5ZDNiZWQwODk4NWYyNWQ2YzU1N2Y5Y2U1ZThmZiAg
b3B1cy0xLjAuMS1yYzMudGFyLmd6Cis4MDQ0Mzk3YTYzNjVhMDcxMTdiMDhjYmU4Zjk4MThiZjdj
OTM3NDY5MDg4MDZiYTc0YTI5MTcxODdiYmRkYTVmICBvcHVzLTEuMC4xLXJjLnRhci5negorODBm
YTVjM2NhZjJhYzBmZDY4ZjhhMjJjY2UxNTY0ZmM0NmIzNjhjNzczYTE3NTU0ODg3ZDAwNjZmZTE4
NDFlZiAgb3B1cy0xLjAuMS50YXIuZ3oKK2RhNjE1ZWRiZWU1ZDAxOWMxODMzMDcxZDY5YTQ3ODJj
MTlmMTc4Y2Y5Y2ExNDAxMzc1MDM2ZWNlZjI1Y2Q3OGEgIG9wdXMtMS4wLjIudGFyLmd6CisxOTFh
MDg5YzkyZGJjNDAzZGU2OTgwNDYzZGQzNjA0YjY1YmViMTJkMjgzYzYwN2UyNDZjODA3NjM2M2Ni
NDljICBvcHVzLTEuMC4zLnRhci5negorYThkNDBlZmU4N2Y2YzNlNzY3MjUzOTE0NTdkNDYyNzc4
NzhjN2E4MTZhZTE2NDI4NDMyNjE0NjMxMzNmYTVjOCAgb3B1cy0xLjEtYWxwaGEudGFyLmd6Citl
YzE3ODQyODdmMzg1YWVmOTk0YjY0NzM0YWFlY2FlMDQ4NjBlNjFhYTUwZmM2ZWVmNjY0M2ZhN2U0
MGRkMTkzICBvcHVzLTEuMS1iZXRhLnRhci5negorOGFhMTYzNjBmNTlhOTRkM2UzOGYzOGYyOGQy
NDAzOWY3NjYzMTc5NjgyY2JhZTgyYWE0MmYxZGQ5ZTUyZTZlZCAgb3B1cy0xLjEtcmMudGFyLmd6
CitlYmM4N2EwODZkNGZlNjc3YzVlNDJkNTY4ODhiMWZkMjVhZjg1OGU0MTc5ZWFlNGY4NjU2Mjcw
NDEwZGZmYWMzICBvcHVzLTEuMS1yYzIudGFyLmd6CitjYmZkMDljNThjYzEwYTRkM2ZjYjcyN2Fk
NWQ0NmQ3YmI1NDlmODE4NWFjOTIyZWUyOGI0NTgxYjUyYTdiZWU5ICBvcHVzLTEuMS1yYzMudGFy
Lmd6CitiOTcyNzAxNWE1OGFmZmNmM2RiNTI3MzIyYmY4YzRkMmZjZjM5ZjVmNmI4ZjE1ZGJjZWNh
MjAyMDZjYmUxZDk1ICBvcHVzLTEuMS50YXIuZ3oKKzBjNjY4NjM5ZGNkMTZiMTQ3MDlmYzlkYzQ5
ZTY2ODY2MDZmNWEyNTZmMmVhYTFlYmFhMmYzOWE2NmY4NjI2Y2QgIG9wdXMtMS4xLjEtYmV0YS50
YXIuZ3oKKzY2ZjJhNTg3N2M4ODAzZGM5YTVhNDRiNGYzZDBiZGM4ZjA2YmQwNjYzMjQyMjJkMTQ0
ZWIyNTU2MTJiNjgxNTIgIG9wdXMtMS4xLjEtcmMudGFyLmd6Cis5Yjg0ZmY1NmJkNzcyMGQ1NTU0
MTAzYzU1NzY2NGVmYWMyYjhiMThhY2M0YmJjYzIzNGNiODgxYWI5YTMzNzFlICBvcHVzLTEuMS4x
LnRhci5negorMGUyOTAwNzhlMzEyMTFiYWE3YjU4ODZiY2M4YWI2YmMwNDhiOWZjODM4ODI1MzJk
YTRhMWE0NWU1OGU5MDdmZCAgb3B1cy0xLjEuMi50YXIuZ3oKKzU4YjZmZTgwMmU3ZTMwMTgyZTk1
ZDBjZGU4OTBjMGFjZTQwYjZmMTI1Y2ZmYzUwNjM1ZjBhZDJlZWY2OWI2MzMgIG9wdXMtMS4xLjMu
dGFyLmd6Cis5MTIyYjZiMzgwMDgxZGQyNjY1MTg5Zjk3YmZkNzc3ZjA0ZjkyZGMzYWI2Njk4ZWVh
MWRiYjI3YWQ1OWQ4NjkyICBvcHVzLTEuMS40LnRhci5negorZWI4NDk4MWNhMGY0MGEzZTVkNWU1
OGQyZTg1ODJjYjJmZWUwNWEwMjI4MjVhNmRmZTE0ZDE0YjA0ZWI1NjNlNCAgb3B1cy0xLjEuNS50
YXIuZ3oKKzY1NGE5YmViYjczMjY2MjcxYTI4ZWRjZmZmNDMxZTRjZmQ5YmZjZGU3MWY0Mjg0OWEw
Y2RkNzNiZWNlODAzYTcgIG9wdXMtMS4yLWFscGhhLnRhci5negorYzBlOTA1MDcyNTljZjIxY2U3
YjJjODJmYjlhYzU1MzY3ZDg1NDNkYWU5MWNjM2Q0ZDJjNTlhZmQzN2Y0NDAyMyAgb3B1cy0xLjIt
YWxwaGEyLnRhci5negorMjkxZTk3OWE4YTJmYjY3OWVkMzVhNWRmZjVkNzYxYTlkOWE1ZTIyNTg2
ZmQwNzkzNGVkOTQ0NjFlMjYzNmM3YSAgb3B1cy0xLjItYmV0YS50YXIuZ3oKKzg1MzQzZmRhZWQ5
NjUyOWQ5NGMxZTFmM2EyMTBmYTUxMjQwZDA0Y2E2MmZhMDFlOTdlZjAyZjg4MDIwYzJjZTkgIG9w
dXMtMS4yLXJjMS50YXIuZ3oKKzc3ZGI0NWE4N2I1MTU3OGZiYzQ5NTU1ZWYxYjEwOTI2MTc5ODYx
ZDg1NGViMjYxMzIwN2RjNzlkOWVjMGE5YTkgIG9wdXMtMS4yLnRhci5negorY2ZhZmQzMzljY2Q5
YzVlZjhkNmFiMTVkN2UxYTQxMmMwNTRiZjRjYjRlY2JiYmNjNzhjMTJlZjJkZWY3MDczMiAgb3B1
cy0xLjIuMS50YXIuZ3oKKzk0YWM3OGNhNGY3NGM0ZTQzYmM5ZmU0ZWMxYWQwYWEzNmYzOGFiOTBm
NDViMDcyN2M0MGRkMWU5NjA5NmU3NjcgIG9wdXNfdGVzdHZlY3RvcnMtZHJhZnQxMS50YXIuZ3oK
Kzk0YWM3OGNhNGY3NGM0ZTQzYmM5ZmU0ZWMxYWQwYWEzNmYzOGFiOTBmNDViMDcyN2M0MGRkMWU5
NjA5NmU3NjcgIG9wdXNfdGVzdHZlY3RvcnMudGFyLmd6Cis1ZDJiOTk3NTdiY2I2MjhiYWIyNjEx
ZjNlZDI3YWY2ZjM1Mjc2Y2UzYWJjOTZjMGVkNDM5OWQ2YzY0NjNkZGE1ICBvcHVzLXRvb2xzLTAu
MS4yLnRhci5negorMDA4MzE3Mjk3ZDZjZTg0Zjg0OTkyYWJmOGNjOTQ4YTA0OGE0ZmExMzVlMWQx
Y2FmNDI5ZmFmZGU4OTY1YTc5MiAgb3B1cy10b29scy0wLjEuMy50YXIuZ3oKK2RlODA0ODVjNWFm
YTFmZDgzYzBlMTZhMGRkNDg2MDQ3MGM4NzI5OTdhN2RkMGE1OGU5OWIyZWU4YTkzZTUxNjggIG9w
dXMtdG9vbHMtMC4xLjQudGFyLmd6Cis3NjY3OGQwZWI3YTliM2Q3OTNiZDAyNDNmOWNlZDlhYjBl
Y2RhYjI2M2Y1MjMyZWQ5NDBjOGY1Nzk1ZmIwNDA1ICBvcHVzLXRvb2xzLTAuMS41LnRhci5negor
Y2M4NmRiYzJhNGQ3NmRhN2UxZWQ5YWZlZTg1NDQ4YzhmNzk4YzQ2NWE1NDEyMjMzZjE3ODc4MzIy
MGYzYTJjMSAgb3B1cy10b29scy0wLjEuNi50YXIuZ3oKK2UwZjA4ZDMwMTU1NWRmZmM0MTc2MDQy
NjliNWE4NWQyYmQxOTdmMjU5YzdkNmM5NTdmMzcwZmZkMzNkNmQ5Y2QgIG9wdXMtdG9vbHMtMC4x
LjcudGFyLmd6CitlNGUxODg1NzllYTFjNGU0ZDUwNjY0NjBkNGE3MjE0YTdlYWZlMzUzOWU5YTQ0
NjZmZGM5OGFmNDFiYTRhMmY2ICBvcHVzLXRvb2xzLTAuMS44LnRhci5negorYjE4NzNkZDc4Yzdm
YmM5OGNmNjVkNmUxMGNmZGRiNWMyYzAzYjNhZjkzZjkyMjEzOWEyMTA0YmFlZGI0NjQzYSAgb3B1
cy10b29scy0wLjEuOS50YXIuZ3oKK2EyMzU3NTMyZDE5NDcxYjcwNjY2ZTBlMGVjMTdkNTE0MjQ2
ZDhiM2NiMmViMTY4ZjY4YmIwZjZmZDM3MmIyOGMgIG9wdXMtdG9vbHMtMC4xLjEwLnRhci5negor
YmQ2ZDE0ZTg4OTdhMmY4MDA2NWVmMzRhNTE2YzcwZTc0ZjhlMDAwNjBhYmRiYzIzOGU3OWU1Zjk5
YmNhM2U5NiAgbGlib3B1c2VuYy0wLjEudGFyLmd6Cis4MDcxYjk2ODQ3NWMxYTE3ZjU0YjY4NDBk
NmRlOWQ5ZWUyMGY5MzBlODI3YjA0MDFhYmUzYzRjZjRmM2JmMzBhICBvcHVzZmlsZS0wLjEudGFy
Lmd6CitiNGE2NzhiM2I2YzRhZGZiNmFmZjFmNjdlZjY1OGJlY2ZlMTQ2ZWE3YzdmZjIyOGU5OTU0
Mzc2MjE3MTU1N2Y5ICBvcHVzZmlsZS0wLjIudGFyLmd6Cis0MjQ4OTI3ZjJjNGUzMTZlYTViODRm
YjAyYmQxMDBiZmVjOGZhNDYyNGE2OTEwZDc3ZjBhZjdmMGM2Y2I4YmFhICBvcHVzZmlsZS0wLjMu
dGFyLmd6Cis5ODM2ZWExMTcwNmM0NGYzNmRlOTJjNGM5YjEyNDhlMDNhNGM1MjFlN2ZiMmNmZjE4
YTBjYjRmOGIwZTc5MTQwICBvcHVzZmlsZS0wLjQudGFyLmd6CitmMTg3OTA2YjFiMzVmN2YwZDdk
ZTZhNzU5YjRhYWI1MTJhOTI3OWQyM2FkYjM1ZDgwMDllN2UzM2JkNmE5MjJhICBvcHVzZmlsZS0w
LjQuemlwCisyY2U1MmQwMDZhZWVlYzlmMTAyNjBkYmUzMDczYzQ2MzY5NTRhMWFiMTljODJiOGJh
YWZlZmUwMTgwYWE0YTM5ICBvcHVzZmlsZS0wLjUudGFyLmd6CitiOTQwZDYyYmViMTViNTk3NDc2
NDU3NGI5ZjI2NTQ4MWZlNWI2ZWUxNjkwMmZiNzA1NzI3NTQ2Y2FmOTU2MjYxICBvcHVzZmlsZS0w
LjUuemlwCisyNDI4NzE3YjM1NmUxMzlmMThlZDJmZGI1YWQ5OTBiNTY1NGEyMzg5MDdhMDA1ODIw
MGIzOWM0NmE3ZDAzZWE2ICBvcHVzZmlsZS0wLjYudGFyLmd6Cis3NTMzMzkyMjUxOTNkZjYwNTM3
Mjk0NDg4OTAyM2I5YjNjNTM3OGQ2NzJlODc4NGQ2OWZhMjQxY2Q0NjUyNzhjICBvcHVzZmlsZS0w
LjYuemlwCis5ZTJiZWQxM2JjNzI5MDU4NTkxYTBmMWNhYjI1MDVlOGNmZDhlN2FjNDYwYmYxMGE3
OGJjYzNiMTI1ZTdjMzAxICBvcHVzZmlsZS0wLjcudGFyLmd6CiszNDY5NjdkNzk4OWJiODNiMDU5
NDk0ODNiNzZiZDBmNjlhMTJjNTliZDhiNDQ1N2U4NjQ5MDJiNTJiYjBhYzM0ICBvcHVzZmlsZS0w
LjcuemlwCisyYzIzMWVkM2NmYWExYjMxNzNmNTJkNzQwZTViYmQ3N2Q1MWI5ZGZlY2I4NzAxNGI0
MDQ5MTdmYmE0Yjg1NWE0ICBvcHVzZmlsZS0wLjgudGFyLmd6Cis4OWRmZjQzNDJjM2I3ODk1NzRj
YmVhNWM1N2YxMWI5NmQ0ZWJlNGQyOGFiOTAyNDhjMTc4M2VhNTY5YjFlOWUzICBvcHVzZmlsZS0w
LjguemlwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvQTJOTFNGLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvQTJOTFNGLmMKaW5kZXggYjZl
OWU1ZmZjY2FhMDU5OTVkZmRiZmU2MDAxNjY4NjVkODk5MDEzZS4uYjQ4NzY4NmZmOWM2ZDEyOWMw
NjU2ZmIxMDk1ZGU4YTI4OWZjNGRiYSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0EyTkxTRi5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9BMk5MU0YuYwpAQCAtNDAsNyArNDAsNyBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
IAogLyogTnVtYmVyIG9mIGJpbmFyeSBkaXZpc2lvbnMsIHdoZW4gbm90IGluIGxvdyBjb21wbGV4
aXR5IG1vZGUgKi8KICNkZWZpbmUgQklOX0RJVl9TVEVQU19BMk5MU0ZfRklYICAgICAgMyAvKiBt
dXN0IGJlIG5vIGhpZ2hlciB0aGFuIDE2IC0gbG9nMiggTFNGX0NPU19UQUJfU1pfRklYICkgKi8K
LSNkZWZpbmUgTUFYX0lURVJBVElPTlNfQTJOTFNGX0ZJWCAgICAzMAorI2RlZmluZSBNQVhfSVRF
UkFUSU9OU19BMk5MU0ZfRklYICAgIDE2CiAKIC8qIEhlbHBlciBmdW5jdGlvbiBmb3IgQTJOTFNG
KC4uKSAgICAgICAgICAgICAgICAgICAgKi8KIC8qIFRyYW5zZm9ybXMgcG9seW5vbWlhbHMgZnJv
bSBjb3MobipmKSB0byBjb3MoZilebiAgKi8KQEAgLTEzMCw3ICsxMzAsNyBAQCB2b2lkIHNpbGtf
QTJOTFNGKAogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBkICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgRmlsdGVyIG9yZGVyIChtdXN0IGJlIGV2ZW4pICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICkKIHsKLSAgICBvcHVzX2ludCAgICAgIGksIGssIG0sIGRkLCBy
b290X2l4LCBmZnJhYzsKKyAgICBvcHVzX2ludCAgIGksIGssIG0sIGRkLCByb290X2l4LCBmZnJh
YzsKICAgICBvcHVzX2ludDMyIHhsbywgeGhpLCB4bWlkOwogICAgIG9wdXNfaW50MzIgeWxvLCB5
aGksIHltaWQsIHRocjsKICAgICBvcHVzX2ludDMyIG5vbSwgZGVuOwpAQCAtMjM5LDEzICsyMzks
MTMgQEAgdm9pZCBzaWxrX0EyTkxTRigKICAgICAgICAgICAgICAgICAgICAgLyogU2V0IE5MU0Zz
IHRvIHdoaXRlIHNwZWN0cnVtIGFuZCBleGl0ICovCiAgICAgICAgICAgICAgICAgICAgIE5MU0Zb
IDAgXSA9IChvcHVzX2ludDE2KXNpbGtfRElWMzJfMTYoIDEgPDwgMTUsIGQgKyAxICk7CiAgICAg
ICAgICAgICAgICAgICAgIGZvciggayA9IDE7IGsgPCBkOyBrKysgKSB7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICBOTFNGWyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1NNVUxCQiggayArIDEsIE5M
U0ZbIDAgXSApOworICAgICAgICAgICAgICAgICAgICAgICAgTkxTRlsgayBdID0gKG9wdXNfaW50
MTYpc2lsa19BREQxNiggTkxTRlsgay0xIF0sIE5MU0ZbIDAgXSApOwogICAgICAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICB9CiAK
ICAgICAgICAgICAgICAgICAvKiBFcnJvcjogQXBwbHkgcHJvZ3Jlc3NpdmVseSBtb3JlIGJhbmR3
aWR0aCBleHBhbnNpb24gYW5kIHJ1biBhZ2FpbiAqLwotICAgICAgICAgICAgICAgIHNpbGtfYndl
eHBhbmRlcl8zMiggYV9RMTYsIGQsIDY1NTM2IC0gc2lsa19TTVVMQkIoIDEwICsgaSwgaSApICk7
IC8qIDEwX1ExNiA9IDAuMDAwMTUqLworICAgICAgICAgICAgICAgIHNpbGtfYndleHBhbmRlcl8z
MiggYV9RMTYsIGQsIDY1NTM2IC0gc2lsa19MU0hJRlQoIDEsIGkgKSApOwogCiAgICAgICAgICAg
ICAgICAgc2lsa19BMk5MU0ZfaW5pdCggYV9RMTYsIFAsIFEsIGRkICk7CiAgICAgICAgICAgICAg
ICAgcCA9IFA7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFBvaW50ZXIgdG8gcG9seW5v
bWlhbCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0FQSS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0FQSS5oCmluZGV4IDAxMzFhY2Ji
MDhmYjA3YThkZDBkMTU1MDI3NThkZWQ1YTFiYzdmYTYuLjRkOTBmZjlhYTNlY2QyYjE2ZGY0MDIw
YjUxMGM4OGE3MjViMTM2NDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9BUEkuaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvQVBJLmgK
QEAgLTgwLDcgKzgwLDggQEAgb3B1c19pbnQgc2lsa19FbmNvZGUoICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBPICAgIFJldHVybnMgZXJyb3IgY28KICAgICBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgICAgICAgIG5TYW1wbGVzSW4sICAgICAgICAgLyogSSAgICBOdW1iZXIg
b2Ygc2FtcGxlcyBpbiBpbnB1dCB2ZWN0b3IgICAgICAgICAgICAgICAqLwogICAgIGVjX2VuYyAg
ICAgICAgICAgICAgICAgICAgICAgICAgKnBzUmFuZ2VFbmMsICAgICAgICAvKiBJL08gIENvbXBy
ZXNzb3IgZGF0YSBzdHJ1Y3R1cmUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19p
bnQzMiAgICAgICAgICAgICAgICAgICAgICAqbkJ5dGVzT3V0LCAgICAgICAgIC8qIEkvTyAgTnVt
YmVyIG9mIGJ5dGVzIGluIHBheWxvYWQgKGlucHV0OiBNYXggYnl0ZXMpICAgKi8KLSAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIHByZWZpbGxGbGFnICAgICAgICAgLyogSSAgICBG
bGFnIHRvIGluZGljYXRlIHByZWZpbGxpbmcgYnVmZmVycyBubyBjb2RpbmcgICAqLworICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgcHJlZmlsbEZsYWcsICAgICAgICAvKiBJICAg
IEZsYWcgdG8gaW5kaWNhdGUgcHJlZmlsbGluZyBidWZmZXJzIG5vIGNvZGluZyAgICovCisgICAg
aW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpdml0eSAgICAgICAgICAgIC8qIEkg
ICAgRGVjaXNpb24gb2YgT3B1cyB2b2ljZSBhY3Rpdml0eSBkZXRlY3RvciAgICAgICAgKi8KICk7
CiAKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL0NORy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL0NORy5jCmluZGV4IDcwMWIzNmEzOGEzMTA1ZGZhNDhkY2JjNTRl
ODgxZTQ5YmUxOTlmZjYuLmU2ZDliODYxZTk1ZTc0M2YxZDA4NTdjZTQ4YWVkZjNjZWJmYmYxZTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9DTkcuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvQ05HLmMKQEAgLTEzOCwxMSArMTM4LDEx
IEBAIHZvaWQgc2lsa19DTkcoCiAgICAgICAgICAgICBnYWluX1ExNiA9IHNpbGtfTFNISUZUMzIo
IHNpbGtfU1FSVF9BUFBST1goIGdhaW5fUTE2ICksIDggKTsKICAgICAgICAgfQogICAgICAgICBn
YWluX1ExMCA9IHNpbGtfUlNISUZUKCBnYWluX1ExNiwgNiApOwotICAgICAgICAKKwogICAgICAg
ICBzaWxrX0NOR19leGMoIENOR19zaWdfUTE0ICsgTUFYX0xQQ19PUkRFUiwgcHNDTkctPkNOR19l
eGNfYnVmX1ExNCwgbGVuZ3RoLCAmcHNDTkctPnJhbmRfc2VlZCApOwogCiAgICAgICAgIC8qIENv
bnZlcnQgQ05HIE5MU0YgdG8gZmlsdGVyIHJlcHJlc2VudGF0aW9uICovCi0gICAgICAgIHNpbGtf
TkxTRjJBKCBBX1ExMiwgcHNDTkctPkNOR19zbXRoX05MU0ZfUTE1LCBwc0RlYy0+TFBDX29yZGVy
ICk7CisgICAgICAgIHNpbGtfTkxTRjJBKCBBX1ExMiwgcHNDTkctPkNOR19zbXRoX05MU0ZfUTE1
LCBwc0RlYy0+TFBDX29yZGVyLCBwc0RlYy0+YXJjaCApOwogCiAgICAgICAgIC8qIEdlbmVyYXRl
IENORyBzaWduYWwsIGJ5IHN5bnRoZXNpcyBmaWx0ZXJpbmcgKi8KICAgICAgICAgc2lsa19tZW1j
cHkoIENOR19zaWdfUTE0LCBwc0NORy0+Q05HX3N5bnRoX3N0YXRlLCBNQVhfTFBDX09SREVSICog
c2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKQEAgLTE3MSwxMCArMTcxLDEwIEBAIHZvaWQgc2lsa19D
TkcoCiAKICAgICAgICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMgKi8KICAgICAgICAgICAgIENOR19z
aWdfUTE0WyBNQVhfTFBDX09SREVSICsgaSBdID0gc2lsa19BRERfU0FUMzIoIENOR19zaWdfUTE0
WyBNQVhfTFBDX09SREVSICsgaSBdLCBzaWxrX0xTSElGVF9TQVQzMiggTFBDX3ByZWRfUTEwLCA0
ICkgKTsKLSAgICAgICAgICAgIAorCiAgICAgICAgICAgICAvKiBTY2FsZSB3aXRoIEdhaW4gYW5k
IGFkZCB0byBpbnB1dCBzaWduYWwgKi8KICAgICAgICAgICAgIGZyYW1lWyBpIF0gPSAob3B1c19p
bnQxNilzaWxrX0FERF9TQVQxNiggZnJhbWVbIGkgXSwgc2lsa19TQVQxNiggc2lsa19SU0hJRlRf
Uk9VTkQoIHNpbGtfU01VTFdXKCBDTkdfc2lnX1ExNFsgTUFYX0xQQ19PUkRFUiArIGkgXSwgZ2Fp
bl9RMTAgKSwgOCApICkgKTsKLSAgICAgICAgICAgIAorCiAgICAgICAgIH0KICAgICAgICAgc2ls
a19tZW1jcHkoIHBzQ05HLT5DTkdfc3ludGhfc3RhdGUsICZDTkdfc2lnX1ExNFsgbGVuZ3RoIF0s
IE1BWF9MUENfT1JERVIgKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOwogICAgIH0gZWxzZSB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvTFBDX2FuYWx5c2lzX2ZpbHRlci5jIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQQ19hbmFseXNpc19m
aWx0ZXIuYwppbmRleCAyMDkwNjY3M2ZmMTI0NjEwZGYyMDcxY2I3NjVjYmY5YjA5YjMzZjA4Li43
NzE1ZjcwZjhkNjc2Mzc1N2IwZWYxOTRiZTRjZDAxNGZmZDBjMjIzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
TFBDX2FuYWx5c2lzX2ZpbHRlci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENfYW5hbHlzaXNfZmlsdGVyLmMKQEAg
LTM5LDYgKzM5LDEzIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogLyogZmlyc3QgZCBv
dXRwdXQgc2FtcGxlcyBhcmUgc2V0IHRvIHplcm8gICovCiAvKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KIAorLyogT1BUOiBVc2luZyBjZWx0X2ZpcigpIGZvciB0
aGlzIGZ1bmN0aW9uIHNob3VsZCBiZSBmYXN0ZXIsIGJ1dCBpdCBtYXkgY2F1c2UKKyAgIGludGVn
ZXIgb3ZlcmZsb3dzIGluIGludGVybWVkaWF0ZSB2YWx1ZXMgKG5vdCBmaW5hbCByZXN1bHRzKSwg
d2hpY2ggdGhlCisgICBjdXJyZW50IGltcGxlbWVudGF0aW9uIHNpbGVuY2VzIGJ5IGNhc3Rpbmcg
dG8gdW5zaWduZWQuIEVuYWJsaW5nCisgICB0aGlzIHNob3VsZCBiZSBzYWZlIGluIHByZXR0eSBt
dWNoIGFsbCBjYXNlcywgZXZlbiB0aG91Z2ggaXQgaXMgbm90IHRlY2huaWNhbGx5CisgICBDODkt
Y29tcGxpYW50LiAqLworI2RlZmluZSBVU0VfQ0VMVF9GSVIgMAorCiB2b2lkIHNpbGtfTFBDX2Fu
YWx5c2lzX2ZpbHRlcigKICAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKm91dCwgICAg
ICAgICAgICAgICAvKiBPICAgIE91dHB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAg
ICppbiwgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtNDksOCArNTYsNyBAQCB2b2lk
IHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlcigKICkKIHsKICAgICBvcHVzX2ludCAgIGo7Ci0jaWZk
ZWYgRklYRURfUE9JTlQKLSAgICBvcHVzX2ludDE2IG1lbVtTSUxLX01BWF9PUkRFUl9MUENdOwor
I2lmIGRlZmluZWQoRklYRURfUE9JTlQpICYmIFVTRV9DRUxUX0ZJUgogICAgIG9wdXNfaW50MTYg
bnVtW1NJTEtfTUFYX09SREVSX0xQQ107CiAjZWxzZQogICAgIGludCBpeDsKQEAgLTYyLDE1ICs2
OCwxMiBAQCB2b2lkIHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlcigKICAgICBzaWxrX2Fzc2VydCgg
KGQgJiAxKSA9PSAwICk7CiAgICAgc2lsa19hc3NlcnQoIGQgPD0gbGVuICk7CiAKLSNpZmRlZiBG
SVhFRF9QT0lOVAorI2lmIGRlZmluZWQoRklYRURfUE9JTlQpICYmIFVTRV9DRUxUX0ZJUgogICAg
IHNpbGtfYXNzZXJ0KCBkIDw9IFNJTEtfTUFYX09SREVSX0xQQyApOwogICAgIGZvciAoIGogPSAw
OyBqIDwgZDsgaisrICkgewogICAgICAgICBudW1bIGogXSA9IC1CWyBqIF07CiAgICAgfQotICAg
IGZvciAoaj0wO2o8ZDtqKyspIHsKLSAgICAgICAgbWVtWyBqIF0gPSBpblsgZCAtIGogLSAxIF07
Ci0gICAgfQotICAgIGNlbHRfZmlyKCBpbiArIGQsIG51bSwgb3V0ICsgZCwgbGVuIC0gZCwgZCwg
bWVtLCBhcmNoICk7CisgICAgY2VsdF9maXIoIGluICsgZCwgbnVtLCBvdXQgKyBkLCBsZW4gLSBk
LCBkLCBhcmNoICk7CiAgICAgZm9yICggaiA9IDA7IGogPCBkOyBqKysgKSB7CiAgICAgICAgIG91
dFsgaiBdID0gMDsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBDX2ZpdC5jIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQQ19m
aXQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5jZGVhNGYzYWJjYWY3ZmNkMTQxYTRiODZlMmY5MjRiNjc5ZWZmZDk0
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL0xQQ19maXQuYwpAQCAtMCwwICsxLDgxIEBACisvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioKK0NvcHlyaWdodCAoYykgMjAxMywgS29lbiBWb3MuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworYXJlIG1ldDoKKy0gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAor
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKy0g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKK25vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKK2RvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCistIE5laXRoZXIgdGhlIG5hbWUgb2Yg
SW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCituYW1lcyBvZiBz
cGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQor
cHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
ciB3cml0dGVuCitwZXJtaXNzaW9uLgorVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCitBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCitJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFCitMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCitDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCitJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
K0FSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFCitQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLworCisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2Vu
ZGlmCisKKyNpbmNsdWRlICJTaWdQcm9jX0ZJWC5oIgorCisvKiBDb252ZXJ0IGludDMyIGNvZWZm
aWNpZW50cyB0byBpbnQxNiBjb2VmcyBhbmQgbWFrZSBzdXJlIHRoZXJlJ3Mgbm8gd3JhcC1hcm91
bmQgKi8KK3ZvaWQgc2lsa19MUENfZml0KAorICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAg
ICAqYV9RT1VULCAgICAgICAgICAgIC8qIE8gICAgT3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAg
ICAgICAgICAgICAgICAqYV9RSU4sICAgICAgICAgICAgIC8qIEkvTyAgSW5wdXQgc2lnbmFsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgICAgUU9VVCwgICAgICAgICAgICAgICAvKiBJICAgIElucHV0
IFEgZG9tYWluICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIFFJTiwgICAgICAgICAgICAgICAgLyog
SSAgICBJbnB1dCBRIGRvbWFpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBkICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgRmlsdGVyIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyAgICBvcHVzX2ludCAgICBpLCBrLCBpZHggPSAw
OworICAgIG9wdXNfaW50MzIgICAgbWF4YWJzLCBhYnN2YWwsIGNoaXJwX1ExNjsKKworICAgIC8q
IExpbWl0IHRoZSBtYXhpbXVtIGFic29sdXRlIHZhbHVlIG9mIHRoZSBwcmVkaWN0aW9uIGNvZWZm
aWNpZW50cywgc28gdGhhdCB0aGV5J2xsIGZpdCBpbiBpbnQxNiAqLworICAgIGZvciggaSA9IDA7
IGkgPCAxMDsgaSsrICkgeworICAgICAgICAvKiBGaW5kIG1heGltdW0gYWJzb2x1dGUgdmFsdWUg
YW5kIGl0cyBpbmRleCAqLworICAgICAgICBtYXhhYnMgPSAwOworICAgICAgICBmb3IoIGsgPSAw
OyBrIDwgZDsgaysrICkgeworICAgICAgICAgICAgYWJzdmFsID0gc2lsa19hYnMoIGFfUUlOW2td
ICk7CisgICAgICAgICAgICBpZiggYWJzdmFsID4gbWF4YWJzICkgeworICAgICAgICAgICAgICAg
IG1heGFicyA9IGFic3ZhbDsKKyAgICAgICAgICAgICAgICBpZHggICAgPSBrOworICAgICAgICAg
ICAgfQorICAgICAgICB9CisgICAgICAgIG1heGFicyA9IHNpbGtfUlNISUZUX1JPVU5EKCBtYXhh
YnMsIFFJTiAtIFFPVVQgKTsKKworICAgICAgICBpZiggbWF4YWJzID4gc2lsa19pbnQxNl9NQVgg
KSB7CisgICAgICAgICAgICAvKiBSZWR1Y2UgbWFnbml0dWRlIG9mIHByZWRpY3Rpb24gY29lZmZp
Y2llbnRzICovCisgICAgICAgICAgICBtYXhhYnMgPSBzaWxrX21pbiggbWF4YWJzLCAxNjM4Mzgg
KTsgIC8qICggc2lsa19pbnQzMl9NQVggPj4gMTQgKSArIHNpbGtfaW50MTZfTUFYID0gMTYzODM4
ICovCisgICAgICAgICAgICBjaGlycF9RMTYgPSBTSUxLX0ZJWF9DT05TVCggMC45OTksIDE2ICkg
LSBzaWxrX0RJVjMyKCBzaWxrX0xTSElGVCggbWF4YWJzIC0gc2lsa19pbnQxNl9NQVgsIDE0ICks
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2lsa19SU0hJRlQzMigg
c2lsa19NVUwoIG1heGFicywgaWR4ICsgMSksIDIgKSApOworICAgICAgICAgICAgc2lsa19id2V4
cGFuZGVyXzMyKCBhX1FJTiwgZCwgY2hpcnBfUTE2ICk7CisgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlmKCBpID09IDEwICkgewor
ICAgICAgICAvKiBSZWFjaGVkIHRoZSBsYXN0IGl0ZXJhdGlvbiwgY2xpcCB0aGUgY29lZmZpY2ll
bnRzICovCisgICAgICAgIGZvciggayA9IDA7IGsgPCBkOyBrKysgKSB7CisgICAgICAgICAgICBh
X1FPVVRbIGsgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKCBh
X1FJTlsgayBdLCBRSU4gLSBRT1VUICkgKTsKKyAgICAgICAgICAgIGFfUUlOWyBrIF0gPSBzaWxr
X0xTSElGVCggKG9wdXNfaW50MzIpYV9RT1VUWyBrIF0sIFFJTiAtIFFPVVQgKTsKKyAgICAgICAg
fQorICAgIH0gZWxzZSB7CisgICAgICAgIGZvciggayA9IDA7IGsgPCBkOyBrKysgKSB7CisgICAg
ICAgICAgICBhX1FPVVRbIGsgXSA9IChvcHVzX2ludDE2KXNpbGtfUlNISUZUX1JPVU5EKCBhX1FJ
TlsgayBdLCBRSU4gLSBRT1VUICk7CisgICAgICAgIH0KKyAgICB9Cit9CmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvTFBDX2ludl9wcmVkX2dhaW4uYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENfaW52X3ByZWRfZ2Fpbi5jCmluZGV4IDRh
Zjg5YWE1ZmFkMzI0Nzk5NjIwZTY0YzNmYTIyZTNlYTZiZDk0MDAuLmEzNzQ2YTZlZjlmMzE4NzQ2
OGNjZDY5NDQ4MzdkOGMwMmJiYWRkMTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUENfaW52X3ByZWRfZ2Fp
bi5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9MUENfaW52X3ByZWRfZ2Fpbi5jCkBAIC0zMCw2ICszMCw3IEBAIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2VuZGlmCiAKICNpbmNsdWRlICJTaWdQcm9jX0ZJWC5o
IgorI2luY2x1ZGUgImRlZmluZS5oIgogCiAjZGVmaW5lIFFBICAgICAgICAgICAgICAgICAgICAg
ICAgICAyNAogI2RlZmluZSBBX0xJTUlUICAgICAgICAgICAgICAgICAgICAgU0lMS19GSVhfQ09O
U1QoIDAuOTk5NzUsIFFBICkKQEAgLTM4LDExNyArMzksMTAzIEBAIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogCiAvKiBDb21wdXRlIGludmVyc2Ugb2YgTFBDIHByZWRpY3Rpb24gZ2Fpbiwg
YW5kICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogLyogdGVzdCBpZiBMUEMgY29lZmZpY2ll
bnRzIGFyZSBzdGFibGUgKGFsbCBwb2xlcyB3aXRoaW4gdW5pdCBjaXJjbGUpICAgKi8KLXN0YXRp
YyBvcHVzX2ludDMyIExQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RQSggICAgICAgICAgICAgICAgIC8q
IE8gICBSZXR1cm5zIGludmVyc2UgcHJlZGljdGlvbiBnYWluIGluIGVuZXJneSBkb21haW4sIFEz
MCAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgIEFfUUFbIDIgXVsgU0lMS19NQVhfT1JE
RVJfTFBDIF0sICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRzICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCitzdGF0aWMgb3B1c19pbnQzMiBMUENfaW52ZXJzZV9wcmVk
X2dhaW5fUUFfYyggICAgICAgICAgICAgICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rp
b24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAg
ICAgICBBX1FBWyBTSUxLX01BWF9PUkRFUl9MUEMgXSwgICAgICAgIC8qIEkgICBQcmVkaWN0aW9u
IGNvZWZmaWNpZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgIFByZWRpY3Rpb24gb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiApCiB7CiAgICAgb3B1c19pbnQgICBrLCBuLCBtdWx0MlE7Ci0gICAgb3B1c19pbnQz
MiBpbnZHYWluX1EzMCwgcmNfUTMxLCByY19tdWx0MV9RMzAsIHJjX211bHQyLCB0bXBfUUE7Ci0g
ICAgb3B1c19pbnQzMiAqQW9sZF9RQSwgKkFuZXdfUUE7CisgICAgb3B1c19pbnQzMiBpbnZHYWlu
X1EzMCwgcmNfUTMxLCByY19tdWx0MV9RMzAsIHJjX211bHQyLCB0bXAxLCB0bXAyOwogCi0gICAg
QW5ld19RQSA9IEFfUUFbIG9yZGVyICYgMSBdOwotCi0gICAgaW52R2Fpbl9RMzAgPSAob3B1c19p
bnQzMikxIDw8IDMwOworICAgIGludkdhaW5fUTMwID0gU0lMS19GSVhfQ09OU1QoIDEsIDMwICk7
CiAgICAgZm9yKCBrID0gb3JkZXIgLSAxOyBrID4gMDsgay0tICkgewogICAgICAgICAvKiBDaGVj
ayBmb3Igc3RhYmlsaXR5ICovCi0gICAgICAgIGlmKCAoIEFuZXdfUUFbIGsgXSA+IEFfTElNSVQg
KSB8fCAoIEFuZXdfUUFbIGsgXSA8IC1BX0xJTUlUICkgKSB7CisgICAgICAgIGlmKCAoIEFfUUFb
IGsgXSA+IEFfTElNSVQgKSB8fCAoIEFfUUFbIGsgXSA8IC1BX0xJTUlUICkgKSB7CiAgICAgICAg
ICAgICByZXR1cm4gMDsKICAgICAgICAgfQogCiAgICAgICAgIC8qIFNldCBSQyBlcXVhbCB0byBu
ZWdhdGVkIEFSIGNvZWYgKi8KLSAgICAgICAgcmNfUTMxID0gLXNpbGtfTFNISUZUKCBBbmV3X1FB
WyBrIF0sIDMxIC0gUUEgKTsKKyAgICAgICAgcmNfUTMxID0gLXNpbGtfTFNISUZUKCBBX1FBWyBr
IF0sIDMxIC0gUUEgKTsKIAogICAgICAgICAvKiByY19tdWx0MV9RMzAgcmFuZ2U6IFsgMSA6IDJe
MzAgXSAqLwotICAgICAgICByY19tdWx0MV9RMzAgPSAoIChvcHVzX2ludDMyKTEgPDwgMzAgKSAt
IHNpbGtfU01NVUwoIHJjX1EzMSwgcmNfUTMxICk7CisgICAgICAgIHJjX211bHQxX1EzMCA9IHNp
bGtfU1VCMzIoIFNJTEtfRklYX0NPTlNUKCAxLCAzMCApLCBzaWxrX1NNTVVMKCByY19RMzEsIHJj
X1EzMSApICk7CiAgICAgICAgIHNpbGtfYXNzZXJ0KCByY19tdWx0MV9RMzAgPiAoIDEgPDwgMTUg
KSApOyAgICAgICAgICAgICAgICAgICAvKiByZWR1Y2UgQV9MSU1JVCBpZiBmYWlscyAqLwogICAg
ICAgICBzaWxrX2Fzc2VydCggcmNfbXVsdDFfUTMwIDw9ICggMSA8PCAzMCApICk7CiAKLSAgICAg
ICAgLyogcmNfbXVsdDIgcmFuZ2U6IFsgMl4zMCA6IHNpbGtfaW50MzJfTUFYIF0gKi8KLSAgICAg
ICAgbXVsdDJRID0gMzIgLSBzaWxrX0NMWjMyKCBzaWxrX2FicyggcmNfbXVsdDFfUTMwICkgKTsK
LSAgICAgICAgcmNfbXVsdDIgPSBzaWxrX0lOVkVSU0UzMl92YXJRKCByY19tdWx0MV9RMzAsIG11
bHQyUSArIDMwICk7Ci0KICAgICAgICAgLyogVXBkYXRlIGludmVyc2UgZ2FpbiAqLwogICAgICAg
ICAvKiBpbnZHYWluX1EzMCByYW5nZTogWyAwIDogMl4zMCBdICovCiAgICAgICAgIGludkdhaW5f
UTMwID0gc2lsa19MU0hJRlQoIHNpbGtfU01NVUwoIGludkdhaW5fUTMwLCByY19tdWx0MV9RMzAg
KSwgMiApOwogICAgICAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPj0gMCAgICAgICAgICAg
KTsKICAgICAgICAgc2lsa19hc3NlcnQoIGludkdhaW5fUTMwIDw9ICggMSA8PCAzMCApICk7Cisg
ICAgICAgIGlmKCBpbnZHYWluX1EzMCA8IFNJTEtfRklYX0NPTlNUKCAxLjBmIC8gTUFYX1BSRURJ
Q1RJT05fUE9XRVJfR0FJTiwgMzAgKSApIHsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAg
ICB9CiAKLSAgICAgICAgLyogU3dhcCBwb2ludGVycyAqLwotICAgICAgICBBb2xkX1FBID0gQW5l
d19RQTsKLSAgICAgICAgQW5ld19RQSA9IEFfUUFbIGsgJiAxIF07CisgICAgICAgIC8qIHJjX211
bHQyIHJhbmdlOiBbIDJeMzAgOiBzaWxrX2ludDMyX01BWCBdICovCisgICAgICAgIG11bHQyUSA9
IDMyIC0gc2lsa19DTFozMiggc2lsa19hYnMoIHJjX211bHQxX1EzMCApICk7CisgICAgICAgIHJj
X211bHQyID0gc2lsa19JTlZFUlNFMzJfdmFyUSggcmNfbXVsdDFfUTMwLCBtdWx0MlEgKyAzMCAp
OwogCiAgICAgICAgIC8qIFVwZGF0ZSBBUiBjb2VmZmljaWVudCAqLwotICAgICAgICBmb3IoIG4g
PSAwOyBuIDwgazsgbisrICkgewotICAgICAgICAgICAgdG1wX1FBID0gQW9sZF9RQVsgbiBdIC0g
TVVMMzJfRlJBQ19RKCBBb2xkX1FBWyBrIC0gbiAtIDEgXSwgcmNfUTMxLCAzMSApOwotICAgICAg
ICAgICAgQW5ld19RQVsgbiBdID0gTVVMMzJfRlJBQ19RKCB0bXBfUUEsIHJjX211bHQyICwgbXVs
dDJRICk7CisgICAgICAgIGZvciggbiA9IDA7IG4gPCAoayArIDEpID4+IDE7IG4rKyApIHsKKyAg
ICAgICAgICAgIG9wdXNfaW50NjQgdG1wNjQ7CisgICAgICAgICAgICB0bXAxID0gQV9RQVsgbiBd
OworICAgICAgICAgICAgdG1wMiA9IEFfUUFbIGsgLSBuIC0gMSBdOworICAgICAgICAgICAgdG1w
NjQgPSBzaWxrX1JTSElGVF9ST1VORDY0KCBzaWxrX1NNVUxMKCBzaWxrX1NVQl9TQVQzMih0bXAx
LAorICAgICAgICAgICAgICAgICAgTVVMMzJfRlJBQ19RKCB0bXAyLCByY19RMzEsIDMxICkgKSwg
cmNfbXVsdDIgKSwgbXVsdDJRKTsKKyAgICAgICAgICAgIGlmKCB0bXA2NCA+IHNpbGtfaW50MzJf
TUFYIHx8IHRtcDY0IDwgc2lsa19pbnQzMl9NSU4gKSB7CisgICAgICAgICAgICAgICByZXR1cm4g
MDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIEFfUUFbIG4gXSA9ICggb3B1c19pbnQzMiAp
dG1wNjQ7CisgICAgICAgICAgICB0bXA2NCA9IHNpbGtfUlNISUZUX1JPVU5ENjQoIHNpbGtfU01V
TEwoIHNpbGtfU1VCX1NBVDMyKHRtcDIsCisgICAgICAgICAgICAgICAgICBNVUwzMl9GUkFDX1Eo
IHRtcDEsIHJjX1EzMSwgMzEgKSApLCByY19tdWx0MiksIG11bHQyUSk7CisgICAgICAgICAgICBp
ZiggdG1wNjQgPiBzaWxrX2ludDMyX01BWCB8fCB0bXA2NCA8IHNpbGtfaW50MzJfTUlOICkgewor
ICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBBX1FB
WyBrIC0gbiAtIDEgXSA9ICggb3B1c19pbnQzMiApdG1wNjQ7CiAgICAgICAgIH0KICAgICB9CiAK
ICAgICAvKiBDaGVjayBmb3Igc3RhYmlsaXR5ICovCi0gICAgaWYoICggQW5ld19RQVsgMCBdID4g
QV9MSU1JVCApIHx8ICggQW5ld19RQVsgMCBdIDwgLUFfTElNSVQgKSApIHsKKyAgICBpZiggKCBB
X1FBWyBrIF0gPiBBX0xJTUlUICkgfHwgKCBBX1FBWyBrIF0gPCAtQV9MSU1JVCApICkgewogICAg
ICAgICByZXR1cm4gMDsKICAgICB9CiAKICAgICAvKiBTZXQgUkMgZXF1YWwgdG8gbmVnYXRlZCBB
UiBjb2VmICovCi0gICAgcmNfUTMxID0gLXNpbGtfTFNISUZUKCBBbmV3X1FBWyAwIF0sIDMxIC0g
UUEgKTsKKyAgICByY19RMzEgPSAtc2lsa19MU0hJRlQoIEFfUUFbIDAgXSwgMzEgLSBRQSApOwog
CiAgICAgLyogUmFuZ2U6IFsgMSA6IDJeMzAgXSAqLwotICAgIHJjX211bHQxX1EzMCA9ICggKG9w
dXNfaW50MzIpMSA8PCAzMCApIC0gc2lsa19TTU1VTCggcmNfUTMxLCByY19RMzEgKTsKKyAgICBy
Y19tdWx0MV9RMzAgPSBzaWxrX1NVQjMyKCBTSUxLX0ZJWF9DT05TVCggMSwgMzAgKSwgc2lsa19T
TU1VTCggcmNfUTMxLCByY19RMzEgKSApOwogCiAgICAgLyogVXBkYXRlIGludmVyc2UgZ2FpbiAq
LwogICAgIC8qIFJhbmdlOiBbIDAgOiAyXjMwIF0gKi8KICAgICBpbnZHYWluX1EzMCA9IHNpbGtf
TFNISUZUKCBzaWxrX1NNTVVMKCBpbnZHYWluX1EzMCwgcmNfbXVsdDFfUTMwICksIDIgKTsKLSAg
ICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPj0gMCAgICAgKTsKLSAgICBzaWxrX2Fzc2VydCgg
aW52R2Fpbl9RMzAgPD0gMTw8MzAgKTsKKyAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPj0g
MCAgICAgICAgICAgKTsKKyAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPD0gKCAxIDw8IDMw
ICkgKTsKKyAgICBpZiggaW52R2Fpbl9RMzAgPCBTSUxLX0ZJWF9DT05TVCggMS4wZiAvIE1BWF9Q
UkVESUNUSU9OX1BPV0VSX0dBSU4sIDMwICkgKSB7CisgICAgICAgIHJldHVybiAwOworICAgIH0K
IAogICAgIHJldHVybiBpbnZHYWluX1EzMDsKIH0KIAogLyogRm9yIGlucHV0IGluIFExMiBkb21h
aW4gKi8KLW9wdXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4oICAgICAgICAgICAg
ICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWlu
LCBRMzAgICAgICAgICovCitvcHVzX2ludDMyIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2Mo
ICAgICAgICAgICAgLyogTyAgIFJldHVybnMgaW52ZXJzZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5l
cmd5IGRvbWFpbiwgUTMwICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAg
ICAqQV9RMTIsICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIGNvZWZmaWNpZW50cywgUTEy
IFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgUHJlZGljdGlvbiBvcmRlciAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7CiAgICAg
b3B1c19pbnQgICBrOwotICAgIG9wdXNfaW50MzIgQXRtcF9RQVsgMiBdWyBTSUxLX01BWF9PUkRF
Ul9MUEMgXTsKLSAgICBvcHVzX2ludDMyICpBbmV3X1FBOworICAgIG9wdXNfaW50MzIgQXRtcF9R
QVsgU0lMS19NQVhfT1JERVJfTFBDIF07CiAgICAgb3B1c19pbnQzMiBEQ19yZXNwID0gMDsKIAot
ICAgIEFuZXdfUUEgPSBBdG1wX1FBWyBvcmRlciAmIDEgXTsKLQogICAgIC8qIEluY3JlYXNlIFEg
ZG9tYWluIG9mIHRoZSBBUiBjb2VmZmljaWVudHMgKi8KICAgICBmb3IoIGsgPSAwOyBrIDwgb3Jk
ZXI7IGsrKyApIHsKICAgICAgICAgRENfcmVzcCArPSAob3B1c19pbnQzMilBX1ExMlsgayBdOwot
ICAgICAgICBBbmV3X1FBWyBrIF0gPSBzaWxrX0xTSElGVDMyKCAob3B1c19pbnQzMilBX1ExMlsg
ayBdLCBRQSAtIDEyICk7CisgICAgICAgIEF0bXBfUUFbIGsgXSA9IHNpbGtfTFNISUZUMzIoIChv
cHVzX2ludDMyKUFfUTEyWyBrIF0sIFFBIC0gMTIgKTsKICAgICB9CiAgICAgLyogSWYgdGhlIERD
IGlzIHVuc3RhYmxlLCB3ZSBkb24ndCBldmVuIG5lZWQgdG8gZG8gdGhlIGZ1bGwgY2FsY3VsYXRp
b25zICovCiAgICAgaWYoIERDX3Jlc3AgPj0gNDA5NiApIHsKICAgICAgICAgcmV0dXJuIDA7CiAg
ICAgfQotICAgIHJldHVybiBMUENfaW52ZXJzZV9wcmVkX2dhaW5fUUEoIEF0bXBfUUEsIG9yZGVy
ICk7CisgICAgcmV0dXJuIExQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RQV9jKCBBdG1wX1FBLCBvcmRl
ciApOwogfQotCi0jaWZkZWYgRklYRURfUE9JTlQKLQotLyogRm9yIGlucHV0IGluIFEyNCBkb21h
aW4gKi8KLW9wdXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fUTI0KCAgICAgICAg
ICAvKiBPICAgIFJldHVybnMgaW52ZXJzZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFp
biwgUTMwICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpBX1EyNCwg
ICAgICAgICAgICAgLyogSSAgICBQcmVkaWN0aW9uIGNvZWZmaWNpZW50cyBbb3JkZXJdICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBvcmRlciAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZGljdGlvbiBvcmRlciAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSkKLXsKLSAgICBvcHVzX2ludCAg
IGs7Ci0gICAgb3B1c19pbnQzMiBBdG1wX1FBWyAyIF1bIFNJTEtfTUFYX09SREVSX0xQQyBdOwot
ICAgIG9wdXNfaW50MzIgKkFuZXdfUUE7Ci0KLSAgICBBbmV3X1FBID0gQXRtcF9RQVsgb3JkZXIg
JiAxIF07Ci0KLSAgICAvKiBJbmNyZWFzZSBRIGRvbWFpbiBvZiB0aGUgQVIgY29lZmZpY2llbnRz
ICovCi0gICAgZm9yKCBrID0gMDsgayA8IG9yZGVyOyBrKysgKSB7Ci0gICAgICAgIEFuZXdfUUFb
IGsgXSA9IHNpbGtfUlNISUZUMzIoIEFfUTI0WyBrIF0sIDI0IC0gUUEgKTsKLSAgICB9Ci0KLSAg
ICByZXR1cm4gTFBDX2ludmVyc2VfcHJlZF9nYWluX1FBKCBBdG1wX1FBLCBvcmRlciApOwotfQot
I2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBfdmFyaWFibGVfY3V0b2ZmLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTFBfdmFy
aWFibGVfY3V0b2ZmLmMKaW5kZXggZjYzOWUxZjg5OWE5YzIzZTdlNTQyMDU1Mjg3YzkzZTk5ZjNi
ODc3NC4uNzkxMTJhZDM1NGExNTdhZTY4YmVkYTRkMzU1ZjBmMTE2ZjJiNmY4YSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL0xQX3ZhcmlhYmxlX2N1dG9mZi5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9MUF92YXJpYWJsZV9jdXRvZmYu
YwpAQCAtMTMwLDYgKzEzMCw2IEBAIHZvaWQgc2lsa19MUF92YXJpYWJsZV9jdXRvZmYoCiAKICAg
ICAgICAgLyogQVJNQSBsb3ctcGFzcyBmaWx0ZXJpbmcgKi8KICAgICAgICAgc2lsa19hc3NlcnQo
IFRSQU5TSVRJT05fTkIgPT0gMyAmJiBUUkFOU0lUSU9OX05BID09IDIgKTsKLSAgICAgICAgc2ls
a19iaXF1YWRfYWx0KCBmcmFtZSwgQl9RMjgsIEFfUTI4LCBwc0xQLT5Jbl9MUF9TdGF0ZSwgZnJh
bWUsIGZyYW1lX2xlbmd0aCwgMSk7CisgICAgICAgIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUxKCBm
cmFtZSwgQl9RMjgsIEFfUTI4LCBwc0xQLT5Jbl9MUF9TdGF0ZSwgZnJhbWUsIGZyYW1lX2xlbmd0
aCk7CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL01hY3JvQ291bnQuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9NYWNyb0Nv
dW50LmgKaW5kZXggODM0ODE3ZDA1OGI5ZTllNGI4ZTdjMjQ0YTljZTczNTI3OGNmMzU0NC4uNzgx
MDBmZmVkZWIyOTA2MTgwOTMyNzMwOTU5OTg2M2E0ZGM0YWY0OCAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL01h
Y3JvQ291bnQuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvTWFjcm9Db3VudC5oCkBAIC0zMTksMTQgKzMxOSw2IEBAIHN0
YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMyIHNpbGtfQUREX1BPU19TQVQzMihvcHVzX2ludDY0
IGEsIG9wdXNfaW50NjQgYil7CiAgICAgcmV0dXJuKHRtcCk7CiB9CiAKLSN1bmRlZiBzaWxrX0FE
RF9QT1NfU0FUNjQKLXN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDY0IHNpbGtfQUREX1BPU19T
QVQ2NChvcHVzX2ludDY0IGEsIG9wdXNfaW50NjQgYil7Ci0gICAgb3B1c19pbnQ2NCB0bXA7Ci0g
ICAgb3BzX2NvdW50ICs9IDE7Ci0gICAgdG1wID0gKCgoKGEpKyhiKSkgJiAweDgwMDAwMDAwMDAw
MDAwMDBMTCkgPyBzaWxrX2ludDY0X01BWCA6ICgoYSkrKGIpKSk7Ci0gICAgcmV0dXJuKHRtcCk7
Ci19Ci0KICN1bmRlZiAgICBzaWxrX0xTSElGVDgKIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2lu
dDggc2lsa19MU0hJRlQ4KG9wdXNfaW50OCBhLCBvcHVzX2ludDMyIHNoaWZ0KXsKICAgICBvcHVz
X2ludDggcmV0OwpAQCAtNjk5LDcgKzY5MSw3IEBAIHJldHVybihyZXQpOwogCiAKICN1bmRlZiBz
aWxrX0xJTUlUXzMyCi1zdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQgc2lsa19MSU1JVF8zMihv
cHVzX2ludDMyIGEsIG9wdXNfaW50MzIgbGltaXQxLCBvcHVzX2ludDMyIGxpbWl0MikKK3N0YXRp
YyBPUFVTX0lOTElORSBvcHVzX2ludDMyIHNpbGtfTElNSVRfMzIob3B1c19pbnQzMiBhLCBvcHVz
X2ludDMyIGxpbWl0MSwgb3B1c19pbnQzMiBsaW1pdDIpCiB7CiAgICAgb3B1c19pbnQzMiByZXQ7
CiAgICAgb3BzX2NvdW50ICs9IDY7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTWFjcm9EZWJ1Zy5oIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L01hY3JvRGVidWcuaAppbmRleCAzNWFlZGM1YzVmYTY0NjcyMmU2ODc5ZWU1MWM3OGYzMjQ0OTFl
ZDg0Li44ZGQ0Y2UyZWUyNzVhNmE2NGY0YjFlZGU1MjZmYThiNDI4ZjYxMjJiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvTWFjcm9EZWJ1Zy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9NYWNyb0RlYnVnLmgKQEAgLTUzOSw4ICs1Mzks
NyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX0RJVjMyXzE2XyhvcHVzX2lu
dDMyIGEzMiwgb3B1c19pbnQzMiBiMzIsIGNoYQogICAgbm8gY2hlY2tpbmcgbmVlZGVkIGZvciBz
aWxrX1BPU19TQVQzMgogICAgbm8gY2hlY2tpbmcgbmVlZGVkIGZvciBzaWxrX0FERF9QT1NfU0FU
OAogICAgbm8gY2hlY2tpbmcgbmVlZGVkIGZvciBzaWxrX0FERF9QT1NfU0FUMTYKLSAgIG5vIGNo
ZWNraW5nIG5lZWRlZCBmb3Igc2lsa19BRERfUE9TX1NBVDMyCi0gICBubyBjaGVja2luZyBuZWVk
ZWQgZm9yIHNpbGtfQUREX1BPU19TQVQ2NCAqLworICAgbm8gY2hlY2tpbmcgbmVlZGVkIGZvciBz
aWxrX0FERF9QT1NfU0FUMzIgKi8KIAogI3VuZGVmIHNpbGtfTFNISUZUOAogI2RlZmluZSBzaWxr
X0xTSElGVDgoYSxiKSBzaWxrX0xTSElGVDhfKChhKSwgKGIpLCBfX0ZJTEVfXywgX19MSU5FX18p
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvTkxTRjJBLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRjJBLmMKaW5kZXggYjFjNTU5ZWE2
ODIxM2UwNmQzOWRlNzljOTc3ZTg2ZjU3M2JkNTFjOC4uMTE2YjQ2NWIxZGI4YzY3ODE3N2FkZWRi
YzZkMjVmZjllZDM4NzUxMCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0YyQS5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNG
MkEuYwpAQCAtNjYsNyArNjYsOCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX05MU0Yy
QV9maW5kX3BvbHkoCiB2b2lkIHNpbGtfTkxTRjJBKAogICAgIG9wdXNfaW50MTYgICAgICAgICAg
ICAgICAgICAqYV9RMTIsICAgICAgICAgICAgIC8qIE8gICAgbW9uaWMgd2hpdGVuaW5nIGZpbHRl
ciBjb2VmZmljaWVudHMgaW4gUTEyLCAgWyBkIF0gICAgICAgICAgKi8KICAgICBjb25zdCBvcHVz
X2ludDE2ICAgICAgICAgICAgKk5MU0YsICAgICAgICAgICAgICAvKiBJICAgIG5vcm1hbGl6ZWQg
bGluZSBzcGVjdHJhbCBmcmVxdWVuY2llcyBpbiBRMTUsIFsgZCBdICAgICAgICAgICovCi0gICAg
Y29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgLyogSSAgICBm
aWx0ZXIgb3JkZXIgKHNob3VsZCBiZSBldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBkLCAgICAgICAgICAgICAgICAg
IC8qIEkgICAgZmlsdGVyIG9yZGVyIChzaG91bGQgYmUgZXZlbikgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAg
ICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7CiAgICAgLyogVGhpcyBvcmRlcmluZyB3YXMg
Zm91bmQgdG8gbWF4aW1pemUgcXVhbGl0eS4gSXQgaW1wcm92ZXMgbnVtZXJpY2FsIGFjY3VyYWN5
IG9mCkBAIC04MywxNSArODQsMTQgQEAgdm9pZCBzaWxrX05MU0YyQSgKICAgICBvcHVzX2ludDMy
IFBbIFNJTEtfTUFYX09SREVSX0xQQyAvIDIgKyAxIF0sIFFbIFNJTEtfTUFYX09SREVSX0xQQyAv
IDIgKyAxIF07CiAgICAgb3B1c19pbnQzMiBQdG1wLCBRdG1wLCBmX2ludCwgZl9mcmFjLCBjb3Nf
dmFsLCBkZWx0YTsKICAgICBvcHVzX2ludDMyIGEzMl9RQTFbIFNJTEtfTUFYX09SREVSX0xQQyBd
OwotICAgIG9wdXNfaW50MzIgbWF4YWJzLCBhYnN2YWwsIGlkeD0wLCBzY19RMTY7CiAKICAgICBz
aWxrX2Fzc2VydCggTFNGX0NPU19UQUJfU1pfRklYID09IDEyOCApOwotICAgIHNpbGtfYXNzZXJ0
KCBkPT0xMHx8ZD09MTYgKTsKKyAgICBzaWxrX2Fzc2VydCggZD09MTAgfHwgZD09MTYgKTsKIAog
ICAgIC8qIGNvbnZlcnQgTFNGcyB0byAyKmNvcyhMU0YpLCB1c2luZyBwaWVjZXdpc2UgbGluZWFy
IGN1cnZlIGZyb20gdGFibGUgKi8KICAgICBvcmRlcmluZyA9IGQgPT0gMTYgPyBvcmRlcmluZzE2
IDogb3JkZXJpbmcxMDsKICAgICBmb3IoIGsgPSAwOyBrIDwgZDsgaysrICkgewotICAgICAgICBz
aWxrX2Fzc2VydChOTFNGW2tdID49IDAgKTsKKyAgICAgICAgc2lsa19hc3NlcnQoIE5MU0Zba10g
Pj0gMCApOwogCiAgICAgICAgIC8qIGZfaW50IG9uIGEgc2NhbGUgMC0xMjcgKHJvdW5kZWQgZG93
bikgKi8KICAgICAgICAgZl9pbnQgPSBzaWxrX1JTSElGVCggTkxTRltrXSwgMTUgLSA3ICk7CkBA
IC0xMjYsNTIgKzEyNiwxNSBAQCB2b2lkIHNpbGtfTkxTRjJBKAogICAgICAgICBhMzJfUUExWyBk
LWstMSBdID0gIFF0bXAgLSBQdG1wOyAgICAgICAgLyogUUErMSAqLwogICAgIH0KIAotICAgIC8q
IExpbWl0IHRoZSBtYXhpbXVtIGFic29sdXRlIHZhbHVlIG9mIHRoZSBwcmVkaWN0aW9uIGNvZWZm
aWNpZW50cywgc28gdGhhdCB0aGV5J2xsIGZpdCBpbiBpbnQxNiAqLwotICAgIGZvciggaSA9IDA7
IGkgPCAxMDsgaSsrICkgewotICAgICAgICAvKiBGaW5kIG1heGltdW0gYWJzb2x1dGUgdmFsdWUg
YW5kIGl0cyBpbmRleCAqLwotICAgICAgICBtYXhhYnMgPSAwOwotICAgICAgICBmb3IoIGsgPSAw
OyBrIDwgZDsgaysrICkgewotICAgICAgICAgICAgYWJzdmFsID0gc2lsa19hYnMoIGEzMl9RQTFb
a10gKTsKLSAgICAgICAgICAgIGlmKCBhYnN2YWwgPiBtYXhhYnMgKSB7Ci0gICAgICAgICAgICAg
ICAgbWF4YWJzID0gYWJzdmFsOwotICAgICAgICAgICAgICAgIGlkeCAgICA9IGs7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgbWF4YWJzID0gc2lsa19SU0hJRlRfUk9VTkQoIG1h
eGFicywgUUEgKyAxIC0gMTIgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBRQSsxIC0+IFExMiAqLwotCi0gICAgICAgIGlmKCBtYXhhYnMgPiBzaWxrX2ludDE2
X01BWCApIHsKLSAgICAgICAgICAgIC8qIFJlZHVjZSBtYWduaXR1ZGUgb2YgcHJlZGljdGlvbiBj
b2VmZmljaWVudHMgKi8KLSAgICAgICAgICAgIG1heGFicyA9IHNpbGtfbWluKCBtYXhhYnMsIDE2
MzgzOCApOyAgLyogKCBzaWxrX2ludDMyX01BWCA+PiAxNCApICsgc2lsa19pbnQxNl9NQVggPSAx
NjM4MzggKi8KLSAgICAgICAgICAgIHNjX1ExNiA9IFNJTEtfRklYX0NPTlNUKCAwLjk5OSwgMTYg
KSAtIHNpbGtfRElWMzIoIHNpbGtfTFNISUZUKCBtYXhhYnMgLSBzaWxrX2ludDE2X01BWCwgMTQg
KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWxrX1JTSElGVDMy
KCBzaWxrX01VTCggbWF4YWJzLCBpZHggKyAxKSwgMiApICk7Ci0gICAgICAgICAgICBzaWxrX2J3
ZXhwYW5kZXJfMzIoIGEzMl9RQTEsIGQsIHNjX1ExNiApOwotICAgICAgICB9IGVsc2UgewotICAg
ICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAgICB9CisgICAgLyogQ29udmVydCBpbnQzMiBj
b2VmZmljaWVudHMgdG8gUTEyIGludDE2IGNvZWZzICovCisgICAgc2lsa19MUENfZml0KCBhX1Ex
MiwgYTMyX1FBMSwgMTIsIFFBICsgMSwgZCApOwogCi0gICAgaWYoIGkgPT0gMTAgKSB7Ci0gICAg
ICAgIC8qIFJlYWNoZWQgdGhlIGxhc3QgaXRlcmF0aW9uLCBjbGlwIHRoZSBjb2VmZmljaWVudHMg
Ki8KKyAgICBmb3IoIGkgPSAwOyBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbiggYV9RMTIsIGQs
IGFyY2ggKSA9PSAwICYmIGkgPCBNQVhfTFBDX1NUQUJJTElaRV9JVEVSQVRJT05TOyBpKysgKSB7
CisgICAgICAgIC8qIFByZWRpY3Rpb24gY29lZmZpY2llbnRzIGFyZSAodG9vIGNsb3NlIHRvKSB1
bnN0YWJsZTsgYXBwbHkgYmFuZHdpZHRoIGV4cGFuc2lvbiAgICovCisgICAgICAgIC8qIG9uIHRo
ZSB1bnNjYWxlZCBjb2VmZmljaWVudHMsIGNvbnZlcnQgdG8gUTEyIGFuZCBtZWFzdXJlIGFnYWlu
ICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIHNpbGtfYndleHBhbmRlcl8zMiggYTMyX1FB
MSwgZCwgNjU1MzYgLSBzaWxrX0xTSElGVCggMiwgaSApICk7CiAgICAgICAgIGZvciggayA9IDA7
IGsgPCBkOyBrKysgKSB7Ci0gICAgICAgICAgICBhX1ExMlsgayBdID0gKG9wdXNfaW50MTYpc2ls
a19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIGEzMl9RQTFbIGsgXSwgUUEgKyAxIC0gMTIgKSAp
OyAgLyogUUErMSAtPiBRMTIgKi8KLSAgICAgICAgICAgIGEzMl9RQTFbIGsgXSA9IHNpbGtfTFNI
SUZUKCAob3B1c19pbnQzMilhX1ExMlsgayBdLCBRQSArIDEgLSAxMiApOwotICAgICAgICB9Ci0g
ICAgfSBlbHNlIHsKLSAgICAgICAgZm9yKCBrID0gMDsgayA8IGQ7IGsrKyApIHsKLSAgICAgICAg
ICAgIGFfUTEyWyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1JTSElGVF9ST1VORCggYTMyX1FBMVsg
ayBdLCBRQSArIDEgLSAxMiApOyAgICAgICAgICAgICAgICAvKiBRQSsxIC0+IFExMiAqLwotICAg
ICAgICB9Ci0gICAgfQotCi0gICAgZm9yKCBpID0gMDsgaSA8IE1BWF9MUENfU1RBQklMSVpFX0lU
RVJBVElPTlM7IGkrKyApIHsKLSAgICAgICAgaWYoIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWlu
KCBhX1ExMiwgZCApIDwgU0lMS19GSVhfQ09OU1QoIDEuMCAvIE1BWF9QUkVESUNUSU9OX1BPV0VS
X0dBSU4sIDMwICkgKSB7Ci0gICAgICAgICAgICAvKiBQcmVkaWN0aW9uIGNvZWZmaWNpZW50cyBh
cmUgKHRvbyBjbG9zZSB0bykgdW5zdGFibGU7IGFwcGx5IGJhbmR3aWR0aCBleHBhbnNpb24gICAq
LwotICAgICAgICAgICAgLyogb24gdGhlIHVuc2NhbGVkIGNvZWZmaWNpZW50cywgY29udmVydCB0
byBRMTIgYW5kIG1lYXN1cmUgYWdhaW4gICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAg
IHNpbGtfYndleHBhbmRlcl8zMiggYTMyX1FBMSwgZCwgNjU1MzYgLSBzaWxrX0xTSElGVCggMiwg
aSApICk7Ci0gICAgICAgICAgICBmb3IoIGsgPSAwOyBrIDwgZDsgaysrICkgewotICAgICAgICAg
ICAgICAgIGFfUTEyWyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1JTSElGVF9ST1VORCggYTMyX1FB
MVsgayBdLCBRQSArIDEgLSAxMiApOyAgICAgICAgICAgIC8qIFFBKzEgLT4gUTEyICovCi0gICAg
ICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBicmVhazsKKyAgICAgICAg
ICAgIGFfUTEyWyBrIF0gPSAob3B1c19pbnQxNilzaWxrX1JTSElGVF9ST1VORCggYTMyX1FBMVsg
ayBdLCBRQSArIDEgLSAxMiApOyAgICAgICAgICAgIC8qIFFBKzEgLT4gUTEyICovCiAgICAgICAg
IH0KICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9WUS5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfVlEuYwpp
bmRleCA2OWI2ZTIyZTE4OTY1YTk4MDRiNTRhZWMxYjlmZjdjYjgyNDUzNjUyLi40NTJmM2RjYjdk
ZGQ4YTc4OGEwMGYzYzI3YzEzOWU5NWVhMjBiYmZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9WUS5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9OTFNGX1ZRLmMKQEAgLTMzLDM2ICszMyw0NCBAQCBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KIAogLyogQ29tcHV0ZSBxdWFudGl6YXRpb24gZXJyb3JzIGZvciBhbiBMUENf
b3JkZXIgZWxlbWVudCBpbnB1dCB2ZWN0b3IgZm9yIGEgVlEgY29kZWJvb2sgKi8KIHZvaWQgc2ls
a19OTFNGX1ZRKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBlcnJfUTI2W10sICAg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRpemF0aW9uIGVycm9ycyBbS10gICAgICAg
ICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBlcnJfUTI0
W10sICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRpemF0aW9uIGVycm9ycyBbS10g
ICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBp
bl9RMTVbXSwgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgdmVjdG9ycyB0byBi
ZSBxdWFudGl6ZWQgW0xQQ19vcmRlcl0gICAqLwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAg
ICAgICBwQ0JfUThbXSwgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29kZWJvb2sgdmVj
dG9ycyBbSypMUENfb3JkZXJdICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYg
ICAgICAgICAgICBwV2dodF9ROVtdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29kZWJv
b2sgd2VpZ2h0cyBbSypMUENfb3JkZXJdICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICBLLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
TnVtYmVyIG9mIGNvZGVib29rIHZlY3RvcnMgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0
IG9wdXNfaW50ICAgICAgICAgICAgICBMUENfb3JkZXIgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgTnVtYmVyIG9mIExQQ3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKQog
ewotICAgIG9wdXNfaW50ICAgICAgICBpLCBtOwotICAgIG9wdXNfaW50MzIgICAgICBkaWZmX1Ex
NSwgc3VtX2Vycm9yX1EzMCwgc3VtX2Vycm9yX1EyNjsKKyAgICBvcHVzX2ludCAgICAgICAgIGks
IG07CisgICAgb3B1c19pbnQzMiAgICAgICBkaWZmX1ExNSwgZGlmZndfUTI0LCBzdW1fZXJyb3Jf
UTI0LCBwcmVkX1EyNDsKKyAgICBjb25zdCBvcHVzX2ludDE2ICp3X1E5X3B0cjsKKyAgICBjb25z
dCBvcHVzX3VpbnQ4ICpjYl9ROF9wdHI7CiAKLSAgICBzaWxrX2Fzc2VydCggTFBDX29yZGVyIDw9
IDE2ICk7CiAgICAgc2lsa19hc3NlcnQoICggTFBDX29yZGVyICYgMSApID09IDAgKTsKIAogICAg
IC8qIExvb3Agb3ZlciBjb2RlYm9vayAqLworICAgIGNiX1E4X3B0ciA9IHBDQl9RODsKKyAgICB3
X1E5X3B0ciA9IHBXZ2h0X1E5OwogICAgIGZvciggaSA9IDA7IGkgPCBLOyBpKysgKSB7Ci0gICAg
ICAgIHN1bV9lcnJvcl9RMjYgPSAwOwotICAgICAgICBmb3IoIG0gPSAwOyBtIDwgTFBDX29yZGVy
OyBtICs9IDIgKSB7Ci0gICAgICAgICAgICAvKiBDb21wdXRlIHdlaWdodGVkIHNxdWFyZWQgcXVh
bnRpemF0aW9uIGVycm9yIGZvciBpbmRleCBtICovCi0gICAgICAgICAgICBkaWZmX1ExNSA9IHNp
bGtfU1VCX0xTSElGVDMyKCBpbl9RMTVbIG0gXSwgKG9wdXNfaW50MzIpKnBDQl9ROCsrLCA3ICk7
IC8qIHJhbmdlOiBbIC0zMjc2NyA6IDMyNzY3IF0qLwotICAgICAgICAgICAgc3VtX2Vycm9yX1Ez
MCA9IHNpbGtfU01VTEJCKCBkaWZmX1ExNSwgZGlmZl9RMTUgKTsKKyAgICAgICAgc3VtX2Vycm9y
X1EyNCA9IDA7CisgICAgICAgIHByZWRfUTI0ID0gMDsKKyAgICAgICAgZm9yKCBtID0gTFBDX29y
ZGVyLTI7IG0gPj0gMDsgbSAtPSAyICkgeworICAgICAgICAgICAgLyogQ29tcHV0ZSB3ZWlnaHRl
ZCBhYnNvbHV0ZSBwcmVkaWN0aXZlIHF1YW50aXphdGlvbiBlcnJvciBmb3IgaW5kZXggbSArIDEg
Ki8KKyAgICAgICAgICAgIGRpZmZfUTE1ID0gc2lsa19TVUJfTFNISUZUMzIoIGluX1ExNVsgbSAr
IDEgXSwgKG9wdXNfaW50MzIpY2JfUThfcHRyWyBtICsgMSBdLCA3ICk7IC8qIHJhbmdlOiBbIC0z
Mjc2NyA6IDMyNzY3IF0qLworICAgICAgICAgICAgZGlmZndfUTI0ID0gc2lsa19TTVVMQkIoIGRp
ZmZfUTE1LCB3X1E5X3B0clsgbSArIDEgXSApOworICAgICAgICAgICAgc3VtX2Vycm9yX1EyNCA9
IHNpbGtfQUREMzIoIHN1bV9lcnJvcl9RMjQsIHNpbGtfYWJzKCBzaWxrX1NVQl9SU0hJRlQzMigg
ZGlmZndfUTI0LCBwcmVkX1EyNCwgMSApICkgKTsKKyAgICAgICAgICAgIHByZWRfUTI0ID0gZGlm
ZndfUTI0OwogCi0gICAgICAgICAgICAvKiBDb21wdXRlIHdlaWdodGVkIHNxdWFyZWQgcXVhbnRp
emF0aW9uIGVycm9yIGZvciBpbmRleCBtICsgMSAqLwotICAgICAgICAgICAgZGlmZl9RMTUgPSBz
aWxrX1NVQl9MU0hJRlQzMiggaW5fUTE1W20gKyAxXSwgKG9wdXNfaW50MzIpKnBDQl9ROCsrLCA3
ICk7IC8qIHJhbmdlOiBbIC0zMjc2NyA6IDMyNzY3IF0qLwotICAgICAgICAgICAgc3VtX2Vycm9y
X1EzMCA9IHNpbGtfU01MQUJCKCBzdW1fZXJyb3JfUTMwLCBkaWZmX1ExNSwgZGlmZl9RMTUgKTsK
KyAgICAgICAgICAgIC8qIENvbXB1dGUgd2VpZ2h0ZWQgYWJzb2x1dGUgcHJlZGljdGl2ZSBxdWFu
dGl6YXRpb24gZXJyb3IgZm9yIGluZGV4IG0gKi8KKyAgICAgICAgICAgIGRpZmZfUTE1ID0gc2ls
a19TVUJfTFNISUZUMzIoIGluX1ExNVsgbSBdLCAob3B1c19pbnQzMiljYl9ROF9wdHJbIG0gXSwg
NyApOyAvKiByYW5nZTogWyAtMzI3NjcgOiAzMjc2NyBdKi8KKyAgICAgICAgICAgIGRpZmZ3X1Ey
NCA9IHNpbGtfU01VTEJCKCBkaWZmX1ExNSwgd19ROV9wdHJbIG0gXSApOworICAgICAgICAgICAg
c3VtX2Vycm9yX1EyNCA9IHNpbGtfQUREMzIoIHN1bV9lcnJvcl9RMjQsIHNpbGtfYWJzKCBzaWxr
X1NVQl9SU0hJRlQzMiggZGlmZndfUTI0LCBwcmVkX1EyNCwgMSApICkgKTsKKyAgICAgICAgICAg
IHByZWRfUTI0ID0gZGlmZndfUTI0OwogCi0gICAgICAgICAgICBzdW1fZXJyb3JfUTI2ID0gc2ls
a19BRERfUlNISUZUMzIoIHN1bV9lcnJvcl9RMjYsIHN1bV9lcnJvcl9RMzAsIDQgKTsKLQotICAg
ICAgICAgICAgc2lsa19hc3NlcnQoIHN1bV9lcnJvcl9RMjYgPj0gMCApOwotICAgICAgICAgICAg
c2lsa19hc3NlcnQoIHN1bV9lcnJvcl9RMzAgPj0gMCApOworICAgICAgICAgICAgc2lsa19hc3Nl
cnQoIHN1bV9lcnJvcl9RMjQgPj0gMCApOwogICAgICAgICB9Ci0gICAgICAgIGVycl9RMjZbIGkg
XSA9IHN1bV9lcnJvcl9RMjY7CisgICAgICAgIGVycl9RMjRbIGkgXSA9IHN1bV9lcnJvcl9RMjQ7
CisgICAgICAgIGNiX1E4X3B0ciArPSBMUENfb3JkZXI7CisgICAgICAgIHdfUTlfcHRyICs9IExQ
Q19vcmRlcjsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9kZWNvZGUuYyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9O
TFNGX2RlY29kZS5jCmluZGV4IDlmNzE1MDYwYjhlZmIyYzNjNmQ4NGMxMGVkYzY4MDM2ZjAyNTNm
NDYuLmVlYjBiYThjOTJjOGI2MGY3ZGM2MTk1M2ZkODA1NGU4NzRiYTA3ZDIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9OTFNGX2RlY29kZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX2RlY29kZS5jCkBAIC0zMiw3ICszMiw3
IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgIm1haW4uaCIKIAogLyog
UHJlZGljdGl2ZSBkZXF1YW50aXplciBmb3IgTkxTRiByZXNpZHVhbHMgKi8KLXN0YXRpYyBPUFVT
X0lOTElORSB2b2lkIHNpbGtfTkxTRl9yZXNpZHVhbF9kZXF1YW50KCAgICAgICAgICAgICAgIC8q
IE8gICAgUmV0dXJucyBSRCB2YWx1ZSBpbiBRMzAgICAgICAgICAgICAgICAgICAgICAqLworc3Rh
dGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19OTFNGX3Jlc2lkdWFsX2RlcXVhbnQoICAgICAgICAg
IC8qIE8gICAgUmV0dXJucyBSRCB2YWx1ZSBpbiBRMzAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgICAgICAgIG9wdXNfaW50MTYgICAgICAgICB4X1ExMFtdLCAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIE8gICAgT3V0cHV0IFsgb3JkZXIgXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwogICAgIGNvbnN0IG9wdXNfaW50OCAgICAgICAgICBpbmRpY2VzW10sICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgUXVhbnRpemF0aW9uIGluZGljZXMgWyBvcmRlciBdICAgICAgICAgICAg
ICAqLwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICBwcmVkX2NvZWZfUThbXSwgICAgICAg
ICAgICAgICAgIC8qIEkgICAgQmFja3dhcmQgcHJlZGljdG9yIGNvZWZzIFsgb3JkZXIgXSAgICAg
ICAgICAqLwpAQCAtNzAsMTUgKzcwLDkgQEAgdm9pZCBzaWxrX05MU0ZfZGVjb2RlKAogICAgIG9w
dXNfdWludDggICAgICAgcHJlZF9ROFsgIE1BWF9MUENfT1JERVIgXTsKICAgICBvcHVzX2ludDE2
ICAgICAgIGVjX2l4WyAgICBNQVhfTFBDX09SREVSIF07CiAgICAgb3B1c19pbnQxNiAgICAgICBy
ZXNfUTEwWyAgTUFYX0xQQ19PUkRFUiBdOwotICAgIG9wdXNfaW50MTYgICAgICAgV190bXBfUVdb
IE1BWF9MUENfT1JERVIgXTsKLSAgICBvcHVzX2ludDMyICAgICAgIFdfdG1wX1E5LCBOTFNGX1Ex
NV90bXA7CisgICAgb3B1c19pbnQzMiAgICAgICBOTFNGX1ExNV90bXA7CiAgICAgY29uc3Qgb3B1
c191aW50OCAqcENCX2VsZW1lbnQ7Ci0KLSAgICAvKiBEZWNvZGUgZmlyc3Qgc3RhZ2UgKi8KLSAg
ICBwQ0JfZWxlbWVudCA9ICZwc05MU0ZfQ0ItPkNCMV9OTFNGX1E4WyBOTFNGSW5kaWNlc1sgMCBd
ICogcHNOTFNGX0NCLT5vcmRlciBdOwotICAgIGZvciggaSA9IDA7IGkgPCBwc05MU0ZfQ0ItPm9y
ZGVyOyBpKysgKSB7Ci0gICAgICAgIHBOTFNGX1ExNVsgaSBdID0gc2lsa19MU0hJRlQoIChvcHVz
X2ludDE2KXBDQl9lbGVtZW50WyBpIF0sIDcgKTsKLSAgICB9CisgICAgY29uc3Qgb3B1c19pbnQx
NiAqcENCX1dnaHRfUTk7CiAKICAgICAvKiBVbnBhY2sgZW50cm9weSB0YWJsZSBpbmRpY2VzIGFu
ZCBwcmVkaWN0b3IgZm9yIGN1cnJlbnQgQ0IxIGluZGV4ICovCiAgICAgc2lsa19OTFNGX3VucGFj
ayggZWNfaXgsIHByZWRfUTgsIHBzTkxTRl9DQiwgTkxTRkluZGljZXNbIDAgXSApOwpAQCAtODYs
MTMgKzgwLDExIEBAIHZvaWQgc2lsa19OTFNGX2RlY29kZSgKICAgICAvKiBQcmVkaWN0aXZlIHJl
c2lkdWFsIGRlcXVhbnRpemVyICovCiAgICAgc2lsa19OTFNGX3Jlc2lkdWFsX2RlcXVhbnQoIHJl
c19RMTAsICZOTFNGSW5kaWNlc1sgMSBdLCBwcmVkX1E4LCBwc05MU0ZfQ0ItPnF1YW50U3RlcFNp
emVfUTE2LCBwc05MU0ZfQ0ItPm9yZGVyICk7CiAKLSAgICAvKiBXZWlnaHRzIGZyb20gY29kZWJv
b2sgdmVjdG9yICovCi0gICAgc2lsa19OTFNGX1ZRX3dlaWdodHNfbGFyb2lhKCBXX3RtcF9RVywg
cE5MU0ZfUTE1LCBwc05MU0ZfQ0ItPm9yZGVyICk7Ci0KLSAgICAvKiBBcHBseSBpbnZlcnNlIHNx
dWFyZS1yb290ZWQgd2VpZ2h0cyBhbmQgYWRkIHRvIG91dHB1dCAqLworICAgIC8qIEFwcGx5IGlu
dmVyc2Ugc3F1YXJlLXJvb3RlZCB3ZWlnaHRzIHRvIGZpcnN0IHN0YWdlIGFuZCBhZGQgdG8gb3V0
cHV0ICovCisgICAgcENCX2VsZW1lbnQgPSAmcHNOTFNGX0NCLT5DQjFfTkxTRl9ROFsgTkxTRklu
ZGljZXNbIDAgXSAqIHBzTkxTRl9DQi0+b3JkZXIgXTsKKyAgICBwQ0JfV2dodF9ROSA9ICZwc05M
U0ZfQ0ItPkNCMV9XZ2h0X1E5WyBOTFNGSW5kaWNlc1sgMCBdICogcHNOTFNGX0NCLT5vcmRlciBd
OwogICAgIGZvciggaSA9IDA7IGkgPCBwc05MU0ZfQ0ItPm9yZGVyOyBpKysgKSB7Ci0gICAgICAg
IFdfdG1wX1E5ID0gc2lsa19TUVJUX0FQUFJPWCggc2lsa19MU0hJRlQoIChvcHVzX2ludDMyKVdf
dG1wX1FXWyBpIF0sIDE4IC0gTkxTRl9XX1EgKSApOwotICAgICAgICBOTFNGX1ExNV90bXAgPSBz
aWxrX0FERDMyKCBwTkxTRl9RMTVbIGkgXSwgc2lsa19ESVYzMl8xNiggc2lsa19MU0hJRlQoIChv
cHVzX2ludDMyKXJlc19RMTBbIGkgXSwgMTQgKSwgV190bXBfUTkgKSApOworICAgICAgICBOTFNG
X1ExNV90bXAgPSBzaWxrX0FERF9MU0hJRlQzMiggc2lsa19ESVYzMl8xNiggc2lsa19MU0hJRlQo
IChvcHVzX2ludDMyKXJlc19RMTBbIGkgXSwgMTQgKSwgcENCX1dnaHRfUTlbIGkgXSApLCAob3B1
c19pbnQxNilwQ0JfZWxlbWVudFsgaSBdLCA3ICk7CiAgICAgICAgIHBOTFNGX1ExNVsgaSBdID0g
KG9wdXNfaW50MTYpc2lsa19MSU1JVCggTkxTRl9RMTVfdG1wLCAwLCAzMjc2NyApOwogICAgIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZGVsX2RlY19xdWFudC5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZGVsX2Rl
Y19xdWFudC5jCmluZGV4IGRlODhmZWUwNjBlMzc3MmViNDNjNGQwZGY2ODEyYWExMDE1OTBkYmYu
LjQ0YTE2YWNkMGJjMTFhYjczM2JiYjBiYmU0MmMzNzhiMjFkNGFmMWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9OTFNGX2RlbF9kZWNfcXVhbnQuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTkxTRl9kZWxfZGVjX3F1YW50LmMKQEAg
LTg0LDcgKzg0LDcgQEAgb3B1c19pbnQzMiBzaWxrX05MU0ZfZGVsX2RlY19xdWFudCggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucwogICAgIG5TdGF0ZXMgPSAxOwog
ICAgIFJEX1EyNVsgMCBdID0gMDsKICAgICBwcmV2X291dF9RMTBbIDAgXSA9IDA7Ci0gICAgZm9y
KCBpID0gb3JkZXIgLSAxOyA7IGktLSApIHsKKyAgICBmb3IoIGkgPSBvcmRlciAtIDE7IGkgPj0g
MDsgaS0tICkgewogICAgICAgICByYXRlc19RNSA9ICZlY19yYXRlc19RNVsgZWNfaXhbIGkgXSBd
OwogICAgICAgICBpbl9RMTAgPSB4X1ExMFsgaSBdOwogICAgICAgICBmb3IoIGogPSAwOyBqIDwg
blN0YXRlczsgaisrICkgewpAQCAtMTMxLDcgKzEzMSw3IEBAIG9wdXNfaW50MzIgc2lsa19OTFNG
X2RlbF9kZWNfcXVhbnQoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJldHVy
bnMKICAgICAgICAgICAgIFJEX1EyNVsgaiArIG5TdGF0ZXMgXSA9IHNpbGtfU01MQUJCKCBzaWxr
X01MQSggUkRfdG1wX1EyNSwgc2lsa19TTVVMQkIoIGRpZmZfUTEwLCBkaWZmX1ExMCApLCB3X1E1
WyBpIF0gKSwgbXVfUTIwLCByYXRlMV9RNSApOwogICAgICAgICB9CiAKLSAgICAgICAgaWYoIG5T
dGF0ZXMgPD0gKCBOTFNGX1FVQU5UX0RFTF9ERUNfU1RBVEVTID4+IDEgKSApIHsKKyAgICAgICAg
aWYoIG5TdGF0ZXMgPD0gTkxTRl9RVUFOVF9ERUxfREVDX1NUQVRFUy8yICkgewogICAgICAgICAg
ICAgLyogZG91YmxlIG51bWJlciBvZiBzdGF0ZXMgYW5kIGNvcHkgKi8KICAgICAgICAgICAgIGZv
ciggaiA9IDA7IGogPCBuU3RhdGVzOyBqKysgKSB7CiAgICAgICAgICAgICAgICAgaW5kWyBqICsg
blN0YXRlcyBdWyBpIF0gPSBpbmRbIGogXVsgaSBdICsgMTsKQEAgLTE0MCw3ICsxNDAsNyBAQCBv
cHVzX2ludDMyIHNpbGtfTkxTRl9kZWxfZGVjX3F1YW50KCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogTyAgICBSZXR1cm5zCiAgICAgICAgICAgICBmb3IoIGogPSBuU3RhdGVzOyBqIDwg
TkxTRl9RVUFOVF9ERUxfREVDX1NUQVRFUzsgaisrICkgewogICAgICAgICAgICAgICAgIGluZFsg
aiBdWyBpIF0gPSBpbmRbIGogLSBuU3RhdGVzIF1bIGkgXTsKICAgICAgICAgICAgIH0KLSAgICAg
ICAgfSBlbHNlIGlmKCBpID4gMCApIHsKKyAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8q
IHNvcnQgbG93ZXIgYW5kIHVwcGVyIGhhbGYgb2YgUkRfUTI1LCBwYWlyd2lzZSAqLwogICAgICAg
ICAgICAgZm9yKCBqID0gMDsgaiA8IE5MU0ZfUVVBTlRfREVMX0RFQ19TVEFURVM7IGorKyApIHsK
ICAgICAgICAgICAgICAgICBpZiggUkRfUTI1WyBqIF0gPiBSRF9RMjVbIGogKyBOTFNGX1FVQU5U
X0RFTF9ERUNfU1RBVEVTIF0gKSB7CkBAIC0xOTEsOCArMTkxLDYgQEAgb3B1c19pbnQzMiBzaWxr
X05MU0ZfZGVsX2RlY19xdWFudCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAg
UmV0dXJucwogICAgICAgICAgICAgZm9yKCBqID0gMDsgaiA8IE5MU0ZfUVVBTlRfREVMX0RFQ19T
VEFURVM7IGorKyApIHsKICAgICAgICAgICAgICAgICBpbmRbIGogXVsgaSBdICs9IHNpbGtfUlNI
SUZUKCBpbmRfc29ydFsgaiBdLCBOTFNGX1FVQU5UX0RFTF9ERUNfU1RBVEVTX0xPRzIgKTsKICAg
ICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIHsgIC8qIGkgPT0gMCAqLwotICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgIH0KICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9OTFNGX2VuY29kZS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL05MU0ZfZW5jb2RlLmMKaW5kZXggZjAzYzNmMWMzNTQ5ZDlkY2NmNGY1MTE1MzdiNDAw
MWM0MDlmN2U2Yi4uMjY4YjlhMTk1YjUwODU2NTM2NzgxMmJhMjc0N2E3YmE2YTFmNGFhMCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL05MU0ZfZW5jb2RlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05MU0ZfZW5jb2RlLmMKQEAgLTM3
LDkgKzM3LDkgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAvKioqKioqKioqKioqKioq
KioqKioqKiovCiBvcHVzX2ludDMyIHNpbGtfTkxTRl9lbmNvZGUoICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXR1cm5zIFJEIHZhbHVlIGluIFEyNSAgICAgICAg
ICAgICAgICAgICAgICovCiAgICAgICAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICpOTFNGSW5k
aWNlcywgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb2RlYm9vayBwYXRoIHZlY3RvciBbIExQ
Q19PUkRFUiArIDEgXSAgICAgICovCi0gICAgICAgICAgb3B1c19pbnQxNiAgICAgICAgICAgICpw
TkxTRl9RMTUsICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6ZWQgTkxTRiB2ZWN0
b3IgWyBMUENfT1JERVIgXSAgICAgICAgICovCisgICAgICAgICAgb3B1c19pbnQxNiAgICAgICAg
ICAgICpwTkxTRl9RMTUsICAgICAgICAgICAgICAgICAgICAgLyogSS9PICAoVW4pcXVhbnRpemVk
IE5MU0YgdmVjdG9yIFsgTFBDX09SREVSIF0gICAgICovCiAgICAgY29uc3Qgc2lsa19OTFNGX0NC
X3N0cnVjdCAgICpwc05MU0ZfQ0IsICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb2RlYm9v
ayBvYmplY3QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19p
bnQxNiAgICAgICAgICAgICpwV19RVywgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBO
TFNGIHdlaWdodCB2ZWN0b3IgWyBMUENfT1JERVIgXSAgICAgICAgICAgICovCisgICAgY29uc3Qg
b3B1c19pbnQxNiAgICAgICAgICAgICpwV19RMiwgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBOTFNGIHdlaWdodCB2ZWN0b3IgWyBMUENfT1JERVIgXSAgICAgICAgICAgICovCiAgICAg
Y29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIE5MU0ZfbXVfUTIwLCAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBSYXRlIHdlaWdodCBmb3IgdGhlIFJEIG9wdGltaXphdGlvbiAgICAgICAgICov
CiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG5TdXJ2aXZvcnMsICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBNYXggc3Vydml2b3JzIGFmdGVyIGZpcnN0IHN0YWdlICAgICAgICAg
ICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHNpZ25hbFR5cGUgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBTaWduYWwgdHlwZTogMC8xLzIgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCkBAIC00NywyMSArNDcsMTkgQEAgb3B1c19pbnQzMiBzaWxrX05MU0ZfZW5j
b2RlKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucwog
ewogICAgIG9wdXNfaW50ICAgICAgICAgaSwgcywgaW5kMSwgYmVzdEluZGV4LCBwcm9iX1E4LCBi
aXRzX3E3OwogICAgIG9wdXNfaW50MzIgICAgICAgV190bXBfUTksIHJldDsKLSAgICBWQVJERUNM
KCBvcHVzX2ludDMyLCBlcnJfUTI2ICk7CisgICAgVkFSREVDTCggb3B1c19pbnQzMiwgZXJyX1Ey
NCApOwogICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIFJEX1EyNSApOwogICAgIFZBUkRFQ0woIG9w
dXNfaW50LCB0ZW1wSW5kaWNlczEgKTsKICAgICBWQVJERUNMKCBvcHVzX2ludDgsIHRlbXBJbmRp
Y2VzMiApOwotICAgIG9wdXNfaW50MTYgICAgICAgcmVzX1ExNVsgICAgICBNQVhfTFBDX09SREVS
IF07CiAgICAgb3B1c19pbnQxNiAgICAgICByZXNfUTEwWyAgICAgIE1BWF9MUENfT1JERVIgXTsK
ICAgICBvcHVzX2ludDE2ICAgICAgIE5MU0ZfdG1wX1ExNVsgTUFYX0xQQ19PUkRFUiBdOwotICAg
IG9wdXNfaW50MTYgICAgICAgV190bXBfUVdbICAgICBNQVhfTFBDX09SREVSIF07CiAgICAgb3B1
c19pbnQxNiAgICAgICBXX2Fkal9RNVsgICAgIE1BWF9MUENfT1JERVIgXTsKICAgICBvcHVzX3Vp
bnQ4ICAgICAgIHByZWRfUThbICAgICAgTUFYX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfaW50MTYg
ICAgICAgZWNfaXhbICAgICAgICBNQVhfTFBDX09SREVSIF07CiAgICAgY29uc3Qgb3B1c191aW50
OCAqcENCX2VsZW1lbnQsICppQ0RGX3B0cjsKKyAgICBjb25zdCBvcHVzX2ludDE2ICpwQ0JfV2do
dF9ROTsKICAgICBTQVZFX1NUQUNLOwogCi0gICAgc2lsa19hc3NlcnQoIG5TdXJ2aXZvcnMgPD0g
TkxTRl9WUV9NQVhfU1VSVklWT1JTICk7CiAgICAgc2lsa19hc3NlcnQoIHNpZ25hbFR5cGUgPj0g
MCAmJiBzaWduYWxUeXBlIDw9IDIgKTsKICAgICBzaWxrX2Fzc2VydCggTkxTRl9tdV9RMjAgPD0g
MzI3NjcgJiYgTkxTRl9tdV9RMjAgPj0gMCApOwogCkBAIC02OSwxMiArNjcsMTIgQEAgb3B1c19p
bnQzMiBzaWxrX05MU0ZfZW5jb2RlKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIE8gICAgUmV0dXJucwogICAgIHNpbGtfTkxTRl9zdGFiaWxpemUoIHBOTFNGX1ExNSwgcHNO
TFNGX0NCLT5kZWx0YU1pbl9RMTUsIHBzTkxTRl9DQi0+b3JkZXIgKTsKIAogICAgIC8qIEZpcnN0
IHN0YWdlOiBWUSAqLwotICAgIEFMTE9DKCBlcnJfUTI2LCBwc05MU0ZfQ0ItPm5WZWN0b3JzLCBv
cHVzX2ludDMyICk7Ci0gICAgc2lsa19OTFNGX1ZRKCBlcnJfUTI2LCBwTkxTRl9RMTUsIHBzTkxT
Rl9DQi0+Q0IxX05MU0ZfUTgsIHBzTkxTRl9DQi0+blZlY3RvcnMsIHBzTkxTRl9DQi0+b3JkZXIg
KTsKKyAgICBBTExPQyggZXJyX1EyNCwgcHNOTFNGX0NCLT5uVmVjdG9ycywgb3B1c19pbnQzMiAp
OworICAgIHNpbGtfTkxTRl9WUSggZXJyX1EyNCwgcE5MU0ZfUTE1LCBwc05MU0ZfQ0ItPkNCMV9O
TFNGX1E4LCBwc05MU0ZfQ0ItPkNCMV9XZ2h0X1E5LCBwc05MU0ZfQ0ItPm5WZWN0b3JzLCBwc05M
U0ZfQ0ItPm9yZGVyICk7CiAKICAgICAvKiBTb3J0IHRoZSBxdWFudGl6YXRpb24gZXJyb3JzICov
CiAgICAgQUxMT0MoIHRlbXBJbmRpY2VzMSwgblN1cnZpdm9ycywgb3B1c19pbnQgKTsKLSAgICBz
aWxrX2luc2VydGlvbl9zb3J0X2luY3JlYXNpbmcoIGVycl9RMjYsIHRlbXBJbmRpY2VzMSwgcHNO
TFNGX0NCLT5uVmVjdG9ycywgblN1cnZpdm9ycyApOworICAgIHNpbGtfaW5zZXJ0aW9uX3NvcnRf
aW5jcmVhc2luZyggZXJyX1EyNCwgdGVtcEluZGljZXMxLCBwc05MU0ZfQ0ItPm5WZWN0b3JzLCBu
U3Vydml2b3JzICk7CiAKICAgICBBTExPQyggUkRfUTI1LCBuU3Vydml2b3JzLCBvcHVzX2ludDMy
ICk7CiAgICAgQUxMT0MoIHRlbXBJbmRpY2VzMiwgblN1cnZpdm9ycyAqIE1BWF9MUENfT1JERVIs
IG9wdXNfaW50OCApOwpAQCAtODUsMjMgKzgzLDEyIEBAIG9wdXNfaW50MzIgc2lsa19OTFNGX2Vu
Y29kZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJldHVybnMK
IAogICAgICAgICAvKiBSZXNpZHVhbCBhZnRlciBmaXJzdCBzdGFnZSAqLwogICAgICAgICBwQ0Jf
ZWxlbWVudCA9ICZwc05MU0ZfQ0ItPkNCMV9OTFNGX1E4WyBpbmQxICogcHNOTFNGX0NCLT5vcmRl
ciBdOworICAgICAgICBwQ0JfV2dodF9ROSA9ICZwc05MU0ZfQ0ItPkNCMV9XZ2h0X1E5WyBpbmQx
ICogcHNOTFNGX0NCLT5vcmRlciBdOwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgcHNOTFNGX0NC
LT5vcmRlcjsgaSsrICkgewogICAgICAgICAgICAgTkxTRl90bXBfUTE1WyBpIF0gPSBzaWxrX0xT
SElGVDE2KCAob3B1c19pbnQxNilwQ0JfZWxlbWVudFsgaSBdLCA3ICk7Ci0gICAgICAgICAgICBy
ZXNfUTE1WyBpIF0gPSBwTkxTRl9RMTVbIGkgXSAtIE5MU0ZfdG1wX1ExNVsgaSBdOwotICAgICAg
ICB9Ci0KLSAgICAgICAgLyogV2VpZ2h0cyBmcm9tIGNvZGVib29rIHZlY3RvciAqLwotICAgICAg
ICBzaWxrX05MU0ZfVlFfd2VpZ2h0c19sYXJvaWEoIFdfdG1wX1FXLCBOTFNGX3RtcF9RMTUsIHBz
TkxTRl9DQi0+b3JkZXIgKTsKLQotICAgICAgICAvKiBBcHBseSBzcXVhcmUtcm9vdGVkIHdlaWdo
dHMgKi8KLSAgICAgICAgZm9yKCBpID0gMDsgaSA8IHBzTkxTRl9DQi0+b3JkZXI7IGkrKyApIHsK
LSAgICAgICAgICAgIFdfdG1wX1E5ID0gc2lsa19TUVJUX0FQUFJPWCggc2lsa19MU0hJRlQoIChv
cHVzX2ludDMyKVdfdG1wX1FXWyBpIF0sIDE4IC0gTkxTRl9XX1EgKSApOwotICAgICAgICAgICAg
cmVzX1ExMFsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19SU0hJRlQoIHNpbGtfU01VTEJCKCByZXNf
UTE1WyBpIF0sIFdfdG1wX1E5ICksIDE0ICk7Ci0gICAgICAgIH0KLQotICAgICAgICAvKiBNb2Rp
ZnkgaW5wdXQgd2VpZ2h0cyBhY2NvcmRpbmdseSAqLwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwg
cHNOTFNGX0NCLT5vcmRlcjsgaSsrICkgewotICAgICAgICAgICAgV19hZGpfUTVbIGkgXSA9IHNp
bGtfRElWMzJfMTYoIHNpbGtfTFNISUZUKCAob3B1c19pbnQzMilwV19RV1sgaSBdLCA1ICksIFdf
dG1wX1FXWyBpIF0gKTsKKyAgICAgICAgICAgIFdfdG1wX1E5ID0gcENCX1dnaHRfUTlbIGkgXTsK
KyAgICAgICAgICAgIHJlc19RMTBbIGkgXSA9IChvcHVzX2ludDE2KXNpbGtfUlNISUZUKCBzaWxr
X1NNVUxCQiggcE5MU0ZfUTE1WyBpIF0gLSBOTFNGX3RtcF9RMTVbIGkgXSwgV190bXBfUTkgKSwg
MTQgKTsKKyAgICAgICAgICAgIFdfYWRqX1E1WyBpIF0gPSBzaWxrX0RJVjMyX3ZhclEoIChvcHVz
X2ludDMyKXBXX1EyWyBpIF0sIHNpbGtfU01VTEJCKCBXX3RtcF9ROSwgV190bXBfUTkgKSwgMjEg
KTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIFVucGFjayBlbnRyb3B5IHRhYmxlIGluZGljZXMg
YW5kIHByZWRpY3RvciBmb3IgY3VycmVudCBDQjEgaW5kZXggKi8KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9O
U1EuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9OU1EuYwppbmRleCA0M2UzZmVlN2UwYWQ5MjkzOTRlZjdjYmNmODE0YmFkZTI4
NzE5YmVjLi42MTdhMTlmZWFkZWY4ZDU1N2IwODZjMzQ1NThkMzE3NTAyNzZhMWM1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvTlNRLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05TUS5jCkBAIC0zNyw3ICszNyw3IEBAIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3Ffc2Nh
bGVfc3RhdGVzKAogICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbmNDLCAgICAgICAg
ICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19u
c3Ffc3RhdGUgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0ZSAg
ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgIHhfUTNbXSwg
ICAgICAgICAgICAgICAgIC8qIEkgICAgaW5wdXQgaW4gUTMgICAgICAgICAgICAgICAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgeDE2W10sICAgICAgICAgICAgICAgICAgLyogSSAg
ICBpbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAg
ICAgICB4X3NjX1ExMFtdLCAgICAgICAgICAgICAvKiBPICAgIGlucHV0IHNjYWxlZCB3aXRoIDEv
R2FpbiAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgIHNMVFBbXSwgICAgICAgICAg
ICAgICAgIC8qIEkgICAgcmUtd2hpdGVuZWQgTFRQIHN0YXRlIGluIFEwICAgICAqLwogICAgIG9w
dXNfaW50MzIgICAgICAgICAgc0xUUF9RMTVbXSwgICAgICAgICAgICAgLyogTyAgICBMVFAgc3Rh
dGUgbWF0Y2hpbmcgc2NhbGVkIGlucHV0ICovCkBAIC03NSwxNCArNzUsMTQgQEAgc3RhdGljIE9Q
VVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXIoCiAKIHZvaWQgc2lsa19O
U1FfYwogKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAg
ICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNR
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRl
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAg
ICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVh
bnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAg
ICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgICAgICAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19p
bnQ4ICAgICAgICAgICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogTyAgICBRdWFudGl6ZWQgcHVsc2Ugc2lnbmFsICAgICAgICAgICovCiAgICAg
Y29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIFByZWRDb2VmX1ExMlsgMiAqIE1BWF9MUENfT1JE
RVIgXSwgICAgICAgICAgLyogSSAgICBTaG9ydCB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICov
CiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIExUUENvZWZfUTE0WyBMVFBfT1JERVIg
KiBNQVhfTkJfU1VCRlIgXSwgICAgLyogSSAgICBMb25nIHRlcm0gcHJlZGljdGlvbiBjb2VmcyAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFSMl9RMTNbIE1BWF9OQl9T
VUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSBOb2lzZSBzaGFwaW5nIGNvZWZzICAg
ICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFSX1ExM1sgTUFY
X05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAvKiBJIE5vaXNlIHNoYXBpbmcgY29l
ZnMgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIEhhcm1T
aGFwZUdhaW5fUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgLyogSSAgICBMb25nIHRlcm0g
c2hhcGluZyBjb2VmcyAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAg
IFRpbHRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAgLyogSSAgICBTcGVj
dHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAg
ICAgICAgIExGX3NocF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAgLyogSSAg
ICBMb3cgZnJlcXVlbmN5IHNoYXBpbmcgY29lZnMgICAgICovCkBAIC0xMTcsOCArMTE3LDcgQEAg
dm9pZCBzaWxrX05TUV9jCiAgICAgICAgIExTRl9pbnRlcnBvbGF0aW9uX2ZsYWcgPSAxOwogICAg
IH0KIAotICAgIEFMTE9DKCBzTFRQX1ExNSwKLSAgICAgICAgICAgcHNFbmNDLT5sdHBfbWVtX2xl
bmd0aCArIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoLCBvcHVzX2ludDMyICk7CisgICAgQUxMT0MoIHNM
VFBfUTE1LCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsgcHNFbmNDLT5mcmFtZV9sZW5ndGgsIG9w
dXNfaW50MzIgKTsKICAgICBBTExPQyggc0xUUCwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCArIHBz
RW5jQy0+ZnJhbWVfbGVuZ3RoLCBvcHVzX2ludDE2ICk7CiAgICAgQUxMT0MoIHhfc2NfUTEwLCBw
c0VuY0MtPnN1YmZyX2xlbmd0aCwgb3B1c19pbnQzMiApOwogICAgIC8qIFNldCB1cCBwb2ludGVy
cyB0byBzdGFydCBvZiBzdWIgZnJhbWUgKi8KQEAgLTEyOCw3ICsxMjcsNyBAQCB2b2lkIHNpbGtf
TlNRX2MKICAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmNDLT5uYl9zdWJmcjsgaysrICkgewogICAg
ICAgICBBX1ExMiAgICAgID0gJlByZWRDb2VmX1ExMlsgKCggayA+PiAxICkgfCAoIDEgLSBMU0Zf
aW50ZXJwb2xhdGlvbl9mbGFnICkpICogTUFYX0xQQ19PUkRFUiBdOwogICAgICAgICBCX1ExNCAg
ICAgID0gJkxUUENvZWZfUTE0WyBrICogTFRQX09SREVSIF07Ci0gICAgICAgIEFSX3NocF9RMTMg
PSAmQVIyX1ExM1sgICAgIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07CisgICAgICAgIEFSX3No
cF9RMTMgPSAmQVJfUTEzWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwogCiAgICAgICAgIC8q
IE5vaXNlIHNoYXBlIHBhcmFtZXRlcnMgKi8KICAgICAgICAgc2lsa19hc3NlcnQoIEhhcm1TaGFw
ZUdhaW5fUTE0WyBrIF0gPj0gMCApOwpAQCAtMTU0LDEzICsxNTMsMTMgQEAgdm9pZCBzaWxrX05T
UV9jCiAgICAgICAgICAgICB9CiAgICAgICAgIH0KIAotICAgICAgICBzaWxrX25zcV9zY2FsZV9z
dGF0ZXMoIHBzRW5jQywgTlNRLCB4X1EzLCB4X3NjX1ExMCwgc0xUUCwgc0xUUF9RMTUsIGssIExU
UF9zY2FsZV9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBwc0luZGljZXMtPnNpZ25hbFR5cGUgKTsK
KyAgICAgICAgc2lsa19uc3Ffc2NhbGVfc3RhdGVzKCBwc0VuY0MsIE5TUSwgeDE2LCB4X3NjX1Ex
MCwgc0xUUCwgc0xUUF9RMTUsIGssIExUUF9zY2FsZV9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBw
c0luZGljZXMtPnNpZ25hbFR5cGUgKTsKIAogICAgICAgICBzaWxrX25vaXNlX3NoYXBlX3F1YW50
aXplciggTlNRLCBwc0luZGljZXMtPnNpZ25hbFR5cGUsIHhfc2NfUTEwLCBwdWxzZXMsIHB4cSwg
c0xUUF9RMTUsIEFfUTEyLCBCX1ExNCwKICAgICAgICAgICAgIEFSX3NocF9RMTMsIGxhZywgSGFy
bVNoYXBlRklSUGFja2VkX1ExNCwgVGlsdF9RMTRbIGsgXSwgTEZfc2hwX1ExNFsgayBdLCBHYWlu
c19RMTZbIGsgXSwgTGFtYmRhX1ExMCwKICAgICAgICAgICAgIG9mZnNldF9RMTAsIHBzRW5jQy0+
c3ViZnJfbGVuZ3RoLCBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciwgcHNFbmNDLT5wcmVkaWN0TFBD
T3JkZXIsIHBzRW5jQy0+YXJjaCApOwogCi0gICAgICAgIHhfUTMgICArPSBwc0VuY0MtPnN1YmZy
X2xlbmd0aDsKKyAgICAgICAgeDE2ICAgICs9IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOwogICAgICAg
ICBwdWxzZXMgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7CiAgICAgICAgIHB4cSAgICArPSBwc0Vu
Y0MtPnN1YmZyX2xlbmd0aDsKICAgICB9CkBAIC0xNjksNyArMTY4LDYgQEAgdm9pZCBzaWxrX05T
UV9jCiAgICAgTlNRLT5sYWdQcmV2ID0gcGl0Y2hMWyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBdOwog
CiAgICAgLyogU2F2ZSBxdWFudGl6ZWQgc3BlZWNoIGFuZCBub2lzZSBzaGFwaW5nIHNpZ25hbHMg
Ki8KLSAgICAvKiBERUJVR19TVE9SRV9EQVRBKCBlbmMucGNtLCAmTlNRLT54cVsgcHNFbmNDLT5s
dHBfbWVtX2xlbmd0aCBdLCBwc0VuY0MtPmZyYW1lX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQx
NiApICkgKi8KICAgICBzaWxrX21lbW1vdmUoIE5TUS0+eHEsICAgICAgICAgICAmTlNRLT54cVsg
ICAgICAgICAgIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoIF0sIHBzRW5jQy0+bHRwX21lbV9sZW5ndGgg
KiBzaXplb2YoIG9wdXNfaW50MTYgKSApOwogICAgIHNpbGtfbWVtbW92ZSggTlNRLT5zTFRQX3No
cF9RMTQsICZOU1EtPnNMVFBfc2hwX1ExNFsgcHNFbmNDLT5mcmFtZV9sZW5ndGggXSwgcHNFbmND
LT5sdHBfbWVtX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQzMiApICk7CiAgICAgUkVTVE9SRV9T
VEFDSzsKQEAgLTI1MCw3ICsyNDgsNyBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVy
KAogCiAgICAgICAgIC8qIE5vaXNlIHNoYXBlIGZlZWRiYWNrICovCiAgICAgICAgIHNpbGtfYXNz
ZXJ0KCAoIHNoYXBpbmdMUENPcmRlciAmIDEgKSA9PSAwICk7ICAgLyogY2hlY2sgdGhhdCBvcmRl
ciBpcyBldmVuICovCi0gICAgICAgIG5fQVJfUTEyID0gc2lsa19OU1Ffbm9pc2Vfc2hhcGVfZmVl
ZGJhY2tfbG9vcChwc0xQQ19RMTQsIE5TUS0+c0FSMl9RMTQsIEFSX3NocF9RMTMsIHNoYXBpbmdM
UENPcmRlciwgYXJjaCk7CisgICAgICAgIG5fQVJfUTEyID0gc2lsa19OU1Ffbm9pc2Vfc2hhcGVf
ZmVlZGJhY2tfbG9vcCgmTlNRLT5zRGlmZl9zaHBfUTE0LCBOU1EtPnNBUjJfUTE0LCBBUl9zaHBf
UTEzLCBzaGFwaW5nTFBDT3JkZXIsIGFyY2gpOwogCiAgICAgICAgIG5fQVJfUTEyID0gc2lsa19T
TUxBV0IoIG5fQVJfUTEyLCBOU1EtPnNMRl9BUl9zaHBfUTE0LCBUaWx0X1ExNCApOwogCkBAIC0y
NzksMTQgKzI3NywyNyBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyKAogICAgICAg
ICByX1ExMCA9IHNpbGtfU1VCMzIoIHhfc2NfUTEwWyBpIF0sIHRtcDEgKTsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiByZXNpZHVhbCBlcnJvciBRMTAgKi8KIAogICAgICAgICAvKiBG
bGlwIHNpZ24gZGVwZW5kaW5nIG9uIGRpdGhlciAqLwotICAgICAgICBpZiAoIE5TUS0+cmFuZF9z
ZWVkIDwgMCApIHsKLSAgICAgICAgICAgcl9RMTAgPSAtcl9RMTA7CisgICAgICAgIGlmKCBOU1Et
PnJhbmRfc2VlZCA8IDAgKSB7CisgICAgICAgICAgICByX1ExMCA9IC1yX1ExMDsKICAgICAgICAg
fQogICAgICAgICByX1ExMCA9IHNpbGtfTElNSVRfMzIoIHJfUTEwLCAtKDMxIDw8IDEwKSwgMzAg
PDwgMTAgKTsKIAogICAgICAgICAvKiBGaW5kIHR3byBxdWFudGl6YXRpb24gbGV2ZWwgY2FuZGlk
YXRlcyBhbmQgbWVhc3VyZSB0aGVpciByYXRlLWRpc3RvcnRpb24gKi8KICAgICAgICAgcTFfUTEw
ID0gc2lsa19TVUIzMiggcl9RMTAsIG9mZnNldF9RMTAgKTsKICAgICAgICAgcTFfUTAgPSBzaWxr
X1JTSElGVCggcTFfUTEwLCAxMCApOworICAgICAgICBpZiAoTGFtYmRhX1ExMCA+IDIwNDgpIHsK
KyAgICAgICAgICAgIC8qIEZvciBhZ2dyZXNzaXZlIFJETywgdGhlIGJpYXMgYmVjb21lcyBtb3Jl
IHRoYW4gb25lIHB1bHNlLiAqLworICAgICAgICAgICAgaW50IHJkb19vZmZzZXQgPSBMYW1iZGFf
UTEwLzIgLSA1MTI7CisgICAgICAgICAgICBpZiAocTFfUTEwID4gcmRvX29mZnNldCkgeworICAg
ICAgICAgICAgICAgIHExX1EwID0gc2lsa19SU0hJRlQoIHExX1ExMCAtIHJkb19vZmZzZXQsIDEw
ICk7CisgICAgICAgICAgICB9IGVsc2UgaWYgKHExX1ExMCA8IC1yZG9fb2Zmc2V0KSB7CisgICAg
ICAgICAgICAgICAgcTFfUTAgPSBzaWxrX1JTSElGVCggcTFfUTEwICsgcmRvX29mZnNldCwgMTAg
KTsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAocTFfUTEwIDwgMCkgeworICAgICAgICAgICAgICAg
IHExX1EwID0gLTE7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHExX1Ew
ID0gMDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQogICAgICAgICBpZiggcTFfUTAgPiAwICkg
ewogICAgICAgICAgICAgcTFfUTEwICA9IHNpbGtfU1VCMzIoIHNpbGtfTFNISUZUKCBxMV9RMCwg
MTAgKSwgUVVBTlRfTEVWRUxfQURKVVNUX1ExMCApOwogICAgICAgICAgICAgcTFfUTEwICA9IHNp
bGtfQUREMzIoIHExX1ExMCwgb2Zmc2V0X1ExMCApOwpAQCAtMzM3LDcgKzM0OCw4IEBAIHZvaWQg
c2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXIoCiAgICAgICAgIC8qIFVwZGF0ZSBzdGF0ZXMgKi8K
ICAgICAgICAgcHNMUENfUTE0Kys7CiAgICAgICAgICpwc0xQQ19RMTQgPSB4cV9RMTQ7Ci0gICAg
ICAgIHNMRl9BUl9zaHBfUTE0ID0gc2lsa19TVUJfTFNISUZUMzIoIHhxX1ExNCwgbl9BUl9RMTIs
IDIgKTsKKyAgICAgICAgTlNRLT5zRGlmZl9zaHBfUTE0ID0gc2lsa19TVUJfTFNISUZUMzIoIHhx
X1ExNCwgeF9zY19RMTBbIGkgXSwgNCApOworICAgICAgICBzTEZfQVJfc2hwX1ExNCA9IHNpbGtf
U1VCX0xTSElGVDMyKCBOU1EtPnNEaWZmX3NocF9RMTQsIG5fQVJfUTEyLCAyICk7CiAgICAgICAg
IE5TUS0+c0xGX0FSX3NocF9RMTQgPSBzTEZfQVJfc2hwX1ExNDsKIAogICAgICAgICBOU1EtPnNM
VFBfc2hwX1ExNFsgTlNRLT5zTFRQX3NocF9idWZfaWR4IF0gPSBzaWxrX1NVQl9MU0hJRlQzMigg
c0xGX0FSX3NocF9RMTQsIG5fTEZfUTEyLCAyICk7CkBAIC0zNTYsNyArMzY4LDcgQEAgdm9pZCBz
aWxrX25vaXNlX3NoYXBlX3F1YW50aXplcigKIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtf
bnNxX3NjYWxlX3N0YXRlcygKICAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgKnBzRW5jQywg
ICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAg
IHNpbGtfbnNxX3N0YXRlICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Eg
c3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICB4
X1EzW10sICAgICAgICAgICAgICAgICAvKiBJICAgIGlucHV0IGluIFEzICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIHgxNltdLCAgICAgICAgICAgICAgICAg
IC8qIEkgICAgaW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50
MzIgICAgICAgICAgeF9zY19RMTBbXSwgICAgICAgICAgICAgLyogTyAgICBpbnB1dCBzY2FsZWQg
d2l0aCAxL0dhaW4gICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICBzTFRQW10sICAg
ICAgICAgICAgICAgICAvKiBJICAgIHJlLXdoaXRlbmVkIExUUCBzdGF0ZSBpbiBRMCAgICAgKi8K
ICAgICBvcHVzX2ludDMyICAgICAgICAgIHNMVFBfUTE1W10sICAgICAgICAgICAgIC8qIE8gICAg
TFRQIHN0YXRlIG1hdGNoaW5nIHNjYWxlZCBpbnB1dCAqLwpAQCAtMzY4LDI4ICszODAsMTggQEAg
c3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3Ffc2NhbGVfc3RhdGVzKAogKQogewogICAg
IG9wdXNfaW50ICAgaSwgbGFnOwotICAgIG9wdXNfaW50MzIgZ2Fpbl9hZGpfUTE2LCBpbnZfZ2Fp
bl9RMzEsIGludl9nYWluX1EyMzsKKyAgICBvcHVzX2ludDMyIGdhaW5fYWRqX1ExNiwgaW52X2dh
aW5fUTMxLCBpbnZfZ2Fpbl9RMjY7CiAKICAgICBsYWcgICAgICAgICAgPSBwaXRjaExbIHN1YmZy
IF07CiAgICAgaW52X2dhaW5fUTMxID0gc2lsa19JTlZFUlNFMzJfdmFyUSggc2lsa19tYXgoIEdh
aW5zX1ExNlsgc3ViZnIgXSwgMSApLCA0NyApOwogICAgIHNpbGtfYXNzZXJ0KCBpbnZfZ2Fpbl9R
MzEgIT0gMCApOwogCi0gICAgLyogQ2FsY3VsYXRlIGdhaW4gYWRqdXN0bWVudCBmYWN0b3IgKi8K
LSAgICBpZiggR2FpbnNfUTE2WyBzdWJmciBdICE9IE5TUS0+cHJldl9nYWluX1ExNiApIHsKLSAg
ICAgICAgZ2Fpbl9hZGpfUTE2ID0gIHNpbGtfRElWMzJfdmFyUSggTlNRLT5wcmV2X2dhaW5fUTE2
LCBHYWluc19RMTZbIHN1YmZyIF0sIDE2ICk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgZ2Fpbl9h
ZGpfUTE2ID0gKG9wdXNfaW50MzIpMSA8PCAxNjsKLSAgICB9Ci0KICAgICAvKiBTY2FsZSBpbnB1
dCAqLwotICAgIGludl9nYWluX1EyMyA9IHNpbGtfUlNISUZUX1JPVU5EKCBpbnZfZ2Fpbl9RMzEs
IDggKTsKKyAgICBpbnZfZ2Fpbl9RMjYgPSBzaWxrX1JTSElGVF9ST1VORCggaW52X2dhaW5fUTMx
LCA1ICk7CiAgICAgZm9yKCBpID0gMDsgaSA8IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOyBpKysgKSB7
Ci0gICAgICAgIHhfc2NfUTEwWyBpIF0gPSBzaWxrX1NNVUxXVyggeF9RM1sgaSBdLCBpbnZfZ2Fp
bl9RMjMgKTsKKyAgICAgICAgeF9zY19RMTBbIGkgXSA9IHNpbGtfU01VTFdXKCB4MTZbIGkgXSwg
aW52X2dhaW5fUTI2ICk7CiAgICAgfQogCi0gICAgLyogU2F2ZSBpbnZlcnNlIGdhaW4gKi8KLSAg
ICBOU1EtPnByZXZfZ2Fpbl9RMTYgPSBHYWluc19RMTZbIHN1YmZyIF07Ci0KICAgICAvKiBBZnRl
ciByZXdoaXRlbmluZyB0aGUgTFRQIHN0YXRlIGlzIHVuLXNjYWxlZCwgc28gc2NhbGUgd2l0aCBp
bnZfZ2Fpbl9RMTYgKi8KICAgICBpZiggTlNRLT5yZXdoaXRlX2ZsYWcgKSB7CiAgICAgICAgIGlm
KCBzdWJmciA9PSAwICkgewpAQCAtNDAzLDcgKzQwNSw5IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2
b2lkIHNpbGtfbnNxX3NjYWxlX3N0YXRlcygKICAgICB9CiAKICAgICAvKiBBZGp1c3QgZm9yIGNo
YW5naW5nIGdhaW4gKi8KLSAgICBpZiggZ2Fpbl9hZGpfUTE2ICE9IChvcHVzX2ludDMyKTEgPDwg
MTYgKSB7CisgICAgaWYoIEdhaW5zX1ExNlsgc3ViZnIgXSAhPSBOU1EtPnByZXZfZ2Fpbl9RMTYg
KSB7CisgICAgICAgIGdhaW5fYWRqX1ExNiA9ICBzaWxrX0RJVjMyX3ZhclEoIE5TUS0+cHJldl9n
YWluX1ExNiwgR2FpbnNfUTE2WyBzdWJmciBdLCAxNiApOworCiAgICAgICAgIC8qIFNjYWxlIGxv
bmctdGVybSBzaGFwaW5nIHN0YXRlICovCiAgICAgICAgIGZvciggaSA9IE5TUS0+c0xUUF9zaHBf
YnVmX2lkeCAtIHBzRW5jQy0+bHRwX21lbV9sZW5ndGg7IGkgPCBOU1EtPnNMVFBfc2hwX2J1Zl9p
ZHg7IGkrKyApIHsKICAgICAgICAgICAgIE5TUS0+c0xUUF9zaHBfUTE0WyBpIF0gPSBzaWxrX1NN
VUxXVyggZ2Fpbl9hZGpfUTE2LCBOU1EtPnNMVFBfc2hwX1ExNFsgaSBdICk7CkBAIC00MTcsNiAr
NDIxLDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3Ffc2NhbGVfc3RhdGVzKAog
ICAgICAgICB9CiAKICAgICAgICAgTlNRLT5zTEZfQVJfc2hwX1ExNCA9IHNpbGtfU01VTFdXKCBn
YWluX2Fkal9RMTYsIE5TUS0+c0xGX0FSX3NocF9RMTQgKTsKKyAgICAgICAgTlNRLT5zRGlmZl9z
aHBfUTE0ID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgTlNRLT5zRGlmZl9zaHBfUTE0ICk7
CiAKICAgICAgICAgLyogU2NhbGUgc2hvcnQtdGVybSBwcmVkaWN0aW9uIGFuZCBzaGFwaW5nIHN0
YXRlcyAqLwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTlNRX0xQQ19CVUZfTEVOR1RIOyBpKysg
KSB7CkBAIC00MjUsNSArNDMwLDggQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19uc3Ff
c2NhbGVfc3RhdGVzKAogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTUFYX1NIQVBFX0xQQ19PUkRF
UjsgaSsrICkgewogICAgICAgICAgICAgTlNRLT5zQVIyX1ExNFsgaSBdID0gc2lsa19TTVVMV1co
IGdhaW5fYWRqX1ExNiwgTlNRLT5zQVIyX1ExNFsgaSBdICk7CiAgICAgICAgIH0KKworICAgICAg
ICAvKiBTYXZlIGludmVyc2UgZ2FpbiAqLworICAgICAgICBOU1EtPnByZXZfZ2Fpbl9RMTYgPSBH
YWluc19RMTZbIHN1YmZyIF07CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL05TUV9kZWxfZGVj
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvTlNRX2RlbF9kZWMuYwppbmRleCBhYjZmZWVhYzk4NzAyYWJhYTU2ZTEyMDQzYTU1
ZTlhMjVmOTZkZmZjLi41OTllMjVmMWM4YmJmM2NiYTk4OGY2NjBhNjEwNjRhODY2NWU2YjY3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvTlNRX2RlbF9kZWMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvTlNRX2RlbF9kZWMuYwpAQCAt
NDMsNiArNDMsNyBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1c19pbnQzMiBTaGFwZV9RMTRb
IERFQ0lTSU9OX0RFTEFZIF07CiAgICAgb3B1c19pbnQzMiBzQVIyX1ExNFsgTUFYX1NIQVBFX0xQ
Q19PUkRFUiBdOwogICAgIG9wdXNfaW50MzIgTEZfQVJfUTE0OworICAgIG9wdXNfaW50MzIgRGlm
Zl9RMTQ7CiAgICAgb3B1c19pbnQzMiBTZWVkOwogICAgIG9wdXNfaW50MzIgU2VlZEluaXQ7CiAg
ICAgb3B1c19pbnQzMiBSRF9RMTA7CkBAIC01Myw2ICs1NCw3IEBAIHR5cGVkZWYgc3RydWN0IHsK
ICAgICBvcHVzX2ludDMyIFJEX1ExMDsKICAgICBvcHVzX2ludDMyIHhxX1ExNDsKICAgICBvcHVz
X2ludDMyIExGX0FSX1ExNDsKKyAgICBvcHVzX2ludDMyIERpZmZfUTE0OwogICAgIG9wdXNfaW50
MzIgc0xUUF9zaHBfUTE0OwogICAgIG9wdXNfaW50MzIgTFBDX2V4Y19RMTQ7CiB9IE5TUV9zYW1w
bGVfc3RydWN0OwpAQCAtNjYsNyArNjgsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxr
X25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlcygKICAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUg
KnBzRW5jQywgICAgICAgICAgICAgICAvKiBJICAgIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAqTlNRLCAgICAgICAgICAgICAg
ICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIE5TUV9kZWxfZGVjX3N0cnVjdCAgcHNEZWxEZWNbXSwgICAgICAgICAgICAgICAgIC8qIEkv
TyAgRGVsYXllZCBkZWNpc2lvbiBzdGF0ZXMgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVz
X2ludDMyICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IGluIFEz
ICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICB4MTZb
XSwgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgeF9zY19RMTBbXSwgICAgICAg
ICAgICAgICAgIC8qIE8gICAgSW5wdXQgc2NhbGVkIHdpdGggMS9HYWluIGluIFExMCAgICAgKi8K
ICAgICBjb25zdCBvcHVzX2ludDE2ICAgIHNMVFBbXSwgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIFJlLXdoaXRlbmVkIExUUCBzdGF0ZSBpbiBRMCAgICAgICAgICovCiAgICAgb3B1c19pbnQz
MiAgICAgICAgICBzTFRQX1ExNVtdLCAgICAgICAgICAgICAgICAgLyogTyAgICBMVFAgc3RhdGUg
bWF0Y2hpbmcgc2NhbGVkIGlucHV0ICAgICAqLwpAQCAtMTA3LDIwICsxMDksMjAgQEAgc3RhdGlj
IE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlYygKICAg
ICBvcHVzX2ludCAgICAgICAgICAgIHByZWRpY3RMUENPcmRlciwgICAgICAgIC8qIEkgICAgUHJl
ZGljdGlvbiBmaWx0ZXIgb3JkZXIgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAg
ICAgIHdhcnBpbmdfUTE2LCAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgIG5TdGF0ZXNEZWxheWVk
RGVjaXNpb24sIC8qIEkgICAgTnVtYmVyIG9mIHN0YXRlcyBpbiBkZWNpc2lvbiB0cmVlICAgKi8K
LSAgICBvcHVzX2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkgICAg
SW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAgKi8KKyAgICBvcHVzX2ludCAgICAg
ICAgICAgICpzbXBsX2J1Zl9pZHgsICAgICAgICAgIC8qIEkvTyAgSW5kZXggdG8gbmV3ZXN0IHNh
bXBsZXMgaW4gYnVmZmVycyAgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgIGRlY2lzaW9uRGVs
YXksICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICAgICBpbnQgICAgICAgICAgICAgICAgIGFyY2ggICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKIHZvaWQgc2ls
a19OU1FfZGVsX2RlY19jKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmND
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0
ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAq
cHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2Rl
ciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAg
ICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAg
TlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAg
ICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNf
aW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLworICAgIGNvbnN0
IG9wdXNfaW50MTYgICAgICAgICAgICB4MTZbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgIHB1bHNlc1tdLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogTyAgICBRdWFudGl6ZWQgcHVsc2Ugc2lnbmFsICAgICAgICAg
ICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIFByZWRDb2VmX1ExMlsgMiAqIE1B
WF9MUENfT1JERVIgXSwgICAgICAgICAgLyogSSAgICBTaG9ydCB0ZXJtIHByZWRpY3Rpb24gY29l
ZnMgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIExUUENvZWZfUTE0WyBM
VFBfT1JERVIgKiBNQVhfTkJfU1VCRlIgXSwgICAgLyogSSAgICBMb25nIHRlcm0gcHJlZGljdGlv
biBjb2VmcyAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFSMl9RMTNb
IE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSBOb2lzZSBzaGFwaW5n
IGNvZWZzICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIEFS
X1ExM1sgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAvKiBJIE5vaXNlIHNo
YXBpbmcgY29lZnMgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICAgIEhhcm1TaGFwZUdhaW5fUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgLyogSSAgICBM
b25nIHRlcm0gc2hhcGluZyBjb2VmcyAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICAgIFRpbHRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAgLyog
SSAgICBTcGVjdHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19p
bnQzMiAgICAgICAgICAgIExGX3NocF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAg
ICAgLyogSSAgICBMb3cgZnJlcXVlbmN5IHNoYXBpbmcgY29lZnMgICAgICovCkBAIC0xNTksNiAr
MTYxLDcgQEAgdm9pZCBzaWxrX05TUV9kZWxfZGVjX2MoCiAgICAgICAgIHBzREQtPlNlZWRJbml0
ICAgICAgID0gcHNERC0+U2VlZDsKICAgICAgICAgcHNERC0+UkRfUTEwICAgICAgICAgPSAwOwog
ICAgICAgICBwc0RELT5MRl9BUl9RMTQgICAgICA9IE5TUS0+c0xGX0FSX3NocF9RMTQ7CisgICAg
ICAgIHBzREQtPkRpZmZfUTE0ICAgICAgID0gTlNRLT5zRGlmZl9zaHBfUTE0OwogICAgICAgICBw
c0RELT5TaGFwZV9RMTRbIDAgXSA9IE5TUS0+c0xUUF9zaHBfUTE0WyBwc0VuY0MtPmx0cF9tZW1f
bGVuZ3RoIC0gMSBdOwogICAgICAgICBzaWxrX21lbWNweSggcHNERC0+c0xQQ19RMTQsIE5TUS0+
c0xQQ19RMTQsIE5TUV9MUENfQlVGX0xFTkdUSCAqIHNpemVvZiggb3B1c19pbnQzMiApICk7CiAg
ICAgICAgIHNpbGtfbWVtY3B5KCBwc0RELT5zQVIyX1ExNCwgTlNRLT5zQVIyX1ExNCwgc2l6ZW9m
KCBOU1EtPnNBUjJfUTE0ICkgKTsKQEAgLTE4Niw4ICsxODksNyBAQCB2b2lkIHNpbGtfTlNRX2Rl
bF9kZWNfYygKICAgICAgICAgTFNGX2ludGVycG9sYXRpb25fZmxhZyA9IDE7CiAgICAgfQogCi0g
ICAgQUxMT0MoIHNMVFBfUTE1LAotICAgICAgICAgICBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsg
cHNFbmNDLT5mcmFtZV9sZW5ndGgsIG9wdXNfaW50MzIgKTsKKyAgICBBTExPQyggc0xUUF9RMTUs
IHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKyBwc0VuY0MtPmZyYW1lX2xlbmd0aCwgb3B1c19pbnQz
MiApOwogICAgIEFMTE9DKCBzTFRQLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICsgcHNFbmNDLT5m
cmFtZV9sZW5ndGgsIG9wdXNfaW50MTYgKTsKICAgICBBTExPQyggeF9zY19RMTAsIHBzRW5jQy0+
c3ViZnJfbGVuZ3RoLCBvcHVzX2ludDMyICk7CiAgICAgQUxMT0MoIGRlbGF5ZWRHYWluX1ExMCwg
REVDSVNJT05fREVMQVksIG9wdXNfaW50MzIgKTsKQEAgLTE5OSw3ICsyMDEsNyBAQCB2b2lkIHNp
bGtfTlNRX2RlbF9kZWNfYygKICAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmNDLT5uYl9zdWJmcjsg
aysrICkgewogICAgICAgICBBX1ExMiAgICAgID0gJlByZWRDb2VmX1ExMlsgKCAoIGsgPj4gMSAp
IHwgKCAxIC0gTFNGX2ludGVycG9sYXRpb25fZmxhZyApICkgKiBNQVhfTFBDX09SREVSIF07CiAg
ICAgICAgIEJfUTE0ICAgICAgPSAmTFRQQ29lZl9RMTRbIGsgKiBMVFBfT1JERVIgICAgICAgICAg
IF07Ci0gICAgICAgIEFSX3NocF9RMTMgPSAmQVIyX1ExM1sgICAgIGsgKiBNQVhfU0hBUEVfTFBD
X09SREVSIF07CisgICAgICAgIEFSX3NocF9RMTMgPSAmQVJfUTEzWyAgICAgayAqIE1BWF9TSEFQ
RV9MUENfT1JERVIgXTsKIAogICAgICAgICAvKiBOb2lzZSBzaGFwZSBwYXJhbWV0ZXJzICovCiAg
ICAgICAgIHNpbGtfYXNzZXJ0KCBIYXJtU2hhcGVHYWluX1ExNFsgayBdID49IDAgKTsKQEAgLTIz
NSw3ICsyMzcsOCBAQCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfYygKICAgICAgICAgICAgICAgICAg
ICAgcHNERCA9ICZwc0RlbERlY1sgV2lubmVyX2luZCBdOwogICAgICAgICAgICAgICAgICAgICBs
YXN0X3NtcGxlX2lkeCA9IHNtcGxfYnVmX2lkeCArIGRlY2lzaW9uRGVsYXk7CiAgICAgICAgICAg
ICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBkZWNpc2lvbkRlbGF5OyBpKysgKSB7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICBsYXN0X3NtcGxlX2lkeCA9ICggbGFzdF9zbXBsZV9pZHggLSAxICkg
JiBERUNJU0lPTl9ERUxBWV9NQVNLOworICAgICAgICAgICAgICAgICAgICAgICAgbGFzdF9zbXBs
ZV9pZHggPSAoIGxhc3Rfc21wbGVfaWR4IC0gMSApICUgREVDSVNJT05fREVMQVk7CisgICAgICAg
ICAgICAgICAgICAgICAgICBpZiggbGFzdF9zbXBsZV9pZHggPCAwICkgbGFzdF9zbXBsZV9pZHgg
Kz0gREVDSVNJT05fREVMQVk7CiAgICAgICAgICAgICAgICAgICAgICAgICBwdWxzZXNbICAgaSAt
IGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDgpc2lsa19SU0hJRlRfUk9VTkQoIHBzREQtPlFf
UTEwWyBsYXN0X3NtcGxlX2lkeCBdLCAxMCApOwogICAgICAgICAgICAgICAgICAgICAgICAgcHhx
WyBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJ
RlRfUk9VTkQoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2lsa19TTVVMV1coIHBzREQt
PlhxX1ExNFsgbGFzdF9zbXBsZV9pZHggXSwgR2FpbnNfUTE2WyAxIF0gKSwgMTQgKSApOwpAQCAt
MjU3LDcgKzI2MCw3IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAogICAgICAgICAgICAgfQog
ICAgICAgICB9CiAKLSAgICAgICAgc2lsa19uc3FfZGVsX2RlY19zY2FsZV9zdGF0ZXMoIHBzRW5j
QywgTlNRLCBwc0RlbERlYywgeF9RMywgeF9zY19RMTAsIHNMVFAsIHNMVFBfUTE1LCBrLAorICAg
ICAgICBzaWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlcyggcHNFbmNDLCBOU1EsIHBzRGVsRGVj
LCB4MTYsIHhfc2NfUTEwLCBzTFRQLCBzTFRQX1ExNSwgaywKICAgICAgICAgICAgIHBzRW5jQy0+
blN0YXRlc0RlbGF5ZWREZWNpc2lvbiwgTFRQX3NjYWxlX1ExNCwgR2FpbnNfUTE2LCBwaXRjaEws
IHBzSW5kaWNlcy0+c2lnbmFsVHlwZSwgZGVjaXNpb25EZWxheSApOwogCiAgICAgICAgIHNpbGtf
bm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWMoIE5TUSwgcHNEZWxEZWMsIHBzSW5kaWNlcy0+
c2lnbmFsVHlwZSwgeF9zY19RMTAsIHB1bHNlcywgcHhxLCBzTFRQX1ExNSwKQEAgLTI2NSw3ICsy
NjgsNyBAQCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfYygKICAgICAgICAgICAgIEdhaW5zX1ExNlsg
ayBdLCBMYW1iZGFfUTEwLCBvZmZzZXRfUTEwLCBwc0VuY0MtPnN1YmZyX2xlbmd0aCwgc3ViZnIr
KywgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIsCiAgICAgICAgICAgICBwc0VuY0MtPnByZWRpY3RM
UENPcmRlciwgcHNFbmNDLT53YXJwaW5nX1ExNiwgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lz
aW9uLCAmc21wbF9idWZfaWR4LCBkZWNpc2lvbkRlbGF5LCBwc0VuY0MtPmFyY2ggKTsKIAotICAg
ICAgICB4X1EzICAgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7CisgICAgICAgIHgxNiAgICArPSBw
c0VuY0MtPnN1YmZyX2xlbmd0aDsKICAgICAgICAgcHVsc2VzICs9IHBzRW5jQy0+c3ViZnJfbGVu
Z3RoOwogICAgICAgICBweHEgICAgKz0gcHNFbmNDLT5zdWJmcl9sZW5ndGg7CiAgICAgfQpAQCAt
Mjg2LDcgKzI4OSw5IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAogICAgIGxhc3Rfc21wbGVf
aWR4ID0gc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheTsKICAgICBHYWluX1ExMCA9IHNpbGtf
UlNISUZUMzIoIEdhaW5zX1ExNlsgcHNFbmNDLT5uYl9zdWJmciAtIDEgXSwgNiApOwogICAgIGZv
ciggaSA9IDA7IGkgPCBkZWNpc2lvbkRlbGF5OyBpKysgKSB7Ci0gICAgICAgIGxhc3Rfc21wbGVf
aWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAmIERFQ0lTSU9OX0RFTEFZX01BU0s7CisgICAg
ICAgIGxhc3Rfc21wbGVfaWR4ID0gKCBsYXN0X3NtcGxlX2lkeCAtIDEgKSAlIERFQ0lTSU9OX0RF
TEFZOworICAgICAgICBpZiggbGFzdF9zbXBsZV9pZHggPCAwICkgbGFzdF9zbXBsZV9pZHggKz0g
REVDSVNJT05fREVMQVk7CisKICAgICAgICAgcHVsc2VzWyAgIGkgLSBkZWNpc2lvbkRlbGF5IF0g
PSAob3B1c19pbnQ4KXNpbGtfUlNISUZUX1JPVU5EKCBwc0RELT5RX1ExMFsgbGFzdF9zbXBsZV9p
ZHggXSwgMTAgKTsKICAgICAgICAgcHhxWyBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50
MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQoCiAgICAgICAgICAgICBzaWxrX1NNVUxX
VyggcHNERC0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCBdLCBHYWluX1ExMCApLCA4ICkgKTsKQEAg
LTI5NywxMCArMzAyLDEwIEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAogCiAgICAgLyogVXBk
YXRlIHN0YXRlcyAqLwogICAgIE5TUS0+c0xGX0FSX3NocF9RMTQgPSBwc0RELT5MRl9BUl9RMTQ7
CisgICAgTlNRLT5zRGlmZl9zaHBfUTE0ICA9IHBzREQtPkRpZmZfUTE0OwogICAgIE5TUS0+bGFn
UHJldiAgICAgICAgPSBwaXRjaExbIHBzRW5jQy0+bmJfc3ViZnIgLSAxIF07CiAKICAgICAvKiBT
YXZlIHF1YW50aXplZCBzcGVlY2ggc2lnbmFsICovCi0gICAgLyogREVCVUdfU1RPUkVfREFUQSgg
ZW5jLnBjbSwgJk5TUS0+eHFbcHNFbmNDLT5sdHBfbWVtX2xlbmd0aF0sIHBzRW5jQy0+ZnJhbWVf
bGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKSAqLwogICAgIHNpbGtfbWVtbW92ZSggTlNR
LT54cSwgICAgICAgICAgICZOU1EtPnhxWyAgICAgICAgICAgcHNFbmNDLT5mcmFtZV9sZW5ndGgg
XSwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CiAgICAg
c2lsa19tZW1tb3ZlKCBOU1EtPnNMVFBfc2hwX1ExNCwgJk5TUS0+c0xUUF9zaHBfUTE0WyBwc0Vu
Y0MtPmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICogc2l6ZW9mKCBvcHVz
X2ludDMyICkgKTsKICAgICBSRVNUT1JFX1NUQUNLOwpAQCAtMzM1LDcgKzM0MCw3IEBAIHN0YXRp
YyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWMoCiAg
ICAgb3B1c19pbnQgICAgICAgICAgICBwcmVkaWN0TFBDT3JkZXIsICAgICAgICAvKiBJICAgIFBy
ZWRpY3Rpb24gZmlsdGVyIG9yZGVyICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAg
ICAgICB3YXJwaW5nX1ExNiwgICAgICAgICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICBuU3RhdGVzRGVsYXll
ZERlY2lzaW9uLCAvKiBJICAgIE51bWJlciBvZiBzdGF0ZXMgaW4gZGVjaXNpb24gdHJlZSAgICov
Ci0gICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9idWZfaWR4LCAgICAgICAgICAvKiBJICAg
IEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZlcnMgICovCisgICAgb3B1c19pbnQgICAg
ICAgICAgICAqc21wbF9idWZfaWR4LCAgICAgICAgICAvKiBJL08gIEluZGV4IHRvIG5ld2VzdCBz
YW1wbGVzIGluIGJ1ZmZlcnMgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICBkZWNpc2lvbkRl
bGF5LCAgICAgICAgICAvKiBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCiAgICAgaW50ICAgICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCkBAIC0zODksNyAr
Mzk0LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6
ZXJfZGVsX2RlYygKICAgICAgICAgLyogTG9uZy10ZXJtIHNoYXBpbmcgKi8KICAgICAgICAgaWYo
IGxhZyA+IDAgKSB7CiAgICAgICAgICAgICAvKiBTeW1tZXRyaWMsIHBhY2tlZCBGSVIgY29lZmZp
Y2llbnRzICovCi0gICAgICAgICAgICBuX0xUUF9RMTQgPSBzaWxrX1NNVUxXQiggc2lsa19BREQz
Miggc2hwX2xhZ19wdHJbIDAgXSwgc2hwX2xhZ19wdHJbIC0yIF0gKSwgSGFybVNoYXBlRklSUGFj
a2VkX1ExNCApOworICAgICAgICAgICAgbl9MVFBfUTE0ID0gc2lsa19TTVVMV0IoIHNpbGtfQURE
X1NBVDMyKCBzaHBfbGFnX3B0clsgMCBdLCBzaHBfbGFnX3B0clsgLTIgXSApLCBIYXJtU2hhcGVG
SVJQYWNrZWRfUTE0ICk7CiAgICAgICAgICAgICBuX0xUUF9RMTQgPSBzaWxrX1NNTEFXVCggbl9M
VFBfUTE0LCBzaHBfbGFnX3B0clsgLTEgXSwgICAgICAgICAgICAgICAgICAgICAgSGFybVNoYXBl
RklSUGFja2VkX1ExNCApOwogICAgICAgICAgICAgbl9MVFBfUTE0ID0gc2lsa19TVUJfTFNISUZU
MzIoIExUUF9wcmVkX1ExNCwgbl9MVFBfUTE0LCAyICk7ICAgICAgICAgICAgLyogUTEyIC0+IFEx
NCAqLwogICAgICAgICAgICAgc2hwX2xhZ19wdHIrKzsKQEAgLTQxNiw3ICs0MjEsNyBAQCBzdGF0
aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAog
ICAgICAgICAgICAgLyogTm9pc2Ugc2hhcGUgZmVlZGJhY2sgKi8KICAgICAgICAgICAgIHNpbGtf
YXNzZXJ0KCAoIHNoYXBpbmdMUENPcmRlciAmIDEgKSA9PSAwICk7ICAgLyogY2hlY2sgdGhhdCBv
cmRlciBpcyBldmVuICovCiAgICAgICAgICAgICAvKiBPdXRwdXQgb2YgbG93cGFzcyBzZWN0aW9u
ICovCi0gICAgICAgICAgICB0bXAyID0gc2lsa19TTUxBV0IoIHBzTFBDX1ExNFsgMCBdLCBwc0RE
LT5zQVIyX1ExNFsgMCBdLCB3YXJwaW5nX1ExNiApOworICAgICAgICAgICAgdG1wMiA9IHNpbGtf
U01MQVdCKCBwc0RELT5EaWZmX1ExNCwgcHNERC0+c0FSMl9RMTRbIDAgXSwgd2FycGluZ19RMTYg
KTsKICAgICAgICAgICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNlY3Rpb24gKi8KICAgICAgICAg
ICAgIHRtcDEgPSBzaWxrX1NNTEFXQiggcHNERC0+c0FSMl9RMTRbIDAgXSwgcHNERC0+c0FSMl9R
MTRbIDEgXSAtIHRtcDIsIHdhcnBpbmdfUTE2ICk7CiAgICAgICAgICAgICBwc0RELT5zQVIyX1Ex
NFsgMCBdID0gdG1wMjsKQEAgLTQ2Miw2ICs0NjcsMTkgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZv
aWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlYygKICAgICAgICAgICAgIC8qIEZp
bmQgdHdvIHF1YW50aXphdGlvbiBsZXZlbCBjYW5kaWRhdGVzIGFuZCBtZWFzdXJlIHRoZWlyIHJh
dGUtZGlzdG9ydGlvbiAqLwogICAgICAgICAgICAgcTFfUTEwID0gc2lsa19TVUIzMiggcl9RMTAs
IG9mZnNldF9RMTAgKTsKICAgICAgICAgICAgIHExX1EwID0gc2lsa19SU0hJRlQoIHExX1ExMCwg
MTAgKTsKKyAgICAgICAgICAgIGlmIChMYW1iZGFfUTEwID4gMjA0OCkgeworICAgICAgICAgICAg
ICAgIC8qIEZvciBhZ2dyZXNzaXZlIFJETywgdGhlIGJpYXMgYmVjb21lcyBtb3JlIHRoYW4gb25l
IHB1bHNlLiAqLworICAgICAgICAgICAgICAgIGludCByZG9fb2Zmc2V0ID0gTGFtYmRhX1ExMC8y
IC0gNTEyOworICAgICAgICAgICAgICAgIGlmIChxMV9RMTAgPiByZG9fb2Zmc2V0KSB7CisgICAg
ICAgICAgICAgICAgICAgIHExX1EwID0gc2lsa19SU0hJRlQoIHExX1ExMCAtIHJkb19vZmZzZXQs
IDEwICk7CisgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChxMV9RMTAgPCAtcmRvX29mZnNldCkg
eworICAgICAgICAgICAgICAgICAgICBxMV9RMCA9IHNpbGtfUlNISUZUKCBxMV9RMTAgKyByZG9f
b2Zmc2V0LCAxMCApOworICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocTFfUTEwIDwgMCkgewor
ICAgICAgICAgICAgICAgICAgICBxMV9RMCA9IC0xOworICAgICAgICAgICAgICAgIH0gZWxzZSB7
CisgICAgICAgICAgICAgICAgICAgIHExX1EwID0gMDsKKyAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICB9CiAgICAgICAgICAgICBpZiggcTFfUTAgPiAwICkgewogICAgICAgICAgICAgICAg
IHExX1ExMCAgPSBzaWxrX1NVQjMyKCBzaWxrX0xTSElGVCggcTFfUTAsIDEwICksIFFVQU5UX0xF
VkVMX0FESlVTVF9RMTAgKTsKICAgICAgICAgICAgICAgICBxMV9RMTAgID0gc2lsa19BREQzMigg
cTFfUTEwLCBvZmZzZXRfUTEwICk7CkBAIC01MTUsNyArNTMzLDggQEAgc3RhdGljIE9QVVNfSU5M
SU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlYygKICAgICAgICAgICAg
IHhxX1ExNCAgICAgID0gc2lsa19BREQzMiggTFBDX2V4Y19RMTQsIExQQ19wcmVkX1ExNCApOwog
CiAgICAgICAgICAgICAvKiBVcGRhdGUgc3RhdGVzICovCi0gICAgICAgICAgICBzTEZfQVJfc2hw
X1ExNCAgICAgICAgID0gc2lsa19TVUIzMiggeHFfUTE0LCBuX0FSX1ExNCApOworICAgICAgICAg
ICAgcHNTU1sgMCBdLkRpZmZfUTE0ICAgICA9IHNpbGtfU1VCX0xTSElGVDMyKCB4cV9RMTQsIHhf
UTEwWyBpIF0sIDQgKTsKKyAgICAgICAgICAgIHNMRl9BUl9zaHBfUTE0ICAgICAgICAgPSBzaWxr
X1NVQjMyKCBwc1NTWyAwIF0uRGlmZl9RMTQsIG5fQVJfUTE0ICk7CiAgICAgICAgICAgICBwc1NT
WyAwIF0uc0xUUF9zaHBfUTE0ID0gc2lsa19TVUIzMiggc0xGX0FSX3NocF9RMTQsIG5fTEZfUTE0
ICk7CiAgICAgICAgICAgICBwc1NTWyAwIF0uTEZfQVJfUTE0ICAgID0gc0xGX0FSX3NocF9RMTQ7
CiAgICAgICAgICAgICBwc1NTWyAwIF0uTFBDX2V4Y19RMTQgID0gTFBDX2V4Y19RMTQ7CkBAIC01
MjksMjEgKzU0OCwyMiBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25vaXNlX3NoYXBl
X3F1YW50aXplcl9kZWxfZGVjKAogICAgICAgICAgICAgICAgIGV4Y19RMTQgPSAtZXhjX1ExNDsK
ICAgICAgICAgICAgIH0KIAotCiAgICAgICAgICAgICAvKiBBZGQgcHJlZGljdGlvbnMgKi8KICAg
ICAgICAgICAgIExQQ19leGNfUTE0ID0gc2lsa19BREQzMiggZXhjX1ExNCwgTFRQX3ByZWRfUTE0
ICk7CiAgICAgICAgICAgICB4cV9RMTQgICAgICA9IHNpbGtfQUREMzIoIExQQ19leGNfUTE0LCBM
UENfcHJlZF9RMTQgKTsKIAogICAgICAgICAgICAgLyogVXBkYXRlIHN0YXRlcyAqLwotICAgICAg
ICAgICAgc0xGX0FSX3NocF9RMTQgICAgICAgICA9IHNpbGtfU1VCMzIoIHhxX1ExNCwgbl9BUl9R
MTQgKTsKKyAgICAgICAgICAgIHBzU1NbIDEgXS5EaWZmX1ExNCAgICAgPSBzaWxrX1NVQl9MU0hJ
RlQzMiggeHFfUTE0LCB4X1ExMFsgaSBdLCA0ICk7CisgICAgICAgICAgICBzTEZfQVJfc2hwX1Ex
NCAgICAgICAgID0gc2lsa19TVUIzMiggcHNTU1sgMSBdLkRpZmZfUTE0LCBuX0FSX1ExNCApOwog
ICAgICAgICAgICAgcHNTU1sgMSBdLnNMVFBfc2hwX1ExNCA9IHNpbGtfU1VCMzIoIHNMRl9BUl9z
aHBfUTE0LCBuX0xGX1ExNCApOwogICAgICAgICAgICAgcHNTU1sgMSBdLkxGX0FSX1ExNCAgICA9
IHNMRl9BUl9zaHBfUTE0OwogICAgICAgICAgICAgcHNTU1sgMSBdLkxQQ19leGNfUTE0ICA9IExQ
Q19leGNfUTE0OwogICAgICAgICAgICAgcHNTU1sgMSBdLnhxX1ExNCAgICAgICA9IHhxX1ExNDsK
ICAgICAgICAgfQogCi0gICAgICAgICpzbXBsX2J1Zl9pZHggID0gKCAqc21wbF9idWZfaWR4IC0g
MSApICYgREVDSVNJT05fREVMQVlfTUFTSzsgICAgICAgICAgICAgICAgICAgLyogSW5kZXggdG8g
bmV3ZXN0IHNhbXBsZXMgICAgICAgICAgICAgICovCi0gICAgICAgIGxhc3Rfc21wbGVfaWR4ID0g
KCAqc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheSApICYgREVDSVNJT05fREVMQVlfTUFTSzsg
ICAgICAgLyogSW5kZXggdG8gZGVjaXNpb25EZWxheSBvbGQgc2FtcGxlcyAgICovCisgICAgICAg
ICpzbXBsX2J1Zl9pZHggID0gKCAqc21wbF9idWZfaWR4IC0gMSApICUgREVDSVNJT05fREVMQVk7
CisgICAgICAgIGlmKCAqc21wbF9idWZfaWR4IDwgMCApICpzbXBsX2J1Zl9pZHggKz0gREVDSVNJ
T05fREVMQVk7CisgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCAqc21wbF9idWZfaWR4ICsgZGVj
aXNpb25EZWxheSApICUgREVDSVNJT05fREVMQVk7CiAKICAgICAgICAgLyogRmluZCB3aW5uZXIg
Ki8KICAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0ZVsgMCBdWyAwIF0uUkRfUTEwOwpA
QCAtNjA3LDYgKzYyNyw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbm9pc2Vfc2hh
cGVfcXVhbnRpemVyX2RlbF9kZWMoCiAgICAgICAgICAgICBwc0REICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgID0gJnBzRGVsRGVjWyBrIF07CiAgICAgICAgICAgICBwc1NTICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gJnBzU2FtcGxlU3RhdGVbIGsgXVsg
MCBdOwogICAgICAgICAgICAgcHNERC0+TEZfQVJfUTE0ICAgICAgICAgICAgICAgICAgICAgICAg
ICA9IHBzU1MtPkxGX0FSX1ExNDsKKyAgICAgICAgICAgIHBzREQtPkRpZmZfUTE0ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPSBwc1NTLT5EaWZmX1ExNDsKICAgICAgICAgICAgIHBzREQtPnNM
UENfUTE0WyBOU1FfTFBDX0JVRl9MRU5HVEggKyBpIF0gPSBwc1NTLT54cV9RMTQ7CiAgICAgICAg
ICAgICBwc0RELT5YcV9RMTRbICAgICpzbXBsX2J1Zl9pZHggXSAgICAgICAgID0gcHNTUy0+eHFf
UTE0OwogICAgICAgICAgICAgcHNERC0+UV9RMTBbICAgICAqc21wbF9idWZfaWR4IF0gICAgICAg
ICA9IHBzU1MtPlFfUTEwOwpAQCAtNjMxLDcgKzY1Miw3IEBAIHN0YXRpYyBPUFVTX0lOTElORSB2
b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVfc3RhdGVzKAogICAgIGNvbnN0IHNpbGtfZW5jb2Rl
cl9zdGF0ZSAqcHNFbmNDLCAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAg
ICAgICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX25zcV9zdGF0ZSAgICAgICpOU1EsICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiAgICAgTlNRX2RlbF9kZWNfc3RydWN0ICBwc0RlbERlY1tdLCAgICAgICAgICAgICAg
ICAgLyogSS9PICBEZWxheWVkIGRlY2lzaW9uIHN0YXRlcyAgICAgICAgICAgICAqLwotICAgIGNv
bnN0IG9wdXNfaW50MzIgICAgeF9RM1tdLCAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5w
dXQgaW4gUTMgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2
ICAgIHgxNltdLCAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICB4X3NjX1ExMFtd
LCAgICAgICAgICAgICAgICAgLyogTyAgICBJbnB1dCBzY2FsZWQgd2l0aCAxL0dhaW4gaW4gUTEw
ICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgc0xUUFtdLCAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgUmUtd2hpdGVuZWQgTFRQIHN0YXRlIGluIFEwICAgICAgICAgKi8KICAgICBv
cHVzX2ludDMyICAgICAgICAgIHNMVFBfUTE1W10sICAgICAgICAgICAgICAgICAvKiBPICAgIExU
UCBzdGF0ZSBtYXRjaGluZyBzY2FsZWQgaW5wdXQgICAgICovCkBAIC02NDUsMjkgKzY2NiwxOSBA
QCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlcygK
ICkKIHsKICAgICBvcHVzX2ludCAgICAgICAgICAgIGksIGssIGxhZzsKLSAgICBvcHVzX2ludDMy
ICAgICAgICAgIGdhaW5fYWRqX1ExNiwgaW52X2dhaW5fUTMxLCBpbnZfZ2Fpbl9RMjM7CisgICAg
b3B1c19pbnQzMiAgICAgICAgICBnYWluX2Fkal9RMTYsIGludl9nYWluX1EzMSwgaW52X2dhaW5f
UTI2OwogICAgIE5TUV9kZWxfZGVjX3N0cnVjdCAgKnBzREQ7CiAKICAgICBsYWcgICAgICAgICAg
PSBwaXRjaExbIHN1YmZyIF07CiAgICAgaW52X2dhaW5fUTMxID0gc2lsa19JTlZFUlNFMzJfdmFy
USggc2lsa19tYXgoIEdhaW5zX1ExNlsgc3ViZnIgXSwgMSApLCA0NyApOwogICAgIHNpbGtfYXNz
ZXJ0KCBpbnZfZ2Fpbl9RMzEgIT0gMCApOwogCi0gICAgLyogQ2FsY3VsYXRlIGdhaW4gYWRqdXN0
bWVudCBmYWN0b3IgKi8KLSAgICBpZiggR2FpbnNfUTE2WyBzdWJmciBdICE9IE5TUS0+cHJldl9n
YWluX1ExNiApIHsKLSAgICAgICAgZ2Fpbl9hZGpfUTE2ID0gIHNpbGtfRElWMzJfdmFyUSggTlNR
LT5wcmV2X2dhaW5fUTE2LCBHYWluc19RMTZbIHN1YmZyIF0sIDE2ICk7Ci0gICAgfSBlbHNlIHsK
LSAgICAgICAgZ2Fpbl9hZGpfUTE2ID0gKG9wdXNfaW50MzIpMSA8PCAxNjsKLSAgICB9Ci0KICAg
ICAvKiBTY2FsZSBpbnB1dCAqLwotICAgIGludl9nYWluX1EyMyA9IHNpbGtfUlNISUZUX1JPVU5E
KCBpbnZfZ2Fpbl9RMzEsIDggKTsKKyAgICBpbnZfZ2Fpbl9RMjYgPSBzaWxrX1JTSElGVF9ST1VO
RCggaW52X2dhaW5fUTMxLCA1ICk7CiAgICAgZm9yKCBpID0gMDsgaSA8IHBzRW5jQy0+c3ViZnJf
bGVuZ3RoOyBpKysgKSB7Ci0gICAgICAgIHhfc2NfUTEwWyBpIF0gPSBzaWxrX1NNVUxXVyggeF9R
M1sgaSBdLCBpbnZfZ2Fpbl9RMjMgKTsKKyAgICAgICAgeF9zY19RMTBbIGkgXSA9IHNpbGtfU01V
TFdXKCB4MTZbIGkgXSwgaW52X2dhaW5fUTI2ICk7CiAgICAgfQogCi0gICAgLyogU2F2ZSBpbnZl
cnNlIGdhaW4gKi8KLSAgICBOU1EtPnByZXZfZ2Fpbl9RMTYgPSBHYWluc19RMTZbIHN1YmZyIF07
Ci0KICAgICAvKiBBZnRlciByZXdoaXRlbmluZyB0aGUgTFRQIHN0YXRlIGlzIHVuLXNjYWxlZCwg
c28gc2NhbGUgd2l0aCBpbnZfZ2Fpbl9RMTYgKi8KICAgICBpZiggTlNRLT5yZXdoaXRlX2ZsYWcg
KSB7CiAgICAgICAgIGlmKCBzdWJmciA9PSAwICkgewpAQCAtNjgxLDcgKzY5Miw5IEBAIHN0YXRp
YyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVfc3RhdGVzKAogICAgIH0K
IAogICAgIC8qIEFkanVzdCBmb3IgY2hhbmdpbmcgZ2FpbiAqLwotICAgIGlmKCBnYWluX2Fkal9R
MTYgIT0gKG9wdXNfaW50MzIpMSA8PCAxNiApIHsKKyAgICBpZiggR2FpbnNfUTE2WyBzdWJmciBd
ICE9IE5TUS0+cHJldl9nYWluX1ExNiApIHsKKyAgICAgICAgZ2Fpbl9hZGpfUTE2ID0gIHNpbGtf
RElWMzJfdmFyUSggTlNRLT5wcmV2X2dhaW5fUTE2LCBHYWluc19RMTZbIHN1YmZyIF0sIDE2ICk7
CisKICAgICAgICAgLyogU2NhbGUgbG9uZy10ZXJtIHNoYXBpbmcgc3RhdGUgKi8KICAgICAgICAg
Zm9yKCBpID0gTlNRLT5zTFRQX3NocF9idWZfaWR4IC0gcHNFbmNDLT5sdHBfbWVtX2xlbmd0aDsg
aSA8IE5TUS0+c0xUUF9zaHBfYnVmX2lkeDsgaSsrICkgewogICAgICAgICAgICAgTlNRLT5zTFRQ
X3NocF9RMTRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIE5TUS0+c0xUUF9zaHBf
UTE0WyBpIF0gKTsKQEAgLTY5OSw2ICs3MTIsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBz
aWxrX25zcV9kZWxfZGVjX3NjYWxlX3N0YXRlcygKIAogICAgICAgICAgICAgLyogU2NhbGUgc2Nh
bGFyIHN0YXRlcyAqLwogICAgICAgICAgICAgcHNERC0+TEZfQVJfUTE0ID0gc2lsa19TTVVMV1co
IGdhaW5fYWRqX1ExNiwgcHNERC0+TEZfQVJfUTE0ICk7CisgICAgICAgICAgICBwc0RELT5EaWZm
X1ExNCA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIHBzREQtPkRpZmZfUTE0ICk7CiAKICAg
ICAgICAgICAgIC8qIFNjYWxlIHNob3J0LXRlcm0gcHJlZGljdGlvbiBhbmQgc2hhcGluZyBzdGF0
ZXMgKi8KICAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBOU1FfTFBDX0JVRl9MRU5HVEg7IGkr
KyApIHsKQEAgLTcxMiw1ICs3MjYsOCBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25z
cV9kZWxfZGVjX3NjYWxlX3N0YXRlcygKICAgICAgICAgICAgICAgICBwc0RELT5TaGFwZV9RMTRb
IGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIHBzREQtPlNoYXBlX1ExNFsgaSBdICk7
CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KKworICAgICAgICAvKiBTYXZlIGludmVyc2UgZ2Fp
biAqLworICAgICAgICBOU1EtPnByZXZfZ2Fpbl9RMTYgPSBHYWluc19RMTZbIHN1YmZyIF07CiAg
ICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1BMQy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1BMQy5jCmluZGV4IGZiNmVhODg3
YjdlZTI1NGIxYjg1OGE2YTUyYmM1ODQ1ZTBkNTczOGQuLmEzZTU1ZWE3NjVlZjRmNGIwNzE5MDE1
NTVkMzNkMDNjMDYzM2VhZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9QTEMuYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvUExDLmMK
QEAgLTI3NSw3ICsyNzUsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX1BMQ19jb25j
ZWFsKAogICAgICAgICAgICAgLyogUmVkdWNlIHJhbmRvbSBub2lzZSBmb3IgdW52b2ljZWQgZnJh
bWVzIHdpdGggaGlnaCBMUEMgZ2FpbiAqLwogICAgICAgICAgICAgb3B1c19pbnQzMiBpbnZHYWlu
X1EzMCwgZG93bl9zY2FsZV9RMzA7CiAKLSAgICAgICAgICAgIGludkdhaW5fUTMwID0gc2lsa19M
UENfaW52ZXJzZV9wcmVkX2dhaW4oIHBzUExDLT5wcmV2TFBDX1ExMiwgcHNEZWMtPkxQQ19vcmRl
ciApOworICAgICAgICAgICAgaW52R2Fpbl9RMzAgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fp
biggcHNQTEMtPnByZXZMUENfUTEyLCBwc0RlYy0+TFBDX29yZGVyLCBhcmNoICk7CiAKICAgICAg
ICAgICAgIGRvd25fc2NhbGVfUTMwID0gc2lsa19taW5fMzIoIHNpbGtfUlNISUZUKCAob3B1c19p
bnQzMikxIDw8IDMwLCBMT0cyX0lOVl9MUENfR0FJTl9ISUdIX1RIUkVTICksIGludkdhaW5fUTMw
ICk7CiAgICAgICAgICAgICBkb3duX3NjYWxlX1EzMCA9IHNpbGtfbWF4XzMyKCBzaWxrX1JTSElG
VCggKG9wdXNfaW50MzIpMSA8PCAzMCwgTE9HMl9JTlZfTFBDX0dBSU5fTE9XX1RIUkVTICksIGRv
d25fc2NhbGVfUTMwICk7CkBAIC0zMjgsOCArMzI4LDEwIEBAIHN0YXRpYyBPUFVTX0lOTElORSB2
b2lkIHNpbGtfUExDX2NvbmNlYWwoCiAgICAgICAgIGZvciggaiA9IDA7IGogPCBMVFBfT1JERVI7
IGorKyApIHsKICAgICAgICAgICAgIEJfUTE0WyBqIF0gPSBzaWxrX1JTSElGVCggc2lsa19TTVVM
QkIoIGhhcm1fR2Fpbl9RMTUsIEJfUTE0WyBqIF0gKSwgMTUgKTsKICAgICAgICAgfQotICAgICAg
ICAvKiBHcmFkdWFsbHkgcmVkdWNlIGV4Y2l0YXRpb24gZ2FpbiAqLwotICAgICAgICByYW5kX3Nj
YWxlX1ExNCA9IHNpbGtfUlNISUZUKCBzaWxrX1NNVUxCQiggcmFuZF9zY2FsZV9RMTQsIHJhbmRf
R2Fpbl9RMTUgKSwgMTUgKTsKKyAgICAgICAgaWYgKCBwc0RlYy0+aW5kaWNlcy5zaWduYWxUeXBl
ICE9IFRZUEVfTk9fVk9JQ0VfQUNUSVZJVFkgKSB7CisgICAgICAgICAgICAvKiBHcmFkdWFsbHkg
cmVkdWNlIGV4Y2l0YXRpb24gZ2FpbiAqLworICAgICAgICAgICAgcmFuZF9zY2FsZV9RMTQgPSBz
aWxrX1JTSElGVCggc2lsa19TTVVMQkIoIHJhbmRfc2NhbGVfUTE0LCByYW5kX0dhaW5fUTE1ICks
IDE1ICk7CisgICAgICAgIH0KIAogICAgICAgICAvKiBTbG93bHkgaW5jcmVhc2UgcGl0Y2ggbGFn
ICovCiAgICAgICAgIHBzUExDLT5waXRjaExfUTggPSBzaWxrX1NNTEFXQiggcHNQTEMtPnBpdGNo
TF9ROCwgcHNQTEMtPnBpdGNoTF9ROCwgUElUQ0hfRFJJRlRfRkFDX1ExNiApOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL1NpZ1Byb2NfRklYLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvU2lnUHJvY19GSVguaAppbmRleCBiNjMyOTk0NDFl
OTMwYTM4NWU5N2VmOWMxM2Q1NzU1Y2MwZjljNDEzLi5mOWFlMzI2MzI2ZDMxYTgxY2RmOWM0ZmYy
YmI1YWE4MjdhNGViYWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvU2lnUHJvY19GSVguaAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
U2lnUHJvY19GSVguaApAQCAtMzUsNyArMzUsNyBAQCBleHRlcm4gIkMiCiAKIC8qI2RlZmluZSBz
aWxrX01BQ1JPX0NPVU5UICovICAgICAgICAgIC8qIFVzZWQgdG8gZW5hYmxlIFdNT1BTIGNvdW50
aW5nICovCiAKLSNkZWZpbmUgU0lMS19NQVhfT1JERVJfTFBDICAgICAgICAgICAgMTYgICAgICAg
ICAgICAvKiBtYXggb3JkZXIgb2YgdGhlIExQQyBhbmFseXNpcyBpbiBzY2h1cigpIGFuZCBrMmEo
KSAqLworI2RlZmluZSBTSUxLX01BWF9PUkRFUl9MUEMgICAgICAgICAgICAyNCAgICAgICAgICAg
IC8qIG1heCBvcmRlciBvZiB0aGUgTFBDIGFuYWx5c2lzIGluIHNjaHVyKCkgYW5kIGsyYSgpICov
CiAKICNpbmNsdWRlIDxzdHJpbmcuaD4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBmb3IgbWVtc2V0KCksIG1lbWNweSgpLCBtZW1tb3ZlKCkgKi8KICNpbmNsdWRlICJ0eXBlZGVm
LmgiCkBAIC00Nyw2ICs0NywxMSBAQCBleHRlcm4gIkMiCiAjaW5jbHVkZSAieDg2L1NpZ1Byb2Nf
RklYX3NzZS5oIgogI2VuZGlmCiAKKyNpZiAoZGVmaW5lZChPUFVTX0FSTV9BU00pIHx8IGRlZmlu
ZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKSkKKyNpbmNsdWRlICJhcm0vYmlxdWFkX2Fs
dF9hcm0uaCIKKyNpbmNsdWRlICJhcm0vTFBDX2ludl9wcmVkX2dhaW5fYXJtLmgiCisjZW5kaWYK
KwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwogLyogICAgICAgICAgICAgICAgICAgIFNJR05BTCBQUk9DRVNTSU5H
IEZVTkNUSU9OUyAgICAgICAgICAgICAgICAgICAqLwogLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtOTYsMTQg
KzEwMSwyMiBAQCB2b2lkIHNpbGtfcmVzYW1wbGVyX2Rvd24yXzMoCiAgKiBzbG93ZXIgdGhhbiBi
aXF1YWQoKSBidXQgdXNlcyBtb3JlIHByZWNpc2UgY29lZmZpY2llbnRzCiAgKiBjYW4gaGFuZGxl
IChzbG93bHkpIHZhcnlpbmcgY29lZmZpY2llbnRzCiAgKi8KLXZvaWQgc2lsa19iaXF1YWRfYWx0
KAordm9pZCBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMSgKICAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgKmluLCAgICAgICAgICAgICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1
c19pbnQzMiAgICAgICAgICAgICpCX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgTUEgY29lZmZp
Y2llbnRzIFszXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAgICAgICAgICAgIC8qIEkgICAg
IEFSIGNvZWZmaWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAg
ICAvKiBJL08gICBTdGF0ZSB2ZWN0b3IgWzJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICpvdXQsICAg
ICAgICAgICAgICAgLyogTyAgICAgb3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAg
ICBsZW4sICAgICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3QgYmUgZXZl
bikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAg
ICAgICAgICAgICAgc3RyaWRlICAgICAgICAgICAgICAvKiBJICAgICBPcGVyYXRlIG9uIGludGVy
bGVhdmVkIHNpZ25hbCBpZiA+IDEgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qg
b3B1c19pbnQzMiAgICAgICAgICAgIGxlbiAgICAgICAgICAgICAgICAgLyogSSAgICAgc2lnbmFs
IGxlbmd0aCAobXVzdCBiZSBldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwor
KTsKKwordm9pZCBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9jKAorICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgICAgICAgICAqaW4sICAgICAgICAgICAgICAgIC8qIEkgICAgIGlucHV0IHNpZ25hbCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25z
dCBvcHVzX2ludDMyICAgICAgICAgICAgKkJfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBNQSBj
b2VmZmljaWVudHMgWzNdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpBX1EyOCwgICAgICAgICAgICAgLyog
SSAgICAgQVIgY29lZmZpY2llbnRzIFsyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqUywgICAgICAgICAg
ICAgICAgIC8qIEkvTyAgIFN0YXRlIHZlY3RvciBbNF0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKm91
dCwgICAgICAgICAgICAgICAvKiBPICAgICBvdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAg
ICAgICAgIGxlbiAgICAgICAgICAgICAgICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVzdCBi
ZSBldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKTsKIAogLyogVmFyaWFi
bGUgb3JkZXIgTUEgcHJlZGljdGlvbiBlcnJvciBmaWx0ZXIuICovCkBAIC0xMzIsMTcgKzE0NSwx
MSBAQCB2b2lkIHNpbGtfYndleHBhbmRlcl8zMigKIAogLyogQ29tcHV0ZSBpbnZlcnNlIG9mIExQ
QyBwcmVkaWN0aW9uIGdhaW4sIGFuZCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAvKiB0
ZXN0IGlmIExQQyBjb2VmZmljaWVudHMgYXJlIHN0YWJsZSAoYWxsIHBvbGVzIHdpdGhpbiB1bml0
IGNpcmNsZSkgICAgKi8KLW9wdXNfaW50MzIgc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4oICAg
ICAgICAgICAgICAvKiBPICAgUmV0dXJucyBpbnZlcnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVy
Z3kgZG9tYWluLCBRMzAgICAgICAgICovCitvcHVzX2ludDMyIHNpbGtfTFBDX2ludmVyc2VfcHJl
ZF9nYWluX2MoICAgICAgICAgICAgLyogTyAgIFJldHVybnMgaW52ZXJzZSBwcmVkaWN0aW9uIGdh
aW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYg
ICAgICAgICAgICAqQV9RMTIsICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0aW9uIGNvZWZmaWNp
ZW50cywgUTEyIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgUHJlZGljdGlv
biBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAp
OwogCi0vKiBGb3IgaW5wdXQgaW4gUTI0IGRvbWFpbiAqLwotb3B1c19pbnQzMiBzaWxrX0xQQ19p
bnZlcnNlX3ByZWRfZ2Fpbl9RMjQoICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBpbnZlcnNlIHBy
ZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludDMyICAgICAgICAgICAgKkFfUTI0LCAgICAgICAgICAgICAvKiBJICAgIFByZWRpY3Rp
b24gY29lZmZpY2llbnRzIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAgICAgLyogSSAg
ICBQcmVkaWN0aW9uIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotKTsKLQogLyogU3BsaXQgc2lnbmFsIGluIHR3byBkZWNpbWF0ZWQgYmFuZHMgdXNp
bmcgZmlyc3Qtb3JkZXIgYWxscGFzcyBmaWx0ZXJzICovCiB2b2lkIHNpbGtfYW5hX2ZpbHRfYmFu
a18xKAogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqaW4sICAgICAgICAgICAgICAg
IC8qIEkgICAgSW5wdXQgc2lnbmFsIFtOXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KQEAgLTE1Miw2ICsxNTksMTQgQEAgdm9pZCBzaWxrX2FuYV9maWx0X2Jh
bmtfMSgKICAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgTiAgICAgICAgICAgICAgICAg
ICAvKiBJICAgIE51bWJlciBvZiBpbnB1dCBzYW1wbGVzICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCiApOwogCisjaWYgIWRlZmluZWQoT1ZFUlJJREVfc2lsa19iaXF1YWRf
YWx0X3N0cmlkZTIpCisjZGVmaW5lIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyKGluLCBCX1EyOCwg
QV9RMjgsIFMsIG91dCwgbGVuLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBzaWxrX2JpcXVhZF9hbHRf
c3RyaWRlMl9jKGluLCBCX1EyOCwgQV9RMjgsIFMsIG91dCwgbGVuKSkKKyNlbmRpZgorCisjaWYg
IWRlZmluZWQoT1ZFUlJJREVfc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW4pCisjZGVmaW5lIHNp
bGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKEFfUTEyLCBvcmRlciwgYXJjaCkgICAgICgodm9pZCko
YXJjaCksIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2MoQV9RMTIsIG9yZGVyKSkKKyNlbmRp
ZgorCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCiAvKiAgICAgICAgICAgICAgICAgICAgICAgIFNDQUxBUiBGVU5D
VElPTlMgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAvKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0yNzEs
NyArMjg2LDE3IEBAIHZvaWQgc2lsa19BMk5MU0YoCiB2b2lkIHNpbGtfTkxTRjJBKAogICAgIG9w
dXNfaW50MTYgICAgICAgICAgICAgICAgICAqYV9RMTIsICAgICAgICAgICAgIC8qIE8gICAgbW9u
aWMgd2hpdGVuaW5nIGZpbHRlciBjb2VmZmljaWVudHMgaW4gUTEyLCAgWyBkIF0gICAgICAgICAg
Ki8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKk5MU0YsICAgICAgICAgICAgICAv
KiBJICAgIG5vcm1hbGl6ZWQgbGluZSBzcGVjdHJhbCBmcmVxdWVuY2llcyBpbiBRMTUsIFsgZCBd
ICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGQgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBmaWx0ZXIgb3JkZXIgKHNob3VsZCBiZSBldmVuKSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBk
LCAgICAgICAgICAgICAgICAgIC8qIEkgICAgZmlsdGVyIG9yZGVyIChzaG91bGQgYmUgZXZlbikg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBpbnQgICAgICAgICAgICAgICAg
ICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVy
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCispOworCisvKiBDb252
ZXJ0IGludDMyIGNvZWZmaWNpZW50cyB0byBpbnQxNiBjb2VmcyBhbmQgbWFrZSBzdXJlIHRoZXJl
J3Mgbm8gd3JhcC1hcm91bmQgKi8KK3ZvaWQgc2lsa19MUENfZml0KAorICAgIG9wdXNfaW50MTYg
ICAgICAgICAgICAgICAgICAqYV9RT1VULCAgICAgICAgICAgIC8qIE8gICAgT3V0cHV0IHNpZ25h
bCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBv
cHVzX2ludDMyICAgICAgICAgICAgICAgICAgKmFfUUlOLCAgICAgICAgICAgICAvKiBJL08gIElu
cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIFFPVVQsICAgICAgICAgICAgICAg
LyogSSAgICBJbnB1dCBRIGRvbWFpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBRSU4sICAgICAg
ICAgICAgICAgIC8qIEkgICAgSW5wdXQgUSBkb21haW4gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAg
ZCAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCiB2b2lkIHNpbGtfaW5zZXJ0
aW9uX3NvcnRfaW5jcmVhc2luZygKQEAgLTQ3MSw4ICs0OTYsNyBAQCBzdGF0aWMgT1BVU19JTkxJ
TkUgb3B1c19pbnQzMiBzaWxrX1JPUjMyKCBvcHVzX2ludDMyIGEzMiwgb3B1c19pbnQgcm90ICkK
IC8qIEFkZCB3aXRoIHNhdHVyYXRpb24gZm9yIHBvc2l0aXZlIGlucHV0IHZhbHVlcyAqLwogI2Rl
ZmluZSBzaWxrX0FERF9QT1NfU0FUOChhLCBiKSAgICAgICAgICAgICAoKCgoYSkrKGIpKSAmIDB4
ODApICAgICAgICAgICAgICAgICA/IHNpbGtfaW50OF9NQVggIDogKChhKSsoYikpKQogI2RlZmlu
ZSBzaWxrX0FERF9QT1NfU0FUMTYoYSwgYikgICAgICAgICAgICAoKCgoYSkrKGIpKSAmIDB4ODAw
MCkgICAgICAgICAgICAgICA/IHNpbGtfaW50MTZfTUFYIDogKChhKSsoYikpKQotI2RlZmluZSBz
aWxrX0FERF9QT1NfU0FUMzIoYSwgYikgICAgICAgICAgICAoKCgoYSkrKGIpKSAmIDB4ODAwMDAw
MDApICAgICAgICAgICA/IHNpbGtfaW50MzJfTUFYIDogKChhKSsoYikpKQotI2RlZmluZSBzaWxr
X0FERF9QT1NfU0FUNjQoYSwgYikgICAgICAgICAgICAoKCgoYSkrKGIpKSAmIDB4ODAwMDAwMDAw
MDAwMDAwMExMKSA/IHNpbGtfaW50NjRfTUFYIDogKChhKSsoYikpKQorI2RlZmluZSBzaWxrX0FE
RF9QT1NfU0FUMzIoYSwgYikgICAgICAgICAgICAoKCgob3B1c191aW50MzIpKGEpKyhvcHVzX3Vp
bnQzMikoYikpICYgMHg4MDAwMDAwMCkgPyBzaWxrX2ludDMyX01BWCA6ICgoYSkrKGIpKSkKIAog
I2RlZmluZSBzaWxrX0xTSElGVDgoYSwgc2hpZnQpICAgICAgICAgICAgICAoKG9wdXNfaW50OCko
KG9wdXNfdWludDgpKGEpPDwoc2hpZnQpKSkgICAgICAgICAvKiBzaGlmdCA+PSAwLCBzaGlmdCA8
IDggICovCiAjZGVmaW5lIHNpbGtfTFNISUZUMTYoYSwgc2hpZnQpICAgICAgICAgICAgICgob3B1
c19pbnQxNikoKG9wdXNfdWludDE2KShhKTw8KHNoaWZ0KSkpICAgICAgIC8qIHNoaWZ0ID49IDAs
IHNoaWZ0IDwgMTYgKi8KQEAgLTU3Miw3ICs1OTYsOSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1
c19pbnQ2NCBzaWxrX21heF82NChvcHVzX2ludDY0IGEsIG9wdXNfaW50NjQgYikKIC8qIE1ha2Ug
c3VyZSB0byBzdG9yZSB0aGUgcmVzdWx0IGFzIHRoZSBzZWVkIGZvciB0aGUgbmV4dCBjYWxsIChh
bHNvIGluIGJldHdlZW4gICAgICovCiAvKiBmcmFtZXMpLCBvdGhlcndpc2UgcmVzdWx0IHdvbid0
IGJlIHJhbmRvbSBhdCBhbGwuIFdoZW4gb25seSB1c2luZyBzb21lIG9mIHRoZSAgICAqLwogLyog
Yml0cywgdGFrZSB0aGUgbW9zdCBzaWduaWZpY2FudCBiaXRzIGJ5IHJpZ2h0LXNoaWZ0aW5nLiAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSNkZWZpbmUgc2lsa19SQU5EKHNlZWQpICAgICAg
ICAgICAgICAgICAgICAgKHNpbGtfTUxBX292Zmx3KDkwNzYzMzUxNSwgKHNlZWQpLCAxOTYzMTQx
NjUpKQorI2RlZmluZSBSQU5EX01VTFRJUExJRVIgICAgICAgICAgICAgICAgICAgICAxOTYzMTQx
NjUKKyNkZWZpbmUgUkFORF9JTkNSRU1FTlQgICAgICAgICAgICAgICAgICAgICAgOTA3NjMzNTE1
CisjZGVmaW5lIHNpbGtfUkFORChzZWVkKSAgICAgICAgICAgICAgICAgICAgIChzaWxrX01MQV9v
dmZsdygoUkFORF9JTkNSRU1FTlQpLCAoc2VlZCksIChSQU5EX01VTFRJUExJRVIpKSkKIAogLyog
IEFkZCBzb21lIG11bHRpcGxpY2F0aW9uIGZ1bmN0aW9ucyB0aGF0IGNhbiBiZSBlYXNpbHkgbWFw
cGVkIHRvIEFSTS4gKi8KIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL1ZRX1dNYXRfRUMuYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9WUV9X
TWF0X0VDLmMKaW5kZXggNzk4M2YxZGI4MGNjY2VjYTU4YmQ3YTc2MmVhOTA1NGNmYTU0YjZiOS4u
MGYzZDU0NWM0ZWY4YzEzM2VlNTE1MzM2ZTE5YzE2ZmE2MjcyZGJlMyAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L1ZRX1dNYXRfRUMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvVlFfV01hdF9FQy5jCkBAIC0zNCw4NCArMzQsOTUgQEAg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAvKiBFbnRyb3B5IGNvbnN0cmFpbmVkIG1hdHJp
eC13ZWlnaHRlZCBWUSwgaGFyZC1jb2RlZCB0byA1LWVsZW1lbnQgdmVjdG9ycywgZm9yIGEgc2lu
Z2xlIGlucHV0IGRhdGEgdmVjdG9yICovCiB2b2lkIHNpbGtfVlFfV01hdF9FQ19jKAogICAgIG9w
dXNfaW50OCAgICAgICAgICAgICAgICAgICAqaW5kLCAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIE8gICAgaW5kZXggb2YgYmVzdCBjb2RlYm9vayB2ZWN0b3IgICAgICAgICAgICAgICAqLwot
ICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqcmF0ZV9kaXN0X1ExNCwgICAgICAgICAg
ICAgICAgIC8qIE8gICAgYmVzdCB3ZWlnaHRlZCBxdWFudCBlcnJvciArIG11ICogcmF0ZSAgICAg
ICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqcmVzX25yZ19RMTUsICAgICAg
ICAgICAgICAgICAgIC8qIE8gICAgYmVzdCByZXNpZHVhbCBlbmVyZ3kgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqcmF0ZV9kaXN0X1E4
LCAgICAgICAgICAgICAgICAgIC8qIE8gICAgYmVzdCB0b3RhbCBiaXRyYXRlICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAqZ2Fpbl9R
NywgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgc3VtIG9mIGFic29sdXRlIExUUCBjb2Vm
ZmljaWVudHMgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAq
aW5fUTE0LCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgaW5wdXQgdmVjdG9yIHRvIGJl
IHF1YW50aXplZCAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAg
ICAgICAqV19RMTgsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgd2VpZ2h0aW5nIG1h
dHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIg
ICAgICAgICAgICAqWFhfUTE3LCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgY29ycmVs
YXRpb24gbWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNf
aW50MzIgICAgICAgICAgICAqeFhfUTE3LCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
Y29ycmVsYXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0
IG9wdXNfaW50OCAgICAgICAgICAgICAqY2JfUTcsICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgY29kZWJvb2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IGNvbnN0IG9wdXNfdWludDggICAgICAgICAgICAqY2JfZ2Fpbl9RNywgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgY29kZWJvb2sgZWZmZWN0aXZlIGdhaW4gICAgICAgICAgICAgICAgICAgICAq
LwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICAgICAqY2xfUTUsICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgY29kZSBsZW5ndGggZm9yIGVhY2ggY29kZWJvb2sgdmVjdG9yICAg
ICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBtdV9ROSwgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgdHJhZGVvZmYgYmV0dy4gd2VpZ2h0ZWQgZXJyb3IgYW5k
IHJhdGUgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzdWJmcl9sZW4s
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHNhbXBsZXMgcGVyIHN1YmZy
YW1lICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBtYXhf
Z2Fpbl9RNywgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbWF4aW11bSBzdW0gb2YgYWJzb2x1
dGUgTFRQIGNvZWZmaWNpZW50cyAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
ICBMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHZlY3Rv
cnMgaW4gY29kZWJvb2sgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICBMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9m
IHZlY3RvcnMgaW4gY29kZWJvb2sgICAgICAgICAgICAgICAqLwogKQogewogICAgIG9wdXNfaW50
ICAgaywgZ2Fpbl90bXBfUTc7CiAgICAgY29uc3Qgb3B1c19pbnQ4ICpjYl9yb3dfUTc7Ci0gICAg
b3B1c19pbnQxNiBkaWZmX1ExNFsgNSBdOwotICAgIG9wdXNfaW50MzIgc3VtMV9RMTQsIHN1bTJf
UTE2OworICAgIG9wdXNfaW50MzIgbmVnX3hYX1EyNFsgNSBdOworICAgIG9wdXNfaW50MzIgc3Vt
MV9RMTUsIHN1bTJfUTI0OworICAgIG9wdXNfaW50MzIgYml0c19yZXNfUTgsIGJpdHNfdG90X1E4
OworCisgICAgLyogTmVnYXRlIGFuZCBjb252ZXJ0IHRvIG5ldyBRIGRvbWFpbiAqLworICAgIG5l
Z194WF9RMjRbIDAgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdbIDAgXSwgNyApOworICAgIG5l
Z194WF9RMjRbIDEgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdbIDEgXSwgNyApOworICAgIG5l
Z194WF9RMjRbIDIgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdbIDIgXSwgNyApOworICAgIG5l
Z194WF9RMjRbIDMgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdbIDMgXSwgNyApOworICAgIG5l
Z194WF9RMjRbIDQgXSA9IC1zaWxrX0xTSElGVDMyKCB4WF9RMTdbIDQgXSwgNyApOwogCiAgICAg
LyogTG9vcCBvdmVyIGNvZGVib29rICovCi0gICAgKnJhdGVfZGlzdF9RMTQgPSBzaWxrX2ludDMy
X01BWDsKKyAgICAqcmF0ZV9kaXN0X1E4ID0gc2lsa19pbnQzMl9NQVg7CisgICAgKnJlc19ucmdf
UTE1ID0gc2lsa19pbnQzMl9NQVg7CiAgICAgY2Jfcm93X1E3ID0gY2JfUTc7CisgICAgLyogSW4g
dGhpbmdzIGdvIHJlYWxseSBiYWQsIGF0IGxlYXN0ICppbmQgaXMgc2V0IHRvIHNvbWV0aGluZyBz
YWZlLiAqLworICAgICppbmQgPSAwOwogICAgIGZvciggayA9IDA7IGsgPCBMOyBrKysgKSB7Cisg
ICAgICAgIG9wdXNfaW50MzIgcGVuYWx0eTsKICAgICAgICAgZ2Fpbl90bXBfUTcgPSBjYl9nYWlu
X1E3W2tdOwotCi0gICAgICAgIGRpZmZfUTE0WyAwIF0gPSBpbl9RMTRbIDAgXSAtIHNpbGtfTFNI
SUZUKCBjYl9yb3dfUTdbIDAgXSwgNyApOwotICAgICAgICBkaWZmX1ExNFsgMSBdID0gaW5fUTE0
WyAxIF0gLSBzaWxrX0xTSElGVCggY2Jfcm93X1E3WyAxIF0sIDcgKTsKLSAgICAgICAgZGlmZl9R
MTRbIDIgXSA9IGluX1ExNFsgMiBdIC0gc2lsa19MU0hJRlQoIGNiX3Jvd19RN1sgMiBdLCA3ICk7
Ci0gICAgICAgIGRpZmZfUTE0WyAzIF0gPSBpbl9RMTRbIDMgXSAtIHNpbGtfTFNISUZUKCBjYl9y
b3dfUTdbIDMgXSwgNyApOwotICAgICAgICBkaWZmX1ExNFsgNCBdID0gaW5fUTE0WyA0IF0gLSBz
aWxrX0xTSElGVCggY2Jfcm93X1E3WyA0IF0sIDcgKTsKLQogICAgICAgICAvKiBXZWlnaHRlZCBy
YXRlICovCi0gICAgICAgIHN1bTFfUTE0ID0gc2lsa19TTVVMQkIoIG11X1E5LCBjbF9RNVsgayBd
ICk7CisgICAgICAgIC8qIFF1YW50aXphdGlvbiBlcnJvcjogMSAtIDIgKiB4WCAqIGNiICsgY2In
ICogWFggKiBjYiAqLworICAgICAgICBzdW0xX1ExNSA9IFNJTEtfRklYX0NPTlNUKCAxLjAwMSwg
MTUgKTsKIAogICAgICAgICAvKiBQZW5hbHR5IGZvciB0b28gbGFyZ2UgZ2FpbiAqLwotICAgICAg
ICBzdW0xX1ExNCA9IHNpbGtfQUREX0xTSElGVDMyKCBzdW0xX1ExNCwgc2lsa19tYXgoIHNpbGtf
U1VCMzIoIGdhaW5fdG1wX1E3LCBtYXhfZ2Fpbl9RNyApLCAwICksIDEwICk7Ci0KLSAgICAgICAg
c2lsa19hc3NlcnQoIHN1bTFfUTE0ID49IDAgKTsKLQotICAgICAgICAvKiBmaXJzdCByb3cgb2Yg
V19RMTggKi8KLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNVUxXQiggICAgICAgICAgIFdfUTE4
WyAgMSBdLCBkaWZmX1ExNFsgMSBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTUxBV0Io
IHN1bTJfUTE2LCBXX1ExOFsgIDIgXSwgZGlmZl9RMTRbIDIgXSApOwotICAgICAgICBzdW0yX1Ex
NiA9IHNpbGtfU01MQVdCKCBzdW0yX1ExNiwgV19RMThbICAzIF0sIGRpZmZfUTE0WyAzIF0gKTsK
LSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdfUTE4WyAgNCBdLCBk
aWZmX1ExNFsgNCBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19MU0hJRlQoIHN1bTJfUTE2
LCAxICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTUxBV0IoIHN1bTJfUTE2LCBXX1ExOFsg
IDAgXSwgZGlmZl9RMTRbIDAgXSApOwotICAgICAgICBzdW0xX1ExNCA9IHNpbGtfU01MQVdCKCBz
dW0xX1ExNCwgc3VtMl9RMTYsICAgIGRpZmZfUTE0WyAwIF0gKTsKLQotICAgICAgICAvKiBzZWNv
bmQgcm93IG9mIFdfUTE4ICovCi0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTVVMV0IoICAgICAg
ICAgICBXX1ExOFsgIDcgXSwgZGlmZl9RMTRbIDIgXSApOwotICAgICAgICBzdW0yX1ExNiA9IHNp
bGtfU01MQVdCKCBzdW0yX1ExNiwgV19RMThbICA4IF0sIGRpZmZfUTE0WyAzIF0gKTsKLSAgICAg
ICAgc3VtMl9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdfUTE4WyAgOSBdLCBkaWZmX1Ex
NFsgNCBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19MU0hJRlQoIHN1bTJfUTE2LCAxICk7
Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTUxBV0IoIHN1bTJfUTE2LCBXX1ExOFsgIDYgXSwg
ZGlmZl9RMTRbIDEgXSApOwotICAgICAgICBzdW0xX1ExNCA9IHNpbGtfU01MQVdCKCBzdW0xX1Ex
NCwgc3VtMl9RMTYsICAgIGRpZmZfUTE0WyAxIF0gKTsKLQotICAgICAgICAvKiB0aGlyZCByb3cg
b2YgV19RMTggKi8KLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNVUxXQiggICAgICAgICAgIFdf
UTE4WyAxMyBdLCBkaWZmX1ExNFsgMyBdICk7Ci0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTUxB
V0IoIHN1bTJfUTE2LCBXX1ExOFsgMTQgXSwgZGlmZl9RMTRbIDQgXSApOwotICAgICAgICBzdW0y
X1ExNiA9IHNpbGtfTFNISUZUKCBzdW0yX1ExNiwgMSApOwotICAgICAgICBzdW0yX1ExNiA9IHNp
bGtfU01MQVdCKCBzdW0yX1ExNiwgV19RMThbIDEyIF0sIGRpZmZfUTE0WyAyIF0gKTsKLSAgICAg
ICAgc3VtMV9RMTQgPSBzaWxrX1NNTEFXQiggc3VtMV9RMTQsIHN1bTJfUTE2LCAgICBkaWZmX1Ex
NFsgMiBdICk7Ci0KLSAgICAgICAgLyogZm91cnRoIHJvdyBvZiBXX1ExOCAqLwotICAgICAgICBz
dW0yX1ExNiA9IHNpbGtfU01VTFdCKCAgICAgICAgICAgV19RMThbIDE5IF0sIGRpZmZfUTE0WyA0
IF0gKTsKLSAgICAgICAgc3VtMl9RMTYgPSBzaWxrX0xTSElGVCggc3VtMl9RMTYsIDEgKTsKLSAg
ICAgICAgc3VtMl9RMTYgPSBzaWxrX1NNTEFXQiggc3VtMl9RMTYsIFdfUTE4WyAxOCBdLCBkaWZm
X1ExNFsgMyBdICk7Ci0gICAgICAgIHN1bTFfUTE0ID0gc2lsa19TTUxBV0IoIHN1bTFfUTE0LCBz
dW0yX1ExNiwgICAgZGlmZl9RMTRbIDMgXSApOwotCi0gICAgICAgIC8qIGxhc3Qgcm93IG9mIFdf
UTE4ICovCi0gICAgICAgIHN1bTJfUTE2ID0gc2lsa19TTVVMV0IoICAgICAgICAgICBXX1ExOFsg
MjQgXSwgZGlmZl9RMTRbIDQgXSApOwotICAgICAgICBzdW0xX1ExNCA9IHNpbGtfU01MQVdCKCBz
dW0xX1ExNCwgc3VtMl9RMTYsICAgIGRpZmZfUTE0WyA0IF0gKTsKLQotICAgICAgICBzaWxrX2Fz
c2VydCggc3VtMV9RMTQgPj0gMCApOworICAgICAgICBwZW5hbHR5ID0gc2lsa19MU0hJRlQzMigg
c2lsa19tYXgoIHNpbGtfU1VCMzIoIGdhaW5fdG1wX1E3LCBtYXhfZ2Fpbl9RNyApLCAwICksIDEx
ICk7CisKKyAgICAgICAgLyogZmlyc3Qgcm93IG9mIFhYX1ExNyAqLworICAgICAgICBzdW0yX1Ey
NCA9IHNpbGtfTUxBKCBuZWdfeFhfUTI0WyAwIF0sIFhYX1ExN1sgIDEgXSwgY2Jfcm93X1E3WyAx
IF0gKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggc3VtMl9RMjQsICAgICAgICBYWF9R
MTdbICAyIF0sIGNiX3Jvd19RN1sgMiBdICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEo
IHN1bTJfUTI0LCAgICAgICAgWFhfUTE3WyAgMyBdLCBjYl9yb3dfUTdbIDMgXSApOworICAgICAg
ICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBzdW0yX1EyNCwgICAgICAgIFhYX1ExN1sgIDQgXSwgY2Jf
cm93X1E3WyA0IF0gKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX0xTSElGVDMyKCBzdW0yX1Ey
NCwgMSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBzdW0yX1EyNCwgICAgICAgIFhY
X1ExN1sgIDAgXSwgY2Jfcm93X1E3WyAwIF0gKTsKKyAgICAgICAgc3VtMV9RMTUgPSBzaWxrX1NN
TEFXQiggc3VtMV9RMTUsICAgICAgICBzdW0yX1EyNCwgIGNiX3Jvd19RN1sgMCBdICk7CisKKyAg
ICAgICAgLyogc2Vjb25kIHJvdyBvZiBYWF9RMTcgKi8KKyAgICAgICAgc3VtMl9RMjQgPSBzaWxr
X01MQSggbmVnX3hYX1EyNFsgMSBdLCBYWF9RMTdbICA3IF0sIGNiX3Jvd19RN1sgMiBdICk7Cisg
ICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJfUTI0LCAgICAgICAgWFhfUTE3WyAgOCBd
LCBjYl9yb3dfUTdbIDMgXSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBzdW0yX1Ey
NCwgICAgICAgIFhYX1ExN1sgIDkgXSwgY2Jfcm93X1E3WyA0IF0gKTsKKyAgICAgICAgc3VtMl9R
MjQgPSBzaWxrX0xTSElGVDMyKCBzdW0yX1EyNCwgMSApOworICAgICAgICBzdW0yX1EyNCA9IHNp
bGtfTUxBKCBzdW0yX1EyNCwgICAgICAgIFhYX1ExN1sgIDYgXSwgY2Jfcm93X1E3WyAxIF0gKTsK
KyAgICAgICAgc3VtMV9RMTUgPSBzaWxrX1NNTEFXQiggc3VtMV9RMTUsICAgICAgICBzdW0yX1Ey
NCwgIGNiX3Jvd19RN1sgMSBdICk7CisKKyAgICAgICAgLyogdGhpcmQgcm93IG9mIFhYX1ExNyAq
LworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTUxBKCBuZWdfeFhfUTI0WyAyIF0sIFhYX1ExN1sg
MTMgXSwgY2Jfcm93X1E3WyAzIF0gKTsKKyAgICAgICAgc3VtMl9RMjQgPSBzaWxrX01MQSggc3Vt
Ml9RMjQsICAgICAgICBYWF9RMTdbIDE0IF0sIGNiX3Jvd19RN1sgNCBdICk7CisgICAgICAgIHN1
bTJfUTI0ID0gc2lsa19MU0hJRlQzMiggc3VtMl9RMjQsIDEgKTsKKyAgICAgICAgc3VtMl9RMjQg
PSBzaWxrX01MQSggc3VtMl9RMjQsICAgICAgICBYWF9RMTdbIDEyIF0sIGNiX3Jvd19RN1sgMiBd
ICk7CisgICAgICAgIHN1bTFfUTE1ID0gc2lsa19TTUxBV0IoIHN1bTFfUTE1LCAgICAgICAgc3Vt
Ml9RMjQsICBjYl9yb3dfUTdbIDIgXSApOworCisgICAgICAgIC8qIGZvdXJ0aCByb3cgb2YgWFhf
UTE3ICovCisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIG5lZ194WF9RMjRbIDMgXSwgWFhf
UTE3WyAxOSBdLCBjYl9yb3dfUTdbIDQgXSApOworICAgICAgICBzdW0yX1EyNCA9IHNpbGtfTFNI
SUZUMzIoIHN1bTJfUTI0LCAxICk7CisgICAgICAgIHN1bTJfUTI0ID0gc2lsa19NTEEoIHN1bTJf
UTI0LCAgICAgICAgWFhfUTE3WyAxOCBdLCBjYl9yb3dfUTdbIDMgXSApOworICAgICAgICBzdW0x
X1ExNSA9IHNpbGtfU01MQVdCKCBzdW0xX1ExNSwgICAgICAgIHN1bTJfUTI0LCAgY2Jfcm93X1E3
WyAzIF0gKTsKKworICAgICAgICAvKiBsYXN0IHJvdyBvZiBYWF9RMTcgKi8KKyAgICAgICAgc3Vt
Ml9RMjQgPSBzaWxrX0xTSElGVDMyKCBuZWdfeFhfUTI0WyA0IF0sIDEgKTsKKyAgICAgICAgc3Vt
Ml9RMjQgPSBzaWxrX01MQSggc3VtMl9RMjQsICAgICAgICBYWF9RMTdbIDI0IF0sIGNiX3Jvd19R
N1sgNCBdICk7CisgICAgICAgIHN1bTFfUTE1ID0gc2lsa19TTUxBV0IoIHN1bTFfUTE1LCAgICAg
ICAgc3VtMl9RMjQsICBjYl9yb3dfUTdbIDQgXSApOwogCiAgICAgICAgIC8qIGZpbmQgYmVzdCAq
LwotICAgICAgICBpZiggc3VtMV9RMTQgPCAqcmF0ZV9kaXN0X1ExNCApIHsKLSAgICAgICAgICAg
ICpyYXRlX2Rpc3RfUTE0ID0gc3VtMV9RMTQ7Ci0gICAgICAgICAgICAqaW5kID0gKG9wdXNfaW50
OClrOwotICAgICAgICAgICAgKmdhaW5fUTcgPSBnYWluX3RtcF9RNzsKKyAgICAgICAgaWYoIHN1
bTFfUTE1ID49IDAgKSB7CisgICAgICAgICAgICAvKiBUcmFuc2xhdGUgcmVzaWR1YWwgZW5lcmd5
IHRvIGJpdHMgdXNpbmcgaGlnaC1yYXRlIGFzc3VtcHRpb24gKDYgZEIgPT0+IDEgYml0L3NhbXBs
ZSkgKi8KKyAgICAgICAgICAgIGJpdHNfcmVzX1E4ID0gc2lsa19TTVVMQkIoIHN1YmZyX2xlbiwg
c2lsa19saW4ybG9nKCBzdW0xX1ExNSArIHBlbmFsdHkpIC0gKDE1IDw8IDcpICk7CisgICAgICAg
ICAgICAvKiBJbiB0aGUgZm9sbG93aW5nIGxpbmUgd2UgcmVkdWNlIHRoZSBjb2RlbGVuZ3RoIGNv
bXBvbmVudCBieSBoYWxmICgiLTEiKTsgc2VlbXMgdG8gc2xnaHRseSBpbXByb3ZlIHF1YWxpdHkg
Ki8KKyAgICAgICAgICAgIGJpdHNfdG90X1E4ID0gc2lsa19BRERfTFNISUZUMzIoIGJpdHNfcmVz
X1E4LCBjbF9RNVsgayBdLCAzLTEgKTsKKyAgICAgICAgICAgIGlmKCBiaXRzX3RvdF9ROCA8PSAq
cmF0ZV9kaXN0X1E4ICkgeworICAgICAgICAgICAgICAgICpyYXRlX2Rpc3RfUTggPSBiaXRzX3Rv
dF9RODsKKyAgICAgICAgICAgICAgICAqcmVzX25yZ19RMTUgPSBzdW0xX1ExNSArIHBlbmFsdHk7
CisgICAgICAgICAgICAgICAgKmluZCA9IChvcHVzX2ludDgpazsKKyAgICAgICAgICAgICAgICAq
Z2Fpbl9RNyA9IGdhaW5fdG1wX1E3OworICAgICAgICAgICAgfQogICAgICAgICB9CiAKICAgICAg
ICAgLyogR28gdG8gbmV4dCBjYmsgdmVjdG9yICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL0xQQ19p
bnZfcHJlZF9nYWluX2FybS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9MUENfaW52X3ByZWRfZ2Fpbl9hcm0uaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi45ODk1YjU1NWM4ODcwNTIwZDAyOTA2ZmFhZGI1MmRjZmJiZmJjOTY0Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2FybS9MUENfaW52X3ByZWRfZ2Fpbl9hcm0uaApAQCAtMCwwICsxLDU3
IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioKK0NvcHlyaWdodCAoYykgMjAxNyBHb29nbGUgSW5jLgorUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Citu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNv
Y2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29u
dHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3Byb2R1Y3RzIGRl
cml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgor
cGVybWlzc2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJ
R0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKwor
I2lmbmRlZiBTSUxLX0xQQ19JTlZfUFJFRF9HQUlOX0FSTV9ICisjIGRlZmluZSBTSUxLX0xQQ19J
TlZfUFJFRF9HQUlOX0FSTV9ICisKKyMgaW5jbHVkZSAiY2VsdC9hcm0vYXJtY3B1LmgiCisKKyMg
aWYgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpCitvcHVzX2ludDMyIHNpbGtf
TFBDX2ludmVyc2VfcHJlZF9nYWluX25lb24oICAgICAgICAgLyogTyAgIFJldHVybnMgaW52ZXJz
ZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50MTYgICAgICAgICAgICAqQV9RMTIsICAgICAgICAgICAgIC8qIEkgICBQcmVk
aWN0aW9uIGNvZWZmaWNpZW50cywgUTEyIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAv
KiBJICAgUHJlZGljdGlvbiBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCispOworCisjICBpZiAhZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgZGVm
aW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT04pCisjICAgZGVmaW5lIE9WRVJSSURFX3NpbGtfTFBD
X2ludmVyc2VfcHJlZF9nYWluICAgICAgICAgICAgKDEpCisjICAgZGVmaW5lIHNpbGtfTFBDX2lu
dmVyc2VfcHJlZF9nYWluKEFfUTEyLCBvcmRlciwgYXJjaCkgKCh2b2lkKShhcmNoKSwgUFJFU1VN
RV9ORU9OKHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKShBX1ExMiwgb3JkZXIpKQorIyAgZW5k
aWYKKyMgZW5kaWYKKworIyBpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX0xQQ19pbnZlcnNlX3By
ZWRfZ2FpbikKKy8qSXMgcnVuLXRpbWUgQ1BVIGRldGVjdGlvbiBlbmFibGVkIG9uIHRoaXMgcGxh
dGZvcm0/Ki8KKyMgIGlmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpICYmIChkZWZpbmVkKE9QVVNf
QVJNX01BWV9IQVZFX05FT05fSU5UUikgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9O
X0lOVFIpKQorZXh0ZXJuIG9wdXNfaW50MzIgKCpjb25zdCBTSUxLX0xQQ19JTlZFUlNFX1BSRURf
R0FJTl9JTVBMW09QVVNfQVJDSE1BU0srMV0pKGNvbnN0IG9wdXNfaW50MTYgKkFfUTEyLCBjb25z
dCBvcHVzX2ludCBvcmRlcik7CisjICAgZGVmaW5lIE9WRVJSSURFX3NpbGtfTFBDX2ludmVyc2Vf
cHJlZF9nYWluICAgICAgICAgICAgKDEpCisjICAgZGVmaW5lIHNpbGtfTFBDX2ludmVyc2VfcHJl
ZF9nYWluKEFfUTEyLCBvcmRlciwgYXJjaCkgKCgqU0lMS19MUENfSU5WRVJTRV9QUkVEX0dBSU5f
SU1QTFsoYXJjaCkmT1BVU19BUkNITUFTS10pKEFfUTEyLCBvcmRlcikpCisjICBlbGlmIGRlZmlu
ZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9OX0lOVFIpCisjICAgZGVmaW5lIE9WRVJSSURFX3NpbGtf
TFBDX2ludmVyc2VfcHJlZF9nYWluICAgICAgICAgICAgKDEpCisjICAgZGVmaW5lIHNpbGtfTFBD
X2ludmVyc2VfcHJlZF9nYWluKEFfUTEyLCBvcmRlciwgYXJjaCkgKCh2b2lkKShhcmNoKSwgc2ls
a19MUENfaW52ZXJzZV9wcmVkX2dhaW5fbmVvbihBX1ExMiwgb3JkZXIpKQorIyAgZW5kaWYKKyMg
ZW5kaWYKKworI2VuZGlmIC8qIGVuZCBTSUxLX0xQQ19JTlZfUFJFRF9HQUlOX0FSTV9IICovCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvYXJtL0xQQ19pbnZfcHJlZF9nYWluX25lb25faW50ci5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Fy
bS9MUENfaW52X3ByZWRfZ2Fpbl9uZW9uX2ludHIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yNzE0MmYzNGNlYmU2
OTQ2NTA2Yzk4YzdjODBlZDcwNmU2MDczOGJlCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9M
UENfaW52X3ByZWRfZ2Fpbl9uZW9uX2ludHIuYwpAQCAtMCwwICsxLDI4MCBAQAorLyoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqCitDb3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4KK1JlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCithcmUgbWV0OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCit0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKy0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9y
IElFVEYgVHJ1c3QsIG5vciB0aGUKK25hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5
IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCitwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KK3Blcm1pc3Npb24uCitU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09O
VFJJQlVUT1JTICJBUyBJUyIKK0FORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKK0lNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCitB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBD
T05UUklCVVRPUlMgQkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCitTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
K0lOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKK1BPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpZmRlZiBIQVZFX0NP
TkZJR19ICisjaW5jbHVkZSAiY29uZmlnLmgiCisjZW5kaWYKKworI2luY2x1ZGUgPGFybV9uZW9u
Lmg+CisjaW5jbHVkZSAiU2lnUHJvY19GSVguaCIKKyNpbmNsdWRlICJkZWZpbmUuaCIKKworI2Rl
ZmluZSBRQSAgICAgICAgICAgICAgICAgICAgICAgICAgMjQKKyNkZWZpbmUgQV9MSU1JVCAgICAg
ICAgICAgICAgICAgICAgIFNJTEtfRklYX0NPTlNUKCAwLjk5OTc1LCBRQSApCisKKyNkZWZpbmUg
TVVMMzJfRlJBQ19RKGEzMiwgYjMyLCBRKSAgICgob3B1c19pbnQzMikoc2lsa19SU0hJRlRfUk9V
TkQ2NChzaWxrX1NNVUxMKGEzMiwgYjMyKSwgUSkpKQorCisvKiBUaGUgZGlmZmljdWx0eSBpcyBo
b3cgdG8ganVkZ2UgYSA2NC1iaXQgc2lnbmVkIGludGVnZXIgdG1wNjQgaXMgMzItYml0IG92ZXJm
bG93ZWQsCisgKiBzaW5jZSBORU9OIGhhcyBubyA2NC1iaXQgbWluLCBtYXggb3IgY29tcGFyaXNv
biBpbnN0cnVjdGlvbnMuCisgKiBBIGZhaWxlZCBpZGVhIGlzIHRvIGNvbXBhcmUgdGhlIHJlc3Vs
dHMgb2Ygdm1vdm4odG1wNjQpIGFuZCB2cW1vdm4odG1wNjQpIHdoZXRoZXIgdGhleSBhcmUgZXF1
YWwgb3Igbm90LgorICogSG93ZXZlciwgdGhpcyBpZGVhIGZhaWxzIHdoZW4gdGhlIHRtcDY0IGlz
IHNvbWV0aGluZyBsaWtlIDB4RkZGRkZGRjk4MDAwMDAwMC4KKyAqIEhlcmUgd2Uga25vdyB0aGF0
IG11bHQyUSA+PSAxLCBzbyB0aGUgaGlnaGVzdCBiaXQgKGJpdCA2Mywgc2lnbiBiaXQpIG9mIHRt
cDY0IG11c3QgZXF1YWwgdG8gYml0IDYyLgorICogdG1wNjQgd2FzIHNoaWZ0ZWQgbGVmdCBieSAx
IGFuZCB3ZSBnb3QgdG1wNjQnLiBJZiBoaWdoX2hhbGYodG1wNjQnKSAhPSAwIGFuZCBoaWdoX2hh
bGYodG1wNjQnKSAhPSAtMSwKKyAqIHRoZW4gd2Uga25vdyB0aGF0IGJpdCAzMSB0byBiaXQgNjMg
b2YgdG1wNjQgY2FuIG5vdCBhbGwgYmUgdGhlIHNpZ24gYml0LCBhbmQgdGhlcmVmb3JlIHRtcDY0
IGlzIDMyLWJpdCBvdmVyZmxvd2VkLgorICogVGhhdCBpcywgd2UganVkZ2UgaWYgdG1wNjQnID4g
MHgwMDAwMDAwMEZGRkZGRkZGLCBvciB0bXA2NCcgPD0gMHhGRkZGRkZGRjAwMDAwMDAwLgorICog
V2UgdXNlIG5hcnJvd2luZyBzaGlmdCByaWdodCAzMSBiaXRzIHRvIHRtcDMyJyB0byBzYXZlIGRh
dGEgYmFuZHdpZHRoIGFuZCBpbnN0cnVjdGlvbnMuCisgKiBUaGF0IGlzLCB3ZSBqdWRnZSBpZiB0
bXAzMicgPiAweDAwMDAwMDAwLCBvciB0bXAzMicgPD0gMHhGRkZGRkZGRi4KKyAqLworCisvKiBD
b21wdXRlIGludmVyc2Ugb2YgTFBDIHByZWRpY3Rpb24gZ2FpbiwgYW5kICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworLyogdGVzdCBpZiBMUEMgY29lZmZpY2llbnRzIGFyZSBzdGFibGUgKGFs
bCBwb2xlcyB3aXRoaW4gdW5pdCBjaXJjbGUpICAgKi8KK3N0YXRpYyBPUFVTX0lOTElORSBvcHVz
X2ludDMyIExQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RQV9uZW9uKCAvKiBPICAgUmV0dXJucyBpbnZl
cnNlIHByZWRpY3Rpb24gZ2FpbiBpbiBlbmVyZ3kgZG9tYWluLCBRMzAgICAgKi8KKyAgICBvcHVz
X2ludDMyICAgICAgICAgICBBX1FBWyBTSUxLX01BWF9PUkRFUl9MUEMgXSwgICAgICAgICAvKiBJ
ICAgUHJlZGljdGlvbiBjb2VmZmljaWVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICBvcmRlciAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgUHJlZGljdGlvbiBvcmRlciAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyAgICBvcHVzX2ludCAgIGssIG4sIG11bHQyUTsK
KyAgICBvcHVzX2ludDMyIGludkdhaW5fUTMwLCByY19RMzEsIHJjX211bHQxX1EzMCwgcmNfbXVs
dDIsIHRtcDEsIHRtcDI7CisgICAgb3B1c19pbnQzMiBtYXgsIG1pbjsKKyAgICBpbnQzMng0X3Qg
IG1heF9zMzJ4NCwgbWluX3MzMng0OworICAgIGludDMyeDJfdCAgbWF4X3MzMngyLCBtaW5fczMy
eDI7CisKKyAgICBtYXhfczMyeDQgPSB2ZHVwcV9uX3MzMiggc2lsa19pbnQzMl9NSU4gKTsKKyAg
ICBtaW5fczMyeDQgPSB2ZHVwcV9uX3MzMiggc2lsa19pbnQzMl9NQVggKTsKKyAgICBpbnZHYWlu
X1EzMCA9IFNJTEtfRklYX0NPTlNUKCAxLCAzMCApOworICAgIGZvciggayA9IG9yZGVyIC0gMTsg
ayA+IDA7IGstLSApIHsKKyAgICAgICAgaW50MzJ4Ml90IHJjX1EzMV9zMzJ4MiwgcmNfbXVsdDJf
czMyeDI7CisgICAgICAgIGludDY0eDJfdCBtdWx0MlFfczY0eDI7CisKKyAgICAgICAgLyogQ2hl
Y2sgZm9yIHN0YWJpbGl0eSAqLworICAgICAgICBpZiggKCBBX1FBWyBrIF0gPiBBX0xJTUlUICkg
fHwgKCBBX1FBWyBrIF0gPCAtQV9MSU1JVCApICkgeworICAgICAgICAgICAgcmV0dXJuIDA7Cisg
ICAgICAgIH0KKworICAgICAgICAvKiBTZXQgUkMgZXF1YWwgdG8gbmVnYXRlZCBBUiBjb2VmICov
CisgICAgICAgIHJjX1EzMSA9IC1zaWxrX0xTSElGVCggQV9RQVsgayBdLCAzMSAtIFFBICk7CisK
KyAgICAgICAgLyogcmNfbXVsdDFfUTMwIHJhbmdlOiBbIDEgOiAyXjMwIF0gKi8KKyAgICAgICAg
cmNfbXVsdDFfUTMwID0gc2lsa19TVUIzMiggU0lMS19GSVhfQ09OU1QoIDEsIDMwICksIHNpbGtf
U01NVUwoIHJjX1EzMSwgcmNfUTMxICkgKTsKKyAgICAgICAgc2lsa19hc3NlcnQoIHJjX211bHQx
X1EzMCA+ICggMSA8PCAxNSApICk7ICAgICAgICAgICAgICAgICAgIC8qIHJlZHVjZSBBX0xJTUlU
IGlmIGZhaWxzICovCisgICAgICAgIHNpbGtfYXNzZXJ0KCByY19tdWx0MV9RMzAgPD0gKCAxIDw8
IDMwICkgKTsKKworICAgICAgICAvKiBVcGRhdGUgaW52ZXJzZSBnYWluICovCisgICAgICAgIC8q
IGludkdhaW5fUTMwIHJhbmdlOiBbIDAgOiAyXjMwIF0gKi8KKyAgICAgICAgaW52R2Fpbl9RMzAg
PSBzaWxrX0xTSElGVCggc2lsa19TTU1VTCggaW52R2Fpbl9RMzAsIHJjX211bHQxX1EzMCApLCAy
ICk7CisgICAgICAgIHNpbGtfYXNzZXJ0KCBpbnZHYWluX1EzMCA+PSAwICAgICAgICAgICApOwor
ICAgICAgICBzaWxrX2Fzc2VydCggaW52R2Fpbl9RMzAgPD0gKCAxIDw8IDMwICkgKTsKKyAgICAg
ICAgaWYoIGludkdhaW5fUTMwIDwgU0lMS19GSVhfQ09OU1QoIDEuMGYgLyBNQVhfUFJFRElDVElP
Tl9QT1dFUl9HQUlOLCAzMCApICkgeworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0K
KworICAgICAgICAvKiByY19tdWx0MiByYW5nZTogWyAyXjMwIDogc2lsa19pbnQzMl9NQVggXSAq
LworICAgICAgICBtdWx0MlEgPSAzMiAtIHNpbGtfQ0xaMzIoIHNpbGtfYWJzKCByY19tdWx0MV9R
MzAgKSApOworICAgICAgICByY19tdWx0MiA9IHNpbGtfSU5WRVJTRTMyX3ZhclEoIHJjX211bHQx
X1EzMCwgbXVsdDJRICsgMzAgKTsKKworICAgICAgICAvKiBVcGRhdGUgQVIgY29lZmZpY2llbnQg
Ki8KKyAgICAgICAgcmNfUTMxX3MzMngyICAgPSB2ZHVwX25fczMyKCByY19RMzEgKTsKKyAgICAg
ICAgbXVsdDJRX3M2NHgyICAgPSB2ZHVwcV9uX3M2NCggLW11bHQyUSApOworICAgICAgICByY19t
dWx0Ml9zMzJ4MiA9IHZkdXBfbl9zMzIoIHJjX211bHQyICk7CisKKyAgICAgICAgZm9yKCBuID0g
MDsgbiA8ICggKCBrICsgMSApID4+IDEgKSAtIDM7IG4gKz0gNCApIHsKKyAgICAgICAgICAgIC8q
IFdlIGFsd2F5cyBjYWxjdWxhdGUgZXh0cmEgZWxlbWVudHMgb2YgQV9RQSBidWZmZXIgd2hlbiAo
IGsgJSA0ICkgIT0gMCwgdG8gdGFrZSB0aGUgYWR2YW50YWdlIG9mIFNJTUQgcGFyYWxsZWxpemF0
aW9uLiAqLworICAgICAgICAgICAgaW50MzJ4NF90IHRtcDFfczMyeDQsIHRtcDJfczMyeDQsIHQw
X3MzMng0LCB0MV9zMzJ4NCwgczBfczMyeDQsIHMxX3MzMng0LCB0X1FBMF9zMzJ4NCwgdF9RQTFf
czMyeDQ7CisgICAgICAgICAgICBpbnQ2NHgyX3QgdDBfczY0eDIsIHQxX3M2NHgyLCB0Ml9zNjR4
MiwgdDNfczY0eDI7CisgICAgICAgICAgICB0bXAxX3MzMng0ICA9IHZsZDFxX3MzMiggQV9RQSAr
IG4gKTsKKyAgICAgICAgICAgIHRtcDJfczMyeDQgID0gdmxkMXFfczMyKCBBX1FBICsgayAtIG4g
LSA0ICk7CisgICAgICAgICAgICB0bXAyX3MzMng0ICA9IHZyZXY2NHFfczMyKCB0bXAyX3MzMng0
ICk7CisgICAgICAgICAgICB0bXAyX3MzMng0ICA9IHZjb21iaW5lX3MzMiggdmdldF9oaWdoX3Mz
MiggdG1wMl9zMzJ4NCApLCB2Z2V0X2xvd19zMzIoIHRtcDJfczMyeDQgKSApOworICAgICAgICAg
ICAgdDBfczMyeDQgICAgPSB2cXJkbXVsaHFfbGFuZV9zMzIoIHRtcDJfczMyeDQsIHJjX1EzMV9z
MzJ4MiwgMCApOworICAgICAgICAgICAgdDFfczMyeDQgICAgPSB2cXJkbXVsaHFfbGFuZV9zMzIo
IHRtcDFfczMyeDQsIHJjX1EzMV9zMzJ4MiwgMCApOworICAgICAgICAgICAgdF9RQTBfczMyeDQg
PSB2cXN1YnFfczMyKCB0bXAxX3MzMng0LCB0MF9zMzJ4NCApOworICAgICAgICAgICAgdF9RQTFf
czMyeDQgPSB2cXN1YnFfczMyKCB0bXAyX3MzMng0LCB0MV9zMzJ4NCApOworICAgICAgICAgICAg
dDBfczY0eDIgICAgPSB2bXVsbF9zMzIoIHZnZXRfbG93X3MzMiAoIHRfUUEwX3MzMng0ICksIHJj
X211bHQyX3MzMngyICk7CisgICAgICAgICAgICB0MV9zNjR4MiAgICA9IHZtdWxsX3MzMiggdmdl
dF9oaWdoX3MzMiggdF9RQTBfczMyeDQgKSwgcmNfbXVsdDJfczMyeDIgKTsKKyAgICAgICAgICAg
IHQyX3M2NHgyICAgID0gdm11bGxfczMyKCB2Z2V0X2xvd19zMzIgKCB0X1FBMV9zMzJ4NCApLCBy
Y19tdWx0Ml9zMzJ4MiApOworICAgICAgICAgICAgdDNfczY0eDIgICAgPSB2bXVsbF9zMzIoIHZn
ZXRfaGlnaF9zMzIoIHRfUUExX3MzMng0ICksIHJjX211bHQyX3MzMngyICk7CisgICAgICAgICAg
ICB0MF9zNjR4MiAgICA9IHZyc2hscV9zNjQoIHQwX3M2NHgyLCBtdWx0MlFfczY0eDIgKTsKKyAg
ICAgICAgICAgIHQxX3M2NHgyICAgID0gdnJzaGxxX3M2NCggdDFfczY0eDIsIG11bHQyUV9zNjR4
MiApOworICAgICAgICAgICAgdDJfczY0eDIgICAgPSB2cnNobHFfczY0KCB0Ml9zNjR4MiwgbXVs
dDJRX3M2NHgyICk7CisgICAgICAgICAgICB0M19zNjR4MiAgICA9IHZyc2hscV9zNjQoIHQzX3M2
NHgyLCBtdWx0MlFfczY0eDIgKTsKKyAgICAgICAgICAgIHQwX3MzMng0ICAgID0gdmNvbWJpbmVf
czMyKCB2bW92bl9zNjQoIHQwX3M2NHgyICksIHZtb3ZuX3M2NCggdDFfczY0eDIgKSApOworICAg
ICAgICAgICAgdDFfczMyeDQgICAgPSB2Y29tYmluZV9zMzIoIHZtb3ZuX3M2NCggdDJfczY0eDIg
KSwgdm1vdm5fczY0KCB0M19zNjR4MiApICk7CisgICAgICAgICAgICBzMF9zMzJ4NCAgICA9IHZj
b21iaW5lX3MzMiggdnNocm5fbl9zNjQoIHQwX3M2NHgyLCAzMSApLCB2c2hybl9uX3M2NCggdDFf
czY0eDIsIDMxICkgKTsKKyAgICAgICAgICAgIHMxX3MzMng0ICAgID0gdmNvbWJpbmVfczMyKCB2
c2hybl9uX3M2NCggdDJfczY0eDIsIDMxICksIHZzaHJuX25fczY0KCB0M19zNjR4MiwgMzEgKSAp
OworICAgICAgICAgICAgbWF4X3MzMng0ICAgPSB2bWF4cV9zMzIoIG1heF9zMzJ4NCwgczBfczMy
eDQgKTsKKyAgICAgICAgICAgIG1pbl9zMzJ4NCAgID0gdm1pbnFfczMyKCBtaW5fczMyeDQsIHMw
X3MzMng0ICk7CisgICAgICAgICAgICBtYXhfczMyeDQgICA9IHZtYXhxX3MzMiggbWF4X3MzMng0
LCBzMV9zMzJ4NCApOworICAgICAgICAgICAgbWluX3MzMng0ICAgPSB2bWlucV9zMzIoIG1pbl9z
MzJ4NCwgczFfczMyeDQgKTsKKyAgICAgICAgICAgIHQxX3MzMng0ICAgID0gdnJldjY0cV9zMzIo
IHQxX3MzMng0ICk7CisgICAgICAgICAgICB0MV9zMzJ4NCAgICA9IHZjb21iaW5lX3MzMiggdmdl
dF9oaWdoX3MzMiggdDFfczMyeDQgKSwgdmdldF9sb3dfczMyKCB0MV9zMzJ4NCApICk7CisgICAg
ICAgICAgICB2c3QxcV9zMzIoIEFfUUEgKyBuLCAgICAgICAgIHQwX3MzMng0ICk7CisgICAgICAg
ICAgICB2c3QxcV9zMzIoIEFfUUEgKyBrIC0gbiAtIDQsIHQxX3MzMng0ICk7CisgICAgICAgIH0K
KyAgICAgICAgZm9yKCA7IG4gPCAoayArIDEpID4+IDE7IG4rKyApIHsKKyAgICAgICAgICAgIG9w
dXNfaW50NjQgdG1wNjQ7CisgICAgICAgICAgICB0bXAxID0gQV9RQVsgbiBdOworICAgICAgICAg
ICAgdG1wMiA9IEFfUUFbIGsgLSBuIC0gMSBdOworICAgICAgICAgICAgdG1wNjQgPSBzaWxrX1JT
SElGVF9ST1VORDY0KCBzaWxrX1NNVUxMKCBzaWxrX1NVQl9TQVQzMih0bXAxLAorICAgICAgICAg
ICAgICAgICAgTVVMMzJfRlJBQ19RKCB0bXAyLCByY19RMzEsIDMxICkgKSwgcmNfbXVsdDIgKSwg
bXVsdDJRKTsKKyAgICAgICAgICAgIGlmKCB0bXA2NCA+IHNpbGtfaW50MzJfTUFYIHx8IHRtcDY0
IDwgc2lsa19pbnQzMl9NSU4gKSB7CisgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIEFfUUFbIG4gXSA9ICggb3B1c19pbnQzMiApdG1wNjQ7CisgICAg
ICAgICAgICB0bXA2NCA9IHNpbGtfUlNISUZUX1JPVU5ENjQoIHNpbGtfU01VTEwoIHNpbGtfU1VC
X1NBVDMyKHRtcDIsCisgICAgICAgICAgICAgICAgICBNVUwzMl9GUkFDX1EoIHRtcDEsIHJjX1Ez
MSwgMzEgKSApLCByY19tdWx0MiksIG11bHQyUSk7CisgICAgICAgICAgICBpZiggdG1wNjQgPiBz
aWxrX2ludDMyX01BWCB8fCB0bXA2NCA8IHNpbGtfaW50MzJfTUlOICkgeworICAgICAgICAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBBX1FBWyBrIC0gbiAtIDEg
XSA9ICggb3B1c19pbnQzMiApdG1wNjQ7CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvKiBDaGVj
ayBmb3Igc3RhYmlsaXR5ICovCisgICAgaWYoICggQV9RQVsgayBdID4gQV9MSU1JVCApIHx8ICgg
QV9RQVsgayBdIDwgLUFfTElNSVQgKSApIHsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisg
ICAgbWF4X3MzMngyID0gdm1heF9zMzIoIHZnZXRfbG93X3MzMiggbWF4X3MzMng0ICksIHZnZXRf
aGlnaF9zMzIoIG1heF9zMzJ4NCApICk7CisgICAgbWluX3MzMngyID0gdm1pbl9zMzIoIHZnZXRf
bG93X3MzMiggbWluX3MzMng0ICksIHZnZXRfaGlnaF9zMzIoIG1pbl9zMzJ4NCApICk7CisgICAg
bWF4X3MzMngyID0gdm1heF9zMzIoIG1heF9zMzJ4MiwgdnJlaW50ZXJwcmV0X3MzMl9zNjQoIHZz
aHJfbl9zNjQoIHZyZWludGVycHJldF9zNjRfczMyKCBtYXhfczMyeDIgKSwgMzIgKSApICk7Cisg
ICAgbWluX3MzMngyID0gdm1pbl9zMzIoIG1pbl9zMzJ4MiwgdnJlaW50ZXJwcmV0X3MzMl9zNjQo
IHZzaHJfbl9zNjQoIHZyZWludGVycHJldF9zNjRfczMyKCBtaW5fczMyeDIgKSwgMzIgKSApICk7
CisgICAgbWF4ID0gdmdldF9sYW5lX3MzMiggbWF4X3MzMngyLCAwICk7CisgICAgbWluID0gdmdl
dF9sYW5lX3MzMiggbWluX3MzMngyLCAwICk7CisgICAgaWYoICggbWF4ID4gMCApIHx8ICggbWlu
IDwgLTEgKSApIHsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgLyogU2V0IFJDIGVx
dWFsIHRvIG5lZ2F0ZWQgQVIgY29lZiAqLworICAgIHJjX1EzMSA9IC1zaWxrX0xTSElGVCggQV9R
QVsgMCBdLCAzMSAtIFFBICk7CisKKyAgICAvKiBSYW5nZTogWyAxIDogMl4zMCBdICovCisgICAg
cmNfbXVsdDFfUTMwID0gc2lsa19TVUIzMiggU0lMS19GSVhfQ09OU1QoIDEsIDMwICksIHNpbGtf
U01NVUwoIHJjX1EzMSwgcmNfUTMxICkgKTsKKworICAgIC8qIFVwZGF0ZSBpbnZlcnNlIGdhaW4g
Ki8KKyAgICAvKiBSYW5nZTogWyAwIDogMl4zMCBdICovCisgICAgaW52R2Fpbl9RMzAgPSBzaWxr
X0xTSElGVCggc2lsa19TTU1VTCggaW52R2Fpbl9RMzAsIHJjX211bHQxX1EzMCApLCAyICk7Cisg
ICAgc2lsa19hc3NlcnQoIGludkdhaW5fUTMwID49IDAgICAgICAgICAgICk7CisgICAgc2lsa19h
c3NlcnQoIGludkdhaW5fUTMwIDw9ICggMSA8PCAzMCApICk7CisgICAgaWYoIGludkdhaW5fUTMw
IDwgU0lMS19GSVhfQ09OU1QoIDEuMGYgLyBNQVhfUFJFRElDVElPTl9QT1dFUl9HQUlOLCAzMCAp
ICkgeworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICByZXR1cm4gaW52R2Fpbl9RMzA7
Cit9CisKKy8qIEZvciBpbnB1dCBpbiBRMTIgZG9tYWluICovCitvcHVzX2ludDMyIHNpbGtfTFBD
X2ludmVyc2VfcHJlZF9nYWluX25lb24oICAgICAgICAgLyogTyAgIFJldHVybnMgaW52ZXJzZSBw
cmVkaWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAgICAgICAqLworICAgIGNvbnN0
IG9wdXNfaW50MTYgICAgICAgICAgICAqQV9RMTIsICAgICAgICAgICAgIC8qIEkgICBQcmVkaWN0
aW9uIGNvZWZmaWNpZW50cywgUTEyIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJ
ICAgUHJlZGljdGlvbiBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCispCit7CisjaWZkZWYgT1BVU19DSEVDS19BU00KKyAgICBjb25zdCBvcHVzX2lu
dDMyIGludkdhaW5fUTMwX2MgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9jKCBBX1ExMiwg
b3JkZXIgKTsKKyNlbmRpZgorCisgICAgb3B1c19pbnQzMiBpbnZHYWluX1EzMDsKKyAgICBpZigg
KCBTSUxLX01BWF9PUkRFUl9MUEMgIT0gMjQgKSB8fCAoIG9yZGVyICYgMSApKSB7CisgICAgICAg
IGludkdhaW5fUTMwID0gc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fYyggQV9RMTIsIG9yZGVy
ICk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBvcHVzX2ludDMyIEF0bXBfUUFbIFNJTEtf
TUFYX09SREVSX0xQQyBdOworICAgICAgICBvcHVzX2ludDMyIERDX3Jlc3A7CisgICAgICAgIGlu
dDE2eDhfdCAgdDBfczE2eDgsIHQxX3MxNng4LCB0Ml9zMTZ4ODsKKyAgICAgICAgaW50MzJ4NF90
ICB0MF9zMzJ4NDsKKyAgICAgICAgY29uc3Qgb3B1c19pbnQgbGVmdG92ZXIgPSBvcmRlciAmIDc7
CisKKyAgICAgICAgLyogSW5jcmVhc2UgUSBkb21haW4gb2YgdGhlIEFSIGNvZWZmaWNpZW50cyAq
LworICAgICAgICB0MF9zMTZ4OCA9IHZsZDFxX3MxNiggQV9RMTIgKyAgMCApOworICAgICAgICB0
MV9zMTZ4OCA9IHZsZDFxX3MxNiggQV9RMTIgKyAgOCApOworICAgICAgICB0Ml9zMTZ4OCA9IHZs
ZDFxX3MxNiggQV9RMTIgKyAxNiApOworICAgICAgICB0MF9zMzJ4NCA9IHZwYWRkbHFfczE2KCB0
MF9zMTZ4OCApOworCisgICAgICAgIHN3aXRjaCggb3JkZXIgLSBsZWZ0b3ZlciApCisgICAgICAg
IHsKKyAgICAgICAgY2FzZSAyNDoKKyAgICAgICAgICAgIHQwX3MzMng0ID0gdnBhZGFscV9zMTYo
IHQwX3MzMng0LCB0Ml9zMTZ4OCApOworICAgICAgICAgICAgLyogSW50ZW5kIHRvIGZhbGwgdGhy
b3VnaCAqLworCisgICAgICAgIGNhc2UgMTY6CisgICAgICAgICAgICB0MF9zMzJ4NCA9IHZwYWRh
bHFfczE2KCB0MF9zMzJ4NCwgdDFfczE2eDggKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggQXRt
cF9RQSArIDE2LCB2c2hsbF9uX3MxNiggdmdldF9sb3dfczE2ICggdDJfczE2eDggKSwgUUEgLSAx
MiApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIEF0bXBfUUEgKyAyMCwgdnNobGxfbl9zMTYo
IHZnZXRfaGlnaF9zMTYoIHQyX3MxNng4ICksIFFBIC0gMTIgKSApOworICAgICAgICAgICAgLyog
SW50ZW5kIHRvIGZhbGwgdGhyb3VnaCAqLworCisgICAgICAgIGNhc2UgODoKKyAgICAgICAgewor
ICAgICAgICAgICAgY29uc3QgaW50MzJ4Ml90IHRfczMyeDIgPSB2cGFkZF9zMzIoIHZnZXRfbG93
X3MzMiggdDBfczMyeDQgKSwgdmdldF9oaWdoX3MzMiggdDBfczMyeDQgKSApOworICAgICAgICAg
ICAgY29uc3QgaW50NjR4MV90IHRfczY0eDEgPSB2cGFkZGxfczMyKCB0X3MzMngyICk7CisgICAg
ICAgICAgICBEQ19yZXNwID0gdmdldF9sYW5lX3MzMiggdnJlaW50ZXJwcmV0X3MzMl9zNjQoIHRf
czY0eDEgKSwgMCApOworICAgICAgICAgICAgdnN0MXFfczMyKCBBdG1wX1FBICsgIDgsIHZzaGxs
X25fczE2KCB2Z2V0X2xvd19zMTYgKCB0MV9zMTZ4OCApLCBRQSAtIDEyICkgKTsKKyAgICAgICAg
ICAgIHZzdDFxX3MzMiggQXRtcF9RQSArIDEyLCB2c2hsbF9uX3MxNiggdmdldF9oaWdoX3MxNigg
dDFfczE2eDggKSwgUUEgLSAxMiApICk7CisgICAgICAgIH0KKyAgICAgICAgYnJlYWs7CisKKyAg
ICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIERDX3Jlc3AgPSAwOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIH0KKyAgICAgICAgQV9RMTIgKz0gb3JkZXIgLSBsZWZ0b3ZlcjsKKworICAg
ICAgICBzd2l0Y2goIGxlZnRvdmVyICkKKyAgICAgICAgeworICAgICAgICBjYXNlIDY6CisgICAg
ICAgICAgICBEQ19yZXNwICs9IChvcHVzX2ludDMyKUFfUTEyWyA1IF07CisgICAgICAgICAgICBE
Q19yZXNwICs9IChvcHVzX2ludDMyKUFfUTEyWyA0IF07CisgICAgICAgICAgICAvKiBJbnRlbmQg
dG8gZmFsbCB0aHJvdWdoICovCisKKyAgICAgICAgY2FzZSA0OgorICAgICAgICAgICAgRENfcmVz
cCArPSAob3B1c19pbnQzMilBX1ExMlsgMyBdOworICAgICAgICAgICAgRENfcmVzcCArPSAob3B1
c19pbnQzMilBX1ExMlsgMiBdOworICAgICAgICAgICAgLyogSW50ZW5kIHRvIGZhbGwgdGhyb3Vn
aCAqLworCisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIERDX3Jlc3AgKz0gKG9wdXNfaW50
MzIpQV9RMTJbIDEgXTsKKyAgICAgICAgICAgIERDX3Jlc3AgKz0gKG9wdXNfaW50MzIpQV9RMTJb
IDAgXTsKKyAgICAgICAgICAgIC8qIEludGVuZCB0byBmYWxsIHRocm91Z2ggKi8KKworICAgICAg
ICBkZWZhdWx0OgorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKworICAgICAgICAvKiBJ
ZiB0aGUgREMgaXMgdW5zdGFibGUsIHdlIGRvbid0IGV2ZW4gbmVlZCB0byBkbyB0aGUgZnVsbCBj
YWxjdWxhdGlvbnMgKi8KKyAgICAgICAgaWYoIERDX3Jlc3AgPj0gNDA5NiApIHsKKyAgICAgICAg
ICAgIGludkdhaW5fUTMwID0gMDsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHZzdDFx
X3MzMiggQXRtcF9RQSArIDAsIHZzaGxsX25fczE2KCB2Z2V0X2xvd19zMTYgKCB0MF9zMTZ4OCAp
LCBRQSAtIDEyICkgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggQXRtcF9RQSArIDQsIHZzaGxs
X25fczE2KCB2Z2V0X2hpZ2hfczE2KCB0MF9zMTZ4OCApLCBRQSAtIDEyICkgKTsKKyAgICAgICAg
ICAgIGludkdhaW5fUTMwID0gTFBDX2ludmVyc2VfcHJlZF9nYWluX1FBX25lb24oIEF0bXBfUUEs
IG9yZGVyICk7CisgICAgICAgIH0KKyAgICB9CisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAg
IHNpbGtfYXNzZXJ0KCBpbnZHYWluX1EzMF9jID09IGludkdhaW5fUTMwICk7CisjZW5kaWYKKwor
ICAgIHJldHVybiBpbnZHYWluX1EzMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vTlNRX2RlbF9k
ZWNfYXJtLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvYXJtL05TUV9kZWxfZGVjX2FybS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjllNzZlMTY5
Mjc5OWI0MmYzZWI0NDNhYmI0N2FkMzcyMmE1MWYyYzQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
YXJtL05TUV9kZWxfZGVjX2FybS5oCkBAIC0wLDAgKzEsMTAwIEBACisvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioK
K0NvcHlyaWdodCAoYykgMjAxNyBHb29nbGUgSW5jLgorUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKK2Fy
ZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCitkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBU
cnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVybWlzc2lvbi4KK1RISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRP
UlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKK0FSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJV
VE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2lmbmRlZiBTSUxLX05TUV9ERUxf
REVDX0FSTV9ICisjZGVmaW5lIFNJTEtfTlNRX0RFTF9ERUNfQVJNX0gKKworI2luY2x1ZGUgImNl
bHQvYXJtL2FybWNwdS5oIgorCisjaWYgZGVmaW5lZChPUFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lO
VFIpCit2b2lkIHNpbGtfTlNRX2RlbF9kZWNfbmVvbigKKyAgICBjb25zdCBzaWxrX2VuY29kZXJf
c3RhdGUgKnBzRW5jQywgc2lsa19uc3Ffc3RhdGUgKk5TUSwKKyAgICBTaWRlSW5mb0luZGljZXMg
KnBzSW5kaWNlcywgY29uc3Qgb3B1c19pbnQxNiB4MTZbXSwgb3B1c19pbnQ4IHB1bHNlc1tdLAor
ICAgIGNvbnN0IG9wdXNfaW50MTYgUHJlZENvZWZfUTEyWzIgKiBNQVhfTFBDX09SREVSXSwKKyAg
ICBjb25zdCBvcHVzX2ludDE2IExUUENvZWZfUTE0W0xUUF9PUkRFUiAqIE1BWF9OQl9TVUJGUl0s
CisgICAgY29uc3Qgb3B1c19pbnQxNiBBUl9RMTNbTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQ
Q19PUkRFUl0sCisgICAgY29uc3Qgb3B1c19pbnQgSGFybVNoYXBlR2Fpbl9RMTRbTUFYX05CX1NV
QkZSXSwKKyAgICBjb25zdCBvcHVzX2ludCBUaWx0X1ExNFtNQVhfTkJfU1VCRlJdLAorICAgIGNv
bnN0IG9wdXNfaW50MzIgTEZfc2hwX1ExNFtNQVhfTkJfU1VCRlJdLAorICAgIGNvbnN0IG9wdXNf
aW50MzIgR2FpbnNfUTE2W01BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19pbnQgcGl0Y2hM
W01BWF9OQl9TVUJGUl0sIGNvbnN0IG9wdXNfaW50IExhbWJkYV9RMTAsCisgICAgY29uc3Qgb3B1
c19pbnQgTFRQX3NjYWxlX1ExNCk7CisKKyNpZiAhZGVmaW5lZChPUFVTX0hBVkVfUlRDRCkKKyNk
ZWZpbmUgT1ZFUlJJREVfc2lsa19OU1FfZGVsX2RlYyAoMSkKKyNkZWZpbmUgc2lsa19OU1FfZGVs
X2RlYyhwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEyLCAg
XAorICAgICAgICAgICAgICAgICAgICAgICAgIExUUENvZWZfUTE0LCBBUl9RMTMsIEhhcm1TaGFw
ZUdhaW5fUTE0LCBUaWx0X1ExNCwgICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgTEZfc2hw
X1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIExhbWJkYV9RMTAsICAgICAgICAgIFwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICBMVFBfc2NhbGVfUTE0LCBhcmNoKSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgICgodm9pZCkoYXJjaCksICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgIFBSRVNVTUVfTkVPTihz
aWxrX05TUV9kZWxfZGVjKSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICAgICAgIHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29l
Zl9RMTIsIExUUENvZWZfUTE0LCAgICAgXAorICAgICAgICAgQVJfUTEzLCBIYXJtU2hhcGVHYWlu
X1ExNCwgVGlsdF9RMTQsIExGX3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBcCisgICAgICAg
ICBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0KSkKKyNlbmRpZgorI2VuZGlmCisKKyNpZiAhZGVm
aW5lZChPVkVSUklERV9zaWxrX05TUV9kZWxfZGVjKQorLypJcyBydW4tdGltZSBDUFUgZGV0ZWN0
aW9uIGVuYWJsZWQgb24gdGhpcyBwbGF0Zm9ybT8qLworI2lmIGRlZmluZWQoT1BVU19IQVZFX1JU
Q0QpICYmIChkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikgJiYgXAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05f
SU5UUikpCitleHRlcm4gdm9pZCAoKmNvbnN0IFNJTEtfTlNRX0RFTF9ERUNfSU1QTFtPUFVTX0FS
Q0hNQVNLICsgMV0pKAorICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbmNDLCBzaWxr
X25zcV9zdGF0ZSAqTlNRLAorICAgIFNpZGVJbmZvSW5kaWNlcyAqcHNJbmRpY2VzLCBjb25zdCBv
cHVzX2ludDE2IHgxNltdLCBvcHVzX2ludDggcHVsc2VzW10sCisgICAgY29uc3Qgb3B1c19pbnQx
NiBQcmVkQ29lZl9RMTJbMiAqIE1BWF9MUENfT1JERVJdLAorICAgIGNvbnN0IG9wdXNfaW50MTYg
TFRQQ29lZl9RMTRbTFRQX09SREVSICogTUFYX05CX1NVQkZSXSwKKyAgICBjb25zdCBvcHVzX2lu
dDE2IEFSX1ExM1tNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSXSwKKyAgICBjb25z
dCBvcHVzX2ludCBIYXJtU2hhcGVHYWluX1ExNFtNQVhfTkJfU1VCRlJdLAorICAgIGNvbnN0IG9w
dXNfaW50IFRpbHRfUTE0W01BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19pbnQzMiBMRl9z
aHBfUTE0W01BWF9OQl9TVUJGUl0sCisgICAgY29uc3Qgb3B1c19pbnQzMiBHYWluc19RMTZbTUFY
X05CX1NVQkZSXSwKKyAgICBjb25zdCBvcHVzX2ludCBwaXRjaExbTUFYX05CX1NVQkZSXSwgY29u
c3Qgb3B1c19pbnQgTGFtYmRhX1ExMCwKKyAgICBjb25zdCBvcHVzX2ludCBMVFBfc2NhbGVfUTE0
KTsKKyNkZWZpbmUgT1ZFUlJJREVfc2lsa19OU1FfZGVsX2RlYyAoMSkKKyNkZWZpbmUgc2lsa19O
U1FfZGVsX2RlYyhwc0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZf
UTEyLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgTFRQQ29lZl9RMTQsIEFSX1ExMywgSGFy
bVNoYXBlR2Fpbl9RMTQsIFRpbHRfUTE0LCAgXAorICAgICAgICAgICAgICAgICAgICAgICAgIExG
X3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCAgICAgICAgIFwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICBMVFBfc2NhbGVfUTE0LCBhcmNoKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCisgICAgKCgqU0lMS19OU1FfREVMX0RFQ19JTVBMWyhhcmNoKSZPUFVT
X0FSQ0hNQVNLXSkoICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBwc0VuY0MsIE5T
USwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEyLCBMVFBDb2VmX1ExNCwgICAg
IFwKKyAgICAgICAgQVJfUTEzLCBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsIExGX3NocF9R
MTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBcCisgICAgICAgIExhbWJkYV9RMTAsIExUUF9zY2FsZV9R
MTQpKQorI2VsaWYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikKKyNkZWZpbmUg
T1ZFUlJJREVfc2lsa19OU1FfZGVsX2RlYyAoMSkKKyNkZWZpbmUgc2lsa19OU1FfZGVsX2RlYyhw
c0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEyLCAgIFwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICBMVFBDb2VmX1ExNCwgQVJfUTEzLCBIYXJtU2hhcGVHYWlu
X1ExNCwgVGlsdF9RMTQsICAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBMRl9zaHBfUTE0
LCBHYWluc19RMTYsIHBpdGNoTCwgTGFtYmRhX1ExMCwgICAgICAgICAgIFwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICBMVFBfc2NhbGVfUTE0LCBhcmNoKSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAoKHZvaWQpKGFyY2gpLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgc2lsa19OU1FfZGVsX2Rl
Y19uZW9uKHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIs
IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIExUUENvZWZfUTE0LCBBUl9RMTMsIEhhcm1T
aGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIExG
X3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCAgICAgICAgIFwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIExUUF9zY2FsZV9RMTQpKQorI2VuZGlmCisjZW5kaWYKKwor
I2VuZGlmIC8qIGVuZCBTSUxLX05TUV9ERUxfREVDX0FSTV9IICovCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
YXJtL05TUV9kZWxfZGVjX25lb25faW50ci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfZGVsX2RlY19uZW9uX2lu
dHIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yMTI0MTBmMzYyOTI2MzFkMjJkZTVlYWMyNzJkYTA2OGNmYjhjMTU5
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfZGVsX2RlY19uZW9uX2ludHIuYwpAQCAt
MCwwICsxLDExMjQgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorQ29weXJpZ2h0IChjKSAyMDE3IEdvb2ds
ZSBJbmMuCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworYXJlIG1ldDoKKy0gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAor
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKy0g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKK25vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKK2RvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCistIE5laXRoZXIgdGhlIG5hbWUgb2Yg
SW50ZXJuZXQgU29jaWV0eSwgSUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCituYW1lcyBvZiBz
cGVjaWZpYyBjb250cmlidXRvcnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQor
cHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
ciB3cml0dGVuCitwZXJtaXNzaW9uLgorVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCitBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCitJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFCitMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCitDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCitJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
K0FSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFCitQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLworCisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1ZGUgImNvbmZpZy5oIgorI2Vu
ZGlmCisKKyNpbmNsdWRlIDxhcm1fbmVvbi5oPgorI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisjIGlu
Y2x1ZGUgPHN0cmluZy5oPgorI2VuZGlmCisjaW5jbHVkZSAibWFpbi5oIgorI2luY2x1ZGUgInN0
YWNrX2FsbG9jLmgiCisKKy8qIE5FT04gaW50cmluc2ljcyBvcHRpbWl6YXRpb24gbm93IGNhbiBv
bmx5IHBhcmFsbGVsaXplIHVwIHRvIDQgZGVsYXkgZGVjaXNpb24gc3RhdGVzLiAgICAqLworLyog
SWYgdGhlcmUgYXJlIG1vcmUgc3RhdGVzLCBDIGZ1bmN0aW9uIGlzIGNhbGxlZCwgYW5kIHRoaXMg
b3B0aW1pemF0aW9uIG11c3QgYmUgZXhwYW5kZWQuICovCisjZGVmaW5lIE5FT05fTUFYX0RFTF9E
RUNfU1RBVEVTIDQKKwordHlwZWRlZiBzdHJ1Y3QgeworICAgIG9wdXNfaW50MzIgc0xQQ19RMTRb
IE1BWF9TVUJfRlJBTUVfTEVOR1RIICsgTlNRX0xQQ19CVUZfTEVOR1RIIF1bIE5FT05fTUFYX0RF
TF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBSYW5kU3RhdGVbIERFQ0lTSU9OX0RFTEFZ
IF1bICAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIgUV9RMTBb
ICAgICBERUNJU0lPTl9ERUxBWSBdWyAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAg
ICBvcHVzX2ludDMyIFhxX1ExNFsgICAgREVDSVNJT05fREVMQVkgXVsgICAgIE5FT05fTUFYX0RF
TF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBQcmVkX1ExNVsgIERFQ0lTSU9OX0RFTEFZ
IF1bICAgICBORU9OX01BWF9ERUxfREVDX1NUQVRFUyBdOworICAgIG9wdXNfaW50MzIgU2hhcGVf
UTE0WyBERUNJU0lPTl9ERUxBWSBdWyAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAg
ICBvcHVzX2ludDMyIHNBUjJfUTE0WyBNQVhfU0hBUEVfTFBDX09SREVSIF1bIE5FT05fTUFYX0RF
TF9ERUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBMRl9BUl9RMTRbIE5FT05fTUFYX0RFTF9E
RUNfU1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBEaWZmX1ExNFsgIE5FT05fTUFYX0RFTF9ERUNf
U1RBVEVTIF07CisgICAgb3B1c19pbnQzMiBTZWVkWyAgICAgIE5FT05fTUFYX0RFTF9ERUNfU1RB
VEVTIF07CisgICAgb3B1c19pbnQzMiBTZWVkSW5pdFsgIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVT
IF07CisgICAgb3B1c19pbnQzMiBSRF9RMTBbICAgIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTIF07
Cit9IE5TUV9kZWxfZGVjc19zdHJ1Y3Q7CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBvcHVzX2lu
dDMyIFFfUTEwWyAgICAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2lu
dDMyIFJEX1ExMFsgICAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2lu
dDMyIHhxX1ExNFsgICAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2lu
dDMyIExGX0FSX1ExNFsgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2lu
dDMyIERpZmZfUTE0WyAgICAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2lu
dDMyIHNMVFBfc2hwX1ExNFsgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKKyAgICBvcHVzX2lu
dDMyIExQQ19leGNfUTE0WyAgTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgXTsKK30gTlNRX3NhbXBs
ZXNfc3RydWN0OworCitzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX25zcV9kZWxfZGVjX3Nj
YWxlX3N0YXRlc19uZW9uKAorICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbmNDLCAg
ICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBzaWxrX25zcV9zdGF0ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAv
KiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgTlNRX2Rl
bF9kZWNzX3N0cnVjdCBwc0RlbERlY1tdLCAgICAgICAgICAgICAgICAgLyogSS9PICBEZWxheWVk
IGRlY2lzaW9uIHN0YXRlcyAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAg
eDE2W10sICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIHhfc2NfUTEwW10sICAg
ICAgICAgICAgICAgICAvKiBPICAgIElucHV0IHNjYWxlZCB3aXRoIDEvR2FpbiBpbiBRMTAgICAg
ICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICBzTFRQW10sICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBSZS13aGl0ZW5lZCBMVFAgc3RhdGUgaW4gUTAgICAgICAgICAqLworICAgIG9wdXNf
aW50MzIgICAgICAgICAgc0xUUF9RMTVbXSwgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIHN0
YXRlIG1hdGNoaW5nIHNjYWxlZCBpbnB1dCAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAg
IHN1YmZyLCAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFN1YmZyYW1lIG51bWJlciAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICBMVFBfc2NhbGVfUTE0
LCAgICAgICAgICAgICAgLyogSSAgICBMVFAgc3RhdGUgc2NhbGluZyAgICAgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgR2FpbnNfUTE2WyBNQVhfTkJfU1VCRlIgXSwg
IC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25z
dCBvcHVzX2ludCAgICAgIHBpdGNoTFsgTUFYX05CX1NVQkZSIF0sICAgICAvKiBJICAgIFBpdGNo
IGxhZyAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAg
ICBzaWduYWxfdHlwZSwgICAgICAgICAgICAgICAgLyogSSAgICBTaWduYWwgdHlwZSAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgZGVjaXNpb25EZWxh
eSAgICAgICAgICAgICAgIC8qIEkgICAgRGVjaXNpb24gZGVsYXkgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyk7CisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
CisvKiBOb2lzZSBzaGFwZSBxdWFudGl6ZXIgZm9yIG9uZSBzdWJmcmFtZSAqLworLyoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3N0YXRpYyBPUFVTX0lOTElORSB2
b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWNfbmVvbigKKyAgICBzaWxrX25z
cV9zdGF0ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOU1FfZGVsX2RlY3Nfc3RydWN0IHBzRGVs
RGVjW10sICAgICAgICAgICAgIC8qIEkvTyAgRGVsYXllZCBkZWNpc2lvbiBzdGF0ZXMgICAgICAg
ICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHNpZ25hbFR5cGUsICAgICAgICAgICAg
IC8qIEkgICAgU2lnbmFsIHR5cGUgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25z
dCBvcHVzX2ludDMyICAgIHhfUTEwW10sICAgICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDggICAgICAgICAgIHB1
bHNlc1tdLCAgICAgICAgICAgICAgIC8qIE8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludDE2ICAgICAgICAgIHhxW10sICAgICAgICAgICAgICAg
ICAgIC8qIE8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBv
cHVzX2ludDMyICAgICAgICAgIHNMVFBfUTE1W10sICAgICAgICAgICAgIC8qIEkvTyAgTFRQIGZp
bHRlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAg
IGRlbGF5ZWRHYWluX1ExMFtdLCAgICAgIC8qIEkvTyAgR2FpbiBkZWxheSBidWZmZXIgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIGFfUTEyW10sICAgICAgICAg
ICAgICAgIC8qIEkgICAgU2hvcnQgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludDE2ICAgIGJfUTE0W10sICAgICAgICAgICAgICAgIC8qIEkgICAgTG9u
ZyB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2
ICAgIEFSX3NocF9RMTNbXSwgICAgICAgICAgIC8qIEkgICAgTm9pc2Ugc2hhcGluZyBjb2VmcyAg
ICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIGxhZywgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgUGl0Y2ggbGFnICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBvcHVzX2ludDMyICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQsIC8qIEkgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAg
ICAgICAgIFRpbHRfUTE0LCAgICAgICAgICAgICAgIC8qIEkgICAgU3BlY3RyYWwgdGlsdCAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIExGX3NocF9RMTQs
ICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIEdhaW5fUTE2LCAgICAgICAgICAgICAgIC8qIEkg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAg
ICAgICAgICAgIExhbWJkYV9RMTAsICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIG9mZnNldF9R
MTAsICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgIC8q
IEkgICAgSW5wdXQgbGVuZ3RoICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2lu
dCAgICAgICAgICAgIHN1YmZyLCAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3ViZnJhbWUgbnVt
YmVyICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHNoYXBp
bmdMUENPcmRlciwgICAgICAgIC8qIEkgICAgU2hhcGluZyBMUEMgZmlsdGVyIG9yZGVyICAgICAg
ICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHByZWRpY3RMUENPcmRlciwgICAgICAg
IC8qIEkgICAgUHJlZGljdGlvbiBmaWx0ZXIgb3JkZXIgICAgICAgICAgICAgKi8KKyAgICBvcHVz
X2ludCAgICAgICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIG5T
dGF0ZXNEZWxheWVkRGVjaXNpb24sIC8qIEkgICAgTnVtYmVyIG9mIHN0YXRlcyBpbiBkZWNpc2lv
biB0cmVlICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9pZHgsICAgICAg
ICAgIC8qIEkvTyAgSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAgKi8KKyAgICBv
cHVzX2ludCAgICAgICAgICAgIGRlY2lzaW9uRGVsYXkgICAgICAgICAgIC8qIEkgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyk7CisKK3N0YXRpYyBPUFVTX0lOTElO
RSB2b2lkIGNvcHlfd2lubmVyX3N0YXRlX2tlcm5lbCgKKyAgICBjb25zdCBOU1FfZGVsX2RlY3Nf
c3RydWN0ICpwc0RlbERlYywKKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgIG9mZnNldCwK
KyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgIGxhc3Rfc21wbGVfaWR4LAorICAgIGNvbnN0
IG9wdXNfaW50ICAgICAgICAgICAgV2lubmVyX2luZCwKKyAgICBjb25zdCBpbnQzMngyX3QgICAg
ICAgICAgIGdhaW5fbG9fczMyeDIsCisgICAgY29uc3QgaW50MzJ4Ml90ICAgICAgICAgICBnYWlu
X2hpX3MzMngyLAorICAgIGNvbnN0IGludDMyeDRfdCAgICAgICAgICAgc2hpZnRfczMyeDQsCisg
ICAgaW50MzJ4NF90ICAgICAgICAgICAgICAgICB0MF9zMzJ4NCwKKyAgICBpbnQzMng0X3QgICAg
ICAgICAgICAgICAgIHQxX3MzMng0LAorICAgIG9wdXNfaW50OCAqY29uc3QgICAgICAgICAgcHVs
c2VzLAorICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKnB4cSwKKyAgICBzaWxrX25zcV9z
dGF0ZSAgICAgICAgICAgICpOU1EKKykKK3sKKyAgICBpbnQxNng4X3QgdF9zMTZ4ODsKKyAgICBp
bnQzMng0X3QgbzBfczMyeDQsIG8xX3MzMng0OworCisgICAgdDBfczMyeDQgPSB2bGQxcV9sYW5l
X3MzMiggJnBzRGVsRGVjLT5RX1ExMFsgbGFzdF9zbXBsZV9pZHggLSAwIF1bIFdpbm5lcl9pbmQg
XSwgdDBfczMyeDQsIDAgKTsKKyAgICB0MF9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxE
ZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCAtIDEgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwg
MSApOworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+UV9RMTBbIGxh
c3Rfc21wbGVfaWR4IC0gMiBdWyBXaW5uZXJfaW5kIF0sIHQwX3MzMng0LCAyICk7CisgICAgdDBf
czMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5RX1ExMFsgbGFzdF9zbXBsZV9pZHgg
LSAzIF1bIFdpbm5lcl9pbmQgXSwgdDBfczMyeDQsIDMgKTsKKyAgICB0MV9zMzJ4NCA9IHZsZDFx
X2xhbmVfczMyKCAmcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCAtIDQgXVsgV2lubmVy
X2luZCBdLCB0MV9zMzJ4NCwgMCApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZw
c0RlbERlYy0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4IC0gNSBdWyBXaW5uZXJfaW5kIF0sIHQxX3Mz
Mng0LCAxICk7CisgICAgdDFfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5RX1Ex
MFsgbGFzdF9zbXBsZV9pZHggLSA2IF1bIFdpbm5lcl9pbmQgXSwgdDFfczMyeDQsIDIgKTsKKyAg
ICB0MV9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxl
X2lkeCAtIDcgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMyApOworICAgIHRfczE2eDggPSB2
Y29tYmluZV9zMTYoIHZyc2hybl9uX3MzMiggdDBfczMyeDQsIDEwICksIHZyc2hybl9uX3MzMigg
dDFfczMyeDQsIDEwICkgKTsKKyAgICB2c3QxX3M4KCAmcHVsc2VzWyBvZmZzZXQgXSwgdm1vdm5f
czE2KCB0X3MxNng4ICkgKTsKKworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0Rl
bERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDAgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4
NCwgMCApOworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0
WyBsYXN0X3NtcGxlX2lkeCAtIDEgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMSApOworICAg
IHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxl
X2lkeCAtIDIgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMiApOworICAgIHQwX3MzMng0ID0g
dmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDMgXVsg
V2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMyApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9z
MzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDQgXVsgV2lubmVyX2luZCBd
LCB0MV9zMzJ4NCwgMCApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERl
Yy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDUgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwg
MSApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBs
YXN0X3NtcGxlX2lkeCAtIDYgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMiApOworICAgIHQx
X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+WHFfUTE0WyBsYXN0X3NtcGxlX2lk
eCAtIDcgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMyApOworICAgIG8wX3MzMng0ID0gdnFk
bXVsaHFfbGFuZV9zMzIoIHQwX3MzMng0LCBnYWluX2xvX3MzMngyLCAwICk7CisgICAgbzFfczMy
eDQgPSB2cWRtdWxocV9sYW5lX3MzMiggdDFfczMyeDQsIGdhaW5fbG9fczMyeDIsIDAgKTsKKyAg
ICBvMF9zMzJ4NCA9IHZtbGFxX2xhbmVfczMyKCBvMF9zMzJ4NCwgdDBfczMyeDQsIGdhaW5faGlf
czMyeDIsIDAgKTsKKyAgICBvMV9zMzJ4NCA9IHZtbGFxX2xhbmVfczMyKCBvMV9zMzJ4NCwgdDFf
czMyeDQsIGdhaW5faGlfczMyeDIsIDAgKTsKKyAgICBvMF9zMzJ4NCA9IHZyc2hscV9zMzIoIG8w
X3MzMng0LCBzaGlmdF9zMzJ4NCApOworICAgIG8xX3MzMng0ID0gdnJzaGxxX3MzMiggbzFfczMy
eDQsIHNoaWZ0X3MzMng0ICk7CisgICAgdnN0MV9zMTYoICZweHFbIG9mZnNldCArIDAgXSwgdnFt
b3ZuX3MzMiggbzBfczMyeDQgKSApOworICAgIHZzdDFfczE2KCAmcHhxWyBvZmZzZXQgKyA0IF0s
IHZxbW92bl9zMzIoIG8xX3MzMng0ICkgKTsKKworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9z
MzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDAgXVsgV2lubmVyX2lu
ZCBdLCB0MF9zMzJ4NCwgMCApOworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0Rl
bERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDEgXVsgV2lubmVyX2luZCBdLCB0MF9z
MzJ4NCwgMSApOworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hh
cGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDIgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMiAp
OworICAgIHQwX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBs
YXN0X3NtcGxlX2lkeCAtIDMgXVsgV2lubmVyX2luZCBdLCB0MF9zMzJ4NCwgMyApOworICAgIHQx
X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxl
X2lkeCAtIDQgXVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMCApOworICAgIHQxX3MzMng0ID0g
dmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDUg
XVsgV2lubmVyX2luZCBdLCB0MV9zMzJ4NCwgMSApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFu
ZV9zMzIoICZwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDYgXVsgV2lubmVy
X2luZCBdLCB0MV9zMzJ4NCwgMiApOworICAgIHQxX3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZw
c0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCAtIDcgXVsgV2lubmVyX2luZCBdLCB0
MV9zMzJ4NCwgMyApOworICAgIHZzdDFxX3MzMiggJk5TUS0+c0xUUF9zaHBfUTE0WyBOU1EtPnNM
VFBfc2hwX2J1Zl9pZHggKyBvZmZzZXQgKyAwIF0sIHQwX3MzMng0ICk7CisgICAgdnN0MXFfczMy
KCAmTlNRLT5zTFRQX3NocF9RMTRbIE5TUS0+c0xUUF9zaHBfYnVmX2lkeCArIG9mZnNldCArIDQg
XSwgdDFfczMyeDQgKTsKK30KKworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgY29weV93aW5uZXJf
c3RhdGUoCisgICAgY29uc3QgTlNRX2RlbF9kZWNzX3N0cnVjdCAqcHNEZWxEZWMsCisgICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICBkZWNpc2lvbkRlbGF5LAorICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgc21wbF9idWZfaWR4LAorICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
V2lubmVyX2luZCwKKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgIGdhaW4sCisgICAgY29u
c3Qgb3B1c19pbnQzMiAgICAgICAgICBzaGlmdCwKKyAgICBvcHVzX2ludDggKmNvbnN0ICAgICAg
ICAgIHB1bHNlcywKKyAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICpweHEsCisgICAgc2ls
a19uc3Ffc3RhdGUgICAgICAgICAgICAqTlNRCispCit7CisgICAgb3B1c19pbnQgICAgICAgIGks
IGxhc3Rfc21wbGVfaWR4OworICAgIGNvbnN0IGludDMyeDJfdCBnYWluX2xvX3MzMngyID0gdmR1
cF9uX3MzMiggc2lsa19MU0hJRlQzMiggZ2FpbiAmIDB4MDAwMEZGRkYsIDE1ICkgKTsKKyAgICBj
b25zdCBpbnQzMngyX3QgZ2Fpbl9oaV9zMzJ4MiA9IHZkdXBfbl9zMzIoIGdhaW4gPj4gMTYgKTsK
KyAgICBjb25zdCBpbnQzMng0X3Qgc2hpZnRfczMyeDQgPSB2ZHVwcV9uX3MzMiggLXNoaWZ0ICk7
CisgICAgaW50MzJ4NF90ICAgICAgIHQwX3MzMng0LCB0MV9zMzJ4NDsKKworICAgIHQwX3MzMng0
ID0gdDFfczMyeDQgPSB2ZHVwcV9uX3MzMiggMCApOyAvKiBpbml0aWFsaXphdGlvbiAqLworICAg
IGxhc3Rfc21wbGVfaWR4ID0gc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheSAtIDEgKyBERUNJ
U0lPTl9ERUxBWTsKKyAgICBpZiggbGFzdF9zbXBsZV9pZHggPj0gREVDSVNJT05fREVMQVkgKSBs
YXN0X3NtcGxlX2lkeCAtPSBERUNJU0lPTl9ERUxBWTsKKyAgICBpZiggbGFzdF9zbXBsZV9pZHgg
Pj0gREVDSVNJT05fREVMQVkgKSBsYXN0X3NtcGxlX2lkeCAtPSBERUNJU0lPTl9ERUxBWTsKKwor
ICAgIGZvciggaSA9IDA7ICggaSA8ICggZGVjaXNpb25EZWxheSAtIDcgKSApICYmICggbGFzdF9z
bXBsZV9pZHggPj0gNyApOyBpICs9IDgsIGxhc3Rfc21wbGVfaWR4IC09IDggKSB7CisgICAgICAg
IGNvcHlfd2lubmVyX3N0YXRlX2tlcm5lbCggcHNEZWxEZWMsIGkgLSBkZWNpc2lvbkRlbGF5LCBs
YXN0X3NtcGxlX2lkeCwgV2lubmVyX2luZCwgZ2Fpbl9sb19zMzJ4MiwgZ2Fpbl9oaV9zMzJ4Miwg
c2hpZnRfczMyeDQsIHQwX3MzMng0LCB0MV9zMzJ4NCwgcHVsc2VzLCBweHEsIE5TUSApOworICAg
IH0KKyAgICBmb3IoIDsgKCBpIDwgZGVjaXNpb25EZWxheSApICYmICggbGFzdF9zbXBsZV9pZHgg
Pj0gMCApOyBpKyssIGxhc3Rfc21wbGVfaWR4LS0gKSB7CisgICAgICAgIHB1bHNlc1sgaSAtIGRl
Y2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDgpc2lsa19SU0hJRlRfUk9VTkQoIHBzRGVsRGVjLT5R
X1ExMFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdLCAxMCApOworICAgICAgICBweHFb
IGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElG
VF9ST1VORCggc2lsa19TTVVMV1coIHBzRGVsRGVjLT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IF1b
IFdpbm5lcl9pbmQgXSwgZ2FpbiApLCBzaGlmdCApICk7CisgICAgICAgIE5TUS0+c0xUUF9zaHBf
UTE0WyBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggLSBkZWNpc2lvbkRlbGF5ICsgaSBdID0gcHNEZWxE
ZWMtPlNoYXBlX1ExNFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdOworICAgIH0KKwor
ICAgIGxhc3Rfc21wbGVfaWR4ICs9IERFQ0lTSU9OX0RFTEFZOworICAgIGZvciggOyBpIDwgKCBk
ZWNpc2lvbkRlbGF5IC0gNyApOyBpKyssIGxhc3Rfc21wbGVfaWR4LS0gKSB7CisgICAgICAgIGNv
cHlfd2lubmVyX3N0YXRlX2tlcm5lbCggcHNEZWxEZWMsIGkgLSBkZWNpc2lvbkRlbGF5LCBsYXN0
X3NtcGxlX2lkeCwgV2lubmVyX2luZCwgZ2Fpbl9sb19zMzJ4MiwgZ2Fpbl9oaV9zMzJ4Miwgc2hp
ZnRfczMyeDQsIHQwX3MzMng0LCB0MV9zMzJ4NCwgcHVsc2VzLCBweHEsIE5TUSApOworICAgIH0K
KyAgICBmb3IoIDsgaSA8IGRlY2lzaW9uRGVsYXk7IGkrKywgbGFzdF9zbXBsZV9pZHgtLSApIHsK
KyAgICAgICAgcHVsc2VzWyBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50OClzaWxrX1JT
SElGVF9ST1VORCggcHNEZWxEZWMtPlFfUTEwWyBsYXN0X3NtcGxlX2lkeCBdWyBXaW5uZXJfaW5k
IF0sIDEwICk7CisgICAgICAgIHB4cVsgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDE2
KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX1NNVUxXVyggcHNEZWxEZWMtPlhx
X1ExNFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdLCBnYWluICksIHNoaWZ0ICkgKTsK
KyAgICAgICAgTlNRLT5zTFRQX3NocF9RMTRbIE5TUS0+c0xUUF9zaHBfYnVmX2lkeCAtIGRlY2lz
aW9uRGVsYXkgKyBpIF0gPSBwc0RlbERlYy0+U2hhcGVfUTE0WyBsYXN0X3NtcGxlX2lkeCBdWyBX
aW5uZXJfaW5kIF07CisgICAgfQorfQorCit2b2lkIHNpbGtfTlNRX2RlbF9kZWNfbmVvbigKKyAg
ICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUgICAgKnBzRW5jQywgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBzaWxrX25zcV9zdGF0ZSAgICAgICAgICAgICAgKk5TUSwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBTaWRlSW5mb0luZGljZXMgICAgICAgICAgICAgKnBzSW5kaWNlcywgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFF1YW50aXphdGlvbiBJbmRpY2Vz
ICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgeDE2W10sICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgcHVs
c2VzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFF1YW50aXpl
ZCBwdWxzZSBzaWduYWwgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAg
ICAgUHJlZENvZWZfUTEyWyAyICogTUFYX0xQQ19PUkRFUiBdLCAgICAgICAgICAvKiBJICAgIFNo
b3J0IHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgTFRQQ29lZl9RMTRbIExUUF9PUkRFUiAqIE1BWF9OQl9TVUJGUiBdLCAgICAvKiBJ
ICAgIExvbmcgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dDE2ICAgICAgICAgICAgQVJfUTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVS
IF0sIC8qIEkgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgSGFybVNoYXBlR2Fpbl9RMTRbIE1BWF9OQl9TVUJGUiBdLCAg
ICAgICAgICAvKiBJICAgIExvbmcgdGVybSBzaGFwaW5nIGNvZWZzICAgICAgICAgKi8KKyAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgVGlsdF9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIFNwZWN0cmFsIHRpbHQgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgTEZfc2hwX1ExNFsgTUFYX05CX1NVQkZS
IF0sICAgICAgICAgICAgICAgICAvKiBJICAgIExvdyBmcmVxdWVuY3kgc2hhcGluZyBjb2VmcyAg
ICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgR2FpbnNfUTE2WyBNQVhfTkJf
U1VCRlIgXSwgICAgICAgICAgICAgICAgICAvKiBJICAgIFF1YW50aXphdGlvbiBzdGVwIHNpemVz
ICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgcGl0Y2hMWyBNQVhf
TkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFBpdGNoIGxhZ3MgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgTGFtYmRh
X1ExMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJhdGUvZGlzdG9y
dGlvbiB0cmFkZW9mZiAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAg
TFRQX3NjYWxlX1ExNCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExUUCBz
dGF0ZSBzY2FsaW5nICAgICAgICAgICAgICAgKi8KKykKK3sKKyNpZmRlZiBPUFVTX0NIRUNLX0FT
TQorICAgIHNpbGtfbnNxX3N0YXRlIE5TUV9jOworICAgIFNpZGVJbmZvSW5kaWNlcyBwc0luZGlj
ZXNfYzsKKyAgICBvcHVzX2ludDggcHVsc2VzX2NbIE1BWF9GUkFNRV9MRU5HVEggXTsKKyAgICBj
b25zdCBvcHVzX2ludDggKmNvbnN0IHB1bHNlc19hID0gcHVsc2VzOworCisgICAgKCB2b2lkIClw
dWxzZXNfYTsKKyAgICBzaWxrX21lbWNweSggJk5TUV9jLCBOU1EsIHNpemVvZiggTlNRX2MgKSAp
OworICAgIHNpbGtfbWVtY3B5KCAmcHNJbmRpY2VzX2MsIHBzSW5kaWNlcywgc2l6ZW9mKCBwc0lu
ZGljZXNfYyApICk7CisgICAgc2lsa19tZW1jcHkoIHB1bHNlc19jLCBwdWxzZXMsIHNpemVvZigg
cHVsc2VzX2MgKSApOworICAgIHNpbGtfTlNRX2RlbF9kZWNfYyggcHNFbmNDLCAmTlNRX2MsICZw
c0luZGljZXNfYywgeDE2LCBwdWxzZXNfYywgUHJlZENvZWZfUTEyLCBMVFBDb2VmX1ExNCwgQVJf
UTEzLCBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsIExGX3NocF9RMTQsIEdhaW5zX1ExNiwK
KyAgICAgICAgICAgICAgICAgICAgICAgcGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0
ICk7CisjZW5kaWYKKworICAgIC8qIFRoZSBvcHRpbWl6YXRpb24gcGFyYWxsZWxpemVzIHRoZSBk
aWZmZXJlbnQgZGVsYXkgZGVjaXNpb24gc3RhdGVzLiAqLworICAgIGlmKCggcHNFbmNDLT5uU3Rh
dGVzRGVsYXllZERlY2lzaW9uID4gTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKSB8fCAoIHBzRW5j
Qy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbiA8PSAyICkpIHsKKyAgICAgICAgLyogTkVPTiBpbnRy
aW5zaWNzIG9wdGltaXphdGlvbiBub3cgY2FuIG9ubHkgcGFyYWxsZWxpemUgdXAgdG8gNCBkZWxh
eSBkZWNpc2lvbiBzdGF0ZXMuICAgICovCisgICAgICAgIC8qIElmIHRoZXJlIGFyZSBtb3JlIHN0
YXRlcywgQyBmdW5jdGlvbiBpcyBjYWxsZWQsIGFuZCB0aGlzIG9wdGltaXphdGlvbiBtdXN0IGJl
IGV4cGFuZGVkLiAqLworICAgICAgICAvKiBXaGVuIHRoZSBudW1iZXIgb2YgZGVsYXkgZGVjaXNp
b24gc3RhdGVzIGlzIGxlc3MgdGhhbiAzLCB0aGVyZSBhcmUgcGVuYWx0aWVzIHVzaW5nIHRoaXMg
Ki8KKyAgICAgICAgLyogb3B0aW1pemF0aW9uLCBhbmQgQyBmdW5jdGlvbiBpcyBjYWxsZWQuICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAg
IC8qIFdoZW4gdGhlIG51bWJlciBvZiBkZWxheSBkZWNpc2lvbiBzdGF0ZXMgaXMgMiwgaXQncyBi
ZXR0ZXIgdG8gc3BlY2lhbGl6ZSBhbm90aGVyICAgICAgICAqLworICAgICAgICAvKiBzdHJ1Y3R1
cmUgTlNRX2RlbF9kZWMyX3N0cnVjdCBhbmQgb3B0aW1pemUgd2l0aCBzaG9ydGVyIE5FT04gcmVn
aXN0ZXJzLiAoTG93IHByaW9yaXR5KSAgKi8KKyAgICAgICAgc2lsa19OU1FfZGVsX2RlY19jKCBw
c0VuY0MsIE5TUSwgcHNJbmRpY2VzLCB4MTYsIHB1bHNlcywgUHJlZENvZWZfUTEyLCBMVFBDb2Vm
X1ExNCwgQVJfUTEzLCBIYXJtU2hhcGVHYWluX1ExNCwKKyAgICAgICAgICAgIFRpbHRfUTE0LCBM
Rl9zaHBfUTE0LCBHYWluc19RMTYsIHBpdGNoTCwgTGFtYmRhX1ExMCwgTFRQX3NjYWxlX1ExNCAp
OworICAgIH0gZWxzZSB7CisgICAgICAgIG9wdXNfaW50ICAgICAgICAgICAgaSwgaywgbGFnLCBz
dGFydF9pZHgsIExTRl9pbnRlcnBvbGF0aW9uX2ZsYWcsIFdpbm5lcl9pbmQsIHN1YmZyOworICAg
ICAgICBvcHVzX2ludCAgICAgICAgICAgIHNtcGxfYnVmX2lkeCwgZGVjaXNpb25EZWxheTsKKyAg
ICAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAqQV9RMTIsICpCX1ExNCwgKkFSX3NocF9RMTM7Cisg
ICAgICAgIG9wdXNfaW50MTYgICAgICAgICAgKnB4cTsKKyAgICAgICAgVkFSREVDTCggb3B1c19p
bnQzMiwgc0xUUF9RMTUgKTsKKyAgICAgICAgVkFSREVDTCggb3B1c19pbnQxNiwgc0xUUCApOwor
ICAgICAgICBvcHVzX2ludDMyICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQ7CisgICAg
ICAgIG9wdXNfaW50ICAgICAgICAgICAgb2Zmc2V0X1ExMDsKKyAgICAgICAgb3B1c19pbnQzMiAg
ICAgICAgICBSRG1pbl9RMTAsIEdhaW5fUTEwOworICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMy
LCB4X3NjX1ExMCApOworICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBkZWxheWVkR2Fpbl9R
MTAgKTsKKyAgICAgICAgVkFSREVDTCggTlNRX2RlbF9kZWNzX3N0cnVjdCwgcHNEZWxEZWMgKTsK
KyAgICAgICAgaW50MzJ4NF90ICAgICAgICAgICB0X3MzMng0OworICAgICAgICBTQVZFX1NUQUNL
OworCisgICAgICAgIC8qIFNldCB1bnZvaWNlZCBsYWcgdG8gdGhlIHByZXZpb3VzIG9uZSwgb3Zl
cndyaXRlIGxhdGVyIGZvciB2b2ljZWQgKi8KKyAgICAgICAgbGFnID0gTlNRLT5sYWdQcmV2Owor
CisgICAgICAgIHNpbGtfYXNzZXJ0KCBOU1EtPnByZXZfZ2Fpbl9RMTYgIT0gMCApOworCisgICAg
ICAgIC8qIEluaXRpYWxpemUgZGVsYXllZCBkZWNpc2lvbiBzdGF0ZXMgKi8KKyAgICAgICAgQUxM
T0MoIHBzRGVsRGVjLCAxLCBOU1FfZGVsX2RlY3Nfc3RydWN0ICk7CisgICAgICAgIC8qIE9ubHkg
UmFuZFN0YXRlIGFuZCBSRF9RMTAgbmVlZCB0byBiZSBpbml0aWFsaXplZCB0byAwLiAqLworICAg
ICAgICBzaWxrX21lbXNldCggcHNEZWxEZWMtPlJhbmRTdGF0ZSwgMCwgc2l6ZW9mKCBwc0RlbERl
Yy0+UmFuZFN0YXRlICkgKTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+UkRfUTEwLCB2
ZHVwcV9uX3MzMiggMCApICk7CisKKyAgICAgICAgZm9yKCBrID0gMDsgayA8IHBzRW5jQy0+blN0
YXRlc0RlbGF5ZWREZWNpc2lvbjsgaysrICkgeworICAgICAgICAgICAgcHNEZWxEZWMtPlNlZWRJ
bml0WyBrIF0gPSBwc0RlbERlYy0+U2VlZFsgayBdID0gKCBrICsgcHNJbmRpY2VzLT5TZWVkICkg
JiAzOworICAgICAgICB9CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPkxGX0FSX1ExNCwg
dmxkMXFfZHVwX3MzMiggJk5TUS0+c0xGX0FSX3NocF9RMTQgKSApOworICAgICAgICB2c3QxcV9z
MzIoIHBzRGVsRGVjLT5EaWZmX1ExNCwgdmxkMXFfZHVwX3MzMiggJk5TUS0+c0RpZmZfc2hwX1Ex
NCApICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlNoYXBlX1ExNFsgMCBdLCB2bGQx
cV9kdXBfczMyKCAmTlNRLT5zTFRQX3NocF9RMTRbIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggLSAx
IF0gKSApOworICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTlNRX0xQQ19CVUZfTEVOR1RIOyBpKysg
KSB7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5zTFBDX1ExNFsgaSBdLCB2bGQx
cV9kdXBfczMyKCAmTlNRLT5zTFBDX1ExNFsgaSBdICkgKTsKKyAgICAgICAgfQorICAgICAgICBm
b3IoIGkgPSAwOyBpIDwgKG9wdXNfaW50KSggc2l6ZW9mKCBOU1EtPnNBUjJfUTE0ICkgLyBzaXpl
b2YoIE5TUS0+c0FSMl9RMTRbIDAgXSApICk7IGkrKyApIHsKKyAgICAgICAgICAgIHZzdDFxX3Mz
MiggcHNEZWxEZWMtPnNBUjJfUTE0WyBpIF0sIHZsZDFxX2R1cF9zMzIoICZOU1EtPnNBUjJfUTE0
WyBpIF0gKSApOworICAgICAgICB9CisKKyAgICAgICAgb2Zmc2V0X1ExMCAgID0gc2lsa19RdWFu
dGl6YXRpb25fT2Zmc2V0c19RMTBbIHBzSW5kaWNlcy0+c2lnbmFsVHlwZSA+PiAxIF1bIHBzSW5k
aWNlcy0+cXVhbnRPZmZzZXRUeXBlIF07CisgICAgICAgIHNtcGxfYnVmX2lkeCA9IDA7IC8qIGlu
ZGV4IG9mIG9sZGVzdCBzYW1wbGVzICovCisKKyAgICAgICAgZGVjaXNpb25EZWxheSA9IHNpbGtf
bWluX2ludCggREVDSVNJT05fREVMQVksIHBzRW5jQy0+c3ViZnJfbGVuZ3RoICk7CisKKyAgICAg
ICAgLyogRm9yIHZvaWNlZCBmcmFtZXMgbGltaXQgdGhlIGRlY2lzaW9uIGRlbGF5IHRvIGxvd2Vy
IHRoYW4gdGhlIHBpdGNoIGxhZyAqLworICAgICAgICBpZiggcHNJbmRpY2VzLT5zaWduYWxUeXBl
ID09IFRZUEVfVk9JQ0VEICkgeworICAgICAgICAgICAgb3B1c19pbnQgcGl0Y2hfbWluID0gcGl0
Y2hMWyAwIF07CisgICAgICAgICAgICBmb3IoIGsgPSAxOyBrIDwgcHNFbmNDLT5uYl9zdWJmcjsg
aysrICkgeworICAgICAgICAgICAgICAgIHBpdGNoX21pbiA9IHNpbGtfbWluX2ludCggcGl0Y2hf
bWluLCBwaXRjaExbIGsgXSApOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZGVjaXNpb25E
ZWxheSA9IHNpbGtfbWluX2ludCggZGVjaXNpb25EZWxheSwgcGl0Y2hfbWluIC0gTFRQX09SREVS
IC8gMiAtIDEgKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGlmKCBsYWcgPiAwICkg
eworICAgICAgICAgICAgICAgIGRlY2lzaW9uRGVsYXkgPSBzaWxrX21pbl9pbnQoIGRlY2lzaW9u
RGVsYXksIGxhZyAtIExUUF9PUkRFUiAvIDIgLSAxICk7CisgICAgICAgICAgICB9CisgICAgICAg
IH0KKworICAgICAgICBpZiggcHNJbmRpY2VzLT5OTFNGSW50ZXJwQ29lZl9RMiA9PSA0ICkgewor
ICAgICAgICAgICAgTFNGX2ludGVycG9sYXRpb25fZmxhZyA9IDA7CisgICAgICAgIH0gZWxzZSB7
CisgICAgICAgICAgICBMU0ZfaW50ZXJwb2xhdGlvbl9mbGFnID0gMTsKKyAgICAgICAgfQorCisg
ICAgICAgIEFMTE9DKCBzTFRQX1ExNSwgcHNFbmNDLT5sdHBfbWVtX2xlbmd0aCArIHBzRW5jQy0+
ZnJhbWVfbGVuZ3RoLCBvcHVzX2ludDMyICk7CisgICAgICAgIEFMTE9DKCBzTFRQLCBwc0VuY0Mt
Pmx0cF9tZW1fbGVuZ3RoICsgcHNFbmNDLT5mcmFtZV9sZW5ndGgsIG9wdXNfaW50MTYgKTsKKyAg
ICAgICAgQUxMT0MoIHhfc2NfUTEwLCBwc0VuY0MtPnN1YmZyX2xlbmd0aCwgb3B1c19pbnQzMiAp
OworICAgICAgICBBTExPQyggZGVsYXllZEdhaW5fUTEwLCBERUNJU0lPTl9ERUxBWSwgb3B1c19p
bnQzMiApOworICAgICAgICAvKiBTZXQgdXAgcG9pbnRlcnMgdG8gc3RhcnQgb2Ygc3ViIGZyYW1l
ICovCisgICAgICAgIHB4cSAgICAgICAgICAgICAgICAgICA9ICZOU1EtPnhxWyBwc0VuY0MtPmx0
cF9tZW1fbGVuZ3RoIF07CisgICAgICAgIE5TUS0+c0xUUF9zaHBfYnVmX2lkeCA9IHBzRW5jQy0+
bHRwX21lbV9sZW5ndGg7CisgICAgICAgIE5TUS0+c0xUUF9idWZfaWR4ICAgICA9IHBzRW5jQy0+
bHRwX21lbV9sZW5ndGg7CisgICAgICAgIHN1YmZyID0gMDsKKyAgICAgICAgZm9yKCBrID0gMDsg
ayA8IHBzRW5jQy0+bmJfc3ViZnI7IGsrKyApIHsKKyAgICAgICAgICAgIEFfUTEyICAgICAgPSAm
UHJlZENvZWZfUTEyWyAoICggayA+PiAxICkgfCAoIDEgLSBMU0ZfaW50ZXJwb2xhdGlvbl9mbGFn
ICkgKSAqIE1BWF9MUENfT1JERVIgXTsKKyAgICAgICAgICAgIEJfUTE0ICAgICAgPSAmTFRQQ29l
Zl9RMTRbIGsgKiBMVFBfT1JERVIgICAgICAgICAgIF07CisgICAgICAgICAgICBBUl9zaHBfUTEz
ID0gJkFSX1ExM1sgICAgIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07CisKKyAgICAgICAgICAg
IC8qIE5vaXNlIHNoYXBlIHBhcmFtZXRlcnMgKi8KKyAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBI
YXJtU2hhcGVHYWluX1ExNFsgayBdID49IDAgKTsKKyAgICAgICAgICAgIEhhcm1TaGFwZUZJUlBh
Y2tlZF9RMTQgID0gICAgICAgICAgICAgICAgICAgICAgICAgIHNpbGtfUlNISUZUKCBIYXJtU2hh
cGVHYWluX1ExNFsgayBdLCAyICk7CisgICAgICAgICAgICBIYXJtU2hhcGVGSVJQYWNrZWRfUTE0
IHw9IHNpbGtfTFNISUZUKCAob3B1c19pbnQzMilzaWxrX1JTSElGVCggSGFybVNoYXBlR2Fpbl9R
MTRbIGsgXSwgMSApLCAxNiApOworCisgICAgICAgICAgICBOU1EtPnJld2hpdGVfZmxhZyA9IDA7
CisgICAgICAgICAgICBpZiggcHNJbmRpY2VzLT5zaWduYWxUeXBlID09IFRZUEVfVk9JQ0VEICkg
eworICAgICAgICAgICAgICAgIC8qIFZvaWNlZCAqLworICAgICAgICAgICAgICAgIGxhZyA9IHBp
dGNoTFsgayBdOworCisgICAgICAgICAgICAgICAgLyogUmUtd2hpdGVuaW5nICovCisgICAgICAg
ICAgICAgICAgaWYoICggayAmICggMyAtIHNpbGtfTFNISUZUKCBMU0ZfaW50ZXJwb2xhdGlvbl9m
bGFnLCAxICkgKSApID09IDAgKSB7CisgICAgICAgICAgICAgICAgICAgIGlmKCBrID09IDIgKSB7
CisgICAgICAgICAgICAgICAgICAgICAgICAvKiBSRVNFVCBERUxBWUVEIERFQ0lTSU9OUyAqLwor
ICAgICAgICAgICAgICAgICAgICAgICAgLyogRmluZCB3aW5uZXIgKi8KKyAgICAgICAgICAgICAg
ICAgICAgICAgIGludDMyeDRfdCBSRF9RMTBfczMyeDQ7CisgICAgICAgICAgICAgICAgICAgICAg
ICBSRG1pbl9RMTAgPSBwc0RlbERlYy0+UkRfUTEwWyAwIF07CisgICAgICAgICAgICAgICAgICAg
ICAgICBXaW5uZXJfaW5kID0gMDsKKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciggaSA9IDE7
IGkgPCBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb247IGkrKyApIHsKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpZiggcHNEZWxEZWMtPlJEX1ExMFsgaSBdIDwgUkRtaW5fUTEwICkg
eworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSRG1pbl9RMTAgPSBwc0RlbERlYy0+
UkRfUTEwWyBpIF07CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdpbm5lcl9pbmQg
PSBpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICAgICAgICAgICAgIHBzRGVsRGVjLT5SRF9RMTBbIFdpbm5lcl9p
bmQgXSAtPSAoIHNpbGtfaW50MzJfTUFYID4+IDQgKTsKKyAgICAgICAgICAgICAgICAgICAgICAg
IFJEX1ExMF9zMzJ4NCA9IHZsZDFxX3MzMiggcHNEZWxEZWMtPlJEX1ExMCApOworICAgICAgICAg
ICAgICAgICAgICAgICAgUkRfUTEwX3MzMng0ID0gdmFkZHFfczMyKCBSRF9RMTBfczMyeDQsIHZk
dXBxX25fczMyKCBzaWxrX2ludDMyX01BWCA+PiA0ICkgKTsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlJEX1ExMCwgUkRfUTEwX3MzMng0ICk7CisKKyAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIENvcHkgZmluYWwgcGFydCBvZiBzaWduYWxzIGZyb20gd2lu
bmVyIHN0YXRlIHRvIG91dHB1dCBhbmQgbG9uZy10ZXJtIGZpbHRlciBzdGF0ZXMgKi8KKyAgICAg
ICAgICAgICAgICAgICAgICAgIGNvcHlfd2lubmVyX3N0YXRlKCBwc0RlbERlYywgZGVjaXNpb25E
ZWxheSwgc21wbF9idWZfaWR4LCBXaW5uZXJfaW5kLCBHYWluc19RMTZbIDEgXSwgMTQsIHB1bHNl
cywgcHhxLCBOU1EgKTsKKworICAgICAgICAgICAgICAgICAgICAgICAgc3ViZnIgPSAwOworICAg
ICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAgLyogUmV3aGl0ZW4gd2l0
aCBuZXcgQSBjb2VmcyAqLworICAgICAgICAgICAgICAgICAgICBzdGFydF9pZHggPSBwc0VuY0Mt
Pmx0cF9tZW1fbGVuZ3RoIC0gbGFnIC0gcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIgLSBMVFBfT1JE
RVIgLyAyOworICAgICAgICAgICAgICAgICAgICBzaWxrX2Fzc2VydCggc3RhcnRfaWR4ID4gMCAp
OworCisgICAgICAgICAgICAgICAgICAgIHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlciggJnNMVFBb
IHN0YXJ0X2lkeCBdLCAmTlNRLT54cVsgc3RhcnRfaWR4ICsgayAqIHBzRW5jQy0+c3ViZnJfbGVu
Z3RoIF0sCisgICAgICAgICAgICAgICAgICAgICAgICBBX1ExMiwgcHNFbmNDLT5sdHBfbWVtX2xl
bmd0aCAtIHN0YXJ0X2lkeCwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIsIHBzRW5jQy0+YXJjaCAp
OworCisgICAgICAgICAgICAgICAgICAgIE5TUS0+c0xUUF9idWZfaWR4ID0gcHNFbmNDLT5sdHBf
bWVtX2xlbmd0aDsKKyAgICAgICAgICAgICAgICAgICAgTlNRLT5yZXdoaXRlX2ZsYWcgPSAxOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgc2lsa19uc3Ff
ZGVsX2RlY19zY2FsZV9zdGF0ZXNfbmVvbiggcHNFbmNDLCBOU1EsIHBzRGVsRGVjLCB4MTYsIHhf
c2NfUTEwLCBzTFRQLCBzTFRQX1ExNSwgaywKKyAgICAgICAgICAgICAgICBMVFBfc2NhbGVfUTE0
LCBHYWluc19RMTYsIHBpdGNoTCwgcHNJbmRpY2VzLT5zaWduYWxUeXBlLCBkZWNpc2lvbkRlbGF5
ICk7CisKKyAgICAgICAgICAgIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWNfbmVv
biggTlNRLCBwc0RlbERlYywgcHNJbmRpY2VzLT5zaWduYWxUeXBlLCB4X3NjX1ExMCwgcHVsc2Vz
LCBweHEsIHNMVFBfUTE1LAorICAgICAgICAgICAgICAgIGRlbGF5ZWRHYWluX1ExMCwgQV9RMTIs
IEJfUTE0LCBBUl9zaHBfUTEzLCBsYWcsIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQsIFRpbHRfUTE0
WyBrIF0sIExGX3NocF9RMTRbIGsgXSwKKyAgICAgICAgICAgICAgICBHYWluc19RMTZbIGsgXSwg
TGFtYmRhX1ExMCwgb2Zmc2V0X1ExMCwgcHNFbmNDLT5zdWJmcl9sZW5ndGgsIHN1YmZyKyssIHBz
RW5jQy0+c2hhcGluZ0xQQ09yZGVyLAorICAgICAgICAgICAgICAgIHBzRW5jQy0+cHJlZGljdExQ
Q09yZGVyLCBwc0VuY0MtPndhcnBpbmdfUTE2LCBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNp
b24sICZzbXBsX2J1Zl9pZHgsIGRlY2lzaW9uRGVsYXkgKTsKKworICAgICAgICAgICAgeDE2ICAg
ICs9IHBzRW5jQy0+c3ViZnJfbGVuZ3RoOworICAgICAgICAgICAgcHVsc2VzICs9IHBzRW5jQy0+
c3ViZnJfbGVuZ3RoOworICAgICAgICAgICAgcHhxICAgICs9IHBzRW5jQy0+c3ViZnJfbGVuZ3Ro
OworICAgICAgICB9CisKKyAgICAgICAgLyogRmluZCB3aW5uZXIgKi8KKyAgICAgICAgUkRtaW5f
UTEwID0gcHNEZWxEZWMtPlJEX1ExMFsgMCBdOworICAgICAgICBXaW5uZXJfaW5kID0gMDsKKyAg
ICAgICAgZm9yKCBrID0gMTsgayA8IHBzRW5jQy0+blN0YXRlc0RlbGF5ZWREZWNpc2lvbjsgaysr
ICkgeworICAgICAgICAgICAgaWYoIHBzRGVsRGVjLT5SRF9RMTBbIGsgXSA8IFJEbWluX1ExMCAp
IHsKKyAgICAgICAgICAgICAgICBSRG1pbl9RMTAgPSBwc0RlbERlYy0+UkRfUTEwWyBrIF07Cisg
ICAgICAgICAgICAgICAgV2lubmVyX2luZCA9IGs7CisgICAgICAgICAgICB9CisgICAgICAgIH0K
KworICAgICAgICAvKiBDb3B5IGZpbmFsIHBhcnQgb2Ygc2lnbmFscyBmcm9tIHdpbm5lciBzdGF0
ZSB0byBvdXRwdXQgYW5kIGxvbmctdGVybSBmaWx0ZXIgc3RhdGVzICovCisgICAgICAgIHBzSW5k
aWNlcy0+U2VlZCA9IHBzRGVsRGVjLT5TZWVkSW5pdFsgV2lubmVyX2luZCBdOworICAgICAgICBH
YWluX1ExMCA9IHNpbGtfUlNISUZUMzIoIEdhaW5zX1ExNlsgcHNFbmNDLT5uYl9zdWJmciAtIDEg
XSwgNiApOworICAgICAgICBjb3B5X3dpbm5lcl9zdGF0ZSggcHNEZWxEZWMsIGRlY2lzaW9uRGVs
YXksIHNtcGxfYnVmX2lkeCwgV2lubmVyX2luZCwgR2Fpbl9RMTAsIDgsIHB1bHNlcywgcHhxLCBO
U1EgKTsKKworICAgICAgICB0X3MzMng0ID0gdmR1cHFfbl9zMzIoIDAgKTsgLyogaW5pdGlhbGl6
YXRpb24gKi8KKyAgICAgICAgZm9yKCBpID0gMDsgaSA8ICggTlNRX0xQQ19CVUZfTEVOR1RIIC0g
MyApOyBpICs9IDQgKSB7CisgICAgICAgICAgICB0X3MzMng0ID0gdmxkMXFfbGFuZV9zMzIoICZw
c0RlbERlYy0+c0xQQ19RMTRbIGkgKyAwIF1bIFdpbm5lcl9pbmQgXSwgdF9zMzJ4NCwgMCApOwor
ICAgICAgICAgICAgdF9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNEZWxEZWMtPnNMUENfUTE0
WyBpICsgMSBdWyBXaW5uZXJfaW5kIF0sIHRfczMyeDQsIDEgKTsKKyAgICAgICAgICAgIHRfczMy
eDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5zTFBDX1ExNFsgaSArIDIgXVsgV2lubmVy
X2luZCBdLCB0X3MzMng0LCAyICk7CisgICAgICAgICAgICB0X3MzMng0ID0gdmxkMXFfbGFuZV9z
MzIoICZwc0RlbERlYy0+c0xQQ19RMTRbIGkgKyAzIF1bIFdpbm5lcl9pbmQgXSwgdF9zMzJ4NCwg
MyApOworICAgICAgICAgICAgdnN0MXFfczMyKCAmTlNRLT5zTFBDX1ExNFsgaSBdLCB0X3MzMng0
ICk7CisgICAgICAgIH0KKworICAgICAgICBmb3IoIDsgaSA8IE5TUV9MUENfQlVGX0xFTkdUSDsg
aSsrICkgeworICAgICAgICAgIE5TUS0+c0xQQ19RMTRbIGkgXSA9IHBzRGVsRGVjLT5zTFBDX1Ex
NFsgaSBdWyBXaW5uZXJfaW5kIF07CisgICAgICAgIH0KKworICAgICAgICBmb3IoIGkgPSAwOyBp
IDwgKG9wdXNfaW50KSggc2l6ZW9mKCBOU1EtPnNBUjJfUTE0ICkgLyBzaXplb2YoIE5TUS0+c0FS
Ml9RMTRbIDAgXSApIC0gMyApOyBpICs9IDQgKSB7CisgICAgICAgICAgICB0X3MzMng0ID0gdmxk
MXFfbGFuZV9zMzIoICZwc0RlbERlYy0+c0FSMl9RMTRbIGkgKyAwIF1bIFdpbm5lcl9pbmQgXSwg
dF9zMzJ4NCwgMCApOworICAgICAgICAgICAgdF9zMzJ4NCA9IHZsZDFxX2xhbmVfczMyKCAmcHNE
ZWxEZWMtPnNBUjJfUTE0WyBpICsgMSBdWyBXaW5uZXJfaW5kIF0sIHRfczMyeDQsIDEgKTsKKyAg
ICAgICAgICAgIHRfczMyeDQgPSB2bGQxcV9sYW5lX3MzMiggJnBzRGVsRGVjLT5zQVIyX1ExNFsg
aSArIDIgXVsgV2lubmVyX2luZCBdLCB0X3MzMng0LCAyICk7CisgICAgICAgICAgICB0X3MzMng0
ID0gdmxkMXFfbGFuZV9zMzIoICZwc0RlbERlYy0+c0FSMl9RMTRbIGkgKyAzIF1bIFdpbm5lcl9p
bmQgXSwgdF9zMzJ4NCwgMyApOworICAgICAgICAgICAgdnN0MXFfczMyKCAmTlNRLT5zQVIyX1Ex
NFsgaSBdLCB0X3MzMng0ICk7CisgICAgICAgIH0KKworICAgICAgICBmb3IoIDsgaSA8IChvcHVz
X2ludCkoIHNpemVvZiggTlNRLT5zQVIyX1ExNCApIC8gc2l6ZW9mKCBOU1EtPnNBUjJfUTE0WyAw
IF0gKSApOyBpKysgKSB7CisgICAgICAgICAgTlNRLT5zQVIyX1ExNFsgaSBdID0gcHNEZWxEZWMt
PnNBUjJfUTE0WyBpIF1bIFdpbm5lcl9pbmQgXTsKKyAgICAgICAgfQorCisgICAgICAgIC8qIFVw
ZGF0ZSBzdGF0ZXMgKi8KKyAgICAgICAgTlNRLT5zTEZfQVJfc2hwX1ExNCA9IHBzRGVsRGVjLT5M
Rl9BUl9RMTRbIFdpbm5lcl9pbmQgXTsKKyAgICAgICAgTlNRLT5zRGlmZl9zaHBfUTE0ICA9IHBz
RGVsRGVjLT5EaWZmX1ExNFsgV2lubmVyX2luZCBdOworICAgICAgICBOU1EtPmxhZ1ByZXYgICAg
ICAgID0gcGl0Y2hMWyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBdOworCisgICAgICAgIC8qIFNhdmUg
cXVhbnRpemVkIHNwZWVjaCBzaWduYWwgKi8KKyAgICAgICAgc2lsa19tZW1tb3ZlKCBOU1EtPnhx
LCAgICAgICAgICAgJk5TUS0+eHFbICAgICAgICAgICBwc0VuY0MtPmZyYW1lX2xlbmd0aCBdLCBw
c0VuY0MtPmx0cF9tZW1fbGVuZ3RoICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKKyAgICAgICAg
c2lsa19tZW1tb3ZlKCBOU1EtPnNMVFBfc2hwX1ExNCwgJk5TUS0+c0xUUF9zaHBfUTE0WyBwc0Vu
Y0MtPmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICogc2l6ZW9mKCBvcHVz
X2ludDMyICkgKTsKKyAgICAgICAgUkVTVE9SRV9TVEFDSzsKKyAgICB9CisKKyNpZmRlZiBPUFVT
X0NIRUNLX0FTTQorICAgIHNpbGtfYXNzZXJ0KCAhbWVtY21wKCAmTlNRX2MsIE5TUSwgc2l6ZW9m
KCBOU1FfYyApICkgKTsKKyAgICBzaWxrX2Fzc2VydCggIW1lbWNtcCggJnBzSW5kaWNlc19jLCBw
c0luZGljZXMsIHNpemVvZiggcHNJbmRpY2VzX2MgKSApICk7CisgICAgc2lsa19hc3NlcnQoICFt
ZW1jbXAoIHB1bHNlc19jLCBwdWxzZXNfYSwgc2l6ZW9mKCBwdWxzZXNfYyApICkgKTsKKyNlbmRp
ZgorfQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyog
Tm9pc2Ugc2hhcGUgcXVhbnRpemVyIGZvciBvbmUgc3ViZnJhbWUgKi8KKy8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiBOb3RlOiBGdW5jdGlvbiBzaWxrX3No
b3J0X3ByZWRpY3Rpb25fY3JlYXRlX2FyY2hfY29lZl9uZW9uKCkgZGVmaW5lZCBpbiBOU1FfbmVv
bi5oIGlzIGFjdHVhbGx5IGEgaGFja2luZyBDIGZ1bmN0aW9uLiAqLworLyogICAgICAgVGhlcmVm
b3JlIGhlcmUgd2UgYXBwZW5kICJfbG9jYWwiIHRvIHRoZSBORU9OIGZ1bmN0aW9uIG5hbWUgdG8g
YXZvaWQgY29uZnVzaW9uLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KK3N0YXRp
YyBPUFVTX0lOTElORSB2b2lkIHNpbGtfc2hvcnRfcHJlZGljdGlvbl9jcmVhdGVfYXJjaF9jb2Vm
X25lb25fbG9jYWwob3B1c19pbnQzMiAqb3V0LCBjb25zdCBvcHVzX2ludDE2ICppbiwgb3B1c19p
bnQgb3JkZXIpCit7CisgIGludDE2eDhfdCB0X3MxNng4OworICBpbnQzMng0X3QgdDBfczMyeDQs
IHQxX3MzMng0LCB0Ml9zMzJ4NCwgdDNfczMyeDQ7CisgIHNpbGtfYXNzZXJ0KCBvcmRlciA9PSAx
MCB8fCBvcmRlciA9PSAxNiApOworCisgIHRfczE2eDggPSB2bGQxcV9zMTYoIGluICsgMCApOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIDcgNiA1
IDQgIDMgMiAxIDAgICAgKi8KKyAgdF9zMTZ4OCA9IHZyZXY2NHFfczE2KCB0X3MxNng4ICk7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogNCA1IDYgNyAg
MCAxIDIgMyAgICAqLworICB0Ml9zMzJ4NCA9IHZzaGxsX25fczE2KCB2Z2V0X2hpZ2hfczE2KCB0
X3MxNng4ICksIDE1ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiA0IDUgNiA3ICAgICAg
ICAgICAgICovCisgIHQzX3MzMng0ID0gdnNobGxfbl9zMTYoIHZnZXRfbG93X3MxNiggIHRfczE2
eDggKSwgMTUgKTsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIDAgMSAyIDMgICAgICAgICAg
ICAgKi8KKworICBpZiggb3JkZXIgPT0gMTYgKSB7CisgICAgICB0X3MxNng4ID0gdmxkMXFfczE2
KCBpbiArIDggKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEYgRSBEIEMgIEIgQSA5IDggICAgKi8KKyAgICAgIHRfczE2eDggPSB2cmV2NjRxX3MxNigg
dF9zMTZ4OCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
QyBEIEUgRiAgOCA5IEEgQiAgICAqLworICAgICAgdDBfczMyeDQgPSB2c2hsbF9uX3MxNiggdmdl
dF9oaWdoX3MxNiggdF9zMTZ4OCApLCAxNSApOyAgICAgICAgICAgICAgICAgICAgICAvKiBDIEQg
RSBGICAgICAgICAgICAgICovCisgICAgICB0MV9zMzJ4NCA9IHZzaGxsX25fczE2KCB2Z2V0X2xv
d19zMTYoICB0X3MxNng4ICksIDE1ICk7ICAgICAgICAgICAgICAgICAgICAgIC8qIDggOSBBIEIg
ICAgICAgICAgICAgKi8KKyAgfSBlbHNlIHsKKyAgICAgIGludDE2eDRfdCB0X3MxNng0OworCisg
ICAgICB0MF9zMzJ4NCA9IHZkdXBxX25fczMyKCAwICk7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHplcm8gemVybyB6ZXJvIHplcm8gKi8KKyAgICAg
IHRfczE2eDQgPSB2bGQxX3MxNiggaW4gKyA2ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogOSAgICA4ICAgIDcgICAgNiAgICAqLworICAgICAgdF9z
MTZ4NCA9IHZyZXY2NF9zMTYoIHRfczE2eDQgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiA2ICAgIDcgICAgOCAgICA5ICAgICovCisgICAgICB0MV9zMzJ4
NCA9IHZzaGxsX25fczE2KCB0X3MxNng0LCAxNSApOworICAgICAgdDFfczMyeDQgPSB2Y29tYmlu
ZV9zMzIoIHZnZXRfbG93X3MzMih0MF9zMzJ4NCksIHZnZXRfbG93X3MzMiggdDFfczMyeDQgKSAp
OyAvKiA4ICAgIDkgICAgemVybyB6ZXJvICovCisgIH0KKyAgdnN0MXFfczMyKCBvdXQgKyAgMCwg
dDBfczMyeDQgKTsKKyAgdnN0MXFfczMyKCBvdXQgKyAgNCwgdDFfczMyeDQgKTsKKyAgdnN0MXFf
czMyKCBvdXQgKyAgOCwgdDJfczMyeDQgKTsKKyAgdnN0MXFfczMyKCBvdXQgKyAxMiwgdDNfczMy
eDQgKTsKK30KKworc3RhdGljIE9QVVNfSU5MSU5FIGludDMyeDRfdCBzaWxrX1NNTEFXQl9sYW5l
MF9uZW9uKAorICAgIGNvbnN0IGludDMyeDRfdCBvdXRfczMyeDQsCisgICAgY29uc3QgaW50MzJ4
NF90IGluX3MzMng0LAorICAgIGNvbnN0IGludDMyeDJfdCBjb2VmX3MzMngyCispCit7CisgICAg
cmV0dXJuIHZhZGRxX3MzMiggb3V0X3MzMng0LCB2cWRtdWxocV9sYW5lX3MzMiggaW5fczMyeDQs
IGNvZWZfczMyeDIsIDAgKSApOworfQorCitzdGF0aWMgT1BVU19JTkxJTkUgaW50MzJ4NF90IHNp
bGtfU01MQVdCX2xhbmUxX25lb24oCisgICAgY29uc3QgaW50MzJ4NF90IG91dF9zMzJ4NCwKKyAg
ICBjb25zdCBpbnQzMng0X3QgaW5fczMyeDQsCisgICAgY29uc3QgaW50MzJ4Ml90IGNvZWZfczMy
eDIKKykKK3sKKyAgICByZXR1cm4gdmFkZHFfczMyKCBvdXRfczMyeDQsIHZxZG11bGhxX2xhbmVf
czMyKCBpbl9zMzJ4NCwgY29lZl9zMzJ4MiwgMSApICk7Cit9CisKKy8qIE5vdGU6IFRoaXMgZnVu
Y3Rpb24gaGFzIGRpZmZlcmVudCByZXR1cm4gdmFsdWUgdGhhbiBzaWxrX25vaXNlX3NoYXBlX3F1
YW50aXplcl9zaG9ydF9wcmVkaWN0aW9uX25lb24oKS4gKi8KKy8qICAgICAgIFRoZXJlZm9yZSBo
ZXJlIHdlIGFwcGVuZCAiX2xvY2FsIiB0byB0aGUgZnVuY3Rpb24gbmFtZSB0byBhdm9pZCBjb25m
dXNpb24uICAgICAgICAgICAgICAgICAgICAgICAgKi8KK3N0YXRpYyBPUFVTX0lOTElORSBpbnQz
Mng0X3Qgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfc2hvcnRfcHJlZGljdGlvbl9uZW9uX2xv
Y2FsKGNvbnN0IG9wdXNfaW50MzIgKmJ1ZjMyLCBjb25zdCBvcHVzX2ludDMyICphX1ExMl9hcmNo
LCBvcHVzX2ludCBvcmRlcikKK3sKKyAgICBjb25zdCBpbnQzMng0X3QgYV9RMTJfYXJjaDBfczMy
eDQgPSB2bGQxcV9zMzIoIGFfUTEyX2FyY2ggKyAwICk7CisgICAgY29uc3QgaW50MzJ4NF90IGFf
UTEyX2FyY2gxX3MzMng0ID0gdmxkMXFfczMyKCBhX1ExMl9hcmNoICsgNCApOworICAgIGNvbnN0
IGludDMyeDRfdCBhX1ExMl9hcmNoMl9zMzJ4NCA9IHZsZDFxX3MzMiggYV9RMTJfYXJjaCArIDgg
KTsKKyAgICBjb25zdCBpbnQzMng0X3QgYV9RMTJfYXJjaDNfczMyeDQgPSB2bGQxcV9zMzIoIGFf
UTEyX2FyY2ggKyAxMiApOworICAgIGludDMyeDRfdCBMUENfcHJlZF9RMTRfczMyeDQ7CisKKyAg
ICBzaWxrX2Fzc2VydCggb3JkZXIgPT0gMTAgfHwgb3JkZXIgPT0gMTYgKTsKKyAgICAvKiBBdm9p
ZHMgaW50cm9kdWNpbmcgYSBiaWFzIGJlY2F1c2Ugc2lsa19TTUxBV0IoKSBhbHdheXMgcm91bmRz
IHRvIC1pbmYgKi8KKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSB2ZHVwcV9uX3MzMiggc2lsa19S
U0hJRlQoIG9yZGVyLCAxICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFX
Ql9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgMCAq
IE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2FyY2gwX3Mz
Mng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9u
KCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgMSAqIE5FT05fTUFYX0RF
TF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2FyY2gwX3MzMng0ICkgKTsKKyAg
ICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9R
MTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgMiAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVT
ICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gwX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9R
MTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZs
ZDFxX3MzMiggYnVmMzIgKyAgMyAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGln
aF9zMzIoIGFfUTEyX2FyY2gwX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBz
aWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVm
MzIgKyAgNCAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEy
X2FyY2gxX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9s
YW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgNSAqIE5F
T05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2FyY2gxX3MzMng0
ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBM
UENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgNiAqIE5FT05fTUFYX0RFTF9E
RUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gxX3MzMng0ICkgKTsKKyAgICBM
UENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRf
czMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAgNyAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICks
IHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gxX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRf
czMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFx
X3MzMiggYnVmMzIgKyAgOCAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3Mz
MiggIGFfUTEyX2FyY2gyX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxr
X1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIg
KyAgOSAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMiggIGFfUTEyX2Fy
Y2gyX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5l
MF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAxMCAqIE5FT05f
TUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gyX3MzMng0ICkg
KTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENf
cHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAxMSAqIE5FT05fTUFYX0RFTF9ERUNf
U1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gyX3MzMng0ICkgKTsKKyAgICBMUENf
cHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMy
eDQsIHZsZDFxX3MzMiggYnVmMzIgKyAxMiAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZn
ZXRfbG93X3MzMiggIGFfUTEyX2FyY2gzX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMy
eDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3Mz
MiggYnVmMzIgKyAxMyAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfbG93X3MzMigg
IGFfUTEyX2FyY2gzX3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NN
TEFXQl9sYW5lMF9uZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAx
NCAqIE5FT05fTUFYX0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gz
X3MzMng0ICkgKTsKKyAgICBMUENfcHJlZF9RMTRfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMV9u
ZW9uKCBMUENfcHJlZF9RMTRfczMyeDQsIHZsZDFxX3MzMiggYnVmMzIgKyAxNSAqIE5FT05fTUFY
X0RFTF9ERUNfU1RBVEVTICksIHZnZXRfaGlnaF9zMzIoIGFfUTEyX2FyY2gzX3MzMng0ICkgKTsK
KworICAgIHJldHVybiBMUENfcHJlZF9RMTRfczMyeDQ7Cit9CisKK3N0YXRpYyBPUFVTX0lOTElO
RSB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWNfbmVvbigKKyAgICBzaWxr
X25zcV9zdGF0ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRl
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOU1FfZGVsX2RlY3Nfc3RydWN0IHBz
RGVsRGVjW10sICAgICAgICAgICAgIC8qIEkvTyAgRGVsYXllZCBkZWNpc2lvbiBzdGF0ZXMgICAg
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHNpZ25hbFR5cGUsICAgICAgICAg
ICAgIC8qIEkgICAgU2lnbmFsIHR5cGUgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBj
b25zdCBvcHVzX2ludDMyICAgIHhfUTEwW10sICAgICAgICAgICAgICAgIC8qIEkgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDggICAgICAgICAg
IHB1bHNlc1tdLCAgICAgICAgICAgICAgIC8qIE8gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDE2ICAgICAgICAgIHhxW10sICAgICAgICAgICAg
ICAgICAgIC8qIE8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBvcHVzX2ludDMyICAgICAgICAgIHNMVFBfUTE1W10sICAgICAgICAgICAgIC8qIEkvTyAgTFRQ
IGZpbHRlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAg
ICAgIGRlbGF5ZWRHYWluX1ExMFtdLCAgICAgIC8qIEkvTyAgR2FpbiBkZWxheSBidWZmZXIgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgIGFfUTEyW10sICAgICAg
ICAgICAgICAgIC8qIEkgICAgU2hvcnQgdGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludDE2ICAgIGJfUTE0W10sICAgICAgICAgICAgICAgIC8qIEkgICAg
TG9uZyB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dDE2ICAgIEFSX3NocF9RMTNbXSwgICAgICAgICAgIC8qIEkgICAgTm9pc2Ugc2hhcGluZyBjb2Vm
cyAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIGxhZywgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgUGl0Y2ggbGFnICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQsIC8qIEkg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAg
ICAgICAgICAgIFRpbHRfUTE0LCAgICAgICAgICAgICAgIC8qIEkgICAgU3BlY3RyYWwgdGlsdCAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIExGX3NocF9R
MTQsICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgIEdhaW5fUTE2LCAgICAgICAgICAgICAgIC8q
IEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2lu
dCAgICAgICAgICAgIExhbWJkYV9RMTAsICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIG9mZnNl
dF9RMTAsICAgICAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAg
IC8qIEkgICAgSW5wdXQgbGVuZ3RoICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVz
X2ludCAgICAgICAgICAgIHN1YmZyLCAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3ViZnJhbWUg
bnVtYmVyICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHNo
YXBpbmdMUENPcmRlciwgICAgICAgIC8qIEkgICAgU2hhcGluZyBMUEMgZmlsdGVyIG9yZGVyICAg
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgIHByZWRpY3RMUENPcmRlciwgICAg
ICAgIC8qIEkgICAgUHJlZGljdGlvbiBmaWx0ZXIgb3JkZXIgICAgICAgICAgICAgKi8KKyAgICBv
cHVzX2ludCAgICAgICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAgICAgIC8qIEkgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAg
IG5TdGF0ZXNEZWxheWVkRGVjaXNpb24sIC8qIEkgICAgTnVtYmVyIG9mIHN0YXRlcyBpbiBkZWNp
c2lvbiB0cmVlICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICpzbXBsX2J1Zl9pZHgsICAg
ICAgICAgIC8qIEkvTyAgSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgaW4gYnVmZmVycyAgKi8KKyAg
ICBvcHVzX2ludCAgICAgICAgICAgIGRlY2lzaW9uRGVsYXkgICAgICAgICAgIC8qIEkgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyAgICBvcHVzX2ludCAg
ICAgaSwgaiwgaywgV2lubmVyX2luZCwgUkRtaW5faW5kLCBSRG1heF9pbmQsIGxhc3Rfc21wbGVf
aWR4OworICAgIG9wdXNfaW50MzIgICBXaW5uZXJfcmFuZF9zdGF0ZTsKKyAgICBvcHVzX2ludDMy
ICAgTFRQX3ByZWRfUTE0LCBuX0xUUF9RMTQ7CisgICAgb3B1c19pbnQzMiAgIFJEbWluX1ExMCwg
UkRtYXhfUTEwOworICAgIG9wdXNfaW50MzIgICBHYWluX1ExMDsKKyAgICBvcHVzX2ludDMyICAg
KnByZWRfbGFnX3B0ciwgKnNocF9sYWdfcHRyOworICAgIG9wdXNfaW50MzIgICBhX1ExMl9hcmNo
W01BWF9MUENfT1JERVJdOworICAgIGNvbnN0IGludDMyeDJfdCB3YXJwaW5nX1ExNl9zMzJ4MiA9
IHZkdXBfbl9zMzIoIHNpbGtfTFNISUZUMzIoIHdhcnBpbmdfUTE2LCAxNiApID4+IDEgKTsKKyAg
ICBjb25zdCBvcHVzX2ludDMyIExGX3NocF9RMjkgPSBzaWxrX0xTSElGVDMyKCBMRl9zaHBfUTE0
LCAxNiApID4+IDE7CisgICAgb3B1c19pbnQzMiBBUl9zaHBfUTI4WyBNQVhfU0hBUEVfTFBDX09S
REVSIF07CisgICAgY29uc3QgdWludDMyeDRfdCByYW5kX211bHRpcGxpZXJfdTMyeDQgPSB2ZHVw
cV9uX3UzMiggUkFORF9NVUxUSVBMSUVSICk7CisgICAgY29uc3QgdWludDMyeDRfdCByYW5kX2lu
Y3JlbWVudF91MzJ4NCA9IHZkdXBxX25fdTMyKCBSQU5EX0lOQ1JFTUVOVCApOworCisgICAgVkFS
REVDTCggTlNRX3NhbXBsZXNfc3RydWN0LCBwc1NhbXBsZVN0YXRlICk7CisgICAgU0FWRV9TVEFD
SzsKKworICAgIHNpbGtfYXNzZXJ0KCBuU3RhdGVzRGVsYXllZERlY2lzaW9uID4gMCApOworICAg
IHNpbGtfYXNzZXJ0KCAoIHNoYXBpbmdMUENPcmRlciAmIDEgKSA9PSAwICk7ICAgLyogY2hlY2sg
dGhhdCBvcmRlciBpcyBldmVuICovCisgICAgQUxMT0MoIHBzU2FtcGxlU3RhdGUsIDIsIE5TUV9z
YW1wbGVzX3N0cnVjdCApOworCisgICAgc2hwX2xhZ19wdHIgID0gJk5TUS0+c0xUUF9zaHBfUTE0
WyBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggLSBsYWcgKyBIQVJNX1NIQVBFX0ZJUl9UQVBTIC8gMiBd
OworICAgIHByZWRfbGFnX3B0ciA9ICZzTFRQX1ExNVsgTlNRLT5zTFRQX2J1Zl9pZHggLSBsYWcg
KyBMVFBfT1JERVIgLyAyIF07CisgICAgR2Fpbl9RMTAgICAgID0gc2lsa19SU0hJRlQoIEdhaW5f
UTE2LCA2ICk7CisKKyAgICBmb3IoIGkgPSAwOyBpIDwgKCBNQVhfU0hBUEVfTFBDX09SREVSIC0g
NyApOyBpICs9IDggKSB7CisgICAgICBjb25zdCBpbnQxNng4X3QgdF9zMTZ4OCA9IHZsZDFxX3Mx
NiggQVJfc2hwX1ExMyArICBpICk7CisgICAgICB2c3QxcV9zMzIoIEFSX3NocF9RMjggKyBpICsg
MCwgdnNobGxfbl9zMTYoIHZnZXRfbG93X3MxNiggIHRfczE2eDggKSwgMTUgKSApOworICAgICAg
dnN0MXFfczMyKCBBUl9zaHBfUTI4ICsgaSArIDQsIHZzaGxsX25fczE2KCB2Z2V0X2hpZ2hfczE2
KCB0X3MxNng4ICksIDE1ICkgKTsKKyAgICB9CisKKyAgICBmb3IoIDsgaSA8IE1BWF9TSEFQRV9M
UENfT1JERVI7IGkrKyApIHsKKyAgICAgIEFSX3NocF9RMjhbaV0gPSBzaWxrX0xTSElGVDMyKCBB
Ul9zaHBfUTEzW2ldLCAxNSApOworICAgIH0KKworICAgIHNpbGtfc2hvcnRfcHJlZGljdGlvbl9j
cmVhdGVfYXJjaF9jb2VmX25lb25fbG9jYWwoIGFfUTEyX2FyY2gsIGFfUTEyLCBwcmVkaWN0TFBD
T3JkZXIgKTsKKworICAgIGZvciggaSA9IDA7IGkgPCBsZW5ndGg7IGkrKyApIHsKKyAgICAgICAg
aW50MzJ4NF90IFNlZWRfczMyeDQsIExQQ19wcmVkX1ExNF9zMzJ4NDsKKyAgICAgICAgaW50MzJ4
NF90IHNpZ25fczMyeDQsIHRtcDFfczMyeDQsIHRtcDJfczMyeDQ7CisgICAgICAgIGludDMyeDRf
dCBuX0FSX1ExNF9zMzJ4NCwgbl9MRl9RMTRfczMyeDQ7CisgICAgICAgIGludDMyeDJfdCBBUl9z
aHBfUTI4X3MzMngyOworICAgICAgICBpbnQxNng0X3Qgcl9RMTBfczE2eDQsIHJyX1ExMF9zMTZ4
NDsKKworICAgICAgICAvKiBQZXJmb3JtIGNvbW1vbiBjYWxjdWxhdGlvbnMgdXNlZCBpbiBhbGwg
c3RhdGVzICovCisKKyAgICAgICAgLyogTG9uZy10ZXJtIHByZWRpY3Rpb24gKi8KKyAgICAgICAg
aWYoIHNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7CisgICAgICAgICAgICAvKiBVbnJvbGxl
ZCBsb29wICovCisgICAgICAgICAgICAvKiBBdm9pZHMgaW50cm9kdWNpbmcgYSBiaWFzIGJlY2F1
c2Ugc2lsa19TTUxBV0IoKSBhbHdheXMgcm91bmRzIHRvIC1pbmYgKi8KKyAgICAgICAgICAgIExU
UF9wcmVkX1ExNCA9IDI7CisgICAgICAgICAgICBMVFBfcHJlZF9RMTQgPSBzaWxrX1NNTEFXQigg
TFRQX3ByZWRfUTE0LCBwcmVkX2xhZ19wdHJbICAwIF0sIGJfUTE0WyAwIF0gKTsKKyAgICAgICAg
ICAgIExUUF9wcmVkX1ExNCA9IHNpbGtfU01MQVdCKCBMVFBfcHJlZF9RMTQsIHByZWRfbGFnX3B0
clsgLTEgXSwgYl9RMTRbIDEgXSApOworICAgICAgICAgICAgTFRQX3ByZWRfUTE0ID0gc2lsa19T
TUxBV0IoIExUUF9wcmVkX1ExNCwgcHJlZF9sYWdfcHRyWyAtMiBdLCBiX1ExNFsgMiBdICk7Cisg
ICAgICAgICAgICBMVFBfcHJlZF9RMTQgPSBzaWxrX1NNTEFXQiggTFRQX3ByZWRfUTE0LCBwcmVk
X2xhZ19wdHJbIC0zIF0sIGJfUTE0WyAzIF0gKTsKKyAgICAgICAgICAgIExUUF9wcmVkX1ExNCA9
IHNpbGtfU01MQVdCKCBMVFBfcHJlZF9RMTQsIHByZWRfbGFnX3B0clsgLTQgXSwgYl9RMTRbIDQg
XSApOworICAgICAgICAgICAgTFRQX3ByZWRfUTE0ID0gc2lsa19MU0hJRlQoIExUUF9wcmVkX1Ex
NCwgMSApOyAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUTEzIC0+IFExNCAqLworICAgICAg
ICAgICAgcHJlZF9sYWdfcHRyKys7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBMVFBf
cHJlZF9RMTQgPSAwOworICAgICAgICB9CisKKyAgICAgICAgLyogTG9uZy10ZXJtIHNoYXBpbmcg
Ki8KKyAgICAgICAgaWYoIGxhZyA+IDAgKSB7CisgICAgICAgICAgICAvKiBTeW1tZXRyaWMsIHBh
Y2tlZCBGSVIgY29lZmZpY2llbnRzICovCisgICAgICAgICAgICBuX0xUUF9RMTQgPSBzaWxrX1NN
VUxXQiggc2lsa19BREQzMiggc2hwX2xhZ19wdHJbIDAgXSwgc2hwX2xhZ19wdHJbIC0yIF0gKSwg
SGFybVNoYXBlRklSUGFja2VkX1ExNCApOworICAgICAgICAgICAgbl9MVFBfUTE0ID0gc2lsa19T
TUxBV1QoIG5fTFRQX1ExNCwgc2hwX2xhZ19wdHJbIC0xIF0sICAgICAgICAgICAgICAgICAgICAg
IEhhcm1TaGFwZUZJUlBhY2tlZF9RMTQgKTsKKyAgICAgICAgICAgIG5fTFRQX1ExNCA9IHNpbGtf
U1VCX0xTSElGVDMyKCBMVFBfcHJlZF9RMTQsIG5fTFRQX1ExNCwgMiApOyAgICAgICAgICAgIC8q
IFExMiAtPiBRMTQgKi8KKyAgICAgICAgICAgIHNocF9sYWdfcHRyKys7CisgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICBuX0xUUF9RMTQgPSAwOworICAgICAgICB9CisKKyAgICAgICAgLyog
R2VuZXJhdGUgZGl0aGVyICovCisgICAgICAgIFNlZWRfczMyeDQgPSB2bGQxcV9zMzIoIHBzRGVs
RGVjLT5TZWVkICk7CisgICAgICAgIFNlZWRfczMyeDQgPSB2cmVpbnRlcnByZXRxX3MzMl91MzIo
IHZtbGFxX3UzMiggcmFuZF9pbmNyZW1lbnRfdTMyeDQsIHZyZWludGVycHJldHFfdTMyX3MzMigg
U2VlZF9zMzJ4NCApLCByYW5kX211bHRpcGxpZXJfdTMyeDQgKSApOworICAgICAgICB2c3QxcV9z
MzIoIHBzRGVsRGVjLT5TZWVkLCBTZWVkX3MzMng0ICk7CisKKyAgICAgICAgLyogU2hvcnQtdGVy
bSBwcmVkaWN0aW9uICovCisgICAgICAgIExQQ19wcmVkX1ExNF9zMzJ4NCA9IHNpbGtfbm9pc2Vf
c2hhcGVfcXVhbnRpemVyX3Nob3J0X3ByZWRpY3Rpb25fbmVvbl9sb2NhbChwc0RlbERlYy0+c0xQ
Q19RMTRbIE5TUV9MUENfQlVGX0xFTkdUSCAtIDE2ICsgaSBdLCBhX1ExMl9hcmNoLCBwcmVkaWN0
TFBDT3JkZXIpOworICAgICAgICBMUENfcHJlZF9RMTRfczMyeDQgPSB2c2hscV9uX3MzMiggTFBD
X3ByZWRfUTE0X3MzMng0LCA0ICk7IC8qIFExMCAtPiBRMTQgKi8KKworICAgICAgICAvKiBOb2lz
ZSBzaGFwZSBmZWVkYmFjayAqLworICAgICAgICAvKiBPdXRwdXQgb2YgbG93cGFzcyBzZWN0aW9u
ICovCisgICAgICAgIHRtcDJfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCB2bGQxcV9z
MzIoIHBzRGVsRGVjLT5EaWZmX1ExNCApLCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5zQVIyX1ExNFsg
MCBdICksIHdhcnBpbmdfUTE2X3MzMngyICk7CisgICAgICAgIC8qIE91dHB1dCBvZiBhbGxwYXNz
IHNlY3Rpb24gKi8KKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZzdWJxX3MzMiggdmxkMXFfczMyKCBw
c0RlbERlYy0+c0FSMl9RMTRbIDEgXSApLCB0bXAyX3MzMng0ICk7CisgICAgICAgIHRtcDFfczMy
eDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5zQVIyX1Ex
NFsgMCBdICksIHRtcDFfczMyeDQsIHdhcnBpbmdfUTE2X3MzMngyICk7CisgICAgICAgIHZzdDFx
X3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyAwIF0sIHRtcDJfczMyeDQgKTsKKyAgICAgICAgQVJf
c2hwX1EyOF9zMzJ4MiA9IHZsZDFfczMyKCBBUl9zaHBfUTI4ICk7CisgICAgICAgIG5fQVJfUTE0
X3MzMng0ID0gdmFkZHFfczMyKCB2ZHVwcV9uX3MzMiggc2lsa19SU0hJRlQoIHNoYXBpbmdMUENP
cmRlciwgMSApICksIHZxZG11bGhxX2xhbmVfczMyKCB0bXAyX3MzMng0LCBBUl9zaHBfUTI4X3Mz
MngyLCAwICkgKTsKKworICAgICAgICAvKiBMb29wIG92ZXIgYWxscGFzcyBzZWN0aW9ucyAqLwor
ICAgICAgICBmb3IoIGogPSAyOyBqIDwgc2hhcGluZ0xQQ09yZGVyOyBqICs9IDIgKSB7CisgICAg
ICAgICAgICAvKiBPdXRwdXQgb2YgYWxscGFzcyBzZWN0aW9uICovCisgICAgICAgICAgICB0bXAy
X3MzMng0ID0gdnN1YnFfczMyKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5zQVIyX1ExNFsgaiArIDAg
XSApLCB0bXAxX3MzMng0ICk7CisgICAgICAgICAgICB0bXAyX3MzMng0ID0gc2lsa19TTUxBV0Jf
bGFuZTBfbmVvbiggdmxkMXFfczMyKCBwc0RlbERlYy0+c0FSMl9RMTRbIGogLSAxIF0gKSwgdG1w
Ml9zMzJ4NCwgd2FycGluZ19RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNE
ZWxEZWMtPnNBUjJfUTE0WyBqIC0gMSBdLCB0bXAxX3MzMng0ICk7CisgICAgICAgICAgICBuX0FS
X1ExNF9zMzJ4NCA9IHZhZGRxX3MzMiggbl9BUl9RMTRfczMyeDQsIHZxZG11bGhxX2xhbmVfczMy
KCB0bXAxX3MzMng0LCBBUl9zaHBfUTI4X3MzMngyLCAxICkgKTsKKyAgICAgICAgICAgIC8qIE91
dHB1dCBvZiBhbGxwYXNzIHNlY3Rpb24gKi8KKyAgICAgICAgICAgIHRtcDFfczMyeDQgPSB2c3Vi
cV9zMzIoIHZsZDFxX3MzMiggcHNEZWxEZWMtPnNBUjJfUTE0WyBqICsgMSBdICksIHRtcDJfczMy
eDQgKTsKKyAgICAgICAgICAgIHRtcDFfczMyeDQgPSBzaWxrX1NNTEFXQl9sYW5lMF9uZW9uKCB2
bGQxcV9zMzIoIHBzRGVsRGVjLT5zQVIyX1ExNFsgaiArIDAgXSApLCB0bXAxX3MzMng0LCB3YXJw
aW5nX1ExNl9zMzJ4MiApOworICAgICAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+c0FSMl9R
MTRbIGogKyAwIF0sIHRtcDJfczMyeDQgKTsKKyAgICAgICAgICAgIEFSX3NocF9RMjhfczMyeDIg
PSB2bGQxX3MzMiggJkFSX3NocF9RMjhbIGogXSApOworICAgICAgICAgICAgbl9BUl9RMTRfczMy
eDQgPSB2YWRkcV9zMzIoIG5fQVJfUTE0X3MzMng0LCB2cWRtdWxocV9sYW5lX3MzMiggdG1wMl9z
MzJ4NCwgQVJfc2hwX1EyOF9zMzJ4MiwgMCApICk7CisgICAgICAgIH0KKyAgICAgICAgdnN0MXFf
czMyKCBwc0RlbERlYy0+c0FSMl9RMTRbIHNoYXBpbmdMUENPcmRlciAtIDEgXSwgdG1wMV9zMzJ4
NCApOworICAgICAgICBuX0FSX1ExNF9zMzJ4NCA9IHZhZGRxX3MzMiggbl9BUl9RMTRfczMyeDQs
IHZxZG11bGhxX2xhbmVfczMyKCB0bXAxX3MzMng0LCBBUl9zaHBfUTI4X3MzMngyLCAxICkgKTsK
KyAgICAgICAgbl9BUl9RMTRfczMyeDQgPSB2c2hscV9uX3MzMiggbl9BUl9RMTRfczMyeDQsIDEg
KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUTExIC0+IFExMiAqLworICAgICAg
ICBuX0FSX1ExNF9zMzJ4NCA9IHZhZGRxX3MzMiggbl9BUl9RMTRfczMyeDQsIHZxZG11bGhxX25f
czMyKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5MRl9BUl9RMTQgKSwgc2lsa19MU0hJRlQzMiggVGls
dF9RMTQsIDE2ICkgPj4gMSApICk7ICAgICAvKiBRMTIgKi8KKyAgICAgICAgbl9BUl9RMTRfczMy
eDQgPSB2c2hscV9uX3MzMiggbl9BUl9RMTRfczMyeDQsIDIgKTsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogUTEyIC0+IFExNCAqLworICAgICAgICBuX0xGX1ExNF9zMzJ4NCA9IHZx
ZG11bGhxX25fczMyKCB2bGQxcV9zMzIoIHBzRGVsRGVjLT5TaGFwZV9RMTRbICpzbXBsX2J1Zl9p
ZHggXSApLCBMRl9zaHBfUTI5ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBRMTIgKi8KKyAgICAgICAgbl9MRl9RMTRfczMyeDQgPSB2YWRkcV9zMzIoIG5fTEZf
UTE0X3MzMng0LCB2cWRtdWxocV9uX3MzMiggdmxkMXFfczMyKCBwc0RlbERlYy0+TEZfQVJfUTE0
ICksIHNpbGtfTFNISUZUMzIoIExGX3NocF9RMTQgPj4gMTYgLCAxNSApICkgKTsgLyogUTEyICov
CisgICAgICAgIG5fTEZfUTE0X3MzMng0ID0gdnNobHFfbl9zMzIoIG5fTEZfUTE0X3MzMng0LCAy
ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFExMiAtPiBRMTQgKi8KKworICAg
ICAgICAvKiBJbnB1dCBtaW51cyBwcmVkaWN0aW9uIHBsdXMgbm9pc2UgZmVlZGJhY2sgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgICAgIC8qIHIgPSB4WyBpIF0gLSBMVFBfcHJlZCAtIExQ
Q19wcmVkICsgbl9BUiArIG5fVGlsdCArIG5fTEYgKyBuX0xUUCAgKi8KKyAgICAgICAgdG1wMV9z
MzJ4NCA9IHZhZGRxX3MzMiggbl9BUl9RMTRfczMyeDQsIG5fTEZfUTE0X3MzMng0ICk7ICAgICAg
ICAgICAgICAgLyogUTE0ICovCisgICAgICAgIHRtcDJfczMyeDQgPSB2YWRkcV9zMzIoIHZkdXBx
X25fczMyKCBuX0xUUF9RMTQgKSwgTFBDX3ByZWRfUTE0X3MzMng0ICk7IC8qIFExMyAqLworICAg
ICAgICB0bXAxX3MzMng0ID0gdnN1YnFfczMyKCB0bXAyX3MzMng0LCB0bXAxX3MzMng0ICk7ICAg
ICAgICAgICAgICAgICAgICAgICAvKiBRMTMgKi8KKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZyc2hy
cV9uX3MzMiggdG1wMV9zMzJ4NCwgNCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
UTEwICovCisgICAgICAgIHRtcDFfczMyeDQgPSB2c3VicV9zMzIoIHZkdXBxX25fczMyKCB4X1Ex
MFsgaSBdICksIHRtcDFfczMyeDQgKTsgICAgICAgIC8qIHJlc2lkdWFsIGVycm9yIFExMCAqLwor
CisgICAgICAgIC8qIEZsaXAgc2lnbiBkZXBlbmRpbmcgb24gZGl0aGVyICovCisgICAgICAgIHNp
Z25fczMyeDQgPSB2cmVpbnRlcnByZXRxX3MzMl91MzIoIHZjbHRxX3MzMiggU2VlZF9zMzJ4NCwg
dmR1cHFfbl9zMzIoIDAgKSApICk7CisgICAgICAgIHRtcDFfczMyeDQgPSB2ZW9ycV9zMzIoIHRt
cDFfczMyeDQsIHNpZ25fczMyeDQgKTsKKyAgICAgICAgdG1wMV9zMzJ4NCA9IHZzdWJxX3MzMigg
dG1wMV9zMzJ4NCwgc2lnbl9zMzJ4NCApOworICAgICAgICB0bXAxX3MzMng0ID0gdm1heHFfczMy
KCB0bXAxX3MzMng0LCB2ZHVwcV9uX3MzMiggLSggMzEgPDwgMTAgKSApICk7CisgICAgICAgIHRt
cDFfczMyeDQgPSB2bWlucV9zMzIoIHRtcDFfczMyeDQsIHZkdXBxX25fczMyKCAzMCA8PCAxMCAp
ICk7CisgICAgICAgIHJfUTEwX3MxNng0ID0gdm1vdm5fczMyKCB0bXAxX3MzMng0ICk7CisKKyAg
ICAgICAgLyogRmluZCB0d28gcXVhbnRpemF0aW9uIGxldmVsIGNhbmRpZGF0ZXMgYW5kIG1lYXN1
cmUgdGhlaXIgcmF0ZS1kaXN0b3J0aW9uICovCisgICAgICAgIHsKKyAgICAgICAgICAgIGludDE2
eDRfdCBxMV9RMTBfczE2eDQgPSB2c3ViX3MxNiggcl9RMTBfczE2eDQsIHZkdXBfbl9zMTYoIG9m
ZnNldF9RMTAgKSApOworICAgICAgICAgICAgaW50MTZ4NF90IHExX1EwX3MxNng0ID0gdnNocl9u
X3MxNiggcTFfUTEwX3MxNng0LCAxMCApOworICAgICAgICAgICAgaW50MTZ4NF90IHEyX1ExMF9z
MTZ4NDsKKyAgICAgICAgICAgIGludDMyeDRfdCByZDFfUTEwX3MzMng0LCByZDJfUTEwX3MzMng0
OworICAgICAgICAgICAgdWludDMyeDRfdCB0X3UzMng0OworCisgICAgICAgICAgICBpZiggTGFt
YmRhX1ExMCA+IDIwNDggKSB7CisgICAgICAgICAgICAgICAgLyogRm9yIGFnZ3Jlc3NpdmUgUkRP
LCB0aGUgYmlhcyBiZWNvbWVzIG1vcmUgdGhhbiBvbmUgcHVsc2UuICovCisgICAgICAgICAgICAg
ICAgY29uc3QgaW50IHJkb19vZmZzZXQgPSBMYW1iZGFfUTEwLzIgLSA1MTI7CisgICAgICAgICAg
ICAgICAgY29uc3QgdWludDE2eDRfdCBncmVhdGVyVGhhblJkbyA9IHZjZ3RfczE2KCBxMV9RMTBf
czE2eDQsIHZkdXBfbl9zMTYoIHJkb19vZmZzZXQgKSApOworICAgICAgICAgICAgICAgIGNvbnN0
IHVpbnQxNng0X3QgbGVzc1RoYW5NaW51c1JkbyA9IHZjbHRfczE2KCBxMV9RMTBfczE2eDQsIHZk
dXBfbl9zMTYoIC1yZG9fb2Zmc2V0ICkgKTsKKyAgICAgICAgICAgICAgICAvKiBJZiBMYW1iZGFf
UTEwID4gMzI3NjcsIHRoZW4gcTFfUTAsIHExX1ExMCBhbmQgcTJfUTEwIG11c3QgY2hhbmdlIHRv
IDMyLWJpdC4gKi8KKyAgICAgICAgICAgICAgICBzaWxrX2Fzc2VydCggTGFtYmRhX1ExMCA8PSAz
Mjc2NyApOworCisgICAgICAgICAgICAgICAgcTFfUTBfczE2eDQgPSB2cmVpbnRlcnByZXRfczE2
X3UxNiggdmNsdF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNiggMCApICkgKTsKKyAgICAg
ICAgICAgICAgICBxMV9RMF9zMTZ4NCA9IHZic2xfczE2KCBncmVhdGVyVGhhblJkbywgdnN1Yl9z
MTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNiggcmRvX29mZnNldCApICksIHExX1EwX3MxNng0
ICk7CisgICAgICAgICAgICAgICAgcTFfUTBfczE2eDQgPSB2YnNsX3MxNiggbGVzc1RoYW5NaW51
c1JkbywgdmFkZF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNiggcmRvX29mZnNldCApICks
IHExX1EwX3MxNng0ICk7CisgICAgICAgICAgICAgICAgcTFfUTBfczE2eDQgPSB2c2hyX25fczE2
KCBxMV9RMF9zMTZ4NCwgMTAgKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICBjb25zdCB1aW50MTZ4NF90IGVxdWFsMF91MTZ4NCA9IHZjZXFfczE2KCBxMV9R
MF9zMTZ4NCwgdmR1cF9uX3MxNiggMCApICk7CisgICAgICAgICAgICAgICAgY29uc3QgdWludDE2
eDRfdCBlcXVhbE1pbnVzMV91MTZ4NCA9IHZjZXFfczE2KCBxMV9RMF9zMTZ4NCwgdmR1cF9uX3Mx
NiggLTEgKSApOworICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQxNng0X3QgbGVzc1RoYW5NaW51
czFfdTE2eDQgPSB2Y2x0X3MxNiggcTFfUTBfczE2eDQsIHZkdXBfbl9zMTYoIC0xICkgKTsKKyAg
ICAgICAgICAgICAgICBpbnQxNng0X3QgdG1wMV9zMTZ4NCwgdG1wMl9zMTZ4NDsKKworICAgICAg
ICAgICAgICAgIHExX1ExMF9zMTZ4NCA9IHZzaGxfbl9zMTYoIHExX1EwX3MxNng0LCAxMCApOwor
ICAgICAgICAgICAgICAgIHRtcDFfczE2eDQgPSB2YWRkX3MxNiggcTFfUTEwX3MxNng0LCB2ZHVw
X25fczE2KCBvZmZzZXRfUTEwIC0gUVVBTlRfTEVWRUxfQURKVVNUX1ExMCApICk7CisgICAgICAg
ICAgICAgICAgcTFfUTEwX3MxNng0ID0gdmFkZF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3Mx
Niggb2Zmc2V0X1ExMCArIFFVQU5UX0xFVkVMX0FESlVTVF9RMTAgKSApOworICAgICAgICAgICAg
ICAgIHExX1ExMF9zMTZ4NCA9IHZic2xfczE2KCBsZXNzVGhhbk1pbnVzMV91MTZ4NCwgcTFfUTEw
X3MxNng0LCB0bXAxX3MxNng0ICk7CisgICAgICAgICAgICAgICAgcTFfUTEwX3MxNng0ID0gdmJz
bF9zMTYoIGVxdWFsMF91MTZ4NCwgdmR1cF9uX3MxNiggb2Zmc2V0X1ExMCApLCBxMV9RMTBfczE2
eDQgKTsKKyAgICAgICAgICAgICAgICBxMV9RMTBfczE2eDQgPSB2YnNsX3MxNiggZXF1YWxNaW51
czFfdTE2eDQsIHZkdXBfbl9zMTYoIG9mZnNldF9RMTAgLSAoIDEwMjQgLSBRVUFOVF9MRVZFTF9B
REpVU1RfUTEwICkgKSwgcTFfUTEwX3MxNng0ICk7CisgICAgICAgICAgICAgICAgcTJfUTEwX3Mx
Nng0ID0gdmFkZF9zMTYoIHExX1ExMF9zMTZ4NCwgdmR1cF9uX3MxNiggMTAyNCApICk7CisgICAg
ICAgICAgICAgICAgcTJfUTEwX3MxNng0ID0gdmJzbF9zMTYoIGVxdWFsMF91MTZ4NCwgdmR1cF9u
X3MxNiggb2Zmc2V0X1ExMCArIDEwMjQgLSBRVUFOVF9MRVZFTF9BREpVU1RfUTEwICksIHEyX1Ex
MF9zMTZ4NCApOworICAgICAgICAgICAgICAgIHEyX1ExMF9zMTZ4NCA9IHZic2xfczE2KCBlcXVh
bE1pbnVzMV91MTZ4NCwgdmR1cF9uX3MxNiggb2Zmc2V0X1ExMCApLCBxMl9RMTBfczE2eDQgKTsK
KyAgICAgICAgICAgICAgICB0bXAxX3MxNng0ID0gcTFfUTEwX3MxNng0OworICAgICAgICAgICAg
ICAgIHRtcDJfczE2eDQgPSBxMl9RMTBfczE2eDQ7CisgICAgICAgICAgICAgICAgdG1wMV9zMTZ4
NCA9IHZic2xfczE2KCB2b3JyX3UxNiggZXF1YWxNaW51czFfdTE2eDQsIGxlc3NUaGFuTWludXMx
X3UxNng0ICksIHZuZWdfczE2KCB0bXAxX3MxNng0ICksIHRtcDFfczE2eDQgKTsKKyAgICAgICAg
ICAgICAgICB0bXAyX3MxNng0ID0gdmJzbF9zMTYoIGxlc3NUaGFuTWludXMxX3UxNng0LCB2bmVn
X3MxNiggdG1wMl9zMTZ4NCApLCB0bXAyX3MxNng0ICk7CisgICAgICAgICAgICAgICAgcmQxX1Ex
MF9zMzJ4NCA9IHZtdWxsX3MxNiggdG1wMV9zMTZ4NCwgdmR1cF9uX3MxNiggTGFtYmRhX1ExMCAp
ICk7CisgICAgICAgICAgICAgICAgcmQyX1ExMF9zMzJ4NCA9IHZtdWxsX3MxNiggdG1wMl9zMTZ4
NCwgdmR1cF9uX3MxNiggTGFtYmRhX1ExMCApICk7CisgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgIHJyX1ExMF9zMTZ4NCA9IHZzdWJfczE2KCByX1ExMF9zMTZ4NCwgcTFfUTEwX3MxNng0ICk7
CisgICAgICAgICAgICByZDFfUTEwX3MzMng0ID0gdm1sYWxfczE2KCByZDFfUTEwX3MzMng0LCBy
cl9RMTBfczE2eDQsIHJyX1ExMF9zMTZ4NCApOworICAgICAgICAgICAgcmQxX1ExMF9zMzJ4NCA9
IHZzaHJxX25fczMyKCByZDFfUTEwX3MzMng0LCAxMCApOworCisgICAgICAgICAgICBycl9RMTBf
czE2eDQgPSB2c3ViX3MxNiggcl9RMTBfczE2eDQsIHEyX1ExMF9zMTZ4NCApOworICAgICAgICAg
ICAgcmQyX1ExMF9zMzJ4NCA9IHZtbGFsX3MxNiggcmQyX1ExMF9zMzJ4NCwgcnJfUTEwX3MxNng0
LCBycl9RMTBfczE2eDQgKTsKKyAgICAgICAgICAgIHJkMl9RMTBfczMyeDQgPSB2c2hycV9uX3Mz
MiggcmQyX1ExMF9zMzJ4NCwgMTAgKTsKKworICAgICAgICAgICAgdG1wMl9zMzJ4NCA9IHZsZDFx
X3MzMiggcHNEZWxEZWMtPlJEX1ExMCApOworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHZhZGRx
X3MzMiggdG1wMl9zMzJ4NCwgdm1pbnFfczMyKCByZDFfUTEwX3MzMng0LCByZDJfUTEwX3MzMng0
ICkgKTsKKyAgICAgICAgICAgIHRtcDJfczMyeDQgPSB2YWRkcV9zMzIoIHRtcDJfczMyeDQsIHZt
YXhxX3MzMiggcmQxX1ExMF9zMzJ4NCwgcmQyX1ExMF9zMzJ4NCApICk7CisgICAgICAgICAgICB2
c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5SRF9RMTAsIHRtcDFfczMyeDQgKTsKKyAgICAg
ICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMSBdLlJEX1ExMCwgdG1wMl9zMzJ4NCAp
OworICAgICAgICAgICAgdF91MzJ4NCA9IHZjbHRxX3MzMiggcmQxX1ExMF9zMzJ4NCwgcmQyX1Ex
MF9zMzJ4NCApOworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9IHZic2xxX3MzMiggdF91MzJ4NCwg
dm1vdmxfczE2KCBxMV9RMTBfczE2eDQgKSwgdm1vdmxfczE2KCBxMl9RMTBfczE2eDQgKSApOwor
ICAgICAgICAgICAgdG1wMl9zMzJ4NCA9IHZic2xxX3MzMiggdF91MzJ4NCwgdm1vdmxfczE2KCBx
Ml9RMTBfczE2eDQgKSwgdm1vdmxfczE2KCBxMV9RMTBfczE2eDQgKSApOworICAgICAgICAgICAg
dnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uUV9RMTAsIHRtcDFfczMyeDQgKTsKKyAgICAg
ICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMSBdLlFfUTEwLCB0bXAyX3MzMng0ICk7
CisgICAgICAgIH0KKworICAgICAgICB7CisgICAgICAgICAgICAvKiBVcGRhdGUgc3RhdGVzIGZv
ciBiZXN0IHF1YW50aXphdGlvbiAqLworICAgICAgICAgICAgaW50MzJ4NF90IGV4Y19RMTRfczMy
eDQsIExQQ19leGNfUTE0X3MzMng0LCB4cV9RMTRfczMyeDQsIHNMRl9BUl9zaHBfUTE0X3MzMng0
OworCisgICAgICAgICAgICAvKiBRdWFudGl6ZWQgZXhjaXRhdGlvbiAqLworICAgICAgICAgICAg
ZXhjX1ExNF9zMzJ4NCA9IHZzaGxxX25fczMyKCB0bXAxX3MzMng0LCA0ICk7CisgICAgICAgICAg
ICBleGNfUTE0X3MzMng0ID0gdmVvcnFfczMyKCBleGNfUTE0X3MzMng0LCBzaWduX3MzMng0ICk7
CisgICAgICAgICAgICBleGNfUTE0X3MzMng0ID0gdnN1YnFfczMyKCBleGNfUTE0X3MzMng0LCBz
aWduX3MzMng0ICk7CisKKyAgICAgICAgICAgIC8qIEFkZCBwcmVkaWN0aW9ucyAqLworICAgICAg
ICAgICAgTFBDX2V4Y19RMTRfczMyeDQgPSB2YWRkcV9zMzIoIGV4Y19RMTRfczMyeDQsIHZkdXBx
X25fczMyKCBMVFBfcHJlZF9RMTQgKSApOworICAgICAgICAgICAgeHFfUTE0X3MzMng0ICAgICAg
PSB2YWRkcV9zMzIoIExQQ19leGNfUTE0X3MzMng0LCBMUENfcHJlZF9RMTRfczMyeDQgKTsKKwor
ICAgICAgICAgICAgLyogVXBkYXRlIHN0YXRlcyAqLworICAgICAgICAgICAgdG1wMV9zMzJ4NCA9
IHZzdWJxX3MzMiggeHFfUTE0X3MzMng0LCB2c2hscV9uX3MzMiggdmR1cHFfbl9zMzIoIHhfUTEw
WyBpIF0gKSwgNCApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAg
XS5EaWZmX1ExNCwgdG1wMV9zMzJ4NCApOworICAgICAgICAgICAgc0xGX0FSX3NocF9RMTRfczMy
eDQgPSB2c3VicV9zMzIoIHRtcDFfczMyeDQsIG5fQVJfUTE0X3MzMng0ICk7CisgICAgICAgICAg
ICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5zTFRQX3NocF9RMTQsIHZzdWJxX3MzMigg
c0xGX0FSX3NocF9RMTRfczMyeDQsIG5fTEZfUTE0X3MzMng0ICkgKTsKKyAgICAgICAgICAgIHZz
dDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLkxGX0FSX1ExNCwgc0xGX0FSX3NocF9RMTRfczMy
eDQgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLkxQQ19leGNf
UTE0LCBMUENfZXhjX1ExNF9zMzJ4NCApOworICAgICAgICAgICAgdnN0MXFfczMyKCBwc1NhbXBs
ZVN0YXRlWyAwIF0ueHFfUTE0LCB4cV9RMTRfczMyeDQgKTsKKworICAgICAgICAgICAgLyogUXVh
bnRpemVkIGV4Y2l0YXRpb24gKi8KKyAgICAgICAgICAgIGV4Y19RMTRfczMyeDQgPSB2c2hscV9u
X3MzMiggdG1wMl9zMzJ4NCwgNCApOworICAgICAgICAgICAgZXhjX1ExNF9zMzJ4NCA9IHZlb3Jx
X3MzMiggZXhjX1ExNF9zMzJ4NCwgc2lnbl9zMzJ4NCApOworICAgICAgICAgICAgZXhjX1ExNF9z
MzJ4NCA9IHZzdWJxX3MzMiggZXhjX1ExNF9zMzJ4NCwgc2lnbl9zMzJ4NCApOworCisgICAgICAg
ICAgICAvKiBBZGQgcHJlZGljdGlvbnMgKi8KKyAgICAgICAgICAgIExQQ19leGNfUTE0X3MzMng0
ID0gdmFkZHFfczMyKCBleGNfUTE0X3MzMng0LCB2ZHVwcV9uX3MzMiggTFRQX3ByZWRfUTE0ICkg
KTsKKyAgICAgICAgICAgIHhxX1ExNF9zMzJ4NCAgICAgID0gdmFkZHFfczMyKCBMUENfZXhjX1Ex
NF9zMzJ4NCwgTFBDX3ByZWRfUTE0X3MzMng0ICk7CisKKyAgICAgICAgICAgIC8qIFVwZGF0ZSBz
dGF0ZXMgKi8KKyAgICAgICAgICAgIHRtcDFfczMyeDQgPSB2c3VicV9zMzIoIHhxX1ExNF9zMzJ4
NCwgdnNobHFfbl9zMzIoIHZkdXBxX25fczMyKCB4X1ExMFsgaSBdICksIDQgKSApOworICAgICAg
ICAgICAgdnN0MXFfczMyKCBwc1NhbXBsZVN0YXRlWyAxIF0uRGlmZl9RMTQsIHRtcDFfczMyeDQg
KTsKKyAgICAgICAgICAgIHNMRl9BUl9zaHBfUTE0X3MzMng0ID0gdnN1YnFfczMyKCB0bXAxX3Mz
Mng0LCBuX0FSX1ExNF9zMzJ4NCApOworICAgICAgICAgICAgdnN0MXFfczMyKCBwc1NhbXBsZVN0
YXRlWyAxIF0uc0xUUF9zaHBfUTE0LCB2c3VicV9zMzIoIHNMRl9BUl9zaHBfUTE0X3MzMng0LCBu
X0xGX1ExNF9zMzJ4NCApICk7CisgICAgICAgICAgICB2c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVb
IDEgXS5MRl9BUl9RMTQsIHNMRl9BUl9zaHBfUTE0X3MzMng0ICk7CisgICAgICAgICAgICB2c3Qx
cV9zMzIoIHBzU2FtcGxlU3RhdGVbIDEgXS5MUENfZXhjX1ExNCwgTFBDX2V4Y19RMTRfczMyeDQg
KTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMSBdLnhxX1ExNCwgeHFf
UTE0X3MzMng0ICk7CisgICAgICAgIH0KKworICAgICAgICAqc21wbF9idWZfaWR4ID0gKnNtcGxf
YnVmX2lkeCA/ICggKnNtcGxfYnVmX2lkeCAtIDEgKSA6ICggREVDSVNJT05fREVMQVkgLSAxKTsK
KyAgICAgICAgbGFzdF9zbXBsZV9pZHggPSAqc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheSAr
IERFQ0lTSU9OX0RFTEFZOworICAgICAgICBpZiggbGFzdF9zbXBsZV9pZHggPj0gREVDSVNJT05f
REVMQVkgKSBsYXN0X3NtcGxlX2lkeCAtPSBERUNJU0lPTl9ERUxBWTsKKyAgICAgICAgaWYoIGxh
c3Rfc21wbGVfaWR4ID49IERFQ0lTSU9OX0RFTEFZICkgbGFzdF9zbXBsZV9pZHggLT0gREVDSVNJ
T05fREVMQVk7CisKKyAgICAgICAgLyogRmluZCB3aW5uZXIgKi8KKyAgICAgICAgUkRtaW5fUTEw
ID0gcHNTYW1wbGVTdGF0ZVsgMCBdLlJEX1ExMFsgMCBdOworICAgICAgICBXaW5uZXJfaW5kID0g
MDsKKyAgICAgICAgZm9yKCBrID0gMTsgayA8IG5TdGF0ZXNEZWxheWVkRGVjaXNpb247IGsrKyAp
IHsKKyAgICAgICAgICAgIGlmKCBwc1NhbXBsZVN0YXRlWyAwIF0uUkRfUTEwWyBrIF0gPCBSRG1p
bl9RMTAgKSB7CisgICAgICAgICAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0ZVsgMCBd
LlJEX1ExMFsgayBdOworICAgICAgICAgICAgICAgIFdpbm5lcl9pbmQgPSBrOworICAgICAgICAg
ICAgfQorICAgICAgICB9CisKKyAgICAgICAgLyogSW5jcmVhc2UgUkQgdmFsdWVzIG9mIGV4cGly
ZWQgc3RhdGVzICovCisgICAgICAgIHsKKyAgICAgICAgICAgIHVpbnQzMng0X3QgdF91MzJ4NDsK
KyAgICAgICAgICAgIFdpbm5lcl9yYW5kX3N0YXRlID0gcHNEZWxEZWMtPlJhbmRTdGF0ZVsgbGFz
dF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBdOworICAgICAgICAgICAgdF91MzJ4NCA9IHZjZXFx
X3MzMiggdmxkMXFfczMyKCBwc0RlbERlYy0+UmFuZFN0YXRlWyBsYXN0X3NtcGxlX2lkeCBdICks
IHZkdXBxX25fczMyKCBXaW5uZXJfcmFuZF9zdGF0ZSApICk7CisgICAgICAgICAgICB0X3UzMng0
ID0gdm12bnFfdTMyKCB0X3UzMng0ICk7CisgICAgICAgICAgICB0X3UzMng0ID0gdnNocnFfbl91
MzIoIHRfdTMyeDQsIDUgKTsKKyAgICAgICAgICAgIHRtcDFfczMyeDQgPSB2bGQxcV9zMzIoIHBz
U2FtcGxlU3RhdGVbIDAgXS5SRF9RMTAgKTsKKyAgICAgICAgICAgIHRtcDJfczMyeDQgPSB2bGQx
cV9zMzIoIHBzU2FtcGxlU3RhdGVbIDEgXS5SRF9RMTAgKTsKKyAgICAgICAgICAgIHRtcDFfczMy
eDQgPSB2YWRkcV9zMzIoIHRtcDFfczMyeDQsIHZyZWludGVycHJldHFfczMyX3UzMiggdF91MzJ4
NCApICk7CisgICAgICAgICAgICB0bXAyX3MzMng0ID0gdmFkZHFfczMyKCB0bXAyX3MzMng0LCB2
cmVpbnRlcnByZXRxX3MzMl91MzIoIHRfdTMyeDQgKSApOworICAgICAgICAgICAgdnN0MXFfczMy
KCBwc1NhbXBsZVN0YXRlWyAwIF0uUkRfUTEwLCB0bXAxX3MzMng0ICk7CisgICAgICAgICAgICB2
c3QxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDEgXS5SRF9RMTAsIHRtcDJfczMyeDQgKTsKKworICAg
ICAgICAgICAgLyogRmluZCB3b3JzdCBpbiBmaXJzdCBzZXQgYW5kIGJlc3QgaW4gc2Vjb25kIHNl
dCAqLworICAgICAgICAgICAgUkRtYXhfUTEwID0gcHNTYW1wbGVTdGF0ZVsgMCBdLlJEX1ExMFsg
MCBdOworICAgICAgICAgICAgUkRtaW5fUTEwID0gcHNTYW1wbGVTdGF0ZVsgMSBdLlJEX1ExMFsg
MCBdOworICAgICAgICAgICAgUkRtYXhfaW5kID0gMDsKKyAgICAgICAgICAgIFJEbWluX2luZCA9
IDA7CisgICAgICAgICAgICBmb3IoIGsgPSAxOyBrIDwgblN0YXRlc0RlbGF5ZWREZWNpc2lvbjsg
aysrICkgeworICAgICAgICAgICAgICAgIC8qIGZpbmQgd29yc3QgaW4gZmlyc3Qgc2V0ICovCisg
ICAgICAgICAgICAgICAgaWYoIHBzU2FtcGxlU3RhdGVbIDAgXS5SRF9RMTBbIGsgXSA+IFJEbWF4
X1ExMCApIHsKKyAgICAgICAgICAgICAgICAgICAgUkRtYXhfUTEwID0gcHNTYW1wbGVTdGF0ZVsg
MCBdLlJEX1ExMFsgayBdOworICAgICAgICAgICAgICAgICAgICBSRG1heF9pbmQgPSBrOworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAvKiBmaW5kIGJlc3QgaW4gc2Vjb25kIHNl
dCAqLworICAgICAgICAgICAgICAgIGlmKCBwc1NhbXBsZVN0YXRlWyAxIF0uUkRfUTEwWyBrIF0g
PCBSRG1pbl9RMTAgKSB7CisgICAgICAgICAgICAgICAgICAgIFJEbWluX1ExMCA9IHBzU2FtcGxl
U3RhdGVbIDEgXS5SRF9RMTBbIGsgXTsKKyAgICAgICAgICAgICAgICAgICAgUkRtaW5faW5kID0g
azsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAg
ICAvKiBSZXBsYWNlIGEgc3RhdGUgaWYgYmVzdCBmcm9tIHNlY29uZCBzZXQgb3V0cGVyZm9ybXMg
d29yc3QgaW4gZmlyc3Qgc2V0ICovCisgICAgICAgIGlmKCBSRG1pbl9RMTAgPCBSRG1heF9RMTAg
KSB7CisgICAgICAgICAgICBvcHVzX2ludDMyICgqcHRyKVtORU9OX01BWF9ERUxfREVDX1NUQVRF
U10gPSBwc0RlbERlYy0+UmFuZFN0YXRlOworICAgICAgICAgICAgY29uc3QgaW50IG51bU90aGVy
cyA9IChpbnQpKCAoIHNpemVvZiggTlNRX2RlbF9kZWNzX3N0cnVjdCApIC0gc2l6ZW9mKCAoIChO
U1FfZGVsX2RlY3Nfc3RydWN0ICopMCApLT5zTFBDX1ExNCApICkKKyAgICAgICAgICAgICAgICAv
ICggTkVPTl9NQVhfREVMX0RFQ19TVEFURVMgKiBzaXplb2YoIG9wdXNfaW50MzIgKSApICk7Cisg
ICAgICAgICAgICAvKiBPbmx5ICggcHJlZGljdExQQ09yZGVyIC0gMSApIG9mIHNMUENfUTE0IGJ1
ZmZlciBuZWVkIHRvIGJlIHVwZGF0ZWQsIHRob3VnaCB0aGUgZmlyc3Qgc2V2ZXJhbCAgICAgKi8K
KyAgICAgICAgICAgIC8qIHVzZWxlc3Mgc0xQQ19RMTRbXSB3aWxsIGJlIGRpZmZlcmVudCBjb21w
YXJpbmcgd2l0aCBDIHdoZW4gcHJlZGljdExQQ09yZGVyIDwgTlNRX0xQQ19CVUZfTEVOR1RILiAq
LworICAgICAgICAgICAgLyogSGVyZSBqdXN0IHVwZGF0ZSBjb25zdGFudCAoIE5TUV9MUENfQlVG
X0xFTkdUSCAtIDEgKSBmb3Igc2ltcGxpY2l0eS4gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgICAgICAgICBmb3IoIGogPSBpICsgMTsgaiA8IGkgKyBOU1FfTFBDX0JVRl9MRU5H
VEg7IGorKyApIHsKKyAgICAgICAgICAgICAgICBwc0RlbERlYy0+c0xQQ19RMTRbIGogXVsgUkRt
YXhfaW5kIF0gPSBwc0RlbERlYy0+c0xQQ19RMTRbIGogXVsgUkRtaW5faW5kIF07CisgICAgICAg
ICAgICB9CisgICAgICAgICAgICBmb3IoIGogPSAwOyBqIDwgbnVtT3RoZXJzOyBqKysgKSB7Cisg
ICAgICAgICAgICAgICAgcHRyWyBqIF1bIFJEbWF4X2luZCBdID0gcHRyWyBqIF1bIFJEbWluX2lu
ZCBdOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBwc1NhbXBsZVN0YXRlWyAwIF0uUV9R
MTBbIFJEbWF4X2luZCBdID0gcHNTYW1wbGVTdGF0ZVsgMSBdLlFfUTEwWyBSRG1pbl9pbmQgXTsK
KyAgICAgICAgICAgIHBzU2FtcGxlU3RhdGVbIDAgXS5SRF9RMTBbIFJEbWF4X2luZCBdID0gcHNT
YW1wbGVTdGF0ZVsgMSBdLlJEX1ExMFsgUkRtaW5faW5kIF07CisgICAgICAgICAgICBwc1NhbXBs
ZVN0YXRlWyAwIF0ueHFfUTE0WyBSRG1heF9pbmQgXSA9IHBzU2FtcGxlU3RhdGVbIDEgXS54cV9R
MTRbIFJEbWluX2luZCBdOworICAgICAgICAgICAgcHNTYW1wbGVTdGF0ZVsgMCBdLkxGX0FSX1Ex
NFsgUkRtYXhfaW5kIF0gPSBwc1NhbXBsZVN0YXRlWyAxIF0uTEZfQVJfUTE0WyBSRG1pbl9pbmQg
XTsKKyAgICAgICAgICAgIHBzU2FtcGxlU3RhdGVbIDAgXS5EaWZmX1ExNFsgUkRtYXhfaW5kIF0g
PSBwc1NhbXBsZVN0YXRlWyAxIF0uRGlmZl9RMTRbIFJEbWluX2luZCBdOworICAgICAgICAgICAg
cHNTYW1wbGVTdGF0ZVsgMCBdLnNMVFBfc2hwX1ExNFsgUkRtYXhfaW5kIF0gPSBwc1NhbXBsZVN0
YXRlWyAxIF0uc0xUUF9zaHBfUTE0WyBSRG1pbl9pbmQgXTsKKyAgICAgICAgICAgIHBzU2FtcGxl
U3RhdGVbIDAgXS5MUENfZXhjX1ExNFsgUkRtYXhfaW5kIF0gPSBwc1NhbXBsZVN0YXRlWyAxIF0u
TFBDX2V4Y19RMTRbIFJEbWluX2luZCBdOworICAgICAgICB9CisKKyAgICAgICAgLyogV3JpdGUg
c2FtcGxlcyBmcm9tIHdpbm5lciB0byBvdXRwdXQgYW5kIGxvbmctdGVybSBmaWx0ZXIgc3RhdGVz
ICovCisgICAgICAgIGlmKCBzdWJmciA+IDAgfHwgaSA+PSBkZWNpc2lvbkRlbGF5ICkgeworICAg
ICAgICAgICAgcHVsc2VzWyAgaSAtIGRlY2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDgpc2lsa19S
U0hJRlRfUk9VTkQoIHBzRGVsRGVjLT5RX1ExMFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2lu
ZCBdLCAxMCApOworICAgICAgICAgICAgeHFbIGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19p
bnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCgKKyAgICAgICAgICAgICAgICBzaWxr
X1NNVUxXVyggcHNEZWxEZWMtPlhxX1ExNFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBd
LCBkZWxheWVkR2Fpbl9RMTBbIGxhc3Rfc21wbGVfaWR4IF0gKSwgOCApICk7CisgICAgICAgICAg
ICBOU1EtPnNMVFBfc2hwX1ExNFsgTlNRLT5zTFRQX3NocF9idWZfaWR4IC0gZGVjaXNpb25EZWxh
eSBdID0gcHNEZWxEZWMtPlNoYXBlX1ExNFsgbGFzdF9zbXBsZV9pZHggXVsgV2lubmVyX2luZCBd
OworICAgICAgICAgICAgc0xUUF9RMTVbICAgICAgICAgIE5TUS0+c0xUUF9idWZfaWR4ICAgICAt
IGRlY2lzaW9uRGVsYXkgXSA9IHBzRGVsRGVjLT5QcmVkX1ExNVsgIGxhc3Rfc21wbGVfaWR4IF1b
IFdpbm5lcl9pbmQgXTsKKyAgICAgICAgfQorICAgICAgICBOU1EtPnNMVFBfc2hwX2J1Zl9pZHgr
KzsKKyAgICAgICAgTlNRLT5zTFRQX2J1Zl9pZHgrKzsKKworICAgICAgICAvKiBVcGRhdGUgc3Rh
dGVzICovCisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPkxGX0FSX1ExNCwgdmxkMXFfczMy
KCBwc1NhbXBsZVN0YXRlWyAwIF0uTEZfQVJfUTE0ICkgKTsKKyAgICAgICAgdnN0MXFfczMyKCBw
c0RlbERlYy0+RGlmZl9RMTQsIHZsZDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLkRpZmZfUTE0
ICkgKTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+c0xQQ19RMTRbIE5TUV9MUENfQlVG
X0xFTkdUSCArIGkgXSwgdmxkMXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0ueHFfUTE0ICkgKTsK
KyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+WHFfUTE0WyAqc21wbF9idWZfaWR4IF0sIHZs
ZDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLnhxX1ExNCApICk7CisgICAgICAgIHRtcDFfczMy
eDQgPSB2bGQxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5RX1ExMCApOworICAgICAgICB2c3Qx
cV9zMzIoIHBzRGVsRGVjLT5RX1ExMFsgKnNtcGxfYnVmX2lkeCBdLCB0bXAxX3MzMng0ICk7Cisg
ICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlByZWRfUTE1WyAqc21wbF9idWZfaWR4IF0sIHZz
aGxxX25fczMyKCB2bGQxcV9zMzIoIHBzU2FtcGxlU3RhdGVbIDAgXS5MUENfZXhjX1ExNCApLCAx
ICkgKTsKKyAgICAgICAgdnN0MXFfczMyKCBwc0RlbERlYy0+U2hhcGVfUTE0WyAqc21wbF9idWZf
aWR4IF0sIHZsZDFxX3MzMiggcHNTYW1wbGVTdGF0ZVsgMCBdLnNMVFBfc2hwX1ExNCApICk7Cisg
ICAgICAgIHRtcDFfczMyeDQgPSB2cnNocnFfbl9zMzIoIHRtcDFfczMyeDQsIDEwICk7CisgICAg
ICAgIHRtcDFfczMyeDQgPSB2YWRkcV9zMzIoIHZsZDFxX3MzMiggcHNEZWxEZWMtPlNlZWQgKSwg
dG1wMV9zMzJ4NCApOworICAgICAgICB2c3QxcV9zMzIoIHBzRGVsRGVjLT5TZWVkLCB0bXAxX3Mz
Mng0ICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlJhbmRTdGF0ZVsgKnNtcGxfYnVm
X2lkeCBdLCB0bXAxX3MzMng0ICk7CisgICAgICAgIHZzdDFxX3MzMiggcHNEZWxEZWMtPlJEX1Ex
MCwgdmxkMXFfczMyKCBwc1NhbXBsZVN0YXRlWyAwIF0uUkRfUTEwICkgKTsKKyAgICAgICAgZGVs
YXllZEdhaW5fUTEwWyAqc21wbF9idWZfaWR4IF0gPSBHYWluX1ExMDsKKyAgICB9CisgICAgLyog
VXBkYXRlIExQQyBzdGF0ZXMgKi8KKyAgICBzaWxrX21lbWNweSggcHNEZWxEZWMtPnNMUENfUTE0
WyAwIF0sIHBzRGVsRGVjLT5zTFBDX1ExNFsgbGVuZ3RoIF0sIE5FT05fTUFYX0RFTF9ERUNfU1RB
VEVTICogTlNRX0xQQ19CVUZfTEVOR1RIICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKKworICAg
IFJFU1RPUkVfU1RBQ0s7Cit9CisKK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfU01VTFdC
XzhfbmVvbigKKyAgICBjb25zdCBvcHVzX2ludDE2ICphLAorICAgIGNvbnN0IGludDMyeDJfdCAg
YiwKKyAgICBvcHVzX2ludDMyICAgICAgICpvCispCit7CisgICAgY29uc3QgaW50MTZ4OF90IGFf
czE2eDggPSB2bGQxcV9zMTYoIGEgKTsKKyAgICBpbnQzMng0X3QgbzBfczMyeDQsIG8xX3MzMng0
OworCisgICAgbzBfczMyeDQgPSB2c2hsbF9uX3MxNiggdmdldF9sb3dfczE2KCBhX3MxNng4ICks
IDE1ICk7CisgICAgbzFfczMyeDQgPSB2c2hsbF9uX3MxNiggdmdldF9oaWdoX3MxNiggYV9zMTZ4
OCApLCAxNSApOworICAgIG8wX3MzMng0ID0gdnFkbXVsaHFfbGFuZV9zMzIoIG8wX3MzMng0LCBi
LCAwICk7CisgICAgbzFfczMyeDQgPSB2cWRtdWxocV9sYW5lX3MzMiggbzFfczMyeDQsIGIsIDAg
KTsKKyAgICB2c3QxcV9zMzIoIG8sIG8wX3MzMng0ICk7CisgICAgdnN0MXFfczMyKCBvICsgNCwg
bzFfczMyeDQgKTsKK30KKworLyogT25seSB3b3JrcyB3aGVuICggYiA+PSAtNjU1MzYgKSAmJiAo
IGIgPCA2NTUzNiApLiAqLworc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19TTVVMV1dfc21h
bGxfYl80X25lb24oCisgICAgb3B1c19pbnQzMiAgICAgICAqYSwKKyAgICBjb25zdCBpbnQzMngy
X3QgIGJfczMyeDIpCit7CisgICAgaW50MzJ4NF90IG9fczMyeDQ7CisKKyAgICBvX3MzMng0ID0g
dmxkMXFfczMyKCBhICk7CisgICAgb19zMzJ4NCA9IHZxZG11bGhxX2xhbmVfczMyKCBvX3MzMng0
LCBiX3MzMngyLCAwICk7CisgICAgdnN0MXFfczMyKCBhLCBvX3MzMng0ICk7Cit9CisKKy8qIE9u
bHkgd29ya3Mgd2hlbiAoIGIgPj0gLTY1NTM2ICkgJiYgKCBiIDwgNjU1MzYgKS4gKi8KK3N0YXRp
YyBPUFVTX0lOTElORSB2b2lkIHNpbGtfU01VTFdXX3NtYWxsX2JfOF9uZW9uKAorICAgIG9wdXNf
aW50MzIgICAgICAgKmEsCisgICAgY29uc3QgaW50MzJ4Ml90ICBiX3MzMngyCispCit7CisgICAg
aW50MzJ4NF90IG8wX3MzMng0LCBvMV9zMzJ4NDsKKworICAgIG8wX3MzMng0ID0gdmxkMXFfczMy
KCBhICk7CisgICAgbzFfczMyeDQgPSB2bGQxcV9zMzIoIGEgKyA0ICk7CisgICAgbzBfczMyeDQg
PSB2cWRtdWxocV9sYW5lX3MzMiggbzBfczMyeDQsIGJfczMyeDIsIDAgKTsKKyAgICBvMV9zMzJ4
NCA9IHZxZG11bGhxX2xhbmVfczMyKCBvMV9zMzJ4NCwgYl9zMzJ4MiwgMCApOworICAgIHZzdDFx
X3MzMiggYSwgbzBfczMyeDQgKTsKKyAgICB2c3QxcV9zMzIoIGEgKyA0LCBvMV9zMzJ4NCApOwor
fQorCitzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX1NNVUxXV180X25lb24oCisgICAgb3B1
c19pbnQzMiAgICAgICAqYSwKKyAgICBjb25zdCBpbnQzMngyX3QgIGJfczMyeDIpCit7CisgICAg
aW50MzJ4NF90IGFfczMyeDQsIG9fczMyeDQ7CisKKyAgICBhX3MzMng0ID0gdmxkMXFfczMyKCBh
ICk7CisgICAgb19zMzJ4NCA9IHZxZG11bGhxX2xhbmVfczMyKCBhX3MzMng0LCBiX3MzMngyLCAw
ICk7CisgICAgb19zMzJ4NCA9IHZtbGFxX2xhbmVfczMyKCBvX3MzMng0LCBhX3MzMng0LCBiX3Mz
MngyLCAxICk7CisgICAgdnN0MXFfczMyKCBhLCBvX3MzMng0ICk7Cit9CisKK3N0YXRpYyBPUFVT
X0lOTElORSB2b2lkIHNpbGtfU01VTFdXXzhfbmVvbigKKyAgICBvcHVzX2ludDMyICAgICAgICph
LAorICAgIGNvbnN0IGludDMyeDJfdCAgYl9zMzJ4MgorKQoreworICAgIGludDMyeDRfdCBhMF9z
MzJ4NCwgYTFfczMyeDQsIG8wX3MzMng0LCBvMV9zMzJ4NDsKKworICAgIGEwX3MzMng0ID0gdmxk
MXFfczMyKCBhICk7CisgICAgYTFfczMyeDQgPSB2bGQxcV9zMzIoIGEgKyA0ICk7CisgICAgbzBf
czMyeDQgPSB2cWRtdWxocV9sYW5lX3MzMiggYTBfczMyeDQsIGJfczMyeDIsIDAgKTsKKyAgICBv
MV9zMzJ4NCA9IHZxZG11bGhxX2xhbmVfczMyKCBhMV9zMzJ4NCwgYl9zMzJ4MiwgMCApOworICAg
IG8wX3MzMng0ID0gdm1sYXFfbGFuZV9zMzIoIG8wX3MzMng0LCBhMF9zMzJ4NCwgYl9zMzJ4Miwg
MSApOworICAgIG8xX3MzMng0ID0gdm1sYXFfbGFuZV9zMzIoIG8xX3MzMng0LCBhMV9zMzJ4NCwg
Yl9zMzJ4MiwgMSApOworICAgIHZzdDFxX3MzMiggYSwgbzBfczMyeDQgKTsKKyAgICB2c3QxcV9z
MzIoIGEgKyA0LCBvMV9zMzJ4NCApOworfQorCitzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxr
X1NNVUxXV19sb29wX25lb24oCisgICAgY29uc3Qgb3B1c19pbnQxNiAqYSwKKyAgICBjb25zdCBv
cHVzX2ludDMyIGIsCisgICAgb3B1c19pbnQzMiAgICAgICAqbywKKyAgICBjb25zdCBvcHVzX2lu
dCAgIGxvb3BfbnVtCispCit7CisgICAgb3B1c19pbnQgaTsKKyAgICBpbnQzMngyX3QgYl9zMzJ4
MjsKKworICAgIGJfczMyeDIgPSB2ZHVwX25fczMyKCBiICk7CisgICAgZm9yKCBpID0gMDsgaSA8
IGxvb3BfbnVtIC0gNzsgaSArPSA4ICkgeworICAgICAgICBzaWxrX1NNVUxXQl84X25lb24oIGEg
KyBpLCBiX3MzMngyLCBvICsgaSApOworICAgIH0KKyAgICBmb3IoIDsgaSA8IGxvb3BfbnVtOyBp
KysgKSB7CisgICAgICAgIG9bIGkgXSA9IHNpbGtfU01VTFdXKCBhWyBpIF0sIGIgKTsKKyAgICB9
Cit9CisKK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfbnNxX2RlbF9kZWNfc2NhbGVfc3Rh
dGVzX25lb24oCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICpwc0VuY0MsICAgICAgICAg
ICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IHNpbGtfbnNxX3N0YXRlICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAg
TlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOU1FfZGVsX2RlY3Nf
c3RydWN0IHBzRGVsRGVjW10sICAgICAgICAgICAgICAgICAvKiBJL08gIERlbGF5ZWQgZGVjaXNp
b24gc3RhdGVzICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQxNiAgICB4MTZbXSwg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIG9wdXNfaW50MzIgICAgICAgICAgeF9zY19RMTBbXSwgICAgICAgICAg
ICAgICAgIC8qIE8gICAgSW5wdXQgc2NhbGVkIHdpdGggMS9HYWluIGluIFExMCAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludDE2ICAgIHNMVFBbXSwgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IFJlLXdoaXRlbmVkIExUUCBzdGF0ZSBpbiBRMCAgICAgICAgICovCisgICAgb3B1c19pbnQzMiAg
ICAgICAgICBzTFRQX1ExNVtdLCAgICAgICAgICAgICAgICAgLyogTyAgICBMVFAgc3RhdGUgbWF0
Y2hpbmcgc2NhbGVkIGlucHV0ICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgc3ViZnIs
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3ViZnJhbWUgbnVtYmVyICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgIExUUF9zY2FsZV9RMTQsICAgICAg
ICAgICAgICAvKiBJICAgIExUUCBzdGF0ZSBzY2FsaW5nICAgICAgICAgICAgICAgICAgICovCisg
ICAgY29uc3Qgb3B1c19pbnQzMiAgICBHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdLCAgLyogSSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgcGl0Y2hMWyBNQVhfTkJfU1VCRlIgXSwgICAgIC8qIEkgICAgUGl0Y2ggbGFnICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgIHNpZ25h
bF90eXBlLCAgICAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBlICAgICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICBkZWNpc2lvbkRlbGF5ICAgICAg
ICAgICAgICAgLyogSSAgICBEZWNpc2lvbiBkZWxheSAgICAgICAgICAgICAgICAgICAgICAqLwor
KQoreworICAgIG9wdXNfaW50ICAgICAgICAgICAgaSwgbGFnOworICAgIG9wdXNfaW50MzIgICAg
ICAgICAgZ2Fpbl9hZGpfUTE2LCBpbnZfZ2Fpbl9RMzEsIGludl9nYWluX1EyNjsKKworICAgIGxh
ZyAgICAgICAgICA9IHBpdGNoTFsgc3ViZnIgXTsKKyAgICBpbnZfZ2Fpbl9RMzEgPSBzaWxrX0lO
VkVSU0UzMl92YXJRKCBzaWxrX21heCggR2FpbnNfUTE2WyBzdWJmciBdLCAxICksIDQ3ICk7Cisg
ICAgc2lsa19hc3NlcnQoIGludl9nYWluX1EzMSAhPSAwICk7CisKKyAgICAvKiBTY2FsZSBpbnB1
dCAqLworICAgIGludl9nYWluX1EyNiA9IHNpbGtfUlNISUZUX1JPVU5EKCBpbnZfZ2Fpbl9RMzEs
IDUgKTsKKyAgICBzaWxrX1NNVUxXV19sb29wX25lb24oIHgxNiwgaW52X2dhaW5fUTI2LCB4X3Nj
X1ExMCwgcHNFbmNDLT5zdWJmcl9sZW5ndGggKTsKKworICAgIC8qIEFmdGVyIHJld2hpdGVuaW5n
IHRoZSBMVFAgc3RhdGUgaXMgdW4tc2NhbGVkLCBzbyBzY2FsZSB3aXRoIGludl9nYWluX1ExNiAq
LworICAgIGlmKCBOU1EtPnJld2hpdGVfZmxhZyApIHsKKyAgICAgICAgaWYoIHN1YmZyID09IDAg
KSB7CisgICAgICAgICAgICAvKiBEbyBMVFAgZG93bnNjYWxpbmcgKi8KKyAgICAgICAgICAgIGlu
dl9nYWluX1EzMSA9IHNpbGtfTFNISUZUKCBzaWxrX1NNVUxXQiggaW52X2dhaW5fUTMxLCBMVFBf
c2NhbGVfUTE0ICksIDIgKTsKKyAgICAgICAgfQorICAgICAgICBzaWxrX1NNVUxXV19sb29wX25l
b24oIHNMVFAgKyBOU1EtPnNMVFBfYnVmX2lkeCAtIGxhZyAtIExUUF9PUkRFUiAvIDIsIGludl9n
YWluX1EzMSwgc0xUUF9RMTUgKyBOU1EtPnNMVFBfYnVmX2lkeCAtIGxhZyAtIExUUF9PUkRFUiAv
IDIsIGxhZyArIExUUF9PUkRFUiAvIDIgKTsKKyAgICB9CisKKyAgICAvKiBBZGp1c3QgZm9yIGNo
YW5naW5nIGdhaW4gKi8KKyAgICBpZiggR2FpbnNfUTE2WyBzdWJmciBdICE9IE5TUS0+cHJldl9n
YWluX1ExNiApIHsKKyAgICAgICAgaW50MzJ4Ml90IGdhaW5fYWRqX1ExNl9zMzJ4MjsKKyAgICAg
ICAgZ2Fpbl9hZGpfUTE2ID0gc2lsa19ESVYzMl92YXJRKCBOU1EtPnByZXZfZ2Fpbl9RMTYsIEdh
aW5zX1ExNlsgc3ViZnIgXSwgMTYgKTsKKworICAgICAgICAvKiBTY2FsZSBsb25nLXRlcm0gc2hh
cGluZyBzdGF0ZSAqLworICAgICAgICBpZiggKCBnYWluX2Fkal9RMTYgPj0gLTY1NTM2ICkgJiYg
KCBnYWluX2Fkal9RMTYgPCA2NTUzNiApICkgeworICAgICAgICAgICAgZ2Fpbl9hZGpfUTE2X3Mz
MngyID0gdmR1cF9uX3MzMiggc2lsa19MU0hJRlQzMiggZ2Fpbl9hZGpfUTE2LCAxNSApICk7Cisg
ICAgICAgICAgICBmb3IoIGkgPSBOU1EtPnNMVFBfc2hwX2J1Zl9pZHggLSBwc0VuY0MtPmx0cF9t
ZW1fbGVuZ3RoOyBpIDwgTlNRLT5zTFRQX3NocF9idWZfaWR4IC0gNzsgaSArPSA4ICkgeworICAg
ICAgICAgICAgICAgIHNpbGtfU01VTFdXX3NtYWxsX2JfOF9uZW9uKCBOU1EtPnNMVFBfc2hwX1Ex
NCArIGksIGdhaW5fYWRqX1ExNl9zMzJ4MiApOworICAgICAgICAgICAgfQorICAgICAgICAgICAg
Zm9yKCA7IGkgPCBOU1EtPnNMVFBfc2hwX2J1Zl9pZHg7IGkrKyApIHsKKyAgICAgICAgICAgICAg
ICBOU1EtPnNMVFBfc2hwX1ExNFsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fYWRqX1ExNiwgTlNR
LT5zTFRQX3NocF9RMTRbIGkgXSApOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAvKiBT
Y2FsZSBsb25nLXRlcm0gcHJlZGljdGlvbiBzdGF0ZSAqLworICAgICAgICAgICAgaWYoIHNpZ25h
bF90eXBlID09IFRZUEVfVk9JQ0VEICYmIE5TUS0+cmV3aGl0ZV9mbGFnID09IDAgKSB7CisgICAg
ICAgICAgICAgICAgZm9yKCBpID0gTlNRLT5zTFRQX2J1Zl9pZHggLSBsYWcgLSBMVFBfT1JERVIg
LyAyOyBpIDwgTlNRLT5zTFRQX2J1Zl9pZHggLSBkZWNpc2lvbkRlbGF5IC0gNzsgaSArPSA4ICkg
eworICAgICAgICAgICAgICAgICAgICBzaWxrX1NNVUxXV19zbWFsbF9iXzhfbmVvbiggc0xUUF9R
MTUgKyBpLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgZm9yKCA7IGkgPCBOU1EtPnNMVFBfYnVmX2lkeCAtIGRlY2lzaW9uRGVsYXk7IGkr
KyApIHsKKyAgICAgICAgICAgICAgICAgICAgc0xUUF9RMTVbIGkgXSA9IHNpbGtfU01VTFdXKCBn
YWluX2Fkal9RMTYsIHNMVFBfUTE1WyBpIF0gKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIC8qIFNjYWxlIHNjYWxhciBzdGF0ZXMgKi8KKyAgICAgICAg
ICAgIHNpbGtfU01VTFdXX3NtYWxsX2JfNF9uZW9uKCBwc0RlbERlYy0+TEZfQVJfUTE0LCBnYWlu
X2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIHNpbGtfU01VTFdXX3NtYWxsX2JfNF9uZW9u
KCBwc0RlbERlYy0+RGlmZl9RMTQsICBnYWluX2Fkal9RMTZfczMyeDIgKTsKKworICAgICAgICAg
ICAgLyogU2NhbGUgc2hvcnQtdGVybSBwcmVkaWN0aW9uIGFuZCBzaGFwaW5nIHN0YXRlcyAqLwor
ICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IE5TUV9MUENfQlVGX0xFTkdUSDsgaSsrICkgewor
ICAgICAgICAgICAgICAgIHNpbGtfU01VTFdXX3NtYWxsX2JfNF9uZW9uKCBwc0RlbERlYy0+c0xQ
Q19RMTRbIGkgXSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICB9CisKKyAgICAg
ICAgICAgIGZvciggaSA9IDA7IGkgPCBNQVhfU0hBUEVfTFBDX09SREVSOyBpKysgKSB7CisgICAg
ICAgICAgICAgICAgc2lsa19TTVVMV1dfc21hbGxfYl80X25lb24oIHBzRGVsRGVjLT5zQVIyX1Ex
NFsgaSBdLCBnYWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgZm9yKCBpID0gMDsgaSA8IERFQ0lTSU9OX0RFTEFZOyBpKysgKSB7CisgICAgICAgICAgICAg
ICAgc2lsa19TTVVMV1dfc21hbGxfYl80X25lb24oIHBzRGVsRGVjLT5QcmVkX1ExNVsgIGkgXSwg
Z2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICAgICAgc2lsa19TTVVMV1dfc21hbGxf
Yl80X25lb24oIHBzRGVsRGVjLT5TaGFwZV9RMTRbIGkgXSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7
CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBnYWluX2Fkal9R
MTZfczMyeDIgPSB2ZHVwX25fczMyKCBzaWxrX0xTSElGVDMyKCBnYWluX2Fkal9RMTYgJiAweDAw
MDBGRkZGLCAxNSApICk7CisgICAgICAgICAgICBnYWluX2Fkal9RMTZfczMyeDIgPSB2c2V0X2xh
bmVfczMyKCBnYWluX2Fkal9RMTYgPj4gMTYsIGdhaW5fYWRqX1ExNl9zMzJ4MiwgMSApOworICAg
ICAgICAgICAgZm9yKCBpID0gTlNRLT5zTFRQX3NocF9idWZfaWR4IC0gcHNFbmNDLT5sdHBfbWVt
X2xlbmd0aDsgaSA8IE5TUS0+c0xUUF9zaHBfYnVmX2lkeCAtIDc7IGkgKz0gOCApIHsKKyAgICAg
ICAgICAgICAgICBzaWxrX1NNVUxXV184X25lb24oIE5TUS0+c0xUUF9zaHBfUTE0ICsgaSwgZ2Fp
bl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBmb3IoIDsgaSA8
IE5TUS0+c0xUUF9zaHBfYnVmX2lkeDsgaSsrICkgeworICAgICAgICAgICAgICAgIE5TUS0+c0xU
UF9zaHBfUTE0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9hZGpfUTE2LCBOU1EtPnNMVFBfc2hw
X1ExNFsgaSBdICk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC8qIFNjYWxlIGxvbmct
dGVybSBwcmVkaWN0aW9uIHN0YXRlICovCisgICAgICAgICAgICBpZiggc2lnbmFsX3R5cGUgPT0g
VFlQRV9WT0lDRUQgJiYgTlNRLT5yZXdoaXRlX2ZsYWcgPT0gMCApIHsKKyAgICAgICAgICAgICAg
ICBmb3IoIGkgPSBOU1EtPnNMVFBfYnVmX2lkeCAtIGxhZyAtIExUUF9PUkRFUiAvIDI7IGkgPCBO
U1EtPnNMVFBfYnVmX2lkeCAtIGRlY2lzaW9uRGVsYXkgLSA3OyBpICs9IDggKSB7CisgICAgICAg
ICAgICAgICAgICAgIHNpbGtfU01VTFdXXzhfbmVvbiggc0xUUF9RMTUgKyBpLCBnYWluX2Fkal9R
MTZfczMyeDIgKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZm9yKCA7IGkg
PCBOU1EtPnNMVFBfYnVmX2lkeCAtIGRlY2lzaW9uRGVsYXk7IGkrKyApIHsKKyAgICAgICAgICAg
ICAgICAgICAgc0xUUF9RMTVbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX2Fkal9RMTYsIHNMVFBf
UTE1WyBpIF0gKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgIC8qIFNjYWxlIHNjYWxhciBzdGF0ZXMgKi8KKyAgICAgICAgICAgIHNpbGtfU01VTFdXXzRf
bmVvbiggcHNEZWxEZWMtPkxGX0FSX1ExNCwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAg
ICAgICBzaWxrX1NNVUxXV180X25lb24oIHBzRGVsRGVjLT5EaWZmX1ExNCwgIGdhaW5fYWRqX1Ex
Nl9zMzJ4MiApOworCisgICAgICAgICAgICAvKiBTY2FsZSBzaG9ydC10ZXJtIHByZWRpY3Rpb24g
YW5kIHNoYXBpbmcgc3RhdGVzICovCisgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTlNRX0xQ
Q19CVUZfTEVOR1RIOyBpKysgKSB7CisgICAgICAgICAgICAgICAgc2lsa19TTVVMV1dfNF9uZW9u
KCBwc0RlbERlYy0+c0xQQ19RMTRbIGkgXSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBNQVhfU0hBUEVfTFBDX09SREVS
OyBpKysgKSB7CisgICAgICAgICAgICAgICAgc2lsa19TTVVMV1dfNF9uZW9uKCBwc0RlbERlYy0+
c0FSMl9RMTRbIGkgXSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAgICAgICB9CisKKyAg
ICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBERUNJU0lPTl9ERUxBWTsgaSsrICkgeworICAgICAg
ICAgICAgICAgIHNpbGtfU01VTFdXXzRfbmVvbiggcHNEZWxEZWMtPlByZWRfUTE1WyAgaSBdLCBn
YWluX2Fkal9RMTZfczMyeDIgKTsKKyAgICAgICAgICAgICAgICBzaWxrX1NNVUxXV180X25lb24o
IHBzRGVsRGVjLT5TaGFwZV9RMTRbIGkgXSwgZ2Fpbl9hZGpfUTE2X3MzMngyICk7CisgICAgICAg
ICAgICB9CisgICAgICAgIH0KKworICAgICAgICAvKiBTYXZlIGludmVyc2UgZ2FpbiAqLworICAg
ICAgICBOU1EtPnByZXZfZ2Fpbl9RMTYgPSBHYWluc19RMTZbIHN1YmZyIF07CisgICAgfQorfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfbmVvbi5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9OU1FfbmVvbi5oCmluZGV4
IDc3Yzk0NmFmODU0NDc4NmUzMTEzNDU3MWE4ZTU1NzRmOWUwOThjOGMuLmIzMWQ5NDQyZDY5OTFj
NDlhZDUyMDJmMjlkOWQwMmI4ZDExMzk1MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vTlNRX25lb24u
aAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvYXJtL05TUV9uZW9uLmgKQEAgLTI4LDMwICsyOCwzMSBAQCBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KICNkZWZpbmUgU0lMS19OU1FfTkVPTl9ICiAKICNpbmNsdWRlICJj
cHVfc3VwcG9ydC5oIgorI2luY2x1ZGUgIlNpZ1Byb2NfRklYLmgiCiAKICN1bmRlZiBzaWxrX3No
b3J0X3ByZWRpY3Rpb25fY3JlYXRlX2FyY2hfY29lZgogLyogRm9yIHZlY3Rvcml6ZWQgY2FsYywg
cmV2ZXJzZSBhX1ExMiBjb2VmcywgY29udmVydCB0byAzMi1iaXQsIGFuZCBzaGlmdCBmb3IgdnFk
bXVsaHFfczMyLiAqLwogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19zaG9ydF9wcmVkaWN0
aW9uX2NyZWF0ZV9hcmNoX2NvZWZfbmVvbihvcHVzX2ludDMyICpvdXQsIGNvbnN0IG9wdXNfaW50
MTYgKmluLCBvcHVzX2ludCBvcmRlcikKIHsKLSAgICBvdXRbMTVdID0gaW5bMF0gPDwgMTU7Ci0g
ICAgb3V0WzE0XSA9IGluWzFdIDw8IDE1OwotICAgIG91dFsxM10gPSBpblsyXSA8PCAxNTsKLSAg
ICBvdXRbMTJdID0gaW5bM10gPDwgMTU7Ci0gICAgb3V0WzExXSA9IGluWzRdIDw8IDE1OwotICAg
IG91dFsxMF0gPSBpbls1XSA8PCAxNTsKLSAgICBvdXRbOV0gID0gaW5bNl0gPDwgMTU7Ci0gICAg
b3V0WzhdICA9IGluWzddIDw8IDE1OwotICAgIG91dFs3XSAgPSBpbls4XSA8PCAxNTsKLSAgICBv
dXRbNl0gID0gaW5bOV0gPDwgMTU7CisgICAgb3V0WzE1XSA9IHNpbGtfTFNISUZUMzIoaW5bMF0s
IDE1KTsKKyAgICBvdXRbMTRdID0gc2lsa19MU0hJRlQzMihpblsxXSwgMTUpOworICAgIG91dFsx
M10gPSBzaWxrX0xTSElGVDMyKGluWzJdLCAxNSk7CisgICAgb3V0WzEyXSA9IHNpbGtfTFNISUZU
MzIoaW5bM10sIDE1KTsKKyAgICBvdXRbMTFdID0gc2lsa19MU0hJRlQzMihpbls0XSwgMTUpOwor
ICAgIG91dFsxMF0gPSBzaWxrX0xTSElGVDMyKGluWzVdLCAxNSk7CisgICAgb3V0WzldICA9IHNp
bGtfTFNISUZUMzIoaW5bNl0sIDE1KTsKKyAgICBvdXRbOF0gID0gc2lsa19MU0hJRlQzMihpbls3
XSwgMTUpOworICAgIG91dFs3XSAgPSBzaWxrX0xTSElGVDMyKGluWzhdLCAxNSk7CisgICAgb3V0
WzZdICA9IHNpbGtfTFNISUZUMzIoaW5bOV0sIDE1KTsKIAogICAgIGlmIChvcmRlciA9PSAxNikK
ICAgICB7Ci0gICAgICAgIG91dFs1XSA9IGluWzEwXSA8PCAxNTsKLSAgICAgICAgb3V0WzRdID0g
aW5bMTFdIDw8IDE1OwotICAgICAgICBvdXRbM10gPSBpblsxMl0gPDwgMTU7Ci0gICAgICAgIG91
dFsyXSA9IGluWzEzXSA8PCAxNTsKLSAgICAgICAgb3V0WzFdID0gaW5bMTRdIDw8IDE1OwotICAg
ICAgICBvdXRbMF0gPSBpblsxNV0gPDwgMTU7CisgICAgICAgIG91dFs1XSA9IHNpbGtfTFNISUZU
MzIoaW5bMTBdLCAxNSk7CisgICAgICAgIG91dFs0XSA9IHNpbGtfTFNISUZUMzIoaW5bMTFdLCAx
NSk7CisgICAgICAgIG91dFszXSA9IHNpbGtfTFNISUZUMzIoaW5bMTJdLCAxNSk7CisgICAgICAg
IG91dFsyXSA9IHNpbGtfTFNISUZUMzIoaW5bMTNdLCAxNSk7CisgICAgICAgIG91dFsxXSA9IHNp
bGtfTFNISUZUMzIoaW5bMTRdLCAxNSk7CisgICAgICAgIG91dFswXSA9IHNpbGtfTFNISUZUMzIo
aW5bMTVdLCAxNSk7CiAgICAgfQogICAgIGVsc2UKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJt
L2FybV9zaWxrX21hcC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9hcm1fc2lsa19tYXAuYwppbmRleCA5YmQ4NmE3YjIx
NTIyNDlmYTg1MGU5ZWVjMGNkNmE2Y2EyNmNlNzE1Li4wYjliZmVjMmNhOTc0NzY4YzU5ZTA5ZjQ0
OGFjYTgxY2ViMWQ4ZjYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL2FybV9zaWxrX21hcC5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9hcm0vYXJtX3NpbGtfbWFwLmMKQEAgLTI4LDEzICsyOCw2MiBAQCBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KICMgaW5jbHVkZSAiY29uZmlnLmgiCiAjZW5kaWYKIAorI2luY2x1ZGUg
Im1haW5fRklYLmgiCiAjaW5jbHVkZSAiTlNRLmgiCisjaW5jbHVkZSAiU2lnUHJvY19GSVguaCIK
IAogI2lmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpCiAKICMgaWYgKGRlZmluZWQoT1BVU19BUk1f
TUFZX0hBVkVfTkVPTl9JTlRSKSAmJiBcCiAgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9O
X0lOVFIpKQogCit2b2lkICgqY29uc3QgU0lMS19CSVFVQURfQUxUX1NUUklERTJfSU1QTFtPUFVT
X0FSQ0hNQVNLICsgMV0pKAorICAgICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKmlu
LCAgICAgICAgICAgICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50MzIg
ICAgICAgICAgICAqQl9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIE1BIGNvZWZmaWNpZW50cyBb
M10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgY29u
c3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpBX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgQVIg
Y29lZmZpY2llbnRzIFsyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAg
ICAvKiBJL08gICBTdGF0ZSB2ZWN0b3IgWzRdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqb3V0
LCAgICAgICAgICAgICAgIC8qIE8gICAgIG91dHB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAgICAgICAgIGxlbiAgICAgICAgICAgICAgICAgLyogSSAgICAgc2lnbmFsIGxlbmd0aCAobXVz
dCBiZSBldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworKSA9IHsKKyAgICAg
IHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyX2MsICAgIC8qIEFSTXY0ICovCisgICAgICBzaWxrX2Jp
cXVhZF9hbHRfc3RyaWRlMl9jLCAgICAvKiBFRFNQICovCisgICAgICBzaWxrX2JpcXVhZF9hbHRf
c3RyaWRlMl9jLCAgICAvKiBNZWRpYSAqLworICAgICAgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTJf
bmVvbiwgLyogTmVvbiAqLworfTsKKworb3B1c19pbnQzMiAoKmNvbnN0IFNJTEtfTFBDX0lOVkVS
U0VfUFJFRF9HQUlOX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSggLyogTyAgIFJldHVybnMgaW52
ZXJzZSBwcmVkaWN0aW9uIGdhaW4gaW4gZW5lcmd5IGRvbWFpbiwgUTMwICAgICAgICAqLworICAg
ICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgKkFfUTEyLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgIFByZWRpY3Rpb24gY29lZmZpY2llbnRzLCBRMTIgW29yZGVyXSAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludCAgICAgICAg
ICAgICAgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgIFByZWRpY3Rp
b24gb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwor
KSA9IHsKKyAgICAgIHNpbGtfTFBDX2ludmVyc2VfcHJlZF9nYWluX2MsICAgIC8qIEFSTXY0ICov
CisgICAgICBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9jLCAgICAvKiBFRFNQICovCisgICAg
ICBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9jLCAgICAvKiBNZWRpYSAqLworICAgICAgc2ls
a19MUENfaW52ZXJzZV9wcmVkX2dhaW5fbmVvbiwgLyogTmVvbiAqLworfTsKKwordm9pZCAgKCpj
b25zdCBTSUxLX05TUV9ERUxfREVDX0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKKyAgICAgICAg
Y29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICov
CisgICAgICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgICAgICBTaWRlSW5mb0luZGljZXMgICAgICAgICAgICAgKnBzSW5kaWNl
cywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFF1YW50aXphdGlvbiBJ
bmRpY2VzICAgICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAg
IHgxNltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1
dCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIG9wdXNfaW50OCAgICAgICAg
ICAgICAgICAgICBwdWxzZXNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IE8gICAgUXVhbnRpemVkIHB1bHNlIHNpZ25hbCAgICAgICAgICAqLworICAgICAgICBjb25zdCBv
cHVzX2ludDE2ICAgICAgICAgICAgUHJlZENvZWZfUTEyWyAyICogTUFYX0xQQ19PUkRFUiBdLCAg
ICAgICAgICAvKiBJICAgIFNob3J0IHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAgKi8KKyAgICAg
ICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIExUUENvZWZfUTE0WyBMVFBfT1JERVIgKiBN
QVhfTkJfU1VCRlIgXSwgICAgLyogSSAgICBMb25nIHRlcm0gcHJlZGljdGlvbiBjb2VmcyAgICAg
ICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBBUl9RMTNbIE1BWF9OQl9T
VUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgLyogSSBOb2lzZSBzaGFwaW5nIGNvZWZzICAg
ICAgICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgSGFybVNo
YXBlR2Fpbl9RMTRbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAvKiBJICAgIExvbmcgdGVybSBz
aGFwaW5nIGNvZWZzICAgICAgICAgKi8KKyAgICAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICAgIFRpbHRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAgLyogSSAgICBT
cGVjdHJhbCB0aWx0ICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50
MzIgICAgICAgICAgICBMRl9zaHBfUTE0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAg
IC8qIEkgICAgTG93IGZyZXF1ZW5jeSBzaGFwaW5nIGNvZWZzICAgICAqLworICAgICAgICBjb25z
dCBvcHVzX2ludDMyICAgICAgICAgICAgR2FpbnNfUTE2WyBNQVhfTkJfU1VCRlIgXSwgICAgICAg
ICAgICAgICAgICAvKiBJICAgIFF1YW50aXphdGlvbiBzdGVwIHNpemVzICAgICAgICAgKi8KKyAg
ICAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHBpdGNoTFsgTUFYX05CX1NVQkZSIF0s
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQaXRjaCBsYWdzICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBMYW1iZGFfUTEwLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUmF0ZS9kaXN0b3J0aW9uIHRy
YWRlb2ZmICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgTFRQ
X3NjYWxlX1ExNCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExUUCBzdGF0
ZSBzY2FsaW5nICAgICAgICAgICAgICAgKi8KKykgPSB7CisgICAgICBzaWxrX05TUV9kZWxfZGVj
X2MsICAgIC8qIEFSTXY0ICovCisgICAgICBzaWxrX05TUV9kZWxfZGVjX2MsICAgIC8qIEVEU1Ag
Ki8KKyAgICAgIHNpbGtfTlNRX2RlbF9kZWNfYywgICAgLyogTWVkaWEgKi8KKyAgICAgIHNpbGtf
TlNRX2RlbF9kZWNfbmVvbiwgLyogTmVvbiAqLworfTsKKwogLypUaGVyZSBpcyBubyB0YWJsZSBm
b3Igc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfc2hvcnRfcHJlZGljdGlvbiBiZWNhdXNlIHRo
ZQogICAgTkVPTiB2ZXJzaW9uIHRha2VzIGRpZmZlcmVudCBwYXJhbWV0ZXJzIHRoYW4gdGhlIEMg
dmVyc2lvbi4KICAgSW5zdGVhZCBSVENEIGlzIGRvbmUgdmlhIGlmIHN0YXRlbWVudHMgYXQgdGhl
IGNhbGwgc2l0ZXMuCkBAIC01Miw0ICsxMDEsMjMgQEAgb3B1c19pbnQzMgogCiAjIGVuZGlmCiAK
KyMgaWYgZGVmaW5lZChGSVhFRF9QT0lOVCkgJiYgXAorIGRlZmluZWQoT1BVU19BUk1fTUFZX0hB
VkVfTkVPTl9JTlRSKSAmJiAhZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikKKwor
dm9pZCAoKmNvbnN0IFNJTEtfV0FSUEVEX0FVVE9DT1JSRUxBVElPTl9GSVhfSU1QTFtPUFVTX0FS
Q0hNQVNLICsgMV0pKAorICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgKmNvcnIs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmVzdWx0IFtvcmRlciAr
IDFdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgICAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAqc2NhbGUsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBTY2FsaW5nIG9mIHRoZSBjb3JyZWxh
dGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICppbnB1dCwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IGRhdGEgdG8gY29ycmVsYXRlICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNv
bnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgd2FycGluZ19RMTYsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgV2FycGluZyBjb2VmZmljaWVudCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgICAgICBsZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBMZW5ndGggb2YgaW5wdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIENvcnJlbGF0aW9uIG9yZGVyIChldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworKSA9IHsKKyAgICAgIHNpbGtfd2FycGVkX2F1
dG9jb3JyZWxhdGlvbl9GSVhfYywgICAgLyogQVJNdjQgKi8KKyAgICAgIHNpbGtfd2FycGVkX2F1
dG9jb3JyZWxhdGlvbl9GSVhfYywgICAgLyogRURTUCAqLworICAgICAgc2lsa193YXJwZWRfYXV0
b2NvcnJlbGF0aW9uX0ZJWF9jLCAgICAvKiBNZWRpYSAqLworICAgICAgc2lsa193YXJwZWRfYXV0
b2NvcnJlbGF0aW9uX0ZJWF9uZW9uLCAvKiBOZW9uICovCit9OworCisjIGVuZGlmCisKICNlbmRp
ZiAvKiBPUFVTX0hBVkVfUlRDRCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9iaXF1YWRfYWx0X2Fy
bS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2FybS9iaXF1YWRfYWx0X2FybS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY2ZWE5ZjQzZGQwYjM3
YjJkNjMzMDg3ZjFhMjVlOTk4NmZjZTJkNmUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL2Jp
cXVhZF9hbHRfYXJtLmgKQEAgLTAsMCArMSw2OCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitDb3B5cmln
aHQgKGMpIDIwMTcgR29vZ2xlIEluYy4KK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0Ogor
LSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodCBub3RpY2UsCit0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKy0gTmVp
dGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5v
ciB0aGUKK25hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlCitwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KK3Blcm1pc3Npb24uCitUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJ
UyIKK0FORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKK0lNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUK
K0xJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKK0NPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
CitDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQorQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpZm5kZWYgU0lMS19CSVFVQURfQUxUX0FSTV9I
CisjIGRlZmluZSBTSUxLX0JJUVVBRF9BTFRfQVJNX0gKKworIyBpbmNsdWRlICJjZWx0L2FybS9h
cm1jcHUuaCIKKworIyBpZiBkZWZpbmVkKE9QVVNfQVJNX01BWV9IQVZFX05FT05fSU5UUikKK3Zv
aWQgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTJfbmVvbigKKyAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgKmluLCAgICAgICAgICAgICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQzMiAgICAgICAgICAgICpCX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgTUEgY29lZmZp
Y2llbnRzIFszXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAgICAgICAgICAgIC8qIEkgICAg
IEFSIGNvZWZmaWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAg
ICAvKiBJL08gICBTdGF0ZSB2ZWN0b3IgWzRdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICpvdXQsICAg
ICAgICAgICAgICAgLyogTyAgICAgb3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAg
ICBsZW4gICAgICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3QgYmUgZXZl
bikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyk7CisKKyMgIGlmICFkZWZpbmVk
KE9QVVNfSEFWRV9SVENEKSAmJiBkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTikKKyMgICBk
ZWZpbmUgT1ZFUlJJREVfc2lsa19iaXF1YWRfYWx0X3N0cmlkZTIgICAgICAgICAgICAgICAgICAg
KDEpCisjICAgZGVmaW5lIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyKGluLCBCX1EyOCwgQV9RMjgs
IFMsIG91dCwgbGVuLCBhcmNoKSAoKHZvaWQpKGFyY2gpLCBQUkVTVU1FX05FT04oc2lsa19iaXF1
YWRfYWx0X3N0cmlkZTIpKGluLCBCX1EyOCwgQV9RMjgsIFMsIG91dCwgbGVuKSkKKyMgIGVuZGlm
CisjIGVuZGlmCisKKyMgaWYgIWRlZmluZWQoT1ZFUlJJREVfc2lsa19iaXF1YWRfYWx0X3N0cmlk
ZTIpCisvKklzIHJ1bi10aW1lIENQVSBkZXRlY3Rpb24gZW5hYmxlZCBvbiB0aGlzIHBsYXRmb3Jt
PyovCisjICBpZiBkZWZpbmVkKE9QVVNfSEFWRV9SVENEKSAmJiAoZGVmaW5lZChPUFVTX0FSTV9N
QVlfSEFWRV9ORU9OX0lOVFIpICYmICFkZWZpbmVkKE9QVVNfQVJNX1BSRVNVTUVfTkVPTl9JTlRS
KSkKK2V4dGVybiB2b2lkICgqY29uc3QgU0lMS19CSVFVQURfQUxUX1NUUklERTJfSU1QTFtPUFVT
X0FSQ0hNQVNLKzFdKSgKKyAgICAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICppbiwg
ICAgICAgICAgICAgICAgLyogSSAgICAgaW5wdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBjb25zdCBvcHVzX2ludDMyICAg
ICAgICAgICAgKkJfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBNQSBjb2VmZmljaWVudHMgWzNd
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIGNvbnN0
IG9wdXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIEFSIGNv
ZWZmaWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpTLCAgICAgICAgICAgICAgICAg
LyogSS9PICAgU3RhdGUgdmVjdG9yIFs0XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgICAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKm91dCwg
ICAgICAgICAgICAgICAvKiBPICAgICBvdXRwdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIGNvbnN0IG9wdXNfaW50MzIgICAg
ICAgICAgICBsZW4gICAgICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3Qg
YmUgZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICApOworIyAgIGRl
ZmluZSBPVkVSUklERV9zaWxrX2JpcXVhZF9hbHRfc3RyaWRlMiAgICAgICAgICAgICAgICAgICgx
KQorIyAgIGRlZmluZSBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMihpbiwgQl9RMjgsIEFfUTI4LCBT
LCBvdXQsIGxlbiwgYXJjaCkgKCgqU0lMS19CSVFVQURfQUxUX1NUUklERTJfSU1QTFsoYXJjaCkm
T1BVU19BUkNITUFTS10pKGluLCBCX1EyOCwgQV9RMjgsIFMsIG91dCwgbGVuKSkKKyMgIGVsaWYg
ZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikKKyMgICBkZWZpbmUgT1ZFUlJJREVf
c2lsa19iaXF1YWRfYWx0X3N0cmlkZTIgICAgICAgICAgICAgICAgICAoMSkKKyMgICBkZWZpbmUg
c2lsa19iaXF1YWRfYWx0X3N0cmlkZTIoaW4sIEJfUTI4LCBBX1EyOCwgUywgb3V0LCBsZW4sIGFy
Y2gpICgodm9pZCkoYXJjaCksIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyX25lb24oaW4sIEJfUTI4
LCBBX1EyOCwgUywgb3V0LCBsZW4pKQorIyAgZW5kaWYKKyMgZW5kaWYKKworI2VuZGlmIC8qIGVu
ZCBTSUxLX0JJUVVBRF9BTFRfQVJNX0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vYmlxdWFkX2Fs
dF9uZW9uX2ludHIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9hcm0vYmlxdWFkX2FsdF9uZW9uX2ludHIuYwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li45NzE1NzMzMTg1OGNhOGJmNjlhYzUyOTNjYjY4ZTIzY2Q2ZDRmMzNiCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2FybS9iaXF1YWRfYWx0X25lb25faW50ci5jCkBAIC0wLDAgKzEsMTU2IEBACisv
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioKK0NvcHlyaWdodCAoYykgMjAxNyBHb29nbGUgSW5jLgorUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2lldHks
IElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJpYnV0
b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2ZWQg
ZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVybWlz
c2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9X
TkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2lmZGVm
IEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVkZSA8
YXJtX25lb24uaD4KKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorIyBpbmNsdWRlIDxzdHJpbmcuaD4K
KyMgaW5jbHVkZSAic3RhY2tfYWxsb2MuaCIKKyNlbmRpZgorI2luY2x1ZGUgIlNpZ1Byb2NfRklY
LmgiCisKK3N0YXRpYyBpbmxpbmUgdm9pZCBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9rZXJuZWwo
IGNvbnN0IGludDMyeDRfdCBBX0xfczMyeDQsIGNvbnN0IGludDMyeDRfdCBBX1VfczMyeDQsIGNv
bnN0IGludDMyeDRfdCBCX1EyOF9zMzJ4NCwgY29uc3QgaW50MzJ4Ml90IHRfczMyeDIsIGNvbnN0
IGludDMyeDRfdCBpbl9zMzJ4NCwgaW50MzJ4NF90ICpTX3MzMng0LCBpbnQzMngyX3QgKm91dDMy
X1ExNF9zMzJ4MiApCit7CisgICAgaW50MzJ4NF90IHRfczMyeDQsIG91dDMyX1ExNF9zMzJ4NDsK
KworICAgICpvdXQzMl9RMTRfczMyeDIgPSB2YWRkX3MzMiggdmdldF9sb3dfczMyKCAqU19zMzJ4
NCApLCB0X3MzMngyICk7ICAgICAgICAgICAgICAvKiBzaWxrX1NNTEFXQiggU3swLDF9LCBCX1Ey
OFsgMCBdLCBpbnswLDF9ICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgKlNfczMyeDQgICAgICAgICA9IHZjb21iaW5lX3MzMiggdmdldF9oaWdoX3MzMiggKlNf
czMyeDQgKSwgdmR1cF9uX3MzMiggMCApICk7IC8qIFN7MCwxfSA9IFN7MiwzfTsgU3syLDN9ID0g
MDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICAqb3V0MzJfUTE0X3MzMngyID0gdnNobF9uX3MzMiggKm91dDMyX1ExNF9zMzJ4MiwgMiAp
OyAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb3V0MzJfUTE0X3swLDF9ID0gc2lsa19MU0hJ
RlQoIHNpbGtfU01MQVdCKCBTezAsMX0sIEJfUTI4WyAwIF0sIGluezAsMX0gKSwgMiApOyAqLwor
ICAgIG91dDMyX1ExNF9zMzJ4NCAgPSB2Y29tYmluZV9zMzIoICpvdXQzMl9RMTRfczMyeDIsICpv
dXQzMl9RMTRfczMyeDIgKTsgICAgICAgICAvKiBvdXQzMl9RMTRfezAsMSwwLDF9ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgdF9zMzJ4NCAgICAgICAgICA9IHZxZG11bGhxX3MzMiggb3V0MzJfUTE0X3MzMng0LCBBX0xf
czMyeDQgKTsgICAgICAgICAgICAgICAgIC8qIHNpbGtfU01VTFdCKCBvdXQzMl9RMTRfezAsMSww
LDF9LCBBezAsMCwxLDF9X0xfUTI4ICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICAqU19zMzJ4NCAgICAgICAgID0gdnJzcmFxX25fczMyKCAqU19zMzJ4NCwgdF9zMzJ4NCwgMTQg
KTsgICAgICAgICAgICAgICAgICAgICAgLyogU3swLDF9ID0gU3syLDN9ICsgc2lsa19SU0hJRlRf
Uk9VTkQoKTsgIFN7MiwzfSA9IHNpbGtfUlNISUZUX1JPVU5EKCk7ICAgICAgICAgICAqLworICAg
IHRfczMyeDQgICAgICAgICAgPSB2cWRtdWxocV9zMzIoIG91dDMyX1ExNF9zMzJ4NCwgQV9VX3Mz
Mng0ICk7ICAgICAgICAgICAgICAgICAvKiBzaWxrX1NNVUxXQiggb3V0MzJfUTE0X3swLDEsMCwx
fSwgQXswLDAsMSwxfV9VX1EyOCApICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
KlNfczMyeDQgICAgICAgICA9IHZhZGRxX3MzMiggKlNfczMyeDQsIHRfczMyeDQgKTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIFMwID0gc2lsa19TTUxBV0IoIFN7MCwxLDIsM30sIG91
dDMyX1ExNF97MCwxLDAsMX0sIEF7MCwwLDEsMX1fVV9RMjggKTsgICAgICAgICAgKi8KKyAgICB0
X3MzMng0ICAgICAgICAgID0gdnFkbXVsaHFfczMyKCBpbl9zMzJ4NCwgQl9RMjhfczMyeDQgKTsg
ICAgICAgICAgICAgICAgICAgICAgLyogc2lsa19TTVVMV0IoIEJfUTI4WyB7MSwxLDIsMn0gXSwg
aW57MCwxLDAsMX0gKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICpT
X3MzMng0ICAgICAgICAgPSB2YWRkcV9zMzIoICpTX3MzMng0LCB0X3MzMng0ICk7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBTMCA9IHNpbGtfU01MQVdCKCBTMCwgQl9RMjhbIHsxLDEs
MiwyfSBdLCBpbnswLDEsMCwxfSApOyAgICAgICAgICAgICAgICAgICAgICAgICovCit9CisKK3Zv
aWQgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTJfbmVvbigKKyAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgKmluLCAgICAgICAgICAgICAgICAvKiBJICAgICBpbnB1dCBzaWduYWwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1
c19pbnQzMiAgICAgICAgICAgICpCX1EyOCwgICAgICAgICAgICAgLyogSSAgICAgTUEgY29lZmZp
Y2llbnRzIFszXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAqQV9RMjgsICAgICAgICAgICAgIC8qIEkgICAg
IEFSIGNvZWZmaWNpZW50cyBbMl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgKlMsICAgICAgICAgICAgICAg
ICAvKiBJL08gICBTdGF0ZSB2ZWN0b3IgWzRdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgICpvdXQsICAg
ICAgICAgICAgICAgLyogTyAgICAgb3V0cHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAg
ICBsZW4gICAgICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3QgYmUgZXZl
bikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyAgICAvKiBESVJFQ1Qg
Rk9STSBJSSBUUkFOU1BPU0VEICh1c2VzIDIgZWxlbWVudCBzdGF0ZSB2ZWN0b3IpICovCisgICAg
b3B1c19pbnQgICAgICAgIGsgICAgICAgICAgICA9IDA7CisgICAgY29uc3QgaW50MzJ4Ml90IG9m
ZnNldF9zMzJ4MiA9IHZkdXBfbl9zMzIoICgxPDwxNCkgLSAxICk7CisgICAgY29uc3QgaW50MzJ4
NF90IG9mZnNldF9zMzJ4NCA9IHZjb21iaW5lX3MzMiggb2Zmc2V0X3MzMngyLCBvZmZzZXRfczMy
eDIgKTsKKyAgICBpbnQxNng0X3QgICAgICAgaW5fczE2eDQgID0gdmR1cF9uX3MxNiggMCApOwor
ICAgIGludDE2eDRfdCAgICAgICBvdXRfczE2eDQ7CisgICAgaW50MzJ4Ml90ICAgICAgIEFfUTI4
X3MzMngyLCBBX0xfczMyeDIsIEFfVV9zMzJ4MiwgQl9RMjhfczMyeDIsIHRfczMyeDI7CisgICAg
aW50MzJ4NF90ICAgICAgIEFfTF9zMzJ4NCwgQV9VX3MzMng0LCBCX1EyOF9zMzJ4NCwgU19zMzJ4
NCwgb3V0MzJfUTE0X3MzMng0OworICAgIGludDMyeDJ4Ml90ICAgICB0MF9zMzJ4MngyLCB0MV9z
MzJ4MngyLCB0Ml9zMzJ4MngyLCBTX3MzMngyeDI7CisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQor
ICAgIG9wdXNfaW50MzIgU19jWyA0IF07CisgICAgVkFSREVDTCggb3B1c19pbnQxNiwgb3V0X2Mg
KTsKKyAgICBTQVZFX1NUQUNLOworICAgIEFMTE9DKCBvdXRfYywgMiAqIGxlbiwgb3B1c19pbnQx
NiApOworCisgICAgc2lsa19tZW1jcHkoICZTX2MsIFMsIHNpemVvZiggU19jICkgKTsKKyAgICBz
aWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9jKCBpbiwgQl9RMjgsIEFfUTI4LCBTX2MsIG91dF9jLCBs
ZW4gKTsKKyNlbmRpZgorCisgICAgLyogTmVnYXRlIEFfUTI4IHZhbHVlcyBhbmQgc3BsaXQgaW4g
dHdvIHBhcnRzICovCisgICAgQV9RMjhfczMyeDIgPSB2bGQxX3MzMiggQV9RMjggKTsKKyAgICBB
X1EyOF9zMzJ4MiA9IHZuZWdfczMyKCBBX1EyOF9zMzJ4MiApOworICAgIEFfTF9zMzJ4MiAgID0g
dnNobF9uX3MzMiggQV9RMjhfczMyeDIsIDE4ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAoIC1BX1EyOFtdICYgMHgwMDAwM0ZGRiAp
IDw8IDE4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIEFfTF9zMzJ4MiAgID0gdnJlaW50ZXJwcmV0X3MzMl91MzIoIHZzaHJfbl91MzIo
IHZyZWludGVycHJldF91MzJfczMyKCBBX0xfczMyeDIgKSwgMyApICk7ICAgICAgICAgICAvKiAo
IC1BX1EyOFtdICYgMHgwMDAwM0ZGRiApIDw8IDE1ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIEFfVV9zMzJ4MiAgID0gdnNocl9uX3Mz
MiggQV9RMjhfczMyeDIsIDE0ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBzaWxrX1JTSElGVCggLUFfUTI4W10sIDE0ICkgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IEFfVV9zMzJ4MiAgID0gdnNobF9uX3MzMiggQV9VX3MzMngyLCAxNiApOyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzaWxrX1JTSElG
VCggLUFfUTI4W10sIDE0ICkgPDwgMTYgKENsaXAgdHdvIGxlYWRpbmcgYml0cyB0byBjb25mb3Jt
IHRvIEMgZnVuY3Rpb24uKSAqLworICAgIEFfVV9zMzJ4MiAgID0gdnNocl9uX3MzMiggQV9VX3Mz
MngyLCAxICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBzaWxrX1JTSElGVCggLUFfUTI4W10sIDE0ICkgPDwgMTUgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworCisgICAgQl9RMjhf
czMyeDIgID0gdmxkMV9zMzIoIEJfUTI4ICk7CisgICAgdF9zMzJ4MiAgICAgID0gdmxkMV9zMzIo
IEJfUTI4ICsgMSApOworICAgIHQwX3MzMngyeDIgICA9IHZ6aXBfczMyKCBBX0xfczMyeDIsIEFf
TF9zMzJ4MiApOworICAgIHQxX3MzMngyeDIgICA9IHZ6aXBfczMyKCBBX1VfczMyeDIsIEFfVV9z
MzJ4MiApOworICAgIHQyX3MzMngyeDIgICA9IHZ6aXBfczMyKCB0X3MzMngyLCB0X3MzMngyICk7
CisgICAgQV9MX3MzMng0ICAgID0gdmNvbWJpbmVfczMyKCB0MF9zMzJ4MngyLnZhbFsgMCBdLCB0
MF9zMzJ4MngyLnZhbFsgMSBdICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEF7MCww
LDEsMX1fTF9RMjggICAgICAgICAgKi8KKyAgICBBX1VfczMyeDQgICAgPSB2Y29tYmluZV9zMzIo
IHQxX3MzMngyeDIudmFsWyAwIF0sIHQxX3MzMngyeDIudmFsWyAxIF0gKTsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogQXswLDAsMSwxfV9VX1EyOCAgICAgICAgICAqLworICAgIEJfUTI4
X3MzMng0ICA9IHZjb21iaW5lX3MzMiggdDJfczMyeDJ4Mi52YWxbIDAgXSwgdDJfczMyeDJ4Mi52
YWxbIDEgXSApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBCX1EyOFsgezEsMSwyLDJ9
IF0gICAgICAgICovCisgICAgU19zMzJ4NCAgICAgID0gdmxkMXFfczMyKCBTICk7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIFMwID0gU1sgMCBdOyBTMyA9IFNbIDMgXTsgKi8KKyAgICBTX3MzMngyeDIgICAgPSB2
dHJuX3MzMiggdmdldF9sb3dfczMyKCBTX3MzMng0ICksIHZnZXRfaGlnaF9zMzIoIFNfczMyeDQg
KSApOyAgICAgICAgICAgICAgICAgICAgICAgLyogUzIgPSBTWyAxIF07IFMxID0gU1sgMiBdOyAq
LworICAgIFNfczMyeDQgICAgICA9IHZjb21iaW5lX3MzMiggU19zMzJ4MngyLnZhbFsgMCBdLCBT
X3MzMngyeDIudmFsWyAxIF0gKTsKKworICAgIGZvciggOyBrIDwgbGVuIC0gMTsgayArPSAyICkg
eworICAgICAgICBpbnQzMng0X3QgaW5fczMyeDRbIDIgXSwgdF9zMzJ4NDsKKyAgICAgICAgaW50
MzJ4Ml90IG91dDMyX1ExNF9zMzJ4MlsgMiBdOworCisgICAgICAgIC8qIFNbIDIgKiBpICsgMCBd
LCBTWyAyICogaSArIDEgXSwgU1sgMiAqIGkgKyAyIF0sIFNbIDIgKiBpICsgMyBdOiBRMTIgKi8K
KyAgICAgICAgaW5fczE2eDQgICAgICA9IHZsZDFfczE2KCAmaW5bIDIgKiBrIF0gKTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogaW57MCwx
LDIsM30gPSBpblsgMiAqIGsgKyB7MCwxLDIsM30gXTsgKi8KKyAgICAgICAgaW5fczMyeDRbIDAg
XSA9IHZzaGxsX25fczE2KCBpbl9zMTZ4NCwgMTUgKTsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogaW57MCwxLDIsM30gPDwgMTUgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICAgICAgdF9zMzJ4NCAgICAgICA9IHZxZG11bGhxX2xhbmVfczMy
KCBpbl9zMzJ4NFsgMCBdLCBCX1EyOF9zMzJ4MiwgMCApOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogc2lsa19TTVVMV0IoIEJfUTI4WyAwIF0sIGluezAsMSwyLDN9ICkgKi8KKyAgICAg
ICAgaW5fczMyeDRbIDEgXSA9IHZjb21iaW5lX3MzMiggdmdldF9oaWdoX3MzMiggaW5fczMyeDRb
IDAgXSApLCB2Z2V0X2hpZ2hfczMyKCBpbl9zMzJ4NFsgMCBdICkgKTsgLyogaW57MiwzLDIsM30g
PDwgMTUgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgaW5fczMyeDRbIDAgXSA9IHZj
b21iaW5lX3MzMiggdmdldF9sb3dfczMyICggaW5fczMyeDRbIDAgXSApLCB2Z2V0X2xvd19zMzIg
KCBpbl9zMzJ4NFsgMCBdICkgKTsgLyogaW57MCwxLDAsMX0gPDwgMTUgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICAgICAgc2lsa19iaXF1YWRfYWx0X3N0cmlkZTJfa2VybmVsKCBBX0xfczMy
eDQsIEFfVV9zMzJ4NCwgQl9RMjhfczMyeDQsIHZnZXRfbG93X3MzMiAoIHRfczMyeDQgKSwgaW5f
czMyeDRbIDAgXSwgJlNfczMyeDQsICZvdXQzMl9RMTRfczMyeDJbIDAgXSApOworICAgICAgICBz
aWxrX2JpcXVhZF9hbHRfc3RyaWRlMl9rZXJuZWwoIEFfTF9zMzJ4NCwgQV9VX3MzMng0LCBCX1Ey
OF9zMzJ4NCwgdmdldF9oaWdoX3MzMiggdF9zMzJ4NCApLCBpbl9zMzJ4NFsgMSBdLCAmU19zMzJ4
NCwgJm91dDMyX1ExNF9zMzJ4MlsgMSBdICk7CisKKyAgICAgICAgLyogU2NhbGUgYmFjayB0byBR
MCBhbmQgc2F0dXJhdGUgKi8KKyAgICAgICAgb3V0MzJfUTE0X3MzMng0ID0gdmNvbWJpbmVfczMy
KCBvdXQzMl9RMTRfczMyeDJbIDAgXSwgb3V0MzJfUTE0X3MzMngyWyAxIF0gKTsgICAgICAgICAg
ICAgICAgICAgLyogb3V0MzJfUTE0X3swLDEsMiwzfSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgICAgICBvdXQzMl9RMTRfczMyeDQgPSB2YWRkcV9zMzIoIG91dDMyX1ExNF9z
MzJ4NCwgb2Zmc2V0X3MzMng0ICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBvdXQzMl9RMTRfezAsMSwyLDN9ICsgKDE8PDE0KSAtIDEgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgICAgIG91dF9zMTZ4NCAgICAgICA9IHZxc2hybl9uX3MzMiggb3V0MzJfUTE0X3MzMng0LCAx
NCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIChvcHVzX2lu
dDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUKCBvdXQzMl9RMTRfezAsMSwyLDN9ICsgKDE8PDE0
KSAtIDEsIDE0ICkgKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgdnN0
MV9zMTYoICZvdXRbIDIgKiBrIF0sIG91dF9zMTZ4NCApOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb3V0WyAyICogayArIHswLDEs
MiwzfSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMyX1ExNF97
MCwxLDIsM30gKyAoMTw8MTQpIC0gMSwgMTQgKSApOyAqLworICAgIH0KKworICAgIC8qIFByb2Nl
c3MgbGVmdG92ZXIuICovCisgICAgaWYoIGsgPCBsZW4gKSB7CisgICAgICAgIGludDMyeDRfdCBp
bl9zMzJ4NDsKKyAgICAgICAgaW50MzJ4Ml90IG91dDMyX1ExNF9zMzJ4MjsKKworICAgICAgICAv
KiBTWyAyICogaSArIDAgXSwgU1sgMiAqIGkgKyAxIF06IFExMiAqLworICAgICAgICBpbl9zMTZ4
NCAgICAgPSB2bGQxX2xhbmVfczE2KCAmaW5bIDIgKiBrICsgMCBdLCBpbl9zMTZ4NCwgMCApOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBpbnswLDF9ID0gaW5bIDIgKiBrICsg
ezAsMX0gXTsgICAgICovCisgICAgICAgIGluX3MxNng0ICAgICA9IHZsZDFfbGFuZV9zMTYoICZp
blsgMiAqIGsgKyAxIF0sIGluX3MxNng0LCAxICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIGluezAsMX0gPSBpblsgMiAqIGsgKyB7MCwxfSBdOyAgICAgKi8KKyAgICAgICAg
aW5fczMyeDQgICAgID0gdnNobGxfbl9zMTYoIGluX3MxNng0LCAxNSApOyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogaW57MCwxfSA8PCAxNSAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICB0X3MzMngyICAgICAgPSB2cWRtdWxoX2xh
bmVfczMyKCB2Z2V0X2xvd19zMzIoIGluX3MzMng0ICksIEJfUTI4X3MzMngyLCAwICk7ICAgICAg
ICAgICAgICAgICAgICAvKiBzaWxrX1NNVUxXQiggQl9RMjhbIDAgXSwgaW57MCwxfSApICovCisg
ICAgICAgIGluX3MzMng0ICAgICA9IHZjb21iaW5lX3MzMiggdmdldF9sb3dfczMyKCBpbl9zMzJ4
NCApLCB2Z2V0X2xvd19zMzIoIGluX3MzMng0ICkgKTsgICAgICAgICAgICAgIC8qIGluezAsMSww
LDF9IDw8IDE1ICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgc2lsa19iaXF1YWRfYWx0X3N0
cmlkZTJfa2VybmVsKCBBX0xfczMyeDQsIEFfVV9zMzJ4NCwgQl9RMjhfczMyeDQsIHRfczMyeDIs
IGluX3MzMng0LCAmU19zMzJ4NCwgJm91dDMyX1ExNF9zMzJ4MiApOworCisgICAgICAgIC8qIFNj
YWxlIGJhY2sgdG8gUTAgYW5kIHNhdHVyYXRlICovCisgICAgICAgIG91dDMyX1ExNF9zMzJ4MiA9
IHZhZGRfczMyKCBvdXQzMl9RMTRfczMyeDIsIG9mZnNldF9zMzJ4MiApOyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIG91dDMyX1ExNF97MCwxfSArICgxPDwxNCkgLSAxICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgICAgICBvdXQzMl9RMTRfczMyeDQgPSB2Y29tYmluZV9zMzIoIG91dDMyX1ExNF9z
MzJ4Miwgb3V0MzJfUTE0X3MzMngyICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBv
dXQzMl9RMTRfezAsMSwwLDF9ICsgKDE8PDE0KSAtIDEgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgb3V0X3MxNng0ICAg
ICAgID0gdnFzaHJuX25fczMyKCBvdXQzMl9RMTRfczMyeDQsIDE0ICk7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2ls
a19SU0hJRlQoIG91dDMyX1ExNF97MCwxLDAsMX0gKyAoMTw8MTQpIC0gMSwgMTQgKSApICAgICAg
ICAgICAgICovCisgICAgICAgIHZzdDFfbGFuZV9zMTYoICZvdXRbIDIgKiBrICsgMCBdLCBvdXRf
czE2eDQsIDAgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIG91dFsgMiAqIGsgKyAwIF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElG
VCggb3V0MzJfUTE0XzAgKyAoMTw8MTQpIC0gMSwgMTQgKSApOyAqLworICAgICAgICB2c3QxX2xh
bmVfczE2KCAmb3V0WyAyICogayArIDEgXSwgb3V0X3MxNng0LCAxICk7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvdXRbIDIgKiBrICsgMSBdID0gKG9w
dXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMyX1ExNF8xICsgKDE8PDE0KSAt
IDEsIDE0ICkgKTsgKi8KKyAgICB9CisKKyAgICB2c3QxcV9sYW5lX3MzMiggJlNbIDAgXSwgU19z
MzJ4NCwgMCApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogU1sgMCBdID0gUzA7ICovCisgICAgdnN0MXFfbGFuZV9zMzIoICZT
WyAxIF0sIFNfczMyeDQsIDIgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNbIDEgXSA9IFMyOyAqLworICAgIHZzdDFxX2xh
bmVfczMyKCAmU1sgMiBdLCBTX3MzMng0LCAxICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTWyAyIF0gPSBTMTsgKi8KKyAg
ICB2c3QxcV9sYW5lX3MzMiggJlNbIDMgXSwgU19zMzJ4NCwgMyApOyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogU1sgMyBdID0g
UzM7ICovCisKKyNpZmRlZiBPUFVTX0NIRUNLX0FTTQorICAgIHNpbGtfYXNzZXJ0KCAhbWVtY21w
KCBTX2MsIFMsIHNpemVvZiggU19jICkgKSApOworICAgIHNpbGtfYXNzZXJ0KCAhbWVtY21wKCBv
dXRfYywgb3V0LCAyICogbGVuICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKSApOworICAgIFJFU1RP
UkVfU1RBQ0s7CisjZW5kaWYKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vbWFjcm9zX2FybXY0Lmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvYXJtL21hY3Jvc19hcm12NC5oCmluZGV4IDNmMzBlOTcyODhmZDc3YjNhMjI5OGRmNjY4
YTQxOTc3NzE2NGM2MjIuLjg3N2ViMThkZDU4MTI5Y2MxNTkxNTJkZDRiMDlkNjc1OWE4NGEyNzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9hcm0vbWFjcm9zX2FybXY0LmgKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2FybS9tYWNyb3Nf
YXJtdjQuaApAQCAtMjgsNiArMjgsMTEgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAj
aWZuZGVmIFNJTEtfTUFDUk9TX0FSTXY0X0gKICNkZWZpbmUgU0lMS19NQUNST1NfQVJNdjRfSAog
CisvKiBUaGlzIG1hY3JvIG9ubHkgYXZvaWRzIHRoZSB1bmRlZmluZWQgYmVoYXZpb3VyIGZyb20g
YSBsZWZ0IHNoaWZ0IG9mCisgICBhIG5lZ2F0aXZlIHZhbHVlLiBJdCBzaG91bGQgb25seSBiZSB1
c2VkIGluIG1hY3JvcyB0aGF0IGNhbid0IGluY2x1ZGUKKyAgIFNpZ1Byb2NfRklYLmguIEluIG90
aGVyIGNhc2VzLCB1c2Ugc2lsa19MU0hJRlQzMigpLiAqLworI2RlZmluZSBTQUZFX1NITChhLGIp
ICgob3B1c19pbnQzMikoKG9wdXNfdWludDMyKShhKSA8PCAoYikpKQorCiAvKiAoYTMyICogKG9w
dXNfaW50MzIpKChvcHVzX2ludDE2KShiMzIpKSkgPj4gMTYgb3V0cHV0IGhhdmUgdG8gYmUgMzJi
aXQgaW50ICovCiAjdW5kZWYgc2lsa19TTVVMV0IKIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2lu
dDMyIHNpbGtfU01VTFdCX2FybXY0KG9wdXNfaW50MzIgYSwgb3B1c19pbnQxNiBiKQpAQCAtMzgs
NyArNDMsNyBAQCBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQzMiBzaWxrX1NNVUxXQl9hcm12
NChvcHVzX2ludDMyIGEsIG9wdXNfaW50MTYgYikKICAgICAgICIjc2lsa19TTVVMV0Jcblx0Igog
ICAgICAgInNtdWxsICUwLCAlMSwgJTIsICUzXG5cdCIKICAgICAgIDogIj0mciIocmRfbG8pLCAi
PSZyIihyZF9oaSkKLSAgICAgIDogIiVyIihhKSwgInIiKGI8PDE2KQorICAgICAgOiAiJXIiKGEp
LCAiciIoU0FGRV9TSEwoYiwxNikpCiAgICk7CiAgIHJldHVybiByZF9oaTsKIH0KQEAgLTgwLDcg
Kzg1LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIgc2lsa19TTVVMV1dfYXJtdjQo
b3B1c19pbnQzMiBhLCBvcHVzX2ludDMyIGIpCiAgICAgOiAiPSZyIihyZF9sbyksICI9JnIiKHJk
X2hpKQogICAgIDogIiVyIihhKSwgInIiKGIpCiAgICk7Ci0gIHJldHVybiAocmRfaGk8PDE2KSso
cmRfbG8+PjE2KTsKKyAgcmV0dXJuIFNBRkVfU0hMKHJkX2hpLDE2KSsocmRfbG8+PjE2KTsKIH0K
ICNkZWZpbmUgc2lsa19TTVVMV1coYSwgYikgKHNpbGtfU01VTFdXX2FybXY0KGEsIGIpKQogCkBA
IC05Niw4ICsxMDEsMTAgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIgc2lsa19TTUxB
V1dfYXJtdjQob3B1c19pbnQzMiBhLCBvcHVzX2ludDMyIGIsCiAgICAgOiAiPSZyIihyZF9sbyks
ICI9JnIiKHJkX2hpKQogICAgIDogIiVyIihiKSwgInIiKGMpCiAgICk7Ci0gIHJldHVybiBhKyhy
ZF9oaTw8MTYpKyhyZF9sbz4+MTYpOworICByZXR1cm4gYStTQUZFX1NITChyZF9oaSwxNikrKHJk
X2xvPj4xNik7CiB9CiAjZGVmaW5lIHNpbGtfU01MQVdXKGEsIGIsIGMpIChzaWxrX1NNTEFXV19h
cm12NChhLCBiLCBjKSkKIAorI3VuZGVmIFNBRkVfU0hMCisKICNlbmRpZiAvKiBTSUxLX01BQ1JP
U19BUk12NF9IICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYXJtL21hY3Jvc19hcm12NWUuaCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9h
cm0vbWFjcm9zX2FybXY1ZS5oCmluZGV4IGFhZDQxMTdlNDZhNWZhZmFhZWEzYjBlNWRjYzBiZTg1
YjExYzZjZjkuLmIxNGVjNjVkZGIyOWEyMmIwOTM0NjBjMzhhZWI2OGJhNWVkNTQwN2QgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9hcm0vbWFjcm9zX2FybXY1ZS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9hcm0vbWFjcm9zX2FybXY1
ZS5oCkBAIC0yOSw2ICsyOSwxMSBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICNpZm5k
ZWYgU0lMS19NQUNST1NfQVJNdjVFX0gKICNkZWZpbmUgU0lMS19NQUNST1NfQVJNdjVFX0gKIAor
LyogVGhpcyBtYWNybyBvbmx5IGF2b2lkcyB0aGUgdW5kZWZpbmVkIGJlaGF2aW91ciBmcm9tIGEg
bGVmdCBzaGlmdCBvZgorICAgYSBuZWdhdGl2ZSB2YWx1ZS4gSXQgc2hvdWxkIG9ubHkgYmUgdXNl
ZCBpbiBtYWNyb3MgdGhhdCBjYW4ndCBpbmNsdWRlCisgICBTaWdQcm9jX0ZJWC5oLiBJbiBvdGhl
ciBjYXNlcywgdXNlIHNpbGtfTFNISUZUMzIoKS4gKi8KKyNkZWZpbmUgU0FGRV9TSEwoYSxiKSAo
KG9wdXNfaW50MzIpKChvcHVzX3VpbnQzMikoYSkgPDwgKGIpKSkKKwogLyogKGEzMiAqIChvcHVz
X2ludDMyKSgob3B1c19pbnQxNikoYjMyKSkpID4+IDE2IG91dHB1dCBoYXZlIHRvIGJlIDMyYml0
IGludCAqLwogI3VuZGVmIHNpbGtfU01VTFdCCiBzdGF0aWMgT1BVU19JTkxJTkUgb3B1c19pbnQz
MiBzaWxrX1NNVUxXQl9hcm12NWUob3B1c19pbnQzMiBhLCBvcHVzX2ludDE2IGIpCkBAIC0xOTAs
NyArMTk1LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50MzIgc2lsa19DTFoxNl9hcm12
NShvcHVzX2ludDE2IGluMTYpCiAgICAgICAiI3NpbGtfQ0xaMTZcblx0IgogICAgICAgImNseiAl
MCwgJTE7XG4iCiAgICAgICA6ICI9ciIocmVzKQotICAgICAgOiAiciIoaW4xNjw8MTZ8MHg4MDAw
KQorICAgICAgOiAiciIoU0FGRV9TSEwoaW4xNiwxNil8MHg4MDAwKQogICApOwogICByZXR1cm4g
cmVzOwogfQpAQCAtMjEwLDQgKzIxNSw2IEBAIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludDMy
IHNpbGtfQ0xaMzJfYXJtdjUob3B1c19pbnQzMiBpbjMyKQogfQogI2RlZmluZSBzaWxrX0NMWjMy
KGluMzIpIChzaWxrX0NMWjMyX2FybXY1KGluMzIpKQogCisjdW5kZWYgU0FGRV9TSEwKKwogI2Vu
ZGlmIC8qIFNJTEtfTUFDUk9TX0FSTXY1RV9IICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYmlxdWFkX2Fs
dC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2JpcXVhZF9hbHQuYwppbmRleCBkNTVmNWVlOTJlYzJkOWI0MjE3ODEwMzc3YTFj
NGEzOTBmODEwNGY5Li41NDU2NmE0M2MwMDEzYzdiN2VkMzc4MDY5YTQ0ODY3Y2NhOTMyMzFmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvYmlxdWFkX2FsdC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9iaXF1YWRfYWx0LmMKQEAgLTM5
LDE0ICszOSwxMyBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICNpbmNsdWRlICJTaWdQ
cm9jX0ZJWC5oIgogCiAvKiBTZWNvbmQgb3JkZXIgQVJNQSBmaWx0ZXIsIGFsdGVybmF0aXZlIGlt
cGxlbWVudGF0aW9uICovCi12b2lkIHNpbGtfYmlxdWFkX2FsdCgKK3ZvaWQgc2lsa19iaXF1YWRf
YWx0X3N0cmlkZTEoCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICppbiwgICAgICAg
ICAgICAgICAgLyogSSAgICAgaW5wdXQgc2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAq
Ql9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIE1BIGNvZWZmaWNpZW50cyBbM10gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDMyICAg
ICAgICAgICAgKkFfUTI4LCAgICAgICAgICAgICAvKiBJICAgICBBUiBjb2VmZmljaWVudHMgWzJd
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQz
MiAgICAgICAgICAgICAgICAgICpTLCAgICAgICAgICAgICAgICAgLyogSS9PICAgU3RhdGUgdmVj
dG9yIFsyXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqb3V0LCAgICAgICAgICAgICAgIC8qIE8gICAg
IG91dHB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgbGVuLCAgICAgICAgICAgICAg
ICAvKiBJICAgICBzaWduYWwgbGVuZ3RoIChtdXN0IGJlIGV2ZW4pICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIHN0cmlkZSAg
ICAgICAgICAgICAgLyogSSAgICAgT3BlcmF0ZSBvbiBpbnRlcmxlYXZlZCBzaWduYWwgaWYgPiAx
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAg
ICBsZW4gICAgICAgICAgICAgICAgIC8qIEkgICAgIHNpZ25hbCBsZW5ndGggKG11c3QgYmUgZXZl
bikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKICAgICAvKiBESVJFQ1Qg
Rk9STSBJSSBUUkFOU1BPU0VEICh1c2VzIDIgZWxlbWVudCBzdGF0ZSB2ZWN0b3IpICovCkBAIC02
MSw3ICs2MCw3IEBAIHZvaWQgc2lsa19iaXF1YWRfYWx0KAogCiAgICAgZm9yKCBrID0gMDsgayA8
IGxlbjsgaysrICkgewogICAgICAgICAvKiBTWyAwIF0sIFNbIDEgXTogUTEyICovCi0gICAgICAg
IGludmFsID0gaW5bIGsgKiBzdHJpZGUgXTsKKyAgICAgICAgaW52YWwgPSBpblsgayBdOwogICAg
ICAgICBvdXQzMl9RMTQgPSBzaWxrX0xTSElGVCggc2lsa19TTUxBV0IoIFNbIDAgXSwgQl9RMjhb
IDAgXSwgaW52YWwgKSwgMiApOwogCiAgICAgICAgIFNbIDAgXSA9IFNbMV0gKyBzaWxrX1JTSElG
VF9ST1VORCggc2lsa19TTVVMV0IoIG91dDMyX1ExNCwgQTBfTF9RMjggKSwgMTQgKTsKQEAgLTcz
LDYgKzcyLDUwIEBAIHZvaWQgc2lsa19iaXF1YWRfYWx0KAogICAgICAgICBTWyAxIF0gPSBzaWxr
X1NNTEFXQiggU1sgMSBdLCBCX1EyOFsgMiBdLCBpbnZhbCApOwogCiAgICAgICAgIC8qIFNjYWxl
IGJhY2sgdG8gUTAgYW5kIHNhdHVyYXRlICovCi0gICAgICAgIG91dFsgayAqIHN0cmlkZSBdID0g
KG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlQoIG91dDMyX1ExNCArICgxPDwxNCkg
LSAxLCAxNCApICk7CisgICAgICAgIG91dFsgayBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNigg
c2lsa19SU0hJRlQoIG91dDMyX1ExNCArICgxPDwxNCkgLSAxLCAxNCApICk7CisgICAgfQorfQor
Cit2b2lkIHNpbGtfYmlxdWFkX2FsdF9zdHJpZGUyX2MoCisgICAgY29uc3Qgb3B1c19pbnQxNiAg
ICAgICAgICAgICppbiwgICAgICAgICAgICAgICAgLyogSSAgICAgaW5wdXQgc2lnbmFsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9w
dXNfaW50MzIgICAgICAgICAgICAqQl9RMjgsICAgICAgICAgICAgIC8qIEkgICAgIE1BIGNvZWZm
aWNpZW50cyBbM10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgKkFfUTI4LCAgICAgICAgICAgICAvKiBJICAg
ICBBUiBjb2VmZmljaWVudHMgWzJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpTLCAgICAgICAgICAgICAg
ICAgLyogSS9PICAgU3RhdGUgdmVjdG9yIFs0XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICAqb3V0LCAg
ICAgICAgICAgICAgIC8qIE8gICAgIG91dHB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAg
ICAgbGVuICAgICAgICAgICAgICAgICAvKiBJICAgICBzaWduYWwgbGVuZ3RoIChtdXN0IGJlIGV2
ZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCispCit7CisgICAgLyogRElSRUNU
IEZPUk0gSUkgVFJBTlNQT1NFRCAodXNlcyAyIGVsZW1lbnQgc3RhdGUgdmVjdG9yKSAqLworICAg
IG9wdXNfaW50ICAgazsKKyAgICBvcHVzX2ludDMyIEEwX1VfUTI4LCBBMF9MX1EyOCwgQTFfVV9R
MjgsIEExX0xfUTI4LCBvdXQzMl9RMTRbIDIgXTsKKworICAgIC8qIE5lZ2F0ZSBBX1EyOCB2YWx1
ZXMgYW5kIHNwbGl0IGluIHR3byBwYXJ0cyAqLworICAgIEEwX0xfUTI4ID0gKCAtQV9RMjhbIDAg
XSApICYgMHgwMDAwM0ZGRjsgICAgICAgIC8qIGxvd2VyIHBhcnQgKi8KKyAgICBBMF9VX1EyOCA9
IHNpbGtfUlNISUZUKCAtQV9RMjhbIDAgXSwgMTQgKTsgICAgICAvKiB1cHBlciBwYXJ0ICovCisg
ICAgQTFfTF9RMjggPSAoIC1BX1EyOFsgMSBdICkgJiAweDAwMDAzRkZGOyAgICAgICAgLyogbG93
ZXIgcGFydCAqLworICAgIEExX1VfUTI4ID0gc2lsa19SU0hJRlQoIC1BX1EyOFsgMSBdLCAxNCAp
OyAgICAgIC8qIHVwcGVyIHBhcnQgKi8KKworICAgIGZvciggayA9IDA7IGsgPCBsZW47IGsrKyAp
IHsKKyAgICAgICAgLyogU1sgMCBdLCBTWyAxIF0sIFNbIDIgXSwgU1sgMyBdOiBRMTIgKi8KKyAg
ICAgICAgb3V0MzJfUTE0WyAwIF0gPSBzaWxrX0xTSElGVCggc2lsa19TTUxBV0IoIFNbIDAgXSwg
Ql9RMjhbIDAgXSwgaW5bIDIgKiBrICsgMCBdICksIDIgKTsKKyAgICAgICAgb3V0MzJfUTE0WyAx
IF0gPSBzaWxrX0xTSElGVCggc2lsa19TTUxBV0IoIFNbIDIgXSwgQl9RMjhbIDAgXSwgaW5bIDIg
KiBrICsgMSBdICksIDIgKTsKKworICAgICAgICBTWyAwIF0gPSBTWyAxIF0gKyBzaWxrX1JTSElG
VF9ST1VORCggc2lsa19TTVVMV0IoIG91dDMyX1ExNFsgMCBdLCBBMF9MX1EyOCApLCAxNCApOwor
ICAgICAgICBTWyAyIF0gPSBTWyAzIF0gKyBzaWxrX1JTSElGVF9ST1VORCggc2lsa19TTVVMV0Io
IG91dDMyX1ExNFsgMSBdLCBBMF9MX1EyOCApLCAxNCApOworICAgICAgICBTWyAwIF0gPSBzaWxr
X1NNTEFXQiggU1sgMCBdLCBvdXQzMl9RMTRbIDAgXSwgQTBfVV9RMjggKTsKKyAgICAgICAgU1sg
MiBdID0gc2lsa19TTUxBV0IoIFNbIDIgXSwgb3V0MzJfUTE0WyAxIF0sIEEwX1VfUTI4ICk7Cisg
ICAgICAgIFNbIDAgXSA9IHNpbGtfU01MQVdCKCBTWyAwIF0sIEJfUTI4WyAxIF0sIGluWyAyICog
ayArIDAgXSApOworICAgICAgICBTWyAyIF0gPSBzaWxrX1NNTEFXQiggU1sgMiBdLCBCX1EyOFsg
MSBdLCBpblsgMiAqIGsgKyAxIF0gKTsKKworICAgICAgICBTWyAxIF0gPSBzaWxrX1JTSElGVF9S
T1VORCggc2lsa19TTVVMV0IoIG91dDMyX1ExNFsgMCBdLCBBMV9MX1EyOCApLCAxNCApOworICAg
ICAgICBTWyAzIF0gPSBzaWxrX1JTSElGVF9ST1VORCggc2lsa19TTVVMV0IoIG91dDMyX1ExNFsg
MSBdLCBBMV9MX1EyOCApLCAxNCApOworICAgICAgICBTWyAxIF0gPSBzaWxrX1NNTEFXQiggU1sg
MSBdLCBvdXQzMl9RMTRbIDAgXSwgQTFfVV9RMjggKTsKKyAgICAgICAgU1sgMyBdID0gc2lsa19T
TUxBV0IoIFNbIDMgXSwgb3V0MzJfUTE0WyAxIF0sIEExX1VfUTI4ICk7CisgICAgICAgIFNbIDEg
XSA9IHNpbGtfU01MQVdCKCBTWyAxIF0sIEJfUTI4WyAyIF0sIGluWyAyICogayArIDAgXSApOwor
ICAgICAgICBTWyAzIF0gPSBzaWxrX1NNTEFXQiggU1sgMyBdLCBCX1EyOFsgMiBdLCBpblsgMiAq
IGsgKyAxIF0gKTsKKworICAgICAgICAvKiBTY2FsZSBiYWNrIHRvIFEwIGFuZCBzYXR1cmF0ZSAq
LworICAgICAgICBvdXRbIDIgKiBrICsgMCBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2ls
a19SU0hJRlQoIG91dDMyX1ExNFsgMCBdICsgKDE8PDE0KSAtIDEsIDE0ICkgKTsKKyAgICAgICAg
b3V0WyAyICogayArIDEgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUKCBv
dXQzMl9RMTRbIDEgXSArICgxPDwxNCkgLSAxLCAxNCApICk7CiAgICAgfQogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2J3ZXhwYW5kZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9id2V4cGFuZGVyLmMKaW5kZXggMmViNDQ1NjY5NWU3
OTE5MjAzNzU3YjhmZjhmNjA2NzM5MTNlZjExNi4uYWZhOTc5MDdlYzgwMmM2M2M2NWQ1MjY3YzE0
NThjMDdjODI1NzIwOCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2J3ZXhwYW5kZXIuYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvYndl
eHBhbmRlci5jCkBAIC00NSw3ICs0NSw3IEBAIHZvaWQgc2lsa19id2V4cGFuZGVyKAogICAgIC8q
IEJpYXMgaW4gc2lsa19TTVVMV0IgY2FuIGxlYWQgdG8gdW5zdGFibGUgZmlsdGVycyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBmb3IoIGkgPSAwOyBpIDwgZCAtIDE7IGkr
KyApIHsKICAgICAgICAgYXJbIGkgXSAgICA9IChvcHVzX2ludDE2KXNpbGtfUlNISUZUX1JPVU5E
KCBzaWxrX01VTCggY2hpcnBfUTE2LCBhclsgaSBdICAgICAgICAgICAgICksIDE2ICk7Ci0gICAg
ICAgIGNoaXJwX1ExNiArPSAgICAgICAgICAgIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX01VTCgg
Y2hpcnBfUTE2LCBjaGlycF9taW51c19vbmVfUTE2ICksIDE2ICk7CisgICAgICAgIGNoaXJwX1Ex
NiArPSAgICAgICAgICAgICBzaWxrX1JTSElGVF9ST1VORCggc2lsa19NVUwoIGNoaXJwX1ExNiwg
Y2hpcnBfbWludXNfb25lX1ExNiApLCAxNiApOwogICAgIH0KICAgICBhclsgZCAtIDEgXSA9IChv
cHVzX2ludDE2KXNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX01VTCggY2hpcnBfUTE2LCBhclsgZCAt
IDEgXSApLCAxNiApOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2wuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9jb250cm9s
LmgKaW5kZXggNzQ3ZTU0MjZhMGMzZmM3Y2I5YjViZGI3ODM0ZGRkOThhMjNlOTc5MS4uYjc2ZWMz
M2NkNmRkYjYzODZmNTY0ZTFkOTlkM2ZmNTdkN2U2OTNhZCAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRy
b2wuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvY29udHJvbC5oCkBAIC03Nyw2ICs3Nyw5IEBAIHR5cGVkZWYgc3RydWN0
IHsKICAgICAvKiBJOiAgIEZsYWcgdG8gZW5hYmxlIGluLWJhbmQgRm9yd2FyZCBFcnJvciBDb3Jy
ZWN0aW9uIChGRUMpOyAwLzEgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCB1
c2VJbkJhbmRGRUM7CiAKKyAgICAvKiBJOiAgIEZsYWcgdG8gYWN0dWFsbHkgY29kZSBpbi1iYW5k
IEZvcndhcmQgRXJyb3IgQ29ycmVjdGlvbiAoRkVDKSBpbiB0aGUgY3VycmVudCBwYWNrZXQ7IDAv
MSAqLworICAgIG9wdXNfaW50IExCUlJfY29kZWQ7CisKICAgICAvKiBJOiAgIEZsYWcgdG8gZW5h
YmxlIGRpc2NvbnRpbnVvdXMgdHJhbnNtaXNzaW9uIChEVFgpOyAwLzEgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCB1c2VEVFg7CiAKQEAgLTExMCw2ICsxMTMsMTEg
QEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIC8qIE86ICAgVGVsbHMgdGhlIE9wdXMgZW5jb2RlciB3
ZSdyZSByZWFkeSB0byBzd2l0Y2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwogICAgIG9wdXNfaW50IHN3aXRjaFJlYWR5OwogCisgICAgLyogTzogU0lMSyBTaWduYWwgdHlw
ZSAqLworICAgIG9wdXNfaW50IHNpZ25hbFR5cGU7CisKKyAgICAvKiBPOiBTSUxLIG9mZnNldCAo
ZGl0aGVyaW5nKSAqLworICAgIG9wdXNfaW50IG9mZnNldDsKIH0gc2lsa19FbmNDb250cm9sU3Ry
dWN0OwogCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvY29udHJvbF9TTlIu
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9jb250cm9sX1NOUi5jCmluZGV4IGNlZTg3ZWIwZDhiMzdjNTRlMDU3MDZmYjY4YThj
ZGMxOGM5YWFiNGMuLjQ2NGMxYWNmZTg4NDUxYWJmNmEzZWQ0NWRiMjZiMjVjZDBjNjUzZjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9jb250cm9sX1NOUi5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9jb250cm9sX1NOUi5jCkBAIC02
NCw4ICs2NCw3IEBAIG9wdXNfaW50IHNpbGtfY29udHJvbF9TTlIoCiAgICAgICAgIC8qIEZpbmQg
Yml0cmF0ZSBpbnRlcnZhbCBpbiB0YWJsZSBhbmQgaW50ZXJwb2xhdGUgKi8KICAgICAgICAgZm9y
KCBrID0gMTsgayA8IFRBUkdFVF9SQVRFX1RBQl9TWjsgaysrICkgewogICAgICAgICAgICAgaWYo
IFRhcmdldFJhdGVfYnBzIDw9IHJhdGVUYWJsZVsgayBdICkgewotICAgICAgICAgICAgICAgIGZy
YWNfUTYgPSBzaWxrX0RJVjMyKCBzaWxrX0xTSElGVCggVGFyZ2V0UmF0ZV9icHMgLSByYXRlVGFi
bGVbIGsgLSAxIF0sIDYgKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICByYXRlVGFibGVbIGsgXSAtIHJhdGVUYWJsZVsgayAtIDEgXSApOworICAgICAg
ICAgICAgICAgIGZyYWNfUTYgPSBzaWxrX0RJVjMyKCBzaWxrX0xTSElGVCggVGFyZ2V0UmF0ZV9i
cHMgLSByYXRlVGFibGVbIGsgLSAxIF0sIDYgKSwgcmF0ZVRhYmxlWyBrIF0gLSByYXRlVGFibGVb
IGsgLSAxIF0gKTsKICAgICAgICAgICAgICAgICBwc0VuY0MtPlNOUl9kQl9RNyA9IHNpbGtfTFNI
SUZUKCBzaWxrX1NOUl90YWJsZV9RMVsgayAtIDEgXSwgNiApICsgc2lsa19NVUwoIGZyYWNfUTYs
IHNpbGtfU05SX3RhYmxlX1ExWyBrIF0gLSBzaWxrX1NOUl90YWJsZV9RMVsgayAtIDEgXSApOwog
ICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Nv
bnRyb2xfY29kZWMuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9jb250cm9sX2NvZGVjLmMKaW5kZXggMDQ0ZWVhM2YyYTg0ZTBh
YTQ0M2YwNWNmYzVhZjJmNWM1ZTQ1NGNhZC4uOTM1MGZkNGIyYjRjYzliNTg4OTFkODNiN2I3Yjc3
NGYyNzRiMTgxZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2NvbnRyb2xfY29kZWMuYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvY29u
dHJvbF9jb2RlYy5jCkBAIC01Nyw3ICs1Nyw3IEBAIHN0YXRpYyBvcHVzX2ludCBzaWxrX3NldHVw
X2NvbXBsZXhpdHkoCiAKIHN0YXRpYyBPUFVTX0lOTElORSBvcHVzX2ludCBzaWxrX3NldHVwX0xC
UlIoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRlICAgICAgICAgICAgICAqcHNFbmNDLCAgICAgICAg
ICAgIC8qIEkvTyAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIg
ICAgICAgICAgICAgICAgVGFyZ2V0UmF0ZV9icHMgICAgICAvKiBJICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBzaWxrX0VuY0NvbnRyb2xTdHJ1Y3QgICAgICplbmNDb250cm9s
ICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCiAKQEAgLTY1LDcg
KzY1LDYgQEAgc3RhdGljIE9QVVNfSU5MSU5FIG9wdXNfaW50IHNpbGtfc2V0dXBfTEJSUigKIG9w
dXNfaW50IHNpbGtfY29udHJvbF9lbmNvZGVyKAogICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GeHgg
ICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAg
UG9pbnRlciB0byBTaWxrIGVuY29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19FbmNDb250cm9sU3RydWN0ICAgICAgICAg
ICAqZW5jQ29udHJvbCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDb250cm9s
IHN0cnVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgICAgIFRhcmdl
dFJhdGVfYnBzLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFRhcmdldCBtYXggYml0
cmF0ZSAoYnBzKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgYWxsb3dfYndfc3dp
dGNoLCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRmxhZyB0byBhbGxvdyBzd2l0Y2hp
bmcgYXVkaW8gYmFuZHdpZHRoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBjaGFubmVsTmIsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBDaGFubmVsIG51bWJlciAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBj
b25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGZvcmNlX2ZzX2tIegpAQCAtMTI1LDcgKzEy
NCw3IEBAIG9wdXNfaW50IHNpbGtfY29udHJvbF9lbmNvZGVyKAogICAgIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBTZXQgTEJSUiB1c2FnZSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqLwotICAgIHJldCArPSBzaWxrX3NldHVwX0xCUlIoICZwc0Vu
Yy0+c0NtbiwgVGFyZ2V0UmF0ZV9icHMgKTsKKyAgICByZXQgKz0gc2lsa19zZXR1cF9MQlJSKCAm
cHNFbmMtPnNDbW4sIGVuY0NvbnRyb2wgKTsKIAogICAgIHBzRW5jLT5zQ21uLmNvbnRyb2xsZWRf
c2luY2VfbGFzdF9wYXlsb2FkID0gMTsKIApAQCAtMjQ0LDcgKzI0Myw2IEBAIHN0YXRpYyBvcHVz
X2ludCBzaWxrX3NldHVwX2ZzKAogICAgIGlmKCBwc0VuYy0+c0Ntbi5mc19rSHogIT0gZnNfa0h6
ICkgewogICAgICAgICAvKiByZXNldCBwYXJ0IG9mIHRoZSBzdGF0ZSAqLwogICAgICAgICBzaWxr
X21lbXNldCggJnBzRW5jLT5zU2hhcGUsICAgICAgICAgICAgICAgMCwgc2l6ZW9mKCBwc0VuYy0+
c1NoYXBlICkgKTsKLSAgICAgICAgc2lsa19tZW1zZXQoICZwc0VuYy0+c1ByZWZpbHQsICAgICAg
ICAgICAgIDAsIHNpemVvZiggcHNFbmMtPnNQcmVmaWx0ICkgKTsKICAgICAgICAgc2lsa19tZW1z
ZXQoICZwc0VuYy0+c0Ntbi5zTlNRLCAgICAgICAgICAgIDAsIHNpemVvZiggcHNFbmMtPnNDbW4u
c05TUSApICk7CiAgICAgICAgIHNpbGtfbWVtc2V0KCBwc0VuYy0+c0Ntbi5wcmV2X05MU0ZxX1Ex
NSwgICAwLCBzaXplb2YoIHBzRW5jLT5zQ21uLnByZXZfTkxTRnFfUTE1ICkgKTsKICAgICAgICAg
c2lsa19tZW1zZXQoICZwc0VuYy0+c0Ntbi5zTFAuSW5fTFBfU3RhdGUsIDAsIHNpemVvZiggcHNF
bmMtPnNDbW4uc0xQLkluX0xQX1N0YXRlICkgKTsKQEAgLTI1NSw3ICsyNTMsNiBAQCBzdGF0aWMg
b3B1c19pbnQgc2lsa19zZXR1cF9mcygKICAgICAgICAgLyogSW5pdGlhbGl6ZSBub24temVybyBw
YXJhbWV0ZXJzICovCiAgICAgICAgIHBzRW5jLT5zQ21uLnByZXZMYWcgICAgICAgICAgICAgICAg
ICAgICA9IDEwMDsKICAgICAgICAgcHNFbmMtPnNDbW4uZmlyc3RfZnJhbWVfYWZ0ZXJfcmVzZXQg
ICAgID0gMTsKLSAgICAgICAgcHNFbmMtPnNQcmVmaWx0LmxhZ1ByZXYgICAgICAgICAgICAgICAg
ID0gMTAwOwogICAgICAgICBwc0VuYy0+c1NoYXBlLkxhc3RHYWluSW5kZXggICAgICAgICAgICAg
PSAxMDsKICAgICAgICAgcHNFbmMtPnNDbW4uc05TUS5sYWdQcmV2ICAgICAgICAgICAgICAgID0g
MTAwOwogICAgICAgICBwc0VuYy0+c0Ntbi5zTlNRLnByZXZfZ2Fpbl9RMTYgICAgICAgICAgPSA2
NTUzNjsKQEAgLTI5MywxMyArMjkwLDEwIEBAIHN0YXRpYyBvcHVzX2ludCBzaWxrX3NldHVwX2Zz
KAogICAgICAgICAgICAgcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGggPSBzaWxrX1NN
VUxCQiggRklORF9QSVRDSF9MUENfV0lOX01TXzJfU0YsIGZzX2tIeiApOwogICAgICAgICB9CiAg
ICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5mc19rSHogPT0gMTYgKSB7Ci0gICAgICAgICAgICBwc0Vu
Yy0+c0Ntbi5tdV9MVFBfUTkgPSBTSUxLX0ZJWF9DT05TVCggTVVfTFRQX1FVQU5UX1dCLCA5ICk7
CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5waXRjaF9sYWdfbG93X2JpdHNfaUNERiA9IHNpbGtf
dW5pZm9ybThfaUNERjsKICAgICAgICAgfSBlbHNlIGlmKCBwc0VuYy0+c0Ntbi5mc19rSHogPT0g
MTIgKSB7Ci0gICAgICAgICAgICBwc0VuYy0+c0Ntbi5tdV9MVFBfUTkgPSBTSUxLX0ZJWF9DT05T
VCggTVVfTFRQX1FVQU5UX01CLCA5ICk7CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5waXRjaF9s
YWdfbG93X2JpdHNfaUNERiA9IHNpbGtfdW5pZm9ybTZfaUNERjsKICAgICAgICAgfSBlbHNlIHsK
LSAgICAgICAgICAgIHBzRW5jLT5zQ21uLm11X0xUUF9ROSA9IFNJTEtfRklYX0NPTlNUKCBNVV9M
VFBfUVVBTlRfTkIsIDkgKTsKICAgICAgICAgICAgIHBzRW5jLT5zQ21uLnBpdGNoX2xhZ19sb3df
Yml0c19pQ0RGID0gc2lsa191bmlmb3JtNF9pQ0RGOwogICAgICAgICB9CiAgICAgfQpAQCAtMzE5
LDYwICszMTMsNzUgQEAgc3RhdGljIG9wdXNfaW50IHNpbGtfc2V0dXBfY29tcGxleGl0eSgKIAog
ICAgIC8qIFNldCBlbmNvZGluZyBjb21wbGV4aXR5ICovCiAgICAgc2lsa19hc3NlcnQoIENvbXBs
ZXhpdHkgPj0gMCAmJiBDb21wbGV4aXR5IDw9IDEwICk7Ci0gICAgaWYoIENvbXBsZXhpdHkgPCAy
ICkgeworICAgIGlmKCBDb21wbGV4aXR5IDwgMSApIHsKICAgICAgICAgcHNFbmNDLT5waXRjaEVz
dGltYXRpb25Db21wbGV4aXR5ICAgICAgID0gU0lMS19QRV9NSU5fQ09NUExFWDsKICAgICAgICAg
cHNFbmNDLT5waXRjaEVzdGltYXRpb25UaHJlc2hvbGRfUTE2ICAgID0gU0lMS19GSVhfQ09OU1Qo
IDAuOCwgMTYgKTsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGltYXRpb25MUENPcmRlciAgICAg
ICAgID0gNjsKLSAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIgICAgICAgICAgICAgICAg
ID0gODsKKyAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIgICAgICAgICAgICAgICAgID0g
MTI7CiAgICAgICAgIHBzRW5jQy0+bGFfc2hhcGUgICAgICAgICAgICAgICAgICAgICAgICA9IDMg
KiBwc0VuY0MtPmZzX2tIejsKICAgICAgICAgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lzaW9u
ICAgICAgICAgID0gMTsKICAgICAgICAgcHNFbmNDLT51c2VJbnRlcnBvbGF0ZWROTFNGcyAgICAg
ICAgICAgID0gMDsKLSAgICAgICAgcHNFbmNDLT5MVFBRdWFudExvd0NvbXBsZXhpdHkgICAgICAg
ICAgID0gMTsKICAgICAgICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vydml2b3JzICAgICAgICAgICAg
ID0gMjsKICAgICAgICAgcHNFbmNDLT53YXJwaW5nX1ExNiAgICAgICAgICAgICAgICAgICAgID0g
MDsKLSAgICB9IGVsc2UgaWYoIENvbXBsZXhpdHkgPCA0ICkgeworICAgIH0gZWxzZSBpZiggQ29t
cGxleGl0eSA8IDIgKSB7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uQ29tcGxleGl0
eSAgICAgICA9IFNJTEtfUEVfTUlEX0NPTVBMRVg7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3Rp
bWF0aW9uVGhyZXNob2xkX1ExNiAgICA9IFNJTEtfRklYX0NPTlNUKCAwLjc2LCAxNiApOwogICAg
ICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyICAgICAgICAgPSA4OwotICAgICAg
ICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAxMDsKKyAgICAgICAg
cHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIgICAgICAgICAgICAgICAgID0gMTQ7CiAgICAgICAgIHBz
RW5jQy0+bGFfc2hhcGUgICAgICAgICAgICAgICAgICAgICAgICA9IDUgKiBwc0VuY0MtPmZzX2tI
ejsKICAgICAgICAgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lzaW9uICAgICAgICAgID0gMTsK
ICAgICAgICAgcHNFbmNDLT51c2VJbnRlcnBvbGF0ZWROTFNGcyAgICAgICAgICAgID0gMDsKLSAg
ICAgICAgcHNFbmNDLT5MVFBRdWFudExvd0NvbXBsZXhpdHkgICAgICAgICAgID0gMDsKKyAgICAg
ICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vydml2b3JzICAgICAgICAgICAgID0gMzsKKyAgICAgICAg
cHNFbmNDLT53YXJwaW5nX1ExNiAgICAgICAgICAgICAgICAgICAgID0gMDsKKyAgICB9IGVsc2Ug
aWYoIENvbXBsZXhpdHkgPCAzICkgeworICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkNv
bXBsZXhpdHkgICAgICAgPSBTSUxLX1BFX01JTl9DT01QTEVYOworICAgICAgICBwc0VuY0MtPnBp
dGNoRXN0aW1hdGlvblRocmVzaG9sZF9RMTYgICAgPSBTSUxLX0ZJWF9DT05TVCggMC44LCAxNiAp
OworICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyICAgICAgICAgPSA2Owor
ICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAgICAgPSAxMjsKKyAg
ICAgICAgcHNFbmNDLT5sYV9zaGFwZSAgICAgICAgICAgICAgICAgICAgICAgID0gMyAqIHBzRW5j
Qy0+ZnNfa0h6OworICAgICAgICBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gICAgICAg
ICAgPSAyOworICAgICAgICBwc0VuY0MtPnVzZUludGVycG9sYXRlZE5MU0ZzICAgICAgICAgICAg
PSAwOworICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMgICAgICAgICAgICAgPSAy
OworICAgICAgICBwc0VuY0MtPndhcnBpbmdfUTE2ICAgICAgICAgICAgICAgICAgICAgPSAwOwor
ICAgIH0gZWxzZSBpZiggQ29tcGxleGl0eSA8IDQgKSB7CisgICAgICAgIHBzRW5jQy0+cGl0Y2hF
c3RpbWF0aW9uQ29tcGxleGl0eSAgICAgICA9IFNJTEtfUEVfTUlEX0NPTVBMRVg7CisgICAgICAg
IHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNiAgICA9IFNJTEtfRklYX0NPTlNU
KCAwLjc2LCAxNiApOworICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyICAg
ICAgICAgPSA4OworICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAg
ICAgPSAxNDsKKyAgICAgICAgcHNFbmNDLT5sYV9zaGFwZSAgICAgICAgICAgICAgICAgICAgICAg
ID0gNSAqIHBzRW5jQy0+ZnNfa0h6OworICAgICAgICBwc0VuY0MtPm5TdGF0ZXNEZWxheWVkRGVj
aXNpb24gICAgICAgICAgPSAyOworICAgICAgICBwc0VuY0MtPnVzZUludGVycG9sYXRlZE5MU0Zz
ICAgICAgICAgICAgPSAwOwogICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMgICAg
ICAgICAgICAgPSA0OwogICAgICAgICBwc0VuY0MtPndhcnBpbmdfUTE2ICAgICAgICAgICAgICAg
ICAgICAgPSAwOwogICAgIH0gZWxzZSBpZiggQ29tcGxleGl0eSA8IDYgKSB7CiAgICAgICAgIHBz
RW5jQy0+cGl0Y2hFc3RpbWF0aW9uQ29tcGxleGl0eSAgICAgICA9IFNJTEtfUEVfTUlEX0NPTVBM
RVg7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNiAgICA9IFNJ
TEtfRklYX0NPTlNUKCAwLjc0LCAxNiApOwogICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlv
bkxQQ09yZGVyICAgICAgICAgPSAxMDsKLSAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIg
ICAgICAgICAgICAgICAgID0gMTI7CisgICAgICAgIHBzRW5jQy0+c2hhcGluZ0xQQ09yZGVyICAg
ICAgICAgICAgICAgICA9IDE2OwogICAgICAgICBwc0VuY0MtPmxhX3NoYXBlICAgICAgICAgICAg
ICAgICAgICAgICAgPSA1ICogcHNFbmNDLT5mc19rSHo7CiAgICAgICAgIHBzRW5jQy0+blN0YXRl
c0RlbGF5ZWREZWNpc2lvbiAgICAgICAgICA9IDI7CiAgICAgICAgIHBzRW5jQy0+dXNlSW50ZXJw
b2xhdGVkTkxTRnMgICAgICAgICAgICA9IDE7Ci0gICAgICAgIHBzRW5jQy0+TFRQUXVhbnRMb3dD
b21wbGV4aXR5ICAgICAgICAgICA9IDA7Ci0gICAgICAgIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZp
dm9ycyAgICAgICAgICAgICA9IDg7CisgICAgICAgIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9y
cyAgICAgICAgICAgICA9IDY7CiAgICAgICAgIHBzRW5jQy0+d2FycGluZ19RMTYgICAgICAgICAg
ICAgICAgICAgICA9IHBzRW5jQy0+ZnNfa0h6ICogU0lMS19GSVhfQ09OU1QoIFdBUlBJTkdfTVVM
VElQTElFUiwgMTYgKTsKICAgICB9IGVsc2UgaWYoIENvbXBsZXhpdHkgPCA4ICkgewogICAgICAg
ICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvbkNvbXBsZXhpdHkgICAgICAgPSBTSUxLX1BFX01JRF9D
T01QTEVYOwogICAgICAgICBwc0VuY0MtPnBpdGNoRXN0aW1hdGlvblRocmVzaG9sZF9RMTYgICAg
PSBTSUxLX0ZJWF9DT05TVCggMC43MiwgMTYgKTsKICAgICAgICAgcHNFbmNDLT5waXRjaEVzdGlt
YXRpb25MUENPcmRlciAgICAgICAgID0gMTI7Ci0gICAgICAgIHBzRW5jQy0+c2hhcGluZ0xQQ09y
ZGVyICAgICAgICAgICAgICAgICA9IDE0OworICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRl
ciAgICAgICAgICAgICAgICAgPSAyMDsKICAgICAgICAgcHNFbmNDLT5sYV9zaGFwZSAgICAgICAg
ICAgICAgICAgICAgICAgID0gNSAqIHBzRW5jQy0+ZnNfa0h6OwogICAgICAgICBwc0VuY0MtPm5T
dGF0ZXNEZWxheWVkRGVjaXNpb24gICAgICAgICAgPSAzOwogICAgICAgICBwc0VuY0MtPnVzZUlu
dGVycG9sYXRlZE5MU0ZzICAgICAgICAgICAgPSAxOwotICAgICAgICBwc0VuY0MtPkxUUFF1YW50
TG93Q29tcGxleGl0eSAgICAgICAgICAgPSAwOwotICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9T
dXJ2aXZvcnMgICAgICAgICAgICAgPSAxNjsKKyAgICAgICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vy
dml2b3JzICAgICAgICAgICAgID0gODsKICAgICAgICAgcHNFbmNDLT53YXJwaW5nX1ExNiAgICAg
ICAgICAgICAgICAgICAgID0gcHNFbmNDLT5mc19rSHogKiBTSUxLX0ZJWF9DT05TVCggV0FSUElO
R19NVUxUSVBMSUVSLCAxNiApOwogICAgIH0gZWxzZSB7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hF
c3RpbWF0aW9uQ29tcGxleGl0eSAgICAgICA9IFNJTEtfUEVfTUFYX0NPTVBMRVg7CiAgICAgICAg
IHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNiAgICA9IFNJTEtfRklYX0NPTlNU
KCAwLjcsIDE2ICk7CiAgICAgICAgIHBzRW5jQy0+cGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIgICAg
ICAgICA9IDE2OwotICAgICAgICBwc0VuY0MtPnNoYXBpbmdMUENPcmRlciAgICAgICAgICAgICAg
ICAgPSAxNjsKKyAgICAgICAgcHNFbmNDLT5zaGFwaW5nTFBDT3JkZXIgICAgICAgICAgICAgICAg
ID0gMjQ7CiAgICAgICAgIHBzRW5jQy0+bGFfc2hhcGUgICAgICAgICAgICAgICAgICAgICAgICA9
IDUgKiBwc0VuY0MtPmZzX2tIejsKICAgICAgICAgcHNFbmNDLT5uU3RhdGVzRGVsYXllZERlY2lz
aW9uICAgICAgICAgID0gTUFYX0RFTF9ERUNfU1RBVEVTOwogICAgICAgICBwc0VuY0MtPnVzZUlu
dGVycG9sYXRlZE5MU0ZzICAgICAgICAgICAgPSAxOwotICAgICAgICBwc0VuY0MtPkxUUFF1YW50
TG93Q29tcGxleGl0eSAgICAgICAgICAgPSAwOwotICAgICAgICBwc0VuY0MtPk5MU0ZfTVNWUV9T
dXJ2aXZvcnMgICAgICAgICAgICAgPSAzMjsKKyAgICAgICAgcHNFbmNDLT5OTFNGX01TVlFfU3Vy
dml2b3JzICAgICAgICAgICAgID0gMTY7CiAgICAgICAgIHBzRW5jQy0+d2FycGluZ19RMTYgICAg
ICAgICAgICAgICAgICAgICA9IHBzRW5jQy0+ZnNfa0h6ICogU0lMS19GSVhfQ09OU1QoIFdBUlBJ
TkdfTVVMVElQTElFUiwgMTYgKTsKICAgICB9CiAKQEAgLTM4Nyw0MCArMzk2LDI2IEBAIHN0YXRp
YyBvcHVzX2ludCBzaWxrX3NldHVwX2NvbXBsZXhpdHkoCiAgICAgc2lsa19hc3NlcnQoIHBzRW5j
Qy0+d2FycGluZ19RMTYgICAgICAgICAgICAgPD0gMzI3NjcgICAgICAgICAgICAgICAgICAgICk7
CiAgICAgc2lsa19hc3NlcnQoIHBzRW5jQy0+bGFfc2hhcGUgICAgICAgICAgICAgICAgPD0gTEFf
U0hBUEVfTUFYICAgICAgICAgICAgICk7CiAgICAgc2lsa19hc3NlcnQoIHBzRW5jQy0+c2hhcGVX
aW5MZW5ndGggICAgICAgICAgPD0gU0hBUEVfTFBDX1dJTl9NQVggICAgICAgICk7Ci0gICAgc2ls
a19hc3NlcnQoIHBzRW5jQy0+TkxTRl9NU1ZRX1N1cnZpdm9ycyAgICAgPD0gTkxTRl9WUV9NQVhf
U1VSVklWT1JTICAgICk7CiAKICAgICByZXR1cm4gcmV0OwogfQogCiBzdGF0aWMgT1BVU19JTkxJ
TkUgb3B1c19pbnQgc2lsa19zZXR1cF9MQlJSKAogICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAg
ICAgICAqcHNFbmNDLCAgICAgICAgICAgIC8qIEkvTyAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBUYXJnZXRSYXRlX2JwcyAgICAgIC8qIEkg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfRW5jQ29udHJvbFN0cnVj
dCAqZW5jQ29udHJvbCAgICAgICAgIC8qIEkgICAgICAgICAgICAgICAgICAgICAgICAqLwogKQog
ewogICAgIG9wdXNfaW50ICAgTEJSUl9pbl9wcmV2aW91c19wYWNrZXQsIHJldCA9IFNJTEtfTk9f
RVJST1I7Ci0gICAgb3B1c19pbnQzMiBMQlJSX3JhdGVfdGhyZXNfYnBzOwogCiAgICAgTEJSUl9p
bl9wcmV2aW91c19wYWNrZXQgPSBwc0VuY0MtPkxCUlJfZW5hYmxlZDsKLSAgICBwc0VuY0MtPkxC
UlJfZW5hYmxlZCA9IDA7Ci0gICAgaWYoIHBzRW5jQy0+dXNlSW5CYW5kRkVDICYmIHBzRW5jQy0+
UGFja2V0TG9zc19wZXJjID4gMCApIHsKLSAgICAgICAgaWYoIHBzRW5jQy0+ZnNfa0h6ID09IDgg
KSB7Ci0gICAgICAgICAgICBMQlJSX3JhdGVfdGhyZXNfYnBzID0gTEJSUl9OQl9NSU5fUkFURV9C
UFM7Ci0gICAgICAgIH0gZWxzZSBpZiggcHNFbmNDLT5mc19rSHogPT0gMTIgKSB7Ci0gICAgICAg
ICAgICBMQlJSX3JhdGVfdGhyZXNfYnBzID0gTEJSUl9NQl9NSU5fUkFURV9CUFM7CisgICAgcHNF
bmNDLT5MQlJSX2VuYWJsZWQgPSBlbmNDb250cm9sLT5MQlJSX2NvZGVkOworICAgIGlmKCBwc0Vu
Y0MtPkxCUlJfZW5hYmxlZCApIHsKKyAgICAgICAgLyogU2V0IGdhaW4gaW5jcmVhc2UgZm9yIGNv
ZGluZyBMQlJSIGV4Y2l0YXRpb24gKi8KKyAgICAgICAgaWYoIExCUlJfaW5fcHJldmlvdXNfcGFj
a2V0ID09IDAgKSB7CisgICAgICAgICAgICAvKiBQcmV2aW91cyBwYWNrZXQgZGlkIG5vdCBoYXZl
IExCUlIsIGFuZCB3YXMgdGhlcmVmb3JlIGNvZGVkIGF0IGEgaGlnaGVyIGJpdHJhdGUgKi8KKyAg
ICAgICAgICAgIHBzRW5jQy0+TEJSUl9HYWluSW5jcmVhc2VzID0gNzsKICAgICAgICAgfSBlbHNl
IHsKLSAgICAgICAgICAgIExCUlJfcmF0ZV90aHJlc19icHMgPSBMQlJSX1dCX01JTl9SQVRFX0JQ
UzsKLSAgICAgICAgfQotICAgICAgICBMQlJSX3JhdGVfdGhyZXNfYnBzID0gc2lsa19TTVVMV0Io
IHNpbGtfTVVMKCBMQlJSX3JhdGVfdGhyZXNfYnBzLCAxMjUgLSBzaWxrX21pbiggcHNFbmNDLT5Q
YWNrZXRMb3NzX3BlcmMsIDI1ICkgKSwgU0lMS19GSVhfQ09OU1QoIDAuMDEsIDE2ICkgKTsKLQot
ICAgICAgICBpZiggVGFyZ2V0UmF0ZV9icHMgPiBMQlJSX3JhdGVfdGhyZXNfYnBzICkgewotICAg
ICAgICAgICAgLyogU2V0IGdhaW4gaW5jcmVhc2UgZm9yIGNvZGluZyBMQlJSIGV4Y2l0YXRpb24g
Ki8KLSAgICAgICAgICAgIGlmKCBMQlJSX2luX3ByZXZpb3VzX3BhY2tldCA9PSAwICkgewotICAg
ICAgICAgICAgICAgIC8qIFByZXZpb3VzIHBhY2tldCBkaWQgbm90IGhhdmUgTEJSUiwgYW5kIHdh
cyB0aGVyZWZvcmUgY29kZWQgYXQgYSBoaWdoZXIgYml0cmF0ZSAqLwotICAgICAgICAgICAgICAg
IHBzRW5jQy0+TEJSUl9HYWluSW5jcmVhc2VzID0gNzsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0g
ICAgICAgICAgICAgICAgcHNFbmNDLT5MQlJSX0dhaW5JbmNyZWFzZXMgPSBzaWxrX21heF9pbnQo
IDcgLSBzaWxrX1NNVUxXQiggKG9wdXNfaW50MzIpcHNFbmNDLT5QYWNrZXRMb3NzX3BlcmMsIFNJ
TEtfRklYX0NPTlNUKCAwLjQsIDE2ICkgKSwgMiApOwotICAgICAgICAgICAgfQotICAgICAgICAg
ICAgcHNFbmNDLT5MQlJSX2VuYWJsZWQgPSAxOworICAgICAgICAgICAgcHNFbmNDLT5MQlJSX0dh
aW5JbmNyZWFzZXMgPSBzaWxrX21heF9pbnQoIDcgLSBzaWxrX1NNVUxXQiggKG9wdXNfaW50MzIp
cHNFbmNDLT5QYWNrZXRMb3NzX3BlcmMsIFNJTEtfRklYX0NPTlNUKCAwLjQsIDE2ICkgKSwgMiAp
OwogICAgICAgICB9CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVidWcuaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWJ1
Zy5oCmluZGV4IGVmYjZkM2U5OWU3ZjgzMTc1ZmUwMzQyZGUwMDRjODY3YzA4YWY4ZGIuLjZmNjhj
MWNhMGYwMjI1NzczMzAzOGUwZjkxYzQxOGMzMTlhOTg2YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWJ1
Zy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9kZWJ1Zy5oCkBAIC0zOSwyMyArMzksMTAgQEAgZXh0ZXJuICJDIgogCiB1
bnNpZ25lZCBsb25nIEdldEhpZ2hSZXNvbHV0aW9uVGltZSh2b2lkKTsgLyogTyAgdGltZSBpbiB1
c2VjKi8KIAotLyogbWFrZSBTSUxLX0RFQlVHIGRlcGVuZGVudCBvbiBjb21waWxlcidzIF9ERUJV
RyAqLwotI2lmIGRlZmluZWQgX1dJTjMyCi0gICAgI2lmZGVmIF9ERUJVRwotICAgICAgICAjZGVm
aW5lIFNJTEtfREVCVUcgIDEKLSAgICAjZWxzZQotICAgICAgICAjZGVmaW5lIFNJTEtfREVCVUcg
IDAKLSAgICAjZW5kaWYKLQotICAgIC8qIG92ZXJydWxlIHRoZSBhYm92ZSAqLwotICAgICNpZiAw
Ci0gICAgLyogICNkZWZpbmUgTk9fQVNTRVJUUyovCi0gICAgI3VuZGVmICBTSUxLX0RFQlVHCi0g
ICAgI2RlZmluZSBTSUxLX0RFQlVHICAxCi0gICAgI2VuZGlmCi0jZWxzZQotICAgICNkZWZpbmUg
U0lMS19ERUJVRyAgMAotI2VuZGlmCisvKiBTZXQgdG8gMSB0byBlbmFibGUgREVCVUdfU1RPUkVf
REFUQSgpIG1hY3JvcyBmb3IgZHVtcGluZworICogaW50ZXJtZWRpYXRlIHNpZ25hbHMgZnJvbSB0
aGUgY29kZWMuCisgKi8KKyNkZWZpbmUgU0lMS19ERUJVRyAwCiAKIC8qIEZsYWcgZm9yIHVzaW5n
IHRpbWVycyAqLwogI2RlZmluZSBTSUxLX1RJQ19UT0MgICAgMApkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Rl
Y29kZV9jb3JlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX2NvcmUuYwppbmRleCBlNTY5YzBlNzJiM2UxNzE4MjZk
NzMwYTRiZTY0ODM2ZmIwZWMwZDlhLi5mZDRlODU3YWZhOGFjY2M2ZDdmYWQyMDNiYjk2MDE4ODlh
ZDAxZDk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX2NvcmUuYworKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX2Nv
cmUuYwpAQCAtMjI1LDggKzIyNSw2IEBAIHZvaWQgc2lsa19kZWNvZGVfY29yZSgKICAgICAgICAg
ICAgIHB4cVsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2lsa19SU0hJRlRfUk9VTkQo
IHNpbGtfU01VTFdXKCBzTFBDX1ExNFsgTUFYX0xQQ19PUkRFUiArIGkgXSwgR2Fpbl9RMTAgKSwg
OCApICk7CiAgICAgICAgIH0KIAotICAgICAgICAvKiBERUJVR19TVE9SRV9EQVRBKCBkZWMucGNt
LCBweHEsIHBzRGVjLT5zdWJmcl9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MTYgKSApICovCi0K
ICAgICAgICAgLyogVXBkYXRlIExQQyBmaWx0ZXIgc3RhdGUgKi8KICAgICAgICAgc2lsa19tZW1j
cHkoIHNMUENfUTE0LCAmc0xQQ19RMTRbIHBzRGVjLT5zdWJmcl9sZW5ndGggXSwgTUFYX0xQQ19P
UkRFUiAqIHNpemVvZiggb3B1c19pbnQzMiApICk7CiAgICAgICAgIHBleGNfUTE0ICs9IHBzRGVj
LT5zdWJmcl9sZW5ndGg7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX2ZyYW1lLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVj
b2RlX2ZyYW1lLmMKaW5kZXggYTYwNWQ5NWFjNmFiMTBhN2FjZWY3YTVmYTU3ZTMzZTA0MGJiMGY4
Ni4uZGZhNzNjNGEyOTY3MDYzNGFlYjcwMDYxMjUyYWRhNzEzNmVjMmRjMiAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2RlY29kZV9mcmFtZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9kZWNvZGVfZnJhbWUuYwpAQCAtOTcsNiArOTcs
NyBAQCBvcHVzX2ludCBzaWxrX2RlY29kZV9mcmFtZSgKICAgICAgICAgcHNEZWMtPmZpcnN0X2Zy
YW1lX2FmdGVyX3Jlc2V0ID0gMDsKICAgICB9IGVsc2UgewogICAgICAgICAvKiBIYW5kbGUgcGFj
a2V0IGxvc3MgYnkgZXh0cmFwb2xhdGlvbiAqLworICAgICAgICBwc0RlYy0+aW5kaWNlcy5zaWdu
YWxUeXBlID0gcHNEZWMtPnByZXZTaWduYWxUeXBlOwogICAgICAgICBzaWxrX1BMQyggcHNEZWMs
IHBzRGVjQ3RybCwgcE91dCwgMSwgYXJjaCApOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Rl
Y29kZV9wYXJhbWV0ZXJzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX3BhcmFtZXRlcnMuYwppbmRleCBlMzQ1YjFk
Y2VmYjk0NjA2Yjg5Y2E2YTFiYTA3MDAwYjRlZmI0NDJmLi5hNTZhNDA5ODU4NzRmNTc5YjNkNDA5
MjFmNTZkMGNlNDAxY2Q0ODFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZGVjb2RlX3BhcmFtZXRlcnMuYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3NpbGsvZGVjb2RlX3BhcmFtZXRlcnMuYwpAQCAtNTIsNyArNTIsNyBAQCB2b2lkIHNpbGtf
ZGVjb2RlX3BhcmFtZXRlcnMoCiAgICAgc2lsa19OTFNGX2RlY29kZSggcE5MU0ZfUTE1LCBwc0Rl
Yy0+aW5kaWNlcy5OTFNGSW5kaWNlcywgcHNEZWMtPnBzTkxTRl9DQiApOwogCiAgICAgLyogQ29u
dmVydCBOTFNGIHBhcmFtZXRlcnMgdG8gQVIgcHJlZGljdGlvbiBmaWx0ZXIgY29lZmZpY2llbnRz
ICovCi0gICAgc2lsa19OTFNGMkEoIHBzRGVjQ3RybC0+UHJlZENvZWZfUTEyWyAxIF0sIHBOTFNG
X1ExNSwgcHNEZWMtPkxQQ19vcmRlciApOworICAgIHNpbGtfTkxTRjJBKCBwc0RlY0N0cmwtPlBy
ZWRDb2VmX1ExMlsgMSBdLCBwTkxTRl9RMTUsIHBzRGVjLT5MUENfb3JkZXIsIHBzRGVjLT5hcmNo
ICk7CiAKICAgICAvKiBJZiBqdXN0IHJlc2V0LCBlLmcuLCBiZWNhdXNlIGludGVybmFsIEZzIGNo
YW5nZWQsIGRvIG5vdCBhbGxvdyBpbnRlcnBvbGF0aW9uICovCiAgICAgLyogaW1wcm92ZXMgdGhl
IGNhc2Ugb2YgcGFja2V0IGxvc3MgaW4gdGhlIGZpcnN0IGZyYW1lIGFmdGVyIGEgc3dpdGNoICAg
ICAgICAgICAqLwpAQCAtNjksNyArNjksNyBAQCB2b2lkIHNpbGtfZGVjb2RlX3BhcmFtZXRlcnMo
CiAgICAgICAgIH0KIAogICAgICAgICAvKiBDb252ZXJ0IE5MU0YgcGFyYW1ldGVycyB0byBBUiBw
cmVkaWN0aW9uIGZpbHRlciBjb2VmZmljaWVudHMgKi8KLSAgICAgICAgc2lsa19OTFNGMkEoIHBz
RGVjQ3RybC0+UHJlZENvZWZfUTEyWyAwIF0sIHBOTFNGMF9RMTUsIHBzRGVjLT5MUENfb3JkZXIg
KTsKKyAgICAgICAgc2lsa19OTFNGMkEoIHBzRGVjQ3RybC0+UHJlZENvZWZfUTEyWyAwIF0sIHBO
TFNGMF9RMTUsIHBzRGVjLT5MUENfb3JkZXIsIHBzRGVjLT5hcmNoICk7CiAgICAgfSBlbHNlIHsK
ICAgICAgICAgLyogQ29weSBMUEMgY29lZmZpY2llbnRzIGZvciBmaXJzdCBoYWxmIGZyb20gc2Vj
b25kIGhhbGYgKi8KICAgICAgICAgc2lsa19tZW1jcHkoIHBzRGVjQ3RybC0+UHJlZENvZWZfUTEy
WyAwIF0sIHBzRGVjQ3RybC0+UHJlZENvZWZfUTEyWyAxIF0sIHBzRGVjLT5MUENfb3JkZXIgKiBz
aXplb2YoIG9wdXNfaW50MTYgKSApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2RlZmluZS5oIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Rl
ZmluZS5oCmluZGV4IDE5YzliMDBlMjU5ZTc3MTZiY2IwMjM1NGUzOTE0YjEzOTYwMmYzNTMuLjIy
ZmQ3MjBiOTc2YWYyMzNlYzJkYWZjODNkNmQ5NWJlMjc5M2VkNmIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9k
ZWZpbmUuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZGVmaW5lLmgKQEAgLTU2LDYgKzU2LDEyIEBAIGV4dGVybiAiQyIK
IC8qIERUWCBzZXR0aW5ncyAqLwogI2RlZmluZSBOQl9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFgg
ICAgICAgICAgICAgMTAgICAgICAvKiBlcSAyMDAgbXMgKi8KICNkZWZpbmUgTUFYX0NPTlNFQ1VU
SVZFX0RUWCAgICAgICAgICAgICAgICAgICAgIDIwICAgICAgLyogZXEgNDAwIG1zICovCisjZGVm
aW5lIERUWF9BQ1RJVklUWV9USFJFU0hPTEQgICAgICAgICAgICAgICAgICAwLjFmCisKKy8qIFZB
RCBkZWNpc2lvbiAqLworI2RlZmluZSBWQURfTk9fREVDSVNJT04gICAgICAgICAgICAgICAgICAg
ICAgICAgLTEKKyNkZWZpbmUgVkFEX05PX0FDVElWSVRZICAgICAgICAgICAgICAgICAgICAgICAg
IDAKKyNkZWZpbmUgVkFEX0FDVElWSVRZICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEKIAog
LyogTWF4aW11bSBzYW1wbGluZyBmcmVxdWVuY3kgKi8KICNkZWZpbmUgTUFYX0ZTX0tIWiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDE2CkBAIC0xNDcsNyArMTUzLDcgQEAgZXh0ZXJuICJD
IgogI2RlZmluZSBVU0VfSEFSTV9TSEFQSU5HICAgICAgICAgICAgICAgICAgICAgICAgMQogCiAv
KiBNYXggTFBDIG9yZGVyIG9mIG5vaXNlIHNoYXBpbmcgZmlsdGVycyAqLwotI2RlZmluZSBNQVhf
U0hBUEVfTFBDX09SREVSICAgICAgICAgICAgICAgICAgICAgMTYKKyNkZWZpbmUgTUFYX1NIQVBF
X0xQQ19PUkRFUiAgICAgICAgICAgICAgICAgICAgIDI0CiAKICNkZWZpbmUgSEFSTV9TSEFQRV9G
SVJfVEFQUyAgICAgICAgICAgICAgICAgICAgIDMKIApAQCAtMTU3LDggKzE2Myw3IEBAIGV4dGVy
biAiQyIKICNkZWZpbmUgTFRQX0JVRl9MRU5HVEggICAgICAgICAgICAgICAgICAgICAgICAgIDUx
MgogI2RlZmluZSBMVFBfTUFTSyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCBMVFBf
QlVGX0xFTkdUSCAtIDEgKQogCi0jZGVmaW5lIERFQ0lTSU9OX0RFTEFZICAgICAgICAgICAgICAg
ICAgICAgICAgICAzMgotI2RlZmluZSBERUNJU0lPTl9ERUxBWV9NQVNLICAgICAgICAgICAgICAg
ICAgICAgKCBERUNJU0lPTl9ERUxBWSAtIDEgKQorI2RlZmluZSBERUNJU0lPTl9ERUxBWSAgICAg
ICAgICAgICAgICAgICAgICAgICAgNDAKIAogLyogTnVtYmVyIG9mIHN1YmZyYW1lcyBmb3IgZXhj
aXRhdGlvbiBlbnRyb3B5IGNvZGluZyAqLwogI2RlZmluZSBTSEVMTF9DT0RFQ19GUkFNRV9MRU5H
VEggICAgICAgICAgICAgICAgMTYKQEAgLTE3MywxMSArMTc4LDcgQEAgZXh0ZXJuICJDIgogCiAj
ZGVmaW5lIE1BWF9NQVRSSVhfU0laRSAgICAgICAgICAgICAgICAgICAgICAgICBNQVhfTFBDX09S
REVSIC8qIE1heCBvZiBMUEMgT3JkZXIgYW5kIExUUCBvcmRlciAqLwogCi0jaWYoIE1BWF9MUENf
T1JERVIgPiBERUNJU0lPTl9ERUxBWSApCiAjIGRlZmluZSBOU1FfTFBDX0JVRl9MRU5HVEggICAg
ICAgICAgICAgICAgICAgICBNQVhfTFBDX09SREVSCi0jZWxzZQotIyBkZWZpbmUgTlNRX0xQQ19C
VUZfTEVOR1RIICAgICAgICAgICAgICAgICAgICAgREVDSVNJT05fREVMQVkKLSNlbmRpZgogCiAv
KioqKioqKioqKioqKioqKioqKioqKioqKioqLwogLyogVm9pY2UgYWN0aXZpdHkgZGV0ZWN0b3Ig
Ki8KQEAgLTIwNSw3ICsyMDYsNiBAQCBleHRlcm4gIkMiCiAvKioqKioqKioqKioqKioqKioqLwog
I2RlZmluZSBOTFNGX1dfUSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMgogI2RlZmlu
ZSBOTFNGX1ZRX01BWF9WRUNUT1JTICAgICAgICAgICAgICAgICAgICAgMzIKLSNkZWZpbmUgTkxT
Rl9WUV9NQVhfU1VSVklWT1JTICAgICAgICAgICAgICAgICAgIDMyCiAjZGVmaW5lIE5MU0ZfUVVB
TlRfTUFYX0FNUExJVFVERSAgICAgICAgICAgICAgICA0CiAjZGVmaW5lIE5MU0ZfUVVBTlRfTUFY
X0FNUExJVFVERV9FWFQgICAgICAgICAgICAxMAogI2RlZmluZSBOTFNGX1FVQU5UX0xFVkVMX0FE
SiAgICAgICAgICAgICAgICAgICAgMC4xCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZW5jX0FQSS5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2VuY19BUEkuYwppbmRleCBmODA2MDI4NmRiYWZhOWExZmE3ODBmNGViNzQ0NmFkZGRmMmVkMDhl
Li4wYTYyYTNjMWQ3MmFmZDBhNjIxMjhlNDJkY2FhODAzYWQwZjQ0MzE4IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZW5jX0FQSS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9lbmNfQVBJLmMKQEAgLTE0NCw3ICsxNDQsOCBAQCBvcHVz
X2ludCBzaWxrX0VuY29kZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8g
ICAgUmV0dXJucyBlcnJvciBjbwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAg
blNhbXBsZXNJbiwgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBzYW1wbGVzIGluIGlucHV0IHZl
Y3RvciAgICAgICAgICAgICAgICovCiAgICAgZWNfZW5jICAgICAgICAgICAgICAgICAgICAgICAg
ICAqcHNSYW5nZUVuYywgICAgICAgIC8qIEkvTyAgQ29tcHJlc3NvciBkYXRhIHN0cnVjdHVyZSAg
ICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAg
ICAgICpuQnl0ZXNPdXQsICAgICAgICAgLyogSS9PICBOdW1iZXIgb2YgYnl0ZXMgaW4gcGF5bG9h
ZCAoaW5wdXQ6IE1heCBieXRlcykgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgcHJlZmlsbEZsYWcgICAgICAgICAvKiBJICAgIEZsYWcgdG8gaW5kaWNhdGUgcHJlZmls
bGluZyBidWZmZXJzIG5vIGNvZGluZyAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAg
ICAgICAgICBwcmVmaWxsRmxhZywgICAgICAgIC8qIEkgICAgRmxhZyB0byBpbmRpY2F0ZSBwcmVm
aWxsaW5nIGJ1ZmZlcnMgbm8gY29kaW5nICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICAg
ICAgICAgICAgIGFjdGl2aXR5ICAgICAgICAgICAgLyogSSAgICBEZWNpc2lvbiBvZiBPcHVzIHZv
aWNlIGFjdGl2aXR5IGRldGVjdG9yICAgICAgICAqLwogKQogewogICAgIG9wdXNfaW50ICAgbiwg
aSwgbkJpdHMsIGZsYWdzLCB0bXBfcGF5bG9hZFNpemVfbXMgPSAwLCB0bXBfY29tcGxleGl0eSA9
IDAsIHJldCA9IDA7CkBAIC0yMzMsMTEgKzIzNCwxMCBAQCBvcHVzX2ludCBzaWxrX0VuY29kZSgg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBlcnJvciBj
bwogICAgICAgICB9CiAgICAgfQogCi0gICAgVGFyZ2V0UmF0ZV9icHMgPSBzaWxrX1JTSElGVDMy
KCBlbmNDb250cm9sLT5iaXRSYXRlLCBlbmNDb250cm9sLT5uQ2hhbm5lbHNJbnRlcm5hbCAtIDEg
KTsKICAgICBmb3IoIG4gPSAwOyBuIDwgZW5jQ29udHJvbC0+bkNoYW5uZWxzSW50ZXJuYWw7IG4r
KyApIHsKICAgICAgICAgLyogRm9yY2UgdGhlIHNpZGUgY2hhbm5lbCB0byB0aGUgc2FtZSByYXRl
IGFzIHRoZSBtaWQgKi8KICAgICAgICAgb3B1c19pbnQgZm9yY2VfZnNfa0h6ID0gKG49PTEpID8g
cHNFbmMtPnN0YXRlX0Z4eFswXS5zQ21uLmZzX2tIeiA6IDA7Ci0gICAgICAgIGlmKCAoIHJldCA9
IHNpbGtfY29udHJvbF9lbmNvZGVyKCAmcHNFbmMtPnN0YXRlX0Z4eFsgbiBdLCBlbmNDb250cm9s
LCBUYXJnZXRSYXRlX2JwcywgcHNFbmMtPmFsbG93QmFuZHdpZHRoU3dpdGNoLCBuLCBmb3JjZV9m
c19rSHogKSApICE9IDAgKSB7CisgICAgICAgIGlmKCAoIHJldCA9IHNpbGtfY29udHJvbF9lbmNv
ZGVyKCAmcHNFbmMtPnN0YXRlX0Z4eFsgbiBdLCBlbmNDb250cm9sLCBwc0VuYy0+YWxsb3dCYW5k
d2lkdGhTd2l0Y2gsIG4sIGZvcmNlX2ZzX2tIeiApICkgIT0gMCApIHsKICAgICAgICAgICAgIHNp
bGtfYXNzZXJ0KCAwICk7CiAgICAgICAgICAgICBSRVNUT1JFX1NUQUNLOwogICAgICAgICAgICAg
cmV0dXJuIHJldDsKQEAgLTQxNiw3ICs0MTYsNiBAQCBvcHVzX2ludCBzaWxrX0VuY29kZSggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBlcnJvciBjbwog
ICAgICAgICAgICAgICAgICAgICAvKiBSZXNldCBzaWRlIGNoYW5uZWwgZW5jb2RlciBtZW1vcnkg
Zm9yIGZpcnN0IGZyYW1lIHdpdGggc2lkZSBjb2RpbmcgKi8KICAgICAgICAgICAgICAgICAgICAg
aWYoIHBzRW5jLT5wcmV2X2RlY29kZV9vbmx5X21pZGRsZSA9PSAxICkgewogICAgICAgICAgICAg
ICAgICAgICAgICAgc2lsa19tZW1zZXQoICZwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc1NoYXBlLCAg
ICAgICAgICAgICAgIDAsIHNpemVvZiggcHNFbmMtPnN0YXRlX0Z4eFsgMSBdLnNTaGFwZSApICk7
Ci0gICAgICAgICAgICAgICAgICAgICAgICBzaWxrX21lbXNldCggJnBzRW5jLT5zdGF0ZV9GeHhb
IDEgXS5zUHJlZmlsdCwgICAgICAgICAgICAgMCwgc2l6ZW9mKCBwc0VuYy0+c3RhdGVfRnh4WyAx
IF0uc1ByZWZpbHQgKSApOwogICAgICAgICAgICAgICAgICAgICAgICAgc2lsa19tZW1zZXQoICZw
c0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5zTlNRLCAgICAgICAgICAgIDAsIHNpemVvZiggcHNF
bmMtPnN0YXRlX0Z4eFsgMSBdLnNDbW4uc05TUSApICk7CiAgICAgICAgICAgICAgICAgICAgICAg
ICBzaWxrX21lbXNldCggcHNFbmMtPnN0YXRlX0Z4eFsgMSBdLnNDbW4ucHJldl9OTFNGcV9RMTUs
ICAgMCwgc2l6ZW9mKCBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5wcmV2X05MU0ZxX1ExNSAp
ICk7CiAgICAgICAgICAgICAgICAgICAgICAgICBzaWxrX21lbXNldCggJnBzRW5jLT5zdGF0ZV9G
eHhbIDEgXS5zQ21uLnNMUC5Jbl9MUF9TdGF0ZSwgMCwgc2l6ZW9mKCBwc0VuYy0+c3RhdGVfRnh4
WyAxIF0uc0Ntbi5zTFAuSW5fTFBfU3RhdGUgKSApOwpAQCAtNDI3LDcgKzQyNiw3IEBAIG9wdXNf
aW50IHNpbGtfRW5jb2RlKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAg
ICBSZXR1cm5zIGVycm9yIGNvCiAgICAgICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c3RhdGVf
Rnh4WyAxIF0uc0Ntbi5zTlNRLnByZXZfZ2Fpbl9RMTYgICAgICA9IDY1NTM2OwogICAgICAgICAg
ICAgICAgICAgICAgICAgcHNFbmMtPnN0YXRlX0Z4eFsgMSBdLnNDbW4uZmlyc3RfZnJhbWVfYWZ0
ZXJfcmVzZXQgPSAxOwogICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAg
IHNpbGtfZW5jb2RlX2RvX1ZBRF9GeHgoICZwc0VuYy0+c3RhdGVfRnh4WyAxIF0gKTsKKyAgICAg
ICAgICAgICAgICAgICAgc2lsa19lbmNvZGVfZG9fVkFEX0Z4eCggJnBzRW5jLT5zdGF0ZV9GeHhb
IDEgXSwgYWN0aXZpdHkgKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
ICAgICAgICBwc0VuYy0+c3RhdGVfRnh4WyAxIF0uc0Ntbi5WQURfZmxhZ3NbIHBzRW5jLT5zdGF0
ZV9GeHhbIDAgXS5zQ21uLm5GcmFtZXNFbmNvZGVkIF0gPSAwOwogICAgICAgICAgICAgICAgIH0K
QEAgLTQ0Miw3ICs0NDEsNyBAQCBvcHVzX2ludCBzaWxrX0VuY29kZSggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmV0dXJucyBlcnJvciBjbwogICAgICAgICAgICAg
ICAgIHNpbGtfbWVtY3B5KCBwc0VuYy0+c3RhdGVfRnh4WyAwIF0uc0Ntbi5pbnB1dEJ1ZiwgcHNF
bmMtPnNTdGVyZW8uc01pZCwgMiAqIHNpemVvZiggb3B1c19pbnQxNiApICk7CiAgICAgICAgICAg
ICAgICAgc2lsa19tZW1jcHkoIHBzRW5jLT5zU3RlcmVvLnNNaWQsICZwc0VuYy0+c3RhdGVfRnh4
WyAwIF0uc0Ntbi5pbnB1dEJ1ZlsgcHNFbmMtPnN0YXRlX0Z4eFsgMCBdLnNDbW4uZnJhbWVfbGVu
Z3RoIF0sIDIgKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOwogICAgICAgICAgICAgfQotICAgICAg
ICAgICAgc2lsa19lbmNvZGVfZG9fVkFEX0Z4eCggJnBzRW5jLT5zdGF0ZV9GeHhbIDAgXSApOwor
ICAgICAgICAgICAgc2lsa19lbmNvZGVfZG9fVkFEX0Z4eCggJnBzRW5jLT5zdGF0ZV9GeHhbIDAg
XSwgYWN0aXZpdHkgKTsKIAogICAgICAgICAgICAgLyogRW5jb2RlICovCiAgICAgICAgICAgICBm
b3IoIG4gPSAwOyBuIDwgZW5jQ29udHJvbC0+bkNoYW5uZWxzSW50ZXJuYWw7IG4rKyApIHsKQEAg
LTU1Nyw2ICs1NTYsMTAgQEAgb3B1c19pbnQgc2lsa19FbmNvZGUoICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBPICAgIFJldHVybnMgZXJyb3IgY28KICAgICAgICAgfQogICAg
IH0KIAorICAgIGVuY0NvbnRyb2wtPnNpZ25hbFR5cGUgPSBwc0VuYy0+c3RhdGVfRnh4WzBdLnND
bW4uaW5kaWNlcy5zaWduYWxUeXBlOworICAgIGVuY0NvbnRyb2wtPm9mZnNldCA9IHNpbGtfUXVh
bnRpemF0aW9uX09mZnNldHNfUTEwCisgICAgICAgICAgICAgICAgICAgICAgICAgWyBwc0VuYy0+
c3RhdGVfRnh4WzBdLnNDbW4uaW5kaWNlcy5zaWduYWxUeXBlID4+IDEgXQorICAgICAgICAgICAg
ICAgICAgICAgICAgIFsgcHNFbmMtPnN0YXRlX0Z4eFswXS5zQ21uLmluZGljZXMucXVhbnRPZmZz
ZXRUeXBlIF07CiAgICAgUkVTVE9SRV9TVEFDSzsKICAgICByZXR1cm4gcmV0OwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2ZpeGVkL2FybS93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9hcm0uaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9maXhlZC9hcm0vd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYXJtLmgKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MTk5MmU0MzI4ODUxOWY4YWRiNWZmNGQzYzM4MjQ4MDRjZGZhNDRjNQotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9maXhlZC9hcm0vd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYXJtLmgKQEAgLTAs
MCArMSw2OCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqCitDb3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIElu
Yy4KK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0OgorLSBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCit0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLSBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKy0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRl
cm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKK25hbWVzIG9mIHNwZWNp
ZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCitwcm9k
dWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdy
aXR0ZW4KK3Blcm1pc3Npb24uCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKK0FORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
K0lNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKK0xJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KiovCisKKyNpZm5kZWYgU0lMS19XQVJQRURfQVVUT0NPUlJFTEFUSU9OX0ZJWF9BUk1fSAorIyBk
ZWZpbmUgU0lMS19XQVJQRURfQVVUT0NPUlJFTEFUSU9OX0ZJWF9BUk1fSAorCisjIGluY2x1ZGUg
ImNlbHQvYXJtL2FybWNwdS5oIgorCisjIGlmIGRlZmluZWQoRklYRURfUE9JTlQpCisKKyMgIGlm
IGRlZmluZWQoT1BVU19BUk1fTUFZX0hBVkVfTkVPTl9JTlRSKQordm9pZCBzaWxrX3dhcnBlZF9h
dXRvY29ycmVsYXRpb25fRklYX25lb24oCisgICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAg
ICAgICAqY29yciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBSZXN1
bHQgW29yZGVyICsgMV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICpz
Y2FsZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFNjYWxpbmcgb2Yg
dGhlIGNvcnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKmlucHV0LCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgZGF0YSB0byBjb3Jy
ZWxhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICB3YXJwaW5nX1ExNiwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBXYXJwaW5nIGNvZWZmaWNpZW50ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1dCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0
IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgQ29ycmVsYXRpb24gb3JkZXIgKGV2ZW4pICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCispOworCisjICBpZiAhZGVm
aW5lZChPUFVTX0hBVkVfUlRDRCkgJiYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT04pCisj
ICAgZGVmaW5lIE9WRVJSSURFX3NpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVggKDEpCisj
ICAgZGVmaW5lIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoY29yciwgc2NhbGUsIGlu
cHV0LCB3YXJwaW5nX1ExNiwgbGVuZ3RoLCBvcmRlciwgYXJjaCkgXAorICAgICgodm9pZCkoYXJj
aCksIFBSRVNVTUVfTkVPTihzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKShjb3JyLCBz
Y2FsZSwgaW5wdXQsIHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVyKSkKKyMgIGVuZGlmCisjICBl
bmRpZgorCisjICBpZiAhZGVmaW5lZChPVkVSUklERV9zaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRp
b25fRklYKQorLypJcyBydW4tdGltZSBDUFUgZGV0ZWN0aW9uIGVuYWJsZWQgb24gdGhpcyBwbGF0
Zm9ybT8qLworIyAgIGlmIGRlZmluZWQoT1BVU19IQVZFX1JUQ0QpICYmIChkZWZpbmVkKE9QVVNf
QVJNX01BWV9IQVZFX05FT05fSU5UUikgJiYgIWRlZmluZWQoT1BVU19BUk1fUFJFU1VNRV9ORU9O
X0lOVFIpKQorZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxLX1dBUlBFRF9BVVRPQ09SUkVMQVRJT05f
RklYX0lNUExbT1BVU19BUkNITUFTSysxXSkob3B1c19pbnQzMiosIG9wdXNfaW50KiwgY29uc3Qg
b3B1c19pbnQxNiosIGNvbnN0IG9wdXNfaW50LCBjb25zdCBvcHVzX2ludCwgY29uc3Qgb3B1c19p
bnQpOworIyAgICBkZWZpbmUgT1ZFUlJJREVfc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJ
WCAoMSkKKyMgICAgZGVmaW5lIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoY29yciwg
c2NhbGUsIGlucHV0LCB3YXJwaW5nX1ExNiwgbGVuZ3RoLCBvcmRlciwgYXJjaCkgXAorICAgICgo
KlNJTEtfV0FSUEVEX0FVVE9DT1JSRUxBVElPTl9GSVhfSU1QTFsoYXJjaCkmT1BVU19BUkNITUFT
S10pKGNvcnIsIHNjYWxlLCBpbnB1dCwgd2FycGluZ19RMTYsIGxlbmd0aCwgb3JkZXIpKQorIyAg
IGVsaWYgZGVmaW5lZChPUFVTX0FSTV9QUkVTVU1FX05FT05fSU5UUikKKyMgICAgZGVmaW5lIE9W
RVJSSURFX3NpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVggKDEpCisjICAgIGRlZmluZSBz
aWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYKGNvcnIsIHNjYWxlLCBpbnB1dCwgd2FycGlu
Z19RMTYsIGxlbmd0aCwgb3JkZXIsIGFyY2gpIFwKKyAgICAoKHZvaWQpKGFyY2gpLCBzaWxrX3dh
cnBlZF9hdXRvY29ycmVsYXRpb25fRklYX25lb24oY29yciwgc2NhbGUsIGlucHV0LCB3YXJwaW5n
X1ExNiwgbGVuZ3RoLCBvcmRlcikpCisjICAgZW5kaWYKKyMgIGVuZGlmCisKKyMgZW5kaWYgLyog
ZW5kIEZJWEVEX1BPSU5UICovCisKKyNlbmRpZiAvKiBlbmQgU0lMS19XQVJQRURfQVVUT0NPUlJF
TEFUSU9OX0ZJWF9BUk1fSCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2FybS93YXJwZWRfYXV0
b2NvcnJlbGF0aW9uX0ZJWF9uZW9uX2ludHIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9hcm0vd2FycGVkX2F1dG9j
b3JyZWxhdGlvbl9GSVhfbmVvbl9pbnRyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDBhNzBjYjUxZmZiZjM5YzM3
ZWEwNDFiYTY2ZWQwNjRmMGQzMDg0ZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9hcm0v
d2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfbmVvbl9pbnRyLmMKQEAgLTAsMCArMSwyNjAgQEAK
Ky8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKgorQ29weXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuLCBKZWFuLU1h
cmMgVmFsaW4KK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0OgorLSBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
Cit0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
LSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKy0gTmVpdGhlciB0aGUgbmFtZSBv
ZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKK25hbWVzIG9m
IHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
Citwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yIHdyaXR0ZW4KK3Blcm1pc3Npb24uCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKK0FORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUKK0lNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKK0xJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKiovCisKKyNpZmRlZiBIQVZFX0NPTkZJR19ICisjaW5jbHVkZSAiY29uZmlnLmgiCisj
ZW5kaWYKKworI2luY2x1ZGUgPGFybV9uZW9uLmg+CisjaWZkZWYgT1BVU19DSEVDS19BU00KKyMg
aW5jbHVkZSA8c3RyaW5nLmg+CisjZW5kaWYKKyNpbmNsdWRlICJzdGFja19hbGxvYy5oIgorI2lu
Y2x1ZGUgIm1haW5fRklYLmgiCisKK3N0YXRpYyBPUFVTX0lOTElORSB2b2lkIGNhbGNfY29ycigg
Y29uc3Qgb3B1c19pbnQzMiAqY29uc3QgaW5wdXRfUVMsIG9wdXNfaW50NjQgKmNvbnN0IGNvcnJf
UUMsIGNvbnN0IG9wdXNfaW50IG9mZnNldCwgY29uc3QgaW50MzJ4NF90IHN0YXRlX1FTX3MzMng0
ICkKK3sKKyAgICBpbnQ2NHgyX3QgY29ycl9RQ19zNjR4MlsgMiBdLCB0X3M2NHgyWyAyIF07Cisg
ICAgY29uc3QgaW50MzJ4NF90IGlucHV0X1FTX3MzMng0ID0gdmxkMXFfczMyKCBpbnB1dF9RUyAr
IG9mZnNldCApOworICAgIGNvcnJfUUNfczY0eDJbIDAgXSA9IHZsZDFxX3M2NCggY29ycl9RQyAr
IG9mZnNldCArIDAgKTsKKyAgICBjb3JyX1FDX3M2NHgyWyAxIF0gPSB2bGQxcV9zNjQoIGNvcnJf
UUMgKyBvZmZzZXQgKyAyICk7CisgICAgdF9zNjR4MlsgMCBdID0gdm11bGxfczMyKCB2Z2V0X2xv
d19zMzIoIHN0YXRlX1FTX3MzMng0ICksIHZnZXRfbG93X3MzMiggaW5wdXRfUVNfczMyeDQgKSAp
OworICAgIHRfczY0eDJbIDEgXSA9IHZtdWxsX3MzMiggdmdldF9oaWdoX3MzMiggc3RhdGVfUVNf
czMyeDQgKSwgdmdldF9oaWdoX3MzMiggaW5wdXRfUVNfczMyeDQgKSApOworICAgIGNvcnJfUUNf
czY0eDJbIDAgXSA9IHZzcmFxX25fczY0KCBjb3JyX1FDX3M2NHgyWyAwIF0sIHRfczY0eDJbIDAg
XSwgMiAqIFFTIC0gUUMgKTsKKyAgICBjb3JyX1FDX3M2NHgyWyAxIF0gPSB2c3JhcV9uX3M2NCgg
Y29ycl9RQ19zNjR4MlsgMSBdLCB0X3M2NHgyWyAxIF0sIDIgKiBRUyAtIFFDICk7CisgICAgdnN0
MXFfczY0KCBjb3JyX1FDICsgb2Zmc2V0ICsgMCwgY29ycl9RQ19zNjR4MlsgMCBdICk7CisgICAg
dnN0MXFfczY0KCBjb3JyX1FDICsgb2Zmc2V0ICsgMiwgY29ycl9RQ19zNjR4MlsgMSBdICk7Cit9
CisKK3N0YXRpYyBPUFVTX0lOTElORSBpbnQzMng0X3QgY2FsY19zdGF0ZSggY29uc3QgaW50MzJ4
NF90IHN0YXRlX1FTMF9zMzJ4NCwgY29uc3QgaW50MzJ4NF90IHN0YXRlX1FTMF8xX3MzMng0LCBj
b25zdCBpbnQzMng0X3Qgc3RhdGVfUVMxXzFfczMyeDQsIGNvbnN0IGludDMyeDRfdCB3YXJwaW5n
X1ExNl9zMzJ4NCApCit7CisgICAgaW50MzJ4NF90IHRfczMyeDQgPSB2c3VicV9zMzIoIHN0YXRl
X1FTMF9zMzJ4NCwgc3RhdGVfUVMwXzFfczMyeDQgKTsKKyAgICB0X3MzMng0ID0gdnFkbXVsaHFf
czMyKCB0X3MzMng0LCB3YXJwaW5nX1ExNl9zMzJ4NCApOworICAgIHJldHVybiB2YWRkcV9zMzIo
IHN0YXRlX1FTMV8xX3MzMng0LCB0X3MzMng0ICk7Cit9CisKK3ZvaWQgc2lsa193YXJwZWRfYXV0
b2NvcnJlbGF0aW9uX0ZJWF9uZW9uKAorICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICAg
ICAgKmNvcnIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUmVzdWx0
IFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgICAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAqc2Nh
bGUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBTY2FsaW5nIG9mIHRo
ZSBjb3JyZWxhdGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICppbnB1dCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IGRhdGEgdG8gY29ycmVs
YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgd2FycGluZ19RMTYsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgV2FycGluZyBjb2VmZmljaWVudCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
Y29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBsZW5ndGgsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGggb2YgaW5wdXQgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIENvcnJlbGF0aW9uIG9yZGVyIChldmVuKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworKQoreworICAgIGlmKCAoIE1B
WF9TSEFQRV9MUENfT1JERVIgPiAyNCApIHx8ICggb3JkZXIgPCA2ICkgKSB7CisgICAgICAgIHNp
bGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYyggY29yciwgc2NhbGUsIGlucHV0LCB3YXJw
aW5nX1ExNiwgbGVuZ3RoLCBvcmRlciApOworICAgIH0gZWxzZSB7CisgICAgICAgIG9wdXNfaW50
ICAgICAgIG4sIGksIGxzaDsKKyAgICAgICAgb3B1c19pbnQ2NCAgICAgY29ycl9RQ1sgTUFYX1NI
QVBFX0xQQ19PUkRFUiArIDEgXSA9IHsgMCB9OyAvKiBJbiByZXZlcnNlIG9yZGVyICovCisgICAg
ICAgIG9wdXNfaW50NjQgICAgIGNvcnJfUUNfb3JkZXJUOworICAgICAgICBpbnQ2NHgyX3QgICAg
ICBsc2hfczY0eDI7CisgICAgICAgIGNvbnN0IG9wdXNfaW50IG9yZGVyVCA9ICggb3JkZXIgKyAz
ICkgJiB+MzsKKyAgICAgICAgb3B1c19pbnQ2NCAgICAgKmNvcnJfUUNUOworICAgICAgICBvcHVz
X2ludDMyICAgICAqaW5wdXRfUVM7CisgICAgICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIGlucHV0
X1FTVCApOworICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBzdGF0ZSApOworICAgICAgICBT
QVZFX1NUQUNLOworCisgICAgICAgIC8qIE9yZGVyIG11c3QgYmUgZXZlbiAqLworICAgICAgICBz
aWxrX2Fzc2VydCggKCBvcmRlciAmIDEgKSA9PSAwICk7CisgICAgICAgIHNpbGtfYXNzZXJ0KCAy
ICogUVMgLSBRQyA+PSAwICk7CisKKyAgICAgICAgQUxMT0MoIGlucHV0X1FTVCwgbGVuZ3RoICsg
MiAqIE1BWF9TSEFQRV9MUENfT1JERVIsIG9wdXNfaW50MzIgKTsKKworICAgICAgICBpbnB1dF9R
UyA9IGlucHV0X1FTVDsKKyAgICAgICAgLyogaW5wdXRfUVMgaGFzIHplcm8gcGFkZGluZ3MgaW4g
dGhlIGJlZ2lubmluZyBhbmQgZW5kLiAqLworICAgICAgICB2c3QxcV9zMzIoIGlucHV0X1FTLCB2
ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlucHV0X1FTICs9IDQ7CisgICAgICAgIHZzdDFx
X3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMyKCAwICkgKTsKKyAgICAgICAgaW5wdXRfUVMgKz0g
NDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUywgdmR1cHFfbl9zMzIoIDAgKSApOworICAg
ICAgICBpbnB1dF9RUyArPSA0OworICAgICAgICB2c3QxcV9zMzIoIGlucHV0X1FTLCB2ZHVwcV9u
X3MzMiggMCApICk7CisgICAgICAgIGlucHV0X1FTICs9IDQ7CisgICAgICAgIHZzdDFxX3MzMigg
aW5wdXRfUVMsIHZkdXBxX25fczMyKCAwICkgKTsKKyAgICAgICAgaW5wdXRfUVMgKz0gNDsKKyAg
ICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUywgdmR1cHFfbl9zMzIoIDAgKSApOworICAgICAgICBp
bnB1dF9RUyArPSA0OworCisgICAgICAgIC8qIExvb3Agb3ZlciBzYW1wbGVzICovCisgICAgICAg
IGZvciggbiA9IDA7IG4gPCBsZW5ndGggLSA3OyBuICs9IDgsIGlucHV0X1FTICs9IDggKSB7Cisg
ICAgICAgICAgICBjb25zdCBpbnQxNng4X3QgdDBfczE2eDQgPSB2bGQxcV9zMTYoIGlucHV0ICsg
biApOworICAgICAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUyArIDAsIHZzaGxsX25fczE2KCB2
Z2V0X2xvd19zMTYoIHQwX3MxNng0ICksIFFTICkgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMigg
aW5wdXRfUVMgKyA0LCB2c2hsbF9uX3MxNiggdmdldF9oaWdoX3MxNiggdDBfczE2eDQgKSwgUVMg
KSApOworICAgICAgICB9CisgICAgICAgIGZvciggOyBuIDwgbGVuZ3RoOyBuKyssIGlucHV0X1FT
KysgKSB7CisgICAgICAgICAgICBpbnB1dF9RU1sgMCBdID0gc2lsa19MU0hJRlQzMiggKG9wdXNf
aW50MzIpaW5wdXRbIG4gXSwgUVMgKTsKKyAgICAgICAgfQorICAgICAgICB2c3QxcV9zMzIoIGlu
cHV0X1FTLCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlucHV0X1FTICs9IDQ7CisgICAg
ICAgIHZzdDFxX3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMyKCAwICkgKTsKKyAgICAgICAgaW5w
dXRfUVMgKz0gNDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUywgdmR1cHFfbl9zMzIoIDAg
KSApOworICAgICAgICBpbnB1dF9RUyArPSA0OworICAgICAgICB2c3QxcV9zMzIoIGlucHV0X1FT
LCB2ZHVwcV9uX3MzMiggMCApICk7CisgICAgICAgIGlucHV0X1FTICs9IDQ7CisgICAgICAgIHZz
dDFxX3MzMiggaW5wdXRfUVMsIHZkdXBxX25fczMyKCAwICkgKTsKKyAgICAgICAgaW5wdXRfUVMg
Kz0gNDsKKyAgICAgICAgdnN0MXFfczMyKCBpbnB1dF9RUywgdmR1cHFfbl9zMzIoIDAgKSApOwor
ICAgICAgICBpbnB1dF9RUyA9IGlucHV0X1FTVCArIE1BWF9TSEFQRV9MUENfT1JERVIgLSBvcmRl
clQ7CisKKyAgICAgICAgLyogVGhlIGZvbGxvd2luZyBsb29wIHJ1bnMgKCBsZW5ndGggKyBvcmRl
ciApIHRpbWVzLCB3aXRoICggb3JkZXIgKSBleHRyYSBlcGlsb2d1ZXMuICAgICAgICAgICAgICAg
ICAgKi8KKyAgICAgICAgLyogVGhlIHplcm8gcGFkZGluZ3MgaW4gaW5wdXRfUVMgZ3VhcmFudGVl
IGNvcnJfUUMncyBjb3JyZWN0bmVzcyBldmVuIHdpdGggdGhlIGV4dHJhIGVwaWxvZ3Vlcy4gICAg
ICAgKi8KKyAgICAgICAgLyogVGhlIHZhbHVlcyBvZiBzdGF0ZV9RUyB3aWxsIGJlIHBvbGx1dGVk
IGJ5IHRoZSBleHRyYSBlcGlsb2d1ZXMsIGhvd2V2ZXIgdGhleSBhcmUgdGVtcG9yYXJ5IHZhbHVl
cy4gKi8KKworICAgICAgICAvKiBLZWVwIHRoZSBDIGNvZGUgaGVyZSB0byBoZWxwIHVuZGVyc3Rh
bmQgdGhlIGludHJpbnNpY3Mgb3B0aW1pemF0aW9uLiAqLworICAgICAgICAvKgorICAgICAgICB7
CisgICAgICAgICAgICBvcHVzX2ludDMyIHN0YXRlX1FTWyAyIF1bIE1BWF9TSEFQRV9MUENfT1JE
RVIgKyAxIF0gPSB7IDAgfTsKKyAgICAgICAgICAgIG9wdXNfaW50MzIgKnN0YXRlX1FTVFsgMyBd
OworICAgICAgICAgICAgc3RhdGVfUVNUWyAwIF0gPSBzdGF0ZV9RU1sgMCBdOworICAgICAgICAg
ICAgc3RhdGVfUVNUWyAxIF0gPSBzdGF0ZV9RU1sgMSBdOworICAgICAgICAgICAgZm9yKCBuID0g
MDsgbiA8IGxlbmd0aCArIG9yZGVyOyBuKyssIGlucHV0X1FTKysgKSB7CisgICAgICAgICAgICAg
ICAgc3RhdGVfUVNUWyAwIF1bIG9yZGVyVCBdID0gaW5wdXRfUVNbIG9yZGVyVCBdOworICAgICAg
ICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBvcmRlclQ7IGkrKyApIHsKKyAgICAgICAgICAgICAg
ICAgICAgY29ycl9RQ1sgaSBdICs9IHNpbGtfUlNISUZUNjQoIHNpbGtfU01VTEwoIHN0YXRlX1FT
VFsgMCBdWyBpIF0sIGlucHV0X1FTWyBpIF0gKSwgMiAqIFFTIC0gUUMgKTsKKyAgICAgICAgICAg
ICAgICAgICAgc3RhdGVfUVNUWyAxIF1bIGkgXSA9IHNpbGtfU01MQVdCKCBzdGF0ZV9RU1RbIDEg
XVsgaSArIDEgXSwgc3RhdGVfUVNUWyAwIF1bIGkgXSAtIHN0YXRlX1FTVFsgMCBdWyBpICsgMSBd
LCB3YXJwaW5nX1ExNiApOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBzdGF0
ZV9RU1RbIDIgXSA9IHN0YXRlX1FTVFsgMCBdOworICAgICAgICAgICAgICAgIHN0YXRlX1FTVFsg
MCBdID0gc3RhdGVfUVNUWyAxIF07CisgICAgICAgICAgICAgICAgc3RhdGVfUVNUWyAxIF0gPSBz
dGF0ZV9RU1RbIDIgXTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICAqLworCisg
ICAgICAgIHsKKyAgICAgICAgICAgIGNvbnN0IGludDMyeDRfdCB3YXJwaW5nX1ExNl9zMzJ4NCA9
IHZkdXBxX25fczMyKCB3YXJwaW5nX1ExNiA8PCAxNSApOworICAgICAgICAgICAgY29uc3Qgb3B1
c19pbnQzMiAqaW4gPSBpbnB1dF9RUyArIG9yZGVyVDsKKyAgICAgICAgICAgIG9wdXNfaW50IG8g
PSBvcmRlclQ7CisgICAgICAgICAgICBpbnQzMng0X3Qgc3RhdGVfUVNfczMyeDRbIDMgXVsgMiBd
OworCisgICAgICAgICAgICBBTExPQyggc3RhdGUsIGxlbmd0aCArIG9yZGVyVCwgb3B1c19pbnQz
MiApOworICAgICAgICAgICAgc3RhdGVfUVNfczMyeDRbIDIgXVsgMSBdID0gdmR1cHFfbl9zMzIo
IDAgKTsKKworICAgICAgICAgICAgLyogQ2FsY3VsYXRlIDggdGFwcyBvZiBhbGwgaW5wdXRzIGlu
IGVhY2ggbG9vcC4gKi8KKyAgICAgICAgICAgIGRvIHsKKyAgICAgICAgICAgICAgICBzdGF0ZV9R
U19zMzJ4NFsgMCBdWyAwIF0gPSBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAxIF0gPQorICAgICAgICAg
ICAgICAgIHN0YXRlX1FTX3MzMng0WyAxIF1bIDAgXSA9IHN0YXRlX1FTX3MzMng0WyAxIF1bIDEg
XSA9IHZkdXBxX25fczMyKCAwICk7CisgICAgICAgICAgICAgICAgbiA9IDA7CisgICAgICAgICAg
ICAgICAgZG8geworICAgICAgICAgICAgICAgICAgICBjYWxjX2NvcnIoIGlucHV0X1FTICsgbiwg
Y29ycl9RQywgbyAtIDgsIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSApOworICAgICAgICAgICAg
ICAgICAgICBjYWxjX2NvcnIoIGlucHV0X1FTICsgbiwgY29ycl9RQywgbyAtIDQsIHN0YXRlX1FT
X3MzMng0WyAwIF1bIDEgXSApOworICAgICAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsg
MiBdWyAxIF0gPSB2bGQxcV9zMzIoIGluICsgbiApOworICAgICAgICAgICAgICAgICAgICB2c3Qx
cV9sYW5lX3MzMiggc3RhdGUgKyBuLCBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0sIDAgKTsKKyAg
ICAgICAgICAgICAgICAgICAgc3RhdGVfUVNfczMyeDRbIDIgXVsgMCBdID0gdmV4dHFfczMyKCBz
dGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0sIHN0YXRlX1FTX3MzMng0WyAwIF1bIDEgXSwgMSApOwor
ICAgICAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAxIF0gPSB2ZXh0cV9zMzIo
IHN0YXRlX1FTX3MzMng0WyAwIF1bIDEgXSwgc3RhdGVfUVNfczMyeDRbIDIgXVsgMSBdLCAxICk7
CisgICAgICAgICAgICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSA9IGNhbGNfc3Rh
dGUoIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSwgc3RhdGVfUVNfczMyeDRbIDIgXVsgMCBdLCBz
dGF0ZV9RU19zMzJ4NFsgMSBdWyAwIF0sIHdhcnBpbmdfUTE2X3MzMng0ICk7CisgICAgICAgICAg
ICAgICAgICAgIHN0YXRlX1FTX3MzMng0WyAwIF1bIDEgXSA9IGNhbGNfc3RhdGUoIHN0YXRlX1FT
X3MzMng0WyAwIF1bIDEgXSwgc3RhdGVfUVNfczMyeDRbIDIgXVsgMSBdLCBzdGF0ZV9RU19zMzJ4
NFsgMSBdWyAxIF0sIHdhcnBpbmdfUTE2X3MzMng0ICk7CisgICAgICAgICAgICAgICAgICAgIHN0
YXRlX1FTX3MzMng0WyAxIF1bIDAgXSA9IHN0YXRlX1FTX3MzMng0WyAyIF1bIDAgXTsKKyAgICAg
ICAgICAgICAgICAgICAgc3RhdGVfUVNfczMyeDRbIDEgXVsgMSBdID0gc3RhdGVfUVNfczMyeDRb
IDIgXVsgMSBdOworICAgICAgICAgICAgICAgIH0gd2hpbGUoICsrbiA8ICggbGVuZ3RoICsgb3Jk
ZXIgKSApOworICAgICAgICAgICAgICAgIGluID0gc3RhdGU7CisgICAgICAgICAgICAgICAgbyAt
PSA4OworICAgICAgICAgICAgfSB3aGlsZSggbyA+IDQgKTsKKworICAgICAgICAgICAgaWYoIG8g
KSB7CisgICAgICAgICAgICAgICAgLyogQ2FsY3VsYXRlIHRoZSBsYXN0IDQgdGFwcyBvZiBhbGwg
aW5wdXRzLiAqLworICAgICAgICAgICAgICAgIG9wdXNfaW50MzIgKnN0YXRlVCA9IHN0YXRlOwor
ICAgICAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBvID09IDQgKTsKKyAgICAgICAgICAgICAgICBz
dGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0gPSBzdGF0ZV9RU19zMzJ4NFsgMSBdWyAwIF0gPSB2ZHVw
cV9uX3MzMiggMCApOworICAgICAgICAgICAgICAgIG4gPSBsZW5ndGggKyBvcmRlcjsKKyAgICAg
ICAgICAgICAgICBkbyB7CisgICAgICAgICAgICAgICAgICAgIGNhbGNfY29yciggaW5wdXRfUVMs
IGNvcnJfUUMsIDAsIHN0YXRlX1FTX3MzMng0WyAwIF1bIDAgXSApOworICAgICAgICAgICAgICAg
ICAgICBzdGF0ZV9RU19zMzJ4NFsgMiBdWyAwIF0gPSB2bGQxcV9zMzIoIHN0YXRlVCApOworICAg
ICAgICAgICAgICAgICAgICB2c3QxcV9sYW5lX3MzMiggc3RhdGVULCBzdGF0ZV9RU19zMzJ4NFsg
MCBdWyAwIF0sIDAgKTsKKyAgICAgICAgICAgICAgICAgICAgc3RhdGVfUVNfczMyeDRbIDIgXVsg
MCBdID0gdmV4dHFfczMyKCBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0sIHN0YXRlX1FTX3MzMng0
WyAyIF1bIDAgXSwgMSApOworICAgICAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMCBd
WyAwIF0gPSBjYWxjX3N0YXRlKCBzdGF0ZV9RU19zMzJ4NFsgMCBdWyAwIF0sIHN0YXRlX1FTX3Mz
Mng0WyAyIF1bIDAgXSwgc3RhdGVfUVNfczMyeDRbIDEgXVsgMCBdLCB3YXJwaW5nX1ExNl9zMzJ4
NCApOworICAgICAgICAgICAgICAgICAgICBzdGF0ZV9RU19zMzJ4NFsgMSBdWyAwIF0gPSBzdGF0
ZV9RU19zMzJ4NFsgMiBdWyAwIF07CisgICAgICAgICAgICAgICAgICAgIGlucHV0X1FTKys7Cisg
ICAgICAgICAgICAgICAgICAgIHN0YXRlVCsrOworICAgICAgICAgICAgICAgIH0gd2hpbGUoIC0t
biApOworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgeworICAgICAgICAgICAg
Y29uc3Qgb3B1c19pbnQxNiAqaW5wdXRUID0gaW5wdXQ7CisgICAgICAgICAgICBpbnQzMng0X3Qg
dF9zMzJ4NDsKKyAgICAgICAgICAgIGludDY0eDFfdCB0X3M2NHgxOworICAgICAgICAgICAgaW50
NjR4Ml90IHRfczY0eDIgPSB2ZHVwcV9uX3M2NCggMCApOworICAgICAgICAgICAgZm9yKCBuID0g
MDsgbiA8PSBsZW5ndGggLSA4OyBuICs9IDggKSB7CisgICAgICAgICAgICAgICAgaW50MTZ4OF90
IGlucHV0X3MxNng4ID0gdmxkMXFfczE2KCBpbnB1dFQgKTsKKyAgICAgICAgICAgICAgICB0X3Mz
Mng0ID0gdm11bGxfczE2KCB2Z2V0X2xvd19zMTYoIGlucHV0X3MxNng4ICksIHZnZXRfbG93X3Mx
NiggaW5wdXRfczE2eDggKSApOworICAgICAgICAgICAgICAgIHRfczMyeDQgPSB2bWxhbF9zMTYo
IHRfczMyeDQsIHZnZXRfaGlnaF9zMTYoIGlucHV0X3MxNng4ICksIHZnZXRfaGlnaF9zMTYoIGlu
cHV0X3MxNng4ICkgKTsKKyAgICAgICAgICAgICAgICB0X3M2NHgyID0gdmFkZHdfczMyKCB0X3M2
NHgyLCB2Z2V0X2xvd19zMzIoIHRfczMyeDQgKSApOworICAgICAgICAgICAgICAgIHRfczY0eDIg
PSB2YWRkd19zMzIoIHRfczY0eDIsIHZnZXRfaGlnaF9zMzIoIHRfczMyeDQgKSApOworICAgICAg
ICAgICAgICAgIGlucHV0VCArPSA4OworICAgICAgICAgICAgfQorICAgICAgICAgICAgdF9zNjR4
MSA9IHZhZGRfczY0KCB2Z2V0X2xvd19zNjQoIHRfczY0eDIgKSwgdmdldF9oaWdoX3M2NCggdF9z
NjR4MiApICk7CisgICAgICAgICAgICBjb3JyX1FDX29yZGVyVCA9IHZnZXRfbGFuZV9zNjQoIHRf
czY0eDEsIDAgKTsKKyAgICAgICAgICAgIGZvciggOyBuIDwgbGVuZ3RoOyBuKysgKSB7CisgICAg
ICAgICAgICAgICAgY29ycl9RQ19vcmRlclQgKz0gc2lsa19TTVVMTCggaW5wdXRbIG4gXSwgaW5w
dXRbIG4gXSApOworICAgICAgICAgICAgfQorICAgICAgICAgICAgY29ycl9RQ19vcmRlclQgPSBz
aWxrX0xTSElGVDY0KCBjb3JyX1FDX29yZGVyVCwgUUMgKTsKKyAgICAgICAgICAgIGNvcnJfUUNb
IG9yZGVyVCBdID0gY29ycl9RQ19vcmRlclQ7CisgICAgICAgIH0KKworICAgICAgICBjb3JyX1FD
VCA9IGNvcnJfUUMgKyBvcmRlclQgLSBvcmRlcjsKKyAgICAgICAgbHNoID0gc2lsa19DTFo2NCgg
Y29ycl9RQ19vcmRlclQgKSAtIDM1OworICAgICAgICBsc2ggPSBzaWxrX0xJTUlUKCBsc2gsIC0x
MiAtIFFDLCAzMCAtIFFDICk7CisgICAgICAgICpzY2FsZSA9IC0oIFFDICsgbHNoICk7CisgICAg
ICAgIHNpbGtfYXNzZXJ0KCAqc2NhbGUgPj0gLTMwICYmICpzY2FsZSA8PSAxMiApOworICAgICAg
ICBsc2hfczY0eDIgPSB2ZHVwcV9uX3M2NCggbHNoICk7CisgICAgICAgIGZvciggaSA9IDA7IGkg
PD0gb3JkZXIgLSAzOyBpICs9IDQgKSB7CisgICAgICAgICAgICBpbnQzMng0X3QgY29ycl9zMzJ4
NDsKKyAgICAgICAgICAgIGludDY0eDJfdCBjb3JyX1FDMF9zNjR4MiwgY29ycl9RQzFfczY0eDI7
CisgICAgICAgICAgICBjb3JyX1FDMF9zNjR4MiA9IHZsZDFxX3M2NCggY29ycl9RQ1QgKyBpICk7
CisgICAgICAgICAgICBjb3JyX1FDMV9zNjR4MiA9IHZsZDFxX3M2NCggY29ycl9RQ1QgKyBpICsg
MiApOworICAgICAgICAgICAgY29ycl9RQzBfczY0eDIgPSB2c2hscV9zNjQoIGNvcnJfUUMwX3M2
NHgyLCBsc2hfczY0eDIgKTsKKyAgICAgICAgICAgIGNvcnJfUUMxX3M2NHgyID0gdnNobHFfczY0
KCBjb3JyX1FDMV9zNjR4MiwgbHNoX3M2NHgyICk7CisgICAgICAgICAgICBjb3JyX3MzMng0ICAg
ICA9IHZjb21iaW5lX3MzMiggdm1vdm5fczY0KCBjb3JyX1FDMV9zNjR4MiApLCB2bW92bl9zNjQo
IGNvcnJfUUMwX3M2NHgyICkgKTsKKyAgICAgICAgICAgIGNvcnJfczMyeDQgICAgID0gdnJldjY0
cV9zMzIoIGNvcnJfczMyeDQgKTsKKyAgICAgICAgICAgIHZzdDFxX3MzMiggY29yciArIG9yZGVy
IC0gaSAtIDMsIGNvcnJfczMyeDQgKTsKKyAgICAgICAgfQorICAgICAgICBpZiggbHNoID49IDAg
KSB7CisgICAgICAgICAgICBmb3IoIDsgaSA8IG9yZGVyICsgMTsgaSsrICkgeworICAgICAgICAg
ICAgICAgIGNvcnJbIG9yZGVyIC0gaSBdID0gKG9wdXNfaW50MzIpc2lsa19DSEVDS19GSVQzMigg
c2lsa19MU0hJRlQ2NCggY29ycl9RQ1RbIGkgXSwgbHNoICkgKTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGZvciggOyBpIDwgb3JkZXIgKyAxOyBpKysgKSB7
CisgICAgICAgICAgICAgICAgY29yclsgb3JkZXIgLSBpIF0gPSAob3B1c19pbnQzMilzaWxrX0NI
RUNLX0ZJVDMyKCBzaWxrX1JTSElGVDY0KCBjb3JyX1FDVFsgaSBdLCAtbHNoICkgKTsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBzaWxrX2Fzc2VydCggY29ycl9RQ1RbIG9yZGVy
IF0gPj0gMCApOyAvKiBJZiBicmVha2luZywgZGVjcmVhc2UgUUMqLworICAgICAgICBSRVNUT1JF
X1NUQUNLOworICAgIH0KKworI2lmZGVmIE9QVVNfQ0hFQ0tfQVNNCisgICAgeworICAgICAgICBv
cHVzX2ludDMyIGNvcnJfY1sgTUFYX1NIQVBFX0xQQ19PUkRFUiArIDEgXTsKKyAgICAgICAgb3B1
c19pbnQgICBzY2FsZV9jOworICAgICAgICBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25fRklY
X2MoIGNvcnJfYywgJnNjYWxlX2MsIGlucHV0LCB3YXJwaW5nX1ExNiwgbGVuZ3RoLCBvcmRlciAp
OworICAgICAgICBzaWxrX2Fzc2VydCggIW1lbWNtcCggY29ycl9jLCBjb3JyLCBzaXplb2YoIGNv
cnJfY1sgMCBdICkgKiAoIG9yZGVyICsgMSApICkgKTsKKyAgICAgICAgc2lsa19hc3NlcnQoIHNj
YWxlX2MgPT0gKnNjYWxlICk7CisgICAgfQorI2VuZGlmCit9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4
ZWQvYnVyZ19tb2RpZmllZF9GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9idXJnX21vZGlmaWVkX0ZJWC5jCmlu
ZGV4IDE3ZDBlMDk5M2NmNWJhMTg4ZGIxODI5YzEyZGVkNzRjYmUwNzE5MTUuLjgwZWRiZGZhOGE2
NTE0MDg0OGMyZTg5MDMxOTBiY2Q4NWE1ZjkwYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9idXJn
X21vZGlmaWVkX0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9idXJnX21vZGlmaWVkX0ZJWC5jCkBAIC0z
Nyw3ICszNyw3IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2RlZmluZSBNQVhfRlJB
TUVfU0laRSAgICAgICAgICAgICAgMzg0ICAgICAgICAgICAgIC8qIHN1YmZyX2xlbmd0aCAqIG5i
X3N1YmZyID0gKCAwLjAwNSAqIDE2MDAwICsgMTYgKSAqIDQgPSAzODQgKi8KIAogI2RlZmluZSBR
QSAgICAgICAgICAgICAgICAgICAgICAgICAgMjUKLSNkZWZpbmUgTl9CSVRTX0hFQURfUk9PTSAg
ICAgICAgICAgIDIKKyNkZWZpbmUgTl9CSVRTX0hFQURfUk9PTSAgICAgICAgICAgIDMKICNkZWZp
bmUgTUlOX1JTSElGVFMgICAgICAgICAgICAgICAgIC0xNgogI2RlZmluZSBNQVhfUlNISUZUUyAg
ICAgICAgICAgICAgICAgKDMyIC0gUUEpCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9jb3JyTWF0
cml4X0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2NvcnJNYXRyaXhfRklYLmMKaW5kZXggYzFkNDM3Yzc4NTll
M2EyMmMzYWUwZmJlMGQ2Mzc2YjcwODEyYTQzNy4uMWI0YTI5YzIzMmJmZWVhZjhiNmI3YjUzMjU3
N2UyMzRjOTgyZjQyZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2NvcnJNYXRyaXhfRklYLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2ZpeGVkL2NvcnJNYXRyaXhfRklYLmMKQEAgLTU4LDcgKzU4LDcgQEAgdm9pZCBzaWxr
X2NvcnJWZWN0b3JfRklYKAogICAgICAgICBmb3IoIGxhZyA9IDA7IGxhZyA8IG9yZGVyOyBsYWcr
KyApIHsKICAgICAgICAgICAgIGlubmVyX3Byb2QgPSAwOwogICAgICAgICAgICAgZm9yKCBpID0g
MDsgaSA8IEw7IGkrKyApIHsKLSAgICAgICAgICAgICAgICBpbm5lcl9wcm9kICs9IHNpbGtfUlNI
SUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyBpIF0sIHB0cjJbaV0gKSwgcnNoaWZ0cyApOworICAg
ICAgICAgICAgICAgIGlubmVyX3Byb2QgPSBzaWxrX0FERF9SU0hJRlQzMiggaW5uZXJfcHJvZCwg
c2lsa19TTVVMQkIoIHB0cjFbIGkgXSwgcHRyMltpXSApLCByc2hpZnRzICk7CiAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICBYdFsgbGFnIF0gPSBpbm5lcl9wcm9kOyAvKiBYWzosbGFnXScqdCAq
LwogICAgICAgICAgICAgcHRyMS0tOyAvKiBHbyB0byBuZXh0IGNvbHVtbiBvZiBYICovCkBAIC03
Nyw2MSArNzcsNTQgQEAgdm9pZCBzaWxrX2NvcnJNYXRyaXhfRklYKAogICAgIGNvbnN0IG9wdXNf
aW50MTYgICAgICAgICAgICAgICAgKngsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgeCB2ZWN0b3IgW0wgKyBvcmRlciAtIDFdIHVzZWQgdG8gZm9ybSBkYXRhIG1h
dHJpeCBYICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICBMLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBMZW5ndGggb2YgdmVjdG9ycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgIG9yZGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE1h
eCBsYWcgZm9yIGNvcnJlbGF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
aGVhZF9yb29tLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRGVzaXJlZCBo
ZWFkcm9vbSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAqWFgsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBQb2ludGVyIHRvIFgnKlgg
Y29ycmVsYXRpb24gbWF0cml4IFsgb3JkZXIgeCBvcmRlciBdICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgICpyc2hpZnRzLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFJpZ2h0IHNoaWZ0cyBvZiBjb3JyZWxh
dGlvbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgKm5yZywgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBPICAgIEVuZXJneSBvZiB4IHZlY3RvciAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
b3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICAqcnNoaWZ0cywgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogTyAgICBSaWdodCBzaGlmdHMgb2YgY29ycmVsYXRpb25zIGFuZCBl
bmVyZ3kgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBpbnQgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2ggICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKQogewotICAgIG9wdXNfaW50
ICAgICAgICAgaSwgaiwgbGFnLCByc2hpZnRzX2xvY2FsLCBoZWFkX3Jvb21fcnNoaWZ0czsKKyAg
ICBvcHVzX2ludCAgICAgICAgIGksIGosIGxhZzsKICAgICBvcHVzX2ludDMyICAgICAgIGVuZXJn
eTsKICAgICBjb25zdCBvcHVzX2ludDE2ICpwdHIxLCAqcHRyMjsKIAogICAgIC8qIENhbGN1bGF0
ZSBlbmVyZ3kgdG8gZmluZCBzaGlmdCB1c2VkIHRvIGZpdCBpbiAzMiBiaXRzICovCi0gICAgc2ls
a19zdW1fc3FyX3NoaWZ0KCAmZW5lcmd5LCAmcnNoaWZ0c19sb2NhbCwgeCwgTCArIG9yZGVyIC0g
MSApOwotICAgIC8qIEFkZCBzaGlmdHMgdG8gZ2V0IHRoZSBkZXNpcmVkIGhlYWQgcm9vbSAqLwot
ICAgIGhlYWRfcm9vbV9yc2hpZnRzID0gc2lsa19tYXgoIGhlYWRfcm9vbSAtIHNpbGtfQ0xaMzIo
IGVuZXJneSApLCAwICk7Ci0KLSAgICBlbmVyZ3kgPSBzaWxrX1JTSElGVDMyKCBlbmVyZ3ksIGhl
YWRfcm9vbV9yc2hpZnRzICk7Ci0gICAgcnNoaWZ0c19sb2NhbCArPSBoZWFkX3Jvb21fcnNoaWZ0
czsKKyAgICBzaWxrX3N1bV9zcXJfc2hpZnQoIG5yZywgcnNoaWZ0cywgeCwgTCArIG9yZGVyIC0g
MSApOworICAgIGVuZXJneSA9ICpucmc7CiAKICAgICAvKiBDYWxjdWxhdGUgZW5lcmd5IG9mIGZp
cnN0IGNvbHVtbiAoMCkgb2YgWDogWFs6LDBdJypYWzosMF0gKi8KICAgICAvKiBSZW1vdmUgY29u
dHJpYnV0aW9uIG9mIGZpcnN0IG9yZGVyIC0gMSBzYW1wbGVzICovCiAgICAgZm9yKCBpID0gMDsg
aSA8IG9yZGVyIC0gMTsgaSsrICkgewotICAgICAgICBlbmVyZ3kgLT0gc2lsa19SU0hJRlQzMigg
c2lsa19TTVVMQkIoIHhbIGkgXSwgeFsgaSBdICksIHJzaGlmdHNfbG9jYWwgKTsKLSAgICB9Ci0g
ICAgaWYoIHJzaGlmdHNfbG9jYWwgPCAqcnNoaWZ0cyApIHsKLSAgICAgICAgLyogQWRqdXN0IGVu
ZXJneSAqLwotICAgICAgICBlbmVyZ3kgPSBzaWxrX1JTSElGVDMyKCBlbmVyZ3ksICpyc2hpZnRz
IC0gcnNoaWZ0c19sb2NhbCApOwotICAgICAgICByc2hpZnRzX2xvY2FsID0gKnJzaGlmdHM7Cisg
ICAgICAgIGVuZXJneSAtPSBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggeFsgaSBdLCB4WyBp
IF0gKSwgKnJzaGlmdHMgKTsKICAgICB9CiAKICAgICAvKiBDYWxjdWxhdGUgZW5lcmd5IG9mIHJl
bWFpbmluZyBjb2x1bW5zIG9mIFg6IFhbOixqXScqWFs6LGpdICovCiAgICAgLyogRmlsbCBvdXQg
dGhlIGRpYWdvbmFsIG9mIHRoZSBjb3JyZWxhdGlvbiBtYXRyaXggKi8KICAgICBtYXRyaXhfcHRy
KCBYWCwgMCwgMCwgb3JkZXIgKSA9IGVuZXJneTsKKyAgICBzaWxrX2Fzc2VydCggZW5lcmd5ID49
IDAgKTsKICAgICBwdHIxID0gJnhbIG9yZGVyIC0gMSBdOyAvKiBGaXJzdCBzYW1wbGUgb2YgY29s
dW1uIDAgb2YgWCAqLwogICAgIGZvciggaiA9IDE7IGogPCBvcmRlcjsgaisrICkgewotICAgICAg
ICBlbmVyZ3kgPSBzaWxrX1NVQjMyKCBlbmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJC
KCBwdHIxWyBMIC0gaiBdLCBwdHIxWyBMIC0gaiBdICksIHJzaGlmdHNfbG9jYWwgKSApOwotICAg
ICAgICBlbmVyZ3kgPSBzaWxrX0FERDMyKCBlbmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01V
TEJCKCBwdHIxWyAtaiBdLCBwdHIxWyAtaiBdICksIHJzaGlmdHNfbG9jYWwgKSApOworICAgICAg
ICBlbmVyZ3kgPSBzaWxrX1NVQjMyKCBlbmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJC
KCBwdHIxWyBMIC0gaiBdLCBwdHIxWyBMIC0gaiBdICksICpyc2hpZnRzICkgKTsKKyAgICAgICAg
ZW5lcmd5ID0gc2lsa19BREQzMiggZW5lcmd5LCBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQigg
cHRyMVsgLWogXSwgcHRyMVsgLWogXSApLCAqcnNoaWZ0cyApICk7CiAgICAgICAgIG1hdHJpeF9w
dHIoIFhYLCBqLCBqLCBvcmRlciApID0gZW5lcmd5OworICAgICAgICBzaWxrX2Fzc2VydCggZW5l
cmd5ID49IDAgKTsKICAgICB9CiAKICAgICBwdHIyID0gJnhbIG9yZGVyIC0gMiBdOyAvKiBGaXJz
dCBzYW1wbGUgb2YgY29sdW1uIDEgb2YgWCAqLwogICAgIC8qIENhbGN1bGF0ZSB0aGUgcmVtYWlu
aW5nIGVsZW1lbnRzIG9mIHRoZSBjb3JyZWxhdGlvbiBtYXRyaXggKi8KLSAgICBpZiggcnNoaWZ0
c19sb2NhbCA+IDAgKSB7CisgICAgaWYoICpyc2hpZnRzID4gMCApIHsKICAgICAgICAgLyogUmln
aHQgc2hpZnRpbmcgdXNlZCAqLwogICAgICAgICBmb3IoIGxhZyA9IDE7IGxhZyA8IG9yZGVyOyBs
YWcrKyApIHsKICAgICAgICAgICAgIC8qIElubmVyIHByb2R1Y3Qgb2YgY29sdW1uIDAgYW5kIGNv
bHVtbiBsYWc6IFhbOiwwXScqWFs6LGxhZ10gKi8KICAgICAgICAgICAgIGVuZXJneSA9IDA7CiAg
ICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTDsgaSsrICkgewotICAgICAgICAgICAgICAgIGVu
ZXJneSArPSBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggcHRyMVsgaSBdLCBwdHIyW2ldICks
IHJzaGlmdHNfbG9jYWwgKTsKKyAgICAgICAgICAgICAgICBlbmVyZ3kgKz0gc2lsa19SU0hJRlQz
Miggc2lsa19TTVVMQkIoIHB0cjFbIGkgXSwgcHRyMltpXSApLCAqcnNoaWZ0cyApOwogICAgICAg
ICAgICAgfQogICAgICAgICAgICAgLyogQ2FsY3VsYXRlIHJlbWFpbmluZyBvZmYgZGlhZ29uYWw6
IFhbOixqXScqWFs6LGogKyBsYWddICovCiAgICAgICAgICAgICBtYXRyaXhfcHRyKCBYWCwgbGFn
LCAwLCBvcmRlciApID0gZW5lcmd5OwogICAgICAgICAgICAgbWF0cml4X3B0ciggWFgsIDAsIGxh
Zywgb3JkZXIgKSA9IGVuZXJneTsKICAgICAgICAgICAgIGZvciggaiA9IDE7IGogPCAoIG9yZGVy
IC0gbGFnICk7IGorKyApIHsKLSAgICAgICAgICAgICAgICBlbmVyZ3kgPSBzaWxrX1NVQjMyKCBl
bmVyZ3ksIHNpbGtfUlNISUZUMzIoIHNpbGtfU01VTEJCKCBwdHIxWyBMIC0gaiBdLCBwdHIyWyBM
IC0gaiBdICksIHJzaGlmdHNfbG9jYWwgKSApOwotICAgICAgICAgICAgICAgIGVuZXJneSA9IHNp
bGtfQUREMzIoIGVuZXJneSwgc2lsa19SU0hJRlQzMiggc2lsa19TTVVMQkIoIHB0cjFbIC1qIF0s
IHB0cjJbIC1qIF0gKSwgcnNoaWZ0c19sb2NhbCApICk7CisgICAgICAgICAgICAgICAgZW5lcmd5
ID0gc2lsa19TVUIzMiggZW5lcmd5LCBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQiggcHRyMVsg
TCAtIGogXSwgcHRyMlsgTCAtIGogXSApLCAqcnNoaWZ0cyApICk7CisgICAgICAgICAgICAgICAg
ZW5lcmd5ID0gc2lsa19BREQzMiggZW5lcmd5LCBzaWxrX1JTSElGVDMyKCBzaWxrX1NNVUxCQigg
cHRyMVsgLWogXSwgcHRyMlsgLWogXSApLCAqcnNoaWZ0cyApICk7CiAgICAgICAgICAgICAgICAg
bWF0cml4X3B0ciggWFgsIGxhZyArIGosIGosIG9yZGVyICkgPSBlbmVyZ3k7CiAgICAgICAgICAg
ICAgICAgbWF0cml4X3B0ciggWFgsIGosIGxhZyArIGosIG9yZGVyICkgPSBlbmVyZ3k7CiAgICAg
ICAgICAgICB9CkBAIC0xNTMsNiArMTQ2LDUgQEAgdm9pZCBzaWxrX2NvcnJNYXRyaXhfRklYKAog
ICAgICAgICAgICAgcHRyMi0tOy8qIFVwZGF0ZSBwb2ludGVyIHRvIGZpcnN0IHNhbXBsZSBvZiBu
ZXh0IGNvbHVtbiAobGFnKSBpbiBYICovCiAgICAgICAgIH0KICAgICB9Ci0gICAgKnJzaGlmdHMg
PSByc2hpZnRzX2xvY2FsOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZW5jb2RlX2ZyYW1l
X0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2ZpeGVkL2VuY29kZV9mcmFtZV9GSVguYwppbmRleCA1ZWY0NGIwM2ZjNGM1
ODU5OTliY2VjMjgyMzVlMGVkNGE1NTQ4NmIxLi5mNmVlODEzYjk3ZmE1NjRkMzNmOTY0OGUwODBm
OTg0MTU5Yzk0NGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZW5jb2RlX2ZyYW1lX0ZJWC5jCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9maXhlZC9lbmNvZGVfZnJhbWVfRklYLmMKQEAgLTI5LDYgKzI5LDcgQEAgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjZW5kaWYKIAorI2lu
Y2x1ZGUgPHN0ZGxpYi5oPgogI2luY2x1ZGUgIm1haW5fRklYLmgiCiAjaW5jbHVkZSAic3RhY2tf
YWxsb2MuaCIKICNpbmNsdWRlICJ0dW5pbmdfcGFyYW1ldGVycy5oIgpAQCAtMzcsMjYgKzM4LDMz
IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQg
c2lsa19MQlJSX2VuY29kZV9GSVgoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZJWCAgICAgICAg
ICAqcHNFbmMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBQb2ludGVy
IHRvIFNpbGsgRklYIGVuY29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICAgICBzaWxrX2VuY29kZXJfY29udHJvbF9GSVggICAgICAgICpwc0Vu
Y0N0cmwsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU2ls
ayBGSVggZW5jb2RlciBjb250cm9sIHN0cnVjdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgeGZ3X1EzW10sICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgc2lnbmFsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICB4MTZbXSwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBv
cHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgIGNvbmRDb2RpbmcgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIFRoZSB0eXBlIG9mIGNvbmRpdGlvbmFsIGNvZGluZyB1c2Vk
IHNvIGZhciBmb3IgdGhpcyBmcmFtZSAgICAgICAgICAgICAgICAgICAqLwogKTsKIAogdm9pZCBz
aWxrX2VuY29kZV9kb19WQURfRklYKAotICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GSVggICAgICAg
ICAgKnBzRW5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUG9pbnRl
ciB0byBTaWxrIEZJWCBlbmNvZGVyIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZJWCAgICAgICAgICAqcHNF
bmMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBQb2ludGVyIHRvIFNp
bGsgRklYIGVuY29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2aXR5ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIERlY2lzaW9uIG9mIE9wdXMgdm9p
Y2UgYWN0aXZpdHkgZGV0ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwogKQogeworICAgIGNvbnN0IG9wdXNfaW50IGFjdGl2aXR5X3RocmVzaG9sZCA9IFNJTEtfRklY
X0NPTlNUKCBTUEVFQ0hfQUNUSVZJVFlfRFRYX1RIUkVTLCA4ICk7CisKICAgICAvKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBWb2ljZSBBY3Rpdml0eSBEZXRlY3Rpb24gKi8K
ICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICBzaWxrX1ZBRF9HZXRTQV9R
OCggJnBzRW5jLT5zQ21uLCBwc0VuYy0+c0Ntbi5pbnB1dEJ1ZiArIDEsIHBzRW5jLT5zQ21uLmFy
Y2ggKTsKKyAgICAvKiBJZiBPcHVzIFZBRCBpcyBpbmFjdGl2ZSBhbmQgU2lsayBWQUQgaXMgYWN0
aXZlOiBsb3dlciBTaWxrIFZBRCB0byBqdXN0IHVuZGVyIHRoZSB0aHJlc2hvbGQgKi8KKyAgICBp
ZiggYWN0aXZpdHkgPT0gVkFEX05PX0FDVElWSVRZICYmIHBzRW5jLT5zQ21uLnNwZWVjaF9hY3Rp
dml0eV9ROCA+PSBhY3Rpdml0eV90aHJlc2hvbGQgKSB7CisgICAgICAgIHBzRW5jLT5zQ21uLnNw
ZWVjaF9hY3Rpdml0eV9ROCA9IGFjdGl2aXR5X3RocmVzaG9sZCAtIDE7CisgICAgfQogCiAgICAg
LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAg
IC8qIENvbnZlcnQgc3BlZWNoIGFjdGl2aXR5IGludG8gVkFEIGFuZCBEVFggZmxhZ3MgKi8KICAg
ICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0g
ICAgaWYoIHBzRW5jLT5zQ21uLnNwZWVjaF9hY3Rpdml0eV9ROCA8IFNJTEtfRklYX0NPTlNUKCBT
UEVFQ0hfQUNUSVZJVFlfRFRYX1RIUkVTLCA4ICkgKSB7CisgICAgaWYoIHBzRW5jLT5zQ21uLnNw
ZWVjaF9hY3Rpdml0eV9ROCA8IGFjdGl2aXR5X3RocmVzaG9sZCApIHsKICAgICAgICAgcHNFbmMt
PnNDbW4uaW5kaWNlcy5zaWduYWxUeXBlID0gVFlQRV9OT19WT0lDRV9BQ1RJVklUWTsKICAgICAg
ICAgcHNFbmMtPnNDbW4ubm9TcGVlY2hDb3VudGVyKys7Ci0gICAgICAgIGlmKCBwc0VuYy0+c0Nt
bi5ub1NwZWVjaENvdW50ZXIgPCBOQl9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFggKSB7CisgICAg
ICAgIGlmKCBwc0VuYy0+c0Ntbi5ub1NwZWVjaENvdW50ZXIgPD0gTkJfU1BFRUNIX0ZSQU1FU19C
RUZPUkVfRFRYICkgewogICAgICAgICAgICAgcHNFbmMtPnNDbW4uaW5EVFggPSAwOwogICAgICAg
ICB9IGVsc2UgaWYoIHBzRW5jLT5zQ21uLm5vU3BlZWNoQ291bnRlciA+IE1BWF9DT05TRUNVVElW
RV9EVFggKyBOQl9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFggKSB7CiAgICAgICAgICAgICBwc0Vu
Yy0+c0Ntbi5ub1NwZWVjaENvdW50ZXIgPSBOQl9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFg7CkBA
IC05NCw2ICsxMDIsOSBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GSVgoCiAgICAgb3B1
c19pbnQxNiAgIGVjX3ByZXZMYWdJbmRleF9jb3B5OwogICAgIG9wdXNfaW50ICAgICBlY19wcmV2
U2lnbmFsVHlwZV9jb3B5OwogICAgIG9wdXNfaW50OCAgICBMYXN0R2FpbkluZGV4X2NvcHkyOwor
ICAgIG9wdXNfaW50ICAgICBnYWluX2xvY2tbIE1BWF9OQl9TVUJGUiBdID0gezB9OworICAgIG9w
dXNfaW50MTYgICBiZXN0X2dhaW5fbXVsdFsgTUFYX05CX1NVQkZSIF07CisgICAgb3B1c19pbnQg
ICAgIGJlc3Rfc3VtWyBNQVhfTkJfU1VCRlIgXTsKICAgICBTQVZFX1NUQUNLOwogCiAgICAgLyog
VGhpcyBpcyB0b3RhbGx5IHVubmVjZXNzYXJ5IGJ1dCBtYW55IGNvbXBpbGVycyAoaW5jbHVkaW5n
IGdjYykgYXJlIHRvbyBkdW1iIHRvIHJlYWxpc2UgaXQgKi8KQEAgLTExOCw3ICsxMjksNiBAQCBv
cHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GSVgoCiAgICAgc2lsa19tZW1jcHkoIHhfZnJhbWUg
KyBMQV9TSEFQRV9NUyAqIHBzRW5jLT5zQ21uLmZzX2tIeiwgcHNFbmMtPnNDbW4uaW5wdXRCdWYg
KyAxLCBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOwog
CiAgICAgaWYoICFwc0VuYy0+c0Ntbi5wcmVmaWxsRmxhZyApIHsKLSAgICAgICAgVkFSREVDTCgg
b3B1c19pbnQzMiwgeGZ3X1EzICk7CiAgICAgICAgIFZBUkRFQ0woIG9wdXNfaW50MTYsIHJlc19w
aXRjaCApOwogICAgICAgICBWQVJERUNMKCBvcHVzX3VpbnQ4LCBlY19idWZfY29weSApOwogICAg
ICAgICBvcHVzX2ludDE2ICpyZXNfcGl0Y2hfZnJhbWU7CkBAIC0xMzIsNyArMTQyLDcgQEAgb3B1
c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRklYKAogICAgICAgICAvKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgICAgIC8qIEZpbmQgcGl0Y2ggbGFncywgaW5p
dGlhbCBMUEMgYW5hbHlzaXMgKi8KICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwotICAgICAgICBzaWxrX2ZpbmRfcGl0Y2hfbGFnc19GSVgoIHBzRW5j
LCAmc0VuY0N0cmwsIHJlc19waXRjaCwgeF9mcmFtZSwgcHNFbmMtPnNDbW4uYXJjaCApOworICAg
ICAgICBzaWxrX2ZpbmRfcGl0Y2hfbGFnc19GSVgoIHBzRW5jLCAmc0VuY0N0cmwsIHJlc19waXRj
aCwgeF9mcmFtZSAtIHBzRW5jLT5zQ21uLmx0cF9tZW1fbGVuZ3RoLCBwc0VuYy0+c0Ntbi5hcmNo
ICk7CiAKICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogTm9p
c2Ugc2hhcGUgYW5hbHlzaXMgKi8KQEAgLTE0MiwyMyArMTUyLDE3IEBAIG9wdXNfaW50IHNpbGtf
ZW5jb2RlX2ZyYW1lX0ZJWCgKICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogRmluZCBsaW5lYXIgcHJlZGljdGlv
biBjb2VmZmljaWVudHMgKExQQyArIExUUCkgKi8KICAgICAgICAgLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgc2lsa19maW5kX3By
ZWRfY29lZnNfRklYKCBwc0VuYywgJnNFbmNDdHJsLCByZXNfcGl0Y2gsIHhfZnJhbWUsIGNvbmRD
b2RpbmcgKTsKKyAgICAgICAgc2lsa19maW5kX3ByZWRfY29lZnNfRklYKCBwc0VuYywgJnNFbmND
dHJsLCByZXNfcGl0Y2hfZnJhbWUsIHhfZnJhbWUsIGNvbmRDb2RpbmcgKTsKIAogICAgICAgICAv
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogUHJv
Y2VzcyBnYWlucyAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgIC8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgICAgICBzaWxrX3Byb2Nlc3NfZ2Fp
bnNfRklYKCBwc0VuYywgJnNFbmNDdHJsLCBjb25kQ29kaW5nICk7CiAKLSAgICAgICAgLyoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICAvKiBQcmVmaWx0
ZXJpbmcgZm9yIG5vaXNlIHNoYXBlciAgICAgICAgICovCi0gICAgICAgIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgQUxMT0MoIHhmd19RMywgcHNF
bmMtPnNDbW4uZnJhbWVfbGVuZ3RoLCBvcHVzX2ludDMyICk7Ci0gICAgICAgIHNpbGtfcHJlZmls
dGVyX0ZJWCggcHNFbmMsICZzRW5jQ3RybCwgeGZ3X1EzLCB4X2ZyYW1lICk7Ci0KICAgICAgICAg
LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgICAgIC8qIExv
dyBCaXRyYXRlIFJlZHVuZGFudCBFbmNvZGluZyAgICAgICAqLwogICAgICAgICAvKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgc2lsa19MQlJSX2VuY29k
ZV9GSVgoIHBzRW5jLCAmc0VuY0N0cmwsIHhmd19RMywgY29uZENvZGluZyApOworICAgICAgICBz
aWxrX0xCUlJfZW5jb2RlX0ZJWCggcHNFbmMsICZzRW5jQ3RybCwgeF9mcmFtZSwgY29uZENvZGlu
ZyApOwogCiAgICAgICAgIC8qIExvb3Agb3ZlciBxdWFudGl6ZXIgYW5kIGVudHJvcHkgY29kaW5n
IHRvIGNvbnRyb2wgYml0cmF0ZSAqLwogICAgICAgICBtYXhJdGVyID0gNjsKQEAgLTE5NCwxNyAr
MTk4LDIxIEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZJWCgKICAgICAgICAgICAgICAg
ICAvKiBOb2lzZSBzaGFwaW5nIHF1YW50aXphdGlvbiAgICAgICAgICAgICovCiAgICAgICAgICAg
ICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgICAg
ICAgICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5uU3RhdGVzRGVsYXllZERlY2lzaW9uID4gMSB8fCBw
c0VuYy0+c0Ntbi53YXJwaW5nX1ExNiA+IDAgKSB7Ci0gICAgICAgICAgICAgICAgICAgIHNpbGtf
TlNRX2RlbF9kZWMoICZwc0VuYy0+c0NtbiwgJnBzRW5jLT5zQ21uLnNOU1EsICZwc0VuYy0+c0Nt
bi5pbmRpY2VzLCB4ZndfUTMsIHBzRW5jLT5zQ21uLnB1bHNlcywKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHNFbmNDdHJsLlByZWRDb2VmX1ExMlsgMCBdLCBzRW5jQ3RybC5MVFBDb2VmX1Ex
NCwgc0VuY0N0cmwuQVIyX1ExMywgc0VuY0N0cmwuSGFybVNoYXBlR2Fpbl9RMTQsCisgICAgICAg
ICAgICAgICAgICAgIHNpbGtfTlNRX2RlbF9kZWMoICZwc0VuYy0+c0NtbiwgJnBzRW5jLT5zQ21u
LnNOU1EsICZwc0VuYy0+c0Ntbi5pbmRpY2VzLCB4X2ZyYW1lLCBwc0VuYy0+c0Ntbi5wdWxzZXMs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICBzRW5jQ3RybC5QcmVkQ29lZl9RMTJbIDAgXSwg
c0VuY0N0cmwuTFRQQ29lZl9RMTQsIHNFbmNDdHJsLkFSX1ExMywgc0VuY0N0cmwuSGFybVNoYXBl
R2Fpbl9RMTQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzRW5jQ3RybC5UaWx0X1ExNCwg
c0VuY0N0cmwuTEZfc2hwX1ExNCwgc0VuY0N0cmwuR2FpbnNfUTE2LCBzRW5jQ3RybC5waXRjaEws
IHNFbmNDdHJsLkxhbWJkYV9RMTAsIHNFbmNDdHJsLkxUUF9zY2FsZV9RMTQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5hcmNoICk7CiAgICAgICAgICAgICAgICAgfSBl
bHNlIHsKLSAgICAgICAgICAgICAgICAgICAgc2lsa19OU1EoICZwc0VuYy0+c0NtbiwgJnBzRW5j
LT5zQ21uLnNOU1EsICZwc0VuYy0+c0Ntbi5pbmRpY2VzLCB4ZndfUTMsIHBzRW5jLT5zQ21uLnB1
bHNlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzRW5jQ3RybC5QcmVkQ29lZl9RMTJb
IDAgXSwgc0VuY0N0cmwuTFRQQ29lZl9RMTQsIHNFbmNDdHJsLkFSMl9RMTMsIHNFbmNDdHJsLkhh
cm1TaGFwZUdhaW5fUTE0LAorICAgICAgICAgICAgICAgICAgICBzaWxrX05TUSggJnBzRW5jLT5z
Q21uLCAmcHNFbmMtPnNDbW4uc05TUSwgJnBzRW5jLT5zQ21uLmluZGljZXMsIHhfZnJhbWUsIHBz
RW5jLT5zQ21uLnB1bHNlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzRW5jQ3RybC5Q
cmVkQ29lZl9RMTJbIDAgXSwgc0VuY0N0cmwuTFRQQ29lZl9RMTQsIHNFbmNDdHJsLkFSX1ExMywg
c0VuY0N0cmwuSGFybVNoYXBlR2Fpbl9RMTQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c0VuY0N0cmwuVGlsdF9RMTQsIHNFbmNDdHJsLkxGX3NocF9RMTQsIHNFbmNDdHJsLkdhaW5zX1Ex
Niwgc0VuY0N0cmwucGl0Y2hMLCBzRW5jQ3RybC5MYW1iZGFfUTEwLCBzRW5jQ3RybC5MVFBfc2Nh
bGVfUTE0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmFyY2gpOwog
ICAgICAgICAgICAgICAgIH0KIAorICAgICAgICAgICAgICAgIGlmICggaXRlciA9PSBtYXhJdGVy
ICYmICFmb3VuZF9sb3dlciApIHsKKyAgICAgICAgICAgICAgICAgICAgc2lsa19tZW1jcHkoICZz
UmFuZ2VFbmNfY29weTIsIHBzUmFuZ2VFbmMsIHNpemVvZiggZWNfZW5jICkgKTsKKyAgICAgICAg
ICAgICAgICB9CisKICAgICAgICAgICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KICAgICAgICAgICAgICAgICAvKiBFbmNvZGUgUGFyYW1ldGVycyAgICAg
ICAgICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICAvKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KQEAgLTIxOCw2ICsyMjYsMzMgQEAgb3B1c19pbnQgc2lsa19l
bmNvZGVfZnJhbWVfRklYKAogCiAgICAgICAgICAgICAgICAgbkJpdHMgPSBlY190ZWxsKCBwc1Jh
bmdlRW5jICk7CiAKKyAgICAgICAgICAgICAgICAvKiBJZiB3ZSBzdGlsbCBidXN0IGFmdGVyIHRo
ZSBsYXN0IGl0ZXJhdGlvbiwgZG8gc29tZSBkYW1hZ2UgY29udHJvbC4gKi8KKyAgICAgICAgICAg
ICAgICBpZiAoIGl0ZXIgPT0gbWF4SXRlciAmJiAhZm91bmRfbG93ZXIgJiYgbkJpdHMgPiBtYXhC
aXRzICkgeworICAgICAgICAgICAgICAgICAgICBzaWxrX21lbWNweSggcHNSYW5nZUVuYywgJnNS
YW5nZUVuY19jb3B5Miwgc2l6ZW9mKCBlY19lbmMgKSApOworCisgICAgICAgICAgICAgICAgICAg
IC8qIEtlZXAgZ2FpbnMgdGhlIHNhbWUgYXMgdGhlIGxhc3QgZnJhbWUuICovCisgICAgICAgICAg
ICAgICAgICAgIHBzRW5jLT5zU2hhcGUuTGFzdEdhaW5JbmRleCA9IHNFbmNDdHJsLmxhc3RHYWlu
SW5kZXhQcmV2OworICAgICAgICAgICAgICAgICAgICBmb3IgKCBpID0gMDsgaSA8IHBzRW5jLT5z
Q21uLm5iX3N1YmZyOyBpKysgKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Nt
bi5pbmRpY2VzLkdhaW5zSW5kaWNlc1sgaSBdID0gNDsKKyAgICAgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgICAgICAgICBpZiAoY29uZENvZGluZyAhPSBDT0RFX0NPTkRJVElPTkFMTFkp
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4uaW5kaWNlcy5HYWluc0luZGlj
ZXNbIDAgXSA9IHNFbmNDdHJsLmxhc3RHYWluSW5kZXhQcmV2OworICAgICAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmVjX3ByZXZMYWdJbmRleCA9IGVj
X3ByZXZMYWdJbmRleF9jb3B5OworICAgICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5lY19w
cmV2U2lnbmFsVHlwZSA9IGVjX3ByZXZTaWduYWxUeXBlX2NvcHk7CisgICAgICAgICAgICAgICAg
ICAgIC8qIENsZWFyIGFsbCBwdWxzZXMuICovCisgICAgICAgICAgICAgICAgICAgIGZvciAoIGkg
PSAwOyBpIDwgcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoOyBpKysgKSB7CisgICAgICAgICAgICAg
ICAgICAgICAgICBwc0VuYy0+c0Ntbi5wdWxzZXNbIGkgXSA9IDA7CisgICAgICAgICAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgICAgICAgICBzaWxrX2VuY29kZV9pbmRpY2VzKCAmcHNFbmMt
PnNDbW4sIHBzUmFuZ2VFbmMsIHBzRW5jLT5zQ21uLm5GcmFtZXNFbmNvZGVkLCAwLCBjb25kQ29k
aW5nICk7CisKKyAgICAgICAgICAgICAgICAgICAgc2lsa19lbmNvZGVfcHVsc2VzKCBwc1Jhbmdl
RW5jLCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUsIHBzRW5jLT5zQ21uLmluZGljZXMu
cXVhbnRPZmZzZXRUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4ucHVs
c2VzLCBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGggKTsKKworICAgICAgICAgICAgICAgICAgICBu
Qml0cyA9IGVjX3RlbGwoIHBzUmFuZ2VFbmMgKTsKKyAgICAgICAgICAgICAgICB9CisKICAgICAg
ICAgICAgICAgICBpZiggdXNlQ0JSID09IDAgJiYgaXRlciA9PSAwICYmIG5CaXRzIDw9IG1heEJp
dHMgKSB7CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgIH0KQEAg
LTI2NSwxNSArMzAwLDM1IEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1lX0ZJWCgKICAgICAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KIAorICAgICAgICAgICAgaWYgKCAhZm91
bmRfbG93ZXIgJiYgbkJpdHMgPiBtYXhCaXRzICkgeworICAgICAgICAgICAgICAgIGludCBqOwor
ICAgICAgICAgICAgICAgIGZvciAoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGkr
KyApIHsKKyAgICAgICAgICAgICAgICAgICAgaW50IHN1bT0wOworICAgICAgICAgICAgICAgICAg
ICBmb3IgKCBqID0gaSpwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7IGogPCAoaSsxKSpwc0VuYy0+
c0Ntbi5zdWJmcl9sZW5ndGg7IGorKyApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHN1bSAr
PSBhYnMoIHBzRW5jLT5zQ21uLnB1bHNlc1tqXSApOworICAgICAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAgICAgICAgIGlmICggaXRlciA9PSAwIHx8IChzdW0gPCBiZXN0X3N1bVtpXSAm
JiAhZ2Fpbl9sb2NrW2ldKSApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGJlc3Rfc3VtW2ld
ID0gc3VtOworICAgICAgICAgICAgICAgICAgICAgICAgYmVzdF9nYWluX211bHRbaV0gPSBnYWlu
TXVsdF9RODsKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGdhaW5fbG9ja1tpXSA9IDE7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiggKCBmb3VuZF9sb3dlciAm
IGZvdW5kX3VwcGVyICkgPT0gMCApIHsKICAgICAgICAgICAgICAgICAvKiBBZGp1c3QgZ2FpbiBh
Y2NvcmRpbmcgdG8gaGlnaC1yYXRlIHJhdGUvZGlzdG9ydGlvbiBjdXJ2ZSAqLwotICAgICAgICAg
ICAgICAgIG9wdXNfaW50MzIgZ2Fpbl9mYWN0b3JfUTE2OwotICAgICAgICAgICAgICAgIGdhaW5f
ZmFjdG9yX1ExNiA9IHNpbGtfbG9nMmxpbiggc2lsa19MU0hJRlQoIG5CaXRzIC0gbWF4Qml0cywg
NyApIC8gcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoICsgU0lMS19GSVhfQ09OU1QoIDE2LCA3ICkg
KTsKLSAgICAgICAgICAgICAgICBnYWluX2ZhY3Rvcl9RMTYgPSBzaWxrX21pbl8zMiggZ2Fpbl9m
YWN0b3JfUTE2LCBTSUxLX0ZJWF9DT05TVCggMiwgMTYgKSApOwogICAgICAgICAgICAgICAgIGlm
KCBuQml0cyA+IG1heEJpdHMgKSB7Ci0gICAgICAgICAgICAgICAgICAgIGdhaW5fZmFjdG9yX1Ex
NiA9IHNpbGtfbWF4XzMyKCBnYWluX2ZhY3Rvcl9RMTYsIFNJTEtfRklYX0NPTlNUKCAxLjMsIDE2
ICkgKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGdhaW5NdWx0X1E4IDwgMTYzODQpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIGdhaW5NdWx0X1E4ICo9IDI7CisgICAgICAgICAgICAgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBnYWluTXVsdF9ROCA9IDMyNzY3
OworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAg
ICAgICAgICAgICAgICAgb3B1c19pbnQzMiBnYWluX2ZhY3Rvcl9RMTY7CisgICAgICAgICAgICAg
ICAgICAgIGdhaW5fZmFjdG9yX1ExNiA9IHNpbGtfbG9nMmxpbiggc2lsa19MU0hJRlQoIG5CaXRz
IC0gbWF4Qml0cywgNyApIC8gcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoICsgU0lMS19GSVhfQ09O
U1QoIDE2LCA3ICkgKTsKKyAgICAgICAgICAgICAgICAgICAgZ2Fpbk11bHRfUTggPSBzaWxrX1NN
VUxXQiggZ2Fpbl9mYWN0b3JfUTE2LCBnYWluTXVsdF9ROCApOwogICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgICAgICBnYWluTXVsdF9ROCA9IHNpbGtfU01VTFdCKCBnYWluX2ZhY3Rvcl9R
MTYsIGdhaW5NdWx0X1E4ICk7CisKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAg
ICAgLyogQWRqdXN0IGdhaW4gYnkgaW50ZXJwb2xhdGluZyAqLwogICAgICAgICAgICAgICAgIGdh
aW5NdWx0X1E4ID0gZ2Fpbk11bHRfbG93ZXIgKyBzaWxrX0RJVjMyXzE2KCBzaWxrX01VTCggZ2Fp
bk11bHRfdXBwZXIgLSBnYWluTXVsdF9sb3dlciwgbWF4Qml0cyAtIG5CaXRzX2xvd2VyICksIG5C
aXRzX3VwcGVyIC0gbkJpdHNfbG93ZXIgKTsKQEAgLTI4Nyw3ICszNDIsMTMgQEAgb3B1c19pbnQg
c2lsa19lbmNvZGVfZnJhbWVfRklYKAogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBmb3Io
IGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGkrKyApIHsKLSAgICAgICAgICAgICAg
ICBzRW5jQ3RybC5HYWluc19RMTZbIGkgXSA9IHNpbGtfTFNISUZUX1NBVDMyKCBzaWxrX1NNVUxX
Qiggc0VuY0N0cmwuR2FpbnNVbnFfUTE2WyBpIF0sIGdhaW5NdWx0X1E4ICksIDggKTsKKyAgICAg
ICAgICAgICAgICBvcHVzX2ludDE2IHRtcDsKKyAgICAgICAgICAgICAgICBpZiAoIGdhaW5fbG9j
a1tpXSApIHsKKyAgICAgICAgICAgICAgICAgICAgdG1wID0gYmVzdF9nYWluX211bHRbaV07Cisg
ICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgdG1wID0gZ2Fpbk11
bHRfUTg7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHNFbmNDdHJsLkdhaW5z
X1ExNlsgaSBdID0gc2lsa19MU0hJRlRfU0FUMzIoIHNpbGtfU01VTFdCKCBzRW5jQ3RybC5HYWlu
c1VucV9RMTZbIGkgXSwgdG1wICksIDggKTsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAg
LyogUXVhbnRpemUgZ2FpbnMgKi8KQEAgLTMzMSw3ICszOTIsNyBAQCBvcHVzX2ludCBzaWxrX2Vu
Y29kZV9mcmFtZV9GSVgoCiBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xCUlJfZW5jb2Rl
X0ZJWCgKICAgICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAgICpwc0VuYywgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU2lsayBGSVggZW5j
b2RlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZJWCAgICAgICAgKnBzRW5jQ3RybCwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIEZJWCBlbmNvZGVyIGNv
bnRyb2wgc3RydWN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgb3B1c19pbnQzMiAgICAgICAgICAgICAgICB4ZndfUTNbXSwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVz
X2ludDE2ICAgICAgICAgICAgICAgIHgxNltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIElucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgICAgICAgY29uZENvZGluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgVGhlIHR5cGUgb2YgY29uZGl0aW9uYWwgY29kaW5nIHVzZWQgc28gZmFyIGZvciB0aGlz
IGZyYW1lICAgICAgICAgICAgICAgICAgICovCiApCiB7CkBAIC0zNzAsMTQgKzQzMSwxNCBAQCBz
dGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xCUlJfZW5jb2RlX0ZJWCgKICAgICAgICAgLyog
Tm9pc2Ugc2hhcGluZyBxdWFudGl6YXRpb24gICAgICAgICAgICAqLwogICAgICAgICAvKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgICAgIGlmKCBwc0VuYy0+
c0Ntbi5uU3RhdGVzRGVsYXllZERlY2lzaW9uID4gMSB8fCBwc0VuYy0+c0Ntbi53YXJwaW5nX1Ex
NiA+IDAgKSB7Ci0gICAgICAgICAgICBzaWxrX05TUV9kZWxfZGVjKCAmcHNFbmMtPnNDbW4sICZz
TlNRX0xCUlIsIHBzSW5kaWNlc19MQlJSLCB4ZndfUTMsCisgICAgICAgICAgICBzaWxrX05TUV9k
ZWxfZGVjKCAmcHNFbmMtPnNDbW4sICZzTlNRX0xCUlIsIHBzSW5kaWNlc19MQlJSLCB4MTYsCiAg
ICAgICAgICAgICAgICAgcHNFbmMtPnNDbW4ucHVsc2VzX0xCUlJbIHBzRW5jLT5zQ21uLm5GcmFt
ZXNFbmNvZGVkIF0sIHBzRW5jQ3RybC0+UHJlZENvZWZfUTEyWyAwIF0sIHBzRW5jQ3RybC0+TFRQ
Q29lZl9RMTQsCi0gICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5BUjJfUTEzLCBwc0VuY0N0cmwt
Pkhhcm1TaGFwZUdhaW5fUTE0LCBwc0VuY0N0cmwtPlRpbHRfUTE0LCBwc0VuY0N0cmwtPkxGX3No
cF9RMTQsCisgICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5BUl9RMTMsIHBzRW5jQ3RybC0+SGFy
bVNoYXBlR2Fpbl9RMTQsIHBzRW5jQ3RybC0+VGlsdF9RMTQsIHBzRW5jQ3RybC0+TEZfc2hwX1Ex
NCwKICAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1ExNiwgcHNFbmNDdHJsLT5waXRj
aEwsIHBzRW5jQ3RybC0+TGFtYmRhX1ExMCwgcHNFbmNDdHJsLT5MVFBfc2NhbGVfUTE0LCBwc0Vu
Yy0+c0Ntbi5hcmNoICk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBzaWxrX05TUSgg
JnBzRW5jLT5zQ21uLCAmc05TUV9MQlJSLCBwc0luZGljZXNfTEJSUiwgeGZ3X1EzLAorICAgICAg
ICAgICAgc2lsa19OU1EoICZwc0VuYy0+c0NtbiwgJnNOU1FfTEJSUiwgcHNJbmRpY2VzX0xCUlIs
IHgxNiwKICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5wdWxzZXNfTEJSUlsgcHNFbmMtPnND
bW4ubkZyYW1lc0VuY29kZWQgXSwgcHNFbmNDdHJsLT5QcmVkQ29lZl9RMTJbIDAgXSwgcHNFbmND
dHJsLT5MVFBDb2VmX1ExNCwKLSAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkFSMl9RMTMsIHBz
RW5jQ3RybC0+SGFybVNoYXBlR2Fpbl9RMTQsIHBzRW5jQ3RybC0+VGlsdF9RMTQsIHBzRW5jQ3Ry
bC0+TEZfc2hwX1ExNCwKKyAgICAgICAgICAgICAgICBwc0VuY0N0cmwtPkFSX1ExMywgcHNFbmND
dHJsLT5IYXJtU2hhcGVHYWluX1ExNCwgcHNFbmNDdHJsLT5UaWx0X1ExNCwgcHNFbmNDdHJsLT5M
Rl9zaHBfUTE0LAogICAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+R2FpbnNfUTE2LCBwc0VuY0N0
cmwtPnBpdGNoTCwgcHNFbmNDdHJsLT5MYW1iZGFfUTEwLCBwc0VuY0N0cmwtPkxUUF9zY2FsZV9R
MTQsIHBzRW5jLT5zQ21uLmFyY2ggKTsKICAgICAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4
ZWQvZmluZF9MUENfRklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9MUENfRklYLmMKaW5kZXggZTExY2Rj
ODZlNjdkMGY4MzZjNzVlNDAzM2I5ZWUyYjI5MTUzOTRhOC4uZTU1YjYzYWMzMjlhMjE0ZGM1YWM5
ZmY0MDg5Mzk0M2UzM2FkMDgzZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfTFBDX0ZJWC5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9maXhlZC9maW5kX0xQQ19GSVguYwpAQCAtOTIsNyArOTIsNyBAQCB2b2lkIHNp
bGtfZmluZF9MUENfRklYKAogICAgICAgICAgICAgc2lsa19pbnRlcnBvbGF0ZSggTkxTRjBfUTE1
LCBwc0VuY0MtPnByZXZfTkxTRnFfUTE1LCBOTFNGX1ExNSwgaywgcHNFbmNDLT5wcmVkaWN0TFBD
T3JkZXIgKTsKIAogICAgICAgICAgICAgLyogQ29udmVydCB0byBMUEMgZm9yIHJlc2lkdWFsIGVu
ZXJneSBldmFsdWF0aW9uICovCi0gICAgICAgICAgICBzaWxrX05MU0YyQSggYV90bXBfUTEyLCBO
TFNGMF9RMTUsIHBzRW5jQy0+cHJlZGljdExQQ09yZGVyICk7CisgICAgICAgICAgICBzaWxrX05M
U0YyQSggYV90bXBfUTEyLCBOTFNGMF9RMTUsIHBzRW5jQy0+cHJlZGljdExQQ09yZGVyLCBwc0Vu
Y0MtPmFyY2ggKTsKIAogICAgICAgICAgICAgLyogQ2FsY3VsYXRlIHJlc2lkdWFsIGVuZXJneSB3
aXRoIE5MU0YgaW50ZXJwb2xhdGlvbiAqLwogICAgICAgICAgICAgc2lsa19MUENfYW5hbHlzaXNf
ZmlsdGVyKCBMUENfcmVzLCB4LCBhX3RtcF9RMTIsIDIgKiBzdWJmcl9sZW5ndGgsIHBzRW5jQy0+
cHJlZGljdExQQ09yZGVyLCBwc0VuY0MtPmFyY2ggKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9m
aW5kX0xUUF9GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX0xUUF9GSVguYwppbmRleCAxMzE0YTI4MTM3
NWJkNjljNzI3MGNhMjVmZGQ5MWU4OGUzOGMwYzc2Li42MmQ0YWZiMjUwNzQwNzI2NzExMmVjNDM5
NDZhY2VlZWVkYjI1YzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9MVFBfRklYLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2ZpeGVkL2ZpbmRfTFRQX0ZJWC5jCkBAIC0zMiwyMTQgKzMyLDY4IEBAIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgIm1haW5fRklYLmgiCiAjaW5jbHVkZSAidHVu
aW5nX3BhcmFtZXRlcnMuaCIKIAotLyogSGVhZCByb29tIGZvciBjb3JyZWxhdGlvbnMgKi8KLSNk
ZWZpbmUgTFRQX0NPUlJTX0hFQURfUk9PTSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMgot
Ci12b2lkIHNpbGtfZml0X0xUUCgKLSAgICBvcHVzX2ludDMyIExUUF9jb2Vmc19RMTZbIExUUF9P
UkRFUiBdLAotICAgIG9wdXNfaW50MTYgTFRQX2NvZWZzX1ExNFsgTFRQX09SREVSIF0KLSk7Ci0K
IHZvaWQgc2lsa19maW5kX0xUUF9GSVgoCi0gICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAg
ICAgICBiX1ExNFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgLyogTyAgICBMVFAg
Y29lZnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgIFdM
VFBbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBPICAgIFdlaWdo
dCBmb3IgTFRQIHF1YW50aXphdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgKkxUUHJlZENv
ZEdhaW5fUTcsICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIGNvZGluZyBnYWluICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICByX2xwY1tdLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICByZXNpZHVhbCBzaWduYWwgYWZ0ZXIgTFBD
IHNpZ25hbCArIHN0YXRlIGZvciBmaXJzdCAxMCBtcyAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgIFhYTFRQX1ExN1sgTUFYX05CX1NVQkZS
ICogTFRQX09SREVSICogTFRQX09SREVSIF0sIC8qIE8gICAgQ29ycmVsYXRpb24gbWF0cml4ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNf
aW50MzIgICAgICAgICAgICAgICAgICAgICAgeFhMVFBfUTE3WyBNQVhfTkJfU1VCRlIgKiBMVFBf
T1JERVIgXSwgIC8qIE8gICAgQ29ycmVsYXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19p
bnQxNiAgICAgICAgICAgICAgICByX3B0cltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBSZXNpZHVhbCBzaWduYWwgYWZ0ZXIgTFBDICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAg
ICAgICAgICAgICAgIGxhZ1sgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIExUUCBsYWdzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAg
ICAgICAgV2dodF9RMTVbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgIC8qIEkgICAgd2Vp
Z2h0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBz
dWJmcl9sZW5ndGgsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBzdWJmcmFtZSBs
ZW5ndGggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG5iX3N1YmZy
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFt
ZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbWVtX29mZnNldCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbnVtYmVyIG9mIHNhbXBsZXMgaW4gTFRQ
IG1lbW9yeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBjb3JyX3JzaGlmdHNbIE1BWF9OQl9T
VUJGUiBdLCAgICAgICAgICAgLyogTyAgICByaWdodCBzaGlmdHMgYXBwbGllZCB0byBjb3JyZWxh
dGlvbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIHN1YmZyX2xlbmd0aCwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIFN1YmZyYW1lIGxlbmd0aCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgbmJfc3ViZnIsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgTnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgaW50ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KICkKIHsKLSAgICBvcHVzX2ludCAgIGksIGssIGxz
aGlmdDsKLSAgICBjb25zdCBvcHVzX2ludDE2ICpyX3B0ciwgKmxhZ19wdHI7Ci0gICAgb3B1c19p
bnQxNiAqYl9RMTRfcHRyOwotCi0gICAgb3B1c19pbnQzMiByZWd1OwotICAgIG9wdXNfaW50MzIg
KldMVFBfcHRyOwotICAgIG9wdXNfaW50MzIgYl9RMTZbIExUUF9PUkRFUiBdLCBkZWx0YV9iX1Ex
NFsgTFRQX09SREVSIF0sIGRfUTE0WyBNQVhfTkJfU1VCRlIgXSwgbnJnWyBNQVhfTkJfU1VCRlIg
XSwgZ19RMjY7Ci0gICAgb3B1c19pbnQzMiB3WyBNQVhfTkJfU1VCRlIgXSwgV0xUUF9tYXgsIG1h
eF9hYnNfZF9RMTQsIG1heF93X2JpdHM7Ci0KLSAgICBvcHVzX2ludDMyIHRlbXAzMiwgZGVub20z
MjsKLSAgICBvcHVzX2ludCAgIGV4dHJhX3NoaWZ0czsKLSAgICBvcHVzX2ludCAgIHJyX3NoaWZ0
cywgbWF4UnNoaWZ0cywgbWF4UnNoaWZ0c193eHRyYSwgTFpzOwotICAgIG9wdXNfaW50MzIgTFBD
X3Jlc19ucmcsIExQQ19MVFBfcmVzX25yZywgZGl2X1ExNjsKLSAgICBvcHVzX2ludDMyIFJyWyBM
VFBfT1JERVIgXSwgcnJbIE1BWF9OQl9TVUJGUiBdOwotICAgIG9wdXNfaW50MzIgd2QsIG1fUTEy
OwotCi0gICAgYl9RMTRfcHRyID0gYl9RMTQ7Ci0gICAgV0xUUF9wdHIgID0gV0xUUDsKLSAgICBy
X3B0ciAgICAgPSAmcl9scGNbIG1lbV9vZmZzZXQgXTsKKyAgICBvcHVzX2ludCAgIGksIGssIGV4
dHJhX3NoaWZ0czsKKyAgICBvcHVzX2ludCAgIHh4X3NoaWZ0cywgeFhfc2hpZnRzLCBYWF9zaGlm
dHM7CisgICAgY29uc3Qgb3B1c19pbnQxNiAqbGFnX3B0cjsKKyAgICBvcHVzX2ludDMyICpYWExU
UF9RMTdfcHRyLCAqeFhMVFBfUTE3X3B0cjsKKyAgICBvcHVzX2ludDMyIHh4LCBucmcsIHRlbXA7
CisKKyAgICB4WExUUF9RMTdfcHRyID0geFhMVFBfUTE3OworICAgIFhYTFRQX1ExN19wdHIgPSBY
WExUUF9RMTc7CiAgICAgZm9yKCBrID0gMDsgayA8IG5iX3N1YmZyOyBrKysgKSB7CiAgICAgICAg
IGxhZ19wdHIgPSByX3B0ciAtICggbGFnWyBrIF0gKyBMVFBfT1JERVIgLyAyICk7CiAKLSAgICAg
ICAgc2lsa19zdW1fc3FyX3NoaWZ0KCAmcnJbIGsgXSwgJnJyX3NoaWZ0cywgcl9wdHIsIHN1YmZy
X2xlbmd0aCApOyAvKiByclsgayBdIGluIFEoIC1ycl9zaGlmdHMgKSAqLwotCi0gICAgICAgIC8q
IEFzc3VyZSBoZWFkcm9vbSAqLwotICAgICAgICBMWnMgPSBzaWxrX0NMWjMyKCBycltrXSApOwot
ICAgICAgICBpZiggTFpzIDwgTFRQX0NPUlJTX0hFQURfUk9PTSApIHsKLSAgICAgICAgICAgIHJy
WyBrIF0gPSBzaWxrX1JTSElGVF9ST1VORCggcnJbIGsgXSwgTFRQX0NPUlJTX0hFQURfUk9PTSAt
IExacyApOwotICAgICAgICAgICAgcnJfc2hpZnRzICs9ICggTFRQX0NPUlJTX0hFQURfUk9PTSAt
IExacyApOwotICAgICAgICB9Ci0gICAgICAgIGNvcnJfcnNoaWZ0c1sgayBdID0gcnJfc2hpZnRz
OwotICAgICAgICBzaWxrX2NvcnJNYXRyaXhfRklYKCBsYWdfcHRyLCBzdWJmcl9sZW5ndGgsIExU
UF9PUkRFUiwgTFRQX0NPUlJTX0hFQURfUk9PTSwgV0xUUF9wdHIsICZjb3JyX3JzaGlmdHNbIGsg
XSwgYXJjaCApOyAgLyogV0xUUF9maXhfcHRyIGluIFEoIC1jb3JyX3JzaGlmdHNbIGsgXSApICov
Ci0KLSAgICAgICAgLyogVGhlIGNvcnJlbGF0aW9uIHZlY3RvciBhbHdheXMgaGFzIGxvd2VyIG1h
eCBhYnMgdmFsdWUgdGhhbiByciBhbmQvb3IgUlIgc28gaGVhZCByb29tIGlzIGFzc3VyZWQgKi8K
LSAgICAgICAgc2lsa19jb3JyVmVjdG9yX0ZJWCggbGFnX3B0ciwgcl9wdHIsIHN1YmZyX2xlbmd0
aCwgTFRQX09SREVSLCBSciwgY29ycl9yc2hpZnRzWyBrIF0sIGFyY2ggKTsgIC8qIFJyX2ZpeF9w
dHIgICBpbiBRKCAtY29ycl9yc2hpZnRzWyBrIF0gKSAqLwotICAgICAgICBpZiggY29ycl9yc2hp
ZnRzWyBrIF0gPiBycl9zaGlmdHMgKSB7Ci0gICAgICAgICAgICByclsgayBdID0gc2lsa19SU0hJ
RlQoIHJyWyBrIF0sIGNvcnJfcnNoaWZ0c1sgayBdIC0gcnJfc2hpZnRzICk7IC8qIHJyWyBrIF0g
aW4gUSggLWNvcnJfcnNoaWZ0c1sgayBdICkgKi8KKyAgICAgICAgc2lsa19zdW1fc3FyX3NoaWZ0
KCAmeHgsICZ4eF9zaGlmdHMsIHJfcHRyLCBzdWJmcl9sZW5ndGggKyBMVFBfT1JERVIgKTsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogeHggaW4gUSggLXh4X3NoaWZ0cyApICovCisgICAg
ICAgIHNpbGtfY29yck1hdHJpeF9GSVgoIGxhZ19wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09SREVS
LCBYWExUUF9RMTdfcHRyLCAmbnJnLCAmWFhfc2hpZnRzLCBhcmNoICk7ICAgIC8qIFhYTFRQX1Ex
N19wdHIgYW5kIG5yZyBpbiBRKCAtWFhfc2hpZnRzICkgKi8KKyAgICAgICAgZXh0cmFfc2hpZnRz
ID0geHhfc2hpZnRzIC0gWFhfc2hpZnRzOworICAgICAgICBpZiggZXh0cmFfc2hpZnRzID4gMCAp
IHsKKyAgICAgICAgICAgIC8qIFNoaWZ0IFhYICovCisgICAgICAgICAgICB4WF9zaGlmdHMgPSB4
eF9zaGlmdHM7CisgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSICogTFRQX09S
REVSOyBpKysgKSB7CisgICAgICAgICAgICAgICAgWFhMVFBfUTE3X3B0clsgaSBdID0gc2lsa19S
U0hJRlQzMiggWFhMVFBfUTE3X3B0clsgaSBdLCBleHRyYV9zaGlmdHMgKTsgICAgICAgICAgICAg
IC8qIFEoIC14WF9zaGlmdHMgKSAqLworICAgICAgICAgICAgfQorICAgICAgICAgICAgbnJnID0g
c2lsa19SU0hJRlQzMiggbnJnLCBleHRyYV9zaGlmdHMgKTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBRKCAteFhfc2hpZnRzICkgKi8KKyAgICAgICAg
fSBlbHNlIGlmKCBleHRyYV9zaGlmdHMgPCAwICkgeworICAgICAgICAgICAgLyogU2hpZnQgeHgg
Ki8KKyAgICAgICAgICAgIHhYX3NoaWZ0cyA9IFhYX3NoaWZ0czsKKyAgICAgICAgICAgIHh4ID0g
c2lsa19SU0hJRlQzMiggeHgsIC1leHRyYV9zaGlmdHMgKTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUSggLXhYX3NoaWZ0cyApICovCisgICAgICAg
IH0gZWxzZSB7CisgICAgICAgICAgICB4WF9zaGlmdHMgPSB4eF9zaGlmdHM7CiAgICAgICAgIH0K
LSAgICAgICAgc2lsa19hc3NlcnQoIHJyWyBrIF0gPj0gMCApOwotCi0gICAgICAgIHJlZ3UgPSAx
OwotICAgICAgICByZWd1ID0gc2lsa19TTUxBV0IoIHJlZ3UsIHJyWyBrIF0sIFNJTEtfRklYX0NP
TlNUKCBMVFBfREFNUElORy8zLCAxNiApICk7Ci0gICAgICAgIHJlZ3UgPSBzaWxrX1NNTEFXQigg
cmVndSwgbWF0cml4X3B0ciggV0xUUF9wdHIsIDAsIDAsIExUUF9PUkRFUiApLCBTSUxLX0ZJWF9D
T05TVCggTFRQX0RBTVBJTkcvMywgMTYgKSApOwotICAgICAgICByZWd1ID0gc2lsa19TTUxBV0Io
IHJlZ3UsIG1hdHJpeF9wdHIoIFdMVFBfcHRyLCBMVFBfT1JERVItMSwgTFRQX09SREVSLTEsIExU
UF9PUkRFUiApLCBTSUxLX0ZJWF9DT05TVCggTFRQX0RBTVBJTkcvMywgMTYgKSApOwotICAgICAg
ICBzaWxrX3JlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZJWCggV0xUUF9wdHIsICZycltrXSwgcmVn
dSwgTFRQX09SREVSICk7Ci0KLSAgICAgICAgc2lsa19zb2x2ZV9MRExfRklYKCBXTFRQX3B0ciwg
TFRQX09SREVSLCBSciwgYl9RMTYgKTsgLyogV0xUUF9maXhfcHRyIGFuZCBScl9maXhfcHRyIGJv
dGggaW4gUSgtY29ycl9yc2hpZnRzW2tdKSAqLwotCi0gICAgICAgIC8qIExpbWl0IGFuZCBzdG9y
ZSBpbiBRMTQgKi8KLSAgICAgICAgc2lsa19maXRfTFRQKCBiX1ExNiwgYl9RMTRfcHRyICk7Ci0K
LSAgICAgICAgLyogQ2FsY3VsYXRlIHJlc2lkdWFsIGVuZXJneSAqLwotICAgICAgICBucmdbIGsg
XSA9IHNpbGtfcmVzaWR1YWxfZW5lcmd5MTZfY292YXJfRklYKCBiX1ExNF9wdHIsIFdMVFBfcHRy
LCBSciwgcnJbIGsgXSwgTFRQX09SREVSLCAxNCApOyAvKiBucmdfZml4IGluIFEoIC1jb3JyX3Jz
aGlmdHNbIGsgXSApICovCi0KLSAgICAgICAgLyogdGVtcCA9IFdnaHRbIGsgXSAvICggbnJnWyBr
IF0gKiBXZ2h0WyBrIF0gKyAwLjAxZiAqIHN1YmZyX2xlbmd0aCApOyAqLwotICAgICAgICBleHRy
YV9zaGlmdHMgPSBzaWxrX21pbl9pbnQoIGNvcnJfcnNoaWZ0c1sgayBdLCBMVFBfQ09SUlNfSEVB
RF9ST09NICk7Ci0gICAgICAgIGRlbm9tMzIgPSBzaWxrX0xTSElGVF9TQVQzMiggc2lsa19TTVVM
V0IoIG5yZ1sgayBdLCBXZ2h0X1ExNVsgayBdICksIDEgKyBleHRyYV9zaGlmdHMgKSArIC8qIFEo
IC1jb3JyX3JzaGlmdHNbIGsgXSArIGV4dHJhX3NoaWZ0cyApICovCi0gICAgICAgICAgICBzaWxr
X1JTSElGVCggc2lsa19TTVVMV0IoIChvcHVzX2ludDMyKXN1YmZyX2xlbmd0aCwgNjU1ICksIGNv
cnJfcnNoaWZ0c1sgayBdIC0gZXh0cmFfc2hpZnRzICk7ICAgIC8qIFEoIC1jb3JyX3JzaGlmdHNb
IGsgXSArIGV4dHJhX3NoaWZ0cyApICovCi0gICAgICAgIGRlbm9tMzIgPSBzaWxrX21heCggZGVu
b20zMiwgMSApOwotICAgICAgICBzaWxrX2Fzc2VydCggKChvcHVzX2ludDY0KVdnaHRfUTE1WyBr
IF0gPDwgMTYgKSA8IHNpbGtfaW50MzJfTUFYICk7ICAgICAgICAgICAgICAgICAgICAgICAvKiBX
Z2h0IGFsd2F5cyA8IDAuNSBpbiBRMCAqLwotICAgICAgICB0ZW1wMzIgPSBzaWxrX0RJVjMyKCBz
aWxrX0xTSElGVCggKG9wdXNfaW50MzIpV2dodF9RMTVbIGsgXSwgMTYgKSwgZGVub20zMiApOyAg
ICAgICAgICAgICAvKiBRKCAxNSArIDE2ICsgY29ycl9yc2hpZnRzW2tdIC0gZXh0cmFfc2hpZnRz
ICkgKi8KLSAgICAgICAgdGVtcDMyID0gc2lsa19SU0hJRlQoIHRlbXAzMiwgMzEgKyBjb3JyX3Jz
aGlmdHNbIGsgXSAtIGV4dHJhX3NoaWZ0cyAtIDI2ICk7ICAgICAgICAgICAgICAgLyogUTI2ICov
CisgICAgICAgIHNpbGtfY29yclZlY3Rvcl9GSVgoIGxhZ19wdHIsIHJfcHRyLCBzdWJmcl9sZW5n
dGgsIExUUF9PUkRFUiwgeFhMVFBfUTE3X3B0ciwgeFhfc2hpZnRzLCBhcmNoICk7ICAgIC8qIHhY
TFRQX1ExN19wdHIgaW4gUSggLXhYX3NoaWZ0cyApICovCiAKLSAgICAgICAgLyogTGltaXQgdGVt
cCBzdWNoIHRoYXQgdGhlIGJlbG93IHNjYWxpbmcgbmV2ZXIgd3JhcHMgYXJvdW5kICovCi0gICAg
ICAgIFdMVFBfbWF4ID0gMDsKKyAgICAgICAgLyogQXQgdGhpcyBwb2ludCBhbGwgY29ycmVsYXRp
b25zIGFyZSBpbiBRKC14WF9zaGlmdHMpICovCisgICAgICAgIHRlbXAgPSBzaWxrX1NNTEFXQigg
MSwgbnJnLCBTSUxLX0ZJWF9DT05TVCggTFRQX0NPUlJfSU5WX01BWCwgMTYgKSApOworICAgICAg
ICB0ZW1wID0gc2lsa19tYXgoIHRlbXAsIHh4ICk7CitUSUMoZGl2KQorI2lmIDAKICAgICAgICAg
Zm9yKCBpID0gMDsgaSA8IExUUF9PUkRFUiAqIExUUF9PUkRFUjsgaSsrICkgewotICAgICAgICAg
ICAgV0xUUF9tYXggPSBzaWxrX21heCggV0xUUF9wdHJbIGkgXSwgV0xUUF9tYXggKTsKKyAgICAg
ICAgICAgIFhYTFRQX1ExN19wdHJbIGkgXSA9IHNpbGtfRElWMzJfdmFyUSggWFhMVFBfUTE3X3B0
clsgaSBdLCB0ZW1wLCAxNyApOwogICAgICAgICB9Ci0gICAgICAgIGxzaGlmdCA9IHNpbGtfQ0xa
MzIoIFdMVFBfbWF4ICkgLSAxIC0gMzsgLyoga2VlcCAzIGJpdHMgZnJlZSBmb3IgdnFfbmVhcmVz
dF9uZWlnaGJvcl9maXggKi8KLSAgICAgICAgc2lsa19hc3NlcnQoIDI2IC0gMTggKyBsc2hpZnQg
Pj0gMCApOwotICAgICAgICBpZiggMjYgLSAxOCArIGxzaGlmdCA8IDMxICkgewotICAgICAgICAg
ICAgdGVtcDMyID0gc2lsa19taW5fMzIoIHRlbXAzMiwgc2lsa19MU0hJRlQoIChvcHVzX2ludDMy
KTEsIDI2IC0gMTggKyBsc2hpZnQgKSApOwotICAgICAgICB9Ci0KLSAgICAgICAgc2lsa19zY2Fs
ZV92ZWN0b3IzMl9RMjZfbHNoaWZ0XzE4KCBXTFRQX3B0ciwgdGVtcDMyLCBMVFBfT1JERVIgKiBM
VFBfT1JERVIgKTsgLyogV0xUUF9wdHIgaW4gUSggMTggLSBjb3JyX3JzaGlmdHNbIGsgXSApICov
Ci0KLSAgICAgICAgd1sgayBdID0gbWF0cml4X3B0ciggV0xUUF9wdHIsIExUUF9PUkRFUi8yLCBM
VFBfT1JERVIvMiwgTFRQX09SREVSICk7IC8qIHcgaW4gUSggMTggLSBjb3JyX3JzaGlmdHNbIGsg
XSApICovCi0gICAgICAgIHNpbGtfYXNzZXJ0KCB3W2tdID49IDAgKTsKLQotICAgICAgICByX3B0
ciAgICAgKz0gc3ViZnJfbGVuZ3RoOwotICAgICAgICBiX1ExNF9wdHIgKz0gTFRQX09SREVSOwot
ICAgICAgICBXTFRQX3B0ciAgKz0gTFRQX09SREVSICogTFRQX09SREVSOwotICAgIH0KLQotICAg
IG1heFJzaGlmdHMgPSAwOwotICAgIGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysrICkgewot
ICAgICAgICBtYXhSc2hpZnRzID0gc2lsa19tYXhfaW50KCBjb3JyX3JzaGlmdHNbIGsgXSwgbWF4
UnNoaWZ0cyApOwotICAgIH0KLQotICAgIC8qIENvbXB1dGUgTFRQIGNvZGluZyBnYWluICovCi0g
ICAgaWYoIExUUHJlZENvZEdhaW5fUTcgIT0gTlVMTCApIHsKLSAgICAgICAgTFBDX0xUUF9yZXNf
bnJnID0gMDsKLSAgICAgICAgTFBDX3Jlc19ucmcgICAgID0gMDsKLSAgICAgICAgc2lsa19hc3Nl
cnQoIExUUF9DT1JSU19IRUFEX1JPT00gPj0gMiApOyAvKiBDaGVjayB0aGF0IG5vIG92ZXJmbG93
IHdpbGwgaGFwcGVuIHdoZW4gYWRkaW5nICovCi0gICAgICAgIGZvciggayA9IDA7IGsgPCBuYl9z
dWJmcjsgaysrICkgewotICAgICAgICAgICAgTFBDX3Jlc19ucmcgICAgID0gc2lsa19BREQzMigg
TFBDX3Jlc19ucmcsICAgICBzaWxrX1JTSElGVCggc2lsa19BREQzMiggc2lsa19TTVVMV0IoICBy
clsgayBdLCBXZ2h0X1ExNVsgayBdICksIDEgKSwgMSArICggbWF4UnNoaWZ0cyAtIGNvcnJfcnNo
aWZ0c1sgayBdICkgKSApOyAvKiBRKCAtbWF4UnNoaWZ0cyApICovCi0gICAgICAgICAgICBMUENf
TFRQX3Jlc19ucmcgPSBzaWxrX0FERDMyKCBMUENfTFRQX3Jlc19ucmcsIHNpbGtfUlNISUZUKCBz
aWxrX0FERDMyKCBzaWxrX1NNVUxXQiggbnJnWyBrIF0sIFdnaHRfUTE1WyBrIF0gKSwgMSApLCAx
ICsgKCBtYXhSc2hpZnRzIC0gY29ycl9yc2hpZnRzWyBrIF0gKSApICk7IC8qIFEoIC1tYXhSc2hp
ZnRzICkgKi8KLSAgICAgICAgfQotICAgICAgICBMUENfTFRQX3Jlc19ucmcgPSBzaWxrX21heCgg
TFBDX0xUUF9yZXNfbnJnLCAxICk7IC8qIGF2b2lkIGRpdmlzaW9uIGJ5IHplcm8gKi8KLQotICAg
ICAgICBkaXZfUTE2ID0gc2lsa19ESVYzMl92YXJRKCBMUENfcmVzX25yZywgTFBDX0xUUF9yZXNf
bnJnLCAxNiApOwotICAgICAgICAqTFRQcmVkQ29kR2Fpbl9RNyA9ICggb3B1c19pbnQgKXNpbGtf
U01VTEJCKCAzLCBzaWxrX2xpbjJsb2coIGRpdl9RMTYgKSAtICggMTYgPDwgNyApICk7Ci0KLSAg
ICAgICAgc2lsa19hc3NlcnQoICpMVFByZWRDb2RHYWluX1E3ID09ICggb3B1c19pbnQgKXNpbGtf
U0FUMTYoIHNpbGtfTVVMKCAzLCBzaWxrX2xpbjJsb2coIGRpdl9RMTYgKSAtICggMTYgPDwgNyAp
ICkgKSApOwotICAgIH0KLQotICAgIC8qIHNtb290aGluZyAqLwotICAgIC8qIGQgPSBzdW0oIEIs
IDEgKTsgKi8KLSAgICBiX1ExNF9wdHIgPSBiX1ExNDsKLSAgICBmb3IoIGsgPSAwOyBrIDwgbmJf
c3ViZnI7IGsrKyApIHsKLSAgICAgICAgZF9RMTRbIGsgXSA9IDA7CiAgICAgICAgIGZvciggaSA9
IDA7IGkgPCBMVFBfT1JERVI7IGkrKyApIHsKLSAgICAgICAgICAgIGRfUTE0WyBrIF0gKz0gYl9R
MTRfcHRyWyBpIF07Ci0gICAgICAgIH0KLSAgICAgICAgYl9RMTRfcHRyICs9IExUUF9PUkRFUjsK
LSAgICB9Ci0KLSAgICAvKiBtID0gKCB3ICogZCcgKSAvICggc3VtKCB3ICkgKyAxZS0zICk7ICov
Ci0KLSAgICAvKiBGaW5kIG1heGltdW0gYWJzb2x1dGUgdmFsdWUgb2YgZF9RMTQgYW5kIHRoZSBi
aXRzIHVzZWQgYnkgdyBpbiBRMCAqLwotICAgIG1heF9hYnNfZF9RMTQgPSAwOwotICAgIG1heF93
X2JpdHMgICAgPSAwOwotICAgIGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysrICkgewotICAg
ICAgICBtYXhfYWJzX2RfUTE0ID0gc2lsa19tYXhfMzIoIG1heF9hYnNfZF9RMTQsIHNpbGtfYWJz
KCBkX1ExNFsgayBdICkgKTsKLSAgICAgICAgLyogd1sgayBdIGlzIGluIFEoIDE4IC0gY29ycl9y
c2hpZnRzWyBrIF0gKSAqLwotICAgICAgICAvKiBGaW5kIGJpdHMgbmVlZGVkIGluIFEoIDE4IC0g
bWF4UnNoaWZ0cyApICovCi0gICAgICAgIG1heF93X2JpdHMgPSBzaWxrX21heF8zMiggbWF4X3df
Yml0cywgMzIgLSBzaWxrX0NMWjMyKCB3WyBrIF0gKSArIGNvcnJfcnNoaWZ0c1sgayBdIC0gbWF4
UnNoaWZ0cyApOwotICAgIH0KLQotICAgIC8qIG1heF9hYnNfZF9RMTQgPSAoNSA8PCAxNSk7IHdv
cnN0IGNhc2UsIGkuZS4gTFRQX09SREVSICogLXNpbGtfaW50MTZfTUlOICovCi0gICAgc2lsa19h
c3NlcnQoIG1heF9hYnNfZF9RMTQgPD0gKCA1IDw8IDE1ICkgKTsKLQotICAgIC8qIEhvdyBtYW55
IGJpdHMgaXMgbmVlZGVkIGZvciB3KmQnIGluIFEoIDE4IC0gbWF4UnNoaWZ0cyApIGluIHRoZSB3
b3JzdCBjYXNlLCBvZiBhbGwgZF9RMTQncyBiZWluZyBlcXVhbCB0byBtYXhfYWJzX2RfUTE0ICov
Ci0gICAgZXh0cmFfc2hpZnRzID0gbWF4X3dfYml0cyArIDMyIC0gc2lsa19DTFozMiggbWF4X2Fi
c19kX1ExNCApIC0gMTQ7Ci0KLSAgICAvKiBTdWJ0cmFjdCB3aGF0IHdlIGdvdCBhdmFpbGFibGU7
IGJpdHMgaW4gb3V0cHV0IHZhciBwbHVzIG1heFJzaGlmdHMgKi8KLSAgICBleHRyYV9zaGlmdHMg
LT0gKCAzMiAtIDEgLSAyICsgbWF4UnNoaWZ0cyApOyAvKiBLZWVwIHNpZ24gYml0IGZyZWUgYXMg
d2VsbCBhcyAyIGJpdHMgZm9yIGFjY3VtdWxhdGlvbiAqLwotICAgIGV4dHJhX3NoaWZ0cyA9IHNp
bGtfbWF4X2ludCggZXh0cmFfc2hpZnRzLCAwICk7Ci0KLSAgICBtYXhSc2hpZnRzX3d4dHJhID0g
bWF4UnNoaWZ0cyArIGV4dHJhX3NoaWZ0czsKLQotICAgIHRlbXAzMiA9IHNpbGtfUlNISUZUKCAy
NjIsIG1heFJzaGlmdHMgKyBleHRyYV9zaGlmdHMgKSArIDE7IC8qIDFlLTNmIGluIFEoIDE4IC0g
KG1heFJzaGlmdHMgKyBleHRyYV9zaGlmdHMpICkgKi8KLSAgICB3ZCA9IDA7Ci0gICAgZm9yKCBr
ID0gMDsgayA8IG5iX3N1YmZyOyBrKysgKSB7Ci0gICAgICAgIC8qIHcgaGFzIGF0IGxlYXN0IDIg
Yml0cyBvZiBoZWFkcm9vbSBzbyBubyBvdmVyZmxvdyBzaG91bGQgaGFwcGVuICovCi0gICAgICAg
IHRlbXAzMiA9IHNpbGtfQUREMzIoIHRlbXAzMiwgICAgICAgICAgICAgICAgICAgICBzaWxrX1JT
SElGVCggd1sgayBdLCBtYXhSc2hpZnRzX3d4dHJhIC0gY29ycl9yc2hpZnRzWyBrIF0gKSApOyAg
ICAgICAgICAgICAgICAgICAgICAvKiBRKCAxOCAtIG1heFJzaGlmdHNfd3h0cmEgKSAqLwotICAg
ICAgICB3ZCAgICAgPSBzaWxrX0FERDMyKCB3ZCwgc2lsa19MU0hJRlQoIHNpbGtfU01VTFdXKCBz
aWxrX1JTSElGVCggd1sgayBdLCBtYXhSc2hpZnRzX3d4dHJhIC0gY29ycl9yc2hpZnRzWyBrIF0g
KSwgZF9RMTRbIGsgXSApLCAyICkgKTsgLyogUSggMTggLSBtYXhSc2hpZnRzX3d4dHJhICkgKi8K
LSAgICB9Ci0gICAgbV9RMTIgPSBzaWxrX0RJVjMyX3ZhclEoIHdkLCB0ZW1wMzIsIDEyICk7Ci0K
LSAgICBiX1ExNF9wdHIgPSBiX1ExNDsKLSAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsr
KyApIHsKLSAgICAgICAgLyogd19maXhbIGsgXSBmcm9tIFEoIDE4IC0gY29ycl9yc2hpZnRzWyBr
IF0gKSB0byBRKCAxNiApICovCi0gICAgICAgIGlmKCAyIC0gY29ycl9yc2hpZnRzW2tdID4gMCAp
IHsKLSAgICAgICAgICAgIHRlbXAzMiA9IHNpbGtfUlNISUZUKCB3WyBrIF0sIDIgLSBjb3JyX3Jz
aGlmdHNbIGsgXSApOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgdGVtcDMyID0gc2ls
a19MU0hJRlRfU0FUMzIoIHdbIGsgXSwgY29ycl9yc2hpZnRzWyBrIF0gLSAyICk7CisgICAgICAg
ICAgICB4WExUUF9RMTdfcHRyWyBpIF0gPSBzaWxrX0RJVjMyX3ZhclEoIHhYTFRQX1ExN19wdHJb
IGkgXSwgdGVtcCwgMTcgKTsKICAgICAgICAgfQotCi0gICAgICAgIGdfUTI2ID0gc2lsa19NVUwo
Ci0gICAgICAgICAgICBzaWxrX0RJVjMyKAotICAgICAgICAgICAgICAgIFNJTEtfRklYX0NPTlNU
KCBMVFBfU01PT1RISU5HLCAyNiApLAotICAgICAgICAgICAgICAgIHNpbGtfUlNISUZUKCBTSUxL
X0ZJWF9DT05TVCggTFRQX1NNT09USElORywgMjYgKSwgMTAgKSArIHRlbXAzMiApLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogUTEwICovCi0gICAgICAgICAgICBzaWxrX0xTSElGVF9TQVQz
Miggc2lsa19TVUJfU0FUMzIoIChvcHVzX2ludDMyKW1fUTEyLCBzaWxrX1JTSElGVCggZF9RMTRb
IGsgXSwgMiApICksIDQgKSApOyAgICAvKiBRMTYgKi8KLQotICAgICAgICB0ZW1wMzIgPSAwOwot
ICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSOyBpKysgKSB7Ci0gICAgICAgICAgICBk
ZWx0YV9iX1ExNFsgaSBdID0gc2lsa19tYXhfMTYoIGJfUTE0X3B0clsgaSBdLCAxNjM4ICk7ICAg
ICAvKiAxNjM4X1ExNCA9IDAuMV9RMCAqLwotICAgICAgICAgICAgdGVtcDMyICs9IGRlbHRhX2Jf
UTE0WyBpIF07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUTE0ICovCisjZWxz
ZQorICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSICogTFRQX09SREVSOyBpKysgKSB7
CisgICAgICAgICAgICBYWExUUF9RMTdfcHRyWyBpIF0gPSAob3B1c19pbnQzMikoIHNpbGtfTFNI
SUZUNjQoIChvcHVzX2ludDY0KVhYTFRQX1ExN19wdHJbIGkgXSwgMTcgKSAvIHRlbXAgKTsKICAg
ICAgICAgfQotICAgICAgICB0ZW1wMzIgPSBzaWxrX0RJVjMyKCBnX1EyNiwgdGVtcDMyICk7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogUTE0IC0+IFExMiAqLwogICAgICAgICBmb3IoIGkg
PSAwOyBpIDwgTFRQX09SREVSOyBpKysgKSB7Ci0gICAgICAgICAgICBiX1ExNF9wdHJbIGkgXSA9
IHNpbGtfTElNSVRfMzIoIChvcHVzX2ludDMyKWJfUTE0X3B0clsgaSBdICsgc2lsa19TTVVMV0Io
IHNpbGtfTFNISUZUX1NBVDMyKCB0ZW1wMzIsIDQgKSwgZGVsdGFfYl9RMTRbIGkgXSApLCAtMTYw
MDAsIDI4MDAwICk7CisgICAgICAgICAgICB4WExUUF9RMTdfcHRyWyBpIF0gPSAob3B1c19pbnQz
MikoIHNpbGtfTFNISUZUNjQoIChvcHVzX2ludDY0KXhYTFRQX1ExN19wdHJbIGkgXSwgMTcgKSAv
IHRlbXAgKTsKICAgICAgICAgfQotICAgICAgICBiX1ExNF9wdHIgKz0gTFRQX09SREVSOwotICAg
IH0KLX0KLQotdm9pZCBzaWxrX2ZpdF9MVFAoCi0gICAgb3B1c19pbnQzMiBMVFBfY29lZnNfUTE2
WyBMVFBfT1JERVIgXSwKLSAgICBvcHVzX2ludDE2IExUUF9jb2Vmc19RMTRbIExUUF9PUkRFUiBd
Ci0pCi17Ci0gICAgb3B1c19pbnQgaTsKLQotICAgIGZvciggaSA9IDA7IGkgPCBMVFBfT1JERVI7
IGkrKyApIHsKLSAgICAgICAgTFRQX2NvZWZzX1ExNFsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19T
QVQxNiggc2lsa19SU0hJRlRfUk9VTkQoIExUUF9jb2Vmc19RMTZbIGkgXSwgMiApICk7CisjZW5k
aWYKK1RPQyhkaXYpCisgICAgICAgIHJfcHRyICAgICAgICAgKz0gc3ViZnJfbGVuZ3RoOworICAg
ICAgICBYWExUUF9RMTdfcHRyICs9IExUUF9PUkRFUiAqIExUUF9PUkRFUjsKKyAgICAgICAgeFhM
VFBfUTE3X3B0ciArPSBMVFBfT1JERVI7CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVk
L2ZpbmRfcGl0Y2hfbGFnc19GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX3BpdGNoX2xhZ3NfRklYLmMK
aW5kZXggYjg0NDBhODI0N2EzMWNlNGNmNzY4ZjZmMTQ4ZGQ0YTllNzVmMzUzMy4uOTMwM2U5ZGIx
ZjMzOGNjYzE3NzFlOTBjYjZiNTNjMDVlNjA1NDdkYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL2Zp
bmRfcGl0Y2hfbGFnc19GSVguYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvZmluZF9waXRjaF9sYWdzX0ZJWC5j
CkBAIC00NCw3ICs0NCw3IEBAIHZvaWQgc2lsa19maW5kX3BpdGNoX2xhZ3NfRklYKAogewogICAg
IG9wdXNfaW50ICAgYnVmX2xlbiwgaSwgc2NhbGU7CiAgICAgb3B1c19pbnQzMiB0aHJobGRfUTEz
LCByZXNfbnJnOwotICAgIGNvbnN0IG9wdXNfaW50MTYgKnhfYnVmLCAqeF9idWZfcHRyOworICAg
IGNvbnN0IG9wdXNfaW50MTYgKnhfcHRyOwogICAgIFZBUkRFQ0woIG9wdXNfaW50MTYsIFdzaWcg
KTsKICAgICBvcHVzX2ludDE2ICpXc2lnX3B0cjsKICAgICBvcHVzX2ludDMyIGF1dG9fY29yclsg
TUFYX0ZJTkRfUElUQ0hfTFBDX09SREVSICsgMSBdOwpAQCAtNjEsOCArNjEsNiBAQCB2b2lkIHNp
bGtfZmluZF9waXRjaF9sYWdzX0ZJWCgKICAgICAvKiBTYWZldHkgY2hlY2sgKi8KICAgICBzaWxr
X2Fzc2VydCggYnVmX2xlbiA+PSBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCApOwog
Ci0gICAgeF9idWYgPSB4IC0gcHNFbmMtPnNDbW4ubHRwX21lbV9sZW5ndGg7Ci0KICAgICAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBFc3RpbWF0ZSBMUEMg
QVIgY29lZmZpY2llbnRzICAgICAgKi8KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KQEAgLTcyLDE5ICs3MCwxOSBAQCB2b2lkIHNpbGtfZmluZF9waXRjaF9sYWdz
X0ZJWCgKICAgICBBTExPQyggV3NpZywgcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGgs
IG9wdXNfaW50MTYgKTsKIAogICAgIC8qIEZpcnN0IExBX0xUUCBzYW1wbGVzICovCi0gICAgeF9i
dWZfcHRyID0geF9idWYgKyBidWZfbGVuIC0gcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5n
dGg7CisgICAgeF9wdHIgPSB4ICsgYnVmX2xlbiAtIHBzRW5jLT5zQ21uLnBpdGNoX0xQQ193aW5f
bGVuZ3RoOwogICAgIFdzaWdfcHRyICA9IFdzaWc7Ci0gICAgc2lsa19hcHBseV9zaW5lX3dpbmRv
dyggV3NpZ19wdHIsIHhfYnVmX3B0ciwgMSwgcHNFbmMtPnNDbW4ubGFfcGl0Y2ggKTsKKyAgICBz
aWxrX2FwcGx5X3NpbmVfd2luZG93KCBXc2lnX3B0ciwgeF9wdHIsIDEsIHBzRW5jLT5zQ21uLmxh
X3BpdGNoICk7CiAKICAgICAvKiBNaWRkbGUgdW4gLSB3aW5kb3dlZCBzYW1wbGVzICovCiAgICAg
V3NpZ19wdHIgICs9IHBzRW5jLT5zQ21uLmxhX3BpdGNoOwotICAgIHhfYnVmX3B0ciArPSBwc0Vu
Yy0+c0Ntbi5sYV9waXRjaDsKLSAgICBzaWxrX21lbWNweSggV3NpZ19wdHIsIHhfYnVmX3B0ciwg
KCBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2luX2xlbmd0aCAtIHNpbGtfTFNISUZUKCBwc0VuYy0+
c0Ntbi5sYV9waXRjaCwgMSApICkgKiBzaXplb2YoIG9wdXNfaW50MTYgKSApOworICAgIHhfcHRy
ICs9IHBzRW5jLT5zQ21uLmxhX3BpdGNoOworICAgIHNpbGtfbWVtY3B5KCBXc2lnX3B0ciwgeF9w
dHIsICggcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGggLSBzaWxrX0xTSElGVCggcHNF
bmMtPnNDbW4ubGFfcGl0Y2gsIDEgKSApICogc2l6ZW9mKCBvcHVzX2ludDE2ICkgKTsKIAogICAg
IC8qIExhc3QgTEFfTFRQIHNhbXBsZXMgKi8KICAgICBXc2lnX3B0ciAgKz0gcHNFbmMtPnNDbW4u
cGl0Y2hfTFBDX3dpbl9sZW5ndGggLSBzaWxrX0xTSElGVCggcHNFbmMtPnNDbW4ubGFfcGl0Y2gs
IDEgKTsKLSAgICB4X2J1Zl9wdHIgKz0gcHNFbmMtPnNDbW4ucGl0Y2hfTFBDX3dpbl9sZW5ndGgg
LSBzaWxrX0xTSElGVCggcHNFbmMtPnNDbW4ubGFfcGl0Y2gsIDEgKTsKLSAgICBzaWxrX2FwcGx5
X3NpbmVfd2luZG93KCBXc2lnX3B0ciwgeF9idWZfcHRyLCAyLCBwc0VuYy0+c0Ntbi5sYV9waXRj
aCApOworICAgIHhfcHRyICs9IHBzRW5jLT5zQ21uLnBpdGNoX0xQQ193aW5fbGVuZ3RoIC0gc2ls
a19MU0hJRlQoIHBzRW5jLT5zQ21uLmxhX3BpdGNoLCAxICk7CisgICAgc2lsa19hcHBseV9zaW5l
X3dpbmRvdyggV3NpZ19wdHIsIHhfcHRyLCAyLCBwc0VuYy0+c0Ntbi5sYV9waXRjaCApOwogCiAg
ICAgLyogQ2FsY3VsYXRlIGF1dG9jb3JyZWxhdGlvbiBzZXF1ZW5jZSAqLwogICAgIHNpbGtfYXV0
b2NvcnIoIGF1dG9fY29yciwgJnNjYWxlLCBXc2lnLCBwc0VuYy0+c0Ntbi5waXRjaF9MUENfd2lu
X2xlbmd0aCwgcHNFbmMtPnNDbW4ucGl0Y2hFc3RpbWF0aW9uTFBDT3JkZXIgKyAxLCBhcmNoICk7
CkBAIC0xMTIsNyArMTEwLDcgQEAgdm9pZCBzaWxrX2ZpbmRfcGl0Y2hfbGFnc19GSVgoCiAgICAg
LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIExQQyBh
bmFseXNpcyBmaWx0ZXJpbmcgICAgICAgICAgICAgICAgKi8KICAgICAvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgc2lsa19MUENfYW5hbHlzaXNfZmlsdGVy
KCByZXMsIHhfYnVmLCBBX1ExMiwgYnVmX2xlbiwgcHNFbmMtPnNDbW4ucGl0Y2hFc3RpbWF0aW9u
TFBDT3JkZXIsIHBzRW5jLT5zQ21uLmFyY2ggKTsKKyAgICBzaWxrX0xQQ19hbmFseXNpc19maWx0
ZXIoIHJlcywgeCwgQV9RMTIsIGJ1Zl9sZW4sIHBzRW5jLT5zQ21uLnBpdGNoRXN0aW1hdGlvbkxQ
Q09yZGVyLCBwc0VuYy0+c0Ntbi5hcmNoICk7CiAKICAgICBpZiggcHNFbmMtPnNDbW4uaW5kaWNl
cy5zaWduYWxUeXBlICE9IFRZUEVfTk9fVk9JQ0VfQUNUSVZJVFkgJiYgcHNFbmMtPnNDbW4uZmly
c3RfZnJhbWVfYWZ0ZXJfcmVzZXQgPT0gMCApIHsKICAgICAgICAgLyogVGhyZXNob2xkIGZvciBw
aXRjaCBlc3RpbWF0b3IgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX3ByZWRfY29lZnNf
RklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZml4ZWQvZmluZF9wcmVkX2NvZWZzX0ZJWC5jCmluZGV4IGQzMDhlOWNmNWZl
NjA5ZTE3YjA2YjRkMTMzOTE5MzEzNGNjY2YzZjguLjI0YzZhYWIzYTc3Yzk1ZTFjOTA0NjZlM2Nm
YjEzMWU1MmI4MWUxMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9maW5kX3ByZWRfY29lZnNfRklY
LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2ZpeGVkL2ZpbmRfcHJlZF9jb2Vmc19GSVguYwpAQCAtNDEsMTMgKzQxLDEy
IEBAIHZvaWQgc2lsa19maW5kX3ByZWRfY29lZnNfRklYKAogKQogewogICAgIG9wdXNfaW50ICAg
ICAgICAgaTsKLSAgICBvcHVzX2ludDMyICAgICAgIGludkdhaW5zX1ExNlsgTUFYX05CX1NVQkZS
IF0sIGxvY2FsX2dhaW5zWyBNQVhfTkJfU1VCRlIgXSwgV2dodF9RMTVbIE1BWF9OQl9TVUJGUiBd
OworICAgIG9wdXNfaW50MzIgICAgICAgaW52R2FpbnNfUTE2WyBNQVhfTkJfU1VCRlIgXSwgbG9j
YWxfZ2FpbnNbIE1BWF9OQl9TVUJGUiBdOwogICAgIG9wdXNfaW50MTYgICAgICAgTkxTRl9RMTVb
IE1BWF9MUENfT1JERVIgXTsKICAgICBjb25zdCBvcHVzX2ludDE2ICp4X3B0cjsKICAgICBvcHVz
X2ludDE2ICAgICAgICp4X3ByZV9wdHI7CiAgICAgVkFSREVDTCggb3B1c19pbnQxNiwgTFBDX2lu
X3ByZSApOwotICAgIG9wdXNfaW50MzIgICAgICAgdG1wLCBtaW5fZ2Fpbl9RMTYsIG1pbkludkdh
aW5fUTMwOwotICAgIG9wdXNfaW50ICAgICAgICAgTFRQX2NvcnJzX3JzaGlmdFsgTUFYX05CX1NV
QkZSIF07CisgICAgb3B1c19pbnQzMiAgICAgICBtaW5fZ2Fpbl9RMTYsIG1pbkludkdhaW5fUTMw
OwogICAgIFNBVkVfU1RBQ0s7CiAKICAgICAvKiB3ZWlnaHRpbmcgZm9yIHdlaWdodGVkIGxlYXN0
IHNxdWFyZXMgKi8KQEAgLTYxLDEzICs2MCwxMSBAQCB2b2lkIHNpbGtfZmluZF9wcmVkX2NvZWZz
X0ZJWCgKICAgICAgICAgLyogSW52ZXJ0IGFuZCBub3JtYWxpemUgZ2FpbnMsIGFuZCBlbnN1cmUg
dGhhdCBtYXhpbXVtIGludkdhaW5zX1ExNiBpcyB3aXRoaW4gcmFuZ2Ugb2YgYSAxNiBiaXQgaW50
ICovCiAgICAgICAgIGludkdhaW5zX1ExNlsgaSBdID0gc2lsa19ESVYzMl92YXJRKCBtaW5fZ2Fp
bl9RMTYsIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBpIF0sIDE2IC0gMiApOwogCi0gICAgICAgIC8q
IEVuc3VyZSBXZ2h0X1ExNSBhIG1pbmltdW0gdmFsdWUgMSAqLwotICAgICAgICBpbnZHYWluc19R
MTZbIGkgXSA9IHNpbGtfbWF4KCBpbnZHYWluc19RMTZbIGkgXSwgMzYzICk7CisgICAgICAgIC8q
IExpbWl0IGludmVyc2UgKi8KKyAgICAgICAgaW52R2FpbnNfUTE2WyBpIF0gPSBzaWxrX21heCgg
aW52R2FpbnNfUTE2WyBpIF0sIDEwMCApOwogCiAgICAgICAgIC8qIFNxdWFyZSB0aGUgaW52ZXJ0
ZWQgZ2FpbnMgKi8KICAgICAgICAgc2lsa19hc3NlcnQoIGludkdhaW5zX1ExNlsgaSBdID09IHNp
bGtfU0FUMTYoIGludkdhaW5zX1ExNlsgaSBdICkgKTsKLSAgICAgICAgdG1wID0gc2lsa19TTVVM
V0IoIGludkdhaW5zX1ExNlsgaSBdLCBpbnZHYWluc19RMTZbIGkgXSApOwotICAgICAgICBXZ2h0
X1ExNVsgaSBdID0gc2lsa19SU0hJRlQoIHRtcCwgMSApOwogCiAgICAgICAgIC8qIEludmVydCB0
aGUgaW52ZXJ0ZWQgYW5kIG5vcm1hbGl6ZWQgZ2FpbnMgKi8KICAgICAgICAgbG9jYWxfZ2FpbnNb
IGkgXSA9IHNpbGtfRElWMzIoICggKG9wdXNfaW50MzIpMSA8PCAxNiApLCBpbnZHYWluc19RMTZb
IGkgXSApOwpAQCAtNzcsMjQgKzc0LDI0IEBAIHZvaWQgc2lsa19maW5kX3ByZWRfY29lZnNfRklY
KAogICAgICAgICAgICBwc0VuYy0+c0Ntbi5uYl9zdWJmciAqIHBzRW5jLT5zQ21uLnByZWRpY3RM
UENPcmRlcgogICAgICAgICAgICAgICAgKyBwc0VuYy0+c0Ntbi5mcmFtZV9sZW5ndGgsIG9wdXNf
aW50MTYgKTsKICAgICBpZiggcHNFbmMtPnNDbW4uaW5kaWNlcy5zaWduYWxUeXBlID09IFRZUEVf
Vk9JQ0VEICkgewotICAgICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCBXTFRQICk7CisgICAgICAg
IFZBUkRFQ0woIG9wdXNfaW50MzIsIHhYTFRQX1ExNyApOworICAgICAgICBWQVJERUNMKCBvcHVz
X2ludDMyLCBYWExUUF9RMTcgKTsKIAogICAgICAgICAvKioqKioqKioqKi8KICAgICAgICAgLyog
Vk9JQ0VEICovCiAgICAgICAgIC8qKioqKioqKioqLwogICAgICAgICBzaWxrX2Fzc2VydCggcHNF
bmMtPnNDbW4ubHRwX21lbV9sZW5ndGggLSBwc0VuYy0+c0Ntbi5wcmVkaWN0TFBDT3JkZXIgPj0g
cHNFbmNDdHJsLT5waXRjaExbIDAgXSArIExUUF9PUkRFUiAvIDIgKTsKIAotICAgICAgICBBTExP
QyggV0xUUCwgcHNFbmMtPnNDbW4ubmJfc3ViZnIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIsIG9w
dXNfaW50MzIgKTsKKyAgICAgICAgQUxMT0MoIHhYTFRQX1ExNywgcHNFbmMtPnNDbW4ubmJfc3Vi
ZnIgKiBMVFBfT1JERVIsIG9wdXNfaW50MzIgKTsKKyAgICAgICAgQUxMT0MoIFhYTFRQX1ExNywg
cHNFbmMtPnNDbW4ubmJfc3ViZnIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIsIG9wdXNfaW50MzIg
KTsKIAogICAgICAgICAvKiBMVFAgYW5hbHlzaXMgKi8KLSAgICAgICAgc2lsa19maW5kX0xUUF9G
SVgoIHBzRW5jQ3RybC0+TFRQQ29lZl9RMTQsIFdMVFAsICZwc0VuY0N0cmwtPkxUUHJlZENvZEdh
aW5fUTcsCi0gICAgICAgICAgICByZXNfcGl0Y2gsIHBzRW5jQ3RybC0+cGl0Y2hMLCBXZ2h0X1Ex
NSwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoLAotICAgICAgICAgICAgcHNFbmMtPnNDbW4ubmJf
c3ViZnIsIHBzRW5jLT5zQ21uLmx0cF9tZW1fbGVuZ3RoLCBMVFBfY29ycnNfcnNoaWZ0LCBwc0Vu
Yy0+c0Ntbi5hcmNoICk7CisgICAgICAgIHNpbGtfZmluZF9MVFBfRklYKCBYWExUUF9RMTcsIHhY
TFRQX1ExNywgcmVzX3BpdGNoLAorICAgICAgICAgICAgcHNFbmNDdHJsLT5waXRjaEwsIHBzRW5j
LT5zQ21uLnN1YmZyX2xlbmd0aCwgcHNFbmMtPnNDbW4ubmJfc3ViZnIsIHBzRW5jLT5zQ21uLmFy
Y2ggKTsKIAogICAgICAgICAvKiBRdWFudGl6ZSBMVFAgZ2FpbiBwYXJhbWV0ZXJzICovCiAgICAg
ICAgIHNpbGtfcXVhbnRfTFRQX2dhaW5zKCBwc0VuY0N0cmwtPkxUUENvZWZfUTE0LCBwc0VuYy0+
c0Ntbi5pbmRpY2VzLkxUUEluZGV4LCAmcHNFbmMtPnNDbW4uaW5kaWNlcy5QRVJJbmRleCwKLSAg
ICAgICAgICAgICZwc0VuYy0+c0Ntbi5zdW1fbG9nX2dhaW5fUTcsIFdMVFAsIHBzRW5jLT5zQ21u
Lm11X0xUUF9ROSwgcHNFbmMtPnNDbW4uTFRQUXVhbnRMb3dDb21wbGV4aXR5LCBwc0VuYy0+c0Nt
bi5uYl9zdWJmciwKLSAgICAgICAgICAgIHBzRW5jLT5zQ21uLmFyY2gpOworICAgICAgICAgICAg
JnBzRW5jLT5zQ21uLnN1bV9sb2dfZ2Fpbl9RNywgJnBzRW5jQ3RybC0+TFRQcmVkQ29kR2Fpbl9R
NywgWFhMVFBfUTE3LCB4WExUUF9RMTcsIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCwgcHNFbmMt
PnNDbW4ubmJfc3ViZnIsIHBzRW5jLT5zQ21uLmFyY2ggKTsKIAogICAgICAgICAvKiBDb250cm9s
IExUUCBzY2FsaW5nICovCiAgICAgICAgIHNpbGtfTFRQX3NjYWxlX2N0cmxfRklYKCBwc0VuYywg
cHNFbmNDdHJsLCBjb25kQ29kaW5nICk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvazJhX0ZJWC5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2ZpeGVkL2syYV9GSVguYwppbmRleCA1ZmVlNTk5YmNiNzQzMDVhMWQ0NWM0MWU4Nzk1
YTBlZTNmOWNiNWQ5Li41NDlmNmVhZGFhMjlkZTg1YmZkNGMyNjdjNzkyNTljNmMxMTRhOWQ5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZml4ZWQvazJhX0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9rMmFfRklYLmMK
QEAgLTM5LDE0ICszOSwxNSBAQCB2b2lkIHNpbGtfazJhKAogKQogewogICAgIG9wdXNfaW50ICAg
aywgbjsKLSAgICBvcHVzX2ludDMyIEF0bXBbIFNJTEtfTUFYX09SREVSX0xQQyBdOworICAgIG9w
dXNfaW50MzIgcmMsIHRtcDEsIHRtcDI7CiAKICAgICBmb3IoIGsgPSAwOyBrIDwgb3JkZXI7IGsr
KyApIHsKLSAgICAgICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyApIHsKLSAgICAgICAgICAgIEF0
bXBbIG4gXSA9IEFfUTI0WyBuIF07Ci0gICAgICAgIH0KLSAgICAgICAgZm9yKCBuID0gMDsgbiA8
IGs7IG4rKyApIHsKLSAgICAgICAgICAgIEFfUTI0WyBuIF0gPSBzaWxrX1NNTEFXQiggQV9RMjRb
IG4gXSwgc2lsa19MU0hJRlQoIEF0bXBbIGsgLSBuIC0gMSBdLCAxICksIHJjX1ExNVsgayBdICk7
CisgICAgICAgIHJjID0gcmNfUTE1WyBrIF07CisgICAgICAgIGZvciggbiA9IDA7IG4gPCAoayAr
IDEpID4+IDE7IG4rKyApIHsKKyAgICAgICAgICAgIHRtcDEgPSBBX1EyNFsgbiBdOworICAgICAg
ICAgICAgdG1wMiA9IEFfUTI0WyBrIC0gbiAtIDEgXTsKKyAgICAgICAgICAgIEFfUTI0WyBuIF0g
ICAgICAgICA9IHNpbGtfU01MQVdCKCB0bXAxLCBzaWxrX0xTSElGVCggdG1wMiwgMSApLCByYyAp
OworICAgICAgICAgICAgQV9RMjRbIGsgLSBuIC0gMSBdID0gc2lsa19TTUxBV0IoIHRtcDIsIHNp
bGtfTFNISUZUKCB0bXAxLCAxICksIHJjICk7CiAgICAgICAgIH0KICAgICAgICAgQV9RMjRbIGsg
XSA9IC1zaWxrX0xTSElGVCggKG9wdXNfaW50MzIpcmNfUTE1WyBrIF0sIDkgKTsKICAgICB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZml4ZWQvazJhX1ExNl9GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9rMmFfUTE2X0ZJ
WC5jCmluZGV4IDNiMDM5ODc1NDQ2YTEzODg2YTliMjJlYTFlMmIwZjU0YzIwNjJhMDUuLjE1OTVh
YTYyMTI2NjI1NzUwNzA1YjVkNDdiNDJiZGM1ODZmMDU5NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhl
ZC9rMmFfUTE2X0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9rMmFfUTE2X0ZJWC5jCkBAIC0zOSwxNSAr
MzksMTYgQEAgdm9pZCBzaWxrX2syYV9RMTYoCiApCiB7CiAgICAgb3B1c19pbnQgICBrLCBuOwot
ICAgIG9wdXNfaW50MzIgQXRtcFsgU0lMS19NQVhfT1JERVJfTFBDIF07CisgICAgb3B1c19pbnQz
MiByYywgdG1wMSwgdG1wMjsKIAogICAgIGZvciggayA9IDA7IGsgPCBvcmRlcjsgaysrICkgewot
ICAgICAgICBmb3IoIG4gPSAwOyBuIDwgazsgbisrICkgewotICAgICAgICAgICAgQXRtcFsgbiBd
ID0gQV9RMjRbIG4gXTsKKyAgICAgICAgcmMgPSByY19RMTZbIGsgXTsKKyAgICAgICAgZm9yKCBu
ID0gMDsgbiA8IChrICsgMSkgPj4gMTsgbisrICkgeworICAgICAgICAgICAgdG1wMSA9IEFfUTI0
WyBuIF07CisgICAgICAgICAgICB0bXAyID0gQV9RMjRbIGsgLSBuIC0gMSBdOworICAgICAgICAg
ICAgQV9RMjRbIG4gXSAgICAgICAgID0gc2lsa19TTUxBV1coIHRtcDEsIHRtcDIsIHJjICk7Cisg
ICAgICAgICAgICBBX1EyNFsgayAtIG4gLSAxIF0gPSBzaWxrX1NNTEFXVyggdG1wMiwgdG1wMSwg
cmMgKTsKICAgICAgICAgfQotICAgICAgICBmb3IoIG4gPSAwOyBuIDwgazsgbisrICkgewotICAg
ICAgICAgICAgQV9RMjRbIG4gXSA9IHNpbGtfU01MQVdXKCBBX1EyNFsgbiBdLCBBdG1wWyBrIC0g
biAtIDEgXSwgcmNfUTE2WyBrIF0gKTsKLSAgICAgICAgfQotICAgICAgICBBX1EyNFsgayBdID0g
LXNpbGtfTFNISUZUKCByY19RMTZbIGsgXSwgOCApOworICAgICAgICBBX1EyNFsgayBdID0gLXNp
bGtfTFNISUZUKCByYywgOCApOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9tYWlu
X0ZJWC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2ZpeGVkL21haW5fRklYLmgKaW5kZXggMzc1YjVlYjMyZWU2YzZhZWM2MjQ3
YmY2ODBiNGU5MzMyYzgyZDM0Yi4uNmQyMTEyZTUxMWQwYWVmNDQ1ODJkNTJkNjUwMmRjYjVjOTRl
ZDA2OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21haW5fRklYLmgKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21h
aW5fRklYLmgKQEAgLTM2LDYgKzM2LDExIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgog
I2luY2x1ZGUgImRlYnVnLmgiCiAjaW5jbHVkZSAiZW50ZW5jLmgiCiAKKyNpZiAoKGRlZmluZWQo
T1BVU19BUk1fQVNNKSAmJiBkZWZpbmVkKEZJWEVEX1BPSU5UKSkgXAorICAgfHwgZGVmaW5lZChP
UFVTX0FSTV9NQVlfSEFWRV9ORU9OX0lOVFIpKQorI2luY2x1ZGUgImZpeGVkL2FybS93YXJwZWRf
YXV0b2NvcnJlbGF0aW9uX0ZJWF9hcm0uaCIKKyNlbmRpZgorCiAjaWZuZGVmIEZPUkNFX0NQUF9C
VUlMRAogI2lmZGVmIF9fY3BsdXNwbHVzCiBleHRlcm4gIkMiCkBAIC00Nyw2ICs1Miw5IEBAIGV4
dGVybiAiQyIKICNkZWZpbmUgc2lsa19lbmNvZGVfZG9fVkFEX0Z4eCAgICAgIHNpbGtfZW5jb2Rl
X2RvX1ZBRF9GSVgKICNkZWZpbmUgc2lsa19lbmNvZGVfZnJhbWVfRnh4ICAgICAgIHNpbGtfZW5j
b2RlX2ZyYW1lX0ZJWAogCisjZGVmaW5lIFFDICAxMAorI2RlZmluZSBRUyAgMTMKKwogLyoqKioq
KioqKioqKioqKioqKioqKi8KIC8qIEVuY29kZXIgRnVuY3Rpb25zICovCiAvKioqKioqKioqKioq
KioqKioqKioqLwpAQCAtNTgsNyArNjYsOCBAQCB2b2lkIHNpbGtfSFBfdmFyaWFibGVfY3V0b2Zm
KAogCiAvKiBFbmNvZGVyIG1haW4gZnVuY3Rpb24gKi8KIHZvaWQgc2lsa19lbmNvZGVfZG9fVkFE
X0ZJWCgKLSAgICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAgICpwc0VuYyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU2lsayBGSVggZW5j
b2RlciBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZV9GSVggICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTaWxrIEZJWCBlbmNvZGVyIHN0
YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1
c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpdml0eSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBEZWNpc2lvbiBvZiBPcHVzIHZvaWNlIGFjdGl2aXR5IGRldGVj
dG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKIC8qIEVuY29k
ZXIgbWFpbiBmdW5jdGlvbiAqLwpAQCAtODEsMzMgKzkwLDExIEBAIG9wdXNfaW50IHNpbGtfaW5p
dF9lbmNvZGVyKAogb3B1c19pbnQgc2lsa19jb250cm9sX2VuY29kZXIoCiAgICAgc2lsa19lbmNv
ZGVyX3N0YXRlX0Z4eCAgICAgICAgICAqcHNFbmMsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogSS9PICBQb2ludGVyIHRvIFNpbGsgZW5jb2RlciBzdGF0ZSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX0VuY0NvbnRyb2xT
dHJ1Y3QgICAgICAgICAgICplbmNDb250cm9sLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIENvbnRyb2wgc3RydWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAg
ICAgICAgICAgVGFyZ2V0UmF0ZV9icHMsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
VGFyZ2V0IG1heCBiaXRyYXRlIChicHMpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICBhbGxvd19id19zd2l0Y2gsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBGbGFnIHRv
IGFsbG93IHN3aXRjaGluZyBhdWRpbyBiYW5kd2lkdGggICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGNoYW5u
ZWxOYiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENoYW5uZWwgbnVtYmVy
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgZm9yY2VfZnNfa0h6
CiApOwogCi0vKioqKioqKioqKioqKioqKi8KLS8qIFByZWZpbHRlcmluZyAqLwotLyoqKioqKioq
KioqKioqKiovCi12b2lkIHNpbGtfcHJlZmlsdGVyX0ZJWCgKLSAgICBzaWxrX2VuY29kZXJfc3Rh
dGVfRklYICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJL08gIEVuY29kZXIgc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9jb250
cm9sX0ZJWCAgKnBzRW5jQ3RybCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
RW5jb2RlciBjb250cm9sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAg
ICB4d19RMTBbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBXZWlnaHRl
ZCBzaWduYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgIHhbXSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNwZWVjaCBzaWduYWwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotKTsKLQotdm9pZCBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWF9j
KAotICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICBzdGF0ZVtdLCAgICAgICAgICAgICAg
ICAgICAgLyogSS9PICBTdGF0ZSBbb3JkZXIgKyAxXSAgICAgICAgICAgICAgICAgICAqLwotICAg
ICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICByZXNfUTJbXSwgICAgICAgICAgICAgICAgICAg
LyogTyAgICBSZXNpZHVhbCBzaWduYWwgW2xlbmd0aF0gICAgICAgICAgICAqLwotICAgIGNvbnN0
IG9wdXNfaW50MTYgICAgICAgICAgICBjb2VmX1ExM1tdLCAgICAgICAgICAgICAgICAgLyogSSAg
ICBDb2VmZmljaWVudHMgW29yZGVyXSAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNf
aW50MTYgICAgICAgICAgICBpbnB1dFtdLCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1
dCBzaWduYWwgW2xlbmd0aF0gICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYg
ICAgICAgICAgICBsYW1iZGFfUTE2LCAgICAgICAgICAgICAgICAgLyogSSAgICBXYXJwaW5nIGZh
Y3RvciAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICBsZW5ndGgsICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGggb2YgaW5wdXQg
c2lnbmFsICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBv
cmRlciAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBGaWx0ZXIgb3JkZXIgKGV2ZW4pICAg
ICAgICAgICAgICAgICAqLwotKTsKLQotCiAvKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAv
KiBOb2lzZSBzaGFwaW5nIGFuYWx5c2lzICovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKiov
CkBAIC0xMjEsNyArMTA4LDcgQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWCgK
ICk7CiAKIC8qIEF1dG9jb3JyZWxhdGlvbnMgZm9yIGEgd2FycGVkIGZyZXF1ZW5jeSBheGlzICov
Ci12b2lkIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoCit2b2lkIHNpbGtfd2FycGVk
X2F1dG9jb3JyZWxhdGlvbl9GSVhfYygKICAgICAgICAgICBvcHVzX2ludDMyICAgICAgICAgICAg
ICAgICpjb3JyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJlc3Vs
dCBbb3JkZXIgKyAxXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgICAgICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgKnNj
YWxlLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgU2NhbGluZyBvZiB0
aGUgY29ycmVsYXRpb24gdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAqaW5wdXQsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBkYXRhIHRvIGNvcnJl
bGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KQEAgLTEzMCw2ICsxMTcsMTEgQEAgdm9pZCBzaWxrX3dhcnBlZF9hdXRvY29ycmVsYXRpb25f
RklYKAogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29ycmVsYXRpb24gb3JkZXIgKGV2ZW4p
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAp
OwogCisjaWYgIWRlZmluZWQoT1ZFUlJJREVfc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJ
WCkKKyNkZWZpbmUgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWChjb3JyLCBzY2FsZSwg
aW5wdXQsIHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVyLCBhcmNoKSBcCisgICAgICAgICgodm9p
ZCkoYXJjaCksIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVhfYyhjb3JyLCBzY2FsZSwg
aW5wdXQsIHdhcnBpbmdfUTE2LCBsZW5ndGgsIG9yZGVyKSkKKyNlbmRpZgorCiAvKiBDYWxjdWxh
dGlvbiBvZiBMVFAgc3RhdGUgc2NhbGluZyAqLwogdm9pZCBzaWxrX0xUUF9zY2FsZV9jdHJsX0ZJ
WCgKICAgICBzaWxrX2VuY29kZXJfc3RhdGVfRklYICAgICAgICAgICpwc0VuYywgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIGVuY29kZXIgc3RhdGUgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAt
MTY4LDE2ICsxNjAsMTIgQEAgdm9pZCBzaWxrX2ZpbmRfTFBDX0ZJWCgKIAogLyogTFRQIGFuYWx5
c2lzICovCiB2b2lkIHNpbGtfZmluZF9MVFBfRklYKAotICAgIG9wdXNfaW50MTYgICAgICAgICAg
ICAgICAgICAgICAgYl9RMTRbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdLCAgICAgIC8qIE8g
ICAgTFRQIGNvZWZzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAg
ICAgICBXTFRQWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyogTyAg
ICBXZWlnaHQgZm9yIExUUCBxdWFudGl6YXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgICpM
VFByZWRDb2RHYWluX1E3LCAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIExUUCBjb2Rpbmcg
Z2FpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgcl9scGNbXSwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgcmVzaWR1YWwgc2lnbmFsIGFm
dGVyIExQQyBzaWduYWwgKyBzdGF0ZSBmb3IgZmlyc3QgMTAgbXMgICAgICAgICAgICAgICAgICAg
ICovCisgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICBYWExUUF9RMTdbIE1BWF9O
Ql9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBPICAgIENvcnJlbGF0aW9uIG1h
dHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgIHhYTFRQX1ExN1sgTUFYX05CX1NVQkZS
ICogTFRQX09SREVSIF0sICAvKiBPICAgIENvcnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0
IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgcl9scGNbXSwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgUmVzaWR1YWwgc2lnbmFsIGFmdGVyIExQQyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19p
bnQgICAgICAgICAgICAgICAgICBsYWdbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBMVFAgbGFncyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMyICAg
ICAgICAgICAgICAgIFdnaHRfUTE1WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAvKiBJ
ICAgIHdlaWdodHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgc3ViZnJfbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgc3Vi
ZnJhbWUgbGVuZ3RoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBu
Yl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2Yg
c3ViZnJhbWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG1lbV9vZmZz
ZXQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzYW1wbGVz
IGluIExUUCBtZW1vcnkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAgICAgY29ycl9yc2hpZnRzWyBN
QVhfTkJfU1VCRlIgXSwgICAgICAgICAgIC8qIE8gICAgcmlnaHQgc2hpZnRzIGFwcGxpZWQgdG8g
Y29ycmVsYXRpb25zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBzdWJmcl9sZW5ndGgsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBTdWJmcmFtZSBsZW5ndGggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIE51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGludCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCkBAIC0yMzEsOSArMjE5LDkg
QEAgdm9pZCBzaWxrX2NvcnJNYXRyaXhfRklYKAogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICAgICAgKngsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
eCB2ZWN0b3IgW0wgKyBvcmRlciAtIDFdIHVzZWQgdG8gZm9ybSBkYXRhIG1hdHJpeCBYICAgICAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICBMLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGgg
b2YgdmVjdG9ycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG9yZGVy
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE1heCBsYWcgZm9yIGNv
cnJlbGF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgaGVhZF9yb29tLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRGVzaXJlZCBoZWFkcm9vbSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAqWFgsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBQb2ludGVyIHRvIFgnKlggY29ycmVsYXRpb24g
bWF0cml4IFsgb3JkZXIgeCBvcmRlciBdICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBv
cHVzX2ludCAgICAgICAgICAgICAgICAgICAgICAgICpyc2hpZnRzLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJL08gIFJpZ2h0IHNoaWZ0cyBvZiBjb3JyZWxhdGlvbnMgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50
MzIgICAgICAgICAgICAgICAgICAgICAgKm5yZywgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIE8gICAgRW5lcmd5IG9mIHggdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICAgICAgICAqcnNoaWZ0cywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogTyAgICBSaWdodCBzaGlmdHMgb2YgY29ycmVsYXRpb25zICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBpbnQgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwogKTsKIApAQCAtMjQ4LDIyICsyMzYsNiBAQCB2b2lkIHNp
bGtfY29yclZlY3Rvcl9GSVgoCiAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBh
cmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBSdW4tdGltZSBh
cmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KICk7CiAKLS8qIEFkZCBub2lzZSB0byBtYXRyaXggZGlhZ29uYWwgKi8KLXZv
aWQgc2lsa19yZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GSVgoCi0gICAgb3B1c19pbnQzMiAgICAg
ICAgICAgICAgICAgICAgICAqWFgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSS9PICBDb3JyZWxhdGlvbiBtYXRyaWNlcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAg
ICAgICAgICAgICp4eCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08g
IENvcnJlbGF0aW9uIHZhbHVlcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAg
ICAgbm9pc2UsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTm9pc2Ug
dG8gYWRkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBEICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBEaW1lbnNpb24gb2Yg
WFggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KLSk7Ci0KLS8qIFNvbHZlcyBBeCA9IGIsIGFzc3VtaW5nIEEgaXMgc3ltbWV0cmlj
ICovCi12b2lkIHNpbGtfc29sdmVfTERMX0ZJWCgKLSAgICBvcHVzX2ludDMyICAgICAgICAgICAg
ICAgICAgICAgICpBLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IFBvaW50ZXIgdG8gc3ltZXRyaWMgc3F1YXJlIG1hdHJpeCBBICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICAg
ICAgTSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU2l6ZSBv
ZiBtYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAqYiwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQb2ludGVyIHRvIGIg
dmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgICp4X1ExNiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFBvaW50ZXIgdG8geCBzb2x1dGlv
biB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotKTsKLQogI2lmbmRlZiBGT1JDRV9DUFBfQlVJTEQKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21pcHMvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYX21pcHNy
MS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2ZpeGVkL21pcHMvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYX21pcHNyMS5oCmlu
ZGV4IGMzMDQ4MWU0Mzc1MWRjMDBmZWEwMjU5M2NmMzQzMDJlZDYzOTc3OWYuLjM5OTliNWJkMDlk
ZDhhOTQ2NGVkMjI3ODBkNTQ1NzhmM2RiY2RlZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9taXBz
L25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWF9taXBzcjEuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbWlwcy9u
b2lzZV9zaGFwZV9hbmFseXNpc19GSVhfbWlwc3IxLmgKQEAgLTE2OSw3ICsxNjksNyBAQCB2b2lk
IHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogCiAgICAgICAgIGlmKCBwc0VuYy0+c0Nt
bi53YXJwaW5nX1ExNiA+IDAgKSB7CiAgICAgICAgICAgICAvKiBDYWxjdWxhdGUgd2FycGVkIGF1
dG8gY29ycmVsYXRpb24gKi8KLSAgICAgICAgICAgIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlv
bl9GSVgoIGF1dG9fY29yciwgJnNjYWxlLCB4X3dpbmRvd2VkLCB3YXJwaW5nX1ExNiwgcHNFbmMt
PnNDbW4uc2hhcGVXaW5MZW5ndGgsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOworICAg
ICAgICAgICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCggYXV0b19jb3JyLCAmc2Nh
bGUsIHhfd2luZG93ZWQsIHdhcnBpbmdfUTE2LCBwc0VuYy0+c0Ntbi5zaGFwZVdpbkxlbmd0aCwg
cHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBhcmNoICk7CiAgICAgICAgIH0gZWxzZSB7CiAg
ICAgICAgICAgICAvKiBDYWxjdWxhdGUgcmVndWxhciBhdXRvIGNvcnJlbGF0aW9uICovCiAgICAg
ICAgICAgICBzaWxrX2F1dG9jb3JyKCBhdXRvX2NvcnIsICZzY2FsZSwgeF93aW5kb3dlZCwgcHNF
bmMtPnNDbW4uc2hhcGVXaW5MZW5ndGgsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciArIDEs
IGFyY2ggKTsKQEAgLTIyNCw4ICsyMjQsOCBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlz
aXNfRklYKAogICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfMzIoIEFSMV9RMjQsIHBzRW5jLT5zQ21u
LnNoYXBpbmdMUENPcmRlciwgQldFeHAxX1ExNiApOwogCiAgICAgICAgIC8qIFJhdGlvIG9mIHBy
ZWRpY3Rpb24gZ2FpbnMsIGluIGVuZXJneSBkb21haW4gKi8KLSAgICAgICAgcHJlX25yZ19RMzAg
PSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoIEFSMl9RMjQsIHBzRW5jLT5zQ21uLnNo
YXBpbmdMUENPcmRlciApOwotICAgICAgICBucmcgICAgICAgICA9IHNpbGtfTFBDX2ludmVyc2Vf
cHJlZF9nYWluX1EyNCggQVIxX1EyNCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7Cisg
ICAgICAgIHByZV9ucmdfUTMwID0gc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fUTI0KCBBUjJf
UTI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIGFyY2ggKTsKKyAgICAgICAgbnJnICAg
ICAgICAgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoIEFSMV9RMjQsIHBzRW5jLT5z
Q21uLnNoYXBpbmdMUENPcmRlciwgYXJjaCApOwogCiAgICAgICAgIC8qcHNFbmNDdHJsLT5HYWlu
c1ByZVsgayBdID0gMS4wZiAtIDAuN2YgKiAoIDEuMGYgLSBwcmVfbnJnIC8gbnJnICkgPSAwLjNm
ICsgMC43ZiAqIHByZV9ucmcgLyBucmc7Ki8KICAgICAgICAgcHJlX25yZ19RMzAgPSBzaWxrX0xT
SElGVDMyKCBzaWxrX1NNVUxXQiggcHJlX25yZ19RMzAsIFNJTEtfRklYX0NPTlNUKCAwLjcsIDE1
ICkgKSwgMSApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL21pcHMvd2FycGVkX2F1dG9jb3JyZWxh
dGlvbl9GSVhfbWlwc3IxLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbWlwcy93YXJwZWRfYXV0b2NvcnJlbGF0aW9u
X0ZJWF9taXBzcjEuaAppbmRleCBlODAzZWYwZmNlYjA0YjNjYTE1MjY0Y2IzYTVlZGQ4ZTk3MTg4
N2I5Li5mY2JkOTZjODhkOThhYWEwNWIzZTRhNWM5NTZlMmVhYjA5YjZiYzQ1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZml4ZWQvbWlwcy93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9taXBzcjEuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZml4ZWQvbWlwcy93YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9taXBzcjEuaApAQCAt
NDgsNyArNDgsOCBAQCB2b2lkIHNpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoCiAgICAg
Y29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAqaW5wdXQsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBJbnB1dCBkYXRhIHRvIGNvcnJlbGF0ZSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgICAgIHdhcnBpbmdfUTE2LCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIFdhcnBpbmcgY29lZmZpY2llbnQgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgICAgICAgbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgTGVuZ3RoIG9mIGlucHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBDb3JyZWxhdGlvbiBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAg
ICAgIG9yZGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvcnJl
bGF0aW9uIG9yZGVyIChldmVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJj
aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJj
aGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCiApCiB7CiAgICAgb3B1c19pbnQgICBuLCBpLCBsc2g7CmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvZml4ZWQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvbm9pc2Vfc2hh
cGVfYW5hbHlzaXNfRklYLmMKaW5kZXggMjJhODlmNzVhZWMwZmM4ZDYyNDQwOWRmODYxY2JiNmMy
Y2EzODU5NS4uODVmZWEwYmYwOTYwMDU5NDYyODAwMWQ3NDEwNzEyYzRlZThjMjYxMiAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zaWxrL2ZpeGVkL25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWC5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhl
ZC9ub2lzZV9zaGFwZV9hbmFseXNpc19GSVguYwpAQCAtNTcsODggKzU3LDc5IEBAIHN0YXRpYyBP
UFVTX0lOTElORSBvcHVzX2ludDMyIHdhcnBlZF9nYWluKCAvKiBnYWluIGluIFExNiovCiAvKiBD
b252ZXJ0IHdhcnBlZCBmaWx0ZXIgY29lZmZpY2llbnRzIHRvIG1vbmljIHBzZXVkby13YXJwZWQg
Y29lZmZpY2llbnRzIGFuZCBsaW1pdCBtYXhpbXVtICAgICAqLwogLyogYW1wbGl0dWRlIG9mIG1v
bmljIHdhcnBlZCBjb2VmZmljaWVudHMgYnkgdXNpbmcgYmFuZHdpZHRoIGV4cGFuc2lvbiBvbiB0
aGUgdHJ1ZSBjb2VmZmljaWVudHMgKi8KIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIGxpbWl0X3dh
cnBlZF9jb2VmcygKLSAgICBvcHVzX2ludDMyICAgICAgICAgICAqY29lZnNfc3luX1EyNCwKLSAg
ICBvcHVzX2ludDMyICAgICAgICAgICAqY29lZnNfYW5hX1EyNCwKKyAgICBvcHVzX2ludDMyICAg
ICAgICAgICAqY29lZnNfUTI0LAogICAgIG9wdXNfaW50ICAgICAgICAgICAgIGxhbWJkYV9RMTYs
CiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgbGltaXRfUTI0LAogICAgIG9wdXNfaW50ICAgICAg
ICAgICAgIG9yZGVyCiApIHsKICAgICBvcHVzX2ludCAgIGksIGl0ZXIsIGluZCA9IDA7Ci0gICAg
b3B1c19pbnQzMiB0bXAsIG1heGFic19RMjQsIGNoaXJwX1ExNiwgZ2Fpbl9zeW5fUTE2LCBnYWlu
X2FuYV9RMTY7CisgICAgb3B1c19pbnQzMiB0bXAsIG1heGFic19RMjQsIGNoaXJwX1ExNiwgZ2Fp
bl9RMTY7CiAgICAgb3B1c19pbnQzMiBub21fUTE2LCBkZW5fUTI0OworICAgIG9wdXNfaW50MzIg
bGltaXRfUTIwLCBtYXhhYnNfUTIwOwogCiAgICAgLyogQ29udmVydCB0byBtb25pYyBjb2VmZmlj
aWVudHMgKi8KICAgICBsYW1iZGFfUTE2ID0gLWxhbWJkYV9RMTY7CiAgICAgZm9yKCBpID0gb3Jk
ZXIgLSAxOyBpID4gMDsgaS0tICkgewotICAgICAgICBjb2Vmc19zeW5fUTI0WyBpIC0gMSBdID0g
c2lsa19TTUxBV0IoIGNvZWZzX3N5bl9RMjRbIGkgLSAxIF0sIGNvZWZzX3N5bl9RMjRbIGkgXSwg
bGFtYmRhX1ExNiApOwotICAgICAgICBjb2Vmc19hbmFfUTI0WyBpIC0gMSBdID0gc2lsa19TTUxB
V0IoIGNvZWZzX2FuYV9RMjRbIGkgLSAxIF0sIGNvZWZzX2FuYV9RMjRbIGkgXSwgbGFtYmRhX1Ex
NiApOworICAgICAgICBjb2Vmc19RMjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNfUTI0
WyBpIC0gMSBdLCBjb2Vmc19RMjRbIGkgXSwgbGFtYmRhX1ExNiApOwogICAgIH0KICAgICBsYW1i
ZGFfUTE2ID0gLWxhbWJkYV9RMTY7Ci0gICAgbm9tX1ExNiAgPSBzaWxrX1NNTEFXQiggU0lMS19G
SVhfQ09OU1QoIDEuMCwgMTYgKSwgLShvcHVzX2ludDMyKWxhbWJkYV9RMTYsICAgICAgICBsYW1i
ZGFfUTE2ICk7Ci0gICAgZGVuX1EyNCAgPSBzaWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1QoIDEu
MCwgMjQgKSwgY29lZnNfc3luX1EyNFsgMCBdLCBsYW1iZGFfUTE2ICk7Ci0gICAgZ2Fpbl9zeW5f
UTE2ID0gc2lsa19ESVYzMl92YXJRKCBub21fUTE2LCBkZW5fUTI0LCAyNCApOwotICAgIGRlbl9R
MjQgID0gc2lsa19TTUxBV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDI0ICksIGNvZWZzX2FuYV9R
MjRbIDAgXSwgbGFtYmRhX1ExNiApOwotICAgIGdhaW5fYW5hX1ExNiA9IHNpbGtfRElWMzJfdmFy
USggbm9tX1ExNiwgZGVuX1EyNCwgMjQgKTsKKyAgICBub21fUTE2ICA9IHNpbGtfU01MQVdCKCBT
SUxLX0ZJWF9DT05TVCggMS4wLCAxNiApLCAtKG9wdXNfaW50MzIpbGFtYmRhX1ExNiwgbGFtYmRh
X1ExNiApOworICAgIGRlbl9RMjQgID0gc2lsa19TTUxBV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAs
IDI0ICksIGNvZWZzX1EyNFsgMCBdLCBsYW1iZGFfUTE2ICk7CisgICAgZ2Fpbl9RMTYgPSBzaWxr
X0RJVjMyX3ZhclEoIG5vbV9RMTYsIGRlbl9RMjQsIDI0ICk7CiAgICAgZm9yKCBpID0gMDsgaSA8
IG9yZGVyOyBpKysgKSB7Ci0gICAgICAgIGNvZWZzX3N5bl9RMjRbIGkgXSA9IHNpbGtfU01VTFdX
KCBnYWluX3N5bl9RMTYsIGNvZWZzX3N5bl9RMjRbIGkgXSApOwotICAgICAgICBjb2Vmc19hbmFf
UTI0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9hbmFfUTE2LCBjb2Vmc19hbmFfUTI0WyBpIF0g
KTsKKyAgICAgICAgY29lZnNfUTI0WyBpIF0gPSBzaWxrX1NNVUxXVyggZ2Fpbl9RMTYsIGNvZWZz
X1EyNFsgaSBdICk7CiAgICAgfQotCisgICAgbGltaXRfUTIwID0gc2lsa19SU0hJRlQobGltaXRf
UTI0LCA0KTsKICAgICBmb3IoIGl0ZXIgPSAwOyBpdGVyIDwgMTA7IGl0ZXIrKyApIHsKICAgICAg
ICAgLyogRmluZCBtYXhpbXVtIGFic29sdXRlIHZhbHVlICovCiAgICAgICAgIG1heGFic19RMjQg
PSAtMTsKICAgICAgICAgZm9yKCBpID0gMDsgaSA8IG9yZGVyOyBpKysgKSB7Ci0gICAgICAgICAg
ICB0bXAgPSBzaWxrX21heCggc2lsa19hYnNfaW50MzIoIGNvZWZzX3N5bl9RMjRbIGkgXSApLCBz
aWxrX2Fic19pbnQzMiggY29lZnNfYW5hX1EyNFsgaSBdICkgKTsKKyAgICAgICAgICAgIHRtcCA9
IHNpbGtfYWJzX2ludDMyKCBjb2Vmc19RMjRbIGkgXSApOwogICAgICAgICAgICAgaWYoIHRtcCA+
IG1heGFic19RMjQgKSB7CiAgICAgICAgICAgICAgICAgbWF4YWJzX1EyNCA9IHRtcDsKICAgICAg
ICAgICAgICAgICBpbmQgPSBpOwogICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgIGlm
KCBtYXhhYnNfUTI0IDw9IGxpbWl0X1EyNCApIHsKKyAgICAgICAgLyogVXNlIFEyMCB0byBhdm9p
ZCBhbnkgb3ZlcmZsb3cgd2hlbiBtdWx0aXBseWluZyBieSAoaW5kICsgMSkgbGF0ZXIuICovCisg
ICAgICAgIG1heGFic19RMjAgPSBzaWxrX1JTSElGVChtYXhhYnNfUTI0LCA0KTsKKyAgICAgICAg
aWYoIG1heGFic19RMjAgPD0gbGltaXRfUTIwICkgewogICAgICAgICAgICAgLyogQ29lZmZpY2ll
bnRzIGFyZSB3aXRoaW4gcmFuZ2UgLSBkb25lICovCiAgICAgICAgICAgICByZXR1cm47CiAgICAg
ICAgIH0KIAogICAgICAgICAvKiBDb252ZXJ0IGJhY2sgdG8gdHJ1ZSB3YXJwZWQgY29lZmZpY2ll
bnRzICovCiAgICAgICAgIGZvciggaSA9IDE7IGkgPCBvcmRlcjsgaSsrICkgewotICAgICAgICAg
ICAgY29lZnNfc3luX1EyNFsgaSAtIDEgXSA9IHNpbGtfU01MQVdCKCBjb2Vmc19zeW5fUTI0WyBp
IC0gMSBdLCBjb2Vmc19zeW5fUTI0WyBpIF0sIGxhbWJkYV9RMTYgKTsKLSAgICAgICAgICAgIGNv
ZWZzX2FuYV9RMjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNfYW5hX1EyNFsgaSAtIDEg
XSwgY29lZnNfYW5hX1EyNFsgaSBdLCBsYW1iZGFfUTE2ICk7CisgICAgICAgICAgICBjb2Vmc19R
MjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNfUTI0WyBpIC0gMSBdLCBjb2Vmc19RMjRb
IGkgXSwgbGFtYmRhX1ExNiApOwogICAgICAgICB9Ci0gICAgICAgIGdhaW5fc3luX1ExNiA9IHNp
bGtfSU5WRVJTRTMyX3ZhclEoIGdhaW5fc3luX1ExNiwgMzIgKTsKLSAgICAgICAgZ2Fpbl9hbmFf
UTE2ID0gc2lsa19JTlZFUlNFMzJfdmFyUSggZ2Fpbl9hbmFfUTE2LCAzMiApOworICAgICAgICBn
YWluX1ExNiA9IHNpbGtfSU5WRVJTRTMyX3ZhclEoIGdhaW5fUTE2LCAzMiApOwogICAgICAgICBm
b3IoIGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAgICAgIGNvZWZzX3N5bl9RMjRb
IGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX3N5bl9RMTYsIGNvZWZzX3N5bl9RMjRbIGkgXSApOwot
ICAgICAgICAgICAgY29lZnNfYW5hX1EyNFsgaSBdID0gc2lsa19TTVVMV1coIGdhaW5fYW5hX1Ex
NiwgY29lZnNfYW5hX1EyNFsgaSBdICk7CisgICAgICAgICAgICBjb2Vmc19RMjRbIGkgXSA9IHNp
bGtfU01VTFdXKCBnYWluX1ExNiwgY29lZnNfUTI0WyBpIF0gKTsKICAgICAgICAgfQogCiAgICAg
ICAgIC8qIEFwcGx5IGJhbmR3aWR0aCBleHBhbnNpb24gKi8KICAgICAgICAgY2hpcnBfUTE2ID0g
U0lMS19GSVhfQ09OU1QoIDAuOTksIDE2ICkgLSBzaWxrX0RJVjMyX3ZhclEoCi0gICAgICAgICAg
ICBzaWxrX1NNVUxXQiggbWF4YWJzX1EyNCAtIGxpbWl0X1EyNCwgc2lsa19TTUxBQkIoIFNJTEtf
RklYX0NPTlNUKCAwLjgsIDEwICksIFNJTEtfRklYX0NPTlNUKCAwLjEsIDEwICksIGl0ZXIgKSAp
LAotICAgICAgICAgICAgc2lsa19NVUwoIG1heGFic19RMjQsIGluZCArIDEgKSwgMjIgKTsKLSAg
ICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBjb2Vmc19zeW5fUTI0LCBvcmRlciwgY2hpcnBfUTE2
ICk7Ci0gICAgICAgIHNpbGtfYndleHBhbmRlcl8zMiggY29lZnNfYW5hX1EyNCwgb3JkZXIsIGNo
aXJwX1ExNiApOworICAgICAgICAgICAgc2lsa19TTVVMV0IoIG1heGFic19RMjAgLSBsaW1pdF9R
MjAsIHNpbGtfU01MQUJCKCBTSUxLX0ZJWF9DT05TVCggMC44LCAxMCApLCBTSUxLX0ZJWF9DT05T
VCggMC4xLCAxMCApLCBpdGVyICkgKSwKKyAgICAgICAgICAgIHNpbGtfTVVMKCBtYXhhYnNfUTIw
LCBpbmQgKyAxICksIDIyICk7CisgICAgICAgIHNpbGtfYndleHBhbmRlcl8zMiggY29lZnNfUTI0
LCBvcmRlciwgY2hpcnBfUTE2ICk7CiAKICAgICAgICAgLyogQ29udmVydCB0byBtb25pYyB3YXJw
ZWQgY29lZmZpY2llbnRzICovCiAgICAgICAgIGxhbWJkYV9RMTYgPSAtbGFtYmRhX1ExNjsKICAg
ICAgICAgZm9yKCBpID0gb3JkZXIgLSAxOyBpID4gMDsgaS0tICkgewotICAgICAgICAgICAgY29l
ZnNfc3luX1EyNFsgaSAtIDEgXSA9IHNpbGtfU01MQVdCKCBjb2Vmc19zeW5fUTI0WyBpIC0gMSBd
LCBjb2Vmc19zeW5fUTI0WyBpIF0sIGxhbWJkYV9RMTYgKTsKLSAgICAgICAgICAgIGNvZWZzX2Fu
YV9RMjRbIGkgLSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNfYW5hX1EyNFsgaSAtIDEgXSwgY29l
ZnNfYW5hX1EyNFsgaSBdLCBsYW1iZGFfUTE2ICk7CisgICAgICAgICAgICBjb2Vmc19RMjRbIGkg
LSAxIF0gPSBzaWxrX1NNTEFXQiggY29lZnNfUTI0WyBpIC0gMSBdLCBjb2Vmc19RMjRbIGkgXSwg
bGFtYmRhX1ExNiApOwogICAgICAgICB9CiAgICAgICAgIGxhbWJkYV9RMTYgPSAtbGFtYmRhX1Ex
NjsKICAgICAgICAgbm9tX1ExNiAgPSBzaWxrX1NNTEFXQiggU0lMS19GSVhfQ09OU1QoIDEuMCwg
MTYgKSwgLShvcHVzX2ludDMyKWxhbWJkYV9RMTYsICAgICAgICBsYW1iZGFfUTE2ICk7Ci0gICAg
ICAgIGRlbl9RMjQgID0gc2lsa19TTUxBV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDI0ICksIGNv
ZWZzX3N5bl9RMjRbIDAgXSwgbGFtYmRhX1ExNiApOwotICAgICAgICBnYWluX3N5bl9RMTYgPSBz
aWxrX0RJVjMyX3ZhclEoIG5vbV9RMTYsIGRlbl9RMjQsIDI0ICk7Ci0gICAgICAgIGRlbl9RMjQg
ID0gc2lsa19TTUxBV0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDI0ICksIGNvZWZzX2FuYV9RMjRb
IDAgXSwgbGFtYmRhX1ExNiApOwotICAgICAgICBnYWluX2FuYV9RMTYgPSBzaWxrX0RJVjMyX3Zh
clEoIG5vbV9RMTYsIGRlbl9RMjQsIDI0ICk7CisgICAgICAgIGRlbl9RMjQgID0gc2lsa19TTUxB
V0IoIFNJTEtfRklYX0NPTlNUKCAxLjAsIDI0ICksIGNvZWZzX1EyNFsgMCBdLCBsYW1iZGFfUTE2
ICk7CisgICAgICAgIGdhaW5fUTE2ID0gc2lsa19ESVYzMl92YXJRKCBub21fUTE2LCBkZW5fUTI0
LCAyNCApOwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAg
ICAgIGNvZWZzX3N5bl9RMjRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX3N5bl9RMTYsIGNvZWZz
X3N5bl9RMjRbIGkgXSApOwotICAgICAgICAgICAgY29lZnNfYW5hX1EyNFsgaSBdID0gc2lsa19T
TVVMV1coIGdhaW5fYW5hX1ExNiwgY29lZnNfYW5hX1EyNFsgaSBdICk7CisgICAgICAgICAgICBj
b2Vmc19RMjRbIGkgXSA9IHNpbGtfU01VTFdXKCBnYWluX1ExNiwgY29lZnNfUTI0WyBpIF0gKTsK
ICAgICAgICAgfQogICAgIH0KICAgICBzaWxrX2Fzc2VydCggMCApOwogfQogCi0jaWYgZGVmaW5l
ZChNSVBTcjFfQVNNKQorLyogRGlzYWJsZSBNSVBTIHZlcnNpb24gdW50aWwgaXQncyB1cGRhdGVk
LiAqLworI2lmIDAgJiYgZGVmaW5lZChNSVBTcjFfQVNNKQogI2luY2x1ZGUgIm1pcHMvbm9pc2Vf
c2hhcGVfYW5hbHlzaXNfRklYX21pcHNyMS5oIgogI2VuZGlmCiAKQEAgLTE1NSwxNCArMTQ2LDEz
IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiApCiB7CiAgICAgc2lsa19z
aGFwZV9zdGF0ZV9GSVggKnBzU2hhcGVTdCA9ICZwc0VuYy0+c1NoYXBlOwotICAgIG9wdXNfaW50
ICAgICBrLCBpLCBuU2FtcGxlcywgUW5yZywgYl9RMTQsIHdhcnBpbmdfUTE2LCBzY2FsZSA9IDA7
Ci0gICAgb3B1c19pbnQzMiAgIFNOUl9hZGpfZEJfUTcsIEhhcm1Cb29zdF9RMTYsIEhhcm1TaGFw
ZUdhaW5fUTE2LCBUaWx0X1ExNiwgdG1wMzI7Ci0gICAgb3B1c19pbnQzMiAgIG5yZywgcHJlX25y
Z19RMzAsIGxvZ19lbmVyZ3lfUTcsIGxvZ19lbmVyZ3lfcHJldl9RNywgZW5lcmd5X3ZhcmlhdGlv
bl9RNzsKLSAgICBvcHVzX2ludDMyICAgZGVsdGFfUTE2LCBCV0V4cDFfUTE2LCBCV0V4cDJfUTE2
LCBnYWluX211bHRfUTE2LCBnYWluX2FkZF9RMTYsIHN0cmVuZ3RoX1ExNiwgYl9RODsKKyAgICBv
cHVzX2ludCAgICAgaywgaSwgblNhbXBsZXMsIG5TZWdzLCBRbnJnLCBiX1ExNCwgd2FycGluZ19R
MTYsIHNjYWxlID0gMDsKKyAgICBvcHVzX2ludDMyICAgU05SX2Fkal9kQl9RNywgSGFybVNoYXBl
R2Fpbl9RMTYsIFRpbHRfUTE2LCB0bXAzMjsKKyAgICBvcHVzX2ludDMyICAgbnJnLCBsb2dfZW5l
cmd5X1E3LCBsb2dfZW5lcmd5X3ByZXZfUTcsIGVuZXJneV92YXJpYXRpb25fUTc7CisgICAgb3B1
c19pbnQzMiAgIEJXRXhwX1ExNiwgZ2Fpbl9tdWx0X1ExNiwgZ2Fpbl9hZGRfUTE2LCBzdHJlbmd0
aF9RMTYsIGJfUTg7CiAgICAgb3B1c19pbnQzMiAgIGF1dG9fY29yclsgICAgIE1BWF9TSEFQRV9M
UENfT1JERVIgKyAxIF07CiAgICAgb3B1c19pbnQzMiAgIHJlZmxfY29lZl9RMTZbIE1BWF9TSEFQ
RV9MUENfT1JERVIgXTsKLSAgICBvcHVzX2ludDMyICAgQVIxX1EyNFsgICAgICAgTUFYX1NIQVBF
X0xQQ19PUkRFUiBdOwotICAgIG9wdXNfaW50MzIgICBBUjJfUTI0WyAgICAgICBNQVhfU0hBUEVf
TFBDX09SREVSIF07CisgICAgb3B1c19pbnQzMiAgIEFSX1EyNFsgICAgICAgTUFYX1NIQVBFX0xQ
Q19PUkRFUiBdOwogICAgIFZBUkRFQ0woIG9wdXNfaW50MTYsIHhfd2luZG93ZWQgKTsKICAgICBj
b25zdCBvcHVzX2ludDE2ICp4X3B0ciwgKnBpdGNoX3Jlc19wdHI7CiAgICAgU0FWRV9TVEFDSzsK
QEAgLTIwOSwxNCArMTk5LDE0IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgo
CiAgICAgaWYoIHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9PSBUWVBFX1ZPSUNFRCAp
IHsKICAgICAgICAgLyogSW5pdGlhbGx5IHNldCB0byAwOyBtYXkgYmUgb3ZlcnJ1bGVkIGluIHBy
b2Nlc3NfZ2FpbnMoLi4pICovCiAgICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMucXVhbnRPZmZz
ZXRUeXBlID0gMDsKLSAgICAgICAgcHNFbmNDdHJsLT5zcGFyc2VuZXNzX1E4ID0gMDsKICAgICB9
IGVsc2UgewogICAgICAgICAvKiBTcGFyc2VuZXNzIG1lYXN1cmUsIGJhc2VkIG9uIHJlbGF0aXZl
IGZsdWN0dWF0aW9ucyBvZiBlbmVyZ3kgcGVyIDIgbWlsbGlzZWNvbmRzICovCiAgICAgICAgIG5T
YW1wbGVzID0gc2lsa19MU0hJRlQoIHBzRW5jLT5zQ21uLmZzX2tIeiwgMSApOwogICAgICAgICBl
bmVyZ3lfdmFyaWF0aW9uX1E3ID0gMDsKICAgICAgICAgbG9nX2VuZXJneV9wcmV2X1E3ICA9IDA7
CiAgICAgICAgIHBpdGNoX3Jlc19wdHIgPSBwaXRjaF9yZXM7Ci0gICAgICAgIGZvciggayA9IDA7
IGsgPCBzaWxrX1NNVUxCQiggU1VCX0ZSQU1FX0xFTkdUSF9NUywgcHNFbmMtPnNDbW4ubmJfc3Vi
ZnIgKSAvIDI7IGsrKyApIHsKKyAgICAgICAgblNlZ3MgPSBzaWxrX1NNVUxCQiggU1VCX0ZSQU1F
X0xFTkdUSF9NUywgcHNFbmMtPnNDbW4ubmJfc3ViZnIgKSAvIDI7CisgICAgICAgIGZvciggayA9
IDA7IGsgPCBuU2VnczsgaysrICkgewogICAgICAgICAgICAgc2lsa19zdW1fc3FyX3NoaWZ0KCAm
bnJnLCAmc2NhbGUsIHBpdGNoX3Jlc19wdHIsIG5TYW1wbGVzICk7CiAgICAgICAgICAgICBucmcg
Kz0gc2lsa19SU0hJRlQoIG5TYW1wbGVzLCBzY2FsZSApOyAgICAgICAgICAgLyogUSgtc2NhbGUp
Ki8KIApAQCAtMjI4LDE4ICsyMTgsMTIgQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lz
X0ZJWCgKICAgICAgICAgICAgIHBpdGNoX3Jlc19wdHIgKz0gblNhbXBsZXM7CiAgICAgICAgIH0K
IAotICAgICAgICBwc0VuY0N0cmwtPnNwYXJzZW5lc3NfUTggPSBzaWxrX1JTSElGVCggc2lsa19z
aWdtX1ExNSggc2lsa19TTVVMV0IoIGVuZXJneV92YXJpYXRpb25fUTcgLQotICAgICAgICAgICAg
U0lMS19GSVhfQ09OU1QoIDUuMCwgNyApLCBTSUxLX0ZJWF9DT05TVCggMC4xLCAxNiApICkgKSwg
NyApOwotCiAgICAgICAgIC8qIFNldCBxdWFudGl6YXRpb24gb2Zmc2V0IGRlcGVuZGluZyBvbiBz
cGFyc2VuZXNzIG1lYXN1cmUgKi8KLSAgICAgICAgaWYoIHBzRW5jQ3RybC0+c3BhcnNlbmVzc19R
OCA+IFNJTEtfRklYX0NPTlNUKCBTUEFSU0VORVNTX1RIUkVTSE9MRF9RTlRfT0ZGU0VULCA4ICkg
KSB7CisgICAgICAgIGlmKCBlbmVyZ3lfdmFyaWF0aW9uX1E3ID4gU0lMS19GSVhfQ09OU1QoIEVO
RVJHWV9WQVJJQVRJT05fVEhSRVNIT0xEX1FOVF9PRkZTRVQsIDcgKSAqIChuU2Vncy0xKSApIHsK
ICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMucXVhbnRPZmZzZXRUeXBlID0gMDsKICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMucXVhbnRPZmZz
ZXRUeXBlID0gMTsKICAgICAgICAgfQotCi0gICAgICAgIC8qIEluY3JlYXNlIGNvZGluZyBTTlIg
Zm9yIHNwYXJzZSBzaWduYWxzICovCi0gICAgICAgIFNOUl9hZGpfZEJfUTcgPSBzaWxrX1NNTEFX
QiggU05SX2Fkal9kQl9RNywgU0lMS19GSVhfQ09OU1QoIFNQQVJTRV9TTlJfSU5DUl9kQiwgMTUg
KSwgcHNFbmNDdHJsLT5zcGFyc2VuZXNzX1E4IC0gU0lMS19GSVhfQ09OU1QoIDAuNSwgOCApICk7
CiAgICAgfQogCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0yNDcs
MTQgKzIzMSw4IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAgICAgLyoq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgLyogTW9yZSBCV0UgZm9yIHNpZ25h
bHMgd2l0aCBoaWdoIHByZWRpY3Rpb24gZ2FpbiAqLwogICAgIHN0cmVuZ3RoX1ExNiA9IHNpbGtf
U01VTFdCKCBwc0VuY0N0cmwtPnByZWRHYWluX1ExNiwgU0lMS19GSVhfQ09OU1QoIEZJTkRfUElU
Q0hfV0hJVEVfTk9JU0VfRlJBQ1RJT04sIDE2ICkgKTsKLSAgICBCV0V4cDFfUTE2ID0gQldFeHAy
X1ExNiA9IHNpbGtfRElWMzJfdmFyUSggU0lMS19GSVhfQ09OU1QoIEJBTkRXSURUSF9FWFBBTlNJ
T04sIDE2ICksCisgICAgQldFeHBfUTE2ID0gc2lsa19ESVYzMl92YXJRKCBTSUxLX0ZJWF9DT05T
VCggQkFORFdJRFRIX0VYUEFOU0lPTiwgMTYgKSwKICAgICAgICAgc2lsa19TTUxBV1coIFNJTEtf
RklYX0NPTlNUKCAxLjAsIDE2ICksIHN0cmVuZ3RoX1ExNiwgc3RyZW5ndGhfUTE2ICksIDE2ICk7
Ci0gICAgZGVsdGFfUTE2ICA9IHNpbGtfU01VTFdCKCBTSUxLX0ZJWF9DT05TVCggMS4wLCAxNiAp
IC0gc2lsa19TTVVMQkIoIDMsIHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxpdHlfUTE0ICksCi0gICAg
ICAgIFNJTEtfRklYX0NPTlNUKCBMT1dfUkFURV9CQU5EV0lEVEhfRVhQQU5TSU9OX0RFTFRBLCAx
NiApICk7Ci0gICAgQldFeHAxX1ExNiA9IHNpbGtfU1VCMzIoIEJXRXhwMV9RMTYsIGRlbHRhX1Ex
NiApOwotICAgIEJXRXhwMl9RMTYgPSBzaWxrX0FERDMyKCBCV0V4cDJfUTE2LCBkZWx0YV9RMTYg
KTsKLSAgICAvKiBCV0V4cDEgd2lsbCBiZSBhcHBsaWVkIGFmdGVyIEJXRXhwMiwgc28gbWFrZSBp
dCByZWxhdGl2ZSAqLwotICAgIEJXRXhwMV9RMTYgPSBzaWxrX0RJVjMyXzE2KCBzaWxrX0xTSElG
VCggQldFeHAxX1ExNiwgMTQgKSwgc2lsa19SU0hJRlQoIEJXRXhwMl9RMTYsIDIgKSApOwogCiAg
ICAgaWYoIHBzRW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKICAgICAgICAgLyogU2xpZ2h0
bHkgbW9yZSB3YXJwaW5nIGluIGFuYWx5c2lzIHdpbGwgbW92ZSBxdWFudGl6YXRpb24gbm9pc2Ug
dXAgaW4gZnJlcXVlbmN5LCB3aGVyZSBpdCdzIGJldHRlciBtYXNrZWQgKi8KQEAgLTI4NCw3ICsy
NjIsNyBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogCiAgICAgICAgIGlm
KCBwc0VuYy0+c0Ntbi53YXJwaW5nX1ExNiA+IDAgKSB7CiAgICAgICAgICAgICAvKiBDYWxjdWxh
dGUgd2FycGVkIGF1dG8gY29ycmVsYXRpb24gKi8KLSAgICAgICAgICAgIHNpbGtfd2FycGVkX2F1
dG9jb3JyZWxhdGlvbl9GSVgoIGF1dG9fY29yciwgJnNjYWxlLCB4X3dpbmRvd2VkLCB3YXJwaW5n
X1ExNiwgcHNFbmMtPnNDbW4uc2hhcGVXaW5MZW5ndGgsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENP
cmRlciApOworICAgICAgICAgICAgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWCggYXV0
b19jb3JyLCAmc2NhbGUsIHhfd2luZG93ZWQsIHdhcnBpbmdfUTE2LCBwc0VuYy0+c0Ntbi5zaGFw
ZVdpbkxlbmd0aCwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBhcmNoICk7CiAgICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgICAvKiBDYWxjdWxhdGUgcmVndWxhciBhdXRvIGNvcnJlbGF0
aW9uICovCiAgICAgICAgICAgICBzaWxrX2F1dG9jb3JyKCBhdXRvX2NvcnIsICZzY2FsZSwgeF93
aW5kb3dlZCwgcHNFbmMtPnNDbW4uc2hhcGVXaW5MZW5ndGgsIHBzRW5jLT5zQ21uLnNoYXBpbmdM
UENPcmRlciArIDEsIGFyY2ggKTsKQEAgLTI5OSw3ICsyNzcsNyBAQCB2b2lkIHNpbGtfbm9pc2Vf
c2hhcGVfYW5hbHlzaXNfRklYKAogICAgICAgICBzaWxrX2Fzc2VydCggbnJnID49IDAgKTsKIAog
ICAgICAgICAvKiBDb252ZXJ0IHJlZmxlY3Rpb24gY29lZmZpY2llbnRzIHRvIHByZWRpY3Rpb24g
Y29lZmZpY2llbnRzICovCi0gICAgICAgIHNpbGtfazJhX1ExNiggQVIyX1EyNCwgcmVmbF9jb2Vm
X1ExNiwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAgICAgIHNpbGtfazJhX1Ex
NiggQVJfUTI0LCByZWZsX2NvZWZfUTE2LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsK
IAogICAgICAgICBRbnJnID0gLXNjYWxlOyAgICAgICAgICAvKiByYW5nZTogLTEyLi4uMzAqLwog
ICAgICAgICBzaWxrX2Fzc2VydCggUW5yZyA+PSAtMTIgKTsKQEAgLTMxOCw0MCArMjk2LDM0IEBA
IHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GSVgoCiAKICAgICAgICAgaWYoIHBzRW5j
LT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKICAgICAgICAgICAgIC8qIEFkanVzdCBnYWluIGZv
ciB3YXJwaW5nICovCi0gICAgICAgICAgICBnYWluX211bHRfUTE2ID0gd2FycGVkX2dhaW4oIEFS
Ml9RMjQsIHdhcnBpbmdfUTE2LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKLSAgICAg
ICAgICAgIHNpbGtfYXNzZXJ0KCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID49IDAgKTsKLSAg
ICAgICAgICAgIGlmICggc2lsa19TTVVMV1coIHNpbGtfUlNISUZUX1JPVU5EKCBwc0VuY0N0cmwt
PkdhaW5zX1ExNlsgayBdLCAxICksIGdhaW5fbXVsdF9RMTYgKSA+PSAoIHNpbGtfaW50MzJfTUFY
ID4+IDEgKSApIHsKLSAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0gPSBz
aWxrX2ludDMyX01BWDsKKyAgICAgICAgICAgIGdhaW5fbXVsdF9RMTYgPSB3YXJwZWRfZ2Fpbigg
QVJfUTI0LCB3YXJwaW5nX1ExNiwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAg
ICAgICAgICBzaWxrX2Fzc2VydCggcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSA+IDAgKTsKKyAg
ICAgICAgICAgIGlmKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdIDwgU0lMS19GSVhfQ09OU1Qo
IDAuMjUsIDE2ICkgKSB7CisgICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5HYWluc19RMTZbIGsg
XSA9IHNpbGtfU01VTFdXKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdLCBnYWluX211bHRfUTE2
ICk7CiAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5HYWlu
c19RMTZbIGsgXSA9IHNpbGtfU01VTFdXKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdLCBnYWlu
X211bHRfUTE2ICk7CisgICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSA9
IHNpbGtfU01VTFdXKCBzaWxrX1JTSElGVF9ST1VORCggcHNFbmNDdHJsLT5HYWluc19RMTZbIGsg
XSwgMSApLCBnYWluX211bHRfUTE2ICk7CisgICAgICAgICAgICAgICAgaWYgKCBwc0VuY0N0cmwt
PkdhaW5zX1ExNlsgayBdID49ICggc2lsa19pbnQzMl9NQVggPj4gMSApICkgeworICAgICAgICAg
ICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBdID0gc2lsa19pbnQzMl9NQVg7Cisg
ICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgcHNFbmNDdHJsLT5H
YWluc19RMTZbIGsgXSA9IHNpbGtfTFNISUZUMzIoIHBzRW5jQ3RybC0+R2FpbnNfUTE2WyBrIF0s
IDEgKTsKKyAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CisgICAgICAgICAgICBzaWxr
X2Fzc2VydCggcHNFbmNDdHJsLT5HYWluc19RMTZbIGsgXSA+IDAgKTsKICAgICAgICAgfQogCi0g
ICAgICAgIC8qIEJhbmR3aWR0aCBleHBhbnNpb24gZm9yIHN5bnRoZXNpcyBmaWx0ZXIgc2hhcGlu
ZyAqLwotICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfMzIoIEFSMl9RMjQsIHBzRW5jLT5zQ21uLnNo
YXBpbmdMUENPcmRlciwgQldFeHAyX1ExNiApOwotCi0gICAgICAgIC8qIENvbXB1dGUgbm9pc2Ug
c2hhcGluZyBmaWx0ZXIgY29lZmZpY2llbnRzICovCi0gICAgICAgIHNpbGtfbWVtY3B5KCBBUjFf
UTI0LCBBUjJfUTI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKiBzaXplb2YoIG9wdXNf
aW50MzIgKSApOwotCi0gICAgICAgIC8qIEJhbmR3aWR0aCBleHBhbnNpb24gZm9yIGFuYWx5c2lz
IGZpbHRlciBzaGFwaW5nICovCi0gICAgICAgIHNpbGtfYXNzZXJ0KCBCV0V4cDFfUTE2IDw9IFNJ
TEtfRklYX0NPTlNUKCAxLjAsIDE2ICkgKTsKLSAgICAgICAgc2lsa19id2V4cGFuZGVyXzMyKCBB
UjFfUTI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIEJXRXhwMV9RMTYgKTsKLQotICAg
ICAgICAvKiBSYXRpbyBvZiBwcmVkaWN0aW9uIGdhaW5zLCBpbiBlbmVyZ3kgZG9tYWluICovCi0g
ICAgICAgIHByZV9ucmdfUTMwID0gc2lsa19MUENfaW52ZXJzZV9wcmVkX2dhaW5fUTI0KCBBUjJf
UTI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKLSAgICAgICAgbnJnICAgICAgICAg
PSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9RMjQoIEFSMV9RMjQsIHBzRW5jLT5zQ21uLnNo
YXBpbmdMUENPcmRlciApOwotCi0gICAgICAgIC8qcHNFbmNDdHJsLT5HYWluc1ByZVsgayBdID0g
MS4wZiAtIDAuN2YgKiAoIDEuMGYgLSBwcmVfbnJnIC8gbnJnICkgPSAwLjNmICsgMC43ZiAqIHBy
ZV9ucmcgLyBucmc7Ki8KLSAgICAgICAgcHJlX25yZ19RMzAgPSBzaWxrX0xTSElGVDMyKCBzaWxr
X1NNVUxXQiggcHJlX25yZ19RMzAsIFNJTEtfRklYX0NPTlNUKCAwLjcsIDE1ICkgKSwgMSApOwot
ICAgICAgICBwc0VuY0N0cmwtPkdhaW5zUHJlX1ExNFsgayBdID0gKCBvcHVzX2ludCApIFNJTEtf
RklYX0NPTlNUKCAwLjMsIDE0ICkgKyBzaWxrX0RJVjMyX3ZhclEoIHByZV9ucmdfUTMwLCBucmcs
IDE0ICk7CisgICAgICAgIC8qIEJhbmR3aWR0aCBleHBhbnNpb24gKi8KKyAgICAgICAgc2lsa19i
d2V4cGFuZGVyXzMyKCBBUl9RMjQsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciwgQldFeHBf
UTE2ICk7CiAKLSAgICAgICAgLyogQ29udmVydCB0byBtb25pYyB3YXJwZWQgcHJlZGljdGlvbiBj
b2VmZmljaWVudHMgYW5kIGxpbWl0IGFic29sdXRlIHZhbHVlcyAqLwotICAgICAgICBsaW1pdF93
YXJwZWRfY29lZnMoIEFSMl9RMjQsIEFSMV9RMjQsIHdhcnBpbmdfUTE2LCBTSUxLX0ZJWF9DT05T
VCggMy45OTksIDI0ICksIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOworICAgICAgICBp
ZiggcHNFbmMtPnNDbW4ud2FycGluZ19RMTYgPiAwICkgeworICAgICAgICAgICAgLyogQ29udmVy
dCB0byBtb25pYyB3YXJwZWQgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgYW5kIGxpbWl0IGFic29s
dXRlIHZhbHVlcyAqLworICAgICAgICAgICAgbGltaXRfd2FycGVkX2NvZWZzKCBBUl9RMjQsIHdh
cnBpbmdfUTE2LCBTSUxLX0ZJWF9DT05TVCggMy45OTksIDI0ICksIHBzRW5jLT5zQ21uLnNoYXBp
bmdMUENPcmRlciApOwogCi0gICAgICAgIC8qIENvbnZlcnQgZnJvbSBRMjQgdG8gUTEzIGFuZCBz
dG9yZSBpbiBpbnQxNiAqLwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4uc2hh
cGluZ0xQQ09yZGVyOyBpKysgKSB7Ci0gICAgICAgICAgICBwc0VuY0N0cmwtPkFSMV9RMTNbIGsg
KiBNQVhfU0hBUEVfTFBDX09SREVSICsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19TQVQxNiggc2ls
a19SU0hJRlRfUk9VTkQoIEFSMV9RMjRbIGkgXSwgMTEgKSApOwotICAgICAgICAgICAgcHNFbmND
dHJsLT5BUjJfUTEzWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiArIGkgXSA9IChvcHVzX2ludDE2
KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZUX1JPVU5EKCBBUjJfUTI0WyBpIF0sIDExICkgKTsKKyAg
ICAgICAgICAgIC8qIENvbnZlcnQgZnJvbSBRMjQgdG8gUTEzIGFuZCBzdG9yZSBpbiBpbnQxNiAq
LworICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRl
cjsgaSsrICkgeworICAgICAgICAgICAgICAgIHBzRW5jQ3RybC0+QVJfUTEzWyBrICogTUFYX1NI
QVBFX0xQQ19PUkRFUiArIGkgXSA9IChvcHVzX2ludDE2KXNpbGtfU0FUMTYoIHNpbGtfUlNISUZU
X1JPVU5EKCBBUl9RMjRbIGkgXSwgMTEgKSApOworICAgICAgICAgICAgfQorICAgICAgICB9IGVs
c2UgeworICAgICAgICAgICAgc2lsa19MUENfZml0KCAmcHNFbmNDdHJsLT5BUl9RMTNbIGsgKiBN
QVhfU0hBUEVfTFBDX09SREVSIF0sIEFSX1EyNCwgMTMsIDI0LCBwc0VuYy0+c0Ntbi5zaGFwaW5n
TFBDT3JkZXIgKTsKICAgICAgICAgfQogICAgIH0KIApAQCAtMzY4LDExICszNDAsNiBAQCB2b2lk
IHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogICAgICAgICBwc0VuY0N0cmwtPkdhaW5z
X1ExNlsgayBdID0gc2lsa19BRERfUE9TX1NBVDMyKCBwc0VuY0N0cmwtPkdhaW5zX1ExNlsgayBd
LCBnYWluX2FkZF9RMTYgKTsKICAgICB9CiAKLSAgICBnYWluX211bHRfUTE2ID0gU0lMS19GSVhf
Q09OU1QoIDEuMCwgMTYgKSArIHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX01MQSggU0lMS19GSVhf
Q09OU1QoIElOUFVUX1RJTFQsIDI2ICksCi0gICAgICAgIHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxp
dHlfUTE0LCBTSUxLX0ZJWF9DT05TVCggSElHSF9SQVRFX0lOUFVUX1RJTFQsIDEyICkgKSwgMTAg
KTsKLSAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGsrKyApIHsKLSAg
ICAgICAgcHNFbmNDdHJsLT5HYWluc1ByZV9RMTRbIGsgXSA9IHNpbGtfU01VTFdCKCBnYWluX211
bHRfUTE2LCBwc0VuY0N0cmwtPkdhaW5zUHJlX1ExNFsgayBdICk7Ci0gICAgfQogCiAgICAgLyoq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBD
b250cm9sIGxvdy1mcmVxdWVuY3kgc2hhcGluZyBhbmQgbm9pc2UgdGlsdCAqLwpAQCAtNDEwLDE0
ICszNzcsNiBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRklYKAogICAgIC8qKioq
KioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIEhBUk1PTklDIFNIQVBJTkcgQ09OVFJP
TCAqLwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAgIC8qIENvbnRyb2wg
Ym9vc3Rpbmcgb2YgaGFybW9uaWMgZnJlcXVlbmNpZXMgKi8KLSAgICBIYXJtQm9vc3RfUTE2ID0g
c2lsa19TTVVMV0IoIHNpbGtfU01VTFdCKCBTSUxLX0ZJWF9DT05TVCggMS4wLCAxNyApIC0gc2ls
a19MU0hJRlQoIHBzRW5jQ3RybC0+Y29kaW5nX3F1YWxpdHlfUTE0LCAzICksCi0gICAgICAgIHBz
RW5jLT5MVFBDb3JyX1ExNSApLCBTSUxLX0ZJWF9DT05TVCggTE9XX1JBVEVfSEFSTU9OSUNfQk9P
U1QsIDE2ICkgKTsKLQotICAgIC8qIE1vcmUgaGFybW9uaWMgYm9vc3QgZm9yIG5vaXN5IGlucHV0
IHNpZ25hbHMgKi8KLSAgICBIYXJtQm9vc3RfUTE2ID0gc2lsa19TTUxBV0IoIEhhcm1Cb29zdF9R
MTYsCi0gICAgICAgIFNJTEtfRklYX0NPTlNUKCAxLjAsIDE2ICkgLSBzaWxrX0xTSElGVCggcHNF
bmNDdHJsLT5pbnB1dF9xdWFsaXR5X1ExNCwgMiApLCBTSUxLX0ZJWF9DT05TVCggTE9XX0lOUFVU
X1FVQUxJVFlfSEFSTU9OSUNfQk9PU1QsIDE2ICkgKTsKLQogICAgIGlmKCBVU0VfSEFSTV9TSEFQ
SU5HICYmIHBzRW5jLT5zQ21uLmluZGljZXMuc2lnbmFsVHlwZSA9PSBUWVBFX1ZPSUNFRCApIHsK
ICAgICAgICAgLyogTW9yZSBoYXJtb25pYyBub2lzZSBzaGFwaW5nIGZvciBoaWdoIGJpdHJhdGVz
IG9yIG5vaXN5IGlucHV0ICovCiAgICAgICAgIEhhcm1TaGFwZUdhaW5fUTE2ID0gc2lsa19TTUxB
V0IoIFNJTEtfRklYX0NPTlNUKCBIQVJNT05JQ19TSEFQSU5HLCAxNiApLApAQCAtNDM1LDE0ICsz
OTQsMTEgQEAgdm9pZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWCgKICAgICAvKiBTbW9v
dGggb3ZlciBzdWJmcmFtZXMgKi8KICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAg
ICBmb3IoIGsgPSAwOyBrIDwgTUFYX05CX1NVQkZSOyBrKysgKSB7Ci0gICAgICAgIHBzU2hhcGVT
dC0+SGFybUJvb3N0X3NtdGhfUTE2ID0KLSAgICAgICAgICAgIHNpbGtfU01MQVdCKCBwc1NoYXBl
U3QtPkhhcm1Cb29zdF9zbXRoX1ExNiwgICAgIEhhcm1Cb29zdF9RMTYgICAgIC0gcHNTaGFwZVN0
LT5IYXJtQm9vc3Rfc210aF9RMTYsICAgICBTSUxLX0ZJWF9DT05TVCggU1VCRlJfU01USF9DT0VG
LCAxNiApICk7CiAgICAgICAgIHBzU2hhcGVTdC0+SGFybVNoYXBlR2Fpbl9zbXRoX1ExNiA9CiAg
ICAgICAgICAgICBzaWxrX1NNTEFXQiggcHNTaGFwZVN0LT5IYXJtU2hhcGVHYWluX3NtdGhfUTE2
LCBIYXJtU2hhcGVHYWluX1ExNiAtIHBzU2hhcGVTdC0+SGFybVNoYXBlR2Fpbl9zbXRoX1ExNiwg
U0lMS19GSVhfQ09OU1QoIFNVQkZSX1NNVEhfQ09FRiwgMTYgKSApOwogICAgICAgICBwc1NoYXBl
U3QtPlRpbHRfc210aF9RMTYgPQogICAgICAgICAgICAgc2lsa19TTUxBV0IoIHBzU2hhcGVTdC0+
VGlsdF9zbXRoX1ExNiwgICAgICAgICAgVGlsdF9RMTYgICAgICAgICAgLSBwc1NoYXBlU3QtPlRp
bHRfc210aF9RMTYsICAgICAgICAgIFNJTEtfRklYX0NPTlNUKCBTVUJGUl9TTVRIX0NPRUYsIDE2
ICkgKTsKIAotICAgICAgICBwc0VuY0N0cmwtPkhhcm1Cb29zdF9RMTRbIGsgXSAgICAgPSAoIG9w
dXNfaW50IClzaWxrX1JTSElGVF9ST1VORCggcHNTaGFwZVN0LT5IYXJtQm9vc3Rfc210aF9RMTYs
ICAgICAyICk7CiAgICAgICAgIHBzRW5jQ3RybC0+SGFybVNoYXBlR2Fpbl9RMTRbIGsgXSA9ICgg
b3B1c19pbnQgKXNpbGtfUlNISUZUX1JPVU5EKCBwc1NoYXBlU3QtPkhhcm1TaGFwZUdhaW5fc210
aF9RMTYsIDIgKTsKICAgICAgICAgcHNFbmNDdHJsLT5UaWx0X1ExNFsgayBdICAgICAgICAgID0g
KCBvcHVzX2ludCApc2lsa19SU0hJRlRfUk9VTkQoIHBzU2hhcGVTdC0+VGlsdF9zbXRoX1ExNiwg
ICAgICAgICAgMiApOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9waXRjaF9hbmFseXNp
c19jb3JlX0ZJWC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3BpdGNoX2FuYWx5c2lzX2NvcmVfRklYLmMKaW5kZXgg
MDFiYjlmYzBhODM3YjZjMzQ5MzNmY2IwNjZhNzkxODczNTQwZGVhMy4uOGRmMTA5ZTZjZjUxMTA3
ZTQ3NzZjNzAzZTJhNTYyZDg5YjgyNmZlZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3BpdGNoX2Fu
YWx5c2lzX2NvcmVfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3BpdGNoX2FuYWx5c2lzX2NvcmVfRklY
LmMKQEAgLTgwLDcgKzgwLDcgQEAgc3RhdGljIHZvaWQgc2lsa19QX0FuYV9jYWxjX2VuZXJneV9z
dDMoCiAvKiAgICAgIEZJWEVEIFBPSU5UIENPUkUgUElUQ0ggQU5BTFlTSVMgRlVOQ1RJT04gICAg
ICAgICAgICAgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqLwogb3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19jb3JlKCAg
ICAgICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMCB2b2ljZWQsIDEgdW52
b2ljZWQgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDE2ICAgICAg
ICAgICAgKmZyYW1lLCAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCBvZiBsZW5ndGggUEVfRlJB
TUVfTEVOR1RIX01TKkZzX2tIeiAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19p
bnQxNiAgICAgICAgICAgICpmcmFtZV91bnNjYWxlZCwgICAgLyogSSAgICBTaWduYWwgb2YgbGVu
Z3RoIFBFX0ZSQU1FX0xFTkdUSF9NUypGc19rSHogICAgICAgICAgICAgICAgICAqLwogICAgIG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgICAqcGl0Y2hfb3V0LCAgICAgICAgIC8qIE8gICAgNCBw
aXRjaCBsYWcgdmFsdWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgKmxhZ0luZGV4LCAgICAgICAgICAv
KiBPICAgIExhZyBJbmRleCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAgICAgICpjb250b3VySW5k
ZXgsICAgICAgLyogTyAgICBQaXRjaCBjb250b3VyIEluZGV4ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwpAQCAtOTQsMTYgKzk0LDE3IEBAIG9wdXNfaW50IHNpbGtf
cGl0Y2hfYW5hbHlzaXNfY29yZSggICAgICAgICAgICAgICAgICAvKiBPICAgIFZvaWNpbmcgZXN0
aW1hdGU6IDAKICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAg
ICAgICAvKiBJICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCiApCiB7Ci0gICAgVkFSREVDTCggb3B1c19pbnQxNiwgZnJhbWVf
OGtIeiApOworICAgIFZBUkRFQ0woIG9wdXNfaW50MTYsIGZyYW1lXzhrSHpfYnVmICk7CiAgICAg
VkFSREVDTCggb3B1c19pbnQxNiwgZnJhbWVfNGtIeiApOworICAgIFZBUkRFQ0woIG9wdXNfaW50
MTYsIGZyYW1lX3NjYWxlZCApOwogICAgIG9wdXNfaW50MzIgZmlsdF9zdGF0ZVsgNiBdOwotICAg
IGNvbnN0IG9wdXNfaW50MTYgKmlucHV0X2ZyYW1lX3B0cjsKKyAgICBjb25zdCBvcHVzX2ludDE2
ICpmcmFtZSwgKmZyYW1lXzhrSHo7CiAgICAgb3B1c19pbnQgICBpLCBrLCBkLCBqOwogICAgIFZB
UkRFQ0woIG9wdXNfaW50MTYsIEMgKTsKICAgICBWQVJERUNMKCBvcHVzX2ludDMyLCB4Y29ycjMy
ICk7CiAgICAgY29uc3Qgb3B1c19pbnQxNiAqdGFyZ2V0X3B0ciwgKmJhc2lzX3B0cjsKLSAgICBv
cHVzX2ludDMyIGNyb3NzX2NvcnIsIG5vcm1hbGl6ZXIsIGVuZXJneSwgc2hpZnQsIGVuZXJneV9i
YXNpcywgZW5lcmd5X3RhcmdldDsKLSAgICBvcHVzX2ludCAgIGRfc3JjaFsgUEVfRF9TUkNIX0xF
TkdUSCBdLCBDbWF4LCBsZW5ndGhfZF9zcmNoLCBsZW5ndGhfZF9jb21wOworICAgIG9wdXNfaW50
MzIgY3Jvc3NfY29yciwgbm9ybWFsaXplciwgZW5lcmd5LCBlbmVyZ3lfYmFzaXMsIGVuZXJneV90
YXJnZXQ7CisgICAgb3B1c19pbnQgICBkX3NyY2hbIFBFX0RfU1JDSF9MRU5HVEggXSwgQ21heCwg
bGVuZ3RoX2Rfc3JjaCwgbGVuZ3RoX2RfY29tcCwgc2hpZnQ7CiAgICAgVkFSREVDTCggb3B1c19p
bnQxNiwgZF9jb21wICk7CiAgICAgb3B1c19pbnQzMiBzdW0sIHRocmVzaG9sZCwgbGFnX2NvdW50
ZXI7CiAgICAgb3B1c19pbnQgICBDQmltYXgsIENCaW1heF9uZXcsIENCaW1heF9vbGQsIGxhZywg
c3RhcnRfbGFnLCBlbmRfbGFnLCBsYWdfbmV3OwpAQCAtMTE5LDYgKzEyMCw3IEBAIG9wdXNfaW50
IHNpbGtfcGl0Y2hfYW5hbHlzaXNfY29yZSggICAgICAgICAgICAgICAgICAvKiBPICAgIFZvaWNp
bmcgZXN0aW1hdGU6IDAKICAgICBvcHVzX2ludDMyIGRlbHRhX2xhZ19sb2cyX3Nxcl9RNywgbGFn
X2xvZzJfUTcsIHByZXZMYWdfbG9nMl9RNywgcHJldl9sYWdfYmlhc19RMTM7CiAgICAgY29uc3Qg
b3B1c19pbnQ4ICpMYWdfQ0JfcHRyOwogICAgIFNBVkVfU1RBQ0s7CisKICAgICAvKiBDaGVjayBm
b3IgdmFsaWQgc2FtcGxpbmcgZnJlcXVlbmN5ICovCiAgICAgc2lsa19hc3NlcnQoIEZzX2tIeiA9
PSA4IHx8IEZzX2tIeiA9PSAxMiB8fCBGc19rSHogPT0gMTYgKTsKIApAQCAtMTM3LDE3ICsxMzks
MzMgQEAgb3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19jb3JlKCAgICAgICAgICAgICAgICAg
IC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMAogICAgIG1pbl9sYWcgICAgICAgICAgID0gUEVf
TUlOX0xBR19NUyAqIEZzX2tIejsKICAgICBtYXhfbGFnICAgICAgICAgICA9IFBFX01BWF9MQUdf
TVMgKiBGc19rSHogLSAxOwogCisgICAgLyogRG93bnNjYWxlIGlucHV0IGlmIG5lY2Vzc2FyeSAq
LworICAgIHNpbGtfc3VtX3Nxcl9zaGlmdCggJmVuZXJneSwgJnNoaWZ0LCBmcmFtZV91bnNjYWxl
ZCwgZnJhbWVfbGVuZ3RoICk7CisgICAgc2hpZnQgKz0gMyAtIHNpbGtfQ0xaMzIoIGVuZXJneSAp
OyAgICAgICAgLyogYXQgbGVhc3QgdHdvIGJpdHMgaGVhZHJvb20gKi8KKyAgICBBTExPQyggZnJh
bWVfc2NhbGVkLCBmcmFtZV9sZW5ndGgsIG9wdXNfaW50MTYgKTsKKyAgICBpZiggc2hpZnQgPiAw
ICkgeworICAgICAgICBzaGlmdCA9IHNpbGtfUlNISUZUKCBzaGlmdCArIDEsIDEgKTsKKyAgICAg
ICAgZm9yKCBpID0gMDsgaSA8IGZyYW1lX2xlbmd0aDsgaSsrICkgeworICAgICAgICAgICAgZnJh
bWVfc2NhbGVkWyBpIF0gPSBzaWxrX1JTSElGVCggZnJhbWVfdW5zY2FsZWRbIGkgXSwgc2hpZnQg
KTsKKyAgICAgICAgfQorICAgICAgICBmcmFtZSA9IGZyYW1lX3NjYWxlZDsKKyAgICB9IGVsc2Ug
eworICAgICAgICBmcmFtZSA9IGZyYW1lX3Vuc2NhbGVkOworICAgIH0KKworICAgIEFMTE9DKCBm
cmFtZV84a0h6X2J1ZiwgKCBGc19rSHogPT0gOCApID8gMSA6IGZyYW1lX2xlbmd0aF84a0h6LCBv
cHVzX2ludDE2ICk7CiAgICAgLyogUmVzYW1wbGUgZnJvbSBpbnB1dCBzYW1wbGVkIGF0IEZzX2tI
eiB0byA4IGtIeiAqLwotICAgIEFMTE9DKCBmcmFtZV84a0h6LCBmcmFtZV9sZW5ndGhfOGtIeiwg
b3B1c19pbnQxNiApOwogICAgIGlmKCBGc19rSHogPT0gMTYgKSB7CiAgICAgICAgIHNpbGtfbWVt
c2V0KCBmaWx0X3N0YXRlLCAwLCAyICogc2l6ZW9mKCBvcHVzX2ludDMyICkgKTsKLSAgICAgICAg
c2lsa19yZXNhbXBsZXJfZG93bjIoIGZpbHRfc3RhdGUsIGZyYW1lXzhrSHosIGZyYW1lLCBmcmFt
ZV9sZW5ndGggKTsKKyAgICAgICAgc2lsa19yZXNhbXBsZXJfZG93bjIoIGZpbHRfc3RhdGUsIGZy
YW1lXzhrSHpfYnVmLCBmcmFtZSwgZnJhbWVfbGVuZ3RoICk7CisgICAgICAgIGZyYW1lXzhrSHog
PSBmcmFtZV84a0h6X2J1ZjsKICAgICB9IGVsc2UgaWYoIEZzX2tIeiA9PSAxMiApIHsKICAgICAg
ICAgc2lsa19tZW1zZXQoIGZpbHRfc3RhdGUsIDAsIDYgKiBzaXplb2YoIG9wdXNfaW50MzIgKSAp
OwotICAgICAgICBzaWxrX3Jlc2FtcGxlcl9kb3duMl8zKCBmaWx0X3N0YXRlLCBmcmFtZV84a0h6
LCBmcmFtZSwgZnJhbWVfbGVuZ3RoICk7CisgICAgICAgIHNpbGtfcmVzYW1wbGVyX2Rvd24yXzMo
IGZpbHRfc3RhdGUsIGZyYW1lXzhrSHpfYnVmLCBmcmFtZSwgZnJhbWVfbGVuZ3RoICk7CisgICAg
ICAgIGZyYW1lXzhrSHogPSBmcmFtZV84a0h6X2J1ZjsKICAgICB9IGVsc2UgewogICAgICAgICBz
aWxrX2Fzc2VydCggRnNfa0h6ID09IDggKTsKLSAgICAgICAgc2lsa19tZW1jcHkoIGZyYW1lXzhr
SHosIGZyYW1lLCBmcmFtZV9sZW5ndGhfOGtIeiAqIHNpemVvZihvcHVzX2ludDE2KSApOworICAg
ICAgICBmcmFtZV84a0h6ID0gZnJhbWU7CiAgICAgfQogCiAgICAgLyogRGVjaW1hdGUgYWdhaW4g
dG8gNCBrSHogKi8KQEAgLTE2MCwxOSArMTc4LDYgQEAgb3B1c19pbnQgc2lsa19waXRjaF9hbmFs
eXNpc19jb3JlKCAgICAgICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMAog
ICAgICAgICBmcmFtZV80a0h6WyBpIF0gPSBzaWxrX0FERF9TQVQxNiggZnJhbWVfNGtIelsgaSBd
LCBmcmFtZV80a0h6WyBpIC0gMSBdICk7CiAgICAgfQogCi0gICAgLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioKLSAgICAqKiBTY2FsZSA0IGtIeiBzaWduYWwgZG93biB0byBwcmV2ZW50IGNvcnJlbGF0
aW9ucyBtZWFzdXJlcyBmcm9tIG92ZXJmbG93aW5nCi0gICAgKiogZmluZCBzY2FsaW5nIGFzIG1h
eCBzY2FsaW5nIGZvciBlYWNoIDhrSHooPykgc3ViZnJhbWUKLSAgICAqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqLwotCi0gICAgLyogSW5uZXIgcHJvZHVjdCBpcyBjYWxjdWxhdGVkIHdpdGggZGlmZmVy
ZW50IGxlbmd0aHMsIHNvIHNjYWxlIGZvciB0aGUgd29yc3QgY2FzZSAqLwotICAgIHNpbGtfc3Vt
X3Nxcl9zaGlmdCggJmVuZXJneSwgJnNoaWZ0LCBmcmFtZV80a0h6LCBmcmFtZV9sZW5ndGhfNGtI
eiApOwotICAgIGlmKCBzaGlmdCA+IDAgKSB7Ci0gICAgICAgIHNoaWZ0ID0gc2lsa19SU0hJRlQo
IHNoaWZ0LCAxICk7Ci0gICAgICAgIGZvciggaSA9IDA7IGkgPCBmcmFtZV9sZW5ndGhfNGtIejsg
aSsrICkgewotICAgICAgICAgICAgZnJhbWVfNGtIelsgaSBdID0gc2lsa19SU0hJRlQoIGZyYW1l
XzRrSHpbIGkgXSwgc2hpZnQgKTsKLSAgICAgICAgfQotICAgIH0KIAogICAgIC8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioKICAgICAqIEZJUlNUIFNUQUdFLCBvcGVyYXRpbmcgaW4gNCBraHoKQEAgLTMx
MSwxOCArMzE2LDYgQEAgb3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19jb3JlKCAgICAgICAg
ICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMAogICAgICoqIFNFQ09ORCBTVEFH
RSwgb3BlcmF0aW5nIGF0IDgga0h6LCBvbiBsYWcgc2VjdGlvbnMgd2l0aCBoaWdoIGNvcnJlbGF0
aW9uCiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIAotICAgIC8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioKLSAgICAqKiBTY2FsZSBzaWduYWwgZG93biB0byBhdm9pZCBjb3JyZWxhdGlv
bnMgbWVhc3VyZXMgZnJvbSBvdmVyZmxvd2luZwotICAgICoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
Ci0gICAgLyogZmluZCBzY2FsaW5nIGFzIG1heCBzY2FsaW5nIGZvciBlYWNoIHN1YmZyYW1lICov
Ci0gICAgc2lsa19zdW1fc3FyX3NoaWZ0KCAmZW5lcmd5LCAmc2hpZnQsIGZyYW1lXzhrSHosIGZy
YW1lX2xlbmd0aF84a0h6ICk7Ci0gICAgaWYoIHNoaWZ0ID4gMCApIHsKLSAgICAgICAgc2hpZnQg
PSBzaWxrX1JTSElGVCggc2hpZnQsIDEgKTsKLSAgICAgICAgZm9yKCBpID0gMDsgaSA8IGZyYW1l
X2xlbmd0aF84a0h6OyBpKysgKSB7Ci0gICAgICAgICAgICBmcmFtZV84a0h6WyBpIF0gPSBzaWxr
X1JTSElGVCggZnJhbWVfOGtIelsgaSBdLCBzaGlmdCApOwotICAgICAgICB9Ci0gICAgfQotCiAg
ICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAgICogRmluZCBlbmVyZ3kgb2YgZWFjaCBz
dWJmcmFtZSBwcm9qZWN0ZWQgb250byBpdHMgaGlzdG9yeSwgZm9yIGEgcmFuZ2Ugb2YgZGVsYXlz
CiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtNDYyLDI0ICs0NTUsNiBAQCBvcHVz
X2ludCBzaWxrX3BpdGNoX2FuYWx5c2lzX2NvcmUoICAgICAgICAgICAgICAgICAgLyogTyAgICBW
b2ljaW5nIGVzdGltYXRlOiAwCiAgICAgc2lsa19hc3NlcnQoICpMVFBDb3JyX1ExNSA+PSAwICk7
CiAKICAgICBpZiggRnNfa0h6ID4gOCApIHsKLSAgICAgICAgVkFSREVDTCggb3B1c19pbnQxNiwg
c2NyYXRjaF9tZW0gKTsKLSAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgLyog
U2NhbGUgaW5wdXQgc2lnbmFsIGRvd24gdG8gYXZvaWQgY29ycmVsYXRpb25zIG1lYXN1cmVzIGZy
b20gb3ZlcmZsb3dpbmcgKi8KLSAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAg
LyogZmluZCBzY2FsaW5nIGFzIG1heCBzY2FsaW5nIGZvciBlYWNoIHN1YmZyYW1lICovCi0gICAg
ICAgIHNpbGtfc3VtX3Nxcl9zaGlmdCggJmVuZXJneSwgJnNoaWZ0LCBmcmFtZSwgZnJhbWVfbGVu
Z3RoICk7Ci0gICAgICAgIEFMTE9DKCBzY3JhdGNoX21lbSwgc2hpZnQgPiAwID8gZnJhbWVfbGVu
Z3RoIDogQUxMT0NfTk9ORSwgb3B1c19pbnQxNiApOwotICAgICAgICBpZiggc2hpZnQgPiAwICkg
ewotICAgICAgICAgICAgLyogTW92ZSBzaWduYWwgdG8gc2NyYXRjaCBtZW0gYmVjYXVzZSB0aGUg
aW5wdXQgc2lnbmFsIHNob3VsZCBiZSB1bmNoYW5nZWQgKi8KLSAgICAgICAgICAgIHNoaWZ0ID0g
c2lsa19SU0hJRlQoIHNoaWZ0LCAxICk7Ci0gICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgZnJh
bWVfbGVuZ3RoOyBpKysgKSB7Ci0gICAgICAgICAgICAgICAgc2NyYXRjaF9tZW1bIGkgXSA9IHNp
bGtfUlNISUZUKCBmcmFtZVsgaSBdLCBzaGlmdCApOwotICAgICAgICAgICAgfQotICAgICAgICAg
ICAgaW5wdXRfZnJhbWVfcHRyID0gc2NyYXRjaF9tZW07Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAg
ICAgICAgICBpbnB1dF9mcmFtZV9wdHIgPSBmcmFtZTsKLSAgICAgICAgfQotCiAgICAgICAgIC8q
IFNlYXJjaCBpbiBvcmlnaW5hbCBzaWduYWwgKi8KIAogICAgICAgICBDQmltYXhfb2xkID0gQ0Jp
bWF4OwpAQCAtNTE5LDE0ICs0OTQsMTQgQEAgb3B1c19pbnQgc2lsa19waXRjaF9hbmFseXNpc19j
b3JlKCAgICAgICAgICAgICAgICAgIC8qIE8gICAgVm9pY2luZyBlc3RpbWF0ZTogMAogICAgICAg
ICAvKiBDYWxjdWxhdGUgdGhlIGNvcnJlbGF0aW9ucyBhbmQgZW5lcmdpZXMgbmVlZGVkIGluIHN0
YWdlIDMgKi8KICAgICAgICAgQUxMT0MoIGVuZXJnaWVzX3N0MywgbmJfc3ViZnIgKiBuYl9jYmtf
c2VhcmNoLCBzaWxrX3BlX3N0YWdlM192YWxzICk7CiAgICAgICAgIEFMTE9DKCBjcm9zc19jb3Jy
X3N0MywgbmJfc3ViZnIgKiBuYl9jYmtfc2VhcmNoLCBzaWxrX3BlX3N0YWdlM192YWxzICk7Ci0g
ICAgICAgIHNpbGtfUF9BbmFfY2FsY19jb3JyX3N0MyggIGNyb3NzX2NvcnJfc3QzLCBpbnB1dF9m
cmFtZV9wdHIsIHN0YXJ0X2xhZywgc2ZfbGVuZ3RoLCBuYl9zdWJmciwgY29tcGxleGl0eSwgYXJj
aCApOwotICAgICAgICBzaWxrX1BfQW5hX2NhbGNfZW5lcmd5X3N0MyggZW5lcmdpZXNfc3QzLCBp
bnB1dF9mcmFtZV9wdHIsIHN0YXJ0X2xhZywgc2ZfbGVuZ3RoLCBuYl9zdWJmciwgY29tcGxleGl0
eSwgYXJjaCApOworICAgICAgICBzaWxrX1BfQW5hX2NhbGNfY29ycl9zdDMoICBjcm9zc19jb3Jy
X3N0MywgZnJhbWUsIHN0YXJ0X2xhZywgc2ZfbGVuZ3RoLCBuYl9zdWJmciwgY29tcGxleGl0eSwg
YXJjaCApOworICAgICAgICBzaWxrX1BfQW5hX2NhbGNfZW5lcmd5X3N0MyggZW5lcmdpZXNfc3Qz
LCBmcmFtZSwgc3RhcnRfbGFnLCBzZl9sZW5ndGgsIG5iX3N1YmZyLCBjb21wbGV4aXR5LCBhcmNo
ICk7CiAKICAgICAgICAgbGFnX2NvdW50ZXIgPSAwOwogICAgICAgICBzaWxrX2Fzc2VydCggbGFn
ID09IHNpbGtfU0FUMTYoIGxhZyApICk7CiAgICAgICAgIGNvbnRvdXJfYmlhc19RMTUgPSBzaWxr
X0RJVjMyXzE2KCBTSUxLX0ZJWF9DT05TVCggUEVfRkxBVENPTlRPVVJfQklBUywgMTUgKSwgbGFn
ICk7CiAKLSAgICAgICAgdGFyZ2V0X3B0ciA9ICZpbnB1dF9mcmFtZV9wdHJbIFBFX0xUUF9NRU1f
TEVOR1RIX01TICogRnNfa0h6IF07CisgICAgICAgIHRhcmdldF9wdHIgPSAmZnJhbWVbIFBFX0xU
UF9NRU1fTEVOR1RIX01TICogRnNfa0h6IF07CiAgICAgICAgIGVuZXJneV90YXJnZXQgPSBzaWxr
X0FERDMyKCBzaWxrX2lubmVyX3Byb2RfYWxpZ25lZCggdGFyZ2V0X3B0ciwgdGFyZ2V0X3B0ciwg
bmJfc3ViZnIgKiBzZl9sZW5ndGgsIGFyY2ggKSwgMSApOwogICAgICAgICBmb3IoIGQgPSBzdGFy
dF9sYWc7IGQgPD0gZW5kX2xhZzsgZCsrICkgewogICAgICAgICAgICAgZm9yKCBqID0gMDsgaiA8
IG5iX2Nia19zZWFyY2g7IGorKyApIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9wcmVmaWx0ZXJf
RklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZml4ZWQvcHJlZmlsdGVyX0ZJWC5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA2YThlMzUxNTJlZmJkNmQwYjE3MjI3YWE3NTI1YTNhMjNkZWU5MjU0Li4wMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9wcmVmaWx0
ZXJfRklYLmMKKysrIC9kZXYvbnVsbApAQCAtMSwyMjEgKzAsMCBAQAotLyoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
Ci1Db3B5cmlnaHQgKGMpIDIwMDYtMjAxMSwgU2t5cGUgTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLVJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi1hcmUgbWV0OgotLSBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCi10
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotLSBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAotbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQotZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLS0gTmVpdGhlciB0aGUgbmFtZSBvZiBJ
bnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYgVHJ1c3QsIG5vciB0aGUKLW5hbWVzIG9mIHNw
ZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCi1w
cm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
IHdyaXR0ZW4KLXBlcm1pc3Npb24uCi1USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKLUFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLUlNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFCi1BUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKLUxJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLUNPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GCi1TVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLUlOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi1DT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQot
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUKLVBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKiovCi0KLSNpZmRlZiBIQVZFX0NPTkZJR19ICi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jZW5k
aWYKLQotI2luY2x1ZGUgIm1haW5fRklYLmgiCi0jaW5jbHVkZSAic3RhY2tfYWxsb2MuaCIKLSNp
bmNsdWRlICJ0dW5pbmdfcGFyYW1ldGVycy5oIgotCi0jaWYgZGVmaW5lZChNSVBTcjFfQVNNKQot
I2luY2x1ZGUgIm1pcHMvcHJlZmlsdGVyX0ZJWF9taXBzcjEuaCIKLSNlbmRpZgotCi0KLSNpZiAh
ZGVmaW5lZChPVkVSUklERV9zaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWCkKLSNk
ZWZpbmUgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GSVgoc3RhdGUsIHJlc19RMiwg
Y29lZl9RMTMsIGlucHV0LCBsYW1iZGFfUTE2LCBsZW5ndGgsIG9yZGVyLCBhcmNoKSBcCi0gICAg
KCh2b2lkKShhcmNoKSxzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWF9jKHN0YXRl
LCByZXNfUTIsIGNvZWZfUTEzLCBpbnB1dCwgbGFtYmRhX1ExNiwgbGVuZ3RoLCBvcmRlcikpCi0j
ZW5kaWYKLQotLyogUHJlZmlsdGVyIGZvciBmaW5kaW5nIFF1YW50aXplciBpbnB1dCBzaWduYWwg
Ki8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfcHJlZmlsdF9GSVgoCi0gICAgc2lsa19w
cmVmaWx0ZXJfc3RhdGVfRklYICAgICpQLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08g
IHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAg
ICAgICAgICAgICAgICAgIHN0X3Jlc19RMTJbXSwgICAgICAgICAgICAgICAvKiBJICAgIHNob3J0
IHRlcm0gcmVzaWR1YWwgc2lnbmFsICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAg
ICAgICAgICAgIHh3X1EzW10sICAgICAgICAgICAgICAgICAgICAvKiBPICAgIHByZWZpbHRlcmVk
IHNpZ25hbCAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAg
ICAgIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTIsICAgICAvKiBJICAgIEhhcm1vbmljIHNoYXBpbmcg
Y29lZmljaWVudHMgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIFRp
bHRfUTE0LCAgICAgICAgICAgICAgICAgICAvKiBJICAgIFRpbHQgc2hhcGluZyBjb2VmaWNpZW50
ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIExGX3NocF9R
MTQsICAgICAgICAgICAgICAgICAvKiBJICAgIExvdy1mcmVxdWFuY3kgc2hhcGluZyBjb2VmaWNp
ZW50cyAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxhZywgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIExhZyBmb3IgaGFybW9uaWMgc2hhcGluZyAgICAgICAgICAg
ICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0aCAgICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBzaWduYWxzICAgICAgICAgICAgICAgICAgICovCi0p
OwotCi12b2lkIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19maWx0ZXJfRklYX2MoCi0gICAgICAg
ICAgb3B1c19pbnQzMiAgICAgICAgICAgIHN0YXRlW10sICAgICAgICAgICAgICAgICAgICAvKiBJ
L08gIFN0YXRlIFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgb3B1
c19pbnQzMiAgICAgICAgICAgIHJlc19RMltdLCAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJl
c2lkdWFsIHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQx
NiAgICAgICAgICAgIGNvZWZfUTEzW10sICAgICAgICAgICAgICAgICAvKiBJICAgIENvZWZmaWNp
ZW50cyBbb3JkZXJdICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAg
ICAgICAgIGlucHV0W10sICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IHNpZ25hbCBb
bGVuZ3RoXSAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAg
IGxhbWJkYV9RMTYsICAgICAgICAgICAgICAgICAvKiBJICAgIFdhcnBpbmcgZmFjdG9yICAgICAg
ICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIGxlbmd0
aCwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1dCBzaWduYWwgICAg
ICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIG9yZGVyICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAoZXZlbikgICAgICAgICAgICAg
ICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICAgIG4sIGk7Ci0gICAgb3B1c19pbnQzMiAgIGFj
Y19RMTEsIHRtcDEsIHRtcDI7Ci0KLSAgICAvKiBPcmRlciBtdXN0IGJlIGV2ZW4gKi8KLSAgICBz
aWxrX2Fzc2VydCggKCBvcmRlciAmIDEgKSA9PSAwICk7Ci0KLSAgICBmb3IoIG4gPSAwOyBuIDwg
bGVuZ3RoOyBuKysgKSB7Ci0gICAgICAgIC8qIE91dHB1dCBvZiBsb3dwYXNzIHNlY3Rpb24gKi8K
LSAgICAgICAgdG1wMiA9IHNpbGtfU01MQVdCKCBzdGF0ZVsgMCBdLCBzdGF0ZVsgMSBdLCBsYW1i
ZGFfUTE2ICk7Ci0gICAgICAgIHN0YXRlWyAwIF0gPSBzaWxrX0xTSElGVCggaW5wdXRbIG4gXSwg
MTQgKTsKLSAgICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwotICAgICAgICB0
bXAxID0gc2lsa19TTUxBV0IoIHN0YXRlWyAxIF0sIHN0YXRlWyAyIF0gLSB0bXAyLCBsYW1iZGFf
UTE2ICk7Ci0gICAgICAgIHN0YXRlWyAxIF0gPSB0bXAyOwotICAgICAgICBhY2NfUTExID0gc2ls
a19SU0hJRlQoIG9yZGVyLCAxICk7Ci0gICAgICAgIGFjY19RMTEgPSBzaWxrX1NNTEFXQiggYWNj
X1ExMSwgdG1wMiwgY29lZl9RMTNbIDAgXSApOwotICAgICAgICAvKiBMb29wIG92ZXIgYWxscGFz
cyBzZWN0aW9ucyAqLwotICAgICAgICBmb3IoIGkgPSAyOyBpIDwgb3JkZXI7IGkgKz0gMiApIHsK
LSAgICAgICAgICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNlY3Rpb24gKi8KLSAgICAgICAgICAg
IHRtcDIgPSBzaWxrX1NNTEFXQiggc3RhdGVbIGkgXSwgc3RhdGVbIGkgKyAxIF0gLSB0bXAxLCBs
YW1iZGFfUTE2ICk7Ci0gICAgICAgICAgICBzdGF0ZVsgaSBdID0gdG1wMTsKLSAgICAgICAgICAg
IGFjY19RMTEgPSBzaWxrX1NNTEFXQiggYWNjX1ExMSwgdG1wMSwgY29lZl9RMTNbIGkgLSAxIF0g
KTsKLSAgICAgICAgICAgIC8qIE91dHB1dCBvZiBhbGxwYXNzIHNlY3Rpb24gKi8KLSAgICAgICAg
ICAgIHRtcDEgPSBzaWxrX1NNTEFXQiggc3RhdGVbIGkgKyAxIF0sIHN0YXRlWyBpICsgMiBdIC0g
dG1wMiwgbGFtYmRhX1ExNiApOwotICAgICAgICAgICAgc3RhdGVbIGkgKyAxIF0gPSB0bXAyOwot
ICAgICAgICAgICAgYWNjX1ExMSA9IHNpbGtfU01MQVdCKCBhY2NfUTExLCB0bXAyLCBjb2VmX1Ex
M1sgaSBdICk7Ci0gICAgICAgIH0KLSAgICAgICAgc3RhdGVbIG9yZGVyIF0gPSB0bXAxOwotICAg
ICAgICBhY2NfUTExID0gc2lsa19TTUxBV0IoIGFjY19RMTEsIHRtcDEsIGNvZWZfUTEzWyBvcmRl
ciAtIDEgXSApOwotICAgICAgICByZXNfUTJbIG4gXSA9IHNpbGtfTFNISUZUKCAob3B1c19pbnQz
MilpbnB1dFsgbiBdLCAyICkgLSBzaWxrX1JTSElGVF9ST1VORCggYWNjX1ExMSwgOSApOwotICAg
IH0KLX0KLQotdm9pZCBzaWxrX3ByZWZpbHRlcl9GSVgoCi0gICAgc2lsa19lbmNvZGVyX3N0YXRl
X0ZJWCAgICAgICAgICAqcHNFbmMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SS9PICBFbmNvZGVyIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2VuY29kZXJfY29udHJv
bF9GSVggICpwc0VuY0N0cmwsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEVu
Y29kZXIgY29udHJvbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAg
eHdfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgV2VpZ2h0ZWQg
c2lnbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICAgICB4W10gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTcGVlY2ggc2lnbmFsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSkKLXsKLSAgICBzaWxrX3ByZWZpbHRlcl9zdGF0ZV9GSVggKlAgPSAmcHNFbmMtPnNQ
cmVmaWx0OwotICAgIG9wdXNfaW50ICAgaiwgaywgbGFnOwotICAgIG9wdXNfaW50MzIgdG1wXzMy
OwotICAgIGNvbnN0IG9wdXNfaW50MTYgKkFSMV9zaHBfUTEzOwotICAgIGNvbnN0IG9wdXNfaW50
MTYgKnB4OwotICAgIG9wdXNfaW50MzIgKnB4d19RMzsKLSAgICBvcHVzX2ludCAgIEhhcm1TaGFw
ZUdhaW5fUTEyLCBUaWx0X1ExNDsKLSAgICBvcHVzX2ludDMyIEhhcm1TaGFwZUZJUlBhY2tlZF9R
MTIsIExGX3NocF9RMTQ7Ci0gICAgVkFSREVDTCggb3B1c19pbnQzMiwgeF9maWx0X1ExMiApOwot
ICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIHN0X3Jlc19RMiApOwotICAgIG9wdXNfaW50MTYgQl9R
MTBbIDIgXTsKLSAgICBTQVZFX1NUQUNLOwotCi0gICAgLyogU2V0IHVwIHBvaW50ZXJzICovCi0g
ICAgcHggID0geDsKLSAgICBweHdfUTMgPSB4d19RMzsKLSAgICBsYWcgPSBQLT5sYWdQcmV2Owot
ICAgIEFMTE9DKCB4X2ZpbHRfUTEyLCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGgsIG9wdXNfaW50
MzIgKTsKLSAgICBBTExPQyggc3RfcmVzX1EyLCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGgsIG9w
dXNfaW50MzIgKTsKLSAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGsr
KyApIHsKLSAgICAgICAgLyogVXBkYXRlIFZhcmlhYmxlcyB0aGF0IGNoYW5nZSBwZXIgc3ViIGZy
YW1lICovCi0gICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPT0gVFlQ
RV9WT0lDRUQgKSB7Ci0gICAgICAgICAgICBsYWcgPSBwc0VuY0N0cmwtPnBpdGNoTFsgayBdOwot
ICAgICAgICB9Ci0KLSAgICAgICAgLyogTm9pc2Ugc2hhcGUgcGFyYW1ldGVycyAqLwotICAgICAg
ICBIYXJtU2hhcGVHYWluX1ExMiA9IHNpbGtfU01VTFdCKCAob3B1c19pbnQzMilwc0VuY0N0cmwt
Pkhhcm1TaGFwZUdhaW5fUTE0WyBrIF0sIDE2Mzg0IC0gcHNFbmNDdHJsLT5IYXJtQm9vc3RfUTE0
WyBrIF0gKTsKLSAgICAgICAgc2lsa19hc3NlcnQoIEhhcm1TaGFwZUdhaW5fUTEyID49IDAgKTsK
LSAgICAgICAgSGFybVNoYXBlRklSUGFja2VkX1ExMiAgPSAgICAgICAgICAgICAgICAgICAgICAg
ICAgc2lsa19SU0hJRlQoIEhhcm1TaGFwZUdhaW5fUTEyLCAyICk7Ci0gICAgICAgIEhhcm1TaGFw
ZUZJUlBhY2tlZF9RMTIgfD0gc2lsa19MU0hJRlQoIChvcHVzX2ludDMyKXNpbGtfUlNISUZUKCBI
YXJtU2hhcGVHYWluX1ExMiwgMSApLCAxNiApOwotICAgICAgICBUaWx0X1ExNCAgICA9IHBzRW5j
Q3RybC0+VGlsdF9RMTRbICAgayBdOwotICAgICAgICBMRl9zaHBfUTE0ICA9IHBzRW5jQ3RybC0+
TEZfc2hwX1ExNFsgayBdOwotICAgICAgICBBUjFfc2hwX1ExMyA9ICZwc0VuY0N0cmwtPkFSMV9R
MTNbICAgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKLQotICAgICAgICAvKiBTaG9ydCB0ZXJt
IEZJUiBmaWx0ZXJpbmcqLwotICAgICAgICBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmlsdGVy
X0ZJWCggUC0+c0FSX3NocCwgc3RfcmVzX1EyLCBBUjFfc2hwX1ExMywgcHgsCi0gICAgICAgICAg
ICBwc0VuYy0+c0Ntbi53YXJwaW5nX1ExNiwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoLCBwc0Vu
Yy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIsIHBzRW5jLT5zQ21uLmFyY2ggKTsKLQotICAgICAgICAv
KiBSZWR1Y2UgKG1haW5seSkgbG93IGZyZXF1ZW5jaWVzIGR1cmluZyBoYXJtb25pYyBlbXBoYXNp
cyAqLwotICAgICAgICBCX1ExMFsgMCBdID0gc2lsa19SU0hJRlRfUk9VTkQoIHBzRW5jQ3RybC0+
R2FpbnNQcmVfUTE0WyBrIF0sIDQgKTsKLSAgICAgICAgdG1wXzMyID0gc2lsa19TTUxBQkIoIFNJ
TEtfRklYX0NPTlNUKCBJTlBVVF9USUxULCAyNiApLCBwc0VuY0N0cmwtPkhhcm1Cb29zdF9RMTRb
IGsgXSwgSGFybVNoYXBlR2Fpbl9RMTIgKTsgICAvKiBRMjYgKi8KLSAgICAgICAgdG1wXzMyID0g
c2lsa19TTUxBQkIoIHRtcF8zMiwgcHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eV9RMTQsIFNJTEtf
RklYX0NPTlNUKCBISUdIX1JBVEVfSU5QVVRfVElMVCwgMTIgKSApOyAgICAvKiBRMjYgKi8KLSAg
ICAgICAgdG1wXzMyID0gc2lsa19TTVVMV0IoIHRtcF8zMiwgLXBzRW5jQ3RybC0+R2FpbnNQcmVf
UTE0WyBrIF0gKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBRMjQgKi8KLSAgICAgICAgdG1wXzMyID0gc2lsa19SU0hJRlRfUk9VTkQoIHRtcF8zMiwg
MTQgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBRMTAgKi8KLSAgICAgICAgQl9RMTBbIDEgXT0gc2lsa19TQVQx
NiggdG1wXzMyICk7Ci0gICAgICAgIHhfZmlsdF9RMTJbIDAgXSA9IHNpbGtfTUxBKCBzaWxrX01V
TCggc3RfcmVzX1EyWyAwIF0sIEJfUTEwWyAwIF0gKSwgUC0+c0hhcm1IUF9RMiwgQl9RMTBbIDEg
XSApOwotICAgICAgICBmb3IoIGogPSAxOyBqIDwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoOyBq
KysgKSB7Ci0gICAgICAgICAgICB4X2ZpbHRfUTEyWyBqIF0gPSBzaWxrX01MQSggc2lsa19NVUwo
IHN0X3Jlc19RMlsgaiBdLCBCX1ExMFsgMCBdICksIHN0X3Jlc19RMlsgaiAtIDEgXSwgQl9RMTBb
IDEgXSApOwotICAgICAgICB9Ci0gICAgICAgIFAtPnNIYXJtSFBfUTIgPSBzdF9yZXNfUTJbIHBz
RW5jLT5zQ21uLnN1YmZyX2xlbmd0aCAtIDEgXTsKLQotICAgICAgICBzaWxrX3ByZWZpbHRfRklY
KCBQLCB4X2ZpbHRfUTEyLCBweHdfUTMsIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTIsIFRpbHRfUTE0
LCBMRl9zaHBfUTE0LCBsYWcsIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCApOwotCi0gICAgICAg
IHB4ICArPSBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGg7Ci0gICAgICAgIHB4d19RMyArPSBwc0Vu
Yy0+c0Ntbi5zdWJmcl9sZW5ndGg7Ci0gICAgfQotCi0gICAgUC0+bGFnUHJldiA9IHBzRW5jQ3Ry
bC0+cGl0Y2hMWyBwc0VuYy0+c0Ntbi5uYl9zdWJmciAtIDEgXTsKLSAgICBSRVNUT1JFX1NUQUNL
OwotfQotCi0jaWZuZGVmIE9WRVJSSURFX3NpbGtfcHJlZmlsdF9GSVgKLS8qIFByZWZpbHRlciBm
b3IgZmluZGluZyBRdWFudGl6ZXIgaW5wdXQgc2lnbmFsICovCi1zdGF0aWMgT1BVU19JTkxJTkUg
dm9pZCBzaWxrX3ByZWZpbHRfRklYKAotICAgIHNpbGtfcHJlZmlsdGVyX3N0YXRlX0ZJWCAgICAq
UCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBzdGF0ZSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBzdF9yZXNf
UTEyW10sICAgICAgICAgICAgICAgLyogSSAgICBzaG9ydCB0ZXJtIHJlc2lkdWFsIHNpZ25hbCAg
ICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICB4d19RM1tdLCAgICAg
ICAgICAgICAgICAgICAgLyogTyAgICBwcmVmaWx0ZXJlZCBzaWduYWwgICAgICAgICAgICAgICAg
ICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVGSVJQYWNrZWRf
UTEyLCAgICAgLyogSSAgICBIYXJtb25pYyBzaGFwaW5nIGNvZWZpY2llbnRzICAgICAgICAqLwot
ICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBUaWx0X1ExNCwgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBUaWx0IHNoYXBpbmcgY29lZmljaWVudCAgICAgICAgICAgICAqLwotICAgIG9w
dXNfaW50MzIgICAgICAgICAgICAgICAgICBMRl9zaHBfUTE0LCAgICAgICAgICAgICAgICAgLyog
SSAgICBMb3ctZnJlcXVhbmN5IHNoYXBpbmcgY29lZmljaWVudHMgICAqLwotICAgIG9wdXNfaW50
ICAgICAgICAgICAgICAgICAgICBsYWcsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBM
YWcgZm9yIGhhcm1vbmljIHNoYXBpbmcgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgICBsZW5ndGggICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGgg
b2Ygc2lnbmFscyAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50ICAgaSwg
aWR4LCBMVFBfc2hwX2J1Zl9pZHg7Ci0gICAgb3B1c19pbnQzMiBuX0xUUF9RMTIsIG5fVGlsdF9R
MTAsIG5fTEZfUTEwOwotICAgIG9wdXNfaW50MzIgc0xGX01BX3NocF9RMTIsIHNMRl9BUl9zaHBf
UTEyOwotICAgIG9wdXNfaW50MTYgKkxUUF9zaHBfYnVmOwotCi0gICAgLyogVG8gc3BlZWQgdXAg
dXNlIHRlbXAgdmFyaWFibGVzIGluc3RlYWQgb2YgdXNpbmcgdGhlIHN0cnVjdCAqLwotICAgIExU
UF9zaHBfYnVmICAgICA9IFAtPnNMVFBfc2hwOwotICAgIExUUF9zaHBfYnVmX2lkeCA9IFAtPnNM
VFBfc2hwX2J1Zl9pZHg7Ci0gICAgc0xGX0FSX3NocF9RMTIgID0gUC0+c0xGX0FSX3NocF9RMTI7
Ci0gICAgc0xGX01BX3NocF9RMTIgID0gUC0+c0xGX01BX3NocF9RMTI7Ci0KLSAgICBmb3IoIGkg
PSAwOyBpIDwgbGVuZ3RoOyBpKysgKSB7Ci0gICAgICAgIGlmKCBsYWcgPiAwICkgewotICAgICAg
ICAgICAgLyogdW5yb2xsZWQgbG9vcCAqLwotICAgICAgICAgICAgc2lsa19hc3NlcnQoIEhBUk1f
U0hBUEVfRklSX1RBUFMgPT0gMyApOwotICAgICAgICAgICAgaWR4ID0gbGFnICsgTFRQX3NocF9i
dWZfaWR4OwotICAgICAgICAgICAgbl9MVFBfUTEyID0gc2lsa19TTVVMQkIoICAgICAgICAgICAg
TFRQX3NocF9idWZbICggaWR4IC0gSEFSTV9TSEFQRV9GSVJfVEFQUyAvIDIgLSAxKSAmIExUUF9N
QVNLIF0sIEhhcm1TaGFwZUZJUlBhY2tlZF9RMTIgKTsKLSAgICAgICAgICAgIG5fTFRQX1ExMiA9
IHNpbGtfU01MQUJUKCBuX0xUUF9RMTIsIExUUF9zaHBfYnVmWyAoIGlkeCAtIEhBUk1fU0hBUEVf
RklSX1RBUFMgLyAyICAgICkgJiBMVFBfTUFTSyBdLCBIYXJtU2hhcGVGSVJQYWNrZWRfUTEyICk7
Ci0gICAgICAgICAgICBuX0xUUF9RMTIgPSBzaWxrX1NNTEFCQiggbl9MVFBfUTEyLCBMVFBfc2hw
X2J1ZlsgKCBpZHggLSBIQVJNX1NIQVBFX0ZJUl9UQVBTIC8gMiArIDEpICYgTFRQX01BU0sgXSwg
SGFybVNoYXBlRklSUGFja2VkX1ExMiApOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
bl9MVFBfUTEyID0gMDsKLSAgICAgICAgfQotCi0gICAgICAgIG5fVGlsdF9RMTAgPSBzaWxrX1NN
VUxXQiggc0xGX0FSX3NocF9RMTIsIFRpbHRfUTE0ICk7Ci0gICAgICAgIG5fTEZfUTEwICAgPSBz
aWxrX1NNTEFXQiggc2lsa19TTVVMV1QoIHNMRl9BUl9zaHBfUTEyLCBMRl9zaHBfUTE0ICksIHNM
Rl9NQV9zaHBfUTEyLCBMRl9zaHBfUTE0ICk7Ci0KLSAgICAgICAgc0xGX0FSX3NocF9RMTIgPSBz
aWxrX1NVQjMyKCBzdF9yZXNfUTEyWyBpIF0sIHNpbGtfTFNISUZUKCBuX1RpbHRfUTEwLCAyICkg
KTsKLSAgICAgICAgc0xGX01BX3NocF9RMTIgPSBzaWxrX1NVQjMyKCBzTEZfQVJfc2hwX1ExMiwg
IHNpbGtfTFNISUZUKCBuX0xGX1ExMCwgICAyICkgKTsKLQotICAgICAgICBMVFBfc2hwX2J1Zl9p
ZHggPSAoIExUUF9zaHBfYnVmX2lkeCAtIDEgKSAmIExUUF9NQVNLOwotICAgICAgICBMVFBfc2hw
X2J1ZlsgTFRQX3NocF9idWZfaWR4IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JT
SElGVF9ST1VORCggc0xGX01BX3NocF9RMTIsIDEyICkgKTsKLQotICAgICAgICB4d19RM1tpXSA9
IHNpbGtfUlNISUZUX1JPVU5EKCBzaWxrX1NVQjMyKCBzTEZfTUFfc2hwX1ExMiwgbl9MVFBfUTEy
ICksIDkgKTsKLSAgICB9Ci0KLSAgICAvKiBDb3B5IHRlbXAgdmFyaWFibGUgYmFjayB0byBzdGF0
ZSAqLwotICAgIFAtPnNMRl9BUl9zaHBfUTEyICAgPSBzTEZfQVJfc2hwX1ExMjsKLSAgICBQLT5z
TEZfTUFfc2hwX1ExMiAgID0gc0xGX01BX3NocF9RMTI7Ci0gICAgUC0+c0xUUF9zaHBfYnVmX2lk
eCA9IExUUF9zaHBfYnVmX2lkeDsKLX0KLSNlbmRpZiAvKiBPVkVSUklERV9zaWxrX3ByZWZpbHRf
RklYICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvc2NodXI2NF9GSVguYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9z
Y2h1cjY0X0ZJWC5jCmluZGV4IDc2NGExMGVmM2VhNWQyYTJmNjg1NGYzYWU1MzQxNTFhNTFhMDE4
YmMuLmIyY2IxMmQ5YjE2MGEwNzE1Zjg4ZTcyNDM5ZTVhMDM2Yjg2MjhhYzUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9maXhlZC9zY2h1cjY0X0ZJWC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zY2h1cjY0X0ZJWC5jCkBA
IC00Myw3ICs0Myw3IEBAIG9wdXNfaW50MzIgc2lsa19zY2h1cjY0KCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBPICAgIHJldHVybnMgcmVzaWR1YWwgZW5lCiAgICAgb3B1c19pbnQzMiBD
WyBTSUxLX01BWF9PUkRFUl9MUEMgKyAxIF1bIDIgXTsKICAgICBvcHVzX2ludDMyIEN0bXAxX1Ez
MCwgQ3RtcDJfUTMwLCByY190bXBfUTMxOwogCi0gICAgc2lsa19hc3NlcnQoIG9yZGVyPT02fHxv
cmRlcj09OHx8b3JkZXI9PTEwfHxvcmRlcj09MTJ8fG9yZGVyPT0xNHx8b3JkZXI9PTE2ICk7Cisg
ICAgc2lsa19hc3NlcnQoIG9yZGVyID49IDAgJiYgb3JkZXIgPD0gU0lMS19NQVhfT1JERVJfTFBD
ICk7CiAKICAgICAvKiBDaGVjayBmb3IgaW52YWxpZCBpbnB1dCAqLwogICAgIGlmKCBjWyAwIF0g
PD0gMCApIHsKQEAgLTUxLDkgKzUxLDEwIEBAIG9wdXNfaW50MzIgc2lsa19zY2h1cjY0KCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIHJldHVybnMgcmVzaWR1YWwgZW5lCiAgICAg
ICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIGZvciggayA9IDA7IGsgPCBvcmRlciArIDE7IGsr
KyApIHsKKyAgICBrID0gMDsKKyAgICBkbyB7CiAgICAgICAgIENbIGsgXVsgMCBdID0gQ1sgayBd
WyAxIF0gPSBjWyBrIF07Ci0gICAgfQorICAgIH0gd2hpbGUoICsrayA8PSBvcmRlciApOwogCiAg
ICAgZm9yKCBrID0gMDsgayA8IG9yZGVyOyBrKysgKSB7CiAgICAgICAgIC8qIENoZWNrIHRoYXQg
d2Ugd29uJ3QgYmUgZ2V0dGluZyBhbiB1bnN0YWJsZSByYywgb3RoZXJ3aXNlIHN0b3AgaGVyZS4g
Ki8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zY2h1cl9GSVguYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zY2h1cl9G
SVguYwppbmRleCBjNGMwZWYyM2I0NzgwNGU1ZjU2YzdjNWQ1OGM2NjU1NmVlZjVhMDFlLi41OWQ0
NGE2ZjdmZTg1OGMyMWVlYmNhMzFiNmJlNDQzMGFjZDQ4MzE5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4
ZWQvc2NodXJfRklYLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NjaHVyX0ZJWC5jCkBAIC00MywyOCArNDMs
MjkgQEAgb3B1c19pbnQzMiBzaWxrX3NjaHVyKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIE8gICAgUmV0dXJucyByZXNpZHVhbCBlbmUKICAgICBvcHVzX2ludDMyICAgIENbIFNJTEtf
TUFYX09SREVSX0xQQyArIDEgXVsgMiBdOwogICAgIG9wdXNfaW50MzIgICAgQ3RtcDEsIEN0bXAy
LCByY190bXBfUTE1OwogCi0gICAgc2lsa19hc3NlcnQoIG9yZGVyPT02fHxvcmRlcj09OHx8b3Jk
ZXI9PTEwfHxvcmRlcj09MTJ8fG9yZGVyPT0xNHx8b3JkZXI9PTE2ICk7CisgICAgc2lsa19hc3Nl
cnQoIG9yZGVyID49IDAgJiYgb3JkZXIgPD0gU0lMS19NQVhfT1JERVJfTFBDICk7CiAKICAgICAv
KiBHZXQgbnVtYmVyIG9mIGxlYWRpbmcgemVyb3MgKi8KICAgICBseiA9IHNpbGtfQ0xaMzIoIGNb
IDAgXSApOwogCiAgICAgLyogQ29weSBjb3JyZWxhdGlvbnMgYW5kIGFkanVzdCBsZXZlbCB0byBR
MzAgKi8KKyAgICBrID0gMDsKICAgICBpZiggbHogPCAyICkgewogICAgICAgICAvKiBseiBtdXN0
IGJlIDEsIHNvIHNoaWZ0IG9uZSB0byB0aGUgcmlnaHQgKi8KLSAgICAgICAgZm9yKCBrID0gMDsg
ayA8IG9yZGVyICsgMTsgaysrICkgeworICAgICAgICBkbyB7CiAgICAgICAgICAgICBDWyBrIF1b
IDAgXSA9IENbIGsgXVsgMSBdID0gc2lsa19SU0hJRlQoIGNbIGsgXSwgMSApOwotICAgICAgICB9
CisgICAgICAgIH0gd2hpbGUoICsrayA8PSBvcmRlciApOwogICAgIH0gZWxzZSBpZiggbHogPiAy
ICkgewogICAgICAgICAvKiBTaGlmdCB0byB0aGUgbGVmdCAqLwogICAgICAgICBseiAtPSAyOwot
ICAgICAgICBmb3IoIGsgPSAwOyBrIDwgb3JkZXIgKyAxOyBrKysgKSB7CisgICAgICAgIGRvIHsK
ICAgICAgICAgICAgIENbIGsgXVsgMCBdID0gQ1sgayBdWyAxIF0gPSBzaWxrX0xTSElGVCggY1sg
ayBdLCBseiApOwotICAgICAgICB9CisgICAgICAgIH0gd2hpbGUoICsrayA8PSBvcmRlciApOwog
ICAgIH0gZWxzZSB7CiAgICAgICAgIC8qIE5vIG5lZWQgdG8gc2hpZnQgKi8KLSAgICAgICAgZm9y
KCBrID0gMDsgayA8IG9yZGVyICsgMTsgaysrICkgeworICAgICAgICBkbyB7CiAgICAgICAgICAg
ICBDWyBrIF1bIDAgXSA9IENbIGsgXVsgMSBdID0gY1sgayBdOwotICAgICAgICB9CisgICAgICAg
IH0gd2hpbGUoICsrayA8PSBvcmRlciApOwogICAgIH0KIAogICAgIGZvciggayA9IDA7IGsgPCBv
cmRlcjsgaysrICkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3NvbHZlX0xTX0ZJWC5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2ZpeGVkL3NvbHZlX0xTX0ZJWC5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MWQ3
ZDQ5ZDAyYTVlN2NiYTkyNDUyOTVlYmE2YWEyNmJjMmJlZTdlLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zb2x2ZV9MU19GSVguYworKysg
L2Rldi9udWxsCkBAIC0xLDI0OSArMCwwIEBACi0vKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLUNvcHlyaWdodCAo
YykgMjAwNi0yMDExLCBTa3lwZSBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0tIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKLXRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0tIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci1ub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCi1kb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgotLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2ll
dHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQotbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJp
YnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKLXByb2R1Y3RzIGRlcml2
ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgotcGVy
bWlzc2lvbi4KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgotQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UKLUFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
IE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQotTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLVNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUwotSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLUNPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi1BUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRQotUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLQotI2lm
ZGVmIEhBVkVfQ09ORklHX0gKLSNpbmNsdWRlICJjb25maWcuaCIKLSNlbmRpZgotCi0jaW5jbHVk
ZSAibWFpbl9GSVguaCIKLSNpbmNsdWRlICJzdGFja19hbGxvYy5oIgotI2luY2x1ZGUgInR1bmlu
Z19wYXJhbWV0ZXJzLmgiCi0KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qIElu
dGVybmFsIGZ1bmN0aW9uIGhlYWRlcnMgKi8KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioq
Ki8KLQotdHlwZWRlZiBzdHJ1Y3QgewotICAgIG9wdXNfaW50MzIgUTM2X3BhcnQ7Ci0gICAgb3B1
c19pbnQzMiBRNDhfcGFydDsKLX0gaW52X0RfdDsKLQotLyogRmFjdG9yaXplIHNxdWFyZSBtYXRy
aXggQSBpbnRvIExETCBmb3JtICovCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xETF9m
YWN0b3JpemVfRklYKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgKkEsICAgICAgICAgLyogSS9P
IFBvaW50ZXIgdG8gU3ltZXRyaWMgU3F1YXJlIE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgTSwgICAgICAgICAgLyogSSAgIFNpemUg
b2YgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIG9wdXNfaW50MzIgICAgICAgICAgKkxfUTE2LCAgICAgLyogSS9PIFBvaW50ZXIgdG8g
U3F1YXJlIFVwcGVyIHRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAqLwotICAg
IGludl9EX3QgICAgICAgICAgICAgKmludl9EICAgICAgLyogSS9PIFBvaW50ZXIgdG8gdmVjdG9y
IGhvbGRpbmcgaW52ZXJ0ZWQgZGlhZ29uYWwgZWxlbWVudHMgb2YgRCAgICAqLwotKTsKLQotLyog
U29sdmUgTHggPSBiLCB3aGVuIEwgaXMgbG93ZXIgdHJpYW5ndWxhciBhbmQgaGFzIG9uZXMgb24g
dGhlIGRpYWdvbmFsICovCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xTX1NvbHZlRmly
c3RfRklYKAotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgKkxfUTE2LCAgICAgLyogSSAgICBQb2lu
dGVyIHRvIExvd2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIG9wdXNfaW50ICAgICAgICAgICAgTSwgICAgICAgICAgLyogSSAgICBEaW0gb2YgTWF0
cml4IGVxdWF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgKmIsICAgICAgICAgLyogSSAgICBiIFZlY3RvciAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNf
aW50MzIgICAgICAgICAgKnhfUTE2ICAgICAgLyogTyAgICB4IFZlY3RvciAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsKLQotLyogU29sdmUg
TF50KnggPSBiLCB3aGVyZSBMIGlzIGxvd2VyIHRyaWFuZ3VsYXIgd2l0aCBvbmVzIG9uIHRoZSBk
aWFnb25hbCAqLwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19MU19Tb2x2ZUxhc3RfRklY
KAotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgKkxfUTE2LCAgICAgLyogSSAgICBQb2ludGVyIHRv
IExvd2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IGNvbnN0IG9wdXNfaW50ICAgICAgTSwgICAgICAgICAgLyogSSAgICBEaW0gb2YgTWF0cml4IGVx
dWF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0
IG9wdXNfaW50MzIgICAgKmIsICAgICAgICAgLyogSSAgICBiIFZlY3RvciAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIg
ICAgICAgICAgKnhfUTE2ICAgICAgLyogTyAgICB4IFZlY3RvciAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsKLQotc3RhdGljIE9QVVNfSU5M
SU5FIHZvaWQgc2lsa19MU19kaXZpZGVfUTE2X0ZJWCgKLSAgICBvcHVzX2ludDMyICAgICAgICAg
IFRbXSwgICAgICAgIC8qIEkvTyAgTnVtZW5hdG9yIHZlY3RvciAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBpbnZfRF90ICAgICAgICAgICAgICppbnZf
RCwgICAgIC8qIEkgICAgMSAvIEQgdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgIE0gICAgICAgICAg
IC8qIEkgICAgZGltZW5zaW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSk7Ci0KLS8qIFNvbHZlcyBBeCA9IGIsIGFzc3VtaW5nIEEgaXMgc3lt
bWV0cmljICovCi12b2lkIHNpbGtfc29sdmVfTERMX0ZJWCgKLSAgICBvcHVzX2ludDMyICAgICAg
ICAgICAgICAgICAgICAgICpBLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIFBvaW50ZXIgdG8gc3ltZXRyaWMgc3F1YXJlIG1hdHJpeCBBICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgICAgICAgTSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
U2l6ZSBvZiBtYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICAg
ICAqYiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQb2ludGVy
IHRvIGIgdmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgICAgICp4X1Ex
NiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFBvaW50ZXIgdG8geCBz
b2x1dGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotKQotewotICAgIFZBUkRFQ0woIG9wdXNfaW50MzIsIExfUTE2ICk7Ci0gICAgb3B1
c19pbnQzMiBZWyAgICAgIE1BWF9NQVRSSVhfU0laRSBdOwotICAgIGludl9EX3QgICBpbnZfRFsg
IE1BWF9NQVRSSVhfU0laRSBdOwotICAgIFNBVkVfU1RBQ0s7Ci0KLSAgICBzaWxrX2Fzc2VydCgg
TSA8PSBNQVhfTUFUUklYX1NJWkUgKTsKLSAgICBBTExPQyggTF9RMTYsIE0gKiBNLCBvcHVzX2lu
dDMyICk7Ci0KLSAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqCi0gICAgRmFjdG9yaXplIEEgYnkgTERMIHN1Y2ggdGhhdCBBID0gTCpEKkwnLAot
ICAgIHdoZXJlIEwgaXMgbG93ZXIgdHJpYW5ndWxhciB3aXRoIG9uZXMgb24gZGlhZ29uYWwKLSAg
ICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwot
ICAgIHNpbGtfTERMX2ZhY3Rvcml6ZV9GSVgoIEEsIE0sIExfUTE2LCBpbnZfRCApOwotCi0gICAg
LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAg
ICAqIHN1YnN0aXR1dGUgRCpMJyp4ID0gWS4gaWU6Ci0gICAgTCpEKkwnKnggPSBiID0+IEwqWSA9
IGIgPD0+IFkgPSBpbnYoTCkqYgotICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KLSAgICBzaWxrX0xTX1NvbHZlRmlyc3RfRklYKCBMX1Ex
NiwgTSwgYiwgWSApOwotCi0gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioKLSAgICBEKkwnKnggPSBZIDw9PiBMJyp4ID0gaW52KEQpKlksIGJl
Y2F1c2UgRCBpcwotICAgIGRpYWdvbmFsIGp1c3QgbXVsdGlwbHkgd2l0aCAxL2RfaQotICAgICoq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAg
c2lsa19MU19kaXZpZGVfUTE2X0ZJWCggWSwgaW52X0QsIE0gKTsKLQotICAgIC8qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gICAgeCA9IGludihM
JykgKiBpbnYoRCkgKiBZCi0gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCi0gICAgc2lsa19MU19Tb2x2ZUxhc3RfRklYKCBMX1ExNiwgTSwg
WSwgeF9RMTYgKTsKLSAgICBSRVNUT1JFX1NUQUNLOwotfQotCi1zdGF0aWMgT1BVU19JTkxJTkUg
dm9pZCBzaWxrX0xETF9mYWN0b3JpemVfRklYKAotICAgIG9wdXNfaW50MzIgICAgICAgICAgKkEs
ICAgICAgICAgLyogSS9PIFBvaW50ZXIgdG8gU3ltZXRyaWMgU3F1YXJlIE1hdHJpeCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgTSwgICAgICAg
ICAgLyogSSAgIFNpemUgb2YgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50MzIgICAgICAgICAgKkxfUTE2LCAgICAgLyog
SS9PIFBvaW50ZXIgdG8gU3F1YXJlIFVwcGVyIHRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIGludl9EX3QgICAgICAgICAgICAgKmludl9EICAgICAgLyogSS9PIFBv
aW50ZXIgdG8gdmVjdG9yIGhvbGRpbmcgaW52ZXJ0ZWQgZGlhZ29uYWwgZWxlbWVudHMgb2YgRCAg
ICAqLwotKQotewotICAgIG9wdXNfaW50ICAgaSwgaiwgaywgc3RhdHVzLCBsb29wX2NvdW50Owot
ICAgIGNvbnN0IG9wdXNfaW50MzIgKnB0cjEsICpwdHIyOwotICAgIG9wdXNfaW50MzIgZGlhZ19t
aW5fdmFsdWUsIHRtcF8zMiwgZXJyOwotICAgIG9wdXNfaW50MzIgdl9RMFsgTUFYX01BVFJJWF9T
SVpFIF0sIERfUTBbIE1BWF9NQVRSSVhfU0laRSBdOwotICAgIG9wdXNfaW50MzIgb25lX2Rpdl9k
aWFnX1EzNiwgb25lX2Rpdl9kaWFnX1E0MCwgb25lX2Rpdl9kaWFnX1E0ODsKLQotICAgIHNpbGtf
YXNzZXJ0KCBNIDw9IE1BWF9NQVRSSVhfU0laRSApOwotCi0gICAgc3RhdHVzID0gMTsKLSAgICBk
aWFnX21pbl92YWx1ZSA9IHNpbGtfbWF4XzMyKCBzaWxrX1NNTVVMKCBzaWxrX0FERF9TQVQzMigg
QVsgMCBdLCBBWyBzaWxrX1NNVUxCQiggTSwgTSApIC0gMSBdICksIFNJTEtfRklYX0NPTlNUKCBG
SU5EX0xUUF9DT05EX0ZBQywgMzEgKSApLCAxIDw8IDkgKTsKLSAgICBmb3IoIGxvb3BfY291bnQg
PSAwOyBsb29wX2NvdW50IDwgTSAmJiBzdGF0dXMgPT0gMTsgbG9vcF9jb3VudCsrICkgewotICAg
ICAgICBzdGF0dXMgPSAwOwotICAgICAgICBmb3IoIGogPSAwOyBqIDwgTTsgaisrICkgewotICAg
ICAgICAgICAgcHRyMSA9IG1hdHJpeF9hZHIoIExfUTE2LCBqLCAwLCBNICk7Ci0gICAgICAgICAg
ICB0bXBfMzIgPSAwOwotICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IGo7IGkrKyApIHsKLSAg
ICAgICAgICAgICAgICB2X1EwWyBpIF0gPSBzaWxrX1NNVUxXVyggICAgICAgICBEX1EwWyBpIF0s
IHB0cjFbIGkgXSApOyAvKiBRMCAqLwotICAgICAgICAgICAgICAgIHRtcF8zMiAgICA9IHNpbGtf
U01MQVdXKCB0bXBfMzIsIHZfUTBbIGkgXSwgcHRyMVsgaSBdICk7IC8qIFEwICovCi0gICAgICAg
ICAgICB9Ci0gICAgICAgICAgICB0bXBfMzIgPSBzaWxrX1NVQjMyKCBtYXRyaXhfcHRyKCBBLCBq
LCBqLCBNICksIHRtcF8zMiApOwotCi0gICAgICAgICAgICBpZiggdG1wXzMyIDwgZGlhZ19taW5f
dmFsdWUgKSB7Ci0gICAgICAgICAgICAgICAgdG1wXzMyID0gc2lsa19TVUIzMiggc2lsa19TTVVM
QkIoIGxvb3BfY291bnQgKyAxLCBkaWFnX21pbl92YWx1ZSApLCB0bXBfMzIgKTsKLSAgICAgICAg
ICAgICAgICAvKiBNYXRyaXggbm90IHBvc2l0aXZlIHNlbWktZGVmaW5pdGUsIG9yIGlsbCBjb25k
aXRpb25lZCAqLwotICAgICAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBNOyBpKysgKSB7Ci0g
ICAgICAgICAgICAgICAgICAgIG1hdHJpeF9wdHIoIEEsIGksIGksIE0gKSA9IHNpbGtfQUREMzIo
IG1hdHJpeF9wdHIoIEEsIGksIGksIE0gKSwgdG1wXzMyICk7Ci0gICAgICAgICAgICAgICAgfQot
ICAgICAgICAgICAgICAgIHN0YXR1cyA9IDE7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgICAgICBEX1EwWyBqIF0gPSB0bXBfMzI7ICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIGFsd2F5cyA8IG1heChDb3JyZWxhdGlvbikgKi8KLQotICAgICAgICAgICAg
LyogdHdvLXN0ZXAgZGl2aXNpb24gKi8KLSAgICAgICAgICAgIG9uZV9kaXZfZGlhZ19RMzYgPSBz
aWxrX0lOVkVSU0UzMl92YXJRKCB0bXBfMzIsIDM2ICk7ICAgICAgICAgICAgICAgICAgICAvKiBR
MzYgKi8KLSAgICAgICAgICAgIG9uZV9kaXZfZGlhZ19RNDAgPSBzaWxrX0xTSElGVCggb25lX2Rp
dl9kaWFnX1EzNiwgNCApOyAgICAgICAgICAgICAgICAgICAvKiBRNDAgKi8KLSAgICAgICAgICAg
IGVyciA9IHNpbGtfU1VCMzIoIChvcHVzX2ludDMyKTEgPDwgMjQsIHNpbGtfU01VTFdXKCB0bXBf
MzIsIG9uZV9kaXZfZGlhZ19RNDAgKSApOyAgICAgLyogUTI0ICovCi0gICAgICAgICAgICBvbmVf
ZGl2X2RpYWdfUTQ4ID0gc2lsa19TTVVMV1coIGVyciwgb25lX2Rpdl9kaWFnX1E0MCApOyAgICAg
ICAgICAgICAgICAgLyogUTQ4ICovCi0KLSAgICAgICAgICAgIC8qIFNhdmUgMS9EcyAqLwotICAg
ICAgICAgICAgaW52X0RbIGogXS5RMzZfcGFydCA9IG9uZV9kaXZfZGlhZ19RMzY7Ci0gICAgICAg
ICAgICBpbnZfRFsgaiBdLlE0OF9wYXJ0ID0gb25lX2Rpdl9kaWFnX1E0ODsKLQotICAgICAgICAg
ICAgbWF0cml4X3B0ciggTF9RMTYsIGosIGosIE0gKSA9IDY1NTM2OyAvKiAxLjAgaW4gUTE2ICov
Ci0gICAgICAgICAgICBwdHIxID0gbWF0cml4X2FkciggQSwgaiwgMCwgTSApOwotICAgICAgICAg
ICAgcHRyMiA9IG1hdHJpeF9hZHIoIExfUTE2LCBqICsgMSwgMCwgTSApOwotICAgICAgICAgICAg
Zm9yKCBpID0gaiArIDE7IGkgPCBNOyBpKysgKSB7Ci0gICAgICAgICAgICAgICAgdG1wXzMyID0g
MDsKLSAgICAgICAgICAgICAgICBmb3IoIGsgPSAwOyBrIDwgajsgaysrICkgewotICAgICAgICAg
ICAgICAgICAgICB0bXBfMzIgPSBzaWxrX1NNTEFXVyggdG1wXzMyLCB2X1EwWyBrIF0sIHB0cjJb
IGsgXSApOyAvKiBRMCAqLwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB0bXBf
MzIgPSBzaWxrX1NVQjMyKCBwdHIxWyBpIF0sIHRtcF8zMiApOyAvKiBhbHdheXMgPCBtYXgoQ29y
cmVsYXRpb24pICovCi0KLSAgICAgICAgICAgICAgICAvKiB0bXBfMzIgLyBEX1EwW2pdIDogRGl2
aWRlIHRvIFExNiAqLwotICAgICAgICAgICAgICAgIG1hdHJpeF9wdHIoIExfUTE2LCBpLCBqLCBN
ICkgPSBzaWxrX0FERDMyKCBzaWxrX1NNTVVMKCB0bXBfMzIsIG9uZV9kaXZfZGlhZ19RNDggKSwK
LSAgICAgICAgICAgICAgICAgICAgc2lsa19SU0hJRlQoIHNpbGtfU01VTFdXKCB0bXBfMzIsIG9u
ZV9kaXZfZGlhZ19RMzYgKSwgNCApICk7Ci0KLSAgICAgICAgICAgICAgICAvKiBnbyB0byBuZXh0
IGNvbHVtbiAqLwotICAgICAgICAgICAgICAgIHB0cjIgKz0gTTsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgfQotICAgIH0KLQotICAgIHNpbGtfYXNzZXJ0KCBzdGF0dXMgPT0gMCApOwotfQotCi1z
dGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xTX2RpdmlkZV9RMTZfRklYKAotICAgIG9wdXNf
aW50MzIgICAgICAgICAgVFtdLCAgICAgICAgLyogSS9PICBOdW1lbmF0b3IgdmVjdG9yICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGludl9EX3QgICAg
ICAgICAgICAgKmludl9ELCAgICAgLyogSSAgICAxIC8gRCB2ZWN0b3IgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAg
ICAgTSAgICAgICAgICAgLyogSSAgICBkaW1lbnNpb24gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50ICAgaTsKLSAg
ICBvcHVzX2ludDMyIHRtcF8zMjsKLSAgICBvcHVzX2ludDMyIG9uZV9kaXZfZGlhZ19RMzYsIG9u
ZV9kaXZfZGlhZ19RNDg7Ci0KLSAgICBmb3IoIGkgPSAwOyBpIDwgTTsgaSsrICkgewotICAgICAg
ICBvbmVfZGl2X2RpYWdfUTM2ID0gaW52X0RbIGkgXS5RMzZfcGFydDsKLSAgICAgICAgb25lX2Rp
dl9kaWFnX1E0OCA9IGludl9EWyBpIF0uUTQ4X3BhcnQ7Ci0KLSAgICAgICAgdG1wXzMyID0gVFsg
aSBdOwotICAgICAgICBUWyBpIF0gPSBzaWxrX0FERDMyKCBzaWxrX1NNTVVMKCB0bXBfMzIsIG9u
ZV9kaXZfZGlhZ19RNDggKSwgc2lsa19SU0hJRlQoIHNpbGtfU01VTFdXKCB0bXBfMzIsIG9uZV9k
aXZfZGlhZ19RMzYgKSwgNCApICk7Ci0gICAgfQotfQotCi0vKiBTb2x2ZSBMeCA9IGIsIHdoZW4g
TCBpcyBsb3dlciB0cmlhbmd1bGFyIGFuZCBoYXMgb25lcyBvbiB0aGUgZGlhZ29uYWwgKi8KLXN0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTFNfU29sdmVGaXJzdF9GSVgoCi0gICAgY29uc3Qg
b3B1c19pbnQzMiAgICAqTF9RMTYsICAgICAvKiBJICAgIFBvaW50ZXIgdG8gTG93ZXIgVHJpYW5n
dWxhciBNYXRyaXggICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAg
ICAgICAgICBNLCAgICAgICAgICAvKiBJICAgIERpbSBvZiBNYXRyaXggZXF1YXRpb24gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAg
ICAqYiwgICAgICAgICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAqeF9R
MTYgICAgICAvKiBPICAgIHggVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgaSwgajsKLSAgICBjb25z
dCBvcHVzX2ludDMyICpwdHIzMjsKLSAgICBvcHVzX2ludDMyIHRtcF8zMjsKLQotICAgIGZvcigg
aSA9IDA7IGkgPCBNOyBpKysgKSB7Ci0gICAgICAgIHB0cjMyID0gbWF0cml4X2FkciggTF9RMTYs
IGksIDAsIE0gKTsKLSAgICAgICAgdG1wXzMyID0gMDsKLSAgICAgICAgZm9yKCBqID0gMDsgaiA8
IGk7IGorKyApIHsKLSAgICAgICAgICAgIHRtcF8zMiA9IHNpbGtfU01MQVdXKCB0bXBfMzIsIHB0
cjMyWyBqIF0sIHhfUTE2WyBqIF0gKTsKLSAgICAgICAgfQotICAgICAgICB4X1ExNlsgaSBdID0g
c2lsa19TVUIzMiggYlsgaSBdLCB0bXBfMzIgKTsKLSAgICB9Ci19Ci0KLS8qIFNvbHZlIExedCp4
ID0gYiwgd2hlcmUgTCBpcyBsb3dlciB0cmlhbmd1bGFyIHdpdGggb25lcyBvbiB0aGUgZGlhZ29u
YWwgKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfTFNfU29sdmVMYXN0X0ZJWCgKLSAg
ICBjb25zdCBvcHVzX2ludDMyICAgICpMX1ExNiwgICAgIC8qIEkgICAgUG9pbnRlciB0byBMb3dl
ciBUcmlhbmd1bGFyIE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25z
dCBvcHVzX2ludCAgICAgIE0sICAgICAgICAgIC8qIEkgICAgRGltIG9mIE1hdHJpeCBlcXVhdGlv
biAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVz
X2ludDMyICAgICpiLCAgICAgICAgIC8qIEkgICAgYiBWZWN0b3IgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludDMyICAgICAg
ICAgICp4X1ExNiAgICAgIC8qIE8gICAgeCBWZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSkKLXsKLSAgICBvcHVzX2ludCBpLCBqOwot
ICAgIGNvbnN0IG9wdXNfaW50MzIgKnB0cjMyOwotICAgIG9wdXNfaW50MzIgdG1wXzMyOwotCi0g
ICAgZm9yKCBpID0gTSAtIDE7IGkgPj0gMDsgaS0tICkgewotICAgICAgICBwdHIzMiA9IG1hdHJp
eF9hZHIoIExfUTE2LCAwLCBpLCBNICk7Ci0gICAgICAgIHRtcF8zMiA9IDA7Ci0gICAgICAgIGZv
ciggaiA9IE0gLSAxOyBqID4gaTsgai0tICkgewotICAgICAgICAgICAgdG1wXzMyID0gc2lsa19T
TUxBV1coIHRtcF8zMiwgcHRyMzJbIHNpbGtfU01VTEJCKCBqLCBNICkgXSwgeF9RMTZbIGogXSAp
OwotICAgICAgICB9Ci0gICAgICAgIHhfUTE2WyBpIF0gPSBzaWxrX1NVQjMyKCBiWyBpIF0sIHRt
cF8zMiApOwotICAgIH0KLX0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC9zdHJ1Y3RzX0ZJWC5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2ZpeGVkL3N0cnVjdHNfRklYLmgKaW5kZXggMzI5NGIyNTEyODFlZDgyNjVkNDIzYzU0ZTBk
MDIyNzNmN2Y5OTQ1Mi4uMjc3NGE5N2IyNGZlNjc3YjdkMTgyYTlhMTIwMjhhN2MxZDg3ZmE4OSAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3N0cnVjdHNfRklYLmgKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3N0cnVj
dHNfRklYLmgKQEAgLTQ3LDMxICs0NywxNyBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1c19p
bnQzMiAgICAgICAgICAgICAgICAgIFRpbHRfc210aF9RMTY7CiB9IHNpbGtfc2hhcGVfc3RhdGVf
RklYOwogCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0vKiBQcmVmaWx0ZXIg
c3RhdGUgICAgICAgICAgICAgICovCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
Ci10eXBlZGVmIHN0cnVjdCB7Ci0gICAgb3B1c19pbnQxNiAgICAgICAgICAgICAgICAgIHNMVFBf
c2hwWyBMVFBfQlVGX0xFTkdUSCBdOwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBz
QVJfc2hwWyBNQVhfU0hBUEVfTFBDX09SREVSICsgMSBdOwotICAgIG9wdXNfaW50ICAgICAgICAg
ICAgICAgICAgICBzTFRQX3NocF9idWZfaWR4OwotICAgIG9wdXNfaW50MzIgICAgICAgICAgICAg
ICAgICBzTEZfQVJfc2hwX1ExMjsKLSAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgc0xG
X01BX3NocF9RMTI7Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHNIYXJtSFBfUTI7
Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHJhbmRfc2VlZDsKLSAgICBvcHVzX2lu
dCAgICAgICAgICAgICAgICAgICAgbGFnUHJldjsKLX0gc2lsa19wcmVmaWx0ZXJfc3RhdGVfRklY
OwotCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAvKiBFbmNvZGVyIHN0YXRl
IEZJWCAgICAgICAgICAgICovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiB0
eXBlZGVmIHN0cnVjdCB7CiAgICAgc2lsa19lbmNvZGVyX3N0YXRlICAgICAgICAgIHNDbW47ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBDb21tb24gc3RydWN0LCBzaGFyZWQg
d2l0aCBmbG9hdGluZy1wb2ludCBjb2RlICAgICAgICovCiAgICAgc2lsa19zaGFwZV9zdGF0ZV9G
SVggICAgICAgIHNTaGFwZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTaGFw
ZSBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAg
c2lsa19wcmVmaWx0ZXJfc3RhdGVfRklYICAgIHNQcmVmaWx0OyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBQcmVmaWx0ZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAKICAgICAvKiBCdWZmZXIgZm9yIGZpbmQgcGl0Y2ggYW5kIG5vaXNlIHNo
YXBlIGFuYWx5c2lzICovCiAgICAgc2lsa19EV09SRF9BTElHTiBvcHVzX2ludDE2IHhfYnVmWyAy
ICogTUFYX0ZSQU1FX0xFTkdUSCArIExBX1NIQVBFX01BWCBdOy8qIEJ1ZmZlciBmb3IgZmluZCBw
aXRjaCBhbmQgbm9pc2Ugc2hhcGUgYW5hbHlzaXMgICovCiAgICAgb3B1c19pbnQgICAgICAgICAg
ICAgICAgICAgIExUUENvcnJfUTE1OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBOb3Jt
YWxpemVkIGNvcnJlbGF0aW9uIGZyb20gcGl0Y2ggbGFnIGVzdGltYXRvciAgICAgICovCisgICAg
b3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgcmVzTnJnU210aDsKIH0gc2lsa19lbmNvZGVy
X3N0YXRlX0ZJWDsKIAogLyoqKioqKioqKioqKioqKioqKioqKioqKi8KQEAgLTg3LDExICs3Myw4
IEBAIHR5cGVkZWYgc3RydWN0IHsKIAogICAgIC8qIE5vaXNlIHNoYXBpbmcgcGFyYW1ldGVycyAq
LwogICAgIC8qIFRlc3RpbmcgKi8KLSAgICBzaWxrX0RXT1JEX0FMSUdOIG9wdXNfaW50MTYgQVIx
X1ExM1sgTUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwotICAgIHNpbGtfRFdP
UkRfQUxJR04gb3B1c19pbnQxNiBBUjJfUTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBD
X09SREVSIF07CisgICAgc2lsa19EV09SRF9BTElHTiBvcHVzX2ludDE2IEFSX1ExM1sgTUFYX05C
X1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwogICAgIG9wdXNfaW50MzIgICAgICAgICAg
ICAgICAgICBMRl9zaHBfUTE0WyAgICAgICAgTUFYX05CX1NVQkZSIF07ICAgICAgLyogUGFja3Mg
dHdvIGludDE2IGNvZWZmaWNpZW50cyBwZXIgaW50MzIgdmFsdWUgICAgICAgICAqLwotICAgIG9w
dXNfaW50ICAgICAgICAgICAgICAgICAgICBHYWluc1ByZV9RMTRbICAgICAgTUFYX05CX1NVQkZS
IF07Ci0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIEhhcm1Cb29zdF9RMTRbICAgICBN
QVhfTkJfU1VCRlIgXTsKICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgVGlsdF9RMTRb
ICAgICAgICAgIE1BWF9OQl9TVUJGUiBdOwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
ICBIYXJtU2hhcGVHYWluX1ExNFsgTUFYX05CX1NVQkZSIF07CiAgICAgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICAgIExhbWJkYV9RMTA7CkBAIC05OSw3ICs4Miw2IEBAIHR5cGVkZWYgc3RydWN0
IHsKICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgY29kaW5nX3F1YWxpdHlfUTE0Owog
CiAgICAgLyogbWVhc3VyZXMgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgc3Bh
cnNlbmVzc19RODsKICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgcHJlZEdhaW5fUTE2
OwogICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBMVFByZWRDb2RHYWluX1E3OwogICAg
IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBSZXNOcmdbIE1BWF9OQl9TVUJGUiBdOyAgICAg
ICAgICAgICAgICAgLyogUmVzaWR1YWwgZW5lcmd5IHBlciBzdWJmcmFtZSAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3dhcnBlZF9hdXRvY29ycmVsYXRp
b25fRklYLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZml4ZWQvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYwppbmRleCA2
Y2E2YzExODRkODY1ZjdmYmJjMTViY2M2Y2JiMzI5YjI2Yjg2YTAyLi45OTRjMjk5YWJkMTI0MGNk
YjM3NTk3ZTNhOGFjYTgyMDdlODlhOTc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvd2FycGVkX2F1
dG9jb3JyZWxhdGlvbl9GSVguYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZml4ZWQvd2FycGVkX2F1dG9jb3JyZWxhdGlv
bl9GSVguYwpAQCAtMzEsMTcgKzMxLDEzIEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgog
CiAjaW5jbHVkZSAibWFpbl9GSVguaCIKIAotI2RlZmluZSBRQyAgMTAKLSNkZWZpbmUgUVMgIDE0
Ci0KICNpZiBkZWZpbmVkKE1JUFNyMV9BU00pCiAjaW5jbHVkZSAibWlwcy93YXJwZWRfYXV0b2Nv
cnJlbGF0aW9uX0ZJWF9taXBzcjEuaCIKICNlbmRpZgogCiAKLSNpZm5kZWYgT1ZFUlJJREVfc2ls
a193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWAogLyogQXV0b2NvcnJlbGF0aW9ucyBmb3IgYSB3
YXJwZWQgZnJlcXVlbmN5IGF4aXMgKi8KLXZvaWQgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9u
X0ZJWCgKK3ZvaWQgc2lsa193YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWF9jKAogICAgICAgICAg
IG9wdXNfaW50MzIgICAgICAgICAgICAgICAgKmNvcnIsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIE8gICAgUmVzdWx0IFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgb3B1c19p
bnQgICAgICAgICAgICAgICAgICAqc2NhbGUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogTyAgICBTY2FsaW5nIG9mIHRoZSBjb3JyZWxhdGlvbiB2ZWN0b3IgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAg
ICAgICAgICAgICAgICppbnB1dCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIElucHV0IGRhdGEgdG8gY29ycmVsYXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtOTIsNCArODgsMyBAQCB2b2lkIHNpbGtfd2Fy
cGVkX2F1dG9jb3JyZWxhdGlvbl9GSVgoCiAgICAgfQogICAgIHNpbGtfYXNzZXJ0KCBjb3JyX1FD
WyAwIF0gPj0gMCApOyAvKiBJZiBicmVha2luZywgZGVjcmVhc2UgUUMqLwogfQotI2VuZGlmIC8q
IE9WRVJSSURFX3NpbGtfd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVggKi8KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9maXhlZC94ODYvcHJlZmlsdGVyX0ZJWF9zc2UuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9maXhlZC94ODYvcHJlZmls
dGVyX0ZJWF9zc2UuYwppbmRleCA0ODhhNjAzZjVkZDAxOTliNzEyZmU0MTYwMWVkZjNhMzhiMDBh
ZTEwLi5kOGM5YzJmNTVmMDY2NDUwODI5MzA5ODAyYjgxNTkzYmY1NThhNGVkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvZml4ZWQveDg2L3ByZWZpbHRlcl9GSVhfc3NlLmMKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2ZpeGVkL3g4Ni9w
cmVmaWx0ZXJfRklYX3NzZS5jCkBAIC0xMDcsOCArMTA3LDggQEAgdm9pZCBzaWxrX3dhcnBlZF9M
UENfYW5hbHlzaXNfZmlsdGVyX0ZJWF9zc2U0XzEoCiAgICAgICAgICAgICAgICAgeG1tX3RlbXBi
ID0gX21tX2FkZF9lcGkzMiggeG1tX3RlbXBiLCB4bW1fcHJvZHVjdDIgKTsKICAgICAgICAgICAg
ICAgICB4bW1fdGVtcGEgPSBfbW1fYWRkX2VwaTMyKCB4bW1fdGVtcGEsIHhtbV90ZW1wYiApOwog
Ci0gICAgICAgICAgICAgICAgc3VtICA9IChjb2VmX1ExM184ICogc3RhdGVfOCkgPj4gMTY7Ci0g
ICAgICAgICAgICAgICAgc3VtICs9IChjb2VmX1ExM185ICogc3RhdGVfOSkgPj4gMTY7CisgICAg
ICAgICAgICAgICAgc3VtICA9IChvcHVzX2ludDMyKSgoY29lZl9RMTNfOCAqIHN0YXRlXzgpID4+
IDE2KTsKKyAgICAgICAgICAgICAgICBzdW0gKz0gKG9wdXNfaW50MzIpKChjb2VmX1ExM185ICog
c3RhdGVfOSkgPj4gMTYpOwogCiAgICAgICAgICAgICAgICAgeG1tX3RlbXBhID0gX21tX2FkZF9l
cGkzMiggeG1tX3RlbXBhLCBfbW1fc2h1ZmZsZV9lcGkzMiggeG1tX3RlbXBhLCBfTU1fU0hVRkZM
RSggMCwgMCwgMCwgMiApICkgKTsKICAgICAgICAgICAgICAgICBzdW0gKz0gX21tX2N2dHNpMTI4
X3NpMzIoIHhtbV90ZW1wYSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvTFBDX2ludl9wcmVkX2dh
aW5fRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZmxvYXQvTFBDX2ludl9wcmVkX2dhaW5fRkxQLmMKaW5kZXggMjUxNzhi
YWNkZGU0NjEwYmUwOWEzMWI1OWZmZjc5YjM1ZjcxZTAzMy4uMmJlMjEyMmQ2MTQwOGFmZmZiMWRi
ZmQ4Y2QwNjcyM2ZiMjgyMjliOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L0xQQ19pbnZfcHJlZF9n
YWluX0ZMUC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9MUENfaW52X3ByZWRfZ2Fpbl9GTFAuYwpAQCAtMzEs
OCArMzEsNyBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAogI2luY2x1ZGUgIlNpZ1By
b2NfRklYLmgiCiAjaW5jbHVkZSAiU2lnUHJvY19GTFAuaCIKLQotI2RlZmluZSBSQ19USFJFU0hP
TEQgICAgICAgIDAuOTk5OWYKKyNpbmNsdWRlICJkZWZpbmUuaCIKIAogLyogY29tcHV0ZSBpbnZl
cnNlIG9mIExQQyBwcmVkaWN0aW9uIGdhaW4sIGFuZCAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KIC8qIHRlc3QgaWYgTFBDIGNvZWZmaWNpZW50cyBhcmUgc3RhYmxlIChhbGwgcG9sZXMgd2l0
aGluIHVuaXQgY2lyY2xlKSAgICovCkBAIC00MywzNCArNDIsMzIgQEAgc2lsa19mbG9hdCBzaWxr
X0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9GTFAoICAvKiBPICAgIHJldHVybiBpbnZlcnNlIHByZWRp
Y3Rpb24gZ2EKICkKIHsKICAgICBvcHVzX2ludCAgIGssIG47Ci0gICAgZG91YmxlICAgICBpbnZH
YWluLCByYywgcmNfbXVsdDEsIHJjX211bHQyOwotICAgIHNpbGtfZmxvYXQgQXRtcFsgMiBdWyBT
SUxLX01BWF9PUkRFUl9MUEMgXTsKLSAgICBzaWxrX2Zsb2F0ICpBb2xkLCAqQW5ldzsKKyAgICBk
b3VibGUgICAgIGludkdhaW4sIHJjLCByY19tdWx0MSwgcmNfbXVsdDIsIHRtcDEsIHRtcDI7Cisg
ICAgc2lsa19mbG9hdCBBdG1wWyBTSUxLX01BWF9PUkRFUl9MUEMgXTsKIAotICAgIEFuZXcgPSBB
dG1wWyBvcmRlciAmIDEgXTsKLSAgICBzaWxrX21lbWNweSggQW5ldywgQSwgb3JkZXIgKiBzaXpl
b2Yoc2lsa19mbG9hdCkgKTsKKyAgICBzaWxrX21lbWNweSggQXRtcCwgQSwgb3JkZXIgKiBzaXpl
b2Yoc2lsa19mbG9hdCkgKTsKIAogICAgIGludkdhaW4gPSAxLjA7CiAgICAgZm9yKCBrID0gb3Jk
ZXIgLSAxOyBrID4gMDsgay0tICkgewotICAgICAgICByYyA9IC1BbmV3WyBrIF07Ci0gICAgICAg
IGlmKCByYyA+IFJDX1RIUkVTSE9MRCB8fCByYyA8IC1SQ19USFJFU0hPTEQgKSB7CisgICAgICAg
IHJjID0gLUF0bXBbIGsgXTsKKyAgICAgICAgcmNfbXVsdDEgPSAxLjBmIC0gcmMgKiByYzsKKyAg
ICAgICAgaW52R2FpbiAqPSByY19tdWx0MTsKKyAgICAgICAgaWYoIGludkdhaW4gKiBNQVhfUFJF
RElDVElPTl9QT1dFUl9HQUlOIDwgMS4wZiApIHsKICAgICAgICAgICAgIHJldHVybiAwLjBmOwog
ICAgICAgICB9Ci0gICAgICAgIHJjX211bHQxID0gMS4wZiAtIHJjICogcmM7CiAgICAgICAgIHJj
X211bHQyID0gMS4wZiAvIHJjX211bHQxOwotICAgICAgICBpbnZHYWluICo9IHJjX211bHQxOwot
ICAgICAgICAvKiBzd2FwIHBvaW50ZXJzICovCi0gICAgICAgIEFvbGQgPSBBbmV3OwotICAgICAg
ICBBbmV3ID0gQXRtcFsgayAmIDEgXTsKLSAgICAgICAgZm9yKCBuID0gMDsgbiA8IGs7IG4rKyAp
IHsKLSAgICAgICAgICAgIEFuZXdbIG4gXSA9IChzaWxrX2Zsb2F0KSggKCBBb2xkWyBuIF0gLSBB
b2xkWyBrIC0gbiAtIDEgXSAqIHJjICkgKiByY19tdWx0MiApOworICAgICAgICBmb3IoIG4gPSAw
OyBuIDwgKGsgKyAxKSA+PiAxOyBuKysgKSB7CisgICAgICAgICAgICB0bXAxID0gQXRtcFsgbiBd
OworICAgICAgICAgICAgdG1wMiA9IEF0bXBbIGsgLSBuIC0gMSBdOworICAgICAgICAgICAgQXRt
cFsgbiBdICAgICAgICAgPSAoc2lsa19mbG9hdCkoICggdG1wMSAtIHRtcDIgKiByYyApICogcmNf
bXVsdDIgKTsKKyAgICAgICAgICAgIEF0bXBbIGsgLSBuIC0gMSBdID0gKHNpbGtfZmxvYXQpKCAo
IHRtcDIgLSB0bXAxICogcmMgKSAqIHJjX211bHQyICk7CiAgICAgICAgIH0KICAgICB9Ci0gICAg
cmMgPSAtQW5ld1sgMCBdOwotICAgIGlmKCByYyA+IFJDX1RIUkVTSE9MRCB8fCByYyA8IC1SQ19U
SFJFU0hPTEQgKSB7Ci0gICAgICAgIHJldHVybiAwLjBmOwotICAgIH0KKyAgICByYyA9IC1BdG1w
WyAwIF07CiAgICAgcmNfbXVsdDEgPSAxLjBmIC0gcmMgKiByYzsKICAgICBpbnZHYWluICo9IHJj
X211bHQxOworICAgIGlmKCBpbnZHYWluICogTUFYX1BSRURJQ1RJT05fUE9XRVJfR0FJTiA8IDEu
MGYgKSB7CisgICAgICAgIHJldHVybiAwLjBmOworICAgIH0KICAgICByZXR1cm4gKHNpbGtfZmxv
YXQpaW52R2FpbjsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9TaWdQcm9jX0ZMUC5oIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2Zsb2F0L1NpZ1Byb2NfRkxQLmgKaW5kZXggZjBjYjM3MzNiZTZjNzg2NWE4ODMxYjY1MjdiMWIw
MTZmZDBiNTY3Mi4uOTUzZGU4YjA5ZTM3YmQ2OTI0ZDM2NTU0MTAyZTViOWFhNjVhNjZkZCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2Zsb2F0L1NpZ1Byb2NfRkxQLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L1NpZ1Byb2Nf
RkxQLmgKQEAgLTY4LDEzICs2OCw2IEBAIHZvaWQgc2lsa19rMmFfRkxQKAogICAgIG9wdXNfaW50
MzIgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgICBwcmVkaWN0aW9uIG9yZGVy
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCi0vKiBT
b2x2ZSB0aGUgbm9ybWFsIGVxdWF0aW9ucyB1c2luZyB0aGUgTGV2aW5zb24tRHVyYmluIHJlY3Vy
c2lvbiAqLwotc2lsa19mbG9hdCBzaWxrX2xldmluc29uZHVyYmluX0ZMUCggICAgICAgICAvKiBP
ICAgIHByZWRpY3Rpb24gZXJyb3IgZW5lcmd5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICBBW10sICAgICAgICAgICAgICAgIC8q
IE8gICAgcHJlZGljdGlvbiBjb2VmZmljaWVudHMgW29yZGVyXSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgIGNvcnJbXSwgICAgICAgICAgICAg
LyogSSAgICBpbnB1dCBhdXRvLWNvcnJlbGF0aW9ucyBbb3JkZXIgKyAxXSAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgb3JkZXIgICAgICAgICAgICAg
ICAvKiBJICAgIHByZWRpY3Rpb24gb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0pOwotCiAvKiBjb21wdXRlIGF1dG9jb3JyZWxhdGlvbiAqLwogdm9p
ZCBzaWxrX2F1dG9jb3JyZWxhdGlvbl9GTFAoCiAgICAgc2lsa19mbG9hdCAgICAgICAgICAqcmVz
dWx0cywgICAgICAgICAgIC8qIE8gICAgcmVzdWx0IChsZW5ndGggY29ycmVsYXRpb25Db3VudCkg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9lbmNv
ZGVfZnJhbWVfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZW5jb2RlX2ZyYW1lX0ZMUC5jCmluZGV4IDIwOTJh
NGQ5ZTI0ODI5OTYzZTQ3OWJjMDNlY2Y3YWZhOGZkMTNhZDkuLjQ5OTU2YTJkNzUyYzY5MzhiMzAz
MzE3OTJiYjUyZDcyNGE4OWVjZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9lbmNvZGVfZnJhbWVf
RkxQLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2VuY29kZV9mcmFtZV9GTFAuYwpAQCAtMjksNiArMjksNyBA
QCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICNpbmNsdWRlICJjb25maWcuaCIKICNlbmRp
ZgogCisjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSAibWFpbl9GTFAuaCIKICNpbmNsdWRl
ICJ0dW5pbmdfcGFyYW1ldGVycy5oIgogCkBAIC00MSwyMSArNDIsMjggQEAgc3RhdGljIE9QVVNf
SU5MSU5FIHZvaWQgc2lsa19MQlJSX2VuY29kZV9GTFAoCiApOwogCiB2b2lkIHNpbGtfZW5jb2Rl
X2RvX1ZBRF9GTFAoCi0gICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZMUCAgICAgICAgICAqcHNFbmMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIEVuY29kZXIgc3RhdGUgRkxQICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQICAg
ICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2Rl
ciBzdGF0ZSBGTFAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgICAgICAgYWN0aXZpdHkgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBEZWNpc2lvbiBvZiBPcHVzIHZvaWNlIGFjdGl2aXR5IGRldGVjdG9yICAgICovCiAp
CiB7CisgICAgY29uc3Qgb3B1c19pbnQgYWN0aXZpdHlfdGhyZXNob2xkID0gU0lMS19GSVhfQ09O
U1QoIFNQRUVDSF9BQ1RJVklUWV9EVFhfVEhSRVMsIDggKTsKKwogICAgIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwogICAgIC8qIFZvaWNlIEFjdGl2aXR5IERldGVjdGlvbiAqLwogICAg
IC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIHNpbGtfVkFEX0dldFNBX1E4KCAm
cHNFbmMtPnNDbW4sIHBzRW5jLT5zQ21uLmlucHV0QnVmICsgMSwgcHNFbmMtPnNDbW4uYXJjaCAp
OworICAgIC8qIElmIE9wdXMgVkFEIGlzIGluYWN0aXZlIGFuZCBTaWxrIFZBRCBpcyBhY3RpdmU6
IGxvd2VyIFNpbGsgVkFEIHRvIGp1c3QgdW5kZXIgdGhlIHRocmVzaG9sZCAqLworICAgIGlmKCBh
Y3Rpdml0eSA9PSBWQURfTk9fQUNUSVZJVFkgJiYgcHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5
X1E4ID49IGFjdGl2aXR5X3RocmVzaG9sZCApIHsKKyAgICAgICAgcHNFbmMtPnNDbW4uc3BlZWNo
X2FjdGl2aXR5X1E4ID0gYWN0aXZpdHlfdGhyZXNob2xkIC0gMTsKKyAgICB9CiAKICAgICAvKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAgICAgLyog
Q29udmVydCBzcGVlY2ggYWN0aXZpdHkgaW50byBWQUQgYW5kIERUWCBmbGFncyAqLwogICAgIC8q
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICBp
ZiggcHNFbmMtPnNDbW4uc3BlZWNoX2FjdGl2aXR5X1E4IDwgU0lMS19GSVhfQ09OU1QoIFNQRUVD
SF9BQ1RJVklUWV9EVFhfVEhSRVMsIDggKSApIHsKKyAgICBpZiggcHNFbmMtPnNDbW4uc3BlZWNo
X2FjdGl2aXR5X1E4IDwgYWN0aXZpdHlfdGhyZXNob2xkICkgewogICAgICAgICBwc0VuYy0+c0Nt
bi5pbmRpY2VzLnNpZ25hbFR5cGUgPSBUWVBFX05PX1ZPSUNFX0FDVElWSVRZOwogICAgICAgICBw
c0VuYy0+c0Ntbi5ub1NwZWVjaENvdW50ZXIrKzsKLSAgICAgICAgaWYoIHBzRW5jLT5zQ21uLm5v
U3BlZWNoQ291bnRlciA8IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCApIHsKKyAgICAgICAg
aWYoIHBzRW5jLT5zQ21uLm5vU3BlZWNoQ291bnRlciA8PSBOQl9TUEVFQ0hfRlJBTUVTX0JFRk9S
RV9EVFggKSB7CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5pbkRUWCA9IDA7CiAgICAgICAgIH0g
ZWxzZSBpZiggcHNFbmMtPnNDbW4ubm9TcGVlY2hDb3VudGVyID4gTUFYX0NPTlNFQ1VUSVZFX0RU
WCArIE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWCApIHsKICAgICAgICAgICAgIHBzRW5jLT5z
Q21uLm5vU3BlZWNoQ291bnRlciA9IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWDsKQEAgLTg1
LDcgKzkzLDYgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRkxQKAogICAgIHNpbGtfZW5j
b2Rlcl9jb250cm9sX0ZMUCBzRW5jQ3RybDsKICAgICBvcHVzX2ludCAgICAgaSwgaXRlciwgbWF4
SXRlciwgZm91bmRfdXBwZXIsIGZvdW5kX2xvd2VyLCByZXQgPSAwOwogICAgIHNpbGtfZmxvYXQg
ICAqeF9mcmFtZSwgKnJlc19waXRjaF9mcmFtZTsKLSAgICBzaWxrX2Zsb2F0ICAgeGZ3WyBNQVhf
RlJBTUVfTEVOR1RIIF07CiAgICAgc2lsa19mbG9hdCAgIHJlc19waXRjaFsgMiAqIE1BWF9GUkFN
RV9MRU5HVEggKyBMQV9QSVRDSF9NQVggXTsKICAgICBlY19lbmMgICAgICAgc1JhbmdlRW5jX2Nv
cHksIHNSYW5nZUVuY19jb3B5MjsKICAgICBzaWxrX25zcV9zdGF0ZSBzTlNRX2NvcHksIHNOU1Ff
Y29weTI7CkBAIC05Nyw2ICsxMDQsOSBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GTFAo
CiAgICAgb3B1c19pbnQ4ICAgIExhc3RHYWluSW5kZXhfY29weTI7CiAgICAgb3B1c19pbnQzMiAg
IHBHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdOwogICAgIG9wdXNfdWludDggICBlY19idWZfY29w
eVsgMTI3NSBdOworICAgIG9wdXNfaW50ICAgICBnYWluX2xvY2tbIE1BWF9OQl9TVUJGUiBdID0g
ezB9OworICAgIG9wdXNfaW50MTYgICBiZXN0X2dhaW5fbXVsdFsgTUFYX05CX1NVQkZSIF07Cisg
ICAgb3B1c19pbnQgICAgIGJlc3Rfc3VtWyBNQVhfTkJfU1VCRlIgXTsKIAogICAgIC8qIFRoaXMg
aXMgdG90YWxseSB1bm5lY2Vzc2FyeSBidXQgbWFueSBjb21waWxlcnMgKGluY2x1ZGluZyBnY2Mp
IGFyZSB0b28gZHVtYiB0byByZWFsaXNlIGl0ICovCiAgICAgTGFzdEdhaW5JbmRleF9jb3B5MiA9
IG5CaXRzX2xvd2VyID0gbkJpdHNfdXBwZXIgPSBnYWluTXVsdF9sb3dlciA9IGdhaW5NdWx0X3Vw
cGVyID0gMDsKQEAgLTEzOSwyMiArMTQ5LDE3IEBAIG9wdXNfaW50IHNpbGtfZW5jb2RlX2ZyYW1l
X0ZMUCgKICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KICAgICAgICAgLyogRmluZCBsaW5lYXIgcHJlZGljdGlvbiBjb2VmZmljaWVu
dHMgKExQQyArIExUUCkgKi8KICAgICAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgc2lsa19maW5kX3ByZWRfY29lZnNfRkxQ
KCBwc0VuYywgJnNFbmNDdHJsLCByZXNfcGl0Y2gsIHhfZnJhbWUsIGNvbmRDb2RpbmcgKTsKKyAg
ICAgICAgc2lsa19maW5kX3ByZWRfY29lZnNfRkxQKCBwc0VuYywgJnNFbmNDdHJsLCByZXNfcGl0
Y2hfZnJhbWUsIHhfZnJhbWUsIGNvbmRDb2RpbmcgKTsKIAogICAgICAgICAvKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogUHJvY2VzcyBnYWlucyAg
ICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqLwogICAgICAgICBzaWxrX3Byb2Nlc3NfZ2FpbnNfRkxQKCBwc0Vu
YywgJnNFbmNDdHJsLCBjb25kQ29kaW5nICk7CiAKLSAgICAgICAgLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqLwotICAgICAgICAvKiBQcmVmaWx0ZXJpbmcgZm9yIG5v
aXNlIHNoYXBlciAgICAgICAgICovCi0gICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKi8KLSAgICAgICAgc2lsa19wcmVmaWx0ZXJfRkxQKCBwc0VuYywgJnNF
bmNDdHJsLCB4ZncsIHhfZnJhbWUgKTsKLQogICAgICAgICAvKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KICAgICAgICAgLyogTG93IEJpdHJhdGUgUmVkdW5kYW50IEVu
Y29kaW5nICAgICAgICovCiAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqLwotICAgICAgICBzaWxrX0xCUlJfZW5jb2RlX0ZMUCggcHNFbmMsICZzRW5jQ3Ry
bCwgeGZ3LCBjb25kQ29kaW5nICk7CisgICAgICAgIHNpbGtfTEJSUl9lbmNvZGVfRkxQKCBwc0Vu
YywgJnNFbmNDdHJsLCB4X2ZyYW1lLCBjb25kQ29kaW5nICk7CiAKICAgICAgICAgLyogTG9vcCBv
dmVyIHF1YW50aXplciBhbmQgZW50cm95IGNvZGluZyB0byBjb250cm9sIGJpdHJhdGUgKi8KICAg
ICAgICAgbWF4SXRlciA9IDY7CkBAIC0xODgsNyArMTkzLDExIEBAIG9wdXNfaW50IHNpbGtfZW5j
b2RlX2ZyYW1lX0ZMUCgKICAgICAgICAgICAgICAgICAvKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCiAgICAgICAgICAgICAgICAgLyogTm9pc2Ugc2hhcGluZyBxdWFu
dGl6YXRpb24gICAgICAgICAgICAqLwogICAgICAgICAgICAgICAgIC8qKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKi8KLSAgICAgICAgICAgICAgICBzaWxrX05TUV93cmFw
cGVyX0ZMUCggcHNFbmMsICZzRW5jQ3RybCwgJnBzRW5jLT5zQ21uLmluZGljZXMsICZwc0VuYy0+
c0Ntbi5zTlNRLCBwc0VuYy0+c0Ntbi5wdWxzZXMsIHhmdyApOworICAgICAgICAgICAgICAgIHNp
bGtfTlNRX3dyYXBwZXJfRkxQKCBwc0VuYywgJnNFbmNDdHJsLCAmcHNFbmMtPnNDbW4uaW5kaWNl
cywgJnBzRW5jLT5zQ21uLnNOU1EsIHBzRW5jLT5zQ21uLnB1bHNlcywgeF9mcmFtZSApOworCisg
ICAgICAgICAgICAgICAgaWYgKCBpdGVyID09IG1heEl0ZXIgJiYgIWZvdW5kX2xvd2VyICkgewor
ICAgICAgICAgICAgICAgICAgICBzaWxrX21lbWNweSggJnNSYW5nZUVuY19jb3B5MiwgcHNSYW5n
ZUVuYywgc2l6ZW9mKCBlY19lbmMgKSApOworICAgICAgICAgICAgICAgIH0KIAogICAgICAgICAg
ICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgICAg
ICAgICAgICAgIC8qIEVuY29kZSBQYXJhbWV0ZXJzICAgICAgICAgICAgICAgICAgICAqLwpAQCAt
MjAzLDYgKzIxMiwzMyBAQCBvcHVzX2ludCBzaWxrX2VuY29kZV9mcmFtZV9GTFAoCiAKICAgICAg
ICAgICAgICAgICBuQml0cyA9IGVjX3RlbGwoIHBzUmFuZ2VFbmMgKTsKIAorICAgICAgICAgICAg
ICAgIC8qIElmIHdlIHN0aWxsIGJ1c3QgYWZ0ZXIgdGhlIGxhc3QgaXRlcmF0aW9uLCBkbyBzb21l
IGRhbWFnZSBjb250cm9sLiAqLworICAgICAgICAgICAgICAgIGlmICggaXRlciA9PSBtYXhJdGVy
ICYmICFmb3VuZF9sb3dlciAmJiBuQml0cyA+IG1heEJpdHMgKSB7CisgICAgICAgICAgICAgICAg
ICAgIHNpbGtfbWVtY3B5KCBwc1JhbmdlRW5jLCAmc1JhbmdlRW5jX2NvcHkyLCBzaXplb2YoIGVj
X2VuYyApICk7CisKKyAgICAgICAgICAgICAgICAgICAgLyogS2VlcCBnYWlucyB0aGUgc2FtZSBh
cyB0aGUgbGFzdCBmcmFtZS4gKi8KKyAgICAgICAgICAgICAgICAgICAgcHNFbmMtPnNTaGFwZS5M
YXN0R2FpbkluZGV4ID0gc0VuY0N0cmwubGFzdEdhaW5JbmRleFByZXY7CisgICAgICAgICAgICAg
ICAgICAgIGZvciAoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGkrKyApIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmluZGljZXMuR2FpbnNJbmRpY2VzWyBp
IF0gPSA0OworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGlmIChj
b25kQ29kaW5nICE9IENPREVfQ09ORElUSU9OQUxMWSkgeworICAgICAgICAgICAgICAgICAgICAg
ICBwc0VuYy0+c0Ntbi5pbmRpY2VzLkdhaW5zSW5kaWNlc1sgMCBdID0gc0VuY0N0cmwubGFzdEdh
aW5JbmRleFByZXY7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
cHNFbmMtPnNDbW4uZWNfcHJldkxhZ0luZGV4ID0gZWNfcHJldkxhZ0luZGV4X2NvcHk7CisgICAg
ICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLmVjX3ByZXZTaWduYWxUeXBlID0gZWNfcHJldlNp
Z25hbFR5cGVfY29weTsKKyAgICAgICAgICAgICAgICAgICAgLyogQ2xlYXIgYWxsIHB1bHNlcy4g
Ki8KKyAgICAgICAgICAgICAgICAgICAgZm9yICggaSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5mcmFt
ZV9sZW5ndGg7IGkrKyApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHBzRW5jLT5zQ21uLnB1
bHNlc1sgaSBdID0gMDsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAg
ICAgIHNpbGtfZW5jb2RlX2luZGljZXMoICZwc0VuYy0+c0NtbiwgcHNSYW5nZUVuYywgcHNFbmMt
PnNDbW4ubkZyYW1lc0VuY29kZWQsIDAsIGNvbmRDb2RpbmcgKTsKKworICAgICAgICAgICAgICAg
ICAgICBzaWxrX2VuY29kZV9wdWxzZXMoIHBzUmFuZ2VFbmMsIHBzRW5jLT5zQ21uLmluZGljZXMu
c2lnbmFsVHlwZSwgcHNFbmMtPnNDbW4uaW5kaWNlcy5xdWFudE9mZnNldFR5cGUsCisgICAgICAg
ICAgICAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5wdWxzZXMsIHBzRW5jLT5zQ21uLmZyYW1lX2xl
bmd0aCApOworCisgICAgICAgICAgICAgICAgICAgIG5CaXRzID0gZWNfdGVsbCggcHNSYW5nZUVu
YyApOworICAgICAgICAgICAgICAgIH0KKwogICAgICAgICAgICAgICAgIGlmKCB1c2VDQlIgPT0g
MCAmJiBpdGVyID09IDAgJiYgbkJpdHMgPD0gbWF4Qml0cyApIHsKICAgICAgICAgICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQpAQCAtMjIzLDcgKzI1OSw5IEBAIG9wdXNfaW50
IHNpbGtfZW5jb2RlX2ZyYW1lX0ZMUCgKICAgICAgICAgICAgIGlmKCBuQml0cyA+IG1heEJpdHMg
KSB7CiAgICAgICAgICAgICAgICAgaWYoIGZvdW5kX2xvd2VyID09IDAgJiYgaXRlciA+PSAyICkg
ewogICAgICAgICAgICAgICAgICAgICAvKiBBZGp1c3QgdGhlIHF1YW50aXplcidzIHJhdGUvZGlz
dG9ydGlvbiB0cmFkZW9mZiBhbmQgZGlzY2FyZCBwcmV2aW91cyAidXBwZXIiIHJlc3VsdHMgKi8K
LSAgICAgICAgICAgICAgICAgICAgc0VuY0N0cmwuTGFtYmRhICo9IDEuNWY7CisgICAgICAgICAg
ICAgICAgICAgIHNFbmNDdHJsLkxhbWJkYSA9IHNpbGtfbWF4X2Zsb2F0KHNFbmNDdHJsLkxhbWJk
YSoxLjVmLCAxLjVmKTsKKyAgICAgICAgICAgICAgICAgICAgLyogUmVkdWNpbmcgZGl0aGVyaW5n
IGNhbiBoZWxwIHVzIGhpdCB0aGUgdGFyZ2V0LiAqLworICAgICAgICAgICAgICAgICAgICBwc0Vu
Yy0+c0Ntbi5pbmRpY2VzLnF1YW50T2Zmc2V0VHlwZSA9IDA7CiAgICAgICAgICAgICAgICAgICAg
IGZvdW5kX3VwcGVyID0gMDsKICAgICAgICAgICAgICAgICAgICAgZ2FpbnNJRF91cHBlciA9IC0x
OwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CkBAIC0yNTAsMTUgKzI4OCwzNCBAQCBvcHVzX2lu
dCBzaWxrX2VuY29kZV9mcmFtZV9GTFAoCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
ICAgICB9CiAKKyAgICAgICAgICAgIGlmICggIWZvdW5kX2xvd2VyICYmIG5CaXRzID4gbWF4Qml0
cyApIHsKKyAgICAgICAgICAgICAgICBpbnQgajsKKyAgICAgICAgICAgICAgICBmb3IgKCBpID0g
MDsgaSA8IHBzRW5jLT5zQ21uLm5iX3N1YmZyOyBpKysgKSB7CisgICAgICAgICAgICAgICAgICAg
IGludCBzdW09MDsKKyAgICAgICAgICAgICAgICAgICAgZm9yICggaiA9IGkqcHNFbmMtPnNDbW4u
c3ViZnJfbGVuZ3RoOyBqIDwgKGkrMSkqcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoOyBqKysgKSB7
CisgICAgICAgICAgICAgICAgICAgICAgICBzdW0gKz0gYWJzKCBwc0VuYy0+c0Ntbi5wdWxzZXNb
al0gKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBpZiAoIGl0
ZXIgPT0gMCB8fCAoc3VtIDwgYmVzdF9zdW1baV0gJiYgIWdhaW5fbG9ja1tpXSkgKSB7CisgICAg
ICAgICAgICAgICAgICAgICAgICBiZXN0X3N1bVtpXSA9IHN1bTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGJlc3RfZ2Fpbl9tdWx0W2ldID0gZ2Fpbk11bHRfUTg7CisgICAgICAgICAgICAgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBnYWluX2xvY2tbaV0gPSAxOwor
ICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQog
ICAgICAgICAgICAgaWYoICggZm91bmRfbG93ZXIgJiBmb3VuZF91cHBlciApID09IDAgKSB7CiAg
ICAgICAgICAgICAgICAgLyogQWRqdXN0IGdhaW4gYWNjb3JkaW5nIHRvIGhpZ2gtcmF0ZSByYXRl
L2Rpc3RvcnRpb24gY3VydmUgKi8KLSAgICAgICAgICAgICAgICBvcHVzX2ludDMyIGdhaW5fZmFj
dG9yX1ExNjsKLSAgICAgICAgICAgICAgICBnYWluX2ZhY3Rvcl9RMTYgPSBzaWxrX2xvZzJsaW4o
IHNpbGtfTFNISUZUKCBuQml0cyAtIG1heEJpdHMsIDcgKSAvIHBzRW5jLT5zQ21uLmZyYW1lX2xl
bmd0aCArIFNJTEtfRklYX0NPTlNUKCAxNiwgNyApICk7Ci0gICAgICAgICAgICAgICAgZ2Fpbl9m
YWN0b3JfUTE2ID0gc2lsa19taW5fMzIoIGdhaW5fZmFjdG9yX1ExNiwgU0lMS19GSVhfQ09OU1Qo
IDIsIDE2ICkgKTsKICAgICAgICAgICAgICAgICBpZiggbkJpdHMgPiBtYXhCaXRzICkgewotICAg
ICAgICAgICAgICAgICAgICBnYWluX2ZhY3Rvcl9RMTYgPSBzaWxrX21heF8zMiggZ2Fpbl9mYWN0
b3JfUTE2LCBTSUxLX0ZJWF9DT05TVCggMS4zLCAxNiApICk7CisgICAgICAgICAgICAgICAgICAg
IGlmIChnYWluTXVsdF9ROCA8IDE2Mzg0KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBnYWlu
TXVsdF9ROCAqPSAyOworICAgICAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAg
ICAgICAgICAgICAgZ2Fpbk11bHRfUTggPSAzMjc2NzsKKyAgICAgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIG9wdXNfaW50MzIg
Z2Fpbl9mYWN0b3JfUTE2OworICAgICAgICAgICAgICAgICAgICBnYWluX2ZhY3Rvcl9RMTYgPSBz
aWxrX2xvZzJsaW4oIHNpbGtfTFNISUZUKCBuQml0cyAtIG1heEJpdHMsIDcgKSAvIHBzRW5jLT5z
Q21uLmZyYW1lX2xlbmd0aCArIFNJTEtfRklYX0NPTlNUKCAxNiwgNyApICk7CisgICAgICAgICAg
ICAgICAgICAgIGdhaW5NdWx0X1E4ID0gc2lsa19TTVVMV0IoIGdhaW5fZmFjdG9yX1ExNiwgZ2Fp
bk11bHRfUTggKTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgZ2Fpbk11bHRf
UTggPSBzaWxrX1NNVUxXQiggZ2Fpbl9mYWN0b3JfUTE2LCBnYWluTXVsdF9ROCApOwogICAgICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAvKiBBZGp1c3QgZ2FpbiBieSBpbnRlcnBv
bGF0aW5nICovCiAgICAgICAgICAgICAgICAgZ2Fpbk11bHRfUTggPSBnYWluTXVsdF9sb3dlciAr
ICggKCBnYWluTXVsdF91cHBlciAtIGdhaW5NdWx0X2xvd2VyICkgKiAoIG1heEJpdHMgLSBuQml0
c19sb3dlciApICkgLyAoIG5CaXRzX3VwcGVyIC0gbkJpdHNfbG93ZXIgKTsKQEAgLTI3Miw3ICsz
MjksMTMgQEAgb3B1c19pbnQgc2lsa19lbmNvZGVfZnJhbWVfRkxQKAogICAgICAgICAgICAgfQog
CiAgICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGkrKyAp
IHsKLSAgICAgICAgICAgICAgICBwR2FpbnNfUTE2WyBpIF0gPSBzaWxrX0xTSElGVF9TQVQzMigg
c2lsa19TTVVMV0IoIHNFbmNDdHJsLkdhaW5zVW5xX1ExNlsgaSBdLCBnYWluTXVsdF9ROCApLCA4
ICk7CisgICAgICAgICAgICAgICAgb3B1c19pbnQxNiB0bXA7CisgICAgICAgICAgICAgICAgaWYg
KCBnYWluX2xvY2tbaV0gKSB7CisgICAgICAgICAgICAgICAgICAgIHRtcCA9IGJlc3RfZ2Fpbl9t
dWx0W2ldOworICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIHRt
cCA9IGdhaW5NdWx0X1E4OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBwR2Fp
bnNfUTE2WyBpIF0gPSBzaWxrX0xTSElGVF9TQVQzMiggc2lsa19TTVVMV0IoIHNFbmNDdHJsLkdh
aW5zVW5xX1ExNlsgaSBdLCB0bXAgKSwgOCApOwogICAgICAgICAgICAgfQogCiAgICAgICAgICAg
ICAvKiBRdWFudGl6ZSBnYWlucyAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2VuZXJneV9GTFAu
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9mbG9hdC9lbmVyZ3lfRkxQLmMKaW5kZXggMjRiODE3OWY5ZTNiNGYzYzg4ZTk5MmNm
OWZkODFhNGQ5MDI5NGM3Ni4uN2JjNzE3M2M5Y2YzZjQ2Njk5ZTg5Y2QxM2RiM2IyNzdhZGU2NjA2
YSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2VuZXJneV9GTFAuYworKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZW5l
cmd5X0ZMUC5jCkBAIC0zNywxMyArMzcsMTIgQEAgZG91YmxlIHNpbGtfZW5lcmd5X0ZMUCgKICAg
ICBvcHVzX2ludCAgICAgICAgICAgIGRhdGFTaXplCiApCiB7Ci0gICAgb3B1c19pbnQgIGksIGRh
dGFTaXplNDsKKyAgICBvcHVzX2ludCBpOwogICAgIGRvdWJsZSAgIHJlc3VsdDsKIAogICAgIC8q
IDR4IHVucm9sbGVkIGxvb3AgKi8KICAgICByZXN1bHQgPSAwLjA7Ci0gICAgZGF0YVNpemU0ID0g
ZGF0YVNpemUgJiAweEZGRkM7Ci0gICAgZm9yKCBpID0gMDsgaSA8IGRhdGFTaXplNDsgaSArPSA0
ICkgeworICAgIGZvciggaSA9IDA7IGkgPCBkYXRhU2l6ZSAtIDM7IGkgKz0gNCApIHsKICAgICAg
ICAgcmVzdWx0ICs9IGRhdGFbIGkgKyAwIF0gKiAoZG91YmxlKWRhdGFbIGkgKyAwIF0gKwogICAg
ICAgICAgICAgICAgICAgZGF0YVsgaSArIDEgXSAqIChkb3VibGUpZGF0YVsgaSArIDEgXSArCiAg
ICAgICAgICAgICAgICAgICBkYXRhWyBpICsgMiBdICogKGRvdWJsZSlkYXRhWyBpICsgMiBdICsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9mbG9hdC9maW5kX0xQQ19GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9maW5kX0xQ
Q19GTFAuYwppbmRleCBmY2ZlMWMzNjgxZWI2MWY0MjczNjM4Y2M0MmUxZTE3MDAwNDkxZWRlLi40
ZDYzOTY0ZmViYjhiMjkzMmVmOWNmOThmZmU5NmIzOTZhMzdiODI2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
ZmxvYXQvZmluZF9MUENfRkxQLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfTFBDX0ZMUC5jCkBAIC03
Myw3ICs3Myw3IEBAIHZvaWQgc2lsa19maW5kX0xQQ19GTFAoCiAgICAgICAgICAgICBzaWxrX2lu
dGVycG9sYXRlKCBOTFNGMF9RMTUsIHBzRW5jQy0+cHJldl9OTFNGcV9RMTUsIE5MU0ZfUTE1LCBr
LCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciApOwogCiAgICAgICAgICAgICAvKiBDb252ZXJ0IHRv
IExQQyBmb3IgcmVzaWR1YWwgZW5lcmd5IGV2YWx1YXRpb24gKi8KLSAgICAgICAgICAgIHNpbGtf
TkxTRjJBX0ZMUCggYV90bXAsIE5MU0YwX1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIgKTsK
KyAgICAgICAgICAgIHNpbGtfTkxTRjJBX0ZMUCggYV90bXAsIE5MU0YwX1ExNSwgcHNFbmNDLT5w
cmVkaWN0TFBDT3JkZXIsIHBzRW5jQy0+YXJjaCApOwogCiAgICAgICAgICAgICAvKiBDYWxjdWxh
dGUgcmVzaWR1YWwgZW5lcmd5IHdpdGggTFNGIGludGVycG9sYXRpb24gKi8KICAgICAgICAgICAg
IHNpbGtfTFBDX2FuYWx5c2lzX2ZpbHRlcl9GTFAoIExQQ19yZXMsIGFfdG1wLCB4LCAyICogc3Vi
ZnJfbGVuZ3RoLCBwc0VuY0MtPnByZWRpY3RMUENPcmRlciApOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zs
b2F0L2ZpbmRfTFRQX0ZMUC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2ZpbmRfTFRQX0ZMUC5jCmluZGV4IDcyMjk5
OTYwMTQwOWQzZDk0NjM5MjI2YzBhMWYyM2YxOWE3ZTRkNzUuLmY5NzA2NDkzMGU4NDE2Y2ZkZmU5
NTJlYWRiYjhiYTc0YjA5YzhmNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9maW5kX0xUUF9GTFAu
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvZmxvYXQvZmluZF9MVFBfRkxQLmMKQEAgLTMzLDEwMCArMzMsMzIgQEAgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaW5jbHVkZSAidHVuaW5nX3BhcmFtZXRlcnMuaCIK
IAogdm9pZCBzaWxrX2ZpbmRfTFRQX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
ICAgICAgIGJbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdLCAgICAgIC8qIE8gICAgTFRQIGNv
ZWZzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNpbGtfZmxvYXQg
ICAgICAgICAgICAgICAgICAgICAgV0xUUFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSICogTFRQ
X09SREVSIF0sIC8qIE8gICAgV2VpZ2h0IGZvciBMVFAgcXVhbnRpemF0aW9uICAgICAgICovCi0g
ICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICAqTFRQcmVkQ29kR2FpbiwgICAgICAg
ICAgICAgICAgICAgICAvKiBPICAgIExUUCBjb2RpbmcgZ2FpbiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIHJfbHBjW10s
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTFBDIHJlc2lkdWFsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgbGFnWyAgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgLyogSSAgICBMVFAgbGFn
cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19m
bG9hdCAgICAgICAgICAgICAgICBXZ2h0WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAv
KiBJICAgIFdlaWdodHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIFhYWyBNQVhfTkJfU1VCRlIgKiBMVFBf
T1JERVIgKiBMVFBfT1JERVIgXSwgLyogTyAgICBXZWlnaHQgZm9yIExUUCBxdWFudGl6YXRpb24g
ICAgICAgICAqLworICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgeFhbIE1BWF9O
Ql9TVUJGUiAqIExUUF9PUkRFUiBdLCAgICAgLyogTyAgICBXZWlnaHQgZm9yIExUUCBxdWFudGl6
YXRpb24gICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAg
ICAgICByX3B0cltdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExQQyByZXNp
ZHVhbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2lu
dCAgICAgICAgICAgICAgICAgIGxhZ1sgTUFYX05CX1NVQkZSIF0sICAgICAgICAgICAgICAgIC8q
IEkgICAgTFRQIGxhZ3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgc3ViZnJfbGVuZ3RoLCAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBTdWJmcmFtZSBsZW5ndGggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBuYl9zdWJmciwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFtZXMgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAg
ICAgIG1lbV9vZmZzZXQgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9m
IHNhbXBsZXMgaW4gTFRQIG1lbW9yeSAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgICAgICAgbmJfc3ViZnIgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBudW1iZXIgb2Ygc3ViZnJhbWVzICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7
Ci0gICAgb3B1c19pbnQgICBpLCBrOwotICAgIHNpbGtfZmxvYXQgKmJfcHRyLCB0ZW1wLCAqV0xU
UF9wdHI7Ci0gICAgc2lsa19mbG9hdCBMUENfcmVzX25yZywgTFBDX0xUUF9yZXNfbnJnOwotICAg
IHNpbGtfZmxvYXQgZFsgTUFYX05CX1NVQkZSIF0sIG0sIGcsIGRlbHRhX2JbIExUUF9PUkRFUiBd
OwotICAgIHNpbGtfZmxvYXQgd1sgTUFYX05CX1NVQkZSIF0sIG5yZ1sgTUFYX05CX1NVQkZSIF0s
IHJlZ3U7Ci0gICAgc2lsa19mbG9hdCBSclsgTFRQX09SREVSIF0sIHJyWyBNQVhfTkJfU1VCRlIg
XTsKLSAgICBjb25zdCBzaWxrX2Zsb2F0ICpyX3B0ciwgKmxhZ19wdHI7CisgICAgb3B1c19pbnQg
ICBrOworICAgIHNpbGtfZmxvYXQgKnhYX3B0ciwgKlhYX3B0cjsKKyAgICBjb25zdCBzaWxrX2Zs
b2F0ICpsYWdfcHRyOworICAgIHNpbGtfZmxvYXQgeHgsIHRlbXA7CiAKLSAgICBiX3B0ciAgICA9
IGI7Ci0gICAgV0xUUF9wdHIgPSBXTFRQOwotICAgIHJfcHRyICAgID0gJnJfbHBjWyBtZW1fb2Zm
c2V0IF07CisgICAgeFhfcHRyID0geFg7CisgICAgWFhfcHRyID0gWFg7CiAgICAgZm9yKCBrID0g
MDsgayA8IG5iX3N1YmZyOyBrKysgKSB7CiAgICAgICAgIGxhZ19wdHIgPSByX3B0ciAtICggbGFn
WyBrIF0gKyBMVFBfT1JERVIgLyAyICk7CisgICAgICAgIHNpbGtfY29yck1hdHJpeF9GTFAoIGxh
Z19wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09SREVSLCBYWF9wdHIgKTsKKyAgICAgICAgc2lsa19j
b3JyVmVjdG9yX0ZMUCggbGFnX3B0ciwgcl9wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09SREVSLCB4
WF9wdHIgKTsKKyAgICAgICAgeHggPSAoIHNpbGtfZmxvYXQgKXNpbGtfZW5lcmd5X0ZMUCggcl9w
dHIsIHN1YmZyX2xlbmd0aCArIExUUF9PUkRFUiApOworICAgICAgICB0ZW1wID0gMS4wZiAvIHNp
bGtfbWF4KCB4eCwgTFRQX0NPUlJfSU5WX01BWCAqIDAuNWYgKiAoIFhYX3B0clsgMCBdICsgWFhf
cHRyWyAyNCBdICkgKyAxLjBmICk7CisgICAgICAgIHNpbGtfc2NhbGVfdmVjdG9yX0ZMUCggWFhf
cHRyLCB0ZW1wLCBMVFBfT1JERVIgKiBMVFBfT1JERVIgKTsKKyAgICAgICAgc2lsa19zY2FsZV92
ZWN0b3JfRkxQKCB4WF9wdHIsIHRlbXAsIExUUF9PUkRFUiApOwogCi0gICAgICAgIHNpbGtfY29y
ck1hdHJpeF9GTFAoIGxhZ19wdHIsIHN1YmZyX2xlbmd0aCwgTFRQX09SREVSLCBXTFRQX3B0ciAp
OwotICAgICAgICBzaWxrX2NvcnJWZWN0b3JfRkxQKCBsYWdfcHRyLCByX3B0ciwgc3ViZnJfbGVu
Z3RoLCBMVFBfT1JERVIsIFJyICk7Ci0KLSAgICAgICAgcnJbIGsgXSA9ICggc2lsa19mbG9hdCAp
c2lsa19lbmVyZ3lfRkxQKCByX3B0ciwgc3ViZnJfbGVuZ3RoICk7Ci0gICAgICAgIHJlZ3UgPSAx
LjBmICsgcnJbIGsgXSArCi0gICAgICAgICAgICBtYXRyaXhfcHRyKCBXTFRQX3B0ciwgMCwgMCwg
TFRQX09SREVSICkgKwotICAgICAgICAgICAgbWF0cml4X3B0ciggV0xUUF9wdHIsIExUUF9PUkRF
Ui0xLCBMVFBfT1JERVItMSwgTFRQX09SREVSICk7Ci0gICAgICAgIHJlZ3UgKj0gTFRQX0RBTVBJ
TkcgLyAzOwotICAgICAgICBzaWxrX3JlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZMUCggV0xUUF9w
dHIsICZyclsgayBdLCByZWd1LCBMVFBfT1JERVIgKTsKLSAgICAgICAgc2lsa19zb2x2ZV9MRExf
RkxQKCBXTFRQX3B0ciwgTFRQX09SREVSLCBSciwgYl9wdHIgKTsKLQotICAgICAgICAvKiBDYWxj
dWxhdGUgcmVzaWR1YWwgZW5lcmd5ICovCi0gICAgICAgIG5yZ1sgayBdID0gc2lsa19yZXNpZHVh
bF9lbmVyZ3lfY292YXJfRkxQKCBiX3B0ciwgV0xUUF9wdHIsIFJyLCByclsgayBdLCBMVFBfT1JE
RVIgKTsKLQotICAgICAgICB0ZW1wID0gV2dodFsgayBdIC8gKCBucmdbIGsgXSAqIFdnaHRbIGsg
XSArIDAuMDFmICogc3ViZnJfbGVuZ3RoICk7Ci0gICAgICAgIHNpbGtfc2NhbGVfdmVjdG9yX0ZM
UCggV0xUUF9wdHIsIHRlbXAsIExUUF9PUkRFUiAqIExUUF9PUkRFUiApOwotICAgICAgICB3WyBr
IF0gPSBtYXRyaXhfcHRyKCBXTFRQX3B0ciwgTFRQX09SREVSIC8gMiwgTFRQX09SREVSIC8gMiwg
TFRQX09SREVSICk7Ci0KLSAgICAgICAgcl9wdHIgICAgKz0gc3ViZnJfbGVuZ3RoOwotICAgICAg
ICBiX3B0ciAgICArPSBMVFBfT1JERVI7Ci0gICAgICAgIFdMVFBfcHRyICs9IExUUF9PUkRFUiAq
IExUUF9PUkRFUjsKLSAgICB9Ci0KLSAgICAvKiBDb21wdXRlIExUUCBjb2RpbmcgZ2FpbiAqLwot
ICAgIGlmKCBMVFByZWRDb2RHYWluICE9IE5VTEwgKSB7Ci0gICAgICAgIExQQ19MVFBfcmVzX25y
ZyA9IDFlLTZmOwotICAgICAgICBMUENfcmVzX25yZyAgICAgPSAwLjBmOwotICAgICAgICBmb3Io
IGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgICAgIExQQ19yZXNfbnJnICAg
ICArPSByclsgIGsgXSAqIFdnaHRbIGsgXTsKLSAgICAgICAgICAgIExQQ19MVFBfcmVzX25yZyAr
PSBucmdbIGsgXSAqIFdnaHRbIGsgXTsKLSAgICAgICAgfQotCi0gICAgICAgIHNpbGtfYXNzZXJ0
KCBMUENfTFRQX3Jlc19ucmcgPiAwICk7Ci0gICAgICAgICpMVFByZWRDb2RHYWluID0gMy4wZiAq
IHNpbGtfbG9nMiggTFBDX3Jlc19ucmcgLyBMUENfTFRQX3Jlc19ucmcgKTsKLSAgICB9Ci0KLSAg
ICAvKiBTbW9vdGhpbmcgKi8KLSAgICAvKiBkID0gc3VtKCBCLCAxICk7ICovCi0gICAgYl9wdHIg
PSBiOwotICAgIGZvciggayA9IDA7IGsgPCBuYl9zdWJmcjsgaysrICkgewotICAgICAgICBkWyBr
IF0gPSAwOwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgTFRQX09SREVSOyBpKysgKSB7Ci0gICAg
ICAgICAgICBkWyBrIF0gKz0gYl9wdHJbIGkgXTsKLSAgICAgICAgfQotICAgICAgICBiX3B0ciAr
PSBMVFBfT1JERVI7Ci0gICAgfQotICAgIC8qIG0gPSAoIHcgKiBkJyApIC8gKCBzdW0oIHcgKSAr
IDFlLTMgKTsgKi8KLSAgICB0ZW1wID0gMWUtM2Y7Ci0gICAgZm9yKCBrID0gMDsgayA8IG5iX3N1
YmZyOyBrKysgKSB7Ci0gICAgICAgIHRlbXAgKz0gd1sgayBdOwotICAgIH0KLSAgICBtID0gMDsK
LSAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgbSArPSBkWyBr
IF0gKiB3WyBrIF07Ci0gICAgfQotICAgIG0gPSBtIC8gdGVtcDsKLQotICAgIGJfcHRyID0gYjsK
LSAgICBmb3IoIGsgPSAwOyBrIDwgbmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgZyA9IExUUF9T
TU9PVEhJTkcgLyAoIExUUF9TTU9PVEhJTkcgKyB3WyBrIF0gKSAqICggbSAtIGRbIGsgXSApOwot
ICAgICAgICB0ZW1wID0gMDsKLSAgICAgICAgZm9yKCBpID0gMDsgaSA8IExUUF9PUkRFUjsgaSsr
ICkgewotICAgICAgICAgICAgZGVsdGFfYlsgaSBdID0gc2lsa19tYXhfZmxvYXQoIGJfcHRyWyBp
IF0sIDAuMWYgKTsKLSAgICAgICAgICAgIHRlbXAgKz0gZGVsdGFfYlsgaSBdOwotICAgICAgICB9
Ci0gICAgICAgIHRlbXAgPSBnIC8gdGVtcDsKLSAgICAgICAgZm9yKCBpID0gMDsgaSA8IExUUF9P
UkRFUjsgaSsrICkgewotICAgICAgICAgICAgYl9wdHJbIGkgXSA9IGJfcHRyWyBpIF0gKyBkZWx0
YV9iWyBpIF0gKiB0ZW1wOwotICAgICAgICB9Ci0gICAgICAgIGJfcHRyICs9IExUUF9PUkRFUjsK
KyAgICAgICAgcl9wdHIgICs9IHN1YmZyX2xlbmd0aDsKKyAgICAgICAgWFhfcHRyICs9IExUUF9P
UkRFUiAqIExUUF9PUkRFUjsKKyAgICAgICAgeFhfcHRyICs9IExUUF9PUkRFUjsKICAgICB9CiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvZmluZF9wcmVkX2NvZWZzX0ZMUC5jIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0
L2ZpbmRfcHJlZF9jb2Vmc19GTFAuYwppbmRleCAxYWY0ZmU1ZjFiMmQxNjc2Y2EyNjgyYzAyNmQ5
OGMyZTc4MWFlNTBjLi5jYjJlNzYzYjFkYjAyYmIzZmQwYzE2NmY2YTkwMGQ1N2ZjMjNiODI0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZmxvYXQvZmluZF9wcmVkX2NvZWZzX0ZMUC5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9h
dC9maW5kX3ByZWRfY29lZnNfRkxQLmMKQEAgLTQxLDggKzQxLDkgQEAgdm9pZCBzaWxrX2ZpbmRf
cHJlZF9jb2Vmc19GTFAoCiApCiB7CiAgICAgb3B1c19pbnQgICAgICAgICBpOwotICAgIHNpbGtf
ZmxvYXQgICAgICAgV0xUUFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSICogTFRQX09SREVSIF07
Ci0gICAgc2lsa19mbG9hdCAgICAgICBpbnZHYWluc1sgTUFYX05CX1NVQkZSIF0sIFdnaHRbIE1B
WF9OQl9TVUJGUiBdOworICAgIHNpbGtfZmxvYXQgICAgICAgWFhMVFBbIE1BWF9OQl9TVUJGUiAq
IExUUF9PUkRFUiAqIExUUF9PUkRFUiBdOworICAgIHNpbGtfZmxvYXQgICAgICAgeFhMVFBbIE1B
WF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdOworICAgIHNpbGtfZmxvYXQgICAgICAgaW52R2FpbnNb
IE1BWF9OQl9TVUJGUiBdOwogICAgIG9wdXNfaW50MTYgICAgICAgTkxTRl9RMTVbIE1BWF9MUENf
T1JERVIgXTsKICAgICBjb25zdCBzaWxrX2Zsb2F0ICp4X3B0cjsKICAgICBzaWxrX2Zsb2F0ICAg
ICAgICp4X3ByZV9wdHIsIExQQ19pbl9wcmVbIE1BWF9OQl9TVUJGUiAqIE1BWF9MUENfT1JERVIg
KyBNQVhfRlJBTUVfTEVOR1RIIF07CkBAIC01Miw3ICs1Myw2IEBAIHZvaWQgc2lsa19maW5kX3By
ZWRfY29lZnNfRkxQKAogICAgIGZvciggaSA9IDA7IGkgPCBwc0VuYy0+c0Ntbi5uYl9zdWJmcjsg
aSsrICkgewogICAgICAgICBzaWxrX2Fzc2VydCggcHNFbmNDdHJsLT5HYWluc1sgaSBdID4gMC4w
ZiApOwogICAgICAgICBpbnZHYWluc1sgaSBdID0gMS4wZiAvIHBzRW5jQ3RybC0+R2FpbnNbIGkg
XTsKLSAgICAgICAgV2dodFsgaSBdICAgICA9IGludkdhaW5zWyBpIF0gKiBpbnZHYWluc1sgaSBd
OwogICAgIH0KIAogICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPT0gVFlQ
RV9WT0lDRUQgKSB7CkBAIC02MiwxMyArNjIsMTEgQEAgdm9pZCBzaWxrX2ZpbmRfcHJlZF9jb2Vm
c19GTFAoCiAgICAgICAgIHNpbGtfYXNzZXJ0KCBwc0VuYy0+c0Ntbi5sdHBfbWVtX2xlbmd0aCAt
IHBzRW5jLT5zQ21uLnByZWRpY3RMUENPcmRlciA+PSBwc0VuY0N0cmwtPnBpdGNoTFsgMCBdICsg
TFRQX09SREVSIC8gMiApOwogCiAgICAgICAgIC8qIExUUCBhbmFseXNpcyAqLwotICAgICAgICBz
aWxrX2ZpbmRfTFRQX0ZMUCggcHNFbmNDdHJsLT5MVFBDb2VmLCBXTFRQLCAmcHNFbmNDdHJsLT5M
VFByZWRDb2RHYWluLCByZXNfcGl0Y2gsCi0gICAgICAgICAgICBwc0VuY0N0cmwtPnBpdGNoTCwg
V2dodCwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciwgcHNF
bmMtPnNDbW4ubHRwX21lbV9sZW5ndGggKTsKKyAgICAgICAgc2lsa19maW5kX0xUUF9GTFAoIFhY
TFRQLCB4WExUUCwgcmVzX3BpdGNoLCBwc0VuY0N0cmwtPnBpdGNoTCwgcHNFbmMtPnNDbW4uc3Vi
ZnJfbGVuZ3RoLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciApOwogCiAgICAgICAgIC8qIFF1YW50aXpl
IExUUCBnYWluIHBhcmFtZXRlcnMgKi8KICAgICAgICAgc2lsa19xdWFudF9MVFBfZ2FpbnNfRkxQ
KCBwc0VuY0N0cmwtPkxUUENvZWYsIHBzRW5jLT5zQ21uLmluZGljZXMuTFRQSW5kZXgsICZwc0Vu
Yy0+c0Ntbi5pbmRpY2VzLlBFUkluZGV4LAotICAgICAgICAgICAgJnBzRW5jLT5zQ21uLnN1bV9s
b2dfZ2Fpbl9RNywgV0xUUCwgcHNFbmMtPnNDbW4ubXVfTFRQX1E5LCBwc0VuYy0+c0Ntbi5MVFBR
dWFudExvd0NvbXBsZXhpdHksIHBzRW5jLT5zQ21uLm5iX3N1YmZyLAotICAgICAgICAgICAgcHNF
bmMtPnNDbW4uYXJjaCApOworICAgICAgICAgICAgJnBzRW5jLT5zQ21uLnN1bV9sb2dfZ2Fpbl9R
NywgJnBzRW5jQ3RybC0+TFRQcmVkQ29kR2FpbiwgWFhMVFAsIHhYTFRQLCBwc0VuYy0+c0Ntbi5z
dWJmcl9sZW5ndGgsIHBzRW5jLT5zQ21uLm5iX3N1YmZyLCBwc0VuYy0+c0Ntbi5hcmNoICk7CiAK
ICAgICAgICAgLyogQ29udHJvbCBMVFAgc2NhbGluZyAqLwogICAgICAgICBzaWxrX0xUUF9zY2Fs
ZV9jdHJsX0ZMUCggcHNFbmMsIHBzRW5jQ3RybCwgY29uZENvZGluZyApOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9z
aWxrL2Zsb2F0L2lubmVyX3Byb2R1Y3RfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvaW5uZXJfcHJvZHVjdF9G
TFAuYwppbmRleCAwMjljMDEyOTExZGFkZDY3MzJmZjEzNzNmYmEwNGIyOTZlM2FjNjllLi5jZGQz
OWQyNGNlOTQxODkxNmRiMzQ2YmE5M2FkNThjZjBkOWZjMTQ2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxv
YXQvaW5uZXJfcHJvZHVjdF9GTFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvaW5uZXJfcHJvZHVjdF9GTFAu
YwpAQCAtMzgsMTMgKzM4LDEyIEBAIGRvdWJsZSBzaWxrX2lubmVyX3Byb2R1Y3RfRkxQKAogICAg
IG9wdXNfaW50ICAgICAgICAgICAgZGF0YVNpemUKICkKIHsKLSAgICBvcHVzX2ludCAgaSwgZGF0
YVNpemU0OworICAgIG9wdXNfaW50IGk7CiAgICAgZG91YmxlICAgcmVzdWx0OwogCiAgICAgLyog
NHggdW5yb2xsZWQgbG9vcCAqLwogICAgIHJlc3VsdCA9IDAuMDsKLSAgICBkYXRhU2l6ZTQgPSBk
YXRhU2l6ZSAmIDB4RkZGQzsKLSAgICBmb3IoIGkgPSAwOyBpIDwgZGF0YVNpemU0OyBpICs9IDQg
KSB7CisgICAgZm9yKCBpID0gMDsgaSA8IGRhdGFTaXplIC0gMzsgaSArPSA0ICkgewogICAgICAg
ICByZXN1bHQgKz0gZGF0YTFbIGkgKyAwIF0gKiAoZG91YmxlKWRhdGEyWyBpICsgMCBdICsKICAg
ICAgICAgICAgICAgICAgIGRhdGExWyBpICsgMSBdICogKGRvdWJsZSlkYXRhMlsgaSArIDEgXSAr
CiAgICAgICAgICAgICAgICAgICBkYXRhMVsgaSArIDIgXSAqIChkb3VibGUpZGF0YTJbIGkgKyAy
IF0gKwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L2syYV9GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9rMmFfRkxQ
LmMKaW5kZXggMTJhZjRlNzY2OTdhODY5ODMxYjczZGU1MzNlMzE2YTg4NTliODE2My4uMTQ0ODAw
OGRiYmVkMTM5NzkxMDg5MTMyYjBlMzkxYjJlN2UwN2Y2YiAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0
L2syYV9GTFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvazJhX0ZMUC5jCkBAIC0zOSwxNSArMzksMTYgQEAg
dm9pZCBzaWxrX2syYV9GTFAoCiApCiB7CiAgICAgb3B1c19pbnQgICBrLCBuOwotICAgIHNpbGtf
ZmxvYXQgQXRtcFsgU0lMS19NQVhfT1JERVJfTFBDIF07CisgICAgc2lsa19mbG9hdCByY2ssIHRt
cDEsIHRtcDI7CiAKICAgICBmb3IoIGsgPSAwOyBrIDwgb3JkZXI7IGsrKyApIHsKLSAgICAgICAg
Zm9yKCBuID0gMDsgbiA8IGs7IG4rKyApIHsKLSAgICAgICAgICAgIEF0bXBbIG4gXSA9IEFbIG4g
XTsKKyAgICAgICAgcmNrID0gcmNbIGsgXTsKKyAgICAgICAgZm9yKCBuID0gMDsgbiA8IChrICsg
MSkgPj4gMTsgbisrICkgeworICAgICAgICAgICAgdG1wMSA9IEFbIG4gXTsKKyAgICAgICAgICAg
IHRtcDIgPSBBWyBrIC0gbiAtIDEgXTsKKyAgICAgICAgICAgIEFbIG4gXSAgICAgICAgID0gdG1w
MSArIHRtcDIgKiByY2s7CisgICAgICAgICAgICBBWyBrIC0gbiAtIDEgXSA9IHRtcDIgKyB0bXAx
ICogcmNrOwogICAgICAgICB9Ci0gICAgICAgIGZvciggbiA9IDA7IG4gPCBrOyBuKysgKSB7Ci0g
ICAgICAgICAgICBBWyBuIF0gKz0gQXRtcFsgayAtIG4gLSAxIF0gKiByY1sgayBdOwotICAgICAg
ICB9Ci0gICAgICAgIEFbIGsgXSA9IC1yY1sgayBdOworICAgICAgICBBWyBrIF0gPSAtcmNrOwog
ICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9sZXZpbnNvbmR1cmJpbl9GTFAuYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9mbG9hdC9sZXZpbnNvbmR1cmJpbl9GTFAuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggZjBiYTYwNjk4MTJmZDMyYjkyY2JlYTY0OWQ5YmI3ZTBiNTVhNGYwMi4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvbGV2aW5zb25kdXJi
aW5fRkxQLmMKKysrIC9kZXYvbnVsbApAQCAtMSw4MSArMCwwIEBACi0vKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioK
LUNvcHlyaWdodCAoYykgMjAwNi0yMDExLCBTa3lwZSBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0tIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKLXRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0tIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci1ub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCi1kb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotLSBOZWl0aGVyIHRoZSBuYW1lIG9mIElu
dGVybmV0IFNvY2lldHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQotbmFtZXMgb2Ygc3Bl
Y2lmaWMgY29udHJpYnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKLXBy
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbgotcGVybWlzc2lvbi4KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgotQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQotSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UKLUFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQotTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKLVNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLUNPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi1B
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRQotUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0qKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KLQotI2lmZGVmIEhBVkVfQ09ORklHX0gKLSNpbmNsdWRlICJjb25maWcuaCIKLSNlbmRp
ZgotCi0jaW5jbHVkZSAiU2lnUHJvY19GTFAuaCIKLQotLyogU29sdmUgdGhlIG5vcm1hbCBlcXVh
dGlvbnMgdXNpbmcgdGhlIExldmluc29uLUR1cmJpbiByZWN1cnNpb24gKi8KLXNpbGtfZmxvYXQg
c2lsa19sZXZpbnNvbmR1cmJpbl9GTFAoICAgICAgICAgLyogTyAgICBwcmVkaWN0aW9uIGVycm9y
IGVuZXJneSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNpbGtf
ZmxvYXQgICAgICAgICAgQVtdLCAgICAgICAgICAgICAgICAvKiBPICAgIHByZWRpY3Rpb24gY29l
ZmZpY2llbnRzICAgIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgc2lsa19mbG9hdCAgICBjb3JyW10sICAgICAgICAgICAgIC8qIEkgICAgaW5wdXQgYXV0by1j
b3JyZWxhdGlvbnMgW29yZGVyICsgMV0gICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBj
b25zdCBvcHVzX2ludCAgICAgIG9yZGVyICAgICAgICAgICAgICAgLyogSSAgICBwcmVkaWN0aW9u
IG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKQot
ewotICAgIG9wdXNfaW50ICAgaSwgbUhhbGYsIG07Ci0gICAgc2lsa19mbG9hdCBtaW5fbnJnLCBu
cmcsIHQsIGttLCBBdG1wMSwgQXRtcDI7Ci0KLSAgICBtaW5fbnJnID0gMWUtMTJmICogY29yclsg
MCBdICsgMWUtOWY7Ci0gICAgbnJnID0gY29yclsgMCBdOwotICAgIG5yZyA9IHNpbGtfbWF4X2Zs
b2F0KG1pbl9ucmcsIG5yZyk7Ci0gICAgQVsgMCBdID0gY29yclsgMSBdIC8gbnJnOwotICAgIG5y
ZyAtPSBBWyAwIF0gKiBjb3JyWyAxIF07Ci0gICAgbnJnID0gc2lsa19tYXhfZmxvYXQobWluX25y
ZywgbnJnKTsKLQotICAgIGZvciggbSA9IDE7IG0gPCBvcmRlcjsgbSsrICkKLSAgICB7Ci0gICAg
ICAgIHQgPSBjb3JyWyBtICsgMSBdOwotICAgICAgICBmb3IoIGkgPSAwOyBpIDwgbTsgaSsrICkg
ewotICAgICAgICAgICAgdCAtPSBBWyBpIF0gKiBjb3JyWyBtIC0gaSBdOwotICAgICAgICB9Ci0K
LSAgICAgICAgLyogcmVmbGVjdGlvbiBjb2VmZmljaWVudCAqLwotICAgICAgICBrbSA9IHQgLyBu
cmc7Ci0KLSAgICAgICAgLyogcmVzaWR1YWwgZW5lcmd5ICovCi0gICAgICAgIG5yZyAtPSBrbSAq
IHQ7Ci0gICAgICAgIG5yZyA9IHNpbGtfbWF4X2Zsb2F0KG1pbl9ucmcsIG5yZyk7Ci0KLSAgICAg
ICAgbUhhbGYgPSBtID4+IDE7Ci0gICAgICAgIGZvciggaSA9IDA7IGkgPCBtSGFsZjsgaSsrICkg
ewotICAgICAgICAgICAgQXRtcDEgPSBBWyBpIF07Ci0gICAgICAgICAgICBBdG1wMiA9IEFbIG0g
LSBpIC0gMSBdOwotICAgICAgICAgICAgQVsgbSAtIGkgLSAxIF0gLT0ga20gKiBBdG1wMTsKLSAg
ICAgICAgICAgIEFbIGkgXSAgICAgICAgIC09IGttICogQXRtcDI7Ci0gICAgICAgIH0KLSAgICAg
ICAgaWYoIG0gJiAxICkgewotICAgICAgICAgICAgQVsgbUhhbGYgXSAgICAgLT0ga20gKiBBWyBt
SGFsZiBdOwotICAgICAgICB9Ci0gICAgICAgIEFbIG0gXSA9IGttOwotICAgIH0KLQotICAgIC8q
IHJldHVybiB0aGUgcmVzaWR1YWwgZW5lcmd5ICovCi0gICAgcmV0dXJuIG5yZzsKLX0KLQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL2Zsb2F0L21haW5fRkxQLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvbWFpbl9GTFAuaAppbmRl
eCBlNWE3NTk3MmU1ZjhjMDMwYTEwNzZjNjVkMzM2YTdkMDI4NzYzYzU0Li41ZGMwY2NmNGE0MTNi
M2EyZDNlYzc5MTE0ZmFhMzM0YzQyYjc2NTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvbWFpbl9G
TFAuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZmxvYXQvbWFpbl9GTFAuaApAQCAtNTYsNyArNTYsOCBAQCB2b2lkIHNp
bGtfSFBfdmFyaWFibGVfY3V0b2ZmKAogCiAvKiBFbmNvZGVyIG1haW4gZnVuY3Rpb24gKi8KIHZv
aWQgc2lsa19lbmNvZGVfZG9fVkFEX0ZMUCgKLSAgICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQICAg
ICAgICAgICpwc0VuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2Rl
ciBzdGF0ZSBGTFAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNpbGtfZW5jb2Rl
cl9zdGF0ZV9GTFAgICAgICAgICAgKnBzRW5jLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSS9PICBFbmNvZGVyIHN0YXRlIEZMUCAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpdml0eSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIERlY2lzaW9uIG9mIE9wdXMgdm9pY2UgYWN0aXZpdHkgZGV0
ZWN0b3IgICAgKi8KICk7CiAKIC8qIEVuY29kZXIgbWFpbiBmdW5jdGlvbiAqLwpAQCAtNzksMjIg
KzgwLDExIEBAIG9wdXNfaW50IHNpbGtfaW5pdF9lbmNvZGVyKAogb3B1c19pbnQgc2lsa19jb250
cm9sX2VuY29kZXIoCiAgICAgc2lsa19lbmNvZGVyX3N0YXRlX0ZMUCAgICAgICAgICAqcHNFbmMs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU2lsayBlbmNv
ZGVyIHN0YXRlIEZMUCAgICAgICAgICAgKi8KICAgICBzaWxrX0VuY0NvbnRyb2xTdHJ1Y3QgICAg
ICAgICAgICplbmNDb250cm9sLCAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ29udHJv
bCBzdHJ1Y3R1cmUgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNf
aW50MzIgICAgICAgICAgICAgICAgVGFyZ2V0UmF0ZV9icHMsICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBUYXJnZXQgbWF4IGJpdHJhdGUgKGJwcykgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBhbGxvd19id19zd2l0Y2gsICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIEZsYWcgdG8gYWxsb3cgc3dpdGNoaW5nIGF1ZGlvIGJhbmR3
aWR0aCAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIGNoYW5uZWxO
YiwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgQ2hhbm5lbCBudW1iZXIgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgZm9yY2VfZnNfa0h6CiApOwogCi0vKioqKioqKioqKioqKioqKi8KLS8qIFByZWZpbHRl
cmluZyAqLwotLyoqKioqKioqKioqKioqKiovCi12b2lkIHNpbGtfcHJlZmlsdGVyX0ZMUCgKLSAg
ICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0ZSBGTFAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZMUCAgKnBzRW5jQ3Ry
bCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIGNvbnRyb2wgRkxQICAg
ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAg
ICAgICB4d1tdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFdlaWdodGVk
IHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zs
b2F0ICAgICAgICAgICAgICAgIHhbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgU3BlZWNoIHNpZ25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKTsK
LQogLyoqKioqKioqKioqKioqKioqKioqKioqKioqLwogLyogTm9pc2Ugc2hhcGluZyBhbmFseXNp
cyAqLwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtMTUzLDE1ICsxNDMsMTIgQEAg
dm9pZCBzaWxrX2ZpbmRfTFBDX0ZMUCgKIAogLyogTFRQIGFuYWx5c2lzICovCiB2b2lkIHNpbGtf
ZmluZF9MVFBfRkxQKAotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgYlsgTUFY
X05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgLyogTyAgICBMVFAgY29lZnMgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAg
ICAgICAgICBXTFRQWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyog
TyAgICBXZWlnaHQgZm9yIExUUCBxdWFudGl6YXRpb24gICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0
ICAgICAgICAgICAgICAgICAgICAgICpMVFByZWRDb2RHYWluLCAgICAgICAgICAgICAgICAgICAg
IC8qIE8gICAgTFRQIGNvZGluZyBnYWluICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgcl9scGNbXSwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBMUEMgcmVzaWR1YWwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICBYWFsgTUFY
X05CX1NVQkZSICogTFRQX09SREVSICogTFRQX09SREVSIF0sIC8qIE8gICAgV2VpZ2h0IGZvciBM
VFAgcXVhbnRpemF0aW9uICAgICAgICAgKi8KKyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
ICAgICAgIHhYWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgIC8qIE8gICAgV2VpZ2h0
IGZvciBMVFAgcXVhbnRpemF0aW9uICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtf
ZmxvYXQgICAgICAgICAgICAgICAgcl9wdHJbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBMUEMgcmVzaWR1YWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAg
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBsYWdbICBNQVhfTkJfU1VCRlIgXSwg
ICAgICAgICAgICAgICAvKiBJICAgIExUUCBsYWdzICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIFdnaHRbIE1B
WF9OQl9TVUJGUiBdLCAgICAgICAgICAgICAgIC8qIEkgICAgV2VpZ2h0cyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgc3ViZnJfbGVuZ3RoLCAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBTdWJmcmFt
ZSBsZW5ndGggICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19p
bnQgICAgICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIG1lbV9vZmZzZXQgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMgaW4gTFRQIG1lbW9yeSAgICAg
ICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbmJfc3ViZnIg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2Ygc3ViZnJhbWVzICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiApOwogCiB2b2lkIHNpbGtfTFRQX2FuYWx5c2lzX2Zp
bHRlcl9GTFAoCkBAIC0xOTgsMTQgKzE4NSwxNSBAQCB2b2lkIHNpbGtfTFBDX2FuYWx5c2lzX2Zp
bHRlcl9GTFAoCiAKIC8qIExUUCB0YXAgcXVhbnRpemVyICovCiB2b2lkIHNpbGtfcXVhbnRfTFRQ
X2dhaW5zX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgIEJbIE1BWF9O
Ql9TVUJGUiAqIExUUF9PUkRFUiBdLCAgICAgIC8qIEkvTyAgKFVuLSlxdWFudGl6ZWQgTFRQIGdh
aW5zICAgICAgICAgICAgICAgICAgICAqLworICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAg
ICAgICAgQlsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgLyogTyAgICBRdWFudGl6
ZWQgTFRQIGdhaW5zICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQ4ICAg
ICAgICAgICAgICAgICAgICAgICBjYmtfaW5kZXhbIE1BWF9OQl9TVUJGUiBdLCAgICAgICAgICAv
KiBPICAgIENvZGVib29rIGluZGV4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAg
ICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgICAgICpwZXJpb2RpY2l0eV9pbmRleCwgICAg
ICAgICAgICAgICAgIC8qIE8gICAgUGVyaW9kaWNpdHkgaW5kZXggICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgICAgKnN1bV9sb2df
Z2Fpbl9RNywgICAgICAgICAgICAgICAgICAgLyogSS9PICBDdW11bGF0aXZlIG1heCBwcmVkaWN0
aW9uIGdhaW4gICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICBXWyBNQVhf
TkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyogSSAgICBFcnJvciB3ZWlnaHRz
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAg
ICAgICAgIG11X1ExMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTXUgdmFs
dWUgKFIvRCB0cmFkZW9mZikgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgbG93Q29tcGxleGl0eSwgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBGbGFnIGZvciBsb3cgY29tcGxleGl0eSAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgICpwcmVkX2dh
aW5fZEIsICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgTFRQIHByZWRpY3Rpb24gZ2FpbiAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAg
ICAgICAgWFhbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBJICAg
IENvcnJlbGF0aW9uIG1hdHJpeCAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19m
bG9hdCAgICAgICAgICAgICAgICB4WFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAv
KiBJICAgIENvcnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIHN1YmZyX2xlbiwgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMgcGVyIHN1YmZyYW1lICAgICAg
ICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbmJfc3ViZnIs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOdW1iZXIgb2Ygc3ViZnJhbWVzICAg
ICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBhcmNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFJ1bi10aW1l
IGFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7CiAKQEAgLTI0NSwyMiAr
MjMzLDYgQEAgdm9pZCBzaWxrX2NvcnJWZWN0b3JfRkxQKAogICAgIHNpbGtfZmxvYXQgICAgICAg
ICAgICAgICAgICAgICAgKlh0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAg
ICBYJyp0IGNvcnJlbGF0aW9uIHZlY3RvciBbb3JkZXJdICAgICAgICAgICAgICovCiApOwogCi0v
KiBBZGQgbm9pc2UgdG8gbWF0cml4IGRpYWdvbmFsICovCi12b2lkIHNpbGtfcmVndWxhcml6ZV9j
b3JyZWxhdGlvbnNfRkxQKAotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgKlhY
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBDb3JyZWxhdGlvbiBtYXRy
aWNlcyAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAg
ICAgICAgICAgICAqeHgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIENv
cnJlbGF0aW9uIHZhbHVlcyAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBz
aWxrX2Zsb2F0ICAgICAgICAgICAgICAgIG5vaXNlLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgTm9pc2UgZW5lcmd5IHRvIGFkZCAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgRCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBEaW1lbnNpb24gb2YgWFggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0pOwotCi0vKiBGdW5jdGlvbiB0byBzb2x2ZSBsaW5lYXIgZXF1YXRp
b24gQXggPSBiLCB3aGVyZSBBIGlzIGFuIE14TSBzeW1tZXRyaWMgbWF0cml4ICovCi12b2lkIHNp
bGtfc29sdmVfTERMX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgICpB
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgU3ltbWV0cmljIHNxdWFy
ZSBtYXRyaXgsIG91dDogcmVnLiAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgTSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBT
aXplIG9mIG1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qg
c2lsa19mbG9hdCAgICAgICAgICAgICAgICAqYiwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIFBvaW50ZXIgdG8gYiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgICp4ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUG9pbnRlciB0byB4IHNvbHV0aW9uIHZlY3RvciAg
ICAgICAgICAgICAgICAqLwotKTsKLQogLyogQXBwbHkgc2luZSB3aW5kb3cgdG8gc2lnbmFsIHZl
Y3Rvci4gICovCiAvKiBXaW5kb3cgdHlwZXM6ICAgICAgICAgICAgICAgICAgICAgICAgKi8KIC8q
ICAxIC0+IHNpbmUgd2luZG93IGZyb20gMCB0byBwaS8yICAgICAqLwpAQCAtMjg1LDcgKzI1Nyw4
IEBAIHZvaWQgc2lsa19BMk5MU0ZfRkxQKAogdm9pZCBzaWxrX05MU0YyQV9GTFAoCiAgICAgc2ls
a19mbG9hdCAgICAgICAgICAgICAgICAgICAgICAqcEFSLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBPICAgIExQQyBjb2VmZmljaWVudHMgWyBMUENfb3JkZXIgXSAgICAgICAgICAg
ICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICpOTFNGX1ExNSwgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTkxTRiB2ZWN0b3IgICAgICBbIExQQ19vcmRl
ciBdICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAg
TFBDX29yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMUEMgb3JkZXIgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAg
ICAgICAgICAgICAgICBMUENfb3JkZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IExQQyBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBpbnQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2ggICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICAg
ICAqLwogKTsKIAogLyogTGltaXQsIHN0YWJpbGl6ZSwgYW5kIHF1YW50aXplIE5MU0ZzICovCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZmxvYXQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxv
YXQvbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQLmMKaW5kZXggNjVmNmVhNTg3MDUzODE5Y2RiMTQx
YzA0ZWI3ZGNmOTBlOGRlZDc1NC4uY2IzZDhhNTBiN2NiNzcwOTViZmMyYmY4NzM1OWE1YjcxY2Zk
M2RjNSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9mbG9hdC9ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAuYwpAQCAtNTUsMjUgKzU1LDIx
IEBAIHN0YXRpYyBPUFVTX0lOTElORSBzaWxrX2Zsb2F0IHdhcnBlZF9nYWluKAogLyogQ29udmVy
dCB3YXJwZWQgZmlsdGVyIGNvZWZmaWNpZW50cyB0byBtb25pYyBwc2V1ZG8td2FycGVkIGNvZWZm
aWNpZW50cyBhbmQgbGltaXQgbWF4aW11bSAgICAgKi8KIC8qIGFtcGxpdHVkZSBvZiBtb25pYyB3
YXJwZWQgY29lZmZpY2llbnRzIGJ5IHVzaW5nIGJhbmR3aWR0aCBleHBhbnNpb24gb24gdGhlIHRy
dWUgY29lZmZpY2llbnRzICovCiBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCB3YXJwZWRfdHJ1ZTJt
b25pY19jb2VmcygKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAqY29lZnNfc3luLAotICAgIHNp
bGtfZmxvYXQgICAgICAgICAgICpjb2Vmc19hbmEsCisgICAgc2lsa19mbG9hdCAgICAgICAgICAg
KmNvZWZzLAogICAgIHNpbGtfZmxvYXQgICAgICAgICAgIGxhbWJkYSwKICAgICBzaWxrX2Zsb2F0
ICAgICAgICAgICBsaW1pdCwKICAgICBvcHVzX2ludCAgICAgICAgICAgICBvcmRlcgogKSB7CiAg
ICAgb3B1c19pbnQgICBpLCBpdGVyLCBpbmQgPSAwOwotICAgIHNpbGtfZmxvYXQgdG1wLCBtYXhh
YnMsIGNoaXJwLCBnYWluX3N5biwgZ2Fpbl9hbmE7CisgICAgc2lsa19mbG9hdCB0bXAsIG1heGFi
cywgY2hpcnAsIGdhaW47CiAKICAgICAvKiBDb252ZXJ0IHRvIG1vbmljIGNvZWZmaWNpZW50cyAq
LwogICAgIGZvciggaSA9IG9yZGVyIC0gMTsgaSA+IDA7IGktLSApIHsKLSAgICAgICAgY29lZnNf
c3luWyBpIC0gMSBdIC09IGxhbWJkYSAqIGNvZWZzX3N5blsgaSBdOwotICAgICAgICBjb2Vmc19h
bmFbIGkgLSAxIF0gLT0gbGFtYmRhICogY29lZnNfYW5hWyBpIF07CisgICAgICAgIGNvZWZzWyBp
IC0gMSBdIC09IGxhbWJkYSAqIGNvZWZzWyBpIF07CiAgICAgfQotICAgIGdhaW5fc3luID0gKCAx
LjBmIC0gbGFtYmRhICogbGFtYmRhICkgLyAoIDEuMGYgKyBsYW1iZGEgKiBjb2Vmc19zeW5bIDAg
XSApOwotICAgIGdhaW5fYW5hID0gKCAxLjBmIC0gbGFtYmRhICogbGFtYmRhICkgLyAoIDEuMGYg
KyBsYW1iZGEgKiBjb2Vmc19hbmFbIDAgXSApOworICAgIGdhaW4gPSAoIDEuMGYgLSBsYW1iZGEg
KiBsYW1iZGEgKSAvICggMS4wZiArIGxhbWJkYSAqIGNvZWZzWyAwIF0gKTsKICAgICBmb3IoIGkg
PSAwOyBpIDwgb3JkZXI7IGkrKyApIHsKLSAgICAgICAgY29lZnNfc3luWyBpIF0gKj0gZ2Fpbl9z
eW47Ci0gICAgICAgIGNvZWZzX2FuYVsgaSBdICo9IGdhaW5fYW5hOworICAgICAgICBjb2Vmc1sg
aSBdICo9IGdhaW47CiAgICAgfQogCiAgICAgLyogTGltaXQgKi8KQEAgLTgxLDcgKzc3LDcgQEAg
c3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgd2FycGVkX3RydWUybW9uaWNfY29lZnMoCiAgICAgICAg
IC8qIEZpbmQgbWF4aW11bSBhYnNvbHV0ZSB2YWx1ZSAqLwogICAgICAgICBtYXhhYnMgPSAtMS4w
ZjsKICAgICAgICAgZm9yKCBpID0gMDsgaSA8IG9yZGVyOyBpKysgKSB7Ci0gICAgICAgICAgICB0
bXAgPSBzaWxrX21heCggc2lsa19hYnNfZmxvYXQoIGNvZWZzX3N5blsgaSBdICksIHNpbGtfYWJz
X2Zsb2F0KCBjb2Vmc19hbmFbIGkgXSApICk7CisgICAgICAgICAgICB0bXAgPSBzaWxrX2Fic19m
bG9hdCggY29lZnNbIGkgXSApOwogICAgICAgICAgICAgaWYoIHRtcCA+IG1heGFicyApIHsKICAg
ICAgICAgICAgICAgICBtYXhhYnMgPSB0bXA7CiAgICAgICAgICAgICAgICAgaW5kID0gaTsKQEAg
LTk0LDM2ICs5MCw1OSBAQCBzdGF0aWMgT1BVU19JTkxJTkUgdm9pZCB3YXJwZWRfdHJ1ZTJtb25p
Y19jb2VmcygKIAogICAgICAgICAvKiBDb252ZXJ0IGJhY2sgdG8gdHJ1ZSB3YXJwZWQgY29lZmZp
Y2llbnRzICovCiAgICAgICAgIGZvciggaSA9IDE7IGkgPCBvcmRlcjsgaSsrICkgewotICAgICAg
ICAgICAgY29lZnNfc3luWyBpIC0gMSBdICs9IGxhbWJkYSAqIGNvZWZzX3N5blsgaSBdOwotICAg
ICAgICAgICAgY29lZnNfYW5hWyBpIC0gMSBdICs9IGxhbWJkYSAqIGNvZWZzX2FuYVsgaSBdOwor
ICAgICAgICAgICAgY29lZnNbIGkgLSAxIF0gKz0gbGFtYmRhICogY29lZnNbIGkgXTsKICAgICAg
ICAgfQotICAgICAgICBnYWluX3N5biA9IDEuMGYgLyBnYWluX3N5bjsKLSAgICAgICAgZ2Fpbl9h
bmEgPSAxLjBmIC8gZ2Fpbl9hbmE7CisgICAgICAgIGdhaW4gPSAxLjBmIC8gZ2FpbjsKICAgICAg
ICAgZm9yKCBpID0gMDsgaSA8IG9yZGVyOyBpKysgKSB7Ci0gICAgICAgICAgICBjb2Vmc19zeW5b
IGkgXSAqPSBnYWluX3N5bjsKLSAgICAgICAgICAgIGNvZWZzX2FuYVsgaSBdICo9IGdhaW5fYW5h
OworICAgICAgICAgICAgY29lZnNbIGkgXSAqPSBnYWluOwogICAgICAgICB9CiAKICAgICAgICAg
LyogQXBwbHkgYmFuZHdpZHRoIGV4cGFuc2lvbiAqLwogICAgICAgICBjaGlycCA9IDAuOTlmIC0g
KCAwLjhmICsgMC4xZiAqIGl0ZXIgKSAqICggbWF4YWJzIC0gbGltaXQgKSAvICggbWF4YWJzICog
KCBpbmQgKyAxICkgKTsKLSAgICAgICAgc2lsa19id2V4cGFuZGVyX0ZMUCggY29lZnNfc3luLCBv
cmRlciwgY2hpcnAgKTsKLSAgICAgICAgc2lsa19id2V4cGFuZGVyX0ZMUCggY29lZnNfYW5hLCBv
cmRlciwgY2hpcnAgKTsKKyAgICAgICAgc2lsa19id2V4cGFuZGVyX0ZMUCggY29lZnMsIG9yZGVy
LCBjaGlycCApOwogCiAgICAgICAgIC8qIENvbnZlcnQgdG8gbW9uaWMgd2FycGVkIGNvZWZmaWNp
ZW50cyAqLwogICAgICAgICBmb3IoIGkgPSBvcmRlciAtIDE7IGkgPiAwOyBpLS0gKSB7Ci0gICAg
ICAgICAgICBjb2Vmc19zeW5bIGkgLSAxIF0gLT0gbGFtYmRhICogY29lZnNfc3luWyBpIF07Ci0g
ICAgICAgICAgICBjb2Vmc19hbmFbIGkgLSAxIF0gLT0gbGFtYmRhICogY29lZnNfYW5hWyBpIF07
CisgICAgICAgICAgICBjb2Vmc1sgaSAtIDEgXSAtPSBsYW1iZGEgKiBjb2Vmc1sgaSBdOwogICAg
ICAgICB9Ci0gICAgICAgIGdhaW5fc3luID0gKCAxLjBmIC0gbGFtYmRhICogbGFtYmRhICkgLyAo
IDEuMGYgKyBsYW1iZGEgKiBjb2Vmc19zeW5bIDAgXSApOwotICAgICAgICBnYWluX2FuYSA9ICgg
MS4wZiAtIGxhbWJkYSAqIGxhbWJkYSApIC8gKCAxLjBmICsgbGFtYmRhICogY29lZnNfYW5hWyAw
IF0gKTsKKyAgICAgICAgZ2FpbiA9ICggMS4wZiAtIGxhbWJkYSAqIGxhbWJkYSApIC8gKCAxLjBm
ICsgbGFtYmRhICogY29lZnNbIDAgXSApOwogICAgICAgICBmb3IoIGkgPSAwOyBpIDwgb3JkZXI7
IGkrKyApIHsKLSAgICAgICAgICAgIGNvZWZzX3N5blsgaSBdICo9IGdhaW5fc3luOwotICAgICAg
ICAgICAgY29lZnNfYW5hWyBpIF0gKj0gZ2Fpbl9hbmE7CisgICAgICAgICAgICBjb2Vmc1sgaSBd
ICo9IGdhaW47CiAgICAgICAgIH0KICAgICB9CiAgICAgc2lsa19hc3NlcnQoIDAgKTsKIH0KIAor
c3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgbGltaXRfY29lZnMoCisgICAgc2lsa19mbG9hdCAgICAg
ICAgICAgKmNvZWZzLAorICAgIHNpbGtfZmxvYXQgICAgICAgICAgIGxpbWl0LAorICAgIG9wdXNf
aW50ICAgICAgICAgICAgIG9yZGVyCispIHsKKyAgICBvcHVzX2ludCAgIGksIGl0ZXIsIGluZCA9
IDA7CisgICAgc2lsa19mbG9hdCB0bXAsIG1heGFicywgY2hpcnA7CisKKyAgICBmb3IoIGl0ZXIg
PSAwOyBpdGVyIDwgMTA7IGl0ZXIrKyApIHsKKyAgICAgICAgLyogRmluZCBtYXhpbXVtIGFic29s
dXRlIHZhbHVlICovCisgICAgICAgIG1heGFicyA9IC0xLjBmOworICAgICAgICBmb3IoIGkgPSAw
OyBpIDwgb3JkZXI7IGkrKyApIHsKKyAgICAgICAgICAgIHRtcCA9IHNpbGtfYWJzX2Zsb2F0KCBj
b2Vmc1sgaSBdICk7CisgICAgICAgICAgICBpZiggdG1wID4gbWF4YWJzICkgeworICAgICAgICAg
ICAgICAgIG1heGFicyA9IHRtcDsKKyAgICAgICAgICAgICAgICBpbmQgPSBpOworICAgICAgICAg
ICAgfQorICAgICAgICB9CisgICAgICAgIGlmKCBtYXhhYnMgPD0gbGltaXQgKSB7CisgICAgICAg
ICAgICAvKiBDb2VmZmljaWVudHMgYXJlIHdpdGhpbiByYW5nZSAtIGRvbmUgKi8KKyAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIC8qIEFwcGx5IGJhbmR3aWR0aCBleHBh
bnNpb24gKi8KKyAgICAgICAgY2hpcnAgPSAwLjk5ZiAtICggMC44ZiArIDAuMWYgKiBpdGVyICkg
KiAoIG1heGFicyAtIGxpbWl0ICkgLyAoIG1heGFicyAqICggaW5kICsgMSApICk7CisgICAgICAg
IHNpbGtfYndleHBhbmRlcl9GTFAoIGNvZWZzLCBvcmRlciwgY2hpcnAgKTsKKyAgICB9CisgICAg
c2lsa19hc3NlcnQoIDAgKTsKK30KKwogLyogQ29tcHV0ZSBub2lzZSBzaGFwaW5nIGNvZWZmaWNp
ZW50cyBhbmQgaW5pdGlhbCBnYWluIHZhbHVlcyAqLwogdm9pZCBzaWxrX25vaXNlX3NoYXBlX2Fu
YWx5c2lzX0ZMUCgKICAgICBzaWxrX2VuY29kZXJfc3RhdGVfRkxQICAgICAgICAgICpwc0VuYywg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBzdGF0ZSBGTFAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtMTMzLDEyICsxNTIsMTMgQEAgdm9pZCBzaWxr
X25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUCgKICkKIHsKICAgICBzaWxrX3NoYXBlX3N0YXRlX0ZM
UCAqcHNTaGFwZVN0ID0gJnBzRW5jLT5zU2hhcGU7Ci0gICAgb3B1c19pbnQgICAgIGssIG5TYW1w
bGVzOwotICAgIHNpbGtfZmxvYXQgICBTTlJfYWRqX2RCLCBIYXJtQm9vc3QsIEhhcm1TaGFwZUdh
aW4sIFRpbHQ7Ci0gICAgc2lsa19mbG9hdCAgIG5yZywgcHJlX25yZywgbG9nX2VuZXJneSwgbG9n
X2VuZXJneV9wcmV2LCBlbmVyZ3lfdmFyaWF0aW9uOwotICAgIHNpbGtfZmxvYXQgICBkZWx0YSwg
QldFeHAxLCBCV0V4cDIsIGdhaW5fbXVsdCwgZ2Fpbl9hZGQsIHN0cmVuZ3RoLCBiLCB3YXJwaW5n
OworICAgIG9wdXNfaW50ICAgICBrLCBuU2FtcGxlcywgblNlZ3M7CisgICAgc2lsa19mbG9hdCAg
IFNOUl9hZGpfZEIsIEhhcm1TaGFwZUdhaW4sIFRpbHQ7CisgICAgc2lsa19mbG9hdCAgIG5yZywg
bG9nX2VuZXJneSwgbG9nX2VuZXJneV9wcmV2LCBlbmVyZ3lfdmFyaWF0aW9uOworICAgIHNpbGtf
ZmxvYXQgICBCV0V4cCwgZ2Fpbl9tdWx0LCBnYWluX2FkZCwgc3RyZW5ndGgsIGIsIHdhcnBpbmc7
CiAgICAgc2lsa19mbG9hdCAgIHhfd2luZG93ZWRbIFNIQVBFX0xQQ19XSU5fTUFYIF07CiAgICAg
c2lsa19mbG9hdCAgIGF1dG9fY29yclsgTUFYX1NIQVBFX0xQQ19PUkRFUiArIDEgXTsKKyAgICBz
aWxrX2Zsb2F0ICAgcmNbIE1BWF9TSEFQRV9MUENfT1JERVIgKyAxIF07CiAgICAgY29uc3Qgc2ls
a19mbG9hdCAqeF9wdHIsICpwaXRjaF9yZXNfcHRyOwogCiAgICAgLyogUG9pbnQgdG8gc3RhcnQg
b2YgZmlyc3QgTFBDIGFuYWx5c2lzIGJsb2NrICovCkBAIC0xNzYsMTQgKzE5NiwxNCBAQCB2b2lk
IHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlzaXNfRkxQKAogICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRp
Y2VzLnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7CiAgICAgICAgIC8qIEluaXRpYWxseSBz
ZXQgdG8gMDsgbWF5IGJlIG92ZXJydWxlZCBpbiBwcm9jZXNzX2dhaW5zKC4uKSAqLwogICAgICAg
ICBwc0VuYy0+c0Ntbi5pbmRpY2VzLnF1YW50T2Zmc2V0VHlwZSA9IDA7Ci0gICAgICAgIHBzRW5j
Q3RybC0+c3BhcnNlbmVzcyA9IDAuMGY7CiAgICAgfSBlbHNlIHsKICAgICAgICAgLyogU3BhcnNl
bmVzcyBtZWFzdXJlLCBiYXNlZCBvbiByZWxhdGl2ZSBmbHVjdHVhdGlvbnMgb2YgZW5lcmd5IHBl
ciAyIG1pbGxpc2Vjb25kcyAqLwogICAgICAgICBuU2FtcGxlcyA9IDIgKiBwc0VuYy0+c0Ntbi5m
c19rSHo7CiAgICAgICAgIGVuZXJneV92YXJpYXRpb24gPSAwLjBmOwogICAgICAgICBsb2dfZW5l
cmd5X3ByZXYgID0gMC4wZjsKICAgICAgICAgcGl0Y2hfcmVzX3B0ciA9IHBpdGNoX3JlczsKLSAg
ICAgICAgZm9yKCBrID0gMDsgayA8IHNpbGtfU01VTEJCKCBTVUJfRlJBTUVfTEVOR1RIX01TLCBw
c0VuYy0+c0Ntbi5uYl9zdWJmciApIC8gMjsgaysrICkgeworICAgICAgICBuU2VncyA9IHNpbGtf
U01VTEJCKCBTVUJfRlJBTUVfTEVOR1RIX01TLCBwc0VuYy0+c0Ntbi5uYl9zdWJmciApIC8gMjsK
KyAgICAgICAgZm9yKCBrID0gMDsgayA8IG5TZWdzOyBrKysgKSB7CiAgICAgICAgICAgICBucmcg
PSAoIHNpbGtfZmxvYXQgKW5TYW1wbGVzICsgKCBzaWxrX2Zsb2F0IClzaWxrX2VuZXJneV9GTFAo
IHBpdGNoX3Jlc19wdHIsIG5TYW1wbGVzICk7CiAgICAgICAgICAgICBsb2dfZW5lcmd5ID0gc2ls
a19sb2cyKCBucmcgKTsKICAgICAgICAgICAgIGlmKCBrID4gMCApIHsKQEAgLTE5MiwxNyArMjEy
LDEzIEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAoCiAgICAgICAgICAgICBs
b2dfZW5lcmd5X3ByZXYgPSBsb2dfZW5lcmd5OwogICAgICAgICAgICAgcGl0Y2hfcmVzX3B0ciAr
PSBuU2FtcGxlczsKICAgICAgICAgfQotICAgICAgICBwc0VuY0N0cmwtPnNwYXJzZW5lc3MgPSBz
aWxrX3NpZ21vaWQoIDAuNGYgKiAoIGVuZXJneV92YXJpYXRpb24gLSA1LjBmICkgKTsKIAogICAg
ICAgICAvKiBTZXQgcXVhbnRpemF0aW9uIG9mZnNldCBkZXBlbmRpbmcgb24gc3BhcnNlbmVzcyBt
ZWFzdXJlICovCi0gICAgICAgIGlmKCBwc0VuY0N0cmwtPnNwYXJzZW5lc3MgPiBTUEFSU0VORVNT
X1RIUkVTSE9MRF9RTlRfT0ZGU0VUICkgeworICAgICAgICBpZiggZW5lcmd5X3ZhcmlhdGlvbiA+
IEVORVJHWV9WQVJJQVRJT05fVEhSRVNIT0xEX1FOVF9PRkZTRVQgKiAoblNlZ3MtMSkgKSB7CiAg
ICAgICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2VzLnF1YW50T2Zmc2V0VHlwZSA9IDA7CiAgICAg
ICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwc0VuYy0+c0Ntbi5pbmRpY2VzLnF1YW50T2Zmc2V0
VHlwZSA9IDE7CiAgICAgICAgIH0KLQotICAgICAgICAvKiBJbmNyZWFzZSBjb2RpbmcgU05SIGZv
ciBzcGFyc2Ugc2lnbmFscyAqLwotICAgICAgICBTTlJfYWRqX2RCICs9IFNQQVJTRV9TTlJfSU5D
Ul9kQiAqICggcHNFbmNDdHJsLT5zcGFyc2VuZXNzIC0gMC41ZiApOwogICAgIH0KIAogICAgIC8q
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtMjEwLDE5ICsyMjYsMTAgQEAgdm9p
ZCBzaWxrX25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUCgKICAgICAvKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KICAgICAvKiBNb3JlIEJXRSBmb3Igc2lnbmFscyB3aXRoIGhpZ2ggcHJl
ZGljdGlvbiBnYWluICovCiAgICAgc3RyZW5ndGggPSBGSU5EX1BJVENIX1dISVRFX05PSVNFX0ZS
QUNUSU9OICogcHNFbmNDdHJsLT5wcmVkR2FpbjsgICAgICAgICAgIC8qIGJldHdlZW4gMC4wIGFu
ZCAxLjAgKi8KLSAgICBCV0V4cDEgPSBCV0V4cDIgPSBCQU5EV0lEVEhfRVhQQU5TSU9OIC8gKCAx
LjBmICsgc3RyZW5ndGggKiBzdHJlbmd0aCApOwotICAgIGRlbHRhICA9IExPV19SQVRFX0JBTkRX
SURUSF9FWFBBTlNJT05fREVMVEEgKiAoIDEuMGYgLSAwLjc1ZiAqIHBzRW5jQ3RybC0+Y29kaW5n
X3F1YWxpdHkgKTsKLSAgICBCV0V4cDEgLT0gZGVsdGE7Ci0gICAgQldFeHAyICs9IGRlbHRhOwot
ICAgIC8qIEJXRXhwMSB3aWxsIGJlIGFwcGxpZWQgYWZ0ZXIgQldFeHAyLCBzbyBtYWtlIGl0IHJl
bGF0aXZlICovCi0gICAgQldFeHAxIC89IEJXRXhwMjsKLQotICAgIGlmKCBwc0VuYy0+c0Ntbi53
YXJwaW5nX1ExNiA+IDAgKSB7Ci0gICAgICAgIC8qIFNsaWdodGx5IG1vcmUgd2FycGluZyBpbiBh
bmFseXNpcyB3aWxsIG1vdmUgcXVhbnRpemF0aW9uIG5vaXNlIHVwIGluIGZyZXF1ZW5jeSwgd2hl
cmUgaXQncyBiZXR0ZXIgbWFza2VkICovCi0gICAgICAgIHdhcnBpbmcgPSAoc2lsa19mbG9hdClw
c0VuYy0+c0Ntbi53YXJwaW5nX1ExNiAvIDY1NTM2LjBmICsgMC4wMWYgKiBwc0VuY0N0cmwtPmNv
ZGluZ19xdWFsaXR5OwotICAgIH0gZWxzZSB7Ci0gICAgICAgIHdhcnBpbmcgPSAwLjBmOwotICAg
IH0KKyAgICBCV0V4cCA9IEJBTkRXSURUSF9FWFBBTlNJT04gLyAoIDEuMGYgKyBzdHJlbmd0aCAq
IHN0cmVuZ3RoICk7CisKKyAgICAvKiBTbGlnaHRseSBtb3JlIHdhcnBpbmcgaW4gYW5hbHlzaXMg
d2lsbCBtb3ZlIHF1YW50aXphdGlvbiBub2lzZSB1cCBpbiBmcmVxdWVuY3ksIHdoZXJlIGl0J3Mg
YmV0dGVyIG1hc2tlZCAqLworICAgIHdhcnBpbmcgPSAoc2lsa19mbG9hdClwc0VuYy0+c0Ntbi53
YXJwaW5nX1ExNiAvIDY1NTM2LjBmICsgMC4wMWYgKiBwc0VuY0N0cmwtPmNvZGluZ19xdWFsaXR5
OwogCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwog
ICAgIC8qIENvbXB1dGUgbm9pc2Ugc2hhcGluZyBBUiBjb2VmcyBhbmQgZ2FpbnMgKi8KQEAgLTI1
MiwzNyArMjU5LDI4IEBAIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9hbmFseXNpc19GTFAoCiAgICAg
ICAgIH0KIAogICAgICAgICAvKiBBZGQgd2hpdGUgbm9pc2UsIGFzIGEgZnJhY3Rpb24gb2YgZW5l
cmd5ICovCi0gICAgICAgIGF1dG9fY29yclsgMCBdICs9IGF1dG9fY29yclsgMCBdICogU0hBUEVf
V0hJVEVfTk9JU0VfRlJBQ1RJT047CisgICAgICAgIGF1dG9fY29yclsgMCBdICs9IGF1dG9fY29y
clsgMCBdICogU0hBUEVfV0hJVEVfTk9JU0VfRlJBQ1RJT04gKyAxLjBmOwogCiAgICAgICAgIC8q
IENvbnZlcnQgY29ycmVsYXRpb25zIHRvIHByZWRpY3Rpb24gY29lZmZpY2llbnRzLCBhbmQgY29t
cHV0ZSByZXNpZHVhbCBlbmVyZ3kgKi8KLSAgICAgICAgbnJnID0gc2lsa19sZXZpbnNvbmR1cmJp
bl9GTFAoICZwc0VuY0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgYXV0b19j
b3JyLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAgbnJnID0gc2lsa19z
Y2h1cl9GTFAoIHJjLCBhdXRvX2NvcnIsIHBzRW5jLT5zQ21uLnNoYXBpbmdMUENPcmRlciApOwor
ICAgICAgICBzaWxrX2syYV9GTFAoICZwc0VuY0N0cmwtPkFSWyBrICogTUFYX1NIQVBFX0xQQ19P
UkRFUiBdLCByYywgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CiAgICAgICAgIHBzRW5j
Q3RybC0+R2FpbnNbIGsgXSA9ICggc2lsa19mbG9hdCApc3FydCggbnJnICk7CiAKICAgICAgICAg
aWYoIHBzRW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKICAgICAgICAgICAgIC8qIEFkanVz
dCBnYWluIGZvciB3YXJwaW5nICovCi0gICAgICAgICAgICBwc0VuY0N0cmwtPkdhaW5zWyBrIF0g
Kj0gd2FycGVkX2dhaW4oICZwc0VuY0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIg
XSwgd2FycGluZywgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7CisgICAgICAgICAgICBw
c0VuY0N0cmwtPkdhaW5zWyBrIF0gKj0gd2FycGVkX2dhaW4oICZwc0VuY0N0cmwtPkFSWyBrICog
TUFYX1NIQVBFX0xQQ19PUkRFUiBdLCB3YXJwaW5nLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3Jk
ZXIgKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIEJhbmR3aWR0aCBleHBhbnNpb24gZm9yIHN5
bnRoZXNpcyBmaWx0ZXIgc2hhcGluZyAqLwotICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfRkxQKCAm
cHNFbmNDdHJsLT5BUjJbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sIHBzRW5jLT5zQ21uLnNo
YXBpbmdMUENPcmRlciwgQldFeHAyICk7Ci0KLSAgICAgICAgLyogQ29tcHV0ZSBub2lzZSBzaGFw
aW5nIGZpbHRlciBjb2VmZmljaWVudHMgKi8KLSAgICAgICAgc2lsa19tZW1jcHkoCi0gICAgICAg
ICAgICAmcHNFbmNDdHJsLT5BUjFbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sCi0gICAgICAg
ICAgICAmcHNFbmNDdHJsLT5BUjJbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sCi0gICAgICAg
ICAgICBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKiBzaXplb2YoIHNpbGtfZmxvYXQgKSAp
OworICAgICAgICBzaWxrX2J3ZXhwYW5kZXJfRkxQKCAmcHNFbmNDdHJsLT5BUlsgayAqIE1BWF9T
SEFQRV9MUENfT1JERVIgXSwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBCV0V4cCApOwog
Ci0gICAgICAgIC8qIEJhbmR3aWR0aCBleHBhbnNpb24gZm9yIGFuYWx5c2lzIGZpbHRlciBzaGFw
aW5nICovCi0gICAgICAgIHNpbGtfYndleHBhbmRlcl9GTFAoICZwc0VuY0N0cmwtPkFSMVsgayAq
IE1BWF9TSEFQRV9MUENfT1JERVIgXSwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyLCBCV0V4
cDEgKTsKLQotICAgICAgICAvKiBSYXRpbyBvZiBwcmVkaWN0aW9uIGdhaW5zLCBpbiBlbmVyZ3kg
ZG9tYWluICovCi0gICAgICAgIHByZV9ucmcgPSBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2Fpbl9G
TFAoICZwc0VuY0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgcHNFbmMtPnND
bW4uc2hhcGluZ0xQQ09yZGVyICk7Ci0gICAgICAgIG5yZyAgICAgPSBzaWxrX0xQQ19pbnZlcnNl
X3ByZWRfZ2Fpbl9GTFAoICZwc0VuY0N0cmwtPkFSMVsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIg
XSwgcHNFbmMtPnNDbW4uc2hhcGluZ0xQQ09yZGVyICk7Ci0gICAgICAgIHBzRW5jQ3RybC0+R2Fp
bnNQcmVbIGsgXSA9IDEuMGYgLSAwLjdmICogKCAxLjBmIC0gcHJlX25yZyAvIG5yZyApOwotCi0g
ICAgICAgIC8qIENvbnZlcnQgdG8gbW9uaWMgd2FycGVkIHByZWRpY3Rpb24gY29lZmZpY2llbnRz
IGFuZCBsaW1pdCBhYnNvbHV0ZSB2YWx1ZXMgKi8KLSAgICAgICAgd2FycGVkX3RydWUybW9uaWNf
Y29lZnMoICZwc0VuY0N0cmwtPkFSMlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgJnBzRW5j
Q3RybC0+QVIxWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLAotICAgICAgICAgICAgd2FycGlu
ZywgMy45OTlmLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAgaWYoIHBz
RW5jLT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKKyAgICAgICAgICAgIC8qIENvbnZlcnQgdG8g
bW9uaWMgd2FycGVkIHByZWRpY3Rpb24gY29lZmZpY2llbnRzIGFuZCBsaW1pdCBhYnNvbHV0ZSB2
YWx1ZXMgKi8KKyAgICAgICAgICAgIHdhcnBlZF90cnVlMm1vbmljX2NvZWZzKCAmcHNFbmNDdHJs
LT5BUlsgayAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwgd2FycGluZywgMy45OTlmLCBwc0VuYy0+
c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIC8q
IExpbWl0IGFic29sdXRlIHZhbHVlcyAqLworICAgICAgICAgICAgbGltaXRfY29lZnMoICZwc0Vu
Y0N0cmwtPkFSWyBrICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdLCAzLjk5OWYsIHBzRW5jLT5zQ21u
LnNoYXBpbmdMUENPcmRlciApOworICAgICAgICB9CiAgICAgfQogCiAgICAgLyoqKioqKioqKioq
KioqKioqLwpAQCAtMjk2LDExICsyOTQsNiBAQCB2b2lkIHNpbGtfbm9pc2Vfc2hhcGVfYW5hbHlz
aXNfRkxQKAogICAgICAgICBwc0VuY0N0cmwtPkdhaW5zWyBrIF0gKz0gZ2Fpbl9hZGQ7CiAgICAg
fQogCi0gICAgZ2Fpbl9tdWx0ID0gMS4wZiArIElOUFVUX1RJTFQgKyBwc0VuY0N0cmwtPmNvZGlu
Z19xdWFsaXR5ICogSElHSF9SQVRFX0lOUFVUX1RJTFQ7Ci0gICAgZm9yKCBrID0gMDsgayA8IHBz
RW5jLT5zQ21uLm5iX3N1YmZyOyBrKysgKSB7Ci0gICAgICAgIHBzRW5jQ3RybC0+R2FpbnNQcmVb
IGsgXSAqPSBnYWluX211bHQ7Ci0gICAgfQotCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICAvKiBDb250cm9sIGxvdy1mcmVxdWVuY3kg
c2hhcGluZyBhbmQgbm9pc2UgdGlsdCAqLwogICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0zMzEsMTIgKzMyNCw2IEBAIHZvaWQgc2lsa19u
b2lzZV9zaGFwZV9hbmFseXNpc19GTFAoCiAgICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioq
KiovCiAgICAgLyogSEFSTU9OSUMgU0hBUElORyBDT05UUk9MICovCiAgICAgLyoqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCi0gICAgLyogQ29udHJvbCBib29zdGluZyBvZiBoYXJtb25pYyBm
cmVxdWVuY2llcyAqLwotICAgIEhhcm1Cb29zdCA9IExPV19SQVRFX0hBUk1PTklDX0JPT1NUICog
KCAxLjBmIC0gcHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eSApICogcHNFbmMtPkxUUENvcnI7Ci0K
LSAgICAvKiBNb3JlIGhhcm1vbmljIGJvb3N0IGZvciBub2lzeSBpbnB1dCBzaWduYWxzICovCi0g
ICAgSGFybUJvb3N0ICs9IExPV19JTlBVVF9RVUFMSVRZX0hBUk1PTklDX0JPT1NUICogKCAxLjBm
IC0gcHNFbmNDdHJsLT5pbnB1dF9xdWFsaXR5ICk7Ci0KICAgICBpZiggVVNFX0hBUk1fU0hBUElO
RyAmJiBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPT0gVFlQRV9WT0lDRUQgKSB7CiAg
ICAgICAgIC8qIEhhcm1vbmljIG5vaXNlIHNoYXBpbmcgKi8KICAgICAgICAgSGFybVNoYXBlR2Fp
biA9IEhBUk1PTklDX1NIQVBJTkc7CkBAIC0zNTUsOCArMzQyLDYgQEAgdm9pZCBzaWxrX25vaXNl
X3NoYXBlX2FuYWx5c2lzX0ZMUCgKICAgICAvKiBTbW9vdGggb3ZlciBzdWJmcmFtZXMgKi8KICAg
ICAvKioqKioqKioqKioqKioqKioqKioqKioqKi8KICAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmMt
PnNDbW4ubmJfc3ViZnI7IGsrKyApIHsKLSAgICAgICAgcHNTaGFwZVN0LT5IYXJtQm9vc3Rfc210
aCAgICAgKz0gU1VCRlJfU01USF9DT0VGICogKCBIYXJtQm9vc3QgLSBwc1NoYXBlU3QtPkhhcm1C
b29zdF9zbXRoICk7Ci0gICAgICAgIHBzRW5jQ3RybC0+SGFybUJvb3N0WyBrIF0gICAgICA9IHBz
U2hhcGVTdC0+SGFybUJvb3N0X3NtdGg7CiAgICAgICAgIHBzU2hhcGVTdC0+SGFybVNoYXBlR2Fp
bl9zbXRoICs9IFNVQkZSX1NNVEhfQ09FRiAqICggSGFybVNoYXBlR2FpbiAtIHBzU2hhcGVTdC0+
SGFybVNoYXBlR2Fpbl9zbXRoICk7CiAgICAgICAgIHBzRW5jQ3RybC0+SGFybVNoYXBlR2Fpblsg
ayBdICA9IHBzU2hhcGVTdC0+SGFybVNoYXBlR2Fpbl9zbXRoOwogICAgICAgICBwc1NoYXBlU3Qt
PlRpbHRfc210aCAgICAgICAgICArPSBTVUJGUl9TTVRIX0NPRUYgKiAoIFRpbHQgLSBwc1NoYXBl
U3QtPlRpbHRfc210aCApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3BpdGNoX2FuYWx5c2lzX2Nv
cmVfRkxQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZmxvYXQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYwppbmRleCBkMGU2
MzdhMjlkYzk1ZDVlNjNhZGUxNGQ5OGY5ZTNmNGNlN2UwYmQ4Li5iMzcxNjkzNzhiMWY1MjU2NjBm
Y2NlZjY1ZjhhMmZiNDMxZWNjODA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcGl0Y2hfYW5hbHlz
aXNfY29yZV9GTFAuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYwpA
QCAtMTU5LDcgKzE1OSw3IEBAIG9wdXNfaW50IHNpbGtfcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAo
ICAgICAgLyogTyAgICBWb2ljaW5nIGVzdGltYXRlOiAwIHZvaWNlZCwKIAogICAgIC8qIExvdy1w
YXNzIGZpbHRlciAqLwogICAgIGZvciggaSA9IGZyYW1lX2xlbmd0aF80a0h6IC0gMTsgaSA+IDA7
IGktLSApIHsKLSAgICAgICAgZnJhbWVfNGtIelsgaSBdICs9IGZyYW1lXzRrSHpbIGkgLSAxIF07
CisgICAgICAgIGZyYW1lXzRrSHpbIGkgXSA9IHNpbGtfQUREX1NBVDE2KCBmcmFtZV80a0h6WyBp
IF0sIGZyYW1lXzRrSHpbIGkgLSAxIF0gKTsKICAgICB9CiAKICAgICAvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcHJlZmlsdGVyX0ZMUC5jIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0
L3ByZWZpbHRlcl9GTFAuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGJjMzJmYjQx
MDQwZWY3YjRmMGYxMjI0Njg5YmIwYjA0NDhlYzA1MC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvcHJlZmlsdGVyX0ZMUC5jCisrKyAvZGV2
L251bGwKQEAgLTEsMjA2ICswLDAgQEAKLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotQ29weXJpZ2h0IChjKSAy
MDA2LTIwMTEsIFNreXBlIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi1SZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LW1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotYXJlIG1ldDoKLS0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAotdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLS0gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLW5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKLWRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCi0tIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZXJuZXQgU29jaWV0eSwg
SUVURiBvciBJRVRGIFRydXN0LCBub3IgdGhlCi1uYW1lcyBvZiBzcGVjaWZpYyBjb250cmlidXRv
cnMsIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZQotcHJvZHVjdHMgZGVyaXZlZCBm
cm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuCi1wZXJtaXNz
aW9uLgotVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCi1BTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi1JTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRQotQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFCi1MSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi1DT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCi1JTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgotQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLUFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
Ci1QT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotCi0jaWZkZWYg
SEFWRV9DT05GSUdfSAotI2luY2x1ZGUgImNvbmZpZy5oIgotI2VuZGlmCi0KLSNpbmNsdWRlICJt
YWluX0ZMUC5oIgotI2luY2x1ZGUgInR1bmluZ19wYXJhbWV0ZXJzLmgiCi0KLS8qCi0qIFByZWZp
bHRlciBmb3IgZmluZGluZyBRdWFudGl6ZXIgaW5wdXQgc2lnbmFsCi0qLwotc3RhdGljIE9QVVNf
SU5MSU5FIHZvaWQgc2lsa19wcmVmaWx0X0ZMUCgKLSAgICBzaWxrX3ByZWZpbHRlcl9zdGF0ZV9G
TFAgICAgKlAsICAgICAgICAgICAgICAgICAvKiBJL08gc3RhdGUgKi8KLSAgICBzaWxrX2Zsb2F0
ICAgICAgICAgICAgICAgICAgc3RfcmVzW10sICAgICAgICAgICAvKiBJICovCi0gICAgc2lsa19m
bG9hdCAgICAgICAgICAgICAgICAgIHh3W10sICAgICAgICAgICAgICAgLyogTyAqLwotICAgIHNp
bGtfZmxvYXQgICAgICAgICAgICAgICAgICAqSGFybVNoYXBlRklSLCAgICAgIC8qIEkgKi8KLSAg
ICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgVGlsdCwgICAgICAgICAgICAgICAvKiBJICov
Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIExGX01BX3NocCwgICAgICAgICAgLyog
SSAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBMRl9BUl9zaHAsICAgICAgICAg
IC8qIEkgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbGFnLCAgICAgICAgICAg
ICAgICAvKiBJICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0aCAgICAg
ICAgICAgICAgLyogSSAqLwotKTsKLQotc3RhdGljIHZvaWQgc2lsa193YXJwZWRfTFBDX2FuYWx5
c2lzX2ZpbHRlcl9GTFAoCi0gICAgICAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgc3Rh
dGVbXSwgICAgICAgICAgICAvKiBJL08gIFN0YXRlIFtvcmRlciArIDFdICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgICAgICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgIHJlc1tdLCAg
ICAgICAgICAgICAgLyogTyAgICBSZXNpZHVhbCBzaWduYWwgW2xlbmd0aF0gICAgICAgICAgICAg
ICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICBjb2VmW10sICAgICAg
ICAgICAgIC8qIEkgICAgQ29lZmZpY2llbnRzIFtvcmRlcl0gICAgICAgICAgICAgICAgICAgICov
Ci0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgaW5wdXRbXSwgICAgICAgICAg
ICAvKiBJICAgIElucHV0IHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICAgICAgICAqLwotICAg
IGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgIGxhbWJkYSwgICAgICAgICAgICAgLyog
SSAgICBXYXJwaW5nIGZhY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgICAgICAgICBsZW5ndGgsICAgICAgICAgICAgIC8qIEkgICAg
TGVuZ3RoIG9mIGlucHV0IHNpZ25hbCAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgICAgICAgb3JkZXIgICAgICAgICAgICAgICAvKiBJICAgIEZpbHRl
ciBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIG9wdXNfaW50
ICAgICBuLCBpOwotICAgIHNpbGtfZmxvYXQgICBhY2MsIHRtcDEsIHRtcDI7Ci0KLSAgICAvKiBP
cmRlciBtdXN0IGJlIGV2ZW4gKi8KLSAgICBzaWxrX2Fzc2VydCggKCBvcmRlciAmIDEgKSA9PSAw
ICk7Ci0KLSAgICBmb3IoIG4gPSAwOyBuIDwgbGVuZ3RoOyBuKysgKSB7Ci0gICAgICAgIC8qIE91
dHB1dCBvZiBsb3dwYXNzIHNlY3Rpb24gKi8KLSAgICAgICAgdG1wMiA9IHN0YXRlWyAwIF0gKyBs
YW1iZGEgKiBzdGF0ZVsgMSBdOwotICAgICAgICBzdGF0ZVsgMCBdID0gaW5wdXRbIG4gXTsKLSAg
ICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlvbiAqLwotICAgICAgICB0bXAxID0gc3Rh
dGVbIDEgXSArIGxhbWJkYSAqICggc3RhdGVbIDIgXSAtIHRtcDIgKTsKLSAgICAgICAgc3RhdGVb
IDEgXSA9IHRtcDI7Ci0gICAgICAgIGFjYyA9IGNvZWZbIDAgXSAqIHRtcDI7Ci0gICAgICAgIC8q
IExvb3Agb3ZlciBhbGxwYXNzIHNlY3Rpb25zICovCi0gICAgICAgIGZvciggaSA9IDI7IGkgPCBv
cmRlcjsgaSArPSAyICkgewotICAgICAgICAgICAgLyogT3V0cHV0IG9mIGFsbHBhc3Mgc2VjdGlv
biAqLwotICAgICAgICAgICAgdG1wMiA9IHN0YXRlWyBpIF0gKyBsYW1iZGEgKiAoIHN0YXRlWyBp
ICsgMSBdIC0gdG1wMSApOwotICAgICAgICAgICAgc3RhdGVbIGkgXSA9IHRtcDE7Ci0gICAgICAg
ICAgICBhY2MgKz0gY29lZlsgaSAtIDEgXSAqIHRtcDE7Ci0gICAgICAgICAgICAvKiBPdXRwdXQg
b2YgYWxscGFzcyBzZWN0aW9uICovCi0gICAgICAgICAgICB0bXAxID0gc3RhdGVbIGkgKyAxIF0g
KyBsYW1iZGEgKiAoIHN0YXRlWyBpICsgMiBdIC0gdG1wMiApOwotICAgICAgICAgICAgc3RhdGVb
IGkgKyAxIF0gPSB0bXAyOwotICAgICAgICAgICAgYWNjICs9IGNvZWZbIGkgXSAqIHRtcDI7Ci0g
ICAgICAgIH0KLSAgICAgICAgc3RhdGVbIG9yZGVyIF0gPSB0bXAxOwotICAgICAgICBhY2MgKz0g
Y29lZlsgb3JkZXIgLSAxIF0gKiB0bXAxOwotICAgICAgICByZXNbIG4gXSA9IGlucHV0WyBuIF0g
LSBhY2M7Ci0gICAgfQotfQotCi0vKgotKiBzaWxrX3ByZWZpbHRlci4gTWFpbiBwcmVmaWx0ZXIg
ZnVuY3Rpb24KLSovCi12b2lkIHNpbGtfcHJlZmlsdGVyX0ZMUCgKLSAgICBzaWxrX2VuY29kZXJf
c3RhdGVfRkxQICAgICAgICAgICpwc0VuYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgRW5jb2RlciBzdGF0ZSBGTFAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IGNvbnN0IHNpbGtfZW5jb2Rlcl9jb250cm9sX0ZMUCAgKnBzRW5jQ3RybCwgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIGNvbnRyb2wgRkxQICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICB4d1tdLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFdlaWdodGVkIHNpZ25hbCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAg
ICAgIHhbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgU3BlZWNoIHNp
Z25hbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotKQotewotICAgIHNpbGtfcHJl
ZmlsdGVyX3N0YXRlX0ZMUCAqUCA9ICZwc0VuYy0+c1ByZWZpbHQ7Ci0gICAgb3B1c19pbnQgICBq
LCBrLCBsYWc7Ci0gICAgc2lsa19mbG9hdCBIYXJtU2hhcGVHYWluLCBUaWx0LCBMRl9NQV9zaHAs
IExGX0FSX3NocDsKLSAgICBzaWxrX2Zsb2F0IEJbIDIgXTsKLSAgICBjb25zdCBzaWxrX2Zsb2F0
ICpBUjFfc2hwOwotICAgIGNvbnN0IHNpbGtfZmxvYXQgKnB4OwotICAgIHNpbGtfZmxvYXQgKnB4
dzsKLSAgICBzaWxrX2Zsb2F0IEhhcm1TaGFwZUZJUlsgMyBdOwotICAgIHNpbGtfZmxvYXQgc3Rf
cmVzWyBNQVhfU1VCX0ZSQU1FX0xFTkdUSCArIE1BWF9MUENfT1JERVIgXTsKLQotICAgIC8qIFNl
dCB1cCBwb2ludGVycyAqLwotICAgIHB4ICA9IHg7Ci0gICAgcHh3ID0geHc7Ci0gICAgbGFnID0g
UC0+bGFnUHJldjsKLSAgICBmb3IoIGsgPSAwOyBrIDwgcHNFbmMtPnNDbW4ubmJfc3ViZnI7IGsr
KyApIHsKLSAgICAgICAgLyogVXBkYXRlIFZhcmlhYmxlcyB0aGF0IGNoYW5nZSBwZXIgc3ViIGZy
YW1lICovCi0gICAgICAgIGlmKCBwc0VuYy0+c0Ntbi5pbmRpY2VzLnNpZ25hbFR5cGUgPT0gVFlQ
RV9WT0lDRUQgKSB7Ci0gICAgICAgICAgICBsYWcgPSBwc0VuY0N0cmwtPnBpdGNoTFsgayBdOwot
ICAgICAgICB9Ci0KLSAgICAgICAgLyogTm9pc2Ugc2hhcGUgcGFyYW1ldGVycyAqLwotICAgICAg
ICBIYXJtU2hhcGVHYWluID0gcHNFbmNDdHJsLT5IYXJtU2hhcGVHYWluWyBrIF0gKiAoIDEuMGYg
LSBwc0VuY0N0cmwtPkhhcm1Cb29zdFsgayBdICk7Ci0gICAgICAgIEhhcm1TaGFwZUZJUlsgMCBd
ID0gMC4yNWYgICAgICAgICAgICAgICAqIEhhcm1TaGFwZUdhaW47Ci0gICAgICAgIEhhcm1TaGFw
ZUZJUlsgMSBdID0gMzI3NjcuMGYgLyA2NTUzNi4wZiAqIEhhcm1TaGFwZUdhaW47Ci0gICAgICAg
IEhhcm1TaGFwZUZJUlsgMiBdID0gMC4yNWYgICAgICAgICAgICAgICAqIEhhcm1TaGFwZUdhaW47
Ci0gICAgICAgIFRpbHQgICAgICA9ICBwc0VuY0N0cmwtPlRpbHRbIGsgXTsKLSAgICAgICAgTEZf
TUFfc2hwID0gIHBzRW5jQ3RybC0+TEZfTUFfc2hwWyBrIF07Ci0gICAgICAgIExGX0FSX3NocCA9
ICBwc0VuY0N0cmwtPkxGX0FSX3NocFsgayBdOwotICAgICAgICBBUjFfc2hwICAgPSAmcHNFbmND
dHJsLT5BUjFbIGsgKiBNQVhfU0hBUEVfTFBDX09SREVSIF07Ci0KLSAgICAgICAgLyogU2hvcnQg
dGVybSBGSVIgZmlsdGVyaW5nICovCi0gICAgICAgIHNpbGtfd2FycGVkX0xQQ19hbmFseXNpc19m
aWx0ZXJfRkxQKCBQLT5zQVJfc2hwLCBzdF9yZXMsIEFSMV9zaHAsIHB4LAotICAgICAgICAgICAg
KHNpbGtfZmxvYXQpcHNFbmMtPnNDbW4ud2FycGluZ19RMTYgLyA2NTUzNi4wZiwgcHNFbmMtPnND
bW4uc3ViZnJfbGVuZ3RoLCBwc0VuYy0+c0Ntbi5zaGFwaW5nTFBDT3JkZXIgKTsKLQotICAgICAg
ICAvKiBSZWR1Y2UgKG1haW5seSkgbG93IGZyZXF1ZW5jaWVzIGR1cmluZyBoYXJtb25pYyBlbXBo
YXNpcyAqLwotICAgICAgICBCWyAwIF0gPSAgcHNFbmNDdHJsLT5HYWluc1ByZVsgayBdOwotICAg
ICAgICBCWyAxIF0gPSAtcHNFbmNDdHJsLT5HYWluc1ByZVsgayBdICoKLSAgICAgICAgICAgICgg
cHNFbmNDdHJsLT5IYXJtQm9vc3RbIGsgXSAqIEhhcm1TaGFwZUdhaW4gKyBJTlBVVF9USUxUICsg
cHNFbmNDdHJsLT5jb2RpbmdfcXVhbGl0eSAqIEhJR0hfUkFURV9JTlBVVF9USUxUICk7Ci0gICAg
ICAgIHB4d1sgMCBdID0gQlsgMCBdICogc3RfcmVzWyAwIF0gKyBCWyAxIF0gKiBQLT5zSGFybUhQ
OwotICAgICAgICBmb3IoIGogPSAxOyBqIDwgcHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoOyBqKysg
KSB7Ci0gICAgICAgICAgICBweHdbIGogXSA9IEJbIDAgXSAqIHN0X3Jlc1sgaiBdICsgQlsgMSBd
ICogc3RfcmVzWyBqIC0gMSBdOwotICAgICAgICB9Ci0gICAgICAgIFAtPnNIYXJtSFAgPSBzdF9y
ZXNbIHBzRW5jLT5zQ21uLnN1YmZyX2xlbmd0aCAtIDEgXTsKLQotICAgICAgICBzaWxrX3ByZWZp
bHRfRkxQKCBQLCBweHcsIHB4dywgSGFybVNoYXBlRklSLCBUaWx0LCBMRl9NQV9zaHAsIExGX0FS
X3NocCwgbGFnLCBwc0VuYy0+c0Ntbi5zdWJmcl9sZW5ndGggKTsKLQotICAgICAgICBweCAgKz0g
cHNFbmMtPnNDbW4uc3ViZnJfbGVuZ3RoOwotICAgICAgICBweHcgKz0gcHNFbmMtPnNDbW4uc3Vi
ZnJfbGVuZ3RoOwotICAgIH0KLSAgICBQLT5sYWdQcmV2ID0gcHNFbmNDdHJsLT5waXRjaExbIHBz
RW5jLT5zQ21uLm5iX3N1YmZyIC0gMSBdOwotfQotCi0vKgotKiBQcmVmaWx0ZXIgZm9yIGZpbmRp
bmcgUXVhbnRpemVyIGlucHV0IHNpZ25hbAotKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNp
bGtfcHJlZmlsdF9GTFAoCi0gICAgc2lsa19wcmVmaWx0ZXJfc3RhdGVfRkxQICAgICpQLCAgICAg
ICAgICAgICAgICAgLyogSS9PIHN0YXRlICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAg
ICAgIHN0X3Jlc1tdLCAgICAgICAgICAgLyogSSAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAg
ICAgICAgICB4d1tdLCAgICAgICAgICAgICAgIC8qIE8gKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAg
ICAgICAgICAgICAgKkhhcm1TaGFwZUZJUiwgICAgICAvKiBJICovCi0gICAgc2lsa19mbG9hdCAg
ICAgICAgICAgICAgICAgIFRpbHQsICAgICAgICAgICAgICAgLyogSSAqLwotICAgIHNpbGtfZmxv
YXQgICAgICAgICAgICAgICAgICBMRl9NQV9zaHAsICAgICAgICAgIC8qIEkgKi8KLSAgICBzaWxr
X2Zsb2F0ICAgICAgICAgICAgICAgICAgTEZfQVJfc2hwLCAgICAgICAgICAvKiBJICovCi0gICAg
b3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxhZywgICAgICAgICAgICAgICAgLyogSSAqLwot
ICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsZW5ndGggICAgICAgICAgICAgIC8qIEkg
Ki8KLSkKLXsKLSAgICBvcHVzX2ludCAgIGk7Ci0gICAgb3B1c19pbnQgICBpZHgsIExUUF9zaHBf
YnVmX2lkeDsKLSAgICBzaWxrX2Zsb2F0IG5fVGlsdCwgbl9MRiwgbl9MVFA7Ci0gICAgc2lsa19m
bG9hdCBzTEZfQVJfc2hwLCBzTEZfTUFfc2hwOwotICAgIHNpbGtfZmxvYXQgKkxUUF9zaHBfYnVm
OwotCi0gICAgLyogVG8gc3BlZWQgdXAgdXNlIHRlbXAgdmFyaWFibGVzIGluc3RlYWQgb2YgdXNp
bmcgdGhlIHN0cnVjdCAqLwotICAgIExUUF9zaHBfYnVmICAgICA9IFAtPnNMVFBfc2hwOwotICAg
IExUUF9zaHBfYnVmX2lkeCA9IFAtPnNMVFBfc2hwX2J1Zl9pZHg7Ci0gICAgc0xGX0FSX3NocCAg
ICAgID0gUC0+c0xGX0FSX3NocDsKLSAgICBzTEZfTUFfc2hwICAgICAgPSBQLT5zTEZfTUFfc2hw
OwotCi0gICAgZm9yKCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrICkgewotICAgICAgICBpZiggbGFn
ID4gMCApIHsKLSAgICAgICAgICAgIHNpbGtfYXNzZXJ0KCBIQVJNX1NIQVBFX0ZJUl9UQVBTID09
IDMgKTsKLSAgICAgICAgICAgIGlkeCA9IGxhZyArIExUUF9zaHBfYnVmX2lkeDsKLSAgICAgICAg
ICAgIG5fTFRQICA9IExUUF9zaHBfYnVmWyAoIGlkeCAtIEhBUk1fU0hBUEVfRklSX1RBUFMgLyAy
IC0gMSkgJiBMVFBfTUFTSyBdICogSGFybVNoYXBlRklSWyAwIF07Ci0gICAgICAgICAgICBuX0xU
UCArPSBMVFBfc2hwX2J1ZlsgKCBpZHggLSBIQVJNX1NIQVBFX0ZJUl9UQVBTIC8gMiAgICApICYg
TFRQX01BU0sgXSAqIEhhcm1TaGFwZUZJUlsgMSBdOwotICAgICAgICAgICAgbl9MVFAgKz0gTFRQ
X3NocF9idWZbICggaWR4IC0gSEFSTV9TSEFQRV9GSVJfVEFQUyAvIDIgKyAxKSAmIExUUF9NQVNL
IF0gKiBIYXJtU2hhcGVGSVJbIDIgXTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIG5f
TFRQID0gMDsKLSAgICAgICAgfQotCi0gICAgICAgIG5fVGlsdCA9IHNMRl9BUl9zaHAgKiBUaWx0
OwotICAgICAgICBuX0xGICAgPSBzTEZfQVJfc2hwICogTEZfQVJfc2hwICsgc0xGX01BX3NocCAq
IExGX01BX3NocDsKLQotICAgICAgICBzTEZfQVJfc2hwID0gc3RfcmVzWyBpIF0gLSBuX1RpbHQ7
Ci0gICAgICAgIHNMRl9NQV9zaHAgPSBzTEZfQVJfc2hwIC0gbl9MRjsKLQotICAgICAgICBMVFBf
c2hwX2J1Zl9pZHggPSAoIExUUF9zaHBfYnVmX2lkeCAtIDEgKSAmIExUUF9NQVNLOwotICAgICAg
ICBMVFBfc2hwX2J1ZlsgTFRQX3NocF9idWZfaWR4IF0gPSBzTEZfTUFfc2hwOwotCi0gICAgICAg
IHh3WyBpIF0gPSBzTEZfTUFfc2hwIC0gbl9MVFA7Ci0gICAgfQotICAgIC8qIENvcHkgdGVtcCB2
YXJpYWJsZSBiYWNrIHRvIHN0YXRlICovCi0gICAgUC0+c0xGX0FSX3NocCAgICAgICA9IHNMRl9B
Ul9zaHA7Ci0gICAgUC0+c0xGX01BX3NocCAgICAgICA9IHNMRl9NQV9zaHA7Ci0gICAgUC0+c0xU
UF9zaHBfYnVmX2lkeCA9IExUUF9zaHBfYnVmX2lkeDsKLX0KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9h
dC9zY2h1cl9GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9zY2h1cl9GTFAuYwppbmRleCBlZTQzNmY4MzUxYzhh
ZGYxZWUzNmZhNTA1MjYxMmNjZjQ2MmE1NWFlLi5jMWUwYmJiNTQxMWM5OTU5Y2EzZjdmNmMyOTU3
NzEzNjE3MDQ4MWRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvc2NodXJfRkxQLmMKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L2Zsb2F0L3NjaHVyX0ZMUC5jCkBAIC0zOCwyMiArMzgsMjMgQEAgc2lsa19mbG9hdCBzaWxrX3Nj
aHVyX0ZMUCggICAgICAgICAgICAgICAgICAvKiBPICAgIHJldHVybnMgcmVzaWR1YWwgZW5lcmd5
CiApCiB7CiAgICAgb3B1c19pbnQgICBrLCBuOwotICAgIHNpbGtfZmxvYXQgQ1sgU0lMS19NQVhf
T1JERVJfTFBDICsgMSBdWyAyIF07Ci0gICAgc2lsa19mbG9hdCBDdG1wMSwgQ3RtcDIsIHJjX3Rt
cDsKKyAgICBkb3VibGUgQ1sgU0lMS19NQVhfT1JERVJfTFBDICsgMSBdWyAyIF07CisgICAgZG91
YmxlIEN0bXAxLCBDdG1wMiwgcmNfdG1wOwogCi0gICAgc2lsa19hc3NlcnQoIG9yZGVyPT02fHxv
cmRlcj09OHx8b3JkZXI9PTEwfHxvcmRlcj09MTJ8fG9yZGVyPT0xNHx8b3JkZXI9PTE2ICk7Cisg
ICAgc2lsa19hc3NlcnQoIG9yZGVyID49IDAgJiYgb3JkZXIgPD0gU0lMS19NQVhfT1JERVJfTFBD
ICk7CiAKICAgICAvKiBDb3B5IGNvcnJlbGF0aW9ucyAqLwotICAgIGZvciggayA9IDA7IGsgPCBv
cmRlcisxOyBrKysgKSB7CisgICAgayA9IDA7CisgICAgZG8gewogICAgICAgICBDWyBrIF1bIDAg
XSA9IENbIGsgXVsgMSBdID0gYXV0b19jb3JyWyBrIF07Ci0gICAgfQorICAgIH0gd2hpbGUoICsr
ayA8PSBvcmRlciApOwogCiAgICAgZm9yKCBrID0gMDsgayA8IG9yZGVyOyBrKysgKSB7CiAgICAg
ICAgIC8qIEdldCByZWZsZWN0aW9uIGNvZWZmaWNpZW50ICovCiAgICAgICAgIHJjX3RtcCA9IC1D
WyBrICsgMSBdWyAwIF0gLyBzaWxrX21heF9mbG9hdCggQ1sgMCBdWyAxIF0sIDFlLTlmICk7CiAK
ICAgICAgICAgLyogU2F2ZSB0aGUgb3V0cHV0ICovCi0gICAgICAgIHJlZmxfY29lZlsgayBdID0g
cmNfdG1wOworICAgICAgICByZWZsX2NvZWZbIGsgXSA9IChzaWxrX2Zsb2F0KXJjX3RtcDsKIAog
ICAgICAgICAvKiBVcGRhdGUgY29ycmVsYXRpb25zICovCiAgICAgICAgIGZvciggbiA9IDA7IG4g
PCBvcmRlciAtIGs7IG4rKyApIHsKQEAgLTY1LDYgKzY2LDUgQEAgc2lsa19mbG9hdCBzaWxrX3Nj
aHVyX0ZMUCggICAgICAgICAgICAgICAgICAvKiBPICAgIHJldHVybnMgcmVzaWR1YWwgZW5lcmd5
CiAgICAgfQogCiAgICAgLyogUmV0dXJuIHJlc2lkdWFsIGVuZXJneSAqLwotICAgIHJldHVybiBD
WyAwIF1bIDEgXTsKKyAgICByZXR1cm4gKHNpbGtfZmxvYXQpQ1sgMCBdWyAxIF07CiB9Ci0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9mbG9hdC9zb2x2ZV9MU19GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9zb2x2ZV9MU19G
TFAuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggN2M5MGQ2NjVhMGYwZDE4YjU3M2I2
MzJhOTMyODU2MDUxMWJmMmE4MS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NpbGsvZmxvYXQvc29sdmVfTFNfRkxQLmMKKysrIC9kZXYvbnVsbApAQCAtMSwy
MDcgKzAsMCBAQAotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqCi1Db3B5cmlnaHQgKGMpIDIwMDYtMjAxMSwgU2t5
cGUgTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLVJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi1h
cmUgbWV0OgotLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCi10aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgotLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KLS0gTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlcm5ldCBTb2NpZXR5LCBJRVRGIG9yIElFVEYg
VHJ1c3QsIG5vciB0aGUKLW5hbWVzIG9mIHNwZWNpZmljIGNvbnRyaWJ1dG9ycywgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCi1wcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4KLXBlcm1pc3Npb24uCi1USElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTICJBUyBJUyIKLUFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLUlNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi1BUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklC
VVRPUlMgQkUKLUxJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKLUNPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi1TVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLUlOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCi1DT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKLVBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgotKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0KLSNpZmRlZiBIQVZFX0NPTkZJR19I
Ci0jaW5jbHVkZSAiY29uZmlnLmgiCi0jZW5kaWYKLQotI2luY2x1ZGUgIm1haW5fRkxQLmgiCi0j
aW5jbHVkZSAidHVuaW5nX3BhcmFtZXRlcnMuaCIKLQotLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAqIExETCBG
YWN0b3Jpc2F0aW9uLiBGaW5kcyB0aGUgdXBwZXIgdHJpYW5ndWxhciBtYXRyaXggTCBhbmQgdGhl
IGRpYWdvbmFsCi0gKiBNYXRyaXggRCAob25seSB0aGUgZGlhZ29uYWwgZWxlbWVudHMgcmV0dXJu
ZWQgaW4gYSB2ZWN0b3Ipc3VjaCB0aGF0Ci0gKiB0aGUgc3ltbWV0cmljIG1hdHJpYyBBIGlzIGdp
dmVuIGJ5IEEgPSBMKkQqTCcuCi0gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLXN0YXRpYyBPUFVTX0lOTElORSB2
b2lkIHNpbGtfTERMX0ZMUCgKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICpBLCAgICAgICAgIC8q
IEkvTyAgUG9pbnRlciB0byBTeW1ldHJpYyBTcXVhcmUgTWF0cml4ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBNLCAgICAgICAgICAvKiBJ
ICAgIFNpemUgb2YgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgKkwsICAgICAgICAgLyogSS9P
ICBQb2ludGVyIHRvIFNxdWFyZSBVcHBlciB0cmlhbmd1bGFyIE1hdHJpeCAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICpEaW52ICAgICAgIC8qIEkvTyAg
UG9pbnRlciB0byB2ZWN0b3IgaG9sZGluZyB0aGUgaW52ZXJzZSBkaWFnb25hbCBlbGVtZW50cyBv
ZiBEICAgICovCi0pOwotCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICogRnVuY3Rpb24gdG8gc29sdmUgbGlu
ZWFyIGVxdWF0aW9uIEF4ID0gYiwgd2hlbiBBIGlzIGEgTXhNIGxvd2VyCi0gKiB0cmlhbmd1bGFy
IG1hdHJpeCwgd2l0aCBvbmVzIG9uIHRoZSBkaWFnb25hbC4KLSAqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotc3Rh
dGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19Tb2x2ZVdpdGhMb3dlclRyaWFuZ3VsYXJXZGlhZ09u
ZXNfRkxQKAotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKkwsICAgICAgICAgLyogSSAgICBQb2lu
dGVyIHRvIExvd2VyIFRyaWFuZ3VsYXIgTWF0cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgIE0sICAgICAgICAgIC8qIEkgICAgRGltIG9m
IE1hdHJpeCBlcXVhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAgICAqYiwgICAgICAgICAvKiBJICAgIGIgVmVjdG9y
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIHNpbGtfZmxvYXQgICAgICAgICAgKnggICAgICAgICAgLyogTyAgICB4IFZlY3RvciAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
LSk7Ci0KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqCi0gKiBGdW5jdGlvbiB0byBzb2x2ZSBsaW5lYXIgZXF1YXRp
b24gKEFeVCl4ID0gYiwgd2hlbiBBIGlzIGEgTXhNIGxvd2VyCi0gKiB0cmlhbmd1bGFyLCB3aXRo
IG9uZXMgb24gdGhlIGRpYWdvbmFsLiAoaWUgdGhlbiBBXlQgaXMgdXBwZXIgdHJpYW5ndWxhcikK
LSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwotc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19Tb2x2ZVdpdGhV
cHBlclRyaWFuZ3VsYXJGcm9tTG93ZXJXZGlhZ09uZXNfRkxQKAotICAgIGNvbnN0IHNpbGtfZmxv
YXQgICAgKkwsICAgICAgICAgLyogSSAgICBQb2ludGVyIHRvIExvd2VyIFRyaWFuZ3VsYXIgTWF0
cml4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAg
ICAgIE0sICAgICAgICAgIC8qIEkgICAgRGltIG9mIE1hdHJpeCBlcXVhdGlvbiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc2lsa19mbG9hdCAg
ICAqYiwgICAgICAgICAvKiBJICAgIGIgVmVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNpbGtfZmxvYXQgICAgICAgICAg
KnggICAgICAgICAgLyogTyAgICB4IFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSk7Ci0KLS8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gKiBG
dW5jdGlvbiB0byBzb2x2ZSBsaW5lYXIgZXF1YXRpb24gQXggPSBiLCB3aGVuIEEgaXMgYSBNeE0K
LSAqIHN5bW1ldHJpYyBzcXVhcmUgbWF0cml4IC0gdXNpbmcgTERMIGZhY3RvcmlzYXRpb24KLSAq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqLwotdm9pZCBzaWxrX3NvbHZlX0xETF9GTFAoCi0gICAgc2lsa19mbG9hdCAg
ICAgICAgICAgICAgICAgICAgICAqQSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBJL08gIFN5bW1ldHJpYyBzcXVhcmUgbWF0cml4LCBvdXQ6IHJlZy4gICAgICAgICAgKi8KLSAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgICAgIE0sICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgU2l6ZSBvZiBtYXRyaXggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgKmIsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQb2ludGVyIHRvIGIgdmVjdG9yICAg
ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAg
ICAgICAqeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFBvaW50ZXIg
dG8geCBzb2x1dGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgKi8KLSkKLXsKLSAgICBvcHVzX2lu
dCAgIGk7Ci0gICAgc2lsa19mbG9hdCBMWyAgICBNQVhfTUFUUklYX1NJWkUgXVsgTUFYX01BVFJJ
WF9TSVpFIF07Ci0gICAgc2lsa19mbG9hdCBUWyAgICBNQVhfTUFUUklYX1NJWkUgXTsKLSAgICBz
aWxrX2Zsb2F0IERpbnZbIE1BWF9NQVRSSVhfU0laRSBdOyAvKiBpbnZlcnNlIGRpYWdvbmFsIGVs
ZW1lbnRzIG9mIEQqLwotCi0gICAgc2lsa19hc3NlcnQoIE0gPD0gTUFYX01BVFJJWF9TSVpFICk7
Ci0KLSAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqCi0gICAgRmFjdG9yaXplIEEgYnkgTERMIHN1Y2ggdGhhdCBBID0gTCpEKihMXlQpLAotICAg
IHdoZXJlIEwgaXMgbG93ZXIgdHJpYW5ndWxhciB3aXRoIG9uZXMgb24gZGlhZ29uYWwKLSAgICAq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotICAg
IHNpbGtfTERMX0ZMUCggQSwgTSwgJkxbIDAgXVsgMCBdLCBEaW52ICk7Ci0KLSAgICAvKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICAgICogc3Vi
c3RpdHV0ZSBEKihMXlQpID0gVC4gaWU6Ci0gICAgTCpEKihMXlQpKnggPSBiID0+IEwqVCA9IGIg
PD0+IFQgPSBpbnYoTCkqYgotICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KLSAgICBzaWxrX1NvbHZlV2l0aExvd2VyVHJpYW5ndWxhcldk
aWFnT25lc19GTFAoICZMWyAwIF1bIDAgXSwgTSwgYiwgVCApOwotCi0gICAgLyoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAgICBEKihMXlQpKngg
PSBUIDw9PiAoTF5UKSp4ID0gaW52KEQpKlQsIGJlY2F1c2UgRCBpcwotICAgIGRpYWdvbmFsIGp1
c3QgbXVsdGlwbHkgd2l0aCAxL2RfaQotICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgZm9yKCBpID0gMDsgaSA8IE07IGkrKyApIHsK
LSAgICAgICAgVFsgaSBdID0gVFsgaSBdICogRGludlsgaSBdOwotICAgIH0KLSAgICAvKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICAgIHggPSBp
bnYoTCcpICogaW52KEQpICogVAotICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqLwotICAgIHNpbGtfU29sdmVXaXRoVXBwZXJUcmlhbmd1bGFy
RnJvbUxvd2VyV2RpYWdPbmVzX0ZMUCggJkxbIDAgXVsgMCBdLCBNLCBULCB4ICk7Ci19Ci0KLXN0
YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfU29sdmVXaXRoVXBwZXJUcmlhbmd1bGFyRnJvbUxv
d2VyV2RpYWdPbmVzX0ZMUCgKLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICpMLCAgICAgICAgIC8q
IEkgICAgUG9pbnRlciB0byBMb3dlciBUcmlhbmd1bGFyIE1hdHJpeCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBNLCAgICAgICAgICAvKiBJ
ICAgIERpbSBvZiBNYXRyaXggZXF1YXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKmIsICAgICAgICAgLyogSSAg
ICBiIFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICp4ICAgICAgICAgIC8qIE8gICAg
eCBWZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICBpLCBqOwotICAgIHNpbGtfZmxvYXQgdGVt
cDsKLSAgICBjb25zdCBzaWxrX2Zsb2F0ICpwdHIxOwotCi0gICAgZm9yKCBpID0gTSAtIDE7IGkg
Pj0gMDsgaS0tICkgewotICAgICAgICBwdHIxID0gIG1hdHJpeF9hZHIoIEwsIDAsIGksIE0gKTsK
LSAgICAgICAgdGVtcCA9IDA7Ci0gICAgICAgIGZvciggaiA9IE0gLSAxOyBqID4gaSA7IGotLSAp
IHsKLSAgICAgICAgICAgIHRlbXAgKz0gcHRyMVsgaiAqIE0gXSAqIHhbIGogXTsKLSAgICAgICAg
fQotICAgICAgICB0ZW1wID0gYlsgaSBdIC0gdGVtcDsKLSAgICAgICAgeFsgaSBdID0gdGVtcDsK
LSAgICB9Ci19Ci0KLXN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNpbGtfU29sdmVXaXRoTG93ZXJU
cmlhbmd1bGFyV2RpYWdPbmVzX0ZMUCgKLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICpMLCAgICAg
ICAgIC8qIEkgICAgUG9pbnRlciB0byBMb3dlciBUcmlhbmd1bGFyIE1hdHJpeCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICBNLCAgICAgICAg
ICAvKiBJICAgIERpbSBvZiBNYXRyaXggZXF1YXRpb24gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IHNpbGtfZmxvYXQgICAgKmIsICAgICAgICAg
LyogSSAgICBiIFZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAgICAgICp4ICAgICAgICAgIC8q
IE8gICAgeCBWZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0pCi17Ci0gICAgb3B1c19pbnQgICBpLCBqOwotICAgIHNpbGtfZmxv
YXQgdGVtcDsKLSAgICBjb25zdCBzaWxrX2Zsb2F0ICpwdHIxOwotCi0gICAgZm9yKCBpID0gMDsg
aSA8IE07IGkrKyApIHsKLSAgICAgICAgcHRyMSA9ICBtYXRyaXhfYWRyKCBMLCBpLCAwLCBNICk7
Ci0gICAgICAgIHRlbXAgPSAwOwotICAgICAgICBmb3IoIGogPSAwOyBqIDwgaTsgaisrICkgewot
ICAgICAgICAgICAgdGVtcCArPSBwdHIxWyBqIF0gKiB4WyBqIF07Ci0gICAgICAgIH0KLSAgICAg
ICAgdGVtcCA9IGJbIGkgXSAtIHRlbXA7Ci0gICAgICAgIHhbIGkgXSA9IHRlbXA7Ci0gICAgfQot
fQotCi1zdGF0aWMgT1BVU19JTkxJTkUgdm9pZCBzaWxrX0xETF9GTFAoCi0gICAgc2lsa19mbG9h
dCAgICAgICAgICAqQSwgICAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gU3ltZXRyaWMgU3F1YXJl
IE1hdHJpeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAg
ICAgICAgICAgTSwgICAgICAgICAgLyogSSAgICBTaXplIG9mIE1hdHJpeCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaWxrX2Zsb2F0ICAg
ICAgICAgICpMLCAgICAgICAgIC8qIEkvTyAgUG9pbnRlciB0byBTcXVhcmUgVXBwZXIgdHJpYW5n
dWxhciBNYXRyaXggICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2lsa19mbG9hdCAgICAg
ICAgICAqRGludiAgICAgICAvKiBJL08gIFBvaW50ZXIgdG8gdmVjdG9yIGhvbGRpbmcgdGhlIGlu
dmVyc2UgZGlhZ29uYWwgZWxlbWVudHMgb2YgRCAgICAqLwotKQotewotICAgIG9wdXNfaW50IGks
IGosIGssIGxvb3BfY291bnQsIGVyciA9IDE7Ci0gICAgc2lsa19mbG9hdCAqcHRyMSwgKnB0cjI7
Ci0gICAgZG91YmxlIHRlbXAsIGRpYWdfbWluX3ZhbHVlOwotICAgIHNpbGtfZmxvYXQgdlsgTUFY
X01BVFJJWF9TSVpFIF0sIERbIE1BWF9NQVRSSVhfU0laRSBdOyAvKiB0ZW1wIGFycmF5cyovCi0K
LSAgICBzaWxrX2Fzc2VydCggTSA8PSBNQVhfTUFUUklYX1NJWkUgKTsKLQotICAgIGRpYWdfbWlu
X3ZhbHVlID0gRklORF9MVFBfQ09ORF9GQUMgKiAwLjVmICogKCBBWyAwIF0gKyBBWyBNICogTSAt
IDEgXSApOwotICAgIGZvciggbG9vcF9jb3VudCA9IDA7IGxvb3BfY291bnQgPCBNICYmIGVyciA9
PSAxOyBsb29wX2NvdW50KysgKSB7Ci0gICAgICAgIGVyciA9IDA7Ci0gICAgICAgIGZvciggaiA9
IDA7IGogPCBNOyBqKysgKSB7Ci0gICAgICAgICAgICBwdHIxID0gbWF0cml4X2FkciggTCwgaiwg
MCwgTSApOwotICAgICAgICAgICAgdGVtcCA9IG1hdHJpeF9wdHIoIEEsIGosIGosIE0gKTsgLyog
ZWxlbWVudCBpbiByb3cgaiBjb2x1bW4gaiovCi0gICAgICAgICAgICBmb3IoIGkgPSAwOyBpIDwg
ajsgaSsrICkgewotICAgICAgICAgICAgICAgIHZbIGkgXSA9IHB0cjFbIGkgXSAqIERbIGkgXTsK
LSAgICAgICAgICAgICAgICB0ZW1wICAtPSBwdHIxWyBpIF0gKiB2WyBpIF07Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgICAgICBpZiggdGVtcCA8IGRpYWdfbWluX3ZhbHVlICkgewotICAgICAgICAg
ICAgICAgIC8qIEJhZGx5IGNvbmRpdGlvbmVkIG1hdHJpeDogYWRkIHdoaXRlIG5vaXNlIGFuZCBy
dW4gYWdhaW4gKi8KLSAgICAgICAgICAgICAgICB0ZW1wID0gKCBsb29wX2NvdW50ICsgMSApICog
ZGlhZ19taW5fdmFsdWUgLSB0ZW1wOwotICAgICAgICAgICAgICAgIGZvciggaSA9IDA7IGkgPCBN
OyBpKysgKSB7Ci0gICAgICAgICAgICAgICAgICAgIG1hdHJpeF9wdHIoIEEsIGksIGksIE0gKSAr
PSAoIHNpbGtfZmxvYXQgKXRlbXA7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAg
IGVyciA9IDE7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICB9Ci0gICAgICAg
ICAgICBEWyBqIF0gICAgPSAoIHNpbGtfZmxvYXQgKXRlbXA7Ci0gICAgICAgICAgICBEaW52WyBq
IF0gPSAoIHNpbGtfZmxvYXQgKSggMS4wZiAvIHRlbXAgKTsKLSAgICAgICAgICAgIG1hdHJpeF9w
dHIoIEwsIGosIGosIE0gKSA9IDEuMGY7Ci0KLSAgICAgICAgICAgIHB0cjEgPSBtYXRyaXhfYWRy
KCBBLCBqLCAwLCBNICk7Ci0gICAgICAgICAgICBwdHIyID0gbWF0cml4X2FkciggTCwgaiArIDEs
IDAsIE0pOwotICAgICAgICAgICAgZm9yKCBpID0gaiArIDE7IGkgPCBNOyBpKysgKSB7Ci0gICAg
ICAgICAgICAgICAgdGVtcCA9IDAuMDsKLSAgICAgICAgICAgICAgICBmb3IoIGsgPSAwOyBrIDwg
ajsgaysrICkgewotICAgICAgICAgICAgICAgICAgICB0ZW1wICs9IHB0cjJbIGsgXSAqIHZbIGsg
XTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgbWF0cml4X3B0ciggTCwgaSwg
aiwgTSApID0gKCBzaWxrX2Zsb2F0ICkoICggcHRyMVsgaSBdIC0gdGVtcCApICogRGludlsgaiBd
ICk7Ci0gICAgICAgICAgICAgICAgcHRyMiArPSBNOyAvKiBnbyB0byBuZXh0IGNvbHVtbiovCi0g
ICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgc2lsa19hc3NlcnQoIGVyciA9PSAw
ICk7Ci19Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC9zdHJ1Y3RzX0ZMUC5oIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0
L3N0cnVjdHNfRkxQLmgKaW5kZXggMTRkNjQ3Y2VkMjdlNmI2YTZkZTU2N2ZhZDM5ODIyZDY3YTNj
ZDRjOC4uMzE1MGIzODZlNDc4NTA2ZGM4ODg0YWU2OTE5NzEyOWVmMWM0MTYzMyAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2Zsb2F0L3N0cnVjdHNfRkxQLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3N0cnVjdHNfRkxQLmgK
QEAgLTQyLDMyICs0MiwxNiBAQCBleHRlcm4gIkMiCiAvKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKiovCiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1c19pbnQ4ICAgICAgICAgICAgICAg
ICAgIExhc3RHYWluSW5kZXg7Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIEhhcm1C
b29zdF9zbXRoOwogICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVHYWlu
X3NtdGg7CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIFRpbHRfc210aDsKIH0gc2ls
a19zaGFwZV9zdGF0ZV9GTFA7CiAKLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8K
LS8qIFByZWZpbHRlciBzdGF0ZSAgICAgICAgICAgICAgKi8KLS8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KLXR5cGVkZWYgc3RydWN0IHsKLSAgICBzaWxrX2Zsb2F0ICAgICAgICAg
ICAgICAgICAgc0xUUF9zaHBbIExUUF9CVUZfTEVOR1RIIF07Ci0gICAgc2lsa19mbG9hdCAgICAg
ICAgICAgICAgICAgIHNBUl9zaHBbIE1BWF9TSEFQRV9MUENfT1JERVIgKyAxIF07Ci0gICAgb3B1
c19pbnQgICAgICAgICAgICAgICAgICAgIHNMVFBfc2hwX2J1Zl9pZHg7Ci0gICAgc2lsa19mbG9h
dCAgICAgICAgICAgICAgICAgIHNMRl9BUl9zaHA7Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAg
ICAgICAgIHNMRl9NQV9zaHA7Ci0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIHNIYXJt
SFA7Ci0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHJhbmRfc2VlZDsKLSAgICBvcHVz
X2ludCAgICAgICAgICAgICAgICAgICAgbGFnUHJldjsKLX0gc2lsa19wcmVmaWx0ZXJfc3RhdGVf
RkxQOwotCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAvKiBFbmNvZGVyIHN0
YXRlIEZMUCAgICAgICAgICAgICovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
CiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgc2lsa19lbmNvZGVyX3N0YXRlICAgICAgICAgIHNDbW47
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIENvbW1vbiBzdHJ1Y3QsIHNoYXJlZCB3
aXRoIGZpeGVkLXBvaW50IGNvZGUgKi8KICAgICBzaWxrX3NoYXBlX3N0YXRlX0ZMUCAgICAgICAg
c1NoYXBlOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTm9pc2Ugc2hhcGluZyBzdGF0
ZSAqLwotICAgIHNpbGtfcHJlZmlsdGVyX3N0YXRlX0ZMUCAgICBzUHJlZmlsdDsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBQcmVmaWx0ZXIgU3RhdGUgKi8KIAogICAgIC8qIEJ1ZmZlciBm
b3IgZmluZCBwaXRjaCBhbmQgbm9pc2Ugc2hhcGUgYW5hbHlzaXMgKi8KICAgICBzaWxrX2Zsb2F0
ICAgICAgICAgICAgICAgICAgeF9idWZbIDIgKiBNQVhfRlJBTUVfTEVOR1RIICsgTEFfU0hBUEVf
TUFYIF07LyogQnVmZmVyIGZvciBmaW5kIHBpdGNoIGFuZCBub2lzZSBzaGFwZSBhbmFseXNpcyAq
LwpAQCAtODYsMTIgKzcwLDkgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIG9wdXNfaW50ICAgICAg
ICAgICAgICAgICAgICBwaXRjaExbIE1BWF9OQl9TVUJGUiBdOwogCiAgICAgLyogTm9pc2Ugc2hh
cGluZyBwYXJhbWV0ZXJzICovCi0gICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIEFSMVsg
TUFYX05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOwotICAgIHNpbGtfZmxvYXQgICAg
ICAgICAgICAgICAgICBBUjJbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsK
KyAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgQVJbIE1BWF9OQl9TVUJGUiAqIE1BWF9T
SEFQRV9MUENfT1JERVIgXTsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgTEZfTUFf
c2hwWyAgICAgTUFYX05CX1NVQkZSIF07CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAg
IExGX0FSX3NocFsgICAgIE1BWF9OQl9TVUJGUiBdOwotICAgIHNpbGtfZmxvYXQgICAgICAgICAg
ICAgICAgICBHYWluc1ByZVsgICAgICBNQVhfTkJfU1VCRlIgXTsKLSAgICBzaWxrX2Zsb2F0ICAg
ICAgICAgICAgICAgICAgSGFybUJvb3N0WyAgICAgTUFYX05CX1NVQkZSIF07CiAgICAgc2lsa19m
bG9hdCAgICAgICAgICAgICAgICAgIFRpbHRbICAgICAgICAgIE1BWF9OQl9TVUJGUiBdOwogICAg
IHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluWyBNQVhfTkJfU1VCRlIg
XTsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgTGFtYmRhOwpAQCAtOTksNyArODAs
NiBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIGNv
ZGluZ19xdWFsaXR5OwogCiAgICAgLyogTWVhc3VyZXMgKi8KLSAgICBzaWxrX2Zsb2F0ICAgICAg
ICAgICAgICAgICAgc3BhcnNlbmVzczsKICAgICBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAg
cHJlZEdhaW47CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIExUUHJlZENvZEdhaW47
CiAgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgIFJlc05yZ1sgTUFYX05CX1NVQkZSIF07
ICAgICAgICAgICAgIC8qIFJlc2lkdWFsIGVuZXJneSBwZXIgc3ViZnJhbWUgKi8KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9z
cmMvc2lsay9mbG9hdC93cmFwcGVyc19GTFAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9mbG9hdC93cmFwcGVyc19GTFAuYwpp
bmRleCA2NjY2YjhlZmFhZGUyZjBjZTllZWYzNzE4MWMwNzY4M2Q1NDMzZWMyLi5hZDkwYjg3NGE0
ZDgxNGE2MTVjOTE0MTc0MjA1ZmRmYjEwZGYwOTc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZmxvYXQvd3Jh
cHBlcnNfRkxQLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2Zsb2F0L3dyYXBwZXJzX0ZMUC5jCkBAIC01NCwxMyArNTQs
MTQgQEAgdm9pZCBzaWxrX0EyTkxTRl9GTFAoCiB2b2lkIHNpbGtfTkxTRjJBX0ZMUCgKICAgICBz
aWxrX2Zsb2F0ICAgICAgICAgICAgICAgICAgICAgICpwQVIsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIE8gICAgTFBDIGNvZWZmaWNpZW50cyBbIExQQ19vcmRlciBdICAgICAgICAg
ICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICAgICAgKk5MU0ZfUTE1LCAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBOTFNGIHZlY3RvciAgICAgIFsgTFBDX29y
ZGVyIF0gICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAg
ICBMUENfb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExQQyBvcmRlciAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgIExQQ19vcmRlciwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgTFBDIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGlu
dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAg
ICAgICovCiApCiB7CiAgICAgb3B1c19pbnQgICBpOwogICAgIG9wdXNfaW50MTYgYV9maXhfUTEy
WyBNQVhfTFBDX09SREVSIF07CiAKLSAgICBzaWxrX05MU0YyQSggYV9maXhfUTEyLCBOTFNGX1Ex
NSwgTFBDX29yZGVyICk7CisgICAgc2lsa19OTFNGMkEoIGFfZml4X1ExMiwgTkxTRl9RMTUsIExQ
Q19vcmRlciwgYXJjaCApOwogCiAgICAgZm9yKCBpID0gMDsgaSA8IExQQ19vcmRlcjsgaSsrICkg
ewogICAgICAgICBwQVJbIGkgXSA9ICggc2lsa19mbG9hdCApYV9maXhfUTEyWyBpIF0gKiAoIDEu
MGYgLyA0MDk2LjBmICk7CkBAIC0xMDIsMTQgKzEwMywxNCBAQCB2b2lkIHNpbGtfTlNRX3dyYXBw
ZXJfRkxQKAogKQogewogICAgIG9wdXNfaW50ICAgICBpLCBqOwotICAgIG9wdXNfaW50MzIgICB4
X1EzWyBNQVhfRlJBTUVfTEVOR1RIIF07CisgICAgb3B1c19pbnQxNiAgIHgxNlsgTUFYX0ZSQU1F
X0xFTkdUSCBdOwogICAgIG9wdXNfaW50MzIgICBHYWluc19RMTZbIE1BWF9OQl9TVUJGUiBdOwog
ICAgIHNpbGtfRFdPUkRfQUxJR04gb3B1c19pbnQxNiBQcmVkQ29lZl9RMTJbIDIgXVsgTUFYX0xQ
Q19PUkRFUiBdOwogICAgIG9wdXNfaW50MTYgICBMVFBDb2VmX1ExNFsgTFRQX09SREVSICogTUFY
X05CX1NVQkZSIF07CiAgICAgb3B1c19pbnQgICAgIExUUF9zY2FsZV9RMTQ7CiAKICAgICAvKiBO
b2lzZSBzaGFwaW5nIHBhcmFtZXRlcnMgKi8KLSAgICBvcHVzX2ludDE2ICAgQVIyX1ExM1sgTUFY
X05CX1NVQkZSICogTUFYX1NIQVBFX0xQQ19PUkRFUiBdOworICAgIG9wdXNfaW50MTYgICBBUl9R
MTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXTsKICAgICBvcHVzX2ludDMy
ICAgTEZfc2hwX1ExNFsgTUFYX05CX1NVQkZSIF07ICAgICAgICAgLyogUGFja3MgdHdvIGludDE2
IGNvZWZmaWNpZW50cyBwZXIgaW50MzIgdmFsdWUgICAgICAgICAgICAgKi8KICAgICBvcHVzX2lu
dCAgICAgTGFtYmRhX1ExMDsKICAgICBvcHVzX2ludCAgICAgVGlsdF9RMTRbIE1BWF9OQl9TVUJG
UiBdOwpAQCAtMTE5LDcgKzEyMCw3IEBAIHZvaWQgc2lsa19OU1Ffd3JhcHBlcl9GTFAoCiAgICAg
LyogTm9pc2Ugc2hhcGUgcGFyYW1ldGVycyAqLwogICAgIGZvciggaSA9IDA7IGkgPCBwc0VuYy0+
c0Ntbi5uYl9zdWJmcjsgaSsrICkgewogICAgICAgICBmb3IoIGogPSAwOyBqIDwgcHNFbmMtPnND
bW4uc2hhcGluZ0xQQ09yZGVyOyBqKysgKSB7Ci0gICAgICAgICAgICBBUjJfUTEzWyBpICogTUFY
X1NIQVBFX0xQQ19PUkRFUiArIGogXSA9IHNpbGtfZmxvYXQyaW50KCBwc0VuY0N0cmwtPkFSMlsg
aSAqIE1BWF9TSEFQRV9MUENfT1JERVIgKyBqIF0gKiA4MTkyLjBmICk7CisgICAgICAgICAgICBB
Ul9RMTNbIGkgKiBNQVhfU0hBUEVfTFBDX09SREVSICsgaiBdID0gc2lsa19mbG9hdDJpbnQoIHBz
RW5jQ3RybC0+QVJbIGkgKiBNQVhfU0hBUEVfTFBDX09SREVSICsgaiBdICogODE5Mi4wZiApOwog
ICAgICAgICB9CiAgICAgfQogCkBAIC0xNTUsMTYgKzE1NiwxNiBAQCB2b2lkIHNpbGtfTlNRX3dy
YXBwZXJfRkxQKAogCiAgICAgLyogQ29udmVydCBpbnB1dCB0byBmaXggKi8KICAgICBmb3IoIGkg
PSAwOyBpIDwgcHNFbmMtPnNDbW4uZnJhbWVfbGVuZ3RoOyBpKysgKSB7Ci0gICAgICAgIHhfUTNb
IGkgXSA9IHNpbGtfZmxvYXQyaW50KCA4LjBmICogeFsgaSBdICk7CisgICAgICAgIHgxNlsgaSBd
ID0gc2lsa19mbG9hdDJpbnQoIHhbIGkgXSApOwogICAgIH0KIAogICAgIC8qIENhbGwgTlNRICov
CiAgICAgaWYoIHBzRW5jLT5zQ21uLm5TdGF0ZXNEZWxheWVkRGVjaXNpb24gPiAxIHx8IHBzRW5j
LT5zQ21uLndhcnBpbmdfUTE2ID4gMCApIHsKLSAgICAgICAgc2lsa19OU1FfZGVsX2RlYyggJnBz
RW5jLT5zQ21uLCBwc05TUSwgcHNJbmRpY2VzLCB4X1EzLCBwdWxzZXMsIFByZWRDb2VmX1ExMlsg
MCBdLCBMVFBDb2VmX1ExNCwKLSAgICAgICAgICAgIEFSMl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0
LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwc0VuY0N0cmwtPnBpdGNoTCwgTGFt
YmRhX1ExMCwgTFRQX3NjYWxlX1ExNCwgcHNFbmMtPnNDbW4uYXJjaCApOworICAgICAgICBzaWxr
X05TUV9kZWxfZGVjKCAmcHNFbmMtPnNDbW4sIHBzTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2Vz
LCBQcmVkQ29lZl9RMTJbIDAgXSwgTFRQQ29lZl9RMTQsCisgICAgICAgICAgICBBUl9RMTMsIEhh
cm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwc0VuY0N0
cmwtPnBpdGNoTCwgTGFtYmRhX1ExMCwgTFRQX3NjYWxlX1ExNCwgcHNFbmMtPnNDbW4uYXJjaCAp
OwogICAgIH0gZWxzZSB7Ci0gICAgICAgIHNpbGtfTlNRKCAmcHNFbmMtPnNDbW4sIHBzTlNRLCBw
c0luZGljZXMsIHhfUTMsIHB1bHNlcywgUHJlZENvZWZfUTEyWyAwIF0sIExUUENvZWZfUTE0LAot
ICAgICAgICAgICAgQVIyX1ExMywgSGFybVNoYXBlR2Fpbl9RMTQsIFRpbHRfUTE0LCBMRl9zaHBf
UTE0LCBHYWluc19RMTYsIHBzRW5jQ3RybC0+cGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVf
UTE0LCBwc0VuYy0+c0Ntbi5hcmNoICk7CisgICAgICAgIHNpbGtfTlNRKCAmcHNFbmMtPnNDbW4s
IHBzTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTJbIDAgXSwgTFRQQ29l
Zl9RMTQsCisgICAgICAgICAgICBBUl9RMTMsIEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwg
TEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwc0VuY0N0cmwtPnBpdGNoTCwgTGFtYmRhX1ExMCwgTFRQ
X3NjYWxlX1ExNCwgcHNFbmMtPnNDbW4uYXJjaCApOwogICAgIH0KIH0KIApAQCAtMTcyLDMxICsx
NzMsMzUgQEAgdm9pZCBzaWxrX05TUV93cmFwcGVyX0ZMUCgKIC8qIEZsb2F0aW5nLXBvaW50IFNp
bGsgTFRQIHF1YW50aWF0aW9uIHdyYXBwZXIgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KIHZvaWQgc2lsa19xdWFudF9MVFBfZ2FpbnNfRkxQKAot
ICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgQlsgTUFYX05CX1NVQkZSICogTFRQ
X09SREVSIF0sICAgICAgLyogSS9PICAoVW4tKXF1YW50aXplZCBMVFAgZ2FpbnMgICAgICAgICAg
ICAgICAgICAgICovCisgICAgc2lsa19mbG9hdCAgICAgICAgICAgICAgICAgICAgICBCWyBNQVhf
TkJfU1VCRlIgKiBMVFBfT1JERVIgXSwgICAgICAvKiBPICAgIFF1YW50aXplZCBMVFAgZ2FpbnMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAgICAgICAg
ICAgICAgICAgIGNia19pbmRleFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAgIC8qIE8gICAgQ29k
ZWJvb2sgaW5kZXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50
OCAgICAgICAgICAgICAgICAgICAgICAgKnBlcmlvZGljaXR5X2luZGV4LCAgICAgICAgICAgICAg
ICAgLyogTyAgICBQZXJpb2RpY2l0eSBpbmRleCAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICAgICAqc3VtX2xvZ19nYWluX1E3LCAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIEN1bXVsYXRpdmUgbWF4IHByZWRpY3Rpb24gZ2FpbiAg
Ki8KLSAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAgIFdbIE1BWF9OQl9TVUJGUiAq
IExUUF9PUkRFUiAqIExUUF9PUkRFUiBdLCAvKiBJICAgIEVycm9yIHdlaWdodHMgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgbXVf
UTEwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBNdSB2YWx1ZSAoUi9EIHRy
YWRlb2ZmKSAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAg
ICAgICAgICAgICBsb3dDb21wbGV4aXR5LCAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZs
YWcgZm9yIGxvdyBjb21wbGV4aXR5ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgICAgIG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIHNpbGtfZmxvYXQgICAgICAgICAgICAgICAgICAgICAgKnByZWRfZ2Fpbl9kQiwgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBPICAgIExUUCBwcmVkaWN0aW9uIGdhaW4gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2Zsb2F0ICAgICAgICAgICAgICAg
IFhYWyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgKiBMVFBfT1JERVIgXSwgLyogSSAgICBDb3Jy
ZWxhdGlvbiBtYXRyaXggICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19mbG9h
dCAgICAgICAgICAgICAgICB4WFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAgICAgICAv
KiBJICAgIENvcnJlbGF0aW9uIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBzdWJmcl9sZW4sICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMgcGVyIHN1YmZyYW1l
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgICAgICAg
IG5iX3N1YmZyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHN1
YmZyYW1lcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGludCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7
Ci0gICAgb3B1c19pbnQgICBpOworICAgIG9wdXNfaW50ICAgaSwgcHJlZF9nYWluX2RCX1E3Owog
ICAgIG9wdXNfaW50MTYgQl9RMTRbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiBdOwotICAgIG9w
dXNfaW50MzIgV19RMThbIE1BWF9OQl9TVUJGUipMVFBfT1JERVIqTFRQX09SREVSIF07CisgICAg
b3B1c19pbnQzMiBYWF9RMTdbIE1BWF9OQl9TVUJGUiAqIExUUF9PUkRFUiAqIExUUF9PUkRFUiBd
OworICAgIG9wdXNfaW50MzIgeFhfUTE3WyBNQVhfTkJfU1VCRlIgKiBMVFBfT1JERVIgXTsKIAot
ICAgIGZvciggaSA9IDA7IGkgPCBuYl9zdWJmciAqIExUUF9PUkRFUjsgaSsrICkgewotICAgICAg
ICBCX1ExNFsgaSBdID0gKG9wdXNfaW50MTYpc2lsa19mbG9hdDJpbnQoIEJbIGkgXSAqIDE2Mzg0
LjBmICk7Ci0gICAgfQogICAgIGZvciggaSA9IDA7IGkgPCBuYl9zdWJmciAqIExUUF9PUkRFUiAq
IExUUF9PUkRFUjsgaSsrICkgewotICAgICAgICBXX1ExOFsgaSBdID0gKG9wdXNfaW50MzIpc2ls
a19mbG9hdDJpbnQoIFdbIGkgXSAqIDI2MjE0NC4wZiApOworICAgICAgICBYWF9RMTdbIGkgXSA9
IChvcHVzX2ludDMyKXNpbGtfZmxvYXQyaW50KCBYWFsgaSBdICogMTMxMDcyLjBmICk7CisgICAg
fQorICAgIGZvciggaSA9IDA7IGkgPCBuYl9zdWJmciAqIExUUF9PUkRFUjsgaSsrICkgeworICAg
ICAgICB4WF9RMTdbIGkgXSA9IChvcHVzX2ludDMyKXNpbGtfZmxvYXQyaW50KCB4WFsgaSBdICog
MTMxMDcyLjBmICk7CiAgICAgfQogCi0gICAgc2lsa19xdWFudF9MVFBfZ2FpbnMoIEJfUTE0LCBj
YmtfaW5kZXgsIHBlcmlvZGljaXR5X2luZGV4LCBzdW1fbG9nX2dhaW5fUTcsIFdfUTE4LCBtdV9R
MTAsIGxvd0NvbXBsZXhpdHksIG5iX3N1YmZyLCBhcmNoICk7CisgICAgc2lsa19xdWFudF9MVFBf
Z2FpbnMoIEJfUTE0LCBjYmtfaW5kZXgsIHBlcmlvZGljaXR5X2luZGV4LCBzdW1fbG9nX2dhaW5f
UTcsICZwcmVkX2dhaW5fZEJfUTcsIFhYX1ExNywgeFhfUTE3LCBzdWJmcl9sZW4sIG5iX3N1YmZy
LCBhcmNoICk7CiAKICAgICBmb3IoIGkgPSAwOyBpIDwgbmJfc3ViZnIgKiBMVFBfT1JERVI7IGkr
KyApIHsKICAgICAgICAgQlsgaSBdID0gKHNpbGtfZmxvYXQpQl9RMTRbIGkgXSAqICggMS4wZiAv
IDE2Mzg0LjBmICk7CiAgICAgfQorCisgICAgKnByZWRfZ2Fpbl9kQiA9IChzaWxrX2Zsb2F0KXBy
ZWRfZ2Fpbl9kQl9RNyAqICggMS4wZiAvIDEyOC4wZiApOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2dh
aW5fcXVhbnQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9nYWluX3F1YW50LmMKaW5kZXggNjRjY2QwNjExYmZmMzY4Y2Y3OWY5
NTBkZjVhMTY3YmFhOGQ0MTBiZC4uZWU2NTI0NWFhMzY3MTA1ZWUxZTBkZmE4YjVmMjYxOWQ4YzIy
MzgyMCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2dhaW5fcXVhbnQuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvZ2Fpbl9xdWFudC5j
CkBAIC03Niw2ICs3Niw3IEBAIHZvaWQgc2lsa19nYWluc19xdWFudCgKICAgICAgICAgICAgIC8q
IEFjY3VtdWxhdGUgZGVsdGFzICovCiAgICAgICAgICAgICBpZiggaW5kWyBrIF0gPiBkb3VibGVf
c3RlcF9zaXplX3RocmVzaG9sZCApIHsKICAgICAgICAgICAgICAgICAqcHJldl9pbmQgKz0gc2ls
a19MU0hJRlQoIGluZFsgayBdLCAxICkgLSBkb3VibGVfc3RlcF9zaXplX3RocmVzaG9sZDsKKyAg
ICAgICAgICAgICAgICAqcHJldl9pbmQgPSBzaWxrX21pbl9pbnQoICpwcmV2X2luZCwgTl9MRVZF
TFNfUUdBSU4gLSAxICk7CiAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICpw
cmV2X2luZCArPSBpbmRbIGsgXTsKICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9pbml0
X2RlY29kZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay9pbml0X2RlY29kZXIuYwppbmRleCBmODg3YzY3ODg2ZmI1N2FjZDU0
YjAzYTNkYzUyMTBjM2IwOWJiNGIyLi4xNmMwM2RjZDFjYTFiMzNiNDg0MDk5OWQ4ZGI2YzdmNWIy
YjE1ZWJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvaW5pdF9kZWNvZGVyLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2luaXRfZGVj
b2Rlci5jCkBAIC00NCw2ICs0NCw3IEBAIG9wdXNfaW50IHNpbGtfaW5pdF9kZWNvZGVyKAogICAg
IC8qIFVzZWQgdG8gZGVhY3RpdmF0ZSBMU0YgaW50ZXJwb2xhdGlvbiAqLwogICAgIHBzRGVjLT5m
aXJzdF9mcmFtZV9hZnRlcl9yZXNldCA9IDE7CiAgICAgcHNEZWMtPnByZXZfZ2Fpbl9RMTYgPSA2
NTUzNjsKKyAgICBwc0RlYy0+YXJjaCA9IG9wdXNfc2VsZWN0X2FyY2goKTsKIAogICAgIC8qIFJl
c2V0IENORyBzdGF0ZSAqLwogICAgIHNpbGtfQ05HX1Jlc2V0KCBwc0RlYyApOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL2xpbjJsb2cuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvc2lsay9saW4ybG9nLmMKaW5kZXggZDRmZTUxNTMyMWYwZDViNzZk
NmQzMTRjY2ZmNGQxNmY5M2Y5MTgzOC4uMGQ1MTU1YWE4NmU0ZDY3NjMwYzU0MWQ2OGZhN2E1ZTFi
ZjQwMGJjZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL2xpbjJsb2cuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbGluMmxvZy5jCkBA
IC00MSw2ICs0MSw2IEBAIG9wdXNfaW50MzIgc2lsa19saW4ybG9nKAogICAgIHNpbGtfQ0xaX0ZS
QUMoIGluTGluLCAmbHosICZmcmFjX1E3ICk7CiAKICAgICAvKiBQaWVjZS13aXNlIHBhcmFib2xp
YyBhcHByb3hpbWF0aW9uICovCi0gICAgcmV0dXJuIHNpbGtfTFNISUZUKCAzMSAtIGx6LCA3ICkg
KyBzaWxrX1NNTEFXQiggZnJhY19RNywgc2lsa19NVUwoIGZyYWNfUTcsIDEyOCAtIGZyYWNfUTcg
KSwgMTc5ICk7CisgICAgcmV0dXJuIHNpbGtfQUREX0xTSElGVDMyKCBzaWxrX1NNTEFXQiggZnJh
Y19RNywgc2lsa19NVUwoIGZyYWNfUTcsIDEyOCAtIGZyYWNfUTcgKSwgMTc5ICksIDMxIC0gbHos
IDcgKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21hY3Jvcy5oIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21hY3Jvcy5oCmluZGV4
IGQzY2EzNDc1MjAwNDUwNmI2ZmQ2YWU0YmRkODhiNzg2NGFmNjgwNzIuLjNjNjdiNmU1ZDk3YzM2
NmY5ODQxZTJiYTliZGVlZmJmYmZlYjIwZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9tYWNyb3MuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvbWFjcm9zLmgKQEAgLTM2LDE0ICszNiw2IEBAIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgogI2luY2x1ZGUgIm9wdXNfZGVmaW5lcy5oIgogI2luY2x1ZGUgImFyY2guaCIKIAotI2lm
IE9QVVNfR05VQ19QUkVSRVEoMywgMCkKLSNkZWZpbmUgb3B1c19saWtlbHkoeCkgICAgICAgKF9f
YnVpbHRpbl9leHBlY3QoISEoeCksIDEpKQotI2RlZmluZSBvcHVzX3VubGlrZWx5KHgpICAgICAo
X19idWlsdGluX2V4cGVjdCghISh4KSwgMCkpCi0jZWxzZQotI2RlZmluZSBvcHVzX2xpa2VseSh4
KSAgICAgICAoISEoeCkpCi0jZGVmaW5lIG9wdXNfdW5saWtlbHkoeCkgICAgICghISh4KSkKLSNl
bmRpZgotCiAvKiBUaGlzIGlzIGFuIE9QVVNfSU5MSU5FIGhlYWRlciBmaWxlIGZvciBnZW5lcmFs
IHBsYXRmb3JtLiAqLwogCiAvKiAoYTMyICogKG9wdXNfaW50MzIpKChvcHVzX2ludDE2KShiMzIp
KSkgPj4gMTYgb3V0cHV0IGhhdmUgdG8gYmUgMzJiaXQgaW50ICovCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsv
bWFpbi5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL21haW4uaAppbmRleCAyZjkwZDY4ZjdkYTBjN2Q0YjA5YjcwNmFmNzAxYTY0
ZTI3MmFmNTA3Li4xYTMzZWVkNTQ5YjZhMjA4NWQ2MTIwZDUyMTBhZTFjMmJkNGIyOGI2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvbWFpbi5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9tYWluLmgKQEAgLTQyLDYgKzQyLDEwIEBAIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogI2luY2x1ZGUgIng4Ni9tYWluX3NzZS5oIgogI2Vu
ZGlmCiAKKyNpZiAoZGVmaW5lZChPUFVTX0FSTV9BU00pIHx8IGRlZmluZWQoT1BVU19BUk1fTUFZ
X0hBVkVfTkVPTl9JTlRSKSkKKyNpbmNsdWRlICJhcm0vTlNRX2RlbF9kZWNfYXJtLmgiCisjZW5k
aWYKKwogLyogQ29udmVydCBMZWZ0L1JpZ2h0IHN0ZXJlbyBzaWduYWwgdG8gYWRhcHRpdmUgTWlk
L1NpZGUgcmVwcmVzZW50YXRpb24gKi8KIHZvaWQgc2lsa19zdGVyZW9fTFJfdG9fTVMoCiAgICAg
c3RlcmVvX2VuY19zdGF0ZSAgICAgICAgICAgICpzdGF0ZSwgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSS9PICBTdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CkBAIC0xMDksMjIgKzExMywyMiBAQCB2b2lkIHNpbGtfc3RlcmVvX2RlY29kZV9taWRfb25seSgK
IAogLyogRW5jb2RlcyBzaWducyBvZiBleGNpdGF0aW9uICovCiB2b2lkIHNpbGtfZW5jb2RlX3Np
Z25zKAotICAgIGVjX2VuYyAgICAgICAgICAgICAgICAgICAgICAqcHNSYW5nZUVuYywgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIENvbXByZXNzb3IgZGF0YSBzdHJ1Y3R1cmUgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludDggICAgICAgICAgICAgcHVsc2VzW10s
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBwdWxzZSBzaWduYWwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAg
IGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbGVuZ3RoIG9mIGlu
cHV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAg
ICAgICAgICAgICBzaWduYWxUeXBlLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNp
Z25hbCB0eXBlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBv
cHVzX2ludCAgICAgICAgICAgICAgcXVhbnRPZmZzZXRUeXBlLCAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBRdWFudGl6YXRpb24gb2Zmc2V0IHR5cGUgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHN1bV9wdWxzZXNbIE1BWF9OQl9TSEVMTF9C
TE9DS1MgXSAgIC8qIEkgICAgU3VtIG9mIGFic29sdXRlIHB1bHNlcyBwZXIgYmxvY2sgICAgICAg
ICAgICAqLworICAgIGVjX2VuYyAgICAgICAgICAgICAgICAgICAgICAqcHNSYW5nZUVuYywgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBJL08gIENvbXByZXNzb3IgZGF0YSBzdHJ1Y3R1cmUgICAg
ICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50OCAgICAgICAgICAgICBwdWxzZXNbXSwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIHB1bHNlIHNpZ25hbCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsZW5n
dGgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIGxlbmd0aCBvZiBpbnB1dCAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBzaWduYWxUeXBlLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBl
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICBxdWFudE9mZnNldFR5cGUsICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFF1YW50
aXphdGlvbiBvZmZzZXQgdHlwZSAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50
ICAgICAgICAgICAgICBzdW1fcHVsc2VzWyBNQVhfTkJfU0hFTExfQkxPQ0tTIF0gICAvKiBJICAg
IFN1bSBvZiBhYnNvbHV0ZSBwdWxzZXMgcGVyIGJsb2NrICAgICAgICAqLwogKTsKIAogLyogRGVj
b2RlcyBzaWducyBvZiBleGNpdGF0aW9uICovCiB2b2lkIHNpbGtfZGVjb2RlX3NpZ25zKAotICAg
IGVjX2RlYyAgICAgICAgICAgICAgICAgICAgICAqcHNSYW5nZURlYywgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJL08gIENvbXByZXNzb3IgZGF0YSBzdHJ1Y3R1cmUgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgcHVsc2VzW10sICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSS9PICBwdWxzZSBzaWduYWwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIGxlbmd0aCwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgbGVuZ3RoIG9mIGlucHV0ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBzaWduYWxUeXBlLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBl
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBvcHVzX2ludCAg
ICAgICAgICAgICAgcXVhbnRPZmZzZXRUeXBlLCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBR
dWFudGl6YXRpb24gb2Zmc2V0IHR5cGUgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qg
b3B1c19pbnQgICAgICAgICAgICAgIHN1bV9wdWxzZXNbIE1BWF9OQl9TSEVMTF9CTE9DS1MgXSAg
IC8qIEkgICAgU3VtIG9mIGFic29sdXRlIHB1bHNlcyBwZXIgYmxvY2sgICAgICAgICAgICAqLwor
ICAgIGVjX2RlYyAgICAgICAgICAgICAgICAgICAgICAqcHNSYW5nZURlYywgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJL08gIENvbXByZXNzb3IgZGF0YSBzdHJ1Y3R1cmUgICAgICAgICAgICAg
ICAqLworICAgIG9wdXNfaW50MTYgICAgICAgICAgICAgICAgICBwdWxzZXNbXSwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJL08gIHB1bHNlIHNpZ25hbCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBsZW5ndGgsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIGxlbmd0aCBvZiBpbnB1dCAgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzaWduYWxU
eXBlLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFNpZ25hbCB0eXBlICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBx
dWFudE9mZnNldFR5cGUsICAgICAgICAgICAgICAgICAgICAvKiBJICAgIFF1YW50aXphdGlvbiBv
ZmZzZXQgdHlwZSAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAg
ICAgICBzdW1fcHVsc2VzWyBNQVhfTkJfU0hFTExfQkxPQ0tTIF0gICAvKiBJICAgIFN1bSBvZiBh
YnNvbHV0ZSBwdWxzZXMgcGVyIGJsb2NrICAgICAgICAqLwogKTsKIAogLyogQ2hlY2sgZW5jb2Rl
ciBjb250cm9sIHN0cnVjdCAqLwpAQCAtMjA1LDM3ICsyMDksMzcgQEAgdm9pZCBzaWxrX2ludGVy
cG9sYXRlKAogCiAvKiBMVFAgdGFwIHF1YW50aXplciAqLwogdm9pZCBzaWxrX3F1YW50X0xUUF9n
YWlucygKLSAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgQl9RMTRbIE1BWF9OQl9TVUJG
UiAqIExUUF9PUkRFUiBdLCAgICAgICAgICAvKiBJL08gICh1bilxdWFudGl6ZWQgTFRQIGdhaW5z
ICAgICAgICAgKi8KKyAgICBvcHVzX2ludDE2ICAgICAgICAgICAgICAgICAgQl9RMTRbIE1BWF9O
Ql9TVUJGUiAqIExUUF9PUkRFUiBdLCAgICAgICAgICAvKiBPICAgIFF1YW50aXplZCBMVFAgZ2Fp
bnMgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgY2JrX2lu
ZGV4WyBNQVhfTkJfU1VCRlIgXSwgICAgICAgICAgICAgICAgICAvKiBPICAgIENvZGVib29rIElu
ZGV4ICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAg
KnBlcmlvZGljaXR5X2luZGV4LCAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFBlcmlv
ZGljaXR5IEluZGV4ICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgICAg
ICAgICAgKnN1bV9nYWluX2RCX1E3LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08g
IEN1bXVsYXRpdmUgbWF4IHByZWRpY3Rpb24gZ2FpbiAgKi8KLSAgICBjb25zdCBvcHVzX2ludDMy
ICAgICAgICAgICAgV19RMThbIE1BWF9OQl9TVUJGUipMVFBfT1JERVIqTFRQX09SREVSIF0sICAv
KiBJICAgIEVycm9yIFdlaWdodHMgaW4gUTE4ICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAg
ICAgICAgICAgICAgICAgICAgbXVfUTksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBJICAgIE11IHZhbHVlIChSL0QgdHJhZGVvZmYpICAgICAgICAgKi8KLSAgICBvcHVz
X2ludCAgICAgICAgICAgICAgICAgICAgbG93Q29tcGxleGl0eSwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBJICAgIEZsYWcgZm9yIGxvdyBjb21wbGV4aXR5ICAgICAgICAgKi8KLSAg
ICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgbmJfc3ViZnIsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBJICAgIG51bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAg
Ki8KKyAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgKnByZWRfZ2Fpbl9kQl9RNywgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIExUUCBwcmVkaWN0aW9uIGdhaW4gICAgICAg
ICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgWFhfUTE3WyBNQVhfTkJf
U1VCRlIqTFRQX09SREVSKkxUUF9PUkRFUiBdLCAvKiBJICAgIENvcnJlbGF0aW9uIG1hdHJpeCBp
biBRMTggICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDMyICAgICAgICAgICAgeFhfUTE3WyBN
QVhfTkJfU1VCRlIqTFRQX09SREVSIF0sICAgICAgICAgICAvKiBJICAgIENvcnJlbGF0aW9uIHZl
Y3RvciBpbiBRMTggICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAgICAgc3Vi
ZnJfbGVuLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE51bWJlciBv
ZiBzYW1wbGVzIHBlciBzdWJmcmFtZSAgKi8KKyAgICBjb25zdCBvcHVzX2ludCAgICAgICAgICAg
ICAgbmJfc3ViZnIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIE51
bWJlciBvZiBzdWJmcmFtZXMgICAgICAgICAgICAgKi8KICAgICBpbnQgICAgICAgICAgICAgICAg
ICAgICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIFJ1bi10aW1lIGFyY2hpdGVjdHVyZSAgICAgICAgICAgKi8KICk7CiAKIC8qIEVudHJvcHkg
Y29uc3RyYWluZWQgbWF0cml4LXdlaWdodGVkIFZRLCBmb3IgYSBzaW5nbGUgaW5wdXQgZGF0YSB2
ZWN0b3IgKi8KIHZvaWQgc2lsa19WUV9XTWF0X0VDX2MoCiAgICAgb3B1c19pbnQ4ICAgICAgICAg
ICAgICAgICAgICppbmQsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogTyAgICBpbmRleCBv
ZiBiZXN0IGNvZGVib29rIHZlY3RvciAgICAgICAgICAgICAgICovCi0gICAgb3B1c19pbnQzMiAg
ICAgICAgICAgICAgICAgICpyYXRlX2Rpc3RfUTE0LCAgICAgICAgICAgICAgICAgLyogTyAgICBi
ZXN0IHdlaWdodGVkIHF1YW50IGVycm9yICsgbXUgKiByYXRlICAgICAgICovCisgICAgb3B1c19p
bnQzMiAgICAgICAgICAgICAgICAgICpyZXNfbnJnX1ExNSwgICAgICAgICAgICAgICAgICAgLyog
TyAgICBiZXN0IHJlc2lkdWFsIGVuZXJneSAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
b3B1c19pbnQzMiAgICAgICAgICAgICAgICAgICpyYXRlX2Rpc3RfUTgsICAgICAgICAgICAgICAg
ICAgLyogTyAgICBiZXN0IHRvdGFsIGJpdHJhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICpnYWluX1E3LCAgICAgICAgICAgICAg
ICAgICAgICAgLyogTyAgICBzdW0gb2YgYWJzb2x1dGUgTFRQIGNvZWZmaWNpZW50cyAgICAgICAg
ICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgICppbl9RMTQsICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSSAgICBpbnB1dCB2ZWN0b3IgdG8gYmUgcXVhbnRpemVkICAgICAg
ICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpXX1ExOCwgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICB3ZWlnaHRpbmcgbWF0cml4ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgICpYWF9R
MTcsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb3JyZWxhdGlvbiBtYXRyaXggICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAg
ICp4WF9RMTcsICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb3JyZWxhdGlvbiB2ZWN0
b3IgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQ4ICAgICAg
ICAgICAgICpjYl9RNywgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb2RlYm9vayAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c191aW50
OCAgICAgICAgICAgICpjYl9nYWluX1E3LCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBjb2Rl
Ym9vayBlZmZlY3RpdmUgZ2FpbiAgICAgICAgICAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1
c191aW50OCAgICAgICAgICAgICpjbF9RNSwgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAg
ICBjb2RlIGxlbmd0aCBmb3IgZWFjaCBjb2RlYm9vayB2ZWN0b3IgICAgICAgICovCi0gICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgIG11X1E5LCAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICB0cmFkZW9mZiBiZXR3LiB3ZWlnaHRlZCBlcnJvciBhbmQgcmF0ZSAgICAgICovCisg
ICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIHN1YmZyX2xlbiwgICAgICAgICAgICAgICAg
ICAgICAgLyogSSAgICBudW1iZXIgb2Ygc2FtcGxlcyBwZXIgc3ViZnJhbWUgICAgICAgICAgICAg
ICovCiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIG1heF9nYWluX1E3LCAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBtYXhpbXVtIHN1bSBvZiBhYnNvbHV0ZSBMVFAgY29lZmZpY2ll
bnRzICAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIEwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2YgdmVjdG9ycyBpbiBjb2RlYm9vayAg
ICAgICAgICAgICAgICovCisgICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAgIEwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2YgdmVjdG9ycyBpbiBjb2Rl
Ym9vayAgICAgICAgICAgICAgICovCiApOwogCiAjaWYgIWRlZmluZWQoT1ZFUlJJREVfc2lsa19W
UV9XTWF0X0VDKQotI2RlZmluZSBzaWxrX1ZRX1dNYXRfRUMoaW5kLCByYXRlX2Rpc3RfUTE0LCBn
YWluX1E3LCBpbl9RMTQsIFdfUTE4LCBjYl9RNywgY2JfZ2Fpbl9RNywgY2xfUTUsIFwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgbXVfUTksIG1heF9nYWluX1E3LCBMLCBhcmNoKSBcCi0gICAg
KCh2b2lkKShhcmNoKSxzaWxrX1ZRX1dNYXRfRUNfYyhpbmQsIHJhdGVfZGlzdF9RMTQsIGdhaW5f
UTcsIGluX1ExNCwgV19RMTgsIGNiX1E3LCBjYl9nYWluX1E3LCBjbF9RNSwgXAotICAgICAgICAg
ICAgICAgICAgICAgICAgICBtdV9ROSwgbWF4X2dhaW5fUTcsIEwpKQorI2RlZmluZSBzaWxrX1ZR
X1dNYXRfRUMoaW5kLCByZXNfbnJnX1ExNSwgcmF0ZV9kaXN0X1E4LCBnYWluX1E3LCBYWF9RMTcs
IHhYX1ExNywgY2JfUTcsIGNiX2dhaW5fUTcsIGNsX1E1LCBzdWJmcl9sZW4sIG1heF9nYWluX1E3
LCBMLCBhcmNoKSBcCisgICAgKCh2b2lkKShhcmNoKSxzaWxrX1ZRX1dNYXRfRUNfYyhpbmQsIHJl
c19ucmdfUTE1LCByYXRlX2Rpc3RfUTgsIGdhaW5fUTcsIFhYX1ExNywgeFhfUTE3LCBjYl9RNywg
Y2JfZ2Fpbl9RNywgY2xfUTUsIHN1YmZyX2xlbiwgbWF4X2dhaW5fUTcsIEwpKQogI2VuZGlmCiAK
IC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0yNDMsMTQgKzI0Nywx
NCBAQCB2b2lkIHNpbGtfVlFfV01hdF9FQ19jKAogLyoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KIAogdm9pZCBzaWxrX05TUV9jKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9z
dGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkv
TyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5j
b2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNx
X3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNp
ZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwot
ICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAg
ICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICB4MTZbXSwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICBwdWxzZXNbXSwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRpemVkIHB1bHNlIHNp
Z25hbCAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBQcmVkQ29l
Zl9RMTJbIDIgKiBNQVhfTFBDX09SREVSIF0sICAgICAgICAgIC8qIEkgICAgU2hvcnQgdGVybSBw
cmVkaWN0aW9uIGNvZWZzICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBM
VFBDb2VmX1ExNFsgTFRQX09SREVSICogTUFYX05CX1NVQkZSIF0sICAgIC8qIEkgICAgTG9uZyB0
ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICBBUjJfUTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0sIC8qIEkg
Tm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYg
ICAgICAgICAgICBBUl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JERVIgXSwg
LyogSSAgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50ICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAg
ICAgIC8qIEkgICAgTG9uZyB0ZXJtIHNoYXBpbmcgY29lZnMgICAgICAgICAqLwogICAgIGNvbnN0
IG9wdXNfaW50ICAgICAgICAgICAgICBUaWx0X1ExNFsgTUFYX05CX1NVQkZSIF0sICAgICAgICAg
ICAgICAgICAgIC8qIEkgICAgU3BlY3RyYWwgdGlsdCAgICAgICAgICAgICAgICAgICAqLwogICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBMRl9zaHBfUTE0WyBNQVhfTkJfU1VCRlIgXSwg
ICAgICAgICAgICAgICAgIC8qIEkgICAgTG93IGZyZXF1ZW5jeSBzaGFwaW5nIGNvZWZzICAgICAq
LwpAQCAtMjYxLDIyICsyNjUsMjIgQEAgdm9pZCBzaWxrX05TUV9jKAogKTsKIAogI2lmICFkZWZp
bmVkKE9WRVJSSURFX3NpbGtfTlNRKQotI2RlZmluZSBzaWxrX05TUShwc0VuY0MsIE5TUSwgcHNJ
bmRpY2VzLCB4X1EzLCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQQ29lZl9RMTQsIEFSMl9RMTMs
IFwKKyNkZWZpbmUgc2lsa19OU1EocHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMs
IFByZWRDb2VmX1ExMiwgTFRQQ29lZl9RMTQsIEFSX1ExMywgXAogICAgICAgICAgICAgICAgICAg
IEhhcm1TaGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwaXRj
aEwsIExhbWJkYV9RMTAsIExUUF9zY2FsZV9RMTQsIGFyY2gpIFwKLSAgICAoKHZvaWQpKGFyY2gp
LHNpbGtfTlNRX2MocHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeF9RMywgcHVsc2VzLCBQcmVkQ29l
Zl9RMTIsIExUUENvZWZfUTE0LCBBUjJfUTEzLCBcCisgICAgKCh2b2lkKShhcmNoKSxzaWxrX05T
UV9jKHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIsIExU
UENvZWZfUTE0LCBBUl9RMTMsIFwKICAgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1Ex
NCwgVGlsdF9RMTQsIExGX3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCBM
VFBfc2NhbGVfUTE0KSkKICNlbmRpZgogCiAvKiBOb2lzZSBzaGFwaW5nIHVzaW5nIGRlbGF5ZWQg
ZGVjaXNpb24gKi8KIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAotICAgIGNvbnN0IHNpbGtfZW5j
b2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNp
bGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNp
bGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwog
ICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAg
ICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFs
ICAgICAgICAqLworICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICB4MTZbXSwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgSW5wdXQgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICBwdWxzZXNb
XSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUXVhbnRpemVkIHB1
bHNlIHNpZ25hbCAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAgICAgICBQ
cmVkQ29lZl9RMTJbIDIgKiBNQVhfTFBDX09SREVSIF0sICAgICAgICAgIC8qIEkgICAgU2hvcnQg
dGVybSBwcmVkaWN0aW9uIGNvZWZzICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICAg
ICAgICBMVFBDb2VmX1ExNFsgTFRQX09SREVSICogTUFYX05CX1NVQkZSIF0sICAgIC8qIEkgICAg
TG9uZyB0ZXJtIHByZWRpY3Rpb24gY29lZnMgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50MTYg
ICAgICAgICAgICBBUjJfUTEzWyBNQVhfTkJfU1VCRlIgKiBNQVhfU0hBUEVfTFBDX09SREVSIF0s
IC8qIEkgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAqLworICAgIGNvbnN0IG9wdXNf
aW50MTYgICAgICAgICAgICBBUl9RMTNbIE1BWF9OQl9TVUJGUiAqIE1BWF9TSEFQRV9MUENfT1JE
RVIgXSwgLyogSSAgTm9pc2Ugc2hhcGluZyBjb2VmcyAgICAgICAgICAgICAqLwogICAgIGNvbnN0
IG9wdXNfaW50ICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1ExNFsgTUFYX05CX1NVQkZSIF0s
ICAgICAgICAgIC8qIEkgICAgTG9uZyB0ZXJtIHNoYXBpbmcgY29lZnMgICAgICAgICAqLwogICAg
IGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBUaWx0X1ExNFsgTUFYX05CX1NVQkZSIF0sICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgU3BlY3RyYWwgdGlsdCAgICAgICAgICAgICAgICAgICAq
LwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBMRl9zaHBfUTE0WyBNQVhfTkJfU1VC
RlIgXSwgICAgICAgICAgICAgICAgIC8qIEkgICAgTG93IGZyZXF1ZW5jeSBzaGFwaW5nIGNvZWZz
ICAgICAqLwpAQCAtMjg3LDkgKzI5MSw5IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19jKAogKTsK
IAogI2lmICFkZWZpbmVkKE9WRVJSSURFX3NpbGtfTlNRX2RlbF9kZWMpCi0jZGVmaW5lIHNpbGtf
TlNRX2RlbF9kZWMocHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeF9RMywgcHVsc2VzLCBQcmVkQ29l
Zl9RMTIsIExUUENvZWZfUTE0LCBBUjJfUTEzLCBcCisjZGVmaW5lIHNpbGtfTlNRX2RlbF9kZWMo
cHNFbmNDLCBOU1EsIHBzSW5kaWNlcywgeDE2LCBwdWxzZXMsIFByZWRDb2VmX1ExMiwgTFRQQ29l
Zl9RMTQsIEFSX1ExMywgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgSGFybVNoYXBlR2Fp
bl9RMTQsIFRpbHRfUTE0LCBMRl9zaHBfUTE0LCBHYWluc19RMTYsIHBpdGNoTCwgTGFtYmRhX1Ex
MCwgTFRQX3NjYWxlX1ExNCwgYXJjaCkgXAotICAgICgodm9pZCkoYXJjaCksc2lsa19OU1FfZGVs
X2RlY19jKHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHhfUTMsIHB1bHNlcywgUHJlZENvZWZfUTEy
LCBMVFBDb2VmX1ExNCwgQVIyX1ExMywgXAorICAgICgodm9pZCkoYXJjaCksc2lsa19OU1FfZGVs
X2RlY19jKHBzRW5jQywgTlNRLCBwc0luZGljZXMsIHgxNiwgcHVsc2VzLCBQcmVkQ29lZl9RMTIs
IExUUENvZWZfUTE0LCBBUl9RMTMsIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIEhhcm1T
aGFwZUdhaW5fUTE0LCBUaWx0X1ExNCwgTEZfc2hwX1ExNCwgR2FpbnNfUTE2LCBwaXRjaEwsIExh
bWJkYV9RMTAsIExUUF9zY2FsZV9RMTQpKQogI2VuZGlmCiAKQEAgLTM0Niw2ICszNTAsNyBAQCB2
b2lkIHNpbGtfTkxTRl9WUSgKICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAgZXJyX1Ey
NltdLCAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIFF1YW50aXphdGlvbiBlcnJvcnMgW0td
ICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVzX2ludDE2ICAgICAgICAgICAg
aW5fUTE1W10sICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElucHV0IHZlY3RvcnMgdG8g
YmUgcXVhbnRpemVkIFtMUENfb3JkZXJdICAgKi8KICAgICBjb25zdCBvcHVzX3VpbnQ4ICAgICAg
ICAgICAgcENCX1E4W10sICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvZGVib29rIHZl
Y3RvcnMgW0sqTFBDX29yZGVyXSAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBvcHVzX2ludDE2
ICAgICAgICAgICAgcFdnaHRfUTlbXSwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIENvZGVi
b29rIHdlaWdodHMgW0sqTFBDX29yZGVyXSAgICAgICAgICAgICAgKi8KICAgICBjb25zdCBvcHVz
X2ludCAgICAgICAgICAgICAgSywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAg
IE51bWJlciBvZiBjb2RlYm9vayB2ZWN0b3JzICAgICAgICAgICAgICAgICAgKi8KICAgICBjb25z
dCBvcHVzX2ludCAgICAgICAgICAgICAgTFBDX29yZGVyICAgICAgICAgICAgICAgICAgICAgICAv
KiBJICAgIE51bWJlciBvZiBMUENzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvbWlwcy9OU1FfZGVsX2RlY19taXBzcjEuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9taXBzL05T
UV9kZWxfZGVjX21pcHNyMS5oCmluZGV4IGFkMWNmZTJhOWIwODQxMDEyNzAxYjFmZTc3ZDdkYTJm
MDQ0ZDBiMjYuLmNkNzA3MTNhOGY1ZDk0NTNlYzYyZDc3ODZiYzMwYTkwYWJkZGM0MDkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay9taXBzL05TUV9kZWxfZGVjX21pcHNyMS5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9taXBzL05TUV9k
ZWxfZGVjX21pcHNyMS5oCkBAIC02MSw3ICs2MSw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBzaWxr
X25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgIG9wdXNfaW50ICAgICAgICAgICAg
cHJlZGljdExQQ09yZGVyLCAgICAgICAgLyogSSAgICBQcmVkaWN0aW9uIGZpbHRlciBvcmRlciAg
ICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgd2FycGluZ19RMTYsICAgICAg
ICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAg
IG9wdXNfaW50ICAgICAgICAgICAgblN0YXRlc0RlbGF5ZWREZWNpc2lvbiwgLyogSSAgICBOdW1i
ZXIgb2Ygc3RhdGVzIGluIGRlY2lzaW9uIHRyZWUgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAg
ICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAgLyogSSAgICBJbmRleCB0byBuZXdlc3Qgc2FtcGxl
cyBpbiBidWZmZXJzICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgKnNtcGxfYnVmX2lkeCwg
ICAgICAgICAgLyogSS9PICBJbmRleCB0byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZmZXJzICAqLwog
ICAgIG9wdXNfaW50ICAgICAgICAgICAgZGVjaXNpb25EZWxheSwgICAgICAgICAgLyogSSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIGludCAgICAgICAgICAg
ICAgICAgYXJjaCAgICAgICAgICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLwogKQpAQCAtMzIzLDggKzMyMyw5IEBAIHN0YXRpYyBpbmxpbmUg
dm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcl9kZWxfZGVjKAogICAgICAgICAgICAgcHNT
U1sgMSBdLnhxX1ExNCAgICAgICA9IHhxX1ExNDsKICAgICAgICAgfQogCi0gICAgICAgICpzbXBs
X2J1Zl9pZHggID0gKCAqc21wbF9idWZfaWR4IC0gMSApICYgREVDSVNJT05fREVMQVlfTUFTSzsg
ICAgICAgICAgICAgICAgICAgLyogSW5kZXggdG8gbmV3ZXN0IHNhbXBsZXMgICAgICAgICAgICAg
ICovCi0gICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCAqc21wbF9idWZfaWR4ICsgZGVjaXNpb25E
ZWxheSApICYgREVDSVNJT05fREVMQVlfTUFTSzsgICAgICAgLyogSW5kZXggdG8gZGVjaXNpb25E
ZWxheSBvbGQgc2FtcGxlcyAgICovCisgICAgICAgICpzbXBsX2J1Zl9pZHggID0gKCAqc21wbF9i
dWZfaWR4IC0gMSApICUgREVDSVNJT05fREVMQVk7CisgICAgICAgIGlmKCAqc21wbF9idWZfaWR4
IDwgMCApICpzbXBsX2J1Zl9pZHggKz0gREVDSVNJT05fREVMQVk7CisgICAgICAgIGxhc3Rfc21w
bGVfaWR4ID0gKCAqc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheSApICUgREVDSVNJT05fREVM
QVk7CiAKICAgICAgICAgLyogRmluZCB3aW5uZXIgKi8KICAgICAgICAgUkRtaW5fUTEwID0gcHNT
YW1wbGVTdGF0ZVsgMCBdWyAwIF0uUkRfUTEwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL21pcHMvc2lncHJv
Y19maXhfbWlwc3IxLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvbWlwcy9zaWdwcm9jX2ZpeF9taXBzcjEuaAppbmRleCAzYjBh
Njk1MzY1NmQ5NzMxOGYzYWE4M2ViYmE5ZjIwOGJlMWJkODhiLi41MTUyMGMwYTZmZDU1MGNiODcy
OTA2MjQ0ZTZhZmMxYzBjYzEzOGFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvbWlwcy9zaWdwcm9jX2ZpeF9t
aXBzcjEuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NpbGsvbWlwcy9zaWdwcm9jX2ZpeF9taXBzcjEuaApAQCAtMjgsMTEgKzI4
LDYgQEAgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAjaWZuZGVmIFNJTEtfU0lHUFJPQ19G
SVhfTUlQU1IxX0gKICNkZWZpbmUgU0lMS19TSUdQUk9DX0ZJWF9NSVBTUjFfSAogCi0jaWZkZWYg
IF9fY3BsdXNwbHVzCi1leHRlcm4gIkMiCi17Ci0jZW5kaWYKLQogI3VuZGVmIHNpbGtfU0FUMTYK
IHN0YXRpYyBpbmxpbmUgc2hvcnQgaW50IHNpbGtfU0FUMTYoaW50IGEpCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvcHJvY2Vzc19OTFNGcy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3Byb2Nlc3NfTkxTRnMuYwppbmRleCAwYWI3MWYw
MTYzNDA3Zjg1NGJjNDJmMDZhNTkwMGU2YjFhYmUyOTM3Li4yZjEwZjhkZjViM2Q3MGU1ODIzZmUy
ZGI1NWI1YjExNzRiMjZhZmJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvcHJvY2Vzc19OTFNGcy5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c2lsay9wcm9jZXNzX05MU0ZzLmMKQEAgLTg5LDcgKzg5LDcgQEAgdm9pZCBzaWxrX3Byb2Nlc3Nf
TkxTRnMoCiAgICAgICAgIE5MU0ZfbXVfUTIwLCBwc0VuY0MtPk5MU0ZfTVNWUV9TdXJ2aXZvcnMs
IHBzRW5jQy0+aW5kaWNlcy5zaWduYWxUeXBlICk7CiAKICAgICAvKiBDb252ZXJ0IHF1YW50aXpl
ZCBOTFNGcyBiYWNrIHRvIExQQyBjb2VmZmljaWVudHMgKi8KLSAgICBzaWxrX05MU0YyQSggUHJl
ZENvZWZfUTEyWyAxIF0sIHBOTFNGX1ExNSwgcHNFbmNDLT5wcmVkaWN0TFBDT3JkZXIgKTsKKyAg
ICBzaWxrX05MU0YyQSggUHJlZENvZWZfUTEyWyAxIF0sIHBOTFNGX1ExNSwgcHNFbmNDLT5wcmVk
aWN0TFBDT3JkZXIsIHBzRW5jQy0+YXJjaCApOwogCiAgICAgaWYoIGRvSW50ZXJwb2xhdGUgKSB7
CiAgICAgICAgIC8qIENhbGN1bGF0ZSB0aGUgaW50ZXJwb2xhdGVkLCBxdWFudGl6ZWQgTFNGIHZl
Y3RvciBmb3IgdGhlIGZpcnN0IGhhbGYgKi8KQEAgLTk3LDcgKzk3LDcgQEAgdm9pZCBzaWxrX3By
b2Nlc3NfTkxTRnMoCiAgICAgICAgICAgICBwc0VuY0MtPmluZGljZXMuTkxTRkludGVycENvZWZf
UTIsIHBzRW5jQy0+cHJlZGljdExQQ09yZGVyICk7CiAKICAgICAgICAgLyogQ29udmVydCBiYWNr
IHRvIExQQyBjb2VmZmljaWVudHMgKi8KLSAgICAgICAgc2lsa19OTFNGMkEoIFByZWRDb2VmX1Ex
MlsgMCBdLCBwTkxTRjBfdGVtcF9RMTUsIHBzRW5jQy0+cHJlZGljdExQQ09yZGVyICk7CisgICAg
ICAgIHNpbGtfTkxTRjJBKCBQcmVkQ29lZl9RMTJbIDAgXSwgcE5MU0YwX3RlbXBfUTE1LCBwc0Vu
Y0MtPnByZWRpY3RMUENPcmRlciwgcHNFbmNDLT5hcmNoICk7CiAKICAgICB9IGVsc2UgewogICAg
ICAgICAvKiBDb3B5IExQQyBjb2VmZmljaWVudHMgZm9yIGZpcnN0IGhhbGYgZnJvbSBzZWNvbmQg
aGFsZiAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3F1YW50X0xUUF9nYWlucy5jIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3F1YW50X0xU
UF9nYWlucy5jCmluZGV4IDUxM2E4YzQ0NjhmZmM0Yzg3YTc0MTQ2MDA2NWY2M2ViZTY3NzUyYTYu
LmQ2YjhlZmY4ZDE4NjRjY2ZhMjFhMjZhNmJjNTk3ZWJjMmRiY2VkYjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2ls
ay9xdWFudF9MVFBfZ2FpbnMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvcXVhbnRfTFRQX2dhaW5zLmMKQEAgLTMzLDE0
ICszMywxNSBAQCBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICNpbmNsdWRlICJ0dW5pbmdf
cGFyYW1ldGVycy5oIgogCiB2b2lkIHNpbGtfcXVhbnRfTFRQX2dhaW5zKAotICAgIG9wdXNfaW50
MTYgICAgICAgICAgICAgICAgICBCX1ExNFsgTUFYX05CX1NVQkZSICogTFRQX09SREVSIF0sICAg
ICAgICAgIC8qIEkvTyAgKHVuKXF1YW50aXplZCBMVFAgZ2FpbnMgICAgICAgICAqLworICAgIG9w
dXNfaW50MTYgICAgICAgICAgICAgICAgICBCX1ExNFsgTUFYX05CX1NVQkZSICogTFRQX09SREVS
IF0sICAgICAgICAgIC8qIE8gICAgUXVhbnRpemVkIExUUCBnYWlucyAgICAgICAgICAgICAqLwog
ICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICBjYmtfaW5kZXhbIE1BWF9OQl9TVUJGUiBd
LCAgICAgICAgICAgICAgICAgIC8qIE8gICAgQ29kZWJvb2sgSW5kZXggICAgICAgICAgICAgICAg
ICAqLwogICAgIG9wdXNfaW50OCAgICAgICAgICAgICAgICAgICAqcGVyaW9kaWNpdHlfaW5kZXgs
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE8gICAgUGVyaW9kaWNpdHkgSW5kZXggICAgICAg
ICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAqc3VtX2xvZ19nYWlu
X1E3LCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgQ3VtdWxhdGl2ZSBtYXggcHJl
ZGljdGlvbiBnYWluICAqLwotICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICBXX1ExOFsg
TUFYX05CX1NVQkZSKkxUUF9PUkRFUipMVFBfT1JERVIgXSwgIC8qIEkgICAgRXJyb3IgV2VpZ2h0
cyBpbiBRMTggICAgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAgICAgICBt
dV9ROSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTXUgdmFs
dWUgKFIvRCB0cmFkZW9mZikgICAgICAgICAqLwotICAgIG9wdXNfaW50ICAgICAgICAgICAgICAg
ICAgICBsb3dDb21wbGV4aXR5LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAg
RmxhZyBmb3IgbG93IGNvbXBsZXhpdHkgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAg
ICAgICAgICAgICBuYl9zdWJmciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgbnVtYmVyIG9mIHN1YmZyYW1lcyAgICAgICAgICAgICAqLworICAgIG9wdXNfaW50ICAg
ICAgICAgICAgICAgICAgICAqcHJlZF9nYWluX2RCX1E3LCAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIE8gICAgTFRQIHByZWRpY3Rpb24gZ2FpbiAgICAgICAgICAgICAqLworICAgIGNvbnN0
IG9wdXNfaW50MzIgICAgICAgICAgICBYWF9RMTdbIE1BWF9OQl9TVUJGUipMVFBfT1JERVIqTFRQ
X09SREVSIF0sIC8qIEkgICAgQ29ycmVsYXRpb24gbWF0cml4IGluIFExOCAgICAgICAqLworICAg
IGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4WF9RMTdbIE1BWF9OQl9TVUJGUipMVFBfT1JE
RVIgXSwgICAgICAgICAgIC8qIEkgICAgQ29ycmVsYXRpb24gdmVjdG9yIGluIFExOCAgICAgICAq
LworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBzdWJmcl9sZW4sICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHNhbXBsZXMgcGVyIHN1YmZy
YW1lICAqLworICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAgICBuYl9zdWJmciwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIHN1YmZyYW1lcyAg
ICAgICAgICAgICAqLwogICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICBhcmNoICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUnVuLXRpbWUgYXJjaGl0
ZWN0dXJlICAgICAgICAgICAqLwogKQogewpAQCAtNDksMTYgKzUwLDE2IEBAIHZvaWQgc2lsa19x
dWFudF9MVFBfZ2FpbnMoCiAgICAgY29uc3Qgb3B1c191aW50OCAgICAgKmNsX3B0cl9RNTsKICAg
ICBjb25zdCBvcHVzX2ludDggICAgICAqY2JrX3B0cl9RNzsKICAgICBjb25zdCBvcHVzX3VpbnQ4
ICAgICAqY2JrX2dhaW5fcHRyX1E3OwotICAgIGNvbnN0IG9wdXNfaW50MTYgICAgICpiX1ExNF9w
dHI7Ci0gICAgY29uc3Qgb3B1c19pbnQzMiAgICAgKldfUTE4X3B0cjsKLSAgICBvcHVzX2ludDMy
ICAgICAgICAgICByYXRlX2Rpc3RfUTE0X3N1YmZyLCByYXRlX2Rpc3RfUTE0LCBtaW5fcmF0ZV9k
aXN0X1ExNDsKLSAgICBvcHVzX2ludDMyICAgICAgICAgICBzdW1fbG9nX2dhaW5fdG1wX1E3LCBi
ZXN0X3N1bV9sb2dfZ2Fpbl9RNywgbWF4X2dhaW5fUTcsIGdhaW5fUTc7CisgICAgY29uc3Qgb3B1
c19pbnQzMiAgICAgKlhYX1ExN19wdHIsICp4WF9RMTdfcHRyOworICAgIG9wdXNfaW50MzIgICAg
ICAgICAgIHJlc19ucmdfUTE1X3N1YmZyLCByZXNfbnJnX1ExNSwgcmF0ZV9kaXN0X1E3X3N1YmZy
LCByYXRlX2Rpc3RfUTcsIG1pbl9yYXRlX2Rpc3RfUTc7CisgICAgb3B1c19pbnQzMiAgICAgICAg
ICAgc3VtX2xvZ19nYWluX3RtcF9RNywgYmVzdF9zdW1fbG9nX2dhaW5fUTcsIG1heF9nYWluX1E3
OworICAgIG9wdXNfaW50ICAgICAgICAgICAgIGdhaW5fUTc7CiAKICAgICAvKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogICAgIC8qIGl0ZXJhdGUg
b3ZlciBkaWZmZXJlbnQgY29kZWJvb2tzIHdpdGggZGlmZmVyZW50ICovCiAgICAgLyogcmF0ZXMv
ZGlzdG9ydGlvbnMsIGFuZCBjaG9vc2UgYmVzdCAqLwogICAgIC8qKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0gICAgbWluX3JhdGVfZGlzdF9RMTQg
PSBzaWxrX2ludDMyX01BWDsKKyAgICBtaW5fcmF0ZV9kaXN0X1E3ID0gc2lsa19pbnQzMl9NQVg7
CiAgICAgYmVzdF9zdW1fbG9nX2dhaW5fUTcgPSAwOwogICAgIGZvciggayA9IDA7IGsgPCAzOyBr
KysgKSB7CiAgICAgICAgIC8qIFNhZmV0eSBtYXJnaW4gZm9yIHBpdGNoIGdhaW4gY29udHJvbCwg
dG8gdGFrZSBpbnRvIGFjY291bnQgZmFjdG9ycwpAQCAtNzAsNTMgKzcxLDQ3IEBAIHZvaWQgc2ls
a19xdWFudF9MVFBfZ2FpbnMoCiAgICAgICAgIGNia19nYWluX3B0cl9RNyA9IHNpbGtfTFRQX3Zx
X2dhaW5fcHRyc19RN1sgayBdOwogICAgICAgICBjYmtfc2l6ZSAgID0gc2lsa19MVFBfdnFfc2l6
ZXNbICAgICAgICAgIGsgXTsKIAotICAgICAgICAvKiBTZXQgdXAgcG9pbnRlciB0byBmaXJzdCBz
dWJmcmFtZSAqLwotICAgICAgICBXX1ExOF9wdHIgPSBXX1ExODsKLSAgICAgICAgYl9RMTRfcHRy
ID0gQl9RMTQ7CisgICAgICAgIC8qIFNldCB1cCBwb2ludGVycyB0byBmaXJzdCBzdWJmcmFtZSAq
LworICAgICAgICBYWF9RMTdfcHRyID0gWFhfUTE3OworICAgICAgICB4WF9RMTdfcHRyID0geFhf
UTE3OwogCi0gICAgICAgIHJhdGVfZGlzdF9RMTQgPSAwOworICAgICAgICByZXNfbnJnX1ExNSA9
IDA7CisgICAgICAgIHJhdGVfZGlzdF9RNyA9IDA7CiAgICAgICAgIHN1bV9sb2dfZ2Fpbl90bXBf
UTcgPSAqc3VtX2xvZ19nYWluX1E3OwogICAgICAgICBmb3IoIGogPSAwOyBqIDwgbmJfc3ViZnI7
IGorKyApIHsKICAgICAgICAgICAgIG1heF9nYWluX1E3ID0gc2lsa19sb2cybGluKCAoIFNJTEtf
RklYX0NPTlNUKCBNQVhfU1VNX0xPR19HQUlOX0RCIC8gNi4wLCA3ICkgLSBzdW1fbG9nX2dhaW5f
dG1wX1E3ICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIFNJTEtf
RklYX0NPTlNUKCA3LCA3ICkgKSAtIGdhaW5fc2FmZXR5OwotCiAgICAgICAgICAgICBzaWxrX1ZR
X1dNYXRfRUMoCiAgICAgICAgICAgICAgICAgJnRlbXBfaWR4WyBqIF0sICAgICAgICAgLyogTyAg
ICBpbmRleCBvZiBiZXN0IGNvZGVib29rIHZlY3RvciAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgICAgICAgICAgICAgJnJhdGVfZGlzdF9RMTRfc3ViZnIsICAgLyogTyAgICBiZXN0
IHdlaWdodGVkIHF1YW50aXphdGlvbiBlcnJvciArIG11ICogcmF0ZSAgICAgICAgICAgICovCisg
ICAgICAgICAgICAgICAgJnJlc19ucmdfUTE1X3N1YmZyLCAgICAgLyogTyAgICByZXNpZHVhbCBl
bmVyZ3kgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAg
ICAgICAgICAgJnJhdGVfZGlzdF9RN19zdWJmciwgICAgLyogTyAgICBiZXN0IHdlaWdodGVkIHF1
YW50aXphdGlvbiBlcnJvciArIG11ICogcmF0ZSAgICAgICAgICAgICovCiAgICAgICAgICAgICAg
ICAgJmdhaW5fUTcsICAgICAgICAgICAgICAgLyogTyAgICBzdW0gb2YgYWJzb2x1dGUgTFRQIGNv
ZWZmaWNpZW50cyAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgYl9R
MTRfcHRyLCAgICAgICAgICAgICAgLyogSSAgICBpbnB1dCB2ZWN0b3IgdG8gYmUgcXVhbnRpemVk
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgV19RMThfcHRy
LCAgICAgICAgICAgICAgLyogSSAgICB3ZWlnaHRpbmcgbWF0cml4ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgICAgICAgICAgWFhfUTE3X3B0ciwgICAg
ICAgICAgICAgLyogSSAgICBjb3JyZWxhdGlvbiBtYXRyaXggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgICAgICAgICAgICAgeFhfUTE3X3B0ciwgICAgICAgICAg
ICAgLyogSSAgICBjb3JyZWxhdGlvbiB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgY2JrX3B0cl9RNywgICAgICAgICAgICAgLyog
SSAgICBjb2RlYm9vayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiAgICAgICAgICAgICAgICAgY2JrX2dhaW5fcHRyX1E3LCAgICAgICAgLyogSSAgICBj
b2RlYm9vayBlZmZlY3RpdmUgZ2FpbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CiAgICAgICAgICAgICAgICAgY2xfcHRyX1E1LCAgICAgICAgICAgICAgLyogSSAgICBjb2RlIGxl
bmd0aCBmb3IgZWFjaCBjb2RlYm9vayB2ZWN0b3IgICAgICAgICAgICAgICAgICAgICovCi0gICAg
ICAgICAgICAgICAgbXVfUTksICAgICAgICAgICAgICAgICAgLyogSSAgICB0cmFkZW9mZiBiZXR3
ZWVuIHdlaWdodGVkIGVycm9yIGFuZCByYXRlICAgICAgICAgICAgICAgICovCisgICAgICAgICAg
ICAgICAgc3ViZnJfbGVuLCAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2Ygc2FtcGxlcyBw
ZXIgc3ViZnJhbWUgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAg
bWF4X2dhaW5fUTcsICAgICAgICAgICAgLyogSSAgICBtYXhpbXVtIHN1bSBvZiBhYnNvbHV0ZSBM
VFAgY29lZmZpY2llbnRzICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgY2JrX3Np
emUsICAgICAgICAgICAgICAgLyogSSAgICBudW1iZXIgb2YgdmVjdG9ycyBpbiBjb2RlYm9vayAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgYXJjaCAgICAgICAg
ICAgICAgICAgICAgLyogSSAgICBSdW4tdGltZSBhcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICApOwogCi0gICAgICAgICAgICByYXRl
X2Rpc3RfUTE0ID0gc2lsa19BRERfUE9TX1NBVDMyKCByYXRlX2Rpc3RfUTE0LCByYXRlX2Rpc3Rf
UTE0X3N1YmZyICk7CisgICAgICAgICAgICByZXNfbnJnX1ExNSAgPSBzaWxrX0FERF9QT1NfU0FU
MzIoIHJlc19ucmdfUTE1LCByZXNfbnJnX1ExNV9zdWJmciApOworICAgICAgICAgICAgcmF0ZV9k
aXN0X1E3ID0gc2lsa19BRERfUE9TX1NBVDMyKCByYXRlX2Rpc3RfUTcsIHJhdGVfZGlzdF9RN19z
dWJmciApOwogICAgICAgICAgICAgc3VtX2xvZ19nYWluX3RtcF9RNyA9IHNpbGtfbWF4KDAsIHN1
bV9sb2dfZ2Fpbl90bXBfUTcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBzaWxr
X2xpbjJsb2coIGdhaW5fc2FmZXR5ICsgZ2Fpbl9RNyApIC0gU0lMS19GSVhfQ09OU1QoIDcsIDcg
KSk7CiAKLSAgICAgICAgICAgIGJfUTE0X3B0ciArPSBMVFBfT1JERVI7Ci0gICAgICAgICAgICBX
X1ExOF9wdHIgKz0gTFRQX09SREVSICogTFRQX09SREVSOworICAgICAgICAgICAgWFhfUTE3X3B0
ciArPSBMVFBfT1JERVIgKiBMVFBfT1JERVI7CisgICAgICAgICAgICB4WF9RMTdfcHRyICs9IExU
UF9PUkRFUjsKICAgICAgICAgfQogCi0gICAgICAgIC8qIEF2b2lkIG5ldmVyIGZpbmRpbmcgYSBj
b2RlYm9vayAqLwotICAgICAgICByYXRlX2Rpc3RfUTE0ID0gc2lsa19taW4oIHNpbGtfaW50MzJf
TUFYIC0gMSwgcmF0ZV9kaXN0X1ExNCApOwotCi0gICAgICAgIGlmKCByYXRlX2Rpc3RfUTE0IDwg
bWluX3JhdGVfZGlzdF9RMTQgKSB7Ci0gICAgICAgICAgICBtaW5fcmF0ZV9kaXN0X1ExNCA9IHJh
dGVfZGlzdF9RMTQ7CisgICAgICAgIGlmKCByYXRlX2Rpc3RfUTcgPD0gbWluX3JhdGVfZGlzdF9R
NyApIHsKKyAgICAgICAgICAgIG1pbl9yYXRlX2Rpc3RfUTcgPSByYXRlX2Rpc3RfUTc7CiAgICAg
ICAgICAgICAqcGVyaW9kaWNpdHlfaW5kZXggPSAob3B1c19pbnQ4KWs7CiAgICAgICAgICAgICBz
aWxrX21lbWNweSggY2JrX2luZGV4LCB0ZW1wX2lkeCwgbmJfc3ViZnIgKiBzaXplb2YoIG9wdXNf
aW50OCApICk7CiAgICAgICAgICAgICBiZXN0X3N1bV9sb2dfZ2Fpbl9RNyA9IHN1bV9sb2dfZ2Fp
bl90bXBfUTc7CiAgICAgICAgIH0KLQotICAgICAgICAvKiBCcmVhayBlYXJseSBpbiBsb3ctY29t
cGxleGl0eSBtb2RlIGlmIHJhdGUgZGlzdG9ydGlvbiBpcyBiZWxvdyB0aHJlc2hvbGQgKi8KLSAg
ICAgICAgaWYoIGxvd0NvbXBsZXhpdHkgJiYgKCByYXRlX2Rpc3RfUTE0IDwgc2lsa19MVFBfZ2Fp
bl9taWRkbGVfYXZnX1JEX1ExNCApICkgewotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0K
ICAgICB9CiAKICAgICBjYmtfcHRyX1E3ID0gc2lsa19MVFBfdnFfcHRyc19RN1sgKnBlcmlvZGlj
aXR5X2luZGV4IF07CkBAIC0xMjUsNSArMTIwLDEzIEBAIHZvaWQgc2lsa19xdWFudF9MVFBfZ2Fp
bnMoCiAgICAgICAgICAgICBCX1ExNFsgaiAqIExUUF9PUkRFUiArIGsgXSA9IHNpbGtfTFNISUZU
KCBjYmtfcHRyX1E3WyBjYmtfaW5kZXhbIGogXSAqIExUUF9PUkRFUiArIGsgXSwgNyApOwogICAg
ICAgICB9CiAgICAgfQorCisgICAgaWYoIG5iX3N1YmZyID09IDIgKSB7CisgICAgICAgIHJlc19u
cmdfUTE1ID0gc2lsa19SU0hJRlQzMiggcmVzX25yZ19RMTUsIDEgKTsKKyAgICB9IGVsc2Ugewor
ICAgICAgICByZXNfbnJnX1ExNSA9IHNpbGtfUlNISUZUMzIoIHJlc19ucmdfUTE1LCAyICk7Cisg
ICAgfQorCiAgICAgKnN1bV9sb2dfZ2Fpbl9RNyA9IGJlc3Rfc3VtX2xvZ19nYWluX1E3OworICAg
ICpwcmVkX2dhaW5fZEJfUTcgPSAob3B1c19pbnQpc2lsa19TTVVMQkIoIC0zLCBzaWxrX2xpbjJs
b2coIHJlc19ucmdfUTE1ICkgLSAoIDE1IDw8IDcgKSApOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3N0
cnVjdHMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvc2lsay9zdHJ1Y3RzLmgKaW5kZXggODI3ODI5ZGM2ZjMyY2UxMzQ4NWJlMTdhNzFl
ZmMzOTYzZDdjNDIyNC4uNGZmNTkwYjA0Y2FiYTUwODM1ZmNkMTgwMDk0MzdiYzc5MGFhYWFhZSAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL3N0cnVjdHMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvc3RydWN0cy5oCkBAIC00OCw2ICs0
OCw3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAgICAg
c0xQQ19RMTRbIE1BWF9TVUJfRlJBTUVfTEVOR1RIICsgTlNRX0xQQ19CVUZfTEVOR1RIIF07CiAg
ICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHNBUjJfUTE0WyBNQVhfU0hBUEVfTFBDX09S
REVSIF07CiAgICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHNMRl9BUl9zaHBfUTE0Owor
ICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICBzRGlmZl9zaHBfUTE0OwogICAgIG9wdXNf
aW50ICAgICAgICAgICAgICAgICAgICBsYWdQcmV2OwogICAgIG9wdXNfaW50ICAgICAgICAgICAg
ICAgICAgICBzTFRQX2J1Zl9pZHg7CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgIHNM
VFBfc2hwX2J1Zl9pZHg7CkBAIC04Niw2ICs4Nyw3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBj
b25zdCBvcHVzX2ludDE2ICAgICAgICAgICAgIHF1YW50U3RlcFNpemVfUTE2OwogICAgIGNvbnN0
IG9wdXNfaW50MTYgICAgICAgICAgICAgaW52UXVhbnRTdGVwU2l6ZV9RNjsKICAgICBjb25zdCBv
cHVzX3VpbnQ4ICAgICAgICAgICAgICpDQjFfTkxTRl9RODsKKyAgICBjb25zdCBvcHVzX2ludDE2
ICAgICAgICAgICAgICpDQjFfV2dodF9ROTsKICAgICBjb25zdCBvcHVzX3VpbnQ4ICAgICAgICAg
ICAgICpDQjFfaUNERjsKICAgICBjb25zdCBvcHVzX3VpbnQ4ICAgICAgICAgICAgICpwcmVkX1E4
OwogICAgIGNvbnN0IG9wdXNfdWludDggICAgICAgICAgICAgKmVjX3NlbDsKQEAgLTE2OSw4ICsx
NzEsNiBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAg
ICBwaXRjaEVzdGltYXRpb25Db21wbGV4aXR5OyAgICAgICAgIC8qIENvbXBsZXhpdHkgbGV2ZWwg
Zm9yIHBpdGNoIGVzdGltYXRvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBv
cHVzX2ludCAgICAgICAgICAgICAgICAgICAgIHBpdGNoRXN0aW1hdGlvbkxQQ09yZGVyOyAgICAg
ICAgICAgLyogV2hpdGVuaW5nIGZpbHRlciBvcmRlciBmb3IgcGl0Y2ggZXN0aW1hdG9yICAgICAg
ICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIgICAgICAgICAgICAgICAgICAgcGl0
Y2hFc3RpbWF0aW9uVGhyZXNob2xkX1ExNjsgICAgICAvKiBUaHJlc2hvbGQgZm9yIHBpdGNoIGVz
dGltYXRvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgb3B1c19p
bnQgICAgICAgICAgICAgICAgICAgICBMVFBRdWFudExvd0NvbXBsZXhpdHk7ICAgICAgICAgICAg
IC8qIEZsYWcgZm9yIGxvdyBjb21wbGV4aXR5IExUUCBxdWFudGl6YXRpb24gICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgIG11X0xUUF9R
OTsgICAgICAgICAgICAgICAgICAgICAgICAgLyogUmF0ZS1kaXN0b3J0aW9uIHRyYWRlb2ZmIGlu
IExUUCBxdWFudGl6YXRpb24gICAgICAgICAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50MzIg
ICAgICAgICAgICAgICAgICAgc3VtX2xvZ19nYWluX1E3OyAgICAgICAgICAgICAgICAgICAvKiBD
dW11bGF0aXZlIG1heCBwcmVkaWN0aW9uIGdhaW4gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICAgICAgICAgICBOTFNGX01TVlFfU3Vy
dml2b3JzOyAgICAgICAgICAgICAgIC8qIE51bWJlciBvZiBzdXJ2aXZvcnMgaW4gTkxTRiBNU1ZR
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludCAgICAgICAg
ICAgICAgICAgICAgIGZpcnN0X2ZyYW1lX2FmdGVyX3Jlc2V0OyAgICAgICAgICAgLyogRmxhZyBm
b3IgZGVhY3RpdmF0aW5nIE5MU0YgaW50ZXJwb2xhdGlvbiwgcGl0Y2ggcHJlZGljdGlvbiAgICAg
ICAqLwpAQCAtMzAxLDYgKzMwMSw3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICAvKiBTdHVmZiB1
c2VkIGZvciBQTEMgKi8KICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgbG9zc0NudDsK
ICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgcHJldlNpZ25hbFR5cGU7CisgICAgaW50
ICAgICAgICAgICAgICAgICAgICAgICAgIGFyY2g7CiAKICAgICBzaWxrX1BMQ19zdHJ1Y3Qgc1BM
QzsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3N1bV9zcXJfc2hpZnQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay9zdW1fc3FyX3NoaWZ0
LmMKaW5kZXggMTI5ZGYxOTFkOGRlZDRkODRlMDAzYWVhMzZkOThhNTlhMzQ5ZGQ0Ny4uNGZkMGMz
ZDdkNTM2YzNiNWUzYmE1NDlkMTkwNDg4MzNkMDBiNGU2OSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3N1bV9z
cXJfc2hpZnQuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvc3VtX3Nxcl9zaGlmdC5jCkBAIC00MSw0MyArNDEsNDAgQEAg
dm9pZCBzaWxrX3N1bV9zcXJfc2hpZnQoCiApCiB7CiAgICAgb3B1c19pbnQgICBpLCBzaGZ0Owot
ICAgIG9wdXNfaW50MzIgbnJnX3RtcCwgbnJnOworICAgIG9wdXNfdWludDMyIG5yZ190bXA7Cisg
ICAgb3B1c19pbnQzMiBucmc7CiAKLSAgICBucmcgID0gMDsKLSAgICBzaGZ0ID0gMDsKLSAgICBs
ZW4tLTsKLSAgICBmb3IoIGkgPSAwOyBpIDwgbGVuOyBpICs9IDIgKSB7Ci0gICAgICAgIG5yZyA9
IHNpbGtfU01MQUJCX292Zmx3KCBucmcsIHhbIGkgXSwgeFsgaSBdICk7Ci0gICAgICAgIG5yZyA9
IHNpbGtfU01MQUJCX292Zmx3KCBucmcsIHhbIGkgKyAxIF0sIHhbIGkgKyAxIF0gKTsKLSAgICAg
ICAgaWYoIG5yZyA8IDAgKSB7Ci0gICAgICAgICAgICAvKiBTY2FsZSBkb3duICovCi0gICAgICAg
ICAgICBucmcgPSAob3B1c19pbnQzMilzaWxrX1JTSElGVF91aW50KCAob3B1c191aW50MzIpbnJn
LCAyICk7Ci0gICAgICAgICAgICBzaGZ0ID0gMjsKLSAgICAgICAgICAgIGkrPTI7Ci0gICAgICAg
ICAgICBicmVhazsKLSAgICAgICAgfQorICAgIC8qIERvIGEgZmlyc3QgcnVuIHdpdGggdGhlIG1h
eGltdW0gc2hpZnQgd2UgY291bGQgaGF2ZS4gKi8KKyAgICBzaGZ0ID0gMzEtc2lsa19DTFozMihs
ZW4pOworICAgIC8qIExldCdzIGJlIGNvbnNlcnZhdGl2ZSB3aXRoIHJvdW5kaW5nIGFuZCBzdGFy
dCB3aXRoIG5yZz1sZW4uICovCisgICAgbnJnICA9IGxlbjsKKyAgICBmb3IoIGkgPSAwOyBpIDwg
bGVuIC0gMTsgaSArPSAyICkgeworICAgICAgICBucmdfdG1wID0gc2lsa19TTVVMQkIoIHhbIGkg
XSwgeFsgaSBdICk7CisgICAgICAgIG5yZ190bXAgPSBzaWxrX1NNTEFCQl9vdmZsdyggbnJnX3Rt
cCwgeFsgaSArIDEgXSwgeFsgaSArIDEgXSApOworICAgICAgICBucmcgPSAob3B1c19pbnQzMilz
aWxrX0FERF9SU0hJRlRfdWludCggbnJnLCBucmdfdG1wLCBzaGZ0ICk7CiAgICAgfQotICAgIGZv
ciggOyBpIDwgbGVuOyBpICs9IDIgKSB7CisgICAgaWYoIGkgPCBsZW4gKSB7CisgICAgICAgIC8q
IE9uZSBzYW1wbGUgbGVmdCB0byBwcm9jZXNzICovCisgICAgICAgIG5yZ190bXAgPSBzaWxrX1NN
VUxCQiggeFsgaSBdLCB4WyBpIF0gKTsKKyAgICAgICAgbnJnID0gKG9wdXNfaW50MzIpc2lsa19B
RERfUlNISUZUX3VpbnQoIG5yZywgbnJnX3RtcCwgc2hmdCApOworICAgIH0KKyAgICBzaWxrX2Fz
c2VydCggbnJnID49IDAgKTsKKyAgICAvKiBNYWtlIHN1cmUgdGhlIHJlc3VsdCB3aWxsIGZpdCBp
biBhIDMyLWJpdCBzaWduZWQgaW50ZWdlciB3aXRoIHR3byBiaXRzCisgICAgICAgb2YgaGVhZHJv
b20uICovCisgICAgc2hmdCA9IHNpbGtfbWF4XzMyKDAsIHNoZnQrMyAtIHNpbGtfQ0xaMzIobnJn
KSk7CisgICAgbnJnID0gMDsKKyAgICBmb3IoIGkgPSAwIDsgaSA8IGxlbiAtIDE7IGkgKz0gMiAp
IHsKICAgICAgICAgbnJnX3RtcCA9IHNpbGtfU01VTEJCKCB4WyBpIF0sIHhbIGkgXSApOwogICAg
ICAgICBucmdfdG1wID0gc2lsa19TTUxBQkJfb3ZmbHcoIG5yZ190bXAsIHhbIGkgKyAxIF0sIHhb
IGkgKyAxIF0gKTsKLSAgICAgICAgbnJnID0gKG9wdXNfaW50MzIpc2lsa19BRERfUlNISUZUX3Vp
bnQoIG5yZywgKG9wdXNfdWludDMyKW5yZ190bXAsIHNoZnQgKTsKLSAgICAgICAgaWYoIG5yZyA8
IDAgKSB7Ci0gICAgICAgICAgICAvKiBTY2FsZSBkb3duICovCi0gICAgICAgICAgICBucmcgPSAo
b3B1c19pbnQzMilzaWxrX1JTSElGVF91aW50KCAob3B1c191aW50MzIpbnJnLCAyICk7Ci0gICAg
ICAgICAgICBzaGZ0ICs9IDI7Ci0gICAgICAgIH0KKyAgICAgICAgbnJnID0gKG9wdXNfaW50MzIp
c2lsa19BRERfUlNISUZUX3VpbnQoIG5yZywgbnJnX3RtcCwgc2hmdCApOwogICAgIH0KLSAgICBp
ZiggaSA9PSBsZW4gKSB7CisgICAgaWYoIGkgPCBsZW4gKSB7CiAgICAgICAgIC8qIE9uZSBzYW1w
bGUgbGVmdCB0byBwcm9jZXNzICovCiAgICAgICAgIG5yZ190bXAgPSBzaWxrX1NNVUxCQiggeFsg
aSBdLCB4WyBpIF0gKTsKICAgICAgICAgbnJnID0gKG9wdXNfaW50MzIpc2lsa19BRERfUlNISUZU
X3VpbnQoIG5yZywgbnJnX3RtcCwgc2hmdCApOwogICAgIH0KIAotICAgIC8qIE1ha2Ugc3VyZSB0
byBoYXZlIGF0IGxlYXN0IG9uZSBleHRyYSBsZWFkaW5nIHplcm8gKHR3byBsZWFkaW5nIHplcm9z
IGluIHRvdGFsKSAqLwotICAgIGlmKCBucmcgJiAweEMwMDAwMDAwICkgewotICAgICAgICBucmcg
PSBzaWxrX1JTSElGVF91aW50KCAob3B1c191aW50MzIpbnJnLCAyICk7Ci0gICAgICAgIHNoZnQg
Kz0gMjsKLSAgICB9CisgICAgc2lsa19hc3NlcnQoIG5yZyA+PSAwICk7CiAKICAgICAvKiBPdXRw
dXQgYXJndW1lbnRzICovCiAgICAgKnNoaWZ0ICA9IHNoZnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFi
bGVzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsvdGFibGVzLmgKaW5kZXggN2ZlYTZmZGEzOWRhNDYzMzg0YzMxNWQ1YjY1MmMz
MzUyZjY5NjE4Mi4uOGIwMzgwZWViMDk4NGMxN2IzODI1NjcyOTc4NTFjMmQ1YTI3MGFhZSAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zaWxrL3RhYmxlcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXMuaApAQCAtNzYsMTAgKzc2LDgg
QEAgZXh0ZXJuIGNvbnN0IG9wdXNfdWludDggIHNpbGtfTkxTRl9FWFRfaUNERlsgNyBdOwogZXh0
ZXJuIGNvbnN0IG9wdXNfdWludDggIHNpbGtfTFRQX3Blcl9pbmRleF9pQ0RGWyAzIF07ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qICAgMyAqLwogZXh0ZXJu
IGNvbnN0IG9wdXNfdWludDggICogY29uc3Qgc2lsa19MVFBfZ2Fpbl9pQ0RGX3B0cnNbIE5CX0xU
UF9DQktTIF07ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qICAgMyAqLwogZXh0ZXJuIGNv
bnN0IG9wdXNfdWludDggICogY29uc3Qgc2lsa19MVFBfZ2Fpbl9CSVRTX1E1X3B0cnNbIE5CX0xU
UF9DQktTIF07ICAgICAgICAgICAgICAgICAgICAgICAgIC8qICAgMyAqLwotZXh0ZXJuIGNvbnN0
IG9wdXNfaW50MTYgIHNpbGtfTFRQX2dhaW5fbWlkZGxlX2F2Z19SRF9RMTQ7CiBleHRlcm4gY29u
c3Qgb3B1c19pbnQ4ICAgKiBjb25zdCBzaWxrX0xUUF92cV9wdHJzX1E3WyBOQl9MVFBfQ0JLUyBd
OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogMTY4ICovCiBleHRlcm4gY29uc3Qg
b3B1c191aW50OCAgKiBjb25zdCBzaWxrX0xUUF92cV9nYWluX3B0cnNfUTdbTkJfTFRQX0NCS1Nd
OwotCiBleHRlcm4gY29uc3Qgb3B1c19pbnQ4ICAgc2lsa19MVFBfdnFfc2l6ZXNbIE5CX0xUUF9D
QktTIF07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogICAzICov
CiAKIGV4dGVybiBjb25zdCBvcHVzX3VpbnQ4ICBzaWxrX0xUUHNjYWxlX2lDREZbIDMgXTsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAgIDQgKi8K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvb3B1cy9zcmMvc2lsay90YWJsZXNfTFRQLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX0xUUC5jCmluZGV4IDBl
NmEwMjU0ZDVkYjU1MjYyY2VjZTAyNjk4ZDUzZWI0YjEzMjdkNmIuLjVlMTJjODY0M2U1YjBmMTVj
MWM5NDg2YTg4NDVjODMzZjFkZGYzNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXNfTFRQLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL3RhYmxlc19MVFAuYwpAQCAtNTEsOCArNTEsNiBAQCBzdGF0aWMgY29uc3Qgb3B1c191
aW50OCBzaWxrX0xUUF9nYWluX2lDREZfMlszMl0gPSB7CiAgICAgICAgIDI0LCAgICAgMjAsICAg
ICAxNiwgICAgIDEyLCAgICAgIDksICAgICAgNSwgICAgICAyLCAgICAgIDAKIH07CiAKLWNvbnN0
IG9wdXNfaW50MTYgc2lsa19MVFBfZ2Fpbl9taWRkbGVfYXZnX1JEX1ExNCA9IDEyMzA0OwotCiBz
dGF0aWMgY29uc3Qgb3B1c191aW50OCBzaWxrX0xUUF9nYWluX0JJVFNfUTVfMFs4XSA9IHsKICAg
ICAgICAgMTUsICAgIDEzMSwgICAgMTM4LCAgICAxMzgsICAgIDE1NSwgICAgMTU1LCAgICAxNzMs
ICAgIDE3MwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90YWJsZXNfTkxTRl9DQl9OQl9NQi5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxr
L3RhYmxlc19OTFNGX0NCX05CX01CLmMKaW5kZXggOGM1OWQyMDdhYTAwODA4NjU3YzY2MmI2NTg4
ZDFmY2ZjM2FjNzk1Yi4uMTk1ZDViOTViZDE1NGNjNGE5NGYyZWU2M2I3Njg4YTVlYzA2NzFmNyAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zaWxrL3RhYmxlc19OTFNGX0NCX05CX01CLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxlc19O
TFNGX0NCX05CX01CLmMKQEAgLTc0LDYgKzc0LDQxIEBAIHN0YXRpYyBjb25zdCBvcHVzX3VpbnQ4
IHNpbGtfTkxTRl9DQjFfTkJfTUJfUThbIDMyMCBdID0gewogICAgICAgICA2NCwgICAgIDg0LCAg
ICAxMDQsICAgIDExOCwgICAgMTU2LCAgICAxNzcsICAgIDIwMSwgICAgMjMwCiB9OwogCitzdGF0
aWMgY29uc3Qgb3B1c19pbnQxNiBzaWxrX05MU0ZfQ0IxX1dnaHRfUTlbIDMyMCBdID0geworICAg
ICAyODk3LCAyMzE0LCAyMzE0LCAyMzE0LCAyMjg3LCAyMjg3LCAyMzE0LCAyMzAwLCAyMzI3LCAy
Mjg3LAorICAgICAyODg4LCAyNTgwLCAyMzk0LCAyMzY3LCAyMzE0LCAyMjc0LCAyMjc0LCAyMjc0
LCAyMjc0LCAyMTk0LAorICAgICAyNDg3LCAyMzQwLCAyMzQwLCAyMzE0LCAyMzE0LCAyMzE0LCAy
MzQwLCAyMzQwLCAyMzY3LCAyMzU0LAorICAgICAzMjE2LCAyNzY2LCAyMzQwLCAyMzQwLCAyMzE0
LCAyMjc0LCAyMjIxLCAyMjA3LCAyMjYxLCAyMTk0LAorICAgICAyNDYwLCAyNDc0LCAyMzY3LCAy
Mzk0LCAyMzk0LCAyMzk0LCAyMzk0LCAyMzY3LCAyNDA3LCAyMzE0LAorICAgICAzNDc5LCAzMDU2
LCAyMTI3LCAyMjA3LCAyMjc0LCAyMjc0LCAyMjc0LCAyMjg3LCAyMzE0LCAyMjYxLAorICAgICAz
MjgyLCAzMTQxLCAyNTgwLCAyMzk0LCAyMjQ3LCAyMjIxLCAyMjA3LCAyMTk0LCAyMTk0LCAyMTE0
LAorICAgICA0MDk2LCAzODQ1LCAyMjIxLCAyNjIwLCAyNjIwLCAyNDA3LCAyMzE0LCAyMzk0LCAy
MzY3LCAyMDc0LAorICAgICAzMTc4LCAzMjQ0LCAyMzY3LCAyMjIxLCAyNTUzLCAyNDM0LCAyMzQw
LCAyMzE0LCAyMTY3LCAyMjIxLAorICAgICAzMzM4LCAzNDg4LCAyNzI2LCAyMTk0LCAyMjYxLCAy
NDYwLCAyMzU0LCAyMzY3LCAyMjA3LCAyMTAxLAorICAgICAyMzU0LCAyNDIwLCAyMzI3LCAyMzY3
LCAyMzk0LCAyNDIwLCAyNDIwLCAyNDIwLCAyNDYwLCAyMzY3LAorICAgICAzNzc5LCAzNjI5LCAy
NDM0LCAyNTI3LCAyMzY3LCAyMjc0LCAyMjc0LCAyMzAwLCAyMjA3LCAyMDQ4LAorICAgICAzMjU0
LCAzMjI1LCAyNzEzLCAyODQ2LCAyNDQ3LCAyMzI3LCAyMzAwLCAyMzAwLCAyMjc0LCAyMTI3LAor
ICAgICAzMjYzLCAzMzAwLCAyNzUzLCAyODA2LCAyNDQ3LCAyMjYxLCAyMjYxLCAyMjQ3LCAyMTI3
LCAyMTAxLAorICAgICAyODczLCAyOTgxLCAyNjMzLCAyMzY3LCAyNDA3LCAyMzU0LCAyMTk0LCAy
MjQ3LCAyMjQ3LCAyMTE0LAorICAgICAzMjI1LCAzMTk3LCAyNjMzLCAyNTgwLCAyMjc0LCAyMTgx
LCAyMjQ3LCAyMjIxLCAyMjIxLCAyMTQxLAorICAgICAzMTc4LCAzMzEwLCAyNzQwLCAyNDA3LCAy
Mjc0LCAyMjc0LCAyMjc0LCAyMjg3LCAyMTk0LCAyMTE0LAorICAgICAzMTQxLCAzMjcyLCAyNDYw
LCAyMDYxLCAyMjg3LCAyNTAwLCAyMzY3LCAyNDg3LCAyNDM0LCAyMTgxLAorICAgICAzNTA3LCAz
MjgyLCAyMzE0LCAyNzAwLCAyNjQ3LCAyNDc0LCAyMzY3LCAyMzk0LCAyMzQwLCAyMTI3LAorICAg
ICAzNDIzLCAzNTM1LCAzMDM4LCAzMDU2LCAyMzAwLCAxOTUwLCAyMjIxLCAyMjc0LCAyMjc0LCAy
Mjc0LAorICAgICAzNDA0LCAzMzY2LCAyMDg3LCAyNjg3LCAyODczLCAyMzU0LCAyNDIwLCAyMjc0
LCAyNDc0LCAyNTQwLAorICAgICAzNzYwLCAzNDg4LCAxOTUwLCAyNjYwLCAyODk3LCAyNTI3LCAy
Mzk0LCAyMzY3LCAyNDYwLCAyMjYxLAorICAgICAzMDI4LCAzMjcyLCAyNzQwLCAyODg4LCAyNzQw
LCAyMTU0LCAyMTI3LCAyMjg3LCAyMjM0LCAyMjQ3LAorICAgICAzNjk1LCAzNjU3LCAyMDI1LCAx
OTY5LCAyNjYwLCAyNzAwLCAyNTgwLCAyNTAwLCAyMzI3LCAyMzY3LAorICAgICAzMjA3LCAzNDEz
LCAyMzU0LCAyMDc0LCAyODg4LCAyODg4LCAyMzQwLCAyNDg3LCAyMjQ3LCAyMTY3LAorICAgICAz
MzM4LCAzMzY2LCAyODQ2LCAyNzgwLCAyMzI3LCAyMTU0LCAyMjc0LCAyMjg3LCAyMTE0LCAyMDYx
LAorICAgICAyMzI3LCAyMzAwLCAyMTgxLCAyMTY3LCAyMTgxLCAyMzY3LCAyNjMzLCAyNzAwLCAy
NzAwLCAyNTUzLAorICAgICAyNDA3LCAyNDM0LCAyMjIxLCAyMjYxLCAyMjIxLCAyMjIxLCAyMzQw
LCAyNDIwLCAyNjA3LCAyNzAwLAorICAgICAzMDM4LCAzMjQ0LCAyODA2LCAyODg4LCAyNDc0LCAy
MDc0LCAyMzAwLCAyMzE0LCAyMzU0LCAyMzgwLAorICAgICAyMjIxLCAyMTU0LCAyMTI3LCAyMjg3
LCAyNTAwLCAyNzkzLCAyNzkzLCAyNjIwLCAyNTgwLCAyMzY3LAorICAgICAzNjc2LCAzNzEzLCAy
MjM0LCAxODM4LCAyMTgxLCAyNzUzLCAyNzI2LCAyNjczLCAyNTEzLCAyMjA3LAorICAgICAyNzkz
LCAzMTYwLCAyNzI2LCAyNTUzLCAyODQ2LCAyNTEzLCAyMTgxLCAyMzk0LCAyMjIxLCAyMTgxCit9
OworCiBzdGF0aWMgY29uc3Qgb3B1c191aW50OCBzaWxrX05MU0ZfQ0IxX2lDREZfTkJfTUJbIDY0
IF0gPSB7CiAgICAgICAgMjEyLCAgICAxNzgsICAgIDE0OCwgICAgMTI5LCAgICAxMDgsICAgICA5
NiwgICAgIDg1LCAgICAgODIsCiAgICAgICAgIDc5LCAgICAgNzcsICAgICA2MSwgICAgIDU5LCAg
ICAgNTcsICAgICA1NiwgICAgIDUxLCAgICAgNDksCkBAIC0xNTAsNiArMTg1LDcgQEAgY29uc3Qg
c2lsa19OTFNGX0NCX3N0cnVjdCBzaWxrX05MU0ZfQ0JfTkJfTUIgPQogICAgIFNJTEtfRklYX0NP
TlNUKCAwLjE4LCAxNiApLAogICAgIFNJTEtfRklYX0NPTlNUKCAxLjAgLyAwLjE4LCA2ICksCiAg
ICAgc2lsa19OTFNGX0NCMV9OQl9NQl9ROCwKKyAgICBzaWxrX05MU0ZfQ0IxX1dnaHRfUTksCiAg
ICAgc2lsa19OTFNGX0NCMV9pQ0RGX05CX01CLAogICAgIHNpbGtfTkxTRl9QUkVEX05CX01CX1E4
LAogICAgIHNpbGtfTkxTRl9DQjJfU0VMRUNUX05CX01CLApkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3RhYmxl
c19OTFNGX0NCX1dCLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX05MU0ZfQ0JfV0IuYwppbmRleCA1MGFmODdlYjJl
MWMxZDc0Mjg2MjY5MDc0YjVkOGEwOTI2MjAyN2MzLi41Y2M5ZjU3YmZmY2E3Nzg4NmRlODc2NGQz
MmQ2MjIxM2RhNWRhZmQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGFibGVzX05MU0ZfQ0JfV0IuYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsvdGFibGVzX05MU0ZfQ0JfV0IuYwpAQCAtOTgsNiArOTgsNDEgQEAgc3RhdGljIGNvbnN0
IG9wdXNfdWludDggc2lsa19OTFNGX0NCMV9XQl9ROFsgNTEyIF0gPSB7CiAgICAgICAgMTEwLCAg
ICAxMTksICAgIDEyOSwgICAgMTQxLCAgICAxNzUsICAgIDE5OCwgICAgMjE4LCAgICAyMzcKIH07
CiAKK3N0YXRpYyBjb25zdCBvcHVzX2ludDE2IHNpbGtfTkxTRl9DQjFfV0JfV2dodF9ROVsgNTEy
IF0gPSB7CisgICAgIDM2NTcsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5
MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI5NjMsIDI5NjMsIDI5MjUsIDI4NDYsCisgICAg
IDMyMTYsIDMwODUsIDI5NzIsIDMwNTYsIDMwNTYsIDMwMTAsIDMwMTAsIDMwMTAsIDI5NjMsIDI5
NjMsIDMwMTAsIDI5NzIsIDI4ODgsIDI4NDYsIDI4NDYsIDI3MjYsCisgICAgIDM5MjAsIDQwMTQs
IDI5ODEsIDMyMDcsIDMyMDcsIDI5MzQsIDMwNTYsIDI4NDYsIDMxMjIsIDMyNDQsIDI5MjUsIDI4
NDYsIDI2MjAsIDI1NTMsIDI3ODAsIDI5MjUsCisgICAgIDM1MTYsIDMxOTcsIDMwMTAsIDMxMDMs
IDMwMTksIDI4ODgsIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI4ODgsIDI4ODgsIDI4ODgsIDI4
ODgsIDI4ODgsIDI3NTMsCisgICAgIDUwNTQsIDUwNTQsIDI5MzQsIDM1NzMsIDMzODUsIDMwNTYs
IDMwODUsIDI3OTMsIDMxNjAsIDMxNjAsIDI5NzIsIDI4NDYsIDI1MTMsIDI1NDAsIDI3NTMsIDI4
ODgsCisgICAgIDQ0MjgsIDQxNDksIDI3MDAsIDI3NTMsIDI5NzIsIDMwMTAsIDI5MjUsIDI4NDYs
IDI5ODEsIDMwMTksIDI5MjUsIDI5MjUsIDI5MjUsIDI5MjUsIDI4ODgsIDI3MjYsCisgICAgIDM2
MjAsIDMwMTksIDI5NzIsIDMwNTYsIDMwNTYsIDI4NzMsIDI4MDYsIDMwNTYsIDMyMTYsIDMwNDcs
IDI5ODEsIDMyOTEsIDMyOTEsIDI5ODEsIDMzMTAsIDI5OTEsCisgICAgIDUyMjcsIDUwMTQsIDI1
NDAsIDMzMzgsIDM1MjYsIDMzODUsIDMxOTcsIDMwOTQsIDMzNzYsIDI5ODEsIDI3MDAsIDI2NDcs
IDI2ODcsIDI3OTMsIDI4NDYsIDI2NzMsCisgICAgIDUwODEsIDUxNzQsIDQ2MTUsIDQ0MjgsIDI0
NjAsIDI4OTcsIDMwNDcsIDMyMDcsIDMxNjksIDI2ODcsIDI3NDAsIDI4ODgsIDI4NDYsIDI3OTMs
IDI4NDYsIDI3MDAsCisgICAgIDMxMjIsIDI4ODgsIDI5NjMsIDI5MjUsIDI5MjUsIDI5MjUsIDI5
MjUsIDI5NjMsIDI5NjMsIDI5NjMsIDI5NjMsIDI5MjUsIDI5MjUsIDI5NjMsIDI5NjMsIDI5NjMs
CisgICAgIDQyMDIsIDMyMDcsIDI5ODEsIDMxMDMsIDMwMTAsIDI4ODgsIDI4ODgsIDI5MjUsIDI5
NzIsIDI4NzMsIDI5MTYsIDMwMTksIDI5NzIsIDMwMTAsIDMxOTcsIDI4NzMsCisgICAgIDM3NjAs
IDM3NjAsIDMyNDQsIDMxMDMsIDI5ODEsIDI4ODgsIDI5MjUsIDI4ODgsIDI5NzIsIDI5MzQsIDI3
OTMsIDI3OTMsIDI4NDYsIDI4ODgsIDI4ODgsIDI2NjAsCisgICAgIDM4NTQsIDQwMTQsIDMyMDcs
IDMxMjIsIDMyNDQsIDI5MzQsIDMwNDcsIDI5NjMsIDI5NjMsIDMwODUsIDI4NDYsIDI3OTMsIDI3
OTMsIDI3OTMsIDI3OTMsIDI1ODAsCisgICAgIDM4NDUsIDQwODAsIDMzNTcsIDM1MTYsIDMwOTQs
IDI3NDAsIDMwMTAsIDI5MzQsIDMxMjIsIDMwODUsIDI4NDYsIDI4NDYsIDI2NDcsIDI2NDcsIDI4
NDYsIDI4MDYsCisgICAgIDUxNDcsIDQ4OTQsIDMyMjUsIDM4NDUsIDM0NDEsIDMxNjksIDI4OTcs
IDM0MTMsIDM0NTEsIDI3MDAsIDI1ODAsIDI2NzMsIDI3NDAsIDI4NDYsIDI4MDYsIDI3NTMsCisg
ICAgIDQxMDksIDM3ODksIDMyOTEsIDMxNjAsIDI5MjUsIDI4ODgsIDI4ODgsIDI5MjUsIDI3OTMs
IDI3NDAsIDI3OTMsIDI3NDAsIDI3OTMsIDI4NDYsIDI4ODgsIDI4MDYsCisgICAgIDUwODEsIDUw
NTQsIDMwNDcsIDM1NDUsIDMyNDQsIDMwNTYsIDMwODUsIDI5NDQsIDMxMDMsIDI4OTcsIDI3NDAs
IDI3NDAsIDI3NDAsIDI4NDYsIDI3OTMsIDI2MjAsCisgICAgIDQzMDksIDQzMDksIDI4NjAsIDI1
MjcsIDMyMDcsIDMzNzYsIDMzNzYsIDMwNzUsIDMwNzUsIDMzNzYsIDMwNTYsIDI4NDYsIDI2NDcs
IDI1ODAsIDI3MjYsIDI3NTMsCisgICAgIDMwNTYsIDI5MTYsIDI4MDYsIDI4ODgsIDI3NDAsIDI2
ODcsIDI4OTcsIDMxMDMsIDMxNTAsIDMxNTAsIDMyMTYsIDMxNjksIDMwNTYsIDMwMTAsIDI5NjMs
IDI4NDYsCisgICAgIDQzNzUsIDM4ODIsIDI5MjUsIDI4ODgsIDI4NDYsIDI4ODgsIDI4NDYsIDI4
NDYsIDI4ODgsIDI4ODgsIDI4ODgsIDI4NDYsIDI4ODgsIDI5MjUsIDI4ODgsIDI4NDYsCisgICAg
IDI5ODEsIDI5MTYsIDI5MTYsIDI5ODEsIDI5ODEsIDMwNTYsIDMxMjIsIDMyMTYsIDMxNTAsIDMw
NTYsIDMwMTAsIDI5NzIsIDI5NzIsIDI5NzIsIDI5MjUsIDI3NDAsCisgICAgIDQyMjksIDQxNDks
IDMzMTAsIDMzNDcsIDI5MjUsIDI5NjMsIDI4ODgsIDI5ODEsIDI5ODEsIDI4NDYsIDI3OTMsIDI3
NDAsIDI4NDYsIDI4NDYsIDI4NDYsIDI3OTMsCisgICAgIDQwODAsIDQwMTQsIDMxMDMsIDMwMTAs
IDI5MjUsIDI5MjUsIDI5MjUsIDI4ODgsIDI5MjUsIDI5MjUsIDI4NDYsIDI4NDYsIDI4NDYsIDI3
OTMsIDI4ODgsIDI3ODAsCisgICAgIDQ2MTUsIDQ1NzUsIDMxNjksIDM0NDEsIDMyMDcsIDI5ODEs
IDI4OTcsIDMwMzgsIDMxMjIsIDI3NDAsIDI2ODcsIDI2ODcsIDI2ODcsIDI3NDAsIDI3OTMsIDI3
MDAsCisgICAgIDQxNDksIDQyNjksIDM3ODksIDM2NTcsIDI3MjYsIDI3ODAsIDI4ODgsIDI4ODgs
IDMwMTAsIDI5NzIsIDI5MjUsIDI4NDYsIDI2ODcsIDI2ODcsIDI3OTMsIDI4ODgsCisgICAgIDQy
MTUsIDM1NTQsIDI3NTMsIDI4NDYsIDI4NDYsIDI4ODgsIDI4ODgsIDI4ODgsIDI5MjUsIDI5MjUs
IDI4ODgsIDI5MjUsIDI5MjUsIDI5MjUsIDI5NjMsIDI4ODgsCisgICAgIDUxNzQsIDQ5MjEsIDIy
NjEsIDM0MzIsIDM3ODksIDM0NzksIDMzNDcsIDI4NDYsIDMzMTAsIDM0NzksIDMxNTAsIDI4OTcs
IDI0NjAsIDI0ODcsIDI3NTMsIDI5MjUsCisgICAgIDM0NTEsIDM2ODUsIDMxMjIsIDMxOTcsIDMz
NTcsIDMwNDcsIDMyMDcsIDMyMDcsIDI5ODEsIDMyMTYsIDMwODUsIDI5MjUsIDI5MjUsIDI2ODcs
IDI1NDAsIDI0MzQsCisgICAgIDI5ODEsIDMwMTAsIDI3OTMsIDI3OTMsIDI3NDAsIDI3OTMsIDI4
NDYsIDI5NzIsIDMwNTYsIDMxMDMsIDMxNTAsIDMxNTAsIDMxNTAsIDMxMDMsIDMwMTAsIDMwMTAs
CisgICAgIDI5NDQsIDI4NzMsIDI2ODcsIDI3MjYsIDI3ODAsIDMwMTAsIDM0MzIsIDM1NDUsIDMz
NTcsIDMyNDQsIDMwNTYsIDMwMTAsIDI5NjMsIDI5MjUsIDI4ODgsIDI4NDYsCisgICAgIDMwMTks
IDI5NDQsIDI4OTcsIDMwMTAsIDMwMTAsIDI5NzIsIDMwMTksIDMxMDMsIDMwNTYsIDMwNTYsIDMw
MTAsIDI4ODgsIDI4NDYsIDI5MjUsIDI5MjUsIDI4ODgsCisgICAgIDM5MjAsIDM5NjcsIDMwMTAs
IDMxOTcsIDMzNTcsIDMyMTYsIDMyOTEsIDMyOTEsIDM0NzksIDM3MDQsIDM0NDEsIDI3MjYsIDIx
ODEsIDI0NjAsIDI1ODAsIDI2MDcKK307CisKIHN0YXRpYyBjb25zdCBvcHVzX3VpbnQ4IHNpbGtf
TkxTRl9DQjFfaUNERl9XQlsgNjQgXSA9IHsKICAgICAgICAyMjUsICAgIDIwNCwgICAgMjAxLCAg
ICAxODQsICAgIDE4MywgICAgMTc1LCAgICAxNTgsICAgIDE1NCwKICAgICAgICAxNTMsICAgIDEz
NSwgICAgMTE5LCAgICAxMTUsICAgIDExMywgICAgMTEwLCAgICAxMDksICAgICA5OSwKQEAgLTE4
OCw2ICsyMjMsNyBAQCBjb25zdCBzaWxrX05MU0ZfQ0Jfc3RydWN0IHNpbGtfTkxTRl9DQl9XQiA9
CiAgICAgU0lMS19GSVhfQ09OU1QoIDAuMTUsIDE2ICksCiAgICAgU0lMS19GSVhfQ09OU1QoIDEu
MCAvIDAuMTUsIDYgKSwKICAgICBzaWxrX05MU0ZfQ0IxX1dCX1E4LAorICAgIHNpbGtfTkxTRl9D
QjFfV0JfV2dodF9ROSwKICAgICBzaWxrX05MU0ZfQ0IxX2lDREZfV0IsCiAgICAgc2lsa19OTFNG
X1BSRURfV0JfUTgsCiAgICAgc2lsa19OTFNGX0NCMl9TRUxFQ1RfV0IsCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Np
bGsvdGVzdHMvdGVzdF91bml0X0xQQ19pbnZfcHJlZF9nYWluLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsvdGVzdHMvdGVzdF91
bml0X0xQQ19pbnZfcHJlZF9nYWluLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjcwNjdjZWFkNzAyOTdmZTc3MzYx
YWU1NTVhYTliYzMwNGI4N2ZmNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay90ZXN0cy90ZXN0X3Vu
aXRfTFBDX2ludl9wcmVkX2dhaW4uYwpAQCAtMCwwICsxLDEyOSBAQAorLyoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
CitDb3B5cmlnaHQgKGMpIDIwMTcgR29vZ2xlIEluYy4sIEplYW4tTWFyYyBWYWxpbgorUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKK2FyZSBtZXQ6CistIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKK3RoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCistIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Citub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCitkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVybmV0IFNvY2ll
dHksIElFVEYgb3IgSUVURiBUcnVzdCwgbm9yIHRoZQorbmFtZXMgb2Ygc3BlY2lmaWMgY29udHJp
YnV0b3JzLCBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKK3Byb2R1Y3RzIGRlcml2
ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgorcGVy
bWlzc2lvbi4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UKK0FSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
IE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2lm
ZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNlbmRpZgorCisjaW5jbHVk
ZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlICJjZWx0L3N0YWNrX2Fs
bG9jLmgiCisjaW5jbHVkZSAiY3B1X3N1cHBvcnQuaCIKKyNpbmNsdWRlICJTaWdQcm9jX0ZJWC5o
IgorCisvKiBDb21wdXRlcyB0aGUgaW1wdWxzZSByZXNwb25zZSBvZiB0aGUgZmlsdGVyIHNvIHdl
CisgICBjYW4gY2F0Y2ggZmlsdGVycyB0aGF0IGFyZSBkZWZpbml0ZWx5IHVuc3RhYmxlLiBTb21l
CisgICB1bnN0YWJsZSBmaWx0ZXJzIG1heSBiZSBjbGFzc2lmaWVkIGFzIHN0YWJsZSwgYnV0IG5v
dAorICAgdGhlIG90aGVyIHdheSBhcm91bmQuICovCitpbnQgY2hlY2tfc3RhYmlsaXR5KG9wdXNf
aW50MTYgKkFfUTEyLCBpbnQgb3JkZXIpIHsKKyAgICBpbnQgaTsKKyAgICBpbnQgajsKKyAgICBp
bnQgc3VtX2EsIHN1bV9hYnNfYTsKKyAgICBzdW1fYSA9IHN1bV9hYnNfYSA9IDA7CisgICAgZm9y
KCBqID0gMDsgaiA8IG9yZGVyOyBqKysgKSB7CisgICAgICAgIHN1bV9hICs9IEFfUTEyWyBqIF07
CisgICAgICAgIHN1bV9hYnNfYSArPSBzaWxrX2FicyggQV9RMTJbIGogXSApOworICAgIH0KKyAg
ICAvKiBDaGVjayBEQyBzdGFiaWxpdHkuICovCisgICAgaWYoIHN1bV9hID49IDQwOTYgKSB7Cisg
ICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICAvKiBJZiB0aGUgc3VtIG9mIGFic29sdXRlIHZh
bHVlcyBpcyBsZXNzIHRoYW4gMSwgdGhlIGZpbHRlcgorICAgICAgIGhhcyB0byBiZSBzdGFibGUu
ICovCisgICAgaWYoIHN1bV9hYnNfYSA8IDQwOTYgKSB7CisgICAgICAgIHJldHVybiAxOworICAg
IH0KKyAgICBkb3VibGUgeVtTSUxLX01BWF9PUkRFUl9MUENdID0gezB9OworICAgIHlbMF0gPSAx
OworICAgIGZvciggaSA9IDA7IGkgPCAxMDAwMDsgaSsrICkgeworICAgICAgICBkb3VibGUgc3Vt
ID0gMDsKKyAgICAgICAgZm9yKCBqID0gMDsgaiA8IG9yZGVyOyBqKysgKSB7CisgICAgICAgICAg
ICBzdW0gKz0geVsgaiBdKkFfUTEyWyBqIF07CisgICAgICAgIH0KKyAgICAgICAgZm9yKCBqID0g
b3JkZXIgLSAxOyBqID4gMDsgai0tICkgeworICAgICAgICAgICAgeVsgaiBdID0geVsgaiAtIDEg
XTsKKyAgICAgICAgfQorICAgICAgICB5WyAwIF0gPSBzdW0qKDEuLzQwOTYpOworICAgICAgICAv
KiBJZiBpbXB1bHNlIHJlc3BvbnNlIHJlYWNoZXMgKy8tIDEwMDAwLCB0aGUgZmlsdGVyCisgICAg
ICAgICAgIGlzIGRlZmluaXRlbHkgdW5zdGFibGUuICovCisgICAgICAgIGlmKCAhKHlbIDAgXSA8
IDEwMDAwICYmIHlbIDAgXSA+IC0xMDAwMCkgKSB7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAg
ICAgICAgfQorICAgICAgICAvKiBUZXN0IGV2ZXJ5IDggc2FtcGxlIGZvciBsb3cgYW1wbGl0dWRl
LiAqLworICAgICAgICBpZiggKCBpICYgMHg3ICkgPT0gMCApIHsKKyAgICAgICAgICAgIGRvdWJs
ZSBhbXAgPSAwOworICAgICAgICAgICAgZm9yKCBqID0gMDsgaiA8IG9yZGVyOyBqKysgKSB7Cisg
ICAgICAgICAgICAgICAgYW1wICs9IGZhYnMoeVtqXSk7CisgICAgICAgICAgICB9CisgICAgICAg
ICAgICBpZiggYW1wIDwgMC4wMDAwMSApIHsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gMTsKK30KKworaW50IG1h
aW4odm9pZCkgeworICAgIGNvbnN0IGludCBhcmNoID0gb3B1c19zZWxlY3RfYXJjaCgpOworICAg
IC8qIFNldCB0byAxMDAwMCBzbyBhbGwgYnJhbmNoZXMgaW4gQyBmdW5jdGlvbiBhcmUgdHJpZ2dl
cmVkICovCisgICAgY29uc3QgaW50IGxvb3BfbnVtID0gMTAwMDA7CisgICAgaW50IGNvdW50ID0g
MDsKKyAgICBBTExPQ19TVEFDSzsKKworICAgIC8qIEZJWE1FOiBNYWtlIHRoZSBzZWVkIHJhbmRv
bSAod2l0aCBvcHRpb24gdG8gc2V0IGl0IGV4cGxpY2l0bHkpCisgICAgICAgc28gd2UgZ2V0IHdp
ZGVyIGNvdmVyYWdlLiAqLworICAgIHNyYW5kKDApOworCisgICAgcHJpbnRmKCJUZXN0aW5nIHNp
bGtfTFBDX2ludmVyc2VfcHJlZF9nYWluKCkgb3B0aW1pemF0aW9uIC4uLlxuIik7CisgICAgZm9y
KCBjb3VudCA9IDA7IGNvdW50IDwgbG9vcF9udW07IGNvdW50KysgKSB7CisgICAgICAgIHVuc2ln
bmVkIGludCBpOworICAgICAgICBvcHVzX2ludCAgICAgb3JkZXI7CisgICAgICAgIHVuc2lnbmVk
IGludCBzaGlmdDsKKyAgICAgICAgb3B1c19pbnQxNiAgIEFfUTEyWyBTSUxLX01BWF9PUkRFUl9M
UEMgXTsKKyAgICAgICAgb3B1c19pbnQzMiBnYWluOworCisgICAgICAgIGZvciggb3JkZXIgPSAy
OyBvcmRlciA8PSBTSUxLX01BWF9PUkRFUl9MUEM7IG9yZGVyICs9IDIgKSB7IC8qIG9yZGVyIG11
c3QgYmUgZXZlbi4gKi8KKyAgICAgICAgICAgIGZvciggc2hpZnQgPSAwOyBzaGlmdCA8IDE2OyBz
aGlmdCsrICkgeyAvKiBEaWZmZXJlbnQgZHluYW1pYyByYW5nZS4gKi8KKyAgICAgICAgICAgICAg
ICBmb3IoIGkgPSAwOyBpIDwgU0lMS19NQVhfT1JERVJfTFBDOyBpKysgKSB7CisgICAgICAgICAg
ICAgICAgICAgIEFfUTEyW2ldID0gKChvcHVzX2ludDE2KXJhbmQoKSkgPj4gc2hpZnQ7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGdhaW4gPSBzaWxrX0xQQ19pbnZlcnNlX3By
ZWRfZ2FpbihBX1ExMiwgb3JkZXIsIGFyY2gpOworICAgICAgICAgICAgICAgIC8qIExvb2sgZm9y
IGZpbHRlcnMgdGhhdCBzaWxrX0xQQ19pbnZlcnNlX3ByZWRfZ2FpbigpIHRoaW5rcyBhcmUKKyAg
ICAgICAgICAgICAgICAgICBzdGFibGUgYnV0IGRlZmluaXRlbHkgYXJlbid0LiAqLworICAgICAg
ICAgICAgICAgIGlmKCBnYWluICE9IDAgJiYgIWNoZWNrX3N0YWJpbGl0eShBX1ExMiwgb3JkZXIp
ICkgeworICAgICAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIioqTG9vcCAlNGQgZmFp
bGVkISoqXG4iLCBjb3VudCk7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOworICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBpZiggIShjb3Vu
dCAlIDUwMCkgKSB7CisgICAgICAgICAgICBwcmludGYoIkxvb3AgJTRkIHBhc3NlZFxuIiwgY291
bnQpOworICAgICAgICB9CisgICAgfQorICAgIHByaW50Zigic2lsa19MUENfaW52ZXJzZV9wcmVk
X2dhaW4oKSBvcHRpbWl6YXRpb24gcGFzc2VkXG4iKTsKKyAgICByZXR1cm4gMDsKK30KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay90dW5pbmdfcGFyYW1ldGVycy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3R1bmluZ19wYXJhbWV0ZXJzLmgK
aW5kZXggNWI4ZjQwNDIzNWY0OTFkOWI0YmVkYWE0OGYzOTQyMzA3ZTdkMTJhMS4uZDcwMjc1ZmQ4
ZjVkZDE1ZTNjNjhiZDI4ZDMyMTViNDBjNDliYmU1NCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3R1bmluZ19w
YXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3R1bmluZ19wYXJhbWV0ZXJzLmgKQEAgLTUzLDE5ICs1Mywx
MiBAQCBleHRlcm4gIkMiCiAvKiBMUEMgYW5hbHlzaXMgcmVndWxhcml6YXRpb24gKi8KICNkZWZp
bmUgRklORF9MUENfQ09ORF9GQUMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMWUtNWYK
IAotLyogTFRQIGFuYWx5c2lzIGRlZmluZXMgKi8KLSNkZWZpbmUgRklORF9MVFBfQ09ORF9GQUMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMWUtNWYKLSNkZWZpbmUgTFRQX0RBTVBJTkcg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wNWYKLSNkZWZpbmUgTFRQX1NN
T09USElORyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4xZgotCi0vKiBMVFAg
cXVhbnRpemF0aW9uIHNldHRpbmdzICovCi0jZGVmaW5lIE1VX0xUUF9RVUFOVF9OQiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDAuMDNmCi0jZGVmaW5lIE1VX0xUUF9RVUFOVF9NQiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMDI1ZgotI2RlZmluZSBNVV9MVFBfUVVB
TlRfV0IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjAyZgotCiAvKiBNYXggY3Vt
dWxhdGl2ZSBMVFAgZ2FpbiAqLwogI2RlZmluZSBNQVhfU1VNX0xPR19HQUlOX0RCICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAyNTAuMGYKIAorLyogTFRQIGFuYWx5c2lzIGRlZmluZXMgKi8K
KyNkZWZpbmUgTFRQX0NPUlJfSU5WX01BWCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
MC4wM2YKKwogLyoqKioqKioqKioqKioqKioqKioqKioqLwogLyogSGlnaCBwYXNzIGZpbHRlcmlu
ZyAqLwogLyoqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtMTAzLDI1ICs5NiwxNiBAQCBleHRl
cm4gIkMiCiAjZGVmaW5lIFNQQVJTRV9TTlJfSU5DUl9kQiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDIuMGYKIAogLyogdGhyZXNob2xkIGZvciBzcGFyc2VuZXNzIG1lYXN1cmUgYWJvdmUg
d2hpY2ggdG8gdXNlIGxvd2VyIHF1YW50aXphdGlvbiBvZmZzZXQgZHVyaW5nIHVudm9pY2VkICov
Ci0jZGVmaW5lIFNQQVJTRU5FU1NfVEhSRVNIT0xEX1FOVF9PRkZTRVQgICAgICAgICAgICAgICAg
IDAuNzVmCisjZGVmaW5lIEVORVJHWV9WQVJJQVRJT05fVEhSRVNIT0xEX1FOVF9PRkZTRVQgICAg
ICAgICAgIDAuNmYKIAogLyogd2FycGluZyBjb250cm9sICovCiAjZGVmaW5lIFdBUlBJTkdfTVVM
VElQTElFUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMDE1ZgogCiAvKiBmcmFjdGlv
biBhZGRlZCB0byBmaXJzdCBhdXRvY29ycmVsYXRpb24gdmFsdWUgKi8KLSNkZWZpbmUgU0hBUEVf
V0hJVEVfTk9JU0VfRlJBQ1RJT04gICAgICAgICAgICAgICAgICAgICAgNWUtNWYKKyNkZWZpbmUg
U0hBUEVfV0hJVEVfTk9JU0VfRlJBQ1RJT04gICAgICAgICAgICAgICAgICAgICAgM2UtNWYKIAog
Lyogbm9pc2Ugc2hhcGluZyBmaWx0ZXIgY2hpcnAgZmFjdG9yICovCi0jZGVmaW5lIEJBTkRXSURU
SF9FWFBBTlNJT04gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuOTVmCi0KLS8qIGRpZmZl
cmVuY2UgYmV0d2VlbiBjaGlycCBmYWN0b3JzIGZvciBhbmFseXNpcyBhbmQgc3ludGhlc2lzIG5v
aXNlIHNoYXBpbmcgZmlsdGVycyBhdCBsb3cgYml0cmF0ZXMgKi8KLSNkZWZpbmUgTE9XX1JBVEVf
QkFORFdJRFRIX0VYUEFOU0lPTl9ERUxUQSAgICAgICAgICAgICAgMC4wMWYKLQotLyogZXh0cmEg
aGFybW9uaWMgYm9vc3RpbmcgKHNpZ25hbCBzaGFwaW5nKSBhdCBsb3cgYml0cmF0ZXMgKi8KLSNk
ZWZpbmUgTE9XX1JBVEVfSEFSTU9OSUNfQk9PU1QgICAgICAgICAgICAgICAgICAgICAgICAgMC4x
ZgotCi0vKiBleHRyYSBoYXJtb25pYyBib29zdGluZyAoc2lnbmFsIHNoYXBpbmcpIGZvciBub2lz
eSBpbnB1dCBzaWduYWxzICovCi0jZGVmaW5lIExPV19JTlBVVF9RVUFMSVRZX0hBUk1PTklDX0JP
T1NUICAgICAgICAgICAgICAgIDAuMWYKKyNkZWZpbmUgQkFORFdJRFRIX0VYUEFOU0lPTiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgMC45NGYKIAogLyogaGFybW9uaWMgbm9pc2Ugc2hhcGlu
ZyAqLwogI2RlZmluZSBIQVJNT05JQ19TSEFQSU5HICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAwLjNmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L05TUV9kZWxfZGVjX3NzZS5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4
Ni9OU1FfZGVsX2RlY19zc2UuYwppbmRleCAyMWQ0YThiYzFlOTYwYWY5YTk1YWIyMDJjYzk1MWQx
NGMwNDYwMWIzLi5jNTIxMmJlZThkM2ExYjFjMjE2MmNlODMyNjgxMTQ1YmI3NDdjNzZiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3NpbGsveDg2L05TUV9kZWxfZGVjX3NzZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYvTlNRX2RlbF9k
ZWNfc3NlLmMKQEAgLTEwNywxMiArMTA3LDEyIEBAIHN0YXRpYyBPUFVTX0lOTElORSB2b2lkIHNp
bGtfbm9pc2Vfc2hhcGVfcXVhbnRpemVyX2RlbF9kZWNfc3NlNF8xKAogICAgIG9wdXNfaW50ICAg
ICAgICAgICAgcHJlZGljdExQQ09yZGVyLCAgICAgICAgLyogSSAgICBQcmVkaWN0aW9uIGZpbHRl
ciBvcmRlciAgICAgICAgICAgICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgd2FycGluZ19R
MTYsICAgICAgICAgICAgLyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgblN0YXRlc0RlbGF5ZWREZWNpc2lvbiwgLyog
SSAgICBOdW1iZXIgb2Ygc3RhdGVzIGluIGRlY2lzaW9uIHRyZWUgICAqLwotICAgIG9wdXNfaW50
ICAgICAgICAgICAgKnNtcGxfYnVmX2lkeCwgICAgICAgICAgLyogSSAgICBJbmRleCB0byBuZXdl
c3Qgc2FtcGxlcyBpbiBidWZmZXJzICAqLworICAgIG9wdXNfaW50ICAgICAgICAgICAgKnNtcGxf
YnVmX2lkeCwgICAgICAgICAgLyogSS9PICBJbmRleCB0byBuZXdlc3Qgc2FtcGxlcyBpbiBidWZm
ZXJzICAqLwogICAgIG9wdXNfaW50ICAgICAgICAgICAgZGVjaXNpb25EZWxheSAgICAgICAgICAg
LyogSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogKTsKIAogdm9p
ZCBzaWxrX05TUV9kZWxfZGVjX3NzZTRfMSgKLSAgICBjb25zdCBzaWxrX2VuY29kZXJfc3RhdGUg
ICAgKnBzRW5jQywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJL08gIEVu
Y29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgKi8KKyAgICBjb25zdCBzaWxrX2VuY29kZXJf
c3RhdGUgICAgKnBzRW5jQywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIEVuY29kZXIgU3RhdGUgICAgICAgICAgICAgICAgICAgKi8KICAgICBzaWxrX25zcV9zdGF0
ZSAgICAgICAgICAgICAgKk5TUSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBJL08gIE5TUSBzdGF0ZSAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICBTaWRlSW5m
b0luZGljZXMgICAgICAgICAgICAgKnBzSW5kaWNlcywgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBJL08gIFF1YW50aXphdGlvbiBJbmRpY2VzICAgICAgICAgICAgKi8KICAgICBj
b25zdCBvcHVzX2ludDMyICAgICAgICAgICAgeF9RM1tdLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBJICAgIFByZWZpbHRlcmVkIGlucHV0IHNpZ25hbCAgICAgICAgKi8K
QEAgLTIzNCw3ICsyMzQsOCBAQCB2b2lkIHNpbGtfTlNRX2RlbF9kZWNfc3NlNF8xKAogICAgICAg
ICAgICAgICAgICAgICBwc0REID0gJnBzRGVsRGVjWyBXaW5uZXJfaW5kIF07CiAgICAgICAgICAg
ICAgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gc21wbF9idWZfaWR4ICsgZGVjaXNpb25EZWxheTsK
ICAgICAgICAgICAgICAgICAgICAgZm9yKCBpID0gMDsgaSA8IGRlY2lzaW9uRGVsYXk7IGkrKyAp
IHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGxhc3Rfc21wbGVfaWR4ID0gKCBsYXN0X3NtcGxl
X2lkeCAtIDEgKSAmIERFQ0lTSU9OX0RFTEFZX01BU0s7CisgICAgICAgICAgICAgICAgICAgICAg
ICBsYXN0X3NtcGxlX2lkeCA9ICggbGFzdF9zbXBsZV9pZHggLSAxICkgJSBERUNJU0lPTl9ERUxB
WTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmKCBsYXN0X3NtcGxlX2lkeCA8IDAgKSBsYXN0
X3NtcGxlX2lkeCArPSBERUNJU0lPTl9ERUxBWTsKICAgICAgICAgICAgICAgICAgICAgICAgIHB1
bHNlc1sgICBpIC0gZGVjaXNpb25EZWxheSBdID0gKG9wdXNfaW50OClzaWxrX1JTSElGVF9ST1VO
RCggcHNERC0+UV9RMTBbIGxhc3Rfc21wbGVfaWR4IF0sIDEwICk7CiAgICAgICAgICAgICAgICAg
ICAgICAgICBweHFbIGkgLSBkZWNpc2lvbkRlbGF5IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2
KCBzaWxrX1JTSElGVF9ST1VORCgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWxrX1NN
VUxXVyggcHNERC0+WHFfUTE0WyBsYXN0X3NtcGxlX2lkeCBdLCBHYWluc19RMTZbIDEgXSApLCAx
NCApICk7CkBAIC0yODUsNyArMjg2LDggQEAgdm9pZCBzaWxrX05TUV9kZWxfZGVjX3NzZTRfMSgK
ICAgICBsYXN0X3NtcGxlX2lkeCA9IHNtcGxfYnVmX2lkeCArIGRlY2lzaW9uRGVsYXk7CiAgICAg
R2Fpbl9RMTAgPSBzaWxrX1JTSElGVDMyKCBHYWluc19RMTZbIHBzRW5jQy0+bmJfc3ViZnIgLSAx
IF0sIDYgKTsKICAgICBmb3IoIGkgPSAwOyBpIDwgZGVjaXNpb25EZWxheTsgaSsrICkgewotICAg
ICAgICBsYXN0X3NtcGxlX2lkeCA9ICggbGFzdF9zbXBsZV9pZHggLSAxICkgJiBERUNJU0lPTl9E
RUxBWV9NQVNLOworICAgICAgICBsYXN0X3NtcGxlX2lkeCA9ICggbGFzdF9zbXBsZV9pZHggLSAx
ICkgJSBERUNJU0lPTl9ERUxBWTsKKyAgICAgICAgaWYoIGxhc3Rfc21wbGVfaWR4IDwgMCApIGxh
c3Rfc21wbGVfaWR4ICs9IERFQ0lTSU9OX0RFTEFZOwogICAgICAgICBwdWxzZXNbICAgaSAtIGRl
Y2lzaW9uRGVsYXkgXSA9IChvcHVzX2ludDgpc2lsa19SU0hJRlRfUk9VTkQoIHBzREQtPlFfUTEw
WyBsYXN0X3NtcGxlX2lkeCBdLCAxMCApOwogICAgICAgICBweHFbIGkgLSBkZWNpc2lvbkRlbGF5
IF0gPSAob3B1c19pbnQxNilzaWxrX1NBVDE2KCBzaWxrX1JTSElGVF9ST1VORCgKICAgICAgICAg
ICAgIHNpbGtfU01VTFdXKCBwc0RELT5YcV9RMTRbIGxhc3Rfc21wbGVfaWR4IF0sIEdhaW5fUTEw
ICksIDggKSApOwpAQCAtMjk5LDcgKzMwMSw2IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19zc2U0
XzEoCiAgICAgTlNRLT5sYWdQcmV2ICAgICAgICA9IHBpdGNoTFsgcHNFbmNDLT5uYl9zdWJmciAt
IDEgXTsKIAogICAgIC8qIFNhdmUgcXVhbnRpemVkIHNwZWVjaCBzaWduYWwgKi8KLSAgICAvKiBE
RUJVR19TVE9SRV9EQVRBKCBlbmMucGNtLCAmTlNRLT54cVtwc0VuY0MtPmx0cF9tZW1fbGVuZ3Ro
XSwgcHNFbmNDLT5mcmFtZV9sZW5ndGggKiBzaXplb2YoIG9wdXNfaW50MTYgKSApICovCiAgICAg
c2lsa19tZW1tb3ZlKCBOU1EtPnhxLCAgICAgICAgICAgJk5TUS0+eHFbICAgICAgICAgICBwc0Vu
Y0MtPmZyYW1lX2xlbmd0aCBdLCBwc0VuY0MtPmx0cF9tZW1fbGVuZ3RoICogc2l6ZW9mKCBvcHVz
X2ludDE2ICkgKTsKICAgICBzaWxrX21lbW1vdmUoIE5TUS0+c0xUUF9zaHBfUTE0LCAmTlNRLT5z
TFRQX3NocF9RMTRbIHBzRW5jQy0+ZnJhbWVfbGVuZ3RoIF0sIHBzRW5jQy0+bHRwX21lbV9sZW5n
dGggKiBzaXplb2YoIG9wdXNfaW50MzIgKSApOwogICAgIFJFU1RPUkVfU1RBQ0s7CkBAIC0zMzMs
NyArMzM0LDcgQEAgc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFu
dGl6ZXJfZGVsX2RlY19zc2U0XzEoCiAgICAgb3B1c19pbnQgICAgICAgICAgICBwcmVkaWN0TFBD
T3JkZXIsICAgICAgICAvKiBJICAgIFByZWRpY3Rpb24gZmlsdGVyIG9yZGVyICAgICAgICAgICAg
ICovCiAgICAgb3B1c19pbnQgICAgICAgICAgICB3YXJwaW5nX1ExNiwgICAgICAgICAgICAvKiBJ
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgb3B1c19pbnQg
ICAgICAgICAgICBuU3RhdGVzRGVsYXllZERlY2lzaW9uLCAvKiBJICAgIE51bWJlciBvZiBzdGF0
ZXMgaW4gZGVjaXNpb24gdHJlZSAgICovCi0gICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9i
dWZfaWR4LCAgICAgICAgICAvKiBJICAgIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZl
cnMgICovCisgICAgb3B1c19pbnQgICAgICAgICAgICAqc21wbF9idWZfaWR4LCAgICAgICAgICAv
KiBJL08gIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzIGluIGJ1ZmZlcnMgICovCiAgICAgb3B1c19p
bnQgICAgICAgICAgICBkZWNpc2lvbkRlbGF5ICAgICAgICAgICAvKiBJICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCiApCiB7CkBAIC02MzgsOCArNjM5LDkgQEAgc3Rh
dGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfZGVsX2RlY19z
c2U0XzEoCiAgICAgICAgICAgICAgICAgcHNTU1sgMSBdLnhxX1ExNCAgICAgICA9IHhxX1ExNDsK
ICAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAgICAqc21wbF9idWZfaWR4ICA9ICggKnNt
cGxfYnVmX2lkeCAtIDEgKSAmIERFQ0lTSU9OX0RFTEFZX01BU0s7ICAgICAgICAgICAgICAgICAg
IC8qIEluZGV4IHRvIG5ld2VzdCBzYW1wbGVzICAgICAgICAgICAgICAqLwotICAgICAgICBsYXN0
X3NtcGxlX2lkeCA9ICggKnNtcGxfYnVmX2lkeCArIGRlY2lzaW9uRGVsYXkgKSAmIERFQ0lTSU9O
X0RFTEFZX01BU0s7ICAgICAgIC8qIEluZGV4IHRvIGRlY2lzaW9uRGVsYXkgb2xkIHNhbXBsZXMg
ICAqLworICAgICAgICAqc21wbF9idWZfaWR4ICA9ICggKnNtcGxfYnVmX2lkeCAtIDEgKSAlIERF
Q0lTSU9OX0RFTEFZOworICAgICAgICBpZiggKnNtcGxfYnVmX2lkeCA8IDAgKSAqc21wbF9idWZf
aWR4ICs9IERFQ0lTSU9OX0RFTEFZOworICAgICAgICBsYXN0X3NtcGxlX2lkeCA9ICggKnNtcGxf
YnVmX2lkeCArIGRlY2lzaW9uRGVsYXkgKSAlIERFQ0lTSU9OX0RFTEFZOwogCiAgICAgICAgIC8q
IEZpbmQgd2lubmVyICovCiAgICAgICAgIFJEbWluX1ExMCA9IHBzU2FtcGxlU3RhdGVbIDAgXVsg
MCBdLlJEX1ExMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYvTlNRX3NzZS5jIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni9OU1Ff
c3NlLmMKaW5kZXggYmIzYzVmMTk1NTcwZWJjZDg3ZGRjNmIwZjZmNDAwYmNjZTNiMjEyNy4uNmE5
ZTZlOTZjZmFiODVjNDdhZWRkNTJhZGNhNWVjNGI0NjJhYjgxNSAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4
Ni9OU1Ffc3NlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni9OU1Ffc3NlLmMKQEAgLTcxLDcgKzcxLDcgQEAgc3Rh
dGljIE9QVVNfSU5MSU5FIHZvaWQgc2lsa19ub2lzZV9zaGFwZV9xdWFudGl6ZXJfMTBfMTZfc3Nl
NF8xKAogKTsKIAogdm9pZCBzaWxrX05TUV9zc2U0XzEoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVy
X3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
SS9PICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19l
bmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogSSAgICBFbmNvZGVyIFN0YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19u
c3Ffc3RhdGUgICAgICAgICAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogSS9PICBOU1Egc3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAg
U2lkZUluZm9JbmRpY2VzICAgICAgICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogSS9PICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICov
CiAgICAgY29uc3Qgb3B1c19pbnQzMiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAg
ICAgICovCkBAIC0yMzMsNyArMjMzLDYgQEAgdm9pZCBzaWxrX05TUV9zc2U0XzEoCiAgICAgTlNR
LT5sYWdQcmV2ID0gcGl0Y2hMWyBwc0VuY0MtPm5iX3N1YmZyIC0gMSBdOwogCiAgICAgLyogU2F2
ZSBxdWFudGl6ZWQgc3BlZWNoIGFuZCBub2lzZSBzaGFwaW5nIHNpZ25hbHMgKi8KLSAgICAvKiBE
RUJVR19TVE9SRV9EQVRBKCBlbmMucGNtLCAmTlNRLT54cVsgcHNFbmNDLT5sdHBfbWVtX2xlbmd0
aCBdLCBwc0VuY0MtPmZyYW1lX2xlbmd0aCAqIHNpemVvZiggb3B1c19pbnQxNiApICkgKi8KICAg
ICBzaWxrX21lbW1vdmUoIE5TUS0+eHEsICAgICAgICAgICAmTlNRLT54cVsgICAgICAgICAgIHBz
RW5jQy0+ZnJhbWVfbGVuZ3RoIF0sIHBzRW5jQy0+bHRwX21lbV9sZW5ndGggKiBzaXplb2YoIG9w
dXNfaW50MTYgKSApOwogICAgIHNpbGtfbWVtbW92ZSggTlNRLT5zTFRQX3NocF9RMTQsICZOU1Et
PnNMVFBfc2hwX1ExNFsgcHNFbmNDLT5mcmFtZV9sZW5ndGggXSwgcHNFbmNDLT5sdHBfbWVtX2xl
bmd0aCAqIHNpemVvZiggb3B1c19pbnQzMiApICk7CiAgICAgUkVTVE9SRV9TVEFDSzsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc2lsay94ODYvbWFpbl9zc2UuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYvbWFpbl9zc2UuaAppbmRleCBkOGQ2
MTMxMGVkY2Y5NmUwMWVhZWQ0MjQ2OGUzMjdiOWRlMmQ0YTM4Li4yZjE1ZDQ0ODY5NzgxYzQzNTAx
NGRkMWRkYjJjMDI0MjNiMTZlM2MxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L21haW5fc3NlLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3Ny
Yy9zaWxrL3g4Ni9tYWluX3NzZS5oCkBAIC0zNCw2ICszNCw3IEBACiAKICMgaWYgZGVmaW5lZChP
UFVTX1g4Nl9NQVlfSEFWRV9TU0U0XzEpCiAKKyNpZiAwIC8qIEZJWE1FOiBTU0UgZGlzYWJsZWQg
dW50aWwgc2lsa19WUV9XTWF0X0VDX3NzZTRfMSgpIGdldHMgdXBkYXRlZC4gKi8KICMgIGRlZmlu
ZSBPVkVSUklERV9zaWxrX1ZRX1dNYXRfRUMKIAogdm9pZCBzaWxrX1ZRX1dNYXRfRUNfc3NlNF8x
KApAQCAtNzksMTEgKzgwLDEzIEBAIGV4dGVybiB2b2lkICgqY29uc3QgU0lMS19WUV9XTUFUX0VD
X0lNUExbT1BVU19BUkNITUFTSyArIDFdKSgKICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVf
UTksIG1heF9nYWluX1E3LCBMKSkKIAogI2VuZGlmCisjZW5kaWYKIAorI2lmIDAgLyogRklYTUU6
IFNTRSBkaXNhYmxlZCB1bnRpbCB0aGUgTlNRIGNvZGUgZ2V0cyB1cGRhdGVkLiAqLwogIyAgZGVm
aW5lIE9WRVJSSURFX3NpbGtfTlNRCiAKIHZvaWQgc2lsa19OU1Ffc3NlNF8xKAotICAgIGNvbnN0
IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAg
IGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAq
LwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAg
ICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMg
ICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5w
dXQgc2lnbmFsICAgICAgICAqLwpAQCAtMTEwLDcgKzExMyw3IEBAIHZvaWQgc2lsa19OU1Ffc3Nl
NF8xKAogI2Vsc2UKIAogZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxLX05TUV9JTVBMW09QVVNfQVJD
SE1BU0sgKyAxXSkoCi0gICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0VuY0MsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBFbmNvZGVyIFN0YXRlICAg
ICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc2lsa19lbmNvZGVyX3N0YXRlICAgICpwc0Vu
Y0MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBFbmNvZGVyIFN0
YXRlICAgICAgICAgICAgICAgICAgICovCiAgICAgc2lsa19uc3Ffc3RhdGUgICAgICAgICAgICAg
ICpOU1EsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9PICBOU1Eg
c3RhdGUgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgU2lkZUluZm9JbmRpY2VzICAgICAg
ICAgICAgICpwc0luZGljZXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSS9P
ICBRdWFudGl6YXRpb24gSW5kaWNlcyAgICAgICAgICAgICovCiAgICAgY29uc3Qgb3B1c19pbnQz
MiAgICAgICAgICAgIHhfUTNbXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogSSAgICBQcmVmaWx0ZXJlZCBpbnB1dCBzaWduYWwgICAgICAgICovCkBAIC0xMzcsNyArMTQw
LDcgQEAgZXh0ZXJuIHZvaWQgKCpjb25zdCBTSUxLX05TUV9JTVBMW09QVVNfQVJDSE1BU0sgKyAx
XSkoCiAjICBkZWZpbmUgT1ZFUlJJREVfc2lsa19OU1FfZGVsX2RlYwogCiB2b2lkIHNpbGtfTlNR
X2RlbF9kZWNfc3NlNF8xKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmND
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0
ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAq
cHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2Rl
ciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAg
ICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAg
TlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAg
ICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNf
aW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLwpAQCAtMTY0LDcg
KzE2Nyw3IEBAIHZvaWQgc2lsa19OU1FfZGVsX2RlY19zc2U0XzEoCiAjZWxzZQogCiBleHRlcm4g
dm9pZCAoKmNvbnN0IFNJTEtfTlNRX0RFTF9ERUNfSU1QTFtPUFVTX0FSQ0hNQVNLICsgMV0pKAot
ICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAg
ICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAg
ICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAqTlNRLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAg
ICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRp
Y2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9u
IEluZGljZXMgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4
X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgUHJlZmls
dGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLwpAQCAtMTg3LDYgKzE5MCw3IEBAIGV4dGVybiB2
b2lkICgqY29uc3QgU0lMS19OU1FfREVMX0RFQ19JTVBMW09QVVNfQVJDSE1BU0sgKyAxXSkoCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBIYXJtU2hhcGVHYWluX1ExNCwgVGlsdF9RMTQsIExG
X3NocF9RMTQsIEdhaW5zX1ExNiwgcGl0Y2hMLCBMYW1iZGFfUTEwLCBMVFBfc2NhbGVfUTE0KSkK
IAogI2VuZGlmCisjZW5kaWYKIAogdm9pZCBzaWxrX25vaXNlX3NoYXBlX3F1YW50aXplcigKICAg
ICBzaWxrX25zcV9zdGF0ZSAgICAgICpOU1EsICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNR
IHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtMjM4LDM5ICsyNDIsNiBAQCBleHRl
cm4gb3B1c19pbnQgKCpjb25zdCBTSUxLX1ZBRF9HRVRTQV9ROF9JTVBMW09QVVNfQVJDSE1BU0sg
KyAxXSkoCiAgICAgIHNpbGtfZW5jb2Rlcl9zdGF0ZSAqcHNFbkMsCiAgICAgIGNvbnN0IG9wdXNf
aW50MTYgICBwSW5bXSk7CiAKLSMgIGRlZmluZSBPVkVSUklERV9zaWxrX3dhcnBlZF9MUENfYW5h
bHlzaXNfZmlsdGVyX0ZJWAotCi0jZW5kaWYKLQotdm9pZCBzaWxrX3dhcnBlZF9MUENfYW5hbHlz
aXNfZmlsdGVyX0ZJWF9zc2U0XzEoCi0gICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgIHN0
YXRlW10sICAgICAgICAgICAgICAgICAgICAvKiBJL08gIFN0YXRlIFtvcmRlciArIDFdICAgICAg
ICAgICAgICAgICAgICovCi0gICAgICAgICAgb3B1c19pbnQzMiAgICAgICAgICAgIHJlc19RMltd
LCAgICAgICAgICAgICAgICAgICAvKiBPICAgIFJlc2lkdWFsIHNpZ25hbCBbbGVuZ3RoXSAgICAg
ICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGNvZWZfUTEzW10sICAg
ICAgICAgICAgICAgICAvKiBJICAgIENvZWZmaWNpZW50cyBbb3JkZXJdICAgICAgICAgICAgICAg
ICovCi0gICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGlucHV0W10sICAgICAgICAgICAg
ICAgICAgICAvKiBJICAgIElucHV0IHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICAgICovCi0g
ICAgY29uc3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGxhbWJkYV9RMTYsICAgICAgICAgICAgICAg
ICAvKiBJICAgIFdhcnBpbmcgZmFjdG9yICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29u
c3Qgb3B1c19pbnQgICAgICAgICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAvKiBJ
ICAgIExlbmd0aCBvZiBpbnB1dCBzaWduYWwgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1
c19pbnQgICAgICAgICAgICAgIG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZp
bHRlciBvcmRlciAoZXZlbikgICAgICAgICAgICAgICAgICovCi0pOwotCi0jaWYgZGVmaW5lZChP
UFVTX1g4Nl9QUkVTVU1FX1NTRTRfMSkKLSNkZWZpbmUgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lz
X2ZpbHRlcl9GSVgoc3RhdGUsIHJlc19RMiwgY29lZl9RMTMsIGlucHV0LCBsYW1iZGFfUTE2LCBs
ZW5ndGgsIG9yZGVyLCBhcmNoKSBcCi0gICAgKCh2b2lkKShhcmNoKSxzaWxrX3dhcnBlZF9MUENf
YW5hbHlzaXNfZmlsdGVyX0ZJWF9jKHN0YXRlLCByZXNfUTIsIGNvZWZfUTEzLCBpbnB1dCwgbGFt
YmRhX1ExNiwgbGVuZ3RoLCBvcmRlcikpCi0KLSNlbHNlCi0KLWV4dGVybiB2b2lkICgqY29uc3Qg
U0lMS19XQVJQRURfTFBDX0FOQUxZU0lTX0ZJTFRFUl9GSVhfSU1QTFtPUFVTX0FSQ0hNQVNLICsg
MV0pKAotICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICBzdGF0ZVtdLCAgICAgICAgICAg
ICAgICAgICAgLyogSS9PICBTdGF0ZSBbb3JkZXIgKyAxXSAgICAgICAgICAgICAgICAgICAqLwot
ICAgICAgICAgIG9wdXNfaW50MzIgICAgICAgICAgICByZXNfUTJbXSwgICAgICAgICAgICAgICAg
ICAgLyogTyAgICBSZXNpZHVhbCBzaWduYWwgW2xlbmd0aF0gICAgICAgICAgICAqLwotICAgIGNv
bnN0IG9wdXNfaW50MTYgICAgICAgICAgICBjb2VmX1ExM1tdLCAgICAgICAgICAgICAgICAgLyog
SSAgICBDb2VmZmljaWVudHMgW29yZGVyXSAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9w
dXNfaW50MTYgICAgICAgICAgICBpbnB1dFtdLCAgICAgICAgICAgICAgICAgICAgLyogSSAgICBJ
bnB1dCBzaWduYWwgW2xlbmd0aF0gICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50
MTYgICAgICAgICAgICBsYW1iZGFfUTE2LCAgICAgICAgICAgICAgICAgLyogSSAgICBXYXJwaW5n
IGZhY3RvciAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAg
ICAgICAgICBsZW5ndGgsICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBMZW5ndGggb2YgaW5w
dXQgc2lnbmFsICAgICAgICAgICAgICAqLwotICAgIGNvbnN0IG9wdXNfaW50ICAgICAgICAgICAg
ICBvcmRlciAgICAgICAgICAgICAgICAgICAgICAgLyogSSAgICBGaWx0ZXIgb3JkZXIgKGV2ZW4p
ICAgICAgICAgICAgICAgICAqLwotKTsKLQotIyAgZGVmaW5lIHNpbGtfd2FycGVkX0xQQ19hbmFs
eXNpc19maWx0ZXJfRklYKHN0YXRlLCByZXNfUTIsIGNvZWZfUTEzLCBpbnB1dCwgbGFtYmRhX1Ex
NiwgbGVuZ3RoLCBvcmRlciwgYXJjaCkgXAotICAgICgoKlNJTEtfV0FSUEVEX0xQQ19BTkFMWVNJ
U19GSUxURVJfRklYX0lNUExbKGFyY2gpICYgT1BVU19BUkNITUFTS10pKHN0YXRlLCByZXNfUTIs
IGNvZWZfUTEzLCBpbnB1dCwgbGFtYmRhX1ExNiwgbGVuZ3RoLCBvcmRlcikpCi0KICNlbmRpZgog
CiAjIGVuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L29wdXMvc3JjL3NpbGsveDg2L3g4Nl9zaWxrX21hcC5jIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zaWxrL3g4Ni94
ODZfc2lsa19tYXAuYwppbmRleCA4MTg4NDFmMmMxOTA3OTlmMzNhM2ZhZDg5ZWRlZjYxYWNlMWFj
NzE2Li4zMmRjYzNjYWI3YTkzYmQ2YzM1MDlhODlkNGI4MDc3MWFhZDJkZGY1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NpbGsveDg2L3g4Nl9zaWxrX21hcC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc2lsay94ODYveDg2X3NpbGtfbWFwLmMKQEAg
LTY2LDggKzY2LDkgQEAgb3B1c19pbnQgKCpjb25zdCBTSUxLX1ZBRF9HRVRTQV9ROF9JTVBMWyBP
UFVTX0FSQ0hNQVNLICsgMSBdICkoCiAgIE1BWV9IQVZFX1NTRTRfMSggc2lsa19WQURfR2V0U0Ff
UTggKSAgLyogYXZ4ICovCiB9OwogCisjaWYgMCAvKiBGSVhNRTogU1NFIGRpc2FibGVkIHVudGls
IHRoZSBOU1EgY29kZSBnZXRzIHVwZGF0ZWQuICovCiB2b2lkICgqY29uc3QgU0lMS19OU1FfSU1Q
TFsgT1BVU19BUkNITUFTSyArIDEgXSApKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAg
ICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5j
b2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9z
dGF0ZSAgICAqcHNFbmNDLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkg
ICAgRW5jb2RlciBTdGF0ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRl
ICAgICAgICAgICAgICAqTlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIEkvTyAgTlNRIHN0YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZv
SW5kaWNlcyAgICAgICAgICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEkvTyAgUXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwogICAgIGNv
bnN0IG9wdXNfaW50MzIgICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLwpA
QCAtODksNyArOTAsOSBAQCB2b2lkICgqY29uc3QgU0lMS19OU1FfSU1QTFsgT1BVU19BUkNITUFT
SyArIDEgXSApKAogICBNQVlfSEFWRV9TU0U0XzEoIHNpbGtfTlNRICksIC8qIHNzZTQuMSAqLwog
ICBNQVlfSEFWRV9TU0U0XzEoIHNpbGtfTlNRICkgIC8qIGF2eCAqLwogfTsKKyNlbmRpZgogCisj
aWYgMCAvKiBGSVhNRTogU1NFIGRpc2FibGVkIHVudGlsIHNpbGtfVlFfV01hdF9FQ19zc2U0XzEo
KSBnZXRzIHVwZGF0ZWQuICovCiB2b2lkICgqY29uc3QgU0lMS19WUV9XTUFUX0VDX0lNUExbIE9Q
VVNfQVJDSE1BU0sgKyAxIF0gKSgKICAgICBvcHVzX2ludDggICAgICAgICAgICAgICAgICAgKmlu
ZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBPICAgIGluZGV4IG9mIGJlc3QgY29kZWJv
b2sgdmVjdG9yICAgICAgICAgICAgICAgKi8KICAgICBvcHVzX2ludDMyICAgICAgICAgICAgICAg
ICAgKnJhdGVfZGlzdF9RMTQsICAgICAgICAgICAgICAgICAvKiBPICAgIGJlc3Qgd2VpZ2h0ZWQg
cXVhbnQgZXJyb3IgKyBtdSAqIHJhdGUgICAgICAgKi8KQEAgLTEwOSw5ICsxMTIsMTEgQEAgdm9p
ZCAoKmNvbnN0IFNJTEtfVlFfV01BVF9FQ19JTVBMWyBPUFVTX0FSQ0hNQVNLICsgMSBdICkoCiAg
IE1BWV9IQVZFX1NTRTRfMSggc2lsa19WUV9XTWF0X0VDICksIC8qIHNzZTQuMSAqLwogICBNQVlf
SEFWRV9TU0U0XzEoIHNpbGtfVlFfV01hdF9FQyApICAvKiBhdnggKi8KIH07CisjZW5kaWYKIAor
I2lmIDAgLyogRklYTUU6IFNTRSBkaXNhYmxlZCB1bnRpbCB0aGUgTlNRIGNvZGUgZ2V0cyB1cGRh
dGVkLiAqLwogdm9pZCAoKmNvbnN0IFNJTEtfTlNRX0RFTF9ERUNfSU1QTFsgT1BVU19BUkNITUFT
SyArIDEgXSApKAotICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmNDLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgRW5jb2RlciBTdGF0ZSAgICAg
ICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHNpbGtfZW5jb2Rlcl9zdGF0ZSAgICAqcHNFbmND
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkgICAgRW5jb2RlciBTdGF0
ZSAgICAgICAgICAgICAgICAgICAqLwogICAgIHNpbGtfbnNxX3N0YXRlICAgICAgICAgICAgICAq
TlNRLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAgTlNRIHN0
YXRlICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIFNpZGVJbmZvSW5kaWNlcyAgICAgICAg
ICAgICAqcHNJbmRpY2VzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEkvTyAg
UXVhbnRpemF0aW9uIEluZGljZXMgICAgICAgICAgICAqLwogICAgIGNvbnN0IG9wdXNfaW50MzIg
ICAgICAgICAgICB4X1EzW10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEkgICAgUHJlZmlsdGVyZWQgaW5wdXQgc2lnbmFsICAgICAgICAqLwpAQCAtMTMzLDI1ICsxMzgs
MTAgQEAgdm9pZCAoKmNvbnN0IFNJTEtfTlNRX0RFTF9ERUNfSU1QTFsgT1BVU19BUkNITUFTSyAr
IDEgXSApKAogICBNQVlfSEFWRV9TU0U0XzEoIHNpbGtfTlNRX2RlbF9kZWMgKSwgLyogc3NlNC4x
ICovCiAgIE1BWV9IQVZFX1NTRTRfMSggc2lsa19OU1FfZGVsX2RlYyApICAvKiBhdnggKi8KIH07
CisjZW5kaWYKIAogI2lmIGRlZmluZWQoRklYRURfUE9JTlQpCiAKLXZvaWQgKCpjb25zdCBTSUxL
X1dBUlBFRF9MUENfQU5BTFlTSVNfRklMVEVSX0ZJWF9JTVBMWyBPUFVTX0FSQ0hNQVNLICsgMSBd
ICkoCi0gICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHN0YXRlW10sICAgICAgICAgICAg
ICAgICAgICAvKiBJL08gIFN0YXRlIFtvcmRlciArIDFdICAgICAgICAgICAgICAgICAgICovCi0g
ICAgb3B1c19pbnQzMiAgICAgICAgICAgICAgICAgIHJlc19RMltdLCAgICAgICAgICAgICAgICAg
ICAvKiBPICAgIFJlc2lkdWFsIHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICovCi0gICAgY29u
c3Qgb3B1c19pbnQxNiAgICAgICAgICAgIGNvZWZfUTEzW10sICAgICAgICAgICAgICAgICAvKiBJ
ICAgIENvZWZmaWNpZW50cyBbb3JkZXJdICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1
c19pbnQxNiAgICAgICAgICAgIGlucHV0W10sICAgICAgICAgICAgICAgICAgICAvKiBJICAgIElu
cHV0IHNpZ25hbCBbbGVuZ3RoXSAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQx
NiAgICAgICAgICAgIGxhbWJkYV9RMTYsICAgICAgICAgICAgICAgICAvKiBJICAgIFdhcnBpbmcg
ZmFjdG9yICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAg
ICAgICAgIGxlbmd0aCwgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIExlbmd0aCBvZiBpbnB1
dCBzaWduYWwgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgb3B1c19pbnQgICAgICAgICAgICAg
IG9yZGVyICAgICAgICAgICAgICAgICAgICAgICAvKiBJICAgIEZpbHRlciBvcmRlciAoZXZlbikg
ICAgICAgICAgICAgICAgICovCi0pID0gewotICBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNfZmls
dGVyX0ZJWF9jLCAgICAgICAgICAgICAgICAgIC8qIG5vbi1zc2UgKi8KLSAgc2lsa193YXJwZWRf
TFBDX2FuYWx5c2lzX2ZpbHRlcl9GSVhfYywKLSAgc2lsa193YXJwZWRfTFBDX2FuYWx5c2lzX2Zp
bHRlcl9GSVhfYywKLSAgTUFZX0hBVkVfU1NFNF8xKCBzaWxrX3dhcnBlZF9MUENfYW5hbHlzaXNf
ZmlsdGVyX0ZJWCApLCAvKiBzc2U0LjEgKi8KLSAgTUFZX0hBVkVfU1NFNF8xKCBzaWxrX3dhcnBl
ZF9MUENfYW5hbHlzaXNfZmlsdGVyX0ZJWCApICAvKiBhdnggKi8KLX07Ci0KIHZvaWQgKCpjb25z
dCBTSUxLX0JVUkdfTU9ESUZJRURfSU1QTFsgT1BVU19BUkNITUFTSyArIDEgXSApKAogICAgIG9w
dXNfaW50MzIgICAgICAgICAgICAgICAgICAqcmVzX25yZywgICAgICAgICAgIC8qIE8gICAgUmVz
aWR1YWwgZW5lcmd5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ki8KICAgICBvcHVzX2ludCAgICAgICAgICAgICAgICAgICAgKnJlc19ucmdfUSwgICAgICAgICAv
KiBPICAgIFJlc2lkdWFsIGVuZXJneSBRIHZhbHVlICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvYW5hbHlzaXMuYwpp
bmRleCA2NjM0MzFhNDM2YTFjODFhOWJhNzNmZjJhNmYyZDdmZmZhZWJiMTU4Li5mNDE2MGU0YjRl
ZDVjMTE0Y2Y3ZDYxMGRiZDk3YTE1NjkwNjBhMDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvc3JjL2FuYWx5c2lzLmMKQEAgLTI5LDIwICsyOSwyNyBAQAogI2luY2x1ZGUgImNvbmZp
Zy5oIgogI2VuZGlmCiAKKyNkZWZpbmUgQU5BTFlTSVNfQworCisjaW5jbHVkZSA8c3RkaW8uaD4K
KworI2luY2x1ZGUgIm1hdGhvcHMuaCIKICNpbmNsdWRlICJraXNzX2ZmdC5oIgogI2luY2x1ZGUg
ImNlbHQuaCIKICNpbmNsdWRlICJtb2Rlcy5oIgogI2luY2x1ZGUgImFyY2guaCIKICNpbmNsdWRl
ICJxdWFudF9iYW5kcy5oIgotI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSAiYW5hbHlzaXMu
aCIKICNpbmNsdWRlICJtbHAuaCIKICNpbmNsdWRlICJzdGFja19hbGxvYy5oIgorI2luY2x1ZGUg
ImZsb2F0X2Nhc3QuaCIKIAogI2lmbmRlZiBNX1BJCiAjZGVmaW5lIE1fUEkgMy4xNDE1OTI2NTMK
ICNlbmRpZgogCisjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCisKIHN0YXRpYyBjb25zdCBmbG9h
dCBkY3RfdGFibGVbMTI4XSA9IHsKICAgICAgICAgMC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUw
MDAwZiwgMC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1MDAw
MGYsCiAgICAgICAgIDAuMjUwMDAwZiwgMC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwg
MC4yNTAwMDBmLCAwLjI1MDAwMGYsIDAuMjUwMDAwZiwgMC4yNTAwMDBmLApAQCAtOTYsNTIgKzEw
MywxMTggQEAgc3RhdGljIGNvbnN0IGZsb2F0IGFuYWx5c2lzX3dpbmRvd1syNDBdID0gewogfTsK
IAogc3RhdGljIGNvbnN0IGludCB0YmFuZHNbTkJfVEJBTkRTKzFdID0gewotICAgICAgIDIsICA0
LCAgNiwgIDgsIDEwLCAxMiwgMTQsIDE2LCAyMCwgMjQsIDI4LCAzMiwgNDAsIDQ4LCA1NiwgNjgs
IDgwLCA5NiwgMTIwCisgICAgICA0LCA4LCAxMiwgMTYsIDIwLCAyNCwgMjgsIDMyLCA0MCwgNDgs
IDU2LCA2NCwgODAsIDk2LCAxMTIsIDEzNiwgMTYwLCAxOTIsIDI0MAogfTsKIAotc3RhdGljIGNv
bnN0IGludCBleHRyYV9iYW5kc1tOQl9UT1RfQkFORFMrMV0gPSB7Ci0gICAgICAxLCAyLCAgNCwg
IDYsICA4LCAxMCwgMTIsIDE0LCAxNiwgMjAsIDI0LCAyOCwgMzIsIDQwLCA0OCwgNTYsIDY4LCA4
MCwgOTYsIDEyMCwgMTYwLCAyMDAKLX07Ci0KLS8qc3RhdGljIGNvbnN0IGZsb2F0IHR3ZWlnaHRb
TkJfVEJBTkRTKzFdID0gewotICAgICAgLjMsIC40LCAuNSwgLjYsIC43LCAuOCwgLjksIDEuLCAx
LiwgMS4sIDEuLCAxLiwgMS4sIDEuLCAuOCwgLjcsIC42LCAuNQotfTsqLwotCiAjZGVmaW5lIE5C
X1RPTkFMX1NLSVBfQkFORFMgOQogCi0jZGVmaW5lIGNBIDAuNDMxNTc5NzRmCi0jZGVmaW5lIGNC
IDAuNjc4NDg0MDNmCi0jZGVmaW5lIGNDIDAuMDg1OTU1NDJmCi0jZGVmaW5lIGNFICgoZmxvYXQp
TV9QSS8yKQotc3RhdGljIE9QVVNfSU5MSU5FIGZsb2F0IGZhc3RfYXRhbjJmKGZsb2F0IHksIGZs
b2F0IHgpIHsKLSAgIGZsb2F0IHgyLCB5MjsKLSAgIC8qIFNob3VsZCBhdm9pZCB1bmRlcmZsb3cg
b24gdGhlIHZhbHVlcyB3ZSdsbCBnZXQgKi8KLSAgIGlmIChBQlMxNih4KStBQlMxNih5KTwxZS05
ZikKK3N0YXRpYyBvcHVzX3ZhbDMyIHNpbGtfcmVzYW1wbGVyX2Rvd24yX2hwKAorICAgIG9wdXNf
dmFsMzIgICAgICAgICAgICAgICAgICAqUywgICAgICAgICAgICAgICAgIC8qIEkvTyAgU3RhdGUg
dmVjdG9yIFsgMiBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBvcHVzX3ZhbDMyICAgICAgICAgICAgICAgICAgKm91dCwgICAgICAgICAgICAgICAvKiBP
ICAgIE91dHB1dCBzaWduYWwgWyBmbG9vcihsZW4vMikgXSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgY29uc3Qgb3B1c192YWwzMiAgICAgICAgICAgICppbiwgICAgICAgICAg
ICAgICAgLyogSSAgICBJbnB1dCBzaWduYWwgWyBsZW4gXSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICBpbkxl
biAgICAgICAgICAgICAgIC8qIEkgICAgTnVtYmVyIG9mIGlucHV0IHNhbXBsZXMgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKykKK3sKKyAgICBpbnQgaywgbGVuMiA9IGlu
TGVuLzI7CisgICAgb3B1c192YWwzMiBpbjMyLCBvdXQzMiwgb3V0MzJfaHAsIFksIFg7CisgICAg
b3B1c192YWw2NCBocF9lbmVyID0gMDsKKyAgICAvKiBJbnRlcm5hbCB2YXJpYWJsZXMgYW5kIHN0
YXRlIGFyZSBpbiBRMTAgZm9ybWF0ICovCisgICAgZm9yKCBrID0gMDsgayA8IGxlbjI7IGsrKyAp
IHsKKyAgICAgICAgLyogQ29udmVydCB0byBRMTAgKi8KKyAgICAgICAgaW4zMiA9IGluWyAyICog
ayBdOworCisgICAgICAgIC8qIEFsbC1wYXNzIHNlY3Rpb24gZm9yIGV2ZW4gaW5wdXQgc2FtcGxl
ICovCisgICAgICAgIFkgICAgICA9IFNVQjMyKCBpbjMyLCBTWyAwIF0gKTsKKyAgICAgICAgWCAg
ICAgID0gTVVMVDE2XzMyX1ExNShRQ09OU1QxNigwLjYwNzQzNzFmLCAxNSksIFkpOworICAgICAg
ICBvdXQzMiAgPSBBREQzMiggU1sgMCBdLCBYICk7CisgICAgICAgIFNbIDAgXSA9IEFERDMyKCBp
bjMyLCBYICk7CisgICAgICAgIG91dDMyX2hwID0gb3V0MzI7CisgICAgICAgIC8qIENvbnZlcnQg
dG8gUTEwICovCisgICAgICAgIGluMzIgPSBpblsgMiAqIGsgKyAxIF07CisKKyAgICAgICAgLyog
QWxsLXBhc3Mgc2VjdGlvbiBmb3Igb2RkIGlucHV0IHNhbXBsZSwgYW5kIGFkZCB0byBvdXRwdXQg
b2YgcHJldmlvdXMgc2VjdGlvbiAqLworICAgICAgICBZICAgICAgPSBTVUIzMiggaW4zMiwgU1sg
MSBdICk7CisgICAgICAgIFggICAgICA9IE1VTFQxNl8zMl9RMTUoUUNPTlNUMTYoMC4xNTA2M2Ys
IDE1KSwgWSk7CisgICAgICAgIG91dDMyICA9IEFERDMyKCBvdXQzMiwgU1sgMSBdICk7CisgICAg
ICAgIG91dDMyICA9IEFERDMyKCBvdXQzMiwgWCApOworICAgICAgICBTWyAxIF0gPSBBREQzMigg
aW4zMiwgWCApOworCisgICAgICAgIFkgICAgICA9IFNVQjMyKCAtaW4zMiwgU1sgMiBdICk7Cisg
ICAgICAgIFggICAgICA9IE1VTFQxNl8zMl9RMTUoUUNPTlNUMTYoMC4xNTA2M2YsIDE1KSwgWSk7
CisgICAgICAgIG91dDMyX2hwICA9IEFERDMyKCBvdXQzMl9ocCwgU1sgMiBdICk7CisgICAgICAg
IG91dDMyX2hwICA9IEFERDMyKCBvdXQzMl9ocCwgWCApOworICAgICAgICBTWyAyIF0gPSBBREQz
MiggLWluMzIsIFggKTsKKworICAgICAgICBocF9lbmVyICs9IG91dDMyX2hwKihvcHVzX3ZhbDY0
KW91dDMyX2hwOworICAgICAgICAvKiBBZGQsIGNvbnZlcnQgYmFjayB0byBpbnQxNiBhbmQgc3Rv
cmUgdG8gb3V0cHV0ICovCisgICAgICAgIG91dFsgayBdID0gSEFMRjMyKG91dDMyKTsKKyAgICB9
CisjaWZkZWYgRklYRURfUE9JTlQKKyAgICAvKiBsZW4yIGNhbiBiZSB1cCB0byA0ODAsIHNvIHdl
IHNoaWZ0IGJ5IDggbW9yZSB0byBtYWtlIGl0IGZpdC4gKi8KKyAgICBocF9lbmVyID0gaHBfZW5l
ciA+PiAoMipTSUdfU0hJRlQgKyA4KTsKKyNlbmRpZgorICAgIHJldHVybiAob3B1c192YWwzMilo
cF9lbmVyOworfQorCitzdGF0aWMgb3B1c192YWwzMiBkb3dubWl4X2FuZF9yZXNhbXBsZShkb3du
bWl4X2Z1bmMgZG93bm1peCwgY29uc3Qgdm9pZCAqX3gsIG9wdXNfdmFsMzIgKnksIG9wdXNfdmFs
MzIgU1szXSwgaW50IHN1YmZyYW1lLCBpbnQgb2Zmc2V0LCBpbnQgYzEsIGludCBjMiwgaW50IEMs
IGludCBGcykKK3sKKyAgIFZBUkRFQ0wob3B1c192YWwzMiwgdG1wKTsKKyAgIG9wdXNfdmFsMzIg
c2NhbGU7CisgICBpbnQgajsKKyAgIG9wdXNfdmFsMzIgcmV0ID0gMDsKKyAgIFNBVkVfU1RBQ0s7
CisKKyAgIGlmIChzdWJmcmFtZT09MCkgcmV0dXJuIDA7CisgICBpZiAoRnMgPT0gNDgwMDApCiAg
ICB7Ci0gICAgICB4Kj0xZTEyZjsKLSAgICAgIHkqPTFlMTJmOworICAgICAgc3ViZnJhbWUgKj0g
MjsKKyAgICAgIG9mZnNldCAqPSAyOworICAgfSBlbHNlIGlmIChGcyA9PSAxNjAwMCkgeworICAg
ICAgc3ViZnJhbWUgPSBzdWJmcmFtZSoyLzM7CisgICAgICBvZmZzZXQgPSBvZmZzZXQqMi8zOwog
ICAgfQotICAgeDIgPSB4Kng7Ci0gICB5MiA9IHkqeTsKLSAgIGlmKHgyPHkyKXsKLSAgICAgIGZs
b2F0IGRlbiA9ICh5MiArIGNCKngyKSAqICh5MiArIGNDKngyKTsKLSAgICAgIGlmIChkZW4hPTAp
Ci0gICAgICAgICByZXR1cm4gLXgqeSooeTIgKyBjQSp4MikgLyBkZW4gKyAoeTwwID8gLWNFIDog
Y0UpOwotICAgICAgZWxzZQotICAgICAgICAgcmV0dXJuICh5PDAgPyAtY0UgOiBjRSk7Ci0gICB9
ZWxzZXsKLSAgICAgIGZsb2F0IGRlbiA9ICh4MiArIGNCKnkyKSAqICh4MiArIGNDKnkyKTsKLSAg
ICAgIGlmIChkZW4hPTApCi0gICAgICAgICByZXR1cm4gIHgqeSooeDIgKyBjQSp5MikgLyBkZW4g
KyAoeTwwID8gLWNFIDogY0UpIC0gKHgqeTwwID8gLWNFIDogY0UpOwotICAgICAgZWxzZQotICAg
ICAgICAgcmV0dXJuICh5PDAgPyAtY0UgOiBjRSkgLSAoeCp5PDAgPyAtY0UgOiBjRSk7CisgICBB
TExPQyh0bXAsIHN1YmZyYW1lLCBvcHVzX3ZhbDMyKTsKKworICAgZG93bm1peChfeCwgdG1wLCBz
dWJmcmFtZSwgb2Zmc2V0LCBjMSwgYzIsIEMpOworI2lmZGVmIEZJWEVEX1BPSU5UCisgICBzY2Fs
ZSA9ICgxPDxTSUdfU0hJRlQpOworI2Vsc2UKKyAgIHNjYWxlID0gMS5mLzMyNzY4OworI2VuZGlm
CisgICBpZiAoYzI9PS0yKQorICAgICAgc2NhbGUgLz0gQzsKKyAgIGVsc2UgaWYgKGMyPi0xKQor
ICAgICAgc2NhbGUgLz0gMjsKKyAgIGZvciAoaj0wO2o8c3ViZnJhbWU7aisrKQorICAgICAgdG1w
W2pdICo9IHNjYWxlOworICAgaWYgKEZzID09IDQ4MDAwKQorICAgeworICAgICAgcmV0ID0gc2ls
a19yZXNhbXBsZXJfZG93bjJfaHAoUywgeSwgdG1wLCBzdWJmcmFtZSk7CisgICB9IGVsc2UgaWYg
KEZzID09IDI0MDAwKSB7CisgICAgICBPUFVTX0NPUFkoeSwgdG1wLCBzdWJmcmFtZSk7CisgICB9
IGVsc2UgaWYgKEZzID09IDE2MDAwKSB7CisgICAgICBWQVJERUNMKG9wdXNfdmFsMzIsIHRtcDN4
KTsKKyAgICAgIEFMTE9DKHRtcDN4LCAzKnN1YmZyYW1lLCBvcHVzX3ZhbDMyKTsKKyAgICAgIC8q
IERvbid0IGRvIHRoaXMgYXQgaG9tZSEgVGhpcyByZXNhbXBsZXIgaXMgaG9ycmlibGUgYW5kIGl0
J3Mgb25seSAoYmFyZWx5KQorICAgICAgICAgdXNhYmxlIGZvciB0aGUgcHVycG9zZSBvZiB0aGUg
YW5hbHlzaXMgYmVjYXVzZSB3ZSBkb24ndCBjYXJlIGFib3V0IGFsbAorICAgICAgICAgdGhlIGFs
aWFzaW5nIGJldHdlZW4gOCBrSHogYW5kIDEyIGtIei4gKi8KKyAgICAgIGZvciAoaj0wO2o8c3Vi
ZnJhbWU7aisrKQorICAgICAgeworICAgICAgICAgdG1wM3hbMypqXSA9IHRtcFtqXTsKKyAgICAg
ICAgIHRtcDN4WzMqaisxXSA9IHRtcFtqXTsKKyAgICAgICAgIHRtcDN4WzMqaisyXSA9IHRtcFtq
XTsKKyAgICAgIH0KKyAgICAgIHNpbGtfcmVzYW1wbGVyX2Rvd24yX2hwKFMsIHksIHRtcDN4LCAz
KnN1YmZyYW1lKTsKICAgIH0KKyAgIFJFU1RPUkVfU1RBQ0s7CisgICByZXR1cm4gcmV0OwogfQog
Ci12b2lkIHRvbmFsaXR5X2FuYWx5c2lzX2luaXQoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25h
bCkKK3ZvaWQgdG9uYWxpdHlfYW5hbHlzaXNfaW5pdChUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRv
bmFsLCBvcHVzX2ludDMyIEZzKQogewogICAvKiBJbml0aWFsaXplIHJldXNhYmxlIGZpZWxkcy4g
Ki8KICAgdG9uYWwtPmFyY2ggPSBvcHVzX3NlbGVjdF9hcmNoKCk7CisgIHRvbmFsLT5GcyA9IEZz
OwogICAvKiBDbGVhciByZW1haW5pbmcgZmllbGRzLiAqLwogICB0b25hbGl0eV9hbmFseXNpc19y
ZXNldCh0b25hbCk7CiB9CkBAIC0xNTEsNiArMjI0LDggQEAgdm9pZCB0b25hbGl0eV9hbmFseXNp
c19yZXNldChUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsKQogICAvKiBDbGVhciBub24tcmV1
c2FibGUgZmllbGRzLiAqLwogICBjaGFyICpzdGFydCA9IChjaGFyKikmdG9uYWwtPlRPTkFMSVRZ
X0FOQUxZU0lTX1JFU0VUX1NUQVJUOwogICBPUFVTX0NMRUFSKHN0YXJ0LCBzaXplb2YoVG9uYWxp
dHlBbmFseXNpc1N0YXRlKSAtIChzdGFydCAtIChjaGFyKil0b25hbCkpOworICB0b25hbC0+bXVz
aWNfY29uZmlkZW5jZSA9IC45ZjsKKyAgdG9uYWwtPnNwZWVjaF9jb25maWRlbmNlID0gLjFmOwog
fQogCiB2b2lkIHRvbmFsaXR5X2dldF9pbmZvKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWws
IEFuYWx5c2lzSW5mbyAqaW5mb19vdXQsIGludCBsZW4pCkBAIC0xNTgsNiArMjMzLDkgQEAgdm9p
ZCB0b25hbGl0eV9nZXRfaW5mbyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBBbmFseXNp
c0luZm8gKmluZm9fb3V0LCBpbnQKICAgIGludCBwb3M7CiAgICBpbnQgY3Vycl9sb29rYWhlYWQ7
CiAgICBmbG9hdCBwc3VtOworICAgZmxvYXQgdG9uYWxpdHlfbWF4OworICAgZmxvYXQgdG9uYWxp
dHlfYXZnOworICAgaW50IHRvbmFsaXR5X2NvdW50OwogICAgaW50IGk7CiAKICAgIHBvcyA9IHRv
bmFsLT5yZWFkX3BvczsKQEAgLTE2NSw3ICsyNDMsOCBAQCB2b2lkIHRvbmFsaXR5X2dldF9pbmZv
KFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIEFuYWx5c2lzSW5mbyAqaW5mb19vdXQsIGlu
dAogICAgaWYgKGN1cnJfbG9va2FoZWFkPDApCiAgICAgICBjdXJyX2xvb2thaGVhZCArPSBERVRF
Q1RfU0laRTsKIAotICAgaWYgKGxlbiA+IDQ4MCAmJiBwb3MgIT0gdG9uYWwtPndyaXRlX3BvcykK
KyAgIC8qIE9uIGxvbmcgZnJhbWVzLCBsb29rIGF0IHRoZSBzZWNvbmQgYW5hbHlzaXMgd2luZG93
IHJhdGhlciB0aGFuIHRoZSBmaXJzdC4gKi8KKyAgIGlmIChsZW4gPiB0b25hbC0+RnMvNTAgJiYg
cG9zICE9IHRvbmFsLT53cml0ZV9wb3MpCiAgICB7CiAgICAgICBwb3MrKzsKICAgICAgIGlmIChw
b3M9PURFVEVDVF9TSVpFKQpAQCAtMTc2LDE4ICsyNTUsMzIgQEAgdm9pZCB0b25hbGl0eV9nZXRf
aW5mbyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBBbmFseXNpc0luZm8gKmluZm9fb3V0
LCBpbnQKICAgIGlmIChwb3M8MCkKICAgICAgIHBvcyA9IERFVEVDVF9TSVpFLTE7CiAgICBPUFVT
X0NPUFkoaW5mb19vdXQsICZ0b25hbC0+aW5mb1twb3NdLCAxKTsKLSAgIHRvbmFsLT5yZWFkX3N1
YmZyYW1lICs9IGxlbi8xMjA7Ci0gICB3aGlsZSAodG9uYWwtPnJlYWRfc3ViZnJhbWU+PTQpCisg
ICB0b25hbGl0eV9tYXggPSB0b25hbGl0eV9hdmcgPSBpbmZvX291dC0+dG9uYWxpdHk7CisgICB0
b25hbGl0eV9jb3VudCA9IDE7CisgICAvKiBJZiBwb3NzaWJsZSwgbG9vayBhaGVhZCBmb3IgYSB0
b25lIHRvIGNvbXBlbnNhdGUgZm9yIHRoZSBkZWxheSBpbiB0aGUgdG9uZSBkZXRlY3Rvci4gKi8K
KyAgIGZvciAoaT0wO2k8MztpKyspCiAgICB7Ci0gICAgICB0b25hbC0+cmVhZF9zdWJmcmFtZSAt
PSA0OworICAgICAgcG9zKys7CisgICAgICBpZiAocG9zPT1ERVRFQ1RfU0laRSkKKyAgICAgICAg
IHBvcyA9IDA7CisgICAgICBpZiAocG9zID09IHRvbmFsLT53cml0ZV9wb3MpCisgICAgICAgICBi
cmVhazsKKyAgICAgIHRvbmFsaXR5X21heCA9IE1BWDMyKHRvbmFsaXR5X21heCwgdG9uYWwtPmlu
Zm9bcG9zXS50b25hbGl0eSk7CisgICAgICB0b25hbGl0eV9hdmcgKz0gdG9uYWwtPmluZm9bcG9z
XS50b25hbGl0eTsKKyAgICAgIHRvbmFsaXR5X2NvdW50Kys7CisgICB9CisgICBpbmZvX291dC0+
dG9uYWxpdHkgPSBNQVgzMih0b25hbGl0eV9hdmcvdG9uYWxpdHlfY291bnQsIHRvbmFsaXR5X21h
eC0uMmYpOworICAgdG9uYWwtPnJlYWRfc3ViZnJhbWUgKz0gbGVuLyh0b25hbC0+RnMvNDAwKTsK
KyAgIHdoaWxlICh0b25hbC0+cmVhZF9zdWJmcmFtZT49OCkKKyAgIHsKKyAgICAgIHRvbmFsLT5y
ZWFkX3N1YmZyYW1lIC09IDg7CiAgICAgICB0b25hbC0+cmVhZF9wb3MrKzsKICAgIH0KICAgIGlm
ICh0b25hbC0+cmVhZF9wb3M+PURFVEVDVF9TSVpFKQogICAgICAgdG9uYWwtPnJlYWRfcG9zLT1E
RVRFQ1RfU0laRTsKIAotICAgLyogQ29tcGVuc2F0ZSBmb3IgdGhlIGRlbGF5IGluIHRoZSBmZWF0
dXJlcyB0aGVtc2VsdmVzLgotICAgICAgRklYTUU6IE5lZWQgYSBiZXR0ZXIgZXN0aW1hdGUgdGhl
IDEwIEkganVzdCBtYWRlIHVwICovCi0gICBjdXJyX2xvb2thaGVhZCA9IElNQVgoY3Vycl9sb29r
YWhlYWQtMTAsIDApOworICAgLyogVGhlIC0xIGlzIHRvIGNvbXBlbnNhdGUgZm9yIHRoZSBkZWxh
eSBpbiB0aGUgZmVhdHVyZXMgdGhlbXNlbHZlcy4gKi8KKyAgIGN1cnJfbG9va2FoZWFkID0gSU1B
WChjdXJyX2xvb2thaGVhZC0xLCAwKTsKIAogICAgcHN1bT0wOwogICAgLyogU3VtbWluZyB0aGUg
cHJvYmFiaWxpdHkgb2YgdHJhbnNpdGlvbiBwYXR0ZXJucyB0aGF0IGludm9sdmUgbXVzaWMgYXQK
QEAgLTE5NywxMSArMjkwLDI4IEBAIHZvaWQgdG9uYWxpdHlfZ2V0X2luZm8oVG9uYWxpdHlBbmFs
eXNpc1N0YXRlICp0b25hbCwgQW5hbHlzaXNJbmZvICppbmZvX291dCwgaW50CiAgICBmb3IgKDtp
PERFVEVDVF9TSVpFO2krKykKICAgICAgIHBzdW0gKz0gdG9uYWwtPnBzcGVlY2hbaV07CiAgICBw
c3VtID0gcHN1bSp0b25hbC0+bXVzaWNfY29uZmlkZW5jZSArICgxLXBzdW0pKnRvbmFsLT5zcGVl
Y2hfY29uZmlkZW5jZTsKLSAgIC8qcHJpbnRmKCIlZiAlZiAlZlxuIiwgcHN1bSwgaW5mb19vdXQt
Pm11c2ljX3Byb2IsIGluZm9fb3V0LT50b25hbGl0eSk7Ki8KKyAgIC8qcHJpbnRmKCIlZiAlZiAl
ZiAlZiAlZlxuIiwgcHN1bSwgaW5mb19vdXQtPm11c2ljX3Byb2IsIGluZm9fb3V0LT52YWRfcHJv
YiwgaW5mb19vdXQtPmFjdGl2aXR5X3Byb2JhYmlsaXR5LCBpbmZvX291dC0+dG9uYWxpdHkpOyov
CiAKICAgIGluZm9fb3V0LT5tdXNpY19wcm9iID0gcHN1bTsKIH0KIAorc3RhdGljIGNvbnN0IGZs
b2F0IHN0ZF9mZWF0dXJlX2JpYXNbOV0gPSB7CisgICAgICA1LjY4NDk0N2YsIDMuNDc1Mjg4Ziwg
MS43NzA2MzRmLCAxLjU5OTc4NGYsIDMuNzczMjE1ZiwKKyAgICAgIDIuMTYzMzEzZiwgMS4yNjA3
NTZmLCAxLjExNjg2OGYsIDEuOTE4Nzk1ZgorfTsKKworI2RlZmluZSBMRUFLQUdFX09GRlNFVCAy
LjVmCisjZGVmaW5lIExFQUtBR0VfU0xPUEUgMi5mCisKKyNpZmRlZiBGSVhFRF9QT0lOVAorLyog
Rm9yIGZpeGVkLXBvaW50LCB0aGUgaW5wdXQgaXMgKy8tMl4xNSBzaGlmdGVkIHVwIGJ5IFNJR19T
SElGVCwgc28gd2UgbmVlZCB0bworICAgY29tcGVuc2F0ZSBmb3IgdGhhdCBpbiB0aGUgZW5lcmd5
LiAqLworI2RlZmluZSBTQ0FMRV9DT01QRU5TICgxLmYvKChvcHVzX2ludDMyKTE8PCgxNStTSUdf
U0hJRlQpKSkKKyNkZWZpbmUgU0NBTEVfRU5FUihlKSAoKFNDQUxFX0NPTVBFTlMqU0NBTEVfQ09N
UEVOUykqKGUpKQorI2Vsc2UKKyNkZWZpbmUgU0NBTEVfRU5FUihlKSAoZSkKKyNlbmRpZgorCiBz
dGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFs
LCBjb25zdCBDRUxUTW9kZSAqY2VsdF9tb2RlLCBjb25zdCB2b2lkICp4LCBpbnQgbGVuLCBpbnQg
b2Zmc2V0LCBpbnQgYzEsIGludCBjMiwgaW50IEMsIGludCBsc2JfZGVwdGgsIGRvd25taXhfZnVu
YyBkb3dubWl4KQogewogICAgIGludCBpLCBiOwpAQCAtMjM1LDE5ICszNDUsNDEgQEAgc3RhdGlj
IHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29u
c3QgQ0VMVE1vZGUgKmNlbHQKICAgICBmbG9hdCBub2lzZV9mbG9vcjsKICAgICBpbnQgcmVtYWlu
aW5nOwogICAgIEFuYWx5c2lzSW5mbyAqaW5mbzsKKyAgICBmbG9hdCBocF9lbmVyOworICAgIGZs
b2F0IHRvbmFsaXR5MlsyNDBdOworICAgIGZsb2F0IG1pZEVbOF07CisgICAgZmxvYXQgc3BlY192
YXJpYWJpbGl0eT0wOworICAgIGZsb2F0IGJhbmRfbG9nMltOQl9UQkFORFMrMV07CisgICAgZmxv
YXQgbGVha2FnZV9mcm9tW05CX1RCQU5EUysxXTsKKyAgICBmbG9hdCBsZWFrYWdlX3RvW05CX1RC
QU5EUysxXTsKICAgICBTQVZFX1NUQUNLOwogCi0gICAgdG9uYWwtPmxhc3RfdHJhbnNpdGlvbisr
OwotICAgIGFscGhhID0gMS5mL0lNSU4oMjAsIDErdG9uYWwtPmNvdW50KTsKLSAgICBhbHBoYUUg
PSAxLmYvSU1JTig1MCwgMSt0b25hbC0+Y291bnQpOwotICAgIGFscGhhRTIgPSAxLmYvSU1JTigx
MDAwLCAxK3RvbmFsLT5jb3VudCk7CisgICAgYWxwaGEgPSAxLmYvSU1JTigxMCwgMSt0b25hbC0+
Y291bnQpOworICAgIGFscGhhRSA9IDEuZi9JTUlOKDI1LCAxK3RvbmFsLT5jb3VudCk7CisgICAg
YWxwaGFFMiA9IDEuZi9JTUlOKDUwMCwgMSt0b25hbC0+Y291bnQpOworCisgICAgaWYgKHRvbmFs
LT5GcyA9PSA0ODAwMCkKKyAgICB7CisgICAgICAgLyogbGVuIGFuZCBvZmZzZXQgYXJlIG5vdyBh
dCAyNCBrSHouICovCisgICAgICAgbGVuLz0gMjsKKyAgICAgICBvZmZzZXQgLz0gMjsKKyAgICB9
IGVsc2UgaWYgKHRvbmFsLT5GcyA9PSAxNjAwMCkgeworICAgICAgIGxlbiA9IDMqbGVuLzI7Cisg
ICAgICAgb2Zmc2V0ID0gMypvZmZzZXQvMjsKKyAgICB9CiAKLSAgICBpZiAodG9uYWwtPmNvdW50
PDQpCi0gICAgICAgdG9uYWwtPm11c2ljX3Byb2IgPSAuNTsKKyAgICBpZiAodG9uYWwtPmNvdW50
PDQpIHsKKyAgICAgICBpZiAodG9uYWwtPmFwcGxpY2F0aW9uID09IE9QVVNfQVBQTElDQVRJT05f
Vk9JUCkKKyAgICAgICAgICB0b25hbC0+bXVzaWNfcHJvYiA9IC4xZjsKKyAgICAgICBlbHNlCisg
ICAgICAgICAgdG9uYWwtPm11c2ljX3Byb2IgPSAuNjI1ZjsKKyAgICB9CiAgICAga2ZmdCA9IGNl
bHRfbW9kZS0+bWRjdC5rZmZ0WzBdOwogICAgIGlmICh0b25hbC0+Y291bnQ9PTApCiAgICAgICAg
dG9uYWwtPm1lbV9maWxsID0gMjQwOwotICAgIGRvd25taXgoeCwgJnRvbmFsLT5pbm1lbVt0b25h
bC0+bWVtX2ZpbGxdLCBJTUlOKGxlbiwgQU5BTFlTSVNfQlVGX1NJWkUtdG9uYWwtPm1lbV9maWxs
KSwgb2Zmc2V0LCBjMSwgYzIsIEMpOworICAgIHRvbmFsLT5ocF9lbmVyX2FjY3VtICs9IChmbG9h
dClkb3dubWl4X2FuZF9yZXNhbXBsZShkb3dubWl4LCB4LAorICAgICAgICAgICZ0b25hbC0+aW5t
ZW1bdG9uYWwtPm1lbV9maWxsXSwgdG9uYWwtPmRvd25taXhfc3RhdGUsCisgICAgICAgICAgSU1J
TihsZW4sIEFOQUxZU0lTX0JVRl9TSVpFLXRvbmFsLT5tZW1fZmlsbCksIG9mZnNldCwgYzEsIGMy
LCBDLCB0b25hbC0+RnMpOwogICAgIGlmICh0b25hbC0+bWVtX2ZpbGwrbGVuIDwgQU5BTFlTSVNf
QlVGX1NJWkUpCiAgICAgewogICAgICAgIHRvbmFsLT5tZW1fZmlsbCArPSBsZW47CkBAIC0yNTUs
NiArMzg3LDcgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNp
c1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICBSRVNUT1JFX1NUQUNL
OwogICAgICAgIHJldHVybjsKICAgICB9CisgICAgaHBfZW5lciA9IHRvbmFsLT5ocF9lbmVyX2Fj
Y3VtOwogICAgIGluZm8gPSAmdG9uYWwtPmluZm9bdG9uYWwtPndyaXRlX3BvcysrXTsKICAgICBp
ZiAodG9uYWwtPndyaXRlX3Bvcz49REVURUNUX1NJWkUpCiAgICAgICAgdG9uYWwtPndyaXRlX3Bv
cy09REVURUNUX1NJWkU7CkBAIC0yNzMsNyArNDA2LDkgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlf
YW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNl
bHQKICAgICB9CiAgICAgT1BVU19NT1ZFKHRvbmFsLT5pbm1lbSwgdG9uYWwtPmlubWVtK0FOQUxZ
U0lTX0JVRl9TSVpFLTI0MCwgMjQwKTsKICAgICByZW1haW5pbmcgPSBsZW4gLSAoQU5BTFlTSVNf
QlVGX1NJWkUtdG9uYWwtPm1lbV9maWxsKTsKLSAgICBkb3dubWl4KHgsICZ0b25hbC0+aW5tZW1b
MjQwXSwgcmVtYWluaW5nLCBvZmZzZXQrQU5BTFlTSVNfQlVGX1NJWkUtdG9uYWwtPm1lbV9maWxs
LCBjMSwgYzIsIEMpOworICAgIHRvbmFsLT5ocF9lbmVyX2FjY3VtID0gKGZsb2F0KWRvd25taXhf
YW5kX3Jlc2FtcGxlKGRvd25taXgsIHgsCisgICAgICAgICAgJnRvbmFsLT5pbm1lbVsyNDBdLCB0
b25hbC0+ZG93bm1peF9zdGF0ZSwgcmVtYWluaW5nLAorICAgICAgICAgIG9mZnNldCtBTkFMWVNJ
U19CVUZfU0laRS10b25hbC0+bWVtX2ZpbGwsIGMxLCBjMiwgQywgdG9uYWwtPkZzKTsKICAgICB0
b25hbC0+bWVtX2ZpbGwgPSAyNDAgKyByZW1haW5pbmc7CiAgICAgb3B1c19mZnQoa2ZmdCwgaW4s
IG91dCwgdG9uYWwtPmFyY2gpOwogI2lmbmRlZiBGSVhFRF9QT0lOVApAQCAtMzA1LDI0ICs0NDAs
MzEgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRl
ICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICBkX2FuZ2xlMiA9IGFuZ2xlMiAt
IGFuZ2xlOwogICAgICAgIGQyX2FuZ2xlMiA9IGRfYW5nbGUyIC0gZF9hbmdsZTsKIAotICAgICAg
IG1vZDEgPSBkMl9hbmdsZSAtIChmbG9hdClmbG9vciguNStkMl9hbmdsZSk7CisgICAgICAgbW9k
MSA9IGQyX2FuZ2xlIC0gKGZsb2F0KWZsb2F0MmludChkMl9hbmdsZSk7CiAgICAgICAgbm9pc2lu
ZXNzW2ldID0gQUJTMTYobW9kMSk7CiAgICAgICAgbW9kMSAqPSBtb2QxOwogICAgICAgIG1vZDEg
Kj0gbW9kMTsKIAotICAgICAgIG1vZDIgPSBkMl9hbmdsZTIgLSAoZmxvYXQpZmxvb3IoLjUrZDJf
YW5nbGUyKTsKKyAgICAgICBtb2QyID0gZDJfYW5nbGUyIC0gKGZsb2F0KWZsb2F0MmludChkMl9h
bmdsZTIpOwogICAgICAgIG5vaXNpbmVzc1tpXSArPSBBQlMxNihtb2QyKTsKICAgICAgICBtb2Qy
ICo9IG1vZDI7CiAgICAgICAgbW9kMiAqPSBtb2QyOwogCi0gICAgICAgYXZnX21vZCA9IC4yNWYq
KGQyQVtpXSsyLmYqbW9kMSttb2QyKTsKKyAgICAgICBhdmdfbW9kID0gLjI1ZiooZDJBW2ldK21v
ZDErMiptb2QyKTsKKyAgICAgICAvKiBUaGlzIGludHJvZHVjZXMgYW4gZXh0cmEgZGVsYXkgb2Yg
MiBmcmFtZXMgaW4gdGhlIGRldGVjdGlvbi4gKi8KICAgICAgICB0b25hbGl0eVtpXSA9IDEuZi8o
MS5mKzQwLmYqMTYuZipwaTQqYXZnX21vZCktLjAxNWY7CisgICAgICAgLyogTm8gZGVsYXkgb24g
dGhpcyBkZXRlY3Rpb24sIGJ1dCBpdCdzIGxlc3MgcmVsaWFibGUuICovCisgICAgICAgdG9uYWxp
dHkyW2ldID0gMS5mLygxLmYrNDAuZioxNi5mKnBpNCptb2QyKS0uMDE1ZjsKIAogICAgICAgIEFb
aV0gPSBhbmdsZTI7CiAgICAgICAgZEFbaV0gPSBkX2FuZ2xlMjsKICAgICAgICBkMkFbaV0gPSBt
b2QyOwogICAgIH0KLQorICAgIGZvciAoaT0yO2k8TjItMTtpKyspCisgICAgeworICAgICAgIGZs
b2F0IHR0ID0gTUlOMzIodG9uYWxpdHkyW2ldLCBNQVgzMih0b25hbGl0eTJbaS0xXSwgdG9uYWxp
dHkyW2krMV0pKTsKKyAgICAgICB0b25hbGl0eVtpXSA9IC45ZipNQVgzMih0b25hbGl0eVtpXSwg
dHQtLjFmKTsKKyAgICB9CiAgICAgZnJhbWVfdG9uYWxpdHkgPSAwOwogICAgIG1heF9mcmFtZV90
b25hbGl0eSA9IDA7CiAgICAgLyp0d19zdW0gPSAwOyovCkBAIC0zMzksNiArNDgxLDIyIEBAIHN0
YXRpYyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWws
IGNvbnN0IENFTFRNb2RlICpjZWx0CiAgICAgfQogICAgIHJlbGF0aXZlRSA9IDA7CiAgICAgZnJh
bWVfbG91ZG5lc3MgPSAwOworICAgIC8qIFRoZSBlbmVyZ3kgb2YgdGhlIHZlcnkgZmlyc3QgYmFu
ZCBpcyBzcGVjaWFsIGJlY2F1c2Ugb2YgREMuICovCisgICAgeworICAgICAgIGZsb2F0IEUgPSAw
OworICAgICAgIGZsb2F0IFgxciwgWDJyOworICAgICAgIFgxciA9IDIqKGZsb2F0KW91dFswXS5y
OworICAgICAgIFgyciA9IDIqKGZsb2F0KW91dFswXS5pOworICAgICAgIEUgPSBYMXIqWDFyICsg
WDJyKlgycjsKKyAgICAgICBmb3IgKGk9MTtpPDQ7aSsrKQorICAgICAgIHsKKyAgICAgICAgICBm
bG9hdCBiaW5FID0gb3V0W2ldLnIqKGZsb2F0KW91dFtpXS5yICsgb3V0W04taV0uciooZmxvYXQp
b3V0W04taV0ucgorICAgICAgICAgICAgICAgICAgICAgKyBvdXRbaV0uaSooZmxvYXQpb3V0W2ld
LmkgKyBvdXRbTi1pXS5pKihmbG9hdClvdXRbTi1pXS5pOworICAgICAgICAgIEUgKz0gYmluRTsK
KyAgICAgICB9CisgICAgICAgRSA9IFNDQUxFX0VORVIoRSk7CisgICAgICAgYmFuZF9sb2cyWzBd
ID0gLjVmKjEuNDQyNjk1ZiooZmxvYXQpbG9nKEUrMWUtMTBmKTsKKyAgICB9CiAgICAgZm9yIChi
PTA7YjxOQl9UQkFORFM7YisrKQogICAgIHsKICAgICAgICBmbG9hdCBFPTAsIHRFPTAsIG5FPTA7
CkBAIC0zNDgsMTIgKzUwNiw5IEBAIHN0YXRpYyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFs
aXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2RlICpjZWx0CiAgICAgICAgewog
ICAgICAgICAgIGZsb2F0IGJpbkUgPSBvdXRbaV0uciooZmxvYXQpb3V0W2ldLnIgKyBvdXRbTi1p
XS5yKihmbG9hdClvdXRbTi1pXS5yCiAgICAgICAgICAgICAgICAgICAgICArIG91dFtpXS5pKihm
bG9hdClvdXRbaV0uaSArIG91dFtOLWldLmkqKGZsb2F0KW91dFtOLWldLmk7Ci0jaWZkZWYgRklY
RURfUE9JTlQKLSAgICAgICAgICAvKiBGSVhNRTogSXQncyBwcm9iYWJseSBiZXN0IHRvIGNoYW5n
ZSB0aGUgQkZDQyBmaWx0ZXIgaW5pdGlhbCBzdGF0ZSBpbnN0ZWFkICovCi0gICAgICAgICAgYmlu
RSAqPSA1LjU1ZS0xN2Y7Ci0jZW5kaWYKKyAgICAgICAgICBiaW5FID0gU0NBTEVfRU5FUihiaW5F
KTsKICAgICAgICAgICBFICs9IGJpbkU7Ci0gICAgICAgICAgdEUgKz0gYmluRSp0b25hbGl0eVtp
XTsKKyAgICAgICAgICB0RSArPSBiaW5FKk1BWDMyKDAsIHRvbmFsaXR5W2ldKTsKICAgICAgICAg
ICBuRSArPSBiaW5FKjIuZiooLjVmLW5vaXNpbmVzc1tpXSk7CiAgICAgICAgfQogI2lmbmRlZiBG
SVhFRF9QT0lOVApAQCAtMzcxLDE0ICs1MjYsMjcgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5h
bHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQK
IAogICAgICAgIGZyYW1lX2xvdWRuZXNzICs9IChmbG9hdClzcXJ0KEUrMWUtMTBmKTsKICAgICAg
ICBsb2dFW2JdID0gKGZsb2F0KWxvZyhFKzFlLTEwZik7Ci0gICAgICAgdG9uYWwtPmxvd0VbYl0g
PSBNSU4zMihsb2dFW2JdLCB0b25hbC0+bG93RVtiXSsuMDFmKTsKLSAgICAgICB0b25hbC0+aGln
aEVbYl0gPSBNQVgzMihsb2dFW2JdLCB0b25hbC0+aGlnaEVbYl0tLjFmKTsKLSAgICAgICBpZiAo
dG9uYWwtPmhpZ2hFW2JdIDwgdG9uYWwtPmxvd0VbYl0rMS5mKQorICAgICAgIGJhbmRfbG9nMlti
KzFdID0gLjVmKjEuNDQyNjk1ZiooZmxvYXQpbG9nKEUrMWUtMTBmKTsKKyAgICAgICB0b25hbC0+
bG9nRVt0b25hbC0+RV9jb3VudF1bYl0gPSBsb2dFW2JdOworICAgICAgIGlmICh0b25hbC0+Y291
bnQ9PTApCisgICAgICAgICAgdG9uYWwtPmhpZ2hFW2JdID0gdG9uYWwtPmxvd0VbYl0gPSBsb2dF
W2JdOworICAgICAgIGlmICh0b25hbC0+aGlnaEVbYl0gPiB0b25hbC0+bG93RVtiXSArIDcuNSkK
KyAgICAgICB7CisgICAgICAgICAgaWYgKHRvbmFsLT5oaWdoRVtiXSAtIGxvZ0VbYl0gPiBsb2dF
W2JdIC0gdG9uYWwtPmxvd0VbYl0pCisgICAgICAgICAgICAgdG9uYWwtPmhpZ2hFW2JdIC09IC4w
MWY7CisgICAgICAgICAgZWxzZQorICAgICAgICAgICAgIHRvbmFsLT5sb3dFW2JdICs9IC4wMWY7
CisgICAgICAgfQorICAgICAgIGlmIChsb2dFW2JdID4gdG9uYWwtPmhpZ2hFW2JdKQogICAgICAg
IHsKLSAgICAgICAgICB0b25hbC0+aGlnaEVbYl0rPS41ZjsKLSAgICAgICAgICB0b25hbC0+bG93
RVtiXS09LjVmOworICAgICAgICAgIHRvbmFsLT5oaWdoRVtiXSA9IGxvZ0VbYl07CisgICAgICAg
ICAgdG9uYWwtPmxvd0VbYl0gPSBNQVgzMih0b25hbC0+aGlnaEVbYl0tMTUsIHRvbmFsLT5sb3dF
W2JdKTsKKyAgICAgICB9IGVsc2UgaWYgKGxvZ0VbYl0gPCB0b25hbC0+bG93RVtiXSkKKyAgICAg
ICB7CisgICAgICAgICAgdG9uYWwtPmxvd0VbYl0gPSBsb2dFW2JdOworICAgICAgICAgIHRvbmFs
LT5oaWdoRVtiXSA9IE1JTjMyKHRvbmFsLT5sb3dFW2JdKzE1LCB0b25hbC0+aGlnaEVbYl0pOwog
ICAgICAgIH0KLSAgICAgICByZWxhdGl2ZUUgKz0gKGxvZ0VbYl0tdG9uYWwtPmxvd0VbYl0pLygx
ZS0xNWYrdG9uYWwtPmhpZ2hFW2JdLXRvbmFsLT5sb3dFW2JdKTsKKyAgICAgICByZWxhdGl2ZUUg
Kz0gKGxvZ0VbYl0tdG9uYWwtPmxvd0VbYl0pLygxZS0xNWYgKyAodG9uYWwtPmhpZ2hFW2JdLXRv
bmFsLT5sb3dFW2JdKSk7CiAKICAgICAgICBMMT1MMj0wOwogICAgICAgIGZvciAoaT0wO2k8TkJf
RlJBTUVTO2krKykKQEAgLTQxMCwyNyArNTc4LDc0IEBAIHN0YXRpYyB2b2lkIHRvbmFsaXR5X2Fu
YWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNvbnN0IENFTFRNb2RlICpjZWx0
CiAgICAgICAgdG9uYWwtPnByZXZfYmFuZF90b25hbGl0eVtiXSA9IGJhbmRfdG9uYWxpdHlbYl07
CiAgICAgfQogCisgICAgbGVha2FnZV9mcm9tWzBdID0gYmFuZF9sb2cyWzBdOworICAgIGxlYWth
Z2VfdG9bMF0gPSBiYW5kX2xvZzJbMF0gLSBMRUFLQUdFX09GRlNFVDsKKyAgICBmb3IgKGI9MTti
PE5CX1RCQU5EUysxO2IrKykKKyAgICB7CisgICAgICAgZmxvYXQgbGVha19zbG9wZSA9IExFQUtB
R0VfU0xPUEUqKHRiYW5kc1tiXS10YmFuZHNbYi0xXSkvNDsKKyAgICAgICBsZWFrYWdlX2Zyb21b
Yl0gPSBNSU4xNihsZWFrYWdlX2Zyb21bYi0xXStsZWFrX3Nsb3BlLCBiYW5kX2xvZzJbYl0pOwor
ICAgICAgIGxlYWthZ2VfdG9bYl0gPSBNQVgxNihsZWFrYWdlX3RvW2ItMV0tbGVha19zbG9wZSwg
YmFuZF9sb2cyW2JdLUxFQUtBR0VfT0ZGU0VUKTsKKyAgICB9CisgICAgZm9yIChiPU5CX1RCQU5E
Uy0yO2I+PTA7Yi0tKQorICAgIHsKKyAgICAgICBmbG9hdCBsZWFrX3Nsb3BlID0gTEVBS0FHRV9T
TE9QRSoodGJhbmRzW2IrMV0tdGJhbmRzW2JdKS80OworICAgICAgIGxlYWthZ2VfZnJvbVtiXSA9
IE1JTjE2KGxlYWthZ2VfZnJvbVtiKzFdK2xlYWtfc2xvcGUsIGxlYWthZ2VfZnJvbVtiXSk7Cisg
ICAgICAgbGVha2FnZV90b1tiXSA9IE1BWDE2KGxlYWthZ2VfdG9bYisxXS1sZWFrX3Nsb3BlLCBs
ZWFrYWdlX3RvW2JdKTsKKyAgICB9CisgICAgY2VsdF9hc3NlcnQoTkJfVEJBTkRTKzEgPD0gTEVB
S19CQU5EUyk7CisgICAgZm9yIChiPTA7YjxOQl9UQkFORFMrMTtiKyspCisgICAgeworICAgICAg
IC8qIGxlYWtfYm9vc3RbXSBpcyBtYWRlIHVwIG9mIHR3byB0ZXJtcy4gVGhlIGZpcnN0LCBiYXNl
ZCBvbiBsZWFrYWdlX3RvW10sCisgICAgICAgICAgcmVwcmVzZW50cyB0aGUgYm9vc3QgbmVlZGVk
IHRvIG92ZXJjb21lIHRoZSBhbW91bnQgb2YgYW5hbHlzaXMgbGVha2FnZQorICAgICAgICAgIGNh
dXNlIGluIGEgd2Vha2VyIGJhbmQgYiBieSBsb3VkZXIgbmVpZ2hib3VyaW5nIGJhbmRzLgorICAg
ICAgICAgIFRoZSBzZWNvbmQsIGJhc2VkIG9uIGxlYWthZ2VfZnJvbVtdLCBhcHBsaWVzIHRvIGEg
bG91ZCBiYW5kIGIgZm9yCisgICAgICAgICAgd2hpY2ggdGhlIHF1YW50aXphdGlvbiBub2lzZSBj
YXVzZXMgc3ludGhlc2lzIGxlYWthZ2UgdG8gdGhlIHdlYWtlcgorICAgICAgICAgIG5laWdoYm91
cmluZyBiYW5kcy4gKi8KKyAgICAgICBmbG9hdCBib29zdCA9IE1BWDE2KDAsIGxlYWthZ2VfdG9b
Yl0gLSBiYW5kX2xvZzJbYl0pICsKKyAgICAgICAgICAgICBNQVgxNigwLCBiYW5kX2xvZzJbYl0g
LSAobGVha2FnZV9mcm9tW2JdK0xFQUtBR0VfT0ZGU0VUKSk7CisgICAgICAgaW5mby0+bGVha19i
b29zdFtiXSA9IElNSU4oMjU1LCAoaW50KWZsb29yKC41ICsgNjQuZipib29zdCkpOworICAgIH0K
KyAgICBmb3IgKDtiPExFQUtfQkFORFM7YisrKSBpbmZvLT5sZWFrX2Jvb3N0W2JdID0gMDsKKwor
ICAgIGZvciAoaT0wO2k8TkJfRlJBTUVTO2krKykKKyAgICB7CisgICAgICAgaW50IGo7CisgICAg
ICAgZmxvYXQgbWluZGlzdCA9IDFlMTVmOworICAgICAgIGZvciAoaj0wO2o8TkJfRlJBTUVTO2or
KykKKyAgICAgICB7CisgICAgICAgICAgaW50IGs7CisgICAgICAgICAgZmxvYXQgZGlzdD0wOwor
ICAgICAgICAgIGZvciAoaz0wO2s8TkJfVEJBTkRTO2srKykKKyAgICAgICAgICB7CisgICAgICAg
ICAgICAgZmxvYXQgdG1wOworICAgICAgICAgICAgIHRtcCA9IHRvbmFsLT5sb2dFW2ldW2tdIC0g
dG9uYWwtPmxvZ0Vbal1ba107CisgICAgICAgICAgICAgZGlzdCArPSB0bXAqdG1wOworICAgICAg
ICAgIH0KKyAgICAgICAgICBpZiAoaiE9aSkKKyAgICAgICAgICAgICBtaW5kaXN0ID0gTUlOMzIo
bWluZGlzdCwgZGlzdCk7CisgICAgICAgfQorICAgICAgIHNwZWNfdmFyaWFiaWxpdHkgKz0gbWlu
ZGlzdDsKKyAgICB9CisgICAgc3BlY192YXJpYWJpbGl0eSA9IChmbG9hdClzcXJ0KHNwZWNfdmFy
aWFiaWxpdHkvTkJfRlJBTUVTL05CX1RCQU5EUyk7CiAgICAgYmFuZHdpZHRoX21hc2sgPSAwOwog
ICAgIGJhbmR3aWR0aCA9IDA7CiAgICAgbWF4RSA9IDA7CiAgICAgbm9pc2VfZmxvb3IgPSA1Ljdl
LTRmLygxPDwoSU1BWCgwLGxzYl9kZXB0aC04KSkpOwotI2lmZGVmIEZJWEVEX1BPSU5UCi0gICAg
bm9pc2VfZmxvb3IgKj0gMTw8KDE1K1NJR19TSElGVCk7Ci0jZW5kaWYKICAgICBub2lzZV9mbG9v
ciAqPSBub2lzZV9mbG9vcjsKLSAgICBmb3IgKGI9MDtiPE5CX1RPVF9CQU5EUztiKyspCisgICAg
Zm9yIChiPTA7YjxOQl9UQkFORFM7YisrKQogICAgIHsKICAgICAgICBmbG9hdCBFPTA7CiAgICAg
ICAgaW50IGJhbmRfc3RhcnQsIGJhbmRfZW5kOwogICAgICAgIC8qIEtlZXAgYSBtYXJnaW4gb2Yg
MzAwIEh6IGZvciBhbGlhc2luZyAqLwotICAgICAgIGJhbmRfc3RhcnQgPSBleHRyYV9iYW5kc1ti
XTsKLSAgICAgICBiYW5kX2VuZCA9IGV4dHJhX2JhbmRzW2IrMV07CisgICAgICAgYmFuZF9zdGFy
dCA9IHRiYW5kc1tiXTsKKyAgICAgICBiYW5kX2VuZCA9IHRiYW5kc1tiKzFdOwogICAgICAgIGZv
ciAoaT1iYW5kX3N0YXJ0O2k8YmFuZF9lbmQ7aSsrKQogICAgICAgIHsKICAgICAgICAgICBmbG9h
dCBiaW5FID0gb3V0W2ldLnIqKGZsb2F0KW91dFtpXS5yICsgb3V0W04taV0uciooZmxvYXQpb3V0
W04taV0ucgogICAgICAgICAgICAgICAgICAgICAgKyBvdXRbaV0uaSooZmxvYXQpb3V0W2ldLmkg
KyBvdXRbTi1pXS5pKihmbG9hdClvdXRbTi1pXS5pOwogICAgICAgICAgIEUgKz0gYmluRTsKICAg
ICAgICB9CisgICAgICAgRSA9IFNDQUxFX0VORVIoRSk7CiAgICAgICAgbWF4RSA9IE1BWDMyKG1h
eEUsIEUpOwogICAgICAgIHRvbmFsLT5tZWFuRVtiXSA9IE1BWDMyKCgxLWFscGhhRTIpKnRvbmFs
LT5tZWFuRVtiXSwgRSk7CiAgICAgICAgRSA9IE1BWDMyKEUsIHRvbmFsLT5tZWFuRVtiXSk7CkBA
IC00NDEsMTQgKzY1NiwzNiBAQCBzdGF0aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0
eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9kZSAqY2VsdAogICAgICAgICAgIDIp
IGxlc3MgdGhhbiA5MCBkQiBiZWxvdyB0aGUgcGVhayBiYW5kIChtYXhpbWFsIG1hc2tpbmcgcG9z
c2libGUgY29uc2lkZXJpbmcKICAgICAgICAgICAgICBib3RoIHRoZSBBVEggYW5kIHRoZSBsb3Vk
bmVzcy1kZXBlbmRlbnQgc2xvcGUgb2YgdGhlIHNwcmVhZGluZyBmdW5jdGlvbikKICAgICAgICAg
ICAzKSBhYm92ZSB0aGUgUENNIHF1YW50aXphdGlvbiBub2lzZSBmbG9vcgorICAgICAgICAgIFdl
IHVzZSBiKzEgYmVjYXVzZSB0aGUgZmlyc3QgQ0VMVCBiYW5kIGlzbid0IGluY2x1ZGVkIGluIHRi
YW5kc1tdCiAgICAgICAgKi8KICAgICAgICBpZiAoRT4uMSpiYW5kd2lkdGhfbWFzayAmJiBFKjFl
OWYgPiBtYXhFICYmIEUgPiBub2lzZV9mbG9vciooYmFuZF9lbmQtYmFuZF9zdGFydCkpCi0gICAg
ICAgICAgYmFuZHdpZHRoID0gYjsKKyAgICAgICAgICBiYW5kd2lkdGggPSBiKzE7CisgICAgfQor
ICAgIC8qIFNwZWNpYWwgY2FzZSBmb3IgdGhlIGxhc3QgdHdvIGJhbmRzLCBmb3Igd2hpY2ggd2Ug
ZG9uJ3QgaGF2ZSBzcGVjdHJ1bSBidXQgb25seQorICAgICAgIHRoZSBlbmVyZ3kgYWJvdmUgMTIg
a0h6LiAqLworICAgIGlmICh0b25hbC0+RnMgPT0gNDgwMDApIHsKKyAgICAgICBmbG9hdCByYXRp
bzsKKyAgICAgICBmbG9hdCBFID0gaHBfZW5lciooMS5mLygyNDAqMjQwKSk7CisgICAgICAgcmF0
aW8gPSB0b25hbC0+cHJldl9iYW5kd2lkdGg9PTIwID8gMC4wM2YgOiAwLjA3ZjsKKyNpZmRlZiBG
SVhFRF9QT0lOVAorICAgICAgIC8qIHNpbGtfcmVzYW1wbGVyX2Rvd24yX2hwKCkgc2hpZnRlZCBy
aWdodCBieSBhbiBleHRyYSA4IGJpdHMuICovCisgICAgICAgRSAqPSAyNTYuZiooMS5mL1ExNU9O
RSkqKDEuZi9RMTVPTkUpOworI2VuZGlmCisgICAgICAgbWF4RSA9IE1BWDMyKG1heEUsIEUpOwor
ICAgICAgIHRvbmFsLT5tZWFuRVtiXSA9IE1BWDMyKCgxLWFscGhhRTIpKnRvbmFsLT5tZWFuRVti
XSwgRSk7CisgICAgICAgRSA9IE1BWDMyKEUsIHRvbmFsLT5tZWFuRVtiXSk7CisgICAgICAgLyog
VXNlIGEgc2ltcGxlIGZvbGxvd2VyIHdpdGggMTMgZEIvQmFyayBzbG9wZSBmb3Igc3ByZWFkaW5n
IGZ1bmN0aW9uICovCisgICAgICAgYmFuZHdpZHRoX21hc2sgPSBNQVgzMiguMDVmKmJhbmR3aWR0
aF9tYXNrLCBFKTsKKyAgICAgICBpZiAoRT5yYXRpbypiYW5kd2lkdGhfbWFzayAmJiBFKjFlOWYg
PiBtYXhFICYmIEUgPiBub2lzZV9mbG9vcioxNjApCisgICAgICAgICAgYmFuZHdpZHRoID0gMjA7
CisgICAgICAgLyogVGhpcyBkZXRlY3RvciBpcyB1bnJlbGlhYmxlLCBzbyBpZiB0aGUgYmFuZHdp
ZHRoIGlzIGNsb3NlIHRvIFNXQiwgYXNzdW1lIGl0J3MgRkIuICovCisgICAgICAgaWYgKGJhbmR3
aWR0aCA+PSAxNykKKyAgICAgICAgICBiYW5kd2lkdGggPSAyMDsKICAgICB9CiAgICAgaWYgKHRv
bmFsLT5jb3VudDw9MikKICAgICAgICBiYW5kd2lkdGggPSAyMDsKICAgICBmcmFtZV9sb3VkbmVz
cyA9IDIwKihmbG9hdClsb2cxMChmcmFtZV9sb3VkbmVzcyk7Ci0gICAgdG9uYWwtPkV0cmFja2Vy
ID0gTUFYMzIodG9uYWwtPkV0cmFja2VyLS4wM2YsIGZyYW1lX2xvdWRuZXNzKTsKKyAgICB0b25h
bC0+RXRyYWNrZXIgPSBNQVgzMih0b25hbC0+RXRyYWNrZXItLjAwM2YsIGZyYW1lX2xvdWRuZXNz
KTsKICAgICB0b25hbC0+bG93RUNvdW50ICo9ICgxLWFscGhhRSk7CiAgICAgaWYgKGZyYW1lX2xv
dWRuZXNzIDwgdG9uYWwtPkV0cmFja2VyLTMwKQogICAgICAgIHRvbmFsLT5sb3dFQ291bnQgKz0g
YWxwaGFFOwpAQCAtNDYwLDExICs2OTcsMTggQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlz
aXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAg
ICAgICAgICBzdW0gKz0gZGN0X3RhYmxlW2kqMTYrYl0qbG9nRVtiXTsKICAgICAgICBCRkNDW2ld
ID0gc3VtOwogICAgIH0KKyAgICBmb3IgKGk9MDtpPDg7aSsrKQorICAgIHsKKyAgICAgICBmbG9h
dCBzdW09MDsKKyAgICAgICBmb3IgKGI9MDtiPDE2O2IrKykKKyAgICAgICAgICBzdW0gKz0gZGN0
X3RhYmxlW2kqMTYrYl0qLjVmKih0b25hbC0+aGlnaEVbYl0rdG9uYWwtPmxvd0VbYl0pOworICAg
ICAgIG1pZEVbaV0gPSBzdW07CisgICAgfQogCiAgICAgZnJhbWVfc3RhdGlvbmFyaXR5IC89IE5C
X1RCQU5EUzsKICAgICByZWxhdGl2ZUUgLz0gTkJfVEJBTkRTOwogICAgIGlmICh0b25hbC0+Y291
bnQ8MTApCi0gICAgICAgcmVsYXRpdmVFID0gLjU7CisgICAgICAgcmVsYXRpdmVFID0gLjVmOwog
ICAgIGZyYW1lX25vaXNpbmVzcyAvPSBOQl9UQkFORFM7CiAjaWYgMQogICAgIGluZm8tPmFjdGl2
aXR5ID0gZnJhbWVfbm9pc2luZXNzICsgKDEtZnJhbWVfbm9pc2luZXNzKSpyZWxhdGl2ZUU7CkBA
IC00NzksNyArNzIzLDcgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlB
bmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICBpbmZvLT50b25h
bGl0eV9zbG9wZSA9IHNsb3BlOwogCiAgICAgdG9uYWwtPkVfY291bnQgPSAodG9uYWwtPkVfY291
bnQrMSklTkJfRlJBTUVTOwotICAgIHRvbmFsLT5jb3VudCsrOworICAgIHRvbmFsLT5jb3VudCA9
IElNSU4odG9uYWwtPmNvdW50KzEsIEFOQUxZU0lTX0NPVU5UX01BWCk7CiAgICAgaW5mby0+dG9u
YWxpdHkgPSBmcmFtZV90b25hbGl0eTsKIAogICAgIGZvciAoaT0wO2k8NDtpKyspCkBAIC00OTgs
NiArNzQyLDggQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5hbHlzaXMoVG9uYWxpdHlBbmFseXNp
c1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQKICAgICAgICBmb3IgKGk9MDtpPDk7
aSsrKQogICAgICAgICAgIHRvbmFsLT5zdGRbaV0gPSAoMS1hbHBoYSkqdG9uYWwtPnN0ZFtpXSAr
IGFscGhhKmZlYXR1cmVzW2ldKmZlYXR1cmVzW2ldOwogICAgIH0KKyAgICBmb3IgKGk9MDtpPDQ7
aSsrKQorICAgICAgIGZlYXR1cmVzW2ldID0gQkZDQ1tpXS1taWRFW2ldOwogCiAgICAgZm9yIChp
PTA7aTw4O2krKykKICAgICB7CkBAIC01MDcsMjQgKzc1MywyNiBAQCBzdGF0aWMgdm9pZCB0b25h
bGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBDRUxUTW9k
ZSAqY2VsdAogICAgICAgIHRvbmFsLT5tZW1baV0gPSBCRkNDW2ldOwogICAgIH0KICAgICBmb3Ig
KGk9MDtpPDk7aSsrKQotICAgICAgIGZlYXR1cmVzWzExK2ldID0gKGZsb2F0KXNxcnQodG9uYWwt
PnN0ZFtpXSk7Ci0gICAgZmVhdHVyZXNbMjBdID0gaW5mby0+dG9uYWxpdHk7Ci0gICAgZmVhdHVy
ZXNbMjFdID0gaW5mby0+YWN0aXZpdHk7Ci0gICAgZmVhdHVyZXNbMjJdID0gZnJhbWVfc3RhdGlv
bmFyaXR5OwotICAgIGZlYXR1cmVzWzIzXSA9IGluZm8tPnRvbmFsaXR5X3Nsb3BlOwotICAgIGZl
YXR1cmVzWzI0XSA9IHRvbmFsLT5sb3dFQ291bnQ7CisgICAgICAgZmVhdHVyZXNbMTEraV0gPSAo
ZmxvYXQpc3FydCh0b25hbC0+c3RkW2ldKSAtIHN0ZF9mZWF0dXJlX2JpYXNbaV07CisgICAgZmVh
dHVyZXNbMThdID0gc3BlY192YXJpYWJpbGl0eSAtIDAuNzhmOworICAgIGZlYXR1cmVzWzIwXSA9
IGluZm8tPnRvbmFsaXR5IC0gMC4xNTQ3MjNmOworICAgIGZlYXR1cmVzWzIxXSA9IGluZm8tPmFj
dGl2aXR5IC0gMC43MjQ2NDNmOworICAgIGZlYXR1cmVzWzIyXSA9IGZyYW1lX3N0YXRpb25hcml0
eSAtIDAuNzQzNzE3ZjsKKyAgICBmZWF0dXJlc1syM10gPSBpbmZvLT50b25hbGl0eV9zbG9wZSAr
IDAuMDY5MjE2ZjsKKyAgICBmZWF0dXJlc1syNF0gPSB0b25hbC0+bG93RUNvdW50IC0gMC4wNjc5
MzBmOwogCi0jaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCiAgICAgbWxwX3Byb2Nlc3MoJm5ldCwg
ZmVhdHVyZXMsIGZyYW1lX3Byb2JzKTsKICAgICBmcmFtZV9wcm9ic1swXSA9IC41ZiooZnJhbWVf
cHJvYnNbMF0rMSk7CiAgICAgLyogQ3VydmUgZml0dGluZyBiZXR3ZWVuIHRoZSBNTFAgcHJvYmFi
aWxpdHkgYW5kIHRoZSBhY3R1YWwgcHJvYmFiaWxpdHkgKi8KLSAgICBmcmFtZV9wcm9ic1swXSA9
IC4wMWYgKyAxLjIxZipmcmFtZV9wcm9ic1swXSpmcmFtZV9wcm9ic1swXSAtIC4yM2YqKGZsb2F0
KXBvdyhmcmFtZV9wcm9ic1swXSwgMTApOworICAgIC8qZnJhbWVfcHJvYnNbMF0gPSAuMDFmICsg
MS4yMWYqZnJhbWVfcHJvYnNbMF0qZnJhbWVfcHJvYnNbMF0gLSAuMjNmKihmbG9hdClwb3coZnJh
bWVfcHJvYnNbMF0sIDEwKTsqLwogICAgIC8qIFByb2JhYmlsaXR5IG9mIGFjdGl2ZSBhdWRpbyAo
YXMgb3Bwb3NlZCB0byBzaWxlbmNlKSAqLwogICAgIGZyYW1lX3Byb2JzWzFdID0gLjVmKmZyYW1l
X3Byb2JzWzFdKy41ZjsKLSAgICAvKiBDb25zaWRlciB0aGF0IHNpbGVuY2UgaGFzIGEgNTAtNTAg
cHJvYmFiaWxpdHkuICovCi0gICAgZnJhbWVfcHJvYnNbMF0gPSBmcmFtZV9wcm9ic1sxXSpmcmFt
ZV9wcm9ic1swXSArICgxLWZyYW1lX3Byb2JzWzFdKSouNWY7CisgICAgZnJhbWVfcHJvYnNbMV0g
Kj0gZnJhbWVfcHJvYnNbMV07CisKKyAgICAvKiBQcm9iYWJpbGl0eSBvZiBzcGVlY2ggb3IgbXVz
aWMgdnMgbm9pc2UgKi8KKyAgICBpbmZvLT5hY3Rpdml0eV9wcm9iYWJpbGl0eSA9IGZyYW1lX3By
b2JzWzFdOwogCi0gICAgLypwcmludGYoIiVmICVmICIsIGZyYW1lX3Byb2JzWzBdLCBmcmFtZV9w
cm9ic1sxXSk7Ki8KKyAgICAvKnByaW50ZigiJWYgJWZcbiIsIGZyYW1lX3Byb2JzWzBdLCBmcmFt
ZV9wcm9ic1sxXSk7Ki8KICAgICB7CiAgICAgICAgLyogUHJvYmFiaWxpdHkgb2Ygc3RhdGUgdHJh
bnNpdGlvbiAqLwogICAgICAgIGZsb2F0IHRhdTsKQEAgLTU0MiwxMiArNzkwLDMyIEBAIHN0YXRp
YyB2b2lkIHRvbmFsaXR5X2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqdG9uYWwsIGNv
bnN0IENFTFRNb2RlICpjZWx0CiAgICAgICAgZmxvYXQgbXVzaWMwOwogICAgICAgIGZsb2F0IHAs
IHE7CiAKKyAgICAgICAvKiBNb3JlIHNpbGVuY2UgdHJhbnNpdGlvbnMgZm9yIHNwZWVjaCB0aGFu
IGZvciBtdXNpYy4gKi8KKyAgICAgICB0YXUgPSAuMDAxZip0b25hbC0+bXVzaWNfcHJvYiArIC4w
MWYqKDEtdG9uYWwtPm11c2ljX3Byb2IpOworICAgICAgIHAgPSBNQVgxNiguMDVmLE1JTjE2KC45
NWYsZnJhbWVfcHJvYnNbMV0pKTsKKyAgICAgICBxID0gTUFYMTYoLjA1ZixNSU4xNiguOTVmLHRv
bmFsLT52YWRfcHJvYikpOworICAgICAgIGJldGEgPSAuMDJmKy4wNWYqQUJTMTYocC1xKS8ocCoo
MS1xKStxKigxLXApKTsKKyAgICAgICAvKiBwMCBhbmQgcDEgYXJlIHRoZSBwcm9iYWJpbGl0aWVz
IG9mIHNwZWVjaCBhbmQgbXVzaWMgYXQgdGhpcyBmcmFtZQorICAgICAgICAgIHVzaW5nIG9ubHkg
aW5mb3JtYXRpb24gZnJvbSBwcmV2aW91cyBmcmFtZSBhbmQgYXBwbHlpbmcgdGhlCisgICAgICAg
ICAgc3RhdGUgdHJhbnNpdGlvbiBtb2RlbCAqLworICAgICAgIHAwID0gKDEtdG9uYWwtPnZhZF9w
cm9iKSooMS10YXUpICsgICAgdG9uYWwtPnZhZF9wcm9iICp0YXU7CisgICAgICAgcDEgPSAgICB0
b25hbC0+dmFkX3Byb2IgKigxLXRhdSkgKyAoMS10b25hbC0+dmFkX3Byb2IpKnRhdTsKKyAgICAg
ICAvKiBXZSBhcHBseSB0aGUgY3VycmVudCBwcm9iYWJpbGl0eSB3aXRoIGV4cG9uZW50IGJldGEg
dG8gd29yayBhcm91bmQKKyAgICAgICAgICB0aGUgZmFjdCB0aGF0IHRoZSBwcm9iYWJpbGl0eSBl
c3RpbWF0ZXMgYXJlbid0IGluZGVwZW5kZW50LiAqLworICAgICAgIHAwICo9IChmbG9hdClwb3co
MS1mcmFtZV9wcm9ic1sxXSwgYmV0YSk7CisgICAgICAgcDEgKj0gKGZsb2F0KXBvdyhmcmFtZV9w
cm9ic1sxXSwgYmV0YSk7CisgICAgICAgLyogTm9ybWFsaXNlIHRoZSBwcm9iYWJpbGl0aWVzIHRv
IGdldCB0aGUgTWFyb2t2IHByb2JhYmlsaXR5IG9mIG11c2ljLiAqLworICAgICAgIHRvbmFsLT52
YWRfcHJvYiA9IHAxLyhwMCtwMSk7CisgICAgICAgaW5mby0+dmFkX3Byb2IgPSB0b25hbC0+dmFk
X3Byb2I7CisgICAgICAgLyogQ29uc2lkZXIgdGhhdCBzaWxlbmNlIGhhcyBhIDUwLTUwIHByb2Jh
YmlsaXR5IG9mIGJlaW5nIHNwZWVjaCBvciBtdXNpYy4gKi8KKyAgICAgICBmcmFtZV9wcm9ic1sw
XSA9IHRvbmFsLT52YWRfcHJvYipmcmFtZV9wcm9ic1swXSArICgxLXRvbmFsLT52YWRfcHJvYikq
LjVmOworCiAgICAgICAgLyogT25lIHRyYW5zaXRpb24gZXZlcnkgMyBtaW51dGVzIG9mIGFjdGl2
ZSBhdWRpbyAqLwotICAgICAgIHRhdSA9IC4wMDAwNWYqZnJhbWVfcHJvYnNbMV07CisgICAgICAg
dGF1ID0gLjAwMDFmOwogICAgICAgIC8qIEFkYXB0IGJldGEgYmFzZWQgb24gaG93ICJ1bmV4cGVj
dGVkIiB0aGUgbmV3IHByb2IgaXMgKi8KICAgICAgICBwID0gTUFYMTYoLjA1ZixNSU4xNiguOTVm
LGZyYW1lX3Byb2JzWzBdKSk7CiAgICAgICAgcSA9IE1BWDE2KC4wNWYsTUlOMTYoLjk1Zix0b25h
bC0+bXVzaWNfcHJvYikpOwotICAgICAgIGJldGEgPSAuMDFmKy4wNWYqQUJTMTYocC1xKS8ocCoo
MS1xKStxKigxLXApKTsKKyAgICAgICBiZXRhID0gLjAyZisuMDVmKkFCUzE2KHAtcSkvKHAqKDEt
cSkrcSooMS1wKSk7CiAgICAgICAgLyogcDAgYW5kIHAxIGFyZSB0aGUgcHJvYmFiaWxpdGllcyBv
ZiBzcGVlY2ggYW5kIG11c2ljIGF0IHRoaXMgZnJhbWUKICAgICAgICAgICB1c2luZyBvbmx5IGlu
Zm9ybWF0aW9uIGZyb20gcHJldmlvdXMgZnJhbWUgYW5kIGFwcGx5aW5nIHRoZQogICAgICAgICAg
IHN0YXRlIHRyYW5zaXRpb24gbW9kZWwgKi8KQEAgLTU2MSw2ICs4MjksNyBAQCBzdGF0aWMgdm9p
ZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBjb25zdCBD
RUxUTW9kZSAqY2VsdAogICAgICAgIHRvbmFsLT5tdXNpY19wcm9iID0gcDEvKHAwK3AxKTsKICAg
ICAgICBpbmZvLT5tdXNpY19wcm9iID0gdG9uYWwtPm11c2ljX3Byb2I7CiAKKyAgICAgICAvKnBy
aW50ZigiJWYgJWYgJWYgJWZcbiIsIGZyYW1lX3Byb2JzWzBdLCBmcmFtZV9wcm9ic1sxXSwgdG9u
YWwtPm11c2ljX3Byb2IsIHRvbmFsLT52YWRfcHJvYik7Ki8KICAgICAgICAvKiBUaGlzIGNodW5r
IG9mIGNvZGUgZGVhbHMgd2l0aCBkZWxheWVkIGRlY2lzaW9uLiAqLwogICAgICAgIHBzdW09MWUt
MjBmOwogICAgICAgIC8qIEluc3RhbnRhbmVvdXMgcHJvYmFiaWxpdHkgb2Ygc3BlZWNoIGFuZCBt
dXNpYywgd2l0aCBiZXRhIHByZS1hcHBsaWVkLiAqLwpAQCAtNTY4LDggKzgzNywxMSBAQCBzdGF0
aWMgdm9pZCB0b25hbGl0eV9hbmFseXNpcyhUb25hbGl0eUFuYWx5c2lzU3RhdGUgKnRvbmFsLCBj
b25zdCBDRUxUTW9kZSAqY2VsdAogICAgICAgIG11c2ljMCAgPSAoZmxvYXQpcG93KGZyYW1lX3By
b2JzWzBdLCBiZXRhKTsKICAgICAgICBpZiAodG9uYWwtPmNvdW50PT0xKQogICAgICAgIHsKLSAg
ICAgICAgICB0b25hbC0+cHNwZWVjaFswXT0uNTsKLSAgICAgICAgICB0b25hbC0+cG11c2ljIFsw
XT0uNTsKKyAgICAgICAgICBpZiAodG9uYWwtPmFwcGxpY2F0aW9uID09IE9QVVNfQVBQTElDQVRJ
T05fVk9JUCkKKyAgICAgICAgICAgICB0b25hbC0+cG11c2ljWzBdID0gLjFmOworICAgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICB0b25hbC0+cG11c2ljWzBdID0gLjYyNWY7CisgICAgICAgICAg
dG9uYWwtPnBzcGVlY2hbMF0gPSAxLXRvbmFsLT5wbXVzaWNbMF07CiAgICAgICAgfQogICAgICAg
IC8qIFVwZGF0ZWQgcHJvYmFiaWxpdHkgb2YgaGF2aW5nIG9ubHkgc3BlZWNoIChzMCkgb3Igb25s
eSBtdXNpYyAobTApLAogICAgICAgICAgIGJlZm9yZSBjb25zaWRlcmluZyB0aGUgbmV3IG9ic2Vy
dmF0aW9uLiAqLwpAQCAtNjE5LDI0ICs4OTEsMTcgQEAgc3RhdGljIHZvaWQgdG9uYWxpdHlfYW5h
bHlzaXMoVG9uYWxpdHlBbmFseXNpc1N0YXRlICp0b25hbCwgY29uc3QgQ0VMVE1vZGUgKmNlbHQK
ICAgICAgICAgICAgICB0b25hbC0+c3BlZWNoX2NvbmZpZGVuY2VfY291bnQgPSBJTUlOKHRvbmFs
LT5zcGVlY2hfY29uZmlkZW5jZV9jb3VudCwgNTAwKTsKICAgICAgICAgICAgICB0b25hbC0+c3Bl
ZWNoX2NvbmZpZGVuY2UgKz0gYWRhcHQqTUlOMTYoLjJmLGZyYW1lX3Byb2JzWzBdLXRvbmFsLT5z
cGVlY2hfY29uZmlkZW5jZSk7CiAgICAgICAgICAgfQotICAgICAgIH0gZWxzZSB7Ci0gICAgICAg
ICAgaWYgKHRvbmFsLT5tdXNpY19jb25maWRlbmNlX2NvdW50PT0wKQotICAgICAgICAgICAgIHRv
bmFsLT5tdXNpY19jb25maWRlbmNlID0gLjlmOwotICAgICAgICAgIGlmICh0b25hbC0+c3BlZWNo
X2NvbmZpZGVuY2VfY291bnQ9PTApCi0gICAgICAgICAgICAgdG9uYWwtPnNwZWVjaF9jb25maWRl
bmNlID0gLjFmOwogICAgICAgIH0KICAgICB9Ci0gICAgaWYgKHRvbmFsLT5sYXN0X211c2ljICE9
ICh0b25hbC0+bXVzaWNfcHJvYj4uNWYpKQotICAgICAgIHRvbmFsLT5sYXN0X3RyYW5zaXRpb249
MDsKICAgICB0b25hbC0+bGFzdF9tdXNpYyA9IHRvbmFsLT5tdXNpY19wcm9iPi41ZjsKLSNlbHNl
Ci0gICAgaW5mby0+bXVzaWNfcHJvYiA9IDA7Ci0jZW5kaWYKLSAgICAvKmZvciAoaT0wO2k8MjU7
aSsrKQorI2lmZGVmIE1MUF9UUkFJTklORworICAgIGZvciAoaT0wO2k8MjU7aSsrKQogICAgICAg
IHByaW50ZigiJWYgIiwgZmVhdHVyZXNbaV0pOwotICAgIHByaW50ZigiXG4iKTsqLworICAgIHBy
aW50ZigiXG4iKTsKKyNlbmRpZgogCiAgICAgaW5mby0+YmFuZHdpZHRoID0gYmFuZHdpZHRoOwor
ICAgIHRvbmFsLT5wcmV2X2JhbmR3aWR0aCA9IGJhbmR3aWR0aDsKICAgICAvKnByaW50ZigiJWQg
JWRcbiIsIGluZm8tPmJhbmR3aWR0aCwgaW5mby0+b3B1c19iYW5kd2lkdGgpOyovCiAgICAgaW5m
by0+bm9pc2luZXNzID0gZnJhbWVfbm9pc2luZXNzOwogICAgIGluZm8tPnZhbGlkID0gMTsKQEAg
LTY1MCwxOCArOTE1LDE5IEBAIHZvaWQgcnVuX2FuYWx5c2lzKFRvbmFsaXR5QW5hbHlzaXNTdGF0
ZSAqYW5hbHlzaXMsIGNvbnN0IENFTFRNb2RlICpjZWx0X21vZGUsIGNvCiAgICBpbnQgb2Zmc2V0
OwogICAgaW50IHBjbV9sZW47CiAKKyAgIGFuYWx5c2lzX2ZyYW1lX3NpemUgLT0gYW5hbHlzaXNf
ZnJhbWVfc2l6ZSYxOwogICAgaWYgKGFuYWx5c2lzX3BjbSAhPSBOVUxMKQogICAgewogICAgICAg
LyogQXZvaWQgb3ZlcmZsb3cvd3JhcC1hcm91bmQgb2YgdGhlIGFuYWx5c2lzIGJ1ZmZlciAqLwot
ICAgICAgYW5hbHlzaXNfZnJhbWVfc2l6ZSA9IElNSU4oKERFVEVDVF9TSVpFLTUpKkZzLzEwMCwg
YW5hbHlzaXNfZnJhbWVfc2l6ZSk7CisgICAgICBhbmFseXNpc19mcmFtZV9zaXplID0gSU1JTigo
REVURUNUX1NJWkUtNSkqRnMvNTAsIGFuYWx5c2lzX2ZyYW1lX3NpemUpOwogCiAgICAgICBwY21f
bGVuID0gYW5hbHlzaXNfZnJhbWVfc2l6ZSAtIGFuYWx5c2lzLT5hbmFseXNpc19vZmZzZXQ7CiAg
ICAgICBvZmZzZXQgPSBhbmFseXNpcy0+YW5hbHlzaXNfb2Zmc2V0OwotICAgICAgZG8gewotICAg
ICAgICAgdG9uYWxpdHlfYW5hbHlzaXMoYW5hbHlzaXMsIGNlbHRfbW9kZSwgYW5hbHlzaXNfcGNt
LCBJTUlOKDQ4MCwgcGNtX2xlbiksIG9mZnNldCwgYzEsIGMyLCBDLCBsc2JfZGVwdGgsIGRvd25t
aXgpOwotICAgICAgICAgb2Zmc2V0ICs9IDQ4MDsKLSAgICAgICAgIHBjbV9sZW4gLT0gNDgwOwot
ICAgICAgfSB3aGlsZSAocGNtX2xlbj4wKTsKKyAgICAgIHdoaWxlIChwY21fbGVuPjApIHsKKyAg
ICAgICAgIHRvbmFsaXR5X2FuYWx5c2lzKGFuYWx5c2lzLCBjZWx0X21vZGUsIGFuYWx5c2lzX3Bj
bSwgSU1JTihGcy81MCwgcGNtX2xlbiksIG9mZnNldCwgYzEsIGMyLCBDLCBsc2JfZGVwdGgsIGRv
d25taXgpOworICAgICAgICAgb2Zmc2V0ICs9IEZzLzUwOworICAgICAgICAgcGNtX2xlbiAtPSBG
cy81MDsKKyAgICAgIH0KICAgICAgIGFuYWx5c2lzLT5hbmFseXNpc19vZmZzZXQgPSBhbmFseXNp
c19mcmFtZV9zaXplOwogCiAgICAgICBhbmFseXNpcy0+YW5hbHlzaXNfb2Zmc2V0IC09IGZyYW1l
X3NpemU7CkBAIC02NzAsMyArOTM2LDUgQEAgdm9pZCBydW5fYW5hbHlzaXMoVG9uYWxpdHlBbmFs
eXNpc1N0YXRlICphbmFseXNpcywgY29uc3QgQ0VMVE1vZGUgKmNlbHRfbW9kZSwgY28KICAgIGFu
YWx5c2lzX2luZm8tPnZhbGlkID0gMDsKICAgIHRvbmFsaXR5X2dldF9pbmZvKGFuYWx5c2lzLCBh
bmFseXNpc19pbmZvLCBmcmFtZV9zaXplKTsKIH0KKworI2VuZGlmIC8qIERJU0FCTEVfRkxPQVRf
QVBJICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvYW5hbHlzaXMuaAppbmRleCA5
ZWFlNTZhNTI1Mzc4YTM2MDI0NDRjZTk2MDk1N2Q0NGJmOTFmYTYxLi5jYWM1MWRmYTRlYjU1ZDhk
MWFiYmIwZGVlOWYwNzA0NjM1NDJkZjFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9hbmFseXNpcy5oCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c3JjL2FuYWx5c2lzLmgKQEAgLTMzLDEzICszMywyMCBAQAogCiAjZGVmaW5lIE5CX0ZSQU1FUyA4
CiAjZGVmaW5lIE5CX1RCQU5EUyAxOAotI2RlZmluZSBOQl9UT1RfQkFORFMgMjEKLSNkZWZpbmUg
QU5BTFlTSVNfQlVGX1NJWkUgNzIwIC8qIDE1IG1zIGF0IDQ4IGtIeiAqLworI2RlZmluZSBBTkFM
WVNJU19CVUZfU0laRSA3MjAgLyogMzAgbXMgYXQgMjQga0h6ICovCiAKLSNkZWZpbmUgREVURUNU
X1NJWkUgMjAwCisvKiBBdCB0aGF0IHBvaW50IHdlIGNhbiBzdG9wIGNvdW50aW5nIGZyYW1lcyBi
ZWNhdXNlIGl0IG5vIGxvbmdlciBtYXR0ZXJzLiAqLworI2RlZmluZSBBTkFMWVNJU19DT1VOVF9N
QVggMTAwMDAKKworI2RlZmluZSBERVRFQ1RfU0laRSAxMDAKKworLyogVW5jb21tZW50IHRoaXMg
dG8gcHJpbnQgdGhlIE1MUCBmZWF0dXJlcyBvbiBzdGRvdXQuICovCisvKiNkZWZpbmUgTUxQX1RS
QUlOSU5HKi8KIAogdHlwZWRlZiBzdHJ1Y3QgewogICAgaW50IGFyY2g7CisgICBpbnQgYXBwbGlj
YXRpb247CisgICBvcHVzX2ludDMyIEZzOwogI2RlZmluZSBUT05BTElUWV9BTkFMWVNJU19SRVNF
VF9TVEFSVCBhbmdsZQogICAgZmxvYXQgYW5nbGVbMjQwXTsKICAgIGZsb2F0IGRfYW5nbGVbMjQw
XTsKQEAgLTQ4LDIxICs1NSwyMiBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICBpbnQgICBtZW1fZmls
bDsgICAgICAgICAgICAgICAgICAgICAgLyogbnVtYmVyIG9mIHVzYWJsZSBzYW1wbGVzIGluIHRo
ZSBidWZmZXIgKi8KICAgIGZsb2F0IHByZXZfYmFuZF90b25hbGl0eVtOQl9UQkFORFNdOwogICAg
ZmxvYXQgcHJldl90b25hbGl0eTsKKyAgIGludCBwcmV2X2JhbmR3aWR0aDsKICAgIGZsb2F0IEVb
TkJfRlJBTUVTXVtOQl9UQkFORFNdOworICAgZmxvYXQgbG9nRVtOQl9GUkFNRVNdW05CX1RCQU5E
U107CiAgICBmbG9hdCBsb3dFW05CX1RCQU5EU107CiAgICBmbG9hdCBoaWdoRVtOQl9UQkFORFNd
OwotICAgZmxvYXQgbWVhbkVbTkJfVE9UX0JBTkRTXTsKKyAgIGZsb2F0IG1lYW5FW05CX1RCQU5E
UysxXTsKICAgIGZsb2F0IG1lbVszMl07CiAgICBmbG9hdCBjbWVhbls4XTsKICAgIGZsb2F0IHN0
ZFs5XTsKICAgIGZsb2F0IG11c2ljX3Byb2I7CisgICBmbG9hdCB2YWRfcHJvYjsKICAgIGZsb2F0
IEV0cmFja2VyOwogICAgZmxvYXQgbG93RUNvdW50OwogICAgaW50IEVfY291bnQ7CiAgICBpbnQg
bGFzdF9tdXNpYzsKLSAgIGludCBsYXN0X3RyYW5zaXRpb247CiAgICBpbnQgY291bnQ7Ci0gICBm
bG9hdCBzdWJmcmFtZV9tZW1bM107CiAgICBpbnQgYW5hbHlzaXNfb2Zmc2V0OwogICAgLyoqIFBy
b2JhYmlsaXR5IG9mIGhhdmluZyBzcGVlY2ggZm9yIHRpbWUgaSB0byBERVRFQ1RfU0laRS0xIChh
bmQgbXVzaWMgYmVmb3JlKS4KICAgICAgICBwc3BlZWNoWzBdIGlzIHRoZSBwcm9iYWJpbGl0eSB0
aGF0IGFsbCBmcmFtZXMgaW4gdGhlIHdpbmRvdyBhcmUgc3BlZWNoLiAqLwpAQCAtNzcsNiArODUs
OCBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgICBpbnQgd3JpdGVfcG9zOwogICAgaW50IHJlYWRfcG9z
OwogICAgaW50IHJlYWRfc3ViZnJhbWU7CisgICBmbG9hdCBocF9lbmVyX2FjY3VtOworICAgb3B1
c192YWwzMiBkb3dubWl4X3N0YXRlWzNdOwogICAgQW5hbHlzaXNJbmZvIGluZm9bREVURUNUX1NJ
WkVdOwogfSBUb25hbGl0eUFuYWx5c2lzU3RhdGU7CiAKQEAgLTg2LDcgKzk2LDcgQEAgdHlwZWRl
ZiBzdHJ1Y3QgewogICogbm90IGJlIHJlcGVhdGVkIGV2ZXJ5IGFuYWx5c2lzIHN0ZXAuIE5vIGFs
bG9jYXRlZCBtZW1vcnkgaXMgcmV0YWluZWQKICAqIGJ5IHRoZSBzdGF0ZSBzdHJ1Y3QsIHNvIG5v
IGNsZWFudXAgY2FsbCBpcyByZXF1aXJlZC4KICAqLwotdm9pZCB0b25hbGl0eV9hbmFseXNpc19p
bml0KFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqYW5hbHlzaXMpOwordm9pZCB0b25hbGl0eV9hbmFs
eXNpc19pbml0KFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSAqYW5hbHlzaXMsIG9wdXNfaW50MzIgRnMp
OwogCiAvKiogUmVzZXQgYSBUb25hbGl0eUFuYWx5c2lzU3RhdGUgc3R1Y3QuCiAgKgpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zcmMvbWxwX2RhdGEuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL21scF9kYXRhLmMKaW5kZXggYzJmZGE0ZTJlNTkzZmQz
NzI4NjNkNDMzNzU5NDc4NjJiMjc3ZTQ4OC4uYTgxOTg4MGJmZjVhODk5NWQyMTFiN2JiMzQzYTcw
MzNjOWM3MTY5MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvbWxwX2RhdGEuYworKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9tbHBfZGF0YS5j
CkBAIC0xLDEwNiArMSwxMDkgQEAKLS8qIFRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgd2FzIGF1
dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IG1scF90cmFpbi5jCi0gICBJdCBjb250YWlucyBtdWx0
aS1sYXllciBwZXJjZXB0cm9uIChNTFApIHdlaWdodHMuICovCi0KICNpZmRlZiBIQVZFX0NPTkZJ
R19ICiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjZW5kaWYKIAogI2luY2x1ZGUgIm1scC5oIgogCi0v
KiBSTVMgZXJyb3Igd2FzIDAuMTM4MzIwLCBzZWVkIHdhcyAxMzYxNTM1NjYzICovCisvKiBSTVMg
ZXJyb3Igd2FzIDAuMjgwNDkyLCBzZWVkIHdhcyAxNDgwNDc4MTczICovCisvKiAwLjAwNTk3NiAw
LjAzMTgyMSAoMC4yODA0OTQgMC4yODA0OTIpIGRvbmUgKi8KIAotc3RhdGljIGNvbnN0IGZsb2F0
IHdlaWdodHNbNDIyXSA9IHsKK3N0YXRpYyBjb25zdCBmbG9hdCB3ZWlnaHRzWzQ1MF0gPSB7CiAK
IC8qIGhpZGRlbiBsYXllciAqLwotLTAuMDk0MTEyNWYsIC0wLjMwMjk3NmYsIC0wLjYwMzU1NWYs
IC0wLjE5MzkzZiwgLTAuMTg1OTgzZiwKLS0wLjYwMTYxN2YsIC0wLjA0NjUzMTdmLCAtMC4xMTQ1
NjNmLCAtMC4xMDM1OTlmLCAtMC42MTg5MzhmLAotLTAuMzE3ODU5ZiwgLTAuMTY5OTQ5ZiwgLTAu
MDcwMjg4NWYsIDAuMTQ4MDY1ZiwgMC40MDk1MjRmLAotMC41NDg0MzJmLCAwLjM2NzY0OWYsIC0w
LjQ5NDM5M2YsIDAuNzY0MzA2ZiwgLTEuODM5NTdmLAotMC4xNzA4NDlmLCAxMi43ODZmLCAtMS4w
ODg0OGYsIC0xLjI3Mjg0ZiwgLTE2LjI2MDZmLAotMjQuMTc3M2YsIC01LjU3NDU0ZiwgLTAuMTcy
NzZmLCAtMC4xNjMzODhmLCAtMC4yMjQ0MjFmLAotLTAuMDk0ODk0NGYsIC0wLjA3Mjg2OTVmLCAt
MC4yNjU1N2YsIC0wLjEwMDI4M2YsIC0wLjA1MTU0NTlmLAotLTAuMTQ2MTQyZiwgLTAuMTIwNjc0
ZiwgLTAuMTgwNjU1ZiwgMC4xMjg1N2YsIDAuNDQyMTM4ZiwKLS0wLjQ5MzczNWYsIDAuMTY3NzY3
ZiwgMC4yMDY2OTlmLCAtMC4xOTc1NjdmLCAwLjQxNzk5OWYsCi0xLjUwMzY0ZiwgLTAuNzczMzQx
ZiwgLTEwLjA0MDFmLCAwLjQwMTg3MmYsIDIuOTc5NjZmLAotMTUuMjE2NWYsIC0xLjg4OTA1Ziwg
LTEuMTkyNTRmLCAwLjAyODUzOTdmLCAtMC4wMDQwNTEzOWYsCi0wLjA3MDc1NjVmLCAwLjAwODI1
Njk5ZiwgLTAuMDkyNzI2OWYsIC0wLjAxMDM5M2YsIC0wLjAwNDI4ODgyZiwKLS0wLjAwNDg5NzQz
ZiwgLTAuMDcwOTczMWYsIC0wLjAwMjU1OTkyZiwgMC4wMzk1NjE5ZiwgMC4yMjY0MjRmLAotMC4w
MzI1MjMxZiwgMC4xNjIxNzVmLCAtMC4xMDAxMThmLCAwLjQ4NTc4OWYsIDAuMTI2OTdmLAotMC4y
ODU5MzdmLCAwLjAxNTU2MzdmLCAwLjEwNTQ2ZiwgMy4wNTU1OGYsIDEuMTUwNTlmLAotLTEuMDA5
MDRmLCAtMS44MzA4OGYsIDMuMzE3NjZmLCAtMy40MjUxNmYsIC0wLjExOTEzNWYsCi0tMC4wNDA1
NjU0ZiwgMC4wMDY5MDA2OGYsIDAuMDE3OTg3N2YsIC0wLjAzODI0ODdmLCAwLjAwNTk3OTQxZiwK
LS0wLjAxODM2MTFmLCAwLjAwMTkwMzk1ZiwgLTAuMTQ0MzIyZiwgLTAuMDQzNTY3MWYsIDAuMDAw
OTkwNTk0ZiwKLTAuMjIxMDg3ZiwgMC4xNDI0MDVmLCAwLjQ4NDA2NmYsIDAuNDA0Mzk1ZiwgMC41
MTE5NTVmLAotLTAuMjM3MjU1ZiwgMC4yNDE3NDJmLCAwLjM1MDQ1ZiwgLTAuNjk5NDI4ZiwgMTAu
Mzk5M2YsCi0yLjY1MDdmLCAtMi40MzQ1OWYsIC00LjE4ODM4ZiwgMS4wNTkyOGYsIDEuNzEwNjdm
LAotMC4wMDY2NzgxMWYsIC0wLjA3MjEzMzVmLCAtMC4wMzk3MzQ2ZiwgMC4wMzYyNzA0ZiwgLTAu
MTE0OTZmLAotLTAuMDIzNTc3NmYsIDAuMDA4MjE2MWYsIC0wLjAxNDE3NDFmLCAtMC4wMzI5Njk5
ZiwgLTAuMDM1NDI1M2YsCi0wLjAwMjc3NDA0ZiwgLTAuMjkwNjU0ZiwgLTEuMTQ3NjdmLCAtMC4z
MTkxNTdmLCAtMC42ODY1NDRmLAotMC4zNjg5N2YsIDAuNDc4ODk5ZiwgMC4xODI1NzlmLCAtMC40
MTEwNjlmLCAwLjg4MTEwNGYsCi0tNC42MDY4M2YsIDEuNDY5N2YsIDAuMzM1ODQ1ZiwgLTEuODE5
MDVmLCAtMzAuMTY5OWYsCi01LjU1MjI1ZiwgMC4wMDE5NTA4ZiwgLTAuMTIzNTc2ZiwgLTAuMDcy
NzMzMmYsIC0wLjA2NDE1OTdmLAotLTAuMDUzNDQ1OGYsIC0wLjEwODE2NmYsIC0wLjA5MzczNjhm
LCAtMC4wNjk3ODgzZiwgLTAuMDI3NTQ3NWYsCi0tMC4xOTIzMDlmLCAtMC4xMTAwNzRmLCAwLjI4
NTM3NWYsIC0wLjQwNTU5N2YsIDAuMDkyNjcyNGYsCi0tMC4yODc4ODFmLCAtMC44NTExOTNmLCAt
MC4wOTk0OTNmLCAtMC4yMzM3NjRmLCAtMS4yODUyZiwKLTEuMTM2MTFmLCAzLjEyMTY4ZiwgLTAu
MDY5OWYsIC0xLjg2MjE2ZiwgMi42NTI5MmYsCi0tNy4zMTAzNmYsIDIuNDQ3NzZmLCAtMC4wMDEx
MTgwMmYsIC0wLjA2MzI3ODZmLCAtMC4wMzc2Mjk2ZiwKLS0wLjE0OTg1MWYsIDAuMTQyOTYzZiwg
MC4xODQzNjhmLCAwLjEyMzQzM2YsIDAuMDc1NjE1OGYsCi0wLjExNzMxMmYsIDAuMDkzMzM5NWYs
IDAuMDY5MjE2M2YsIDAuMDg0MjU5MmYsIDAuMDcwNDY4M2YsCi0wLjA1ODk5NjNmLCAwLjA5NDIy
MDVmLCAtMC40NDg4NjJmLCAwLjAyNjI2NzdmLCAwLjI3MDM1MmYsCi0tMC4yNjIzMTdmLCAwLjE3
MjU4NmYsIDIuMDAyMjdmLCAtMC4xNTkyMTZmLCAwLjAzODQyMmYsCi0xMC4yMDczZiwgNC4xNTUz
NmYsIC0yLjM0MDdmLCAtMC4wNTUwMjY1ZiwgMC4wMDk2NDc5MmYsCi0tMC4xNDEzMzZmLCAwLjAy
NzQ1MDFmLCAwLjAzNDM5MjFmLCAtMC4wNDg3NDI4ZiwgMC4wOTUwMTcyZiwKLS0wLjAwNzc1MDE3
ZiwgLTAuMDM3MjQ5MmYsIC0wLjAwNTQ4MTIxZiwgLTAuMDY2MzY5NWYsIDAuMDk2MDUwNmYsCi0t
MC4yMDAwMDhmLCAtMC4wNDEyODI3ZiwgMC41ODcyOGYsIDAuMDUxNTc4N2YsIDAuMzM3MjU0ZiwK
LTAuODU1MDI0ZiwgMC42NjgzNzFmLCAtMC4xMTQ5MDRmLCAtMy42Mjk2MmYsIC0wLjQ2NzQ3N2Ys
Ci0tMC4yMTU0NzJmLCAyLjYxNTM3ZiwgMC40MDYxMTdmLCAtMS4zNjM3M2YsIDAuMDQyNTM5NGYs
Ci0wLjEyMjA4ZiwgMC4wOTM0NTAyZiwgMC4xMjMwNTVmLCAwLjAzNDA5MzVmLCAtMC4xNDI0NjZm
LAotMC4wMzUwMzdmLCAtMC4wNDkwNjY2ZiwgMC4wNzMzMjA4ZiwgMC4wNTc2NjcyZiwgMC4xMjM5
ODRmLAotLTAuMDUxNzE5NGYsIC0wLjI1MzAxOGYsIDAuNTkwNTY1ZiwgMC4xNDU4NDlmLCAwLjMx
NTE4NWYsCi0wLjIyMTUzNGYsIC0wLjE0OTA4MWYsIDAuMjE2MTYxZiwgLTAuMzQ5NTc1ZiwgMjQu
NTY2NGYsCi0tMC45OTQxOTZmLCAwLjYxNDI4OWYsIC0xOC43OTA1ZiwgLTIuODMyNzdmLCAtMC43
MTY4MDFmLAotLTAuMzQ3MjAxZiwgMC40Nzk1MTVmLCAtMC4yNDYwMjdmLCAwLjA3NTg2ODNmLCAw
LjEzNzI5M2YsCi0tMC4xNzc4MWYsIDAuMTE4NzUxZiwgLTAuMDAxMDgzMjlmLCAtMC4yMzczMzRm
LCAwLjM1NTczMmYsCi0tMC4xMjk5MWYsIC0wLjA1NDc2MjdmLCAtMC4zMTg1NzZmLCAtMC4zMjU1
MjRmLCAwLjE4MDQ5NGYsCi0tMC4wNjI1NjA0ZiwgMC4xNDEyMTlmLCAwLjM0NDA2NGYsIDAuMzc2
NThmLCAtMC41OTE3NzJmLAotNS44NDI3ZiwgLTAuMzgwNzVmLCAwLjIyMTg5NGYsIC0xLjQxOTM0
ZiwgLTEuODc5NDNlKzA2ZiwKLTEuMzQxMTRmLCAwLjAyODMzNTVmLCAtMC4wNDQ3ODU2ZiwgLTAu
MDIxMTQ2NmYsIC0wLjAyNTY5MjdmLAotMC4wMTM5NjE4ZiwgMC4wMjA3OTM0ZiwgLTAuMDEwNzY2
NmYsIDAuMDExMDk2OWYsIDAuMDU4NjA2OWYsCi0tMC4wMjUzNTQ1ZiwgLTAuMDMyODQzM2YsIDAu
MTE4NzJmLCAtMC4yMTY5NDNmLCAwLjE0NTc0OGYsCi0wLjExOTgwOGYsIC0wLjA5MTUyMTFmLCAt
MC4xMjA2NDdmLCAtMC4wNzg3NzE5ZiwgLTAuMTQzNjQ0ZiwKLS0wLjU5NTExNmYsIC0xLjE1MmYs
IC0xLjI1MzM1ZiwgLTEuMTcwOTJmLCA0LjM0MDIzZiwKLS05NzUyNjguZiwgLTEuMzcwMzNmLCAt
MC4wNDAxMTIzZiwgMC4yMTA2MDJmLCAtMC4xMzY2NTZmLAotMC4xMzU5NjJmLCAtMC4wNTIzMjkz
ZiwgMC4wNDQ0NjA0ZiwgMC4wMTQzOTI4ZiwgMC4wMDQxMjY2NmYsCi0tMC4wMTkzMDAzZiwgMC4y
MTg0NTJmLCAtMC4xMTAyMDRmLCAtMi4wMjU2M2YsIDAuOTE4MjM4ZiwKLS0yLjQ1MzYyZiwgMS4x
OTU0MmYsIC0wLjA2MTM2MmYsIC0xLjkyMjQzZiwgMC4zMDgxMTFmLAotMC40OTc2NGYsIDAuOTEy
MzU2ZiwgMC4yMDkyNzJmLCAtMi4zNDUyNWYsIDIuMTkzMjZmLAotLTYuNDcxMjFmLCAxLjY5Nzcx
ZiwgLTAuNzI1MTIzZiwgMC4wMTE4OTI5ZiwgMC4wMzc3OTQ0ZiwKLTAuMDU1NDAwM2YsIDAuMDIy
NjQ1MmYsIC0wLjA3MDQ0MjFmLCAtMC4wMzAwMzA5ZiwgMC4wMTIyOTc4ZiwKLS0wLjAwNDE3ODJm
LCAtMC4wNjg2NjEyZiwgMC4wMzEzMTE1ZiwgMC4wMzkxMTFmLCAwLjM2NDExMWYsCi0tMC4wOTQ1
NTQ4ZiwgMC4wMjI5ODc2ZiwgLTAuMTc0MTRmLCAwLjMyOTc5NWYsIDAuMTE0NzE0ZiwKLTAuMzAw
MjJmLCAwLjEwNjk5N2YsIDAuMTMyMzU1ZiwgNS43OTkzMmYsIDAuOTA4MDU4ZiwKLS0wLjkwNTMy
NGYsIC0zLjM1NjFmLCAwLjE5MDY0N2YsIDAuMTg0MjExZiwgLTAuNjczNjQ4ZiwKLTAuMjMxODA3
ZiwgLTAuMDU4NjIyMmYsIDAuMjMwNzUyZiwgLTAuNDM4Mjc3ZiwgMC4yNDU4NTdmLAotLTAuMTcy
MTVmLCAwLjA4NzYzODNmLCAtMC43MjA1MTJmLCAwLjE2MjUxNWYsIDAuMDE3MDU3MWYsCi0wLjEw
MTc4MWYsIDAuMzg4NDc3ZiwgMS4zMjkzMWYsIDEuMDg1NDhmLCAtMC45MzYzMDFmLAotLTIuMzY5
NThmLCAtNi43MTk4OGYsIC0zLjQ0Mzc2ZiwgMi4xMzgxOGYsIDE0LjIzMThmLAotNC45MTQ1OWYs
IC0zLjA5MDUyZiwgLTkuNjkxOTFmLCAtMC43NjgyMzRmLCAxLjc5NjA0ZiwKLTAuMDU0OTY1M2Ys
IDAuMTYzMzk5ZiwgMC4wNzk3MDI1ZiwgMC4wMzQzOTMzZiwgLTAuMDU1NTg3NmYsCi0tMC4wMDUw
NTY3M2YsIDAuMDE4NzI1OGYsIDAuMDMyNjYyOGYsIDAuMDIzMTQ4NmYsIDAuMTU1NzNmLAotMC4w
NDc2MjIzZiwgLTAuMjU0ODI0ZiwgMS42MDE1NWYsIC0wLjgwMTIyMWYsIDIuNTU0OTZmLAotMC43
Mzc2MjlmLCAtMS4zNjI0OWYsIC0wLjY5NTQ2M2YsIC0yLjQ0MzAxZiwgLTEuNzMxODhmLAotMy45
NTI3OWYsIDEuODkwNjhmLCAwLjQ4NjA4N2YsIC0xMS4zMzQzZiwgMy45NDE2ZSswNmYsCi0KKy0w
LjUxNDYyNGYsIDAuMDIzNDIyN2YsIC0wLjE0MzI5ZiwgLTAuMDg3ODIxNmYsIC0wLjAwMTg3ODI3
ZiwKKy0wLjAyNTc0NDNmLCAwLjEwODUyNGYsIDAuMDAzMzM4ODFmLCAwLjAwNTg1MDE3ZiwgLTAu
MDI0NjEzMmYsCiswLjE0MjcyM2YsIC0wLjAwNDM2NDk0ZiwgMC4wMTAxMzU0ZiwgLTAuMTExMjRm
LCAtMC4wODA5MzY3ZiwKKy0wLjA3NTA3NzJmLCAwLjAyOTU1MjRmLCAwLjAwODIzOTQ0ZiwgMC4x
NTAzOTJmLCAwLjAzMjA4NzZmLAorLTAuMDcxMDU2NGYsIC0xLjQzODE4ZiwgMC42NTIwNzZmLCAw
LjA2NTA3NDRmLCAtMS41NDgyMWYsCiswLjE2ODk0OWYsIC0xLjkyNzI0ZiwgMC4wNTE3OTc2Ziwg
LTAuMDY3MDczN2YsIC0wLjA2OTAxMjFmLAorMC4wMDI0NzUyOGYsIC0wLjA1MjIwMjRmLCAwLjA2
MzEzNjhmLCAwLjA1MzI3NzZmLCAwLjA0Nzc1MWYsCistMC4wMTE3MTVmLCAwLjE0MjM3NGYsIC0w
LjAyOTA4ODVmLCAtMC4yNzkyNjNmLCAtMC40MzM0OTlmLAorLTAuMDc5NTE3NGYsIC0wLjM4MDQ1
OGYsIC0wLjA1MTI2M2YsIDAuMjE4NTM3ZiwgLTAuMzIyNDc4ZiwKKzEuMDY2NjdmLCAtMC4xMDQ2
MDdmLCAtNC43MDEwOGYsIDAuMzEyMDM3ZiwgMC4yNzczOTdmLAorLTIuNzE4NTlmLCAxLjcwMDM3
ZiwgLTAuMTQxODQ1ZiwgMC4wMTE1NjE4ZiwgMC4wNjI5ODgzZiwKKzAuMDQwMzg3MWYsIDAuMDEz
OTQyOGYsIC0wLjAwNDMwNzMzZiwgLTAuMDQyOTAzOGYsIC0wLjA1OTAzMThmLAorLTAuMDUwMTUy
NmYsIC0wLjAyODQ4MDJmLCAtMC4wNDE1Njg2ZiwgLTAuMDQzODk5OWYsIDAuMDgyMjY2NmYsCisw
LjE5NzE5NGYsIDAuMDM2MzI3NWYsIC0wLjA1ODQzMDdmLCAwLjA3NTIzNjRmLCAtMC4wNzk5Nzk2
ZiwKKy0wLjE0NjI3NWYsIDAuMTYxNjYxZiwgLTAuMTg0NTg1ZiwgMC4xNDU1NjhmLCAwLjQ0Mjgy
M2YsCisxLjYxMjIxZiwgMS4xMTE2MmYsIDIuNjIxNzdmLCAtMi40ODJmLCAtMC4xMTI1OTlmLAor
LTAuMTEwMzY2ZiwgLTAuMTQwNzk0ZiwgLTAuMTgxNjk0ZiwgMC4wNjQ4Njc0ZiwgMC4wODQyMjQ4
ZiwKKzAuMDkzMzk5M2YsIDAuMTUwMTIyZiwgMC4xMjkxNzFmLCAwLjE3Njg0OGYsIDAuMTQxNzU4
ZiwKKy0wLjI3MTgyMmYsIDAuMjM1MTEzZiwgMC4wNjY4NTc5ZiwgLTAuNDMzOTU3ZiwgMC4xMTM2
MzNmLAorLTAuMTY5MzQ4ZiwgLTEuNDAwOTFmLCAwLjYyODYxZiwgLTAuMTM0MjM2ZiwgMC40MDIx
NzNmLAorMS44NjM3M2YsIDEuNTM5OThmLCAtNC4zMjA4NGYsIDAuNzM1MzQzZiwgMC44MDAyMTRm
LAorLTAuMDA5Njg0MTVmLCAwLjA0MjU5MDRmLCAwLjAxOTY4MTFmLCAtMC4wMTg0MjZmLCAtMC4w
MDAzNDM5NTNmLAorLTAuMDA0MTYzODlmLCAwLjAwMTExNTU4ZiwgMC4wMTczMDY5ZiwgLTAuMDA5
OTg1OTZmLCAtMC4wMjU4OThmLAorMC4wMDEyMzc2NGYsIC0wLjAwNTIwMzczZiwgLTAuMDU2NTAz
M2YsIDAuMDYzNzM5NGYsIDAuMDA1MTIxM2YsCiswLjAyMjEzNjFmLCAwLjAwODE5OTYyZiwgLTAu
MDQ2NzA2MWYsIC0wLjA1NDgyNThmLCAtMC4wMDMxNDA2M2YsCistMS4xODMzMmYsIDEuODgwOTFm
LCAtMC40MTE0OGYsIC0yLjk1NzI3ZiwgLTAuNTIxNDQ5ZiwKKy0wLjI3MTY0MWYsIDAuMTI0OTQ2
ZiwgLTAuMDUzMjkzNmYsIDAuMTAxNTE1ZiwgMC4wMDAyMDg1NjRmLAorLTAuMDQ4ODc0OGYsIDAu
MDY0MjM4OGYsIC0wLjAzODM4NDhmLCAwLjAxMzUwNDZmLCAtMC4wNDEzNTkyZiwKKy0wLjAzMjY0
MDJmLCAtMC4wMTM3NDIxZiwgLTAuMDIyNTIxOWYsIC0wLjA5MTcyOTRmLCAtMC4yNzc3NTlmLAor
LTAuMTg1NDE4ZiwgMC4wNDcxMTI4ZiwgLTAuMTI1ODc5ZiwgMC4yNjI0NjdmLCAtMC4yMTI3OTRm
LAorLTAuMTEyOTMxZiwgLTEuOTk4ODVmLCAtMC40MDQ3ODdmLCAwLjIyNDQwMmYsIDAuNjM3OTYy
ZiwKKy0wLjI3ODA4ZiwgLTAuMDcyMzk1M2YsIC0wLjA1Mzc2NTVmLCAtMC4wMzM2MzU5ZiwgLTAu
MDkwNjYwMWYsCistMC4wNjQxMzA5ZiwgLTAuMDcxMzU0MmYsIDAuMDUyNDMxN2YsIDAuMDA2MDg4
MTlmLCAwLjA3NTQxMDFmLAorLTAuMDQ4ODQwMWYsIC0wLjAwNjcxODY1ZiwgMC4wNDE4MjM5Ziwg
MC4wNTM2Mjg0ZiwgLTAuMTMyNjM5ZiwKKzAuMDI2NzY0OGYsIC0wLjI0ODQzMmYsIC0wLjAxMDQx
NTNmLCAwLjAzNTU0NGYsIC0wLjIxMjc1M2YsCistMC4zMDI4OTVmLCAtMC4wMzU3ODU0ZiwgMC4z
NzY4MzhmLCAwLjU5NzAyNWYsIC0wLjY2NDY0N2YsCiswLjI2ODQyMmYsIC0wLjM3Njc3MmYsIC0x
LjA1NDcyZiwgMC4wMTQ0MTc4ZiwgMC4xNzkxMjJmLAorMC4wMzYwMTU1ZiwgMC4yMjAyNjJmLCAt
MC4wMDU2MzgxZiwgMC4wMzE3MTk3ZiwgMC4wNjIxMDY2ZiwKKy0wLjAwNzc5Mjk4ZiwgMC4wMDc4
OTM3OGYsIDAuMDAzNTA2MDVmLCAwLjAxMDQ4MDlmLCAwLjAzNjI4NzFmLAorLTAuMTU3NzA4Ziwg
LTAuMDY1OTc3OWYsIC0wLjA5MjYyNzhmLCAwLjAwNzcwNzkxZiwgMC4wNjMxNjIxZiwKKzAuMDgx
NzM0M2YsIC0wLjQyNDI5NWYsIC0wLjA0Mzc3MjdmLCAtMC4yNDI1MWYsIDAuNzExMjE3ZiwKKy0w
LjczNjQ1NWYsIC0yLjE5NGYsIC0wLjEwNzYxMmYsIC0wLjE3NTE1NmYsIC0wLjAzNjY1NzNmLAor
LTAuMDEyMzE1NmYsIC0wLjA2Mjg1MTZmLCAtMC4wMjE4OTc3ZiwgLTAuMDA2OTM2OTlmLCAwLjAw
Njk1MTg1ZiwKKzAuMDA1MDczNjJmLCAwLjAwMzU5MzM0ZiwgMC4wMDUyNjYxZiwgMC4wMzU1NjFm
LCAwLjAzODI3MDFmLAorMC4wMzQyMTc5ZiwgLTAuMDA3OTAyNzFmLCAtMC4wMTcwOTI1ZiwgMC4w
NDcwMjlmLCAwLjAxOTczNjJmLAorLTAuMDE1MzQzNWYsIDAuMDY0NDE1MmYsIC0wLjM2ODYyZiwg
LTAuMDY3NDg3NmYsIC0yLjgyNjcyZiwKKzEuMzQxMjJmLCAtMC4wNzg4MDI5ZiwgLTMuNDc3OTJm
LCAwLjUwNzI0NmYsIC0wLjgxNjM3OGYsCistMC4wMTQyMzgzZiwgLTAuMTI3MzQ5ZiwgLTAuMTA2
OTI2ZiwgLTAuMDM1OTUyNGYsIDAuMTA1MDQ1ZiwKKzAuMjkxNTU0ZiwgMC4xOTU0MTNmLCAwLjA4
NjYyMTRmLCAtMC4wNjY1NzdmLCAtMC4xMDIxODhmLAorMC4wOTc5NDY2ZiwgLTAuMTI5ODJmLCAw
LjQwMDE4MWYsIC0wLjQwOTMzNmYsIC0wLjA1OTMzMjZmLAorLTAuMDY1NjIwM2YsIC0wLjIwNDQ3
NGYsIDAuMTc5ODAyZiwgMC4wMDA1MDkwODRmLCAwLjA5OTU5NTRmLAorLTIuMzc3ZiwgLTAuNjg2
MzU5ZiwgMC45MzQ4NjFmLCAxLjEwMjYxZiwgMS4zOTAxZiwKKy00LjMzNjE2ZiwgLTAuMDAyNjQw
MTdmLCAwLjAwNzEzMDQ1ZiwgMC4xMDYyNjRmLCAwLjE0MzcyNmYsCistMC4wNjg1MzA1ZiwgLTAu
MDU0NjU2ZiwgLTAuMDE3NjcyNWYsIC0wLjA3NzI2NjlmLCAtMC4wMjY0NTI2ZiwKKy0wLjAxMDM4
MjRmLCAtMC4wMjY5ODcyZiwgLTAuMDA2ODdmLCAwLjIyNTgwNGYsIDAuNDA3NzUxZiwKKy0wLjA2
MTI2MTFmLCAtMC4wNTc2ODYzZiwgLTAuMTgwMTMxZiwgLTAuMjIyNzcyZiwgLTAuNDYxNzQyZiwK
KzAuMzM1MjM2ZiwgMS4wMzM5OWYsIDQuMjQxMTJmLCAtMC4zNDU3OTZmLCAtMC41OTQ1NDlmLAor
LTc2LjE0MDdmLCAtMC4yNjUyNzZmLCAwLjA1MDc3MTlmLCAwLjA2NDMwNDRmLCAwLjAzODQ4MzJm
LAorMC4wNDI0NDU5ZiwgLTAuMDM4NzgxN2YsIC0wLjAyMzU5OTZmLCAtMC4wNzQwNTU2ZiwgLTAu
MDI3MDAyOWYsCiswLjAwODgyMTc3ZiwgLTAuMDU1MjM3MWYsIC0wLjAwNDg1ODUxZiwgMC4zMTQy
OTVmLCAwLjM2MDQzMWYsCistMC4wNzg3MDg1ZiwgMC4xMTAzNTVmLCAtMC40MTU5NThmLCAtMC4z
ODUwODhmLCAtMC4yNzIyMjRmLAorLTEuNTUxMDhmLCAtMC4xNDE4NDhmLCAwLjQ0ODg3N2YsIC0w
LjU2MzQ0N2YsIC0yLjMxNDAzZiwKKy0wLjEyMDA3N2YsIC0xLjQ5OTE4ZiwgLTAuODE3NzI2Ziwg
LTAuMDQ5NTg1NGYsIC0wLjAyMzA3ODJmLAorLTAuMDIyNDAxNGYsIDAuMTE3MDc2ZiwgMC4wMzkz
MjE2ZiwgMC4wNTE5OTdmLCAwLjAzMzA3NjNmLAorLTAuMTEwNzk2ZiwgMC4wMjExMTE3ZiwgLTAu
MDE5NzI1OGYsIDAuMDE4NzQ2MWYsIDAuMDEyNTE4M2YsCiswLjE0ODc2ZiwgMC4wOTIwNTY1Ziwg
LTAuMzQyNDc1ZiwgMC4xMzUyNzJmLCAtMC4xNjgxNTVmLAorLTAuMDMzNDIzZiwgLTAuMDYwNDYx
MWYsIC0wLjEyODgzNWYsIDAuNjY0OTQ3ZiwgLTAuMTQ0OTk3ZiwKKzIuMjc2NDlmLCAxLjI4NjYz
ZiwgMC44NDEyMTdmLCAtMi40MjgwN2YsIDAuMDIzMDQ3MWYsCiswLjIyNjcwOWYsIC0wLjAzNzQ4
MDNmLCAwLjE1NTQzNmYsIDAuMDQwMDM0MmYsIC0wLjE4NDY4NmYsCiswLjEyODQ4OGYsIC0wLjA5
Mzk1MThmLCAtMC4wNTc4NTU5ZiwgMC4wMjY1OTY3ZiwgLTAuMDk5OTMyMmYsCistMC4wMzIyNzY4
ZiwgLTAuMzIyOTk0ZiwgLTAuMTg5MzcxZiwgLTAuNzM4MDY5ZiwgLTAuMDc1NDkxNGYsCiswLjIx
NDcxN2YsIC0wLjA5MzcyOGYsIC0wLjY5NTc0MWYsIDAuMDg5OTI5OGYsIC0yLjA2MTg4ZiwKKy0w
LjI3MzcxOWYsIC0wLjg5Njk3N2YsIDAuMTMwNTUzZiwgMC4xMzQ2MzhmLCAxLjI5MzU1ZiwKKzAu
MDA1MjA3NDlmLCAtMC4wMzI0MjI0ZiwgMC4wMDUzMDQ1MWYsIDAuMDE5MjM4NWYsIDAuMDAzMjg3
MDhmLAorMC4wMjUwODM4ZiwgMC4wMDUzMzY1ZiwgLTAuMDE3NzMyMWYsIDAuMDA2MTg3ODlmLCAw
LjAwNTI1MzY0ZiwKKzAuMDAxMDQ1OTZmLCAtMC4wMzYwNDU5ZiwgMC4wNDAyNDAzZiwgLTAuMDQw
NjM1MWYsIDAuMDEzNjg4M2YsCiswLjA4ODA3MjJmLCAtMC4wMTk3NDQ5ZiwgMC4wODk5MzhmLCAw
LjAxMDA0NTZmLCAtMC4wNDc1NjM4ZiwKKy0wLjczMjY3ZiwgMC4wMzc0MzNmLCAtMC4xNDY1NTFm
LCAtMC4yMzAyMjFmLCAtMy4wNjQ4OWYsCistMS40MDE5NGYsIDAuMDE5ODQ4M2YsIDAuMDM5Nzk1
M2YsIC0wLjAxOTAyMzlmLCAwLjA0NzA3MTVmLAorLTAuMTMxMzYzZiwgLTAuMTkxNzIxZiwgLTAu
MDE3NjIyNGYsIC0wLjA0ODAzNTJmLCAtMC4yMjE3OTlmLAorLTAuMjY3OTRmLCAtMC4wMjkyNjE1
ZiwgMC4wNjEyMTI3ZiwgLTAuMTI5ODc3ZiwgMC4wMDYyODMzMmYsCistMC4wODU5MThmLCAwLjAx
NzUzNzlmLCAwLjA1NDEwMTFmLCAtMC4wODEwODc0ZiwgLTAuMzgwODA5ZiwKKy0wLjIyMjA1NmYs
IC0wLjUwODg1OWYsIC0wLjQ3MzM2OWYsIDAuNDg0OTU4ZiwgLTIuMjg0MTFmLAorMC4wMTM5NTE2
ZiwKIC8qIG91dHB1dCBsYXllciAqLwotLTAuMzgxNDM5ZiwgMC4xMjExNWYsIC0wLjkwNjkyN2Ys
IDIuOTM4NzhmLCAxLjYzODhmLAotMC44ODI4MTFmLCAwLjg3NDM0NGYsIDEuMjE3MjZmLCAtMC44
NzQ1NDVmLCAwLjMyMTcwNmYsCi0wLjc4NTA1NWYsIDAuOTQ2NTU4ZiwgLTAuNTc1MDY2ZiwgLTMu
NDY1NTNmLCAwLjg4NDkwNWYsCi0wLjA5MjQwNDdmLCAtOS45MDcxMmYsIDAuMzkxMzM4ZiwgMC4x
NjAxMDNmLCAtMi4wNDk1NGYsCi00LjE0NTVmLCAwLjA2ODQwMjlmLCAtMC4xNDQ3NjFmLCAtMC4y
ODUyODJmLCAwLjM3OTI0NGYsCi0tMS4xNTg0ZiwgLTAuMDI3NzI0MWYsIC05Ljg1ZiwgLTQuODIz
ODZmLCAzLjcxMzMzZiwKLTMuODczMDhmLCAzLjUyNTU4Zn07CiszLjkwMDE3ZiwgMS43MTc4OWYs
IC0xLjQzMzcyZiwgLTIuNzA4MzlmLCAxLjc3MTA3ZiwKKzUuNDgwMDZmLCAxLjQ0NjYxZiwgMi4w
MTEzNGYsIC0xLjg4MzgzZiwgLTMuNjQ5NThmLAorLTEuMjYzNTFmLCAwLjc3OTQyMWYsIDIuMTEz
NTdmLCAzLjEwNDA5ZiwgMS42ODg0NmYsCistNC40NjE5N2YsIC0xLjYxNDU1ZiwgMy41OTgzMmYs
IDIuNDM1MzFmLCAtMS4yNjQ1OGYsCiswLjQxNzk0MWYsIDEuNDc0MzdmLCAyLjE2NjM1ZiwgLTEu
OTA5ZiwgLTAuODI4ODY5ZiwKKzEuMzg4MDVmLCAtMi42Nzk3NWYsIC0wLjExMDA0NGYsIDEuOTU1
OTZmLCAwLjY5NzkzMWYsCistMC4zMTMyMjZmLCAtMC44ODkzMTVmLCAwLjI4MzIzNmYsIDAuOTQ2
MTAyZiwgfTsKIAotc3RhdGljIGNvbnN0IGludCB0b3BvWzNdID0gezI1LCAxNSwgMn07CitzdGF0
aWMgY29uc3QgaW50IHRvcG9bM10gPSB7MjUsIDE2LCAyfTsKIAogY29uc3QgTUxQIG5ldCA9IHsK
ICAgICAzLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvbWxwX3RyYWluLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9tbHBfdHJhaW4uYwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi44ZDlkMTI3YTZkYmJiNGU1OTZlOWZkMjhiNWMxYWIxYWM1MzA3ZjE5Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zcmMvbWxwX3RyYWluLmMKQEAgLTAsMCArMSw1MDEgQEAKKy8qIENvcHlyaWdo
dCAoYykgMjAwOC0yMDExIE9jdGFzaWMgSW5jLgorICAgV3JpdHRlbiBieSBKZWFuLU1hcmMgVmFs
aW4gKi8KKy8qCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJlIG1ldDoKKworICAg
LSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IK
KyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIEZPVU5EQVRJT04gT1IKKyAgIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICAgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICAg
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworICAgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
CisgICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyovCisKKworI2luY2x1ZGUgIm1scF90cmFpbi5oIgorI2luY2x1ZGUgPHN0ZGxp
Yi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8
c2VtYXBob3JlLmg+CisjaW5jbHVkZSA8cHRocmVhZC5oPgorI2luY2x1ZGUgPHRpbWUuaD4KKyNp
bmNsdWRlIDxzaWduYWwuaD4KKworaW50IHN0b3BwZWQgPSAwOworCit2b2lkIGhhbmRsZXIoaW50
IHNpZykKK3sKKyAgICBzdG9wcGVkID0gMTsKKyAgICBzaWduYWwoc2lnLCBoYW5kbGVyKTsKK30K
KworTUxQVHJhaW4gKiBtbHBfaW5pdChpbnQgKnRvcG8sIGludCBuYkxheWVycywgZmxvYXQgKmlu
cHV0cywgZmxvYXQgKm91dHB1dHMsIGludCBuYlNhbXBsZXMpCit7CisgICAgaW50IGksIGosIGs7
CisgICAgTUxQVHJhaW4gKm5ldDsKKyAgICBpbnQgaW5EaW0sIG91dERpbTsKKyAgICBuZXQgPSBt
YWxsb2Moc2l6ZW9mKCpuZXQpKTsKKyAgICBuZXQtPnRvcG8gPSBtYWxsb2MobmJMYXllcnMqc2l6
ZW9mKG5ldC0+dG9wb1swXSkpOworICAgIGZvciAoaT0wO2k8bmJMYXllcnM7aSsrKQorICAgICAg
ICBuZXQtPnRvcG9baV0gPSB0b3BvW2ldOworICAgIGluRGltID0gdG9wb1swXTsKKyAgICBvdXRE
aW0gPSB0b3BvW25iTGF5ZXJzLTFdOworICAgIG5ldC0+aW5fcmF0ZSA9IG1hbGxvYygoaW5EaW0r
MSkqc2l6ZW9mKG5ldC0+aW5fcmF0ZVswXSkpOworICAgIG5ldC0+d2VpZ2h0cyA9IG1hbGxvYygo
bmJMYXllcnMtMSkqc2l6ZW9mKG5ldC0+d2VpZ2h0cykpOworICAgIG5ldC0+YmVzdF93ZWlnaHRz
ID0gbWFsbG9jKChuYkxheWVycy0xKSpzaXplb2YobmV0LT53ZWlnaHRzKSk7CisgICAgZm9yIChp
PTA7aTxuYkxheWVycy0xO2krKykKKyAgICB7CisgICAgICAgIG5ldC0+d2VpZ2h0c1tpXSA9IG1h
bGxvYygodG9wb1tpXSsxKSp0b3BvW2krMV0qc2l6ZW9mKG5ldC0+d2VpZ2h0c1swXVswXSkpOwor
ICAgICAgICBuZXQtPmJlc3Rfd2VpZ2h0c1tpXSA9IG1hbGxvYygodG9wb1tpXSsxKSp0b3BvW2kr
MV0qc2l6ZW9mKG5ldC0+d2VpZ2h0c1swXVswXSkpOworICAgIH0KKyAgICBkb3VibGUgaW5NZWFu
W2luRGltXTsKKyAgICBmb3IgKGo9MDtqPGluRGltO2orKykKKyAgICB7CisgICAgICAgIGRvdWJs
ZSBzdGQ9MDsKKyAgICAgICAgaW5NZWFuW2pdID0gMDsKKyAgICAgICAgZm9yIChpPTA7aTxuYlNh
bXBsZXM7aSsrKQorICAgICAgICB7CisgICAgICAgICAgICBpbk1lYW5bal0gKz0gaW5wdXRzW2kq
aW5EaW0ral07CisgICAgICAgICAgICBzdGQgKz0gaW5wdXRzW2kqaW5EaW0ral0qaW5wdXRzW2kq
aW5EaW0ral07CisgICAgICAgIH0KKyAgICAgICAgaW5NZWFuW2pdIC89IG5iU2FtcGxlczsKKyAg
ICAgICAgc3RkIC89IG5iU2FtcGxlczsKKyAgICAgICAgbmV0LT5pbl9yYXRlWzEral0gPSAuNS8o
LjAwMDErc3RkKTsKKyAgICAgICAgc3RkID0gc3RkLWluTWVhbltqXSppbk1lYW5bal07CisgICAg
ICAgIGlmIChzdGQ8LjAwMSkKKyAgICAgICAgICAgIHN0ZCA9IC4wMDE7CisgICAgICAgIHN0ZCA9
IDEvc3FydChpbkRpbSpzdGQpOworICAgICAgICBmb3IgKGs9MDtrPHRvcG9bMV07aysrKQorICAg
ICAgICAgICAgbmV0LT53ZWlnaHRzWzBdW2sqKHRvcG9bMF0rMSkraisxXSA9IHJhbmRuKHN0ZCk7
CisgICAgfQorICAgIG5ldC0+aW5fcmF0ZVswXSA9IDE7CisgICAgZm9yIChqPTA7ajx0b3BvWzFd
O2orKykKKyAgICB7CisgICAgICAgIGRvdWJsZSBzdW0gPSAwOworICAgICAgICBmb3IgKGs9MDtr
PGluRGltO2srKykKKyAgICAgICAgICAgIHN1bSArPSBpbk1lYW5ba10qbmV0LT53ZWlnaHRzWzBd
W2oqKHRvcG9bMF0rMSkraysxXTsKKyAgICAgICAgbmV0LT53ZWlnaHRzWzBdW2oqKHRvcG9bMF0r
MSldID0gLXN1bTsKKyAgICB9CisgICAgZm9yIChqPTA7ajxvdXREaW07aisrKQorICAgIHsKKyAg
ICAgICAgZG91YmxlIG1lYW4gPSAwOworICAgICAgICBkb3VibGUgc3RkOworICAgICAgICBmb3Ig
KGk9MDtpPG5iU2FtcGxlcztpKyspCisgICAgICAgICAgICBtZWFuICs9IG91dHB1dHNbaSpvdXRE
aW0ral07CisgICAgICAgIG1lYW4gLz0gbmJTYW1wbGVzOworICAgICAgICBzdGQgPSAxL3NxcnQo
dG9wb1tuYkxheWVycy0yXSk7CisgICAgICAgIG5ldC0+d2VpZ2h0c1tuYkxheWVycy0yXVtqKih0
b3BvW25iTGF5ZXJzLTJdKzEpXSA9IG1lYW47CisgICAgICAgIGZvciAoaz0wO2s8dG9wb1tuYkxh
eWVycy0yXTtrKyspCisgICAgICAgICAgICBuZXQtPndlaWdodHNbbmJMYXllcnMtMl1baioodG9w
b1tuYkxheWVycy0yXSsxKStrKzFdID0gcmFuZG4oc3RkKTsKKyAgICB9CisgICAgcmV0dXJuIG5l
dDsKK30KKworI2RlZmluZSBNQVhfTkVVUk9OUyAxMDAKKyNkZWZpbmUgTUFYX09VVCAxMAorCitk
b3VibGUgY29tcHV0ZV9ncmFkaWVudChNTFBUcmFpbiAqbmV0LCBmbG9hdCAqaW5wdXRzLCBmbG9h
dCAqb3V0cHV0cywgaW50IG5iU2FtcGxlcywgZG91YmxlICpXMF9ncmFkLCBkb3VibGUgKlcxX2dy
YWQsIGRvdWJsZSAqZXJyb3JfcmF0ZSkKK3sKKyAgICBpbnQgaSxqOworICAgIGludCBzOworICAg
IGludCBpbkRpbSwgb3V0RGltLCBoaWRkZW5EaW07CisgICAgaW50ICp0b3BvOworICAgIGRvdWJs
ZSAqVzAsICpXMTsKKyAgICBkb3VibGUgcm1zPTA7CisgICAgaW50IFcwX3NpemUsIFcxX3NpemU7
CisgICAgZG91YmxlIGhpZGRlbltNQVhfTkVVUk9OU107CisgICAgZG91YmxlIG5ldE91dFtNQVhf
TkVVUk9OU107CisgICAgZG91YmxlIGVycm9yW01BWF9ORVVST05TXTsKKworICAgIHRvcG8gPSBu
ZXQtPnRvcG87CisgICAgaW5EaW0gPSBuZXQtPnRvcG9bMF07CisgICAgaGlkZGVuRGltID0gbmV0
LT50b3BvWzFdOworICAgIG91dERpbSA9IG5ldC0+dG9wb1syXTsKKyAgICBXMF9zaXplID0gKHRv
cG9bMF0rMSkqdG9wb1sxXTsKKyAgICBXMV9zaXplID0gKHRvcG9bMV0rMSkqdG9wb1syXTsKKyAg
ICBXMCA9IG5ldC0+d2VpZ2h0c1swXTsKKyAgICBXMSA9IG5ldC0+d2VpZ2h0c1sxXTsKKyAgICBt
ZW1zZXQoVzBfZ3JhZCwgMCwgVzBfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgbWVtc2V0KFcx
X2dyYWQsIDAsIFcxX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIGZvciAoaT0wO2k8b3V0RGlt
O2krKykKKyAgICAgICAgbmV0T3V0W2ldID0gb3V0cHV0c1tpXTsKKyAgICBmb3IgKGk9MDtpPG91
dERpbTtpKyspCisgICAgICAgIGVycm9yX3JhdGVbaV0gPSAwOworICAgIGZvciAocz0wO3M8bmJT
YW1wbGVzO3MrKykKKyAgICB7CisgICAgICAgIGZsb2F0ICppbiwgKm91dDsKKyAgICAgICAgZmxv
YXQgaW5wW2luRGltXTsKKyAgICAgICAgaW4gPSBpbnB1dHMrcyppbkRpbTsKKyAgICAgICAgb3V0
ID0gb3V0cHV0cyArIHMqb3V0RGltOworICAgICAgICBmb3IgKGo9MDtqPGluRGltO2orKykKKyAg
ICAgICAgICAgaW5wW2pdID0gaW5bal07CisgICAgICAgIGZvciAoaT0wO2k8aGlkZGVuRGltO2kr
KykKKyAgICAgICAgeworICAgICAgICAgICAgZG91YmxlIHN1bSA9IFcwW2kqKGluRGltKzEpXTsK
KyAgICAgICAgICAgIGZvciAoaj0wO2o8aW5EaW07aisrKQorICAgICAgICAgICAgICAgIHN1bSAr
PSBXMFtpKihpbkRpbSsxKStqKzFdKmlucFtqXTsKKyAgICAgICAgICAgIGhpZGRlbltpXSA9IHRh
bnNpZ19hcHByb3goc3VtKTsKKyAgICAgICAgfQorICAgICAgICBmb3IgKGk9MDtpPG91dERpbTtp
KyspCisgICAgICAgIHsKKyAgICAgICAgICAgIGRvdWJsZSBzdW0gPSBXMVtpKihoaWRkZW5EaW0r
MSldOworICAgICAgICAgICAgZm9yIChqPTA7ajxoaWRkZW5EaW07aisrKQorICAgICAgICAgICAg
ICAgIHN1bSArPSBXMVtpKihoaWRkZW5EaW0rMSkraisxXSpoaWRkZW5bal07CisgICAgICAgICAg
ICBuZXRPdXRbaV0gPSB0YW5zaWdfYXBwcm94KHN1bSk7CisgICAgICAgICAgICBlcnJvcltpXSA9
IG91dFtpXSAtIG5ldE91dFtpXTsKKyAgICAgICAgICAgIGlmIChvdXRbaV0gPT0gMCkgZXJyb3Jb
aV0gKj0gLjA7CisgICAgICAgICAgICBlcnJvcl9yYXRlW2ldICs9IGZhYnMoZXJyb3JbaV0pPjE7
CisgICAgICAgICAgICBpZiAoaT09MCkgZXJyb3JbaV0gKj0gNTsKKyAgICAgICAgICAgIHJtcyAr
PSBlcnJvcltpXSplcnJvcltpXTsKKyAgICAgICAgICAgIC8qZXJyb3JbaV0gPSBlcnJvcltpXS8o
MStmYWJzKGVycm9yW2ldKSk7Ki8KKyAgICAgICAgfQorICAgICAgICAvKiBCYWNrLXByb3BhZ2F0
ZSBlcnJvciAqLworICAgICAgICBmb3IgKGk9MDtpPG91dERpbTtpKyspCisgICAgICAgIHsKKyAg
ICAgICAgICAgIGRvdWJsZSBncmFkID0gMS1uZXRPdXRbaV0qbmV0T3V0W2ldOworICAgICAgICAg
ICAgVzFfZ3JhZFtpKihoaWRkZW5EaW0rMSldICs9IGVycm9yW2ldKmdyYWQ7CisgICAgICAgICAg
ICBmb3IgKGo9MDtqPGhpZGRlbkRpbTtqKyspCisgICAgICAgICAgICAgICAgVzFfZ3JhZFtpKiho
aWRkZW5EaW0rMSkraisxXSArPSBncmFkKmVycm9yW2ldKmhpZGRlbltqXTsKKyAgICAgICAgfQor
ICAgICAgICBmb3IgKGk9MDtpPGhpZGRlbkRpbTtpKyspCisgICAgICAgIHsKKyAgICAgICAgICAg
IGRvdWJsZSBncmFkOworICAgICAgICAgICAgZ3JhZCA9IDA7CisgICAgICAgICAgICBmb3IgKGo9
MDtqPG91dERpbTtqKyspCisgICAgICAgICAgICAgICAgZ3JhZCArPSBlcnJvcltqXSpXMVtqKiho
aWRkZW5EaW0rMSkraSsxXTsKKyAgICAgICAgICAgIGdyYWQgKj0gMS1oaWRkZW5baV0qaGlkZGVu
W2ldOworICAgICAgICAgICAgVzBfZ3JhZFtpKihpbkRpbSsxKV0gKz0gZ3JhZDsKKyAgICAgICAg
ICAgIGZvciAoaj0wO2o8aW5EaW07aisrKQorICAgICAgICAgICAgICAgIFcwX2dyYWRbaSooaW5E
aW0rMSkraisxXSArPSBncmFkKmlucFtqXTsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4g
cm1zOworfQorCisjZGVmaW5lIE5CX1RIUkVBRFMgOAorCitzZW1fdCBzZW1fYmVnaW5bTkJfVEhS
RUFEU107CitzZW1fdCBzZW1fZW5kW05CX1RIUkVBRFNdOworCitzdHJ1Y3QgR3JhZGllbnRBcmcg
eworICAgIGludCBpZDsKKyAgICBpbnQgZG9uZTsKKyAgICBNTFBUcmFpbiAqbmV0OworICAgIGZs
b2F0ICppbnB1dHM7CisgICAgZmxvYXQgKm91dHB1dHM7CisgICAgaW50IG5iU2FtcGxlczsKKyAg
ICBkb3VibGUgKlcwX2dyYWQ7CisgICAgZG91YmxlICpXMV9ncmFkOworICAgIGRvdWJsZSBybXM7
CisgICAgZG91YmxlIGVycm9yX3JhdGVbTUFYX09VVF07Cit9OworCit2b2lkICpncmFkaWVudF90
aHJlYWRfcHJvY2Vzcyh2b2lkICpfYXJnKQoreworICAgIGludCBXMF9zaXplLCBXMV9zaXplOwor
ICAgIHN0cnVjdCBHcmFkaWVudEFyZyAqYXJnID0gX2FyZzsKKyAgICBpbnQgKnRvcG8gPSBhcmct
Pm5ldC0+dG9wbzsKKyAgICBXMF9zaXplID0gKHRvcG9bMF0rMSkqdG9wb1sxXTsKKyAgICBXMV9z
aXplID0gKHRvcG9bMV0rMSkqdG9wb1syXTsKKyAgICBkb3VibGUgVzBfZ3JhZFtXMF9zaXplXTsK
KyAgICBkb3VibGUgVzFfZ3JhZFtXMV9zaXplXTsKKyAgICBhcmctPlcwX2dyYWQgPSBXMF9ncmFk
OworICAgIGFyZy0+VzFfZ3JhZCA9IFcxX2dyYWQ7CisgICAgd2hpbGUgKDEpCisgICAgeworICAg
ICAgICBzZW1fd2FpdCgmc2VtX2JlZ2luW2FyZy0+aWRdKTsKKyAgICAgICAgaWYgKGFyZy0+ZG9u
ZSkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBhcmctPnJtcyA9IGNvbXB1dGVfZ3JhZGll
bnQoYXJnLT5uZXQsIGFyZy0+aW5wdXRzLCBhcmctPm91dHB1dHMsIGFyZy0+bmJTYW1wbGVzLCBh
cmctPlcwX2dyYWQsIGFyZy0+VzFfZ3JhZCwgYXJnLT5lcnJvcl9yYXRlKTsKKyAgICAgICAgc2Vt
X3Bvc3QoJnNlbV9lbmRbYXJnLT5pZF0pOworICAgIH0KKyAgICBmcHJpbnRmKHN0ZGVyciwgImRv
bmVcbiIpOworICAgIHJldHVybiBOVUxMOworfQorCitmbG9hdCBtbHBfdHJhaW5fYmFja3Byb3Ao
TUxQVHJhaW4gKm5ldCwgZmxvYXQgKmlucHV0cywgZmxvYXQgKm91dHB1dHMsIGludCBuYlNhbXBs
ZXMsIGludCBuYkVwb2NoLCBmbG9hdCByYXRlKQoreworICAgIGludCBpLCBqOworICAgIGludCBl
OworICAgIGZsb2F0IGJlc3Rfcm1zID0gMWUxMDsKKyAgICBpbnQgaW5EaW0sIG91dERpbSwgaGlk
ZGVuRGltOworICAgIGludCAqdG9wbzsKKyAgICBkb3VibGUgKlcwLCAqVzEsICpiZXN0X1cwLCAq
YmVzdF9XMTsKKyAgICBkb3VibGUgKlcwX2dyYWQsICpXMV9ncmFkOworICAgIGRvdWJsZSAqVzBf
b2xkZ3JhZCwgKlcxX29sZGdyYWQ7CisgICAgZG91YmxlICpXMF9yYXRlLCAqVzFfcmF0ZTsKKyAg
ICBkb3VibGUgKmJlc3RfVzBfcmF0ZSwgKmJlc3RfVzFfcmF0ZTsKKyAgICBpbnQgVzBfc2l6ZSwg
VzFfc2l6ZTsKKyAgICB0b3BvID0gbmV0LT50b3BvOworICAgIFcwX3NpemUgPSAodG9wb1swXSsx
KSp0b3BvWzFdOworICAgIFcxX3NpemUgPSAodG9wb1sxXSsxKSp0b3BvWzJdOworICAgIHN0cnVj
dCBHcmFkaWVudEFyZyBhcmdzW05CX1RIUkVBRFNdOworICAgIHB0aHJlYWRfdCB0aHJlYWRbTkJf
VEhSRUFEU107CisgICAgaW50IHNhbXBsZVBlclBhcnQgPSBuYlNhbXBsZXMvTkJfVEhSRUFEUzsK
KyAgICBpbnQgY291bnRfd29yc2U9MDsKKyAgICBpbnQgY291bnRfcmV0cmllcz0wOworCisgICAg
dG9wbyA9IG5ldC0+dG9wbzsKKyAgICBpbkRpbSA9IG5ldC0+dG9wb1swXTsKKyAgICBoaWRkZW5E
aW0gPSBuZXQtPnRvcG9bMV07CisgICAgb3V0RGltID0gbmV0LT50b3BvWzJdOworICAgIFcwID0g
bmV0LT53ZWlnaHRzWzBdOworICAgIFcxID0gbmV0LT53ZWlnaHRzWzFdOworICAgIGJlc3RfVzAg
PSBuZXQtPmJlc3Rfd2VpZ2h0c1swXTsKKyAgICBiZXN0X1cxID0gbmV0LT5iZXN0X3dlaWdodHNb
MV07CisgICAgVzBfZ3JhZCA9IG1hbGxvYyhXMF9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBX
MV9ncmFkID0gbWFsbG9jKFcxX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIFcwX29sZGdyYWQg
PSBtYWxsb2MoVzBfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgVzFfb2xkZ3JhZCA9IG1hbGxv
YyhXMV9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBXMF9yYXRlID0gbWFsbG9jKFcwX3NpemUq
c2l6ZW9mKGRvdWJsZSkpOworICAgIFcxX3JhdGUgPSBtYWxsb2MoVzFfc2l6ZSpzaXplb2YoZG91
YmxlKSk7CisgICAgYmVzdF9XMF9yYXRlID0gbWFsbG9jKFcwX3NpemUqc2l6ZW9mKGRvdWJsZSkp
OworICAgIGJlc3RfVzFfcmF0ZSA9IG1hbGxvYyhXMV9zaXplKnNpemVvZihkb3VibGUpKTsKKyAg
ICBtZW1zZXQoVzBfZ3JhZCwgMCwgVzBfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisgICAgbWVtc2V0
KFcwX29sZGdyYWQsIDAsIFcwX3NpemUqc2l6ZW9mKGRvdWJsZSkpOworICAgIG1lbXNldChXMV9n
cmFkLCAwLCBXMV9zaXplKnNpemVvZihkb3VibGUpKTsKKyAgICBtZW1zZXQoVzFfb2xkZ3JhZCwg
MCwgVzFfc2l6ZSpzaXplb2YoZG91YmxlKSk7CisKKyAgICByYXRlIC89IG5iU2FtcGxlczsKKyAg
ICBmb3IgKGk9MDtpPGhpZGRlbkRpbTtpKyspCisgICAgICAgIGZvciAoaj0wO2o8aW5EaW0rMTtq
KyspCisgICAgICAgICAgICBXMF9yYXRlW2kqKGluRGltKzEpK2pdID0gcmF0ZSpuZXQtPmluX3Jh
dGVbal07CisgICAgZm9yIChpPTA7aTxXMV9zaXplO2krKykKKyAgICAgICAgVzFfcmF0ZVtpXSA9
IHJhdGU7CisKKyAgICBmb3IgKGk9MDtpPE5CX1RIUkVBRFM7aSsrKQorICAgIHsKKyAgICAgICAg
YXJnc1tpXS5uZXQgPSBuZXQ7CisgICAgICAgIGFyZ3NbaV0uaW5wdXRzID0gaW5wdXRzK2kqc2Ft
cGxlUGVyUGFydCppbkRpbTsKKyAgICAgICAgYXJnc1tpXS5vdXRwdXRzID0gb3V0cHV0cytpKnNh
bXBsZVBlclBhcnQqb3V0RGltOworICAgICAgICBhcmdzW2ldLm5iU2FtcGxlcyA9IHNhbXBsZVBl
clBhcnQ7CisgICAgICAgIGFyZ3NbaV0uaWQgPSBpOworICAgICAgICBhcmdzW2ldLmRvbmUgPSAw
OworICAgICAgICBzZW1faW5pdCgmc2VtX2JlZ2luW2ldLCAwLCAwKTsKKyAgICAgICAgc2VtX2lu
aXQoJnNlbV9lbmRbaV0sIDAsIDApOworICAgICAgICBwdGhyZWFkX2NyZWF0ZSgmdGhyZWFkW2ld
LCBOVUxMLCBncmFkaWVudF90aHJlYWRfcHJvY2VzcywgJmFyZ3NbaV0pOworICAgIH0KKyAgICBm
b3IgKGU9MDtlPG5iRXBvY2g7ZSsrKQorICAgIHsKKyAgICAgICAgZG91YmxlIHJtcz0wOworICAg
ICAgICBkb3VibGUgZXJyb3JfcmF0ZVsyXSA9IHswLDB9OworICAgICAgICBmb3IgKGk9MDtpPE5C
X1RIUkVBRFM7aSsrKQorICAgICAgICB7CisgICAgICAgICAgICBzZW1fcG9zdCgmc2VtX2JlZ2lu
W2ldKTsKKyAgICAgICAgfQorICAgICAgICBtZW1zZXQoVzBfZ3JhZCwgMCwgVzBfc2l6ZSpzaXpl
b2YoZG91YmxlKSk7CisgICAgICAgIG1lbXNldChXMV9ncmFkLCAwLCBXMV9zaXplKnNpemVvZihk
b3VibGUpKTsKKyAgICAgICAgZm9yIChpPTA7aTxOQl9USFJFQURTO2krKykKKyAgICAgICAgewor
ICAgICAgICAgICAgc2VtX3dhaXQoJnNlbV9lbmRbaV0pOworICAgICAgICAgICAgcm1zICs9IGFy
Z3NbaV0ucm1zOworICAgICAgICAgICAgZXJyb3JfcmF0ZVswXSArPSBhcmdzW2ldLmVycm9yX3Jh
dGVbMF07CisgICAgICAgICAgICBlcnJvcl9yYXRlWzFdICs9IGFyZ3NbaV0uZXJyb3JfcmF0ZVsx
XTsKKyAgICAgICAgICAgIGZvciAoaj0wO2o8VzBfc2l6ZTtqKyspCisgICAgICAgICAgICAgICAg
VzBfZ3JhZFtqXSArPSBhcmdzW2ldLlcwX2dyYWRbal07CisgICAgICAgICAgICBmb3IgKGo9MDtq
PFcxX3NpemU7aisrKQorICAgICAgICAgICAgICAgIFcxX2dyYWRbal0gKz0gYXJnc1tpXS5XMV9n
cmFkW2pdOworICAgICAgICB9CisKKyAgICAgICAgZmxvYXQgbWVhbl9yYXRlID0gMCwgbWluX3Jh
dGUgPSAxZTEwOworICAgICAgICBybXMgPSAocm1zLyhvdXREaW0qbmJTYW1wbGVzKSk7CisgICAg
ICAgIGVycm9yX3JhdGVbMF0gPSAoZXJyb3JfcmF0ZVswXS8obmJTYW1wbGVzKSk7CisgICAgICAg
IGVycm9yX3JhdGVbMV0gPSAoZXJyb3JfcmF0ZVsxXS8obmJTYW1wbGVzKSk7CisgICAgICAgIGZw
cmludGYgKHN0ZGVyciwgIiVmICVmICglZiAlZikgIiwgZXJyb3JfcmF0ZVswXSwgZXJyb3JfcmF0
ZVsxXSwgcm1zLCBiZXN0X3Jtcyk7CisgICAgICAgIGlmIChybXMgPCBiZXN0X3JtcykKKyAgICAg
ICAgeworICAgICAgICAgICAgYmVzdF9ybXMgPSBybXM7CisgICAgICAgICAgICBmb3IgKGk9MDtp
PFcwX3NpemU7aSsrKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGJlc3RfVzBbaV0g
PSBXMFtpXTsKKyAgICAgICAgICAgICAgICBiZXN0X1cwX3JhdGVbaV0gPSBXMF9yYXRlW2ldOwor
ICAgICAgICAgICAgfQorICAgICAgICAgICAgZm9yIChpPTA7aTxXMV9zaXplO2krKykKKyAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICBiZXN0X1cxW2ldID0gVzFbaV07CisgICAgICAgICAg
ICAgICAgYmVzdF9XMV9yYXRlW2ldID0gVzFfcmF0ZVtpXTsKKyAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIGNvdW50X3dvcnNlPTA7CisgICAgICAgICAgICBjb3VudF9yZXRyaWVzPTA7CisgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICBjb3VudF93b3JzZSsrOworICAgICAgICAgICAgaWYg
KGNvdW50X3dvcnNlPjMwKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGNvdW50X3Jl
dHJpZXMrKzsKKyAgICAgICAgICAgICAgICBjb3VudF93b3JzZT0wOworICAgICAgICAgICAgICAg
IGZvciAoaT0wO2k8VzBfc2l6ZTtpKyspCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICBXMFtpXSA9IGJlc3RfVzBbaV07CisgICAgICAgICAgICAgICAgICAgIGJlc3RfVzBf
cmF0ZVtpXSAqPSAuNzsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGJlc3RfVzBfcmF0ZVtpXTwx
ZS0xNSkgYmVzdF9XMF9yYXRlW2ldPTFlLTE1OworICAgICAgICAgICAgICAgICAgICBXMF9yYXRl
W2ldID0gYmVzdF9XMF9yYXRlW2ldOworICAgICAgICAgICAgICAgICAgICBXMF9ncmFkW2ldID0g
MDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZm9yIChpPTA7aTxXMV9zaXpl
O2krKykKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIFcxW2ldID0gYmVz
dF9XMVtpXTsKKyAgICAgICAgICAgICAgICAgICAgYmVzdF9XMV9yYXRlW2ldICo9IC44OworICAg
ICAgICAgICAgICAgICAgICBpZiAoYmVzdF9XMV9yYXRlW2ldPDFlLTE1KSBiZXN0X1cxX3JhdGVb
aV09MWUtMTU7CisgICAgICAgICAgICAgICAgICAgIFcxX3JhdGVbaV0gPSBiZXN0X1cxX3JhdGVb
aV07CisgICAgICAgICAgICAgICAgICAgIFcxX2dyYWRbaV0gPSAwOworICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBpZiAoY291bnRfcmV0cmllcz4x
MCkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBmb3IgKGk9MDtpPFcwX3NpemU7aSsrKQor
ICAgICAgICB7CisgICAgICAgICAgICBpZiAoVzBfb2xkZ3JhZFtpXSpXMF9ncmFkW2ldID4gMCkK
KyAgICAgICAgICAgICAgICBXMF9yYXRlW2ldICo9IDEuMDE7CisgICAgICAgICAgICBlbHNlIGlm
IChXMF9vbGRncmFkW2ldKlcwX2dyYWRbaV0gPCAwKQorICAgICAgICAgICAgICAgIFcwX3JhdGVb
aV0gKj0gLjk7CisgICAgICAgICAgICBtZWFuX3JhdGUgKz0gVzBfcmF0ZVtpXTsKKyAgICAgICAg
ICAgIGlmIChXMF9yYXRlW2ldIDwgbWluX3JhdGUpCisgICAgICAgICAgICAgICAgbWluX3JhdGUg
PSBXMF9yYXRlW2ldOworICAgICAgICAgICAgaWYgKFcwX3JhdGVbaV0gPCAxZS0xNSkKKyAgICAg
ICAgICAgICAgICBXMF9yYXRlW2ldID0gMWUtMTU7CisgICAgICAgICAgICAvKmlmIChXMF9yYXRl
W2ldID4gLjAxKQorICAgICAgICAgICAgICAgIFcwX3JhdGVbaV0gPSAuMDE7Ki8KKyAgICAgICAg
ICAgIFcwX29sZGdyYWRbaV0gPSBXMF9ncmFkW2ldOworICAgICAgICAgICAgVzBbaV0gKz0gVzBf
Z3JhZFtpXSpXMF9yYXRlW2ldOworICAgICAgICB9CisgICAgICAgIGZvciAoaT0wO2k8VzFfc2l6
ZTtpKyspCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmIChXMV9vbGRncmFkW2ldKlcxX2dyYWRb
aV0gPiAwKQorICAgICAgICAgICAgICAgIFcxX3JhdGVbaV0gKj0gMS4wMTsKKyAgICAgICAgICAg
IGVsc2UgaWYgKFcxX29sZGdyYWRbaV0qVzFfZ3JhZFtpXSA8IDApCisgICAgICAgICAgICAgICAg
VzFfcmF0ZVtpXSAqPSAuOTsKKyAgICAgICAgICAgIG1lYW5fcmF0ZSArPSBXMV9yYXRlW2ldOwor
ICAgICAgICAgICAgaWYgKFcxX3JhdGVbaV0gPCBtaW5fcmF0ZSkKKyAgICAgICAgICAgICAgICBt
aW5fcmF0ZSA9IFcxX3JhdGVbaV07CisgICAgICAgICAgICBpZiAoVzFfcmF0ZVtpXSA8IDFlLTE1
KQorICAgICAgICAgICAgICAgIFcxX3JhdGVbaV0gPSAxZS0xNTsKKyAgICAgICAgICAgIFcxX29s
ZGdyYWRbaV0gPSBXMV9ncmFkW2ldOworICAgICAgICAgICAgVzFbaV0gKz0gVzFfZ3JhZFtpXSpX
MV9yYXRlW2ldOworICAgICAgICB9CisgICAgICAgIG1lYW5fcmF0ZSAvPSAodG9wb1swXSsxKSp0
b3BvWzFdICsgKHRvcG9bMV0rMSkqdG9wb1syXTsKKyAgICAgICAgZnByaW50ZiAoc3RkZXJyLCAi
JWcgJWQiLCBtZWFuX3JhdGUsIGUpOworICAgICAgICBpZiAoY291bnRfcmV0cmllcykKKyAgICAg
ICAgICAgIGZwcmludGYoc3RkZXJyLCAiICVkIiwgY291bnRfcmV0cmllcyk7CisgICAgICAgIGZw
cmludGYoc3RkZXJyLCAiXG4iKTsKKyAgICAgICAgaWYgKHN0b3BwZWQpCisgICAgICAgICAgICBi
cmVhazsKKyAgICB9CisgICAgZm9yIChpPTA7aTxOQl9USFJFQURTO2krKykKKyAgICB7CisgICAg
ICAgIGFyZ3NbaV0uZG9uZSA9IDE7CisgICAgICAgIHNlbV9wb3N0KCZzZW1fYmVnaW5baV0pOwor
ICAgICAgICBwdGhyZWFkX2pvaW4odGhyZWFkW2ldLCBOVUxMKTsKKyAgICAgICAgZnByaW50ZiAo
c3RkZXJyLCAiam9pbmVkICVkXG4iLCBpKTsKKyAgICB9CisgICAgZnJlZShXMF9ncmFkKTsKKyAg
ICBmcmVlKFcwX29sZGdyYWQpOworICAgIGZyZWUoVzFfZ3JhZCk7CisgICAgZnJlZShXMV9vbGRn
cmFkKTsKKyAgICBmcmVlKFcwX3JhdGUpOworICAgIGZyZWUoYmVzdF9XMF9yYXRlKTsKKyAgICBm
cmVlKFcxX3JhdGUpOworICAgIGZyZWUoYmVzdF9XMV9yYXRlKTsKKyAgICByZXR1cm4gYmVzdF9y
bXM7Cit9CisKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKK3sKKyAgICBpbnQgaSwg
ajsKKyAgICBpbnQgbmJJbnB1dHM7CisgICAgaW50IG5iT3V0cHV0czsKKyAgICBpbnQgbmJIaWRk
ZW47CisgICAgaW50IG5iU2FtcGxlczsKKyAgICBpbnQgbmJFcG9jaDsKKyAgICBpbnQgbmJSZWFs
SW5wdXRzOworICAgIHVuc2lnbmVkIGludCBzZWVkOworICAgIGludCByZXQ7CisgICAgZmxvYXQg
cm1zOworICAgIGZsb2F0ICppbnB1dHM7CisgICAgZmxvYXQgKm91dHB1dHM7CisgICAgaWYgKGFy
Z2MhPTYpCisgICAgeworICAgICAgICBmcHJpbnRmIChzdGRlcnIsICJ1c2FnZTogbWxwX3RyYWlu
IDxpbnB1dHM+IDxoaWRkZW4+IDxvdXRwdXRzPiA8bmIgc2FtcGxlcz4gPG5iIGVwb2NoPlxuIik7
CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgICBuYklucHV0cyA9IGF0b2koYXJndlsxXSk7
CisgICAgbmJIaWRkZW4gPSBhdG9pKGFyZ3ZbMl0pOworICAgIG5iT3V0cHV0cyA9IGF0b2koYXJn
dlszXSk7CisgICAgbmJTYW1wbGVzID0gYXRvaShhcmd2WzRdKTsKKyAgICBuYkVwb2NoID0gYXRv
aShhcmd2WzVdKTsKKyAgICBuYlJlYWxJbnB1dHMgPSBuYklucHV0czsKKyAgICBpbnB1dHMgPSBt
YWxsb2MobmJJbnB1dHMqbmJTYW1wbGVzKnNpemVvZigqaW5wdXRzKSk7CisgICAgb3V0cHV0cyA9
IG1hbGxvYyhuYk91dHB1dHMqbmJTYW1wbGVzKnNpemVvZigqb3V0cHV0cykpOworCisgICAgc2Vl
ZCA9IHRpbWUoTlVMTCk7CisgICAgLypzZWVkID0gMTQ1MjIwOTA0MDsqLworICAgIGZwcmludGYg
KHN0ZGVyciwgIlNlZWQgaXMgJXVcbiIsIHNlZWQpOworICAgIHNyYW5kKHNlZWQpOworICAgIGJ1
aWxkX3RhbnNpZ190YWJsZSgpOworICAgIHNpZ25hbChTSUdURVJNLCBoYW5kbGVyKTsKKyAgICBz
aWduYWwoU0lHSU5ULCBoYW5kbGVyKTsKKyAgICBzaWduYWwoU0lHSFVQLCBoYW5kbGVyKTsKKyAg
ICBmb3IgKGk9MDtpPG5iU2FtcGxlcztpKyspCisgICAgeworICAgICAgICBmb3IgKGo9MDtqPG5i
UmVhbElucHV0cztqKyspCisgICAgICAgICAgICByZXQgPSBzY2FuZigiICVmIiwgJmlucHV0c1tp
Km5iSW5wdXRzK2pdKTsKKyAgICAgICAgZm9yIChqPTA7ajxuYk91dHB1dHM7aisrKQorICAgICAg
ICAgICAgcmV0ID0gc2NhbmYoIiAlZiIsICZvdXRwdXRzW2kqbmJPdXRwdXRzK2pdKTsKKyAgICAg
ICAgaWYgKGZlb2Yoc3RkaW4pKQorICAgICAgICB7CisgICAgICAgICAgICBuYlNhbXBsZXMgPSBp
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisgICAgaW50IHRvcG9bM10g
PSB7bmJJbnB1dHMsIG5iSGlkZGVuLCBuYk91dHB1dHN9OworICAgIE1MUFRyYWluICpuZXQ7CisK
KyAgICBmcHJpbnRmIChzdGRlcnIsICJHb3QgJWQgc2FtcGxlc1xuIiwgbmJTYW1wbGVzKTsKKyAg
ICBuZXQgPSBtbHBfaW5pdCh0b3BvLCAzLCBpbnB1dHMsIG91dHB1dHMsIG5iU2FtcGxlcyk7Cisg
ICAgcm1zID0gbWxwX3RyYWluX2JhY2twcm9wKG5ldCwgaW5wdXRzLCBvdXRwdXRzLCBuYlNhbXBs
ZXMsIG5iRXBvY2gsIDEpOworICAgIHByaW50ZiAoIiNpZmRlZiBIQVZFX0NPTkZJR19IXG4iKTsK
KyAgICBwcmludGYgKCIjaW5jbHVkZSBcImNvbmZpZy5oXCJcbiIpOworICAgIHByaW50ZiAoIiNl
bmRpZlxuXG4iKTsKKyAgICBwcmludGYgKCIjaW5jbHVkZSBcIm1scC5oXCJcblxuIik7CisgICAg
cHJpbnRmICgiLyogUk1TIGVycm9yIHdhcyAlZiwgc2VlZCB3YXMgJXUgKi9cblxuIiwgcm1zLCBz
ZWVkKTsKKyAgICBwcmludGYgKCJzdGF0aWMgY29uc3QgZmxvYXQgd2VpZ2h0c1slZF0gPSB7XG4i
LCAodG9wb1swXSsxKSp0b3BvWzFdICsgKHRvcG9bMV0rMSkqdG9wb1syXSk7CisgICAgcHJpbnRm
ICgiXG4vKiBoaWRkZW4gbGF5ZXIgKi9cbiIpOworICAgIGZvciAoaT0wO2k8KHRvcG9bMF0rMSkq
dG9wb1sxXTtpKyspCisgICAgeworICAgICAgICBwcmludGYgKCIlZ2YsIiwgbmV0LT53ZWlnaHRz
WzBdW2ldKTsKKyAgICAgICAgaWYgKGklNT09NCkKKyAgICAgICAgICAgIHByaW50ZigiXG4iKTsK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgcHJpbnRmKCIgIik7CisgICAgfQorICAgIHByaW50
ZiAoIlxuLyogb3V0cHV0IGxheWVyICovXG4iKTsKKyAgICBmb3IgKGk9MDtpPCh0b3BvWzFdKzEp
KnRvcG9bMl07aSsrKQorICAgIHsKKyAgICAgICAgcHJpbnRmICgiJWdmLCIsIG5ldC0+d2VpZ2h0
c1sxXVtpXSk7CisgICAgICAgIGlmIChpJTU9PTQpCisgICAgICAgICAgICBwcmludGYoIlxuIik7
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHByaW50ZigiICIpOworICAgIH0KKyAgICBwcmlu
dGYgKCJ9O1xuXG4iKTsKKyAgICBwcmludGYgKCJzdGF0aWMgY29uc3QgaW50IHRvcG9bM10gPSB7
JWQsICVkLCAlZH07XG5cbiIsIHRvcG9bMF0sIHRvcG9bMV0sIHRvcG9bMl0pOworICAgIHByaW50
ZiAoImNvbnN0IE1MUCBuZXQgPSB7XG4iKTsKKyAgICBwcmludGYgKCIgICAgMyxcbiIpOworICAg
IHByaW50ZiAoIiAgICB0b3BvLFxuIik7CisgICAgcHJpbnRmICgiICAgIHdlaWdodHNcbn07XG4i
KTsKKyAgICByZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL21scF90cmFpbi5oIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvbWxw
X3RyYWluLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDk0MDQxNTg1YTNmOWNiNjQzMzQ4YTk5MjE0NWFiY2UwNmZl
N2ViZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL21scF90cmFpbi5oCkBAIC0wLDAgKzEsODYgQEAK
Ky8qIENvcHlyaWdodCAoYykgMjAwOC0yMDExIE9jdGFzaWMgSW5jLgorICAgV3JpdHRlbiBieSBK
ZWFuLU1hcmMgVmFsaW4gKi8KKy8qCisgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAgIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICAgYXJl
IG1ldDoKKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAtIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgICBgYEFTIElTJycgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgICBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKKyAgIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIEZPVU5EQVRJT04gT1IKKyAgIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICAgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICAgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCisgICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GCisgICBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORwor
ICAgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTCisgICBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpZm5kZWYgX01MUF9UUkFJTl9IXworI2RlZmlu
ZSBfTUxQX1RSQUlOX0hfCisKKyNpbmNsdWRlIDxtYXRoLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+
CisKK2RvdWJsZSB0YW5zaWdfdGFibGVbNTAxXTsKK3N0YXRpYyBpbmxpbmUgZG91YmxlIHRhbnNp
Z19kb3VibGUoZG91YmxlIHgpCit7CisgICAgcmV0dXJuIDIuLygxLitleHAoLTIuKngpKSAtIDEu
OworfQorc3RhdGljIGlubGluZSB2b2lkIGJ1aWxkX3RhbnNpZ190YWJsZSh2b2lkKQoreworICAg
IGludCBpOworICAgIGZvciAoaT0wO2k8NTAxO2krKykKKyAgICAgICAgdGFuc2lnX3RhYmxlW2ld
ID0gdGFuc2lnX2RvdWJsZSguMDQqKGktMjUwKSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgZG91Ymxl
IHRhbnNpZ19hcHByb3goZG91YmxlIHgpCit7CisgICAgaW50IGk7CisgICAgZG91YmxlIHksIGR5
OworICAgIGlmICh4Pj0xMCkKKyAgICAgICAgcmV0dXJuIDE7CisgICAgaWYgKHg8PS0xMCkKKyAg
ICAgICAgcmV0dXJuIC0xOworICAgIGkgPSBscmludCgyNSp4KTsKKyAgICB4IC09IC4wNCppOwor
ICAgIHkgPSB0YW5zaWdfdGFibGVbMjUwK2ldOworICAgIGR5ID0gMS15Knk7CisgICAgeSA9IHkg
KyB4KmR5KigxIC0geSp4KTsKKyAgICByZXR1cm4geTsKK30KKworc3RhdGljIGlubGluZSBmbG9h
dCByYW5kbihmbG9hdCBzZCkKK3sKKyAgIGZsb2F0IFUxLCBVMiwgUywgeDsKKyAgIGRvIHsKKyAg
ICAgIFUxID0gKChmbG9hdClyYW5kKCkpL1JBTkRfTUFYOworICAgICAgVTIgPSAoKGZsb2F0KXJh
bmQoKSkvUkFORF9NQVg7CisgICAgICBVMSA9IDIqVTEtMTsKKyAgICAgIFUyID0gMipVMi0xOwor
ICAgICAgUyA9IFUxKlUxICsgVTIqVTI7CisgICB9IHdoaWxlIChTID49IDEgfHwgUyA9PSAwLjBm
KTsKKyAgIHggPSBzZCpzcXJ0KC0yICogbG9nKFMpIC8gUykgKiBVMTsKKyAgIHJldHVybiB4Owor
fQorCisKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBpbnQgbGF5ZXJzOworICAgIGludCAqdG9wbzsK
KyAgICBkb3VibGUgKip3ZWlnaHRzOworICAgIGRvdWJsZSAqKmJlc3Rfd2VpZ2h0czsKKyAgICBk
b3VibGUgKmluX3JhdGU7Cit9IE1MUFRyYWluOworCisKKyNlbmRpZiAvKiBfTUxQX1RSQUlOX0hf
ICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzLmMKaW5kZXggZjc2ZjEyNWNmYTMw
MDQyNjc5OGVjMmMyYTFhOGM0YTkzNDIwNGQ1OC4uY2RiZDEzYTExY2Q3OGQ0NzBhOTgxNTRmYzFl
YTFlOGE2YzNkY2VmMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1cy5jCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXMuYwpAQCAt
MTA3LDcgKzEwNyw3IEBAIE9QVVNfRVhQT1JUIHZvaWQgb3B1c19wY21fc29mdF9jbGlwKGZsb2F0
ICpfeCwgaW50IE4sIGludCBDLCBmbG9hdCAqZGVjbGlwX21lbSkKICAgICAgICAgIC8qIFNsaWdo
dGx5IGJvb3N0ICJhIiBieSAyXi0yMi4gVGhpcyBpcyBqdXN0IGVub3VnaCB0byBlbnN1cmUgLWZm
YXN0LW1hdGgKICAgICAgICAgICAgIGRvZXMgbm90IGNhdXNlIG91dHB1dCB2YWx1ZXMgbGFyZ2Vy
IHRoYW4gKy8tMSwgYnV0IHNtYWxsIGVub3VnaCBub3QKICAgICAgICAgICAgIHRvIG1hdHRlciBl
dmVuIGZvciAyNC1iaXQgb3V0cHV0LiAgKi8KLSAgICAgICAgIGEgKz0gYSoyLjRlLTc7CisgICAg
ICAgICBhICs9IGEqMi40ZS03ZjsKICAgICAgICAgIGlmICh4W2kqQ10+MCkKICAgICAgICAgICAg
IGEgPSAtYTsKICAgICAgICAgIC8qIEFwcGx5IHNvZnQgY2xpcHBpbmcgKi8KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMv
c3JjL29wdXNfY29tcGFyZS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19jb21wYXJlLmMKaW5kZXggNjY4MjhmZDhjYWVm
NmM4ZjdjYzkwZjg3ZTM3OWUyY2ZiMDdkMGNlOC4uMTk1NmUwOGZhNWNlZTBlOWI4N2U1ZjJhYjUy
MTdlMjRlYWM5OGQ1MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19jb21wYXJlLmMKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1
c19jb21wYXJlLmMKQEAgLTIzOCwxNSArMjM4LDExIEBAIGludCBtYWluKGludCBfYXJnYyxjb25z
dCBjaGFyICoqX2FyZ3YpewogICBpZih4bGVuZ3RoIT15bGVuZ3RoKmRvd25zYW1wbGUpewogICAg
IGZwcmludGYoc3RkZXJyLCJTYW1wbGUgY291bnRzIGRvIG5vdCBtYXRjaCAoJWx1IT0lbHUpLlxu
IiwKICAgICAgKHVuc2lnbmVkIGxvbmcpeGxlbmd0aCwodW5zaWduZWQgbG9uZyl5bGVuZ3RoKmRv
d25zYW1wbGUpOwotICAgIGZyZWUoeCk7Ci0gICAgZnJlZSh5KTsKICAgICByZXR1cm4gRVhJVF9G
QUlMVVJFOwogICB9CiAgIGlmKHhsZW5ndGg8VEVTVF9XSU5fU0laRSl7CiAgICAgZnByaW50Zihz
dGRlcnIsIkluc3VmZmljaWVudCBzYW1wbGUgZGF0YSAoJWx1PCVpKS5cbiIsCiAgICAgICh1bnNp
Z25lZCBsb25nKXhsZW5ndGgsVEVTVF9XSU5fU0laRSk7Ci0gICAgZnJlZSh4KTsKLSAgICBmcmVl
KHkpOwogICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAgIH0KICAgbmZyYW1lcz0oeGxlbmd0aC1U
RVNUX1dJTl9TSVpFK1RFU1RfV0lOX1NURVApL1RFU1RfV0lOX1NURVA7CkBAIC0zNjcsNiArMzYz
LDkgQEAgaW50IG1haW4oaW50IF9hcmdjLGNvbnN0IGNoYXIgKipfYXJndil7CiAgICAgRWYqPUVm
OwogICAgIGVycis9RWYqRWY7CiAgIH0KKyAgZnJlZSh4Yik7CisgIGZyZWUoWCk7CisgIGZyZWUo
WSk7CiAgIGVycj1wb3coZXJyL25mcmFtZXMsMS4wLzE2KTsKICAgUT0xMDAqKDEtMC41KmxvZygx
K2VycikvbG9nKDEuMTMpKTsKICAgaWYoUTwwKXsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfZGVjb2Rl
ci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zcmMvb3B1c19kZWNvZGVyLmMKaW5kZXggOWEwODk2YjU1MGQzNDY1MTgxNGU0YmRlMmZk
MzQ3OTIxYTU4YzE2Zi4uMTQ5YWU3ZjIxZDhiYjQxNjdmY2M5MjYyZDMyZDQzOTNiMzE5ZjQ2MCAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9vcHVzL3NyYy9zcmMvb3B1c19kZWNvZGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19kZWNvZGVyLmMKQEAg
LTMzLDcgKzMzLDcgQEAKICMgZXJyb3IgIk9QVVNfQlVJTEQgX01VU1RfIGJlIGRlZmluZWQgdG8g
YnVpbGQgT3B1cy4gVGhpcyBwcm9iYWJseSBtZWFucyB5b3UgbmVlZCBvdGhlciBkZWZpbmVzIGFz
IHdlbGwsIGFzIGluIGEgY29uZmlnLmguIFNlZSB0aGUgaW5jbHVkZWQgYnVpbGQgZmlsZXMgZm9y
IGRldGFpbHMuIgogI2VuZGlmCiAKLSNpZiBkZWZpbmVkKF9fR05VQ19fKSAmJiAoX19HTlVDX18g
Pj0gMikgJiYgIWRlZmluZWQoX19PUFRJTUlaRV9fKSAmJiAhZGVmaW5lZChPUFVTX1dJTExfQkVf
U0xPVykgJiYgZGVmaW5lZChOREVCVUcpCisjaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgKF9fR05V
Q19fID49IDIpICYmICFkZWZpbmVkKF9fT1BUSU1JWkVfXykgJiYgIWRlZmluZWQoT1BVU19XSUxM
X0JFX1NMT1cpCiAjIHByYWdtYSBtZXNzYWdlICJZb3UgYXBwZWFyIHRvIGJlIGNvbXBpbGluZyB3
aXRob3V0IG9wdGltaXphdGlvbiwgaWYgc28gb3B1cyB3aWxsIGJlIHZlcnkgc2xvdy4iCiAjZW5k
aWYKIApAQCAtODkxLDcgKzg5MSw3IEBAIGludCBvcHVzX2RlY29kZXJfY3RsKE9wdXNEZWNvZGVy
ICpzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgIGJyZWFrOwogICAgY2FzZSBPUFVTX0dFVF9MQVNU
X1BBQ0tFVF9EVVJBVElPTl9SRVFVRVNUOgogICAgewotICAgICAgb3B1c191aW50MzIgKnZhbHVl
ID0gdmFfYXJnKGFwLCBvcHVzX3VpbnQzMiopOworICAgICAgb3B1c19pbnQzMiAqdmFsdWUgPSB2
YV9hcmcoYXAsIG9wdXNfaW50MzIqKTsKICAgICAgIGlmICghdmFsdWUpCiAgICAgICB7CiAgICAg
ICAgICBnb3RvIGJhZF9hcmc7CkBAIC04OTksNiArODk5LDI2IEBAIGludCBvcHVzX2RlY29kZXJf
Y3RsKE9wdXNEZWNvZGVyICpzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICp2YWx1ZSA9IHN0
LT5sYXN0X3BhY2tldF9kdXJhdGlvbjsKICAgIH0KICAgIGJyZWFrOworICAgY2FzZSBPUFVTX1NF
VF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgIHsKKyAgICAgICBvcHVzX2lu
dDMyIHZhbHVlID0gdmFfYXJnKGFwLCBvcHVzX2ludDMyKTsKKyAgICAgICBpZih2YWx1ZTwwIHx8
IHZhbHVlPjEpCisgICAgICAgeworICAgICAgICAgIGdvdG8gYmFkX2FyZzsKKyAgICAgICB9Cisg
ICAgICAgY2VsdF9kZWNvZGVyX2N0bChjZWx0X2RlYywgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9O
X0RJU0FCTEVEKHZhbHVlKSk7CisgICB9CisgICBicmVhazsKKyAgIGNhc2UgT1BVU19HRVRfUEhB
U0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1Q6CisgICB7CisgICAgICAgb3B1c19pbnQzMiAq
dmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50MzIqKTsKKyAgICAgICBpZiAoIXZhbHVlKQorICAg
ICAgIHsKKyAgICAgICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAgfQorICAgICAgIGNlbHRfZGVj
b2Rlcl9jdGwoY2VsdF9kZWMsIE9QVVNfR0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCh2YWx1
ZSkpOworICAgfQorICAgYnJlYWs7CiAgICBkZWZhdWx0OgogICAgICAgLypmcHJpbnRmKHN0ZGVy
ciwgInVua25vd24gb3B1c19kZWNvZGVyX2N0bCgpIHJlcXVlc3Q6ICVkIiwgcmVxdWVzdCk7Ki8K
ICAgICAgIHJldCA9IE9QVVNfVU5JTVBMRU1FTlRFRDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfZGVt
by5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zcmMvb3B1c19kZW1vLmMKaW5kZXggNjk4OGE4Y2IxNWQ2ZTYwOGY1ODY1Mjc3MTc4ZTFj
MDRjNjk2MWQ0Yi4uNTA5ODdjOTZmMjY1ZjYwNjA3NjJmOWMwNGU2Mjg3Y2I5YjVhYWI2YiAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zcmMvb3B1c19kZW1vLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19kZW1vLmMKQEAgLTU0LDkgKzU0
LDkgQEAgdm9pZCBwcmludF91c2FnZSggY2hhciogYXJndltdICkKICAgICBmcHJpbnRmKHN0ZGVy
ciwgIi1kICAgICAgICAgICAgICAgICAgIDogb25seSBydW5zIHRoZSBkZWNvZGVyIChyZWFkcyB0
aGUgYml0LXN0cmVhbSBhcyBpbnB1dClcbiIgKTsKICAgICBmcHJpbnRmKHN0ZGVyciwgIi1jYnIg
ICAgICAgICAgICAgICAgIDogZW5hYmxlIGNvbnN0YW50IGJpdHJhdGU7IGRlZmF1bHQ6IHZhcmlh
YmxlIGJpdHJhdGVcbiIgKTsKICAgICBmcHJpbnRmKHN0ZGVyciwgIi1jdmJyICAgICAgICAgICAg
ICAgIDogZW5hYmxlIGNvbnN0cmFpbmVkIHZhcmlhYmxlIGJpdHJhdGU7IGRlZmF1bHQ6IHVuY29u
c3RyYWluZWRcbiIgKTsKLSAgICBmcHJpbnRmKHN0ZGVyciwgIi12YXJpYWJsZS1kdXJhdGlvbiAg
IDogZW5hYmxlIGZyYW1lcyBvZiB2YXJpYWJsZSBkdXJhdGlvbiAoZXhwZXJ0cyBvbmx5KTsgZGVm
YXVsdDogZGlzYWJsZWRcbiIgKTsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIi1kZWxheWVkLWRlY2lz
aW9uICAgIDogdXNlIGxvb2stYWhlYWQgZm9yIHNwZWVjaC9tdXNpYyBkZXRlY3Rpb24gKGV4cGVy
dHMgb25seSk7IGRlZmF1bHQ6IGRpc2FibGVkXG4iICk7CiAgICAgZnByaW50ZihzdGRlcnIsICIt
YmFuZHdpZHRoIDxOQnxNQnxXQnxTV0J8RkI+IDogYXVkaW8gYmFuZHdpZHRoIChmcm9tIG5hcnJv
d2JhbmQgdG8gZnVsbGJhbmQpOyBkZWZhdWx0OiBzYW1wbGluZyByYXRlXG4iICk7Ci0gICAgZnBy
aW50ZihzdGRlcnIsICItZnJhbWVzaXplIDwyLjV8NXwxMHwyMHw0MHw2MD4gOiBmcmFtZSBzaXpl
IGluIG1zOyBkZWZhdWx0OiAyMCBcbiIgKTsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIi1mcmFtZXNp
emUgPDIuNXw1fDEwfDIwfDQwfDYwfDgwfDEwMHwxMjA+IDogZnJhbWUgc2l6ZSBpbiBtczsgZGVm
YXVsdDogMjAgXG4iICk7CiAgICAgZnByaW50ZihzdGRlcnIsICItbWF4X3BheWxvYWQgPGJ5dGVz
PiA6IG1heGltdW0gcGF5bG9hZCBzaXplIGluIGJ5dGVzLCBkZWZhdWx0OiAxMDI0XG4iICk7CiAg
ICAgZnByaW50ZihzdGRlcnIsICItY29tcGxleGl0eSA8Y29tcD4gICA6IGNvbXBsZXhpdHksIDAg
KGxvd2VzdCkgLi4uIDEwIChoaWdoZXN0KTsgZGVmYXVsdDogMTBcbiIgKTsKICAgICBmcHJpbnRm
KHN0ZGVyciwgIi1pbmJhbmRmZWMgICAgICAgICAgIDogZW5hYmxlIFNJTEsgaW5iYW5kIEZFQ1xu
IiApOwpAQCAtMjUzLDYgKzI1Myw3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10p
CiAgICAgb3B1c191aW50MzIgZGVjX2ZpbmFsX3JhbmdlOwogICAgIGludCBlbmNvZGVfb25seT0w
LCBkZWNvZGVfb25seT0wOwogICAgIGludCBtYXhfZnJhbWVfc2l6ZSA9IDQ4MDAwKjI7CisgICAg
c2l6ZV90IG51bV9yZWFkOwogICAgIGludCBjdXJyX3JlYWQ9MDsKICAgICBpbnQgc3dlZXBfYnBz
ID0gMDsKICAgICBpbnQgcmFuZG9tX2ZyYW1lc2l6ZT0wLCBuZXdzaXplPTAsIGRlbGF5ZWRfY2Vs
dD0wOwpAQCAtMzgyLDkgKzM4MywxNSBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltd
KQogICAgICAgICAgICAgICAgIGZyYW1lX3NpemUgPSBzYW1wbGluZ19yYXRlLzI1OwogICAgICAg
ICAgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbIGFyZ3MgKyAxIF0sICI2MCIpPT0wKQogICAgICAg
ICAgICAgICAgIGZyYW1lX3NpemUgPSAzKnNhbXBsaW5nX3JhdGUvNTA7CisgICAgICAgICAgICBl
bHNlIGlmIChzdHJjbXAoYXJndlsgYXJncyArIDEgXSwgIjgwIik9PTApCisgICAgICAgICAgICAg
ICAgZnJhbWVfc2l6ZSA9IDQqc2FtcGxpbmdfcmF0ZS81MDsKKyAgICAgICAgICAgIGVsc2UgaWYg
KHN0cmNtcChhcmd2WyBhcmdzICsgMSBdLCAiMTAwIik9PTApCisgICAgICAgICAgICAgICAgZnJh
bWVfc2l6ZSA9IDUqc2FtcGxpbmdfcmF0ZS81MDsKKyAgICAgICAgICAgIGVsc2UgaWYgKHN0cmNt
cChhcmd2WyBhcmdzICsgMSBdLCAiMTIwIik9PTApCisgICAgICAgICAgICAgICAgZnJhbWVfc2l6
ZSA9IDYqc2FtcGxpbmdfcmF0ZS81MDsKICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAg
ICAgIGZwcmludGYoc3RkZXJyLCAiVW5zdXBwb3J0ZWQgZnJhbWUgc2l6ZTogJXMgbXMuICIKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlN1cHBvcnRlZCBhcmUgMi41LCA1LCAxMCwg
MjAsIDQwLCA2MC5cbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTdXBwb3J0
ZWQgYXJlIDIuNSwgNSwgMTAsIDIwLCA0MCwgNjAsIDgwLCAxMDAsIDEyMC5cbiIsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3ZbIGFyZ3MgKyAxIF0pOwogICAgICAgICAgICAg
ICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAgICAgICAgICAgICB9CkBAIC00MDgsMTAgKzQxNSw2
IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICBjaGVja19l
bmNvZGVyX29wdGlvbihkZWNvZGVfb25seSwgIi1jdmJyIik7CiAgICAgICAgICAgICBjdmJyID0g
MTsKICAgICAgICAgICAgIGFyZ3MrKzsKLSAgICAgICAgfSBlbHNlIGlmKCBzdHJjbXAoIGFyZ3Zb
IGFyZ3MgXSwgIi12YXJpYWJsZS1kdXJhdGlvbiIgKSA9PSAwICkgewotICAgICAgICAgICAgY2hl
Y2tfZW5jb2Rlcl9vcHRpb24oZGVjb2RlX29ubHksICItdmFyaWFibGUtZHVyYXRpb24iKTsKLSAg
ICAgICAgICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfVkFSSUFCTEU7Ci0g
ICAgICAgICAgICBhcmdzKys7CiAgICAgICAgIH0gZWxzZSBpZiggc3RyY21wKCBhcmd2WyBhcmdz
IF0sICItZGVsYXllZC1kZWNpc2lvbiIgKSA9PSAwICkgewogICAgICAgICAgICAgY2hlY2tfZW5j
b2Rlcl9vcHRpb24oZGVjb2RlX29ubHksICItZGVsYXllZC1kZWNpc2lvbiIpOwogICAgICAgICAg
ICAgZGVsYXllZF9kZWNpc2lvbiA9IDE7CkBAIC01OTksMjIgKzYwMiwyNSBAQCBpbnQgbWFpbihp
bnQgYXJnYywgY2hhciAqYXJndltdKQogICAgIH0KICAgICBpZihkZWxheWVkX2RlY2lzaW9uKQog
ICAgIHsKLSAgICAgICBpZiAodmFyaWFibGVfZHVyYXRpb24hPU9QVVNfRlJBTUVTSVpFX1ZBUklB
QkxFKQotICAgICAgIHsKLSAgICAgICAgICBpZiAoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS80
MDApCi0gICAgICAgICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV8yXzVf
TVM7Ci0gICAgICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS8yMDApCi0g
ICAgICAgICAgICAgdmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV81X01TOwotICAg
ICAgICAgIGVsc2UgaWYgKGZyYW1lX3NpemU9PXNhbXBsaW5nX3JhdGUvMTAwKQotICAgICAgICAg
ICAgIHZhcmlhYmxlX2R1cmF0aW9uID0gT1BVU19GUkFNRVNJWkVfMTBfTVM7Ci0gICAgICAgICAg
ZWxzZSBpZiAoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS81MCkKLSAgICAgICAgICAgICB2YXJp
YWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzIwX01TOwotICAgICAgICAgIGVsc2UgaWYg
KGZyYW1lX3NpemU9PXNhbXBsaW5nX3JhdGUvMjUpCi0gICAgICAgICAgICAgdmFyaWFibGVfZHVy
YXRpb24gPSBPUFVTX0ZSQU1FU0laRV80MF9NUzsKLSAgICAgICAgICBlbHNlCi0gICAgICAgICAg
ICAgdmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV82MF9NUzsKLSAgICAgICAgICBv
cHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKHZhcmlh
YmxlX2R1cmF0aW9uKSk7Ci0gICAgICAgfQorICAgICAgIGlmIChmcmFtZV9zaXplPT1zYW1wbGlu
Z19yYXRlLzQwMCkKKyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpF
XzJfNV9NUzsKKyAgICAgICBlbHNlIGlmIChmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzIwMCkK
KyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzVfTVM7CisgICAg
ICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS8xMDApCisgICAgICAgICAgdmFy
aWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV8xMF9NUzsKKyAgICAgICBlbHNlIGlmIChm
cmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzUwKQorICAgICAgICAgIHZhcmlhYmxlX2R1cmF0aW9u
ID0gT1BVU19GUkFNRVNJWkVfMjBfTVM7CisgICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZT09c2Ft
cGxpbmdfcmF0ZS8yNSkKKyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVT
SVpFXzQwX01TOworICAgICAgIGVsc2UgaWYgKGZyYW1lX3NpemU9PTMqc2FtcGxpbmdfcmF0ZS81
MCkKKyAgICAgICAgICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzYwX01TOwor
ICAgICAgIGVsc2UgaWYgKGZyYW1lX3NpemU9PTQqc2FtcGxpbmdfcmF0ZS81MCkKKyAgICAgICAg
ICB2YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzgwX01TOworICAgICAgIGVsc2Ug
aWYgKGZyYW1lX3NpemU9PTUqc2FtcGxpbmdfcmF0ZS81MCkKKyAgICAgICAgICB2YXJpYWJsZV9k
dXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFXzEwMF9NUzsKKyAgICAgICBlbHNlCisgICAgICAgICAg
dmFyaWFibGVfZHVyYXRpb24gPSBPUFVTX0ZSQU1FU0laRV8xMjBfTVM7CisgICAgICAgb3B1c19l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTih2YXJpYWJsZV9k
dXJhdGlvbikpOwogICAgICAgIGZyYW1lX3NpemUgPSAyKjQ4MDAwOwogICAgIH0KICAgICB3aGls
ZSAoIXN0b3ApCkBAIC02NTIsOCArNjU4LDggQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFy
Z3ZbXSkKICAgICAgICAgaWYgKGRlY29kZV9vbmx5KQogICAgICAgICB7CiAgICAgICAgICAgICB1
bnNpZ25lZCBjaGFyIGNoWzRdOwotICAgICAgICAgICAgZXJyID0gZnJlYWQoY2gsIDEsIDQsIGZp
bik7Ci0gICAgICAgICAgICBpZiAoZmVvZihmaW4pKQorICAgICAgICAgICAgbnVtX3JlYWQgPSBm
cmVhZChjaCwgMSwgNCwgZmluKTsKKyAgICAgICAgICAgIGlmIChudW1fcmVhZCE9NCkKICAgICAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGxlblt0b2dnbGVdID0gY2hhcl90b19pbnQo
Y2gpOwogICAgICAgICAgICAgaWYgKGxlblt0b2dnbGVdPm1heF9wYXlsb2FkX2J5dGVzIHx8IGxl
blt0b2dnbGVdPDApCkBAIC02NjEsMTQgKzY2NywxNiBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hh
ciAqYXJndltdKQogICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiSW52YWxpZCBwYXls
b2FkIGxlbmd0aDogJWRcbiIsbGVuW3RvZ2dsZV0pOwogICAgICAgICAgICAgICAgIGJyZWFrOwog
ICAgICAgICAgICAgfQotICAgICAgICAgICAgZXJyID0gZnJlYWQoY2gsIDEsIDQsIGZpbik7Cisg
ICAgICAgICAgICBudW1fcmVhZCA9IGZyZWFkKGNoLCAxLCA0LCBmaW4pOworICAgICAgICAgICAg
aWYgKG51bV9yZWFkIT00KQorICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgZW5j
X2ZpbmFsX3JhbmdlW3RvZ2dsZV0gPSBjaGFyX3RvX2ludChjaCk7Ci0gICAgICAgICAgICBlcnIg
PSBmcmVhZChkYXRhW3RvZ2dsZV0sIDEsIGxlblt0b2dnbGVdLCBmaW4pOwotICAgICAgICAgICAg
aWYgKGVycjxsZW5bdG9nZ2xlXSkKKyAgICAgICAgICAgIG51bV9yZWFkID0gZnJlYWQoZGF0YVt0
b2dnbGVdLCAxLCBsZW5bdG9nZ2xlXSwgZmluKTsKKyAgICAgICAgICAgIGlmIChudW1fcmVhZCE9
KHNpemVfdClsZW5bdG9nZ2xlXSkKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBmcHJp
bnRmKHN0ZGVyciwgIlJhbiBvdXQgb2YgaW5wdXQsICIKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgImV4cGVjdGluZyAlZCBieXRlcyBnb3QgJWRcbiIsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGxlblt0b2dnbGVdLGVycik7CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGxlblt0b2dnbGVdLChpbnQpbnVtX3JlYWQpOwogICAgICAgICAgICAgICAgIGJy
ZWFrOwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UgewpAQCAtNjgwLDggKzY4OCw4IEBA
IGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICAgICAgb3B1c19l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0ZPUkNFX0NIQU5ORUxTKG1vZGVfbGlzdFtjdXJyX21v
ZGVdWzNdKSk7CiAgICAgICAgICAgICAgICAgZnJhbWVfc2l6ZSA9IG1vZGVfbGlzdFtjdXJyX21v
ZGVdWzJdOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgZXJyID0gZnJlYWQoZmJ5dGVzLCBz
aXplb2Yoc2hvcnQpKmNoYW5uZWxzLCBmcmFtZV9zaXplLXJlbWFpbmluZywgZmluKTsKLSAgICAg
ICAgICAgIGN1cnJfcmVhZCA9IGVycjsKKyAgICAgICAgICAgIG51bV9yZWFkID0gZnJlYWQoZmJ5
dGVzLCBzaXplb2Yoc2hvcnQpKmNoYW5uZWxzLCBmcmFtZV9zaXplLXJlbWFpbmluZywgZmluKTsK
KyAgICAgICAgICAgIGN1cnJfcmVhZCA9IChpbnQpbnVtX3JlYWQ7CiAgICAgICAgICAgICB0b3Rf
aW4gKz0gY3Vycl9yZWFkOwogICAgICAgICAgICAgZm9yKGk9MDtpPGN1cnJfcmVhZCpjaGFubmVs
cztpKyspCiAgICAgICAgICAgICB7CkBAIC03MjEsMTQgKzcyOSw4IEBAIGludCBtYWluKGludCBh
cmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICBpZiAobGVuW3RvZ2dsZV0gPCAwKQogICAg
ICAgICAgICAgewogICAgICAgICAgICAgICAgIGZwcmludGYgKHN0ZGVyciwgIm9wdXNfZW5jb2Rl
KCkgcmV0dXJuZWQgJWRcbiIsIGxlblt0b2dnbGVdKTsKLSAgICAgICAgICAgICAgICBmcmVlKGRh
dGFbMF0pOwotICAgICAgICAgICAgICAgIGlmICh1c2VfaW5iYW5kZmVjKQotICAgICAgICAgICAg
ICAgICAgICBmcmVlKGRhdGFbMV0pOwogICAgICAgICAgICAgICAgIGZjbG9zZShmaW4pOwogICAg
ICAgICAgICAgICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAgICAgICAgICBmcmVlKGluKTsKLSAg
ICAgICAgICAgICAgICBmcmVlKG91dCk7Ci0gICAgICAgICAgICAgICAgZnJlZShmYnl0ZXMpOwog
ICAgICAgICAgICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7CiAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICBjdXJyX21vZGVfY291bnQgKz0gZnJhbWVfc2l6ZTsKQEAgLTc0NiwxNCArNzQ4LDYg
QEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgaWYgKChlcnIg
PSBvcHVzX3BhY2tldF9wYWQoZGF0YVt0b2dnbGVdLCBsZW5bdG9nZ2xlXSwgbmV3X2xlbikpICE9
IE9QVVNfT0spCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJw
YWRkaW5nIGZhaWxlZDogJXNcbiIsIG9wdXNfc3RyZXJyb3IoZXJyKSk7Ci0gICAgICAgICAgICAg
IGZyZWUoZGF0YVswXSk7Ci0gICAgICAgICAgICAgIGlmICh1c2VfaW5iYW5kZmVjKQotICAgICAg
ICAgICAgICAgICAgZnJlZShkYXRhWzFdKTsKLSAgICAgICAgICAgICAgZmNsb3NlKGZpbik7Ci0g
ICAgICAgICAgICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAgICAgICAgZnJlZShpbik7Ci0gICAg
ICAgICAgICAgIGZyZWUob3V0KTsKLSAgICAgICAgICAgICAgZnJlZShmYnl0ZXMpOwogICAgICAg
ICAgICAgICByZXR1cm4gRVhJVF9GQUlMVVJFOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxl
blt0b2dnbGVdID0gbmV3X2xlbjsKQEAgLTc2NSw0NCArNzU5LDIwIEBAIGludCBtYWluKGludCBh
cmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICBpbnRfdG9fY2hhcihsZW5bdG9nZ2xlXSwg
aW50X2ZpZWxkKTsKICAgICAgICAgICAgIGlmIChmd3JpdGUoaW50X2ZpZWxkLCAxLCA0LCBmb3V0
KSAhPSA0KSB7CiAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkVycm9yIHdyaXRpbmcu
XG4iKTsKLSAgICAgICAgICAgICAgIGZyZWUoZGF0YVswXSk7Ci0gICAgICAgICAgICAgICBpZiAo
dXNlX2luYmFuZGZlYykKLSAgICAgICAgICAgICAgICAgICBmcmVlKGRhdGFbMV0pOwotICAgICAg
ICAgICAgICAgZmNsb3NlKGZpbik7Ci0gICAgICAgICAgICAgICBmY2xvc2UoZm91dCk7Ci0gICAg
ICAgICAgICAgICBmcmVlKGluKTsKLSAgICAgICAgICAgICAgIGZyZWUob3V0KTsKLSAgICAgICAg
ICAgICAgIGZyZWUoZmJ5dGVzKTsKICAgICAgICAgICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7
CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpbnRfdG9fY2hhcihlbmNfZmluYWxfcmFuZ2Vb
dG9nZ2xlXSwgaW50X2ZpZWxkKTsKICAgICAgICAgICAgIGlmIChmd3JpdGUoaW50X2ZpZWxkLCAx
LCA0LCBmb3V0KSAhPSA0KSB7CiAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkVycm9y
IHdyaXRpbmcuXG4iKTsKLSAgICAgICAgICAgICAgIGZyZWUoZGF0YVswXSk7Ci0gICAgICAgICAg
ICAgICBpZiAodXNlX2luYmFuZGZlYykKLSAgICAgICAgICAgICAgICAgICBmcmVlKGRhdGFbMV0p
OwotICAgICAgICAgICAgICAgZmNsb3NlKGZpbik7Ci0gICAgICAgICAgICAgICBmY2xvc2UoZm91
dCk7Ci0gICAgICAgICAgICAgICBmcmVlKGluKTsKLSAgICAgICAgICAgICAgIGZyZWUob3V0KTsK
LSAgICAgICAgICAgICAgIGZyZWUoZmJ5dGVzKTsKICAgICAgICAgICAgICAgIHJldHVybiBFWElU
X0ZBSUxVUkU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAoZndyaXRlKGRhdGFbdG9n
Z2xlXSwgMSwgbGVuW3RvZ2dsZV0sIGZvdXQpICE9ICh1bnNpZ25lZClsZW5bdG9nZ2xlXSkgewog
ICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJFcnJvciB3cml0aW5nLlxuIik7Ci0gICAg
ICAgICAgICAgICBmcmVlKGRhdGFbMF0pOwotICAgICAgICAgICAgICAgaWYgKHVzZV9pbmJhbmRm
ZWMpCi0gICAgICAgICAgICAgICAgICAgZnJlZShkYXRhWzFdKTsKLSAgICAgICAgICAgICAgIGZj
bG9zZShmaW4pOwotICAgICAgICAgICAgICAgZmNsb3NlKGZvdXQpOwotICAgICAgICAgICAgICAg
ZnJlZShpbik7Ci0gICAgICAgICAgICAgICBmcmVlKG91dCk7Ci0gICAgICAgICAgICAgICBmcmVl
KGZieXRlcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gRVhJVF9GQUlMVVJFOwogICAgICAgICAg
ICAgfQogICAgICAgICAgICAgdG90X3NhbXBsZXMgKz0gbmJfZW5jb2RlZDsKICAgICAgICAgfSBl
bHNlIHsKLSAgICAgICAgICAgIGludCBvdXRwdXRfc2FtcGxlczsKKyAgICAgICAgICAgIG9wdXNf
aW50MzIgb3V0cHV0X3NhbXBsZXM7CiAgICAgICAgICAgICBsb3N0ID0gbGVuW3RvZ2dsZV09PTAg
fHwgKHBhY2tldF9sb3NzX3BlcmM+MCAmJiByYW5kKCklMTAwIDwgcGFja2V0X2xvc3NfcGVyYyk7
CiAgICAgICAgICAgICBpZiAobG9zdCkKICAgICAgICAgICAgICAgIG9wdXNfZGVjb2Rlcl9jdGwo
ZGVjLCBPUFVTX0dFVF9MQVNUX1BBQ0tFVF9EVVJBVElPTigmb3V0cHV0X3NhbXBsZXMpKTsKQEAg
LTgyOCw3ICs3OTgsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAg
ICAgICAgICAgICAgICBpZiAoIWRlY29kZV9vbmx5ICYmIHRvdF9vdXQgKyBvdXRwdXRfc2FtcGxl
cyA+IHRvdF9pbikKICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAg
ICBzdG9wPTE7Ci0gICAgICAgICAgICAgICAgICAgICAgIG91dHB1dF9zYW1wbGVzICA9IHRvdF9p
bi10b3Rfb3V0OworICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXRfc2FtcGxlcyA9IChvcHVz
X2ludDMyKSh0b3RfaW4gLSB0b3Rfb3V0KTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgICAgICAgICBpZiAob3V0cHV0X3NhbXBsZXM+c2tpcCkgewogICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgaTsKQEAgLTg0MSwxNCArODExLDYgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNo
YXIgKmFyZ3ZbXSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAg
ICAgICBpZiAoZndyaXRlKGZieXRlcywgc2l6ZW9mKHNob3J0KSpjaGFubmVscywgb3V0cHV0X3Nh
bXBsZXMtc2tpcCwgZm91dCkgIT0gKHVuc2lnbmVkKShvdXRwdXRfc2FtcGxlcy1za2lwKSl7CiAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiRXJyb3Igd3JpdGluZy5c
biIpOwotICAgICAgICAgICAgICAgICAgICAgICAgICBmcmVlKGRhdGFbMF0pOwotICAgICAgICAg
ICAgICAgICAgICAgICAgICBpZiAodXNlX2luYmFuZGZlYykKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGZyZWUoZGF0YVsxXSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGZjbG9z
ZShmaW4pOwotICAgICAgICAgICAgICAgICAgICAgICAgICBmY2xvc2UoZm91dCk7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICAgIGZyZWUoaW4pOwotICAgICAgICAgICAgICAgICAgICAgICAgICBm
cmVlKG91dCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGZyZWUoZmJ5dGVzKTsKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKICAgICAgICAgICAgICAg
ICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB0b3Rfb3V0ICs9IG91dHB1dF9zYW1w
bGVzLXNraXA7CkBAIC04NzUsMTQgKzgzNyw4IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICph
cmd2W10pCiAgICAgICAgICAgICAgICAgICAgICAgICAgKGxvbmcpY291bnQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgKHVuc2lnbmVkIGxvbmcpZW5jX2ZpbmFsX3JhbmdlW3RvZ2dsZV51c2Vf
aW5iYW5kZmVjXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgbG9uZylkZWNf
ZmluYWxfcmFuZ2UpOwotICAgICAgICAgICAgZnJlZShkYXRhWzBdKTsKLSAgICAgICAgICAgIGlm
ICh1c2VfaW5iYW5kZmVjKQotICAgICAgICAgICAgICAgIGZyZWUoZGF0YVsxXSk7CiAgICAgICAg
ICAgICBmY2xvc2UoZmluKTsKICAgICAgICAgICAgIGZjbG9zZShmb3V0KTsKLSAgICAgICAgICAg
IGZyZWUoaW4pOwotICAgICAgICAgICAgZnJlZShvdXQpOwotICAgICAgICAgICAgZnJlZShmYnl0
ZXMpOwogICAgICAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKICAgICAgICAgfQogCkBAIC05
MjIsOCArODc4LDYgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAg
ICAgICAgIDFlLTMqYml0c19hY3Qqc2FtcGxpbmdfcmF0ZS8oMWUtMTUrZnJhbWVfc2l6ZSooZG91
YmxlKWNvdW50X2FjdCkpOwogICAgIGZwcmludGYgKHN0ZGVyciwgImJpdHJhdGUgc3RhbmRhcmQg
ZGV2aWF0aW9uOiAgJTcuM2Yga2Ivc1xuIiwKICAgICAgICAgICAgIDFlLTMqc3FydChiaXRzMi9j
b3VudCAtIGJpdHMqYml0cy8oY291bnQqKGRvdWJsZSljb3VudCkpKnNhbXBsaW5nX3JhdGUvZnJh
bWVfc2l6ZSk7Ci0gICAgLyogQ2xvc2UgYW55IGZpbGVzIHRvIHdoaWNoIGludGVybWVkaWF0ZSBy
ZXN1bHRzIHdlcmUgc3RvcmVkICovCi0gICAgU0lMS19ERUJVR19TVE9SRV9DTE9TRV9GSUxFUwog
ICAgIHNpbGtfVGltZXJTYXZlKCJvcHVzX3RpbWluZy50eHQiKTsKICAgICBvcHVzX2VuY29kZXJf
ZGVzdHJveShlbmMpOwogICAgIG9wdXNfZGVjb2Rlcl9kZXN0cm95KGRlYyk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3NyYy9vcHVzX2VuY29kZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfZW5jb2Rlci5jCmluZGV4IDlhNTE2YTg4NGFh
Nzc3OGU4NTc3YTU1OTgxOTE1MzBiYzY5MDY3YjIuLjIxNDljMjBiNDE5MGEwNDdjYjQ0ZmY2M2Uy
ZGFhYzFjNzkzOTU2ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfZW5jb2Rlci5jCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29w
dXNfZW5jb2Rlci5jCkBAIC01Myw2ICs1MywxMCBAQAogCiAjZGVmaW5lIE1BWF9FTkNPREVSX0JV
RkZFUiA0ODAKIAorI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQorI2RlZmluZSBQU0VVRE9fU05S
X1RIUkVTSE9MRCAzMTYuMjNmICAgIC8qIDEwXigyNS8xMCkgKi8KKyNlbmRpZgorCiB0eXBlZGVm
IHN0cnVjdCB7CiAgICBvcHVzX3ZhbDMyIFhYLCBYWSwgWVk7CiAgICBvcHVzX3ZhbDE2IHNtb290
aGVkX3dpZHRoOwpAQCAtODIsNiArODYsNyBAQCBzdHJ1Y3QgT3B1c0VuY29kZXIgewogICAgIGlu
dCAgICAgICAgICBlbmNvZGVyX2J1ZmZlcjsKICAgICBpbnQgICAgICAgICAgbGZlOwogICAgIGlu
dCAgICAgICAgICBhcmNoOworICAgIGludCAgICAgICAgICB1c2VfZHR4OyAgICAgICAgICAgICAg
ICAgLyogZ2VuZXJhbCBEVFggZm9yIGJvdGggU0lMSyBhbmQgQ0VMVCAqLwogI2lmbmRlZiBESVNB
QkxFX0ZMT0FUX0FQSQogICAgIFRvbmFsaXR5QW5hbHlzaXNTdGF0ZSBhbmFseXNpczsKICNlbmRp
ZgpAQCAtOTcsNiArMTAyLDggQEAgc3RydWN0IE9wdXNFbmNvZGVyIHsKICAgICBpbnQgICAgICAg
ICAgcHJldl9jaGFubmVsczsKICAgICBpbnQgICAgICAgICAgcHJldl9mcmFtZXNpemU7CiAgICAg
aW50ICAgICAgICAgIGJhbmR3aWR0aDsKKyAgICAvKiBCYW5kd2lkdGggZGV0ZXJtaW5lZCBhdXRv
bWF0aWNhbGx5IGZyb20gdGhlIHJhdGUgKGJlZm9yZSBhbnkgb3RoZXIgYWRqdXN0bWVudCkgKi8K
KyAgICBpbnQgICAgICAgICAgYXV0b19iYW5kd2lkdGg7CiAgICAgaW50ICAgICAgICAgIHNpbGtf
Yndfc3dpdGNoOwogICAgIC8qIFNhbXBsaW5nIHJhdGUgKGF0IHRoZSBBUEkgbGV2ZWwpICovCiAg
ICAgaW50ICAgICAgICAgIGZpcnN0OwpAQCAtMTA1LDcgKzExMiwxMCBAQCBzdHJ1Y3QgT3B1c0Vu
Y29kZXIgewogICAgIG9wdXNfdmFsMTYgICBkZWxheV9idWZmZXJbTUFYX0VOQ09ERVJfQlVGRkVS
KjJdOwogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQogICAgIGludCAgICAgICAgICBkZXRlY3Rl
ZF9iYW5kd2lkdGg7CisgICAgaW50ICAgICAgICAgIG5iX25vX2FjdGl2aXR5X2ZyYW1lczsKKyAg
ICBvcHVzX3ZhbDMyICAgcGVha19zaWduYWxfZW5lcmd5OwogI2VuZGlmCisgICAgaW50ICAgICAg
ICAgIG5vbmZpbmFsX2ZyYW1lOyAvKiBjdXJyZW50IGZyYW1lIGlzIG5vdCB0aGUgZmluYWwgaW4g
YSBwYWNrZXQgKi8KICAgICBvcHVzX3VpbnQzMiAgcmFuZ2VGaW5hbDsKIH07CiAKQEAgLTExMywz
MiArMTIzLDMyIEBAIHN0cnVjdCBPcHVzRW5jb2RlciB7CiAgICBtaWRkbGUgKG1lbW9yaWxlc3Mp
IHRocmVzaG9sZC4gVGhlIHNlY29uZCBjb2x1bW4gaXMgdGhlIGh5c3RlcmVzaXMKICAgIChkaWZm
ZXJlbmNlIHdpdGggdGhlIG1pZGRsZSkgKi8KIHN0YXRpYyBjb25zdCBvcHVzX2ludDMyIG1vbm9f
dm9pY2VfYmFuZHdpZHRoX3RocmVzaG9sZHNbOF0gPSB7Ci0gICAgICAgIDExMDAwLCAxMDAwLCAv
KiBOQjwtPk1CICovCi0gICAgICAgIDE0MDAwLCAxMDAwLCAvKiBNQjwtPldCICovCi0gICAgICAg
IDE3MDAwLCAxMDAwLCAvKiBXQjwtPlNXQiAqLwotICAgICAgICAyMTAwMCwgMjAwMCwgLyogU1dC
PC0+RkIgKi8KKyAgICAgICAgMTAwMDAsIDEwMDAsIC8qIE5CPC0+TUIgKi8KKyAgICAgICAgMTEw
MDAsIDEwMDAsIC8qIE1CPC0+V0IgKi8KKyAgICAgICAgMTM1MDAsIDEwMDAsIC8qIFdCPC0+U1dC
ICovCisgICAgICAgIDE0MDAwLCAyMDAwLCAvKiBTV0I8LT5GQiAqLwogfTsKIHN0YXRpYyBjb25z
dCBvcHVzX2ludDMyIG1vbm9fbXVzaWNfYmFuZHdpZHRoX3RocmVzaG9sZHNbOF0gPSB7Ci0gICAg
ICAgIDEyMDAwLCAxMDAwLCAvKiBOQjwtPk1CICovCi0gICAgICAgIDE1MDAwLCAxMDAwLCAvKiBN
QjwtPldCICovCi0gICAgICAgIDE4MDAwLCAyMDAwLCAvKiBXQjwtPlNXQiAqLwotICAgICAgICAy
MjAwMCwgMjAwMCwgLyogU1dCPC0+RkIgKi8KKyAgICAgICAgMTAwMDAsIDEwMDAsIC8qIE5CPC0+
TUIgKi8KKyAgICAgICAgMTEwMDAsIDEwMDAsIC8qIE1CPC0+V0IgKi8KKyAgICAgICAgMTM1MDAs
IDEwMDAsIC8qIFdCPC0+U1dCICovCisgICAgICAgIDE0MDAwLCAyMDAwLCAvKiBTV0I8LT5GQiAq
LwogfTsKIHN0YXRpYyBjb25zdCBvcHVzX2ludDMyIHN0ZXJlb192b2ljZV9iYW5kd2lkdGhfdGhy
ZXNob2xkc1s4XSA9IHsKLSAgICAgICAgMTEwMDAsIDEwMDAsIC8qIE5CPC0+TUIgKi8KLSAgICAg
ICAgMTQwMDAsIDEwMDAsIC8qIE1CPC0+V0IgKi8KLSAgICAgICAgMjEwMDAsIDIwMDAsIC8qIFdC
PC0+U1dCICovCi0gICAgICAgIDI4MDAwLCAyMDAwLCAvKiBTV0I8LT5GQiAqLworICAgICAgICAx
MDAwMCwgMTAwMCwgLyogTkI8LT5NQiAqLworICAgICAgICAxMTAwMCwgMTAwMCwgLyogTUI8LT5X
QiAqLworICAgICAgICAxMzUwMCwgMTAwMCwgLyogV0I8LT5TV0IgKi8KKyAgICAgICAgMTQwMDAs
IDIwMDAsIC8qIFNXQjwtPkZCICovCiB9Owogc3RhdGljIGNvbnN0IG9wdXNfaW50MzIgc3RlcmVv
X211c2ljX2JhbmR3aWR0aF90aHJlc2hvbGRzWzhdID0gewotICAgICAgICAxMjAwMCwgMTAwMCwg
LyogTkI8LT5NQiAqLwotICAgICAgICAxODAwMCwgMjAwMCwgLyogTUI8LT5XQiAqLwotICAgICAg
ICAyMTAwMCwgMjAwMCwgLyogV0I8LT5TV0IgKi8KLSAgICAgICAgMzAwMDAsIDIwMDAsIC8qIFNX
QjwtPkZCICovCisgICAgICAgIDEwMDAwLCAxMDAwLCAvKiBOQjwtPk1CICovCisgICAgICAgIDEx
MDAwLCAxMDAwLCAvKiBNQjwtPldCICovCisgICAgICAgIDEzNTAwLCAxMDAwLCAvKiBXQjwtPlNX
QiAqLworICAgICAgICAxNDAwMCwgMjAwMCwgLyogU1dCPC0+RkIgKi8KIH07CiAvKiBUaHJlc2hv
bGQgYml0LXJhdGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBtb25vIGFuZCBzdGVyZW8gKi8KLXN0
YXRpYyBjb25zdCBvcHVzX2ludDMyIHN0ZXJlb192b2ljZV90aHJlc2hvbGQgPSAzMDAwMDsKLXN0
YXRpYyBjb25zdCBvcHVzX2ludDMyIHN0ZXJlb19tdXNpY190aHJlc2hvbGQgPSAzMDAwMDsKK3N0
YXRpYyBjb25zdCBvcHVzX2ludDMyIHN0ZXJlb192b2ljZV90aHJlc2hvbGQgPSAyNDAwMDsKK3N0
YXRpYyBjb25zdCBvcHVzX2ludDMyIHN0ZXJlb19tdXNpY190aHJlc2hvbGQgPSAyNDAwMDsKIAog
LyogVGhyZXNob2xkIGJpdC1yYXRlIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBTSUxLL2h5YnJpZCBh
bmQgQ0VMVC1vbmx5ICovCiBzdGF0aWMgY29uc3Qgb3B1c19pbnQzMiBtb2RlX3RocmVzaG9sZHNb
Ml1bMl0gPSB7CkBAIC0xNDcsNiArMTU3LDE0IEBAIHN0YXRpYyBjb25zdCBvcHVzX2ludDMyIG1v
ZGVfdGhyZXNob2xkc1syXVsyXSA9IHsKICAgICAgIHsgIDM2MDAwLCAgICAgIDE2MDAwfSwgLyog
c3RlcmVvICovCiB9OwogCitzdGF0aWMgY29uc3Qgb3B1c19pbnQzMiBmZWNfdGhyZXNob2xkc1td
ID0geworICAgICAgICAxMjAwMCwgMTAwMCwgLyogTkIgKi8KKyAgICAgICAgMTQwMDAsIDEwMDAs
IC8qIE1CICovCisgICAgICAgIDE2MDAwLCAxMDAwLCAvKiBXQiAqLworICAgICAgICAyMDAwMCwg
MTAwMCwgLyogU1dCICovCisgICAgICAgIDIyMDAwLCAxMDAwLCAvKiBGQiAqLworfTsKKwogaW50
IG9wdXNfZW5jb2Rlcl9nZXRfc2l6ZShpbnQgY2hhbm5lbHMpCiB7CiAgICAgaW50IHNpbGtFbmNT
aXplQnl0ZXMsIGNlbHRFbmNTaXplQnl0ZXM7CkBAIC0yNDUsNyArMjYzLDggQEAgaW50IG9wdXNf
ZW5jb2Rlcl9pbml0KE9wdXNFbmNvZGVyKiBzdCwgb3B1c19pbnQzMiBGcywgaW50IGNoYW5uZWxz
LCBpbnQgYXBwbGljYXQKICAgICBzdC0+YmFuZHdpZHRoID0gT1BVU19CQU5EV0lEVEhfRlVMTEJB
TkQ7CiAKICNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKLSAgICB0b25hbGl0eV9hbmFseXNpc19p
bml0KCZzdC0+YW5hbHlzaXMpOworICAgIHRvbmFsaXR5X2FuYWx5c2lzX2luaXQoJnN0LT5hbmFs
eXNpcywgc3QtPkZzKTsKKyAgICBzdC0+YW5hbHlzaXMuYXBwbGljYXRpb24gPSBzdC0+YXBwbGlj
YXRpb247CiAjZW5kaWYKIAogICAgIHJldHVybiBPUFVTX09LOwpAQCAtMzIzLDEwICszNDIsMTEg
QEAgc3RhdGljIHZvaWQgc2lsa19iaXF1YWRfZmxvYXQoCiB9CiAjZW5kaWYKIAotc3RhdGljIHZv
aWQgaHBfY3V0b2ZmKGNvbnN0IG9wdXNfdmFsMTYgKmluLCBvcHVzX2ludDMyIGN1dG9mZl9Ieiwg
b3B1c192YWwxNiAqb3V0LCBvcHVzX3ZhbDMyICpocF9tZW0sIGludCBsZW4sIGludCBjaGFubmVs
cywgb3B1c19pbnQzMiBGcykKK3N0YXRpYyB2b2lkIGhwX2N1dG9mZihjb25zdCBvcHVzX3ZhbDE2
ICppbiwgb3B1c19pbnQzMiBjdXRvZmZfSHosIG9wdXNfdmFsMTYgKm91dCwgb3B1c192YWwzMiAq
aHBfbWVtLCBpbnQgbGVuLCBpbnQgY2hhbm5lbHMsIG9wdXNfaW50MzIgRnMsIGludCBhcmNoKQog
ewogICAgb3B1c19pbnQzMiBCX1EyOFsgMyBdLCBBX1EyOFsgMiBdOwogICAgb3B1c19pbnQzMiBG
Y19RMTksIHJfUTI4LCByX1EyMjsKKyAgICh2b2lkKWFyY2g7CiAKICAgIHNpbGtfYXNzZXJ0KCBj
dXRvZmZfSHogPD0gc2lsa19pbnQzMl9NQVggLyBTSUxLX0ZJWF9DT05TVCggMS41ICogMy4xNDE1
OSAvIDEwMDAsIDE5ICkgKTsKICAgIEZjX1ExOSA9IHNpbGtfRElWMzJfMTYoIHNpbGtfU01VTEJC
KCBTSUxLX0ZJWF9DT05TVCggMS41ICogMy4xNDE1OSAvIDEwMDAsIDE5ICksIGN1dG9mZl9IeiAp
LCBGcy8xMDAwICk7CkBAIC0zNDYsOSArMzY2LDEwIEBAIHN0YXRpYyB2b2lkIGhwX2N1dG9mZihj
b25zdCBvcHVzX3ZhbDE2ICppbiwgb3B1c19pbnQzMiBjdXRvZmZfSHosIG9wdXNfdmFsMTYgKm91
CiAgICBBX1EyOFsgMSBdID0gc2lsa19TTVVMV1coIHJfUTIyLCByX1EyMiApOwogCiAjaWZkZWYg
RklYRURfUE9JTlQKLSAgIHNpbGtfYmlxdWFkX2FsdCggaW4sIEJfUTI4LCBBX1EyOCwgaHBfbWVt
LCBvdXQsIGxlbiwgY2hhbm5lbHMgKTsKLSAgIGlmKCBjaGFubmVscyA9PSAyICkgewotICAgICAg
IHNpbGtfYmlxdWFkX2FsdCggaW4rMSwgQl9RMjgsIEFfUTI4LCBocF9tZW0rMiwgb3V0KzEsIGxl
biwgY2hhbm5lbHMgKTsKKyAgIGlmKCBjaGFubmVscyA9PSAxICkgeworICAgICAgc2lsa19iaXF1
YWRfYWx0X3N0cmlkZTEoIGluLCBCX1EyOCwgQV9RMjgsIGhwX21lbSwgb3V0LCBsZW4gKTsKKyAg
IH0gZWxzZSB7CisgICAgICBzaWxrX2JpcXVhZF9hbHRfc3RyaWRlMiggaW4sIEJfUTI4LCBBX1Ey
OCwgaHBfbWVtLCBvdXQsIGxlbiwgYXJjaCApOwogICAgfQogI2Vsc2UKICAgIHNpbGtfYmlxdWFk
X2Zsb2F0KCBpbiwgQl9RMjgsIEFfUTI4LCBocF9tZW0sIG91dCwgbGVuLCBjaGFubmVscyApOwpA
QCAtMzcxLDE0ICszOTIsMTQgQEAgc3RhdGljIHZvaWQgZGNfcmVqZWN0KGNvbnN0IG9wdXNfdmFs
MTYgKmluLCBvcHVzX2ludDMyIGN1dG9mZl9Ieiwgb3B1c192YWwxNiAqb3UKICAgICAgIGZvciAo
aT0wO2k8bGVuO2krKykKICAgICAgIHsKICAgICAgICAgIG9wdXNfdmFsMzIgeCwgdG1wLCB5Owot
ICAgICAgICAgeCA9IFNITDMyKEVYVEVORDMyKGluW2NoYW5uZWxzKmkrY10pLCAxNSk7CisgICAg
ICAgICB4ID0gU0hMMzIoRVhURU5EMzIoaW5bY2hhbm5lbHMqaStjXSksIDE0KTsKICAgICAgICAg
IC8qIEZpcnN0IHN0YWdlICovCiAgICAgICAgICB0bXAgPSB4LWhwX21lbVsyKmNdOwogICAgICAg
ICAgaHBfbWVtWzIqY10gPSBocF9tZW1bMipjXSArIFBTSFIzMih4IC0gaHBfbWVtWzIqY10sIHNo
aWZ0KTsKICAgICAgICAgIC8qIFNlY29uZCBzdGFnZSAqLwogICAgICAgICAgeSA9IHRtcCAtIGhw
X21lbVsyKmMrMV07CiAgICAgICAgICBocF9tZW1bMipjKzFdID0gaHBfbWVtWzIqYysxXSArIFBT
SFIzMih0bXAgLSBocF9tZW1bMipjKzFdLCBzaGlmdCk7Ci0gICAgICAgICBvdXRbY2hhbm5lbHMq
aStjXSA9IEVYVFJBQ1QxNihTQVRVUkFURShQU0hSMzIoeSwgMTUpLCAzMjc2NykpOworICAgICAg
ICAgb3V0W2NoYW5uZWxzKmkrY10gPSBFWFRSQUNUMTYoU0FUVVJBVEUoUFNIUjMyKHksIDE0KSwg
MzI3NjcpKTsKICAgICAgIH0KICAgIH0KIH0KQEAgLTM4NiwyNCArNDA3LDU3IEBAIHN0YXRpYyB2
b2lkIGRjX3JlamVjdChjb25zdCBvcHVzX3ZhbDE2ICppbiwgb3B1c19pbnQzMiBjdXRvZmZfSHos
IG9wdXNfdmFsMTYgKm91CiAjZWxzZQogc3RhdGljIHZvaWQgZGNfcmVqZWN0KGNvbnN0IG9wdXNf
dmFsMTYgKmluLCBvcHVzX2ludDMyIGN1dG9mZl9Ieiwgb3B1c192YWwxNiAqb3V0LCBvcHVzX3Zh
bDMyICpocF9tZW0sIGludCBsZW4sIGludCBjaGFubmVscywgb3B1c19pbnQzMiBGcykKIHsKLSAg
IGludCBjLCBpOwotICAgZmxvYXQgY29lZjsKLQorICAgaW50IGk7CisgICBmbG9hdCBjb2VmLCBj
b2VmMjsKICAgIGNvZWYgPSA0LjBmKmN1dG9mZl9Iei9GczsKLSAgIGZvciAoYz0wO2M8Y2hhbm5l
bHM7YysrKQorICAgY29lZjIgPSAxLWNvZWY7CisgICBpZiAoY2hhbm5lbHM9PTIpCiAgICB7Cisg
ICAgICBmbG9hdCBtMCwgbTEsIG0yLCBtMzsKKyAgICAgIG0wID0gaHBfbWVtWzBdOworICAgICAg
bTEgPSBocF9tZW1bMV07CisgICAgICBtMiA9IGhwX21lbVsyXTsKKyAgICAgIG0zID0gaHBfbWVt
WzNdOworICAgICAgZm9yIChpPTA7aTxsZW47aSsrKQorICAgICAgeworICAgICAgICAgb3B1c192
YWwzMiB4MCwgeDEsIHRtcDAsIHRtcDEsIG91dDAsIG91dDE7CisgICAgICAgICB4MCA9IGluWzIq
aSswXTsKKyAgICAgICAgIHgxID0gaW5bMippKzFdOworICAgICAgICAgLyogRmlyc3Qgc3RhZ2Ug
Ki8KKyAgICAgICAgIHRtcDAgPSB4MC1tMDsKKyAgICAgICAgIHRtcDEgPSB4MS1tMjsKKyAgICAg
ICAgIG0wID0gY29lZip4MCArIFZFUllfU01BTEwgKyBjb2VmMiptMDsKKyAgICAgICAgIG0yID0g
Y29lZip4MSArIFZFUllfU01BTEwgKyBjb2VmMiptMjsKKyAgICAgICAgIC8qIFNlY29uZCBzdGFn
ZSAqLworICAgICAgICAgb3V0MCA9IHRtcDAgLSBtMTsKKyAgICAgICAgIG91dDEgPSB0bXAxIC0g
bTM7CisgICAgICAgICBtMSA9IGNvZWYqdG1wMCArIFZFUllfU01BTEwgKyBjb2VmMiptMTsKKyAg
ICAgICAgIG0zID0gY29lZip0bXAxICsgVkVSWV9TTUFMTCArIGNvZWYyKm0zOworICAgICAgICAg
b3V0WzIqaSswXSA9IG91dDA7CisgICAgICAgICBvdXRbMippKzFdID0gb3V0MTsKKyAgICAgIH0K
KyAgICAgIGhwX21lbVswXSA9IG0wOworICAgICAgaHBfbWVtWzFdID0gbTE7CisgICAgICBocF9t
ZW1bMl0gPSBtMjsKKyAgICAgIGhwX21lbVszXSA9IG0zOworICAgfSBlbHNlIHsKKyAgICAgIGZs
b2F0IG0wLCBtMTsKKyAgICAgIG0wID0gaHBfbWVtWzBdOworICAgICAgbTEgPSBocF9tZW1bMV07
CiAgICAgICBmb3IgKGk9MDtpPGxlbjtpKyspCiAgICAgICB7CiAgICAgICAgICBvcHVzX3ZhbDMy
IHgsIHRtcCwgeTsKLSAgICAgICAgIHggPSBpbltjaGFubmVscyppK2NdOworICAgICAgICAgeCA9
IGluW2ldOwogICAgICAgICAgLyogRmlyc3Qgc3RhZ2UgKi8KLSAgICAgICAgIHRtcCA9IHgtaHBf
bWVtWzIqY107Ci0gICAgICAgICBocF9tZW1bMipjXSA9IGhwX21lbVsyKmNdICsgY29lZiooeCAt
IGhwX21lbVsyKmNdKSArIFZFUllfU01BTEw7CisgICAgICAgICB0bXAgPSB4LW0wOworICAgICAg
ICAgbTAgPSBjb2VmKnggKyBWRVJZX1NNQUxMICsgY29lZjIqbTA7CiAgICAgICAgICAvKiBTZWNv
bmQgc3RhZ2UgKi8KLSAgICAgICAgIHkgPSB0bXAgLSBocF9tZW1bMipjKzFdOwotICAgICAgICAg
aHBfbWVtWzIqYysxXSA9IGhwX21lbVsyKmMrMV0gKyBjb2VmKih0bXAgLSBocF9tZW1bMipjKzFd
KSArIFZFUllfU01BTEw7Ci0gICAgICAgICBvdXRbY2hhbm5lbHMqaStjXSA9IHk7CisgICAgICAg
ICB5ID0gdG1wIC0gbTE7CisgICAgICAgICBtMSA9IGNvZWYqdG1wICsgVkVSWV9TTUFMTCArIGNv
ZWYyKm0xOworICAgICAgICAgb3V0W2ldID0geTsKICAgICAgIH0KKyAgICAgIGhwX21lbVswXSA9
IG0wOworICAgICAgaHBfbWVtWzFdID0gbTE7CiAgICB9CiB9CiAjZW5kaWYKQEAgLTUyMCwyODgg
KzU3NCw1OCBAQCBzdGF0aWMgb3B1c19pbnQzMiB1c2VyX2JpdHJhdGVfdG9fYml0cmF0ZShPcHVz
RW5jb2RlciAqc3QsIGludCBmcmFtZV9zaXplLCBpbnQgbQogICAgIHJldHVybiBzdC0+dXNlcl9i
aXRyYXRlX2JwczsKIH0KIAotI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQotLyogRG9uJ3QgdXNl
IG1vcmUgdGhhbiA2MCBtcyBmb3IgdGhlIGZyYW1lIHNpemUgYW5hbHlzaXMgKi8KLSNkZWZpbmUg
TUFYX0RZTkFNSUNfRlJBTUVTSVpFIDI0Ci0vKiBFc3RpbWF0ZXMgaG93IG11Y2ggdGhlIGJpdHJh
dGUgd2lsbCBiZSBib29zdGVkIGJhc2VkIG9uIHRoZSBzdWItZnJhbWUgZW5lcmd5ICovCi1zdGF0
aWMgZmxvYXQgdHJhbnNpZW50X2Jvb3N0KGNvbnN0IGZsb2F0ICpFLCBjb25zdCBmbG9hdCAqRV8x
LCBpbnQgTE0sIGludCBtYXhNKQotewotICAgaW50IGk7Ci0gICBpbnQgTTsKLSAgIGZsb2F0IHN1
bUU9MCwgc3VtRV8xPTA7Ci0gICBmbG9hdCBtZXRyaWM7Ci0KLSAgIE0gPSBJTUlOKG1heE0sICgx
PDxMTSkrMSk7Ci0gICBmb3IgKGk9MDtpPE07aSsrKQotICAgewotICAgICAgc3VtRSArPSBFW2ld
OwotICAgICAgc3VtRV8xICs9IEVfMVtpXTsKLSAgIH0KLSAgIG1ldHJpYyA9IHN1bUUqc3VtRV8x
LyhNKk0pOwotICAgLyppZiAoTE09PTMpCi0gICAgICBwcmludGYoIiVmXG4iLCBtZXRyaWMpOyov
Ci0gICAvKnJldHVybiBtZXRyaWM+MTAgPyAxIDogMDsqLwotICAgLypyZXR1cm4gTUFYMTYoMCwx
LWV4cCgtLjI1KihtZXRyaWMtMi4pKSk7Ki8KLSAgIHJldHVybiBNSU4xNigxLChmbG9hdClzcXJ0
KE1BWDE2KDAsLjA1ZioobWV0cmljLTIpKSkpOwotfQotCi0vKiBWaXRlcmJpIGRlY29kaW5nIHRy
eWluZyB0byBmaW5kIHRoZSBiZXN0IGZyYW1lIHNpemUgY29tYmluYXRpb24gdXNpbmcgbG9vay1h
aGVhZAotCi0gICBTdGF0ZSBudW1iZXJpbmc6Ci0gICAgMDogdW51c2VkCi0gICAgMTogIDIuNSBt
cwotICAgIDI6ICA1IG1zICgjMSkKLSAgICAzOiAgNSBtcyAoIzIpCi0gICAgNDogMTAgbXMgKCMx
KQotICAgIDU6IDEwIG1zICgjMikKLSAgICA2OiAxMCBtcyAoIzMpCi0gICAgNzogMTAgbXMgKCM0
KQotICAgIDg6IDIwIG1zICgjMSkKLSAgICA5OiAyMCBtcyAoIzIpCi0gICAxMDogMjAgbXMgKCMz
KQotICAgMTE6IDIwIG1zICgjNCkKLSAgIDEyOiAyMCBtcyAoIzUpCi0gICAxMzogMjAgbXMgKCM2
KQotICAgMTQ6IDIwIG1zICgjNykKLSAgIDE1OiAyMCBtcyAoIzgpCi0qLwotc3RhdGljIGludCB0
cmFuc2llbnRfdml0ZXJiaShjb25zdCBmbG9hdCAqRSwgY29uc3QgZmxvYXQgKkVfMSwgaW50IE4s
IGludCBmcmFtZV9jb3N0LCBpbnQgcmF0ZSkKLXsKLSAgIGludCBpOwotICAgZmxvYXQgY29zdFtN
QVhfRFlOQU1JQ19GUkFNRVNJWkVdWzE2XTsKLSAgIGludCBzdGF0ZXNbTUFYX0RZTkFNSUNfRlJB
TUVTSVpFXVsxNl07Ci0gICBmbG9hdCBiZXN0X2Nvc3Q7Ci0gICBpbnQgYmVzdF9zdGF0ZTsKLSAg
IGZsb2F0IGZhY3RvcjsKLSAgIC8qIFRha2UgaW50byBhY2NvdW50IHRoYXQgd2UgZGFtcCBWQlIg
aW4gdGhlIDMyIGtiL3MgdG8gNjQga2IvcyByYW5nZS4gKi8KLSAgIGlmIChyYXRlPDgwKQotICAg
ICAgZmFjdG9yPTA7Ci0gICBlbHNlIGlmIChyYXRlPjE2MCkKLSAgICAgIGZhY3Rvcj0xOwotICAg
ZWxzZQotICAgICAgZmFjdG9yID0gKHJhdGUtODAuZikvODAuZjsKLSAgIC8qIE1ha2VzIHZhcmlh
YmxlIGZyYW1lc2l6ZSBsZXNzIGFnZ3Jlc3NpdmUgYXQgbG93ZXIgYml0cmF0ZXMsIGJ1dCBJIGNh
bid0Ci0gICAgICBmaW5kIGFueSB2YWxpZCB0aGVvcmV0aWNhbCBqdXN0aWZpY2F0aW9uIGZvciB0
aGlzIChvdGhlciB0aGFuIGl0IHNlZW1zCi0gICAgICB0byBoZWxwKSAqLwotICAgZm9yIChpPTA7
aTwxNjtpKyspCi0gICB7Ci0gICAgICAvKiBJbXBvc3NpYmxlIHN0YXRlICovCi0gICAgICBzdGF0
ZXNbMF1baV0gPSAtMTsKLSAgICAgIGNvc3RbMF1baV0gPSAxZTEwOwotICAgfQotICAgZm9yIChp
PTA7aTw0O2krKykKLSAgIHsKLSAgICAgIGNvc3RbMF1bMTw8aV0gPSAoZnJhbWVfY29zdCArIHJh
dGUqKDE8PGkpKSooMStmYWN0b3IqdHJhbnNpZW50X2Jvb3N0KEUsIEVfMSwgaSwgTisxKSk7Ci0g
ICAgICBzdGF0ZXNbMF1bMTw8aV0gPSBpOwotICAgfQotICAgZm9yIChpPTE7aTxOO2krKykKLSAg
IHsKLSAgICAgIGludCBqOwotCi0gICAgICAvKiBGb2xsb3cgY29udGludWF0aW9ucyAqLwotICAg
ICAgZm9yIChqPTI7ajwxNjtqKyspCi0gICAgICB7Ci0gICAgICAgICBjb3N0W2ldW2pdID0gY29z
dFtpLTFdW2otMV07Ci0gICAgICAgICBzdGF0ZXNbaV1bal0gPSBqLTE7Ci0gICAgICB9Ci0KLSAg
ICAgIC8qIE5ldyBmcmFtZXMgKi8KLSAgICAgIGZvcihqPTA7ajw0O2orKykKLSAgICAgIHsKLSAg
ICAgICAgIGludCBrOwotICAgICAgICAgZmxvYXQgbWluX2Nvc3Q7Ci0gICAgICAgICBmbG9hdCBj
dXJyX2Nvc3Q7Ci0gICAgICAgICBzdGF0ZXNbaV1bMTw8al0gPSAxOwotICAgICAgICAgbWluX2Nv
c3QgPSBjb3N0W2ktMV1bMV07Ci0gICAgICAgICBmb3Ioaz0xO2s8NDtrKyspCi0gICAgICAgICB7
Ci0gICAgICAgICAgICBmbG9hdCB0bXAgPSBjb3N0W2ktMV1bKDE8PChrKzEpKS0xXTsKLSAgICAg
ICAgICAgIGlmICh0bXAgPCBtaW5fY29zdCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAg
IHN0YXRlc1tpXVsxPDxqXSA9ICgxPDwoaysxKSktMTsKLSAgICAgICAgICAgICAgIG1pbl9jb3N0
ID0gdG1wOwotICAgICAgICAgICAgfQotICAgICAgICAgfQotICAgICAgICAgY3Vycl9jb3N0ID0g
KGZyYW1lX2Nvc3QgKyByYXRlKigxPDxqKSkqKDErZmFjdG9yKnRyYW5zaWVudF9ib29zdChFK2ks
IEVfMStpLCBqLCBOLWkrMSkpOwotICAgICAgICAgY29zdFtpXVsxPDxqXSA9IG1pbl9jb3N0Owot
ICAgICAgICAgLyogSWYgcGFydCBvZiB0aGUgZnJhbWUgaXMgb3V0c2lkZSB0aGUgYW5hbHlzaXMg
d2luZG93LCBvbmx5IGNvdW50IHBhcnQgb2YgdGhlIGNvc3QgKi8KLSAgICAgICAgIGlmIChOLWkg
PCAoMTw8aikpCi0gICAgICAgICAgICBjb3N0W2ldWzE8PGpdICs9IGN1cnJfY29zdCooZmxvYXQp
KE4taSkvKDE8PGopOwotICAgICAgICAgZWxzZQotICAgICAgICAgICAgY29zdFtpXVsxPDxqXSAr
PSBjdXJyX2Nvc3Q7Ci0gICAgICB9Ci0gICB9Ci0KLSAgIGJlc3Rfc3RhdGU9MTsKLSAgIGJlc3Rf
Y29zdCA9IGNvc3RbTi0xXVsxXTsKLSAgIC8qIEZpbmQgYmVzdCBlbmQgc3RhdGUgKGRvZXNuJ3Qg
Zm9yY2UgYSBmcmFtZSB0byBlbmQgYXQgTi0xKSAqLwotICAgZm9yIChpPTI7aTwxNjtpKyspCi0g
ICB7Ci0gICAgICBpZiAoY29zdFtOLTFdW2ldPGJlc3RfY29zdCkKLSAgICAgIHsKLSAgICAgICAg
IGJlc3RfY29zdCA9IGNvc3RbTi0xXVtpXTsKLSAgICAgICAgIGJlc3Rfc3RhdGUgPSBpOwotICAg
ICAgfQotICAgfQotCi0gICAvKiBGb2xsb3cgdHJhbnNpdGlvbnMgYmFjayAqLwotICAgZm9yIChp
PU4tMTtpPj0wO2ktLSkKLSAgIHsKLSAgICAgIC8qcHJpbnRmKCIlZCAiLCBiZXN0X3N0YXRlKTsq
LwotICAgICAgYmVzdF9zdGF0ZSA9IHN0YXRlc1tpXVtiZXN0X3N0YXRlXTsKLSAgIH0KLSAgIC8q
cHJpbnRmKCIlZFxuIiwgYmVzdF9zdGF0ZSk7Ki8KLSAgIHJldHVybiBiZXN0X3N0YXRlOwotfQot
Ci1zdGF0aWMgaW50IG9wdGltaXplX2ZyYW1lc2l6ZShjb25zdCB2b2lkICp4LCBpbnQgbGVuLCBp
bnQgQywgb3B1c19pbnQzMiBGcywKLSAgICAgICAgICAgICAgICBpbnQgYml0cmF0ZSwgb3B1c192
YWwxNiB0b25hbGl0eSwgZmxvYXQgKm1lbSwgaW50IGJ1ZmZlcmluZywKLSAgICAgICAgICAgICAg
ICBkb3dubWl4X2Z1bmMgZG93bm1peCkKLXsKLSAgIGludCBOOwotICAgaW50IGk7Ci0gICBmbG9h
dCBlW01BWF9EWU5BTUlDX0ZSQU1FU0laRSs0XTsKLSAgIGZsb2F0IGVfMVtNQVhfRFlOQU1JQ19G
UkFNRVNJWkUrM107Ci0gICBvcHVzX3ZhbDMyIG1lbXg7Ci0gICBpbnQgYmVzdExNPTA7Ci0gICBp
bnQgc3ViZnJhbWU7Ci0gICBpbnQgcG9zOwotICAgaW50IG9mZnNldDsKLSAgIFZBUkRFQ0wob3B1
c192YWwzMiwgc3ViKTsKLQotICAgc3ViZnJhbWUgPSBGcy80MDA7Ci0gICBBTExPQyhzdWIsIHN1
YmZyYW1lLCBvcHVzX3ZhbDMyKTsKLSAgIGVbMF09bWVtWzBdOwotICAgZV8xWzBdPTEuZi8oRVBT
SUxPTittZW1bMF0pOwotICAgaWYgKGJ1ZmZlcmluZykKLSAgIHsKLSAgICAgIC8qIENvbnNpZGVy
IHRoZSBDRUxUIGRlbGF5IHdoZW4gbm90IGluIHJlc3RyaWN0ZWQtbG93ZGVsYXkgKi8KLSAgICAg
IC8qIFdlIGFzc3VtZSB0aGUgYnVmZmVyaW5nIGlzIGJldHdlZW4gMi41IGFuZCA1IG1zICovCi0g
ICAgICBvZmZzZXQgPSAyKnN1YmZyYW1lIC0gYnVmZmVyaW5nOwotICAgICAgY2VsdF9hc3NlcnQo
b2Zmc2V0Pj0wICYmIG9mZnNldCA8PSBzdWJmcmFtZSk7Ci0gICAgICBsZW4gLT0gb2Zmc2V0Owot
ICAgICAgZVsxXT1tZW1bMV07Ci0gICAgICBlXzFbMV09MS5mLyhFUFNJTE9OK21lbVsxXSk7Ci0g
ICAgICBlWzJdPW1lbVsyXTsKLSAgICAgIGVfMVsyXT0xLmYvKEVQU0lMT04rbWVtWzJdKTsKLSAg
ICAgIHBvcyA9IDM7Ci0gICB9IGVsc2UgewotICAgICAgcG9zPTE7Ci0gICAgICBvZmZzZXQ9MDsK
LSAgIH0KLSAgIE49SU1JTihsZW4vc3ViZnJhbWUsIE1BWF9EWU5BTUlDX0ZSQU1FU0laRSk7Ci0g
ICAvKiBKdXN0IHNpbGVuY2luZyBhIHdhcm5pbmcsIGl0J3MgcmVhbGx5IGluaXRpYWxpemVkIGxh
dGVyICovCi0gICBtZW14ID0gMDsKLSAgIGZvciAoaT0wO2k8TjtpKyspCi0gICB7Ci0gICAgICBm
bG9hdCB0bXA7Ci0gICAgICBvcHVzX3ZhbDMyIHRtcHg7Ci0gICAgICBpbnQgajsKLSAgICAgIHRt
cD1FUFNJTE9OOwotCi0gICAgICBkb3dubWl4KHgsIHN1Yiwgc3ViZnJhbWUsIGkqc3ViZnJhbWUr
b2Zmc2V0LCAwLCAtMiwgQyk7Ci0gICAgICBpZiAoaT09MCkKLSAgICAgICAgIG1lbXggPSBzdWJb
MF07Ci0gICAgICBmb3IgKGo9MDtqPHN1YmZyYW1lO2orKykKLSAgICAgIHsKLSAgICAgICAgIHRt
cHggPSBzdWJbal07Ci0gICAgICAgICB0bXAgKz0gKHRtcHgtbWVteCkqKGZsb2F0KSh0bXB4LW1l
bXgpOwotICAgICAgICAgbWVteCA9IHRtcHg7Ci0gICAgICB9Ci0gICAgICBlW2krcG9zXSA9IHRt
cDsKLSAgICAgIGVfMVtpK3Bvc10gPSAxLmYvdG1wOwotICAgfQotICAgLyogSGFjayB0byBnZXQg
MjAgbXMgd29ya2luZyB3aXRoIEFQUExJQ0FUSU9OX0FVRElPCi0gICAgICBUaGUgcmVhbCBwcm9i
bGVtIGlzIHRoYXQgdGhlIGNvcnJlc3BvbmRpbmcgbWVtb3J5IG5lZWRzIHRvIHVzZSAxLjUgbXMK
LSAgICAgIGZyb20gdGhpcyBmcmFtZSBhbmQgMSBtcyBmcm9tIHRoZSBuZXh0IGZyYW1lICovCi0g
ICBlW2krcG9zXSA9IGVbaStwb3MtMV07Ci0gICBpZiAoYnVmZmVyaW5nKQotICAgICAgTj1JTUlO
KE1BWF9EWU5BTUlDX0ZSQU1FU0laRSwgTisyKTsKLSAgIGJlc3RMTSA9IHRyYW5zaWVudF92aXRl
cmJpKGUsIGVfMSwgTiwgKGludCkoKDEuZisuNWYqdG9uYWxpdHkpKig2MCpDKzQwKSksIGJpdHJh
dGUvNDAwKTsKLSAgIG1lbVswXSA9IGVbMTw8YmVzdExNXTsKLSAgIGlmIChidWZmZXJpbmcpCi0g
ICB7Ci0gICAgICBtZW1bMV0gPSBlWygxPDxiZXN0TE0pKzFdOwotICAgICAgbWVtWzJdID0gZVso
MTw8YmVzdExNKSsyXTsKLSAgIH0KLSAgIHJldHVybiBiZXN0TE07Ci19Ci0KLSNlbmRpZgotCiAj
aWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCiAjaWZkZWYgRklYRURfUE9JTlQKICNkZWZpbmUgUENN
MlZBTCh4KSBGTE9BVDJJTlQxNih4KQogI2Vsc2UKICNkZWZpbmUgUENNMlZBTCh4KSBTQ0FMRUlO
KHgpCiAjZW5kaWYKLXZvaWQgZG93bm1peF9mbG9hdChjb25zdCB2b2lkICpfeCwgb3B1c192YWwz
MiAqc3ViLCBpbnQgc3ViZnJhbWUsIGludCBvZmZzZXQsIGludCBjMSwgaW50IGMyLCBpbnQgQykK
Kwordm9pZCBkb3dubWl4X2Zsb2F0KGNvbnN0IHZvaWQgKl94LCBvcHVzX3ZhbDMyICp5LCBpbnQg
c3ViZnJhbWUsIGludCBvZmZzZXQsIGludCBjMSwgaW50IGMyLCBpbnQgQykKIHsKICAgIGNvbnN0
IGZsb2F0ICp4OwotICAgb3B1c192YWwzMiBzY2FsZTsKICAgIGludCBqOworCiAgICB4ID0gKGNv
bnN0IGZsb2F0ICopX3g7CiAgICBmb3IgKGo9MDtqPHN1YmZyYW1lO2orKykKLSAgICAgIHN1Yltq
XSA9IFBDTTJWQUwoeFsoaitvZmZzZXQpKkMrYzFdKTsKKyAgICAgIHlbal0gPSBQQ00yVkFMKHhb
KGorb2Zmc2V0KSpDK2MxXSk7CiAgICBpZiAoYzI+LTEpCiAgICB7CiAgICAgICBmb3IgKGo9MDtq
PHN1YmZyYW1lO2orKykKLSAgICAgICAgIHN1YltqXSArPSBQQ00yVkFMKHhbKGorb2Zmc2V0KSpD
K2MyXSk7CisgICAgICAgICB5W2pdICs9IFBDTTJWQUwoeFsoaitvZmZzZXQpKkMrYzJdKTsKICAg
IH0gZWxzZSBpZiAoYzI9PS0yKQogICAgewogICAgICAgaW50IGM7CiAgICAgICBmb3IgKGM9MTtj
PEM7YysrKQogICAgICAgewogICAgICAgICAgZm9yIChqPTA7ajxzdWJmcmFtZTtqKyspCi0gICAg
ICAgICAgICBzdWJbal0gKz0gUENNMlZBTCh4WyhqK29mZnNldCkqQytjXSk7CisgICAgICAgICAg
ICB5W2pdICs9IFBDTTJWQUwoeFsoaitvZmZzZXQpKkMrY10pOwogICAgICAgfQogICAgfQotI2lm
ZGVmIEZJWEVEX1BPSU5UCi0gICBzY2FsZSA9ICgxPDxTSUdfU0hJRlQpOwotI2Vsc2UKLSAgIHNj
YWxlID0gMS5mOwotI2VuZGlmCi0gICBpZiAoQz09LTIpCi0gICAgICBzY2FsZSAvPSBDOwotICAg
ZWxzZQotICAgICAgc2NhbGUgLz0gMjsKLSAgIGZvciAoaj0wO2o8c3ViZnJhbWU7aisrKQotICAg
ICAgc3ViW2pdICo9IHNjYWxlOwogfQogI2VuZGlmCiAKLXZvaWQgZG93bm1peF9pbnQoY29uc3Qg
dm9pZCAqX3gsIG9wdXNfdmFsMzIgKnN1YiwgaW50IHN1YmZyYW1lLCBpbnQgb2Zmc2V0LCBpbnQg
YzEsIGludCBjMiwgaW50IEMpCit2b2lkIGRvd25taXhfaW50KGNvbnN0IHZvaWQgKl94LCBvcHVz
X3ZhbDMyICp5LCBpbnQgc3ViZnJhbWUsIGludCBvZmZzZXQsIGludCBjMSwgaW50IGMyLCBpbnQg
QykKIHsKICAgIGNvbnN0IG9wdXNfaW50MTYgKng7Ci0gICBvcHVzX3ZhbDMyIHNjYWxlOwogICAg
aW50IGo7CisKICAgIHggPSAoY29uc3Qgb3B1c19pbnQxNiAqKV94OwogICAgZm9yIChqPTA7ajxz
dWJmcmFtZTtqKyspCi0gICAgICBzdWJbal0gPSB4WyhqK29mZnNldCkqQytjMV07CisgICAgICB5
W2pdID0geFsoaitvZmZzZXQpKkMrYzFdOwogICAgaWYgKGMyPi0xKQogICAgewogICAgICAgZm9y
IChqPTA7ajxzdWJmcmFtZTtqKyspCi0gICAgICAgICBzdWJbal0gKz0geFsoaitvZmZzZXQpKkMr
YzJdOworICAgICAgICAgeVtqXSArPSB4WyhqK29mZnNldCkqQytjMl07CiAgICB9IGVsc2UgaWYg
KGMyPT0tMikKICAgIHsKICAgICAgIGludCBjOwogICAgICAgZm9yIChjPTE7YzxDO2MrKykKICAg
ICAgIHsKICAgICAgICAgIGZvciAoaj0wO2o8c3ViZnJhbWU7aisrKQotICAgICAgICAgICAgc3Vi
W2pdICs9IHhbKGorb2Zmc2V0KSpDK2NdOworICAgICAgICAgICAgeVtqXSArPSB4WyhqK29mZnNl
dCkqQytjXTsKICAgICAgIH0KICAgIH0KLSNpZmRlZiBGSVhFRF9QT0lOVAotICAgc2NhbGUgPSAo
MTw8U0lHX1NISUZUKTsKLSNlbHNlCi0gICBzY2FsZSA9IDEuZi8zMjc2ODsKLSNlbmRpZgotICAg
aWYgKEM9PS0yKQotICAgICAgc2NhbGUgLz0gQzsKLSAgIGVsc2UKLSAgICAgIHNjYWxlIC89IDI7
Ci0gICBmb3IgKGo9MDtqPHN1YmZyYW1lO2orKykKLSAgICAgIHN1YltqXSAqPSBzY2FsZTsKIH0K
IAogb3B1c19pbnQzMiBmcmFtZV9zaXplX3NlbGVjdChvcHVzX2ludDMyIGZyYW1lX3NpemUsIGlu
dCB2YXJpYWJsZV9kdXJhdGlvbiwgb3B1c19pbnQzMiBGcykKQEAgLTgxMSw1MyArNjM1LDI0IEBA
IG9wdXNfaW50MzIgZnJhbWVfc2l6ZV9zZWxlY3Qob3B1c19pbnQzMiBmcmFtZV9zaXplLCBpbnQg
dmFyaWFibGVfZHVyYXRpb24sIG9wdXNfCiAgICAgICByZXR1cm4gLTE7CiAgICBpZiAodmFyaWFi
bGVfZHVyYXRpb24gPT0gT1BVU19GUkFNRVNJWkVfQVJHKQogICAgICAgbmV3X3NpemUgPSBmcmFt
ZV9zaXplOwotICAgZWxzZSBpZiAodmFyaWFibGVfZHVyYXRpb24gPT0gT1BVU19GUkFNRVNJWkVf
VkFSSUFCTEUpCi0gICAgICBuZXdfc2l6ZSA9IEZzLzUwOwotICAgZWxzZSBpZiAodmFyaWFibGVf
ZHVyYXRpb24gPj0gT1BVU19GUkFNRVNJWkVfMl81X01TICYmIHZhcmlhYmxlX2R1cmF0aW9uIDw9
IE9QVVNfRlJBTUVTSVpFXzYwX01TKQotICAgICAgbmV3X3NpemUgPSBJTUlOKDMqRnMvNTAsIChG
cy80MDApPDwodmFyaWFibGVfZHVyYXRpb24tT1BVU19GUkFNRVNJWkVfMl81X01TKSk7CisgICBl
bHNlIGlmICh2YXJpYWJsZV9kdXJhdGlvbiA+PSBPUFVTX0ZSQU1FU0laRV8yXzVfTVMgJiYgdmFy
aWFibGVfZHVyYXRpb24gPD0gT1BVU19GUkFNRVNJWkVfMTIwX01TKQorICAgeworICAgICAgaWYg
KHZhcmlhYmxlX2R1cmF0aW9uIDw9IE9QVVNfRlJBTUVTSVpFXzQwX01TKQorICAgICAgICAgbmV3
X3NpemUgPSAoRnMvNDAwKTw8KHZhcmlhYmxlX2R1cmF0aW9uLU9QVVNfRlJBTUVTSVpFXzJfNV9N
Uyk7CisgICAgICBlbHNlCisgICAgICAgICBuZXdfc2l6ZSA9ICh2YXJpYWJsZV9kdXJhdGlvbi1P
UFVTX0ZSQU1FU0laRV8yXzVfTVMtMikqRnMvNTA7CisgICB9CiAgICBlbHNlCiAgICAgICByZXR1
cm4gLTE7CiAgICBpZiAobmV3X3NpemU+ZnJhbWVfc2l6ZSkKICAgICAgIHJldHVybiAtMTsKLSAg
IGlmICg0MDAqbmV3X3NpemUhPUZzICYmIDIwMCpuZXdfc2l6ZSE9RnMgJiYgMTAwKm5ld19zaXpl
IT1GcyAmJgotICAgICAgICAgICAgNTAqbmV3X3NpemUhPUZzICYmIDI1Km5ld19zaXplIT1GcyAm
JiA1MCpuZXdfc2l6ZSE9MypGcykKKyAgIGlmICg0MDAqbmV3X3NpemUhPUZzICAgJiYgMjAwKm5l
d19zaXplIT1GcyAgICYmIDEwMCpuZXdfc2l6ZSE9RnMgICAmJgorICAgICAgICA1MCpuZXdfc2l6
ZSE9RnMgICAmJiAgMjUqbmV3X3NpemUhPUZzICAgJiYgIDUwKm5ld19zaXplIT0zKkZzICYmCisg
ICAgICAgIDUwKm5ld19zaXplIT00KkZzICYmICA1MCpuZXdfc2l6ZSE9NSpGcyAmJiAgNTAqbmV3
X3NpemUhPTYqRnMpCiAgICAgICByZXR1cm4gLTE7CiAgICByZXR1cm4gbmV3X3NpemU7CiB9CiAK
LW9wdXNfaW50MzIgY29tcHV0ZV9mcmFtZV9zaXplKGNvbnN0IHZvaWQgKmFuYWx5c2lzX3BjbSwg
aW50IGZyYW1lX3NpemUsCi0gICAgICBpbnQgdmFyaWFibGVfZHVyYXRpb24sIGludCBDLCBvcHVz
X2ludDMyIEZzLCBpbnQgYml0cmF0ZV9icHMsCi0gICAgICBpbnQgZGVsYXlfY29tcGVuc2F0aW9u
LCBkb3dubWl4X2Z1bmMgZG93bm1peAotI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQotICAgICAg
LCBmbG9hdCAqc3ViZnJhbWVfbWVtCi0jZW5kaWYKLSAgICAgICkKLXsKLSNpZm5kZWYgRElTQUJM
RV9GTE9BVF9BUEkKLSAgIGlmICh2YXJpYWJsZV9kdXJhdGlvbiA9PSBPUFVTX0ZSQU1FU0laRV9W
QVJJQUJMRSAmJiBmcmFtZV9zaXplID49IEZzLzIwMCkKLSAgIHsKLSAgICAgIGludCBMTSA9IDM7
Ci0gICAgICBMTSA9IG9wdGltaXplX2ZyYW1lc2l6ZShhbmFseXNpc19wY20sIGZyYW1lX3NpemUs
IEMsIEZzLCBiaXRyYXRlX2JwcywKLSAgICAgICAgICAgIDAsIHN1YmZyYW1lX21lbSwgZGVsYXlf
Y29tcGVuc2F0aW9uLCBkb3dubWl4KTsKLSAgICAgIHdoaWxlICgoRnMvNDAwPDxMTSk+ZnJhbWVf
c2l6ZSkKLSAgICAgICAgIExNLS07Ci0gICAgICBmcmFtZV9zaXplID0gKEZzLzQwMDw8TE0pOwot
ICAgfSBlbHNlCi0jZWxzZQotICAgKHZvaWQpYW5hbHlzaXNfcGNtOwotICAgKHZvaWQpQzsKLSAg
ICh2b2lkKWJpdHJhdGVfYnBzOwotICAgKHZvaWQpZGVsYXlfY29tcGVuc2F0aW9uOwotICAgKHZv
aWQpZG93bm1peDsKLSNlbmRpZgotICAgewotICAgICAgZnJhbWVfc2l6ZSA9IGZyYW1lX3NpemVf
c2VsZWN0KGZyYW1lX3NpemUsIHZhcmlhYmxlX2R1cmF0aW9uLCBGcyk7Ci0gICB9Ci0gICBpZiAo
ZnJhbWVfc2l6ZTwwKQotICAgICAgcmV0dXJuIC0xOwotICAgcmV0dXJuIGZyYW1lX3NpemU7Ci19
Ci0KIG9wdXNfdmFsMTYgY29tcHV0ZV9zdGVyZW9fd2lkdGgoY29uc3Qgb3B1c192YWwxNiAqcGNt
LCBpbnQgZnJhbWVfc2l6ZSwgb3B1c19pbnQzMiBGcywgU3RlcmVvV2lkdGhTdGF0ZSAqbWVtKQog
ewogICAgb3B1c192YWwzMiB4eCwgeHksIHl5OwpAQCAtOTM0LDYgKzcyOSwzNDcgQEAgb3B1c192
YWwxNiBjb21wdXRlX3N0ZXJlb193aWR0aChjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFt
ZV9zaXplLCBvcHVzX2ludDMKICAgIHJldHVybiBFWFRSQUNUMTYoTUlOMzIoUTE1T05FLCBNVUxU
MTZfMTYoMjAsIG1lbS0+bWF4X2ZvbGxvd2VyKSkpOwogfQogCitzdGF0aWMgaW50IGRlY2lkZV9m
ZWMoaW50IHVzZUluQmFuZEZFQywgaW50IFBhY2tldExvc3NfcGVyYywgaW50IGxhc3RfZmVjLCBp
bnQgbW9kZSwgaW50ICpiYW5kd2lkdGgsIG9wdXNfaW50MzIgcmF0ZSkKK3sKKyAgIGludCBvcmln
X2JhbmR3aWR0aDsKKyAgIGlmICghdXNlSW5CYW5kRkVDIHx8IFBhY2tldExvc3NfcGVyYyA9PSAw
IHx8IG1vZGUgPT0gTU9ERV9DRUxUX09OTFkpCisgICAgICByZXR1cm4gMDsKKyAgIG9yaWdfYmFu
ZHdpZHRoID0gKmJhbmR3aWR0aDsKKyAgIGZvciAoOzspCisgICB7CisgICAgICBvcHVzX2ludDMy
IGh5c3RlcmVzaXM7CisgICAgICBvcHVzX2ludDMyIExCUlJfcmF0ZV90aHJlc19icHM7CisgICAg
ICAvKiBDb21wdXRlIHRocmVzaG9sZCBmb3IgdXNpbmcgRkVDIGF0IHRoZSBjdXJyZW50IGJhbmR3
aWR0aCBzZXR0aW5nICovCisgICAgICBMQlJSX3JhdGVfdGhyZXNfYnBzID0gZmVjX3RocmVzaG9s
ZHNbMiooKmJhbmR3aWR0aCAtIE9QVVNfQkFORFdJRFRIX05BUlJPV0JBTkQpXTsKKyAgICAgIGh5
c3RlcmVzaXMgPSBmZWNfdGhyZXNob2xkc1syKigqYmFuZHdpZHRoIC0gT1BVU19CQU5EV0lEVEhf
TkFSUk9XQkFORCkgKyAxXTsKKyAgICAgIGlmIChsYXN0X2ZlYyA9PSAxKSBMQlJSX3JhdGVfdGhy
ZXNfYnBzIC09IGh5c3RlcmVzaXM7CisgICAgICBpZiAobGFzdF9mZWMgPT0gMCkgTEJSUl9yYXRl
X3RocmVzX2JwcyArPSBoeXN0ZXJlc2lzOworICAgICAgTEJSUl9yYXRlX3RocmVzX2JwcyA9IHNp
bGtfU01VTFdCKCBzaWxrX01VTCggTEJSUl9yYXRlX3RocmVzX2JwcywKKyAgICAgICAgICAgIDEy
NSAtIHNpbGtfbWluKCBQYWNrZXRMb3NzX3BlcmMsIDI1ICkgKSwgU0lMS19GSVhfQ09OU1QoIDAu
MDEsIDE2ICkgKTsKKyAgICAgIC8qIElmIGxvc3MgPD0gNSUsIHdlIGxvb2sgYXQgd2hldGhlciB3
ZSBoYXZlIGVub3VnaCByYXRlIHRvIGVuYWJsZSBGRUMuCisgICAgICAgICBJZiBsb3NzID4gNSUs
IHdlIGRlY3JlYXNlIHRoZSBiYW5kd2lkdGggdW50aWwgd2UgY2FuIGVuYWJsZSBGRUMuICovCisg
ICAgICBpZiAocmF0ZSA+IExCUlJfcmF0ZV90aHJlc19icHMpCisgICAgICAgICByZXR1cm4gMTsK
KyAgICAgIGVsc2UgaWYgKFBhY2tldExvc3NfcGVyYyA8PSA1KQorICAgICAgICAgcmV0dXJuIDA7
CisgICAgICBlbHNlIGlmICgqYmFuZHdpZHRoID4gT1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORCkK
KyAgICAgICAgICgqYmFuZHdpZHRoKS0tOworICAgICAgZWxzZQorICAgICAgICAgYnJlYWs7Cisg
ICB9CisgICAvKiBDb3VsZG4ndCBmaW5kIGFueSBiYW5kd2lkdGggdG8gZW5hYmxlIEZFQywga2Vl
cCBvcmlnaW5hbCBiYW5kd2lkdGguICovCisgICAqYmFuZHdpZHRoID0gb3JpZ19iYW5kd2lkdGg7
CisgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludCBjb21wdXRlX3NpbGtfcmF0ZV9mb3JfaHli
cmlkKGludCByYXRlLCBpbnQgYmFuZHdpZHRoLCBpbnQgZnJhbWUyMG1zLCBpbnQgdmJyLCBpbnQg
ZmVjKSB7CisgICBpbnQgZW50cnk7CisgICBpbnQgaTsKKyAgIGludCBOOworICAgaW50IHNpbGtf
cmF0ZTsKKyAgIHN0YXRpYyBpbnQgcmF0ZV90YWJsZVtdWzVdID0geworICAvKiAgfHRvdGFsfCB8
LS0tLS0tLS0gU0lMSy0tLS0tLS0tLS0tLXwKKyAgICAgICAgICAgICAgfC0tIE5vIEZFQyAtfCB8
LS0tIEZFQyAtLS18CisgICAgICAgICAgICAgICAxMG1zICAgMjBtcyAgIDEwbXMgICAyMG1zICov
CisgICAgICB7ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwfSwKKyAgICAgIHsxMjAw
MCwgMTAwMDAsIDEwMDAwLCAxMTAwMCwgMTEwMDB9LAorICAgICAgezE2MDAwLCAxMzUwMCwgMTM1
MDAsIDE1MDAwLCAxNTAwMH0sCisgICAgICB7MjAwMDAsIDE2MDAwLCAxNjAwMCwgMTgwMDAsIDE4
MDAwfSwKKyAgICAgIHsyNDAwMCwgMTgwMDAsIDE4MDAwLCAyMTAwMCwgMjEwMDB9LAorICAgICAg
ezMyMDAwLCAyMjAwMCwgMjIwMDAsIDI4MDAwLCAyODAwMH0sCisgICAgICB7NjQwMDAsIDM4MDAw
LCAzODAwMCwgNTAwMDAsIDUwMDAwfQorICAgfTsKKyAgIGVudHJ5ID0gMSArIGZyYW1lMjBtcyAr
IDIqZmVjOworICAgTiA9IHNpemVvZihyYXRlX3RhYmxlKS9zaXplb2YocmF0ZV90YWJsZVswXSk7
CisgICBmb3IgKGk9MTtpPE47aSsrKQorICAgeworICAgICAgaWYgKHJhdGVfdGFibGVbaV1bMF0g
PiByYXRlKSBicmVhazsKKyAgIH0KKyAgIGlmIChpID09IE4pCisgICB7CisgICAgICBzaWxrX3Jh
dGUgPSByYXRlX3RhYmxlW2ktMV1bZW50cnldOworICAgICAgLyogRm9yIG5vdywganVzdCBnaXZl
IDUwJSBvZiB0aGUgZXh0cmEgYml0cyB0byBTSUxLLiAqLworICAgICAgc2lsa19yYXRlICs9IChy
YXRlLXJhdGVfdGFibGVbaS0xXVswXSkvMjsKKyAgIH0gZWxzZSB7CisgICAgICBvcHVzX2ludDMy
IGxvLCBoaSwgeDAsIHgxOworICAgICAgbG8gPSByYXRlX3RhYmxlW2ktMV1bZW50cnldOworICAg
ICAgaGkgPSByYXRlX3RhYmxlW2ldW2VudHJ5XTsKKyAgICAgIHgwID0gcmF0ZV90YWJsZVtpLTFd
WzBdOworICAgICAgeDEgPSByYXRlX3RhYmxlW2ldWzBdOworICAgICAgc2lsa19yYXRlID0gKGxv
Kih4MS1yYXRlKSArIGhpKihyYXRlLXgwKSkvKHgxLXgwKTsKKyAgIH0KKyAgIGlmICghdmJyKQor
ICAgeworICAgICAgLyogVGlueSBib29zdCB0byBTSUxLIGZvciBDQlIuIFdlIHNob3VsZCBwcm9i
YWJseSB0dW5lIHRoaXMgYmV0dGVyLiAqLworICAgICAgc2lsa19yYXRlICs9IDEwMDsKKyAgIH0K
KyAgIGlmIChiYW5kd2lkdGg9PU9QVVNfQkFORFdJRFRIX1NVUEVSV0lERUJBTkQpCisgICAgICBz
aWxrX3JhdGUgKz0gMzAwOworICAgcmV0dXJuIHNpbGtfcmF0ZTsKK30KKworLyogUmV0dXJucyB0
aGUgZXF1aXZhbGVudCBiaXRyYXRlIGNvcnJlc3BvbmRpbmcgdG8gMjAgbXMgZnJhbWVzLAorICAg
Y29tcGxleGl0eSAxMCBWQlIgb3BlcmF0aW9uLiAqLworc3RhdGljIG9wdXNfaW50MzIgY29tcHV0
ZV9lcXVpdl9yYXRlKG9wdXNfaW50MzIgYml0cmF0ZSwgaW50IGNoYW5uZWxzLAorICAgICAgaW50
IGZyYW1lX3JhdGUsIGludCB2YnIsIGludCBtb2RlLCBpbnQgY29tcGxleGl0eSwgaW50IGxvc3Mp
Cit7CisgICBvcHVzX2ludDMyIGVxdWl2OworICAgZXF1aXYgPSBiaXRyYXRlOworICAgLyogVGFr
ZSBpbnRvIGFjY291bnQgb3ZlcmhlYWQgZnJvbSBzbWFsbGVyIGZyYW1lcy4gKi8KKyAgIGVxdWl2
IC09ICg0MCpjaGFubmVscysyMCkqKGZyYW1lX3JhdGUgLSA1MCk7CisgICAvKiBDQlIgaXMgYWJv
dXQgYSA4JSBwZW5hbHR5IGZvciBib3RoIFNJTEsgYW5kIENFTFQuICovCisgICBpZiAoIXZicikK
KyAgICAgIGVxdWl2IC09IGVxdWl2LzEyOworICAgLyogQ29tcGxleGl0eSBtYWtlcyBhYm91dCAx
MCUgZGlmZmVyZW5jZSAoZnJvbSAwIHRvIDEwKSBpbiBnZW5lcmFsLiAqLworICAgZXF1aXYgPSBl
cXVpdiAqICg5MCtjb21wbGV4aXR5KS8xMDA7CisgICBpZiAobW9kZSA9PSBNT0RFX1NJTEtfT05M
WSB8fCBtb2RlID09IE1PREVfSFlCUklEKQorICAgeworICAgICAgLyogU0lMSyBjb21wbGV4aXR5
IDAtMSB1c2VzIHRoZSBub24tZGVsYXllZC1kZWNpc2lvbiBOU1EsIHdoaWNoCisgICAgICAgICBj
b3N0cyBhYm91dCAyMCUuICovCisgICAgICBpZiAoY29tcGxleGl0eTwyKQorICAgICAgICAgZXF1
aXYgPSBlcXVpdio0LzU7CisgICAgICBlcXVpdiAtPSBlcXVpdipsb3NzLyg2Kmxvc3MgKyAxMCk7
CisgICB9IGVsc2UgaWYgKG1vZGUgPT0gTU9ERV9DRUxUX09OTFkpIHsKKyAgICAgIC8qIENFTFQg
Y29tcGxleGl0eSAwLTQgZG9lc24ndCBoYXZlIHRoZSBwaXRjaCBmaWx0ZXIsIHdoaWNoIGNvc3Rz
CisgICAgICAgICBhYm91dCAxMCUuICovCisgICAgICBpZiAoY29tcGxleGl0eTw1KQorICAgICAg
ICAgZXF1aXYgPSBlcXVpdio5LzEwOworICAgfSBlbHNlIHsKKyAgICAgIC8qIE1vZGUgbm90IGtu
b3duIHlldCAqLworICAgICAgLyogSGFsZiB0aGUgU0lMSyBsb3NzKi8KKyAgICAgIGVxdWl2IC09
IGVxdWl2Kmxvc3MvKDEyKmxvc3MgKyAyMCk7CisgICB9CisgICByZXR1cm4gZXF1aXY7Cit9CisK
KyNpZm5kZWYgRElTQUJMRV9GTE9BVF9BUEkKKworc3RhdGljIGludCBpc19kaWdpdGFsX3NpbGVu
Y2UoY29uc3Qgb3B1c192YWwxNiogcGNtLCBpbnQgZnJhbWVfc2l6ZSwgaW50IGNoYW5uZWxzLCBp
bnQgbHNiX2RlcHRoKQoreworICAgaW50IHNpbGVuY2UgPSAwOworICAgb3B1c192YWwzMiBzYW1w
bGVfbWF4ID0gMDsKKyNpZmRlZiBNTFBfVFJBSU5JTkcKKyAgIHJldHVybiAwOworI2VuZGlmCisg
ICBzYW1wbGVfbWF4ID0gY2VsdF9tYXhhYnMxNihwY20sIGZyYW1lX3NpemUqY2hhbm5lbHMpOwor
CisjaWZkZWYgRklYRURfUE9JTlQKKyAgIHNpbGVuY2UgPSAoc2FtcGxlX21heCA9PSAwKTsKKyAg
ICh2b2lkKWxzYl9kZXB0aDsKKyNlbHNlCisgICBzaWxlbmNlID0gKHNhbXBsZV9tYXggPD0gKG9w
dXNfdmFsMTYpIDEgLyAoMSA8PCBsc2JfZGVwdGgpKTsKKyNlbmRpZgorCisgICByZXR1cm4gc2ls
ZW5jZTsKK30KKworI2lmZGVmIEZJWEVEX1BPSU5UCitzdGF0aWMgb3B1c192YWwzMiBjb21wdXRl
X2ZyYW1lX2VuZXJneShjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV9zaXplLCBpbnQg
Y2hhbm5lbHMsIGludCBhcmNoKQoreworICAgaW50IGk7CisgICBvcHVzX3ZhbDMyIHNhbXBsZV9t
YXg7CisgICBpbnQgbWF4X3NoaWZ0OworICAgaW50IHNoaWZ0OworICAgb3B1c192YWwzMiBlbmVy
Z3kgPSAwOworICAgaW50IGxlbiA9IGZyYW1lX3NpemUqY2hhbm5lbHM7CisgICAodm9pZClhcmNo
OworICAgLyogTWF4IGFtcGxpdHVkZSBpbiB0aGUgc2lnbmFsICovCisgICBzYW1wbGVfbWF4ID0g
Y2VsdF9tYXhhYnMxNihwY20sIGxlbik7CisKKyAgIC8qIENvbXB1dGUgdGhlIHJpZ2h0IHNoaWZ0
IHJlcXVpcmVkIGluIHRoZSBNQUMgdG8gYXZvaWQgYW4gb3ZlcmZsb3cgKi8KKyAgIG1heF9zaGlm
dCA9IGNlbHRfaWxvZzIobGVuKTsKKyAgIHNoaWZ0ID0gSU1BWCgwLCAoY2VsdF9pbG9nMihzYW1w
bGVfbWF4KSA8PCAxKSArIG1heF9zaGlmdCAtIDI4KTsKKworICAgLyogQ29tcHV0ZSB0aGUgZW5l
cmd5ICovCisgICBmb3IgKGk9MDsgaTxsZW47IGkrKykKKyAgICAgIGVuZXJneSArPSBTSFIzMihN
VUxUMTZfMTYocGNtW2ldLCBwY21baV0pLCBzaGlmdCk7CisKKyAgIC8qIE5vcm1hbGl6ZSBlbmVy
Z3kgYnkgdGhlIGZyYW1lIHNpemUgYW5kIGxlZnQtc2hpZnQgYmFjayB0byB0aGUgb3JpZ2luYWwg
cG9zaXRpb24gKi8KKyAgIGVuZXJneSAvPSBsZW47CisgICBlbmVyZ3kgPSBTSEwzMihlbmVyZ3ks
IHNoaWZ0KTsKKworICAgcmV0dXJuIGVuZXJneTsKK30KKyNlbHNlCitzdGF0aWMgb3B1c192YWwz
MiBjb21wdXRlX2ZyYW1lX2VuZXJneShjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV9z
aXplLCBpbnQgY2hhbm5lbHMsIGludCBhcmNoKQoreworICAgaW50IGxlbiA9IGZyYW1lX3NpemUq
Y2hhbm5lbHM7CisgICByZXR1cm4gY2VsdF9pbm5lcl9wcm9kKHBjbSwgcGNtLCBsZW4sIGFyY2gp
L2xlbjsKK30KKyNlbmRpZgorCisvKiBEZWNpZGVzIGlmIERUWCBzaG91bGQgYmUgdHVybmVkIG9u
ICg9MSkgb3Igb2ZmICg9MCkgKi8KK3N0YXRpYyBpbnQgZGVjaWRlX2R0eF9tb2RlKGZsb2F0IGFj
dGl2aXR5X3Byb2JhYmlsaXR5LCAgICAvKiBwcm9iYWJpbGl0eSB0aGF0IGN1cnJlbnQgZnJhbWUg
Y29udGFpbnMgc3BlZWNoL211c2ljICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
Km5iX25vX2FjdGl2aXR5X2ZyYW1lcywgICAgLyogbnVtYmVyIG9mIGNvbnNlY3V0aXZlIGZyYW1l
cyB3aXRoIG5vIGFjdGl2aXR5ICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHVzX3Zh
bDMyIHBlYWtfc2lnbmFsX2VuZXJneSwgLyogcGVhayBlbmVyZ3kgb2YgZGVzaXJlZCBzaWduYWwg
ZGV0ZWN0ZWQgc28gZmFyICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBvcHVz
X3ZhbDE2ICpwY20sICAgICAgICAgLyogaW5wdXQgcGNtIHNpZ25hbCAqLworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IGZyYW1lX3NpemUsICAgICAgICAgICAgICAgIC8qIGZyYW1lIHNp
emUgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBjaGFubmVscywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludCBpc19zaWxlbmNlLCAgICAgICAgICAgICAgICAgLyogb25s
eSBkaWdpdGFsIHNpbGVuY2UgZGV0ZWN0ZWQgaW4gdGhpcyBmcmFtZSAqLworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IGFyY2gKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKQorewor
ICAgb3B1c192YWwzMiBub2lzZV9lbmVyZ3k7CisKKyAgIGlmICghaXNfc2lsZW5jZSkKKyAgIHsK
KyAgICAgIGlmIChhY3Rpdml0eV9wcm9iYWJpbGl0eSA8IERUWF9BQ1RJVklUWV9USFJFU0hPTEQp
ICAvKiBpcyBub2lzZSAqLworICAgICAgeworICAgICAgICAgbm9pc2VfZW5lcmd5ID0gY29tcHV0
ZV9mcmFtZV9lbmVyZ3kocGNtLCBmcmFtZV9zaXplLCBjaGFubmVscywgYXJjaCk7CisKKyAgICAg
ICAgIC8qIGJ1dCBpcyBzdWZmaWNpZW50bHkgcXVpZXQgKi8KKyAgICAgICAgIGlzX3NpbGVuY2Ug
PSBwZWFrX3NpZ25hbF9lbmVyZ3kgPj0gKFBTRVVET19TTlJfVEhSRVNIT0xEICogbm9pc2VfZW5l
cmd5KTsKKyAgICAgIH0KKyAgIH0KKworICAgaWYgKGlzX3NpbGVuY2UpCisgICB7CisgICAgICAv
KiBUaGUgbnVtYmVyIG9mIGNvbnNlY3V0aXZlIERUWCBmcmFtZXMgc2hvdWxkIGJlIHdpdGhpbiB0
aGUgYWxsb3dlZCBib3VuZHMgKi8KKyAgICAgICgqbmJfbm9fYWN0aXZpdHlfZnJhbWVzKSsrOwor
CisgICAgICBpZiAoKm5iX25vX2FjdGl2aXR5X2ZyYW1lcyA+IE5CX1NQRUVDSF9GUkFNRVNfQkVG
T1JFX0RUWCkKKyAgICAgIHsKKyAgICAgICAgIGlmICgqbmJfbm9fYWN0aXZpdHlfZnJhbWVzIDw9
IChOQl9TUEVFQ0hfRlJBTUVTX0JFRk9SRV9EVFggKyBNQVhfQ09OU0VDVVRJVkVfRFRYKSkKKyAg
ICAgICAgICAgIC8qIFZhbGlkIGZyYW1lIGZvciBEVFghICovCisgICAgICAgICAgICByZXR1cm4g
MTsKKyAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICgqbmJfbm9fYWN0aXZpdHlfZnJhbWVzKSA9
IE5CX1NQRUVDSF9GUkFNRVNfQkVGT1JFX0RUWDsKKyAgICAgIH0KKyAgIH0gZWxzZQorICAgICAg
KCpuYl9ub19hY3Rpdml0eV9mcmFtZXMpID0gMDsKKworICAgcmV0dXJuIDA7Cit9CisKKyNlbmRp
ZgorCitzdGF0aWMgb3B1c19pbnQzMiBlbmNvZGVfbXVsdGlmcmFtZV9wYWNrZXQoT3B1c0VuY29k
ZXIgKnN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IG9wdXNfdmFsMTYgKnBjbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgbmJfZnJhbWVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGludCBmcmFtZV9zaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKmRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgb3B1c19pbnQzMiBvdXRfZGF0YV9ieXRlcywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdG9fY2VsdCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbHNiX2RlcHRoLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBmbG9hdF9hcGkpCit7CisgICBp
bnQgaTsKKyAgIGludCByZXQgPSAwOworICAgVkFSREVDTCh1bnNpZ25lZCBjaGFyLCB0bXBfZGF0
YSk7CisgICBpbnQgYmFrX21vZGUsIGJha19iYW5kd2lkdGgsIGJha19jaGFubmVscywgYmFrX3Rv
X21vbm87CisgICBWQVJERUNMKE9wdXNSZXBhY2tldGl6ZXIsIHJwKTsKKyAgIGludCBtYXhfaGVh
ZGVyX2J5dGVzOworICAgb3B1c19pbnQzMiBieXRlc19wZXJfZnJhbWU7CisgICBvcHVzX2ludDMy
IGNicl9ieXRlczsKKyAgIG9wdXNfaW50MzIgcmVwYWNrZXRpemVfbGVuOworICAgaW50IHRtcF9s
ZW47CisgICBBTExPQ19TVEFDSzsKKworICAgLyogV29yc3QgY2FzZXM6CisgICAgKiAyIGZyYW1l
czogQ29kZSAyIHdpdGggZGlmZmVyZW50IGNvbXByZXNzZWQgc2l6ZXMKKyAgICAqID4yIGZyYW1l
czogQ29kZSAzIFZCUiAqLworICAgbWF4X2hlYWRlcl9ieXRlcyA9IG5iX2ZyYW1lcyA9PSAyID8g
MyA6ICgyKyhuYl9mcmFtZXMtMSkqMik7CisKKyAgIGlmIChzdC0+dXNlX3ZiciB8fCBzdC0+dXNl
cl9iaXRyYXRlX2Jwcz09T1BVU19CSVRSQVRFX01BWCkKKyAgICAgIHJlcGFja2V0aXplX2xlbiA9
IG91dF9kYXRhX2J5dGVzOworICAgZWxzZSB7CisgICAgICBjYnJfYnl0ZXMgPSAzKnN0LT5iaXRy
YXRlX2Jwcy8oMyo4KnN0LT5Gcy8oZnJhbWVfc2l6ZSpuYl9mcmFtZXMpKTsKKyAgICAgIHJlcGFj
a2V0aXplX2xlbiA9IElNSU4oY2JyX2J5dGVzLCBvdXRfZGF0YV9ieXRlcyk7CisgICB9CisgICBi
eXRlc19wZXJfZnJhbWUgPSBJTUlOKDEyNzYsIDErKHJlcGFja2V0aXplX2xlbi1tYXhfaGVhZGVy
X2J5dGVzKS9uYl9mcmFtZXMpOworCisgICBBTExPQyh0bXBfZGF0YSwgbmJfZnJhbWVzKmJ5dGVz
X3Blcl9mcmFtZSwgdW5zaWduZWQgY2hhcik7CisgICBBTExPQyhycCwgMSwgT3B1c1JlcGFja2V0
aXplcik7CisgICBvcHVzX3JlcGFja2V0aXplcl9pbml0KHJwKTsKKworICAgYmFrX21vZGUgPSBz
dC0+dXNlcl9mb3JjZWRfbW9kZTsKKyAgIGJha19iYW5kd2lkdGggPSBzdC0+dXNlcl9iYW5kd2lk
dGg7CisgICBiYWtfY2hhbm5lbHMgPSBzdC0+Zm9yY2VfY2hhbm5lbHM7CisKKyAgIHN0LT51c2Vy
X2ZvcmNlZF9tb2RlID0gc3QtPm1vZGU7CisgICBzdC0+dXNlcl9iYW5kd2lkdGggPSBzdC0+YmFu
ZHdpZHRoOworICAgc3QtPmZvcmNlX2NoYW5uZWxzID0gc3QtPnN0cmVhbV9jaGFubmVsczsKKwor
ICAgYmFrX3RvX21vbm8gPSBzdC0+c2lsa19tb2RlLnRvTW9ubzsKKyAgIGlmIChiYWtfdG9fbW9u
bykKKyAgICAgIHN0LT5mb3JjZV9jaGFubmVscyA9IDE7CisgICBlbHNlCisgICAgICBzdC0+cHJl
dl9jaGFubmVscyA9IHN0LT5zdHJlYW1fY2hhbm5lbHM7CisKKyAgIGZvciAoaT0wO2k8bmJfZnJh
bWVzO2krKykKKyAgIHsKKyAgICAgIHN0LT5zaWxrX21vZGUudG9Nb25vID0gMDsKKyAgICAgIHN0
LT5ub25maW5hbF9mcmFtZSA9IGk8KG5iX2ZyYW1lcy0xKTsKKworICAgICAgLyogV2hlbiBzd2l0
Y2hpbmcgZnJvbSBTSUxLL0h5YnJpZCB0byBDRUxULCBvbmx5IGFzayBmb3IgYSBzd2l0Y2ggYXQg
dGhlIGxhc3QgZnJhbWUgKi8KKyAgICAgIGlmICh0b19jZWx0ICYmIGk9PW5iX2ZyYW1lcy0xKQor
ICAgICAgICAgc3QtPnVzZXJfZm9yY2VkX21vZGUgPSBNT0RFX0NFTFRfT05MWTsKKworICAgICAg
dG1wX2xlbiA9IG9wdXNfZW5jb2RlX25hdGl2ZShzdCwgcGNtK2kqKHN0LT5jaGFubmVscypmcmFt
ZV9zaXplKSwgZnJhbWVfc2l6ZSwKKyAgICAgICAgIHRtcF9kYXRhK2kqYnl0ZXNfcGVyX2ZyYW1l
LCBieXRlc19wZXJfZnJhbWUsIGxzYl9kZXB0aCwgTlVMTCwgMCwgMCwgMCwgMCwKKyAgICAgICAg
IE5VTEwsIGZsb2F0X2FwaSk7CisKKyAgICAgIGlmICh0bXBfbGVuPDApCisgICAgICB7CisgICAg
ICAgICBSRVNUT1JFX1NUQUNLOworICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJOQUxfRVJST1I7
CisgICAgICB9CisKKyAgICAgIHJldCA9IG9wdXNfcmVwYWNrZXRpemVyX2NhdChycCwgdG1wX2Rh
dGEraSpieXRlc19wZXJfZnJhbWUsIHRtcF9sZW4pOworCisgICAgICBpZiAocmV0PDApCisgICAg
ICB7CisgICAgICAgICBSRVNUT1JFX1NUQUNLOworICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJO
QUxfRVJST1I7CisgICAgICB9CisgICB9CisKKyAgIHJldCA9IG9wdXNfcmVwYWNrZXRpemVyX291
dF9yYW5nZV9pbXBsKHJwLCAwLCBuYl9mcmFtZXMsIGRhdGEsIHJlcGFja2V0aXplX2xlbiwgMCwg
IXN0LT51c2VfdmJyKTsKKworICAgaWYgKHJldDwwKQorICAgeworICAgICAgUkVTVE9SRV9TVEFD
SzsKKyAgICAgIHJldHVybiBPUFVTX0lOVEVSTkFMX0VSUk9SOworICAgfQorCisgICAvKiBEaXNj
YXJkIGNvbmZpZ3MgdGhhdCB3ZXJlIGZvcmNlZCBsb2NhbGx5IGZvciB0aGUgcHVycG9zZSBvZiBy
ZXBhY2tldGl6YXRpb24gKi8KKyAgIHN0LT51c2VyX2ZvcmNlZF9tb2RlID0gYmFrX21vZGU7Cisg
ICBzdC0+dXNlcl9iYW5kd2lkdGggPSBiYWtfYmFuZHdpZHRoOworICAgc3QtPmZvcmNlX2NoYW5u
ZWxzID0gYmFrX2NoYW5uZWxzOworICAgc3QtPnNpbGtfbW9kZS50b01vbm8gPSBiYWtfdG9fbW9u
bzsKKworICAgUkVTVE9SRV9TVEFDSzsKKyAgIHJldHVybiByZXQ7Cit9CisKK3N0YXRpYyBpbnQg
Y29tcHV0ZV9yZWR1bmRhbmN5X2J5dGVzKG9wdXNfaW50MzIgbWF4X2RhdGFfYnl0ZXMsIG9wdXNf
aW50MzIgYml0cmF0ZV9icHMsIGludCBmcmFtZV9yYXRlLCBpbnQgY2hhbm5lbHMpCit7CisgICBp
bnQgcmVkdW5kYW5jeV9ieXRlc19jYXA7CisgICBpbnQgcmVkdW5kYW5jeV9ieXRlczsKKyAgIG9w
dXNfaW50MzIgcmVkdW5kYW5jeV9yYXRlOworICAgaW50IGJhc2VfYml0czsKKyAgIG9wdXNfaW50
MzIgYXZhaWxhYmxlX2JpdHM7CisgICBiYXNlX2JpdHMgPSAoNDAqY2hhbm5lbHMrMjApOworCisg
ICAvKiBFcXVpdmFsZW50IHJhdGUgZm9yIDUgbXMgZnJhbWVzLiAqLworICAgcmVkdW5kYW5jeV9y
YXRlID0gYml0cmF0ZV9icHMgKyBiYXNlX2JpdHMqKDIwMCAtIGZyYW1lX3JhdGUpOworICAgLyog
Rm9yIFZCUiwgZnVydGhlciBpbmNyZWFzZSB0aGUgYml0cmF0ZSBpZiB3ZSBjYW4gYWZmb3JkIGl0
LiBJdCdzIHByZXR0eSBzaG9ydAorICAgICAgYW5kIHdlJ2xsIGF2b2lkIGFydGVmYWN0cy4gKi8K
KyAgIHJlZHVuZGFuY3lfcmF0ZSA9IDMqcmVkdW5kYW5jeV9yYXRlLzI7CisgICByZWR1bmRhbmN5
X2J5dGVzID0gcmVkdW5kYW5jeV9yYXRlLzE2MDA7CisKKyAgIC8qIENvbXB1dGUgdGhlIG1heCBy
YXRlIHdlIGNhbiB1c2UgZ2l2ZW4gQ0JSIG9yIFZCUiB3aXRoIGNhcC4gKi8KKyAgIGF2YWlsYWJs
ZV9iaXRzID0gbWF4X2RhdGFfYnl0ZXMqOCAtIDIqYmFzZV9iaXRzOworICAgcmVkdW5kYW5jeV9i
eXRlc19jYXAgPSAoYXZhaWxhYmxlX2JpdHMqMjQwLygyNDArNDgwMDAvZnJhbWVfcmF0ZSkgKyBi
YXNlX2JpdHMpLzg7CisgICByZWR1bmRhbmN5X2J5dGVzID0gSU1JTihyZWR1bmRhbmN5X2J5dGVz
LCByZWR1bmRhbmN5X2J5dGVzX2NhcCk7CisgICAvKiBJdCB3ZSBjYW4ndCBnZXQgZW5vdWdoIGJp
dHMgZm9yIHJlZHVuZGFuY3kgdG8gYmUgd29ydGggaXQsIHJlbHkgb24gdGhlIGRlY29kZXIgUExD
LiAqLworICAgaWYgKHJlZHVuZGFuY3lfYnl0ZXMgPiA0ICsgOCpjaGFubmVscykKKyAgICAgIHJl
ZHVuZGFuY3lfYnl0ZXMgPSBJTUlOKDI1NywgcmVkdW5kYW5jeV9ieXRlcyk7CisgICBlbHNlCisg
ICAgICByZWR1bmRhbmN5X2J5dGVzID0gMDsKKyAgIHJldHVybiByZWR1bmRhbmN5X2J5dGVzOwor
fQorCiBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0
IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lX3NpemUsCiAgICAgICAgICAgICAgICAgdW5zaWdu
ZWQgY2hhciAqZGF0YSwgb3B1c19pbnQzMiBvdXRfZGF0YV9ieXRlcywgaW50IGxzYl9kZXB0aCwK
ICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICphbmFseXNpc19wY20sIG9wdXNfaW50MzIgYW5h
bHlzaXNfc2l6ZSwgaW50IGMxLCBpbnQgYzIsCkBAIC05NzEsNiArMTEwNyw3IEBAIG9wdXNfaW50
MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAq
cGNtLCBpbnQgZnJhbWVfCiAgICAgQW5hbHlzaXNJbmZvIGFuYWx5c2lzX2luZm87CiAgICAgaW50
IGFuYWx5c2lzX3JlYWRfcG9zX2Jhaz0tMTsKICAgICBpbnQgYW5hbHlzaXNfcmVhZF9zdWJmcmFt
ZV9iYWs9LTE7CisgICAgaW50IGlzX3NpbGVuY2UgPSAwOwogI2VuZGlmCiAgICAgVkFSREVDTChv
cHVzX3ZhbDE2LCB0bXBfcHJlZmlsbCk7CiAKQEAgLTk3OSwxNSArMTExNiwxOSBAQCBvcHVzX2lu
dDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYg
KnBjbSwgaW50IGZyYW1lXwogICAgIG1heF9kYXRhX2J5dGVzID0gSU1JTigxMjc2LCBvdXRfZGF0
YV9ieXRlcyk7CiAKICAgICBzdC0+cmFuZ2VGaW5hbCA9IDA7Ci0gICAgaWYgKCghc3QtPnZhcmlh
YmxlX2R1cmF0aW9uICYmIDQwMCpmcmFtZV9zaXplICE9IHN0LT5GcyAmJiAyMDAqZnJhbWVfc2l6
ZSAhPSBzdC0+RnMgJiYgMTAwKmZyYW1lX3NpemUgIT0gc3QtPkZzICYmCi0gICAgICAgICA1MCpm
cmFtZV9zaXplICE9IHN0LT5GcyAmJiAgMjUqZnJhbWVfc2l6ZSAhPSBzdC0+RnMgJiYgIDUwKmZy
YW1lX3NpemUgIT0gMypzdC0+RnMpCi0gICAgICAgICB8fCAoNDAwKmZyYW1lX3NpemUgPCBzdC0+
RnMpCi0gICAgICAgICB8fCBtYXhfZGF0YV9ieXRlczw9MAotICAgICAgICAgKQorICAgIGlmIChm
cmFtZV9zaXplIDw9IDAgfHwgbWF4X2RhdGFfYnl0ZXMgPD0gMCkKICAgICB7CiAgICAgICAgUkVT
VE9SRV9TVEFDSzsKICAgICAgICByZXR1cm4gT1BVU19CQURfQVJHOwogICAgIH0KKworICAgIC8q
IENhbm5vdCBlbmNvZGUgMTAwIG1zIGluIDEgYnl0ZSAqLworICAgIGlmIChtYXhfZGF0YV9ieXRl
cz09MSAmJiBzdC0+RnM9PShmcmFtZV9zaXplKjEwKSkKKyAgICB7CisgICAgICBSRVNUT1JFX1NU
QUNLOworICAgICAgcmV0dXJuIE9QVVNfQlVGRkVSX1RPT19TTUFMTDsKKyAgICB9CisKICAgICBz
aWxrX2VuYyA9IChjaGFyKilzdCtzdC0+c2lsa19lbmNfb2Zmc2V0OwogICAgIGNlbHRfZW5jID0g
KENFTFRFbmNvZGVyKikoKGNoYXIqKXN0K3N0LT5jZWx0X2VuY19vZmZzZXQpOwogICAgIGlmIChz
dC0+YXBwbGljYXRpb24gPT0gT1BVU19BUFBMSUNBVElPTl9SRVNUUklDVEVEX0xPV0RFTEFZKQpA
QCAtMTAwMSwyNSArMTE0Miw0MiBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVz
RW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogI2lmbmRlZiBE
SVNBQkxFX0ZMT0FUX0FQSQogICAgIGFuYWx5c2lzX2luZm8udmFsaWQgPSAwOwogI2lmZGVmIEZJ
WEVEX1BPSU5UCi0gICAgaWYgKHN0LT5zaWxrX21vZGUuY29tcGxleGl0eSA+PSAxMCAmJiBzdC0+
RnM9PTQ4MDAwKQorICAgIGlmIChzdC0+c2lsa19tb2RlLmNvbXBsZXhpdHkgPj0gMTAgJiYgc3Qt
PkZzPj0xNjAwMCkKICNlbHNlCi0gICAgaWYgKHN0LT5zaWxrX21vZGUuY29tcGxleGl0eSA+PSA3
ICYmIHN0LT5Gcz09NDgwMDApCisgICAgaWYgKHN0LT5zaWxrX21vZGUuY29tcGxleGl0eSA+PSA3
ICYmIHN0LT5Gcz49MTYwMDApCiAjZW5kaWYKICAgICB7Ci0gICAgICAgYW5hbHlzaXNfcmVhZF9w
b3NfYmFrID0gc3QtPmFuYWx5c2lzLnJlYWRfcG9zOwotICAgICAgIGFuYWx5c2lzX3JlYWRfc3Vi
ZnJhbWVfYmFrID0gc3QtPmFuYWx5c2lzLnJlYWRfc3ViZnJhbWU7Ci0gICAgICAgcnVuX2FuYWx5
c2lzKCZzdC0+YW5hbHlzaXMsIGNlbHRfbW9kZSwgYW5hbHlzaXNfcGNtLCBhbmFseXNpc19zaXpl
LCBmcmFtZV9zaXplLAotICAgICAgICAgICAgIGMxLCBjMiwgYW5hbHlzaXNfY2hhbm5lbHMsIHN0
LT5GcywKLSAgICAgICAgICAgICBsc2JfZGVwdGgsIGRvd25taXgsICZhbmFseXNpc19pbmZvKTsK
KyAgICAgICBpZiAoaXNfZGlnaXRhbF9zaWxlbmNlKHBjbSwgZnJhbWVfc2l6ZSwgc3QtPmNoYW5u
ZWxzLCBsc2JfZGVwdGgpKQorICAgICAgIHsKKyAgICAgICAgICBpc19zaWxlbmNlID0gMTsKKyAg
ICAgICB9IGVsc2UgeworICAgICAgICAgIGFuYWx5c2lzX3JlYWRfcG9zX2JhayA9IHN0LT5hbmFs
eXNpcy5yZWFkX3BvczsKKyAgICAgICAgICBhbmFseXNpc19yZWFkX3N1YmZyYW1lX2JhayA9IHN0
LT5hbmFseXNpcy5yZWFkX3N1YmZyYW1lOworICAgICAgICAgIHJ1bl9hbmFseXNpcygmc3QtPmFu
YWx5c2lzLCBjZWx0X21vZGUsIGFuYWx5c2lzX3BjbSwgYW5hbHlzaXNfc2l6ZSwgZnJhbWVfc2l6
ZSwKKyAgICAgICAgICAgICAgICBjMSwgYzIsIGFuYWx5c2lzX2NoYW5uZWxzLCBzdC0+RnMsCisg
ICAgICAgICAgICAgICAgbHNiX2RlcHRoLCBkb3dubWl4LCAmYW5hbHlzaXNfaW5mbyk7CisgICAg
ICAgfQorCisgICAgICAgLyogVHJhY2sgdGhlIHBlYWsgc2lnbmFsIGVuZXJneSAqLworICAgICAg
IGlmICghaXNfc2lsZW5jZSAmJiBhbmFseXNpc19pbmZvLmFjdGl2aXR5X3Byb2JhYmlsaXR5ID4g
RFRYX0FDVElWSVRZX1RIUkVTSE9MRCkKKyAgICAgICAgICBzdC0+cGVha19zaWduYWxfZW5lcmd5
ID0gTUFYMzIoTVVMVDE2XzMyX1ExNShRQ09OU1QxNigwLjk5OWYsIDE1KSwgc3QtPnBlYWtfc2ln
bmFsX2VuZXJneSksCisgICAgICAgICAgICAgICAgY29tcHV0ZV9mcmFtZV9lbmVyZ3kocGNtLCBm
cmFtZV9zaXplLCBzdC0+Y2hhbm5lbHMsIHN0LT5hcmNoKSk7CiAgICAgfQogI2Vsc2UKICAgICAo
dm9pZClhbmFseXNpc19wY207CiAgICAgKHZvaWQpYW5hbHlzaXNfc2l6ZTsKKyAgICAodm9pZClj
MTsKKyAgICAodm9pZCljMjsKKyAgICAodm9pZClhbmFseXNpc19jaGFubmVsczsKKyAgICAodm9p
ZClkb3dubWl4OwogI2VuZGlmCiAKLSAgICBzdC0+dm9pY2VfcmF0aW8gPSAtMTsKLQogI2lmbmRl
ZiBESVNBQkxFX0ZMT0FUX0FQSQorICAgIC8qIFJlc2V0IHZvaWNlX3JhdGlvIGlmIHRoaXMgZnJh
bWUgaXMgbm90IHNpbGVudCBvciBpZiBhbmFseXNpcyBpcyBkaXNhYmxlZC4KKyAgICAgKiBPdGhl
cndpc2UsIHByZXNlcnZlIHZvaWNlX3JhdGlvIGZyb20gdGhlIGxhc3Qgbm9uLXNpbGVudCBmcmFt
ZSAqLworICAgIGlmICghaXNfc2lsZW5jZSkKKyAgICAgIHN0LT52b2ljZV9yYXRpbyA9IC0xOwor
CiAgICAgc3QtPmRldGVjdGVkX2JhbmR3aWR0aCA9IDA7CiAgICAgaWYgKGFuYWx5c2lzX2luZm8u
dmFsaWQpCiAgICAgewpAQCAtMTAzOSw2ICsxMTk3LDggQEAgb3B1c19pbnQzMiBvcHVzX2VuY29k
ZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFt
ZV8KICAgICAgICBlbHNlCiAgICAgICAgICAgc3QtPmRldGVjdGVkX2JhbmR3aWR0aCA9IE9QVVNf
QkFORFdJRFRIX0ZVTExCQU5EOwogICAgIH0KKyNlbHNlCisgICAgc3QtPnZvaWNlX3JhdGlvID0g
LTE7CiAjZW5kaWYKIAogICAgIGlmIChzdC0+Y2hhbm5lbHM9PTIgJiYgc3QtPmZvcmNlX2NoYW5u
ZWxzIT0xKQpAQCAtMTA1MiwxMiArMTIxMiwxMyBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25h
dGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwog
ICAgIGlmICghc3QtPnVzZV92YnIpCiAgICAgewogICAgICAgIGludCBjYnJCeXRlczsKLSAgICAg
ICAvKiBNdWx0aXBseSBieSAzIHRvIG1ha2Ugc3VyZSB0aGUgZGl2aXNpb24gaXMgZXhhY3QuICov
Ci0gICAgICAgaW50IGZyYW1lX3JhdGUzID0gMypzdC0+RnMvZnJhbWVfc2l6ZTsKKyAgICAgICAv
KiBNdWx0aXBseSBieSAxMiB0byBtYWtlIHN1cmUgdGhlIGRpdmlzaW9uIGlzIGV4YWN0LiAqLwor
ICAgICAgIGludCBmcmFtZV9yYXRlMTIgPSAxMipzdC0+RnMvZnJhbWVfc2l6ZTsKICAgICAgICAv
KiBXZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0ICJpbnQiIHZhbHVlcyBhbHdheXMgZml0IGluIDE2
IGJpdHMuICovCi0gICAgICAgY2JyQnl0ZXMgPSBJTUlOKCAoMypzdC0+Yml0cmF0ZV9icHMvOCAr
IGZyYW1lX3JhdGUzLzIpL2ZyYW1lX3JhdGUzLCBtYXhfZGF0YV9ieXRlcyk7Ci0gICAgICAgc3Qt
PmJpdHJhdGVfYnBzID0gY2JyQnl0ZXMqKG9wdXNfaW50MzIpZnJhbWVfcmF0ZTMqOC8zOwotICAg
ICAgIG1heF9kYXRhX2J5dGVzID0gY2JyQnl0ZXM7CisgICAgICAgY2JyQnl0ZXMgPSBJTUlOKCAo
MTIqc3QtPmJpdHJhdGVfYnBzLzggKyBmcmFtZV9yYXRlMTIvMikvZnJhbWVfcmF0ZTEyLCBtYXhf
ZGF0YV9ieXRlcyk7CisgICAgICAgc3QtPmJpdHJhdGVfYnBzID0gY2JyQnl0ZXMqKG9wdXNfaW50
MzIpZnJhbWVfcmF0ZTEyKjgvMTI7CisgICAgICAgLyogTWFrZSBzdXJlIHdlIHByb3ZpZGUgYXQg
bGVhc3Qgb25lIGJ5dGUgdG8gYXZvaWQgZmFpbGluZy4gKi8KKyAgICAgICBtYXhfZGF0YV9ieXRl
cyA9IElNQVgoMSwgY2JyQnl0ZXMpOwogICAgIH0KICAgICBpZiAobWF4X2RhdGFfYnl0ZXM8MyB8
fCBzdC0+Yml0cmF0ZV9icHMgPCAzKmZyYW1lX3JhdGUqOAogICAgICAgIHx8IChmcmFtZV9yYXRl
PDUwICYmIChtYXhfZGF0YV9ieXRlcypmcmFtZV9yYXRlPDMwMCB8fCBzdC0+Yml0cmF0ZV9icHMg
PCAyNDAwKSkpCkBAIC0xMDY1LDI1ICsxMjI2LDYzIEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVf
bmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVf
CiAgICAgICAgLypJZiB0aGUgc3BhY2UgaXMgdG9vIGxvdyB0byBkbyBzb21ldGhpbmcgdXNlZnVs
LCBlbWl0ICdQTEMnIGZyYW1lcy4qLwogICAgICAgIGludCB0b2Ntb2RlID0gc3QtPm1vZGU7CiAg
ICAgICAgaW50IGJ3ID0gc3QtPmJhbmR3aWR0aCA9PSAwID8gT1BVU19CQU5EV0lEVEhfTkFSUk9X
QkFORCA6IHN0LT5iYW5kd2lkdGg7CisgICAgICAgaW50IHBhY2tldF9jb2RlID0gMDsKKyAgICAg
ICBpbnQgbnVtX211bHRpZnJhbWVzID0gMDsKKwogICAgICAgIGlmICh0b2Ntb2RlPT0wKQogICAg
ICAgICAgIHRvY21vZGUgPSBNT0RFX1NJTEtfT05MWTsKICAgICAgICBpZiAoZnJhbWVfcmF0ZT4x
MDApCiAgICAgICAgICAgdG9jbW9kZSA9IE1PREVfQ0VMVF9PTkxZOwotICAgICAgIGlmIChmcmFt
ZV9yYXRlIDwgNTApCi0gICAgICAgICAgdG9jbW9kZSA9IE1PREVfU0lMS19PTkxZOworICAgICAg
IC8qIDQwIG1zIC0+IDIgeCAyMCBtcyBpZiBpbiBDRUxUX09OTFkgb3IgSFlCUklEIG1vZGUgKi8K
KyAgICAgICBpZiAoZnJhbWVfcmF0ZT09MjUgJiYgdG9jbW9kZSE9TU9ERV9TSUxLX09OTFkpCisg
ICAgICAgeworICAgICAgICAgIGZyYW1lX3JhdGUgPSA1MDsKKyAgICAgICAgICBwYWNrZXRfY29k
ZSA9IDE7CisgICAgICAgfQorCisgICAgICAgLyogPj0gNjAgbXMgZnJhbWVzICovCisgICAgICAg
aWYgKGZyYW1lX3JhdGU8PTE2KQorICAgICAgIHsKKyAgICAgICAgICAvKiAxIHggNjAgbXMsIDIg
eCA0MCBtcywgMiB4IDYwIG1zICovCisgICAgICAgICAgaWYgKG91dF9kYXRhX2J5dGVzPT0xIHx8
ICh0b2Ntb2RlPT1NT0RFX1NJTEtfT05MWSAmJiBmcmFtZV9yYXRlIT0xMCkpCisgICAgICAgICAg
eworICAgICAgICAgICAgIHRvY21vZGUgPSBNT0RFX1NJTEtfT05MWTsKKworICAgICAgICAgICAg
IHBhY2tldF9jb2RlID0gZnJhbWVfcmF0ZSA8PSAxMjsKKyAgICAgICAgICAgICBmcmFtZV9yYXRl
ID0gZnJhbWVfcmF0ZSA9PSAxMiA/IDI1IDogMTY7CisgICAgICAgICAgfQorICAgICAgICAgIGVs
c2UKKyAgICAgICAgICB7CisgICAgICAgICAgICAgbnVtX211bHRpZnJhbWVzID0gNTAvZnJhbWVf
cmF0ZTsKKyAgICAgICAgICAgICBmcmFtZV9yYXRlID0gNTA7CisgICAgICAgICAgICAgcGFja2V0
X2NvZGUgPSAzOworICAgICAgICAgIH0KKyAgICAgICB9CisKICAgICAgICBpZih0b2Ntb2RlPT1N
T0RFX1NJTEtfT05MWSYmYnc+T1BVU19CQU5EV0lEVEhfV0lERUJBTkQpCiAgICAgICAgICAgYnc9
T1BVU19CQU5EV0lEVEhfV0lERUJBTkQ7CiAgICAgICAgZWxzZSBpZiAodG9jbW9kZT09TU9ERV9D
RUxUX09OTFkmJmJ3PT1PUFVTX0JBTkRXSURUSF9NRURJVU1CQU5EKQogICAgICAgICAgIGJ3PU9Q
VVNfQkFORFdJRFRIX05BUlJPV0JBTkQ7CiAgICAgICAgZWxzZSBpZiAodG9jbW9kZT09TU9ERV9I
WUJSSUQmJmJ3PD1PUFVTX0JBTkRXSURUSF9TVVBFUldJREVCQU5EKQogICAgICAgICAgIGJ3PU9Q
VVNfQkFORFdJRFRIX1NVUEVSV0lERUJBTkQ7CisKICAgICAgICBkYXRhWzBdID0gZ2VuX3RvYyh0
b2Ntb2RlLCBmcmFtZV9yYXRlLCBidywgc3QtPnN0cmVhbV9jaGFubmVscyk7Ci0gICAgICAgcmV0
ID0gMTsKKyAgICAgICBkYXRhWzBdIHw9IHBhY2tldF9jb2RlOworCisgICAgICAgcmV0ID0gcGFj
a2V0X2NvZGUgPD0gMSA/IDEgOiAyOworCisgICAgICAgbWF4X2RhdGFfYnl0ZXMgPSBJTUFYKG1h
eF9kYXRhX2J5dGVzLCByZXQpOworCisgICAgICAgaWYgKHBhY2tldF9jb2RlPT0zKQorICAgICAg
ICAgIGRhdGFbMV0gPSBudW1fbXVsdGlmcmFtZXM7CisKICAgICAgICBpZiAoIXN0LT51c2VfdmJy
KQogICAgICAgIHsKICAgICAgICAgICByZXQgPSBvcHVzX3BhY2tldF9wYWQoZGF0YSwgcmV0LCBt
YXhfZGF0YV9ieXRlcyk7CiAgICAgICAgICAgaWYgKHJldCA9PSBPUFVTX09LKQogICAgICAgICAg
ICAgIHJldCA9IG1heF9kYXRhX2J5dGVzOworICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICBy
ZXQgPSBPUFVTX0lOVEVSTkFMX0VSUk9SOwogICAgICAgIH0KICAgICAgICBSRVNUT1JFX1NUQUNL
OwogICAgICAgIHJldHVybiByZXQ7CkBAIC0xMDkxLDcgKzEyOTAsOCBAQCBvcHVzX2ludDMyIG9w
dXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwg
aW50IGZyYW1lXwogICAgIG1heF9yYXRlID0gZnJhbWVfcmF0ZSptYXhfZGF0YV9ieXRlcyo4Owog
CiAgICAgLyogRXF1aXZhbGVudCAyMC1tcyByYXRlIGZvciBtb2RlL2NoYW5uZWwvYmFuZHdpZHRo
IGRlY2lzaW9ucyAqLwotICAgIGVxdWl2X3JhdGUgPSBzdC0+Yml0cmF0ZV9icHMgLSAoNDAqc3Qt
PmNoYW5uZWxzKzIwKSooc3QtPkZzL2ZyYW1lX3NpemUgLSA1MCk7CisgICAgZXF1aXZfcmF0ZSA9
IGNvbXB1dGVfZXF1aXZfcmF0ZShzdC0+Yml0cmF0ZV9icHMsIHN0LT5jaGFubmVscywgc3QtPkZz
L2ZyYW1lX3NpemUsCisgICAgICAgICAgc3QtPnVzZV92YnIsIDAsIHN0LT5zaWxrX21vZGUuY29t
cGxleGl0eSwgc3QtPnNpbGtfbW9kZS5wYWNrZXRMb3NzUGVyY2VudGFnZSk7CiAKICAgICBpZiAo
c3QtPnNpZ25hbF90eXBlID09IE9QVVNfU0lHTkFMX1ZPSUNFKQogICAgICAgIHZvaWNlX2VzdCA9
IDEyNzsKQEAgLTExMzIsNyArMTMzMiw5IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZl
KE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAg
ICAgfQogI2VuZGlmCiAgICAgfQotICAgIGVxdWl2X3JhdGUgPSBzdC0+Yml0cmF0ZV9icHMgLSAo
NDAqc3QtPnN0cmVhbV9jaGFubmVscysyMCkqKHN0LT5Gcy9mcmFtZV9zaXplIC0gNTApOworICAg
IC8qIFVwZGF0ZSBlcXVpdmFsZW50IHJhdGUgZm9yIGNoYW5uZWxzIGRlY2lzaW9uLiAqLworICAg
IGVxdWl2X3JhdGUgPSBjb21wdXRlX2VxdWl2X3JhdGUoc3QtPmJpdHJhdGVfYnBzLCBzdC0+c3Ry
ZWFtX2NoYW5uZWxzLCBzdC0+RnMvZnJhbWVfc2l6ZSwKKyAgICAgICAgICBzdC0+dXNlX3Ziciwg
MCwgc3QtPnNpbGtfbW9kZS5jb21wbGV4aXR5LCBzdC0+c2lsa19tb2RlLnBhY2tldExvc3NQZXJj
ZW50YWdlKTsKIAogICAgIC8qIE1vZGUgc2VsZWN0aW9uIGRlcGVuZGluZyBvbiBhcHBsaWNhdGlv
biBhbmQgc2lnbmFsIHR5cGUgKi8KICAgICBpZiAoc3QtPmFwcGxpY2F0aW9uID09IE9QVVNfQVBQ
TElDQVRJT05fUkVTVFJJQ1RFRF9MT1dERUxBWSkKQEAgLTExODEsMTAgKzEzODMsMjEgQEAgb3B1
c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3Zh
bDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAvKiBXaGVuIEZFQyBpcyBlbmFibGVkIGFuZCB0
aGVyZSdzIGVub3VnaCBwYWNrZXQgbG9zcywgdXNlIFNJTEsgKi8KICAgICAgICBpZiAoc3QtPnNp
bGtfbW9kZS51c2VJbkJhbmRGRUMgJiYgc3QtPnNpbGtfbW9kZS5wYWNrZXRMb3NzUGVyY2VudGFn
ZSA+ICgxMjgtdm9pY2VfZXN0KT4+NCkKICAgICAgICAgICBzdC0+bW9kZSA9IE1PREVfU0lMS19P
TkxZOwotICAgICAgIC8qIFdoZW4gZW5jb2Rpbmcgdm9pY2UgYW5kIERUWCBpcyBlbmFibGVkLCBz
ZXQgdGhlIGVuY29kZXIgdG8gU0lMSyBtb2RlIChhdCBsZWFzdCBmb3Igbm93KSAqLworICAgICAg
IC8qIFdoZW4gZW5jb2Rpbmcgdm9pY2UgYW5kIERUWCBpcyBlbmFibGVkIGJ1dCB0aGUgZ2VuZXJh
bGl6ZWQgRFRYIGNhbm5vdCBiZSB1c2VkLAorICAgICAgICAgIGJlY2F1c2Ugb2YgY29tcGxleGl0
eSBhbmQgc2FtcGxpbmcgZnJlcXVlbmN5IHNldHRpbmdzLCBzd2l0Y2ggdG8gU0lMSyBEVFggYW5k
CisgICAgICAgICAgc2V0IHRoZSBlbmNvZGVyIHRvIFNJTEsgbW9kZSAqLworI2lmbmRlZiBESVNB
QkxFX0ZMT0FUX0FQSQorICAgICAgIHN0LT5zaWxrX21vZGUudXNlRFRYID0gc3QtPnVzZV9kdHgg
JiYgIShhbmFseXNpc19pbmZvLnZhbGlkIHx8IGlzX3NpbGVuY2UpOworI2Vsc2UKKyAgICAgICBz
dC0+c2lsa19tb2RlLnVzZURUWCA9IHN0LT51c2VfZHR4OworI2VuZGlmCiAgICAgICAgaWYgKHN0
LT5zaWxrX21vZGUudXNlRFRYICYmIHZvaWNlX2VzdCA+IDEwMCkKICAgICAgICAgICBzdC0+bW9k
ZSA9IE1PREVfU0lMS19PTkxZOwogI2VuZGlmCisKKyAgICAgICAvKiBJZiBtYXhfZGF0YV9ieXRl
cyByZXByZXNlbnRzIGxlc3MgdGhhbiA2IGtiL3MsIHN3aXRjaCB0byBDRUxULW9ubHkgbW9kZSAq
LworICAgICAgIGlmIChtYXhfZGF0YV9ieXRlcyA8IChmcmFtZV9yYXRlID4gNTAgPyA5MDAwIDog
NjAwMCkqZnJhbWVfc2l6ZSAvIChzdC0+RnMgKiA4KSkKKyAgICAgICAgICBzdC0+bW9kZSA9IE1P
REVfQ0VMVF9PTkxZOwogICAgIH0gZWxzZSB7CiAgICAgICAgc3QtPm1vZGUgPSBzdC0+dXNlcl9m
b3JjZWRfbW9kZTsKICAgICB9CkBAIC0xMTk0LDE5ICsxNDA3LDYgQEAgb3B1c19pbnQzMiBvcHVz
X2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGlu
dCBmcmFtZV8KICAgICAgICBzdC0+bW9kZSA9IE1PREVfQ0VMVF9PTkxZOwogICAgIGlmIChzdC0+
bGZlKQogICAgICAgIHN0LT5tb2RlID0gTU9ERV9DRUxUX09OTFk7Ci0gICAgLyogSWYgbWF4X2Rh
dGFfYnl0ZXMgcmVwcmVzZW50cyBsZXNzIHRoYW4gOCBrYi9zLCBzd2l0Y2ggdG8gQ0VMVC1vbmx5
IG1vZGUgKi8KLSAgICBpZiAobWF4X2RhdGFfYnl0ZXMgPCAoZnJhbWVfcmF0ZSA+IDUwID8gMTIw
MDAgOiA4MDAwKSpmcmFtZV9zaXplIC8gKHN0LT5GcyAqIDgpKQotICAgICAgIHN0LT5tb2RlID0g
TU9ERV9DRUxUX09OTFk7Ci0KLSAgICBpZiAoc3QtPnN0cmVhbV9jaGFubmVscyA9PSAxICYmIHN0
LT5wcmV2X2NoYW5uZWxzID09MiAmJiBzdC0+c2lsa19tb2RlLnRvTW9ubz09MAotICAgICAgICAg
ICYmIHN0LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZICYmIHN0LT5wcmV2X21vZGUgIT0gTU9ERV9D
RUxUX09OTFkpCi0gICAgewotICAgICAgIC8qIERlbGF5IHN0ZXJlby0+bW9ubyB0cmFuc2l0aW9u
IGJ5IHR3byBmcmFtZXMgc28gdGhhdCBTSUxLIGNhbiBkbyBhIHNtb290aCBkb3dubWl4ICovCi0g
ICAgICAgc3QtPnNpbGtfbW9kZS50b01vbm8gPSAxOwotICAgICAgIHN0LT5zdHJlYW1fY2hhbm5l
bHMgPSAyOwotICAgIH0gZWxzZSB7Ci0gICAgICAgc3QtPnNpbGtfbW9kZS50b01vbm8gPSAwOwot
ICAgIH0KIAogICAgIGlmIChzdC0+cHJldl9tb2RlID4gMCAmJgogICAgICAgICAoKHN0LT5tb2Rl
ICE9IE1PREVfQ0VMVF9PTkxZICYmIHN0LT5wcmV2X21vZGUgPT0gTU9ERV9DRUxUX09OTFkpIHx8
CkBAIC0xMjI2LDI0ICsxNDI2LDIzIEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9w
dXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAg
ICAgICB9CiAgICAgICAgIH0KICAgICB9Ci0gICAgLyogRm9yIHRoZSBmaXJzdCBmcmFtZSBhdCBh
IG5ldyBTSUxLIGJhbmR3aWR0aCAqLwotICAgIGlmIChzdC0+c2lsa19id19zd2l0Y2gpCi0gICAg
ewotICAgICAgIHJlZHVuZGFuY3kgPSAxOwotICAgICAgIGNlbHRfdG9fc2lsayA9IDE7Ci0gICAg
ICAgc3QtPnNpbGtfYndfc3dpdGNoID0gMDsKLSAgICAgICBwcmVmaWxsPTE7Ci0gICAgfQogCi0g
ICAgaWYgKHJlZHVuZGFuY3kpCisgICAgLyogV2hlbiBlbmNvZGluZyBtdWx0aWZyYW1lcywgd2Ug
Y2FuIGFzayBmb3IgYSBzd2l0Y2ggdG8gQ0VMVCBvbmx5IGluIHRoZSBsYXN0IGZyYW1lLiBUaGlz
IHN3aXRjaAorICAgICAqIGlzIHByb2Nlc3NlZCBhYm92ZSBhcyB0aGUgcmVxdWVzdGVkIG1vZGUg
c2hvdWxkbid0IGludGVycnVwdCBzdGVyZW8tPm1vbm8gdHJhbnNpdGlvbi4gKi8KKyAgICBpZiAo
c3QtPnN0cmVhbV9jaGFubmVscyA9PSAxICYmIHN0LT5wcmV2X2NoYW5uZWxzID09MiAmJiBzdC0+
c2lsa19tb2RlLnRvTW9ubz09MAorICAgICAgICAgICYmIHN0LT5tb2RlICE9IE1PREVfQ0VMVF9P
TkxZICYmIHN0LT5wcmV2X21vZGUgIT0gTU9ERV9DRUxUX09OTFkpCiAgICAgewotICAgICAgIC8q
IEZhaXIgc2hhcmUgb2YgdGhlIG1heCBzaXplIGFsbG93ZWQgKi8KLSAgICAgICByZWR1bmRhbmN5
X2J5dGVzID0gSU1JTigyNTcsIG1heF9kYXRhX2J5dGVzKihvcHVzX2ludDMyKShzdC0+RnMvMjAw
KS8oZnJhbWVfc2l6ZStzdC0+RnMvMjAwKSk7Ci0gICAgICAgLyogRm9yIFZCUiwgdGFyZ2V0IHRo
ZSBhY3R1YWwgYml0cmF0ZSAoc3ViamVjdCB0byB0aGUgbGltaXQgYWJvdmUpICovCi0gICAgICAg
aWYgKHN0LT51c2VfdmJyKQotICAgICAgICAgIHJlZHVuZGFuY3lfYnl0ZXMgPSBJTUlOKHJlZHVu
ZGFuY3lfYnl0ZXMsIHN0LT5iaXRyYXRlX2Jwcy8xNjAwKTsKKyAgICAgICAvKiBEZWxheSBzdGVy
ZW8tPm1vbm8gdHJhbnNpdGlvbiBieSB0d28gZnJhbWVzIHNvIHRoYXQgU0lMSyBjYW4gZG8gYSBz
bW9vdGggZG93bm1peCAqLworICAgICAgIHN0LT5zaWxrX21vZGUudG9Nb25vID0gMTsKKyAgICAg
ICBzdC0+c3RyZWFtX2NoYW5uZWxzID0gMjsKKyAgICB9IGVsc2UgeworICAgICAgIHN0LT5zaWxr
X21vZGUudG9Nb25vID0gMDsKICAgICB9CiAKKyAgICAvKiBVcGRhdGUgZXF1aXZhbGVudCByYXRl
IHdpdGggbW9kZSBkZWNpc2lvbi4gKi8KKyAgICBlcXVpdl9yYXRlID0gY29tcHV0ZV9lcXVpdl9y
YXRlKHN0LT5iaXRyYXRlX2Jwcywgc3QtPnN0cmVhbV9jaGFubmVscywgc3QtPkZzL2ZyYW1lX3Np
emUsCisgICAgICAgICAgc3QtPnVzZV92YnIsIHN0LT5tb2RlLCBzdC0+c2lsa19tb2RlLmNvbXBs
ZXhpdHksIHN0LT5zaWxrX21vZGUucGFja2V0TG9zc1BlcmNlbnRhZ2UpOworCiAgICAgaWYgKHN0
LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZICYmIHN0LT5wcmV2X21vZGUgPT0gTU9ERV9DRUxUX09O
TFkpCiAgICAgewogICAgICAgICBzaWxrX0VuY0NvbnRyb2xTdHJ1Y3QgZHVtbXk7CkBAIC0xMjU3
LDE3ICsxNDU2LDcgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIg
KnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAgY29uc3Qgb3B1
c19pbnQzMiAqdm9pY2VfYmFuZHdpZHRoX3RocmVzaG9sZHMsICptdXNpY19iYW5kd2lkdGhfdGhy
ZXNob2xkczsKICAgICAgICAgb3B1c19pbnQzMiBiYW5kd2lkdGhfdGhyZXNob2xkc1s4XTsKICAg
ICAgICAgaW50IGJhbmR3aWR0aCA9IE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EOwotICAgICAgICBv
cHVzX2ludDMyIGVxdWl2X3JhdGUyOwogCi0gICAgICAgIGVxdWl2X3JhdGUyID0gZXF1aXZfcmF0
ZTsKLSAgICAgICAgaWYgKHN0LT5tb2RlICE9IE1PREVfQ0VMVF9PTkxZKQotICAgICAgICB7Ci0g
ICAgICAgICAgIC8qIEFkanVzdCB0aGUgdGhyZXNob2xkICsvLSAxMCUgZGVwZW5kaW5nIG9uIGNv
bXBsZXhpdHkgKi8KLSAgICAgICAgICAgZXF1aXZfcmF0ZTIgPSBlcXVpdl9yYXRlMiAqICg0NStz
dC0+c2lsa19tb2RlLmNvbXBsZXhpdHkpLzUwOwotICAgICAgICAgICAvKiBDQlIgaXMgbGVzcyBl
ZmZpY2llbnQgYnkgfjEga2IvcyAqLwotICAgICAgICAgICBpZiAoIXN0LT51c2VfdmJyKQotICAg
ICAgICAgICAgICBlcXVpdl9yYXRlMiAtPSAxMDAwOwotICAgICAgICB9CiAgICAgICAgIGlmIChz
dC0+Y2hhbm5lbHM9PTIgJiYgc3QtPmZvcmNlX2NoYW5uZWxzIT0xKQogICAgICAgICB7CiAgICAg
ICAgICAgIHZvaWNlX2JhbmR3aWR0aF90aHJlc2hvbGRzID0gc3RlcmVvX3ZvaWNlX2JhbmR3aWR0
aF90aHJlc2hvbGRzOwpAQCAtMTI4OCwxNSArMTQ3NywxNSBAQCBvcHVzX2ludDMyIG9wdXNfZW5j
b2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZy
YW1lXwogICAgICAgICAgICAgaHlzdGVyZXNpcyA9IGJhbmR3aWR0aF90aHJlc2hvbGRzWzIqKGJh
bmR3aWR0aC1PUFVTX0JBTkRXSURUSF9NRURJVU1CQU5EKSsxXTsKICAgICAgICAgICAgIGlmICgh
c3QtPmZpcnN0KQogICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIGlmIChzdC0+YmFuZHdp
ZHRoID49IGJhbmR3aWR0aCkKKyAgICAgICAgICAgICAgICBpZiAoc3QtPmF1dG9fYmFuZHdpZHRo
ID49IGJhbmR3aWR0aCkKICAgICAgICAgICAgICAgICAgICAgdGhyZXNob2xkIC09IGh5c3RlcmVz
aXM7CiAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICB0aHJlc2hvbGQg
Kz0gaHlzdGVyZXNpczsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChlcXVpdl9yYXRl
MiA+PSB0aHJlc2hvbGQpCisgICAgICAgICAgICBpZiAoZXF1aXZfcmF0ZSA+PSB0aHJlc2hvbGQp
CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0gd2hpbGUgKC0tYmFuZHdpZHRoPk9Q
VVNfQkFORFdJRFRIX05BUlJPV0JBTkQpOwotICAgICAgICBzdC0+YmFuZHdpZHRoID0gYmFuZHdp
ZHRoOworICAgICAgICBzdC0+YmFuZHdpZHRoID0gc3QtPmF1dG9fYmFuZHdpZHRoID0gYmFuZHdp
ZHRoOwogICAgICAgICAvKiBQcmV2ZW50cyBhbnkgdHJhbnNpdGlvbiB0byBTV0IvRkIgdW50aWwg
dGhlIFNJTEsgbGF5ZXIgaGFzIGZ1bGx5CiAgICAgICAgICAgIHN3aXRjaGVkIHRvIFdCIG1vZGUg
YW5kIHR1cm5lZCB0aGUgdmFyaWFibGUgTFAgZmlsdGVyIG9mZiAqLwogICAgICAgICBpZiAoIXN0
LT5maXJzdCAmJiBzdC0+bW9kZSAhPSBNT0RFX0NFTFRfT05MWSAmJiAhc3QtPnNpbGtfbW9kZS5p
bldCbW9kZVdpdGhvdXRWYXJpYWJsZUxQICYmIHN0LT5iYW5kd2lkdGggPiBPUFVTX0JBTkRXSURU
SF9XSURFQkFORCkKQEAgLTEzNDksNiArMTUzOCw4IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVf
bmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVf
CiAgICAgICAgc3QtPmJhbmR3aWR0aCA9IElNSU4oc3QtPmJhbmR3aWR0aCwgc3QtPmRldGVjdGVk
X2JhbmR3aWR0aCk7CiAgICAgfQogI2VuZGlmCisgICAgc3QtPnNpbGtfbW9kZS5MQlJSX2NvZGVk
ID0gZGVjaWRlX2ZlYyhzdC0+c2lsa19tb2RlLnVzZUluQmFuZEZFQywgc3QtPnNpbGtfbW9kZS5w
YWNrZXRMb3NzUGVyY2VudGFnZSwKKyAgICAgICAgICBzdC0+c2lsa19tb2RlLkxCUlJfY29kZWQs
IHN0LT5tb2RlLCAmc3QtPmJhbmR3aWR0aCwgZXF1aXZfcmF0ZSk7CiAgICAgY2VsdF9lbmNvZGVy
X2N0bChjZWx0X2VuYywgT1BVU19TRVRfTFNCX0RFUFRIKGxzYl9kZXB0aCkpOwogCiAgICAgLyog
Q0VMVCBtb2RlIGRvZXNuJ3Qgc3VwcG9ydCBtZWRpdW1iYW5kLCB1c2Ugd2lkZWJhbmQgaW5zdGVh
ZCAqLwpAQCAtMTM1NywxNSArMTU0OCwzNCBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2
ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAg
IGlmIChzdC0+bGZlKQogICAgICAgIHN0LT5iYW5kd2lkdGggPSBPUFVTX0JBTkRXSURUSF9OQVJS
T1dCQU5EOwogCi0gICAgLyogQ2FuJ3Qgc3VwcG9ydCBoaWdoZXIgdGhhbiB3aWRlYmFuZCBmb3Ig
PjIwIG1zIGZyYW1lcyAqLwotICAgIGlmIChmcmFtZV9zaXplID4gc3QtPkZzLzUwICYmIChzdC0+
bW9kZSA9PSBNT0RFX0NFTFRfT05MWSB8fCBzdC0+YmFuZHdpZHRoID4gT1BVU19CQU5EV0lEVEhf
V0lERUJBTkQpKQorICAgIGN1cnJfYmFuZHdpZHRoID0gc3QtPmJhbmR3aWR0aDsKKworICAgIC8q
IENob29zZXMgdGhlIGFwcHJvcHJpYXRlIG1vZGUgZm9yIHNwZWVjaAorICAgICAgICpORVZFUiog
c3dpdGNoIHRvL2Zyb20gQ0VMVC1vbmx5IG1vZGUgaGVyZSBhcyB0aGlzIHdpbGwgaW52YWxpZGF0
ZSBzb21lIGFzc3VtcHRpb25zICovCisgICAgaWYgKHN0LT5tb2RlID09IE1PREVfU0lMS19PTkxZ
ICYmIGN1cnJfYmFuZHdpZHRoID4gT1BVU19CQU5EV0lEVEhfV0lERUJBTkQpCisgICAgICAgIHN0
LT5tb2RlID0gTU9ERV9IWUJSSUQ7CisgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEICYm
IGN1cnJfYmFuZHdpZHRoIDw9IE9QVVNfQkFORFdJRFRIX1dJREVCQU5EKQorICAgICAgICBzdC0+
bW9kZSA9IE1PREVfU0lMS19PTkxZOworCisgICAgLyogQ2FuJ3Qgc3VwcG9ydCBoaWdoZXIgdGhh
biA+NjAgbXMgZnJhbWVzLCBhbmQgPjIwIG1zIHdoZW4gaW4gSHlicmlkIG9yIENFTFQtb25seSBt
b2RlcyAqLworICAgIGlmICgoZnJhbWVfc2l6ZSA+IHN0LT5Gcy81MCAmJiAoc3QtPm1vZGUgIT0g
TU9ERV9TSUxLX09OTFkpKSB8fCBmcmFtZV9zaXplID4gMypzdC0+RnMvNTApCiAgICAgewotICAg
ICAgIFZBUkRFQ0wodW5zaWduZWQgY2hhciwgdG1wX2RhdGEpOworICAgICAgIGludCBlbmNfZnJh
bWVfc2l6ZTsKICAgICAgICBpbnQgbmJfZnJhbWVzOwotICAgICAgIGludCBiYWtfbW9kZSwgYmFr
X2JhbmR3aWR0aCwgYmFrX2NoYW5uZWxzLCBiYWtfdG9fbW9ubzsKLSAgICAgICBWQVJERUNMKE9w
dXNSZXBhY2tldGl6ZXIsIHJwKTsKLSAgICAgICBvcHVzX2ludDMyIGJ5dGVzX3Blcl9mcmFtZTsK
LSAgICAgICBvcHVzX2ludDMyIHJlcGFja2V0aXplX2xlbjsKKworICAgICAgIGlmIChzdC0+bW9k
ZSA9PSBNT0RFX1NJTEtfT05MWSkKKyAgICAgICB7CisgICAgICAgICBpZiAoZnJhbWVfc2l6ZSA9
PSAyKnN0LT5Gcy8yNSkgIC8qIDgwIG1zIC0+IDJ4IDQwIG1zICovCisgICAgICAgICAgIGVuY19m
cmFtZV9zaXplID0gc3QtPkZzLzI1OworICAgICAgICAgZWxzZSBpZiAoZnJhbWVfc2l6ZSA9PSAz
KnN0LT5Gcy8yNSkgIC8qIDEyMCBtcyAtPiAyeCA2MCBtcyAqLworICAgICAgICAgICBlbmNfZnJh
bWVfc2l6ZSA9IDMqc3QtPkZzLzUwOworICAgICAgICAgZWxzZSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiAxMDAgbXMgLT4gNXggMjAgbXMgKi8KKyAgICAgICAgICAgZW5jX2ZyYW1lX3Np
emUgPSBzdC0+RnMvNTA7CisgICAgICAgfQorICAgICAgIGVsc2UKKyAgICAgICAgIGVuY19mcmFt
ZV9zaXplID0gc3QtPkZzLzUwOworCisgICAgICAgbmJfZnJhbWVzID0gZnJhbWVfc2l6ZS9lbmNf
ZnJhbWVfc2l6ZTsKIAogI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQSQogICAgICAgIGlmIChhbmFs
eXNpc19yZWFkX3Bvc19iYWshPSAtMSkKQEAgLTEzNzUsNzQgKzE1ODUsMzMgQEAgb3B1c19pbnQz
MiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpw
Y20sIGludCBmcmFtZV8KICAgICAgICB9CiAjZW5kaWYKIAotICAgICAgIG5iX2ZyYW1lcyA9IGZy
YW1lX3NpemUgPiBzdC0+RnMvMjUgPyAzIDogMjsKLSAgICAgICBieXRlc19wZXJfZnJhbWUgPSBJ
TUlOKDEyNzYsKG91dF9kYXRhX2J5dGVzLTMpL25iX2ZyYW1lcyk7Ci0KLSAgICAgICBBTExPQyh0
bXBfZGF0YSwgbmJfZnJhbWVzKmJ5dGVzX3Blcl9mcmFtZSwgdW5zaWduZWQgY2hhcik7Ci0KLSAg
ICAgICBBTExPQyhycCwgMSwgT3B1c1JlcGFja2V0aXplcik7Ci0gICAgICAgb3B1c19yZXBhY2tl
dGl6ZXJfaW5pdChycCk7Ci0KLSAgICAgICBiYWtfbW9kZSA9IHN0LT51c2VyX2ZvcmNlZF9tb2Rl
OwotICAgICAgIGJha19iYW5kd2lkdGggPSBzdC0+dXNlcl9iYW5kd2lkdGg7Ci0gICAgICAgYmFr
X2NoYW5uZWxzID0gc3QtPmZvcmNlX2NoYW5uZWxzOworICAgICAgIHJldCA9IGVuY29kZV9tdWx0
aWZyYW1lX3BhY2tldChzdCwgcGNtLCBuYl9mcmFtZXMsIGVuY19mcmFtZV9zaXplLCBkYXRhLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRfZGF0YV9ieXRlcywgdG9f
Y2VsdCwgbHNiX2RlcHRoLCBmbG9hdF9hcGkpOwogCi0gICAgICAgc3QtPnVzZXJfZm9yY2VkX21v
ZGUgPSBzdC0+bW9kZTsKLSAgICAgICBzdC0+dXNlcl9iYW5kd2lkdGggPSBzdC0+YmFuZHdpZHRo
OwotICAgICAgIHN0LT5mb3JjZV9jaGFubmVscyA9IHN0LT5zdHJlYW1fY2hhbm5lbHM7Ci0gICAg
ICAgYmFrX3RvX21vbm8gPSBzdC0+c2lsa19tb2RlLnRvTW9ubzsKLQotICAgICAgIGlmIChiYWtf
dG9fbW9ubykKLSAgICAgICAgICBzdC0+Zm9yY2VfY2hhbm5lbHMgPSAxOwotICAgICAgIGVsc2UK
LSAgICAgICAgICBzdC0+cHJldl9jaGFubmVscyA9IHN0LT5zdHJlYW1fY2hhbm5lbHM7Ci0gICAg
ICAgZm9yIChpPTA7aTxuYl9mcmFtZXM7aSsrKQotICAgICAgIHsKLSAgICAgICAgICBpbnQgdG1w
X2xlbjsKLSAgICAgICAgICBzdC0+c2lsa19tb2RlLnRvTW9ubyA9IDA7Ci0gICAgICAgICAgLyog
V2hlbiBzd2l0Y2hpbmcgZnJvbSBTSUxLL0h5YnJpZCB0byBDRUxULCBvbmx5IGFzayBmb3IgYSBz
d2l0Y2ggYXQgdGhlIGxhc3QgZnJhbWUgKi8KLSAgICAgICAgICBpZiAodG9fY2VsdCAmJiBpPT1u
Yl9mcmFtZXMtMSkKLSAgICAgICAgICAgICBzdC0+dXNlcl9mb3JjZWRfbW9kZSA9IE1PREVfQ0VM
VF9PTkxZOwotICAgICAgICAgIHRtcF9sZW4gPSBvcHVzX2VuY29kZV9uYXRpdmUoc3QsIHBjbStp
KihzdC0+Y2hhbm5lbHMqc3QtPkZzLzUwKSwgc3QtPkZzLzUwLAotICAgICAgICAgICAgICAgIHRt
cF9kYXRhK2kqYnl0ZXNfcGVyX2ZyYW1lLCBieXRlc19wZXJfZnJhbWUsIGxzYl9kZXB0aCwKLSAg
ICAgICAgICAgICAgICBOVUxMLCAwLCBjMSwgYzIsIGFuYWx5c2lzX2NoYW5uZWxzLCBkb3dubWl4
LCBmbG9hdF9hcGkpOwotICAgICAgICAgIGlmICh0bXBfbGVuPDApCi0gICAgICAgICAgewotICAg
ICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7Ci0gICAgICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJO
QUxfRVJST1I7Ci0gICAgICAgICAgfQotICAgICAgICAgIHJldCA9IG9wdXNfcmVwYWNrZXRpemVy
X2NhdChycCwgdG1wX2RhdGEraSpieXRlc19wZXJfZnJhbWUsIHRtcF9sZW4pOwotICAgICAgICAg
IGlmIChyZXQ8MCkKLSAgICAgICAgICB7Ci0gICAgICAgICAgICAgUkVTVE9SRV9TVEFDSzsKLSAg
ICAgICAgICAgICByZXR1cm4gT1BVU19JTlRFUk5BTF9FUlJPUjsKLSAgICAgICAgICB9Ci0gICAg
ICAgfQotICAgICAgIGlmIChzdC0+dXNlX3ZicikKLSAgICAgICAgICByZXBhY2tldGl6ZV9sZW4g
PSBvdXRfZGF0YV9ieXRlczsKLSAgICAgICBlbHNlCi0gICAgICAgICAgcmVwYWNrZXRpemVfbGVu
ID0gSU1JTigzKnN0LT5iaXRyYXRlX2Jwcy8oMyo4KjUwL25iX2ZyYW1lcyksIG91dF9kYXRhX2J5
dGVzKTsKLSAgICAgICByZXQgPSBvcHVzX3JlcGFja2V0aXplcl9vdXRfcmFuZ2VfaW1wbChycCwg
MCwgbmJfZnJhbWVzLCBkYXRhLCByZXBhY2tldGl6ZV9sZW4sIDAsICFzdC0+dXNlX3Zicik7Ci0g
ICAgICAgaWYgKHJldDwwKQotICAgICAgIHsKLSAgICAgICAgICBSRVNUT1JFX1NUQUNLOwotICAg
ICAgICAgIHJldHVybiBPUFVTX0lOVEVSTkFMX0VSUk9SOwotICAgICAgIH0KLSAgICAgICBzdC0+
dXNlcl9mb3JjZWRfbW9kZSA9IGJha19tb2RlOwotICAgICAgIHN0LT51c2VyX2JhbmR3aWR0aCA9
IGJha19iYW5kd2lkdGg7Ci0gICAgICAgc3QtPmZvcmNlX2NoYW5uZWxzID0gYmFrX2NoYW5uZWxz
OwotICAgICAgIHN0LT5zaWxrX21vZGUudG9Nb25vID0gYmFrX3RvX21vbm87CiAgICAgICAgUkVT
VE9SRV9TVEFDSzsKICAgICAgICByZXR1cm4gcmV0OwogICAgIH0KLSAgICBjdXJyX2JhbmR3aWR0
aCA9IHN0LT5iYW5kd2lkdGg7CiAKLSAgICAvKiBDaG9vc2VzIHRoZSBhcHByb3ByaWF0ZSBtb2Rl
IGZvciBzcGVlY2gKLSAgICAgICAqTkVWRVIqIHN3aXRjaCB0by9mcm9tIENFTFQtb25seSBtb2Rl
IGhlcmUgYXMgdGhpcyB3aWxsIGludmFsaWRhdGUgc29tZSBhc3N1bXB0aW9ucyAqLwotICAgIGlm
IChzdC0+bW9kZSA9PSBNT0RFX1NJTEtfT05MWSAmJiBjdXJyX2JhbmR3aWR0aCA+IE9QVVNfQkFO
RFdJRFRIX1dJREVCQU5EKQotICAgICAgICBzdC0+bW9kZSA9IE1PREVfSFlCUklEOwotICAgIGlm
IChzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCAmJiBjdXJyX2JhbmR3aWR0aCA8PSBPUFVTX0JBTkRX
SURUSF9XSURFQkFORCkKLSAgICAgICAgc3QtPm1vZGUgPSBNT0RFX1NJTEtfT05MWTsKKyAgICAv
KiBGb3IgdGhlIGZpcnN0IGZyYW1lIGF0IGEgbmV3IFNJTEsgYmFuZHdpZHRoICovCisgICAgaWYg
KHN0LT5zaWxrX2J3X3N3aXRjaCkKKyAgICB7CisgICAgICAgcmVkdW5kYW5jeSA9IDE7CisgICAg
ICAgY2VsdF90b19zaWxrID0gMTsKKyAgICAgICBzdC0+c2lsa19id19zd2l0Y2ggPSAwOworICAg
ICAgIHByZWZpbGw9MTsKKyAgICB9CisKKyAgICAvKiBJZiB3ZSBkZWNpZGVkIHRvIGdvIHdpdGgg
Q0VMVCwgbWFrZSBzdXJlIHJlZHVuZGFuY3kgaXMgb2ZmLCBubyBtYXR0ZXIgd2hhdAorICAgICAg
IHdlIGRlY2lkZWQgZWFybGllci4gKi8KKyAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9DRUxUX09O
TFkpCisgICAgICAgIHJlZHVuZGFuY3kgPSAwOworCisgICAgaWYgKHJlZHVuZGFuY3kpCisgICAg
eworICAgICAgIHJlZHVuZGFuY3lfYnl0ZXMgPSBjb21wdXRlX3JlZHVuZGFuY3lfYnl0ZXMobWF4
X2RhdGFfYnl0ZXMsIHN0LT5iaXRyYXRlX2JwcywgZnJhbWVfcmF0ZSwgc3QtPnN0cmVhbV9jaGFu
bmVscyk7CisgICAgICAgaWYgKHJlZHVuZGFuY3lfYnl0ZXMgPT0gMCkKKyAgICAgICAgICByZWR1
bmRhbmN5ID0gMDsKKyAgICB9CiAKICAgICAvKiBwcmludGYoIiVkICVkICVkICVkXG4iLCBzdC0+
Yml0cmF0ZV9icHMsIHN0LT5zdHJlYW1fY2hhbm5lbHMsIHN0LT5tb2RlLCBjdXJyX2JhbmR3aWR0
aCk7ICovCiAgICAgYnl0ZXNfdGFyZ2V0ID0gSU1JTihtYXhfZGF0YV9ieXRlcy1yZWR1bmRhbmN5
X2J5dGVzLCBzdC0+Yml0cmF0ZV9icHMgKiBmcmFtZV9zaXplIC8gKHN0LT5GcyAqIDgpKSAtIDE7
CkBAIC0xNDY3LDcgKzE2MzYsNyBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVz
RW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogCiAgICAgaWYg
KHN0LT5hcHBsaWNhdGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9OX1ZPSVApCiAgICAgewotICAgICAg
IGhwX2N1dG9mZihwY20sIGN1dG9mZl9IeiwgJnBjbV9idWZbdG90YWxfYnVmZmVyKnN0LT5jaGFu
bmVsc10sIHN0LT5ocF9tZW0sIGZyYW1lX3NpemUsIHN0LT5jaGFubmVscywgc3QtPkZzKTsKKyAg
ICAgICBocF9jdXRvZmYocGNtLCBjdXRvZmZfSHosICZwY21fYnVmW3RvdGFsX2J1ZmZlcipzdC0+
Y2hhbm5lbHNdLCBzdC0+aHBfbWVtLCBmcmFtZV9zaXplLCBzdC0+Y2hhbm5lbHMsIHN0LT5Gcywg
c3QtPmFyY2gpOwogICAgIH0gZWxzZSB7CiAgICAgICAgZGNfcmVqZWN0KHBjbSwgMywgJnBjbV9i
dWZbdG90YWxfYnVmZmVyKnN0LT5jaGFubmVsc10sIHN0LT5ocF9tZW0sIGZyYW1lX3NpemUsIHN0
LT5jaGFubmVscywgc3QtPkZzKTsKICAgICB9CkBAIC0xNDkyLDYgKzE2NjEsNyBAQCBvcHVzX2lu
dDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYg
KnBjbSwgaW50IGZyYW1lXwogICAgIGlmIChzdC0+bW9kZSAhPSBNT0RFX0NFTFRfT05MWSkKICAg
ICB7CiAgICAgICAgIG9wdXNfaW50MzIgdG90YWxfYml0UmF0ZSwgY2VsdF9yYXRlOworICAgICAg
ICBvcHVzX2ludCBhY3Rpdml0eTsKICNpZmRlZiBGSVhFRF9QT0lOVAogICAgICAgIGNvbnN0IG9w
dXNfaW50MTYgKnBjbV9zaWxrOwogI2Vsc2UKQEAgLTE0OTksMzAgKzE2NjksMzEgQEAgb3B1c19p
bnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2
ICpwY20sIGludCBmcmFtZV8KICAgICAgICBBTExPQyhwY21fc2lsaywgc3QtPmNoYW5uZWxzKmZy
YW1lX3NpemUsIG9wdXNfaW50MTYpOwogI2VuZGlmCiAKKyAgICAgICAgYWN0aXZpdHkgPSBWQURf
Tk9fREVDSVNJT047CisjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCisgICAgICAgIGlmKCBhbmFs
eXNpc19pbmZvLnZhbGlkICkgeworICAgICAgICAgICAgLyogSW5mb3JtIFNJTEsgYWJvdXQgdGhl
IE9wdXMgVkFEIGRlY2lzaW9uICovCisgICAgICAgICAgICBhY3Rpdml0eSA9ICggYW5hbHlzaXNf
aW5mby5hY3Rpdml0eV9wcm9iYWJpbGl0eSA+PSBEVFhfQUNUSVZJVFlfVEhSRVNIT0xEICk7Cisg
ICAgICAgIH0KKyNlbmRpZgorCiAgICAgICAgIC8qIERpc3RyaWJ1dGUgYml0cyBiZXR3ZWVuIFNJ
TEsgYW5kIENFTFQgKi8KICAgICAgICAgdG90YWxfYml0UmF0ZSA9IDggKiBieXRlc190YXJnZXQg
KiBmcmFtZV9yYXRlOwogICAgICAgICBpZiggc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQgKSB7Ci0g
ICAgICAgICAgICBpbnQgSEJfZ2Fpbl9yZWY7CiAgICAgICAgICAgICAvKiBCYXNlIHJhdGUgZm9y
IFNJTEsgKi8KLSAgICAgICAgICAgIHN0LT5zaWxrX21vZGUuYml0UmF0ZSA9IHN0LT5zdHJlYW1f
Y2hhbm5lbHMgKiAoIDUwMDAgKyAxMDAwICogKCBzdC0+RnMgPT0gMTAwICogZnJhbWVfc2l6ZSAp
ICk7Ci0gICAgICAgICAgICBpZiggY3Vycl9iYW5kd2lkdGggPT0gT1BVU19CQU5EV0lEVEhfU1VQ
RVJXSURFQkFORCApIHsKLSAgICAgICAgICAgICAgICAvKiBTSUxLIGdldHMgMi8zIG9mIHRoZSBy
ZW1haW5pbmcgYml0cyAqLwotICAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUuYml0UmF0ZSAr
PSAoIHRvdGFsX2JpdFJhdGUgLSBzdC0+c2lsa19tb2RlLmJpdFJhdGUgKSAqIDIgLyAzOwotICAg
ICAgICAgICAgfSBlbHNlIHsgLyogRlVMTEJBTkQgKi8KLSAgICAgICAgICAgICAgICAvKiBTSUxL
IGdldHMgMy81IG9mIHRoZSByZW1haW5pbmcgYml0cyAqLwotICAgICAgICAgICAgICAgIHN0LT5z
aWxrX21vZGUuYml0UmF0ZSArPSAoIHRvdGFsX2JpdFJhdGUgLSBzdC0+c2lsa19tb2RlLmJpdFJh
dGUgKSAqIDMgLyA1OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLyogRG9uJ3QgbGV0IFNJ
TEsgdXNlIG1vcmUgdGhhbiA4MCUgKi8KLSAgICAgICAgICAgIGlmKCBzdC0+c2lsa19tb2RlLmJp
dFJhdGUgPiB0b3RhbF9iaXRSYXRlICogNC81ICkgewotICAgICAgICAgICAgICAgIHN0LT5zaWxr
X21vZGUuYml0UmF0ZSA9IHRvdGFsX2JpdFJhdGUgKiA0LzU7Ci0gICAgICAgICAgICB9CisgICAg
ICAgICAgICBzdC0+c2lsa19tb2RlLmJpdFJhdGUgPSBjb21wdXRlX3NpbGtfcmF0ZV9mb3JfaHli
cmlkKHRvdGFsX2JpdFJhdGUsCisgICAgICAgICAgICAgICAgICBjdXJyX2JhbmR3aWR0aCwgc3Qt
PkZzID09IDUwICogZnJhbWVfc2l6ZSwgc3QtPnVzZV92YnIsIHN0LT5zaWxrX21vZGUuTEJSUl9j
b2RlZCk7CiAgICAgICAgICAgICBpZiAoIXN0LT5lbmVyZ3lfbWFza2luZykKICAgICAgICAgICAg
IHsKICAgICAgICAgICAgICAgIC8qIEluY3JlYXNpbmdseSBhdHRlbnVhdGUgaGlnaCBiYW5kIHdo
ZW4gaXQgZ2V0cyBhbGxvY2F0ZWQgZmV3ZXIgYml0cyAqLwogICAgICAgICAgICAgICAgY2VsdF9y
YXRlID0gdG90YWxfYml0UmF0ZSAtIHN0LT5zaWxrX21vZGUuYml0UmF0ZTsKLSAgICAgICAgICAg
ICAgIEhCX2dhaW5fcmVmID0gKGN1cnJfYmFuZHdpZHRoID09IE9QVVNfQkFORFdJRFRIX1NVUEVS
V0lERUJBTkQpID8gMzAwMCA6IDM2MDA7Ci0gICAgICAgICAgICAgICBIQl9nYWluID0gU0hMMzIo
KG9wdXNfdmFsMzIpY2VsdF9yYXRlLCA5KSAvIFNIUjMyKChvcHVzX3ZhbDMyKWNlbHRfcmF0ZSAr
IHN0LT5zdHJlYW1fY2hhbm5lbHMgKiBIQl9nYWluX3JlZiwgNik7Ci0gICAgICAgICAgICAgICBI
Ql9nYWluID0gSEJfZ2FpbiA8IChvcHVzX3ZhbDMyKVExNU9ORSo2LzcgPyBIQl9nYWluICsgUTE1
T05FLzcgOiBRMTVPTkU7CisgICAgICAgICAgICAgICBIQl9nYWluID0gUTE1T05FIC0gU0hSMzIo
Y2VsdF9leHAyKC1jZWx0X3JhdGUgKiBRQ09OU1QxNigxLmYvMTAyNCwgMTApKSwgMSk7CisjaWZu
ZGVmIEZJWEVEX1BPSU5UCisgICAgICAgICAgICAgICAvKiBTYW5pdHkgY2hlY2sgb2YgaGlnaCBi
YW5kIGdhaW4gKi8KKyAgICAgICAgICAgICAgIGlmIChjZWx0X2lzbmFuKEhCX2dhaW4pKSB7Cisg
ICAgICAgICAgICAgICAgICAgSEJfZ2FpbiA9IFExNU9ORTsKKyAgICAgICAgICAgICAgIH0KKyNl
bmRpZgogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLyogU0lM
SyBnZXRzIGFsbCBiaXRzICovCkBAIC0xNTY5LDcgKzE3NDAsNiBAQCBvcHVzX2ludDMyIG9wdXNf
ZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50
IGZyYW1lXwogICAgICAgICAgICAgICBzdC0+c2lsa19tb2RlLmJpdFJhdGUgKz0gMypyYXRlX29m
ZnNldC81OwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUuYml0
UmF0ZSArPSByYXRlX29mZnNldDsKLSAgICAgICAgICAgYnl0ZXNfdGFyZ2V0ICs9IHJhdGVfb2Zm
c2V0ICogZnJhbWVfc2l6ZSAvICg4ICogc3QtPkZzKTsKICAgICAgICAgfQogCiAgICAgICAgIHN0
LT5zaWxrX21vZGUucGF5bG9hZFNpemVfbXMgPSAxMDAwICogZnJhbWVfc2l6ZSAvIHN0LT5GczsK
QEAgLTE1OTAsNDAgKzE3NjAsNTIgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1
c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAg
ICAgIHN0LT5zaWxrX21vZGUubWluSW50ZXJuYWxTYW1wbGVSYXRlID0gODAwMDsKICAgICAgICAg
fQogCisgICAgICAgIHN0LT5zaWxrX21vZGUubWF4SW50ZXJuYWxTYW1wbGVSYXRlID0gMTYwMDA7
CiAgICAgICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX1NJTEtfT05MWSkKICAgICAgICAgewogICAg
ICAgICAgICBvcHVzX2ludDMyIGVmZmVjdGl2ZV9tYXhfcmF0ZSA9IG1heF9yYXRlOwotICAgICAg
ICAgICBzdC0+c2lsa19tb2RlLm1heEludGVybmFsU2FtcGxlUmF0ZSA9IDE2MDAwOwogICAgICAg
ICAgICBpZiAoZnJhbWVfcmF0ZSA+IDUwKQogICAgICAgICAgICAgICBlZmZlY3RpdmVfbWF4X3Jh
dGUgPSBlZmZlY3RpdmVfbWF4X3JhdGUqMi8zOwotICAgICAgICAgICBpZiAoZWZmZWN0aXZlX21h
eF9yYXRlIDwgMTMwMDApCisgICAgICAgICAgIGlmIChlZmZlY3RpdmVfbWF4X3JhdGUgPCA4MDAw
KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4SW50ZXJuYWxT
YW1wbGVSYXRlID0gMTIwMDA7CiAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUuZGVzaXJlZElu
dGVybmFsU2FtcGxlUmF0ZSA9IElNSU4oMTIwMDAsIHN0LT5zaWxrX21vZGUuZGVzaXJlZEludGVy
bmFsU2FtcGxlUmF0ZSk7CiAgICAgICAgICAgIH0KLSAgICAgICAgICAgaWYgKGVmZmVjdGl2ZV9t
YXhfcmF0ZSA8IDk2MDApCisgICAgICAgICAgIGlmIChlZmZlY3RpdmVfbWF4X3JhdGUgPCA3MDAw
KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4SW50ZXJuYWxT
YW1wbGVSYXRlID0gODAwMDsKICAgICAgICAgICAgICAgc3QtPnNpbGtfbW9kZS5kZXNpcmVkSW50
ZXJuYWxTYW1wbGVSYXRlID0gSU1JTig4MDAwLCBzdC0+c2lsa19tb2RlLmRlc2lyZWRJbnRlcm5h
bFNhbXBsZVJhdGUpOwogICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAg
IHN0LT5zaWxrX21vZGUubWF4SW50ZXJuYWxTYW1wbGVSYXRlID0gMTYwMDA7CiAgICAgICAgIH0K
IAogICAgICAgICBzdC0+c2lsa19tb2RlLnVzZUNCUiA9ICFzdC0+dXNlX3ZicjsKIAogICAgICAg
ICAvKiBDYWxsIFNJTEsgZW5jb2RlciBmb3IgdGhlIGxvdyBiYW5kICovCi0gICAgICAgIG5CeXRl
cyA9IElNSU4oMTI3NSwgbWF4X2RhdGFfYnl0ZXMtMS1yZWR1bmRhbmN5X2J5dGVzKTsKIAotICAg
ICAgICBzdC0+c2lsa19tb2RlLm1heEJpdHMgPSBuQnl0ZXMqODsKLSAgICAgICAgLyogT25seSBh
bGxvdyB1cCB0byA5MCUgb2YgdGhlIGJpdHMgZm9yIGh5YnJpZCBtb2RlKi8KLSAgICAgICAgaWYg
KHN0LT5tb2RlID09IE1PREVfSFlCUklEKQotICAgICAgICAgICBzdC0+c2lsa19tb2RlLm1heEJp
dHMgPSAob3B1c19pbnQzMilzdC0+c2lsa19tb2RlLm1heEJpdHMqOS8xMDsKKyAgICAgICAgLyog
TWF4IGJpdHMgZm9yIFNJTEssIGNvdW50aW5nIFRvQywgcmVkdW5kYW5jeSBieXRlcywgYW5kIG9w
dGlvbmFsbHkgcmVkdW5kYW5jeS4gKi8KKyAgICAgICAgc3QtPnNpbGtfbW9kZS5tYXhCaXRzID0g
KG1heF9kYXRhX2J5dGVzLTEpKjg7CisgICAgICAgIGlmIChyZWR1bmRhbmN5ICYmIHJlZHVuZGFu
Y3lfYnl0ZXMgPj0gMikKKyAgICAgICAgeworICAgICAgICAgICAvKiBDb3VudGluZyAxIGJpdCBm
b3IgcmVkdW5kYW5jeSBwb3NpdGlvbiBhbmQgMjAgYml0cyBmb3IgZmxhZytzaXplIChvbmx5IGZv
ciBoeWJyaWQpLiAqLworICAgICAgICAgICBzdC0+c2lsa19tb2RlLm1heEJpdHMgLT0gcmVkdW5k
YW5jeV9ieXRlcyo4ICsgMTsKKyAgICAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklE
KQorICAgICAgICAgICAgICBzdC0+c2lsa19tb2RlLm1heEJpdHMgLT0gMjA7CisgICAgICAgIH0K
ICAgICAgICAgaWYgKHN0LT5zaWxrX21vZGUudXNlQ0JSKQogICAgICAgICB7Ci0gICAgICAgICAg
IHN0LT5zaWxrX21vZGUubWF4Qml0cyA9IChzdC0+c2lsa19tb2RlLmJpdFJhdGUgKiBmcmFtZV9z
aXplIC8gKHN0LT5GcyAqIDgpKSo4OwotICAgICAgICAgICAvKiBSZWR1Y2UgdGhlIGluaXRpYWwg
dGFyZ2V0IHRvIG1ha2UgaXQgZWFzaWVyIHRvIHJlYWNoIHRoZSBDQlIgcmF0ZSAqLwotICAgICAg
ICAgICBzdC0+c2lsa19tb2RlLmJpdFJhdGUgPSBJTUFYKDEsIHN0LT5zaWxrX21vZGUuYml0UmF0
ZS0yMDAwKTsKKyAgICAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQorICAgICAg
ICAgICB7CisgICAgICAgICAgICAgIHN0LT5zaWxrX21vZGUubWF4Qml0cyA9IElNSU4oc3QtPnNp
bGtfbW9kZS5tYXhCaXRzLCBzdC0+c2lsa19tb2RlLmJpdFJhdGUgKiBmcmFtZV9zaXplIC8gc3Qt
PkZzKTsKKyAgICAgICAgICAgfQorICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAvKiBDb25z
dHJhaW5lZCBWQlIuICovCisgICAgICAgICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCkK
KyAgICAgICAgICAgeworICAgICAgICAgICAgICAvKiBDb21wdXRlIFNJTEsgYml0cmF0ZSBjb3Jy
ZXNwb25kaW5nIHRvIHRoZSBtYXggdG90YWwgYml0cyBhdmFpbGFibGUgKi8KKyAgICAgICAgICAg
ICAgb3B1c19pbnQzMiBtYXhCaXRSYXRlID0gY29tcHV0ZV9zaWxrX3JhdGVfZm9yX2h5YnJpZChz
dC0+c2lsa19tb2RlLm1heEJpdHMqc3QtPkZzIC8gZnJhbWVfc2l6ZSwKKyAgICAgICAgICAgICAg
ICAgICAgY3Vycl9iYW5kd2lkdGgsIHN0LT5GcyA9PSA1MCAqIGZyYW1lX3NpemUsIHN0LT51c2Vf
dmJyLCBzdC0+c2lsa19tb2RlLkxCUlJfY29kZWQpOworICAgICAgICAgICAgICBzdC0+c2lsa19t
b2RlLm1heEJpdHMgPSBtYXhCaXRSYXRlICogZnJhbWVfc2l6ZSAvIHN0LT5GczsKKyAgICAgICAg
ICAgfQogICAgICAgICB9CiAKICAgICAgICAgaWYgKHByZWZpbGwpCkBAIC0xNjQ2LDcgKzE4Mjgs
NyBAQCBvcHVzX2ludDMyIG9wdXNfZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0
IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZyYW1lXwogICAgICAgICAgICAgZm9yIChpPTA7aTxzdC0+
ZW5jb2Rlcl9idWZmZXIqc3QtPmNoYW5uZWxzO2krKykKICAgICAgICAgICAgICAgICBwY21fc2ls
a1tpXSA9IEZMT0FUMklOVDE2KHN0LT5kZWxheV9idWZmZXJbaV0pOwogI2VuZGlmCi0gICAgICAg
ICAgICBzaWxrX0VuY29kZSggc2lsa19lbmMsICZzdC0+c2lsa19tb2RlLCBwY21fc2lsaywgc3Qt
PmVuY29kZXJfYnVmZmVyLCBOVUxMLCAmemVybywgMSApOworICAgICAgICAgICAgc2lsa19FbmNv
ZGUoIHNpbGtfZW5jLCAmc3QtPnNpbGtfbW9kZSwgcGNtX3NpbGssIHN0LT5lbmNvZGVyX2J1ZmZl
ciwgTlVMTCwgJnplcm8sIDEsIGFjdGl2aXR5ICk7CiAgICAgICAgIH0KIAogI2lmZGVmIEZJWEVE
X1BPSU5UCkBAIC0xNjU1LDIwICsxODM3LDE0IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0
aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAg
ICAgICAgIGZvciAoaT0wO2k8ZnJhbWVfc2l6ZSpzdC0+Y2hhbm5lbHM7aSsrKQogICAgICAgICAg
ICAgcGNtX3NpbGtbaV0gPSBGTE9BVDJJTlQxNihwY21fYnVmW3RvdGFsX2J1ZmZlcipzdC0+Y2hh
bm5lbHMgKyBpXSk7CiAjZW5kaWYKLSAgICAgICAgcmV0ID0gc2lsa19FbmNvZGUoIHNpbGtfZW5j
LCAmc3QtPnNpbGtfbW9kZSwgcGNtX3NpbGssIGZyYW1lX3NpemUsICZlbmMsICZuQnl0ZXMsIDAg
KTsKKyAgICAgICAgcmV0ID0gc2lsa19FbmNvZGUoIHNpbGtfZW5jLCAmc3QtPnNpbGtfbW9kZSwg
cGNtX3NpbGssIGZyYW1lX3NpemUsICZlbmMsICZuQnl0ZXMsIDAsIGFjdGl2aXR5ICk7CiAgICAg
ICAgIGlmKCByZXQgKSB7CiAgICAgICAgICAgICAvKmZwcmludGYgKHN0ZGVyciwgIlNJTEsgZW5j
b2RlIGVycm9yOiAlZFxuIiwgcmV0KTsqLwogICAgICAgICAgICAgLyogSGFuZGxlIGVycm9yICov
CiAgICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7CiAgICAgICAgICAgIHJldHVybiBPUFVTX0lOVEVS
TkFMX0VSUk9SOwogICAgICAgICB9Ci0gICAgICAgIGlmIChuQnl0ZXM9PTApCi0gICAgICAgIHsK
LSAgICAgICAgICAgc3QtPnJhbmdlRmluYWwgPSAwOwotICAgICAgICAgICBkYXRhWy0xXSA9IGdl
bl90b2Moc3QtPm1vZGUsIHN0LT5Gcy9mcmFtZV9zaXplLCBjdXJyX2JhbmR3aWR0aCwgc3QtPnN0
cmVhbV9jaGFubmVscyk7Ci0gICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7Ci0gICAgICAgICAgIHJl
dHVybiAxOwotICAgICAgICB9CisKICAgICAgICAgLyogRXh0cmFjdCBTSUxLIGludGVybmFsIGJh
bmR3aWR0aCBmb3Igc2lnbmFsaW5nIGluIGZpcnN0IGJ5dGUgKi8KICAgICAgICAgaWYoIHN0LT5t
b2RlID09IE1PREVfU0lMS19PTkxZICkgewogICAgICAgICAgICAgaWYoIHN0LT5zaWxrX21vZGUu
aW50ZXJuYWxTYW1wbGVSYXRlID09IDgwMDAgKSB7CkBAIC0xNjgyLDExICsxODU4LDIxIEBAIG9w
dXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192
YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgICAgICAgICBzaWxrX2Fzc2VydCggc3QtPnNpbGtf
bW9kZS5pbnRlcm5hbFNhbXBsZVJhdGUgPT0gMTYwMDAgKTsKICAgICAgICAgfQogCi0gICAgICAg
IHN0LT5zaWxrX21vZGUub3B1c0NhblN3aXRjaCA9IHN0LT5zaWxrX21vZGUuc3dpdGNoUmVhZHk7
CisgICAgICAgIHN0LT5zaWxrX21vZGUub3B1c0NhblN3aXRjaCA9IHN0LT5zaWxrX21vZGUuc3dp
dGNoUmVhZHkgJiYgIXN0LT5ub25maW5hbF9mcmFtZTsKKworICAgICAgICBpZiAobkJ5dGVzPT0w
KQorICAgICAgICB7CisgICAgICAgICAgIHN0LT5yYW5nZUZpbmFsID0gMDsKKyAgICAgICAgICAg
ZGF0YVstMV0gPSBnZW5fdG9jKHN0LT5tb2RlLCBzdC0+RnMvZnJhbWVfc2l6ZSwgY3Vycl9iYW5k
d2lkdGgsIHN0LT5zdHJlYW1fY2hhbm5lbHMpOworICAgICAgICAgICBSRVNUT1JFX1NUQUNLOwor
ICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgfQorCiAgICAgICAgIC8qIEZJWE1FOiBIb3cg
ZG8gd2UgYWxsb2NhdGUgdGhlIHJlZHVuZGFuY3kgZm9yIENCUj8gKi8KICAgICAgICAgaWYgKHN0
LT5zaWxrX21vZGUub3B1c0NhblN3aXRjaCkKICAgICAgICAgewotICAgICAgICAgICByZWR1bmRh
bmN5ID0gMTsKKyAgICAgICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9IGNvbXB1dGVfcmVkdW5kYW5j
eV9ieXRlcyhtYXhfZGF0YV9ieXRlcywgc3QtPmJpdHJhdGVfYnBzLCBmcmFtZV9yYXRlLCBzdC0+
c3RyZWFtX2NoYW5uZWxzKTsKKyAgICAgICAgICAgcmVkdW5kYW5jeSA9IChyZWR1bmRhbmN5X2J5
dGVzICE9IDApOwogICAgICAgICAgICBjZWx0X3RvX3NpbGsgPSAwOwogICAgICAgICAgICBzdC0+
c2lsa19id19zd2l0Y2ggPSAxOwogICAgICAgICB9CkBAIC0xNzI3LDQwICsxOTEzLDE4IEBAIG9w
dXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192
YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAKICAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlC
UklEKQogICAgICAgICB7Ci0gICAgICAgICAgICBpbnQgbGVuOwotCi0gICAgICAgICAgICBsZW4g
PSAoZWNfdGVsbCgmZW5jKSs3KT4+MzsKLSAgICAgICAgICAgIGlmIChyZWR1bmRhbmN5KQotICAg
ICAgICAgICAgICAgbGVuICs9IHN0LT5tb2RlID09IE1PREVfSFlCUklEID8gMyA6IDE7CiAgICAg
ICAgICAgICBpZiggc3QtPnVzZV92YnIgKSB7Ci0gICAgICAgICAgICAgICAgbmJfY29tcHJfYnl0
ZXMgPSBsZW4gKyBieXRlc190YXJnZXQgLSAoc3QtPnNpbGtfbW9kZS5iaXRSYXRlICogZnJhbWVf
c2l6ZSkgLyAoOCAqIHN0LT5Gcyk7Ci0gICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
ICAgIC8qIGNoZWNrIGlmIFNJTEsgdXNlZCB1cCB0b28gbXVjaCAqLwotICAgICAgICAgICAgICAg
IG5iX2NvbXByX2J5dGVzID0gbGVuID4gYnl0ZXNfdGFyZ2V0ID8gbGVuIDogYnl0ZXNfdGFyZ2V0
OworICAgICAgICAgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX0JJ
VFJBVEUoc3QtPmJpdHJhdGVfYnBzLXN0LT5zaWxrX21vZGUuYml0UmF0ZSkpOworICAgICAgICAg
ICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX1ZCUl9DT05TVFJBSU5U
KDApKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGlmIChz
dC0+dXNlX3ZicikKICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBvcHVzX2ludDMyIGJv
bnVzPTA7Ci0jaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCi0gICAgICAgICAgICAgICAgaWYgKHN0
LT52YXJpYWJsZV9kdXJhdGlvbj09T1BVU19GUkFNRVNJWkVfVkFSSUFCTEUgJiYgZnJhbWVfc2l6
ZSAhPSBzdC0+RnMvNTApCi0gICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgIGJv
bnVzID0gKDYwKnN0LT5zdHJlYW1fY2hhbm5lbHMrNDApKihzdC0+RnMvZnJhbWVfc2l6ZS01MCk7
Ci0gICAgICAgICAgICAgICAgICAgaWYgKGFuYWx5c2lzX2luZm8udmFsaWQpCi0gICAgICAgICAg
ICAgICAgICAgICAgYm9udXMgPSAob3B1c19pbnQzMikoYm9udXMqKDEuZisuNWYqYW5hbHlzaXNf
aW5mby50b25hbGl0eSkpOwotICAgICAgICAgICAgICAgIH0KLSNlbmRpZgogICAgICAgICAgICAg
ICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX1ZCUigxKSk7CiAgICAgICAg
ICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfVkJSX0NPTlNUUkFJ
TlQoc3QtPnZicl9jb25zdHJhaW50KSk7Ci0gICAgICAgICAgICAgICAgY2VsdF9lbmNvZGVyX2N0
bChjZWx0X2VuYywgT1BVU19TRVRfQklUUkFURShzdC0+Yml0cmF0ZV9icHMrYm9udXMpKTsKLSAg
ICAgICAgICAgICAgICBuYl9jb21wcl9ieXRlcyA9IG1heF9kYXRhX2J5dGVzLTEtcmVkdW5kYW5j
eV9ieXRlczsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgbmJfY29tcHJf
Ynl0ZXMgPSBieXRlc190YXJnZXQ7CisgICAgICAgICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChj
ZWx0X2VuYywgT1BVU19TRVRfQklUUkFURShzdC0+Yml0cmF0ZV9icHMpKTsKICAgICAgICAgICAg
IH0KICAgICAgICAgfQotCi0gICAgfSBlbHNlIHsKLSAgICAgICAgbmJfY29tcHJfYnl0ZXMgPSAw
OwogICAgIH0KIAogICAgIEFMTE9DKHRtcF9wcmVmaWxsLCBzdC0+Y2hhbm5lbHMqc3QtPkZzLzQw
MCwgb3B1c192YWwxNik7CkBAIC0xNzg2LDcgKzE5NTAsNyBAQCBvcHVzX2ludDMyIG9wdXNfZW5j
b2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50IGZy
YW1lXwogICAgIH0KICAgICBzdC0+cHJldl9IQl9nYWluID0gSEJfZ2FpbjsKICAgICBpZiAoc3Qt
Pm1vZGUgIT0gTU9ERV9IWUJSSUQgfHwgc3QtPnN0cmVhbV9jaGFubmVscz09MSkKLSAgICAgICBz
dC0+c2lsa19tb2RlLnN0ZXJlb1dpZHRoX1ExNCA9IElNSU4oKDE8PDE0KSwyKklNQVgoMCxlcXVp
dl9yYXRlLTMwMDAwKSk7CisgICAgICAgc3QtPnNpbGtfbW9kZS5zdGVyZW9XaWR0aF9RMTQgPSBJ
TUlOKCgxPDwxNCksMipJTUFYKDAsZXF1aXZfcmF0ZS0yNDAwMCkpOwogICAgIGlmKCAhc3QtPmVu
ZXJneV9tYXNraW5nICYmIHN0LT5jaGFubmVscyA9PSAyICkgewogICAgICAgICAvKiBBcHBseSBz
dGVyZW8gd2lkdGggcmVkdWN0aW9uIChhdCBsb3cgYml0cmF0ZXMpICovCiAgICAgICAgIGlmKCBz
dC0+aHlicmlkX3N0ZXJlb193aWR0aF9RMTQgPCAoMSA8PCAxNCkgfHwgc3QtPnNpbGtfbW9kZS5z
dGVyZW9XaWR0aF9RMTQgPCAoMSA8PCAxNCkgKSB7CkBAIC0xODA5LDE5ICsxOTczLDIzIEBAIG9w
dXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192
YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAgaWYgKCBzdC0+bW9kZSAhPSBNT0RFX0NFTFRfT05M
WSAmJiBlY190ZWxsKCZlbmMpKzE3KzIwKihzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCkgPD0gOCoo
bWF4X2RhdGFfYnl0ZXMtMSkpCiAgICAgewogICAgICAgICAvKiBGb3IgU0lMSyBtb2RlLCB0aGUg
cmVkdW5kYW5jeSBpcyBpbmZlcnJlZCBmcm9tIHRoZSBsZW5ndGggKi8KLSAgICAgICAgaWYgKHN0
LT5tb2RlID09IE1PREVfSFlCUklEICYmIChyZWR1bmRhbmN5IHx8IGVjX3RlbGwoJmVuYykrMzcg
PD0gOCpuYl9jb21wcl9ieXRlcykpCisgICAgICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX0hZQlJJ
RCkKICAgICAgICAgICAgZWNfZW5jX2JpdF9sb2dwKCZlbmMsIHJlZHVuZGFuY3ksIDEyKTsKICAg
ICAgICAgaWYgKHJlZHVuZGFuY3kpCiAgICAgICAgIHsKICAgICAgICAgICAgIGludCBtYXhfcmVk
dW5kYW5jeTsKICAgICAgICAgICAgIGVjX2VuY19iaXRfbG9ncCgmZW5jLCBjZWx0X3RvX3NpbGss
IDEpOwogICAgICAgICAgICAgaWYgKHN0LT5tb2RlID09IE1PREVfSFlCUklEKQotICAgICAgICAg
ICAgICAgbWF4X3JlZHVuZGFuY3kgPSAobWF4X2RhdGFfYnl0ZXMtMSktbmJfY29tcHJfYnl0ZXM7
CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAvKiBSZXNlcnZlIHRoZSA4IGJpdHMgbmVl
ZGVkIGZvciB0aGUgcmVkdW5kYW5jeSBsZW5ndGgsCisgICAgICAgICAgICAgICAgICBhbmQgYXQg
bGVhc3QgYSBmZXcgYml0cyBmb3IgQ0VMVCBpZiBwb3NzaWJsZSAqLworICAgICAgICAgICAgICAg
bWF4X3JlZHVuZGFuY3kgPSAobWF4X2RhdGFfYnl0ZXMtMSktKChlY190ZWxsKCZlbmMpKzgrMys3
KT4+Myk7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICBt
YXhfcmVkdW5kYW5jeSA9IChtYXhfZGF0YV9ieXRlcy0xKS0oKGVjX3RlbGwoJmVuYykrNyk+PjMp
OwogICAgICAgICAgICAgLyogVGFyZ2V0IHRoZSBzYW1lIGJpdC1yYXRlIGZvciByZWR1bmRhbmN5
IGFzIGZvciB0aGUgcmVzdCwKICAgICAgICAgICAgICAgIHVwIHRvIGEgbWF4IG9mIDI1NyBieXRl
cyAqLwotICAgICAgICAgICAgcmVkdW5kYW5jeV9ieXRlcyA9IElNSU4obWF4X3JlZHVuZGFuY3ks
IHN0LT5iaXRyYXRlX2Jwcy8xNjAwKTsKKyAgICAgICAgICAgIHJlZHVuZGFuY3lfYnl0ZXMgPSBJ
TUlOKG1heF9yZWR1bmRhbmN5LCByZWR1bmRhbmN5X2J5dGVzKTsKICAgICAgICAgICAgIHJlZHVu
ZGFuY3lfYnl0ZXMgPSBJTUlOKDI1NywgSU1BWCgyLCByZWR1bmRhbmN5X2J5dGVzKSk7CiAgICAg
ICAgICAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQpCiAgICAgICAgICAgICAgICAgZWNf
ZW5jX3VpbnQoJmVuYywgcmVkdW5kYW5jeV9ieXRlcy0yLCAyNTYpOwpAQCAtMTg0Myw3ICsyMDEx
LDcgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25z
dCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KICAgICAgICAgZWNfZW5jX2RvbmUoJmVuYyk7
CiAgICAgICAgIG5iX2NvbXByX2J5dGVzID0gcmV0OwogICAgIH0gZWxzZSB7Ci0gICAgICAgbmJf
Y29tcHJfYnl0ZXMgPSBJTUlOKChtYXhfZGF0YV9ieXRlcy0xKS1yZWR1bmRhbmN5X2J5dGVzLCBu
Yl9jb21wcl9ieXRlcyk7CisgICAgICAgbmJfY29tcHJfYnl0ZXMgPSAobWF4X2RhdGFfYnl0ZXMt
MSktcmVkdW5kYW5jeV9ieXRlczsKICAgICAgICBlY19lbmNfc2hyaW5rKCZlbmMsIG5iX2NvbXBy
X2J5dGVzKTsKICAgICB9CiAKQEAgLTE4NTEsNiArMjAxOSwxNCBAQCBvcHVzX2ludDMyIG9wdXNf
ZW5jb2RlX25hdGl2ZShPcHVzRW5jb2RlciAqc3QsIGNvbnN0IG9wdXNfdmFsMTYgKnBjbSwgaW50
IGZyYW1lXwogICAgIGlmIChyZWR1bmRhbmN5IHx8IHN0LT5tb2RlICE9IE1PREVfU0lMS19PTkxZ
KQogICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIENFTFRfU0VUX0FOQUxZU0lTKCZh
bmFseXNpc19pbmZvKSk7CiAjZW5kaWYKKyAgICBpZiAoc3QtPm1vZGUgPT0gTU9ERV9IWUJSSUQp
IHsKKyAgICAgICBTSUxLSW5mbyBpbmZvOworICAgICAgIGluZm8uc2lnbmFsVHlwZSA9IHN0LT5z
aWxrX21vZGUuc2lnbmFsVHlwZTsKKyAgICAgICBpbmZvLm9mZnNldCA9IHN0LT5zaWxrX21vZGUu
b2Zmc2V0OworICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIENFTFRfU0VUX1NJTEtf
SU5GTygmaW5mbykpOworICAgIH0gZWxzZSB7CisgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0
X2VuYywgQ0VMVF9TRVRfU0lMS19JTkZPKChTSUxLSW5mbyopTlVMTCkpOworICAgIH0KIAogICAg
IC8qIDUgbXMgcmVkdW5kYW50IGZyYW1lIGZvciBDRUxULT5TSUxLICovCiAgICAgaWYgKHJlZHVu
ZGFuY3kgJiYgY2VsdF90b19zaWxrKQpAQCAtMTg1OCw2ICsyMDM0LDcgQEAgb3B1c19pbnQzMiBv
cHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20s
IGludCBmcmFtZV8KICAgICAgICAgaW50IGVycjsKICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChj
ZWx0X2VuYywgQ0VMVF9TRVRfU1RBUlRfQkFORCgwKSk7CiAgICAgICAgIGNlbHRfZW5jb2Rlcl9j
dGwoY2VsdF9lbmMsIE9QVVNfU0VUX1ZCUigwKSk7CisgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwo
Y2VsdF9lbmMsIE9QVVNfU0VUX0JJVFJBVEUoT1BVU19CSVRSQVRFX01BWCkpOwogICAgICAgICBl
cnIgPSBjZWx0X2VuY29kZV93aXRoX2VjKGNlbHRfZW5jLCBwY21fYnVmLCBzdC0+RnMvMjAwLCBk
YXRhK25iX2NvbXByX2J5dGVzLCByZWR1bmRhbmN5X2J5dGVzLCBOVUxMKTsKICAgICAgICAgaWYg
KGVyciA8IDApCiAgICAgICAgIHsKQEAgLTE4ODEsMTUgKzIwNTgsMjUgQEAgb3B1c19pbnQzMiBv
cHVzX2VuY29kZV9uYXRpdmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20s
IGludCBmcmFtZV8KICAgICAgICAgICAgY2VsdF9lbmNvZGVfd2l0aF9lYyhjZWx0X2VuYywgdG1w
X3ByZWZpbGwsIHN0LT5Gcy80MDAsIGR1bW15LCAyLCBOVUxMKTsKICAgICAgICAgICAgY2VsdF9l
bmNvZGVyX2N0bChjZWx0X2VuYywgQ0VMVF9TRVRfUFJFRElDVElPTigwKSk7CiAgICAgICAgIH0K
LSAgICAgICAgLyogSWYgZmFsc2UsIHdlIGFscmVhZHkgYnVzdGVkIHRoZSBidWRnZXQgYW5kIHdl
J2xsIGVuZCB1cCB3aXRoIGEgIlBMQyBwYWNrZXQiICovCisgICAgICAgIC8qIElmIGZhbHNlLCB3
ZSBhbHJlYWR5IGJ1c3RlZCB0aGUgYnVkZ2V0IGFuZCB3ZSdsbCBlbmQgdXAgd2l0aCBhICJQTEMg
ZnJhbWUiICovCiAgICAgICAgIGlmIChlY190ZWxsKCZlbmMpIDw9IDgqbmJfY29tcHJfYnl0ZXMp
CiAgICAgICAgIHsKKyAgICAgICAgICAgLyogU2V0IHRoZSBiaXRyYXRlIGFnYWluIGlmIGl0IHdh
cyBvdmVycmlkZGVuIGluIHRoZSByZWR1bmRhbmN5IGNvZGUgYWJvdmUqLworICAgICAgICAgICBp
ZiAocmVkdW5kYW5jeSAmJiBjZWx0X3RvX3NpbGsgJiYgc3QtPm1vZGU9PU1PREVfSFlCUklEICYm
IHN0LT51c2VfdmJyKQorICAgICAgICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBP
UFVTX1NFVF9CSVRSQVRFKHN0LT5iaXRyYXRlX2Jwcy1zdC0+c2lsa19tb2RlLmJpdFJhdGUpKTsK
KyAgICAgICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgT1BVU19TRVRfVkJSKHN0LT51
c2VfdmJyKSk7CiAgICAgICAgICAgIHJldCA9IGNlbHRfZW5jb2RlX3dpdGhfZWMoY2VsdF9lbmMs
IHBjbV9idWYsIGZyYW1lX3NpemUsIE5VTEwsIG5iX2NvbXByX2J5dGVzLCAmZW5jKTsKICAgICAg
ICAgICAgaWYgKHJldCA8IDApCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgUkVTVE9SRV9T
VEFDSzsKICAgICAgICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJOQUxfRVJST1I7CiAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgLyogUHV0IENFTFQtPlNJTEsgcmVkdW5kYW5jeSBkYXRhIGluIHRo
ZSByaWdodCBwbGFjZS4gKi8KKyAgICAgICAgICAgaWYgKHJlZHVuZGFuY3kgJiYgY2VsdF90b19z
aWxrICYmIHN0LT5tb2RlPT1NT0RFX0hZQlJJRCAmJiBzdC0+dXNlX3ZicikKKyAgICAgICAgICAg
eworICAgICAgICAgICAgICBPUFVTX01PVkUoZGF0YStyZXQsIGRhdGErbmJfY29tcHJfYnl0ZXMs
IHJlZHVuZGFuY3lfYnl0ZXMpOworICAgICAgICAgICAgICBuYl9jb21wcl9ieXRlcyA9IG5iX2Nv
bXByX2J5dGVzK3JlZHVuZGFuY3lfYnl0ZXM7CisgICAgICAgICAgIH0KICAgICAgICAgfQogICAg
IH0KIApAQCAtMTkwNSw3ICsyMDkyLDE1IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfbmF0aXZl
KE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVfCiAgICAg
ICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfUkVTRVRfU1RBVEUpOwogICAgICAg
ICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBDRUxUX1NFVF9TVEFSVF9CQU5EKDApKTsKICAg
ICAgICAgY2VsdF9lbmNvZGVyX2N0bChjZWx0X2VuYywgQ0VMVF9TRVRfUFJFRElDVElPTigwKSk7
CisgICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX1ZCUigwKSk7Cisg
ICAgICAgIGNlbHRfZW5jb2Rlcl9jdGwoY2VsdF9lbmMsIE9QVVNfU0VUX0JJVFJBVEUoT1BVU19C
SVRSQVRFX01BWCkpOwogCisgICAgICAgIGlmIChzdC0+bW9kZSA9PSBNT0RFX0hZQlJJRCkKKyAg
ICAgICAgeworICAgICAgICAgICAvKiBTaHJpbmsgcGFja2V0IHRvIHdoYXQgdGhlIGVuY29kZXIg
YWN0dWFsbHkgdXNlZC4gKi8KKyAgICAgICAgICAgbmJfY29tcHJfYnl0ZXMgPSByZXQ7CisgICAg
ICAgICAgIGVjX2VuY19zaHJpbmsoJmVuYywgbmJfY29tcHJfYnl0ZXMpOworICAgICAgICB9CiAg
ICAgICAgIC8qIE5PVEU6IFdlIGNvdWxkIHNwZWVkIHRoaXMgdXAgc2xpZ2h0bHkgKGF0IHRoZSBl
eHBlbnNlIG9mIGNvZGUgc2l6ZSkgYnkganVzdCBhZGRpbmcgYSBmdW5jdGlvbiB0aGF0IHByZWZp
bGxzIHRoZSBidWZmZXIgKi8KICAgICAgICAgY2VsdF9lbmNvZGVfd2l0aF9lYyhjZWx0X2VuYywg
cGNtX2J1ZitzdC0+Y2hhbm5lbHMqKGZyYW1lX3NpemUtTjItTjQpLCBONCwgZHVtbXksIDIsIE5V
TEwpOwogCkBAIC0xOTM1LDYgKzIxMzAsMjEgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9uYXRp
dmUoT3B1c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX3ZhbDE2ICpwY20sIGludCBmcmFtZV8KIAog
ICAgIHN0LT5maXJzdCA9IDA7CiAKKyAgICAvKiBEVFggZGVjaXNpb24gKi8KKyNpZm5kZWYgRElT
QUJMRV9GTE9BVF9BUEkKKyAgICBpZiAoc3QtPnVzZV9kdHggJiYgKGFuYWx5c2lzX2luZm8udmFs
aWQgfHwgaXNfc2lsZW5jZSkpCisgICAgeworICAgICAgIGlmIChkZWNpZGVfZHR4X21vZGUoYW5h
bHlzaXNfaW5mby5hY3Rpdml0eV9wcm9iYWJpbGl0eSwgJnN0LT5uYl9ub19hY3Rpdml0eV9mcmFt
ZXMsCisgICAgICAgICAgICAgc3QtPnBlYWtfc2lnbmFsX2VuZXJneSwgcGNtLCBmcmFtZV9zaXpl
LCBzdC0+Y2hhbm5lbHMsIGlzX3NpbGVuY2UsIHN0LT5hcmNoKSkKKyAgICAgICB7CisgICAgICAg
ICAgc3QtPnJhbmdlRmluYWwgPSAwOworICAgICAgICAgIGRhdGFbMF0gPSBnZW5fdG9jKHN0LT5t
b2RlLCBzdC0+RnMvZnJhbWVfc2l6ZSwgY3Vycl9iYW5kd2lkdGgsIHN0LT5zdHJlYW1fY2hhbm5l
bHMpOworICAgICAgICAgIFJFU1RPUkVfU1RBQ0s7CisgICAgICAgICAgcmV0dXJuIDE7CisgICAg
ICAgfQorICAgIH0KKyNlbmRpZgorCiAgICAgLyogSW4gdGhlIHVubGlrZWx5IGNhc2UgdGhhdCB0
aGUgU0lMSyBlbmNvZGVyIGJ1c3RlZCBpdHMgdGFyZ2V0LCB0ZWxsCiAgICAgICAgdGhlIGRlY29k
ZXIgdG8gY2FsbCB0aGUgUExDICovCiAgICAgaWYgKGVjX3RlbGwoJmVuYykgPiAobWF4X2RhdGFf
Ynl0ZXMtMSkqOCkKQEAgLTE5NjIsNyArMjE3Miw2IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVf
bmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwxNiAqcGNtLCBpbnQgZnJhbWVf
CiAgICAgaWYgKCFzdC0+dXNlX3ZicikKICAgICB7CiAgICAgICAgaWYgKG9wdXNfcGFja2V0X3Bh
ZChkYXRhLCByZXQsIG1heF9kYXRhX2J5dGVzKSAhPSBPUFVTX09LKQotCiAgICAgICAgewogICAg
ICAgICAgIFJFU1RPUkVfU1RBQ0s7CiAgICAgICAgICAgcmV0dXJuIE9QVVNfSU5URVJOQUxfRVJS
T1I7CkBAIC0xOTgxLDE4ICsyMTkwLDE1IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGVfZmxvYXQo
T3B1c0VuY29kZXIgKnN0LCBjb25zdCBmbG9hdCAqcGNtLCBpbnQgYW5hbHlzaXNfZnJhCiB7CiAg
ICBpbnQgaSwgcmV0OwogICAgaW50IGZyYW1lX3NpemU7Ci0gICBpbnQgZGVsYXlfY29tcGVuc2F0
aW9uOwogICAgVkFSREVDTChvcHVzX2ludDE2LCBpbik7CiAgICBBTExPQ19TVEFDSzsKIAotICAg
aWYgKHN0LT5hcHBsaWNhdGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVM
QVkpCi0gICAgICBkZWxheV9jb21wZW5zYXRpb24gPSAwOwotICAgZWxzZQotICAgICAgZGVsYXlf
Y29tcGVuc2F0aW9uID0gc3QtPmRlbGF5X2NvbXBlbnNhdGlvbjsKLSAgIGZyYW1lX3NpemUgPSBj
b21wdXRlX2ZyYW1lX3NpemUocGNtLCBhbmFseXNpc19mcmFtZV9zaXplLAotICAgICAgICAgc3Qt
PnZhcmlhYmxlX2R1cmF0aW9uLCBzdC0+Y2hhbm5lbHMsIHN0LT5Gcywgc3QtPmJpdHJhdGVfYnBz
LAotICAgICAgICAgZGVsYXlfY29tcGVuc2F0aW9uLCBkb3dubWl4X2Zsb2F0LCBzdC0+YW5hbHlz
aXMuc3ViZnJhbWVfbWVtKTsKLQorICAgZnJhbWVfc2l6ZSA9IGZyYW1lX3NpemVfc2VsZWN0KGFu
YWx5c2lzX2ZyYW1lX3NpemUsIHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgc3QtPkZzKTsKKyAgIGlm
IChmcmFtZV9zaXplIDw9IDApCisgICB7CisgICAgICBSRVNUT1JFX1NUQUNLOworICAgICAgcmV0
dXJuIE9QVVNfQkFEX0FSRzsKKyAgIH0KICAgIEFMTE9DKGluLCBmcmFtZV9zaXplKnN0LT5jaGFu
bmVscywgb3B1c19pbnQxNik7CiAKICAgIGZvciAoaT0wO2k8ZnJhbWVfc2l6ZSpzdC0+Y2hhbm5l
bHM7aSsrKQpAQCAtMjAwOCwxOCArMjIxNCw3IEBAIG9wdXNfaW50MzIgb3B1c19lbmNvZGUoT3B1
c0VuY29kZXIgKnN0LCBjb25zdCBvcHVzX2ludDE2ICpwY20sIGludCBhbmFseXNpc19mcmFtCiAg
ICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqZGF0YSwgb3B1c19pbnQzMiBvdXRfZGF0YV9i
eXRlcykKIHsKICAgIGludCBmcmFtZV9zaXplOwotICAgaW50IGRlbGF5X2NvbXBlbnNhdGlvbjsK
LSAgIGlmIChzdC0+YXBwbGljYXRpb24gPT0gT1BVU19BUFBMSUNBVElPTl9SRVNUUklDVEVEX0xP
V0RFTEFZKQotICAgICAgZGVsYXlfY29tcGVuc2F0aW9uID0gMDsKLSAgIGVsc2UKLSAgICAgIGRl
bGF5X2NvbXBlbnNhdGlvbiA9IHN0LT5kZWxheV9jb21wZW5zYXRpb247Ci0gICBmcmFtZV9zaXpl
ID0gY29tcHV0ZV9mcmFtZV9zaXplKHBjbSwgYW5hbHlzaXNfZnJhbWVfc2l6ZSwKLSAgICAgICAg
IHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgc3QtPmNoYW5uZWxzLCBzdC0+RnMsIHN0LT5iaXRyYXRl
X2JwcywKLSAgICAgICAgIGRlbGF5X2NvbXBlbnNhdGlvbiwgZG93bm1peF9pbnQKLSNpZm5kZWYg
RElTQUJMRV9GTE9BVF9BUEkKLSAgICAgICAgICwgc3QtPmFuYWx5c2lzLnN1YmZyYW1lX21lbQot
I2VuZGlmCi0gICAgICAgICApOworICAgZnJhbWVfc2l6ZSA9IGZyYW1lX3NpemVfc2VsZWN0KGFu
YWx5c2lzX2ZyYW1lX3NpemUsIHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgc3QtPkZzKTsKICAgIHJl
dHVybiBvcHVzX2VuY29kZV9uYXRpdmUoc3QsIHBjbSwgZnJhbWVfc2l6ZSwgZGF0YSwgb3V0X2Rh
dGFfYnl0ZXMsIDE2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwY20sIGFuYWx5c2lz
X2ZyYW1lX3NpemUsIDAsIC0yLCBzdC0+Y2hhbm5lbHMsIGRvd25taXhfaW50LCAwKTsKIH0KQEAg
LTIwMzAsMTggKzIyMjUsMTUgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZShPcHVzRW5jb2RlciAq
c3QsIGNvbnN0IG9wdXNfaW50MTYgKnBjbSwgaW50IGFuYWx5c2lzX2ZyYW0KIHsKICAgIGludCBp
LCByZXQ7CiAgICBpbnQgZnJhbWVfc2l6ZTsKLSAgIGludCBkZWxheV9jb21wZW5zYXRpb247CiAg
ICBWQVJERUNMKGZsb2F0LCBpbik7CiAgICBBTExPQ19TVEFDSzsKIAotICAgaWYgKHN0LT5hcHBs
aWNhdGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVMQVkpCi0gICAgICBk
ZWxheV9jb21wZW5zYXRpb24gPSAwOwotICAgZWxzZQotICAgICAgZGVsYXlfY29tcGVuc2F0aW9u
ID0gc3QtPmRlbGF5X2NvbXBlbnNhdGlvbjsKLSAgIGZyYW1lX3NpemUgPSBjb21wdXRlX2ZyYW1l
X3NpemUocGNtLCBhbmFseXNpc19mcmFtZV9zaXplLAotICAgICAgICAgc3QtPnZhcmlhYmxlX2R1
cmF0aW9uLCBzdC0+Y2hhbm5lbHMsIHN0LT5Gcywgc3QtPmJpdHJhdGVfYnBzLAotICAgICAgICAg
ZGVsYXlfY29tcGVuc2F0aW9uLCBkb3dubWl4X2ludCwgc3QtPmFuYWx5c2lzLnN1YmZyYW1lX21l
bSk7Ci0KKyAgIGZyYW1lX3NpemUgPSBmcmFtZV9zaXplX3NlbGVjdChhbmFseXNpc19mcmFtZV9z
aXplLCBzdC0+dmFyaWFibGVfZHVyYXRpb24sIHN0LT5Gcyk7CisgICBpZiAoZnJhbWVfc2l6ZSA8
PSAwKQorICAgeworICAgICAgUkVTVE9SRV9TVEFDSzsKKyAgICAgIHJldHVybiBPUFVTX0JBRF9B
Ukc7CisgICB9CiAgICBBTExPQyhpbiwgZnJhbWVfc2l6ZSpzdC0+Y2hhbm5lbHMsIGZsb2F0KTsK
IAogICAgZm9yIChpPTA7aTxmcmFtZV9zaXplKnN0LT5jaGFubmVscztpKyspCkBAIC0yMDU1LDE0
ICsyMjQ3LDcgQEAgb3B1c19pbnQzMiBvcHVzX2VuY29kZV9mbG9hdChPcHVzRW5jb2RlciAqc3Qs
IGNvbnN0IGZsb2F0ICpwY20sIGludCBhbmFseXNpc19mcmEKICAgICAgICAgICAgICAgICAgICAg
ICB1bnNpZ25lZCBjaGFyICpkYXRhLCBvcHVzX2ludDMyIG91dF9kYXRhX2J5dGVzKQogewogICAg
aW50IGZyYW1lX3NpemU7Ci0gICBpbnQgZGVsYXlfY29tcGVuc2F0aW9uOwotICAgaWYgKHN0LT5h
cHBsaWNhdGlvbiA9PSBPUFVTX0FQUExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVMQVkpCi0gICAg
ICBkZWxheV9jb21wZW5zYXRpb24gPSAwOwotICAgZWxzZQotICAgICAgZGVsYXlfY29tcGVuc2F0
aW9uID0gc3QtPmRlbGF5X2NvbXBlbnNhdGlvbjsKLSAgIGZyYW1lX3NpemUgPSBjb21wdXRlX2Zy
YW1lX3NpemUocGNtLCBhbmFseXNpc19mcmFtZV9zaXplLAotICAgICAgICAgc3QtPnZhcmlhYmxl
X2R1cmF0aW9uLCBzdC0+Y2hhbm5lbHMsIHN0LT5Gcywgc3QtPmJpdHJhdGVfYnBzLAotICAgICAg
ICAgZGVsYXlfY29tcGVuc2F0aW9uLCBkb3dubWl4X2Zsb2F0LCBzdC0+YW5hbHlzaXMuc3ViZnJh
bWVfbWVtKTsKKyAgIGZyYW1lX3NpemUgPSBmcmFtZV9zaXplX3NlbGVjdChhbmFseXNpc19mcmFt
ZV9zaXplLCBzdC0+dmFyaWFibGVfZHVyYXRpb24sIHN0LT5Gcyk7CiAgICByZXR1cm4gb3B1c19l
bmNvZGVfbmF0aXZlKHN0LCBwY20sIGZyYW1lX3NpemUsIGRhdGEsIG91dF9kYXRhX2J5dGVzLCAy
NCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGNtLCBhbmFseXNpc19mcmFtZV9zaXpl
LCAwLCAtMiwgc3QtPmNoYW5uZWxzLCBkb3dubWl4X2Zsb2F0LCAxKTsKIH0KQEAgLTIwOTMsNiAr
MjI3OCw5IEBAIGludCBvcHVzX2VuY29kZXJfY3RsKE9wdXNFbmNvZGVyICpzdCwgaW50IHJlcXVl
c3QsIC4uLikKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQogICAgICAgICAg
ICAgc3QtPmFwcGxpY2F0aW9uID0gdmFsdWU7CisjaWZuZGVmIERJU0FCTEVfRkxPQVRfQVBJCisg
ICAgICAgICAgICBzdC0+YW5hbHlzaXMuYXBwbGljYXRpb24gPSB2YWx1ZTsKKyNlbmRpZgogICAg
ICAgICB9CiAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIE9QVVNfR0VUX0FQUExJQ0FUSU9O
X1JFUVVFU1Q6CkBAIC0yMjExLDcgKzIzOTksNyBAQCBpbnQgb3B1c19lbmNvZGVyX2N0bChPcHVz
RW5jb2RlciAqc3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICAgICAgICAgICB7CiAgICAgICAgICAg
ICAgICBnb3RvIGJhZF9hcmc7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBzdC0+c2lsa19t
b2RlLnVzZURUWCA9IHZhbHVlOworICAgICAgICAgICAgc3QtPnVzZV9kdHggPSB2YWx1ZTsKICAg
ICAgICAgfQogICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBPUFVTX0dFVF9EVFhfUkVRVUVT
VDoKQEAgLTIyMjEsNyArMjQwOSw3IEBAIGludCBvcHVzX2VuY29kZXJfY3RsKE9wdXNFbmNvZGVy
ICpzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGdv
dG8gYmFkX2FyZzsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICp2YWx1ZSA9IHN0LT5zaWxr
X21vZGUudXNlRFRYOworICAgICAgICAgICAgKnZhbHVlID0gc3QtPnVzZV9kdHg7CiAgICAgICAg
IH0KICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgT1BVU19TRVRfQ09NUExFWElUWV9SRVFV
RVNUOgpAQCAtMjQyMiwxMCArMjYxMCwxMSBAQCBpbnQgb3B1c19lbmNvZGVyX2N0bChPcHVzRW5j
b2RlciAqc3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICAgICAgIGNhc2UgT1BVU19TRVRfRVhQRVJU
X0ZSQU1FX0RVUkFUSU9OX1JFUVVFU1Q6CiAgICAgICAgIHsKICAgICAgICAgICAgIG9wdXNfaW50
MzIgdmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50MzIpOwotICAgICAgICAgICAgaWYgKHZhbHVl
ICE9IE9QVVNfRlJBTUVTSVpFX0FSRyAgICYmIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzJfNV9N
UyAmJgotICAgICAgICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzVfTVMgICYmIHZh
bHVlICE9IE9QVVNfRlJBTUVTSVpFXzEwX01TICAmJgotICAgICAgICAgICAgICAgIHZhbHVlICE9
IE9QVVNfRlJBTUVTSVpFXzIwX01TICYmIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzQwX01TICAm
JgotICAgICAgICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzYwX01TICYmIHZhbHVl
ICE9IE9QVVNfRlJBTUVTSVpFX1ZBUklBQkxFKQorICAgICAgICAgICAgaWYgKHZhbHVlICE9IE9Q
VVNfRlJBTUVTSVpFX0FSRyAgICAmJiB2YWx1ZSAhPSBPUFVTX0ZSQU1FU0laRV8yXzVfTVMgJiYK
KyAgICAgICAgICAgICAgICB2YWx1ZSAhPSBPUFVTX0ZSQU1FU0laRV81X01TICAgJiYgdmFsdWUg
IT0gT1BVU19GUkFNRVNJWkVfMTBfTVMgICYmCisgICAgICAgICAgICAgICAgdmFsdWUgIT0gT1BV
U19GUkFNRVNJWkVfMjBfTVMgICYmIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzQwX01TICAmJgor
ICAgICAgICAgICAgICAgIHZhbHVlICE9IE9QVVNfRlJBTUVTSVpFXzYwX01TICAmJiB2YWx1ZSAh
PSBPUFVTX0ZSQU1FU0laRV84MF9NUyAgJiYKKyAgICAgICAgICAgICAgICB2YWx1ZSAhPSBPUFVT
X0ZSQU1FU0laRV8xMDBfTVMgJiYgdmFsdWUgIT0gT1BVU19GUkFNRVNJWkVfMTIwX01TKQogICAg
ICAgICAgICAgewogICAgICAgICAgICAgICAgZ290byBiYWRfYXJnOwogICAgICAgICAgICAgfQpA
QCAtMjQ1OSw2ICsyNjQ4LDI2IEBAIGludCBvcHVzX2VuY29kZXJfY3RsKE9wdXNFbmNvZGVyICpz
dCwgaW50IHJlcXVlc3QsIC4uLikKICAgICAgICAgICAgKnZhbHVlID0gc3QtPnNpbGtfbW9kZS5y
ZWR1Y2VkRGVwZW5kZW5jeTsKICAgICAgICAgfQogICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgICAgICAgewor
ICAgICAgICAgICAgb3B1c19pbnQzMiB2YWx1ZSA9IHZhX2FyZyhhcCwgb3B1c19pbnQzMik7Cisg
ICAgICAgICAgICBpZih2YWx1ZTwwIHx8IHZhbHVlPjEpCisgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICBnb3RvIGJhZF9hcmc7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBjZWx0X2Vu
Y29kZXJfY3RsKGNlbHRfZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQodmFs
dWUpKTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBPUFVTX0dFVF9Q
SEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgICAgICAgeworICAgICAgICAgICAg
b3B1c19pbnQzMiAqdmFsdWUgPSB2YV9hcmcoYXAsIG9wdXNfaW50MzIqKTsKKyAgICAgICAgICAg
IGlmICghdmFsdWUpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICBnb3RvIGJhZF9hcmc7
CisgICAgICAgICAgICB9CisgICAgICAgICAgICBjZWx0X2VuY29kZXJfY3RsKGNlbHRfZW5jLCBP
UFVTX0dFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQodmFsdWUpKTsKKyAgICAgICAgfQorICAg
ICAgICBicmVhazsKICAgICAgICAgY2FzZSBPUFVTX1JFU0VUX1NUQVRFOgogICAgICAgICB7CiAg
ICAgICAgICAgIHZvaWQgKnNpbGtfZW5jOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19tdWx0aXN0cmVh
bV9kZWNvZGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L29wdXMvc3JjL3NyYy9vcHVzX211bHRpc3RyZWFtX2RlY29kZXIuYwppbmRleCBiOTVlYWE2
ZWFjMTJmMDM2YWI5ZjBhNGRlNjU2MjFiZjU3ZTViOGMwLi5lNDIxNzI2ZjJiNDI3ZGQyZGRkNGQy
MGYxZGZiOTljMmFmYjcwMDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX211bHRpc3RyZWFtX2RlY29k
ZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3NyYy9vcHVzX211bHRpc3RyZWFtX2RlY29kZXIuYwpAQCAtMjM3LDcgKzIzNyw4
IEBAIHN0YXRpYyBpbnQgb3B1c19tdWx0aXN0cmVhbV9kZWNvZGVfbmF0aXZlKAogICAgZm9yIChz
PTA7czxzdC0+bGF5b3V0Lm5iX3N0cmVhbXM7cysrKQogICAgewogICAgICAgT3B1c0RlY29kZXIg
KmRlYzsKLSAgICAgIGludCBwYWNrZXRfb2Zmc2V0LCByZXQ7CisgICAgICBvcHVzX2ludDMyIHBh
Y2tldF9vZmZzZXQ7CisgICAgICBpbnQgcmV0OwogCiAgICAgICBkZWMgPSAoT3B1c0RlY29kZXIq
KXB0cjsKICAgICAgIHB0ciArPSAocyA8IHN0LT5sYXlvdXQubmJfY291cGxlZF9zdHJlYW1zKSA/
IGFsaWduKGNvdXBsZWRfc2l6ZSkgOiBhbGlnbihtb25vX3NpemUpOwpAQCAtNDI1LDYgKzQyNiw3
IEBAIGludCBvcHVzX211bHRpc3RyZWFtX2RlY29kZXJfY3RsKE9wdXNNU0RlY29kZXIgKnN0LCBp
bnQgcmVxdWVzdCwgLi4uKQogICAgICAgIGNhc2UgT1BVU19HRVRfU0FNUExFX1JBVEVfUkVRVUVT
VDoKICAgICAgICBjYXNlIE9QVVNfR0VUX0dBSU5fUkVRVUVTVDoKICAgICAgICBjYXNlIE9QVVNf
R0VUX0xBU1RfUEFDS0VUX0RVUkFUSU9OX1JFUVVFU1Q6CisgICAgICAgY2FzZSBPUFVTX0dFVF9Q
SEFTRV9JTlZFUlNJT05fRElTQUJMRURfUkVRVUVTVDoKICAgICAgICB7CiAgICAgICAgICAgT3B1
c0RlY29kZXIgKmRlYzsKICAgICAgICAgICAvKiBGb3IgaW50MzIqIEdFVCBwYXJhbXMsIGp1c3Qg
cXVlcnkgdGhlIGZpcnN0IHN0cmVhbSAqLwpAQCAtNDk5LDYgKzUwMSw3IEBAIGludCBvcHVzX211
bHRpc3RyZWFtX2RlY29kZXJfY3RsKE9wdXNNU0RlY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwgLi4u
KQogICAgICAgIH0KICAgICAgICBicmVhazsKICAgICAgICBjYXNlIE9QVVNfU0VUX0dBSU5fUkVR
VUVTVDoKKyAgICAgICBjYXNlIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRF9SRVFV
RVNUOgogICAgICAgIHsKICAgICAgICAgICBpbnQgczsKICAgICAgICAgICAvKiBUaGlzIHdvcmtz
IGZvciBpbnQzMiBwYXJhbXMgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvc3JjL29wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy9zcmMvb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyLmMKaW5kZXggZTcyMmUzMWFiOGVl
OWYxMDI0Mjk0NDk1NGVhNmY1YWMyMDE4YTEzYi4uMDMyZmMwMDM5YjkxMzEyZTc1NmJmODljNmJm
MGRlMDUyZjY4YWNmMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy9zcmMvb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyLmMK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zcmMvb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyLmMKQEAgLTg3LDcgKzg3LDYgQEAgc3Ry
dWN0IE9wdXNNU0VuY29kZXIgewogICAgaW50IHZhcmlhYmxlX2R1cmF0aW9uOwogICAgTWFwcGlu
Z1R5cGUgbWFwcGluZ190eXBlOwogICAgb3B1c19pbnQzMiBiaXRyYXRlX2JwczsKLSAgIGZsb2F0
IHN1YmZyYW1lX21lbVszXTsKICAgIC8qIEVuY29kZXIgc3RhdGVzIGdvIGhlcmUgKi8KICAgIC8q
IHRoZW4gb3B1c192YWwzMiB3aW5kb3dfbWVtW2NoYW5uZWxzKjEyMF07ICovCiAgICAvKiB0aGVu
IG9wdXNfdmFsMzIgcHJlZW1waF9tZW1bY2hhbm5lbHNdOyAqLwpAQCAtMTMzLDYgKzEzMiwyOSBA
QCBzdGF0aWMgb3B1c192YWwzMiAqbXNfZ2V0X3dpbmRvd19tZW0oT3B1c01TRW5jb2RlciAqc3Qp
CiAgICByZXR1cm4gKG9wdXNfdmFsMzIqKSh2b2lkKilwdHI7CiB9CiAKKyNpZmRlZiBFTkFCTEVf
RVhQRVJJTUVOVEFMX0FNQklTT05JQ1MKK3N0YXRpYyBpbnQgdmFsaWRhdGVfYW1iaXNvbmljcyhp
bnQgbmJfY2hhbm5lbHMsIGludCAqbmJfc3RyZWFtcywgaW50ICpuYl9jb3VwbGVkX3N0cmVhbXMp
Cit7CisgICBpbnQgb3JkZXJfcGx1c19vbmU7CisgICBpbnQgYWNuX2NoYW5uZWxzOworICAgaW50
IG5vbmRpZWdldGljX2NoYW5uZWxzOworCisgICBvcmRlcl9wbHVzX29uZSA9IGlzcXJ0MzIobmJf
Y2hhbm5lbHMpOworICAgYWNuX2NoYW5uZWxzID0gb3JkZXJfcGx1c19vbmUgKiBvcmRlcl9wbHVz
X29uZTsKKyAgIG5vbmRpZWdldGljX2NoYW5uZWxzID0gbmJfY2hhbm5lbHMgLSBhY25fY2hhbm5l
bHM7CisKKyAgIGlmIChvcmRlcl9wbHVzX29uZSA8IDEgfHwgb3JkZXJfcGx1c19vbmUgPiAxNSB8
fAorICAgICAgIChub25kaWVnZXRpY19jaGFubmVscyAhPSAwICYmIG5vbmRpZWdldGljX2NoYW5u
ZWxzICE9IDIpKQorICAgICAgcmV0dXJuIDA7CisKKyAgIGlmIChuYl9zdHJlYW1zKQorICAgICAg
Km5iX3N0cmVhbXMgPSBhY25fY2hhbm5lbHMgKyAobm9uZGllZ2V0aWNfY2hhbm5lbHMgIT0gMCk7
CisgICBpZiAobmJfY291cGxlZF9zdHJlYW1zKQorICAgICAgKm5iX2NvdXBsZWRfc3RyZWFtcyA9
IG5vbmRpZWdldGljX2NoYW5uZWxzICE9IDA7CisgICByZXR1cm4gMTsKK30KKyNlbmRpZgorCiBz
dGF0aWMgaW50IHZhbGlkYXRlX2VuY29kZXJfbGF5b3V0KGNvbnN0IENoYW5uZWxMYXlvdXQgKmxh
eW91dCkKIHsKICAgIGludCBzOwpAQCAtMjQwLDYgKzI2Miw3IEBAIHZvaWQgc3Vycm91bmRfYW5h
bHlzaXMoY29uc3QgQ0VMVE1vZGUgKmNlbHRfbW9kZSwgY29uc3Qgdm9pZCAqcGNtLCBvcHVzX3Zh
bDE2ICpiCiAgICBpbnQgcG9zWzhdID0gezB9OwogICAgaW50IHVwc2FtcGxlOwogICAgaW50IGZy
YW1lX3NpemU7CisgICBpbnQgZnJlcV9zaXplOwogICAgb3B1c192YWwxNiBjaGFubmVsX29mZnNl
dDsKICAgIG9wdXNfdmFsMzIgYmFuZEVbMjFdOwogICAgb3B1c192YWwxNiBtYXNrTG9nRVszXVsy
MV07CkBAIC0yNTAsNiArMjczLDcgQEAgdm9pZCBzdXJyb3VuZF9hbmFseXNpcyhjb25zdCBDRUxU
TW9kZSAqY2VsdF9tb2RlLCBjb25zdCB2b2lkICpwY20sIG9wdXNfdmFsMTYgKmIKIAogICAgdXBz
YW1wbGUgPSByZXNhbXBsaW5nX2ZhY3RvcihyYXRlKTsKICAgIGZyYW1lX3NpemUgPSBsZW4qdXBz
YW1wbGU7CisgICBmcmVxX3NpemUgPSBJTUlOKDk2MCwgZnJhbWVfc2l6ZSk7CiAKICAgIC8qIExN
ID0gbG9nMihmcmFtZV9zaXplIC8gMTIwKSAqLwogICAgZm9yIChMTT0wO0xNPGNlbHRfbW9kZS0+
bWF4TE07TE0rKykKQEAgLTI1OCw3ICsyODIsNyBAQCB2b2lkIHN1cnJvdW5kX2FuYWx5c2lzKGNv
bnN0IENFTFRNb2RlICpjZWx0X21vZGUsIGNvbnN0IHZvaWQgKnBjbSwgb3B1c192YWwxNiAqYgog
CiAgICBBTExPQyhpbiwgZnJhbWVfc2l6ZStvdmVybGFwLCBvcHVzX3ZhbDMyKTsKICAgIEFMTE9D
KHgsIGxlbiwgb3B1c192YWwxNik7Ci0gICBBTExPQyhmcmVxLCBmcmFtZV9zaXplLCBvcHVzX3Zh
bDMyKTsKKyAgIEFMTE9DKGZyZXEsIGZyZXFfc2l6ZSwgb3B1c192YWwzMik7CiAKICAgIGNoYW5u
ZWxfcG9zKGNoYW5uZWxzLCBwb3MpOwogCkBAIC0yNjgsNiArMjkyLDkgQEAgdm9pZCBzdXJyb3Vu
ZF9hbmFseXNpcyhjb25zdCBDRUxUTW9kZSAqY2VsdF9tb2RlLCBjb25zdCB2b2lkICpwY20sIG9w
dXNfdmFsMTYgKmIKIAogICAgZm9yIChjPTA7YzxjaGFubmVscztjKyspCiAgICB7CisgICAgICBp
bnQgZnJhbWU7CisgICAgICBpbnQgbmJfZnJhbWVzID0gZnJhbWVfc2l6ZS9mcmVxX3NpemU7Cisg
ICAgICBjZWx0X2Fzc2VydChuYl9mcmFtZXMqZnJlcV9zaXplID09IGZyYW1lX3NpemUpOwogICAg
ICAgT1BVU19DT1BZKGluLCBtZW0rYypvdmVybGFwLCBvdmVybGFwKTsKICAgICAgICgqY29weV9j
aGFubmVsX2luKSh4LCAxLCBwY20sIGNoYW5uZWxzLCBjLCBsZW4pOwogICAgICAgY2VsdF9wcmVl
bXBoYXNpcyh4LCBpbitvdmVybGFwLCBmcmFtZV9zaXplLCAxLCB1cHNhbXBsZSwgY2VsdF9tb2Rl
LT5wcmVlbXBoLCBwcmVlbXBoX21lbStjLCAwKTsKQEAgLTI3NywyNSArMzA0LDMzIEBAIHZvaWQg
c3Vycm91bmRfYW5hbHlzaXMoY29uc3QgQ0VMVE1vZGUgKmNlbHRfbW9kZSwgY29uc3Qgdm9pZCAq
cGNtLCBvcHVzX3ZhbDE2ICpiCiAgICAgICAgICBzdW0gPSBjZWx0X2lubmVyX3Byb2QoaW4sIGlu
LCBmcmFtZV9zaXplK292ZXJsYXAsIDApOwogICAgICAgICAgLyogVGhpcyBzaG91bGQgZmlsdGVy
IG91dCBib3RoIE5hTnMgYW5kIHJpZGljdWxvdXMgc2lnbmFscyB0aGF0IGNvdWxkCiAgICAgICAg
ICAgICBjYXVzZSBOYU5zIGZ1cnRoZXIgZG93bi4gKi8KLSAgICAgICAgIGlmICghKHN1bSA8IDFl
OWYpIHx8IGNlbHRfaXNuYW4oc3VtKSkKKyAgICAgICAgIGlmICghKHN1bSA8IDFlMThmKSB8fCBj
ZWx0X2lzbmFuKHN1bSkpCiAgICAgICAgICB7CiAgICAgICAgICAgICBPUFVTX0NMRUFSKGluLCBm
cmFtZV9zaXplK292ZXJsYXApOwogICAgICAgICAgICAgcHJlZW1waF9tZW1bY10gPSAwOwogICAg
ICAgICAgfQogICAgICAgfQogI2VuZGlmCi0gICAgICBjbHRfbWRjdF9mb3J3YXJkKCZjZWx0X21v
ZGUtPm1kY3QsIGluLCBmcmVxLCBjZWx0X21vZGUtPndpbmRvdywKLSAgICAgICAgICAgIG92ZXJs
YXAsIGNlbHRfbW9kZS0+bWF4TE0tTE0sIDEsIGFyY2gpOwotICAgICAgaWYgKHVwc2FtcGxlICE9
IDEpCisgICAgICBPUFVTX0NMRUFSKGJhbmRFLCAyMSk7CisgICAgICBmb3IgKGZyYW1lPTA7ZnJh
bWU8bmJfZnJhbWVzO2ZyYW1lKyspCiAgICAgICB7Ci0gICAgICAgICBpbnQgYm91bmQgPSBsZW47
Ci0gICAgICAgICBmb3IgKGk9MDtpPGJvdW5kO2krKykKLSAgICAgICAgICAgIGZyZXFbaV0gKj0g
dXBzYW1wbGU7Ci0gICAgICAgICBmb3IgKDtpPGZyYW1lX3NpemU7aSsrKQotICAgICAgICAgICAg
ZnJlcVtpXSA9IDA7Ci0gICAgICB9CisgICAgICAgICBvcHVzX3ZhbDMyIHRtcEVbMjFdOworICAg
ICAgICAgY2x0X21kY3RfZm9yd2FyZCgmY2VsdF9tb2RlLT5tZGN0LCBpbis5NjAqZnJhbWUsIGZy
ZXEsIGNlbHRfbW9kZS0+d2luZG93LAorICAgICAgICAgICAgICAgb3ZlcmxhcCwgY2VsdF9tb2Rl
LT5tYXhMTS1MTSwgMSwgYXJjaCk7CisgICAgICAgICBpZiAodXBzYW1wbGUgIT0gMSkKKyAgICAg
ICAgIHsKKyAgICAgICAgICAgIGludCBib3VuZCA9IGZyZXFfc2l6ZS91cHNhbXBsZTsKKyAgICAg
ICAgICAgIGZvciAoaT0wO2k8Ym91bmQ7aSsrKQorICAgICAgICAgICAgICAgZnJlcVtpXSAqPSB1
cHNhbXBsZTsKKyAgICAgICAgICAgIGZvciAoO2k8ZnJlcV9zaXplO2krKykKKyAgICAgICAgICAg
ICAgIGZyZXFbaV0gPSAwOworICAgICAgICAgfQogCi0gICAgICBjb21wdXRlX2JhbmRfZW5lcmdp
ZXMoY2VsdF9tb2RlLCBmcmVxLCBiYW5kRSwgMjEsIDEsIExNKTsKKyAgICAgICAgIGNvbXB1dGVf
YmFuZF9lbmVyZ2llcyhjZWx0X21vZGUsIGZyZXEsIHRtcEUsIDIxLCAxLCBMTSwgYXJjaCk7Cisg
ICAgICAgICAvKiBJZiB3ZSBoYXZlIG11bHRpcGxlIGZyYW1lcywgdGFrZSB0aGUgbWF4IGVuZXJn
eS4gKi8KKyAgICAgICAgIGZvciAoaT0wO2k8MjE7aSsrKQorICAgICAgICAgICAgYmFuZEVbaV0g
PSBNQVgzMihiYW5kRVtpXSwgdG1wRVtpXSk7CisgICAgICB9CiAgICAgICBhbXAyTG9nMihjZWx0
X21vZGUsIDIxLCAyMSwgYmFuZEUsIGJhbmRMb2dFKzIxKmMsIDEpOwogICAgICAgLyogQXBwbHkg
c3ByZWFkaW5nIGZ1bmN0aW9uIHdpdGggLTYgZEIvYmFuZCBnb2luZyB1cCBhbmQgLTEyIGRCL2Jh
bmQgZ29pbmcgZG93bi4gKi8KICAgICAgIGZvciAoaT0xO2k8MjE7aSsrKQpAQCAtNDExLDggKzQ0
Niw4IEBAIG9wdXNfaW50MzIgb3B1c19tdWx0aXN0cmVhbV9zdXJyb3VuZF9lbmNvZGVyX2dldF9z
aXplKGludCBjaGFubmVscywgaW50IG1hcHBpbmdfCiAjaWZkZWYgRU5BQkxFX0VYUEVSSU1FTlRB
TF9BTUJJU09OSUNTCiAgICB9IGVsc2UgaWYgKG1hcHBpbmdfZmFtaWx5PT0yNTQpCiAgICB7Ci0g
ICAgICBuYl9zdHJlYW1zPWNoYW5uZWxzOwotICAgICAgbmJfY291cGxlZF9zdHJlYW1zPTA7Cisg
ICAgICBpZiAoIXZhbGlkYXRlX2FtYmlzb25pY3MoY2hhbm5lbHMsICZuYl9zdHJlYW1zLCAmbmJf
Y291cGxlZF9zdHJlYW1zKSkKKyAgICAgICAgIHJldHVybiAwOwogI2VuZGlmCiAgICB9IGVsc2UK
ICAgICAgIHJldHVybiAwOwpAQCAtNDQ4LDcgKzQ4Myw2IEBAIHN0YXRpYyBpbnQgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2luaXRfaW1wbCgKICAgIHN0LT5sYXlvdXQubmJfY2hhbm5lbHMgPSBj
aGFubmVsczsKICAgIHN0LT5sYXlvdXQubmJfc3RyZWFtcyA9IHN0cmVhbXM7CiAgICBzdC0+bGF5
b3V0Lm5iX2NvdXBsZWRfc3RyZWFtcyA9IGNvdXBsZWRfc3RyZWFtczsKLSAgIHN0LT5zdWJmcmFt
ZV9tZW1bMF09c3QtPnN1YmZyYW1lX21lbVsxXT1zdC0+c3ViZnJhbWVfbWVtWzJdPTA7CiAgICBp
ZiAobWFwcGluZ190eXBlICE9IE1BUFBJTkdfVFlQRV9TVVJST1VORCkKICAgICAgIHN0LT5sZmVf
c3RyZWFtID0gLTE7CiAgICBzdC0+Yml0cmF0ZV9icHMgPSBPUFVTX0FVVE87CkBAIC00NTYsOCAr
NDkwLDE2IEBAIHN0YXRpYyBpbnQgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2luaXRfaW1wbCgK
ICAgIHN0LT52YXJpYWJsZV9kdXJhdGlvbiA9IE9QVVNfRlJBTUVTSVpFX0FSRzsKICAgIGZvciAo
aT0wO2k8c3QtPmxheW91dC5uYl9jaGFubmVscztpKyspCiAgICAgICBzdC0+bGF5b3V0Lm1hcHBp
bmdbaV0gPSBtYXBwaW5nW2ldOwotICAgaWYgKCF2YWxpZGF0ZV9sYXlvdXQoJnN0LT5sYXlvdXQp
IHx8ICF2YWxpZGF0ZV9lbmNvZGVyX2xheW91dCgmc3QtPmxheW91dCkpCisgICBpZiAoIXZhbGlk
YXRlX2xheW91dCgmc3QtPmxheW91dCkpCiAgICAgICByZXR1cm4gT1BVU19CQURfQVJHOworICAg
aWYgKG1hcHBpbmdfdHlwZSA9PSBNQVBQSU5HX1RZUEVfU1VSUk9VTkQgJiYKKyAgICAgICAhdmFs
aWRhdGVfZW5jb2Rlcl9sYXlvdXQoJnN0LT5sYXlvdXQpKQorICAgICAgcmV0dXJuIE9QVVNfQkFE
X0FSRzsKKyNpZmRlZiBFTkFCTEVfRVhQRVJJTUVOVEFMX0FNQklTT05JQ1MKKyAgIGlmIChtYXBw
aW5nX3R5cGUgPT0gTUFQUElOR19UWVBFX0FNQklTT05JQ1MgJiYKKyAgICAgICAhdmFsaWRhdGVf
YW1iaXNvbmljcyhzdC0+bGF5b3V0Lm5iX2NoYW5uZWxzLCBOVUxMLCBOVUxMKSkKKyAgICAgIHJl
dHVybiBPUFVTX0JBRF9BUkc7CisjZW5kaWYKICAgIHB0ciA9IChjaGFyKilzdCArIGFsaWduKHNp
emVvZihPcHVzTVNFbmNvZGVyKSk7CiAgICBjb3VwbGVkX3NpemUgPSBvcHVzX2VuY29kZXJfZ2V0
X3NpemUoMik7CiAgICBtb25vX3NpemUgPSBvcHVzX2VuY29kZXJfZ2V0X3NpemUoMSk7CkBAIC01
NTMsMTAgKzU5NSwxMiBAQCBpbnQgb3B1c19tdWx0aXN0cmVhbV9zdXJyb3VuZF9lbmNvZGVyX2lu
aXQoCiAgICB9IGVsc2UgaWYgKG1hcHBpbmdfZmFtaWx5PT0yNTQpCiAgICB7CiAgICAgICBpbnQg
aTsKLSAgICAgICpzdHJlYW1zPWNoYW5uZWxzOwotICAgICAgKmNvdXBsZWRfc3RyZWFtcz0wOwot
ICAgICAgZm9yKGk9MDtpPGNoYW5uZWxzO2krKykKLSAgICAgICAgIG1hcHBpbmdbaV0gPSBpOwor
ICAgICAgaWYgKCF2YWxpZGF0ZV9hbWJpc29uaWNzKGNoYW5uZWxzLCBzdHJlYW1zLCBjb3VwbGVk
X3N0cmVhbXMpKQorICAgICAgICAgcmV0dXJuIE9QVVNfQkFEX0FSRzsKKyAgICAgIGZvcihpID0g
MDsgaSA8ICgqc3RyZWFtcyAtICpjb3VwbGVkX3N0cmVhbXMpOyBpKyspCisgICAgICAgICBtYXBw
aW5nW2ldID0gaSArICgqY291cGxlZF9zdHJlYW1zICogMik7CisgICAgICBmb3IoaSA9IDA7IGkg
PCAqY291cGxlZF9zdHJlYW1zICogMjsgaSsrKQorICAgICAgICAgbWFwcGluZ1tpICsgKCpzdHJl
YW1zIC0gKmNvdXBsZWRfc3RyZWFtcyldID0gaTsKICNlbmRpZgogICAgfSBlbHNlCiAgICAgICBy
ZXR1cm4gT1BVU19VTklNUExFTUVOVEVEOwpAQCAtNjcyLDU4ICs3MTYsNTkgQEAgc3RhdGljIHZv
aWQgc3Vycm91bmRfcmF0ZV9hbGxvY2F0aW9uKAogICAgaW50IGxmZV9vZmZzZXQ7CiAgICBpbnQg
Y291cGxlZF9yYXRpbzsgLyogUTggKi8KICAgIGludCBsZmVfcmF0aW87ICAgICAvKiBROCAqLwor
ICAgaW50IG5iX2xmZTsKKyAgIGludCBuYl91bmNvdXBsZWQ7CisgICBpbnQgbmJfY291cGxlZDsK
KyAgIGludCBuYl9ub3JtYWw7CisgICBvcHVzX2ludDMyIGNoYW5uZWxfb2Zmc2V0OworICAgb3B1
c19pbnQzMiBiaXRyYXRlOworICAgaW50IHRvdGFsOworCisgICBuYl9sZmUgPSAoc3QtPmxmZV9z
dHJlYW0hPS0xKTsKKyAgIG5iX2NvdXBsZWQgPSBzdC0+bGF5b3V0Lm5iX2NvdXBsZWRfc3RyZWFt
czsKKyAgIG5iX3VuY291cGxlZCA9IHN0LT5sYXlvdXQubmJfc3RyZWFtcy1uYl9jb3VwbGVkLW5i
X2xmZTsKKyAgIG5iX25vcm1hbCA9IDIqbmJfY291cGxlZCArIG5iX3VuY291cGxlZDsKKworICAg
LyogR2l2ZSBlYWNoIG5vbi1MRkUgY2hhbm5lbCBlbm91Z2ggYml0cyBwZXIgY2hhbm5lbCBmb3Ig
Y29kaW5nIGJhbmQgZW5lcmd5LiAqLworICAgY2hhbm5lbF9vZmZzZXQgPSA0MCpJTUFYKDUwLCBG
cy9mcmFtZV9zaXplKTsKIAotICAgaWYgKHN0LT5iaXRyYXRlX2JwcyA+IHN0LT5sYXlvdXQubmJf
Y2hhbm5lbHMqNDAwMDApCi0gICAgICBzdHJlYW1fb2Zmc2V0ID0gMjAwMDA7Ci0gICBlbHNlCi0g
ICAgICBzdHJlYW1fb2Zmc2V0ID0gc3QtPmJpdHJhdGVfYnBzL3N0LT5sYXlvdXQubmJfY2hhbm5l
bHMvMjsKLSAgIHN0cmVhbV9vZmZzZXQgKz0gNjAqKEZzL2ZyYW1lX3NpemUtNTApOwotICAgLyog
V2Ugc3RhcnQgYnkgZ2l2aW5nIGVhY2ggc3RyZWFtIChjb3VwbGVkIG9yIHVuY291cGxlZCkgdGhl
IHNhbWUgYml0cmF0ZS4KLSAgICAgIFRoaXMgbW9kZWxzIHRoZSBtYWluIHNhdmluZyBvZiBjb3Vw
bGVkIGNoYW5uZWxzIG92ZXIgdW5jb3VwbGVkLiAqLwotICAgLyogVGhlIExGRSBzdHJlYW0gaXMg
YW4gZXhjZXB0aW9uIHRvIHRoZSBhYm92ZSBhbmQgZ2V0cyBmZXdlciBiaXRzLiAqLwotICAgbGZl
X29mZnNldCA9IDM1MDAgKyA2MCooRnMvZnJhbWVfc2l6ZS01MCk7Ci0gICAvKiBDb3VwbGVkIHN0
cmVhbXMgZ2V0IHR3aWNlIHRoZSBtb25vIHJhdGUgYWZ0ZXIgdGhlIGZpcnN0IDIwIGtiL3MuICov
Ci0gICBjb3VwbGVkX3JhdGlvID0gNTEyOwotICAgLyogU2hvdWxkIGRlcGVuZCBvbiB0aGUgYml0
cmF0ZSwgZm9yIG5vdyB3ZSBhc3N1bWUgTEZFIGdldHMgMS84IHRoZSBiaXRzIG9mIG1vbm8gKi8K
LSAgIGxmZV9yYXRpbyA9IDMyOwotCi0gICAvKiBDb21wdXRlIGJpdHJhdGUgYWxsb2NhdGlvbiBi
ZXR3ZWVuIHN0cmVhbXMgKi8KICAgIGlmIChzdC0+Yml0cmF0ZV9icHM9PU9QVVNfQVVUTykKICAg
IHsKLSAgICAgIGNoYW5uZWxfcmF0ZSA9IEZzKzYwKkZzL2ZyYW1lX3NpemU7CisgICAgICBiaXRy
YXRlID0gbmJfbm9ybWFsKihjaGFubmVsX29mZnNldCArIEZzICsgMTAwMDApICsgODAwMCpuYl9s
ZmU7CiAgICB9IGVsc2UgaWYgKHN0LT5iaXRyYXRlX2Jwcz09T1BVU19CSVRSQVRFX01BWCkKICAg
IHsKLSAgICAgIGNoYW5uZWxfcmF0ZSA9IDMwMDAwMDsKKyAgICAgIGJpdHJhdGUgPSBuYl9ub3Jt
YWwqMzAwMDAwICsgbmJfbGZlKjEyODAwMDsKICAgIH0gZWxzZSB7Ci0gICAgICBpbnQgbmJfbGZl
OwotICAgICAgaW50IG5iX3VuY291cGxlZDsKLSAgICAgIGludCBuYl9jb3VwbGVkOwotICAgICAg
aW50IHRvdGFsOwotICAgICAgbmJfbGZlID0gKHN0LT5sZmVfc3RyZWFtIT0tMSk7Ci0gICAgICBu
Yl9jb3VwbGVkID0gc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXM7Ci0gICAgICBuYl91bmNv
dXBsZWQgPSBzdC0+bGF5b3V0Lm5iX3N0cmVhbXMtbmJfY291cGxlZC1uYl9sZmU7Ci0gICAgICB0
b3RhbCA9IChuYl91bmNvdXBsZWQ8PDgpICAgICAgICAgLyogbW9ubyAqLwotICAgICAgICAgICAg
KyBjb3VwbGVkX3JhdGlvKm5iX2NvdXBsZWQgLyogc3RlcmVvICovCi0gICAgICAgICAgICArIG5i
X2xmZSpsZmVfcmF0aW87Ci0gICAgICBjaGFubmVsX3JhdGUgPSAyNTYqKHN0LT5iaXRyYXRlX2Jw
cy1sZmVfb2Zmc2V0Km5iX2xmZS1zdHJlYW1fb2Zmc2V0KihuYl9jb3VwbGVkK25iX3VuY291cGxl
ZCkpL3RvdGFsOworICAgICAgYml0cmF0ZSA9IHN0LT5iaXRyYXRlX2JwczsKICAgIH0KLSNpZm5k
ZWYgRklYRURfUE9JTlQKLSAgIGlmIChzdC0+dmFyaWFibGVfZHVyYXRpb249PU9QVVNfRlJBTUVT
SVpFX1ZBUklBQkxFICYmIGZyYW1lX3NpemUgIT0gRnMvNTApCi0gICB7Ci0gICAgICBvcHVzX2lu
dDMyIGJvbnVzOwotICAgICAgYm9udXMgPSA2MCooRnMvZnJhbWVfc2l6ZS01MCk7Ci0gICAgICBj
aGFubmVsX3JhdGUgKz0gYm9udXM7Ci0gICB9Ci0jZW5kaWYKKworICAgLyogR2l2ZSBMRkUgc29t
ZSBiYXNpYyBzdHJlYW1fY2hhbm5lbCBhbGxvY2F0aW9uIGJ1dCBuZXZlciBleGNlZWQgMS8yMCBv
ZiB0aGUKKyAgICAgIHRvdGFsIHJhdGUgZm9yIHRoZSBub24tZW5lcmd5IHBhcnQgdG8gYXZvaWQg
cHJvYmxlbXMgYXQgcmVhbGx5IGxvdyByYXRlLiAqLworICAgbGZlX29mZnNldCA9IElNSU4oYml0
cmF0ZS8yMCwgMzAwMCkgKyAxNSpJTUFYKDUwLCBGcy9mcmFtZV9zaXplKTsKKworICAgLyogV2Ug
Z2l2ZSBlYWNoIHN0cmVhbSAoY291cGxlZCBvciB1bmNvdXBsZWQpIGEgc3RhcnRpbmcgYml0cmF0
ZS4KKyAgICAgIFRoaXMgbW9kZWxzIHRoZSBtYWluIHNhdmluZyBvZiBjb3VwbGVkIGNoYW5uZWxz
IG92ZXIgdW5jb3VwbGVkLiAqLworICAgc3RyZWFtX29mZnNldCA9IChiaXRyYXRlIC0gY2hhbm5l
bF9vZmZzZXQqbmJfbm9ybWFsIC0gbGZlX29mZnNldCpuYl9sZmUpL25iX25vcm1hbC8yOworICAg
c3RyZWFtX29mZnNldCA9IElNQVgoMCwgSU1JTigyMDAwMCwgc3RyZWFtX29mZnNldCkpOworCisg
ICAvKiBDb3VwbGVkIHN0cmVhbXMgZ2V0IHR3aWNlIHRoZSBtb25vIHJhdGUgYWZ0ZXIgdGhlIG9m
ZnNldCBpcyBhbGxvY2F0ZWQuICovCisgICBjb3VwbGVkX3JhdGlvID0gNTEyOworICAgLyogU2hv
dWxkIGRlcGVuZCBvbiB0aGUgYml0cmF0ZSwgZm9yIG5vdyB3ZSBhc3N1bWUgTEZFIGdldHMgMS84
IHRoZSBiaXRzIG9mIG1vbm8gKi8KKyAgIGxmZV9yYXRpbyA9IDMyOworCisgICB0b3RhbCA9IChu
Yl91bmNvdXBsZWQ8PDgpICAgICAgICAgLyogbW9ubyAqLworICAgICAgICAgKyBjb3VwbGVkX3Jh
dGlvKm5iX2NvdXBsZWQgLyogc3RlcmVvICovCisgICAgICAgICArIG5iX2xmZSpsZmVfcmF0aW87
CisgICBjaGFubmVsX3JhdGUgPSAyNTYqKG9wdXNfaW50NjQpKGJpdHJhdGUgLSBsZmVfb2Zmc2V0
Km5iX2xmZSAtIHN0cmVhbV9vZmZzZXQqKG5iX2NvdXBsZWQrbmJfdW5jb3VwbGVkKSAtIGNoYW5u
ZWxfb2Zmc2V0Km5iX25vcm1hbCkvdG90YWw7CiAKICAgIGZvciAoaT0wO2k8c3QtPmxheW91dC5u
Yl9zdHJlYW1zO2krKykKICAgIHsKICAgICAgIGlmIChpPHN0LT5sYXlvdXQubmJfY291cGxlZF9z
dHJlYW1zKQotICAgICAgICAgcmF0ZVtpXSA9IHN0cmVhbV9vZmZzZXQrKGNoYW5uZWxfcmF0ZSpj
b3VwbGVkX3JhdGlvPj44KTsKKyAgICAgICAgIHJhdGVbaV0gPSAyKmNoYW5uZWxfb2Zmc2V0ICsg
SU1BWCgwLCBzdHJlYW1fb2Zmc2V0KyhjaGFubmVsX3JhdGUqY291cGxlZF9yYXRpbz4+OCkpOwog
ICAgICAgZWxzZSBpZiAoaSE9c3QtPmxmZV9zdHJlYW0pCi0gICAgICAgICByYXRlW2ldID0gc3Ry
ZWFtX29mZnNldCtjaGFubmVsX3JhdGU7CisgICAgICAgICByYXRlW2ldID0gY2hhbm5lbF9vZmZz
ZXQgKyBJTUFYKDAsIHN0cmVhbV9vZmZzZXQgKyBjaGFubmVsX3JhdGUpOwogICAgICAgZWxzZQot
ICAgICAgICAgcmF0ZVtpXSA9IGxmZV9vZmZzZXQrKGNoYW5uZWxfcmF0ZSpsZmVfcmF0aW8+Pjgp
OworICAgICAgICAgcmF0ZVtpXSA9IElNQVgoMCwgbGZlX29mZnNldCsoY2hhbm5lbF9yYXRlKmxm
ZV9yYXRpbz4+OCkpOwogICAgfQogfQogCkBAIC03MzYsNDcgKzc4MSw3MiBAQCBzdGF0aWMgdm9p
ZCBhbWJpc29uaWNzX3JhdGVfYWxsb2NhdGlvbigKICAgICAgICkKIHsKICAgIGludCBpOwotICAg
aW50IG5vbl9tb25vX3JhdGU7CiAgICBpbnQgdG90YWxfcmF0ZTsKKyAgIGludCBkaXJlY3Rpb25h
bF9yYXRlOworICAgaW50IG5vbmRpcmVjdGlvbmFsX3JhdGU7CisgICBpbnQgbGVmdG92ZXJfYml0
czsKIAotICAgLyogVGhlIG1vbm8gY2hhbm5lbCBnZXRzIChyYXRlX3JhdGlvX251bSAvIHJhdGVf
cmF0aW9fZGVuKSB0aW1lcyBhcyBtYW55IGJpdHMKLSAgICAqIGFzIGFsbCBvdGhlciBjaGFubmVs
cyAqLworICAgLyogRWFjaCBub25kaXJlY3Rpb25hbCBjaGFubmVsIGdldHMgKHJhdGVfcmF0aW9f
bnVtIC8gcmF0ZV9yYXRpb19kZW4pIHRpbWVzCisgICAgKiBhcyBtYW55IGJpdHMgYXMgYWxsIG90
aGVyIGFtYmlzb25pY3MgY2hhbm5lbHMuCisgICAgKi8KICAgIGNvbnN0IGludCByYXRlX3JhdGlv
X251bSA9IDQ7CiAgICBjb25zdCBpbnQgcmF0ZV9yYXRpb19kZW4gPSAzOwotICAgY29uc3QgaW50
IG51bV9jaGFubmVscyA9IHN0LT5sYXlvdXQubmJfc3RyZWFtczsKKyAgIGNvbnN0IGludCBuYl9j
aGFubmVscyA9IHN0LT5sYXlvdXQubmJfc3RyZWFtcyArIHN0LT5sYXlvdXQubmJfY291cGxlZF9z
dHJlYW1zOworICAgY29uc3QgaW50IG5iX25vbmRpcmVjdGlvbmFsX2NoYW5uZWxzID0gc3QtPmxh
eW91dC5uYl9jb3VwbGVkX3N0cmVhbXMgKiAyICsgMTsKKyAgIGNvbnN0IGludCBuYl9kaXJlY3Rp
b25hbF9jaGFubmVscyA9IHN0LT5sYXlvdXQubmJfc3RyZWFtcyAtIDE7CiAKICAgIGlmIChzdC0+
Yml0cmF0ZV9icHM9PU9QVVNfQVVUTykKICAgIHsKLSAgICAgIHRvdGFsX3JhdGUgPSBudW1fY2hh
bm5lbHMgKiAoMjAwMDAgKyBzdC0+bGF5b3V0Lm5iX3N0cmVhbXMqKEZzKzYwKkZzL2ZyYW1lX3Np
emUpKTsKKyAgICAgIHRvdGFsX3JhdGUgPSAoc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXMg
KyBzdC0+bGF5b3V0Lm5iX3N0cmVhbXMpICoKKyAgICAgICAgIChGcys2MCpGcy9mcmFtZV9zaXpl
KSArIHN0LT5sYXlvdXQubmJfc3RyZWFtcyAqIDE1MDAwOwogICAgfSBlbHNlIGlmIChzdC0+Yml0
cmF0ZV9icHM9PU9QVVNfQklUUkFURV9NQVgpCiAgICB7Ci0gICAgICB0b3RhbF9yYXRlID0gbnVt
X2NoYW5uZWxzICogMzIwMDAwOwotICAgfSBlbHNlIHsKKyAgICAgIHRvdGFsX3JhdGUgPSBuYl9j
aGFubmVscyAqIDMyMDAwMDsKKyAgIH0gZWxzZQorICAgewogICAgICAgdG90YWxfcmF0ZSA9IHN0
LT5iaXRyYXRlX2JwczsKICAgIH0KIAotICAgLyogTGV0IHkgYmUgdGhlIG5vbi1tb25vIHJhdGUg
YW5kIGxldCBwLCBxIGJlIGludGVnZXJzIHN1Y2ggdGhhdCB0aGUgbW9ubwotICAgICogY2hhbm5l
bCByYXRlIGlzIChwL3EpICogeS4KKyAgIC8qIExldCB5IGJlIHRoZSBkaXJlY3Rpb25hbCByYXRl
LCBtIGJlIHRoZSBudW0gb2Ygbm9uZGlyZWN0aW9uYWwgY2hhbm5lbHMKKyAgICAqICAgbSA9IChz
ICsgMSkKKyAgICAqIGFuZCBsZXQgcCwgcSBiZSBpbnRlZ2VycyBzdWNoIHRoYXQgdGhlIG5vbmRp
cmVjdGlvbmFsIHJhdGUgaXMKKyAgICAqICAgbV9yYXRlID0gKHAgLyBxKSAqIHkKICAgICAqIEFs
c28gbGV0IFQgYmUgdGhlIHRvdGFsIGJpdHJhdGUgdG8gYWxsb2NhdGUuIFRoZW4KLSAgICAqICAg
KG4gLSAxKSB5ICsgKHAvcSkgeSA9IFQKLSAgICAqICAgeSA9IChUIHEpIC8gKHFuIC0gcSArIHAp
CisgICAgKiAgIFQgPSAobiAtIG0pICogeSArIG0gKiBtX3JhdGUKKyAgICAqIFNvbHZpbmcgZm9y
IHksCisgICAgKiAgIHkgPSAocSAqIFQpIC8gKG0gKiAocCAtIHEpICsgbiAqIHEpCiAgICAgKi8K
LSAgIG5vbl9tb25vX3JhdGUgPQotICAgICAgICAgdG90YWxfcmF0ZSAqIHJhdGVfcmF0aW9fZGVu
Ci0gICAgICAgICAvIChyYXRlX3JhdGlvX2RlbipudW1fY2hhbm5lbHMgKyByYXRlX3JhdGlvX251
bSAtIHJhdGVfcmF0aW9fZGVuKTsKKyAgIGRpcmVjdGlvbmFsX3JhdGUgPQorICAgICAgdG90YWxf
cmF0ZSAqIHJhdGVfcmF0aW9fZGVuCisgICAgICAvIChuYl9ub25kaXJlY3Rpb25hbF9jaGFubmVs
cyAqIChyYXRlX3JhdGlvX251bSAtIHJhdGVfcmF0aW9fZGVuKQorICAgICAgICsgbmJfY2hhbm5l
bHMgKiByYXRlX3JhdGlvX2Rlbik7CiAKLSNpZm5kZWYgRklYRURfUE9JTlQKLSAgIGlmIChzdC0+
dmFyaWFibGVfZHVyYXRpb249PU9QVVNfRlJBTUVTSVpFX1ZBUklBQkxFICYmIGZyYW1lX3NpemUg
IT0gRnMvNTApCi0gICB7Ci0gICAgICBvcHVzX2ludDMyIGJvbnVzID0gNjAqKEZzL2ZyYW1lX3Np
emUtNTApOwotICAgICAgbm9uX21vbm9fcmF0ZSArPSBib251czsKLSAgIH0KLSNlbmRpZgorICAg
LyogQ2FsY3VsYXRlIHRoZSBub25kaXJlY3Rpb25hbCByYXRlLgorICAgICogICBtX3JhdGUgPSB5
ICogKHAgLyBxKQorICAgICovCisgICBub25kaXJlY3Rpb25hbF9yYXRlID0gZGlyZWN0aW9uYWxf
cmF0ZSAqIHJhdGVfcmF0aW9fbnVtIC8gcmF0ZV9yYXRpb19kZW47CiAKLSAgIHJhdGVbMF0gPSB0
b3RhbF9yYXRlIC0gKG51bV9jaGFubmVscyAtIDEpICogbm9uX21vbm9fcmF0ZTsKLSAgIGZvciAo
aT0xO2k8c3QtPmxheW91dC5uYl9zdHJlYW1zO2krKykKKyAgIC8qIENhbGN1bGF0ZSB0aGUgbGVm
dG92ZXIgZnJvbSB0cnVuY2F0aW9uIGVycm9yLgorICAgICogICBsZWZ0b3ZlciA9IFQgLSB5ICog
KG4gLSBtKSAtIG1fcmF0ZSAqIG0KKyAgICAqIFBsYWNlIGxlZnRvdmVyIGJpdHMgaW4gb21uaWRp
cmVjdGlvbmFsIGNoYW5uZWwuCisgICAgKi8KKyAgIGxlZnRvdmVyX2JpdHMgPSB0b3RhbF9yYXRl
CisgICAgICAtIGRpcmVjdGlvbmFsX3JhdGUgKiBuYl9kaXJlY3Rpb25hbF9jaGFubmVscworICAg
ICAgLSBub25kaXJlY3Rpb25hbF9yYXRlICogbmJfbm9uZGlyZWN0aW9uYWxfY2hhbm5lbHM7CisK
KyAgIC8qIENhbGN1bGF0ZSByYXRlcyBmb3IgZWFjaCBjaGFubmVsICovCisgICBmb3IgKGkgPSAw
OyBpIDwgc3QtPmxheW91dC5uYl9zdHJlYW1zOyBpKyspCiAgICB7Ci0gICAgICByYXRlW2ldID0g
bm9uX21vbm9fcmF0ZTsKKyAgICAgIGlmIChpIDwgc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVh
bXMpCisgICAgICB7CisgICAgICAgICByYXRlW2ldID0gbm9uZGlyZWN0aW9uYWxfcmF0ZSAqIDI7
CisgICAgICB9IGVsc2UgaWYgKGkgPT0gc3QtPmxheW91dC5uYl9jb3VwbGVkX3N0cmVhbXMpCisg
ICAgICB7CisgICAgICAgICByYXRlW2ldID0gbm9uZGlyZWN0aW9uYWxfcmF0ZSArIGxlZnRvdmVy
X2JpdHM7CisgICAgICB9IGVsc2UKKyAgICAgIHsKKyAgICAgICAgIHJhdGVbaV0gPSBkaXJlY3Rp
b25hbF9yYXRlOworICAgICAgfQogICAgfQogfQogI2VuZGlmIC8qIEVOQUJMRV9FWFBFUklNRU5U
QUxfQU1CSVNPTklDUyAqLwpAQCAtODEyLDggKzg4Miw4IEBAIHN0YXRpYyBvcHVzX2ludDMyIHJh
dGVfYWxsb2NhdGlvbigKICAgIHJldHVybiByYXRlX3N1bTsKIH0KIAotLyogTWF4IHNpemUgaW4g
Y2FzZSB0aGUgZW5jb2RlciBkZWNpZGVzIHRvIHJldHVybiB0aHJlZSBmcmFtZXMgKi8KLSNkZWZp
bmUgTVNfRlJBTUVfVE1QICgzKjEyNzUrNykKKy8qIE1heCBzaXplIGluIGNhc2UgdGhlIGVuY29k
ZXIgZGVjaWRlcyB0byByZXR1cm4gc2l4IGZyYW1lcyAoNiB4IDIwIG1zID0gMTIwIG1zKSAqLwor
I2RlZmluZSBNU19GUkFNRV9UTVAgKDYqMTI3NSsxMikKIHN0YXRpYyBpbnQgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVfbmF0aXZlCiAoCiAgICAgT3B1c01TRW5jb2RlciAqc3QsCkBAIC04NTksMzIg
KzkyOSw4IEBAIHN0YXRpYyBpbnQgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVfbmF0aXZlCiAgICBv
cHVzX2VuY29kZXJfY3RsKChPcHVzRW5jb2RlciopcHRyLCBPUFVTX0dFVF9WQlIoJnZicikpOwog
ICAgb3B1c19lbmNvZGVyX2N0bCgoT3B1c0VuY29kZXIqKXB0ciwgQ0VMVF9HRVRfTU9ERSgmY2Vs
dF9tb2RlKSk7CiAKLSAgIHsKLSAgICAgIG9wdXNfaW50MzIgZGVsYXlfY29tcGVuc2F0aW9uOwot
ICAgICAgaW50IGNoYW5uZWxzOwotCi0gICAgICBjaGFubmVscyA9IHN0LT5sYXlvdXQubmJfc3Ry
ZWFtcyArIHN0LT5sYXlvdXQubmJfY291cGxlZF9zdHJlYW1zOwotICAgICAgb3B1c19lbmNvZGVy
X2N0bCgoT3B1c0VuY29kZXIqKXB0ciwgT1BVU19HRVRfTE9PS0FIRUFEKCZkZWxheV9jb21wZW5z
YXRpb24pKTsKLSAgICAgIGRlbGF5X2NvbXBlbnNhdGlvbiAtPSBGcy80MDA7Ci0gICAgICBmcmFt
ZV9zaXplID0gY29tcHV0ZV9mcmFtZV9zaXplKHBjbSwgYW5hbHlzaXNfZnJhbWVfc2l6ZSwKLSAg
ICAgICAgICAgIHN0LT52YXJpYWJsZV9kdXJhdGlvbiwgY2hhbm5lbHMsIEZzLCBzdC0+Yml0cmF0
ZV9icHMsCi0gICAgICAgICAgICBkZWxheV9jb21wZW5zYXRpb24sIGRvd25taXgKLSNpZm5kZWYg
RElTQUJMRV9GTE9BVF9BUEkKLSAgICAgICAgICAgICwgc3QtPnN1YmZyYW1lX21lbQotI2VuZGlm
Ci0gICAgICAgICAgICApOwotICAgfQotCi0gICBpZiAoNDAwKmZyYW1lX3NpemUgPCBGcykKLSAg
IHsKLSAgICAgIFJFU1RPUkVfU1RBQ0s7Ci0gICAgICByZXR1cm4gT1BVU19CQURfQVJHOwotICAg
fQotICAgLyogVmFsaWRhdGUgZnJhbWVfc2l6ZSBiZWZvcmUgdXNpbmcgaXQgdG8gYWxsb2NhdGUg
c3RhY2sgc3BhY2UuCi0gICAgICBUaGlzIG1pcnJvcnMgdGhlIGNoZWNrcyBpbiBvcHVzX2VuY29k
ZVtfZmxvYXRdKCkuICovCi0gICBpZiAoNDAwKmZyYW1lX3NpemUgIT0gRnMgJiYgMjAwKmZyYW1l
X3NpemUgIT0gRnMgJiYKLSAgICAgICAxMDAqZnJhbWVfc2l6ZSAhPSBGcyAmJiAgNTAqZnJhbWVf
c2l6ZSAhPSBGcyAmJgotICAgICAgICAyNSpmcmFtZV9zaXplICE9IEZzICYmICA1MCpmcmFtZV9z
aXplICE9IDMqRnMpCisgICBmcmFtZV9zaXplID0gZnJhbWVfc2l6ZV9zZWxlY3QoYW5hbHlzaXNf
ZnJhbWVfc2l6ZSwgc3QtPnZhcmlhYmxlX2R1cmF0aW9uLCBGcyk7CisgICBpZiAoZnJhbWVfc2l6
ZSA8PSAwKQogICAgewogICAgICAgUkVTVE9SRV9TVEFDSzsKICAgICAgIHJldHVybiBPUFVTX0JB
RF9BUkc7CkBAIC04OTIsNiArOTM4LDkgQEAgc3RhdGljIGludCBvcHVzX211bHRpc3RyZWFtX2Vu
Y29kZV9uYXRpdmUKIAogICAgLyogU21hbGxlc3QgcGFja2V0IHRoZSBlbmNvZGVyIGNhbiBwcm9k
dWNlLiAqLwogICAgc21hbGxlc3RfcGFja2V0ID0gc3QtPmxheW91dC5uYl9zdHJlYW1zKjItMTsK
KyAgIC8qIDEwMCBtcyBuZWVkcyBhbiBleHRyYSBieXRlIHBlciBzdHJlYW0gZm9yIHRoZSBUb0Mu
ICovCisgICBpZiAoRnMvZnJhbWVfc2l6ZSA9PSAxMCkKKyAgICAgc21hbGxlc3RfcGFja2V0ICs9
IHN0LT5sYXlvdXQubmJfc3RyZWFtczsKICAgIGlmIChtYXhfZGF0YV9ieXRlcyA8IHNtYWxsZXN0
X3BhY2tldCkKICAgIHsKICAgICAgIFJFU1RPUkVfU1RBQ0s7CkBAIC0xMDEzLDYgKzEwNjIsOSBA
QCBzdGF0aWMgaW50IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlX25hdGl2ZQogICAgICAgY3Vycl9t
YXggPSBtYXhfZGF0YV9ieXRlcyAtIHRvdF9zaXplOwogICAgICAgLyogUmVzZXJ2ZSBvbmUgYnl0
ZSBmb3IgdGhlIGxhc3Qgc3RyZWFtIGFuZCB0d28gZm9yIHRoZSBvdGhlcnMgKi8KICAgICAgIGN1
cnJfbWF4IC09IElNQVgoMCwyKihzdC0+bGF5b3V0Lm5iX3N0cmVhbXMtcy0xKS0xKTsKKyAgICAg
IC8qIEZvciAxMDAgbXMsIHJlc2VydmUgYW4gZXh0cmEgYnl0ZSBwZXIgc3RyZWFtIGZvciB0aGUg
VG9DICovCisgICAgICBpZiAoRnMvZnJhbWVfc2l6ZSA9PSAxMCkKKyAgICAgICAgY3Vycl9tYXgg
LT0gc3QtPmxheW91dC5uYl9zdHJlYW1zLXMtMTsKICAgICAgIGN1cnJfbWF4ID0gSU1JTihjdXJy
X21heCxNU19GUkFNRV9UTVApOwogICAgICAgLyogUmVwYWNrZXRpemVyIHdpbGwgYWRkIG9uZSBv
ciB0d28gYnl0ZXMgZm9yIHNlbGYtZGVsaW1pdGVkIGZyYW1lcyAqLwogICAgICAgaWYgKHMgIT0g
c3QtPmxheW91dC5uYl9zdHJlYW1zLTEpIGN1cnJfbWF4IC09ICBjdXJyX21heD4yNTMgPyAyIDog
MTsKQEAgLTExNjEsOSArMTIxMywxMSBAQCBpbnQgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0
bChPcHVzTVNFbmNvZGVyICpzdCwgaW50IHJlcXVlc3QsIC4uLikKICAgIGNhc2UgT1BVU19TRVRf
QklUUkFURV9SRVFVRVNUOgogICAgewogICAgICAgb3B1c19pbnQzMiB2YWx1ZSA9IHZhX2FyZyhh
cCwgb3B1c19pbnQzMik7Ci0gICAgICBpZiAodmFsdWU8MCAmJiB2YWx1ZSE9T1BVU19BVVRPICYm
IHZhbHVlIT1PUFVTX0JJVFJBVEVfTUFYKQorICAgICAgaWYgKHZhbHVlICE9IE9QVVNfQVVUTyAm
JiB2YWx1ZSAhPSBPUFVTX0JJVFJBVEVfTUFYKQogICAgICAgewotICAgICAgICAgZ290byBiYWRf
YXJnOworICAgICAgICAgaWYgKHZhbHVlIDw9IDApCisgICAgICAgICAgICBnb3RvIGJhZF9hcmc7
CisgICAgICAgICB2YWx1ZSA9IElNSU4oMzAwMDAwKnN0LT5sYXlvdXQubmJfY2hhbm5lbHMsIElN
QVgoNTAwKnN0LT5sYXlvdXQubmJfY2hhbm5lbHMsIHZhbHVlKSk7CiAgICAgICB9CiAgICAgICBz
dC0+Yml0cmF0ZV9icHMgPSB2YWx1ZTsKICAgIH0KQEAgLTEyMDYsNiArMTI2MCw3IEBAIGludCBv
cHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKE9wdXNNU0VuY29kZXIgKnN0LCBpbnQgcmVxdWVz
dCwgLi4uKQogICAgY2FzZSBPUFVTX0dFVF9JTkJBTkRfRkVDX1JFUVVFU1Q6CiAgICBjYXNlIE9Q
VVNfR0VUX0ZPUkNFX0NIQU5ORUxTX1JFUVVFU1Q6CiAgICBjYXNlIE9QVVNfR0VUX1BSRURJQ1RJ
T05fRElTQUJMRURfUkVRVUVTVDoKKyAgIGNhc2UgT1BVU19HRVRfUEhBU0VfSU5WRVJTSU9OX0RJ
U0FCTEVEX1JFUVVFU1Q6CiAgICB7CiAgICAgICBPcHVzRW5jb2RlciAqZW5jOwogICAgICAgLyog
Rm9yIGludDMyKiBHRVQgcGFyYW1zLCBqdXN0IHF1ZXJ5IHRoZSBmaXJzdCBzdHJlYW0gKi8KQEAg
LTEyNTIsNiArMTMwNyw3IEBAIGludCBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKE9wdXNN
U0VuY29kZXIgKnN0LCBpbnQgcmVxdWVzdCwgLi4uKQogICAgY2FzZSBPUFVTX1NFVF9GT1JDRV9N
T0RFX1JFUVVFU1Q6CiAgICBjYXNlIE9QVVNfU0VUX0ZPUkNFX0NIQU5ORUxTX1JFUVVFU1Q6CiAg
ICBjYXNlIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRURfUkVRVUVTVDoKKyAgIGNhc2UgT1BV
U19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEX1JFUVVFU1Q6CiAgICB7CiAgICAgICBpbnQg
czsKICAgICAgIC8qIFRoaXMgd29ya3MgZm9yIGludDMyIHBhcmFtcyAqLwpAQCAtMTMxMyw3ICsx
MzY5LDYgQEAgaW50IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoT3B1c01TRW5jb2RlciAq
c3QsIGludCByZXF1ZXN0LCAuLi4pCiAgICBjYXNlIE9QVVNfUkVTRVRfU1RBVEU6CiAgICB7CiAg
ICAgICBpbnQgczsKLSAgICAgIHN0LT5zdWJmcmFtZV9tZW1bMF0gPSBzdC0+c3ViZnJhbWVfbWVt
WzFdID0gc3QtPnN1YmZyYW1lX21lbVsyXSA9IDA7CiAgICAgICBpZiAoc3QtPm1hcHBpbmdfdHlw
ZSA9PSBNQVBQSU5HX1RZUEVfU1VSUk9VTkQpCiAgICAgICB7CiAgICAgICAgICBPUFVTX0NMRUFS
KG1zX2dldF9wcmVlbXBoX21lbShzdCksIHN0LT5sYXlvdXQubmJfY2hhbm5lbHMpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy9zcmMvb3B1c19wcml2YXRlLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX3ByaXZhdGUuaAppbmRleCAzYjYyZWVk
MDk2NGYwNTM1ZWYxMjAxN2MzODlhYmI2MjdlM2M0ZDBhLi5hNzMxY2M1NTBlYTQzNzI0ZDUyYmVi
NjUwYzQ5NzBkYTlhZGJkYTAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3NyYy9vcHVzX3ByaXZhdGUuaAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Ny
Yy9vcHVzX3ByaXZhdGUuaApAQCAtOTIsMTQgKzkyLDYgQEAgaW50IGVuY29kZV9zaXplKGludCBz
aXplLCB1bnNpZ25lZCBjaGFyICpkYXRhKTsKIAogb3B1c19pbnQzMiBmcmFtZV9zaXplX3NlbGVj
dChvcHVzX2ludDMyIGZyYW1lX3NpemUsIGludCB2YXJpYWJsZV9kdXJhdGlvbiwgb3B1c19pbnQz
MiBGcyk7CiAKLW9wdXNfaW50MzIgY29tcHV0ZV9mcmFtZV9zaXplKGNvbnN0IHZvaWQgKmFuYWx5
c2lzX3BjbSwgaW50IGZyYW1lX3NpemUsCi0gICAgICBpbnQgdmFyaWFibGVfZHVyYXRpb24sIGlu
dCBDLCBvcHVzX2ludDMyIEZzLCBpbnQgYml0cmF0ZV9icHMsCi0gICAgICBpbnQgZGVsYXlfY29t
cGVuc2F0aW9uLCBkb3dubWl4X2Z1bmMgZG93bm1peAotI2lmbmRlZiBESVNBQkxFX0ZMT0FUX0FQ
SQotICAgICAgLCBmbG9hdCAqc3ViZnJhbWVfbWVtCi0jZW5kaWYKLSAgICAgICk7Ci0KIG9wdXNf
aW50MzIgb3B1c19lbmNvZGVfbmF0aXZlKE9wdXNFbmNvZGVyICpzdCwgY29uc3Qgb3B1c192YWwx
NiAqcGNtLCBpbnQgZnJhbWVfc2l6ZSwKICAgICAgIHVuc2lnbmVkIGNoYXIgKmRhdGEsIG9wdXNf
aW50MzIgb3V0X2RhdGFfYnl0ZXMsIGludCBsc2JfZGVwdGgsCiAgICAgICBjb25zdCB2b2lkICph
bmFseXNpc19wY20sIG9wdXNfaW50MzIgYW5hbHlzaXNfc2l6ZSwgaW50IGMxLCBpbnQgYzIsCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3Rlc3RzL29wdXNfZGVjb2RlX2Z1enplci5jIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9vcHVzX2RlY29kZV9m
dXp6ZXIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi45MDAyNjIyMWNlYWYyOTliM2YwNDE0NWZkNDk3MTZmYjViMTQ2
ZDIyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9vcHVzX2RlY29kZV9mdXp6ZXIuYwpAQCAtMCww
ICsxLDEyNiBAQAorLyogQ29weXJpZ2h0IChjKSAyMDE3IEdvb2dsZSBJbmMuICovCisvKgorICAg
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAgIGFyZSBtZXQ6CisKKyAgIC0gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKworICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAg
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENP
TlRSSUJVVE9SUworICAgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgICBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VCBPV05FUgorICAgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgICBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgICBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
KyAgIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YKKyAgIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HCisgICBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAgIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
Ki8KKworI2lmZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNlbmRpZgor
CisjaW5jbHVkZSA8c3RkaW50Lmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3Ry
aW5nLmg+CisjaW5jbHVkZSAib3B1cy5oIgorI2luY2x1ZGUgIm9wdXNfdHlwZXMuaCIKKworI2Rl
ZmluZSBNQVhfRlJBTUVfU0FNUCA1NzYwCisjZGVmaW5lIE1BWF9QQUNLRVQgMTUwMAorCisvKiA0
IGJ5dGVzOiBwYWNrZXQgbGVuZ3RoLCA0IGJ5dGVzOiBlbmNvZGVyIGZpbmFsIHJhbmdlICovCisj
ZGVmaW5lIFNFVFVQX0JZVEVfQ09VTlQgOAorCit0eXBlZGVmIHN0cnVjdCB7CisgICAgaW50IGZz
OworICAgIGludCBjaGFubmVsczsKK30gVG9jSW5mbzsKKworc3RhdGljIHZvaWQgUGFyc2VUb2Mo
Y29uc3QgdWludDhfdCAqdG9jLCBUb2NJbmZvICpjb25zdCBpbmZvKSB7CisgICAgY29uc3QgaW50
IHNhbXBfZnJlcXNbNV0gPSB7ODAwMCwgMTIwMDAsIDE2MDAwLCAyNDAwMCwgNDgwMDB9OworICAg
IGNvbnN0IGludCBiYW5kd2lkdGggPSBvcHVzX3BhY2tldF9nZXRfYmFuZHdpZHRoKHRvYyk7CisK
KyAgICBpbmZvLT5mcyA9IHNhbXBfZnJlcXNbYmFuZHdpZHRoIC0gT1BVU19CQU5EV0lEVEhfTkFS
Uk9XQkFORF07CisgICAgaW5mby0+Y2hhbm5lbHMgPSBvcHVzX3BhY2tldF9nZXRfbmJfY2hhbm5l
bHModG9jKTsKK30KKworLyogVHJlYXRzIHRoZSBpbnB1dCBkYXRhIGFzIGNvbmNhdGVuYXRlZCBw
YWNrZXRzIGVuY29kZWQgYnkgb3B1c19kZW1vLAorICogc3RydWN0dXJlZCBhcworICogICAgYnl0
ZXMgMC4uMzogcGFja2V0IGxlbmd0aAorICogICAgYnl0ZXMgNC4uNzogZW5jb2RlciBmaW5hbCBy
YW5nZQorICogICAgYnl0ZXMgOCsgIDogT3B1cyBwYWNrZXQsIGluY2x1ZGluZyBUb0MKKyAqLwor
aW50IExMVk1GdXp6ZXJUZXN0T25lSW5wdXQoY29uc3QgdWludDhfdCAqZGF0YSwgc2l6ZV90IHNp
emUpIHsKKyAgICBPcHVzRGVjb2RlciAqZGVjOworICAgIG9wdXNfaW50MTYgKnBjbTsKKyAgICB1
aW50OF90ICpwYWNrZXQ7CisgICAgVG9jSW5mbyB0b2M7CisgICAgaW50IGksIGVycjsKKworICAg
IC8qIE5vdCBlbm91Z2ggZGF0YSB0byBzZXR1cCB0aGUgZGVjb2RlciAoKzEgZm9yIHRoZSBUb0Mp
ICovCisgICAgaWYgKHNpemUgPCBTRVRVUF9CWVRFX0NPVU5UICsgMSkgeworICAgICAgICByZXR1
cm4gMDsKKyAgICB9CisKKyAgICAvKiBDcmVhdGUgZGVjb2RlciBiYXNlZCBvbiBpbmZvIGZyb20g
dGhlIGZpcnN0IFRvQyBhdmFpbGFibGUgKi8KKyAgICBQYXJzZVRvYygmZGF0YVtTRVRVUF9CWVRF
X0NPVU5UXSwgJnRvYyk7CisKKyAgICBkZWMgPSBvcHVzX2RlY29kZXJfY3JlYXRlKHRvYy5mcywg
dG9jLmNoYW5uZWxzLCAmZXJyKTsKKyAgICBpZiAoZXJyICE9IE9QVVNfT0sgfCBkZWMgPT0gTlVM
TCkgeworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBwY20gPSAob3B1c19pbnQxNiop
IG1hbGxvYyhzaXplb2YoKnBjbSkgKiBNQVhfRlJBTUVfU0FNUCAqIHRvYy5jaGFubmVscyk7Cisg
ICAgcGFja2V0ID0gKHVpbnQ4X3QqKSBjYWxsb2MoTUFYX1BBQ0tFVCwgc2l6ZW9mKCpwYWNrZXQp
KTsKKworICAgIGkgPSAwOworICAgIHdoaWxlICgxKSB7CisgICAgICAgIGludCBsZW4sIGZlYzsK
KworICAgICAgICBpZiAoaSArIFNFVFVQX0JZVEVfQ09VTlQgPj0gc2l6ZSkgeworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIH0KKworICAgICAgICBsZW4gPSAob3B1c191aW50MzIpIGRhdGFb
aSAgICBdIDw8IDI0IHwKKyAgICAgICAgICAgICAgKG9wdXNfdWludDMyKSBkYXRhW2kgKyAxXSA8
PCAxNiB8CisgICAgICAgICAgICAgIChvcHVzX3VpbnQzMikgZGF0YVtpICsgMl0gPDwgIDggfAor
ICAgICAgICAgICAgICAob3B1c191aW50MzIpIGRhdGFbaSArIDNdOworICAgICAgICBpZiAobGVu
ID4gTUFYX1BBQ0tFVCB8fCBsZW4gPCAwKSB7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
fQorCisgICAgICAgIC8qIEJ5dGVzIDQuLjcgcmVwcmVzZW50IGVuY29kZXIgZmluYWwgcmFuZ2Us
IGJ1dCBhcmUgdW51c2VkIGhlcmUuCisgICAgICAgICAqIEluc3RlYWQsIGJ5dGUgNCBpcyByZXB1
cnBvc2VkIHRvIGRldGVybWluZSBpZiBGRUMgaXMgdXNlZC4gKi8KKyAgICAgICAgZmVjID0gZGF0
YVtpICsgNF0gJiAxOworCisgICAgICAgIC8qIExvc3QgcGFja2V0ICovCisgICAgICAgIGlmIChs
ZW4gPT0gMCkgeworICAgICAgICAgICAgaW50IGZyYW1lX3NpemU7CisgICAgICAgICAgICBvcHVz
X2RlY29kZXJfY3RsKGRlYywgT1BVU19HRVRfTEFTVF9QQUNLRVRfRFVSQVRJT04oJmZyYW1lX3Np
emUpKTsKKyAgICAgICAgICAgICh2b2lkKSBvcHVzX2RlY29kZShkZWMsIE5VTEwsIHNpemUsIHBj
bSwgZnJhbWVfc2l6ZSwgZmVjKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGlmIChp
ICsgU0VUVVBfQllURV9DT1VOVCArIGxlbiA+IHNpemUpIHsKKyAgICAgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIG1lbWNweShwY20sICZkYXRhW2kgKyBTRVRV
UF9CWVRFX0NPVU5UXSwgbGVuKTsKKyAgICAgICAgICAgICh2b2lkKSBvcHVzX2RlY29kZShkZWMs
IGRhdGEsIHNpemUsIHBjbSwgTUFYX0ZSQU1FX1NBTVAsIGZlYyk7CisgICAgICAgIH0KKworICAg
ICAgICBpICs9IFNFVFVQX0JZVEVfQ09VTlQgKyBsZW47CisgICAgfQorCisgICAgb3B1c19kZWNv
ZGVyX2Rlc3Ryb3koZGVjKTsKKyAgICBmcmVlKHBjbSk7CisgICAgZnJlZShwYWNrZXQpOworCisg
ICAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL29wdXNfZGVjb2RlX2Z1enplci5vcHRp
b25zIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVz
L3NyYy90ZXN0cy9vcHVzX2RlY29kZV9mdXp6ZXIub3B0aW9ucwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNWFlNzFi
OTM3YTRlMzU1N2YwNDc1NDUwODBmMmU1Mzg3MzZkNzBmCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0
cy9vcHVzX2RlY29kZV9mdXp6ZXIub3B0aW9ucwpAQCAtMCwwICsxLDIgQEAKK1tsaWJmdXp6ZXJd
CittYXhfbGVuID0gMTAwMDAwMApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9vcHVzX2VuY29kZV9yZWdyZXNz
aW9ucy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9v
cHVzL3NyYy90ZXN0cy9vcHVzX2VuY29kZV9yZWdyZXNzaW9ucy5jCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI5MjM0
NzMwMTQ0Mzk5MzQxYjUwYThiMzI4MmM2MjkxMjIzYjY2OTEKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rl
c3RzL29wdXNfZW5jb2RlX3JlZ3Jlc3Npb25zLmMKQEAgLTAsMCArMSwxMDM1IEBACisvKiBDb3B5
cmlnaHQgKGMpIDIwMTYgTWFyayBIYXJyaXMsIEplYW4tTWFyYyBWYWxpbiAqLworLyoKKyAgIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICAgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgICBhcmUgbWV0OgorCisgICAtIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisKKyAgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05U
UklCVVRPUlMKKyAgIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAgIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICAgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQg
T1dORVIKKyAgIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICAgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICAgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisg
ICBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GCisgICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworICAgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgICBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyov
CisKKworI2lmZGVmIEhBVkVfQ09ORklHX0gKKyNpbmNsdWRlICJjb25maWcuaCIKKyNlbmRpZgor
CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxsaW1p
dHMuaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxtYXRoLmg+CisjaW5jbHVkZSA8
c3RyaW5nLmg+CisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSAib3B1c19tdWx0aXN0cmVh
bS5oIgorI2luY2x1ZGUgIm9wdXMuaCIKKyNpbmNsdWRlICJ0ZXN0X29wdXNfY29tbW9uLmgiCisK
Kworc3RhdGljIGludCBjZWx0X2VjX2ludGVybmFsX2Vycm9yKHZvaWQpCit7CisgICAgT3B1c01T
RW5jb2RlciAqZW5jOworICAgIGludCBlcnI7CisgICAgdW5zaWduZWQgY2hhciBkYXRhWzI0NjBd
OworICAgIGludCBzdHJlYW1zOworICAgIGludCBjb3VwbGVkX3N0cmVhbXM7CisgICAgdW5zaWdu
ZWQgY2hhciBtYXBwaW5nWzFdOworCisgICAgZW5jID0gb3B1c19tdWx0aXN0cmVhbV9zdXJyb3Vu
ZF9lbmNvZGVyX2NyZWF0ZSgxNjAwMCwgMSwgMSwgJnN0cmVhbXMsCisgICAgICAgICZjb3VwbGVk
X3N0cmVhbXMsIG1hcHBpbmcsIE9QVVNfQVBQTElDQVRJT05fVk9JUCwgJmVycik7CisgICAgb3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05B
TF9NVVNJQykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9WQlIoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9WQlJfQ09OU1RSQUlOVCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMCkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMCkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVY
SVRZKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
TUFYX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSk7CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0FVVE8pKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTFNCX0RFUFRI
KDgpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfSU5C
QU5EX0ZFQygwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX1BBQ0tFVF9MT1NTX1BFUkMoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKE9QVVNfQVVUTykpOworICAgIHsKKyAgICAgICAgc3Rh
dGljIGNvbnN0IHNob3J0IHBjbVszMjBdID0KKyAgICAgICAgeworICAgICAgICAgICAgICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAs
CisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwg
IDE3OTIsICAxNzk5LCAgMTc5OSwKKyAgICAgICAgICAgICAgMTc5OSwgIDE3OTksICAxNzk5LCAg
MTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LAorICAgICAgICAgICAgICAx
Nzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgICAgIDAsIDI1NjAwLCAgMTc5OSwgIDE3
OTksCisgICAgICAgICAgICAgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5
OSwgIDE3OTksICAxNzk5LCAgMTc5OSwKKyAgICAgICAgICAgICAgMTc5OSwgIDE3OTksICAxNzk5
LCAgMTc5OSwgICAgIDcsICAgICAwLCAgIDI1NSwgICAgIDAsICAgICAwLAorICAgICAgICAgICAg
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAzMjc2Nywg
ICAgLTEsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAxMDAsICAgICAwLCAx
NjM4NCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgNCwgICAgIDAsICAgICAwLCAgLTI1NiwgICAyNTUsICAgICAwLAorICAgICAgICAg
ICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAgIDAs
LTMyNzY4LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAgICAg
ICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAg
ICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwgICAxMjgsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAg
ICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgLTI1NiwgICAgIDAsICAgICAw
LCAgICAzMiwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwgIDQzNTIsICAgICA0LCAgIDIyOCwKKyAgICAgICAgICAgICAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAor
ICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICA1
NjMyLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLC0zMjc2OCwgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwg
ICAyNTYsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLAorICAgICAgICAgICAgIC0zOTQ0LCAxMDUwMCwgIDQyODUsIDEwNDU5LCAtNjQ3NCwgMTAy
MDQsIC02NTM5LCAxMTYwMSwgLTY4MjQsCisgICAgICAgICAgICAgMTMzODUsIC03MTQyLCAxMzg3
MiwtMTE1NTMsIDEzNjcwLCAtNzcyNSwgMTM0NjMsIC02ODg3LCAgNzg3NCwKKyAgICAgICAgICAg
ICAtNTU4MCwgMTI2MDAsIC00OTY0LCAxMjQ4MCwgIDMyNTQsIDExNzQxLCAtNDIxMCwgIDk3NDEs
IC0zMTU1LAorICAgICAgICAgICAgICA3NTU4LCAtNTQ2OCwgIDU0MzEsIC0xMDczLCAgMzY0MSwg
LTEzMDQsICAgICAwLCAgICAtMSwgICAzNDMsCisgICAgICAgICAgICAgICAgMjYsICAgICAwLCAg
ICAgMCwgICAxNTAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAg
ICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAg
ICAgICAgICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAxNzk5LCAg
MTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgLTI1NTMsCisgICAgICAgICAgICAgICAgIDcsICAx
NzkyLCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwKKyAg
ICAgICAgICAgICAgMTc5OSwgIDE3OTksICAxNzk5LCAgMTc5OSwgLTk3MjEKKyAgICAgICAgfTsK
KyAgICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNvZGUoZW5jLCBwY20sIDMyMCwgZGF0
YSwgMjQ2MCk7CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICB9CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJ
QykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIo
MCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJf
Q09OU1RSQUlOVCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMCkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMSkpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDEw
KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9C
QU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX0ZVTExC
QU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xT
Ql9ERVBUSCgxOCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVT
X1NFVF9JTkJBTkRfRkVDKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVu
YywgT1BVU19TRVRfUEFDS0VUX0xPU1NfUEVSQyg5MCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1f
ZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDI4MDEzMCkpOworICAgIHsKKyAgICAg
ICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbVsxNjBdID0KKyAgICAgICAgeworICAgICAgICAgICAg
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MjYsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAg
ICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAg
ICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIDI1NjAwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAg
ICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAor
ICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMAorICAgICAgICB9
OworICAgICAgICBlcnIgPSBvcHVzX211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBjbSwgMTYwLCBk
YXRhLCAyNDYwKTsKKyAgICAgICAgYXNzZXJ0KGVyciA+IDApOworICAgIH0KKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX01V
U0lDKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZC
UigwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZC
Ul9DT05TVFJBSU5UKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfUFJFRElDVElPTl9ESVNBQkxFRCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgwKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgxKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFko
MTApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFY
X0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9GVUxMQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfRlVM
TEJBTkQpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
TFNCX0RFUFRIKDE4KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX0lOQkFORF9GRUMoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDkwKSk7CisgICAgb3B1c19tdWx0aXN0cmVh
bV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMjgwMTMwKSk7CisgICAgeworICAg
ICAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtWzE2MF0gPQorICAgICAgICB7CisgICAgICAgICAg
ICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAg
ICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAg
ICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisg
ICAgICAgICAgICAgLTk1MTAsIC05NDk0LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAs
CisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAg
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwCisgICAgICAg
IH07CisgICAgICAgIGVyciA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlKGVuYywgcGNtLCAxNjAs
IGRhdGEsIDI0NjApOworICAgICAgICBhc3NlcnQoZXJyID4gMCk7CisgICAgfQorICAgIG9wdXNf
bXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxf
TVVTSUMpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
VkJSKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
VkJSX0NPTlNUUkFJTlQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKDApKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRFRYKDEpKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElU
WSgxMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9N
QVhfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX0ZVTExCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9G
VUxMQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9MU0JfREVQVEgoMTgpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfSU5CQU5EX0ZFQygxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0
bChlbmMsIE9QVVNfU0VUX1BBQ0tFVF9MT1NTX1BFUkMoOTApKTsKKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURSgyODAxMzApKTsKKyAgICB7Cisg
ICAgICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY21bMTYwXSA9CisgICAgICAgIHsKKyAgICAgICAg
ICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAgICAg
ICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwg
LTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwKKyAg
ICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwK
KyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAt
OTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUx
MCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEw
LCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1MTAs
IC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAgICAg
LTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NDc5LCAt
OTUxMCwKKyAgICAgICAgICAgICAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05
NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLAorICAgICAgICAgICAgIC05NTEwLCAtOTUxMCwgLTk1
MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsCisgICAgICAgICAg
ICAgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAsIC05NTEwLCAtOTUxMCwgLTk1MTAKKyAgICAg
ICAgfTsKKyAgICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNvZGUoZW5jLCBwY20sIDE2
MCwgZGF0YSwgMjQ2MCk7CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICB9CisgICAgb3B1
c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05B
TF9NVVNJQykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9WQlIoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9WQlJfQ09OU1RSQUlOVCgxKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMCkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMSkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVY
SVRZKDEwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VU
X01BWF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfRlVMTEJBTkQpKTsKKyAgICBvcHVzX211bHRp
c3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQkFORFdJRFRI
X0ZVTExCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX0xTQl9ERVBUSCgxOCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9JTkJBTkRfRkVDKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfUEFDS0VUX0xPU1NfUEVSQyg5MCkpOworICAgIG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDI4MDEzMCkpOworICAgIHsK
KyAgICAgICAgc3RhdGljIGNvbnN0IHNob3J0IHBjbVsxNjBdID0KKyAgICAgICAgeworICAgICAg
ICAgICAgIC05NTEwLCAtOTUxMCwgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAg
MTc5OSwgIDE3OTksCisgICAgICAgICAgICAgIDE3OTksICAxNzk5LCAgMTc5OSwgIDE3OTksICAx
Nzk5LCAgMTc5OSwgIDE3OTksICAxNzk5LCAgICAgMCwKKyAgICAgICAgICAgICAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAorICAg
ICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgLTI1Niwg
ICAyNTUsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLAor
ICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAgICAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAw
LAorICAgICAgICAgICAgICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAs
ICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgICAgIDAsICAgICAwLCAgICAgMCwg
ICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgMTI4LCAgICAgMCwKKyAgICAgICAgICAgICAg
ICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAg
ICAwLAorICAgICAgICAgICAgICAgICAwLCAgICAzMiwgICAgIDAsICAgICAwLCAgICAgMCwgICAg
IDAsICAgICAwLCAgICAgMCwgICAgIDAsCisgICAgICAgICAgICAgIDQzNTIsICAgICA0LCAgICAg
MCwgICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwKKyAgICAgICAgICAg
ICAgICAgMCwgICAgIDAsICAgICAwLCAgICAgMCwgICAxNDgsICAgICAwLCAgICAgMCwgICAgIDAs
ICAgICAwLAorICAgICAgICAgICAgICA1NjMyCisgICAgICAgIH07CisgICAgICAgIGVyciA9IG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2RlKGVuYywgcGNtLCAxNjAsIGRhdGEsIDI0NjApOworICAgICAg
ICBhc3NlcnQoZXJyID4gMCk7CisgICAgfQorICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfVk9JQ0UpKTsKKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSKDApKTsKKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoMSkpOwor
ICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9O
X0RJU0FCTEVEKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfUEhBU0VfSU5WRVJTSU9OX0RJU0FCTEVEKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfRFRYKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFt
X2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQ09NUExFWElUWSgwKSk7CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX01BWF9CQU5EV0lEVEgoT1BVU19CQU5E
V0lEVEhfTkFSUk9XQkFORCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19BVVRPKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xTQl9ERVBUSCgxMikpOworICAgIG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9JTkJBTkRfRkVDKDApKTsKKyAgICBvcHVz
X211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEFDS0VUX0xPU1NfUEVSQyg0
MSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRS
QVRFKDIxNDI1KSk7CisgICAgeworICAgICAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtWzQwXSA9
CisgICAgICAgIHsKKyAgICAgICAgICAgICAxMDQ1OSwgLTY0NzQsIDEwMjA0LCAtNjUzOSwgMTE2
MDEsIC02ODI0LCAxMzM4NSwgLTcxNDIsIDEzODcyLAorICAgICAgICAgICAgLTExNTUzLCAxMzY3
MCwgLTc3MjUsIDEzNDYzLCAtNjg4NywgMTI0ODIsIC01NTgwLCAxMjYwMCwgLTQ5NjQsCisgICAg
ICAgICAgICAgMTI0ODAsICAzMjU0LCAxMTc0MSwgLTQyMTAsICA5NzQxLCAtMzE1NSwgIDc1NTgs
IC01NDY4LCAgNTQzMSwKKyAgICAgICAgICAgICAtMTA3MywgIDM2NDEsIC0xMzA0LCAgICAgMCwg
ICAgLTEsICAgMzQzLCAgICAyNiwgICAgIDAsICAgICAwLAorICAgICAgICAgICAgICAgICAwLCAg
ICAgMCwgIC0yNTYsICAgMjI2CisgICAgICAgIH07CisgICAgICAgIGVyciA9IG9wdXNfbXVsdGlz
dHJlYW1fZW5jb2RlKGVuYywgcGNtLCA0MCwgZGF0YSwgMjQ2MCk7CisgICAgICAgIGFzc2VydChl
cnIgPiAwKTsKKyAgICAgICAgLyogcmV0dXJucyAtMyAqLworICAgIH0KKyAgICBvcHVzX211bHRp
c3RyZWFtX2VuY29kZXJfZGVzdHJveShlbmMpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMg
aW50IG1zY2JyX2VuY29kZV9mYWlsMTAodm9pZCkKK3sKKyAgICBPcHVzTVNFbmNvZGVyICplbmM7
CisgICAgaW50IGVycjsKKyAgICB1bnNpZ25lZCBjaGFyIGRhdGFbNjI3MzAwXTsKKyAgICBzdGF0
aWMgY29uc3QgdW5zaWduZWQgY2hhciBtYXBwaW5nWzI1NV0gPQorICAgIHsKKyAgICAgICAgICAw
LCAgMSwgIDIsICAzLCAgNCwgIDUsICA2LCAgNywgIDgsICA5LCAxMCwgMTEsIDEyLCAxMywgMTQs
IDE1LCAxNiwKKyAgICAgICAgIDE3LCAxOCwgMTksIDIwLCAyMSwgMjIsIDIzLCAyNCwgMjUsIDI2
LCAyNywgMjgsIDI5LCAzMCwgMzEsIDMyLCAzMywKKyAgICAgICAgIDM0LCAzNSwgMzYsIDM3LCAz
OCwgMzksIDQwLCA0MSwgNDIsIDQzLCA0NCwgNDUsIDQ2LCA0NywgNDgsIDQ5LCA1MCwKKyAgICAg
ICAgIDUxLCA1MiwgNTMsIDU0LCA1NSwgNTYsIDU3LCA1OCwgNTksIDYwLCA2MSwgNjIsIDYzLCA2
NCwgNjUsIDY2LCA2NywKKyAgICAgICAgIDY4LCA2OSwgNzAsIDcxLCA3MiwgNzMsIDc0LCA3NSwg
NzYsIDc3LCA3OCwgNzksIDgwLCA4MSwgODIsIDgzLCA4NCwKKyAgICAgICAgIDg1LCA4NiwgODcs
IDg4LCA4OSwgOTAsIDkxLCA5MiwgOTMsIDk0LCA5NSwgOTYsIDk3LCA5OCwgOTksMTAwLDEwMSwK
KyAgICAgICAgMTAyLDEwMywxMDQsMTA1LDEwNiwxMDcsMTA4LDEwOSwxMTAsMTExLDExMiwxMTMs
MTE0LDExNSwxMTYsMTE3LDExOCwKKyAgICAgICAgMTE5LDEyMCwxMjEsMTIyLDEyMywxMjQsMTI1
LDEyNiwxMjcsMTI4LDEyOSwxMzAsMTMxLDEzMiwxMzMsMTM0LDEzNSwKKyAgICAgICAgMTM2LDEz
NywxMzgsMTM5LDE0MCwxNDEsMTQyLDE0MywxNDQsMTQ1LDE0NiwxNDcsMTQ4LDE0OSwxNTAsMTUx
LDE1MiwKKyAgICAgICAgMTUzLDE1NCwxNTUsMTU2LDE1NywxNTgsMTU5LDE2MCwxNjEsMTYyLDE2
MywxNjQsMTY1LDE2NiwxNjcsMTY4LDE2OSwKKyAgICAgICAgMTcwLDE3MSwxNzIsMTczLDE3NCwx
NzUsMTc2LDE3NywxNzgsMTc5LDE4MCwxODEsMTgyLDE4MywxODQsMTg1LDE4NiwKKyAgICAgICAg
MTg3LDE4OCwxODksMTkwLDE5MSwxOTIsMTkzLDE5NCwxOTUsMTk2LDE5NywxOTgsMTk5LDIwMCwy
MDEsMjAyLDIwMywKKyAgICAgICAgMjA0LDIwNSwyMDYsMjA3LDIwOCwyMDksMjEwLDIxMSwyMTIs
MjEzLDIxNCwyMTUsMjE2LDIxNywyMTgsMjE5LDIyMCwKKyAgICAgICAgMjIxLDIyMiwyMjMsMjI0
LDIyNSwyMjYsMjI3LDIyOCwyMjksMjMwLDIzMSwyMzIsMjMzLDIzNCwyMzUsMjM2LDIzNywKKyAg
ICAgICAgMjM4LDIzOSwyNDAsMjQxLDI0MiwyNDMsMjQ0LDI0NSwyNDYsMjQ3LDI0OCwyNDksMjUw
LDI1MSwyNTIsMjUzLDI1NAorICAgIH07CisKKyAgICBlbmMgPSBvcHVzX211bHRpc3RyZWFtX2Vu
Y29kZXJfY3JlYXRlKDgwMDAsIDI1NSwgMjU0LCAxLCBtYXBwaW5nLAorICAgICAgICBPUFVTX0FQ
UExJQ0FUSU9OX1JFU1RSSUNURURfTE9XREVMQVksICZlcnIpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfVk9JQ0UpKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSKDApKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSX0NPTlNU
UkFJTlQoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9QUkVESUNUSU9OX0RJU0FCTEVEKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfRk9SQ0VfQ0hBTk5FTFMoMikpOworICAgIG9wdXNfbXVsdGlzdHJl
YW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMSkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMSkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVY
SVRZKDIpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
TUFYX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSk7CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0FVVE8pKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTFNCX0RFUFRI
KDE0KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0lO
QkFORF9GRUMoMCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVT
X1NFVF9QQUNLRVRfTE9TU19QRVJDKDU3KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVy
X2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMzY0MjY3NSkpOworICAgIHsKKyAgICAgICAgc3Rh
dGljIGNvbnN0IHNob3J0IHBjbVsyMCoyNTVdID0KKyAgICAgICAgeworICAgICAgICAgICAgICAg
ICAwCisgICAgICAgIH07CisgICAgICAgIGVyciA9IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2RlKGVu
YywgcGNtLCAyMCwgZGF0YSwgNjI3MzAwKTsKKyAgICAgICAgYXNzZXJ0KGVyciA+IDApOworICAg
ICAgICAvKiByZXR1cm5zIC0xICovCisgICAgfQorICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9kZXN0cm95KGVuYyk7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgbXNjYnJfZW5j
b2RlX2ZhaWwodm9pZCkKK3sKKyAgICBPcHVzTVNFbmNvZGVyICplbmM7CisgICAgaW50IGVycjsK
KyAgICB1bnNpZ25lZCBjaGFyIGRhdGFbNDcyMzIwXTsKKyAgICBzdGF0aWMgY29uc3QgdW5zaWdu
ZWQgY2hhciBtYXBwaW5nWzE5Ml0gPQorICAgIHsKKyAgICAgICAgICAwLCAgMSwgIDIsICAzLCAg
NCwgIDUsICA2LCAgNywgIDgsICA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwKKyAgICAg
ICAgIDE3LCAxOCwgMTksIDIwLCAyMSwgMjIsIDIzLCAyNCwgMjUsIDI2LCAyNywgMjgsIDI5LCAz
MCwgMzEsIDMyLCAzMywKKyAgICAgICAgIDM0LCAzNSwgMzYsIDM3LCAzOCwgMzksIDQwLCA0MSwg
NDIsIDQzLCA0NCwgNDUsIDQ2LCA0NywgNDgsIDQ5LCA1MCwKKyAgICAgICAgIDUxLCA1MiwgNTMs
IDU0LCA1NSwgNTYsIDU3LCA1OCwgNTksIDYwLCA2MSwgNjIsIDYzLCA2NCwgNjUsIDY2LCA2NywK
KyAgICAgICAgIDY4LCA2OSwgNzAsIDcxLCA3MiwgNzMsIDc0LCA3NSwgNzYsIDc3LCA3OCwgNzks
IDgwLCA4MSwgODIsIDgzLCA4NCwKKyAgICAgICAgIDg1LCA4NiwgODcsIDg4LCA4OSwgOTAsIDkx
LCA5MiwgOTMsIDk0LCA5NSwgOTYsIDk3LCA5OCwgOTksMTAwLDEwMSwKKyAgICAgICAgMTAyLDEw
MywxMDQsMTA1LDEwNiwxMDcsMTA4LDEwOSwxMTAsMTExLDExMiwxMTMsMTE0LDExNSwxMTYsMTE3
LDExOCwKKyAgICAgICAgMTE5LDEyMCwxMjEsMTIyLDEyMywxMjQsMTI1LDEyNiwxMjcsMTI4LDEy
OSwxMzAsMTMxLDEzMiwxMzMsMTM0LDEzNSwKKyAgICAgICAgMTM2LDEzNywxMzgsMTM5LDE0MCwx
NDEsMTQyLDE0MywxNDQsMTQ1LDE0NiwxNDcsMTQ4LDE0OSwxNTAsMTUxLDE1MiwKKyAgICAgICAg
MTUzLDE1NCwxNTUsMTU2LDE1NywxNTgsMTU5LDE2MCwxNjEsMTYyLDE2MywxNjQsMTY1LDE2Niwx
NjcsMTY4LDE2OSwKKyAgICAgICAgMTcwLDE3MSwxNzIsMTczLDE3NCwxNzUsMTc2LDE3NywxNzgs
MTc5LDE4MCwxODEsMTgyLDE4MywxODQsMTg1LDE4NiwKKyAgICAgICAgMTg3LDE4OCwxODksMTkw
LDE5MQorICAgIH07CisKKyAgICBlbmMgPSBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3JlYXRl
KDgwMDAsIDE5MiwgMTg5LCAzLCBtYXBwaW5nLAorICAgICAgICBPUFVTX0FQUExJQ0FUSU9OX1JF
U1RSSUNURURfTE9XREVMQVksICZlcnIpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxfTVVTSUMpKTsKKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSKDApKTsKKyAgICBvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfVkJSX0NPTlNUUkFJTlQoMCkpOwor
ICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9O
X0RJU0FCTEVEKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfRk9SQ0VfQ0hBTk5FTFMoT1BVU19BVVRPKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1BIQVNFX0lOVkVSU0lPTl9ESVNBQkxFRCgwKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RUWCgwKSk7Cisg
ICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFko
MCkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhf
QkFORFdJRFRIKE9QVVNfQkFORFdJRFRIX01FRElVTUJBTkQpKTsKKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFORFdJRFRIKE9QVVNfQVVUTykpOworICAg
IG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9MU0JfREVQVEgoOCkp
OworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9JTkJBTkRf
RkVDKDApKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRf
UEFDS0VUX0xPU1NfUEVSQygwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX0JJVFJBVEUoMTUzNjApKTsKKyAgICB7CisgICAgICAgIHN0YXRpYyBjb25z
dCBzaG9ydCBwY21bMjAqMTkyXSA9CisgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgMAorICAg
ICAgICB9OworICAgICAgICBlcnIgPSBvcHVzX211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBjbSwg
MjAsIGRhdGEsIDQ3MjMyMCk7CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICAgICAgLyog
cmV0dXJucyAtMSAqLworICAgIH0KKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfZGVzdHJv
eShlbmMpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50IHN1cnJvdW5kX2FuYWx5c2lz
X3VuaW5pdCh2b2lkKQoreworICAgIE9wdXNNU0VuY29kZXIgKmVuYzsKKyAgICBpbnQgZXJyOwor
ICAgIHVuc2lnbmVkIGNoYXIgZGF0YVs3MzgwXTsKKyAgICBpbnQgc3RyZWFtczsKKyAgICBpbnQg
Y291cGxlZF9zdHJlYW1zOworICAgIHVuc2lnbmVkIGNoYXIgbWFwcGluZ1szXTsKKworICAgIGVu
YyA9IG9wdXNfbXVsdGlzdHJlYW1fc3Vycm91bmRfZW5jb2Rlcl9jcmVhdGUoMjQwMDAsIDMsIDEs
ICZzdHJlYW1zLAorICAgICAgICAmY291cGxlZF9zdHJlYW1zLCBtYXBwaW5nLCBPUFVTX0FQUExJ
Q0FUSU9OX0FVRElPLCAmZXJyKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVu
YywgT1BVU19TRVRfU0lHTkFMKE9QVVNfU0lHTkFMX1ZPSUNFKSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUigxKSk7CisgICAgb3B1c19tdWx0aXN0
cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1ZCUl9DT05TVFJBSU5UKDEpKTsKKyAgICBv
cHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUFJFRElDVElPTl9ESVNB
QkxFRCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VU
X0ZPUkNFX0NIQU5ORUxTKE9QVVNfQVVUTykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rl
cl9jdGwoZW5jLCBPUFVTX1NFVF9QSEFTRV9JTlZFUlNJT05fRElTQUJMRUQoMCkpOworICAgIG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9EVFgoMCkpOworICAgIG9w
dXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDApKTsK
KyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRX
SURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9l
bmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9OQVJST1dC
QU5EKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0xT
Ql9ERVBUSCg4KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX0lOQkFORF9GRUMoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5j
LCBPUFVTX1NFVF9CSVRSQVRFKDg0MzE1KSk7CisgICAgeworICAgICAgICBzdGF0aWMgY29uc3Qg
c2hvcnQgcGNtWzk2MCozXSA9CisgICAgICAgIHsKKyAgICAgICAgICAgICAtNjg5NiwgIDQ5MDEs
IC02MTU4LCAgNDEyMCwgLTUxNjQsICAzNjMxLCAtNDQ0MiwgIDMxNTMsIC00MDcwLAorICAgICAg
ICAgICAgICAzMzQ5LCAtNDU3NywgIDQ0NzQsIC01NTQxLCAgNTA1OCwgLTY3MDEsICAzODgxLCAt
NzkzMywgIDE4NjMsCisgICAgICAgICAgICAgLTgwNDEsICAgNjk3LCAtNjczOCwtMzE0NjQsIDE0
MzMwLC0xMjUyMywgIDQwOTYsIC02MTMwLCAyOTE3OCwKKyAgICAgICAgICAgICAgLTI1MCwtMjEy
NTIsIDEwNDY3LCAxNjkwNywgLTMzNTksIC02NjQ0LCAzMTk2NSwgMTQ2MDcsLTIxNTQ0LAorICAg
ICAgICAgICAgLTMyNDk3LCAyNDAyMCwgMTI1NTcsLTI2OTI2LC0xODQyMSwgLTE4NDIsIDI0NTg3
LCAxOTY1OSwgIDQ4NzgsCisgICAgICAgICAgICAgMTA5NTQsIDIzMDYwLCAgODkwNywtMTAyMTUs
LTE2MTc5LCAzMTc3MiwtMTE4MjUsLTE1NTkwLC0yMzA4OSwKKyAgICAgICAgICAgICAxNzE3Mywt
MjU5MDMsLTE3Mzg3LCAxMTczMywgIDQ4ODQsIDEwMjA0LC0xNjQ3NiwtMTQzNjcsICAgNTE2LAor
ICAgICAgICAgICAgIDIwNDUzLC0xNjg5OCwgMjA5NjcsLTIzODEzLCAgIC0yMCwgMjIwMTEsLTE3
MTY3LCAgOTQ1OSwgMzI0OTksCisgICAgICAgICAgICAtMjU4NTUsICAtNTIzLCAtMzg4MywgIC0z
OTAsIC00MjA2LCAgIDYzNCwgLTM3NjcsICAyMzI1LCAtMjc1MSwKKyAgICAgICAgICAgICAgMzEx
NSwgLTIzOTIsICAyNzQ2LCAtMjE3MywgIDIzMTcsIC0xMTQ3LCAgMjMyNiwgMjMxNDIsIDExMzE0
LAorICAgICAgICAgICAgLTE1MzUwLC0yNDUyOSwgIDMwMjYsICA2MTQ2LCAgMjE1MCwgIDI0NzYs
ICAxMTA1LCAgLTgzMCwgIDE3NzUsCisgICAgICAgICAgICAgLTM0MjUsICAzNjc0LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgICAg
NDI5MywtMTQwMjMsICAzODc5LC0xNTU1MywgIDMxNTgsLTE2MTYxLCAgMjYyOSwgMTg0MzMsLTEy
NTM1LAorICAgICAgICAgICAgIC02NjQ1LC0yMDczNSwtMzI3NjMsLTEzODI0LC0yMDk5MiwgMjU4
NTksIDEzMDUyLCAtODczMSwgIDIyOTIsCisgICAgICAgICAgICAgLTM4NjAsIDI0MDQ5LCAxMDIy
NSwtMTkyMjAsIDEwNDc4LC0yMjI5NCwgMjI3NzMsIDI4MTM3LCAxMzgxNiwKKyAgICAgICAgICAg
ICAzMDk1MywtMjU4NjMsLTI0NTk4LCAxNjg4OCwtMTQ2MTIsLTI4OTQyLCAyMDk3NCwtMjczOTcs
LTE4OTQ0LAorICAgICAgICAgICAgLTE4NjkwLCAyMDk5MSwtMTY2MzgsICA1NjMyLC0xNDMzMCwg
Mjg5MTEsLTI1NTk0LCAxNzQwOCwgMjk5NTgsCisgICAgICAgICAgICAgIC01MTcsLTIwOTg0LCAt
MTgwMCwgMTEyODEsICA5OTc3LC0yMTIyMSwtMTQ4NTQsIDIzODQwLCAtOTQ3NywKKyAgICAgICAg
ICAgICAgMzM2MiwtMTI4MDUsLTIyNDkzLCAzMjUwNywgICAxNTYsIDE2Mzg0LCAtMTE2MywgIDIz
MDEsIC0xODc0LAorICAgICAgICAgICAgICA0NjAwLCAtMTc0OCwgIDY5NTAsIDE2NTU3LCAgODE5
MiwgLTczNzIsIC0xMDMzLCAtMzI3OCwgIDI4MDYsCisgICAgICAgICAgICAgMjAyNzUsICAzMzE3
LCAgLTcxNywgIDk3OTIsICAtNzY3LCAgOTA5OSwgIC02MTMsICA4MzYyLCAgNTAyNywKKyAgICAg
ICAgICAgICAgNzc3NCwgIDI1OTcsICA4NTQ5LCAgNTI3OCwgIDg3NDMsICA5MzQzLCAgNjk0MCwg
MTMwMzgsICA0ODI2LAorICAgICAgICAgICAgIDE0MDg2LCAgMjk2NCwgMTMyMTUsICAxMzU1LCAx
MTU5NiwgICA0NTUsICA5ODUwLCAgLTUxOSwgMTA2ODAsCisgICAgICAgICAgICAgLTIyODcsIDEy
NTUxLCAtMzczNiwgMTM2MzksIC00MjkxLCAxMzc5MCwgLTI3MjIsIDE0NTQ0LCAgLTg2NiwKKyAg
ICAgICAgICAgICAxNTA1MCwgIC0zMDQsIDIyODMzLCAtMTE5NiwgMTM1MjAsIC0yMDYzLCAxMzA1
MSwgLTIzMTcsIDEzMDY2LAorICAgICAgICAgICAgIC0yNzM3LCAxMzc3MywgLTI2NjQsIDE0MTA1
LCAtMzQ0NywgMTM4NTQsIDI0NTg5LCAyNDY3MiwgLTUyODAsCisgICAgICAgICAgICAgMTAzODgs
IC00OTMzLCAgNzU0MywgLTQxNDksICAzNjU0LCAtMTU1MiwgIDE3MjYsICAgNjYxLCAgICA1NywK
KyAgICAgICAgICAgICAgMjkyMiwgIC03NTEsICAzOTE3LCAgODQxOSwgIDM4NDAsIC01MjE4LCAg
MzQzNSwgIDU1NDAsIC0xMDczLAorICAgICAgICAgICAgICA0MTUzLCAtNjY1NiwgIDE2NDksICAt
NzY5LCAtNzI3NiwtMTMwNzIsICA2MzgwLCAtNzk0OCwgMjA3MTcsCisgICAgICAgICAgICAgMTg0
MjUsIDE3MzkyLCAxNDMzNSwtMTgxOTAsIC0xODQyLCAyNDU4NywgMTk2NTksIDExNzkwLCAxMDk1
NCwKKyAgICAgICAgICAgICAyMzA2MCwgIDg5MDcsLTEwMjE1LC0xNjE3OSwgMzE3NzIsLTExODI1
LC0xNTU5MCwtMjMxMDEsIDE3MTczLAorICAgICAgICAgICAgLTI1OTAzLC0xNzM4NywgMTE3MzMs
ICA0ODg0LCAxMDE5MiwtMTY2MjcsLTE0MzY3LCAgIDUxNiwgMjA0NTMsCisgICAgICAgICAgICAt
MTY4OTgsIDIwOTY3LC0yMzgxMywgICAtMjAsIDIyMDExLC0xNzE2NywgIDk0NjgsIDMyNDk5LC0y
NTYwNywKKyAgICAgICAgICAgICAgLTUyMywgLTM4ODMsICAtMzkwLCAtNDIwNiwgICA2MzQsIC0z
NzY3LCAgMjMyNSwgLTI3NTEsICAzMTE1LAorICAgICAgICAgICAgIC0yMzkyLCAgMjc0NiwgLTIx
NjEsICAyMzE3LCAtMTE0NywgIDIzMjYsIDIzMTQyLCAxMTMxNCwtMTUzNTAsCisgICAgICAgICAg
ICAtMjkxMzcsICAzMDI2LC0xNTA1NiwgIC00OTEsLTE1MTcwLCAgLTM4NiwtMTYwMTUsICAtNjQx
LC0xNjUwNSwKKyAgICAgICAgICAgICAgLTkzMCwtMTYyMDYsICAtNzE3LC0xNjE3NSwgLTI4Mzks
LTE2Mzc0LCAtNDU1OCwtMTYyMzcsIC01MjA3LAorICAgICAgICAgICAgLTE1OTAzLCAtNjQyMSwg
IDYzNzMsIC0xNDAzLCAgNTQzMSwgLTEwNzMsICAzNjQxLCAtMTMwNCwgLTQ0OTUsCisgICAgICAg
ICAgICAgIC03NjksIC03Mjc2LCAgMjg1NiwgLTc4NzAsICAzMzE0LCAtODczMCwgIDM5NjQsLTEw
MTgzLCAgNDAxMSwKKyAgICAgICAgICAgIC0xMTEzNSwgIDM0MjEsLTExNzI3LCAgMjk2NiwtMTIz
NjAsICAyODE4LC0xMzQ3MiwgIDM2NjAsLTEzODA1LAorICAgICAgICAgICAgICA1MTYyLC0xMzQ3
OCwgIDY0MzQsLTEyODQwLCAgNzMzNSwtMTI0MjAsICA2ODY1LC0xMjM0OSwgIDU1NDEsCisgICAg
ICAgICAgICAtMTE5NjUsICA1NTMwLC0xMDgyMCwgIDUxMzIsIC05MTk3LCAgMzM2NywgLTc3NDUs
ICAxMjIzLCAtNjkxMCwKKyAgICAgICAgICAgICAgLTQzMywgLTYyMTEsIC0xNzExLCAtNDk1OCwg
LTEwMjUsIC0zNzU1LCAgLTgzNiwgLTMyOTIsIC0xNjY2LAorICAgICAgICAgICAgIC0yNjYxLC0x
MDc1NSwgMzE0NzIsLTI3OTA2LCAzMTQ3MSwgMTg2OTAsICA1NjE3LCAxNjY0OSwgMTEyNTMsCisg
ICAgICAgICAgICAtMjI1MTYsLTE3Njc0LC0zMTk5MCwgIDM1NzUsLTMxNDc5LCAgNTg4MywgMjYx
MjEsIDEyODkwLCAtNjYxMiwKKyAgICAgICAgICAgICAxMjIyOCwtMTE2MzQsICAgNTIzLCAyNjEz
NiwtMjE0OTYsIDIwNzQ1LC0xNTg2OCwgLTQxMDAsLTI0ODI2LAorICAgICAgICAgICAgIDIzMjgy
LCAyMjc5OCwgICA0OTEsIC0xNzc0LCAxNTA3NSwtMjczNzMsLTEzMDk0LCAgNjQxNywtMjk0ODcs
CisgICAgICAgICAgICAgMTQ2MDgsIDEwMTg1LCAxNjE0MywgMjIyMTEsIC04NDM2LCAgNDI4OCwg
LTg2OTQsICAyMzc1LCAgMzAyMywKKyAgICAgICAgICAgICAgIDQ4NiwgIDE0NTUsICAgMTI4LCAg
IDIwMiwgICA5NDIsICAtOTIzLCAgMjA2OCwgLTEyMzMsICAtNzE3LAorICAgICAgICAgICAgIC0x
MDQyLCAtMjE2NywgMzIyNTUsIC00NjMyLCAgIDMxMCwgLTQ0NTgsIC0zNjM5LCAtNTI1OCwgIDIx
MDYsCisgICAgICAgICAgICAgLTY4NTcsICAyNjgxLCAtNzQ5NywgIDI3NjUsIC02NjAxLCAgMTk0
NSwgLTUyMTksIDE5MTU0LCAtNDg3NywKKyAgICAgICAgICAgICAgIDYxOSwgLTU3MTksIC0xOTI4
LCAtNjIwOCwgIC0xMjEsICAgNTkzLCAgIDE4OCwgIDE1NTgsIC00MTUyLAorICAgICAgICAgICAg
ICAxNjQ4LCAgIDE1NiwgIDE2MDQsIC0zNjY0LCAtNjg2MiwgLTI4NTEsIC01MTEyLCAtMzYwMCwg
LTM3NDcsCisgICAgICAgICAgICAgLTUwODEsIC00NDI4LCAtNTU5MiwgMjA5NzQsLTI3Mzk3LC0x
ODk0NCwtMTg2OTAsIDIwOTkxLC0xNzQwNiwKKyAgICAgICAgICAgICAgNTYzMiwtMTQzMzAsIDI4
OTExLCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LAorICAgICAgICAg
ICAgIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsLTI1NTk0LCAxNzQw
OCwgMjk5NTgsCisgICAgICAgICAgICAgLTcxNzMsLTE2ODg4LCAgOTA5OCwgIC02MTMsICA4MzYy
LCAgIDY3NSwgIDc3NzQsICAyNTk3LCAgODU0OSwKKyAgICAgICAgICAgICAgNTI3OCwgIDg3NDMs
ICA5Mzc1LCAgNjk0MCwgMTMwMzgsICA0ODI2LCAxNDU5OCwgIDc3MjEsLTI0MzA4LAorICAgICAg
ICAgICAgLTI5OTA1LC0xOTcwMywtMTcxMDYsLTE2MTI0LCAtMzI4NywtMjYxMTgsLTE5NzA5LC0x
MDc2OSwgMjQzNTMsCisgICAgICAgICAgICAgMjg2NDgsICA2OTQ2LCAtMTM2MywgMTI0ODUsIC0x
MTg3LCAyNjA3NCwtMjUwNTUsIDEwMDA0LC0yNDc5OCwKKyAgICAgICAgICAgICAgNzIwNCwgLTQ1
ODEsIC05Njc4LCAgMTU1NCwgMTA1NTMsICAzMTAyLCAxMjE5MywgIDI0NDMsIDExOTU1LAorICAg
ICAgICAgICAgICAxMjEzLCAxMDY4OSwgLTEyOTMsICAgOTIxLCAtNDE3MywgMTA3MDksIC02MDQ5
LCAgODgxNSwgLTcxMjgsCisgICAgICAgICAgICAgIDgxNDcsIC04MzA4LCAgNjg0NywgLTI5Nzcs
ICA0OTIwLC0xMTQ0NywtMjI0MjYsLTExNzk0LCAgMzUxNCwKKyAgICAgICAgICAgIC0xMDIyMCwg
IDM0MzAsIC03OTkzLCAgMTkyNiwgLTcwNzIsICAgMzI3LCAtNzU2OSwgIC02MDgsIC03NjA1LAor
ICAgICAgICAgICAgICAzNjk1LCAtNjI3MSwgLTE1NzksIC00ODc3LCAtMTQxOSwgLTMxMDMsIC0y
MTk3LCAgIDEyOCwgLTM5MDQsCisgICAgICAgICAgICAgIDM3NjAsIC01NDAxLCAgNDkwNiwgLTYw
NTEsICA0MjUwLCAtNjI3MiwgIDM0OTIsIC02MzQzLCAgMzE5NywKKyAgICAgICAgICAgICAtNjM5
NywgIDQwNDEsIC02MzQxLCAgNjI1NSwgLTYzODEsICA3OTA1LCAxNjUwNCwgICAgIDAsIC02MTQ0
LAorICAgICAgICAgICAgICA4MDYyLCAtNTYwNiwgIDg2MjIsIC01NTU1LCAgICAtOSwgICAgLTEs
ICA3NDIzLCAgICAgMCwgICAgIDEsCisgICAgICAgICAgICAgICAyMzgsICA1MTQ4LCAgMTMwOSwg
IDQ3MDAsICAyMjE4LCAgNDQwMywgIDI1NzMsICAzNTY4LCAyODMwMywKKyAgICAgICAgICAgICAg
MTc1OCwgIDM0NTQsIC0xMjQ3LCAgMzQzNCwgLTQ5MTIsICAyODYyLCAtNzg0NCwgIDE3MTgsLTEw
MDk1LAorICAgICAgICAgICAgICAgMzY5LC0xMjYzMSwgICAxMjgsIC0zOTA0LCAgMzYzMiwgLTU0
MDEsICA0OTA2LCAtNjA1MSwgIDQyNTAsCisgICAgICAgICAgICAgLTYyNzIsICAzNDkyLCAtNjM0
MywgIDMxOTcsIC02Mzk3LCAgNDA0MSwgLTYzNDEsICA2MjU1LCAtNjM4MSwKKyAgICAgICAgICAg
ICAgNzkwNSwgMTY1MDQsICAgICAwLCAtNjE0NCwgIDgwNjIsIC01NjA2LCAgODYyMiwgLTU1NTUs
ICA4NDM5LAorICAgICAgICAgICAgIC0zMzgyLCAgNzM5OCwgLTExNzAsICA2MTMyLCAgIDIzOCwg
IDUxNDgsICAxMzA5LCAgNDcwMCwgIDIyMTgsCisgICAgICAgICAgICAgIDQ0MDMsICAyNTczLCAg
MzU2OCwgIDI3MDMsICAxNzU4LCAgMzQ1NCwgLTEyNDcsICAzNDM0LCAtNDkxMiwKKyAgICAgICAg
ICAgICAgMjg2MiwgLTc4NDQsICAxNzE4LC0xMDA5NSwgICAzNjksLTEyNjMxLCAgLTI1OSwtMTQ2
MzIsICAgMjM0LAorICAgICAgICAgICAgLTE1MDU2LCAgLTUyMSwtMTUxNzAsICAtMzg2LC0xNjAx
NSwgIC02NDEsLTE2NTA1LCAgLTkzMCwtMTYyMDYsCisgICAgICAgICAgICAgLTEyMDksLTE2MTQ2
LCAtMjgzOSwtMTYzNzQsIC00NTU4LC0xNjIxOCwgLTUyMDcsLTE1OTAzLCAtNjQyMSwKKyAgICAg
ICAgICAgIC0xNTYxNSwgLTY5MjUsLTE0ODcxLCAtNjE0OSwtMTM3NTksIC01MjMzLC0xMjg0NCwg
MTgzMTMsIC00MzU3LAorICAgICAgICAgICAgIC01Njk2LCAgMjgwNCwgMTI5OTIsLTIyODAyLCAt
NjcyMCwgLTk3NzAsIC03MDg4LCAtODk5OCwgMTQzMzAsCisgICAgICAgICAgICAtMTI1MjMsIDE0
ODQzLCAtNjEzMCwgMjkxNzgsICAtMjUwLC0yNzM5NiwgMTA0NjcsIDE2OTA3LCAtMzM1OSwKKyAg
ICAgICAgICAgICAtNjY0NCwgMzE5NjUsIDE0NjA3LC0yMTU0NCwtMzI0OTcsIDI0MDIwLCAxMjU1
NywtMjY5MjYsICAtMTczLAorICAgICAgICAgICAgICAtMTI5LCAtNjQwMSwgIC0xMzAsLTI1MDg5
LCAtMzg0MSwgLTQ5MTYsIC0zMDQ4LCAgIDIyNCwgIC0yMzcsCisgICAgICAgICAgICAgLTM5Njks
ICAtMTg5LCAtMzUyOSwgIC01MzUsIC0zNDY0LC0xNDg2MywtMTQ5MDcsLTE0OTA3LC0xNDkwNywK
KyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDM5NSwtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsICAgICAwLCAzMjUxMiwtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAg
ICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAgOTkyNSwgIC03MTgsICA5
NzUzLCAgLTc2NywKKyAgICAgICAgICAgICAgOTA5OSwgIC02MTMsICA4MzYyLCAgIDY3NSwgIDc3
NzQsICAyNTk3LCAgODU0OSwgIDUyNzgsICA4NzQzLAorICAgICAgICAgICAgICA5Mzc1LCAgNjk0
MCwgMTMwMzgsICA0ODI2LCAxNDU5OCwgIDc3MjEsLTI0MzA4LC0yOTkwNSwtMTk3MDMsCisgICAg
ICAgICAgICAtMTcxMDYsLTE2MTI0LCAtMzI4NywtMjYxMTgsLTE5NzA5LCAgICAgMCwgMjQzNTMs
IDI4NjQ4LCAxMDI3NCwKKyAgICAgICAgICAgIC0xMTI5MiwtMjk2NjUsLTE2NDE3LCAyNDM0Niwg
MTQ1NTMsIDE4NzA3LCAyNjMyMywgLTQ1OTYsLTE3NzExLAorICAgICAgICAgICAgICA1MTMzLCAy
NjMyOCwgICAgMTMsLTMxMTY4LCAyNDU4MywgMTg0MDQsLTI4OTI3LC0yNDM1MCwgMTk0NTMsCisg
ICAgICAgICAgICAgMjg2NDIsICAxMDE5LC0xMDc3NywgLTMwNzksIDMwMTg4LCAtNzY4NiwgMjc2
MzUsLTMyNTIxLC0xNjM4NCwKKyAgICAgICAgICAgICAxMjUyOCwgLTYzODYsIDEwOTg2LCAyMzgy
NywtMjU4ODAsLTMyNzUyLC0yMzMyMSwgMTQ2MDUsIDMyMjMxLAorICAgICAgICAgICAgICAgNzgw
LC0xMzg0OSwgMTUxMTksIDI4NjQ3LCAgNDg4OCwgLTc3MDUsIDMwNzUwLCAgICA2NCwgICAgIDAs
CisgICAgICAgICAgICAgMzI0ODgsICA2Njg3LC0yMDc1OCwgMTk3NDUsIC0yMDcwLC0xMzc5Miwg
LTY0MTQsIDI4MTg4LCAtMjgyMSwKKyAgICAgICAgICAgICAtNDU4NSwgIDcxNjgsICA3NDQ0LCAy
MzU1NywtMjE5OTgsIDEzMDY0LCAgMzM0NSwgLTQwODYsLTI4OTE1LAorICAgICAgICAgICAgIC04
Njk0LCAzMjI2MiwgIDg0NjEsIDI3Mzg3LC0xMjI3NSwgMTIwMTIsIDIzNTYzLC0xODcxOSwtMjg0
MTAsCisgICAgICAgICAgICAgMjkxNDQsLTIyMjcxLCAgLTU2MiwgLTk5ODYsIC01NDM0LCAxMjI4
OCwgIDU1NzMsLTE2NjQyLCAzMjQ0OCwKKyAgICAgICAgICAgICAyOTE4MiwgMzI3MDUsLTMwNzIz
LCAyNDI1NSwtMTk3MTYsIDE4MzY4LCAtNDM1NywgLTU2OTYsICAyODA0LAorICAgICAgICAgICAg
IDEyOTkyLC0yMjgwMiwtMjIwODAsIC03NzAxLCAtNTE4MywgICA0ODYsIC0zMTMzLCAtNTY2MCwg
LTEwODMsCisgICAgICAgICAgICAgMTY4NzEsLTI4NzI2LC0xMTAyOSwtMzAyNTksIC0xMjA5LC0x
NjE0NiwgLTI4MzksLTE2Mzc0LCAtNDU1OCwKKyAgICAgICAgICAgIC0xNjIxOCwtMTA1MjMsIDIw
Njk3LCAtOTUwMCwgLTEzMTYsICA1NDMxLCAtMTA3MywgIDM2NDEsIC0xMzA0LAorICAgICAgICAg
ICAgICAxNjQ5LCAgLTc2OSwgLTcyNzYsICAyODU2LCAtNzg3MCwgIDMzMTQsIC04NzMwLCAgMzk2
NCwtMTAxODMsCisgICAgICAgICAgICAgIDQwMTEsLTExMTM1LCAgMzQyMSwtMTE3MjcsIDIxMzk4
LCAzMjc2NywgICAgLTEsIDMyNDg2LCAgICAtMSwKKyAgICAgICAgICAgICAgNjMwMSwtMTMwNzEs
ICA2MzgwLCAtNzk0OCwgICAgLTEsIDMyNzY3LCAgIDI0MCwgMTQwODEsIC01NjQ2LAorICAgICAg
ICAgICAgIDMwOTczLCAtMzU5OCwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAzMjc2NywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywg
IDg5MDEsICA5Mzc1LCAgNjk0MCwgMTMwMzgsICA0ODI2LCAxNDU5OCwgIDc3MjEsLTI0MzA4LAor
ICAgICAgICAgICAgLTI5OTA1LC0xOTcwMywtMTcxMDYsLTE2MTI0LCAtMzI4NywtMjYxMTgsLTE5
NzA5LC0xMDc2OSwgMjQzNjEsCisgICAgICAgICAgICAgMjg2NDgsIDEwMjc0LC0xMTI5MiwtMjk2
NjUsLTE2NDE3LCAyNDM0NiwgMTQ1ODAsIDE4NzA3LCAyNjMyMywKKyAgICAgICAgICAgICAtNDQ0
MCwtMTc3MTEsICA1MTMzLCAyNjMyOCwtMTQ1NzksLTMxMDA4LCAyNDU4MywgMTg0MDQsIDI4NDE3
LAorICAgICAgICAgICAgLTI0MzUwLCAxOTQ1MywgMjg2NDIsLTMyNTEzLC0xMDc3NywgLTMwNzks
IDMwMTg4LCAtNzY4NiwgMjc2MzUsCisgICAgICAgICAgICAtMzI1MjEsLTE2Mzg0LC0yMDI0MCwg
LTYzODYsIDEwOTg2LCAyMzgyNywtMjU4ODAsLTMyNzUyLC0yMzMyMSwKKyAgICAgICAgICAgICAx
NDYwNSwgMzIyMzEsICAgNzgwLC0xMzg0OSwgMTUxMTksIDI4NjQ3LCAgNDg4OCwgLTc3MDUsLTE1
MDc0LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAg
IC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAgODE5MiwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAg
ICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0ODk3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAg
ICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE1OTMxLC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAg
ICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywK
KyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywgMjYxMjEsIDEyODkwLCAgMjYw
NCwKKyAgICAgICAgICAgICAxMjIyOCwtMTE2MzQsIDEyMjk5LCAgNTU3MywtMTY2NDIsIDMyNDUy
LCAyOTE4MiwgMzI3MDUsLTMwNzIzLAorICAgICAgICAgICAgIDI0MjU1LC0xOTcxNiwgMTMyNDgs
LTExNzc5LCAtNTY5NiwgIDI4MDQsIDEyOTkyLC0yNzY2NiwtMjIwODAsCisgICAgICAgICAgICAg
LTc3MDEsIC01MTgzLCAtNjY4MiwtMzE0NjQsIDE0MzMwLC0xMjUyMywgMTQ4NDMsIC02MTMwLCAy
OTE3OCwKKyAgICAgICAgICAgICAgIC0xOCwtMjczOTYsIDEwNDY3LCAxNjkwNywgLTMzNTksIC02
NjQ0LCAzMTk2NSwgMTQ2MDcsLTIxNTQ0LAorICAgICAgICAgICAgLTMyNDk3LCAyNDAyMCwgMTI1
NTcsLTI2OTI2LC0xODQyMSwgICA3MDYsIDI0NTg3LCAxOTY1OSwgIDQ4NzgsCisgICAgICAgICAg
ICAgMTA5NTQsIDIzMDYwLCAgODkwNywtMTAyMTUsLTIyNTc5LCAzMTc3MiwtMTE4MjUsLTE1NTkw
LC0yMzA4OSwKKyAgICAgICAgICAgICAxNzE3MywtMjU5MDMsLTE3Mzg3LCAgMzI4NSwgIDQ4ODQs
IDEwMjA0LC0xNjYyNywtMTQzNjcsICAgNTE2LAorICAgICAgICAgICAgIDIwNDUzLC0xNjg5OCwg
MjA5NjcsLTIzODE1LCAgIC0yMCwgMjIwMTEsLTE3MTY3LCAgOTQ2OCwgMzI0OTksCisgICAgICAg
ICAgICAtMjU2MDcsICAtNTIzLCAtMzg4MywgIC0zOTAsIC00MjA2LCAgIDYzNCwgLTM3NjcsICAy
MzI1LCAtMjc1MSwKKyAgICAgICAgICAgICAgMzExNSwgLTIzOTIsICAyNzQ2LCAtMjE3MywgIDIz
MTcsIC0xMTQ3LCAgMjMyNiwgMjMxNDIsIDExMzE0LAorICAgICAgICAgICAgLTE1MTMwLC0yOTEz
NywgIDMwMjYsICA2MTQ2LCAgMjE1MCwgIDI0NzYsICAxMTA1LCAgLTgzMCwgIDE3NzUsCisgICAg
ICAgICAgICAgLTM0MjUsICAzNjc0LCAtNTI4NywgIDQ2MDksIC03MTc1LCAgNDkyMiwgLTk1Nzks
ICA0NTU2LC0xMjAwNywKKyAgICAgICAgICAgICAgNDIzNiwtMTQwMjMsICAzODc5LC0xNTU1Mywg
IDMxNTgsLTE2MTYxLCAgMjU3NiwgMTgzOTgsLTEyNTM1LAorICAgICAgICAgICAgIC02NjQ1LC0y
MDczNSwtMzI3NjMsLTEzODI0LC0yMDk5MiwgMjU4NTksICA1MzcyLCAxMjA0MCwgMTMzMDcsCisg
ICAgICAgICAgICAgLTQzNTUsLTMwMjEzLCAgICAtOSwgLTYwMTksIDE0MDYxLC0zMTQ4NywtMTM4
NDIsIDMwNDQ5LCAxNTA4MywKKyAgICAgICAgICAgICAxNDA4OCwgMzEyMDUsLTE4Njc4LC0xMjgz
MCwgMTQwOTAsLTI2MTM4LC0yNTMzNywtMTE1NDEsIC0zMjU0LAorICAgICAgICAgICAgIDI3NjI4
LC0yMjI3MCwgMzA5NTMsLTE2MTM2LC0zMDc0NSwgMjA5OTEsLTE3NDA2LCAgNTYzMiwtMTQzMzAs
CisgICAgICAgICAgICAgMjg5MTEsLTI1NTk0LCAxNzQwOCwtMjA0NzQsIDEzMDQxLCAtODczMSwg
IDIyOTIsIC0zODYwLCAyNDA0OSwKKyAgICAgICAgICAgICAxMDIyNSwtMTkyMjAsIDEwNDc4LCAt
NDM3NCwgLTExOTksICAgMTQ4LCAgLTMzMCwgICAtNzQsICAgNTkzLAorICAgICAgICAgICAgICAg
MTg4LCAgMTU1OCwgLTQxNTIsIDE1OTg0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5
MzQsCisgICAgICAgICAgICAgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkz
NCwgIDE1OTgsICAgMTU2LCAgMTYwNCwKKyAgICAgICAgICAgICAtMTE2MywgIDIyNzgsLTMwMDE4
LC0yNTgyMSwtMjE3NjMsLTIzNzc2LCAyNDA2NiwgIDk1MDIsIDI1ODY2LAorICAgICAgICAgICAg
LTI1MDU1LCAxMDAwNCwtMjQ3OTgsICA3MjA0LCAtNDU4MSwgLTk2NzgsICAxNTU0LCAxMDU1Mywg
IDMxMDIsCisgICAgICAgICAgICAgMTIxOTMsICAyNDQzLCAxMTk1NSwgIDEyMTMsIDEwNjg5LCAt
MTI5MywgICA5MjEsIC00MTczLCAgODY2MSwKKyAgICAgICAgICAgICAtNjA0OSwgIDg4MTUsLTIx
MjIxLC0xNDg1NCwgMjM4NDAsIC05NDc3LCAgODU0OSwgIDUyNzgsICA4NzQzLAorICAgICAgICAg
ICAgICA5Mzc1LCAgNjk0MCwgMTMwMzgsICA0ODI2LCAxNDU5OCwgIDc3MjEsLTI0MzA4LC0yOTkw
NSwtMTk3MDMsCisgICAgICAgICAgICAtMTcxMDYsLTE2MTI0LCAtMzI4NywtMjYxMTgsLTE5NzA5
LC0xMDc2OSwgMjQzNjEsIDI4NjQ4LCAxMDI3NCwKKyAgICAgICAgICAgIC0xMTI5MiwtMjk2NjUs
LTE2NDE3LCAyNDM0NiwgMTQ1ODAsIDE4NzA3LCAyNjMyMywgLTQ0MTAsLTE3NzExLAorICAgICAg
ICAgICAgICA1MTMzLCAyNjMyOCwtMTQ1NzksLTMxMDA4LCAyNDU4MywgMTg0MDQsIDI4NDE3LC0y
NDM1MCwgMTk0NTMsCisgICAgICAgICAgICAgMjg2NDIsLTMyNTEzLC0xMDc3NywgLTMwNzksIDMw
MTg4LCAtNzY4NiwgMjc2MzUsLTMyNTIxLC0xNjM4NCwKKyAgICAgICAgICAgIC0yMDI0MCwgLTYz
ODYsIDEwOTg2LCAyMzgyNywtMjU4ODAsLTMyNzUyLC0yMzMyMSwgMTQ2MDUsIDMyMjMxLAorICAg
ICAgICAgICAgICAgNzgwLC0xMzg0OSwgMTUxMTksIDI4NjQ3LCAgNDg4OCwgLTc3MDUsIDMwNzUw
LCAgICA2NCwgICAgIDAsCisgICAgICAgICAgICAgMzI0ODgsICA2Njg3LC0yMDc1OCwgMTk3NDUs
IC0yMDcwLCAgICAtMSwgICAgLTEsICAgIDI4LCAgIDI1NiwKKyAgICAgICAgICAgICAtNDYwOCwg
IDcxNjgsICA3NDQ0LCAyMzU1NywtMjE5OTgsIDEzMDY0LCAgMzM0NSwgLTQwODYsLTI4OTE1LAor
ICAgICAgICAgICAgIC04NTk0LCAzMjI2MiwgIDg0NjEsIDI3Mzg3LC0xMjI3NSwgMTIwMTIsIDIz
NTYzLC0xODcxOSwtMjg0MTAsCisgICAgICAgICAgICAgMjkxNDQsLTIyMjcxLC0zMjU2MiwtMTYz
ODQsIDEyNTI4LCAtNjM4NiwgMTA5ODYsIDIzODI3LC0yNTg4MCwKKyAgICAgICAgICAgIC0zMjc1
MiwtMjMzMjEsIDE0NjA1LCAzMjIzMSwgICA3ODAsLTEzODQ5LCAxNTExOSwgMjg2NDcsICA0ODg4
LAorICAgICAgICAgICAgIC03NzA1LCAzMDc1MCwgICAgNjQsICAgICAwLCAzMjQ4OCwgIDY2ODcs
LTIwNzU4LCAxOTc0NSwgLTIwNzAsCisgICAgICAgICAgICAtMTM3OTIsIC02NDE0LCAyODE4OCwg
LTI4MjEsIC00NTg1LCAgNzE2OCwgIDc0NDQsIDIzNTU3LC0yMTk5OCwKKyAgICAgICAgICAgICAx
MzA2NCwgIDMzNDUsIC00MDg2LC0yODkxNSwgLTg2OTQsIDMyMjYyLCAgODQ2MSwgMjczODcsLTEy
Mjc1LAorICAgICAgICAgICAgIDEyMDEyLCAyMzU2MywtMTg3MTksLTI4NDEwLCAyOTE0NCwtMjIy
NzEsICAtNTYyLCAtOTk4NiwgLTU0MzQsCisgICAgICAgICAgICAgMTIyODgsIC0yMTA3LC0xNjY0
MywgMzI0NTIsIDI5MTgyLCAzMjcwNSwtMzA3MjMsIDI0MjU1LC0xOTcxNiwKKyAgICAgICAgICAg
ICAxODM2OCwgLTQzNTcsIC01Njk2LCAgMjgwNCwgMTI5OTIsLTIyODAyLC0yMjA4MCwgLTc3MDEs
IC01MTgzLAorICAgICAgICAgICAgICAgNDg2LCAtMzEzMywgLTU2NjAsIC0xMDgzLCAxNjg3MSwt
Mjg3MjYsLTExMDI5LC0zMDI1OSwgLTEyMDksCisgICAgICAgICAgICAtMTYxNDYsIC0yODM5LC0x
NjM3NCwgLTQ1NTgsLTE2MjE4LC0xMDUyMywgMjA2OTcsIC05NTAwLCAtMTMxNiwKKyAgICAgICAg
ICAgICAgNTQzMSwgLTEwNzMsICAzNjQxLCAtMTMwNCwgIDE2NDksICAtNzY5LCAtNzI3NiwgIDI4
NTYsIC03ODcwLAorICAgICAgICAgICAgICAzMzE0LCAtODczMCwgIDM5NjQsLTEwMTgzLCAgNDAx
MSwtMTExMzUsICAzNDIxLC0xMTcyNywgMjEzOTgsCisgICAgICAgICAgICAgMzI3NjcsICAgIC0x
LCAzMjQ4NiwgICAgLTEsICAgLTk5LC0xMzA3MiwgIDYzODAsIC03OTQ4LCAgNDg2NCwKKyAgICAg
ICAgICAgICAzMjc2NywgMTczOTIsIDE0MzM1LCAtNTY0NiwgMzA5NzMsIC0zNTk4LC0xMDI5OSwt
MTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0
OTA3LC0xNDkwNSwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAg
ICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xOTc3MSwtMTQ5MDcsLTE0OTA3LC0xNDkwNywK
KyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE2NDQzLC0x
NDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAg
ICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAg
ICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAg
ICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTU5MzEsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisg
ICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsICAgIC0xLC0xNDkwNywtMTQ5
MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LCAgNzg3NywgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAg
ICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAg
ICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAg
ICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICAtOTk0LCAtNzI3NiwgIDI4NTYsIC03ODcwLAor
ICAgICAgICAgICAgICAzMzE0LCAtODczMCwgIDM5NjQsLTEwMTgzLCAgNDAxMSwtMTExMzUsICAz
NDIxLC0xMTcyNywgMjEzOTgsCisgICAgICAgICAgICAgMzI3NjcsICAgIC0xLCAzMjQ4NiwgICAg
LTEsICAgLTk5LC0xMzA3MiwgIDYzODAsIC03OTQ4LCAgNDg2NCwKKyAgICAgICAgICAgICAzMjc2
NywgMTczOTIsIDE0MzM1LCAtNTY0NiwgMzA5NzMsIC0zNTk4LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNSwt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAg
IC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywgICAxOTcsICAgICAwLC0xNDk3Nywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAg
ICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAg
ICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAxMjgzOCwg
IDY2NTMsICAgMjk0LAorICAgICAgICAgICAgLTI5Njk5LC0yNTgyMSwtMjE3NjMsLTIzNzc2LCAy
NDA2NiwgIDk1MDIsIDI1ODY2LC0yNTA1NSwgMTAwMDQsCisgICAgICAgICAgICAtMjQ3OTgsICA3
MjA0LCAtNDU4MSwgLTk2NzgsICAxNTU0LCAxMDU1MywgIDMxMDIsIDEyMTkzLCAgMjQ0MywKKyAg
ICAgICAgICAgICAxMTk1NSwgIDEyMTMsIDEwNjg5LCAtMTI5MywgICA5MjEsICAgMTc5LCAgODQ0
OCwgLTYwNDksICA4ODE1LAorICAgICAgICAgICAgIC03MTI4LCAgODE0NywgLTgzMDgsICA2ODQ3
LCAtOTg4OSwgIDQ5MjAsLTExNDQ3LCAgMzE3NCwtMTE3OTQsCisgICAgICAgICAgICAgIDM1MTQs
LTEwMjIwLCAgMzQzMCwgMTYzODQsICAxOTI2LCAtNzA3MiwgICAzMjcsIC03NTM3LCAgLTYwOCwK
KyAgICAgICAgICAgICAtNzYwNSwgLTExNjksIC02Mzk3LCAtMTU3OSwgLTQ4NzcsIC0xNDE5LCAt
MzEwMywgLTIxOTcsICAgMTI4LAorICAgICAgICAgICAgIC0zOTA0LCAgMzYzMiwgLTU0MDEsICA0
OTA2LCAtNjA1MSwgIDQyNTAsIC02MjcyLCAgMzQ5MiwgLTYzNDMsCisgICAgICAgICAgICAgIDMx
OTcsIC02Mzk3LCAgNDA0MSwgLTYzNDEsICA2MjU1LCAtNjM4MSwgIDc5MDUsIDE2NTA0LCAgICAg
MCwKKyAgICAgICAgICAgICAtNjE0NCwgIDgwNjIsIC01NjA2LCAgODYyMiwgLTU1NTUsICA4NDM5
LCAtMzM4MiwgIDczOTgsIC0xMTcwLAorICAgICAgICAgICAgICA2MTMyLCAgIDIzOCwgIDUxNDgs
ICAxMzA5LCAgNDcwMCwgIDIyMTgsICA0NDAzLCAgMjU3MywgIDM1NjgsCisgICAgICAgICAgICAg
IDI3MDMsICAxNzU4LCAgMzQ1NCwgLTEyNDcsICAzNDM0LCAtNDkxMiwgIDI4NjIsIC03ODQ0LCAg
MTcxOCwKKyAgICAgICAgICAgIC0xMDA5NSwgICAzNjksLTEyNjMxLCAgLTI1OSwtMTQ2MzIsICAg
MjM0LC0xNTA1NiwgIC00OTEsLTE2MTk0LAorICAgICAgICAgICAgICAtMzg2LC0xNjAxNSwgIC02
NDEsLTE2NTA1LCAgLTkzMCwtMTYyMDYsIC0xMjA5LC0xNjE0NiwgLTI4MzksCisgICAgICAgICAg
ICAtMTYzNzQsIC00NTU4LC0xNjIxOCwgLTUyMDcsLTE1OTAzLCAtNjQyMSwtMTU2MTUsIC02OTI1
LC0xNDg3MSwKKyAgICAgICAgICAgICAtNjE0OSwtMTM3NTksIC01MjMzLC0xMjg0NCwgMTgzMTMs
IC00MzU3LCAtNTY5NiwgIDI4MDQsIDEyOTkyLAorICAgICAgICAgICAgLTIyODAyLCAtNjcyMCwg
LTk3NzAsIC03MDg4LCAtODk5OCwgMTQzMzAsLTEyNTIzLCAxNDg0MywgLTYxMzAsCisgICAgICAg
ICAgICAgMjkxNzgsICAtMjUwLC0yNzM5NiwgMTA0NjcsIDE2OTA3LCAtMzM1OSwgLTY2NDQsIDMx
OTY1LCAxNDYwNywKKyAgICAgICAgICAgIC0yMTU0NCwtMzI0OTcsIDI0MDIwLCAxMjU1NywtMjY5
MjYsICAtMTczLCAgLTEyOSwgLTY0MDEsICAtMTMwLAorICAgICAgICAgICAgLTI1MDg5LCAtMzgx
NiwgLTQ5MTYsIC0zMDQ4LCAgIC0zMiwgICAgLTEsIC0zOTY5LCAgIDI1NiwgLTM1MjksCisgICAg
ICAgICAgICAgIC01MzUsIC0zNDY0LC0xNDg2MywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisg
ICAgICAgICAgICAgLTEyMDksLTE2MTQ2LCAtMjgzOSwtMTYzNzQsIC00NTU4LC0xNjIxOCwtMTA1
MjMsIDIwNjk3LCAtOTUwMCwKKyAgICAgICAgICAgICAtMTMxNiwgIDU0MzEsIC0xMDczLCAgMzY0
MSwgLTEzMDQsICAxNjQ5LCAgLTc2OSwgLTcyNzYsICAyODU2LAorICAgICAgICAgICAgIC03ODcw
LCAgMzMxNCwgLTg3MzAsICAzOTY0LC0xMDE4MywgIDQwMTEsLTExMTM1LCAgMzQyMSwtMTE3Mjcs
CisgICAgICAgICAgICAgMjEzOTgsIDMyNzY3LCAgICAtMSwgMzI0ODYsICAgIC0xLCAgNjMwMSwt
MTMwNzEsICA2MzgwLCAtNzk0OCwKKyAgICAgICAgICAgICAgICAtMSwgMzI3NjcsICAgMjQwLCAx
NDA4MSwgLTU2NDYsIDMwOTczLCAtMzU5OCwtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
IDMyNzY3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywgIDg5MDEsICA5Mzc1LCAgNjk0MCwKKyAgICAgICAgICAgICAxMzAzOCwgIDQ4MjYsIDE0
NTk4LCAgNzcyMSwtMjQzMDgsLTI5OTA1LC0xOTcwMywtMTcxMDYsLTE2MTI0LAorICAgICAgICAg
ICAgIC0zMjg3LC0yNjExOCwtMTk3MDksLTEwNzY5LCAyNDM2MSwgMjg2NDgsIDEwMjc0LC0xMTI5
MiwtMjk2NjUsCisgICAgICAgICAgICAtMTY0MTcsIDI0MzQ2LCAxNDU4MCwgMTg3MDcsIDI2MzIz
LCAtNDQ0MCwtMTc3MTEsICA1MTMzLCAyNjMyOCwKKyAgICAgICAgICAgIC0xNDU3OSwtMzEwMDgs
IDI0NTgzLCAxODQwNCwgMjg0MTcsLTI0MzUwLCAxOTQ1MywgMjg2NDIsLTMyNTEzLAorICAgICAg
ICAgICAgLTEwNzc3LCAtMzA3OSwgMzAxODgsIC03Njg2LCAyNzYzNSwtMzI1MjEsLTE2Mzg0LC0y
MDI0MCwgLTYzODYsCisgICAgICAgICAgICAgMTA5ODYsIDIzODI3LC0yNTg4MCwtMzI3NTIsLTIz
MzIxLCAxNDYwNSwgMzIyMzEsICAgNzgwLC0xMzg0OSwKKyAgICAgICAgICAgICAxNTExOSwgMjg2
NDcsICA0ODg4LCAtNzcwNSwtMTUwNzQsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAgODE5MiwKKyAgICAgICAgICAgIC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAor
ICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0ODk3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE1OTMxLC0xNDkwNywtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAg
IC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAg
ICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3
LCAyNjEyMSwgMTI4OTAsICAyNjA0LCAxMjIyOCwtMTE2MzQsIDEyMjk5LCAgNTU3MywKKyAgICAg
ICAgICAgIC0xNjY0MiwgMzI0NTIsIDI5MTgyLCAzMjcwNSwtMzA3MjMsIDI0MjU1LC0xOTcxNiwg
MTMyNDgsLTExNzc5LAorICAgICAgICAgICAgIC01Njk2LCAgMjgwNCwgMTI5OTIsLTI3NjY2LC0y
MjA4MCwgLTc3MDEsIC01MTgzLCAtNjY4MiwtMzE0NjQsCisgICAgICAgICAgICAgMTQzMzAsLTEy
NTIzLCAxNDg0MywgLTYxMzAsIDI5MTc4LCAgIC0xOCwtMjczOTYsIDEwNDY3LCAxNjkwNywKKyAg
ICAgICAgICAgICAtMzM1OSwgLTY2NDQsIDMxOTY1LCAxNDYwNywtMjE1NDQsLTMyNDk3LCAyNDAy
MCwgMTI1NTcsLTI2OTI2LAorICAgICAgICAgICAgLTE4NDIxLCAgIDcwNiwgMjQ1ODcsIDE5NjU5
LCAgNDg3OCwgMTA5NTQsIDIzMDYwLCAgODkwNywtMTAyMTUsCisgICAgICAgICAgICAtMjI1Nzks
IDMxNzcyLC0xMTgyNSwtMTU1OTAsLTIzMDg5LCAxNzE3MywtMjU5MDMsLTE3Mzg3LCAgMzI4NSwK
KyAgICAgICAgICAgICAgNDg4NCwgMTAyMDQsLTE2NjI3LC0xNDM2NywgICA1MTYsIDIwNDUzLC0x
Njg5OCwgMjA5NjcsLTIzODE1LAorICAgICAgICAgICAgICAgLTIwLCAyMjAxMSwtMTcxNjcsICA5
NDY4LCAzMjQ5OSwtMjU2MDcsICAtNTIzLCAtMzg4MywgIC0zOTAsCisgICAgICAgICAgICAgLTQy
MDYsICAgNjM0LCAtMzc2NywgIDIzMjUsIC0yNzUxLCAgMzExNSwgLTIzOTIsICAyNzQ2LCAtMjE3
MywKKyAgICAgICAgICAgICAgMjMxNywgLTExNDcsICAyMzI2LCAyMzE0MiwgMTEzMTQsLTE1MTMw
LC0yOTEzNywgIDMwMjYsICA2MTQ2LAorICAgICAgICAgICAgICAyMTUwLCAgMjQ3NiwgIDExMDUs
ICAtODMwLCAgMTc3NSwgLTM0MjUsICAzNjc0LCAtNTI4NywgIDQ2MDksCisgICAgICAgICAgICAg
LTcxNzUsICA0OTIyLCAtOTU3OSwgIDQ1NTYsLTEyMDA3LCAgNDIzNiwtMTQwMjMsICAzODc5LC0x
NTU1MywKKyAgICAgICAgICAgICAgMzE1OCwtMTYxNjEsICAyNTc2LCAxODM5OCwtMTI1MzUsIC02
NjQ1LC0yMDczNSwtMzI3NjMsLTEzODI0LAorICAgICAgICAgICAgLTIwOTkyLCAyNTg1OSwgIDUz
NzIsIDEyMDQwLCAxMzMwNywgLTQzNTUsLTMwMjEzLCAgICAtOSwgLTYwMTkKKyAgICAgICAgfTsK
KyAgICAgICAgZXJyID0gb3B1c19tdWx0aXN0cmVhbV9lbmNvZGUoZW5jLCBwY20sIDk2MCwgZGF0
YSwgNzM4MCk7CisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICB9CisgICAgb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJ
QykpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIo
MSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJf
Q09OU1RSQUlOVCgwKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9Q
VVNfU0VUX1BSRURJQ1RJT05fRElTQUJMRUQoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5j
b2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9GT1JDRV9DSEFOTkVMUyhPUFVTX0FVVE8pKTsKKyAgICBv
cHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfUEhBU0VfSU5WRVJTSU9O
X0RJU0FCTEVEKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfRFRYKDEpKTsKKyAgICBvcHVzX211bHRpc3RyZWFtX2VuY29kZXJfY3RsKGVuYywgT1BV
U19TRVRfQ09NUExFWElUWSg2KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX01BWF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORCkpOwor
ICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgo
T1BVU19BVVRPKSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX0xTQl9ERVBUSCg5KSk7CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2N0bChlbmMs
IE9QVVNfU0VUX0lOQkFORF9GRUMoMSkpOworICAgIG9wdXNfbXVsdGlzdHJlYW1fZW5jb2Rlcl9j
dGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDUpKTsKKyAgICBvcHVzX211bHRpc3Ry
ZWFtX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURSg3NzU0MTApKTsKKyAgICB7Cisg
ICAgICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY21bMTQ0MCozXSA9CisgICAgICAgIHsKKyAgICAg
ICAgICAgICAzMDQ0OSwgMTUwODMsIDE0MDg4LCAzMTIwNSwtMTg2NzgsLTEyODMwLCAxNDA5MCwt
MjYxMzgsLTI1MzM3LAorICAgICAgICAgICAgLTExNTQxLCAtMzI1NCwgMjc2MjgsLTIyMjcwLCAz
MDk1MywtMTYxMzYsLTMwNzQ1LCAyMDk5MSwtMTc0MDYsCisgICAgICAgICAgICAgIDU2MzIsLTE0
MzMwLCAyODkxMSwtMjU1OTQsIDE3NDA4LC0yMDQ3NCwgMTMwNDEsIC04NzMxLCAgMjI5MiwKKyAg
ICAgICAgICAgICAtMzg2MCwgMjQwNDksIDEwMjI1LC0xOTIyMCwgMTA0NzgsIC00Mzc0LCAtMTE5
OSwgICAxNDgsICAtMzMwLAorICAgICAgICAgICAgICAgLTc0LCAgIDU5MywgICAxODgsICAxNTU4
LCAtNDE1MiwgMTU5ODQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsCisgICAgICAgICAgICAgMTU5MzQs
IDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAxNTkzNCwgMTU5MzQsIDE1OTM0LCAgMTU5OCwK
KyAgICAgICAgICAgICAgIDE1NiwgIDE2MDQsIC0xMTYzLCAgMjI3OCwtMzAwMTgsLTI1ODIxLC0y
MTc2MywtMjM3NzYsIDI0MDY2LAorICAgICAgICAgICAgICA5NTAyLCAyNTg2NiwtMjUwNTUsIDEw
MDA0LC0yNDc5OCwgIDcyMDQsIC00NTgxLCAtOTY3OCwgIDE1NTQsCisgICAgICAgICAgICAgMTA1
NTMsICAzMTAyLCAxMjE5MywgIDI0NDMsIDExOTU1LCAgMTIxMywgMTA2ODksIC0xMjkzLCAgIDky
MSwKKyAgICAgICAgICAgICAtNDE3MywgIDg2NjEsIC02MDQ5LCAgODgxNSwtMjEyMjEsLTE0ODU0
LCAyMzg0MCwgLTk0NzcsICA4NTQ5LAorICAgICAgICAgICAgICA1Mjc4LCAgODc0MywgIDkzNzUs
ICA2OTQwLCAxMzAzOCwgIDQ4MjYsIDE0NTk4LCAgNzcyMSwtMjQzMDgsCisgICAgICAgICAgICAt
Mjk5MDUsLTE5NzAzLC0xNzEwNiwtMTYxMjQsIC0zMjg3LC0yNjExOCwtMTk3MDksLTEwNzY5LCAy
NDM2MSwKKyAgICAgICAgICAgICAyODY0OCwgMTAyNzQsLTExMjkyLC0yOTY2NSwtMTY0MTcsIDI0
MzQ2LCAxNDU4MCwgMTg3MDcsIDI2MzIzLAorICAgICAgICAgICAgIC00NDEwLC0xNzcxMSwgIDUx
MzMsIDI2MzI4LC0xNDU3OSwtMzEwMDgsIDI0NTgzLCAxODQwNCwgMjg0MTcsCisgICAgICAgICAg
ICAtMjQzNTAsIDE5NDUzLCAyODY0MiwtMzI1MTMsLTEwNzc3LCAtMzA3OSwgMzAxODgsIC03Njg2
LCAyNzYzNSwKKyAgICAgICAgICAgIC0zMjUyMSwtMTYzODQsLTIwMjQwLCAtNjM4NiwgMTA5ODYs
IDIzODI3LC0yNTg4MCwtMzI3NTIsLTIzMzIxLAorICAgICAgICAgICAgIDE0NjA1LCAzMjIzMSwg
ICA3ODAsLTEzODQ5LCAxNTExOSwgMjg2NDcsICA0ODg4LCAtNzcwNSwgMzA3NTAsCisgICAgICAg
ICAgICAgICAgNjQsICAgICAwLCAzMjQ4OCwgIDY2ODcsLTIwNzU4LCAxOTc0NSwgLTIwNzAsICAg
IC0xLCAgICAtMSwKKyAgICAgICAgICAgICAgICAyOCwgICAyNTYsIC00NjA4LCAgNzE2OCwgIDc0
NDQsIDIzNTU3LC0yMTk5OCwgMTMwNjQsICAzMzQ1LAorICAgICAgICAgICAgIC00MDg2LC0yODkx
NSwgLTg1OTQsIDMyMjYyLCAgODQ2MSwgMjczODcsLTEyMjc1LCAxMjAxMiwgMjM1NjMsCisgICAg
ICAgICAgICAtMTg3MTksLTI4NDEwLCAyOTE0NCwtMjIyNzEsLTMyNTYyLC0xNjM4NCwgMTI1Mjgs
IC02Mzg2LCAxMDk4NiwKKyAgICAgICAgICAgICAyMzgyNywtMjU4ODAsLTMyNzUyLC0yMzMyMSwg
MTQ2MDUsIDMyMjMxLCAgIDc4MCwtMTM4NDksIDE1MTE5LAorICAgICAgICAgICAgIDI4NjQ3LCAg
NDg4OCwgLTc3MDUsIDMwNzUwLCAgICA2NCwgICAgIDAsIDMyNDg4LCAgNjY4NywtMjA3NTgsCisg
ICAgICAgICAgICAgMTk3NDUsIC0yMDcwLC0xMzc5MiwgLTY0MTQsIDI4MTg4LCAtMjgyMSwgLTQ1
ODUsICA3MTY4LCAgNzQ0NCwKKyAgICAgICAgICAgICAyMzU1NywtMjE5OTgsIDEzMDY0LCAgMzM0
NSwgLTQwODYsLTI4OTE1LCAtODY5NCwgMzIyNjIsICA4NDYxLAorICAgICAgICAgICAgLTE0ODUz
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywgMzI3NjcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDg5MSwt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsICA4OTAxLCAg
OTM3NSwgIDY5NDAsIDEzMDM4LCAgNDgyNiwgMTQ1OTgsICA3NzIxLAorICAgICAgICAgICAgLTI0
MzA4LC0yOTkwNSwtMTk3MDMsLTE3MTA2LC0xNjEyNCwgLTMyODcsLTI2MTE4LC0xOTcwOSwtMTA3
NjksCisgICAgICAgICAgICAgMjQzNjEsIDI4NjQ4LCAxMDI3NCwtMTEyOTIsLTI5NjY1LC0xNjQx
NywgMjQzNDYsIDE0NTgwLCAxODcwNywKKyAgICAgICAgICAgICAyNjMyMywgLTQ0NDAsLTE3NzEx
LCAgNTEzMywgMjYzMjgsLTE0NTc5LC0zMTAwOCwgMjQ1ODMsIDE4NDA0LAorICAgICAgICAgICAg
IDI4NDE3LC0yNDM1MCwgMTk0NTMsIDI4NjQyLC0zMjUxMywtMTA3NzcsIC0zMDc5LCAzMDE4OCwg
LTc2ODYsCisgICAgICAgICAgICAgMjc2MzUsLTMyNTIxLC0xNjM4NCwtMjAyNDAsIC02Mzg2LCAx
MDk4NiwgMjM4MjcsLTI1ODgwLC0zMjc1MiwKKyAgICAgICAgICAgIC0yMzMyMSwgMTQ2MDUsIDMy
MjMxLCAgIDc4MCwtMTM4NDksIDE1MTE5LCAyODY0NywgIDQ4ODgsIC03NzA1LAorICAgICAgICAg
ICAgLTE1MDc0LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywgIDgxOTIsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAg
ICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0x
NDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAg
ICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDg5NywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAor
ICAgICAgICAgICAgLTE0OTA3LC0xNTkzMSwtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3
LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0
OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsIDI2MTIxLCAxMjg5MCwKKyAgICAgICAgICAg
ICAgMjYwNCwgMTIyMjgsLTExNjM0LCAxMjI5OSwgIDU1NzMsLTE2NjQyLCAzMjQ1MiwgMjkxODIs
ICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAgICAg
ICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAgICAg
ICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwKKyAg
ICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwK
KyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcx
MCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAgICAg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAg
NzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAgICAg
ICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEw
LCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAs
ICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLCAgNzcxMCwg
IDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsCisgICAgICAg
ICAgICAgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3
NzEwLCAgNzcxMCwKKyAgICAgICAgICAgICAgNzcxMCwgIDc3MTAsICA3NzEwLCAgNzcxMCwgIDc3
MTAsICA3NzEwLCAgNzcxMCwgIDc3MTAsICA3NzEwLAorICAgICAgICAgICAgICA3NzEwLC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisgICAg
ICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
LTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsCisg
ICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5
MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xMDgxMSwtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcs
CisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywt
MTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTE3LC0x
NDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAgLTE0
OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTM4LC0xNDkwNywtMTQ5
MDcsCisgICAgICAgICAgICAtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkw
NywtMTQ5MDcsLTE0OTA3LC0xNDkwNywKKyAgICAgICAgICAgIC0xNDkwNywtMTQ5MDcsLTE0OTA3
LC0xNDkwNywtMTQ5MDcsLTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LAorICAgICAgICAgICAg
LTE0OTA3LC0xNDkwNywtMTQ5MDcsLTE0OTA3LCAgLTU3MSwgLTk5ODYsICAgLTU4LCAxMjU0Miwt
MTg0OTEsCisgICAgICAgICAgICAgMzI1MDcsIDEyODM4LCAgNjY1MywgICAyOTQsICAgIC0xLCAg
ICAgMCwtMTk5NjgsIDE4MzY4LCAtNDM1NywKKyAgICAgICAgICAgICAtNTY5NiwgIDI4MDQsIDEy
OTk4LC0yMjgwMiwtMjIwODAsIC03NzAxLCAtNTE4MywgICA0ODYsIC0zMTMzLAorICAgICAgICAg
ICAgIC01NjYwLCAtMTA4MywgMTM3OTksLTI4NzI2LC0xMTAyOSwgICAyMDUsLTE0ODQ4LCAzMjQ2
NCwgICAgLTEsCisgICAgICAgICAgICAgIC0xMjksLTEzMDcyLCAgNjM4MCwgLTc5NDgsIDIwNzE3
LCAxODQyNSwgMTczOTIsIDE0MzM1LCAtNTY0NiwKKyAgICAgICAgICAgICAzMDk3MywgLTM1OTgs
ICA3MTg4LCAtMzg2NywgIDMwNTUsIC00MjQ3LCAgNTU5NywgLTQwMTEsLTI2NDI3LAorICAgICAg
ICAgICAgICAgLTExLC0zMDQxOCwgIDc5MjIsICAyNjE0LCAgIDIzNywgLTU4MzksLTI3NDEzLC0x
NzYyNCwtMjk3MTYsCisgICAgICAgICAgICAtMTM1MzksICAgMjM5LCAyMDk5MSwgMTgxNjQsIC00
MDgyLC0xNjY0NywtMjczODYsIDE5NDU4LCAyMDIyNCwKKyAgICAgICAgICAgICAgNDYxOSwgMTk3
MjgsIC03NDA5LC0xODE4NiwtMjUwNzMsIDI3NjI3LC0yMzUzOSwgLTc5NDUsLTMxNDY0LAorICAg
ICAgICAgICAgIDE0MzMwLC0xMjUyMywtMjIwMjEsIC03NzAxLCAtNTE4MywgICA0ODYsIC0zMTMz
LCAtNTY2MCwgLTEwODMsCisgICAgICAgICAgICAgMTM3OTksLTI4NzI2LC0xMTAyOSwgICAyMDUs
LTE0ODQ4LCAzMjQ2NCwgICAgLTEsICAtMTI5LC0xMzA3MiwKKyAgICAgICAgICAgICAgNjM4MCwg
LTc5NDgsIDIwNzE3LCAxODQyNSwgMTczOTIsIDE0MDkzLCAtNTY0NiwgMzA5NzMsIC0zNTk4LAor
ICAgICAgICAgICAgICA3MTg4LCAtMzg2NywgIDMwNTUsICAzNjg5LCAtNTQwMSwgIDQ5MDYsIC02
MDUxLCAgNDI1MCwgLTYyNzIsCisgICAgICAgICAgICAgIDM0OTIsIC02MzQzLCAgMzE5NywgLTYz
OTcsICA0MDQxLCAtNjM0MSwgIDYyNTUsIC02MzgxLCAgIDIzOSwKKyAgICAgICAgICAgICAyMDk5
MSwgMTgxNjQsIC00MDgyLC0xNjY0NywtMjczODYsIDE5NDU4LCAyMDIyNCwgIDQ2MTksIDE5NzI4
LAorICAgICAgICAgICAgIC03NDA5LC0xODE4NiwtMjUwNzMsIDI3NjI3LC0yMzUzOSwgLTc5NDUs
LTMxNDY0LCAxNDMzMCwtMTI1MjMsCisgICAgICAgICAgICAgMTQ4NDMsIC02MTMwLCAzMDIwMiwg
IC0yNTAsLTI4NDIwLCAxMDQ2NywgMTY5MDcsIC0zMzU5LCAtNjY0NCwKKyAgICAgICAgICAgICAz
MTk2NSwgIDMzNDMsLTExNzI3LCAgMjk2NiwtMTI2MTYsICAzMDY0LC0xMzQ3MiwgIDY3MzIsLTEy
MzQ5LAorICAgICAgICAgICAgICA1NTQxLC0xMTk2NSwgIDU1MzAsLTEwODIwLCAtMTkxMiwgLTM2
MzcsIDMyMjg1LCAtNDYwNywgICAzMTAsCisgICAgICAgICAgICAtMzI3NjgsICAgICAwLCAtNTI1
OCwgIDIxMDYsIC02ODU3LCAgMjY4MSwgLTU0NDksIC0zNjA2LCAtNjcxNywKKyAgICAgICAgICAg
ICAtNTQ4MiwgLTM2MDYsIC0xODUzLCAgNDA4MiwgLTc2MzEsIC05ODA4LCAtMTc0MiwgLTI4NTEs
IC01MTEyLAorICAgICAgICAgICAgICAgIDY0LCAgLTg2OCwtMTM1NDYsLTEzMzY1LC0xMzM2NSwt
MTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsCisgICAgICAgICAgICAtMTMzNjUsLTEzMzY1LC0x
MzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwKKyAgICAgICAg
ICAgIC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMz
NjUsLTEzMzY1LAorICAgICAgICAgICAgLTEzMzY1LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2
NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsCisgICAgICAgICAgICAtMTMzNjUsLTEzMzY1
LC0xMzM2NSwtMTMzNjUsLTEzMzY1LC0xMzM2NSwtMTMzNjUsICA3ODgzLCAtMjMxNiwKKyAgICAg
ICAgICAgICAgOTA4NiwgLTM5NDQsIDEwNTAwLCAgNDI4NSwgMTA0NTksIC02NDc0LCAxMDIwNCwg
LTY1MzksIDExNjAxLAorICAgICAgICAgICAgIC02ODI0LCAxMzM4NSwgLTcxNDIsIDEzODcyLCAt
NzQ1NywgMTM2NzAsIC03NzI1LCAxMzQ2MywgLTY4ODcsCisgICAgICAgICAgICAgMTI0ODIsIC01
NTgwLCAxMjYwMCwgLTQ5NjQsIDEyNDgwLCAgMzI1NCwgMTE3NDEsIC00MjEwLC0yNDgxOSwKKyAg
ICAgICAgICAgICAyMzI4MiwgMjI3OTgsICAgNDkxLCAtMTc3NCwgLTEwNzMsICAzNjQxLCAtMTMw
NCwgMjg5MjgsICAtMjUwLAorICAgICAgICAgICAgLTI3Mzk2LCAgNjY1NywgLTg5NjEsIDIyNTI0
LCAxOTk4NywgMTAyMzEsICAxNzkxLCAgODk0NywtMzI3NjMsCisgICAgICAgICAgICAtMjYzODUs
LTMxMjI3LCAgLTc5MiwtMzA0NjEsICA4OTI2LCAgNDg2NiwgMjc4NjMsIDI3NzU2LCAyNzc1NiwK
KyAgICAgICAgICAgICAyNzc1NiwgMjc3NTYsIDI3NzU2LCAyNzc1NiwgMjc3NTYsIDI3NzU2LCAg
NTYzMCwtMTEwNzAsLTE2MTM2LAorICAgICAgICAgICAgIDIwNjcxLC0xMTUzMCwgMjczMjgsICA4
MTc5LCAgNTA1OSwtMzE1MDMsLTI0Mzc5LC0xOTQ3MiwgMTc4NjMsCisgICAgICAgICAgICAtMjky
MDIsIDIyOTg2LCAgIC0yMywgIDg5MDksICA4NDIyLCAxMDQ1MAorICAgICAgICB9OworICAgICAg
ICBlcnIgPSBvcHVzX211bHRpc3RyZWFtX2VuY29kZShlbmMsIHBjbSwgMTQ0MCwgZGF0YSwgNzM4
MCk7CisgICAgICAgIC8qIHJlYWRzIHVuaW5pdGlhbGl6ZWQgZGF0YSBhdCBzcmMvb3B1c19tdWx0
aXN0cmVhbV9lbmNvZGVyLmM6MjkzICovCisgICAgICAgIGFzc2VydChlcnIgPiAwKTsKKyAgICB9
CisgICAgb3B1c19tdWx0aXN0cmVhbV9lbmNvZGVyX2Rlc3Ryb3koZW5jKTsKKyAgICByZXR1cm4g
MDsKK30KKworc3RhdGljIGludCBlY19lbmNfc2hyaW5rX2Fzc2VydCh2b2lkKQoreworICAgIE9w
dXNFbmNvZGVyICplbmM7CisgICAgaW50IGVycjsKKyAgICBpbnQgZGF0YV9sZW47CisgICAgdW5z
aWduZWQgY2hhciBkYXRhWzIwMDBdOworICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY20xWzk2MF0g
PSB7IDUxNDAgfTsKKyAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtMlsyODgwXSA9CisgICAgewor
ICAgICAgICAgIC0yNTYsLTEyMDMzLCAgICAgMCwgLTI4MTcsICA2OTEyLCAgICAgMCwgLTUzNTks
ICA1MjAwLCAgMzA2MSwKKyAgICAgICAgICAgICAwLCAtMjkwMywgIDU2NTIsIC0xMjgxLC0yNDY1
NiwtMTQ0MzMsLTI0Njc4LCAgICAzMiwtMjk3OTMsCisgICAgICAgICAgMjg3MCwgICAgIDAsICA0
MDk2LCAgNTEyMCwgIDUxNDAsICAtMjM0LC0yMDIzMCwtMjQ2NzMsLTI0NjMzLAorICAgICAgICAt
MjQ2NzMsLTI0NzA1LCAgICAgMCwtMzI3NjgsLTI1NDQ0LC0yNTQ0NCwgICAgIDAsLTI1NDQ0LC0y
NTQ0NCwKKyAgICAgICAgICAgMTU2LC0yMDQ4MCwgLTc5NDgsIC01OTIwLCAtNzk2OCwgLTc5Njgs
ICAgMjI0LCAgICAgMCwgMjA0ODAsCisgICAgICAgICAgICAxMSwgMjA0OTYsICAgIDEzLCAyMDQ5
NiwgICAgMTEsLTIwNDgwLCAgMjI5MiwtMjAyNDAsICAgMjQ0LAorICAgICAgICAgMjA0ODAsICAg
IDExLCAyMDQ5NiwgICAgMTEsLTIwNDgwLCAgIDI0NCwtMjAyNDAsICA3MTU2LCAyMDQ1NiwKKyAg
ICAgICAgICAtMjQ2LC0yMDI0MywgICAyNDQsICAgMTI4LCAgIDI0NCwgMjA0ODAsICAgIDExLCAy
MDQ5NiwgICAgMTEsCisgICAgICAgIC0yMDQ4MCwgICAyNDQsLTIwMjU2LCAgIDI0NCwgMjA0ODAs
ICAgMjU2LCAgICAgMCwgIC0yNDYsIDE2NjA5LAorICAgICAgICAgIC0xNzYsICAgICAwLCAyOTg3
MiwgLTQwOTYsIC0yODg4LCAgIDUxNiwgIDI4OTYsICA0MDk2LCAgMjg5NiwKKyAgICAgICAgLTIw
NDgwLCAtMzg1MiwgLTI4OTYsIC0xMDI1LC0zMTA1NiwtMTQ0MzMsICAgMjQ0LCAgMTc5MiwgIC0y
NTYsCisgICAgICAgIC0xMjAzMywgICAgIDAsIC0yODE3LCAgICAgMCwgICAgIDAsIC01MzU5LCAg
NTIwMCwgIDMwNjEsICAgIDE2LAorICAgICAgICAgLTI5MDMsICA1NjUyLCAtMTI4MSwtMjQ2NTYs
LTE0NDMzLC0yNDY3OCwgICAgMzIsLTI5NzkzLCAgMjg3MCwKKyAgICAgICAgICAgICAwLCAgNDA5
NiwgIDUxMjAsICA1MTQwLCAgLTIzNCwtMjAyMzAsLTI0NjczLC0yNDYzMywtMjQ2NzMsCisgICAg
ICAgIC0yNDcwNSwgICAgIDAsLTMyNzY4LC0yNTQ0NCwtMjU0NDQsICAgICAwLC0yNTQ0NCwtMjU0
NDQsICAgMTU2LAorICAgICAgICAtMjA0ODAsIC03OTczLCAtNTkyMCwgLTc5NjgsIC03OTY4LCAg
IDIyNCwgICAgIDAsIDIwNDgwLCAgICAxMSwKKyAgICAgICAgIDIwNDk2LCAgICAxMSwgMjA0OTYs
ICAgIDExLC0yMDQ4MCwgIDIyOTIsLTIwMjEzLCAgIDI0NCwgMjA0ODAsCisgICAgICAgICAgICAx
MSwgMjA0OTYsICAgIDExLC0yNDY5OCwgLTI4NzMsICAgICAwLCAgICAgNywgICAgLTEsICAgMjA4
LAorICAgICAgICAgIC0yNTYsICAgMjQ0LCAgICAgMCwgIDQzNTIsIDIwNzE1LCAtMjc5NiwgICAg
MTEsLTIyMjcyLCAgNTM2NCwKKyAgICAgICAgICAtMjM0LC0yMDIzMCwtMjQ2NzMsLTI1OTEzLCAg
ODM1MSwtMjQ4MzIsIDEzOTYzLCAgICAxMSwgICAgIDAsCisgICAgICAgICAgICAxNiwgIDUxNDAs
ICA1NjUyLCAtMTI4MSwtMjQ2NTYsLTE0NDMzLC0yNDY3MywgMzI2NzEsICAgMTU5LAorICAgICAg
ICAgICAgIDAsLTI1NDcyLC0yNTQ0NCwgICAxNTYsLTI1NjAwLC0yNTQ0NCwtMjU0NDQsICAgICAw
LCAtMjg5NiwKKyAgICAgICAgIC03OTY4LCAtNzk2MCwgLTc5NjgsIC03OTY4LCAgICAgMCwgICAg
IDAsICAyODk2LCAgNDA5NiwgIDI4OTYsCisgICAgICAgICAgNDA5NiwgIDI4OTYsICAgICAwLCAt
Mjg5NiwgLTQwODgsIC0yODk2LCAgICAgMCwgIDI4OTYsICAgICAwLAorICAgICAgICAgLTI4OTYs
IC00MDk2LCAtMjg5NiwgICAgMTEsICAyNjQwLCAtNDYwOSwgLTI4OTYsLTMyNzY4LCAtMzA3MiwK
KyAgICAgICAgICAgICAwLCAgMjg5NiwgIDQwOTYsICAyODk2LCAgICAgMCwgLTI4OTYsIC00MDk2
LCAtMjg5NiwgICAgIDAsCisgICAgICAgICAgICA4MCwgICAgIDEsICAyODE2LCAgICAgMCwgMjA2
NTYsICAgMjU1LC0yMDQ4MCwgICAxMTYsLTE4MTkyCisgICAgfTsKKyAgICBzdGF0aWMgY29uc3Qg
c2hvcnQgcGNtM1syODgwXSA9IHsgMCB9OworCisgICAgZW5jID0gb3B1c19lbmNvZGVyX2NyZWF0
ZSg0ODAwMCwgMSwgT1BVU19BUFBMSUNBVElPTl9BVURJTywgJmVycik7CisgICAgb3B1c19lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX0NPTVBMRVhJVFkoMTApKTsKKyAgICBvcHVzX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfUEFDS0VUX0xPU1NfUEVSQyg2KSk7CisgICAgb3B1c19lbmNvZGVy
X2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoNjAwMCkpOworICAgIGRhdGFfbGVuID0gb3B1c19l
bmNvZGUoZW5jLCBwY20xLCA5NjAsIGRhdGEsIDIwMDApOworICAgIGFzc2VydChkYXRhX2xlbiA+
IDApOworCisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX1NJR05BTChPUFVTX1NJ
R05BTF9WT0lDRSkpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QUkVESUNU
SU9OX0RJU0FCTEVEKDEpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQkFO
RFdJRFRIKE9QVVNfQkFORFdJRFRIX1NVUEVSV0lERUJBTkQpKTsKKyAgICBvcHVzX2VuY29kZXJf
Y3RsKGVuYywgT1BVU19TRVRfSU5CQU5EX0ZFQygxKSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChl
bmMsIE9QVVNfU0VUX0JJVFJBVEUoMTU2MDApKTsKKyAgICBkYXRhX2xlbiA9IG9wdXNfZW5jb2Rl
KGVuYywgcGNtMiwgMjg4MCwgZGF0YSwgMTIyKTsKKyAgICBhc3NlcnQoZGF0YV9sZW4gPiAwKTsK
KworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9TSUdOQUwoT1BVU19TSUdOQUxf
TVVTSUMpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURSgyNzAw
MCkpOworICAgIGRhdGFfbGVuID0gb3B1c19lbmNvZGUoZW5jLCBwY20zLCAyODgwLCBkYXRhLCAx
MjIpOyAvKiBhc3NlcnRpb24gZmFpbHVyZSAqLworICAgIGFzc2VydChkYXRhX2xlbiA+IDApOwor
CisgICAgb3B1c19lbmNvZGVyX2Rlc3Ryb3koZW5jKTsKKyAgICByZXR1cm4gMDsKK30KKworc3Rh
dGljIGludCBlY19lbmNfc2hyaW5rX2Fzc2VydDIodm9pZCkKK3sKKyAgICBPcHVzRW5jb2RlciAq
ZW5jOworICAgIGludCBlcnI7CisgICAgaW50IGRhdGFfbGVuOworICAgIHVuc2lnbmVkIGNoYXIg
ZGF0YVsyMDAwXTsKKworICAgIGVuYyA9IG9wdXNfZW5jb2Rlcl9jcmVhdGUoNDgwMDAsIDEsIE9Q
VVNfQVBQTElDQVRJT05fQVVESU8sICZlcnIpOworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBP
UFVTX1NFVF9DT01QTEVYSVRZKDYpKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19T
RVRfU0lHTkFMKE9QVVNfU0lHTkFMX1ZPSUNFKSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMs
IE9QVVNfU0VUX0JBTkRXSURUSChPUFVTX0JBTkRXSURUSF9GVUxMQkFORCkpOworICAgIG9wdXNf
ZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJDKDI2KSk7CisgICAgb3B1
c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJVFJBVEUoMjcwMDApKTsKKyAgICB7CisgICAg
ICAgIHN0YXRpYyBjb25zdCBzaG9ydCBwY21bOTYwXSA9IHsgMCB9OworICAgICAgICBkYXRhX2xl
biA9IG9wdXNfZW5jb2RlKGVuYywgcGNtLCA5NjAsIGRhdGEsIDIwMDApOworICAgICAgICBhc3Nl
cnQoZGF0YV9sZW4gPiAwKTsKKyAgICB9CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX1NJR05BTChPUFVTX1NJR05BTF9NVVNJQykpOworICAgIHsKKyAgICAgICAgc3RhdGljIGNv
bnN0IHNob3J0IHBjbVs0ODBdID0KKyAgICAgICAgeworICAgICAgICAgICAgMzI3NjcsIDMyNzY3
LCAwLCAwLCAzMjc2NywgMzI3NjcsIDAsIDAsIDMyNzY3LCAzMjc2NywKKyAgICAgICAgICAgIC0z
Mjc2OCwgLTMyNzY4LCAwLCAwLCAtMzI3NjgsIC0zMjc2OCwgMCwgMCwgLTMyNzY4LCAtMzI3NjgK
KyAgICAgICAgfTsKKyAgICAgICAgZGF0YV9sZW4gPSBvcHVzX2VuY29kZShlbmMsIHBjbSwgNDgw
LCBkYXRhLCAxOSk7CisgICAgICAgIGFzc2VydChkYXRhX2xlbiA+IDApOworICAgIH0KKyAgICBv
cHVzX2VuY29kZXJfZGVzdHJveShlbmMpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50
IHNpbGtfZ2Fpbl9hc3NlcnQodm9pZCkKK3sKKyAgICBPcHVzRW5jb2RlciAqZW5jOworICAgIGlu
dCBlcnI7CisgICAgaW50IGRhdGFfbGVuOworICAgIHVuc2lnbmVkIGNoYXIgZGF0YVsxMDAwXTsK
KyAgICBzdGF0aWMgY29uc3Qgc2hvcnQgcGNtMVsxNjBdID0geyAwIH07CisgICAgc3RhdGljIGNv
bnN0IHNob3J0IHBjbTJbOTYwXSA9CisgICAgeworICAgICAgICAwLCAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAorICAgICAgICAwLCAwLCAw
LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAorICAg
ICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLAorICAgICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwLCAwLCAwLAorICAgICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAorICAgICAgICAzMjc2NywgMCwgMCwgMCwgMCwgMCwg
MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwKKyAgICAgICAgMCwgMCwgMCwgMCwg
MzI3NjcKKyAgICB9OworCisgICAgZW5jID0gb3B1c19lbmNvZGVyX2NyZWF0ZSg4MDAwLCAxLCBP
UFVTX0FQUExJQ0FUSU9OX0FVRElPLCAmZXJyKTsKKyAgICBvcHVzX2VuY29kZXJfY3RsKGVuYywg
T1BVU19TRVRfQ09NUExFWElUWSgzKSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNf
U0VUX01BWF9CQU5EV0lEVEgoT1BVU19CQU5EV0lEVEhfTkFSUk9XQkFORCkpOworICAgIG9wdXNf
ZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CSVRSQVRFKDYwMDApKTsKKyAgICBkYXRhX2xlbiA9
IG9wdXNfZW5jb2RlKGVuYywgcGNtMSwgMTYwLCBkYXRhLCAxMDAwKTsKKyAgICBhc3NlcnQoZGF0
YV9sZW4gPiAwKTsKKworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlIoMCkp
OworICAgIG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9DT01QTEVYSVRZKDApKTsKKyAg
ICBvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfTUFYX0JBTkRXSURUSChPUFVTX0JBTkRX
SURUSF9NRURJVU1CQU5EKSk7CisgICAgb3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0JJ
VFJBVEUoMjg2NykpOworICAgIGRhdGFfbGVuID0gb3B1c19lbmNvZGUoZW5jLCBwY20yLCA5NjAs
IGRhdGEsIDEwMDApOworICAgIGFzc2VydChkYXRhX2xlbiA+IDApOworCisgICAgb3B1c19lbmNv
ZGVyX2Rlc3Ryb3koZW5jKTsKKyAgICByZXR1cm4gMDsKK30KKwordm9pZCByZWdyZXNzaW9uX3Rl
c3Qodm9pZCkKK3sKKyAgIGZwcmludGYoc3RkZXJyLCAiUnVubmluZyBzaW1wbGUgdGVzdHMgZm9y
IGJ1Z3MgdGhhdCBoYXZlIGJlZW4gZml4ZWQgcHJldmlvdXNseVxuIik7CisgICBjZWx0X2VjX2lu
dGVybmFsX2Vycm9yKCk7CisgICBtc2Nicl9lbmNvZGVfZmFpbDEwKCk7CisgICBtc2Nicl9lbmNv
ZGVfZmFpbCgpOworICAgc3Vycm91bmRfYW5hbHlzaXNfdW5pbml0KCk7CisgICBlY19lbmNfc2hy
aW5rX2Fzc2VydCgpOworICAgZWNfZW5jX3Nocmlua19hc3NlcnQyKCk7CisgICBzaWxrX2dhaW5f
YXNzZXJ0KCk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3J1bl92ZWN0b3JzLnNoIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy9ydW5f
dmVjdG9ycy5zaAppbmRleCAxZDQ0N2M0M2Y1OTY3NzA2YmQzMDllYmJmMjIwMzhhMWYzYTExZjI1
Li5kY2I3NmNmMTg3OWVmMDgwMWQ1YTVjMzNmYzY3NmVkNzliZjQxZTg3IDEwMDc1NQotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rl
c3RzL3J1bl92ZWN0b3JzLnNoCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvcnVuX3ZlY3RvcnMuc2gKQEAgLTMzLDggKzMz
LDggQEAKICMgIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUwogIyAgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKLXJtIGxvZ3NfbW9uby50eHQKLXJtIGxvZ3Nf
c3RlcmVvLnR4dAorcm0gLWYgbG9nc19tb25vLnR4dCBsb2dzX21vbm8yLnR4dAorcm0gLWYgbG9n
c19zdGVyZW8udHh0IGxvZ3Nfc3RlcmVvMi50eHQKIAogaWYgWyAiJCMiIC1uZSAiMyIgXTsgdGhl
bgogICAgIGVjaG8gInVzYWdlOiBydW5fdmVjdG9ycy5zaCA8ZXhlYyBwYXRoPiA8dmVjdG9yIHBh
dGg+IDxyYXRlPiIKQEAgLTQ4LDUxICs0OCw1MyBAQCBSQVRFPSQzCiA6ICR7T1BVU19ERU1POj0k
Q01EX1BBVEgvb3B1c19kZW1vfQogOiAke09QVVNfQ09NUEFSRTo9JENNRF9QQVRIL29wdXNfY29t
cGFyZX0KIAotaWYgWyAtZCAkVkVDVE9SX1BBVEggXTsgdGhlbgotICAgIGVjaG8gVGVzdCB2ZWN0
b3JzIGZvdW5kIGluICRWRUNUT1JfUEFUSAoraWYgWyAtZCAiJFZFQ1RPUl9QQVRIIiBdOyB0aGVu
CisgICAgZWNobyAiVGVzdCB2ZWN0b3JzIGZvdW5kIGluICRWRUNUT1JfUEFUSCIKIGVsc2UKLSAg
ICBlY2hvIE5vIHRlc3QgdmVjdG9ycyBmb3VuZAorICAgIGVjaG8gIk5vIHRlc3QgdmVjdG9ycyBm
b3VuZCIKICAgICAjRG9uJ3QgbWFrZSB0aGUgdGVzdCBmYWlsIGhlcmUgYmVjYXVzZSB0aGUgdGVz
dCB2ZWN0b3JzCiAgICAgI3dpbGwgYmUgZGlzdHJpYnV0ZWQgc2VwYXJhdGVseQogICAgIGV4aXQg
MAogZmkKIAotaWYgWyAhIC14ICRPUFVTX0NPTVBBUkUgXTsgdGhlbgotICAgIGVjaG8gRVJST1I6
IENvbXBhcmUgcHJvZ3JhbSBub3QgZm91bmQ6ICRPUFVTX0NPTVBBUkUKK2lmIFsgISAteCAiJE9Q
VVNfQ09NUEFSRSIgXTsgdGhlbgorICAgIGVjaG8gIkVSUk9SOiBDb21wYXJlIHByb2dyYW0gbm90
IGZvdW5kOiAkT1BVU19DT01QQVJFIgogICAgIGV4aXQgMQogZmkKIAotaWYgWyAteCAkT1BVU19E
RU1PIF07IHRoZW4KLSAgICBlY2hvIERlY29kaW5nIHdpdGggJE9QVVNfREVNTworaWYgWyAteCAi
JE9QVVNfREVNTyIgXTsgdGhlbgorICAgIGVjaG8gIkRlY29kaW5nIHdpdGggJE9QVVNfREVNTyIK
IGVsc2UKLSAgICBlY2hvIEVSUk9SOiBEZWNvZGVyIG5vdCBmb3VuZDogJE9QVVNfREVNTworICAg
IGVjaG8gIkVSUk9SOiBEZWNvZGVyIG5vdCBmb3VuZDogJE9QVVNfREVNTyIKICAgICBleGl0IDEK
IGZpCiAKIGVjaG8gIj09PT09PT09PT09PT09IgotZWNobyBUZXN0aW5nIG1vbm8KK2VjaG8gIlRl
c3RpbmcgbW9ubyIKIGVjaG8gIj09PT09PT09PT09PT09IgogZWNobwogCiBmb3IgZmlsZSBpbiAw
MSAwMiAwMyAwNCAwNSAwNiAwNyAwOCAwOSAxMCAxMSAxMgogZG8KLSAgICBpZiBbIC1lICRWRUNU
T1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuYml0IF07IHRoZW4KLSAgICAgICAgZWNobyBUZXN0aW5n
IHRlc3R2ZWN0b3IkZmlsZQorICAgIGlmIFsgLWUgIiRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZp
bGUuYml0IiBdOyB0aGVuCisgICAgICAgIGVjaG8gIlRlc3RpbmcgdGVzdHZlY3RvciRmaWxlIgog
ICAgIGVsc2UKLSAgICAgICAgZWNobyBCaXRzdHJlYW0gZmlsZSBub3QgZm91bmQ6IHRlc3R2ZWN0
b3IkZmlsZS5iaXQKKyAgICAgICAgZWNobyAiQml0c3RyZWFtIGZpbGUgbm90IGZvdW5kOiB0ZXN0
dmVjdG9yJGZpbGUuYml0IgogICAgIGZpCi0gICAgaWYgJE9QVVNfREVNTyAtZCAkUkFURSAxICRW
RUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuYml0IHRtcC5vdXQgPj4gbG9nc19tb25vLnR4dCAy
PiYxOyB0aGVuCi0gICAgICAgIGVjaG8gc3VjY2Vzc2Z1bGx5IGRlY29kZWQKKyAgICBpZiAiJE9Q
VVNfREVNTyIgLWQgIiRSQVRFIiAxICIkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciRmaWxlLmJpdCIg
dG1wLm91dCA+PiBsb2dzX21vbm8udHh0IDI+JjE7IHRoZW4KKyAgICAgICAgZWNobyAic3VjY2Vz
c2Z1bGx5IGRlY29kZWQiCiAgICAgZWxzZQotICAgICAgICBlY2hvIEVSUk9SOiBkZWNvZGluZyBm
YWlsZWQKKyAgICAgICAgZWNobyAiRVJST1I6IGRlY29kaW5nIGZhaWxlZCIKICAgICAgICAgZXhp
dCAxCiAgICAgZmkKLSAgICAkT1BVU19DT01QQVJFIC1yICRSQVRFICRWRUNUT1JfUEFUSC90ZXN0
dmVjdG9yJGZpbGUuZGVjIHRtcC5vdXQgPj4gbG9nc19tb25vLnR4dCAyPiYxCisgICAgIiRPUFVT
X0NPTVBBUkUiIC1yICIkUkFURSIgIiRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJHtmaWxlfS5kZWMi
IHRtcC5vdXQgPj4gbG9nc19tb25vLnR4dCAyPiYxCiAgICAgZmxvYXRfcmV0PSQ/Ci0gICAgaWYg
WyAiJGZsb2F0X3JldCIgLWVxICIwIiBdOyB0aGVuCi0gICAgICAgIGVjaG8gb3V0cHV0IG1hdGNo
ZXMgcmVmZXJlbmNlCisgICAgIiRPUFVTX0NPTVBBUkUiIC1yICIkUkFURSIgIiRWRUNUT1JfUEFU
SC90ZXN0dmVjdG9yJHtmaWxlfW0uZGVjIiB0bXAub3V0ID4+IGxvZ3NfbW9ubzIudHh0IDI+JjEK
KyAgICBmbG9hdF9yZXQyPSQ/CisgICAgaWYgWyAiJGZsb2F0X3JldCIgLWVxICIwIiBdIHx8IFsg
IiRmbG9hdF9yZXQyIiAtZXEgIjAiIF07IHRoZW4KKyAgICAgICAgZWNobyAib3V0cHV0IG1hdGNo
ZXMgcmVmZXJlbmNlIgogICAgIGVsc2UKLSAgICAgICAgZWNobyBFUlJPUjogb3V0cHV0IGRvZXMg
bm90IG1hdGNoIHJlZmVyZW5jZQorICAgICAgICBlY2hvICJFUlJPUjogb3V0cHV0IGRvZXMgbm90
IG1hdGNoIHJlZmVyZW5jZSIKICAgICAgICAgZXhpdCAxCiAgICAgZmkKICAgICBlY2hvCkBAIC0x
MDUsMjMgKzEwNywyNSBAQCBlY2hvCiAKIGZvciBmaWxlIGluIDAxIDAyIDAzIDA0IDA1IDA2IDA3
IDA4IDA5IDEwIDExIDEyCiBkbwotICAgIGlmIFsgLWUgJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3Ik
ZmlsZS5iaXQgXTsgdGhlbgotICAgICAgICBlY2hvIFRlc3RpbmcgdGVzdHZlY3RvciRmaWxlCisg
ICAgaWYgWyAtZSAiJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0b3IkZmlsZS5iaXQiIF07IHRoZW4KKyAg
ICAgICAgZWNobyAiVGVzdGluZyB0ZXN0dmVjdG9yJGZpbGUiCiAgICAgZWxzZQotICAgICAgICBl
Y2hvIEJpdHN0cmVhbSBmaWxlIG5vdCBmb3VuZDogdGVzdHZlY3RvciRmaWxlCisgICAgICAgIGVj
aG8gIkJpdHN0cmVhbSBmaWxlIG5vdCBmb3VuZDogdGVzdHZlY3RvciRmaWxlIgogICAgIGZpCi0g
ICAgaWYgJE9QVVNfREVNTyAtZCAkUkFURSAyICRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUu
Yml0IHRtcC5vdXQgPj4gbG9nc19zdGVyZW8udHh0IDI+JjE7IHRoZW4KLSAgICAgICAgZWNobyBz
dWNjZXNzZnVsbHkgZGVjb2RlZAorICAgIGlmICIkT1BVU19ERU1PIiAtZCAiJFJBVEUiIDIgIiRW
RUNUT1JfUEFUSC90ZXN0dmVjdG9yJGZpbGUuYml0IiB0bXAub3V0ID4+IGxvZ3Nfc3RlcmVvLnR4
dCAyPiYxOyB0aGVuCisgICAgICAgIGVjaG8gInN1Y2Nlc3NmdWxseSBkZWNvZGVkIgogICAgIGVs
c2UKLSAgICAgICAgZWNobyBFUlJPUjogZGVjb2RpbmcgZmFpbGVkCisgICAgICAgIGVjaG8gIkVS
Uk9SOiBkZWNvZGluZyBmYWlsZWQiCiAgICAgICAgIGV4aXQgMQogICAgIGZpCi0gICAgJE9QVVNf
Q09NUEFSRSAtcyAtciAkUkFURSAkVkVDVE9SX1BBVEgvdGVzdHZlY3RvciRmaWxlLmRlYyB0bXAu
b3V0ID4+IGxvZ3Nfc3RlcmVvLnR4dCAyPiYxCisgICAgIiRPUFVTX0NPTVBBUkUiIC1zIC1yICIk
UkFURSIgIiRWRUNUT1JfUEFUSC90ZXN0dmVjdG9yJHtmaWxlfS5kZWMiIHRtcC5vdXQgPj4gbG9n
c19zdGVyZW8udHh0IDI+JjEKICAgICBmbG9hdF9yZXQ9JD8KLSAgICBpZiBbICIkZmxvYXRfcmV0
IiAtZXEgIjAiIF07IHRoZW4KLSAgICAgICAgZWNobyBvdXRwdXQgbWF0Y2hlcyByZWZlcmVuY2UK
KyAgICAiJE9QVVNfQ09NUEFSRSIgLXMgLXIgIiRSQVRFIiAiJFZFQ1RPUl9QQVRIL3Rlc3R2ZWN0
b3Ike2ZpbGV9bS5kZWMiIHRtcC5vdXQgPj4gbG9nc19zdGVyZW8yLnR4dCAyPiYxCisgICAgZmxv
YXRfcmV0Mj0kPworICAgIGlmIFsgIiRmbG9hdF9yZXQiIC1lcSAiMCIgXSB8fCBbICIkZmxvYXRf
cmV0MiIgLWVxICIwIiBdOyB0aGVuCisgICAgICAgIGVjaG8gIm91dHB1dCBtYXRjaGVzIHJlZmVy
ZW5jZSIKICAgICBlbHNlCi0gICAgICAgIGVjaG8gRVJST1I6IG91dHB1dCBkb2VzIG5vdCBtYXRj
aCByZWZlcmVuY2UKKyAgICAgICAgZWNobyAiRVJST1I6IG91dHB1dCBkb2VzIG5vdCBtYXRjaCBy
ZWZlcmVuY2UiCiAgICAgICAgIGV4aXQgMQogICAgIGZpCiAgICAgZWNobwpAQCAtMTI5LDYgKzEz
MywxMSBAQCBkb25lCiAKIAogCi1lY2hvIEFsbCB0ZXN0cyBoYXZlIHBhc3NlZCBzdWNjZXNzZnVs
bHkKLWdyZXAgcXVhbGl0eSBsb2dzX21vbm8udHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7cHJpbnQg
IkF2ZXJhZ2UgbW9ubyBxdWFsaXR5IGlzIiwgc3VtL05SLCAiJSJ9JwotZ3JlcCBxdWFsaXR5IGxv
Z3Nfc3RlcmVvLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee3ByaW50ICJBdmVyYWdlIHN0ZXJlbyBx
dWFsaXR5IGlzIiwgc3VtL05SLCAiJSJ9JworZWNobyAiQWxsIHRlc3RzIGhhdmUgcGFzc2VkIHN1
Y2Nlc3NmdWxseSIKK21vbm8xPWBncmVwIHF1YWxpdHkgbG9nc19tb25vLnR4dCB8IGF3ayAne3N1
bSs9JDR9RU5Ee2lmIChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNlIHN1bSA9IDA7IHByaW50IHN1
bX0nYAorbW9ubzI9YGdyZXAgcXVhbGl0eSBsb2dzX21vbm8yLnR4dCB8IGF3ayAne3N1bSs9JDR9
RU5Ee2lmIChOUiA9PSAxMikgc3VtIC89IDEyOyBlbHNlIHN1bSA9IDA7IHByaW50IHN1bX0nYAor
ZWNobyAkbW9ubzEgJG1vbm8yIHwgYXdrICd7aWYgKCQyID4gJDEpICQxID0gJDI7IHByaW50ICJB
dmVyYWdlIG1vbm8gcXVhbGl0eSBpcyIsICQxLCAiJSJ9JworCitzdGVyZW8xPWBncmVwIHF1YWxp
dHkgbG9nc19zdGVyZW8udHh0IHwgYXdrICd7c3VtKz0kNH1FTkR7aWYgKE5SID09IDEyKSBzdW0g
Lz0gMTI7IGVsc2Ugc3VtID0gMDsgcHJpbnQgc3VtfSdgCitzdGVyZW8yPWBncmVwIHF1YWxpdHkg
bG9nc19zdGVyZW8yLnR4dCB8IGF3ayAne3N1bSs9JDR9RU5Ee2lmIChOUiA9PSAxMikgc3VtIC89
IDEyOyBlbHNlIHN1bSA9IDA7IHByaW50IHN1bX0nYAorZWNobyAkc3RlcmVvMSAkc3RlcmVvMiB8
IGF3ayAne2lmICgkMiA+ICQxKSAkMSA9ICQyOyBwcmludCAiQXZlcmFnZSBzdGVyZW8gcXVhbGl0
eSBpcyIsICQxLCAiJSJ9JwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy90ZXN0X29wdXNfYXBpLmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3Rz
L3Rlc3Rfb3B1c19hcGkuYwppbmRleCA0ODkwNTJkMjFmYjMwYmI4YjBmZjljMzNjZWZmZjBmMWE1
MDBmZWRhLi4xZDAwOTUwNThmODBhMTIxM2IwMTU1NjE5ODRjM2JjYzdjZjhlNTQyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMv
c3JjL3Rlc3RzL3Rlc3Rfb3B1c19hcGkuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19hcGkuYwpAQCAt
MTM4Myw2ICsxMzgzLDE1IEBAIG9wdXNfaW50MzIgdGVzdF9lbmNfYXBpKHZvaWQpCiAgICBlcnI9
b3B1c19lbmNvZGVyX2N0bChlbmMsT1BVU19TRVRfRVhQRVJUX0ZSQU1FX0RVUkFUSU9OKE9QVVNf
RlJBTUVTSVpFXzYwX01TKSk7CiAgICBpZihlcnIhPU9QVVNfT0spdGVzdF9mYWlsZWQoKTsKICAg
IGNmZ3MrKzsKKyAgIGVycj1vcHVzX2VuY29kZXJfY3RsKGVuYyxPUFVTX1NFVF9FWFBFUlRfRlJB
TUVfRFVSQVRJT04oT1BVU19GUkFNRVNJWkVfODBfTVMpKTsKKyAgIGlmKGVyciE9T1BVU19PSyl0
ZXN0X2ZhaWxlZCgpOworICAgY2ZncysrOworICAgZXJyPW9wdXNfZW5jb2Rlcl9jdGwoZW5jLE9Q
VVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTihPUFVTX0ZSQU1FU0laRV8xMDBfTVMpKTsKKyAg
IGlmKGVyciE9T1BVU19PSyl0ZXN0X2ZhaWxlZCgpOworICAgY2ZncysrOworICAgZXJyPW9wdXNf
ZW5jb2Rlcl9jdGwoZW5jLE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTihPUFVTX0ZSQU1F
U0laRV8xMjBfTVMpKTsKKyAgIGlmKGVyciE9T1BVU19PSyl0ZXN0X2ZhaWxlZCgpOworICAgY2Zn
cysrOwogICAgQ0hFQ0tfU0VUR0VUKE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTihpKSxP
UFVTX0dFVF9FWFBFUlRfRlJBTUVfRFVSQVRJT04oJmkpLDAsLTEsCiAgICAgICAgICBPUFVTX0ZS
QU1FU0laRV82MF9NUyxPUFVTX0ZSQU1FU0laRV9BUkcsCiAgICAgICIgICAgT1BVU19TRVRfRVhQ
RVJUX0ZSQU1FX0RVUkFUSU9OIC4uLi4uLi4uLi4uLi4uLiBPSy5cbiIsCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rl
c3RzL3Rlc3Rfb3B1c19jb21tb24uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCmluZGV4IDY2
Yjk2OTAwMTg5M2M5ODhjOGNlZGUzYTVlMjliMGYwM2NkMGQ2MmIuLjIzNWNmMWMxMDE2ODkxMTBh
MDAxMzViYmNlMmMzYTJiNTFmZGEwYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2NvbW1v
bi5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
b3B1cy9zcmMvdGVzdHMvdGVzdF9vcHVzX2NvbW1vbi5oCkBAIC02NCw2ICs2NCw4IEBAIHN0YXRp
YyBvcHVzX3VpbnQzMiBpc2VlZDsKIAogI2lmZGVmIF9fR05VQ19fCiBfX2F0dHJpYnV0ZV9fKChu
b3JldHVybikpCisjZWxpZiBkZWZpbmVkKF9NU0NfVkVSKQorX19kZWNsc3BlYyhub3JldHVybikK
ICNlbmRpZgogc3RhdGljIE9QVVNfSU5MSU5FIHZvaWQgX3Rlc3RfZmFpbGVkKGNvbnN0IGNoYXIg
KmZpbGUsIGludCBsaW5lKQogewpAQCAtNzYsMyArNzgsNSBAQCBzdGF0aWMgT1BVU19JTkxJTkUg
dm9pZCBfdGVzdF9mYWlsZWQoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUpCiAgIGFib3J0KCk7
CiB9CiAjZGVmaW5lIHRlc3RfZmFpbGVkKCkgX3Rlc3RfZmFpbGVkKF9fRklMRV9fLCBfX0xJTkVf
Xyk7CisKK3ZvaWQgcmVncmVzc2lvbl90ZXN0KHZvaWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90ZXN0cy90ZXN0
X29wdXNfZGVjb2RlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19kZWNvZGUuYwppbmRleCA5YzBlYjljNzI4
NThkNWE4ZjRkYzRkYTZiOWYzMWViMmNhZWJjNDFlLi41MTk3ZmExZGQyY2YxMGI1ZTUwMzdkMmIy
MTUzZDZlZjY2NDQ3N2I3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19kZWNvZGUuYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3Jj
L3Rlc3RzL3Rlc3Rfb3B1c19kZWNvZGUuYwpAQCAtMTA0LDcgKzEwNCw3IEBAIGludCB0ZXN0X2Rl
Y29kZXJfY29kZTAoaW50IG5vX2Z1enopCiAgICAgICBpbnQgZmFjdG9yPTQ4MDAwL2Zzdlt0Pj4x
XTsKICAgICAgIGZvcihmZWM9MDtmZWM8MjtmZWMrKykKICAgICAgIHsKLSAgICAgICAgIGludCBk
dXI7CisgICAgICAgICBvcHVzX2ludDMyIGR1cjsKICAgICAgICAgIC8qVGVzdCBQTEMgb24gYSBm
cmVzaCBkZWNvZGVyKi8KICAgICAgICAgIG91dF9zYW1wbGVzID0gb3B1c19kZWNvZGUoZGVjW3Rd
LCAwLCAwLCBvdXRidWYsIDEyMC9mYWN0b3IsIGZlYyk7CiAgICAgICAgICBpZihvdXRfc2FtcGxl
cyE9MTIwL2ZhY3Rvcil0ZXN0X2ZhaWxlZCgpOwpAQCAtMTM1LDcgKzEzNSwxNCBAQCBpbnQgdGVz
dF9kZWNvZGVyX2NvZGUwKGludCBub19mdXp6KQogICAgICAgICAgb3V0YnVmWzBdPTMyNzQ5Owog
ICAgICAgICAgb3V0X3NhbXBsZXMgPSBvcHVzX2RlY29kZShkZWNbdF0sIHBhY2tldCwgMCwgb3V0
YnVmLCAwLCBmZWMpOwogICAgICAgICAgaWYob3V0X3NhbXBsZXM+MCl0ZXN0X2ZhaWxlZCgpOwor
I2lmICFkZWZpbmVkKE9QVVNfQlVJTEQpICYmIChPUFVTX0dOVUNfUFJFUkVRKDQsIDYpIHx8IChk
ZWZpbmVkKF9fY2xhbmdfbWFqb3JfXykgJiYgX19jbGFuZ19tYWpvcl9fID49IDMpKQorI3ByYWdt
YSBHQ0MgZGlhZ25vc3RpYyBwdXNoCisjcHJhZ21hIEdDQyBkaWFnbm9zdGljIGlnbm9yZWQgIi1X
bm9ubnVsbCIKKyNlbmRpZgogICAgICAgICAgb3V0X3NhbXBsZXMgPSBvcHVzX2RlY29kZShkZWNb
dF0sIHBhY2tldCwgMCwgMCwgMCwgZmVjKTsKKyNpZiAhZGVmaW5lZChPUFVTX0JVSUxEKSAmJiAo
T1BVU19HTlVDX1BSRVJFUSg0LCA2KSB8fCAoZGVmaW5lZChfX2NsYW5nX21ham9yX18pICYmIF9f
Y2xhbmdfbWFqb3JfXyA+PSAzKSkKKyNwcmFnbWEgR0NDIGRpYWdub3N0aWMgcG9wCisjZW5kaWYK
ICAgICAgICAgIGlmKG91dF9zYW1wbGVzPjApdGVzdF9mYWlsZWQoKTsKICAgICAgICAgIGlmKG91
dGJ1ZlswXSE9MzI3NDkpdGVzdF9mYWlsZWQoKTsKIApAQCAtMTYwLDcgKzE2Nyw3IEBAIGludCB0
ZXN0X2RlY29kZXJfY29kZTAoaW50IG5vX2Z1enopCiAgICAvKkNvdW50IGNvZGUgMCB0ZXN0cyov
CiAgICBmb3IoaT0wO2k8NjQ7aSsrKQogICAgewotICAgICAgaW50IGR1cjsKKyAgICAgIG9wdXNf
aW50MzIgZHVyOwogICAgICAgaW50IGosZXhwZWN0ZWRbNSoyXTsKICAgICAgIHBhY2tldFswXT1p
PDwyOwogICAgICAgcGFja2V0WzFdPTI1NTsKQEAgLTMxNCw3ICszMjEsNyBAQCBpbnQgdGVzdF9k
ZWNvZGVyX2NvZGUwKGludCBub19mdXp6KQogICAgICAgaWYob3B1c19kZWNvZGUoZGVjYmFrLCAg
MCwgMCwgb3V0YnVmLCBNQVhfRlJBTUVfU0FNUCwgMCk8MjApdGVzdF9mYWlsZWQoKTsKICAgICAg
IGZvcih0PTA7dDw1KjI7dCsrKQogICAgICAgewotICAgICAgICAgaW50IGR1cjsKKyAgICAgICAg
IG9wdXNfaW50MzIgZHVyOwogICAgICAgICAgb3V0X3NhbXBsZXMgPSBvcHVzX2RlY29kZShkZWNb
dF0sIHBhY2tldCwgcGxlbisxLCBvdXRidWYsIE1BWF9GUkFNRV9TQU1QLCAwKTsKICAgICAgICAg
IGlmKG91dF9zYW1wbGVzIT1leHBlY3RlZFt0XSl0ZXN0X2ZhaWxlZCgpOwogICAgICAgICAgaWYo
dD09MClkZWNfZmluYWxfcmFuZ2UyPWRlY19maW5hbF9yYW5nZTE7CkBAIC0zODQsMjYgKzM5MSwy
NiBAQCB2b2lkIHRlc3Rfc29mdF9jbGlwKHZvaWQpCiAgICB7CiAgICAgICBmb3IgKGo9MDtqPDEw
MjQ7aisrKQogICAgICAgewotICAgICAgICB4W2pdPShpJjI1NSkqKDEvMzIuZiktNC5mOworICAg
ICAgICB4W2pdPShqJjI1NSkqKDEvMzIuZiktNC5mOwogICAgICAgfQogICAgICAgb3B1c19wY21f
c29mdF9jbGlwKCZ4W2ldLDEwMjQtaSwxLHMpOwogICAgICAgZm9yIChqPWk7ajwxMDI0O2orKykK
ICAgICAgIHsKLSAgICAgICAgaWYoeFtpXT4xLmYpdGVzdF9mYWlsZWQoKTsKLSAgICAgICAgaWYo
eFtpXTwtMS5mKXRlc3RfZmFpbGVkKCk7CisgICAgICAgIGlmKHhbal0+MS5mKXRlc3RfZmFpbGVk
KCk7CisgICAgICAgIGlmKHhbal08LTEuZil0ZXN0X2ZhaWxlZCgpOwogICAgICAgfQogICAgfQog
ICAgZm9yKGk9MTtpPDk7aSsrKQogICAgewogICAgICAgZm9yIChqPTA7ajwxMDI0O2orKykKICAg
ICAgIHsKLSAgICAgICAgeFtqXT0oaSYyNTUpKigxLzMyLmYpLTQuZjsKKyAgICAgICAgeFtqXT0o
aiYyNTUpKigxLzMyLmYpLTQuZjsKICAgICAgIH0KICAgICAgIG9wdXNfcGNtX3NvZnRfY2xpcCh4
LDEwMjQvaSxpLHMpOwogICAgICAgZm9yIChqPTA7ajwoMTAyNC9pKSppO2orKykKICAgICAgIHsK
LSAgICAgICAgaWYoeFtpXT4xLmYpdGVzdF9mYWlsZWQoKTsKLSAgICAgICAgaWYoeFtpXTwtMS5m
KXRlc3RfZmFpbGVkKCk7CisgICAgICAgIGlmKHhbal0+MS5mKXRlc3RfZmFpbGVkKCk7CisgICAg
ICAgIGlmKHhbal08LTEuZil0ZXN0X2ZhaWxlZCgpOwogICAgICAgfQogICAgfQogICAgb3B1c19w
Y21fc29mdF9jbGlwKHgsMCwxLHMpOwpAQCAtNDM2LDcgKzQ0Myw3IEBAIGludCBtYWluKGludCBf
YXJnYywgY2hhciAqKl9hcmd2KQogICAgICAgaXNlZWQ9YXRvaShlbnZfc2VlZCk7CiAgICAgICBl
bnZfdXNlZD0xOwogICAgfQotICAgZWxzZSBpc2VlZD0ob3B1c191aW50MzIpdGltZShOVUxMKV4o
KGdldHBpZCgpJjY1NTM1KTw8MTYpOworICAgZWxzZSBpc2VlZD0ob3B1c191aW50MzIpdGltZShO
VUxMKV4oKChvcHVzX3VpbnQzMilnZXRwaWQoKSY2NTUzNSk8PDE2KTsKICAgIFJ3PVJ6PWlzZWVk
OwogCiAgICBvdmVyc2lvbj1vcHVzX2dldF92ZXJzaW9uX3N0cmluZygpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy90
ZXN0cy90ZXN0X29wdXNfZW5jb2RlLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYwppbmRleCAx
MzJkMDc0ZDMwMjU0NTZmOWQyMjk3ZTc5ODhlODVhYzUxNjEwYjg1Li5kYWU0OWMzZDUzNTFiZDU1
NmMwM2Q3NGVkOGFlNjljMjE5NTIwNjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19lbmNv
ZGUuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L29wdXMvc3JjL3Rlc3RzL3Rlc3Rfb3B1c19lbmNvZGUuYwpAQCAtNTEsOCArNTEsOCBAQAogI2Rl
ZmluZSBTQU1QTEVTICg0ODAwMCozMCkKICNkZWZpbmUgU1NBTVBMRVMgKFNBTVBMRVMvMykKICNk
ZWZpbmUgTUFYX0ZSQU1FX1NBTVAgKDU3NjApCi0KICNkZWZpbmUgUEkgKDMuMTQxNTkyNjUzNTg5
NzkzMjM4NDYyNjQzZikKKyNkZWZpbmUgUkFORF9TQU1QTEUoYSkgKGFbZmFzdF9yYW5kKCkgJSBz
aXplb2YoYSkvc2l6ZW9mKGFbMF0pXSkKIAogdm9pZCBnZW5lcmF0ZV9tdXNpYyhzaG9ydCAqYnVm
LCBvcHVzX2ludDMyIGxlbikKIHsKQEAgLTExMiwxNCArMTEyLDE2OSBAQCBzdGF0aWMgT1BVU19J
TkxJTkUgdm9pZCBzYXZlX3BhY2tldCh1bnNpZ25lZCBjaGFyKiBwLCBpbnQgbGVuLCBvcHVzX3Vp
bnQzMiBybmcpCiB9CiAjZW5kaWYKIAoraW50IGdldF9mcmFtZV9zaXplX2VudW0oaW50IGZyYW1l
X3NpemUsIGludCBzYW1wbGluZ19yYXRlKQoreworICAgaW50IGZyYW1lX3NpemVfZW51bTsKKwor
ICAgaWYoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS80MDApCisgICAgICBmcmFtZV9zaXplX2Vu
dW0gPSBPUFVTX0ZSQU1FU0laRV8yXzVfTVM7CisgICBlbHNlIGlmKGZyYW1lX3NpemU9PXNhbXBs
aW5nX3JhdGUvMjAwKQorICAgICAgZnJhbWVfc2l6ZV9lbnVtID0gT1BVU19GUkFNRVNJWkVfNV9N
UzsKKyAgIGVsc2UgaWYoZnJhbWVfc2l6ZT09c2FtcGxpbmdfcmF0ZS8xMDApCisgICAgICBmcmFt
ZV9zaXplX2VudW0gPSBPUFVTX0ZSQU1FU0laRV8xMF9NUzsKKyAgIGVsc2UgaWYoZnJhbWVfc2l6
ZT09c2FtcGxpbmdfcmF0ZS81MCkKKyAgICAgIGZyYW1lX3NpemVfZW51bSA9IE9QVVNfRlJBTUVT
SVpFXzIwX01TOworICAgZWxzZSBpZihmcmFtZV9zaXplPT1zYW1wbGluZ19yYXRlLzI1KQorICAg
ICAgZnJhbWVfc2l6ZV9lbnVtID0gT1BVU19GUkFNRVNJWkVfNDBfTVM7CisgICBlbHNlIGlmKGZy
YW1lX3NpemU9PTMqc2FtcGxpbmdfcmF0ZS81MCkKKyAgICAgIGZyYW1lX3NpemVfZW51bSA9IE9Q
VVNfRlJBTUVTSVpFXzYwX01TOworICAgZWxzZSBpZihmcmFtZV9zaXplPT00KnNhbXBsaW5nX3Jh
dGUvNTApCisgICAgICBmcmFtZV9zaXplX2VudW0gPSBPUFVTX0ZSQU1FU0laRV84MF9NUzsKKyAg
IGVsc2UgaWYoZnJhbWVfc2l6ZT09NSpzYW1wbGluZ19yYXRlLzUwKQorICAgICAgZnJhbWVfc2l6
ZV9lbnVtID0gT1BVU19GUkFNRVNJWkVfMTAwX01TOworICAgZWxzZSBpZihmcmFtZV9zaXplPT02
KnNhbXBsaW5nX3JhdGUvNTApCisgICAgICBmcmFtZV9zaXplX2VudW0gPSBPUFVTX0ZSQU1FU0la
RV8xMjBfTVM7CisgICBlbHNlCisgICAgICB0ZXN0X2ZhaWxlZCgpOworCisgICByZXR1cm4gZnJh
bWVfc2l6ZV9lbnVtOworfQorCit2b2lkIHRlc3RfZW5jb2RlKE9wdXNFbmNvZGVyICplbmMsIGlu
dCBjaGFubmVscywgaW50IGZyYW1lX3NpemUsIE9wdXNEZWNvZGVyICpkZWMsIGNvbnN0IGNoYXIq
IGRlYnVnX2luZm8pCit7CisgICBpbnQgc2FtcF9jb3VudCA9IDA7CisgICBvcHVzX2ludDE2ICpp
bmJ1ZjsKKyAgIHVuc2lnbmVkIGNoYXIgcGFja2V0W01BWF9QQUNLRVQrMjU3XTsKKyAgIGludCBs
ZW47CisgICBvcHVzX2ludDE2ICpvdXRidWY7CisgICBpbnQgb3V0X3NhbXBsZXM7CisKKyAgIC8q
IEdlbmVyYXRlIGlucHV0IGRhdGEgKi8KKyAgIGluYnVmID0gKG9wdXNfaW50MTYqKW1hbGxvYyhz
aXplb2YoKmluYnVmKSpTU0FNUExFUyk7CisgICBnZW5lcmF0ZV9tdXNpYyhpbmJ1ZiwgU1NBTVBM
RVMvMik7CisKKyAgIC8qIEFsbG9jYXRlIG1lbW9yeSBmb3Igb3V0cHV0IGRhdGEgKi8KKyAgIG91
dGJ1ZiA9IChvcHVzX2ludDE2KiltYWxsb2Moc2l6ZW9mKCpvdXRidWYpKk1BWF9GUkFNRV9TQU1Q
KjMpOworCisgICAvKiBFbmNvZGUgZGF0YSwgdGhlbiBkZWNvZGUgZm9yIHNhbml0eSBjaGVjayAq
LworICAgZG8geworICAgICAgbGVuID0gb3B1c19lbmNvZGUoZW5jLCAmaW5idWZbc2FtcF9jb3Vu
dCpjaGFubmVsc10sIGZyYW1lX3NpemUsIHBhY2tldCwgTUFYX1BBQ0tFVCk7CisgICAgICBpZihs
ZW48MCB8fCBsZW4+TUFYX1BBQ0tFVCkgeworICAgICAgICAgZnByaW50ZihzdGRlcnIsIiVzXG4i
LGRlYnVnX2luZm8pOworICAgICAgICAgZnByaW50ZihzdGRlcnIsIm9wdXNfZW5jb2RlKCkgcmV0
dXJuZWQgJWRcbiIsbGVuKTsKKyAgICAgICAgIHRlc3RfZmFpbGVkKCk7CisgICAgICB9CisKKyAg
ICAgIG91dF9zYW1wbGVzID0gb3B1c19kZWNvZGUoZGVjLCBwYWNrZXQsIGxlbiwgb3V0YnVmLCBN
QVhfRlJBTUVfU0FNUCwgMCk7CisgICAgICBpZihvdXRfc2FtcGxlcyE9ZnJhbWVfc2l6ZSkgewor
ICAgICAgICAgZnByaW50ZihzdGRlcnIsIiVzXG4iLGRlYnVnX2luZm8pOworICAgICAgICAgZnBy
aW50ZihzdGRlcnIsIm9wdXNfZGVjb2RlKCkgcmV0dXJuZWQgJWRcbiIsb3V0X3NhbXBsZXMpOwor
ICAgICAgICAgdGVzdF9mYWlsZWQoKTsKKyAgICAgIH0KKworICAgICAgc2FtcF9jb3VudCArPSBm
cmFtZV9zaXplOworICAgfSB3aGlsZSAoc2FtcF9jb3VudCA8ICgoU1NBTVBMRVMvMiktTUFYX0ZS
QU1FX1NBTVApKTsKKworICAgLyogQ2xlYW4gdXAgKi8KKyAgIGZyZWUoaW5idWYpOworICAgZnJl
ZShvdXRidWYpOworfQorCit2b2lkIGZ1enpfZW5jb2Rlcl9zZXR0aW5ncyhjb25zdCBpbnQgbnVt
X2VuY29kZXJzLCBjb25zdCBpbnQgbnVtX3NldHRpbmdfY2hhbmdlcykKK3sKKyAgIE9wdXNFbmNv
ZGVyICplbmM7CisgICBPcHVzRGVjb2RlciAqZGVjOworICAgaW50IGksaixlcnI7CisKKyAgIC8q
IFBhcmFtZXRlcnMgdG8gZnV6ei4gU29tZSB2YWx1ZXMgYXJlIGR1cGxpY2F0ZWQgdG8gaW5jcmVh
c2UgdGhlaXIgcHJvYmFiaWxpdHkgb2YgYmVpbmcgdGVzdGVkLiAqLworICAgaW50IHNhbXBsaW5n
X3JhdGVzWzVdID0gezgwMDAsIDEyMDAwLCAxNjAwMCwgMjQwMDAsIDQ4MDAwfTsKKyAgIGludCBj
aGFubmVsc1syXSA9IHsxLCAyfTsKKyAgIGludCBhcHBsaWNhdGlvbnNbM10gPSB7T1BVU19BUFBM
SUNBVElPTl9BVURJTywgT1BVU19BUFBMSUNBVElPTl9WT0lQLCBPUFVTX0FQUExJQ0FUSU9OX1JF
U1RSSUNURURfTE9XREVMQVl9OworICAgaW50IGJpdHJhdGVzWzExXSA9IHs2MDAwLCAxMjAwMCwg
MTYwMDAsIDI0MDAwLCAzMjAwMCwgNDgwMDAsIDY0MDAwLCA5NjAwMCwgNTEwMDAwLCBPUFVTX0FV
VE8sIE9QVVNfQklUUkFURV9NQVh9OworICAgaW50IGZvcmNlX2NoYW5uZWxzWzRdID0ge09QVVNf
QVVUTywgT1BVU19BVVRPLCAxLCAyfTsKKyAgIGludCB1c2VfdmJyWzNdID0gezAsIDEsIDF9Owor
ICAgaW50IHZicl9jb25zdHJhaW50c1szXSA9IHswLCAxLCAxfTsKKyAgIGludCBjb21wbGV4aXRp
ZXNbMTFdID0gezAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwfTsKKyAgIGludCBtYXhf
YmFuZHdpZHRoc1s2XSA9IHtPUFVTX0JBTkRXSURUSF9OQVJST1dCQU5ELCBPUFVTX0JBTkRXSURU
SF9NRURJVU1CQU5ELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9QVVNfQkFORFdJRFRI
X1dJREVCQU5ELCBPUFVTX0JBTkRXSURUSF9TVVBFUldJREVCQU5ELAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIE9QVVNfQkFORFdJRFRIX0ZVTExCQU5ELCBPUFVTX0JBTkRXSURUSF9GVUxM
QkFORH07CisgICBpbnQgc2lnbmFsc1s0XSA9IHtPUFVTX0FVVE8sIE9QVVNfQVVUTywgT1BVU19T
SUdOQUxfVk9JQ0UsIE9QVVNfU0lHTkFMX01VU0lDfTsKKyAgIGludCBpbmJhbmRfZmVjc1szXSA9
IHswLCAwLCAxfTsKKyAgIGludCBwYWNrZXRfbG9zc19wZXJjWzRdID0gezAsIDEsIDIsIDV9Owor
ICAgaW50IGxzYl9kZXB0aHNbMl0gPSB7OCwgMjR9OworICAgaW50IHByZWRpY3Rpb25fZGlzYWJs
ZWRbM10gPSB7MCwgMCwgMX07CisgICBpbnQgdXNlX2R0eFsyXSA9IHswLCAxfTsKKyAgIGludCBm
cmFtZV9zaXplc19tc194Mls5XSA9IHs1LCAxMCwgMjAsIDQwLCA4MCwgMTIwLCAxNjAsIDIwMCwg
MjQwfTsgIC8qIHgyIHRvIGF2b2lkIDIuNSBtcyAqLworICAgY2hhciBkZWJ1Z19pbmZvWzUxMl07
CisKKyAgIGZvciAoaT0wOyBpPG51bV9lbmNvZGVyczsgaSsrKSB7CisgICAgICBpbnQgc2FtcGxp
bmdfcmF0ZSA9IFJBTkRfU0FNUExFKHNhbXBsaW5nX3JhdGVzKTsKKyAgICAgIGludCBudW1fY2hh
bm5lbHMgPSBSQU5EX1NBTVBMRShjaGFubmVscyk7CisgICAgICBpbnQgYXBwbGljYXRpb24gPSBS
QU5EX1NBTVBMRShhcHBsaWNhdGlvbnMpOworCisgICAgICBkZWMgPSBvcHVzX2RlY29kZXJfY3Jl
YXRlKHNhbXBsaW5nX3JhdGUsIG51bV9jaGFubmVscywgJmVycik7CisgICAgICBpZihlcnIhPU9Q
VVNfT0sgfHwgZGVjPT1OVUxMKXRlc3RfZmFpbGVkKCk7CisKKyAgICAgIGVuYyA9IG9wdXNfZW5j
b2Rlcl9jcmVhdGUoc2FtcGxpbmdfcmF0ZSwgbnVtX2NoYW5uZWxzLCBhcHBsaWNhdGlvbiwgJmVy
cik7CisgICAgICBpZihlcnIhPU9QVVNfT0sgfHwgZW5jPT1OVUxMKXRlc3RfZmFpbGVkKCk7CisK
KyAgICAgIGZvciAoaj0wOyBqPG51bV9zZXR0aW5nX2NoYW5nZXM7IGorKykgeworICAgICAgICAg
aW50IGJpdHJhdGUgPSBSQU5EX1NBTVBMRShiaXRyYXRlcyk7CisgICAgICAgICBpbnQgZm9yY2Vf
Y2hhbm5lbCA9IFJBTkRfU0FNUExFKGZvcmNlX2NoYW5uZWxzKTsKKyAgICAgICAgIGludCB2YnIg
PSBSQU5EX1NBTVBMRSh1c2VfdmJyKTsKKyAgICAgICAgIGludCB2YnJfY29uc3RyYWludCA9IFJB
TkRfU0FNUExFKHZicl9jb25zdHJhaW50cyk7CisgICAgICAgICBpbnQgY29tcGxleGl0eSA9IFJB
TkRfU0FNUExFKGNvbXBsZXhpdGllcyk7CisgICAgICAgICBpbnQgbWF4X2J3ID0gUkFORF9TQU1Q
TEUobWF4X2JhbmR3aWR0aHMpOworICAgICAgICAgaW50IHNpZyA9IFJBTkRfU0FNUExFKHNpZ25h
bHMpOworICAgICAgICAgaW50IGluYmFuZF9mZWMgPSBSQU5EX1NBTVBMRShpbmJhbmRfZmVjcyk7
CisgICAgICAgICBpbnQgcGt0X2xvc3MgPSBSQU5EX1NBTVBMRShwYWNrZXRfbG9zc19wZXJjKTsK
KyAgICAgICAgIGludCBsc2JfZGVwdGggPSBSQU5EX1NBTVBMRShsc2JfZGVwdGhzKTsKKyAgICAg
ICAgIGludCBwcmVkX2Rpc2FibGVkID0gUkFORF9TQU1QTEUocHJlZGljdGlvbl9kaXNhYmxlZCk7
CisgICAgICAgICBpbnQgZHR4ID0gUkFORF9TQU1QTEUodXNlX2R0eCk7CisgICAgICAgICBpbnQg
ZnJhbWVfc2l6ZV9tc194MiA9IFJBTkRfU0FNUExFKGZyYW1lX3NpemVzX21zX3gyKTsKKyAgICAg
ICAgIGludCBmcmFtZV9zaXplID0gZnJhbWVfc2l6ZV9tc194MipzYW1wbGluZ19yYXRlLzIwMDA7
CisgICAgICAgICBpbnQgZnJhbWVfc2l6ZV9lbnVtID0gZ2V0X2ZyYW1lX3NpemVfZW51bShmcmFt
ZV9zaXplLCBzYW1wbGluZ19yYXRlKTsKKyAgICAgICAgIGZvcmNlX2NoYW5uZWwgPSBJTUlOKGZv
cmNlX2NoYW5uZWwsIG51bV9jaGFubmVscyk7CisKKyAgICAgICAgIHNwcmludGYoZGVidWdfaW5m
bywKKyAgICAgICAgICAgICAgICAgImZ1enpfZW5jb2Rlcl9zZXR0aW5nczogJWQga0h6LCAlZCBj
aCwgYXBwbGljYXRpb246ICVkLCAiCisgICAgICAgICAgICAgICAgICIlZCBicHMsIGZvcmNlIGNo
OiAlZCwgdmJyOiAlZCwgdmJyIGNvbnN0cmFpbnQ6ICVkLCBjb21wbGV4aXR5OiAlZCwgIgorICAg
ICAgICAgICAgICAgICAibWF4IGJ3OiAlZCwgc2lnbmFsOiAlZCwgaW5iYW5kIGZlYzogJWQsIHBr
dCBsb3NzOiAlZCUlLCBsc2IgZGVwdGg6ICVkLCAiCisgICAgICAgICAgICAgICAgICJwcmVkIGRp
c2FibGVkOiAlZCwgZHR4OiAlZCwgKCVkLzIpIG1zXG4iLAorICAgICAgICAgICAgICAgICBzYW1w
bGluZ19yYXRlLzEwMDAsIG51bV9jaGFubmVscywgYXBwbGljYXRpb24sIGJpdHJhdGUsCisgICAg
ICAgICAgICAgICAgIGZvcmNlX2NoYW5uZWwsIHZiciwgdmJyX2NvbnN0cmFpbnQsIGNvbXBsZXhp
dHksIG1heF9idywgc2lnLCBpbmJhbmRfZmVjLAorICAgICAgICAgICAgICAgICBwa3RfbG9zcywg
bHNiX2RlcHRoLCBwcmVkX2Rpc2FibGVkLCBkdHgsIGZyYW1lX3NpemVfbXNfeDIpOworCisgICAg
ICAgICBpZihvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfQklUUkFURShiaXRyYXRlKSkg
IT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwo
ZW5jLCBPUFVTX1NFVF9GT1JDRV9DSEFOTkVMUyhmb3JjZV9jaGFubmVsKSkgIT0gT1BVU19PSykg
dGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NF
VF9WQlIodmJyKSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNf
ZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9WQlJfQ09OU1RSQUlOVCh2YnJfY29uc3RyYWludCkp
ICE9IE9QVVNfT0spIHRlc3RfZmFpbGVkKCk7CisgICAgICAgICBpZihvcHVzX2VuY29kZXJfY3Rs
KGVuYywgT1BVU19TRVRfQ09NUExFWElUWShjb21wbGV4aXR5KSkgIT0gT1BVU19PSykgdGVzdF9m
YWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9NQVhf
QkFORFdJRFRIKG1heF9idykpICE9IE9QVVNfT0spIHRlc3RfZmFpbGVkKCk7CisgICAgICAgICBp
ZihvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19TRVRfU0lHTkFMKHNpZykpICE9IE9QVVNfT0sp
IHRlc3RfZmFpbGVkKCk7CisgICAgICAgICBpZihvcHVzX2VuY29kZXJfY3RsKGVuYywgT1BVU19T
RVRfSU5CQU5EX0ZFQyhpbmJhbmRfZmVjKSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAg
ICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9QQUNLRVRfTE9TU19QRVJD
KHBrdF9sb3NzKSkgIT0gT1BVU19PSykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNf
ZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9MU0JfREVQVEgobHNiX2RlcHRoKSkgIT0gT1BVU19P
SykgdGVzdF9mYWlsZWQoKTsKKyAgICAgICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVT
X1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKHByZWRfZGlzYWJsZWQpKSAhPSBPUFVTX09LKSB0ZXN0
X2ZhaWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNvZGVyX2N0bChlbmMsIE9QVVNfU0VUX0RU
WChkdHgpKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworICAgICAgICAgaWYob3B1c19lbmNv
ZGVyX2N0bChlbmMsIE9QVVNfU0VUX0VYUEVSVF9GUkFNRV9EVVJBVElPTihmcmFtZV9zaXplX2Vu
dW0pKSAhPSBPUFVTX09LKSB0ZXN0X2ZhaWxlZCgpOworCisgICAgICAgICB0ZXN0X2VuY29kZShl
bmMsIG51bV9jaGFubmVscywgZnJhbWVfc2l6ZSwgZGVjLCBkZWJ1Z19pbmZvKTsKKyAgICAgIH0K
KworICAgICAgb3B1c19lbmNvZGVyX2Rlc3Ryb3koZW5jKTsKKyAgICAgIG9wdXNfZGVjb2Rlcl9k
ZXN0cm95KGRlYyk7CisgICB9Cit9CisKIGludCBydW5fdGVzdDEoaW50IG5vX2Z1enopCiB7CiAg
ICBzdGF0aWMgY29uc3QgaW50IGZzaXplc1s2XT17OTYwKjMsOTYwKjIsMTIwLDI0MCw0ODAsOTYw
fTsKICAgIHN0YXRpYyBjb25zdCBjaGFyICptc3RyaW5nc1szXSA9IHsiICAgIExQIiwiSHlicmlk
IiwiICBNRENUIn07CiAgICB1bnNpZ25lZCBjaGFyIG1hcHBpbmdbMjU2XSA9IHswLDEsMjU1fTsK
ICAgIHVuc2lnbmVkIGNoYXIgZGI2MlszNl07Ci0gICBvcHVzX2ludDMyIGk7Ci0gICBpbnQgcmMs
aixlcnI7CisgICBvcHVzX2ludDMyIGksajsKKyAgIGludCByYyxlcnI7CiAgICBPcHVzRW5jb2Rl
ciAqZW5jOwogICAgT3B1c01TRW5jb2RlciAqTVNlbmM7CiAgICBPcHVzRGVjb2RlciAqZGVjOwpA
QCAtMjI5LDYgKzM4NCw3IEBAIGludCBydW5fdGVzdDEoaW50IG5vX2Z1enopCiAKICAgIGlmKG9w
dXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9CQU5EV0lEVEgoT1BVU19BVVRPKSkhPU9QVVNf
T0spdGVzdF9mYWlsZWQoKTsKICAgIGlmKG9wdXNfZW5jb2Rlcl9jdGwoZW5jLCBPUFVTX1NFVF9G
T1JDRV9NT0RFKC0yKSkhPU9QVVNfQkFEX0FSRyl0ZXN0X2ZhaWxlZCgpOworICAgaWYob3B1c19l
bmNvZGUoZW5jLCBpbmJ1ZiwgNTAwLCBwYWNrZXQsIE1BWF9QQUNLRVQpIT1PUFVTX0JBRF9BUkcp
dGVzdF9mYWlsZWQoKTsKIAogICAgZm9yKHJjPTA7cmM8MztyYysrKQogICAgewpAQCAtMzM1LDcg
KzQ5MSw4IEBAIGludCBydW5fdGVzdDEoaW50IG5vX2Z1enopCiAgICAgICAgICBpZihvcHVzX211
bHRpc3RyZWFtX2VuY29kZXJfY3RsKE1TZW5jLCBPUFVTX1NFVF9CSVRSQVRFKHJhdGUpKSE9T1BV
U19PSyl0ZXN0X2ZhaWxlZCgpOwogICAgICAgICAgY291bnQ9aT0wOwogICAgICAgICAgZG8gewot
ICAgICAgICAgICAgaW50IHByZWQsbGVuLG91dF9zYW1wbGVzLGZyYW1lX3NpemUsbG9zczsKKyAg
ICAgICAgICAgIGludCBsZW4sb3V0X3NhbXBsZXMsZnJhbWVfc2l6ZSxsb3NzOworICAgICAgICAg
ICAgb3B1c19pbnQzMiBwcmVkOwogICAgICAgICAgICAgaWYob3B1c19tdWx0aXN0cmVhbV9lbmNv
ZGVyX2N0bChNU2VuYywgT1BVU19HRVRfUFJFRElDVElPTl9ESVNBQkxFRCgmcHJlZCkpIT1PUFVT
X09LKXRlc3RfZmFpbGVkKCk7CiAgICAgICAgICAgICBpZihvcHVzX211bHRpc3RyZWFtX2VuY29k
ZXJfY3RsKE1TZW5jLCBPUFVTX1NFVF9QUkVESUNUSU9OX0RJU0FCTEVEKChpbnQpKGZhc3RfcmFu
ZCgpJjE1KTwocHJlZD8xMTo0KSkpIT1PUFVTX09LKXRlc3RfZmFpbGVkKCk7CiAgICAgICAgICAg
ICBmcmFtZV9zaXplPWZyYW1lW2pdOwpAQCAtNDI1LDcgKzU4Miw3IEBAIGludCBydW5fdGVzdDEo
aW50IG5vX2Z1enopCiAgICAgICAgICB0aGUgZGVjb2RlcnMgaW4gb3JkZXIgdG8gY29tcGFyZSB0
aGVtLiAqLwogICAgICAgaWYob3B1c19wYWNrZXRfcGFyc2UocGFja2V0LGxlbiwmdG9jLGZyYW1l
cyxzaXplLCZwYXlsb2FkX29mZnNldCk8PTApdGVzdF9mYWlsZWQoKTsKICAgICAgIGlmKChmYXN0
X3JhbmQoKSYxMDIzKT09MClsZW49MDsKLSAgICAgIGZvcihqPShmcmFtZXNbMF0tcGFja2V0KTtq
PGxlbjtqKyspZm9yKGpqPTA7amo8ODtqaisrKXBhY2tldFtqXV49KCghbm9fZnV6eikmJigoZmFz
dF9yYW5kKCkmMTAyMyk9PTApKTw8amo7CisgICAgICBmb3Ioaj0ob3B1c19pbnQzMikoZnJhbWVz
WzBdLXBhY2tldCk7ajxsZW47aisrKWZvcihqaj0wO2pqPDg7amorKylwYWNrZXRbal1ePSgoIW5v
X2Z1enopJiYoKGZhc3RfcmFuZCgpJjEwMjMpPT0wKSk8PGpqOwogICAgICAgb3V0X3NhbXBsZXMg
PSBvcHVzX2RlY29kZShkZWNfZXJyWzBdLCBsZW4+MD9wYWNrZXQ6TlVMTCwgbGVuLCBvdXQyYnVm
LCBNQVhfRlJBTUVfU0FNUCwgMCk7CiAgICAgICBpZihvdXRfc2FtcGxlczwwfHxvdXRfc2FtcGxl
cz5NQVhfRlJBTUVfU0FNUCl0ZXN0X2ZhaWxlZCgpOwogICAgICAgaWYoKGxlbj4wJiZvdXRfc2Ft
cGxlcyE9ZnJhbWVfc2l6ZSkpdGVzdF9mYWlsZWQoKTsgLypGSVhNRSB1c2UgbGFzdGZyYW1lKi8K
QEAgLTQ3MCwzOSArNjI3LDc0IEBAIGludCBydW5fdGVzdDEoaW50IG5vX2Z1enopCiAgICByZXR1
cm4gMDsKIH0KIAordm9pZCBwcmludF91c2FnZShjaGFyKiBfYXJndltdKQoreworICAgZnByaW50
ZihzdGRlcnIsIlVzYWdlOiAlcyBbPHNlZWQ+XSBbLWZ1enogPG51bV9lbmNvZGVycz4gPG51bV9z
ZXR0aW5nc19wZXJfZW5jb2Rlcj5dXG4iLF9hcmd2WzBdKTsKK30KKwogaW50IG1haW4oaW50IF9h
cmdjLCBjaGFyICoqX2FyZ3YpCiB7CisgICBpbnQgYXJncz0xOworICAgY2hhciAqIHN0cnRvbF9z
dHI9TlVMTDsKICAgIGNvbnN0IGNoYXIgKiBvdmVyc2lvbjsKICAgIGNvbnN0IGNoYXIgKiBlbnZf
c2VlZDsKICAgIGludCBlbnZfdXNlZDsKLQotICAgaWYoX2FyZ2M+MikKLSAgIHsKLSAgICAgIGZw
cmludGYoc3RkZXJyLCJVc2FnZTogJXMgWzxzZWVkPl1cbiIsX2FyZ3ZbMF0pOwotICAgICAgcmV0
dXJuIDE7Ci0gICB9CisgICBpbnQgbnVtX2VuY29kZXJzX3RvX2Z1eno9NTsKKyAgIGludCBudW1f
c2V0dGluZ19jaGFuZ2VzPTQwOwogCiAgICBlbnZfdXNlZD0wOwogICAgZW52X3NlZWQ9Z2V0ZW52
KCJTRUVEIik7Ci0gICBpZihfYXJnYz4xKWlzZWVkPWF0b2koX2FyZ3ZbMV0pOwotICAgZWxzZSBp
ZihlbnZfc2VlZCkKLSAgIHsKKyAgIGlmKF9hcmdjPjEpCisgICAgICBpc2VlZD1zdHJ0b2woX2Fy
Z3ZbMV0sICZzdHJ0b2xfc3RyLCAxMCk7ICAvKiB0aGUgZmlyc3QgaW5wdXQgYXJndW1lbnQgbWln
aHQgYmUgdGhlIHNlZWQgKi8KKyAgIGlmKHN0cnRvbF9zdHIhPU5VTEwgJiYgc3RydG9sX3N0clsw
XT09J1wwJykgICAvKiBpc2VlZCBpcyBhIHZhbGlkIG51bWJlciAqLworICAgICAgYXJncysrOwor
ICAgZWxzZSBpZihlbnZfc2VlZCkgewogICAgICAgaXNlZWQ9YXRvaShlbnZfc2VlZCk7CiAgICAg
ICBlbnZfdXNlZD0xOwogICAgfQotICAgZWxzZSBpc2VlZD0ob3B1c191aW50MzIpdGltZShOVUxM
KV4oKGdldHBpZCgpJjY1NTM1KTw8MTYpOworICAgZWxzZSBpc2VlZD0ob3B1c191aW50MzIpdGlt
ZShOVUxMKV4oKChvcHVzX3VpbnQzMilnZXRwaWQoKSY2NTUzNSk8PDE2KTsKICAgIFJ3PVJ6PWlz
ZWVkOwogCisgICB3aGlsZShhcmdzPF9hcmdjKQorICAgeworICAgICAgaWYoc3RyY21wKF9hcmd2
W2FyZ3NdLCAiLWZ1enoiKT09MCAmJiBfYXJnYz09KGFyZ3MrMykpIHsKKyAgICAgICAgIG51bV9l
bmNvZGVyc190b19mdXp6PXN0cnRvbChfYXJndlthcmdzKzFdLCAmc3RydG9sX3N0ciwgMTApOwor
ICAgICAgICAgaWYoc3RydG9sX3N0clswXSE9J1wwJyB8fCBudW1fZW5jb2RlcnNfdG9fZnV6ejw9
MCkgeworICAgICAgICAgICAgcHJpbnRfdXNhZ2UoX2FyZ3YpOworICAgICAgICAgICAgcmV0dXJu
IEVYSVRfRkFJTFVSRTsKKyAgICAgICAgIH0KKyAgICAgICAgIG51bV9zZXR0aW5nX2NoYW5nZXM9
c3RydG9sKF9hcmd2W2FyZ3MrMl0sICZzdHJ0b2xfc3RyLCAxMCk7CisgICAgICAgICBpZihzdHJ0
b2xfc3RyWzBdIT0nXDAnIHx8IG51bV9zZXR0aW5nX2NoYW5nZXM8PTApIHsKKyAgICAgICAgICAg
IHByaW50X3VzYWdlKF9hcmd2KTsKKyAgICAgICAgICAgIHJldHVybiBFWElUX0ZBSUxVUkU7Cisg
ICAgICAgICB9CisgICAgICAgICBhcmdzKz0zOworICAgICAgfQorICAgICAgZWxzZSB7CisgICAg
ICAgIHByaW50X3VzYWdlKF9hcmd2KTsKKyAgICAgICAgcmV0dXJuIEVYSVRfRkFJTFVSRTsKKyAg
ICAgIH0KKyAgIH0KKwogICAgb3ZlcnNpb249b3B1c19nZXRfdmVyc2lvbl9zdHJpbmcoKTsKICAg
IGlmKCFvdmVyc2lvbil0ZXN0X2ZhaWxlZCgpOwogICAgZnByaW50ZihzdGRlcnIsIlRlc3Rpbmcg
JXMgZW5jb2Rlci4gUmFuZG9tIHNlZWQ6ICV1ICglLjRYKVxuIiwgb3ZlcnNpb24sIGlzZWVkLCBm
YXN0X3JhbmQoKSAlIDY1NTM1KTsKICAgIGlmKGVudl91c2VkKWZwcmludGYoc3RkZXJyLCIgIFJh
bmRvbSBzZWVkIHNldCBmcm9tIHRoZSBlbnZpcm9ubWVudCAoU0VFRD0lcykuXG4iLCBlbnZfc2Vl
ZCk7CiAKKyAgIHJlZ3Jlc3Npb25fdGVzdCgpOworCiAgICAvKlNldHRpbmcgVEVTVF9PUFVTX05P
RlVaWiB0ZWxscyB0aGUgdG9vbCBub3QgdG8gc2VuZCBnYXJiYWdlIGRhdGEKICAgICAgaW50byB0
aGUgZGVjb2RlcnMuIFRoaXMgaXMgaGVscGZ1bCBiZWNhdXNlIGdhcmJhZ2UgZGF0YQogICAgICBt
YXkgY2F1c2UgdGhlIGRlY29kZXJzIHRvIGNsaXAsIHdoaWNoIGFuZ2VycyBDTEFORyBJT0MuKi8K
ICAgIHJ1bl90ZXN0MShnZXRlbnYoIlRFU1RfT1BVU19OT0ZVWloiKSE9TlVMTCk7CiAKKyAgIC8q
IEZ1enogZW5jb2RlciBzZXR0aW5ncyBvbmxpbmUgKi8KKyAgIGlmKGdldGVudigiVEVTVF9PUFVT
X05PRlVaWiIpPT1OVUxMKSB7CisgICAgICBmcHJpbnRmKHN0ZGVyciwiUnVubmluZyBmdXp6X2Vu
Y29kZXJfc2V0dGluZ3Mgd2l0aCAlZCBlbmNvZGVyKHMpIGFuZCAlZCBzZXR0aW5nIGNoYW5nZShz
KSBlYWNoLlxuIiwKKyAgICAgICAgICAgICAgbnVtX2VuY29kZXJzX3RvX2Z1enosIG51bV9zZXR0
aW5nX2NoYW5nZXMpOworICAgICAgZnV6el9lbmNvZGVyX3NldHRpbmdzKG51bV9lbmNvZGVyc190
b19mdXp6LCBudW1fc2V0dGluZ19jaGFuZ2VzKTsKKyAgIH0KKwogICAgZnByaW50ZihzdGRlcnIs
IlRlc3RzIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkuXG4iKTsKIAogICAgcmV0dXJuIDA7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29w
dXMvc3JjL3VwZGF0ZV92ZXJzaW9uIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy91cGRhdGVfdmVyc2lvbgpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hOTk5OTkx
OGQwZjdlM2NkNTJlYjFjMmNkYmM3MGMxZDg1Y2NiMjI2Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy91cGRh
dGVfdmVyc2lvbgpAQCAtMCwwICsxLDY1IEBACisjIS9iaW4vYmFzaAorCisjIENyZWF0ZXMgYW5k
IHVwZGF0ZXMgdGhlIHBhY2thZ2VfdmVyc2lvbiBpbmZvcm1hdGlvbiB1c2VkIGJ5IGNvbmZpZ3Vy
ZS5hYworIyAob3Igb3RoZXIgbWFrZWZpbGVzKS4gIFdoZW4gcnVuIGluc2lkZSBhIGdpdCByZXBv
c2l0b3J5IGl0IHdpbGwgdXNlIHRoZQorIyB2ZXJzaW9uIGluZm9ybWF0aW9uIHRoYXQgY2FuIGJl
IHF1ZXJpZWQgZnJvbSBpdCB1bmxlc3MgQVVUT19VUERBVEUgaXMgc2V0CisjIHRvICdubycuICBJ
ZiBubyB2ZXJzaW9uIGlzIGN1cnJlbnRseSBrbm93biBpdCB3aWxsIGJlIHNldCB0byAndW5rbm93
bicuCisjCisjIElmIGNhbGxlZCB3aXRoIHRoZSBhcmd1bWVudCAncmVsZWFzZScsIHRoZSBQQUNL
QUdFX1ZFUlNJT04gd2lsbCBiZSB1cGRhdGVkCisjIGV2ZW4gaWYgQVVUT19VUERBVEU9bm8sIGJ1
dCB0aGUgdmFsdWUgb2YgQVVUT19VUERBVEUgc2hhbGwgYmUgcHJlc2VydmVkLgorIyBUaGlzIGlz
IHVzZWQgdG8gZm9yY2UgYSB2ZXJzaW9uIHVwZGF0ZSB3aGVuZXZlciBgbWFrZSBkaXN0YCBpcyBy
dW4uCisjCisjIFRoZSBleGl0IHN0YXR1cyBpcyAxIGlmIHBhY2thZ2VfdmVyc2lvbiBpcyBub3Qg
bW9kaWZpZWQsIGVsc2UgMCBpcyByZXR1cm5lZC4KKyMKKyMgVGhpcyBzY3JpcHQgc2hvdWxkIE5P
VCBiZSBpbmNsdWRlZCBpbiBkaXN0cmlidXRlZCB0YXJiYWxscywgYmVjYXVzZSBpZiBhCisjIHBh
cmVudCBkaXJlY3RvcnkgY29udGFpbnMgYSBnaXQgcmVwb3NpdG9yeSB3ZSBkbyBub3Qgd2FudCB0
byBhY2NpZGVudGFsbHkKKyMgcmV0cmlldmUgdGhlIHZlcnNpb24gaW5mb3JtYXRpb24gZnJvbSBp
dCBpbnN0ZWFkLiAgVGFyYmFsbHMgc2hvdWxkIHNoaXAKKyMgd2l0aCBvbmx5IHRoZSBwYWNrYWdl
X3ZlcnNpb24gZmlsZS4KKyMKKyMgUm9uIDxyb25AZGViaWFuLm9yZz4sIDIwMTIuCisKK1NSQ0RJ
Uj0kKGRpcm5hbWUgJDApCisKK2lmIFsgLWUgIiRTUkNESVIvcGFja2FnZV92ZXJzaW9uIiBdOyB0
aGVuCisgICAgLiAiJFNSQ0RJUi9wYWNrYWdlX3ZlcnNpb24iCitmaQorCitpZiBbICIkQVVUT19V
UERBVEUiID0gbm8gXTsgdGhlbgorICAgIFsgIiQxIiA9IHJlbGVhc2UgXSB8fCBleGl0IDEKK2Vs
c2UKKyAgICBBVVRPX1VQREFURT15ZXMKK2ZpCisKKyMgV2UgcnVuIGBnaXQgc3RhdHVzYCBiZWZv
cmUgZGVzY3JpYmUgaGVyZSB0byBlbnN1cmUgdGhhdCB3ZSBkb24ndCBnZXQgYSBmYWxzZQorIyAt
ZGlydHkgZnJvbSBmaWxlcyB0aGF0IGhhdmUgYmVlbiB0b3VjaGVkIGJ1dCBhcmUgbm90IGFjdHVh
bGx5IGFsdGVyZWQgaW4gdGhlCisjIHdvcmtpbmcgZGlyLgorR0lUX1ZFUlNJT049JChjZCAiJFNS
Q0RJUiIgJiYgZ2l0IHN0YXR1cyA+IC9kZXYvbnVsbCAyPiYxIFwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICYmIGdpdCBkZXNjcmliZSAtLXRhZ3MgLS1tYXRjaCAndionIC0tZGlydHkgMj4g
L2Rldi9udWxsKQorR0lUX1ZFUlNJT049JHtHSVRfVkVSU0lPTiN2fQorCitpZiBbIC1uICIkR0lU
X1ZFUlNJT04iIF07IHRoZW4KKworICAgIFsgIiRHSVRfVkVSU0lPTiIgIT0gIiRQQUNLQUdFX1ZF
UlNJT04iIF0gfHwgZXhpdCAxCisgICAgUEFDS0FHRV9WRVJTSU9OPSIkR0lUX1ZFUlNJT04iCisK
K2VsaWYgWyAteiAiJFBBQ0tBR0VfVkVSU0lPTiIgXTsgdGhlbgorICAgICMgTm8gY3VycmVudCBw
YWNrYWdlX3ZlcnNpb24gYW5kIG5vIGdpdCAuLi4KKyAgICAjIFdlIHJlYWxseSBzaG91bGRuJ3Qg
ZXZlciBnZXQgaGVyZSwgYmVjYXVzZSB0aGlzIHNjcmlwdCBzaG91bGQgb25seSBiZQorICAgICMg
aW5jbHVkZWQgaW4gdGhlIGdpdCByZXBvc2l0b3J5LCBhbmQgc2hvdWxkIHVzdWFsbHkgYmUgZXhw
b3J0LWlnbm9yZWQuCisgICAgUEFDS0FHRV9WRVJTSU9OPSJ1bmtub3duIgorZWxzZQorICAgIGV4
aXQgMQorZmkKKworY2F0ID4gIiRTUkNESVIvcGFja2FnZV92ZXJzaW9uIiA8PC1FT0YKKwkjIEF1
dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IHVwZGF0ZV92ZXJzaW9uLgorCSMgVGhpcyBmaWxlIG1h
eSBiZSBzb3VyY2VkIGludG8gYSBzaGVsbCBzY3JpcHQgb3IgbWFrZWZpbGUuCisKKwkjIFNldCB0
aGlzIHRvICdubycgaWYgeW91IGRvIG5vdCB3aXNoIHRoZSB2ZXJzaW9uIGluZm9ybWF0aW9uCisJ
IyB0byBiZSBjaGVja2VkIGFuZCB1cGRhdGVkIGZvciBldmVyeSBidWlsZC4gIE1vc3QgcGVvcGxl
IHdpbGwKKwkjIG5ldmVyIHdhbnQgdG8gY2hhbmdlIHRoaXMsIGl0IGlzIGFuIG9wdGlvbiBmb3Ig
ZGV2ZWxvcGVycworCSMgbWFraW5nIGZyZXF1ZW50IGNoYW5nZXMgdGhhdCB0aGV5IGtub3cgd2ls
bCBub3QgYmUgcmVsZWFzZWQuCisJQVVUT19VUERBVEU9JEFVVE9fVVBEQVRFCisKKwlQQUNLQUdF
X1ZFUlNJT049IiRQQUNLQUdFX1ZFUlNJT04iCitFT0YKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1cy9zcmMvd2luMzIvLmdpdGln
bm9yZSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvb3B1
cy9zcmMvd2luMzIvLmdpdGlnbm9yZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMTdmZWFiNzNkMzQ5MmNlODY2MmVl
Njk1NDZkZWMwZDllZWJiZDdkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy93aW4zMi8uZ2l0aWdub3JlCkBA
IC0wLDAgKzEsMjYgQEAKKyMgVmlzdWFsIFN0dWRpbyBpZ25vcmVzCitbRGRdZWJ1Zy8KK1tEZF1l
YnVnRExMLworW0RkXWVidWdETExfZml4ZWQvCitbRGRdZWJ1Z1B1YmxpYy8KK1tScl1lbGVhc2Uv
CitbUnJdZWxlYXNlRExMLworW1JyXWVsZWFzZURMTF9maXhlZC8KK1tScl1lbGVhc2VzLworKi5t
YW5pZmVzdAorKi5sYXN0YnVpbGRzdGF0ZQorKi5saWIKKyoubG9nCisqLmlkYgorKi5pcGRiCisq
LmlsaworKi5pb2JqCisqLm9iagorKi5vcGVuc2RmCisqLnBkYgorKi5zZGYKKyouc3VvCisqLnRs
b2cKKyoudmN4cHJvai51c2VyCisqLnZjLmRiCisqLnZjLm9wZW5kYgpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy93aW4z
Mi9nZW52ZXJzaW9uLmJhdCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvb3B1cy9zcmMvd2luMzIvZ2VudmVyc2lvbi5iYXQKaW5kZXggY2QxZDRkY2U2ZWQ4
ZjU0ODZlZTMxYTNmNWExNGRhYjhiYzAzOGUwYy4uMWRlZjc0NjBiNWUwMmZhMTg5OThhNTdlMGUw
ZWZjNWFiMzEzNGVkNSAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9vcHVzL3NyYy93aW4zMi9nZW52ZXJzaW9uLmJhdAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L29wdXMvc3JjL3dpbjMy
L2dlbnZlcnNpb24uYmF0CkBAIC0yLDEzICsyLDEzIEBACiAKIHNldGxvY2FsIGVuYWJsZWV4dGVu
c2lvbnMgZW5hYmxlZGVsYXllZGV4cGFuc2lvbgogCi1mb3IgL2YgJSV2IGluICgnZ2l0IC0tZ2l0
LWRpcj0iJX5kcDAuLlwuZ2l0IiBkZXNjcmliZSAtLXRhZ3MgLS1tYXRjaCAidioiJykgZG8gc2V0
IHZlcnNpb249JSV2Citmb3IgL2YgJSV2IGluICgnY2QgIiV+ZHAwLi4iIF4mXiYgZ2l0IHN0YXR1
cyBePk5VTCAyXj5OVUwgXiZeJiBnaXQgZGVzY3JpYmUgLS10YWdzIC0tbWF0Y2ggInYqIiAtLWRp
cnR5IDJePk5VTCcpIGRvIHNldCB2ZXJzaW9uPSUldgogCi1pZiBub3QgIiV2ZXJzaW9uJSI9PSIi
IGdvdG8gOmdvdHZlcnNpb24KK2lmIG5vdCAiJXZlcnNpb24lIj09IiIgc2V0IHZlcnNpb249IXZl
cnNpb246fjEhICYmIGdvdG8gOmdvdHZlcnNpb24KIAotaWYgZXhpc3QgIiV+ZHAwLi5cdmVyc2lv
bi5tayIgZ290byA6Z2V0dmVyc2lvbgoraWYgZXhpc3QgIiV+ZHAwLi5ccGFja2FnZV92ZXJzaW9u
IiBnb3RvIDpnZXR2ZXJzaW9uCiAKLWVjaG8gR2l0IGNhbm5vdCBiZSBmb3VuZCwgbm9yIGNhbiB2
ZXJzaW9uLm1rLiBHZW5lcmF0aW5nIHVua25vd24gdmVyc2lvbi4KK2VjaG8gR2l0IGNhbm5vdCBi
ZSBmb3VuZCwgbm9yIGNhbiBwYWNrYWdlX3ZlcnNpb24uIEdlbmVyYXRpbmcgdW5rbm93biB2ZXJz
aW9uLgogCiBzZXQgdmVyc2lvbj11bmtub3duCiAKQEAgLTE2LDI1ICsxNiwxNiBAQCBnb3RvIDpn
b3R2ZXJzaW9uCiAKIDpnZXR2ZXJzaW9uCiAKLWZvciAvZiAiZGVsaW1zPT0gdG9rZW5zPTIiICUl
diBpbiAoJX5kcHMwLi5cdmVyc2lvbi5taykgZG8gc2V0IHZlcnNpb249JSV2Ci0KLXNldCB2ZXJz
aW9uPSF2ZXJzaW9uOl4iPSEKLXNldCB2ZXJzaW9uPSF2ZXJzaW9uOiA9IQorZm9yIC9mICJkZWxp
bXM9PSB0b2tlbnM9MiIgJSV2IGluICglfmRwczAuLlxwYWNrYWdlX3ZlcnNpb24pIGRvIHNldCB2
ZXJzaW9uPSUldgorc2V0IHZlcnNpb249IXZlcnNpb246Ij0hCiAKIDpnb3R2ZXJzaW9uCiAKK3Nl
dCB2ZXJzaW9uPSF2ZXJzaW9uOiA9IQogc2V0IHZlcnNpb25fb3V0PSNkZWZpbmUgJX4yICIldmVy
c2lvbiUiCi1zZXQgdmVyc2lvbl9taz0lfjIgPSAiJXZlcnNpb24lIgogCiBlY2hvICV2ZXJzaW9u
X291dCU+ICIlfjFfdGVtcCIKIAotaWYgJXZlcnNpb24lPT11bmtub3duIGdvdG8gOnNraXBnZW5l
cmF0ZQotCi1lY2hvICMgc3RhdGljIHZlcnNpb24gc3RyaW5nOyB1cGRhdGUgbWFudWFsbHkgZXZl
cnkgcmVsZWFzZS4+ICIlfmRwMC4uXHZlcnNpb24ubWsiCi1lY2hvICV2ZXJzaW9uX21rJT4+ICIl
fmRwMC4uXHZlcnNpb24ubWsiCi0KLTpza2lwZ2VuZXJhdGUKLQogZWNobyBuIHwgY29tcCAiJX4x
X3RlbXAiICIlfjEiID4gTlVMIDI+IE5VTAogCiBpZiBub3QgZXJyb3JsZXZlbCAxIGdvdG8gZXhp
dApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndlYnJ0Yy54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndl
YnJ0Yy54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGU5NTU5ZmI3ZWQ5OWMzNGIzYzI0
MmJlMDM5NmQ1YzVlN2E1MTRhYWEuLmM4ZWY0ZjFjMTg1ZDRiOGVkNTA0ZjMxZGE1NzYwOWZjNTgx
MDUyMWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9saWJ3ZWJydGMu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvbGlid2VicnRjLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTUzNCw2ICs1MzQsOCBA
QAogCQk0MTRENzExNDFFNEFFOThDMDAyM0U1MjYgLyogdXNlcl9zb2NrZXQuYyBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNEQ3MTEyMUU0QUU5ODIwMDIz
RTUyNiAvKiB1c2VyX3NvY2tldC5jICovOyB9OwogCQk0MTRENzExNzFFNEFFQUZCMDAyM0U1MjYg
Lyogc2N0cF9pbmRhdGEuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQxNEQ3MTE1MUU0QUVBQ0QwMDIzRTUyNiAvKiBzY3RwX2luZGF0YS5jICovOyB9Owog
CQk0MTRENzExOTFFNEFFQjExMDAyM0U1MjYgLyogc2N0cF91c2Vyc3BhY2UuYyBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNEQ3MTE4MUU0QUVCMTEwMDIz
RTUyNiAvKiBzY3RwX3VzZXJzcGFjZS5jICovOyB9OworCQk0MTUzQ0QyNzIxQ0M2NjEwMDBDM0Ux
ODggLyogTFBDX2ZpdC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDEwMENERTUyMUNBQ0ZEMDAwRjlCODdEIC8qIExQQ19maXQuYyAqLzsgfTsKKwkJNDE1
M0NEMjgyMUNDNjY0ODAwQzNFMTg4IC8qIHZxX3NzZTIuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMDBDREVEMjFDQUQxRjUwMEY5Qjg3RCAvKiB2cV9z
c2UyLmMgKi87IH07CiAJCTQxNUYxRkE2MjEyNzJGQkEwMDA2NENCRiAvKiBhZGFwdGl2ZV9kaWdp
dGFsX2dhaW5fYXBwbGllci5jYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDQxQTA4QkU0MjEyNzJGODUwMDFENUQ3QiAvKiBhZGFwdGl2ZV9kaWdpdGFsX2dh
aW5fYXBwbGllci5jYyAqLzsgfTsKIAkJNDE1RjFGQTcyMTI3MkZCQTAwMDY0Q0JGIC8qIGFkYXB0
aXZlX2RpZ2l0YWxfZ2Fpbl9hcHBsaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0MUEwOEJEQjIxMjcyRjg0MDAxRDVEN0IgLyogYWRhcHRpdmVfZGln
aXRhbF9nYWluX2FwcGxpZXIuaCAqLzsgfTsKIAkJNDE1RjFGQTgyMTI3MkZCQTAwMDY0Q0JGIC8q
IGFkYXB0aXZlX21vZGVfbGV2ZWxfZXN0aW1hdG9yX2FnYy5jYyBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxQTA4QkU5MjEyNzJGODYwMDFENUQ3QiAvKiBh
ZGFwdGl2ZV9tb2RlX2xldmVsX2VzdGltYXRvcl9hZ2MuY2MgKi87IH07CkBAIC0zMjQ2LDcgKzMy
NDgsNiBAQAogCQk1Q0REOEVFQTFFNDNDOUY2MDA2MjFFOTIgLyogZmluZF9wcmVkX2NvZWZzX0ZM
UC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhF
QTYxRTQzQzlDMTAwNjIxRTkyIC8qIGZpbmRfcHJlZF9jb2Vmc19GTFAuYyAqLzsgfTsKIAkJNUNE
RDhFRUIxRTQzQzlGNjAwNjIxRTkyIC8qIGlubmVyX3Byb2R1Y3RfRkxQLmMgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVBNzFFNDNDOUMxMDA2MjFF
OTIgLyogaW5uZXJfcHJvZHVjdF9GTFAuYyAqLzsgfTsKIAkJNUNERDhFRUMxRTQzQzlGNjAwNjIx
RTkyIC8qIGsyYV9GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDVDREQ4RUE4MUU0M0M5QzEwMDYyMUU5MiAvKiBrMmFfRkxQLmMgKi87IH07Ci0JCTVD
REQ4RUVEMUU0M0M5RjYwMDYyMUU5MiAvKiBsZXZpbnNvbmR1cmJpbl9GTFAuYyBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUE5MUU0M0M5QzEwMDYy
MUU5MiAvKiBsZXZpbnNvbmR1cmJpbl9GTFAuYyAqLzsgfTsKIAkJNUNERDhFRUUxRTQzQzlGNjAw
NjIxRTkyIC8qIExQQ19hbmFseXNpc19maWx0ZXJfRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVBQTFFNDNDOUMxMDA2MjFFOTIgLyogTFBD
X2FuYWx5c2lzX2ZpbHRlcl9GTFAuYyAqLzsgfTsKIAkJNUNERDhFRUYxRTQzQzlGNjAwNjIxRTky
IC8qIExQQ19pbnZfcHJlZF9nYWluX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQUIxRTQzQzlDMTAwNjIxRTkyIC8qIExQQ19pbnZfcHJl
ZF9nYWluX0ZMUC5jICovOyB9OwogCQk1Q0REOEVGMDFFNDNDOUY2MDA2MjFFOTIgLyogTFRQX2Fu
YWx5c2lzX2ZpbHRlcl9GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDVDREQ4RUFDMUU0M0M5QzEwMDYyMUU5MiAvKiBMVFBfYW5hbHlzaXNfZmlsdGVy
X0ZMUC5jICovOyB9OwpAQCAtMzI1NCw3ICszMjU1LDYgQEAKIAkJNUNERDhFRjIxRTQzQzlGNjAw
NjIxRTkyIC8qIG1haW5fRkxQLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1Q0REOEVBRTFFNDNDOUMxMDA2MjFFOTIgLyogbWFpbl9GTFAuaCAqLzsgfTsK
IAkJNUNERDhFRjMxRTQzQzlGNjAwNjIxRTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5j
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQUYx
RTQzQzlDMTAwNjIxRTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jICovOyB9OwogCQk1
Q0REOEVGNDFFNDNDOUY2MDA2MjFFOTIgLyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYyBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUIwMUU0M0M5
QzEwMDYyMUU5MiAvKiBwaXRjaF9hbmFseXNpc19jb3JlX0ZMUC5jICovOyB9OwotCQk1Q0REOEVG
NTFFNDNDOUY2MDA2MjFFOTIgLyogcHJlZmlsdGVyX0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQjExRTQzQzlDMTAwNjIxRTkyIC8qIHBy
ZWZpbHRlcl9GTFAuYyAqLzsgfTsKIAkJNUNERDhFRjYxRTQzQzlGNjAwNjIxRTkyIC8qIHByb2Nl
c3NfZ2FpbnNfRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1Q0REOEVCMjFFNDNDOUMxMDA2MjFFOTIgLyogcHJvY2Vzc19nYWluc19GTFAuYyAqLzsg
fTsKIAkJNUNERDhFRjcxRTQzQzlGNjAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29ycmVsYXRpb25z
X0ZMUC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNE
RDhFQjMxRTQzQzlDMTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZMUC5jICov
OyB9OwogCQk1Q0REOEVGODFFNDNDOUY2MDA2MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5X0ZMUC5j
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhFQjQx
RTQzQzlDMTAwNjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJneV9GTFAuYyAqLzsgfTsKQEAgLTMyNjIs
NyArMzI2Miw2IEBACiAJCTVDREQ4RUZBMUU0M0M5RjYwMDYyMUU5MiAvKiBzY2FsZV92ZWN0b3Jf
RkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0RE
OEVCNjFFNDNDOUMxMDA2MjFFOTIgLyogc2NhbGVfdmVjdG9yX0ZMUC5jICovOyB9OwogCQk1Q0RE
OEVGQjFFNDNDOUY2MDA2MjFFOTIgLyogc2NodXJfRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVCNzFFNDNDOUMxMDA2MjFFOTIgLyogc2No
dXJfRkxQLmMgKi87IH07CiAJCTVDREQ4RUZDMUU0M0M5RjYwMDYyMUU5MiAvKiBTaWdQcm9jX0ZM
UC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhF
QjgxRTQzQzlDMTAwNjIxRTkyIC8qIFNpZ1Byb2NfRkxQLmggKi87IH07Ci0JCTVDREQ4RUZEMUU0
M0M5RjYwMDYyMUU5MiAvKiBzb2x2ZV9MU19GTFAuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RUI5MUU0M0M5QzEwMDYyMUU5MiAvKiBzb2x2ZV9M
U19GTFAuYyAqLzsgfTsKIAkJNUNERDhFRkUxRTQzQzlGNjAwNjIxRTkyIC8qIHNvcnRfRkxQLmMg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEVCQTFF
NDNDOUMxMDA2MjFFOTIgLyogc29ydF9GTFAuYyAqLzsgfTsKIAkJNUNERDhFRkYxRTQzQzlGNjAw
NjIxRTkyIC8qIHN0cnVjdHNfRkxQLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1Q0REOEVCQjFFNDNDOUMxMDA2MjFFOTIgLyogc3RydWN0c19GTFAuaCAq
LzsgfTsKIAkJNUNERDhGMDAxRTQzQzlGNjAwNjIxRTkyIC8qIHdhcnBlZF9hdXRvY29ycmVsYXRp
b25fRkxQLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
Q0REOEVCQzFFNDNDOUMxMDA2MjFFOTIgLyogd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GTFAuYyAq
LzsgfTsKQEAgLTMyODMsMTQgKzMyODIsMTIgQEAKIAkJNUNERDhGNDcxRTQzQ0IxRTAwNjIxRTky
IC8qIG1haW5fRklYLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1Q0REOEYxMDFFNDNDQUY5MDA2MjFFOTIgLyogbWFpbl9GSVguaCAqLzsgfTsKIAkJNUNE
RDhGNDgxRTQzQ0IxRTAwNjIxRTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWC5jIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMTIxRTQzQ0FG
OTAwNjIxRTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWC5jICovOyB9OwogCQk1Q0REOEY0
OTFFNDNDQjFFMDA2MjFFOTIgLyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYyBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4RjEzMUU0M0NBRjkwMDYy
MUU5MiAvKiBwaXRjaF9hbmFseXNpc19jb3JlX0ZJWC5jICovOyB9OwotCQk1Q0REOEY0QTFFNDND
QjFFMDA2MjFFOTIgLyogcHJlZmlsdGVyX0ZJWC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMTQxRTQzQ0FGOTAwNjIxRTkyIC8qIHByZWZpbHRl
cl9GSVguYyAqLzsgfTsKIAkJNUNERDhGNEIxRTQzQ0IxRTAwNjIxRTkyIC8qIHByb2Nlc3NfZ2Fp
bnNfRklYLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
Q0REOEYxNTFFNDNDQUY5MDA2MjFFOTIgLyogcHJvY2Vzc19nYWluc19GSVguYyAqLzsgfTsKIAkJ
NUNERDhGNEMxRTQzQ0IxRTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZJWC5j
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMTYx
RTQzQ0FGOTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZJWC5jICovOyB9Owog
CQk1Q0REOEY0RDFFNDNDQjFFMDA2MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5X0ZJWC5jIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMTcxRTQzQ0FG
OTAwNjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJneV9GSVguYyAqLzsgfTsKIAkJNUNERDhGNEUxRTQz
Q0IxRTAwNjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJneTE2X0ZJWC5jIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMTgxRTQzQ0FGOTAwNjIxRTkyIC8q
IHJlc2lkdWFsX2VuZXJneTE2X0ZJWC5jICovOyB9OwogCQk1Q0REOEY0RjFFNDNDQjFFMDA2MjFF
OTIgLyogc2NodXJfRklYLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1Q0REOEYxOTFFNDNDQUY5MDA2MjFFOTIgLyogc2NodXJfRklYLmMgKi87IH07CiAJ
CTVDREQ4RjUwMUU0M0NCMUUwMDYyMUU5MiAvKiBzY2h1cjY0X0ZJWC5jIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDhGMUExRTQzQ0FGOTAwNjIxRTky
IC8qIHNjaHVyNjRfRklYLmMgKi87IH07Ci0JCTVDREQ4RjUxMUU0M0NCMUUwMDYyMUU5MiAvKiBz
b2x2ZV9MU19GSVguYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDVDREQ4RjFCMUU0M0NBRjkwMDYyMUU5MiAvKiBzb2x2ZV9MU19GSVguYyAqLzsgfTsKIAkJ
NUNERDhGNTIxRTQzQ0IxRTAwNjIxRTkyIC8qIHN0cnVjdHNfRklYLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYxQzFFNDNDQUY5MDA2MjFFOTIg
Lyogc3RydWN0c19GSVguaCAqLzsgfTsKIAkJNUNERDhGNTMxRTQzQ0IxRTAwNjIxRTkyIC8qIHZl
Y3Rvcl9vcHNfRklYLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1Q0REOEYxRDFFNDNDQUY5MDA2MjFFOTIgLyogdmVjdG9yX29wc19GSVguYyAqLzsgfTsK
IAkJNUNERDhGNTQxRTQzQ0IxRTAwNjIxRTkyIC8qIHdhcnBlZF9hdXRvY29ycmVsYXRpb25fRklY
LmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOEYx
RTFFNDNDQUY5MDA2MjFFOTIgLyogd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GSVguYyAqLzsgfTsK
QEAgLTM2NTUsNiArMzY1MiwxNSBAQAogLyogQmVnaW4gUEJYRmlsZVJlZmVyZW5jZSBzZWN0aW9u
ICovCiAJCTM3MTE5QTgwMjBDQ0I2REQwMDJDNkRDOSAvKiBWZXJzaW9uLnhjY29uZmlnICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZp
ZzsgcGF0aCA9IFZlcnNpb24ueGNjb25maWc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTM3MTE5QTgxMjBDQ0I2REQwMDJDNkRDOSAvKiBXZWJLaXRUYXJnZXRDb25kaXRpb25hbHMueGNj
b25maWcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0LnhjY29uZmlnOyBwYXRoID0gV2ViS2l0VGFyZ2V0Q29uZGl0aW9uYWxzLnhjY29uZmlnOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTAwQ0RFNTIxQ0FDRkQwMDBGOUI4N0QgLyog
TFBDX2ZpdC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBMUENfZml0LmM7IHBh
dGggPSBzaWxrL0xQQ19maXQuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENE
RTgyMUNBRDAzMzAwRjlCODdEIC8qIHZxX3NzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSB2cV9zc2UuaDsgcGF0aCA9IHg4Ni92cV9zc2UuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNDEwMENERUIyMUNBRDFGNTAwRjlCODdEIC8qIHBpdGNoX3NzZTRfMS5jICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBwaXRjaF9zc2U0XzEuYzsgcGF0aCA9IHg4
Ni9waXRjaF9zc2U0XzEuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENERUMy
MUNBRDFGNTAwRjlCODdEIC8qIGNlbHRfbHBjX3NzZS5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
LmM7IG5hbWUgPSBjZWx0X2xwY19zc2UuYzsgcGF0aCA9IHg4Ni9jZWx0X2xwY19zc2UuYzsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENERUQyMUNBRDFGNTAwRjlCODdEIC8qIHZx
X3NzZTIuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gdnFfc3NlMi5jOyBwYXRo
ID0geDg2L3ZxX3NzZTIuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENERUUy
MUNBRDFGNjAwRjlCODdEIC8qIHBpdGNoX3NzZS5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7
IG5hbWUgPSBwaXRjaF9zc2UuYzsgcGF0aCA9IHg4Ni9waXRjaF9zc2UuYzsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENERUYyMUNBRDFGNjAwRjlCODdEIC8qIHBpdGNoX3NzZTIu
YyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcGl0Y2hfc3NlMi5jOyBwYXRoID0g
eDg2L3BpdGNoX3NzZTIuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENERjAy
MUNBRDFGNjAwRjlCODdEIC8qIGNlbHRfbHBjX3NzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBjZWx0X2xwY19zc2UuaDsgcGF0aCA9IHg4Ni9jZWx0X2xwY19zc2UuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMENERjEyMUNBRDFGNzAwRjlCODdEIC8qIHBp
dGNoX3NzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBwaXRjaF9zc2UuaDsg
cGF0aCA9IHg4Ni9waXRjaF9zc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEw
MkY2ODQyMTI3MzIwNDAwNkFFOEQ3IC8qIHJ0Y3N0YXRzdHJhdmVyc2FsLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IHJ0Y3N0YXRzdHJhdmVyc2FsLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTQxMDJGNjg1MjEyNzMyMDQwMDZBRThENyAvKiBqc2VwdHJhbnNwb3J0
Y29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBqc2VwdHJhbnNw
b3J0Y29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTAyRjY4NjIx
MjczMjA1MDA2QUU4RDcgLyogdHJhbnNwb3J0c3RhdHMuY2MgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSB0cmFuc3BvcnRzdGF0cy5jYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTcxNTksNyArNzE2NSw2IEBACiAJCTVDREQ4RUE2MUU0M0M5QzEwMDYyMUU5MiAv
KiBmaW5kX3ByZWRfY29lZnNfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9
IGZpbmRfcHJlZF9jb2Vmc19GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvZmluZF9wcmVkX2NvZWZz
X0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVBNzFFNDNDOUMxMDA2
MjFFOTIgLyogaW5uZXJfcHJvZHVjdF9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBu
YW1lID0gaW5uZXJfcHJvZHVjdF9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvaW5uZXJfcHJvZHVj
dF9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQTgxRTQzQzlDMTAw
NjIxRTkyIC8qIGsyYV9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gazJh
X0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9rMmFfRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTVDREQ4RUE5MUU0M0M5QzEwMDYyMUU5MiAvKiBsZXZpbnNvbmR1cmJpbl9GTFAu
YyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gbGV2aW5zb25kdXJiaW5fRkxQLmM7
IHBhdGggPSBzaWxrL2Zsb2F0L2xldmluc29uZHVyYmluX0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk1Q0REOEVBQTFFNDNDOUMxMDA2MjFFOTIgLyogTFBDX2FuYWx5c2lzX2Zp
bHRlcl9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gTFBDX2FuYWx5c2lz
X2ZpbHRlcl9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvTFBDX2FuYWx5c2lzX2ZpbHRlcl9GTFAu
Yzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQUIxRTQzQzlDMTAwNjIxRTky
IC8qIExQQ19pbnZfcHJlZF9nYWluX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5h
bWUgPSBMUENfaW52X3ByZWRfZ2Fpbl9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvTFBDX2ludl9w
cmVkX2dhaW5fRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUFDMUU0
M0M5QzEwMDYyMUU5MiAvKiBMVFBfYW5hbHlzaXNfZmlsdGVyX0ZMUC5jICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmM7IG5hbWUgPSBMVFBfYW5hbHlzaXNfZmlsdGVyX0ZMUC5jOyBwYXRoID0gc2ls
ay9mbG9hdC9MVFBfYW5hbHlzaXNfZmlsdGVyX0ZMUC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtNzE2Nyw3ICs3MTcyLDYgQEAKIAkJNUNERDhFQUUxRTQzQzlDMTAwNjIxRTkyIC8q
IG1haW5fRkxQLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IG1haW5fRkxQLmg7
IHBhdGggPSBzaWxrL2Zsb2F0L21haW5fRkxQLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTVDREQ4RUFGMUU0M0M5QzEwMDYyMUU5MiAvKiBub2lzZV9zaGFwZV9hbmFseXNpc19GTFAu
YyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gbm9pc2Vfc2hhcGVfYW5hbHlzaXNf
RkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L25vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVCMDFFNDNDOUMxMDA2MjFFOTIgLyogcGl0
Y2hfYW5hbHlzaXNfY29yZV9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0g
cGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvcGl0Y2hfYW5hbHlz
aXNfY29yZV9GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNUNERDhFQjExRTQz
QzlDMTAwNjIxRTkyIC8qIHByZWZpbHRlcl9GTFAuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5j
OyBuYW1lID0gcHJlZmlsdGVyX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9wcmVmaWx0ZXJfRkxQ
LmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RUIyMUU0M0M5QzEwMDYyMUU5
MiAvKiBwcm9jZXNzX2dhaW5zX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUg
PSBwcm9jZXNzX2dhaW5zX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9wcm9jZXNzX2dhaW5zX0ZM
UC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEVCMzFFNDNDOUMxMDA2MjFF
OTIgLyogcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuYzsgbmFtZSA9IHJlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZMUC5jOyBwYXRoID0gc2lsay9m
bG9hdC9yZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNUNERDhFQjQxRTQzQzlDMTAwNjIxRTkyIC8qIHJlc2lkdWFsX2VuZXJneV9GTFAu
YyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcmVzaWR1YWxfZW5lcmd5X0ZMUC5j
OyBwYXRoID0gc2lsay9mbG9hdC9yZXNpZHVhbF9lbmVyZ3lfRkxQLmM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC03MTc1LDcgKzcxNzksNiBAQAogCQk1Q0REOEVCNjFFNDNDOUMxMDA2
MjFFOTIgLyogc2NhbGVfdmVjdG9yX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5h
bWUgPSBzY2FsZV92ZWN0b3JfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L3NjYWxlX3ZlY3Rvcl9G
TFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQjcxRTQzQzlDMTAwNjIx
RTkyIC8qIHNjaHVyX0ZMUC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUgPSBzY2h1
cl9GTFAuYzsgcGF0aCA9IHNpbGsvZmxvYXQvc2NodXJfRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTVDREQ4RUI4MUU0M0M5QzEwMDYyMUU5MiAvKiBTaWdQcm9jX0ZMUC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBTaWdQcm9jX0ZMUC5oOyBwYXRoID0gc2ls
ay9mbG9hdC9TaWdQcm9jX0ZMUC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1Q0RE
OEVCOTFFNDNDOUMxMDA2MjFFOTIgLyogc29sdmVfTFNfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuYzsgbmFtZSA9IHNvbHZlX0xTX0ZMUC5jOyBwYXRoID0gc2lsay9mbG9hdC9zb2x2ZV9M
U19GTFAuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhFQkExRTQzQzlDMTAw
NjIxRTkyIC8qIHNvcnRfRkxQLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHNv
cnRfRkxQLmM7IHBhdGggPSBzaWxrL2Zsb2F0L3NvcnRfRkxQLmM7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTVDREQ4RUJCMUU0M0M5QzEwMDYyMUU5MiAvKiBzdHJ1Y3RzX0ZMUC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBzdHJ1Y3RzX0ZMUC5oOyBwYXRoID0gc2ls
ay9mbG9hdC9zdHJ1Y3RzX0ZMUC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0RE
OEVCQzFFNDNDOUMxMDA2MjFFOTIgLyogd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GTFAuYyAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GTFAu
YzsgcGF0aCA9IHNpbGsvZmxvYXQvd2FycGVkX2F1dG9jb3JyZWxhdGlvbl9GTFAuYzsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTcxOTYsMTQgKzcxOTksMTIgQEAKIAkJNUNERDhGMTAx
RTQzQ0FGOTAwNjIxRTkyIC8qIG1haW5fRklYLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
bmFtZSA9IG1haW5fRklYLmg7IHBhdGggPSBzaWxrL2ZpeGVkL21haW5fRklYLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjEyMUU0M0NBRjkwMDYyMUU5MiAvKiBub2lzZV9z
aGFwZV9hbmFseXNpc19GSVguYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gbm9p
c2Vfc2hhcGVfYW5hbHlzaXNfRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVkL25vaXNlX3NoYXBlX2Fu
YWx5c2lzX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEYxMzFFNDND
QUY5MDA2MjFFOTIgLyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5jOyBuYW1lID0gcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYzsgcGF0aCA9IHNpbGsv
Zml4ZWQvcGl0Y2hfYW5hbHlzaXNfY29yZV9GSVguYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKLQkJNUNERDhGMTQxRTQzQ0FGOTAwNjIxRTkyIC8qIHByZWZpbHRlcl9GSVguYyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcHJlZmlsdGVyX0ZJWC5jOyBwYXRoID0gc2lsay9m
aXhlZC9wcmVmaWx0ZXJfRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4
RjE1MUU0M0NBRjkwMDYyMUU5MiAvKiBwcm9jZXNzX2dhaW5zX0ZJWC5jICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmM7IG5hbWUgPSBwcm9jZXNzX2dhaW5zX0ZJWC5jOyBwYXRoID0gc2lsay9maXhl
ZC9wcm9jZXNzX2dhaW5zX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0RE
OEYxNjFFNDNDQUY5MDA2MjFFOTIgLyogcmVndWxhcml6ZV9jb3JyZWxhdGlvbnNfRklYLmMgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHJlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZJ
WC5jOyBwYXRoID0gc2lsay9maXhlZC9yZWd1bGFyaXplX2NvcnJlbGF0aW9uc19GSVguYzsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMTcxRTQzQ0FGOTAwNjIxRTkyIC8qIHJl
c2lkdWFsX2VuZXJneV9GSVguYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gcmVz
aWR1YWxfZW5lcmd5X0ZJWC5jOyBwYXRoID0gc2lsay9maXhlZC9yZXNpZHVhbF9lbmVyZ3lfRklY
LmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjE4MUU0M0NBRjkwMDYyMUU5
MiAvKiByZXNpZHVhbF9lbmVyZ3kxNl9GSVguYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBu
YW1lID0gcmVzaWR1YWxfZW5lcmd5MTZfRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVkL3Jlc2lkdWFs
X2VuZXJneTE2X0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEYxOTFF
NDNDQUY5MDA2MjFFOTIgLyogc2NodXJfRklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsg
bmFtZSA9IHNjaHVyX0ZJWC5jOyBwYXRoID0gc2lsay9maXhlZC9zY2h1cl9GSVguYzsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMUExRTQzQ0FGOTAwNjIxRTkyIC8qIHNjaHVy
NjRfRklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHNjaHVyNjRfRklYLmM7
IHBhdGggPSBzaWxrL2ZpeGVkL3NjaHVyNjRfRklYLmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCTVDREQ4RjFCMUU0M0NBRjkwMDYyMUU5MiAvKiBzb2x2ZV9MU19GSVguYyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5jOyBuYW1lID0gc29sdmVfTFNfRklYLmM7IHBhdGggPSBzaWxrL2Zp
eGVkL3NvbHZlX0xTX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0REOEYx
QzFFNDNDQUY5MDA2MjFFOTIgLyogc3RydWN0c19GSVguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gc3RydWN0c19GSVguaDsgcGF0aCA9IHNpbGsvZml4ZWQvc3RydWN0c19GSVgu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDhGMUQxRTQzQ0FGOTAwNjIxRTky
IC8qIHZlY3Rvcl9vcHNfRklYLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgbmFtZSA9IHZl
Y3Rvcl9vcHNfRklYLmM7IHBhdGggPSBzaWxrL2ZpeGVkL3ZlY3Rvcl9vcHNfRklYLmM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4RjFFMUU0M0NBRjkwMDYyMUU5MiAvKiB3YXJw
ZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IG5hbWUg
PSB3YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jOyBwYXRoID0gc2lsay9maXhlZC93YXJwZWRf
YXV0b2NvcnJlbGF0aW9uX0ZJWC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTMw
MzMsNiArMTMwMzQsMTQgQEAKIAkJNUNERDhEMTMxRTQzQzc1NTAwNjIxRTkyIC8qIHg4NiAqLyA9
IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJNDEwMENERUMyMUNB
RDFGNTAwRjlCODdEIC8qIGNlbHRfbHBjX3NzZS5jICovLAorCQkJCTQxMDBDREYwMjFDQUQxRjYw
MEY5Qjg3RCAvKiBjZWx0X2xwY19zc2UuaCAqLywKKwkJCQk0MTAwQ0RFRTIxQ0FEMUY2MDBGOUI4
N0QgLyogcGl0Y2hfc3NlLmMgKi8sCisJCQkJNDEwMENERjEyMUNBRDFGNzAwRjlCODdEIC8qIHBp
dGNoX3NzZS5oICovLAorCQkJCTQxMDBDREVGMjFDQUQxRjYwMEY5Qjg3RCAvKiBwaXRjaF9zc2Uy
LmMgKi8sCisJCQkJNDEwMENERUIyMUNBRDFGNTAwRjlCODdEIC8qIHBpdGNoX3NzZTRfMS5jICov
LAorCQkJCTQxMDBDREU4MjFDQUQwMzMwMEY5Qjg3RCAvKiB2cV9zc2UuaCAqLywKKwkJCQk0MTAw
Q0RFRDIxQ0FEMUY1MDBGOUI4N0QgLyogdnFfc3NlMi5jICovLAogCQkJCTVDREQ4RDFBMUU0M0M3
NjQwMDYyMUU5MiAvKiB4ODZfY2VsdF9tYXAuYyAqLywKIAkJCQk1Q0REOEQxQjFFNDNDNzY0MDA2
MjFFOTIgLyogeDg2Y3B1LmMgKi8sCiAJCQkJNUNERDhEMUMxRTQzQzc2NDAwNjIxRTkyIC8qIHg4
NmNwdS5oICovLApAQCAtMTMwODUsNiArMTMwOTQsNyBAQAogCQkJCTVDREQ4RDg1MUU0M0M3RDkw
MDYyMUU5MiAvKiBsb2cybGluLmMgKi8sCiAJCQkJNUNERDhEODYxRTQzQzdEOTAwNjIxRTkyIC8q
IExQX3ZhcmlhYmxlX2N1dG9mZi5jICovLAogCQkJCTVDREQ4RDg3MUU0M0M3RDkwMDYyMUU5MiAv
KiBMUENfYW5hbHlzaXNfZmlsdGVyLmMgKi8sCisJCQkJNDEwMENERTUyMUNBQ0ZEMDAwRjlCODdE
IC8qIExQQ19maXQuYyAqLywKIAkJCQk1Q0REOEQ4ODFFNDNDN0Q5MDA2MjFFOTIgLyogTFBDX2lu
dl9wcmVkX2dhaW4uYyAqLywKIAkJCQk1Q0REOEQ4OTFFNDNDN0Q5MDA2MjFFOTIgLyogTWFjcm9D
b3VudC5oICovLAogCQkJCTVDREQ4RDhBMUU0M0M3RDkwMDYyMUU5MiAvKiBNYWNyb0RlYnVnLmgg
Ki8sCkBAIC0xMzE3Nyw3ICsxMzE4Nyw2IEBACiAJCQkJNUNERDhFQTYxRTQzQzlDMTAwNjIxRTky
IC8qIGZpbmRfcHJlZF9jb2Vmc19GTFAuYyAqLywKIAkJCQk1Q0REOEVBNzFFNDNDOUMxMDA2MjFF
OTIgLyogaW5uZXJfcHJvZHVjdF9GTFAuYyAqLywKIAkJCQk1Q0REOEVBODFFNDNDOUMxMDA2MjFF
OTIgLyogazJhX0ZMUC5jICovLAotCQkJCTVDREQ4RUE5MUU0M0M5QzEwMDYyMUU5MiAvKiBsZXZp
bnNvbmR1cmJpbl9GTFAuYyAqLywKIAkJCQk1Q0REOEVBQTFFNDNDOUMxMDA2MjFFOTIgLyogTFBD
X2FuYWx5c2lzX2ZpbHRlcl9GTFAuYyAqLywKIAkJCQk1Q0REOEVBQjFFNDNDOUMxMDA2MjFFOTIg
LyogTFBDX2ludl9wcmVkX2dhaW5fRkxQLmMgKi8sCiAJCQkJNUNERDhFQUMxRTQzQzlDMTAwNjIx
RTkyIC8qIExUUF9hbmFseXNpc19maWx0ZXJfRkxQLmMgKi8sCkBAIC0xMzE4NSw3ICsxMzE5NCw2
IEBACiAJCQkJNUNERDhFQUUxRTQzQzlDMTAwNjIxRTkyIC8qIG1haW5fRkxQLmggKi8sCiAJCQkJ
NUNERDhFQUYxRTQzQzlDMTAwNjIxRTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZMUC5jICov
LAogCQkJCTVDREQ4RUIwMUU0M0M5QzEwMDYyMUU5MiAvKiBwaXRjaF9hbmFseXNpc19jb3JlX0ZM
UC5jICovLAotCQkJCTVDREQ4RUIxMUU0M0M5QzEwMDYyMUU5MiAvKiBwcmVmaWx0ZXJfRkxQLmMg
Ki8sCiAJCQkJNUNERDhFQjIxRTQzQzlDMTAwNjIxRTkyIC8qIHByb2Nlc3NfZ2FpbnNfRkxQLmMg
Ki8sCiAJCQkJNUNERDhFQjMxRTQzQzlDMTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29ycmVsYXRp
b25zX0ZMUC5jICovLAogCQkJCTVDREQ4RUI0MUU0M0M5QzEwMDYyMUU5MiAvKiByZXNpZHVhbF9l
bmVyZ3lfRkxQLmMgKi8sCkBAIC0xMzE5Myw3ICsxMzIwMSw2IEBACiAJCQkJNUNERDhFQjYxRTQz
QzlDMTAwNjIxRTkyIC8qIHNjYWxlX3ZlY3Rvcl9GTFAuYyAqLywKIAkJCQk1Q0REOEVCNzFFNDND
OUMxMDA2MjFFOTIgLyogc2NodXJfRkxQLmMgKi8sCiAJCQkJNUNERDhFQjgxRTQzQzlDMTAwNjIx
RTkyIC8qIFNpZ1Byb2NfRkxQLmggKi8sCi0JCQkJNUNERDhFQjkxRTQzQzlDMTAwNjIxRTkyIC8q
IHNvbHZlX0xTX0ZMUC5jICovLAogCQkJCTVDREQ4RUJBMUU0M0M5QzEwMDYyMUU5MiAvKiBzb3J0
X0ZMUC5jICovLAogCQkJCTVDREQ4RUJCMUU0M0M5QzEwMDYyMUU5MiAvKiBzdHJ1Y3RzX0ZMUC5o
ICovLAogCQkJCTVDREQ4RUJDMUU0M0M5QzEwMDYyMUU5MiAvKiB3YXJwZWRfYXV0b2NvcnJlbGF0
aW9uX0ZMUC5jICovLApAQCAtMTMyMjEsMTQgKzEzMjI4LDEyIEBACiAJCQkJNUNERDhGMTAxRTQz
Q0FGOTAwNjIxRTkyIC8qIG1haW5fRklYLmggKi8sCiAJCQkJNUNERDhGMTIxRTQzQ0FGOTAwNjIx
RTkyIC8qIG5vaXNlX3NoYXBlX2FuYWx5c2lzX0ZJWC5jICovLAogCQkJCTVDREQ4RjEzMUU0M0NB
RjkwMDYyMUU5MiAvKiBwaXRjaF9hbmFseXNpc19jb3JlX0ZJWC5jICovLAotCQkJCTVDREQ4RjE0
MUU0M0NBRjkwMDYyMUU5MiAvKiBwcmVmaWx0ZXJfRklYLmMgKi8sCiAJCQkJNUNERDhGMTUxRTQz
Q0FGOTAwNjIxRTkyIC8qIHByb2Nlc3NfZ2FpbnNfRklYLmMgKi8sCiAJCQkJNUNERDhGMTYxRTQz
Q0FGOTAwNjIxRTkyIC8qIHJlZ3VsYXJpemVfY29ycmVsYXRpb25zX0ZJWC5jICovLAogCQkJCTVD
REQ4RjE4MUU0M0NBRjkwMDYyMUU5MiAvKiByZXNpZHVhbF9lbmVyZ3kxNl9GSVguYyAqLywKIAkJ
CQk1Q0REOEYxNzFFNDNDQUY5MDA2MjFFOTIgLyogcmVzaWR1YWxfZW5lcmd5X0ZJWC5jICovLAog
CQkJCTVDREQ4RjFBMUU0M0NBRjkwMDYyMUU5MiAvKiBzY2h1cjY0X0ZJWC5jICovLAogCQkJCTVD
REQ4RjE5MUU0M0NBRjkwMDYyMUU5MiAvKiBzY2h1cl9GSVguYyAqLywKLQkJCQk1Q0REOEYxQjFF
NDNDQUY5MDA2MjFFOTIgLyogc29sdmVfTFNfRklYLmMgKi8sCiAJCQkJNUNERDhGMUMxRTQzQ0FG
OTAwNjIxRTkyIC8qIHN0cnVjdHNfRklYLmggKi8sCiAJCQkJNUNERDhGMUQxRTQzQ0FGOTAwNjIx
RTkyIC8qIHZlY3Rvcl9vcHNfRklYLmMgKi8sCiAJCQkJNUNERDhGMUUxRTQzQ0FGOTAwNjIxRTky
IC8qIHdhcnBlZF9hdXRvY29ycmVsYXRpb25fRklYLmMgKi8sCkBAIC0xNTcxMyw2ICsxNTcxOCw3
IEBACiAJCQkJNUMwODhDMUMxRTRBQTQ0NDAwNDAzOTk1IC8qIG1lZGlhc2Vzc2lvbi5jYyBpbiBT
b3VyY2VzICovLAogCQkJCTVDMDg4QzFFMUU0QUE0NDQwMDQwMzk5NSAvKiBydGNwbXV4ZmlsdGVy
LmNjIGluIFNvdXJjZXMgKi8sCiAJCQkJNUMwODhDMjAxRTRBQTQ0NDAwNDAzOTk1IC8qIHNydHBm
aWx0ZXIuY2MgaW4gU291cmNlcyAqLywKKwkJCQk0MTAwQ0RGOTIxQ0FFMzM0MDBGOUI4N0QgLyog
c3J0cHNlc3Npb24uY2MgaW4gU291cmNlcyAqLywKIAkJCQk0MTIzOUI0RDIxNDc3NDNBMDAzOTZG
ODEgLyogdmlkZW9fc3RyZWFtX2VuY29kZXJfY3JlYXRlLmNjIGluIFNvdXJjZXMgKi8sCiAJCQkp
OwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CkBAIC0xNTgxNiwx
MiArMTU4MjIsMTIgQEAKIAkJCQk1Q0REOEY0NDFFNDNDQjFFMDA2MjFFOTIgLyogazJhX1ExNl9G
SVguYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RDQ2MUU0M0M3OUMwMDYyMUU5MiAvKiBraXNz
X2ZmdC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhENDgxRTQzQzc5QzAwNjIxRTkyIC8qIGxh
cGxhY2UuYyBpbiBTb3VyY2VzICovLAotCQkJCTVDREQ4RUVEMUU0M0M5RjYwMDYyMUU5MiAvKiBs
ZXZpbnNvbmR1cmJpbl9GTFAuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTVEMUU0M0M4MEMw
MDYyMUU5MiAvKiBsaW4ybG9nLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEU1RTFFNDNDODBD
MDA2MjFFOTIgLyogbG9nMmxpbi5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFNUYxRTQzQzgw
QzAwNjIxRTkyIC8qIExQX3ZhcmlhYmxlX2N1dG9mZi5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNE
RDhFNjAxRTQzQzgwQzAwNjIxRTkyIC8qIExQQ19hbmFseXNpc19maWx0ZXIuYyBpbiBTb3VyY2Vz
ICovLAogCQkJCTVDREQ4RUVFMUU0M0M5RjYwMDYyMUU5MiAvKiBMUENfYW5hbHlzaXNfZmlsdGVy
X0ZMUC5jIGluIFNvdXJjZXMgKi8sCisJCQkJNDE1M0NEMjcyMUNDNjYxMDAwQzNFMTg4IC8qIExQ
Q19maXQuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTYxMUU0M0M4MEMwMDYyMUU5MiAvKiBM
UENfaW52X3ByZWRfZ2Fpbi5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFRUYxRTQzQzlGNjAw
NjIxRTkyIC8qIExQQ19pbnZfcHJlZF9nYWluX0ZMUC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNE
RDhGNDUxRTQzQ0IxRTAwNjIxRTkyIC8qIExUUF9hbmFseXNpc19maWx0ZXJfRklYLmMgaW4gU291
cmNlcyAqLywKQEAgLTE1ODU4LDggKzE1ODY0LDYgQEAKIAkJCQk1Q0REOEVGNDFFNDNDOUY2MDA2
MjFFOTIgLyogcGl0Y2hfYW5hbHlzaXNfY29yZV9GTFAuYyBpbiBTb3VyY2VzICovLAogCQkJCTVD
REQ4RTcyMUU0M0M4MEMwMDYyMUU5MiAvKiBwaXRjaF9lc3RfdGFibGVzLmMgaW4gU291cmNlcyAq
LywKIAkJCQk1Q0REOEU3MzFFNDNDODBDMDA2MjFFOTIgLyogUExDLmMgaW4gU291cmNlcyAqLywK
LQkJCQk1Q0REOEY0QTFFNDNDQjFFMDA2MjFFOTIgLyogcHJlZmlsdGVyX0ZJWC5jIGluIFNvdXJj
ZXMgKi8sCi0JCQkJNUNERDhFRjUxRTQzQzlGNjAwNjIxRTkyIC8qIHByZWZpbHRlcl9GTFAuYyBp
biBTb3VyY2VzICovLAogCQkJCTVDREQ4RjRCMUU0M0NCMUUwMDYyMUU5MiAvKiBwcm9jZXNzX2dh
aW5zX0ZJWC5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFRjYxRTQzQzlGNjAwNjIxRTkyIC8q
IHByb2Nlc3NfZ2FpbnNfRkxQLmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEU3NTFFNDNDODBD
MDA2MjFFOTIgLyogcHJvY2Vzc19OTFNGcy5jIGluIFNvdXJjZXMgKi8sCkBAIC0xNTg4Nyw4ICsx
NTg5MSw2IEBACiAJCQkJNUNERDhFRkIxRTQzQzlGNjAwNjIxRTkyIC8qIHNjaHVyX0ZMUC5jIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNUNERDhFODIxRTQzQzgwQzAwNjIxRTkyIC8qIHNoZWxsX2NvZGVy
LmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEU4MzFFNDNDODBDMDA2MjFFOTIgLyogc2lnbV9R
MTUuYyBpbiBTb3VyY2VzICovLAotCQkJCTVDREQ4RjUxMUU0M0NCMUUwMDYyMUU5MiAvKiBzb2x2
ZV9MU19GSVguYyBpbiBTb3VyY2VzICovLAotCQkJCTVDREQ4RUZEMUU0M0M5RjYwMDYyMUU5MiAv
KiBzb2x2ZV9MU19GTFAuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTg1MUU0M0M4MEMwMDYy
MUU5MiAvKiBzb3J0LmMgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REOEVGRTFFNDNDOUY2MDA2MjFF
OTIgLyogc29ydF9GTFAuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTg2MUU0M0M4MEMwMDYy
MUU5MiAvKiBzdGVyZW9fZGVjb2RlX3ByZWQuYyBpbiBTb3VyY2VzICovLApAQCAtMTU5MTAsNiAr
MTU5MTIsNyBAQAogCQkJCTVDNUY0MDlBMUU5NzhGREIwMEQ5NDI3OSAvKiBWQURfc3NlLmMgaW4g
U291cmNlcyAqLywKIAkJCQk1Q0REOEY1MzFFNDNDQjFFMDA2MjFFOTIgLyogdmVjdG9yX29wc19G
SVguYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RDVCMUU0M0M3OUMwMDYyMUU5MiAvKiB2cS5j
IGluIFNvdXJjZXMgKi8sCisJCQkJNDE1M0NEMjgyMUNDNjY0ODAwQzNFMTg4IC8qIHZxX3NzZTIu
YyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RTlBMUU0M0M4MEMwMDYyMUU5MiAvKiBWUV9XTWF0
X0VDLmMgaW4gU291cmNlcyAqLywKIAkJCQk1QzVGNDA5QjFFOTc4RkRCMDBEOTQyNzkgLyogVlFf
V01hdF9FQ19zc2UuYyBpbiBTb3VyY2VzICovLAogCQkJCTVDREQ4RjU0MUU0M0NCMUUwMDYyMUU5
MiAvKiB3YXJwZWRfYXV0b2NvcnJlbGF0aW9uX0ZJWC5jIGluIFNvdXJjZXMgKi8sCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>